From b10a804a03ae804aa1f29652bddee74038ec0c91 Mon Sep 17 00:00:00 2001 From: Valere Date: Mon, 22 Jan 2024 16:17:53 +0100 Subject: [PATCH 001/595] Element R: Bump matrix-rust-sdk-crypto-wasm to version 4.0.0 (#4021) * bump wasm bindings version 4.0.0 * fix test compilation with initFromStore * Fix test due to change in wasm handling of Vec<> * review: Better doc Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * review: Better doc Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * review: revert userIdentity free removal --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- package.json | 2 +- spec/unit/rust-crypto/KeyClaimManager.spec.ts | 14 +++++++++++--- spec/unit/rust-crypto/rust-crypto.spec.ts | 12 ++++++------ src/rust-crypto/KeyClaimManager.ts | 5 ++++- src/rust-crypto/RoomEncryptor.ts | 1 + src/rust-crypto/index.ts | 2 +- src/rust-crypto/rust-crypto.ts | 5 ++++- yarn.lock | 8 ++++---- 8 files changed, 32 insertions(+), 17 deletions(-) diff --git a/package.json b/package.json index a64abb5dbd6..accf1fcfa01 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^3.6.0", + "@matrix-org/matrix-sdk-crypto-wasm": "^4.0.0", "another-json": "^0.2.0", "bs58": "^5.0.0", "content-type": "^1.0.4", diff --git a/spec/unit/rust-crypto/KeyClaimManager.spec.ts b/spec/unit/rust-crypto/KeyClaimManager.spec.ts index 5a33c508f83..f2ad04cacfd 100644 --- a/spec/unit/rust-crypto/KeyClaimManager.spec.ts +++ b/spec/unit/rust-crypto/KeyClaimManager.spec.ts @@ -97,7 +97,10 @@ describe("KeyClaimManager", () => { await keyClaimManager.ensureSessionsForUsers(new LogSpan(logger, "test"), [u1, u2]); // check that all the calls were made - expect(olmMachine.getMissingSessions).toHaveBeenCalledWith([u1, u2]); + // We can't use directly toHaveBeenCalledWith because the UserId are cloned in the process. + const calledWith = olmMachine.getMissingSessions.mock.calls[0][0].map((u) => u.toString()); + expect(calledWith).toEqual([u1.toString(), u2.toString()]); + expect(fetchMock).toHaveFetched("https://example.com/_matrix/client/v3/keys/claim", { method: "POST", body: { k1: "v1" }, @@ -135,7 +138,10 @@ describe("KeyClaimManager", () => { // at this point, there should have been a single call to getMissingSessions, and a single fetch; and neither // call to ensureSessionsAsUsers should have completed - expect(olmMachine.getMissingSessions).toHaveBeenCalledWith([u1]); + // check that all the calls were made + // We can't use directly toHaveBeenCalledWith because the UserId are cloned in the process. + const calledWith = olmMachine.getMissingSessions.mock.calls[0][0].map((u) => u.toString()); + expect(calledWith).toEqual([u1.toString()]); expect(olmMachine.getMissingSessions).toHaveBeenCalledTimes(1); expect(fetchMock).toHaveBeenCalledTimes(1); expect(req1Resolved).toBe(false); @@ -147,7 +153,9 @@ describe("KeyClaimManager", () => { resolveMarkRequestAsSentCallback = await markRequestAsSentPromise; // the first request should now have completed, and we should have more calls and fetches - expect(olmMachine.getMissingSessions).toHaveBeenCalledWith([u2]); + // We can't use directly toHaveBeenCalledWith because the UserId are cloned in the process. + const calledWith2 = olmMachine.getMissingSessions.mock.calls[1][0].map((u) => u.toString()); + expect(calledWith2).toEqual([u2.toString()]); expect(olmMachine.getMissingSessions).toHaveBeenCalledTimes(2); expect(fetchMock).toHaveBeenCalledTimes(2); expect(req1Resolved).toBe(true); diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 6d3ecfd81c8..dbcf0df88c2 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -100,7 +100,7 @@ describe("initRustCrypto", () => { jest.spyOn(StoreHandle, "open").mockResolvedValue(mockStore); const testOlmMachine = makeTestOlmMachine(); - jest.spyOn(OlmMachine, "init_from_store").mockResolvedValue(testOlmMachine); + jest.spyOn(OlmMachine, "initFromStore").mockResolvedValue(testOlmMachine); await initRustCrypto({ logger, @@ -114,7 +114,7 @@ describe("initRustCrypto", () => { }); expect(StoreHandle.open).toHaveBeenCalledWith("storePrefix", "storePassphrase"); - expect(OlmMachine.init_from_store).toHaveBeenCalledWith(expect.anything(), expect.anything(), mockStore); + expect(OlmMachine.initFromStore).toHaveBeenCalledWith(expect.anything(), expect.anything(), mockStore); }); it("suppresses the storePassphrase if storePrefix is unset", async () => { @@ -122,7 +122,7 @@ describe("initRustCrypto", () => { jest.spyOn(StoreHandle, "open").mockResolvedValue(mockStore); const testOlmMachine = makeTestOlmMachine(); - jest.spyOn(OlmMachine, "init_from_store").mockResolvedValue(testOlmMachine); + jest.spyOn(OlmMachine, "initFromStore").mockResolvedValue(testOlmMachine); await initRustCrypto({ logger, @@ -136,7 +136,7 @@ describe("initRustCrypto", () => { }); expect(StoreHandle.open).toHaveBeenCalledWith(undefined, undefined); - expect(OlmMachine.init_from_store).toHaveBeenCalledWith(expect.anything(), expect.anything(), mockStore); + expect(OlmMachine.initFromStore).toHaveBeenCalledWith(expect.anything(), expect.anything(), mockStore); }); it("Should get secrets from inbox on start", async () => { @@ -144,7 +144,7 @@ describe("initRustCrypto", () => { jest.spyOn(StoreHandle, "open").mockResolvedValue(mockStore); const testOlmMachine = makeTestOlmMachine(); - jest.spyOn(OlmMachine, "init_from_store").mockResolvedValue(testOlmMachine); + jest.spyOn(OlmMachine, "initFromStore").mockResolvedValue(testOlmMachine); await initRustCrypto({ logger, @@ -189,7 +189,7 @@ describe("initRustCrypto", () => { jest.spyOn(Migration, "migrateMegolmSessions").mockResolvedValue(undefined); const testOlmMachine = makeTestOlmMachine(); - jest.spyOn(OlmMachine, "init_from_store").mockResolvedValue(testOlmMachine); + jest.spyOn(OlmMachine, "initFromStore").mockResolvedValue(testOlmMachine); fetchMock.get("path:/_matrix/client/v3/room_keys/version", { version: "45" }); diff --git a/src/rust-crypto/KeyClaimManager.ts b/src/rust-crypto/KeyClaimManager.ts index 1500d83984c..aaeed4d1435 100644 --- a/src/rust-crypto/KeyClaimManager.ts +++ b/src/rust-crypto/KeyClaimManager.ts @@ -73,7 +73,10 @@ export class KeyClaimManager { throw new Error(`Cannot ensure Olm sessions: shutting down`); } logger.info("Checking for missing Olm sessions"); - const claimRequest = await this.olmMachine.getMissingSessions(userList); + // By passing the userId array to rust we transfer ownership of the items to rust, causing + // them to be invalidated on the JS side as soon as the method is called. + // As we haven't created the `userList` let's clone the users, to not break the caller from re-using it. + const claimRequest = await this.olmMachine.getMissingSessions(userList.map((u) => u.clone())); if (claimRequest) { logger.info("Making /keys/claim request"); await this.outgoingRequestProcessor.makeOutgoingRequest(claimRequest); diff --git a/src/rust-crypto/RoomEncryptor.ts b/src/rust-crypto/RoomEncryptor.ts index ef3ea777fb7..199db95ca35 100644 --- a/src/rust-crypto/RoomEncryptor.ts +++ b/src/rust-crypto/RoomEncryptor.ts @@ -258,6 +258,7 @@ export class RoomEncryptor { await logDuration(this.prefixedLogger, "shareRoomKey", async () => { const shareMessages: ToDeviceRequest[] = await this.olmMachine.shareRoomKey( new RoomId(this.room.roomId), + // safe to pass without cloning, as it's not reused here (before or after) userList, rustEncryptionSettings, ); diff --git a/src/rust-crypto/index.ts b/src/rust-crypto/index.ts index 9108761b7d8..63c65317b01 100644 --- a/src/rust-crypto/index.ts +++ b/src/rust-crypto/index.ts @@ -131,7 +131,7 @@ async function initOlmMachine( ): Promise { logger.debug("Init OlmMachine"); - const olmMachine = await RustSdkCryptoJs.OlmMachine.init_from_store( + const olmMachine = await RustSdkCryptoJs.OlmMachine.initFromStore( new RustSdkCryptoJs.UserId(userId), new RustSdkCryptoJs.DeviceId(deviceId), storeHandle, diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index d63b7d02c92..239fae8a833 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -359,7 +359,10 @@ export class RustCrypto extends TypedEventEmitter Date: Mon, 22 Jan 2024 20:06:22 +0100 Subject: [PATCH 002/595] ElementR | backup: call expensive `roomKeyCounts` less often (#4015) * ElementR | backup: call expensive `roomKeyCounts` less often * review: Improve doc Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * review: Improve loop * review: Add comment regarding slightly outdated remaining count * Review: doc fix typo Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * review: refactor code order, count after doing the request * review: Missing await on sleep for limit exceeded * review: Comment | add a note for when performance drops * Backup: add upload loop test for rust * test: quick fix backup loop tests * test: quick fix imports backup loop tests * review: improve comment Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review improve comment Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review: Clean and improve tests * fix: wrong test name --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- spec/unit/rust-crypto/backup.spec.ts | 144 +++++++++++++++++++++++++++ src/rust-crypto/backup.ts | 66 ++++++++++-- 2 files changed, 202 insertions(+), 8 deletions(-) create mode 100644 spec/unit/rust-crypto/backup.spec.ts diff --git a/spec/unit/rust-crypto/backup.spec.ts b/spec/unit/rust-crypto/backup.spec.ts new file mode 100644 index 00000000000..1a9c1435663 --- /dev/null +++ b/spec/unit/rust-crypto/backup.spec.ts @@ -0,0 +1,144 @@ +import { Mocked } from "jest-mock"; +import fetchMock from "fetch-mock-jest"; +import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; + +import { CryptoEvent, HttpApiEvent, HttpApiEventHandlerMap, MatrixHttpApi, TypedEventEmitter } from "../../../src"; +import { OutgoingRequestProcessor } from "../../../src/rust-crypto/OutgoingRequestProcessor"; +import * as testData from "../../test-utils/test-data"; +import * as TestData from "../../test-utils/test-data"; +import { IKeyBackup } from "../../../src/crypto/backup"; +import { IKeyBackupSession } from "../../../src/crypto/keybackup"; +import { RustBackupManager } from "../../../src/rust-crypto/backup"; + +describe("Upload keys to backup", () => { + /** The backup manager under test */ + let rustBackupManager: RustBackupManager; + + let mockOlmMachine: Mocked; + + let outgoingRequestProcessor: Mocked; + + const httpAPi = new MatrixHttpApi(new TypedEventEmitter(), { + baseUrl: "http://server/", + prefix: "", + onlyData: true, + }); + + let idGenerator = 0; + function mockBackupRequest(keyCount: number): RustSdkCryptoJs.KeysBackupRequest { + const requestBody: IKeyBackup = { + rooms: { + "!room1:server": { + sessions: {}, + }, + }, + }; + for (let i = 0; i < keyCount; i++) { + requestBody.rooms["!room1:server"].sessions["session" + i] = {} as IKeyBackupSession; + } + return { + id: "id" + idGenerator++, + body: JSON.stringify(requestBody), + } as unknown as Mocked; + } + + beforeEach(async () => { + jest.useFakeTimers(); + idGenerator = 0; + + mockOlmMachine = { + getBackupKeys: jest.fn().mockResolvedValue({ + backupVersion: TestData.SIGNED_BACKUP_DATA.version!, + decryptionKey: RustSdkCryptoJs.BackupDecryptionKey.fromBase64(TestData.BACKUP_DECRYPTION_KEY_BASE64), + } as unknown as RustSdkCryptoJs.BackupKeys), + backupRoomKeys: jest.fn(), + isBackupEnabled: jest.fn().mockResolvedValue(true), + enableBackupV1: jest.fn(), + verifyBackup: jest.fn().mockResolvedValue({ + trusted: jest.fn().mockResolvedValue(true), + } as unknown as RustSdkCryptoJs.SignatureVerification), + roomKeyCounts: jest.fn(), + } as unknown as Mocked; + + outgoingRequestProcessor = { + makeOutgoingRequest: jest.fn(), + } as unknown as Mocked; + + rustBackupManager = new RustBackupManager(mockOlmMachine, httpAPi, outgoingRequestProcessor); + + fetchMock.get("path:/_matrix/client/v3/room_keys/version", testData.SIGNED_BACKUP_DATA); + }); + + afterEach(() => { + fetchMock.reset(); + jest.useRealTimers(); + jest.resetAllMocks(); + }); + + it("Should call expensive roomKeyCounts only once per loop", async () => { + const remainingEmitted: number[] = []; + + const zeroRemainingWasEmitted = new Promise((resolve) => { + rustBackupManager.on(CryptoEvent.KeyBackupSessionsRemaining, (count) => { + remainingEmitted.push(count); + if (count == 0) { + resolve(); + } + }); + }); + + // We want several batch of keys to check that we don't call expensive room key count several times + mockOlmMachine.backupRoomKeys + .mockResolvedValueOnce(mockBackupRequest(100)) + .mockResolvedValueOnce(mockBackupRequest(100)) + .mockResolvedValueOnce(mockBackupRequest(100)) + .mockResolvedValueOnce(mockBackupRequest(100)) + .mockResolvedValueOnce(mockBackupRequest(100)) + .mockResolvedValueOnce(mockBackupRequest(100)) + .mockResolvedValueOnce(mockBackupRequest(2)) + .mockResolvedValue(null); + + mockOlmMachine.roomKeyCounts.mockResolvedValue({ + total: 602, + // First iteration won't call roomKeyCounts(); it will be called on the second iteration after 200 keys have been saved. + backedUp: 200, + }); + + await rustBackupManager.checkKeyBackupAndEnable(false); + await jest.runAllTimersAsync(); + + await zeroRemainingWasEmitted; + + expect(outgoingRequestProcessor.makeOutgoingRequest).toHaveBeenCalledTimes(7); + expect(mockOlmMachine.roomKeyCounts).toHaveBeenCalledTimes(1); + + // check event emission + expect(remainingEmitted[0]).toEqual(402); + expect(remainingEmitted[1]).toEqual(302); + expect(remainingEmitted[2]).toEqual(202); + expect(remainingEmitted[3]).toEqual(102); + expect(remainingEmitted[4]).toEqual(2); + expect(remainingEmitted[5]).toEqual(0); + }); + + it("Should not call expensive roomKeyCounts when only one iteration is needed", async () => { + const zeroRemainingWasEmitted = new Promise((resolve) => { + rustBackupManager.on(CryptoEvent.KeyBackupSessionsRemaining, (count) => { + if (count == 0) { + resolve(); + } + }); + }); + + // Only returns 2 keys on the first call, then none. + mockOlmMachine.backupRoomKeys.mockResolvedValueOnce(mockBackupRequest(2)).mockResolvedValue(null); + + await rustBackupManager.checkKeyBackupAndEnable(false); + await jest.runAllTimersAsync(); + + await zeroRemainingWasEmitted; + + expect(outgoingRequestProcessor.makeOutgoingRequest).toHaveBeenCalledTimes(1); + expect(mockOlmMachine.roomKeyCounts).toHaveBeenCalledTimes(0); + }); +}); diff --git a/src/rust-crypto/backup.ts b/src/rust-crypto/backup.ts index 8fdf74c7718..21964eb3afb 100644 --- a/src/rust-crypto/backup.ts +++ b/src/rust-crypto/backup.ts @@ -36,6 +36,7 @@ import { BackupDecryptor } from "../common-crypto/CryptoBackend"; import { IEncryptedPayload } from "../crypto/aes"; import { ImportRoomKeyProgressData, ImportRoomKeysOpts } from "../crypto-api"; import { IKeyBackupInfo } from "../crypto/keybackup"; +import { IKeyBackup } from "../crypto/backup"; /** Authentification of the backup info, depends on algorithm */ type AuthData = KeyBackupInfo["auth_data"]; @@ -327,7 +328,13 @@ export class RustBackupManager extends TypedEventEmitter 0) { - sleep(waitTime); + await sleep(waitTime); continue; } // else go to the normal backoff } @@ -392,12 +425,29 @@ export class RustBackupManager extends TypedEventEmitter Date: Tue, 23 Jan 2024 12:52:53 +0000 Subject: [PATCH 003/595] Fix type error introduced by crypto-wasm 4.0.0 (#4026) * Fix type error introduced by crypto-wasm 4.0.0 * fix imports --- src/rust-crypto/verification.ts | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/src/rust-crypto/verification.ts b/src/rust-crypto/verification.ts index bac4694441c..cca1b4aa6b4 100644 --- a/src/rust-crypto/verification.ts +++ b/src/rust-crypto/verification.ts @@ -15,9 +15,10 @@ limitations under the License. */ import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; -import { Emoji, QrState } from "@matrix-org/matrix-sdk-crypto-wasm"; +import { QrState } from "@matrix-org/matrix-sdk-crypto-wasm"; import { + GeneratedSas, ShowQrCodeCallbacks, ShowSasCallbacks, VerificationPhase, @@ -659,18 +660,23 @@ export class RustSASVerifier extends BaseRustVerifer implem /** if we can now show the callbacks, do so */ protected onChange(): void { if (this.callbacks === null) { - const emoji: Array | undefined = this.inner.emoji(); - const decimal = this.inner.decimals() as [number, number, number] | undefined; + const emoji = this.inner.emoji(); + const decimal = this.inner.decimals(); if (emoji === undefined && decimal === undefined) { return; } + const sas: GeneratedSas = {}; + if (emoji) { + sas.emoji = emoji.map((e) => [e.symbol, e.description]); + } + if (decimal) { + sas.decimal = [decimal[0], decimal[1], decimal[2]]; + } + this.callbacks = { - sas: { - decimal: decimal, - emoji: emoji?.map((e) => [e.symbol, e.description]), - }, + sas, confirm: async (): Promise => { const requests: Array = await this.inner.confirm(); for (const m of requests) { From 5973a15f68666e3188e847dc2489efdc62db05e3 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 23 Jan 2024 18:26:23 +0000 Subject: [PATCH 004/595] v31.2.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index accf1fcfa01..99eccb0d55b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.1.0", + "version": "31.2.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -30,8 +30,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,5 +132,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From be8b7695428a2e11ecc98223817040cbcd5ed967 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 23 Jan 2024 19:34:25 +0000 Subject: [PATCH 005/595] Update typescript-eslint monorepo to v6.19.0 (#4029) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 98 +++++++++++++++++++++++++++---------------------------- 1 file changed, 49 insertions(+), 49 deletions(-) diff --git a/yarn.lock b/yarn.lock index 775d537ed08..5b49bca5487 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2082,15 +2082,15 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^6.0.0": - version "6.18.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.18.1.tgz#0df881a47da1c1a9774f39495f5f7052f86b72e0" - integrity sha512-nISDRYnnIpk7VCFrGcu1rnZfM1Dh9LRHnfgdkjcbi/l7g16VYRri3TjXi9Ir4lOZSw5N/gnV/3H7jIPQ8Q4daA== + version "6.19.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.1.tgz#bb0676af940bc23bf299ca58dbdc6589c2548c2e" + integrity sha512-roQScUGFruWod9CEyoV5KlCYrubC/fvG8/1zXuT0WTcxX87GnMMmnksMwSg99lo1xiKrBzw2icsJPMAw1OtKxg== dependencies: "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "6.18.1" - "@typescript-eslint/type-utils" "6.18.1" - "@typescript-eslint/utils" "6.18.1" - "@typescript-eslint/visitor-keys" "6.18.1" + "@typescript-eslint/scope-manager" "6.19.1" + "@typescript-eslint/type-utils" "6.19.1" + "@typescript-eslint/utils" "6.19.1" + "@typescript-eslint/visitor-keys" "6.19.1" debug "^4.3.4" graphemer "^1.4.0" ignore "^5.2.4" @@ -2099,14 +2099,14 @@ ts-api-utils "^1.0.1" "@typescript-eslint/parser@^6.0.0": - version "6.18.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.18.1.tgz#3c3987e186b38c77b30b6bfa5edf7c98ae2ec9d3" - integrity sha512-zct/MdJnVaRRNy9e84XnVtRv9Vf91/qqe+hZJtKanjojud4wAVy/7lXxJmMyX6X6J+xc6c//YEWvpeif8cAhWA== - dependencies: - "@typescript-eslint/scope-manager" "6.18.1" - "@typescript-eslint/types" "6.18.1" - "@typescript-eslint/typescript-estree" "6.18.1" - "@typescript-eslint/visitor-keys" "6.18.1" + version "6.19.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.19.1.tgz#68a87bb21afaf0b1689e9cdce0e6e75bc91ada78" + integrity sha512-WEfX22ziAh6pRE9jnbkkLGp/4RhTpffr2ZK5bJ18M8mIfA8A+k97U9ZyaXCEJRlmMHh7R9MJZWXp/r73DzINVQ== + dependencies: + "@typescript-eslint/scope-manager" "6.19.1" + "@typescript-eslint/types" "6.19.1" + "@typescript-eslint/typescript-estree" "6.19.1" + "@typescript-eslint/visitor-keys" "6.19.1" debug "^4.3.4" "@typescript-eslint/scope-manager@5.62.0": @@ -2117,21 +2117,21 @@ "@typescript-eslint/types" "5.62.0" "@typescript-eslint/visitor-keys" "5.62.0" -"@typescript-eslint/scope-manager@6.18.1": - version "6.18.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.18.1.tgz#28c31c60f6e5827996aa3560a538693cb4bd3848" - integrity sha512-BgdBwXPFmZzaZUuw6wKiHKIovms97a7eTImjkXCZE04TGHysG+0hDQPmygyvgtkoB/aOQwSM/nWv3LzrOIQOBw== +"@typescript-eslint/scope-manager@6.19.1": + version "6.19.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.19.1.tgz#2f527ee30703a6169a52b31d42a1103d80acd51b" + integrity sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w== dependencies: - "@typescript-eslint/types" "6.18.1" - "@typescript-eslint/visitor-keys" "6.18.1" + "@typescript-eslint/types" "6.19.1" + "@typescript-eslint/visitor-keys" "6.19.1" -"@typescript-eslint/type-utils@6.18.1": - version "6.18.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.18.1.tgz#115cf535f8b39db8301677199ce51151e2daee96" - integrity sha512-wyOSKhuzHeU/5pcRDP2G2Ndci+4g653V43gXTpt4nbyoIOAASkGDA9JIAgbQCdCkcr1MvpSYWzxTz0olCn8+/Q== +"@typescript-eslint/type-utils@6.19.1": + version "6.19.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.19.1.tgz#6a130e3afe605a4898e043fa9f72e96309b54935" + integrity sha512-0vdyld3ecfxJuddDjACUvlAeYNrHP/pDeQk2pWBR2ESeEzQhg52DF53AbI9QCBkYE23lgkhLCZNkHn2hEXXYIg== dependencies: - "@typescript-eslint/typescript-estree" "6.18.1" - "@typescript-eslint/utils" "6.18.1" + "@typescript-eslint/typescript-estree" "6.19.1" + "@typescript-eslint/utils" "6.19.1" debug "^4.3.4" ts-api-utils "^1.0.1" @@ -2140,10 +2140,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== -"@typescript-eslint/types@6.18.1": - version "6.18.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.18.1.tgz#91617d8080bcd99ac355d9157079970d1d49fefc" - integrity sha512-4TuMAe+tc5oA7wwfqMtB0Y5OrREPF1GeJBAjqwgZh1lEMH5PJQgWgHGfYufVB51LtjD+peZylmeyxUXPfENLCw== +"@typescript-eslint/types@6.19.1": + version "6.19.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.19.1.tgz#2d4c9d492a63ede15e7ba7d129bdf7714b77f771" + integrity sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg== "@typescript-eslint/typescript-estree@5.62.0": version "5.62.0" @@ -2158,13 +2158,13 @@ semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@6.18.1": - version "6.18.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.18.1.tgz#a12b6440175b4cbc9d09ab3c4966c6b245215ab4" - integrity sha512-fv9B94UAhywPRhUeeV/v+3SBDvcPiLxRZJw/xZeeGgRLQZ6rLMG+8krrJUyIf6s1ecWTzlsbp0rlw7n9sjufHA== +"@typescript-eslint/typescript-estree@6.19.1": + version "6.19.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.1.tgz#796d88d88882f12e85bb33d6d82d39e1aea54ed1" + integrity sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA== dependencies: - "@typescript-eslint/types" "6.18.1" - "@typescript-eslint/visitor-keys" "6.18.1" + "@typescript-eslint/types" "6.19.1" + "@typescript-eslint/visitor-keys" "6.19.1" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2172,17 +2172,17 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/utils@6.18.1": - version "6.18.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.18.1.tgz#3451cfe2e56babb6ac657e10b6703393d4b82955" - integrity sha512-zZmTuVZvD1wpoceHvoQpOiewmWu3uP9FuTWo8vqpy2ffsmfCE8mklRPi+vmnIYAIk9t/4kOThri2QCDgor+OpQ== +"@typescript-eslint/utils@6.19.1": + version "6.19.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.19.1.tgz#df93497f9cfddde2bcc2a591da80536e68acd151" + integrity sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w== dependencies: "@eslint-community/eslint-utils" "^4.4.0" "@types/json-schema" "^7.0.12" "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "6.18.1" - "@typescript-eslint/types" "6.18.1" - "@typescript-eslint/typescript-estree" "6.18.1" + "@typescript-eslint/scope-manager" "6.19.1" + "@typescript-eslint/types" "6.19.1" + "@typescript-eslint/typescript-estree" "6.19.1" semver "^7.5.4" "@typescript-eslint/utils@^5.10.0": @@ -2207,12 +2207,12 @@ "@typescript-eslint/types" "5.62.0" eslint-visitor-keys "^3.3.0" -"@typescript-eslint/visitor-keys@6.18.1": - version "6.18.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.18.1.tgz#704d789bda2565a15475e7d22f145b8fe77443f4" - integrity sha512-/kvt0C5lRqGoCfsbmm7/CwMqoSkY3zzHLIjdhHZQW3VFrnz7ATecOHR7nb7V+xn4286MBxfnQfQhAmCI0u+bJA== +"@typescript-eslint/visitor-keys@6.19.1": + version "6.19.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz#2164073ed4fc34a5ff3b5e25bb5a442100454c4c" + integrity sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ== dependencies: - "@typescript-eslint/types" "6.18.1" + "@typescript-eslint/types" "6.19.1" eslint-visitor-keys "^3.4.1" "@ungap/structured-clone@^1.2.0": From dc406ee2e8b9203f9bb1cee489daf126bbd05368 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 23 Jan 2024 21:10:43 +0000 Subject: [PATCH 006/595] Update dependency @types/node to v18.19.8 (#4028) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5b49bca5487..1b16a8c9372 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2023,9 +2023,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.6" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.6.tgz#537beece2c8ad4d9abdaa3b0f428e601eb57dac8" - integrity sha512-X36s5CXMrrJOs2lQCdDF68apW4Rfx9ixYMawlepwmE4Anezv/AV2LSpKD1Ub8DAc+urp5bk0BGZ6NtmBitfnsg== + version "18.19.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.8.tgz#c1e42b165e5a526caf1f010747e0522cb2c9c36a" + integrity sha512-g1pZtPhsvGVTwmeVoexWZLTQaOvXwoSq//pTL0DHeNzUDrFnir4fgETdhjhIxjVnN+hKOuh98+E1eMLnUXstFg== dependencies: undici-types "~5.26.4" From 8e01b654bc7f795f5da495920236524a25a64c88 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 24 Jan 2024 09:23:28 +0000 Subject: [PATCH 007/595] Update all non-major dependencies (#4027) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/downstream-artifacts.yml | 2 +- package.json | 2 +- spec/unit/crypto/verification/sas.spec.ts | 10 ++++++---- src/@types/extensible_events.ts | 5 ++--- src/models/event-timeline-set.ts | 5 +++-- src/webrtc/call.ts | 10 ++++++---- tsconfig.json | 6 +++--- yarn.lock | 14 +++++++------- 8 files changed, 29 insertions(+), 25 deletions(-) diff --git a/.github/workflows/downstream-artifacts.yml b/.github/workflows/downstream-artifacts.yml index f49d5df25d3..cf57c3af216 100644 --- a/.github/workflows/downstream-artifacts.yml +++ b/.github/workflows/downstream-artifacts.yml @@ -16,7 +16,7 @@ concurrency: jobs: build-element-web: name: Build element-web - uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.88.0 + uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.90.0 with: matrix-js-sdk-sha: ${{ github.sha }} react-sdk-repository: matrix-org/matrix-react-sdk diff --git a/package.json b/package.json index accf1fcfa01..66453a493d2 100644 --- a/package.json +++ b/package.json @@ -117,7 +117,7 @@ "jest-mock": "^29.0.0", "lint-staged": "^15.0.2", "matrix-mock-request": "^2.5.0", - "prettier": "3.1.1", + "prettier": "3.2.4", "rimraf": "^5.0.0", "ts-node": "^10.9.1", "typedoc": "^0.24.0", diff --git a/spec/unit/crypto/verification/sas.spec.ts b/spec/unit/crypto/verification/sas.spec.ts index a37a104d7c6..ba73ced6a3e 100644 --- a/spec/unit/crypto/verification/sas.spec.ts +++ b/spec/unit/crypto/verification/sas.spec.ts @@ -189,10 +189,12 @@ describe("SAS verification", function () { const origSendToDevice = bob.client.sendToDevice.bind(bob.client); bob.client.sendToDevice = async (type, map) => { if (type === "m.key.verification.accept") { - macMethod = map.get(alice.client.getUserId()!)?.get(alice.client.deviceId!) - ?.message_authentication_code; - keyAgreement = map.get(alice.client.getUserId()!)?.get(alice.client.deviceId!) - ?.key_agreement_protocol; + macMethod = map + .get(alice.client.getUserId()!) + ?.get(alice.client.deviceId!)?.message_authentication_code; + keyAgreement = map + .get(alice.client.getUserId()!) + ?.get(alice.client.deviceId!)?.key_agreement_protocol; } return origSendToDevice(type, map); }; diff --git a/src/@types/extensible_events.ts b/src/@types/extensible_events.ts index db9ea1806bd..9b16e0e437e 100644 --- a/src/@types/extensible_events.ts +++ b/src/@types/extensible_events.ts @@ -23,9 +23,8 @@ import { isProvided } from "../extensible_events_v1/utilities"; /** * Represents the stable and unstable values of a given namespace. */ -export type TSNamespace = N extends NamespacedValue - ? TSNamespaceValue | TSNamespaceValue - : never; +export type TSNamespace = + N extends NamespacedValue ? TSNamespaceValue | TSNamespaceValue : never; /** * Represents a namespaced value, if the value is a string. Used to extract provided types diff --git a/src/models/event-timeline-set.ts b/src/models/event-timeline-set.ts index 6175ac9aec0..b23b5ca169e 100644 --- a/src/models/event-timeline-set.ts +++ b/src/models/event-timeline-set.ts @@ -1003,8 +1003,9 @@ export class EventTimelineSet extends TypedEventEmitter track.kind === "video"); - const sender = this.transceivers.get(getTransceiverKey(SDPStreamMetadataPurpose.Usermedia, "video")) - ?.sender; + const sender = this.transceivers.get( + getTransceiverKey(SDPStreamMetadataPurpose.Usermedia, "video"), + )?.sender; sender?.replaceTrack(track ?? null); @@ -1326,8 +1327,9 @@ export class MatrixCall extends TypedEventEmitter track.kind === "video"); - const sender = this.transceivers.get(getTransceiverKey(SDPStreamMetadataPurpose.Usermedia, "video")) - ?.sender; + const sender = this.transceivers.get( + getTransceiverKey(SDPStreamMetadataPurpose.Usermedia, "video"), + )?.sender; sender?.replaceTrack(track ?? null); this.client.getMediaHandler().stopScreensharingStream(this.localScreensharingStream!); diff --git a/tsconfig.json b/tsconfig.json index 13fed86c47b..f55a2c991a5 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -8,12 +8,12 @@ "noUnusedLocals": true, "noEmit": true, "declaration": true, - "strict": true + "strict": true, }, "include": ["./src/**/*.ts", "./spec/**/*.ts"], "typedocOptions": { "entryPoints": ["src/matrix.ts"], "excludeExternals": true, - "out": "_docs" - } + "out": "_docs", + }, } diff --git a/yarn.lock b/yarn.lock index 1b16a8c9372..0d45f7b15fc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3306,9 +3306,9 @@ eslint-plugin-import@^2.26.0: tsconfig-paths "^3.15.0" eslint-plugin-jest@^27.1.6: - version "27.6.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-27.6.2.tgz#8e69404fcd5dfeac03cac478f0ebb9bf2d8db56b" - integrity sha512-CI1AlKrsNhYFoP48VU8BVWOi7+qHTq4bRxyUlGjeU8SfFt8abjXhjOuDzUoMp68DoXIx17KpNpIkMrl4s4ZW0g== + version "27.6.3" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-27.6.3.tgz#8acb8b1e45597fe1f4d4cf25163d90119efc12be" + integrity sha512-+YsJFVH6R+tOiO3gCJon5oqn4KWc+mDq2leudk8mrp8RFubLOo9CVyi3cib4L7XMpxExmkmBZQTPDYVBzgpgOA== dependencies: "@typescript-eslint/utils" "^5.10.0" @@ -5526,10 +5526,10 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prettier@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.1.1.tgz#6ba9f23165d690b6cbdaa88cb0807278f7019848" - integrity sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw== +prettier@3.2.4: + version "3.2.4" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.2.4.tgz#4723cadeac2ce7c9227de758e5ff9b14e075f283" + integrity sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ== pretty-format@^28.1.3: version "28.1.3" From c4d32a3292cba650828aab2e5d5f2e6b4e2317f3 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Wed, 24 Jan 2024 09:35:35 +0000 Subject: [PATCH 008/595] Bump matrix-sdk-crypto-wasm to 4.0.1 (#4025) * Bump matrix-sdk-crypto-wasm to 4.0.1 * Fix some tests * more test fixes * yet more fixes * update comments --- package.json | 2 +- spec/integ/crypto/cross-signing.spec.ts | 3 ++- spec/integ/crypto/crypto.spec.ts | 16 ++++++++++------ spec/integ/crypto/megolm-backup.spec.ts | 3 ++- spec/integ/crypto/verification.spec.ts | 11 ++++++----- spec/unit/rust-crypto/rust-crypto.spec.ts | 9 ++++++++- yarn.lock | 8 ++++---- 7 files changed, 33 insertions(+), 19 deletions(-) diff --git a/package.json b/package.json index 66453a493d2..337cb1d20aa 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^4.0.0", + "@matrix-org/matrix-sdk-crypto-wasm": "^4.0.1", "another-json": "^0.2.0", "bs58": "^5.0.0", "content-type": "^1.0.4", diff --git a/spec/integ/crypto/cross-signing.spec.ts b/spec/integ/crypto/cross-signing.spec.ts index a06efd20621..a0518d827f3 100644 --- a/spec/integ/crypto/cross-signing.spec.ts +++ b/spec/integ/crypto/cross-signing.spec.ts @@ -398,7 +398,8 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("cross-signing (%s)", (backend: s describe("crossSignDevice", () => { beforeEach(async () => { - jest.useFakeTimers(); + // We want to use fake timers, but the wasm bindings of matrix-sdk-crypto rely on a working `queueMicrotask`. + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); // make sure that there is another device which we can sign e2eKeyResponder.addDeviceKeys(SIGNED_TEST_DEVICE_DATA); diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index bac0c46315c..e819cb7cb18 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -1063,8 +1063,9 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, await startClientAndAwaitFirstSync(); const p2pSession = await establishOlmSession(aliceClient, keyReceiver, syncResponder, testOlmAccount); - // We need to fake the timers to advance the time - jest.useFakeTimers(); + // We need to fake the timers to advance the time, but the wasm bindings of matrix-sdk-crypto rely on a + // working `queueMicrotask` + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); const syncResponse = getSyncResponse(["@bob:xyz"]); @@ -2189,7 +2190,8 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, describe("key upload request", () => { beforeEach(() => { - jest.useFakeTimers(); + // We want to use fake timers, but the wasm bindings of matrix-sdk-crypto rely on a working `queueMicrotask`. + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); }); afterEach(() => { @@ -2389,8 +2391,9 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, expect(devicesInfo.get(user)?.size).toBeFalsy(); }); - it("Get devices from tacked users", async () => { - jest.useFakeTimers(); + it("Get devices from tracked users", async () => { + // We want to use fake timers, but the wasm bindings of matrix-sdk-crypto rely on a working `queueMicrotask`. + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); await startClientAndAwaitFirstSync(); @@ -2745,7 +2748,8 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, describe("Manage Key Backup", () => { beforeEach(async () => { - jest.useFakeTimers(); + // We want to use fake timers, but the wasm bindings of matrix-sdk-crypto rely on a working `queueMicrotask`. + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); }); afterEach(() => { diff --git a/spec/integ/crypto/megolm-backup.spec.ts b/spec/integ/crypto/megolm-backup.spec.ts index f6bd53ef476..11e1c2eb705 100644 --- a/spec/integ/crypto/megolm-backup.spec.ts +++ b/spec/integ/crypto/megolm-backup.spec.ts @@ -129,7 +129,8 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("megolm-keys backup (%s)", (backe let e2eKeyResponder: E2EKeyResponder; beforeEach(async () => { - jest.useFakeTimers(); + // We want to use fake timers, but the wasm bindings of matrix-sdk-crypto rely on a working `queueMicrotask`. + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); // anything that we don't have a specific matcher for silently returns a 404 fetchMock.catch(404); diff --git a/spec/integ/crypto/verification.spec.ts b/spec/integ/crypto/verification.spec.ts index d95097fcfd8..243fd510d58 100644 --- a/spec/integ/crypto/verification.spec.ts +++ b/spec/integ/crypto/verification.spec.ts @@ -85,7 +85,8 @@ import { encodeBase64 } from "../../../src/base64"; // The verification flows use javascript timers to set timeouts. We tell jest to use mock timer implementations // to ensure that we don't end up with dangling timeouts. -jest.useFakeTimers(); +// But the wasm bindings of matrix-sdk-crypto rely on a working `queueMicrotask`. +jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); beforeAll(async () => { // we use the libolm primitives in the test, so init the Olm library @@ -1285,7 +1286,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st await new Promise((resolve) => { setTimeout(resolve, 500); }); - jest.useFakeTimers(); + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); // the backup secret should not be cached const cachedKey = await aliceClient.getCrypto()!.getSessionBackupPrivateKey(); @@ -1309,7 +1310,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st await new Promise((resolve) => { setTimeout(resolve, 500); }); - jest.useFakeTimers(); + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); // the backup secret should not be cached const cachedKey = await aliceClient.getCrypto()!.getSessionBackupPrivateKey(); @@ -1334,7 +1335,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st await new Promise((resolve) => { setTimeout(resolve, 500); }); - jest.useFakeTimers(); + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); // the backup secret should not be cached const cachedKey = await aliceClient.getCrypto()!.getSessionBackupPrivateKey(); @@ -1355,7 +1356,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st await new Promise((resolve) => { setTimeout(resolve, 500); }); - jest.useFakeTimers(); + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); // the backup secret should not be cached const cachedKey = await aliceClient.getCrypto()!.getSessionBackupPrivateKey(); diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index dbcf0df88c2..68effb2f93b 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -75,6 +75,12 @@ import { CryptoStore, SecretStorePrivateKeys } from "../../../src/crypto/store/b const TEST_USER = "@alice:example.com"; const TEST_DEVICE_ID = "TEST_DEVICE"; +beforeAll(async () => { + // Load the WASM upfront, before any of the tests. This can take some time, and doing it here means that it gets + // a separate timeout. + await RustSdkCryptoJs.initAsync(); +}, 15000); + afterEach(() => { fetchMock.reset(); jest.restoreAllMocks(); @@ -997,7 +1003,8 @@ describe("RustCrypto", () => { }); it("should wait for a keys/query before returning devices", async () => { - jest.useFakeTimers(); + // We want to use fake timers, but the wasm bindings of matrix-sdk-crypto rely on a working `queueMicrotask`. + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); fetchMock.post("path:/_matrix/client/v3/keys/upload", { one_time_key_counts: {} }); fetchMock.post("path:/_matrix/client/v3/keys/query", { diff --git a/yarn.lock b/yarn.lock index 0d45f7b15fc..19b24992816 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1674,10 +1674,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@matrix-org/matrix-sdk-crypto-wasm@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.0.0.tgz#b33bae9c418c5516d0dbce29662c6db803003626" - integrity sha512-a883HchJViPo6ukM0fEDmBgvMI6lWEujqAjMZgwaKEYNZTPgezN5PQvSNz2d+b96/R1y4QOC71zXM1yNylXA6Q== +"@matrix-org/matrix-sdk-crypto-wasm@^4.0.1": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.0.1.tgz#b1d3848a6adc120622e5225045330d253273b117" + integrity sha512-0B4QQ9kop8AocmQDcOfROCQ6QyGZeogpsvTYfEB9ZIBtndCCwy/C3mkxzJD6+gEo1bJ4TdYnblhN7hEQlAG50g== "@matrix-org/olm@3.2.15": version "3.2.15" From ab217bdc3552d9711c51e0e711d2f0ba86565e48 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Wed, 24 Jan 2024 03:30:51 -0700 Subject: [PATCH 009/595] Support optional MSC3860 redirects (#4007) * Support optional MSC3860 redirects See `allow_redirect` across the media endpoints: https://spec.matrix.org/v1.9/client-server-api/#client-behaviour-7 * Update the tests * Appease the linter * Add test to appease SonarCloud * Only add `allow_redirect` if the parameter is specified rather than defaulting to `false` Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/content-repo.spec.ts | 15 +++++++++++++++ spec/unit/matrix-client.spec.ts | 16 ++++++++++++++++ src/client.ts | 6 +++++- src/content-repo.ts | 9 +++++++++ 4 files changed, 45 insertions(+), 1 deletion(-) diff --git a/spec/unit/content-repo.spec.ts b/spec/unit/content-repo.spec.ts index 91953945ac7..33eeab12d5e 100644 --- a/spec/unit/content-repo.spec.ts +++ b/spec/unit/content-repo.spec.ts @@ -37,6 +37,21 @@ describe("ContentRepo", function () { ); }); + it("should allow redirects when requested on download URLs", function () { + const mxcUri = "mxc://server.name/resourceid"; + expect(getHttpUriForMxc(baseUrl, mxcUri, undefined, undefined, undefined, false, true)).toEqual( + baseUrl + "/_matrix/media/v3/download/server.name/resourceid?allow_redirect=true", + ); + }); + + it("should allow redirects when requested on thumbnail URLs", function () { + const mxcUri = "mxc://server.name/resourceid"; + expect(getHttpUriForMxc(baseUrl, mxcUri, 32, 32, "scale", false, true)).toEqual( + baseUrl + + "/_matrix/media/v3/thumbnail/server.name/resourceid?width=32&height=32&method=scale&allow_redirect=true", + ); + }); + it("should return the empty string for null input", function () { expect(getHttpUriForMxc(null as any, "")).toEqual(""); }); diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index 920bec55804..8f87d6f8cc6 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -55,6 +55,7 @@ import { RuleId, IPushRule, ConditionKind, + getHttpUriForMxc, } from "../../src"; import { supportsMatrixCall } from "../../src/webrtc/call"; import { makeBeaconEvent } from "../test-utils/beacon"; @@ -369,6 +370,21 @@ describe("MatrixClient", function () { client.stopClient(); }); + describe("mxcUrlToHttp", () => { + it("should call getHttpUriForMxc", () => { + const mxc = "mxc://server/example"; + expect(client.mxcUrlToHttp(mxc)).toBe(getHttpUriForMxc(client.baseUrl, mxc)); + expect(client.mxcUrlToHttp(mxc, 32)).toBe(getHttpUriForMxc(client.baseUrl, mxc, 32)); + expect(client.mxcUrlToHttp(mxc, 32, 46)).toBe(getHttpUriForMxc(client.baseUrl, mxc, 32, 46)); + expect(client.mxcUrlToHttp(mxc, 32, 46, "scale")).toBe( + getHttpUriForMxc(client.baseUrl, mxc, 32, 46, "scale"), + ); + expect(client.mxcUrlToHttp(mxc, 32, 46, "scale", false, true)).toBe( + getHttpUriForMxc(client.baseUrl, mxc, 32, 46, "scale", false, true), + ); + }); + }); + describe("timestampToEvent", () => { const roomId = "!room:server.org"; const eventId = "$eventId:example.org"; diff --git a/src/client.ts b/src/client.ts index 3acc0135209..bb294f87e38 100644 --- a/src/client.ts +++ b/src/client.ts @@ -5805,6 +5805,9 @@ export class MatrixClient extends TypedEventEmitter= 0) { From 19494e093bde2f57c1228620f743b75ea7d867af Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Wed, 24 Jan 2024 14:47:13 +0000 Subject: [PATCH 010/595] Fix crypto migration for megolm sessions with no sender key (#4024) Fixes https://github.com/element-hq/element-web/issues/26894 Requires https://github.com/matrix-org/matrix-rust-sdk-crypto-wasm/pull/89 (or rather, an update to a version of matrix-rust-sdk-crypto-wasm) which includes it). --- spec/unit/rust-crypto/rust-crypto.spec.ts | 73 +++++++++++++++++++---- src/crypto/OlmDevice.ts | 2 +- src/rust-crypto/libolm_migration.ts | 8 ++- 3 files changed, 68 insertions(+), 15 deletions(-) diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 68effb2f93b..52916b43642 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -167,6 +167,21 @@ describe("initRustCrypto", () => { }); describe("libolm migration", () => { + let mockStore: RustSdkCryptoJs.StoreHandle; + + beforeEach(() => { + // Stub out a bunch of stuff in the Rust library + mockStore = { free: jest.fn() } as unknown as StoreHandle; + jest.spyOn(StoreHandle, "open").mockResolvedValue(mockStore); + + jest.spyOn(Migration, "migrateBaseData").mockResolvedValue(undefined); + jest.spyOn(Migration, "migrateOlmSessions").mockResolvedValue(undefined); + jest.spyOn(Migration, "migrateMegolmSessions").mockResolvedValue(undefined); + + const testOlmMachine = makeTestOlmMachine(); + jest.spyOn(OlmMachine, "initFromStore").mockResolvedValue(testOlmMachine); + }); + it("migrates data from a legacy crypto store", async () => { const PICKLE_KEY = "pickle1234"; const legacyStore = new MemoryCryptoStore(); @@ -186,17 +201,6 @@ describe("initRustCrypto", () => { createMegolmSessions(legacyStore, nDevices, nSessionsPerDevice); await legacyStore.markSessionsNeedingBackup([{ senderKey: pad43("device5"), sessionId: "session5" }]); - // Stub out a bunch of stuff in the Rust library - const mockStore = { free: jest.fn() } as unknown as StoreHandle; - jest.spyOn(StoreHandle, "open").mockResolvedValue(mockStore); - - jest.spyOn(Migration, "migrateBaseData").mockResolvedValue(undefined); - jest.spyOn(Migration, "migrateOlmSessions").mockResolvedValue(undefined); - jest.spyOn(Migration, "migrateMegolmSessions").mockResolvedValue(undefined); - - const testOlmMachine = makeTestOlmMachine(); - jest.spyOn(OlmMachine, "initFromStore").mockResolvedValue(testOlmMachine); - fetchMock.get("path:/_matrix/client/v3/room_keys/version", { version: "45" }); function legacyMigrationProgressListener(progress: number, total: number): void { @@ -275,12 +279,59 @@ describe("initRustCrypto", () => { expect(session.senderKey).toEqual(pad43(`device${i}`)); expect(session.pickle).toEqual("sessionPickle"); expect(session.roomId!.toString()).toEqual("!room:id"); + expect(session.senderSigningKey).toEqual("sender_signing_key"); + // only one of the sessions needs backing up expect(session.backedUp).toEqual(i !== 5 || j !== 5); } } }, 10000); + it("handles megolm sessions with no `keysClaimed`", async () => { + const legacyStore = new MemoryCryptoStore(); + legacyStore.storeAccount({}, "not a real account"); + + legacyStore.storeEndToEndInboundGroupSession( + pad43(`device1`), + `session1`, + { + forwardingCurve25519KeyChain: [], + room_id: "!room:id", + session: "sessionPickle", + }, + undefined, + ); + + const PICKLE_KEY = "pickle1234"; + await initRustCrypto({ + logger, + http: makeMatrixHttpApi(), + userId: TEST_USER, + deviceId: TEST_DEVICE_ID, + secretStorage: {} as ServerSideSecretStorage, + cryptoCallbacks: {} as CryptoCallbacks, + storePrefix: "storePrefix", + storePassphrase: "storePassphrase", + legacyCryptoStore: legacyStore, + legacyPickleKey: PICKLE_KEY, + }); + + expect(Migration.migrateMegolmSessions).toHaveBeenCalledTimes(1); + expect(Migration.migrateMegolmSessions).toHaveBeenCalledWith( + expect.any(Array), + new Uint8Array(Buffer.from(PICKLE_KEY)), + mockStore, + ); + const megolmSessions: PickledInboundGroupSession[] = mocked(Migration.migrateMegolmSessions).mock + .calls[0][0]; + expect(megolmSessions.length).toEqual(1); + const session = megolmSessions[0]; + expect(session.senderKey).toEqual(pad43(`device1`)); + expect(session.pickle).toEqual("sessionPickle"); + expect(session.roomId!.toString()).toEqual("!room:id"); + expect(session.senderSigningKey).toBe(undefined); + }, 10000); + async function encryptAndStoreSecretKey(type: string, key: Uint8Array, pickleKey: string, store: CryptoStore) { const encryptedKey = await encryptAES(encodeBase64(key), Buffer.from(pickleKey), type); store.storeSecretStorePrivateKey(undefined, type as keyof SecretStorePrivateKeys, encryptedKey); diff --git a/src/crypto/OlmDevice.ts b/src/crypto/OlmDevice.ts index 45706d91c70..28c4e4cd689 100644 --- a/src/crypto/OlmDevice.ts +++ b/src/crypto/OlmDevice.ts @@ -64,7 +64,7 @@ export interface InboundGroupSessionData { room_id: string; // eslint-disable-line camelcase /** pickled Olm.InboundGroupSession */ session: string; - keysClaimed: Record; + keysClaimed?: Record; /** Devices involved in forwarding this session to us (normally empty). */ forwardingCurve25519KeyChain: string[]; /** whether this session is untrusted. */ diff --git a/src/rust-crypto/libolm_migration.ts b/src/rust-crypto/libolm_migration.ts index e03d401cc93..8a34aac4b43 100644 --- a/src/rust-crypto/libolm_migration.ts +++ b/src/rust-crypto/libolm_migration.ts @@ -232,11 +232,13 @@ async function migrateMegolmSessions( logger.debug(`Migrating batch of ${batch.length} megolm sessions`); const migrationData: RustSdkCryptoJs.PickledInboundGroupSession[] = []; for (const session of batch) { + const sessionData = session.sessionData!; + const pickledSession = new RustSdkCryptoJs.PickledInboundGroupSession(); - pickledSession.pickle = session.sessionData!.session; - pickledSession.roomId = new RustSdkCryptoJs.RoomId(session.sessionData!.room_id); + pickledSession.pickle = sessionData.session; + pickledSession.roomId = new RustSdkCryptoJs.RoomId(sessionData.room_id); pickledSession.senderKey = session.senderKey; - pickledSession.senderSigningKey = session.sessionData!.keysClaimed["ed25519"]; + pickledSession.senderSigningKey = sessionData.keysClaimed?.["ed25519"]; pickledSession.backedUp = !session.needsBackup; // Not sure if we can reliably distinguish imported vs not-imported sessions in the libolm database. From 5e2acb558b40059c833e0a094bd28236790c544b Mon Sep 17 00:00:00 2001 From: Hubert Chathi Date: Wed, 24 Jan 2024 22:43:50 -0500 Subject: [PATCH 011/595] Implement getting verification cancellation info in Rust crypto (#3947) * implement verification cancellation info in Rust crypto * fix type info * use string cancel code and add test * simplify code Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- spec/integ/crypto/verification.spec.ts | 2 ++ src/rust-crypto/verification.ts | 11 +++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/spec/integ/crypto/verification.spec.ts b/spec/integ/crypto/verification.spec.ts index 243fd510d58..ae9ebcd5961 100644 --- a/spec/integ/crypto/verification.spec.ts +++ b/spec/integ/crypto/verification.spec.ts @@ -744,6 +744,8 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st expect(toDeviceMessage.transaction_id).toEqual(transactionId); expect(toDeviceMessage.code).toEqual("m.user"); expect(request.phase).toEqual(VerificationPhase.Cancelled); + expect(request.cancellationCode).toEqual("m.user"); + expect(request.cancellingUserId).toEqual("@alice:localhost"); }); it("can cancel during the SAS phase", async () => { diff --git a/src/rust-crypto/verification.ts b/src/rust-crypto/verification.ts index cca1b4aa6b4..a8b733c5fe0 100644 --- a/src/rust-crypto/verification.ts +++ b/src/rust-crypto/verification.ts @@ -426,7 +426,7 @@ export class RustVerificationRequest * this verification. */ public get cancellationCode(): string | null { - throw new Error("not implemented"); + return this.inner.cancelInfo?.cancelCode() ?? null; } /** @@ -435,7 +435,14 @@ export class RustVerificationRequest * Only defined when phase is Cancelled */ public get cancellingUserId(): string | undefined { - throw new Error("not implemented"); + const cancelInfo = this.inner.cancelInfo; + if (!cancelInfo) { + return undefined; + } else if (cancelInfo.cancelledbyUs()) { + return this.olmMachine.userId.toString(); + } else { + return this.inner.otherUserId.toString(); + } } } From 99b3cf2279484cdc864349d6b28529f448373b71 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Thu, 25 Jan 2024 08:38:02 +0000 Subject: [PATCH 012/595] Introduce `Room.hasEncryptionStateEvent` (#4030) ... and replace a lot of calls to `MatrixClient.isRoomEncrypted` with it. This is a lesser check (since it can be tricked by servers withholding the state event), but for most cases it is sufficient. At the end of the day, if the server witholds the state, the room is pretty much bricked anyway. The one thing we *mustn't* do is allow users to send *unencrypted* events to the room. --- spec/unit/matrix-client.spec.ts | 18 +----------------- src/client.ts | 7 +++---- src/models/room.ts | 23 +++++++++++++++++++---- src/sliding-sync-sdk.ts | 2 +- src/sync.ts | 4 ++-- 5 files changed, 26 insertions(+), 28 deletions(-) diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index 8f87d6f8cc6..2a79293e2ad 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -1450,23 +1450,7 @@ describe("MatrixClient", function () { const mockRoom = { getMyMembership: () => "join", updatePendingEvent: (event: MatrixEvent, status: EventStatus) => event.setStatus(status), - currentState: { - getStateEvents: (eventType, stateKey) => { - if (eventType === EventType.RoomCreate) { - expect(stateKey).toEqual(""); - return new MatrixEvent({ - content: { - [RoomCreateTypeField]: RoomType.Space, - }, - }); - } else if (eventType === EventType.RoomEncryption) { - expect(stateKey).toEqual(""); - return new MatrixEvent({ content: {} }); - } else { - throw new Error("Unexpected event type or state key"); - } - }, - } as Room["currentState"], + hasEncryptionStateEvent: jest.fn().mockReturnValue(true), } as unknown as Room; let event: MatrixEvent; diff --git a/src/client.ts b/src/client.ts index bb294f87e38..44d9fbd33a9 100644 --- a/src/client.ts +++ b/src/client.ts @@ -1445,7 +1445,7 @@ export class MatrixClient extends TypedEventEmitter { - if (room && this.isRoomEncrypted(room.roomId)) { + if (room?.hasEncryptionStateEvent()) { // Figure out if we've read something or if it's just informational const content = event.getContent(); const isSelf = @@ -3268,8 +3268,7 @@ export class MatrixClient extends TypedEventEmitter { // that this function is only called once (unless loading the members // fails), since loadMembersIfNeeded always returns this.membersPromise // if set, which will be the result of the first (successful) call. - if (rawMembersEvents === null || (this.client.isCryptoEnabled() && this.client.isRoomEncrypted(this.roomId))) { + if (rawMembersEvents === null || this.hasEncryptionStateEvent()) { fromServer = true; rawMembersEvents = await this.loadMembersFromServer(); logger.log(`LL: got ${rawMembersEvents.length} ` + `members from server for room ${this.roomId}`); @@ -1275,9 +1275,12 @@ export class Room extends ReadReceipt { * error will be thrown. * * @returns the result + * + * @deprecated Not supported under rust crypto. Instead, call {@link Room.getEncryptionTargetMembers}, + * {@link CryptoApi.getUserDeviceInfo}, and {@link CryptoApi.getDeviceVerificationStatus}. */ public async hasUnverifiedDevices(): Promise { - if (!this.client.isRoomEncrypted(this.roomId)) { + if (!this.hasEncryptionStateEvent()) { return false; } const e2eMembers = await this.getEncryptionTargetMembers(); @@ -2565,7 +2568,7 @@ export class Room extends ReadReceipt { .filter((event) => { // Filter out the unencrypted messages if the room is encrypted const isEventEncrypted = event.type === EventType.RoomMessageEncrypted; - const isRoomEncrypted = this.client.isRoomEncrypted(this.roomId); + const isRoomEncrypted = this.hasEncryptionStateEvent(); return isEventEncrypted || !isRoomEncrypted; }); @@ -3170,7 +3173,7 @@ export class Room extends ReadReceipt { public maySendMessage(): boolean { return ( this.getMyMembership() === "join" && - (this.client.isRoomEncrypted(this.roomId) + (this.hasEncryptionStateEvent() ? this.currentState.maySendEvent(EventType.RoomMessageEncrypted, this.myUserId) : this.currentState.maySendEvent(EventType.RoomMessage, this.myUserId)) ); @@ -3672,6 +3675,18 @@ export class Room extends ReadReceipt { public compareEventOrdering(leftEventId: string, rightEventId: string): number | null { return compareEventOrdering(this, leftEventId, rightEventId); } + + /** + * Return true if this room has an `m.room.encryption` state event. + * + * If this returns `true`, events sent to this room should be encrypted (and `MatrixClient.sendEvent` and friends + * will encrypt outgoing events). + */ + public hasEncryptionStateEvent(): boolean { + return Boolean( + this.getLiveTimeline().getState(EventTimeline.FORWARDS)?.getStateEvents(EventType.RoomEncryption, ""), + ); + } } // a map from current event status to a list of allowed next statuses diff --git a/src/sliding-sync-sdk.ts b/src/sliding-sync-sdk.ts index eea6656d98f..bfe32448bd2 100644 --- a/src/sliding-sync-sdk.ts +++ b/src/sliding-sync-sdk.ts @@ -615,7 +615,7 @@ export class SlidingSyncSdk { } } - const encrypted = this.client.isRoomEncrypted(room.roomId); + const encrypted = room.hasEncryptionStateEvent(); // we do this first so it's correct when any of the events fire if (roomData.notification_count != null) { room.setUnreadNotificationCount(NotificationCountType.Total, roomData.notification_count); diff --git a/src/sync.ts b/src/sync.ts index 57afaff24c4..372260d5615 100644 --- a/src/sync.ts +++ b/src/sync.ts @@ -1760,11 +1760,11 @@ export class SyncApi { return events?.find((e) => e.getType() === EventType.RoomEncryption && e.getStateKey() === ""); } - // When processing the sync response we cannot rely on MatrixClient::isRoomEncrypted before we actually + // When processing the sync response we cannot rely on Room.hasEncryptionStateEvent we actually // inject the events into the room object, so we have to inspect the events themselves. private isRoomEncrypted(room: Room, stateEventList: MatrixEvent[], timelineEventList?: MatrixEvent[]): boolean { return ( - this.client.isRoomEncrypted(room.roomId) || + room.hasEncryptionStateEvent() || !!this.findEncryptionEvent(stateEventList) || !!this.findEncryptionEvent(timelineEventList) ); From 5bf29ef543a985776cdcda839701a56e9168c418 Mon Sep 17 00:00:00 2001 From: Jan Jurzitza Date: Thu, 25 Jan 2024 10:47:27 +0100 Subject: [PATCH 013/595] fix IndexedDBStore API documentation (#3987) * fix IndexedDBStore API documentation changes the changelog entry to include since when this change is needed fix #3986 Signed-off-by: Jan Jurzitza * retroactively add breaking change note to changelog entry Signed-off-by: Jan Jurzitza --------- Signed-off-by: Jan Jurzitza --- CHANGELOG.md | 1 + src/store/indexeddb.ts | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index aff0c3582c9..f4a897632f9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -76,6 +76,7 @@ Changes in [30.0.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v30 ## 🚨 BREAKING CHANGES * Refactor & make base64 functions browser-safe ([\#3818](https://github.com/matrix-org/matrix-js-sdk/pull/3818)). + * `IndexedDBStore.startup()` must be called after using it on `sdk.createClient` now. ## 🦖 Deprecations * Deprecate `MatrixEvent.toJSON` ([\#3801](https://github.com/matrix-org/matrix-js-sdk/pull/3801)). diff --git a/src/store/indexeddb.ts b/src/store/indexeddb.ts index 33453b25db4..33132a17bde 100644 --- a/src/store/indexeddb.ts +++ b/src/store/indexeddb.ts @@ -90,10 +90,10 @@ export class IndexedDBStore extends MemoryStore { * ``` * let opts = { indexedDB: window.indexedDB, localStorage: window.localStorage }; * let store = new IndexedDBStore(opts); - * await store.startup(); // load from indexed db * let client = sdk.createClient({ * store: store, * }); + * await store.startup(); // load from indexed db, must be called after createClient * client.startClient(); * client.on("sync", function(state, prevState, data) { * if (state === "PREPARED") { @@ -140,7 +140,9 @@ export class IndexedDBStore extends MemoryStore { logger.log(`IndexedDBStore.startup: processing presence events`); userPresenceEvents.forEach(([userId, rawEvent]) => { if (!this.createUser) { - throw new Error("createUser is undefined, it should be set with setUserCreator()!"); + throw new Error( + "`IndexedDBStore.startup` must be called after assigning it to the client, not before!", + ); } const u = this.createUser(userId); if (rawEvent) { From 35ea144bcaeddd0dd414d668be5631783597604e Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 26 Jan 2024 09:47:49 +0000 Subject: [PATCH 014/595] Update matrix-rust-sdk-crypto-wasm to 4.1.0 (#4034) I have some other changes in the pipeline which will depend on this. --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 337cb1d20aa..1b6eb295b87 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^4.0.1", + "@matrix-org/matrix-sdk-crypto-wasm": "^4.1.0", "another-json": "^0.2.0", "bs58": "^5.0.0", "content-type": "^1.0.4", diff --git a/yarn.lock b/yarn.lock index 19b24992816..bf2db4f2bb9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1674,10 +1674,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@matrix-org/matrix-sdk-crypto-wasm@^4.0.1": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.0.1.tgz#b1d3848a6adc120622e5225045330d253273b117" - integrity sha512-0B4QQ9kop8AocmQDcOfROCQ6QyGZeogpsvTYfEB9ZIBtndCCwy/C3mkxzJD6+gEo1bJ4TdYnblhN7hEQlAG50g== +"@matrix-org/matrix-sdk-crypto-wasm@^4.1.0": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.1.0.tgz#9b470ed57cf82b0891f6e1cced1dba90c87ef668" + integrity sha512-/jCyvpDmgAybQWiRMmzflm4cneaRNVt8USqEV1RxoHBzlIE68LtLc9/HCfaPjkY7aYLHTbCrThR9GFXRWGyRxQ== "@matrix-org/olm@3.2.15": version "3.2.15" From 869576747c22f0f4ebf9ee8dfc2b0b18927eaebb Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 26 Jan 2024 10:21:33 +0000 Subject: [PATCH 015/595] Refactor `MatrixClient.encryptAndSendEvent` (#4031) * Replace `pendingEventEncryption` with a Set We don't actually need the promise, so no need to save it. This also fixes a resource leak, where we would leak a Promise and a HashMap entry on each encrypted event. * Convert `encryptEventIfNeeded` to async function This means that it will always return a promise, so `encryptAndSendEvent` can't tell if we are actually encrypting or not. Hence, also move the `updatePendingEventStatus` into `encryptEventIfNeeded`. * Simplify `encryptAndSendEvent` Rewrite this as async. * Factor out `MatrixClient.shouldEncryptEventForRoom` * Inline a call to `isRoomEncrypted` I want to deprecate this thing --- spec/unit/matrix-client.spec.ts | 26 +++-- spec/unit/queueToDevice.spec.ts | 1 + src/client.ts | 192 ++++++++++++++++++-------------- src/models/event.ts | 2 +- 4 files changed, 128 insertions(+), 93 deletions(-) diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index 2a79293e2ad..f1382bca563 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -65,7 +65,7 @@ import { PolicyScope, } from "../../src/models/invites-ignorer"; import { IOlmDevice } from "../../src/crypto/algorithms/megolm"; -import { QueryDict } from "../../src/utils"; +import { defer, QueryDict } from "../../src/utils"; import { SyncState } from "../../src/sync"; import * as featureUtils from "../../src/feature"; import { StubStore } from "../../src/store/stub"; @@ -1453,6 +1453,8 @@ describe("MatrixClient", function () { hasEncryptionStateEvent: jest.fn().mockReturnValue(true), } as unknown as Room; + let mockCrypto: Mocked; + let event: MatrixEvent; beforeEach(async () => { event = new MatrixEvent({ @@ -1467,11 +1469,12 @@ describe("MatrixClient", function () { expect(getRoomId).toEqual(roomId); return mockRoom; }; - client.crypto = client["cryptoBackend"] = { - // mock crypto - encryptEvent: () => new Promise(() => {}), + + mockCrypto = { + encryptEvent: jest.fn(), stop: jest.fn(), - } as unknown as Crypto; + } as unknown as Mocked; + client.crypto = client["cryptoBackend"] = mockCrypto; }); function assertCancelled() { @@ -1488,12 +1491,21 @@ describe("MatrixClient", function () { }); it("should cancel an event which is encrypting", async () => { + const encryptEventDefer = defer(); + mockCrypto.encryptEvent.mockReturnValue(encryptEventDefer.promise); + + const statusPromise = testUtils.emitPromise(event, "Event.status"); // @ts-ignore protected method access - client.encryptAndSendEvent(mockRoom, event); - await testUtils.emitPromise(event, "Event.status"); + const encryptAndSendPromise = client.encryptAndSendEvent(mockRoom, event); + await statusPromise; expect(event.status).toBe(EventStatus.ENCRYPTING); client.cancelPendingEvent(event); assertCancelled(); + + // now let the encryption complete, and check that the message is not sent. + encryptEventDefer.resolve(); + await encryptAndSendPromise; + assertCancelled(); }); it("should cancel an event which is not sent", () => { diff --git a/spec/unit/queueToDevice.spec.ts b/spec/unit/queueToDevice.spec.ts index 1099bcb82e8..f9b90304e02 100644 --- a/spec/unit/queueToDevice.spec.ts +++ b/spec/unit/queueToDevice.spec.ts @@ -265,6 +265,7 @@ describe.each([[StoreType.Memory], [StoreType.IndexedDB]])("queueToDevice (%s st }); const mockRoom = { updatePendingEvent: jest.fn(), + hasEncryptionStateEvent: jest.fn().mockReturnValue(false), } as unknown as Room; client.resendEvent(dummyEvent, mockRoom); diff --git a/src/client.ts b/src/client.ts index 44d9fbd33a9..78011c1b83c 100644 --- a/src/client.ts +++ b/src/client.ts @@ -1305,7 +1305,13 @@ export class MatrixClient extends TypedEventEmitter>(); + + /** IDs of events which are currently being encrypted. + * + * This is part of the cancellation mechanism: if the event is no longer listed here when encryption completes, + * that tells us that it has been cancelled, and we should not send it. + */ + private eventsBeingEncrypted = new Set(); private useE2eForGroupCall = true; private toDeviceMessageQueue: ToDeviceMessageQueue; @@ -4448,9 +4454,10 @@ export class MatrixClient extends TypedEventEmitter { - let cancelled = false; - // Add an extra Promise.resolve() to turn synchronous exceptions into promise rejections, - // so that we can handle synchronous and asynchronous exceptions with the - // same code path. - return Promise.resolve() - .then(() => { - const encryptionPromise = this.encryptEventIfNeeded(event, room ?? undefined); - if (!encryptionPromise) return null; // doesn't need encryption - - this.pendingEventEncryption.set(event.getId()!, encryptionPromise); - this.updatePendingEventStatus(room, event, EventStatus.ENCRYPTING); - return encryptionPromise.then(() => { - if (!this.pendingEventEncryption.has(event.getId()!)) { - // cancelled via MatrixClient::cancelPendingEvent - cancelled = true; - return; - } - this.updatePendingEventStatus(room, event, EventStatus.SENDING); - }); - }) - .then(() => { - if (cancelled) return {} as ISendEventResponse; - let promise: Promise | null = null; - if (this.scheduler) { - // if this returns a promise then the scheduler has control now and will - // resolve/reject when it is done. Internally, the scheduler will invoke - // processFn which is set to this._sendEventHttpRequest so the same code - // path is executed regardless. - promise = this.scheduler.queueEvent(event); - if (promise && this.scheduler.getQueueForEvent(event)!.length > 1) { - // event is processed FIFO so if the length is 2 or more we know - // this event is stuck behind an earlier event. - this.updatePendingEventStatus(room, event, EventStatus.QUEUED); - } - } + protected async encryptAndSendEvent(room: Room | null, event: MatrixEvent): Promise { + try { + let cancelled: boolean; + this.eventsBeingEncrypted.add(event.getId()!); + try { + await this.encryptEventIfNeeded(event, room ?? undefined); + } finally { + cancelled = !this.eventsBeingEncrypted.delete(event.getId()!); + } - if (!promise) { - promise = this.sendEventHttpRequest(event); - if (room) { - promise = promise.then((res) => { - room.updatePendingEvent(event, EventStatus.SENT, res["event_id"]); - return res; - }); - } - } + if (cancelled) { + // cancelled via MatrixClient::cancelPendingEvent + return {} as ISendEventResponse; + } - return promise; - }) - .catch((err) => { - this.logger.error("Error sending event", err.stack || err); - try { - // set the error on the event before we update the status: - // updating the status emits the event, so the state should be - // consistent at that point. - event.error = err; - this.updatePendingEventStatus(room, event, EventStatus.NOT_SENT); - } catch (e) { - this.logger.error("Exception in error handler!", (e).stack || err); + // encryptEventIfNeeded may have updated the status from SENDING to ENCRYPTING. If so, we need + // to put it back. + if (event.status === EventStatus.ENCRYPTING) { + this.updatePendingEventStatus(room, event, EventStatus.SENDING); + } + + let promise: Promise | null = null; + if (this.scheduler) { + // if this returns a promise then the scheduler has control now and will + // resolve/reject when it is done. Internally, the scheduler will invoke + // processFn which is set to this._sendEventHttpRequest so the same code + // path is executed regardless. + promise = this.scheduler.queueEvent(event); + if (promise && this.scheduler.getQueueForEvent(event)!.length > 1) { + // event is processed FIFO so if the length is 2 or more we know + // this event is stuck behind an earlier event. + this.updatePendingEventStatus(room, event, EventStatus.QUEUED); } - if (err instanceof MatrixError) { - err.event = event; + } + + if (!promise) { + promise = this.sendEventHttpRequest(event); + if (room) { + promise = promise.then((res) => { + room.updatePendingEvent(event, EventStatus.SENT, res["event_id"]); + return res; + }); } - throw err; - }); - } + } - private encryptEventIfNeeded(event: MatrixEvent, room?: Room): Promise | null { - if (event.isEncrypted()) { - // this event has already been encrypted; this happens if the - // encryption step succeeded, but the send step failed on the first - // attempt. - return null; + return await promise; + } catch (err) { + this.logger.error("Error sending event", err); + try { + // set the error on the event before we update the status: + // updating the status emits the event, so the state should be + // consistent at that point. + event.error = err; + this.updatePendingEventStatus(room, event, EventStatus.NOT_SENT); + } catch (e) { + this.logger.error("Exception in error handler!", e); + } + if (err instanceof MatrixError) { + err.event = event; + } + throw err; } + } - if (event.isRedaction()) { - // Redactions do not support encryption in the spec at this time, - // whilst it mostly worked in some clients, it wasn't compliant. - return null; - } + private async encryptEventIfNeeded(event: MatrixEvent, room?: Room): Promise { + // If the room is unknown, we cannot encrypt for it + if (!room) return; - if (!room || !this.isRoomEncrypted(event.getRoomId()!)) { - return null; - } + if (!this.shouldEncryptEventForRoom(event, room)) return; if (!this.cryptoBackend && this.usingExternalCrypto) { // The client has opted to allow sending messages to encrypted - // rooms even if the room is encrypted, and we haven't setup + // rooms even if the room is encrypted, and we haven't set up // crypto. This is useful for users of matrix-org/pantalaimon - return null; + return; + } + + if (!this.cryptoBackend) { + throw new Error("This room is configured to use encryption, but your client does not support encryption."); + } + + this.updatePendingEventStatus(room, event, EventStatus.ENCRYPTING); + await this.cryptoBackend.encryptEvent(event, room); + } + + /** + * Determine whether a given event should be encrypted when we send it to the given room. + * + * This takes into account event type and room configuration. + */ + private shouldEncryptEventForRoom(event: MatrixEvent, room: Room): boolean { + if (event.isEncrypted()) { + // this event has already been encrypted; this happens if the + // encryption step succeeded, but the send step failed on the first + // attempt. + return false; } if (event.getType() === EventType.Reaction) { @@ -4852,14 +4865,23 @@ export class MatrixClient extends TypedEventEmitter Date: Fri, 26 Jan 2024 12:41:18 +0000 Subject: [PATCH 016/595] Element-R: check persistent room list for encryption config (#4035) * crypto.spec: make `keyResponder` a local var it is never used between functions, so making it external was confusing * Persist encryption state to the rust room list. * `MatrixClient.shouldEncryptEventForRoom`: fix for rust crypto Previously, we were not bothering to ask the Rust Crypto stack if it thought we should be encrypting for a given room. This adds a new method to `CryptoApi`, wires it up for legacy and Rust crypto, and calls it. * Tests for persistent room list --- spec/integ/crypto/crypto.spec.ts | 194 +++++++++++++++++++++++++++++-- spec/test-utils/mockEndpoints.ts | 20 +++- spec/unit/matrix-client.spec.ts | 2 +- src/client.ts | 12 +- src/crypto-api.ts | 14 ++- src/crypto/index.ts | 7 ++ src/rust-crypto/RoomEncryptor.ts | 3 +- src/rust-crypto/rust-crypto.ts | 30 +++++ 8 files changed, 262 insertions(+), 20 deletions(-) diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index e819cb7cb18..ed3af3b8e8e 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -29,6 +29,7 @@ import { getSyncResponse, InitCrypto, mkEventCustom, + mkMembershipCustom, syncPromise, } from "../../test-utils/test-utils"; import * as testData from "../../test-utils/test-data"; @@ -38,6 +39,7 @@ import { BOB_TEST_USER_ID, SIGNED_CROSS_SIGNING_KEYS_DATA, SIGNED_TEST_DEVICE_DATA, + TEST_ROOM_ID, TEST_ROOM_ID as ROOM_ID, TEST_USER_ID, } from "../../test-utils/test-data"; @@ -230,9 +232,6 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, /** an object which intercepts `/keys/upload` requests from {@link #aliceClient} to catch the uploaded keys */ let keyReceiver: E2EKeyReceiver; - /** an object which intercepts `/keys/query` requests on the test homeserver */ - let keyResponder: E2EKeyResponder; - /** an object which intercepts `/sync` requests from {@link #aliceClient} */ let syncResponder: ISyncResponder; @@ -368,6 +367,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, accessToken: "akjgkrgjs", deviceId: "xzcvb", cryptoCallbacks: createCryptoCallbacks(), + logger: logger.getChild("aliceClient"), }); /* set up listeners for /keys/upload and /sync */ @@ -701,7 +701,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, it("prepareToEncrypt", async () => { const homeserverUrl = aliceClient.getHomeserverUrl(); - keyResponder = new E2EKeyResponder(homeserverUrl); + const keyResponder = new E2EKeyResponder(homeserverUrl); keyResponder.addKeyReceiver("@alice:localhost", keyReceiver); const testDeviceKeys = getTestOlmAccountKeys(testOlmAccount, "@bob:xyz", "DEVICE_ID"); @@ -732,7 +732,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, it("Alice sends a megolm message with GlobalErrorOnUnknownDevices=false", async () => { aliceClient.setGlobalErrorOnUnknownDevices(false); const homeserverUrl = aliceClient.getHomeserverUrl(); - keyResponder = new E2EKeyResponder(homeserverUrl); + const keyResponder = new E2EKeyResponder(homeserverUrl); keyResponder.addKeyReceiver("@alice:localhost", keyReceiver); const testDeviceKeys = getTestOlmAccountKeys(testOlmAccount, "@bob:xyz", "DEVICE_ID"); @@ -760,7 +760,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, it("We should start a new megolm session after forceDiscardSession", async () => { aliceClient.setGlobalErrorOnUnknownDevices(false); const homeserverUrl = aliceClient.getHomeserverUrl(); - keyResponder = new E2EKeyResponder(homeserverUrl); + const keyResponder = new E2EKeyResponder(homeserverUrl); keyResponder.addKeyReceiver("@alice:localhost", keyReceiver); const testDeviceKeys = getTestOlmAccountKeys(testOlmAccount, "@bob:xyz", "DEVICE_ID"); @@ -2070,7 +2070,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, it("Sending an event initiates a member list sync", async () => { const homeserverUrl = aliceClient.getHomeserverUrl(); - keyResponder = new E2EKeyResponder(homeserverUrl); + const keyResponder = new E2EKeyResponder(homeserverUrl); keyResponder.addKeyReceiver("@alice:localhost", keyReceiver); const testDeviceKeys = getTestOlmAccountKeys(testOlmAccount, "@bob:xyz", "DEVICE_ID"); @@ -2093,7 +2093,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, it("loading the membership list inhibits a later load", async () => { const homeserverUrl = aliceClient.getHomeserverUrl(); - keyResponder = new E2EKeyResponder(homeserverUrl); + const keyResponder = new E2EKeyResponder(homeserverUrl); keyResponder.addKeyReceiver("@alice:localhost", keyReceiver); const testDeviceKeys = getTestOlmAccountKeys(testOlmAccount, "@bob:xyz", "DEVICE_ID"); @@ -2903,7 +2903,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, // anything that we don't have a specific matcher for silently returns a 404 fetchMock.catch(404); - keyResponder = new E2EKeyResponder(aliceClient.getHomeserverUrl()); + const keyResponder = new E2EKeyResponder(aliceClient.getHomeserverUrl()); keyResponder.addCrossSigningData(SIGNED_CROSS_SIGNING_KEYS_DATA); keyResponder.addDeviceKeys(SIGNED_TEST_DEVICE_DATA); keyResponder.addKeyReceiver(BOB_TEST_USER_ID, keyReceiver); @@ -2939,4 +2939,180 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, expect(hasCrossSigningKeysForUser).toBe(false); }); }); + + /** Guards against downgrade attacks from servers hiding or manipulating the crypto settings. */ + describe("Persistent encryption settings", () => { + let persistentStoreClient: MatrixClient; + let client2: MatrixClient; + + beforeEach(async () => { + const homeserverurl = "https://alice-server.com"; + const userId = "@alice:localhost"; + + const keyResponder = new E2EKeyResponder(homeserverurl); + keyResponder.addKeyReceiver(userId, keyReceiver); + + // For legacy crypto, these tests only work properly with a proper (indexeddb-based) CryptoStore, so + // rather than using the existing `aliceClient`, create a new client. Once we drop legacy crypto, we can + // just use `aliceClient` here. + persistentStoreClient = await makeNewClient(homeserverurl, userId, "persistentStoreClient"); + await persistentStoreClient.startClient({}); + }); + + afterEach(async () => { + persistentStoreClient.stopClient(); + client2?.stopClient(); + }); + + test("Sending a message in a room where the server is hiding the state event does not send a plaintext event", async () => { + // Alice is in an encrypted room + const encryptionState = mkEncryptionEvent({ algorithm: "m.megolm.v1.aes-sha2" }); + syncResponder.sendOrQueueSyncResponse(getSyncResponseWithState([encryptionState])); + await syncPromise(persistentStoreClient); + + // Send a message, and expect to get an `m.room.encrypted` event. + await Promise.all([persistentStoreClient.sendTextMessage(ROOM_ID, "test"), expectEncryptedSendMessage()]); + + // We now replace the client, and allow the new one to resync, *without* the encryption event. + client2 = await replaceClient(persistentStoreClient); + syncResponder.sendOrQueueSyncResponse(getSyncResponseWithState([])); + await client2.startClient({}); + await syncPromise(client2); + logger.log(client2.getUserId() + ": restarted"); + + await expectSendMessageToFail(client2); + }); + + test("Changes to the rotation period should be ignored", async () => { + // Alice is in an encrypted room, where the rotation period is set to 2 messages + const encryptionState = mkEncryptionEvent({ algorithm: "m.megolm.v1.aes-sha2", rotation_period_msgs: 2 }); + syncResponder.sendOrQueueSyncResponse(getSyncResponseWithState([encryptionState])); + await syncPromise(persistentStoreClient); + + // Send a message, and expect to get an `m.room.encrypted` event. + const [, msg1Content] = await Promise.all([ + persistentStoreClient.sendTextMessage(ROOM_ID, "test1"), + expectEncryptedSendMessage(), + ]); + + // Replace the state with one which bumps the rotation period. This should be ignored, though it's not + // clear that is correct behaviour (see https://github.com/element-hq/element-meta/issues/69) + const encryptionState2 = mkEncryptionEvent({ + algorithm: "m.megolm.v1.aes-sha2", + rotation_period_msgs: 100, + }); + syncResponder.sendOrQueueSyncResponse({ + next_batch: "1", + rooms: { join: { [TEST_ROOM_ID]: { timeline: { events: [encryptionState2], prev_batch: "" } } } }, + }); + await syncPromise(persistentStoreClient); + + // Send two more messages. The first should use the same megolm session as the first; the second should + // use a different one. + const [, msg2Content] = await Promise.all([ + persistentStoreClient.sendTextMessage(ROOM_ID, "test2"), + expectEncryptedSendMessage(), + ]); + expect(msg2Content.session_id).toEqual(msg1Content.session_id); + const [, msg3Content] = await Promise.all([ + persistentStoreClient.sendTextMessage(ROOM_ID, "test3"), + expectEncryptedSendMessage(), + ]); + expect(msg3Content.session_id).not.toEqual(msg1Content.session_id); + }); + + test("Changes to the rotation period should be ignored after a client restart", async () => { + // Alice is in an encrypted room, where the rotation period is set to 2 messages + const encryptionState = mkEncryptionEvent({ algorithm: "m.megolm.v1.aes-sha2", rotation_period_msgs: 2 }); + syncResponder.sendOrQueueSyncResponse(getSyncResponseWithState([encryptionState])); + await syncPromise(persistentStoreClient); + + // Send a message, and expect to get an `m.room.encrypted` event. + await Promise.all([persistentStoreClient.sendTextMessage(ROOM_ID, "test1"), expectEncryptedSendMessage()]); + + // We now replace the client, and allow the new one to resync with a *different* encryption event. + client2 = await replaceClient(persistentStoreClient); + const encryptionState2 = mkEncryptionEvent({ + algorithm: "m.megolm.v1.aes-sha2", + rotation_period_msgs: 100, + }); + syncResponder.sendOrQueueSyncResponse(getSyncResponseWithState([encryptionState2])); + await client2.startClient({}); + await syncPromise(client2); + logger.log(client2.getUserId() + ": restarted"); + + // Now send another message, which should (for now) be rejected. + await expectSendMessageToFail(client2); + }); + + /** Shut down `oldClient`, and build a new MatrixClient for the same user. */ + async function replaceClient(oldClient: MatrixClient) { + oldClient.stopClient(); + syncResponder.sendOrQueueSyncResponse({}); // flush pending request from old client + return makeNewClient(oldClient.getHomeserverUrl(), oldClient.getSafeUserId(), "client2"); + } + + async function makeNewClient( + homeserverUrl: string, + userId: string, + loggerPrefix: string, + ): Promise { + const client = createClient({ + baseUrl: homeserverUrl, + userId: userId, + accessToken: "akjgkrgjs", + deviceId: "xzcvb", + cryptoCallbacks: createCryptoCallbacks(), + logger: logger.getChild(loggerPrefix), + + // For legacy crypto, these tests only work with a proper persistent cryptoStore. + cryptoStore: new IndexedDBCryptoStore(indexedDB, "test"), + }); + await initCrypto(client); + mockInitialApiRequests(client.getHomeserverUrl()); + return client; + } + + function mkEncryptionEvent(content: Object) { + return mkEventCustom({ + sender: persistentStoreClient.getSafeUserId(), + type: "m.room.encryption", + state_key: "", + content: content, + }); + } + + /** Sync response which includes `TEST_ROOM_ID`, where alice is a member + * + * @param stateEvents - Additional state events for the test room + */ + function getSyncResponseWithState(stateEvents: Array) { + const roomResponse = { + state: { + events: [ + mkMembershipCustom({ membership: "join", sender: persistentStoreClient.getSafeUserId() }), + ...stateEvents, + ], + }, + timeline: { + events: [], + prev_batch: "", + }, + }; + + return { + next_batch: "1", + rooms: { join: { [TEST_ROOM_ID]: roomResponse } }, + }; + } + + /** Send a message with the given client, and check that it is not sent in plaintext */ + async function expectSendMessageToFail(aliceClient2: MatrixClient) { + // The precise failure mode here is somewhat up for debate (https://github.com/element-hq/element-meta/issues/69). + // For now, the attempt to send is rejected with an exception. The text is different between old and new stacks. + await expect(aliceClient2.sendTextMessage(ROOM_ID, "test")).rejects.toThrow( + /unconfigured room !room:id|Room !room:id was previously configured to use encryption/, + ); + } + }); }); diff --git a/spec/test-utils/mockEndpoints.ts b/spec/test-utils/mockEndpoints.ts index 22dda0b88b2..988d6f13b6c 100644 --- a/spec/test-utils/mockEndpoints.ts +++ b/spec/test-utils/mockEndpoints.ts @@ -24,11 +24,21 @@ import { KeyBackupInfo } from "../../src/crypto-api"; * @param homeserverUrl - the homeserver url for the client under test */ export function mockInitialApiRequests(homeserverUrl: string) { - fetchMock.getOnce(new URL("/_matrix/client/versions", homeserverUrl).toString(), { versions: ["v1.1"] }); - fetchMock.getOnce(new URL("/_matrix/client/v3/pushrules/", homeserverUrl).toString(), {}); - fetchMock.postOnce(new URL("/_matrix/client/v3/user/%40alice%3Alocalhost/filter", homeserverUrl).toString(), { - filter_id: "fid", - }); + fetchMock.getOnce( + new URL("/_matrix/client/versions", homeserverUrl).toString(), + { versions: ["v1.1"] }, + { overwriteRoutes: true }, + ); + fetchMock.getOnce( + new URL("/_matrix/client/v3/pushrules/", homeserverUrl).toString(), + {}, + { overwriteRoutes: true }, + ); + fetchMock.postOnce( + new URL("/_matrix/client/v3/user/%40alice%3Alocalhost/filter", homeserverUrl).toString(), + { filter_id: "fid" }, + { overwriteRoutes: true }, + ); } /** diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index f1382bca563..f9fab0864ba 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -1469,8 +1469,8 @@ describe("MatrixClient", function () { expect(getRoomId).toEqual(roomId); return mockRoom; }; - mockCrypto = { + isEncryptionEnabledInRoom: jest.fn().mockResolvedValue(true), encryptEvent: jest.fn(), stop: jest.fn(), } as unknown as Mocked; diff --git a/src/client.ts b/src/client.ts index 78011c1b83c..23bf2af75fd 100644 --- a/src/client.ts +++ b/src/client.ts @@ -3251,6 +3251,9 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -3263,6 +3266,9 @@ export class MatrixClient extends TypedEventEmitter { if (event.isEncrypted()) { // this event has already been encrypted; this happens if the // encryption step succeeded, but the send step failed on the first @@ -4878,7 +4884,7 @@ export class MatrixClient extends TypedEventEmitter; + /** + * Check if we believe the given room to be encrypted. + * + * This method returns true if the room has been configured with encryption. The setting is persistent, so that + * even if the encryption event is removed from the room state, it still returns true. This helps to guard against + * a downgrade attack wherein a server admin attempts to remove encryption. + * + * @returns `true` if the room with the supplied ID is encrypted. `false` if the room is not encrypted, or is unknown to + * us. + */ + isEncryptionEnabledInRoom(roomId: string): Promise; + /** * Perform any background tasks that can be done before a message is ready to * send, in order to speed up sending of the message. @@ -189,7 +201,7 @@ export interface CryptoApi { * Cross-signing a device indicates, to our other devices and to other users, that we have verified that it really * belongs to us. * - * Requires that cross-signing has been set up on this device (normally by calling {@link bootstrapCrossSigning}. + * Requires that cross-signing has been set up on this device (normally by calling {@link bootstrapCrossSigning}). * * *Note*: Do not call this unless you have verified, somehow, that the device is genuine! * diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 16e37605b94..1a0e4f43dae 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -4273,6 +4273,13 @@ export class Crypto extends TypedEventEmitter { + return this.isRoomEncrypted(roomId); + } + /** * @returns information about the encryption on the room with the supplied * ID, or null if the room is not encrypted or unknown to us. diff --git a/src/rust-crypto/RoomEncryptor.ts b/src/rust-crypto/RoomEncryptor.ts index 199db95ca35..2de00f19b34 100644 --- a/src/rust-crypto/RoomEncryptor.ts +++ b/src/rust-crypto/RoomEncryptor.ts @@ -88,7 +88,8 @@ export class RoomEncryptor { */ public onCryptoEvent(config: IContent): void { if (JSON.stringify(this.encryptionSettings) != JSON.stringify(config)) { - this.prefixedLogger.error(`Ignoring m.room.encryption event which requests a change of config`); + // This should currently be unreachable, since the Rust SDK will reject any attempts to change config. + throw new Error("Cannot reconfigure an active RoomEncryptor"); } } diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 239fae8a833..27277f57c9e 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -311,6 +311,16 @@ export class RustCrypto extends TypedEventEmitter { + const roomSettings: RustSdkCryptoJs.RoomSettings | undefined = await this.olmMachine.getRoomSettings( + new RustSdkCryptoJs.RoomId(roomId), + ); + return Boolean(roomSettings?.algorithm); + } + /** * Implementation of {@link CryptoApi#getOwnDeviceKeys}. */ @@ -1285,7 +1295,27 @@ export class RustCrypto extends TypedEventEmitter { const config = event.getContent(); + const settings = new RustSdkCryptoJs.RoomSettings(); + + if (config.algorithm === "m.megolm.v1.aes-sha2") { + settings.algorithm = RustSdkCryptoJs.EncryptionAlgorithm.MegolmV1AesSha2; + } else { + // Among other situations, this happens if the crypto state event is redacted. + this.logger.warn(`Room ${room.roomId}: ignoring crypto event with invalid algorithm ${config.algorithm}`); + return; + } + + try { + settings.sessionRotationPeriodMs = config.rotation_period_ms; + settings.sessionRotationPeriodMessages = config.rotation_period_msgs; + await this.olmMachine.setRoomSettings(new RustSdkCryptoJs.RoomId(room.roomId), settings); + } catch (e) { + this.logger.warn(`Room ${room.roomId}: ignoring crypto event which caused error: ${e}`); + return; + } + // If we got this far, the SDK found the event acceptable. + // We need to either create or update the active RoomEncryptor. const existingEncryptor = this.roomEncryptors[room.roomId]; if (existingEncryptor) { existingEncryptor.onCryptoEvent(config); From 2d1308c733e80b5555677044abd97d48d38ae56f Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Fri, 26 Jan 2024 14:40:45 +0100 Subject: [PATCH 017/595] Make `timeline` a getter (#4022) --- spec/unit/room.spec.ts | 8 ++++---- src/models/read-receipt.ts | 2 +- src/models/room.ts | 21 +++++++++++---------- src/models/thread.ts | 16 ++++++++++------ 4 files changed, 26 insertions(+), 21 deletions(-) diff --git a/spec/unit/room.spec.ts b/spec/unit/room.spec.ts index 11eaf6980d5..4d64e4df54d 100644 --- a/spec/unit/room.spec.ts +++ b/spec/unit/room.spec.ts @@ -1460,7 +1460,7 @@ describe("Room", function () { it("should reset the unread count when our non-synthetic receipt points to the latest event", () => { // Given a room with 2 events, and an unread count set. room.client.isInitialSyncComplete = jest.fn().mockReturnValue(true); - room.timeline = [event1, event2]; + jest.spyOn(room, "timeline", "get").mockReturnValue([event1, event2]); room.setUnread(NotificationCountType.Total, 45); room.setUnread(NotificationCountType.Highlight, 57); // Sanity check: @@ -1479,7 +1479,7 @@ describe("Room", function () { it("should not reset the unread count when someone else's receipt points to the latest event", () => { // Given a room with 2 events, and an unread count set. room.client.isInitialSyncComplete = jest.fn().mockReturnValue(true); - room.timeline = [event1, event2]; + jest.spyOn(room, "timeline", "get").mockReturnValue([event1, event2]); room.setUnread(NotificationCountType.Total, 45); room.setUnread(NotificationCountType.Highlight, 57); // Sanity check: @@ -1498,7 +1498,7 @@ describe("Room", function () { it("should not reset the unread count when our non-synthetic receipt points to an earlier event", () => { // Given a room with 2 events, and an unread count set. room.client.isInitialSyncComplete = jest.fn().mockReturnValue(true); - room.timeline = [event1, event2]; + jest.spyOn(room, "timeline", "get").mockReturnValue([event1, event2]); room.setUnread(NotificationCountType.Total, 45); room.setUnread(NotificationCountType.Highlight, 57); // Sanity check: @@ -1517,7 +1517,7 @@ describe("Room", function () { it("should not reset the unread count when our a synthetic receipt points to the latest event", () => { // Given a room with 2 events, and an unread count set. room.client.isInitialSyncComplete = jest.fn().mockReturnValue(true); - room.timeline = [event1, event2]; + jest.spyOn(room, "timeline", "get").mockReturnValue([event1, event2]); room.setUnread(NotificationCountType.Total, 45); room.setUnread(NotificationCountType.Highlight, 57); // Sanity check: diff --git a/src/models/read-receipt.ts b/src/models/read-receipt.ts index 08f0f4909a1..8dd743e7c40 100644 --- a/src/models/read-receipt.ts +++ b/src/models/read-receipt.ts @@ -79,7 +79,7 @@ export abstract class ReadReceipt< private receiptCacheByEventId: ReceiptCache = new Map(); public abstract getUnfilteredTimelineSet(): EventTimelineSet; - public abstract timeline: MatrixEvent[]; + public abstract get timeline(): MatrixEvent[]; /** * Gets the latest receipt for a given user in the room diff --git a/src/models/room.ts b/src/models/room.ts index f2b737334a7..67aea690756 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -381,13 +381,6 @@ export class Room extends ReadReceipt { * The room summary. */ public summary: RoomSummary | null = null; - /** - * The live event timeline for this room, with the oldest event at index 0. - * - * @deprecated Present for backwards compatibility. - * Use getLiveTimeline().getEvents() instead - */ - public timeline!: MatrixEvent[]; /** * oldState The state of the room at the time of the oldest event in the live timeline. * @@ -793,6 +786,16 @@ export class Room extends ReadReceipt { return this.getUnfilteredTimelineSet().getLiveTimeline(); } + /** + * The live event timeline for this room, with the oldest event at index 0. + * + * @deprecated Present for backwards compatibility. + * Use getLiveTimeline().getEvents() instead + */ + public get timeline(): MatrixEvent[] { + return this.getLiveTimeline().getEvents(); + } + /** * Get the timestamp of the last message in the room * @@ -1221,11 +1224,9 @@ export class Room extends ReadReceipt { const previousOldState = this.oldState; const previousCurrentState = this.currentState; - // maintain this.timeline as a reference to the live timeline, - // and this.oldState and this.currentState as references to the + // maintain this.oldState and this.currentState as references to the // state at the start and end of that timeline. These are more // for backwards-compatibility than anything else. - this.timeline = this.getLiveTimeline().getEvents(); this.oldState = this.getLiveTimeline().getState(EventTimeline.BACKWARDS)!; this.currentState = this.getLiveTimeline().getState(EventTimeline.FORWARDS)!; diff --git a/src/models/thread.ts b/src/models/thread.ts index 96cea941b3c..32fd0621c28 100644 --- a/src/models/thread.ts +++ b/src/models/thread.ts @@ -84,7 +84,6 @@ export class Thread extends ReadReceipt Date: Fri, 26 Jan 2024 11:46:35 -0500 Subject: [PATCH 018/595] ElementR: report invalid keys rather than failing to restore from backup (#4006) * rust-crypto: allow reporting failures when restoring keys * add test and catch more invalid keys * remove checks for room_id and session_id as they are guaranteed to be set * remove obsolete comment --- spec/unit/rust-crypto/rust-crypto.spec.ts | 30 ++++++++++++++++++++++- src/rust-crypto/backup.ts | 21 +++++++++------- 2 files changed, 41 insertions(+), 10 deletions(-) diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 52916b43642..fe8366cc133 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -46,7 +46,7 @@ import { } from "../../../src"; import { mkEvent } from "../../test-utils/test-utils"; import { CryptoBackend } from "../../../src/common-crypto/CryptoBackend"; -import { IEventDecryptionResult } from "../../../src/@types/crypto"; +import { IEventDecryptionResult, IMegolmSessionData } from "../../../src/@types/crypto"; import { OutgoingRequestProcessor } from "../../../src/rust-crypto/OutgoingRequestProcessor"; import { AccountDataClient, @@ -1260,6 +1260,34 @@ describe("RustCrypto", () => { }, }); }); + + it("ignores invalid keys when restoring from backup", async () => { + const rustCrypto = await makeTestRustCrypto(); + const olmMachine: OlmMachine = rustCrypto["olmMachine"]; + + await olmMachine.enableBackupV1( + (testData.SIGNED_BACKUP_DATA.auth_data as Curve25519AuthData).public_key, + testData.SIGNED_BACKUP_DATA.version!, + ); + + const backup = Array.from(testData.MEGOLM_SESSION_DATA_ARRAY); + // in addition to correct keys, we restore an invalid key + backup.push({ room_id: "!roomid", session_id: "sessionid" } as IMegolmSessionData); + const progressCallback = jest.fn(); + await rustCrypto.importBackedUpRoomKeys(backup, { progressCallback }); + expect(progressCallback).toHaveBeenCalledWith({ + total: 3, + successes: 0, + stage: "load_keys", + failures: 1, + }); + expect(progressCallback).toHaveBeenCalledWith({ + total: 3, + successes: 1, + stage: "load_keys", + failures: 1, + }); + }); }); }); diff --git a/src/rust-crypto/backup.ts b/src/rust-crypto/backup.ts index 21964eb3afb..d7ca7d85a42 100644 --- a/src/rust-crypto/backup.ts +++ b/src/rust-crypto/backup.ts @@ -212,15 +212,18 @@ export class RustBackupManager extends TypedEventEmitter { - const importOpt: ImportRoomKeyProgressData = { - total: Number(total), - successes: Number(progress), - stage: "load_keys", - failures: 0, - }; - opts?.progressCallback?.(importOpt); - }); + await this.olmMachine.importBackedUpRoomKeys( + keysByRoom, + (progress: BigInt, total: BigInt, failures: BigInt): void => { + const importOpt: ImportRoomKeyProgressData = { + total: Number(total), + successes: Number(progress), + stage: "load_keys", + failures: Number(failures), + }; + opts?.progressCallback?.(importOpt); + }, + ); } private keyBackupCheckInProgress: Promise | null = null; From 5967c670d81378ab67a4b710ae3798810ce63e2d Mon Sep 17 00:00:00 2001 From: Hubert Chathi Date: Fri, 26 Jan 2024 12:06:01 -0500 Subject: [PATCH 019/595] Element R: Add test that requests are encoded properly (#4033) * add test that requests are encoded properly * fix variable name --- spec/unit/rust-crypto/rust-crypto.spec.ts | 52 +++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index fe8366cc133..43c40123b4b 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -696,6 +696,58 @@ describe("RustCrypto", () => { await awaitCallToMakeOutgoingRequest(); expect(olmMachine.outgoingRequests).toHaveBeenCalledTimes(2); }); + + it("should encode outgoing requests properly", async () => { + // we need a real OlmMachine, so replace the one created by beforeEach + rustCrypto = await makeTestRustCrypto(); + const olmMachine: OlmMachine = rustCrypto["olmMachine"]; + + const outgoingRequestProcessor = {} as unknown as OutgoingRequestProcessor; + rustCrypto["outgoingRequestProcessor"] = outgoingRequestProcessor; + const outgoingRequestsManager = new OutgoingRequestsManager(logger, olmMachine, outgoingRequestProcessor); + rustCrypto["outgoingRequestsManager"] = outgoingRequestsManager; + + // The second time we do a /keys/upload, the `device_keys` property + // should be absent from the request body + // cf. https://github.com/matrix-org/matrix-rust-sdk-crypto-wasm/issues/57 + // + // On the first upload, we pretend that there are no OTKs, so it will + // try to upload more keys + let keysUploadCount = 0; + let deviceKeys: object; + let deviceKeysAbsent = false; + outgoingRequestProcessor.makeOutgoingRequest = jest.fn(async (request, uiaCallback?) => { + let resp: any = {}; + if (request instanceof RustSdkCryptoJs.KeysUploadRequest) { + if (keysUploadCount == 0) { + deviceKeys = JSON.parse(request.body).device_keys; + resp = { one_time_key_counts: { signed_curve25519: 0 } }; + } else { + deviceKeysAbsent = !("device_keys" in JSON.parse(request.body)); + resp = { one_time_key_counts: { signed_curve25519: 50 } }; + } + keysUploadCount++; + } else if (request instanceof RustSdkCryptoJs.KeysQueryRequest) { + resp = { + device_keys: { + [TEST_USER]: { + [TEST_DEVICE_ID]: deviceKeys, + }, + }, + }; + } else if (request instanceof RustSdkCryptoJs.UploadSigningKeysRequest) { + // SigningKeysUploadRequest does not implement OutgoingRequest and does not need to be marked as sent. + return; + } + if (request.id) { + olmMachine.markRequestAsSent(request.id, request.type, JSON.stringify(resp)); + } + }); + await outgoingRequestsManager.doProcessOutgoingRequests(); + await outgoingRequestsManager.doProcessOutgoingRequests(); + + expect(deviceKeysAbsent).toBe(true); + }); }); describe(".getEventEncryptionInfo", () => { From 7cf59d64e6fbb98dbda27183293816d0539139c8 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 26 Jan 2024 17:24:33 +0000 Subject: [PATCH 020/595] Element-R: support for migration of the room list from legacy crypto (#4036) * Support for migration of the room list from legacy crypto * fix migration for empty legacy store --- spec/integ/crypto/rust-crypto.spec.ts | 2 + src/crypto/store/base.ts | 3 ++ src/rust-crypto/index.ts | 13 ++++- src/rust-crypto/libolm_migration.ts | 76 +++++++++++++++++++++++++-- 4 files changed, 90 insertions(+), 4 deletions(-) diff --git a/spec/integ/crypto/rust-crypto.spec.ts b/spec/integ/crypto/rust-crypto.spec.ts index 506f66e45c5..5d5a8481943 100644 --- a/spec/integ/crypto/rust-crypto.spec.ts +++ b/spec/integ/crypto/rust-crypto.spec.ts @@ -136,6 +136,8 @@ describe("MatrixClient.initRustCrypto", () => { expect(await matrixClient.getCrypto()!.getActiveSessionBackupVersion()).toEqual("7"); + expect(await matrixClient.getCrypto()!.isEncryptionEnabledInRoom("!CWLUCoEWXSFyTCOtfL:matrix.org")).toBe(true); + // check the progress callback expect(progressListener.mock.calls.length).toBeGreaterThan(50); diff --git a/src/crypto/store/base.ts b/src/crypto/store/base.ts index b7003853b3a..2e01d681549 100644 --- a/src/crypto/store/base.ts +++ b/src/crypto/store/base.ts @@ -325,6 +325,9 @@ export enum MigrationState { /** OLM_SESSIONS_MIGRATED, and in addition, we have migrated all the Megolm sessions. */ MEGOLM_SESSIONS_MIGRATED, + + /** MEGOLM_SESSIONS_MIGRATED, and in addition, we have migrated all the room settings. */ + ROOM_SETTINGS_MIGRATED, } /** diff --git a/src/rust-crypto/index.ts b/src/rust-crypto/index.ts index 63c65317b01..aba3a1d9980 100644 --- a/src/rust-crypto/index.ts +++ b/src/rust-crypto/index.ts @@ -23,7 +23,7 @@ import { ServerSideSecretStorage } from "../secret-storage"; import { ICryptoCallbacks } from "../crypto"; import { Logger } from "../logger"; import { CryptoStore } from "../crypto/store/base"; -import { migrateFromLegacyCrypto } from "./libolm_migration"; +import { migrateFromLegacyCrypto, migrateRoomSettingsFromLegacyCrypto } from "./libolm_migration"; /** * Create a new `RustCrypto` implementation @@ -112,6 +112,7 @@ export async function initRustCrypto(args: { args.secretStorage, args.cryptoCallbacks, storeHandle, + args.legacyCryptoStore, ); storeHandle.free(); @@ -128,6 +129,7 @@ async function initOlmMachine( secretStorage: ServerSideSecretStorage, cryptoCallbacks: ICryptoCallbacks, storeHandle: StoreHandle, + legacyCryptoStore?: CryptoStore, ): Promise { logger.debug("Init OlmMachine"); @@ -137,6 +139,15 @@ async function initOlmMachine( storeHandle, ); + // A final migration step, now that we have an OlmMachine. + if (legacyCryptoStore) { + await migrateRoomSettingsFromLegacyCrypto({ + logger, + legacyStore: legacyCryptoStore, + olmMachine, + }); + } + // Disable room key requests, per https://github.com/vector-im/element-web/issues/26524. olmMachine.roomKeyRequestsEnabled = false; diff --git a/src/rust-crypto/libolm_migration.ts b/src/rust-crypto/libolm_migration.ts index 8a34aac4b43..dc965381017 100644 --- a/src/rust-crypto/libolm_migration.ts +++ b/src/rust-crypto/libolm_migration.ts @@ -1,5 +1,5 @@ /* -Copyright 2023 The Matrix.org Foundation C.I.C. +Copyright 2023-2024 The Matrix.org Foundation C.I.C. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -22,10 +22,14 @@ import { IndexedDBCryptoStore } from "../crypto/store/indexeddb-crypto-store"; import { decryptAES, IEncryptedPayload } from "../crypto/aes"; import { IHttpOpts, MatrixHttpApi } from "../http-api"; import { requestKeyBackupVersion } from "./backup"; +import { IRoomEncryption } from "../crypto/RoomList"; /** * Determine if any data needs migrating from the legacy store, and do so. * + * This migrates the base account data, and olm and megolm sessions. It does *not* migrate the room list, which should + * happen after an `OlmMachine` is created, via {@link migrateRoomSettingsFromLegacyCrypto}. + * * @param args - Arguments object. */ export async function migrateFromLegacyCrypto(args: { @@ -76,8 +80,8 @@ export async function migrateFromLegacyCrypto(args: { await legacyStore.startup(); let migrationState = await legacyStore.getMigrationState(); - if (migrationState === MigrationState.MEGOLM_SESSIONS_MIGRATED) { - // All migration is done. + if (migrationState >= MigrationState.MEGOLM_SESSIONS_MIGRATED) { + // All migration is done for now. The room list comes later, once we have an OlmMachine. return; } @@ -255,6 +259,72 @@ async function migrateMegolmSessions( } } +/** + * Determine if any room settings need migrating from the legacy store, and do so. + * + * @param args - Arguments object. + */ +export async function migrateRoomSettingsFromLegacyCrypto({ + logger, + legacyStore, + olmMachine, +}: { + /** A `Logger` instance that will be used for debug output. */ + logger: Logger; + + /** Store to migrate data from. */ + legacyStore: CryptoStore; + + /** OlmMachine to store the new data on. */ + olmMachine: RustSdkCryptoJs.OlmMachine; +}): Promise { + if (!(await legacyStore.containsData())) { + // This store was never used. Nothing to migrate. + return; + } + + const migrationState = await legacyStore.getMigrationState(); + + if (migrationState >= MigrationState.ROOM_SETTINGS_MIGRATED) { + // We've already migrated the room settings. + return; + } + + let rooms: Record = {}; + + await legacyStore.doTxn("readwrite", [IndexedDBCryptoStore.STORE_ROOMS], (txn) => { + legacyStore.getEndToEndRooms(txn, (result) => { + rooms = result; + }); + }); + + logger.debug(`Migrating ${Object.keys(rooms).length} sets of room settings`); + for (const [roomId, legacySettings] of Object.entries(rooms)) { + try { + const rustSettings = new RustSdkCryptoJs.RoomSettings(); + + if (legacySettings.algorithm !== "m.megolm.v1.aes-sha2") { + logger.warn(`Room ${roomId}: ignoring room with invalid algorithm ${legacySettings.algorithm}`); + continue; + } + rustSettings.algorithm = RustSdkCryptoJs.EncryptionAlgorithm.MegolmV1AesSha2; + rustSettings.sessionRotationPeriodMs = legacySettings.rotation_period_ms; + rustSettings.sessionRotationPeriodMessages = legacySettings.rotation_period_msgs; + await olmMachine.setRoomSettings(new RustSdkCryptoJs.RoomId(roomId), rustSettings); + + // We don't attempt to clear out the settings from the old store, or record where we've gotten up to, + // which means that if the app gets restarted while we're in the middle of this migration, we'll start + // again from scratch. So be it. Given that legacy crypto loads the whole room list into memory on startup + // anyway, we know it can't be that big. + } catch (e) { + logger.warn(`Room ${roomId}: ignoring settings ${JSON.stringify(legacySettings)} which caused error ${e}`); + } + } + + logger.debug(`Completed room settings migration`); + await legacyStore.setMigrationState(MigrationState.ROOM_SETTINGS_MIGRATED); +} + async function getAndDecryptCachedSecretKey( legacyStore: CryptoStore, legacyPickleKey: Uint8Array, From 99600e87f193508ad56325baf2bb134110f3905a Mon Sep 17 00:00:00 2001 From: Timo <16718859+toger5@users.noreply.github.com> Date: Mon, 29 Jan 2024 15:46:02 +0100 Subject: [PATCH 021/595] Add expire_ts compatibility to matrixRTC (#4032) * add expire_ts compatibility to matrixRTC Signed-off-by: Timo K * add expire_ts Signed-off-by: Timo K * rename expire_ts -> expires_ts Signed-off-by: Timo K * allow events without `expires` Signed-off-by: Timo K * fix test for expires_ts Signed-off-by: Timo K * comment clarification Signed-off-by: Timo K * add comment where one needs to use the origin_server_ts Signed-off-by: Timo K * add additional expires_ts tests Signed-off-by: Timo K * fix fake timer Signed-off-by: Timo K * change priority order to favor expires Signed-off-by: Timo K --------- Signed-off-by: Timo K --- spec/unit/matrixrtc/CallMembership.spec.ts | 27 ++++++++++++-- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 12 +++++-- src/matrixrtc/CallMembership.ts | 37 ++++++++++++++++---- src/matrixrtc/MatrixRTCSession.ts | 3 ++ 4 files changed, 67 insertions(+), 12 deletions(-) diff --git a/spec/unit/matrixrtc/CallMembership.spec.ts b/spec/unit/matrixrtc/CallMembership.spec.ts index b72d1c79877..3d259103cc5 100644 --- a/spec/unit/matrixrtc/CallMembership.spec.ts +++ b/spec/unit/matrixrtc/CallMembership.spec.ts @@ -34,9 +34,12 @@ function makeMockEvent(originTs = 0): MatrixEvent { } describe("CallMembership", () => { - it("rejects membership with no expiry", () => { + it("rejects membership with no expiry and no expires_ts", () => { expect(() => { - new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { expires: undefined })); + new CallMembership( + makeMockEvent(), + Object.assign({}, membershipTemplate, { expires: undefined, expires_ts: undefined }), + ); }).toThrow(); }); @@ -57,6 +60,16 @@ describe("CallMembership", () => { new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { scope: undefined })); }).toThrow(); }); + it("rejects with malformatted expires_ts", () => { + expect(() => { + new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { expires_ts: "string" })); + }).toThrow(); + }); + it("rejects with malformatted expires", () => { + expect(() => { + new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { expires: "string" })); + }).toThrow(); + }); it("uses event timestamp if no created_ts", () => { const membership = new CallMembership(makeMockEvent(12345), membershipTemplate); @@ -71,11 +84,19 @@ describe("CallMembership", () => { expect(membership.createdTs()).toEqual(67890); }); - it("computes absolute expiry time", () => { + it("computes absolute expiry time based on expires", () => { const membership = new CallMembership(makeMockEvent(1000), membershipTemplate); expect(membership.getAbsoluteExpiry()).toEqual(5000 + 1000); }); + it("computes absolute expiry time based on expires_ts", () => { + const membership = new CallMembership( + makeMockEvent(1000), + Object.assign({}, membershipTemplate, { expires: undefined, expires_ts: 6000 }), + ); + expect(membership.getAbsoluteExpiry()).toEqual(5000 + 1000); + }); + it("considers memberships unexpired if local age low enough", () => { const fakeEvent = makeMockEvent(1000); fakeEvent.getLocalAge = jest.fn().mockReturnValue(3000); diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index af71a90b06f..c1faa5ac0c3 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -214,8 +214,8 @@ describe("MatrixRTCSession", () => { }); it("sends a membership event when joining a call", () => { + jest.useFakeTimers(); sess!.joinRoomSession([mockFocus]); - expect(client.sendStateEvent).toHaveBeenCalledWith( mockRoom!.roomId, EventType.GroupCallMemberPrefix, @@ -227,6 +227,7 @@ describe("MatrixRTCSession", () => { call_id: "", device_id: "AAAAAAA", expires: 3600000, + expires_ts: Date.now() + 3600000, foci_active: [{ type: "mock" }], membershipID: expect.stringMatching(".*"), }, @@ -234,6 +235,7 @@ describe("MatrixRTCSession", () => { }, "@alice:example.org", ); + jest.useRealTimers(); }); it("does nothing if join called when already joined", () => { @@ -291,6 +293,7 @@ describe("MatrixRTCSession", () => { call_id: "", device_id: "AAAAAAA", expires: 3600000 * 2, + expires_ts: 1000 + 3600000 * 2, foci_active: [{ type: "mock" }], created_ts: 1000, membershipID: expect.stringMatching(".*"), @@ -510,7 +513,7 @@ describe("MatrixRTCSession", () => { }); }); - it("Does not emits if no membership changes", () => { + it("Does not emit if no membership changes", () => { const mockRoom = makeMockRoom([membershipTemplate]); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); @@ -591,6 +594,7 @@ describe("MatrixRTCSession", () => { call_id: "", device_id: "AAAAAAA", expires: 3600000, + expires_ts: Date.now() + 3600000, foci_active: [mockFocus], membershipID: expect.stringMatching(".*"), }, @@ -605,7 +609,7 @@ describe("MatrixRTCSession", () => { it("fills in created_ts for other memberships on update", () => { client.sendStateEvent = jest.fn(); - + jest.useFakeTimers(); const mockRoom = makeMockRoom([ Object.assign({}, membershipTemplate, { device_id: "OTHERDEVICE", @@ -635,6 +639,7 @@ describe("MatrixRTCSession", () => { call_id: "", device_id: "AAAAAAA", expires: 3600000, + expires_ts: Date.now() + 3600000, foci_active: [mockFocus], membershipID: expect.stringMatching(".*"), }, @@ -642,6 +647,7 @@ describe("MatrixRTCSession", () => { }, "@alice:example.org", ); + jest.useRealTimers(); }); it("collects keys from encryption events", () => { diff --git a/src/matrixrtc/CallMembership.ts b/src/matrixrtc/CallMembership.ts index 917e36f0da9..171751f1d1f 100644 --- a/src/matrixrtc/CallMembership.ts +++ b/src/matrixrtc/CallMembership.ts @@ -27,7 +27,8 @@ export interface CallMembershipData { scope: CallScope; device_id: string; created_ts?: number; - expires: number; + expires?: number; + expires_ts?: number; foci_active?: Focus[]; membershipID: string; } @@ -41,7 +42,20 @@ export class CallMembership { private parentEvent: MatrixEvent, private data: CallMembershipData, ) { - if (typeof data.expires !== "number") throw new Error("Malformed membership: expires must be numeric"); + if (!(data.expires || data.expires_ts)) { + throw new Error("Malformed membership: expires_ts or expires must be present"); + } + if (data.expires) { + if (typeof data.expires !== "number") { + throw new Error("Malformed membership: expires must be numeric"); + } + } + if (data.expires_ts) { + if (typeof data.expires_ts !== "number") { + throw new Error("Malformed membership: expires_ts must be numeric"); + } + } + if (typeof data.device_id !== "string") throw new Error("Malformed membership event: device_id must be string"); if (typeof data.call_id !== "string") throw new Error("Malformed membership event: call_id must be string"); if (typeof data.scope !== "string") throw new Error("Malformed membership event: scope must be string"); @@ -77,16 +91,27 @@ export class CallMembership { } public getAbsoluteExpiry(): number { - return this.createdTs() + this.data.expires; + if (this.data.expires) { + return this.createdTs() + this.data.expires; + } else { + // We know it exists because we checked for this in the constructor. + return this.data.expires_ts!; + } } // gets the expiry time of the event, converted into the device's local time public getLocalExpiry(): number { - const relativeCreationTime = this.parentEvent.getTs() - this.createdTs(); + if (this.data.expires) { + const relativeCreationTime = this.parentEvent.getTs() - this.createdTs(); - const localCreationTs = this.parentEvent.localTimestamp - relativeCreationTime; + const localCreationTs = this.parentEvent.localTimestamp - relativeCreationTime; - return localCreationTs + this.data.expires; + return localCreationTs + this.data.expires; + } else { + // With expires_ts we cannot convert to local time. + // TODO: Check the server timestamp and compute a diff to local time. + return this.data.expires_ts!; + } } public getMsUntilExpiry(): number { diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index ec06e58bea3..b8ee6626fd0 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -624,6 +624,9 @@ export class MatrixRTCSession extends TypedEventEmitter Date: Tue, 30 Jan 2024 12:25:45 +0000 Subject: [PATCH 022/595] Sign in with QR (MSC3906) compatibility with Rust Crypto (#3761) * Make MSC3906 implementation compatible with Rust Crypto * Verify using CryptoApi but no cross-signing (yet) * Use new crossSignDevice() function * Mock crossSignDevice() function * Fix type of parameter in mock * review: cleaning * review: Remove unneeded defensive coding * review: fix outdated documentation * QR login: review, cleaning * QR login | review: use getSafeUserId --------- Co-authored-by: Valere --- spec/unit/rendezvous/rendezvous.spec.ts | 220 +++++++++++++++--------- src/rendezvous/MSC3906Rendezvous.ts | 62 +++---- 2 files changed, 171 insertions(+), 111 deletions(-) diff --git a/spec/unit/rendezvous/rendezvous.spec.ts b/spec/unit/rendezvous/rendezvous.spec.ts index eb8a72c26ae..c7a31b8a1ff 100644 --- a/spec/unit/rendezvous/rendezvous.spec.ts +++ b/spec/unit/rendezvous/rendezvous.spec.ts @@ -23,7 +23,7 @@ import { MSC3903ECDHPayload, MSC3903ECDHv2RendezvousChannel as MSC3903ECDHRendezvousChannel, } from "../../../src/rendezvous/channels"; -import { MatrixClient } from "../../../src"; +import { Device, MatrixClient } from "../../../src"; import { MSC3886SimpleHttpRendezvousTransport, MSC3886SimpleHttpRendezvousTransportDetails, @@ -31,16 +31,57 @@ import { import { DummyTransport } from "./DummyTransport"; import { decodeBase64 } from "../../../src/base64"; import { logger } from "../../../src/logger"; -import { DeviceInfo } from "../../../src/crypto/deviceinfo"; +import { CrossSigningKey, OwnDeviceKeys } from "../../../src/crypto-api"; + +type UserID = string; +type DeviceID = string; +type Fingerprint = string; +type SimpleDeviceMap = Record>; + +function mockDevice(userId: UserID, deviceId: DeviceID, fingerprint: Fingerprint): Device { + return { + deviceId, + userId, + getFingerprint: () => fingerprint, + } as unknown as Device; +} + +function mockDeviceMap( + userId: UserID, + deviceId: DeviceID, + deviceKey?: Fingerprint, + otherDevices: SimpleDeviceMap = {}, +): Map> { + const deviceMap: Map> = new Map(); + + const myDevices: Map = new Map(); + if (deviceKey) { + myDevices.set(deviceId, mockDevice(userId, deviceId, deviceKey)); + } + deviceMap.set(userId, myDevices); + + for (const u in otherDevices) { + let userDevices = deviceMap.get(u); + if (!userDevices) { + userDevices = new Map(); + deviceMap.set(u, userDevices); + } + for (const d in otherDevices[u]) { + userDevices.set(d, mockDevice(u, d, otherDevices[u][d])); + } + } + + return deviceMap; +} function makeMockClient(opts: { - userId: string; - deviceId: string; - deviceKey?: string; + userId: UserID; + deviceId: DeviceID; + deviceKey?: Fingerprint; getLoginTokenEnabled: boolean; msc3882r0Only: boolean; msc3886Enabled: boolean; - devices?: Record>; + devices?: SimpleDeviceMap; verificationFunction?: ( userId: string, deviceId: string, @@ -48,50 +89,77 @@ function makeMockClient(opts: { blocked: boolean, known: boolean, ) => void; - crossSigningIds?: Record; -}): MatrixClient { - return { - getVersions() { - return { - unstable_features: { - "org.matrix.msc3882": opts.getLoginTokenEnabled, - "org.matrix.msc3886": opts.msc3886Enabled, - }, - }; - }, - getCapabilities() { - return opts.msc3882r0Only - ? {} - : { - capabilities: { - "m.get_login_token": { - enabled: opts.getLoginTokenEnabled, + crossSigningIds?: Partial>; +}): [MatrixClient, Map>] { + const deviceMap = mockDeviceMap(opts.userId, opts.deviceId, opts.deviceKey, opts.devices); + return [ + { + doesServerSupportUnstableFeature: jest.fn().mockImplementation((feature) => { + if (feature === "org.matrix.msc3886") { + return opts.msc3886Enabled; + } else if (feature === "org.matrix.msc3882") { + return opts.getLoginTokenEnabled; + } else { + return false; + } + }), + getVersions() { + return { + unstable_features: { + "org.matrix.msc3882": opts.getLoginTokenEnabled, + "org.matrix.msc3886": opts.msc3886Enabled, + }, + }; + }, + getCapabilities() { + return opts.msc3882r0Only + ? {} + : { + capabilities: { + "m.get_login_token": { + enabled: opts.getLoginTokenEnabled, + }, }, - }, - }; - }, - getUserId() { - return opts.userId; - }, - getDeviceId() { - return opts.deviceId; - }, - getDeviceEd25519Key() { - return opts.deviceKey; - }, - baseUrl: "https://example.com", - crypto: { - getStoredDevice(userId: string, deviceId: string) { - return opts.devices?.[deviceId] ?? null; + }; }, - setDeviceVerification: opts.verificationFunction, - crossSigningInfo: { - getId(key: string) { - return opts.crossSigningIds?.[key]; - }, + getUserId() { + return opts.userId; + }, + getSafeUserId() { + return opts.userId; + }, + getDeviceId() { + return opts.deviceId; + }, + baseUrl: "https://example.com", + getCrypto() { + return { + getUserDeviceInfo( + [userId]: string[], + downloadUncached?: boolean, + ): Promise>> { + return Promise.resolve(deviceMap); + }, + getCrossSigningKeyId(key: CrossSigningKey): string | null { + return opts.crossSigningIds?.[key] ?? null; + }, + setDeviceVerified(userId: string, deviceId: string, verified: boolean): Promise { + return Promise.resolve(); + }, + crossSignDevice(deviceId: string): Promise { + return Promise.resolve(); + }, + getOwnDeviceKeys(): Promise { + return Promise.resolve({ + ed25519: opts.deviceKey!, + curve25519: "aaaa", + }); + }, + }; }, - }, - } as unknown as MatrixClient; + } as unknown as MatrixClient, + deviceMap, + ]; } function makeTransport(name: string, uri = "https://test.rz/123456") { @@ -106,6 +174,7 @@ describe("Rendezvous", function () { let httpBackend: MockHttpBackend; let fetchFn: typeof global.fetch; let transports: DummyTransport[]; + const userId: UserID = "@user:example.com"; beforeEach(function () { httpBackend = new MockHttpBackend(); @@ -118,9 +187,9 @@ describe("Rendezvous", function () { }); it("generate and cancel", async function () { - const alice = makeMockClient({ - userId: "@alice:example.com", - deviceId: "DEVICEID", + const [alice] = makeMockClient({ + userId, + deviceId: "ALICE", msc3886Enabled: false, getLoginTokenEnabled: true, msc3882r0Only: true, @@ -194,8 +263,8 @@ describe("Rendezvous", function () { // alice is already signs in and generates a code const aliceOnFailure = jest.fn(); - const alice = makeMockClient({ - userId: "alice", + const [alice] = makeMockClient({ + userId, deviceId: "ALICE", msc3886Enabled: false, getLoginTokenEnabled, @@ -257,8 +326,8 @@ describe("Rendezvous", function () { // alice is already signs in and generates a code const aliceOnFailure = jest.fn(); - const alice = makeMockClient({ - userId: "alice", + const [alice] = makeMockClient({ + userId, deviceId: "ALICE", getLoginTokenEnabled: true, msc3882r0Only: false, @@ -316,8 +385,8 @@ describe("Rendezvous", function () { // alice is already signs in and generates a code const aliceOnFailure = jest.fn(); - const alice = makeMockClient({ - userId: "alice", + const [alice] = makeMockClient({ + userId, deviceId: "ALICE", getLoginTokenEnabled: true, msc3882r0Only: false, @@ -375,7 +444,7 @@ describe("Rendezvous", function () { // alice is already signs in and generates a code const aliceOnFailure = jest.fn(); - const alice = makeMockClient({ + const [alice] = makeMockClient({ userId: "alice", deviceId: "ALICE", getLoginTokenEnabled: true, @@ -436,7 +505,7 @@ describe("Rendezvous", function () { // alice is already signs in and generates a code const aliceOnFailure = jest.fn(); - const alice = makeMockClient({ + const [alice] = makeMockClient({ userId: "alice", deviceId: "ALICE", getLoginTokenEnabled: true, @@ -495,7 +564,7 @@ describe("Rendezvous", function () { await bobCompleteProm; }); - async function completeLogin(devices: Record>) { + async function completeLogin(devices: SimpleDeviceMap) { const aliceTransport = makeTransport("Alice", "https://test.rz/123456"); const bobTransport = makeTransport("Bob", "https://test.rz/999999"); transports.push(aliceTransport, bobTransport); @@ -505,8 +574,8 @@ describe("Rendezvous", function () { // alice is already signs in and generates a code const aliceOnFailure = jest.fn(); const aliceVerification = jest.fn(); - const alice = makeMockClient({ - userId: "alice", + const [alice, deviceMap] = makeMockClient({ + userId, deviceId: "ALICE", getLoginTokenEnabled: true, msc3882r0Only: false, @@ -575,13 +644,14 @@ describe("Rendezvous", function () { aliceRz, bobTransport, bobEcdh, + deviceMap, }; } it("approve on existing device + verification", async function () { const { bobEcdh, aliceRz } = await completeLogin({ - BOB: { - getFingerprint: () => "bbbb", + [userId]: { + BOB: "bbbb", }, }); const verifyProm = aliceRz.verifyNewDeviceOnExistingDevice(); @@ -607,33 +677,29 @@ describe("Rendezvous", function () { }); it("device appears online within timeout", async function () { - const devices: Record> = {}; - const { aliceRz } = await completeLogin(devices); - // device appears after 1 second + const devices: SimpleDeviceMap = {}; + const { aliceRz, deviceMap } = await completeLogin(devices); + // device appears before the timeout setTimeout(() => { - devices.BOB = { - getFingerprint: () => "bbbb", - }; + deviceMap.get(userId)!.set("BOB", mockDevice(userId, "BOB", "bbbb")); }, 1000); await aliceRz.verifyNewDeviceOnExistingDevice(2000); }); it("device appears online after timeout", async function () { - const devices: Record> = {}; - const { aliceRz } = await completeLogin(devices); - // device appears after 1 second + const devices: SimpleDeviceMap = {}; + const { aliceRz, deviceMap } = await completeLogin(devices); + // device appears after the timeout setTimeout(() => { - devices.BOB = { - getFingerprint: () => "bbbb", - }; + deviceMap.get(userId)!.set("BOB", mockDevice(userId, "BOB", "bbbb")); }, 1500); await expect(aliceRz.verifyNewDeviceOnExistingDevice(1000)).rejects.toThrow(); }); it("mismatched device key", async function () { const { aliceRz } = await completeLogin({ - BOB: { - getFingerprint: () => "XXXX", + [userId]: { + BOB: "XXXX", }, }); await expect(aliceRz.verifyNewDeviceOnExistingDevice(1000)).rejects.toThrow(/different key/); diff --git a/src/rendezvous/MSC3906Rendezvous.ts b/src/rendezvous/MSC3906Rendezvous.ts index 4a92bbd7797..e558c224abe 100644 --- a/src/rendezvous/MSC3906Rendezvous.ts +++ b/src/rendezvous/MSC3906Rendezvous.ts @@ -17,12 +17,12 @@ limitations under the License. import { UnstableValue } from "matrix-events-sdk"; import { RendezvousChannel, RendezvousFailureListener, RendezvousFailureReason, RendezvousIntent } from "."; -import { ICrossSigningKey, IGetLoginTokenCapability, MatrixClient, GET_LOGIN_TOKEN_CAPABILITY } from "../client"; -import { CrossSigningInfo } from "../crypto/CrossSigning"; -import { DeviceInfo } from "../crypto/deviceinfo"; +import { IGetLoginTokenCapability, MatrixClient, GET_LOGIN_TOKEN_CAPABILITY } from "../client"; import { buildFeatureSupportMap, Feature, ServerSupport } from "../feature"; import { logger } from "../logger"; import { sleep } from "../utils"; +import { CrossSigningKey } from "../crypto-api"; +import { Device } from "../matrix"; enum PayloadType { Start = "m.login.start", @@ -116,7 +116,7 @@ export class MSC3906Rendezvous { await this.send({ type: PayloadType.Progress, protocols: [LOGIN_TOKEN_PROTOCOL.name] }); - logger.info("Waiting for other device to chose protocol"); + logger.info("Waiting for other device to choose protocol"); const { type, protocol, outcome } = await this.receive(); if (type === PayloadType.Finish) { @@ -178,12 +178,8 @@ export class MSC3906Rendezvous { return deviceId; } - private async verifyAndCrossSignDevice( - deviceInfo: DeviceInfo, - ): Promise { - if (!this.client.crypto) { - throw new Error("Crypto not available on client"); - } + private async verifyAndCrossSignDevice(deviceInfo: Device): Promise { + const crypto = this.client.getCrypto()!; if (!this.newDeviceId) { throw new Error("No new device ID set"); @@ -196,36 +192,32 @@ export class MSC3906Rendezvous { ); } - const userId = this.client.getUserId(); + const userId = this.client.getSafeUserId(); - if (!userId) { - throw new Error("No user ID set"); - } // mark the device as verified locally + cross sign logger.info(`Marking device ${this.newDeviceId} as verified`); - const info = await this.client.crypto.setDeviceVerification(userId, this.newDeviceId, true, false, true); + await crypto.setDeviceVerified(userId, this.newDeviceId, true); + await crypto.crossSignDevice(this.newDeviceId); - const masterPublicKey = this.client.crypto.crossSigningInfo.getId("master")!; + const masterPublicKey = (await crypto.getCrossSigningKeyId(CrossSigningKey.Master)) ?? undefined; + + const ourDeviceId = this.client.getDeviceId()!; + const ourDeviceKey = (await crypto.getOwnDeviceKeys()).ed25519; await this.send({ type: PayloadType.Finish, outcome: Outcome.Verified, - verifying_device_id: this.client.getDeviceId()!, - verifying_device_key: this.client.getDeviceEd25519Key()!, + verifying_device_id: ourDeviceId, + verifying_device_key: ourDeviceKey, master_key: masterPublicKey, }); - - return info; } /** * Verify the device and cross-sign it. * @param timeout - time in milliseconds to wait for device to come online - * @returns the new device info if the device was verified */ - public async verifyNewDeviceOnExistingDevice( - timeout = 10 * 1000, - ): Promise { + public async verifyNewDeviceOnExistingDevice(timeout = 10 * 1000): Promise { if (!this.newDeviceId) { throw new Error("No new device to sign"); } @@ -235,31 +227,33 @@ export class MSC3906Rendezvous { return undefined; } - if (!this.client.crypto) { + const crypto = this.client.getCrypto(); + if (!crypto) { throw new Error("Crypto not available on client"); } - const userId = this.client.getUserId(); - - if (!userId) { - throw new Error("No user ID set"); - } - - let deviceInfo = this.client.crypto.getStoredDevice(userId, this.newDeviceId); + let deviceInfo = await this.getOwnDevice(this.newDeviceId); if (!deviceInfo) { logger.info("Going to wait for new device to be online"); await sleep(timeout); - deviceInfo = this.client.crypto.getStoredDevice(userId, this.newDeviceId); + deviceInfo = await this.getOwnDevice(this.newDeviceId); } if (deviceInfo) { - return await this.verifyAndCrossSignDevice(deviceInfo); + await this.verifyAndCrossSignDevice(deviceInfo); + return; } throw new Error("Device not online within timeout"); } + private async getOwnDevice(deviceId: string): Promise { + const userId = this.client.getSafeUserId(); + const ownDeviceInfo = await this.client.getCrypto()!.getUserDeviceInfo([userId]); + return ownDeviceInfo.get(userId)?.get(deviceId); + } + public async cancel(reason: RendezvousFailureReason): Promise { this.onFailure?.(reason); await this.channel.cancel(reason); From 89d0133c61a4c2b61fd30790eadd9c4fbb55f979 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Wed, 31 Jan 2024 14:37:57 +0000 Subject: [PATCH 023/595] v31.2.0 --- CHANGELOG.md | 14 ++++++++++++++ package.json | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index aff0c3582c9..f21a0cd5ddd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +Changes in [31.2.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.2.0) (2024-01-31) +================================================================================================== +## ✨ Features + +* Emit events during migration from libolm ([#3982](https://github.com/matrix-org/matrix-js-sdk/pull/3982)). Contributed by @richvdh. +* Support for migration from from libolm ([#3978](https://github.com/matrix-org/matrix-js-sdk/pull/3978)). Contributed by @richvdh. + +## 🐛 Bug Fixes + +* ElementR | backup: call expensive `roomKeyCounts` less often ([#4015](https://github.com/matrix-org/matrix-js-sdk/pull/4015)). Contributed by @BillCarsonFr. +* Decrypt and Import full backups in chunk with progress ([#4005](https://github.com/matrix-org/matrix-js-sdk/pull/4005)). Contributed by @BillCarsonFr. +* Fix new threads not appearing. ([#4009](https://github.com/matrix-org/matrix-js-sdk/pull/4009)). Contributed by @dbkr. + + Changes in [31.1.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.1.0) (2024-01-19) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index 99eccb0d55b..947a6864093 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.2.0-rc.0", + "version": "31.2.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 1a364c93c3e2d4c211dc9cf374fb80038bab1214 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Wed, 31 Jan 2024 14:38:47 +0000 Subject: [PATCH 024/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 5cc9ff463ce..72b2347df06 100644 --- a/package.json +++ b/package.json @@ -30,8 +30,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,6 +132,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From f81036346f6c1a9beab8de2c67b8b98397aa56a2 Mon Sep 17 00:00:00 2001 From: Valere Date: Wed, 31 Jan 2024 15:25:42 +0100 Subject: [PATCH 025/595] bump wasm bindings version (#4042) --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 72b2347df06..bc463220dbe 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^4.1.0", + "@matrix-org/matrix-sdk-crypto-wasm": "^4.3.0", "another-json": "^0.2.0", "bs58": "^5.0.0", "content-type": "^1.0.4", diff --git a/yarn.lock b/yarn.lock index bf2db4f2bb9..dabeb0df0a1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1674,10 +1674,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@matrix-org/matrix-sdk-crypto-wasm@^4.1.0": - version "4.1.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.1.0.tgz#9b470ed57cf82b0891f6e1cced1dba90c87ef668" - integrity sha512-/jCyvpDmgAybQWiRMmzflm4cneaRNVt8USqEV1RxoHBzlIE68LtLc9/HCfaPjkY7aYLHTbCrThR9GFXRWGyRxQ== +"@matrix-org/matrix-sdk-crypto-wasm@^4.3.0": + version "4.3.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.3.0.tgz#ef08e7eafae6e9e85658c14a41f0d74a48c03f4a" + integrity sha512-05+NO78pXda/MTxi05NJwBbbAsOmU6WywBOcAk9GarPzgvrj4GvOuYTY6VR5PD7Gzb3AI+vNx/Ho4V0GFKPW/w== "@matrix-org/olm@3.2.15": version "3.2.15" From d178fbf9cdc31f3b39d3754823ea09cc9a31f84c Mon Sep 17 00:00:00 2001 From: Hubert Chathi Date: Wed, 31 Jan 2024 09:31:28 -0500 Subject: [PATCH 026/595] Element R: emit events when devices have changed (#4019) * emit events when Rust crypto wasm tells us devices have changed * lint * add missing stub function * apply workaround for queueMicrotask --- spec/unit/rust-crypto/rust-crypto.spec.ts | 28 +++++++++++++ src/client.ts | 3 ++ src/rust-crypto/index.ts | 1 + src/rust-crypto/rust-crypto.ts | 48 ++++++++++++++++++++++- 4 files changed, 79 insertions(+), 1 deletion(-) diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 43c40123b4b..75b3decc6c7 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -94,6 +94,7 @@ describe("initRustCrypto", () => { getSecretsFromInbox: jest.fn().mockResolvedValue([]), deleteSecretsFromInbox: jest.fn(), registerReceiveSecretCallback: jest.fn(), + registerDevicesUpdatedCallback: jest.fn(), outgoingRequests: jest.fn(), isBackupEnabled: jest.fn().mockResolvedValue(false), verifyBackup: jest.fn().mockResolvedValue({ trusted: jest.fn().mockReturnValue(false) }), @@ -1132,6 +1133,33 @@ describe("RustCrypto", () => { rustCrypto.stop(); }); + it("should emit events on device changes", async () => { + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); + + fetchMock.post("path:/_matrix/client/v3/keys/upload", { one_time_key_counts: {} }); + fetchMock.post("path:/_matrix/client/v3/keys/query", { + device_keys: { + [testData.TEST_USER_ID]: { + [testData.TEST_DEVICE_ID]: testData.SIGNED_TEST_DEVICE_DATA, + }, + }, + }); + + const rustCrypto = await makeTestRustCrypto(makeMatrixHttpApi(), testData.TEST_USER_ID); + const willUpdateCallback = jest.fn(); + rustCrypto.on(CryptoEvent.WillUpdateDevices, willUpdateCallback); + const devicesUpdatedCallback = jest.fn(); + rustCrypto.on(CryptoEvent.DevicesUpdated, devicesUpdatedCallback); + + rustCrypto.onSyncCompleted({}); + + // wait for the devices to be updated + await rustCrypto.getUserDeviceInfo([testData.TEST_USER_ID]); + expect(willUpdateCallback).toHaveBeenCalledWith([testData.TEST_USER_ID], false); + expect(devicesUpdatedCallback).toHaveBeenCalledWith([testData.TEST_USER_ID], false); + rustCrypto.stop(); + }); + describe("requestDeviceVerification", () => { it("throws an error if the device is unknown", async () => { const rustCrypto = await makeTestRustCrypto(); diff --git a/src/client.ts b/src/client.ts index 23bf2af75fd..b08598913cb 100644 --- a/src/client.ts +++ b/src/client.ts @@ -2360,6 +2360,9 @@ export class MatrixClient extends TypedEventEmitter rustCrypto.onUserIdentityUpdated(userId), ); + await olmMachine.registerDevicesUpdatedCallback((userIds: string[]) => rustCrypto.onDevicesUpdated(userIds)); // Check if there are any key backup secrets pending processing. There may be multiple secrets to process if several devices have gossiped them. // The `registerReceiveSecretCallback` function will only be triggered for new secrets. If the client is restarted before processing them, the secrets will need to be manually handled. diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 27277f57c9e..30c27201f9d 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -1441,7 +1441,7 @@ export class RustCrypto extends TypedEventEmitter { + this.emit(CryptoEvent.WillUpdateDevices, userIds, false); + this.emit(CryptoEvent.DevicesUpdated, userIds, false); + } + /** * Handles secret received from the rust secret inbox. * @@ -1828,6 +1844,9 @@ function rustEncryptionInfoToJsEncryptionInfo( type RustCryptoEvents = | CryptoEvent.VerificationRequestReceived | CryptoEvent.UserTrustStatusChanged + | CryptoEvent.KeysChanged + | CryptoEvent.WillUpdateDevices + | CryptoEvent.DevicesUpdated | RustBackupCryptoEvents; type RustCryptoEventMap = { @@ -1842,4 +1861,31 @@ type RustCryptoEventMap = { [CryptoEvent.UserTrustStatusChanged]: (userId: string, userTrustLevel: UserVerificationStatus) => void; [CryptoEvent.KeyBackupDecryptionKeyCached]: (version: string) => void; + /** + * Fires when the user's cross-signing keys have changed or cross-signing + * has been enabled/disabled. The client can use getStoredCrossSigningForUser + * with the user ID of the logged in user to check if cross-signing is + * enabled on the account. If enabled, it can test whether the current key + * is trusted using with checkUserTrust with the user ID of the logged + * in user. The checkOwnCrossSigningTrust function may be used to reconcile + * the trust in the account key. + * + * The cross-signing API is currently UNSTABLE and may change without notice. + * @experimental + */ + [CryptoEvent.KeysChanged]: (data: {}) => void; + /** + * Fires whenever the stored devices for a user will be updated + * @param users - A list of user IDs that will be updated + * @param initialFetch - If true, the store is empty (apart + * from our own device) and is being seeded. + */ + [CryptoEvent.WillUpdateDevices]: (users: string[], initialFetch: boolean) => void; + /** + * Fires whenever the stored devices for a user have changed + * @param users - A list of user IDs that were updated + * @param initialFetch - If true, the store was empty (apart + * from our own device) and has been seeded. + */ + [CryptoEvent.DevicesUpdated]: (users: string[], initialFetch: boolean) => void; } & RustBackupCryptoEventMap; From 8007bc5fe87c907803245b91c657eed586ae847c Mon Sep 17 00:00:00 2001 From: Hubert Chathi Date: Wed, 31 Jan 2024 15:07:34 -0500 Subject: [PATCH 027/595] ElementR: fix emoji verification stalling when both ends hit start at the same time (#4004) * Rust crypto: handle the SAS verifier being replaced * lint * make changes from review * apply changes from code review * remove useless assertions * wrap acceptance inside a try-catch, and factor out acceptance into a function * fix bugs * we don't actually need the .accept variable * move setInner to inside SAS class, and rename to replaceInner * use defer to avoid using a closure * lint * prettier * use the right name Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * combine onChangeCallback with onChange * apply changes from review * add test for QR code verification, and try changing order in onChange * lint --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- spec/unit/rust-crypto/verification.spec.ts | 508 ++++++++++++++++++++- src/rust-crypto/verification.ts | 95 ++-- 2 files changed, 571 insertions(+), 32 deletions(-) diff --git a/spec/unit/rust-crypto/verification.spec.ts b/spec/unit/rust-crypto/verification.spec.ts index 6bf3df1a026..1579ee6a876 100644 --- a/spec/unit/rust-crypto/verification.spec.ts +++ b/spec/unit/rust-crypto/verification.spec.ts @@ -17,8 +17,19 @@ limitations under the License. import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; import { Mocked } from "jest-mock"; -import { isVerificationEvent, RustVerificationRequest } from "../../../src/rust-crypto/verification"; -import { OutgoingRequestProcessor } from "../../../src/rust-crypto/OutgoingRequestProcessor"; +import { + isVerificationEvent, + RustVerificationRequest, + verificationMethodIdentifierToMethod, +} from "../../../src/rust-crypto/verification"; +import { + ShowSasCallbacks, + VerificationRequestEvent, + Verifier, + VerifierEvent, +} from "../../../src/crypto-api/verification"; +import { OutgoingRequest, OutgoingRequestProcessor } from "../../../src/rust-crypto/OutgoingRequestProcessor"; +import { IDeviceKeys } from "../../../src/@types/crypto"; import { EventType, MatrixEvent, MsgType } from "../../../src"; describe("VerificationRequest", () => { @@ -91,6 +102,354 @@ describe("VerificationRequest", () => { ); }); }); + + it("can verify with SAS", async () => { + const aliceUserId = "@alice:example.org"; + const aliceDeviceId = "ABCDEFG"; + const bobUserId = "@bob:example.org"; + const bobDeviceId = "HIJKLMN"; + const [aliceOlmMachine, aliceDeviceKeys, aliceCrossSigningKeys] = await initOlmMachineAndKeys( + aliceUserId, + aliceDeviceId, + ); + const [bobOlmMachine, bobDeviceKeys, bobCrossSigningKeys] = await initOlmMachineAndKeys(bobUserId, bobDeviceId); + + const aliceRequestLoop = makeRequestLoop( + aliceOlmMachine, + aliceDeviceKeys, + aliceCrossSigningKeys, + bobOlmMachine, + bobDeviceKeys, + bobCrossSigningKeys, + ); + const bobRequestLoop = makeRequestLoop( + bobOlmMachine, + bobDeviceKeys, + bobCrossSigningKeys, + aliceOlmMachine, + aliceDeviceKeys, + aliceCrossSigningKeys, + ); + + try { + await aliceOlmMachine.updateTrackedUsers([new RustSdkCryptoJs.UserId(bobUserId)]); + await bobOlmMachine.updateTrackedUsers([new RustSdkCryptoJs.UserId(aliceUserId)]); + + // Alice requests verification + const bobUserIdentity = await aliceOlmMachine.getIdentity(new RustSdkCryptoJs.UserId(bobUserId)); + + const roomId = new RustSdkCryptoJs.RoomId("!roomId:example.org"); + const methods = [verificationMethodIdentifierToMethod("m.sas.v1")]; + const innerVerificationRequest = await bobUserIdentity.requestVerification( + roomId, + new RustSdkCryptoJs.EventId("$m.key.verification.request"), + methods, + ); + const aliceVerificationRequest = new RustVerificationRequest( + aliceOlmMachine, + innerVerificationRequest, + aliceRequestLoop as unknown as OutgoingRequestProcessor, + ["m.sas.v1"], + ); + + const verificationRequestContent = JSON.parse(await bobUserIdentity.verificationRequestContent(methods)); + await bobOlmMachine.receiveVerificationEvent( + JSON.stringify({ + type: "m.room.message", + sender: aliceUserId, + event_id: "$m.key.verification.request", + content: verificationRequestContent, + origin_server_ts: Date.now(), + unsigned: { + age: 0, + }, + }), + roomId, + ); + + // Bob accepts + const bobInnerVerificationRequest = bobOlmMachine.getVerificationRequest( + new RustSdkCryptoJs.UserId(aliceUserId), + "$m.key.verification.request", + )!; + const bobVerificationRequest = new RustVerificationRequest( + bobOlmMachine, + bobInnerVerificationRequest, + bobRequestLoop as unknown as OutgoingRequestProcessor, + ["m.sas.v1"], + ); + + await bobVerificationRequest.accept(); + + // Alice starts the verification + const bobVerifierPromise: Promise = new Promise((resolve, reject) => { + bobVerificationRequest.on(VerificationRequestEvent.Change, () => { + const verifier = bobVerificationRequest.verifier; + if (verifier) { + resolve(verifier); + } + }); + }); + const aliceVerifier = await aliceVerificationRequest.startVerification("m.sas.v1"); + const bobVerifier = await bobVerifierPromise; + + // create a function to compare the SAS, and then let the verification run + let otherCallbacks: ShowSasCallbacks | undefined; + const compareSas = (callbacks: ShowSasCallbacks): void => { + if (otherCallbacks) { + const ourDecimal = callbacks.sas.decimal!; + const theirDecimal = otherCallbacks.sas.decimal!; + if (ourDecimal.every((el, idx) => el == theirDecimal[idx])) { + otherCallbacks.confirm(); + callbacks.confirm(); + } else { + otherCallbacks.mismatch(); + callbacks.mismatch(); + } + } else { + otherCallbacks = callbacks; + } + }; + aliceVerifier.on(VerifierEvent.ShowSas, compareSas); + bobVerifier.on(VerifierEvent.ShowSas, compareSas); + + await Promise.all([aliceVerifier.verify(), await bobVerifier.verify()]); + } finally { + await aliceRequestLoop.stop(); + await bobRequestLoop.stop(); + } + }); + + it("can handle simultaneous starts in SAS", async () => { + const aliceUserId = "@alice:example.org"; + const aliceDeviceId = "ABCDEFG"; + const bobUserId = "@bob:example.org"; + const bobDeviceId = "HIJKLMN"; + const [aliceOlmMachine, aliceDeviceKeys, aliceCrossSigningKeys] = await initOlmMachineAndKeys( + aliceUserId, + aliceDeviceId, + ); + const [bobOlmMachine, bobDeviceKeys, bobCrossSigningKeys] = await initOlmMachineAndKeys(bobUserId, bobDeviceId); + + let aliceStartRequest: RustSdkCryptoJs.RoomMessageRequest | undefined; + const aliceRequestLoop = makeRequestLoop( + aliceOlmMachine, + aliceDeviceKeys, + aliceCrossSigningKeys, + bobOlmMachine, + bobDeviceKeys, + bobCrossSigningKeys, + async (request): Promise => { + // If the request is sending the m.key.verification.start + // event, we delay sending it until after Bob has also started + // a verification + if ( + !aliceStartRequest && + request instanceof RustSdkCryptoJs.RoomMessageRequest && + request.event_type == "m.key.verification.start" + ) { + aliceStartRequest = request; + return { event_id: "$m.key.verification.start" }; + } + }, + ); + const bobRequestLoop = makeRequestLoop( + bobOlmMachine, + bobDeviceKeys, + bobCrossSigningKeys, + aliceOlmMachine, + aliceDeviceKeys, + aliceCrossSigningKeys, + ); + + try { + await aliceOlmMachine.updateTrackedUsers([new RustSdkCryptoJs.UserId(bobUserId)]); + await bobOlmMachine.updateTrackedUsers([new RustSdkCryptoJs.UserId(aliceUserId)]); + + // Alice requests verification + const bobUserIdentity = await aliceOlmMachine.getIdentity(new RustSdkCryptoJs.UserId(bobUserId)); + + const roomId = new RustSdkCryptoJs.RoomId("!roomId:example.org"); + const methods = [verificationMethodIdentifierToMethod("m.sas.v1")]; + const innerVerificationRequest = await bobUserIdentity.requestVerification( + roomId, + new RustSdkCryptoJs.EventId("$m.key.verification.request"), + methods, + ); + const aliceVerificationRequest = new RustVerificationRequest( + aliceOlmMachine, + innerVerificationRequest, + aliceRequestLoop as unknown as OutgoingRequestProcessor, + ["m.sas.v1"], + ); + + const verificationRequestContent = JSON.parse(await bobUserIdentity.verificationRequestContent(methods)); + await bobOlmMachine.receiveVerificationEvent( + JSON.stringify({ + type: "m.room.message", + sender: aliceUserId, + event_id: "$m.key.verification.request", + content: verificationRequestContent, + origin_server_ts: Date.now(), + unsigned: { + age: 0, + }, + }), + roomId, + ); + + // Bob accepts + const bobInnerVerificationRequest = bobOlmMachine.getVerificationRequest( + new RustSdkCryptoJs.UserId(aliceUserId), + "$m.key.verification.request", + )!; + const bobVerificationRequest = new RustVerificationRequest( + bobOlmMachine, + bobInnerVerificationRequest, + bobRequestLoop as unknown as OutgoingRequestProcessor, + ["m.sas.v1"], + ); + + await bobVerificationRequest.accept(); + + // Alice and Bob both start the verification + const aliceVerifier = await aliceVerificationRequest.startVerification("m.sas.v1"); + const bobVerifier = await bobVerificationRequest.startVerification("m.sas.v1"); + // We can now send Alice's start message to Bob + await aliceRequestLoop.makeOutgoingRequest(aliceStartRequest!); + + // create a function to compare the SAS, and then let the verification run + let otherCallbacks: ShowSasCallbacks | undefined; + const compareSas = (callbacks: ShowSasCallbacks) => { + if (otherCallbacks) { + const ourDecimal = callbacks.sas.decimal!; + const theirDecimal = otherCallbacks.sas.decimal!; + if (ourDecimal.every((el, idx) => el == theirDecimal[idx])) { + otherCallbacks.confirm(); + callbacks.confirm(); + } else { + otherCallbacks.mismatch(); + callbacks.mismatch(); + } + } else { + otherCallbacks = callbacks; + } + }; + aliceVerifier.on(VerifierEvent.ShowSas, compareSas); + bobVerifier.on(VerifierEvent.ShowSas, compareSas); + + await Promise.all([aliceVerifier.verify(), await bobVerifier.verify()]); + } finally { + await aliceRequestLoop.stop(); + await bobRequestLoop.stop(); + } + }); + + it("can verify by QR code", async () => { + const aliceUserId = "@alice:example.org"; + const aliceDeviceId = "ABCDEFG"; + const bobUserId = "@bob:example.org"; + const bobDeviceId = "HIJKLMN"; + const [aliceOlmMachine, aliceDeviceKeys, aliceCrossSigningKeys] = await initOlmMachineAndKeys( + aliceUserId, + aliceDeviceId, + ); + const [bobOlmMachine, bobDeviceKeys, bobCrossSigningKeys] = await initOlmMachineAndKeys(bobUserId, bobDeviceId); + + const aliceRequestLoop = makeRequestLoop( + aliceOlmMachine, + aliceDeviceKeys, + aliceCrossSigningKeys, + bobOlmMachine, + bobDeviceKeys, + bobCrossSigningKeys, + ); + const bobRequestLoop = makeRequestLoop( + bobOlmMachine, + bobDeviceKeys, + bobCrossSigningKeys, + aliceOlmMachine, + aliceDeviceKeys, + aliceCrossSigningKeys, + ); + + try { + await aliceOlmMachine.updateTrackedUsers([new RustSdkCryptoJs.UserId(bobUserId)]); + await bobOlmMachine.updateTrackedUsers([new RustSdkCryptoJs.UserId(aliceUserId)]); + + // Alice requests verification + const bobUserIdentity = await aliceOlmMachine.getIdentity(new RustSdkCryptoJs.UserId(bobUserId)); + + const roomId = new RustSdkCryptoJs.RoomId("!roomId:example.org"); + const methods = [ + verificationMethodIdentifierToMethod("m.reciprocate.v1"), + verificationMethodIdentifierToMethod("m.qr_code.show.v1"), + ]; + const innerVerificationRequest = await bobUserIdentity.requestVerification( + roomId, + new RustSdkCryptoJs.EventId("$m.key.verification.request"), + methods, + ); + const aliceVerificationRequest = new RustVerificationRequest( + aliceOlmMachine, + innerVerificationRequest, + aliceRequestLoop as unknown as OutgoingRequestProcessor, + ["m.reciprocate.v1", "m.qr_code.show.v1"], + ); + + const verificationRequestContent = JSON.parse(await bobUserIdentity.verificationRequestContent(methods)); + await bobOlmMachine.receiveVerificationEvent( + JSON.stringify({ + type: "m.room.message", + sender: aliceUserId, + event_id: "$m.key.verification.request", + content: verificationRequestContent, + origin_server_ts: Date.now(), + unsigned: { + age: 0, + }, + }), + roomId, + ); + + // Bob accepts + const bobInnerVerificationRequest = bobOlmMachine.getVerificationRequest( + new RustSdkCryptoJs.UserId(aliceUserId), + "$m.key.verification.request", + )!; + const bobVerificationRequest = new RustVerificationRequest( + bobOlmMachine, + bobInnerVerificationRequest, + bobRequestLoop as unknown as OutgoingRequestProcessor, + ["m.reciprocate.v1", "m.qr_code.show.v1", "m.qr_code.scan.v1"], + ); + + await bobVerificationRequest.accept(); + + // Bob scans + const qrCode = await aliceVerificationRequest.generateQRCode(); + + const aliceVerifierPromise: Promise = new Promise((resolve, reject) => { + aliceVerificationRequest.on(VerificationRequestEvent.Change, () => { + const verifier = aliceVerificationRequest.verifier; + if (verifier) { + resolve(verifier); + } + }); + }); + const bobVerifier = await bobVerificationRequest.scanQRCode(qrCode!); + + const aliceVerifier = await aliceVerifierPromise; + aliceVerifier.on(VerifierEvent.ShowReciprocateQr, (showQrCodeCallbacks) => { + showQrCodeCallbacks.confirm(); + }); + + await Promise.all([aliceVerifier.verify(), await bobVerifier.verify()]); + } finally { + await aliceRequestLoop.stop(); + await bobRequestLoop.stop(); + } + }); }); describe("isVerificationEvent", () => { @@ -152,3 +511,148 @@ function makeMockedInner(): Mocked { }, } as unknown as Mocked; } + +interface CrossSigningKeys { + master_key: any; + self_signing_key: any; + user_signing_key: any; +} + +/** create an Olm machine and device/cross-signing keys for a user */ +async function initOlmMachineAndKeys( + userId: string, + deviceId: string, +): Promise<[RustSdkCryptoJs.OlmMachine, IDeviceKeys, CrossSigningKeys]> { + const olmMachine = await RustSdkCryptoJs.OlmMachine.initialize( + new RustSdkCryptoJs.UserId(userId), + new RustSdkCryptoJs.DeviceId(deviceId), + undefined, + undefined, + ); + const { uploadKeysRequest, uploadSignaturesRequest, uploadSigningKeysRequest } = + await olmMachine.bootstrapCrossSigning(true); + const deviceKeys = JSON.parse(uploadKeysRequest.body).device_keys; + await olmMachine.markRequestAsSent( + uploadKeysRequest.id, + uploadKeysRequest.type, + '{"one_time_key_counts":{"signed_curve25519":100}}', + ); + const crossSigningSignatures = JSON.parse(uploadSignaturesRequest.body); + for (const [keyId, signature] of Object.entries(crossSigningSignatures[userId][deviceId]["signatures"][userId])) { + deviceKeys["signatures"][userId][keyId] = signature; + } + const crossSigningKeys = JSON.parse(uploadSigningKeysRequest.body); + // note: the upload signatures request and upload signing keys requests + // don't need to be marked as sent in the Olm machine + + return [olmMachine, deviceKeys, crossSigningKeys]; +} + +type CustomRequestHandler = (request: OutgoingRequest | RustSdkCryptoJs.UploadSigningKeysRequest) => Promise; + +/** Loop for handling outgoing requests from an Olm machine. + * + * Simulates a server with two users: "us" and "them". Handles key query + * requests, querying either our keys or the other user's keys. Room messages + * are sent as incoming verification events to the other user. A custom + * handler can be added to override default request processing (the handler + * should return a response body to inhibit default processing). + * + * Can also be used as an OutgoingRequestProcessor. */ +function makeRequestLoop( + ourOlmMachine: RustSdkCryptoJs.OlmMachine, + ourDeviceKeys: IDeviceKeys, + ourCrossSigningKeys: CrossSigningKeys, + theirOlmMachine: RustSdkCryptoJs.OlmMachine, + theirDeviceKeys: IDeviceKeys, + theirCrossSigningKeys: CrossSigningKeys, + customHandler?: CustomRequestHandler, +) { + let stopRequestLoop = false; + const ourUserId = ourOlmMachine.userId.toString(); + const ourDeviceId = ourOlmMachine.deviceId.toString(); + const theirUserId = theirOlmMachine.userId.toString(); + const theirDeviceId = theirOlmMachine.deviceId.toString(); + + function defaultHandler(request: OutgoingRequest | RustSdkCryptoJs.UploadSigningKeysRequest): any { + if (request instanceof RustSdkCryptoJs.KeysQueryRequest) { + const resp: Record = { + device_keys: {}, + }; + const body = JSON.parse(request.body); + const query = body.device_keys; + const masterKeys: Record = {}; + const selfSigningKeys: Record = {}; + if (ourUserId in query) { + resp.device_keys[ourUserId] = { [ourDeviceId]: ourDeviceKeys }; + masterKeys[ourUserId] = ourCrossSigningKeys.master_key; + selfSigningKeys[ourUserId] = ourCrossSigningKeys.self_signing_key; + resp.user_signing_keys = { + [ourUserId]: ourCrossSigningKeys.user_signing_key, + }; + } + if (theirUserId in query) { + resp.device_keys[theirUserId] = { + [theirDeviceId]: theirDeviceKeys, + }; + masterKeys[theirUserId] = theirCrossSigningKeys.master_key; + selfSigningKeys[theirUserId] = theirCrossSigningKeys.self_signing_key; + } + if (Object.keys(masterKeys).length) { + resp.master_keys = masterKeys; + } + if (Object.keys(selfSigningKeys).length) { + resp.self_signing_keys = selfSigningKeys; + } + return resp; + } else if (request instanceof RustSdkCryptoJs.RoomMessageRequest) { + theirOlmMachine.receiveVerificationEvent( + JSON.stringify({ + type: request.event_type, + sender: ourUserId, + event_id: "$" + request.event_type, + content: JSON.parse(request.body), + origin_server_ts: Date.now(), + unsigned: { + age: 0, + }, + }), + new RustSdkCryptoJs.RoomId(request.room_id), + ); + return { event_id: "$" + request.event_type }; + } else if (request instanceof RustSdkCryptoJs.SignatureUploadRequest) { + // this only gets called at the end after the verification + // succeeds, so we don't actually have to do anything. + return { failures: {} }; + } + return {}; + } + + async function makeOutgoingRequest( + request: OutgoingRequest | RustSdkCryptoJs.UploadSigningKeysRequest, + ): Promise { + const resp = (await customHandler?.(request)) ?? defaultHandler(request); + if (!(request instanceof RustSdkCryptoJs.UploadSigningKeysRequest) && request.id) { + await ourOlmMachine.markRequestAsSent(request.id!, request.type, JSON.stringify(resp)); + } + } + + async function runLoop() { + while (!stopRequestLoop) { + const requests = await ourOlmMachine.outgoingRequests(); + for (const request of requests) { + await makeOutgoingRequest(request); + } + } + } + + const loopCompletedPromise = runLoop(); + + return { + makeOutgoingRequest, + stop: async () => { + stopRequestLoop = true; + await loopCompletedPromise; + }, + }; +} diff --git a/src/rust-crypto/verification.ts b/src/rust-crypto/verification.ts index a8b733c5fe0..dde54fd58f6 100644 --- a/src/rust-crypto/verification.ts +++ b/src/rust-crypto/verification.ts @@ -34,6 +34,7 @@ import { OutgoingRequest, OutgoingRequestProcessor } from "./OutgoingRequestProc import { TypedReEmitter } from "../ReEmitter"; import { MatrixEvent } from "../models/event"; import { EventType, MsgType } from "../@types/event"; +import { defer, IDeferred } from "../utils"; /** * An incoming, or outgoing, request to verify a user or a device via cross-signing. @@ -76,11 +77,16 @@ export class RustVerificationRequest const onChange = async (): Promise => { const verification: RustSdkCryptoJs.Qr | RustSdkCryptoJs.Sas | undefined = this.inner.getVerification(); - // If we now have a `Verification` where we lacked one before, or we have transitioned from QR to SAS, - // wrap the new rust Verification as a js-sdk Verifier. + // Set the _verifier object (wrapping the rust `Verification` as a js-sdk Verifier) if: + // - we now have a `Verification` where we lacked one before + // - we have transitioned from QR to SAS + // - we are verifying with SAS, but we need to replace our verifier with a new one because both parties + // tried to start verification at the same time, and we lost the tie breaking if (verification instanceof RustSdkCryptoJs.Sas) { if (this._verifier === undefined || this._verifier instanceof RustQrCodeVerifier) { this.setVerifier(new RustSASVerifier(verification, this, outgoingRequestProcessor)); + } else if (this._verifier instanceof RustSASVerifier) { + this._verifier.replaceInner(verification); } } else if (verification instanceof RustSdkCryptoJs.Qr && this._verifier === undefined) { this.setVerifier(new RustQrCodeVerifier(verification, outgoingRequestProcessor)); @@ -456,46 +462,45 @@ abstract class BaseRustVerifer { - /** A promise which completes when the verification completes (or rejects when it is cancelled/fails) */ - protected readonly completionPromise: Promise; + /** A deferred which completes when the verification completes (or rejects when it is cancelled/fails) */ + protected readonly completionDeferred: IDeferred; public constructor( - protected readonly inner: InnerType, + protected inner: InnerType, protected readonly outgoingRequestProcessor: OutgoingRequestProcessor, ) { super(); - this.completionPromise = new Promise((resolve, reject) => { - const onChange = async (): Promise => { - this.onChange(); - - if (this.inner.isDone()) { - resolve(undefined); - } else if (this.inner.isCancelled()) { - const cancelInfo = this.inner.cancelInfo()!; - reject( - new Error( - `Verification cancelled by ${ - cancelInfo.cancelledbyUs() ? "us" : "them" - } with code ${cancelInfo.cancelCode()}: ${cancelInfo.reason()}`, - ), - ); - } - - this.emit(VerificationRequestEvent.Change); - }; - inner.registerChangesCallback(onChange); + this.completionDeferred = defer(); + inner.registerChangesCallback(async () => { + this.onChange(); }); // stop the runtime complaining if nobody catches a failure - this.completionPromise.catch(() => null); + this.completionDeferred.promise.catch(() => null); } /** * Hook which is called when the underlying rust class notifies us that there has been a change. * - * Can be overridden by subclasses to see if we can notify the application about an update. + * Can be overridden by subclasses to see if we can notify the application about an update. The overriding method + * must call `super.onChange()`. */ - protected onChange(): void {} + protected onChange(): void { + if (this.inner.isDone()) { + this.completionDeferred.resolve(undefined); + } else if (this.inner.isCancelled()) { + const cancelInfo = this.inner.cancelInfo()!; + this.completionDeferred.reject( + new Error( + `Verification cancelled by ${ + cancelInfo.cancelledbyUs() ? "us" : "them" + } with code ${cancelInfo.cancelCode()}: ${cancelInfo.reason()}`, + ), + ); + } + + this.emit(VerificationRequestEvent.Change); + } /** * Returns true if the verification has been cancelled, either by us or the other side. @@ -565,6 +570,8 @@ export class RustQrCodeVerifier extends BaseRustVerifer impl cancel: () => this.cancel(), }; } + + super.onChange(); } /** @@ -580,7 +587,7 @@ export class RustQrCodeVerifier extends BaseRustVerifer impl this.emit(VerifierEvent.ShowReciprocateQr, this.callbacks); } // Nothing to do here but wait. - await this.completionPromise; + await this.completionDeferred.promise; } /** @@ -657,15 +664,24 @@ export class RustSASVerifier extends BaseRustVerifer implem * or times out. */ public async verify(): Promise { + await this.sendAccept(); + await this.completionDeferred.promise; + } + + /** + * Send the accept or start event, if it hasn't already been sent + */ + private async sendAccept(): Promise { const req: undefined | OutgoingRequest = this.inner.accept(); if (req) { await this.outgoingRequestProcessor.makeOutgoingRequest(req); } - await this.completionPromise; } /** if we can now show the callbacks, do so */ protected onChange(): void { + super.onChange(); + if (this.callbacks === null) { const emoji = this.inner.emoji(); const decimal = this.inner.decimals(); @@ -717,6 +733,25 @@ export class RustSASVerifier extends BaseRustVerifer implem public getShowSasCallbacks(): ShowSasCallbacks | null { return this.callbacks; } + + /** + * Replace the inner Rust verifier with a different one. + * + * @param inner - the new Rust verifier + * @internal + */ + public replaceInner(inner: RustSdkCryptoJs.Sas): void { + if (this.inner != inner) { + this.inner = inner; + inner.registerChangesCallback(async () => { + this.onChange(); + }); + // replaceInner will only get called if we started the verification at the same time as the other side, and we lost + // the tie breaker. So we need to re-accept their verification. + this.sendAccept(); + this.onChange(); + } + } } /** For each specced verification method, the rust-side `VerificationMethod` corresponding to it */ From b46b31563ee48e96fb7fe6c48487da760b7e27fb Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 1 Feb 2024 11:26:01 +0000 Subject: [PATCH 028/595] Saner Releases - improve changelog merging & allow pre-public testing (pack) (#4043) * Switch prepublishOnly to prepack to catch errors earlier Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Fix merge-release-notes.js parsing Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Discard changes to yarn.lock * Update package.json --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 2 +- scripts/release/merge-release-notes.js | 76 +++++++++++++------------- 2 files changed, 39 insertions(+), 39 deletions(-) diff --git a/package.json b/package.json index bc463220dbe..0ab62af76ea 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "node": ">=18.0.0" }, "scripts": { - "prepublishOnly": "yarn build", + "prepack": "yarn build", "start": "echo THIS IS FOR LEGACY PURPOSES ONLY. && babel src -w -s -d lib --verbose --extensions \".ts,.js\"", "clean": "rimraf lib", "build": "yarn build:dev", diff --git a/scripts/release/merge-release-notes.js b/scripts/release/merge-release-notes.js index bd2cf35047d..7b5e9f8c451 100755 --- a/scripts/release/merge-release-notes.js +++ b/scripts/release/merge-release-notes.js @@ -26,24 +26,38 @@ async function getRelease(github, dependency) { const HEADING_PREFIX = "## "; +const categories = [ + "🔒 SECURITY FIXES", + "🚨 BREAKING CHANGESd", + "🦖 Deprecations", + "✨ Features", + "🐛 Bug Fixes", + "🧰 Maintenance", +]; + +const parseReleaseNotes = (body, sections) => { + let heading = null; + for (const line of body.split("\n")) { + const trimmed = line.trim(); + if (trimmed.startsWith(HEADING_PREFIX)) { + heading = trimmed.slice(HEADING_PREFIX.length); + if (!categories.includes(heading)) heading = null; + continue; + } + if (heading && trimmed) { + sections[heading].push(trimmed); + } + } +}; + const main = async ({ github, releaseId, dependencies }) => { const { GITHUB_REPOSITORY } = process.env; const [owner, repo] = GITHUB_REPOSITORY.split("/"); - const sections = new Map(); - let heading = null; + const sections = Object.fromEntries(categories.map((cat) => [cat, []])); for (const dependency of dependencies) { const release = await getRelease(github, dependency); - for (const line of release.body.split("\n")) { - if (line.startsWith(HEADING_PREFIX)) { - heading = line.trim(); - sections.set(heading, []); - continue; - } - if (heading && line) { - sections.get(heading).push(line.trim()); - } - } + parseReleaseNotes(release.body, sections); } const { data: release } = await github.rest.repos.getRelease({ @@ -52,36 +66,22 @@ const main = async ({ github, releaseId, dependencies }) => { release_id: releaseId, }); - const headings = ["🚨 BREAKING CHANGES", "🦖 Deprecations", "✨ Features", "🐛 Bug Fixes", "🧰 Maintenance"].map( - (h) => HEADING_PREFIX + h, - ); + const intro = release.body.split(HEADING_PREFIX, 2)[0].trim(); - heading = null; - const output = []; - for (const line of [...release.body.split("\n"), null]) { - if (line === null || line.startsWith(HEADING_PREFIX)) { - // If we have a heading, and it's not the first in the list of pending headings, output the section. - // If we're processing the last line (null) then output all remaining sections. - while (headings.length > 0 && (line === null || (heading && headings[0] !== heading))) { - const heading = headings.shift(); - if (sections.has(heading)) { - output.push(heading); - output.push(...sections.get(heading)); - } - } + let output = ""; + if (intro) { + output = intro + "\n\n"; + } - if (heading && sections.has(heading)) { - const lastIsBlank = !output.at(-1)?.trim(); - if (lastIsBlank) output.pop(); - output.push(...sections.get(heading)); - if (lastIsBlank) output.push(""); - } - heading = line; - } - output.push(line); + for (const section in sections) { + const lines = sections[section]; + if (!lines.length) continue; + output += HEADING_PREFIX + section + "\n\n"; + output += lines.join("\n"); + output += "\n\n"; } - return output.join("\n"); + return output; }; // This is just for testing locally From 70edf0f34d6aaf7e385c1857d966705a123e3bdf Mon Sep 17 00:00:00 2001 From: Valere Date: Thu, 1 Feb 2024 16:40:07 +0100 Subject: [PATCH 029/595] WebR: migrate the megolm session imported flag (#4037) * WebR: migrate the megolm session imported flag * review: Better doc Co-authored-by: Denis Kasak --------- Co-authored-by: Denis Kasak --- src/rust-crypto/libolm_migration.ts | 44 ++++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 4 deletions(-) diff --git a/src/rust-crypto/libolm_migration.ts b/src/rust-crypto/libolm_migration.ts index dc965381017..5cae154f734 100644 --- a/src/rust-crypto/libolm_migration.ts +++ b/src/rust-crypto/libolm_migration.ts @@ -245,10 +245,46 @@ async function migrateMegolmSessions( pickledSession.senderSigningKey = sessionData.keysClaimed?.["ed25519"]; pickledSession.backedUp = !session.needsBackup; - // Not sure if we can reliably distinguish imported vs not-imported sessions in the libolm database. - // For now at least, let's be conservative and say that all the sessions are imported (which means that - // the Rust SDK treats them as less secure). - pickledSession.imported = true; + // The Rust SDK `imported` flag is used to indicate the authenticity status of a Megolm + // session, which tells us whether we can reliably tell which Olm device is the owner + // (creator) of the session. + // + // If `imported` is true, then we have no cryptographic proof that the session is owned + // by the device with the identity key `senderKey`. + // + // Only Megolm sessions received directly from the owning device via an encrypted + // `m.room_key` to-device message should have `imported` flag set to false. Megolm + // sessions received by any other currently available means (i.e. from a + // `m.forwarded_room_key`, from v1 asymmetric server-side key backup, imported from a + // file, etc) should have the `imported` flag set to true. + // + // Messages encrypted with such Megolm sessions will have a grey shield in the UI + // ("Authenticity of this message cannot be guaranteed"). + // + // However, we don't want to bluntly mark all sessions as `imported` during migration + // because users will suddenly start seeing all their historic messages decorated with a + // grey shield, which would be seen as a non-actionable regression. + // + // In the legacy crypto stack, the flag encoding similar information was called + // `InboundGroupSessionData.untrusted`. The value of this flag was set as follows: + // + // - For outbound Megolm sessions created by our own device, `untrusted` is `undefined`. + // - For Megolm sessions received via a `m.room_key` to-device message, `untrusted` is + // `undefined`. + // - For Megolm sessions received via a `m.forwarded_room_key` to-device message, + // `untrusted` is `true`. + // - For Megolm sessions imported from a (v1 asymmetric / "legacy") server-side key + // backup, `untrusted` is `true`. + // - For Megolm sessions imported from a file, untrusted is `undefined`. + // + // The main difference between the legacy crypto stack and the Rust crypto stack is that + // the Rust stack considers sessions imported from a file as `imported` (not + // authenticated). This is because the Megolm session export file format does not + // encode this authenticity information. + // + // Given this migration is only a one-time thing, we make a concession to accept the + // loss of information in this case, to avoid degrading UX in a non-actionable way. + pickledSession.imported = sessionData.untrusted === true; migrationData.push(pickledSession); } From 0c0775c0bf838fdddf98d95da088341dafaf1608 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 1 Feb 2024 17:48:44 +0000 Subject: [PATCH 030/595] Saner releases: improve drafts, handle offcycle releases, bump downstream projects (#4044) * Switch prepublishOnly to prepack to catch errors earlier Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Fix merge-release-notes.js parsing Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Improve release drafts and make release-drafter handle offcycle releases better Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Tweak release-drafter config Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Automate downstream dependency bumping Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Remove duplicated docs Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Delint Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/release-drafter.yml | 4 + .../workflows/release-drafter-workflow.yml | 86 +++++++++++++ .github/workflows/release-drafter.yml | 16 +-- .github/workflows/release-make.yml | 117 +++++++----------- .github/workflows/release-npm.yml | 2 + .github/workflows/release.yml | 1 + docs/SUMMARY.md | 1 - docs/release.md | 24 ---- package.json | 4 +- scripts/release/merge-release-notes.js | 37 +++++- yarn.lock | 12 +- 11 files changed, 180 insertions(+), 124 deletions(-) create mode 100644 .github/workflows/release-drafter-workflow.yml delete mode 100644 docs/release.md diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml index 102313bdde8..314d1f15065 100644 --- a/.github/release-drafter.yml +++ b/.github/release-drafter.yml @@ -22,10 +22,14 @@ version-resolver: exclude-labels: - "T-Task" - "X-Reverted" + - "backport staging" exclude-contributors: - "RiotRobot" template: | $CHANGES +no-changes-template: "" prerelease: true prerelease-identifier: rc include-pre-releases: false +stable-ref: master +staging-ref: staging diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml new file mode 100644 index 00000000000..798d07791d1 --- /dev/null +++ b/.github/workflows/release-drafter-workflow.yml @@ -0,0 +1,86 @@ +name: Release Drafter +on: + workflow_call: + inputs: + include-changes: + description: Project to include changelog entries from in this release. + type: string + required: false +concurrency: release-drafter-action +jobs: + draft: + runs-on: ubuntu-latest + steps: + - name: 🧮 Checkout code + uses: actions/checkout@v4 + with: + ref: staging + fetch-depth: 0 + + - uses: actions/setup-node@v4 + with: + node-version-file: package.json + cache: "yarn" + + - name: Install Deps + run: "yarn install --frozen-lockfile" + + - uses: t3chguy/release-drafter@105e541c2c3d857f032bd522c0764694758fabad + id: draft-release + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + disable-autolabeler: true + + - name: Get actions scripts + uses: actions/checkout@v4 + with: + repository: matrix-org/matrix-js-sdk + persist-credentials: false + path: .action-repo + sparse-checkout: | + .github/actions + scripts/release + + - name: Ingest upstream changes + if: inputs.include-changes + uses: actions/github-script@v7 + env: + RELEASE_ID: ${{ steps.release.outputs.id }} + DEPENDENCY: ${{ inputs.include-changes }} + VERSION: ${{ steps.draft-release.outputs.tag_name }} + with: + retries: 3 + script: | + const { RELEASE_ID: releaseId, DEPENDENCY, VERSION } = process.env; + const { owner, repo } = context.repo; + const script = require("./.action-repo/scripts/release/merge-release-notes.js"); + + let deps = []; + if (DEPENDENCY.includes("/")) { + deps.push(DEPENDENCY.replace("$VERSION", VERSION)) + } else { + const fromVersion = JSON.parse(await exec.exec("git show origin/master:package.json")).dependencies[DEPENDENCY]; + const toVersion = require("./package.json").dependencies[DEPENDENCY]; + + if (toVersion.endsWith("#develop")) { + core.warning(`${DEPENDENCY} will be kept at ${fromVersion}`, { title: "Develop dependency found" }); + } else { + deps.push([DEPENDENCY, fromVersion, toVersion]); + } + } + + if (deps.length) { + const notes = await script({ + github, + releaseId, + dependencies: deps, + }); + + await github.rest.repos.updateRelease({ + owner, + repo, + release_id: releaseId, + body: notes, + }); + } diff --git a/.github/workflows/release-drafter.yml b/.github/workflows/release-drafter.yml index 4d889f45614..d8afa80a9f9 100644 --- a/.github/workflows/release-drafter.yml +++ b/.github/workflows/release-drafter.yml @@ -2,20 +2,8 @@ name: Release Drafter on: push: branches: [staging] - workflow_dispatch: - inputs: - previous-version: - description: What release to use as a base for release note purposes - required: false - type: string + workflow_dispatch: {} concurrency: ${{ github.workflow }} jobs: draft: - runs-on: ubuntu-latest - steps: - - uses: release-drafter/release-drafter@e64b19c4c46173209ed9f2e5a2f4ca7de89a0e86 # v5 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - disable-autolabeler: true - previous-version: ${{ inputs.previous-version }} + uses: matrix-org/matrix-js-sdk/.github/workflows/release-drafter-workflow.yml@develop diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index b299f9db6cc..ff66a6c6d3b 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -20,10 +20,8 @@ on: description: Publish to npm type: boolean default: false - dependencies: - description: | - List of dependencies to update in `npm-dep=version` format. - `version` can be `"current"` to leave it at the current version. + downstreams: + description: List of github projects (owner/repo) which should have their dependency bumped to the newly released version (in JSON string array string syntax) type: string required: false include-changes: @@ -88,17 +86,11 @@ jobs: id: prepare run: | echo "VERSION=$VERSION" >> $GITHUB_ENV - { - echo "RELEASE_NOTES<> $GITHUB_ENV HAS_DIST=0 jq -e .scripts.dist package.json >/dev/null 2>&1 && HAS_DIST=1 echo "has-dist-script=$HAS_DIST" >> $GITHUB_OUTPUT env: - BODY: ${{ steps.release.outputs.body }} VERSION: ${{ steps.release.outputs.tag_name }} - name: Finalise version @@ -132,76 +124,23 @@ jobs: - name: Install dependencies run: "yarn install --frozen-lockfile" - - name: Update dependencies - id: update-dependencies - if: inputs.dependencies - run: | - UPDATED=() - while IFS= read -r DEPENDENCY; do - [ -z "$DEPENDENCY" ] && continue - IFS="=" read -r PACKAGE UPDATE_VERSION <<< "$DEPENDENCY" - - CURRENT_VERSION=$(cat package.json | jq -r .dependencies[\"$PACKAGE\"]) - echo "Current $PACKAGE version is $CURRENT_VERSION" - - if [ "$CURRENT_VERSION" == "null" ] - then - echo "Unable to find $PACKAGE in package.json" - exit 1 - fi - - if [ "$UPDATE_VERSION" == "current" ] || [ "$UPDATE_VERSION" == "$CURRENT_VERSION" ] - then - echo "Not updating dependency $PACKAGE" - continue - fi - - echo "Upgrading $PACKAGE to $UPDATE_VERSION..." - yarn upgrade "$PACKAGE@$UPDATE_VERSION" --exact - git add -u - git commit -m "Upgrade $PACKAGE to $UPDATE_VERSION" - UPDATED+=("$PACKAGE") - done <<< "$DEPENDENCIES" - - JSON=$(jq --compact-output --null-input '$ARGS.positional' --args -- "${UPDATED[@]}") - echo "updated=$JSON" >> $GITHUB_OUTPUT - env: - DEPENDENCIES: ${{ inputs.dependencies }} - - - name: Prevent develop dependencies - if: inputs.dependencies + - name: Handle develop dependencies run: | ret=0 - cat package.json | jq '.dependencies[]' | grep -q '#develop' || ret=$? - if [ "$ret" -eq 0 ]; then - echo "package.json contains develop dependencies. Refusing to release." - exit - fi + cat package.json | jq -r '.dependencies | to_entries | .[] | "\(.key) \(.value)"' | grep '#develop$' | while read -r dep ; do + IFS=" " + PACKAGE=${dep[0]} + VERSION=${dep[1]} + + echo "::warning title=Develop dependency found::$DEPENDENCY will be kept at $VERSION" + yarn upgrade "$PACKAGE@$VERSION" --exact + git add -u + git commit -m "Keep $PACKAGE at $VERSION" + done - name: Bump package.json version run: yarn version --no-git-tag-version --new-version "${VERSION#v}" - - name: Ingest upstream changes - if: | - inputs.include-changes && - (!inputs.dependencies || contains(fromJSON(steps.update-dependencies.outputs.updated), inputs.include-changes)) - uses: actions/github-script@v7 - env: - RELEASE_ID: ${{ steps.release.outputs.id }} - DEPENDENCY: ${{ inputs.include-changes }} - with: - retries: 3 - script: | - const { RELEASE_ID: releaseId, DEPENDENCY, VERSION } = process.env; - const { owner, repo } = context.repo; - const script = require("./.action-repo/scripts/release/merge-release-notes.js"); - const notes = await script({ - github, - releaseId, - dependencies: [DEPENDENCY.replace("$VERSION", VERSION)], - }); - core.exportVariable("RELEASE_NOTES", notes); - - name: Add to CHANGELOG.md if: inputs.final run: | @@ -219,6 +158,8 @@ jobs: cat CHANGELOG.md.old >> CHANGELOG.md rm CHANGELOG.md.old git add CHANGELOG.md + env: + RELEASE_NOTES: ${{ steps.release.outputs.body }} - name: Run pre-release script to update package.json fields run: | @@ -351,3 +292,31 @@ jobs: filter-labels: X-Upcoming-Release-Blocker remove-labels: X-Upcoming-Release-Blocker add-labels: X-Release-Blocker + + bump-downstreams: + name: Update npm dependency in downstream projects + needs: npm + runs-on: ubuntu-latest + if: inputs.downstreams + strategy: + matrix: + repo: ${{ fromJSON(inputs.downstreams) }} + steps: + - name: Checkout Element Desktop + uses: actions/checkout@v4 + if: inputs.element-desktop + with: + repository: ${{ matrix.repo }} + ref: staging + token: ${{ secrets.ELEMENT_BOT_TOKEN }} + + - name: Bump dependency + env: + DEPENDENCY: ${{ needs.npm.outputs.id }} + run: | + git config --global user.email "releases@riot.im" + git config --global user.name "RiotRobot" + yarn upgrade "$DEPENDENCY" --exact + git add package.json yarn.lock + git commit -am"Upgrade dependency to $DEPENDENCY" + git push origin staging diff --git a/.github/workflows/release-npm.yml b/.github/workflows/release-npm.yml index efba1d96774..baca1c4045f 100644 --- a/.github/workflows/release-npm.yml +++ b/.github/workflows/release-npm.yml @@ -8,6 +8,8 @@ jobs: npm: name: Publish to npm runs-on: ubuntu-latest + outputs: + id: ${{ steps.npm-publish.outputs.id }} steps: - name: 🧮 Checkout code uses: actions/checkout@v4 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index fccff0d61dc..6375857800c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -28,6 +28,7 @@ jobs: with: final: ${{ inputs.mode == 'final' }} npm: ${{ inputs.npm }} + downstreams: '["matrix-org/matrix-react-sdk", "element-hq/element-web"]' docs: name: Publish Documentation diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index 8a1d7686eb2..e19198e62d0 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -4,6 +4,5 @@ # Deep dive -- [Release Process](release.md) - [Storage notes](storage-notes.md) - [Unverified devices](warning-on-unverified-devices.md) diff --git a/docs/release.md b/docs/release.md deleted file mode 100644 index 7520abdc6e2..00000000000 --- a/docs/release.md +++ /dev/null @@ -1,24 +0,0 @@ -# Release Process - -## Hotfix and off-cycle releases - -1. Prepare the `staging` branch by using the backport automation and manually merging -2. Go to [Releasing](#Releasing) - -## Release candidates - -1. Prepare the `staging` branch by running the [branch cut automation](https://github.com/vector-im/element-web/actions/workflows/release_prepare.yml) -2. Go to [Releasing](#Releasing) - -## Releasing - -1. Open the [Releases page](https://github.com/matrix-org/matrix-js-sdk/releases) and inspect the draft release there -2. Make any modifications to the release notes and tag/version as required -3. Run [workflow](https://github.com/matrix-org/matrix-js-sdk/actions/workflows/release.yml) with the type set appropriately - -## Artifacts - -Releasing the Matrix JS SDK has just two artifacts: - -- Package published to [npm](https://github.com/matrix-org/matrix-js-sdk) -- Docs published to [Github Pages](https://matrix-org.github.io/matrix-js-sdk/) diff --git a/package.json b/package.json index 0ab62af76ea..3cd5c875e07 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.2.0", + "version": "31.3.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -93,7 +93,7 @@ "@types/uuid": "9", "@typescript-eslint/eslint-plugin": "^6.0.0", "@typescript-eslint/parser": "^6.0.0", - "allchange": "^1.0.6", + "allchange": "^1.3.0", "babel-jest": "^29.0.0", "debug": "^4.3.4", "domexception": "^4.0.0", diff --git a/scripts/release/merge-release-notes.js b/scripts/release/merge-release-notes.js index 7b5e9f8c451..1a0db0c817c 100755 --- a/scripts/release/merge-release-notes.js +++ b/scripts/release/merge-release-notes.js @@ -2,6 +2,31 @@ const fs = require("fs"); +// Dependency can be the name of an entry in package.json, in which case the owner, repo & version will be looked up in its own package.json +// Or it can be a string in the form owner/repo@tag +// Or it can be a tuple of dependency, from version, to version, in which case a list of releases in that range (to inclusive) will be returned +async function getReleases(github, dependency) { + if (Array.isArray(dependency)) { + const [dep, fromVersion, toVersion] = dependency; + const upstreamPackageJson = getDependencyPackageJson(dep); + const [owner, repo] = upstreamPackageJson.repository.url.split("/").slice(-2); + + const response = await github.rest.repos.listReleases({ + owner, + repo, + per_page: 100, + }); + const releases = response.data.filter((release) => !release.draft && !release.prerelease); + + const fromVersionIndex = releases.findIndex((release) => release.tag_name === `v${fromVersion}`); + const toVersionIndex = releases.findIndex((release) => release.tag_name === `v${toVersion}`); + + return releases.slice(toVersionIndex, fromVersionIndex); + } + + return [await getRelease(github, dependency)]; +} + async function getRelease(github, dependency) { let owner; let repo; @@ -11,7 +36,7 @@ async function getRelease(github, dependency) { repo = dependency.split("/")[1].split("@")[0]; tag = dependency.split("@")[1]; } else { - const upstreamPackageJson = JSON.parse(fs.readFileSync(`./node_modules/${dependency}/package.json`, "utf8")); + const upstreamPackageJson = getDependencyPackageJson(dependency); [owner, repo] = upstreamPackageJson.repository.url.split("/").slice(-2); tag = `v${upstreamPackageJson.version}`; } @@ -24,6 +49,10 @@ async function getRelease(github, dependency) { return response.data; } +function getDependencyPackageJson(dependency) { + return JSON.parse(fs.readFileSync(`./node_modules/${dependency}/package.json`, "utf8")); +} + const HEADING_PREFIX = "## "; const categories = [ @@ -56,8 +85,10 @@ const main = async ({ github, releaseId, dependencies }) => { const sections = Object.fromEntries(categories.map((cat) => [cat, []])); for (const dependency of dependencies) { - const release = await getRelease(github, dependency); - parseReleaseNotes(release.body, sections); + const releases = await getReleases(github, dependency); + for (const release of releases) { + parseReleaseNotes(release.body, sections); + } } const { data: release } = await github.rest.repos.getRelease({ diff --git a/yarn.lock b/yarn.lock index dabeb0df0a1..12eb0946d3e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2275,10 +2275,10 @@ ajv@^6.12.4, ajv@~6.12.6: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -allchange@^1.0.6: - version "1.1.0" - resolved "https://registry.yarnpkg.com/allchange/-/allchange-1.1.0.tgz#f8fa129e4b40c0b0a2c072c530f2324c6590e208" - integrity sha512-brDWf2feuL3FRyivSyC6AKOgpX+bYgs1Z7+ZmLti6PnBdZgIjRSnKvlc68N8+1UX2rCISx2I+XuUvE3/GJNG2A== +allchange@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/allchange/-/allchange-1.3.0.tgz#0d38e76e069eacd0279fb9a171770426d8e57d37" + integrity sha512-orTQYJQzY98ZNvh9VFpBpxLry9obXvDOYuQZXDnTL/YJL3sphgr93norJrR8Qz8mNlJ3yEm1YS+aEEbC3/3Wjg== dependencies: "@actions/core" "^1.4.0" "@actions/github" "^5.0.0" @@ -2287,7 +2287,7 @@ allchange@^1.0.6: js-yaml "^4.1.0" loglevel "^1.7.1" semver "^7.3.5" - yargs "^17.0.1" + yargs "^17.5.1" another-json@^0.2.0: version "0.2.0" @@ -6719,7 +6719,7 @@ yargs-parser@^21.1.1: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== -yargs@^17.0.1, yargs@^17.3.1, yargs@^17.5.1: +yargs@^17.3.1, yargs@^17.5.1: version "17.7.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== From f8c3973efd193d92de691fa16e6ca72dd3ceaf9a Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 14:29:43 +0000 Subject: [PATCH 031/595] Add waits for post-release steps for improved visibility (#4045) --- .github/workflows/release-make.yml | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index ff66a6c6d3b..059418d9a95 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -276,15 +276,16 @@ jobs: secrets: NPM_TOKEN: ${{ secrets.NPM_TOKEN }} - update-labels: - name: Advance release blocker labels + post-release: + name: Post release steps needs: release runs-on: ubuntu-latest steps: - id: repository run: echo "REPO=${GITHUB_REPOSITORY#*/}" >> $GITHUB_OUTPUT - - uses: garganshu/github-label-updater@3770d15ebfed2fe2cb06a241047bc340f774a7d1 # v1.0.0 + - name: Advance release blocker labels + uses: garganshu/github-label-updater@3770d15ebfed2fe2cb06a241047bc340f774a7d1 # v1.0.0 with: owner: ${{ github.repository_owner }} repo: ${{ steps.repository.outputs.REPO }} @@ -293,6 +294,16 @@ jobs: remove-labels: X-Upcoming-Release-Blocker add-labels: X-Release-Blocker + - name: Wait for master->develop gitflow merge + if: inputs.final + uses: t3chguy/wait-on-check-action@18541021811b56544d90e0f073401c2b99e249d6 # fork + with: + ref: master + repo-token: ${{ secrets.GITHUB_TOKEN }} + wait-interval: 10 + check-name: merge + allowed-conclusions: success + bump-downstreams: name: Update npm dependency in downstream projects needs: npm From c4f00895b1239fe671662e3e5f63503c650527a0 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 14:38:34 +0000 Subject: [PATCH 032/595] Update release-drafter.yml --- .github/release-drafter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml index 314d1f15065..118da50b112 100644 --- a/.github/release-drafter.yml +++ b/.github/release-drafter.yml @@ -27,7 +27,7 @@ exclude-contributors: - "RiotRobot" template: | $CHANGES -no-changes-template: "" +no-changes-template: " " prerelease: true prerelease-identifier: rc include-pre-releases: false From 7da620c5be086fe65f86525cf3e3e1446749c469 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 14:40:28 +0000 Subject: [PATCH 033/595] Update release-drafter.yml --- .github/release-drafter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml index 314d1f15065..5775641786b 100644 --- a/.github/release-drafter.yml +++ b/.github/release-drafter.yml @@ -27,7 +27,7 @@ exclude-contributors: - "RiotRobot" template: | $CHANGES -no-changes-template: "" +#no-changes-template: "" prerelease: true prerelease-identifier: rc include-pre-releases: false From 6bdb0878830f06bd7dc38c6bdc5bc4f97ee27991 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 14:40:39 +0000 Subject: [PATCH 034/595] Update release-drafter.yml --- .github/release-drafter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml index 118da50b112..5775641786b 100644 --- a/.github/release-drafter.yml +++ b/.github/release-drafter.yml @@ -27,7 +27,7 @@ exclude-contributors: - "RiotRobot" template: | $CHANGES -no-changes-template: " " +#no-changes-template: "" prerelease: true prerelease-identifier: rc include-pre-releases: false From c81199b9d573f11a218be0a127cc25b18f82192c Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Fri, 2 Feb 2024 14:45:44 +0000 Subject: [PATCH 035/595] v31.3.0-rc.0 --- package.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 3cd5c875e07..a97e7f6d6bb 100644 --- a/package.json +++ b/package.json @@ -30,8 +30,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,5 +132,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From 9675a1584d970d7fdf4c30212a68eaab9e60c457 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 14:48:19 +0000 Subject: [PATCH 036/595] Update release-make.yml --- .github/workflows/release-make.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index 059418d9a95..a4706e179a4 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -313,9 +313,7 @@ jobs: matrix: repo: ${{ fromJSON(inputs.downstreams) }} steps: - - name: Checkout Element Desktop - uses: actions/checkout@v4 - if: inputs.element-desktop + - uses: actions/checkout@v4 with: repository: ${{ matrix.repo }} ref: staging From c89f220e52c637991bfe03a2f9952d456a83dea7 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Fri, 2 Feb 2024 14:50:08 +0000 Subject: [PATCH 037/595] v31.3.0-rc.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a97e7f6d6bb..cc7758ed078 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.3.0-rc.0", + "version": "31.3.0-rc.1", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 6edf3990f64fb539a9201220e4cb16460eaa7a69 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 14:51:49 +0000 Subject: [PATCH 038/595] Update release-make.yml --- .github/workflows/release-make.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index 059418d9a95..a4706e179a4 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -313,9 +313,7 @@ jobs: matrix: repo: ${{ fromJSON(inputs.downstreams) }} steps: - - name: Checkout Element Desktop - uses: actions/checkout@v4 - if: inputs.element-desktop + - uses: actions/checkout@v4 with: repository: ${{ matrix.repo }} ref: staging From 4f63b4713434730a2a549769785a516cae024221 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Fri, 2 Feb 2024 14:53:13 +0000 Subject: [PATCH 039/595] v31.3.0-rc.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index cc7758ed078..fd811f2a08c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.3.0-rc.1", + "version": "31.3.0-rc.2", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 45b02fed5a303847732488dfabdcfe97415fb6cc Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 14:59:30 +0000 Subject: [PATCH 040/595] Update release-npm.yml --- .github/workflows/release-npm.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/release-npm.yml b/.github/workflows/release-npm.yml index baca1c4045f..583848ee9d2 100644 --- a/.github/workflows/release-npm.yml +++ b/.github/workflows/release-npm.yml @@ -4,6 +4,10 @@ on: secrets: NPM_TOKEN: required: true + outputs: + id: + description: "The npm package@version string we published" + value: ${{ jobs.npm.outputs.id }} jobs: npm: name: Publish to npm From 0d5b6138aecc7386e83c843f9f81c5e1a985cce9 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Fri, 2 Feb 2024 15:00:42 +0000 Subject: [PATCH 041/595] v31.3.0-rc.3 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index fd811f2a08c..0c2cb0c64e0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.3.0-rc.2", + "version": "31.3.0-rc.3", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From f5e0b3007b62d581d4bfeccfe93a9cf0ca5b9c9d Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 15:18:37 +0000 Subject: [PATCH 042/595] Update release-drafter-workflow.yml --- .github/workflows/release-drafter-workflow.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 798d07791d1..83d005a1f61 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -60,7 +60,14 @@ jobs: if (DEPENDENCY.includes("/")) { deps.push(DEPENDENCY.replace("$VERSION", VERSION)) } else { - const fromVersion = JSON.parse(await exec.exec("git show origin/master:package.json")).dependencies[DEPENDENCY]; + let fromVersionJsonStr = ""; + await exec.exec("git show origin/master:package.json", { + stdout: (data) => { + fromVersionJsonStr += data.toString(); + }, + }); + + const fromVersion = JSON.parse(fromVersionJsonStr).dependencies[DEPENDENCY]; const toVersion = require("./package.json").dependencies[DEPENDENCY]; if (toVersion.endsWith("#develop")) { From eebf40590fceeacc43470bfe052317866915b55a Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 15:21:54 +0000 Subject: [PATCH 043/595] Update release-drafter-workflow.yml --- .github/workflows/release-drafter-workflow.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 83d005a1f61..b71a4bdaa83 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -61,7 +61,7 @@ jobs: deps.push(DEPENDENCY.replace("$VERSION", VERSION)) } else { let fromVersionJsonStr = ""; - await exec.exec("git show origin/master:package.json", { + await exec.exec("git", ["show", "origin/master:package.json"], { stdout: (data) => { fromVersionJsonStr += data.toString(); }, From 8a2cd3f43c64acb3b3b0f30c34d96386f59de12c Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 15:31:36 +0000 Subject: [PATCH 044/595] Update release-drafter-workflow.yml --- .github/workflows/release-drafter-workflow.yml | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index b71a4bdaa83..9e65e01cf8a 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -60,14 +60,7 @@ jobs: if (DEPENDENCY.includes("/")) { deps.push(DEPENDENCY.replace("$VERSION", VERSION)) } else { - let fromVersionJsonStr = ""; - await exec.exec("git", ["show", "origin/master:package.json"], { - stdout: (data) => { - fromVersionJsonStr += data.toString(); - }, - }); - - const fromVersion = JSON.parse(fromVersionJsonStr).dependencies[DEPENDENCY]; + const fromVersion = JSON.parse((await github.request(`https://raw.githubusercontent.com/${context.repo}/master/package.json`)).data).dependencies[DEPENDENCY]; const toVersion = require("./package.json").dependencies[DEPENDENCY]; if (toVersion.endsWith("#develop")) { From 24174c92338cd39d4ceb37d78e63c27274c07284 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 15:33:38 +0000 Subject: [PATCH 045/595] Update release-drafter-workflow.yml --- .github/workflows/release-drafter-workflow.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 9e65e01cf8a..93c6cd76c6d 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -60,7 +60,7 @@ jobs: if (DEPENDENCY.includes("/")) { deps.push(DEPENDENCY.replace("$VERSION", VERSION)) } else { - const fromVersion = JSON.parse((await github.request(`https://raw.githubusercontent.com/${context.repo}/master/package.json`)).data).dependencies[DEPENDENCY]; + const fromVersion = JSON.parse((await github.request(`https://raw.githubusercontent.com/${owner}/${repo}/master/package.json`)).data).dependencies[DEPENDENCY]; const toVersion = require("./package.json").dependencies[DEPENDENCY]; if (toVersion.endsWith("#develop")) { From eec5040bd08a93bd0d3ae7ad8065d737dd3ca546 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 15:36:57 +0000 Subject: [PATCH 046/595] Update release-drafter-workflow.yml --- .github/workflows/release-drafter-workflow.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 93c6cd76c6d..56cd0fbe3d2 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -46,6 +46,7 @@ jobs: if: inputs.include-changes uses: actions/github-script@v7 env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} RELEASE_ID: ${{ steps.release.outputs.id }} DEPENDENCY: ${{ inputs.include-changes }} VERSION: ${{ steps.draft-release.outputs.tag_name }} From 1e7bc2f31c8a217c83fb8fa47d8332c243e815a4 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 15:41:16 +0000 Subject: [PATCH 047/595] Use ELEMENT_BOT_TOKEN for release-drafter-workflow.yml Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-drafter-workflow.yml | 5 ++++- .github/workflows/release-drafter.yml | 2 ++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 56cd0fbe3d2..0d784ee6e99 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -1,6 +1,9 @@ name: Release Drafter on: workflow_call: + secrets: + ELEMENT_BOT_TOKEN: + required: true inputs: include-changes: description: Project to include changelog entries from in this release. @@ -46,11 +49,11 @@ jobs: if: inputs.include-changes uses: actions/github-script@v7 env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} RELEASE_ID: ${{ steps.release.outputs.id }} DEPENDENCY: ${{ inputs.include-changes }} VERSION: ${{ steps.draft-release.outputs.tag_name }} with: + github-token: ${{ secrets.ELEMENT_BOT_TOKEN }} retries: 3 script: | const { RELEASE_ID: releaseId, DEPENDENCY, VERSION } = process.env; diff --git a/.github/workflows/release-drafter.yml b/.github/workflows/release-drafter.yml index d8afa80a9f9..da08f8ecf78 100644 --- a/.github/workflows/release-drafter.yml +++ b/.github/workflows/release-drafter.yml @@ -7,3 +7,5 @@ concurrency: ${{ github.workflow }} jobs: draft: uses: matrix-org/matrix-js-sdk/.github/workflows/release-drafter-workflow.yml@develop + secrets: + ELEMENT_BOT_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }} From a2a25e71acab85e5e4af2392d4a0710459abfc4e Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 15:44:43 +0000 Subject: [PATCH 048/595] Revert "Use ELEMENT_BOT_TOKEN for release-drafter-workflow.yml" This reverts commit 1e7bc2f31c8a217c83fb8fa47d8332c243e815a4. --- .github/workflows/release-drafter-workflow.yml | 5 +---- .github/workflows/release-drafter.yml | 2 -- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 0d784ee6e99..56cd0fbe3d2 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -1,9 +1,6 @@ name: Release Drafter on: workflow_call: - secrets: - ELEMENT_BOT_TOKEN: - required: true inputs: include-changes: description: Project to include changelog entries from in this release. @@ -49,11 +46,11 @@ jobs: if: inputs.include-changes uses: actions/github-script@v7 env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} RELEASE_ID: ${{ steps.release.outputs.id }} DEPENDENCY: ${{ inputs.include-changes }} VERSION: ${{ steps.draft-release.outputs.tag_name }} with: - github-token: ${{ secrets.ELEMENT_BOT_TOKEN }} retries: 3 script: | const { RELEASE_ID: releaseId, DEPENDENCY, VERSION } = process.env; diff --git a/.github/workflows/release-drafter.yml b/.github/workflows/release-drafter.yml index da08f8ecf78..d8afa80a9f9 100644 --- a/.github/workflows/release-drafter.yml +++ b/.github/workflows/release-drafter.yml @@ -7,5 +7,3 @@ concurrency: ${{ github.workflow }} jobs: draft: uses: matrix-org/matrix-js-sdk/.github/workflows/release-drafter-workflow.yml@develop - secrets: - ELEMENT_BOT_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }} From 20d26db37d58246ac77f53045752ed344073e7af Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 15:48:58 +0000 Subject: [PATCH 049/595] Roll back to github-script v6 due to bugs Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-drafter-workflow.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 56cd0fbe3d2..6394d719c5e 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -44,7 +44,7 @@ jobs: - name: Ingest upstream changes if: inputs.include-changes - uses: actions/github-script@v7 + uses: actions/github-script@v6 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} RELEASE_ID: ${{ steps.release.outputs.id }} From 7ce243110f227f7caea7c80ac2eba12b49179397 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 15:55:14 +0000 Subject: [PATCH 050/595] github-script is broken =( Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-drafter-workflow.yml | 2 +- scripts/release/merge-release-notes.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 6394d719c5e..56cd0fbe3d2 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -44,7 +44,7 @@ jobs: - name: Ingest upstream changes if: inputs.include-changes - uses: actions/github-script@v6 + uses: actions/github-script@v7 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} RELEASE_ID: ${{ steps.release.outputs.id }} diff --git a/scripts/release/merge-release-notes.js b/scripts/release/merge-release-notes.js index 1a0db0c817c..ceb36c5f01e 100755 --- a/scripts/release/merge-release-notes.js +++ b/scripts/release/merge-release-notes.js @@ -11,7 +11,7 @@ async function getReleases(github, dependency) { const upstreamPackageJson = getDependencyPackageJson(dep); const [owner, repo] = upstreamPackageJson.repository.url.split("/").slice(-2); - const response = await github.rest.repos.listReleases({ + const response = await github.request("GET /repos/{owner}/{repo}/releases?per_page={per_page}", { owner, repo, per_page: 100, From c6eda551103ebca1daa51eefcd23c25705733a06 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 15:58:48 +0000 Subject: [PATCH 051/595] Fix badly typed output Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-drafter-workflow.yml | 2 +- scripts/release/merge-release-notes.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 56cd0fbe3d2..ffb357304e6 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -47,7 +47,7 @@ jobs: uses: actions/github-script@v7 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - RELEASE_ID: ${{ steps.release.outputs.id }} + RELEASE_ID: ${{ steps.draft-release.outputs.id }} DEPENDENCY: ${{ inputs.include-changes }} VERSION: ${{ steps.draft-release.outputs.tag_name }} with: diff --git a/scripts/release/merge-release-notes.js b/scripts/release/merge-release-notes.js index ceb36c5f01e..1a0db0c817c 100755 --- a/scripts/release/merge-release-notes.js +++ b/scripts/release/merge-release-notes.js @@ -11,7 +11,7 @@ async function getReleases(github, dependency) { const upstreamPackageJson = getDependencyPackageJson(dep); const [owner, repo] = upstreamPackageJson.repository.url.split("/").slice(-2); - const response = await github.request("GET /repos/{owner}/{repo}/releases?per_page={per_page}", { + const response = await github.rest.repos.listReleases({ owner, repo, per_page: 100, From d2753a9aea076190897b138a5c43fc2c6aff4c09 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 16:03:52 +0000 Subject: [PATCH 052/595] Debug logging Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-drafter-workflow.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index ffb357304e6..09e3164d76d 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -77,6 +77,8 @@ jobs: releaseId, dependencies: deps, }); + console.log("Notes:"); + console.log(notes); await github.rest.repos.updateRelease({ owner, From 5e9d2e064e2b06b3bb86ebe572247a288c65823a Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 16:07:20 +0000 Subject: [PATCH 053/595] Debug logging Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-drafter-workflow.yml | 2 -- scripts/release/merge-release-notes.js | 4 +++- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 09e3164d76d..ffb357304e6 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -77,8 +77,6 @@ jobs: releaseId, dependencies: deps, }); - console.log("Notes:"); - console.log(notes); await github.rest.repos.updateRelease({ owner, diff --git a/scripts/release/merge-release-notes.js b/scripts/release/merge-release-notes.js index 1a0db0c817c..a8f5ad13d5d 100755 --- a/scripts/release/merge-release-notes.js +++ b/scripts/release/merge-release-notes.js @@ -83,6 +83,8 @@ const main = async ({ github, releaseId, dependencies }) => { const { GITHUB_REPOSITORY } = process.env; const [owner, repo] = GITHUB_REPOSITORY.split("/"); + console.log("@@", { releaseId, dependencies, owner, repo }); + const sections = Object.fromEntries(categories.map((cat) => [cat, []])); for (const dependency of dependencies) { const releases = await getReleases(github, dependency); @@ -126,7 +128,7 @@ if (require.main === module) { process.exit(1); } const [releaseId, ...dependencies] = process.argv.slice(2); - main({ github, releaseId, dependencies }).then((output) => { + main({ github, releaseId, dependencies: ["matrix-react-sdk"] }).then((output) => { // eslint-disable-next-line no-console console.log(output); }); From b8fb10a1d1083a1f504dc32088efcc7447ce74d7 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 16:09:44 +0000 Subject: [PATCH 054/595] Fix merge-release-notes.js Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- scripts/release/merge-release-notes.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/scripts/release/merge-release-notes.js b/scripts/release/merge-release-notes.js index a8f5ad13d5d..0ce98c630b4 100755 --- a/scripts/release/merge-release-notes.js +++ b/scripts/release/merge-release-notes.js @@ -16,7 +16,10 @@ async function getReleases(github, dependency) { repo, per_page: 100, }); - const releases = response.data.filter((release) => !release.draft && !release.prerelease); + // Only include non-draft & non-prerelease releases, unless the to-release is a pre-release, include that one + const releases = response.data.filter( + (release) => !release.draft && (!release.prerelease || release.tag_name === `v${toVersion}`), + ); const fromVersionIndex = releases.findIndex((release) => release.tag_name === `v${fromVersion}`); const toVersionIndex = releases.findIndex((release) => release.tag_name === `v${toVersion}`); @@ -83,8 +86,6 @@ const main = async ({ github, releaseId, dependencies }) => { const { GITHUB_REPOSITORY } = process.env; const [owner, repo] = GITHUB_REPOSITORY.split("/"); - console.log("@@", { releaseId, dependencies, owner, repo }); - const sections = Object.fromEntries(categories.map((cat) => [cat, []])); for (const dependency of dependencies) { const releases = await getReleases(github, dependency); From ca835a7cf762b44c9468782144ea3df973f278aa Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 16:22:15 +0000 Subject: [PATCH 055/595] Work around github actions id clash issue on `release` Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-make.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index a4706e179a4..bc54cd6150c 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -58,7 +58,7 @@ jobs: fingerprint: ${{ inputs.gpg-fingerprint }} - name: Get draft release - id: release + id: draft-release uses: cardinalby/git-get-release-action@cedef2faf69cb7c55b285bad07688d04430b7ada # v1 env: GITHUB_TOKEN: ${{ github.token }} @@ -91,7 +91,7 @@ jobs: jq -e .scripts.dist package.json >/dev/null 2>&1 && HAS_DIST=1 echo "has-dist-script=$HAS_DIST" >> $GITHUB_OUTPUT env: - VERSION: ${{ steps.release.outputs.tag_name }} + VERSION: ${{ steps.draft-release.outputs.tag_name }} - name: Finalise version if: inputs.final @@ -159,7 +159,7 @@ jobs: rm CHANGELOG.md.old git add CHANGELOG.md env: - RELEASE_NOTES: ${{ steps.release.outputs.body }} + RELEASE_NOTES: ${{ steps.draft-release.outputs.body }} - name: Run pre-release script to update package.json fields run: | @@ -178,7 +178,7 @@ jobs: uses: ./.action-repo/.github/actions/upload-release-assets with: gpg-fingerprint: ${{ inputs.gpg-fingerprint }} - upload-url: ${{ steps.release.outputs.upload_url }} + upload-url: ${{ steps.draft-release.outputs.upload_url }} asset-path: ${{ inputs.asset-path }} - name: Create signed tag @@ -193,7 +193,7 @@ jobs: uses: ./.action-repo/.github/actions/sign-release-tarball with: gpg-fingerprint: ${{ inputs.gpg-fingerprint }} - upload-url: ${{ steps.release.outputs.upload_url }} + upload-url: ${{ steps.draft-release.outputs.upload_url }} # We defer pushing changes until after the release assets are built, # signed & uploaded to improve the atomicity of this action. @@ -214,7 +214,7 @@ jobs: if: inputs.expected-asset-count uses: actions/github-script@v7 env: - RELEASE_ID: ${{ steps.release.outputs.id }} + RELEASE_ID: ${{ steps.draft-release.outputs.id }} EXPECTED_ASSET_COUNT: ${{ inputs.expected-asset-count }} with: retries: 3 @@ -242,7 +242,7 @@ jobs: - name: Publish release uses: actions/github-script@v7 env: - RELEASE_ID: ${{ steps.release.outputs.id }} + RELEASE_ID: ${{ steps.draft-release.outputs.id }} FINAL: ${{ inputs.final }} with: retries: 3 From bbccb98c062682103a55b2c0496489090108c424 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Feb 2024 16:26:40 +0000 Subject: [PATCH 056/595] Fix tag_name Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-drafter-workflow.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index ffb357304e6..3eeba464f0a 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -83,5 +83,6 @@ jobs: repo, release_id: releaseId, body: notes, + tag_name: VERSION, }); } From 87acd9dd8828cf8722ec7e4131a7f75f378149c8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 2 Feb 2024 16:55:36 +0000 Subject: [PATCH 057/595] Update all non-major dependencies (#4046) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/downstream-artifacts.yml | 2 +- yarn.lock | 24 +++++++++++----------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/downstream-artifacts.yml b/.github/workflows/downstream-artifacts.yml index cf57c3af216..fc6f2d9bd4e 100644 --- a/.github/workflows/downstream-artifacts.yml +++ b/.github/workflows/downstream-artifacts.yml @@ -16,7 +16,7 @@ concurrency: jobs: build-element-web: name: Build element-web - uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.90.0 + uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.91.0 with: matrix-js-sdk-sha: ${{ github.sha }} react-sdk-repository: matrix-org/matrix-react-sdk diff --git a/yarn.lock b/yarn.lock index 12eb0946d3e..dc637ab578d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3313,9 +3313,9 @@ eslint-plugin-jest@^27.1.6: "@typescript-eslint/utils" "^5.10.0" eslint-plugin-jsdoc@^48.0.0: - version "48.0.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.0.2.tgz#b843107e8caec57b8b463f04797be3b30d6a52da" - integrity sha512-CBFl5Jc7+jlV36RwDm+PQ8Uw5r28pn2/uW/OaB+Gw5bFwn4Py/1eYMZ3hGf9S4meUFZ/sRvS+hVif2mRAp6WqQ== + version "48.0.4" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.0.4.tgz#ca54da8937b2f6fd242a16dbb1b9ff5050baf223" + integrity sha512-A0cH+5svWPXzGZszBjXA1t0aAqVGS+/x3i02KFmb73rU0iMLnadEcVWcD/dGBZHIfAMKr3YpWh58f6wn4N909w== dependencies: "@es-joy/jsdoccomment" "~0.41.0" are-docs-informative "^0.0.2" @@ -5022,9 +5022,9 @@ log-update@^6.0.0: wrap-ansi "^9.0.0" loglevel@^1.7.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.8.1.tgz#5c621f83d5b48c54ae93b6156353f555963377b4" - integrity sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg== + version "1.9.1" + resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.9.1.tgz#d63976ac9bcd03c7c873116d41c2a85bafff1be7" + integrity sha512-hP3I3kCrDIMuRwAwHltphhDM1r8i55H33GgqjXbrisuJhF4kRhW1dNuxsRklp4bXl8DSdLaNLuiL4A/LWRfxvg== lru-cache@^5.1.1: version "5.1.1" @@ -5827,9 +5827,9 @@ saxes@^6.0.0: xmlchars "^2.2.0" sdp-transform@^2.14.1: - version "2.14.1" - resolved "https://registry.yarnpkg.com/sdp-transform/-/sdp-transform-2.14.1.tgz#2bb443583d478dee217df4caa284c46b870d5827" - integrity sha512-RjZyX3nVwJyCuTo5tGPx+PZWkDMCg7oOLpSlhjDdZfwUoNqG1mM8nyj31IGHyaPWXhjbP7cdK3qZ2bmkJ1GzRw== + version "2.14.2" + resolved "https://registry.yarnpkg.com/sdp-transform/-/sdp-transform-2.14.2.tgz#d2cee6a1f7abe44e6332ac6cbb94e8600f32d813" + integrity sha512-icY6jVao7MfKCieyo1AyxFYm1baiM+fA00qW/KrNNVlkxHAd34riEKuEkUe4bBb3gJwLJZM+xT60Yj1QL8rHiA== "semver@2 || 3 || 4 || 5", semver@^5.6.0: version "5.7.2" @@ -5976,9 +5976,9 @@ spdx-correct@^3.0.0: spdx-license-ids "^3.0.0" spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + version "2.4.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.4.0.tgz#c07a4ede25b16e4f78e6707bbd84b15a45c19c1b" + integrity sha512-hcjppoJ68fhxA/cjbN4T8N6uCUejN8yFw69ttpqtBeCbF3u13n7mb31NB9jKwGTTWWnt9IbRA/mf1FprYS8wfw== spdx-expression-parse@^3.0.0: version "3.0.1" From 014e674a4ea85dbda4ff0147531238232f967a82 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 2 Feb 2024 16:55:59 +0000 Subject: [PATCH 058/595] Update definitelyTyped (#4048) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index dc637ab578d..9797a42a900 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2023,9 +2023,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.8" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.8.tgz#c1e42b165e5a526caf1f010747e0522cb2c9c36a" - integrity sha512-g1pZtPhsvGVTwmeVoexWZLTQaOvXwoSq//pTL0DHeNzUDrFnir4fgETdhjhIxjVnN+hKOuh98+E1eMLnUXstFg== + version "18.19.14" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.14.tgz#1880ff1b3ac913f3877f711588e5ed227da01886" + integrity sha512-EnQ4Us2rmOS64nHDWr0XqAD8DsO6f3XR6lf9UIIrZQpUzPVdN/oPuEzfDWNHSyXLvoGgjuEm/sPwFGSSs35Wtg== dependencies: undici-types "~5.26.4" @@ -2060,9 +2060,9 @@ integrity sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA== "@types/uuid@9": - version "9.0.7" - resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-9.0.7.tgz#b14cebc75455eeeb160d5fe23c2fcc0c64f724d8" - integrity sha512-WUtIVRUZ9i5dYXefDEAI7sh9/O7jGvHg7Df/5O/gtH3Yabe5odI3UWopVR1qbPXQtvOxWu3mM4XxlYeZtMWF4g== + version "9.0.8" + resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-9.0.8.tgz#7545ba4fc3c003d6c756f651f3bf163d8f0f29ba" + integrity sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA== "@types/webidl-conversions@*": version "7.0.3" From 322cc6da10b0570c765687207cb7b934da55bf36 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 2 Feb 2024 16:56:15 +0000 Subject: [PATCH 059/595] Update babel monorepo to v7.23.9 (#4047) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 219 +++++++++++++++++++++++++++++------------------------- 1 file changed, 119 insertions(+), 100 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9797a42a900..19e847f02a0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -53,9 +53,9 @@ "@jridgewell/trace-mapping" "^0.3.9" "@babel/cli@^7.12.10": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.23.4.tgz#f5cc90487278065fa0c3b1267cf0c1d44ddf85a7" - integrity sha512-j3luA9xGKCXVyCa5R7lJvOMM+Kc2JEnAEIgz2ggtjQ/j5YUVgfsg/WsG95bbsgq7YLHuiCOzMnoSasuY16qiCw== + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.23.9.tgz#06b3e76376ee53f14ac8ac422c884950c69e1b9e" + integrity sha512-vB1UXmGDNEhcf1jNAHKT9IlYk1R+hehVTLFlCLHBi8gfuHQGP6uRjgXVYU0EVlI/qwAWpstqkBdf2aez3/z/5Q== dependencies: "@jridgewell/trace-mapping" "^0.3.17" commander "^4.0.1" @@ -95,20 +95,20 @@ integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== "@babel/core@^7.0.0", "@babel/core@^7.12.10": - version "7.23.7" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.7.tgz#4d8016e06a14b5f92530a13ed0561730b5c6483f" - integrity sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw== + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.9.tgz#b028820718000f267870822fec434820e9b1e4d1" + integrity sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw== dependencies: "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.23.5" "@babel/generator" "^7.23.6" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.23.7" - "@babel/parser" "^7.23.6" - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.23.7" - "@babel/types" "^7.23.6" + "@babel/helpers" "^7.23.9" + "@babel/parser" "^7.23.9" + "@babel/template" "^7.23.9" + "@babel/traverse" "^7.23.9" + "@babel/types" "^7.23.9" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -137,9 +137,9 @@ semver "^6.3.1" "@babel/eslint-parser@^7.12.10": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.23.3.tgz#7bf0db1c53b54da0c8a12627373554a0828479ca" - integrity sha512-9bTuNlyx7oSstodm1cR1bECj4fkiknsDa1YniISkJemMY3DGhJNYBECbe6QD/q54mp2J8VO66jW3/7uP//iFCw== + version "7.23.10" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.23.10.tgz#2d4164842d6db798873b40e0c4238827084667a2" + integrity sha512-3wSYDPZVnhseRnxRJH6ZVTNknBz76AEnyC+AYYhasjP3Yy23qz0ERR7Fcd2SHmYuSFJ2kY9gaaDd3vyqU09eSw== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" @@ -234,9 +234,9 @@ semver "^6.3.1" "@babel/helper-create-class-features-plugin@^7.22.15": - version "7.23.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.23.7.tgz#b2e6826e0e20d337143655198b79d58fdc9bd43d" - integrity sha512-xCoqR/8+BoNnXOY7RVSgv6X+o7pmT5q1d+gGcRlXYkI+9B31glE4jeejhKVpA04O1AtzOt7OSQ6VYKP5FcRl9g== + version "7.23.10" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.23.10.tgz#25d55fafbaea31fd0e723820bb6cc3df72edf7ea" + integrity sha512-2XpP2XhkXzgxecPNEEK8Vz8Asj9aRxt08oKOqtiZoqV2UGZ5T+EkyP9sXQ9nwMxBIG34a7jmasVqoMop7VdPUw== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" "@babel/helper-environment-visitor" "^7.22.20" @@ -257,10 +257,10 @@ regexpu-core "^5.3.1" semver "^6.3.1" -"@babel/helper-define-polyfill-provider@^0.4.4": - version "0.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.4.tgz#64df615451cb30e94b59a9696022cffac9a10088" - integrity sha512-QcJMILQCu2jm5TFPGA3lCpJJTeEP+mqeXooG/NZbg/h5FTFi6V0+99ahlRsW8/kRLyb24LZVCCiclDedhLKcBA== +"@babel/helper-define-polyfill-provider@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.5.0.tgz#465805b7361f461e86c680f1de21eaf88c25901b" + integrity sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q== dependencies: "@babel/helper-compilation-targets" "^7.22.6" "@babel/helper-plugin-utils" "^7.22.5" @@ -420,14 +420,14 @@ "@babel/traverse" "^7.22.15" "@babel/types" "^7.22.15" -"@babel/helpers@^7.23.7": - version "7.23.8" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.8.tgz#fc6b2d65b16847fd50adddbd4232c76378959e34" - integrity sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ== +"@babel/helpers@^7.23.9": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.9.tgz#c3e20bbe7f7a7e10cb9b178384b4affdf5995c7d" + integrity sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ== dependencies: - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.23.7" - "@babel/types" "^7.23.6" + "@babel/template" "^7.23.9" + "@babel/traverse" "^7.23.9" + "@babel/types" "^7.23.9" "@babel/highlight@^7.22.13", "@babel/highlight@^7.23.4": version "7.23.4" @@ -443,10 +443,10 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.16.tgz#180aead7f247305cce6551bea2720934e2fa2c95" integrity sha512-+gPfKv8UWeKKeJTUxe59+OobVcrYHETCsORl61EmSkmgymguYk/X5bp7GuUIXaFsc6y++v8ZxPsLSSuujqDphA== -"@babel/parser@^7.22.15", "@babel/parser@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.6.tgz#ba1c9e512bda72a47e285ae42aff9d2a635a9e3b" - integrity sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ== +"@babel/parser@^7.22.15", "@babel/parser@^7.23.9": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.9.tgz#7b903b6149b0f8fa7ad564af646c4c38a77fc44b" + integrity sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA== "@babel/parser@^7.23.0": version "7.23.3" @@ -678,10 +678,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-async-generator-functions@^7.23.7": - version "7.23.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.7.tgz#3aa0b4f2fa3788b5226ef9346cf6d16ec61f99cd" - integrity sha512-PdxEpL71bJp1byMG0va5gwQcXHxuEYC/BgI/e88mGTtohbZN28O5Yit0Plkkm/dBzCF/BxmbNcses1RH1T+urA== +"@babel/plugin-transform-async-generator-functions@^7.23.9": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.9.tgz#9adaeb66fc9634a586c5df139c6240d41ed801ce" + integrity sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ== dependencies: "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-plugin-utils" "^7.22.5" @@ -860,10 +860,10 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-simple-access" "^7.22.5" -"@babel/plugin-transform-modules-systemjs@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.3.tgz#fa7e62248931cb15b9404f8052581c302dd9de81" - integrity sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ== +"@babel/plugin-transform-modules-systemjs@^7.23.9": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.9.tgz#105d3ed46e4a21d257f83a2f9e2ee4203ceda6be" + integrity sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw== dependencies: "@babel/helper-hoist-variables" "^7.22.5" "@babel/helper-module-transforms" "^7.23.3" @@ -1000,15 +1000,15 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-runtime@^7.12.10": - version "7.23.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.23.7.tgz#52bbd20054855beb9deae3bee9ceb05289c343e6" - integrity sha512-fa0hnfmiXc9fq/weK34MUV0drz2pOL/vfKWvN7Qw127hiUPabFCUMgAbYWcchRzMJit4o5ARsK/s+5h0249pLw== + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.23.9.tgz#2c64d0680fc8e09e1dfe8fd5c646fe72abd82004" + integrity sha512-A7clW3a0aSjm3ONU9o2HAILSegJCYlEZmOhmBRReVtIpY/Z/p7yIZ+wR41Z+UipwdGuqwtID/V/dOdZXjwi9gQ== dependencies: "@babel/helper-module-imports" "^7.22.15" "@babel/helper-plugin-utils" "^7.22.5" - babel-plugin-polyfill-corejs2 "^0.4.7" - babel-plugin-polyfill-corejs3 "^0.8.7" - babel-plugin-polyfill-regenerator "^0.5.4" + babel-plugin-polyfill-corejs2 "^0.4.8" + babel-plugin-polyfill-corejs3 "^0.9.0" + babel-plugin-polyfill-regenerator "^0.5.5" semver "^6.3.1" "@babel/plugin-transform-shorthand-properties@^7.23.3": @@ -1089,9 +1089,9 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/preset-env@^7.12.11": - version "7.23.8" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.23.8.tgz#7d6f8171ea7c221ecd28059e65ad37c20e441e3e" - integrity sha512-lFlpmkApLkEP6woIKprO6DO60RImpatTQKtz4sUcDjVcK8M8mQ4sZsuxaTMNOZf0sqAq/ReYW1ZBHnOQwKpLWA== + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.23.9.tgz#beace3b7994560ed6bf78e4ae2073dff45387669" + integrity sha512-3kBGTNBBk9DQiPoXYS0g0BYlwTQYUTifqgKTjxUwEUkduRT2QOa0FPGBJ+NROQhGyYO5BuTJwGvBnqKDykac6A== dependencies: "@babel/compat-data" "^7.23.5" "@babel/helper-compilation-targets" "^7.23.6" @@ -1120,7 +1120,7 @@ "@babel/plugin-syntax-top-level-await" "^7.14.5" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" "@babel/plugin-transform-arrow-functions" "^7.23.3" - "@babel/plugin-transform-async-generator-functions" "^7.23.7" + "@babel/plugin-transform-async-generator-functions" "^7.23.9" "@babel/plugin-transform-async-to-generator" "^7.23.3" "@babel/plugin-transform-block-scoped-functions" "^7.23.3" "@babel/plugin-transform-block-scoping" "^7.23.4" @@ -1142,7 +1142,7 @@ "@babel/plugin-transform-member-expression-literals" "^7.23.3" "@babel/plugin-transform-modules-amd" "^7.23.3" "@babel/plugin-transform-modules-commonjs" "^7.23.3" - "@babel/plugin-transform-modules-systemjs" "^7.23.3" + "@babel/plugin-transform-modules-systemjs" "^7.23.9" "@babel/plugin-transform-modules-umd" "^7.23.3" "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5" "@babel/plugin-transform-new-target" "^7.23.3" @@ -1168,9 +1168,9 @@ "@babel/plugin-transform-unicode-regex" "^7.23.3" "@babel/plugin-transform-unicode-sets-regex" "^7.23.3" "@babel/preset-modules" "0.1.6-no-external-plugins" - babel-plugin-polyfill-corejs2 "^0.4.7" - babel-plugin-polyfill-corejs3 "^0.8.7" - babel-plugin-polyfill-regenerator "^0.5.4" + babel-plugin-polyfill-corejs2 "^0.4.8" + babel-plugin-polyfill-corejs3 "^0.9.0" + babel-plugin-polyfill-regenerator "^0.5.5" core-js-compat "^3.31.0" semver "^6.3.1" @@ -1211,13 +1211,22 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.23.8" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.8.tgz#8ee6fe1ac47add7122902f257b8ddf55c898f650" - integrity sha512-Y7KbAP984rn1VGMbGqKmBLio9V7y5Je9GvU4rQPCPinCyNfUcToxIXl06d59URp/F3LwinvODxab5N/G6qggkw== + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.9.tgz#47791a15e4603bb5f905bc0753801cf21d6345f7" + integrity sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw== dependencies: regenerator-runtime "^0.14.0" -"@babel/template@^7.22.15", "@babel/template@^7.3.3": +"@babel/template@^7.22.15", "@babel/template@^7.23.9": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.23.9.tgz#f881d0487cba2828d3259dcb9ef5005a9731011a" + integrity sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA== + dependencies: + "@babel/code-frame" "^7.23.5" + "@babel/parser" "^7.23.9" + "@babel/types" "^7.23.9" + +"@babel/template@^7.3.3": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w== @@ -1242,10 +1251,10 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/traverse@^7.23.7": - version "7.23.7" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.7.tgz#9a7bf285c928cb99b5ead19c3b1ce5b310c9c305" - integrity sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg== +"@babel/traverse@^7.23.9": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.9.tgz#2f9d6aead6b564669394c5ce0f9302bb65b9d950" + integrity sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg== dependencies: "@babel/code-frame" "^7.23.5" "@babel/generator" "^7.23.6" @@ -1253,8 +1262,8 @@ "@babel/helper-function-name" "^7.23.0" "@babel/helper-hoist-variables" "^7.22.5" "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.23.6" - "@babel/types" "^7.23.6" + "@babel/parser" "^7.23.9" + "@babel/types" "^7.23.9" debug "^4.3.1" globals "^11.1.0" @@ -1267,10 +1276,10 @@ "@babel/helper-validator-identifier" "^7.22.15" to-fast-properties "^2.0.0" -"@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.4.4": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.6.tgz#be33fdb151e1f5a56877d704492c240fc71c7ccd" - integrity sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg== +"@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.23.9", "@babel/types@^7.4.4": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.9.tgz#1dd7b59a9a2b5c87f8b41e52770b5ecbf492e002" + integrity sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q== dependencies: "@babel/helper-string-parser" "^7.23.4" "@babel/helper-validator-identifier" "^7.22.20" @@ -1667,9 +1676,9 @@ "@jridgewell/sourcemap-codec" "^1.4.14" "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.20" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz#72e45707cf240fa6b081d0366f8265b0cd10197f" - integrity sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q== + version "0.3.22" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz#72a621e5de59f5f1ef792d0793a82ee20f645e4c" + integrity sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw== dependencies: "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" @@ -2494,29 +2503,29 @@ babel-plugin-jest-hoist@^29.6.3: "@types/babel__core" "^7.1.14" "@types/babel__traverse" "^7.0.6" -babel-plugin-polyfill-corejs2@^0.4.7: - version "0.4.7" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.7.tgz#679d1b94bf3360f7682e11f2cb2708828a24fe8c" - integrity sha512-LidDk/tEGDfuHW2DWh/Hgo4rmnw3cduK6ZkOI1NPFceSK3n/yAGeOsNT7FLnSGHkXj3RHGSEVkN3FsCTY6w2CQ== +babel-plugin-polyfill-corejs2@^0.4.8: + version "0.4.8" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.8.tgz#dbcc3c8ca758a290d47c3c6a490d59429b0d2269" + integrity sha512-OtIuQfafSzpo/LhnJaykc0R/MMnuLSSVjVYy9mHArIZ9qTCSZ6TpWCuEKZYVoN//t8HqBNScHrOtCrIK5IaGLg== dependencies: "@babel/compat-data" "^7.22.6" - "@babel/helper-define-polyfill-provider" "^0.4.4" + "@babel/helper-define-polyfill-provider" "^0.5.0" semver "^6.3.1" -babel-plugin-polyfill-corejs3@^0.8.7: - version "0.8.7" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.7.tgz#941855aa7fdaac06ed24c730a93450d2b2b76d04" - integrity sha512-KyDvZYxAzkC0Aj2dAPyDzi2Ym15e5JKZSK+maI7NAwSqofvuFglbSsxE7wUOvTg9oFVnHMzVzBKcqEb4PJgtOA== +babel-plugin-polyfill-corejs3@^0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.9.0.tgz#9eea32349d94556c2ad3ab9b82ebb27d4bf04a81" + integrity sha512-7nZPG1uzK2Ymhy/NbaOWTg3uibM2BmGASS4vHS4szRZAIR8R6GwA/xAujpdrXU5iyklrimWnLWU+BLF9suPTqg== dependencies: - "@babel/helper-define-polyfill-provider" "^0.4.4" - core-js-compat "^3.33.1" + "@babel/helper-define-polyfill-provider" "^0.5.0" + core-js-compat "^3.34.0" -babel-plugin-polyfill-regenerator@^0.5.4: - version "0.5.4" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.4.tgz#c6fc8eab610d3a11eb475391e52584bacfc020f4" - integrity sha512-S/x2iOCvDaCASLYsOOgWOq4bCfKYVqvO/uxjkaYyZ3rVsVE3CeAI/c84NpyuBBymEgNvHgjEot3a9/Z/kXvqsg== +babel-plugin-polyfill-regenerator@^0.5.5: + version "0.5.5" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.5.tgz#8b0c8fc6434239e5d7b8a9d1f832bb2b0310f06a" + integrity sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg== dependencies: - "@babel/helper-define-polyfill-provider" "^0.4.4" + "@babel/helper-define-polyfill-provider" "^0.5.0" babel-preset-current-node-syntax@^1.0.0: version "1.0.1" @@ -2593,7 +2602,7 @@ braces@^3.0.2, braces@~3.0.2: dependencies: fill-range "^7.0.1" -browserslist@^4.21.9, browserslist@^4.22.2: +browserslist@^4.21.9: version "4.22.2" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.2.tgz#704c4943072bd81ea18997f3bd2180e89c77874b" integrity sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A== @@ -2603,6 +2612,16 @@ browserslist@^4.21.9, browserslist@^4.22.2: node-releases "^2.0.14" update-browserslist-db "^1.0.13" +browserslist@^4.22.2: + version "4.22.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.3.tgz#299d11b7e947a6b843981392721169e27d60c5a6" + integrity sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A== + dependencies: + caniuse-lite "^1.0.30001580" + electron-to-chromium "^1.4.648" + node-releases "^2.0.14" + update-browserslist-db "^1.0.13" + bs58@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/bs58/-/bs58-5.0.0.tgz#865575b4d13c09ea2a84622df6c8cbeb54ffc279" @@ -2651,10 +2670,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001565: - version "1.0.30001576" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001576.tgz#893be772cf8ee6056d6c1e2d07df365b9ec0a5c4" - integrity sha512-ff5BdakGe2P3SQsMsiqmt1Lc8221NR1VzHj5jXN5vBny9A6fpze94HiVV/n7XRosOlsShJcvMv5mdnpjOGCEgg== +caniuse-lite@^1.0.30001565, caniuse-lite@^1.0.30001580: + version "1.0.30001583" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001583.tgz#abb2970cc370801dc7e27bf290509dc132cfa390" + integrity sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q== chalk@5.2.0: version "5.2.0" @@ -2863,10 +2882,10 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -core-js-compat@^3.31.0, core-js-compat@^3.33.1, core-js-compat@^3.34.0: - version "3.35.0" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.35.0.tgz#c149a3d1ab51e743bc1da61e39cb51f461a41873" - integrity sha512-5blwFAddknKeNgsjBzilkdQ0+YK8L1PfqPYq40NOYMYFSS38qj+hpTcLLWwpIwA2A5bje/x5jmVn2tzUMg9IVw== +core-js-compat@^3.31.0, core-js-compat@^3.34.0: + version "3.35.1" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.35.1.tgz#215247d7edb9e830efa4218ff719beb2803555e2" + integrity sha512-sftHa5qUJY3rs9Zht1WEnmkvXputCyDBczPnr7QDgL8n3qrF3CMXY4VPSYtOLLiOUJcah2WNXREd48iOl6mQIw== dependencies: browserslist "^4.22.2" @@ -3061,10 +3080,10 @@ eastasianwidth@^0.2.0: resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== -electron-to-chromium@^1.4.601: - version "1.4.625" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.625.tgz#a9a1d18ee911f9074a9c42d9e84b1c79b29f4059" - integrity sha512-DENMhh3MFgaPDoXWrVIqSPInQoLImywfCwrSmVl3cf9QHzoZSiutHwGaB/Ql3VkqcQV30rzgdM+BjKqBAJxo5Q== +electron-to-chromium@^1.4.601, electron-to-chromium@^1.4.648: + version "1.4.655" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.655.tgz#112410db0d7f9c2b4ed8baa3b1b548522a6f89d4" + integrity sha512-2yszojF7vIZ68adIOvzV4bku8OZad9w5H9xF3ZAMZjPuOjBarlflUkjN6DggdV+L71WZuKUfKUhov/34+G5QHg== emittery@^0.13.1: version "0.13.1" From 5e185ae1e7bb2ad5a7cde97a71374f2765802da9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 2 Feb 2024 17:08:12 +0000 Subject: [PATCH 060/595] Update typescript-eslint monorepo to v6.20.0 (#4050) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 110 +++++++++++++++++++++++++++--------------------------- 1 file changed, 55 insertions(+), 55 deletions(-) diff --git a/yarn.lock b/yarn.lock index 19e847f02a0..70d9524e8c1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2091,15 +2091,15 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^6.0.0": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.1.tgz#bb0676af940bc23bf299ca58dbdc6589c2548c2e" - integrity sha512-roQScUGFruWod9CEyoV5KlCYrubC/fvG8/1zXuT0WTcxX87GnMMmnksMwSg99lo1xiKrBzw2icsJPMAw1OtKxg== + version "6.20.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.20.0.tgz#9cf31546d2d5e884602626d89b0e0d2168ac25ed" + integrity sha512-fTwGQUnjhoYHeSF6m5pWNkzmDDdsKELYrOBxhjMrofPqCkoC2k3B2wvGHFxa1CTIqkEn88nlW1HVMztjo2K8Hg== dependencies: "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "6.19.1" - "@typescript-eslint/type-utils" "6.19.1" - "@typescript-eslint/utils" "6.19.1" - "@typescript-eslint/visitor-keys" "6.19.1" + "@typescript-eslint/scope-manager" "6.20.0" + "@typescript-eslint/type-utils" "6.20.0" + "@typescript-eslint/utils" "6.20.0" + "@typescript-eslint/visitor-keys" "6.20.0" debug "^4.3.4" graphemer "^1.4.0" ignore "^5.2.4" @@ -2108,14 +2108,14 @@ ts-api-utils "^1.0.1" "@typescript-eslint/parser@^6.0.0": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.19.1.tgz#68a87bb21afaf0b1689e9cdce0e6e75bc91ada78" - integrity sha512-WEfX22ziAh6pRE9jnbkkLGp/4RhTpffr2ZK5bJ18M8mIfA8A+k97U9ZyaXCEJRlmMHh7R9MJZWXp/r73DzINVQ== - dependencies: - "@typescript-eslint/scope-manager" "6.19.1" - "@typescript-eslint/types" "6.19.1" - "@typescript-eslint/typescript-estree" "6.19.1" - "@typescript-eslint/visitor-keys" "6.19.1" + version "6.20.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.20.0.tgz#17e314177304bdf498527e3c4b112e41287b7416" + integrity sha512-bYerPDF/H5v6V76MdMYhjwmwgMA+jlPVqjSDq2cRqMi8bP5sR3Z+RLOiOMad3nsnmDVmn2gAFCyNgh/dIrfP/w== + dependencies: + "@typescript-eslint/scope-manager" "6.20.0" + "@typescript-eslint/types" "6.20.0" + "@typescript-eslint/typescript-estree" "6.20.0" + "@typescript-eslint/visitor-keys" "6.20.0" debug "^4.3.4" "@typescript-eslint/scope-manager@5.62.0": @@ -2126,21 +2126,21 @@ "@typescript-eslint/types" "5.62.0" "@typescript-eslint/visitor-keys" "5.62.0" -"@typescript-eslint/scope-manager@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.19.1.tgz#2f527ee30703a6169a52b31d42a1103d80acd51b" - integrity sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w== +"@typescript-eslint/scope-manager@6.20.0": + version "6.20.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.20.0.tgz#8a926e60f6c47feb5bab878246dc2ae465730151" + integrity sha512-p4rvHQRDTI1tGGMDFQm+GtxP1ZHyAh64WANVoyEcNMpaTFn3ox/3CcgtIlELnRfKzSs/DwYlDccJEtr3O6qBvA== dependencies: - "@typescript-eslint/types" "6.19.1" - "@typescript-eslint/visitor-keys" "6.19.1" + "@typescript-eslint/types" "6.20.0" + "@typescript-eslint/visitor-keys" "6.20.0" -"@typescript-eslint/type-utils@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.19.1.tgz#6a130e3afe605a4898e043fa9f72e96309b54935" - integrity sha512-0vdyld3ecfxJuddDjACUvlAeYNrHP/pDeQk2pWBR2ESeEzQhg52DF53AbI9QCBkYE23lgkhLCZNkHn2hEXXYIg== +"@typescript-eslint/type-utils@6.20.0": + version "6.20.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.20.0.tgz#d395475cd0f3610dd80c7d8716fa0db767da3831" + integrity sha512-qnSobiJQb1F5JjN0YDRPHruQTrX7ICsmltXhkV536mp4idGAYrIyr47zF/JmkJtEcAVnIz4gUYJ7gOZa6SmN4g== dependencies: - "@typescript-eslint/typescript-estree" "6.19.1" - "@typescript-eslint/utils" "6.19.1" + "@typescript-eslint/typescript-estree" "6.20.0" + "@typescript-eslint/utils" "6.20.0" debug "^4.3.4" ts-api-utils "^1.0.1" @@ -2149,10 +2149,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== -"@typescript-eslint/types@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.19.1.tgz#2d4c9d492a63ede15e7ba7d129bdf7714b77f771" - integrity sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg== +"@typescript-eslint/types@6.20.0": + version "6.20.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.20.0.tgz#5ccd74c29011ae7714ae6973e4ec0c634708b448" + integrity sha512-MM9mfZMAhiN4cOEcUOEx+0HmuaW3WBfukBZPCfwSqFnQy0grXYtngKCqpQN339X3RrwtzspWJrpbrupKYUSBXQ== "@typescript-eslint/typescript-estree@5.62.0": version "5.62.0" @@ -2167,13 +2167,13 @@ semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.1.tgz#796d88d88882f12e85bb33d6d82d39e1aea54ed1" - integrity sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA== +"@typescript-eslint/typescript-estree@6.20.0": + version "6.20.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.20.0.tgz#5b2d0975949e6bdd8d45ee1471461ef5fadc5542" + integrity sha512-RnRya9q5m6YYSpBN7IzKu9FmLcYtErkDkc8/dKv81I9QiLLtVBHrjz+Ev/crAqgMNW2FCsoZF4g2QUylMnJz+g== dependencies: - "@typescript-eslint/types" "6.19.1" - "@typescript-eslint/visitor-keys" "6.19.1" + "@typescript-eslint/types" "6.20.0" + "@typescript-eslint/visitor-keys" "6.20.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2181,17 +2181,17 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/utils@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.19.1.tgz#df93497f9cfddde2bcc2a591da80536e68acd151" - integrity sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w== +"@typescript-eslint/utils@6.20.0": + version "6.20.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.20.0.tgz#0e52afcfaa51af5656490ba4b7437cc3aa28633d" + integrity sha512-/EKuw+kRu2vAqCoDwDCBtDRU6CTKbUmwwI7SH7AashZ+W+7o8eiyy6V2cdOqN49KsTcASWsC5QeghYuRDTyOOg== dependencies: "@eslint-community/eslint-utils" "^4.4.0" "@types/json-schema" "^7.0.12" "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "6.19.1" - "@typescript-eslint/types" "6.19.1" - "@typescript-eslint/typescript-estree" "6.19.1" + "@typescript-eslint/scope-manager" "6.20.0" + "@typescript-eslint/types" "6.20.0" + "@typescript-eslint/typescript-estree" "6.20.0" semver "^7.5.4" "@typescript-eslint/utils@^5.10.0": @@ -2216,12 +2216,12 @@ "@typescript-eslint/types" "5.62.0" eslint-visitor-keys "^3.3.0" -"@typescript-eslint/visitor-keys@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz#2164073ed4fc34a5ff3b5e25bb5a442100454c4c" - integrity sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ== +"@typescript-eslint/visitor-keys@6.20.0": + version "6.20.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.20.0.tgz#f7ada27f2803de89df0edd9fd7be22c05ce6a498" + integrity sha512-E8Cp98kRe4gKHjJD4NExXKz/zOJ1A2hhZc+IMVD6i7w4yjIvh6VyuRI0gRtxAsXtoC35uGMaQ9rjI2zJaXDEAw== dependencies: - "@typescript-eslint/types" "6.19.1" + "@typescript-eslint/types" "6.20.0" eslint-visitor-keys "^3.4.1" "@ungap/structured-clone@^1.2.0": @@ -3624,9 +3624,9 @@ fast-levenshtein@^2.0.6: integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== fastq@^1.6.0: - version "1.16.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.16.0.tgz#83b9a9375692db77a822df081edb6a9cf6839320" - integrity sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA== + version "1.17.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.0.tgz#ca5e1a90b5e68f97fc8b61330d5819b82f5fab03" + integrity sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w== dependencies: reusify "^1.0.4" @@ -4040,9 +4040,9 @@ iconv-lite@0.6.3: safer-buffer ">= 2.1.2 < 3.0.0" ignore@^5.2.0, ignore@^5.2.4: - version "5.3.0" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.0.tgz#67418ae40d34d6999c95ff56016759c718c82f78" - integrity sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg== + version "5.3.1" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" + integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== import-fresh@^3.2.1: version "3.3.0" From 04ebcf7be7d7296c76a88d5dec10fa2ca86f4232 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 2 Feb 2024 17:10:27 +0000 Subject: [PATCH 061/595] Update peter-evans/repository-dispatch action to v3 (#4053) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/notify-downstream.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/notify-downstream.yaml b/.github/workflows/notify-downstream.yaml index 375764dcb0d..a1c4a28a5ce 100644 --- a/.github/workflows/notify-downstream.yaml +++ b/.github/workflows/notify-downstream.yaml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Notify matrix-react-sdk repo that a new SDK build is on develop so it can CI against it - uses: peter-evans/repository-dispatch@bf47d102fdb849e755b0b0023ea3e81a44b6f570 # v2 + uses: peter-evans/repository-dispatch@ff45666b9427631e3450c54a1bcbee4d9ff4d7c0 # v3 with: token: ${{ secrets.ELEMENT_BOT_TOKEN }} repository: ${{ matrix.repo }} From 173d9c331a7caeeb95f3ffb7a8b55ad2135c048d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 2 Feb 2024 17:39:51 +0000 Subject: [PATCH 062/595] Update dependency @types/jest to v29.5.12 (#4049) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index 70d9524e8c1..96dace0d3fb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1993,9 +1993,9 @@ "@types/istanbul-lib-report" "*" "@types/jest@^29.0.0": - version "29.5.11" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.5.11.tgz#0c13aa0da7d0929f078ab080ae5d4ced80fa2f2c" - integrity sha512-S2mHmYIVe13vrm6q4kN6fLYYAka15ALQki/vgDC3mIukEOx8WJlv0kQPM+d4w8Gp6u0uSdKND04IlTXBv0rwnQ== + version "29.5.12" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.5.12.tgz#7f7dc6eb4cf246d2474ed78744b05d06ce025544" + integrity sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw== dependencies: expect "^29.0.0" pretty-format "^29.0.0" @@ -2025,9 +2025,9 @@ integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g== "@types/node@*": - version "20.10.4" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.10.4.tgz#b246fd84d55d5b1b71bf51f964bd514409347198" - integrity sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg== + version "20.11.16" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.16.tgz#4411f79411514eb8e2926f036c86c9f0e4ec6708" + integrity sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ== dependencies: undici-types "~5.26.4" From f94dbdec0fd8fa2043f04a06bdeb9a02665841c9 Mon Sep 17 00:00:00 2001 From: Valere Date: Mon, 5 Feb 2024 15:59:02 +0100 Subject: [PATCH 063/595] Add utility to check for non migrated legacy db (#4055) * Add utility to check for non migrated legacy db * code review changes * add unit tests for existsAndIsNotMigrated * ensure indexeddb is clean for each state --- .../crypto/store/IndexedDBCryptoStore.spec.ts | 73 +++++++++++++++++++ src/crypto/store/base.ts | 7 ++ .../store/indexeddb-crypto-store-backend.ts | 4 +- src/crypto/store/indexeddb-crypto-store.ts | 47 ++++++++++++ 4 files changed, 128 insertions(+), 3 deletions(-) create mode 100644 spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts diff --git a/spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts b/spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts new file mode 100644 index 00000000000..52fd574ba14 --- /dev/null +++ b/spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts @@ -0,0 +1,73 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import "fake-indexeddb/auto"; +import { IndexedDBCryptoStore } from "../../../../src"; +import { MigrationState } from "../../../../src/crypto/store/base"; + +describe("IndexedDBCryptoStore", () => { + describe("Test `existsAndIsNotMigrated`", () => { + beforeEach(async () => { + // eslint-disable-next-line no-global-assign + indexedDB = new IDBFactory(); + }); + + it("Should be true if there is a legacy database", async () => { + // should detect a store that is not migrated + const store = new IndexedDBCryptoStore(global.indexedDB, "tests"); + await store.startup(); + + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + + expect(result).toBe(true); + }); + + it("Should be true if there is a legacy database in non migrated state", async () => { + // should detect a store that is not migrated + const store = new IndexedDBCryptoStore(global.indexedDB, "tests"); + await store.startup(); + await store.setMigrationState(MigrationState.NOT_STARTED); + + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + + expect(result).toBe(true); + }); + + describe.each([ + MigrationState.INITIAL_DATA_MIGRATED, + MigrationState.OLM_SESSIONS_MIGRATED, + MigrationState.MEGOLM_SESSIONS_MIGRATED, + MigrationState.ROOM_SETTINGS_MIGRATED, + ])("Exists and Migration state is %s", (migrationState) => { + it("Should be false if migration has started", async () => { + // should detect a store that is not migrated + const store = new IndexedDBCryptoStore(global.indexedDB, "tests"); + await store.startup(); + await store.setMigrationState(migrationState); + + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + + expect(result).toBe(false); + }); + }); + + it("Should be false if there is no legacy database", async () => { + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + + expect(result).toBe(false); + }); + }); +}); diff --git a/src/crypto/store/base.ts b/src/crypto/store/base.ts index 2e01d681549..d523981b29d 100644 --- a/src/crypto/store/base.ts +++ b/src/crypto/store/base.ts @@ -306,6 +306,13 @@ export interface ParkedSharedHistory { forwardingCurve25519KeyChain: string[]; } +/** + * Keys for the `account` object store to store the migration state. + * Values are defined in `MigrationState`. + * @internal + */ +export const ACCOUNT_OBJECT_KEY_MIGRATION_STATE = "migrationState"; + /** * A record of which steps have been completed in the libolm to Rust Crypto migration. * diff --git a/src/crypto/store/indexeddb-crypto-store-backend.ts b/src/crypto/store/indexeddb-crypto-store-backend.ts index 454f69e0e3d..c4908aee193 100644 --- a/src/crypto/store/indexeddb-crypto-store-backend.ts +++ b/src/crypto/store/indexeddb-crypto-store-backend.ts @@ -30,6 +30,7 @@ import { ParkedSharedHistory, SecretStorePrivateKeys, SESSION_BATCH_SIZE, + ACCOUNT_OBJECT_KEY_MIGRATION_STATE, } from "./base"; import { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from "../index"; import { ICrossSigningKey } from "../../client"; @@ -40,9 +41,6 @@ import { IndexedDBCryptoStore } from "./indexeddb-crypto-store"; const PROFILE_TRANSACTIONS = false; -/* Keys for the `account` object store */ -const ACCOUNT_OBJECT_KEY_MIGRATION_STATE = "migrationState"; - /** * Implementation of a CryptoStore which is backed by an existing * IndexedDB connection. Generally you want IndexedDBCryptoStore diff --git a/src/crypto/store/indexeddb-crypto-store.ts b/src/crypto/store/indexeddb-crypto-store.ts index dc33d5f81d9..dc104e19ef4 100644 --- a/src/crypto/store/indexeddb-crypto-store.ts +++ b/src/crypto/store/indexeddb-crypto-store.ts @@ -33,6 +33,7 @@ import { OutgoingRoomKeyRequest, ParkedSharedHistory, SecretStorePrivateKeys, + ACCOUNT_OBJECT_KEY_MIGRATION_STATE, } from "./base"; import { IRoomKeyRequestBody } from "../index"; import { ICrossSigningKey } from "../../client"; @@ -63,6 +64,52 @@ export class IndexedDBCryptoStore implements CryptoStore { return IndexedDBHelpers.exists(indexedDB, dbName); } + /** + * Utility to check if a legacy crypto store exists and has not been migrated. + * Returns true if the store exists and has not been migrated, false otherwise. + */ + public static existsAndIsNotMigrated(indexedDb: IDBFactory, dbName: string): Promise { + return new Promise((resolve, reject) => { + let exists = true; + const openDBRequest = indexedDb.open(dbName); + openDBRequest.onupgradeneeded = (): void => { + // Since we did not provide an explicit version when opening, this event + // should only fire if the DB did not exist before at any version. + exists = false; + }; + openDBRequest.onblocked = (): void => reject(openDBRequest.error); + openDBRequest.onsuccess = (): void => { + const db = openDBRequest.result; + if (!exists) { + db.close(); + // The DB did not exist before, but has been created as part of this + // existence check. Delete it now to restore previous state. Delete can + // actually take a while to complete in some browsers, so don't wait for + // it. This won't block future open calls that a store might issue next to + // properly set up the DB. + indexedDb.deleteDatabase(dbName); + resolve(false); + } else { + const tx = db.transaction([IndexedDBCryptoStore.STORE_ACCOUNT], "readonly"); + const objectStore = tx.objectStore(IndexedDBCryptoStore.STORE_ACCOUNT); + const getReq = objectStore.get(ACCOUNT_OBJECT_KEY_MIGRATION_STATE); + + getReq.onsuccess = (): void => { + const migrationState = getReq.result ?? MigrationState.NOT_STARTED; + resolve(migrationState === MigrationState.NOT_STARTED); + }; + + getReq.onerror = (): void => { + reject(getReq.error); + }; + + db.close(); + } + }; + openDBRequest.onerror = (): void => reject(openDBRequest.error); + }); + } + private backendPromise?: Promise; private backend?: CryptoStore; From c700d8daa2330a8eb5873a0f3abfb439ea516920 Mon Sep 17 00:00:00 2001 From: Valere Date: Mon, 5 Feb 2024 15:59:02 +0100 Subject: [PATCH 064/595] Add utility to check for non migrated legacy db (#4055) * Add utility to check for non migrated legacy db * code review changes * add unit tests for existsAndIsNotMigrated * ensure indexeddb is clean for each state (cherry picked from commit f94dbdec0fd8fa2043f04a06bdeb9a02665841c9) --- .../crypto/store/IndexedDBCryptoStore.spec.ts | 73 +++++++++++++++++++ src/crypto/store/base.ts | 7 ++ .../store/indexeddb-crypto-store-backend.ts | 4 +- src/crypto/store/indexeddb-crypto-store.ts | 47 ++++++++++++ 4 files changed, 128 insertions(+), 3 deletions(-) create mode 100644 spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts diff --git a/spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts b/spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts new file mode 100644 index 00000000000..52fd574ba14 --- /dev/null +++ b/spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts @@ -0,0 +1,73 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import "fake-indexeddb/auto"; +import { IndexedDBCryptoStore } from "../../../../src"; +import { MigrationState } from "../../../../src/crypto/store/base"; + +describe("IndexedDBCryptoStore", () => { + describe("Test `existsAndIsNotMigrated`", () => { + beforeEach(async () => { + // eslint-disable-next-line no-global-assign + indexedDB = new IDBFactory(); + }); + + it("Should be true if there is a legacy database", async () => { + // should detect a store that is not migrated + const store = new IndexedDBCryptoStore(global.indexedDB, "tests"); + await store.startup(); + + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + + expect(result).toBe(true); + }); + + it("Should be true if there is a legacy database in non migrated state", async () => { + // should detect a store that is not migrated + const store = new IndexedDBCryptoStore(global.indexedDB, "tests"); + await store.startup(); + await store.setMigrationState(MigrationState.NOT_STARTED); + + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + + expect(result).toBe(true); + }); + + describe.each([ + MigrationState.INITIAL_DATA_MIGRATED, + MigrationState.OLM_SESSIONS_MIGRATED, + MigrationState.MEGOLM_SESSIONS_MIGRATED, + MigrationState.ROOM_SETTINGS_MIGRATED, + ])("Exists and Migration state is %s", (migrationState) => { + it("Should be false if migration has started", async () => { + // should detect a store that is not migrated + const store = new IndexedDBCryptoStore(global.indexedDB, "tests"); + await store.startup(); + await store.setMigrationState(migrationState); + + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + + expect(result).toBe(false); + }); + }); + + it("Should be false if there is no legacy database", async () => { + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + + expect(result).toBe(false); + }); + }); +}); diff --git a/src/crypto/store/base.ts b/src/crypto/store/base.ts index 2e01d681549..d523981b29d 100644 --- a/src/crypto/store/base.ts +++ b/src/crypto/store/base.ts @@ -306,6 +306,13 @@ export interface ParkedSharedHistory { forwardingCurve25519KeyChain: string[]; } +/** + * Keys for the `account` object store to store the migration state. + * Values are defined in `MigrationState`. + * @internal + */ +export const ACCOUNT_OBJECT_KEY_MIGRATION_STATE = "migrationState"; + /** * A record of which steps have been completed in the libolm to Rust Crypto migration. * diff --git a/src/crypto/store/indexeddb-crypto-store-backend.ts b/src/crypto/store/indexeddb-crypto-store-backend.ts index 454f69e0e3d..c4908aee193 100644 --- a/src/crypto/store/indexeddb-crypto-store-backend.ts +++ b/src/crypto/store/indexeddb-crypto-store-backend.ts @@ -30,6 +30,7 @@ import { ParkedSharedHistory, SecretStorePrivateKeys, SESSION_BATCH_SIZE, + ACCOUNT_OBJECT_KEY_MIGRATION_STATE, } from "./base"; import { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from "../index"; import { ICrossSigningKey } from "../../client"; @@ -40,9 +41,6 @@ import { IndexedDBCryptoStore } from "./indexeddb-crypto-store"; const PROFILE_TRANSACTIONS = false; -/* Keys for the `account` object store */ -const ACCOUNT_OBJECT_KEY_MIGRATION_STATE = "migrationState"; - /** * Implementation of a CryptoStore which is backed by an existing * IndexedDB connection. Generally you want IndexedDBCryptoStore diff --git a/src/crypto/store/indexeddb-crypto-store.ts b/src/crypto/store/indexeddb-crypto-store.ts index dc33d5f81d9..dc104e19ef4 100644 --- a/src/crypto/store/indexeddb-crypto-store.ts +++ b/src/crypto/store/indexeddb-crypto-store.ts @@ -33,6 +33,7 @@ import { OutgoingRoomKeyRequest, ParkedSharedHistory, SecretStorePrivateKeys, + ACCOUNT_OBJECT_KEY_MIGRATION_STATE, } from "./base"; import { IRoomKeyRequestBody } from "../index"; import { ICrossSigningKey } from "../../client"; @@ -63,6 +64,52 @@ export class IndexedDBCryptoStore implements CryptoStore { return IndexedDBHelpers.exists(indexedDB, dbName); } + /** + * Utility to check if a legacy crypto store exists and has not been migrated. + * Returns true if the store exists and has not been migrated, false otherwise. + */ + public static existsAndIsNotMigrated(indexedDb: IDBFactory, dbName: string): Promise { + return new Promise((resolve, reject) => { + let exists = true; + const openDBRequest = indexedDb.open(dbName); + openDBRequest.onupgradeneeded = (): void => { + // Since we did not provide an explicit version when opening, this event + // should only fire if the DB did not exist before at any version. + exists = false; + }; + openDBRequest.onblocked = (): void => reject(openDBRequest.error); + openDBRequest.onsuccess = (): void => { + const db = openDBRequest.result; + if (!exists) { + db.close(); + // The DB did not exist before, but has been created as part of this + // existence check. Delete it now to restore previous state. Delete can + // actually take a while to complete in some browsers, so don't wait for + // it. This won't block future open calls that a store might issue next to + // properly set up the DB. + indexedDb.deleteDatabase(dbName); + resolve(false); + } else { + const tx = db.transaction([IndexedDBCryptoStore.STORE_ACCOUNT], "readonly"); + const objectStore = tx.objectStore(IndexedDBCryptoStore.STORE_ACCOUNT); + const getReq = objectStore.get(ACCOUNT_OBJECT_KEY_MIGRATION_STATE); + + getReq.onsuccess = (): void => { + const migrationState = getReq.result ?? MigrationState.NOT_STARTED; + resolve(migrationState === MigrationState.NOT_STARTED); + }; + + getReq.onerror = (): void => { + reject(getReq.error); + }; + + db.close(); + } + }; + openDBRequest.onerror = (): void => reject(openDBRequest.error); + }); + } + private backendPromise?: Promise; private backend?: CryptoStore; From bc620796c3f7a75441ce29a984d3486db200dadb Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 6 Feb 2024 15:36:22 +0000 Subject: [PATCH 065/595] v31.3.0-rc.4 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 0c2cb0c64e0..204a552df6f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.3.0-rc.3", + "version": "31.3.0-rc.4", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 58a5d09aedd87a295c3d26f4b9655e3f19aeb52a Mon Sep 17 00:00:00 2001 From: Andy Balaam Date: Wed, 7 Feb 2024 15:11:04 +0000 Subject: [PATCH 066/595] Bump matrix-sdk-crypto-wasm to 4.5.0 (#4060) Fixes https://github.com/element-hq/element-web/issues/26948 --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 3cd5c875e07..5f8987b6a91 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^4.3.0", + "@matrix-org/matrix-sdk-crypto-wasm": "^4.5.0", "another-json": "^0.2.0", "bs58": "^5.0.0", "content-type": "^1.0.4", diff --git a/yarn.lock b/yarn.lock index 96dace0d3fb..458d8a12f06 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1683,10 +1683,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@matrix-org/matrix-sdk-crypto-wasm@^4.3.0": - version "4.3.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.3.0.tgz#ef08e7eafae6e9e85658c14a41f0d74a48c03f4a" - integrity sha512-05+NO78pXda/MTxi05NJwBbbAsOmU6WywBOcAk9GarPzgvrj4GvOuYTY6VR5PD7Gzb3AI+vNx/Ho4V0GFKPW/w== +"@matrix-org/matrix-sdk-crypto-wasm@^4.5.0": + version "4.5.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.5.0.tgz#f55ae28f2cd1bce14fa98069840dd31b2172732a" + integrity sha512-QINqNfBRrkVv9vB+hR+OW4RO6cwf8nt4GEbREiS09L5eUK6xa5REpeXyh7ty1QusYk/DBiNadNcM5ROEPk9dcQ== "@matrix-org/olm@3.2.15": version "3.2.15" From f4a796ca2fa09df8d894e7012e84d184988f92e0 Mon Sep 17 00:00:00 2001 From: Valere Date: Wed, 7 Feb 2024 17:28:17 +0100 Subject: [PATCH 067/595] ElementR | Ensure own user and device trust are updated after migration before giving back control to the app. (#4059) * Ensure own trust after olm migration * Check legacy store contains data --- spec/integ/crypto/rust-crypto.spec.ts | 81 +++++++++++++++++++++++++++ src/crypto/store/base.ts | 4 ++ src/rust-crypto/index.ts | 21 ++++++- 3 files changed, 105 insertions(+), 1 deletion(-) diff --git a/spec/integ/crypto/rust-crypto.spec.ts b/spec/integ/crypto/rust-crypto.spec.ts index 5d5a8481943..762bfa0cf05 100644 --- a/spec/integ/crypto/rust-crypto.spec.ts +++ b/spec/integ/crypto/rust-crypto.spec.ts @@ -112,6 +112,78 @@ describe("MatrixClient.initRustCrypto", () => { count: 79, }); + fetchMock.post("path:/_matrix/client/v3/keys/query", { + device_keys: { + "@vdhtest200713:matrix.org": { + KMFSTJSMLB: { + algorithms: ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + device_id: "KMFSTJSMLB", + keys: { + "curve25519:KMFSTJSMLB": "LKv0bKbc0EC4h0jknbemv3QalEkeYvuNeUXVRgVVTTU", + "ed25519:KMFSTJSMLB": "qK70DEqIXq7T+UU3v/al47Ab4JkMEBLpNrTBMbS5rrw", + }, + user_id: "@vdhtest200713:matrix.org", + signatures: { + "@vdhtest200713:matrix.org": { + "ed25519:KMFSTJSMLB": + "aE+PdxLAdwQ/xfJwLmqebvt/lrT97fZas2SQFFrM+dPmHxQtjyS8csm88BLfGRjJKK1B/vWev3AaKqQZwLTUAw", + "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": + "lCd4SA/JT1nnxsgN9yQaLJQhH5hkLMVVx6ba5JAjL1wpWVqyPxzMJHImX6vTztk6S8rybcdfYkea5W/Ii+4HCQ", + }, + }, + }, + }, + }, + master_keys: { + "@vdhtest200713:matrix.org": { + user_id: "@vdhtest200713:matrix.org", + usage: ["master"], + keys: { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": + "gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI", + }, + signatures: { + "@vdhtest200713:matrix.org": { + "ed25519:MWOGVUTXZN": + "stOu1aHbhsWB/Aj5M/HqBR83QzME+682C995Uc8JxSmmyrlWmgG8QrnoUDG2OFR1t6zNQ+QLEilU4WNEOV73DQ", + }, + }, + }, + }, + self_signing_keys: { + "@vdhtest200713:matrix.org": { + user_id: "@vdhtest200713:matrix.org", + usage: ["self_signing"], + keys: { + "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": + "lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k", + }, + signatures: { + "@vdhtest200713:matrix.org": { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": + "HKTC7NoBhAkfJtmemmkn/HvCCgBQViWZ0uH7aGPRaWMDFgD8T7Q+y1j3FKZv4mhSopR85Fq3FRyXsG8OVvGeBA", + }, + }, + }, + }, + user_signing_keys: { + "@vdhtest200713:matrix.org": { + user_id: "@vdhtest200713:matrix.org", + usage: ["user_signing"], + keys: { + "ed25519:YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8": + "YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8", + }, + signatures: { + "@vdhtest200713:matrix.org": { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": + "u8VOi4IaeRJwDgy2ftK02NJQPdBijy8f/0+WnHGG72yfOvMthwWzEw8SrRSNG8glBNrfHinKwCyJJzAJwyepCQ", + }, + }, + }, + }, + }); + const testStoreName = "test-store"; await populateStore(testStoreName); const cryptoStore = new IndexedDBCryptoStore(indexedDB, testStoreName); @@ -129,6 +201,15 @@ describe("MatrixClient.initRustCrypto", () => { await matrixClient.initRustCrypto(); + const verificationStatus = await matrixClient + .getCrypto()! + .getDeviceVerificationStatus("@vdhtest200713:matrix.org", "KMFSTJSMLB"); + + // Check that the current device and identity trust is migrated correctly just after migration + expect(verificationStatus).toBeDefined(); + expect(verificationStatus!.crossSigningVerified).toEqual(true); + expect(verificationStatus!.signedByOwner).toEqual(true); + // Do some basic checks on the imported data const deviceKeys = await matrixClient.getCrypto()!.getOwnDeviceKeys(); expect(deviceKeys.curve25519).toEqual("LKv0bKbc0EC4h0jknbemv3QalEkeYvuNeUXVRgVVTTU"); diff --git a/src/crypto/store/base.ts b/src/crypto/store/base.ts index d523981b29d..e978b24e341 100644 --- a/src/crypto/store/base.ts +++ b/src/crypto/store/base.ts @@ -335,6 +335,10 @@ export enum MigrationState { /** MEGOLM_SESSIONS_MIGRATED, and in addition, we have migrated all the room settings. */ ROOM_SETTINGS_MIGRATED, + + /** ROOM_SETTINGS_MIGRATED, and in addition, we have done the first own keys query in order to + * load the public part of the keys that have been migrated */ + INITIAL_OWN_KEY_QUERY_DONE, } /** diff --git a/src/rust-crypto/index.ts b/src/rust-crypto/index.ts index abbab62ade3..e3c34a6dbb0 100644 --- a/src/rust-crypto/index.ts +++ b/src/rust-crypto/index.ts @@ -22,7 +22,7 @@ import { IHttpOpts, MatrixHttpApi } from "../http-api"; import { ServerSideSecretStorage } from "../secret-storage"; import { ICryptoCallbacks } from "../crypto"; import { Logger } from "../logger"; -import { CryptoStore } from "../crypto/store/base"; +import { CryptoStore, MigrationState } from "../crypto/store/base"; import { migrateFromLegacyCrypto, migrateRoomSettingsFromLegacyCrypto } from "./libolm_migration"; /** @@ -152,6 +152,7 @@ async function initOlmMachine( olmMachine.roomKeyRequestsEnabled = false; const rustCrypto = new RustCrypto(logger, olmMachine, http, userId, deviceId, secretStorage, cryptoCallbacks); + await olmMachine.registerRoomKeyUpdatedCallback((sessions: RustSdkCryptoJs.RoomKeyInfo[]) => rustCrypto.onRoomKeysUpdated(sessions), ); @@ -182,5 +183,23 @@ async function initOlmMachine( // XXX: find a less hacky way to do this. await olmMachine.outgoingRequests(); + if (legacyCryptoStore && (await legacyCryptoStore.containsData())) { + const migrationState = await legacyCryptoStore.getMigrationState(); + if (migrationState < MigrationState.INITIAL_OWN_KEY_QUERY_DONE) { + logger.debug(`Performing initial key query after migration`); + // We need to do an initial keys query so that the rust stack can properly update trust of + // the user device and identity from the migrated private keys. + // If not done, there is a short period where the own device/identity trust will be undefined after migration. + try { + await rustCrypto.userHasCrossSigningKeys(userId); + } catch (e) { + // We don't want to fail the startup if this fails, but we do want to log it. + // It will be retried by the sdk. + logger.error("Failed to check for cross-signing keys after migration", e); + } + await legacyCryptoStore.setMigrationState(MigrationState.INITIAL_OWN_KEY_QUERY_DONE); + } + } + return rustCrypto; } From 1b7695cdca841672d582168a19bfe77f00207fea Mon Sep 17 00:00:00 2001 From: Andy Balaam Date: Thu, 8 Feb 2024 13:25:22 +0000 Subject: [PATCH 068/595] Add AsJson forms of the key import/export methods (#4057) --- spec/integ/crypto/crypto.spec.ts | 4 ++-- spec/unit/rust-crypto/rust-crypto.spec.ts | 25 +++++++++++++++++++- src/crypto-api.ts | 28 +++++++++++++++++++++-- src/crypto/index.ts | 23 +++++++++++++++++++ src/rust-crypto/backup.ts | 13 ++++++++++- src/rust-crypto/rust-crypto.ts | 8 +++++++ 6 files changed, 95 insertions(+), 6 deletions(-) diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index ed3af3b8e8e..9448b84ecc5 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -1379,7 +1379,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, }); expect(decryptedEvent.getContent().body).toEqual("42"); - const exported = await aliceClient.exportRoomKeys(); + const exported = await aliceClient.getCrypto()!.exportRoomKeysAsJson(); // start a new client await aliceClient.stopClient(); @@ -1395,7 +1395,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, keyReceiver = new E2EKeyReceiver(homeserverUrl); syncResponder = new SyncResponder(homeserverUrl); await initCrypto(aliceClient); - await aliceClient.importRoomKeys(exported); + await aliceClient.getCrypto()!.importRoomKeysAsJson(exported); expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); await startClientAndAwaitFirstSync(); diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 75b3decc6c7..9d7fc913bd3 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -383,7 +383,7 @@ describe("RustCrypto", () => { ); }); - describe(".importRoomKeys and .exportRoomKeys", () => { + describe("importing and exporting room keys", () => { let rustCrypto: RustCrypto; beforeEach( @@ -416,6 +416,29 @@ describe("RustCrypto", () => { expect(aSession).toStrictEqual(exportedKey); }); + + it("should import and export keys as JSON", async () => { + const someRoomKeys = testData.MEGOLM_SESSION_DATA_ARRAY; + let importTotal = 0; + const opt: ImportRoomKeysOpts = { + progressCallback: (stage) => { + importTotal = stage.total ?? 0; + }, + }; + await rustCrypto.importRoomKeysAsJson(JSON.stringify(someRoomKeys), opt); + + expect(importTotal).toBe(someRoomKeys.length); + + const keys: Array = JSON.parse(await rustCrypto.exportRoomKeysAsJson()); + expect(Array.isArray(keys)).toBeTruthy(); + expect(keys.length).toBe(someRoomKeys.length); + + const aSession = someRoomKeys[0]; + + const exportedKey = keys.find((k) => k.session_id == aSession.session_id); + + expect(aSession).toStrictEqual(exportedKey); + }); }); describe("call preprocess methods", () => { diff --git a/src/crypto-api.ts b/src/crypto-api.ts index 1ce64152668..13d94a29599 100644 --- a/src/crypto-api.ts +++ b/src/crypto-api.ts @@ -96,6 +96,17 @@ export interface CryptoApi { */ exportRoomKeys(): Promise; + /** + * Get a JSON list containing all of the room keys + * + * This should be encrypted before returning it to the user. + * + * @returns a promise which resolves to a JSON string + * encoding a list of session export objects, + * each of which is an IMegolmSessionData + */ + exportRoomKeysAsJson(): Promise; + /** * Import a list of room keys previously exported by exportRoomKeys * @@ -105,6 +116,17 @@ export interface CryptoApi { */ importRoomKeys(keys: IMegolmSessionData[], opts?: ImportRoomKeysOpts): Promise; + /** + * Import a JSON string encoding a list of room keys previously + * exported by exportRoomKeysAsJson + * + * @param keys - a JSON string encoding a list of session export + * objects, each of which is an IMegolmSessionData + * @param opts - options object + * @returns a promise which resolves once the keys have been imported + */ + importRoomKeysAsJson(keys: string, opts?: ImportRoomKeysOpts): Promise; + /** * Check if the given user has published cross-signing keys. * @@ -593,7 +615,8 @@ export class DeviceVerificationStatus { /** * Room key import progress report. - * Used when calling {@link CryptoApi#importRoomKeys} as the parameter of + * Used when calling {@link CryptoApi#importRoomKeys} or + * {@link CryptoApi#importRoomKeysAsJson} as the parameter of * the progressCallback. Used to display feedback. */ export interface ImportRoomKeyProgressData { @@ -604,7 +627,8 @@ export interface ImportRoomKeyProgressData { } /** - * Options object for {@link CryptoApi#importRoomKeys}. + * Options object for {@link CryptoApi#importRoomKeys} and + * {@link CryptoApi#importRoomKeysAsJson}. */ export interface ImportRoomKeysOpts { /** Reports ongoing progress of the import process. Can be used for feedback. */ diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 1a0e4f43dae..0f6018b8e15 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -3142,6 +3142,16 @@ export class Crypto extends TypedEventEmitter { + return JSON.stringify(await this.exportRoomKeys()); + } + /** * Import a list of room keys previously exported by exportRoomKeys * @@ -3184,6 +3194,19 @@ export class Crypto extends TypedEventEmitter { + return await this.importRoomKeys(JSON.parse(keys)); + } + /** * Counts the number of end to end session keys that are waiting to be backed up * @returns Promise which resolves to the number of sessions requiring backup diff --git a/src/rust-crypto/backup.ts b/src/rust-crypto/backup.ts index d7ca7d85a42..0fb1640320b 100644 --- a/src/rust-crypto/backup.ts +++ b/src/rust-crypto/backup.ts @@ -188,7 +188,18 @@ export class RustBackupManager extends TypedEventEmitter { - const jsonKeys = JSON.stringify(keys); + await this.importRoomKeysAsJson(JSON.stringify(keys), opts); + } + + /** + * Import a list of room keys previously exported by exportRoomKeysAsJson + * + * @param keys - a JSON string encoding a list of session export objects, + * each of which is an IMegolmSessionData + * @param opts - options object + * @returns a promise which resolves once the keys have been imported + */ + public async importRoomKeysAsJson(jsonKeys: string, opts?: ImportRoomKeysOpts): Promise { await this.olmMachine.importExportedRoomKeys(jsonKeys, (progress: BigInt, total: BigInt): void => { const importOpt: ImportRoomKeyProgressData = { total: Number(total), diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 30c27201f9d..ace265b150c 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -346,10 +346,18 @@ export class RustCrypto extends TypedEventEmitter { + return await this.olmMachine.exportRoomKeys(() => true); + } + public async importRoomKeys(keys: IMegolmSessionData[], opts?: ImportRoomKeysOpts): Promise { return await this.backupManager.importRoomKeys(keys, opts); } + public async importRoomKeysAsJson(keys: string, opts?: ImportRoomKeysOpts): Promise { + return await this.backupManager.importRoomKeysAsJson(keys, opts); + } + /** * Implementation of {@link CryptoApi.userHasCrossSigningKeys}. */ From b63845a4131b0e5fe0f375edb7c867b167faccb8 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 13 Feb 2024 14:55:35 +0000 Subject: [PATCH 069/595] v31.3.0 --- CHANGELOG.md | 21 +++++++++++++++++++++ package.json | 2 +- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2a81e228e42..f8b10154b91 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,24 @@ +Changes in [31.3.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.3.0) (2024-02-13) +================================================================================================== +## ✨ Features + +* Add expire\_ts compatibility to matrixRTC ([#4032](https://github.com/matrix-org/matrix-js-sdk/pull/4032)). Contributed by @toger5. +* Element-R: support for migration of the room list from legacy crypto ([#4036](https://github.com/matrix-org/matrix-js-sdk/pull/4036)). Contributed by @richvdh. +* Element-R: check persistent room list for encryption config ([#4035](https://github.com/matrix-org/matrix-js-sdk/pull/4035)). Contributed by @richvdh. +* Support optional MSC3860 redirects ([#4007](https://github.com/matrix-org/matrix-js-sdk/pull/4007)). Contributed by @turt2live. + +## 🐛 Bug Fixes + +* WebR: migrate the megolm session imported flag ([#4037](https://github.com/matrix-org/matrix-js-sdk/pull/4037)). Contributed by @BillCarsonFr. +* ElementR: fix emoji verification stalling when both ends hit start at the same time ([#4004](https://github.com/matrix-org/matrix-js-sdk/pull/4004)). Contributed by @uhoreg. +* Dependencies: Bump wasm bindings version to 4.3.0 ([#4042](https://github.com/matrix-org/matrix-js-sdk/pull/4042)). Contributed by @BillCarsonFr. +* Element R: emit events when devices have changed ([#4019](https://github.com/matrix-org/matrix-js-sdk/pull/4019)). Contributed by @uhoreg. +* ElementR: report invalid keys rather than failing to restore from backup ([#4006](https://github.com/matrix-org/matrix-js-sdk/pull/4006)). Contributed by @uhoreg. +* Make `timeline` a getter ([#4022](https://github.com/matrix-org/matrix-js-sdk/pull/4022)). Contributed by @florianduros. +* Implement getting verification cancellation info in Rust crypto ([#3947](https://github.com/matrix-org/matrix-js-sdk/pull/3947)). Contributed by @uhoreg. +* Fix crypto migration for megolm sessions with no sender key ([#4024](https://github.com/matrix-org/matrix-js-sdk/pull/4024)). Contributed by @richvdh. + + Changes in [31.2.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.2.0) (2024-01-31) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index 204a552df6f..fbf9dba841a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.3.0-rc.4", + "version": "31.3.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From d03db1740586714a194205b9efc8cff37c3bb996 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 13 Feb 2024 14:56:34 +0000 Subject: [PATCH 070/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 7f36ab43860..a4deb7e21d0 100644 --- a/package.json +++ b/package.json @@ -30,8 +30,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,6 +132,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From 5d7218476ab4f1d75aeafae9109511846ee194f7 Mon Sep 17 00:00:00 2001 From: Timo <16718859+toger5@users.noreply.github.com> Date: Wed, 14 Feb 2024 12:25:43 +0100 Subject: [PATCH 071/595] Await encrypted messages (#4063) * await encrypted messages + fix comments Signed-off-by: Timo K * fix Tests Signed-off-by: Timo K * fix test Signed-off-by: Timo K * make sonar happy Signed-off-by: Timo K --------- Signed-off-by: Timo K --- spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts | 5 +++-- src/matrixrtc/MatrixRTCSession.ts | 4 ++-- src/matrixrtc/MatrixRTCSessionManager.ts | 10 +++++++--- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts b/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts index 8784ab48b48..f5ffc13e05b 100644 --- a/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts @@ -87,7 +87,7 @@ describe("MatrixRTCSessionManager", () => { expect(onEnded).toHaveBeenCalledWith(room1.roomId, client.matrixRTC.getActiveRoomSession(room1)); }); - it("Calls onCallEncryption on encryption keys event", () => { + it("Calls onCallEncryption on encryption keys event", async () => { const room1 = makeMockRoom([membershipTemplate]); jest.spyOn(client, "getRooms").mockReturnValue([room1]); jest.spyOn(client, "getRoom").mockReturnValue(room1); @@ -95,7 +95,7 @@ describe("MatrixRTCSessionManager", () => { client.emit(ClientEvent.Room, room1); const onCallEncryptionMock = jest.fn(); client.matrixRTC.getRoomSession(room1).onCallEncryption = onCallEncryptionMock; - + client.decryptEventIfNeeded = () => Promise.resolve(); const timelineEvent = { getType: jest.fn().mockReturnValue(EventType.CallEncryptionKeysPrefix), getContent: jest.fn().mockReturnValue({}), @@ -106,6 +106,7 @@ describe("MatrixRTCSessionManager", () => { }, } as unknown as MatrixEvent; client.emit(RoomEvent.Timeline, timelineEvent, undefined, undefined, false, {} as IRoomTimelineData); + await new Promise(process.nextTick); expect(onCallEncryptionMock).toHaveBeenCalled(); }); }); diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index b8ee6626fd0..403fd248f65 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -176,7 +176,7 @@ export class MatrixRTCSession extends TypedEventEmitter { - if (event.getType() !== EventType.CallEncryptionKeysPrefix) return; + private async consumeCallEncryptionEvent(event: MatrixEvent): Promise { + await this.client.decryptEventIfNeeded(event); + if (event.getType() !== EventType.CallEncryptionKeysPrefix) return Promise.resolve(); const room = this.client.getRoom(event.getRoomId()); if (!room) { logger.error(`Got room state event for unknown room ${event.getRoomId()}!`); - return; + return Promise.resolve(); } this.getRoomSession(room).onCallEncryption(event); + } + private onTimeline = (event: MatrixEvent): void => { + this.consumeCallEncryptionEvent(event); }; private onRoom = (room: Room): void => { From 74c109adacd4d9ab8bf832aea9faeff55598de27 Mon Sep 17 00:00:00 2001 From: Timo <16718859+toger5@users.noreply.github.com> Date: Wed, 14 Feb 2024 14:04:40 +0100 Subject: [PATCH 072/595] Ignore memberships of users that are not in the call (#4065) * ignore memberships of users that are not in the call Signed-off-by: Timo K * recompute memberships on room member change. Signed-off-by: Timo K * fix Tests and add test for left member Signed-off-by: Timo K * fix event type Signed-off-by: Timo K * fix import desaster Signed-off-by: Timo K * fix mocks Signed-off-by: Timo K --------- Signed-off-by: Timo K --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 13 +++++++++++++ spec/unit/matrixrtc/mocks.ts | 3 +++ src/matrixrtc/MatrixRTCSession.ts | 13 ++++++++++--- 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index c1faa5ac0c3..2c40e9a2230 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -74,6 +74,13 @@ describe("MatrixRTCSession", () => { expect(sess?.memberships[0].deviceId).toEqual("AAAAAAA"); }); + it("ignores memberships events of members not in the room", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + mockRoom.hasMembershipState = (state) => state === "join"; + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sess?.memberships.length).toEqual(0); + }); + it("honours created_ts", () => { const expiredMembership = Object.assign({}, membershipTemplate); expiredMembership.created_ts = 500; @@ -91,9 +98,12 @@ describe("MatrixRTCSession", () => { it("safely ignores events with no memberships section", () => { const mockRoom = { + ...makeMockRoom([]), roomId: randomString(8), getLiveTimeline: jest.fn().mockReturnValue({ getState: jest.fn().mockReturnValue({ + on: jest.fn(), + off: jest.fn(), getStateEvents: (_type: string, _stateKey: string) => [ { getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), @@ -112,9 +122,12 @@ describe("MatrixRTCSession", () => { it("safely ignores events with junk memberships section", () => { const mockRoom = { + ...makeMockRoom([]), roomId: randomString(8), getLiveTimeline: jest.fn().mockReturnValue({ getState: jest.fn().mockReturnValue({ + on: jest.fn(), + off: jest.fn(), getStateEvents: (_type: string, _stateKey: string) => [ { getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), diff --git a/spec/unit/matrixrtc/mocks.ts b/spec/unit/matrixrtc/mocks.ts index e342eb2dc63..84496e657da 100644 --- a/spec/unit/matrixrtc/mocks.ts +++ b/spec/unit/matrixrtc/mocks.ts @@ -24,6 +24,7 @@ export function makeMockRoom(memberships: CallMembershipData[], localAge: number const roomState = makeMockRoomState(memberships, roomId, localAge); return { roomId: roomId, + hasMembershipState: jest.fn().mockReturnValue(true), getLiveTimeline: jest.fn().mockReturnValue({ getState: jest.fn().mockReturnValue(roomState), }), @@ -33,6 +34,8 @@ export function makeMockRoom(memberships: CallMembershipData[], localAge: number export function makeMockRoomState(memberships: CallMembershipData[], roomId: string, localAge: number | null = null) { const event = mockRTCEvent(memberships, roomId, localAge); return { + on: jest.fn(), + off: jest.fn(), getStateEvents: (_: string, stateKey: string) => { if (stateKey !== undefined) return event; return [event]; diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 403fd248f65..03871bb90e8 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -21,6 +21,7 @@ import { Room } from "../models/room"; import { MatrixClient } from "../client"; import { EventType } from "../@types/event"; import { CallMembership, CallMembershipData } from "./CallMembership"; +import { RoomStateEvent } from "../models/room-state"; import { Focus } from "./focus"; import { MatrixError, MatrixEvent } from "../matrix"; import { randomString, secureRandomBase64Url } from "../randomstring"; @@ -152,9 +153,11 @@ export class MatrixRTCSession extends TypedEventEmitter Date: Fri, 16 Feb 2024 10:34:15 +0000 Subject: [PATCH 073/595] Add unread marker event type (#4069) * Add unread marker event type To support setting the 'marked unread' flag * Await encrypted messages (#4063) * await encrypted messages + fix comments Signed-off-by: Timo K * fix Tests Signed-off-by: Timo K * fix test Signed-off-by: Timo K * make sonar happy Signed-off-by: Timo K --------- Signed-off-by: Timo K * Ignore memberships of users that are not in the call (#4065) * ignore memberships of users that are not in the call Signed-off-by: Timo K * recompute memberships on room member change. Signed-off-by: Timo K * fix Tests and add test for left member Signed-off-by: Timo K * fix event type Signed-off-by: Timo K * fix import desaster Signed-off-by: Timo K * fix mocks Signed-off-by: Timo K --------- Signed-off-by: Timo K --------- Signed-off-by: Timo K Co-authored-by: Timo <16718859+toger5@users.noreply.github.com> --- src/models/event.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/models/event.ts b/src/models/event.ts index 4f5f5ab3030..c5ca61ca87b 100644 --- a/src/models/event.ts +++ b/src/models/event.ts @@ -163,6 +163,10 @@ export interface IVisibilityChange { reason: string | null; } +export interface IMarkedUnreadEvent { + unread: boolean; +} + export interface IClearEvent { room_id?: string; type: string; From fe46fec1615e56d67fbf47ea6b69f0ad2d3f96f5 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 16 Feb 2024 14:43:52 +0000 Subject: [PATCH 074/595] Allow specifying more OIDC client metadata for dynamic registration (#4070) --- spec/unit/oidc/register.spec.ts | 38 +++++++++++++++++-------- src/@types/common.ts | 17 +++++++++++ src/matrix.ts | 1 + src/oidc/register.ts | 50 ++++++++++++++++++++++----------- 4 files changed, 77 insertions(+), 29 deletions(-) create mode 100644 src/@types/common.ts diff --git a/spec/unit/oidc/register.spec.ts b/spec/unit/oidc/register.spec.ts index ae61ecd2d81..f0e25784137 100644 --- a/spec/unit/oidc/register.spec.ts +++ b/spec/unit/oidc/register.spec.ts @@ -17,13 +17,22 @@ limitations under the License. import fetchMockJest from "fetch-mock-jest"; import { OidcError } from "../../../src/oidc/error"; -import { registerOidcClient } from "../../../src/oidc/register"; +import { OidcRegistrationClientMetadata, registerOidcClient } from "../../../src/oidc/register"; describe("registerOidcClient()", () => { const issuer = "https://auth.com/"; const registrationEndpoint = "https://auth.com/register"; const clientName = "Element"; const baseUrl = "https://just.testing"; + const metadata: OidcRegistrationClientMetadata = { + clientUri: baseUrl, + redirectUris: [baseUrl], + clientName, + applicationType: "web", + tosUri: "http://tos-uri", + policyUri: "http://policy-uri", + contacts: ["admin@example.com"], + }; const dynamicClientId = "xyz789"; const delegatedAuthConfig = { @@ -42,14 +51,19 @@ describe("registerOidcClient()", () => { status: 200, body: JSON.stringify({ client_id: dynamicClientId }), }); - expect(await registerOidcClient(delegatedAuthConfig, clientName, baseUrl)).toEqual(dynamicClientId); - expect(fetchMockJest).toHaveBeenCalledWith(registrationEndpoint, { - headers: { - "Accept": "application/json", - "Content-Type": "application/json", - }, - method: "POST", - body: JSON.stringify({ + expect(await registerOidcClient(delegatedAuthConfig, metadata)).toEqual(dynamicClientId); + expect(fetchMockJest).toHaveBeenCalledWith( + registrationEndpoint, + expect.objectContaining({ + headers: { + "Accept": "application/json", + "Content-Type": "application/json", + }, + method: "POST", + }), + ); + expect(JSON.parse(fetchMockJest.mock.calls[0][1]!.body as string)).toEqual( + expect.objectContaining({ client_name: clientName, client_uri: baseUrl, response_types: ["code"], @@ -59,14 +73,14 @@ describe("registerOidcClient()", () => { token_endpoint_auth_method: "none", application_type: "web", }), - }); + ); }); it("should throw when registration request fails", async () => { fetchMockJest.post(registrationEndpoint, { status: 500, }); - await expect(() => registerOidcClient(delegatedAuthConfig, clientName, baseUrl)).rejects.toThrow( + await expect(() => registerOidcClient(delegatedAuthConfig, metadata)).rejects.toThrow( OidcError.DynamicRegistrationFailed, ); }); @@ -77,7 +91,7 @@ describe("registerOidcClient()", () => { // no clientId in response body: "{}", }); - await expect(() => registerOidcClient(delegatedAuthConfig, clientName, baseUrl)).rejects.toThrow( + await expect(() => registerOidcClient(delegatedAuthConfig, metadata)).rejects.toThrow( OidcError.DynamicRegistrationInvalid, ); }); diff --git a/src/@types/common.ts b/src/@types/common.ts new file mode 100644 index 00000000000..77b856faf93 --- /dev/null +++ b/src/@types/common.ts @@ -0,0 +1,17 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +export type NonEmptyArray = [T, ...T[]]; diff --git a/src/matrix.ts b/src/matrix.ts index 6be9350404a..9dd83affade 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -56,6 +56,7 @@ export * from "./crypto/store/localStorage-crypto-store"; export * from "./crypto/store/indexeddb-crypto-store"; export type { OutgoingRoomKeyRequest } from "./crypto/store/base"; export * from "./content-repo"; +export * from "./@types/common"; export * from "./@types/uia"; export * from "./@types/event"; export * from "./@types/PushRules"; diff --git a/src/oidc/register.ts b/src/oidc/register.ts index 44f933fd41b..65add493510 100644 --- a/src/oidc/register.ts +++ b/src/oidc/register.ts @@ -19,16 +19,37 @@ import { OidcError } from "./error"; import { Method } from "../http-api"; import { logger } from "../logger"; import { ValidatedIssuerConfig } from "./validate"; +import { NonEmptyArray } from "../@types/common"; /** * Client metadata passed to registration endpoint */ export type OidcRegistrationClientMetadata = { - clientName: string; - clientUri: string; - redirectUris: string[]; + clientName: OidcRegistrationRequestBody["client_name"]; + clientUri: OidcRegistrationRequestBody["client_uri"]; + logoUri?: OidcRegistrationRequestBody["logo_uri"]; + applicationType: OidcRegistrationRequestBody["application_type"]; + redirectUris: OidcRegistrationRequestBody["redirect_uris"]; + contacts: OidcRegistrationRequestBody["contacts"]; + tosUri: OidcRegistrationRequestBody["tos_uri"]; + policyUri: OidcRegistrationRequestBody["policy_uri"]; }; +interface OidcRegistrationRequestBody { + client_name: string; + client_uri: string; + logo_uri?: string; + contacts: NonEmptyArray; + tos_uri: string; + policy_uri: string; + redirect_uris?: NonEmptyArray; + response_types?: NonEmptyArray; + grant_types?: NonEmptyArray; + id_token_signed_response_alg: string; + token_endpoint_auth_method: string; + application_type: "web" | "native"; +} + /** * Make the client registration request * @param registrationEndpoint - URL as returned from issuer ./well-known/openid-configuration @@ -42,7 +63,7 @@ const doRegistration = async ( clientMetadata: OidcRegistrationClientMetadata, ): Promise => { // https://openid.net/specs/openid-connect-registration-1_0.html - const metadata = { + const metadata: OidcRegistrationRequestBody = { client_name: clientMetadata.clientName, client_uri: clientMetadata.clientUri, response_types: ["code"], @@ -50,7 +71,11 @@ const doRegistration = async ( redirect_uris: clientMetadata.redirectUris, id_token_signed_response_alg: "RS256", token_endpoint_auth_method: "none", - application_type: "web", + application_type: clientMetadata.applicationType, + logo_uri: clientMetadata.logoUri, + contacts: clientMetadata.contacts, + policy_uri: clientMetadata.policyUri, + tos_uri: clientMetadata.tosUri, }; const headers = { "Accept": "application/json", @@ -88,25 +113,16 @@ const doRegistration = async ( /** * Attempts dynamic registration against the configured registration endpoint * @param delegatedAuthConfig - Auth config from ValidatedServerConfig - * @param clientName - Client name to register with the OP, eg 'Element' - * @param baseUrl - URL of the home page of the Client, eg 'https://app.element.io/' + * @param clientMetadata - The metadata for the client which to register * @returns Promise resolved with registered clientId * @throws when registration is not supported, on failed request or invalid response */ export const registerOidcClient = async ( delegatedAuthConfig: IDelegatedAuthConfig & ValidatedIssuerConfig, - clientName: string, - baseUrl: string, + clientMetadata: OidcRegistrationClientMetadata, ): Promise => { - const clientMetadata = { - clientName, - clientUri: baseUrl, - redirectUris: [baseUrl], - }; if (!delegatedAuthConfig.registrationEndpoint) { throw new Error(OidcError.DynamicRegistrationNotSupported); } - const clientId = await doRegistration(delegatedAuthConfig.registrationEndpoint, clientMetadata); - - return clientId; + return doRegistration(delegatedAuthConfig.registrationEndpoint, clientMetadata); }; From 7e0d92cbe0b46acf1d043218bd5ca3a64d7a9d14 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 19 Feb 2024 12:25:24 +0000 Subject: [PATCH 075/595] Add getAuthIssuer method for MSC2965 (#4071) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/matrix-client.spec.ts | 18 ++++++++++++++++++ src/client.ts | 14 ++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index f9fab0864ba..ac43580913a 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -3012,4 +3012,22 @@ describe("MatrixClient", function () { expect(result).toEqual({}); }); }); + + describe("getAuthIssuer", () => { + it("should use unstable prefix", async () => { + httpLookups = [ + { + method: "GET", + path: `/auth_issuer`, + data: { + issuer: "https://issuer/", + }, + prefix: "/_matrix/client/unstable/org.matrix.msc2965", + }, + ]; + + await expect(client.getAuthIssuer()).resolves.toEqual({ issuer: "https://issuer/" }); + expect(httpLookups.length).toEqual(0); + }); + }); }); diff --git a/src/client.ts b/src/client.ts index b08598913cb..15fc1a99429 100644 --- a/src/client.ts +++ b/src/client.ts @@ -9974,6 +9974,20 @@ export class MatrixClient extends TypedEventEmitter { + return this.http.request(Method.Get, "/auth_issuer", undefined, undefined, { + prefix: ClientPrefix.Unstable + "/org.matrix.msc2965", + }); + } } /** From f96dac1e5bcd8bcda98271378924ef16a61b7347 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 19 Feb 2024 12:32:26 +0000 Subject: [PATCH 076/595] Saner releases clean up (#4072) * Remove allchange dependency Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Remove stale release scripts Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Update pull request template to remove allchange behaviours Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Update label check automation Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * mheap Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Re-add node-fetch which was previously transitive via allchange Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Use node-fetch@^2 Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/PULL_REQUEST_TEMPLATE.md | 6 - .github/workflows/pull_request.yaml | 12 +- package.json | 2 +- post-release.sh | 15 -- release.sh | 346 ---------------------------- yarn.lock | 298 +----------------------- 6 files changed, 17 insertions(+), 662 deletions(-) delete mode 100755 post-release.sh delete mode 100755 release.sh diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index bbaaa050791..a291d1b9ffc 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -5,9 +5,3 @@ - [ ] Tests written for new code (and old code if feasible) - [ ] Linter and other CI checks pass - [ ] Sign-off given on the changes (see [CONTRIBUTING.md](https://github.com/matrix-org/matrix-js-sdk/blob/develop/CONTRIBUTING.md)) - - diff --git a/.github/workflows/pull_request.yaml b/.github/workflows/pull_request.yaml index 743526a8df9..5ce27aa8a9f 100644 --- a/.github/workflows/pull_request.yaml +++ b/.github/workflows/pull_request.yaml @@ -14,11 +14,17 @@ jobs: name: Preview Changelog runs-on: ubuntu-latest steps: - - uses: matrix-org/allchange@main + - uses: mheap/github-action-required-labels@80a96a4863886addcbc9f681b5b295ba7f5424e1 # v5 if: github.event_name != 'merge_group' with: - ghToken: ${{ secrets.GITHUB_TOKEN }} - requireLabel: true + labels: | + X-Breaking-Change + T-Deprecation + T-Enhancement + T-Defect + Dependencies + mode: minimum + count: 1 prevent-blocked: name: Prevent Blocked diff --git a/package.json b/package.json index a4deb7e21d0..281809b17c5 100644 --- a/package.json +++ b/package.json @@ -93,7 +93,6 @@ "@types/uuid": "9", "@typescript-eslint/eslint-plugin": "^6.0.0", "@typescript-eslint/parser": "^6.0.0", - "allchange": "^1.3.0", "babel-jest": "^29.0.0", "debug": "^4.3.4", "domexception": "^4.0.0", @@ -117,6 +116,7 @@ "jest-mock": "^29.0.0", "lint-staged": "^15.0.2", "matrix-mock-request": "^2.5.0", + "node-fetch": "^2.7.0", "prettier": "3.2.4", "rimraf": "^5.0.0", "ts-node": "^10.9.1", diff --git a/post-release.sh b/post-release.sh deleted file mode 100755 index b639770db57..00000000000 --- a/post-release.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -# -# Script to perform a post-release steps of matrix-js-sdk. -# -# Requires: -# jq; install from your distribution's package manager (https://stedolan.github.io/jq/) - -set -e - -jq --version > /dev/null || (echo "jq is required: please install it"; kill $$) - -if [ "$(git branch -lr | grep origin/develop -c)" -ge 1 ]; then - "$(dirname "$0")/scripts/release/post-merge-master.sh" - git push origin develop -fi diff --git a/release.sh b/release.sh deleted file mode 100755 index 83916a381f0..00000000000 --- a/release.sh +++ /dev/null @@ -1,346 +0,0 @@ -#!/bin/bash -# -# Script to perform a release of matrix-js-sdk and downstream projects. -# -# Requires: -# jq; install from your distribution's package manager (https://stedolan.github.io/jq/) -# hub; install via brew (macOS) or source/pre-compiled binaries (debian) (https://github.com/github/hub) - Tested on v2.2.9 -# yarn; install via brew (macOS) or similar (https://yarnpkg.com/docs/install/) -# -# Note: this script is also used to release matrix-react-sdk, element-web, and element-desktop. - -set -e - -jq --version > /dev/null || (echo "jq is required: please install it"; kill $$) -if [[ $(command -v hub) ]] && [[ $(hub --version) =~ hub[[:space:]]version[[:space:]]([0-9]*).([0-9]*) ]]; then - HUB_VERSION_MAJOR=${BASH_REMATCH[1]} - HUB_VERSION_MINOR=${BASH_REMATCH[2]} - if [[ $HUB_VERSION_MAJOR -lt 2 ]] || [[ $HUB_VERSION_MAJOR -eq 2 && $HUB_VERSION_MINOR -lt 5 ]]; then - echo "hub version 2.5 is required, you have $HUB_VERSION_MAJOR.$HUB_VERSION_MINOR installed" - exit - fi -else - echo "hub is required: please install it" - exit -fi -yarn --version > /dev/null || (echo "yarn is required: please install it"; kill $$) - -USAGE="$0 [-x] [-c changelog_file] vX.Y.Z" - -help() { - cat <&2 - exit 1 -fi - -function check_dependency { - local depver=$(cat package.json | jq -r .dependencies[\"$1\"]) - if [ "$depver" == "null" ]; then return 0; fi - - echo "Checking version of $1..." - local latestver=$(yarn info -s "$1" dist-tags.next) - if [ "$depver" != "$latestver" ] - then - echo "The latest version of $1 is $latestver but package.json depends on $depver." - echo -n "Type 'u' to auto-upgrade, 'c' to continue anyway, or 'a' to abort:" - read resp - if [ "$resp" != "u" ] && [ "$resp" != "c" ] - then - echo "Aborting." - exit 1 - fi - if [ "$resp" == "u" ] - then - echo "Upgrading $1 to $latestver..." - yarn add -E "$1@$latestver" - git add -u - git commit -m "Upgrade $1 to $latestver" - fi - fi -} - -function reset_dependency { - local depver=$(cat package.json | jq -r .dependencies[\"$1\"]) - if [ "$depver" == "null" ]; then return 0; fi - - echo "Resetting $1 to develop branch..." - yarn add "github:matrix-org/$1#develop" - git add -u - git commit -m "Reset $1 back to develop branch" -} - -has_subprojects=0 -if [ -f release_config.yaml ]; then - subprojects=$(cat release_config.yaml | python -c "import yaml; import sys; print(' '.join(list(yaml.load(sys.stdin)['subprojects'].keys())))" 2> /dev/null) - if [ "$?" -eq 0 ]; then - has_subprojects=1 - echo "Checking subprojects for upgrades" - for proj in $subprojects; do - check_dependency "$proj" - done - fi -fi - -ret=0 -cat package.json | jq '.dependencies[]' | grep -q '#develop' || ret=$? -if [ "$ret" -eq 0 ]; then - echo "package.json contains develop dependencies. Refusing to release." - exit -fi - -# We use Git branch / commit dependencies for some packages, and Yarn seems -# to have a hard time getting that right. See also -# https://github.com/yarnpkg/yarn/issues/4734. As a workaround, we clean the -# global cache here to ensure we get the right thing. -yarn cache clean -# Ensure all dependencies are updated -yarn install --ignore-scripts --frozen-lockfile - -# ignore leading v on release -release="${1#v}" -tag="v${release}" - -prerelease=0 -# We check if this build is a prerelease by looking to -# see if the version has a hyphen in it. Crude, -# but semver doesn't support postreleases so anything -# with a hyphen is a prerelease. -echo $release | grep -q '-' && prerelease=1 - -if [ $prerelease -eq 1 ]; then - echo Making a PRE-RELEASE -else - read -p "Making a FINAL RELEASE, press enter to continue " REPLY -fi - -rel_branch=$(git symbolic-ref --short HEAD) - -if [ -z "$skip_changelog" ]; then - echo "Generating changelog" - yarn run allchange "$release" - read -p "Edit $changelog_file manually, or press enter to continue " REPLY - - if [ -n "$(git ls-files --modified $changelog_file)" ]; then - echo "Committing updated changelog" - git commit "$changelog_file" -m "Prepare changelog for $tag" - fi -fi -latest_changes=$(mktemp) -cat "${changelog_file}" | "$(dirname "$0")/scripts/changelog_head.py" > "${latest_changes}" - -set -x - -# Bump package.json and build the dist -echo "yarn version" -# yarn version will automatically commit its modification -# and make a release tag. We don't want it to create the tag -# because it can only sign with the default key, but we can -# only turn off both of these behaviours, so we have to -# manually commit the result. -yarn version --no-git-tag-version --new-version "$release" - -"$(dirname "$0")/scripts/release/pre-release.sh" - -# commit yarn.lock if it exists, is versioned, and is modified -if [[ -f yarn.lock && $(git status --porcelain yarn.lock | grep '^ M') ]]; -then - pkglock='yarn.lock' -else - pkglock='' -fi -git commit package.json $pkglock -m "$tag" - - -# figure out if we should be signing this release -signing_id= -if [ -f release_config.yaml ]; then - result=$(cat release_config.yaml | python -c "import yaml; import sys; print(yaml.load(sys.stdin)['signing_id'])" 2> /dev/null || true) - if [ "$?" -eq 0 ]; then - signing_id=$result - fi -fi - - -# If there is a 'dist' script in the package.json, -# run it in a separate checkout of the project, then -# upload any files in the 'dist' directory as release -# assets. -# We make a completely separate checkout to be sure -# we're using released versions of the dependencies -# (rather than whatever we're pulling in from yarn link) -assets='' -dodist=0 -jq -e .scripts.dist package.json 2> /dev/null || dodist=$? -if [ $dodist -eq 0 ]; then - projdir=$(pwd) - builddir=$(mktemp -d 2>/dev/null || mktemp -d -t 'mytmpdir') - echo "Building distribution copy in $builddir" - pushd "$builddir" - git clone "$projdir" . - git checkout "$rel_branch" - yarn install --frozen-lockfile - # We haven't tagged yet, so tell the dist script what version - # it's building - DIST_VERSION="$tag" yarn dist - - popd - - for i in "$builddir"/dist/*; do - assets="$assets -a $i" - if [ -n "$signing_id" ] - then - gpg -u "$signing_id" --armor --output "$i".asc --detach-sig "$i" - assets="$assets -a $i.asc" - fi - done -fi - -if [ -n "$signing_id" ]; then - # make a signed tag - # gnupg seems to fail to get the right tty device unless we set it here - GIT_COMMITTER_EMAIL="$signing_id" GPG_TTY=$(tty) git tag -u "$signing_id" -F "${latest_changes}" "$tag" -else - git tag -a -F "${latest_changes}" "$tag" -fi - -# push the tag and the release branch -git push origin "$rel_branch" "$tag" - -if [ -n "$signing_id" ]; then - # make a signature for the source tarball. - # - # github will make us a tarball from the tag - we want to create a - # signature for it, which means that first of all we need to check that - # it's correct. - # - # we can't deterministically build exactly the same tarball, due to - # differences in gzip implementation - but we *can* build the same tar - so - # the easiest way to check the validity of the tarball from git is to unzip - # it and compare it with our own idea of what the tar should look like. - - # This uses git archive which seems to be what github uses. Specifically, - # the header fields are set in the same way: same file mode, uid & gid - # both zero and mtime set to the timestamp of the commit that the tag - # references. Also note that this puts the commit into the tar headers - # and can be extracted with gunzip -c foo.tar.gz | git get-tar-commit-id - - # the name of the sig file we want to create - source_sigfile="${tag}-src.tar.gz.asc" - - tarfile="$tag.tar.gz" - gh_project_url=$(git remote get-url origin | - sed -e 's#^git@github\.com:#https://github.com/#' \ - -e 's#^git\+ssh://git@github\.com/#https://github.com/#' \ - -e 's/\.git$//') - project_name="${gh_project_url##*/}" - curl -L "${gh_project_url}/archive/${tarfile}" -o "${tarfile}" - - # unzip it and compare it with the tar we would generate - if ! cmp --silent <(gunzip -c $tarfile) \ - <(git archive --format tar --prefix="${project_name}-${release}/" "$tag"); then - - # we don't bail out here, because really it's more likely that our comparison - # screwed up and it's super annoying to abort the script at this point. - cat >&2 < "${release_text}" -echo >> "${release_text}" -cat "${latest_changes}" >> "${release_text}" -hub release create $hubflags $assets -F "${release_text}" "$tag" - -if [ $dodist -eq 0 ]; then - rm -rf "$builddir" -fi -rm "${release_text}" -rm "${latest_changes}" - -# if it is a pre-release, leave it on the release branch for now. -if [ $prerelease -eq 1 ]; then - git checkout "$rel_branch" - exit 0 -fi - -# merge release branch to master -echo "updating master branch" -git checkout master -git pull -git merge "$rel_branch" --no-edit - -# push master to github -git push origin master - -# finally, merge master back onto develop (if it exists) -if [ "$(git branch -lr | grep origin/develop -c)" -ge 1 ]; then - git checkout develop - git pull - git merge master --no-edit - git push origin develop -fi - -[ -x ./post-release.sh ] && ./post-release.sh - -if [ $has_subprojects -eq 1 ] && [ $prerelease -eq 0 ]; then - echo "Resetting subprojects to develop" - for proj in $subprojects; do - reset_dependency "$proj" - done - git push origin develop -fi diff --git a/yarn.lock b/yarn.lock index 458d8a12f06..3779f232b6a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19,31 +19,6 @@ resolved "https://registry.yarnpkg.com/@action-validator/core/-/core-0.5.4.tgz#160a6d9ac8919a1eed0a0b0a7780b82ef03686fe" integrity sha512-uODXaU5sJw9CilmjVG9IUpc1ENivixQI7+DtebWgG80PMQBfZ/4b5PKXJ5ESJVlvafrHcuIjN0qou99zN2bDtw== -"@actions/core@^1.4.0": - version "1.10.1" - resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.10.1.tgz#61108e7ac40acae95ee36da074fa5850ca4ced8a" - integrity sha512-3lBR9EDAY+iYIpTnTIXmWcNbX3T2kCkAEQGIQx4NVQ0575nk2k3GRZDTPQG+vVtS2izSLmINlxXf0uLtnrTP+g== - dependencies: - "@actions/http-client" "^2.0.1" - uuid "^8.3.2" - -"@actions/github@^5.0.0": - version "5.1.1" - resolved "https://registry.yarnpkg.com/@actions/github/-/github-5.1.1.tgz#40b9b9e1323a5efcf4ff7dadd33d8ea51651bbcb" - integrity sha512-Nk59rMDoJaV+mHCOJPXuvB1zIbomlKS0dmSIqPGxd0enAXBnOfn4VWF+CGtRCwXZG9Epa54tZA7VIRlJDS8A6g== - dependencies: - "@actions/http-client" "^2.0.1" - "@octokit/core" "^3.6.0" - "@octokit/plugin-paginate-rest" "^2.17.0" - "@octokit/plugin-rest-endpoint-methods" "^5.13.0" - -"@actions/http-client@^2.0.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@actions/http-client/-/http-client-2.1.1.tgz#a8e97699c315bed0ecaeaaeb640948470d4586a0" - integrity sha512-qhrkRMB40bbbLo7gF+0vu+X+UawOvQQqNAA/5Unx774RS8poaOhThDOG6BGmxvAnxhQnDp2BG/ZUm65xZILTpw== - dependencies: - tunnel "^0.0.6" - "@ampproject/remapping@^2.2.0": version "2.2.1" resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" @@ -1741,107 +1716,6 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@octokit/auth-token@^2.4.4": - version "2.5.0" - resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36" - integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g== - dependencies: - "@octokit/types" "^6.0.3" - -"@octokit/core@^3.5.1", "@octokit/core@^3.6.0": - version "3.6.0" - resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.6.0.tgz#3376cb9f3008d9b3d110370d90e0a1fcd5fe6085" - integrity sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q== - dependencies: - "@octokit/auth-token" "^2.4.4" - "@octokit/graphql" "^4.5.8" - "@octokit/request" "^5.6.3" - "@octokit/request-error" "^2.0.5" - "@octokit/types" "^6.0.3" - before-after-hook "^2.2.0" - universal-user-agent "^6.0.0" - -"@octokit/endpoint@^6.0.1": - version "6.0.12" - resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" - integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA== - dependencies: - "@octokit/types" "^6.0.3" - is-plain-object "^5.0.0" - universal-user-agent "^6.0.0" - -"@octokit/graphql@^4.5.8": - version "4.8.0" - resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-4.8.0.tgz#664d9b11c0e12112cbf78e10f49a05959aa22cc3" - integrity sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg== - dependencies: - "@octokit/request" "^5.6.0" - "@octokit/types" "^6.0.3" - universal-user-agent "^6.0.0" - -"@octokit/openapi-types@^12.11.0": - version "12.11.0" - resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-12.11.0.tgz#da5638d64f2b919bca89ce6602d059f1b52d3ef0" - integrity sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ== - -"@octokit/plugin-paginate-rest@^2.16.8", "@octokit/plugin-paginate-rest@^2.17.0": - version "2.21.3" - resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz#7f12532797775640dbb8224da577da7dc210c87e" - integrity sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw== - dependencies: - "@octokit/types" "^6.40.0" - -"@octokit/plugin-request-log@^1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" - integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA== - -"@octokit/plugin-rest-endpoint-methods@^5.12.0", "@octokit/plugin-rest-endpoint-methods@^5.13.0": - version "5.16.2" - resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz#7ee8bf586df97dd6868cf68f641354e908c25342" - integrity sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw== - dependencies: - "@octokit/types" "^6.39.0" - deprecation "^2.3.1" - -"@octokit/request-error@^2.0.5", "@octokit/request-error@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677" - integrity sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg== - dependencies: - "@octokit/types" "^6.0.3" - deprecation "^2.0.0" - once "^1.4.0" - -"@octokit/request@^5.6.0", "@octokit/request@^5.6.3": - version "5.6.3" - resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.6.3.tgz#19a022515a5bba965ac06c9d1334514eb50c48b0" - integrity sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A== - dependencies: - "@octokit/endpoint" "^6.0.1" - "@octokit/request-error" "^2.1.0" - "@octokit/types" "^6.16.1" - is-plain-object "^5.0.0" - node-fetch "^2.6.7" - universal-user-agent "^6.0.0" - -"@octokit/rest@^18.6.7": - version "18.12.0" - resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881" - integrity sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q== - dependencies: - "@octokit/core" "^3.5.1" - "@octokit/plugin-paginate-rest" "^2.16.8" - "@octokit/plugin-request-log" "^1.0.4" - "@octokit/plugin-rest-endpoint-methods" "^5.12.0" - -"@octokit/types@^6.0.3", "@octokit/types@^6.16.1", "@octokit/types@^6.39.0", "@octokit/types@^6.40.0": - version "6.41.0" - resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.41.0.tgz#e58ef78d78596d2fb7df9c6259802464b5f84a04" - integrity sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg== - dependencies: - "@octokit/openapi-types" "^12.11.0" - "@pkgjs/parseargs@^0.11.0": version "0.11.0" resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" @@ -2284,20 +2158,6 @@ ajv@^6.12.4, ajv@~6.12.6: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -allchange@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/allchange/-/allchange-1.3.0.tgz#0d38e76e069eacd0279fb9a171770426d8e57d37" - integrity sha512-orTQYJQzY98ZNvh9VFpBpxLry9obXvDOYuQZXDnTL/YJL3sphgr93norJrR8Qz8mNlJ3yEm1YS+aEEbC3/3Wjg== - dependencies: - "@actions/core" "^1.4.0" - "@actions/github" "^5.0.0" - "@octokit/rest" "^18.6.7" - cli-color "^2.0.0" - js-yaml "^4.1.0" - loglevel "^1.7.1" - semver "^7.3.5" - yargs "^17.5.1" - another-json@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/another-json/-/another-json-0.2.0.tgz#b5f4019c973b6dd5c6506a2d93469cb6d32aeedc" @@ -2570,11 +2430,6 @@ base-x@^4.0.0: resolved "https://registry.yarnpkg.com/base-x/-/base-x-4.0.0.tgz#d0e3b7753450c73f8ad2389b5c018a4af7b2224a" integrity sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw== -before-after-hook@^2.2.0: - version "2.2.3" - resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.3.tgz#c51e809c81a4e354084422b9b26bad88249c517c" - integrity sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ== - binary-extensions@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" @@ -2744,17 +2599,6 @@ clean-regexp@^1.0.0: dependencies: escape-string-regexp "^1.0.5" -cli-color@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/cli-color/-/cli-color-2.0.3.tgz#73769ba969080629670f3f2ef69a4bf4e7cc1879" - integrity sha512-OkoZnxyC4ERN3zLzZaY9Emb7f/MhBOIpePv0Ycok0fJYT+Ouo00UBEIwsVsr0yoow++n5YWlSUgST9GKhNHiRQ== - dependencies: - d "^1.0.1" - es5-ext "^0.10.61" - es6-iterator "^2.0.3" - memoizee "^0.4.15" - timers-ext "^0.1.7" - cli-cursor@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-4.0.0.tgz#3cecfe3734bf4fe02a8361cbdc0f6fe28c6a57ea" @@ -2943,14 +2787,6 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" -d@1, d@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" - integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== - dependencies: - es5-ext "^0.10.50" - type "^1.0.1" - data-urls@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-3.0.2.tgz#9cf24a477ae22bcef5cd5f6f0bfbc1d2d3be9143" @@ -3017,11 +2853,6 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== -deprecation@^2.0.0, deprecation@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" - integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== - detect-newline@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" @@ -3195,42 +3026,6 @@ es-to-primitive@^1.2.1: is-date-object "^1.0.1" is-symbol "^1.0.2" -es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@^0.10.53, es5-ext@^0.10.61, es5-ext@~0.10.14, es5-ext@~0.10.2, es5-ext@~0.10.46: - version "0.10.62" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.62.tgz#5e6adc19a6da524bf3d1e02bbc8960e5eb49a9a5" - integrity sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA== - dependencies: - es6-iterator "^2.0.3" - es6-symbol "^3.1.3" - next-tick "^1.1.0" - -es6-iterator@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" - integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g== - dependencies: - d "1" - es5-ext "^0.10.35" - es6-symbol "^3.1.1" - -es6-symbol@^3.1.1, es6-symbol@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" - integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== - dependencies: - d "^1.0.1" - ext "^1.1.2" - -es6-weak-map@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53" - integrity sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA== - dependencies: - d "1" - es5-ext "^0.10.46" - es6-iterator "^2.0.3" - es6-symbol "^3.1.1" - escalade@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" @@ -3499,14 +3294,6 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== -event-emitter@^0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" - integrity sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA== - dependencies: - d "1" - es5-ext "~0.10.14" - eventemitter3@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" @@ -3574,13 +3361,6 @@ expect@^29.0.0, expect@^29.7.0: jest-message-util "^29.7.0" jest-util "^29.7.0" -ext@^1.1.2: - version "1.7.0" - resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f" - integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw== - dependencies: - type "^2.7.2" - fake-indexeddb@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/fake-indexeddb/-/fake-indexeddb-5.0.2.tgz#8e0b6c75c6dc6639cbb50c1aa948772147d7c93e" @@ -4224,21 +4004,11 @@ is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" -is-plain-object@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" - integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== - is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== -is-promise@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" - integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== - is-regex@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" @@ -5064,13 +4834,6 @@ lru-cache@^6.0.0: resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.0.1.tgz#0a3be479df549cca0e5d693ac402ff19537a6b7a" integrity sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g== -lru-queue@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3" - integrity sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ== - dependencies: - es5-ext "~0.10.2" - lunr@^2.3.9: version "2.3.9" resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" @@ -5128,20 +4891,6 @@ matrix-widget-api@^1.6.0: "@types/events" "^3.0.0" events "^3.2.0" -memoizee@^0.4.15: - version "0.4.15" - resolved "https://registry.yarnpkg.com/memoizee/-/memoizee-0.4.15.tgz#e6f3d2da863f318d02225391829a6c5956555b72" - integrity sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ== - dependencies: - d "^1.0.1" - es5-ext "^0.10.53" - es6-weak-map "^2.0.3" - event-emitter "^0.3.5" - is-promise "^2.2.2" - lru-queue "^0.1.0" - next-tick "^1.1.0" - timers-ext "^0.1.7" - merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -5231,15 +4980,10 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -next-tick@1, next-tick@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" - integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== - -node-fetch@^2.6.7: - version "2.6.12" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.12.tgz#02eb8e22074018e3d5a83016649d04df0e348fba" - integrity sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g== +node-fetch@^2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== dependencies: whatwg-url "^5.0.0" @@ -5343,7 +5087,7 @@ oidc-client-ts@^2.2.4: crypto-js "^4.2.0" jwt-decode "^3.1.2" -once@^1.3.0, once@^1.4.0: +once@^1.3.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== @@ -5860,7 +5604,7 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.5, semver@^7.3.7, semver@^7.5.3, semver@^7.5.4: +semver@^7.3.7, semver@^7.5.3, semver@^7.5.4: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== @@ -6195,14 +5939,6 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== -timers-ext@^0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/timers-ext/-/timers-ext-0.1.7.tgz#6f57ad8578e07a3fb9f91d9387d65647555e25c6" - integrity sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ== - dependencies: - es5-ext "~0.10.46" - next-tick "1" - tmpl@1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" @@ -6295,11 +6031,6 @@ tsutils@^3.21.0: dependencies: tslib "^1.8.1" -tunnel@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c" - integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg== - type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" @@ -6337,16 +6068,6 @@ type-fest@^3.0.0: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-3.13.1.tgz#bb744c1f0678bea7543a2d1ec24e83e68e8c8706" integrity sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g== -type@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" - integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== - -type@^2.7.2: - version "2.7.2" - resolved "https://registry.yarnpkg.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0" - integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw== - typed-array-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz#18de3e7ed7974b0a729d3feecb94338d1472cd60" @@ -6478,11 +6199,6 @@ unicode-property-aliases-ecmascript@^2.0.0: resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== -universal-user-agent@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" - integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== - universalify@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" @@ -6516,7 +6232,7 @@ url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -uuid@8.3.2, uuid@^8.3.2: +uuid@8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== From ca914c97e0316a33ec2853e02d7268c3638f91db Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 19 Feb 2024 13:03:53 +0000 Subject: [PATCH 077/595] Allow specifying OIDC url state parameter for passing data to callback (#4068) * Allow specifying more OIDC client metadata for dynamic registration Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Allow specifying url_state for dynamic oidc client registration Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Export NonEmptyArray type Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Allow specifying more OIDC client metadata for dynamic registration Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Export NonEmptyArray type Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Fix test Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/oidc/authorize.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/oidc/authorize.ts b/src/oidc/authorize.ts index 557a5c7e42e..9e0546ad649 100644 --- a/src/oidc/authorize.ts +++ b/src/oidc/authorize.ts @@ -129,6 +129,7 @@ export const generateAuthorizationUrl = async ( * @param nonce - state * @param prompt - indicates to the OP which flow the user should see - eg login or registration * See https://openid.net/specs/openid-connect-prompt-create-1_0.html#name-prompt-parameter + * @param urlState - value to append to the opaque state identifier to uniquely identify the callback * @returns a Promise with the url as a string */ export const generateOidcAuthorizationUrl = async ({ @@ -139,6 +140,7 @@ export const generateOidcAuthorizationUrl = async ({ identityServerUrl, nonce, prompt, + urlState, }: { clientId: string; metadata: ValidatedIssuerMetadata; @@ -147,8 +149,9 @@ export const generateOidcAuthorizationUrl = async ({ redirectUri: string; nonce: string; prompt?: string; + urlState?: string; }): Promise => { - const scope = await generateScope(); + const scope = generateScope(); const oidcClient = new OidcClient({ ...metadata, client_id: clientId, @@ -164,6 +167,7 @@ export const generateOidcAuthorizationUrl = async ({ state: userState, nonce, prompt, + url_state: urlState, }); return request.url; From 42dc498359a161b0d26f88f2fb2c11dac0538c70 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 19 Feb 2024 13:49:48 +0000 Subject: [PATCH 078/595] Update pull_request.yaml --- .github/workflows/pull_request.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/pull_request.yaml b/.github/workflows/pull_request.yaml index 5ce27aa8a9f..0bc1502483c 100644 --- a/.github/workflows/pull_request.yaml +++ b/.github/workflows/pull_request.yaml @@ -22,6 +22,7 @@ jobs: T-Deprecation T-Enhancement T-Defect + T-Task Dependencies mode: minimum count: 1 From b4744392563b4400a445b5cae576fffb55c70c4f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 19 Feb 2024 17:20:56 +0000 Subject: [PATCH 079/595] Update dependency oidc-client-ts to v3 (#4052) * Update dependency oidc-client-ts to v3 * Update jwt-decode so that oidc-client-ts doesn't run its own and thus we can mock Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Merge Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * delint Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Sort package.json Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Ensure oidc-client-ts 3.0.1 to drop crypto-js Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 5 +- spec/unit/oidc/authorize.spec.ts | 19 ++++++- spec/unit/oidc/validate.spec.ts | 2 +- src/oidc/authorize.ts | 2 +- src/oidc/validate.ts | 2 +- yarn.lock | 88 ++++++++++++++++++++++++++------ 6 files changed, 96 insertions(+), 22 deletions(-) diff --git a/package.json b/package.json index 281809b17c5..b7412535467 100644 --- a/package.json +++ b/package.json @@ -56,11 +56,11 @@ "another-json": "^0.2.0", "bs58": "^5.0.0", "content-type": "^1.0.4", - "jwt-decode": "^3.1.2", + "jwt-decode": "^4.0.0", "loglevel": "^1.7.1", "matrix-events-sdk": "0.0.1", "matrix-widget-api": "^1.6.0", - "oidc-client-ts": "^2.2.4", + "oidc-client-ts": "^3.0.1", "p-retry": "4", "sdp-transform": "^2.14.1", "unhomoglyph": "^1.0.6", @@ -83,6 +83,7 @@ "@babel/register": "^7.12.10", "@casualbot/jest-sonar-reporter": "2.2.7", "@matrix-org/olm": "3.2.15", + "@peculiar/webcrypto": "^1.4.5", "@types/bs58": "^4.0.1", "@types/content-type": "^1.1.5", "@types/debug": "^4.1.7", diff --git a/spec/unit/oidc/authorize.spec.ts b/spec/unit/oidc/authorize.spec.ts index 732d407ebc3..f6264f5d120 100644 --- a/spec/unit/oidc/authorize.spec.ts +++ b/spec/unit/oidc/authorize.spec.ts @@ -20,7 +20,10 @@ limitations under the License. import fetchMock from "fetch-mock-jest"; import { mocked } from "jest-mock"; -import jwtDecode from "jwt-decode"; +import { jwtDecode } from "jwt-decode"; +import { Crypto } from "@peculiar/webcrypto"; +import { getRandomValues } from "node:crypto"; +import { TextEncoder } from "node:util"; import { Method } from "../../../src"; import * as crypto from "../../../src/crypto/crypto"; @@ -36,6 +39,8 @@ import { makeDelegatedAuthConfig, mockOpenIdConfiguration } from "../../test-uti jest.mock("jwt-decode"); +const webCrypto = new Crypto(); + // save for resetting mocks const realSubtleCrypto = crypto.subtleCrypto; @@ -54,6 +59,15 @@ describe("oidc authorization", () => { jest.setSystemTime(now); fetchMock.get(delegatedAuthConfig.issuer + ".well-known/openid-configuration", mockOpenIdConfiguration()); + + Object.defineProperty(window, "crypto", { + value: { + getRandomValues, + randomUUID: jest.fn().mockReturnValue("not-random-uuid"), + subtle: webCrypto.subtle, + }, + }); + global.TextEncoder = TextEncoder; }); afterEach(() => { @@ -165,7 +179,8 @@ describe("oidc authorization", () => { token_type: "Bearer", access_token: "test_access_token", refresh_token: "test_refresh_token", - id_token: "valid.id.token", + id_token: + "eyJhbGciOiJSUzI1NiIsImtpZCI6Imh4ZEhXb0Y5bW4ifQ.eyJleHAiOjE3MDgzNTY3NjcsInN1YiI6IjAxSFBQMkZTQllERTlQOUVNTThERDdXWkhSIiwiYXVkIjoiMDFIUTBXSDUyV0paV1JSU1k5V0VFUTVUMlEiLCJub25jZSI6ImhScEI2cGtFMDYiLCJhdXRoX3RpbWUiOjE3MDc5OTAzMTIsImlhdCI6MTcwODM1MzE2NywiYXRfaGFzaCI6Il9HSEU4cDhocHFnMW1ac041YUlycVEiLCJpc3MiOiJodHRwczovL2F1dGgtb2lkYy5sYWIuZWxlbWVudC5kZXYvIiwiY19oYXNoIjoib2hJRmNuaUZWd3pGSzVJdXlsX1RlQSJ9.SGUG78dCC3sTWgQBDTicKwamKiPpb6REiz79CM2ml_kVJCoS7gT0TlztC4h25FKi3c9aB3XCVn9J8UzvJgvG8Rt_oS--FIuhK6oRm7NdcN0bCkbG7iZEWGxx-kQnifcCFHyZ6T1CxR8X00Uvc6_lRfBZVlTyuuQaJ_PHiiKMlV93FbxvQUIq6FTkQP2Z56p4JIXIzjOONzA91skTqQGycl5f9Vhp6cqXFzl6ARK30M7A-8UI5qCxClUJ7kD9KgN5YZ7uivLp1x01WBnik2DXH0eSwXcTX2WLkYtMXgMxylJhIiO586apIC5nr7sfip-Y_4PgBlSjRRgrmOGC-VUFCA", expires_in: 300, }; diff --git a/spec/unit/oidc/validate.spec.ts b/spec/unit/oidc/validate.spec.ts index 91b6985f02c..e1f85fa0808 100644 --- a/spec/unit/oidc/validate.spec.ts +++ b/spec/unit/oidc/validate.spec.ts @@ -15,7 +15,7 @@ limitations under the License. */ import { mocked } from "jest-mock"; -import jwtDecode from "jwt-decode"; +import { jwtDecode } from "jwt-decode"; import { M_AUTHENTICATION } from "../../../src"; import { logger } from "../../../src/logger"; diff --git a/src/oidc/authorize.ts b/src/oidc/authorize.ts index 9e0546ad649..c0b844436fa 100644 --- a/src/oidc/authorize.ts +++ b/src/oidc/authorize.ts @@ -239,7 +239,7 @@ export const completeAuthorizationCodeGrant = async ( // hydrate the sign in state and create a client // the stored sign in state includes oidc configuration we set at the start of the oidc login flow - const signInState = SigninState.fromStorageString(stateString); + const signInState = await SigninState.fromStorageString(stateString); const client = new OidcClient({ ...signInState, stateStore }); // validate the code and state, and attempt to swap the code for tokens diff --git a/src/oidc/validate.ts b/src/oidc/validate.ts index ef3e7c26e28..a0d062e472d 100644 --- a/src/oidc/validate.ts +++ b/src/oidc/validate.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import jwtDecode from "jwt-decode"; +import { jwtDecode } from "jwt-decode"; import { OidcMetadata, SigninResponse } from "oidc-client-ts"; import { IDelegatedAuthConfig } from "../client"; diff --git a/yarn.lock b/yarn.lock index 3779f232b6a..cde8d96a7c4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1716,6 +1716,33 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@peculiar/asn1-schema@^2.3.8": + version "2.3.8" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-schema/-/asn1-schema-2.3.8.tgz#04b38832a814e25731232dd5be883460a156da3b" + integrity sha512-ULB1XqHKx1WBU/tTFIA+uARuRoBVZ4pNdOA878RDrRbBfBGcSzi5HBkdScC6ZbHn8z7L8gmKCgPC1LHRrP46tA== + dependencies: + asn1js "^3.0.5" + pvtsutils "^1.3.5" + tslib "^2.6.2" + +"@peculiar/json-schema@^1.1.12": + version "1.1.12" + resolved "https://registry.yarnpkg.com/@peculiar/json-schema/-/json-schema-1.1.12.tgz#fe61e85259e3b5ba5ad566cb62ca75b3d3cd5339" + integrity sha512-coUfuoMeIB7B8/NMekxaDzLhaYmp0HZNPEjYRm9goRou8UZIC3z21s0sL9AWoCw4EG876QyO3kYrc61WNF9B/w== + dependencies: + tslib "^2.0.0" + +"@peculiar/webcrypto@^1.4.5": + version "1.4.5" + resolved "https://registry.yarnpkg.com/@peculiar/webcrypto/-/webcrypto-1.4.5.tgz#424bed6b0d133b772f5cbffd143d0468a90f40a0" + integrity sha512-oDk93QCDGdxFRM8382Zdminzs44dg3M2+E5Np+JWkpqLDyJC9DviMh8F8mEJkYuUcUOGA5jHO5AJJ10MFWdbZw== + dependencies: + "@peculiar/asn1-schema" "^2.3.8" + "@peculiar/json-schema" "^1.1.12" + pvtsutils "^1.3.5" + tslib "^2.6.2" + webcrypto-core "^1.7.8" + "@pkgjs/parseargs@^0.11.0": version "0.11.0" resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" @@ -2314,6 +2341,15 @@ arraybuffer.prototype.slice@^1.0.2: is-array-buffer "^3.0.2" is-shared-array-buffer "^1.0.2" +asn1js@^3.0.1, asn1js@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/asn1js/-/asn1js-3.0.5.tgz#5ea36820443dbefb51cc7f88a2ebb5b462114f38" + integrity sha512-FVnvrKJwpt9LP2lAMl8qZswRNm3T4q9CON+bxldk2iwk3FFpuwhx2FfinyitizWHsVYyaY+y5JzDR0rCMV5yTQ== + dependencies: + pvtsutils "^1.3.2" + pvutils "^1.1.3" + tslib "^2.4.0" + async@^3.2.4: version "3.2.4" resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" @@ -2765,11 +2801,6 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" -crypto-js@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-4.2.0.tgz#4d931639ecdfd12ff80e8186dba6af2c2e856631" - integrity sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q== - cssom@^0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.5.0.tgz#d254fa92cd8b6fbd83811b9fbaed34663cc17c36" @@ -4691,10 +4722,10 @@ jsonfile@^6.0.1: optionalDependencies: graceful-fs "^4.1.6" -jwt-decode@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-3.1.2.tgz#3fb319f3675a2df0c2895c8f5e9fa4b67b04ed59" - integrity sha512-UfpWE/VZn0iP50d8cz9NrZLM9lSWhcJ+0Gt/nm4by88UL+J1SiKN8/5dkjMmbEzwL2CAe+67GsegCbIKtbp75A== +jwt-decode@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-4.0.0.tgz#2270352425fd413785b2faf11f6e755c5151bd4b" + integrity sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA== kind-of@^6.0.2: version "6.0.3" @@ -5079,13 +5110,12 @@ object.values@^1.1.7: define-properties "^1.2.0" es-abstract "^1.22.1" -oidc-client-ts@^2.2.4: - version "2.4.0" - resolved "https://registry.yarnpkg.com/oidc-client-ts/-/oidc-client-ts-2.4.0.tgz#764c8a33de542026e2798de9849ce8049047d7e5" - integrity sha512-WijhkTrlXK2VvgGoakWJiBdfIsVGz6CFzgjNNqZU1hPKV2kyeEaJgLs7RwuiSp2WhLfWBQuLvr2SxVlZnk3N1w== +oidc-client-ts@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/oidc-client-ts/-/oidc-client-ts-3.0.1.tgz#be264fb87c89f74f73863646431c32cd06f5ceb7" + integrity sha512-xX8unZNtmtw3sOz4FPSqDhkLFnxCDsdo2qhFEH2opgWnF/iXMFoYdBQzkwCxAZVgt3FT3DnuBY3k80EZHT0RYg== dependencies: - crypto-js "^4.2.0" - jwt-decode "^3.1.2" + jwt-decode "^4.0.0" once@^1.3.0: version "1.4.0" @@ -5336,6 +5366,18 @@ pure-rand@^6.0.0: resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.3.tgz#3c9e6b53c09e52ac3cedffc85ab7c1c7094b38cb" integrity sha512-KddyFewCsO0j3+np81IQ+SweXLDnDQTs5s67BOnrYmYe/yNmUhttQyGsYzy8yUnoljGAQ9sl38YB4vH8ur7Y+w== +pvtsutils@^1.3.2, pvtsutils@^1.3.5: + version "1.3.5" + resolved "https://registry.yarnpkg.com/pvtsutils/-/pvtsutils-1.3.5.tgz#b8705b437b7b134cd7fd858f025a23456f1ce910" + integrity sha512-ARvb14YB9Nm2Xi6nBq1ZX6dAM0FsJnuk+31aUp4TrcZEdKUlSqOqsxJHUPJDNE3qiIp+iUPEIeR6Je/tgV7zsA== + dependencies: + tslib "^2.6.1" + +pvutils@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/pvutils/-/pvutils-1.1.3.tgz#f35fc1d27e7cd3dfbd39c0826d173e806a03f5a3" + integrity sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ== + querystring@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.1.tgz#40d77615bb09d16902a85c3e38aa8b5ed761c2dd" @@ -6024,6 +6066,11 @@ tslib@^1.8.1: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== +tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1, tslib@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + tsutils@^3.21.0: version "3.21.0" resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" @@ -6288,6 +6335,17 @@ walker@^1.0.8: dependencies: makeerror "1.0.12" +webcrypto-core@^1.7.8: + version "1.7.8" + resolved "https://registry.yarnpkg.com/webcrypto-core/-/webcrypto-core-1.7.8.tgz#056918036e846c72cfebbb04052e283f57f1114a" + integrity sha512-eBR98r9nQXTqXt/yDRtInszPMjTaSAMJAFDg2AHsgrnczawT1asx9YNBX6k5p+MekbPF4+s/UJJrr88zsTqkSg== + dependencies: + "@peculiar/asn1-schema" "^2.3.8" + "@peculiar/json-schema" "^1.1.12" + asn1js "^3.0.1" + pvtsutils "^1.3.5" + tslib "^2.6.2" + webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" From c27c35768813261a7f4019068dfd585d09647ba4 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 21 Feb 2024 14:56:11 +0000 Subject: [PATCH 080/595] Validate `account_management_uri` and `account_management_actions_supported` from OIDC Issuer well-known (#4074) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/oidc/validate.spec.ts | 8 ++++++++ src/oidc/validate.ts | 24 ++++++++++++++++++++---- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/spec/unit/oidc/validate.spec.ts b/spec/unit/oidc/validate.spec.ts index e1f85fa0808..a3fde6ee46a 100644 --- a/spec/unit/oidc/validate.spec.ts +++ b/spec/unit/oidc/validate.spec.ts @@ -125,6 +125,8 @@ describe("validateOIDCIssuerWellKnown", () => { response_types_supported: ["code"], grant_types_supported: ["authorization_code"], code_challenge_methods_supported: ["S256"], + account_management_uri: "https://authorize.org/account", + account_management_actions_supported: ["org.matrix.cross_signing_reset"], }; beforeEach(() => { // stub to avoid console litter @@ -157,6 +159,8 @@ describe("validateOIDCIssuerWellKnown", () => { authorizationEndpoint: validWk.authorization_endpoint, tokenEndpoint: validWk.token_endpoint, registrationEndpoint: validWk.registration_endpoint, + accountManagementActionsSupported: ["org.matrix.cross_signing_reset"], + accountManagementEndpoint: "https://authorize.org/account", }); }); @@ -167,6 +171,8 @@ describe("validateOIDCIssuerWellKnown", () => { authorizationEndpoint: validWk.authorization_endpoint, tokenEndpoint: validWk.token_endpoint, registrationEndpoint: undefined, + accountManagementActionsSupported: ["org.matrix.cross_signing_reset"], + accountManagementEndpoint: "https://authorize.org/account", }); }); @@ -186,6 +192,8 @@ describe("validateOIDCIssuerWellKnown", () => { ["code_challenge_methods_supported", undefined], ["code_challenge_methods_supported", "not an array"], ["code_challenge_methods_supported", ["doesnt include S256"]], + ["account_management_uri", { not: "a string" }], + ["account_management_actions_supported", { not: "an array" }], ])("should throw OP support error when %s is %s", (key, value) => { const wk = { ...validWk, diff --git a/src/oidc/validate.ts b/src/oidc/validate.ts index a0d062e472d..c806ca80777 100644 --- a/src/oidc/validate.ts +++ b/src/oidc/validate.ts @@ -31,6 +31,8 @@ export type ValidatedIssuerConfig = { authorizationEndpoint: string; tokenEndpoint: string; registrationEndpoint?: string; + accountManagementEndpoint?: string; + accountManagementActionsSupported?: string[]; }; /** @@ -74,6 +76,16 @@ const optionalStringProperty = (wellKnown: Record, key: string) } return true; }; +const optionalStringArrayProperty = (wellKnown: Record, key: string): boolean => { + if ( + !!wellKnown[key] && + (!Array.isArray(wellKnown[key]) || !(wellKnown[key]).every((v) => typeof v === "string")) + ) { + logger.error(`Invalid property: ${key}`); + return false; + } + return true; +}; const requiredArrayValue = (wellKnown: Record, key: string, value: any): boolean => { const array = wellKnown[key]; if (!array || !Array.isArray(array) || !array.includes(value)) { @@ -102,6 +114,8 @@ export const validateOIDCIssuerWellKnown = (wellKnown: unknown): ValidatedIssuer requiredStringProperty(wellKnown, "token_endpoint"), requiredStringProperty(wellKnown, "revocation_endpoint"), optionalStringProperty(wellKnown, "registration_endpoint"), + optionalStringProperty(wellKnown, "account_management_uri"), + optionalStringArrayProperty(wellKnown, "account_management_actions_supported"), requiredArrayValue(wellKnown, "response_types_supported", "code"), requiredArrayValue(wellKnown, "grant_types_supported", "authorization_code"), requiredArrayValue(wellKnown, "code_challenge_methods_supported", "S256"), @@ -109,10 +123,12 @@ export const validateOIDCIssuerWellKnown = (wellKnown: unknown): ValidatedIssuer if (!isInvalid) { return { - authorizationEndpoint: wellKnown["authorization_endpoint"], - tokenEndpoint: wellKnown["token_endpoint"], - registrationEndpoint: wellKnown["registration_endpoint"], - } as ValidatedIssuerConfig; + authorizationEndpoint: wellKnown["authorization_endpoint"], + tokenEndpoint: wellKnown["token_endpoint"], + registrationEndpoint: wellKnown["registration_endpoint"], + accountManagementEndpoint: wellKnown["account_management_uri"], + accountManagementActionsSupported: wellKnown["account_management_actions_supported"], + }; } logger.error("Issuer configuration not valid"); From 95842c2b912391e77dd346b38c4afb893643104e Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Wed, 21 Feb 2024 17:56:16 +0000 Subject: [PATCH 081/595] v31.4.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index b7412535467..48752f7be90 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.3.0", + "version": "31.4.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -30,8 +30,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -133,5 +133,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From 91bde6afa127df7aff3aa516eb724c118293ed32 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 21 Feb 2024 18:45:39 +0000 Subject: [PATCH 082/595] Update dependency typedoc-plugin-coverage to v3 (#4077) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index b7412535467..5c71ad39ca5 100644 --- a/package.json +++ b/package.json @@ -122,7 +122,7 @@ "rimraf": "^5.0.0", "ts-node": "^10.9.1", "typedoc": "^0.24.0", - "typedoc-plugin-coverage": "^2.1.0", + "typedoc-plugin-coverage": "^3.0.0", "typedoc-plugin-mdn-links": "^3.0.3", "typedoc-plugin-missing-exports": "^2.0.0", "typedoc-plugin-versions": "^0.2.3", diff --git a/yarn.lock b/yarn.lock index cde8d96a7c4..9f7b73c9fea 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6154,10 +6154,10 @@ typed-array-length@^1.0.4: for-each "^0.3.3" is-typed-array "^1.1.9" -typedoc-plugin-coverage@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/typedoc-plugin-coverage/-/typedoc-plugin-coverage-2.2.0.tgz#760bb7bab606eed165e1e559df86003fa958ff3f" - integrity sha512-/hq9nwSNBz2p7+VYfljT/zFSmaxN8tlfcIp6CCAaQN6VIxXCciYFIqR+pcckRhjmfHIeSJ5uy2OpCt5F683npA== +typedoc-plugin-coverage@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/typedoc-plugin-coverage/-/typedoc-plugin-coverage-3.1.0.tgz#2848956f76e02f927f4c84e85d7ea00dd0e941c9" + integrity sha512-fxeJRrxQR3yM/aFZU7mOuatgRCztiMCbeNiCRVZKY6VNgOcVMC1HS+ZfZnlbLLteUOdeWleSQ6yntuipz5zi6A== typedoc-plugin-mdn-links@^3.0.3: version "3.1.5" From 4826868a8f97797ff602e68db2bc66d28bce8e99 Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 21 Feb 2024 19:01:16 +0000 Subject: [PATCH 083/595] Update stale comment (#4080) And remove line that set it for it to just get overwritten --- src/models/thread.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/models/thread.ts b/src/models/thread.ts index 32fd0621c28..56250afde92 100644 --- a/src/models/thread.ts +++ b/src/models/thread.ts @@ -198,8 +198,8 @@ export class Thread extends ReadReceipt { - this.rootEvent = this.room.findEventById(this.id); - // If the rootEvent does not exist in the local stores, then fetch it from the server. + // Always fetch the root event, even if we already have it, so we can get the latest + // state (via unsigned). try { const eventData = await this.client.fetchRoomEvent(this.roomId, this.id); const mapper = this.client.getEventMapper(); From 7f251627252b54f73fb24d5b1a92f34226a39274 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 21 Feb 2024 21:31:43 +0000 Subject: [PATCH 084/595] Update pull_request.yaml --- .github/workflows/pull_request.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yaml b/.github/workflows/pull_request.yaml index 0bc1502483c..edc0b7b25b4 100644 --- a/.github/workflows/pull_request.yaml +++ b/.github/workflows/pull_request.yaml @@ -46,6 +46,7 @@ jobs: if: github.event.action == 'opened' steps: - name: Check membership + if: github.event.pull_request.user.login != 'renovate[bot]' uses: tspascoal/get-user-teams-membership@ba78054988f58bea69b7c6136d563236f8ed2fc0 # v3 id: teams with: @@ -55,7 +56,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }} - name: Add label - if: ${{ steps.teams.outputs.isTeamMember == 'false' }} + if: steps.teams.outputs.isTeamMember == 'false' uses: actions/github-script@v7 with: script: | From 12308b4c07d959f07859407d19dc11f1dd4ef1a8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 22 Feb 2024 09:02:45 +0000 Subject: [PATCH 085/595] Update dependency @types/node to v18.19.17 (#4075) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9f7b73c9fea..5e69bdccbbc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1933,9 +1933,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.14" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.14.tgz#1880ff1b3ac913f3877f711588e5ed227da01886" - integrity sha512-EnQ4Us2rmOS64nHDWr0XqAD8DsO6f3XR6lf9UIIrZQpUzPVdN/oPuEzfDWNHSyXLvoGgjuEm/sPwFGSSs35Wtg== + version "18.19.17" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.17.tgz#a581a9fb4b2cfdbc61f008804f4436b2d5c40354" + integrity sha512-SzyGKgwPzuWp2SHhlpXKzCX0pIOfcI4V2eF37nNBJOhwlegQ83omtVQ1XxZpDE06V/d6AQvfQdPfnw0tRC//Ng== dependencies: undici-types "~5.26.4" From 1cb30bfe9be26e48eee034ff24a9b410626dd5dc Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 22 Feb 2024 09:04:17 +0000 Subject: [PATCH 086/595] Update typescript-eslint monorepo to v7 (#4078) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 4 +-- yarn.lock | 100 +++++++++++++++++++++++++-------------------------- 2 files changed, 52 insertions(+), 52 deletions(-) diff --git a/package.json b/package.json index 5c71ad39ca5..cd10971ebf3 100644 --- a/package.json +++ b/package.json @@ -92,8 +92,8 @@ "@types/node": "18", "@types/sdp-transform": "^2.4.5", "@types/uuid": "9", - "@typescript-eslint/eslint-plugin": "^6.0.0", - "@typescript-eslint/parser": "^6.0.0", + "@typescript-eslint/eslint-plugin": "^7.0.0", + "@typescript-eslint/parser": "^7.0.0", "babel-jest": "^29.0.0", "debug": "^4.3.4", "domexception": "^4.0.0", diff --git a/yarn.lock b/yarn.lock index 5e69bdccbbc..e94425aefd2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1991,16 +1991,16 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^6.0.0": - version "6.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.20.0.tgz#9cf31546d2d5e884602626d89b0e0d2168ac25ed" - integrity sha512-fTwGQUnjhoYHeSF6m5pWNkzmDDdsKELYrOBxhjMrofPqCkoC2k3B2wvGHFxa1CTIqkEn88nlW1HVMztjo2K8Hg== +"@typescript-eslint/eslint-plugin@^7.0.0": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.0.2.tgz#c13a34057be425167cc4a765158c46fdf2fd981d" + integrity sha512-/XtVZJtbaphtdrWjr+CJclaCVGPtOdBpFEnvtNf/jRV0IiEemRrL0qABex/nEt8isYcnFacm3nPHYQwL+Wb7qg== dependencies: "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "6.20.0" - "@typescript-eslint/type-utils" "6.20.0" - "@typescript-eslint/utils" "6.20.0" - "@typescript-eslint/visitor-keys" "6.20.0" + "@typescript-eslint/scope-manager" "7.0.2" + "@typescript-eslint/type-utils" "7.0.2" + "@typescript-eslint/utils" "7.0.2" + "@typescript-eslint/visitor-keys" "7.0.2" debug "^4.3.4" graphemer "^1.4.0" ignore "^5.2.4" @@ -2008,15 +2008,15 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/parser@^6.0.0": - version "6.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.20.0.tgz#17e314177304bdf498527e3c4b112e41287b7416" - integrity sha512-bYerPDF/H5v6V76MdMYhjwmwgMA+jlPVqjSDq2cRqMi8bP5sR3Z+RLOiOMad3nsnmDVmn2gAFCyNgh/dIrfP/w== +"@typescript-eslint/parser@^7.0.0": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.0.2.tgz#95c31233d343db1ca1df8df7811b5b87ca7b1a68" + integrity sha512-GdwfDglCxSmU+QTS9vhz2Sop46ebNCXpPPvsByK7hu0rFGRHL+AusKQJ7SoN+LbLh6APFpQwHKmDSwN35Z700Q== dependencies: - "@typescript-eslint/scope-manager" "6.20.0" - "@typescript-eslint/types" "6.20.0" - "@typescript-eslint/typescript-estree" "6.20.0" - "@typescript-eslint/visitor-keys" "6.20.0" + "@typescript-eslint/scope-manager" "7.0.2" + "@typescript-eslint/types" "7.0.2" + "@typescript-eslint/typescript-estree" "7.0.2" + "@typescript-eslint/visitor-keys" "7.0.2" debug "^4.3.4" "@typescript-eslint/scope-manager@5.62.0": @@ -2027,21 +2027,21 @@ "@typescript-eslint/types" "5.62.0" "@typescript-eslint/visitor-keys" "5.62.0" -"@typescript-eslint/scope-manager@6.20.0": - version "6.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.20.0.tgz#8a926e60f6c47feb5bab878246dc2ae465730151" - integrity sha512-p4rvHQRDTI1tGGMDFQm+GtxP1ZHyAh64WANVoyEcNMpaTFn3ox/3CcgtIlELnRfKzSs/DwYlDccJEtr3O6qBvA== +"@typescript-eslint/scope-manager@7.0.2": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.0.2.tgz#6ec4cc03752758ddd1fdaae6fbd0ed9a2ca4fe63" + integrity sha512-l6sa2jF3h+qgN2qUMjVR3uCNGjWw4ahGfzIYsCtFrQJCjhbrDPdiihYT8FnnqFwsWX+20hK592yX9I2rxKTP4g== dependencies: - "@typescript-eslint/types" "6.20.0" - "@typescript-eslint/visitor-keys" "6.20.0" + "@typescript-eslint/types" "7.0.2" + "@typescript-eslint/visitor-keys" "7.0.2" -"@typescript-eslint/type-utils@6.20.0": - version "6.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.20.0.tgz#d395475cd0f3610dd80c7d8716fa0db767da3831" - integrity sha512-qnSobiJQb1F5JjN0YDRPHruQTrX7ICsmltXhkV536mp4idGAYrIyr47zF/JmkJtEcAVnIz4gUYJ7gOZa6SmN4g== +"@typescript-eslint/type-utils@7.0.2": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.0.2.tgz#a7fc0adff0c202562721357e7478207d380a757b" + integrity sha512-IKKDcFsKAYlk8Rs4wiFfEwJTQlHcdn8CLwLaxwd6zb8HNiMcQIFX9sWax2k4Cjj7l7mGS5N1zl7RCHOVwHq2VQ== dependencies: - "@typescript-eslint/typescript-estree" "6.20.0" - "@typescript-eslint/utils" "6.20.0" + "@typescript-eslint/typescript-estree" "7.0.2" + "@typescript-eslint/utils" "7.0.2" debug "^4.3.4" ts-api-utils "^1.0.1" @@ -2050,10 +2050,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== -"@typescript-eslint/types@6.20.0": - version "6.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.20.0.tgz#5ccd74c29011ae7714ae6973e4ec0c634708b448" - integrity sha512-MM9mfZMAhiN4cOEcUOEx+0HmuaW3WBfukBZPCfwSqFnQy0grXYtngKCqpQN339X3RrwtzspWJrpbrupKYUSBXQ== +"@typescript-eslint/types@7.0.2": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.0.2.tgz#b6edd108648028194eb213887d8d43ab5750351c" + integrity sha512-ZzcCQHj4JaXFjdOql6adYV4B/oFOFjPOC9XYwCaZFRvqN8Llfvv4gSxrkQkd2u4Ci62i2c6W6gkDwQJDaRc4nA== "@typescript-eslint/typescript-estree@5.62.0": version "5.62.0" @@ -2068,13 +2068,13 @@ semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@6.20.0": - version "6.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.20.0.tgz#5b2d0975949e6bdd8d45ee1471461ef5fadc5542" - integrity sha512-RnRya9q5m6YYSpBN7IzKu9FmLcYtErkDkc8/dKv81I9QiLLtVBHrjz+Ev/crAqgMNW2FCsoZF4g2QUylMnJz+g== +"@typescript-eslint/typescript-estree@7.0.2": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.0.2.tgz#3c6dc8a3b9799f4ef7eca0d224ded01974e4cb39" + integrity sha512-3AMc8khTcELFWcKcPc0xiLviEvvfzATpdPj/DXuOGIdQIIFybf4DMT1vKRbuAEOFMwhWt7NFLXRkbjsvKZQyvw== dependencies: - "@typescript-eslint/types" "6.20.0" - "@typescript-eslint/visitor-keys" "6.20.0" + "@typescript-eslint/types" "7.0.2" + "@typescript-eslint/visitor-keys" "7.0.2" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2082,17 +2082,17 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/utils@6.20.0": - version "6.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.20.0.tgz#0e52afcfaa51af5656490ba4b7437cc3aa28633d" - integrity sha512-/EKuw+kRu2vAqCoDwDCBtDRU6CTKbUmwwI7SH7AashZ+W+7o8eiyy6V2cdOqN49KsTcASWsC5QeghYuRDTyOOg== +"@typescript-eslint/utils@7.0.2": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.0.2.tgz#8756123054cd934c8ba7db6a6cffbc654b10b5c4" + integrity sha512-PZPIONBIB/X684bhT1XlrkjNZJIEevwkKDsdwfiu1WeqBxYEEdIgVDgm8/bbKHVu+6YOpeRqcfImTdImx/4Bsw== dependencies: "@eslint-community/eslint-utils" "^4.4.0" "@types/json-schema" "^7.0.12" "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "6.20.0" - "@typescript-eslint/types" "6.20.0" - "@typescript-eslint/typescript-estree" "6.20.0" + "@typescript-eslint/scope-manager" "7.0.2" + "@typescript-eslint/types" "7.0.2" + "@typescript-eslint/typescript-estree" "7.0.2" semver "^7.5.4" "@typescript-eslint/utils@^5.10.0": @@ -2117,12 +2117,12 @@ "@typescript-eslint/types" "5.62.0" eslint-visitor-keys "^3.3.0" -"@typescript-eslint/visitor-keys@6.20.0": - version "6.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.20.0.tgz#f7ada27f2803de89df0edd9fd7be22c05ce6a498" - integrity sha512-E8Cp98kRe4gKHjJD4NExXKz/zOJ1A2hhZc+IMVD6i7w4yjIvh6VyuRI0gRtxAsXtoC35uGMaQ9rjI2zJaXDEAw== +"@typescript-eslint/visitor-keys@7.0.2": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.0.2.tgz#2899b716053ad7094962beb895d11396fc12afc7" + integrity sha512-8Y+YiBmqPighbm5xA2k4wKTxRzx9EkBu7Rlw+WHqMvRJ3RPz/BMBO9b2ru0LUNmXg120PHUXD5+SWFy2R8DqlQ== dependencies: - "@typescript-eslint/types" "6.20.0" + "@typescript-eslint/types" "7.0.2" eslint-visitor-keys "^3.4.1" "@ungap/structured-clone@^1.2.0": From 4da96277270d97d504dc719c6d75f5c0f01883b2 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 22 Feb 2024 09:35:20 +0000 Subject: [PATCH 087/595] Update all non-major dependencies (#4076) * Update all non-major dependencies * Prettier Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/downstream-artifacts.yml | 2 +- package.json | 2 +- tsconfig.json | 6 +- yarn.lock | 100 ++++++++++++--------- 4 files changed, 61 insertions(+), 49 deletions(-) diff --git a/.github/workflows/downstream-artifacts.yml b/.github/workflows/downstream-artifacts.yml index fc6f2d9bd4e..09107645f23 100644 --- a/.github/workflows/downstream-artifacts.yml +++ b/.github/workflows/downstream-artifacts.yml @@ -16,7 +16,7 @@ concurrency: jobs: build-element-web: name: Build element-web - uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.91.0 + uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.92.0 with: matrix-js-sdk-sha: ${{ github.sha }} react-sdk-repository: matrix-org/matrix-react-sdk diff --git a/package.json b/package.json index cd10971ebf3..cc2e8b493a3 100644 --- a/package.json +++ b/package.json @@ -118,7 +118,7 @@ "lint-staged": "^15.0.2", "matrix-mock-request": "^2.5.0", "node-fetch": "^2.7.0", - "prettier": "3.2.4", + "prettier": "3.2.5", "rimraf": "^5.0.0", "ts-node": "^10.9.1", "typedoc": "^0.24.0", diff --git a/tsconfig.json b/tsconfig.json index f55a2c991a5..13fed86c47b 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -8,12 +8,12 @@ "noUnusedLocals": true, "noEmit": true, "declaration": true, - "strict": true, + "strict": true }, "include": ["./src/**/*.ts", "./spec/**/*.ts"], "typedocOptions": { "entryPoints": ["src/matrix.ts"], "excludeExternals": true, - "out": "_docs", - }, + "out": "_docs" + } } diff --git a/yarn.lock b/yarn.lock index e94425aefd2..06e6962aed2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1299,10 +1299,10 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@es-joy/jsdoccomment@~0.41.0": - version "0.41.0" - resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.41.0.tgz#4a2f7db42209c0425c71a1476ef1bdb6dcd836f6" - integrity sha512-aKUhyn1QI5Ksbqcr3fFJj16p99QdjUxXAEuFst1Z47DRyoiMwivIH9MV/ARcJOCXVjPfjITciej8ZD2O/6qUmw== +"@es-joy/jsdoccomment@~0.42.0": + version "0.42.0" + resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.42.0.tgz#59e878708336aaee88c2b34c894f73dbf77ae2b0" + integrity sha512-R1w57YlVA6+YE01wch3GPYn6bCsrOV3YW/5oGGE2tmX6JcL9Nr+b5IikrjMPF+v9CV3ay+obImEdsDhovhJrzw== dependencies: comment-parser "1.4.1" esquery "^1.5.0" @@ -1954,7 +1954,12 @@ resolved "https://registry.yarnpkg.com/@types/sdp-transform/-/sdp-transform-2.4.9.tgz#26ef39f487a6909b0512f580b80920a366b27f52" integrity sha512-bVr+/OoZZy7wrHlNcEAAa6PAgKA4BoXPYVN2EijMC5WnGgQ4ZEuixmKnVs2roiAvr7RhIFVH17QD27cojgIZCg== -"@types/semver@^7.3.12", "@types/semver@^7.5.0": +"@types/semver@^7.3.12": + version "7.5.7" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.7.tgz#326f5fdda70d13580777bcaa1bc6fa772a5aef0e" + integrity sha512-/wdoPq1QqkSj9/QOeKkFquEuPzQbHTWAMPH/PaUMB+JuR31lXhlWXRZ52IpfDYVlDOUBvX09uBrPwxGT1hjNBg== + +"@types/semver@^7.5.0": version "7.5.6" resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.6.tgz#c65b2bfce1bec346582c07724e3f8c1017a20339" integrity sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A== @@ -3151,25 +3156,25 @@ eslint-plugin-import@^2.26.0: tsconfig-paths "^3.15.0" eslint-plugin-jest@^27.1.6: - version "27.6.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-27.6.3.tgz#8acb8b1e45597fe1f4d4cf25163d90119efc12be" - integrity sha512-+YsJFVH6R+tOiO3gCJon5oqn4KWc+mDq2leudk8mrp8RFubLOo9CVyi3cib4L7XMpxExmkmBZQTPDYVBzgpgOA== + version "27.9.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz#7c98a33605e1d8b8442ace092b60e9919730000b" + integrity sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug== dependencies: "@typescript-eslint/utils" "^5.10.0" eslint-plugin-jsdoc@^48.0.0: - version "48.0.4" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.0.4.tgz#ca54da8937b2f6fd242a16dbb1b9ff5050baf223" - integrity sha512-A0cH+5svWPXzGZszBjXA1t0aAqVGS+/x3i02KFmb73rU0iMLnadEcVWcD/dGBZHIfAMKr3YpWh58f6wn4N909w== + version "48.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.1.0.tgz#565363770b433485bfc70dc862b50b7f780529ec" + integrity sha512-g9S8ukmTd1DVcV/xeBYPPXOZ6rc8WJ4yi0+MVxJ1jBOrz5kmxV9gJJQ64ltCqIWFnBChLIhLVx3tbTSarqVyFA== dependencies: - "@es-joy/jsdoccomment" "~0.41.0" + "@es-joy/jsdoccomment" "~0.42.0" are-docs-informative "^0.0.2" comment-parser "1.4.1" debug "^4.3.4" escape-string-regexp "^4.0.0" esquery "^1.5.0" is-builtin-module "^3.2.1" - semver "^7.5.4" + semver "^7.6.0" spdx-expression-parse "^4.0.0" eslint-plugin-matrix-org@^1.0.0: @@ -3435,9 +3440,9 @@ fast-levenshtein@^2.0.6: integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== fastq@^1.6.0: - version "1.17.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.0.tgz#ca5e1a90b5e68f97fc8b61330d5819b82f5fab03" - integrity sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w== + version "1.17.1" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" + integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== dependencies: reusify "^1.0.4" @@ -4761,25 +4766,25 @@ lines-and-columns@^1.1.6: integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== lint-staged@^15.0.2: - version "15.2.0" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.0.tgz#3111534ca58096a3c8f70b044b6e7fe21b36f859" - integrity sha512-TFZzUEV00f+2YLaVPWBWGAMq7So6yQx+GG8YRMDeOEIf95Zn5RyiLMsEiX4KTNl9vq/w+NqRJkLA1kPIo15ufQ== + version "15.2.2" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.2.tgz#ad7cbb5b3ab70e043fa05bff82a09ed286bc4c5f" + integrity sha512-TiTt93OPh1OZOsb5B7k96A/ATl2AjIZo+vnzFZ6oHK5FuTk63ByDtxGQpHm+kFETjEWqgkF95M8FRXKR/LEBcw== dependencies: chalk "5.3.0" commander "11.1.0" debug "4.3.4" execa "8.0.1" lilconfig "3.0.0" - listr2 "8.0.0" + listr2 "8.0.1" micromatch "4.0.5" pidtree "0.6.0" string-argv "0.3.2" yaml "2.3.4" -listr2@8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.0.0.tgz#aa7c230995f8ce378585f7c96c0c6d1cefa4700d" - integrity sha512-u8cusxAcyqAiQ2RhYvV7kRKNLgUvtObIbhOX2NCXqvp1UU32xIg5CT22ykS2TPKJXZWJwtK3IKLiqAGlGNE+Zg== +listr2@8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.0.1.tgz#4d3f50ae6cec3c62bdf0e94f5c2c9edebd4b9c34" + integrity sha512-ovJXBXkKGfq+CwmKTjluEqFi3p4h8xvkxGQQAQan22YCgef4KZ1mKGjzfGh6PL6AW5Csw0QiQPNuQyH+6Xk3hA== dependencies: cli-truncate "^4.0.0" colorette "^2.0.20" @@ -5051,9 +5056,9 @@ npm-run-path@^4.0.1: path-key "^3.0.0" npm-run-path@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.1.0.tgz#bc62f7f3f6952d9894bd08944ba011a6ee7b7e00" - integrity sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q== + version "5.2.0" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.2.0.tgz#224cdd22c755560253dd71b83a1ef2f758b2e955" + integrity sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg== dependencies: path-key "^4.0.0" @@ -5319,10 +5324,10 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prettier@3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.2.4.tgz#4723cadeac2ce7c9227de758e5ff9b14e075f283" - integrity sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ== +prettier@3.2.5: + version "3.2.5" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.2.5.tgz#e52bc3090586e824964a8813b09aba6233b28368" + integrity sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A== pretty-format@^28.1.3: version "28.1.3" @@ -5570,9 +5575,9 @@ reusify@^1.0.4: integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== rfdc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" - integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== + version "1.3.1" + resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.1.tgz#2b6d4df52dffe8bb346992a10ea9451f24373a8f" + integrity sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg== rimraf@^3.0.2: version "3.0.2" @@ -5646,7 +5651,14 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.7, semver@^7.5.3, semver@^7.5.4: +semver@^7.3.7, semver@^7.6.0: + version "7.6.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" + integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== + dependencies: + lru-cache "^6.0.0" + +semver@^7.5.3, semver@^7.5.4: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== @@ -5781,9 +5793,9 @@ spdx-correct@^3.0.0: spdx-license-ids "^3.0.0" spdx-exceptions@^2.1.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.4.0.tgz#c07a4ede25b16e4f78e6707bbd84b15a45c19c1b" - integrity sha512-hcjppoJ68fhxA/cjbN4T8N6uCUejN8yFw69ttpqtBeCbF3u13n7mb31NB9jKwGTTWWnt9IbRA/mf1FprYS8wfw== + version "2.5.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz#5d607d27fc806f66d7b64a766650fa890f04ed66" + integrity sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w== spdx-expression-parse@^3.0.0: version "3.0.1" @@ -5802,9 +5814,9 @@ spdx-expression-parse@^4.0.0: spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.16" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz#a14f64e0954f6e25cc6587bd4f392522db0d998f" - integrity sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw== + version "3.0.17" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz#887da8aa73218e51a1d917502d79863161a93f9c" + integrity sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg== sprintf-js@~1.0.2: version "1.0.3" @@ -5850,9 +5862,9 @@ string-width@^5.0.1, string-width@^5.1.2: strip-ansi "^7.0.1" string-width@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-7.0.0.tgz#14aa1b7aaa126d5b64fa79d3c894da8a9650ba06" - integrity sha512-GPQHj7row82Hjo9hKZieKcHIhaAIKOJvFSIZXuCU9OASVZrMNUaZuz++SPVrBjnLsnk4k+z9f2EIypgxf2vNFw== + version "7.1.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-7.1.0.tgz#d994252935224729ea3719c49f7206dc9c46550a" + integrity sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw== dependencies: emoji-regex "^10.3.0" get-east-asian-width "^1.0.0" From 624914a565d04f3d80067aa4d32b59cfdf725689 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 22 Feb 2024 09:46:30 +0000 Subject: [PATCH 088/595] Update dependency husky to v9 (#4051) * Update dependency husky to v9 * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- .husky/pre-commit | 1 - package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/.husky/pre-commit b/.husky/pre-commit index a16d8b1d555..083cf3f3ca5 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,4 +1,3 @@ #!/usr/bin/env sh -. "$(dirname "$0")/_/husky.sh" npx lint-staged diff --git a/package.json b/package.json index cc2e8b493a3..f23742d1aae 100644 --- a/package.json +++ b/package.json @@ -110,7 +110,7 @@ "fake-indexeddb": "^5.0.2", "fetch-mock": "9.11.0", "fetch-mock-jest": "^1.5.1", - "husky": "^8.0.3", + "husky": "^9.0.0", "jest": "^29.0.0", "jest-environment-jsdom": "^29.0.0", "jest-localstorage-mock": "^2.4.6", diff --git a/yarn.lock b/yarn.lock index 06e6962aed2..3f1e94f3919 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3843,10 +3843,10 @@ human-signals@^5.0.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-5.0.0.tgz#42665a284f9ae0dade3ba41ebc37eb4b852f3a28" integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ== -husky@^8.0.3: - version "8.0.3" - resolved "https://registry.yarnpkg.com/husky/-/husky-8.0.3.tgz#4936d7212e46d1dea28fef29bb3a108872cd9184" - integrity sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg== +husky@^9.0.0: + version "9.0.10" + resolved "https://registry.yarnpkg.com/husky/-/husky-9.0.10.tgz#ddca8908deb5f244e9286865ebc80b54387672c2" + integrity sha512-TQGNknoiy6bURzIO77pPRu+XHi6zI7T93rX+QnJsoYFf3xdjKOur+IlfqzJGMHIK/wXrLg+GsvMs8Op7vI2jVA== iconv-lite@0.6.3: version "0.6.3" From 5b74b446d41bb90716a3c6023c3e6ec54e9bd405 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 22 Feb 2024 10:48:50 +0000 Subject: [PATCH 089/595] Prune broken docs symlinks Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6375857800c..451ea064248 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -63,6 +63,7 @@ jobs: yarn tpv purge --yes --out _docs --stale --major 10 yarn gendoc symlinks -rc _docs + find _docs -xtype l -delete - name: 🔨 Set up git run: | From 8123e9a3f1142a7619758c0a238172b007e3a06a Mon Sep 17 00:00:00 2001 From: Andy Balaam Date: Thu, 22 Feb 2024 11:55:27 +0000 Subject: [PATCH 090/595] Bump matrix-react-sdk-crypto-wasm to v4.6.0 (#4082) To reduce memory usage during export - see https://github.com/matrix-org/matrix-rust-sdk-crypto-wasm/pull/105 --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index f23742d1aae..cf4a534a474 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^4.5.0", + "@matrix-org/matrix-sdk-crypto-wasm": "^4.6.0", "another-json": "^0.2.0", "bs58": "^5.0.0", "content-type": "^1.0.4", diff --git a/yarn.lock b/yarn.lock index 3f1e94f3919..2f42074d144 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1658,10 +1658,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@matrix-org/matrix-sdk-crypto-wasm@^4.5.0": - version "4.5.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.5.0.tgz#f55ae28f2cd1bce14fa98069840dd31b2172732a" - integrity sha512-QINqNfBRrkVv9vB+hR+OW4RO6cwf8nt4GEbREiS09L5eUK6xa5REpeXyh7ty1QusYk/DBiNadNcM5ROEPk9dcQ== +"@matrix-org/matrix-sdk-crypto-wasm@^4.6.0": + version "4.6.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.6.0.tgz#35224214c7638abbe2bc91fb4fa4fb022a1a2bf0" + integrity sha512-v9PFWzSTWMlZKbyk3PPsZjUtOEQ7FIz5USD3lFRUWiS4pv0FOKR125VOUnR5Z/kAty57JXCHDAexCln3zE2Fww== "@matrix-org/olm@3.2.15": version "3.2.15" From c1e0192baf4cd32e81764bcf6ce231ffbfe3048c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 22 Feb 2024 17:06:12 +0000 Subject: [PATCH 091/595] Update dependency eslint-plugin-unicorn to v51 (#4083) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index cf4a534a474..0abde566445 100644 --- a/package.json +++ b/package.json @@ -106,7 +106,7 @@ "eslint-plugin-jsdoc": "^48.0.0", "eslint-plugin-matrix-org": "^1.0.0", "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^50.0.0", + "eslint-plugin-unicorn": "^51.0.0", "fake-indexeddb": "^5.0.2", "fetch-mock": "9.11.0", "fetch-mock-jest": "^1.5.1", diff --git a/yarn.lock b/yarn.lock index 2f42074d144..0a1ebf29b63 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3190,10 +3190,10 @@ eslint-plugin-tsdoc@^0.2.17: "@microsoft/tsdoc" "0.14.2" "@microsoft/tsdoc-config" "0.16.2" -eslint-plugin-unicorn@^50.0.0: - version "50.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-50.0.1.tgz#e539cdb02dfd893c603536264c4ed9505b70e3bf" - integrity sha512-KxenCZxqSYW0GWHH18okDlOQcpezcitm5aOSz6EnobyJ6BIByiPDviQRjJIUAjG/tMN11958MxaQ+qCoU6lfDA== +eslint-plugin-unicorn@^51.0.0: + version "51.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-51.0.1.tgz#3641c5e110324c3739d6cb98fc1b99ada39f477b" + integrity sha512-MuR/+9VuB0fydoI0nIn2RDA5WISRn4AsJyNSaNKLVwie9/ONvQhxOBbkfSICBPnzKrB77Fh6CZZXjgTt/4Latw== dependencies: "@babel/helper-validator-identifier" "^7.22.20" "@eslint-community/eslint-utils" "^4.4.0" From be3913e8a5b73bd43c6f531d329caa8a81f4d0e0 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 22 Feb 2024 17:30:14 +0000 Subject: [PATCH 092/595] Update typedoc (#3958) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index 0a1ebf29b63..0b23d065923 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6172,14 +6172,14 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-fxeJRrxQR3yM/aFZU7mOuatgRCztiMCbeNiCRVZKY6VNgOcVMC1HS+ZfZnlbLLteUOdeWleSQ6yntuipz5zi6A== typedoc-plugin-mdn-links@^3.0.3: - version "3.1.5" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.5.tgz#874e66ba5bdfb842b5c2377a6722c5f0777ceba2" - integrity sha512-ZwV7fO3+S7KqbmMycBMYdeCyJ2eYVnoIc1CB64kc9NNwuZZuxocLFAqU3ZT+gihp22xNezrXciFas3ctsKLPgg== + version "3.1.16" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.16.tgz#936408cff409b8f9b2b55d9f6589850c488a9858" + integrity sha512-Jdnw3tI3KOOMMahUNiCwKXJcH+Ov9y3syRQ8HP1ce8nT2O9Bsg9aqqa0LWye+CdCiSpWJ/USzOK3MFNxRYzL4A== typedoc-plugin-missing-exports@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/typedoc-plugin-missing-exports/-/typedoc-plugin-missing-exports-2.1.0.tgz#f283a407eb7b3a43dafc598f44bbfc2d36dc1704" - integrity sha512-+1DhqZCEu7Vu5APnrqpPwl31D+hXpt1fV0Le9ycCRL1eLVdatdl6KVt4SEVwPxnEpKwgOn2dNX6I9+0F1aO2aA== + version "2.2.0" + resolved "https://registry.yarnpkg.com/typedoc-plugin-missing-exports/-/typedoc-plugin-missing-exports-2.2.0.tgz#e39a04bab5b0d7f7b28507d64c07a4c40b788648" + integrity sha512-2+XR1IcyQ5UwXZVJe9NE6HrLmNufT9i5OwoIuuj79VxuA3eYq+Y6itS9rnNV1D7UeQnUSH8kISYD73gHE5zw+w== typedoc-plugin-versions-cli@^0.1.12: version "0.1.12" From a26fc46ed4eef7264826f10ef15150ce894adabb Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 23 Feb 2024 16:43:11 +0000 Subject: [PATCH 093/595] Update MSC2965 OIDC Discovery implementation (#4064) --- spec/test-utils/oidc.ts | 6 +- spec/unit/autodiscovery.spec.ts | 99 +------------------- spec/unit/oidc/authorize.spec.ts | 9 +- spec/unit/oidc/register.spec.ts | 17 ++-- spec/unit/oidc/tokenRefresher.spec.ts | 32 +++---- spec/unit/oidc/validate.spec.ts | 95 +------------------ src/autodiscovery.ts | 126 +------------------------- src/client.ts | 11 --- src/oidc/authorize.ts | 3 +- src/oidc/discovery.ts | 37 ++++---- src/oidc/index.ts | 12 +++ src/oidc/register.ts | 7 +- src/oidc/tokenRefresher.ts | 13 ++- src/oidc/validate.ts | 32 +------ 14 files changed, 78 insertions(+), 421 deletions(-) diff --git a/spec/test-utils/oidc.ts b/spec/test-utils/oidc.ts index 0bd97442daf..7b2adc226d7 100644 --- a/spec/test-utils/oidc.ts +++ b/spec/test-utils/oidc.ts @@ -14,8 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { OidcClientConfig } from "../../src"; -import { ValidatedIssuerMetadata } from "../../src/oidc/validate"; +import { OidcClientConfig, ValidatedIssuerMetadata } from "../../src"; /** * Makes a valid OidcClientConfig with minimum valid values @@ -26,8 +25,7 @@ export const makeDelegatedAuthConfig = (issuer = "https://auth.org/"): OidcClien const metadata = mockOpenIdConfiguration(issuer); return { - issuer, - account: issuer + "account", + accountManagementEndpoint: issuer + "account", registrationEndpoint: metadata.registration_endpoint, authorizationEndpoint: metadata.authorization_endpoint, tokenEndpoint: metadata.token_endpoint, diff --git a/spec/unit/autodiscovery.spec.ts b/spec/unit/autodiscovery.spec.ts index b4025218e66..ceed8be1f57 100644 --- a/spec/unit/autodiscovery.spec.ts +++ b/spec/unit/autodiscovery.spec.ts @@ -15,13 +15,10 @@ See the License for the specific language governing permissions and limitations under the License. */ -import fetchMock from "fetch-mock-jest"; import MockHttpBackend from "matrix-mock-request"; -import { AutoDiscoveryAction, M_AUTHENTICATION } from "../../src"; +import { AutoDiscoveryAction } from "../../src"; import { AutoDiscovery } from "../../src/autodiscovery"; -import { OidcError } from "../../src/oidc/error"; -import { makeDelegatedAuthConfig } from "../test-utils/oidc"; // keep to reset the fetch function after using MockHttpBackend // @ts-ignore private property @@ -409,10 +406,6 @@ describe("AutoDiscovery", function () { error: null, base_url: null, }, - "m.authentication": { - state: "IGNORE", - error: OidcError.NotSupported, - }, }; expect(conf).toEqual(expected); @@ -450,10 +443,6 @@ describe("AutoDiscovery", function () { error: null, base_url: null, }, - "m.authentication": { - state: "IGNORE", - error: OidcError.NotSupported, - }, }; expect(conf).toEqual(expected); @@ -476,9 +465,6 @@ describe("AutoDiscovery", function () { // Note: we also expect this test to trim the trailing slash base_url: "https://chat.example.org/", }, - "m.authentication": { - invalid: true, - }, }); return Promise.all([ httpBackend.flushAllExpected(), @@ -494,10 +480,6 @@ describe("AutoDiscovery", function () { error: null, base_url: null, }, - "m.authentication": { - state: "FAIL_ERROR", - error: OidcError.Misconfigured, - }, }; expect(conf).toEqual(expected); @@ -728,10 +710,6 @@ describe("AutoDiscovery", function () { error: null, base_url: "https://identity.example.org", }, - "m.authentication": { - state: "IGNORE", - error: OidcError.NotSupported, - }, }; expect(conf).toEqual(expected); @@ -784,10 +762,6 @@ describe("AutoDiscovery", function () { "org.example.custom.property": { cupcakes: "yes", }, - "m.authentication": { - state: "IGNORE", - error: OidcError.NotSupported, - }, }; expect(conf).toEqual(expected); @@ -897,75 +871,4 @@ describe("AutoDiscovery", function () { }), ]); }); - - describe("m.authentication", () => { - const homeserverName = "example.org"; - const homeserverUrl = "https://chat.example.org/"; - const issuer = "https://auth.org/"; - - beforeAll(() => { - // make these tests independent from fetch mocking above - AutoDiscovery.setFetchFn(realAutoDiscoveryFetch); - }); - - beforeEach(() => { - fetchMock.resetBehavior(); - fetchMock.get(`${homeserverUrl}_matrix/client/versions`, { versions: ["v1.5"] }); - - fetchMock.get("https://example.org/.well-known/matrix/client", { - "m.homeserver": { - // Note: we also expect this test to trim the trailing slash - base_url: "https://chat.example.org/", - }, - "m.authentication": { - issuer, - }, - }); - }); - - it("should return valid authentication configuration", async () => { - const config = makeDelegatedAuthConfig(issuer); - - fetchMock.get(`${config.metadata.issuer}.well-known/openid-configuration`, config.metadata); - fetchMock.get(`${config.metadata.issuer}jwks`, { - status: 200, - headers: { - "Content-Type": "application/json", - }, - keys: [], - }); - - const result = await AutoDiscovery.findClientConfig(homeserverName); - - expect(result[M_AUTHENTICATION.stable!]).toEqual({ - state: AutoDiscovery.SUCCESS, - ...config, - signingKeys: [], - account: undefined, - error: null, - }); - }); - - it("should set state to error for invalid authentication configuration", async () => { - const config = makeDelegatedAuthConfig(issuer); - // authorization_code is required - config.metadata.grant_types_supported = ["openid"]; - - fetchMock.get(`${config.metadata.issuer}.well-known/openid-configuration`, config.metadata); - fetchMock.get(`${config.metadata.issuer}jwks`, { - status: 200, - headers: { - "Content-Type": "application/json", - }, - keys: [], - }); - - const result = await AutoDiscovery.findClientConfig(homeserverName); - - expect(result[M_AUTHENTICATION.stable!]).toEqual({ - state: AutoDiscovery.FAIL_ERROR, - error: OidcError.OpSupport, - }); - }); - }); }); diff --git a/spec/unit/oidc/authorize.spec.ts b/spec/unit/oidc/authorize.spec.ts index f6264f5d120..e9cf7589a37 100644 --- a/spec/unit/oidc/authorize.spec.ts +++ b/spec/unit/oidc/authorize.spec.ts @@ -46,8 +46,8 @@ const realSubtleCrypto = crypto.subtleCrypto; describe("oidc authorization", () => { const delegatedAuthConfig = makeDelegatedAuthConfig(); - const authorizationEndpoint = delegatedAuthConfig.metadata.authorization_endpoint; - const tokenEndpoint = delegatedAuthConfig.metadata.token_endpoint; + const authorizationEndpoint = delegatedAuthConfig.authorizationEndpoint; + const tokenEndpoint = delegatedAuthConfig.tokenEndpoint; const clientId = "xyz789"; const baseUrl = "https://test.com"; @@ -58,7 +58,10 @@ describe("oidc authorization", () => { jest.spyOn(logger, "warn"); jest.setSystemTime(now); - fetchMock.get(delegatedAuthConfig.issuer + ".well-known/openid-configuration", mockOpenIdConfiguration()); + fetchMock.get( + delegatedAuthConfig.metadata.issuer + ".well-known/openid-configuration", + mockOpenIdConfiguration(), + ); Object.defineProperty(window, "crypto", { value: { diff --git a/spec/unit/oidc/register.spec.ts b/spec/unit/oidc/register.spec.ts index f0e25784137..372f7d677c4 100644 --- a/spec/unit/oidc/register.spec.ts +++ b/spec/unit/oidc/register.spec.ts @@ -18,10 +18,10 @@ import fetchMockJest from "fetch-mock-jest"; import { OidcError } from "../../../src/oidc/error"; import { OidcRegistrationClientMetadata, registerOidcClient } from "../../../src/oidc/register"; +import { makeDelegatedAuthConfig } from "../../test-utils/oidc"; describe("registerOidcClient()", () => { const issuer = "https://auth.com/"; - const registrationEndpoint = "https://auth.com/register"; const clientName = "Element"; const baseUrl = "https://just.testing"; const metadata: OidcRegistrationClientMetadata = { @@ -35,25 +35,20 @@ describe("registerOidcClient()", () => { }; const dynamicClientId = "xyz789"; - const delegatedAuthConfig = { - issuer, - registrationEndpoint, - authorizationEndpoint: issuer + "auth", - tokenEndpoint: issuer + "token", - }; + const delegatedAuthConfig = makeDelegatedAuthConfig(issuer); beforeEach(() => { fetchMockJest.mockClear(); fetchMockJest.resetBehavior(); }); it("should make correct request to register client", async () => { - fetchMockJest.post(registrationEndpoint, { + fetchMockJest.post(delegatedAuthConfig.registrationEndpoint!, { status: 200, body: JSON.stringify({ client_id: dynamicClientId }), }); expect(await registerOidcClient(delegatedAuthConfig, metadata)).toEqual(dynamicClientId); expect(fetchMockJest).toHaveBeenCalledWith( - registrationEndpoint, + delegatedAuthConfig.registrationEndpoint!, expect.objectContaining({ headers: { "Accept": "application/json", @@ -77,7 +72,7 @@ describe("registerOidcClient()", () => { }); it("should throw when registration request fails", async () => { - fetchMockJest.post(registrationEndpoint, { + fetchMockJest.post(delegatedAuthConfig.registrationEndpoint!, { status: 500, }); await expect(() => registerOidcClient(delegatedAuthConfig, metadata)).rejects.toThrow( @@ -86,7 +81,7 @@ describe("registerOidcClient()", () => { }); it("should throw when registration response is invalid", async () => { - fetchMockJest.post(registrationEndpoint, { + fetchMockJest.post(delegatedAuthConfig.registrationEndpoint!, { status: 200, // no clientId in response body: "{}", diff --git a/spec/unit/oidc/tokenRefresher.spec.ts b/spec/unit/oidc/tokenRefresher.spec.ts index 803a63d9aac..e291142b868 100644 --- a/spec/unit/oidc/tokenRefresher.spec.ts +++ b/spec/unit/oidc/tokenRefresher.spec.ts @@ -64,7 +64,7 @@ describe("OidcTokenRefresher", () => { keys: [], }); - fetchMock.post(config.metadata.token_endpoint, { + fetchMock.post(config.tokenEndpoint, { status: 200, headers: { "Content-Type": "application/json", @@ -88,7 +88,7 @@ describe("OidcTokenRefresher", () => { }, { overwriteRoutes: true }, ); - const refresher = new OidcTokenRefresher(authConfig, clientId, redirectUri, deviceId, idTokenClaims); + const refresher = new OidcTokenRefresher(authConfig.issuer, clientId, redirectUri, deviceId, idTokenClaims); await expect(refresher.oidcClientReady).rejects.toThrow(); expect(logger.error).toHaveBeenCalledWith( "Failed to initialise OIDC client.", @@ -98,7 +98,7 @@ describe("OidcTokenRefresher", () => { }); it("initialises oidc client", async () => { - const refresher = new OidcTokenRefresher(authConfig, clientId, redirectUri, deviceId, idTokenClaims); + const refresher = new OidcTokenRefresher(authConfig.issuer, clientId, redirectUri, deviceId, idTokenClaims); await refresher.oidcClientReady; // @ts-ignore peek at private property to see we initialised the client correctly @@ -114,19 +114,19 @@ describe("OidcTokenRefresher", () => { describe("doRefreshAccessToken()", () => { it("should throw when oidcClient has not been initialised", async () => { - const refresher = new OidcTokenRefresher(authConfig, clientId, redirectUri, deviceId, idTokenClaims); + const refresher = new OidcTokenRefresher(authConfig.issuer, clientId, redirectUri, deviceId, idTokenClaims); await expect(refresher.doRefreshAccessToken("token")).rejects.toThrow( "Cannot get new token before OIDC client is initialised.", ); }); it("should refresh the tokens", async () => { - const refresher = new OidcTokenRefresher(authConfig, clientId, redirectUri, deviceId, idTokenClaims); + const refresher = new OidcTokenRefresher(authConfig.issuer, clientId, redirectUri, deviceId, idTokenClaims); await refresher.oidcClientReady; const result = await refresher.doRefreshAccessToken("refresh-token"); - expect(fetchMock).toHaveFetched(config.metadata.token_endpoint, { + expect(fetchMock).toHaveFetched(config.tokenEndpoint, { method: "POST", }); @@ -137,7 +137,7 @@ describe("OidcTokenRefresher", () => { }); it("should persist the new tokens", async () => { - const refresher = new OidcTokenRefresher(authConfig, clientId, redirectUri, deviceId, idTokenClaims); + const refresher = new OidcTokenRefresher(authConfig.issuer, clientId, redirectUri, deviceId, idTokenClaims); await refresher.oidcClientReady; // spy on our stub jest.spyOn(refresher, "persistTokens"); @@ -153,7 +153,7 @@ describe("OidcTokenRefresher", () => { it("should only have one inflight refresh request at once", async () => { fetchMock .postOnce( - config.metadata.token_endpoint, + config.tokenEndpoint, { status: 200, headers: { @@ -164,7 +164,7 @@ describe("OidcTokenRefresher", () => { { overwriteRoutes: true }, ) .postOnce( - config.metadata.token_endpoint, + config.tokenEndpoint, { status: 200, headers: { @@ -175,7 +175,7 @@ describe("OidcTokenRefresher", () => { { overwriteRoutes: false }, ); - const refresher = new OidcTokenRefresher(authConfig, clientId, redirectUri, deviceId, idTokenClaims); + const refresher = new OidcTokenRefresher(authConfig.issuer, clientId, redirectUri, deviceId, idTokenClaims); await refresher.oidcClientReady; // reset call counts fetchMock.resetHistory(); @@ -188,7 +188,7 @@ describe("OidcTokenRefresher", () => { const result2 = await first; // only one call to token endpoint - expect(fetchMock).toHaveFetchedTimes(1, config.metadata.token_endpoint); + expect(fetchMock).toHaveFetchedTimes(1, config.tokenEndpoint); expect(result1).toEqual({ accessToken: "first-new-access-token", refreshToken: "first-new-refresh-token", @@ -208,7 +208,7 @@ describe("OidcTokenRefresher", () => { it("should log and rethrow when token refresh fails", async () => { fetchMock.post( - config.metadata.token_endpoint, + config.tokenEndpoint, { status: 503, headers: { @@ -218,7 +218,7 @@ describe("OidcTokenRefresher", () => { { overwriteRoutes: true }, ); - const refresher = new OidcTokenRefresher(authConfig, clientId, redirectUri, deviceId, idTokenClaims); + const refresher = new OidcTokenRefresher(authConfig.issuer, clientId, redirectUri, deviceId, idTokenClaims); await refresher.oidcClientReady; await expect(refresher.doRefreshAccessToken("refresh-token")).rejects.toThrow(); @@ -228,7 +228,7 @@ describe("OidcTokenRefresher", () => { // make sure inflight request is cleared after a failure fetchMock .postOnce( - config.metadata.token_endpoint, + config.tokenEndpoint, { status: 503, headers: { @@ -238,7 +238,7 @@ describe("OidcTokenRefresher", () => { { overwriteRoutes: true }, ) .postOnce( - config.metadata.token_endpoint, + config.tokenEndpoint, { status: 200, headers: { @@ -249,7 +249,7 @@ describe("OidcTokenRefresher", () => { { overwriteRoutes: false }, ); - const refresher = new OidcTokenRefresher(authConfig, clientId, redirectUri, deviceId, idTokenClaims); + const refresher = new OidcTokenRefresher(authConfig.issuer, clientId, redirectUri, deviceId, idTokenClaims); await refresher.oidcClientReady; // reset call counts fetchMock.resetHistory(); diff --git a/spec/unit/oidc/validate.spec.ts b/spec/unit/oidc/validate.spec.ts index a3fde6ee46a..c9207e28fa4 100644 --- a/spec/unit/oidc/validate.spec.ts +++ b/spec/unit/oidc/validate.spec.ts @@ -17,105 +17,12 @@ limitations under the License. import { mocked } from "jest-mock"; import { jwtDecode } from "jwt-decode"; -import { M_AUTHENTICATION } from "../../../src"; import { logger } from "../../../src/logger"; -import { - validateIdToken, - validateOIDCIssuerWellKnown, - validateWellKnownAuthentication, -} from "../../../src/oidc/validate"; +import { validateIdToken, validateOIDCIssuerWellKnown } from "../../../src/oidc/validate"; import { OidcError } from "../../../src/oidc/error"; jest.mock("jwt-decode"); -describe("validateWellKnownAuthentication()", () => { - const baseWk = { - "m.homeserver": { - base_url: "https://hs.org", - }, - }; - it("should throw not supported error when wellKnown has no m.authentication section", () => { - expect(() => validateWellKnownAuthentication(undefined)).toThrow(OidcError.NotSupported); - }); - - it("should throw misconfigured error when authentication issuer is not a string", () => { - const wk = { - ...baseWk, - [M_AUTHENTICATION.stable!]: { - issuer: { url: "test.com" }, - }, - }; - expect(() => validateWellKnownAuthentication(wk[M_AUTHENTICATION.stable!] as any)).toThrow( - OidcError.Misconfigured, - ); - }); - - it("should throw misconfigured error when authentication account is not a string", () => { - const wk = { - ...baseWk, - [M_AUTHENTICATION.stable!]: { - issuer: "test.com", - account: { url: "test" }, - }, - }; - expect(() => validateWellKnownAuthentication(wk[M_AUTHENTICATION.stable!] as any)).toThrow( - OidcError.Misconfigured, - ); - }); - - it("should throw misconfigured error when authentication account is false", () => { - const wk = { - ...baseWk, - [M_AUTHENTICATION.stable!]: { - issuer: "test.com", - account: false, - }, - }; - expect(() => validateWellKnownAuthentication(wk[M_AUTHENTICATION.stable!] as any)).toThrow( - OidcError.Misconfigured, - ); - }); - - it("should return valid config when wk uses stable m.authentication", () => { - const wk = { - ...baseWk, - [M_AUTHENTICATION.stable!]: { - issuer: "test.com", - account: "account.com", - }, - }; - expect(validateWellKnownAuthentication(wk[M_AUTHENTICATION.stable!])).toEqual({ - issuer: "test.com", - account: "account.com", - }); - }); - - it("should return valid config when m.authentication account is missing", () => { - const wk = { - ...baseWk, - [M_AUTHENTICATION.stable!]: { - issuer: "test.com", - }, - }; - expect(validateWellKnownAuthentication(wk[M_AUTHENTICATION.stable!])).toEqual({ - issuer: "test.com", - }); - }); - - it("should remove unexpected properties", () => { - const wk = { - ...baseWk, - [M_AUTHENTICATION.stable!]: { - issuer: "test.com", - somethingElse: "test", - }, - }; - expect(validateWellKnownAuthentication(wk[M_AUTHENTICATION.stable!])).toEqual({ - issuer: "test.com", - }); - }); -}); - describe("validateOIDCIssuerWellKnown", () => { const validWk: any = { authorization_endpoint: "https://test.org/authorize", diff --git a/src/autodiscovery.ts b/src/autodiscovery.ts index 9bf6cdafa81..29dac54bdb7 100644 --- a/src/autodiscovery.ts +++ b/src/autodiscovery.ts @@ -15,19 +15,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { SigningKey } from "oidc-client-ts"; - -import { IClientWellKnown, IWellKnownConfig, IDelegatedAuthConfig, IServerVersions, M_AUTHENTICATION } from "./client"; +import { IClientWellKnown, IWellKnownConfig, IServerVersions } from "./client"; import { logger } from "./logger"; import { MatrixError, Method, timeoutSignal } from "./http-api"; -import { discoverAndValidateAuthenticationConfig } from "./oidc/discovery"; -import { - ValidatedIssuerConfig, - ValidatedIssuerMetadata, - validateOIDCIssuerWellKnown, - validateWellKnownAuthentication, -} from "./oidc/validate"; -import { OidcError } from "./oidc/error"; import { SUPPORTED_MATRIX_VERSIONS } from "./version-support"; // Dev note: Auto discovery is part of the spec. @@ -65,26 +55,9 @@ interface AutoDiscoveryState { } interface WellKnownConfig extends Omit, AutoDiscoveryState {} -/** - * @deprecated in favour of OidcClientConfig - */ -interface DelegatedAuthConfig extends IDelegatedAuthConfig, ValidatedIssuerConfig, AutoDiscoveryState {} - -/** - * @experimental - */ -export interface OidcClientConfig extends IDelegatedAuthConfig, ValidatedIssuerConfig { - metadata: ValidatedIssuerMetadata; - signingKeys?: SigningKey[]; -} - export interface ClientConfig extends Omit { "m.homeserver": WellKnownConfig; "m.identity_server": WellKnownConfig; - /** - * @experimental - */ - "m.authentication"?: (OidcClientConfig & AutoDiscoveryState) | AutoDiscoveryState; } /** @@ -318,107 +291,10 @@ export class AutoDiscovery { } }); - const authConfig = await this.discoverAndValidateAuthenticationConfig(wellknown); - clientConfig[M_AUTHENTICATION.stable!] = authConfig; - // Step 8: Give the config to the caller (finally) return Promise.resolve(clientConfig); } - /** - * Validate delegated auth configuration - * @deprecated use discoverAndValidateAuthenticationConfig - * - m.authentication config is present and valid - * - delegated auth issuer openid-configuration is reachable - * - delegated auth issuer openid-configuration is configured correctly for us - * When successful, DelegatedAuthConfig will be returned with endpoints used for delegated auth - * Any errors are caught, and AutoDiscoveryState returned with error - * @param wellKnown - configuration object as returned - * by the .well-known auto-discovery endpoint - * @returns Config or failure result - */ - public static async validateDiscoveryAuthenticationConfig( - wellKnown: IClientWellKnown, - ): Promise { - try { - const authentication = M_AUTHENTICATION.findIn(wellKnown) || undefined; - const homeserverAuthenticationConfig = validateWellKnownAuthentication(authentication); - - const issuerOpenIdConfigUrl = `${this.sanitizeWellKnownUrl( - homeserverAuthenticationConfig.issuer, - )}/.well-known/openid-configuration`; - const issuerWellKnown = await this.fetchWellKnownObject(issuerOpenIdConfigUrl); - - if (issuerWellKnown.action !== AutoDiscoveryAction.SUCCESS) { - logger.error("Failed to fetch issuer openid configuration"); - throw new Error(OidcError.General); - } - - const validatedIssuerConfig = validateOIDCIssuerWellKnown(issuerWellKnown.raw); - - const delegatedAuthConfig: DelegatedAuthConfig = { - state: AutoDiscoveryAction.SUCCESS, - error: null, - ...homeserverAuthenticationConfig, - ...validatedIssuerConfig, - }; - return delegatedAuthConfig; - } catch (error) { - const errorMessage = (error as Error).message as unknown as OidcError; - const errorType = Object.values(OidcError).includes(errorMessage) ? errorMessage : OidcError.General; - - const state = - errorType === OidcError.NotSupported ? AutoDiscoveryAction.IGNORE : AutoDiscoveryAction.FAIL_ERROR; - - return { - state, - error: errorType, - }; - } - } - - /** - * Validate delegated auth configuration - * - m.authentication config is present and valid - * - delegated auth issuer openid-configuration is reachable - * - delegated auth issuer openid-configuration is configured correctly for us - * When successful, validated authentication metadata and optionally signing keys will be returned - * Any errors are caught, and AutoDiscoveryState returned with error - * @param wellKnown - configuration object as returned - * by the .well-known auto-discovery endpoint - * @returns Config or failure result - */ - public static async discoverAndValidateAuthenticationConfig( - wellKnown: IClientWellKnown, - ): Promise<(OidcClientConfig & AutoDiscoveryState) | AutoDiscoveryState> { - try { - const authentication = M_AUTHENTICATION.findIn(wellKnown) || undefined; - const result = await discoverAndValidateAuthenticationConfig(authentication); - - // include this for backwards compatibility - const validatedIssuerConfig = validateOIDCIssuerWellKnown(result.metadata); - - const response = { - state: AutoDiscoveryAction.SUCCESS, - error: null, - ...validatedIssuerConfig, - ...result, - }; - return response; - } catch (error) { - const errorMessage = (error as Error).message as unknown as OidcError; - const errorType = Object.values(OidcError).includes(errorMessage) ? errorMessage : OidcError.General; - - const state = - errorType === OidcError.NotSupported ? AutoDiscoveryAction.IGNORE : AutoDiscoveryAction.FAIL_ERROR; - - return { - state, - error: errorType, - }; - } - } - /** * Attempts to automatically discover client configuration information * prior to logging in. Such information includes the homeserver URL diff --git a/src/client.ts b/src/client.ts index 15fc1a99429..3b489ad52db 100644 --- a/src/client.ts +++ b/src/client.ts @@ -625,13 +625,10 @@ export interface IServerVersions { unstable_features: Record; } -export const M_AUTHENTICATION = new UnstableValue("m.authentication", "org.matrix.msc2965.authentication"); - export interface IClientWellKnown { [key: string]: any; "m.homeserver"?: IWellKnownConfig; "m.identity_server"?: IWellKnownConfig; - [M_AUTHENTICATION.name]?: IDelegatedAuthConfig; // MSC2965 } export interface IWellKnownConfig { @@ -645,14 +642,6 @@ export interface IWellKnownConfig { server_name?: string; } -export interface IDelegatedAuthConfig { - // MSC2965 - /** The OIDC Provider/issuer the client should use */ - issuer: string; - /** The optional URL of the web UI where the user can manage their account */ - account?: string; -} - interface IKeyBackupPath { path: string; queryData?: { diff --git a/src/oidc/authorize.ts b/src/oidc/authorize.ts index c0b844436fa..35b93dc48e2 100644 --- a/src/oidc/authorize.ts +++ b/src/oidc/authorize.ts @@ -16,7 +16,6 @@ limitations under the License. import { IdTokenClaims, Log, OidcClient, SigninResponse, SigninState, WebStorageStateStore } from "oidc-client-ts"; -import { IDelegatedAuthConfig } from "../client"; import { subtleCrypto, TextEncoder } from "../crypto/crypto"; import { logger } from "../logger"; import { randomString } from "../randomstring"; @@ -209,7 +208,7 @@ export const completeAuthorizationCodeGrant = async ( code: string, state: string, ): Promise<{ - oidcClientSettings: IDelegatedAuthConfig & { clientId: string }; + oidcClientSettings: { clientId: string; issuer: string }; tokenResponse: BearerTokenResponse; homeserverUrl: string; idTokenClaims: IdTokenClaims; diff --git a/src/oidc/discovery.ts b/src/oidc/discovery.ts index 76aaeea8054..7199c8715d4 100644 --- a/src/oidc/discovery.ts +++ b/src/oidc/discovery.ts @@ -14,36 +14,35 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MetadataService, OidcClientSettingsStore, SigningKey } from "oidc-client-ts"; +import { MetadataService, OidcClientSettingsStore } from "oidc-client-ts"; -import { IDelegatedAuthConfig } from "../client"; -import { isValidatedIssuerMetadata, ValidatedIssuerMetadata, validateWellKnownAuthentication } from "./validate"; +import { isValidatedIssuerMetadata, validateOIDCIssuerWellKnown } from "./validate"; +import { Method, timeoutSignal } from "../http-api"; +import { OidcClientConfig } from "./index"; /** * @experimental * Discover and validate delegated auth configuration - * - m.authentication config is present and valid * - delegated auth issuer openid-configuration is reachable * - delegated auth issuer openid-configuration is configured correctly for us + * Fetches https://oidc-issuer.example.com/.well-known/openid-configuration and other files linked therein. * When successful, validated metadata is returned - * @param wellKnown - configuration object as returned - * by the .well-known auto-discovery endpoint + * @param issuer - the OIDC issuer as returned by the /auth_issuer API * @returns validated authentication metadata and optionally signing keys * @throws when delegated auth config is invalid or unreachable */ -export const discoverAndValidateAuthenticationConfig = async ( - authenticationConfig?: IDelegatedAuthConfig, -): Promise< - IDelegatedAuthConfig & { - metadata: ValidatedIssuerMetadata; - signingKeys?: SigningKey[]; - } -> => { - const homeserverAuthenticationConfig = validateWellKnownAuthentication(authenticationConfig); - - // create a temporary settings store so we can use metadata service for discovery +export const discoverAndValidateOIDCIssuerWellKnown = async (issuer: string): Promise => { + const issuerOpenIdConfigUrl = new URL(".well-known/openid-configuration", issuer); + const issuerWellKnownResponse = await fetch(issuerOpenIdConfigUrl, { + method: Method.Get, + signal: timeoutSignal(5000), + }); + const issuerWellKnown = await issuerWellKnownResponse.json(); + const validatedIssuerConfig = validateOIDCIssuerWellKnown(issuerWellKnown); + + // create a temporary settings store, so we can use metadata service for discovery const settings = new OidcClientSettingsStore({ - authority: homeserverAuthenticationConfig.issuer, + authority: issuer, redirect_uri: "", // Not known yet, this is here to make the type checker happy client_id: "", // Not known yet, this is here to make the type checker happy }); @@ -54,7 +53,7 @@ export const discoverAndValidateAuthenticationConfig = async ( isValidatedIssuerMetadata(metadata); return { - ...homeserverAuthenticationConfig, + ...validatedIssuerConfig, metadata, signingKeys, }; diff --git a/src/oidc/index.ts b/src/oidc/index.ts index 7c15d2ce954..7fc31836f83 100644 --- a/src/oidc/index.ts +++ b/src/oidc/index.ts @@ -14,9 +14,21 @@ See the License for the specific language governing permissions and limitations under the License. */ +import type { SigningKey } from "oidc-client-ts"; +import { ValidatedIssuerConfig, ValidatedIssuerMetadata } from "./validate"; + export * from "./authorize"; export * from "./discovery"; export * from "./error"; export * from "./register"; export * from "./tokenRefresher"; export * from "./validate"; + +/** + * Validated config for native OIDC authentication, as returned by {@link discoverAndValidateOIDCIssuerWellKnown}. + * Contains metadata and signing keys from the issuer's well-known (https://oidc-issuer.example.com/.well-known/openid-configuration). + */ +export interface OidcClientConfig extends ValidatedIssuerConfig { + metadata: ValidatedIssuerMetadata; + signingKeys?: SigningKey[]; +} diff --git a/src/oidc/register.ts b/src/oidc/register.ts index 65add493510..6e4948f5065 100644 --- a/src/oidc/register.ts +++ b/src/oidc/register.ts @@ -14,11 +14,10 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IDelegatedAuthConfig } from "../client"; +import { OidcClientConfig } from "."; import { OidcError } from "./error"; import { Method } from "../http-api"; import { logger } from "../logger"; -import { ValidatedIssuerConfig } from "./validate"; import { NonEmptyArray } from "../@types/common"; /** @@ -112,13 +111,13 @@ const doRegistration = async ( /** * Attempts dynamic registration against the configured registration endpoint - * @param delegatedAuthConfig - Auth config from ValidatedServerConfig + * @param delegatedAuthConfig - Auth config from {@link discoverAndValidateOIDCIssuerWellKnown} * @param clientMetadata - The metadata for the client which to register * @returns Promise resolved with registered clientId * @throws when registration is not supported, on failed request or invalid response */ export const registerOidcClient = async ( - delegatedAuthConfig: IDelegatedAuthConfig & ValidatedIssuerConfig, + delegatedAuthConfig: OidcClientConfig, clientMetadata: OidcRegistrationClientMetadata, ): Promise => { if (!delegatedAuthConfig.registrationEndpoint) { diff --git a/src/oidc/tokenRefresher.ts b/src/oidc/tokenRefresher.ts index 10c9bc48ea3..79ef9442276 100644 --- a/src/oidc/tokenRefresher.ts +++ b/src/oidc/tokenRefresher.ts @@ -17,9 +17,8 @@ limitations under the License. import { IdTokenClaims, OidcClient, WebStorageStateStore } from "oidc-client-ts"; import { AccessTokens } from "../http-api"; -import { IDelegatedAuthConfig } from "../client"; import { generateScope } from "./authorize"; -import { discoverAndValidateAuthenticationConfig } from "./discovery"; +import { discoverAndValidateOIDCIssuerWellKnown } from "./discovery"; import { logger } from "../logger"; /** @@ -42,9 +41,9 @@ export class OidcTokenRefresher { public constructor( /** - * Delegated auth config as found in matrix client .well-known + * The OIDC issuer as returned by the /auth_issuer API */ - authConfig: IDelegatedAuthConfig, + issuer: string, /** * id of this client as registered with the OP */ @@ -63,17 +62,17 @@ export class OidcTokenRefresher { */ private readonly idTokenClaims: IdTokenClaims, ) { - this.oidcClientReady = this.initialiseOidcClient(authConfig, clientId, deviceId, redirectUri); + this.oidcClientReady = this.initialiseOidcClient(issuer, clientId, deviceId, redirectUri); } private async initialiseOidcClient( - authConfig: IDelegatedAuthConfig, + issuer: string, clientId: string, deviceId: string, redirectUri: string, ): Promise { try { - const config = await discoverAndValidateAuthenticationConfig(authConfig); + const config = await discoverAndValidateOIDCIssuerWellKnown(issuer); const scope = generateScope(deviceId); diff --git a/src/oidc/validate.ts b/src/oidc/validate.ts index c806ca80777..38d730ba45d 100644 --- a/src/oidc/validate.ts +++ b/src/oidc/validate.ts @@ -17,7 +17,6 @@ limitations under the License. import { jwtDecode } from "jwt-decode"; import { OidcMetadata, SigninResponse } from "oidc-client-ts"; -import { IDelegatedAuthConfig } from "../client"; import { logger } from "../logger"; import { OidcError } from "./error"; @@ -35,31 +34,6 @@ export type ValidatedIssuerConfig = { accountManagementActionsSupported?: string[]; }; -/** - * Validates MSC2965 m.authentication config - * Returns valid configuration - * @param wellKnown - client well known as returned from ./well-known/client/matrix - * @returns config - when present and valid - * @throws when config is not found or invalid - */ -export const validateWellKnownAuthentication = (authentication?: IDelegatedAuthConfig): IDelegatedAuthConfig => { - if (!authentication) { - throw new Error(OidcError.NotSupported); - } - - if ( - typeof authentication.issuer === "string" && - (!authentication.hasOwnProperty("account") || typeof authentication.account === "string") - ) { - return { - issuer: authentication.issuer, - account: authentication.account, - }; - } - - throw new Error(OidcError.Misconfigured); -}; - const isRecord = (value: unknown): value is Record => !!value && typeof value === "object" && !Array.isArray(value); const requiredStringProperty = (wellKnown: Record, key: string): boolean => { @@ -150,7 +124,11 @@ export type ValidatedIssuerMetadata = Partial & | "response_types_supported" | "grant_types_supported" | "code_challenge_methods_supported" - >; + > & { + // MSC2965 extensions to the OIDC spec + account_management_uri?: string; + account_management_actions_supported?: string[]; + }; /** * Wraps validateOIDCIssuerWellKnown in a type assertion From d3dfcd924201d71b434af3d77343b5229b6ed75e Mon Sep 17 00:00:00 2001 From: Valere Date: Mon, 26 Feb 2024 15:07:28 +0100 Subject: [PATCH 094/595] Add basic retry for rust crypto outgoing requests (#4061) * Add basic retry for outgoing requests * Update doc * Remove 504 from retryable * Retry all 5xx and clarify client timeouts * code review cleaning * do not retry rust request if M_TOO_LARGE * refactor use common retry alg between scheduler and rust requests * Code review, cleaning and doc --- .../OutgoingRequestProcessor.spec.ts | 301 +++++++++++++++++- src/http-api/utils.ts | 46 +++ src/rust-crypto/OutgoingRequestProcessor.ts | 49 ++- src/scheduler.ts | 31 +- 4 files changed, 386 insertions(+), 41 deletions(-) diff --git a/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts b/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts index 3501ec8faed..e63243d2913 100644 --- a/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts +++ b/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts @@ -27,8 +27,9 @@ import { UploadSigningKeysRequest, ToDeviceRequest, } from "@matrix-org/matrix-sdk-crypto-wasm"; +import fetchMock from "fetch-mock-jest"; -import { TypedEventEmitter } from "../../../src/models/typed-event-emitter"; +import { TypedEventEmitter } from "../../../src"; import { HttpApiEvent, HttpApiEventHandlerMap, IHttpOpts, MatrixHttpApi, UIAuthCallback } from "../../../src"; import { OutgoingRequestProcessor } from "../../../src/rust-crypto/OutgoingRequestProcessor"; import { defer } from "../../../src/utils"; @@ -274,4 +275,302 @@ describe("OutgoingRequestProcessor", () => { // ... and `makeOutgoingRequest` resolves satisfactorily await result; }); + + describe("Should retry requests", () => { + beforeEach(() => { + jest.useFakeTimers(); + + // here we use another httpApi instance in order to use fetchMock + const dummyEventEmitter = new TypedEventEmitter(); + const httpApi = new MatrixHttpApi(dummyEventEmitter, { + baseUrl: "https://example.com", + prefix: "/_matrix", + onlyData: true, + }); + + processor = new OutgoingRequestProcessor(olmMachine, httpApi); + }); + + afterEach(() => { + jest.useRealTimers(); + fetchMock.reset(); + }); + + describe("Should retry on retryable errors", () => { + const retryableErrors: Array<[number, { status: number; body: { error: string } }]> = [ + [429, { status: 429, body: { error: "Too Many Requests" } }], + [500, { status: 500, body: { error: "Internal Server Error" } }], + [502, { status: 502, body: { error: "Bad Gateway" } }], + [503, { status: 503, body: { error: "Service Unavailable" } }], + [504, { status: 504, body: { error: "Gateway timeout" } }], + [505, { status: 505, body: { error: "HTTP Version Not Supported" } }], + [506, { status: 506, body: { error: "Variant Also Negotiates" } }], + [507, { status: 507, body: { error: "Insufficient Storage" } }], + [508, { status: 508, body: { error: "Loop Detected" } }], + [510, { status: 510, body: { error: "Not Extended" } }], + [511, { status: 511, body: { error: "Network Authentication Required" } }], + [525, { status: 525, body: { error: "SSL Handshake Failed" } }], + ]; + describe.each(retryableErrors)(`When status code is %s`, (_, error) => { + test.each(tests)(`for request of type %ss`, async (_, RequestClass, expectedMethod, expectedPath) => { + // first, mock up a request as we might expect to receive it from the Rust layer ... + const testBody = '{ "foo": "bar" }'; + const outgoingRequest = new RequestClass("1234", testBody); + + fetchMock.mock(expectedPath, error, { method: expectedMethod }); + + const requestPromise = processor.makeOutgoingRequest(outgoingRequest); + + // Run all timers and wait for the request promise to resolve/reject + await Promise.all([jest.runAllTimersAsync(), requestPromise.catch(() => {})]); + + await expect(requestPromise).rejects.toThrow(); + + // Should have ultimately made 5 requests (1 initial + 4 retries) + const calls = fetchMock.calls(expectedPath); + expect(calls).toHaveLength(5); + + // The promise should have been rejected + await expect(requestPromise).rejects.toThrow(); + }); + }); + }); + + it("should not retry if M_TOO_LARGE", async () => { + const testBody = '{ "messages": { "user": {"device": "bar" }}}'; + const outgoingRequest = new ToDeviceRequest("1234", "custom.type", "12345", testBody); + + fetchMock.put("express:/_matrix/client/v3/sendToDevice/:type/:txnId", { + status: 502, + body: { + errcode: "M_TOO_LARGE", + error: "Request too large", + }, + }); + + const requestPromise = processor.makeOutgoingRequest(outgoingRequest); + + await Promise.all([requestPromise.catch(() => {}), jest.runAllTimersAsync()]); + + await expect(requestPromise).rejects.toThrow(); + + const calls = fetchMock.calls("express:/_matrix/client/v3/sendToDevice/:type/:txnId"); + expect(calls).toHaveLength(1); + + // The promise should have been rejected + await expect(requestPromise).rejects.toThrow(); + }); + + it("should retry on Failed to fetch connection errors", async () => { + let callCount = 0; + fetchMock.post("path:/_matrix/client/v3/keys/upload", (url, opts) => { + callCount++; + if (callCount == 2) { + return { + status: 200, + body: "{}", + }; + } else { + throw new Error("Failed to fetch"); + } + }); + + const outgoingRequest = new KeysUploadRequest("1234", "{}"); + + const requestPromise = processor.makeOutgoingRequest(outgoingRequest); + + await Promise.all([requestPromise, jest.runAllTimersAsync()]); + + const calls = fetchMock.calls("path:/_matrix/client/v3/keys/upload"); + expect(calls).toHaveLength(2); + expect(olmMachine.markRequestAsSent).toHaveBeenCalled(); + }); + + it("should retry to send to-device", async () => { + let callCount = 0; + const testBody = '{ "messages": { "user": {"device": "bar" }}}'; + const outgoingRequest = new ToDeviceRequest("1234", "custom.type", "12345", testBody); + + fetchMock.put("express:/_matrix/client/v3/sendToDevice/:type/:txnId", (url, opts) => { + callCount++; + if (callCount == 2) { + return { + status: 200, + body: "{}", + }; + } else { + throw new Error("Failed to fetch"); + } + }); + + const requestPromise = processor.makeOutgoingRequest(outgoingRequest); + + await Promise.all([requestPromise, jest.runAllTimersAsync()]); + + const calls = fetchMock.calls("express:/_matrix/client/v3/sendToDevice/:type/:txnId"); + expect(calls).toHaveLength(2); + expect(olmMachine.markRequestAsSent).toHaveBeenCalled(); + }); + + it("should retry to call with UIA", async () => { + let callCount = 0; + const testBody = '{ "foo": "bar" }'; + const outgoingRequest = new UploadSigningKeysRequest(testBody); + + fetchMock.post("path:/_matrix/client/v3/keys/device_signing/upload", (url, opts) => { + callCount++; + if (callCount == 2) { + return { + status: 200, + body: "{}", + }; + } else { + throw new Error("Failed to fetch"); + } + }); + const authCallback: UIAuthCallback = async (makeRequest) => { + return await makeRequest({ type: "test" }); + }; + const requestPromise = processor.makeOutgoingRequest(outgoingRequest, authCallback); + + await Promise.all([requestPromise, jest.runAllTimersAsync()]); + + const calls = fetchMock.calls("path:/_matrix/client/v3/keys/device_signing/upload"); + expect(calls).toHaveLength(2); + // Will not mark as sent as it's a UIA request + }); + + it("should retry on respect server cool down on LIMIT_EXCEEDED", async () => { + const retryAfterMs = 5000; + let callCount = 0; + + fetchMock.post("path:/_matrix/client/v3/keys/upload", (url, opts) => { + callCount++; + if (callCount == 2) { + return { + status: 200, + body: "{}", + }; + } else { + return { + status: 429, + body: { + errcode: "M_LIMIT_EXCEEDED", + error: "Too many requests", + retry_after_ms: retryAfterMs, + }, + }; + } + }); + + const outgoingRequest = new KeysUploadRequest("1234", "{}"); + + const requestPromise = processor.makeOutgoingRequest(outgoingRequest); + + // advanced by less than the retryAfterMs + await jest.advanceTimersByTimeAsync(retryAfterMs - 1000); + + // should not have made a second request yet + { + const calls = fetchMock.calls("path:/_matrix/client/v3/keys/upload"); + expect(calls).toHaveLength(1); + } + + // advanced by the remaining time + await jest.advanceTimersByTimeAsync(retryAfterMs + 1000); + + await requestPromise; + + const calls = fetchMock.calls("path:/_matrix/client/v3/keys/upload"); + expect(calls).toHaveLength(2); + expect(olmMachine.markRequestAsSent).toHaveBeenCalled(); + }); + + const nonRetryableErrors: Array<[number, { status: number; body: { errcode: string } }]> = [ + [400, { status: 400, body: { errcode: "Bad Request" } }], + [401, { status: 401, body: { errcode: "M_UNKNOWN_TOKEN" } }], + [403, { status: 403, body: { errcode: "M_FORBIDDEN" } }], + ]; + + describe.each(nonRetryableErrors)("Should not retry all sort of errors", (_, error) => { + test.each(tests)("for %ss", async (_, RequestClass, expectedMethod, expectedPath) => { + const testBody = '{ "foo": "bar" }'; + const outgoingRequest = new RequestClass("1234", testBody); + + // @ts-ignore to avoid having to do if else to switch the method (.put/.post) + fetchMock[expectedMethod.toLowerCase()](expectedPath, { + status: error.status, + body: error.body, + }); + + const requestPromise = processor.makeOutgoingRequest(outgoingRequest); + + // Run all timers and wait for the request promise to resolve/reject + await Promise.all([jest.runAllTimersAsync(), requestPromise.catch(() => {})]); + + await expect(requestPromise).rejects.toThrow(); + + // Should have only tried once + const calls = fetchMock.calls(expectedPath); + expect(calls).toHaveLength(1); + + await expect(requestPromise).rejects.toThrow(); + }); + }); + + describe("Should not retry client timeouts", () => { + test.each(tests)("for %ss", async (_, RequestClass, expectedMethod, expectedPath) => { + const testBody = '{ "foo": "bar" }'; + const outgoingRequest = new RequestClass("1234", testBody); + + // @ts-ignore to avoid having to do if else to switch the method (.put/.post) + fetchMock[expectedMethod.toLowerCase()](expectedPath, () => { + // This is what a client timeout error will throw + throw new DOMException("The user aborted a request.", "AbortError"); + }); + + const requestPromise = processor.makeOutgoingRequest(outgoingRequest); + + // Run all timers and wait for the request promise to resolve/reject + await Promise.all([jest.runAllTimersAsync(), requestPromise.catch(() => {})]); + + await expect(requestPromise).rejects.toThrow(); + + // Should have only tried once + const calls = fetchMock.calls(expectedPath); + expect(calls).toHaveLength(1); + await expect(requestPromise).rejects.toThrow(); + }); + }); + + describe("Should retry until it works", () => { + it.each([1, 2, 3, 4])("should succeed if the call number %s is ok", async (successfulCall) => { + let callCount = 0; + fetchMock.post("path:/_matrix/client/v3/keys/upload", (url, opts) => { + callCount++; + if (callCount == successfulCall) { + return { + status: 200, + body: "{}", + }; + } else { + return { + status: 500, + body: { error: "Internal server error" }, + }; + } + }); + + const outgoingRequest = new KeysUploadRequest("1234", "{}"); + + const requestPromise = processor.makeOutgoingRequest(outgoingRequest); + + await Promise.all([requestPromise, jest.runAllTimersAsync()]); + + const calls = fetchMock.calls("path:/_matrix/client/v3/keys/upload"); + expect(calls).toHaveLength(successfulCall); + expect(olmMachine.markRequestAsSent).toHaveBeenCalled(); + }); + }); + }); }); diff --git a/src/http-api/utils.ts b/src/http-api/utils.ts index c49be740ef6..0b3c3554ffa 100644 --- a/src/http-api/utils.ts +++ b/src/http-api/utils.ts @@ -151,3 +151,49 @@ export async function retryNetworkOperation(maxAttempts: number, callback: () } throw lastConnectionError; } + +/** + * Calculate the backoff time for a request retry attempt. + * This produces wait times of 2, 4, 8, and 16 seconds (30s total) after which we give up. If the + * failure was due to a rate limited request, the time specified in the error is returned. + * + * Returns -1 if the error is not retryable, or if we reach the maximum number of attempts. + * + * @param err - The error thrown by the http call + * @param attempts - The number of attempts made so far, including the one that just failed. + * @param retryConnectionError - Whether to retry on {@link ConnectionError} (CORS, connection is down, etc.) + */ +export function calculateRetryBackoff(err: any, attempts: number, retryConnectionError: boolean): number { + if (attempts > 4) { + return -1; // give up + } + + if (err instanceof ConnectionError && !retryConnectionError) { + return -1; + } + + if (err.httpStatus && (err.httpStatus === 400 || err.httpStatus === 403 || err.httpStatus === 401)) { + // client error; no amount of retrying will save you now. + return -1; + } + + if (err.name === "AbortError") { + // this is a client timeout, that is already very high 60s/80s + // we don't want to retry, as it could do it for very long + return -1; + } + + // If we are trying to send an event (or similar) that is too large in any way, then retrying won't help + if (err.name === "M_TOO_LARGE") { + return -1; + } + + if (err.name === "M_LIMIT_EXCEEDED") { + const waitTime = err.data.retry_after_ms; + if (waitTime > 0) { + return waitTime; + } + } + + return 1000 * Math.pow(2, attempts); +} diff --git a/src/rust-crypto/OutgoingRequestProcessor.ts b/src/rust-crypto/OutgoingRequestProcessor.ts index 18b9d6b03fa..8e7e15584d5 100644 --- a/src/rust-crypto/OutgoingRequestProcessor.ts +++ b/src/rust-crypto/OutgoingRequestProcessor.ts @@ -15,11 +15,11 @@ limitations under the License. */ import { - OlmMachine, KeysBackupRequest, KeysClaimRequest, KeysQueryRequest, KeysUploadRequest, + OlmMachine, RoomMessageRequest, SignatureUploadRequest, ToDeviceRequest, @@ -27,8 +27,8 @@ import { } from "@matrix-org/matrix-sdk-crypto-wasm"; import { logger } from "../logger"; -import { IHttpOpts, MatrixHttpApi, Method } from "../http-api"; -import { logDuration, QueryDict } from "../utils"; +import { calculateRetryBackoff, IHttpOpts, MatrixHttpApi, Method } from "../http-api"; +import { logDuration, QueryDict, sleep } from "../utils"; import { IAuthDict, UIAuthCallback } from "../interactive-auth"; import { UIAResponse } from "../@types/uia"; import { ToDeviceMessageId } from "../@types/event"; @@ -71,15 +71,15 @@ export class OutgoingRequestProcessor { * for the complete list of request types */ if (msg instanceof KeysUploadRequest) { - resp = await this.rawJsonRequest(Method.Post, "/_matrix/client/v3/keys/upload", {}, msg.body); + resp = await this.requestWithRetry(Method.Post, "/_matrix/client/v3/keys/upload", {}, msg.body); } else if (msg instanceof KeysQueryRequest) { - resp = await this.rawJsonRequest(Method.Post, "/_matrix/client/v3/keys/query", {}, msg.body); + resp = await this.requestWithRetry(Method.Post, "/_matrix/client/v3/keys/query", {}, msg.body); } else if (msg instanceof KeysClaimRequest) { - resp = await this.rawJsonRequest(Method.Post, "/_matrix/client/v3/keys/claim", {}, msg.body); + resp = await this.requestWithRetry(Method.Post, "/_matrix/client/v3/keys/claim", {}, msg.body); } else if (msg instanceof SignatureUploadRequest) { - resp = await this.rawJsonRequest(Method.Post, "/_matrix/client/v3/keys/signatures/upload", {}, msg.body); + resp = await this.requestWithRetry(Method.Post, "/_matrix/client/v3/keys/signatures/upload", {}, msg.body); } else if (msg instanceof KeysBackupRequest) { - resp = await this.rawJsonRequest( + resp = await this.requestWithRetry( Method.Put, "/_matrix/client/v3/room_keys/keys", { version: msg.version }, @@ -91,7 +91,7 @@ export class OutgoingRequestProcessor { const path = `/_matrix/client/v3/rooms/${encodeURIComponent(msg.room_id)}/send/` + `${encodeURIComponent(msg.event_type)}/${encodeURIComponent(msg.txn_id)}`; - resp = await this.rawJsonRequest(Method.Put, path, {}, msg.body); + resp = await this.requestWithRetry(Method.Put, path, {}, msg.body); } else if (msg instanceof UploadSigningKeysRequest) { await this.makeRequestWithUIA( Method.Post, @@ -154,7 +154,7 @@ export class OutgoingRequestProcessor { const path = `/_matrix/client/v3/sendToDevice/${encodeURIComponent(request.event_type)}/` + encodeURIComponent(request.txn_id); - return await this.rawJsonRequest(Method.Put, path, {}, request.body); + return await this.requestWithRetry(Method.Put, path, {}, request.body); } private async makeRequestWithUIA( @@ -165,7 +165,7 @@ export class OutgoingRequestProcessor { uiaCallback: UIAuthCallback | undefined, ): Promise { if (!uiaCallback) { - return await this.rawJsonRequest(method, path, queryParams, body); + return await this.requestWithRetry(method, path, queryParams, body); } const parsedBody = JSON.parse(body); @@ -176,7 +176,7 @@ export class OutgoingRequestProcessor { if (auth !== null) { newBody.auth = auth; } - const resp = await this.rawJsonRequest(method, path, queryParams, JSON.stringify(newBody)); + const resp = await this.requestWithRetry(method, path, queryParams, JSON.stringify(newBody)); return JSON.parse(resp) as T; }; @@ -184,6 +184,31 @@ export class OutgoingRequestProcessor { return JSON.stringify(resp); } + private async requestWithRetry( + method: Method, + path: string, + queryParams: QueryDict, + body: string, + ): Promise { + let currentRetryCount = 0; + + // eslint-disable-next-line no-constant-condition + while (true) { + try { + return await this.rawJsonRequest(method, path, queryParams, body); + } catch (e) { + currentRetryCount++; + const backoff = calculateRetryBackoff(e, currentRetryCount, true); + if (backoff < 0) { + // Max number of retries reached, or error is not retryable. rethrow the error + throw e; + } + // wait for the specified time and then retry the request + await sleep(backoff); + } + } + } + private async rawJsonRequest(method: Method, path: string, queryParams: QueryDict, body: string): Promise { const opts = { // inhibit the JSON stringification and parsing within HttpApi. diff --git a/src/scheduler.ts b/src/scheduler.ts index 41612f1c902..6dfd212c72c 100644 --- a/src/scheduler.ts +++ b/src/scheduler.ts @@ -22,7 +22,7 @@ import { logger } from "./logger"; import { MatrixEvent } from "./models/event"; import { EventType } from "./@types/event"; import { defer, IDeferred, removeElement } from "./utils"; -import { ConnectionError, MatrixError } from "./http-api"; +import { calculateRetryBackoff, MatrixError } from "./http-api"; import { ISendEventResponse } from "./@types/requests"; const DEBUG = false; // set true to enable console logging. @@ -43,38 +43,13 @@ type ProcessFunction = (event: MatrixEvent) => Promise; // eslint-disable-next-line camelcase export class MatrixScheduler { /** - * Retries events up to 4 times using exponential backoff. This produces wait - * times of 2, 4, 8, and 16 seconds (30s total) after which we give up. If the - * failure was due to a rate limited request, the time specified in the error is - * waited before being retried. + * Default retry algorithm for the matrix scheduler. Retries events up to 4 times with exponential backoff. * @param attempts - Number of attempts that have been made, including the one that just failed (ie. starting at 1) * @see retryAlgorithm */ // eslint-disable-next-line @typescript-eslint/naming-convention public static RETRY_BACKOFF_RATELIMIT(event: MatrixEvent | null, attempts: number, err: MatrixError): number { - if (err.httpStatus === 400 || err.httpStatus === 403 || err.httpStatus === 401) { - // client error; no amount of retrying with save you now. - return -1; - } - if (err instanceof ConnectionError) { - return -1; - } - - // if event that we are trying to send is too large in any way then retrying won't help - if (err.name === "M_TOO_LARGE") { - return -1; - } - - if (err.name === "M_LIMIT_EXCEEDED") { - const waitTime = err.data.retry_after_ms; - if (waitTime > 0) { - return waitTime; - } - } - if (attempts > 4) { - return -1; // give up - } - return 1000 * Math.pow(2, attempts); + return calculateRetryBackoff(err, attempts, false); } /** From 6529f02c28dfd9634bacb00b063a45035f0ef464 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 27 Feb 2024 12:50:27 +0000 Subject: [PATCH 095/595] v31.4.0 --- CHANGELOG.md | 19 +++++++++++++++++++ package.json | 2 +- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f8b10154b91..7fa65a2bba3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,22 @@ +Changes in [31.4.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.4.0) (2024-02-27) +================================================================================================== +## ✨ Features + +* Validate `account_management_uri` and `account_management_actions_supported` from OIDC Issuer well-known ([#4074](https://github.com/matrix-org/matrix-js-sdk/pull/4074)). Contributed by @t3chguy. +* Allow specifying OIDC url state parameter for passing data to callback ([#4068](https://github.com/matrix-org/matrix-js-sdk/pull/4068)). Contributed by @t3chguy. +* Add getAuthIssuer method for MSC2965 ([#4071](https://github.com/matrix-org/matrix-js-sdk/pull/4071)). Contributed by @t3chguy. +* Allow specifying more OIDC client metadata for dynamic registration ([#4070](https://github.com/matrix-org/matrix-js-sdk/pull/4070)). Contributed by @t3chguy. +* Add unread marker event type ([#4069](https://github.com/matrix-org/matrix-js-sdk/pull/4069)). Contributed by @dbkr. +* Add "AsJson" forms of the key import/export methods ([#4057](https://github.com/matrix-org/matrix-js-sdk/pull/4057)). Contributed by @andybalaam. + +## 🐛 Bug Fixes + +* Ignore memberships of users that are not in the call ([#4065](https://github.com/matrix-org/matrix-js-sdk/pull/4065)). Contributed by @toger5. +* Await encrypted messages ([#4063](https://github.com/matrix-org/matrix-js-sdk/pull/4063)). Contributed by @toger5. +* ElementR | Ensure own user and device trust are updated after migration before giving back control to the app. ([#4059](https://github.com/matrix-org/matrix-js-sdk/pull/4059)). Contributed by @BillCarsonFr. +* Bump matrix-sdk-crypto-wasm to 4.5.0 ([#4060](https://github.com/matrix-org/matrix-js-sdk/pull/4060)). Contributed by @andybalaam. + + Changes in [31.3.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.3.0) (2024-02-13) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index 48752f7be90..4cd5fcb07c5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.4.0-rc.0", + "version": "31.4.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 6176faef48e5f952a8be82354874fd87358e97a7 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 27 Feb 2024 12:51:20 +0000 Subject: [PATCH 096/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index c699dcc517b..1d560ce239b 100644 --- a/package.json +++ b/package.json @@ -30,8 +30,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -133,6 +133,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From b2e09250d9e62e05b4f1203c2a738d8b157a678a Mon Sep 17 00:00:00 2001 From: David Langley Date: Thu, 29 Feb 2024 12:20:53 +0000 Subject: [PATCH 097/595] Add job to automate adding new issues to the new project (#4087) * add job to automate adding new issues to the new project * missing jobs: --- .github/workflows/triage-incoming.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 .github/workflows/triage-incoming.yml diff --git a/.github/workflows/triage-incoming.yml b/.github/workflows/triage-incoming.yml new file mode 100644 index 00000000000..2535fbfcb90 --- /dev/null +++ b/.github/workflows/triage-incoming.yml @@ -0,0 +1,14 @@ +name: Move new issues into Issue triage board + +on: + issues: + types: [opened] + +jobs: + automate-project-columns-next: + runs-on: ubuntu-latest + steps: + - uses: actions/add-to-project@main + with: + project-url: https://github.com/orgs/element-hq/projects/120 + github-token: ${{ secrets.ELEMENT_BOT_TOKEN }} From e4d4628cc88bee1ffa8c946da1ff26189e15a449 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 5 Mar 2024 09:34:09 +0000 Subject: [PATCH 098/595] When merging release notes, allow considering later versions in the same release cycle (#4085) * When merging release notes, allow considering later versions in the same major.minor.patch set Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Tweak comments Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- scripts/release/merge-release-notes.js | 56 +++++++++++++++++++------- 1 file changed, 41 insertions(+), 15 deletions(-) diff --git a/scripts/release/merge-release-notes.js b/scripts/release/merge-release-notes.js index 0ce98c630b4..5308cec6be9 100755 --- a/scripts/release/merge-release-notes.js +++ b/scripts/release/merge-release-notes.js @@ -2,23 +2,28 @@ const fs = require("fs"); -// Dependency can be the name of an entry in package.json, in which case the owner, repo & version will be looked up in its own package.json -// Or it can be a string in the form owner/repo@tag -// Or it can be a tuple of dependency, from version, to version, in which case a list of releases in that range (to inclusive) will be returned +async function listReleases(github, owner, repo) { + const response = await github.rest.repos.listReleases({ + owner, + repo, + per_page: 100, + }); + // Filters out draft releases + return response.data.filter((release) => !release.draft); +} + +// Dependency can be a tuple of dependency, from version, to version, in which case a list of releases in that range (to inclusive) will be returned +// Or it can be a string in the form accepted by `getRelease` async function getReleases(github, dependency) { if (Array.isArray(dependency)) { const [dep, fromVersion, toVersion] = dependency; const upstreamPackageJson = getDependencyPackageJson(dep); const [owner, repo] = upstreamPackageJson.repository.url.split("/").slice(-2); - const response = await github.rest.repos.listReleases({ - owner, - repo, - per_page: 100, - }); + const unfilteredReleases = await listReleases(github, owner, repo); // Only include non-draft & non-prerelease releases, unless the to-release is a pre-release, include that one - const releases = response.data.filter( - (release) => !release.draft && (!release.prerelease || release.tag_name === `v${toVersion}`), + const releases = unfilteredReleases.filter( + (release) => !release.prerelease || release.tag_name === `v${toVersion}`, ); const fromVersionIndex = releases.findIndex((release) => release.tag_name === `v${fromVersion}`); @@ -30,14 +35,35 @@ async function getReleases(github, dependency) { return [await getRelease(github, dependency)]; } +// Dependency can be the name of an entry in package.json, in which case the owner, repo & version will be looked up in its own package.json +// Or it can be a string in the form owner/repo@tag - in this case the tag is used exactly to find the release +// Or it can be a string in the form owner/repo~tag - in this case the latest tag in the same major.minor.patch set is used to find the release async function getRelease(github, dependency) { let owner; let repo; let tag; - if (dependency.includes("/") && dependency.includes("@")) { - owner = dependency.split("/")[0]; - repo = dependency.split("/")[1].split("@")[0]; - tag = dependency.split("@")[1]; + + if (dependency.includes("/")) { + let rest; + [owner, rest] = dependency.split("/")[0]; + + if (dependency.includes("@")) { + [repo, tag] = rest.split("@"); + } else if (dependency.includes("~")) { + [repo, tag] = rest.split("~"); + + if (tag.includes("-rc.")) { + // If the tag is an RC, find the latest matching RC in the set + try { + const releases = await listReleases(github, owner, repo); + const baseVersion = tag.split("-rc.")[0]; + const release = releases.find((release) => release.tag_name.startsWith(baseVersion)); + if (release) return release; + } catch (e) { + // Fall back to getReleaseByTag + } + } + } } else { const upstreamPackageJson = getDependencyPackageJson(dependency); [owner, repo] = upstreamPackageJson.repository.url.split("/").slice(-2); @@ -129,7 +155,7 @@ if (require.main === module) { process.exit(1); } const [releaseId, ...dependencies] = process.argv.slice(2); - main({ github, releaseId, dependencies: ["matrix-react-sdk"] }).then((output) => { + main({ github, releaseId, dependencies }).then((output) => { // eslint-disable-next-line no-console console.log(output); }); From ee8413beff1fc14cc6cc62884f83bcec6ab6967c Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 5 Mar 2024 14:03:49 +0000 Subject: [PATCH 099/595] v31.5.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 1d560ce239b..c2c160d8784 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.4.0", + "version": "31.5.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -30,8 +30,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -133,5 +133,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From a1f4b07b7d1915bd41d972dc98d7a244255c4462 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 5 Mar 2024 14:31:57 +0000 Subject: [PATCH 100/595] Fix bad string split destructuring Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- scripts/release/merge-release-notes.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/release/merge-release-notes.js b/scripts/release/merge-release-notes.js index 5308cec6be9..06228492392 100755 --- a/scripts/release/merge-release-notes.js +++ b/scripts/release/merge-release-notes.js @@ -45,7 +45,7 @@ async function getRelease(github, dependency) { if (dependency.includes("/")) { let rest; - [owner, rest] = dependency.split("/")[0]; + [owner, rest] = dependency.split("/"); if (dependency.includes("@")) { [repo, tag] = rest.split("@"); From 84498bf77dd9bd1a4542b42baf1c500d5f7880e4 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Mar 2024 14:50:28 +0000 Subject: [PATCH 101/595] Update babel monorepo to v7.24.0 (#4097) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 213 ++++++++++++++++++++++++++++++------------------------ 1 file changed, 119 insertions(+), 94 deletions(-) diff --git a/yarn.lock b/yarn.lock index 0b23d065923..98cacecb74c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -20,12 +20,12 @@ integrity sha512-uODXaU5sJw9CilmjVG9IUpc1ENivixQI7+DtebWgG80PMQBfZ/4b5PKXJ5ESJVlvafrHcuIjN0qou99zN2bDtw== "@ampproject/remapping@^2.2.0": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" - integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== + version "2.3.0" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" + integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== dependencies: - "@jridgewell/gen-mapping" "^0.3.0" - "@jridgewell/trace-mapping" "^0.3.9" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.24" "@babel/cli@^7.12.10": version "7.23.9" @@ -64,26 +64,26 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730" integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9", "@babel/compat-data@^7.23.3", "@babel/compat-data@^7.23.5": +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9", "@babel/compat-data@^7.23.5": version "7.23.5" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== "@babel/core@^7.0.0", "@babel/core@^7.12.10": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.9.tgz#b028820718000f267870822fec434820e9b1e4d1" - integrity sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw== + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.0.tgz#56cbda6b185ae9d9bed369816a8f4423c5f2ff1b" + integrity sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw== dependencies: "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.23.5" "@babel/generator" "^7.23.6" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.23.9" - "@babel/parser" "^7.23.9" - "@babel/template" "^7.23.9" - "@babel/traverse" "^7.23.9" - "@babel/types" "^7.23.9" + "@babel/helpers" "^7.24.0" + "@babel/parser" "^7.24.0" + "@babel/template" "^7.24.0" + "@babel/traverse" "^7.24.0" + "@babel/types" "^7.24.0" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -209,9 +209,9 @@ semver "^6.3.1" "@babel/helper-create-class-features-plugin@^7.22.15": - version "7.23.10" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.23.10.tgz#25d55fafbaea31fd0e723820bb6cc3df72edf7ea" - integrity sha512-2XpP2XhkXzgxecPNEEK8Vz8Asj9aRxt08oKOqtiZoqV2UGZ5T+EkyP9sXQ9nwMxBIG34a7jmasVqoMop7VdPUw== + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.0.tgz#fc7554141bdbfa2d17f7b4b80153b9b090e5d158" + integrity sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" "@babel/helper-environment-visitor" "^7.22.20" @@ -313,7 +313,12 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.0", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz#945681931a52f15ce879fd5b86ce2dae6d3d7f2a" + integrity sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w== + +"@babel/helper-plugin-utils@^7.20.2": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== @@ -395,14 +400,14 @@ "@babel/traverse" "^7.22.15" "@babel/types" "^7.22.15" -"@babel/helpers@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.9.tgz#c3e20bbe7f7a7e10cb9b178384b4affdf5995c7d" - integrity sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ== +"@babel/helpers@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.0.tgz#a3dd462b41769c95db8091e49cfe019389a9409b" + integrity sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA== dependencies: - "@babel/template" "^7.23.9" - "@babel/traverse" "^7.23.9" - "@babel/types" "^7.23.9" + "@babel/template" "^7.24.0" + "@babel/traverse" "^7.24.0" + "@babel/types" "^7.24.0" "@babel/highlight@^7.22.13", "@babel/highlight@^7.23.4": version "7.23.4" @@ -418,7 +423,7 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.16.tgz#180aead7f247305cce6551bea2720934e2fa2c95" integrity sha512-+gPfKv8UWeKKeJTUxe59+OobVcrYHETCsORl61EmSkmgymguYk/X5bp7GuUIXaFsc6y++v8ZxPsLSSuujqDphA== -"@babel/parser@^7.22.15", "@babel/parser@^7.23.9": +"@babel/parser@^7.22.15": version "7.23.9" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.9.tgz#7b903b6149b0f8fa7ad564af646c4c38a77fc44b" integrity sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA== @@ -428,6 +433,11 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.3.tgz#0ce0be31a4ca4f1884b5786057cadcb6c3be58f9" integrity sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw== +"@babel/parser@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.0.tgz#26a3d1ff49031c53a97d03b604375f028746a9ac" + integrity sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg== + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.23.3": version "7.23.3" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.23.3.tgz#5cd1c87ba9380d0afb78469292c954fee5d2411a" @@ -884,14 +894,14 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-transform-object-rest-spread@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.23.4.tgz#2b9c2d26bf62710460bdc0d1730d4f1048361b83" - integrity sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g== +"@babel/plugin-transform-object-rest-spread@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.0.tgz#7b836ad0088fdded2420ce96d4e1d3ed78b71df1" + integrity sha512-y/yKMm7buHpFFXfxVFS4Vk1ToRJDilIa6fKRioB9Vjichv58TDGXTvqV0dN7plobAmTW5eSEGXDngE+Mm+uO+w== dependencies: - "@babel/compat-data" "^7.23.3" - "@babel/helper-compilation-targets" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/compat-data" "^7.23.5" + "@babel/helper-compilation-targets" "^7.23.6" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" "@babel/plugin-transform-parameters" "^7.23.3" @@ -975,12 +985,12 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-runtime@^7.12.10": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.23.9.tgz#2c64d0680fc8e09e1dfe8fd5c646fe72abd82004" - integrity sha512-A7clW3a0aSjm3ONU9o2HAILSegJCYlEZmOhmBRReVtIpY/Z/p7yIZ+wR41Z+UipwdGuqwtID/V/dOdZXjwi9gQ== + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.0.tgz#e308fe27d08b74027d42547081eefaf4f2ffbcc9" + integrity sha512-zc0GA5IitLKJrSfXlXmp8KDqLrnGECK7YRfQBmEKg1NmBOQ7e+KuclBEKJgzifQeUYLdNiAw4B4bjyvzWVLiSA== dependencies: "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" babel-plugin-polyfill-corejs2 "^0.4.8" babel-plugin-polyfill-corejs3 "^0.9.0" babel-plugin-polyfill-regenerator "^0.5.5" @@ -1064,13 +1074,13 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/preset-env@^7.12.11": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.23.9.tgz#beace3b7994560ed6bf78e4ae2073dff45387669" - integrity sha512-3kBGTNBBk9DQiPoXYS0g0BYlwTQYUTifqgKTjxUwEUkduRT2QOa0FPGBJ+NROQhGyYO5BuTJwGvBnqKDykac6A== + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.0.tgz#11536a7f4b977294f0bdfad780f01a8ac8e183fc" + integrity sha512-ZxPEzV9IgvGn73iK0E6VB9/95Nd7aMFpbE0l8KQFDG70cOV9IxRP7Y2FUPmlK0v6ImlLqYX50iuZ3ZTVhOF2lA== dependencies: "@babel/compat-data" "^7.23.5" "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/helper-validator-option" "^7.23.5" "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.23.3" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.23.3" @@ -1123,7 +1133,7 @@ "@babel/plugin-transform-new-target" "^7.23.3" "@babel/plugin-transform-nullish-coalescing-operator" "^7.23.4" "@babel/plugin-transform-numeric-separator" "^7.23.4" - "@babel/plugin-transform-object-rest-spread" "^7.23.4" + "@babel/plugin-transform-object-rest-spread" "^7.24.0" "@babel/plugin-transform-object-super" "^7.23.3" "@babel/plugin-transform-optional-catch-binding" "^7.23.4" "@babel/plugin-transform-optional-chaining" "^7.23.4" @@ -1186,20 +1196,20 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.9.tgz#47791a15e4603bb5f905bc0753801cf21d6345f7" - integrity sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw== + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.0.tgz#584c450063ffda59697021430cb47101b085951e" + integrity sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw== dependencies: regenerator-runtime "^0.14.0" -"@babel/template@^7.22.15", "@babel/template@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.23.9.tgz#f881d0487cba2828d3259dcb9ef5005a9731011a" - integrity sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA== +"@babel/template@^7.22.15", "@babel/template@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.0.tgz#c6a524aa93a4a05d66aaf31654258fae69d87d50" + integrity sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA== dependencies: "@babel/code-frame" "^7.23.5" - "@babel/parser" "^7.23.9" - "@babel/types" "^7.23.9" + "@babel/parser" "^7.24.0" + "@babel/types" "^7.24.0" "@babel/template@^7.3.3": version "7.22.15" @@ -1226,10 +1236,10 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/traverse@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.9.tgz#2f9d6aead6b564669394c5ce0f9302bb65b9d950" - integrity sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg== +"@babel/traverse@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.0.tgz#4a408fbf364ff73135c714a2ab46a5eab2831b1e" + integrity sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw== dependencies: "@babel/code-frame" "^7.23.5" "@babel/generator" "^7.23.6" @@ -1237,8 +1247,8 @@ "@babel/helper-function-name" "^7.23.0" "@babel/helper-hoist-variables" "^7.22.5" "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.23.9" - "@babel/types" "^7.23.9" + "@babel/parser" "^7.24.0" + "@babel/types" "^7.24.0" debug "^4.3.1" globals "^11.1.0" @@ -1251,10 +1261,10 @@ "@babel/helper-validator-identifier" "^7.22.15" to-fast-properties "^2.0.0" -"@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.23.9", "@babel/types@^7.4.4": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.9.tgz#1dd7b59a9a2b5c87f8b41e52770b5ecbf492e002" - integrity sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q== +"@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.24.0", "@babel/types@^7.4.4": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf" + integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w== dependencies: "@babel/helper-string-parser" "^7.23.4" "@babel/helper-validator-identifier" "^7.22.20" @@ -1610,24 +1620,29 @@ "@types/yargs" "^17.0.8" chalk "^4.0.0" -"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": - version "0.3.3" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" - integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== +"@jridgewell/gen-mapping@^0.3.2", "@jridgewell/gen-mapping@^0.3.5": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" + integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== dependencies: - "@jridgewell/set-array" "^1.0.1" + "@jridgewell/set-array" "^1.2.1" "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.9" + "@jridgewell/trace-mapping" "^0.3.24" -"@jridgewell/resolve-uri@^3.0.3", "@jridgewell/resolve-uri@^3.1.0": +"@jridgewell/resolve-uri@^3.0.3": version "3.1.1" resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== -"@jridgewell/set-array@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" - integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + +"@jridgewell/set-array@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" + integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== "@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": version "1.4.15" @@ -1650,10 +1665,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.22" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz#72a621e5de59f5f1ef792d0793a82ee20f645e4c" - integrity sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw== +"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.24": + version "0.3.25" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" + integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== dependencies: "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" @@ -2508,13 +2523,13 @@ browserslist@^4.21.9: node-releases "^2.0.14" update-browserslist-db "^1.0.13" -browserslist@^4.22.2: - version "4.22.3" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.3.tgz#299d11b7e947a6b843981392721169e27d60c5a6" - integrity sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A== +browserslist@^4.22.2, browserslist@^4.22.3: + version "4.23.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" + integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== dependencies: - caniuse-lite "^1.0.30001580" - electron-to-chromium "^1.4.648" + caniuse-lite "^1.0.30001587" + electron-to-chromium "^1.4.668" node-releases "^2.0.14" update-browserslist-db "^1.0.13" @@ -2566,11 +2581,16 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001565, caniuse-lite@^1.0.30001580: +caniuse-lite@^1.0.30001565: version "1.0.30001583" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001583.tgz#abb2970cc370801dc7e27bf290509dc132cfa390" integrity sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q== +caniuse-lite@^1.0.30001587: + version "1.0.30001594" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001594.tgz#bea552414cd52c2d0c985ed9206314a696e685f5" + integrity sha512-VblSX6nYqyJVs8DKFMldE2IVCJjZ225LW00ydtUWwh5hk9IfkTOffO6r8gJNsH0qqqeAF8KrbMYA2VEwTlGW5g== + chalk@5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.2.0.tgz#249623b7d66869c673699fb66d65723e54dfcfb3" @@ -2768,11 +2788,11 @@ convert-source-map@^2.0.0: integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== core-js-compat@^3.31.0, core-js-compat@^3.34.0: - version "3.35.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.35.1.tgz#215247d7edb9e830efa4218ff719beb2803555e2" - integrity sha512-sftHa5qUJY3rs9Zht1WEnmkvXputCyDBczPnr7QDgL8n3qrF3CMXY4VPSYtOLLiOUJcah2WNXREd48iOl6mQIw== + version "3.36.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.36.0.tgz#087679119bc2fdbdefad0d45d8e5d307d45ba190" + integrity sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw== dependencies: - browserslist "^4.22.2" + browserslist "^4.22.3" core-js@^3.0.0: version "3.32.0" @@ -2947,11 +2967,16 @@ eastasianwidth@^0.2.0: resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== -electron-to-chromium@^1.4.601, electron-to-chromium@^1.4.648: +electron-to-chromium@^1.4.601: version "1.4.655" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.655.tgz#112410db0d7f9c2b4ed8baa3b1b548522a6f89d4" integrity sha512-2yszojF7vIZ68adIOvzV4bku8OZad9w5H9xF3ZAMZjPuOjBarlflUkjN6DggdV+L71WZuKUfKUhov/34+G5QHg== +electron-to-chromium@^1.4.668: + version "1.4.692" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.692.tgz#82139d20585a4b2318a02066af7593a3e6bec993" + integrity sha512-d5rZRka9n2Y3MkWRN74IoAsxR0HK3yaAt7T50e3iT9VZmCCQDT3geXUO5ZRMhDToa1pkCeQXuNo+0g+NfDOVPA== + emittery@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" @@ -3063,9 +3088,9 @@ es-to-primitive@^1.2.1: is-symbol "^1.0.2" escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== escape-string-regexp@^1.0.5: version "1.0.5" @@ -3793,9 +3818,9 @@ has@^1.0.3: integrity sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ== hasown@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.0.tgz#f4c513d454a57b7c7e1650778de226b11700546c" - integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA== + version "2.0.1" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.1.tgz#26f48f039de2c0f8d3356c223fb8d50253519faa" + integrity sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA== dependencies: function-bind "^1.1.2" From 8be286308c8034332e90f9c78859981f100417bb Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Mar 2024 15:16:30 +0000 Subject: [PATCH 102/595] Update dependency @types/node to v18.19.21 (#4095) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 98cacecb74c..eefc048e495 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1948,9 +1948,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.17" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.17.tgz#a581a9fb4b2cfdbc61f008804f4436b2d5c40354" - integrity sha512-SzyGKgwPzuWp2SHhlpXKzCX0pIOfcI4V2eF37nNBJOhwlegQ83omtVQ1XxZpDE06V/d6AQvfQdPfnw0tRC//Ng== + version "18.19.21" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.21.tgz#f4ca1ac8ffb05ee4b89163c2d6fac9a1a59ee149" + integrity sha512-2Q2NeB6BmiTFQi4DHBzncSoq/cJMLDdhPaAoJFnFCyD9a8VPZRf7a1GAwp1Edb7ROaZc5Jz/tnZyL6EsWMRaqw== dependencies: undici-types "~5.26.4" From d8dae65a4deb0ee4d8842a8c9af88cc5762cd9f0 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Mar 2024 15:43:37 +0000 Subject: [PATCH 103/595] Update typescript-eslint monorepo to v7.1.0 (#4099) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 114 +++++++++++++++++++++++++++--------------------------- 1 file changed, 57 insertions(+), 57 deletions(-) diff --git a/yarn.lock b/yarn.lock index eefc048e495..ffa5c431892 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1975,9 +1975,9 @@ integrity sha512-/wdoPq1QqkSj9/QOeKkFquEuPzQbHTWAMPH/PaUMB+JuR31lXhlWXRZ52IpfDYVlDOUBvX09uBrPwxGT1hjNBg== "@types/semver@^7.5.0": - version "7.5.6" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.6.tgz#c65b2bfce1bec346582c07724e3f8c1017a20339" - integrity sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A== + version "7.5.8" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e" + integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ== "@types/stack-utils@^2.0.0": version "2.0.3" @@ -2012,15 +2012,15 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.0.2.tgz#c13a34057be425167cc4a765158c46fdf2fd981d" - integrity sha512-/XtVZJtbaphtdrWjr+CJclaCVGPtOdBpFEnvtNf/jRV0IiEemRrL0qABex/nEt8isYcnFacm3nPHYQwL+Wb7qg== + version "7.1.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.1.1.tgz#dd71fc5c7ecec745ca26ece506d84d203a205c0e" + integrity sha512-zioDz623d0RHNhvx0eesUmGfIjzrk18nSBC8xewepKXbBvN/7c1qImV7Hg8TI1URTxKax7/zxfxj3Uph8Chcuw== dependencies: "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "7.0.2" - "@typescript-eslint/type-utils" "7.0.2" - "@typescript-eslint/utils" "7.0.2" - "@typescript-eslint/visitor-keys" "7.0.2" + "@typescript-eslint/scope-manager" "7.1.1" + "@typescript-eslint/type-utils" "7.1.1" + "@typescript-eslint/utils" "7.1.1" + "@typescript-eslint/visitor-keys" "7.1.1" debug "^4.3.4" graphemer "^1.4.0" ignore "^5.2.4" @@ -2029,14 +2029,14 @@ ts-api-utils "^1.0.1" "@typescript-eslint/parser@^7.0.0": - version "7.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.0.2.tgz#95c31233d343db1ca1df8df7811b5b87ca7b1a68" - integrity sha512-GdwfDglCxSmU+QTS9vhz2Sop46ebNCXpPPvsByK7hu0rFGRHL+AusKQJ7SoN+LbLh6APFpQwHKmDSwN35Z700Q== - dependencies: - "@typescript-eslint/scope-manager" "7.0.2" - "@typescript-eslint/types" "7.0.2" - "@typescript-eslint/typescript-estree" "7.0.2" - "@typescript-eslint/visitor-keys" "7.0.2" + version "7.1.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.1.1.tgz#6a9d0a5c9ccdf5dbd3cb8c949728c64e24e07d1f" + integrity sha512-ZWUFyL0z04R1nAEgr9e79YtV5LbafdOtN7yapNbn1ansMyaegl2D4bL7vHoJ4HPSc4CaLwuCVas8CVuneKzplQ== + dependencies: + "@typescript-eslint/scope-manager" "7.1.1" + "@typescript-eslint/types" "7.1.1" + "@typescript-eslint/typescript-estree" "7.1.1" + "@typescript-eslint/visitor-keys" "7.1.1" debug "^4.3.4" "@typescript-eslint/scope-manager@5.62.0": @@ -2047,21 +2047,21 @@ "@typescript-eslint/types" "5.62.0" "@typescript-eslint/visitor-keys" "5.62.0" -"@typescript-eslint/scope-manager@7.0.2": - version "7.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.0.2.tgz#6ec4cc03752758ddd1fdaae6fbd0ed9a2ca4fe63" - integrity sha512-l6sa2jF3h+qgN2qUMjVR3uCNGjWw4ahGfzIYsCtFrQJCjhbrDPdiihYT8FnnqFwsWX+20hK592yX9I2rxKTP4g== +"@typescript-eslint/scope-manager@7.1.1": + version "7.1.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.1.1.tgz#9e301803ff8e21a74f50c6f89a4baccad9a48f93" + integrity sha512-cirZpA8bJMRb4WZ+rO6+mnOJrGFDd38WoXCEI57+CYBqta8Yc8aJym2i7vyqLL1vVYljgw0X27axkUXz32T8TA== dependencies: - "@typescript-eslint/types" "7.0.2" - "@typescript-eslint/visitor-keys" "7.0.2" + "@typescript-eslint/types" "7.1.1" + "@typescript-eslint/visitor-keys" "7.1.1" -"@typescript-eslint/type-utils@7.0.2": - version "7.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.0.2.tgz#a7fc0adff0c202562721357e7478207d380a757b" - integrity sha512-IKKDcFsKAYlk8Rs4wiFfEwJTQlHcdn8CLwLaxwd6zb8HNiMcQIFX9sWax2k4Cjj7l7mGS5N1zl7RCHOVwHq2VQ== +"@typescript-eslint/type-utils@7.1.1": + version "7.1.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.1.1.tgz#aee820d5bedd39b83c18585a526cc520ddb7a226" + integrity sha512-5r4RKze6XHEEhlZnJtR3GYeCh1IueUHdbrukV2KSlLXaTjuSfeVF8mZUVPLovidCuZfbVjfhi4c0DNSa/Rdg5g== dependencies: - "@typescript-eslint/typescript-estree" "7.0.2" - "@typescript-eslint/utils" "7.0.2" + "@typescript-eslint/typescript-estree" "7.1.1" + "@typescript-eslint/utils" "7.1.1" debug "^4.3.4" ts-api-utils "^1.0.1" @@ -2070,10 +2070,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== -"@typescript-eslint/types@7.0.2": - version "7.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.0.2.tgz#b6edd108648028194eb213887d8d43ab5750351c" - integrity sha512-ZzcCQHj4JaXFjdOql6adYV4B/oFOFjPOC9XYwCaZFRvqN8Llfvv4gSxrkQkd2u4Ci62i2c6W6gkDwQJDaRc4nA== +"@typescript-eslint/types@7.1.1": + version "7.1.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.1.1.tgz#ca33ba7cf58224fb46a84fea62593c2c53cd795f" + integrity sha512-KhewzrlRMrgeKm1U9bh2z5aoL4s7K3tK5DwHDn8MHv0yQfWFz/0ZR6trrIHHa5CsF83j/GgHqzdbzCXJ3crx0Q== "@typescript-eslint/typescript-estree@5.62.0": version "5.62.0" @@ -2088,13 +2088,13 @@ semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@7.0.2": - version "7.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.0.2.tgz#3c6dc8a3b9799f4ef7eca0d224ded01974e4cb39" - integrity sha512-3AMc8khTcELFWcKcPc0xiLviEvvfzATpdPj/DXuOGIdQIIFybf4DMT1vKRbuAEOFMwhWt7NFLXRkbjsvKZQyvw== +"@typescript-eslint/typescript-estree@7.1.1": + version "7.1.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.1.tgz#09c54af0151a1b05d0875c0fc7fe2ec7a2476ece" + integrity sha512-9ZOncVSfr+sMXVxxca2OJOPagRwT0u/UHikM2Rd6L/aB+kL/QAuTnsv6MeXtjzCJYb8PzrXarypSGIPx3Jemxw== dependencies: - "@typescript-eslint/types" "7.0.2" - "@typescript-eslint/visitor-keys" "7.0.2" + "@typescript-eslint/types" "7.1.1" + "@typescript-eslint/visitor-keys" "7.1.1" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2102,17 +2102,17 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/utils@7.0.2": - version "7.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.0.2.tgz#8756123054cd934c8ba7db6a6cffbc654b10b5c4" - integrity sha512-PZPIONBIB/X684bhT1XlrkjNZJIEevwkKDsdwfiu1WeqBxYEEdIgVDgm8/bbKHVu+6YOpeRqcfImTdImx/4Bsw== +"@typescript-eslint/utils@7.1.1": + version "7.1.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.1.1.tgz#bdeeb789eee4af5d3fb5400a69566d4dbf97ff3b" + integrity sha512-thOXM89xA03xAE0lW7alstvnyoBUbBX38YtY+zAUcpRPcq9EIhXPuJ0YTv948MbzmKh6e1AUszn5cBFK49Umqg== dependencies: "@eslint-community/eslint-utils" "^4.4.0" "@types/json-schema" "^7.0.12" "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "7.0.2" - "@typescript-eslint/types" "7.0.2" - "@typescript-eslint/typescript-estree" "7.0.2" + "@typescript-eslint/scope-manager" "7.1.1" + "@typescript-eslint/types" "7.1.1" + "@typescript-eslint/typescript-estree" "7.1.1" semver "^7.5.4" "@typescript-eslint/utils@^5.10.0": @@ -2137,12 +2137,12 @@ "@typescript-eslint/types" "5.62.0" eslint-visitor-keys "^3.3.0" -"@typescript-eslint/visitor-keys@7.0.2": - version "7.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.0.2.tgz#2899b716053ad7094962beb895d11396fc12afc7" - integrity sha512-8Y+YiBmqPighbm5xA2k4wKTxRzx9EkBu7Rlw+WHqMvRJ3RPz/BMBO9b2ru0LUNmXg120PHUXD5+SWFy2R8DqlQ== +"@typescript-eslint/visitor-keys@7.1.1": + version "7.1.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.1.tgz#e6538a58c9b157f03bcbb29e3b6a92fe39a6ab0d" + integrity sha512-yTdHDQxY7cSoCcAtiBzVzxleJhkGB9NncSIyMYe2+OGON1ZsP9zOPws/Pqgopa65jvknOjlk/w7ulPlZ78PiLQ== dependencies: - "@typescript-eslint/types" "7.0.2" + "@typescript-eslint/types" "7.1.1" eslint-visitor-keys "^3.4.1" "@ungap/structured-clone@^1.2.0": @@ -5676,14 +5676,14 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.7, semver@^7.6.0: +semver@^7.3.7, semver@^7.5.4, semver@^7.6.0: version "7.6.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== dependencies: lru-cache "^6.0.0" -semver@^7.5.3, semver@^7.5.4: +semver@^7.5.3: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== @@ -6065,9 +6065,9 @@ tr46@~0.0.3: integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== ts-api-utils@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.0.3.tgz#f12c1c781d04427313dbac808f453f050e54a331" - integrity sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg== + version "1.2.1" + resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.2.1.tgz#f716c7e027494629485b21c0df6180f4d08f5e8b" + integrity sha512-RIYA36cJn2WiH9Hy77hdF9r7oEwxAtB/TS9/S4Qd90Ap4z5FSiin5zEiTL44OII1Y3IIlEvxwxFUVgrHSZ/UpA== ts-node@^10.9.1: version "10.9.2" From a818dc1e9d6c052ff4a0231810eff824ef16bc95 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Mar 2024 15:56:46 +0000 Subject: [PATCH 104/595] Update shogo82148/actions-upload-release-asset digest to 5bd52f0 (#4093) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/actions/sign-release-tarball/action.yml | 2 +- .github/actions/upload-release-assets/action.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/sign-release-tarball/action.yml b/.github/actions/sign-release-tarball/action.yml index cd663cd873c..179ce203ffb 100644 --- a/.github/actions/sign-release-tarball/action.yml +++ b/.github/actions/sign-release-tarball/action.yml @@ -22,7 +22,7 @@ runs: - name: Upload tarball signature if: ${{ inputs.upload-url }} - uses: shogo82148/actions-upload-release-asset@dccd6d23e64fd6a746dce6814c0bde0a04886085 # v1 + uses: shogo82148/actions-upload-release-asset@5bd52f05dd8076794da5975d4c0a4f3bce7dd8f5 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ env.VERSION }}.tar.gz.asc diff --git a/.github/actions/upload-release-assets/action.yml b/.github/actions/upload-release-assets/action.yml index 25eb7f03940..28f3b6d1b32 100644 --- a/.github/actions/upload-release-assets/action.yml +++ b/.github/actions/upload-release-assets/action.yml @@ -29,13 +29,13 @@ runs: - name: Upload asset signatures if: inputs.gpg-fingerprint - uses: shogo82148/actions-upload-release-asset@dccd6d23e64fd6a746dce6814c0bde0a04886085 # v1 + uses: shogo82148/actions-upload-release-asset@5bd52f05dd8076794da5975d4c0a4f3bce7dd8f5 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ inputs.asset-path }}.asc - name: Upload assets - uses: shogo82148/actions-upload-release-asset@dccd6d23e64fd6a746dce6814c0bde0a04886085 # v1 + uses: shogo82148/actions-upload-release-asset@5bd52f05dd8076794da5975d4c0a4f3bce7dd8f5 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ inputs.asset-path }} From 50b042d1ff04dcdd3d7cb7e255d17b23c1ecf04a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Mar 2024 16:14:15 +0000 Subject: [PATCH 105/595] Update tspascoal/get-user-teams-membership digest to 57e9f42 (#4094) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/pull_request.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yaml b/.github/workflows/pull_request.yaml index edc0b7b25b4..0711326c902 100644 --- a/.github/workflows/pull_request.yaml +++ b/.github/workflows/pull_request.yaml @@ -47,7 +47,7 @@ jobs: steps: - name: Check membership if: github.event.pull_request.user.login != 'renovate[bot]' - uses: tspascoal/get-user-teams-membership@ba78054988f58bea69b7c6136d563236f8ed2fc0 # v3 + uses: tspascoal/get-user-teams-membership@57e9f42acd78f4d0f496b3be4368fc5f62696662 # v3 id: teams with: username: ${{ github.event.pull_request.user.login }} From 8c0736a719676446080aa52eb330e0cec39a5865 Mon Sep 17 00:00:00 2001 From: Timo <16718859+toger5@users.noreply.github.com> Date: Tue, 5 Mar 2024 17:59:07 +0100 Subject: [PATCH 106/595] Make sending ContentLoaded optional for a widgetClient (#4086) * add sendContentLoaded option to widgetClient Signed-off-by: Timo K * review Signed-off-by: Timo K * add tests Signed-off-by: Timo K * another try to get the coverage up Signed-off-by: Timo K * self review Signed-off-by: Timo K --------- Signed-off-by: Timo K --- spec/unit/embedded.spec.ts | 20 +++++++++++++++++--- src/embedded.ts | 13 ++++++++++++- src/matrix.ts | 17 ++++++++++++++++- 3 files changed, 45 insertions(+), 5 deletions(-) diff --git a/spec/unit/embedded.spec.ts b/spec/unit/embedded.spec.ts index 115e0a419ca..e1e6f0513a1 100644 --- a/spec/unit/embedded.spec.ts +++ b/spec/unit/embedded.spec.ts @@ -87,9 +87,12 @@ describe("RoomWidgetClient", () => { client.stopClient(); }); - const makeClient = async (capabilities: ICapabilities): Promise => { + const makeClient = async ( + capabilities: ICapabilities, + sendContentLoaded: boolean | undefined = undefined, + ): Promise => { const baseUrl = "https://example.org"; - client = createRoomWidgetClient(widgetApi, capabilities, "!1:example.org", { baseUrl }); + client = createRoomWidgetClient(widgetApi, capabilities, "!1:example.org", { baseUrl }, sendContentLoaded); expect(widgetApi.start).toHaveBeenCalled(); // needs to have been called early in order to not miss messages widgetApi.emit("ready"); await client.startClient(); @@ -143,7 +146,7 @@ describe("RoomWidgetClient", () => { }); }); - describe("messages", () => { + describe("initialization", () => { it("requests permissions for specific message types", async () => { await makeClient({ sendMessage: [MsgType.Text], receiveMessage: [MsgType.Text] }); expect(widgetApi.requestCapabilityForRoomTimeline).toHaveBeenCalledWith("!1:example.org"); @@ -158,6 +161,15 @@ describe("RoomWidgetClient", () => { expect(widgetApi.requestCapabilityToReceiveMessage).toHaveBeenCalledWith(); }); + it("sends content loaded when configured", async () => { + await makeClient({}); + expect(widgetApi.sendContentLoaded).toHaveBeenCalled(); + }); + + it("does not sent content loaded when configured", async () => { + await makeClient({}, false); + expect(widgetApi.sendContentLoaded).not.toHaveBeenCalled(); + }); // No point in testing sending and receiving since it's done exactly the // same way as non-message events }); @@ -305,12 +317,14 @@ describe("RoomWidgetClient", () => { expect(await emittedSync).toEqual(SyncState.Syncing); }); }); + describe("oidc token", () => { it("requests an oidc token", async () => { await makeClient({}); expect(await client.getOpenIdToken()).toStrictEqual(testOIDCToken); }); }); + it("gets TURN servers", async () => { const server1: ITurnServer = { uris: [ diff --git a/src/embedded.ts b/src/embedded.ts index 178d74b2ec7..8730c22ee3f 100644 --- a/src/embedded.ts +++ b/src/embedded.ts @@ -108,11 +108,22 @@ export class RoomWidgetClient extends MatrixClient { private lifecycle?: AbortController; private syncState: SyncState | null = null; + /** + * + * @param widgetApi - The widget api to use for communication. + * @param capabilities - The capabilities the widget client will request. + * @param roomId - The room id the widget is associated with. + * @param opts - The configuration options for this client. + * @param sendContentLoaded - Whether to send a content loaded widget action immediately after initial setup. + * Set to `false` if the widget uses `waitForIFrameLoad=true` (in this case the client does not expect a content loaded action at all), + * or if the the widget wants to send the `ContentLoaded` action at a later point in time after the initial setup. + */ public constructor( private readonly widgetApi: WidgetApi, private readonly capabilities: ICapabilities, private readonly roomId: string, opts: IMatrixClientCreateOpts, + sendContentLoaded: boolean, ) { super(opts); @@ -165,7 +176,7 @@ export class RoomWidgetClient extends MatrixClient { // does *not* (yes, that is the right way around) wait for this event. Let's // start sending this, then once this has rolled out, we can change element-web to // use waitForIFrameLoad=false and have a widget API that's less racy. - widgetApi.sendContentLoaded(); + if (sendContentLoaded) widgetApi.sendContentLoaded(); } public async startClient(opts: IStartClientOpts = {}): Promise { diff --git a/src/matrix.ts b/src/matrix.ts index 9dd83affade..4e12c9feba4 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -164,11 +164,26 @@ export function createClient(opts: ICreateClientOpts): MatrixClient { return new MatrixClient(amendClientOpts(opts)); } +/** + * Construct a Matrix Client that works in a widget. + * This client has a subset of features compared to a full client. + * It uses the widget-api to communicate with matrix. (widget \<-\> client \<-\> homeserver) + * @returns A new matrix client with a subset of features. + * @param opts - The configuration options for this client. These configuration + * options will be passed directly to {@link MatrixClient}. + * @param widgetApi - The widget api to use for communication. + * @param capabilities - The capabilities the widget client will request. + * @param roomId - The room id the widget is associated with. + * @param sendContentLoaded - Whether to send a content loaded widget action immediately after initial setup. + * Set to `false` if the widget uses `waitForIFrameLoad=true` (in this case the client does not expect a content loaded action at all), + * or if the the widget wants to send the `ContentLoaded` action at a later point in time after the initial setup. + */ export function createRoomWidgetClient( widgetApi: WidgetApi, capabilities: ICapabilities, roomId: string, opts: ICreateClientOpts, + sendContentLoaded = true, ): MatrixClient { - return new RoomWidgetClient(widgetApi, capabilities, roomId, amendClientOpts(opts)); + return new RoomWidgetClient(widgetApi, capabilities, roomId, amendClientOpts(opts), sendContentLoaded); } From d55c6a36df539f6adacc335efe5b9be27c9cee4a Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 5 Mar 2024 17:10:33 +0000 Subject: [PATCH 107/595] PR template: reminder to document your stuff (#4081) * PR template: reminder to document your stuff * link to tsdoc, not typedoc * add full stops --- .github/PULL_REQUEST_TEMPLATE.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index a291d1b9ffc..58c696ab118 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -2,6 +2,7 @@ ## Checklist -- [ ] Tests written for new code (and old code if feasible) -- [ ] Linter and other CI checks pass -- [ ] Sign-off given on the changes (see [CONTRIBUTING.md](https://github.com/matrix-org/matrix-js-sdk/blob/develop/CONTRIBUTING.md)) +- [ ] Tests written for new code (and old code if feasible). +- [ ] New or updated `public`/`exported` symbols have accurate [TSDoc](https://tsdoc.org/) documentation. +- [ ] Linter and other CI checks pass. +- [ ] Sign-off given on the changes (see [CONTRIBUTING.md](https://github.com/matrix-org/matrix-js-sdk/blob/develop/CONTRIBUTING.md)). From 2541ca04c2ca94fa05c7b460ab0625d726948880 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Mar 2024 17:54:30 +0000 Subject: [PATCH 108/595] Update all non-major dependencies (#4096) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/downstream-artifacts.yml | 2 +- package.json | 6 +- yarn.lock | 68 +++++++++++----------- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/.github/workflows/downstream-artifacts.yml b/.github/workflows/downstream-artifacts.yml index 09107645f23..c6e7a66c415 100644 --- a/.github/workflows/downstream-artifacts.yml +++ b/.github/workflows/downstream-artifacts.yml @@ -16,7 +16,7 @@ concurrency: jobs: build-element-web: name: Build element-web - uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.92.0 + uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.93.0 with: matrix-js-sdk-sha: ${{ github.sha }} react-sdk-repository: matrix-org/matrix-react-sdk diff --git a/package.json b/package.json index 1d560ce239b..1911d97d170 100644 --- a/package.json +++ b/package.json @@ -67,8 +67,8 @@ "uuid": "9" }, "devDependencies": { - "@action-validator/cli": "^0.5.3", - "@action-validator/core": "^0.5.3", + "@action-validator/cli": "^0.6.0", + "@action-validator/core": "^0.6.0", "@babel/cli": "^7.12.10", "@babel/core": "^7.12.10", "@babel/eslint-parser": "^7.12.10", @@ -97,7 +97,7 @@ "babel-jest": "^29.0.0", "debug": "^4.3.4", "domexception": "^4.0.0", - "eslint": "8.56.0", + "eslint": "8.57.0", "eslint-config-google": "^0.14.0", "eslint-config-prettier": "^9.0.0", "eslint-import-resolver-typescript": "^3.5.1", diff --git a/yarn.lock b/yarn.lock index ffa5c431892..6e8a2da277d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,17 +7,17 @@ resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== -"@action-validator/cli@^0.5.3": - version "0.5.4" - resolved "https://registry.yarnpkg.com/@action-validator/cli/-/cli-0.5.4.tgz#44b41881f717753e4fec247aaf73a99c88481e32" - integrity sha512-Puj/f8E8OzPCmDDkVslU+hvTwxM+VL9GOqmuEpdwp4E2Ufsni0lJMNvkHMBc3Da13WwGG49ydOvGVTpMT5H+7A== +"@action-validator/cli@^0.6.0": + version "0.6.0" + resolved "https://registry.yarnpkg.com/@action-validator/cli/-/cli-0.6.0.tgz#02a29e322d3794903896183281eed2b55c685851" + integrity sha512-Z8TYOK4GqUIpI0UuspUJPB6dhr0niTumhwI5iiZVqFRXm4u05bZawnFKltpvoFUfJg9mHbbIBlleqsRJAgl53Q== dependencies: chalk "5.2.0" -"@action-validator/core@^0.5.3": - version "0.5.4" - resolved "https://registry.yarnpkg.com/@action-validator/core/-/core-0.5.4.tgz#160a6d9ac8919a1eed0a0b0a7780b82ef03686fe" - integrity sha512-uODXaU5sJw9CilmjVG9IUpc1ENivixQI7+DtebWgG80PMQBfZ/4b5PKXJ5ESJVlvafrHcuIjN0qou99zN2bDtw== +"@action-validator/core@^0.6.0": + version "0.6.0" + resolved "https://registry.yarnpkg.com/@action-validator/core/-/core-0.6.0.tgz#8fbaf45562a5377140815b79cc1ac9f610ff63e5" + integrity sha512-tPglwCr8Mm8SWzwnVewwFmqRx91F0WvMsM0BRAqH4CLalyGndm53Xvp+UcUSzswpk1wkjIDYI7RyEhWMLyPkig== "@ampproject/remapping@^2.2.0": version "2.3.0" @@ -1350,18 +1350,18 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@8.56.0": - version "8.56.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.56.0.tgz#ef20350fec605a7f7035a01764731b2de0f3782b" - integrity sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A== +"@eslint/js@8.57.0": + version "8.57.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f" + integrity sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g== -"@humanwhocodes/config-array@^0.11.13": - version "0.11.13" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.13.tgz#075dc9684f40a531d9b26b0822153c1e832ee297" - integrity sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ== +"@humanwhocodes/config-array@^0.11.14": + version "0.11.14" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b" + integrity sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg== dependencies: - "@humanwhocodes/object-schema" "^2.0.1" - debug "^4.1.1" + "@humanwhocodes/object-schema" "^2.0.2" + debug "^4.3.1" minimatch "^3.0.5" "@humanwhocodes/module-importer@^1.0.1": @@ -1369,10 +1369,10 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== -"@humanwhocodes/object-schema@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz#e5211452df060fa8522b55c7b3c0c4d1981cb044" - integrity sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw== +"@humanwhocodes/object-schema@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz#d9fae00a2d5cb40f92cfe64b47ad749fbc38f917" + integrity sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw== "@isaacs/cliui@^8.0.2": version "8.0.2" @@ -3188,9 +3188,9 @@ eslint-plugin-jest@^27.1.6: "@typescript-eslint/utils" "^5.10.0" eslint-plugin-jsdoc@^48.0.0: - version "48.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.1.0.tgz#565363770b433485bfc70dc862b50b7f780529ec" - integrity sha512-g9S8ukmTd1DVcV/xeBYPPXOZ6rc8WJ4yi0+MVxJ1jBOrz5kmxV9gJJQ64ltCqIWFnBChLIhLVx3tbTSarqVyFA== + version "48.2.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.0.tgz#a726fbd6fa286fad8fc14f0a6aca48488d188d95" + integrity sha512-O2B1XLBJnUCRkggFzUQ+PBYJDit8iAgXdlu8ucolqGrbmOWPvttZQZX8d1sC0MbqDMSLs8SHSQxaNPRY1RQREg== dependencies: "@es-joy/jsdoccomment" "~0.42.0" are-docs-informative "^0.0.2" @@ -3268,16 +3268,16 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -eslint@8.56.0: - version "8.56.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.56.0.tgz#4957ce8da409dc0809f99ab07a1b94832ab74b15" - integrity sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ== +eslint@8.57.0: + version "8.57.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.0.tgz#c786a6fd0e0b68941aaf624596fb987089195668" + integrity sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.6.1" "@eslint/eslintrc" "^2.1.4" - "@eslint/js" "8.56.0" - "@humanwhocodes/config-array" "^0.11.13" + "@eslint/js" "8.57.0" + "@humanwhocodes/config-array" "^0.11.14" "@humanwhocodes/module-importer" "^1.0.1" "@nodelib/fs.walk" "^1.2.8" "@ungap/structured-clone" "^1.2.0" @@ -3869,9 +3869,9 @@ human-signals@^5.0.0: integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ== husky@^9.0.0: - version "9.0.10" - resolved "https://registry.yarnpkg.com/husky/-/husky-9.0.10.tgz#ddca8908deb5f244e9286865ebc80b54387672c2" - integrity sha512-TQGNknoiy6bURzIO77pPRu+XHi6zI7T93rX+QnJsoYFf3xdjKOur+IlfqzJGMHIK/wXrLg+GsvMs8Op7vI2jVA== + version "9.0.11" + resolved "https://registry.yarnpkg.com/husky/-/husky-9.0.11.tgz#fc91df4c756050de41b3e478b2158b87c1e79af9" + integrity sha512-AB6lFlbwwyIqMdHYhwPe+kjOC3Oc5P3nThEoW/AaO2BX3vJDjWPFxYLxokUZOo6RNX20He3AaT8sESs9NJcmEw== iconv-lite@0.6.3: version "0.6.3" From 7fee37680f33582c1c1e5cafdf8bf50d044e05b2 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Mar 2024 08:49:16 +0000 Subject: [PATCH 109/595] Update typedoc (#4098) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- .eslintignore | 1 + .eslintrc.js | 3 - .github/workflows/release.yml | 41 +++---- .github/workflows/static_analysis.yml | 7 -- README.md | 2 +- package.json | 6 +- src/@types/requests.ts | 12 +- src/client.ts | 21 ++-- src/crypto/OlmDevice.ts | 13 ++- src/crypto/index.ts | 25 ----- .../request/VerificationRequest.ts | 5 +- src/http-api/fetch.ts | 4 +- src/matrixrtc/MatrixRTCSession.ts | 2 +- src/models/event-timeline-set.ts | 6 +- src/models/invites-ignorer.ts | 5 +- src/models/room-receipts.ts | 2 +- src/models/room-state.ts | 12 +- src/oidc/tokenRefresher.ts | 6 +- src/sliding-sync-sdk.ts | 2 +- src/webrtc/call.ts | 4 +- src/webrtc/mediaHandler.ts | 5 +- tsconfig.json | 7 +- typedoc.json | 13 +-- yarn.lock | 104 ++++-------------- 24 files changed, 105 insertions(+), 203 deletions(-) create mode 100644 .eslintignore diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 00000000000..a40510e62c7 --- /dev/null +++ b/.eslintignore @@ -0,0 +1 @@ +_docs diff --git a/.eslintrc.js b/.eslintrc.js index e0150cca7d1..b751ebc8c42 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -103,11 +103,8 @@ module.exports = { }, }, { - // We don't need amazing docs in our spec files files: ["src/**/*.ts"], rules: { - "tsdoc/syntax": "error", - // We use some select jsdoc rules as the tsdoc linter has only one rule "jsdoc/no-types": "error", "jsdoc/empty-tags": "error", "jsdoc/check-property-names": "error", diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 451ea064248..dc155b6cedf 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -39,12 +39,6 @@ jobs: - name: 🧮 Checkout code uses: actions/checkout@v4 - - name: 🧮 Checkout gh-pages - uses: actions/checkout@v4 - with: - ref: gh-pages - path: _docs - - name: 🔧 Yarn cache uses: actions/setup-node@v4 with: @@ -53,26 +47,21 @@ jobs: - name: 🔨 Install dependencies run: "yarn install --frozen-lockfile" - - name: 🔨 Install symlinks - run: | - sudo apt-get update - sudo apt-get install -y symlinks - - name: 📖 Generate docs - run: | - yarn tpv purge --yes --out _docs --stale --major 10 - yarn gendoc - symlinks -rc _docs - find _docs -xtype l -delete + run: yarn gendoc - - name: 🔨 Set up git - run: | - git config --global user.email "releases@riot.im" - git config --global user.name "RiotRobot" + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: _docs - - name: 🚀 Deploy - run: | - git add . --all - git commit -m "Update docs" - git push - working-directory: _docs + docs-deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: docs + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/.github/workflows/static_analysis.yml b/.github/workflows/static_analysis.yml index 4e1070d1c96..8be2b77a6fc 100644 --- a/.github/workflows/static_analysis.yml +++ b/.github/workflows/static_analysis.yml @@ -83,13 +83,6 @@ jobs: - name: Generate Docs run: "yarn run gendoc --treatWarningsAsErrors" - # Upload artifact duplicates symlink contents so we do this to save 75% space - - name: Flatten symlink and write _redirects - run: | - find _docs -mindepth 1 -maxdepth 1 ! -type f ! -name stable -printf '/%f/* /stable/:splat\n' > _docs/_redirects - find _docs -mindepth 1 -maxdepth 1 -type l -delete - find _docs -mindepth 1 -maxdepth 1 -type d -execdir mv {} stable \; -quit - - name: Upload Artifact uses: actions/upload-artifact@v4 with: diff --git a/README.md b/README.md index f194a72715e..74a2f7be0bf 100644 --- a/README.md +++ b/README.md @@ -294,7 +294,7 @@ host the API reference from the source files like this: ``` $ yarn gendoc - $ cd _docs + $ cd docs $ python -m http.server 8005 ``` diff --git a/package.json b/package.json index 1911d97d170..49a1cb9adf7 100644 --- a/package.json +++ b/package.json @@ -121,13 +121,11 @@ "prettier": "3.2.5", "rimraf": "^5.0.0", "ts-node": "^10.9.1", - "typedoc": "^0.24.0", + "typedoc": "^0.25.10", "typedoc-plugin-coverage": "^3.0.0", "typedoc-plugin-mdn-links": "^3.0.3", "typedoc-plugin-missing-exports": "^2.0.0", - "typedoc-plugin-versions": "^0.2.3", - "typedoc-plugin-versions-cli": "^0.1.12", - "typescript": "^5.0.0" + "typescript": "^5.3.3" }, "@casualbot/jest-sonar-reporter": { "outputDirectory": "coverage", diff --git a/src/@types/requests.ts b/src/@types/requests.ts index e67fb873b76..d6b7ff75fa2 100644 --- a/src/@types/requests.ts +++ b/src/@types/requests.ts @@ -162,11 +162,21 @@ export interface ICreateRoomOpts { } export interface IRoomDirectoryOptions { + /** + * The remote server to query for the room list. + * Optional. If unspecified, get the local homeserver's public room list. + */ server?: string; + /** + * Maximum number of entries to return + */ limit?: number; + /** + * Token to paginate from + */ since?: string; - // Filter parameters + /** Filter parameters */ filter?: { // String to search for generic_search_term?: string; diff --git a/src/client.ts b/src/client.ts index 3b489ad52db..1580634e06a 100644 --- a/src/client.ts +++ b/src/client.ts @@ -3286,7 +3286,7 @@ export class MatrixClient extends TypedEventEmitter { @@ -8480,12 +8479,7 @@ export class MatrixClient extends TypedEventEmitter { @@ -9008,8 +9002,9 @@ export class MatrixClient extends TypedEventEmitter { let e2eKeys; diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 0f6018b8e15..0d8f057eabc 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -473,8 +473,6 @@ export class Crypto extends TypedEventEmitter { diff --git a/src/http-api/fetch.ts b/src/http-api/fetch.ts index fbe842f1e9a..274f39f0d41 100644 --- a/src/http-api/fetch.ts +++ b/src/http-api/fetch.ts @@ -111,8 +111,8 @@ export class FetchHttpApi { * * @param body - The HTTP JSON body. * - * @param opts - additional options. - * When `opts.doNotAttemptTokenRefresh` is true, token refresh will not be attempted + * @param paramOpts - additional options. + * When `paramOpts.doNotAttemptTokenRefresh` is true, token refresh will not be attempted * when an expired token is encountered. Used to only attempt token refresh once. * * @returns Promise which resolves to diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 03871bb90e8..1695ea6d703 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -610,7 +610,7 @@ export class MatrixRTCSession extends TypedEventEmitter { const eventId = event.getId(); diff --git a/src/models/room-state.ts b/src/models/room-state.ts index 52d520be177..e08f4859ffb 100644 --- a/src/models/room-state.ts +++ b/src/models/room-state.ts @@ -297,13 +297,15 @@ export class RoomState extends TypedEventEmitter /** * Get state events from the state of the room. * @param eventType - The event type of the state event. - * @param stateKey - Optional. The state_key of the state event. If - * this is `undefined` then all matching state events will be - * returned. - * @returns A list of events if state_key was - * `undefined`, else a single event (or null if no match found). + * @returns A list of events */ public getStateEvents(eventType: EventType | string): MatrixEvent[]; + /** + * Get state events from the state of the room. + * @param eventType - The event type of the state event. + * @param stateKey - The state_key of the state event. + * @returns A single event (or null if no match found). + */ public getStateEvents(eventType: EventType | string, stateKey: string): MatrixEvent | null; public getStateEvents(eventType: EventType | string, stateKey?: string): MatrixEvent[] | MatrixEvent | null { if (!this.events.has(eventType)) { diff --git a/src/oidc/tokenRefresher.ts b/src/oidc/tokenRefresher.ts index 79ef9442276..84b773531b9 100644 --- a/src/oidc/tokenRefresher.ts +++ b/src/oidc/tokenRefresher.ts @@ -113,10 +113,10 @@ export class OidcTokenRefresher { * * This function is intended to be overriden by the consumer when persistence is necessary. * - * @param accessToken - new access token - * @param refreshToken - OPTIONAL new refresh token + * @param tokens.accessToken - new access token + * @param tokens.refreshToken - OPTIONAL new refresh token */ - public async persistTokens(_tokens: { accessToken: string; refreshToken?: string }): Promise { + public async persistTokens(tokens: { accessToken: string; refreshToken?: string }): Promise { // NOOP } diff --git a/src/sliding-sync-sdk.ts b/src/sliding-sync-sdk.ts index bfe32448bd2..2b3399664ad 100644 --- a/src/sliding-sync-sdk.ts +++ b/src/sliding-sync-sdk.ts @@ -455,7 +455,7 @@ export class SlidingSyncSdk { * @returns A promise which resolves once the room has been added to the * store. */ - public async peek(_roomId: string): Promise { + public async peek(roomId: string): Promise { return null!; // TODO } diff --git a/src/webrtc/call.ts b/src/webrtc/call.ts index 187a9443fe9..92b4862de1c 100644 --- a/src/webrtc/call.ts +++ b/src/webrtc/call.ts @@ -1235,7 +1235,7 @@ export class MatrixCall extends TypedEventEmitter { @@ -1292,7 +1292,7 @@ export class MatrixCall extends TypedEventEmitter Date: Wed, 6 Mar 2024 14:10:35 +0000 Subject: [PATCH 110/595] Don't re-fetch thread root if we already have it (#4088) The root event of a thread used to arrive with the pagination request, but this was unspecced and so got changed to simply fetch the root event. In many (almost all) cases this shouldn't be necessary because the thread should already have its root event: re-use it if it's already there. This is only in pagination, so there's no reason to believe that the root event would have changed and needs to be re-fetched. This removes a number of duplicate calls to the /event/ endpoint from the tests. --- spec/integ/matrix-client-event-timeline.spec.ts | 16 +--------------- src/client.ts | 6 ++++-- 2 files changed, 5 insertions(+), 17 deletions(-) diff --git a/spec/integ/matrix-client-event-timeline.spec.ts b/spec/integ/matrix-client-event-timeline.spec.ts index fe7823d448f..55aef20c23f 100644 --- a/spec/integ/matrix-client-event-timeline.spec.ts +++ b/spec/integ/matrix-client-event-timeline.spec.ts @@ -607,11 +607,6 @@ describe("MatrixClient event timelines", function () { await client.stopClient(); // we don't need the client to be syncing at this time const room = client.getRoom(roomId)!; - httpBackend - .when("GET", "/rooms/!foo%3Abar/event/" + encodeURIComponent(THREAD_ROOT.event_id!)) - .respond(200, function () { - return THREAD_ROOT; - }); httpBackend .when("GET", "/rooms/!foo%3Abar/event/" + encodeURIComponent(THREAD_ROOT.event_id!)) .respond(200, function () { @@ -1545,9 +1540,7 @@ describe("MatrixClient event timelines", function () { expect(timelineSets).not.toBeNull(); respondToThreads(threadsResponse); respondToThreads(threadsResponse); - respondToEvent(THREAD_ROOT); respondToEvent(THREAD2_ROOT); - respondToThread(THREAD_ROOT, [THREAD_REPLY]); respondToThread(THREAD2_ROOT, [THREAD2_REPLY]); await flushHttp(room.fetchRoomThreads()); const threadIds = room.getThreads().map((thread) => thread.id); @@ -1566,7 +1559,6 @@ describe("MatrixClient event timelines", function () { thread.initialEventsFetched = true; const prom = emitPromise(room, ThreadEvent.NewReply); respondToEvent(THREAD_ROOT_UPDATED); - respondToEvent(THREAD2_ROOT); await room.addLiveEvents([THREAD_REPLY2]); await httpBackend.flushAllExpected(); await prom; @@ -1643,7 +1635,7 @@ describe("MatrixClient event timelines", function () { ...THREAD_ROOT.unsigned!["m.relations"], "io.element.thread": { ...THREAD_ROOT.unsigned!["m.relations"]!["io.element.thread"], - count: 2, + count: 1, latest_event: THREAD_REPLY, }, }, @@ -1692,7 +1684,6 @@ describe("MatrixClient event timelines", function () { thread.initialEventsFetched = true; const prom = emitPromise(room, ThreadEvent.Update); respondToEvent(THREAD_ROOT_UPDATED); - respondToEvent(THREAD2_ROOT); await room.addLiveEvents([THREAD_REPLY_REACTION]); await httpBackend.flushAllExpected(); await prom; @@ -2007,11 +1998,6 @@ describe("MatrixClient event timelines", function () { }, }, }); - httpBackend - .when("GET", "/rooms/!foo%3Abar/event/" + encodeURIComponent(THREAD_ROOT.event_id!)) - .respond(200, function () { - return THREAD_ROOT; - }); httpBackend .when("GET", "/rooms/!foo%3Abar/event/" + encodeURIComponent(THREAD_ROOT.event_id!)) .respond(200, function () { diff --git a/src/client.ts b/src/client.ts index 1580634e06a..9c85963ba76 100644 --- a/src/client.ts +++ b/src/client.ts @@ -6565,8 +6565,10 @@ export class MatrixClient extends TypedEventEmitter Date: Thu, 7 Mar 2024 18:56:36 -0500 Subject: [PATCH 111/595] Fix race condition with sliding sync extensions (#4089) * Fix race condition with sliding sync extensions * Fix types on sliding-sync spec test * Prettier fixes --- spec/integ/sliding-sync.spec.ts | 10 +++++----- src/sliding-sync-sdk.ts | 6 +++--- src/sliding-sync.ts | 34 ++++++++++++++++++--------------- 3 files changed, 27 insertions(+), 23 deletions(-) diff --git a/spec/integ/sliding-sync.spec.ts b/spec/integ/sliding-sync.spec.ts index 5066329c26c..29cd3443bfe 100644 --- a/spec/integ/sliding-sync.spec.ts +++ b/spec/integ/sliding-sync.spec.ts @@ -107,8 +107,8 @@ describe("SlidingSync", () => { onRequest: (initial) => { return { initial: initial }; }, - onResponse: (res) => { - return {}; + onResponse: async (res) => { + return; }, when: () => ExtensionState.PreProcess, }; @@ -1572,7 +1572,7 @@ describe("SlidingSync", () => { onPreExtensionRequest = () => { return extReq; }; - onPreExtensionResponse = (resp) => { + onPreExtensionResponse = async (resp) => { extensionOnResponseCalled = true; callbackOrder.push("onPreExtensionResponse"); expect(resp).toEqual(extResp); @@ -1613,7 +1613,7 @@ describe("SlidingSync", () => { return undefined; }; let responseCalled = false; - onPreExtensionResponse = (resp) => { + onPreExtensionResponse = async (resp) => { responseCalled = true; }; httpBackend! @@ -1649,7 +1649,7 @@ describe("SlidingSync", () => { }; let responseCalled = false; const callbackOrder: string[] = []; - onPostExtensionResponse = (resp) => { + onPostExtensionResponse = async (resp) => { expect(resp).toEqual(extResp); responseCalled = true; callbackOrder.push("onPostExtensionResponse"); diff --git a/src/sliding-sync-sdk.ts b/src/sliding-sync-sdk.ts index 2b3399664ad..e5a371e1407 100644 --- a/src/sliding-sync-sdk.ts +++ b/src/sliding-sync-sdk.ts @@ -218,7 +218,7 @@ class ExtensionAccountData implements Extension { if (data.global && data.global.length > 0) { this.processGlobalAccountData(data.global); } @@ -288,7 +288,7 @@ class ExtensionTyping implements Extension { if (!data?.rooms) { return; } @@ -327,7 +327,7 @@ class ExtensionReceipts implements Extension { if (!data?.rooms) { return; } diff --git a/src/sliding-sync.ts b/src/sliding-sync.ts index a45a142d58e..12da3d70404 100644 --- a/src/sliding-sync.ts +++ b/src/sliding-sync.ts @@ -282,7 +282,7 @@ export interface Extension { * A function which is called when there is response JSON under this extension. * @param data - The response JSON under the extension name. */ - onResponse(data: Res): void; + onResponse(data: Res): Promise; /** * Controls when onResponse should be called. * @returns The state when it should be called. @@ -546,20 +546,24 @@ export class SlidingSync extends TypedEventEmitter): void { - Object.keys(ext).forEach((extName) => { - if (this.extensions[extName].when() == ExtensionState.PreProcess) { - this.extensions[extName].onResponse(ext[extName]); - } - }); + private async onPreExtensionsResponse(ext: Record): Promise { + await Promise.all( + Object.keys(ext).map(async (extName) => { + if (this.extensions[extName].when() == ExtensionState.PreProcess) { + await this.extensions[extName].onResponse(ext[extName]); + } + }), + ); } - private onPostExtensionsResponse(ext: Record): void { - Object.keys(ext).forEach((extName) => { - if (this.extensions[extName].when() == ExtensionState.PostProcess) { - this.extensions[extName].onResponse(ext[extName]); - } - }); + private async onPostExtensionsResponse(ext: Record): Promise { + await Promise.all( + Object.keys(ext).map(async (extName) => { + if (this.extensions[extName].when() == ExtensionState.PostProcess) { + await this.extensions[extName].onResponse(ext[extName]); + } + }), + ); } /** @@ -921,7 +925,7 @@ export class SlidingSync extends TypedEventEmitter { const list = this.lists.get(listKey); if (!list) { From 30311524443d3da7047b7ba320a968db059bf47f Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 8 Mar 2024 20:21:12 +0000 Subject: [PATCH 112/595] Add `.m.rule.is_room_mention` push rule to DEFAULT_OVERRIDE_RULES (#4100) * Add intentional mentions push rules to DEFAULT_OVERRIDE_RULES Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/pushprocessor.spec.ts | 297 +++++++++++++++++--------------- src/pushprocessor.ts | 171 ++++++++++++------ 2 files changed, 280 insertions(+), 188 deletions(-) diff --git a/spec/unit/pushprocessor.spec.ts b/spec/unit/pushprocessor.spec.ts index 9aae1eefd6c..90d2180361b 100644 --- a/spec/unit/pushprocessor.spec.ts +++ b/spec/unit/pushprocessor.spec.ts @@ -29,147 +29,150 @@ describe("NotificationService", function () { actions: ["notify", { set_tweak: "sound", value: "default" }], }; - // These would be better if individual rules were configured in the tests themselves. - const matrixClient = { - getRoom: function () { - return { - currentState: { - getMember: function () { - return { - name: testDisplayName, - }; - }, - getJoinedMemberCount: function () { - return 0; + let matrixClient: MatrixClient; + + beforeEach(function () { + // These would be better if individual rules were configured in the tests themselves. + matrixClient = { + getRoom: function () { + return { + currentState: { + getMember: function () { + return { + name: testDisplayName, + }; + }, + getJoinedMemberCount: function () { + return 0; + }, + members: {}, }, - members: {}, + }; + }, + ...mockClientMethodsUser(testUserId), + supportsIntentionalMentions: () => true, + pushRules: { + device: {}, + global: { + content: [ + { + actions: [ + "notify", + { + set_tweak: "sound", + value: "default", + }, + { + set_tweak: "highlight", + }, + ], + enabled: true, + pattern: "ali", + rule_id: ".m.rule.contains_user_name", + }, + { + actions: [ + "notify", + { + set_tweak: "sound", + value: "default", + }, + { + set_tweak: "highlight", + }, + ], + enabled: true, + pattern: "coffee", + rule_id: "coffee", + }, + { + actions: [ + "notify", + { + set_tweak: "sound", + value: "default", + }, + { + set_tweak: "highlight", + }, + ], + enabled: true, + pattern: "foo*bar", + rule_id: "foobar", + }, + ], + override: [ + { + actions: [ + "notify", + { + set_tweak: "sound", + value: "default", + }, + { + set_tweak: "highlight", + }, + ], + conditions: [ + { + kind: "contains_display_name", + }, + ], + enabled: true, + default: true, + rule_id: ".m.rule.contains_display_name", + }, + { + actions: [ + "notify", + { + set_tweak: "sound", + value: "default", + }, + ], + conditions: [ + { + is: "2", + kind: "room_member_count", + }, + ], + enabled: true, + rule_id: ".m.rule.room_one_to_one", + }, + ], + room: [], + sender: [], + underride: [ + msc3914RoomCallRule, + { + actions: ["dont-notify"], + conditions: [ + { + key: "content.msgtype", + kind: "event_match", + pattern: "m.notice", + }, + ], + enabled: true, + rule_id: ".m.rule.suppress_notices", + }, + { + actions: [ + "notify", + { + set_tweak: "highlight", + value: false, + }, + ], + conditions: [], + enabled: true, + rule_id: ".m.rule.fallback", + }, + ], }, - }; - }, - ...mockClientMethodsUser(testUserId), - supportsIntentionalMentions: () => true, - pushRules: { - device: {}, - global: { - content: [ - { - actions: [ - "notify", - { - set_tweak: "sound", - value: "default", - }, - { - set_tweak: "highlight", - }, - ], - enabled: true, - pattern: "ali", - rule_id: ".m.rule.contains_user_name", - }, - { - actions: [ - "notify", - { - set_tweak: "sound", - value: "default", - }, - { - set_tweak: "highlight", - }, - ], - enabled: true, - pattern: "coffee", - rule_id: "coffee", - }, - { - actions: [ - "notify", - { - set_tweak: "sound", - value: "default", - }, - { - set_tweak: "highlight", - }, - ], - enabled: true, - pattern: "foo*bar", - rule_id: "foobar", - }, - ], - override: [ - { - actions: [ - "notify", - { - set_tweak: "sound", - value: "default", - }, - { - set_tweak: "highlight", - }, - ], - conditions: [ - { - kind: "contains_display_name", - }, - ], - enabled: true, - rule_id: ".m.rule.contains_display_name", - }, - { - actions: [ - "notify", - { - set_tweak: "sound", - value: "default", - }, - ], - conditions: [ - { - is: "2", - kind: "room_member_count", - }, - ], - enabled: true, - rule_id: ".m.rule.room_one_to_one", - }, - ], - room: [], - sender: [], - underride: [ - msc3914RoomCallRule, - { - actions: ["dont-notify"], - conditions: [ - { - key: "content.msgtype", - kind: "event_match", - pattern: "m.notice", - }, - ], - enabled: true, - rule_id: ".m.rule.suppress_notices", - }, - { - actions: [ - "notify", - { - set_tweak: "highlight", - value: false, - }, - ], - conditions: [], - enabled: true, - rule_id: ".m.rule.fallback", - }, - ], }, - }, - } as unknown as MatrixClient; + } as unknown as MatrixClient; - beforeEach(function () { testEvent = utils.mkEvent({ type: "m.room.message", room: testRoomId, @@ -184,6 +187,26 @@ describe("NotificationService", function () { pushProcessor = new PushProcessor(matrixClient); }); + it("should add default rules in the correct order", () => { + // By the time we get here, we expect the PushProcessor to have merged the new .m.rule.is_room_mention rule into the existing list of rules. + // Check that has happened, and that it is in the right place. + const containsDisplayNameRuleIdx = matrixClient.pushRules?.global.override?.findIndex( + (rule) => rule.rule_id === RuleId.ContainsDisplayName, + ); + expect(containsDisplayNameRuleIdx).toBeGreaterThan(-1); + const isRoomMentionRuleIdx = matrixClient.pushRules?.global.override?.findIndex( + (rule) => rule.rule_id === RuleId.IsRoomMention, + ); + expect(isRoomMentionRuleIdx).toBeGreaterThan(-1); + const mReactionRuleIdx = matrixClient.pushRules?.global.override?.findIndex( + (rule) => rule.rule_id === ".m.rule.reaction", + ); + expect(mReactionRuleIdx).toBeGreaterThan(-1); + + expect(containsDisplayNameRuleIdx).toBeLessThan(isRoomMentionRuleIdx!); + expect(isRoomMentionRuleIdx).toBeLessThan(mReactionRuleIdx!); + }); + // User IDs it("should bing on a user ID.", function () { diff --git a/src/pushprocessor.ts b/src/pushprocessor.ts index 02e2c37f7e1..162c36dc9bd 100644 --- a/src/pushprocessor.ts +++ b/src/pushprocessor.ts @@ -56,8 +56,31 @@ const RULEKINDS_IN_ORDER = [ // more details. // 2. We often want to start using push rules ahead of the server supporting them, // and so we can put them here. -const DEFAULT_OVERRIDE_RULES: IPushRule[] = [ - { +const DEFAULT_OVERRIDE_RULES: Record = { + ".m.rule.is_room_mention": { + // Matrix v1.7 + rule_id: ".m.rule.is_room_mention", + default: true, + enabled: true, + conditions: [ + { + kind: ConditionKind.EventPropertyIs, + key: "content.m\\.mentions.room", + value: true, + }, + { + kind: ConditionKind.SenderNotificationPermission, + key: "room", + }, + ], + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Highlight, + }, + ], + }, + ".m.rule.reaction": { // For homeservers which don't support MSC2153 yet rule_id: ".m.rule.reaction", default: true, @@ -71,7 +94,7 @@ const DEFAULT_OVERRIDE_RULES: IPushRule[] = [ ], actions: [PushRuleActionName.DontNotify], }, - { + ".org.matrix.msc3786.rule.room.server_acl": { // For homeservers which don't support MSC3786 yet rule_id: ".org.matrix.msc3786.rule.room.server_acl", default: true, @@ -90,10 +113,26 @@ const DEFAULT_OVERRIDE_RULES: IPushRule[] = [ ], actions: [], }, +}; + +const EXPECTED_DEFAULT_OVERRIDE_RULE_IDS = [ + RuleId.Master, + RuleId.SuppressNotices, + RuleId.InviteToSelf, + RuleId.MemberEvent, + RuleId.IsUserMention, + RuleId.ContainsDisplayName, + RuleId.IsRoomMention, + RuleId.AtRoomNotification, + RuleId.Tombstone, + ".m.rule.reaction", + ".m.rule.room.server_acl", + ".org.matrix.msc3786.rule.room.server_acl", + ".m.rule.suppress_edits", ]; -const DEFAULT_UNDERRIDE_RULES: IPushRule[] = [ - { +const DEFAULT_UNDERRIDE_RULES: Record = { + ".org.matrix.msc3914.rule.room.call": { // For homeservers which don't support MSC3914 yet rule_id: ".org.matrix.msc3914.rule.room.call", default: true, @@ -110,8 +149,74 @@ const DEFAULT_UNDERRIDE_RULES: IPushRule[] = [ ], actions: [PushRuleActionName.Notify, { set_tweak: TweakName.Sound, value: "default" }], }, +}; + +const EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS = [ + RuleId.IncomingCall, + RuleId.EncryptedDM, + RuleId.DM, + RuleId.Message, + RuleId.EncryptedMessage, ]; +/** + * Make sure that each of the rules listed in `defaultRuleIds` is listed in the given set of push rules. + * + * @param incomingRules - the existing set of known push rules for the user. + * @param defaultRules - a lookup table for the default definitions of push rules. + * @param defaultRuleIds - the IDs of the expected default push rules, in order. + * + * @returns A copy of `incomingRules`, with any missing default rules inserted in the right place. + */ +function mergeRulesWithDefaults( + incomingRules: IPushRule[], + defaultRules: Record, + defaultRuleIds: string[], +): IPushRule[] { + // Calculate the index after the last default rule in `incomingRules` + // to allow us to split the incomingRules into defaults and custom + let firstCustomRuleIndex = incomingRules.findIndex((r) => !r.default); + if (firstCustomRuleIndex < 0) firstCustomRuleIndex = incomingRules.length; + + function insertDefaultPushRule(ruleId: string): void { + if (ruleId in defaultRules) { + logger.warn(`Adding default global push rule ${ruleId}`); + newRules.push(defaultRules[ruleId]); + } else { + logger.warn(`Missing default global push rule ${ruleId}`); + } + } + + let nextExpectedRuleIdIndex = 0; + const newRules: IPushRule[] = []; + for (const rule of incomingRules.slice(0, firstCustomRuleIndex)) { + const ruleIndex = defaultRuleIds.indexOf(rule.rule_id); + if (ruleIndex === -1) { + // an unrecognised rule; copy it over + newRules.push(rule); + continue; + } + while (ruleIndex > nextExpectedRuleIdIndex) { + // insert new rules + const defaultRuleId = defaultRuleIds[nextExpectedRuleIdIndex]; + insertDefaultPushRule(defaultRuleId); + nextExpectedRuleIdIndex += 1; + } + // copy over the existing rule + newRules.push(rule); + nextExpectedRuleIdIndex += 1; + } + + // Now copy over any remaining default rules + for (const ruleId of defaultRuleIds.slice(nextExpectedRuleIdIndex)) { + insertDefaultPushRule(ruleId); + } + + // Finally any non-default rules that were in `incomingRules` + newRules.push(...incomingRules.slice(firstCustomRuleIndex)); + return newRules; +} + export interface IActionsObject { /** Whether this event should notify the user or not. */ notify: boolean; @@ -175,53 +280,17 @@ export class PushProcessor { if (!newRules.global.underride) newRules.global.underride = []; // Merge the client-level defaults with the ones from the server - const globalOverrides = newRules.global.override; - for (const originalOverride of DEFAULT_OVERRIDE_RULES) { - const existingRule = globalOverrides.find((r) => r.rule_id === originalOverride.rule_id); - - // Dynamically add the user ID as the value for the is_user_mention rule. - let override: IPushRule; - if (originalOverride.rule_id === RuleId.IsUserMention) { - // If the user ID wasn't provided, skip the rule. - if (!userId) { - continue; - } - - override = JSON.parse(JSON.stringify(originalOverride)); // deep clone - override.conditions![0].value = userId; - } else { - override = originalOverride; - } - - if (existingRule) { - // Copy over the actions, default, and conditions. Don't touch the user's preference. - existingRule.default = override.default; - existingRule.conditions = override.conditions; - existingRule.actions = override.actions; - } else { - // Add the rule - const ruleId = override.rule_id; - logger.warn(`Adding default global override for ${ruleId}`); - globalOverrides.push(override); - } - } - - const globalUnderrides = newRules.global.underride ?? []; - for (const underride of DEFAULT_UNDERRIDE_RULES) { - const existingRule = globalUnderrides.find((r) => r.rule_id === underride.rule_id); + newRules.global.override = mergeRulesWithDefaults( + newRules.global.override, + DEFAULT_OVERRIDE_RULES, + EXPECTED_DEFAULT_OVERRIDE_RULE_IDS, + ); - if (existingRule) { - // Copy over the actions, default, and conditions. Don't touch the user's preference. - existingRule.default = underride.default; - existingRule.conditions = underride.conditions; - existingRule.actions = underride.actions; - } else { - // Add the rule - const ruleId = underride.rule_id; - logger.warn(`Adding default global underride for ${ruleId}`); - globalUnderrides.push(underride); - } - } + newRules.global.underride = mergeRulesWithDefaults( + newRules.global.underride, + DEFAULT_UNDERRIDE_RULES, + EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS, + ); return newRules; } From 3711ad7e615992fe73761a074e34ba72f1ac82a7 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 8 Mar 2024 21:07:26 +0000 Subject: [PATCH 113/595] Export types describing all specced media event formats (#4092) * Export types describing all specced media event formats Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate PR Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Move types to a dedicated export Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Add readme entry Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- README.md | 4 + src/@types/media.ts | 252 ++++++++++++++++++++++++++++++++++++++++++++ src/types.ts | 24 +++++ typedoc.json | 2 +- 4 files changed, 281 insertions(+), 1 deletion(-) create mode 100644 src/@types/media.ts create mode 100644 src/types.ts diff --git a/README.md b/README.md index 74a2f7be0bf..f13deb399f3 100644 --- a/README.md +++ b/README.md @@ -192,6 +192,10 @@ via an optional `callback` argument. The callback support is now deprecated: new methods do not include a `callback` argument, and in the future it may be removed from existing methods. +## Low level types + +There are some low level TypeScript types exported via the `matrix-js-sdk/lib/types` entrypoint to not bloat the main entrypoint. + ## Examples This section provides some useful code snippets which demonstrate the diff --git a/src/@types/media.ts b/src/@types/media.ts new file mode 100644 index 00000000000..20e5ca6c66b --- /dev/null +++ b/src/@types/media.ts @@ -0,0 +1,252 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { MsgType } from "../@types/event"; + +/** + * Information on encrypted media attachments. + * + * Used within `m.room.message` events that reference files, such as `m.file` and `m.image`. + * + * @see https://spec.matrix.org/v1.9/client-server-api/#extensions-to-mroommessage-msgtypes + */ +export interface EncryptedFile { + /** + * The URL to the file. + */ + url: string; + /** + * A JSON Web Key object. + */ + key: { + alg: string; + key_ops: string[]; // eslint-disable-line camelcase + kty: string; + k: string; + ext: boolean; + }; + /** + * The 128-bit unique counter block used by AES-CTR, encoded as unpadded base64. + */ + iv: string; + /** + * A map from an algorithm name to a hash of the ciphertext, encoded as unpadded base64. + * Clients should support the SHA-256 hash, which uses the key `sha256`. + */ + hashes: { [alg: string]: string }; + /** + * Version of the encrypted attachment's protocol. Must be `v2`. + */ + v: string; +} + +interface ThumbnailInfo { + /** + * The mimetype of the image, e.g. image/jpeg. + */ + mimetype?: string; + /** + * The intended display width of the image in pixels. + * This may differ from the intrinsic dimensions of the image file. + */ + w?: number; + /** + * The intended display height of the image in pixels. + * This may differ from the intrinsic dimensions of the image file. + */ + h?: number; + /** + * Size of the image in bytes. + */ + size?: number; +} + +interface BaseInfo { + mimetype?: string; + size?: number; +} + +/** + * Information on media attachments of msgtype `m.file` + * + * Used within `m.room.message` events that reference files. + * + * @see https://spec.matrix.org/v1.9/client-server-api/#mfile + */ +export interface FileInfo extends BaseInfo { + /** + * Information on the encrypted thumbnail file, as specified in End-to-end encryption. + * Only present if the thumbnail is encrypted. + * @see https://spec.matrix.org/v1.9/client-server-api/#sending-encrypted-attachments + */ + thumbnail_file?: EncryptedFile; + /** + * Metadata about the image referred to in thumbnail_url. + */ + thumbnail_info?: ThumbnailInfo; + /** + * The URL to the thumbnail of the file. Only present if the thumbnail is unencrypted. + */ + thumbnail_url?: string; +} + +/** + * Information on media attachments of msgtype `m.image` + * + * Used within `m.room.message` events that reference images. + * + * @see https://spec.matrix.org/v1.9/client-server-api/#mimage + */ +export interface ImageInfo extends FileInfo, ThumbnailInfo {} + +/** + * Information on media attachments of msgtype `m.audio` + * + * Used within `m.room.message` events that reference audio files. + * + * @see https://spec.matrix.org/v1.9/client-server-api/#maudio + */ +export interface AudioInfo extends BaseInfo { + /** + * The duration of the audio in milliseconds. + */ + duration?: number; +} + +/** + * Information on media attachments of msgtype `m.video` + * + * Used within `m.room.message` events that reference video files. + * + * @see https://spec.matrix.org/v1.9/client-server-api/#mvideo + */ +export interface VideoInfo extends AudioInfo, ImageInfo { + /** + * The duration of the video in milliseconds. + */ + duration?: number; +} + +/** + * Union type representing the `content.info` field of all specified media events. + */ +export type MediaEventInfo = FileInfo | ImageInfo | AudioInfo | VideoInfo; + +interface BaseContent { + /** + * Required if the file is encrypted. Information on the encrypted file, as specified in End-to-end encryption. + * @see https://spec.matrix.org/v1.9/client-server-api/#sending-encrypted-attachments + */ + file?: EncryptedFile; + /** + * Required if the file is unencrypted. The URL (typically mxc:// URI) to the file. + */ + url?: string; +} + +/** + * Content format of media events with msgtype `m.file` + * + * @see https://spec.matrix.org/v1.9/client-server-api/#mfile + */ +export interface FileContent extends BaseContent { + /** + * A human-readable description of the file. + * This is recommended to be the filename of the original upload. + */ + body: string; + /** + * The original filename of the uploaded file. + */ + filename?: string; + /** + * Information about the file referred to in url. + */ + info?: FileInfo; + /** + * One of: [m.file]. + */ + msgtype: MsgType.File; +} + +/** + * Content format of media events with msgtype `m.image` + * + * @see https://spec.matrix.org/v1.9/client-server-api/#mimage + */ +export interface ImageContent extends BaseContent { + /** + * A textual representation of the image. + * This could be the alt text of the image, the filename of the image, + * or some kind of content description for accessibility e.g. ‘image attachment’. + */ + body: string; + /** + * Metadata about the image referred to in url. + */ + info?: ImageInfo; + /** + * One of: [m.image]. + */ + msgtype: MsgType.Image; +} + +/** + * Content format of media events with msgtype `m.audio` + * + * @see https://spec.matrix.org/v1.9/client-server-api/#maudio + */ +export interface AudioContent extends BaseContent { + /** + * A description of the audio e.g. ‘Bee Gees - Stayin’ Alive’, + * or some kind of content description for accessibility e.g. ‘audio attachment’. + */ + body: string; + /** + * Metadata for the audio clip referred to in url. + */ + info?: AudioInfo; + /** + * One of: [m.audio]. + */ + msgtype: MsgType.Audio; +} + +/** + * Content format of media events with msgtype `m.video` + * + * @see https://spec.matrix.org/v1.9/client-server-api/#mvideo + */ +export interface VideoContent extends BaseContent { + /** + * A description of the video e.g. ‘Gangnam style’, + * or some kind of content description for accessibility e.g. ‘video attachment’. + */ + body: string; + /** + * Metadata about the video clip referred to in url. + */ + info?: VideoInfo; + /** + * One of: [m.video]. + */ + msgtype: MsgType.Video; +} + +/** + * Type representing media event contents for `m.room.message` events listed in the Matrix specification + */ +export type MediaEventContent = FileContent | ImageContent | AudioContent | VideoContent; diff --git a/src/types.ts b/src/types.ts new file mode 100644 index 00000000000..dd2d3bef894 --- /dev/null +++ b/src/types.ts @@ -0,0 +1,24 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +/* + * This file is a secondary entrypoint for the js-sdk library, for use by Typescript projects. + * It exposes low-level types and interfaces reflecting structures defined in the Matrix specification. + * + * Remember to only export *public* types from this file. + */ + +export type * from "./@types/media"; diff --git a/typedoc.json b/typedoc.json index 020431ceacf..017c3a4d6d7 100644 --- a/typedoc.json +++ b/typedoc.json @@ -2,7 +2,7 @@ "$schema": "https://typedoc.org/schema.json", "plugin": ["typedoc-plugin-mdn-links", "typedoc-plugin-missing-exports", "typedoc-plugin-coverage"], "coverageLabel": "TypeDoc", - "entryPoints": ["src/matrix.ts"], + "entryPoints": ["src/matrix.ts", "src/types.ts"], "excludeExternals": true, "out": "_docs" } From 4c26b55c9a3fd9b1d6f2badc712298c0add38a01 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 12 Mar 2024 13:38:32 +0000 Subject: [PATCH 114/595] Update dependency typedoc to v0.25.11 (#4102) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index 8d6469c8e76..a55e9bf8d65 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4712,9 +4712,9 @@ json5@^2.2.3: integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" - integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== + version "3.2.1" + resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.1.tgz#031904571ccf929d7670ee8c547545081cb37f1a" + integrity sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA== jwt-decode@^4.0.0: version "4.0.0" @@ -6171,9 +6171,9 @@ typedoc-plugin-missing-exports@^2.0.0: integrity sha512-2+XR1IcyQ5UwXZVJe9NE6HrLmNufT9i5OwoIuuj79VxuA3eYq+Y6itS9rnNV1D7UeQnUSH8kISYD73gHE5zw+w== typedoc@^0.25.10: - version "0.25.10" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.25.10.tgz#572f566498e4752fdbc793ccc14b8eb517944770" - integrity sha512-v10rtOFojrjW9og3T+6wAKeJaGMuojU87DXGZ33sfs+554wgPTRG+s07Ag1BjPZI85Y5QPVouPI63JQ6fcQM5w== + version "0.25.11" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.25.11.tgz#75080c594c1e26b7676f90faebb367fb5a32dc8d" + integrity sha512-5MbI1W/FOG6oXsd8bdssQidSTeKh8Kt3xA5uKVzI+K99uzP8EGN45uPnPvQesyaWdD+89s4wCQdtWEd8QUbiRg== dependencies: lunr "^2.3.9" marked "^4.3.0" From da3d5c4a436daa5c6cca70f629817d12c9f989b8 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 12 Mar 2024 18:33:38 +0000 Subject: [PATCH 115/595] v31.5.0 --- CHANGELOG.md | 11 +++++++++++ package.json | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7fa65a2bba3..1ad9c4ad20b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +Changes in [31.5.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.5.0) (2024-03-12) +================================================================================================== +## ✨ Features + +* Update MSC2965 OIDC Discovery implementation ([#4064](https://github.com/matrix-org/matrix-js-sdk/pull/4064)). Contributed by @t3chguy. + +## 🐛 Bug Fixes + +* Add basic retry for rust crypto outgoing requests ([#4061](https://github.com/matrix-org/matrix-js-sdk/pull/4061)). Contributed by @BillCarsonFr. + + Changes in [31.4.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.4.0) (2024-02-27) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index c2c160d8784..e1088af622b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.5.0-rc.0", + "version": "31.5.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 461aeae2815a223c817c9768e26220cec4a69d12 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 12 Mar 2024 18:34:34 +0000 Subject: [PATCH 116/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 0d270799588..09e51551b62 100644 --- a/package.json +++ b/package.json @@ -30,8 +30,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -131,6 +131,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From c22a6858c85b039e4adfdac129308397a10729d6 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 12 Mar 2024 18:53:44 +0000 Subject: [PATCH 117/595] Temporarily disable broken step in the release process Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-make.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index bc54cd6150c..0847e0aa0c1 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -294,15 +294,15 @@ jobs: remove-labels: X-Upcoming-Release-Blocker add-labels: X-Release-Blocker - - name: Wait for master->develop gitflow merge - if: inputs.final - uses: t3chguy/wait-on-check-action@18541021811b56544d90e0f073401c2b99e249d6 # fork - with: - ref: master - repo-token: ${{ secrets.GITHUB_TOKEN }} - wait-interval: 10 - check-name: merge - allowed-conclusions: success + # - name: Wait for master->develop gitflow merge + # if: inputs.final + # uses: t3chguy/wait-on-check-action@18541021811b56544d90e0f073401c2b99e249d6 # fork + # with: + # ref: master + # repo-token: ${{ secrets.GITHUB_TOKEN }} + # wait-interval: 10 + # check-name: merge + # allowed-conclusions: success bump-downstreams: name: Update npm dependency in downstream projects From 8e0ef5ff2cd927efa1bd22cabb075a14b10e39d5 Mon Sep 17 00:00:00 2001 From: Kim Brose <2803622+HarHarLinks@users.noreply.github.com> Date: Wed, 13 Mar 2024 18:01:11 +0100 Subject: [PATCH 118/595] fix automatic DM avatar with functional members (#4017) * fix automatic DM avatar with functional members * update comments * lint * add tests for functional members * keep functional members out of the public API - remove public API for functional members, reverting most of 0ce2d82, f9b41f6, e65fb24 - remove tests for functional members public API c114bf5 - add shared functional members getter for both room name and avatar fallback generation * filter functional members from more candidates - remove from hero(es) - remove from previous members * add tests for fallback avatars with functional members * Add docstring for getFunctionalMembers Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * inline getInvitedAndJoinedFunctionalMemberCount * update comments for getAvatarFallbackMember * use correct list of heroes in getAvatarFallbackMember * remove redundant type annotation * optimize performance of invitedAndJoinedFunctionalMemberCount * calculate nonFunctionalMemberCount in one step instead of iterating redundantly * clean up functional member tests with review feedback * lint * Update src/models/room.ts Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * apply feedback about comments * non-functional per review, lint --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- spec/unit/room.spec.ts | 74 +++++++++++++++++++++++++++++++++++++++++- src/models/room.ts | 74 +++++++++++++++++++++++++++++------------- 2 files changed, 124 insertions(+), 24 deletions(-) diff --git a/spec/unit/room.spec.ts b/spec/unit/room.spec.ts index 4d64e4df54d..4e14ca099a4 100644 --- a/spec/unit/room.spec.ts +++ b/spec/unit/room.spec.ts @@ -2204,7 +2204,7 @@ describe("Room", function () { }); describe("getAvatarFallbackMember", () => { - it("should should return undefined if the room isn't a 1:1", () => { + it("should return undefined if the room isn't a 1:1", () => { const room = new Room(roomId, null!, userA); room.currentState.setJoinedMemberCount(2); room.currentState.setInvitedMemberCount(1); @@ -2231,6 +2231,78 @@ describe("Room", function () { }); expect(room.getAvatarFallbackMember()?.userId).toBe(userD); }); + + it("should return undefined if the room is a 1:1 plus functional member", async function () { + const room = new Room(roomId, null!, userA); + await room.currentState.setStateEvents([ + utils.mkMembership({ + user: userA, + mship: "join", + room: roomId, + event: true, + name: "User A", + }), + utils.mkMembership({ + user: userB, + mship: "join", + room: roomId, + event: true, + name: "User B", + }), + utils.mkEvent({ + type: UNSTABLE_ELEMENT_FUNCTIONAL_USERS.name, + skey: "", + room: roomId, + event: true, + content: { + service_members: [userB], + }, + }), + ]); + expect(room.getAvatarFallbackMember()).toBeUndefined(); + }); + + it("should pick nonfunctional member from summary heroes if room is a 1:1 plus functional member", async function () { + const room = new Room(roomId, null!, userA); + await room.currentState.setStateEvents([ + utils.mkMembership({ + user: userA, + mship: "join", + room: roomId, + event: true, + name: "User A", + }), + utils.mkMembership({ + user: userB, + mship: "join", + room: roomId, + event: true, + name: "User B", + }), + utils.mkMembership({ + user: userD, + mship: "join", + room: roomId, + event: true, + name: "User D", + }), + utils.mkEvent({ + type: UNSTABLE_ELEMENT_FUNCTIONAL_USERS.name, + skey: "", + room: roomId, + event: true, + content: { + service_members: [userB], + }, + }), + ]); + room.setSummary({ + "m.heroes": [userA, userD, userB], + "m.joined_member_count": 2, + "m.invited_member_count": 1, + }); + expect(room.getAvatarFallbackMember()?.userId).toBe(userD); + }); }); describe("maySendMessage", function () { diff --git a/src/models/room.ts b/src/models/room.ts index 67aea690756..7289185e6f6 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -914,37 +914,69 @@ export class Room extends ReadReceipt { return this.myUserId; } - public getAvatarFallbackMember(): RoomMember | undefined { - const memberCount = this.getInvitedAndJoinedMemberCount(); - if (memberCount > 2) { - return; + /** + * Gets the "functional members" in this room. + * + * Returns the list of userIDs from the `io.element.functional_members` event. Does not consider the + * current membership states of those users. + * + * @see https://github.com/element-hq/element-meta/blob/develop/spec/functional_members.md. + */ + private getFunctionalMembers(): string[] { + const mFunctionalMembers = this.currentState.getStateEvents(UNSTABLE_ELEMENT_FUNCTIONAL_USERS.name, ""); + if (Array.isArray(mFunctionalMembers?.getContent().service_members)) { + return mFunctionalMembers!.getContent().service_members; } - const hasHeroes = Array.isArray(this.summaryHeroes) && this.summaryHeroes.length; + return []; + } + + public getAvatarFallbackMember(): RoomMember | undefined { + const functionalMembers = this.getFunctionalMembers(); + + // Only generate a fallback avatar if the conversation is with a single specific other user (a "DM"). + let nonFunctionalMemberCount = 0; + this.getMembers()!.forEach((m) => { + if (m.membership !== "join" && m.membership !== "invite") return; + if (functionalMembers.includes(m.userId)) return; + nonFunctionalMemberCount++; + }); + if (nonFunctionalMemberCount > 2) return; + + // Prefer the list of heroes, if present. It should only include the single other user in the DM. + const nonFunctionalHeroes = this.summaryHeroes?.filter((h) => !functionalMembers.includes(h)); + const hasHeroes = Array.isArray(nonFunctionalHeroes) && nonFunctionalHeroes.length; if (hasHeroes) { - const availableMember = this.summaryHeroes!.map((userId) => { - return this.getMember(userId); - }).find((member) => !!member); + const availableMember = nonFunctionalHeroes + .map((userId) => { + return this.getMember(userId); + }) + .find((member) => !!member); if (availableMember) { return availableMember; } } - const members = this.currentState.getMembers(); - // could be different than memberCount - // as this includes left members - if (members.length <= 2) { - const availableMember = members.find((m) => { + + // Consider *all*, including previous, members, to generate the avatar for DMs where the other user left. + // Needed to generate a matching avatar for rooms named "Empty Room (was Alice)". + const members = this.getMembers(); + const nonFunctionalMembers = members?.filter((m) => !functionalMembers.includes(m.userId)); + if (nonFunctionalMembers.length <= 2) { + const availableMember = nonFunctionalMembers.find((m) => { return m.userId !== this.myUserId; }); if (availableMember) { return availableMember; } } - // if all else fails, try falling back to a user, - // and create a one-off member for it + + // If all else failed, but the homeserver gave us heroes that previously could not be found in the room members, + // trust and try falling back to a hero, creating a one-off member for it if (hasHeroes) { - const availableUser = this.summaryHeroes!.map((userId) => { - return this.client.getUser(userId); - }).find((user) => !!user); + const availableUser = nonFunctionalHeroes + .map((userId) => { + return this.client.getUser(userId); + }) + .find((user) => !!user); if (availableUser) { const member = new RoomMember(this.roomId, availableUser.userId); member.user = availableUser; @@ -3351,11 +3383,7 @@ export class Room extends ReadReceipt { let inviteJoinCount = joinedMemberCount + invitedMemberCount - 1; // get service members (e.g. helper bots) for exclusion - let excludedUserIds: string[] = []; - const mFunctionalMembers = this.currentState.getStateEvents(UNSTABLE_ELEMENT_FUNCTIONAL_USERS.name, ""); - if (Array.isArray(mFunctionalMembers?.getContent().service_members)) { - excludedUserIds = mFunctionalMembers!.getContent().service_members; - } + const excludedUserIds = this.getFunctionalMembers(); // get members that are NOT ourselves and are actually in the room. let otherNames: string[] = []; From 3e989006aaf0f2ab85369b62472c80f5b2281db3 Mon Sep 17 00:00:00 2001 From: Valere Date: Mon, 18 Mar 2024 09:57:53 +0100 Subject: [PATCH 119/595] Migrate own identity local trust to rust crypto (#4090) * Migrate own identity trust to rust crypto * Fix gendoc not happy if msk of IDownloadKeyResult has a signature * add missing mock * code review * Code review * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * review move function down in file * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review: Cleaning tests, renaming * Review: better comment Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Comment paragraphs * retry until initial key query is successfull * review quick nits * missing mock in test --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- spec/integ/crypto/rust-crypto.spec.ts | 306 +- .../test_indexeddb_cryptostore_dump/README.md | 10 +- .../test_indexeddb_cryptostore_dump/dump.json | 71732 ---------------- .../full_account/README.md | 4 + .../full_account/dump.json | 71038 +++++++++++++++ .../full_account/index.ts | 109 + .../test_indexeddb_cryptostore_dump/index.ts | 28 +- .../no_cached_msk_dump/README.md | 4 + .../no_cached_msk_dump/dump.json | 189 + .../no_cached_msk_dump/index.ts | 260 + .../unverified/README.md | 4 + .../unverified/dump.json | 117 + .../unverified/index.ts | 110 + spec/unit/rust-crypto/rust-crypto.spec.ts | 3 + src/rust-crypto/index.ts | 29 +- src/rust-crypto/libolm_migration.ts | 100 + src/rust-crypto/rust-crypto.ts | 10 + 17 files changed, 72177 insertions(+), 71876 deletions(-) delete mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/dump.json create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/full_account/README.md create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/full_account/dump.json create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/full_account/index.ts create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/README.md create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/dump.json create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/unverified/README.md create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/unverified/dump.json create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/unverified/index.ts diff --git a/spec/integ/crypto/rust-crypto.spec.ts b/spec/integ/crypto/rust-crypto.spec.ts index 762bfa0cf05..b3fa474114b 100644 --- a/spec/integ/crypto/rust-crypto.spec.ts +++ b/spec/integ/crypto/rust-crypto.spec.ts @@ -20,6 +20,9 @@ import fetchMock from "fetch-mock-jest"; import { createClient, CryptoEvent, IndexedDBCryptoStore } from "../../../src"; import { populateStore } from "../../test-utils/test_indexeddb_cryptostore_dump"; +import { MSK_NOT_CACHED_DATASET } from "../../test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump"; +import { IDENTITY_NOT_TRUSTED_DATASET } from "../../test-utils/test_indexeddb_cryptostore_dump/unverified"; +import { FULL_ACCOUNT_DATASET } from "../../test-utils/test_indexeddb_cryptostore_dump/full_account"; jest.setTimeout(15000); @@ -93,150 +96,197 @@ describe("MatrixClient.initRustCrypto", () => { await matrixClient.initRustCrypto(); }); - it("should migrate from libolm", async () => { - fetchMock.get("path:/_matrix/client/v3/room_keys/version", { - auth_data: { - public_key: "q+HZiJdHl2Yopv9GGvv7EYSzDMrAiRknK4glSdoaomI", - signatures: { - "@vdhtest200713:matrix.org": { - "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": - "reDp6Mu+j+tfUL3/T6f5OBT3N825Lzpc43vvG+RvjX6V+KxXzodBQArgCoeEHLtL9OgSBmNrhTkSOX87MWCKAw", - "ed25519:KMFSTJSMLB": - "F8tyV5W6wNi0GXTdSg+gxSCULQi0EYxdAAqfkyNq58KzssZMw5i+PRA0aI2b+D7NH/aZaJrtiYNHJ0gWLSQvAw", - }, - }, - }, - version: "7", - algorithm: "m.megolm_backup.v1.curve25519-aes-sha2", - etag: "1", - count: 79, + describe("Libolm Migration", () => { + beforeEach(() => { + fetchMock.reset(); }); - fetchMock.post("path:/_matrix/client/v3/keys/query", { - device_keys: { - "@vdhtest200713:matrix.org": { - KMFSTJSMLB: { - algorithms: ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], - device_id: "KMFSTJSMLB", - keys: { - "curve25519:KMFSTJSMLB": "LKv0bKbc0EC4h0jknbemv3QalEkeYvuNeUXVRgVVTTU", - "ed25519:KMFSTJSMLB": "qK70DEqIXq7T+UU3v/al47Ab4JkMEBLpNrTBMbS5rrw", - }, - user_id: "@vdhtest200713:matrix.org", - signatures: { - "@vdhtest200713:matrix.org": { - "ed25519:KMFSTJSMLB": - "aE+PdxLAdwQ/xfJwLmqebvt/lrT97fZas2SQFFrM+dPmHxQtjyS8csm88BLfGRjJKK1B/vWev3AaKqQZwLTUAw", - "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": - "lCd4SA/JT1nnxsgN9yQaLJQhH5hkLMVVx6ba5JAjL1wpWVqyPxzMJHImX6vTztk6S8rybcdfYkea5W/Ii+4HCQ", - }, - }, - }, - }, - }, - master_keys: { - "@vdhtest200713:matrix.org": { - user_id: "@vdhtest200713:matrix.org", - usage: ["master"], - keys: { - "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": - "gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI", - }, - signatures: { - "@vdhtest200713:matrix.org": { - "ed25519:MWOGVUTXZN": - "stOu1aHbhsWB/Aj5M/HqBR83QzME+682C995Uc8JxSmmyrlWmgG8QrnoUDG2OFR1t6zNQ+QLEilU4WNEOV73DQ", - }, - }, - }, - }, - self_signing_keys: { - "@vdhtest200713:matrix.org": { - user_id: "@vdhtest200713:matrix.org", - usage: ["self_signing"], - keys: { - "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": - "lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k", + it("should migrate from libolm", async () => { + fetchMock.get("path:/_matrix/client/v3/room_keys/version", FULL_ACCOUNT_DATASET.backupResponse); + + fetchMock.post("path:/_matrix/client/v3/keys/query", FULL_ACCOUNT_DATASET.keyQueryResponse); + + const testStoreName = "test-store"; + await populateStore(testStoreName, FULL_ACCOUNT_DATASET.dumpPath); + const cryptoStore = new IndexedDBCryptoStore(indexedDB, testStoreName); + + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: FULL_ACCOUNT_DATASET.userId, + deviceId: FULL_ACCOUNT_DATASET.deviceId, + cryptoStore, + pickleKey: FULL_ACCOUNT_DATASET.pickleKey, + }); + + const progressListener = jest.fn(); + matrixClient.addListener(CryptoEvent.LegacyCryptoStoreMigrationProgress, progressListener); + + await matrixClient.initRustCrypto(); + + const verificationStatus = await matrixClient + .getCrypto()! + .getDeviceVerificationStatus(FULL_ACCOUNT_DATASET.userId, FULL_ACCOUNT_DATASET.deviceId); + + // Check that the current device and identity trust is migrated correctly just after migration + expect(verificationStatus).toBeDefined(); + expect(verificationStatus!.crossSigningVerified).toEqual(true); + expect(verificationStatus!.signedByOwner).toEqual(true); + + // Do some basic checks on the imported data + const deviceKeys = await matrixClient.getCrypto()!.getOwnDeviceKeys(); + expect(deviceKeys.curve25519).toEqual("LKv0bKbc0EC4h0jknbemv3QalEkeYvuNeUXVRgVVTTU"); + expect(deviceKeys.ed25519).toEqual("qK70DEqIXq7T+UU3v/al47Ab4JkMEBLpNrTBMbS5rrw"); + + expect(await matrixClient.getCrypto()!.getActiveSessionBackupVersion()).toEqual("7"); + + expect(await matrixClient.getCrypto()!.isEncryptionEnabledInRoom("!CWLUCoEWXSFyTCOtfL:matrix.org")).toBe( + true, + ); + + // check the progress callback + expect(progressListener.mock.calls.length).toBeGreaterThan(50); + + // The first call should have progress == 0 + const [firstProgress, totalSteps] = progressListener.mock.calls[0]; + expect(totalSteps).toBeGreaterThan(3000); + expect(firstProgress).toEqual(0); + + for (let i = 1; i < progressListener.mock.calls.length - 1; i++) { + const [progress, total] = progressListener.mock.calls[i]; + expect(total).toEqual(totalSteps); + expect(progress).toBeGreaterThan(progressListener.mock.calls[i - 1][0]); + expect(progress).toBeLessThanOrEqual(totalSteps); + } + + // The final call should have progress == total == -1 + expect(progressListener).toHaveBeenLastCalledWith(-1, -1); + }, 60000); + + describe("Legacy trust migration", () => { + async function populateAndStartLegacyCryptoStore(dumpPath: string): Promise { + const testStoreName = "test-store"; + await populateStore(testStoreName, dumpPath); + const cryptoStore = new IndexedDBCryptoStore(indexedDB, testStoreName); + await cryptoStore.startup(); + return cryptoStore; + } + + it("should not revert to untrusted if legacy was trusted but msk not in cache, big account", async () => { + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { + errcode: "M_NOT_FOUND", + error: "No backup found", }, - signatures: { - "@vdhtest200713:matrix.org": { - "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": - "HKTC7NoBhAkfJtmemmkn/HvCCgBQViWZ0uH7aGPRaWMDFgD8T7Q+y1j3FKZv4mhSopR85Fq3FRyXsG8OVvGeBA", - }, - }, - }, - }, - user_signing_keys: { - "@vdhtest200713:matrix.org": { - user_id: "@vdhtest200713:matrix.org", - usage: ["user_signing"], - keys: { - "ed25519:YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8": - "YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8", - }, - signatures: { - "@vdhtest200713:matrix.org": { - "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": - "u8VOi4IaeRJwDgy2ftK02NJQPdBijy8f/0+WnHGG72yfOvMthwWzEw8SrRSNG8glBNrfHinKwCyJJzAJwyepCQ", - }, - }, - }, - }, - }); + }); - const testStoreName = "test-store"; - await populateStore(testStoreName); - const cryptoStore = new IndexedDBCryptoStore(indexedDB, testStoreName); + fetchMock.post("path:/_matrix/client/v3/keys/query", FULL_ACCOUNT_DATASET.keyQueryResponse); - const matrixClient = createClient({ - baseUrl: "http://test.server", - userId: "@vdhtest200713:matrix.org", - deviceId: "KMFSTJSMLB", - cryptoStore, - pickleKey: "+1k2Ppd7HIisUY824v7JtV3/oEE4yX0TqtmNPyhaD7o", - }); + const cryptoStore = await populateAndStartLegacyCryptoStore(FULL_ACCOUNT_DATASET.dumpPath); - const progressListener = jest.fn(); - matrixClient.addListener(CryptoEvent.LegacyCryptoStoreMigrationProgress, progressListener); + // Remove the master key from the cache + await cryptoStore.doTxn("readwrite", [IndexedDBCryptoStore.STORE_ACCOUNT], (txn) => { + const objectStore = txn.objectStore("account"); + objectStore.delete(`ssss_cache:master`); + }); - await matrixClient.initRustCrypto(); + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: FULL_ACCOUNT_DATASET.userId, + deviceId: FULL_ACCOUNT_DATASET.deviceId, + cryptoStore, + pickleKey: FULL_ACCOUNT_DATASET.pickleKey, + }); + + await matrixClient.initRustCrypto(); + + const verificationStatus = await matrixClient + .getCrypto()! + .getUserVerificationStatus(FULL_ACCOUNT_DATASET.userId); + + expect(verificationStatus.isCrossSigningVerified()).toBe(true); + }, 60000); - const verificationStatus = await matrixClient - .getCrypto()! - .getDeviceVerificationStatus("@vdhtest200713:matrix.org", "KMFSTJSMLB"); + it("should not revert to untrusted if legacy was trusted but msk not in cache", async () => { + fetchMock.get("path:/_matrix/client/v3/room_keys/version", MSK_NOT_CACHED_DATASET.backupResponse); - // Check that the current device and identity trust is migrated correctly just after migration - expect(verificationStatus).toBeDefined(); - expect(verificationStatus!.crossSigningVerified).toEqual(true); - expect(verificationStatus!.signedByOwner).toEqual(true); + fetchMock.post("path:/_matrix/client/v3/keys/query", MSK_NOT_CACHED_DATASET.keyQueryResponse); - // Do some basic checks on the imported data - const deviceKeys = await matrixClient.getCrypto()!.getOwnDeviceKeys(); - expect(deviceKeys.curve25519).toEqual("LKv0bKbc0EC4h0jknbemv3QalEkeYvuNeUXVRgVVTTU"); - expect(deviceKeys.ed25519).toEqual("qK70DEqIXq7T+UU3v/al47Ab4JkMEBLpNrTBMbS5rrw"); + const cryptoStore = await populateAndStartLegacyCryptoStore(MSK_NOT_CACHED_DATASET.dumpPath); - expect(await matrixClient.getCrypto()!.getActiveSessionBackupVersion()).toEqual("7"); + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: MSK_NOT_CACHED_DATASET.userId, + deviceId: MSK_NOT_CACHED_DATASET.deviceId, + cryptoStore, + pickleKey: MSK_NOT_CACHED_DATASET.pickleKey, + }); - expect(await matrixClient.getCrypto()!.isEncryptionEnabledInRoom("!CWLUCoEWXSFyTCOtfL:matrix.org")).toBe(true); + await matrixClient.initRustCrypto(); - // check the progress callback - expect(progressListener.mock.calls.length).toBeGreaterThan(50); + const verificationStatus = await matrixClient + .getCrypto()! + .getUserVerificationStatus("@migration:localhost"); - // The first call should have progress == 0 - const [firstProgress, totalSteps] = progressListener.mock.calls[0]; - expect(totalSteps).toBeGreaterThan(3000); - expect(firstProgress).toEqual(0); + expect(verificationStatus.isCrossSigningVerified()).toBe(true); + }); - for (let i = 1; i < progressListener.mock.calls.length - 1; i++) { - const [progress, total] = progressListener.mock.calls[i]; - expect(total).toEqual(totalSteps); - expect(progress).toBeGreaterThan(progressListener.mock.calls[i - 1][0]); - expect(progress).toBeLessThanOrEqual(totalSteps); - } + it("should not migrate local trust if key has changed", async () => { + fetchMock.get("path:/_matrix/client/v3/room_keys/version", MSK_NOT_CACHED_DATASET.backupResponse); - // The final call should have progress == total == -1 - expect(progressListener).toHaveBeenLastCalledWith(-1, -1); - }, 60000); + fetchMock.post("path:/_matrix/client/v3/keys/query", MSK_NOT_CACHED_DATASET.rotatedKeyQueryResponse); + + const cryptoStore = await populateAndStartLegacyCryptoStore(MSK_NOT_CACHED_DATASET.dumpPath); + + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: MSK_NOT_CACHED_DATASET.userId, + deviceId: MSK_NOT_CACHED_DATASET.deviceId, + cryptoStore, + pickleKey: MSK_NOT_CACHED_DATASET.pickleKey, + }); + + await matrixClient.initRustCrypto(); + + const verificationStatus = await matrixClient + .getCrypto()! + .getUserVerificationStatus("@migration:localhost"); + + expect(verificationStatus.isCrossSigningVerified()).toBe(false); + }); + + it("should not migrate local trust if was not trusted in legacy", async () => { + // Just 404 here for the test + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { + errcode: "M_NOT_FOUND", + error: "No backup found", + }, + }); + + fetchMock.post("path:/_matrix/client/v3/keys/query", IDENTITY_NOT_TRUSTED_DATASET.keyQueryResponse); + + const cryptoStore = await populateAndStartLegacyCryptoStore(IDENTITY_NOT_TRUSTED_DATASET.dumpPath); + + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: IDENTITY_NOT_TRUSTED_DATASET.userId, + deviceId: IDENTITY_NOT_TRUSTED_DATASET.deviceId, + cryptoStore, + pickleKey: IDENTITY_NOT_TRUSTED_DATASET.pickleKey, + }); + + await matrixClient.initRustCrypto(); + + const verificationStatus = await matrixClient + .getCrypto()! + .getUserVerificationStatus("@untrusted:localhost"); + + expect(verificationStatus.isCrossSigningVerified()).toBe(false); + }); + }); + }); }); describe("MatrixClient.clearStores", () => { diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/README.md b/spec/test-utils/test_indexeddb_cryptostore_dump/README.md index 66d5e29e1ec..9806361dfed 100644 --- a/spec/test-utils/test_indexeddb_cryptostore_dump/README.md +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/README.md @@ -1,11 +1,13 @@ -## Dump of libolm indexeddb cryptostore +## Dumps of libolm indexeddb cryptostore -This directory contains a dump of a real indexeddb store from a session using +This directory contains several dumps of real indexeddb stores from a session using libolm crypto. -The corresponding pickle key is `+1k2Ppd7HIisUY824v7JtV3/oEE4yX0TqtmNPyhaD7o`. +Each directory contains, in dump.json, a dump of data created by pasting the following +code into the browser console; and in index.ts, details of the user, pickle key, +and corresponding key query and backup responses (`DumpDataSetInfo`). -It was created by pasting the following into the browser console: +The dump is created by pasting the following into the browser console: ```javascript async function exportIndexedDb(name) { diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/dump.json b/spec/test-utils/test_indexeddb_cryptostore_dump/dump.json deleted file mode 100644 index d50e80e93ef..00000000000 --- a/spec/test-utils/test_indexeddb_cryptostore_dump/dump.json +++ /dev/null @@ -1,71732 +0,0 @@ -{ - "account": [ - { - "value": "YzQqTsZZbgf9ih9oGIhkaJ86OqwI08XAEgWxmcXCY/m4A8xNeYXyL7AbXMr8OS28vjgu+fnL0lknwtZvgADLMikOzWykLqimk0VxvckV3hm29fWg4UrbnF7K9hoVIXznkGZfK79sZo9JyRvBGZLCng9ZV29zgGr2OSnANjQ6L87S00mytA2O2TBoy/1Dt3FEkySqE1VKzoQB7M+UJbdaJNiuNtZTSWqvFyTUx3WZMDqdrsXtBoEq3CBFTxfkTrSmLi45Xmvsu/G4YrlE4hjhxJA2KfbuY+60+scWgri2hmf4SHynZFB5/0yWaQCs9ZUZvq3CHtX/GpTSJoSHDWJXzc4Ds0vXgJXhsNDB2m1tm+gF8elWCi64BXYriRmNRgOX/Qbxeffvd6T7ogZZGXtL5zkDicUsGPOt1973Y9PkKMI1ch9sGChxtGqpMx8YnkMJJsI1Ix0z6ZYN1yc1BIkyNn1qSvU7PvzhWjbCSojAX18KXN9kO3cNnhNg0A4mUuDf09BsjmcUMXL5B6InfKLHPFchtF5s9cD1gEi4OqrYor6IFp2bgV+5HAI40go1KOMawy78GJj7TgConULYFuKQNMYRArbrhPo3RSk9djzicQI2J/CA6ztIGDDTU9kCxa23N+m+gDJABWn3UlDjV2lhM2+I8W6m3kXJTJDn7y9BMqhrit5s2TVoXxa+YhpUofCC0t9SC0TdpMoFPjqkQ3uvPdIuusvydbS/mMI801fQ+N0hcG5QSAPm0h6QiIWWP0q1PqAWHvQwXktkhHeiM3+DlITkRQ6pRxNDp5hHzTBIYkC86ll12vHRMx7jvRVDttL08K0byDIi/eamSkm1j/2I7s3irJjhnw+Z6X2IixJSoEzFT1mUjN2NL2Pha6oABpelUWu9ZkeSW+InMwzO7gloDGqcI4sm84Ye+XZqxzG5KRbo/hl6zEarlJ6d0qMGs9HzUhsaNcIy18glppe5JXObPFR437ruqte5wEWNYzxqk/DdgtYckWUlBCuct2dzw2p+l7xoO8Ah1Wn4cCY66l/7eglWnM/qtOHWChIZutH+GiYQjiAT9QswDwnZ/r/WFLFeVeLork558URMTStanNY2WhsEOh+2wY+s89p9iIsIhhrM/UmVF/BMBYZ5B5L/MceWxoF+I92b9A2n/pE9iBWQPk+iyb11PWSA4PTWE/htKcTxcWqL/KGgfOIm21OYqXTKPnuWlQcyeL2stqlFNdAs3RaezdHFb6kglQBCuUwTqOKVE5ysV1i9hjbstFffx33lyYb1OyrfDKTFjwoWaUB2uAqc7IKR/d9hyGwE0Rrq0E9vhy9KjWPfBsKsZMjJri+vIAEeDQmG1kf7Nfu7jDfhGDWwrBNwrB3IVRW9/bydOsME9T2a8/u40+o1vEcWMsKL3oqNQCnWFBGeevmdD+laC7wIqJPwXM9CGoVyk2skVyunkwGt2spyUT7CGGdkbDuVCEp3LEY0Ll+LwlaPQBcLthYulEcPGMhE1cGDwgz8nhJb+k36LJ1DsihijL8YEblEBhNKESmzIQv/kWE6577ZuLk8ynRkPpKc+iazvpYODOywsCiLpxKcDVc1zMTq/Uox/oRMAG0TXMaD4Na+lnXHA6ZPyvtU6kH0/ou/mGNiZu9rdsPd2WHNkikHz/bdzGCji+LkJgCuyS/wJJcT1T0EzreygRUsaZ7JaOMKAwP1KTgLJO+GsWTL1K4bFc8sxILVrKT9t7cFIh+ihg72zq6Gx12arJYp/H/A+BDsc5ZIlZkG5oal8+f+AyQ34vT+R1sAl2PE5qA1Tq/MbNkRPp1cY9phm7KIfdKmfg4i0WEsnK3vjic0VaGlrqE02Obzx+SVWjCa8Q47H8n5Zro3LjsPWliuXuDCEhvvDoDJMc5CouEjXqER5dpStf98V9q/+yj2t5qfuXfPS+0e8LARDSsLNge+cU/3I/tx5wnEO//SwlHti688rNp8/MIVvfKaVRLA+FXB0fJkydlK3gdEywNpUrOca7yR593auD3+o+GOsn6hXbgds0JDrFNcKukST5XpUCJI3A5Zj+NXv9cJR54u4sMSHiGVFyZkIXD0iTXluhnUQjTocRNgzuhOLi7YRF/1WMtnJlzn8vAMJmX2VS4+Mt6SAeDkLKMhAV0VyR1zx7U3iSIEuBz1UL+qcWfdwXJ5vvDINWrCMh0Tr7lPD/EDbEO7I3bgCL0zEWBXCq6VMP4Zb/l0MJBgqIqzzw/FyEUJNSLwpmj3k8DvPkXjO6O2b2TeRg8Tqqq7indhAViFBKFCuUjAxlpex3dtwlsQN6oyx+Pqa0GpLjgptlo2gI3Qy9cBg9JYZQH1oJ6J/OLX65Ni79cclBaLDrSfS3zdz2kXKrR+mWaMsFvR9Wh50p5k0it1UUEgA2XRLJGl1pdels7h/jfncAQHui8DPwZqCgee7DTj1g3l97x7mTg8GoTY+A+p/xlDpB4hcnQa2qpaW4DUgYlyIXw9DuHCGj4z5aRx4dZsDqIZPQAFKAWy1j5lS/ykibnTEpnOQypy1Idz6u2f0URRVwqlgjUHzWNoxAInf1J2mgbPtaIxfv6e9OLrJzfZYtCKkAJSclqbLNfG6G/07LeKkW7LkkXRjFw6b4yqrrZJlE8htTCWieHm+Jx3QhOQvNDYxD4bfBRKOot0MrovMvuMsk/yRnbkySsXWhdlIrifNPPq5z5wXXPjnVtUzySnoZiT9fl9Awxe3vhBkP1sgH1VH47Op7f02W12bK9Lhik0NmMNoIDHb0Q2kz6SuqENj8sw2t+UO23zbJn/gBNSy3gIfVgGW/1offiGUmkF07BCmzDUsLduJFOXVPJltv5ZNXC+1JD2z9OYF6z+Nf7V061zbQSs/t07uMyo3+dVmrCPQF+8M6PDy/h/uvVOsei8Go8CKJwXrfog2DxU0BSkQQHE0kSQ8+qocCuggeqnJ5AXVHpmC+Xj0cNXCxw+uHExISfzRNqkvfo3bcptv0ovYaPmLoiRCJY3mL5U8DRhlUl6SMgTv3DMlB3UwKCIx7HHePmEEOSPhw8tTfzaHOBGJ5L/C+kKD1DN38o2V+ZBZSK+O59A4u5GLMgamMtQt9e+x8HqeSJY4P/+Ot7AoTlWVepAhY4khHPHwpSxo5Mi8F4RRJfF7gxXlg4EWuk89tNQdN7F4CJTNEY7vm8W4zMDBYdcqEBte4ptCxd2xe9Ik+I1VhJiE0D7lZBza8cjb+4TDu/36dgozwXJ3bZmpp04Du/FAwsiqmQ2C7eFboo9xS/MZ2cdVlbioRfUaxu9BzZnZEA0G9J6JYj+nlabcXdGMHE6BG2E7pY7pmahF3GvR7vff2sRJWQmJk9KyDNzBh/XhdUGy255fwMa56ji9qyxhGONo9+A2unjxUcrgC2HsXuKrPUWQaPGt5swHnj8c7n75YepWnCX4e+Tza8+8Lu92ONRMog4I6Nb4gBDheLCz+OTSe/AyM9FqsKGW1Z1bOsEPaMAjF63GIrofHgObyzb883Gq+4n7lf8eXUEaF/C5rhRJwox9vBPoWQko7idd1hQJ+qC75xlUEK/IY9r6sRUSmgPcRtee9aO+BJK3sUeOLnPn5atTmACsDwrkFbxgwjrPAKwdHbp7GH9YiwKjx4ATV8NTQ3P7GHRWZyOx/4hedrSBUjNl0zYJ3DIiG8MB1/NGIz3mz0YRW9s7Zobh13meBULvPKZyyC4iRe5zSc5eL/mJnKumKUZir9K6wHGsh6hOout0ZBVMp4ACHTf07E2uv0pviq8Fg2bo3GWysdpFOWyPGK3QCD26EpHpX66IK+7PqDe83fu/YmKnktbgwtcxWtmSLiv+qrLVMruQKIAhC5nNup2ACBVfT7MLZDkTX4FE7WhkfzwMXm940MOkblW/BaNizWXncdiJipOg2v9eQG8/7k7wDg0w+H0EwdGpvADY2GB7knuJ6IZZQLAQpXZCEajJrWQoOMIGoUqbkng8J5wJUzhoutt8qWPpZvWbjqVpcCiCHf7l/dKcbP7vATvi0ZeaksDX7b7RpAgL95DihdaNoa2KC9gQksHSijMuH7S0VSFzirolfDEaXrDJK6Zxms/v4dFuYMVI+0BaqB20FYbo/fB9pN114HTALGJYE4/SoJInWiS1Hdp0v7RqtJNV9p7c8R2kPgrDqFYjtfIgC2Fvz9s/+jo6yZSPMigCLAOXTeJlwkp5GqS7H9i4TN+0WT9jsB+f0MXv3XbX6fYtGUrbEfYcmUJcPY4aTHcdw1rMskKPAOdR0zCH6lygTbyRmzZf7U0lcoKwF0bX8GtN6q2hTWuZwTGOYhINeP/IFSYpylDB0L2DNX75B3tv2FaDRGxZX36Tya789KNukRILqWRGNltv6nJmP4CFQVjN7TWQvluUE+YHVPZTl7y7CMM89GRBisAV6oq+i1w6I47yHLzfTBaJx6W5o07hudd9LypFPT9iOqkuOVbd3oUbfLQ9pRiDdUuIq8F4Mh56pqMxea1IRQJlmNNThGjEXQh3aECLUXy3uirEYyFLr1ZwUXUlsA0HZ1W6Y1CHRkUgYzGcN442QYmNgqZpAF9Q1EPPFClj5J+ie9rp3FMCyVP3CwT0CKAgb/ktKFFDOhqDKByb+mMQbvX6eDafJPkVWzuAZ2rEr8lUQwbtArRQB+b2tALNWW/wqjKk1HFnu59yfdmV2YfmyK+LKlbFlzWWuXpjCdolOeW2zi7Ig5w9vh/gYhlDoqe1UNotg/ewye6y+TtStnEqy+wKqALkxNxRSvOaM+ZYB10Uycdst0vm4LmalH3id9x/5MgzohiqcKK3HUAo+uzn0qN2hXkME4AyGyb5n+Dswn67vEm4//K03f2/uuNJJKiitPjnM5Y9vLfUTGQJtwf/HuyLZLwqjqXcnqn+vExdUJQf7tWTyXdOUYA3c9VupRXxr0Fzv51iiE1IBvwuPzXPoKhSxlsHM3gBGbppv+HBXPM+wm2B/IgL3wtAcm+qh9p62BkU99eCeXd1NZ3UYMjxqQu9kM+c44YUAes+GcACf73etN9DgDUtqmXVRKWg43vcPa+gZtH6mKR/dfIZS7b8whnB+vC1ubj2vXAFCyFH4VIbhf7+QqKvX6YyuLU7dQh3Va1eNFLkdPRznsGNbBC44IjFeIvA8XzofbmrIxY+Txu1TSQHTHY8oj7x2N3F4OulNJ4d8rx1Ve+z98uOTVCHrLFfTMrwg80XAiJx6UxTAVd63DJUFfAZ1+SAfyWfzKX67Ln3vNEPSTzTh3JvYxCJwf5FEWaU7E4xEDWGmLROBtVvvnmfz3OiC+VTEEPCcbIOGq/6627c9FouifKcvCKTQWrfO1Ex0KnqYwWCEb1LRXSs0JmHZrHkupuQ1k4tnkXgw0yKIkWQ6YfdFVw7H5O5lDPIAsbe2YWwzo4Wx65D5cM98ryGUOUqMsvxYbSNMvZEoIhO7Mm/o8zf1+m596uI0yVamLvq2UkdNsNLz0DCBU77UgPR/1SPquIwKwETw6urwKdHiQXXqW0Z7g8h+LKQQ4CjgWN5gSCC7PW1ycD3uvUrNkDvYopu1ozVza6SGYk3r5kyYnBPBDhcEKT4SYylysSz+m35bmTYzgJ7w/R8rb32JcqtjWNOn/GyDUpVySOmeO1OSvdoMb7ilbXqm7/gnKL/TH9ulSyBZeO7Dm3I+cSohO9mPlfAR8kqoXW2e3tyqQoBgA87b8KBSDy1tbcyWbeXjWBLzyTOxH312llFPTgXVUYX5XHbRQXwtLwNYwTwjqpGtAy5ty8SN/YzTzF/sb9ynuBXwJHfNgMMtDsNyaxlUAnGMe8BsyUjnV+LkCK3zzvCBALYKahAwJULZjqushImRtz/bkoWyJNvgiPgp5gOXbIaBsTK8xTblOZxG7ZxnxzkOljLt+Cl3d4qWs3+3ZcEgNyQcUK8Q2omkmRgT1GAw6qrfWOsbxlVthQZ+XTLv1zlcz/kb7Jcz55USiUJeRoA5s", - "key": "-" - }, - { - "value": { - "master": { - "user_id": "@vdhtest200713:matrix.org", - "usage": [ - "master" - ], - "keys": { - "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI" - }, - "signatures": { - "@vdhtest200713:matrix.org": { - "ed25519:MWOGVUTXZN": "stOu1aHbhsWB/Aj5M/HqBR83QzME+682C995Uc8JxSmmyrlWmgG8QrnoUDG2OFR1t6zNQ+QLEilU4WNEOV73DQ" - } - } - }, - "self_signing": { - "user_id": "@vdhtest200713:matrix.org", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": "lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k" - }, - "signatures": { - "@vdhtest200713:matrix.org": { - "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "HKTC7NoBhAkfJtmemmkn/HvCCgBQViWZ0uH7aGPRaWMDFgD8T7Q+y1j3FKZv4mhSopR85Fq3FRyXsG8OVvGeBA" - } - } - }, - "user_signing": { - "user_id": "@vdhtest200713:matrix.org", - "usage": [ - "user_signing" - ], - "keys": { - "ed25519:YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8": "YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8" - }, - "signatures": { - "@vdhtest200713:matrix.org": { - "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "u8VOi4IaeRJwDgy2ftK02NJQPdBijy8f/0+WnHGG72yfOvMthwWzEw8SrRSNG8glBNrfHinKwCyJJzAJwyepCQ" - } - } - } - }, - "key": "crossSigningKeys" - }, - { - "value": { - "iv": "Ix3XDdAq1O0APJEv2dqM+A==", - "ciphertext": "69xWWKeZOf10wjBmFqK8/QBOe0lQ4p/ZBSssg6HRZp6hkN0aIKCOG1CzJpo=", - "mac": "K1Vg43wCF/aHlHxgPEA24e76PTOdPVHdtX8VCIgsOOc=" - }, - "key": "ssss_cache:m.megolm_backup.v1" - }, - { - "value": { - "iv": "EPH4n1t4vxhAyQNUswqhYQ==", - "ciphertext": "et5PuSlJmhS33/47zWfpillGIz9IsPtN6par0OQmeLDDdMN5pk4mI/2RlOo=", - "mac": "0mUh6v+BwSjXBc2tQW0EXK9sdG9B3aAHe/ejdrc0WmU=" - }, - "key": "ssss_cache:master" - }, - { - "value": { - "iv": "+sllp+3ICStKK/stl2h0Zg==", - "ciphertext": "k4j6scjtWtAM7O40nWcR/XzBDMV79sKQ71V9Ekwk56cN3Rttyjq6k199QSE=", - "mac": "+f+odGQCsiA+0qVjuSPdsLgLiPzDy6aEO88VOhTSeMc=" - }, - "key": "ssss_cache:self_signing" - }, - { - "value": { - "iv": "f33xnM/E04xmTXJW/CArFA==", - "ciphertext": "VOwHoadpnq6MfxH6QLSrcMTA87GWH8apULKWodhqU2EjrEPB4KHyBM0Urs0=", - "mac": "LGCzvJvF8ZfppvDVjzEfWL4Urfi0b4a4+PrdgJyJG4o=" - }, - "key": "ssss_cache:user_signing" - } - ], - "device_data": [ - { - "value": { - "devices": { - "@vdhtest200713:matrix.org": { - "KMFSTJSMLB": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:KMFSTJSMLB": "LKv0bKbc0EC4h0jknbemv3QalEkeYvuNeUXVRgVVTTU", - "ed25519:KMFSTJSMLB": "qK70DEqIXq7T+UU3v/al47Ab4JkMEBLpNrTBMbS5rrw" - }, - "verified": 1, - "known": true, - "unsigned": { - "device_display_name": "app.element.io: Firefox on Linux" - }, - "signatures": { - "@vdhtest200713:matrix.org": { - "ed25519:KMFSTJSMLB": "aE+PdxLAdwQ/xfJwLmqebvt/lrT97fZas2SQFFrM+dPmHxQtjyS8csm88BLfGRjJKK1B/vWev3AaKqQZwLTUAw", - "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": "lCd4SA/JT1nnxsgN9yQaLJQhH5hkLMVVx6ba5JAjL1wpWVqyPxzMJHImX6vTztk6S8rybcdfYkea5W/Ii+4HCQ" - } - } - } - }, - "@richvdh:sw1v.org": { - "EOZDSWJVGZ": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:EOZDSWJVGZ": "a1S+xfPfFBbrCteVaIDMtsIfU7bpzS7s/lLYFMIR3R4", - "ed25519:EOZDSWJVGZ": "ALUi8/AXqzob9EnRZQhY+o+dRIhyBTDsBvPcEAFocZY" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:EOZDSWJVGZ": "g3qebgITI2DgrIIjhw3I0oqDVEKZfBIyrELVCTP6k7jEt+n/sTp5JDB1kGnXnBoTaDXiM+Wun1re1gQtcyXCDw", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "VZnsWQNe7fGMs+VmcTR0H5j+EC4MhDoF3hTa+wRVDBP6jyYa2tEEVHv+TEGi1T9YF1KC2s7LNR8buBhTYRp4Ag" - } - } - }, - "HKJDOCYFVC": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:HKJDOCYFVC": "63T7anu0SxzQJRFnvmHXuQuSW63plQdt00phE4lT5HM", - "ed25519:HKJDOCYFVC": "fWPPk81MUp3kofc5SR+yEg8c99XXt49pQH+iSefcbJ0" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:HKJDOCYFVC": "e0ihV63QUZASHlhlQGdOpzmpl7J8YGpyzShbFaW/1QIDcFMB+BAB6lBfQG8y2wm/OTYTD5h1I86LBGOn5rlLCQ", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "x8eaYJl5U9lOII0G6WRfcvuzxBN0Gfld5aBTjKdw0FYIqj8GXQxGwYtSwOvHf53qHMi9KTKsUPy5lpHRiK8zDA" - } - } - }, - "HSTVHNERPD": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:HSTVHNERPD": "cEclEvdd10LF2nGoGk/cLca3JF/xOLAdOI9JwPnIymo", - "ed25519:HSTVHNERPD": "voqnZuAvbvspPMNsKBpsuir6X50ZLIe+n0mVIABaSIc" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:HSTVHNERPD": "J0olfuCA5HU5mdhAuzGE82OfQPw6+8vVP0UusNcYYmxA0LfglbKTsUibeg2fkZ2GqteE67lvtas/jZLp84QeAA", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "dcZD4ednHsFT5U2KY8Eqi87PoSWAlgYlfw4C2MKwyF/JVn/osxS0sVfJ/Ic515yyNptkJUwg8ncDpwC4bJBmCw" - } - } - }, - "ZGCLWKIWBA": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:ZGCLWKIWBA": "OTxw0aeaAVJpVZEfQsP7e4W8Bm8NDbAHvqWaPSiLlGM", - "ed25519:ZGCLWKIWBA": "Q01BBDzr0n99CBtdTbXFs6f7oMQyY9TM6zGenzSu4ZA" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:ZGCLWKIWBA": "XdGYAGCR23aL+MBCAbRCndtr3wzk0FybzAq3Lv0ij5lVC8FQ+uAjEpk2PK0eK07EPZkcF/al/wp5Gb3mJOjNBg", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "sYggSZ7JCRafecX8zjik2CVmYSn6o2EyYER7+fos+kc5nKmVDsehas+b27Lp2POEB6Fm8u52R/nd+k8xMmNJCg" - } - } - }, - "JAVDMNZYHJ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:JAVDMNZYHJ": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "ed25519:JAVDMNZYHJ": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:JAVDMNZYHJ": "9/eqxKLW6805L2AxynXpb1wAyoKUZB41Ta627YgT4E50wRKS/cJhGCpZlVbJDpzo3CBia77WDZe+nvkcBVOZDQ", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "8jVzaScenLBCrx+vklOWqRDsVBMbOUDfBXgIQXmFK5ho4iUwSjN/BtqOFHi8TctYHXoC3tKMhbU8TEwzWDkOAA" - } - } - }, - "JXLNGINONL": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:JXLNGINONL": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", - "ed25519:JXLNGINONL": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:JXLNGINONL": "1Ni2rxiCPIqdGcKWltvKXxBrONGBSAN3RQ9NEslmY0aGUYrda7yBi8QYlHYKlOnf3LO89dv3GMpYXuwaDkTsDg", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "OzqDMQxGp3e/ZEOura/ZPM1Nm8fNokLkYSGgQ8VeL8Q6i3KeO2xETptA92r1nJifqJlF4d2f2RvFsklDn6xqAA" - } - } - }, - "MEDYIJGLJH": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:MEDYIJGLJH": "kOqO+nKK696yoFusqIupLPLCcQismoui0Kwp2BeO2VE", - "ed25519:MEDYIJGLJH": "ipHrYNhYeOfPzKnhTWLG3QFlwe3JvQwZZQHfOPEwGHc" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:MEDYIJGLJH": "3uJGFIIqUUmHMSWIhhT60kKbZDFpDevhU9WCqN0KcjIlexyf2uZ4cFFhpP0neaTA1EUIRGYF8s91q6X5NViVDw", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "CNC9aEaHTyJTb99A3DYdH7W8ldNgNQ4bRYf6YxPJ6OqwROfl1RPW311U95KaR1Ev5Z1QGFzc2Nxg5eMu0zuGAQ" - } - } - }, - "NNJKPTXZQE": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:NNJKPTXZQE": "esTA6k1rTbinwz26SkeepaP3ew2sVr0YlvUALNdB4RI", - "ed25519:NNJKPTXZQE": "SbsHgQBWBZjJH8BP9QDU91yfhkQlsubxFt/FCctgrEI" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:NNJKPTXZQE": "UqMAJOnJN8kLKZ52Ic2OfHuN6cb87L+hJcppKNFL7j5kWAr9m4QRDVZran3hSnmUeRZEN6jGVwMKBdechK82Cw", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "ncJIvsvE6vNVtSEzp/1wdZpPo13uGeYQ+iv0ty9hEuQ73hLQCKBtBxJcag63RHH0lXFlT3UAglVy3KWk17omBQ" - } - } - }, - "SBXXDQMSKE": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:SBXXDQMSKE": "2GFw3YEwtKsm+5YNyqJpNnlScmgj1B2LYfLlTLhua3s", - "ed25519:SBXXDQMSKE": "KhjSd9W2zyMXigq3rItkudQBzJoUvBvwwYFZJFX+4YY" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:SBXXDQMSKE": "H46XIQjL8o8t/OPumZkKYv+QBq4QaNa9J8odEXVZU/DiZfFo/eK7m2AYversySI2NYz0zIcFg/DbZl+I9qA5Cw", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "Ru49Yrw3WKxmrcZ3RbgNIaq2zmc6R+5nRFFRtp7XDlbA96elpjjh7U8gWXYH4mZTDb/UlskaZkWluZcmkZB/Dw" - } - } - }, - "SRWBXKXIBH": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:SRWBXKXIBH": "SMi31Hip6j9FNLPdwvUWdfUYV271wkiOXhPJJdTu1Cc", - "ed25519:SRWBXKXIBH": "ZI6E3CHgJ4aKrVURICaF3TsEQeavbTXxRHnd+wsAGfY" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:SRWBXKXIBH": "ux0NsvHtUehQPHq6wFikXXVPTlppIQwhzQNWFe6U4+fwuEXEgR//R79Ph5fVT+ZuT0OpQy5NwPdFTxxfWfQPBg", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "O775OO/Uh813BmrYUOeOvjEE6IvjGDI2DuALzmTVobXzmzNHeaaEIRP0ZYb8B+50T1mb5vGLvuXyoTt+JcRNDg" - } - } - }, - "UHORXRUAQH": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:UHORXRUAQH": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "ed25519:UHORXRUAQH": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:UHORXRUAQH": "/mMxIifj4lAC376SP+xja2kdmm6tKnIn8eANqV2PGkYFNbJWtcSS8sqRN+BZZALmy38y79AqtIlBM/lWHqIiDA", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "r9WWevjG18SY/A6SGbqyFR/bZ7PCw9AvIzMw0Ns/BpdBLUcFmm16higRS2EeURUHlNdMqTH9org/JnZ2cY/zBg" - } - } - }, - "ZOIGEATOIP": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:ZOIGEATOIP": "xw5fcGw+fsi0KmCNa43551+z0a2+1w6L9tbVwOkWui8", - "ed25519:ZOIGEATOIP": "01QCfmIo7tw4N2EFguQ/1y0UlPAXrBeKsYI0+N2nLWc" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:ZOIGEATOIP": "fMYS8b05UGXa+dByy97PzJ2ML35AQjPkHMqzFDwbTIt/kRY8mvnlSfhuOLpNHGmW+9wJUyTiBy2sO1T0exBwAw", - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "kf1WY42PfkjLuf5PBrTvImkU1ZoG9X7OX3joKqu5nlKfDbyWxHWS353vhbzeH7H7rhm+kUzm3IYqftx4rTruBA" - } - } - } - }, - "@kurt:roeckx.be": { - "HBTICASNWZ": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:HBTICASNWZ": "SKC+PqwhwJ/B73L5FzPw88VYBgBK3dFlEE7YDYvwyVE", - "ed25519:HBTICASNWZ": "6Q3ORIk5Q6t7caIXb055SsTtInRcV1IzWiOs1DPcMfk" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@kurt:roeckx.be": { - "ed25519:HBTICASNWZ": "Z3k2dFBPrbgY7ADkxHUr6z5MkMAEgBPJexLwL6oDNK7kbZ3B4DxEr4OChVkbtV1PVTMqjAaPAXiu9vf920SECg", - "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "cVGK6oZ2OKDfn0hJ2Eo77lKOv9Um6OOuLfYZ68iLN+agDzvk8zHbmV51lTB6JOzfwVapRke8sk603aM7TW/JCQ" - } - } - }, - "JLMHRLSSDZ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:JLMHRLSSDZ": "31cIbE9brvZuCKXcCItx55JU+Fva+Bq0ezSIrCFkGgQ", - "ed25519:JLMHRLSSDZ": "Ctmg3Gdrew+Az3RqmZ8t+IQoJ+eBIZI3QT30MeRUM2E" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@kurt:roeckx.be": { - "ed25519:JLMHRLSSDZ": "wN8f2z1etfqrc837+B+aTGcEbQgxJiaHWSOO3pDO24aYQWFEE4k/1prJbaV2kUvNFXsi8FZY3GkxYS1Hw1AvDg", - "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "z0PJpHDdKvrp94UtJYtyxgXe8rdYI0Hc0m+gjfTA29/zaVAVQCvY2Za4g8OSJeuDDB5INxdkBe572OPiOetyBA" - } - } - }, - "LUBZRYLJHP": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:LUBZRYLJHP": "yUwl8YCTPL7kEb58FQRAVf19I2wAVt2o2Ftg/VOG2m4", - "ed25519:LUBZRYLJHP": "ESSIjAwQ56hakZSsE6m/NZaQMZaWCvyzaIGP6koAz2c" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@kurt:roeckx.be": { - "ed25519:LUBZRYLJHP": "ApTLHserwZdXE1neGipMP13RRPJKf8rpLyqWxePAbbnRPFdO5n8r7J/lIxttctdxAkD5V7c04Y3yecJniW/YAw", - "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "eQthoQ6XzPY6ZxTswuCJArutssWllfUoZsEy8c0UE1wz7WBBUtG7wzcHAw33kNaZnT1DHS0rIMKtE4MU5/cHBg" - } - } - }, - "NFHJBQMYZZ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:NFHJBQMYZZ": "aiBpIJ72fpeX+WSGcvCnw1HEy9TIzCKzBg0NO3EDrTI", - "ed25519:NFHJBQMYZZ": "YbHpC5YeG6eiBY1p1W9DHfKZgC3U7jxKqnsbSgkvukk" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@kurt:roeckx.be": { - "ed25519:NFHJBQMYZZ": "JjcSm7jgC8MLGZbtTrPh6SnaKf+zyUJSFwqeeVMq+jtw4jTgQ/UOwG4sSX4c20DBT0i4QunlrYsujK09eOrKBA", - "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "UBETq8ou+hZx+Ua2YosP4jR0M4RKTlh2HeBvNcaPooiKtDjrwdvC1f6AIUiCrOqZuJVG841yCIGmUpMJ7gYDDA" - } - } - }, - "PIYMYYVJDV": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:PIYMYYVJDV": "u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", - "ed25519:PIYMYYVJDV": "qGVxOT77mWwNVaAaigqCJcsm8OmGQn6yjgF9MtpZPIE" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@kurt:roeckx.be": { - "ed25519:PIYMYYVJDV": "rzxBVmEC72ifRWrHk2mfA6IwxZgRAZZ2fFhItwlpbC8sy7Pbqpf7N7WZt2i1Ajo2VvgjBclHzwO1UHNf55scAg", - "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "e3TItoMON048PFPWfhxKiKH/uNq66gPEtt45FVL1RcQJiXrJzHRtF4p+nXDYw60ixyVWIDzFiY6jPsnjq5QqBg" - } - } - }, - "UJLGHZHMQF": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:UJLGHZHMQF": "Q7HO59/5Dybtc4UnRDXPTuwmNq4RG4V3zQzgMja8OEA", - "ed25519:UJLGHZHMQF": "qRFmsnrnW+JeeN/HaTbSJiZQJeo/p4KzCjy192g0eVs" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@kurt:roeckx.be": { - "ed25519:UJLGHZHMQF": "XVBte90QuLcuzlVqLtDOol6i7vxoeipikjAMsO1BIG8M83MIlwzT4vD3kCFgfAfe7BQYfEWTm4EX1lgZx6l3Cw", - "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "nedV+9gxGRnAcgvNw6dILpjczAx2IVZ6LiDAEtgkg1Zp20sMrXrHTjTHuA7OsiNoCURQiH3v41X9R8VUHIY6DQ" - } - } - }, - "YBCADHSHKU": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:YBCADHSHKU": "Hw+JwDi9Y3Th4XYEsZpMzjZC/RphOIahFUfovkZwoxI", - "ed25519:YBCADHSHKU": "kMPjHs2rsAPUEP2lBHeIY18rZfiV5+2q4mN2D/bFHFY" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@kurt:roeckx.be": { - "ed25519:YBCADHSHKU": "Ys0y3q4r2bc9VlOzhFEitFx0KgvmgDBZK7oBk3zez9u3xZLHS5lqu04Clt/wHYexjZRYV6whSXiz83oDIg4wCA", - "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "Ls3V/azCz5XIkQR9Aip7MUWrrx4qS3WwrTQUJKOfSjnboVgTc/wQ0veYdyDZHYloIkPxLQ2tXNCjeXmHyrA2Cw" - } - } - } - }, - "@grin:grin.hu": { - "FQVUFXKDDS": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:FQVUFXKDDS": "i/6zN+24Z8NE9l6Dt+3i/if5b3qLkxHR7df+VBfqcjk", - "ed25519:FQVUFXKDDS": "csd+adMV6C8HMhI8CW521s0pGnVgzE4fxRbiyVN/JDg" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@grin:grin.hu": { - "ed25519:FQVUFXKDDS": "PpUXupVbs17muD67veqOJyOadOq8vfvmKPPGFzlzJF62U/RfwjqXZwWVhW+a6v2OuJgScnXcuyXdewdFph8QDg", - "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "AHK3iLgkYY5ZCPY6o+5fC38Defoz944cCrGj+Lp0X7GifMKrtAL0NYIBuIMNN9NfDM/gcAxtbo9GAJmVVrgtCg" - } - } - }, - "GLQTEMWDOS": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:GLQTEMWDOS": "hTNj4wZVPbfGW/IiK/uZEm19LcbdTDADDkK1THCHAAc", - "ed25519:GLQTEMWDOS": "M7JTE5JfX2n/ec4Es8eA0gTTyv9yZzfW8zBYA2djmLc" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@grin:grin.hu": { - "ed25519:GLQTEMWDOS": "yYEb1eIPs1EWFZb/g0HeneXM/hYNHFqXeBk7ti4L/Pe8B7mDc4Q53wxbjOFkluw3QHbY5OFayabR9t0p03dEAA", - "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "8Q4v++FwfguYHSMkg1NsNpBTyJY6FH4zmN9z+e+z/UfQBhVa5veovZtGOepNwHraKBKDDtv26Ot7VBXwv7TeCA" - } - } - }, - "MGRMVIODGX": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:MGRMVIODGX": "bNSDqNZpKz/8PJ1mIJ0vycmcdv06HcS+nVVkE+JbZQY", - "ed25519:MGRMVIODGX": "IgwRH4lkJDuitcPotjr5bzJHTPU7ArvHv64Clvk1RUg" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@grin:grin.hu": { - "ed25519:MGRMVIODGX": "ZQYcAjZ4KffqmpjVtlwFrkIKL0BbNIl5BcwjusNjSWxsOOUwq7Qfowsry3MVhW2TvHj8oXgyxdmlXomecbm8CA", - "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "1T2xMWOz6qVkdYAo3eRnJRww9Gotq4wZxMcX7yPS2h2egvIV1ZtZiFEGp53lm7VPTgmcSTMVZFdxwDh6QgbCCA" - } - } - }, - "VAHPFTQLFI": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:VAHPFTQLFI": "XdMAC6x1bTWAoonh/rxlE5hxtNGQA9nffqBjc6CA6xo", - "ed25519:VAHPFTQLFI": "g2mVdgA2oF+6aiVGfARJVfRz9k0MBk7NEljM4Y5GSQk" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@grin:grin.hu": { - "ed25519:VAHPFTQLFI": "RaBdv9YjwTsF0p4+8NKU7bYFXpjo6UrsNWZfunifL9BX72Z8qbth19CNeBmG+yPyvNnULJreR2wyiBHn8aYCBA", - "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "h8FL6V5jn/7OjKK56oh6dqjSgQ/z1OVqbDHV0+MuIoNPGe3XdJt9iKiuOvsMLmmDF3/o2oT/NolTkJp292bBAg" - } - } - }, - "WJITQMODKQ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:WJITQMODKQ": "O9cLpLqDVe2kdgEY13aPcpEq98bfP7yrTK8scdE/+VM", - "ed25519:WJITQMODKQ": "0GijFTGrgCJRczVyuj+rHZVr2YT34ujg/ES3CThVzJU" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@grin:grin.hu": { - "ed25519:WJITQMODKQ": "IyofXUPxsEG3WL0J0sLUNj2kEW3YlnCx2ttiESWeyf1dWWIO99WM2NrYvyB/kZDX9bYgU4r5XXaYpH7D7E5LBg", - "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "+hD99HY4t+fZWM52ftFi/HtRDdoUuZ78QY93Y8z/oNYrD3uFWWlqWNrx1ahBwJL9ByxDgaa9DDO5D6zzhIA6DA" - } - } - }, - "ZTGTHRMTKE": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:ZTGTHRMTKE": "Dtw6xVfnsttwQNuuQqg0Rd9h2zHaChwTCXdKDJlT7DU", - "ed25519:ZTGTHRMTKE": "16HfSvPaoO90mggKF1nE7EaxQgNHKoRMv/Rphkgcm+8" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@grin:grin.hu": { - "ed25519:ZTGTHRMTKE": "3QL/NJnyJw5346DYUdym5i3TNO2kczmd7V/bb1EP5vrTVaB1inzVsASPp8f3gF2jARewbksi+YDgKUwU71VuBg", - "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "F9+UXRrw4OfkSEX+dk52kCC2timBjXPYsCL4M486cEPxcR8P6sighWairT/OIZS87qDezkJqWLKbrXE8T88dAg" - } - } - }, - "ZXKIUGCHXT": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:ZXKIUGCHXT": "HFE/YY8dUWPlXO8oqcpmDpE/MZqOjgt1juLqLwIjCV8", - "ed25519:ZXKIUGCHXT": "EPHcm4PzAZZTPeLfP8HtGm75QMDG7ZSJCk30nPJJmWs" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@grin:grin.hu": { - "ed25519:ZXKIUGCHXT": "oOE7kD7mXbBhaWHSG+FoHndRB/38W9ewqRxrsw6msM+AD22E3AmJa+T5jdJ6sVGQZecUTe4UPpdnCmrGCZf0Ag", - "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "/xagEwoZfJZw0tU0lC7Vxv9nPnS8mTNIft7ND9n8hLioODuvuhyDN01KUNzbMITw9mJZFdIkq26PjDpz+8bFDw" - } - } - } - }, - "@vdhtest220101:matrix.org": { - "DJMGUYPXBK": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:DJMGUYPXBK": "ECgp0f5GsDLuIxasAAUmi26pdVISMMGLdUcEXF14LzQ", - "ed25519:DJMGUYPXBK": "9Gi19lQ07x5a8sQZgWtcuKzcSbB//wP/4As121dhPYw" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "localhost:8080: Firefox on Linux" - }, - "signatures": { - "@vdhtest220101:matrix.org": { - "ed25519:DJMGUYPXBK": "bp5Xu6TqJ+c4Fb6aNMABVgEwnmynQ62YSNklI1QFm10GnJdJsH0TDx1pwMYiMfm143UnnjSprmPAzS1iEkxiAg" - } - } - }, - "NNIAEHUCUQ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:NNIAEHUCUQ": "RhqbMrR2qmjyDPGh42dsZCenEHZXQdGjeHZXO8kHc1E", - "ed25519:NNIAEHUCUQ": "Oh2/2fIdVloUUV3gYMP1RdXziWuqXuvK+5ZaoeCb2pQ" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "pr11752--matrix-react-sdk.netlify.app: Firefox on Linux" - }, - "signatures": { - "@vdhtest220101:matrix.org": { - "ed25519:NNIAEHUCUQ": "Qspk8xMW/INlNdF3ldTeYtAdWwimT20fZJ+NXLjTzciMOzNCv8MBbGS+QEaGTs1QBLjgHM5r3iXlNxTW1VvCAg" - } - } - }, - "WDQVYFDXXH": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:WDQVYFDXXH": "rcKrhE/eYja+xeDVyFeZNCHIUZKZxAHx7nDbGGnhGCM", - "ed25519:WDQVYFDXXH": "jJ/E1YpTdFlM/Eg4LtjSeHxQL73o5klPyMZfVPK744Y" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Android" - }, - "signatures": { - "@vdhtest220101:matrix.org": { - "ed25519:WDQVYFDXXH": "gT9C7oExi5lHHNFzvN3qx9huaP1ZIUGsUY8a0sJmnZUmQYA42YGECJUhyC7zdgtYeXfz7up0+k6SM1p7VSXlDw", - "ed25519:9h9S5ytahsFQpB+HrRcXSgbKx2qVXUpcDSezvGGDSCY": "8mV2wAxGvTs9XOoOJmclialDnje6ksM0mBuzvEOBuJVQm3KxXGqgWhEWr/RIhbHhX16DCPrf+vSyvsd695dGCw", - "ed25519:FQXyq0tkvx7MHMwaUPSCdNfxFHRo+Nkv6zII+nw0UMY": "OMGUG1uA6CQp5hNX0LjOmlfxMVPtoM8uZvfa+nyoLH0UchxfGWwnLbyJBc8Ns7ANR3PoCh/DqYwTW27Nxi4gBQ" - } - } - }, - "WGLUNWZYJA": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:WGLUNWZYJA": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "ed25519:WGLUNWZYJA": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "develop.element.io: Firefox on Linux" - }, - "signatures": { - "@vdhtest220101:matrix.org": { - "ed25519:WGLUNWZYJA": "B+NL84FaUixtK2sRgtdsjNaExMkgJhDwqtZ/3kPg1w14F1upNAhI7zCFFQjYAVE6Bco2CZjsdOrMWp9gjxHjAA", - "ed25519:9h9S5ytahsFQpB+HrRcXSgbKx2qVXUpcDSezvGGDSCY": "65gx/I0XqNgtQci++wfQRxbi6RQ+IXv1EZ1v831M2NgOfH9uBaL6qdMUfcC5i/M26FrChM2FPppJM94DNYelDg" - } - } - } - }, - "@bkil:grin.hu": { - "JAFFMRMJLK": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:JAFFMRMJLK": "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", - "ed25519:JAFFMRMJLK": "60YYjbRcIyRTvhEBmcT3i8siOhWoM/KVn1ZXqY2GdqA" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@bkil:grin.hu": { - "ed25519:JAFFMRMJLK": "UoDSd30s/8TTPjIFxZRC0HDRDsKjfJBXKnDashEezd8PB1hRoYAkEWiz/U7eCJKnfRtajoOBZxm1d4Hg6dQTAg", - "ed25519:7rHXNHtnx2nZN4Ht66GlpoHlcHCor4/uunfcp9zh+k8": "jY7M/LQ9hp5uY8BGySXOx6CwFE+2Ub/zkRCt39c2inC6JBYXvewSJigZc2NsAtSGWM1aXnZ/GFdSLf7S+u1/Dw" - } - } - }, - "MQJYCGHWBU": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:MQJYCGHWBU": "61NYXyvpaIegPDzGtBz1U+O6j+ui4xLLBpQuCYyzijQ", - "ed25519:MQJYCGHWBU": "oojLgiBSmG+Fu2tkSjNOFfq8NpFE7I96p3A9so8BzJI" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@bkil:grin.hu": { - "ed25519:MQJYCGHWBU": "TIawlflDiFLrSyuhxQSuN/QZNNU4VbLZhg6oIgPLCOfe1xTtuY45l5lw40U5+MUPhGu6cgjm3Nm9qYgbaHiZAQ" - } - } - }, - "YHXSLMOJGE": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:YHXSLMOJGE": "EjaGBFBdpBEc9Z5Lv03BUjeGJc0mm82JOnWuH/Vy6CQ", - "ed25519:YHXSLMOJGE": "0m6/2GjxZTZzTOxmwnfnpVnuHacUDKD5SdfebBu8S4k" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@bkil:grin.hu": { - "ed25519:YHXSLMOJGE": "xxNxrctdu0e8BhimxaEoSfDVboEXDIYtUQFzPoNxnfHx/xh3K1qK8vXOQZy1WUcvyAWNxOFfzGY3pmZgOT5EAQ" - } - } - } - }, - "@bkil:matrix.org": { - "CKFZOJCFXL": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:CKFZOJCFXL": "PVKmrZhh8EE2Hw1k5OqoVKb48QBBPKWCl76toPdStnI", - "ed25519:CKFZOJCFXL": "qbez61YpS0GC1yEsaiwcylAMECsR0d09oi7rkCIYprc" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "app.element.io: Chrome on Linux" - }, - "signatures": { - "@bkil:matrix.org": { - "ed25519:CKFZOJCFXL": "2OlmkvSj8/iHWbHSFIqxDx+sALY/c5Sz48JeBHBIooRY2PEt3ivvVxy9vwEmKuYvmenWbKOd9S5y4gg+1SRJDQ", - "ed25519:4KSe44PGKzgM0B4tNU37PRMPk/5vWm/wCjZzBFFu/KY": "ck7o5EDp2Cky6U1E+R2tn6W8wX/H8UMKTH3vvAS66gf4MXQXT/AGAD9nkg8+xSzG8ekIo+AWuD1U9TqOKNl2BA" - } - } - }, - "ZVQXYQXRGX": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:ZVQXYQXRGX": "Pog36kjaHKsGaXJP4IRSCOGco1WHId4xBLKUqzVMVi8", - "ed25519:ZVQXYQXRGX": "R4FeYr1jNYn2w64HDnZ6a3FoaHy2Cgl69yi12Xhxi/M" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Hydrogen" - }, - "signatures": { - "@bkil:matrix.org": { - "ed25519:ZVQXYQXRGX": "iurxXpyYI7lNdo4pqBOJgSHvOj3xozCuCU/6VDo4pa0899y1ebFa43I1XEUSxpVdGds9o1R25soQFNYKjz2KCw" - } - } - }, - "NKEBWJAMMJ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:NKEBWJAMMJ": "COhfP7j/5ewEf8ymxSgU5+3zOs1Y0vchnuskjEk5ehw", - "ed25519:NKEBWJAMMJ": "2TsXurAEzrR7yPk9e1Ms4Bga73RWVmPC0WYnxZQoFMw" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Dehydrated device" - }, - "signatures": { - "@bkil:matrix.org": { - "ed25519:NKEBWJAMMJ": "QnJ+/LALkJ+d+nd+YS++yN6jMBTi/k9qIZhxNhI239fgeZxKlX476i5FuEiaNVwiVX6utWPPeHjC+yJD6THYBQ" - } - } - } - }, - "@benoit.marty:matrix.org": { - "FQEUHKYYFX": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:FQEUHKYYFX": "VFOPdJuRNIy2Oo6X00TDvSdAL0GQNSWMXCaqGPogxVA", - "ed25519:FQEUHKYYFX": "0GHkiqZh4XzNFa2E1fCSQ8xNuUfOJuW2kwc5wPM/A4g" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element X Android" - }, - "signatures": { - "@benoit.marty:matrix.org": { - "ed25519:FQEUHKYYFX": "ycjA4pD+LgmBXCc42BRo5+JWSpzTHyuE8lVpmp2E6XCmh1BUhzYbqfFBM47pfggnKRH4mYZC+LT42nd9wnznDw", - "ed25519:C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE": "QCloiZ/bioxQzf0NGxx05GhzTutkUWvFZepYtifJiH6Y1Mi8xAPr0s/JCKXNpQJ39myvyMenlb4ONXl4h6b7Bw" - } - } - }, - "ALWMCXSCUP": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:ALWMCXSCUP": "q7byH74PUhDnNSiEIvka+5dbZ3vdowYCex9TbSyiASs", - "ed25519:ALWMCXSCUP": "kdpo116SEUlCGTk3sB4wJ70RVqtC7q7DsagU4HBU5g0" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Android" - }, - "signatures": { - "@benoit.marty:matrix.org": { - "ed25519:ALWMCXSCUP": "qW0ZvPr4mpcKPy3pwrMEaxt44nT+Afz9vf/+TyPfGJXp33azwKCKh06Bm6ZcEIGVMUjJp/lAsjoJjZQpk+G+DQ", - "ed25519:C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE": "sdPiGvepaDkwgbFcwZfnXUSesco5eKWM8IKGk2yiwmU8InC2Vk39gkGOrSa6ROlOcgcczl0g412RT/04+PJCDA" - } - } - }, - "KEKRFBLWLR": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:KEKRFBLWLR": "eMBHGCpDlTlosCIb0g/BZf/WzXjIlQQO+NuWgjTOh3I", - "ed25519:KEKRFBLWLR": "Pgyz8RHB+PClySPXtgIFROZK/1+ZL3vp6QiftewWuFQ" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "develop.element.io M1" - }, - "signatures": { - "@benoit.marty:matrix.org": { - "ed25519:KEKRFBLWLR": "AB1Ekxpv4B8+A3O153qUMAK+bTxSWAE89fBLztptS2K7n/Uv0Uox4iEbSwsvcSrG3sBTrEThB7RYUl0rTy/2Cw", - "ed25519:C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE": "avz3Qys3GyiP8KUY6mz7yeHQ2ku/iQJlCOrOTLJdaTzktITaro50cSmqm3FyErO0UokKrdDOvALli1Pp/JJSDg" - } - } - }, - "YJWPEFEPUK": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:YJWPEFEPUK": "YMLzH002QTAUvHZ8VTr4oZfpOkaZaIY1Sj5Z+BHAxHQ", - "ed25519:YJWPEFEPUK": "oEfhGrAKNAD9lqr6sjdRNLE4Va7aC4MJR6wzUsqMotU" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element X Android" - }, - "signatures": { - "@benoit.marty:matrix.org": { - "ed25519:YJWPEFEPUK": "yyxDOXvgWFmvuTmCoQM4bTfCYSiDK5hiEIXH4IyHs6N6YPyE7eRog903w34ARfR9XtWvUqXoLhorEZ8a+86kAQ", - "ed25519:C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE": "FfviD24NOE3AST6pkdIAyNHEHwtC2SoPvTiQoSBn4f6qj2DUfkmsXizAvR8ZVHwv5/Z2iVI9scQocFZaL0yyCg" - } - } - } - }, - "@hubert:uhoreg.ca": { - "EJNFAJXXAM": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:EJNFAJXXAM": "lmQleELp0WeEe4O0/miXwC8Gl6kFeqC+MZeSrzEMABQ", - "ed25519:EJNFAJXXAM": "zhTy7UXE2qJcScBy86CAJ0sltzhJ0dIoJ0IGDNvCMP4" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@hubert:uhoreg.ca": { - "ed25519:EJNFAJXXAM": "/4qmJzt/C93riCrO0a0K4kF2fnSjOtpoPVyfsVWNhkkLh4czVFgDd8kOiBr5hco9+w1qwJ8Hq33DbTEyrYq/Aw", - "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "aC4sRJe3FXZOAxzdLvWROOJW3f+B3h1muUoYpV4vKUgwkB6YBN83T73osGXf2XOwp0UpuMqyMnvwIM6bvsFxCA" - } - } - }, - "EVOZJYSYVJ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:EVOZJYSYVJ": "WAkJI6B+oYDZmhCOdiQAH2xUOJZFesDuNskPRt+ZHnY", - "ed25519:EVOZJYSYVJ": "tA5l8PGDGXz2I63BKd5KikXpGttLc7jTkHFm2RjDMvg" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@hubert:uhoreg.ca": { - "ed25519:EVOZJYSYVJ": "uvNkd/ZB5ewviUJF7nU++XCDs60EruBYBChVbies2PlCAzI03D59N+mPlJRhATMBuFUMIgkmUodiJyNmUPe8AQ", - "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "aUWqaXIfcoDGrM8rbcLJri4L3a7l4TMI3yzxm6mFlXu7duZWefVrugptvXDiUHaNGxu0We3goPj5kgv16PGMBw" - } - } - }, - "HCSVJWOCYC": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:HCSVJWOCYC": "k3UGaAV6/mkV/kCbFU3zNJtq3GpnHi0VezqW5UH1WTU", - "ed25519:HCSVJWOCYC": "5aTGH4yLMV6ykHfcFoqPqYNzTHbzzeHJzMN23gS0mOg" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@hubert:uhoreg.ca": { - "ed25519:HCSVJWOCYC": "p5KhydhPJikB9OMOTchzvDpncdVTPEmWlEyNgXWFWRLA0jw0RE8VdVS41AIbFQrJxgl9LA9//MULT2BKmkbCAw", - "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "xAdmbR4TemvJXsL9DNthWP7THRkG6RsmCT6Gx+j+D6J1f58VOpO2OO6n+WPWgruHfp1H/ZS8P2hP2Bske4mPAg" - } - } - }, - "KQWTWCJCOX": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:KQWTWCJCOX": "EB9SC4jVAydKhM6/GcwMc9biKwVNywqW3TerNTrtb1M", - "ed25519:KQWTWCJCOX": "1NXa5GyJ+p2ruAClEque+TL1VktrBzMW4dZFNfNGrvc" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@hubert:uhoreg.ca": { - "ed25519:KQWTWCJCOX": "r+8nw5EBQvjfDNt/XC/MmAookb3AwtcKqBxCg8OEmTOvm2jB847UuAfpmk0zKCfS22aGajfk5Mzvg2vQnbK6Bw", - "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "kO7UTQaZjLygXJDc+uU3wKgAxwA0pwBc517eZC8JUiQgeY+rPwZHRuzLF+ECakfyVrztOrSv2PKIZvUMf5djBw" - } - } - }, - "SNDUAPQZYS": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:SNDUAPQZYS": "kxIrDQg4rEN9OuoqKk+3xaq4HQ+3pwUy+qck48dF/08", - "ed25519:SNDUAPQZYS": "ox7tCJDstNWJ1t7T7gMcSTf1qAVRVoF+Bfd/xB7k9T4" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@hubert:uhoreg.ca": { - "ed25519:SNDUAPQZYS": "+4uO6e4Hf9PTr1krnP9er9XGn+D1MmrgHT9Hr2IjHn8h32cIl9jEkhwm7sQlRtViC8CcndomWgIZfbE5L2fjAA", - "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "T4vHqSogLOpNjA/3M6FCrIu7PXWn7jIjRSJqcipwijjwxsbViVuaMKigIp7dMHAPe2Ggpg5KKlYn36FPnH/vBg" - } - } - }, - "UDNVLTIHWF": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:UDNVLTIHWF": "0SqHzEVQBVmp04MW3Mk6xXERCR9simqbtAd3CBC/2Xg", - "ed25519:UDNVLTIHWF": "5HRIBP3OcKMGePzFyeWv/YUVpvlxmY8YouVb5SgM+9g" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@hubert:uhoreg.ca": { - "ed25519:UDNVLTIHWF": "qFDv1qaW7VnMNLBc2LZ03Z+XR97UaxzsDIXtDVYlbO47txxLkM+I4F0fZp0QL2HjHHqS/VA9SSl2ZlETWYi6DA", - "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "rmMnU7o2UVdtEC/2xNK8DYs0VyOV2AwGJQfEOYbNPJeM4BMV9uagGUlR6LBmmJ221IJFsECnS81tdhEJyhWOBQ" - } - } - }, - "ZHPDFCWGSS": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:ZHPDFCWGSS": "J3jQIxmbVFwHocJlPHQa+9EegouWDtl6MJRS2N3aQD0", - "ed25519:ZHPDFCWGSS": "Cl2xsAFKXLDEHnGFbIfxIRki3LtBTQC8xsvSxqs8pw8" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@hubert:uhoreg.ca": { - "ed25519:ZHPDFCWGSS": "vMme2fPjCCVQc0mE1LbYHSW8SKRy6BCc25z/jKKbLSwx3rJYZELRqVhUtyivVmJDHXNDzB+gotK3wyYAig07Dg", - "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "m/4ZrcxZO27r8zVuPsBZ66z6tJbN9JEDA+vEt0VxqbmbX4fjNOTNR0xpM+I8FjWYj85OWWL0O3CHy6WPOGwWBw" - } - } - } - }, - "@eg:envs.net": { - "WAFVWHVFMS": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:WAFVWHVFMS": "RnTPosIPlQLfJ/LtCkt0hzgJPmJlgAGSwK5mUnaz3zI", - "ed25519:WAFVWHVFMS": "f7R8spUylHLlF+yLvm/KX0ATC5jb8X6hG7Q9GX+GyV4" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@eg:envs.net": { - "ed25519:WAFVWHVFMS": "vjR4hfPdBqbm4XxOyWw+C/sYq3fPfA1B1NAyI3tIuYZVsS5ySz8isQ7h98tWZiSjfou1JUsWVotjo3M0ZCxIBQ", - "ed25519:J2GzPDvJnFEMfKkjqnpYRrm72XIgjTJujIYYCnxqtns": "nq5a7lVJm2NuDQDORSxYltvNeHrK6Xnm352s4b1W6dzDHsjqL1MTUpinEr/sRrYbzK9k34tKvFcKZC9oy6UtAw" - } - } - } - }, - "@jassu:kumma.juttu.asia": { - "Lw3PcHxH": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:Lw3PcHxH": "A5O9GLU6kkgTEbo/f3WRj8wdblR5BlwZmXlAVWMCcks", - "ed25519:Lw3PcHxH": "0gPSIRLkaE/w5RSy0I4oVugQ6MFxM9TertMQkDY2zSs" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@jassu:kumma.juttu.asia": { - "ed25519:Lw3PcHxH": "BrIK+OL6p9Zx8T0bnoU+m88wMjrlTSPc6eUD99nvKl8a5T3iS19i6vbZx4C/b87yooqIPgV4OWeT72yKGYAqDw" - } - } - }, - "MYbvL2Mv": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:MYbvL2Mv": "q9vwRlZFqIG527ORBDbIrcgrwkW7MV17Mp6x8HItvgo", - "ed25519:MYbvL2Mv": "0kpDq2lbSN7dWZU+WXPkLnqXxAwvNL4AVG/uHNU8FHk" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@jassu:kumma.juttu.asia": { - "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "uuW8g6VMmYCXXcC6zV8jBwjNW6xc5c98WDDD3GEaWhK7l8SvTuKM32IpmFjvhAIIMdsyDedko/KvfXVdpByWDA", - "ed25519:MYbvL2Mv": "g24Cj6AkTtF+VEFN5LMhzveSiav2jPKldu/ditLBhpzZe4h/PTVgiCSKymS1aeTFtTO6w707mtMQv9JLFEuFAA" - } - } - }, - "Thk9IqBO": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:Thk9IqBO": "2u3BFm4eTG1uZXQwzTBYlzCaMuonXShktYlklbtUDmw", - "ed25519:Thk9IqBO": "L3Ui4y1MfdP7UPCl/iK5qtOAOVTUvV0w6H7dxlx0CD4" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@jassu:kumma.juttu.asia": { - "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "JIfrgXfsrADyhIG3fUiJWCO24a9B2m/zO9GKPjKQMU6vsqHN/Gricylz708YQC3/b4jt6g3txbOvuzRGfDFoBQ", - "ed25519:Thk9IqBO": "BA+NDHIU/8mwtIk8liyDh1Jl6gSya6mPTyuhF7B1KqA3LkoWdRuPu5zw3JUO8+TaGY6K5N7AvwrYPDo7nXlsBg" - } - } - }, - "_4ZHVs2g": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:_4ZHVs2g": "76YwqK0pg4oc9XnCnyVeHV9YVJ6GmQNHwWoGWb/4Uxk", - "ed25519:_4ZHVs2g": "36ijsZ1h5220MO3mcK5s8j1g+6iUawqhEu15z+fflb4" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@jassu:kumma.juttu.asia": { - "ed25519:_4ZHVs2g": "hZpeL5vtdMj9ypYYiYxArMDQ8vBo+1H4+SLBdmBxog71hMVzt93C/mIt9Pvh8eIDPr+LK8aS3UCV4hNgFXDyBw" - } - } - }, - "bpJI-TYy": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:bpJI-TYy": "Jrobm5FEU/EFiLr7s5Px0PJx5N75NzPzBXwN9oCU+kA", - "ed25519:bpJI-TYy": "BcBV1C5e3HTxqviCKiGsEstD9kWr5bzga7tDkRfDiSg" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@jassu:kumma.juttu.asia": { - "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "Yd2VcV9QJYvp/VaDkTyhQXM7jiO1YE4oRGpnUAoV7+qbRHrYUhxDNTDehmkigjlqMPCtIKnHn1aXfuZXl/RdDw", - "ed25519:bpJI-TYy": "QIcWb1BqFnTokCN5ownN4Zj8wog3VyiENEqetN8f4qENvgDmglHrZ2jR2A8Myo76jPDbGI1JsGRNg8LVucfMAw" - } - } - }, - "eD9QFI4N": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:eD9QFI4N": "/zymlmCuduTj51Y6F9P7rcsxkvfVM1J9qkqFyFODcGo", - "ed25519:eD9QFI4N": "5oGRH7NIMUdL1QMs5oT4o85rE63ggSMvaCkuU0WDWco" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@jassu:kumma.juttu.asia": { - "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "LGlcjzvwz/uB3QuXccK6u/eXr/RGEwGkKaVtNws3GzTRbI/YXTGhJCzre/s7F0C0sZLfowhzAwoACVpTyXtiDw", - "ed25519:eD9QFI4N": "MxFot6ANdmaF04gRWvNtN3LA5HwaPO/rsz3yTTl7P4F43sLqWHz9qBOcrkfhV0jr5yVdRbFbJtl9C/EzIUszDQ" - } - } - }, - "fbRToZsQ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:fbRToZsQ": "z2vQRWxNzR0f1D5skXhU8yRAN/qQu68hr2ILa9SBM3U", - "ed25519:fbRToZsQ": "qK6e/xFs6qtJDrFjLWCK54z4+pS1CnzEh3mfm8kez6Y" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@jassu:kumma.juttu.asia": { - "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "NBD6GVWVstuKggnhcntiGfX+aqvMg/go1b6VX0ip/HaHsPnWMmDYYSQX7eH58aJj4uT+AgpvXRm7RpMdHbBiCQ", - "ed25519:fbRToZsQ": "W2t0K2e2eh9ZqG7LTCiFfwmrb3SLyj0y3C721z2XlaUKYek/ctaRUs63K5D8sNnJluPs0RggPeik/QvBP8v1AA" - } - } - }, - "hw_pQeMn": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:hw_pQeMn": "Pi9DRxi10cl7wyDpOJ03iYhpDuH828/O8yrYErbPW14", - "ed25519:hw_pQeMn": "oweHPeUqqcnMR5UsMKj2kThmt+cB8861ViMy8pB8oZw" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@jassu:kumma.juttu.asia": { - "ed25519:hw_pQeMn": "bK3+6q0kdixj/Y6KV6dvu6yoRvbNpgwE1X/23aL9nPAXSqWV9Covf67idFtSdxVDbfuY1E6xzg8zAymMW9Z6Dw" - } - } - } - }, - "@JoKe:shareknot.de": { - "BLUJECRXBO": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:BLUJECRXBO": "4o7UZbNLHEb6zYyXSJYuEIxilsaAlhEl07j6yzpTQ3M", - "ed25519:BLUJECRXBO": "f+CQpoUQIoPSep4OvB30vIBB76Dv4KmYgMxzz9MprkM" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@JoKe:shareknot.de": { - "ed25519:BLUJECRXBO": "rIEl0cgraREygjZKnMI7p+oq3w0N1iPKmM1RFdWd+/Fh1oTDjpukwtMX1Wst8GO42o2tfq53+8nikmL3cSGiCA", - "ed25519:KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY": "7ffSasHeaJJOgsOUWKH7r+8BYinAmSwaCwMQAFBlIG6rQi2vpiKv5eLZOpXleceQVSKtCzPCPCDm8gkQQlXjAA" - } - } - }, - "HZINWDWOZC": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:HZINWDWOZC": "c0q9HafjAHOoN1g1idvowXiQ2LIq6rAYUf7IBN82emg", - "ed25519:HZINWDWOZC": "NVPyaVnBD+Gb1kojwB6ggQqZMM6NGt3ec2LCtBGf2E4" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@JoKe:shareknot.de": { - "ed25519:HZINWDWOZC": "qVFZayc2KLzRinWKnC2+wlkTYFfX9jjhElevwcfgz3uFrfp5ctBfGLOfwyUv6rPEKhJqJ/AcY94WDRoXEGFbDw", - "ed25519:QaOnnd68s1P53KWfSN7l0xrAUeuR/pp4R9WjY/oTDxo": "rCAlddt6Vi+hH8LrhuuVg02gnWxkxpD6d1eh4qMrTa6ROh3phTDRLuNOhT8mrXTMWtxhLl8O0kq2S+dGA8bLCw", - "ed25519:KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY": "OtOsG8rnA7QFpxrUaifqdI9roM1MrRmY3lY1x3op04a4BkToOmZjndlAdZtA3cGPE0VRt0BllxqMDhElg+n+Dg" - } - } - }, - "PVNHPLYEFH": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:PVNHPLYEFH": "a02UIe4Jl+T0iqj1ORs4AIEVkdoyI1HUwgK51ZqX8nY", - "ed25519:PVNHPLYEFH": "9uzcKVyCYyefgTIrMklqvI+m9hYBfzYthCiudosXEb4" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@JoKe:shareknot.de": { - "ed25519:PVNHPLYEFH": "83gA7tHT/fbCkVEGiurkmjVzSeAhNRvwQc4/vKtgirfFzmXR3Yl6aLaywOSmbRWZ/lp3n0naQw/Opqr4LxTiCA", - "ed25519:QaOnnd68s1P53KWfSN7l0xrAUeuR/pp4R9WjY/oTDxo": "5fo8+S6zD9aXzmzjsiDpmqJG4e3hFJdEjo1OqhuPXov7NDUI7xVsFAaZQU8d2hIQqjWziy+lbfJy3wombvB1Cw", - "ed25519:KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY": "+3tRNugbCIuqJ/mykD43BoqxwLVVfmugDpdqX1xBADYSp7dlNZm8MsrhLm4ubCzhcM02AbLpYmIfElFpNgrqBw" - } - } - }, - "RLRURBCDIO": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:RLRURBCDIO": "QQBXOg9vZrdiTBViTbH5KAdZr5+bkz9X5l2btbKDnD8", - "ed25519:RLRURBCDIO": "PmHiHQA84zpkdl4onsJEXEksMakarV5T2jtnuolGncU" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@JoKe:shareknot.de": { - "ed25519:RLRURBCDIO": "LflbOp89kVrxEkhZ2BIGzrj4w9BUgTpM7y+j6rodvcIpcWfZZACgdIX15Lc3aIhioqmZPklEYsdi+41wAqw6BQ", - "ed25519:KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY": "dVUEMsJxR5F7Ru2dYmUgBnBbfGLS0LKoUwZTbSuYpO2+XVY4mAZbbOjLcyh3LAlIgdeEBZwvWpizXJ6fASPmDg" - } - } - } - }, - "@matthew:matrix.org": { - "DLTUSUERIP": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:DLTUSUERIP": "iaPkNDav0ZQlg/B5aKjj0LJOOXbhcjlPswIplp9dB0c", - "ed25519:DLTUSUERIP": "QWX4rctII/9Mh7f1tcIrTnZ6MwuiXSNkJvUbG0Hvor0" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Nightly Desktop (macOS)" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:DLTUSUERIP": "ZB0qhd4eUhOly8cYyhszT6RoAwO+bRl994BweDcZ1rIjjaikepcTCQ3C1ggqgSIx+tU1ll7eBn+BwL/fYBMFDA", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "APjY6encb2NhFdkN/W+qzfy6y85IBa6bfrrsGn4Q5cPZNoQwNq0J9JsaX2MhFEKU3GwNVIX3LDfLS9yX49j/Bg" - } - } - }, - "KZEPAAPTAJ": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:KZEPAAPTAJ": "NIHFiCK3jF+zgETUCgnTn1dMGgFNQFzn9XIpOOhu3Gc", - "ed25519:KZEPAAPTAJ": "ADZCroZgQ9Oo3BfSpjrZfs0xSFSz1O/9aRnidCuvU2I" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Android" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:KZEPAAPTAJ": "N6TzeqHmzmOJVq41XJoR7GzYFpEAxvLUAMvwJY+LfXF7WnS/JuhhK4ml1h3TuuEin+Zuk4/FbXYyb6NFgSG4CA", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "09oIMySOfkry/dPnGpZa9GUKCY7UF369xGdpN2G7w5VXL2uGI+Q3yETRq7l3UyBIH/8O1kCC0/hHZBgWf4OQCw" - } - } - }, - "OPEDGUYPOP": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:OPEDGUYPOP": "T6bIngLF8cXYeFapgRF2EBw72CwKmk67B5Wh9pChVmg", - "ed25519:OPEDGUYPOP": "xHKcCznE4foP5hRNRL+lrT2msznWSOWTeEoab5lYBLw" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "pr9256--matrix-react-sdk.netlify.app (Chrome, macOS)" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:OPEDGUYPOP": "Flp/RRB+VtkKzRAisdHzsHpRu8qjUo2ggz26I9Uuwz0HjQidGf7Ct5igLlJFAVuKkQ6eDT4acRv4jyV8v6qIBg", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "9LkXjz4uqQBhQ+Eu6seMyBcUat6KauRx7q3bgKdy9w9ro6ly8573U3/uX7zmx/sqOAYUVa3mFVDWKi/H93AaDw" - } - } - }, - "JHCQOENUMD": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:JHCQOENUMD": "3wxKDTlcA5IkHDkvXTpYTQQVGPeI7Ss8flJbiROfZCo", - "ed25519:JHCQOENUMD": "DEAkpOjBqU/Cn5i6lJF1F9J9fS3OTy3hTFyKW4lbDvc" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element iOS" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:JHCQOENUMD": "A0uap1oRSWAJJPyzB3JPM20/ob4r7chTVdiu0z1tu3UFx6DoAMuklgkOrF1zwIpb3GVI1SeFanW9BA5PPB9OBQ", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "Tm+02RZaHe8gX80uIPd9bwYV4iikH4QQeqMt3Er4I/M+/BMAr4VbiTLv8HfEO1wBsTDt80NkF1c1LO1ZCIFvCQ" - } - } - }, - "LRNWIEXWZW": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:LRNWIEXWZW": "N7VaM2LonLb0Iv4Db3OWjZFMMwmO4qE6w2a9YU+F2Wc", - "ed25519:LRNWIEXWZW": "GDyUpO4nFQKi+WqXDOg+uzs24rBxartZhY+RGd4H9aA" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element X Android" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:LRNWIEXWZW": "KETUUXS/9KWUBd+UYsHwk+GQlVD6AScNxcHyFr0oGwyY2isUy9q8dCprmMbc0vcf02DiqOvEyoGQiA2k7baKCw", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "UEN/VCtFTaivjewq/IPn1DrTSQ8uTG+Ek5FG2REd9qWOoQWaL5pZzhEm4hDAAe3648Xf4y8WfyrmCHmh6L9+Cw" - } - } - }, - "GOSFZYRIEG": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:GOSFZYRIEG": "dDzGIsdDzjt2uWgLDg0U05v2s0NAdjiqYpYjryPa7To", - "ed25519:GOSFZYRIEG": "PZ8yFTGto0JCDh/gzG9WX8j8fNgCcelQJp+5bS9ntM0" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Nightly Desktop: macOS" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:GOSFZYRIEG": "0EDd2ZjEtllDYakVEUQbOLKlJdUwiIBSrOVr/1+9l3wFM5+XWSsPcEQlKYcUUGcap5F5qXvo8dfPbELZfBvNDw", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "9N3Jg97PnK0tw1TF/St6CXPuqSLGfvWQWB3GCg/PQ+xXN2ubB+D6qMTUO3cOFnOpUWwCtFA+5uUo3K1XR6WcCQ" - } - } - }, - "RABPQDXCOF": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:RABPQDXCOF": "eky3Ig0/5aJmQ6yez2DVjrOO3CQA2fY3JERm+vo0zio", - "ed25519:RABPQDXCOF": "I7Wmh+8DB074SyoMpv9AxnTOdf43z5m0K8ufI6+TLMo" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "develop.element.io: Chrome on macOS" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:RABPQDXCOF": "LFYgPm5dUNNiI4eTRWFTirrbtUXwRm2VTmRC0nfAHUobjumrGtK6FhzIC4y97vRj1eyJ5qGYu4TSJ3tBq6cMCQ", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "AOd9puBjHDcSrgSMrXlhqWCA9LngH60ULqOCzASo1CiMqQ7sgsC7amtIEw9MVpbewJ57k4rcm4FCYN+YKENfBQ" - } - } - }, - "WZHEPXLFMZ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:WZHEPXLFMZ": "ey9pb7ZFbtIa1/NKEtuwSB6InOBJkjJZuun93VmqIXk", - "ed25519:WZHEPXLFMZ": "pTRmjBmY3tVlS+Gn5OQqrgqIHqY1gRqGfC9PHh6UvuE" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "pr10080--matrix-react-sdk.netlify.app: Chrome on macOS" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:WZHEPXLFMZ": "JTNt+VzsdXHY6PoSvnn4FefWrsspRvz4dQPJ7Yk1VqrHpEqAfVmo6wfjr6hwOVyECN+FYDN4l7Dq7EWhyVLqBA", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "29fvxHmpTJKQZYgcVrJTo6dzMrhO4bCA8CH2lxWjKoT+j3OIvkZbTcn1JcWEma1PUbuM0WsYfZQXV2lAZaVvAA" - } - } - }, - "MZFGDMEZGJ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:MZFGDMEZGJ": "NRTGMk0PiweE2HYUKH2d0o4+cbMnH52lo5l6iRdcpBc", - "ed25519:MZFGDMEZGJ": "Ex4tMAq/2DEa09V1EBK3TiNGIkpObTFaLYiWNkeoV5k" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element X iOS" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:MZFGDMEZGJ": "S5p28/nkY56pPOyfMbMNwa7j0im6waLWiaNjN+InZffp5xZ9uktJbRIDc7ZVtORDOcfYV7XLoj/If4y5ogsmBA", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "EPhoUs5zDRtU0RM7IqqLeRn7SzVRUZF2yPs937UZs2ZcfCu9jkUrM6ZojhvnNajDUo8LkGx6peEIEWU66AKECA" - } - } - }, - "DIVAIDEHAE": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:DIVAIDEHAE": "z0zFtn/Z4GALb/lLZTUpEmF5k0JS7j3nOQ1jeGhupFA", - "ed25519:DIVAIDEHAE": "/n02Ykn/9Ya0fWhuaQe+dm/OvpJ2a9CJWpjEwNPPK6E" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Hydrogen" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:DIVAIDEHAE": "M8dkG1U2QZFQ2W2u77Ut4tyn/ARwkUH+3p1Mjc6hptX/8bLjIyJ1Bvqtpgs7YtM/7n3FP8mXgfzC9mKgBnvmDw", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "LaCgOpOXN0xjyYCHdVS4aYxfu9K2SgrnRSdK//E/nhe7IMiAnE8EzfNjDv9o6u2M4xlEdrO3uyMmA/mgY0IwCw" - } - } - }, - "DMFWVQTGZJ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:DMFWVQTGZJ": "HqtD2/HhHUqb36XmSlmhxTbo0Z2drwKuUsLUZvPsK1U", - "ed25519:DMFWVQTGZJ": "DS4PvGoqT78mPiF6Bzn1mTho4/QyL8a9j7zNUTF/zI8" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Nightly Desktop: macOS" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:DMFWVQTGZJ": "JZaC4wzYUUxm98FowoIwmhkO/hnczXpRzUMVKg0WlY4NX5W6vb0d8lvTiGjS8/HwmsBrFenREPM3LCfhj6LzAg", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "LsF/8eP4Akg9yb3sZjKEYQMg0a48+/S/sT5nf8biB8DOemYAUF7zbQ1do/JAk9m6KMDO1mxKxiy81NUPPP0WDg" - } - } - }, - "UDLNJSGAJY": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:UDLNJSGAJY": "74mkEb0CXv/l34cGsSvuODR2bOQ/E3aVKzdX+rlKfmQ", - "ed25519:UDLNJSGAJY": "fhmV+gOftT4tWim9ZTbMjTDmJr5aBZ5cicd3wTE/afY" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element X iOS" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:UDLNJSGAJY": "zQmQtksoluTaOaSEh1IfcTyd0z+Ira9+da18jtbTKcdFkRfWyOTBqBNVHtHt/XGobVy6nCGDZVrwi1VRnZcOBA", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "LHHTXpYxgMOoJNpqmFo7P7uQRgiw35SXDN5OCdjAmsKM2dOYsoMljuEXZqO3XLTUm2lOtc3wZZb73//FtBFLAQ" - } - } - }, - "PKXBWWUUJS": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:PKXBWWUUJS": "Kb+P4tSZMhmd9Ms7N0aKSBWvRvBQrEuoYmpsFsEkjRM", - "ed25519:PKXBWWUUJS": "AUv1hm03/OIT5v2SF4602W+M47tmNoV3fHG2HCBFBig" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Nightly Desktop: macOS" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:PKXBWWUUJS": "JRULfp3Fgei4ln3ZBCHfx+Sia2uKR7t2r5XChVSnHRdZdQPhw2Q3MjWj7fHmNQFDa3QOGQNCGWQXgwFzkmpuAg", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "PVmu+i1CMZQhEPZX3FvG0DtpKCJuyH72tY+HierRy9VTTx66ioUjHVBJ+eLLI7kTEahJYvzwajFt21pH2Tc+Cg" - } - } - }, - "QUMJEECHJG": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:QUMJEECHJG": "piMnXF3RUpX87nyYgbzKOs7+WvGyAw6mPjXlaThTs04", - "ed25519:QUMJEECHJG": "EFQ0uBWj2xbjVEGitgwuyVbC3JtQZUQNs4lEIUsE3J0" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element X iOS" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:QUMJEECHJG": "ZT8BDZ+3aJOP7rjVVE0bV4QZ2mkuDvsFJMeABsLM6kExUkl9eSbadStDksNKdIoSQKYtWWEEz+kampl6X0UdCg", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "mYKsWxU49BMEN21NynUjR3ZnbYEQbmIViIGI/tGPvb17J0jbw3Kk2ZZrXPxRUHM9tJ/RIqDQ9Ek93C3A49x3Ag" - } - } - }, - "UQPAUDSUCS": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:UQPAUDSUCS": "2kKbTnitSwwVrcT+5PI7dbrlZkgn5Vg6U4OzsAQ+9DE", - "ed25519:UQPAUDSUCS": "o/ZuRX9WkshhV2VqUMxkzlbK8caWK6oY2ponBM/4jdU" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element X iOS" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:UQPAUDSUCS": "U68v0lweE24f179b1eYTCryZTe1awKVDCPp4a85hMZ7MFn8BZmzS9YETaeeJRFYQtzn76fM3CcIHgrH8lJlwBA", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "r8AeoN9ujre71ywcH4d1qHMmBwkA9vHpVVlWlZu4F7oCB5qO0GmwpmiVAJ8Mnlip7O9L8OiNlxi7inmGBDrODA" - } - } - }, - "LMMQYUJDNI": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:LMMQYUJDNI": "NfRITek27IsUqPyXx5BK6kn7J3sp7pqDv+dKmxK4smg", - "ed25519:LMMQYUJDNI": "jAp+jM4FTxR9VYIn8grr0XC3H6MHQoiWqxyzr+5aeDI" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "develop.element.io: Chrome on macOS" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:LMMQYUJDNI": "HOYBTxr7zRxNqkM0Eoe+6I2iA9/lY11urmWEShzHD+bWS+98BqYTO0FPr/SW5OvsNRY/UWInLMQnDfOVuuBGDw", - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "G/iY2NTpqGQyIGRZ/OLef9hbU3NAbsCm5UMQPzgULstXUUubY9T4fAT0sXkPorrdXgDJnxAM6cDjWBvhqCUNDg" - } - } - } - }, - "@saces:c-base.org": { - "JQYUVQLSDJ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:JQYUVQLSDJ": "s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", - "ed25519:JQYUVQLSDJ": "Nh9+zpTW7guPM6cgyxr4h764VT2JJmyCuFlczgLbHU8" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@saces:c-base.org": { - "ed25519:JQYUVQLSDJ": "NYpqCVv9+NJSebjhp9thKQjbPzc7X7b/qXX3YQrAtVHvGoAwvF18jEAT1VfjhdWXLoVcpG/2RjN/UY1p30IACQ", - "ed25519:zEDr2sVNTpqH2c6nTqm8f5doFl54qgBcEggkmhQGMts": "Pz8rhqXA0oZ+Jccn2Kly+yx1/t5PP1rbUa37/5fO33j0eA1epWNXb1CSjuBoczFsW4brdXl9tirb7HjCXS11Bg" - } - } - }, - "UERFYHQFHQ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:UERFYHQFHQ": "WIQo3TFDrpOj8PzdHiaiftqOu0PomITds9wUSNZv9Bk", - "ed25519:UERFYHQFHQ": "939/voYWh25DHvPgjeZL0HaPqdZtavlgbJwUa5K2/dU" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@saces:c-base.org": { - "ed25519:UERFYHQFHQ": "wdyNzy6AUidNev1mN1jYv0l88vqRWF0XgsRhjld7bMVOT8WznIgn56lvCBWpOVYz5rXSqo0DLb1JHknPrnn2Dw", - "ed25519:zEDr2sVNTpqH2c6nTqm8f5doFl54qgBcEggkmhQGMts": "4so2aWS4Qum0DnsDk2SmeuMDgDE93O6tdnT+C1w8bRZNKYlicC0MOMeKjFzCU6HfvBkm/dNBRXwjnCxvF0JkCw" - } - } - } - }, - "@/dev/saces:saces.de": { - "CJVNEMQDYE": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:CJVNEMQDYE": "SxbsKj7xah3vNGMR+GbwL2EdgTXB1sPFOgvRkSKvBmA", - "ed25519:CJVNEMQDYE": "iybei638MgUUfm73EjyuW5pkQq9EOBd6iKkpbRxkoPs" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@/dev/saces:saces.de": { - "ed25519:CJVNEMQDYE": "psMjtKllHPpe2tQwDDXqKwS7YYvyH+h08913OC//wJfo6qInBBFNTkocxdqEvIIPEFN67PRnoPIgSMCle8nMDg", - "ed25519:01Mra0lDap17amp7otuk4ag/1hLZ5woZ6mMZg6Lbr8A": "r7Z4rwuMe6gEL0en6JFiw2kJVM+O7aYH9vsuX5FY9aiADKgSxI3LmMJvjTHTY/rfxaNgGLBS/iyP7HEHLETdBQ" - } - } - }, - "KWITBBVNXJ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:KWITBBVNXJ": "Y+wjKOrQcTs4+VvElq9alK5qj5WVooOLuBUj+WxeUB8", - "ed25519:KWITBBVNXJ": "5ts8P4rArj6faWpVs+t9dJA0npiMQFGyNn4bY+x8x5U" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@/dev/saces:saces.de": { - "ed25519:KWITBBVNXJ": "EdhHA0vLeAyIxmDzXdPWGNvEBozqbOWXfXNcyO1KUPIlfjtA3U0UH0trxbH2eQlfpAbWsEo6ikWFFmz+VbmcDQ", - "ed25519:01Mra0lDap17amp7otuk4ag/1hLZ5woZ6mMZg6Lbr8A": "jCsYCeuk0sldbFe16DfKPOrsfmlDbhZpSy7GuSAdlBkEvqQoRf11PShOZt/z0O6khXdAke+jeemn4FWtTEHtBw" - } - } - }, - "LDLNLBYNSJ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:LDLNLBYNSJ": "wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", - "ed25519:LDLNLBYNSJ": "w+Ez8ZL8p12i5w0BiNJfcnvg6rda08up+jLp23nYhq4" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@/dev/saces:saces.de": { - "ed25519:LDLNLBYNSJ": "1j+9aK1pm5I0/olXOihyS//J/j3zHu7huRabBdQhCjV+VtPW1k1fqacVSIXIdm58y64ktDSNbhEim7VhoZQbCg", - "ed25519:01Mra0lDap17amp7otuk4ag/1hLZ5woZ6mMZg6Lbr8A": "LJg/ugnYnwMf0CPwSUlmWlhA+3PpBaMRFw7CThfLxVGuXy1TrFQ3JiFrCBkqLrhcprgZ1EYvAB5qtY7SC73ZDA" - } - } - } - }, - "@creme:envs.net": { - "BWZEDJMICJ": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:BWZEDJMICJ": "clDKNRuM+9/eGJ8f6hCy4mSUdqrbyIxct7cwT0h7aDI", - "ed25519:BWZEDJMICJ": "xe1SwDVaZ+vFUBzstAb5a7NFFb4ibj4X2C/RyyvQPv8" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@creme:envs.net": { - "ed25519:BWZEDJMICJ": "gD989XWt6B+buaf24CaLEoK7BBEzmU7GZFe5xgYwSwsXXCt4Wa2/XrcNNvITC+Q6G+s3uMpDKLLn8UbwOvcfAw", - "ed25519:Fb/q1QbuEttVhEhYcMdAXStKvUzTHwUvebBiraz+RY0": "091rMkKOuOHmyi3ek0B4Hisa6NJ36jQ1E8LF2T2IOzaw3wolaoSaZBDf+X2D5+ZpZb09+9kX0o5138kDh499AQ", - "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "sUHwgnW84BblhRde5K0cVtwYUDrn/anvWHrIh7XLBoFU1RBrSekJQ4FXdfR47FjUyV0RS2+t3gvVpv0MnV6nCA" - } - } - }, - "DROXHLSCBG": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:DROXHLSCBG": "P94LZE7rA7vuxxv/crSebhxTRdUsq4OYSbzud+NN5go", - "ed25519:DROXHLSCBG": "23fXt8XVjTzhb/5QOfGQxXZEmNIPiKmKpbnJ089Y3a0" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@creme:envs.net": { - "ed25519:DROXHLSCBG": "WJ7lhVvKu/c/w0PpT5L0Vlh18Fvo5bK3dLLZzeIZEoriwvooXb01N07lW0V3QXhxp75lQ3T9vPuj2smT6d7QAQ", - "ed25519:Fb/q1QbuEttVhEhYcMdAXStKvUzTHwUvebBiraz+RY0": "RH6BCFQdTmmqN62tnd8xlsV7Pwxuej67NTPk62pof7AiHjdsKoJmrrve+lYYdWBstbj62M7ZItMCQMUewYX/Cg", - "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "pDXZ8yteYgLuILqfilIwtK9hjlTb08hG9Dl+gSvY7Rs2+CHcLCvJo5wzCNqb+cOUmP8Br+hbP45vysMgbd1BAA" - } - } - }, - "ETCLTCVNHG": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:ETCLTCVNHG": "a7XdZvWdCNZkS1TN0UmsIihxOqUk4txrN7kwLWAxsR4", - "ed25519:ETCLTCVNHG": "RrzFjg6f8VKnnJ7gVw/GOsv7RW1BSrD7jxv66jN8Zbc" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@creme:envs.net": { - "ed25519:ETCLTCVNHG": "Kh/jYjR9Q325Lofn5UBVyNN0mHb0W/88nC2vpQG1JmtnWm14oXKtjmTVwIyzHya6wzgxoKc1u6fhJGFg7va2CA", - "ed25519:Fb/q1QbuEttVhEhYcMdAXStKvUzTHwUvebBiraz+RY0": "s77WWjqXCUgVYsJQ3MonpzFBzwl/rXJw1O/U5+otjJxgqwYMLsWG1/0rNe6i2n4KPo45hAi9zkS4YIUnuwIJCQ", - "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "SXaAnDlmNKONm34fkd1vF7z5v25ZOLXSynAhvvPUpNk6SnlHLqTT5EHII/bF0xvHyMp5kC8HF4YEpzu3kREVDA" - } - } - }, - "GDFVECNBXL": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:GDFVECNBXL": "8aiY4KhNDuoPf7GQ6iomWjq7Bg14/rrqkr9HQtuOuXM", - "ed25519:GDFVECNBXL": "onDdCuoOfhT2by8zxDoBeJfDAZjmKTr+vpIkDDYHDoA" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@creme:envs.net": { - "ed25519:GDFVECNBXL": "2wz1Wq5oTfTOFJG+Z+gujNmVBJ+MLoGwwg8mkDqBITljsunKceMgTBfS/QPXn6mEejtbR+8cv3jmrFOFFSncCQ", - "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "A+amQ/2th9TBJTKaW/M/3+Oh1J88am0wKN2fIiheR2y/3a4YoimuAwiggrCavr4o/drKZ1Phi9MZeT/ih4KrCw" - } - } - }, - "GDVPZHUDFS": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:GDVPZHUDFS": "+LG5J/gLL4IKm8mVxbzh9HtybokyYh4+qRrztPwatiY", - "ed25519:GDVPZHUDFS": "pLJxLAez/G2x/GiXPtGsZ4HgkJ53eK21a5K/sRQJo04" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@creme:envs.net": { - "ed25519:GDVPZHUDFS": "pBkN4MiEHY+sZ65gJuamydFr3/CgZgQbL2Re9mCFVHKmYDZKGVUIkcFU28hV5UppPrucGgEUUZi7Sv83Ypf6Cg", - "ed25519:Fb/q1QbuEttVhEhYcMdAXStKvUzTHwUvebBiraz+RY0": "MDU8DLzNSuHr+W+o5HoxDeazRDkBJir45Bnlc0LbeQwla1PE+YiS5k2Fe0xClubDrLARKVkjv19oVQ9M71wJBg", - "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "djKXSLKtoYCQz1I/tShLbmFNrnbAnqjaxCFT3efWai+C/A9QKOviVNsBe+DtiQR8M6tdCEIKwjW8poeRrUwZAw" - } - } - }, - "NXQFGIYYXF": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:NXQFGIYYXF": "+XWeVnwsM53WJKyc9YlK1DthttT9KgQAvUG/zmr0WRE", - "ed25519:NXQFGIYYXF": "cLJclNV+jNflR4/YMu7NmtVNzU9E2ztEuB+h1i/bX54" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@creme:envs.net": { - "ed25519:NXQFGIYYXF": "WtULWX7WeV79gUCTmEUrGUhFyWZtVUqTOqJdtLuEWSIOwWfjYnwquV0ncHmNoWusicBGxDU1am2sMI7XEy3PAA", - "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "O5nU277PPc8LrRDUlX4SHps+mmIaKkkapMSrCte9Hq48iAusShDpYOFht4fTBTwg4kLFZaYIda0IQPbBzy0lAw" - } - } - }, - "PQODMINEFK": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:PQODMINEFK": "pTKsvTm/kq8bdntjlMl+rAtoq+CY8zfwBYUWuIF8kWk", - "ed25519:PQODMINEFK": "OS2u3nbUrqhZXG7nfwm8Yf082wmaAqpS4Q6xFjhNg/Q" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@creme:envs.net": { - "ed25519:PQODMINEFK": "fwira1uWH7AhNUDR9xRepTPAkU39ZDi2Bc0CPJe4w5O4wg1GH8KjNMsig+4vwLXQDD1D0sfN3YeK+y4n4vneAQ", - "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "7k/Epf1Lt8q/pUJVBQPBCmVtaMIY25MyGRRN3XV1viWmyNGInrq65WErA0kBliKBlMT+5kk+K53wIZeN+uN3Bg" - } - } - }, - "SPPKKUDJCR": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:SPPKKUDJCR": "z5N1JkhyXry0m8y4UNzNCW5XUpqGKsoAzXHshwNkwzY", - "ed25519:SPPKKUDJCR": "wURH60658pMDZzv4s5mTJJAmxZlhdZnE69/TRhBhcSU" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@creme:envs.net": { - "ed25519:SPPKKUDJCR": "/REEJPhFK2XB9Vce68wrMFk6paxOBwwl0GJ1MZ29xPGwJ8S3RZb+jOO2gGuQaVklDe8qTvI/EG6OB0pe4wleBw", - "ed25519:Fb/q1QbuEttVhEhYcMdAXStKvUzTHwUvebBiraz+RY0": "vUXwqMRkelHG1RK2Cjn7p49sJr5Kj9CunKD3nPwezN6QIEapkMtA5+VsdSQQHOA+utk6pO8StnXTVLABnTtyDw", - "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "6IkACgjXpS7U2juWWF46oSO+8uXfpGpJqd3zUBn/pubrYQmcSk44PenXqjpAgTszL+xvfN0gsX+zS1JoPa/9Bw" - } - } - }, - "XVRGUZLAIP": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:XVRGUZLAIP": "WYEuQQBN+LEKaVOKtZ2C2hCa6UdwZeYB3R8EhAJcBjU", - "ed25519:XVRGUZLAIP": "+jGgZOsRzqGMntHy5iUqL6HS7XqtUd7FVt7LHf1zAUE" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@creme:envs.net": { - "ed25519:XVRGUZLAIP": "/Um6Y7VT5YleTjZz2wU5UW4wCEmtQcMOEtDULnORCAbhAd39oKSAsxBgLMgXveZInfC4k1+xERfG9AgVxLyVDA", - "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "SO8C4f8AOzuZ9mB7nd+h7fvP/ysU9Ct3KfQ4bVj8jwq+1GWFmnJeU2AYvTTLEG++wiLO6wGL0AYZzCBya92wCg" - } - } - }, - "YMIFZYDIUW": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:YMIFZYDIUW": "FK7fPzFsmjkQPOg6rkOtM31YCWmGntmxDnW6mgAcaRE", - "ed25519:YMIFZYDIUW": "U6rEoav+B5Gj4iq9A9YBeDbb8VnBl8p6ULzv4htqZiw" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@creme:envs.net": { - "ed25519:YMIFZYDIUW": "UHVM37ZGiKuyF3pk/EB2DJEbBtos6cCgz9xqMlLSLJIAKvFTPfLm/34LdYJCn7nYwhyryurhO6OcqVjmz2HRDg", - "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "yRyeUPsoDR3lfheDMYG515lMLLFjNXT+s6voYKLb0qu+rAEliy7y5/0cETHrn+ScLq7ZPHVtHk+z7hQ0RhNFAQ" - } - } - } - }, - "@erkinalp:matrix.org": { - "VUKXYOCWOM": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:VUKXYOCWOM": "8Ud2Gt6WwD1n0pGrWy8PMQakJntfMkTratWBAUgrI00", - "ed25519:VUKXYOCWOM": "2ARyg+5geBG/7sObPfSVEruN783qBaOw/o6qrIQJfAA" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "app.element.io (Firefox, Ubuntu)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:VUKXYOCWOM": "3au9Y7gF2Ky+vqDO/dQIUe8TrNI5sLgDdJqTRwvYYWalVyAsph/oX5s2SR1pyMaw+zZd/hGMxChHF4in1WRzBQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "SEGwDQjA6EXYUYQn5wn6wq5Cmxk4pvnGRwdl6hr3wWJnm/U1yt5Xp7HKXy9VEk+1a6JTNk50Vfy13YwqlOYkAg" - } - } - }, - "ZCIAAKCCFI": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:ZCIAAKCCFI": "u2IuG7EY+OckqB/adUXgiyl8NQuKsttOxCw8jpBwGgc", - "ed25519:ZCIAAKCCFI": "bUrIM7UTKSCPZKL2AviW3yhW3vo3BMNxcYU0x152uX8" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Android" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:ZCIAAKCCFI": "WaSGIV13r1vBzbIZhtVnGORgtoCYYn1+ArJzNXK7PNDs0z4ynXfS9D/pDhKMQtwnW8OHah6k4b+4ksNMHQrsBw", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "RZ69dUIcojpoEcg2eFDRQMI2l3EmW7CHM7lYUkH300m+C6y+qrX5s+zlPMhq+N3hGIoUgJn6g+ThedYF7z7gCw" - } - } - }, - "VRWKUUYFCW": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:VRWKUUYFCW": "unnDVEycK78zPgMSD1/589SHj83mEMasfBlueyYPwXo", - "ed25519:VRWKUUYFCW": "qIHlrmqdbKp8BVXhxpGbCZ0AU9OB9i4OUjTh08h0svc" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop (Linux)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:VRWKUUYFCW": "PBS5Uq5f4WvSwFzMgAMBEUmxhzW1Y2SmlR9cx+a7UrV5urh27Y2qcMqL7Ew1vhy2VqgzY6D5PfR+9sNhvOdAAw", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "IUrmzJafAdBbuqankX41TdnrcMF9UxKzsYcHxtUM4ep7/9DMrEe5MbdzrAFpOPgUCZBKwWeW4f6/3SvOMKX8Cw" - } - } - }, - "XACGRKNEET": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:XACGRKNEET": "InokQFnKmaJOm9FH0Hrtd4lh6uQ0g1mu6DGBkWJBuQk", - "ed25519:XACGRKNEET": "3rrxGA5JPxYyxQux4x5w5YQDZ1aVuSzk8rpW+IkzKfw" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Masaüstü (Linux)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:XACGRKNEET": "MStBEl5954tJ2Yq+qfhx7TanZNpS4ZcQWMJ5j9GPjPmEJwnLXD1nbsFb84JkA/+SbbCd/R/Q4//fErTStaZZCQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "B1gxe5TbG7pj2sojbSizY4rW1Y7S1oawsnp44YK2y2ZpgUruK+0J0oGx1gH2LCTzn3kYLiOkGwHSClecgSpdBw" - } - } - }, - "SYZNRJXHBC": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:SYZNRJXHBC": "/w8als+hI+ELK7mFpHbEHsn2aJPtFKL7FZAGWkxMEHA", - "ed25519:SYZNRJXHBC": "4zxJXPGNzlRRuCOjLczYXtbZUilJl/tTiAUrK5rfIqE" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Masaüstü (Linux)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:SYZNRJXHBC": "EpOZwPrkzuPqzOM3hxOL21AXhsqm6mFDFHDiKVML78aaG0hbYB0SVto+JCcmEZH8PudvRh7BWbj4ogIEVQOCAQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "0/gRrFMFx8nQovX/JCzT6KXglQGdY7K13f0g/oY1gdRQNIaomc2ajG068d0cMrHC3jKYQ8Ejtqa69bqCVpxnBQ" - } - } - }, - "ZSRYCQAANB": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:ZSRYCQAANB": "MoUhq6fl8u8bp3Nw91QZh8X2cCKVAgDZWBvZnROnbi0", - "ed25519:ZSRYCQAANB": "tkrzxxBqP2LkX+rtLlsga+1Pykh6aeTCYYjo2zcztXs" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Masaüstü (Linux)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:ZSRYCQAANB": "SdesdASlrEAT4Tb8laOjnjkZPe12nGxSdjwXcgQbBztbVmblu/Roreomc7gbns1nB4m1sCXE9L6du8BtMniyDg", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "4L9opoN8sUI32OMj0bQUJWpsUcdRdIS6dYtC3kiDsUeBeb888jtlTMA93kEo2mJ9pf65kOVUpplWlsuIbdeFBw" - } - } - }, - "FYVZRHXWCQ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:FYVZRHXWCQ": "sT4oe571p4mutcx0+c3JaweWBbqeJe2T+YcF0fU7Eyg", - "ed25519:FYVZRHXWCQ": "BVASUPx47kZJp/R2SBzCjNyxL67XJ3wbtUb9MCUdW9o" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Masaüstü (Linux)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:FYVZRHXWCQ": "b+VjK1XKU6XTYfbqWxzLcL1gNwtM+LQ3N4t3B8LDOzKu/eZ9JrKG7vaCZK0HmXZ1BRY8jz1fKjShf/ArlfM1CQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "w4qPNO8KWXJIwWOi+Znax4FFdixtV4kwa3OK2xuWqKvJEpm1oi4XwgII/yIBny+uP4jjgeMw/sdU8DPD6lSjBQ" - } - } - }, - "OAGVZFXWVH": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:OAGVZFXWVH": "mOqs4AxIxpkk6z8HaB2uDpKaoh7xfyESxjtSmoI1Yyo", - "ed25519:OAGVZFXWVH": "tjVY2jMxjeECLVz3qlAO/b0V++ml7GYJfwnAQcr0niw" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Masaüstü (Linux)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:OAGVZFXWVH": "udAEjko5I1B4pbhUfJtRhTPH78v4cPm0C3txppazLvvT6JpTFIS65COJO7rxaOyNkjw44KRYhxRaSUbOowNtCQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "3g4U52XQVJG0JF+qR2VkBdTbgkKHHJt9uGyPUE4wjU/XayiQWTdUeRb+y7GVfBofII8KP3w3f2FpUtOw8ToSAQ" - } - } - }, - "TLJZQJNOZB": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:TLJZQJNOZB": "KMVDNeM5PEEWhIGNQUd2Q8u24xPjxJuabsFQ4hxGvmQ", - "ed25519:TLJZQJNOZB": "HXoJLpEz/nbacx0lko9er8ccF8Ac6kA7fbRI3N9R5n0" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Masaüstü (Linux)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:TLJZQJNOZB": "0jPuObpaXfIRSUIo3C9eMwnDmga8C1HXQWOtthMNq9o5FN/qvmGw4ZnoDS1owBaXW1SWZYz67fJNLUcYh7hEBA", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "2RSsz2ThOHB8J2n9xFmZNlwfO4TMWqEqkLEyN325CMzl7G4j5d16gWF8MxGBRJxGK8FH2Q4gMNFkYI7z/JLxBA" - } - } - }, - "NEWSNXGSHW": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:NEWSNXGSHW": "DGZYQnTBEuzYrt1o3kK3OKw0uqVr3MXRRafX7molW1c", - "ed25519:NEWSNXGSHW": "3LmjzSqAJpb7a8eRQIZKXXMdQ5nklNKWTd+t7ApmkgQ" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Masaüstü (Linux)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:NEWSNXGSHW": "1QykBZdfQEOzEldpmQdbma5fbaSgRTwbNblBFjCxCAxOW62Odcfw1tWLUdZkltxCipsQL7buj7XjgLx+dRMgCA", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "7kvoH7k0slP6JpEOuxJFai5N8hCDMOU4P0pjTUR1NkWGQeeZ5ExGbNY+IB4DUioD6QQUYQBXcuv3Rjn6g0JJBg" - } - } - }, - "FLLZKHZXZZ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:FLLZKHZXZZ": "NyVGIUQVlgA5dSivf88wPzzAWOyQjXxNAwbT0Bo1w1U", - "ed25519:FLLZKHZXZZ": "n8CoYbYcjbPjSQ7bfEoGbwMxcG941SmtaNIb5HzO49Q" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Masaüstü (Linux)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:FLLZKHZXZZ": "VUfx5m9ZY5IVSTbtsl7yY7d/ifxML7AWAPgM4Hx1grpnQE6DDmms/XiHOuk3NRpSjGbYNX9sxvdnLabj/cjoCg", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "KFupGRaaCcZeIqxDYuTWZYJIorWvVpmHDSq+usBOdLMljN2DnVXsOc/3aaorq1yQZMNup+cH2qOyf0UueE9BAg" - } - } - }, - "XZMQXYHAHE": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:XZMQXYHAHE": "VFjp+T7+bEnxjQ78hUec5YsXqpuYtplBNUh4B/upvDg", - "ed25519:XZMQXYHAHE": "o5iRUo7satt5eFgOgBknY88g+cIkM719pH64lgfVjAw" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Tohchter aus Elysium" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:XZMQXYHAHE": "+3gyovCKFweSz1tXI5dI+QfldobL00PjGRX9UUh+DXIpmBMQ46+tfVL5jwOsIo1zQZbeXpHMHbDq2nNPf3DqBg", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "XVyvYHIDI4oj9fYJjB2yb5p3iYI86Lj0eEKA2N1HWJP0cO4VekXtiG0g4jInQ+629fzvg8CZYCcbOx43opDIAg" - } - } - }, - "JIQSHIPSUJ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:JIQSHIPSUJ": "69+vgdn/05sWcvr4SYryUIF7heJ/jUQAPU+9F/QnAzQ", - "ed25519:JIQSHIPSUJ": "hmy9kuYW89v/G0dxmQW3vGIxYT4oNBg7uJK0rHxWG1Q" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:JIQSHIPSUJ": "D/3HiPBTRU0T+4LlwWZcojOOJRFtlihPV07lqzvC4PXLOx3xb8uPDDUpLumPcRGg12aj4MkfvjhMTgQ/R8WNCw", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "Z4D5vpNvq+EOW6fP3N5AiJmKd+Wil3EnwWk0eKoXrLlHTbhcfb2y4YzxHh5fqngtZ+ms6P30gs6uZ41qaxk/CQ" - } - } - }, - "KSHMFEECTD": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:KSHMFEECTD": "SoO7rn0yfuxlotQw8/L78QDT+CQXLujrNXk3UV2rPFA", - "ed25519:KSHMFEECTD": "qcMlNBi9YNxxFXxzaI60m5DgAkJDB2uXPnWdTYVy5IA" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:KSHMFEECTD": "ep7c1NprsfPmJg6O9hL6wtxnMooepNosRtEqpQTmhYT5rxxW0RB1cFb6yyh0Iqrp6eToxafvOIAFu+AfnaHFBw", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "HPgMsub53B+eg9vnl3tssmwPIvIceDZQ6++/rX8YSB3/BF6aOBxiVzmzeGW/l8RJAKqMu/g2HyBQEvxROoJECA" - } - } - }, - "MURPHYJBCK": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:MURPHYJBCK": "6EJnhMdoyXYj/YWEGuHJ6xvBu3LRufRqMO6FSUW/b1k", - "ed25519:MURPHYJBCK": "TsIyzyuvlwLLqBM9lW/je7emCG8g1UHEZhqVwB5msr8" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Masaüstü (Linux)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:MURPHYJBCK": "51d0bnShiT6IcVyCw9MxZchnwOYIn8zUkxi27p3Y9gQwqpzhwqZhYGmNGOpq6zIscLvg8uf3OMNoaa/2JieECQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "mTHTfNSaPd6TarEHq+2Q6WsFHEKMLfDN+YuQehYGtN70W/ikraS+sj0WG16haB2AFPEnhxNSCDsoA3agEy4KBw" - } - } - }, - "UFPKUKGABI": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:UFPKUKGABI": "P66O9g8U2dYew/4R3HfIS5ghOfHeV5YfGgZkvWsHDzE", - "ed25519:UFPKUKGABI": "uBblSEz6NvvBdPrmjgHMVRaH1eeOU9exuJJx5eXCHrk" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:UFPKUKGABI": "EeFgpWqP9eHcooWy+Bf4zy0kOZqj8VwBlGKvtU4WTu7mGzQmMZfJkQysKfEB/jvoQLESNhXH/Zuq5/a5n16fBg", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "DiRcEGocPOmKQSgyG+QdF5DRGCYrIzLH1g3zAko/HU6IhwPZbDIiriquUV9cZbPdVMEFwe0u07OZTgzCUF6YBg" - } - } - }, - "TRILRNVWOE": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:TRILRNVWOE": "zfMJhBWK4JFn0YRwleN7nevMYfpJVtchtYDt09jQHnI", - "ed25519:TRILRNVWOE": "29mmVU+StraWSJC5Qsd/dAH+ozaaNm97ZrBlzV8LiaM" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Masaüstü (Linux)" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:TRILRNVWOE": "UPopQFh0U+/X/B75doN3fbdVIlrKoC4nZdaP89stjmP5R5iH8k1Z1sU9DjGlKjdwxQLVLh0XXPvZN4MbhuV/BQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "3lDXCEbE4ubberDiRWlfwAjhw6uOkLHO1nNeW53EUw4JxMqtEW6Yvt+aLqJ2cBn12IqMuTKbw5TAx0prjm33BQ" - } - } - }, - "VCSGYJFPIA": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:VCSGYJFPIA": "0aTuLvrfZpMMBEIsv/9NJDkDGxyuqIKeTJDjn6stYSw", - "ed25519:VCSGYJFPIA": "U+kTz5vEZPHqcnO1pXxj1Xkl8BDRS32O0x3Na/EVgl4" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Mozilla" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:VCSGYJFPIA": "Xqie5hEyZ1I8Zull5iwCOKtvGXGa5GLcmvEo+AXGYr8uroNuVal/8U1oNvk/CKkxJBmve7Nh7PmlbuhFzCTODQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "fbbpaNLXeO8ODjg4CHK+c/51Qwokydxd2OYTgumFRv8AOt8WQW9neZ3ZP4nAr9a+6sLDBX8f6VsV50rvGVpCDA" - } - } - }, - "ODYEOSBWTR": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:ODYEOSBWTR": "mbEwXkY3wR8xXHo1381JxYKUwFyahyKotGmwy7mCv3U", - "ed25519:ODYEOSBWTR": "n/sXwZQgUr/d1EmSivKszb2799ajqlAc+LET02BSBOw" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:ODYEOSBWTR": "Oyv65y7/JrFyXglPu95QA42G/mR8YXc7sgxyvCNi89pqL2lXcFfyJXOsv86w2h7rfwJi5XgC59lq7FwHU/h5Dw", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "i8ciQgOzLMVBOg1GKfyOvppNgY029fJOmfWVJYnD9oAWQhqCHq8osYk8+m03eyf8dlQ18omYvlb9mDlbmBrxBw" - } - } - }, - "MBHVVXJQUR": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:MBHVVXJQUR": "APL9dU6ncvpJsO5SxHbRZgOGigh4+iVQUy+teZ2i1CU", - "ed25519:MBHVVXJQUR": "AYCcflzt53W8+iTheiqcwWB1aDg7oBIGS6TI/795eaI" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:MBHVVXJQUR": "eA3rSxZk3Nr+LhFPpX2MSDb/9HwIBlBS0ig+pRZYNkSH1HCydPJ6v+tVLtCrvUb2ygDM7mkdwzO8nU9nhQ0lAA", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "CukM0QAPmxnyeoOtF1iVKL4/btVv76DgafmhLW20g7GFiia0TVGvcsXHPMaseGGiDF6okh/4rmtiiGwwf8ezCQ" - } - } - }, - "DDFDUUFZNG": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:DDFDUUFZNG": "u02Q47VF3D8lIh2MEFLXKVAp+yZgDPzbdifmtlLNrw0", - "ed25519:DDFDUUFZNG": "CJQOGMGHxqWliLHpWmUH8dYcH/OcBMx1L/IHiEk1Psc" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:DDFDUUFZNG": "IYGzFd96JnFceBKKeK+y/jCrz4a1yZjioqlOIQPVzFj4dJ6z7PPj5AUhO+i64p4CCgEJpEQ+ZBjbRjJZBHQzCQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "dtvpeZ5reaUM5CyznyonzVHn7Kfy6UKD+4GTrTTnfjrqEbcLg/lklIL5eEqrO/306lDcAFLyKHMQxSghGaeEAw" - } - } - }, - "OKSGBOUZXZ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:OKSGBOUZXZ": "PDxxvwLtxlRr9ZzyQbFJQnsH1mFmRxbWd0q7BtuaYTI", - "ed25519:OKSGBOUZXZ": "PdTQk+sPIb0JsKEuuEQAQYIGSi/nDQURD8EwaDcRiIA" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "5950x" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:OKSGBOUZXZ": "ARRiSmiSXj24OsVEHOHqOpEw2qHVVRfy1SXpJpDLuWDG1CkM07f++Nj0yNomdxR5nXW6NmMaK+am69Z1YdQSAw", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "HSUpGTY8POWC0cOTfGO7uQNrj4CIMFvx0yGQ6dBPpAxlOoe7uqdi935dS8ovaRvwkN2illy89g7KyNaqdHUeCQ" - } - } - }, - "PXBWOTFZKG": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:PXBWOTFZKG": "xkNeAIWJakKTLG5dAcl5jTF7YW082VGsYn1YUOayhzA", - "ed25519:PXBWOTFZKG": "WbwatPS5mzyyorLYQmSmuHoJT/2q+xnmDTkoqytkn68" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Freude schöner Götterfunken" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:PXBWOTFZKG": "eQHlTfyaygnV0GkVE3slxDQ69SekxfkOFPXkpugaY54Hw/aAiD/mmtUXoPjVpHKyElTp8k61e4b/ET3ZBxh8BA", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "NqiTLhJ7d/D2pOkdrG6voL6fmpm/hj++djoYcJzaww/ejvRiDJqaZUET+/v1uAliCWAOfzECzpwlGowvF1kpAA" - } - } - }, - "YMXLKANXBF": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:YMXLKANXBF": "E/RkNef/8EcDAmfOLCCX8mLM9k3ET1P8RVUvpfA1SnA", - "ed25519:YMXLKANXBF": "miI7ZNb9FwaFxKCDA0W5xhP2VIQv+X/LRMgGkPLZi2I" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:YMXLKANXBF": "hXEj6+SWYg+xcJC4I1pfDMW3svItMAzfDigl3m6ccBVQSj2pp1ejIPchQxRSF58X01aClfFe3Pqx+sZ2DVV1AA", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "3LgbofSBJup78qyil9sRelLDKZ2b+JUl/9tkmXAzjQmCi4EDbDsYV9s8QtCwfliwo7KjSQ6cxOJiGp2WQjh4AQ" - } - } - }, - "QXCOSPSJEJ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:QXCOSPSJEJ": "wWcb8+7g8iIuLXjyhNFpF2ifBrCqp8HJ3pT0rpJ2JQA", - "ed25519:QXCOSPSJEJ": "JM5zmxKnGdDUUvlSyiMoNgwfcgYhAMMDh9qeUHF2tqM" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:QXCOSPSJEJ": "PQUMYZEFeyDXuT0vGvRjx6+BQbvFBTK+GmHJQqamQxRUuAfJcY5g0+UWS6/NPdOH0qhYhaqhte9Sc/MOVlooBg", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "1j1OMyoyuYRBfskRa5f4WYZWh0LmnRYCmUAFSa3EwdUr+1kt+7sRWIud9ZmyyjNjx/LKvFab0i0putzdFnOdDA" - } - } - }, - "RWBRQMKGDS": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:RWBRQMKGDS": "glEuPNw2DQW6W2ZEitUnOGfI8k7dqDdx1ylYkrRzcg0", - "ed25519:RWBRQMKGDS": "4b/tEcZtxieKiDBtLGOV8m6sJLxkMa1Naev/S/v6ATo" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:RWBRQMKGDS": "ENdVBhE5L7ZRxHicJ1BR5Z4o/YEisUEfIiwO6naSOoNFtBjSu6MdZRfJf0BoEZM6iMGjrG7lwOXF3jgjYCcSBg", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "9lXBKzJeoDUpyaaWTFXHGMyMj8ifr/xDQkCN+gvVBpm/z0JgsKoQNzQJ+PXQ2OSO0+IvinUXoeGwE5ZjPIJDCQ" - } - } - }, - "KUQQTRQQHF": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:KUQQTRQQHF": "9F2LCrbtDYSBfllwfWOVos4ss1Krq6RYzy3apVsc2DA", - "ed25519:KUQQTRQQHF": "jPZDPu7Iy8l0+loHcMPC/ekMw1bRyyPWzwZE1m7tZrk" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:KUQQTRQQHF": "bYa23azSBBxgBvL8TcMLPhdYSULgfiRxuefq/Rs1Yb+NKtdvbqBTfFJk2i9T/pX3qhdlPkGV0x+duPuqLMd4CQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "o5Jhqs5K/dtxChQunFQjdrtauzomKxo+flPbmV7ZjInlJWWM9tBrZY9ZzVtD9EYJjCqAwljzu+T7eDPMgGrcCw" - } - } - }, - "UFUGIDMJDT": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:UFUGIDMJDT": "qTi1w/KX37+kkVg11stanbPVIxnXGPDOMexTWQK0fDk", - "ed25519:UFUGIDMJDT": "y4Qqx+G3NWIKWVUBKLkN2v/wPqOTYedM+w3EWhHUIuw" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:UFUGIDMJDT": "zp7xXMGqaAi+k5HEFGKS4/chxQ8LDHzFAQ4i04PVc5y/fbmbd84xwD4Us+g6TodcfmC/2GOimNKAFpnpGd7YBw", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "obVEd6VEWp54pIbGlnNQlsmOVVrctttduZh1javUeKq7at7ACr9ZaBy+YR+tiXr/6XpFHTFH09W6m4Odhs35Aw" - } - } - }, - "EECYPNVQSQ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:EECYPNVQSQ": "CXiE0o2HyT5dBLti55HWg2sBYdL97QAHMPByI5SZozk", - "ed25519:EECYPNVQSQ": "2rXZI9ccsCd9twjZHqQ4PT7Z0N33x2OCS3f27nLg4mw" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:EECYPNVQSQ": "Bm+ihyYwa/FiZ/cIg2dC//489qPovUMIpSmH/6QnOQq0DyIsuosZrwt4QrG+JFbevx5ZFuiO85mlNdvawwcOAA", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "xNFJkDsLBCUiS1enufNPm2o43IM4ZM3K1o+RN3DN8SLGKPcHJGc/9jMH/1pOv+X5gOf7MnlitGHvE3gqFwoBDg" - } - } - }, - "HVATOHBKNH": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:HVATOHBKNH": "QAybL/jIElfU0oyfV1Z6xoQosD6PXOEEBiwiiQWqPGs", - "ed25519:HVATOHBKNH": "y//q6umycEYD42L8OidwM9asVC0XINIpp98y8l2pHBg" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:HVATOHBKNH": "L4yaDfWwWpuZIb2bXMx2b1pvJr3JbrTB9OUGNWQ+urNrBs2r7xBFjWdooQbBSARFrlObzIPsVLhxkTmMvl57DQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "jSaPGvL+0iVSuuzWleb+Y9QnU/FrYoGmua2YD6cPgTmP1qvDLLMPHgRoJnnjfpefUe771oGUEPcWMCC9p0RUBA" - } - } - }, - "FQXXZWQZVP": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:FQXXZWQZVP": "fjjFVSKKs8VNYKmwvU83S8W8q+mGcXcOtRMqX7oS2Ck", - "ed25519:FQXXZWQZVP": "ghpLZVbafs3hy+Ng2TZvroQXJcA/FPRlAhJ8NvNvbO0" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:FQXXZWQZVP": "arVgAiy14nUYrz1uyEN8hL5Ja0fuek0HHHkDUVXEa3BeQJ8zgy1cbN/0oL3g8uebdZXCnRUGIbHLxSRQcITSCw", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "LUjLkfPSQng2Y8EcKmp3eQUdAytmRgMlossIXCjKtRcqP/EA5zCeAZMv5iz+RQHg9N6/gSIC7KIW8kGziug9BA" - } - } - }, - "CEDQEUYKPH": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:CEDQEUYKPH": "l9rzhMltufrK6IawXSgblredG9BCbILHS6XIVc8KZUs", - "ed25519:CEDQEUYKPH": "N1fUadFeckDNJ+DfoL3sJjElJriJzYsFtVVuB4qURTI" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Android" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:CEDQEUYKPH": "ZaE5TxRuXRueSJ9uU95v7FqJplhW0ycBhQTmbAbw+qo2bSa9QQc2wBerKIDyG0RhIvQo+Ciku6L5Fr/YUQ/vBQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "kLQOYRBgIxDWunYi6+x/m0ItCqd0pVXiZUFWY1roPNYEiqW/47iZUXszzoCcD3WB3CbGt13ZZvi6UWHx5hefCQ" - } - } - }, - "RVMGEKWPUB": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:RVMGEKWPUB": "QHDRs516PqvMtTr7m5tZWn+nuh7PX965yuKtiPeaSSw", - "ed25519:RVMGEKWPUB": "+KOnFnSfm5ueob0bgzMX0dzLF5Y3AQLlCKxT0Z1Cz7s" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:RVMGEKWPUB": "aT8aJygzBq1Ru1tbayvB4SJn3Cyqn2enx68rj0ztrdWi/Usmf1y2dqNVrXUAppRrrmCryMCygT0B4fR9P6ZbAw", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "f/eQzUTvbUdtoKojVLodIPH2Oz2BNEaBSTSdvMGo0bz99sxGTLxz4CTQyOPJUSgNao40Pd0wROUpvZAVw/8nBQ" - } - } - }, - "FITYJXZPWD": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:FITYJXZPWD": "XgBCVyzq8JlbGWo39M/YJErE65pAxezahQH+crcO+QQ", - "ed25519:FITYJXZPWD": "u2BQLtO9Mg1HlI0wqHRiABEJom902w4+tmMLrglkEno" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:FITYJXZPWD": "zrfLgbTTXvZUCa5Q9i+frWN0cU/EhcG1GKwPtxEaYK1nWU9U1dSolOSbf+pdwLNOhOb7zAdQgesR0TV1LIFaBQ", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "SfByfINpqvlgGGfhPTN3rwKA4Mg6uBaqxukkOkuMT5s1yKIXkoGMIEfDMyezZ2eWLztnyFglWXqsJbE2g3zBDw" - } - } - }, - "RFLDRYHHFM": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:RFLDRYHHFM": "T5UGMtNtk9pIn8IeHyoyHU9S4WM9547XAKoO1n1VkAA", - "ed25519:RFLDRYHHFM": "MZn3M/GwyfnJe9Upy/clKKA75vOdKTgK9cSVWkwo0qE" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:RFLDRYHHFM": "11D4vcECY4Nzm/XU7J/XS6EXxqA0CUT0kYe5CJC1CSN88bhfpXIC+1W9K/g97vNMPWPkfn76NsUAOcmReCmuCw", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "sb2Myh6/+NeAaHmQfcEy81uhJJbJ/vmPlWIyZCLRekhvP9G35AtIgD7DZT6re7mbR06Ut2afsR7gy5biYD4tCg" - } - } - }, - "UWWFCCXVAB": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:UWWFCCXVAB": "P+hMAaz3lio3uS4rv/7TfA+DPUVgxzkwoEz9Z9Ojzj4", - "ed25519:UWWFCCXVAB": "6+9jhcSgseAmMbqRvbkkkRaRtSqXqKHHXS8fMw5R4sU" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Desktop: Linux" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:UWWFCCXVAB": "D+prV4rDV2a80N0s/FOXQBayG8mPCqx1CyhA0/EBarpb+V+u663pkK5R3fydvFJH59yi+syhBHestyAnqdGoDg", - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "omAwztHMpK4p7pUnlZOXfjQ5jYFUFUVS4km66j1QCIX6eSs6GTpOAEvIefavUlJQXKwOU0Z1l7dMbjEIEeeeDg" - } - } - } - }, - "@valere35:matrix.org": { - "HNTBRCSUZG": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:HNTBRCSUZG": "z5apjHg54MJL3Tgp8f2JsBl6g2nOQ/dlDIQcvKfl5U0", - "ed25519:HNTBRCSUZG": "iXWJBWEbNtMf3hNauOV7rhb2EtrF75KRs69lmpSeiss" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Mobile" - }, - "signatures": { - "@valere35:matrix.org": { - "ed25519:HNTBRCSUZG": "gwfnDwW8ZLjWL8F6qdMyP5Q06b+jTJGA4Dz7PSDKHsQleLQn288QxO2jHUQV7mTN3m50JM8r5f5dbN1vBFZ8BQ", - "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "cyKgpGUSjbyShg9J9MQ3MlgfbHh2PmNBlmdR4oQrvjHyXQ/+XuuUDgb2QES864hCLWyakd8B7Cr4Ugv9rMCKCA" - } - } - }, - "OVEFLOLOMB": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:OVEFLOLOMB": "5WlPFqhzsObznutZlEVkVOvXeu8J0fkX2q1Zg8fgu30", - "ed25519:OVEFLOLOMB": "R3G2iKCPN0wlwLDivGz+o+dB30WMZHrJFV8SHhNpJgk" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "develop.element.io : Firefox pour macOS" - }, - "signatures": { - "@valere35:matrix.org": { - "ed25519:OVEFLOLOMB": "D3gVdIUr7fe+Z/TnDpKysm0uI3BnRabqP/ODFqg469+/AHrEx3x2yHD6PcFACg5uCRLjWsSLbkGmcTNoWnUnBA", - "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "WujpKvgphnN4+3IMrDdf7NQ13ayuiNG0hX9EacbOGBSQ0URKC4fPYCNQQxv+c0DSaL65M4brt/gz2+ySLrM8Dg" - } - } - }, - "VFWIEEOYDC": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:VFWIEEOYDC": "mKzDEB40QgdCV+Eqh6r/neYShY+xHsjXVfKo4AL93T8", - "ed25519:VFWIEEOYDC": "6T3fYcHsxVdHXpUflXYTNWklrn8OVww2BV/ws+f8yqs" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "develop.element.io (Firefox, macOS)" - }, - "signatures": { - "@valere35:matrix.org": { - "ed25519:VFWIEEOYDC": "/qa36l9zlpclztP83hpXs64cO2cZlaPoftywzbo8GHZT+OM/btZaoWb6VbhRdO1OlLL4cYO2Krn8KB3ytVngAg", - "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "igzfPgivUJgHv/4y9cBgIWuw0G8NfHACOmXXGM3U0FziczQfmnjwhzFydtolLR0BrAyBceqZH5/QezcavSuRAA" - } - } - }, - "TTIMKYGTHL": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:TTIMKYGTHL": "AFLbAuQ/SbGNXK7UTyaAGIY1/dTtyFokr8w5cIW6V00", - "ed25519:TTIMKYGTHL": "RWEM5ahPUrv9fTBjfLuQdl/j6q5T93tfq46wN9pwBDk" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Android" - }, - "signatures": { - "@valere35:matrix.org": { - "ed25519:TTIMKYGTHL": "2lvun4MtZWW/C0df/EBEyS4kAPdHk4IRItSzXSaDembedGQisVXLDf0tOWVre9G1YDz6y1nYtQ+upnQs1NxSAg", - "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "0Gy2haj8MiJFtHK3fDQdyhICy8os5sRVrT1Js1uu41JFQMO7Zpw2nCjm3ISV9tphbsmyyIusTinnRXreM77xBw" - } - } - }, - "NTUTBPVWOO": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:NTUTBPVWOO": "NglEm4lVqx+7EXvQGdSOpbZeyl0n6peMEb6j0KnrXxA", - "ed25519:NTUTBPVWOO": "RXeYWVZFVQlQzS4X+TazbwLLM4EOJWK5divj9ZPu7Jk" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element Android" - }, - "signatures": { - "@valere35:matrix.org": { - "ed25519:NTUTBPVWOO": "8XWVlOf6kp3tZdaWfffmx7bFa5SjF4edqd/0VwoI2IxhRmLMn8aiy7YmF1CLE8F0OVwE+NRXQ0HaWOQyJCZ4AA", - "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "A+qoi21V4nGKDqD9jn0iJOj812658iXtj75o+MJCM4lmK2mVpXoTYS191Az1DwG/s0O4y/xT8RpQmbEXjBn+Ag" - } - } - }, - "QMTMLMXPNZ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:QMTMLMXPNZ": "rZ9e67vd97LrsWS0UrkPwlQ5Vo0Oh4Y+/ZvSbgmQTQc", - "ed25519:QMTMLMXPNZ": "RDrbQ2yhNcSGI0Km2pfCS8LaR6eOSvYdhzLfJ8Xsno8" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "ElementX Android" - }, - "signatures": { - "@valere35:matrix.org": { - "ed25519:QMTMLMXPNZ": "xAWuJB5vin7SmciOB6Yo+Ti0/q/wGNELdCSJS43LzJjKC2d+y+t1cOuDpJdgiBlvbGTX4M3MG86JdhLl6kcgDQ", - "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "E0j77t//ZnFbwO2C++hp1mp9OUvKYFxvtH6MJnUMo504tyvOoBH+/lu1NY6VFsXvZbJeV5wz+wt+8T/yZyOCCw" - } - } - }, - "ZEKOJXJSTH": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:ZEKOJXJSTH": "s41xFeKe3NKtqbwog30++kfOvfD+kbJciTvdA7m9Jj4", - "ed25519:ZEKOJXJSTH": "qiagVCMwimpeidMVClQKIW1NmkM+foCTy8xc1o1vECM" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element X iOS" - }, - "signatures": { - "@valere35:matrix.org": { - "ed25519:ZEKOJXJSTH": "g2hEJj/redAI/YRjw7X3NOt7sAn1vITX9WMvnaOs2vUpAiwPbnehfvApQLyl217FNpbsu2V/7WDLrfo8D3YtAQ", - "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "J3NKeyYxDoCvSnkwfRrcL95T604y/hCTMW4iqUcpI0A/5fNiVsIgB47neGoWTtra+H50Q0ulcnh/6QsW0ctzAw" - } - } - }, - "WEFRZHKIQS": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:WEFRZHKIQS": "Y6FfL8ap5ezZBSOx0J6k32shoEqo+SxjdfFCUIqZulg", - "ed25519:WEFRZHKIQS": "BPiMvubk+axJmcushqtoM3MO0giGNR5ejQPlXzRItYM" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "develop.element.io : Firefox pour macOS" - }, - "signatures": { - "@valere35:matrix.org": { - "ed25519:WEFRZHKIQS": "ZHoFsiHNNgos1Px3yTMMD/HHIs/y+86uwmeYeFWjd6Ofr8muRqADcwCPcL8Chd0mMJHKwH92IZvptlIA/kbICg", - "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "RwLH0EnZy/A8jCU0WuMmKl03IgMXU3v8FMQxKi/KMKVAfOtEY4n8Fj7NHDhqp2ZeB+M1AY+vHxN86rFrhSB1Bw" - } - } - } - }, - "@valou35:matrix.org": { - "DNMWBXKPMP": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:DNMWBXKPMP": "6842aI/O/ma6+IshHxq7mm5p2WOKbMjeP6omOPOgCjk", - "ed25519:DNMWBXKPMP": "cPWAGNiRHuACjhb2ca0bgTZqg7LLnpUajDAXIIV5ZhQ" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "develop.element.io: Chrome on macOS" - }, - "signatures": { - "@valou35:matrix.org": { - "ed25519:DNMWBXKPMP": "ZtfydeP9fzJSSsCTZMcCjgPGOQwkyfDBPmyM9wVACqff6m9lyx7a1tmjneahTI5hFaXa3NHaiq2bMJ2vILgNBA", - "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "JndS8hFve3LfSqmJbM2NQKJ9LlTSGbsCeoOXTmGYlnA3oE0V5FJE+rKdDDKzp+PH/JlgKUdKBypEygsR5LGbBw" - } - } - }, - "UQOMVNNGKO": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:UQOMVNNGKO": "USI7cG9J/fdfBBkAw27JJawVP9AyNuGLsSOFdbQpPSE", - "ed25519:UQOMVNNGKO": "sXHAYdjzVeONrcCVpfopJ8P1VgKfliaxQlsHZGYgZAY" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "app.element.io: Chrome on macOS" - }, - "signatures": { - "@valou35:matrix.org": { - "ed25519:UQOMVNNGKO": "DrMWZKxpveM/6FFDlJLnLHFMQ2Pfiuga6Gqk8DUXLob/EYfa/+pADDNTllzyHSP8zUK9mkx8G/SRkXnNO3F8CA", - "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "X9td1kd76LdIEZTf1OexHFbPAFnQ/zf6UCN3SVEjIpoDzBUYohc3+HADdS7e2SuAzBnrqvB5se03KqL55HpWAQ" - } - } - }, - "NZEUKRXQMC": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:NZEUKRXQMC": "7GG0xijodo4mbL9IfMpPqYna4SE1Dxym9zJgqfnHeSI", - "ed25519:NZEUKRXQMC": "atyjWbWoU1a3gThRfUG6ZN4cQSiU+t6pknBLm2vZh+4" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "develop.element.io: Chrome on macOS" - }, - "signatures": { - "@valou35:matrix.org": { - "ed25519:NZEUKRXQMC": "Q6xvAbiUOZCotE5mhNJQXsoxKn5LKQpG7HKjBgg7ZQVwvyCgVOl+CZ6/urFhPUvuA6ZRwskYSTWobW5V8vP3Dg", - "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "UK5IE95hf+26e1mSbop2DL2c2zyASrHNVxVmDnpM1MktJ/JxTenW8CrhMKybf72x1qXlGSKWmmHtI1u3wT3DBQ" - } - } - }, - "KJQRGVJYFM": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:KJQRGVJYFM": "oddJJKY2QmwhoM6kyBVDUyjoDceco2LaknWavSBWjCo", - "ed25519:KJQRGVJYFM": "rlKVGw0h6wCQcFgWHnvNcjxC+0XEVrrVO0006ajeFfI" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element - dbg Android" - }, - "signatures": { - "@valou35:matrix.org": { - "ed25519:KJQRGVJYFM": "YYO3sWEwUUXohWN02cdkfW0IKPbjtn6X5ImGlthimEli2ZCnkKLXD0hd5gChq7jwWP78dZzI84ilcfbGpGrDCA", - "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "+XALgC1AV2QkF0goNhoAcoj7P6nf32mTvjSexI025+YVN+ZYzrptIO0+lAoETKzxVTKYX0jQPYSf85bmkqfuCg" - } - } - }, - "VARLEULJHW": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:VARLEULJHW": "WTEctJ3c5nTP+KLS/XtZRXOB5dslpljvOSG1mujGJgE", - "ed25519:VARLEULJHW": "3qnPW4dpPBQVTmlRkHg3luWhfvMs01OKmRg1iqLV8HE" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "pr10080--matrix-react-sdk.netlify.app: Chrome on macOS" - }, - "signatures": { - "@valou35:matrix.org": { - "ed25519:VARLEULJHW": "wVCbKAofTQQ64qzXPdEBByqsqduBRCKYZXqJcLvpR12m42j4OgqN21l6DUDdLrjHGRSlf6Mmj/8YUEF0LkXQDw", - "ed25519:YC6EIJpSJM1qC1B7Q7HMLSE6SiBxN4jxSOnxrhVCgQA": "NmeAAabHnHjSsycQ8Fn85B3GOYLRBB4QvGO9dtXzi/mvxp0qMifCL4tgXeFHXFuFNnIiE9F/3eLoILXgoZFqBw" - } - } - }, - "CVLOWPCSUX": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:CVLOWPCSUX": "jq/Xl9TNixlI7IMejX0RU1YdE1nlDj2nU6bKuOWriQA", - "ed25519:CVLOWPCSUX": "tV2mHKPsRI3cdmnFiH7ojeO8Xe+BEwEype138CUVRLI" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element - dbg Android" - }, - "signatures": { - "@valou35:matrix.org": { - "ed25519:CVLOWPCSUX": "zllIAItZvyTTodG8W0siq/g/fLivi1veEIGk7BoaITUeSzVNxMslJqd94nUg2pzlHy3R8QSI/3ahaicvGd8rDQ", - "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "jO60Ho0cRdftIBA33kN9UVIlX1AgmzTOMbKlZHW6LS7G/FLbAPbLpBaduo5Wpq3QIJi/FQOI3FU9jGyS753EBQ" - } - } - }, - "JLGHKOMWZB": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:JLGHKOMWZB": "yhRw2EorPzpqzTT7RPIEy6nOLfZyu5lwVJhQwYH7JGo", - "ed25519:JLGHKOMWZB": "jVVuln2ZwL8jLMnm0YGq2OkOUyFZTN+Pf5BFH2+LL3s" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "Element iOS" - }, - "signatures": { - "@valou35:matrix.org": { - "ed25519:JLGHKOMWZB": "n2VwWk5tLe3LH4YQcnVWpFGR9RW5MkZ4DBTSTKYouQnMrpZnQJ4ES/bEAHpR1zlzJxX+bQY48HCE3QCI51eOBg", - "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "D/Q6hzMocoFIh91ILl7JIue3JtQ6qJtzQ76DQjVnRgrEj0qPtgRi1BUA6dFySRjs9JrdGTQKdq1uUck2XB3kBQ" - } - } - } - }, - "@blade:darkness.services": { - "FWPPKQYTBI": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:FWPPKQYTBI": "mpDdYm329H6lL3xCmkG49dmEE/QtpYuN7oEdg7btMhU", - "ed25519:FWPPKQYTBI": "1WXoADUnYzPzzkx4C1IatFsMcggU9ZRcMJKZdMMeK9U" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@blade:darkness.services": { - "ed25519:FWPPKQYTBI": "9cbTum1vaSPTNYwx00Wdsrtu4ybw0GI0Zjlo4CPiJOsxDudrRqbxwTeB9h+eUNtS2kTFTQGII9garjVt3KpKBA", - "ed25519:SDq5Mf0nmheZU+rNyApv+CqfofE/AMXbFXPwO7zzssI": "OIdkskHLkKgQCSekzrjpVBbCFUXmc+3450o5KBxoTRV9k5v+XnTBl4Jw0ctkdkEtkNwzp6pRMdTltATO6u3+Dw" - } - } - }, - "GWVYMPGDDK": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:GWVYMPGDDK": "fCdJuty52TzRWKOb/JXCq10mkBSwaG1QWA/ERmE5miU", - "ed25519:GWVYMPGDDK": "IbRy/oDeM4FcK3H5g4QA7+4xQFY1fd0v1D7OwkdMGnQ" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@blade:darkness.services": { - "ed25519:GWVYMPGDDK": "xRihEAOaaMwiR3bcgBPc7nRYTuH9AwjLz7+3YlyY5ObBU7ato3QaGvQ4BB0pO5KS8biT40AssfpeFh6pPdzFDw", - "ed25519:SDq5Mf0nmheZU+rNyApv+CqfofE/AMXbFXPwO7zzssI": "aL79vAsgB17qxiKRkcGSo2fKT1qfvYRcBEx6rwQdcwN9L5zO1bQrIrlA8xSZSIx2WYE06Uh/YiNtd2Ml/tBsAA" - } - } - }, - "KZZFYVCTWS": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:KZZFYVCTWS": "dQ6Lh4Ayv9fx54z9u0m9DbfrF0zFUcy10tO66+yBPxw", - "ed25519:KZZFYVCTWS": "A0LNF5drgES8owV+zeo6XrXjbyZ4RrH7hZGRmFrlX+Y" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@blade:darkness.services": { - "ed25519:KZZFYVCTWS": "QjTKQHkM5GZMfqDU5shYySC/6+OngW1TbRSQtmS7vieVkGkUDEUtEFTPWxwXOn0VArYq38t37oksau+2+0qjCA", - "ed25519:SDq5Mf0nmheZU+rNyApv+CqfofE/AMXbFXPwO7zzssI": "5bkRrJpzecJRQTOrvRoLEI3uObKwvnkPh1CZZwZ/GFSROKHNNgxfDbZvRtF/LBGVMIJkOun3Qjkg0C7mPWuwDQ" - } - } - } - }, - "@thenamelesswonderer:thesilentlink.org": { - "DYMTLNUQNH": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:DYMTLNUQNH": "EoOIGrUF65hqzPrYPDrdnp4o4cfiDA9qqZbdrUb8N04", - "ed25519:DYMTLNUQNH": "fBrOZPuVuZ1t2eMBY+nHDPegH2+LY7TmkJ9+d6LDB/Y" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@thenamelesswonderer:thesilentlink.org": { - "ed25519:DYMTLNUQNH": "7AFzDjj/WXKdomiJ4ENfG1eDpN6AAL4qK3NisHiowmwXXVV+RlQhmO1uVtnLo+qNAkx1DCd8WWy6DOweu7HgDg", - "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "Qqo+Ehja3D+EHhOhp2RshNGZTFjcfVMEpuXox+my+u4rZTB6zK7/rQ2YxxVGRRPFfW4BK1eZ8AS03/JvxAhcCw" - } - } - }, - "FNQTZBHLII": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:FNQTZBHLII": "W/9ikoZ+QsflawTtxPq4HJ0kIlcjZusacQdoMp9T/FU", - "ed25519:FNQTZBHLII": "mMKUane9dhsDHCHoaAN/zUymyVl6XCltEl5wE68PGvM" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@thenamelesswonderer:thesilentlink.org": { - "ed25519:FNQTZBHLII": "eIlyWfI/Sa2NvV1X1+3IrvBki1pdUbncbEJrQPpXjabfFzKwJ3r208nEnycPc66euEnerbcaG/7GD3ZqgSm2AA", - "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "63+8f9p1BRpg46W99pp6zcpmQuV9YDLTi2MOY1dWN/bCbNN2t4hYIVaGjMeLA2LiU6+avdBDP6QpsoDS8wr0Ag" - } - } - }, - "GFWEGLLTGR": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:GFWEGLLTGR": "r5ri9JjKE7uoPUgs6aCRbiiQ7uzyyV6Eeo7P8FIMGQs", - "ed25519:GFWEGLLTGR": "mCnKe06C9Pt8oD8z/FlWMb1TquVJdfkcOaTOK1w0CZM" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@thenamelesswonderer:thesilentlink.org": { - "ed25519:GFWEGLLTGR": "5XMgKmKDFx/dn6PR/iHRY0ObodTlolw9C6JHeN5rAX8tQm2veYrkHzJcZHiVlr619V2Ib+2a7jr/Rpzk1CurAA", - "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "72fFG+ernhwR3xXzwegcwxCUXT+fP7J2F5nWtsPh/wEhAV/amYV+upsnzRNzMUWxBXO8/vufN1cvhnoQSeTZCg" - } - } - }, - "GTQOJITBXU": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:GTQOJITBXU": "HaKznFaTBGGOsQ4bIZlOjPJaMiCXU41QPiK5UhTOMVw", - "ed25519:GTQOJITBXU": "lkQfYto+GXfREbzLzX7U8pqYLoVTTgR8/BiLBoBBbL8" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@thenamelesswonderer:thesilentlink.org": { - "ed25519:GTQOJITBXU": "y7LmYSeEx7sMMPlia7O9GdmPItJjws20x0FUyVAD8tqnPMAw0nLucVOij4TsCHnPeUnWg/DFABhvM2RShMXwAA", - "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "Pe6fQWnBFO9G4YlS1pu7BExZHxkLhOwrbIpHgUeT3qc7TMuN09iE8L+M6jecE/CtD/KxvGrzcwZg732or3aiDg" - } - } - }, - "USFIMNFBGP": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:USFIMNFBGP": "cUtDm+vxw8pv16E0gCILzGq7xGotuLDgrXVt/NzpUgU", - "ed25519:USFIMNFBGP": "SErkQxsVNUMSTwiHU8zg0+TurwCC/hApoX4+8M58qzk" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@thenamelesswonderer:thesilentlink.org": { - "ed25519:USFIMNFBGP": "HgP4Bu/QoB7bzY6dhnN+4Hsch6SSH6tU+PzUBFxPaC7sRf17+srfUkBM4nqcWFzVP3fgSMxF/9T1hPat6nTjDg", - "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "sY6hstMGh+jP0PBomFwiAo5tvQ4bxqtaltgeNqo/RB2CMRt/S8EFequMEPxN0o28joTYBLHdJOPn2AgyxpIvAw" - } - } - }, - "VTLPDNYGGT": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:VTLPDNYGGT": "Je2Yu7uMmvRe3sExUnopq5qm9iVBet30qseZ/dBelz4", - "ed25519:VTLPDNYGGT": "iPEA4BHFBNfFHt/rSOz9LOb/LRfPxaGimE1ddk+OUT0" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@thenamelesswonderer:thesilentlink.org": { - "ed25519:VTLPDNYGGT": "5telU5b8xTUblSdFvkjqbrErogr+JWPTkiAXKAqjDQ6QW9Q4M9s8n0WUavmm2kSSU/gQ0vcmw1CxNZ3Oo9ioBg", - "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "jihdy5Mlr63sK/rQyu5CgHmrWDiDXlBgpAGSzZDfn9O8IAbocTJIe5jpv/QPLx6a/+GlDtWsz/2r5QzQDKbTCw" - } - } - }, - "WGBVKPIVBX": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:WGBVKPIVBX": "BwPFLr/woDgpjlkSdmobeXfbvEk0xuThQdiiDdXXvn4", - "ed25519:WGBVKPIVBX": "zsntONDO82J4ZrSwI621wRijdcJ4YOguVhjWjQOfcrs" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@thenamelesswonderer:thesilentlink.org": { - "ed25519:WGBVKPIVBX": "epDqy5rZBJWM00eslCVLab28UL6SOGS1K51JaX4Po7jWJC19rvuh3wnY2NI6o0MGuxpRNsY+1IH17cfHTQUECg", - "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "mXjgR30WA769KQY34dmvbjAPlAjf3oIcPvYAuDFDZ4yNw0DJaDl8chMf4G9wSvW+sLBAfDKCIbCPdLjSDmNIDw" - } - } - } - }, - "@mugli:grin.hu": { - "DVSDJHUENU": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:DVSDJHUENU": "JzPcaigdu8X9V4cQrD9kUtkLilW9xUxqDyaZYfYAiEY", - "ed25519:DVSDJHUENU": "9b5Z++2MMhie8QcGR1482S3xnTaRviDOze4jNVVIPXI" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@mugli:grin.hu": { - "ed25519:DVSDJHUENU": "ovA2IrQ+wHEYu491YgzSFaKVUEoIMQvJorTww6cH62CFPqLxkebvXNa1fmQivRUwdgto/mECyLrAhwMjasijCg" - } - } - }, - "DZLSPKNQRC": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:DZLSPKNQRC": "5Et60qTTdS8ooYDAAn6n1GTxLofUff6bO7Zl/JMZC1I", - "ed25519:DZLSPKNQRC": "6Mt6qgcuPG5sxNAScRzVeP2QBH6KuTzyJh2ofNPkyfA" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@mugli:grin.hu": { - "ed25519:DZLSPKNQRC": "UvR4C1+mkuYiY/0VUqgFiANSVn6nG9Sts3Td6nsFfii4R42/LMBN+9HV72m14mWcpRM1w7LY/Chr2F0nru7fDg" - } - } - }, - "IPSXHGGYWH": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:IPSXHGGYWH": "X+bZZ3aB5gX5i1EBn2UafVINUYW4k9tBKujR0cHY8xw", - "ed25519:IPSXHGGYWH": "LU/lRshKi0hnV9E8qSTUKDlwmM/DFKG0AszFofmzeO8" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@mugli:grin.hu": { - "ed25519:IPSXHGGYWH": "DhsKFbCWbdIsJvTBElNlf9GsUwwUY65G6V3OZep9bcAXCSAYVVnfRTDybchlGmvraICAgZ9KoWtswJrw/5pKBg" - } - } - }, - "IRFMWEWBTD": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:IRFMWEWBTD": "nUnyWbVhLwH1cDBigQZTGG3Cwojv28iNGikim/0RnV8", - "ed25519:IRFMWEWBTD": "1AzVNGlbaZfATAD/mMO0Bu2MrHHmfrUld6Bn2RCVZ/Y" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@mugli:grin.hu": { - "ed25519:IRFMWEWBTD": "6R19n/253WSh8bJDUujnY+UeeMfZpyYcxn9hvwPhyh7nyoApsanRw098Ft4PD1iz9FDIPul/tK014lEpJjBFBQ" - } - } - }, - "KABUNGDKWQ": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:KABUNGDKWQ": "dl4ygF4NbLpDkVOZZBGYz1Bwj7JHk7GVatDT7qavo0s", - "ed25519:KABUNGDKWQ": "3Mk3r+gQEPfGonrj/i/6UfDbBtK5WgLVI15lh3vdhIU" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@mugli:grin.hu": { - "ed25519:KABUNGDKWQ": "MclYgShLAr2NXIC4W3eRqIkWUSgsK5bjVoaQ8iZJ3+kSMdsloHt91/oz5tHuSAuDqNwhc24EO7OWJSxL/SDLAA" - } - } - }, - "KGDDMIBMUO": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:KGDDMIBMUO": "i9t/8NRaPNoz47332pw3kpG1NogbRz/wPHoeWcKd23M", - "ed25519:KGDDMIBMUO": "ihZ3n68rHCj5yKMlDhINN3J2H8uP3q8tfCFBSDXwRzc" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@mugli:grin.hu": { - "ed25519:KGDDMIBMUO": "zzDk5Pz9FVb7yGCpnx6nJhRjwbu6IPJ0Pbx4Eekf81EVn3DeOzq8XjLmtfDf6SeKsaZ9RIW4Je/mjqwzyolGCg" - } - } - }, - "KMCYCEQCMK": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:KMCYCEQCMK": "yjRmuOthQhxU8v1pDNbBNY3tI/AQUKnxyxkLAbs9ei4", - "ed25519:KMCYCEQCMK": "zm2P5V6e4osJB9X2Qf76IewUCayBo13wS0sqRA/y1DE" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@mugli:grin.hu": { - "ed25519:KMCYCEQCMK": "b60o73GSIOHs1bJ9ewhg3SS3k0tiMKg9+0bYGZnwzc/3gqbxeOcb7YF/AcJCRoIToi8fiBjTtW+1IVLhrUQVAQ" - } - } - }, - "PMUAJADLAL": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:PMUAJADLAL": "s/hFuk8MJX3pT4ROc4WohFyk6w0cZiamERhkyjx3YGE", - "ed25519:PMUAJADLAL": "snjEd/96Sh6sI8wTmDW++gxZDbNUfKqDTco2w4B8Jv4" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@mugli:grin.hu": { - "ed25519:PMUAJADLAL": "qsWHkSm6miBW183h5sFGTMXVI0OuASfgqqRGTTpbhczbS/xIJyMNmk3ixm9OvVPbwyD0NuiBFqG/RKxyN4jLBQ" - } - } - }, - "RRBHEJDHWT": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:RRBHEJDHWT": "0e6EEjrAoxIw/DZKERXUDLWEsoA5peBFB0s4/Lld4iQ", - "ed25519:RRBHEJDHWT": "DFCAjviK/j1NUL58rqfgIh0XqEDSwCOH90WDEr9TygA" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@mugli:grin.hu": { - "ed25519:RRBHEJDHWT": "x7QSFl+3QgPHJhTe1VB94VnXTWhJNe5mJ+1kPfA2poXrqQ676a6EjpbkKC+NJ0mWVSYAH/ZVApKqDfV8VVpMCA" - } - } - }, - "VQREGALMLU": { - "algorithms": [ - "m.megolm.v1.aes-sha2", - "m.olm.v1.curve25519-aes-sha2" - ], - "keys": { - "curve25519:VQREGALMLU": "0NwRhYAFYprVgLHUFPTQa2sSg4f9o2CKggc+Mm4BtVc", - "ed25519:VQREGALMLU": "cfZplvgtQwUA01jQwuDOUexh8kn9ZB+bjfzShOEYqWI" - }, - "verified": 0, - "known": false, - "unsigned": {}, - "signatures": { - "@mugli:grin.hu": { - "ed25519:VQREGALMLU": "qR9qrimso40BP3zT5CLlepznuetUBtSMTndir7hW2jadmFn5wFwre+0FDHJqwXKNcu/VK+s/O6iykCdVzDRsCg" - } - } - } - }, - "@richvdh:matrix.org": { - "IUYUDKWEMN": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:IUYUDKWEMN": "XIHKG94x3Ht82rKysAQTltL41jxqGqiKT+rw4BtYWx4", - "ed25519:IUYUDKWEMN": "3NW5D16quKE7QO/RBBR1JynIHrgP4Mqg5JvP5cQfCh4" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "develop.element.io: Firefox on Linux" - }, - "signatures": { - "@richvdh:matrix.org": { - "ed25519:IUYUDKWEMN": "4/ZACkzKheqOREM8rsvsMoVVkzbVPlLpWHARp/RWR3Qy91BhVz3pbDmzgenSCvrF0CRQPD1OHpg6cXHZEHDkDg", - "ed25519:GrYuWJGHBHNSpUyeejbkZLhm0Iz3prCuXb5q9IZYT9Q": "uPnDwHA/9Tv9IBN5F+khBVgpAnAey+tstEwnrkkrxK/aAb/MDZadxuAS+g+VgGJjZ2Ph8uM4U4hIhEy0VFxFBw" - } - } - }, - "NPACWYDFUF": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:NPACWYDFUF": "oxnPOPHpTlTRRK8N/WgTpsRlSVws9H2LAJLXk5KNmGw", - "ed25519:NPACWYDFUF": "VajcwGFNChT/umqdFl1D2CZ40rnoB82J1HcspUBxbbs" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "app.element.io: Firefox on Linux" - }, - "signatures": { - "@richvdh:matrix.org": { - "ed25519:NPACWYDFUF": "WB78DTtzIyMsZnJnZKIJh3ZZ07l44aZXmLL6UlVibyo19awsVh9lv2kXanMmMGW1/Ss4QLGGtD+qDiHJE18mDg", - "ed25519:GrYuWJGHBHNSpUyeejbkZLhm0Iz3prCuXb5q9IZYT9Q": "r/ZEyRAoeMjmZLvKXE9U4hpa56gnNAIyo/cIfocSYZ9Ar4OAVt11t/uGdDmIgB1CCBlHp3LcJE5H6Z3x9/EpDA" - } - } - }, - "QBMZUNYVJB": { - "algorithms": [ - "m.olm.v1.curve25519-aes-sha2", - "m.megolm.v1.aes-sha2" - ], - "keys": { - "curve25519:QBMZUNYVJB": "pxMU24GwRGJRCRCU4FhjQmIdwnbeGcmBnW/koM4VMmI", - "ed25519:QBMZUNYVJB": "09gboVqN845h1Y/X+Y3nz0oxfURx8WveHTXYM4jubBc" - }, - "verified": 0, - "known": false, - "unsigned": { - "device_display_name": "localhost:8080: Firefox on Linux" - }, - "signatures": { - "@richvdh:matrix.org": { - "ed25519:QBMZUNYVJB": "1sNS0sVt73NkHHlLgN3l1kTbnnaLIIWmiaPUYBKn8i3l3TM3isrnvERWxQHxRhna+JUgWnIl448RNxBduKXXDQ", - "ed25519:GrYuWJGHBHNSpUyeejbkZLhm0Iz3prCuXb5q9IZYT9Q": "Jr++q1kcIy6jgAz39R236s5PyedxdnnQejlQc77sErZ5OyrsDR4wEdOhCarG2tLoxGmVmwbJmyXJP9WvrI60Ag" - } - } - } - } - }, - "crossSigningInfo": { - "@vdhtest200713:matrix.org": { - "keys": { - "master": { - "user_id": "@vdhtest200713:matrix.org", - "usage": [ - "master" - ], - "keys": { - "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI" - }, - "signatures": { - "@vdhtest200713:matrix.org": { - "ed25519:MWOGVUTXZN": "stOu1aHbhsWB/Aj5M/HqBR83QzME+682C995Uc8JxSmmyrlWmgG8QrnoUDG2OFR1t6zNQ+QLEilU4WNEOV73DQ" - } - } - }, - "self_signing": { - "user_id": "@vdhtest200713:matrix.org", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": "lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k" - }, - "signatures": { - "@vdhtest200713:matrix.org": { - "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "HKTC7NoBhAkfJtmemmkn/HvCCgBQViWZ0uH7aGPRaWMDFgD8T7Q+y1j3FKZv4mhSopR85Fq3FRyXsG8OVvGeBA" - } - } - }, - "user_signing": { - "user_id": "@vdhtest200713:matrix.org", - "usage": [ - "user_signing" - ], - "keys": { - "ed25519:YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8": "YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8" - }, - "signatures": { - "@vdhtest200713:matrix.org": { - "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "u8VOi4IaeRJwDgy2ftK02NJQPdBijy8f/0+WnHGG72yfOvMthwWzEw8SrRSNG8glBNrfHinKwCyJJzAJwyepCQ" - } - } - } - }, - "firstUse": false, - "crossSigningVerifiedBefore": false - }, - "@richvdh:sw1v.org": { - "keys": { - "master": { - "keys": { - "ed25519:93fB6y9SJ3183h6zpYjImjRE8om8X01O7Xjl7UkcHeo": "93fB6y9SJ3183h6zpYjImjRE8om8X01O7Xjl7UkcHeo" - }, - "user_id": "@richvdh:sw1v.org", - "usage": [ - "master" - ], - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:OHWCKPNXUI": "R6Q/vJ5JgRWpgdLLlglKnLbsyvuM8YZT/2juwlf3eCOqoVgN0qbOfidPvesjG458hulKDMQBbLliq1H5DOmEBA", - "ed25519:CTTIZIIKBG": "J0NkdUHIElFPHmlKw/nWIFQe+I4aw6Gm4LbyCQjX40SUf9x2kX/sYtOwph0yQCbrFa72liyXLAhoLTBYUjPWBg", - "ed25519:UNNTRAUEWU": "oQglrJggeWQB00qOqa/J8MhZ9NxZsoqK0oV7rwm2qO4d1lwL3+yrG7DNeGbWadSGT2iAwSlG38I/+yKib84OAQ", - "ed25519:AYWXINGEPH": "20hJYcmWElAsG74HgUggg61pcraBUk3W5XQvjWGhTIjXOnNKB+tp02ztqD6QySYea93YVnin09thd4o4ZTIuAA", - "ed25519:IOTGPIJVCQ": "dlgiXcYZywBy43N5Si9pUQKISfAlcy58XygG5iNS0usepf2xcOPaNcKgJ0vSyyJD0hbeskCopJqS4TZYXfrLBQ", - "ed25519:XXIUTXPYAZ": "wa2qhdKO+9/QnoGMKIFNsz4R+/4Azx1EnEgU1TzN6ziI9BDittt4UTnYhREQ+sNKGDpkMKk+DpaBmVprE3DUBQ", - "ed25519:YVAIKEOEIW": "PFP4O3aZc7EMc3sGrd1dMa8OOilySoSIYiqfecwkOFicsqr0xum/lbDdmp5j0beGnyyeYeOK8mmp2l9E964RDg", - "ed25519:PGFUUTFKQZ": "PKF/JpHFl/VVTHiwmkS2r3mpzvD7xT5iVuLkENPBGvxU575c2vZ63MqCbWzdo7Jc25sWpd62D7H6UxKl3AmkAQ", - "ed25519:FXPDLIQYHN": "dQapHPmhdwFAGAlQmd2Aoh5WzkO7/TLPjfj4Dbupmfm1EL42yMbSOD8kTqSa3GmnliIQy+Sgi2rhQ3SlIMsMAA", - "ed25519:BSTGPAQPJI": "wWVHIziZvWK9+bpStZ5ou33AVewil6IAvkNr9ZLUL24iYuP/DEr1WWJ56njoYAQMSzqnSeaeee7YpGAyxV2ABA", - "ed25519:SBXXDQMSKE": "LP29vksZ3kT4th27LxLJR1zJMOy/MjNg1QjFtIkWtKJPkHB4T29YuSVQwPtUHcq4FDEdJGQZprZRRY9TwWwoAg", - "ed25519:NNJKPTXZQE": "8jQOZg5nGO2bQ4HLvVwX5daOYV/2e+Qe60uJaURosEgLE+bSzskRzA16Mjk0JMK5LE9Yfjq4nnpYyBEKeSBfAA" - }, - "@vdhtest200713:matrix.org": { - "ed25519:YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8": "a5MI25r1eAA+JCFoIGdplPNLHsWLQ0f8fEqb1cS6flngk9DUzHpcQrJ/Twbz+xhh5s1SNAtS8cqslLPb1QIvBw" - } - } - }, - "self_signing": { - "keys": { - "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo" - }, - "user_id": "@richvdh:sw1v.org", - "usage": [ - "self_signing" - ], - "signatures": { - "@richvdh:sw1v.org": { - "ed25519:93fB6y9SJ3183h6zpYjImjRE8om8X01O7Xjl7UkcHeo": "c+SOp1E3TPNWP4HChK/yhK0yUc/AfrPtDLT3II3i5PXjj0SqSk5Mg8ZDv6zZrDkxvvcLazXTdvbaaiiaXxHwCA" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": true - }, - "@kurt:roeckx.be": { - "keys": { - "master": { - "user_id": "@kurt:roeckx.be", - "usage": [ - "master" - ], - "keys": { - "ed25519:6rK7GvZPdU/g+1yAgEzgUlqe/vQsTzAFflaD3DeRQTc": "6rK7GvZPdU/g+1yAgEzgUlqe/vQsTzAFflaD3DeRQTc" - }, - "signatures": { - "@kurt:roeckx.be": { - "ed25519:AVMYMXYMJA": "5OFmHiuklmmNo+mI/Cwsk7v5Q4JdnbI0yLN79LKKxyP/Lxp0Gel8NySgvXB8QdCT+Ucn+nXRUax0Jc79gYURAg", - "ed25519:JAYRAJMNFC": "FnXxrN2pCS0nKl88GO504koPQZQyaBlsZUPAGVxRk+BY1f/MaEn0RI3qCOB8GlyLeYHohSr59R2T7EnZi7FCCw", - "ed25519:LUBZRYLJHP": "/elAzpP4zl0iClbrqU3qfJggodJ2KVNTEwy7dlnGGf4nfeBfJK1xxP4rzKtn344/jo1DO6dxAiuURBeaNHHyDg" - } - } - }, - "self_signing": { - "user_id": "@kurt:roeckx.be", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4" - }, - "signatures": { - "@kurt:roeckx.be": { - "ed25519:6rK7GvZPdU/g+1yAgEzgUlqe/vQsTzAFflaD3DeRQTc": "eISkB9G5tXwrzGuam6koQHHlXelj9O7D3ZgLxC3ua989Vv5TMTFRUoLnpYnyOzhiiLFjmZlb8FhgLlYqRdovBg" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@grin:grin.hu": { - "keys": { - "master": { - "keys": { - "ed25519:NigCTp5SaPdyHPLHWhdH6muh9cJFaWFvyvnl9MKbuTw": "NigCTp5SaPdyHPLHWhdH6muh9cJFaWFvyvnl9MKbuTw" - }, - "signatures": { - "@grin:grin.hu": { - "ed25519:ZTGTHRMTKE": "VM0G//dXrAJjZquveNR7mj3N5CPgdpcmf5jwVLcZfMVvEu89XdsDqSI9YMvcAxW0lg0X7kFH1n35tV2FIs7BCg" - } - }, - "usage": [ - "master" - ], - "user_id": "@grin:grin.hu" - }, - "self_signing": { - "user_id": "@grin:grin.hu", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY" - }, - "signatures": { - "@grin:grin.hu": { - "ed25519:NigCTp5SaPdyHPLHWhdH6muh9cJFaWFvyvnl9MKbuTw": "dFTzuTgti+ISSxYE+loKqMbsPbMO5qpSOKXM60Wv5OlODuwdp7eSuOOyEFofiY3fEzy+ZZhfwISA/uY1AdooAw" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@vdhtest220101:matrix.org": { - "keys": { - "master": { - "keys": { - "ed25519:GO0FuPHgncRvcRRQSYlgKsyd+nmNi7tmNyvu51FAlIc": "GO0FuPHgncRvcRRQSYlgKsyd+nmNi7tmNyvu51FAlIc" - }, - "signatures": { - "@vdhtest220101:matrix.org": { - "ed25519:DMGVHFMRYP": "DLnHpNSm6SXSKRieOAXLbowY4cZ9Llp7+7SVXWAUvp1PNMhBbXMBWuMWutnft83hIaC/ipKN3nvX7lpW6GywCA", - "ed25519:GO0FuPHgncRvcRRQSYlgKsyd+nmNi7tmNyvu51FAlIc": "P1Y79SQ/5TT4Ne8op54Ez/IWNtEew3BZT1lCmGoIt0U8TW1eWyOXoMfGxP5R9SjrglJu/Vu3ZGvUUmq+Poi6DA" - } - }, - "usage": [ - "master" - ], - "user_id": "@vdhtest220101:matrix.org" - }, - "self_signing": { - "keys": { - "ed25519:9h9S5ytahsFQpB+HrRcXSgbKx2qVXUpcDSezvGGDSCY": "9h9S5ytahsFQpB+HrRcXSgbKx2qVXUpcDSezvGGDSCY" - }, - "usage": [ - "self_signing" - ], - "user_id": "@vdhtest220101:matrix.org", - "signatures": { - "@vdhtest220101:matrix.org": { - "ed25519:GO0FuPHgncRvcRRQSYlgKsyd+nmNi7tmNyvu51FAlIc": "uO46geoeb/4MWZC4UzSBhN8LBS3Pbmu4cp3+6P8qxbYfd8T46tuLKTVU0iTGRMNXZPmGKSt9X5QQJ+hc5KekAQ" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@bkil:grin.hu": { - "keys": { - "master": { - "user_id": "@bkil:grin.hu", - "usage": [ - "master" - ], - "keys": { - "ed25519:dheuCIkQnx2uc0pG4tn4AVQfg4pEKv+zMUfaLzx4dQU": "dheuCIkQnx2uc0pG4tn4AVQfg4pEKv+zMUfaLzx4dQU" - }, - "signatures": { - "@bkil:grin.hu": { - "ed25519:RXMPIMAMLL": "MpfqSwJiru4qbhvNH8n1idfk9oCgcsQlURRDs2HhgpKQo6Cvwp39UH25b33ziviyck7bF3vFBhWRDwfOS+XVBQ" - } - } - }, - "self_signing": { - "user_id": "@bkil:grin.hu", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:7rHXNHtnx2nZN4Ht66GlpoHlcHCor4/uunfcp9zh+k8": "7rHXNHtnx2nZN4Ht66GlpoHlcHCor4/uunfcp9zh+k8" - }, - "signatures": { - "@bkil:grin.hu": { - "ed25519:dheuCIkQnx2uc0pG4tn4AVQfg4pEKv+zMUfaLzx4dQU": "dlRgYoR7cAensU2bYm8PnntAcdLYua79lmPIYR0+v9aBOFrEWhYizO13gSTjAtnx5pcuehGAp8Fp3EQJ9/8/CQ" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@bkil:matrix.org": { - "keys": { - "master": { - "user_id": "@bkil:matrix.org", - "usage": [ - "master" - ], - "keys": { - "ed25519:8ujMrE9IRhpxl/d64CDhsA1PIajyavbe4x6JIy+TyCw": "8ujMrE9IRhpxl/d64CDhsA1PIajyavbe4x6JIy+TyCw" - }, - "signatures": { - "@bkil:matrix.org": { - "ed25519:ESIYCHQOWX": "Wn/edP6F3d6HqZWDnUlo6yTF/1PYs05Ioe41Ikr75sACi6xjaO3Qw3pJ6JhAxj7vg+E+3DOHrXmVKz+z63w3Cw" - } - } - }, - "self_signing": { - "user_id": "@bkil:matrix.org", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:4KSe44PGKzgM0B4tNU37PRMPk/5vWm/wCjZzBFFu/KY": "4KSe44PGKzgM0B4tNU37PRMPk/5vWm/wCjZzBFFu/KY" - }, - "signatures": { - "@bkil:matrix.org": { - "ed25519:8ujMrE9IRhpxl/d64CDhsA1PIajyavbe4x6JIy+TyCw": "BKqVvVh+BKE+q1Z5EH/94n0sybyxUEEcdp9TlJHI/yjhUCoy82WCll/mbvt86wkvq2ecPejXC1mR2u5XURJCBA" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@benoit.marty:matrix.org": { - "keys": { - "master": { - "user_id": "@benoit.marty:matrix.org", - "usage": [ - "master" - ], - "keys": { - "ed25519:KALhTMibUWZnAZ5YlKaNtEv9B/CVZjpiBsgq3rBl+XI": "KALhTMibUWZnAZ5YlKaNtEv9B/CVZjpiBsgq3rBl+XI" - }, - "signatures": { - "@benoit.marty:matrix.org": { - "ed25519:PXLGRRCHMD": "TZ1FRfUHgkiFvMZNujV8gEpBK2tzcfhaI8TADpfnglDtJWdSDuGsZVU+zy9Mpw7OZ/7wEgszL84CmeLFR7n0Bg" - } - } - }, - "self_signing": { - "user_id": "@benoit.marty:matrix.org", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE": "C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE" - }, - "signatures": { - "@benoit.marty:matrix.org": { - "ed25519:KALhTMibUWZnAZ5YlKaNtEv9B/CVZjpiBsgq3rBl+XI": "/XN6pngJLQs5/OqZVvVMlosur96OQetEM/1eAfbN1iuu0hOu/tvasNPg0Fo4c7IAsgQeVkhamVwHAdGwZq0fAg" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@hubert:uhoreg.ca": { - "keys": { - "master": { - "user_id": "@hubert:uhoreg.ca", - "usage": [ - "master" - ], - "keys": { - "ed25519:uJGMY5IuWGET5SGXssF7ZinVF7L9piB1HOw+JSNhQ3A": "uJGMY5IuWGET5SGXssF7ZinVF7L9piB1HOw+JSNhQ3A" - }, - "signatures": { - "@hubert:uhoreg.ca": { - "ed25519:JBJCWWOEIU": "d6FqWUllTp+r4MYZRPcPNMZ1bGL9pYj2n3ejuOBnfZsTmq6pmRAgRZBaO16A6HoqbKkjVIgZWFB3Zf/1C39UBw", - "ed25519:TWAPMCMRRX": "TWF9I7IoATkfyXr1iMgAEh7A5P6PJvk3S7PtCQbBGy1DqpCjR/nFkdExqBKd2kVQdAoeQzdr+ImpcjaoydWzBA", - "ed25519:HCSVJWOCYC": "niRYCISa5AGBPScvAtaVToWTK1DyqrC7SGw2twsjh/nzlJtGzGbj8XG9B57+ML0csyZB8sOVKRmJR2SWohuTCQ" - } - } - }, - "self_signing": { - "keys": { - "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A" - }, - "usage": [ - "self_signing" - ], - "user_id": "@hubert:uhoreg.ca", - "signatures": { - "@hubert:uhoreg.ca": { - "ed25519:uJGMY5IuWGET5SGXssF7ZinVF7L9piB1HOw+JSNhQ3A": "J5ufmnuO0eXqm45znAN7zWqHpOlM8ftIKMmbSdNcT5kJggIsDDCcUub5x/8cQtDrRda60iKJWrCepbFv+19IAw" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@eg:envs.net": { - "keys": { - "master": { - "user_id": "@eg:envs.net", - "usage": [ - "master" - ], - "keys": { - "ed25519:YgRaTrY4IgVNtHc2K4O9rzuZxoZAY/VLn0pRa/R1UJg": "YgRaTrY4IgVNtHc2K4O9rzuZxoZAY/VLn0pRa/R1UJg" - }, - "signatures": { - "@eg:envs.net": { - "ed25519:WEXXMGTXJL": "V439MqK3NueaHG5qHseF393ZgavAflWdT58de3FW1Fjt+JffCGfFyXiuvpg0DmVeKXDnOMMPdV7rl8QN2C3vBA" - } - } - }, - "self_signing": { - "keys": { - "ed25519:J2GzPDvJnFEMfKkjqnpYRrm72XIgjTJujIYYCnxqtns": "J2GzPDvJnFEMfKkjqnpYRrm72XIgjTJujIYYCnxqtns" - }, - "usage": [ - "self_signing" - ], - "user_id": "@eg:envs.net", - "signatures": { - "@eg:envs.net": { - "ed25519:YgRaTrY4IgVNtHc2K4O9rzuZxoZAY/VLn0pRa/R1UJg": "umf96/A7RkYj2R2StGV+oSy8xbCHwnkl73NoLxJzkfduKQYihvv2cDM4QUKWoRKY+1arKe8HvT96WMPxgI+cBA" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@jassu:kumma.juttu.asia": { - "keys": { - "master": { - "keys": { - "ed25519:LOMVWLcBcSHs7Xb3xhhjWMNIhWw4wqoIAPlGy8GaXTw": "LOMVWLcBcSHs7Xb3xhhjWMNIhWw4wqoIAPlGy8GaXTw" - }, - "signatures": { - "@jassu:kumma.juttu.asia": { - "ed25519:Thk9IqBO": "2Ha9tYxFyYlJ8Nq0BNOq21AfMMrLuvpwV4dcfNx02vErdW/JAYMbtB3YQxiYP+R1pgymA/10Jim+I+Mds27jBA" - } - }, - "usage": [ - "master" - ], - "user_id": "@jassu:kumma.juttu.asia" - }, - "self_signing": { - "keys": { - "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o" - }, - "usage": [ - "self_signing" - ], - "user_id": "@jassu:kumma.juttu.asia", - "signatures": { - "@jassu:kumma.juttu.asia": { - "ed25519:LOMVWLcBcSHs7Xb3xhhjWMNIhWw4wqoIAPlGy8GaXTw": "FOVY4LagpmnqXobxujI6+Rou8tGA2nsCJVbaPQ3grzwEs/qlslAcj3fVsHyV+1Cx2aTU5N/P2yTNecCPFpYnDw" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@JoKe:shareknot.de": { - "keys": { - "master": { - "user_id": "@JoKe:shareknot.de", - "usage": [ - "master" - ], - "keys": { - "ed25519:YAhabobkMb2WaEoq5LaMVBf/wVsIK6Snb9StWMQpL+U": "YAhabobkMb2WaEoq5LaMVBf/wVsIK6Snb9StWMQpL+U" - }, - "signatures": { - "@JoKe:shareknot.de": { - "ed25519:HZINWDWOZC": "cuJ9C2qjd9DlqIQUnxgyJWUnpQCWWvYaMOUC1LGmab2x+Fxb2qNDB05sFXxiU6Afl6H7oOtOG5shvS2qTqnABg" - } - } - }, - "self_signing": { - "user_id": "@JoKe:shareknot.de", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY": "KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY" - }, - "signatures": { - "@JoKe:shareknot.de": { - "ed25519:YAhabobkMb2WaEoq5LaMVBf/wVsIK6Snb9StWMQpL+U": "G5TKHCwINNE0j6d2NN8RC2/amvK8cQFnqHKXEA9OjY9Zq8pTgMxq3skE95H/qji9+YlBdnny0TXL+P/2dp9CCw" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@matthew:matrix.org": { - "keys": { - "master": { - "user_id": "@matthew:matrix.org", - "usage": [ - "master" - ], - "keys": { - "ed25519:6JQLt/Z4wb6gkcTDJ/o5aRRtMbP69Yx/AJz0V0h+3y4": "6JQLt/Z4wb6gkcTDJ/o5aRRtMbP69Yx/AJz0V0h+3y4" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:RQRQBRNDOP": "jjkJBXNwtFn3DDl1g3aR4vI5PTHgTgUYubsThmk5KF48HNp9aczRfP7wV2L8vVRue9YYgF5HEtKeva3/Ih0KDQ", - "ed25519:QQZQXQKYTN": "PHnLoSC0IYoA9m/cvCzjEmNasbH7OiEoV5p31R1OBQx1PMuMLHe0R3z7zMcSDE4z9rCH6lE7xT9tRojOEYOcBQ", - "ed25519:GOSFZYRIEG": "l90u69xIvvXlICHIQyyLpe819jawQR514xmHz99+PSXC3ahQZq0lAb58QIGafC+nACawOisYk91Cv8joP5jMAw", - "ed25519:JHCQOENUMD": "vxXo9sGdY3yuo5y1fW7jJYEX3K3a1p472p5y6t9DKdYHPPMosPb4lz6AX0jckmfof6xpLMgCRloVTDAi8s85CQ", - "ed25519:BSVWPNOIDU": "rzP/tb1D7JV9/liibq8lqeCNocuRLhGmODtNPq30B5M8edPLJT2oNEosCJj2pK2/OAArOpHcodJBv4li3qQJCQ", - "ed25519:RVZCLWSLUV": "gNv4OClgvCdT0pBWM4JtPYM+cPmMLoPAXw8f8/5FFJSknC4Zvl5MtHcG4WsCffzO69l03Lcnj1Hk8/7mm4oSCQ", - "ed25519:OPEDGUYPOP": "4/QefS+rzSK96x+ybCGZjp6Wfsk5NJXmSJuqQt5Ut6bfY3Oi3N2ZsURp4lerZRULziaTGxiv9cXe+VloW8W+BQ", - "ed25519:OPCPOBPADJ": "83JVeduvLYCVxfGN0GCiLGvU1M37GyZEfBt5RUx5rAn7d4eJl+JcaUy1scXqBsXbsJr7x0/H3DzMBN+Xh/j8AQ", - "ed25519:ZLTZYUHALU": "57n+r/cCLxuherOAyWjVtExYghdNZdsugl+N1Ksw118LA2codYHvUH08YfwaQCQDwUT9kXvog14gwO5MUWMBAg", - "ed25519:PWKLFNYFVQ": "j3C01/2OSvlqF6QwQTnnpZMo4mUu24XzcqDzNN+AJiJ1d3SmfS3C0aL9yZeUnNk+I/oa3wMannikAmqR0tu9Aw", - "ed25519:NECBHVYYRL": "Q+oH+qHOKe/+po1M8GfKpDedESfbWoyqfb5TKWOxqIm34R197kaOz8p5IpNZ0mz6s733/rKcGMerX3s1XBtUCg", - "ed25519:OXRRXLGRAD": "/fmLLOMf3Rifj+2hOZu3YieBiZQxK7PdzPqhJ7hL/w+ngTHsu70bY50SMTyKa2SIEEfTyJzSnuiDp4hmUWbdDw", - "ed25519:CVXFJQPNBO": "FZKKPklwljHHtd0acmpsZCMp9KSKFDWyJHoL+GkMzyxAYTwyq5cHsHnhlQnMMLBJzsjsa+rOePY+ieiEZARjDg", - "ed25519:ADSHQENKWR": "azF4vRaUvjLmjvBHF2t/p1xmsQQOAVamDFgHoJlqLWUr6fJHyzbuOriDBFQQ4KTj8TGVoyrF7AXnogNAsZLsDg", - "ed25519:LALDIXKIIV": "GSUvJUeoT5cSWeeh7Avez3H2Wvn4qOEnILAL5FbWUrDRVKAZH4tSkWjwSfPeibiJAuCpU3KzajJ/+3ezmhjfBQ", - "ed25519:WIELRUHNOQ": "kVePiujIgLh0t+MKHovUDbYzykEUm2Ilr3BeL9T0kTRnmtkWQj1lnPXFYz5vX58jve1BScFwldfRBcuAs9hVCQ", - "ed25519:YTCPNBBJPA": "141+b9TzAlvH4EbEwrkHEwwD/6LjV03Yx07Vx6BT9tybHEOs1eDiGp2FE7HlyYf3VvauyPrGHQnOuIcjkJNVDw", - "ed25519:LKUHXDQGED": "E5DM7/pyAmLNxPzMIwyU0AG/XFZSTDAeqZVUMdZ0NcH2GftEtqdtp9tK30E4CPGC5mNPOvT09ZZiybBQ3PEpDw", - "ed25519:VVZPPPGBFB": "ATrCVjRASgPUML/pQ24CZG1ePUjvR6vn/U4pFojZjnZ4O3OpPsh282dZg+Nx345Yp19Bb8T0JgLOvZy9y5lhBA", - "ed25519:PAZFRTFNQF": "DrKSbk7Ea5IAJUUf6idzstJYKkb5gAwT5R/seqhkfnqJiQPOg7tzxaPwec6RbFEezR0mr3u9dmiwCMMezREVBA", - "ed25519:LAPPOPSHCC": "jwPZbWNYd0PfYfl83Ubk6/c4o6HkaDD96cIZbSKa0nTM5qMD/ZLMVuEWG9W85LQyZJWo3JnpAwsqItW+xcOlDw", - "ed25519:ZASTVNEFUV": "5wUFqBMUSIHEn5gGqF8oLjK3jFElP2lSqoXKpeDkqpFpjWGmCjyCUCgm0uYATrbx65pBrh7jV1bTiGmrFOYHBg", - "ed25519:OYJGELEMJD": "vh1kyis+V+BOzkRKXmgvj8+/EveTt6R+NFZwY/PtPNw8ZrfNruU5KdfbO2BS7eolUwxMRbzkgui8Yd5Vp0Y7Bg", - "ed25519:UKLFNVDKDU": "t5LvgSGS9EZY7zNfaZecji4FL1kRuPeBXB9zC1/15PG5TZf0pSdrk6eAzVL/Vi+BtOwNn0QY4zQvn/l1SmxfDA", - "ed25519:QFEBOYLAQY": "KqG4ZjCSkIJnAXBfCzwHdPV8gXe/V0jbmQxpjymG4NMdXrpSod9RXHPjgwZl69TGSM4HKCLFs1O7o7bUCKzuBA" - } - } - }, - "self_signing": { - "user_id": "@matthew:matrix.org", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY" - }, - "signatures": { - "@matthew:matrix.org": { - "ed25519:6JQLt/Z4wb6gkcTDJ/o5aRRtMbP69Yx/AJz0V0h+3y4": "eBGoAUsbEJGUoRx3MpmE3N/xXEi/YNEG+6DM1i6JjOObCvJ360uPqb/stK6OCdwKwZg0fX1ADo58E0gwdoBLBg" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@saces:c-base.org": { - "keys": { - "master": { - "user_id": "@saces:c-base.org", - "usage": [ - "master" - ], - "keys": { - "ed25519:kTOS4T9DcZ5XSUi0SNyOA2HdExIu1/eQ/rBNeMk+fu0": "kTOS4T9DcZ5XSUi0SNyOA2HdExIu1/eQ/rBNeMk+fu0" - }, - "signatures": {} - }, - "self_signing": { - "user_id": "@saces:c-base.org", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:zEDr2sVNTpqH2c6nTqm8f5doFl54qgBcEggkmhQGMts": "zEDr2sVNTpqH2c6nTqm8f5doFl54qgBcEggkmhQGMts" - }, - "signatures": { - "@saces:c-base.org": { - "ed25519:kTOS4T9DcZ5XSUi0SNyOA2HdExIu1/eQ/rBNeMk+fu0": "LOT3+zkJJgBcpnMw3Hj4oXupXD4E5jnLdDe0weIekeKzCflxiJrWDgbY4ucCuznlqu50jjfOHZ8vwUb83+CXBA" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@/dev/saces:saces.de": { - "keys": { - "master": { - "user_id": "@/dev/saces:saces.de", - "usage": [ - "master" - ], - "keys": { - "ed25519:8JtPA1G9UDpZcLp8gg97Zj6zudnSZSy+o+9RfWO2pFw": "8JtPA1G9UDpZcLp8gg97Zj6zudnSZSy+o+9RfWO2pFw" - }, - "signatures": { - "@/dev/saces:saces.de": { - "ed25519:QQKZMUKLJC": "4L0ATGtxXkTxYu9Cfi7mP6Ahsnq4RaNuPX1UD0APQqWwbpHbOeC7Bhakbaj+vYspotvKoZaSecjx7wMxagASDQ", - "ed25519:KWITBBVNXJ": "c/YtSHHAwVOmZDYHeznnSy7gMWhMxdyDSHguidtJhQ/HytGRb4uZtRB9K628T4eVJLt3i04wP37Ig089Bk7lDg" - } - } - }, - "self_signing": { - "keys": { - "ed25519:01Mra0lDap17amp7otuk4ag/1hLZ5woZ6mMZg6Lbr8A": "01Mra0lDap17amp7otuk4ag/1hLZ5woZ6mMZg6Lbr8A" - }, - "usage": [ - "self_signing" - ], - "user_id": "@/dev/saces:saces.de", - "signatures": { - "@/dev/saces:saces.de": { - "ed25519:8JtPA1G9UDpZcLp8gg97Zj6zudnSZSy+o+9RfWO2pFw": "4WWaKlpCyVioB0m4jNIat7eogr0S8ew5i5cHYqOcEZzVL9FBh1JimLkZJi2ysws2+SqUilbTqI0UhtJWd8LlDQ" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@creme:envs.net": { - "keys": { - "master": { - "user_id": "@creme:envs.net", - "usage": [ - "master" - ], - "keys": { - "ed25519:EjITGlHWQ2cbtDL/3bAFPCBmO5xg6ECm55PArnMtRT8": "EjITGlHWQ2cbtDL/3bAFPCBmO5xg6ECm55PArnMtRT8" - }, - "signatures": { - "@creme:envs.net": { - "ed25519:HGZGEJFQJJ": "dkG2YLdy1mOdq0gxKNOB8vGA63VRpj0QIU8tcSnxKRe32AObCeoVA7RNa+X0HjvsAdDHj2Gy+hI9bKqXMrb/BA", - "ed25519:GDFVECNBXL": "vFtkEr7dlJfM/EGf3mB1Lnlj1VqqLCgV5PYNUCJDUGGAQIolILMWxlzpfs4ROc0Joaob3O6VrdDfDazzBCIXDw", - "ed25519:UDVCAZTPJT": "2K9FicNgpebXk2aCVMghtKGof6CSxGv8uwP52ew90dOaB5sYRnvlXa2MdxJenNDi3PX4ddEQRR4KUMxOdlDuAg", - "ed25519:NXQFGIYYXF": "iZ7nKoX4O/aVmt7uyCGj/9QBezRqpX6xwzUdV5DsVhV1NDWl5Kc5EGjCTtLqnIn3WHNHznOSvEXw3jtlxRyyDg", - "ed25519:XVRGUZLAIP": "gjcrVC/4CDqPTkydqLzC5t09Oxw6f67WVugERTsrRuXDRbpjYcJXYtcimwQzHhjlSbHc9xlbVdbLX63MqOseBQ", - "ed25519:YMIFZYDIUW": "VUWVNkTAugFYLRg9uXaDHUpl1ELsEE8pzE1EOB6YR2H4DwG8rUrtCHaHit7wIC62oXzivKgccp5w7VC2pSX1CQ" - } - } - }, - "self_signing": { - "keys": { - "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0" - }, - "usage": [ - "self_signing" - ], - "user_id": "@creme:envs.net", - "signatures": { - "@creme:envs.net": { - "ed25519:EjITGlHWQ2cbtDL/3bAFPCBmO5xg6ECm55PArnMtRT8": "19zTVEgwRRCg5LJiLjbisZynTv4SyEz9lEHnwzD4L88K8W2o8LOwbqkNGjOD6Q53vaeMpacKWG9DcE8/NFlLAw" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@erkinalp:matrix.org": { - "keys": { - "master": { - "user_id": "@erkinalp:matrix.org", - "usage": [ - "master" - ], - "keys": { - "ed25519:069WHFrqZxhNBSYi1NOMCuqPhXvWFIgr5qnyeYzRQiM": "069WHFrqZxhNBSYi1NOMCuqPhXvWFIgr5qnyeYzRQiM" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:VUKXYOCWOM": "ufAcrsW+SU22Mi3zD//5fsLKAwjO6/aXYGA2M67G772Bz+shHRnWeH7ES1mm28V7oeowUBjO0alXkaruYkEUBw" - } - } - }, - "self_signing": { - "user_id": "@erkinalp:matrix.org", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU" - }, - "signatures": { - "@erkinalp:matrix.org": { - "ed25519:069WHFrqZxhNBSYi1NOMCuqPhXvWFIgr5qnyeYzRQiM": "zJuQglpIp2aUGLnkUXuSZywNRkQn3ZycpM/qdKdgQRONDKZzSYfW7ngBum2BsFRojnnEHBWCJcxuYLUi1cVBAQ" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@valere35:matrix.org": { - "keys": { - "master": { - "user_id": "@valere35:matrix.org", - "usage": [ - "master" - ], - "keys": { - "ed25519:mwYvN8S39rSkTSgc67Xj22DKtHzgCl/yQGl7OzMVxZo": "mwYvN8S39rSkTSgc67Xj22DKtHzgCl/yQGl7OzMVxZo" - }, - "signatures": {} - }, - "self_signing": { - "user_id": "@valere35:matrix.org", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU" - }, - "signatures": { - "@valere35:matrix.org": { - "ed25519:mwYvN8S39rSkTSgc67Xj22DKtHzgCl/yQGl7OzMVxZo": "IWYmosldgguYv/aqgesKvKK9Knn5Z4onO9z5Qygca5xt+Pg8asLtYgg1FdB50nyTTF5WYMpFXJHoGD4XlTR5DA" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@valou35:matrix.org": { - "keys": { - "master": { - "keys": { - "ed25519:JwZiicF589Aevdf2dLitKbGfka4r9aP/02QAuN2wbQM": "JwZiicF589Aevdf2dLitKbGfka4r9aP/02QAuN2wbQM" - }, - "signatures": { - "@valou35:matrix.org": { - "ed25519:JwZiicF589Aevdf2dLitKbGfka4r9aP/02QAuN2wbQM": "0xrqt/yeQdlxzK6Ni3NnDkuJBUyEjDg2+9GdDWnTF3u8gMjo0IOmIVDEiy+nWK4De9G6xmwLRfCwRzT9FcuwBw", - "ed25519:SHHHFDNJHS": "nEQpe9rMAT2cRoXSjJrcF8Miufg05qkW6TET1MxUu+lcmZeihTP8/iJ4DESfaJAepGi+eTu3lInYM71cB3/LBA" - } - }, - "usage": [ - "master" - ], - "user_id": "@valou35:matrix.org" - }, - "self_signing": { - "keys": { - "ed25519:mubeul2+H5jir/aBj0+kfsyd+UijC5mfou+uIz8aOWI": "mubeul2+H5jir/aBj0+kfsyd+UijC5mfou+uIz8aOWI" - }, - "usage": [ - "self_signing" - ], - "user_id": "@valou35:matrix.org", - "signatures": { - "@valou35:matrix.org": { - "ed25519:JwZiicF589Aevdf2dLitKbGfka4r9aP/02QAuN2wbQM": "HgAo4Mz+L3xhqkfKA+1Ayvtfv1NXASKIA06ATWPNdcRPmXlfN7XClxv5bMJkIauHaHxQwejxDOUMStxfJQ5kDw" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@blade:darkness.services": { - "keys": { - "master": { - "keys": { - "ed25519:LJ7oehpts4bcNuFc29hcPNgN0l3JNadoqSuyHkYeCxg": "LJ7oehpts4bcNuFc29hcPNgN0l3JNadoqSuyHkYeCxg" - }, - "signatures": { - "@blade:darkness.services": { - "ed25519:GWVYMPGDDK": "1u3f5qhu2WE6c/qFLFuLAAGQJGJesLOE7lt51wn/6mdbAaaS3zcWv7LWQUls5gdDPTONoJ8X1cXCitH5fIl6Bg", - "ed25519:KZZFYVCTWS": "q13uuzAJHxM3aVNMF5z4ctH2AYCIEP1P5Qjrd7SeR3yER0s9FYIAeb9xSxKbvSIA3gYyurG5wnTjZt+a8+NABg", - "ed25519:LJ7oehpts4bcNuFc29hcPNgN0l3JNadoqSuyHkYeCxg": "hqSzAip5r1jLNEmLIQ5kVgxLml5p/OrxbYAV8ptT+qZgZoGtl5qeF4atOUZh9i1Af7DNQIzkXYyLQVjHhM/zDw", - "ed25519:ONNZHRNFYD": "P0JjEWttDnVJXUlOSVoT1nD46hTMpmAcjWTFe/Bxc2hMevq4MfvXLsbuUcgMV6JlUbHYgycRSyyYYA0rBrlABw", - "ed25519:VAWYTHBGBB": "LQVnsD+NBDTYayxJJk/qPsswgLBBNcNY3gUHkDkeRHh397eybJ2l8fljftBeh/HNuzZcMtHvA6DkY7W1va2NDA" - } - }, - "usage": [ - "master" - ], - "user_id": "@blade:darkness.services" - }, - "self_signing": { - "keys": { - "ed25519:SDq5Mf0nmheZU+rNyApv+CqfofE/AMXbFXPwO7zzssI": "SDq5Mf0nmheZU+rNyApv+CqfofE/AMXbFXPwO7zzssI" - }, - "usage": [ - "self_signing" - ], - "user_id": "@blade:darkness.services", - "signatures": { - "@blade:darkness.services": { - "ed25519:LJ7oehpts4bcNuFc29hcPNgN0l3JNadoqSuyHkYeCxg": "dYoFqH3tYHbVhYeLrruzxX9gdcA0pljXw3iHp/SJgMTZbnNIwTZSWJUWqlo0/Wzo2ckkPlTkHXKHOnBn7nXACw" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@thenamelesswonderer:thesilentlink.org": { - "keys": { - "master": { - "keys": { - "ed25519:QoE3IwxF7RAjF4L+Cgk7E+ktjFlTxkpUEAjeRpAnic8": "QoE3IwxF7RAjF4L+Cgk7E+ktjFlTxkpUEAjeRpAnic8" - }, - "signatures": { - "@thenamelesswonderer:thesilentlink.org": { - "ed25519:DYMTLNUQNH": "QzMraE2lUF1R/L9pLHXaWAWbmwX95I9a/iiY0m1NXgUA/5nl5R0tvs1VpMFmyoQ6uQmb+NFBReQo4B1guM7lAA", - "ed25519:EVSIWHJLAC": "nNXHkkbz6NqiJxBi9VfB1hCScYZM1MO1EStDQRIBIEL7zON+9f2DTb63MAHtcYdVgWOfAHmiBGByjHKeUkzhBA", - "ed25519:FNQTZBHLII": "fHBChd2n4C8BeErjq5TC8rmbJnMTJjBGjmNnE5ifFvl+/fng92UdKCxlQZJ9AhReanZE6sK5DGliaDCLE/NCDA", - "ed25519:GJEICVDJJE": "iJoNv0n53C62rlkiI1fXdSOO9bRcXi5E7rFocJL2LcMyBY5UW/QTNwcr3p8MmZkwKxHcjdK8gNqKM7cw58o6Ag", - "ed25519:GTQOJITBXU": "1YzL3u2BMy1JiHH6Hk4XNmZfq2gz5HKJG84u9gXuhsM9WseiNiz9GYH4WDoJEp3mfeYrSFgyIIeWeJuQXjSXBA", - "ed25519:SIHNXJTDXJ": "C1lWe7dpGkzJhWBNr/yqqei62UIqVbmMbPApH7uzkob/swGyMpCeXqiAmDciRl2WAxeJWyIb32TsIxiOhP+sBQ", - "ed25519:UDOHCFQEDC": "NYTynKtMEg4Lg6eSBvTuZr8Bo5MqjZ3r/y18vP4ew/m4xwcRUEqj9XP8Ff6CLIzofBLr6rhEFrxfi8wYgdU/Cw", - "ed25519:VTLPDNYGGT": "YjLNh3oxCGP7vQ2ssK3kX+TzpzpOUZhthBbphH4RmjE78oq7KWKHRWKNy93x+WPNBksc5ohthV/oY9tYVq0OAQ", - "ed25519:VZNFWGFEZN": "I/P+oSt1jryV2aiY1W+gaKFd83dxCUcVnaizHJQj3fDJMadnDHghzvWK5f92dPNJcCPs664YHfxbyxmfllZKCw", - "ed25519:XKXAFSTNOR": "LmB/5vYGtEVMgReXoyvdfArd/sUFYliwYhV7veQtOhhS+NwQY6D5g/Tb6bTn7WHsf4tIo+TzxeZCEB+BSgk4Ag" - } - }, - "usage": [ - "master" - ], - "user_id": "@thenamelesswonderer:thesilentlink.org" - }, - "self_signing": { - "user_id": "@thenamelesswonderer:thesilentlink.org", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw" - }, - "signatures": { - "@thenamelesswonderer:thesilentlink.org": { - "ed25519:QoE3IwxF7RAjF4L+Cgk7E+ktjFlTxkpUEAjeRpAnic8": "JseOR/JCcSEfleU4wqJJzX2s0vZorw83w9fzBJ0mclhyCrnSPR8s8+bQd0H+G3p8R9cPVyRZMn02m0FN+UWiDQ" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@mugli:grin.hu": { - "keys": { - "master": { - "user_id": "@mugli:grin.hu", - "usage": [ - "master" - ], - "keys": { - "ed25519:WLlamC7fq+pwDBPUJhnVjTr3tXxcRzRD0YZJZ9nK2Po": "WLlamC7fq+pwDBPUJhnVjTr3tXxcRzRD0YZJZ9nK2Po" - }, - "signatures": { - "@mugli:grin.hu": { - "ed25519:QDPXBABMMT": "iKgJbGQaMSImnKdftbDcUUoaMcHSWAiXTfgX2AcndU4BJkDwV9fKmHv/qpuyJvpDa3I6KwStTvBCpBJtxxspCw" - } - } - }, - "self_signing": { - "user_id": "@mugli:grin.hu", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:0QvfwbwidCQIbfvISZTeCus+QTJTCqtB25Sfc1gdeNA": "0QvfwbwidCQIbfvISZTeCus+QTJTCqtB25Sfc1gdeNA" - }, - "signatures": { - "@mugli:grin.hu": { - "ed25519:WLlamC7fq+pwDBPUJhnVjTr3tXxcRzRD0YZJZ9nK2Po": "lU0Je2zYLKsW+yGZ9rxCx3hibT52NOqzxuSGe7n9d8lsX1voMFexLj/iXgiKRsgwp55O59HYkqG6IVRPVW+fBA" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - }, - "@richvdh:matrix.org": { - "keys": { - "master": { - "user_id": "@richvdh:matrix.org", - "usage": [ - "master" - ], - "keys": { - "ed25519:ztcf3w+OW6MvAqbb7/ojWF7VQDUWe/flpq4EGOq2nmI": "ztcf3w+OW6MvAqbb7/ojWF7VQDUWe/flpq4EGOq2nmI" - }, - "signatures": { - "@richvdh:matrix.org": { - "ed25519:DNPNKSQNLX": "gcQsljy8H89nqx+wNFi1EIltHs2wfKMclkNpV+EeHcyCBZcZMn6VEn3DWCF59W8Z5jO4RpRFwh1gZRE9qqFwAg" - } - } - }, - "self_signing": { - "user_id": "@richvdh:matrix.org", - "usage": [ - "self_signing" - ], - "keys": { - "ed25519:GrYuWJGHBHNSpUyeejbkZLhm0Iz3prCuXb5q9IZYT9Q": "GrYuWJGHBHNSpUyeejbkZLhm0Iz3prCuXb5q9IZYT9Q" - }, - "signatures": { - "@richvdh:matrix.org": { - "ed25519:ztcf3w+OW6MvAqbb7/ojWF7VQDUWe/flpq4EGOq2nmI": "oAIgDVMvLRqSj4708kMdFDKRBBvbYi/K/BXWiueQRN2cEwK5/G8IW3dFauiErcpT/2uj8Zxim+RLhEkbFj5JBw" - } - } - } - }, - "firstUse": true, - "crossSigningVerifiedBefore": false - } - }, - "trackingStatus": { - "@vdhtest200713:matrix.org": 3, - "@richvdh:sw1v.org": 3, - "@richvdh:matrix.org": 3 - }, - "syncToken": "s4577843948_757284974_63883963_2550287327_2708147027_5123316_1159385744_9352228915_0_218966" - }, - "key": "-" - } - ], - "inbound_group_sessions": [ - { - "value": { - "senderCurve25519Key": "+XWeVnwsM53WJKyc9YlK1DthttT9KgQAvUG/zmr0WRE", - "sessionId": "q9pR1wJGS4UlelrAZhNXUcTlS5Qwgnf9ZQRYlAIJehc", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "zEiKUDYW6AWxhx94G3+et8BlwO9iTWI4kkTj/Qaiuu5+E505n6thRcayLqGURRs840HT8FQrQ7XKGhSnSp8ebptluZEFgmFhD3sjC3PqBSkm7zd0QFTN4DvxfRW/TQ7+J4W7GnP1OzHuMPReAlEwkg/cKGfocx+1/F/ocDYTpo14VQevRNzWkvlIuE4IVcI8U2eCYwahrHPA/QVKWDkcRbowXGRcW1M/1Fe9xs6MUWsWl2yqxjdbKkiKOs/hhZB3dDaxFSWrKLqKzcVAt5suEVKLNqHwltmFA2pnuAA/Hoz1bKG7wL4F0U5W0BLcO1Q2jFQyqo/raflfUTC7kmjkSApLLR/R6qLWcXElG+kxETQUk91aplRRLeFwB7KcnhQZNwZn/OoLCI/UCWYd7MJZiPAIdEkvySw/", - "keysClaimed": { - "ed25519": "cLJclNV+jNflR4/YMu7NmtVNzU9E2ztEuB+h1i/bX54" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", - "sessionId": "L4SCwTtAwCYbhH7nwaj6q5DhToqDuP3LIe04Wx4YBi0", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "vHH24svZmHdZT/up5xxfCU9RQXMlhluwrarhs6I0MtDKkLwjCvlLTtp+R/wcSrfNweaoeeRu0CctxjpE415z3JpoV0oOQN6rQ6UXNfSWZQt+DT0fcBV4dA6kKVb0SM7gkGqyt78WynCFpLkG1lv5wyJQ1SxGAvXEOiPPhpWM1yVb+RavssbnfOg76pPmZLyk+QpgtudEfqISQ5ka2tmfSWigWAfFYL30YaepWwdqmk88QVRE2qMMeZ6+ZJ0xsCHayyTGpaFs99c4k/hU7ZUpMFbfjTDKaOPuvKo4HXXip77OlrCJitOyJsiWl46diZsUr2R5kQSU9906mxjDTy+8i+QiXsjMBAXS/rpIF8295STsdbi9sA50qagbdpn1WW9gufR58MPmKNHC/rc4tasLwIVgZVWxmtRC", - "keysClaimed": { - "ed25519": "60YYjbRcIyRTvhEBmcT3i8siOhWoM/KVn1ZXqY2GdqA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", - "sessionId": "mQhAC0sVS/Wm/VMfHhmJH5N74KGDfJpLevVg9SHf/zY", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "MR9v04bvM7KVvSboQH9WUvAybISCGsHTp9201jByLi7AMloVCED3K2D7Xaxy857ALOx/Faj2VCm8ZrbSKjuM5rWGQj83mGrlRjYPRU4Voo01wbf2WORojG5nHs1Y/STD4oAggKnqsctR176lfUm6QOWNU1blsUXW11tYyyahJACcZjyrVQXb2LVRlsWE1hyV5Ol4erUB9y5Q1VWQtZOBro6nUE3jEzghgA2rIqAOz3GD0iyRuzMyII/zj3OD1lDuVbyEutV2eyDUPhx1TlQv1a0IbM9gDneOmdOHQ7AsM0D9cOAbhXkmJDCkiE0sA3Qzczam22+zKmzvfzosCOMnPkXe2txWlvwgl9GJtUkZ7++6M2FVRyRkJoWw3H39dNEWyKBzLWOZgFGkRnj1bHveMiWOOdMIPeOC", - "keysClaimed": { - "ed25519": "60YYjbRcIyRTvhEBmcT3i8siOhWoM/KVn1ZXqY2GdqA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", - "sessionId": "sxbBTS0E4jlv6V7S//BDFBIZJE5sRod9l6/hHhZO++w", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "7QFidfvaqU3F2zxOJDD67PB5CGnf9G7n2KdC2YLtAl32hw6re9y6CeesdJXwSdi+U119yU6/h7kkwUhhlZcOguEPu74oiEVpDrOv7JiD8I6nkI0Tm2ADbHGkLtmGew0T5AkMVS66PKGYhuBfMtYEwHwYlPDAQTmhaUpWdrHf4M8FZMWQMCJCU2m2gl8T9wm0cpyPAz0Pi/Co6TntIa3adq85H0UxUkZBHhyMJ0Kd6ZTdElfF/S6w89pXyVLQ0DUWO51BDKVjwRyUTCUBiXYGWLsQc+UgqOltl14+4Emjnfxl0gKbqvls5RqlwVuwA/5MO7Fa0ecwyYOTBtV733lhEgoWuCQCJyihLX/vk9XjAlPg31nFRqBG53RRn3IRVPO063L0BxWIf2e7qaMnHMjtTQeewJpKGXhz", - "keysClaimed": { - "ed25519": "60YYjbRcIyRTvhEBmcT3i8siOhWoM/KVn1ZXqY2GdqA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "sessionId": "3bv2JF5zktSHTQC0Z8Ia70IA1It9HDrUoM2sHRPd2FU", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "ZZdPE7+7bN12JAGXaEF5q94iRihOgMThT0tfjLG/CETDTA6Ca37+hz/7NHshd2zf3ZfvI/3pt0Psyqi5lrWX3vPOq2YNrV/72RyJe7hdkfMv4ImKMEhRhyqxrs1G1d2CHXvDrZbroVYKIPMlsUqFj94Y5pkK0HVxBak4a/423NTwZEPxbCZHfU+alvuULgl6l+3ICiNOM7MhsSMfbpuH9Pl9T7XkefAKJufD7TbGSWmuoHBvYFWnmj8ABnE7rmI4TlGUk0u663cIMGyjsOX3s7FjmFkL9sLn+81KgxKLDU2bFng2ziPwVoFG3HH4nEunshQ+vbM75Ullg310Akq46hgcOpjCEPHB1v2qThyK71m1YZubftD2ZuQXtw06aM5UDxH31eom8iiuEyj8WKo82FxWjEUPPTGI", - "keysClaimed": { - "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "sessionId": "H181lyCV4T8uJVoyXWb7O4KASvRud3Xfafqjf6Tgjm0", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "p9EzqVI41TT6U/agQ2Igq7Cku21E/9AwHTupjBjtYZ/bu2iax6zvUlDry410N9U1LvK369e4P7iqFZxTotkhNVnEma8QsF9eEldj+2dmw9Bx7ogKVi7co1Isywaj/t9LA5iRxprbVuZkwNaL5/FpCOBiLEwcLxSf5+6iKx2/6EwsJcivvxzWHqQcmIijyyxmXCeEh3JnSCGdMnDC0kunkXyJFekDuLIK21fosahP8Xhh4J13FLgubf/ElR1KOSf4dU3cDp5VK0eQDTlGrhW0BHGPcR6THAlq09euw6qn3WiIM/BWIJhN51BykK+NIqZWpxRvoawWAY97Ki0LrZ7zdsvd8qTLpHljeINv1MUkdyrlfvSHYmIGtm2xTmakyvx+Bmm3NE33VGhf4Yt2h3/DZEF1Nh1Cp0Tl", - "keysClaimed": { - "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "sessionId": "JQzqXLEzCh+rZM246wc8GT0SxFyDv1VpsrpcX15nRvM", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "Th3BPuRVYf4asi/CjEFXq3WWA3lF+MhCdnoapOPvIXWKGKz0is30CuL/Eau9hcwk3yL7+9UApJGJ+OeDHrVVgNbdpXjUY1vlCqAC9tBkWVY9nKDjBSRgqLPJotiCBqgDxFXsCdRXCqLKEES5bbFWxYgKJzcMHeL5Mox7O6Ntgh9X84W/Nv2DZ0OAQylK5AWXuJaJukBJmerdCoO3ltQuC7Pa/AJh4sZxMMqz27MsSvwtfTJFf4lvYOtAFlRoTEN6yi/CwU4oMIP3KTQJmcRQ2ZoZkzlEV6U9MHVdhjJtqeRrBOhGMK6EaRqhajCGUEGEd7dHVeWlW1FO+sg+vCe6fm1gcHUa5wQD7OSAf5NPaGJYxKBT5I8CFuOAvQI4C3T3SDchHF7IoaY9dd4D4dy6ftF8/ojecpdf", - "keysClaimed": { - "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "sessionId": "KcNR1qhTwyH+qtHJH4urK969oAu5bBBu+aEpcX0IDQU", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "V9djhlIH5rqFe/CuJkDdAYn36IDA2eOgtsfTaPDURfkI14iqlnjCkrEVanJKb13qRxx93rV9tVwVeGd8UOSHczioIxnlGItbutg9YKM9kLNx46sRaUj08yJb8oxTkbiddmcwzpu2fEfwX6wvV8i2LVr6Q7Bc1LgFHvXtcKLH0Rcg2O058yuJ+11j6BxUc62C3ouZfuhQEnadycHxwLQMMlczXGkKrWnu7VL82naudWPG4qKpoGpMOebYyuVCfb6H3cH3eq2RzweIlEEG5EiI1g1WUOaQ2V5eVtfOFPkPt0+glfqNzsWu3gLmKHktdjfImEK8uVYF9yxh7wUaFAFXzPHZnWcI2XEtoZDqFGDojdFf+z1YFTx/V3FrqNTSo05XWSw+oQ9VLyBpbTvvguo+yNhLhwiVPkXV", - "keysClaimed": { - "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "sessionId": "Q/r4XaAaVhYrzmQS/9n3TmQEDtd8yVC8Jol9YoAkaOg", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "FnDfo7uakUgJv0UxR+X7jMriG+M2b6gXyDcOk1K+YNnezDfxDzkptQ0dzi7kvzv1QFYpKs/O4RDpRRkt0ZjXfGRvihOhv+T0+yO82n0JnL5Xvfx1gQmDg4tMmG/PaDRC1aF4AuLa32k/drWS07nXr59ZeKMl2Z7d9Z7h0j1UGXYis2/IQuoRVyKlR8iZ9ElAl1HEeQO9HnrUVlJth1Pirrwl/DcGEfukA3ZGqXWGGjoAcRUCpI0EpGppZV7f6Je2gz5NrkIiSiypAARIi3iBlyMGY+xkBh3+UEgEKl+cGk/J3zSMJzppCd0CnXzwK8/tJIiZNtYaW2pPc9ixrJkppt6Fu0cMph9gYtDiO1A/HPUVGHvrxVo0ULnP9+cnp7UplMcmWa+7jeXU+X3muYhkk5VckK1FJqb1", - "keysClaimed": { - "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "sessionId": "aBPgMgRToW0uOFuXsnWJ4imUBwhfQ1Ki+V4mFHk7x6Y", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "PKlmRyvwuMzTZnO/7reSexNv1y/lNJcvJiEc0cmmKnDOlDH+YVmyPDUBSwL4QPIKKgLJVCUVR8eDK1tGDjR2dk9W3HnTFFWj64V+ZBHlXGojJV1pljMvjGZKOftBVhE4r5X9zMGpDq6IkuJIqW2aoiHO19WGR+KOB4+5LeGgskzLyrzDVi5rO1aHcT3FRGFkmTzQvHboSd8YuekD8EXDU0MyJ/JTjXuUwWSKvDfhgDOkX7jB3vAlY2DpRv5aLyyqEdjWtMYLhS5Ux4jmQmgj9j5bxl+RrjrTmwt3TUjQTQHMUfsWGfkjNDuuJaNLplzRXOhfboRB5FouglSZyUQ7c++LQ7V2BZOKZSR/HJJ5P+z48KhHkwr4D+5Doi+rrj1ZRLfRuFMZsqwP6+4kF0xVcI1U5qB4oaE7", - "keysClaimed": { - "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "sessionId": "dyrM7/IIwirOh2na2/DrASo+qbiC7nQNzdd/xwbIi+8", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "JIRBUYf1YVon/YbvCmev9hgJMaf5riUh9ykZqH/ppJgV19qWgVfEQ8qSmuz1p4JdYBfbs1HujnvA5XtjqnXwg/fY/0Drf/IVUnpHC6IXjnnAg8QazXiulHtJhs/4H7u07mJRjKwBayl4scZMYVB+O1H+5kontm4Oa2AF1XXr9hogiqKtwdn/hWX31Oj4dh8wQ7kZPESI8hmmli7Pyk47AVZwYh5h0HtJQhx/Owizea6nV2CK482WKJETzW66FyOWDHs8AjdxOW2oVRx+jO9HXJdBnAirlTMlnfF+fH3IM6Cs90dVRTCSNv+Z8Lm/XyNSJIeHrT3pw954btEOshJaUaUONzW/JkxpWt8tp1206ylaLTJ2hdaA3jg0pLy0lPAQtBqzaYPV8/C5XlXJUpfw5S+hBqVq1wPV", - "keysClaimed": { - "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "sessionId": "nrY8SbxDtREj5AZ/DBAxGMTLm9RWLpJ8oWjO46/kXCY", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "v3guysvWRd9S+5DNz88basuZva75+9RtmBDhbPcJ2nf5e/JLWGG44NXQJQ2zp5B3dYM9OCbf/ToUH76s66iUZZSUDtKdn3Ubqrut+gr2XMJApIblNGhbmsqjX7uMNEqj9sz1dUJ4O53q2zbxz6WSC7aYpiAwfy3fF4twmoEub1ekuUhM8KCGjXB9OiZk5uO7hv9j5ZZUAlykGFK1E3ywujtfMQufPmlvkiKgm43JGYI1c4p5iyfHjOoNM5aZmjnUPHoRIxS9yDzS2HSQD6QmKSRo51i/i3QJ6aOXt1v+D44VclPnF5gfojKdPU7xMynF+j7ZqZyyVF9TsyrSB1ppO7OstbBZbVAtFSPdBMxx5MWCMO4Z9M2svlO/mInNc5QP2br9J4NYu1RVKpxAEEQr3gbfSAODhsnG", - "keysClaimed": { - "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "2QbxGOXsk4Q5R8gTgrTX8OFg+oQr3WbXM9wqVo+6Fzs", - "sessionId": "Ti9Xik0anAjD+HY+C7c3BY3S+x4yMY093qw+d6USYuw", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "maHmoADGNJcJSC4seC3E3/m3vqB1+5qYwbKA7xbbWJSheWgrZaJVjqrgy1YWGbOGmykgIYUeFs6r5jD2+aK1FuGDoRooGK3b+d7Jm55XKvdRXxgL+mRiqOf8ilb+7RseXpbPsjVh5OTsoXb3u6HDjC3KQlTZ3yRuVoAvq7dCbFM5ZBEw7HG9lWZu/+UcY+UBC/3qWf+vkvC5RPqW9l23DoXvw6hpOjMN+b9QU0dZeqVoERVqTBJcRW826pSV+miwRvQWtUjeEcoF3trtxWw7ZLj4XUgePtURRdt3MPtdFsM/STCwVzwDp/kkDHUfm5N6q1ErRZLA95a8IqN9dSqqoismuPwesQKB6WRZXQBUDIU38ZECj93AXhX92/8rsbJWy/fYGObu1TNRnnELpM1sEh3bXUultO5K", - "keysClaimed": { - "ed25519": "0OLyRB9WaiKhW9CPx45mHEfVw2YEH4lllubTm3LhI7w" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "2QbxGOXsk4Q5R8gTgrTX8OFg+oQr3WbXM9wqVo+6Fzs", - "sessionId": "amwgq+pwtaGVt/vUbEwpRF3FZ21bs699FMXShYDVqJQ", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "ZiMO68hMek2rT2kLH/9Wdf2ogP7tUIR5064S133uLRT6MxR9qyFkjigVFZjTIN3QU1fS9VDIYKSBAcX7JATDMvvMoD4H7aPhjPE2AZYt9ZHY8NwTuLeYJPa1ic1KYeMav93+5LLwoQdSa7A8U/jT/QVG2mrgQo6iUVTFUcPdbPtTvQnnqJOxYQswC6f6ckHMvfDrBQg5KKzqhq4F7UooUr1pzenbjPOTbQKyo+DWENKY9+Pp2OjjAD56ECEvXUwa9tCbsG/gMZBK9TJdgDRWhAY6uG9Bc5+bvKEYZijXftHSW8KCcrOTNrQ8+C8pn40py6rn6xeOVF8DasBv725mEhMDegfRMQ3qORXTAq6O30A4my3nuGWA9P1UrvsWfaPgK1c96t3pfvPijh4Wq8jIqI8t23OKoLWv", - "keysClaimed": { - "ed25519": "0OLyRB9WaiKhW9CPx45mHEfVw2YEH4lllubTm3LhI7w" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "31cIbE9brvZuCKXcCItx55JU+Fva+Bq0ezSIrCFkGgQ", - "sessionId": "cMdqJC0pehitCVEE0j+MXV9RU9WWi5cM728bdBM/Q4U", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "wHaOA9i1AWv0S7MORPVyvGcgVJ01SKgzY1CSRQP4wk1HUwPr9qovX5O63u4ax5ZhqsaBPhfEhoXi/HEdj/IwyWRPHtveSmxN8IXI3hOC43PeZdF39gFzsY6VZ3db7r7NXX1uA0SdHQ7lfjNGVJEEnxCtoER8Eww/9htImzjsWvMRmO7Qkk4rp74jK0bWwVia08ZHJAzBL5jynn/hPqx3lg/azVN7MoUlSl1vWHOLA1dA0pTjuUA5Fxc3B0nzpSykaBsIfP6jTMTkGQhHWh2Jy8ZYczMb+jNy0I+9Xn2bxcr7iU7+EzwJqOmG4QzIt9vG6n6OuTLRqnb7APJke+Ms5aj/O3AqqD06keYknwvDoe0owTrFaY6x6ib9WVpNOFGasWyTaPRNWLU9VmDdfxUvjg3a40izokf8", - "keysClaimed": { - "ed25519": "Ctmg3Gdrew+Az3RqmZ8t+IQoJ+eBIZI3QT30MeRUM2E" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "44ztwj0hZV84CSONm6SKLlTPYyt1euwda1wR1BlxSlY", - "sessionId": "7uNrLsIAUi9cTPXzowkZq+QIMzOcB+mjY2LFwjnSAN8", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "vLLk1IkkPSThKwf+KHQD9ZewA7WHLF8e0P9dmsYaFIyvMyQiVb0YNmrstPj/u+vCqQCs4uNjx5JA4S5jsg4XtFgwmlygZuxxGGFEoQKov8FzU0JFdb+xBrr6a3hwlST0y1OOQTgGimmUPCWDjWLYJE96hzRsaMGnbr9roX4kTxO7MkLwW+Slzz5M45mBPKMotwJMhc6FytDpNNLKR517KbRSmRGikU6oCCoO06aOAtVxAKtog90ikOZovhNbHqrzeSlEPaFqEg9YqK76BT1axZIGUCUF9iqbeQu46F8fMKfv3yLvVdqqSIPEkscPsyhqdEKHEXS3DlKwaQgaoKPJ3Csf3OJ/vjx9O9J+gNvXO/L46oFjQg7ENRl29sEXn3xgAnR/VrkQR9CWpxhEqvqst5U7pXPBJhOy", - "keysClaimed": { - "ed25519": "vhPGsHTbwwwkWANivBzWkXivx1Yre/zhhlVletKXAzE" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "4o7UZbNLHEb6zYyXSJYuEIxilsaAlhEl07j6yzpTQ3M", - "sessionId": "/scdHnyj4zaM9dSDKtavG399oXnd6WShjmdS215h2W8", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "ccRKmEmi6uT4sp3/QTNR8KwZP7CY0XvDNN1zBK5TdGzAez/i57rbzQ7ezhp0uIE+8RNBLjOCgvoZHqdC26Uh2J3aqJ2lrABAzjrfBwsp8gmLzYHaNX0Ad56dC+WNQ6/RpTPIwUyNJaNVlPHZcotqcdBXnMp6/w3KL2tfSmFj2R2z/oT0gAveOyS0mptO5dXNsnzant2e/foGO0ZGEMdyQNy+T+2fGr8KrXZ/WbGeYWm2YYzrq0RNiHM9nf/eB4OuhBlkJscsISOkBJoA0qY7nwv9AAd0prARQzn/y2SMlfmoRz4RouMvKYJ7fPGaLZjAaygzFcPKWLRKhuViUhsR8bCILV63Vxud52DuM32r5W8eEPCaAcEkn+pI5w5VQxIsZbCA/n/x5sJ7uwPZOGm2oUAaLR8OBxLZ", - "keysClaimed": { - "ed25519": "f+CQpoUQIoPSep4OvB30vIBB76Dv4KmYgMxzz9MprkM" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "4o7UZbNLHEb6zYyXSJYuEIxilsaAlhEl07j6yzpTQ3M", - "sessionId": "Ui3a/yO8itJoooY2qMTRRvNgoZ95+aLv3OfuFAFD7LU", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "Oo4nRksKu12yZx/1RgJxG8eiaPWnuKl/gzoh0p/PXAcDtQaCLucGQ1GyKPwPoORPAin0KBC7euRXVWXOJ1bpQFV7VQ+yb1xaqGOufpIUYc0x9jlRhMYWT8zcGTKJqNLBgOrcX3kmMaoMWwbMjflOlKhQI0Hg/UHtWIiIvJ2C/hYN42zRDkxSG7Q3AGgPlAo3hNdIEMjzCXkJvU7kDklvl7zAUc2SvpASaiRIjJhDLnWiyW4GkyK8oB8DxjZv9aYp25JBfFdQNxDUsvCdY8QT323hBvvmQayZD7bhkqnamMQWX8AVXqBBY/qzZV4BX6aKQDvs2DdPM/ZvUg2MTN+Z41c5CUuVBAfpA3peFIe+uDZryQMDl+issllarW0PaFvNXtP12zJ1tsoZROMK8P3ikKm8ysFYgL41", - "keysClaimed": { - "ed25519": "f+CQpoUQIoPSep4OvB30vIBB76Dv4KmYgMxzz9MprkM" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "4o7UZbNLHEb6zYyXSJYuEIxilsaAlhEl07j6yzpTQ3M", - "sessionId": "mzhLyAG7YVw7mFAl6PPbOvqZ92Hf38UYrtBoUsSB/4E", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "TDaX4/1hVz3RdtQFwPauipP0m0BdKj06VJPSTxWNnUEfHBmvrXjbslc6mBcbZSazeWkkapsRaGOKlUIyRORa3E5taqn/u7JcI7bRxmMn4n36A2i3KIW8WXdUi5ZPOhgB4x9V8MIWPIT+6vwVzoYP3xwvX3zD9n6NEF4dXvogVyPUJZ2El+MJpAlScAxsGCwM8vKFuKK3bdqiFo3TJKnA+GvzJKl/MGd2DebSz2YbNQicGslmCXvvDfbBL/QVRBiCmor9znD93IdLx555229DEZp685g8FcpwYNlKfctjm52X/vvNxgNd3sXukJzkoFvTeXFO8deJtCFR/qn1O42THC3FB8WpzdGpPP3gx6zlW6Xik9bghYz6U5wU8qh5PxEyxHSPZQXZoQjw13cyAHiwdvZ3+a+jJxYd", - "keysClaimed": { - "ed25519": "f+CQpoUQIoPSep4OvB30vIBB76Dv4KmYgMxzz9MprkM" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "63T7anu0SxzQJRFnvmHXuQuSW63plQdt00phE4lT5HM", - "sessionId": "cR2Mi5hcIiaH+XIANBknJq4dgBbSaopTyeduoJMMkSY", - "session": { - "sharedHistory": true, - "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", - "session": "Ss3W17Lsp6AhgJ0tpZBdLXbqdM8rtd8mTxfVbkQDjL+JDU1hmlxFuHfweOZ2EMK/p7+VEGUogeQ34jfz/vxg4a3qrK7b3Ocq3zbk+Jgt3+sw2G8g4bgdUsS8iOXd5s2I7Jq3lxsQzJQ1Gz3JlF4vgf2kiiSxxkkfz9F+Dth5A0neZHYS9/GbK1WKN4GbvYE0jwkLGStFyMcGybzlS6Qffz8Gr+lR7vZR2Xv29tlfMwj7rOcngsELGocnx/tQRNyQSaFxRn8cuc/WkxXBFGRNU0Nun9ZJ7zugLo8G9KxByRHmwWZqRC0uPENNmoky9QDCy8vhtTRvC2fWS9cAAXaYrtOSPi4CtVuED4/PVOvRt4PB7AQNsSM2hxvtyDaG0Cr3fypuOAeQ1jm1S73iQNtYGpZtdPx0yLLm", - "keysClaimed": { - "ed25519": "fWPPk81MUp3kofc5SR+yEg8c99XXt49pQH+iSefcbJ0" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "76YwqK0pg4oc9XnCnyVeHV9YVJ6GmQNHwWoGWb/4Uxk", - "sessionId": "lXTomQfAqZOBFISZxvKPwQODNojDo5dQWftalCLv1Ys", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "SZ206hujvaN6zPo/92wBijaz11yxrkInTi9ADYzjt7JKZ+lx4SILBFr6I7tPCFleiaG/wEKdzYXytA+M1tcovp92Zq98tJ8T+Z6x1tObrFSgHxiCBg1QfgK77/qqqvwaINOpaABcBDG3NneDwYKlkBRDOznBN70CiRsKqVQuZjdgiYeCQDG8agSDIoz5/9+Z4VNJiCMj2PuuXVXOpAjnQj+Kb/S+XYvuyw85/r4YRjchHTKzKrj7ArD+VEhCQHBpHisYS7Ro1AgnbyWCqETExYtFCI83Zye4A65eecVEy4f1mRCkp3/tkXpHzbfUoaLUf95daf8t2ZwXqeUPD1uAZBztZPxPyqD7nm+UpN+C/jzSkQuOGch37HGP2LWQ+I1qfypV+9s4c9z1c9yt8ecau8DDTXYlDA25", - "keysClaimed": { - "ed25519": "36ijsZ1h5220MO3mcK5s8j1g+6iUawqhEu15z+fflb4" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "76YwqK0pg4oc9XnCnyVeHV9YVJ6GmQNHwWoGWb/4Uxk", - "sessionId": "rmHcdter5BUz1xAUV9Pu1+JPx7baZ3eX2O/Fv2SMk98", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "kjJqhmyOXH8EjmorLjuLDQy4and9X24Z+S21a2lq/cqFLD7VBZk83gMCd9sjJfytvdLhRoZXmgGjCP3qpiRP2ZtBkMQFy/ZhaLX4b7pQXJtFIHCUa1msRfFWjOj6vvCn6/FE4G+7KHgMhC/DYkEsSagERQXeWiYiv9MVM8JTknysFz3YJTt0yxS6UUAA00bV4bhQrbPEV2ZL1stDqJ/mVUOV4AIfV8tvOiz0XYZHsaPr8Tot4+fkgqJ3PQM7yzYyFjTtIdWO6rJgwAZRuA4O7xedQjlCXw1U2haf5uiXwgvESiB/9J1Rl72vwiaiHbVUQWHY8z4wcSrl2bNI3/oxK5OUs9RYWI69nlRGdlslSD+tCs6QNurjqHibUcgnwNoPM2jIhXbQmEqnaK34gstG9fOg8L60eSlN", - "keysClaimed": { - "ed25519": "36ijsZ1h5220MO3mcK5s8j1g+6iUawqhEu15z+fflb4" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "++3YBt8NiOnH9IfbFc0kWyPbV86j1LeaoSYpOsNSft8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WRbOtNBOS4rpYpxgW0b+TDPYtgZ+S9o6GpwknaAvbflsQd/bm9+METoCl8JUgVFJyOQtdeAyLvDthmCq61riS5TJThYMyQrGkkp3gckBMJx/pHUa23EI6ol4Awu0TVcxF9S2lxlT1O4jRLiw3kItn5GiZZoo5u5wJYSUD6oRaLTQSX9ApCoDTZhEgNg367ySTlZWo/XNJxhvzwTwYq5H1eQuPvx5SiD1jJBubB5yLe0OFbE6bBtfRljfI+LnCRYRAPfl4Iq+y8m7CQWAsZBxBSNw0aZWU7uyngmKQ5gYRWGz0VINzObm+BZMwM3ffBafbYmKchvh5LEpwwH5C926FqEHTJkuJx3PQEGDDkE3FRuPAfj2BUHJ5vDpKKwJm8nmU/Zgb3RXz4BMTMXg9yA8YfGThvF9Ib5Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+/XWSeRq+NN6MyW3zGGCYLbzm1+OW3By9SX6UGipKy8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QVx/dJaCEkx9/37OMuMU+T4KsUrrqUT1fKf5FxkXcr2dbmH4kMS1j7JzTJ5VW5yUOrdA9q1pK9+4X83k75Zuz6MvBl+SQQJFwTeGYVBS7W0nmrvcrU4Fu3uuSzt4kAALeU4eIoU/dtsGO9fp86Y1s2yqiquVoiFrai53RzuzcKpQYyqKAxz+aWWh9QfA7kz45lhAi74b69edyWYxlAW1Nj0oFC66UmKAVXxPhNQ9OjCUa9ukToiKOYe6Yas6c3BpQqZG2aQV5yBdrZP0v+3gZXQAIgg6qfT+b4jEVX2kgdb9wgWaDq75kqBn2M9XAnt8a4Ou76dWoa5bBoAYZMfgTBO79FiybThvWyqJ/rffb4S0oTWWl9ZsyUr9pjvhuLbypp1ZBsYNVRSu/j3hPZ/Xc8/HqTsbXMDb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+/hHMy3lDphV7vnWWNEqcrGbdcx6UEoUyU+DvuFC1oI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c53PnDhg2OSP33ixh3ginxsK2Nt+460nLqlt6YLEA4x+KnrqFnQE5+kWBqNcZBXsOYDz3i8UEfFkBUN+bP86g/3ZOBnUmJBRu5n4OA63DchwNVckhxi2rP+cWvl3cFJpSugTzU89k9N3W5wLW8kclvOWM+PlNTXJCmFtmbKUHsgab22Nm3CFnoH2PD2W/We6Q5DBgacG8oGqmlsTcJ8T24j18PGHP1hB3s3bWbdw19+g9gostejJz1eEXWqNnCokP4bWEJLU/vSz+5P9arweaOirlsg85Y6DVasibpkgu5Lj+QLVrJQdgcXAIrs2Eb1m+TgT2kOz90hjzrIjPmaMOWdvDV7Nr1kFiB4FdxgkO+mlH1gS/JtFTUW+v9/6z3KfDe85OO+OK5D/GRZA08DpI8B8upDmfNLd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+/n5XnC0FEuFsvF7cQA/abXK1zi+3woXj3dCseUfAnE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xExIPv64G0dVL6HnLCe2idjjP4KfrgN71F5gouZho+hbT2b6u8uSxjBnDmPNn1Xt+Cm32lqO5oU2hYaL4OuZB4tybRbKX/jc9TRlU+JhuYBBUKqn5YbH+D+FLtk4Z6sJR6dADoNcllP+W0l1W0h6EG7Rc/xlqDHQXLF1xORhgx+fPFOlTpqCH42v//KFFykNRxb6SbUMKtgzS3jo3GcQ1LMicQHswwpSPpciTHbrG5UttWsXs6JIGNnVNRyzZxUdj1nCpBLB+Ra1rCxuQFynpU9M79GAO6Z0H2ZGv2tkDmyqSzzXEchoy3ezrBqG1DxMk80MNmIHfDtAAAtxFnil7WMm4oUy43J74MXct+EM8GvzwTQR8NDGl2V1FDb1Pl7pvt69nXFbz3AsSdGGvBj021MpGRu28IJY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+1sAB3f4bU8FkinbZAEd661Xem+o6G24608rx0NkCSQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+tfu2JSbTIq3/uvF0CgbH2Puugi5CPkvGOINiU2fZdowA23Jyvd0Kqwz19iDrqDrwiURDkGcfbF7TpJcqi4xljDArR5i4suR0+ToufQ/ZmLl0DLzQnFOFHH7G3Uhc2zszSIhrkNVY8p/TRR0EVdbn+kU30SrZXGOzeahXGpvX26EvbH/EKd3A1a8gLkmD0DY2zxNCe//2SbcFLyWSMK1bnb7cK3FxoEx77TYk5aiYnFU/LCwLhKtJEEb59ar+pGPHgrGAE2R6ZQZUrWt9LTEPgpMAp8w7OLo9TLA5TuKoppvrJMm8g36YRYM2i6njPhAi4ydLh0x5iG89m8TqmXL9+blyBh3uKhJBk/3nAboFjaT6LU7XSDo9RPLTIARBiBqxXh2tyXzRgS7b6UUwZsMGC006KS2VbZg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+25SFBSYSyDXOQk8lYe/Yx2e2A5ezYQKp8xpqSdo508", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zVm7CA/09HhnX+E//zOHDhBmjLyzikhucw4VFB3nXkpbivJGOfgVEK3eMt+1vHEwYCSkli4gRFL5fPMAph9avzsoj0Ib6cMvEAIAw37BE4rwbATqpVaCdSkAgKJ1FWCslSK35PErTqOXfJ+3ojccaMwNcYnYSv/xmFsI0qIxETXp2egGcC1Z4N24QcjRnAQZY/Xx8pltuuHev5mdP3Vt6UO+1gvW+W8O1OTVtG6UEqKH/GIQRHkfP2fcRiP254OUmIkYunQAjZQhLyymmfD4ADzQ/TyZOjjhtXDf+sj5HazXPZFa3yEmcmT25dPLTeZefUiKobMLgE7T/rhAAxkdlWcXVWs3yZ52gW+KRCVgrMC5oC2fTdjaRrZt72r+6PuwF8vFluG57zHAVGuE1mjAmO/QCUWW9PLq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+2AZOxqWy8bmTuLhpSvnFQtPLYJ442zdDv5yy61i4xA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6vFF2oiSfacOt59YdDcr/4mkFi6jdHfeC3sfCdu1I+J/hNdaOh+YjD/hciE5neGDzpzcfMTbOnafB2iCiMSZXq6NWyBUvhTOvcGj4Uy6KRIiwQGelXFTmArKQgRSOESBStZQDA0GZtxKPlQXCmAx/7qF1+hCMtnGydsuEk83/DjTVLBCoOHJ+g6vRnbexOKy2ymQaRTJsqJ1x1syKY5TNMsqHTtFJYj62f3Qzyjf+ozecyne8T8QxRctukxVzovyEj8l1WUvQ+CvwDzxkvYZBw16Y7xkqHMQUR0nZZwIWuU2j5A1kjX95Vumw8Z7mF2ZdX55QcPXnbip8mgFRuwi3IdJ0cmKOFrXg6tatxLJ7LWN46f6OSKFxZgWphu7ANFk5zlmQKtrMgef67N2lMYKiQIWqlM0rfRq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+3PTe5GmxV6z8vBgIvVLga+jUdTtG65L2eMpq/7ikxg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dHJgsIROWr4VfYtZTgwhl9O30ylZ9lfTcWnsaJAJUMCo5Gx0bhiNOQA/JKCTC15vJYRCzrfM/ZIF0EZyRT8XL+FhPu88cC6NPAmcKhoev5G8pLs2hrHMerkTDKS02TVYz5dCffkqXL6lEOVFhGW/jj1L9qff1dD/G4S/GspOrF/0L7lPOzxjTvzcunOjinfWM2uuYIT9puCx0eX2LtzFPI0g/0dO7R0z4VbDRDlXQAtNwRrRSp2nIBW9wyGAGroItN9FxWUHhtxWjhJWJQeXDN3FV/A0eh09WKltiQOYE6w1UTr7rpy5RJSOQr1Qipm/jAKEEP23e5qF6YKSfIM6g/uxLAAOQjuzTwyOh3UIDcjBK3ParoY/VgGiXS3/SM+JXmvAiJeU7gMiK+jj2Mfuwmh1Q8bH3B/X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+3U7dI0Slhz7Cf9ZIXShjv/UPQppvZf0dMJ+s78KX8I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XjuLvZ+3WaueUXmylPflvnybdb9J2dPwSS9J8n91yi9LLxDXEgUWPyeAKHvBEYDZpoX0i7q21dls+Z44hhujcJRiUpLqnLSFR2gndSn4KOI0DW6qdIo3a3+dQtvBU8xKSf/ZqDSQtbKRnuuye/etrsDTwCXC9AZ2dfQ+jtPH62eKaYp6FUcLdPdau6Lol+NqbVlLjzuMCA7Re3iKozMMW1KFXuLA9hOLuoqKmSLbN88d3TyceJfv5BQu5WjeYyOqIcaty+PNbx3UmMnjVMjDvdKZ6brHHuopRfo/LkWAvat06Jt+HjwWXa7RvgmpuAXWJz8cCUQZ6i3d/O4gq5z7391sT5Bj/7NsmQkhb26v1OZDjnm//OmCNXP/vSA+YVN5dOAD0j7yvEjQCjyeF0IMJBmPqvTyQBD7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+8cLwA6bUI2+R/oq85JgyztMmjdthfcYzW/A3jbjK5U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cJK7hmnHQlQRMbSjFxaRZ1GpI79exPcdzsarjmH9vYunDPsBbesS7m5iPPHfdgtQ6iUv8NZF7us+207fmnKN93ke9uOY0Nzy0FGjVaR9JmqW7j9ERQgm3R+9xPqhnsPtksCjRdlbgcDEG7RP46hOcUJMNiPzAMqyZYBnq9Dt+V/PlxLYKg0sJUOevKZJSRyzX4GuNN1sH1z0IjWOn3hoc1YZMZTPbAT39EcpQrXFw92p1o3hR3UpZjtdha7OZzT05C2+iTtJE3X+JLbYiFIdKEKqHM585y0wVdy1Io4FAoTt/10nd/HqA0TyCgV1QVSqHA5DyGuktfbaNOwoiLrSCkOOgoCFG3ijeb3qXG1HO9r3KWdDHSpvXrlvov3oLqicnjB0eZc7ECaojk6N5J7XyrxsJ0j3Jw0Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+908ytZeAR1wp2Zq9DeoSVD7r3jafMvXJ9Lmkr1eX80", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Zpvu1WhF21B51t2wPKUhaPN7WiVhwg0HIjJsw3PBPW4YN5qjUB1ZCtYCAmPWQGcCQCa7a8GiacAuYECcyqCY9qOZ/YvkGZP1BDk59qVHnFeQHoppBLz7k8vUFPvEyVF7IrYV6nTt89jvFtQ9shibJv7jJ0KoCVkj7BDgr4Ld08C6iiCu0FhQBio/xgc2OaB684qEAC2vPYP0GUKCtn3VcA4Ijvkx1TB9HsrIwtgDTYR2GnH7fW3FFuIGR1lPlfYpuhVjXa/7a8kgwI1CJn/IkFQP5Wkz7jBXPE5+Pa4Tmh1fS4LuOCj5aXzfI6ca31Kb2av+xyBvJL64qwDkldtxqam73dFMfsWPzOvUXPHsSN5bdPoS9ZdHkvO2xiO2ML/1gi1apsjgMlqr3+F5O1ysNt7njyn/bbZS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+9N/GYStj4t3VrrwQPZWruGR9rDG5VMWQRIhyOQakwg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8tm5MlBo82FhIrGnaKnVAVmFufUA3kz645/zLGXwTbabYp2GOxMzTbjxHJZo+16zuiCsm0WDWS03if84XqWQ2883I6jC1ComvdbLRJzJnfFYQ2Ne4zvemDp66ABCcaFCUVeszaLM8Em/X/XpGEoydIErDfN4JS5FnuPO1Krx7++1ro7fVJKEiIzXf3diRU44kVp60M+z08s4TUCvp30MYwo2uS41XlaZ6w2K4A4klc+QN0eT1PCrhuNU4HbzqzTEXOsPZQEqHlesm+VP7eM//Z2O6o/ILw8/R9d3lWOrtsFaZZ06ATZHTc15Z4YiB3Esnq9JyhPkWz/RTv0clk2CHTYyz/5tTwx39PRHnhaIeRPaMQyGMZ0OKaBTf3Gzm4Jg4sAIioP21mocOTp2Jtbyxq4ERST7CjFO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+AFbaa2aKz81mlQy/8Y4HXtPA08EuFG7mDo780hSFYM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "454dgOdBdLdUKBPDGQK4fU6JK9741JpzMHpBSKQ/imNNunJ51ilxkUgW4YzR1/DPYh46V/GnO9ijjduTiw1i8JslzEqo7T/pioB1Bojdbvl9hNrGXRAjOSGlwaZl+JkaChtQbAPYccFdk2I3jtaGYncV93/dweiynZiUtBjzGk2kPRIt4uiy1NXPBJBEMt3C5YK7YkpPs1MXDRs9USNEsF+vGVzY6iHOuDZLpuJkACvqniwv6EGCeo9AJCVzMqVAB1D6qwu8LWxqjVb+7WIE4mpJvwXNbpKxcoUpEPYT8/sOQXjZtjZ83oIsAVMnmdSj5NH663WAFtAbTihSn9RZgljpLCluCUQB+zzzh53hlAbuveKZPrOlYleLBKJQDRMN1b+ts3g/CKZa5T7TIyREBK72ReWq5gzA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+ASKGxERbVhphiH7invqKjpBC3PCc9jbY73NpzyWWB4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DZFH76IV0M5JLz+PAnt2WGlQuwJ3DgYqUitFWh4E6MxbdpU60rnCj8CCy4Ky+5n8OKqNK2vPV7sOtoQ9C33sDwh8JrZtLn4xEo76xfHQKIzOgBwnvDponJXZo7aZdbsLNiPIgtEzkp+sLw7VnC4pydKoFVXYEcn0w+pf8G5xzo+TxtPFsTCVgYRbznHXODJHOIbRR5yQ8Yzoz1ygfDsDYt7aq4BCbMluGTMWAluqDxxYSaba1rMuHW5rRw3clnlTGb2UXwnNGRE5jnP3OuoY91lnGRyebvvgutzFG+hxPrleRKUqyxorHKBd3tefYoqcDl3Rvd3oNcOpRaVlVDUr6YDhZ1F3/U1nTQiU/hv/4xkyF3Vi3geaNbvqjsFG2NWykqHKS6d6dq60HD4SxQGDqX/O4NllpXR9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+AVqEei8VvOUrYYRYM74DvfIXylKy/qYz95t2IMg84g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+WQDye5ohH2pXpU8/hKI1Oo//GIg5HpINL+Gv1GkSMe2QAf2/YMwehjK2Vo+Kvllmdu0sBNBP8VJIsoHRHl7OXDXw1hn0PS7PVZWf+E2DGcSJYh/pe8v9xITffx49Zo3ycfB73pigJoYwrBeZvhDRig+UzCP4iBT5wl10sSFPV7DZdKw0O12C/Gy8W3w116qV/Gyj01tzVKdLJyzyxb6lO+olj/C+EoCAy4tZDupaLbLSTuXfHok+mGTG4/g1Ur7SfiM7P7KmXa4NkVdVmoSc3KprSDeSPPB8VUbRUV4GPVYFab54b5TVkLh44GuXrSnmH43QVabcns3QS3Ib7Tn9kHHTviB5gTDZilP4FvxjCLqt3C7mKmRQe2L7O5N/kC5QbBK8xMu8CgCWR8a35iBdtX2sw46Zzx+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+Bnjl1keDPk+hE2rCynzL1b+Eu9K+DGs3j6Fa7O2YBc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qVz3yTmqfk6lxSGVqtKINhr5zbQh6n/JUA67YEbaZKjy67o390/7ZjY6O3jBJ7Rh3g9YujYg3lSn7Jig82zEu5Cdn2xSYQ0kiyK5xe0hZjFkJEvWM4sxa1NfbES5DbGrc6VZdGW9YwJgQKKT3TKRbne/LIc7wYslKJnnTDSbFnNUy7N+AcOb3Plx8xdG4Sx723Eyc5YL0XdU1gcjn17Ac+puq7d03QthBrjGPVA+tjirxRTTT++CXwU9UwQzL88lojcJhhOgOxAXaxtCMRYAvJjyey2en08QgiGw3S1D7/bWIkLb4g6dXO1vv0/NwltTodZ9N4mmXBgNNgFqcOPeb7NfIz3pTwbizAk102bLnco33p44N2D8aAdiPUFSIDa6oIPseBVPO+qTzqa4+HZLlpFpwpqKutrc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+EOT7fF5XdCYHfWbRioou09t7ZU7vRTe4djnfiJswYo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Fnh9z22Vii3hw8jyfnWKNU3dgS6DoQP4F1mKFB1wjuvByQhM3+TcU0Lon1Y5vxNhvjTZhIVhhAc6sYuhlDQh5X4v6SvZxnid0Qu+dLuhdzM2osIgtfFu+sgy/MIjePpuCTFiaiCV2PhB2L2ymV95grvxUBoNTOC7W6vK84STKROCHw+ElFxsz6aEYWNZLDbb/vW17sBNlwXZLOZzRDw+K/CnNLTa2PFJ18UYB8dWa1djBsfCojGjv0Jc2wBD2wB53yfSRJwIWXE7AhOA2iEb3ToUuYZhTEHwHs3bi/LAuc6WL+NrYwGdqkJBYHluuSy5vuEAqks0z4p/Ve3Lkd4nDfK8xdS+iLwfUtcyxWtBhzi23AJl8yZfsGxmxoDggpQd/0lH+SCIVvmVnavkkNqcElVRRISGCpmc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+EVi9LvGU9gHgvuSkIO3bvD2wYSS3V8rCc9y8Le39Cs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lFGtJwq16f1xXUwcbRljD44J1qm//26oC5LiLmYWB9tVk1GCGg1eCJe4QssgiWLCZKoCMHGX8p2R5NvO2ICySDvSk/qQ2aKDb9lAFtvj7vI3WrwLrlORAPjzjRZ2K+jyGxlWilJ91Zj5PxJ0Z4MBgnJRBsbP1Rbt6xzGv+5k2iJAMhMka6lpvMomuMAItDYCVQJ5+MmO/Z8SV+JWXQrQzYLiIAOpEOa5M+atEkwsbYT+nHa2S38yRKW7dEkQ+z1S14bR216Mw8LdDAs+DueLhyACNQXE5MdO5C5oa53ZbxatWhPpvzUmxuQZv4N8e5U1UUK0UyNq/cNLC48fxRWLvVeV1mrLwVpTv7sRWtsF49upw6q34zJGRy2k61YOXNNhT+0nLKLdu8KHxdeRFGsHVfJRhkktHJ4f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+Hbpx6AyxCOZodCND6EgcJk+Un+L6efqn7RMKMobnKo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RyNY3CNvSLgg8JC3ukmSuswmiT8m1tvZITe3IoTT/M20S5lKTIoFU0L+YjY/yo1lQHs9VR5Jji4TBmiXeXCZ23x4XobjkFRnUqYsoBDkyJ4HMPwLMn2JuDhnHvpRMJCqGYEbzupQgJbOxgfl/LllJLyrsGhTK69B2yfBItXwUq/1M67ZxdRhrwKLtSG/sLiKvWCIEig/9EmwqubUq5WStrZR2qGj0mmLvmZPexunSml0qBtsq4OIr0Im04xUEbE0p3uzyLCIqxB4EBvCX36XbQ8XFJc4DF9UhSsEHC8mh/cFdY6c63Hg1XXmBtVjXAlcqxVc6h94a21KtQvMYkuWybWW9qLRjpB+OOQamCRQgRm2i6T/tMqoLv8m2idBqDS8NzJop5VPsi+0BY5x2OHAWWp/6OAd+4Yn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+I5/SgmeHXQS9FS67QDXc9Ve2YRnwUEp0Xos1E9JUfw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A39w72rDatkRiob2/dLyPgXY2VzRXVaQr0JCv6/9af6wBozGcq6BxiXRIyvnxHE2NHxJMeerkpHYEifhpoRf0AarS5KXcmHx/DHdkrknLZRIACvNs/FTUED/OFGskwFAkPGmeUM1RP9EwUMrIdEB8WoD6slo8BU1ak1NXOTJ4+rjdGVMbpqF2OLX9NfIAH1rlP22IQL1nzUqQtXDyBBkKcUKih9GEimlHNGdCl9jeo4eyA9uj6X/GzRagLCVNwFuE7N9+GRm/1ToohIWA0xtgDrtvdF250a/RZ0rac+cLMlh1qrTZG0Skt1qRg8FNx1UeeYNhgBtCoxqQxZ2vuehpIczwz46Sf1RvjdzpQsHrwZvliNdmc4AIkSDaL2FeYoyKIxRmjEFg2DwJ/NKx5/Q/ZubQMz9iM9b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+KQJjXDJC9CDOIb9iYuV1dHHvPpphg9PN1w4BA0+y6s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8KnVsOa98G8BDILNuk8rbaKlxNIg0cFO1/Y0i6RPMAh+T76i7O3KQj5UJbmoYaSlOZPI/n5tWMlaIFsC7GvjabQZkJ1Q6D0dvOIxNmwPslcn073Hxj6U2FkK66R2FcGowyknUyFU9qezIH6gDxYq91Y2QDVgZhvYT/mL8pXUAutfoAxgJului7IPrum1bVOviCwgFOp+L38CV9sYBOUbeqzrht7IukzOwtSTrCmh5ecOt4Qz9v88RpwYxYX30ALBs/PMi2L8ZWdea0YSn+XSdW2icpB6Ue4FCQBUHYZVTT/XTi8JaTLyya+XiJvypLreNLdFEc6cFzH4ncq1hYDK9mko+0yohLO8t1EL8TYROzv8L/TlIj1hQzk0bQzNoiQHos3aamWnkuVtMrHwvmh6bR31fkVBCjrI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+KgSrZUo41mj/BIQ5DZpudOkz0a9Pu8/jDa+/hnGTyo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wSkfTsWxr/C13VmL44U4WEb2/0eTaQWFVybWDRb6wCMzTxgTklH2zO2fXCLG3PwZI/4Fr33xbcIEUkhao1KbWSrVgpPymCn5leUucv9qBo3vGf9ga0LeyYUeYpVrU/B7QhKa78wzI/1FEyQBcBJm+LsLmojUKsSmC+0xDjhlUCTWRrUWhVXsatFVNuRk+aAMaewsCInwWpv3plEVKwaGnz1fpBigh8XzNntMsiadoYt1Ou9E0Gjn09yXVQiGmlvrfyIwl/pFlt6l5TBTenO1cRAuPHKs0lv0pMKWJxokJINA1eQJ49c9FoViLV04Uaprx1eDsh/YQQUfLtOxxIF1h3hWC2RuCWkOoMRosmZNOuBMOexISoUdPKTX5mUtCcKVmHKGP0OfVg/+MEdZO9ni7h23944mBcBI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+L+Qpea7gyvUHmHarK/uVzqDphtp10IKVV389JIbLyk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i23m869zsJZE57NqjHKqtUZQSboUFZh/BQFT9sDhYZFZSDbN9cBSkpw8XknU2p4AS8zpCFF2XFuSdCW690jyEX7MW1NA1Ikp0jQWsHWVhpIdrEIjaVdPcTtmBBHT3ACUREwzqRgYXGk2Xg6GSeJPkZfAL9r9SvqlUD5VYwiwq7R4FEwZ+tWbASHGLzxJPyFhOhCGWixORBNR2yTpGgj5qVr5dlnJO4oScZgACrwXvlztUZTi4IurX5G5ivN7K/TyP+VCqL0je47dZAUODIw3jaggJmwbDmEzvCxUPDQWcd2qONAPsU0azuGKM/uOcfPNkhDhwJUcXE7Vle0Qmpk8cyOgGy+bNFLo0YTDP1IUxG124mvJy6u6I+NwDsKGF6HVUzDCkb/itagiho5wrViJLYAAIC+POlMz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+MHcNXG81Ucys3ag4Nopgifx45FEwwSi4elX++lFW9Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rLCom9m0y05fIIlS4IFL6vcPxlcXGIxMDJSugXHGCUrgluN44qJrVt6CC5IJRibDBrQ/RtUvJyY81cpCs9nNWJhH/pPJ+/3PaRa51T6qjlW0dc45Te/oKuyldGQL1dasrcFN1YvNuG4IFeLCtspi94vrE3FD/+bJTJBb1yAa/GSntyArGq0YPEGfVkFkJ6/BXdcX4y+xCS3b4yt3juch/UfB5NE+lEgoj5ho+KyiZtZiVNYibo3qUX6FbdQVk5FU2ddG4uINijxCmp9vLvapIbQCLVnFK3PZhTnUD9w5nFfVo3KzZBNqq4yND3LVASu8skkT1OaFsVTUDHey1MqiNZLdn8Q8vr5EHZ0iQwOKEbA2cr9DXOdIqgYaBkl5JtNNH3NyWG/Zr19G/VxA2SxaEiTXI7jcae08", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+MUg3TwdZfglB8lGXYFuuBAH4wevWryojubgwhgFmfE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7IMuZ2rd++Fh2UNCZek8aplE2ClzKthRWyJrRzuIyRY/YFOW/8Kbd1ubH3lToFgJM1ImBjN+qVAhy0EHG415nPjWezu18ZuMofsbEbPQkdFSG/Cr2dLX6J0KRi50Pm2bm/PG14axkkK7f7OJXvaLD9ENZCVP4K1xgapt+RtswXbOhb4uUhao9+/8UkIMUQTlqXUdX1idTx1aqBNnS7+8yVVlyS51ruBabIeOLXTC4orL6PZQpQN8tON1PvPb8IRvKsUJd+1Dfa7h1Zr7jbNspcKPYZaWEz/4PnmtdPJCWPh3WXyswXsYMHKpvDpeAzqRuSi+w7U/9erdKvXe2zlK7SXRWdpT8F3tsPsOTWdYagn714epQPMcKATXwd4E3lN+TP3X1n/EuJuShMc6t983uZGo9Ausxx6n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+MUnp0MEzT6JgFrIQMpDXNydz2LRaRYk+uzMkXDjTO8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gYCVO9sSv6tdLSF0VnUXTOa6NCJysrBlcDrOdWzOmo2E329zSBKaMgqyHJdvOFULk1LLMhZ2d8HU0ssNRITXEUD7fAU6G+zB7JwoCPsF6zRf1Ootp4Db+erilnlNwrkRNVEkd/ZW6vvXn/jFrkRXsCFm0OX7riBkapLtk+g36L9uZCJt03gYPO1vNBJUTG5LtSheuutle+Y1SgFBZFH3/TmKgqsrqKoMKJ6KVFfXW4vLFtFsLGdt1FVrYXrvGrbJqiJzg6PYt2gSjIrAOdLqRFrbBv3Ip7a/6Te9pZJ2Ncc1D425hFPlm2ng0rcLi9pqqetVXU+PKjrqQKGsI7cu7inKwMjo8xr64ZpIDex2fOc1JrjluuAWJUZgRy15/7+D7iX4SNSOk5Pz4p/Asv3ueS1B1qQSdydN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+MeaQGw+sw+ObqGbDfh2K7Hc31JKQiQCxXfqydGm43I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CnJjL420Xhe5MNiWs4IJwAYOnxocfZdUMGEZ9tzcD9xBbren/O2piABvlMA4gdn2oD0HwN3tC0l69ecfcAZxmgCIZYWVU1TZQ3iiBUwvyvdl+Eo+9Hu/+tqQMK5LNCixvU3nGZ3ryTyl0CmfRivKySilJoIzNMKjo6idWvzzua5LSupKLob3u7iVOFVjmQexi1qCmerGkPyR+DF+zgr7nMPVhfpyG1VHi4SSkmwOxOgH2bhJw4BqLPhqMA1E0gqZ5URwz0b2haAiEM91sMRnnN2ELZBGbOm1IWuAxrOntP0gjp0/4oDoB/uHG0MetEpkm+YygpopX1hTqB6py4LUC1m3MhIqEZ2D43uhK2jsR/0gR/Ysc114gmEvy7lTwrIG6wLAjaus4CGQkaiwux2eZ5OPDCU3Bbzs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+O8m3Ne7lD3rGAT0NUs9J/xQb+SmcnDSw/pQFaz0HXE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MfiL3a3ypBdp5bvYnkkChdz5QnwaK73z/R4JhfR7zFjCYCMKYFTovTI14+1GMOonmGz+JiOwVyzSXdS0BvFkSDPLqOKNBQNlupgnvfCQ6rl+H5tBxBsOZ1SuvGkszKuPVG/jpC3wuDHeNBEFyxUghS0peJ3SAnbzNKWvGQQBwBVdLkJ+2kjwBX/3iaLswhp9N0Z7t3biBLw9B29I6DA5m103A/u+jHrqGqHwkXv5E+vZQP3fJgK/fxUQMFoG3IeUfpluSdZRsZuTb9MFRG3pVYFn8zzaiGdH/8gt81u+phJKBdZFLfnH2Q5OT3Qf4TEDWB4BvX/09dL2UVDUKQSNvdBlOSe8BV9ejjT+py4cssg9eATfXdY0R8KFLrTsax+0RqX2ypnoiabFXNoBG9Q+49ZJc9AiRK39", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+PDHCeqWVHaKhvNma4D+nZ/zJAAQwtDyznM6xj0Qf4A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+5TKn1yl+SsAG6uzHAKs/xIyAcIMqwvlOPVxzsbVnjRBeAKMdA+jqvb5rlKX5l30iQlQqhEUsG3EOd2WgvD7OavWrtgcigfDHA3IpxGW+JK6MfnRSe1gX+LyHLmXu9Z3jJAsojgPrw2B3WHD0mjlQAKByMSpOSbvNrOun6sBkv6D+QzLDe+iW6F+734enF9j89tY2Rfyo+0RM4sm2qQ8bFQkk0vEgBgIglb4PADyo+FhTMa/wjZ9bqjbyAeq/ptmsGIYUvwBPHN95W4gtqvAiK93ZSJOzexRUa28/6DtlOl54i9bSjoGafI+5V1dhY35nNdUHRgfxw/eEDHjDvN7wXxONZ5KdcUqM1D437OBTv2WTqPGyRV1GQ1BtfnhJug/zp4zrlNq6DMmH/HyOvR5X9gHGJG69XZ1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+Pr3vIpifd3y3nNXSFyZCXj1qQLOUci5nakxUQcxJxs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Y9nVBGFK7LlcgJ54CxLmCf3yfGN+qBtZclAWhOmaJAro/lyleeAZ0XTLGRNVP+7uk8xbpWXW0PpDig2syEz/cAv+RT50rnkrlcU4je92XGS7QP1Ir6zH16PxMYGJzp52KKJCFyAIWHduWJHh1DMBEQIsHcXzyne8tpVcnAtuQdQQ9JBxe3EuXGoJrw4Y8yhf5oxrFp9LDZmUKR8qPSJpwIdOZp9LZ2XceBTEx5q5nq/3AyXXdKpks8idrk/rMR9vlysaF6Vb6lU5CxoKVlD0I1m9tFDmnxTt0SsLkIV1wPw95Vno/lcpRtOmzsZwF6UZ7Nt9eNbPGAoKPHrY9hB/azhMIYYQEkS8FtCT5+ZhdZbMGbklYlsXoDN7z6sdTqE/tALgtfU1gRbVqFFaIh7lLIz5bWsfAuHV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+Pv9m6FTyvyj2k/X1IduKwWap8mmExk+qH5fQPA2uB0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lgRuEfbXccLOIA89pBwT8KpiTpd4KQ35URD1gbMm3L3elSccDqVoWISdsIy7CzS4oyYBIIOhkc1Ku8jvT30XIvDWOuLuIhVz/AgmNpe1p22cUiEymSQFBi+HN/D2HITPIUjJuZqrUFKlxhLs1l09G1WZYTDajA9iNpyz2YRDTmuc+bzaXJWk6dD3eG+MTDZP3ufCnCcvuerd5hE/5dMNW1J13+7LwL/TjT58ZjebUbExPAesT1rIODhfeIoWA+B+Iasa8JS4gOYqMLDgM8NPj6sZFXnS0JP+AHY4N0m6Uiw4tn7LMtXa6UqQedyKXnFobQsI+40CF51sUg8CAzofAPAnX64atns2kbk92Qdh8QN76HUNJouuavyTmL9z6LcLXE1q/XXBbSSAfHN8W3dnbCG00B49e/cx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+QmMGLvxaU3MLr2ktGi5E6nFo5CXzO5N5GEqURW7X+k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2f8KCEFf3rpshkOMRS6DLZcaHHQ4gVLhJStsnjMZILD8QghDcRY7o5CW/kF6IQAolBRKJe8I9ZfN5BQJ7lOJtdOMcbyN4oXyih2N9b+qgUw8mjSDD2MkH8Y+niUGheIInp6v9yfrgWBmaQeNXrLFEbheLsPnwm/wxgD6tqxvWA4E80dQjMOykbZR3g49olpEyBpxiGKdSqxIXfW7NqPcRH9vbbvbsVsIX4R1mi18DJGWjZ8yGYpwOqsVd3bbZXpaiNuQauaHv7gvCoSguDEiA8vfkixsawV4VXPoFzF+xIn34MH1KF3hcehfy8ALmFCoLQNbm6UKsOVF2gftsKH3rUUFHQKfjatBSrLaKCcGuqtrbVownhWUc98JynW9bxpkCzdoRZGyxNmdAVmSBxZdeu+ddnPSYBTi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+Qz/mLGusTutB2taxPshWc/07tBKzDtZe2dWF5+ibcI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nR8sM+/Y82Na9K4CLLi1+T+n+zTTbJHkj+0hjW5gYRVIKN+VbrGW6pF6s4NZajmlKhtRMKjVa/Y0ykpN6x/l099+vXRmLHCZvC6OnJ/luoM0QKndAH+hOpDpzitZbJlMP2K/1FKhM6mM0qgKB5pirvpkrFGzl8hUV7ia7k0QiMtK63/sYYPMYVtsttSmlixHBtzVa1NWzxDT/qu2qJDJlbmITAfCXI22quO+7OPdtubPUXwriKI3bvbjtBqxJzGdy2JvlsJ/QylzBqE2f1L+anm6Bo36k4D3SgGkW8qXrwnhLrR+cte4WDzghf6Eev4pUjW9arFHneEjuOwQgwi1H0d6gHkolqtrErFRXsK47v2wiFiWmANSDILKeGArEp7Pia3JyVVY8UcYOPy8eLeIMMGKpPHL6ue/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+RjG0xOEP0PeUJ+/5zuR1z2oCMcuqvZTQ2NSywk+Ruk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m+kRHgOUheIQujEAvlnS8uEr7ei1VtrXwYukt57F6NTng8b3tsFW7FplrwO0MXjsbnPPsVwMd5ORLQ483Co4XLD3GhsNUBImHYSfrYIyiAKMCTYCVb1jirOhrjd73/u6QO0uKH4igav6hNQ3LbbGrSuCu5nAwfOyrr243hpN8j9ARHYrsFX6s96QlKJr7R78kg+n2Vn7KZJxGXQBI4qHc3JvMRWZLPfe6rC3e1petB4XCVBMUtWFzsY6YsRlqw6UPcMHHDXwkCRghAAZdVSTLjQmf6ZKNvMHlKH70GhvwT+H0j3easmtKH37pHumZpFm2lQ+jhpxocwoBf65UZ5qyzT5oswjfuAG8Gk5wUnoYPEVl4Ye55YxvrZIgOMbEpBnKIDrmJlz9xYTjVLKvwuGXek0Y56eaERq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+S37z3m8damwFhV7cLE0IIhdelhK/YYmX8cj+NgGhRM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4fNS8zQx/AlSVk5NJTDWbPkG2QNI8S9uF40C6PrAHQ+14NPDO5Lblhb5ywEsB1kkmWWRcTGrt1l4Le7yM0Nt6tMYg/vC71aVLrwLRZFtyQJjQblKzDxndMnhlPvhwqBSVgB0Evp5BKawoj9MAXN6JQTFGkiYjxMl8QMD0SUsySZi7mMT4tkDdHzslAsye3EZHmiUXe/EDYwRxJeCDR3RsHufyyvC2xoYS2pYmfkT6bfVGgcqItDb/xY74trIiE9nPrVfSQRlTz4XOV12YfFVRuAwKQgyFnWP30zxCH0Tlofxbfepd1W5mNi/2UCnyflSDbanohwqOcZQGXRd5dpdIUrVOHFxZ13LFKSDEB4wE8eg0uGqfpBqrqo5k5v0ne3yH7JnPXi3nd27TlEaqpH/2ooH/lSN/Mt5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+S5xg41cH+Jird9QCViuHGRe9VNA8nRy236dpk3Ktyg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+uHVVCGCovLCLtPpDt+baN9vpeLkwjVqdrCzhw052cUxcJ3KbdHzJjF8lQ7KOTNqYwE/7XqrOzY4RxAGtdJ2Z+IRUUSk2f6LIzC3FSRfkLLA6HIxcGHcED+TG0OIOWmpzIGEI8/aBylkwI2ZN0BvXLvvFsmxrsvnIOoKJrBuq/Yg9PV6SNChkJ3laHu2+EP03dxkOFL1S87O5AHCuou9/AUaIuxf47ehg3GcO4o6ynQ9dG5cRP/ugMooJnNAafgUTMhIVoQGeqA+o/qKW4gYuu0qOQD+oKt3t/znBEf/F8VmP6AOJaE9+wfVrPk5u/F1WtmDCdx0fgyMMxni50Abqc1ZgofoThibgqfxNUEMJOkk8F7/50p2xycPt6CAzxuuco021WxH2KsCBIlu2tz2xkTCzF8RTGaC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+T1zpYxGB/q34T0H8vDOMriOMhrnvUku+8CtoRKcIzw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YK1GG8yuIT7rENLiVFfNMocNjerfzYe8F5alPGgAXtGaExfqjOP3ZNxzdg1bRRflD9q+YA4GWAdp7hrh9WxALExqBRvHOTqKGGga3ZWjag5kFF0W0XsBGgIPpRMuNI8PDiQc6XTxnwBYq64Oiuz4br+UWtzlzYaM1gXLcI/0wYROVFsXaRVb4MIb2PP2OC7Nev+4kj25tVjSgL5FMFrolJosyWfW4nPXEh93OXajL1Aov5qZRMG47t52bdvp9i0/V74S9bhLT8BL2PYwb82+DsGFtEhbimZBm+zozg8mYoAxcCd1z0rbZCl6tW4NvjcNob4+P9T7zAkuH8t9APue8J1cWsagINyKaJIJDASyezeD4vwV7dUppCXr/uHituEawp05iPUvwSaXZ4zikiBxUgXHA8vyg/1S", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+TxxqTvPTZom0ozbVwcGjKlLKMbJRIfY2yrmrM7/JuQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tAGDc0kHkQfKQTS8uOvDExmgEvfg9rw+QV7PMyM2l0gcetBVBWfv5VqUtTeV76mv1oNjC2YwcUIaHBvkz2pCUaW1tWWqhlt2dTGuqZAZTchXpIzYjfoKmptw9kWwvZMh+9roNPgKjl84gCSfAYehnBHOoOrSg3tr37w+mV+I9COAoXbTl5kS8lIZig0uuecQlG7e2zLkmxr2B4lcjSD0nyPGwAf/HHLfcG9ls1MP2DkBcd6HflIseQzyyHWW0aTca47YVThP0Z7sye351vXazF3FYKj1nGkpMgBBHnBP3DqnzR6QTeJNNUECtBd+zYFJEjgvearDSofHEJ5wFNloi1DJUF0DqdVd7PnewkTCzoJ2wi7fuTX12pof4MBoJWifRmClIDhWpe8DqBW1X/ciHGiUYkwu1ynJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+UYhbMFOCbpbIidqWPwgmkr1YhYFL3qjJi3ixlW23PA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "b2/FWmm1uyH0lX/QweQL0vu8pKGXnlTxA2Owe4F81eXXyexPHYsFHI4yGqqtQq7MyxAqkEMQ5H1qKe6d38GUTDtxHafEM1g9qO4MHCj+uHztv0yDyjHP234YsrbdQ9JUMNaMAsWSE/Q1+Xf8eEEBaiBjR9R8rKQ4I/gC1SDvytS5Z8VPo2CuRlhtE42toDS4LEUAdKLLSRnHxFoNFPHt+K9Fn/ouf+ivgUPOvLOFKPye21qvgSHtimBZKTdpbTo21HPniFYyYfnGPoAWWek3HqWF89AZZSEmZ+M9SuPkmI0SSRNNcmdW68uApokK9wkzkp+tqEhp4/L86T8ya5nBXsDS4PK4kTR01AODsTdmBEh1NFR07RFotrT1NYHK33p2xw2fFO2uzCHejzbBGcEtwgeQxRrif0jl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+Ua8bWtDSQbrdjwPp49XH+VhylsEoIypZxoyW03pOVs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eD8Ytx9bYlHtY9Ad8qqgo6byF8vX/CRqAQQDByZKHLY+OzbAKC/k/g52bvlmd10kWwtu+M4E8Lcu4Lk5jGnXGsrZl8evPRpzLv0Gk8mAWxRpViN8s6m8EYFuItSGHxYy40PWurQHHdLGwVhqWNC+JVhuGdcJGP+fU03JUO7ISCo71wF6tmOyhW4KMOVhN+zG8zKEbhG573ANKhm2TuS/8ROQV7j8hbsPgvHORgXwXL60VBirZfaid7HZv6mU6wXeQ0QAXpmf7S7pq0zzmWvEdYTq0kskLnZyK61eESfaMzSKoo7iXyE7eK/DpUdN6b2Pz34rUKIc4ps/Iy+Cwsv0tYV3/vIfjpy1qEWMuQT+9QdnQoL9xUP4mZaGLRK7IQCif2XepMDP9HnLiuPH2npWTV+KRStHsDye", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+VCoVM6QuGyGDqv+qJvAPOCe0r+SvX7QCtCBt5RTmGA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cBRMEaCZg7saDLmmPGKOaOn1DUkEuNUIOXb+VxuNy3zG9bTiihpZddhphhlBwM8TQQ3KXj5727K5Lfc0xfSxc4wJx2Vn3cU4uEtLRS7Qjg6edUcRSsm9+jZIeBk1ErbBFafM0QgBwQCjdczXPL21H3vN5km3UUMZ/IZnslBuil8SIHc0ElJrsvRiIgerAhF/ggJFmbPqvnsSkL33ffurmPH5ADxof1ZVS+1hkmw/Zy8uVBUvDBa9U7pukU7AEyP3Ebmly/GNuIs1MKySZibUJid8kBaRhmupCkFd/jth3q6tFG8RKqvsKfFtUVGZxzljHmQyYdAcPOcoaE8UFBoufwxoLAR59O5jL2pbBtcCSC+KlKkQkQBd7eKA0EjqY8E88hy3oE84jSj8INE7aKPIZ9NmSHyFKlQ6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+W2yey28DGgsqefqY8T0y/LdEB0ykdfMp/Que+bMhb0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DrsH32+adRhxJUsBjoSxLT30RnU6btEBAtwI31Y9fHsbXGRjDCD8V4RgZ4anmn3ZDPaw+/TFPgf45n1ByDwloBhH5/bjO+A7PT9/7nh/sTrBNGrchs54O45mHrlx0tzNVIg9kRLzGGzUFhlno4LOcDNcILtZ0AC5BXusHmFOs+8l8WJkjsslHCYcDgRZRwenVdmyStPQw/62lkLrtNCCHqQkWbo3f2xk4ON3WjFZPkxzVHz0xVLzuSYMp6YL4ZXDqCJtQeVuLua2+INqX43LCs8/NOvtRu2RXiRnAS1N+bEjO8gPDM+8ZkuQ56VEu1w/jVfvVTQXYSZ4MjmfkIuKWjD2SybhBT354LXdY2KGVKfdreoxlOB+4c63QaqBeX9bvNqjI4IrzLN3XgioqR0vkIoWDUmFsrtX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+WEk2BmU4srAfm4yht272N5rXGNFdgg+SK2hqf4g1FQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Jpp0R4FrA7NhyqvpOtAxvRrBWGiHJ8CaxUX4tT1L44YdmpwlCQkXEyIl43fmUjUIsTP9DGs9hxPkFC9wbfltb2Ks7J5MeYgjVVqK02FTV+bwfUxwph/oxmA31lgv8V21F5obtnMRbb4q4y94n0yLtYS+EGzaU/9nKy4GIXoJiD6474PgfZr2gIW+WizRI9I0TnH5mRtz67QSanZkLm6f2ZP6Flvvi877xrrm75UEHmJpOE0S71u9ZcLn2TLbCdWsGVNiecdGlgRi0reHgLNQCt2EhRGQjdNTUGx5SOfdEbnsV7vLutL09JO2VvDr5qwSl5KazhGtcJxMSBYDeWRvpGRsp76ODuWxhFEAMWId+GylFhnJv6EzT/Ps/MOS/kGhVK2caz6JFMN7qEo23RW3x42lxgGFvbP+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+WiE5eNzOFUi6eBxJoMA/AjeGQdGePgLUtSV7Q0zrpA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "R7YhjHOLZpj5j8yX6oPu3o3wtR9tYbJJTUq2RRYTfIEqFld+m3FLqkPzkUvHs7UszbWuqA1dZNYvo+x63b3KGe/XPFXbu/eBZ4y4+FUXmvRERjGN6msznf1tsGq7wjXI1MjBkIdvaVNxk3r0LeLkQjxG+xViAvHHWCtahvT+TDrXgetoXYgY8uBKOGBKvWo3voyO8nZeveIO8HKDTeQdONsaVVPTklJiIPRj1ruJSuuXooXdez4y/ejPWKYD3fOkptf3SSjaTbM+l5U0M+i0Li+NaDy1yR4vn9/uizna0SYec/Le0tXeogK0KzCftI49HjjT70Mcfv8kjLmmu5oRK5/vTPbgN/DNZ7H9jr/+UF4MXSpk6mSql94Eq/Gb6nrmbptwavd2QKZZx+4hT5t4WDbmYZHyWrkc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+WmAuuECGuOsPduEKINQdZREaJKDeuPBnpzQjKhni5M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tG6P6hIcGRnZVsfAOx1JsBIguSgcNH/QjkfaSasZsKc6mvaNsPv49EVOd8s5avd4SoxmU5plUBKvt4j83XI1kJEaBHt1vmIPeX5E89I989kyyJwd0LUhTxK+d6tv+FP56iHJ0dx5Ra7YtaRI8XsR5nYuaWJ1NciaSID5cDCjuU4nzLejj1EFV8+5bWxkJ6niulJ/RyS3y8PQoE50cou7utcljEc+d5UtwRVKDXIOFVkPTPM40UOA+OEgP9+dnXE/tPAFbaKHO0hNAzk6jnCtZ7G4UOos80blXlTEi3Z9xD6sCY7CxYlP409jgLU637PKAEUK0k7IVkNNK2a3tkYZHiZiE40Tgk0a7z+/UaE5Wjz2w1bo5eKv8ggEwj/XUSod2zQbjCEyxTZ4rZrgwPeJQAgtVuDvSuhK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+X5ZTdPvwYZWFsTGWO910+jjFO38xagF/vezfUp/+ms", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rhSjjie5dxSBqv2DRflQSNzmOx4MRBTZBOr0dyFdNDDkLs/TtSXQnyzH6JZFmsZIC6FZL+7m/J6mCNphYxPBmqkIKj17npxmAI+XaXe/xH8z86RdGJxFPxnAUH+m+OE3WcBun66+S5OcUSaIQQ6KqstCL1aMIk6uTIQM68r2bu3tmb/cqFqCOmldI1ob9LnECU09y+S+zyqPr3CiUkx40nscNsMQIZBssyvwFj/UNpuYrhvGqFGBfqu2j6KuVQQ7dup3vs5xBXWyzlSw8deHuY8V8alhwHX1tV+S475e/owCOEKJ7gSLm3pnkIeMvtE5LhV0F6mnw4aAXuW1745FqZFCy7/Zh1HWux9vi8KmQEFdqx/9coywQU+kiCucMR0Mx5u/brIJyHoF9GyqoP41p4X5ndlqz5Zk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+XM95xtSopcBEmOYfpN3Pa2id4z1lV0qTS09lzMWD9E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uSBJh1s7SCSIEoK7M22vi9jr2QrIJAyn49dqNN4oSSeZxQjzP5n+T9Fbu5br4N8fAYnZ8Yo2eVZg4h3aCf7wNfKSnTWlX8C43s/t8qdLjsOr3b9HN8ESz7m+eCYczdKwQBXssdgJNwuPZTTfPkklq6Bua+EaQJZIltB5PPlGRL3zcjhiTlqlzhs3071biAtdRsh0J4oizpm084Jsp3Jpx5ws2GcQlSQRX1IIvDdXJij5Gzzqt7Jz0uxBwcJecEsJ0gvriMMULy6qs+2MpHBqGmgQ7KxSzrNGy1l8mh+hpXkUqaWJfwzjE0KF1W/u6ofq4pMxXnisCZRfb3xPZvrA518BeBIB3ogVTTMLv66HkDVWSIM2M72/HRSm07O+OF7VtgH7+f7u9clCV1dj9w317/GXSo4PlagX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+Xhu8fozTm9fLbIgjClCdVh4R/XG8MnphepRgk1ynO4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tjHRr5gtYOGUY0K2TcVGGUHWdELYCFuDbiLS4c/kis1sjq+pnlxi62N+3yYJpORZHQ+fUxyhp39KcdyBgbs8MMBsooPO/UtNzCGifRBZdHdpdXYKVwm87T0olokY5ui0T4vntinReJ0QrupuPMqLMyWrEqvmQny9oKdeyVU+886XAVReRI/jAfylkXjP2UYF/vqfOkKsRWcagXE+2QeYxcmLj7eNTpkJdtMgoOri87SMKV8qLy/yaOkRWo7BW7yAZARAqot+aa3HKc2+fAhmPHlobTIScpQDw9ngK7wmY2usRJ680yamw2oIj4PBhN7OOT/Hdl1a+FGqpRxHa7lt3I+lshEY3doeNCP3FxIPyTNwLXzLoJagmCQAH33m95MQthbLNIcRSF6jCMIjZyXdWlEKBxOQy0uU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+Xi2MIYM4nGaJNpuowdGPJqADzi/GiiM4nH68cJzqJM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "n44/n1LJ/2SHK1gp0v7KyY/RjqJ/bNQzbrsYaDOwRyR/xq/VnHJWL0uf40ywj29r0W1uWM1XlwpMW4BQZi+E+GgawVCu+XfBjtTrRyWL2e+oJHuovnV2zHotQ2Uuj/bA6DdCfUF4hPAF5yhM8eTUPX2uMM6eMzbkojD8DROdfy5Dw/MqkrT0K69gg22xdLWxN4YjwfWrr970kBR6w4GfpZEHLqCBhz0T4pb0cq7RqPHjSkvaLISfKi1XF+YpZv0Du5C0l7YBfIvfsgVWd8vzniApKrVcrhBhPvKw1QPKQSEU/gO6m2JxDcjusAnX+THLuRUGcgmlyGPBMoCeyZzQPrCzXJG5nbMRkCv7nIxMLPgF6nsctumKTrqcfaRduISHJWlTDEo4hBP+6onF/VmcN0KSuk5uJMN+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+Xo444hbB5LVTutrCgzALWYU9+PjZhLBqMP8jMyZQA4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ehkQADoXeROoDdwr+02yprTNF2yVush3t31BrGnscZqzqbE5Y9ytf20QVn3oqeOBct1lYr7dI3HkWhFZUfz873+tF6YyCU/Ln3mHUQn+Y/ttecM+CCM8N5NigIcsXSW3EHhVmiMT0RiHF+w+9fbEROg8SK8jlwUqNX3BeVJ93Rd5zwfh2Gl8G482GYaGVHoHVfmNwB2r5IPfHRoft0kqRp0cX+2OSC0vuu+qPr45JHQ0V81HXzGCHWpeDQ5sLr45ysevjbzdKZz6DizRWiauA0AGRy+0wzO2+ehwzOyd2Z7da0+4NL0mj5EIcLtQqa4dbn+FoXBpJGmqbenYkKI3BM1P8XB44hx3g+CAr4oIaL6o/TKwkxh1aFIyPqzs7xrc2rRY0Lm7mZGNz4rXRvidDWlWj6XRKRqw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+YCpSoChKj62Mos+OFCWXOjMk9e9x4oOR7dR2C4KJJ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NmQ3dgYRYVnsvBBz9dYYZzaQq+ljffQfbzxK/eX0FXAMg/YXfKvDZlYh0GTic8XxZK3NY5xrdxuAQfnjak/m0Zp85svop8Vjxj1q/mZpF5xTT96/UbZMdyZCGnof7LEWAHCCJDY9UFK6OO/rQpN/cr0SvO3nWHmNQDmN2HFmfSOQY9F0Li3L45yZoIgpXp0fKmkqi36omQ2w5SsdaDXbnWlaU//VFDRjcDiaxh7tserEKz3BhRf8VgF164hCByiOJPIvdjaj75bBp7ncaD+W368ioPy6Fko+rDi9SLasAQs6Qt334ShBN9GcLoo9ei7NTHwWdUlGMuo3SPFrRNZJ+suWV2ZAPY4IodHWi3NhBXgahBElJEyilasM0nhLeG+Rm/QynKlvlr3MmDfFhrP+P2sppfaihywe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+YklCe7KdDtK1wTcc8KPHkUA0mruR2X9Ui7W63GwtIM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i7kzgaV/KnuwYakifZEhVphHtSRtgkSXdv9vXAZrnRq67pjcS54C7t0hiTpOCFuRb2ZgV5OQgWDq9SN4+/SD1ZwnWvqAbgFNFnHtlDNaXh4JyjHf0qCPC7LqMe6ZkCDbIcypEi6EoaHlFQuS3WShSvdgmgQFDoLn3MKoJ9INjsPryRtt9GTMEUVdlCtJ2SWVYxS/WwXBqDdItAL7jqMzJkSz3CeS5jI7kqNvdub+4A/wfnJTlH1xM5m2454c/OfAcH0PJk8y9CobN5KRRPNH0x3OiXH1eg9IYIiXpfOecRJwQGvgoz0fMIgKvWLNkBwxxHbArmMeFb8Jvy3AzfCsCfVGK7swW6PNKjXfY9fpaCds6ktKg5fPPGHpplwrpc3FhNpfGglPGntD/eyAv3OKfQPnETV5pHO2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+Z4+UBUfJL+nWwLMfRnTPxUZTtAI123hGbWUhdSCOXw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "D3zw93JhwzEaoaghAmPinyo8a2gaP25alRp+w3dFoWMuC9eOxquBUALOvaDV6SHTmPF7I5vw5dghXLR9OH8sjFvkpCjPwmc77UizYHJQeapHI6quDETPwRLWwCostjujsUB1J5JdFVvu5O16VSaQjIxenkgoPwr3fvmV/sF95aEfWA49DCyXbXSMvm0oCbw2S0un1f93XE7Rlf/bg9iKEAsx1AhL/sHzPQOxhQYXOiifv3rsVvBVpLIGCaw8adodXiQ/9Ryaskz7pO8BSWSMufO9pOtW9J9sWdadbdbLjwhYC1fSx40rEscFq9YGkOQpsl5inP/nyPEVKQHP3wNfkU47atjXxdHVP98y7YBumR/Fz1hSO5BWeF+NBWRYOJkfNF33AUS3jS/AY2XDhaQ2+9BlcgQbojXw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+Znk91ZuRNGIXltP6EkgLFVtyKqFn5YU+6aqdQj9mp4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aHvYlCZlLuo3CUaudBATct/5TEzk/+9+rCcraCEVyc5IKcPP2X87zs/Dl4oTlzjUqOKKuUb9JCTYwTSJH3vHgBHpx+aksfeRTh8cro8qBsCEcrTEl2qxcM20rhYM3dG4LOAOFm5KtcpkdYnVWj2oVaimomNCdfuaWX4zr4QFQRymiUwfaYOx4e/X72F3JtyYI8QOwY4+CwjFjrp5u8fvCmkdIM8xVrM7XWMHazspaHs61787QIzEDzVeBGL5rZC4srwbCOM0jd3bkuFLG4Fws1EkDKshLRemLsd+w/dStEIocR8ez0hCGasKw7mTpkB7dCRl16pmz896dEimvFtURsn9rSD0TqZCL/giDMui1nAjMgs+XMZARgtOhYJyB8DQUgT0fGFkH5ty9cna2s4xnOaukG+Ma2b0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+aRPF9BOSfiCTGHwdSwRuWA56Eo8H/EcltgjCQgIhpg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Lq/xD3GQ3OPpb7jFKpZyl+rIZ0caPqqcraEZrlX3Vfofeqto9/gidIHk1xRSbQUwV+qmVxxJMJ080WPnys348p/Z8vVVxcGfZtZp71L4ca8CmzRLiFyJoHGy6jpVB31G0kDyY+E9/T8pfrgkVipLdcoKbxDfFsYLA/8AeEdtfHuNmCrOG3kOU8EnQddVBaJdwNJytSM5BTq2FNpUVbPXjEs8S9V02jltzy3LLUiYgC/aQNkysa/4pVUd7jSrjTvo480KTzlcrbs9QexmMGMsl8rwA/2X6iXIO3MMwT/F4eOj+6C3sQnAPe2q1WbBEZ/rrJWRCTwX6TiGSTvN244LmRYwmD6BWArkmZhlrLezHl0ElQDzSk8mJWGDVK2FOUfYFht7IhZWnuQnM2231GLuy0CUg53EjnPR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+c4otHMsfW848ng+ppc385aehXTKfu0D4SCrW27Ltxs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W3NJJ8Pmv5+zR2XT7YgE91DQgdd1QuZFop0i0uX1Nevvs3oHFyZof6PW2jFLhvQa87o22wlSH0DRsnO0iYb111amE9JWFDWVOyotdzMJGVRgR/YvfExAZ57i+A9I8gmcLslJSvoO99fHQpAMn9Izw9ezR+nUdP764QHnXja/BlPBriZlDvKibGQAHVL23F4J9iWGuJvb99iyrsnLcjcxmzjjEcLRwHc30GRIkQi52LssSqeEbhwaOlJfMHhl3Ewlq6ZBgt0vYf0J32KAHUS8Ym73N7JvtKMRVbnGmBrFDTPGPfvExKm4vqL8XLjHQMOQEEW616YRHOx2WP6ORQs5sAThGNXFJJ+K2n2Bot2w26yEpQs0zb+/GV2kXIGJw9q7lsLlElNsM4/qbQRML+T4QofkDDUZe9/B", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+c8+az81+H0P66y/vDrZsmK8wKkzED4oFrWZKOtnC9g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t4dLbIjFE0bwLrlPDbah0Fcb7JeBWgjZcDDlh66KdkmnejK5WAIwUOSb1UQV6luA4lDedoywKrz7L1Bdk/bZMWpF3WM2l7zOZqIEDN2/psgskHwVXlsxQ79J9V9F4LKB3zgqr0Guv/bOjSUVIC1QyIgxjF3/YbJuP0kHjZjAgRBApYVOKh1KmfCDXH/KvGEWmImvSDyM7VK9wC5jnizEStw75BUkGRyos/Bp0fQKsO9138fPWRRPx9g21sguTVtahkWIDmLhLOzIRhzqgQ3MPTph2ls0paSWZS8rRzt2VU99+qy0axj37wRxXyTlb+mMz1GgmsrHsV+YSpAOFsy0Z0iiCSBw0e5LnelQnsG0WCoAweieW/EqW9aMH1DVm3w7NOrDwO4O96SsGICLPBtq/0dPcmvNev4U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+cAazkUDawLp80asUCMkF9Dto45Px+GC7OasiaJCeIY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cG4CVODrG3vvmjawApbsSoBoJlPngYw+XGe9KHpBkSdOjuplG1pwF2IRFSyEhoAoj+0IQccpL9CVzEowvprzEQs+rioaTbjhhBtZHpPDBAeTBxMR+2/SoRfhuRju/dQamTNd7KDwNh2gTkh2X9eujy0updxzsXUsVk3gJJLBAc+pTBWTxUcfN5GIC/0f2HbXqe9t3cxj6wlnAHzD6/y46yeKfN8fiNcW47Fq/5kURCBLzndydnGhX0U3rrtCg8YlPAuQp/IMEd3KHSWZnqZtRfyitfbb7elZxA19RfBtuHBlI/o4N5sSMFoq7iagucxL4FlxULTaqQMZfN3K/68fyXYGqf/p+XKF1WqNEwmYFRdqJ7RUXy/eqb/JjH7rIaGufI6vroHELf96lSVuEKgY3zenOPPtAScy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+cfaqMD7b2dYZoc98vqbMkfGXRxCZThciAKEZDNCKEg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u9Yk8mVZZOyBY9WAB01Z+Uj08CkkvdN1iPV/ejsSBRoW+fx2SMAvwcCYHRBJ98K+ENyXzstOnBCcceDhG53mt8m/NmUfWIOQVZLlXP87uqNzSpu3UsIx6oWIFiE9kIB0ManlqlY5LfirMgFqE/wvTUI6kXawJ6gZC22KBNINgmB1a8NBZ+0YmlM+qDpBGqXArHOAMqHQSvZCxFWEj23NLxYIOfHUGk81w+HBmoaagVzFhT7e+N47+93tkdnKbijtrFCpjW5rpJcIHAfXtUz2S8Cig94syVtgz7iVpPgS9V9+DnbP1b3ag88u+GdHzQhHybYowdzIN6fdW7k4JO4uXxaI+3i8oZvhkXx9AkYWm2wDtk/Vzgi0vMjLY2ghjeAq0KCnUcTPAODqROkHQYjktU+t8IVFRMqG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+fTbedkpgmyFMAEMYEsaO21h2kddg+6YoZtrlyUyJWY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q8VHCjQw5ZdKzgygPT25fYoE85gWuZczLnivW1fscPj6/WFIVRhH1vJGu1UabkriMHw9d36Dd88gFQIfqSvMMHcwEK+8IniGMH1v4JdjNc5iJma6s7CvXi1OoYo+Oy9pEoL1wKlo1kLLSQRVC627pY1c8iU/u4EMLpmxCQl7MF9X+p4FTOlsouhgvxcuLuTvMWji1ZTLTXpXuN2mmJYSr/4dqpaM1fQluDBFKlxt59PMwGF2XN/rLMU7/Qp1uc1E0JWDhy1AINFGYZiLWQn9znsYkuW8wjRuHN4EOOFHwWht5rHDJvRb18c6TVNYcoV46MD220/TFMxs3zNmerRwCHwoIixcs64/BEaZHSVJNM9P8/Q4xehK/0ZGstWWWzkBgzIcqL4ueUMXOrIR6xEEAEpAUFgvkZ/r", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+fcO9svjvEmnGswZ/iWCzYMqM0z8z1lvvq+zRnqC46M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5EVJStaiNHmGshgvIXX9sW6vgYAoteFcX2BLFxzsXvIcxUqUEnNH1sS0C9YVMxK6bwYnEe4wRgP9EeLvkKwCcyl1iHZrnnXVR7VPo9R5greny1mysd101wKVIdaD3tIsGWD0o2zEO3eClhCa+0594xXg+nw8vCIEzBlJEAlaDWYIcxEQJiHiZlpJma7pAL6fwmQWw40XtVErD9kVd6LZ8EHG5APhhxzvPAmNNaz73vhRhNst3b9GTppOqTYY6BQu3WLjYA5DZQirNbFWhcXj2cFx+odtFSHsipV1zdCLDOyX06CxDU3clNRyVjotn2kG64z8rQyQPbrM7zJT++HxNa1L7Qkj3R15iYJGvCsn9CrWfOlkB4E8VW31gAJdxRncuag1J13054qRW5n1EXv79r7tlcBlwukS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+fxnCt5uuY/86mUUzZgUul5/epV5Z0f2z/ddTYUlH18", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fCXOiMxNqsQmBsgx8JKevKixGsIJNufZh+G3uH+pi4MU8M46lwDpo3PM8lu1FWVRFgJzzVMVSQxTH5IM08bp2pB/TmrOgjJB5rLbVn8ysph8PXDXHDaC36psNX/o+o5nBZINiEuf+KFQavFN8ZcVb65xTDBNtMRfVYeCInVzl1qlKU+kmYUUS8DO8/R2LsT9iLfztDbLeWq0LUOIfVrEL4UgA3UHvjL7NdQ2L7ii/OLC49mIXlv1Hhl6itpFBNYGRjX9NJHv/M47hqOCJQh4e/3wVMtrmsvwXOIWuSZ3mbO/MRz28eW8u6lCXnXTRam58itidZ1rzMH+O1ETD2Zrl6zB1yDOqT0cPKeyO0uaaoogWQSn5bb5IKVcXo8+Y71xgNkw3/e9Tf0uFL5orhxF7UJC9vS3Y25U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+hUYnmk6PLyxuEEen3E3XWWX2oIq6XR6T7879HaQhfU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fw1VCvWm2vSQJ1V3XDoeOjVBip0y2lReM/jMIeBpaONmpeUPzct0cgPqJOgbNiRlTTNJpi4qmjgo9kiLNIzdgrhTZK8QfLCK/XmekmWjmrEQ5jeKmnA/F3ISiZHcg8BG1LjKayD89IT3BXm5kHRcetJz71Gq8dCs1pjqVcBDzsjZm6ZcuWHSZ+gDzy5VD3puV8/hRVK7lSLhUef9/KYN2WsVoQWmFwWjF5kLumy8ylabwYpROFXNykUpQiDQJtwi5vL4OA+KDDEDRC8WEcys0KJVyKW5QNvaGh+rLQrYfHWpWaEKErNE17V/ceL2viYppjoHzEFmldylSef7A894h7lPXK8TzJ7XLNsN+7jj7ncLKhIeElDzqRF7KsFUmFOP7TexTKxhwchA1OdKuU9xVgmBY7NRErR3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+k/hXCPVeXzAAPevK0ENKM2JlxSWlMXsXVwbL2urQSk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bU37gSzqLyLLeohfPE9YG3ZCBjX7gQyh6+DYYfxESbnKkK7luBcJtfxEAy2DLwW/DEBliLOtFSqJjZBbRTxu1Bhtklv6TriToW8I2DVxC2CUQ37kG4LNBhe/UrBvjFMnZTnJhFiH8oc/OZRU2KIqMIEp63uW/7Km4MCKIwnkwLypylYUWWdKQ61hF1t6RWjL4K1Hw3Wbv3t/E+rol5f1C1EzgG/70Gk6x16MvqjfA0cxDYuQYUng8erz1dQaRvlmr9IYY109wHwN80rWk7fcInaTC42z/AWdOralt2VK9GnNDAsq3xaJJBXSfJeYLyD4Z/JDqOwlf0UidBpm0cmCi86MNoeLu0tKUrJcKlYi8/2LAD3PGBDWMnyWyL0VOPJc+16ea6I/mqi60qFCbe+Z6w79qGggOYUZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+kKa31TtvPZo3MFeqACIr5AY4yYW2C3S8O8bElwG1Io", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BF1W5SlNUHmc8Xf3LNLmfipElnZVIiJxAYX60CV8dglRwTjwPumpovQyI1OHK8UsR94abBs89rHGBlyrvUyGDJFMGY7isCG13rAwv2tvdfCq/v6gn+rn+EhOa/Qs1L8EPo2gUZZDxqGNeC+ifKhsoBRmkIn3fm9djThRjrfiUtsjmvkvTqfmDfrEN69ABodtJZjhsp6qWdQjHpqFQOzE0L16do1U8BwVAjvIN2HMab4mJlfayx9LsadjUheVrur209snZfeRHXJVTbojG48oF0ydBJLhT7Q5eiomukzkNB5hIDPIX/B7kxTtsHTwfeyQjb6pKJhvE/6fZIwkWZe8G7nb4jH/2569YeDVt1MeBw8MGhgyNeZiQhO3SGZvn+iiiHIbmoA46l0/bpJV7uqoYu13aTGN7X06", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+kX7zEB2mPcWm75+FkOVjKBOLbNqPMt0Xkx/CC+HTKM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DWf30bMylNAmRHhAmKhUcGb846fCSF8iAFRbB03v+QkL4JPt+MSbxuWOyoZkN7GrYtIwh3YBLvcPZKZaO49e2LXvGK+ElFaDKAnO2Fe3MKvhq2zQR/zMNaWfTygj9IF5aWZU1Q8d0EvenCnrtHqfW0bKLCUdj7sqaziBa+AQpjopGLrhLqdOaKdoNGuA2P0G/MBR4c7rYBcuKYINTezMc3Di1Y8yyrC4lPVlNlqpSQfMhKxidGCVztVcP4Yd7xGEz0Y/eJkLHSoJNVAcLfII6Q4iLGR5FDPZY7RH9Yn4HxPRNJt0y/nC/76zblf3dm+L/YVd9rkf6IopozSRYkffZYpG7Rpirn5U3/Ikhf2zyHvTroHrnqtzazNY/asZR2XAUrAOTIW9ua0N/mJM9oVEBt9mOHEmAMBX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+leFSkvPwBiPLfePFCgNa3OUcYS1LIIuXGfV2w0yvtU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6c0NKFS2/QvJSGlzGZTG0OaqLQy+Hn+8w1MDpqfw6Dew/ht3XgJ9phjMFKjR+jbqgsr//B3Kk0NYAC78NXn6Guj151Lbd8g/u2IRWinvu+1lfreeVB/MWSRF4U2BvQDIZXYa8Uqm0ueYxzXLDoItFg0KvU1WMtVxPDJFDfGvF8hH3xtbQ7RPOw6PVwv4Pu4UrUihk1iHHlnfyzCPoFmmMPGRVCNmibw24hwXeWk+g/CAcvPCX4F5T/2Zr3ZS410GdVCeFt94IIAxdMgUIoLXEgNdxOv5LFfiKUw6mQw0qLzU7L+p5S337QcTObktDnxNUh1nyuKPQAzzrPFebloG5UcqdzTJgyLR4/C9oYh5XVow+CTPUdcFxm7I6/dwaEuKI2mb9GQVUw5RRnL375aqS59IwkMyZzBk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+mYVv/+zfbFVcndDTl11imQnUjnhNS2urM+Ydukkz34", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9ntaS+sWOMi1os3Zl7Rr2RhJfaeQV8yWVDzwx6EEvJaL2nz7iG6Fx5YV5gptezpJcX+oPXlKRENb5z4PTWcWjcL3Lw9s00TeLqMPH4b2yv4nqZcdu3zpoFUbpMTPi7h3y5R2KxUecs3HjLfxXGJZZef+JHytrf8yN1mfFTsePZCHweg7lFUYh0WP26k4rspDaCps/MrDVw2RAR3qpwWpVZLUhYISzGJK5AUtlivcUa9Io5eZWiqxLl6qALuEnzC5WJ5s+zSA6E4Yn7vsgWlEtworFgg9MJAlaCvA3bXoWHBcHxVtQI4v2e2b/n4ciJOv3TjBbLV8o2cC2AK3+0W5vww30McwIVRaPs5RP+e6NhsoXqqaLFj6UGMNgxj0kyqP/djcE1/OrlwvV/rHgCRh3ORSz1HuLTFY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+n6aJQ3oCZwaEWf1BsPyVsuURdOQVn9Plzgp8e7TA3Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L8+pzzoZbHggTGisdMpr25SEfLtnhplagZ5ya4U6nr8lVSD7OezLyeRjVminRvoh+LuqOeGZOLUth0xV0Z7D8m/TUosInB2rs/QSSTbpiA6jOCsH+g2U9lKOm53QYZXNZrpK6E/Bxo8aeChRuDn91N34c7oFA5FyA+11U2IUAK0g2MZ6c3rTVp2H6aeAI2U7mUaC9MPj+yUEmul3IdVn0Td6zJ6R2on/l6FsrnI7TPed27dMFQQlsl98sV/PntXsvDg85XLAY0no8uhzgT5KVcXFThVmwCrX6qv4JOvfbqmqNZePN13n+P7SgiSN3LL7G/0hHJGDUY3dyenbCXYiJDYYUmlR+L9YXTYkjF4bENKm4gWeM99cwyD6zw9LV28s9XD3KgaODN+1VUCuXvE+N5dMMwNzCaoR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+nNCd77jXPFSv1NdVwCatvcjxL9LQHS0EhFGtT0wkFY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+twB9e2bRbaJ4aDx5Vbpi0D1aHeBM+t1nRWNTUXASt6BSfvdlyf2qHAE6CiPKrfmCINsLRdNz+HzKUY5Jx2CfE6jdwoDi57mrK4QWUW4wmRFen1hcpCUdHHSFDkm7I/CZjKiHojeD7f5vfcHWCtXEnf70MwEF6bPRra14gey82rXFiJY0qM9+2MiJhMIYabJqF/elIC+ffYZrEZMp3pqjRsABjJY5uk3L0Yj+l+Usaq9oopAIYeNAhy9NW31maSBqJ008VaeMri3EkwxsQ1KrDnfN3usbDGEEDqJCQqHvzM7Mt4k5lfct/pdT/OygfhgZmCEPvUa/UhyYewjV655Jm/wCEmFOtJQ/v8DCYtMSDdQG5ICSKz9ka0qJgFcsy3IqTel+Lul70tvvroZKtYjR0e3REJJ55Na", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+nXvknlvkKf/z2vX8xYk4Ni6tEVo2CYS9dTBvg5OqCU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9NGdQYZgEBdytrOXM1gh22CgMqMVS8KeZxX7/Ckzcs3ADiRHPJetlwtEfsOAeVgn5PI4lUdQVS7PA9BqIDoTkq25CA8KJEe7PhAaoexeKRP1HYqo0NACjixetMQpfTY2TtQloECknV6x4x64PaC1JBZb0vEoR44T3nt1Lf/77+xLipSwqC3MJjfDQuo9FbvDgnO18kBcxUnYPKa7Mblq1ndav4qeaVY0CWSmMNf2pdIEIBLzC/W73YL3GDbuWm/LEo1Tv9XSc940LoSyVIdeM4H9z5Opcri/EkAywlSEWzpuy7QZ/SqJ/Eltg78uciyl/Xa8QgIzoP0CBjD0Xc3KyqWQWk83ki9q8wLX5aW8KQ3GUX7oE1PQ0DV5JT++WFPTzg9VPLA0sg/6W+CUD2N6ZEcrgE/oWfMO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+obqzmsp3BbcUFqE0cbeQ8opmBtIjsqQeDCnhKEFZ5E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X75N/XUuESj+qEzyprDsD9HL/+Z2x0v5YfjloAT8aVDQG+Fkr1PcA2MU9lsRiM21dGGcueQmnfFAxEcPUCOGD6z6K8Bsh8QVrVi+DEf0kHwxbRDiAEe2HlLXk5LPUkiazBnELFg6xN5+imKo4M2r7zuTrHaP5zXVBERzuz718BQRNpL/Tcie21L/dhf9/hq3WkEH/57ewHp6HBHBPxY3qr11uEISu2DzwA3P54wjhWeE+KHYQX4pxx74KVXJSZ0dHvwNYliy/0T6Da6SpK3JfCp1sF4oqdhY2Djv2Lq+8tc8NhdR9KyYIDtoH8CnLzje1jRq/31q4msTHNzmwrkEYKsKLWMFcueBUEv7bJhOncplmyVeqedJw08EMQBtkZM2XFKwEHyibQIZUsESUpO383vqLpELxtR0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+sF8W76GgOA1VUNuHhavifuy+56rVt4bfE8H9ItLmtM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vOjTFP858nOzcOG7rjRbAuVNcuYLVJw3vqxaNvJhzgR35XfPSgqZkbP23kLaQjyY+fV53d0Vhf2xoOTvF+rXtD8aR3xnpDQPJ+4XYlm5urHg1UPPJtRjwG+a+yNSNGlsWs/3oZ8DbhDkYQHrswgeu9h7j9sWRryxDdZ9Rekowmo9fZ/c7cSps/cU2bjt5cTwkVPa29Oiwe+MvNc9gEqsY4rkDkAwl+8vmOMoZxc3UdP7q3uQOVYSoj8L5WiZ9HIfgus5fWkdwgyoDeO8EDhTM4VAcmow6tTJ3rkQlkIBP0yvgVXzEU2HzUuvAEwxRNPce+NGoCxBGZdczOcrxZ0t21JKzzgi+LUTRaB8gqhANos0Q5Zzawy3GoG+TQNbQ+HFpbvIT4XogQas5y4bB2H1U9pThIarGwvS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+sjk+/1KCRRPSidjs9H0BJjczrLkuPDFcT8Mv/E66Gk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ld8YnMN8easVmgTZUf9OGNoHPNXJcrHR6r8l8rhUFHBkhJdV+Ke6VfvGEXSgYbZ8/by4Woj5J0BWMETS/BuUbe2nuh11rduuYREYNWAyeOZinRV9WLZUULsMaGXQT519AxH2AXCqYGgIARSHh7JRf5QX4BMq06quirk+H7uxOCdEdQRE8MCAavkmJgBhowhZDxLV1wrxKhvYSaVFJLnePMbWk8BQUuBaNs5FQy6/NwmaC41bE6WyyEyxyfjsFUxV7Y3x/fzezi+dE5t/x4hbX96MLqN+3fhBy3mJM7pp4qgooQCp4fGEOo21Cl33+ihzsdSYHD4d5nfmOfKAW+FsCOwiSvDjDziinYwxdpzNHIeb834knF9OY418e8RNqD1HPIfcy7Q6OJtbqKITzW9ffYhQKvFATU6Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+uW1UfyyvRIYiHgkCyQE4BamhcA2IQQnzjH5NKeMUQ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bFPo+Oic44Za8qmPsS5RYLzDCmOBUQI0w3+9L+wINGk8HZyc/4V/CHXNk6pWwzlCQyYLmcXPqmAqeqDTS+d48bjVF4vrYpRHyqkHHcWXC1s4iAdNKs4FDsNQUrTaWG5FjTvU0VgDzjD6nxACMwOsAhZMKJKhqeLz8eyJ1eRXvdgperJYv13cChUYZfGznb3jiBDw/ymEljT1ECc/uvQGzSyLkQ/d5Q9hC3eZ7M8oyJcJHXKqFVeo0J7Jnw8kQ2e866+9GL+FYPt7/3Xon2inC2JhbLE9UzZZjpz6qX0cGkZaQUm6z8I5qz9EIgvTZ2cHTlwmsX3eaPU0IESq5WF+82nRuGerQYMUUpll6YdeeVjRoWSnuiEBwgzU6Tpmau/Ko8OhNiZ6DLrb9Mwof6WaDHaq/gIAGkvU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+vnu+ljGeHVDXHoF7w9qC+yOkrAA9wxgKTjs5axuqeI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s8THkRZ74lCo2aYfcp4qhwakhcvvQqp7aMRw6T73/Fr/HuLhROv2shRb4Dj7NLi6qdCxKN0DKwqXBz4RPlfkM+4KQKKLKvjr+J4SQiJ4Or0zDfFDFXj+oc8+SedNBlb7Tqv+2Lw2hETz/Wj9NVTZwM8ihGAs+feR3w5pg3tXAyojsSIeHLVVB0uvylwTJ+CkTu/QbFwhIKA2G+tUYDdVF0wOjP6quVUCZx6YSpKdwiOsEFQzAG7BA2FQ+h645GP0blTp1vNL7Igxzz0fFnQKLUoe6uFUjg/xdqH+hP/G2fbswrRonhpKaEZFIjyE+g+ttmal8gzXA8iQw356/JG2mwAC8yD2JwqUzLJhEkhWNPNPdF0eLcJNDfau8621robDvNYckUSjvmcUQRXaG70prkVnb3Ku5tWL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "+yJc7m9rl4qj43YBgoMOGlsitHqjnUS74pPZ+Duaxn4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zrwO25frmWSlR3f9FuTpKB1+qWAQeJyFNmP6+2bBQgMO33dZqKvtEU1ufBJKtXlB1iQKTXnwhM7kgfyHoUv1ugUJcJ4WkuoyeV8HDcIQAaEVGEVGpt4gT9eVJE7v0lSM+We+ApmURusbtmOOZHHxm4q508ovVTxGEqGa8rR9pT+bRl4Di0TJXHSulOt1byfl2pKGfmHVaGsacPWbvSKs9vcTD/eEF6/qxBcUyGN14BerAw74/6Q1kLjfd5340Ha+T4n5VGCdunE0m0jqizHusmCWgmOujIvBPzrqJKCK+2aFyWfa3/+Fm2YUU8CG+1zlmpnyd+c1gTwWIvhRVKNY6vy7azzV/q8Lusa+J3Dvc1SJOL9T9Z3KC6HovXurG1FXmPwOZ6XN5iEniNDjyXZ4QVJGsJjbBm3S", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/+aXcDbITqBwDqfg2VEhAP9Ut+59OubX3LlPE4zwQBg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tcAVPUtD2L993jA6jfJNEkuHOwvy2UQ68aH4MXzOqT0hIUueKFReBafaB4UW89pnXYApC2LaqIYlHP5c7IwfoCnrPhnG+sRsaaSjpU/MTZ8bW4tH2G1ifYiPapvqNOB2irzEA8gjRVEyjf/VPxMM5p/pBwJo6wIuYMElk240vD1GtU5gLCi8mgopnq3lxhgTMVr562l5tvQvMN1DRprh/wm/zfd4MRjllOPHPwgPSj+0iU3wynl3gfEQXBCOMZug9Ql8+ubWj/Xg5CDQtQftia5sRWKIBoK4+hzeTh6JzAHOE1OnjW5MDBRpLmNt+JP37gcPJa3daWXsf0nq7ui7S1oRkmsCZIJZqGjwmQ8ruBf5eJLgevJ2m0KIv/IRRf9wq2VuQOuAsi8qwBYbmAarH7SQ8ZPtlmYL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/+vy45mJnAOS7JLdV9+cmvtZ133UtgF8KxgsewleCb4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NUmM9xNu1inDau+/14FGjlxz4HrR38r0ypY2ZdHyzycrutOJ+KM7w/WJvz9+mk8pseFoCHpRIuvvNUX/k/Ov9/HRrzap8H+ge6OAsM2q1WZnwGAchbLtStlVh+QSiGSEIYzbhiSZI2qtDSl0XnIF1wshUj+ALYe8m/gbwepIzNaAIDp9CYKWVMJ8tZjd6mIVMwEzsQBNoDcGcSXVsPf/KJJTFaGo1ZUt7aChuKYDK2RB+pTdx6zCJz5d9xv50gnLyQ4IgysjSrSZIa9aexbCUR3mvW8qVlHWUzWlCJCW+mumZ06gMcOcyw0fTMqmnDOLbU+sD/+yiBy2djP3u+5dgNzYmDIV2C7HQ6qKVFsHFtD4pr5XFFavcWD9JcDwZQOkD9K/XwH3JXFViylzFHaNZzkH7kUp48WP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/1IhQyqNpR1pIG312dwm+FRPkSaGoDFJuwAypPDACio", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fqIj4GLeibYyfENK2Jkw7gp4b/kWsH8uu+ACcSzvtQNLViL2v/MylzSgxtVhI+mZ5kNtBnITUB9IIit6tGLpgtqPTMye+/QCtrIR6K7v1sDWhEx0nyGEwIiRFNOVaoc3awViVrRlDWEVRvKUX1xSahr4q/HMTllACCyvciBnTLHJxvyvuCUcElIc8vl9J9abFD2foXtkairtyU0wyvllzmSUkBP5X9Hyx2Rj+/RBRz/dUmucc2TNKVSHQykiwAw9bB/AzdT+874nVGaO+9bqw+qORYhACYoki3KcR5qY4PJJK/FViTZu7MbwCbDwsQ94+PscIjxcbpxaTP5mS8yEF7DFpAoDD99LY9U+a1CWQMLNKDXbXdK9OvulSJpgbF6OsEE/z7ELnKFA11+KMCx3SBBIFKAGJIj9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/1Qq1spg0xYXbiWLWLyXgmZgu3s+/KHWYjOrer1ha8g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZoSG4Pw4+U/dCDGxU53Cb9tltiEXFSPn6XkxrF0tY/EazD6Br98v3vnEZ/DicGpMbLZgVeXBWzKwNGIJllJ3lJKO/HXvmgpUEVttPuF4FB2GyUhQMS6xsjYpu3ATfZz7BMjyLGFEyRsf6gMqorx9zQSfl8KpoHtbxxnBm1tD7xcwf6qY3+Cc0Lbb70zqf17G7r4iJSR12hnUSYkY58EZR3X7wrKCiw3q+mZhNsq1ZWvuUDRKVcl9xK6Kpy93aIlr7yCyQRHRemp4p+fOLZxUzfzuAYTrEhIz1wsnkXYnqyEmnlNPVKcKG/t8hgucYxC6B31xFZKoOjSJWgLqGSQuHGlDW/TCD5X20Z3guxBi0PecCVLGoPKZQphAhJFxwq59stbOF9brDX17vB06Our8N6Fr3Dzo5BG7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/2RodSprExAzwf66jeXeEV1rezd+gGLlgYjQb0/WH+M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ge1oH5i5WO8KS9jD410gpNGDCuJZfCu3ejgykKVfgBNbdZKrZ6PXruLoGu3i8ptK0S6f97BA0lU7kCliLLgf+5atWvKrN2xdHnPMi9DLt/Tl4q62/+6Xqh08lRfWuAEQNyEiEHuTuyrHgvqySY8lbOXRhtlUpiYi75Yt3N9FE7u6BGsayWZ2t3U+uwmwuArOU1rUTCbpWAiUSvA4dVFQIOwYNTUpXWHJggm4tZuNCtia6ctMSMQIzs+GQ421OM2S6p06jfJNahHHp8kqyX8gDhJh+g30ci3ZMOrntdz5C+HDsTS6dgRn4ObBPIRSgbqN6arZ3PrzkUNzaY5Fu7PcHZ5tE1c3dJFYcL8S155LYD5iLyj5J3+v1Qn5z+3G4n4LoRaBkP9PHpU/rk+yM9T5YS5XHLy4dFeD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/3uZID91ZKnAhXyywmfZWDQp3vJ+mTyJzaoRKVZAWXM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YWEfgpUBD8btF4/x4hJQ0E1xtK0nP8NImEL2AObAQ68h0bcuYFCVdSsATs4IVaknfF3hOPEG1dyTzTv5D0AWH2JbiSOhluPHLkG+HCVxX7h3ubTR/UgBTRL+XqCJ+umBVyQhaCehgyVFodO1PdEAwgY06d6qsbgvrKIwi+XDA102VBbqGl5R4PvgN5uagpppGULcp8e56JhsQaXQiPhUzwpJ9GwNd1GHuC/w4muZ5buHzTYy+QQPPyrpSuQj1u21L/QYMKH4V7HlkF0d9LqV20WulBc3TcVks3/c4FJgP6tebDx35dwjVelu5DIBE+AXBL0mqSFJ8opLFZjWM+jYnkfSmlR49D2S2swedaZoh2Oq7bYEdWZuogueIOQlOn+8KVO7dGS6vGkH7im9DSZEtWqC2DKOb1UH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/42i233t0tkZF9L3/+cWaZ5CH/bBm+5UEhtajLLEBkk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VnD8uFhWInWywPKIW3Ui6oZ8atZJP4nPaMB5gvPzoHSI6Ho0Ix9Xj7KyKEnoeHZqz4SrIcDrXP9K9Tdn1e3pq+1MBxOg08zuMA1pj1cgywp/J9sWZzJwrpSNUXOButNoS1WbYx/SCmK+BGfWH0c2Y1uwzAIB14NQfR5LIc77rMtwEe6dC++lpuVXSl8KkFOQmIVG+W4RytEt9gqY5CWpj5t/1j2zoofzVHHmvNmiFO68QPjOjdmdUp0cdwdGtRK7WaZqx6H49oS5/JTsH8F73qwVrSMuj33+LeGQMaJ5GRI5PdHcmmIJ2EUCoYDu/yhrXITaLsK152Z3fn74MXBRkUiNprHLw9abqZ99smJaRnyPb+YCGgrAIRsBnQUZyb0eCLdRvBirJdGFy4mTw8Z1v1aANtd7G04T", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/4L68FQuQ0eyuygnNAeKiAJ+432H0NyaLsG5V5EAUnY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i6tmUQDqVEQYZ2ZQ0hCmD1dvo3sKaJrhN2gfIFeR47Sdu8LSPNtZ5SYg233IhXjAc4SYjP1IzyzijsDowbsJnUnW/OOxsBoQFYPkDfgq8kF4nxD6Mqrut2cgBFt7jFfjLzhY1cS3p9v+FPMVytMy+cbaTjrOkPFBa5M0kCSnkcC/GxVDsxiHzAo8lBzf59WUSCa+lSf10go9WFI7MuI0rDa5tLs3Np34hi0sR2wNmjMB3xZXwwirrzewY4oeAhhBYVfu0s/qxLioTbkx3nhCbjAfF8oz0aUooGsL1v28QdSagE4rcMIN6sbVN1YZ6KiAyhxm3+j2RC1IX1W0F6/u94N57WLym11DC5acADqwnkq/OoTQoBOkaKVNEr5E2WufTsPDJUUQX53G/bV6PAALdPgc6o+FSg2e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/4LE9trkWp8dCkQG3jLCDNX+XW7XjkVdAL/f6yW0+Is", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TZ4ls1sUYTPE6wvuw/o4GNmNRPM0Z3klwQTJ9mOpjvBxAI0hEMp2rw21MH1GA5fDOGg7L90KXtsB45zkh1pF3l7rlxKzlL2xto1yhRZ+66+jyyj6aO/HtDrrXZNdAD68nl8hH044+L6um6oLixRhjBa3MpjhM+Q11npuueXmKqlNOxjNz8j56IXpfxjUlMmp+Vm1I7e6oOKjwBLLp4eFMc8KmPXQUhAVyKB1urBr3u1SQjxDh//8Sb09tHO1PIiyU5vmQbl7wzfpHZphJSKxrTRsFbzm61cxj/thQvnE8eMmsgUeShWP03bVQcG0Q80AQ4lMrHwzgZmAz0KlZAP5Zl+sRtooPYm3vsht46tE2cLIaO5uh/WyPNgakF5O9L1kJce94EwmKxeTZFL4K51oPgcUd4lPB/me", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/515LHhht+D466VaBgsX15a7DJ7Hr+Slhl/NqyaKtS4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2OoT0vyMjWR8Gg+4OJ49kyY0OGz15I/tfuZamFBaW3KhADBzu1eennMyVVz8wY5wkN7K3R49iUndgyGrF5nSAKBJ73MpKsAUmk41l1N7f5bxdMgObFPplIgcFTGYilx/zx22xyj5Mfu8lcWY/hotuK55+dgKj/pt3v0EXXRjSR+zy/JNYyJ5CiYfsOt+ReO5ZmXxNaKQfJuGNsMyXWtAJ54oMEHqax4zS/Is+adBzkUMCzYSn968Yaata4As/ozhZQCFw6ncskXTUKvozcYUgLixl6sKBPt/RmhwD9xLAI/a99R/Sd3NWpBXiUXeeDiXVmgbkmi4z6h8fTTBu/c9iYA5KsRkKoDyIrq1UA/Z6+jX3AukVGeyKmhXOtMPoFCc/FCN9W/R8HgkNBXxIHTPorkfqYpoZCqe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/5NK71s/gwUqdfnhgY+oiFErTHRftzxdtRhQsGOw49g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M/5Jbap+PX6png6GaVnJEvdxNNuYNG55lj3ZMZG4W4QcnQB1/8mSPp8Fqjfp0yuh3R8+S62s0SAyVB4y9CV/BMdlPn3J8IE6NMRxPrR28wgAARXn7QclXEzBdpvDNzz263ku0YAmy56NaN/Q3dOFs3P+GfWF/W9xxf8uLkaasdKDxSfHqjONaoOL9/vgmjW6qSnUMj5sb6FLc8KB0xeG80fThkp4vvFf7AWzAntRb2U7F9pwoC9yzrcZSiBBX+QhCaHL94xR4XDR6g0N7iO+sR5mZzFF9weSghsoP8cjNvMmE2UDR3rBv1WpD+nxvCX5Ffy0BjaHizxbjS3g5PLnVYmofJkyZLFwh+/DDvwWiBD0fMunEFg1bCYTy9BetpnD22YeTtHIAWRV4HTRaICGXehUpFx471mQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/5OwRehhaz/v8yVe6fXoowkVde7oIdEC+QOvP5jwM5k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+tHOOqolxNOTfpXweRZtA3xIhSFEmSW7QOtRR3eb7xL0ZrrSWdP7pbCIu2hT4CfVX9b3pKTtxmdoXSHcENmERlOtLbYAw+E68SgBWYAsNoPkWsuqiZaav73DeTI7xqXNECFijVBjvOujAui9kvnvF5bqKvJx0mUGLLBgjgD32uXkR38q3mFmM0dLc9cesuC75NN6Kvtz1qZGmJHBkMLJzNW0w/THVGU0MSIEDfk2ykMzS5NhrgPAQYGLaPYuQJmDXKva76MOQs3ft3y3KtszkIEIVTYsSR/xevReEcIhHXybP7wIevLr9jud0KCnOKMs2Abp8vToDjhvUhwHcn0samzUK6ABw6TLaq/yBlpi8mzYA75R7JEZzAKbNdCoJcC2SNV7HvSB3pA62WIJ64xROqZokCmyQDO6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/8xyZYLZ9Kmsmo9I8qMu7G00dib9tPxGGgrzzC4LtVw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kgMpvboW1TPEy+I8OyadgyWmm049E31oCrA5Kqub3SryyBwg0LavOtSrkVz0d/+XaCJmaqzKQHEgO8IBEbS67y7X2AjpIlKHBePQcgD49/vsKGRNZrvl0Y7e2KHHiaiMEZ2QetTazUu3c8YednB1xdUiPleLMWDA/TGDrWxKWKCMZePtPbGjvFnKmIgSalbspJocwXxPCKHjw7QuKtgsJxMeB01BflJQNdGqTBkSzWh75CZX9xeSMXNYiMEquj7LOHILpkIr9iRiIitjK6R8jw7xEhtW0DplkI24GgN0bbiKm35qsaUW3TrdBeCMS4CEK4pKjFCrVskrezq7i+J2onzWV4AbhVR/fe9xGhuyr5ps4by092IwvFbx/Dmpt7dcTEHdgfIf16EYogAFcn82xWiRmI0/+848", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/9aBHo/fjBiiBldZDF8lC7ym8ktR822xgsiGage0ogU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wHYiH7jANBYdrN+g0q+EEuFAYFojSEsM6YPFkRBR5u9L9Khd7Q8XJdCuwBm+flPAu6U6yxvWT5bPWpDVmmZUAtPtPaF4Zk2BsxI05CYen3mkb5mECib0FMETIfy9wwfhtUroiXJ9XHmyZHXsBQ1UCGilbf57j0Tc0G/xIS3jwX1BJo7djmqA+uvBk167QshdM/2gYrmBMnFDwOhjOfCJJdncAbsvDhlQ1X6ua3/emlC0r8je5GXzKWB5o97bYMnzH3K+8CT5PSfo/4wEOh16tBCV61cM3L/B4YZ3H7mC8BUOXkJqKzLedB1vPuwDTLqGdoxMtAKTHad6S0wuZ5O7J5Pvq1Ts73qd0M5Jfgnu6cGCHxen7ScM5WFqXxNnM7LSci2trXbkk1+j1+686AZ+dXn0qrahvBv/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/A91X6YzpTa9mjRyH5IVA31l9KMgzZ8ii8uXsFMLRaU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Vb3J76RKdOD+E88UknJ48x4AQkbiNZb3Ao95SKU6Bu3x8C5ExYi6TCx8QFLd7Eygg6/BnlOwiA4RES3tjUFA2n05dZoOKqxTFcmf1Ev2MZ6T76/TJdmjDJqyxTmtvgWlA0A3oFqbW0fRFbyXnMjmVtfhAsFb32JgJjvMEPkRQ7YlduZTu/45MXBVrTxheIgAkpy29Z0OKYw/wBjJMXgqXnrkMQnAuUetaqjGe0EgfkbtE6DN7bjGOF/IgDDHftulBwc3DOjB0Wb5MsmGaWG42eO/7mGKmlkz5dMi/WjEuSZP9Rc1BSSrSrqVdjzx4bZZVHz/OSwi+vmk4k7l4je6TNu12xVkY4DipDsG7EJGbuUKJfBC0rSbW5/fgB6or7X2V9/RdwO2IRZOO80R9EOP8aaygdbyNb+i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/AhTl85+31foBICajBR0rmWXSZYkl623FQPNXym2m44", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TdoF0SVbVC0V5Z1+THBkBLyZflhgdXw9mgT7+cpWTZS2Yd3S1v1sy9/5Oistqd9PrUq513E/nzTh+hY/kk+YFCCly3gD2CS8fN2BfWUPqmJNWoLiUGvcU1JyjSRH92lHZD02LgoagcD0g+150b2hTrTq8Xhy4sbQEyhzu0lR9XWPgq9d6UIya9SUkMEhDFEhdsuk0q598A0mhquYV2xBX2VEV7xhwatT+nKdD6gLXXjsFq1p2p44mPHEQDgfHxce3mB6RV/OHl5Os73Dp5SyQecl33nVkwi+jW13kVdXV0xg5hd8RQBjORUn+iPjgI4xC/uHehE6q9a756ScunlsDCVAii0yaKSHe5K/VjpsWuqlAQZJFrvhkoIZykc4iR+D2Natm2irHlYgqIEhYoFH5IqKD7fZ8LVX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/CDLRHUOVI00mH05OTNjAYqWuoawb3SGMVw12+LWtvQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OWHeHMRano0MU8KJZW1jC9vb+UH9k0gvSq6jhGn6l9S2eolFFcxMEOTD3Rwu/Lk3PI9pPilAizModfz4OzuE5Iclvo2pN2w+j25LQZ6B2A9ZekBHMzrFR4tfa7Q56Z95QoDJVYaRRUthNOrN7I8ns8dR8MgPykdTsCgXZTZbs0hhqwqp4tiaV2oOgcO29BVFdyB8+4rjX+4XZj2Zt+se7GzKbnY9A+WBgoJpJKc3gORDdI7T6DP2sFm4NQ0tF6TSXAy7k7LQY3J1UGXRjNQsb2vRxB+TtO8AaYIoBRrUBMttSKUV70OBcqZ/Yalaxn49ol7s1vkHVpySe4DsWFtyeL+/CQsHBXTb1mqqVYjAYvo7OiljkXp96e7lDKzMzkACaLjBlKdyqru25+VLLc0POnQzNajgvSZ4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/CMxTRtXPNQoBLD/vaBauNwonLYNS2/lSGyY2oxfCzM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mdgnxpN/t9MljgeM6qbUdScbGVtjRShYN/J3f4wXfiMG3vHdaSYN7OvufKSQqQ1djfqw//Nw126NZ5tRh71R3A/UaP/4dtpP3rqdzcLSvqKmqbKI5l8YIgsoWAdQ105Yk1WYjvgmROEXoolIayYBJxwcAMVZ8OMf/FrCP/awfd4jWpI4M0gsgyaYWX8toWOckQn0SLKEBAGcKpFpounpAfV63umFNrJ1H1DwGfe1mTS2hDafw42a4B4q8jLhshPgOe4xihZ2TsjY22T1DpdxVu/SAlFpoQ1Awsoq+8juDb/L+Z5sjNAwD8WmB+lLv7p5StOVNif6y9owneEaXuJT/Vwca7LfDEvJ3iD+oEe3bHRYvG/LcSDymD73VTWt4lea98lKZjFg1pidSeHKlcd1tj6z85m7G3PS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/DD4NXpCWr02pjVZAjNDjGz9P+Dcl2YTteey/eTyWuU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LEkhQeoxXcKr82YabxmhEGe5NXyFGPTLAMYCX9893jnEghzMzNc+SViy2XDHHA1bIk3S3HZ4Qto+AXoBJLGPHGseSKyZF/85BBLXU2t9X0VpJNyzlrwtsngZH6WFqp20ml1zPenOWaCMg+IViFd9R5NazmknNipiSXSp71KFQU308gcS6ilDEM1uGHZcDAmLec20aCMBcSg0/a3h8w/v2I1TPfznM0vSyoReOaTfC7dRteQAiiKLiCExKOf3qy9g5yxFmFbXMwRdT+QodIB2I9i8Vm+19r9chqy4MYqH9bPMTEURbBuFFMK+DSrmyrKgiR0Df8MLZ2NUyd0Sgc8zt8oTv3MXvhAgiTg5ZGBVN+DloHq4lJhuWlZxZziW4CwY3zQGn5wS17++Rt0Wb7eJdZwsCyXVatZY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/E1IKVKDyuGffiDHd0ym9FAhfhHUlnhuWTTeMXmyha0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Wiazx/N4irxpC/MVZHXF5Ao+9/ga8enI6TAMOxpjb+QOZCf9gA8lyrYa/fA06Ws+HlTXGw/2AYiU+i3FZe+dLcL2hWKF0554ng2EAXvP4EgAJ25u8RsBg+7Oi41tYHcnj4Wkvo1o/+VGVeSoE8iWVO4HJSsNei8zB6+Cc2uiIN6OjudC1w+8CNtwEni6hebOCH+A2EEn8jjkkwWEUhDF1CWiiFHQ5BsKRboGs+YHc/SWK8vMECr2vgF1wbKBMgdVbfd9Tq+gfxqmhFWSBPVxryiHnR7/o4fDhUceNqicw3zDZJGBFOulkokWcGIiH9PNnre2qMxS8b6wRv6NTL3Qlk2nMv+JNnZdsnxZrhG3Ww0o6wx8HLdAo6G470p2cLU9cTyFKA3sZ+AWcs5EKVdQu1la1FVxcw/r", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/EkV12BM4wUwfXthr/kdJr02bFbsen3CbC+3nErqbnc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LI/Gg8toy13mcll6Vz3o6tzFBYvWDwVItbxbvRw2SRZwNzcftXtViAv1hllWAwSkQy7ZYgD0GSzUnUygSpIRtwT0qSo7hc3PgwWFX6OtX/x2TKUE5kDmy3q+s1syhZOGl7KLjoXLcjwyuT4Tuc1y8NdaDa1BRZ+BESlpqVhtjRBE7wB/oTrkF2ZhxPzD8JQfz1dcRjguooWkd/Mnz8JEq+v7WjyEk7qrDLMMHY88UadnCyj3lTnZeeMfFyHRP5ldvmjVJM3eI50M8gJ8ZgLZRJ+KqPrsRbWOhiLYi0HTbV5gIxnpDX+1/QQ5aoFLxyRk3D3XhV13lVyzXFm5jkhWzQSXJNNHZjSpAqT1L+jtja0iazZ+RsFuBIrWIcJ1P7HdTQ6W1PVmwMDhLni+thAeOe4QAq9p5TLZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/FrhzZLZsWvxQd7J/Q9EsKHCYJTaIdOOOu+yekuECDQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "79ij+F+7SXhDJfrillHKrleVdJIL6/0PRw/fvz8zLzG4o9z1RffHS7Ybr97DJxEMQeCZYPMm9dIDSycfewICHNMoHaHNA/EegEiMIb2QaO5/54rk/0FpRuB9ybi7UjTe3rhYzdMf7RAt9SCSTv22sImWji0liSsoG9Gxt8M/lsDd7QW/ZxflY+D4hbzG6s9hWY7EvukqF1kGybdM7rxVAI71cpD3G4IBlWsrTy9bY6is1vOualzDBlJ8oAkXLJ5nk42Ar2v5KSo8Gp+ArdmWRG5Kyqp2DRZmwpVsQeB8nJC+yRDtgj7CTYdWSUbuBJVMVU5MV3dnYCdkeysr6IioFzO5fRYr1I49r4asQ2IIrFNdEZn0xdYLL7oBBdRAvAb7U0iAU1VrZTRtsZIWgt40y144UkUVkBLw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/G73x4Yo2KfufUeiAfzOCzzTNsUIbSqjH6lSb5uoxR0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AXg+sHL3abTfuOC0+ONtUKGun+n3AxxS4PTCFUMZQS6odJ038KzoHH/76+5m7ZlV9usY9t/9EG6lWPOVwXhLVWxH7LnQxHjq5+r/uby6ZqiOUNC7KLxDEmOzcfiFxMGSEiNkPduhtexKytno+rtJ3CUphCT9jStIITt0H0R/LuXZOyk7LOYu0yMPSUYlGUEpVBQWQFTUMB/cZ3pH1Yq5C0AptwQrObcIQ6sk7PyVNFia7MXjr4JPJusMtXHWWzkPZSSXFrGgQ1tiVD8vd8NU1hGuvEvOt9RTrrQzaKWIVEkA9e43XORvN/eUYIlAmFxviE3TYtXG11ZZsSennMVDHP2Bh7zJFbrEZIG0rN/5AjUsTTl7mqL6ZeMx/lBRraDiQFryHoxEbuM5VFw/PB6PO+p5bTHJ/hdN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/GYYLURZ/Oir9iN+OD8SETtSTc4mbOzveichftAHahg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Eh7puluA6CP0LquZ4TAcRP/S4f9rhwa0DuxmMSuhqr9+2WvPLD4eEn7qHYNx2P0/B4ChJelre6+bu2WifXOIyznHC+fba/MubyJavFnVlZmTA0t0FA08ZxXIAm7zY26Z7OQ4AVbxeJ8nXdJEpj8bg4DCnCmwlhIZwEOA49T56G+I80hyk8iAGJfEjGAQ0d88Xrhrzy5mvD1HCLvCyjAN1LL5IinE5Bsf27ybjDGrC+f1KTRZSIztDQqDYt2fAskDCZXegx0RIgXpnNOSRkl1YRxjeDzFcetLTrD2KaFR3TB6wFY+GRwYAbm5MMT2h6cXDHuYTwaDPUqGvsU2XC5ueRvRLqf4Y2FxmgbwlMzlX6vY64t0Oi9QGP7aA4X2Xq4sHNS5RU70J0kzYjsOaRf7Iirnz6mmZpXX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/HTl42JA5BZxC/etyCi8p0/Y7F0dZkErSXjcx9xZOLE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tYiwsTB68jCgd3khvvmkp3NRB/CB4V2BZWo5vwzkGlmlbAf7YWMLUCQzKNE/vFOsjjv6AB6agCvTPhvxIWQQQSXTlf6YMQ6oDuJX3+9P3fMkFaG2iR+b7duhlbxnXk4ozw36g/davWJtkqJe7JTE9kOiOC6tqug1NkOHjZZbc2R5nKf08J6oxzo7avM4WqXV5RIaDzOHLhyZq8ZGyxGByVQfwBw8YvMN8D5HoGs0BJJmiPM3NxVZUEahw59hgkVcjSnGI3G97/fvLgOrGKso3O1Pa4GOiYk5an28lhinyW8Fdjbb17t2uSPUIH90gxtvoe+ilinwltAl4Noet+DqAxz+GUF077mFaGGgsA2RbiWeX6oqIILiZjc4gHzQUyRTF9h0lHC9KoNQDmmWznElc6360H2/DonY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/MOSIg0El0+qLiT2c0pIGBHcgIZNPk/orZvE1ca5dus", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AvCcQcn7aEcp0/lhiwXn361S3G4mvPej425dFK53Atv7Y3UzIBsD7hIPfrcwxmAJLJZX407lzgRYRvgnEJGGColITwE4IdkdfvXC9J4T3wkg70f8WkAK8etqo1u8P7oW4zBMAVhbh+wL4D7mqnJbivGuQP9BSZw014WBiUUgC7EhUOIVjFkN5f3IXp/5RllgI/KQILaqOgs5f4bMq4irR4958sQkZmNIkeA8rUD8olS9N8Sip461jp++cFhcBptJ5+rv8rEuSfFJnp9c4SsmEPf2D4yAL2GD2SCJZENHRcFbjCq6aIJ02cnUe9gXjf/jAVhut2GsSfRvCPthj9gWGi9lm+YojvG6Gac+mlDDvgS8VmVY/LoVBfw1OoE62rx6+4kWjMTtPKBzEyn2jAqnb0t2siwYqoGt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/MmT2UQPXDm5TYmmAexJ/n3z80e6iIxr1S9zSrh4+Fo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "J6LInmIiZJd8SQjqmM14GsKOIj0jbJBe1bz/xIy6P3d3o6u0L0wzqSC21pxte78UA5ZQ2ZAtw5OQ3RvwmhhihYI20ufBqrT0QL5Ur5ssEGxuAw/bq6JJdSeGTe/d76k2iSYYUJqV4A04wqW+4i/h4yqU3sex8pRrTwgEX/hPKZN/QoM0LqVa8SV0Gi7K9CUK2jsklYML8XCzqf8Xb2nB9Y42inMNSTRKJ+GRtqcDnZOwzaCZq0M9QPXRlYY/AEKrcE6Xo7spxXQ9BT+7glHN55nb+6ng8Ycn4RkEPtTPwO3B57kZOho6lCvM5QbCYzIZZ5qbOzKj1D6+eTkDTuDdmGpVVYt83NtvaHPE5APsKznGPmlNbdVrryL+9pM6ZxtbWOjSysyLkMgNQ9OInvKot+vOQgIZbg8r", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/NAnxbSbKVTpvPykQ/q4sXRw9oPCwrWzwzggQTyE5zY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iXBTHWkVsxvkGT3YPkk1KGUH4GS9292z6AMYWTzWzxFEw7VoK8hbvhIqrH4AP1jJFfKEF/z+83D/woQofLvSJVdF/9R20kBvFHipySgI3cX88/G21Ye7WRbE/r3rxSufXIFpWeea9L6TajCqNV41mYnqflB9IAiukkCxVN5Tr8Jw6mRX9dBjZ2nN9rUI2OuCO3bJ5YiOwAU8X8O+uXuty5bJsSRk/UGPLmB0zLFErkZdWaZLi57BIr1cSvIpfZRYLrzUFaNny9W5TQQzwMBlXzYbVh4xtoND9pMhtJU34qVGi4SmhGFKLMNH9Q98+bcsDNp4Z9LfQ4a1pWgKZLUdi7pnIyDlL7CgSFTJu23HYUoRzRPXiH285NQUXOb9XWFUpoDzjp8E5okCFPs59uA7YxrA86fHflQj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/Nj5aDWFPodxPyJfGrHg6XNTjOvX3xT49uqTXpWfwkg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YuHsDo9dS3kR2dqtCnPK8kZ9M8m0qeIqNhqFOzDwM1ueytp0lsmcPG4cJnfjtYgf+hysSppTq0c82NnQKWFZhtM30g/Igq2PAXY1fYhS4RipCaCbFZWxJVO947grSfEMen3pTJLA/CSh1/I6eddGncvi5Z4ingeOed8yuMpeJOS/bsWxpBigXqgWS+PI+04sWAdybILnN7DAR38KFDWZ9pXRPmD82GQYyAlG/sgf/hfFrABzdLkmNtLxkuruxeGSCoLDzgiV/AgZL8kzhUG3vYh3we8HtIFW2QF+80k1kHLywFIE6nlmnpPYpsnePwFtTK2RtyVfsloZvxydaZq0FUBgjvRytBvLlW6v6EDdEe6ewE6YG4VuHeXUzgAW+6hDQ/uuhzn/W4XRIXO79ZGUyihOIzYcPHY7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/OJnPKWCYiTrB8wncuURZ4ooGswonuv8OSJ6qteazBc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mJwOTGo5DudJ8kZ3rRjq8mr1YYi84XREfnTgq4GpeAUaaFmLgm4s5wptI51U/x7WHd05dgQxw27gcpI0ZIZVirN7Up8cCZk/eGFe23Jk1B0WlQD77YbeHDZc1hkPrRRJAnee2Ram32UmNATYNSUjFVerZnIzzDzqAiqaYAKclXJnuEDDM0IEsWe1Hpy4rDu34KgLhbMcqOADNqjUIL0KNX8L5jzpy5iZGXY3T2uft/QoJzL2rDUNSB9nqz18XvsPpyb4R8+hRwRZkPHX7b3n3RKzO2sLvhmCQ4ayF2ZEcGLmJX9oRJQ29d3iAyc299cnMuMQs0XYcpID0bOcF4Z4u5o4Me2FqG3xOSisfJwcX2ozEN/1J9qm/nOe3EkSDN6rKFcy0wEYkPM4kYYBHQdOM0eIMcAv1555", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/Q08yfq4Fa0a8gN8zGwmn18Nk6kNijpdvrMyHHAkAe4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qJc9PLaf6TTc0inbntJAvfE9v8Dvmvrtiz57be6BUjDE6LJcs6+OZzBag8fBy4YYsel7yKAQV5AwaomPl9paihiQFoLZUZMIWi/34CjMVfKyVrHVlQnfK1Vr5cnXpSIAzkzA+/6wSD28XcIGJ+3fPwYvBEaO3RBm3UsxyV6OqAS4173niwv/exL/jDG6pgChTlINaKUmILrynJve0C0dAsakswJ5Tm0Mzg2OZCrL+T3hklrVH9IxUVGg5clwxtL0EDXZ/UrmoGHXZW+HId/rxKKrtVrrCY1cZ3hBte3ge2zkExrGek7RB8b59+afiu4202nt1FmTzs9tTwFT7OOAGm1tsmvDCjQg9BaJQyqk3qls3pxBKKqIOCfguElw3Ogu3abh9haiLV5Vr0PRS5oE0Dflh1+WJAWT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/Q1RC76q84N1PRyTaGOke/lYhA+9NDEmQXA0hJC6ugk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MOXFSa+qTxgT7iEVsS3SZ5qJjcP7LhzDS6zEQn3KgpZXgoFTlO4vxOv45tiTIY5Uf5MejgKWSgTy2C8kUPMaRrHgQxwwRE1ToTvmcuhFe/NIAYXXkas2cH/HhUjL9fN+C1InMwpbC9XWV2rK4PLOanC09ESRm6DSGG7RxNl9SHUerKtBGARbppG7Q5QRZSdmH6p7WgHie5RPT8ryz+3qnnTHnWSysK5drIJr3M05eFvez+gfVamxbXryV3J3s1cDVnacFvhi31RsWaa7Vvw03bkLbFBIAKSjDCppJTnpuczlwZiJLJM7ETJSqyRzp2XEoNKaCxqAKMUFThFGKuhB86brTYMo9uUzySA+y9DBpYsi1XkHDk3kD0iBqk7bYMT9kHU7YQlS66uHEDIwc6vj1e3JT7ZUSr6x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/QZ3aNFsWEWvNujSYFxKDhssDNmlZ4FFFMCvD4hi/go", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mNrITVUgSg31bMevhKTXfETSYnxeJnW528B9JsZzi6wXacE+6II9oo8D4uyEoSsMyJ6FIa+NZfbTEOXUA55GOsi867ahTdYYY/aE2oVkUGJvk6Bmu5dHNIoTLI/8Hs4T16YbYtSTlDlyIYSGVmBIz5G/ou4mVtu7GUWz2W4kp8xpIfj7tlDuyVdw3FQlWCey3kXHJLZWXgC5EkO+aY4q3cDab4VRXUxOU9uUyNFOPrXMj0TqRBZE0pNF9rbqiLXiGx4vzBj0+K15v8/2GJhkNoEdyiK5fkvg/+lxAmtvZNMVTBJWxAVAD2Ig0ZnROxM8bo3ZyLn4Y7qVIQfHc9ErA4Vf/yezFpBRt6j49uflzT/WxEkqjzZ97BlyJde7SrlpT4QapihYxDJ0kTer3CxUB9TUsts/Mr9X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/RvzJdd7xAFBxFl/zzH/C60GRKAXJdvXEOwCyRmGx/0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M3NMRdDNUsf3J+Ugk/IdzjQ3l1iwFdnkTwYpmOfLIUtcp5vDCgsb4cACDTxXWzydzED7pnhhjMwzENf5VFenxgjAoSV3HJHgjHG0LsLdjnKt4Q3W8qJjdE+9u/KJyF2iVTqs3pftonTNZ9AEVoKGA6/mkLhEAgnBh6ipupiyASh1eYyo5W/Q7rX9ZKEDRKW9Dg6L/Igui/I4+rtbum5P2yJs9Cj8KSvLF4nmDIRH6WR5sYCt//ePp3DP+oJuV0jO1lXIS7e0S17V7W8HszijKJJspmb14xD6syet79bbwSm2zTJtmFo83k6HFkuZcWzPjRhZbKGx2FE6W3Zy/+k48colNMb14CDwAerQ+aOA1kDfYV2Rss9USHzx1dqjgSx42NO1SGct8VujF+2tlrNBSEqFU+Bgp+ql", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/SUzKtayKpwWDVJOnPR46YDB2SHAeAgU5leCYQUqcoU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qh3997bylcaCeTLz16o0iekilH3rV2rdKpNu0vIQB8J/B6bU0rp7g8nZszovKebRUDqqaUzYeYRblmwV/167RxqSIF5sEBx9tRnfNG1THkXi8+n2i44OoGUzmnM1W9argbjoHbNJZyvg7UdM8jPEoJIxC46IfpFt36qZ7G4zbK2Xu3MqdJSgfvM5lxREh+2FPtF/6FvM+2ejeHbd3ZxGqNnqj7jrGv5ELK/p7+ztswTJ1yedcV9mENKqkn/3OsOftMmJsF4cGrSGw/x/kLv19k73SoLp8rBiNYIn6ksgJGdfbiFw9ipjDtiHoN5rL1+cadWix8LwQ4tFw5KiJR58g57KCcIuR1kNkmLG8xNkroZi/1xvmgsXAxvKMBbumLV6zlJrlZtMJ/e9gCG+Dz66ZTWTNJd2FyqW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/WUZBQQ5SwUN+EPDRPTg1ajS2TzmxnWEccvluP+Tdcs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rF3nVyaZieTumjNiZSPkryoChOh+ibB/2vOxhsIC41/0EHgfcx7ujGQ0/rlIMoH9JQ/Yz/eXohP1A+LCeW7FP27Qstdmaq4ojkgMjOx5eAB/0CDihZGc2ipLHGX7D+DIIGF5scEeevuehr8y9V3E2Iar763HXqK7zonA/vgU4UhLF5kmPiWBRGAQCb6MJPbrNQyAU4JE2wW5oMLoLEIyLBo2s0Sh+2nkQSiw3QFGm05dBeno+pgURnq5UHMIupGSMLwgPgtPuKnb6jpwaUl3a3Kd6C887T8CNyx6lubxbJtG0I9d37hJ6pTfWlAOo5R9co4CKWVoMeImYCOaH1FTBpp4HpLNWEuyrJfubmdDss5qUoQfOi3kLqpCKX2maZIGFHoH5hbwo+IWPIXxF8lYLd3RsMJ3a/at", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/WygYNyFDDkYDbb+w9UlSpM8wKd2FM0z5yEYNonUPJI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TjXD7cMCQR3FKBNOwd9ZhT+JWp/5GED/2wNb1+JRyuR1GmA8wJSklpRGR8M7oyH6826hN2keo5RnxazRWdPHLCetfke4i2j7nTtAGAsjx+5sThtdzjW8nOOrq/zSG9lQiWNIVf490w9MsdQZeqqTkkWItaYnM4e18QO0CUxhLjVTEJDDRZgyRbi57Fkkl9WSdYN2ASbTgFQReVjVpMMbxUI/muBFgCF+xhcper8zfZO4rnxJWu9wHTOZ7QRjGQNI2jNv0Kq46oUGeOhcTas8ZWya8wLO5REEoPvXEGWwTD2u3vCk32/UzsVgNhpuz4xKp8pvmyb7kes5lkvyPCfE3RHOwe/67AfRp2E7pyAxwahuDMbLq86j4kvaO7C6fk2Nn6XxNvL1i4jdNCcYbjzA73pAF7SV9UCi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/Y/caRbTtYbeNMMDbgvc8EwyB2aZmf9jx+yb9JTnJtQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0tB6CYdfaXDTP88wbdl3ajJAM1t6isgcYXBaneFP6W0zXAo47QJje1+XB/UQADCWLX7V4llmy0mUYbCUsZrXpGVrliZcbT03wi5R/flagDr2kjYrs1lKj2kyrgfJrAyQphbmggXDcHUILGfuknhpwrsHoS+IwO2rtwrr9xjzRuuOHOHv4Gay4ygOeurVZLLaEJVCZBb61TGC8sWkfQqYumfg+MIQB19nNcatp+tfdEimnqQe7/6fWlvPrCXZrswde4GxX5/GMAxBqJlTyU0/mxGjOOecKIAnoqHPbwRcYkFzVpY4XbFydhliAHFenkb/GOIrpF+BCTZNBr7hgJsJ73xcTYQIfjm8gHsltw3qrvlCPPvEOY1Ih9ztberdfotD1r68g3mLQvf2Y6dwqOgQsmq6iB+jsTN+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/ZWDgEI4Afl8lfkVhmwpQ3sg2h2xhnx32gCaibw9a2U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OPRl2+2BlUh8oy2E/7w6sH/UEFMIxmtaLx6C/dk6YViukPuX8tnU2MD+0trtPSzYWebs6x8/pkkInDDhXn3YXbTjT25ycQCcrBdqX7vtyq/sKuHlTNgPw+MnYdV1h7AcEfDj9WXnsZvpV+xlQz8uoH0Ys7MMPfV0FBhqHRyfymOQlnEWXv1vdaO/vPDwvGR7TjBcOUAf1A6UZ81LZ9tfB3E0gNuHEdyDZNoHyjfk0t4eXIv4F5rKM/tl5+7gVDPgRRY/02xI4yw8t61aD7cfiFTMG6JhG51mNOIfLj9bSVYrZVqxn+wFt4Eg1JZzUyHMP513ybRHTOGPyLijb0U/FH1Bb88obGSQ02gthQQHGkchMpumXWkvz5xVyiwoDLZITwSq2Z/jKSfSFEjU1IRiXSydEa28Ruk9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/b2wpwMM2t5mXE4dj6A70AM1t8o5nWZ1KZWpcGXEhXA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "J3I7aOMCQgY1UT8nODBul/SFGUIjSPMqPj3PcK8bnHr+/4zcD4stcvFLpiT3YWjDZScNZLIDdGq1O4qSpCXF/Iw9FVWeph4teZE1HgYWuU2caX5Fbewv//ee44D1tlaLZrg9XLXggPoV2xFS/8H1MP8/K2xv/Az++kyhBA07zH+W0w4PMu13oBhZOUwIdRW7oK8zwIdh862cUOjtUx/eL+n09Np7JkQ8uGuWKHSy+B2CpTmt3HHyVf06m0IHMJ6C3P94YNsLjMz8ExLuss0bHMvZoTzy2ANEF1DcZXFiKfogAKO08KZSK+3VqhR0xPFoF5IuZRQZONW6AXRaGnUD4ufbR2D3dp1QlYTS3RpzYqUiIgacHZxh+z5kelL/YxMC4EzChhdTZ4D3UHQ5rq2OgUDycOMmNlpJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/bO1OKL8fGUkZDEeFW0+ILQQlJbeYaGncpuRtm51n9c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Dl8vwWQ+3FmE9t1mJ5+w8BJxbMm209dyzBNa+AKo7PHNy+7lvBWFtmo8udLAihvuN2m7tM3vd6TFRaYwGgNzgZZvedhvO97fwF2vz59+qMfHyMTsc/fRS1vvbfUmbi0Xt2wN+ukoAf9WCahReBmsZfZPXAe9Cw3uoSPO2Jq1Az2lF5e1EGUp8Ec4hLTcpZS2uKt6h8X+6x/WBFaUlxTmOfSjR1zTZe+wD/dI7qQ2VcNaY8q68fqi3/XsQjZYLJ3fV2U7hG6Bwool0/ONebBIyFucc//UDZri+Vnc4bwkY3x2dPDsspn7FfK+CFt3Qek8/CAPNtM3hHIvjgOQ5fusNoxBOWhb/sGeDG5R1vXI2c9p6ay5PEUU6F/55G2uF/JmxZeyLw2JKt52N9nki3ghF9yaMDuaKF5P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/cxcvE1Uai5gKwbkcFwm/O1U4Y2A2LqJlde7GBU23eQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wrzs5TtRvP9s7yHwOzxb9/G429JvIPcQlknOc/GpwZPv1shE43nOO+mqwg+R6oNc8BMN25p1VTSvkLIKp/V9JgQzbi735MOpX5hwiHcTd28Yd/M5mBxxb+YG+b1RX4H4TJoWJtLig8A1QOfhxMPLun+jFw71IDCmUpxEimUjEyMG9Co3NhEA+HvKjORl9MtGC+c0SrKy7vjsYreI25w0Zp/hUF3OTPn76f5JSJAg1iCggTY+nGoF3g0UjPXQcyQs+4FgfIvwrk7Fx7wEpfuGE3gZSmFmhwtHMK2BPFIGRh73iEq14B1TRizKhDdukO6qLMT/bWq+EgzPnY/qJDS/5+dyUXA+f3R5BCqRwa14ZdXbi+lNs3xjSnItUeurj/CDC00YcIHvEMXv7wYQ0tCNele1yu69qhUN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/d2JjT4F08vnFcixBJgfyHmhZWF1183Tj3pjno8uWKM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0s6F9t/Ec3CMJcjz/kg20Sz4Qz4jrwOmWQVVs0ZB1WQ4HNv4p9R6vS4keGsqYCZ9f16Fb1TaTTHnlA6MZTnl/EoTYBQvEiJJsoPGhI0I62oLIc+CyQ0htY2xKbhsXCsYmiW+r367i94bTVbKzqwpER4t1iGvd/SwdI1ak6oMYqpH6Efzx+2UifZ0+O8wQDqRPiEWFwm0a+TO5bmb2fcBYMd4aj2fJtBuFmwOWLjcG/4r1+g7n1F9Yv1n4GhfOiAR2BZET4gQvsFw+281daDVYnAv+IzxwZot9I7ByyB9LXogqV2nkPRxtgpryXZzt5YdZkWlZgPrKPtXGiDbbx7IIe0xivvzQkFNlFfIUeUkMU5TjNXqNwv0u/9Ken9J+5Pc55UJTfA0P9+9EMMF0OfDg3B+gT9z39oV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/egTChLm09bJQQx1gHQ5CcOZKzhWh00bajxkCtENKPQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XX/G5SBVQkla+nn4X3wCwewUOWYWRVr8XekZ8AxwjbiVCER5Io6y2ZIAEBd9fLhl4vlGFF9RWUkd/rxQbNkECiw0M8vJM5uFEif2cvIAxTCELTQGrcnUNjDtYg2gHWtGQFXJbf0ntyPCNNwqZxx3ZtG/ktzg5w5qZHsjcqEWSKzVbIGNsehuxOwriKEBKREhzTBVAHA/iUoTplspdnMV5UnuUANR3DbHu/uzJzSWTuboJvaBV1n0NmwlFgUv1docxzqDFjibD9enXUTXnXrYXvvUwIR3kuW62GQFAuNSdiGZd+mMHEibIAloeHFSg/PoKpO0cQjNyMJ/uld3ZcWbHQ3IZvgzOWTzcekWtHdjpPdQm5X5bjVgPPOLGlVAVo0DgtndbdwzfbkvDTUXXlJviCdPp6ibqXAw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/gXIDJ3t5lw+jgKyLhwwh6ihzZjV1pGq45UiK6mdDPk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NhWsqhLRUcnsHjdoxfEGgQloTB5P+cr6ciFUOC5WQGIWvZ2x9c2m0nCjSuXY1zNazzXc3ayJGvEfqdcAh6N/tIuMujan9vqM0hxP0zqA2A5Z+OMfWEqdq9wWo+peKUi8ggfhCyG4wQ1pYtHfiyxpA1yKCGia13KJqvUJI1CRt1R+yeIhhFwFsFF+i/6TygYwMO9bR9hlpnyikeFxODdc4y8rcBWhxCqRlD4m/qy9l5gjsxDfbpgxLveD/wsC0uf5Ym19gKKCcJcsdPbZNfqwpVuDZ4V/lUFCYu0z3wD/AAzi5eSTfMmjqS2JuGO58n+3BVONoQG1PIKF4PpcAZlC4VOqICgXMPyWnvlDuxMSJtuqqCQV0QdqjxyFngdqyUHXP0cgsKDYbNLCSV0BMfLmhcynpD63f88V", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/hZTytdZJBraXBEUCNyH/Nh8+7Q17guSI1L7FkF6Xl0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Z+tgVSgp0YpBVs78x7yYXJiXPVsz8huZ7FQPjoslayCdxVl83ZQkAPY9lZB9UuLcKsPC8L7a4m7rz9jBHDCS+rW8c3q/Wl8JR2n0WXhygKGI5iqiUkV9CilfJOpF9f983cS+JpS2zUxb2s+RBT9zrfKdvMxOmAEYA1qNdP050kgRRhTWcxeK9IcXcL9gFEX3sMoEKm3yNJBOK14XJt5u1/2zLc+1N39/2G1sQ7tObBDedXSqHKx9Tgq6C+xa6cmFF9f9dFFLXhgiiOBCIqXOX850YpPrxGj5K6AYIjjPsCka8grffArVRgmkQJcL1bLnYhsmb5y5Q0RltyhTS1q183T0PwjRMO0rkJJdpFpA9z8YSvAaQPouXd3yw8v3j0QE+SDio94wz8Gt8+bxJbkySX/bPs0iV9Ai", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/ihlT+IBpk2jE9l31NIaym+yn1+YrTqIq4cHGDX/he0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ntwm5bxgqq9zUM7XD1QCFYZGvH90j2/yONPX8nHnf1DhQyolp+CaBIfBMk9QZGDbdasetW64vqS81gYSxoFGvyCoTP3fFIx9ir8pHRbFA10fgWD3s5fvDRbA275lIVjcTv8L8BS+xweLnvH9KPsjqAS/l8ZQCOiLXI1+GAPO7KsdFwglLcxiJy5wS8r6ceK5xt8kOvMSxTnGSVJQkhLTvagu9ndmtW9Snb2yORBQH2t9VBLK7Pxxg07rqcrCpMS+kVEkXo5tHcs/2Y2+QfbBezx1uxyYSEUziKwdsClcyv1KROf/zCBj1PCOomhL2pcNGaBU6Tjvy0jtM2brvRwbJUjAXnULaLdD50yqI4PjcNFjdWb99Pm/AKYgEN9rP6vYtAr0Bqb3mfd/19ht7XDaSRDq6amLN2AE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/jHFCG7itGOmeXu5ALhKsLsaO2R41LdY3nrcXSM0q8s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ug7MN0MTwOR/R1HY/BYGFIrTE9e5WaKUAGz4uryclhj0N1yfvyYjqakbYi8G0Se5PqL04lwWP376PRx9lWNK/qlG+hJ1KUC2NnxqI3UH7F7ewrGir4I7xn/ElPIEnO3rq7zvM+6SJk791HlhxeVEO4nNTK3x5ny4tyZ4BQhOY09r7dFtqw/YiKO8tm7ETpLb5JtaHXTmHlVUpAXvBrWcvYZIZ6MuB5LN+Mpjasz7PoTDvTK61uJicvGUIDW9GrAttMCsQPje2aKDofGgoFjT+9v5UyZjn5oXHi1eFR2ir+jrO+6oNEypZirsmnQgQNX40VSvEwKqETvdgMTyImTaQKJO9eiAWvgHpXZ3Y/25Syfh2/9+O3cAQ9NaD0/PRcgvEHF58rbDYPGDkjV9h7bIv450zZ9pdX1B", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/jcNvM+ycJYeQcpCsv63Tc1fvBiubr3t3IGDQQPQTRY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3xH/upu8a2P74a/T3U3XNyteUfYxoZ3xW3pV+pW4yTvR4iEEyLY1Ex/nj/oBMKu3jGf7nZok7+/qdgb6mCJl7whk6cYNxVgSHpdD8yk1Kqg7PP1G9NehjefXQLes44ERKVxRukg1ofks+P3xv2LB1Rd8DM9CZSRnnr9E3fT/PYjK8ELvxEE+/+XDPFVbPNfwZ+1tS40LT7kKQjtO2pT9HYhIfx7y7EFijMeneNIw1Hn4u3sNTFout59d+G3krTsFnxstvMiGtbulJVILJkYoMiMugu0xF3hiRER/ABTzQEr7FG3m6r3vD0Gupigqaw4sNlIgf7cot7DhsJo2WWT6dnr5TyhMIJuByDeMxQUE885UHBZ+dVDC7fBtCKaJS71CGvrBx9VLhwWVDTmYwPfTEMBj7BOOgp3A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/mEobpm1X8mUZmAlY0HrEE3xV13END6XK+Kbl0syN9U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GZblcdrPaWqo7qxB9J2fXi1HZLloy3xAFC/yyXDiJZzflECiO1QHyHfEOf0bpdqnoV6o4g29kzEEZP1ZCUwfsONru3BSVZ3P0QntuorPE8/Od0Vf54PeNf4FzR7um3gH1SZqyMGS+3MQncGuD/LsBIDSuA0ktDtKe0M+ZcnFbdT8T7XQwa05QOKEqNifLH8sAiB1YSv/cC2rMRnqnN3zJ8nhoivm/Ld62GrCJrni+mWLQm3zEoXrR2UUSuWwkHZSFVMXsDQ8rYHI3+aw7wLjbebKWLOALP4zDfZoLuF6YiMw/3w5kslwhih7MqZFabuuZ3CThP5nBXyzJht7nTe7fqQtcrlujeRW229zqWX11G18eoQcG7mSbRzfEUdn7mI9WRx7eoEGA+Y5fhEKu5rO76WIU1o9lwSM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/mXxnewks2ApOPoHY2PRJAmLvC0SHc13K+/9TkARGdY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fFmC3TGA+Fyl57zJixLoSbtK+226cls9+Nt9m8xME6vM38P4l975t93MgPJjmTvWt+SjDswYHn3+PaaVJoN/cjPj9YABWux7McRHvBzoKxg67GckA+VI/9hZxZdTIvTmyEhZpI3m1uhKLocw9i6TK0mqgrlq7yGZSC8Z8aJX2ukwr/MyEU8vx2vK+UMDIqXN9WYqy6mZxP/DrAfj65JAloFh16JOQkNXcQLx4gVJPWczoaDs2XSasmjpwzp2HDlaIWARwmnZL8rqjlhno0itvGV5Cmh2Dy73gXFSLsknwQU3vTxsZ33paQ52TEyThBSLB6FS7GomlE8jPW/+8WM+9ipklhbEzxnpxc3mm8cZB6G18RbVoMH9HcOmGTR/ppjGQZX/Jn4VGsIQCpWBYhy8i5c9rwgiP88D", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/mbsOHFE91Qka5/sz97pUupEwBf5+DfNb4not2ctuoA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ohw6XtUV7hMGxcCX/UwVS/Wnc/T7c90/kc5v8Ml64jV/20+816Jdpk8NpIqNYDxV51f0Z37I/Po0xIli7/TMG7ziSW2Zr4hH9P25K/CC94XJLOGkAPus+E8LUKLbgUpLIOB1dI33liokVN6i50x1sJlJDlDrijzKnzqe7e3r8YcwC6gFGUaLnrRPmKSZ/ZCGP3bGd1tz7tZ3pBi+A2LQOOAxVfejs2/QWmcrtZ95wppFpMWmwGRq2GcvgpG+Q6z4nGYf4XXoHr546cIqriBMWdRYlP5QgouqmvDqTi7N7EEgW7py8FKbOU6ny5m+gd6fSSGAVVLeh6AlO40bUrhaips6QC3fOrIAwq2xbmizgmlwCSLUw8lBg8GwzC6jhlz7oZH69Up/KyN4o53pHZsX8I7UzHARb1ur", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/nwZsRdF6IjAld0T1Y6+eMz08tr9ALmb6Krtsd8gabQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "emQq2UKZ4OOO0Bv7wn9tETJM5cWI560ji4v6ZdJH/qsQMNP/2T/lkvho+3emD2v2G154VETGqBrURkFfubtDol2p17B1yKGjf9BAJw3teBC0Q2L++0N9kEU17SdFY1d21nTS6JpJuMsoNU/GUoXfH0Isy71vaNsFwqq7rVqdrPRr4uExTZIhfvBPVnybgizH62qCFJ7hSuhv537Lz2cW21dkHEN4zETJDGjYQ4fo408sKVR0/ypzCg4vLjkIBcAHmUyVfWPwDhKrwyytP6P0a1fK7lkQpAqca9ErRvGA/oW/4AdopHbsULxWVutzfRWCQIwv+lIucEsp57AWpvCo8AxtpFSCwfShrnHr5/YB0I/BRioFG/HvtKyM4+C1JwiNTDrwqjfLIQUmRKQ/vWvNZwzgiZUQI6LU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/opf4qi6DXSOZvRtODHTGlJY9iPnf+EE5RJ9qR3jSIg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VDObgYPed1UNQ0LXNl3+ez0qpFW94TJvVC4kuc24bD9uKUn7x0hCQ0y/gThiNFwp/tvGx7DxGbYl6fCK0FdUBKjqdiRK2Z3g/ptnYFh2VM5aCSRG5WzSHK9WYjznoFLWnHm/m8Dl412e/HTuqVuAY/SimS6jbfeyrwZGiBfScodE73JQmxEe3M9YjJWbLEg/N0VLH6+GB9t45bWIFanPILC9Pxpf8q2XO7dpuVmDcuY9CQfAnx0FmwocpL7XBF+E+PflBXIPj0kbiEDiyq1GhTXZU+KJvQLDDb8mICmyIi01KYkQbjGbQm0LmktkgjtrwqVIwSslZP+ejfS2z1N4v8lGgxHbXx63lFpP7AOmP6MAKP3MwrJbXwf/vbuj5hvbLH2pfMGEjvuclDGBvD6t3L+nSFp/77lz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/p2RsSh+Kuz4BZ0CkNVjnAKuuxgJtbH/vrLdXY8cSrc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9ES8ychyhOJ6GnoCWT16BuLv3+4GwPdbtSKg1HOJKVsqxQ12JCZ4eMUO59uun00rqFOznZbhwQt4ETkDvLL3XOqSjQnVXGWtzR2lyZi1OICSoU3PorZtHOEkH3t44hfMyuAoYW1crf7ZFgC/rlxp7IkePQ04vn73z82u86uolyAvHhbw5i+xVxIkpU988OwUk5oGb0Dm4KIKaTrkENAwufHOWsySEkfj/4BNuoc5zqHjeA9LL4F8n3Bz0nxy1Q00nywJ+rKB014HdEltPiSJNHdh9czl+uNX9KPh8FCtHZiV6M3ulJBaToMr+cW4iBup/zpM5zKTZZ4AL3C1ferWnmowxi0w5s9LWJJprAqhJ2mlki5hmH+2PdT3OxWfrx1hEgd0magdrrPoDc7utk3BFFAt3ZomC8IX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/poZXKYkEHnYwFL55Elv86z3u6Mx5olLU2o6OZudX64", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yfdZp3/CDoBMMcGPixHSJmB81BY7s68zGJ8de5LEcSWjUKh/n+9LxBSYDLOzQLoB7rbywX4je+SqpTtzaArFHs/hGwey9U1CvWNmGCNxUEFz+ThVY/Bjg+mqCP8fp5QPFxeHvmeU7WgHMuH6FepZDi7Hjw/YnDODiI6CloLp/bmGbS2X9G8eX/K7olTOMenxjcg+daUa1InsKb9LEe8Wm9vf3BIpDInuERqn9sadNdv5Gmyv29N0sSGYeApq2lTFnbO4u4U9J3MhxdDQ3nROHXEXknESmGyBrInck+b0v+jGWxrlHflhWtKcFv3Ihkfd1xmI19tm1IzUYwy/HXYsg3aJ0uMfvPJ/hQxUoz8zrNUNZ1LfjksRsGB55e85dpFyUt1C3T8L/0q3xgBDVWweUAGcZV7aek9x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/qT8ZYh+xyokBIofnfJX1Z7lBnUaBl42eCpUwFt6v2A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YPweve6mDpAGyx8cUhIX8OS9sqiUmy8b79nJgH9sOFtJkj9E/egqSuHXxEfCxZeyIEqNffsKPqC48QIMhTjDrIrQZJcsbazAReUfWLdDm6AGzA4rvRLSKYk0kVktPToUGihv5xvR9GV9lI3XeMrkAo9ZwRwsiJhswmqD8eRA3DV0WHGPjLkU6Nzpg7YJGFp+EQiEjH/ijwhbWSuZgO2uT55MvRtkV3BZuPseboMCx/E4ckSrEvs/7J6KWSagmaA2uT3042el4Xb6PJ1cOR47gAA53bga2/OaiYOwVGhtycz6GIHhIPS5ADYo+ahwV8e46Rg8xnAnthL4/x64ik5hfG5lwRilI/N2PAi+9gD03Bb4uUBKEMvvRbE9SmIkXOhQjyAdaW/fPYHVcTQgcZZnfNmpwxJUwrr6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/rfLPyeBAz3RMwlaUey86fTlGNJgqw/Jap+2n1D1nVA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sku29sFYmnPlem3PBZhEj/3s210r84Pq5rJlN2nIRDUllCX55OdKbjoqc+z5CVYik/ZYTaZoGpBd1Bf78zaH70TGnktWyvoWprEMgddky9OQXjQnJ5sBMfS2VvnK5fSQ1OZBfUY60IHEJscP9FUU2GQklaU4jRthfC4kHUEKx6vPRfAMScyDq26BSRbKHV3C0rLjNUzeV8TtiBfCuD0hnv5wcZbGknZ63BclGcoMLyD5n8Fe5n7wakizVD50KKbAn4S+fmap8WyX42o9UyVoKNHEfFkb2fB37HqZQjaJ82QiU2FFHpabH6JTB4nEe4KHUbiBCI9XdnwVHqVA1kD7f97VTcK9uBPGIgAACaGyu3VI25Ujs0ejBkokRyt6lHGPajFPX/gGGLuQ7CK1WxKg4kspkfz16dIw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/sWTWxfJmXhF9QzDpnYmeSszJPAkC8zmA2EnKmAnHy4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f0ZD99w3ParlAUyQx2b0fr2mtN/N9P823P1sr5EWEI24rAIs8o7n7h0IHhKf5BCwl7BYFssGAgha9ezpSWtf19fVoQdRjn4ZpQCgyPzjphRmiptBi9P4MNSdjIJjoclAKyqx6DWWmWXBIQ1qUc+1Gk1+vSwYLdwgAxzdSsD0k11h1NYbGv9B4Kv2e2kBxO1xhOqXwqeDNDSAUX0iCfQag0oczfLS3SENQfLBaGccD4wJutXysX6Kg21Iy4wXg0rYX6LT0Q07I/PWPn2O35rN3eR4RAyP+uje05pBbR405vsJv1XNNipx0oAR+L+W5Jdfcu3eXXLMPpXac+w9UIVsm1+4Yvt2F4S2W9XWwmsMe3OoDqG+5sXIeZh+1u86S3atMkXE/C9CYuHVDIdslB6Aodj3TZxcGm+9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/sgsPpDA1Q528gt9JN60aukhq/4wTg/JyrfA4YGuZno", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ig1UE59Qb0FQYlwWxGQSWxGWhV2Pg3yYHbA45oUyvdXB60QjbbE5puJ6DFTYk8CvPKKH3Pvr9VQHK0pMXGaehNm1bkQ4033LVa4SKTrUC9GiHqTPI5d3K1MsWVICciRls8vAl05ivnorxBHVToBlbcDSQeNTzumSG5UE6CwGmp/jRqhaaf/Ed89pVHdZ68thbJOlRg945q3I93wpHBEG9moHa59neyNgGB2aeRpq03OFwBsLsUy/+6qLkUZ3v6OCvW5PM0F7FahPYgwcQkciXeujcgt4hNyLIp+z8l/lSOkfp1UVcAly8RZcCDo+ZeYN9IBI16sbaJzFsu1ZXjW21JUQIQtPUKbfe0pQSFCTzeWa82JcFsYmfGmtUCoOKH0JN+F/x1lrtWV7PMo0okG7W8WnfKz2Tgbf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/svRVqFrFDdpPIa26choDAl4mbIgTp+IX5J720GTyXY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Hi9Vx4ymD6+/tkgs91lbfKQtnlZtjcpcAZ+gwy2EAQsx8p2ZgOaz2gXb46imzpAQwhVy8ft9iHHlDTZgULi18gZp3qRISoWw7dMgLp4H3uiLejmqZfMVUBluAnZQVRfObQ7VLQQTJhw9p00l0EYIcsHGdmM52RJnWWR0XFefoQE+BSlTdifHrd/I0+Em4PiQIobuaixASzFe7mfVn5QEbJxdSTICqyOR9ZWWiopK67qhzTHzkUN1l0vfioP+jZCtXnsxod4+doI3NSRB7XU7gWl77vjhJi+1M8St0tykzHb6rvxa9xzEHFEek+/bS+qZFi8RIGQahn5BKdw8pDIZFZJupVU5kkKpPO4f4qSgUrdqnRxHOrXYZZnUjbXHqlzbZnZ0R2ndoEZHXHmHRV+Q5/awD1iyDvD0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/tYK228LawvThyzoAlSfOpW/CJJYbDMDmyU1CUbIXKc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o/ob5ZZ6K0sK3bkzfP5N/iPymVz024bBESgDx8K/ty0AgyKyT+0ZhRTxx9PLDa6hT3d83hEkgD5Hhxfhc1uZEIRkE4diuBWmJmdA0qT3lJL0sIpUnV6VPD5sSR94z4guC2gjmywahhDmlwjp/O6NtxSBhUEPy+xw26LTvPiezUIUbUoGzPZTIBkO0SwyJ+0PuhI5SdSNuScLLIfxQxwn5T5xQYRub2leZCbhhbFIUCrAxm9KG6pgL7XBKNbrsypVEJjmqI/lPZn7LuAl0d1jBz681lKVMKHlckdJedwEh4qVbeYlSNV5aDoCjIeHrLV6lx2B8q7/w07ZLqEXBxl0hHkGHRwAPM/eaNeQ+0YrkGlfbQmcF5z5LRCvzjLWqcYyd9Wj5YI46jXAth6JeCr7WckU8mjTVtrC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/wueTMzXPJgCo3GzLWncogC9vnPf3lqYsLwSmas9FQo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vEqBBHei7emELHLBO2Ioj6gdERZhNDTskQHqsGh2IJ6cn/YcGL6Kgf/Jsz2gUF/oas2n5QQ4SVnOGU64NqZ9Z2En0BAyhUl6ZHwpXRspk6hg6RebbeO6H8gr/Gqid85+D5irmgRmT6SKwVu1ebLAKCNXpbNYgJfChrC95C0CASSKOB2pnTaUmj5KgF74V5h+/i9zQvUurbYitIRAV4GpeBPDVHFq0wit+sA2xFMoStbz1GSaEvENXH0EHwW2o926MSnuS8TKmow8Iy7jTff4i17chOwYxdElG6tdZfMmOF8AF1cxeuvXX3cWxgmaJZ7m9hQoKeBCXu4xkSCCHW80xaj+QZABMzm9JoAzaRI0vm2mo+LrWDYT5V+hAQEi2YNufoJrtL7rYEFMo2BVovLOPCnkXr40xLaz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "/ydmX3DKa2gfd+Yl//X6yTMd6mb6XL1mZHjoAu4X5DE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "baewJH6F/SzhyWkjJM1b1rpkDtJIeWBxrgihGG4BAjdPUakrlCObWotbymsMFeczS7x7g9hJ7JxNFuF5hFp7IddcSBnug1f76+aqlWqXbJUijHpGJV9twXwn3hTk7tIm8eR30z3N5XdyJKXsemtuVS5GryKUafVx9oY81YFsWP01hBwx3qK8r5/wYX6kbZSS57subSDDIufdpT4YISc1ja2Z13VcCih/LI/kojsZAMxP5SWpJxicTre4Biqh6ONjKFN8Wb2zKawEUWkHLx3GvMdEDohHP18+FbtKCBpkx673s4JxkdUyUNtaKceqhnfmrn9VhYWuyIAhkeqXr5ErADYaYoqfAkk9Ohhjq0++Oal+ie8PQIlRN6kdES4penk+sv+1R82DMn3evsQcD/Z6d82lfzgz7vvC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0+Syrw4b02gRtudtON9SwkkSrK0TOelwEmNXMMDYGd0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aitbBDB+krE6JLZe4uOdAPDo68CR5OcE2+Aw4IqqwTxXcJTOzqm5gvtum1J6IGXPd9hmU4uMi/Y4meZsDb8cQsQJepkL6MGCMWrT0HElmCKUvcZuciEEx9uJxGIHVoOzGSHkQxzd0C1k0+hFPiMOVk6lrTiAo+Wg+cMsgXogzrsC1M9QTBK4+PC+/1FGvQ6ipyIPd7cqPAL6Zp2qkmauUWxkVkRAltr2F1ABRmmCDTqidcHijrRaZ2Mzdy45HfL7ZS+U6ocNSnH6RFZDVl/jeDBmr6rYNLAbqX4MPrlDkPjTV1OJCMR49TY9HsueGBN/0yf56BagQzKqibIbpZ18X2C4j35ViBwuNuDV05TEHaueF8D27Dh0CLtBmOKXECRBWZFjFTMwO3DQd4fuHNy2R7PltORnyBbj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "01QLFpf2J+QrMFR9+6cA2gDtp2wVV0l3sgBqN9VY1Qo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tWq4wymAO7pDnJhN79G3+Q6JogoBj4dsxwPcjGEVRoY5cQBKOKJWy/4IVQv4E7gRNVmq08FwMHPtHiZONvLgt9t4dYKaJq1ETtS0UWwgF6NGTZrs3/pBZAl7Axv09kRelxi63cWGqGI5McUDioJ5B4C9g/Q2tBN8uZPQ5CJS4FZXe9tiP7MIpi0YuLSbDhz3HEwOu7nZ8kreP2iTRNn8eKCnO4Ax/QpggMuhpwlKwhNBgJZ9xSrbS+Pml5B+3B2LuPoa6lOQ0VIet7UcZniQ4ndjLdlhChX/uMTqLMrC9wbQms2hGhuunKEbmaLfJVLoMW9tK98NcqTcZVPVnaOO1Cl0jZJakn1nARJylujnOQM0vSMoRaX7i2Xbu0zbkYXd7a+rftT4Oy6DPFvjjz1gXh0Xq/gOtCev", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "01yS/XRFwFX34w4Gl5LMVKiIbDuPus1PoqxQg/7eoBg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1iejRIqpeicvuzqkgnqzlLjo9hctzPv3D9IHqjFZT+IKG+u8JTHwxKAjigDEjXktiDpUBz2nt8gfylAXjocNrW6jtKhGn5o3ag3hO90d2B0NFP+XgHuNhGY8k7JnTLDG3EUL7WMzgNCJy8qpdxwIyzmsZB5A7r1uVYxSOdqNUQDBAnhdRg9nldH7jQ764oD07jkPk0hVoqisnhfMRlQmMbjHQuYNpGa/jclti/CWbNHOVjizVrpTSg5c1JWOiB4pyfHZLJ6D+G4Oyq+l3SHYIuLrMft3OKCJgmXg+18jWElzt4n3FIp2MqeZ4EZavtr1KT/6Uhqd0PWwn7Aub/lfOf2jLFTW7Y/ieGrWja8xjkwcrYDqDH94UlgdXRPz0jYDqhuewyqnl1TnuqoRXjDFLyD0gfCfe5Kf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "03VQsmNmkIqAgfDiN2DLmq3Xf6J4vu+euWAiA1vCxQE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Rjj5yztzmAH2Qh/c4u3Eg7JkjuGaSU8IxEJucM7OGzDz2z+cqYRlW3Yc3IIBXVXZ6I6W7g05mkorNGspEco7/1faLGu7YVfTRrWQgrQzJxwHbscwfeoUYyQoORZ6wMFmHb4trvOnzf65bkoknh6Z0fpjwkBEKmBf2/86RFsij67334QsuBMjDdQ0lL7A6L4fiBGQpRD9ovPrnFMzVx+gag4TQDJ96iBqPyOS3kAgrMs71wj3SP1sNqSX2wiRgzkiNQr4+upBTShZUuv45wuV9X92W9piPAGIzljMjScs6TBj0ltH+6xa8PiqWmVHiOD1XPgnfqYwaIvF0pMcay30H7yWSWRQmtvwcbR0YEUAd1+gLBC9KtoMs5r1kFlgur+DH/JEoE5J6yzX7X4JsOX3YUwSRFNwxAa/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "03WWkltBCWepqE1/lRLojEtIzqsV+3h2JEfIwaR/+iw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6IMirO25mW+Mz0NK4F630CbnNox/BDTJv8Zzoae7S2cHftWaGaqZZGljhIdeeMq6m7/81XAOpH+DEVBrXV7P3ZkizMAOufJHGQrHandGvDybnFcJSTOVoDKHEKrWUNHrj10K0jRzlN68PxzuhTDUni25ZGXebuhOd0oYQgnMxe0Pb1hVbILNG4GP9VHTnJPwqPo/d6nebfXcL04Oro4MoHEBY0draflgCMq+Vitg6BPfo84asV5YzLJP/x7MhCh3fuNVaJLbmWZ9sk+B8TvvGarOSiM4CU2D+hwaqPXwV4RlO2TReAqe4z4Vn3E9b+ERDuo1bOfXoqU0mn/OCBYJNYAy83VOSpetMV0j4zZtQ2sxX6cv538mo66RzUGTO984lIMBaDO8Desyo2cdPmrhrLxigG5wIhM9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "03XCo4h7YR/0O7ziUh+OrJBYRB9dDiw5+bv0jr2QOFY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f0a1ugpFqbuGcOt0GT4m2nMaNOqN3qXG6Gz1us88m8Y6MLPjCWOB4AW9IM3l3OljBhfbVH+00NUJIx6mEyPwFnXJSXwntb/D87kLvmJ7dltqchjD3oUjsPWAPY19t+6WtvYQUccCj9bPhMsdIfR8cceTggZlnjqWkCWX9CoGSY1ba54dXLXAXsrH388xgy4gM77wqVq5p1vjFruwK+PRJc18SihyQhKM/2TVn4IVtf9RMvxlbavWS2F6MRFGyCv8rME3Te6j3EL3HBgYeH+O4rZ/AMkhS6Ca4kDVipGrVongAr4NfAJzS5k1rUJyqWudmzDZ3lOCwIZeVH0Up/1S35pDQySmOROZded3SoFeYJ9KwC8tJZMvxyj9Mdc3UztlpgU8ozK+rY/4H8nW0rK0k8feWkc+jxo2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "06A3T5gnL8fKXnRL4QR26VM24hp6245uAykSfvE3t7s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mKbfbZ2OA3+dZKf/dvHGBgT/bfCkgyzv1GOZYi3/P40R+w2zhWZOxY1daXdF3rkFFPYmdnFjqNAA6QXKzUZlXLAiJpKFBpDSlPl9MvZXa3g6qGuer+uXPRc5EdBv89LNkdcMfrsl4oowfjC7SBcpZJO3VWWBe+lwBbeiD3a0u7iq+GZ3z5FmonPLk5v6EyOgSGeYJVgFi0EHoJpIIZ3DINXMCcwW20gXHkdvobarJIVjx4bTpecxQ29E9zxwuRkt3lBN2mOmJwBwLTfpBDDAJGNuuXOvqkPmc1o2m4uqtzS/8oaQMFmbiB5pIbLoIS9wTj/I6GVaa9/Li7zZpwY95J/W8Hu/fYF853A5vJgBVR8xaaKldqodVP/MjNoD7WL6SHhnx50fpCadED2svhk+CD/2m+qHV2z0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "06u1JqZCkxB2Qrkgr7kUXjWY9VWEpbNLLvm31G8n3Fg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2teFLZX6Bzx3Zg1WwACYWsG/kXSMcqOHKciZm2IUmMDHXRiGiIvq7k/ylhBSmPuL1UjvKW2d54URUcqNLGK6dfPNSz1lsZSLCB0qkWekPTed7UtSiiy4jhxils/HzY1s9IUX+MM4qR/t8WQdf5XuduBHXZ2ySFyDKecfGJz6HOs1oggMFaLcbGtB7RmKW/KpLiFSzERjH71KvtLsYVSJU/w/f3cfh0AuGa6HehMg3dxFiECsJ1AUh6YSz43lb6bfA6JcpXALKGlotVlQeG0+GViKSMY937Kf+olInJ4UcTgeaFASa1B9yOweabUWB3vO17n9GHvYQOwrF3Gy7XAqsP/9k5Y6aFbBYvShYU3AUP6GE9fisQZBjK0jqMmWggh5XkEC4UvgKLcXeGBTJvDRTsQg9+qJGAMv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "08wG0JDe1Jjju/ETCFheAMjTUkthZdSxjbboAbzRGFM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mida118XVTsTkIoFfXgpF2uH1OaGZPeQD0hYXhli6LfpjVFjnHKnY1+FZuwiZ/QmxrmnjZF7mVlxehZCSGFF+1dUU7JCokMb0mInAJ3iuyjVGhJyZOeA6Mxs6ubhE6ksTNpYk9dHRVgsbv/fCoW5sHJZAUZ14VALP94FN2Kf0nSLXBvvf5TY3IxJXWamlf7LEwFRXNVZKP+s2djmHVJyiRtR4ESFYUxcBgmzDzfT2qgSsyNSIq2NBdmcgc/GLxVvQTF5gH6PyJ9+Lgm0I9pYU0BkuORVFItg3j7JBO/M3q1jEkVU1P00kI+agarzfOIPEuwQ2WfY4Y8ewU+bVeWJvwMQVA+C5HsS2ERacpSVoxQ8YjqdxLXczQjYq6VKJ92wJkDFQS4m8SMMGBNCh+gnY6bBkRpqO2Wx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "097IFHV67XOb6tV45d9rdTwdqFRe2IMl2/u87rhefAc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8tcO1Q83Nlk7tyckpQy3yslOGFJSQS9W85BQwyk7gTo99wqSVWvpKQjqxLZ7Vj8e8ofQRtrFFneOeYrJvP0qRUqCcWhsrgmnN/HIGSzdfSBRz7kpnhYmk+aQtGMTAJU1gIkz6XgIiqnoUc2sLK96Vce0an+K9Ej7t7mAdUHXh2TYuD7BVdG6rTq3Kqddcyjus6+mmQEyBHk3laEWlsz2CnSaER4aCtWGsk4AyMsmEceI2bbKzuW/wg/EXbIKhWnNK91Ln6cWGthCchok6oH0uLxKaRNSEjl5vHy+0T40fFFrCC5APSbEjDSikV5QU77CPGF2xYLiWTfV7Y3ApwZKMXiokDGZmay9AmD6i41+RbUoDLVfa9pGKz6NlanUCT1y3VuaBW9uhovpefmDbkvoqYP3aBlApDKf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "09Fm19017D1VDGFsv/PrYTzl9VKiEw5eBR/uIkMHIgY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o6h31Ua0zoE4hG0d2fiirpx5XwqpT3eAAxTOSBVXhBif+bfIGX79oHb/rcDKLuKm5gSdktCb8YZXesJqt2w3Rb7mc8YiCGY51SR1tBbgKAvusZcRxlkfTWeOXdVk0U/DbXkTcSvqK8NO29MKjb/UEISQXlS1jFNzv5sAa3WfHlpdqI7ABt4pOuk+w/jvL2+hB2+P6h6TR+CSE7yd5WqAoDdnXMRqvv/Rs6mY5BpRhUm3kLepyP1jCeyd7SUUXSNd24gislqowkuMCJPjKfj6BXGbDGbWuFd3U+PB88D8vI0tJ7H0AHd/RGHdmCuJw2d4Y9rfSHm18+6nLCnWgzsKRdzRmUEkyV+Yx4kOf2Uh8E8SRkkkXHrUPbywspwdVzM/48v3ts+IXJRkrlzs1uHNWNQW7GWbG+2c", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "09IvJp+qRkhgJYrNNqx0n3wJzbndiju6Dsp7rsc87UU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k3i/B3zgStcFg3K3TT/z/4RfWSI01dv7bpcMJUod3AXMyP7EzXMak/Dok0y2TychnD2mbdyjFlicr1E0iD10x5ffrh88q5UZV3ocRQE9RfXH5J7wV8CQT0SVVb6XXUOyyGJNahjKQVdqlM4LQscDsgmpkr5icMZ5bXBN0v5Wxp3Yu6u6KY/rt7toGr6VMmYeXG+k/uj4OFMdiajjN7UY8w6m5OC9Eu/9bA61Tp/9tVEWZEJJqIq3jGWRqfzmjtVwuKJ/PGHMsa41n10ZQ55fNOsyzyCXW8ITCHpr93DiLcczuikvFFEf/S6ykNG8r9rUrRlfhUljb5oZweQdZDRKAnNMFMqRvUoWXRIh43yQSrKJ/8XYnssvAOOkpRZA1NEDu0jLoYN+bFdSFgMWnr94OSvrn+vAB5SC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0AEPtTmX7AOGAw1NvrFdd5+rpsZe9qLSZ3qyA5P7afc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kLvJJCjolZKWmr4qV2oSAwHiY1nQKwAFveR+VsLbn5n0cVvCNrqO+NHkA3octfn+9GB0a0etmLa13d+AUccUsyAighHQP4PfINmAdBGfpRe1Eeo/cvW6bVIMx2KakM4qIfVpDRB4wxf+pFkadaI+Xgyo76U0HtTRTf23+xzxlzpRHW8fd0h55nAvlrDTr/lLrrP764k1gB483BA/18zmCKcd5Ock9DBHmxQgYdWIiW7nbvxPsdIH3OnqtBsFDhogAug4BXxkuYQzZ56SrsGx8g2+hS4PrGMuo4UTnftPaeyjt8O9jh1TC5deuy+63SzIi/3LcDGupFLDfoXme11CmpttYfMQANV0grT1tk0TlhIfa5OLtAcckgVghm9xh/5C9Xn+vLCn9xqOOqV+j3dx0ki19FXkmPix", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0FsKIigduq+UM0ZLJM2JCGDDY92CCbxWwpwtgpTd7rw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nykeKBXnSuG6ny0hd/zow+mCSmTGgnOwlGgoYfhio/umz2AfOUOES9JEBfFIayfp8OHLjxjb5Zz5XCFYnQiPgnpPLvLo4JZCOSxW0/7LNSLDurNw0oFbHr0sQnTG9EyLYx1C6NN9Xi5x22uRJ2a/WaY+hg1URjpsCVIM8MwLOKgRbLO180frXGCKWqpVv6pghFg89RzBlI7a5e3h7/OHY3TOuXkT2A3NI2AgZMwxOVV4vx5c++JpE7hIVgA0AWimFh/KkFLMJRsLfvZY0P7TkHFDxzNwARHzJALKvzde5CBKJjW/4gwJKccGOT/9Ue4T9E3ksc7xpMQx05J4rZlkI68pgN94dm4hhNhl+FSYCG5shoqvyzV4DyVePRgtaT2VElAtKbY6ZRQnF2ADMbpc+L5yKLf7wYRo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0GQ0utIMDjLeo81luY8sHt2qul3JxhYbd3crLGealgE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "b+9z+SkwoxJ7naG0Z1RASu0hoirMJ9o4JWJf8Uj94eMHxq9yIZU8mc3kYqEsAgLQEod4b+6aiwdZgfylAwhR1EZjVlBV0S+R4E+nyLxNby1NHk5X8EsLaTViELspTqbZdTSUBUKsqzPcJ9/o9FrRkk7V1Ms2zIk9nVFwS1cF9tgEH04GKKzWiLBrr5AxDWpsNyvG5MZNe4/NfuVJQm+EsVhX5pOxExDxdQwXO8PwTxZ7jCSbcS42HtvEaOcH159BuK2KnG9pOnVTLRVCMxdGXLYhCMfmcGnHqQaUJYatP3X49wBHj8Dr/FlKAlKkqmnBxwnwDcLUT2HTd3s+q+hy8HobOFqwg5y020YmG/OnlryyXbRrX86IjN+74ItytnzoQdO2zgVnd84Dt6XEgj1/jleYpaQ46Rz9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0HT4QAtoIWygNks24/mUbKme3SfIMRYkijJ5RWxz7ZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TSAO/fFxaoQseHmfDuOVkRJ2NyWA8m1Dcy9svgaaJYLFi+AkYz2WLH0VcWDv4wNKaVAkAR7rHnVRCEQ9nlAZvZ2DHEpNahkdar7M53FCVPXwhbV6akw6MIpVR2wT28wMbmzdJJNgjMDO9g1FbnVTpff7vJJaVAqbpjUHU446bnGEH4Fo8ezdbY9w/Sj0dza//1kTl6OXBfHeSgZ1YDm9N6F3M06VGeKL0oK/TF3IJMit1ADC/jfSh370HyWtjTRW5Q98Qm8PHAIY8MLIEG3MI9LsYvPd69LN6bpnoUup/6okM+Mz4nKjIQJeyixbuihVoasM4eHGes6Si2rhkxMnsvk/6Lx0CKMckeTxiWtqyqdvqV6PigI0oLkoqVn0SwwPDMo+Tb9y9QNV4bRCiYvufwB+Al+ocb0s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0J2Uul4hR2OSORUKv31LnFOP0YfygtBdNK1bGbrny88", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+IxTZDRMqxPkS4tPqAudvJ66G1/e2gZbtD/w8gzNGl51sI55vTs3ac8URqdY3II647q1XMmfzonK7y7Xuc1TqZuls5DaAjljVhgxcpZP9ASJK+pHYujG4GutHmqzclZX/dsI8/muozs+B+qarlo3A5GWA71QgCvRmiCb14zntSgfPTaKDlxxsHqp8808C7yE0jwxmm8MP6HtkOATdnzC7sFWBQnZfHW9sccZ3Ohz2KZM5MBAoDZ6KWHTAjs2ZIHxerIEskIkSq2usMBCjS9qrkDIHZ/c0FKtrP3zeRCv/W6MrWKPtZGshCbxt1hXtNzy7R/0xBqIL3bXp0GtlmCeXiUZGiuZSrm1QwYAKLxq+D5HL6GrFrqaEptFI/Ta2KDLl+erzUkLpNq62r7FzzPkLSalu83Bth2H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0JMt59ftNM8eOjmk5imJgwyPYE+GQAR4oGS2L9gO/Zk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "67GxSKP2HSzDyGB4qlxYI2r2c+kMdgRf5MhsyRLS0BTR8055XowhggIxMFP+U5etjW6dquUacHT91jqVeFZkpd0Gbmp9+f19VK9x30l4S8yvYyu0uiBOsDPKKSvsdB06EnufY3h8zLhlEN8R11cDC3+rJTjYf0lE1/PB3UqeimxlY+FT7v1JhNrqg3bRdX7kq5nGZxRKg1Rcwn/mfmQQFAe/aByVbS34RMQxdcbB8WPwXx2trLbN7U2YhZfl9PCtBsFNRtD3Ckyuh4Wk7GeRoaBHxec5H5/zdy69uhADeFfwrOW+asiLNsFanpa6OioAmXO+7ySzv7rbkpjd66aHlpSL6IdxojJRDOOmnYV1O2BTQLAx6U9eokfFv8kVZ4aRWFOqKG4TP1HGZx+RiAlW6SZAtKfYPIA1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0KcxqSab4tM0tdl3yA5Z6/sNCZ28Dz4Il0bbuCzRDvI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5PHGyvULczn/s/cK520fG0Di3eIOYQwu0DlDcJqcmcxR2txHjnIB2Pfz72w25gYY0eNeoMcknbLdpy/pi1ccKXHXJS0/nR2dfDgo/X5U+mh9Z9cpq0sP9tgab8cv9UgjUWfXPGAW/A0hZxT0igL1ov2aYCR3ywHVVWHzN9DIwb61nFwwRgC4tFfJbrJlJOwwiq2CJXlfOSEe65e5Eu6u9kNmiEkDjIfXL3nBC4hAKbXot4kV1/FB0FnA+glZNJxiqK9vwngp4pYz85DzgyyWROxkmki9kAUx90Reo/ocqeKTL/ERU20Et9i3B9RlXByALi3WUJSEuqE38e7Ko05+kwIVAh0+w7Q+8UQTg3nuaEQEPz9mRb4BBlA2t40a6xB+/Wb2jamLUW5atqfPgf8TSJFO51lOzghA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0LiJ2kyG8+943zxlRAerFYoUmhRatV+USBBKENNy1Q4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qWPDiP4T0Q1jhAvQWbNGlWRrX/9ibAExDvnkMDh1TA6g/qfzD8ir+E/kSUO3G+8I4slWYYGyTtCSC/xhDrmLURz0yBMPR7VZhL0bkLias63DQJMAOdhtR8Se5ugEJI0bFl2JR5zCmGmtY04tA7Lf6QE4b8/AD5K8JGFYVQw6xic8lHEzerDjVNuQ1V+5JmBM98vfmzYbW9EMt7sXC6iomFYJDg93RUfIwWewwk2BSYzLJWC0MNR6uEWyvXFJ/vB2HL9MVa0H5HbILymvI0ManYcjQEP8600Sw+TVwgjTibLsjwmjSmz2tMEPwYouOI6j8sX07ZnaRJIaDnlhPo4tnVsv03+tOM0AOss0F9bfSTsd1N8wnaoJW59Om2Bp++D7qp/+MuZFAbyQrk0XJxUZDJCeWZcB7aS3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0Mf1WuRUG1TRJVdPn0DPIYy2DPvDQK7N1ngGdMCRMYE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oHujd0CcqI9e6hJOJs1FOxTe3okudSDVTKNjlHQaqS82HfPXZwwcZV6fSRVrNfpaIHh5E+mWPuTCK7LHa6UGIdyjlPEMg9uggepLm5PTwulHut8QWkUe7ZnQtWDbui6amRJpGlgbDJ2/z/XDZhPtX9nJuWnI+0U4Nxi1yLWQw5FaVbTdJzWLito+NifazCGKzzhu4lDCDtpESMhodOVVlVhK79hFJcmo03C2RqqM8UD3rBySu0YuaUigjxnZCDPebJtGn3kWndsfvOErQKUMr13f61+VT1VZTeqT8pMEntbGfjw4XcramxG/BEM6m0ofDhKrPWJWvdKT3r8kUh/CoGk29bztpJVaYCBgFFsdXQjGOgmhrjc3tKoKxDMUKOMWx7Azpo6GwGl+yfjYOjp1w8VADAm+GMsv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0N+xU11meiP3ppDv37Dl1bOmrVtp/nw+WCvtm/z2JXE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bGoGgswIyvAb+/DwSPhB15UsrIGA9VUVqGR+dPhX6PfDNP7JM0ZRr6jEuIa6lKMa8O1Lae9hqpFxWou67mKXoWVxRvzXp+G6M7B7pLwYvcJN8hkmVqRnSlW1oTQhIRQWbgXzL1PvXs8nAzPD2bWot/qCCnqOVwh45yDuMslv62belIIv7gQ1NsdopV4lVyIPOuh1ca+yJWhmZ7QlZojHJNS//UcnyvLVIqL+YOkZoYM0H2GcyPCpt1pmNmOTVrVJ2KtCa4kgm8iS26rCur9rF0K9qvmwAE+50d0IdKCfexKze1kTECtJek54B8xoJx72Tokv1Ufsm082HqTULMAhhSf/JummjynRcOAByU5N1KkBdXpPMgujMjsUEtNwMVv2ikSulNhj8u5DEaZieWlX+XEBZprnePnU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0P/HgTcSKv2RRwFpXlAl2z0CDzXe44xA7Nyl5HtIrRg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bEnA8Mn5ZqfhegdtNcnZHoXD9/B2yR2QHpAGXdijEub1rhdpunBMIBz56eX+Uy+qIfIfGv3iRMIbZQGtLJtCgwdZa//S2hzu76JbfIXTykJrm9Pkp7svwsJbUJtCI6D99aWL3hnhhaYV+qrV+HpcgRbi/lr5JCLT45xrWE7MD7NHExuruKE2YgbHI7xz+Xs60toXxc9+t49s0+O/LRfYRpUL/n9Gi2K1A/kq1P60WFLfkRtvDBfUQ843qIQb5WvbVP9hhw5Sr5HKVvJnSM/WHepZTyRPmHJFWlvte5Guyc3MqXjIYZx0nW5udhRyCucznoj+i2gXYlNLQBRrsTs5NOlvrukEUs8lkgbfqMl6J9KBNN9ndK+PV/XnxMW/ctXeWZloFXTNpSwNKZOHB3ThNSL0IBMe755P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0PRj04aTHaV7t9zaZUyQ0hwdVKP0pcMJHemSe3DfuC0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eFE2gSBBhvY+LrJXBnKSN7vDJHV27zrARSgFkItx1oPnBCEBmRNCJchlBOZ5C2q7aHLe8lXKn064UQNwVtCFi0HpYn2SEMbHcWPfY88m2dYrZFhUGG14FilE2YoqZdwjad3tMkYnd/SMeK3qN6aFLlXMx687WzS9thKbW8CLxiDQ0Go7YUbg9jbMRKHraIOt7Ayz8gs1zlXws6ovIaqvcdCzQ98kogrimnzZW31KmgrA8jxB0zh04lb1foAJlh3jhQwEGRukjTrF62RUXi5cYtzdAIZzzzbAR15ZxGxxi7Q40NBwbMygdnONPBm8SOgWKYU/OlEN/zkCLHqQ2UpdzQ29lTGk2Ft9Rye9l1LzcwLVCfWG7OrpJ/qNzZngKWbjC3A0yJjm093EvgJio/cF+e4GGZmkR8Gc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0QI53x9aJYgrDhcfQMsE+VhDOHlYBg642YsOxoezmNc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0zRE0yZbiCQW3U/BtdnHVZjpuMYhXTuBjY6EYK87YSMa8PAtvHHJD/pMvyF6rsoE0KAI4mLOUeyjzyLcQi9vvIeePVihbB4HUGzfkFaGdnI0NkQrJ4Ugosk093ivLcW7BBVzly7Og49xSu57Eyhztoq6G47yYHJoPdV2ZyFq7Yv89S+af9MfbDRlomBTx9lyZWkq94RnRxFFBZShcGFg2u5Hvb1D2C+TBCBjt6eUTvR7+Y69OFRzlIn1KXw8chQqdZrWMU+zNsMb/Im3NicdqoRs+On9ev4njUFLOfpyIyvhG9ap5wRpEgt/7X1dPHxyPWsKgHz/i9it8qkfvWWPLMSgDa5+eKq1yaPQNuzwq3iHSBuYmPYc32jBNpdZDaJcptRDwDmJdO9/rLAaKgIXDRA9/56VQpVO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0QcxYJWJot8b5RAB5veqoRsi+JElYVJd1MysRpqXulk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "szt5lJaJQxGquMvogiGuetSlQJ55mFZZwsv06Mf0RBaP5p6uKrfHNOYhqYOVcgKFWBLqCavHbhzbwMu71yT02Qwxswe2nn0IRNgshs4tDmGZpU22Qhsk28bihk9JN+i9oVYSGoEB8caEZ59uDbxl5PXQvv+usNScYqA3C86n/xs5brN+q8+fvj2sTVQDyQpP3HuiQT2Cpi7LyITlSczqnfB0mBK6FQlT/NUcb09N725d8izG+uCA8j6616bZ2vXjIVG/IxbSaVaHyttKDxYVSFKfyvUd/nYnjOYk2QZgrgDhx9K6hdchoXFDmnxxejdwZHjOnYcExOu7W2uUptvDKnySWJW6MhaJiig2vOZ4QWI7cNWK7+tXi8SyTTm6mEUbLdmfQrwg3Ra2FEzHfRFojZ/3Jg/ZCaed", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0QphOQbn1f6kYUS0F+n6Qt9Wzq7mSbxXxO6jxJYI1qY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uEtB2NneYhyBHvkOvsQ5QYllel5zZbdJ7U1NUYoU2OpZM9V5a8+vB4MTnBEeoNhuJwuvYCCuuhwTCgwZGdvbume9m2hbfIBDyzdT37JO2MM6GQle/ZrLiS/lBCUum1ql+3pYmPKr113OmkrJ8FP5BN8hLYHI3q2FRxpXAgVAcXNWU79Z5izw21yxPTJTG0t8781z06tlWK4tU/ZQy27pYbTTnEpujO1pmQj+nYuJ1eonBM8AyK8Yao1e9mvqa9siewntdFfr8ozxcVYw1jD0aRtudsObqIeiQ4an4Pk+/EsVJYD9Pr05P07FUG9so79XBAFMmFuamdfWfNFi83n0rOWHV8SnYhGj/RKfIdEawMdqOx5Bb+Q9HfPXIk1IL6sI1qdhFyvNw4tOHf2pcaAQQulzZmdjt4K7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0RtOvbmEkv15Q0OPzWflqTsnK7QXPHY65l6sDKF24Xc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f0OGQ76wvm6VYhm1/WgK5d4alyW7xQv2E8M6ym5HeKCVFkeaDhlzLgfzcAoFypfddb5y7rYdp4yoL9pAND6kGFwMsfNna7Sd1YOL8pyGhUoJzgnOr7o/H44x7MyT5omijX9Zg/uZcR5Vb/zzr3jUwWeTYYbrN1mLin+gpQpNzLIVQfxAol6QxYhQgklmtBHRStgI4ALJ/A3oojMEx2mb649g+Gm1x0CSUGFVdEz31LbmtqbU4oYaSjx/n+CZeWp2ym+HafNT0SbiJYDpBaGMzIutqev+Y4g1+DbFJhvq5JEJ28+5UNN1cN5QG1wpvYSCuKFP+PPz2NEviKhmEV1def3S469c88A3GKaaLn+kXgHlbGI02Z8HBkg3nokP/eLnngz6v8tviI+trwSe48do1wKdEr4nMoZw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0SaUMTbqxmox29Co5J3hv8uLad5RNpgNpwqFnn1PTAo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XJZCvpa49HC9mdd4zAfcrRBWsXYBBDMQxiMIpwtGObouxCNLql6SA/23pK6JikMw6T+5fzScqAeYFUHc7fFefQZtkp2EXw1EIiGksY95rcibCjKC/dY75NHA62hGqyX2jBZYU3dyO+ZNTr8r61TEfL4OCYRCCkxcjgIEJZlb1b4cKLhB52w4bLWb2QPDqIYlQLeW9UE4cyYDvtTp452b6PgDm4nZay5P6G3/VF/RynVcTOJM2YU7m0dd8i/5ujabaIUb8rrz7cRoAPSPlMDps+rEEPH1lGg0L/+w6qrrK1X8bbWOS85IZCM4PWZEYd5mPxzOcUq9Bnh90Ti0ApmuqprUy6IqhRjy35bRRjes5iDxNd5lVZCz+X9zK6uOlNXSYmLkP6Orqhfqke6cPZAytTC0UeqwYjKQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0SfI6fOlC822lEzcjnfGHah5vXL08m2nlF0pZWLu7Ms", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YSuksH8tK2svNwERVDNhxMC3FxurUAjPTOGQEAFKxce2mdGe5NU+OsMn20FNwMotjYiFWHzLnNJ8dg9MA43Qi/+NKcq25krfZ0QIyPfm88qGrEMyQUdOeJYG2cLiRoHb7eUVDPVjXCF75dIN2la0hzUIV9uRIvmx4DjuGbjRcEQ6puYjy1wLRmFNsH6FjYdbXqsQzr/3asMDjAW79mnmdUiq+uFl4pT7ZzxnLZmmevgjwJj8i0jQH0K6u2+6wTHcEdlt6H1MA6x8z7nPKlQSWX3qb8YO6ofeH83y/k5xuMDLopvcBOiqCht4ePQHdwRI47HlppRiQabwTqA6YFgi3wNRRzranIp11Joe3Ugj51uxsmP/cSKFrFc7CmyPZS5KOJCTEknPIk7huFI7NOQGrPiCCgQHsvvK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0SnQRiUr9yFC2gFMKUJf3IIQUMlwGfkut7qrTU/xlgw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3FAHvJgj24mqZ1nzabE6+QU0mILgFRnFWlGj50iQKkV73JiDHja3Dpai0IghM9ifNau6YorNcFktJpLMEY7ibdJgxaGQrsL/Y9CY0GLgsxtPH/ENBln96JbhaVp5QUkX+O/EGZI58g9vvMa2Td/706lSU8w7nu/2THZ4Id/R06NVSWnDU9ThsQeILPuKE88aosbjtiMl9OwEzbbsG54a6zKOGBn47KEzF2VBHSL1EWG8xC9obOl2r2HS1CEaUTYCvaIaXCIVauIDQiay6B6n7Tfe+Vx3iCNcM5CDO757/5ZhwEKTaDDjGgnBSYt/AcL97JXcAYaeG3hcMtXyB0xXRGVdmOckKA5WvDUZvly8Ctc4Pxsbj1EJC6ENpzhSyuj4CJTpi61bH6FaO8KuMrLV9rFp/y8HI26Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0THXrxITcZO5lSNQEja8e9Jy+/FQm3xBnGAsTSYyxAQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TGJpthGc1s2G4o6rvwQqg1NrO9K9eiG+GChaa9BdevlXZmbV5oe+ispye26xBO5lmTZ1swlEAmWnXWggMjNkzWhj82WeqZVD+7JIHxaP4Zit7841CgbDiJPSkIlAguwuBS3HfRTLYy6YxXT1XyVQNcArUSpnKNpq/Pst+3YNpTXhw2trefXXpYNr0rAP8Yhs6d01yR+W8vb/DufvTAjrrAn6cd8O/l7DXPyyhbs+UL5fKbNS1Dv2ETsRSbCsjUGsogSzp7bqe5EO0ZBQpYroeHIhBLDcVZqzhXltauryzGqI4BV+7fnqForRkrgMQ4DeytAXgyNTzuat1dopKFDk55KOnJhUTbOXmQvZDQ7rydfCN1ArNRwt4uq6kA+kwWFI77rvCkSlpX+AkafIiuj2XU5CJTxTKCWD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0V+6xqO5C7Q+DjSTRC9oU7QAZbfEQO+IJakAxKoY5dE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qIs0ImVy9oNRefmPKCJbrWG7oqH3EnzXHZiK5VRvYnXD6dssl0/8hlcILr+//RFOCZv/y6iIx5OCNGdle6TfyXi1JJM9FXtPuqild7YXvMJ8/CUg6id9DZJHqupsqvHt0Z3okElMLqidXx4V6/J7XT1LOGlnD1bLaGtYfcO9oBB/CFcCHsoYvAfj7O/IEH7KxPuD0ahzmSFHCQ6EUexephXW86wIRjag1lbwoEVVsYQGE58tpADDJBp7eC50ztZJPNpzn77JGvpH+rdmrQvQqVaiqSUmpzXbiykFh4Gob9Wg/tEvjh5pPwvpeECtN3yT/DN9Qr4TfrPKz/d6f10eYsOwmlW/T7XxhAvrFz3TAZFh99BDsBAuPDcmOemlz22vsHruOKtpuY9+Dj5mvzMIKGnRlhsdjkUi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0VCsphBOrraf1tRULyKz8CGdjO1XXaas+gpU7qZM03g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Kc8vNYhEHpCvEMsRNFOmTS2PMb43m9k2LWTCpXaFKg3vZ54aguAZAm7HJJFpREVgYMqCAUqhcua0I+77TLg6wAshFGOISDfkSoDFi32mHF4gle4t6sMLUXIboc4moID00R8mBhDVTHpCinOBOlUjhci4cGq4CAgdY0v7/ABUQYJdsq66xuL0DuycFx5m+A0c0UIJiipDEbUYGIooEYbF1R0yNOjholFEkl+tV8y7y44HhZImzkSk7KRNNb1inOiJa1i4nHfnAdmcVWDhN6YS0cdHN/70BeId30MUrbpyO3HAr7fBEnqjfJGv97KZ/pHOl8Ss/CovOMRIzt6g5H6yEvM69zlo/n6mfLaqp8YTo2w3dgER/g7QsBcGCU6LEsl3JGEaQ+3WIfByx6cfFp8O0d6y6zvzTZhC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0WP4AUddF2MOP3LAGZ0vLSg8vROf2NSQ5c6yFvqhyys", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CoYESCJcVqGqXKbJmEaWXo/mO+AJL3FilN5LY+LsGc+2Pf31EfkIkCAn2wz0+8DWRobMoj4N6FlGP3qdxQSSxzE+Rc+in+X6/ncvyF0pAlyaFJ2bla2c7/COEuQaZD7MJ5zuE1OwIaSR/ehbDlYoHeUZ0acLV63l1zZEpoU90cjRUmOrQPuZGJRiuME83mvwk+9Z5DtZUZu549GesAd4ObGB/6eYf/CMS/Z/ol1EDcYx7ttdYSaeajiFPvaoBogrxTXf3SM5zt+14PMESuObGDWYg260vrusvuGR1P/aOKONB5ZwXy8uid4ZoDyECGmej/g+7DD4qoE/TAd7+qo2blYP8/jD3fV5CLuj10s4pepStYjRGtM4wc8veppfYr03THAI1ns8mUhMYmxEQgezn9wE7alAO7QS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0YQN9YLJhYCNCHtAypOJ7TeV2fQoCC83FPzgeb5ET+E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0r9QjIpWKEAW51be4fzTpE12lcaB/ANveknOyIF6MQqJycSXKS8+Mu3AapdgHDpI91509LtG9ySNkZCaekIR0Ez92ELcIi9viN1dEKYRB6jyXNiK7OS4f/Ju9g1YKRP9setnkhqEGtxL+/8jmTz5yxd6cRMGvVWgtwv2O6BMI6kZ0FRSh6vNMBaYE84tZ8hmtRhcvVm+01FhafrTae8EvXIsfijIqfzPGWeHl5BdzMyDd7qv7JReevsJ1bLYbJwm3sA6ngiNUTZ/ltZ4JT2AIclevwxneVzcEuvIb7MKsRFg4fYaAy4qCMRsxIuQHU9BRdSLSmV7PHeS3dU0F/xnr897heX05Px8tpy0qjVhOtLT8sXF+3Nlt7qbiXmHgwAQ3Rpg6X6+H4IquNUpCvegOWCj7bc+9RxJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0YXOGQXhjCWh0yDFySb8bn9GrBlyARc5VhyBDu5DNJg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/LkVk1qwmwqvRKFDkiaCTFYJIIkgFwb3he6LDp8QJ63AYE4Gj3WgUgnRyNhTG+swOHG4TUNwRURD36HDynL4F72nDgFKE91Lf/klFc608+cVeDgrjhB1Leo1dKv0kfWRbnSduK87rYDCEMPEZjD+SYYj27RFOP3JuerRjssIZEl1RWBTYgwMR/DdI7/KwiW9cjfcvw1gdEy8MgyZb8Ou/B6C1a2VEDOmB4c5X7XBCKSBerGt6ZloZJNCggJc8sjB4zy9kqComLPeDvB6w5TndQl/l2mhImDWE8J98f8IEOhEdwsN1rFmBgLlhydqPh44UAfTvmpxJoCrTfwAnWzYIyv64odD+vaLvMPjnQRqVZNh9QxXYzUSCkuusxDAmgD8QVIsQjmFvWKAXob/Iqn0zULwe4bqN5co", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0aRfCZqQN2lrdV0yP2AnlLwMEoQXE9IquXxoTGuGSqw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ev/nJ3T2FA7KXxwVCJf1WiwJykvrTTBnV33L/Q+DLuobaLKMrkYZFzx8V+vhjmLcTePiXss38Z1kL//ZSHG7N0uVXxmr++EZEX0M4lV4L/jvjXj1C+h+Hnh7msuR51asXKv43H+uAmGFUGO81RHI7s0cf2E6ahqOStzqd+7FhbB982vcHjPJh98M2IBh1HyExnCbbNIvI/m0DBy/WYktW0L/Kp/Wr2q9ZbCyX5GjwAKIzRcqUaDfTGZEOyssEHGPyrDzyD73wfsHdnjBGSe7ghBEmN+relGmUWjNucT5o1YANPh77pg9xf2q6uUFYVJv71YR7lYIuO5jSMMZaDFElCp9KDHsQiIpaT14g4qZFdAOmEJV6Icl9O3Sb3Eizrccfc9aGwY7gQVwXyRxsChrtm14JztqG3DY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0atcum0i4QNtLACAsw0FVBIpuWF1ECziyzL7ZSb0jaI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i+6zb6Dcosj99PCk8TS3wPgskDXI2zt9g25SbgyYrIPMmIPdn8gmeQWPOmz2C89haEsXaa08keDJ+2FhGvcr6wcjwQ1N/tVn+NYD3/BoNk9HEAgMvSWGQ/+xxyBUtxbtvWCkIRxD4zV6qIbbsIb5GQKaOW6Y+9qIHhBPq/3w9EzImHusxE32jIGg3rHbK3tiqtwREuseQCHWDLJ0Y9Gg3Uv9j3IkeHXYsI969CmN4iYo4H8COMxqsF82HHddjeewosChY+FO8SJkpqwEK/nziXcRo+Y0rxOZ3WP8Sms6tNlppGlm9oEdgIYbDVhN7cpBZQI2+Te4MwI/rzwUJ8/4bO2gFdYpyYRiL3Hmlewaq4qYNcBlEhBvaHFieMER/WjaF8sL50JAYbwI79YENm971y2hS+4meHKh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0bYx+1x7Nv/dmT324EO3JRLWEMO72BxIiojXgCeSN5Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8a6XV5TuM6p4ULlITLKd2WEy5TaHdn37A87qvhWhwu+A8z8AtBdkPXmzTwUk8W2PPlL6hqkESyf4Dj79y+tuxcKrSk89SaWcSWDJcIKMTBwpW0U1+aDx+AlTjII+2Qa8YdZee6DEaoMRL7hGoE/ldGEnk8dvLC/ySTJJSaHLmthWxhzWOQ8+DYvrJCyjWJf/coWrmUvhEfyJZpxWQQL1wFKtu5oxKC3C3Du7mEBeeaOCo9iMy3He1hNAybQ+exM592nD1zOsIpeXLo7UqF2a+rZpt2Je+lGd4hwfbEzA7Qwi00Cmiq9lHdvQbmb/1Z+bOQ79OmMppnMJaNUVO93D2p8DaBRMEo+Dg62qyCkl5OR1d5Q4FmWtB4sztk1rxy6paX7wiGqsRnde/FMPcCltWZszX9PIhG5m", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0dHa7Qf0ADJt54wGxt5k6Qq3t+PGIfMLiP+d44+nXmA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aHYn69TPF+X+7B/b1iu1iBqCNXfLidfG2aHIm7BRzpi07SLcTnIbrUvXsSChiMWD4nclHV/ATAiSCYlTR+NtMO/uTkkbvCWBeeyOwCHsnZaKFZJ/I3HJHS1r7YEtg8mQ5V7V7K5djPxantTYfxD/0JXNc3ANpDbRP9oO9e1LfQ1nEcSC8RMnz1W7wyR7TtYmAU4ecVNiLanjd2bLAGCdRNmNk34H/xYTfFsvu6N/MzP/MvSSpi1STWeNdeTxFQV34bIvgiSsTVLHhozI6XadRS/vBXEJm7F7WB1/jgYjshJQ4UUm7n5475Ik4ow2VkP9KxXRFb1MGOobVkRJohr8f/AeIn8jZIDb7IyL++/mohiPWbnyg+wtfvGLsdm4jh9HdNIs+75RoAqsZhL43TA2FS/jVu9PGqvf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0dVPkkGFs6hVl5MRDTIorBHp+sakwBKWxToagSEwfSU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bXo7uw0XK6mc+/uZWm7Aip7qKFJEfOCZ7T+TBcut/ySg9PDpT0lWLSoFIeloCigdfqXZzJ5NS1A59wOGtEuWwx4KBHBzIynTATmSwo3ZhuZs2jLVQa4o0eR6P3reL+Hb2Ets+ypiy6oa09FgimUki1QuyGRUvEDdPM8Fcb6ORjKlduKjuYoII1Ud0M3SUDVjcBsnIs/HV8rO74vtVOrc34tOmMSiZ1Ah4TWQQyqToTEA4UCenhSU6QMud5Xh+4NIqLdVhwYJ1l9ijqq8ir9p/NnjGOFPCjQ5I8FtVtBxy3N3UAzrFBfty2OvrzN4UC9Pt/aQq24mkATmvln7gezxiKIdmL/P9qjlHqiu793vlZ2M1lMCtzSvxXCPjIZoSnMBCRPcp1VjTkQ0xexD1x2t45z1AlN4oN4U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0df/yyHTfFBufJskZlB1N79gD8JMfgl2Zhyo+qBeZB0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UbHuYoVvaEbVtSObHr+uxcvkblnZ2bhxSyT0x91bFkeD6ueR2TJplzpWb32MkuBUZeAYqJSR+F2++CEsReld4id+N/mf7uyG/SRvX1BSGke8mAjNh20RUJzVnLksaO7YmWuz81tf76XcdVugBEACFRMmV9+QL8siyouauDlb0ezBjzkOUTunUkWQIVMMsCw00XmyVliZwswbp1tYjx+LOItqkR8sZ/9i97zRnER86SY3jmAN0sVn6KlmMRQ0zwaZHbUpsx7QTa4at9hg+tNu9I459swz03tXeTD7FvS2KWPDNGu8NXexUb6B6MWi5FfgbRjeA1YvZvfDevnKsJbdY2G8IbFsoc6fqJcCEz4N7K0xSbdMpuJXc+hZSeAM1SnfBM2h2XmIm1yw0QoPLoQtdg2Zbc9Ku2MS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0drOJlzYqPExxDUx7iMvuH11jm6qVkRWfMOgSO/NWSs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qNcF4ZkWmcp9dWRASH9CAZ1eE9ichWfTZoIN1wcDHUI+EWvzYo+2yBQiZpo/itYN8aRtQNHdW6zIHh+l6ki8aFtAtBQG9I9jZO3y5PiVbrAfkn8BRfA/I51bnomBodytoWt5qyyPSMkpGonFFIgHmFAJ2cm9lE+y3yFNIgaaFLjqabdC2I05KTzDibdp7X/2EQhGs11JPblWT/SuBZ50AYFkI37RXIDK6pEXVJ5D5JUTwd4jgFFKL31Fe0HPHf7YMSmelxsh07uGZRV19ZfwNvedbIz2rSXtFMULiH0rrTbvEbD7ltCyHIacjzLhmaRuSjli4iVPsVy/RMJbAl6LJJNvkf/ikYRCSToKjPojEMwYaSAcNOYN6IgIOutVKud7iU6ZfV1hfPp+rQpIrLO5VofVABXeHeIV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0e1cBu+FWWqRdI0fEmmbbb02bO8rwb9ZWUYEoCgTtzg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bYkwJOy/Wm1Ydqv+aiyOuq/nKysyHT7g1QzYWUc9jQ1nt9etK7i3U9o0xtUmirNcA+4dQMf6QBjy/g1Af2bOjQeTKxeHYkSh4Co1YPuzZfHRwW/6vJ/pgaLyGg7FkjOc7KKjhWcucbIHmCe8WDtDa+sumRlBH0VoVlxBbvh2hhvERJPyg89M/cxKLXA0gxxEIGat6MjqHhH4H9759ktAHF3GPiy1qgfMyj9TywhJdCLvqYkZlRSC/BkppiEEGK6+EbsSlcFY8xUFiqVxjCCB01Y0HnSHEEAusNOMGPstjdzsgQqOyWkww5ZalteG3Ucm0fRj7sKqpm9D+xrJKXTeCcWBbJB5CluiUqE1Th6hNQS5XEGcOwNJgFkHul8hWA0/OHLVeDoj0eDfTza+MpPWl9Vra4hjYaGy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0eWbD8p0OCjoSNb+yJsseLY0jttxIKh5+0HWa71KeAs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WAo3ucIn+TEUAILUN663La73co8mVRdqWN3lUibVteEV7At7Qaalopxqx6Jo0qNUTxLUndlRPq8koqSXgR9KbokRkBox2K2hnM9O6wVjs4uCNFbg5M8e1688mLZJzzYxf1GLNDfi7wN2sqKYEtgvcD0B4SsAksdo7fgSTKS3eU46F8vrLwrr+6xPHvj9Ge67iwUgLM+VQOJE5/ks+CsnnMMI9UIZI1U6pn5zkX4MRLXx18SUlwA88Z7j/rSICa8mcS6WydNfEDmCIiN3Qs8us5LrI9DWriCbAzxlE3+hMNb8nhKyNvM2rAhSTykB4lbtZk0oiFbt6hQl0fe8Z/2dwKaqDCWm7ZMaEpNotYI3DcMphO1NHu8nLR5JYNwsJtuLEPkYBQ4m9RAiKUmUX5hZCFkphg1tUyoY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0fbUMdUxg8AgpfL659qHcuoF0ekOVogIw4VYGvsSKt4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eqVDzZ9qGCn2+/bme43btujqP40T/k0iaWJ5T4JcikW/doab0zVKc5Acwcyvg58KE8KVom+YyRetZIgi3LFQ+iJcNuqq9n3P8gAElVyJUdsWpyvBuOiJMY+q0hruqXE7ZdP/ZXVK9xEXvEovltfHaoWA99IcbJXApcXkdEamOld38wH5AV/2VV3OfWGKTYALwNjhcq9ncVdEC0qcO5yuB+amDeFDqLiCpE3XYNMX69/J8jYX23R29XfxlgBTAkrX/AXmppm7ZwTF1sVScnki6d/1shXiZ5UQ+8Y+m1dLWldclSBbBy2/P5ncd1Y7dE8XUAzx6goJGJ5LkQvvXFiFBUByodBJCOxA7S0nNudPWsArrlKGsv/jijVeqLwk8GRdyiqhUZj7z3Eaj+LG6IkPt0TyDUqCxWjj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0gjIt4unMR2RC55DWfL9NfNc75oWPKnZn/IYRX1MkFQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rExyEVxtOH/c8SSilzb5Dg4mV/4cQCXN+7Yb8X+apJGGdIO51nZxnTpxq2P9I1uyiDqUpDZSsBjw/dr0pXADLRgm5KgJLKNMCW+0HKVBp5aELQAhYwuRuvLustx/z4hapD6NzZOQbjicI4Bg2wgt4sFakwXxazcHYG7grf7JiileOaXaqSqk2QBpgm0Me/FfvjQ3IGH0RsTX6am2nhiN6ceAEM5rQqvaNSgyirdc89DvemCV2MYbuPyPXKmnpFVm5XVhnbaJQkPxnQjX74/eUddw1juJnevPLalFDe4f5ewGPjtNaHkHJ1as2hnJI+HTt9a3cXbySkz3mltNsbkT6t4xDnosKSNCA2+826s7f/QvkEQGyyhOnWxBJJaXegxhlEM0zLuB/TzZskinLq2n5s6q3m1nbpc9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0gjKUqoHc4Xr6mLEDbbXWe1HusezDVbf+Ng7qUDgEok", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6W7l8gvh3+W8X2LtH5pn9FHWZmQp6zWCWiTmqichvIT69A8DBdd3Ltgey9bcz8olTnBQWD6VjN03n8QdBd3g9I4/QNDSVmwrF43UF96UmDmBOGcQ+0BCSm51jcFN4LLzlkwyVIuqY7H6Q7B28bXXOZqTQfbju3I0QUsM3s/V+aazogEnDb8sgbJgEKGNzL5/MgaWIMvPAv7D9Ij4CovEdG6ZTtjwcyOvgg/5iTwplrFwT0cj7HnqkUhAUOl1j9ghrw3UaoCwrO/V/dsVmgb5iNufz0zFctv21BF12uOHqz3HgSxV+9w4iKIEFuG4fDkQ0Va5acHci2ae5g4Y4iHcX108pbG3pLkBR8cFHf/cFUv++box9SqMDeuwyErRSx1yj6nBGkX4FNzgy7vaP6BGW9dvY7QSQNv3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0iow3A239tw1HuilDNObA6uTUTEiVaf16+Bk4vqTn7E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UqoPzNiaM0rofx2uVBIF/sbE6J2ojX9aL5sDjAcse68KGpiA/aGA5p009h0qqms1RRw49Xtog1RrAgR9B3e0GwjhF0VQ+vAU+Hu1LlUokAlYNCLZ0EQMo8y32SAbzIa4QudInvISVK0ybGBUXvKAY8kWjSp+yjuBBC7COBuH8hQln1kxUYOSK51IQfphuaubHDC10DKm/i+N7Zypf3Y2QSm1SJr8ieVqTFC71goj6gXNUUczzC4m9aOhoeQyfzAzMn/2WgS3kyPP7eKSVE853q3TG3bjEVeZ0znVCmThPCGehhMDaHKYeqREEh0SU86l7SLbz1fntXvlHQGhiOJ/F7t7TH7BdbvWW1JlVhNF4OcpLJ3e2I9p+mWkYZe7vJ9q5fG9m0sj0GQ5egSbk7uBHDjzCzkBODcl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0k0ueq4sH2LbsrGnk8ENam6uHVYDRWzGUTWqa7/t7WI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NHuE7SWuvR14q5/mOjZ6J2TfSOAppvKgy6X01uLumQ3xRbpWG58Z3p6fTyvmuOnJe+J2JKk5yOWA6dgp268b3RFi/OG6TEZS3pd7CdWgZU5eGTSTVm5h5t8OfHj2fon/SnLvRYO1uXupixIddK4fdHyUISb9ZF9rGKDas26/b+ktAGgC7jXODDSMRtfY6BmFwxkG1gBZEr6+nmE2VVcPn/IZo3NBHxgJJwLRVSV6h2d9V5SIi7r/iPZTzYe7F8t0o9DSXdESE8Zuq/9xlXIpujFsO4FgQh+H/vlFAb1NBzNx/aqCnqmyqz06LTAujOxgm4d3dGlmWAfyx9jy5L6aEYaBq6Wtnadl6ln0N5D9mPRe9csJ0mQx9F3PmRdsSAgILBB8lxmg6DCJ7Nl1rlE8+9DIT5y9MBSC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0lfxqLUVHMzybAaWKPZXAfzyjoOFoylk9aQC6puJnLM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wTCVYqbpRdLGE6QMJYuOsTecFrI4HkP8uIsgezV0Tsi7W91kqxAzTrxvw5voRg2oUv3A1mhayZidzbIu5mHb/sGFqyJsSqlfNN+s4alQPL4hTeOhdGFzCKlC1gJ8kiqQbQgixSQ+mp6GU606+9LGna+/VOlriyXbkr+YK8Gvj5S6IvCeXrXdPbFR+itmWPuO1cNElJ1LFkWTg9oYGw1PJNlJlHsC9bxLQSQX0jKmii3V6USaZgQHBkElZw8HGtnyas1zad98SEOgaomygyFSHWrLTU90iTW+1xj0belG0+xurEIZQ+7vOjlyTAY1JM7/Ir2ZzRBvoh/hvToy0vMnQ+l8LGDiWud3WBrEYI8hsXE/kfnS0gQFRTUqDZ+17cVJ0X7KRFOyEwQC8Uqwtrjs5/fePZlLuO94", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0mC/0gyGLLHqgnftkLLONuqo89N2NOw5zHlwWNZ8PlU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X1rCXXVcXoE6ncYjgdt3VfKyb7eipKKTCIdS3Ua9OdFpuIKXB5QWcTYPiZ9FZHlS9Csh5dz9MRFyijvFqzcJcJbipNmwAjU9k8C1vbRJ3MeFzg/sFV4R05vtjUXcQOyQ/kAzUwlcaFs8zMHCkiKD+9IkdbVmDYyoP8BsMd1xp4YZQxlxnO0NqHQMEtTant8mWB27Is2uyNu2VZ23GAjXhEg+0WURd1n1XaMiaf8lh9r+ccWj2pCyOq/eifj951/9oADb1N31fcXxiYAtDKi9rzuNtW2mPNg2aHA1jGsCExDYAJX+LDgauYdatmIm8l+ZwJKnIQ+ld/u9cpuE6/BsfkKqxPD9J9gnhGUhTHnZh4v1npZ2vhLaz+CAxNjxCnOZBFghQku7AiZrrBXqCS9oaLZ3LnCA/oeZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0mSEdkhznufp2ol1ux8DoPVFDFgijdOQXpVjZWDrqQI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S94g52jDgdZ5EqOBKeglvfXa7KdhwmOb0YerW/lP7Oq8rvdxbo/BmuEeKJoUd/2AecIKbjauIoWPjpdnfx1PH/Bu8ecz+ecc9PmlkKAKUn1rvmgGHLtEN2FKrRxF5szQ9/UXv5GOLQ6lWMoXBwUCfpNwOenpCY6y9GeE+4mnDpF6P+5AhAE7yh3S+uOiyrOhnf/FKfRZAcvN1Hh7AIUXGJnsGU3GUwUo+dMUBKZi5ZCdD4aD03gIX7/SKoSoMy0H5amBI3AFNXQfH2HNBTOIw9nqBki6AfJrGa2vbW0RPgqAT4kfKa4SBAyRsOKP2WS5j9otLTmvIUB4Vv+wSLilW0xU5gDQMcaJ8NdH1zyXJ2FiYG3Q2nMELkBv9PYWRZNyUAeALV4eHOMr9IttA/CcSoDNT7lTHA/X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0osmX7mGYMSZSt+Tsevcuh5OKlg//GPdEwQgx0eQFC8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e1YWl8P1ndySQgHYtJ/YyOiBSrtCXPeUtvaZZ0g/Avhh2HeM/bFPfR1ho0a9NNG9mTlhh+G2TSkfjAixSRyGpyeXFjc1Y+PQ/+t62o95TFymcrGs0CiUL3JdWXrSgan7hI9Iw6a4EIHnDc/c0QtLDytcvN+2iaeZJziMxptcm+9557SpA9jvunDWAF2LSOFXPXJqbp51KC1Ml2YUhYOs75Eb+rqRfqmrGh00r+MIFZ9m74WGURGVy0beYbcXjEGfWkQEy4pUFScMVLnT1+AkL1+2ChlAF+RZ1funK+q7GlhoF8buUqZZT0i6KekZpyRD0A1CX1MEMgTr29xJTx9bwXI4j2GpJd0e0tVj64dVEPwewBEaJWL2ntBhhPJYpAlPRb6gksMiiKPWrWbFD0YMWrR1Uvl+yxQK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0pqXKq1q2+OrlU2ikVkuKz+ayN+TUyrmd6LTG06GZjg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DrQnPyBzMEZdO/TgNe8S+c+dXoUR54iKoxnC2j48WniuyWpWKxy+8l/zZd4cf8PxL40LDeZ/Z4q5mpN3DOMit3PWrbeCWhZvYC48adYzTisM63upuCRveXwog67ZdV+XXUGeRn2WO7PnAM8/wREwKvzGbSXGj2nL09s+29dOk5oAZgA/z3YptmkWnRQaZxgYiXequ1cFtK2tyeXhevklxWS4/MigYhPJZl2/QKM5cufJgdaofAhnTIcVDvzA2baIrZAkyOlEhgtlM+OzkSmATzfzZhPindA9rPTQPv/Bsh4FkZzxNmGZg4B1RfNlbynPhJY+3vC7r0k67IKr/4NxvXpayhnJybOJ4QqwXn5WuGtPJ8+UpHFo5+Sf2EF1QBI/nnfIW9PTIpjfwaVHnxCm8XeQUz71RX5g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0psebSNbHHImQKkmYCaoXJ9IvjWS2PwkMxR/FJ7smtc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4I50lXjInQw3/dRRa1SYzcQdMGi6ee604hUnugNuv2oJS3NoH85UYOBRzmatfa/JD4NkXQFo0aR1/miyWSfabJAijckHO+AdoGWTlFbYQZEGEcFS3gyDYRvB5wuGbkc7nID0cgcWT0BUx4uKh66xpi7eXqYZQGltouhh7sOhhGZFoTjqSBmgtCjLcTIekSE6vHYFPPKkJM6bpFmdTg+/jgSt4/l/d+NECkWUvZUgu6sAl21rdDTwWMBH7iegX3Y0b1f6D1paNPxI76mCVyVQvvNsGafMPbUMnG4nrdZwAn4Bvi5P2HY9hcwFSY78V7vN9WblzBG7eo9vSnhuKTTZfclVrASKLXQPbZYKw/jqd6ZMvjjClllUoAmVZZZZC8F6MQ6LmWq61zVHd8ms4z3VP6a+jFHLTKra", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0rQ2ZWZnDNf52y3AQBykoDSFewi4S8YQ2TJyPTIK+S8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A/6ewFH5Z4ub5ytPACOoVMynOc8qr30xzn2qImvZKJl1z++MZPpznUdXfuOy9Qx68tVyExZ9SO6cHmydkHynUg6dNILVU4PfAWjVzcEXLnJWRO3r5f/7bSNwsuVycAznl4gLbvVNeiVU1Xle6b1d3SqSAhYnCzREdUum0YtfiVZytUz8p6icR/UY1E8ZVOvuQXgT35aeU5YBisTBra4wyQNgYbzIqaGavwAZhHiyTccbV5a1FDhoGN1fzMj5CaHsgdOBBBP3h7YWUTpJZXlUdiqRLdVe6O9YFpuOfKuhklOc52VwrSNsbv9fIzHt5WxByg3SDakIq5A/rBrew4hXep36YEYWONZoXhDDZe9MxW5KmKT3AtD6HXvtK+1mhh08u8hDXmJCiQfb8eI1YOtk821lmr+AfUl/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0rtUZvhkZCKtKFARKsdOSpPjl3VHvFSFJ5tc/5Lm0J0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0EhPnpB1dWJUD27yezPuB/jkP3f8QzRhalN11UzJy272fg5vVm17o8YaI0Awt90kJ2SYKfoqN5+ZdBJx0wJkFz9MpswqNB0LTYvKqbsyQSOGGER9rw77SOXnt+IYKmv0v4CN9PeJ1L3+Gtz1MXJEaqDzOg19IjoLJtN8N5mpMl0Ptld9LbeC8b6WABoP1EbnesInLhBMnauAJhpiWGOWmGEx+xQrQHCHk+wqbuOpTJhIre6ytuDNABk9RwpWXaZ73k1F6zqPW/cmQhCndS8h9DMJQ1QcWk2rpvNT4OvF7DLoAbBgxlgfMxLtJGZK/i2QxZu0K8DYBNokgOUdvNVVaMPtO3771PdlFGDPmkXB2OGrbUr6y9a6mtnhsnZtOwK8xg0LocdCD4FLoJPOnGwsg97S68SFj6g6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0s1FW0eNkVxZH48rl2cb/5JGV8XIrUXXbnKuVR6cXpg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o6e9maSZ9/0awnDEVqs+c2nMscfOXerMA6VNxgevjG+Q44Cp1kMzJBq6PXwH5U2/iKcCboOTMkqjzGIjPRRMWRDQs6GFbSjzbOfKsqeMFPuF9/A3oWGfDjaffXxgSET8syJUgYcT+HzFAFOKO21HE2PRAtkTNpGrvlGbgSbw0sdAmLmZPG7F/FYzGCRsxcoPeCcWLyaJaKGWX8knqKtM0cZ/NyIa3GBj76tvDtZQ7oD+ntv9jSFasUF75qxboKf8SM2LH76Xmg1P3+SMrG7l5zj+GhXr1IWLxsQoTe8JMEqA1CBABKu9kcQX3dwHvfOAVk/mlo5oTdth55No5+J5HCfY5IgFovDiML9vivpMb0N+TaemN4g4tzKkDA0+rSSGMKbULlpm2GT6AddY3BMPjhf/wA3mPRKV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0sN0JfYn7QpxtZVWRzZFDLCqs/0oRK0W76PuTJuJ1lo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mSdxfGlebD6QIuoN0Ldsb8hqhMy7erUF68zNkYTbdOqgWbrQcSJzTk+CUgBlgJSq72XgW0+c+CKod91vCyL3XlvLKLXOG0bdwouJ/6bO9MELg9UzfJgGgLo75uUqZndKJ+7gcAA4nB1FhA27dkDyrZF35JSSWT4mAvS+2tZygewAmy1px3KmWKq3Tc9jnoubPwxJs21FgeuxFt2VHCbJbhEkO46RJ/xlYlQIK8YasRkKjf+RUNKoe/MsjU8NJOtc1wPPpKOjhFJJNNA8EDMjXiYXoCsOxzwR4neaZpeVNu3zN91NSLag5JNObh9sEgXD22JcyDEM13UgJyQQn35gms4MsYWvSPmL31LLxRrtToZxGSXLDicQhiWIK56r+l4wr8dVl9jwkf4tIxS0HdHZpuDM4fLJCq5M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0tIR5im3wkOi+rj11XeSWyt2PjBsfL25lJq4V0x0ZLY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6BWeJvLtmTf3tclGJ6XShrvze9Eb25qWVEUrJl5bKpwbiGpwc4UBLys7f2PbIZFD9gf7hgzEDZMkmGQBpxDFmnEExDeYjYHmPF/Z8U5MVt+oucijPj/K+FJu20a6EKIuXG5++V7iEBsD+GZsrqOv7hrkzEysHjGEInsCxyEdDlrKlb1ZfSreTP5npz6PS3a6XMwj/srUfPxgHydCdrI3uuaphsrvu72tvkcxdNarSeffGyjN9hFY6/sCBetyFw6KFtDiqlOlYZDFDMUInv8MbeECQVWy5zEcOIV+AV7at6GB0C8Pw9z1ncWZn0TGMBKpATk2gdd3ObusZf+R57AXJYIs46cwosjd+4iqDXerEhDMWR3MX+TuQBEv2PVLEZRAqN3/haj5TwvkQwEec8lCn3WJVH0ayOJi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0uqGZ8ClZzsC5eoMVF8aiJHmqsOzi4G2ODVCT+7MaSE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fy7kD2Tf3r9GFk0Ab5X99nRLhQfIVmCdwxQKPSLmX6bm7uCO1Nu2Ih+wym9VZOWXPw7in7Is4F4jgmfdAPOJJe/A+bxmaYys0txtIhhJU4tVCYKpA6buzXOy+MeZjWZz4Bg86rvv2onnUPM3h3wfCsbXoca+qIpTLI0KhEOXD2U21MFJIZCJIKN2/STpN/FcknNwTajLGkBY1yMgKUG1oLlRbO25DNkn7oj6yF5ka8QuvOgnqeaMbaFBDiiVTiJvMNwIi1FN4b+9FM8JuBGIwN2cnd1XhXVlDpOs3os9RDlsDy+gt//vgN30O3HWUqO4RTfOxCxursG5RzRqmediB4ryGClHBXG777geBJ0CPwOxPy7uXIJEmjRoNm3Nerpi5ycmMnZ0NHfaSQbX77BCS3pWEpicnlgm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0urLHFz8dJrUqRGOhKK7uMgEGIgQchqJS6tSVABIJwM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TTG3yo8sP5AVvshpAloTVNalz3NIfJrW7s/Ub31JgLWqgzEn6ngEzdlnROqCdj5nRi65u8yWFNsd6WfGopRtNYJ0qeqVrkmhV+PDXX2HJqy0avdFCzRrtpVyK6txnWYjtetSGmfgZJcF2qwlI/ffXn8ZBuZ0L9L6J8Mb59eiXwdwMZoWNDu+Yw+izIYwxtmluD69KZ8sl77FseryQNPDDRWuW/M9g50iSO8QzYZI/KopSwC08Tft1RoHFyOSd7sVgjMICtoC952vTp923K4tY3iGZH2koRvjmqf52P38qn17xROgxtAJqlRrGDeizp3DlbSyv1Kc9kScLrimpmRRzEgX+M6RhWtko21vlxKVDcvCbqqjM8Aty6I6Yhyz39RAdjyosht80SUboFKHlpgHqr+n8jVsls9P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0wwEZJFyLW+89JYG2o18DrMUXEbc1usnaLETVSG7u5k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "csyMOof4o4OLeRa7+jXFWRCl8s1pwnpiOMWHhCdO10DWyZW6Z/TKDvWbs0v/W3Uza0pokxv4SdrpdzC1EFN/55qelmpMFlk2K99wEjJCB1vKeyI3p4x/WA/2+NhGC4NaQsOlLPBCJe6w4KRRtfQ4h6cpWyhn4gS7qwHoK1SmUB87iVgfEGJS9afTEZ/koIBlzhLJaTUno+v6ojCSwajp48KbByk3cJjZ1TWABA/HWayNvJac/0Xvmx39A29YKIJk9Z5lA9azlpUIs7UCeEq5/hgX/SFt1X87D8Jrlw8XDE1hMrmBpbzYX8d1CirMQdiCqgJs3H3M1iHp59Q1QSaP8WMLGeR4k1OTiV4wCYTBdPAIln8KHLMMJgbCqX1EBc12gZQJwWn9/+bCzPPUT916NNfecx6JJupx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0zSnkidLnaSc+6FG84XhdeCLUgrqlvK3KQYyKWTYcAU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ko1jYIAvgKeeSmkE/w2C9/nqET9w5N/3beASeYU3TcgjKC7vbPl47M3VRr6V0Wr0wJYq/vbWCQIstGDxQYmsfOg6zDA8ShuXXXQ9tmdeBDtC4skHaWICCcRGTsVfiY5dsMzdS/gcbrheT83p5t6mBw0v1iCuXw8m3C5lbMNp1EWSM7MQHjhdoC4k/eyrmnSWvNx8A56cUIgTr+hnB97uf/58HaWwWO4feoRFdwz0T9OZQXo07FA2Jq1vi3lQ1oGaJy8+qQJHNXfQokfV/o/LRYJAfk0PTKJknLp/SqF4dZJ1c4zv2IV7DI9Tuy/qfr7tc2uw5+hfoHmAJezK0+daDCjz+f+B7of24LGiCfplN5C0b8v/9ymZMRm3AMT0basofYo6S1t6wFkmPnXIs/q0RwICJTQYv8U6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "0zq6MNN23WSRCJkpTDj3KgiwxgCqcwokUSnXdCM0ibI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sUPLBmvQwif+tYkIaF8ZBSCUep6ht5IdUBnjQa9nSrDOcD7eeybJPRs/JyFlRuvt20iVonDO87yYR3ArQiWZfwPWjLlF5ttInaVt41cJccS1AaWt/Zq2zBWhuYvhhvxfwIJAwd9neAXIxa3zhbUn6EunqI1lXdnTmYKseEUt63S0MxddM0xDLHFLSH59X+UuGTY9B/FbqGhVznZuZG1+kxLHGGa9IecblPxwARMM8uFG3vMPjBwM2QdI2IoL/wlvBNMjSMKNdkuPKnuE7PhasP0YYt8MxBNckpFDiLEATpYAWbu9A65cailF3Wyn15XL3DAOjioaLPUMNJ2s622JxMey0g0gCLbfznf2geVK6XPWY/zkLlNeNo6oz73M2BTwFxCyxB/dHVATpY86hT65BndBPY3ZmC7K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1+MoaIwBHsBpp6TZxik4oHH7HrgoFAZH7K2PqZKEfSI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZE8bUAWQv1WE9Xm5F+18H+Zx9EV/ZrKr44lBCeZGlbAHD6TxZFGPSKL04muAmgZ0Me5cbhEGf7vN/tAK2ZjrHaZUrIcM+nMQh3sAUocgdIj/eMOwlbh+WXAkoelWIaHeQzz0zIoz36fCpT7o0ozK5UOSuhwnOQWYbGzFzaPZKc6S5id1ZAk3wQwaS4lsg9sKMxBHcaUS8IMDnL8LMveaETGh/qZGwsgzhzS6ILuRq5qNNlmo/gVHWwjJBOSBpVgYWBJJfmH8cmhqWGYFg1pPklKzM7AefI9XJSdnDfjzpagLDyRS6uU4Ymy7RlVeK8PndLMnGxRT0N0DZRSbplThXGJQJWk9BNR7zXAJyBQhgE7fj4hEYO0UCWfU3PMdm44k3MhHpuirQsdcIZygtiRJ8foG4J2TKEs9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1+iPY1V3hk41U2V5QwI9yPIyKpxnFwkC/WvcAticj6w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OxCknulD1BQXY9zP0Z8Qc+C2LTxxPvd5zPHQ021VzlGvJf7RoOmYEav6r1Vm/31FdXV/AOlhhezuRGo8O9HDczvtrW1LXdvRzAApZAZAtQkP6GtQYDGYHCCZN5mhs5yRLSxbwrkD8kfMFPNUGdSkiKdhdyo8PUvqZtNPelpJw5KN68knfGdNz5ES4bUnDfYUgVl1Y+cgbEtq7P3yWfsoOi4ln/hH2c/+PPvbyAaPVVZD441s7DyHCyIaF7oskaLvIA5rUtiJpSNbxjlnmWvH71aQhTIMRZzirq76QxfBPpKm63zfmKHOYEFrCrZ8Oh+09g1oeHbE4JUFg20F/I4yqu/Q7TapDKkao5cD9xXYl9SkKUp3BDT6dHl8el1/zxWLpzZhyJFfWJ0QUBol6MbAVOroW+SGAgnG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1+uzqI8BR580/PqpltWXmb1/TYUZdQgqFI3h1OrG6ZA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OCRew43Bd61xKpJmd6MqdL3F2q5aHNkdF8O0jgBIVuxeTjtv3JwOxOWBn5bEKFjY8h1p1yfvdOdPLwqnieTJIFflpiVtrl4ppF41GbcO3zvs9UhP4zTdgj9YWY+tj9qCKBWWmcUh8EmFGOX1Ag2Waez8bVexPKylyTDKw3Ay1Nu3Q4Gf+ySHTtaPBSRotE9SSz93jwHOhF+xMt71/yi/nuMuVWEwly/ogYtNuZVAHEaRaKJ+T9U55+k+faIjqAQryqrTDa1LgpzwWIrhd88Y7Bj6tZjhW/dMMAnSADNMyCg+9NfPi6nt/4lIQxmyLnR8RknfyJE7eE9Wao6xFd6luhf+ysTmIIrTz7yKxWCGnmcivf5o51/5BTObj6Qs2m1JzkuWS2NNyG0qn7bKHp5zFPgxU5WSL0uR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1/+XkeezN1uqc2JDfMRqck788fWopiVGmBJXx7HpToU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v7dvi+eZ6T2pFYsLgTPUJf7Oh/1blAGH+xLuI9ThP3+BozDJ33aAT0dY4YWZwCcuoejQRLesOX6tqVmZDdtLR64pacfIv+P2+NqUdZHLNYynjAIQpK5XLaCMxbxxQphxJH9iV3M21tPxQb/AW17dGymjY9Pga2hxpt54usPGe3fsM3XGRoWnEnd9JlgJuxEbRg5pQAWxhkGDm2NXazWd6AooqJAlRRGXQlQX6IcCjM/y2HXgcJrbKBKsa3yCCntBtKzvyeaWKD0ChDqNazUc9Nm5GuoBQpK/ST0+U9tT3CeTItaK0hx43AbyQ5yuIKfLNxMsEyEE0dCpFaCMKSpm/KrsyVfnyArwty5gS9GcNkIYa6IKXPmot5N/33Dk3zlK2jtSQ9/MzOZz7PnaHDssAj6J4pvZo5Ca", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1/I71PKtHPY0WzmFO1KeHkCjC85ubr+Ihorhr0DL//o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T8+CrEam6k8qpxJhF+24N7/07D6mU9/huv8Cx6lKdate0+pG7XI7O7rh8I1/HhA6tgCi/FAKqWnndEzkZRqgf+z2Uq1I9vtNpAJKUnMgDLfYew8chKOlFLA19bJZPCxh/a6ewcLI1gDN4Rxx6ZhwaYicv4mEwrCjlMqmXS9IW/2F3bCnqyhTKHHLRIKiYMDEzEyPdM5paKWsRDmG7xYe56CHK0NDhZw9Dhs6GFgi2uRG8CdMN1I3C4w/ZYpYdRz7BML7kSCUdnywFilKRpcpwJERWN8eiVOfqk8WDqcyCGVkCr4vzXU5RanF02zZsTBMQHJ4flK/3kPrU0HJVwMuZnsC8vkgOii2mOnnFQw9z/WifJNkVzszT9yT+lZIz2SjrNGTO7Ft7ZP7jB2NsiaMHmBLHj8cgFDl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1/m4TlNI7FM9xQ5BdJ+qYAX04pY/jztogqQRAmqT2zA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QDOJeoR9KiPzil8UuADY0eZgijoRBnwtDwdUFWEabDhyqZt1igAgtlo3Nj8Ju6zpUd704dtxqMzVfUbJc0ftQe+LTci2KjjlFsndiIW+FbPr9EOb2iD6fyDiDl8X/klSX7+cbJcb9EdAcBbAUgttDsSK7RcA69JYRtDAYR5AgGSSdVhiLiY/5YzCr0Tn1ZhPOJxbh6pIuxkf2n1AA09WZRFmqON3iWCwXvzgkEpKD/YttIaauE5zQOj0n60iVt8EDVTeoy9cXdmPi3rPBMR1IM4soZ6SwUwtQbkcwJxS6rVchQdAWD0Eq6TIGBtsGfjzTQ97cVZ0vf1zYKcSSCO9VTrvEZI6HOjPxjTweij3IWeGjRWJCg4JSsN2uJmrv4wzexgnu/sJjzOQTAKMptQ332VYkYY6vP/T", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "11MS0Y8U/iDshKwhXa+9Qpo7Kvf7SbXsOw5ooq2Cafg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ReKJIDHMIcBMmy2Rip6L7ufEkErtug+z6OcZirPJGSg7TnP52QwjX8+5B+fZkHYJXJ+2FdBZ6p9ZRonCl9nVnAtGW0siV3bObS6kMBRYb2FdzPp7ChAoMQzRaP+sZ/2kEuFd3X+nLCv8bpJ97cn3rT4Leioem8vcY9owcss8wF8xkZUzhEoG2wMWVOLCqfQP5j8KOo1d77kAclPWKZSGYg2f50V+BdGUCXwh0yjCGSpGPsEMmHTumzfzYjJC2SOBu94CdpqVIegocGgYt+im2C9EEvutNVu7/Ml3ZJMx0p1MIMyUsDMdlmqQim13t1dWmEP8WC07VLLruUbNzgmFJ9AXMUDNmnbhTFNsFWUa9hhP1Xj8AhSljCkAuUeqzk4G1LWLiRRdCRTLHaoSllY9POA2QwWvCdnT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "11eDNbT+OdxepqJjqjXv2D2chY8rwwkbmc1W2J3HBl8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0q61nDwCSsWaJHgzqtyESBlrWDbCuNoZbFCls9ChE/V6MXCTyUE8n774SHi65OR6XrnbkGbXAlxYkm2COnU2lV0Q8uZqaipdtxXr4OedyF4j8UefCxZJh31Wk9BivcCFIQtNz+IjJR1wm4OH0tJIoBplgpGqsQowdEXnOgirHkl/4B7S5rJeVXm1Vl4N5jswLTqqDvq0UHS68q06+50xU9/DztiKUYlIJ1CyIy0O89E8B93p6vlYR/2hL3MBkmcbNv41mymCggdPxjAAwI1a167W7/bnFxGRs4WtM6eNu/MHrwTlXzpPBc0iyV3WXfoiJOK2+Vwyiu58FighCoyk2XLFyCxZ1L0IpIfcCwxGpp+9nB0AVcxv6vpqR428ojb5+bf1SdVrc6u/VToOCQsCm9LKK/Iyi3uS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "12UU2+hnC6lQZmfe5igmJ0YkcXouSA0UdA9gYOvIsEQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5j58RvUXforF31QIIautotMv0amoHpMVJTEKdGJ/z9m36zDUnlzKUYjewjxeNeZt7ntSElfyqO9uWb9z+EhGeSXoiIOoUrGWXgn99/QFC+D4optb6319FG8Q2HU34JikbSCZBiKL6HSYAx37FQ6dMiQVYXpd5zbU54P/lBEE1vhBjF3o+L/Iy403Nvo2yxEV4M2Sv4YiXY2TP3TeMsFi/8vvc4ph7Zpb/UKWMW+AMmycTWw7DW2Hj1yrWVbQsXeQgHNh7T0Un/eA2HTWA75bLGN+F1cmWIcqlhQs/qxAwnWlXva98liqK2RY6BYA7vhcKR5CO9e9d2E35U51JGlz9QWAaWoTMJ6ODXBpzxRavJ2Md3j/9cPLHhCYkt1sw65+jbM0eR9sAJAoyT1gcnB8ffsePmvOvGBw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "12VNyX1tzJGceRz5WfI1nJrNNWUQToCFFLSdpbtuyAs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lWLXIAWas3tzZ7NqZlIfU4NH0KHcL5LgMalEKchyd59ighDHLCq1MKizd1fIM3Hylvqy6/smwcdUVZ+YKDfrYv3UOkqCwjivBfBiLuBFTqd23DWoXyZdA1z9UZx7a9sBrMfmSQurAEQlwHISaXLx+mr0wqCzLxn01DP4Q5E4VgJBdrH4pD88zGyvuGzGkYX18bbPqBrWH/MDj1GSNwAMC2ohEhPhCfILlwuuy0myof5Xnyz0W6AuNvSHRZZ40k14b9PM6PidYCb3kTrdW34cyAWtUdxXCo7pQmeJpOZ0gzIIhMbHXW0Txo2Vz+08REjC6+L14n3Ei7rjOLV20BlzqAylPeLzN6WId2fjaaREbgdPQ8VIDqyuuAVZ325E9m2WLPpWBkjVmQfkinVl7O87hKDgE1HVLIHj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "12bEl5TAFvCOsm3+Xv3fbjQnC2PreAie6OxLQ4KRvI0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v+ZJyu2Xs7bSlF5QY2AgnAYGOjjBuqctv3p6BCEwCsc2u6PYXlFSHU2I2MxJiJHbdUDR2xT65vxZFgsZ30BEf0eflKAmjJ0jV269Iyn2BYlnCNsU2Vk8oePB9hd61cgMA7Kye0PzyT17q998TuvUZFfS4AYXtN9F6D0bs/jpbKq7siqjV/9iFi0pSE73MNsXPLK3tchdnA9Z4KKLmfI1tSVCJrc8KeVaro8C8ah+RbgfrMCIBEacXDFHJm8QpDoY2xG6+iJciSP1AbuR5ki1s9GsBl4WGWZHaEdf+cCyPJAFwUKNlTtiDYbTvH465LYu0tqjt1vO76edrjsTyf+c4OOeyC0JfgzjWl1Zk8kDc+RcJz9g1W97vmjGe0dP/evCedjgNZp6z/2B9MkchIeD+9TubOsuCN6v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "12u5HTA6wNTtrbooH/LfuJnj+33H8Zfk2SjkgYrnc6o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r9wKm6T4qlX4AhoMvdjJ+jTL8VMRkvkvmp8zfgayvre6FINZpGcR/nhUC03klWur/G94/h3xdRefUqHY1xFKW4+BZAMJZ3TZG0cpU5L65na0jcAqp5mbHBzxZJw9UJm1RyVZd4eabZn8xOq4t7OIdiSXTqC2LkRVp98U1RddDW95iL28FGpr+PqaFRChD/wOcwMO9jsuyvFrF+qxhP1MSu7GDekIxLPoNfzxfL1UHyFM0MOwMo2X7BQ80/jwC8RABBPKKHl+1UsiRb5spLiO92kl1ayQJ9EArpzvGBhwi750aPVoEm94WqkuozeZUkaGpNwLukTVv2JHvBWt4dGWD5YmnFy6lVWInce20gH3OWSOR0oPiEqCQ1Kr4OvI9i8DHQ7YchzR6z9cPiGUY+wv6C6nIZUnQeQW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "12uC8FQbK23i01RCUnlxkAPvzmbYNk12BHhMXwmEDY4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WVClbC81ebE/tlfStTenEiF4FkGnF0je05gqafWdN5rMjFde00MKJUnnUkeTqTZlJE0rRBuvSfZOVTnC6aiUzuUvfqO9SUvvgC7yhd5xAfcGn03DFIRBGSwkuU5HOzuADgrXg9LTH43mlfhfTVnQfZESTOw/LgHkZwBD75UiinbRHWqgtIpn0Nzzf9oDIkztPkNX86D5ZtWPyexsWj5REdL8BRHFJGweaaczsL9UnQukBTsV4xsAYcdVvKf8jjdd1za3Oqf9yWT2v8XFP6qdEtYV7xid/RgNuCo1sMaXJTTGbvg93Om6JTK1kkvAAX42Roedhs59k7f/qtKAUU9DKnrGbpXNSkfYkxz9HTiir2hkdORmf0oy64Y6evVEk5B6tPQ5SG5TW1Tovtei8zSqYIb6Ew/rDVNY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1576k3rX7hVORGK2T85f2dR5fTOe0qcERKg5igp0Khg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LSHixc8c0NQNpJgympVuKNfzgoJxVEot4EMzxgfxj7tApH3lfXUf6GHekJ4XcB4wb/1YMEz/VYuH6C9JMPS6+ZlTNpKXq3ifyXPuaW4TTNUiqm7A1ZFGEgvUoqhce+9kmo0nJcxTYJ2S14gk4Jv3EOGs6wxqEqYnVCk4mVb/QYuD+821eJitatDo5Lusyi4jP7DHlPlgBc8VkKD3gBh1YiKsKRstXORZnP2ikXj4zMf+pGGyR1VrLuNhhBdny59uk4iDjc5itaiH0E+mFA8fMcVxsKLDim8qVoZquhQCWWL/yqtU5lptx8W0PjHfIX+7zmpL1JqnqmIW+Josu7VDwh5jNWWsGX+D6ZVf3i1eMmlnlV2bVHJ1r9LGtKmCXiNYr7tfbOg0KSE0DgVsempMya7RHRtkYszU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "15CZBOq0KcAqTuit1CvZRBcdLl5o3/Olc4NCQkvm3QA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NsVLkXlw6Smg6Aij9tTO/6RtLIg9gx05ZhRTJo3F+cqvVJu2w5oN2DspALUWB02Md8DQcWDF07qR90bSCeN9DBSIZCSFTAWzfIN5gE6uQk7QdHdK0hp4L0t+Rhv8hyrngPKxiB+uE9Cv1vgkIok6kESiKzp+mArpfKYAtyWY2bF0e8mSUYMESieZkmZu6X19+A7KPvERH9TtB7rhqlCmpcVtI5MIBkeI+5lw2cd2DigmRy7cJLPqNnvDxpHdw07mh2/AkpHyMjqkCL9UXrxiPbeIO7lTOM//y+It1v9PXC3tetAgt2A5mrek1kmt5QKwJLVS/iu/PgdL8LBLxOaTzrCW5G8j9JJ/Hz7aBtdWUEq/AGMzUj46FwUH6GL4nB4pln6dV4zt42dOjca548flj3wA7F8PhlQ7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "163DdF0sXBknMFCDtYigZQU1Dcv0l3PdI7A18j/KpAw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jt+YUYdi5D9YJc8jvGQGyMgddtgQgX+iXKZu1LS52aEZsXp3mK+XwVP5sSbWfluKeh4KFzzVbWAUzXFvlKILC4luysTVET4njRn9ej7+zaen57yjsLtAhM0I9ruGro+1IuJ83pPQRVUq6RBuTs50rqxHPlukm3gD0ewlbJO4v9gcOHwGgeVvrFkM5M/qTa+GdldMHi+fYylp6Lf6yqnPA3CGIC6YuA+0Qo44GWJ0FwkVeKTKeSaYPH2AJKiO2Jc8H8ZsTjeMZ1TxPXXgdIB6RnF6I8mw8nRUf0rwSZQpSpD7ouR03JLdZB7C/XHstbNRRk3vmsdvxs8xDTBUGvqq7DlyfsA7T3ENRl5ci1P1jIedeq2bR+8XnCgzJg1XdP1VFMDaX5i8jYtJKiwOtp2XtBThS8f+6ZYL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "16hHddu5SL5Bac24WpCcn+aHpe6+IQ7Otn/VAgiu7/k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XS6j7GgsdlmuuVpedwtd3+z0Y+9UyxUGQ9OFany4awBytP9FXeBFp2HQcsyuj9yS7IcEwql7WDMLlCQrbr+d9bt3v7xFVMl0DEQZB6WHw5Xc4aAHPlmi/ZEu7amLa0KvPC22oBdFrIF9LgWxZ3w+AZniL+KLSwLYOY7wOsPT33MhmbmRoLY1XVW6GymaZsm0qoBHlbof018nh/MGEaleYrQ4pB21Om79wbdwLJpHx+hpRN63fwWBJgBKu61yb58uCR0xiU96C+22gf6dCZK5ODDPcGFKlIJmSo4O/zwuNbsTMzeBEYz5fumw7DsA5TuOmQo9zt6wP3NNi8sOpFU5spngUGF/8CvIYFrIcAkgoM7Cpa9IHfNfWnqib2f0BOaXqe2B6LdeGxilztcU5MzvoHVMnIHJHoHB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1AWjEvgQvEFmTJZdkX1VIDCYTbWIVfDR3rlEf0Knm4c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vmJiTATVXph/ot2eGFAZHgyNnsL/wJUOZgkvrDYdxfu9KzC8E33YjsBm0Iyi7zXDVNORoKLR0NlhbNzMLLj7ysl4OsijWaeeHkFg28U2wLLNupwBV95set6pDaCDt2SPOiZ1FgNKkVe3Z0Yaczta8zOtYyXki7ZBxxte1y8ThTnw0stjL6l7pZ+BYcNRYlwwNkEKVnUBdbfI1W6RGEKrXnp1H3bxTY5WxXWBOADqBssl3zmlZ6/G6Uo3w4CavURORPx+ZPVaQBrzaPkzMw8jKvXA4M65cSLxVGyRTjuM4M0sDP18PXo+yZKchcQWHQmz70dcvR3AJ+ZBRrZ5gN8QQ/hMqOx0SJ1d72qu5pPz5B9b3mR3tHYoI06X4vTH2mtt+q04vYud0oAD+iy14q29bt5FRKJJiXRp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1ChRVYCxa6iFQJnsWbH6x52Z6ULZR4ow/u11+Ay/Fdc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jcLYo4PKCbGUYJCOmrtkeAOzSE8thHkuM6/6uGJNthYQTdaUbI58Ph/xSRdBBM40PxTvXQnCRJ5Ygtm9DVIaDu9/0755cDHKSJ9ZUA2KInPVjon5UtYr6djS30spB1gAYV+kAOAujDPjXW+OsBALi7U/1XyVikjYLzG58iU3C1i6TCnnpTh0TROAfjY4h+jX0Nchj7yCw/hAtMgWAHMBuPZj6gdzTVBE23QlRkp901LkbdpcRqPdOwwjsqh5SaYdbSUTpBdW93CciW5q3EwEZr+N9y7yVz8QJQyHVNJJRb9I7R/2L3cWNCTVs9Oy8OCZr7hi3jBGO707eb4XWUN68bw4yAEkDzLXqGL1dhfsRSc95r3Ew4CgtmoJpd3KncLblmOOcfFE3Mq+fpO6b/2O4iQ2JZRqQPjq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1CqXu2RiwBpU0P/ZevLdRjxmjKlCOgDAEkZzpOiE0Ds", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iAjJc6KMOTQwF/vWxODYSSE3JcWSPLB0QJi8BkNf/NnHVhzpDmRD24F9GvZQ3cj2UMYnyIvIb3nwNX6duWW3ujpJYjYvThwUJ8+PNuBPIPVFQYHgFK1ZNktEj3CQIP1QsSJf46V7qB/ESd5n2cxbsRSnIjoQZYIBfaWIKwANBg/97kaSSEFBMPWJV9MZni5aAjLn3PLPclK7jDLtHpxyefuSZ83w+mY69GOdkfsQhQDcGd7LtbI4ZHk7JsDA4SkGo8W/939+ZjI6QYH6CW+OS5dVLOt3ANKCKwY+IEoFGvVaCvw3fNmVt8kaUzJOXJWyL6lWqhhFKtJtyUGi/V337t3DK5f0USDSQ4kX7Z0/gAdAQNzCH5TewhnKLMXEmJ//q35EXnoRIGG2YhfhBX3mcaImkg02oS9H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1Fz4uf77n0jPR2kIjWEv2FPSKDmYaVZF/8dN4+ne9oU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+Cvp2NR1OUkPAhDYrIvgiByT8ekGB8/lXbkh6o2S4w6cp25nBvboxO1CK0EJugsPW40lQSlJWbWldsWm+VwGtwNpvSm039kyrJVlOV9S3MBWZdHB/taEnx4woAlv2c0fo5hA6sc4r1PXsIO0rfNZSCJ9wZA6znW/rvFL4s/Iky67/g+hfO9H66P6T4F+8uhUVGDPCEqNSeuYmrKkdu8U71eisDddfBeAqVQ973fmlevH1dKg1JgNSXaYqUV7ZzIvSQikU7JlVCSLtL8BnRVJbwiiUOCjbh0IPue6x9y1LG0VWq7g3iIR4gpCnMguakKVTosmW4+zOLUk5VGiISSGpTCOECMtfbtJWolpXvpeGPcFhgLhpv4HvqPo9EwhBPtvGlA6i1ghFMxrgN7YHszw6rEuobBVmES9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1G76LDbrlVsGCu0O1bmc64qfhgK8WY5cnw64T9F0xeE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VIRcQ5arsymOUnDZBDuQbCCcKqOcxGNXZ+CktQVs98idqfUvzQ1RXw1LBCWtUlrKYYOr9uS7OfAiVQFgJAK5F8Id3FxZOQfYXXhMDloVVZJSjooSv2IeYgXep6hEH9zebYnFh61msx9JLXyjcV9b2CupBBZC5mCATzCNGgYm6Iu6ANxRiOGd0OSde4Le8rJSmDz4m2KQ4HtchwU+tpsaIfGicmeemF0CkZfyVcu/q96m1sRqdxjWIRtBUl+HgSPDeTitcAQLgujusgOcAi4jirthZzlbzZbQ/22oHDhJEp6pM5pKsUCcdEx04y5Ff91w7Cgz6erp4Q0d7wdkf0t7OwSrWlzNa7Pm7sKSpTCP3G/LFhSZo/+66yLVZRxX5J8Q8A0HkRK4L7NpVX6iMHKsfxrt9dwr3PX9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1IOew37UtHuVq4shr5OkCPvBFDiHuK4vUWxjRo1f+c0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TiW7oa8ZtJmklr8az5CQDedwx+8JRyGL7i/0IelQ4RD4HHEUDzF1SSC/XiyRZaxl/Uk7+qI6enFo1d06Al8YrKZThl/Ti14gWgvSNMjAg32+6fcTjwp/YjVUn1YiPyP/2iDQx5i48FkQLccb9aJRgUR16vrXc37JuhNwjKfVrjD8vYkLurP/6tW7x9T2sVjv+kvec2Tgj1GUxlBpc9TQG+kilsyzTQY+fCFDxaD3Tuc6aGPlXYkRVntFGHEYTm6kIijW+vHY2rC2j1WV0pCKLzQoRRHiENnK8bQ38rJXDdYx20RY+H+6AmHxomKBStT297eav4c5Rrj59dFVVA+9QUafnoZtuTSo3oJ5S5p0JfdFE2SguQYg4X2wK8JwqjFnqWiyE8Er6llIuZZZ75HzR4ph+PK8mzGs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1ISYoda5Rz3uVUvsOvSxLVAzIFcZcTuF6nIg5kWsaAA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vIomVC2XxmojfhQOhKeMJzIN3qTYFJ94kdxtv4vikgcjPOJf2NKqzLUEV1H0sI/kGqCerUS70vDEh1Sq8Sa+wwZC/5Cp2byvIPk85zZ7VDq2ZbkaxiS/JqYWdRNob+tjYw5mbkQgWspZOeT5bcrva9D9V6he+WJIZpwTorK4e2FeYP2NUjqFQn9ZFSGIi82uw1Bodfsn06SzCp22UbZj55rW17pj9c7MzmND/1WwKRs5ZuV4yyceV6vAelzX8mzmZbF6mh7Gn5UIlfPgCEZOr57g+3eifWgScBeMQjmgd3nyWiF1MlJ3grskzAYgEe9Bu9By4ICi/n6wow8tBi9YsbSSVmHsM9C0a/Q16dxxMWKtIlm262u6n1e3X1dQoiFp6VRiCkuKB/GXhKSWIR3IhcA2P5GzsCLG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1KaXnexr+l4VCBl0FhlyYGjfUIc1YIzCxKmEscKMgeA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Jp1LvH2g6hPsHxkE9zq5Li7bRzloN6wQiLCGGHnVpNd9IIvtQH3oNj8cP651P992h2loKf5F1A9Cp0Jzg9SgM2anIxvBRmpyaH9x4XXvwCaByA1Rp6TUtYgUjU49WUGEes1U2XzLSn6CSuUdeIfiX0oz5pkHJqj/COKRc4VYp3OKU2/nShbZG+0JipekRxEE6z8oKK2nDMP7n7nd0XaRzQaTLgYYj/e2Hypi3J378+GpUfcAWvY9riTldtw9NqOCRMPbfRU+8jtNTlQ8Y70qSEUA4MFbOcI9ELl3HOp07RubWsp9zIAZWW6LFTsoYan6uuHPAD3R5NdPK88yDRoVvNykhlvWYJIjBm0McIyTFJKWsv6HBMD7+Iq4j1C2AAInY3S2ARCtUJSRFVa6GbqDM9W7k/k6EExu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1Kfz+89bOlPScLISP+ibHFmxX98wxvD0+IGDnjhlWwE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5ZYkC3wz6g9HNqQd5qRrXZAY7jKPZOj6aozXK8OabFTlYwPP+KbdvgvYlp8kohlSkOihoG+3MDk2oRtPgChucTJTkpPzQQD3Htk2FPIrZoJ+Qd6OEAX2blrajEg29HQQS3cghQU0uLKiTJXUuaUZ8du+sffJVW7riktkoW8cvpQuZlhCC08L09oidClzex8zFjFL6pqAefCF/4I84Gj/XXAK18AnBnZJvi8PeSs/UjPBSXg+QJjzioR+f5CM9Op3MRpOoprGkQnhHZv1aUt+NdeSkL/I2nj43LP9c63hoKlHhzDS6O91+IOPvqmKXt29J/xwCizKOoFt4L7eM7ENEDwYGPQYoS9lHL1DxcKNcwOmYyQcos6gRYdJBxwKXl0Y49Pis2+t0OBtDo7GxO6QOqA+wQDLFRB6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1L58f/PZ5wDcF7WyJDlYndwRcGYgGaFt6GSZyTKbuqw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IlEAZJdDyvgwY3NNmB/pSeOaNhoSMAKdE2/XNpucTJyH0Cy0AULXrCUInlKtsERdIwtT5RD51O49EPM48a3h0CfdrcbEjaLSIfqLLvTF9Ar61YW8+lSBwuZoYXZjQlHn1pdcTuRL1xe49N7wn4pOs8ooEADXTgNFII8MTGz5yAnlpYvsGocsXJoR11xMTmh3v6UlLXK46Pjn/A89M/Wr7iHfjAR3y59j6HZA73aSZIVQ1r8WAgx/jqNMSNYNSH5Lool8MZ2mchFYHVNZl6YVgg3rpFT8xsPsdnpxFWdLZYZ9/8FcfSW4BJ6USBl3FOsawtpEofgPaRuYYy+vNfGWVa/1IJD/aUUtPLlXmhIeaXwQf0O3Du062z1QEEVrxoF9uGGOpuhNsfbzo8AI0UDjfNbzVL9gaT1b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1LbOEHFklIucvAErkLSAk5hcYUtazysFEiLfHtuTSUk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jnLfOSvTFb2JATuqhG7vIqp3EF3UoxeKaBZquOnA6JjG4jPhxMMKAencwMdcCrYqOmgr2ywXvQmSaZvlHTa+FUoXjGU73oJXmELO4DS2N/+PmpVGn7ZfX2GBLlDLxcONoczbuTQ0IPHR3SDdR8oc+oClesJptivw3nRPK3IoAylein2pEbl56lXAHFXqorqL8mx4XE+2hEof7H9xrdKv46kB/39ukUbw/nUEQP+gbmIEM8kF+fywsCFIoFP1YHz6yM7l+tDYPO3DZ28JvZ/1agZC8SToAjuRgAbs418dxlxjQuaie6MZ4uxQrNLRSXZF8oDrtbDBO2mz8QuGkbkLHdLMwc7ftZ+p5yz8zWoNduZcuY0VsJoBQcDvDaG1wrrBdHxibRURi4ZTgVeCoqG4BxKczSciw8vp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1LxE7CBIWUhybh2vhn7GrOhztQerLXrbBImuYnXUElQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XWJVn9LvrVdilsz7GPi2evKxSedwTh7Wl4THkfGEMrh0mWR8UAkcT3UDzIQFdoZx4G5rAe9ldNGQ0mIT8ZVjx91PVv+zvz1fwyJfADJudWh9X+XMwyMDL+dlGKlFlzDBB7bJ+WtTZ8bpHFjk45cLsBNn3l8O2bMI87iZ5PGRu3HOzopqpethAJYDeqEcTlRxWC4azDxqr9MrFooGxVjE27PxsqkmluT+VWAMyql8gFwxHx84zxhRpy8jt00GLKk1dPNMHnzOMITUFcxHJ/Mq6Wj/KVPW1wMARFBx1txjwlXqQ6BCfizaKWK7eJoSDqUrmtLGaNHhgS24lVhspc9T7VBGaPM0bBucFL7SUk7mPxQieQaarkwhN7/kY/ilJQRL1wOJtXnQIJPl2xrOzEpylFkT+VbVfCX/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1MdrjHaF+njMgkRYjHUjrz7PmnYIpfmxQP7s09+iVOU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CTSKxnmjn+KG4BcelOOhQyTaOkigSgTliUl1IT7LdoHW327QnFTfHYU6CSzBsQe/YrZsJN/A2Ftk+AI7NfaM3l60RqNxX5rC5QpxBbO1aLXsp+4mQbe9I+T5FDz/GgM0MAp85dVjOLCS+JF4UF3w0DbHonMR4P6EpWwuT2kTZ1p11oJ1MkxAvAmYNoh59PhmSRBx4o01b5AZ5JPtxrtSKy9k1xiPhfNCfu98MZimENHANaLOo3A4rMFLoHCD80QI+2KDFUwG41jTkaJYR3Nq5EXZK7bL6WiM1mf0ieVPJTySSb2rB3MLHukdYus9mz4an4nu57Hpxxy/OjLGmytjUlYNVJgNkPQHwzPE9+T8x2riXsznUSOjhY4aoaB4rB5SAltYcV/8EMxLglZk3qHphIRyE69MXtDD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1NP33zfuSznAg4OZiutV5ykN3AuxjtS9iujb67BqqLI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MVRo8qEYOkUUUN/N2Mp/3eP3SQFG0c6o7lCIxFDdRAQgZS6HN7lQnDBnLsSo4wRqo9U8C1XCWIf8VnJPnGoQVYMLwjzZgfphbDFmMQXZ1+fUkSiHEc5hKTptctyy+ID2minTX8xpvakksFvHqiPl/xcMNxnq3GnjS0wIIPkM4qEwBitteUj66V1ZOv8sezJ9sTDjB+ZYWmcMgEvtXmtCNEJU9Y0XgR2DbKVMncEXLHASsWqR3GaSE1hsNk+cVLFdiLkMWmA+1kqrfHG7Gii9xhL0OztSVcJse7hhW7Ig+fyaUXAsTW8EXnVreRaTwsa3Z1eSLbzjEZ8QoqHQB0iX1zwhfGtNn487mkO9XOulBGOuvVqUtfstqaT/OXYdvAEQc2L6tHAf7OxZSHQiV/wTfQHUWAkPy/mq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1O9Rg2Lpzgyzli4Adk28m3t5Lzd8qqRsjK0TmdhTVO8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l9gzkSkGVXAqtVoQiNkmnBxYcu+Uci2wMiA5DGBaV+QgHZVMGpgyU+sqO9baNt9pQrxsFpEV1c4HvXe68A05JLgtfRqBL5O+CAvrThUnZIXAT3hLyL95GfhmikU9xu/1QEnE5yzxi6Wk5fcHg4BVJfxDVjbyetgw5DDrK7FRGFrZpD64fOXf1BhkXafoDku4GLjGgXn0hNF2s+Safu6qUaetEVk9N84XmDYhKLCqTe+XBZ+/3J89tZpwvnmu5Rvh4pOuNDnrXVvkeBelqVyUDDetrY4B8yxCnGAz4yRUBSKgggwqSixanqmv5FClwVHC2f6yQtcq4JGb3IfRZdxyy6r5G5fpRb9c20qFwm9Xrd2a24HrQ5OOjqDoaIOqPuTfKIn/Fwc2hADamTTJggJeZO2YnfbnHz/C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1Qp3xePeqR0xA/4qm5AHK41o8rzTJSmgDonoGMu7xJU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8zvDDnW+vzEb7ogPctlYa+l8Eb6OlYopp0Co3Avkj3yinvEiUvXHoM04VmGo5grF/ibDfUEglBe+rFSdGw659y1SSyrFTHX4spRWk9IOK7U3IXtrt/X8dj21stlerqI0n9kVVPUS9XL7uzx4Pw/Y2E5NJIgNFY0eedX6jl9ZnMrqNmwHccV64irhfyUuWY9aUTB5zVR/oO5y6ESaqTsAqNf8mJsvLfMac0dNpMtdwnf5heAoD+djKGY9UVdOylp7979uOn15+Ffs0YhwDtFNKQzOPaFog6zHwL3xorZqkg202eWJJYbKn5AeJn0ANAwEHj/XHObqkov9ueUzZMM+e8A7/UtONMLr6Rbu65evw/0SGZVoK+fAE2XXdLGWdiQaR/bD32t1uWm85ggRtsZYe2mqYXt7rna0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1TMIM9w/doL/Z+FLBdv5cOjOSLwy3Bv3QLvTQmB9cg0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GV8uiG/e4jnZ7XKRAlq7UCRXXaLztjcMNzZrqLL4SvbY2arkVcDxMnmZtHgdFRdPZS2AKWCqi6yjSUPyc2UU3hIQ0c0cqEn1dU4TvQpRYQPlsUhIUyajiGnlHpaXOzd13ej7c91l6LuO9dFsHUFdDow5iS3lLDnUnWry/V9sMZKmFuot+Uacl+O7WWB3nNs1XO2wzDvdTE7uqWOrlP4cfZC9lbnOMgu9NS00lKiG0MwkavGEj4mUWHwOWGIo5z1Q56sHygld/MXQY20lMYhga2bl0q5+AnWXXn2MIdraVeg4xc2X+aF22XG6V/XOSQu47qVyKq9NAPIHEPwjGIaMTEma3MdiWImkU5gs+/FM050oys3JRXlU8CG1UQIc4cJhs778eBgsi9Lf6rpKAT6aWlnYnGEyxl2s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1UNKiFOGldnfjDdvqXy9S5tVBzr+p0GgwEK+bx0NOZQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KvV4+awkVHPrMHEf6oiTbXEH5uMBa9IB7//dVUkeGMaHybL6U0pHKI+/CHeMjKZyg0OoBpgRWOfmXqlkxvTLK53IvMJQ5jEI3ZkIBI7wi3LXFgEgP+U006QIbi2FNw8ZxjnZLoLn3Z76B1L33LuZhto0uFDYXELP7+yiauzxXMXjwzk1sFXQB76SehdEK6ntsBfdfyhbSrKCknhb4x7OCJtj7PsnudGGOz8tBSW0CcRNNflWAwL1Q2EREyUnCvtrHiDH/mtl+WLd8e5xl3r2Kz2tBDe0b5Ef0VN17IiDgW00uv42J43G1llk7229BWDpNZolMDhG7s2ycxJlyYST7PCwwflI+/ToUrnz/F4Aaup7WxSXJ0CRvgwKXR72WHlybB/JN3IBzYHk0eIoTWYCjyj3ck2/nWoh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1Uh5JOtuiVjDE5soDIXFf7aw1MxKNnVY/V7jAH9O0B8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lPSXNtaJfYbX0C/BaAWN0IijINFNn28VmyBUlNbOCAcSzjTKAYMadzkNr6HnELoXn8lVJDG433Bn5eeq+EkALPbFIA4YvtRX10yNuMJUwTj1JKUrtXAOu8BN1j2je7Q12Hhv31E6eppTJq7PFFGCTLyfHPXVOZVH2imqpF3yXWMpmGLGnzq6IDYlZ0RpSvOYcXceJG5E6uxxaXzfhrnSS7Q/ah6VGdAUgTDWV+DDFUIWg/q06mTsYomFw67x0qbj2lrxOwdIrRioNA0QCYs7DF9+dLOU6RrBzIMGlCp4kuA/D9UQCgP0Tu7m/pUHQ2bRRrkPywqlXcg3kb7YAozwi4AJ1GrFhJcfwfohVy6GDSkCBSmmGadc4YWzzBv/yWp7+1LJHfb6mPO4cc2Ia5OAo+ix+YgbpT+d", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1UtjdauXlw7fslxCoJfokZ/6FQ7VGSCbb1Is6Ipw+Uc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iYN344IwTFQegZHm8T2FtYEy+iVLmkF6sOYBg8oBLuBFSMuRiIXndYGG/NdYjr6Db5A2kTivIk2VpPklQ+xGwejLA2aH7Pxnj1ybx+VLjw2KlWNfCVmOCnUTgQmJUVkV7kHUVjc8wTfk1+WrUzveMkvWyXJhnJ2tDVfkdkjZ6BvAS3DIZ/r21uYaW7vgFSqjqg+VEYCxu2XRjFTh2IpZxjo9QsTjfN9Gp0vdHxv90XJPOQIOQa9Nzzgwhnq72pCPzcnU1q7gKn35kGTJi+A3COthcR4p/x5+1kwr9HJMed30fHTdRA1CD55xkF7FLfM230Zop5OVchmZkv1y6vGqtRlS5r4nFg5HQZstyuwc2fmaVrIwiwcyQnHq1VGDDFCRqdMfQo5RPRGfE4CmTv4d7Z/G8kRgmZXy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1V+UxpQrPxI/A6H/m513UX+Rdm3yOx0UT/ZruI5bhVo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fAN5q1FAuhn3V6hm9oPsVLSMAdM6L6kKqRP9g1AFXbOuBE+S0qv8ppxm5JyydBlc1oW80cHx2Xc7uxkiJdqL37pkfDt71VX7PecASrnATWsP581W/Wet6gScBfmlS0grJYaGYWDzH6PPXTkFQ3FXNQBWUNBdpPSncWSvWiaiFPV01fJyc04RaMZPi23pwCE3LEQDMJPZHcq3WSWjPRBK229nVUZ50cilmLM+H0g1g+yY409EHRVilQCpDN1NtiSMPKqgQf7HRd6OjNTkQLvUZkcTiU4ixIrvynooTu/uzTQdLSZ48L2UIN5u73WJqtxi86ttMfWSbzDe/56nYLp6SNdCL/P2EfiIOigX8Y6hMaDi5aGY1KGLFj14vmjAeWrvVQVjriiImvQlJw2gpEGKlFV9nnVakcs9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1V4OAZWrcAhyN7dUgziH1VL+1Vfrg2wD5G0SxLoLnTM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RLInxaa1wE0E0Mxx6mf7Vh0cFm6fU3FulwHVZsp761Iz183Ge8SGHf+05ZFB082mD/aWlry7mt3tqi7o8zP+kPXdmEWRVtPKz/vNJczMZffwIl4Y79ffWqGsrn2D3d5Nv7qzD9quaMXpuD92vQRPBqU8PRMiz2WWREgo7BJSG7ljeTOtj1grCi8b+63s6Mrqt1iM7IELz16oIAakybn9FfvEikJQdcYdgahcChIpCsfJNGf6C7KEN8+dwjtDcWn7L0rslvm+nD4XoAAwc+srkb+0H4ru+e45Bcn2702aP08YJCniShPA9TRtc2zl5jVUCsdv+1mB4VJkgF3vrjTXnrODwE0aqGkpLpxmKVdTXltOxB071FvUNJ9Qma9ZnlNv5GH1zeQy8G9byYXOTnj0h00mnvMdzDtR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1W7Vi6IguOmPvV6jnl8OFBqFLgM3FtAiMeKw3d8nubo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fI1F6dxCER75wmXpocsplDFu/4KRimn9pcPvt+OU7A0kcXO5WiHXAx+5A+DqvXRKkw2wXxdHVKRpC8W5v+/Kk6pgjXnk3o2DLofmlx/4HUTu5G7IJBHOn/7UjiB8CoEXxN80ByerTSCXrhyuK2TdG6RwW7D1Ttn+xynznRITY4xRtUPC7vzgNeC4ifkMD1SBQHBymQiK58KZPrEYlSDEcSkrp/BnYF48qvsH6nXHhwEwDnsRRry8H76y5M2QhtLzSSxpjS5QTmSebV9t4zDQoXXXY68JndDqRYwR03dJ/gyleXmT14s1z/isGx97nCo67Re8J4BLprHLVTkH9GLZ9JCgbf9YV8Wcjx11HmoZSEa3BpfQefcmahLtrML/tXdOBDOIp+CbD0WtjkyWH2LV311GCN9TcR1k", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1WkZMf15EbAkJu7ANZ14BHik6Piw8W6cqU8EwVRGhLg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/bVIB8aGREXRnP9d0TD7TMOgDrhU0eK0D0HldZH8YTpcQfX7kGlnI0XJ34YrwJt1TxM73EfumWL0RC5iLH2WgPvGPeEKJUjC5EKl2ND0V4z24xMxfINbiaKXhNG5hA+AXKF6dWBMBnN2fZHgPK/bvD70OnzCVVTSayDLRoJxzSCPsNzFN8Xqors+faSC6ab7jfmhBPMROhjj8yJBE29TXJyKKpsT1ttjUswZJ2fj5i2SwUbQZWhQFKRBC0DMqGAgSKLml9LxXIS0njlyZQ4Sce7DnM3/hkvETat9yEkE4/xzhI/lVQNf/mVDQbnbBBGSGpfHBW9GaGKoHSAkiT0+6ot1LPV4C3tVnRj4gnJHv4e3NHFyjMPp8Av65H+yduQ5NuK8Em3m04BRuSRqZ8ULxhU3zTbceb9E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1WneiD4rWGX5qRg4dq1rbUk7x9wZY0v5S6AmEHOnDT4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DbGHEk3fLz8JIMoQSFs7LJkGwpQtyKewA3LSl3/g/oI3m+Z3pGUQZda9gV7gxXfkVVoN6TtjegocDnWvMb4G+yVmPa1cU8ow54XghgQMBBLhZx7E6u6k3pRg2AytF4fQ377hiTz9hLPH+ANyxG6b1R0IY/1Y4abGvqj0ytoKnxPGVMNbkkkpuLpgZflMnH6czfX3XlUiD5K/I47fcyUzDUMGMxvQ7LsXYKsLmXQucGKLnEocVsTntpLTjnuGa8lhG5/mJz5eZTykVLL5yMp861F2QIvFL376YIwPsYWTylQ4q9FhPo1dWEYdcfFT66mifdtJ+5KeuXmq1dsZA6uEmLAp3ddmkNMwbhQSvjPNEHJA/+ndHX5f2t00DB4i4FH3Fwpc2XWjRDGHZUzSIVIeE8KFuSmEV1t0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1XgNAZ88QBImrbzagP2ImjnzyoobV5YCLfmt5m6n1FQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wqEKMog4ALcyqyhaI3gMq6Orq4RA76MDa7Nh6F4MszlAz00jYPVIui4OxXi4sHRajAA5mBNiSMEGEqUq/RmL12dA2wwSSoPYuv+EwDE9XeuNrJbjiTJJCIwjN8+/C98h6KUuuopnJ7v2NrQf0RzyoJZ4iTWGE62bKXYaiFI30ZHdNgEFfcYg+2xqWhg55Nd7mFWUZk0PvtIEBWG+gv8cwuSho0qUj6Qgialnx8N7Cnz4WZacaABI6Yoy5VW0t70aa83mJRRN6NED337ldtdqxBEuGLfT6sBIhKjDgT+G3skAey5Zpi5ZniUp2H8z2P5bGexWDFJY+PzirBT/UKKeJi/96b9E8jWpHUt11C/cq3LTbykuroL2RwAMhA98sbBdN5XnYK981Iwbuvq6OwVQJP/BRLytGkT0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1XhfOY4oTH6nL1kBD4sMYbERRigz4DnEq3fT+vrHA9Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FvVXrVe0q4ucaHLz+AT9w7mSjnEUzwJfUQyuK60wT4RmusSU9Dpakp0zw/wr1ion3BJI+jjS0+frOB5oJW0oqlteItgqw7X9eMObPlGCA0/LxMJzNV6WK0jTc6npDUIf8IFTiWhv4f7b2F25JIhRi0WukG7dnlWDD3/TgDDeRqh/ctvXmPe3BpY37xrsskIXJ8RKqYSTvd0V++SvOGHIWoq1Scav0bpnrnbSZ0vZ2EWNpKBZI0q6qyNJH2uakx3eO9AL6la9ruGk+82aRqYHXu9umBQ+F5bYueehsEjXQxl2ZbPwRTiFcpzR6M2ce9VlIHJVNzrDBKSAHd1qXegdGKvHp3FVvEGQD3v/LKMStdUcbp+ayPI8QfuEkHj69Ui0S60JswPfFykar/4ztw7dwR/qM3HZnY/Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1Z4lWfDd8XSP2jMQflC/57g97SfxpqW8uzsi2tuuqBQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UJsRuFXZmWzJ8r7HaPhao9wbMO+6sWh/6ipeEYIwFckqEkbN0RyTvtMuMc1x45DJClkePHapaj08/M9v2cE98RJjK5ih9ZMMJYEqDspBtGQUafJMnIM6/l81sTsX2TJsJ54wscQ5//wD5n4xRrlHWWtdhTXDRWD4mjJXyKm7/tH5MovLR6zT8gbx1Qe6sRH9w+wcdwemU3diRxP5rFEoZRAI1YrQeDFBxze46Mkrvi/28OePl3lFMUXm22vSFjKkeoTq3EzKAK3HkfQrXvbO4at8Uz0HwXcBpnHMDncxN3561g5s0uvKaT6d6XnXEXVKOFCv1jihrBqWeYVv6yWdH153FXliZ8bw96sEWQYSy1W7KDgQRZ+EWyr9+EYYGgwYJB8n+5W1Yp5p92suqlAdWLnM6oZji688", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1Z8i5+IY7PBeoeicARVX6FFH6BYqcAwiZFAhSfawG98", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vuibQjGBzer3k6QwlapEG5L5SpgufpIzRoh26nNvio0Gddx+k6NWjUzKR3uZl/D9n0GsL0Ewua73EA8Vc1RS15KMKJbNJvFVuBUt0SMNcpPHIaaZkW6oNc5lUykoop+dGlsCygyHqKvm3NP2XI/aZhULp2uYak3Ce7qVlhTAEJXuhTXhyS2JFLG7srLb07B5VcI2b5xbbXu6G23xlWtUVchkKwgfwY9gCjj9ChBT94KE0DvDwqov5HOTNIEz15tjJqzUXdXI8woNfXWsogfFymnO5lr5EWJQ0Cwec8BR4jWeK5xVYzHkr0es+VnoUOZEyzlgPqhTNvIxY8pIoF4GwXDpulUFX0uxDbOKWs1DRwbPUxqlAjYeM1CC+CsEV5WuffMdPOapdSuJHxMTomQXOMiIK41Euprz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1ZxCRVOYYh+1xB6YkZ9ya2CpsaLAEl+I79xT3zZCgvY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VSHEgck7ibRgD6GlzkylZc/3B9q7CcZOLwjOKSSXHe6p7CEJl8K1l2BzSUsy8r2I60ANnpSuUt1lwiE0lTubbVcusE2ik5tlV0uKs74mdB8b3TOVEUMGeWbZmQ71dPF6RrPXcCeV5P25NOCdgiWclfA3UGVFD4fH1Q2Vns41VNnCTDl99buPB16kWLVQzTLxFxleNoOVIc7a2kBpa+AXPQGuxoOUTfh9B5qehvABGR9YFodOh6H+mNUZm1DY1ipi44PXx6B+1KISrSx0PBfJlmds5oeSSdhB5TICfyqsQmu/uZa4EaN8Qxtss68Q3NbVI3smqfsSdV+xYlt3DwNzt2nSLqXVv/+F2lQA3ePFgmfaoD5ip4itpI1FpsX7bhlLWqdw4Rxg0gpys6QXdpbMwq5YrH0NLGex", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1bFPiJ+fSp5OFLzRQSCqhN941J/hsbAe9qNb7/eg9og", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7qgSuy8c/hNUlX4pYBZ59AzHeyh4/q0Em0n6O6KAZ2wHtepkGlowTrvUYgpPbBUO79BHUjPc1uL93VvtDo6HQiFZAZ/5n25cwxSZ7tUVKdpHOhc0cswUJW22l0rVJfMM911tibUuNmS64i2/wMmwmZ8hvnzBIxneY9AD6g8Ep+cNYYVO40GiFX0HDh+0Sl3/aLalGKOEWup1+zIW39zyKIp2pMCMEQDeHj6/NxxxbnKfeBTQ2GlUddXZ1YA4sz8rqBQMf8o14Mt0DizE7MC0AwWzRIfFuoibeX/mj6h1PQJVNGtHv/1ymJzN/464DzAvwERAPBFQFhszjpa9pFZRViBCQaIXT+D+p56Lv9lyzp4+J0Ho+8uT7F31YNcnjJ+KD1fabQUmSG7ETgYHQpzTcElGUij3EzMW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1bVSNoej9GmX5QwQ1cTJt8vRLSm8OmmmdryyaHEntY8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OO7TXyz3Q7z8x4t3jAzY4gdwCwM+02/46VscojDxYwsGRXMn6/6D7n9jv60M7VxVtT1fUHyVgg+ItcUmIp21bQwcUwogHGwmzdnNWtNz9dpoKDxOkJCK2pw7KeljdL7g7VfMzTSnKKVqUVRKk4XZwmGmn/5KsdAEm2j1UbUzI4qgxjjSCmo5mDdf/ZM5JT0nhtgvGQKr/QbhuDG4r7/5hgXmHXiXmUnUYtgnK80RQBCYo8XXqu0FPNeOiMXhgclIKOeSKw+9T84R1Qqf9vdwal9o5COxFlEIoX7A6F47UMaioX/CMsT9PtvNsHBmzhSZH3slT/E1jTobrV/7PVNd2rYWZli9iqg5NkHzJ3qeko0Z9UYW71sbKvW/K5ibX/85GRh6ZCemc9OgPIhXFMiVePSIpFXFMdCr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1dO6LtwGJkOx2BOuIS5G9O4JNBxfXALdNk/+Fqxishw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qlhVBD7GCsNe09elLt85euKSaoqNJmleOr63j07mQvIstDZ7nP+OLF33HVw1juCawcmhtozKQ5nF+fV19LlHDcI5YQcooNwyqAV4YzXSljdD2cPu2h+rgIT/R2Iuktwh5av36rUlrs8t7pi62aATuQZ52QfHsIKTThDcp0kSDl2qwID1x0zwfBKAsRLGrLodlHGoOE9sXZqas3ZzRIKW3Doc5Fx4VlxmqReStYKa4AYdVoC76DLnXdUBijpWHBhu6iGUMV+j3mBifyGuyeuOzxx5P56bpkB6nIBcN8zImZnlFbfLB/JcEoTiDcdvEkB5c20KoqZ6dgJLR90fm1A5yB4Z8EFcznkbOgdi9uBNYIjBDiQ9B7TIB+SttuTJNWLBWe/LwFKX3mfVqIjN5F352X43+QQdn3el", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1dgtdrrhpHB0t59yVAWUlb0ePreBMZlQavOQ9WPOwGY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N8gIlU1KA9fZ6pmEvtBiVkG94VGjn7X9DK70Y5qTl/0uC+q7ywetLw6bE6KwwJblMyF7qhqwHvraGrXpJQX+BJG0kmagucXUnrPjNN56Jcxh+gEgvIK97aDKUnB3Cdb3newJBuoCiSoKr+gumTK5BBoscg5iBySR7/n5ZwSqYkUDAyMSyyW6u94ktHhWst+3VE06DH9cLNgnWZspdYhjE+D4lAiQ68uw96+/A2CNw4Z68xdjiHQ9UR9iMknaUWk6FfWul4z5X8INAD2dNGHzaaRrJ6p5mkNefMjapJvxxnKyF++0WfB5XMunBlpxJEiPf6N1IHHgszPg89Cck4y0wzu+f7rFumwfTzVPAzmNfUNzrsTYevde193wntSIoGrzq6D2xfo/ZooLDjAK1rQhsrrjAP1x0P3y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1eAdAb8piehsh2KAQmYhuzIA7lazsXliTvghf+s9fH8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XwaQfnhfm0gJaC1I4XhZUyQAR4+D92Rd7+htswfOd8QGkm71BuLlEhkFk4Bt845m7v1EfbpRhwGKadYhED1n6CuOfnfRYvjbS+MS4soEVXzYcZaouH82l31d+9RwEpLwW15QfX1cwdJrhnT/CitLpMWxABww+5c3CRpV2Ktpcn6Wp/0IiHdOerRRogMD+qZkNpWlL5/rDr2t9xx1pCeUxjxTeQg04/aFLTYBM2YKqbtugA1rM1NabXOdKnKYWRnIAwKeve1hCuCbZ9cS6CJjEoHQVswuSByieLgrTXeBVCnv6DvM2zZzxV8kvHdGx0Mloej4fz9J0oHrcpu01j9lFq59TuHcoJEPZ8qUZ7r2tTrtkhcNFQFyOwB9voSCumjD8uixmlGA88EfvMul1S1R8D06rXwjh+zx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1etieII7ka7m0fuoSaAphbffi7pEIx35RDzEb3zL60E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x3/r8w7C9HiKR+Uuo+Myz3ncsBroo7CpkbHPnZ1pB5hZU0hAzF9cwIiaaS3By6rm6RcSRUtyB8870JkcQ1WUukqtarqbMkcCVquZvwmjFtrUDuWmX0lz7UT/txPuwtblzzo9A7LEk8GnLn2qgk9MvArDbXIvQQlz9N2hC1+YU27y5VtE5Vie7Y86yNP4CF9YpLAhBb17DVy9a6ab80OPk5iXXjk2Pp9PLqOhZx5ebYNaLJWF4w912HZHmOmr+BZ/63y38B6x7T7w6KVWtA49ibXhaG86iT2gDQxIdd8GPsGHKbE6QfmJLcZ1P3N/lkquriJLUj/wHa1+Rg8ZwgVzraZJhfvZ5Z5vXRaqIWTWjh8UrX5cEjuJoVH/E4XRoOKQmfFIIOEtfdg4ewKPXT8peaUyjjRtstjM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1ey8BIlzI9zN6dfm5ZhBoG92BVAbRcSZCBKgRdHaGF8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uOXWeqTzSU58Ab4lBt9OxOgrS9noybao85T5p9WeGF56sGkyY08Jnm1aEPnsTzEcHUFI2HZUl29wVxASOUHVsAdZhXGHHLFHBYJJypc7NGmHhlhg0ML9A3GRVwLp7dv+nVBY1U0f8/DkaE729qKlLe88BAKKEjK4H1zsIhtjH6jJi0tlR/0m8oQl1S8D/gcGgxkNcANEpkCsueIqsmqfvgeDOidWVfo1hDMWsi1xQ6OvEF6q0+dwg1C5RkjDQ6aBKgIHvnmk1wauh5Ugh7hmhOBfoeVOZpdS+/lQ/3v+OhXPFHuLfc7n9V0zF5E8nvRBp3Vdz970mQ9cgHGc12xitZavFrPzUH8g492YUf/dHE3tV+PvBZaeNVIdYPlZ8HJLMiJ7Sb+iaSbs9VT7Pi5MMDbhuid9Cf5Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1gpkbrqhoeLKuqsanXYw7eZb95cTZCGLXKLLTXzwoXw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3be++8eKxji2ntXnftJWH4oW2Jx/FQ0zk/9gy/CEON0GL9bEEaCOjGZfdoPgWM8wnFB820/6uhhpre+I3X7jUY6PMKaD9F2tJLz9Xir0G1SRSBfZWCwUeFHMhfnomunJQJZ+Tr85acgBsP0VIykmqj6YSh4EcdLT4G/GORiZslewutkhuDQ5sGdqNJT7VCBjeEu35tADLKUpM5IS1VHkNeeQj1jvapZG6D31F1LyBDzHNdi8SE9ujh951K/pHteyaubqjTqtFbnZrX+GAw4x/EVyOob9RFRFJu6txwDIv2tKTUDd2EdIQbpx6cSw3BIDZhW/F/nNcotjLjCOC04rQS0/tX32AWLQYKIsY3PwGkmVhrVu7xuJSBxz/JPYd9bTgXXNOIa/i8DcOnxpVq/61Am2f1OY1swY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1grItXHC2uHjUxcufAaI9zctP5t93p/4A7woid8qla4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HZYaqyJb6FaMlB5PlG1H/VqfV+kAeDBqOfwuokQovmDeF2OSkc6YUtquUwkWotqqq1TtkEO74B9yCuYWKlspPYXLuFSQyaly9TK0RvdfMNSU06bZ9LxoqT929j4pc0wTHoIiN5SMyb0WDqh8WKWlGfIwL6qkRTbu0QwSrDUEKJlx/21gLlTIJwmGc8vtxpLZKDD6cElO1k2Q2M6Mo1R73tT7oVUFcoXPfu7B+NzBcT/45nEX+8W5CI/Ih3Av9CoE/evMXayXu92BTqctYMI4KHB4V1XEBBSuWgw6Dc046RToOUTwjjszMr0tZyV6SQ0S9oznnz6rX891u+G6W4N3vwRjv9OccFaO1yKV++HxLU5Q1KdylMVlNRiH0Z4V8D8mmsTXzQV8yLxS5qW9XkwSN2bF3ugQEdbg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1hQOziD6C8bufPUHCNtq1twasOpZlzLQZ+GGPYhULZc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "D7SuoQGLFZskKXMBKtl/dQ458R/tEVUvLMloeCgejyjyrAt4pxXu1j32vYkB3BEqmJxhbLH/LXLwUOJI3PBGND+gAgvFdYxrxM9MDvVdJm4OM2YzSQtfsh+2uS0c19t2ItP6E6YBB1ihOCtYKN0TfA0/3ue0YN1aiOSQZKK3wor++0oxIbPhFRrflDWYN1xm5cBsq+P3GfTZ+9qWHsbAXojseX+OCa4dY5/1t8iuXPbOo/jhkXA1fj5gMrM6+TumcfD379FVJoJnzw7yUCaHnC0fBQdrEFED5mycxHzz7PkNEB4EYWb4d98Uyg+iqTbrddg+i3v/P6IUd9rKrCIR8BXWZB43xJckw2Y11sLVJU1NxK5zBLkKIW+JfNlkHhP0Ic7FgO+OeLLy+WbAkhi6nVvJPwEkGcOE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1iy7YCYzLkmJUeb94ver6YAIsbEVNvDY0KAhoBxFOnA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ft4o7cs78GcCZ9+I5D/Po1/u0bfTqx/iG8FaAc5PUtFXykxOux2bHcrCFJvGmAtlqa6RQ+v5NaAxXWUZxowK1e4IRzkTkS/kyOaRTanETTm0gye28hzEfEpx9bFKPFLMjbzASyohoRpwAPggAbpu3zg8WCie5kRlFxWIxKGxNTJ8BiaAOxWeVyxrEbz/k8AONgScwjkDgt9qmB966TW04cJkzdsz7RndDGpWcC+EbeDVbeGhBRoYNK+JSrHjqKNmLztbyKSHKIXcOvvcUAbSxu8RmWbFHdwmK7BGOEeJqFHsCtTyL3JkHsNrVKAm8JbbPNVJbPE+3liQy+imuW22d+oJz2a3eivgmcuaC0t1RGXBu9uIijqGoLylvryN7JqJGucO3EPNAAghNDV90luZoYqpUfR4jyDk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1kRPzE0kX8QHOOkv9FhspB0pg7u8ixFdfYtVWG7yQrk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v3baJhIeSCxqJh+eR8fj3+3ZMr3UbGOvdnrH9aiIOJtypdp51nGD+lbUwSMH7HSa4dHK1C+ABGp8hvwIFOX3nYx98kTHjhb+BoxVK3b2ryDhNqpZOMSkEzqhTXMGaVvmz2IhER9UwEkffvJgxkhwC8DMuNFd4BjKn/ZFLMYEj+z5ZcwAkcwdFgONeUz0+bp6ehm1uFyyQSF5IIdWtHgDzg6bgjKjrSiZriqpWa9pdrey2buja1B2/bruSuTPdhxq9RlmFCR2ylaqbXobgUwz26pY/gi/f0ZhPTX8zX/l56cqO+l/bFDE9TvAM6HFWNVGJOeHIbfO3miVLqmDOC3SFC3663JOfmypdJ1BPm3QZKQJs8gv3zCPf7ISEd9utaxse99ZjeoE5L6BKhNIqvGPktD+vogoAZX0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1kxKwqoUZUQq8hqs7NM6PZ8Ah5oSyyuV9HB7hELqA+Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u7x0z3D/8/xpKCn20Hq/DFukelmjhQKkGofK1twpqEbTjp6zx0RABF/3whoNcm9ZLTwYoeeqmQgWeOMUL6lrj1zxPgLnMkbqUYYqgSxz2KGrkYlBNKbp3pp3EJw0OYXoh3YZskxpO9c0tk8m6/GLS2ItneDJc6vOJrOmgNCSNHgRCifo5JIkc/VdwE+4vNQBwI1jzO3UR4SSEYkVrp2CH6zzuOzfJHoSz0AoL5UfGfeLHsFRIFet+AayhA69xvjstlm3B+lJN1BWhDrB583b+13keA3QfDX2gLAI8RK4GBuDDM39/ozniHSEbR7UOd+e6uXxnIhK9RCbrZDl2hlVWkeeXVTm0yY6xCSZCnknyvWnN1xyE/Vx4gQpbOCSnqtecreDMxsyw1wMiQbzzIpaDU4HUFWmjEpi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1l1vXiEKI7OviOfrLBkqoSspNf+UyF7e6jRJd6RiWeI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y+eqxU/B7Icj61JSg/43kw1asL42n4qp0G+3WRQc366HYKnkRKZ7jCAukLQmcXl8v9vkS05EAwnU9V46l5stR5ZtenFPJyul9QXllKKcvkBJk42qPltykzIY1Pdl5sHF4hj5yypiPSt5/AHF+ZwrGbKGfTaf6Jm4f7X8+Kqjz77reiFqEfBkTUWe2nYVZOyCVNpiYEC0CfngjGuAzVKpqT9aqMVx2ChSgrlok7CVS4YJzdJbww2bEENYlbvqwZmm6ZkpqAHS85UTuhOUQHjOeFQr0n9abNkpXTedzyyHDF1el3tNbvGd09SgWuAdqxB5wL842OJ4fwgvRZAMrtaJwEX1JnxTXuwlvrFWwXvZiLb/SBf6d8gy3pM2u0akU7qBpnwGhVetKSCM6RjfHKT58R+BnQ7yp6hX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1ofkAPuk4KpyBlVCgzOqmLAcxf0H1LZIdTs5IlriMXA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sayqrMdKE3zj1ekbLcyW7Gk/3in0Skal4uTZwUwLZSfeGkzTpvXZOmBO1A/d0BpafwC/id7ZX+/ATYhFMQEjHvtqytsaaRKawcKFEaAVNYfEe0Gb/l4fWml7hVRbpIRBtK3GTryP68PYuRRRmW9ktVsCdjMjL5t6/H5H9cgg99i1DK0G1JpcvaY0XhWloFvRMLOPBxPtcTKQaeoIUoqpTR3Ut65V5izcdBKlEN9+MorS290gkDMl3zuUf6WGNWjLFauI9JflDBDsv7if9PyKAlCG13v5Hq6AELlgoifJO/iMzpJhimk4yfubj2Ns5OZJdEEMvajFtmlx8c4gt9hyUeM6nKCwP5n3EcsMqiTZI92QNwVGkk14534UdDDXM7sVDD0uVUwTB7V48zeTf+JmYm0HA2o7RGE7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1rNCEiTv3R8USbn/MQmoMd77f3I8OIMxH6yVpGtIUic", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JWvKclXzBWsDBrxAmFG3CFNbTj+k41NN7VCDCxdLAvmcHA00lFHctfLkSmgK4WUxGxrSLjR1XeqhGZ+PQt6fI15lo8+xS9yOwUVwT1BiD7cvGoaKwQ4yJiyK+SnhPQillJVmfhkNQ6svAui5aMCiJKrqcoP4dJyzsj4JouQhnc07UreGihCksrsCUUymI7yEfHC3wU8oNEdYFVMm2WzHfqsJKhQ3KXCdmRFI41zajPis8lliB4bpwA1w3uJTNUU9K8/yjnhYFLISFeKmtOUmhasS4DVCJiC7x51C6ZsIK6CURetrt/DRCwJ6f6qoKn4lEiRP1rh0jhL/h8eYmq1WWkczLPo47JwMUy1n5uugRLYdrk3QjUoJcYFiVJjWV/gepgt9Hy+3SX61mIwNYwGufl8AZWWDuoA7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1tZ+9aYTkokWct7cwLo2l6+U2p3sOJWjqAkn4iHYOmY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ILvIRHUoAoKW1Wxl/RF7fq1+D5Fi6BAQfdNU6wzXV1ylAU5a+cv3LNndQmYlMId3F+t0YH40StGKvP80tBo/xDtIWNyDdbKHnfP4i5vLIZdHIcJE9ooDmKDJMJixU3noroQx3suoQBK+OQBDEe371yC6ufrqk6IMDWRVuFAGQkXHjjkDhLk02sHQo6Ml5WHcKz7XMmDtyvoFvwGZHWL7WPgrHm07cS4LbKAd3DYIrPWLpw0n2YrEk3R3QAuPJZkgj6I2RdGjXWQJqF4nQeEe7kO0jJyuSpPJY3iwR7A0/yso+H9nyt1KrYdBh3a6AIrySPBnJ5DOcb8P1lBSMhD2nWPXXNUocFdULOM4VBTtlTY3HjE+DJapHHjEB80cn38gSFxpi0kRxlu0SS9gSWY2ZHPJNbDolMng", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1uSD1IcCzEZk9QUBL5w2BXQn+s1jNi0frcKJDtnTlkM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pI6Fc2jGVuw4gA917M8WS6/nZweYqNZXbS5kEenoRBDwgUZo1m1DOsMwjIGsZh9dyOOQKRr6fOLd6cjCz/Y/fhJv9FZb78OSZyevpQ8Lr1l5LUUkd5zHokFfj9K9U2lT6G3RQEv+4MXLh+BDkjdnTM57R8CiRLjOv5KaGhqHM2pg3bBunXgKNmm8HP4PGsWhizpGZ6JvQASn+cvBcFsYK6wWCgUPWqN+sWA3xw3GP3R6aUw+oevdQGAk7XWQ44afNOLL4eV08+LNLA/xiBRLQcPqvF45ePnYtIt5T7wAIr+zzD9+zTs7gAc0V7cwsqckcNSvLYG2oYWX7uYa2I52MyI61P5XhY8Yk4kOp/iQ9nkJXrH7c7+oS1BPARoJS8FucEwCbEYb0n6uWIjZ8+1QnUjgzel7aFxX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1w4i/i2YRPxXXUA5qYkXlvAaQYakNb/ZZeMOBfrA/A0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X5qhSHhEbV8k2RhY2N7Z6cTtHxfrOdW3SS0IVfW+dCirDlRZU2iXohBsON3uqxgZwPkc0vI4B7n5UFUjPY+3aALoOmWs+0nzq6+qEKzqZbrOhnKtvxEBEsVTuuAjeG8lgdh0rN0Hbn9UEsS/8gz6WFr5CdV/qAzb+QUJ2dT8yggds4SdlzK/VpCuRRvdn4xljNq4j/AVmrJgkiyjATxDFRNSnm34Fx1OhhY2A3WNcLFaL7J9aAp2GrTyQilh6eWlFLZG44JSVkTyywQz6VVCXPyXL7Mn2qPqV8GWBgodZmkxFTW1wLWJI1gnEmHeViXvmSB8Q4ssbl8x24Z871+pEMjEFwAWMVh03F60wWg57T4vkbnp192Mzq5x0S+LnlMqpp7S8oWNY6Hl8aLAy0YVMT2cIAw1yRpE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1xBKXuVNb6vopOX3tSih077815qL+X7y4DmflCMRszk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LGBNyD4RzJZx54SGEfh0EjZ0zASBk++Cg74vI4D3HHvXfS1aOZknpA49QGSH3MUbTWsZx4khpSGuMqTYkz4Fo/7B18VOTEhmyE3mAJGh9yDHQYVvXLKVRze4CXAgayr4akIROA9WG5tS9DjPjBhFmoUvMiFCdvvyU1po8KdphDeCkiq4E4EjWlykdKf8rDyeHK7QgVESxSpBzgP3Zq6+AQm+k/o8HWK4vrvIRJSyjrmXo8YweE0TIQ6lEJvUjWE3rDwZh7P4qPTAf2hY9VhU5CRwnHpv2Crp12SoncMxl4NX9+OsfkfZ61cUWtwF/ncZxISpe5h3ZwGrD7iYAqf4haJx2ocrXxdfVRrTc1IQWNz/V4DOMo+axyk6juDJIiOj86WBR80bvashJXutFZvqL3rrficdlMzQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1xIva35hawW4yqoxWYCOB7epXoaZnEUuR+5gKzE1VOU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "p5yyEryLsYSBahDodh7LreYAVe5QNfqecPY0g49FAQXPMdpUFyqbwJvSUvhbjk0O44HwBwjio0Ca+ZrAxtbJf0he28xPu4NqsFBvVhRUWo3aS+1rQyB2CvkdvYKqde9KzFknjD0ctpkEbPTjaNS7+j9rzzrgT4VJDxXrgYnUCOaKkh2rdGBoHtgSXUaQHGYrAg3MdfDcx2pVIRGWeriKKZfF+IWLnq3VLlNvJnIV9sJq/tnsId1O27dexGWng5bmT7suUtkqn+ZR6C901mymPBWaBqcU6dlclRovLNcqOWGQJfJPqdxwafr09clsNcEUQAhyt1xfXKzA2Lz4rV+6kmVydtgkfvdBcLcjUptVd2qcTq520+zodExGGvFz4V/3R7darDiOIt/i+bUq4pBEg2G6Csw78sPd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "1xLXvvhAT0cKucsXpWfGuS2bQrfleaaILveLX75np38", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "srTGW1kbuNKPrzFA/FX0AhEtOG9eYqt7Dna+t8wiShy+2ytrtm97u0wvrEUbiZlYl+zH0hRjn/esHOM2DU20oF3P2LKLTDGuYYtK7Ns3vu9TuQh+9+o3E3UXGLcGbDjMs1KX/+7ay99XdUcJZKPl2HlV3D9K+YdAfmQKxVeANqA7KuZvegXbfbw0LUhVe1FYFjC06r8OCJZ3msnz/u1gZO5E5P5zYU8oaqgbT4vlSsH85p5w1UVyvObZf1xRI5aOvsGzQsda2Hw6Yi6nNzMGjHZovLi2TavP3ZkdIOr/PTEyHH8YeZZX3ID5s6inE/r0kdOIdYMxCEoL9hjBp4AwILxuaXxIfYHA3ze7jQEv2o/hTaQtBcufr/x9GM6vwjef8NG3ftWTYOWobJ8DxcWQQD3IS7SwFdT/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "21tWZ3ekuEelGRD2+DZvH+nbZ6XpV4ll/0RraUf0CN4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4Z1bjvz7myws5+cUF2CkISsfldyAsiFQWNwhtWWExFMW3zx7zt/88wS0uksAiVIzaGCvOrg7AxOCbWaqyzERL1S3liavWBVtlCrwvNK4S3bFepQAeA7UeJLX4UsvptpxVVdf4P8t3pxzd3GQa0ZR3n4RSEz25D1Nplnm0gK2RUtWlBN8sFId0uBvCyNxDWLuPR9kQWl/DwvCaSxmdAdXLiTE3XEjiKzxOA4bWTh0QYpsMg16Lknn8aXv4j3X+d6rUYEYQKeFJGATnpsgDRunTXXWCSq33SuIjmuMtkWsb3hDQpm/ytEcRPFRk36tmTX+V91qNhwsIYGm3x8RAXZLR4lP/9mFMiif3daVoTufyJlXvi8S4QSyixg79GQBMHvRvp8AwEyR2anXbV/koJL07eQYU2h69/It", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "21y1cB8ThZ2sQCMNcvr3Dq71kzbU/Wu260o7/Uz/7Bo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JC7oiNWS/9XQ8NWhD8kOduqm5z9j5oNREGIembUvvY0I0YEJqoo+q5/7jdJ3M6QR546lYpCJBFqGif7B5pkOfLOlUFzzsIh04xzgnOjrU7V2JQc6Kovr9bDkAxhcXIuAz/IXITHC4JoicLXk2ViDsTo7b9rXi3D4YBLsKRs26NZnlsMvIMcX+23YAtayi777fbT7d1McJ9dKLZeqYZkU+BoN+8Iz4syjQLv+4e/gp0dOzLt67QZ4swovtMjpxMmoYGPEOojDX5d3nVyBCXvIvds9KfbHskZ5ZoPflL0V+GPgMSZ8TIERpG993RyR23PtigvgYnkC8OJxPkV6by6AnF2d/kloWXFaEv8U+2nmJs/O38o+/QI/gj73PuGGt/5XHplY0VHLnD1mp9U4zALJXOaY/Ej27xFD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "23titVzGqIR9nvptrB9udXKGvXaR2xjRyzRt4Be8KLY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZRJD+VBbWHfj4AW6qEIwgZ2Co6FE1+8EjQbl9ko1BkO8qEcU+XeRrH8nVzyidye7lfe54JVDGX8j+LFfgYAAGb4jjUeGKTOPxbiWNPfCDzR4kgHvv+qooOqPU1bQhrML0kA7A6zSvDMWIqRRjeX0695iZ2wUO4eVggRAT0IZ3Xdf+yjs3OrCHbgalikb4QU7YSB6GXsQIKn6h20CtvY/2N43rx34AcqUcpw9dGsEudzu3HTG5bDBaiUvX6pME094jAP8YkBXORyAPZCvu1v7NZ/YpLMS6OI6HOfsy3/3LnMK2m1cGIh4QfcfpXRUbSZYeMv/Ae9Bo0iXml0KyBUsGwdwM9WmzTK6D8O98GktRFf60ba2n3VcgD5XM5jQ7wGP6ycbeSTBivhmdQc8kXBJdejNYghYdDZK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "24Li44WOEKhqVubz7wuCkQWHR2nxoz4mcNaWOycpWcI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "n+6shUTwko1ddsJzQhyLOUPiQSIFR3sM+O8XAlKJ9WS0o8v6e5ClfFKep1rxn2qXDn6aWCx66rqtZOwtA8QYC2ls68nWFJEsfj8lbXcj65cwOytu635h5IDsDWZgPH6a6nd6lmY3A+oCBlQMwudvnbrNeMWFUqAc1VWvrbp5ERXMXAb9d3RQ5pkiixgL0/5ZixpOH9OI4V1SeFn0CLhZqy77R/tqguhAsi3K2q/SvYTO9ROctuMflr5mrN6Ipkm1LCATPRl5+YCWMANj/6h6MS1lnr/viNDHt6w8Qt5LeTkLEj4rHBZZnotPFcugjFcQ7Qjt/Tu6acYY7aB/7AXJKIH/Bk5qU82kYvBYIWxu10ppQMgMC2sw35YudkZptanSO0uCTiPXYtHEOdO91LX1EgQMstLw2g/3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "24gEX+qypKsHTRXTFWVBF86sXHpgQDjoi4MhPQLrrA4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0YlJhS/Q+wwnIwe1YbnnxBB3U2fob+1dG/IEBNbW/zQfFfJjU+1VUv9FKEVi2a0H1xGrwqDHJmOF+0BMiRbqh4SN5pgb/uiH3PzpboljhgllOBnKpeu3oAkMWqL38e46FJNGhHbGvJlYzMmGqqx+LyEuDPVEF9l8s49u9TTKD4vr68LGd/RQ0YLl15XAXyJJyS3sFtASr0rDqx+hGsjVoHGyIlPsSQhJF9Oo5qaxAkEpoHeTSN9Gakmfa3mBHHirhO64s5mqX+CIKKA6ud/QSbKp/oh5kSgEcOKuPMPwhR/NW+eFkoK/nHZAO9x34sSLtZqCz7oMffJmtlydNbwB/ORQckcRRv8wVqTKpESNatrnYS7sJnnsZ7FSIFvn1grdtYQVNTB32QtkGwppEL5ZOw7gI87Mgsud", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "25tQjhIgBXD08TrskODmcmCXxBwacPRivUpwvpev3x4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ILBG5Wf3TjN+jw7fQx2/kEOcrHSaFhX4LhlyQvaBF5W0yBcoB451RRLWoWYOxvd7yaDY9JZQ+Qfm6Jn51NFNZ08LrlBB2rjDPB7Ik2G4rkw+hnYISNXhzf/FpzQnlFTsRe/wBdLmCS2+Q2slKTMZOusddGciLAaB49p9iuG9NC1fEbAe1ehI0JUOyGlujUO0ZJzbdhLQdNZ1w4bnmiCWjhHCphDrgtw95wPUvlhHiuYCRHrDdf2y53oPG9aPLcP9RULMUXw/diFz2ZQWvpfH97ruSuI828LiHcGKP78HPjSnxl9vvGncKfu+LtFIMGOH0aYYDLiKJvbRLegrbhC2uieBUNnOXO6fmKaS1+bqxF2oG16+lXxmBGklXGTYKd3eTSAU9a7FEGLzgCxBLhTXS7I+cx+LivLR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2666vgpeE0lPvg6So6VrbRrJ3SVh0gdXR1NaeEZY2Qg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6wxPJQcrWtckB7+jLCSepnvyAOpEw0QUQqz4iRG3l+Yu9hjRhr2HiCm4rr1FMCpwUP7kCevg9clSSNkkKOmtUrEHA1IEIqcaq5mbUHUwjB3elo5E037lwSyqH/5sx+XYbEP4gFx1C9pQh/XdQaJ6raCi8KGhF6qz3Xs1Qae3l7SHDOErlG5FW6FxZCw4w8b7jtf6syx5j1IQipEdJ+yCtPYGH5+9b+7YRxoNhwEHUcoNhJWngNrTuHC9a0HrZ08HIezNqlJdQHUS5cxbWRIDCdGfCvvTKRpXIkHpTLrfeXUogayYhZ+50i0dgAj46nkO9fNTUprW0EQQ90fKoqycijGePNVIkY5fPTsmJO1nDlf4GkdOglNvekmFMKi2MYceBnASRjnR7geZNcizmJqy53RJLzXr5mOO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "26QzOWaYIQgHXpsxcAtxnaw5JXPL8NGWlqfe52XUCj4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NN4CSijsLEPsDX7CUUxtUz0ALe9QIlSGq0jXlFqaPwXD4pElS232lf9+etY/cuE8PK2zp2dlBv7UPD4aC5HbehBS+eawnzbABlAQd+Qr+GfdKou0XZ8OnlNUL6WRB14RWt/Od3ENvkLk+dS1g16zpmvyiIBPvKtve1HbA5yhq6zHVExAjrSDMJruS2N7OAwpMXb+qepsj/2kt2+833WXT1We7TMpv+UXz7oiwPHFQTd3lbnjYMR0UNRi5Q4rGm/iRXRffEUhgevsfgmCiykx1BY/K3+VhjDiw7OAxCJlf8U7uHsi26BTW/JfQ0r/WQCcu2D42C0c3sp8vbIxawpxDun7IhT5pNExykIOVCCJLQco6KWMqujlYAgGibuJTYsrIjyYqlaOudPKjPXkljbJVuGgKPxzWiRU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "27Fy/KurN1UOHwcKPVhWwLRLuH5r6sxtMw/HTiJs8+g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m19unJ+UVJOgeDmVFzWAYMBOuJDCfhS1ax6PbHrvP3K3e5eogMVXjelpvOMpveoBzDXG0ZsxcxeUSrgr0tEVwJcmZ8jcVKrNV8184kg7yBZTZiSHmXeLYdAD6KBBdT79LKWQEeL2vwLHxFBDoqikMFlBIgu67mpe83e0kif+xN91nDkKUVb2nqNWve3YnZULHqIka0SndTP9kTgzRujhhOJLPDRzDRyxGw6RvUs09qNs+4zhUNaO/s4QpDqXVBYlUbKACsn3pg6DnCtVcPREzyUU1MKV7NA9xPAzyRV+ScnOngjdl2SAZ2gkCiJiw462svkUbe/3oK3pE16rUQpuzRogOtmD52nnRIOTj0V39Xi4M8KAN79vYqP++IzqTdrkzOdWgkRsGON9PC4usLYZtQVADKVGAMV2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "28sZVcC0+kWTy5MA49Omy8dQgXn1onZdtCqK3CS444k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CkeFZTLNTYXQCJEDRbPrIMy5cPRNkjy30ADiahyODRoUL+6yhwU6n6HdrbwuCdqzS7hOTt0xqrRZUd9OWfYC7VhN2C5SKz/zboeoQjlsYPT26+seLeCt46dWfnxkS33DSm34kvNDHtoAhfBJyRilCrX+HFsB8p+LXRjeyTn6rrfLBzIzcUnbWOGDkG/RjwdkC0S/5x5aVpYmxYKlxqAutl1/emoZBzfpO58qWQA6tNJWEOJ33FjLTI0OYFCCpQi2COIPYbHmhLlWm+YuEZubU2+1liofbsusty9bb8XZFqyRGX9zTWrBFc3NSmxIiGcx/e55xUWH/mL+wEAmNb2RjWPg+VhqovMggbAsQi07AZpaaSYkpk7m02PQ+LLvKu4qB1TH0UJMA8d7HPuIJBb4J+Pk8+iJeWjj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2BESEdjK/7VEUMI+55SsUG6uo1WUKbY2myc4d1UyeQM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QmykHrHArkcnWylyBn8Z/aoMLVX9hCoZJyXg3IUx2ZjEKfmbXRaQ043PRatF3pAHH2rExHZBnCiHt0pCBk+PSksVkznytiOef7NRnbZpUtZp03X6zO2m7RaPcqqYkJd2GQSOUMOcr01sIec/smUQjkWnk0Xzq67Wbx9vk1bIs725/o1VDRAiWJrCYiIvY2EkOPgW/tsuRt4vLl36ChpNtps5kZQv2uN47cAWPXXPqxoY1DhHELRHijZo3wJ5RLRVzGLWS5DB/sUkCS7r9m/kVthySm+Pl1toPHLo+0c4uE4YnoqtYhL+cDM8P4Pg+Vq98IG9PCKCqTYTeHndRQawgPoJXiHb7bRYzETveCjEE8wqMz5k4VZqUnZRa24DqFZG0Q1lh8BU5fuDgxm0gYka/VYkp9MwELXa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2CG8HLgT7s75JVCw6a3SAj+usL+hFoFnkxRs8Kl7A+M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "45P8SnRVKnlJhawo4xop92Gyc3LVnZkOvH4lMpgrBKxBv8UDb9+xG4VcFMZiv90y/6K1Eqreda9q/mrAb3QUs9S7AY2dmr5B/C16pHPItLBncuSTCWjsO0cHo/NZ4BKaDB/HOTJ/DsCpjaB1YVk6NXjLDxG4mv1HziTZq6sa6Xp9GuH0csEEIQKotqzkcYwUh79QxG2R2CVRL/bNg8YZXxRG3SvH0tgGWgmNJakGKA3rJatQ8bqKcABwndWFJaIh+Nzl5LwOc6egCCYtMH37p+xl27FVmZ8Y7v1u+IxEd0ZfcpRbxSUiCu49/RXuaQvmzYPyu6STpHPlKQemi4wnHasCsYt64kbwncQro53TjHwo6GdeK+scGNkbt3cWv8IZ8cmTvCzRI5hupppX/HMfEHIYz0QOHb4e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2Drtw7ffyyTGRXX88jvYQ8Qg1jC0Kg+xr+u7I7D1JLM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1z1n+6Ae+kC8Ofxwff3LDVk9Ksosuzb+CD+mMvrBKiRXllzt7mI/GOR8ATGkqtBxFufCEv+Rai7nABKKpqlHF/ikXDo/EfdSigitAxOLZ89ouFocViM7EGbgb5pk/sxR7qJpB6lDHBwRRAeKFiWVxBWFI5i3fJYk1hsncVT9CJWza2fiUj3TDWOxSLJcbdGSf/58nz7VWvuSvAdXig0Ly8knSOuflyg20oYpI7R0Lowp2kL3Kko/on/wiVeUMFQB1xu1WKPVRF2v7dgicOTA+bWCxUOE1VivgcEo2L/rXjUCEGNCElDU/vBQw+eWBxQoXEKDSxB6Z/9f2XZwvDWW/oDdj3qsShXp1vf5qLQbtWx/rFSWlMghOitlaCBdWLF414/JM1PGI3LvqyVqrgGtUn2aNT/55EgZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2E515r1U0Wr11HvNft30fl5XpGrGVT1zDIka8q2oals", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v6VSW6WzUo1KoOVT1/XZOtnmHmemyro72l1Wr5bP+XwS99nxWDBZbS4Fg2DKctxVF55hDpbeBlfER5aBPG7KVuAPZtM0y2RBHbjWA8KtDx9sMo6t/TimYbJ1wezlSXNLY4lHaavrtZ8QYJwnszBOHXr2eR8w065y5wh2i25HCjiCnQAfEr5jteyncO1j+4Og3OvUbOrMgvDGepoVeE9574zh/SR7cq+JUJNz85FpenFgh2ah6sglDJakoUIk15BX4qITUAQHQo5znRbXxZXKGIwtch6nIqI00eUIX24oYfbJsha9ZyrnRsMS0HVX3jkcey9kqctFB5gXXbgvAtdzn1jXHLpDeIdmKIkutnUgAo/AlbUA6nZmdjt0S6N7XZmmTOATUb6kvb4Kj9AgQceX0UrUEkrEKljU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2E63hShu866gVyjMOSJ/uGCRa2prV2/3gVXT3Hb7vHk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SFqYn8MhHFHO299vY48KfpPS1f4gwEZc6JW1fL4lIVOvi9ylSmy1TYkOGRE/P3/Hg9wdWbtJfeZ4GziJMMq4CVbUS+NyRSMsbbPpHrj89ldltd0DzbTHD70cE0B+HXkRim3eS4qOQLgS8b8lu3V03jPVHONWAHUOG8Wb5QSmQDBCfBmyt1NhVKlEs3oq0mAXC8oyOoPMWFdS5wetOZH3lILGtq2+4f3a6Pkeokj1Y0q1sv232TrKAE5dKyvWPnhLKcDidVwZKvFU1/K6ALWsxZppvPgLDCJhwMgT/vAoqaJp2mHHBuyWbC4oL8MibVrvv8oEbw230ZJzs3avMQ2o0sNAhYJfGL6k1kw/o1vkvBuNL+hAcndASObDBOQsF451GdQ4OYp153So87EL3lsdTNgSnhZ3dSgc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2F1nv5L9fGizrl2CbmAe2Of9m8EG1/5mRvtuYQ53CAY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bEiosuCM/L9Cb3ZffwqPK9okNjixhZJKL6hX9PdrMmQfCEzh1w4wO1AssuoBV1drKs1MiOJ7cheU9Eqil6WBJ7PfA5xytIjbU8CllAZsRhFPJDCCBCVE0QQXQFVSh0U+3BeiEIKld1cwQJ90bddn7/xpqCT5t1iuV80hBxPPLnTedweWIXK+zAhfjGHKpTXzxl0/MMwz4FWdr9+anCNxCX9Weo1EMS5hoBScc+VKcdX0ArIALZ58vexEzj6VIODT25NchsYLKw0IP1a7WaxSI4LLgP9oIGYD+JDW3vfjJdkPT0CiMOek4fJj0m4Siicb0xF6t37U2QIJsp2U8iHKNOUYthN9WaYueNmv33Jil01gMXvO3D9sRkfhJqxXVFCejdPaxPItzKgoIEADC3kxmtE/2AH7mTTU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2FcGnlcYm1UOgJkp51GeSKlj1GrjckhECQYFFf5MQ/c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TE0ETg0omWGJnaFM6nlSbXj+dgFjfkabgayCPJrMw5PM30wC4uYcdeXqFCdd2NLmTeRJw+yEjSP9fznHQ/UG+ue0PYhYwq+Ov2fCsDIlAJkFaitZCKe931B/+vRF+Skn39vIBgm7TKEwLS5HoHniy7mUc8E1GPrZmzhf03L8I86FxtUy2ARjr7l0Eifj5/Lik2/TfP3IQIxPsafSZGN5PY+GzxQk05As+NtO1LM4GrO3ebZKkkJiVdA/7sqAB2i84t0Tjeqi5JBZPtWYKeqPEBBKBX5Ujy8zY5M+Kk1KbsYZ+2FiOE9D2GZDttZFWnpwv3M+MJtjRpSusc4jfCWptd99aF382nTpdqvxZh/hH6hTv28yD/N1+T6nRvyxF0EIvbILsY2YwEHUcQHja49zobTCKldmiIB/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2IOOlsD9wb6yPUhyFLplCC8Ja/h/46SBWXqQP1cK1hc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q/l+oPUJf0ZMEWwjHYhq92YVsk68n0kcVBv1Jx6elVeGdjI49axkToW1hfZERUZmP/jOB/cqHuDacMjs9lWGyuzRJrkbqxLaJK0EXbQza5dRIb4I7W4BEUYKYFPdgMdQHeABeoE1Og0YDIx+IpIpf0rhfpSpWD2Ke44zroBCq6oq6xMOu7+rcQbmqgL3d69Sq0jonTOHabUJTk9H/AGnhWEwDTRYBglm4PNk5ss+jqoGUDVPJ5uGi39mrF/fqZ32q0UCoE0kk5PebfAG3rx3OcVSXxIBqP2TzjLbbPK0UrpGtQhqdKBbNeHZVOfcYTVn2F0LxYmd5bipi+LEViHcTbhjE5M/+U57saYODlw5pu/CJvm5K7fXn9eYVAvW2BjeTIid/NAMj8ZlxcZ0s8zGFo2nu7CDm5hZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2IvLzDNNNnWz/S6duP6eP2wwIdybbVpJp8E7ZpG5WNI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OeEwrBGFE0grIhniWi0VQoaCf55LjC7jqEz0TNypZ1Aph5g5UjAsM6UOyEUZf0CJ8Muva10+m+DOy8wlW8VZgehfhPwJuMSd8m5nNnHVqhld2/K7lhhjXzJp3Ggfaj6pUSWQlfG2ctRpBAmBQPbza+UmVttTw/YSiMF/WPZLm9lheRgFm2mXU5lnMi/boTHEFuOfjxlgYPHtki49vc0mT1aQWCwGsYcM2UrtBSHfSl2kV49fzXkZvgJZfPbpYYIA9CienWtMoH8ib0IA4KJAj+bldnkHWJ+lsT1/MIBdFcEGcndEkMVouz1XWhV9aK5F4lRd59ExvP6jaxDLeYCUVZxSz5WfTy7m/MgXkuCyQ3u4cNY6lk3McNrE+xEernOBan/dZ+O5665yFfVQjjRGSLZ2rD3VueJE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2JNVfWXEI/kaLdWRDVb2hXmfW88Mx8wMYbLYnM6qj9o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A7NL0weACfM6GVHGq6GgCbBf7VImgCxtUNeHLR8iBnqIJqA3BQjsOQwUMEBfMriVhopWQHVJzNS1+CV7xe/CkblagrJczffN6tFLojjfNooZags58fuyD3NX7qiG66n8YdsJKZ1MmInA48/GcnpdA+x7wPKCgHuG5usXm+pweQJoLGVL9bVyASCi9Rv9nEAqd7C+h7pB9FmAMzYmp1ovDWE+CcB4rAdbMCAMsJgw7LKEFRot1w6Ep7HUO7TSMUgIJyMlJL4q0z0WFCtN1+YpEjdie2LJHgHhrLBm4QLLn2fIdcaQ0xzsLfT1kM0X+EJ/WYQNXdGPiIJhORc90rFy5dHheDT9Vi0TEl6hqaZBO1UZHIvhIArgjuZJVJUvD75Nuiu+u9U/uxPecEHgeI7rd1wZ36SkDxY2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2JYUlmY/9Tn32ELV9ZcpQjcOscl/OgsNTxCyew5j0Wo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qrj7qK6AGjGmMKxJYV+Iw7ebjlsyxNdkyD428c7NQZjiE6TIReqVwhHVXtsMqek9hI98dg9OAJjfK8sId3wUzyuFV8bpPNpJpp1f0pV3AzIlqx3T7SiLRrNPw3qxtd+vE0rFzvgcKsSiw5mWlzxSZiWXGtD9YtSJ/gEQ8HNtzg7En8BM/+9QqSCIIbgiV2Tu+Xok3Ea8PUF+ZSvvneyZvCLSxbiBCTs43LSiVToU4BEEFJz0mAJlNsqaWh8qG6jB0O9wf6KFj1X8u9eqfx7u8fnx6whgqIQ4ml6Iq+KxbX4LJRqc+YL9/Dr3VBCmD6skijUZqR1WsQtKnx/UR/ZJryeG+e7/5GzIKXiyLQnBfi/z2T8w3Jgty538kKKivWvUIBrPUFn661EAJbx8Wz7ooXQVxQq2gEVz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2K1iEsuw1KT7LUGYT063/TNZInEDz15n/DYl4z5wdCE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qxFUX1PyKSCkhNlnJqphiQtggnLT8qIAKQoZf/mHuarN0FzkCX3TqVXgVRe5qtRbTlDHQZCHlvWvaMnKqa5uw6DlRmJCQbfeRWUaVRemySbvlORVoQ3GoVzOd6Hj8LVReIirmTVjfDS9AqAhBtQURljna/AAO8F7YVQtTeArqsySmO/FT/IA6AIYIfVFacwVBeSqCVMa5nwyY7ongxVQLcSneq+v3LlwXHXiNUp+QI6jwPSXsrcfAxcPZyaZAuOBpPle2YyHYysKbNHWyMbiWhSCONyguL5ObR58K3x1onh23/eVItZtinAGCLqE467MXRHZ951pqhBsr+s+wI/NtoiW7pmLeoNpo2Z7xQ5sqiy6ERQ8cuwyl6q4AnYzaDKUbALmudQTtXX79aD5sypGyYEQ1utVTFeV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2KA19OObaanRGP7SP1Vg5TZBXCDgPBFKNHBI4RwUoeU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZnzhVwpb0E0GwQ+15PuAeUjByR9jLdIbMdS4H8l3kiW1IpzEyiMd9KJ9NQa2tslVl6TE8UCDPc7lUR8WvM5GajxMgvCelervPdTU52KSGG/QZR8of439GuIMhsFGxIcD1pLyJx0tz1y983LhdoLFuEkLuofsM2WKmfqjJ0XJV+JOGEiC/rjHJlO7HWyHVAlSfj/3noJDY1GZmFbkT7iikFIHtpc30bnQMHhyJ/s5kWzzU5WHkmkkfkXJdkP40WCud7DEQtWK/y449A4la8HgccvCQlM8OWP78zukJEeZpssDPfLjYyos1+7IiK12yFhJFznccbucS6+OkJb7ItU6OdtLWDayhVQN8ZftquX583orgMGSTIvSpJsVN2Y50FLKGfam1Crvw0rzE5NxqEf7l0Gq1ZKcT7N8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2ML2dzATowJ1gvVPSjY/nyyw5t7fVJtwDihJkifGV/0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vuuBPWxxwBbxb4SQCUJnQ200Bx9hdtsOQvQd504vTGHzA76Cb+Vx1oFvOsPgBL5rTsSvYx4wdDd/3SvJ65aqqKPH6sI56ZrLsqmMS+bB/T+RiH47iNdYQhhD53us4QvUf4yHLXgqM70ryAGbg86fci4Tc5WVIhLk427Z1v4xDpCXyPS3ba0XVVb2/PMxjK1No+pcjEvJTR9KLuOaG0D57P3zW2ykhMOdIB4PE5qfOtQoxgWplnACTp9viM0O+ksrnuREoC+FcZ0MjwQaMt0mL+6xkUSn9kMITB5QOfDSBZhGgLrUO0O5aTbacUWR1C9oZWsuuV7hlsp6iSVgUf9Vb24ltvj8OSrXBGKdjruTbBIwLrqeR8QiDJwAxe53/9JFz1vCVHGl581q/KLmY0xftfD3jXeSwLTR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2NoAagklJ2FQ6fM5XOMR+VnQ1chQU0UTn+7mxLaZQDA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oUp0ZmbLHyOrvo0m4AiJz25HPBoKsANwRhRYcerKwpgQACweBClK1AnAj7w7VmJseJXeytSh8vGVMZYVcMrUlTA5vb2stVi/koExW7iKgLqhCBcyTiBLkGDtIIEyqNxLiTiAbSgcz+QaCxibMck9t9fjyR7btUnl+89ApUZ+0NIz8NZ7vgb86Q2tctAEZSJpxxLZJA6sbWJALYEyyywPXAddv/rsLojlmZ8To5X3LUZz/Pn9fiCgHCB/aVoKe4LO2xDbn16oje8wpGc4mz/CYTfm5x0H44SI5retCP2uHQOWhCQUuiRfW/jltXD2bq+PBI+6b9YDL5J0E6Rpjbihx+DftK5ECmqj63hrQ6aPgwuuQrBhzJhy11xXPy8j2b2kFUmW/6C+WRKmZovi5hbdEh8/8NggxRtu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2O3cUQ+hIjx+Wsr9SRjVPxa5JH/LAwTkIMmtUCOurTs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SYGnUzZ8WiF7HG2TXyxdJ3DU1uQ13lyT4bnWbw1vxsl6R53CYCkOP0p5y+u9iB/DwtohpIk/r3tTmjpqxV7exDdUy5HpPDsx0LuFroriL/pW5AAnp0rx0/T/TebrkaIBhISy1BKAOjyKhSMy8f+2IDyHr8lxwHJOeKP/PWpl+wSYfYkA6dQpD+t5STFQr0zZDtq2Wnl0hGISOnPxXOdZtR0O6zw3cH7WU62FWGfJUGATdLC+Rr31NmNuWS4FHhfOPd+gzeZMXqIpdfy8pW+uj0NXpos/Iiuaat2jWH4ttMwVgPpXLfdStKMJWLch8NNp+1IHg8slIsOm7gBAC6lq8tIvmCcETpktXEx/SwCxRBj74dMjBuZQF+7Hf6zKI7e1BcLzKsM7gEWaNj5qDyar6LpdHE3F5nlP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2OeUu5MCTZ/d9i/s+Ut9wuHqm6a37ldBujSXJDBX1G4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zxYWt3C3Z7jY5wMyol6AmoItRsd74delNVRC82czRyruxg/Sv427qWdhcVsSq1CNv/+8aKEIgB6nBeSzFoeBURYyG9zZz85o78w7CqD0wA29yV9C/9oQq8V6C+OTMcphYXrVnhsWLFhqjjBM6eZdV0GQJgP41KmHPtL8vD+H2eh0f2bXgZl18ajcS+SVXoKOK6zW5C7LAEAnsANoVUoFQqqheiGgkTSW+woMMs8ZODI7o2zgCX2sW9jIY7Dzm0j+Y2MMNxVUyc0gefhzM6U+ZoTM0FO2HyNlOC3H8+nGXkxax6sMQahU1ffxs911/Q4KWX3V4cC6fROacY8T/z8WexuW6NTixrPQAmdNI46MVG7GQNMFha1f1AGIhPVEMybMHq9rgeoCC6luMerlT1eWp50yOT5XAUnp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2OjzzoKNqc5sr0hKQIJqfLmH1Kp78T2bukbtqoOO6S0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s5s3YCGqSlGt9m+49I4y0ZgRgEFcaVujp5SCAwSK1H4yBWOvXGg2F+u1wnNJg7dhHMngSr+z+2g3TpQ3i2vYpskEpyJ9mfGLZy3pDna1GvuAWwFe+qVhzDrq0qHnKI/1uKsjFpLiEYgvfhc2GcWHjCspTnQOph+/pSn9f3W94QXD05WL+wGgStvIafoM34YiE7x/iEr9LraN46e8sGKF8rKPrTuMrHZNDQ+NIoh5MwNQ5rVaLXfrGqm3BCTjfc1F9GaCCUJPCFxdsLpX8ELj1r/0qXA1N6GflqCKGB6u0G73D92BkQcrvxDtK8uNWmtpgme+GxmSSej0rI4pOg1ajE8aEIKniS8r1EBJrmam9TscPf12td1PFm3st3ty2uUlmCXErNs0/d2gZNPhPF2da7CYMnz9gphw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2PhuvCkZfwH4t/MWxjKNo/GqsT2DuADVJVj0wS9Btyw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JHaMNN5pg29y+hG1/rW4YwhI9HKh6buZAP/ynh7uzBtJyKh5aj2xyUb4ev7nbUg9o66ZBFtuCQp+W2R/P3WoYXBbs4ovbusg/NqZc3k9ZQUO+sa6O6YXqYNW2o689FnkpNXIZsZ1tZOCg7MTOk4smaW0+GWjfmrvJkGpv6fyVnhjoSyqRpCyDm9jGtNjJpU9p/EpB3rnsQKATACx4fC9I7o+W6VpVy2AfMinK4JtrvB58qOVRaqNNB+inXiXITugbMFthS7boLRuFvWuQ6q/4mZVgYD6sKdW5nHW9hKIX//wpiUzs222b7GxTGK7pkNpXFGgTyJrTcq+O0iefdeBCcvYLlwFLk2wrFGfSA/M9U5kdGLUhUHByMHfKmO2p8INt7gia62b5MH00XHNdE8G5713AW0aX7FL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2QS0EadhYbZgj6PfK/T2mSxBkUHkjzTNNOd7t1UZpE4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eR0y8OLg995Z1D8mjAuTzkwYHC/JYFhtxYjbb4QYTCV2TPSlp+kS/p1Sf7IUgfyiTVSVEMfu1lTMXBq03tdjxSVFwgGOkkQhIFMUQZJ6lwBKrM9l6+mUgioNRYI1bx71y80zpMvYRtVzqYKaGw7LEhocHE7jMXOFjG7i5faNvZTVV/diiMDpUvNkbZosrcK2X6SisgQFjMZigIUPRDS4/wB7Z+24wOxRXIRc4MfmcOaW+hAlPHYe4Seav+RIKZkJUS3xycPlybP/TgPuAeSJV70DYQcgiqz4555tbMyVMn2y+V0kVcnh4U1EsQPryuYA9zMKZhfOUQc0SXdfJDMp6Z7YCkEZiUf6F19h13nC+r9WMkmZ8vNNz2wHVeOlQ+BX2yb2eDyBC8TVTeo4k1RiA3pNiwmyIDN2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2R2ALkONdDVDiR63m7xPdGl7h9dZj7U2uVzFO6gFOec", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1WQq3bVFavvDe/U6/t6nQ0WHvBeTtH4waORvQS/HqpL51PJlUIfGby0TkrilajSYek5/+wsL+Q+sg62tMWT7h0pt2J8G73E8YrZGjs57rSMwrVV6ptPgR1bJStq3D7cWc+itobsn3PJzXVeDAHr9Q9RTKVPogRQLlTJiW8aLgmoSeuDiVDTw/XO5wmXcjNTJ4QADp9k5KGzbWWdZx2f8ADFyuKHQ8alTjOHIuuoPnJ0PFRu7NRsjD2MXK0LEO0Y2z6+TnewfFMosSnmGNYtY010A+ebZU1auYrTWcNtw6McR61kIyoROzk61hSP51+SwzmvyqAdT/BTSWKKjR+W4VlKo4Lv3Jtl2Fas/u6D8a0aiC6aSfCoWiIhe0Oyx/WVEKFAOc8X4XmLbAflpoukPPW5IsEa/4G6A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2RaLxH93c0ZK9khpjy9EhXyoyRgRFMktbly9QD3kheU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lnH0FLqxFpQ3LUgVmYx7+aqfJ1GuCCZbqEiGaUTf8z2Mb6SOQsfZOk0hXGLmXUNkphtLXZIXuxmfz4ymYpMuICKOUH7o1PRpeSu5YKdB6c/zgGPd26foEnF+sPps6zxp2bmn5XjB5Jp0ea5LO1B7+KAXPabX+py6P2ra4qhKzzxf/YUpFSOr7AjgucL2qmTGemEOVU3In1GkSVUL9s/lh1FGXwX4vUWMKqmmtVN7DntBBsh0QRNkZZRutkEaj+oCU9gmQrmFao9xgCGlJjw+h/4jYwNmkBILj4cZ4M0wZknlhG3Abo7C7Gx1XkoKxjcj+jNaB2lq5BXjMWLyFh1S4f8P7xaoD3hqYgCqeVuobptuqqnGg+uJi+JsIssT6a1hSNLqbyT71cTQoNo1LzMN/8PA47JK8FXd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2TdpdyDhobKByARu91cHcxDZk8QRZkl8BZ7taIBpfB0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "10plDGSPiDc1ajWx7cbvFgYED0ngiEqVr0essAIYRb4/y9Gq87APyo5dYeJiYDDtPS9AKSZ1lBMDD2ShHP0Kl6Gha/lSc48B0NYMVbhkyzQOmMITOKvDh/a1zh0UM/S+lQGNATDo9TG86oidYcqtmyk6PPVtXgkuQ9vUT6XVmQVClHDbn/s5E7xltYZneU+IBl9+pLByZhT4V34X+RCDFbXAyNQ8vr9ayCojVMZBvL41UP7YoB4LMIzULXPdaiva2hkRKgs8MwVpudy7Ih6R851g8Uw3RPsgCAlYsSvcNpKiVpeZ11yD+Ho/JiS6IgwhSkf0BWyTi+HyTk0eSSJI3xI3AS6U1Gm/6/Q7MeXaH6bZFtXQ+gJ8MWtSSevbHeBEtkT2Kioe15CT1Q65i8HZ098FbaKU4D3v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2UGgLu5xmry4RNVGccW7fY2Fwtm9G6hhWHgaCN4Oj9E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CJjTDgqExvCc9dKys+quYiimQf+cUPE3dvoEbj76YGSPAVgKRGY/riqgHRHCleCuDDJEFpFW5kUz/lPiSwu4U6atWP9/t0HX2uGVwEU5a6RVCv3yz16Xb4gFZhtbd99mDlVse4rJesaeP5S20kP9CWPzsautAnF4sNxw53gRZ3N7bDXZO+Wa4QK7VhGueZLWKeGr2mxpsB28rHwiiWR2tzT7Ic/gcmz+jRAe22j0buIkFCicalE1lG9I2Q8ahZDEVCSTeIKEJpBca/F6h6geV371i7/Nd+ue6mr/K4PlBAaJ7fq0/mY0hqQhybx9d19mrYb+kz9qQPG4SOlKzbAk7d8pK5J/otVpRkdNZqMdVn21k/3Bx0sHCgHlkR8I1vg5AslCG4W1mt1aEcKUg6k4im/HAKiRaOmQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2UQxGEFxgY0JUiSkBGyg4dud+4peDKr5gdyD9Zyrar0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PW2OguJ1ZnIey3i614L/l7ZiLA1sJewkQ5wRbUuOtEKbpBjoJTgDn0Fj21MW0QP427ZlX3sTsQRsjjkO4ZLQEVCwCnS12gpnvBgk+UUIIrq6fMSKSiaZf7FYkNyx1l6nKk3cQPGmRCfhofc2BJzSvNSGT3ymCPJVc1boN+pYsMg3YR4zHLvSFGP+ktxBeu4It8BbVRlh1UC98gw/4P1yRPtl1Z4I2YC+vYQfPUUg0o4/Ei9+GJWfdq0tkufS2+Vfnu3RARPNwviIWtlQyiLXV3u4ddmVIzoQnVBuuECTE3lKbukraDrqcI2l+5rqZlW7WcUlq8UXZACPocJAWH3jzKOfRakvWHrV4hTHd/rF+rUDSGFB1T6LjzSt/ogk5MJIB2g7xMi2t2JUCFbWBcO0U3+Noj8bMU1p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2VUxMhKMHK1igJXkg0G0CM6LOPjjzh8UphDQbLLRfQg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uNCaCt1Uk2RN4MAOYYbwg5piKv47SbhKWQB//vmrg6q/yNcRI2igqxqjfS6UQF17exwNnu8lMS+wUAMZV5tmmn41sh5emjAMUevC/ctwO5f+oP1+g2rDricqJxs6MbMtIF4KAGq7V+PXPCuuG8kSQun7GE5N5QlyTkX3UolIGVNcKvWUkmAhEzd54cJZ+IQXeTN5YFCWIbNYX5FMr/sMrJIH8tzUOH2KMOMXRBkh4XQ3UdhEDZKswxVBytjvCDHh2vIKMrXotPqM6HoDa8lBQf9Ksvf9YxMp92DZ4b1D1mzF0S4h1tfgy/s6qyRZjmlN4DgpMAcZPvXAGk7UsFHEOGil9fm6obbeae5Dq4RL2GSCIY/SbcP9mFLqKV1ZwnYMfocuNaL3ktWMUCFKUeiiaTuRy+o2WXc8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2Vfys0+qKeqU92kmrqLn6/ZPe8BuVw20iHnceT/EiG4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ygjUecWMj2xjIPNQaywdZWlVsxvv2a/uFLMaqLq0me9tX66xgOjZ7YjTsl6zWvG3f3PLjDWFCnf9hdaMvlIfE9ff3BRwnQGVd0O7tdSCMQBmL5lqgb7MJ9/2RLct0mZWnWV3iFZJzosYfxhV6n+6pvwjog0ga1T3uDxh1mdUMwN9IgSZvj9n6+5u/i8a2QbQFACsLWse5woWRruhCgdVdNkPYEqjyWQRm/6sCE3HBQbJ47V2akrEzLHsZxZ9MOaPyHtoWkw5SeyM3J3AHQqBy/a7I8sotN3hFzkHV9qjD/mAbUad/wv/hkHeahQ55HsEhJLbTftipJU3EkWEQVMO2aHEx5v7/N5r80iaGCTF5bX4Md8Jmfe6LdIn1Y7qJDugKRbYU3W65KpTGjzQxwz7NNHKqOqPMrwh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2X4eMN7g6QyUMZb0eYxcYls9nCT4yZNeJv6eZjZ/7RU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9Tzxm5TVpZzvAjw2/ZsDruRg4jACaC5Cvi7PmC6K3Rc8hiQDoihvW8XK0yh9f0VW/AXqg2SZbpjycRkA22E57x6r52oSb+I5s2KZ+P3lYz+PDhK1NOtsN9/rN3Nva6w8F6gSnAGLZ+r8hUFAxXirkpsczn5XjTmySdq8Irh3LSIkV41e8WAxJL0SPec7V3Vom6wHKCAHlOQJyWu5TUSqlV8Eftmg/DJTxEJKHAGJcX+L0Pfld5k6/LbJYPE/DLOFYNw0XpBvjQxBnhq4Ogjlh9UdZsEJdG3hBQE3amleCw/JgpHKCsCj+DU0XrER4sEpp5tEAXrdZG07xoY2hv4kPh47nFpgL4hUx7/w9/VSBNw3nCcuaFMtVQqLJx1dt1LhoGncIMEdgJps3VVdNF5g+e5IBVo9fHHg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2a+1N+uaZvTVxKGrCY7XnfpsAyn1TtwVuT31mtugirg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8LPASGdEmXFaEaRDL/A4VpobyTQQP2kHM71iURQEHHcIMAxED6FTkEqj7zP8o/AzvZ7Pa4CwNvyXYbaKLk3r1Q3qF9YKIGion2g+pNGM6q4+rqrJNc2TonIsJZkjWg3q20dUtmJMLBryeOVBpjsSSFwVNLdFPaqJQYj4ziJnaoSWbDTxyi8L+nOrDKypv1Nokn4QN7pCCdxhnpd9baxXxjRaSFmSVlEyuk/p5FSsWXrvppx+HQhD8dp88/bi+66co2eUnXQerWellUWNDKOaQ+qHgPC5X9HMwPvXsxKo5ArxZjonJOZGWEcWcsOWcM2bgjyJdDrcNYiGQqNg440eAz+d0ks+w6i0JhGY4pcL+QrubjjbIQXUzqfHAWua1udOBcwhguyhmXkgIqdmLWX+IbduUckGY0Ci", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2ai2kxF6pJ7aIfbvQtLYthdlL4N6EMKfbDKAk7cFSY0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Pk5IRi8eTO6sZOjMcPHsp8cKeqoRHbITDNOFclsJUhCbpkfBk3uKMAfllzGaqdXmeVFfGGr928pT8Z1HYDSyZ8FhkZei5LBQQ83OFCcfsO8Ow8KexlhVfaMw+DyD/3XugaFC5kZePIGCQGV5gVNwq9rtQGvD/Q/ZOWtWVB9xMlcC71blPHM1m/GcvEvP+Cr2N4qhT2Qwe/XcQwKe93OoAbEAhO0xD0OMBhy3+Dw+LYJmgCa04H9M1HuaWsE0Na/aQR51EWDYbVwdELi9EvyfaRgr76nmilcbiDYd93ToJoIMSs/kv6nPx6XYsPTS2aNfNAqgCME/FuNWfZvI67zeneWuzJrsnueuHKhO7zfCi8iOAFn7kn8hSgrpaxN6GuaDSNVH9SIDluqotic6toRk/bkY7vSYwpIz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2b/zD57GC7et2KFgWmfS0LRNsMEgfLTK8wpv1+d68b0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q9XCwT8ZTR6/5Pj7P1IJRgHmjH1iCBdFFUP5FYYfAnL7milJuUzHusRV41hymrU/yHMhI0wD54wKu+779ii7KQvfCsX7wHJ3iC9wD8M2HyvbDHPaE5rz2Vo9uSM5tLEDpFTT2WA4DQo0i5Dh3aWmCCerpctj2KcNHLwLgFf+eGW1K1P/AeSYl9xIw3uHPkL8kef4F1cujrJSHW380mayqhlNYGZNtf8LDoPJ5p35SVzhTTq1cIEPciVojASA/k7IApcuRjxVY2bdK3i44hF7Pa705fasZO4yVPheIGwRPQBrDe3YCByW4Sg8XaMXDla9DzjNm6fJSIgaKADOD27i3Rvrrjy/UtfFQujer1VdN2OARo0uLK3j5dfGzoIeTFnv2sYgrQKeH4MWzAvf6mwopn9v9KlJ52gR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2bQik2DiTvdZnuYL+fkYG6gcGt/wO6TGdcBvfI+ZCkQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bop05OlntLNmTXJH8ifo8hq6b8rHoKDTWcKbUJ9jkatIUjoP8PiuPTWj6UMe5P+HF5syhPZJMg3DEdyjxMxn2V8dBW0Ea+Gws83rQsOvA7L6Xj3g3jg33YdAEJrw3FY7bPwyLxqq0/hSUqPycD8MHSorQ74wDCtB+1Vf+hQirBbJLlQMM+t2W+8zUDsw+KrnWxFAk9g5tYzbRa6KdFk4TThMLOOZ2FT7/Su/gHNZgMAj2DTu8xH3iWtA+L6zgsHDA8/kNnIclhka0tzv8Ysgpb0P04gxrZ/7BBoHpHt2CbB0NkoyJZ1Gj42eYXmIwhlCG3Qrj/KDD0sgVSiQOz/GYfMvqiuResoy7JfjKioPrfuPsyxGN/7+fIEiI5wWWsVm9FLbqN6t5bXR8sRJ2sgcpm5CZEt93QTZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2befYJbHxmvrlK+p7eCKd5aSMyAuRooiDHyJgQeuU4g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/kcAU4/W5TXM6Jwfn6XOr0d7NOH2+H4fDIPvh7KkVcsFR8RXfph5tetUgrkZeLjN4vHwdYxhyIyLIHar6ylc9k8To3oi4MlkcOP7KDcfHMbbZlNX9Nab/64g/bzDdlL61S7BWnwyqAnp9OjjWOceHF4T/xgjl7nbC5KQmgihTlqfmQrl4Mo5Lc//FcJkaaKtIRM7pIejDDr3cVUr/u2aCvaAB/VtWSJEUUGFqBeW0dizu43MZMXH97BaducjEtYVBLebsKeSDDOWLhO49EVwTqp4GK6Euer3Y9ThrpgAQawjFJfde9UIXRrUq4VIG/ULqjzSKicaklvwtopUOdQksQ9qYg5nltVHtXUqdu+puhYvVntzdiEwWRo6FArIbqjuHetHt2EQIuL0Js8g5vVmf6LR29rxYnFQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2buNMd7nzKZRxJOOjj/rW6uJ7K1HBCIOMsGJXcsBt7I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ETpgGanCsZv8R4hmbuhv5PqTeo2lnqeQzELOLL2tQw8A0TeDfMfTYzjq8ScCl5l6+vnIfCYvWrEA/u0UdY0RCqCZMd4KE7FpHOaSoUu36IEyU6+08SdkrhSAKof7lyrg4PxLOjF6Nmyau2s+7sTUm3H+iaydNlr5GiROni2ILeMFvjGLetgEyZ172Vhgob3P5DJ/KWhZRj6Y6rggq/LmShMmvXDD/GzQQSIG1Pfga0VxERatvECoiywN6LSFLb+jKk+nM1IOi2ovPIzi9smWmbNN2vMMECH7fm3prqxrBBIrMjm3gL0/XxfjRpgtubx5zS0kw/41W6a5dij7rvC1DzAD2d9QG461XNb0XbWylxQ71Hb9b1rHL30CMy/smeeMz4sYdunW8oOnHkoo8Ynjk1reFy7FwIRq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2cGYG76qYFgDo98O0Kr3OnHV+Qwj7Y/T9TTcCuVlnTY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "H4pjXbERLUOhySHwMoFOpQz2UmgUWHsuMLg1Uyc0/eTufCAWLFcRrv6z5zapZXyj0SjiOj2RqTfTWyOIVeeeBppNiNGags+94K/pkqHLRU3YzwK9qzYPD8teFK1xh/uZ0TJMlOOgeVBmXtnRElr6thtn9zsLlbrhlzxM14/S/5p1BUXkAzPsykO6nkq15UE4lgv7NRYzApVQRkT3iwBNn+cDsAWRvy0qHMVItmDBSIBrIiqEokvKcyaQA9pZhz5RTGQX96A0OsMoTjdkjkKOpNGaCcLlclKrRSQIQn1te4xYiZNslw6TuLrjfrmdAmquKnVYsp5EI1oC/wIJmffGcIuVpToANTRoeZW80iDFAkYaTjRdGYxu8xT6FK3baL6qsdTSfHUEJShEJlIpgEwTTgJ7rT8o8yLp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2cTFxKFmn+vkLqkKX9iH24P/wGgDHS4rRbIb5OTafts", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wZVmjWOQOIt+NZA9P+lPpZI5oS7p/+dBJeNkWRYrrQjy+LlinGnUIcWD0uJ+YoxJJlUP3z3T4N+Sn3L787YA8jn9kO/Eh7LS9QKtQwStbHD0h44OPUHLoEKIjpWb/xbTBkiyg7UezxTGPWjQRFvIEJ4+QDU/6oVSwMLkd+EOaIVeOsfjDH0myRj1lQDazOiD4T18egI3oqAb9iRDNPNjiX1d9/Dxq4aI/chaC5m+X7rePgMW2vvETYVHFkfCpgNXl00JDsjlbcWMwKslbFAC9Ze3jXWBvj7lkk89/qZZFOoMN3/GPcr93F7/k+nSwpVE13sqiYe/ht1Ch7jpm8N68Z0lJD77A5ew3DjwDDYx2VvYmac1bksuAm/qSGtvQxc0N27B+t9D8En5nc8jIYDPykQnukVZoZsa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2clqWK/RXsI7UEYzNmCd679uIrrQPYcjr9PXwAMTOr4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aNGNAvsiTDOXuTW1dYxeoKSy84W7XMudtNF9PLccjfbkX/hCU6t3KAKfkXmTXOOBiuHGq7SDdZg4nF22UCKlCLHsl2E8gogADzZv/v/fQqeXwPNAPNJQ84JVxQocQLM0FseDdmpHxSHWTvINoyhwlc4bU5uUHxGje/D8gVQkpg8hUEnlZ82UeKB3sfy7PUu00l8CAUxgrPEkNYc+N0zkA9gbv8oc9xOMfqhLzUhuK8A2aSlvSjGgCoHiCBFQChP8UlovksUIfmRUJoYEZmKiY2jcj6Zqfe0YKBktuzCZMv8ZQ2VqkhM1JF1S3CTrWTmGeuOtdKDDESNs4+3RNdATht3xrjbIYiXNR/j/RaOwMsBl17/5tBvKFSU/yP+GVnvVtaAep3mIIN5H4L85aczJHt2qCKlfH98P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2dRdD0NSnvN7NfnVrE9BX9G3/x2u5vxXD8SFN52dMww", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e6MjXHxD70erEEQBwYMh+s6JjAle0+8jCXNHhwX5L5NTADWW7+dbU2gqbcaeqF2I1LTnt51hTtKvxIu0w6w3U0Y+GjlSQF5a9SDN60ya1D8s00uJsyZvmmnysVq81OVEaUEngKImJzmKzT4wS/ThCf0fhun3TddVl/4xbSjIDCR+oOyQMJ/Fp5D3a/O5fguWiDEV5ulzP63rghzz1iVDMrzVt1dE2hMfBx/9s62AhcrRdl8L8/wdHq5F7KYXRvdPCQarXlFxFhM72uXL3vkACvNYxhWWP6m2PbFI3/5viDKpc6HXrsfyAsBuREzqVE8sHhNKwsUwSp6Dqnp9CFWXVDXsnuFzEqzHVDIlr7sbbGRR8g5pftsSVWfizlxmtT8+c8N9WJcDUDE0aLWxYJnxQQimzcbUG9QU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2doj1u8z52RVLz7CPgWDdwThyzSDdClTI/3MEgw5ZQo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+JRu+GtMXzPCO17FSiYwhWuSKPmAUt7RUbgdfxZsGEGm0eze9e27rTjrDklYm+7bdOB55EEum51907VzDxiEVFjd00fXpCCKSt7yqRCDOIB2k+fCJlpXCr9rZHDwhhSR+uM9cVV97NE5bZZuKC/GuC3ewjDz3uWIwRtYafd6kaTVBbTfqBkHAOFU1YBHQWpWJkZ8F7SG10EgGx3CJYwecHsWdiXi6rvXPwTo04nEvfdnUwLS4JWApvBCMn8BVd6LjkN/6OrR0MiQlS9g4brkIMWDFxGyOXGmmdb2M4lPMoT3+bSKdewC69pBn5iDwuSRhKTNHeZE+3Ocf51LKDGmem6ZDcTAwSpbfb3ctiIM9zqcP8lJau7MKRM6A3UTwEEwiaHalcDYFR2OCgInC9L0buFLyqWSw/Zn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2fAK7Zx7lCaVYQk5qAcE2eS5dp8ka+ooYHvkbEFRDFU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8H6IQz/YI06qEC9PsLwvkvaWKJmBZiq7GAA+PhkL3BOG7WqSf8EKsBH0hMZRQizubz9DGbCa254Xor7ryd2cUyikYdYP3Nu0Z/OlEw4RFO0NuJBmSN4hNOw43xGL3PL0DFb5xanuo4ZwF0GrgmUZ60GymKenE5kkC9GW4Vom+LrrtwYLXKeOJe5s5VEWofO2wE6zqWNccEqULk+3/uD2R1qzh4z4a5vVBft3vNdUJl2nqETJI5zZqmg39OHHSVO03FPstzIHcOtVj5lAF5F2bR6PjPkTq1j6buV1UA5nUvl0mYw/VUAByyHyjbnVcMthhec5XqjUPJ94TqqEcaznt52eDEDkUZzvzWdunWtpSxw5dhOm05lJ0Kq2KqYszsurISwWLOeuz2EZCE8QG8881UBc2KQNUCiG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2fiSnNC01KN8FAUx/oq2A8YEJaZg3QjG2i8ZpBEpseA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NgbzRsD8jngpP1N4z+pRLsm54hPnEQHGdiOWeg8ld3wryE/anmL5dKauUdqRfszRhympyt9cyqJ9k3lLhLdZ5f1SGOB2kGZZTzLZNSxHkiAWRnnJED5xVDpjs8gILg0349Djo4rA9YxadiqdmtR3AKQjE5NXYz91GFR5XF0gsEX8jkPBYqYZdW3NZnGJR7ZHobMopKKe6T5VZzxDIT7DXVBFWhahUFxb8UConWSbk3aEIDD3QZNSX1UQVe18jVTZDvYVHiJNtFnepfYbeD2bm1ximm4InydTbA/fOeXvXOTeUQw9tG5pLpvGDSgmQl3A2c4d41YN69+GCEqGRMJh8x9padVxjjqlGmjP0v/vtsagm4AsPrCYoQvqwB3Ln6Hdhlj0lytIjiZneQAYJ/9yYds7f2mBggUr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2fuTlqqKmoin3Uy9LmdRqfPnAfJCgbBkPJHKm6xepcY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3G5Lr3PmG+h/0FdmqyDaENh3Ee619cIUsA+daGIhf/mVDwbCgsGth1CzDo4hYZn1dnTItb57s1XN52XAQyZjuBgdtyD8QdM7oCkY+4eGDn3WHdSC2myQhvz0h3ElQToDz+OCTO9L/63aZFGmoUQgSnr3/woUbLBstUSw10YtH4JNNOSNC4dQWkRba1deJEbCLfkXr7InpMBC60pK+a4ZxqLlm0yqXRWeJrQ22CRroFmQDa6unhLNG/4ffeAkpAZTUmyK8ro27tWpA2WuhSenH4uInZRLHfWpT8YWjKBWzErXm9CwEFVhonNrXIGhp1RaRJe0lJ4bIxXIA1G10PhtpG+vNlDOb2CgYk/OkcuKSarEnHqh3/OlvDczmd3AV4E5geRh3s+crccQtAMdp0ssxWNaWxvEOdGk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2gvu0s/ARR4FjxtvvWyp/vYO2lnMnxU/dli0kp6fbeU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2u8i0A8sAC6bqBMrMb7K2U3mEEGkdHXa/0dEzVi52rlZ86Zc7TnBpb64p+gm2Hvo2FWtVzY5lLrQQ8uif11WBTXI9FLBYRZo/hyQOytJVz6uIecogk50ztWsGZu7nVXziEt+6+/oZkKXDKptk1xkf1AB+jzjD9dxe+PmnmNR9cAlOdjHv2bjuH4KYoRuVk75J+UMv0loSzxl/1BqCuqHcuH85dw3SfLzWX8nN+xQHEEd4+wkrWfQ/3+OI+K9GwMa1W3us9LcKF+WlitLxOj1mFvJ8QD+YdCDtU41CcUKSc05Xt0qjGRrblJYG1eQuEG12nh9gwG+0CZluxxUy4fxndCnXifS5iY/MXZVTA4UowcUYFSnD8GdaZdZ9L5FK11cnsVX2pKwli+VGUWKXV4SfYfW9PHwSjfb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2h0KSwst+S7nljpQmrVE0892cJg0C6hMQyxoSBTp+Vw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HcbzvzkuhBo4JgYayEgC/FO1pWWTHFVPCphEM6c6XcqAJW87GucY7011SqZNJVfoBIzA0viRcLBixUFgRqiFSQQzK1aJC4RG8XuKsa5r8M0mPWyDS3B3G31lJ9Jhj5Y7VeStv6AO+yw1RBYB1eQ0ifv1NFWzK9oSTM+DHPftn4a0BXXYxjrj+wXEU4DuinjHVRxWvwH8JrMlr+G00/IL0zSocfBXfuKucYlsExzHc7DqmP4E3Xhfm2RpvcBAOonUi9pCZGw/Aj4W418JrWKGUkDLgGS7ONhltFemRI8SyoeZUaClwpySbfGwHEfu/HtK+NI1qvyl1womrTJwzcH4MOpNI2h7mgkay467fDOIR5WOth07yxn/SYk0NjkVSUY+LV0Nqzip1d5uyrTEkFLhpdkD6S8BVNg5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2jYx8f26k0+dtdv10VVvS8/uV53wH6UaN6D9SiY9Gfg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Xmt8ZOqZEnHzBHrZ2s3B9WcBGs74pDXm47kd6/pTx/paDsAY1hxz5Oxm+LdBcv8XaaK0bAkpMH0MyiR/qltlo7/WjAAqclx6X721e45hrEHXIE7K/sMM+fcIoSItmxJ8UXTxZZE0wHZ93WHpZ1VIgc1mFjP7U6rGwShIUngp/G0HquGi6sETL72Z76n0Roy+Ha0esVyb/36QrZWlgxPxKjIz/LnPF0y3EE0oHpKAC//sjuPWKtvX5SmJloAJHRBNXgDpIZz+uF881aNPtfmMT42w8wu41grelxmjxZvAC1HZCNxfQx5ZUlCF0KGIzNYYl8cEdyhkVqfWSbFBNS1lQSBDPa9zdVhYqccBxpImMZfjgcOiNrkE8EcFdT4swMwJX0yc+F9lEPZz/PVn7MJdHNW8GXFpM/W3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2kzB9Tal/OlKCpSGVrOJVe/q8JB75pA/zcP4dV9qvRM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mled0LJfcJJ0eA+YUDRJp8xkENHifPQBcrjLOoHIyWlcrNYwlyGi91nNiH5/h7lEb0EdxX2rfW667/V0vcaT2wsWRmX118z8CINmIr1ig3jWYnmh+UTIhAgx8CwOS38cqmOv29hmqwsB55g+atQnbpBfQOFQz9LZ1mQq1ut66uc87BnSyWWaZumCK5X978oBa8xYPu5hzyK3fF2N7gcrWJBP1fwn3s38S26AAYTdZD60zCYgZzDKVpqZVoTLJSm66THmtMU9sGiFuv/R234x7O6QvWIm5JNozAURCxMtSe/v13BMUs/wZvR0smL35bq9JNA4P0HRVO1ha/FW9nRirwm3M4oqOdywkL9pOBb1qlBrWGoQQDJ/dqcSho4Fl0f/cwKlZwZ8mRttTa3u251tMIXIK1k1KcHS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2mA74S+yZJN+bkhNmgg0e2fxsIYQh2/IFmkbujaFx1s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RiyB4WanYFcd1nc62aP4uCaN7GR0O/xh8zdOTOmCfo96Twdpu7W5vYNdx3tyM9g0rs3zgg/JBazGcAMPioJzGXF3J2UecqGkrBkCwikLgmlH1l7cyD9Cm0NIBmTFUguuP6oQDNCJmrivkuq3BDma2+m3vep3mQ0fQYjG+idbyjNCt5MachZ021xwNNxrFC8V67e2JCYGITNB41WdqpsZxZ/rvOA+72vfny131drA0zdgVm71ij/w5ln4YBLiOcGwWDV7+wtMkYPpE3ebBowUnWv4pVTFfWniv32Tu4zowcCzA4lHJ7oURUR5vr7p+K8hcEOdAa0XvvyxaMDtmVjzNNxy8Yn930jGlfq4hOuOBXrly/yjROT+4YR6BzS/7nY6zJnkoUZ+7Ii28VoZKsmeAKiOB8MYeKC7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2mh6/k6jqHHzDL1brrG1wYbl7/VsiUuiuh8VV6Vzdz8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S0EHhjG/NQVbwytX+sC98l3ABJgj+lzqR51WpBFngwkUPSEtOkLZ4FOpGaSk5YXrisotEyEyt+HQgdys/1Gik7Vm8pEDTpJEGi+Jl+V53PMNFGAZRb4TlsUe8dirf/e10lfmW/Imaxptnz9anszxnNF77BpkcTEuVYNq1G3r++eyJEwAsY6gu6v8Yw1WZCeLwnN8kl08f5GMixK8Bp1S8d9MVeaJKOJYKcEB21N6eBQnTwr7fu0E+2BxfH+kx6+nj06PffrEC7BvN50SkPBV1POrVvtm0jVbrbOTkjdZOmjSoFDR+o/vBwuDMNkVZH1LhCzjU6tbjgxnq0H3/0RUqQgqbfJcfQkX6P4C7nW9SvTr/e3+AIfFlZNnUhmLueyBaZ32p4jIgiGx3WolBcdizHRqN0/Jrmwf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2mhyrA+ib4CP1Wt6BCSchYILGOCcPm7ci/GU1dZParg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hU5Fa3eyBiO2Oz176ogtl6hcpARvcAMF/xwu//fVU/YDfKSoubOJz7FHq0jSHW/jYQil3x5zcB4mB6FHAUv1/50NIFxvPb61MmYC4q3PZs3QMDfdQRkJGF3l41s6SDRu7SdSE8mAtu4ZqenHp9omjrbzIvdHqs5lp2aTT997BfUnqwJAHgudS0mJEyTDuAeRAkBS7bSNqqkIGJA3CMC/n8jJFxeiE5OM3TIWQwMx43gIkbJ/rXNERS+/T/KFrdMPf2wlUCH9FVuuCYJOMftrNcTwUGIbxy+gBbjHiPCmYptOje1tqMc5tSssfrdAaPzqO3u6b5VBJWqSXmC8Phsoq3jdiptgw1tb9xOW7pgix6b53defPQT6M55oVPPjH55vNl2idjBPFQELbPOYVBHMeh1so7aa8Svv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2mr+mq04H3ufCGN38ctshC5LrNwSI7D39VugTPxpMxU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XoDU0HVTD2Iv2p8z4t8Xagxe5FaOd6kQ+Qnxn8iqPKMYFt/2kTCmvmp6cEdiH/YQsGdoBod2cgfefluwnZ22qRmOs/KhStMLeZ4F7glGOf7eb5BHkEBz7eZ2zIjDcE+DhjtuwGSQS+GMhhhLaAmY69MZvFzxbw+R55s8gNWAfT8LBbZo6hXDVarxxw7BBfsfA8cGB6kY+h6qPQaMsigzxhCoukh8lUXld9jQ5MlGZfTABim/f1xpeGGHtgduxAIV8iq3A6FJG5JRmiSR04UT2sulFpZpbB0Qmw9+CGd7ZY369jVT0/83J7wsV51RRGNu+vBmSZ9HGVrZQKAmvByCdpryDlW52VTombnVEtEUriDTzNcF2vNGuD1qksaSSt6R1LuiDks9gejqVdyZPsH4wvEpfCvDhAAs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2n/agBNKOd+X8XKv3Yy7s1ouzxpMASsX3B5H0lkYUdg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EoS/RYC/5vIbJ6ZJTHbZwz+KoJqgJZYSeipLXsizMWHQXtDY8vIiUhKtv+P1turMr7xCAH8EeU2ixkifRYk+2+06rxUr9m0hd2XY08thOzyXCMZOXpM0Lszdh8wxgKgi15QqoAb0fAq9zyCnYRyJ+X+QQ+c5SPq+wg2cVtOc4tbMmAnCKhLdpsnjmul3NitmKqVjTdkXZkxtApLDyKCaSOe3Z9/3p1i4IlspRaKazM/u1/9GwwfmXBtgXR2sGy3kXiYyF3dePHamD/BCB7rrqiaIX4NIfbVPSJPfV2eYdSJJw66DpaDXZzrfFhThk6YwMk4Z3jN7scH5dpCq6A8V4HqH+Johb5xQAQRmkT78yg8XUOGS8g0BDhyREoIAlYewWZHX0aLGzGrvcwC0fvOFjWZhR8Lolnzc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2omZVbjDMct2egwBaUBO7SL6wcGXp5t94Abdh0/3Yxs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OO91U3BcU4CY5JHaBYTmG7z3BgX7B/3IZBY+ss5E6pv/J9lg9CBA/8MpAZeBrifYLGwmqcOiMbG7GM8uVbtjMOv39KeXRdAsVV88ZqwBjEz/A3X2WPK6qmdBUp966gwuiQlL/V9KQndFywZqzxhYFiY3BneySt4nLW+OayThIcYygAkhQ22URyBXmiD/A+rNwf7mxwmnwPGrN/KzrxwNMv42W3kml2g1DQkuvboORKQuhVAPYsitotjs8NzJoh00YRXml5eyGhIecIZvLOYEjdGYV9kOz2zqInjpA/AwtqS3mGLm3kkvATAUaZoR0Nb41zuNMZ7bTOzxn3+6xc7sOa5I08QRQ+uZCDecOziCNqftmfs0q0eWivkRobpw1QbhYaoma4i7MPoJPr+86zC0HUGDAJYDT/BT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2pow2sbrkhFDtOnP1fUUiWniHAUAoSxYFSZiAUI+Nl8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rKp2N5M79hSkbq+DcJ6k9lRTIxbBoQyOuDpxnV5t3U/myx1nXEvstgqJEhyS6GZ4QOTywJbncwXrfl4sibXNVU6GQpQfzbjl6TZ9G2EV+C9TQchuuuowxpGvWjgCyIypbXkOu0gyoscCn7NVmr9O3f1t4VxHejZYLgVm/rv4jaBecFvWeimjS1AotbkQX2XABPYl7aXdFNbE/W6RJm18GoM3d4RSZ44xDoi7OZGmf7ozlA1pm/EQLl/kMnSVhhYScGawzUyuF9S76krP0xXOlgVEG1UM/7ujh0LA53eiCT9j+X/NZf9uHFYrwypxdEcKCrre4gBL6brvLwCVAI0mkGoo0kQBs0k81Vyd6SJStCLcaasfBfYoKZ7C7rRoGZmpDTqjnrLspkOroystCd0xYE9S6s1YPv2+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2qW+oWrx0ZfP8xserrZtZ0Td8HLi9ll9GVy8pRsUcQc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VCCgADntCWOQdg3d+Q7cL0VbplTJ+9Gi31AT9AWJ/aB7W0o9vijjrySWpT/x+vuJkL+2G4jiPSfBkXl12BvnIAZYgBMyICkXSRu/Mub7JxUu1Pei1s03lrrRSYE6bkBh1AbrocQ2P9UYrD7UrZqz8IlWkm6Ej82iJBIm4DLz15GjY82NYk6ofnzDX3Ue21jXvX2krPjaqD3gTD1R7dysGqwRYtIVX+YXZ766tVoDSM+C6s0tJ4c1cosFQm6MDfpTpRCnoJrBnP9tpLEopuTsaHk3iTHdwkyh/eoWKivTJnplEp3LwVFDwf65DgxMCjv5CGbBn/mGtX7IDVCoLCIeZ6/DUTNfDP68y7JDsVny4wuZe3CJThrmn66dI2TgpoIFAnaFyP9U+Y1yXkM3va9An5w5cUPT4XpE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2sjgMrci6ti1ssqnYtFMZjkCUp1NSMa8unoGdZZqIRE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M4dky+94oT4cR6iekqRSS/Zd9KU79VI0bjA4Rho58qy4rMjOVc2C6ToXDSbCHTtEwU7DCdriJZsbBMFxBPGr6oyW+2ZyiPnUulK0tT74bYJBgZgN3XoNY/ss8YBYAtjJddta8JisEHb/GaQkTb4IjtD4QbgCXWNUO8BTuGMPm+Lhl7coXFB/B6nx5ptW0Ou7UuvdvbH2qORb+HIGFad5SJo4nM3xwssdbxK9L7M8AdsukZ0G1r3hac7MdXoYpdsNFdsyGhTvFi36pMLCKMbhGjKqIfaiijK89Aqj2K1ocYX3fjwXAbfljYq4NeIulkDzpO5SOlix2Bxb0LeK0vkPK1rynXGWxstkum3dqNCNVkv0hJQHrr+6OzlR731N1yapjYQvhMvop8yn1q4g3WL8lRcb5bik571y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2t5dBjBNjqUwKGz8+VA43ucZzLOjwwrYMApScuS3vaw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gRHGrQGhX4v252XjzG+XBNF3tuz1buEhPBpEw8cLlUPMuovAH2yklKojOdiG1y3K2eaN28U6lsubRxxEQ1tHM2g1V65bGO6vTuXphIiBz5ax74mJKd3vMRd6TkJzg05yCCxZFBA/KaSXHFqnvxdmzR52ZmGxEDMfFZ8ecRv7ZCnLC1WQvioR5mBkG8GscZMOGJ8WeUNODP+M6AhdI3xu9298ThJRVcQBomDX22mYY46Jfd7DGcX97fsEfWH7Ye4X88IRnoaZcMJJCIxCAg7WloiI+Yv8vdo4yha+JpY8FPl8jgAkVerFsna0ObYVIlZjMcu3mHCDiIw5vOz+iMyhK60iGejmVvtQoP6OsMeTcxwmfSIhAvdVeQwWWwJD1HMpWoneqW9zdot1XiLs5zfhjOwlckHcrin8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2u/jvNO7UIBNifq5Vg/xb5EncojBIZu6XrFPT4TSkZg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xrnZ8GH4eWpd1vRnV/wjC6E5EyHSYNFbR8RsGKWzUNvPNW4y0AHew+2ak6RQm913COp1yYLAks4GgIFBiwOA8l/V0mwNIVVhyB3vGsWy+rnHd5lbsHND820I9M1LXNhvkJkWtMKne7Uj6BYyIoM5eC/6lFkhIzLyjYkMYo1OowtSI3f8fPHmDZR+9Ll7BrWeoxgp423OWUBvJYIaEsajXAvUa75W+fcXCPl7YJVX4ZZrZyfmAzlqTSoIyHCw7Ily2oZ4hh8MDRGMruUF9k3iryq2IYGo5AomGnp8IOudzFAINH/2Di2klA480DOmyE6X8A4ZDU4Fm4PI+i1c2ldgPfBZKuMmsXknNEmFrKhBWIpgulU6BjRQH5Mo/yCp98QU8FdGKrTxOeKpl2vQNoPM4Y4RFYj5z/o4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2uF8STyZr93hjDAIwe7H63SllU74R+3BrolV6aie8OU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j23ZrGoywPnnzUf6DoU5JclppSRraiXaUX+WDuViXqgTqPWmPM4g7ocXe6T63MzgQrUWaTM36Zi4lK7NqH/BdlgNNHIKbFyO94prLzrzDd8DcqtLc39ATLMf+lFIcELaQYCxLQqsgDo0ILitgRHTmSTsEu/Nf3h6WG6u0h5sj7lsX12TCPka2Wza9m9D+LHTxyUgrwwWW+Co0bW1Grlnh5yH2CplX74QYkYvhTz4Klk5F4T6x7NeCy1OC4gyuE3uFZeUx5ajbFAaHoDVWNKbWkwp0G/MQojyjv4SQ3RIOY8akCUkM1LpRzWDJEOpu2m7r7ymkuiqJLC5HPRcZZwj2Egq0z53Fj5WWSL6EIjV60EVphHjp91UESSseGd4HIvbTsf3ZzPkq6n659pk1lDhT8qtpEwX9q0V", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2v2+uCpopsN4OVHox5PX/FS0p31cVSik8++mPt9AnYs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FK70jsEO0ZKS4YsrYZcWpNNcTMD6Fz2murCiF2e9HlCqHX/MrFTgAc4F9dZV86p92rCJ9gDQrKrXmqOxrKeq9hvZd3UN7beacKcdj+rfLDtmiop2VEAs6CDmF1swRVi6RsW2vvKM3NtIkpYK3Pj8PKaCl5Bky9DHkre/79+PLm8AJC5EfO31F74KF992GMmMK3IEI+xVcvBsDl1m2ExydeETrW/+h9brjq1s0A8viZmn235IPADWXizikFycK4EdRW8IgApnHGSCA3iji7zW4+RqcKJb3c0xwEvD+nNiHSduWnNe34RIut3VsFiTYRnpZSvxuHPtSg9paSbt0y7YvKcznOn0+bZt2pQSVoNJYcMYHMzwXPBUnt7WvC9EZyJxba3pNbAW8cCbVdJ9PwmRP12i7qhIZhvD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2wEzWqQuoJaxoOFePojjXZ0D/sawstJQTyvAmsJy3NU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cYaHL47Au9wu1XqsvvsBhY/uD7z0kaTuKo6Hsgp8O3KY7tGwV6F2b65N26UkpkbQwkwF+Ev+oJX9qkbIoRwzGsSnREJj7kjuzBfzcpkniUQ+uSTKk2jVdCYQB7vkgYIvudKjPZJzeLyRJ7ZrOVZ6F6uCnyMm1yXZTN+wuIQszSCb+9a1YHfnrgcMYgtXI/KaqVuiX5nBu5T1sny2UHWRRwFzOgspwkbmfmiy/euuRvefTMeCFvWZqTzT9fj6f7FPrzqmonAYUjJQaHXDWqUH2sFQw2MQjjW6IvRHakT5CYuzbTMOEtAnm99lou42DQtZuTv6swQb3/YGhqfiSEZawaH2kD9X1t4wh49mApTZa+gGOXjuGDNLcg5AvXDpthb/7xkjlM3eT7emcN7CidlWKoq4HgYAleGc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2wodZpIny+RNEJNDRE4707HNP7B/ustnEASO8+esk6Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qingceFuytLPaVGLZUTxPq6rRmahR8o5ka/VR8ieGILhXZ++knlaiabjoG32SVVU1qOj3F/swmlEXt//kzJImpdEfJ9Cdv85TWfOQ0Yhk9ZFfs+LAHe9PxIKzk3V5CyArFZPJc0tFm+D+j6eud+PPDsFJCJgyV7flHa5P+JebTN87gg+kLv2q6CALDKBkbu9vj8vWAMGS6AnW4M375/fYIQkt6isZ4BwJogNAOaY5Ed14fkVgrK9L0aQJO+VQDAFv3wn7mHaCASdjVs/jtPtDw93+TpnQhyR2d4ei5iFUB/5nMvqmgY2/h1QH1xiFVoWZmfLhb6xJFD4/qvMQVLwZMR1JRAggVNMCy76doJMEL7liATmj1rJEcKO8FFDb15bODbWgkEvvKCfScO4nmyrNUedJrzGfA94", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2xKOAFX2TGaO2yna2jcFN2V4R7mcMWghWHv7C9UsNxM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9KkBrKeG7m9+sAAWMVxNgVREZLHPH8VTrCNKNb0sbaFFIekN0fR27TQwRbI2JYK8TIapxIFJ2NDn0P02cBBPRBp+hXXuDa5FQIzm73I5t/m9AlUJQC8iFS77L7vS7VcqxiC0ccdE0PkP/JB+yPAibL9TMVdlmAwX9uE1XUHcX/MeH4lWWxVe9wLNLqd+PrG88GgWygpToeP/d+g4Edl91tR+Ih/61vQCNE61G+7JgRg8YsNXQz23DkAqnA+iY7WYQgM2WGlO0VUaSnhbcwC8mFJSq07dyaJJon0HsH37g2JjUV4C9t+AopS+y9vhTaa7YJ69kj4GEUMXD+70D3eJuF+cpTa4xVeJaLR5NVmbw2CIBahYlVro+609gxFR0Vdu1gAkodT4Il8QxhY2fwcKqn9nblQAEo5/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2yc35CJQpxCTjE3DZKKf6Oq26U69ocfVykCErJ4PXGw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QSHYPv+O7CyWNci9aiSb5LrXK+ah05yyuI+HraITsFLqV05qn+2Y5DvJajBlq1lrAQEuDVS7bakwZTX2rki0y6MrBeeFmPGsbpL9KEt0vvQZRhvSPueMTOJiAofnGWCO/65B5lpjgB65gnPgTAjNDQVJDf8uYZcWHQyqrwYKgWrqKNou6SkQnlhhiBFVIYDlrZyqRqTNQakC1HDMOOZW7/06ZVD3z0881PV16TMFM1btO3/gJFeXRA5fTV7CY9MDwVR09zAdZ60B1I5WtArYqUw3boM1ar7JPFRYnhGYcfVRae3bDO2nJFJkwNiF8xBsnH9fO5v9RXkdw+0GOEBidaPuq2Z0efT8HrxtqwbmuYecuVih2cLNhRBZ5p5MLPJav7zwtJF7Esh3xGI9BsoCFT1oE+4J/XMb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "2z7b2RZrOJKs6GM7nk/6AsDTsREMbdUKfVCLAJsFXzk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eImhHOt0QdHezlNtKQgH2vpFoWYhPXCXPALMiSn3AqjIwhHnQHT2y1ogBO91XB6Mb8YWZzrJZd8lWkg9mJRKvDUdvrgm5BAbgCu86r3td4uZB1IH1bLjj+ffwEvc2IxSPf4ugdldMtI32cJbNf8oSeMCN5CHHc1vdfibhoDEAVINr3/LK55gFrJxXvfcOTh22aPWzbiCiZGTvTfu/lYe6H1By+wPs3jwYH/c6yJeHbTpwaW4S7YWcKoHwl78xCJPOnX2EIkT3HDdhzG4CbZdqQ08bobmUnqL5ibKsfiVNEVAis5o1Wuy27MBzBPrw2LQCKWfP1uMgcytyqoMOcwB+91vfxfNFzWQkNYZTwu/aVE6hJ97Q7ZCoaIldzyShiD6/3HghnaElTXpo531y1pvVB8CvcJRq3Wm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "30uG9m/apK3i7D2v1YlfYUbLPAGqyKRMX+Jbpx2x45M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1QMGoiaBQsKGaWBrNDKDLSNVN0cu3r8mRVpRNtBUhNT1Y6PFok1VDJmUokVntxqKieOeI4akPgksy9WvH2kwwbJEzilfzHKs8XtZAoVdos4F24tLM3l/RLvzETRhSNJENZ65e3s5QNfBv2CDvzkdEwEK5qNsZgH/22ORdum78+I/T//7tLEO071DGQAezwKxqN/rwG1yrjZQB0M4bwbmk2JN9B50L7fZBP8hRhbIFcAmEDD+aJBdwe5kRjTvcxyKrRRPMtQqQwhqGDWDPbFdLmF72yPz+FbdqzR7c3LNu637cvTKz6sh7eM0A1Re80GPg7ZltU+hexiy0fE9Yf5FQqatFxW7PEyKFKL3Kj72f2ZuyXs6DuQ/zbpDaP06do6i0U7g0IAQ5tQ84yVjDA9Vw3TSgjIT0hgW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "31C++WtBIK78por8XiJ8KjCqLVh90sS53iVCwNpWlO0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BSyCOM7Nsd3tX3tEkmI9r3akDxsIQWNe+nkA3mP5FJUC2KnnQcRt0jJym659Sv+Bj8r+DnS6qgqFk2uQo9gsR+x/chYdMHpahsRPwIghTqJ4JO+YD/preJbpjRSUNf6COYmQfYUJK1iz46VJhRKZD7PwCd1vg9SeZn+R2nwMTpihYA05PyffcjGqu1UTFYX37NQ0G7xHvkbMKVEx15YQ/7JYTigQ9WxVuEhOgHlYb0uTo9zg+r6VHM8RBgIbqt+1nfmMgudZPyEeV4SuMdLNpno8lX9pHQ4XwHaQTF6KZnBtDJCtOnexK5IF1b2YFo/k+lZ6Vzv7Klau/Cb2MVSiUWVtlYDm0x1jkLv1CH+F7AGjsErEDBsHqyvPeg0oNPzlN57muH99+I68Pvw1n5xCRnJqbTfifVid", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "31h3RcDDjvhEGDiSqyTHyX94yqvjhAzSLZWURmFx0UI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2beVQA/oMXQaQ6ItgNugg1E/9HChsRvzcoSuZiPEWC14MPEASBcD7Dro/AXbgFIu4ORab1RjSIsJXhQ1KvFvuQGCmVLNRI0T9Zuac9zu9q8mvPiAilVTnTR/yVMzReXMuJcaBblIp1Ea5nzz1g80BSYrMxb9xn0ClDUfASfwOaXdmebmP7NBBE9lfCDvJDz6Zq9CTtumyv3G47Ca5iYLW32gyBIiima79QWfD/SjG7GlbXqBob7VXlWBpXmV6zEDaAT772HWPaiB2A0x3tuTH1ICiF6zKENUoViWCjqvke9tgIHgSWdc7S5E+PvjdmUN7CO5cn455Mhgb2j4g1xAl6d6aWWMCc9o4QwW7kbqItOjz0yGYxLRg2XeY4RtwG1Bv6ObEP8CDCDR1LlxGXUXAaqH03+Wjk0K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "31pOtClrm1UUHD182apvb3xr+Z2SRJzMBLULRkleAEc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tUHYOHgvsJMJ5O7lzJJwusWJxslO39x59bRaURTBxp2O7aRe61bro70xMzKO0PmtKy+LsjDoBigrhs1sp0AnuifsB2wu3axRoJAIKWyGiNmSSkznR8Dtpp5iaLm11BeaccXUgcR+zMw3JWV96q82DsOix+fE+2IDBTWUNHkHc+LhVbIiTGUa1e1Q5B+MXJGTEAvGH8/W/s1nwasCcdGHyhpr4t2pPJCtaVuZoV+jV3r5lz9fd3Cimrd7EkXZ0tnjX2r2LfOkOvpepoxiJM6ZQvkYrDCD4hpJRZqWK1yad2lmmu0608epWAAwqxEfwIzqGICLEeyJsrBgjfabM6JMdJa822dSpXuINCnXwsplrGGhYgwF6XO68ubZFVIe14Du2S7QfkQvHYI5OyQ9wxhlYPRwheSqsDom", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "32dRjf24gU8iOzdjiz6J1mb07dM7t0OkLBOGg6oO9Ak", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xTAIDMgpKeX3XSNuGQKYHZ++AAe7R0iolrAV8Co5Up7mqdwKHT1WIEZ6HixDtLe1XZH8g/lISiQQsdozlCWfLqk6asZGO0V8ijmEpQRVPfVn3zAAb+QgN0BbBDhW5j3ozqj/Pn9NObgWCeHb1M6zZkv4yH48qFWXMm63arhDYsYDTqAqyynOqK9vC/ouEzs6MC0duP+6e8EsIo1B0O3VR4t3E3zH8JjqLTqAeB51SnMp1LMiKdeJfsV/fa5wNJwCQdiiCfic73Ng9R69d6ooMw5TQi7rJvdr9Tv+jayOromI9YlpALIEcHfevDaPc8ib8mDt3dDtkLAUXdzDrg3WfOYbhli0WMQX9ut2NnPMuz8RnnPQ7lBkkeqpzhO4Thmas23Honzj9DeyaUgzeMC2fRnpzruUsxwP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "33IP1sPvDcqqiyoj/L/rT9D7sQ7FiUH7rVcv+pBIrGY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kTJIFKyOMPb9xMB+D1iXY5F16pAS/79Hq+OqBqDFWYbaq9yEfLLZkDOGVeXKO6XM9AV8AmhHl4IW4J4N+sZotf82FftgXMW+IKYlnc+gNgE/30eKrMIREYOc8VjNsY5ehTV1mE6pEFhbUOAc/AA8S+O0pFFIvqpKFfEuk0k5TxSPjR6aAFFHTxk8xIZUZq16M7xWnUlUSCwnK5cTbTCIyysnkXMtFoW1OGF6KuHkOic1V98aLDLzVMb3HfMDQuPhquoY1JRQ01LM+ML4Chupx1f+CYI8IpKMkN7+9aNeG+5YpLNQQdwzqy5646vHxrDgMxH6ZAgUNtIJ6ByH3l/g2CoZE15SZkMNYJdeMFkcxfRsBpcMw4D3h+uxV4HLWHYG64WdYXsi/NfxBbpaQHoE37zfys33MEZr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "341o7cLzc+5zHgWqbp4Ml2VXateOO3Tl0eFj39s1PYU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tGG4bvli4BurUWdUD0w+JJfU54R/mnNX/zxFdks2mKzCQi03oeBXWw1iy72iEFzhMLBkqX41KIrPSQxUu1LFk0sVoC13o4E7+AEYlXB6xILiTbhtDqwTXl8mu9x/97pUY21ryMlz5aZr6xB98TAktpq8YYBCB6sEWITbObo1AMVHId/3zmSkrg7WRQQd/xofRnq+6NhL2VPbm6zd62a/T1GIqP3H37O/y+N2vdbUfGRFTWQ5NweEg0wIOspHVlkhem1gFZ63PuBcTjW4QdQX49MW2FzNIWggVlxkLYEa7AFcu/ruqijOypmdGJwQDUjHgON/+0YguLqkfooo0izYdHvj0+m7Hq0tlgE/UBh6goAPWJtIh/L1yZhQQCe7S5mSxOOxtigDP98hOTaHusJtP8YbeE3ZpVia", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "34Vx+q5Ck7S2V8ZpcupjULVrvy9ervtHxVJx1Z+QBpc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OU9+6fcIbWQDaAE76xZ3r65LKzOOoGXRlLWPr7GOV/35gmbufuBuml1k90hU9zYH68IIckYt01FYyAvVjpGFwYfHTCvrUMaiiqSwwQ7lQDINHRME1lRv9Yh2geOrpxEwiAleq9V8PancklDu3BVVAqRxTaHgBWvWBsXL9cS9GiIrMYcbDCrnCP5Wy8kvmF1XvdFME51OR5tZq6SatGpzI5QG7YzPs6+gAYnTgZV9YcKh8jSvOnrLpjFK5Z13HYTfISI3XTBcM0Cj5GLrwYC2y9fO0Biynhxsp607P+b6fCJp6zJsSlChX9Qy9ZhWjW8JtK8o/015S0UWNI5IbcvjNKWY6w+05AIVQxDxEtFs80qi28A370rFaQY1651PoIskMnmFFU/j7eZGoXHqst7RfPs1o50zNB8P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "35o3qpIydxuke5muVwUkUgNODUC3dfCemlDjVndbXms", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ullCiUAydE8GSDqHw5pcOiyc3H3QO+/BDc2644VkYvWyI+j1Dk4tbymaicG3mKxyl5gtyKFAR1nUKhuwmYVpOujQvS+wC+h/TdV/6tpfKy0yQrUjR9o1vpxbmz5jTxLsieIK3bsvOlDAmL73NaTC3xtos3VPmYl5IbpFE3eh2I3u2RNTy5HlQXtfpLwHwLrpclB59Ufle73JAR4DHqbCwvoD2cfSZPeuKetahcbeuUhN3MCPdn3bxfZrNld7FV9RtFTd0CE94pTIvzF26cHco6z/pl8qBDj3xKZ/diLrkecYlCcY786j/pVeTlaSZpan38eHMDg/Bu3IMQtbHl8EpOIZQa7RVp0rGmPGaBJaXS6dkMdFohPo3vpt5xmgF9ifdgNDNkvsORVGzJA14fw4qWd3UMBKSeiZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "361HrCfkYJYFK8wEKqAlR7FpbmpF3V14yovSm7VuFbc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fLR5b16cxF5vTMFvabOQwjKjTdNYVw5ZRF/CcHcCKjU7vwMsoNgIeWllnxmYvqo1duyGACQJnL8OprSESAtAbNb0hSbaknqZ20rBO9MqRD+PBt6cnYAqLsuPXl9GHxB1d07rRug5/oP97y97kl750y8fzshRBoHGsv6s8YqeHr2o/d0yAgTM3PNthSMMormsoBbs2RVC97OJjupsBR067QOmzKzH0hSJSp9ndWzvbx5N09OhgEXdDM9JplzAyQJMBjGllFiCvLoEwZGJN2V3k+6WJO0wZK8kOfNPtnEVhICoi0eGNS8zjCfam3SBvvAAVa9nfbl1qxQAXgNBe6PULy7UAjLTjuBCo8H9nShEURVaWbBuR2rw6H5sw7Cd3+qzjghlvYV0eDAeaLWtbM0Vffwd8LS+vlpW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3851XRgazei6EQ9uQ95CxowzpnJesvSgeaCgluy39js", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0mgsht0jpfAnkJSYc1q8w7kgNaBStUPZv0B85S4G92HFP9Gdus0yetmrcAo03BRdBwvnOjc8ik30yzRx3JPHdF2G5gmYiRv0NqAfxDPfiLAsXDbaiUD7AYugopYwIPsyU8IHCFYl9lOY1fzzgFdoiQhcreAOQ1+xktDU72JxTCC09YTNVl80Y/KFlrxvoD7nl2HZ570MzQPdDnTntpAkZ3Pft80MnKgl7c/h8i965sURkbrGFul1NjnWOudDC25tjSlmnlXwufnqx8drFi9CnY75ljGXrpTNa8U7Iwg9n4Czeiy8ebcS8/k/odUcTF8F5aFAVveDyQdti9ijCz1aLDDZb905BlHAtmbTiVYGrS9ZozG/XWHxR/zUTqu67O96u1gvKNT9tiaXgtV3Od7V6ueNN7IdGikH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "38GRNPjY2wmWvT8FBH6GX4Ha3oxlz2uqjGNNaiISYPo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NKPhBYgGCQf7KCgs1LqpCx6CuISeCQJnVfdi0WvuJpLuM+3nmhQGJXGvF2HH6foxgIOwW/gp78CAdIPfhmTmTmXPo60HBzDW49fFJ//zTaECZuQftzkEIkjrVffL1JCN/xEgMLdFVVC2o0hqfkwFMh46tFmk4tSKU0jhCDjU0ONyhLe795ZHod47dPHezW/Wt3L7obOZfrIqb5a0vOFlO7N4L9jB9hiu3MIlU26SgOU9VrOt16m1gvrKbVAW4W+JZ1uxCLWjCbna4JLWc0JDzmqciKcjKUCRo2smU5126AjKmpCSPcAeG8Qt2AikAAPrB5ZsvTCV6GOfTk1RL49WOevdj/yF4EUr/CftvFAKo8OjAy+pxbjc4Ai+6iUGlf7+OZyu8TsA5BrtmDXthGJPaG5T0Wyh6OGF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "38uU3zGUJl5PbyZC452iTaP4MN1mMFH88JInllhKj0U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iXzkOktpN0Nft8Poj0Kn4ieebeAKPmihPVYz1XW5+erKCrJlKOyydLxTNBvQ9VgxdPNhJD8s3Qhk6+Buwi1W5bnrzP67F7T2lpWJ9Er3ETuwxnDwS4yp0+dMmPkp1ox6ckS/nwZeAVYKIHYHYq3uhhZ5bqJr4LmO7FxGDX3Ho48qeSUdS+H1gbZjEyu4a7bxySfoANZx0als9xKT3RlLHSzYfq+XE2oWZDK5VOdS4ImKqIZoisTzLaxMARQ7HpVggYx/khpwy7PxINW6vIzzHWvo83oCPqapD/z/VmRgUFjZ/7/qyOOWjkieGVftjWUeBrRPWhfGmnmuKCQSO+X3F1IZjhRPeMj0GTZ8nPoIj2RSAyPePmHWhBQzkJK322xkQRBR68P1uKY9wRXOZbYqkqLduoXB1932", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "39J0aImYA1tjS+m5QHE/n6hNXB6bN/5dQvyUB5iSwzw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Sjnmfn0lhU10lFF2njgU04Q279CNQWtVcFpbUlmgkI/+etUegnAaMcggRgvI0WZ7soLv3TzQsh/ZxldTfpU4J3rDNe872RKwcNRlauNqeWSMNmHtcd79GvjNbLZQ6xePqdspnV6K9eF+j+8V/NzgO4PWnsOTdC5q5FZvp6pgnnOOAciPqOsvomdt8CAuQqEzcHzx+jpZSqR+j7MKxDdI9kNptK8fBTWzmPDRPLLB0j6u5qMGTIIoUK3ZswrDsJua0UdKUa+u7mZH+uiEBGedigYw1ajXNezFXBiad5XEGC5I8pPpnsK1Co30uodFBGox9UZ83cSYHs7dPR7cDKRN+QTmzKKLeh3VkuEMkvcyM2NXFyg44YXMYNum1LV4kOpFjrvG+Esj0M4/ps7yfGgGMDqImrpW9VEl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "39OMtoCqD+qo+yO95wrG1evuDeVkdMRTsHk0PY0BVxM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AMEu0W6Z5XtQK7GS+gq4/X/5r7QYsxVhEZM0q2Tr4Fmw47/Fv/h+e4Jc1cbMfCzmUOIKnYrCqBpvGJVJhyrRpqDytJTgsKCmygaLEVbHrU5mlGsxQCN3dz+G0zUOBvv1Y0C8Rljf3jew65GOEFCkYuZOTQmajAaQZ4kpY85PPG48SReZylG+TytmhoRc+hnuariDZbTeiXladXryxqn9Z4S6z3VbyGOw/8l1cRmz7DjbOChGBFcc1Ab5ngd4/PCP94KFZYbHpVzMvt399Xbq1PZiSCLMgGMgPL3ByhceOChPeCGATRChCVTK7M3nrjm4Q4GQTqy1TmWbbNYbuk6EVMv3KMWEAcwnSojpgE4zMli+XcwtbloQHcUHOP88BP1DXH6BAOqp+/KVHouhfnkNYQnyDoVi6vWo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "39h+NIopeHAVIMgQ6nIHfrhB5+ZVf53PBkPaey35JBM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tZYbxPSWEuXTZu0XJOPSHA8pmiaHHlCle7YUJLMZ0bUcoWC5XTTLonYBxmu4Lm4o0pzaN62t9w4lwOCUAe4Lrm2EGBvewSRwgFraSgG5IJgItc1b3zcCjmYTpYBr6Ij6AyCuYFGN91kPTUfDOddv5VQ+FFygiAUqRHcsgMtrpDOvDQHNszvaObF1s/Hzrf7nYL9n/QsilpN2FIQrPGZ8vupV1ITbnEBm/c/NOh1Z6uLlwmyCypjJ+7mju7VIbYRo9ZZD1xwF1eW+6A92gryl3v99RKXjDMWLdOa7bLFU4wpnLtH1NSdR8ydEvjKGeUCBf2hIQM4thkM5X9cbrYhNIsa+B9WqORTr041UAwcuLuLB+sKPRwA05G29hcCOqyohXe1c4juS5i9G6gr2PMuGLMp3n+93Ng6j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3A7FfBBDy4g4AN/Vt6jlBmHetJHQkp7qCHfJ7n2BqnE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Gx2iM15J47d/a+YtTvfZO/uBqw8MMCVoIvQCpebYqRxUYSqPcuriSC5MgJnqUcxumCxQaCGP4/uGhuOEZQxHF20LtBCFnzL8ezQ7BhOJr6MrllcRx8fVBkJ1OICVVkA8kTYaAVCERN56AItavKX7LJmFXOJj8LAyN66T7/QJftU5r8N2JfL9fb7ebbuEGosq9YWC8+BdchKAZ+yUk5XBpodxRjpkk9mflp902ko9PRP2n2fDQ6o5GZFhcXhLxgI4NRHnSB7bzPw8q/gsI6wXEIY8OrgQCpxefDO5kQMkB33GNn2SDKxwNAD1y25kefaKah/Hn2uRI2o5oUguBnX7hO+GCSttZhcVDzixlpewM5Hg3x/j/xJYQRks3ITDRJgOE8leIV9CjMnw9AJGDqcqT0aD4j61+y75", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3Br26T8lD/qfke4bFOsBgOmjeIEfFDsAEIST6jZV3I0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eJCU+UcWQvpaoIQgZJ51ogtrBgHF4eSpykxpk1gPJEPehBKLnCtG7LKsH6jGS401cp3psibLo9yG6g7pP2JNvGgQp4mTjPzw2I31f2ZfaePB5gcIGsQzX1oJyftXuAjO/tygc+4obWXtF0+JSAob4ET6pu/H+Sy8vhMTlY4nFCRtG0RJf7pXy8SnpItoFsj/hvErJToCTOuLS3KLBKgcb7lv/5DUd8FNWOxHj4Pm2pMnbG+yd48IdGWDI5dgWoKqiTE8bF8e/bDUa8QWN1HyplZ11gEZrnmrr1VFTqbT+kq25r7KAH5ZoIPS1vFxfkEui1JBRJ4n+rLgJmTw3V5zwZ6tN/avkfXJnPv1emERcJ6+PonG0paZiKWKuLlyM6R+nfkloWuJPhiGOn2xQsOP/JbJLndy9YXp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3FvK31UF+QIU0V3Us0gad7d/0B7j5cHS6mpK67nTFUk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jj7PFOA1HGJssJ1TnJvu9R2DU/q6oXYvheF9MVFuBnbO53IRgiR2BcZVP3udC6XUFf4gBRjLvoUvmq01c1XfYDqPZ2YN1SqNQbT8ixXlFeqx/Z02ERA1G5AurY3qIERNsoUDZ0CXWqGarT71gXaw7oTNBjFETbwNjm2c1Fq3GXLQxiiiiYOfRo3ttx/b9WTFtgyrW2QBAwlO6hZDD9EfecEELC6P2nDie/++G4K1zKhH69790B1MT/oP1IrTIVt7VPfmwGI1OhHd2pBoJj5AFwg4+Qv0XfEs8ZB1DDtwv0DOpbp3U9SDNOrenY/qe/WfHyCjv3bD4SNSHYkm+bMghOme1x3sVQWnXfGbOjbt7DmlacDt/ZCUC+/5DVs4oqu+8/VcoHZ0sxRrVYCU3jl4eRyDtapWlUfB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3GLQMvmvzFd4WG/orW31up2ckyblNVQaEfhLGv2FTU8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CImoeESpHJOELhmG9yQaLWipZfTZXvdqbwPajvZynG5kkIXbRQhg8Y8QVkihRpEtNeRug+ODg1HazaciWqUg/PX4Ey+m1aJ99tiaDldgkQQ5WtrTdmwfCIwJFMIg+I7QhJE5+QjJfteYo+GRvqWf3YmXxpM0/XJuu4wFlpI5hLufhmSaHmA9xSiby0O/dcmCpvyC3lwoGkDeT3CH11eL6PHNHbOofsiFQ2j7rMevEEAsbgwEg/nq1rjcImGeUoGm+RLkdimEg0UbdeU9+oVr5h6fhoPqn8a+5RPIuupeSPaW44r3ciCzUDJpKnF+gqGz1kWwRNi4toFymAHH/MbvyfO7gDS7J1NOslX+fXV3Tha1kwy077m2nE4C+qXX/3izVoPWionTPdgHRI5oVZwqZyJIk4RSg1jB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3JEM37xjNAvPIQ8M6GklgNauOOfxlaZdQukhxIwKeAE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r9UKelUKyTrcwHmWFKv5EVEwNmjhCxngFbaN3p70+62gKQQ2YIOG6yj4HsMYX9vZh5KbQLk7v7oPVcOBr0182RP4pURC2KAB8AH1KZAHdo1Z08rJYHA+PN1701dT7AIWWs7wfaogHiloHRBkNzYypvf7ABUBe+AVGGZezfTe42K0XHzXVt9aYmG/9MI/xI8M9OEfsu7a55DoZXHB4Xm8OTx3SXmhuhdE/UlsRMD/ZRO1yH0kvehkKaGGKt4hDtLHLukBly9xVQT3xzBhcpzKSyFyO/idRVBqjOR04CfGnUupchMNfQ3v3LrE7Y46W1uR0BWA7X/fUf6uuf61IwL0cegCtpamtwRHNGezYsdb2SHdaW2oSuBGsZUHLuziRx6JkRpsaUUodlyNwtBCr9cPPPelBVhwsxZK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3MbzBaerYfQDps2JNE5WZhlUXYFLLr4m95MvE+fllRU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6J0416TvBotlX3mmY6n9DOfYCKiEnSoiqKoVpdfm4nyLWQYUi12bIfSgV884UZyvPFeJoJs0rf+YiRTQyMqdefcm2UVZiCt37j4s8eUr5WrGEh3LLKtScodZY9T0POyrdH4anUU2JYK4rOAItHWyedqsRtUs5T4xjOxRM3T8TYfqPHYwvvC0dMviZ18AkDQsQmyeWVi4ctzfucD/OgqKpf54aJXw5rrnDZutDoRx1i6+qo258IvTVgJwKnaVRoTak4xrfxT5HZu/SvGUWP+aZ3vJNUev5VA8276wSD77RZDBpKl5nR0BXL4HQZuPL+/mH232rNVd+fboVxh6mzPacGAi04mt15c4ZOYPHlUzJb8cuFvmh7mpYn5hk7cNftu4CjMbcS4bknkszbx+0CzQrdWTWVuExo1F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3NzYP1lWkkraCAHjuDi0yjp+5o9qSw/doSf4auBxyNk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F+xLOvB8S7kIkDmB+t0v9mr2AprzyLlsRLzeAYoCk7S4XnfbPeyNNQ21MEMj5wAAaAogTN8FCRYR2jQt3U04cKvvQP4L2IwEb8HrsDa/fikZ9yPQeZHGmeVlDx44QanH5GMxzPZMXV+cIr3QZHcHuaKiwdUjvxvbmnXF0cP3NpKlWIEjXaSO/8FXYFfnWoUa961ZWiJlyNhlM3DDlpgjnnMqB2yG89vokLI/2pvEpJu7zAGiBpMJduYXRCxa5eWfO4JhlnlA1IjWp4ByE14MouZ40FeobOVmUZVXUE5AlJpBmENpw5PdGNC1l8Ek4xO29m71gbG7unhaaLj7kOXfIatCn9aTwYuFSLQ9Ws1BpUuLGIS+F0QJcoW4IG34uaf2KyNkHzy3DiXHll705jdxJkON3ShUkh4o", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3QMuiJVZQUx2Yfv61Fz+/YlmjY41wU9TqKvsIOo8jjY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ok7ylwikW/Ln8zmu7I0iHvaooa+Iu3y1GiQ1wxSIa3W/gee5bBJC8tRGDoCEGNVLyVDHLXyLMI+6x2fGtPp08tgD20JcfV09vXTEdAWhgBl9gPyJNYEv+5RmqBYR/bStYt/92vZe9XvQdezv9OOdOHyBFrPmA1hKA7icECReMqyjQufOr1jk6e3EGVa4ENWQ1iJRI0870bvWPH3dKzED/k75oYBuvvhcC9aN6UXJzDmVemKMksU7662Or3ETIoKzIEWCGu/QAwFDUzrFtvHFNG09oDn7n/dPEsLxhFDVXjwncxOHJVnTbB18ASOojMgw/YVi31qxa5za34Gbv1VKYCrt/zmUzhKM4E3suRNLfJcoF5EqqQQ3Ndj5JI4Fb0vYwoXLJaM7ecdR72nUF3iaLUBV7KlDwyv7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3QhXuBcX/l6wHxzRHuM90amy3Zjzh1Mf2ePHwyvPHXk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9GSLXeUFL65caEr5o7iD3y+KHs/8Eq9kviOtxpJVW12smD0gppX7SjNUphxr7qaS2uo5FJoWK92ViRp2VAMEjpFfVw80a2MssqwHsTfUpSb/KC3ve9DvfIxZHuS9jeN7RJT48J3cFcAGa12aU5SdNFusLmIdFvx9PGO5QhoGY44K+uO7ELxIkNMax1ndBcsHt0xE9a1/jeP2MyvENrSF50aVQlVjCXsZ3CYMsu4OQ/y8F+JxOQzQNhN88chNhf/amqdRV10L+FAtI1bjAHK66mvbki4SckzK5ksg6wtrYgdDUoQqhZbmYXLPy9kiuSTkFlEZUXdRFyQgLQIk6oJl8HMaB7kRFKE7ZYw0nq9GWmF1Im7YQGX3NlNUnUkQqSGWMscZEpx6kPxRECYHedVYTK0mtrXjlxgI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3Qq7/LhV/32LcWq1hZVSqSmH/PI3K9oXp8D+JohGiLo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dkhm7MnNPv1+Rgks6R3U2soUpUUpgQB/nLkBU5koE1QPSLI4LjKlTlLs7zwlYCVPy02hnGdHq2CNxid/jcAYyxdE77cK3055Rcmx4hiKibu+gEF8eWj8Qi+H2m9bV3QiuxH6rOcBab0ZBf9Y0cAmm5i9wVTgce31WqDYDA6NHEdwInsm8INhbQqyM4JTvUnKdT2UmEoNSZEmGlOBt5yZCmIivti5eKPKbrLIuA+cpsO75cfDLQKAV1AAf4OMpORl0rNxZKkhD/3EOos7xTKaU74lIk8DhXUtaOWRI7HLhMtwDDy/6/nlpLeYabZGydk8S4DvXsNWBGbPmdfEO3XKpxMIEMS6CLIKJ1NZRnFIMqgO/1mfqFVUZhhGr/BChPNGnpueaghr4/IXSka/lCC8QNOLOSwdGMxO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3T6X9OFfzGTORWcDPMCLzPEOiBXRq9uYCQwvOKaQwaE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zj7dY1JNqpfPR1UfVthXGM3+BbB3XyLylKqHey4l2Vq2pA+SBgjppw6D5Cj90u7qblv+M+58jH9Asy3vLoaSRv6xJvv2R3uGIv2pJIzj535Fl8myh+gD50rf77jsqhFVG6ijChdIx5RAKBsnxye6SIWfmRKyx9T7N/iIbFxIGs7uCmpxBfJ4CEoemnBRpAhKpzCn1+SATUWzoXYgg9fLNwYZ0cocdwJhlhIF7d737+omWOxj78kdHeKBKDMVVhM73rrvU9S9QKSUo4q9u0F/hR1k/VU18k2jXsjmXbnuQRQCLl71Wn/OSazdzI97pUlW/Ht2C7wv82ZzWDfXppyvvPiwJ+wX/nkcekFiljEuM+NmIx3WTJQHY0vlvC+zFWuB4i59G5sy5mdPw1sV+fYBtqxrP1RBbcIC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3UAzVFqWAxW3vA1C3iVjeSSkiZv4TOdwBrhBVyqEL1c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XiH7PviVlUKStSwhYT6BjOqWwWwZI4usSBH1Gvk+zYp4KamoMn6FG41cLN3u7WBgRwjN8gczZjxHJZB79ctcNSDLps/sy2EWxRgWnYP5sv9ryluKR5obqOpF3BlJYifHyo6ImoTb+MFquzpk90vcViP10JrdsQ7XX59UuQyVRqn9CF60bgAzmlvtKPClJ5THJ86XfxGTA1pLmhMIiUGTeaNjQglv7hMT1COfzQao+weqhLPNwmI4xcedn6hq/a2MHtIgg1y8Z/yHuBqqwTSoprQHUPOSJELUvCcp7qHhxKaEIFaQYhV0hREtw8UDC+4Z6zMkEbJ2C6IfgZ4C/NtIPdXa/q66mYY2ItItlGOxfq6HbcleMQamanIGfPwgFjCs+6rqWiHgaKqU8Ma8nW6+BP0bMVc8F0n2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3UHuWmaFZDePQOu1aA2LAYrzBKUI7HqjcUmvZS4aRRM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S/prEcWBFt2DpigkYDllL38kpu6iY/w27XazWozjoWCdPaviKysF7Y7BwR3JczHLfFFZK66ffmAekgQDEUWHPZtRzVEVlu2TWHJWEE9sqcyU5GMf6uQhTkYfOVi6X/0i4ef2oHX16fE5GnVgK8TRpdpBRBnqWozj9kvXtCCIHXz+yiggTx9Er+N9qJ2KGtlsslwh9/pkMjwWFJViDhBf6TpfEjA0HZ9KGDPLa6MDQtHtsA2sBukCZCwVdYiGFFg3bFnFe3kyMfBAPWKZw2I7Ksaobk3bm3jtXGjhX7UBMrcc2QQAu587pYf8Ixz6gcg73rvaWwdltCd3Y/5ddSQOGS9irlKOnsC+TD//LNFXNos6BHzQ8fwuExAhnmFedaxA1VboH79/NbmGzWVMUr80b4nHJSMBT3PC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3VAqrewQiayWLtFswGN5izJw/hC/B2UOOCq6VrluUeo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gN7wR7yEH5BiybpPoGhPOnCLFLBxNbiTUOFf8K+OF0f4jLvQ/zHmn2sGUfXVbIH7Q+xk2cKKLz3LUo1ZBYqa5HI0oQNrXEibDbTJZmJIcSD5GuoslFRK0e49W3F/C3f1pyIDR4pNwUMn/OY7JizIUDBHAuSUvJ4Ph3nUdx4vHmrUm37iq+Y2riEPAKZCaDTFQIZMSFW66PdnOGpJxnmqOtV44CD8SpuoToGRAiNRVE/7w/zSPZNadzQdGSAEe6ZX2+qe/iDhLMOeXT81ke88BsZCqGsLAkpBhfVc4K/ur8XdE4K6gEYlEkOeEtr4babRAthExGiBC7owLJolE9fyAFzC/Mps60jddU5WBe4GOOKJbZYIy8uEZnC9jz/qQA1UGPnnd9aPUgoKOqZEvnfGgGHoyPU/typR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3WNfjH+WeMna70jFO3bFfYnupO81MoTWqrJIr74npIw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l00z3xFaatvE3QVZLBpCvflwpE8pFixbzkxx3n/sXfYYiKgZNEh61DakqV6JqG9N7JsoYkPTHpB4aV8g5xIWCbBE6zlk2OwRG/H4zkAhRv7isOBNnwlhAjDglQtYjf4EBSgWN3suIDNSblU2UmQGJoO2eXEC4oa+9mQs2VDYCtozyX7q005fchucALzj0IFVSHNRx6RMK+42eLJ69V6jZl5SB4B8uI099dLpiIftNkbB4fRloIOLEls7/iXDgR9jr8XcEc55g2h63nQZSaQtFzQi2Gi0fRfSw7S7ZF820GT9Y8ziHEwafg4h2KKCTk5+KKmWH1KtYzYwGlxszhxKvB6DivnrX3JqkXopDGWeYZD+SGHJyHwrs44Ki8wuZMlyoVu71MBBI94JmrGU9g7Wl74aM/lQg42c", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3YE5bNTaXYBtMGyrmPERgjeIt25LjdOoJfwp6mTh/6k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "StWe2wggewcwz1IiTjnlp3GmzXN4hcSIxkkBY+cE2KXke+OgajCsKdUxs9recFGPweuhRZo40fBWFvnE3B3ldXHww62GWdld8oxtBaZujRxLeDx66wGCZ09I6ObxfIfdsfqu3c33tMQWbRgPEagWZ9KZ2iT3U/gF0Xn47kYmfesNSPACOana98LyIoOvcCgOcBGrqdSTBQydhdgI68nM5jZ8ivC2di9zP/xcb8o9PZ+9H8ommyyzWtg9LIIh6apqwI56FMJB55euAi8Ze3tuema7ADS1CTb/3cf57k0vryGfXBhnLnw/WuRDIeFP8Ae1zQScLcELlLE/XccFJMbrJ2NQ2+XMzD9AqONGCFh57qnnMhZzQEWevHLkKH9GDi8OgLShiPo1KrZ3vXsZY1u4eyEvROU1ktFl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3YTf6NdDLPBaUAWwxd0UOiEnMsuRzzkXwjYz6us+vJc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FeSw1GgT+RUut3/8HsoxeoCeG4FpHCWKDZ29+Y8Q+kGgMHyDIpc5hfvGTEzokRWlUUN/oW0ZccFMSoPP1+xdgjgv+MTfDO//MXNLu1goYPPI7tWypGgIjVZxN5/EOTZSQQ+G21/jFlro46VCISO1q+aol4sk/h7VUD+2RaoAPAyHkGqk2z6XqNHKkszE9SSCHruDdLk+95GTiLtRZs6o3XrfJ5jJ7TAJIfpV4qsQFztKC8A6KOxigaDJVNtXoaLvX9T01IC53WxTrs9zZPCfyNgTFCPDaiWeXE72BSqLlDTM3xl7XIE3SidjEWRU6sUzHW2e/SR11NFVUBGTxtMiUkmhrKQ9KJMH3z6hbK23DMZ1kgwUkTMA6mUMF1SKwj+S7/eivQ8QMqPONm1cFthxN393r7xZw9fz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3Ycf1HqmBr+ja2nXU9IG/H/D9dqut+i4RshuZx5LRKU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ASyoW6omZw9ttPorNqHKu2MTjRhdq1MzywKK4Evb5fPynCrSwwuxHOOsD594UZTpR2sQDe5zlc8YXl3qDx41AUSi5TIh4G9ejk+kiwcoBIEeExwkVr44NPxqOjDNHXEHDMQ4RLzBL/IfxXUHNHhN7ZfSM6e5h9txI9Zk9/Vpoz1aF70Osb1Kpr1uBKCFV34OtH0Hap7z+2uousgA2yBwPUUfHHQNJxBxbuXaiIF8LrJZBvb52ZeELJr+dxUbRWNXwcdAQaCbqbzPPqubw3Y9tjSNN2eDLRu1iIMRUSwTEuYPlN+Cwi4y7bCDvZcKttrcwRm5SZ31Sq/bIYhYYP+FbCJVmtdSZ54b7FnMtz4u46+tNveL8I/FABUKcYWE6cQt7BBuOnlAoPGVev8rpItf3BJun33DHZH5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3YmYjU0QYkM6k3EclAY3IWv7pQ+A8lVJuKRBVEImWnc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rMTbz616aNA//exiYK4CrmICaucZhoUq9X4pBdH9R0krqTGdiN2AMTvayLZy4Fmux3sAyLJwI8sl1KMi7f0PmTJ+4FWRBZ3DstjDoS0fgP/6LqEuTXeT16BgVcY5lVlYM/VOGOg/Bv1STpYGdddDdrRsaG7lMQSUpHT33aB8gQ+nROWgZRSIXfYzQCnwLA/2adDTqaV2oJlKj7Uo+bcr7CM3ml1/UzsT9eiZ2JLMUmiXcQW40EcAi4KafqBNL3fRBrTUnbmcJpdrV/zsyd3iPUCINLc/ZpAh7CRZsqP3bHASlPKM0jUwSvN5tiVikA8WueTXS3dIR3qgDT5y9FOcweSEnHNuSVyoHKQkHoxCTQr5przY9C6NpeIv6dBsQHzBJ72Ymti+ooAzVw7Cpb3mXNAr4fOlbTyV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3YsIC7FX7iheEZTmpZBjSiaHR18uhgz4Wz4rN+MkjFo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oDTnWBI1BlUlsaFHl1oYdSheLRXkEFtZzgl4/DI4Jt7bVoRUQlbn9A4C+H4ElkvFEbQoHIXm+v+7c61QTSJzOfm/meVOxSu973Ig//AGFPyPCKMyYPArPt10Bn6nvqHfniRPB8QdTuuxa4vcKUenn2zQnrq4mCulSwK8Doktlpb4OZxJuuQZs11DZOVA2xuUIJRsBbGMmC9fEztv3qgQ2mZdNBk5bQ2WCj5hZwOHSdZukcr/9bnuZLhbjyvAbDEkza7PMYHX+PxGY/fPW4ytRV8EhNS6sv0BeHrJsQh8NKdn98OuZrsjYPzWKgzi91Th+5nMSz/+75QjvRSQRkBqHHrlNNw9ndXCRVPcB5lU+lfixMkcNeqWMm71aqIRkom0FwlmEk2T3rg79cmrekaIJIhS8m21OLbu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3ZkBRBmcaMrH0PAdZtEvc0ai/u+X0Nto999FY/AqJMY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o4OSvyc6eD8+Yl/lmtqnLPQgciJzm1YCIzbIQ2R2A9wuyA9SfsBP0TQXp7lCM1Prh61OaYHmJbg9txg2ZhQsClI9JHHKcY6Vge9Nwi3XsRxnUZ8LxbL2579D3D48fMVSudZDzX3thjF4418mZ7Qf0YQubL4SfvlzGK4ZuyJdYX27OQFrCtIAhLvQAm6wrMlv1ojLiV1aNgBg2wSFP5QE64yjj7PSz4zjQ5rsAasM/P8dC2maq4/FvcwX+TeyL/WjBrGZip2zFMrhRDxG52weylzmov79Ua1YbbpT6Ru3mVgPhdL1PiilWl7JHV0A4SEbzFG3Mba8EljDeXvd0exTbG3RSx1ce9Eza4Q1iq97Ks5HfmKqXBmpW8Zy0lt8MfDbJT+ug9PQvFcGmiKK2B/U1D3+z7D4R+4O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3aKzdpPM8g7vyACPmTEKYv8LuqueU1pCVGXf+KeA+H8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "12i+eR2wudw1j7qTygWnX1OLqYiU7UlYWSkZLj6riaCo3B/Ateysd4UhGhUMfERS+qscQ9O4I7PfcOeA4DP2M/1mc84W+2emQN0UU4r3tQka42b+A5Z77nSG30br5PX3vceRyMaGIDcVkCjYvPhoEt/5B/iAKglJFRew/2OVoMf+HoXOWJym0ptI3cif30a+GRJzelTQrzfDplbF+4Dl3BwA6dDO1GWKlJz5rdqL3ssJw4eGZ8OlYErMSudPV17lOlhWr5aMmu2Js3HUs9lB8S6GxIurYQ9ZWXX3mAphEB8x9uBABTCH1Z0LJKQe/C3w9yKwGl6eiki1/sjMfV4AeUYjAecd68DjYoSJjeILNynNDalrTQ0oGfkWvac/czsg0LdZyMAXBq8UIxRYVX+MwtY/WGL3TYDv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3c12kl9OyyYBEdEtbRWh1BTm2DpI847Cqg+YP6xayf4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MoTT/NTEI2vH3z7avSHRuKcHPQnStiu/pap/I28Y52em5TiHoOY8iViNcTxgYjpKHkMI1XAmNmG3y0m72176bssKcLGskk7fLKuu+0emR6IzpwU9RhDKdGoLsAw3gE/n8h1D00hYr/e47eGevueH9Rp2pkC83jBIQzIkliH8+jnw1tww+KgG8NXTDe1M9ie/rG/kdA8xNyhEWjBnTtDUSihRitMamuzdSqj0vpjfOIJ7xzXHj/kxHgQCOKFhj1YjiUYo60EDhK8WKEYUooZWBRPPKHJvFV8L5ntd5OgmfaW7eGhfMyomDW4sFOI9TDuURgxDp1AAEZ95vl0mrPDhVQyzgco76vuG2Qtl2JQNnFj3+VSfGOYPeKLH0b2E43aLFPBt9PzRe9lqr4bdo9NvPjOa8c5hpbCU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3cQESpvGNLgXwdhcwj5g+/lIa+8VkpMFSz57uKqAGnk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IMvcAY5sjtYoZdUY0DW82IF1qc9dauFqZvvv6HAkE/PDxGzV0QmyEos6U2Hb7Ddllwe2fGKgs2G/evSG1y7LQaBpX5PimKiXigQ37hMybaEYcXFWzR8tPrPrl+9Douz3CdHYnv0txFcK0KhOJFKrzTmDY0/7BO1p/IX4CKVSSDtAZNv78wx1Ostv2FFhHY9v0LjOjPZx4yN/o1FK47qVA+YqVgI1nLYJDEgYS3oUa0vT0uoPStDQvqWF5zRIURt5n4+Y0ihjjj0Xwtx05vuOnidOmydU80WzAAGAjsoEOOyDu2OW/ikdJdnf1+rlwERHxE+APeuacY/PO+9HdtGrNxkKd9GBPvJCRjbCfv8WXUkpzgGUXiAZfIdJsfiHnkrVqrdC1s7kezuQzxygJ4uI7no/zDV8w13l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3eM0t7T0+/2RdbAPGW6+cVK/71oG6D99frUwsky2yBk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zYhSzTu9Wk8SckVgnt4Mmwyb02Y2Aeu+zFt1XGScDPTxP8CXRpDDx1J4Qhxq4ALYQ6T2WXY5GuyAjFaXp1K7HjorLILyrU/2N7OaPXrt0gH9/GjO3mQ8Czka8B4OGIQez4LBt0/CjOFRDjEO8R47p/yHKp47i+xjn/vxs7K8tZ366HKUou2jad15QJEEVRrBXMqs+EzouRiNuIX50ktRXuhk7jRRZlQPG4P6xM7f5xsj7WQHjsi0KWa42RNwVOnENIoT1+ufKi5m5oY1uzG5Ba2TbPGczi584/sH6HlVIsyRE2/2+RfQJ9mtvZJhbuqKUIiT/FcgdKRFrDQeWASURw98JFOh62JWQbhYmuEWFADxNR+Yans6DveaLiobrctGBF5LJLGuGjmzt6+IbRTlBy0PVh/StV71", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3km3KtHnHS15bK5yFOOZibIDyQHCWCEkhS0lbo1e0rw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a79BL30cO3mxMNe6E5S2GfN12LukooXWkWwO9kg9c+lxZYNq4JHGsBGVPWV52SUDGu5VwTWXLPxMsQ0AAwa8kWRDJaMKNQnEPdWlaxBsTyVLfO8EG9G5PjBsNHLTf/p9WsH2QobFeZLwAsFWWtqe0w19WKSFk9yoFMylt0F6nMyvBY4paDkRNwzbYt7Y/Lp+ftdYK76fILqqrpJqVT4T+NZ36pMTAGGL7n8gOfPL/ZW3DfEvwp0pICONhf1LAYm9bXwKKGG1Hk0BH5duWol2EYeRrr6EexhGl0oaZNi4EmCi5uoSmRVrcImTNd6IIN3MwvMYIo/V080M3RbrXWp6hf4xyb/nsKHf/oa+WaSM6hJKSouJ8y1kl6eVAzdYT1mcs1ADmRdbyqpmMJPW1hI+tG2fGaJoNOVN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3mIRqIZ8IwUy/L9pg+08IPWYoVuOo2BpnPZTbEIYx38", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t8ZS/KJyLMZD2KVh8hx7ar55set6YUqPbUj3dTFr7+/UK95TPNzklyTd3Ru+W8bn0jTnJ2uIMeHX0f9XenRagUMvnrdA96svGjlFL/WlEzwRXDpD8dKCDCSczhk93TprHDaIkAozHBcEWtK3ce0XCNEMKw4dzXzNLkvxdH1LZ83LO3BL6n9K4CDpAZbzSHTuwhM0FtH0tUZwC1b7xd1hG3BhViJlJv0+ik3BYR1Mtse4iBgqdD5jsV4dfxw7ald+RbeC42ANV/dpySyq/0v39DQwp4k2xSkXuRB3Fg0d/j1lE+W2vMLWkdQTju8LN+dM5aGrdj4kGJ3GSL7NtPDBIqVUe0rUifvuQM3HZt+jix4C7t3buWe2+k19ogcl01laOqQ/1ck2X5w1qUr8xjC/I/VTEhSEPAOm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3mdq6av6QFDKgnOd0+o2MH4REtNYCelzfV2ZLVTt1U0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XR2X9jjGD2abvfsZsgdkDWMOaiY1CCPwlUBwAPbbuTvJz++0Iu9Ip8HmMAykPOEI8xy9gL15f+k0wUb2JIMjk3MzMXrV67HT0ZLKmmTm6crjyaIAIak3MSty/AJwReLA86jCi/JhjFFeE1w1NCKLWSpAhmJfFYt5KvIllZ3gtuzMwewkx2tYwS/CvXlgNYDdYB2VUd96PZeqwP67/HFqz+0ogDtozBVyBfBcZwBW0qHz2k+b7dWGOOgAHZD0BBdBunqWlZU+r2SymfR7Au8Ba285Ak14lR7c2J9N7tQv09adG26lraOL9fcmY6j4Ay7Hd9d8VSfMQ7l7M/yhi74wHVyEWOPkfpxgmoC6WTTNBw0GJO3lmzBI6XuCRrCiEcF/ibbjPjwcpu0Zc3X9Dk+bOAKRI2EeT89f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3mmNPpcIu3HS56RQhth0/VdKWhClyRReZkup8ebyi4Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wLqi6mXB0qvi7tGUNsQMGNWpCA8Xlq1utYxhR0EyI1cgQ+sXP9IE02mfEefTdR2HJC0DPizbNie4EBwQN/yZzSDpGDqALFi/Os9QFebhL8BR+dYJMHlWx8p9geGd5n4VAF9nzgvvjAXaCDZgm9Sd6z8jAgwyub0EKvFM+DAcxCrs3XsUwk4DDOIi0wiTpFnFgg+GVQH2WD/VzqXenHmPV/QDLvMWMQV8S7Do7EC9toKNMULpuXv4/xpkRGW+W6wAvl2/TVq1G7ScZWquIXrLOasSF7gSrQioq4DH0HZgm/RTc0I9bFAO7CixpVdl1VKilx8w17G3TzUxj9L1OVKuIN/mz90AodUB4SECX3ctadsbSrqFPr2ULpvz9+FaHv8a6tEvQh9VntGk2PvDa3jv16rkWI7s2T1N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3nJvdyyBzToUklcMAT3/tMqOYQQWeJAz+AGtEQAEA/E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JkNK9DvgCKuXlKwRkqO/82O3fumOMuIxWX3/X7phtBM8JU3FqRA0mT4XOU4pAxT9AeUGsQSwv65GBlogxd+AuAwbHk0bkCWUKL8D5LS99x0ZBbi3wEf7xbw68O1yPbObXmK0cd54rrW/r3O4W6ryV7zI3a601R5Tq8FNChYyiDuo0mMymAfY0NJ16Dy7+GsX7hneJ1JY4c4RubjLDuaj6q9rAfELnOwpaBoyu7xX6BXjhfq+GYH1hbXIyWNK+DCyVvWmIGHJ83fVmoMVSLKKP8eqrE7Guto37omzExHvEBWy0vAtgQE/ZyyLdsQA5+oemSCA8xf2IAEJRWDIozxjB3+BEfF2YPHATFvnp1cvxCgLOZq6Igs+K1hrrY4boK9F4mey0wXtuapC7bR7oBzjf3lv9EcdSHvn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3o7H75HtImzpile6dV2CWiD9uOWh6Kz8r8BngHAKlOo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oqFzB3JUMtV10J2pzltdyaZLvhVhpi3VhoqBQsA6LX4uagr2xaCqahBRmg63f3tPvjlvup4991OzgG3wIQLQwXJ5aShbqsFGr4vFjjqKfkLf+DC1ef/PjMHSDcndtgmqBFmfw5uNCXnrykHEDH2+JRhKzq2vVcAd1D4w1l1Yrp/+Ppq4OEHC5i7CFS+iMxuaXYDIMuT+JuY0Efjk+kdLit0sSPPiZt12ZhI4JlwRgTDLoAz6M4/ozbHmWQO3H9FVB9de4WNpMj48SPljzwtAw23ASyhpQVaHvOsTSuLriiTtlwadwQ+EOQ7IXZUrg9MbPtdMamu9lZhbzETSUh92oNdykl30F5rBWP3coTMUo87cRyb30Z+ejK0bCKLiTLo/0neqTQVPipJDb03i5jndrhTZLWP6mzmU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3oJWv/FmJUWC2pKeMydHrFE/hcOT8U91uihQWl2Mb6Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "THE9AYLavSy/BMoZhQuSA4ghMY/4FF90BF3STwwf6jMb7Q4owpFG4E3gp8kwGGSN0C3WCPCweADhsVeuB0z1Y8yniPzTBKElb/XNEuIDeaTwUvPb6kNK76Xw/eV76QjKfQx1LbWeO0uqVpMnB4+Qpyv4e8BTBpBz1006paxpk9BaIYdzbXJxr8kYR0RWtk8acHp+jzUokDKwl6A/C2v3hfJI9F4uR9ZMfun++qPPsjgvpaUDIhTSk0PVIdhNXul5vftv3Pj4qf+JxKxYScocz66RjdyMcVMgkenhg1MN6WHKl4oEVgGommHAj9ROhKUnyLdete83kZMal6xsxQH305eMG7C7M1TkwMYroByzhY+HsaCyKjuev8sVqeNq/KqVDSDGxwmGMCrdNxNXxXCZ1fazdx43SPh3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3oz9AlkBFs/ej9T2wbcYK415sMAbHlox9hWb7iiyyxY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oVV21t7mKvWHLYlILmqJNDS4Fs0iTmQ14aQYlAfUy1McVrEGipcFn016lBGAIyj3RGNcBB26Ku4Ida7ff1588nyIvyo4bBIcZwlD5nl8RfaO9I6V26QaVUUrx/6h1wMBBsdhyKRFXH6IDuFKeMD5rvf3g4o2QfQVQ25mZZar4AM3twN1OzHNJwum3b1L5TbfM6bjyKCNmXR/hM5rDJE5sJqVbR3F8E9Ob7AWy/7F8ons+0N7zR56iTJ3rvC/7d5zndB5I5NEohFdVBVx72XtbnQbaxxBtKmG3Qwl+ng2D3HeG2j7Fce6dlhuWlvX5ajyeyDqWjVXVUEDz0skhJ2H/OQkW+WepUb64IiYlnkKrJ/xEXaXhXuQOm1rE35JOPL+tfye6662WGImNNn8Ah5hZo3Y7XqCegH1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3pZjXGPL79NgS6TWKkBPp30Gldu16Ah+yemd+fgM1w0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LCRZigytohVBO4cYMm3XaelEnGUOpe9lW3E1CPzaZMYc1tk7DGsEJiPf5bc/2B/rNYNUg8DRrVITO71uXFZsi/jlgx9OZmwAB/QbUuunk0w3+vdKyOn3wbcYSN/yPorUYgbg3Qt0QlsvCMtfGOamlYIU0R/l3Yyj0rezfUNc0gvY0p96fMBzsst4TSkaPieyWHdJGbNi5n2UEgLmZbgZnHLmqllVCj4gGTKmOP4zz6LTIkuGcz4XadlGAn+VE0ahHXMyUSGnNXSQKYR8YxYv24IgcunqNgTpiuDwfsAVYt0bIzJ8llKWI8ZXUf2Tp4FonrW/Bwy1HkZrEmQi7sROMaeAnOG+j/D02NSdMG+fW26LYva6qakZrquX9LiITUWLAEFVuXv+5joA2XKH+v2Kw5PD4N8lEVlD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3pvbJIkjCXDs7u3W1Zgie5ykYVTWF7oM8jG281XJwj0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jryLI0sxGSMB3S2kag7//t94+xN8mY012kN+M4RGTC/qEUQkmJyGk8ArT6sxG+0EJy3K6bFU5xSTVuXWfgN3THKk95SACHsf+N5I8Fz87oXwEhwSGMrCvzo2xPI7FddUZPK+Cnn5cWgcGgnR6r+WFIX4k6M3r/GeIQDbN48iLop7Nq+iQR1UbJ1T9xnWVqHfXlRgFoFdxFXmUZ2c+wFpfIZm+S8ltLNzkkusN58ns2N/q7WbP8Z4DCvh9XE7KXBSWJ7t6Y+uc90moXW5qdniQYf6gyKSGlluDIIiBqSsUYGG6BPZ0h0tnRkZF6aJQpC+6pWFBUwurJhHTjIy6SQ8VBQHe2+sEnQ5PQ8RjR50+mfq+HeVRDbDBsTyfVG7knqQBIhMyPqQHVhKYmItFeQ/97trOz5mjuFo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3s/YURibAcWKPxO5HK/C63L4LBym+ajLNA67oACGvR8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "I3hgLfmWvtKMv8pcyX5wmIKwAjdnn9TAI4EUsLPuH1Mu2GNNn11WMkX/6mY1ohA0DfjvJs/HnOxErWZQtAR8Wbom/QWCJ3D8iIAbepSEfoMqGmlC+jRlQsw42WqFOf78P+OKOryYJ8krBCWfgfu/VDRObTIxhFbqxjesmb4ZsGVTFpXuGBG25CsVdL9VHHRQV1o/QSpwfDROasRFO45oPF7oGMhfuiTtW3ENvoIwm0F7DadOp/jlNeS+L/zUk30nbMg4LxD1N7lkr7dPUu+0olsi+1mc8HgP5JMBABb2Q+gT28FCeV3lw7uwA9nZuqatHcDfiXvMInxaeVJFGRtyGuSa2I/M6Qmb4T4y5qDiNKCmDMQ6w/xez2TFPqAJ8rOnMgsTMyQECeHcIzpDpWyndkj6S/sgg6wc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3sN02LStmd6DGze2SCr0T4OI6m7R+48wzxNt44brwRs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T4rcQ23aOAWNPkUy++XDZw4Riy9FvYDSyKVCkW6UHoaf/p/fClsW2VeIWM+qGDhMMSy01gb0zI1UF/EwAMMAGceVs+rQrKmjJK5/x0sLWXcN56KpLVdwACNFtwqnCqIrZM4vK8sINyPevVYiUlzwc8YRtQK8ZkqUFwHLVkK/4rM0zeb7+tMvFeEweZj1oWRuK+qS+5U5B2OlGQSLLzI1XUl8nm11r8rItRLEw4KndU+rY+O1g9fwJ+0/tYGx80ORlPtC4qQxjNumrG9cHys2fxxMwdIJo7dmTcJr6zDy1lAf8/WKlKr4gejP58bEbYUkZj9R+1RRwcCJpwUcuRPDMiIZQ9Dq7fGk5m5tD0+BLsnYCT79pH3PQZb3Sp/sZArtES+kOvjJm6wkDeXFe82pb3wZlZemivlO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3sip5nqE3HXIuPswmvcCXUVKjcVIg0WIzpAQ82g5jLI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TNrC1SpfJx5xtGwiwyRJxYm7dKmaTlidEGwUd+3TY/BLMd7HYteuijvqJJZX56MXUWSZXzSOWb7iz5Eyhy9ao1lxOG1yFqH/FLPL70STuDYMzs1VdUvpwPni84O/7Tbt3ZTtYnQoUbx9lWfTvumKrRLDgoqIvcESRRTmNcj1uWGlZT/CUm6sSN7pzXen9sWqf1zfVRKzVWO0n+PmLC+q9jfXXDFA3j3jC7D59RPanHgvcBtuFLmf2MVdrnlY/vNIgwolcEpVXKGgeuMp2k8HtBhV8fqQMD2YxRFOTvfDWvSDNpMK46d86cu8cXPjeSxx7cDMrohYsSAdzNMVZt0zm65wZpf04PoaL4kFXlZ7qga5AvG5UPiOBcdG384eIykXsVOdOFL0kTUuHfkavdMlsyKICdUTL3Kk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3tI4f5eZIcVS4oByCus5Y8kkRe8/VUPSbIbPO5vvSLI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MO/pzKMQcnjWnJHjNCEaDo58bFzyTQCQ+UR7r3mUFdI3A4scaIHQbwGV/PGHNtNQA9hKebPda8R0b1O0v61teI8sJdoAhR5Y/8BU6KeqQRgNKUoiqHohoWp4Vj/2/ijpgQiN2/ZKEfig43d1UD09A33jib64LQUIYgAFiWbC4kyXeCjelwRUVo2hVwoXBzORoCMpM4O7HSFE7o3zAukNynfCdNR6BKl7vetYqCOC9td6sMo4ZGKCo01zdoKNMs6XyzQQ1xVFEqc34XFGGb/DYHilByW6FmRQMSPjaghhNi9d72Zhu5xPOXFLlvgTA5PtAyN8RKV/+Rl5Fd030ZbT3hnIZU3CrICatST3ICHWp2jlR/bQCL4BEY2eHccRS5ucb/gBpSHUy/aBQBruYYVTrMZw4WsVvp/g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3tvdb6ouLnResq0KaOqtDZl5MkNRGoAkW3k5MBTHOCk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PZ6AeV0pTRyiGtPCVJhZ+r9lpNqpa1vQVtVh9VRLu5KE+qV6q0dHi7xwMVwAthHTFAJww2DNtPSqmOi90mLSJBxdFoJw5P6mxJTHqpcds5p9I/JNSqCvhcoOgecSWWrjskmCol00ZGNE+hlSThXS6ZzQcblVlDPzjTnkETR99UALgAMya8fiAoJaH0fuo6A/9o/8kHl3kViEHxE790rGW/aeobDT0VAB6AafoiXbhj0/XH5JT90pmoA5c/JxeBAgczfozrroscxbfThjw8CkDWgvy/qOt3b9cxTSGKP6oNQ7PLJhmLDyif6JW7L3F7GS9Ctjdk4HYny9lPE7WBckKvHgC7Ot0ij8TyCgqniMQdjKdAtmQ83H1xR9dFpgM+BGZ62Z2Mq325nX3/avcmLQie8vI5uCbTEV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3uJzjpozjQeKQFSk5jeeekAj1ZZfyZxW00oZ2w5OOas", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1dnzVOnZSfiMDa8wLly7FCCIjCJNMHZ+2qpTfsVwSazDnBG4Eqg9g4686RsZfKwNUuZE9VqDcD+INillFr0SmGbF9p5fgCQ54G034bqmi6NxPGbPoQkZSTpmdQv5ynS3rG3zm5ZNWdivwO2uvsyPXwU/T/WfKoWHWozzBtcjDYAeJQaUHZXtisz5+0sgkk+iDTchaFYCjdeOIVe+XUw+K0YsrvSydT4GK0n8WmxH6cAjxh5UtP0OS8rdq3FFXSB/TLTPNJlxXwMTSfrBidBFQmZwoqn227kUpt82DtluOWsXqERkfiiNSqXHp/gifcy00o9wJy8L0w67oYkLWoBZPATsxin0LAJGPnut2YupLPgeDX5KMvose+g1kdxy6OQlMwtaNeMeZN3+f71tZq9PiyZRTSCTGo1N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3vGBwUYvePYHWBizVsrVDW5JcaL1w9OIboxz5han8gE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B3nDH34wTG125jRGLVWqwcNpDuvg/jl2z8vkHxilSyvKrAKtyR0m2L0BuOwcYpR7JyPYbXtmOlIX/GopEYKi+OJbgBPRXL1uTmCl27bNECbusNX9wNj299umqevxWfEHOl9USzE8yQfVX0QenR34xSu9DZAJz12oP+zUZacP7FovuE2uqaPFgTuKvvY/WcQhn/27XADXjZKh9PzRXEji/kAdwPGqVm2Gvq1wIzeSdKNwPOiPzmON1fpTfPo9kC1hgiDrvOLrUVuPWjqWaxC4prFGLq4OE7L0yOE7q43aHXaRf3nn+ouWwgy3RKfxs/+sn8mo0vokJZIoSx+5CQeAEUIZYXCmCcG8QfEriTsFN0Dr4+RKKFUG16J6dTIraBZodIBk60yGCaxjUqzIPOY6GLRiETRfCbcA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3whAlO9smk7xZZxoIL40Pq8cA+N97JmkTQ4+JoyH8cY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0lZgbC9TwuVa24Ue7/1IxOQkuL8tkPTTIOCnxpjAXvOTfX23ef/2tBSdYtaHrEtvC/4NmY6FhHOvlygxSLOEK/XR37vFHaMLdEUcURJh8dxzLVfw4H3tCNcJ4tqBdw8Lgw7A2C2F0GF0pz0OFjlU/JZJ6oxgBvAD47TL6Yq48Dh9ShZjRltBTD8VckW2g6ipZwhJUH3fm6GmkK2PBo3jHL3DH87oh3ankKbr+3+gQy1Ok6UFr9qfQuGsY7rQ/N9eAFAM8EJs9i2tz8sNUC+cEMuaahZ866uqJ0IR2QwDYdv/QlZiqWtUWBwtgm7iuo3dnW+yD0vXEaL35tBNg0ZZa3aGHcyYdj+87Ph7lKG2Qule+LGBh45r5/TruV+tc8PqKlFfzEhZcIMj/OQ1Iq21pLYm2N54psuo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3xAKaLIvQWrzDjUr2bTyD2DT2i16o9HzE0KQbMHxr5I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hjoY48qHxOjM62VSjGj4iVUDTEC389MtoQY2ODnAhM/VyOLtaGVHlzKVkSOpTwvH10nkhTfu7lct93ksngxL3a+8OTfgbwcl1n9hTSAEv0rV9aYXHQ0kn3K83tWKW+h24CW0v1I8qi4MK2GWLeXD2KVarv9WPIA/XeaA/D/9ZZ/ea7nB3iOM4T7ulxNIoF/gdl75GsJGqNa4YUoW0yozkEh3XpRbFERSpqoDDbHVyjTu8kYGqRlej2dBXnh4fQMZnjuaXuF0YXeq6XBnEZxIL7ROQVEG9pJ1YT3lCX2aJOHgGZ/qZX1WBTA0Hd8ZvE3+Ise7VKj9gd24sqnXLyuG8qIjGpKfNSfgeAb5tdw817rQNBN4rdpKL8sgDljZh2NBSJRwDniHarAalCzMqlXWjOfdfPNyv7Nk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3y8uanebGjqCqVzGf+stPvvkZVqUQEArW3HJtEWN13k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OUYpvmcKhjvUc0FANSiVMxuhLgY61G8pWKGOtq+JhdulgXYV8M6rxqCERyJXGo0IoEpfLCMTe4hzK9QxBgVBy54iVBgoz8CejSG1hMtdKXpgz7lsQRZMALBsxG2f31aAYkub6zwWTg4GZAHYf+oRFwbJsXQvFpfU3fpwIJpTiKFouH49ZSpXD8oaBk0i0E9exzCLdrAn2HBP8AkbmyEdJTMS0XwagyuA+mpDm7sv9zgecQyQggcZFkiYIlzeWu2ESj8fVpw/Dgnf6tuO/EHVAxG8vlA3//NFO+JY5GSlzLMK0oYuR/emfQvQRCITzQU+EUmBawA8Qp7BMhkeb6I8EDjgixOLSM37Q1oBkIufL4tZbysvDex+usm+OgQc+fivxo7cMB+qhE+NhvTeB7qzm2An0VjLpqmh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3yjYweitU2bLJ2e8m5be7fOdFW4MECUtXpD2pn1FQOM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IpMNR8w7ai5RriHAxDAS15bh/jRLXzLEPldPuyNinhghQivPD+IHK3fyCzqpcN+n5bxbzDVwXaKjy8XP82RE0vxbpGfnCQl7mBlMByBJHb0VzmTRkkJj+NcdUpylm3bn7gRzNFPjx/SlBBxPqxRh0jUZY7nvsysdlcgA9PbgffuTxv3vbz2UwxbVXAG+pBQORms5dvhbYt1/zHxDA/qYpcusii78khUHwo8GL2xPg72uQBQCTfJuSHfLCQ/fgfHdD3WgXHXlyPtiQm89B+Of8AK/91YU5AkFPpzebd6AxfRjvM2K6zx8aSPA5nn3BOzmUTIO970IksZCDnLfI0MY/iCNSi+NuJfHgH5yEG07q3RPHO39EURfHcIuaLsXrVCgbNQGD+IZoOheY4RmYsP52cdW5znAkcDK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "3zpkRmqG3qFKPpMi9+M67B7F2z75tO+8gXHWurKDQcc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SGjrvFOjnlz625817Gz4tvogdShpRnW+WlEEArgHwuVY57+y1RTqgYesCIokdtU58s/gaO5UCwxW/KApBC+dBnXXBPDaU8d7PHggT0ak+4sGKqVpRKZcslRm7G/bQq9K2FOkjgLN9e28zOzYkVMBdPlK4++nv/8feDtKweP17Wng57Kc74LtUv3SnjhwAxHMlGbP0Q8j49x/f8Qvexq0qxifOP+M/01HbzeErpzdGwT5xTqDAI4YNA8Hn6vn6tUHGz156HBOF0OTVrQIJ9REgcB4f3Cr5twNT1QaWYoO3C+n9Pz2nd22g2uS4bFP0xNGWSFreFP3KM7E5hEmFFURgD+GuZmIbnOPqqeFSBgcKqDM3yT4PCavtKyz2IuVx5aL9dTmkaGOP4z+AJdo8W6UkPUgwZduYzeC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4+09oajVNCiyA8pH4Gn94z0Hvwe70g3evUnah1cDDX8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OyazNUNKZ71/t4xUUaHohtX6KvE9deqZ+P66Uakaw+E13/XPaxAUwQnXX92EwjeyGONy+LFSuJd7+Eb1JntDc9RPdkBcngCYWoMCrEXksFkaTJapUQggNPuyothUOMwRobZpDErUc2OSMmuMWztHRC4XZEzHHlqdat/RUFMJ+Vog3rh4rxS6dhe/RvZlimiNqh+Bh40ppI+O0p3c6b4TZZcB565HW5dpYeht5gM10771ACwlt3WPU/jTqp61qOO917qD5Oy/a9EarECR2uFqQeHlFvtel7FxcfX2FyyzQ4YO6tqmVNb9AhjaUHwvxQDa9W3i0cp+SkRKi4EYzsEK0nHjpNLC5uOG+yLOwPIol6iPhIa0jkaXe1bGITzbR6c/KnrbIqrqX9Fn0YHHgGiTMYtY0YYmipru", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4+2mX+D0FK5f7+1S0O2A/Fiaj0aorEEWP80KZV9NbxI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "76PG12fT2Rf8uMJ/b53kywp4dBq+HJizCXKvhgQ9No3idAClb6qVa/bQXhdRGICjo0bRAxwO1Cw6hPrxs6VXLRWkSc3bgZV5aN6iGy81YhWwCXqAB8iF2xptlfJngr1jh8V5DtEkjrCVwoxf4FC6cAJgOhtfI+twmSIIRoRnN5XmDkY7OveguoaKz+dOdiLNDs5w6p68uI9hswhHthtuMIhP7m9e5sxbPxyvAK8tmSuRrGb4OJJEtfTxCyAZkYB8v2PXsKv5xc1Y5hxrrPV8pJ2PIt/v9JmRxIsMB5yffXfa4EddJbmfyZfXmA/7XMN53DU/lTxhrhS0AHVKRB2yC+cEW1x5gBQsPszFvos3OI6qnWDsovq/zuBZ14j9E5RXn4WkUxoH/hjAHVa54Kql8NkGGsLtmNs2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4+Tpn08OC84zUrMkPKz1lztCpjHmc/rf8GFgE/dvg3I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oV/qbqwE5rYgXz4SSXBD4zN11wveCvOKqK2bneLlj2n3vsQjIrEyyAeEeVU8tddIcNhDts/RZSklDtaiwkMRmQNjHXE+hXrI52MBjTR6B0TApRvZ3VsfnLaKaDEllzcqjcOi6WYC5MZ9zWJf/v4qp+d686gVR4MyFTKSdPLVdUh53ByKCzM4lEmrsJAqPpfYpQnUtz/6LN36ALSndVoA2a9P3jNkw2+3v3yf5JXULlug4nucIzjJf4tQxyXfpNOol2FqTUAwNt1TAACPovKXMQ0nRyd/l44CL00wjxhoGkGr3r+7h6oygoixpps41IY79nLvolfl7OE3fWxyRqecSRlqSb/pTYdhWrbZ0dA7uwraabMj0uviVhbZj8qA1klRTEbaWmrS3BTiUM3q5YgqUGC34S7wS7Jf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4/0+p1VPsFyPV1VMP+FgoL2VVB4MSt18RBkW7hXrtnw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eMsoauYAotqJ+/3UZ2Hdl6Fj8Or+h6gDIwJxIobzMwI6cGaZaLfjiKWWwURJioZx7gKA/CgSHxM2mS7AFZWF2xjVp4YxhnT4ie48WmTsIVzdMB0DoE2A938h5qxAtVn2QQEn53E1PYi/e8fHcYCgCHGjkgapo0ka/TfDGmodAIBX8i4YtEFRPa1S+qKZashOMFZamsz1tDrWIaq8Csi0h2IuHLnTRveoBylE6sKUwZK94NLPxwZz0H7KtBBgGqemdnPGL4g8X9CtI3pwbSBowk8sMDcy7olLJs+5xiD/lhiotF3CI3cIxguy4gPrTUg47SMrTO00u9EReZ33ClWLqQ2iqgQRW+T/Kgj1WDBAlxTlOHJin14SVHygCwyuOPGHP55/wXcXx5NiuwIVpvNHuq45e9krDcAa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4/BGH+As2LXW+e5il8+gOego8920Y+acfybSTWdFzqc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q6HSE/wmkpGv2NC40RQPcnWwRC0iVdVrbAxfnqLHPEwrHctOivJkXvSQ7+aqVLhLnKN/tiXIc/rAhBOdbC3Mbj8UvAmbXiBuIXHHlue9cS6fEj7wAGztU0i5zK5TQgF+ndmQ5cySkMkkSqaaRztcCb3gXConLckaKoSj3j0bBhXxsfn+jkPHpk4JHgOIAoW/mkmFoBog9N+oKPhlChqSbEF0nlub6AXqJ97kT4q0gPOeaXxurLCgy3CDWJbKM5q1E9DkYbynRLvtkkg66Wauuv2vAhdtNYiUO84IQX+MiFgCcEx9fmUtVXnxSVyeJGEzLtSB7a3CguqgNFRxhzGU8accpv0Rh4L7P14PqX2UMR9D0SKujJxZUrl552YvLaWLochngs7ARHmzCWppqMnp1g16XZTo6dXN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4/dHxr0ZfisHgV4jmK4bJFyzDP9zmOMIm6D+XTTDZzE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mRrFaGUcNJ3sJH30OzXOn/LqRKy0XIROp9xukIjx5/NvZJSMIP1QU7W2vVVZPhvoYonIM74OThkkIDS6Z65VfbSI/MDvHFPxTSNaVV18GuiqgBCi1f0rm+h3zAIqSDIGYF5NQMVgmaDBmjnsBp3LOsYduSDMmrfzpyFKr08gm6sTAbw9HMbdwcYK5VHWLRj/fiY6kTAMORBlP+v7Ow48rhqz++hfithTrCsrON3ElJv9TQm0IeRMAplZQpN7KmST4C2y5Ti5v7pFZwDO93uoctciNIfLEzy5j7Th8+o+5X/u+JIgj3g4Cm59hhGej0pYxJsvD/Fost7QXMAllQg1OhjFth0ozVX4Wgp/hvhPEJAhDiPOQMj+zplxtauxib6t/R5wXCO1YhrPYVxFSEejC01l2k9SbB2N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "40AoW6DoiNmNmuI5xdWbWIIv1ZbNzdFTR6xIyLEbgEA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kzJFrS/nl5HXMWeotgxau6pYEqPpZBtjohYWXYgkdqdQK5aT2wgg6g7ieTCUlPawubSbIqGYXPsY0XTpNZVrO0UH16QI1x/vA7l77v/oicE+QGlh0TG2YFsvzEuYqzh01cQAap59q5Zm6W+ZmSsZ+afUBBCqJnlXv04Md8pETBDBjUwRopSTUl7z2rIUKRu6yqhM1q68P2x4AEHovoTnKLVowRFuMGN9yaGLm6SQjPIcYxV5FJBd9I+qvzFDH1ogVqvpabYUez4lOAOMHI8Tyf3eLpi+//YWBtjNb6fMkJTAsbQqOfjC7y4bp7l5lw0XnzZwqE65MP7YQ8T6hbO/qJmbnFwQ08f9m9oyCYirMgbK9EMP5b8X+/Q+aDx9Oxxx8qQl7JenGnPP7wpdsbbtsFjX+x2lq3QA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "41h7f1iQjvMhjPN/H5CV9/CRoy1rG4/cWlQnF/afnZU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MIuuoRVj966In+F/aTfX6jJEWOEVSmmwjGPEWY5wsZq4uKOnQj8vvd/CLriPB24Lz5SKpAiScZkidr77hn+uPubQa+GYZOf804q7YPr92Gqhn1d4+JrN+7sA63XzSkNaoIi+BcQ1+QX1QT1VX/b3BBCTY6N39JB5fcSOpcrk1XaIEiWhr0Z+lPjXy3Siou6pZKWWTApFXBvY6GynSIP5YYL5otNlRCxMaIhKvBiXkrETm9hD+L3Gnx/sFhKavOMzej2SU70hS9MvSamGbe+QB67kaeoa5euwj2Sy/aiwWdYHXX87/Jz7MfZ0KgKf9Wq5cvFDquG7sexd/TnxOM65zHqCXVHmtMDFwgjUWSrwIWEfKYCWbXwwSDZYsVWJttui5yBHvcuujNDRjzo4arOJ/rUQWl9XcAwd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "43Sh8hk+zMBIhv6y71ugj7Jhfk18Hv95y0MVZigy09w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8ehu/6NHaqDBXT81Cx2HVHFKdfRQoT5f2+HFmYqiA+nM+ugtZW+5sP+gMeUIeirfLWpUECWW2fyspZf18X4hqIv0UiQ9RQRMLZ5UpyAp7DYnlF0z7MZYlCLtTVCsrU7xwHzHWPi+tO0SO0ePAbDvZX1bHeDdRw2cZaXq1OvTsfKWLmz9aP3vgnFdhgF/3ROxvM834JiJ7DpdsIvbbILmvEfNnh5SmzYJ2vHjn9tPjwuKg/bTedBueF7SNBrQIckj7njWX9481e8q3iN8ysTavvd/vFQSAmaz2ODjovDGSMcVHzLU2SmOuUE3cW0+Df/Ecp5vQbXvmgPmHBXPLKTOFnQ6jb4r9ZrXuZft6g2A8mnYBlRYTAbI+iw9P5ExxWJ7GJO6L9DLTjYE81hma9bdN+7IVUs4R9EW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "478uY+hD64i2XOXe4eJ5lxJ31ix1HcZKrPQVkNdr3sU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4SmK/anVzsapF+UiTG6eyui6uM7De0E+a+bPILKNGhL/rnIintIzMF4i5/ynDm7qqK4okI3hVnHtcA4e4QQmADsTKY1JiUBanw6STihv0DgetitVu58sc3//bFrDOGBG9opHbGN9xE1soBKsWB76AGLYtW/JhP3D8lwyrnlSw5scELwiosAIkrI/niVsG8JDahOvewE1USuShO7wY1po8iY4lfp0xH/Xoxqm8NKL214rtmh/MYqmbNXPrFa+FsHreMlhg2OqNulCsgLPiqWCiZaSuWARzc0LERMo2e44VZaKr6aygKaqNepQWkmbOfcgnEnPERVp485HQJ9hHpegnJLuhQBkM0+hD6o0edG4vXuLDz+m9hFXibiEfnQeIXLykiqZyvx0VskRH+zViNLMKpFuDWIk+5r8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "48EqyRtfcv6YFwrhuiacSFfVBsG54SP1mhLeJeGHAgU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bk5JFe1HOWSsKmPUf1LH5ZLohSMT/m3+fwGOwMoYzppXUGAve8EQNXb6qZl+kV7fPV9tM+1WZN6GUAg4I78eCCTLHdniURzRHyuKcMFund9Bk2zj7OW+hob2FC8tcXmXJyrjOQm3Ybut2V/kGwRvbzTecDtW2tvZCXqPldpuz5xPJ2W/PEhwZhbyMo6TUlvGSoNQoC+bATYrQykCExUU4AgatQtmXIWeFvkGPVV60GR1UsGwVf+GlANWmc0kE0FVeiikia5n8u0rrktk34ZahMN79r1GNlKBHnqd8hc7hEJMu6KkLold7CiR0TKql8fwhgX3ljGmFOHPVCmFHHmWAM6uCVoK5dFvqGEYJO8Cx48U6K6kF0Nw9c8k0AkUIU8knZySgx+49nGUemS3V+PeqACuQFPp0UZW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "49MReRfvOfAmo916xCrNEXIBXFMnV28oLlIsPoWG/Rw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BUW2/ut0lKmbrAl3C8vFsHk3DwOe5XuCME57JwstIvCfuJ2xpE01ML5OgI9dcT8YEI0axyc+/sB7YbKOatgl+jGQtoRipTOXm4u6J7GsQuZDwVfDFo2sTJ+L33wjHZHkEGZ98ioPTyn0G02FNd+XD8a3MH4Olcw/m7yvtts5Yzd0oUErvIXuINnK1CWr5JqLL+S1ieuHq9Y8+qM/s7JdCpTu7TGH5hLDEskJtDwyYPJW4J/84UL7dM3T1MufWnx1r3Wemj0+bRzBWwrn2LAiTzg18OlKzxhJZK/FDKhHceoBD3yU27RxP3F4yLLAVUJIv+xcE08z9Egx8b/sCAhDaYUhw40WPRrYKAVdLqiwtv91H0If9l0VAd43pESlHBp6FpMt0dB2AE5o8QBnboFg8P6A9RQsdRpb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4AqCayVJGd6qt5FwjtT0TY45KL3iV07Qh4cXtBTfkX8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "98IyF1w6hKoLkhQ2i2Xr/BXmuBYXYnJQyfU9Q66lsJekOiOl2d3Gp6l16NKsB5b3B67Sa/nFuYB1rF16JT5q/ri9xwclMCcfFf1KfM98DnXSbkmdpEBpAMby7aBmHRqTgJlnIhD3vgdwCiH7Vc8Q+ea6nCpKcpnar9rABqkWFrBHGL5el3Nsciruhou2Ek3Pf5kMMTWRSYyg1WFp+ZhRSDKbSryzoWNJTnN5NuZpHId1wxfa5u7SNGKa/6eW0aft05DN7KPRU42hzKmo3eoq7RbuIKYYUwbdJ7j3SmYlbGoUqfGRcJWcSj8+SvPKvw/6HVj9yX3pJngybHOvr18FV94A0RBNJpu12MpGHYk5Keos4KWcfi4dKv1IMMzbmxRaPl2hfIwR4HFnaPH0XzmXn+i0mLRZxSgb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4BMV5JzyJ/QPWm4sMmMZRbk0DhSYA0bGelNtyP80DnA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TLRGqtXvYmiO4iMolC4UkTjPKjbr7BBATp5t3hkec+r+xx9z5OnoX4Dgq/lGEuLM7VmfZRV3tVboto3HKyjOFdoHiegP8krymQFjumNaN6/p6cjCRjWrZjntWIjbCdiPUGMP+NQitNal0GuDYAOMkjH55nk+Nr9QTUV0NAmlSxvVw2orrL/JQS0+MvvvNmmUUqoanNAhShIihz+o+9ufWla95P+kNZv9lCw6WZO+t+PESXJvoiVq6jbQV41o9ceEeARmaH42MjW4bSbuWlldVBdm0Slp/qtlpwqD++sRX8rwXQB+ZgNI4ERygl7/JQ0fC0ltK+J27GbE4bVxUGC1J8aq8fkxnPC7ERKLzqud76E137BMpYYpCC4nRPMmD7t1occIgfrA4STMp6IbT8EjDgDoceXN9n0W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4BbVbLNQB1ouHfuq1sVezkdML5IQ18MIGz1vo26K8o8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uhpzMy1rHNUs/y6925WFUnli5xZB4CXWyF3At86kpq4B8B7SYV4OEKmW6mILCa/CfmYNy/mAJbtB+Jw7eXC5VeUAB+FWKHghCEKoGh0WfiA8wT+kDocn02Ci7Ym/eOrNO7BndWyzzpDWA3WgXiZ/DMZZojRV8kFqm9KoFwjcnDcrmn6tUt2HumFQ3SHxrLvB+tDTSQUGfVPT5h9zALj3oFB2MqfSaU9OluEh2gYAsjcnExZ9ADkivijaJ+GVdxtHBiND7dj/NX+ZGsnzFDXcbXmg+G585Yv/RwW5rfpwQohUuSkb0jFwFW6JOk3g6l+StqR+ZEzgP0/8VJI7/hYSJH8+vBx09l/SReP3FeVbCpmzqj72THdBpKVrGJqwI1AuDfZa/uS1l0b15tijib3Zijg6pbWTxcru", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4CT6iTyYy9pnuxxwgTQ7Sx0zFUSn1TR1q2ytvSiHqAw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tWZ4E2/gGDhvi9zPxFp2uxqbjKXaqvDK/nyd5MZinOBFOyGOmVPnEFHZtO9cOkPr3v00pg4CtnkqGRHsyhVlu+YV/219MyBtqyqrszgVz7O7F52TNbnKy9iONzURaw1kJRpy9Z9ex+DAAKSf/sQ5NfyZ5dOJMN1y5ubx4wVuSwdxnEW9OX8yVKaPtS3GmD8yYpQiJ3DGimvTeNk49VQhr99sWVhuylKfnZthetYR+Jw3Iy+lV9HNoOoI/d7f7Zwnv1Mh4yQJHyhlPFjrg6YGGDlPzeopEK1IoLNF/ard+qYBCKwleQogLwNE8STKXnENE6RfHKEVPKx1jIHNb8e5RTjsCidnonhwk8A3rNSSPxC1sGjR5kmW/6jhd1ZirzsrkMv5Qyu5Y9yAjf97172L/p/5/xwia3wj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4Eiu8kA0PEbr2W/o6N7WTqC9dCU1jCS2oEZDIrSWHpE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YuO33aMiNvBvvXcxGVEzF9PDkHi5nF3EHRtZIDh3TX22m3n2ok9abfpXDFwa3vaGC5tXh3aC9IzIQ38adX6MkwI3nXFug7AKXJGmyCG+HjB0XW13s7lsAVoAzBEBLQNSfSdo1hjPRMQ3OU9QzJoVhujROE+mWkzgCMMVqaNtvHnkCD8ZyPMauNDip8FO87ZzzakT+PdQhWsGOnvZqZ6dgI0VK8/hJ06GJ7+bv/HjMsfEYpnagWtcO4zNjyjgziUSGZIGCe/V39tLdJY2Oa/b4YCUDotF925QtoHcCa5hYg2+YuaRzIC3oFoFKTnc2rrd3jNPRodV1jdRnbH6oBfVceTzZ77bxN/TMPgxpCPkHX/Z80KZYrbirQP8+CqmJ1m9/hrtcDVP0/0poQevnG/AkTas1Ei3Vycp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4G5sROv3J+GWT/O+dyTD5Q0KdhR/nTsjg/fK+nT2oB4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tWM6ShhwhVyM9yYaysh82NaDYr36zfM7cWRUzf5jt+I1n2RxtDsUFRFkJDQdV4Pb3OcbYzZaoJqcCtLwcXjZLwuDq38P3Kq78wLlv/HNaYOABEUgiZ4ztiCpeUscWe2wxnZnIsBWh1VthycgnUxESfvyHFpG3lGqnsd0VL6hQEnbDTq7J6UqByRzXvJepvQ2WBfAHZGSlQ/1ckBz/sYousmpAUzAVcL6uBDre9PuMYPzOgnWT7mPlHEUzRBVtwuC9hmpFLui3cqaWVs3IvjiV0BN8gZK5y6l2DLN2siSzPhlw/mTku8f7DG/mCOXiJXn+hYtXLB20kgzT/bDTSdegCvDZZGNLCxvvF3J8IIn4q0hAHLtG3qQMa8oGRD/3r9wuoZP2D51uQOyxAAqnNdDpSBJneN/lMDF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4IsMddF7pusS0PDzQAJhGb4vsb+cWGaqA9m5WPNLmDc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "b5C/j0f0PSHQkAf+6t4zqlYdbBeIYOT0k0916T8CM+0PbpKrH40/QLrlAnmIcZbMGC4qmFU/stBo3Z5LyYALvJ/apODtuoAnw5ZxpFFSLWzonW95QSqrP+QLc4fR5gtPxwfp+lJJM2GZG/HqjMW8iuySQIOO8JxR6CnbSgBCBz9QlXZYAQXf1o/TVIJYn6WKD+9sOS+mN15sLmgRXDRpeuM932uJZh8z0jZH/rya8veFbB2nrvVOcJ2iUpXOiiJAXgVoyDo37kYJLfBgrkorVxIjwxOP0bQ4GU2Tv7sgmNZBYg/RtnovX51uNgWwFSt1t6VV/O1zj+FGg6mIH1huFoqT8uJ/1Hl/2m26dyUDkk9a+hELqDbEHN5Lsab/bFM3JvHWOUChBcUZH0xXGHBwY9d3v4nBMurN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4JctmIM8fb/QAMtKae0kmjCileOpgRsTCqfY7G057Qs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+MBr6yXCKmOsRFd2SWjx64w9AoFmAjbKeWDyFOxY8IIpUpghJrszmKD57B92hylRHTIYuLzKczBsrEZ8DQ8PMYIA3U5wAj0VTo74Dca20ZMrkFJu7nXf4mHThNIB/dRpWG59/odflS32u/qjBneov1c1jYdfiZRJoXdwgxUeDW9uffAVo2tfOZ42CtASqs2KiMEz8qPNfWbnM85p1FjKW7cgIIMapETiikId1BN/vb0P1ZkrJ/vaMuxC94Cz0kPv65PsHRyeQPc4yMW8nWpvqP+/QgkIf24gTQYjHKMGwBSKfe3NWxXAsef0C9UH6zng49RwHSl60v34dWjbUqVOcSmN3OIvLc3BheFrWJ8O3P+FTqEkEldVUI+EiUCLVGplJyGqZM6uX9UJ4UTQruf6S+RzIKy4jd5u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4KJjHk45Xo6jIDS4dB1kkBX/lwa2bMyi2xvEqYjcBAU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aGT/byyEfuoZ8mIBniCeDN+/ji9095i1xmleGHmzHawv87AYWtrc8v0k2HJZOf8QAd7166p3+ZezjUlvTm1k5U6iNcFEQmxhqqo9WlU++9KLjqvX7PI7LSr9cEqJpeNm7X27xHt6c9f1J9eARWgiGTOmECoputA56q/Dl8HFW/DVqXLlzN16hbhleoOUMWw3eZVyklLNK+c5q/VPvJDazIJi8oFZOJnAUXHcyp6R/uSKTjHeJZFhulgj4SoQynvpaqg5wZ2lEtK0D5Q6d5/itVC8WBrZxR3zb5+H4ZNic/3rTU7OVbSEES2Zyhta+Bp4PTPQgq+QLbv2yR+6+gT4Jk+gP7GsS0sPlj0jk2f1csEqXXfUIeLdf15+HifK+TmYqc+lcbcWJ/Zk0lqpo/H4iN0zFcZVDbm7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4LJluHPqQKxrwSl7Y20B6cCyTYCfihYZridC1YUc40A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iMltzB93hfCB5zsJO0VEyxFgIANQf90z603gCEsFTCWl2GiVjH8a5ZPFoYkBDyK2ypJx8RWeLm42kvKTdbE7iKNYUB4ANSGOkIcGQ9w1Twqmmg1Qy2EkTVS8ESxZJJrkmKWvZJZk2uK86o8TdY0KggJagj8NIOZgPfH1UNTeT+Av5iYu9WxCkQdz4GoSPVhbvpev5I5axhSvjJIYVPsHqZ1by/XM6m7G8JhYDAqZjhb92xCuNttr7fHhgovZROgCeJHJpEgZc70zCAgFWv60Y483Hpz1pYXFU3P53peEeW0fpWLOKwwC5XYRqcH7KM6qx0tFSeA5EBScj4FL3kgoBcDP6iWu1/iwwWumoYH+cHwJa7NohLqtmFY5Opqb9WGiWxclw7sTdT7EfkFOA4X4t/o4tgz4bQaI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4N4iJ4Vs+Z5/FT1+fw0djBnJEfRfedj15fKr+EIDdcw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c4Kp5REoVokpYDExwcKE8RmxnbLyeRh8MWUxrdGdLaAoiYm3j80K2+nwbQnBmY/nSN81qdkTi6H1Csk7q6F7EwcA10BPoQFrzSnP/L+b9ejl5ydywjRMns/ClOL8xRkMiG/Z3bfpxxKltgPe88jOJBGE1NVaEzYrja6tyVEvCQl+2tPiECxqX40Cy54gvXqts3J2f8W+VVxFnWuM+YW/UJM51TloDFJb5cJrcPydI0p06RG++XnVQ0vaP74JYBt2ciTBBbOisUbgde5VkRxpzUZCDMRKUSxQowV3Ksj/CmJV/VtcUT63hPG+ONmde6LX29NmR4+gLfQwhVZre12FCq768UyaImJAQh0ZVUxaobgNI65U+dpnoElQ3Rkydrb/6rEGsFy+0pGCWJ80em6plrqp5DilwZUj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4OugeNniqEfdlcUbbYh1C608B85iLZGdH0E1Jl79hK0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7Vg/n5evuLx4atQ7/Ci0v3uqM4aTTSmvVkSlArjErPyNUBaSTZGyF+N4BZ7pFxLM2U/0Gp5W0dwlF6RCkYkONYykX4jzqL9W8yDXeRa3duU0f1SphzB03KRO0ngQfqin2KAgt8g/bY97KJwsKK03d51JV/cU4777+NtPCvJ3+dtkYJMVpX7FaLBaUwXoV16v8m3b47JVtFBDc6XVBd2AqazOJrXGEQxBvHEWM0bHAMxTU+tTYihYaHuCepjogHfhw35AbaJy+xUXdcw3kC/WSSWo1tyyBcFGB4ed+/3M9uBqLrObJQzWDTXetmu/J7GVUyj+qXzhXqsMcIkW6KjcAloZjJDQ1mUiwn3q4nQF/fQOuJ19WqzZ/5W0KIeBbZNXAvT2cFqBMVcDVavpoG3Z+Aaedd+YIpMl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4PavnKUGePSGjRHOJ+C7tfHciBCa0XzjAl7uU55o6LI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2UtFWkib4RIWSpwuXYCr44wi6E4m/kR7Y3jORtSS2Uu8hMZxX8kzZvAaGJ+UZel1N767rWaGZg6X1KgKxPO63sZew0bACWIBszpVRQQfNyxsNnFqYiVwZOXbnYasirox6yUK0/I+L72hm4Kd36lfVQI64nGLbAtWc2vJFdo5DkSRk6qXbUT5WYAlJ+W0VUj193oQIp2aaOif19Y3INsjeuI9RWaJPA6/Ib5Vgm01iSTXMSOIvf6LiKVdI+BHXeCdMLI+82qMaUDaGRdEkGFzOh6mSe/JGnvnpKiNpjBGdGUNG18DSpIGurH4vW1GMosg+QoKKRwbQyOVgnSA6C0ym/6bXYqNXwKk/mX2YZithf3p/lQZ4cBZOu+2JJRxr6U23e53WnGq2Os0bmy/RbmqhdjKJLEjWoBh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4QJymHrENtARFyGFMk7UaQhPTrNHAAy9f+eMJtoJ+RM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pxVV9Llf5kOisfJKOtAVJI+Q3RDpjgQ6ozAqJoK7ifFJDhrQr/H5OU0KhHalKBke3rE2kU4NdLwvghLJBEypNr62oWHFYzXYkWieA0bOgUlEajlxpuv8hXwFT2fFxIJbtU+o7vV38rv94LCNZQDLwIRot4uQBYNBk+mW/aqAs7/409+uJJ2uAcTT/qr2KBw/EpnOtGYUot+qgy9hXGYLwIQIjyDl/3nY3yrPObI1oi0o3cbDJdXWJFxIlLCPEpWxqSTRempU+YhHMf4ZotO8Xu2rlDqqMTtByVD5xctIOUvTKHsVVj9uM5aOI9NcEOiuygUZk3OSOaDitH0G46Al9UM/Iw2YWPC4z4YdA2s0VefQhDBI7tw2lkY2/7cgztrICXL3xm5tk5GzqNnXdqSzrUvlk+e9h0SE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4QQg1sLfoBXyqJG35yzCqrC+SgpCzy8rIMfKB3iNLoY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bbQWby8jXKE6sK0KXwiPMMUE/3XAyf5reb8SPIvaLRrONcIi37hwtGekN5escWuR9qjxxEeF6Cn4k44LSszmqoSB3WpuN9E5r6fzwMhHdYELtRfY0KIwPGbh394FkvdZh5U+Z/Zhv1/HpmdqoXERRfjwcqXQ6+8Q4wz77Dr38f0xchTDn4ljYHwiv2naoNhFMJBqos/GKsg274gPJhY2DKAOrKfkSXdX6Zne2axK8r3Cn2nLI7rsDWraGSmEswLm6y0CuDTovXkXCP1BP0XjWD8FBuf45RkloreKtTEaOobLj0EoGC73bwY5UAwBu2tNawA6UZlVYS2V9UWr4z5GCEzwr9MKK61bzsUcvs41+MwRCTHkybPile3PvLvLmMx9/L0xecLUDQC4cvN3YaBtIP68UvzcdTpT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4QffATm2y6Yn+isYyee+9s1YwNpmWXfjj+aULwZ99PI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ptwZfMtQopbNB72A2JD9wuJ3EEH7daIea/KYzR2vDhjZlcc9PEQbxwyzQcpDcijeQwWUts7W4OSYChS3Fz4sx/bhsLNgI0CVAXyYhWxtEkB/kMGcnJT5LWsEwWWgtR43vq2EQvs7j7W0fHFcp7NXhgJI4cgvwcJhl7dK2BCu3gPa6lJGBRSWzjNvIVPfIzE7NGixZKgvn/nNiMrr1RIZ02zZqdnx8Q6m0V7f1Qex/msBMzvSnKyLoixGzvfpZeGrss550qiUmGv6wKu2hQ2xKQmIHK+JeGFX/IBPjdHR7+Rk/P3yBxQXA+e4FXZu0UqNAf3eamaT27l0MfAR+c6jHLRtqkO9Cb1YYNh3JiXC+A0HYkrVRghT9MLdX9oiOe0NIVjLq+ABUNL20qUKF7Rco2UA7H0ynAJi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4QmdMSfE7RDlvE4ay1Hwgr2FEN8794438L7nKUu/k3A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1zLD893WRq7zHIarwaXxHPZOO0vIdkXZqLBCJdgJFYSl2FcywWLj4oK7dI9MQfp5XxJyaCkAIjmlg62MMwsCVhmvO964HWTMeSqInJzgh7PHEQjnJt7pVawDgG+kA1TmFGWaxARy3kw+xMUUi6fRj7kSdUmAH54jsOJn9faSyQuH03FzcfpNaiNzpgOA6z94QrNHws+AzlVqZI9Y2TycYp0EYqewpc+ibG4+poVjewo3M1ngJtLfv2w/hAJuQc8/TtCaIBOr/9JMa9nV5lLnqRLu6xZMZx/haAtWlTpfufp078ILfQMl5RaFeiJiZZ8L88eko5eXUUxX4zdFsJBr5HYuStJd+1Judc3KlVZ0rMV+8A/yXNA4CLdcPrk2bEoaQUkathgPg4i9gbdJuFZspQoXhMWFtUA6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4SXEma8N+DaJmtDpsG+cAVMRySYaskTyosOA9jePIsQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CQuB6UEOBrufdv2gx55Jdye56q0DPA4vwJaYzxHi5RPjM67l/zhUsp+eduIn56W8EZ5KyiyQSVgq7C7gcsZmYInb8Ckp9VAl5SozdxK8wbA1QYuM4sPHIbDLyJ5iIfOlswgcgo5ZeGix/M+qJPvF7G6U24wOlKDUp88rAmwpSb98IBrbT3ItWmN3AwqnKq2xMsY7f3aU5NGXhU1U4/jnB3NoORXvZ7U3QoL0JF8kGbN5g6Op08pJTaGIF3a6cPh4VgxE442YMWIvLZMafOWkucQWXgE2JtD0E3TZBjjXrOgBCimsUHq+KJWJven/m22xHd3wIKTYPerIopM+Bh5PEHsTVvkUnYqUh5QL3hgnRIsXaSLl0K7DEgoe0bwejE+S9Q32CJJBrbjMXjubnjC+IweQyfuBF5L4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4U0JHcbiKxL5CVFDvs1VxjjAw1l7XMykF03QZEj3zuM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ux24hG2nmltChxs7NdgwDO4KUypElV/i6Wzx7WSf/K6A3SbQIaWG6hWb0fHr9TU+WMnVMYDKcZtqlO5u6vTqFkMebRQVO5d++DbwPdW3yfr40i2peF7p9E0ffPFxz80d66ICWKaxENSu04nyOpZ23D4gkhuOcaeMTJnwbjuIiAqUKNKpAxU3K/WB8WmTLabQdtyuTAyFrMOsryfrcoRBM/NsYnTNio+G8bMY3goG0l0RXA4cW9u2XeEfOZKJnJTwqNa9p79y9sqcKeFxG2sfha/TTJ4XZ95FoTvqedRpFM0mjJhuPo5pWcmFhRlfNJSlZMESPNOv1I5KGW8zuN72XMbLw/NfFBdYe3gC3/Ky6r0QmjIkXLTSf3G/5dt/y4uwPe6W0VeDbT2JU74a54/httQOvnl36qQ+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4U8T3ixw+s/CTxDIRbrjwEdFMOBlQKu/qPKuxZlICZM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EczmRWROqeaYONZtpOtS5d+KzJEj99I1oRZrdj6q3vUKE45c33g3EYgdAf05T8zYQiibC1RaAOfAMBuzX3AGAMJU+pKZc6ICAN7qJfo5KL6emz0NKpMK30XmOAu8KnzzTewJre+d89WNmug1t1ORuGcvzZjZnuBd0xx2t9hD50828MujjoA4AvDGQ3q5BVfQ/j15vb1O79LNzG+MDAQUXbz2uoDn8ax3ic9yiOBLYl2BW3CS2WjMJYXUHk56MUlDQSQZdSpLr07BwATjSsN1pOvKm9o1I3nXkjuMNtdX26tE4Uwz+6qxjSK4x1pB2eLoJfdaB0rO1FG+wxm7EtDf+jiUsE7jb5dj19I/G/rKH97nGKc8pa9Fjydaf6nVd5812Ty3n4gYtp9NSKYviIx+ptmrOAFEUrzt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4Uub5dkgi1EBsUrUTXsQL/+THPUUUGWoDhz2XcdlkTM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Yjr2yOwQBKrctHNOHF25KTtMFERq2WvA+4/PXIqPRFARiuHIziokQtURmXMyFDR57iDYVOwie3viSr/nGmmUvZBtkm2Mie0mRPxWg8HUkgkWcEQl7vFel6Rnm0oQkhOWaRuFn2+F7QAIYcJf9HzlBnG4XK8PQ4EkoaVE3MZz/6/Izy+93yjHTKNj2gwyo1PqemcYONawczAMGdsUtL0BNUFaEBYZSFIekKednAKe5wgEDrUoqGdS0vshwY8+mYneGXjdibRc1W8zSw8LNnPrWb2BA4Upvo7j2urGyS0DLUZ4nJcoMz7UgqBIE5ZWuHs0uHae7jbOG2lp046aRpyPrGPocrbbbY+z0PgKd1yC5gD1Xq5ZTf3MTkZYN8THTAx2dpYW+VoCn32spwtmIkNMTktsLuTQ5/gP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4Vm4vv0n8+pdnQoIPMZo2tkIgvwWNImDtBLJn9Uu80c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hAxROr/dheYjnEsfM1q3iqTD4eMtkfoGrQ5BNym5kyMwCKGLlos8qkKPVeOEDQn2z7SWvagB1O5Ucka36Y5pJ4xsJR5py+cRzFV6urcPLgP6Zd+W5X6J6n4BKWZNRL8gvf1nXOR7Q6NeK+uogHazgLzacDn7TEaAyeYYJ28hGwmSvhIV3cVkOhcAqEII84wxXZTvlUF7TkwzrhPWHeAS67RmVEa5mkiCfen+FsxaGiKYUdDzS/D02TRMANlnIgbK5XnNyZaMiW38Nqw/JTS3p0jBxwRxLB2p7VMDBBbbXVJt23zpRnUM0Wnm+vtp6xvWTUbJwoHae0UkdQQ8piLz9s7nwY5NH5BIMr7uuHTtyqGim2xQ0yrKkZnmskD0VAbru1xpPfE+A5blPAFVZI8aAbZsny6C1QOn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4XGC79pmX/WeDNugjj75XeIVIh894iN8HCnt+Ugw6dI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LHOiIRQpBr2wtipq3rFNwqQVziIikj4WvpvXMBrc8yuY6oa7F9ejvkjfo/MjKZPUvBbci6en4qAddtZKeAVfw4TeMMgKAi1ddsM2+b7B6whIrvT2lmPv2QeQQu6vA2R/elxLnXSzCtk6deVgjvKET6A+y0HBbVEf7W6lGqvLCn6PAACLD9UuBFe8uguTe0h/ynnrw6AqyD3pPz4B8M5cByzTOwYUBFG4p5+9/R2PQYpy5SltKeKPClFteEZN2YNk7bI68tFqVkaOhzITJ+kqvZpup3XuJPNdn7i7gjnYQAUeFaAkZGKz85ENkTJg0GiK8vjnQsgyZqJCZLQE6ZDDgr6RMvIVhnYR5c4tASKLYXsWuORXbiMrVLMCSnx4iXxDs3SObUhYI9sWLcgaGx9NO6UKW8FsJzi9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4XiJ5Wtkg5p08d61AX64FVCtlowM0asZs/kgq76h8kA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e/JMETYUgiI9g5IzX8eMMDdAy0s+5u1I51pETLWwVK151rFe2o131dJ7+khOw97GWZotgb9gWJ5wwXx9wD5q4wrXoPx9ajj+Y4VpkbibHvXAPF8QHNWaKo2UYfXk6Ba2SXsl+dyhlA6s1KrinzCDH902ahdijnNaECfPTv4mp8nW01dcRT6Pxep+lRF2coRSYTWfhyqwlvk//QuRZRZ+Y56eokL3B4Izr7XjV4dG5J094wX9XMRHds19J3JqnILyqcY9VAyFY5JNYB7ArOP9t6EQzxsbVEUwS5t9UeOxGKJd1stIMMbDRhwsA++nTEaBM+4K7nqKB5Ay4zZBbjXhvlikEaReCRi0QK2pmNrXMDeRbklUUrPjxXHdIpn0Mv94t40bTDFviVWIsJ3yr2Sui9mRlOdLvLzx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4XiS+3GV8rxM03c8An6vs8OgMeS+zey7B6Hxnv77AF0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rp7FnGQGexNBiXTX9cp86ewGulFgIa+3b+V2lANTk+DDJy/mlHePX1T48f+RrfR+yRIFSeOK9k89MPLscKs5RSprZ/GJjMBdDF0ncOKw/n9xb9TN5PwlcDb0+2NZdsZy6eT09voCTvsQuOYcdMMAXBj5i9PN3uXMt0ghx56PImmhwAjWdhvSmJifhF248tXehA61wKhm3rN/sOmZEIOjQ10aS+7+BTyd3RxK3UOV9rFl+v4N4hqZ1DkOnXF10zBR+WGd2k08IJ0Z2FL/0kAscWuB6KgMu+DdogGz1PosEwRCDViIhpmAe0CSPjm7/bcrrswtc9Z/vPIOeNbX7hnyjo3slmXaRw6oVxqC/ccOtYREM9IDqxeTfIXINX+YkSHhmiDGGfXtjc2YMdNiNk0CJ8ijB71GU2//", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4XxKUyTCPQlpGH0Q9bFz/Z+BaYA6Xdmbw7IBCklCqyE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kspDPl4Uh4UhNiQE8D2KPUVOKh09OZBKWWOjTQEh+GR4V1LYNVFow+nD0ryKtoi/kVeQr4QgtwaDyM/uU0t9y3uicUg718vVDodInzkD5fUdRqiPCqxuKGm6ZhZzcCM0zDmxIjxuqI6Prwzx/PUOUKYwM6xrYdEjx1FbZkg5cgIt626x7J/4w3RUs9Wb2QceO2RAhloUVuFHJtd3qy92MnmjLchNZ6Yn1siIJqIwiyXXJA3za7/e6iNEltg6pZKKltbhLsY1MuG0kqMoFVBs0TwPlHPzbDkkur6wzf05Kdy6kiA+mbww5NSxuTwY2Rj0+09+5R53Bu19JoJ6R2yZ/sl1HRsKpf4F+3sq8ie08OvhbUgkQ7AjbUjWnj3520fkO8LnkqowCL+GdnDisNy+YV5TIMYcz2ky", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4Yoc+Wogon/qzI5b5lZVgkhyOB7bUAhnE0X4Mph7tKE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+282OLmoLu+z50XFVhrr4Pb8cPBpWa5XY77el/X1nhKMLmZVJmFhEmEgwCHR0YR6Zoz4qH1ptAz81h3ojAi5lBGXJ6cakhUvadPcgL0nr0yeN5RZNphPTA43MVdFVLGuTJCbaHpsykm5GsfPhYqVL6jMHvTVbQcei5dUK5Or0Wx2VnMC75bmMPXCqLwgSkwmLgz7+D/K+OgyN4ZPrtLAwDCjbNaQm8scpcBO+1yChGS5PnZxCrxvVgMtrv9Yqai3VoVUqmWM40rETBxla2FA+PJb0lOUMjUmTn1BeZhRdT9IwSaQXRmhbAvq/oepMk3FtDXAVbJW4WnWVxqaUY5sZZH3s93WLLJk+XCHQXOn/ug44mbQvppKFx7kwRfpN1WuRmDnnMzcptTsffN1RkevkvJwmnZODu+t", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4Ys2N8shJQLEyTRMKxPuvO0Kr4qZ3euXqf4P3c+GeSo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PW3B4k1KiNfWBDcPBVuPloMymMSpknCWBm0DALClJTb40XCa7W2WI/VN27li5wziJloR6xFHews4FVkGnXyBkHe1Hz4AcEO9BH/EM8yTjeI8hC9LTrIPxFHPiVqiRltpaJprxrM1b3YfC+/ANDAVUffBeBME3TZlbQHvhJ4q/E+mCMIXomrxYzq1Y/Lp2tLEaB0n8db9MpxTVON+INORbJ/F24Sqs0QWqqafKE7IPGQ7bn6U6SB3REVahLujXcgnMfQTUA//nZI5hSsqp1cviIu4OSJIZXcK0thGHvhgpVShMDUBD6bE78vu94oqvj+IWyTPii0lFRjkcsr2Uk/xW5P+6d5GMwxgxFhG6vyPZVkLF810z2fB9r1tHVVLjc0at95Jkj//JrQrTzi6UMEkPs8Xj/O0uWnB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4Z0kl1dlrP5E7g9fyK+Yi5hi/XCKFv9V+SrsS3P5MR4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "woX85uJSp4as0zlrPsxSbPaniCmdaRfa3PVi3CWlfKziF30iqpXdcYxmw7GW9BCPJNLcVfYUcB7Stk/4ucgKkrozDSRk49ktyh3hlVs3Wz1mBQn4Db0khXH1FKo57gfBpjMn9Ef684jGJXIcLnE1Fe3teetTfH+MA3zcM+0TrCouyOuyPjIQXQwO9S+Xs8h2hdMmW23RHViS9WV0Qcoue1o86q4SmM/LlRml2xw4VH7S2o8Z1xXfkYKPC/4N7CdZQJ2F7hl6wgPLxi8is2xjJ4b7mwiSZxKhpPPkQ7oIPlJq2jiZTu22x07o8rLQGbBmpV+hyHFGvjBI2JWEl30zFAreaj2Gd+5ql89Vb2fGILQpaDX5zV0NCHNwvtmuHi7O3umj2nX2485aqS+It/bJs25ir9b9JpCz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4ZByrfT5SgvWTeYsinl7fO47Nyhu2/MafEfGhYrC24s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Y2CbadqyOq39OFssTtLSmyQohUqiDhCv0JbogVU13L++i37XNb3ENDiFwpW1bdL92/w4vWiaYavtdKSbfFTH3EyECo2jLhmqu7XkgXiBibZylUUO8+ftrZZdoQsvQiMNUbmbijWKjHIoF6lfs5uPKSu8+a4F+nXKfGLHneATClSOwKmMAXUk37C/+haHG6TXls+kGna2o+ESoY1ZsHJOt/OcxqJFScII3qEdqZyaDXcmpDB+Z6dNloFAQNBo+PazY+Slp0pAIA4TvqlDHzCDQolnmTG/5EwrBITJgL0JyNVclg8FOfhPHu+WV8IXG9MAr8Fa5y5lUXgac2N219Mc0iUu2rDHMz3Q/BPhKLsazezVpLYJqQeIg+Y8P5sRXgMfignO78ODWFOzqHy1Kd8HsIDCdWMHWWRp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4aK1GSKWI1q3L0W0DUGPLJQhG0560W91Nhf1gprV4a8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "blkE5n6EUo+RmoiF0afS878Zcpm4MEh6ly7FWEthZoQZ0l7pXLGzp7uPuD8XDaaXZEGU4BQmzI/HdM87uBLBjtyrfRTFV0tO0hfIM6ta+Ckdlq3Ow8AH3E6gE8m03KTtWgfkGslqRWu2RtiG3Qj/FmJcmD+WhlnSj7c0EjijEfkQ8LYaiNHjiN//SpHM/QdRrV9zOl+D9KQIXzvmpD93JrN5wb0z9P+/0V0/BGnu5IMzN/zz5CN/p3O2zX/ZjV611AmgTBDz9wCIcVyVDfO/vAKdoiMLj/5cMimq70bqX845SEnch+sT/ltUCzoj8JuNx2jwtgNmR5Jkw7m2C9vO/jQ7h5E+Dy3ul7RFd47By9PcKz+idJqGb1ZLsvbBL+tUTAgkciwPpXR5GFlohfpeL1UiEAql3dMh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4aK23bm6NnBdATe9dvVJY0EDCnxHACM+GU4LcbcehQY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bx78uLAvYUuGYB8H4oVG65gE2u3TXyjCqzWTuhnS/7UdSZopSB3VRhh4HzIua/3TehY5uvLoaObTL0FWmAM+wDngqHOrGcYgwNbXz3mCvrlcH81hphz+SJyPFvDu0PwiEivYWfSXk3a+3RmGGaB2zziqDPwK7kfizJwJlGjjuBx777dWWW6NsXcJyA2C6rWxjFUqAbSllCUnKO3FP6sYAsVIY3MP2Vfosmc5OY3C7ldZ8rUktiqOi4/zI4FzTQt2e9CFJOcBemmsy3uKnvFIYzInXi2Vk8A3lbNqpT3O83VRMiKVc5p9S3uaVGG/eWFD+4BAk2b2JGYSC21Ryx1fQUnrT24OOy5OKsstRWPJB2/PZ2pNYKyP5oyLo9Z7XZYqXBJhuMU6I7Wch8NNmf2Da7c8/j6TZLVt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4bYSw8uNermrILgxH5duv+cTerrAh4o24nXQjtRq4BA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DY8r4SQregq0iwu/mi+yonlPRG+HVfnaRJFjCcuHg66EWV5RrTabHxjveyniCF+IQa1uZKHE5gIhPyQzk38A0EECmyq3INtQzf4sWrI6ANsU2jn76/kMvLzDqAefE7u8O3ZiWjBgypokRVU1hX1oS7bsPyXFyLHk48JPYdvC0SnbZ0r8TAvs3ltTZpjZ/Ahh5qhJuElN8fQtQg9UUWtfsh1QM8CCbgXr03vT76p1ss4GvkyLmvr/uqFhLcpkP5JBE6zKMnkRLvpQqqmCYPmSatUMolMYP2klKjbBIT4yGf0niBXvO6jH97g6ULtd0OIuLvB/MaNg4UPUEK9LtM2reLx21m8BNW7ygRDrWc2pZU0rhaso/atewlLg5/lWlC2LxdlgL8F6UIcDdbfGrFJ5IrmCyWnp+/kv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4dDL6VaWawGlGNpUiy8pfJ0uXPjMyl0suvPHU3B267E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nxWiAVLuhSZzAwQEJOBa82y6ssP86EbQI7pUPmSASfoKM5yd1fwi6Pth2pf+BHhR7LzJvPZANbtQLJ1eTBR63K7gnHbErY8uQ4ulcUIuxnl6F1Vv8daPqTkMwt6osg9igv2uKKkjeX/TpsJL2yrKnHO1Yfa7oQ5ba9ksJI6niD4ZHUVkPaMF3y6hxRdVfKdj1ybTaAc7w/eoyPzx8/brpGcl1knOlHs0DGGLtbQiFneCo5VwlKaXqO7N903pqzVfhZi7C/ZV+WahM12ok6Qvu2U0yTGOCOaAHd7y6HHRxVCRs4UlWD8FZMO6juyFQ7IINe0cwm5UFZlzXctki3iNMzUt9L8PMISkKBk4kB0GMDlAR8UnMUR3bIk3AcaSK49USZdLwEkE87mQKsQPBbhrTPCyWAFa8ZJN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4dEf1COc+T//uk/qEU1dVuIysuOQsCvNxpKUxh+iKMA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "72pX8UqiIy2GuQYIBUb+NWySc/8cGfV4GzdMEF+GBfQQcz42iaV00EBXxQjPgaWlXFKtmjrNJ/DAmcIqH15l78/CrbEbwR8rkDQS8OAy0onoLxNIkyiPYLPPQr6em0q4gdIewi49RL9Qps2th8aQf1NXesXs4JHBt0DgQfdphx/6AvZtkq5zxP8qfNfXQvzFaAw6KDXP7QOzsgcAM1DATZ9cxSIIbsmhqcq994AUmIiUudNe3GAba7IcYHeH6IzeKwxdsrplTzZz1yLhf+WyHF91r9oUkapguqfkrUGwKREZqHCPPK+NhH1t2u7tgBBt1wfR7ypz/1iTTiO97sdjevynL346GXinFrglWDUGLRBX3d2dnSa7Ux+izFQknjxJqZ9UWQLrJGXZws9Bi4mo6IBIetEpBHSs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4dHNg+X56+2Jc7Fd5LGcVqu52lmYyTqF8zpP0FddzHg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FPl7dLtX5oA8429BON74AWJ7atitWAlLZaD2YJr8+SfPwQE+NNsUAck++DGYK0v3dsE1JhbwgmaihspxPrYpx/CRhcnlRvNN8UqFGzIw5zVTdAUCBWkA2P8ujcZ/Hxcimp0GnYFVZpTFCkedlv4FGdiHZdELk9R7aucJCRrulfyEn4Op+bACMAfH+xcFzzPCezwyTzso/yyFs68ABmslONgQo81bxZLFYgbQjFY4bJSIdNQg+Cq67/gV7rO2/b7FaVYbksy5MTlpIT8uWVEgQbs3BxL9rkh3Cl8IzK45Rkruw+29Py+uVKohYcqvMKCIA5WW4D/TzwYfw9a263dRZjPBpyaccoFyhc36r+IXAx4VvnogvBWmscPNnOJqJUxEq7C+hrVMIjenQqUdx0f0zosIBkeAwEtQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4dKzjKlANFETP/lrGlT7tgvQ6KVQyUMhgQrBwCZ0dY4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gbYdUhGyuvtNDlf7wUaPeRGYTEBNL+LaVoK93icszU6nzaLsIPWZhKKYU8qfqJshSSFzQrHuvqYuM3tG3utiFOwjlXohVAYINL3ZeVKALfRe+Y09Khv53yRHhELlH2RXe9lRh8f0sNOcZteEInNt0HFr40fNd0a8jw1etFvtTDVIF2jXrjBnbD9f6o+FYDfaNvY/ASXTy4Fv4sWWuX2Gl2l2BEzl7HGBewXJr7KhNNNOZ37YL/V0tva5+wQmDvMBCcjW24hFR8ojxx26R5Vb+8IHDwM/FUrJvl7yCtm1Il2CAh2byGJ5rKfRpTuSIMGpBnp3x5W0JI3nzBp+HFsGF3HmtIYZGtzrDp6+fjZ/1GH/i0J9O7b7aznNHPemU5tuks7F4ggksJasXi/0jJSMyvhGJAT3S9jJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4f65fLGjK0In9wL265Jnzo10gXETLrRzgfHqTB3WlL0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E1JTsH05wS/fm+znlvNgT5LDzgnhu4wzACTIsyRaaIavEZVFyXDX/voGjqk2/trziLLG7uVNXZN9Vj+Gznry3o4HGCA3dBinewQRoq22vhTmFhZe4uMI/kBaCvmMeV3QIen17e0QzOFIOmRVLq2HtuKb2dYc09R5iQc0YQjx3OPoA9rSXuq2hMEQDH38BiMVv/U5luIRcX9LBc7N/046zEciDBQ8aplvVsyBqN13+/I+hbmZL6IORLACyjYKl/rlAny6RzPJx9/fbGBek7avYtzOMb8PbPlqNcltuQym2K/4LIN6mmFBK376bKJEe02FU9M04gYExAvBBQI1zf8kqvynsddF6lGCdn2pef9vQmUlI2OaMM80/q5ZbQ2FZf43IcTGh8kfF3LqLLhlFTSWJyAJ1xsIO6jT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4f9GH6s1cZ9mU81o0QcwNZdygfMjBps1o6eQGc0Mni4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aG2pw9oB8MmXuBAQSsPI2zmKwDpM7HR5E3CjYi6HgIdSEBvDAzo3qvImV+hSsxHEok64ItKhE15RQ2Z74n7nyDHKi6135zYLMuuSZWTGB0aq+8aF7F2vQm8Ho4mOz3x77SuKQ3QCpnQ+sErwrFXVZNWJw/SUDYCjNbgASb3iEC79zAiPgxi9gE0sfFt138t1k4X1t3F+iGXRUaaxzxcStZXyKinHrnGig+9HlRr5xjkUIqGgPma2N/LmK7oQfbHMk4gOh0+0qnsxg+LcJecLFniyooELth94J7rELFhS/llM9IQOb4pIl4a7heyuVAGGmoUBHWVHrsvkj/9EyNNQCYdmVv4RvRHJ8VK5Eezbl5r1nMzqtssG/AAaHNsuTgVxpS/l6LwP/WgTLIx7PxYOYYcqkJGYDD9P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4fHMtjOlJyC+Gg73cbGeyoXdcyeiB8NTiM6PftwGZro", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4vOK2FaD3nfZdmzjWp+aTiXS8QtoHWdzslag9Gu9UWYCtYn/t5NFaKmuiZ0BDb/ZBOEvkViKsC8pi2bF6msvIY24tpRGOze6E5cyxpU1OyTtEEyk6o+/d4Al0W61QgKEG5R+dq9DoMnWQTLJ9LXq6d2BHP/mACZ4vT/HmSESguGXv9N0fusVXvJohiZLzp2hxucl3mz1+WEdE9LgXrOIzKmIkMFXV+KngZnOw2E4sVUnEcX77onlAw4cY6BrhtIwRbxpo4zM7b8aDgA4EiL5kscNZkRAIduLXwVgU7CgKj/evjxmT35VWVrXrp0q+SORUiT5SG+/UtzJvl4oWfqu/huMl9RhKIloGZ+mldVzPiSK7LoSkBnCCQkddLv4Ymbvyicj3zsfguswbsyNHC8DHAbzMv5ibkMn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4gabc6OUJLP5beq7b5KBETOxwyQ8EAwhrODWx1CB/pQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8LBGke9vhY4Y9I9lnJE8CXZUuDpTbcxM6Doz3YvzfSk7vVjfsGw8iC2SSQGSq56rSCzKyy6v2PSQxKXhPmWHmXcygWiJOi4yIQw9Nmdy+69Rxwq9bYYBDv6MM8l4otEuBP/rfaZ2WZPuj/DU5XnQF/MjF558zXZf7JbzFf5fRaLmBbva8cOUBl1y3ZnZ94B8djHH3zfb5p2wnjZTR48VtN0ij5clyZAlKd3YX2knyrzfr9Hr7ABpGx63Jxcl4mqrpNcSJHBqVqXSuT9ab6j+8Tub7slhQdeBJT/q+IubvT/jc/MS/K/jB4h+TEgMRMaK7f1rDHRT8dd95LB1B+ARBA4gSjP9fxgRCMxLEMUYNGtSrvGheu0GSGZzacUQ+YUDJ6YvsBlDDYNlqzfETlffNLmaC5fKE/tQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4h/rv7kiojaRipgCPnrG5p9QNNyPAYfu1Giv3lrQrLk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dWbRuocUCsbrNbHcYwgPmbUBsloqpCmTmwYFz86mrcWIvOZPr+Ncpur+2ql/fvsyq1RzD++pYbXRWIH77tx064i0qEKrajQEHxK+W+Drtxe+YW3NZqD1Fjezk2P/VWtVI1KUqJpjksQjfUr21d0cWuBo3q41HJVm8ktAtk39sz7FeGJBoxbuMi8YwH5oOSz6cicO275xpg7ctbzwrLjSqxLrqZyjJZFzo+UUXG2gUKcMxbwXdJCOG1Xx2uvfLa5aX3oqzrVWub2hmOlap7mMqnDi7MmbGFqW3HOoS5Zr02Vs5R8Tg6lDjsfSSAMIQUYBAmB3y0Xs3wXGv5tH1wQfBQmh23I9fo81mIRj7CQZ2htpHwMQonIrTwFy2QFZ8L95CKc7mWoMngCumbsgl7ff8hgILXEfnFHd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4hBHyL/8p2tO2HP0zaszMHLhOwtS2HqrwqtuVdsN7+A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GC3+bGIaTLHPWzT9qfJ9kPS+l3rtBQSmN7F7NZx3lHK0T6M/iX5CucRPzSs7SH/SfHQBn3Tj/SbTMzBASIk9tgvncwJSblve+ImlCTZ+pd5+X/RC2sgX8nazYOK3VWzaiDgo9Li4gy+R+o1qw1ibbna/9VbQPszmIVOg0kunkGOqCYHjl3XWKYLQXPWzZCnFDL6RNDR3Je7SvI2EzBz3ei8rPt6Rlp9qWN+5t5HWPLUJOW3UvqifmwF9qNhjUdNqMf5MZQCpP8UcXHogdqV93z43jK8ZdS9yR9x7XaR3y9LF6XDDWIDWDsyCU9IDB23oS+vui1jr0OCRnjlJkg+YOOiPNdIwL8CAXSsuMqGWu+eWSU4UCwgo0GLao6Uh5TgWPshFXKyjD64oTMm6A1CWuHFa8bcOLGDX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4hIclqc9/Hm60BYjmingjrTdMkNnztjD9xlDVuVzvZI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Hp9v997/XMHWaY8YxmIl+XpOZkBVKQwUahys55FNb5EdQE9/EOkPPlweiXAWCHbzewWPjDWHpM41lZRSM9+O5wL2S+Lqn2TcZqBJSmoXPu42So7w/8HGJzdJl9QHY8Ln/1J4nzLaNDEGs3awb4a+zhsOBynvM3eg1rl7j8P38sCd+nncIMrHEsBoJfngkh4ppSOlTynSxhssyNfgE13WHbUCutGbLke+suupi4E29kVVVZjcvmGV/BbXeIGiP5B2gI0L49+XTmETR7pi9v+BdU1OOrP0BATigv0FX6UUwCISLCWeGiL1Jtotg0LzHKWR8w941dHGgprrLf2Z2tP9JCbsXF+7vHa01E+Ef+1Q66eZBMNRmr36Fc48M0Nbm+f+O1auMhx2FRluXICl9qny5e0poGhUmYE2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4hL+Nae7Vm3/VJQRK25aKGMCm9wzh7wtiqLKuZa1Ivg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bciAG26bRCV8bo8SpEOL8dcUNaKVnwHgd8ZEYxKkl5y+TpthLRgxOu7L9C2+cJRCP+pFGjeZbL+COOwToKXdq624yPJnTobciedosq3beBtdW2Wghudx2wdZUsxKNQobN7mqL79vO5IUIqt7iffvhoBC1iWK3+ah+2DLKT2BTgPjtD0hBe4v985kaL86k8tLK9pFdafjrWqCwPYGsA0txNr+632iPWM6arP5n04CG3pExiHVN4WH0YLOXmVKnInPxoVKo3/lC2MJC30uUvxR9Ydsv4E4BN2htvx0mbIfi9i97jA6ZZ1L1jokS9sFIMKoCQqr1CNaBtyO1Y4tcQSmLc2tawXx1lpuAOLQKuVTkwcyJj9O1dzHt/PrOVkFer7D4PETcJT1KhKvszMynRhyD2VXuXKBCwfM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4iF7fDBp60ZBu+fgxT7dIkSfM6HJwGzvZ9+XJWLYTQU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8W/6uVwUIcuvKXbjW9I8m7aoz+42B6msZTYwKzCxg59mK8k9P7JBw1CHhuvx9ZzPJSNGSaib/hM2OBLbd49B4f6kqW67b95AHPXYYq7WQnlaCrmB7n/WGdlMZfZ/cCSvPdw3P45sRpH7nrn7m9ZGSjR7ms6FIxWRs+PLb2ZzV0zM7scgp7FkspIIMvnskPBLjRahqJJBzx9ZrmCIkBQ1w5rWE8rLa1ZdBg4UyMb6OQ9WtJnwgqBxMks69We+KSBuZZ8ZMnm++BdTMV5cULSBAdu568RW7V3pVmq1kE5/xofoKObXm0xisejE1jwVpjkIsT35ZbgQ6qkl08Mnni3E3UUt0Xvs5Nb61sUsuMWRfKmDdIbql3ijSikn9PKlQYO7Rm/jg4rgOYLAelufStyjJX4GtuoaR1Hl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4j0W5oOGrlrOUGpJqf8THcAjUhpfCLZy+XO/7NQXVV4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KkDBxvr+NKYAyzXDBaWU7LDDCK05eTO+YW6RzApDmQsIxAJNeKgULa35nyyo0PvfbAypJMQN4Zap+bNwbLcOB6wWJOdgogDb2S8RFwk3Eat7Mu5F+0eCNKC0mQv1UY2UyGxtGhpTWkyhmL5xV+c395kcQbWochzzdqadjqB77wJwXk2OaGuDucYnuDOVQyX1o1RGKP5BA2atRRS3CtqpW9hQtm0J0vDhTcO4AQXgtrY4/QLKO8Bvo2SNV3+H6H+P6xoXyz7Sg4VVKmlbD/bmwWrIo6aUpZNVyo0fwv1zz3PO6OcVjgjJ6zlKMPGqWhviQkmZNLPjlvKyL8SD8beU5j6/3yK2/KPrJN4vISD8n+I+w1kifl9ON2BvpzgK6DUTbwcfSUPLQ90L0Pm3mLl4MfE7RYJYVC6M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4j4Y2Q1sGp0/dP6BZQBK6fMCLRRXrsAdMu9E6McSZlw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Jdp0tqh3zgwdqQ/DMfuUkMvPRR9z3fN3ScswU/a2pTsjH8NmJ5GzjLQQuYhp+IEjnrc1e9zNWDkZ8AwwDbasDOwbW603/TDWNuz0gVEpCsDC8FMaldjGrk7YBzs9NW8S6KiXjwayLzRINGxudu4QRCMCybZk1Vj7pPP8xheakKFDTCwd1D3R0WZBhy70aU+/ALOPCS6ufP/P96KV50k9x64jN1YhdtjaFqNYoTgiEMXSIYZ7+Mz2zdNYLKVpVwHPS9fDFVGShwNdwKRb1Xlsq9/IPV2R55qcfD+gsyBxsYF/89PUm906NAaZUc7YxfErG3c0mZF4giXp3jwAUP2JlJxf2yZzV16Nv75cejv4uF9fP9KnD3Vp+9WuFM+nFWNWJomifBQ165p49n2qd2StG+FCX0WOaUDf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4m1Vp5dLwyMl7eSQ3NsPEJTKc3+ds0cTZ/iOwMfBl/s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/euZ6T1gLPXcEOF1X9JSmOo+ruktHVc8hm6ykyZOhAOqQY6mf/3M/PQMVNcQJMjGPn279PzHntdK+tBHkrRUpvs8/DJbx4zV+yOKrlWdAt9/kzOF2+8UuWsBZ8xXyHZ23k+fsQiJ+QLoh5owwan/8wJ1zA7ouevmYDhAvKLkWTgfaqmM92DCGYPdA1IDv4j8UnrK07pNTSny0e2/qUihzrMp9wO66U9J02o+dOT0G5sq8/Ebdvy9D07ltOtOwJ0v7kF1vjdO6zyFtSvKuEWa9YaYcq2Z0OPa5bFdkmMMfQIcunBr3DW8bmpfl45xxDr9pMQATFFGEKPXOwkunxvGMk4ri/uwlxc/hcugpXLUKFvmP3QChwZPPuMtZhRgZriXG78DHVarlzOXIohsGMk8lLpxUSZTku9f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4p6udWcPLAafl3/A2xSryICLlvelcfrloORj5/8Lr/0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lfIAzvMVvJN7h1ctfqN909Uk5hTH+cnTG8xrSuaEUj8f9BwRC2/lA5bacahUtVokLexzfT5PpbIPa3pQjk9vn4yfsjeujHnPTjtYn//0uxqGO/PlyV1kHQon38vBaMk23PSHU4POMwWL/gv0dNbVqQANyXgchnvvzTntFqlySqTw7JtNxMzO6qAtIAgG4YTKqJAD9c4v7gjf6oWrGvRciS/pJxqenqRz2AZDMXfMKaxpxLGPutbhR+Bgdh0ckg5EZ5/oCvKkt1vLsP8B05D9FdrzybRNT0NR6Xdzjla2QS8p85Psjw+CKsDeA/9dHYZnBgh7J5K2Rfee9SZijzOOpE+kc0jsQN783V9JZ8TBOT2+s0vlY/Bl8W7YYGIsxTYC7zPaJ7UjQiyy8gDpb0Gm6bmQr+X6Y/ra", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4pMePJluVlRtlk21Yzx4fIAvMK+9jtlQO/o7TLJD+ZA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4L2VAcjlhgoOCldAGMnZ79Jm92ZOEoVTWNw+0i8ARsAHhouY4M6ceJnHIfUqDmUhZx3mQBpozR8g7hCTSUlgK9GZUc2MQyq0W+yghG+V1vqLqUapBgWobqcDL/fyaFiqiWANKYL8jtgBq31uk45+YX6uvu4arrSPTpFmGuEtbm7X15HaGFeUrI48xObk1ZAGmaqk47ovYHPIVXeUv9t+BTT4hZIcVIw21anM+ggic1SRencso8KS+rs6b2LQtsVTKj2pprX2mByulws7kYIPkUUU3jHa1Rr/2c8DZk3hVWMwLPatz2orUBDwbOHhaZMWLTFXOPTkILV8BqTNZjnI4o8y1oAcgGC+nM2wD1cKkeMEq1f2CySB9ull0LZwWVonMBNTjDTCRztc+SphGAnHT48doScVROL1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4rQbUsjG26DuZm/FddW9YuWdtQ9qO1fFX3RY9ff+2X8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CGL/ngeQGFb65Rc5tqTyLN0AtNIUvun+oCwlYeDPHjQLj8Nj7LoyblogsRe4nEsjEpP4jfJ1lUxtIE0putgGkhikdQ+cu85wcN39hU+BiwooHNotzusfNDBdZhELN6z5uaMM54xH4ilXhCvqH96ioRjbAw0sFCDWgDWOnwRi7gDaxEFdSOEdNKqwlFvK7i8ZLvjTYanszhaGzW5t5/Qbdx6WI5ftusJAMbtgq2VoaFNxdosB0F9/xJLSfTbXNyKWrYfdZjIqryqpiuhkih80cpVq7sGtzMgm8e+aafSB+MQbdPSiTqARV6x7BMWpvu0CdA16b4yVoll6rlWuGkt5B2nA9RcLF6AnnFQj7oob8jJHu6euSRYgi5EOFxirhj+4gzUTuMr5eZw0gddwr5325txZtkdOD73i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4rWoMow/SfbweEECIGQL5MAcgr8uJtGKnk5SV5jlwO0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j9Z/KSL2TjJv/TP5iiSm4dPUsJ9h6lC5xSuFRaukI4VhDhNVSPBV68JUYFV63fSlHCL7xmZhKigbD06KeRFC8gHtEgXinqau69XFau5GhLEADzUSEiK4cksWSLd+0Dxs/FeFhxkndrUACyevOsxrfmpFI484hjTWmgv4KqX4u2GnSbkVUFjXO0tomZO0Cyoke7LsF5UhJWrt4Bf5/oPXPQMy2QpdGmy/iGCdFSkR3mazLucah9y347MwM1zUBIhn41thMPqqQH1ZbAmRvHcAFxuCHT2tD9ZqnHKbNLxp9VU9QNzcvHQ1MyffRPT0d/0lDvQDS0lJfXzqXU4tvhAs017/+K53dqqqKNXapUm3+VJpeARrYWbIEv43RJCBJaZX8PaK0bTCmocDy1keEOfU5YpVC80h8uxQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4s2tOs9kp13eoBpXL8vPkomRMZbcO5ymMkNqQt7fKZ8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VA7R3hWxmD+aL59dCifBc15j2UNjl6ohQNk7BLo6RCCJ+90SLohLYCSqeQFUOMDp86k31sHlnOCc0oD22/5oKQKqXNmCaInGpHNOV668rW44ZatCUpoer0UYthNfCk2+fvYCAsRheUFlBrK1dGKvUHGWn2ODpeLBInyhGs+Jk4hWO4kGkaWXA/yu9+Akg3+gT39gwB/cBQzKjvRNcwwCyoQwvmAhyRkQdE1ADvSMHcs+DQuyUmbuZ/R9LJwbE05lM0OqfKPZPMfcfGv0LhsYt8w9rXuDQOP55R/2WClD3N+siQcoF5R/8U8/oRNNgckoUpCs2+IOgUDBxklq+kO8HTB5+fM1iE1+N0ZRNccf5h1HiuI4mIkmKQmaGlSTQB9fgVJFKRaz0OfVQ6FNgRlIHxxpfcC502t7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4sODAebYmRl5pPN5r//Pw9W8E4cZ0lC8m89M5JerG1k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "R2DopRsI3oUin5vzch8FXZv5YWvnN69NjVW0A9beOpVjcTk1ELOdSUhINn1WQl0DSPVS6yejKpO2dNBLbsgV9kExl3BDV8DcbFhe35QZ67rbBamXO1Dhg6bs/R2s5FxAe1m5n6Z/D1W+yiWFYfCCQJKFO7Gph55l0xbwXmowbM1dlSyq13kSBG0QiXoQ0dz4IAk2N07EzvWp9QzApTtWmz0Qp2yTcZYFAw6aehcErqW6gSf98RdIPJDHNWjYT3sI2bd8aIolACJpzz3VnPguEnzZ6zDAb9GAWT4zVcd0CFLQka+u4HLbRfpQbEZiETxfJzdpkLQjjc8QSjH+Hr1/m333407/AJc3ZuZI7CPBC2AQFJREuvw+GqMnPNgTuOfLBokOsJeYyQEG9ZdT7+G0/yLfsrlElZi2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4sV8c1SykBvCixrA+DAYdoADqPRmQq55SBAUBmT6Ddc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "reaNRflnuXdfOh9g7U6fPg6Mmkdh0YJyIOV9rMJVNzWAVNr9TKmZMv4N8O5mzn76/tcfHfB4z7Irya4xtrPiRnl4Iowo3SxY56NbH5/AJnZ04dBGmfjlVEim8Q7SObKRWR72IkN55vgn+my6p191qhpNi8fizdcd6Dm56Oevpp+15CnwJe0FibGV1eKbbeX+iAsJQE+adTERt0oq5cyG8CKCV26LH12zVDbi5w/nIbtW7LwVsa1K1gu6UxCcSHau0+Svutp3PuPs8BXkXCV6+mvFJkzGoBW/rAOmPGLW4IwTD0jE84uFmCB72NcYTR23xc2NyaiHX2/ziRlPFYERIyh8Pu9Tbu51o9j46ILKM63zNvt8gBR6rX/N63QUAY86FALJdNQEoXJlmEWEqw2K04T2UY8CzHRj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4stigvgdd8QDVnnMa3FQOevvAiQqtN1fDbD1820ydIY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fkldwLzEg33Q5fR6z3NlUvSroX/PrS4HDryIy9NUpkpt9ggDreAPbLVvwQPNjg49eXwxnx3m4Ja8tiw4SXGIYGmdYtDW3nsYMFVw6ICfvmWsBzBv0Fx1m5/nDU1PQGatFNs7C1Qe9g+vsb31tWdVTp0Z+ZjqcKEvfKsF4fKUrBW9WkvMs8DQ9UwCpHUddDg1XWxGbMLtrYWSBxKHm6fKt8NL+O8rFob0djXmRdN73nenI1bxP27PDPMwt3TuWe/6+TrN/goeHcXF/GWMrfUba2sxpjSpXzukgM3QVVETMgBbwsEQ9rsUt6FD5+jAQiEsEdHkTSb/qAtGb3A3PDZJsi9881YQhE5zLcVVOye0KSGUesbLBebWRi9tqqFX7oR85g8m4VsJ5L70RBsBUcp5MqtCrUijoSfL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4t6HLLrIAYfg67aSJdxrR7guBYsWk5+eo8U1yJWnGaU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j2MeOvOPk8p/5fQ/Cxjpk/9TjZ7uYQ1zz+F0RIkUUMCmT+GNZWLzLDqGpT9iQIHGSMXUCugB0ICkxN5EXHIjIITujVeEH/VFqlJ0nQL3+DMqPRHK/5M7A9Op6IYn5yPX3deHGex5LMNw0k9GGHkaqX0NmHdC1kRlhdz6TKAzZrOc0O2xOxwDonW2uR17OkJF/5lMqXK2TEbG5nj6yjcj2LrQY9P3+wn7cCNutpimru9XUXWo2eeYOylsMpNWZMMlsStBxhfMvgZD8pTbi+Q0ytmuLMNTdu7XhBTf4gAjzl/E6z2sfAWN9z5xUddrtA7BPFfvbmyVDTiWwreW8oYvKEL5ZO6rEMEyZ7n9YLGSAGrR68XHzZz62JhCsNbD8SDL1ZCRKl52kVQ/OKCGkY+XLHd9PYO56W6H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4wG3gErzRqin21zHaihlmm118Zy9DeemkVnjV/XRpng", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "874XXK9o+C7aHSMFhMx4JR69tynGvEWNeunezBMgHF0iqldpbFIc/i/LQiaZvzoWHOfyEQ+M+iPMBIA/sb9gJqE2kX0S+lqXfYNMXakQZQXBPChkGd5oFpMfAksaccBQ/KufrL6FE8704AJGPk98kWQJ5b8Vs3HL98X1UZXW+4l9Nl5y9zYob6eTMB3cUgyJnMac6uvKOWMfPb4+idf/G3BYgXTqEo635YdzfbgjJf+SC2F6Q0hVehRbnLyzZZhG2NfrRD1Pv5Jd2fp89oaTEy0wNYlcOGgqFleA1kpvvEL64KPf+LvwJ7/h8t8VXhwoP4rsy0pHKdNg95x+r7npC0+pQZYjrGVnLBMNHJvKQwbBlXpSpTdmjz3Ttrhc90OQ8D7M6Ks3HWEEMGpArNI2r/mMVPRBGwl7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4wRUqBZZoXys1MtVZRUYS7ACiPi2uaUbXy8DX1dheBo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yNp1HW9ZCChRzx/LpB3s9SemNbMY3dYAvhJ2F/6iynd/pC/dZG6CeVWGK1DzQUxvd5Hj8Gv/Uplz6b0gM3JIZ9U4AavfB4MChoiwoxKOaTyb4bZM3y46WZApY7oYoMYkkSzqY8kU+du419S1niHOw5v0MWYMkvI1pgQgbajhrR90jsmyAc2yAQb/wtM/y82ol+oTHfWZ7rXcnpRxKrQVLTjdytAUPBUE5iYXJ20hzWdw0J/TvG1zSM7GDZWHzS6fpoZdbkfM4kh8n6jtA4cqqbhSWweudo9r9kce6oWEE14QCOw+l3HBfhQkK3kGBL+7WkBCU+9VBcNJo+D5MS95b24DMbSrvnye8WJAd9ehAxu16f/rqvzA93O5bIMDLUyjeSpEpFRfpyLLQ9lERvn1Bvg0aGenX330", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4wo65FTVy4G/m1SlAw7KmwNoQ/KUi32RyY6mfWc6mos", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N2Ti3XJ7KVkoEPkJwlbrfp9QtlR6dBoJ0BH04Q9EgmldO1TzzQ+6wlQb9dxG1jVjbUHtmadwJGdIeDnn1zTYnu54j5PAEQR2PGLJOyYOK1aUt97JEqOpTAMEluLwzgH9rLUV8/I3I3dx7GjlcQP6H1PP5XpZIlS3xzwrQVT8xiC8qsFhl5JjCtlvloNsTfN0xBMq0kn8OqLojS57BYBnb9oRHxyDuRBMNrYO+lShQjSq3qobt+m4KuWbM0m9R4K91q8Lh6x0m7IBwtZ/TYJmfDyBHnGo5jJN9KF2lUXyU5o4wQJSjc8NMvEL07yiiHn/XDJGOnV/rxlLkHTWaDGKLUwhDIRXZ1+hbOWR1M6a70N6Ce0ltCu4OF/QuSCk01RltrSeN1jHsj6w2CFLMoq2z0PkYEquaHWM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4wspM1X7E9uLSwgB3z+c7+iQgjxz6c7GNLFEFumwiZ8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4cWC8NjwV8AjmZo6qG+k/7IqHV4MwWprYL6tu5SoRyNTESIqx3xQ+k4O+kHVUdAAiXQeXPQzQC7HnGMC6o+zSobVMFmKfq47RQ1BCGH430myKrptWGNufQ5N5YHpX0v4SjGuGwPJIV8+bhHxCpEPJineDdUTq9z44lcjWjWG+ndXyROxYCyGcu/UNUjTO5MYuzo/9Spw+kxGK4cxEGQF1lY8dp6oYu6P0sJ5v9gK7ZHA7aMb1YzmBMWpTecSd+XjyN6ZUqkMtIxmr8ZuRwejtNNNPVa1JE1Pn12f6hCERpzmA29zY6BDx2SS4UZIdYjd1HgJKzi4eYbdTd/8hlpQahT7BZDlUvPQElomRQGx/dmR+LDz5Ck4DYmRxk5xT4giCGNWPBKhabUclRp62PMt7AweLG2l+puv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4x8W/b3lOEUjSOpTl+hqt0VmjPPf4sWWk6Yhc/Zgs98", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MRODT+PZY7rQSrKNOSYSfbeHHN5J7bWeqf9QaGDrrO1SmMwI3MIu896C175BkOCZoNLd22U0SvRhjteIzmH3Eb2Piiv6tF/+cxuiVKz2SNYXPfKVctida7rklOZaKieh637EHQ43E7zoPcy3fI6iV5bHiYWhhZaf4EK8B6lN18iQGCROvN6pWp768zufVKzFD+17onpbdQdHqNQ3rvYd1Tyb6JFMAYwcY9FOFihCbkWKq+BfcjWaxqB6K667b3r2bhv7dXjfHj7eaksZbNHXkdjp/IWT9yiv4cff4sIPf/THIsRYJ7gU0Wx7pyJWIeqOMcqD/kghiA870E56ItFIlz60y2GW/xJ78Jk9rEvbdwranlC7IXIIGTGGcBzM+JSzZr6c720/1S3djQ+JCCVG58wrP/lXv+4w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4xhIgr29LPM7YTsbdxiYCBTpg6mUm0hfqY9qxG6GC+c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iZVckDYbBgwYJs80ctiOExk3y+wMl5UKbAl4F4JTrtodaPPBjaC02K4aHdZcyxBeoIY7IgDQF1gb5Got+Na1uvUYg0lf98lQR53s3kHu0BvX4QlOGCAyggutSKHOSuy+57Q53YHuurB5L0mXneiLDDRQit9/vI55TeplG6ue+QfAx2PCBREkYmBYoH0GbjMz4IDwijFvbDeeLdDKhs5hvH35WThbvlc93l5gGJxIxjDmIf61xqonwNd06xjJ4QpIZnZM1xv0LoBsMZ+5jz+Q53ZZf3XmSX8zEpzdS5ua4CkUjKPY0lAmubabaHCA/GPczv7ocBFgEK9Y8H3yv1nhpAZgK/EPhrBy4TRn2A27SfsCbJ5pwO5YBY/wmVKjgxC9kNcOha6IqviJdEqSj6RI3SAp2Kbv8KUa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "4zPazPNJyPen5e0db6lr2+Y2RILyWIDZlktry/nHLwE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ki3OGoMAc/khjBd4PX9z/Ad26IMTnOOSTiRmrEgtF43MBsoNMxlpC8cWYfyGITXVLQsyfpXdw88sNY4Vt3+cdVyDjwvzUJgSIo3gyNod74u7cYi05H4ooIhRidhXVbB7Cn73rn2cSUpjNRask5ulpszryiOHC8w1ROzifLwG9Tvntd5Wb6KRB204eA1xXwxCHORGn6bFyMMn4oz8yPf09tXpMx22B+tCLZEKMgX15Eyc3B9ifpyJMmnsBo3CxKJ7bbjXheL+lCv2KBI02I9TrU8ZWA9ddwfPu/iWtP3rIKc0e/t1he0Rx1AlHva9pDkxXq784ClvAOU6xLNUmnnQo9Ntsd6MGciYMVOXt+358bhrJi8kFXo7Rb6ePrTiFbQ0wpRzibmgG73CPGgWFnu35aoUaLOBStx2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5+1pVb6PCj5TJfKU/LbRaXX8PguE4U7/KjzUsNGdpSw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uXVkk5iTxaR4V3ioZZpVaGvREKtX+VqJs4arR/R2XZ0Af4yI3UNnOX/CNf8f7L6jj7ou/4feD1yPYtm4yx2/7LVhEcbJxZZdoecH8upT65By4fxkLOq/sPx6TRgKd5KNqOmZPb2N5Gi5yHYoXQlRcj9pvA3xNxQhj/TEzg3U1pMaDUTUUrWqgzOiRnmsp9hiujCHxkFhbMGSS4iZuAISrkWmAVGlgIZyK9r0lBw4khb80McFZLYZPyfmqNr7LQTlmD3CR0MRZRi4l+jBWUQPbvXtNijvOJktjfssXNoxPm5RAbNA/nBkHLqEELc3/8NeF3LcVezIk3b/mu51ZS8NQ3xeBXNbvPPnCL3ol+K3BLW6Bi/rCubIlL+7ONfFJgnp7x/xAN2SW/FgVYnSgbXlM+vNYf296uE8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5/+aVlxkaIkRO/n5k/z9pM2XEOaXI1QGTZ7SfWptCCs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Lh2DeDP+rcb8/mB4yC50fZULgZHtaWb8vUfKvCe5VJKl1DVddYRzm/vN8eukZCUDEBdC07JLIrfCHqTzOrOeW3GqaILkTeIIniplvovKH55IrCLBQnl/zOBN2qiuY0xAlDqYnN3mHICfeVHE+Try1bCYAc8L+G4aE+hwhrF2Rc93W6/J47nRp4Wdht8XTGP9exE0m/Kwrm7gigmV+nWCLIcKdNohwiYJ6ZpaSZ4xP1Ml+Xh1rZPNJBlvObE+8QDEnD/LcJLh3mViHKzpiWsWOqon/vKQJmui7iM623/JP8O7VO+ARQdyU49iTixk+UWQWgA1bkt3nbNJfumRmuylyH9nKtYb5UC3Wu+YILdm2SP4IusLXk/zj7qNDlsN4L1yW7pDFOMRHJVlWGSzvhaXauCk2ogrB3FO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5/7ER09jjDmNc8Piu1dcWT73iE8DRmhOvxYMAg4Y7Ok", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "suLHyCvs0a2yzDsMmNJHVLZ/+EPAaKnvhqCHvfLaOtO9JV/V6Tpfivm8z05070H/MjacriQg0vDsnmaw/Phv5guIJZFgH8/0SmwcqHvpLI9MYrZ4uHtQku4URPWo+1VVgCdoJgub6yOPf4Ieoq4k7CMYFe9ttKJlZE374uIKUiGGLw3VuVxxsFUfNQpkQhicWzZed9tl3GIor+Jv6n+wl0qCu333itBWmwSuY/N84sYn6rfvROERC6uUg56KUMwtraWbj80CO3FveXlqV2Rdze52i7GcrglAlrw7LlkIEozv7hEsP8iBpFnZhzJffaiQ8R0Xe5mLjB8EqA4v0LGZ7Yr1cQBsyvFTkY3cmdvleydsaFfo6GP8IvchHSita14B3p1eqfLHU/zyxh9zxKlfeQpmq+5Wt9o1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5/LoLrFvppNs/rtLSKG/oUNtvmYPXVIMn5mExRUw1dU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aeFJjyifhhpdP4e0IlWvgAalAUwxpCpFT6fnx3l6wHXLbTyq1du5w0y3E1PmSOgw0hq0qIITCMft/ORJevdI24M5dxacffxrixJkcL3uQpj9jNUz+SRqg9blR7kCixpmFT6df2WKFvoKy6TNI02FtUOrqPwyfCRZnr22lokpqMbuSVM2en4lkx81lLbSBchfryDU5NwjMYBais4CVj1clhg0R0Xu9hJjgzHGjZmALK5vv5Td53CR/5+/rLboHepkitMf3605qn+Z6fz+q2cGk7ecBE5ku4+8vNNZIUZ46NHrC8Iq58/b2sWa1R06KbGskCcoVAJURbrcZQ/mzPuZekE9ugeAMrFpmsI4DrAtVZb0uTtl2BVjLO+JAiaZLmw+j/leNbkfMqcLqPkvUlk4i1hEsrO57wQ0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "50CSSV/cm4qSB/qd58YLP4qQ8sVzmOzV7fAyg4DjOlk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EXmAezSHyjnAliSmWkDj4DKo75/Y+1tIlAUmbObQGsRcR7gs+VOiLJ12NjXwNMvTDIe5CXRCCBs4un6rDEJxkV3KUHrpbb7Q+sRHNsLGqjNE684Jycnq1BOzmRN3OHVf2weasp8B6TnFTgFUH4s6W29qnV2cRhq6YCTnYw5wNTdOT+ukP9MOJWx1nYRBLoaknvFsdB+c3n06R7mQlLxm65aTHlhsydFWEFnGgPaoHqUqJiliskDNRLO4uO3ooTBv7qsXCKficQDEGFZ1ll9Maay84kVox7FEd44BdwFs1SzMyPjUzaTyBNBrIvoQd2iKAHtQB67QY9KRdIafHhqXXgHMUsA1pyXF8yKNegF5U2kBYlEOeLFZO1DZ371vzz+kRTvM5vY5u19QGzMr7I9R77ajQTFZqJ/F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "50n1RUn61ypUwf7DbsSqClelL6k2VDX4NsqkSVKNLE4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xcmS4O93lnn+35M0DlamrRQB1ooKxcycKNstC3l+bUcy6/aucNBifrp+86TyVIvEtAsB0xJAtYUJw+aSfgXeAVJDq2Zktwpj/a9OOFaHDmC4zG3OIruL1YeGGNy/IQHE3LaPWXee/Abet2imMskgFodP9dI5FSINQniJKE0Ij2US1kI7T2wkmgALcaURp5VGDh+gU4Trm+LQf7LKSN978luQ7CKQxk79O5yk3xjbRzQp7MgLfH05p1MAaNZ4LQdib+emLi3ttPYoG5pwVnVftMo9El9xwNOkn5j7xlYf6fOdF5/BjYB/djn5GOXjC5AuvSEKjDqISEmTJyoK7hcetJarL3mais+PcdIvlkvscrB8xPA7/RAudyzA70+VEjmDaY0Zkpbc4DnzZ3bK12zRiUkBTZPhUjrD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "52LHSsMqh05UFUe42W+VBzOjjYGJ3r6KxsXyhyhuDJI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bX9eOyUEaZp8Pu9fzBOh+0/BXYH+Cb7hYAvf6WO9uCJm7HZPuBuG5TvOpGE4qPv0RRYqQf6hD5xOGE2Evp6s6qy3W8GDnCOX8Kh7cNyKb3MUwW3nS7AVksLDwpgxK0z0Vt/UT7QtnslDjGiCFwo4Q88ooBUdrxHVxWagYQYlMJBL1UeIoMFhj/xVZat2Zsbe8g96CZLrsVF2YN2/iFJHnPdyWBLSBz1Hl29t0QpspCnxst+Uz/+DTYFDo3iGzUuqy2wglByzROVhyg4AtMeKUueFeqtMdIqdlad4Yp6ifC/8GBy3gpqgFX7MgScE3R77Cgz4jLyTBX3ZfQqMNl9DZHTi5eCPoT7qksKjrX/UOtjMQoCMRUHJHsK3JM3U+N9lj9zDYUoBA8eqFpF7RoQoEtReQtJhuplD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "53e1/IqAjja5HVKBVTGm6IPlGHlMxggLM9x88gtbCPs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VW8wTt3O2rPTZDaD06Xdtta45JCgJt3QwMIEjEHUb2S6H7fBSMfOQliCmZvPQi7vXJ4sh7ln06MFqCnIYLq10wsW76YW8fv81FVkJ7kEo9ypGbkQ3cmmoEx/HDax0bAVY1K5JsBmiUd7WTdXH2hQK5se/WW2pSQ8EUMQyUIUxhhZbjzCIUk7IPQzzVHbKgrhPTr3p58ScnMGNLzyz90/9PJwky9lxr/VMVrPyRRqSVm7hseSN8wI8WnIFm4YynM3GLybi+5m7901nPUfWAbieWVNKPcdq4GJBJ3xKrEGcLlL1wUSOBjADejnOdFOVdeyavVfVhkDudrc82GoqQLnR4/e1EmDgtW5f7C3f8qWvBTgCRYyyxqwgd4iG6WZ09A+LWhoE64ZeQ+q2I8X2v3bAiXm/nzFf4ZX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "54Da0I2yPvXoW5kqzquhbYKts8fJlYYS2cLwzrmtbKo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UU4YfHaQ4pNj6CDYKMD9pTa/tegJ5gmukskMpZd9A2YND3UeDPfjAqoX34+yCPC80Ue9KV9ZEZ8S0hexu0530t5XF7rQNmRVfO3GW0vKkAXB0LSmd5mdnNr2QcEXh5IZpYDlcYnUUAeJx5vYIduu3kgPRtInZMfi7lc6EPKS6wjqk8KEIC2aFHXwtSmSY4QwNwwK1FZ1HhT0nXL7ntTODu/P3XLE7J7duRxEHzQQ/HqMmUMIpqD5fAGW2h/XwcogKdLeo4YOE4F2PRuJWDA/yTqb2pnYYedxAMUzGgeAPCiiybkVMGd7DTqBxo1piR1ydhJ9ZdbZyegQXb1St1UIr473WMhkmVTZDxoKAa+7t3Wd+nXYA/jb8MuJU4LFk2WbqxxRqthB12tzdSUF//kJzHFlO/OUhwMI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "555t0f5kXNm0Qz4fd9MYJEW052oGiOhGYyEh9PdfIVY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4ZuGcitMetwdcYK2e4LIPpKdVDNN12RDXEdAk2N4z50V+iQ7V2weN6+zmFk7Sc4j2pBOzuaQThcFxX0fOZKZSjTfTeoj2SRXTCOGQXCJbogsNgIUyXtlDDTQ3AeZ4XboLU1MCJ7H/ndzmmWrFDF2KxYJREsfGCNUi+0hKBP6PTOUb9RI+ScOZRmOBLZdVplDNp8Gy7LOBzkBoMwWv28R44dI8qtXfQNJgqWgkVaP7WyBLobDjpyw/ALlO1hxBwlFk2v40VGgR5eGb2f9h5vj3Wlun9mQjq21nB+dUj20Tcba1LFe+PU6PqVjjci6JNsEjAv/C3kXNhq2dw7f2hmmuxCsIzjImHydLVwgDFYf/0WyDlG8+J6dpmBdh6sxrEfzClLKmei85eq8BEcX4izUwTcFMoJna6sf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "55l3yBwyCuC4pgoWYWueIYp4x1UWxmSdd5o/UdRIjt8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GIcYfor5XOO9nsOJj2EuF6yVqaP8eXQwQxFiTp0KYZmmL7WldmAxCfDUzn6MDgPovKgDdDgkdPGHoLosVFSjA190AmS06qTnBMPmi+F+/wd6X1xLXu4Rac5gJQb5e+rihpORMIG2nWwQY9iJAQCmyiPnvFtxJf31EbXFwx7t7HP1uztVSH/yoPXwMUAcp8wXubqrZJjrbYO6nhCsqJCRvR6JQrSRVZ1Fa+Ywr5lUkHpDfht+KonUANT8ErCeBZsfeqRWOYr9XYcYICaLu56LMDV41rUkuTizORG7FeIbsQaU6oPNm1/omIiEWhZYKmkOBj9bDbyVvSDpuebrV4t601nOjZOiDXJ/o042eCtS9/YQzwa0dNOLTeb6zpKy+Z1X7OD0rZQuUBg5vlUEloi0ls03RE33SyT7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "57Iyyg6/VW6w/ZWwPP2QmSgYFS0Cx452xcbd0kpQpXA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NvH9yvfW7xcoT0mRAhOtCtwx4g/99R/oUbaxz+sTuOwcWcPaQTAMT8moSX0VSyodqMI39QTRNUd0AE2UIoMASfs9tJnu/vHgWpiP4WZYIh4wbTVzJRpgLogg6KZdiwoyC3IAEfiOytJmQgSSYIUePcqN84jXmyMz7WtuEmiqDAUC3XKlPGUOo40iMdPvzaklZad62bVZdDcYUt+KQ5ThoNSZ7sgs/7USbFwiWV25U5bSWP5jLwdvTmoRZ8EknS/M5sTvjULCwKw0kMOwYNNpvoq0OGdguTkdrAtiEZ7Z9W3sPU1CefyjFUqHa2r5Z9HEtXMJnQ/Y2rOkgX42FuQAPdmL+IZWCmq4iOAMDpJ+06WlfymbOJvuT14VngUWVLtd2H7xvAcNgRlCJXBZi6//iYk37T2Xazfk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "57ej2ZB31kAFmMaLxFTiHxZvIlu7b9/V0scaPU7HIw0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0nMmay1UpHYBPeMgvDIQZPeMmaW6FYJ5x5ONaSpyRI42VzbUPueV6rUU6HsXCjp6W2cMURJXDIwP3Xll5ee0z/cdW1Rmpy2Y+BYXFgE/uudBRQp/hQsoRKEcHbBAKq7Za/FURH7SHg/EhRotS1i2hYB/N3r8m8H9B9e/lI0I55r20aE/NPptXbNmGGKOvuY0+BBEmWQQCCX4VRwKh9WM9vI/PGOlJWV+GpqvHXs6GsRWX72VquB7RmNesWSUNi+xGRhh0WmmGMTeTRHeIEvD9dboVsRM1V0ITKHuGngp0QV2NBwfcrHBT5OJ7wnXJ9a98TyYFK8bikvLtiDudHuanTLOFOKDFhMogrCBCr43rbSyQNtA+ySrPbFSsJRpn85lIzUqsSyqZkqjZ+jFyUX9ddvOSbpcZTC1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "57kG6MPhsPAGI4+8urYVsXzT84axzD6tJefAywKwOtk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Kb79Gto/aeyrMT808QfPZYJSaFLZ5rFvV2icIbDHgu1bgXXPN9EOYwidthXWdxYwm84N4V0hVgz9bKw0tHKcl4IAhU7pyidQR8iDRQkQx6n6B85NEf3VwtXA8JyqtaJDV6eAfbPo3GzqYFeqVr8FnedhFbtwLAzqbmRlWdBK7l23BJlBfFzFmaqpqYwqtK+//CbyI+s+6GRk7GR77oqnmAc1+n5p+XtpHc+w1t06ftDurHUhUUZydnu3AwvDOrMmToUsdZU8aLds8At4HO9ADhMqnOeGdX8fLYykJSwfqiWaGfNPDmRLhQih+5wVbk94CEbABkdgyJrky1XUEYpFY4Bo1jMgL8FqhM4T3M8JLsYLiCqdZFMlzUuBTrQ+KpxTUps7hBH2RmuEPnBuiDtnfJW1C2HMk4aD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "57wDaahWDLEJX/LKRV/TK/kL3mJvHj157t9cSzhErV8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Bb+oir+uwsaN43dtf6Buo6d1caxq0VjyG+8FtMJ3Ebq55VCER66EKUEepGgvS3bJJ7f55MmJDdCcV0ueHWTa91hGsxDFyvjzqkrBxyFF74Y9kyKUO4+0fsJjPNMJQWuv6uqtD66k8Q4+xsdV4nq/0WPBCuVNOajZiX8BzUFw7D1zF3dNhi/jEd8t4TFDkjIL+OkvJHQcrPGAMYhqau2d5h5ZeDKgqrExkHnfiaHnsZL1tMC50RMuAS6oZXtTHN22Dzug2J0GyZt615L/6rtCOkJGNmCEdJAdMUfuJsTsJGu2hWkn5N0ZZM6ySgwuYIYA2bvf6y+LrG+Y/IimcHp3WbPkmCypcBiyU4ccBv6MQ9oCogdX9TKhJK7mPc28cjfk5tWg5lD59KtiGsbyB2ArQh4Vy4oQMwiN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "59QNkinhRiUdA4TYeqHTMaXg2VmPxfhsWyvWTGJJ4ck", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FPocoryHXjINScxA5LwXXr/lRzYjYLPDIGGENAV+8lBfcspiXTE4IVAH8LTa5cLjcLyZgwVjB+/g9D/PVVGnKTSUi+I9HhotDZ6WJLAs/4lOXzmruNak5n7RrqVTOlmlHipX/ByjcwvltCYIMY90CXIJUMrefuttNl9+T6nA437egrUSXlkfzaaOvdR7bFAF6DpSzqZGNDrRtjN9+HSp5sj9Ay0z5NEWV/aKtfAlDwAXEWjWQt1qy/THWywvuYkA8nqHwklRpYf1Q8nDU/YFma3+jmnuzPDMeqM0Ku/SzIlt38xXk12nSFv7zqbCSM2zKkZKrZLoykG44l1KiVvbxMnujfKu4EWXTshFg3J15LvSRoa1ZmM9Bdc5fjhCNjV19+jxoLzgM/lGv4f6XtiWW1E1mI4ER5x6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5BnBH8cFVvNRn2Ef9K10wG4FGWuZ3ZbrO/PxUnQQy2Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5PvCdae5wkPzzzKGsTT9Fmo4B0D9EtUk9jC5RwEV80utLnBxqsKR0wedJt7J36DMjg48pgTB1d84aaURW+Nk25UkwnZyN8ncZle5aAbytcm9wouY5VpikuDqu5K0rAkSMBPTbPAPVReLABiZtdnEvsryRRa0kxF6AWQEidBrp7E/HepORIn2BwapcoxnwmRkC7OoVqNSPF4lNQWLLNYnNTWkXIpHl8uhdN7iv+IO8XBAvTn6Hlsa18/gSGBj+B2rBxO7tNEIhbcCxO7XAsfznRBSNo/u/ecXKiyD2I+88Ch3eIHKhS61zWQ5/BrkuzISvVH/Asr9J0fimxUEjEnOjSK4+5x/D8yVrA59svS3Iy2m2BN74z0D1451CLEf03ruaCPGr4YUYChUSx15nS739lTIJEzdmUlx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5CUUGs3GvIFH69vziJwi63hdBgzm8rALuHShoQTr7rQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V3vJYAuXytHm2WecmJDgoX220VDT9tTjOk9ZpMf3MBzaV/1hLcxseeOCIGG3AriDgt/fmjAN6xzuuGUa30lrQ5M0lAzWmqYSe+RsWezbD4kuCqg1AieHNlwoyaT4WnMXt7CqBA7L36tltUK6SMC79loqE5ha/OeuqcCwmbYuy5a3R4+ZnR7OhUyOnSxIc3YCHdXgmUBqoevMgmnNZu9gjFWxDpi4E4BHW+N0K+ZZdPUF2ULYG5EZKi9VjixGDro/x9JgDjNVNx5UnLXfeD0txqVaaA4ZDYwe1DqQsglcogf/Fjp27vhx+FzTD1nAbndjvNDDNuGbcnKHsLEFvtHjy/Rk9nyqem6hkmgF3UBsgi6M0a3tskMdhciD2rOkVHiviYeY9YKRgursh7NRmp1oN2CInfwL80Jp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5D5h+dE+qS4kV/5xA3V8BXn92SvtMuIrJj4KyPGK+n4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VdxkzsAxe2ytuiHNtCE0bVvW1oTXAWwnAs1aOwzCrz4g2YhnOV+90+B+Xor731AWog69mYcqOIJcZGtA77MLOJkLunmcn+LioyxXq9tdgFATBxmk3vniiLHyo9UR/E9g7M2GH8namFC9cmOdGmPK/j0AbrS2qySskQCHD/E8FEkS1yZPB+tekWTZvXh3fPuTPubg+g5InFM22F+iF7C7ckXCdanVza82xi4Fv/qQAWJKYNWsqEh1bzp385KHGpmUw6/T7W08BG+rGEVkCEkOUN8AuNMMRYMft3zPv0fM8IvoCs70xvpcMbkbC6/QHcT6N2j1XwIrNR6+vKqhW4yYUWpI+jliu9WccheFn2PqmaTTl4Apco2mBMvb1G9He53avsOSdgN/VSeg1WGhGka2Z/YPnSYv20wE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5DTQDSZ1BDgaoMwHghsVcqjuT6D/fG6BGrgwGxX+FIE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QKsS9aXbWyLkE3YrdGf0+otndv61+HRUfr3xj8fdIVPovUqiECBQ/cbT1+5N1SomC1ws4GtFS9HXgevWo18GarIEgw6zQ/6i/+6GbFwEC7YPtv51wa3k/mrrnoM/jWb51z0h0FiEsA7bsniEdC8MLu5rAD/oVDv4VUEPhnwTODn8eFfP+Qsm1w+aRHAaV/GGuOVWOxiYw/TLku+jL4LdQphVQVWl3lsVLjy/oAljaq00e/MA8aPqwGXkbu+sARwqamRMnSQHj/l5C4/60Isl8lGnvXOKQ/prC+3eupaBiJY/GUuL8GWaLT492vpLN9AL37OSm9tP0xoNk3mgHj57WT7fbTXNea0fg4X9wjVByFvj5gzx6TlhbkHtY4J3Qw4+WVse0nwBajhnpt0g2o30ICTj0AhRhrVb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5DtlWEq2Y0Kuj1pueIDNY+vLfSixBMAPydV+3Ev0V8Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "D5o2OzJiGlmoPNU8iHfYs0B+vgM6rh9jwabpdSAfpORvA72igcBNgP6cFzXiz8XjXz/WCJC6vZrzJ9O+6wy6OYQQmKpqW36Cay0XWDeIqF1lcC0KzA/fEzLynoITZroQP2SpE0baTBRE4KZYGRCSTfDMEF2cuavv455+fGSfW5EjWse0ls1W8Ccw7mWp8GqLM+4r2P4uaF161OaCWKlGXq9iIBa6Jyjuu4L4eN/WUbIZrH13P+lYEjACjEAdNZepRn5QxfhEycYjYOja2rtg1SDtv842mU1HJGuJTXOHYgswrSALKFcjnpwejFfXYKS/jNZrvL+h5PhAzLqv7NUtXG5S2ySW1QYjTd3Xvsq/rIYw3jdH1WgcHJnVZftujq0Ri1J8fdfUCIrfg5gozHaXaCqBIhP7IAnQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5ESknLChe7KnGIbJi+eWtoAsnRpkBSioQCfg+3N8ME8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k4LGSEu/pT7nOeMKEHsL2k23hAvmKz7ZVaQWfy0fz/0QVtDt3Hi0mfTXgFO6Cy0WVQE4JxhWg3Yu7YPBUAPYwzOvuue47XrPzHwZeRQ6xnWTTMqHQyRJR1sWJJO7FMTOXf+jP8/HSvNLCHT1UGRQDzzONT5qidtuMYGUvNdGLIrqfGakW96btPbIGHxKoaDhx5aNHbtw0VgBCpUGX9LCF5ZKi9OnH/MZziJBCiWw6r8p8BRbS3SCxhwi3XX3pxfuGGfrZN9A4s15s/ra3VSrxyrj3vITNX0X9QPXDJnCCD32iUZY2dgNHIDdBKhhDOtMqDUKMO2lwLRq2HQtbRrIag6GArTnSdyWUztVwijUPdLcSPRaGRE1CA6HChIYJzyM+umv9Jzp7scJPI2VsdaEcwalfwkXi6IF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5EULz2WLPBzhSXSFWF/0SdhZ1YNf4iG9trMVDBWz7R4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UN95gU/5WMNMipNmQ3TEUO4kybmJt/vv1i5IkzyFveSgKG2t1MdWvgZQ8ILT9oiLns3bpwYByGEDVcjL7ylVeFDzJpicHECwH/S5rYvzCZ8u9It6QiCFrmJVzYbdoc0gdhY9Kg8XUXXa9u0wpdfo6d3rLUGp0K5FaaJ5WkLtD2AU8C4ZtN29T7rjEsU9+OFGuQa3VW9mWXsfrhywEtUvcrbbx2aAibZ12JxSXZ0tzg7bf/m3rCU4dO3tb1kSn0CHJBkcAYz26hdz8EUlhWLeV9S6fM7zmgMnP9jbhTCA7rREQls2MIh7V0UXffM5Ce/ApBUabp3g3bl2K4I7/r7QtolkBDd8gmGSMcK98H0v3J5OwXmZJWXqHF577TYkmO/Df8bzW+mCCGaPu0a2VoHtePoH9hVjYJvn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5EnLJTk5PO8Yv1hAN1lBfTNEAOlERMWfpY3l2AsiiT4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BfH5H4JFrlNoYzFbkg8VY0JJhwvXiXhnPRTfnjKKx4siWKu58NAyZ7jf4hRALzSINWOH3HZlR5W1sAVG8v2M7ishuPAFXlMewDu2TxGJSIKD2IYYg/fiMxwT1x9mnjGIqQOWBTN4pQITZl+lx6bt+PIQObHeoiKsuFVRfvZif9lNlSRU9ZJKwRIRC4Ys72IZpnzCM84zr4fFca0c1RWWCNCZSGaU9uXJ00qiYzbxGcj/QsKF3zKawSLDG+HuWm2ABtQSkjIP1+0HNGCAbqpeogA/evao66hTcWZ93GVkE/77Gu4P3nQlRKY5PJrk0n2bPRuV6YxUbZKHp0N3D97ToxdzK4OLvabtxjSo8b/tcEOqpkVVsWlg5GLevdHaUKwepSFTC/gW4Om117OXcCI1RZYSeNX6QIvV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5EsKzThv9c2NwgqVNzVEKNmBoAIs6Dwv3y1eUVXtFNw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AOlU0vrbxeWER81maJRCqTCICQp2bkXz+VLZ0JTYfIZV6Q5FMvocI9ns5EWgoRl6w9H2oaLii+Ls2y4gdyb2bpG034fzXClKIcs09FjSle6/gMhaH1s+LZMnEwRuFT8A0B4lIAbWTLTUxdvCWrVeYAFkcno2PVwHaSvFn3jCyeEutQVSiuYum/PVwr3WmDEte4NYMD5ScCAX/4zHKju/rdZMu1tgFNQs5Qsk+PgE7A4RaxBXHy8vtKrKZKz6aafiRw3g9y4Az0NbZOcqbHwnygEfHQbWhoJMsXOLM7AcLfRyeq84KbbRcrrj1/5cc+Ot8F7KXvPG1L9GkhC+lJYDWpJQ/ute4fDrWK7S4n8TDtxUUwpLxpv6sWsfXi4333atXa6Q4WUJAPvSrNZBto4HgUAFwfp23dty", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5FGATO4Dtu0PUeZC8fe7eMApZYaniKIuPvY6pK7EX0c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GIYcUxGiLOJ9GPP0nA6TMQMNKHYD8mcN1ifACfQXWI297U7fMKSCOv8xlLzxiLa73GpeE6U1b/eLjz825Xmh5uwBazutbhDBEo/cyQbT4tWFWn15hRW1N9UsKuze+g8dnoFvkD0wb03vZMhPdSlhwK1/UmzdSQ/UNCuLWNtShkAv+Dz04oE4WClybj+nTMK1+1X7zNPtA3ICLmMm365UugyE7rue40Yv1SIz9RamUpQA8wBISj5cRLe7h5zPJHoG2xBVi2ExSeWP/Vc9n8L7FXHZnx4toy+KT+uPla9Bny+cfJvsSBaiADVHIggKGXrJAVNZ6rSi6+fNpmTQDqlbTpGUw6GUtM7tuJglie2u1+/ae1vANDpDZZuR1o/LYJ49Xsv6xdKXE85pKBFNTMGxQjIWNL0INz4Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5FHETM/n7y31rOjPVsHwdtymD97Z5s59lHOaEvjxq+o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4nuXi6tIUUASeRPgPomq3x2YkN16iG3XR1h9zTw+wcdB1vHvk+tLer/4U/0jCkaghOkBvZVObPW1cz2qxzSiXDyDmb6Q+d04QSMVlJfqpBYd0nSoAhI8Fb6KdVDrH2PpECO5rWrt21cbQrbWd0gWvYcAdYT+UDfN1b3Xd8NZXsu4y8/PTXECBZmhjInn4EGxbtZFJFDCVQ92Im27eo5v7aQlNdNqpLZS55pleVcraezAQo4eIIR5/d+KN47aXt22yd6jVX1m+94d1sMWwQMk6V5e3rAWPGVY6nndeAkWq7iSRNnqutVo8mjoZ5d4gbG7FLKc36MvxhFlS2HMurDeuRkCCDB0FLl93knFkPfdoVzIUP9ZI4Fgt7MgXOLUTA4O2R9L/2WVvdwdITb9V7jcSGutkmwL2sDu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5FKsGh+1ZZoZgUTmBpFUoXD0o3P9MAcxQrtLM9FgfJI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ETlf3qKNqjohmygUAg9n22HZ2nYzORrXbIHKZoI2AxncAOPjAiJk8vdaxJ69UMhi7yNEHMprI4sjvjt+ZzoMKZoPfh+6jimuBjpadNbOSDAlBNPdI/0y+ru5cO2VOJgdqkAF7Fr1ukMHDIegm2SpLU+WERyngs/gboHGXmUxqm23mU7bABiAUKxUbvTHIU0BPVTdtN3Va/hfjR+Z7lsSI9sqOTUAZ1tSdfOBaLygBl1Du/jQ+d+7eSewr3y5dvUNjsG4Kz49nvvben/eomsmg+S4ciYSPOddAnwWz+6a0KbUDRx7BJgcj8DpFNZZeQi8QDtDD0U9dE5n45ejfJsYzGTPCOLtkFWCA3RCQUkw93wvJhhtL15R36pEcJUxfG59Ea+N6Rxq/agYbjgpuKsk09kSxr2RKPdv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5FMjKg38EWuQpddaZzuZUOZBQ8PgYk+RlCBjAEwKQaA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xO16w3wF0+iq6UT2R0HZ+5i4KZG19ExiZwkYZ4EUG/IfzLdZI3zOs7IgG0sJI7LP0kXFucvMjSy2Ku+v43/+Gu6JUpsbUF91v63+ctLQIwb6aDvG9m/Y0QIgvO9LIW6bmY6a/VSo8MhFC+PYyPTRtNm33o1C5u81tuUpXlRGG5UDB1Sg73z+RVh7v78e9U3QA4ZNFIxIVvrE48zQRQmlHHDuVsaZsUCAMLTcRQ0sApjpdcU+NNc0ldSdlWx99G87K/Jk+J6UZ4Z2yt2oYX2FLKAcX/21NulCMLf5j0/ijrpIY9THZmthUWqQgyjtFkMiR+2xOERmp4x1QC9cNUIh1vsmq5WkyzdjTiuQjUn70ZxBIlMaQp/58QXlt7MLQ7VKyxbEjPXgR8/FkfH8azECtCVEQwiU6EN0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5FtwByXT9IxJRz4UGW4ezHiklV8RY0w0ltTjWMmSkSA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dVw7fDgpqTuBfjec91pYRfXpZwSi7+hsNHTGwg9x7bjLgCD0XlqrV9VEupvlpUt35PxwuI0Ks5TSJu+mHeETkwKNiIwuFr6rt8JaH4toPkeZI3x6oUdBdSBwx5w3eFDln6IuEhGNMbI1zVVRqzmeaTykh1n5icbs02mlarSFbs9dtcrOi8X/0CU6pSi3MpF4yNUBNh6/zaNl5Kf/knoekHVdlU7xqWjLXWgXib9udNLoY7Y4CoAJBHfR5Nch1viDjdFddzYPB4Z3uWG7c6B8za+4urVqiFI6YhIdUx5REkC7TtPi6702O9x+emRDNlWb83oVT71MGBZPo8xC+HW7BTH9YqDWZwciXksauKMVXbOI4C6Jyg25bGRAe45pXBRFljBJTWCb+f5YYsU4wF6R3TYnLMbnGqvY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5GWjU/x1vDtPuaHkQmbgwBxFT/BJ2PJWXoIW4b6OIHY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JxH4QeT9cZ1ebh4ajn8ZtANQr49avFGI0Qn/piIqD1opxprlkw+R+2r0qFU2MjzuDvyWL7D+j3xFPmTPWHxUZSGxHGHlwHcDJHKNR35ZCd9ARjrWwaJsUBxq8QN5z/n+qg8614rxsNV1yGzM3Qe0wQguuXXsvLnzzdfRmOKWuo5apk7QZSOUgvZr1s1KbTjMt0gOsViFHFJlzQkCoM6SaFHTrLZJUIRHzabzWZ9TdjFZReKzlitX0Drpip/WatyE92+/CnZWmuc3okW7r1JC4ZANgOTp3YJIL9UABG1mrcBk8vKEzl0UzR354yfLm/SmjMso82QISv6St0AZU2fl2uojHI44UkrnI65KDnud8KVwUtG0em8dK3xgtmhr3ZPTPq3PVtFsCnaN5t5W76FNPwo9idjiUIRD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5J56ocLSNXN+30fGFIRdbh4gANbUrbqPh98ooVAf2v4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BwHRmojCGrD0mXlFYNWAmpCz0p4cqi7h8xduno9pLiNsMGbFP420ZQG9WH9+ROOCjL08TsZrP2iRXN1gcPyteZ3rjqFbcBTr1d8cCzdITHmcHDdEUYz2enkIaMdvXio4W+6HFqrNjrfddne3L/bh311Amef9wdYtzImX7AMS6u5OAyBnlEw+4QRfV7npyMW7aPgiJkx4+KpcYUM4kc0+qEoVizBiZ04i5k7Ycub81jBwJ1Xy9YAeNl2ry/a/B/CzH28WtSLzXsGnngTvyWCsqRnwfxmpi6HLD+asiDgDaJpWRCWijXO9e+T55ox0rck0mbAqaOOKlyjgnrzpdBf1NbKKUQZOQoMoLuneUdLj59X3g052rypEFZM4MgJq+e6f6CBzAkdM63vo+UFupJ8qx9dQtMDs4P/N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5NIz65bO2ZZTgYwijX9Db8/0MzWmassLnV0/yeG7O6Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LSPhMj0DgIjdIN36xBRFopNroJYmn8dButQrqWAWUlxzVgoZaUwyb1k17SvmLNSMRdCf59oOI1ebyMZtiMwthiMNeDeB6Zu6YhotCgI95Uwnb5AFXvLQhz6ZVER6FhZzqUnQ30mWpbjvP1K+/yX2JThVNz1xD/ah3/sefFOufSHfQRbTfZcu+MMeeGX+qy6N3E66u/tjL4e3J3H02O76rDD9v/jq1S2jYTcw6ZSt5w9wqCQf3BnFLvsoP/5aQ8oiGo/FmDKeIK7Zm/d8S3ut0KFU2usDG6R8+HirCxPp/YJMuUnB3/QseYQPRF0ORxS949p8iakBd0K7im16t5iXQO/2A42E/EB/XnW1G3t/1k24Dud1zKASdm2Edthu+WukvHbscn4HVeIHttuMy4DcJgRMo7F0zGYe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5O2duOZvT+17N/2/dqHKcMDIZ6xJArtrmrIeAT7Ba0U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ACydmKvVzu4SV8isrtW5MZ469gJZARVNs0ojKFADOBMdhZ4VGLxmUPbUrG2bPT3hWcgiqyfijBhxm9a4VXVtnj8/TO0iDceZ/DaeQ/EjtbD9IfWUL6bnTrmaY8tC2AKJFE20OGBQ8QBs38l5pk0rjnABR7GKPN91Vi04i6s6+9tPvlvbzEhjNawZeW07jA0govYJQhQ2N7gqIAqTn51CZO0LVZC1Qr2y7H9aEKRO0M787N6O4t3jXyttgAsk05uZDe0BuokSO5z1dy38IfW4wpf3X0gOsIOEciligXtUHcx5pnUmv8rbkf0Ill+CGwx6FUern6BKECADt5yhoT0KB/f21oAodxqcHOjYXbGhTUJ3K+hO1CF5ubUoG01c+Ii8nVwWgun0DmCreXx99essYiL/zk7cMiuo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5O62nZkhX7GqUt2deVER9awhttifMUKgRhWlBusMj0I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2A1lwHLW++tpWF2asTGZzR+A6aYtYOk14O3v12EaPY95Py0dnXJU/GBM3PU6a18iYZRfEsTj5HiOR7zOQHBtcZYoscYyB8FiXggvZEdXEP3TFWUbhm0G9TUlJkCiabWnW/UBQOc4h6kHbDjy609+kbv+U8GypUVZh81tcv+JfWFfNJiA/S/rdRbmKEXm31UwzxTx8/d9kKVlPQ/xx+B6yKWrpqV7PZmGc3rJNxyMYJRQi7YdUOHSScNt27w+AxqZ/u6x6+PkwdlPlq9jigUgBo5Gzq4jeQvlTFEWlBxDgrVkj9/LKwt2/hOB/tGpg56BqucQWcjplJN2GHUpiBitshdg2TrAxV03VaGlxADq1SeBM9nLo/gd9q7xHlsPjN1MUTWoPGyBkL8T3nqfAI0SmXRqxSVEmnMr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5ORTKd3DdVUT56KqWThnK6AW2X8l1BlbxidVMikXSO8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y5jRm3lbcJfekVs6loR7lCoqeBnjz0UYPaMVN0ikEpXFt8WopLzPmWF9uos1XmyX7oBT9e1pxTTxha7kbWTWOjvBfbVx2wC7tnrWGstOa2lRUTPOsWLZlXUkgXme6a33Ax9Dq8XxZgBuLi6KGVEw15IGPJCSx4jJDO5l924aIKxs+3YG5+/8N3AYjtGuZJ8FZ3AdZSUIBb2gwXGdzh9mzG+KWyQQgLFqYGRDAxWmGCREgRqlHWWFPDBfsNdZ8vRZrU7EvbxAqgbAWKrx6WjN/nRS2HwVWmtCfVQiBZeyVhbDjJNqYLCgsMUxuEDwg6Nb1J9khpffmeU2TG1jPpUXgW0qZ+8H4VFVXxfnzwf5BSxP6tHrcjT9Vtlpl76b/prrOKB1XtrFl9smBm4jOWkO7Urd77P2XSrW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5PA8ZJs7UKHpmlxxCsTAQVxr+41+2MKzDplweTDONME", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rYIig/kKvhf5VI5VB43rCbFshcXdRwu0JK4Y6O5YSXVQbfKXSgsz23ICv2UzP3mYdU5aAL06jbR0msUciGbsLed2hnozTe23+LeM85YfVx42tEBXFZBPLFortlIjvCn8+ly+P3T8Ser8bF0tBUIbakAokHTrlCT7Yu0VhqgRXorpyAKBcb1IIaoUpV3R9t/iSPk0EmcaJ+SpFiYbNQ4cuGKFvZFTBen38LRq1VAQCtnYyEytfjsVuyQW0ZDT5PfwwI75VtykBf5hZJbeMoKzDsZHztoaDTxDg2N3lxwQ/2c7a2rtUMyjiiJbADmCMAcUJpSYB4avYUuZo7ybaMR7mzFjpJgL7sTK3Pz0Nf/A0wTrO+0nP5qK4JbSptngIXW86M9gLaYG0+TvpgsUax692V+FVVLtaFz/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5PMldHINzmDyf8/T+OXtGTGsr1rpXUjgrssNg3uDlh8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ni8o7KubDe5trjpzgjtAvC8FFoVNJs92xqlvTfcJDTiE0hIsLOZrnWqoYuuwE1ho49x/BOg0oGDgX2NmFXqLZNyWjyjKv5lTV45L9u4DNoZRnTIYsli7Qp/sduYQaydW/SF5gkYfN4dAHY4PXGsCsXAuxxwiUbBGCMEDV7zpD7Y6XRR6/EuO5r25N0ukW7Xr43dMrlX1PxXCRavz/pN43MEXj21M0zFH9H55LS/K39GSLbMkCT9iQbyEPYerNs6kZtda/7/ewtJ95ORwkOvfhlOOMQ8Pg3NN2CPyDGX/mu4gpV+cJ2LbNmR6YnoflUC7GdvdKUTs5XIJNoXuDjWgBOLfEfqfdEHXnQ+0q56HDibcUre2WiAnR8A4UkdzufivbC9Rrj/dCDDZnrq34b/Y6TdzpMVeIIUK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5QK0sytilimAQpYoWwL9e2xcJGj+bCXPodn5k9EVqwA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5DXAdSoRSQQLAGuAnrU3VPudjfTXRfeMUQpKqN/IkytaWQuAOU6RCV7zzevxwpNEC70y8luQdn+x/boTAU2BalYVo6Fx7KdqZEky8g+HtHFQGVlh4zHVGvDG9xLrE9r8C/hXCXmFtnXYWNn1NwEGpcnPOsnvRcpn8Km2s2jkl2KC+dR3Vs2hFbQjjPQwCX3+6dXQpeZ6KVNN1q1z0PyVt1HcGlLeovXfNdQ3pePitfE4xWGE7cFZ1a8bsv3AwvbEmms7226j+q/5ukiblFCmfMxb2eTdxFxU0z0X8/iNoaa7p17lijafaeODkWww70KykbzOP4VpJIYXa3LrAx22fGS6Nd6fUryRMiMOPoWTS/eCZ2Qbj+8IaQOnkuDNygsYa57N2Dc10uaNREoQh+SX5dDG3Za3UP+Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5Rn9iUFqRm4ahaXuUWQBcpvk20cx9kOhoRhmps9z/gM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "irHfIxKpUWs/ZTx0LjeAoI58ydXTBeUvtrOVvJJSH555nKXqgX1RiBUW9sUOlTXofq2iJHBTH+w/ygLIOkTUYLa1e7lwgs2BaVJqb8zQfJZewfLxSgUXdTgwhzPFqd+K3cflLntZLj1XC2jqGrcg8c06G3FxZNPtmI5RtT0pPRSOPl8rvRZvj+DhrjrtlFoJzc3zRUMF2cqUvzc+Ryauw20O9pLMZTzG0uT5oZAoq/Zkh52AqSBMWu04qQgAbbc3NxO3IFy/zh+2QHlut4ow2HJDlPOqvGY/DS7rVw120xhpPQXubZD5Kf27cwYWwPDqaOfEBDlie7K/HCW49LbZTQliF2bryQT9pFy989AtQ7YM2eMz9W80tDfDr5hP2jn7ud+aRRPuqS0sbf8G3+EUNVocQeLQDnKV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5SVnW59Oax5btL9uMISFQrq0pEDYsQaT4Nwiu91nCVs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qFN6Tz/NTKA7csStg/SXn9wekJn0a2xD18WBzPxjl6xh4rKkZoLP+2rqE0kv2C4S0UOxLcUtNH+Lsi1hYccIpbypwXWP5rmHOGz2aTqONllDUM6xdnGqXdtO6kyMoiHaLgw9+R7Owu03/biJ3lE/YEZWdUgv48MMl8Q5RUS55dGEUdpHru0N+Ve2j9dUcYDx57peO0xHHUxAPrSyycYBKSSr7w6JRdEMMCDuHXRchhuFOOQT+PwQCeo7C4LRoyVBvZ8e0edKRilby80y1Z6Y/NW5ut4GAg0ugALSpJaiTQeCsyE4ENCsv5hCRe4RI+/W8pAQXWCcSFo1KNxaGH7i68nsOb/IWZDhv2VlS1JVdXY9sI7cYxf1sFXwPZMLSMBGP7FdELYMc5AdN0wtjaCj4m5D7Pgf3bcr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5ScrFsOuyGppe4D94d+J6qtVImlpWbxBQwpoae4Eodg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2Yd8VEp6EqUR4TMmZXow1t5OpT5MgxiZWKQs/5a+eJSFzJhfQ1CZFPSyxBS8QH8MxyNqla0AeKUOJYY24Uli6aQ9YCMfednmIAQivAeYB2dWdfLgqqbjDv6T8XJTHcXdsQP6Kspp5o3tWrVDZFxgKSwTQXpMi/gQTW2JkDe4UC18VkodOACDKK95PSO3Rgqr93Stfhmo7Eccxaxsy+qiXhghUml8FovBU/0H7N9Q6RUmTZBqUNpJridBO4BVlfdctyoi8fyyBkagEi5ljRZWcMgLDlZvub48sTng7mT1OOL0i25FH3hvdE9dY758iSaUWos+6b/7F381pG02SyVBDj2aFuR7MITFUOFW854l4jnvI40qajL5zA9RVcyybmEAjMXrRK6QtSrty2vm8S+QVddT8szzLwzd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5ThUraPJK/WpjtwR27GjfCG3I50DxnBUQfPytGBgWw8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rVvFOqNnTSM/R/LXW8fUkeF/1POaACJiwCekgQz1QWjlJz1ilAUgsQvbQo0J8/B/spHxqjfN6XlQjmSg+dlMJKL478Dta7eFGDHYx+wdyNO3U7KH2tLWzOxliDYeJIHSo9by+sj1PdkDnPJwG/gxg0bVOKQX/tEvUFqNJQovSFjlBP/UOQ9gu6PQ5DaWtajVqp3DPp0ukk6cs1yzMn24Nc9g5ChzeUHWdEbas7qsYZJJ0x8M/MUe2ueNWCut1VuHNH41ESeF9PV+hrmQxVJfBzgnpq2HSWsEaPRyPA5pklylXLvI6xPSD2fa1IDUf1xy/oPmhtuhJVC7HPF7sy9mSSFq+n2WKWVJGX5f2Lc4x2F630nBOCOMxdHghsQq04HvkKWm1xur1GhWeyOQX1ZqapOwtkOyEvHg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5UlEWKgwTnVTYMDJLsHU5Qx4sAxI4Sz4/GcE93faiOA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TcAyrYeyEuX3nkLCgQWyhiM7m1jpUJMzaOBn6Qi7wnVfCjXq0QPY95yUISdL1xnsDuOmaLR8vvZPRAkro7AvUSX6rb1qNjG/iDrVtPU/Me5aHm6Bvlv0zh2iOmedNRDV4/tOKPHau0LoYX/f/pWRZ9VyorMJ3hAW89bntLAmms5lN9lkp9reyQzsKtILaHCCrsx6qOEVdHxOAe+Ceqc8HTX3cpy2G63AxWkSYFHzvBL4/g/GENcrpATpjR+6TY5y+s5MnzsQl2vS17vs+fezF5t/y2czRO+U5tGzrsGoDe7G0PhtTg+FAdza8vpVnLt32eCvhcoZIfeh68C4b3x8zQlDN++x1efMUb6C2TqUgD/Mujd2bNReXwahJzrMNNz0WezbAkhPRTOjYGT4jUvKymbGWF4ZFgga", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5VXPbiU2AB3o2gaXwtkw5rTTxEhcZR3WmbZBTJu2qpo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yP7WLL8kSl3+//xm4M5bZx/rf3e9c63BjdQp7ZLH/RpmTkh2omFPxr97TWayj2cH1cnQ2MUQnurnDPvGXMsY6zfzAsn5du+TvHPVRAO7YGw8Yo6V7UruHjSQ2HhlgXpe+xxQYlNGn3wLhTikV36mOabsJzp1qo5voLryYW3NT5bCaTmcqcqHxzyC7UmauYYcV0kPkJ3Bh+bT/qLAWF/CmR8kcbeUmufNjRJXoUMj0Tq6LbJ2YnoYmAPIjIyq3l9M+13v8jUleO7OPwEZqIlHuJw5o3vmzq5msYUNpyzRxPGrZEpyi2VES+AXCeapFMO4cYwZRKq0Xq9rSMea63hTcdnI5NOKJ9rtbyBtXP/MLTDZb3nPzHPQW9WRPJVJjQpwFwuOr8PwwNepih3pcRPkqbh2Cl7tQPUk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5W2YYUIvoDEWEzEywFT5zJVQwMpvDRwU/OAz5iYpKA4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e4wZLqYoROe8sTxN8SkP5WTEci5axunPN5Vh5QxxxLyCy3oMv+ywTHALPbD+z68nzzeND+m/I24bZ/CuKAzFC/mHsIAR5OUq9itPaXh1OkqaRG6AZdXYnTVep14DpTgb8x1ouu1eDZmI5Tx7esJ5RQQ5aqqmMe9q3wrtbywD2R4hCr4GH9QJZgsrgtlhAaN4/4AGZfH1SJdHLoNSgEDyDIGc6W+7TJfucdrYwwE8nd5N96neV7dwImLBDddxKxELtE1rundokpVbmQm9fDLHdTDn9xp1WfiLyW+71H0bMTRm15v6xj8H2/xvJ7ZAxHY0xxP6dfy30kc0ZmFEYGjraogiUhEAprX+4edGbbhYcA0+eyAvyP86HuYC6/YKQ8nFgKyx1sXwC4PdwS8QVuQ8INNYDpdBYW1u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5WUhA/Ugr80/jhoh4aypyM7nZLDwqFs177BbljVvxAU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QaAwao6Yvu2OPWFaW0+aZE+bsyPwGtjdHA6hcj72JB3myv4xpn6KpZbL+5ziaWZS/dzGz+Yo11QsDwNyR1mMUTz5jv2igHR9Xz48FGtZ/63sCgmUCYDHWw+GyBva8rbd/Ia4TtYI+BEM3TUQ1GjMF5WWKtjeunoqMMe8EuUUQ1H/AbM688/UJW1RhfVpd9Vn5PUMzPuue/NQigs3kG5TzZ9szewBrIQuSwaGtQHsKfsWuvCGbAJUrFAELuIhJZZbxD8cgx+/lKTrWOKoLE/iCi2qrhYqh0SvqTJbCgTZn1KcQtG7KG3ALSjmtH3/P5kqqMX9euIrFMo4pyn8TXzfdCJnVXf8J2sXzYTbFEdJIrnFKHOlUjk3Z8cM4pwvMsga8uH6LTcyKrs3/8kqUaxG8iD7cenZavkh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5WZuzY8NUlBSmat5V1Pfs5K0A1UqYK43Zh2LBzFNnD8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4p1y6Annq3itb/KiW1623m3PIckHdWLN09JsAtR3sx/evlB5MyilsTYxBtq/ZkUfKSaxvgVLzfijX8jicyBwYrvDuBw4vGw2IzztBuk1AobJguZuS8ooOWG0zUy4euny2c5APno84UY6F4I6IilB6MFTgIQWGdA8BPZU4AiWdD9hpYShQWQGD6QM6r4Xr3fHmdJWYw0pU2gssR0Q63nnzqtXBe3KDHX3r4UhWoZkkkRIT+/++JmLZ6KNyq4I/O7WysGQIpDO2hcxDSs4Be/e0B1frmycZ9trum2iY9TwUfuUNC8VEGpmzMRi/khFqqaTQ214X9+rMdZOXCzSj7BWRwpe1Ev9sluCO5ZK83Et+kYwjz2JeNr4h4yH6SrOWxB8YJknaqtOIWwR8KTP7yKMdKViRKqh9qw4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5X9gO8ZW1u9cGzkiW34jecXjY6wpMIAODIYJ5osTUj8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cfMZsZELsk6JiNwaD6JqdTMBLKjPhn1ql1GhZBGAPhACTe1p92d/d0Ai90lVSuA2v0ROGkNjp2EM5WLRU9YkBIb3RR+48Obc8sHRJoBwbDmSNuZYBbrKEz3TpRNIOKR3MGRXxePxBGZVrQqsuWa/7QBDlvGQEOyZ7f8SIyFRbaLXrR8msV1kDssv9v5FQSuqioswSOoz37U0ZYVfa7QkHZUX+uX9Q9LB4H5zgfUWmfgCnvFJ+gtgFyabW7aOsbxCrBDqtMejsszKKTjFagszwVhiiRuUiaE28kV7u4lZ+AjNYyW6yJkfnyphQ7XPIwXdWKXCX3uZCzQtCc3z+l7f6gVTxjDDOABJMqOVtnGGz+BqmpM73vrE4c/rO3LVmn5iD8CG6mRef9IDgHvZTVQDHRjCDJ1QDw6/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5XTk3JXYWwLuuxaCYp+m/R1MMEziOoImY+4nwv7XLEU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LXCt/NKyHwdNTB6uu6JE9mKzAQFWOauIUK7sAjV8ADu97Zi6pusX6YN4+DRIwbyXVIgZ7jIYmwXdHSLcJdn7V5SCQnOLk4UhQSfBaBdw8pW/8IrNoPn7k2nQkAoRV4mSMP0/5nMEQpw2jdMtG6YmI8CcXpqpejAeBnyaCJSBVQxCztY9ma6QIQEfVXx9kMFqlG1rQFkEwu/nCsR9QA10OOUwp5xNlEkduFWebcLbxLePQfO5muJ4Pxf5vC8qZn2IZ/vhcFbAN2BIQJRqErYzv80T/p082uphl/pFGBMGoVuW3q8B6b5OyngYMmoN2R2duEXe40sy/2RVrgnVZiZq6WNR3EGCgcTyvDTfL++IlhgNUI+OFi9/8fCmEhdjtO3TPGYXHOiaQavHcKOqApeDl9aqUfjJarJx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5Xvoig+Sq5cy7i2rO2y+4KLMnJ3ru3VTmLG2+rcrddw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o7Zw33w3mpiNJO/OdrH7PSFHzPXzF75O3MIGT65kXc/rDEhoo+4JrehvLXb1jecl8NqSEeeRDGMAHd4vj+s7s7AMil1ZSGkPNkia70us8+CNmbEXCd7VgkE4Wi+S5OA8qunGUfQ1CVFKg5K7t/QGgX1tLO1bTD6Bve7CILMFNJWp2BuLwYa/s0mdObgQ5qwA53P5hFFM2RBJY6I4gAhhKR10J52n4Ys9hFteCPhx3BMME4U6Hj2QLGb2H5cNGciSzokmTdOn45kkBO4rhZo6r8ZYlRgr2JgVeLFdBY8huSGXVKQcpDKxBLcGdHhBym34MyTrfDqCW8bUUDHrStbdVauwLzsbrlpIPo5JJapH8ly2z4aZzwuaOptsLMjZhVR41trVgJo1wPXekq9Xa1amd0r5syKP5VUq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5Z8e9dzMq1YXFkNIMOmz3vy1CyLNUHi0vnnytQJ0pgI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CBIBGR9zCPhPuMoakoww9ttT2buADQ7yoEp0O66dnnxQjLGqBIBQRWsY7VeeCRIKHDc16pbkl1US7gEwR3BcHmFQOIvfZQHHisHjK7FLZ5KgWgboOxF0XEKgYJURFbCXXLZDTx9pTGAtKQWn5Q9Ypf1pQEoaBbqawVhHSNXTLV+RWHWTpG3LCLNDlzQDQI31zkIQrn8zSZmptFAgPOgT9X3LLjxBAuEvnYZQItkTLqHXc0c+lc3Y0u/cjKtJLnniUSP5yJqfPW6YGJ+7ec3KnyjE5YHOIX+Cg2whp1rjm79vsHaROmcuz7C0A679eoC/t1hbsAS/C35SBPOh20jRCTyDyRVJh+PZhYHU4/+IQCGo98eYOX7Y0lWXHfr+bKJwfkad2lepuOF2wAWIP3pMy2g274iW+O9D", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5a+QjRrvDSBb7DyMEpqFdDOvThIwoRkEaSOXlD2aN6w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZbBHH0Uch8juFzuHM07XCuoXiVnNSsJiKoqwrq+DRbMgIkPKXDatDaKkPmAylxzKJ1zXeCmJxXbdnC81USzlnfwsaApGEjWmRno46DuKuG7MLSRymLHElnUUrSaOwNzoFdpVWNYc3ruDzapYEnpnK8LvY9giZODHzTy/nmRaTon19/jhQ3RYcwcRSZWjGnO4EKsQR1l0qx0ilEJCguW2HCSRZ1PUwbRXMVMwo0CKYtAzQ7ZhlzOkKg2b/K1peSV4HP4BchDun1DzwsAZhwoqRERC4Qxqve5PSUGOpVD2OWGxXf7dKeiLJpD7Bvu2I+k4XXc6H05rawqAu7tdXZOAOYo6v8tGI5W/H5e4Te+qxOB08BM9SBTgX3Xl5QgmV0cZXgexx7LU4Z7akhvfClGpGyLbMLCbw87/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5byPRnDcd0ORSp4K66/8JgFoxBdZRxJP7Ryt0kNEAiw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hAvVhFtOM2EptbQ5rze22nZcW+iZAa6VNA43Nd8SlnakHtHxG+BwwGVeA/9ZsfF9ZnfH2JPH0EheDMOKBnnVniL2ffhUUJMFIYpnpRWTpUpM2Ko33joqgZE2b8Rmj/O4rJfzu6pcwud5GTUXdgO3aCQ/2Aw2t0M7VXBpfH5LW/I6RtXnK4RGZVevpbYND/jH1jMEv9GScqgeNLdnF6iTJE9yRaEomUQL29vnCl0I4mTPFKKps9CmoGndc09mPgvtmYoLvHLv1vK3umpu6xyf3VJIE8BZGgyTUbzuXMUx2ieq+a5/e/oKnUDu0d6gWc7tvI6tVNzQXYxXJVv+Bbkg8wOTVkiN3YF+l9JnO296wjDyDMi+SEeRvnCJ+gH0TCkxjAESir0fRJE8Oz406a5eVk5748vH9ve4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5ce31uJ+DcFjceUEXyOqF8CBWSkcVMREW8c9NjWtd0g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "O0jexrhBSGrKl66hcS4yeLCut1ZctIgYTXFmc2jumVZX8HAdulyyxjcoo+CfRLd3px4R/f15iYg/1LVWDst2hOu/rm6uk5cKrT5e5G6CTWeiSkqCvJwtRV+W/Ds/RSqKzgt3+m1he7+gNPKIuVKDxFkmetuAHgC3i/EPXi4WY65u2OIzZ88hIoN/ENJBUBZmeyKFYvNimWXh0SHU2ObBt17f6vTIbkTAClslfCDgS1sGVSRHx2gHRD7B5poGEK+Yk9xNgtI6UB3jwOkK/gdC36KGMU88D1A+fOhs0BzkvUXIZCt8vTMXaRFhX4HOT1QDjVVEZOdHdTC9kBMkapFRGdS2ripktwfU05McOVJUWvsILWrMPFxz+ML0cd8vV1ig/2u5h8zUrn1EtzZIdQHCQbg1GeZCzk6M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5diXRii3SsRXxU2zT8pJZAdAUbL6IgsleOrHKTXbOlg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0BDFjbcTecvuDl4WKp4iVdGxObS/Ffnz6LOsgwaUwGWSmNjyvN433x03R0DOop2jjcjMLN30uUP9rsg61GUVU2Tuzgh+p57Pil8tu6kRk+m4rlrjObbc1/ByIHH0XVKSazWtaYwxP32lSQctLK2kZXdK0Ne6CFLI7YBnh8BPvfQwijIm+JtUuKP8tSOuPjNF2eK/uQcd6+9y38m3NhEUTrYLDSN9IGJQrnf+AGKGEUVOkhbyohElBmJwNz1Z59rXz6IHDE6CaYAp6aMDZfmJ0mat9v0RQZl8F89vc8xvX1yT7tVqPDcAjol4KGQU36eT3p/vQg1SaFvkUmmw5uki8ywvjmVWROq7etnViNDEP7ONNEO9SdGL40glekNXX8+0QOermxF4UulpgRKyfcU+AHOcF7bPLaA8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5eU1fhqISXL/Svx1z2fw8SjEFT7zmSevybWaDIA1Fkk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1YiONGytR7WFVFPZyj8U5fXx/l8KRO0lDUwfyTwO6eiy6lTCkzhhWlBQT76wkvkQuq5MzXe5PdzhfkIlvQjUfWmkeNSGN7jgIlGhQf2dVWmKMsjzVk0yMXw0J2WI0AOaAaPkowhH7nkKbQobBLg8fOzkE46kuUyhiqemtBpuvcOeZCUbQOsOR1PLQ3vZwXeO4msS6mtchi6puzwhnHBU9f/XAJOoy0QbxEaKX2xnPAmJNdf0OxJUKwXUfcO/AmWZ/CMH+FJO4dsfg6Iy6jcKHBB+pSTI6ycrCG1lWHmA8AfeDhfnNjwm1ooWq6Yyzb385LDEWfBJRZk1erCfcHISfv+g3UlpBj34N5pxfX050wY/CUnMPZt1CCehwxvhNz1+biYcMdUc1ADyFiMNrcDMDAhktOwCg3AZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5eoyktlnpGszPkv6uCgmFRIghAX6fg/24Ylc+6dB4qA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sNt2vGgXafMODe0hP0UVcHfdEDPL2CSaDaSNhdQVeo1PtScZ1XRivkiJWBR2pjniFH1r1sthKV5R36Cpw8I8NpolR/81mlmdzheq2KMJpwFhmIe9375KHC4NAYBtzA1R0UQ0EV5vM1Xq50AwzAW6DXw3ZFh9nEkbqoB7Y/qs0b7Y9hrN5+nWWRSgVNlBa8fbsaK7ST8gkSqFPR+hs8RVCb3lbq1mcKfvHgxJVNPretGyR70oegR9s2LcNwhiGbMWoVaaE0lV5fNnNUgyugl5rj1Vl/aJ8JIbJEGrAtFT7Vg0T3/DyAalYcW6REGmnGCzhw04MXYstAgOPJwRU0NUJvJqIQ1A1zOfzYDjCfYmZ4lxd2/Nf706g9DsEQucZR7vA9Zo9jd2PJrHuyTYS9ZZt6PvaHOHL2Yv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5ez5w9Y1uFQ730hab45dIUzdJ6bdSy+JUP7NvOPL90g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9+/azEtrh1Qs23LRWv7ejbvWrIf3yS2zrpsR/t/CONpWS0/SVTWTg14XE1JBFEl9tdyYvcDJKImTA9j7Bcp0Yd37FH+NLtonPlaVF3oMWj0L2cVKckqHj2yz/mlEDS5rfT0MncbfTlT5Meo+RJUNNAnEsuxuVbvy8FHXAkB6rxvfs3cTBzyZ+X5xesCfow8V6NNvieYytDhXqT52MhRTPt+V8TCLP4TCmjUq0RKwxT7BTTb7Ot05LRWLQhUzT6S2ZWbXVxMmsD3nfgiJ98TS9fEC/9c+HRkkl3LUZRi27E46Cfrt8jYcPwbHOA0Sd9IWGuBEMnoa+TZ6t6lGUjCF/518FvbDF760rUKaB+RyTBT5ToJnDml5VYuSn2MLtviyKy+48tb89R8nS08dS5xs+BXOZl/31tBS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5hs6PQL9C9BbuuBDlKoY1gQ2vGy20CXL9a+QL8K5+0Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "H+HJAjvT0/s85svHpsW/FNAB8T+mo3oVKcbpMNV3aNogi9Q4N/ADOlW2OFHw2NbDaeygQOFMMlM2czWspyDbDwDdNuSzeg+mTzQH8VsKLpuyZ80bef1GcAtmx9D8Ier+kApJAx/LIyonS7kA857ZvfDjwfFB2H2ZYhMT97HAFzEeyjGcBobtei6+fB408dd4kxchzSHlREZn7LwtbidAZ8LYGvyDN1PNrZn1/Vlad3vV2Jci6OD0pjLUrmwVToECii/d2soBkM+GaRlERKIJKNo4zpVRjr6bvd1VtWSdm4B2lyW/DA8egXnm78bpG03Wr6vMYk47FSACSqa3K3P/4DBPyXEjBhwRoJlRtKhc9r2EuSQbieCPy65Lq6V23W14BGfGJzKpmx8rdvzdn7Oz7b9w++jsO87c", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5hu9q95pvMThEfvJpwX2cXjSUjHH2UsosMqafi4GqBw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "I2PQu2htTZ8j/YexNq6C5/lg7I+ujJQBSqUVrbQFYUy/QOyWggy2ip++d/sgpQLqJX8BjzRaMB3WEgY2n/uIsuDDvKPOEDgKdg+VuMAOfmyHwo8sWRWstrRnzxObmyGFK28XoNSdNH1VVxE0+I22wlL0qwFsKijxVAH6Yr90RLWmveQxhx8uwHdFPHAxBFLp9QY1sLtxb1dxajV7XGdJhYX09DXkPirHhBGE30dzul2236qWwdiSUytgxW/ZKBf9reF8pwQT0Z39j/nPCfnKMdtbYAZmwz438STEpjigQ67v0suSCI+k68XNHNeK5F4RO0uUmkhpEUl/01ymLLZ/BUX6Em2Dc1cXlnr+WQBC1t4fp9i6/UzBFl+TCgF535dMc6Yt2yuIPeT7g6Y5JFk7FH28fpn2mrl7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5iR1AU9rUcySnRFvyv5lgVwX+dnabnR/1wX1zEvpahw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "n6VMLmuXLRfnGfyUBYeWUsWlFZxMxo72GYhkpfe3eW/l4tLFmyc494E99YA0IWEfLbfcCyYdHuwaTDn8cR1n67w6Pidz8a/2YxKzUe+Dn/E18YLzHuMWbt9VZuG15oUpNiv5YH406KFVxeVDw84032ZRRQkB0oc0ihYG5BM+Mx0R5vI/vVH6MS0oiIf0kP8SUMT4L2BELeAjRpi6D/tmR7eUYI29rvkj7NajZsrok6K9/mMkxXo/6OE/4HJSZ1hKoWybZlLjcvzUlTdInZlehpgAG4+kcZbZqlqKnN8V+4nA7h0d8EROpAJ7djx+j445/YM/EIVejYylhdSe1Gp5lRJKcAG5hYKjd6cE3Ppe6u7alMwIDlMWkvkKRzx/Wr9Nbyn4/yIc1rHR5aylOqcUW2BPBl3VsEkC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5kEfFfoFWIYxJUXmg+Ep+2yZkNcxA78MHfdwnQQtG+0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bEH76Z0gutown3zUnFOjblR9IFa8GlBCH99fLe5A8afX5nvW3iIubeVjIOcpzkoZQh03E9VA+bc6tB0wSskvw2cO2Y1Hxw/zAAjOXMPxkbngVdUiodrxekC3375oPsHdPTXmkklLHFG5kFkKw7rIuo2nhd3DjBQIauqI5kpsKBgcYzLpTTDADvJiMTSqUSPFahG7f5nGby480aIH7/z/rhFPuveF948Tz7G1X6+zDsRQKT7X1ENBo0ab6sieYh6RTo+oNwcmap/W4QzqsZ10PaOUclXe4+Ug4gnMB8L91jd17CtRp19lHx1a/jA5Of336rc3XxPgZPXeVqIpxC0INXnC5f5p73O8YPvQr3+nSRLeEhUz31axCBoyAgVNdbYCatyXSgr+H22GjK9AOSaHOB59KF1Ebh3r", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5kEyysmKzwKdUaIFlI9JXcM8/qcbpK1hW1q0VTA7C+0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r9JaeZXE8LeF2fJzd763y4UeUURdpPY8TjGJaoW1rUMMHR2WXywvSz75t/fnpIyh3sEWQGJQ6/G98FHDVMb1MRBVmkZTw4y5W1Zu7baj2mSNplxS/jQX0nJv8HNn8KhpdZJVxcYg6RzSUyu46Pl3IaYXJ+VzYeNVXoFbJw42yVcj+e6ckGY8JKW72bMM0mkKmbJSwOJQvZOebKmToyLKXGJJMVFVC1TwJqIobtp/8Z0xz50JGtWNJn+NxtDkcxR5NT64fs3PhzgeGFrbID9yuGxRhdEfBCo2EecaaZtdsn2zXtDUbMd3pyIXTQG8Jdz3wBl/I59sVTjzk7CwNi7u3pwSRx4kwDUu5mS3tzQh9QNX49OKPEQgnW0G0BB3AXIR0rqeguyzeP0AtN/df64tN7o843KaLoxO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5kjFQzTM5BhAN6GF3qTV0YM4oCSW68ZJj8kdkmmFvzg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TtpsYdCafDCekuhhnrydHbxu+b6vraKk4uBnLp1cs3ayl8xtcNV1H8gkVuXYFqXR253ThoU6NeTRxoRK2C8QE5V2ALIwdzXW/egP9AXUZWHVBtMCkRgDce7srUq16Dg9EgybEL8AUi/JZNwT77KuWW4+K7wBxpK8olM7S7A/C6UR5Yc3iwphvHqZ0WrCS4tG1cvYBecUPap0Lh0U/UX2CiqOVdc0U/UZftmIRrqFq8tjr1Hl9P8VMwStoyjQH0ALK6FtMMNzyuqfW7WWzP2RxOMsefFZDDuD7z63TYrogfDOmzs5uy1CCuMYFGR5dENGu7Ng0YyfiLMUS5kHsqFihwbrUFNra+3KZRk88h6BJxclt/JzmmmSUmfwNxV4NyJTzBNrwps17bghnRv2v6A7bvecPb9S+WwJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5l7x246IrDSq/D9j9CcEg0LcS7oRiforA/nSbyHLThY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iXqTAyKf65Rz1Hm89lyyTveaPeVnwQdV/h7BK1uAv+Z4eduR5ZRLCr5s1EEPOuTfpSNG+iA5QCR8d41qzVzPpMOTo/FOmReUNv2oR5CW66w3Ry0fbKDb5Zj22LFDOPTCWXs9jDEFXihtEl1pcicdgly05dpOnjqEyHhF1EKqfWV4vFXTa0jGI0Ta2Ry0mXOzWRj9FA5/uKaD6bcG0vaeDsMd61jVdC2idx0ERLyN1EmmC3JQwxCpmT8hSqKaYIG6kVjRrJpTlhF8kg9jrDnayrJQet65d9jDr+CPGcbjk3RqoN//HiaguWnzw8shFFB3+bVPFKJGXtsBP6ZfvpNjI6e12SLJGwvn25+bpwNcaoBEh7DtaLGQRG9Tux2U27U7Y5lvVUACir+Zcp7fNN6TzTAuKk/Vw0+P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5mOwKsrko5WijZqQZsYDvdvxlgLr+FzSMFp5Hoevku4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LX/o+WF0lX1mPyvz6HoQdRpIsgmX8wasdLVNcv8LKIw7P3a09nvkAHn5mFLSHDAO7cl+IFXXt75WWfBKXn1Wx6T7P4fvXzAZCtuqDYCxkFivqnOrlRXHM/w34Y344qHaXKKGgxXBEpOZM3Oieq3YreutNyZW784qns4w0YjTMQww9p7OBhaFCPQ8HKim5z7NFHCDbBO7f5uZuc63+b3ivlEf/Jqnt6nuFbNhHhm/okspNPbOtO8vI6mkVRC2KK3HK3Q+2W1XRN2zUX9VH3fG3tR41Z1gsvCnn4BQb/+/esRHpXh7MeLM+UzsBit3D/x+TBbFLJdtIpwC0I/QtazWovKViyyEd/f7ifJKrI3JyI6qKmgL2F6LBKmhOlvS9bVJ0dBgAMqaVkSN1ZnEPgEc3QOJlbHo46RC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5mefSAXPsd5zSDHd9TP0Q1oQPyFvbxNUy4r42YZDR2o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "K6amn4p8X8dN6mVphvIXXZ/eox1uJeJZuxv0WprDnMJwU2yKaDyyqWxv3VDTmQR1003+hiy5L/7wRiUBxP0WAZbneBtKZXSykApAYaGceWaOJHUGT3iFmryGaQj2roI2KW2vvLTOQl/N/d7CRoocmnxdFU7T3CEnln7g/6A5tYyZjBQaZCLoLUcFO+35QOqizDNbkhCptfcdus4ZH/G4fXWRG21jDtRGSX6jowXzY8R+KQyDtTVLKjt1bMnsiNHe3ucDQcR309M1FWKdaceG/LzBRL8HnodEiUZS+bA4LkJOt78R1wY+KaVuhKwFLzRQual90CldBdcBHE7GtPFVOVAQOFrsKi+Iuv9DwIEwsuq2hjHbqNHrXaHNhZhFn2lXQm4s4M4xQtZwKo7lW0jHcXKiieIvH7Jf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5n9et0u0m0PS7vYfvTIuBA+3GB5f7nAGn/xxOI8de4s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UrtjABsZOS/TjCjzK3DT3E2aexGc78OhC5uyJ9DXfneuG+5kR63P6mManfb0rxVBa8f9Dtd5EwVn4qtP+i700EDISVKKr5J0y2RPEQWLgPR60pHUnRbdm3c8+SZcBYfsVX6Ua1uN9RfL4kmoTk7VZUUe5Ny62tMwQeoqRx8zkVbP5AHXP/b4gKF083STX3VC/0pKMPsMf27hoJfxQ2uzp7YnvQ4dJ+IIxD82VvKjMRfuqk6yMgoVVBXnxFiFqogIx5EpflIy7d/MzCZfkAAfM3m4bTeUvRnttmpeaTHf2Gpyl3zMEVbsC7ghEl1pn3hj3+6BqhWgxc8H2pDm4GxhyefqzgL8yXUbFRh3YEfT+HwdAp0KrCUXGjZB5XZa8q2isuKOZmUUzxzu9XlmvLhoeKL5ZCA2yqc0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5ou0HnEESLFKKk20jlq+lsrt9i/f9y4uOYpG3n2WCKA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NLlNqJ8rI+i5ax4+05Gr1tjrveBT3El7VxChr7xeafEUkNFfO9knz5ZjJak8m0UUFSi88dOHCMs0QuD0AxCLw74yed4nGRHAFdg8y6HLGOjMPrZQSh9lp2XRv/nP1D++sww/9zLoHGIJz3WVYrTOwr6B0wNQzcKefNJDrfqQJ8tNe7v3IOogjNR0ZMJRX0YMpejxeKkUDTwCyH4F0A2JKeA2GZM9aZL82ApuyUf56Icjl3mJxzq8GIowNS/hLMHRh6Z7Vq5NnQTAk+vXhJ17hXN7k+wPvpe6lIi9AgnUtpN1BrhUpVLSjJCwxX5UX54ArOOiBiwd+RwjsPhJ1zX2A9D4FCrWNSf+CpPzt2VEzjtkx22Oaxu9+otib58896jK4FXdTR8/m2usIzB4FHpzbNxEjpzkbtEK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5psbFXS2OUJrz2gPGbCs+7EeqQnbKzDrpeiaCYeklDQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nh7vbanV1KNnfSrTYUNTuGuAJuOy2rYE+yITX8njDsGKj7IpO+RbtoQSbMBY4lzrja9+7PuRjyAC/jG+fE1RPHSdVLx26gdg98WRHlfIRSfIhdZF5civo6DPuLkxAE6AjkJ5gIa9kty3CG5jPQvmuL7sklDf7omII/M0fi9A5Eu3HPjGa4RPMfPcjUBMzR0xUIdimrbaXmlX/t9TzGe8uEFI2kzdncAV/FAfVRe1RP5d9OehIiOywcBIpI4Rof/BDA8Fb7PYBhCo8fbgtF5xKU0MJCOMwcyxd5KdH7JA4umrXZfWFKx9dRmXnDPbKqCk9jfPh+SEs+Zncv/j9Il0DCoducXuYB2+9BUsDjsPUniKglfyuactEOApseVyhZoGvWaB0eMuBXa9r8G5QoIS/z0SDU2AUI9V", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5rFkVx2CF2E1Lom3USk6yt5MfN+Efb1eAhaoxDXm4bk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RC9f2gNvft/GLmzgfPjmQT9VVCo0+jsiEcszhwTXZvdvgDHMICVSrBH/Rq5AFyruQkATLt+9vG0fqguviXPqkK/jeu/ZCNubEpsYAyo/5swBx/cCreahtUS9HrL762OlcqBSOi7ZTJCpbfxFS8JcOZJ9HWWmQfOhXGzzbH2aclHsV88mjgIHNN4zHcmzS/XiprZd4g6PMQqGBvBGyD8fb0w6koh00jl8vnKuS9X2t1HJclwoWBdZImEsjLHSXRNgLomrJtHrHR6nVu4oh4Tyn9K/G45MI57la1uanU1mrFZEh4L4ixAnjrEniFfbMndgbBaLKBXFQvVM/YJACrin4hnTjeEiIkS5ajZeUNN0IzdmdkS5vmjQjGJTThp5PxIh8cQN8nTujRfqhynWdUHrI+K2CinXj0P3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5rvcnONWxgr4PPNNhxijSUD2USRBTj64NCxjh39ZjUI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v/DS/7XIRU0qsHw+iSuLP2cqMdTjHMSMm5VOGSuOQGjC65bs/tt+7aLuDIX8z3Bf14rzUKqtSWJF+1zBSX+LbIJ5jC9TKv7pj38IyUpWWII5rIfuIh77hhTHlhHoLQa3YgjxB82Z1I2W1Hj9CiN/NmHldDe/TAr0IQBOK1l5AkkM2fHIxAacbcjok0Y9avbbXC07n4UukeFnTcuHg4ViE7FU51jQchekKiSDTWRnQkdqSwHjmSrmYSp5elzHGxpB1AfSv/O7/mGxr0MG919rrqJalOD1X5UJ6C3gcFD82u1VoCCSxSOZPPtOnqo0ju4O9Xulr0BelP0ydf9VzRgGSAwdD8atU4UGfNkKQz94X4uc/1HCe0WNVGgTbQpbG396spLl8Ho+Auysv4ew8GkDiIxCtn+4DmEl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5s/qVCzc95t6yFJnJ2TsBC/1X+9y+v9bdoewdLVi+DQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3LAGj0dQ/jflgp2Quqge5uTNR+BeXMUaRl8xooxS6/2oPqmNcoh2PT6gme2Xu6gHlrVmOcwyyRIW4KpFxWG28Trqv0kNckLEncueSzlwOtEGNnUhW7+tTQEXg7cErdV9ZRSjcmJJsCmsbhROSc/q87s8Dnxp/Sl7MFASlZ4g/woJ227yu6vna36iAzM+5YyV2cx3C/H92M9AAQurwnUvC6VNzuZ1XLJL/hkvtDDmEOC/u0dsxFo4dpPb0UDqYe/YiUDRZcgHLe7DB0NvUxe5IyiTn1b0pAaZ0oeFcFtzpzIPxL2v3buJf7BcArCEYg9USNps9Aj73uqGdK0BLNsEV+W1HhmY0P4n/84rKQuKt0kp96pRpnqyO1L4OF/n8+oNamORw9efdQbEKPDw/PcwcLUrqINogSus", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5t1mOnKkHc1QhDvCIgtteQICcZsvfv2WMHw9KEagmfk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wYzxVe1VjC57/dA8gV0O/pbHHQjThF3PmjE03Pah56ApBr7t9+/eV4gzNDNKRLbZ0uZxvunEUY7jV1oCvFXedeQkXar+uGx/zX3f4Djlzb95OQJg9BUBbaUQxDUETENTo/9hpuGEQwGTEsXOkeFIrCN/1hPjKM0eyvYcdLE1z0C+hMWqsFGb5Pk+x/KkcHePcR+eSYBq9d3FS+qriI6A1BHFDKCg/dRL/buQ3DEvil+HG/OstwcjJEBkElTCSGytKQTzaeMyRvoKLb/Pk+nEAjRjIHMgw9l8fuUebHcZW+K6KFmwu2jWKrbuQ/5D5T+x9aQ3cHXPrLC69yyiLZD7Eojyi4l70cf7xO2+J0Ca8ifw0b3bgJV1NxNUJE2yo5A3QMJNSTBSzeJIgUciBljZyvn0ows25UP+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5xjx766hXyvKo2me/evJ2nGZ9l7DKwRgAje4ZZ07Rls", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yC422IKQ9r95hYDTJj5wDRZEobexE6glHLQbM9K0NeZbIkOeN5ubgRt/v4JLIrIFdNhelkXCg3Ub8ITAC8arC+n6nWDRFIOmzuWv75IqSdg+UkApd5fUaSEN+4DYcalOJdwgt5qcqqpWxSKiQCIK15kfrapvROzPC+8CzqvZ5F0ZOgwfBEA5csLdgwYCCdj7gh7IWmx7KSShSyNqvtvhCv+hg18xamM9PG0WyhrF7GKnBnfxMqrIav3NzfKi7r2CEVC2mcR76T7BVMYgPjP66HAItRAptUPsgO7/OKzjOpSREkhsTo6JcpRuJeF46yEIO+OlSk0+RmhEqTaqrtcOG3eCd/4y7gtzZruQRn1omtCgZhMM6j6Y1HomO/AGpcAkA3ktGICfvRSlNql1S7V7B0SWqg0li4Il", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "5zJLY0G2KvIAGH0DruDx/3r6xEwOhPcsrWIdQq9Twhs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NcMlincCC+VQ+ajEqHHb390QqcoXeUDs5Jm33ABMi9+1vU2Fd76lMm68M1q5z/5t0Td1xebRtVNoiVxsP6qrjyevCUsleBTFcH4/buVT6JUvv+QFxCUQWPns2521b//1UYNQlVwY1joBhUDN/VP1SyNRKpYfbX0nfJ5Q56w8kqBvK99VSWnPnlNrOnEHQXpQtr9seXmfjwDFVan3Cva/WDx8pRIDu5Z0G7A5uXxDqxBS3+yE1CNZBRUlyay3TBVi+9gBQ/J6X0fARWr4L/uO3t2EVB25KaVnhas45Ec6paVEyPAME8VoI1J+xeW7vJt/ETqpIFOSr1tN7yY/+XKXDi6nT/NHx+SRwGEPGiZ7DkKU0Mtsv2N/ulHEJoa7BbkYx1IY8wc7TSHcktupDl+un82sa+pH7kD1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6+BM6+V3aP/k4j35aj9CCUeuMjL8p+R7YNg9pXM3PX4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yaDjnM5l2QT3KzVYd4f1aGPmM+vaGiky21MYDSwrk4I911Ox0eM9ys5xopd5aSdflcArUsPkyaCrI5KxQ9QDdQwD/FCdh4JdIWl288F9KQTpQJ/T09v3vDZLYNTOCNEDLDD4vS2YQ6/EcfbjAmuR5n5akO7en3gzvpNJ2yY63tWRcbw91YHaATSbQGJREq1pOUnNhNdsePsgtfIqpnTff8nPPl34T64qPck65eVHfmLYeamy1i0PyrecRdywNrI5zkYEam922eehHDyCl2bbjLtLU3Bj7P08c6uE4QLs1oIeqCJzI+CrstvyZ428tmmhlCrhx42qxHAOkSmongWI2NM3oungQYTzGVgfsqtwKv3qwFFsOTx4lF6m76p9DmoPL8uEVkW8SwUUoQfL8S2k3HoH0XTjDbZ1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6+pebylgjzkVPUBz5k44/1HMtLpqHR5SAIB2Pxn/IVc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ijwYoXRv3a69b5irbgImMi030cnn8XfPhVO6pbRfSnNggU5PV7dV7q23cpEHxRiRWykRf/jpyxSfAF35tWeNNUdXT4Srlgc8oW5en4rhAt9y4+inuRICd4kGo7kNCsQgxvE8DLIPSUq/ss98y0KnaAMHdBOblsVZaPdxrwiAXGijCG81LhtdqMmTo10+DDh4rEuwR1pOE9CY9b8tHTZd9Kc5L/UcmdGsdf6sL94zGNbtksYJj133mYVT172FxXxILyOvS0dvOwRD5SNsgdhbbCf0G1tGA5mTpQe8SgAOgtLVGjDlDWXyfqH6EGpQtQ3Xr8ZngWb2aXXOoAzHt1bintsD43QR3p75tVXBe58HS5D07pnzhBDilgKA1ID4lwYp8ldN6+tVdYyhU80/zzi8yie8vf6yUCJ+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6//vA7GTT/a4QYQaTxmjFaB6jdu1xFgflLEyWgb9yhI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "I5HCCv/vRpfA1+op+sfIlzep6+4qgqGGFQ134zBUXbdO/o8fiWCvgSTOUh2qbbA34cl4kTgIjWbGmods9lfiYRBIAMo0dGJWnNOt87oETWSRV6hvH2nYlkB2gGJg/wH+o1adrfTegnnGtnSaezaXCrbsjRoza6WTaQ5aHvdBHbqlmz64v+X2dRS3NbDn0zkYEzlAnRaDwngLZPn6AT05c+cOpYYWhUA/+vwm2Esi/OQEkCa3sHJdb04v3c0UsKkEn3s3n0y1EyyoSxhSiSfa825my5TV4kUXott7HV2JI5lcJyCB2by3vY/IBeNQ0HrJopGwzqcqwDSFOoKyxail2n169xK1uD2YzZpUWFLJJqOfrm/POWSD2HBlvimMPHAFNDd/CbVdbdby9SGIgQZlCkQ7DgWHhb2W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6/ycXzAWyfJDv+5OrUfLf+ztC/x8gGdyK5BSgCOMo1k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1zutUkACL2vxBn/FqUVFLkk2tbHfKD9+SIKUdx5QFD2anDn+C/98Vq/ZH/2R3mNk2v1W6/pg2T7GVJfBsD2zSTpNU61WDflE2odjFQ8RbbZGNqYhVYMfTLwJZ4gtftmYSi6HZAZuh9vcCHD55OnJtShPrB9SnllRuXpEB0ELr9bK5phWq3zov49BS70J+bJIaHiTIrnpqiZxq7bH/4sFjCiODEVgFzGMIZTcuwDqBwBc1Xp1qR4cHxI+0kS+PuXUhu2pWJSVcVMxwXhp5XrU5dQ9yrp/ds0dIKcSggdShfHlOmFB9h+/FwICaIDNIPpX9Gbehhc/YGwbFF0IGfUgMztH5UBAv54su/AWBWRPD9u1fypgT3MxMLqonV0qBB/HYPJJeqi0dDD85j9Zy5E/qy9Ttbz37ENK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "60CYjNUkUhl3GI5jqrQH+32/4dO18S3XYLH3TX14IPs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UHoZpa/ofvGami9Wg/pUh4DjsCzbnPMPBlRXxYpyyyWJMCoF7rwsROfiEnCv4YRniHdhDVGr4WbODQUX+7x8oRTm/xLusS4SGn6yX/JDP6K9+2UUb1Ok5AHb7yCkoydmhguqkXx+JiQXdPkGrJ7iQvLYe+8lsDKVaPp7GiOIymniPn/ToypW6V/VrTytgdfZzBcuWdbC1+la3Xu1FerQnMFV7DwNnJI+hveZyztzXbxH5siVnBXPhBzI8tzklSWgIOZ/1EQusZwTv5s5+F2oazSsw4qLRrOp8AQPclGVFRuWofpaeh23pi0rF+/H9UjHv5cELUjXAQVNaQzE4DFsvIXk+ynDHeWFU5UE8uD/AinSKmJ6dsVfFFYq7kn5mWzQCkOPt9xHVfo3MYAKKeTH4FFsV1CsWZCr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "60aboEomshE2wDjwGwQP3+3KLNdlxtNQ0qm/i5qJ2FE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EbPjjlzINYJ0q87Y0bOXO2R3+UJPPbR57EZwQLA2eEj2UT0rX31VUc+DZgyX8yBk7slxIJtJMnBimUvWvYbJoyOtksT4xXdvz5EYvRIuM/hDTnEGr+a1C/CIUy+1B1gdXfnsgQvxJYI64SZbxA9LcOqKoJ6C9nva8TUTktT8n8zhAVms+v/n8l+T6qA7xsCv0r8pTIedTLp6EvN0KX+x2IJ7O4a0XayXuO0LdD9T0MWwxApww/g52MKlvl85k4JodyRIo0HbtOZXQbxAek6HQYWRbKhcobhjU8gGyZbw+IBXmh7s14qHxtlA1uGqODU06anS72aecR8qxAO5F2kGou63DPr+yfQL12ZPbiBUL3o961SUSy6dEBZ+VBAwFZoDHMv11plE0B8emS1wMTb8QCWaQCJws4OP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "60jysZmB+PrMYrTXeRA75Wf40TEL7Soi4UlVYKeIIrM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PhUMNTJP/9rlSHwvu2QeimQNVkrwp85ZV/uXzwD7NgcxxYAlQYNxFtwRxW99uAHeH//NHNWJs0p7nfuQcMMiS+psIejqKwKTj4Lw/M/uEoeHfMQk+Ucr36v4SD0OCuZ8QmkqxX7JodL2kxnNVAaTSzB3HJiyQsQbfxqgcLuJ83csJcl8z3OTJxZEYnvwHKAOEqsEu56DH0zoiiPXBHUbj/uVUw9JfOdVBWlierPgnXWS5eHAGiaucjPIPeQfCGYavamhOT2PAmvjTnc2C9uFM+kLfES/yIcQfk6xVKTZLT4RpUHaNlILjTwB3aSOi75yUmjLlWAWGnmJAwV2m2qp32FXBs8QwoQzgviixK8QyQ19U4e069dPMj7XryGpV0c1V2ROdO+BBRXngxD0zq5J8ajnWBbVHovO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "60l1RvEJh0TvgZmN2kxrkxVVVO+Oh5TMNelEL38rse8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AhuNdkAlo65/jCGiMITcRpuBHtcTnHD+R6HymmnvQleYoYc6H+zV6EM/NCeUoeSz8uwHIV3BYFoTUZNawpagxTq33u38l6WLdUY5Rza2RIfc+L9twljWwAl2U/jG1GGqhZ13Kkja1PijAC1nRUDJRUiAzAAWgRdx1LXf0hcjfhfhXpzF9Gd8hKfdMkzCjJdkMql2EZBkCEhn33RNQYocZkaIMavIuaTte+iYf2mJ4wUPTBJQRBaHOZ1Rs4w3arafud1Vl/YQzPDA8l0jaO92HEz6mKiCtGzGACDxZFiToDmpgWckJ8qBKhVq6/NObtIIw6SWLs0WQmEM92783c1DF1ApkUFgDVCxfCls3z0hCLvdXKbTA5HZHItgUAGN4cEVg9PRFXHoVvLdmpBw3mgwe8R7FNcqo2OL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "62Kp48+o1hjgSvN8OBW63u1XjOY/b2QBbtucdvW5wTY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lz+Q1CwRGfrtjBkQkvvBftvivjAb/bDZbobP0qn9DbBYKocAehVYx5Dp90+ZkYXHDKQo/gHrWw3XPzHpmTplLuYSFubx7pTGKvm7YveS/RHKhQbAgm4vWfmkc26wY01Lpy9AtYwF3ayI0cXW9ZZzLPGpauG8KfflQhsAKvzvgsiRQb7uJ9f4a0K8X7tMvS9yLLXsON7K2zQxz9ddplt4nROS57GM7FxSKqlCIRngFrpBTw4KMB+fJ46sNhAyxXpXrW/2MAqX8cdlLkl0/axNiAB4YVk08d0jjZtHtK178nULKEQpyUMZt4Y7LmW8UMJeQ1E8oFak+NJWI7+2pE4bweQSOP/PqYqpmO0UitB4BYW/pyDvAFsSBbxOC/OPfFhOAZko+lhjPJdyfchx6SRDNOuhYBzp/qwY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "64pDcNPMk2uIcVqFZJHVDoirdkLGuKRmXc3xh7yn/x4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "h28V6sx1bRigN0G4C6Q5FWVXVIUTdI/e/j7CMt24CoV31IiZ1EJM/lbZKNJiezGNDSNE1kQ8DzdHwlwxFjbbLc1+oBkrae8llSvcbbJay8xSPUSFjHLYBXDWVk1g4H8gQkw0nleE2gFEX1I6cLoDAQSUWaKebNWXQLccUmVX69wDDzXgDmUjr3QoQKxrSf9VcGdr2Y45kMOtQrLaOx4tBq5QQo38OGzUMdMjjRl6qvrkSlul64YOUyAWd0J/sg27/pAV936qVrvnRfbaGkF90O2I64XcJlkIQEhuFxmyBY7L60U37woAHzu2Fj/BVqE/Mc8+jOFU0Ako6kio5GvL7qtYJRhUQStk77V1zWs5yHLz6QR+EyKTHqRFf0etT2qN2AkvgHDC7TESuk1V9QvUq/pl1hiJ/kRQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "68CgT+3Z7p8VZGZ/V9fMF4nW44iAepOoBo9nch2oYVI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/2SqyfR3m85HhT2xjZZwrkvCsAGrP8e9SrXcSBMGJmGqlv8WI/U/OFMGGDvSIhdgf/CEmqhCmoqQRMiLrtEyt3Re0QoDgg1lSf9kxgW1aTHl6fX6wBxRjkE2LdxauLFYlYqgUySbdroy2HOMqstX5v4YU5+lCg9WpA1mw8TY9pWGXRJ0DmvBsAhXaEl44y9/iXIzQD8iqtwddOOAqGTNNQQzI5S2ycxzA0qX9ZsTblp3RLvEcDo+j8HdJoAXVfNPO07/sF5oJS10Wi+tfCR9+g/43nlWw+xWTetU2aogsZURyw/Ga1L7zVYYYnIp1LJEbHvVkksVGCtf1Cnjv8d77Sg7MDg7xPz/dvhgNhYdp33lCC0gh+1z9N2R2q4YqhOSZWEJ5EHXb0UxbmgHPm72XdxYNI4dTiOy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "68jRU+h2PjiIMqk0+dlkGUMx1aStw1WxBU0m2sozMYs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Qn4iTfF06MJFCsOqrfkrdYbRXvdZ5/5Jg1j6JM1Qd5DmKq1TjKT3NfMyV3BeYL8NdF4FYc/1Kui1Uu4Ddxe47pVEat2ykdbIgafsmJBX0I440rLzSfl0dlJGEULih24J7fplQAGs6zcTAffZtoB785TPVDSB8AJJJnYqv+MIs7+PCMr/p6PBVIOI0zZw62pJjfT2/G0VzbwK+osf3zVAH7ux75P2hgF4CoDKc66ENDxreNPTZRQusVRE+ITDBYoI8lFCJrdXbdv9z3tXiIsAW6WJOcGPasvKb8U/P0KTNPJIueYAL+SjTlk2E+EHTxj/caGd3q+omywLglqIlE/AnbdQoMYXuntzjw3aTG6ViJf7dDIMUrPE/Ypjw2aWTOAVVBmhSGZDxPAVBXC9CEbOEPIK5X7QLYB1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "69+NZtbOhJa/zD1/MiKo+Q8duZkvZy8RFy1/K3kg+Zw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yWhldJ6lSpIw31hNUPwiDqoc1+1SDWZELu16rfjAjj9vEMtOB88YbRsIU/1EmCvIRKVDJ62cKoFhEPpnV2r6MByrNW7XpHoTY4HiWBtuT+P6O6dDisItF+/td6eqT6CrRfOnZwhp/SDmVaNJguCtBMSfvbuxYw0rFhs1FWrwIQ03aFEG59vnOlwA2TnEbGknsf3S61HNUKnBlVsQ45edvyYNkW3lY/MP3of7wLyrYGSBCNCXJQNB4TAtYV9cT352M90U/RuCCve+ookgsZdJEgNQi4qBQLSeuwkzP/ulL4VKzBFQEthCTpnGDqWC/cfd+z11NHX2O2ckxdBAQwBqvwOv7HWE+BXzeo/tYBXbuH6J830EwHfRGlWbKZkgX7ktWTerJKLdGgQWBBpXSJpVSpqRcJWz2Y+h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "69dI0Sgev7HKW/YJedWU3xSS8xHyyxMG6/XyjmPkGJA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Rb8OvhWfpIlVVB7V6adzPSiOp2WxHvHEM9RJgin7+ESVowfPhfIhySLQRo4qOCA5pczFGx1ZSLUFKwHM9TqmfdDpbEIQg45HbawMYJPjKP90RXAIWXlRdpnnQXjOLmLqGXfhDSn02l5Vu4c2wB1NQPaWiKXDBgDkpiPQlIr9wZdeRYx2Q/OCCEF4+GHaYiBcWT1aldt0Wxu+3gkqYoZGCYgu+KlctxfF6EJdixCEQ1Fif9NxomAN+TpP4f8Isn44qQm8iQUydvQguZe8PPi/k1LbNLYZIYBKVE+7CoTcyC+K9A5Ojzr7c2sGribrVfVwXUN2SxgUUuA4pBm/89k4r7jNlnbTB5BnP3zjy+bJOuBn+M7YbK8tUdSwSvkRYv03Ai7tNHdspR6LOKtJsRSAuqkU/pb+0WZY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6AjbXYw6JCaR+IcUfubaMiiQtlkSfGVqLR4wIH4ZPF8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ODBr/XQ9p+A+i5yQCtFZ6aqpCd4aORrMO2JlvtFFHL2h7KlzzbVPB8fujL6rBtn+tYmShp311tZ4H4DGcqiNeY+Z+VPlTOLJSgIrrv6hsgdhHw/MF8WlK5g8jDdP3XXSXc2L/QtdZX2CXSnXsLhSuVr2YHt6ixW4pc2OSxxxyyfHzufXuGJG73x7YzEzpswGCA80QSkMWcWK4aFwJEQh9NFk6VzSnrTtGNbD4c6aTLkg3bz2Vp4r5Z86W4RoRxe30IWLRVwGP/wOMTx8iEB4WqqXIcbEAQWT6zx2hH5eODNI8vtBO5+9rLOjyCd7iNPvnlCroeBw2L9gwdqQR/SWYpjgwgHrY3swDGnnRtKXzIblztRp63Mod4lka9RATWCpJwMXqFret/IkTVvWW0mRNZ9LAF/5JC3S", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6CZo7Ujbk8Rgx9hIgzhvP+s2ZWNqGY/lhUBljt6/3g8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4nDuT60nPuZvfCYSyyafz3z0cm3MeXatdeQuISQC/1D2p9xkFjOSgFggLBDaKQadf1RDGa04H7K8JUt3YJn9OkOHMsVYbkpDqrk+ELSRaqeZ8PZWsHoIyezG5/fUJOWlsAqvX7mLmrDb0c+LM0Mj/DAkUhmTzS9qh8UZaJXzYuAgVgsyXVoKDl4Yb7fVhKUqMRDGpJnvp05aQbzTPkua2ra8krt0BagG0Dp3YPYro0pPKORRJVk3vXi0Yjj+Nv4DjO/GT7XE5Ld5Sz2BBs8xaWT3gVvE63a9cYA6jcT62KJ8xVfqCgcNOFhJtANMCMKNXl36dVYS98W1CZNDtBbnwoVmdE5lTPE2lV6H+9LoL8TljAxK5fh4HPbTiaZP9m8t0sWRmO5GhQ1wfl/R4kEEuWk6PAWQPygE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6DI2qkNUA3O+K34KRQMCZdU/JggXcZm0c0Yf8nmQ23Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ho/VC+8ZYpv6ehhnTgVYTlwJM6fkPtl51cEZV/+6WFU+/b4PiPsOadC01ZmnaIO7EbHhX++jH4chmbgpqA7vGtLIHTAcqo0uH1GaaA4pevlHt3dMhUoDFMzcJ58lBwBsz1NonTD5Xbz3wSInw1mAHcT2qQYYBvwqiP3Qn7lhI/WYYjt7Yfs4KJFGpcIVF7nKOzrK9K8ZCZrR8XlVJDat9j14eNcVfpKck59+vYf7P1RDj8pX3GuJLMm8Ai/uziPRX7Il7FTE0XsxTsU0eMHhE1GuTUQqMmfSHvkfh0Q/F4sN5wMdmdaLxemOPtFfKOrCjSya8d0oSymmCwkKFJZ7i1w95+yZw2Gvct2c7UrcXx/L/ETcZZSA/9TUHSP71RXbasZjpqV8fYw7pb/6JahDZWMLFHj5wevb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6DYk6HKVucLASQCWOxU88s8KM6nyjMbq37WZYWy7Zno", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Lp4MD/x62+t6KHZApLwpIg9OrnxLyMUqRqi/qMT/vqgwOmZahXmBMwqhnGkKbJrA3dwTqxBls+YCnSf+Rpt20I9Avz9/h0nmAtOGJN4KoAroWVcGBkGicGSajOfmhBIODBiktM8WjPepPlj0uPI2EfoEGmJSU2MNmWU30BaQc5qd2G/BVX6IUQIcB02Mwc7tvj+SKAPoQunUO5X2OZ84GNhKPDHBjrmAbE1jSuf1B5/+qkYTTwnSADop0CtHCRdCB1OOlTPamewu0xBdy12YkMNkxTXs7u7NdKyoOPHBkpX+57jraHsOW4WlxE4Vo27gmj55ITRSXGhie8GMNkyvGyPT/x5TRcQwx83+Q6LyznmBcOWikxotzYsMB0UIwUotNp6vekGiAaTHf6V0o7kW6B4l53loQrbB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6EkJTbkFlcCq+SXGanVDQX7jJ/RvpwWb2JvmyOSKy8A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "g40DC/jwVDGnlQrJ0qsWsl1NMo+dacYcSKSjLBWh50kKXMWt3iolnxMypfRXThkJj+Jlh2bavp8sqbUKs1mMwTcHekwWI21pul6NI10YBLtIhyiyq8QfD3BvyYIhM7LnoQL8e0l5+STwVK5XZbJQFcPmJ5SmPr8bGT/e3h2pZAKHMrm0RkhuiYqYXjv8/TxwWgS90xV97IqBTT5xtLRcU13EyhBfGIht+XlJmODPnFXFRcBQRCle0+auyAIjbi7yAe3Kvdk1TTGyrwIAjbpP8o1T6fapaaD5a9K7ldB8LzyF/s4yGszRtHIx8QMYQWtJBDvc8pwjuWX1XEsn8ha2qUMgkW6grjd6HmeY7FMnO/UUVNCoYmg4GIItPd5/3RAI0Scv2qBicvFFROpkh1Q/lo+yE2GeO+gn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6GqvWutXIxcmpfkcZFHRfMOy1oTjkIp8I1caa0kn82Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "O4SapRgfrsf+7TUJ2LlliCI/WESHkCwXGU1C0Je88mstpIWv95naLI1t3ydsDCD3ExeD6XCctWzxPQOQ/olBIJzpBI3+coHeHG+JDYTZDM+2wPiSl2S12Djz21hkzjoTBmKkPqTpB2VlDr1orRKirmImo9cd5GBPAgvyUX7uyNBywII8FmqUUfkgix3bZbVlF5cyB0zJ0oxXL/qGqRqVoQl+v/ECSklp4UdXbLXQV3lbqauSIKFQOks7cPKCW2rnqKbSY48BLJSU7KcxBaqJ3nXhucALt7r43atnZi2qaHRcdNm+lOqtLBLaqhUbVJZAK+m9izY7Rwazyg28RVW1EGU7FdyfJEhZPmzaUrr6U3hO/5VtiAmnh5eZJ7FTXP3dFYYRRZbC8vYmRpufs5Q/KrPSuuHh0PXt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6KbDkFh/iVH3c8ytrAAWgppJGzRVyFnY1djXMmVtpZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IjpWSWFS5tCQlu0YEIoh9hM655yPvShfBoWkn15WQ9e419Ap6XImQuUQ+GPtqR7QcdXFoWBmRAyM3ViBqwkKax1P00D2bhoFqdF8Y1wukYraRo2ruhB88yKYlxrXXYHrdb7pPAdmlV8HdkGIPVnV3X2gOgy8QAtRTMwZKjYAnSbhrnebkg4fEYQpfoaV7EZqvDBGbf1B0BvrBr55lhJemOQVBFzLskw0PthMQhQJayxtT45TcIgxbsSOmMEPr2aXKFUsWbUT+uViKu9jqsMXiavQmh/rdtMrtaN+/CV9NDMrS/yMe7c/xXEKlyY5//A0ieL8wsc/G1dnrmyC7o/0vQ/a/0udOp3CjRnxCU6NxdCAIMK0VlB3dShyD6aAleh1VUU2wlbzcrCjYAVxQteUV2Skg0tJn08N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6LNcnDk6Sc7+HQ48NBCzk/1qaG4OspfOMrxXh2B82cw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "h7+QOmdkvn4BVX8Tp1gcRWsIfCjETzytOtznuHt/19qwkaOkgJW5w6GDoS7rL2/UcupjexKjkhdHcSbF2ke0Oc2eK6KveNC9arzGNrvu9WmiaidKNCNbBv0SYnybFs3PeRkZGwlDu+51eK9bB/FQ39p+F9mqKh6wh3+L1MBSIv4UAy/OVSvU5ltWdQBMcG4tmCfyxVxI8MmFvtaPgrOy1zS5S1OULCsXEwwJqJiem7HPNBEvl4+UrK3zhJxLxQK2GprGRk2EXnLHXbkxuKd/xhum2AhePqoO4juo4h/4YbdVQVUT5/5HHAuSA3NZqcr26SpNFzZnjgms++HLIAk/0slfR5eG89xVRqYXxt+C1E5/uWO6N+m5qGf3Tu1WYSlKXnPHwJA9STbdFWE59oqF7/imSqMMLwMQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6MRNx1wgRjQeKqQhpZ+Fk+u/aMMeaqkbis3wKLu06IQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rElKNw/m/r4ORzdDxc+ptckfg/sgWo/QUB1aCl/Bp6bHhiSRGVjqY5Uve7uB3aSAMYd6xzlggLAyh4bDn4F2C2cakri///1gvdNRWVejZDN+298ytqY8s4egd4FxfWo3P0oEMHHs0waDFzV49H3y8r0kx02yaMjKAJcWEhLAEsoJSZHQtVb0EMncpChNXMxlWrLI9P4+BKWuNBmL3fRUJl7UtQ1D0ODy1XPjcUDmt6UNfJeAlVpgr02jLFNdnLCDLfk0W/nmHlW99G79+daOV/PIMPrBb6RkXAt0UBH3rRzT5NGOrmRpOkSENoqB5sB6nd8UrN5vwieYg3bULdm2O/LCGyugXhk7jhvT8GZTJTHYWjaiPgHixG2VjKPbrzrKhoYdPz+HkaVtdlc6k4eLLCFiqBuR4WdU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6O/6ZdYmUsEY4ZVa4Z5btqCiAdjuRv+raoBLAa14NGE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wefhfXA/3JlGrZSvkylEmWreLb4foxb494DIUYyAG9a/MLmnoTL4nkEbWzEV35A1dMdM72B7rTg8+DjCnnPgtk4IH05/4vBaCw2C+1e++mtCzX+pDtEz3N0VoySHouiAff1XbRCPr4v2ySOiX/4Umx5IiruAq4KNXpSyxLQDLWmxHqokVY1kbbZaIhbQ53WEzIcGxUs++17V4fvv6Gfvwok9CjsekVXiiRNThYfsLglXHcT8I/AyxgnsuA0ZUOCV3kuxdt6Yks3Sacs/cVYgbsoywn0Wu71T2ntZtqcXCijZx9fMijbHl/9esLkxHPOndKQGObWAT+xdOwb9hv9CjD4+MmSy3SEwmiJsjnlVnGAVhQHKlsp2cDq9Xcm3iIhuBOPRk9l6KwFzzWIMTtB8EuhZcy72UROP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6ODKcwoh3wFhdOChCNDrdFSe1iqCIfgDkpfsR94pSCY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "26KAN+9l1CrE2AiIzT9pIBZLCEG2xPO4l3HGX84FZ+L6tzGaSllnVktEi09eh8K4qdrzbdi7Euuws/0otRK444Wl0qYNJwG6GGSyNmQ5ioHx4/uk3THOWQklE0apacl0bodzPQRZnnEzpdsa1AJsqfxYELy8G9S2snekp1/5+36w7zjt3i1EEoN9G76lgJ45wv4Un4PYyyYoEL5AX50nv5i0QDlFIRCV7KIqjL5RULt3NUiu56PoUKKooZfzOmLFJUqyN7Z4FyPQSNcdq6iAV70Gb1mtTMdUaw64Emk1E6aBzkMutDnE/IxwlNMNiCUgNVVhfQANNOKEaO5+m6e1XnJojZwpd2XbxZxgNW7bvck3A7ZJHKgJvETKyigbQ0BmGCl2BrwuygMiB0OMYfAbDka6EL7b9EgF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6OPgYKywdbCoU1yoTL5x9daBoexZijjSEYgsLWsNNs0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XCGq0dF/UADi5rTlSIEptLQCWc+0gRc1g9ZVCaV6WjCTyucXMoufrXsNhOe4T3lKw36yOBtI0uPHpNCoGLKM+1OnI1hF5xsILqIU+2OKVS6Ozad8wKd7ZzeA/ScmyxMlIWyp+bnyv50LjzoK2aLbhdpHzs7sLjz+0JljqIeTYeR3quPz1USu9PkpssuHhk2YC+r6YiDEPWa2MD4d2s4zm07w+QyhtH1fyvhVbjnN96AwDTjXytkaxya7eLNVklKpkpqHzQ9lcsfYGTP2KtbI3JsN8xEypif412H4qk01qZzYcSO5jEx4TTSliDjoEGyBRivzT1I0Mkfams5uOausEmgI1P5N1ambjnkDF6soBYth6VCLSqqWj/YJzc57VcwCCSfZckPgbemdDjjH/FrNF6rrNoxViRRK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6OVgdrOlabxJlfG/QrAOmVHUceVlWPr+u6ecBVBQ6s8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ndi7YNXBNRsb92Crp9kphjR2RxfUOf8T1sEG1IFvDVE8jeRvZOC1d5TrVyp0IB0tykA9kIdLgyHoCVUpcYTquPYWNHWIjN5rkXbglcGwj/6N/T6fz6T1kMIoHqlcb9KNUOSDK/8Yi9UPW66HXje7r1Qt+9NOhHdvj485OkWpDkIe/n+JwjCNkMXtPhuZNYjBQ3T9HJ3VvAKbyB+41pqUeULCrgB1XMzsDMKRGt100Gz7Qan2pkyN7LktpMS6Bk6z4eF9KqOZ4mdXkOIc4XbEg97oMcQiROCgzUe3905rSMa9I7623U7QmwryCY/kBkKmzjND/dJwnOL1qI3MCCQ5dvq3ujtu34avkFxrNZsgOwz4NrVJkLTIasCOmhqJJmqN94Kl7TH9qx3hUzDmtM3zn3kYz2uapq9J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6PNTz2YtbsQG8HuP3giRnYwTzM9x9WXRB7oD3dVmh18", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7TEP1eA5RilgJ2uWOgrotTdrrgeEkPPgNUGn58ceeqiQQMGEoLubYk7ZWXlgKsq9w8O2ffxUH81Kl8j/9s5EUugYLOrcxPHz5nnyTnfNJrVSPqGgf1X+MU9a+0inlB7yV+lCbXU40ZYynf1Akkuxg4feT0t0wa5iTjNnTiz71HGVsz/5Rvr4V/MYJbM9MZs/6ZtQV/WHuUziuxvkRAioaObhVd5oneJiHEXhRVXFS1eLSMZG9x1WyNPAiL4u2KNmnT57QUtdswshbZLVUjafwGbTLhGV5PPpaD8ruws++itULV4Kpji48+bF1ZNYYCO0p0PZQVwRYDO1V5lg0CfsqyXo3P9RySu2OT2rBWNIrADIJhidZmyOPNRr0cKUjcf78y63gl6iF/ZzVByAf63bgfA5wwr0N0C7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6QNeTULiwP6zZOlJ3Il0dZINd5RHA8KbZmLZ9qve6ao", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gnz7+680ResaNxt4wm7MRFt+aiWFVz+po5vZwymCSL1hoSod+tIro8lj8s+9bnzXD71xuKCv6ObT3bGI6ikvVZhHyiUbuNwDwF9pKox/b+jjS1WxgnPJjWZ9zOte1A2ez+z6TOg2wwqCIYF+qZPKBISfl3yjV040GFKkOueP6P9vljDHORS2NG2/rAhWRNvQjobLNg8OBZzKcPIXlz6f0y2OilAk2q54h0QrdBDf03E7bMKbO40BM4pxKglN9NAR1Rc05LWHzO6yqYoazxthehdygLm0Y0OF6otnBZdcNUW+0rPSD47lb0lYOqSJVOPKH1xZXh8dvzOR5ZGv5yQX6Dhlz/OC96lbgiV8ApoPld/bKCuwYmQ6xs7+UblEYpi+Y13B+MoWkE/nECEa+jVMcDmTAR1lzN6m", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6RPChUalES5wFsvFZO8Rv3Ejiy5VgyqOQ9KNAGSmc2Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0uvtxlqeiUhB4IYgVLKpp6MTbQAbqG7DGwYGWMeQHTF96IGFnXOSMsnDzcohZNGc8T6iEpGPlImCEMVL6PHhKfS9HAUwkaCXIySIU9VtU/7LqvA+aYaPkyrO9TzBFw39DVFaAi7w3M9Wf0J5awq/N38Sd3a0U9bKhOYfu97eVF8ZPGRbPIlo2q/RG0hrr/Varj1LCURqGhAKYFioyuut6MQ85elHgNTXis6A5sqnX00gV1XjkfAtIXFl3pHvqN05RgMg8UF1Hpz4XI/jHh0fSlxdvtFX6WGThAomwgYYENapYS6TmHaCal+eXaetCs3s2IIxyONIA/ypCCOtXCg58JOXRkllR5sbU6ate9huCASN1RlEFFcTqQl344Z/0uABE+EAXa2mfZJh1J5Ufr/27v1O/MatsJ2R", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6SZ+iMW6Onn32Guk2jEmf0j3uiq6DJseTSYV6oWwT7o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DdAoAgOy4z01NQkoNCyjy5L6bIxIp26We1kVDA4ouc8A0V7eQchdP78wRWbqT3m802NAeXUgbtFf/5TW7BwEbbvcKBgI65D+u9UGOuB5GzIrH79Z2RaP+DEb2XEP8+NRV3nRpb+DModJ6TZkLSmENbWR/sukA36GBCfXyfRbynPThg5ATQL6JrbJaDQ7md64Du316sWAfqncBNUQpwwLFugc2o5SqG1tllkvP6Bhqxv++QtU3AHvmO8A3ln1ta3QOqYuLjkGJJ0YFUbxEm7SnihJ8Nfqip+jjV1cSFYtLyFdAk7AmdHrYbV7ra+Tm1yhIQ084SmnQ3N7MXAF5Ob7LskpL0DnKJCMiSku4XlAjqzCt9iKL/zS/WvItJx1xrIMu7UI+ufub9BFLwA7SThsbrQmH1tSKYOd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6TODv6V3YbMxf8yKvbBTgvZV+p4YtfUOm2lpsn8w7gM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gKvP8+t9HYC+myhRAgPup+VYPCL1Qv3I5TQeFtDIwFpXVV4Ug7kJbsOdZEjMNaAO/XKMJi2rIo/IYUy/+Qk40z1QY11dZ0WXkLYAmInxcObymvesapmnEuYS+JHLKAEeLjaaXt/M5Wse8yEnfoEM92fZGWx53Cihs8BpGipsvYqw4yXuq3PFtO5Mb4J6uOG3rzdV3UAKi0XuIRi/0WDKn697Upa8j3z7qcGtqNVeNFWxosFxKsVyO9cATXvm8Yr3MER/JDSG+Zjv9RA9zqtikLOqucx03JgBEWlqcHVe6JrgIP3BY77/b1xZurVBLy1s53LucLfoCzmXW9SbBs6s2eeK9f/HEsZlhTO41kRUNMrB3+wLG9eZvt8YuIqdQCOfNXhRKOI6OSAcilF8ZZJ/T5R65ZbA8hco", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6UCtZ+tF/fOV702FHp9FY0liGqs3QQ/IEqGWyUxPpWk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aybwC26Vg/6Ar16pZrJeqRxtGtbwbik6DuWTAYk//4eu/G5YUO6Xq+5eaK9SKPuJpbUqL5PQ1JaQm3wSzIOKXfMu8mTP/hyq/D5R+eEHxmBmDtsCw8ZioH6TyhdqVn7vq3r/wDIj/uBw0LOm504iJOp0ykJ36ufwR213xCxMwfNI8Xz5OB9Z5DB/L2G9/qxC4gKmyzyOvS2sC7Ex8uvsSYq46P/oenIw+tB6Fc8DgFIaFLv7BCLpJJaja2x3IAEBma0Om2Jtr/JWllH49kyUHuLZE3K2NMv8DZGw4hgavAZ6rKO7zfZGp7m4HAP2oPwpEDqd0Wx+miVScKn8fLO7N0A8w/X7gVNbovtuvBKFhH9zn7+myoy+rJMqyR9qzsng4BMS2v8tSwUdvWqe+y/bcc7M1I4Wmy/B", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6VHwVixsWaY/MXErbK5pSvbHJn7awXuQvF0zypKM2U8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PDFtyXWM2bkIjETa750XulSjHIhVqNDsRiDdJZyD6z+cKbZQcREbk4ldkvCNfM6UYFtBdfS6ecZo2gVb4lM8L/wcrW9ngZfLsl9QusMkRfq8s9303ijz7vuihNfx4XCFp0l75uOiTV61IMuOGtISZ2Ugt/8PpZV1gIiVK4bieSqdQICK4pAXs14uze1GJa+U+SZUGw11pOdKZmnD2csYEoOQhYTmWFqU20VHj/JQ1kfYIjlXPZXG9qxlYMLJbJ8AX0ZBJF0up/uX4gQfbvg/1sde41YYhw1Qi3W99WnWzcFsdIvYDRSrRGDytHP0CUfmejlJrhA6tKbgTGv2/yBTZkbuDl3U6RiIkrTqyUoM9oaRHUZIUCRRO0TFjb84dY4uFT4g7wpQVLa5yIvh91frWhH1Dt9rrHwC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6WgriZat1s+pZISbXrhH66tW/DtZE1YkdF/QLIfb/Sc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iD0rh/sRxemAXqIanF2KGYonhRLHUSa3UaUThbJpqfvkpYeIIjtsXF6br51hzEVxoeO6m007t9p0L4yl1qLAXId6f84parYP6KjrVB8hUjxfNciQAHVfhNNcMNRKQMx/xCkix6R+fonbXsbt5lEdy2Gl8riz/x2aRE1/3MOh2EyJxB1fNwDe+2hLKHz/07HfLYIGe4S+nX67qjlzqRrkkD8h1b2AQtEGMtwnZU1tJSeEyfUq9WL4hIdl7e2dHqatabfvIt4iRwmxy0QGMnXFTUK3nGCwFD2JQ3bjz0491fCniX/w2jQ88+E8/v5C0aBxSUEqf5zUAxziNy6XEaw1fE1Z6TgYQWKZblTcHqQXrBfGFafhm/zx28PnlII8Z7vsyKkVcj/i2K1Btosw8NWfj+D1nl2o6uQu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6WtdtPCRCoVrwYcuI1au8+vmDJathJ+gz3kgxr0hLaY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EXbgKpRWW2PBdNZKsXNpr3Hk/uX08CTJep4tPC/7aSoKaR1tu9cZQwO6ynq7xXpHTRDuFHnigsjyW0t14mn7HiSQ7YX0hDfqAFYsdrzuXm/62eorLR0x9Qxz3lsXfG8cAZmUpkfib8Co1IvaMyZFimqij+Dff0QO3R7Khn0OFoAOefC8DnNEe3EY81EE8Hob8CvG438W9D1KOP6n4A37j2wysG3Rv2oaA3JSqjlBCa+taojoePP6YjIP1f3Ip+BiTyE36DX4UJuPGeTvcTMCt/pi/dpw/6W6PwAb+K/aJPpDa1oF9HlAle9fFxvyMrdoHYT4yC1sIr/LwF9zdYzUGRQVQA3F1RMBltIJciq+45pmGDTP6ysdJdZWPOTnqIsrPxhubSofXNmYNRQ2fOGFR97ceKLquwp4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6Wuf+8W/3XOBJsnNETWaeg0yNPsWysdfE1vLvPKh85Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KOuVz+b03vjGza7VQqdox2AtoBpxDNWz8FnW6EnucCdblq7smiox5dV3gZrDLLTGBJF9h249kOo9CefboGMvl1lAiI3w3WqR4KfOnqwDbB4lOaWJQcMqmWYfCgsx7D0gNOUJi6vM3S/ZJsfxcaU7HMziM6drbaFlHh5pzSNbx0MfwbcE3K4uI/GhJAl99j2g/hgw1TeiauoP+Io/RSUQIwtkYrLeo/PFRgeaHERL4+ZQAgpBI/3zjPilEpgcQt2B9I7MUaYPB+bZAwv3bbmo7m7j5Wy04foXRJuhv7+0JWKCaKLZZDID/JIH5lyy93Yi2Gq9rtvTnYaVfpkH4OQHAJPr/3wNI5i4bTheju9b/bktHb4pPupH+sldSLfMtKoVMOm0Rx3bKxRzXSect83F9RF6UuvWgd5o", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6XWsRMSEBpc7NJx4dqCRMKZ4rjCngcgcsrQA5a+8BWQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dAwkwa3KotLpbGumPAPZPyxfCNP6R9fKhE0ib80xIcpwYHMVdbC/UPwA5Sjb5ijk2XADutpzyI1C0ZNM7zlvcy72ZdD1NagY3o7Ifb2FwJb7CnR1iPEexS1evtIoGN2ZC2FNacG9P3VVGwiuRlrCMPCMEoXsdtASVltcWc+mwxcCHTFCnBl/HnMYOvzt4Ak3k1LUSykGgP/8F0Ac1i7fd7uo9yQaWGTgvroCcIoJQMJPK/tnMS+nHZYGwFU2DVSK2oRzVYLyLL8IHw5kMt+/cK+P1DU6DyE0LI848dTvCrlneMkyOoGMh6L/WawtWl4ieM2RPUSobg/IVBJvZ/iwzeq5CVfUgmVa783iYVDNoLsuoQLTAF1KHCEgDRkmuGX0qs0HVAo60J5L2B3jPzSkNZd2StqmV1Js", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6XlBa6F03P1rjmCz50bBlzpTqW1qZ0X2MtzdvGL5xrE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T5e04QSrFF7Y8AxhKQGF52wil9B4Scrgvwe5gQrqlPlIetSk+5bFfHnz0hlT1oKuyUz7wDujNkSRMdbWotMiF7yPZFDX/svnRm1kp6hJumW93jj2BG0QyJpYtG8CErs6OFfxUUp0WqntwjB4/WOxQ3XLwdnBQn9nuKkOAl2pvvfllwCNkx11wkPwvmb4YU3Ko7hkxPH8tt5pg2tKa9tfGUynOYtYzMks8ZJLdBtlHeLuRMP5b1ZRYnpXe6Ofo8/h9AHWmpkVh/TI+7EVApxPzuRjrY1Y4cnE24G8k4q8BeyzxfFwLdkJtf/D3fUonyccjE8hk2anQER9VwT7uw34mcCEBno7r+BKzTYREJhhQj68g9WHokM9nvx5V9L4cPITqlWIHTeX3vKuh335VkoWp3OxWXhqk/1u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6ZLuCnRxZG18GhypYodW9xqhhfxB66//GVAX0ISZoF8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LDGVAM020lDo8IACm8SFWKHpswLDLnEmTpI1rmtV2sVObsm9mHoVqEA/m6Jon6K/r2qtUhNibkfx7lz3VXlL9Vm97h90Q86IDbj0/KUDE7255o0q6Mj4JB1ic1rp+y/LBrdCtNvDoHEsc+DN1T1lQETycUyLORITogthxd+bQomhi/uBQ9+GJP/MedOKkzz2x4BCvwlmZ08XO5Y7PLWGOKBnXPcVZZwHh/nDzzJHtvVxPa6QY5BwuTyFwl1XJcwWXiYtz8Sye8ENMlhNeuLW6joj+4BljvRlYKeqsxKrjxIT8uaUSoL45j9m5MCWTJWc4WD3vhcw56MuFP8r4V+DfodAlj+CG9bXEPKGA/Aw3bJsqnIEjT51DuZEBDuNWcj8kfCuEIHcRVnN73iw8nnB5Uft2TwZcV3j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6ZPQ3tVGfSlXmQS0GbjFsNSy6XUC2Hb+81B6pKZfIaE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wCdYif+00w7ikFsZGd3vuHFddR7EWwZbyZWS1SxZItakErIdWY7iIqaUOHDh0zkC3racGd++7dFCMVQ5cbTjpahCeBaw3+SIOlYs5KvzVi/NhndvMXfq2yuj8UcxOeI6rtfvoFEnX6yqiSRhJ3Zeu5s6alS7OAfXYY94EB09rXMcOl4NPlknJWvPwpBuwmzZjCDKRshtSGLKJqRUi+plUNC0QjVWwqXmMEumjZT3DirLjdgv882SWyhCHgsdGVSXOo55xYCTQ77Ll8G4LBMGLKnjW+JOU66aKQF65nCMWMs4dLa8lKe9MXnuhLBi+uVxIe3GFpw3CsxoQ6bLqdQUgmZCLYVU04Yr48kAFsJ3BvnEZu2AKMgZKdrPC7TheaYjKlU8rFepdRQcnmcVxUAiSzGVnx7uC505", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6bAq7VAeEmlBLHGGgLB140Z2plKjG2MUQ82bAy0PTNM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ca5oR889ITdrv+DDpO/3PO1ETHPX+5GBpx75K2iC+7C2bagiiGb2wvWCpJrXqIgEa+IKzqPdfNmXjuxzuzaUL3XpA0ltDaTelXM5AopMraiJpBnMa3UNcEmQWi6k2jznukqjMwEBzoTvhj4rnHrRrpVWhH3w/E2XT5qbBpfQ5ZuOWgZqM4KjyNlKWM3s4cFzUXhVsLJP/PlPer5O1Mpu3B/jPsvw5TPGrTfOgVFeo2zyHwt64wrluAjJcqGyfXpTwVBpJxPhFDa2/nM3jwd96affO9VaLpVOxdQJR/brPIvZffy65ue3fVZEUo+iYC8y1tM4SGHtFpG6Ht/iuNVOijBqNP5Cs7iV5PQIPkxSdyzo58MXOScuE6EvbGXJwtLkyGwiPkwedENpOTBcuunyAf/zZIey081v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6c1HOqw9FLju6eSyK+c5LOcDmgUdMrFssQhs1PKwdks", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zkL7uRTP8KEWak/UC+vhQi6xBuZUmmzg3/O8IoisloigKml7emCE+XQ5NumRpRL3GQLvU0lWAUxPrHVZmUkPY+pvnjOuUPDRRRqgiVpG6MJoWivHqi+MduuaJFz/jKDDOCu3Cp9dgI3MhLFxtYuexL3RaF8iYDaGzd/hAw/WhxIzw5882VbQ99Ea1+wbrT/qTttR3HFAb+zNGScePQ/EpxEThvm1EOlGfCEp+BRsRQ6I43xu3A2Bzg59HRW/KAw11J9mJayAzV4ieSvRQSWR59vP2AOB3VKysogPWmuele76wPbbe6+d3GnWLuVbaaRlGxkOP8F0v+aZYINAt0t8pUrlrh0+raMvhc4kcH5ctdO4BG6AQxMdgdU/lo/cbCtDTGXiFbpj6YWbVVjh8YrNn4KpakWdagxA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6dXRaVMGUQkZYtScMQWppDhnSkwF4ExWHahEWCsmQkI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S4t4Ufksrp6KXhP/nvMctXftzXxFsCRWCle6p7y3s/K8j8J7ddH/Uhr9I8GRMofg1H5IRGlaM5Bautd8/AYXJBK6hpzFG7Mn1MnEqC2wuq6brNRWzpsjMeV8ZrIlmqDP/Qv4SQdY8oxVGs8w7xaHTe5hrD40MMYhyBfdSCvusujsTFFKMWi5z0yDXyBlOiaQZylxTol/BFDFJBoPI6LrkX0uM+bmmhEhlr6thgJiHesv17qMS02ivN2pXdByEIn/q/6PNmO1BP4CkZMK1l5lbUpIP8gkIpEJVu2QatuA0HbJlDJGznIT7nKJpcxr2eS6PiK7BBDc/0WIYot9kmJIwyxmKflg4n6sgv2rc/v3M2PPsflitU78F0hvE+16NJWJToWJrhRidp3fJcKsfbyYTsqum23Qapvx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6eDooI3aiv/2kTJIJ6Inc77j4Ez+Ig4ggvhUAbwk/Ts", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c4erUR1Yk/v01A9cXAbLcs97mm/BPCq+idN0yAHsZ6aErn8gahKn+74AeVAnchm0BzLV13XFzcw5p+g6K7qPQBmLJ3nKYHbQiZdfGY1ZEgj0J5A8AgmdMvni3uHiW30TskuUklxjKN/W9Urd/rXHPcAT4zV8pPKmgcqLKe+l4K7m4gs1JE4RybIkhforf5nBdAjT06rWtdQiUXde1pvDfCPRlzQABb5583OEPVQ7MP12uZE3wjFDU9U1YyuKYTE/gS3Vvryf05xUfj0hpjtlhnBFve+ROPJ+YstIVRsis7IvApr5vEoe83fua0HeoQrviLwqitnwZ6004Bow8NXQWn2GGVXtXtDcAS8GYSzYYk3Q0koHpshnfcUU9HyV9lbedTPzrJEYha12Wx3N8SWDj6FzAl9rrxnT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6fEEJFM1mrcw/gQA1q6yIh3XHGroTQhEQ+NNgOcb6aA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LxQjR93ZW9aFlIJtBB6l60L1k3fhcVMtcJhO4IBHRYNlW3l7pBQQF36GIZMmd4TJhy9H65r9aYsR+iOZp2PehslY1tpGx55QNDR3vE1nCxEM9SayVU4C9yyYMr+rVS54A2qi4Yb+9QeaCIBTsDGlqBkB8NNWBM5dgEm6Wz5wfTVGyZmiGQDnzHL/iW3HrrdYzaAD9dRuniCnmJRAgR7oNaq3ZjACNLO81lCTVd21F2le2R5O0+xK1UJg1YU9APTvThenpY6R6GWzh0cgpvp7KVYHio/v+zi+m82qRj7FeR0NH7UqGbwmtPQvnNf92rj3k45mepRQmPwmOQZbSnGx/K0G9CRI495PpzEMqLDJnXkeJMII9u39J0ZIRTcu0hDr/oVFwItkCe5M5vWS8l0FaGgTuOhpPucY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6fv6KT2fD0QPEpDM55H8ZC7oRfqdgZjRHZxuY4t2xB4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SoM5qJJno/tgk5vZbC8FaE6K57ZhIXW1TtDQ8g2mtV0UJNMDb+vxVWk0gMuxL8L6eJB9dG49XjdjS97/FLHm7tidhHAECvt+JTY++z+Fq0k0eIqdskjcTntCgJ86X0DuNraLNOf7a4lWIpbOhgHvso2/dze0M7MDqeCTuOLDiy7GnadV+CxjK8rS8klV858qR80JhmvYHAGMCwsNx0aGpnd7nwSqHWdlUa/UsWa1GpjdZXjNSjclBVlyHuHFnqKtsAOWlGxMPQJcoRO/nEk4uysNg1y7MqvbWnHcFXxyfX0O7QyaTN0sxl4pJBNgOks9Hyc28tKtuI3mbfW9H56lE1b6Ld27rSbYHY15cCvRVby3DM28bNqCGYfOtR9RvBdCglXuvfPYfvea4XfFqnnNvPJw/I6z9XeA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6gw1njgARG8iWAkP3krDdOaIHiXa3xGiQ0F11Rj8/9Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JftPOnDP+Nbla8EARBWrgmnqgThNhJtF7kLpGBAHz3SaO8lAauq9ZNIz88r7IFIOVliumT9U7sqwyQsCF8pYC0EST1ERZI1MrNFIUDKjTOhlu42ebLzlCVeYYwHQ5Npbi7K6aunzEomoFn1fMxsfiQFDIhwZDlei6AG+EOVW1f43WFHPpURQwd1+xQmba6ZdWNh93BqqGXce98uBFYS/UTYClfWWe6bzA24dwfQ7NRklsDUVhPmVAUfj84Dx1HS6TrzEZatjz9u/Rg8KNpOCIyAtywHgShMrvqh4vIJJRW3ycbMh9ccBaU4x91VU3KeWZFQdclKkC+JZwxPF3X6QHAOdke1BhLZdQZGcYHMxpYB8NGo5+a4lq6rct6esSRPsd/XAxMjiRLS8d8V/2qvABnEdkX2J2ACb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6hmkREPUUO6D5Wkh6Vt1MQCJIkYIB/8YfrCg5qIONQI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ftR+B4XLAsozoa4MS3RbCN5Mm5HlHbAfahUAdMEeWQqJbOMi4wdrKucCmIrwHUtTx2L0opkS5DOLJEK8k3bNHTjneN6HK74+ssD241uN0rhU+i+61euWLlbd1g2R2dUtOuOd/5J/3lVUVQWSUTKOFCrQFzsaRI4rV8DhZYuZ7G20uRNwDxIOjZtWrnpew7BTjf7vAze/Vf9of7gc39PH7505Y6THOtNrfW1xs6a11MNh7BTWakSYSSLSPh+8NsGCk85P2kbKi1RMQ0JrHVL1wwVEA+8hMgoqAojkaHmc2nlN/TQW3xyLpzIf+KYa55+4DJssXVYN+U1IiLxsOJEo/LmHZFgn2VYru3W5wV6Ul92dyxnOsoOFYCJ0P4kE7GxXFO50MMkOlKII05KguyTodCEq/JBWmM3i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6lQHDLwf82I+2wwD+xVgFDVAduFRdpRhX5nqVtUwlO0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pKcWwcZGsGJVGG1EMWdSynUpjFnTpeXPAAGoDSrGypOqUfuhAzVz4/GBbMwfyxm9agrKnlnV67cZlVOBteQ+hku+jP3BNkF3uoig6R2XUw2Mrs3gwHiEInABbFfnqVrzB37NLqbd2JK9uA3SiqtdV+wSbQrqbJdtb2OS+N9yOROlF895gHjMlNt7XEBkSJa5GHm6wtEYFAimxeqnTkpkIvdwFzg4q2gwbLj49O2wPa5lbYv5qU2DrXJmTHjHCyB71Qa3A5fC/9ajWHExQzS7oihB0KQGqP6pkEUaOKg7fYiKlIbT2mOaEB0mRv+cwIBI6MNluVbhTUfvrtRXeBtAmWC+vatCBb9AH8s+lOwLHz7Oo6jjszRW0FWfddPrF+Y2keCPr3lBHhnZGZ0CJC+uR2l//k2jX3RT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6mcPIEF8XrpFS8wW/PDU0H5bFs0ORI9uPup1uJ/lL/g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2m7GRyXvpXnoxxbz03mSbdBBf1nqiZObbnkldVBt6PX+C4r8yZOYFxTZNNRLZj4ClM9k7TpD6FyYg36aLNOllbmCHR90VU3f3N6uzz63Io3mHUMqm/GnXQKrpkaajfswyxp0q7l5jqnOz8QFaV4mlcTQFfsGAZfY9YRVz76wQTGsicJUfOpeDuacexqTvA0rS8BcPONCPTusswCaPXK0p8MLXFZqWLOok8Mj3Lgrea8gIOV/MG4+IUCpvJTyBxvKxs9aKTjbOA8+x27VtI0jr5JJd+Ksh5oI9iVmCnVlYFBKozXXeATovENmcnkB04+q0okX/n4AcXYbA0RJWTOe7WBNq8HAXCX7bYDIJdEB1NaWhak6QKbk9LSey0jM9ZplPU0DGsqgc72q087Ajdc9TNjrD8GpyuqN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6n37ajDSQyMeU//ojkl9/KKaFXA0SVuL8Sm6O8JwBKQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Go40CjweB5t9JrQv73E8n3Jr95ZH4+f3KaB2MPS0XxLPd6swLX7tK0RDX2m8FROx6qAAYDcQCBqZ7gliXThd2qKoMbXnO8p8iEtK8GwmNtQckqiVQnCqgEwhwB6fkG7HKOPEpDL75HI71XA+hIiBu2OfWDkYGZgicpFPxBz3+lkiDXc+5VM2eOKlwXyGEUO4g7t+OIpeLul0JIMjknrbWjmrIooE+lmYSUu8MbsUsi4DrgyoUANgn7bvlu9cu1jhUz+A2lA8fHxlhSVobJKXvj66/lgrC1ooodswYMgkFzpw7hEtShdZ91IaujWvtvk7bymwUdu69pyy/lBi9wTcCPWjsqmiqvx+RVPTQzPdPFS+R3DMTyGF7ufVT05eYOXfuRu0Re5ItgrsH976ro+boFoIesJbwFa2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6n5WzcasdWsQZ233sTkjn+q0gwHiOtMvJPkImA/rjzg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Yn6ImAPk6aoDxEK2e9IhPVFHByv2o5cbtjfnK375bPRXp2TV6P3ObDdcD6qDdh+6E3i/dib8JsDVr/5ArFI9Ux4o+49yPjkpouF//7EtWyIfLmBvuJRx7IAe06I6B1T4srtJPy5dEOimB2WYloU+az/EydI97iwFCFQGU2jioFdHJrv+BaXwrLj55FEmNQ1nyKEbqVM8O9290Q/IMllGML92F5UKYzfdaWh9S4iNfYZkN1EwG33n5I8sVAulunyxhmyNk+DPSkNGA1HtY5UPQbpQkMidoPfglPe34Ju+139JJeVSurXdLxTTkscOnjTtC2y0mWGJiw/3TffAP9sCoh4zWLfSWh855JU6ZPG13JJ/goDHAlhBru2wNDdW1wiayA/Q2mwQpB0DZVMrWPZExXWwvtycLXAz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6nkTqdWLzrC254ipzh0J51V/ZPDN0SWT46RoHbwzhkM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dFekiH6cYWzi0PSJl2LooA4Ms2VQuQJAlYWWMsBoMSIyPpLriB897ZriSHXkPbkCV/ocdIJdJGgvkoxiOjqiSvgEBruB6bn46UQcaaK20YVj2BFBE1GFs0YZ4kDhGkXiT6rARyQHQAXHXIkNXQo7rGJz0wIrhaDjvKt1tQP+A9/NmirrRHj5PYXhGPrDXs1GuCyH3wbQPFYuLeTEsv43Tzgb5GG0OyPB/FOfsVUosxfeBV+hrfcHExZHJzcv5fZbcAlyVnClScO9FlPQ8H24Mr59mrrrKqSzWHE6xA98nqnaA5/GxGkNJez37L7lO2NyjEeXSZQCNWziKID19f3MEIT20ouGSAUO/wIuzzgpbNF4Wf6zK2Gx1pjIRpg/HDmEp5cNlOXxhjtanCT6E4c902Wlpkt+7hoV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6p9WcxsUwMjYAsYTIlj9lFu1Bva5Q6k1e85ZFHk9fao", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DfQUYppBKO3Smddu7ZZA9PwarJG1s4sSy0OyLCJyU7nlVPa4hJxq9clA0aQN7S1QfE4MoBrEUNil9nw8EFbp+qODbYrZ98fHzI+l4D0jRll4kuublYngOVKUYTFyj6tZxS3lyigE1xpiZu1tKhzQLMiVMnL7mVcgw9kIqf7Vc3Qdc45fTtM/bjLJc79CaTSeRiakVSCeIsOgOycA9b/WsHLT1pNtaJUSS65iWoA6IKguAdkibA9CZDuM87lpfxgoLZ2aBioCNLPbrrc4GaLxiOcQo4/cLxlcGb/Jtl7mo5ogU6kXrrk32wa9/mCYVO2r/aTlL8WFFXShJuywY++sTrCPjtjbAkr/tY6GTvhT3ioF9Qcw1vyX44Z+Iwj/KEP/3qT6fZlrBKZDROVCHvOk4c7R63MxTKBk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6ps8YPVRSqQnq6pp3Liw/Qsmghvy9tqPY5NCm8n8CYQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "At3bfkMm/07QRGSQtGpIJxx0Cud9LlTLTvpocaHw4sNKmjHY3wtRo0XhRvPwGc78nKuJAR9e5U9BOPANK4aZFkZDWmmNamSjIWfSlJnAu+kif84JS9JRGJCVFrxCrfgMFaZ86lRdxexRP9iiNNBnzBwVIHTKAZSnyU2t4x392pFlA1YpaoxIhj7ysWgDEuOosLdCAwj3UGmr7+6WDQ/NN7asFg+mxIFHGza0CaZl7DI9KHXTEU7Ui5uHj9VgesPPV/3lInfTk0SFLhPN5jofJNsQ1KIJxKB07yel1ZpvjjZjbC4QAw0YJcRR0azG/z/FmJPgmM/JQWcG31XQ9HFYi7EyYgumeEeHmBE2pwEmcbSdQrn+f6q6++Yi6Uym5VDA9Y4Rctz3PWSy4ORoxq09EKsIj+RBuC5G", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6qcLnbdwa6LgaA+P3yD2Rv+tJnI0SHWlGUxQKbwkjbY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OLH9WwqisYPzLiL0RSYnb5yK01sadKO0DOKsYM7AnYPls6U44D6ObHYiVhENie9ztAnUiaCbI6z6r72VaIfzOOlFV31RKpIp1zTZXRJLK2Rkfcdc5BiE7Hjvo+6GQbVBjnbW2xryIq1DONTI/YR5XIpDfyfBqmVMaMmzT9j9Zs9e6UJgYaIO8divU8CYCj2br7/Gny/v1HscbbiSQDy7rIQpokhLRGktr3XvJvFxT+d6UrsmM/BCQV8mR93adRooO3pFLqck31rkUz0c6b9kq9WXOUdrNo73/HCYR0hBNVGmKqOnvxfvhaEz/nvQ3xWIOBMt4y4Yt2twGS/X9qvMP7YjZXlF8yz0oMlOKf2+qa1ftXBNLzMYWqW77SwtNpNF31GwnZbU0eUWxNBgKULgylVbSPved9vU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6rI278i861RFSKc4vjpdokm4PgJQBlUMhvh8GM90HEk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2z3gZGIFJsDQQ7igaK+/CY0IZGyKTDoksWDwlzn6t9+E3t4flX+Ua0nIN35uOij/4Sm0IbYcn/8M1Fqz0EymZiKcQii+T6KSQSo9NBs31qYLYPmV2nuqqb3ZzCUhTcUq9R6zExLqgnjc3JasF+HCXGwWz6M++c7yc7XkJxbmiGnLU+DL525cTjxMVp/jTyzV3/yE/TRWr4R1WgITBMRKr2d1S+DyvpiSlbcm139LQnfmGGDzVSBwG/kHOZIFkfo3FyW4i5j+o1yFBqJ9tAA9h8IOuTHyGnDqhhkrhrj5XCpuhf0oxbXhq5gHx4cWR8LbBNbqnydsziEp33wY409rKNlxHs3erADHGT0XvXPB4C5CE9f6HmD4HPXgnbc3bpo53IzW7amrP9lT1BqScfUO/00jTzKOrwdJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6svwj48LJvzu0TASFbLfd6cflF+TqXE9/zXipLVLIyQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vZMxLJyBM65ekzW8+PX3LtxZ+9Sm7/VtDsE7TG3l2xkuBH6pbShLbE72/u4hIA3bT0GoruqMXcaoyMeC644RMem99DD+/hWNN9UkE1530wMoWh7fY9wi6ulreA1cRmuDGyXWqRBUb4kjof9Zapn8fzUnuSp21N2Z64OgVvZ7ItGaCrX1QFR9YFuQG9Ivpu2xUfJR/da8VzoHh4tedBsJxewCcBKb7r9Eh29cRn+lYFKVN8m3nRO9cCsEt+lA0OHCpFTY63Z9PMZ+7kBeGQ4vO3oFMxbndShS2xHjlz/OXAJz4aeSeZlSE118TOKU9dhPz5geobC1QlVchDqNx/bDzRssCGNtIcNqgcZ1va04s2XqnX+8P5l4AqTRVTzJawL8PhTX60FmPHexrydLphR0smfX1clr5m+3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6u4WAaoKA6+vwN6nt10emCatiHitqTh4YCOS+yKmHW4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "U3vLwKlZmusUVEZ10GTVtdsRBHcmB9H08rAPNEl/dcv/wV4b60wpP0LGeD8e3w2sUobzS8kF1FalHnfO7LuU+TOnbYiM/1EpLkXhFKBAUJHDyp5Lf1nz9CxwYuX7seE3pMwydCm+VV6HPZJP6l97DDNNiU6k3/7ecUjnHAywCpMrIurquXZxRivE28mPFjvq8PkefqPlbgfLIjic2RPB7mQCpgypiDVQrfhu94U90Ca6DE3DowoWMpdYhdD0GAdu4v81QnIHnj81RioA9/8H20hCK1s62nTJH2wkw2sdtcdF4txTpgtlyED4yZYHLdu9YzEE4w7T5srzR6jvLTDj8cwIlogIPxjBmigS49b0QOzUURBVGyw+jTXtpeIQklimKM0TE7x7nBATpj3EbW8EFQlNvnZgl1W0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "6zrbweRonhOwKYkDH9SADOvXExkdEEsyfs1P3IlgYaM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qGMIxK9iZLuGsSrEnxkfksc6j8/jNTiJrQ+/WrPx+/8VdF5zQgZiAjqrlUvvqLDX5Sl0XihvtyCWmwYeoudCa/VUBiMFy3QwtTfi1mGJ+adWCMy74N64gm9j/ytNzPStMl/nrlnoIJgXZ3OKk0DH+XPMnW7vQhUnEAOpf02TCloBMgXDLmY67pxqmH28uCVWVjTFpn59WUj5KO3xKmNMdx52F3v1qel0aWFoHZLJrCCSTlCqYG6Mj9i7A/b/E3IgLoZx7BIjVoVTGk/dmnRW6oXkDEuGY1hN2LhvdU4f9tKRmVxiYQ/ci28FElBkF6muhXXx/mbwspMgTByDTLcrmxXgUvErPxM4jCqOoeRwopn7f+boJoBdqv5oS7gy77zGcR+qqW71QnMK/hOP8V5IKBKCkOjQk94B", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7+OsATOc4z67lKbVHox+EdqmoCjU2Hl4J012nK6IelM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nuG8NYXlYmUJhHJM1esrbafKUaK3yaXP6vkDTqJdpxH9W9+4amy+QO8BrWJvYNUm8m96J8I4/O/gvz8+A94PjNNBV/igWGA/R94BgXem8NUBbeU+aYX8NeeAN4cxdyjQ8stwdFNqrqfahlY/eCOFDZfYdAM2DnuJ0IR86jMjI7Tlnk7JHzuTx2Lg7wcqjshy/2ftGNal136aGsayCyO6bmpHB/Dw1Rx/Uo96q+5JlfYp+a3M41uQY7qr8+1uLnc4Bx8OziQVyxtRQVB5GrurnLZyc94xGUtep3xU4ssje2QvWuTY50VoL6/09k9/RLmZ95ePQUmUwhmGNcQ1zAuOksvtLCjr2pMTHa7Y5TAIidCPZjsHeZDPEXP1whlV5PAR4dWzna+cAAie6d3lfBrzqOmZxWcKYWyZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7+eASUlFmln7IKIJbn83aJdP+vvtAcaYwdrZy6m9f38", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w3Lh69nP2go12dzIpbqllwRQ9VTiQQszQ1sZbdfUG1F4QBLWkyXrxEHJMRha32IjJWE0uLiYwVwmxyt2+XJ/mCHs54RpgNMEFl/WccmkHZg2CxDXv1HpDndNccxkYUu49stB6T1/xX8K67bRXGloU5KIScZAKxMfOeKsKcHZyaIubkDDl0MXKqbqAicCKT4Q5l+2WQuzYkKn0j7UKDXD/2AsLWX8PNZayO+19bpGP150R7haTh7V+4ALqvA4Pkk6N+z0MfRwxvQDg6TEsmgLm3fL4lZlbCmu7qQAQJZSF106JwUYplmb6qEq2p5O7el80impr7fan4zOHhipO0hEw75qRJfEbaTufM9OptRjZGTyBY4+LcpIwNkFmGZ8yoC9vHe3O5Bex4pM8B+lGYKFNzyieeDfLkR4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7+slAhzBtvR3y5wThhebk7xQu54Vgawf8NbBg8zylXU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NEW0agx3PP2OWEwMmQuvGYueCfVb7VpZsO6kMkM25Y8VSf3VggJ9ucZ/TMp7OsdK8ELK5TkNSbtlKmLvq2olGuz2TtF6jaunC+le++pEliF7fPr2QLp6CinjtgXJGntQoItQFQo+xHVJb1kExXWhIIR6c6nxNeluWGlqkVtbVs7j0QZMYWOpU3bDIzKcSJQfjlk6YLLv8TqMr4lEp9y73APKBYJnkRPYS3VAEn4rSoRECzYSaBwxLbKP71Lw6ZQkpY4ALBvY+5iAe3vyDkowfr8RAEnc+aXN926BNfUMS9rwmUQ+T86ovcMDALXtH9nwGUvTvl5u5Hi7WWWTQYC6wH1E/GdxWDe34SMtR6vEu/vTRovuN50r35xn3G1MNsU+KgJoiJhmoNWpYGxUpLR1/MzOVpTv43r4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7/UVY4VE38MyWbgox/v8SY0n4jFSiRaIpBQjmoCIfbg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PIaCHB6KgArxA6aMofzvMgS8nS7cJz8No/74r072t3816UL6KsvPgLUXhnwgOs4UI+R/6A6xDeGzu9/rVaHl9dYKujpIrenZ9secaMncu9WB0iN2UVTm4qh11XichWIyhUR/7iBNEtCTtWgyX+hO9CCQen5X4UvnSVVFpDANCdzbwUyDlfCxE20WhrbOJHSkPvc5G7b/nm8bdvTiqRpsbOR5n1i0VNsZhWeJXB2VQZUB/HUgs008ndWEp4FX0EKzExQj9qkhST6zjGPxF5qm0zh0XFRXPvCJqk3shJZwxW/6hJ5wRzll6IzbZ0Y0erAVVY2aLd8gjl796LLqF3+n2B7R2OvGQOerl9HxqLj1IQamxKsG7nzf6uw8G3w2tOYQjUynvUj4Noy4pnt31l26bgNg8A9whMIv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "701TMwWw8cFHXs1ZNKl6iLktYWAF8+RPEACn7FesaJ4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WwkfIVxpNUdZunRM98U7F/nwpd+o7ZTuVa++z04+NqA24N1sPk2OpmHDf+WwxR58tEs9tVrP9cESaz6mRM5T0XzcZ6X3bmJZzetYLIpxAj6keCnBGWvPlWOrsEdCcJ7L+AXmMgyQvI35Y3aepgB+9Kkox3R2Jrm1UCWdOnLUSClbPK6J+uQZO8vkAYI2oO8mpxabPvUYLz5pB7dsWpIJC8o302F5+R1TlQLXXjhWDFfthYyPox8OX/MUS4mG9Zp3hL84+VsLuUGwT4WkZmv7s+rTuwWsJzD0EdCTAJwi6wTQWP45LqPGw+KBXGc5TExZ0ZcmG0OHpn56YjK7NopAGaC+R6yJOtw1JqIYCmMQbDQruwF1NbSlUJKS2yoLwQzWb7J6rHyO2aiL8KG04AsNsAZE04emHC01", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "71KnhSz3ENZ7rPsjOJIYhtICBZ68PGRsC+5m0KMTqHc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BIlSvKmWQBmEVVyBEJraE4n5hRTCcc12WtH3zXrqqanGwX6wMeaKAO9qgwNELxEIZE/xDjv+X5xY7dQgkx4tGx5eqmiFVcpNKFqKmy84LGoVjW0P5sjC5sIqwEyYKeDU5dmLpjtwcEavU5VyMH8arwJfJujvB5UIeko2KJdSepU1jKTNbw5r1iAaXr7IiMk9K7sy+KGBQsubf4mt0nrtdJeUXwYPGq4RjaqG1J5nwz1jvLkqP9Ow4jlVx0UUMT2YoQ5LUgedEjzf0o9FE3tgzLVd7APELTN6k140gr6in3L+nBSg5049Np9tOCsfN1zffPPKQePVFYs/k2OUxPcjc9dPGxb/hOwT1mMhsTWOmjMl0Fsv3NHbhJqKeqAry8o+YRBwbQgCwsZx/fffXAnSpyGkGkzWbZVD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "72NeUO0mQ5pAhs2VCSwBevGBECGX0DIe3JEUU7gm4Rw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0ARHZ93a9mc/Qb+TgW+lEuQrF8Ynn/hm5i2nEHFIuDdSKnzX69ybAa2vNe11W/Sh4AhL4feQ+wkmu01rXxLTsBMKewWEcC0SgTVfpHp7i1rUxa9nUv1kOTS0wfXwhhYwPzWpRm5Bj+2C9TVpBOtF6Bn98COCaIV5SBg/NTgok43vM2JhQFv+96TBFQoOp0YKWz4eGKL6JrRAXAJHN7qNyqlkIsYWmGLKz3Uer59Nh8jksNW0B9U3to2Sd93Rod3ojCOl2sLUposHMwVXkNJ70xQi/rfKMlX1MGuWGI/NEhMTsizfOc4mA5jFUEfgceGRPn/9KOUW4EiOQr8XFE9dIj4zRE0olsORpzp2TC5/SAdXUhQQIOJ4mnNtrKNzD66lHralkodflUax5y6ZRXTk+zfdeeXWRNpW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "74ZPsWu++L7193d7/1hWYEDTeTB5qH6Ew0/zjxW05SQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BN/2dw44UEfcMjwcariVHsERYHu05ZtHEZjgBbhix4gyk8wi5BJKBzJYj1kKCmwWSzhTTtGb+TL/p5TaDwP81TUhE26++je1DOu5+upVH9tOPjcuJSxGz7sqytubtz5pmOcqZPt4GkXH0mgL7mJNssM/C4lR+DtWmtU9JLnAhxCQ6bCMqpiIdplOsUFwOzq71JOOyMGaUZKpTxnZMqcF1meyDnCk3RLC1P7QRxGhW9ADJDsjpyG6g4nXM/f9z4VLE63GBXdLAHlBiG/s6CgGa+kwD+vq0ZtHnmd6zis0+rBlk6ToST7Y+R26Eldk6ansktce+bdvL8M/jZ01e4m/yUAzVX1ocsVsFNHyqr+Glfaz9FWpHV2HxcKSD9brHiEwIYeAE+QmQj8KW8q2gIIG8YCCXEkJ0EvS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "74xindyC+Riy+0VmQFrOcL4O5yCFKy13iymPpq+R2wk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+0nWs/k3dEW3ORpaJl/CfMYbVz0hFAc9vALxJy89HvzahO5b7hlNDySG1Cgjmkin7uDKmJ336jBU3vngUlKwF+8CAM0fecwi78w2a/xLW3XcjDPq6oU/NhD+AIKipSXhhKAbcd+/7RRnMmgeYMhYPmJSE9VHiI9xVGm1eskgWPvrhVEmY69d+17eX2bF6V7e0oj57Y+wjab+4MdNmSTEKzzXqqa5xcUQHDDF4BgZ+L2ozsgQP1ECaOVTFTjT/iaChITGwZpYboAMWCFRkozEW4nkBLN9eenFXLrx2Y2YFCQm+awdPn8IwOSz5BiII7aknpEHxOq4ZIh9/1p8mkx1a1NYa//sfGYcrDFPKEyGcswpJ76djuPFQutqSe0Xm0cTWIJZ5EGnCYkDQdp7BAcagCgzHV9Z9l0P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "75NASfxSnT1etqnZWcSvikxWfC4kUwdrdOyKrcDhQ6I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rfGq+89sy/IRY/TmY8eRfF42LkIlfZaBuk2nMFxOf/rTqlvV3bthowRkdYBeXhpCrHPWHrfNroGvcwwJbCQTVzaoSOidGFNI/P/dk04NFuPyFyK1x2tKaBArYxTdN0Tm6ulfqZUmYCxAsyR5uOvcIQosk4Lg0wKCHFq8Gk5vrvt0ntw/aUnHvrxRkyrlILD/pcGGmXxs9sG39VuASKzW+y7e8WkQafUd6Al4fXDdddnCJJMNW/B0CGUyqMhzDafOxDUXvbqt8/qY+3JPQSRtQIKaEF1NkU3nBfoexPkroUpo0kBfA7ZE3/9wmu5VRR7z6qvXP4nXkh4/TOcg9m2L2D0izH6wFhJDA1zoJxkfXh4CLm17cQo4RwJ4LOQSkJpgnlh5g8/loZugaga1t3z9fUepxY6bgSxa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "76WZ30aJpiR+xOdvd7Da5SAafh+v4h/dkf1eMRwbUuY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TOdcEUwG0kVqGN5EY0dgqh1u4JngYpqPyEKe7oX+pbluOaqhNcxQBPHIs6mA2hzs57SaNVgWrQ8qimwJL4+yGFmOHKCNExNOw/L10PoCQa0qhkvXehJ4lcwbq4vuQP5BzxDUi1VIe1zfOdWJ6DdzYmzcpqt4DAGeTPEALLi1a1zAu0TTUTwgBpIAiR/gExAK0W462rPfd5d64Fs3lAyfBUcS2RZ3iCruBOXpERIVXkqce2SoX2zKAVbyAFV5o+vkW3ggLy/rI+HYMYvIYbDPUBZY0b7DmI0Imy5H/i8vPFL6U3bgHn7BoYTSRlPzkCP4q1ELzn7qKkoA/8N9apHahsBJKwnnS5JGyKF5/NszixYQMrLPsxJ02iDJh4ULhNst2F3H1EO60ksMWXcEddsduEWqkaI+zt9+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "76jpP7pC+3LR0jH9IlrIRcNtx/n0aiVWLdiUNlXcCgQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LY3/ASXfJ0owiHJtCoQAnKy2gAvMmzbcJ3bvAtmVeIyFf6XCxHm/xQ3sBPGVDukgxL76UWo9oIvMRhRTO7v0Z01p11sDoI5lj9bSeNUprrFc6OjJxr8ggbUhmVyEIVBSPrn+vG5frFtr9Fk0jeAze0+qC8z7lBoAaNfPo/YNhWC1DSFpB3qj9uyY5DM3d3bi7yHFk/3cHHU1+nbjNUyV1wGp8/rgExEDe1HLMye1+SH5FCy5zlFBnh7AvnrgucaTAxt+m91WtAMT8dtIC0bdVJ63i9Pkggf1sdgdDwpdLZstDpoAzQC+nP7mCItKj0KrP5t7LQNNRHChb82qrcrWoYlUkefFcFBx1YR5oDODL1kIpI6PBeGvsdDQvuH5sdHtElP3JzOoots5gv8MFyU+Z8blvB5xt01/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "76oztPMCHOati6tanppPw2Ga1KlNPVvtSxRQqt/njY0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Xtbi+0FnOjQCiniaVtKMwHfztzbJTUoFtvTA7IavHr16OYks7A7cAFLbVqI8jumHMWKSPlNs8vBebAcPcU4p7xEynE5S1LAA430XXGF6UMqxL9peFD4sr+6Pu3Px5PfkFJSttvJuDR9EMCjQ1Nt4S18bf+nsrAruwG8ebmBfiLeJIUK9jBrs0LqK7QDB01lJlO/aGMMWirP1hXT9WR8ZJ7JlAY0qFpfqpwITsHid+HiPLK3iaSZ2F9MEUGC4nJvinI1tqeTjccS8iMXNEar/UQWrG/7FLllu+8aJvGJvYoaWweXDMoPrIzH1tejhAPNEkHEnJHMGqOu4mvrNJq12S7JNcwRPoHWdDEZwzOc86VI9fuc2hE0lH/evlZObvnOX/fWkNwlHOMbBGc5Esk0dHDHql5g37E0y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "77CmQz6shAh/Thq3hj7PYLd50JmwhEF/9ZOtfHnhjfU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bxwsSzHwnbuAnXzu7EivH3M4BfRMy9FmppeI1Hy7HjtjQqexGIT0y+wLCC2zH7VrwkQf4S0x6wvP7wAh9rJBroqQSK4oTwGVRBqNcKC3syVO9ydsoTRQjewM39t72MM3AB2YmkUvH2R4MSpwECyEsZ4UBdAEchyF8saqN4OOv4Uf+PvXsXdLpukPTO/44iT09IQYuAvdh3pDjqpGRWdov+hlUrBvO0PtUBDO6nQAbIuyNEbCmXYZseTR9WI6ZKtP4CzgzTexgu/npFgAHjFXWrHdaDXUbPLBeoNDrFdVw9ZkXsofcOSJzvvG+y6dZBav0DMOCIHC6HVyQsjpGf2i6UJphufdT3VC9pzV0nt6bg/LB1kuRQYmfe5SDICew9k1jvXIgNK/Rk5IbHtYnZiggrADEi3yrGJF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "77PbSMmz8dx9CVaD+Y+WdcGVAWmV9DVnO+mbEfdgUNM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WMX+kGpmaTSOYs+FbBsdFYbHn2yOeDIXahv5eVI0EP+quz8xEKCXbdCOjwgOUw9pGiLWPPYFdG1kHa4wLoLsMZo/JnhUrMDI0IIlSngI16PAkY5KqM8ThVPvo/YL6fFNYML79t64Pj+93Ai2SDzc+osWnPAelGpbtHoaSzQqhR6UAZo0lGe2p4b3NuQgiZDCu6spwf0kdjYlwq1DD7Op/STrkxJl5WwNXBvZ6naYSFFv1zjC/DgWAsx5HhFOsitlsuo9tuGcJEeaVhWfaHYvyBrNn9J5HTQtEQhYIfKlSHwravODXpVf3Q8R7+y+z2LacXTbKDE2rYOSI6kNlOe+DWKbQI556NVq/HeXNtgFNDAze2ssoYny9Y35Nfd22F5MNOHq33cd/iwLih48WaB8GqJsxqLDQ93x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "78It5gj0LZexI8adJ+zK6uYaM1U9W/9ilS4oZeo4aRI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FUxeqDuxbaH71ADw6nHZowh5isRyQcKIAbf+wt9A5y4veQ9r2pt1WYAq8zwAhZWW3EHSfC2MonDDEhmNUjWtqO7P3c8+2lV18Ql5AO6O8cGo55uIbHMAIRXtlXP865fvtRXITFsnwWN8PlxjldlG8fJGnp/r0pP9piP+9M1TGRiX7uAI3XftFGQIVEVDlQWDBMZi2R0S4dwSvwQcxNPDNzeH4bfwFXZYuQrx/hXQYzuVqaYB1y0uqoPyOorrxKf19PgG9sz2wqwvcVaVXO6vaMe2h6GoWEpn6aoaMaHD0LIRWczS9kfRrljwh68rd6SfUjTC0iUiGh+Bw9l0nx8362t8GKmn5+fpJ9nIfCQfzHDhNyUNkrsFXudxUWk22uqpKwjiCWxhbq0IRyRPDLekxjAaLIjLlC8M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "79KaX8IQoaI98t+/pqeJkqseQnaX8Cflr36EuTSNjRo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F4OaZ5+3xTOWMQeLcAPIMq6OndC1H9uk50mfbPnPi6i45Ak2Txsd/jbu04R8iL6EckY7CBi26HbvGgWrt1BYjUfGEohEBPuDj+68WaU9PPqFeqQBb5P3e6vrpx89T4KH9TO7xj2KsVUEpvDgH1mWdoFZ9dJzjv+tMHZ2VmHwM7UfDmSZb7/HDdrcen5BG5qVvqrAzeAd9XkTC/XZodGYL+mG7L517kwQBcwyUPoQzNRqXQIRbL6H2RxET0K32eho/UrzMdkvuRaU+M79OPqjgxWQYd9CMLcXhUfnC+AgtrfMRg7M96Q9jGFBxVbrmTOpG946nXYC0IWx/wcTCOg9EdlxU9jtfXTMwpBGEp8YpyNumksc0RoCWWnVolcb41+fOj1RwUIi5sxWUFDQ/W8r9JmWTvpvq1g4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7AkLy6FxFyN8mYYViLphl8G87+FZFRv9Wb5bTAP1G3Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "D1ijIGPJP8M65jhowSR1qBPHKgBhAR7bX+AeSw9LwFaPrVAmE0Snil9hF1Wz49Z7K9zDJbUgvb+nx994f9pFqkU4EZbl3/6sR6AHWYd4R0pncp415q24eePLpoxDUR27PpCdtf8rvaXWhZldk/xmCwz+1uTI5/iaPI5nsqYRMKT9oi7/RfzHY//21269kuLdplQkhlo36i0vxt+uPzTi10jEWtclodFju6Q0XUv+1YrgMn0EKODmWiOwsmHifcCPP4Mcv3Q9UchrXrUEfl99GJT2ho5K3qQTDaU+IAYMYSuMPH0TY7aN5otgs+rGD82B2SOzQxJocY11WD1dbbiZB7L6w5T8GLWpylKYMXkg/bmiUcQyPqsS7pPnzNkaehDe8NcnKBvw3Z5jr7gKLYzkHldHPqgJyJ0M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7C5MUv0bA3Ss3IUrgasWwOdaM5f6BA90/M+Iai6vmDY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WcWR0/dgIQU0Tw8Ow4SB9CkLeGJ2p8iY8OVWJiaus5w/qNNunXjzcPlhLI9eFgejC0GGUnNiV4qnMNtolewny27PXMgq86r9FC461CEAGKSGDNbTqwzxGpYy14dO7gFOHBQAugASD4bxbMTxVGoZRN2XiE2x75OeUBFvk0eAIj9n0Si2I3wYGxt1softA4WGERfEOBmaLE2qEbJTQg1m64jYIipBIi5xmC+gl19zKS0Zz7LIr1+HVfzonw53XcaKTSuH0zAq5RQuTFOtByvYY1ohX0qoBiCAaTqk0L/IA1JMfJQxfAYbgj4jmpXBVBHkNUHtwhpQcEjrwSvWN7fXOKXJxjl0uPG0NWe6oxpeEQQYeR88ELVSj4eVriPZSfDnq+S8nXGye1N6SHl2/oPO8Kz0u8SWr6/t", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7D4QJyHgSNrx0UkNBufJ57ao3kq45EhfWJHXo8PM9VU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/VO8wVcxa3uoy5vJfCWQRnzvVZ74zK8nfKuJMEyuB8gD2BaFehOFvcjjMGEDxRHvf61z+CBvMtZP/7t0kmdRUrw6vTil6FHBpszEYYcUURT9pgCYHvZRs2s0lh2IFloO8axLt0jdMrIVBYBX7gRUN3UdRsN1cTQHYreeD4xdLp7cSvUwq7o8KOgrg27wgXESQ/sKnFLUXxswsGXIHxxKWx40dgZS2rL/Z0hp/W/sFnXygbS0ZHa/2tzNLKbAblnuifYaoNYaYbHh2UyIsyvwv3Y77ac93VgHyWAIOpxj+o21nn4TymGJ7XBEGozw/HyvGseZH/HVjeoxlHEbaLL8hTCpuT4VQjWU/WWIc0jrZltmi7rnCmrRG1wKHYuN8a6MoQ7YDfE6bDwSLi0GJAPlp8JBCpUlNxSH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7D8KItljuAyQt6y30RoWFcaj+uCvwE8pxpmAZVjcsOA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TbzGUP3YgK6CT3w8tVfev5Wr3Rg6ojPZAjBU3qmZUmoACo++rbnHoD2WHxwX6qUEMKwzVwA4BQE6+Ez1awvtHAV8DjEA51F5hqpzOW8SwzWbtUzoJLWRdyx6SuVgzLZHKfxIWZHitKnG+uTv01l1jQAvDfwtyC/iBCaMInCmNnJ/GUkl8kHBpZx1bsaDpZ/nmsBVAXgs/r7/G5RUliYc+1iQjKT0miQRzVxHbIb2xOJbDIID6zTumaejqOBxj9phCNhn8f6Ruh4HZ6AMzNa/rVvI51YSTWS9sbeJE2ZhsUX1eeR9/iSEyDnGr0Dxgk9c40/b19U+DuanbUJ0OuuIGrgxlTYF9dN4pYPbF8EO1IOlrM9mUEZR6/jpWGGhG/m1EamAm9aHWINa8rKuxp0DDBTdx4SoprCF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7DaYWAzPA+HLAIuWDxgufu/4Aga8BvxdHdhZpmhkAgg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V0Zm1bhJJ2Ple6pe1vwaM2dPMO2EagMBYbdmxhR2M3qEkHN3/DE9y2trKusS/X5mwNRa31s2g8Gmnqx4TBXLI8W80yNwmySNRfrXGf+kT/owHsX8uFxMDqujK36HxPd2cLddooTUVJObanQV9Z2A6xoHUaCuEVFV9qLZc5LZjzvwD50D0APoeJp6WNQPMUyoIxssAnJMEyX1bJZqnOsvmHyDgNIyPd6UQGjUsVSz2gso8ZidhyCWkKgvBRQxzFwsWstcDe33nrGv/iha4CV0ftTiVuWCBtC7y5c6XnR0NuOn8LdJSLic/LA0W4Yej7sd4ktCqyWqP+nH9cRe4lWVwp1r2TTA8XodPwXCW7MGL7LvVTvrghfzdBfcI0GCwS0yaAtNTqwbsdhXY8EVHNoJHPZZav6r1Hpl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7DoVtZiC0xGwDZlu6u8Zvo3u4o0uCM75tdNhOZ0hrJ8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Zzvf6680H6Ujno5Jxv6xT/iE+elz3ZOFaKCUXBtUUKoMZTN7O4EJ5P3vZ+JLmnjD6v04vFrxo75FNKmYCvftPjde29ZVVuzMNteCXCq9FhQe4/6LhrF3mSGtQ+fpGYcpsz+sd4TU4qdlgYy3qpCIy7TmsoT4+9Q2v68i6yDAT+bQ6NtrK3L7YV+7pc/1cpl5gnR6XzK1ZaSnbCo7cVku8S3f4f29IivubmzT9/dtd6VGNoJrnPTZEVbifkoMVHwJUq6u1odZNaoaksAJTKRM7MGLLpNABGz7d1uq+e44SRWQ89dVPTGB2mUS4YlrhuxzhqGyDqN4UsPvGCsOPKaxz+a82RFehJO7b2DyLkaKAiMHGJ+3jP++oQ+XML3pjgFQJwU8w+Ur1FOhk/R1cGQe5F0btMQMngTz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7E2ZYK9hkpAdU726VEbVSLyxPRRpcd8bnc2ftijnOmQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0IhceszDAUo+jJ4xpqA/SA/a4mHW0KiuJnQb0UNGL5tC8aKJO6RZR/+8LiS6A2VRGgkz5gMAAaMlOZZgCHipODKiWJ7LX9EWqn/ENib2/IBOq+M5/1C9SeahRfTsKBZt/i/ypgXdDtFLlck4NI8isNt/R+dcxtjqeuXkLshJ8x33nxdGqRoa9bhIuJfkGzG2frrLYYbye5LUEfs4jxbM+dMLHOSQK+qZcgtnyXfSL+AKxS1NrDHBXo0iZ7kxbmi/uZ7OiXpA10ZWnPdlMvvsMkmqbIRWff1e3pKP93ySTUu8T1MyqJi5FVivRNKL7BvkorHL0O5whwCioPMItwpP4xZL07DLxjrnt36YmAnceEMqRZGLMFZZ7+kJvLpjcD5F5ySqgGe38YtgBRO3SICERLD9rI4ILSuH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7Ec5EoEtrP08un93w6f8j2XofVsyl64GFyI48P0WsUw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r+gxZ/advD16Zq+s2gDJAJFMWKQnEPgZoepzwE/7SjjxGidiX2R7MyFjzBS1/ls2WtLPagwGeWqZfzrykIZDINu+NQpR9vovx2NHgjjFN8uurYsGCnjooKwoWX6RqW3eMi3q0hMahXpy9VzRPCo636OnXG0EFILrltYVkpkYhln5cSrak6WofgyftEwmwh9U85IznvUKe7XKtD7MMoRP+JtMYsJPaHs6ccpSCs0U5TLTPDPYJs9GaChkSNbIn+iYGsBHHPSDWrDbJkmtx2I599XLGYCixBGWBF/Qa21b2BKHTlPjhT4kDNK+2rZS2HUJG6we9Hrdu0vDHhYz3tS5UwuwSEnZkLQaT/Lc0n4mQlZ8n1AKeXcafnxuwLMnIeXuthxx1YeqgyIwnjjjL30HHLXOn5jAGfAz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7EnQjgf1f0EvriOtayGN51YeEa9rDRz4gXtUqaFicrs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kQIHUHRHOflJJL9FftVTv7GXrce/DXLyesXYP4O3dLHVkqv12LUgmkDcVhd1qyY5D9CoQDv46ntTLCNvncHOALaG7HZzjLKd+7nsz1ERUdOWfcoStOpWQEX5TZiZ610d89/mUtMGdG0Jn/mGKtJC38eAAscsp1b+vhjxr3eD0kt2ntVMjOZiZfnlZ4kQAC347W25aqRFfskRTKUdCjEI1vq6I8obPxZKT6m4JtZWJQSc6prHNN4BQ0fKnFOZXzpDC+WdZHYiJiloZMQWbHfPnK2TNu85CYk0FMP+gRzRJ8wlqGdjM9Cua0Nydg7du6Kanp02Fo4vhTK1WbpYuJySGs5ZX36OzNmyGeuJMceEzEDFhBIrHkPski24Oq2tq0/3vWcIUEwBgUz/S1zIFbznNj0XxWKdhpsG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7F6U28/J/9mmMBvu+jfZ283s95DFuXwNhe9i1lP9Wfs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Rl4/KZ/PNCvntYyWZuib0D6haHxLS4Awg8c5kmySVMDJjxL4MKfWaKZK2DgggPLPum9P5+tWTSfR8l3uBSbqNAeMcsAdz/SvwFy+bJiQzkz2N85rGXSzphcM1zrPLjl9JY4HNPddpbfH6uJ+fCiWVFTtksgDUcmNTB0BV7Kex+Bzfh2Q3xFZ+KZrxpp7oJyjPonN+SIABc4oGWwZivmb5Q7DnDC1XyUCRMF9Uq0mmyA17S1vO4O0YIMJqgmk+3+vbhoO+CWEKitaVcvEyGmUBCDWFx/VkZgexeWqyCp0zKmh4I74bxKQlhxJ2fhclXCFOva0RGQ9UOdIa4EwJEgBnzstaW+AD0GuTX0w0tYy5QmH7L4iHT/qaCqTVg8psEdISME6H77d6CzzUWep0GlSsKId0W29UI1r", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7Fb46M0ppXlxhA5s3SeYhrZgeNbwYYIcdx2wzvmZDAo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NGUFsVvKZ7ZJ6W12ycO8nXqK9UKR1XGFTHY+pm0dyastU1zIfvqJBSY6dE8eKkZjAnp2yTGF9Tlv8biqK1W6BuECDMqbgx7cUj53G8J++/emBCE5aPX9DXmcRxVQAxWBi7DvUpaHvGTF+Pey/5H4YHTTg442IQaqPylUxa5XWi0iU+Lh8XurCcg2W2SxyDrQ3csPUTb++CMkUIqPbcAIqTK/do6ni5rcR6opZ4xYgRY5zgEFboLD9r44fJ6VVldjN9FBxZcnHK7wMxk2P8TpFsmDCnuCLIGdeIrGFNZmMxqxLpwHlyeaiRzP3ZO1Illu4aH8lb6zDo3Io5yOao+cl2V06vmbVYwk1d68wFrq9xWPqrR48o2mvomPXiPU55/5R+ZfaSD9N8koHS1wgqaBkKxsvo1PQrLq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7Gtv0ltLAtkjl924tL6V1bZQz6T4OqfOOnEWdE3ZoZs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Drpk19KtcMqIbJctTERcsJdvJs2tF4s0fiLm7di0QX9yLxIJ2oAMMjgsXBRIgXDbE/kUr5JsH7wI7rxxmoYB6rE2iO1G7iNY2CG63rW2JKZwxJBhQFpkMpUT2hhiVLSPERoXhrn2slfop3e2kn+Tg8+fmURmRwQ900vyRhj3rIVW/rmLWYf51pKS6ovHfg6yLkurZPAxK2l0zRoTdFEVGaVLrwFBAPTXvJ0BodmJbbeR6hdMfIR0lOcGnwn3XQWDczg6t1o9jZvMAPGYeYjQclA0z9cZf4TawUQbVGc+exsV1584z1wppvdjK3txMLKmP9AXxGDjePD+WlkyT9a51+98Bt3yAtN2uU9DaW2Ua3o1HoG2bbzpRU2Cr0zrSByXu2smY85NLkDRYoSKlPRw455Z43dESR6/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7GwgEjjSBTj/R3VDLTxmx+tXS25scfbiY5pbG/VQZ+8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YCdyeH3frAurae7v+8B78kM4CqeEQ9PkcdputUeyypSMm/aBZ8tMvvLAvo+XwsqxUOjLQfidTFNGNyZjpJi/piJhVoI5QIanbx3RpNyNM3UzptoYJPZmgwEPx6C+oVmz4kJz/YrYp7V9TttMD+aF4+4FKzI2IWkhdl0q3811G+nrzxmhFzmY1o7iSHkyUvB4zHkMDoEzHTz29Br2rYz5Hccclp+AYsPUunJ7SofW47DziUK8qmstsED9mWy/lyuc1zDB1FBf5e99f4EVmsaFjkMhyJoU6a3eyTUJnFTFGnhtvLYbwCSGR9XrqJC7hBGDW+RvPIDCCf3qxsplKopS4e2elQzoyTlyzZTVi4lFjVKnsVl492sUEfriWFQS+Je8CDT3VlPpunHcBCAweEub1B/g/aATWHMC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7Ii6IrNjJhvd5gRFzniKKfk1TINPs4RQq2P6dDxwf+o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9Jdq42h2XIQXJy+Duv9l0qQdG33XXSOV2gI/dOO04BBvi2acHm9Gl6f6pTszf8sKnCWw0RIy6Y0GefxNXWYEeT0yUDGw+Qp6QyBIJARa2NFq13RVWfhMfGXc2K97Yh6HkUta23Q8Y221zYMFYwXwxMxoD+8uu449K1q8mBfYb0vTBydO/trnYfFiUFv1hMkmQjw37Q/UEoM5F7XgF4+Voif9idp1cm1sPIAEH0/q01X541XNsamId0d5xt33UWzLoM3OV62wi8VspHcuwT7LMclF48rnoLQj2Smq6xE+QUhTUjd4tOT+sz8bkq/PYSGK74PiJWLDr9mlLSY2fuojkpTA2vfJOoaRKASTHKbt84Mce9ex3C2nqGgzJmAUHRXsG+xCYCl9//7ceo1kamoS6PtpKSNBFpjo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7IzpWBZgVi1M3NTZVKoF/edFrEbLSMvD154r0qalLkc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MJ6OX1BE8NyoPIe5+vgF07Y3RXrWqp/oYmnNdl8XWencqLZDyw3DySTR2sdzreJ/xIZVLkuQkUSAC1Li3lh2EQoT83O5QQ9MSiiPhmhcHTIqcW+1NIXYSYcDWRbtR97cJSpokZnFxiz5unZUmf8BaLe8vvYASUNX98XAwby/khorx+bd6TsbernKRhhw3CMBm/usWth7jL/Nyenc1i45zwLHQ6uJd0m1i8kbUXX2gzen1pbVTpIwoUbguJOZ5f6zKBBjfvMEBfzYvmjMSCq/orm2KqtfPBKF40TyEogXXmqwhxeiGICwUv0JJL0lYS9pIgpvEKAtz25GZ9lyPCrL8BSwsafI+OdyQywK8PkyfuzFD5YazdgVOWxUil8INV2C4WIGQN5dUM8P4Hc2xCZc2dioL7r8U2wR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7JCyy5pdz8st0DkDRvC7aLA5Bhfv8nYf6D7f8zEsqoE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XTbmA1DW4Pcli/Egv5L/1UaJZXF/6JbtZMibXl9j0me0WAaqw8zB5HYd75nUj3xgT8OPxa3+FDl4cF8NS1R1OzSKZS8+rF1G1uT1Be6XzX4v9H8EyFgrEh/0L76uHQZTSycJv69OFr+fAqABk9UE28ZTUgFbu0vtb0HPFcFcH4XyQX7OTt9IrZywEcKs5kWU9BbJLKO9RNgQtYBsdOVvEaz0YXUNxpmtPOEYpaqUuwvlHilv86l7kAMJ9nT+QMlGJWwvQ0d/an1yu3iZ2pc2KUK7cXgXNKYBMerZWpLl+xL0QpHGeY292eS4lMh88WgytE+Dp912SjiL+75jxrnUn5oReG4iTj8wfgPaPYGCr3V1MNrrJUFDWczL0KvTi1aWKPsczgYkYCGdti6UQ4mbhlf6XfjmGxzg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7JLjNNQDr0Fut0YOkQ/iP6AjilssADCPfObLZumCSM4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OZVzCBHpq7T/NT3N/p37QpbZ8qET1AuxoxvCyTIvqzK5yrL6qD1KvNujUV3WmeBZJPY2S0200wiHW2MAe/LKkBpRU/vy3hIQvr8T19x9Cf0uZW4VxlbmMzcUw32BAeg7b48x6g34M/hcuI68AsEFKL+HXHTrEzLim60jOkBknc8Ag/qzYIoCevl7DTLz2qBix6rJSPNZfFuiGyoBAiShXyTsOuo5DRvA18LKBQcwzbb+7rASV0oBvilAt2BBwT7eaKxQrtZYW/96+ut1E+HVpftNx2RLTgdOVvpZTs29vG9RVE0fTrBvu6g37QVxYueyN0AiYJnLdaYiPYuTv0KT49oJVFdw0vRl0P6eolXqfx/NokmPsdP+ewCxulkw2OYM0q9U/+M5xt1xds5nMYgQHCJC56ZUkUg2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7MBgM60O9w651B590n6K82WDYfm6FMhH2if1+oGo9Jc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4AASwjcWLwcyENliPiFQ4zEQlpD6O42lhpHcNv5vXpQSHGvolTCj1VFgY1MWj3jEecbz+7sNe7JmsAiz8/EWl0XPznreIFjOFpJYESLl6gBvx8GcAAYz2qoRoSNNaA3dvk26grDvdCMHLNmYlb81Mg/y2It3m+NiG1uZ1Vlmi55qQUvVotsIwIuyKWHUXfr671uLamDeqeE/8GJADS4tli1OcgNwppAUhp8ruHBjfWbrmKLdRtagx+t1aZj816ZHrJvmlFeJhJxbdHFEVsciIa1N/oKieuI5ZwcCPi7y1HVylTjHkVqXmDfzthja2esKF+AIkI1+d9rBONYOD5mNWQidD3+v5O+5fzguYGKe1JA7j7/5oGn6iVdoweR0cAoKcypbUKzGr3GiKdw4DqGeImEWBap66Uon", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7NVqZmINz+nicC+arDJTB/Cg0gGT2zksFydD7TiIy6w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZuU8UAywuJ0nz8Q3LdVUUOUoO2sH+oUz6GUe494LXPt31rVgOMTiOTUvnFvzX1uInSuAjp6Y8k3uL3HhwOGkJuECx8jU74nvSGKjdMQMF7Ijfrz8CT1YSYsCwizmsouIRrcGQcpTAWrJ5QB/x9LuzYLLu4t0q/MlaYIw2WB83Z2twrXD+ZOBQadzAYO3qXYwVS/C5iwlfv2eFp9WABEEWWPdF8AZqRKHpPmgHChv55tz0NWrfQhMIFcnIoBgh3+s5TR65ZFMDb9LnFyzQNp9Vka9X39siT8iw5+SJvoHnLLoReThouea8JiG4BGj+VRguOdnvR1ypbhmjJEeT9ajILzaKn3pZW7ZBi+D5yaUJYGfvB1rvzicBzqDzoGDzS44xCEg3PxCORj9K9jOWH9r5iZJrI5Oq3Jx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7P/tvFEbyp/eM27hiYqr7drCsSSHLkMewUnXbvvnRFk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RyvxFdGPY9QggM7b+vvoJkJEDl9ojK3JhANFxbit6R/wGRFTM2ziLjAViFi6ftn/jjHRGqMPUPYFInIbffA6R/Q2BZ6HyukfdN+ddxczGX0RcjwMR2D228LkAfnqq8ZDkaVzZ7x4rZntH/JBZhrj1rNENrWmteStP7YCZhr60TBY2mg9GmthA03SawIFPQe7cYFA4xgfutwKIj+od+fFJKLMn25NsBJk2XwXMlal78eKtk6eR8db0nd95oLaCXJqvhFRts+zLyHdBpCqSii6HzeubjqLMqrZgna2NF4ivau/KYRld6NoMZeBPnpuj/ljTHnkOFQJHhBOPZmJV556Rvv4vsyE9OLNBRoJZ6BiwCs1sFRDEremueEY1YH2mcikECIohqKHnzRcJWkOB5ZFn17d0mgyHiUS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7PK0oBFeRhu0RCbQXD76Y3ir21mpETXx2PL3hC21t1I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FkguFgpjd2qGlAy4r42NnKzi7Qxo//U61yjgFacGaX+yxONzxduANEkYDFKIzbaHv8gnCQeLEp/7W2bS2gUZP8GPDYaAtKfvXp4r04ZgE/PsgUh6kAeRgwnP+1G6SNJJeYXmPah3/cMzPZ/oK+u4QZeYGBC+2M608VIs79ArY9mjvjDm/BcD8UFhop95PqClaUbfKYr5pR/fbwA5kXp9aX3bRtKXJlB4kKOjpQ2Q/qa4imCbXgX1vH50raxqIJdcprzYQBfLe3uvkN6oY9fRBdH8O+VwFBx8r+BYg001Jxda/352gcBeIZBkuNsK0SedWW8A89U0DKMc2tQHgx2YMH1EXYwkMRLR3u+J2yjxyQmpl90na4uKtb2N+xc3T/XIdhYPFJINJ67mRm7tdC1xD2hzmrevz6Su", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7Q3XApk1OTGHHqjP6C6Vhk26nSfkD+ivmmTFAyTSiw0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ETIAOJliEtNCxs5ihBTxxf29xKcfq1Kbu+px9aM4z1IbEoo5iYRMc6VjeygIxY5a8/MpLaQSY5drnSYhEVGRLKCT0MhyEFOlHTvCEtzO4EvfMIXIWih0xv4J9T10k7MB4bvYT5ty8Gl42wPIqqVe+7kldH7jHHLoHV29PdP8U3+DJh/cdIdBrmBozYKbJba4HUJFtyw2bHMdOE3sOAcvPfJKufs9Gk39fLG+j95y4Yvvrhf5jcYhSvefaUUEE20FxXRoLSEN7RSTWFI1Lp1xlNhVc1AbRFTqbShtw+L2sslko7B/DwXHv9h+mdtrUH+A58sH6rBTOIiRyBCMNr86AUxmp1f7/ENCVfn8/Q0f0OWhxCpvBZIX/dR5k1VQ2JrHMZ7CEwlzjMvaC0HAIl/VOMp/6GrfO8th", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7RK587kJOrIdegPEmS/co47oI9JcjX/1R8x1RB2ODMg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YY57cw3fxfjX4quZPcz6PGnwC+RJZy1kgsfGPFsCb1FwXuvkB/F6fJqgAh9IPsmg0rvGPRUY0ImJlhdXH0MocaPD3ZCMAywtydIEbYLMNe8VA5iDcy/5ieePj5XQCmPvg+k2e6ctUNB8VTwU47PJH65L7itVf6sZDReiT+gntOPpiIjXLzX/SsmjcJU+ThL4dopRss8rsgCqDtl0Mv55SnniMxVdcX7YypBUxGdXwRypYsUyYE3MDypzzALE6C5W5jvMDyXwEGM77KEXPuHKko9cvOo254JgU0p5fpQ4XvoVyDiu3d9j/j1ZG/s6+ryPHbwKZHXEArJ9mIYoWvjUq3dAlImqiTa2ZLGXWnwGAXrsGKoH5UnGL/6FAi5B4qCqv4YzwXQVQgoGb3EXoLQb6IM16+eO4FSJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7RhODa+0NXv3SCl6GsmIsPazb7aoRrCTWOyo11q38wQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jnSbzXwzi0DI6vdGeC4HWmsGxWgw9VWz3c9a0KxmDJijAMfyu+4WMb0AnFLWvWj5E5YjX+lbCrYbYGNodbuu70OX73V09lpLL+5uWs4tliz/KokYS8QEU3quSxM1BulkhfeNY/45HDb1VzHyNUvSaq3L207Hbr9lqu2YkOZ9i1sOH4c4BJqU6DAqEHs+fj4LMXXOI50XZxara+LYxwNxv0PzEaV3OwK380GeRBsBhbl0Xe35SGiyLLOzNM9aOQS3ZzyoGbMHISeBI4Mpm3qAtvbphYsAL1ZBC+N8+E/oKoGNdJZCIJ52gakfLxyKtjyWAd8Kj+fZ0RThvqDUEZDvxfEes0tKKHw7n3LW57g4cwygCP7lrsKZBQgcdVzU1VRXfbhlOeZf34PeCdbI/QPFTx6Poek96tGH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7RzIBTBcG11nmqB/nLnkY/XUQDvEaZh+eddmu83pRj8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UKIMzha5OBZmOqoIvgMcWhwg8fzBxy6Sb0mXllUJ7PT+CF6/MYy3QmcZU6gwyGQmPeLi1dJ3AyUPcpzY4HT0s4VvyWHC93p7bFPnph7WW9AfH0MWW6QuAWjuZp0JWhTAjHCbRBd9DBmrQ8lso9O9ky7qpfAx9zYWcheDK/8bdf6aPaTQIokzkW/wPjbdqkm9ECp1b0XNAZUQcMF2BQYvHvsDL1jCyOlC0OqFzTQcOpW9U05iPG+AMO5vV5+l8s7TPRykoUMyIZMgKfyqLj6o+r7SPo9wJH5JGZj/w6QRr4+WeH/Q1FyJgqS9cohnTpb6LKyfWwMvRYjWkXum+/H+GUynXAINXpCykAKrqj9MY18mflrfzg2VsB2kJ8NJL5n6mbYisLAsBeqmaFPpxRmz9qitO402CzIJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7SoBiLMGzkX18GYx0JnrNFYuyv4cx5woHcYZ7uvJbFM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fLowxwzCZG0MHCRiHxoK3ains2e1aBZm0nnozGstPvWRn5sUT3/wR5dlgVIQPlazNCWAcxNJiz0S93PdmhZMUqI26jLMgi3N44te0f6msO8D3rxES2zNakZGv8b+tkee7R+Nj10lfT5sR0R4byM1x7b8eJZiSzbEGGCRVB7epYsN1sxX5dUAYQxa7AWQLlB/FMjM2/FTJvRu7f1KGZ6XBXGJO27ARli876X4CsiLkc8QBdcBrvoo8tsOyJWwLvVRmIW2Kkq11JibF9Fh303LVMJ13tTqAU9cXutiOfiJSFArZstQKOTPk2IIgj9ugQeZi2ptrb7/IrbiAxAoIrjHTICdPNJp67vKxnVwrsWiM8a5TkSKfI8+nfOTFDFYK3TsnHisb5z+D5U47bpmACNKzs426XQkHmNH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7TJUoAGPhAHMhiRTE8c2yg8onaSXYcpvpX3axlSBbn0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HEROqwu/MoxIE3yIgZmEc/oqQtcX/x23lr3aMSsLAj7jaR18rIID14syIGEpzZ93idg+X9Qm7OeC9A6eWQLcwqdkNnzm7YygAq1OI9s8r76zDaVGnGmuM7ABpwPLOnWFSmw51ZIzqjBa17reiJ9qbWcrQ2uL/ZMzZK+J+S9RyChpWa3dn/LsFdXGLUJaOff6ftVNCeMtRypjMDSgGD3di02I6N9mZNIHJBka7V8XxRCba8uIw02p5dthX2skFR6EoyChAEh/7QN3vH5WUZPx0m0dr0PdcuzyvGeFAquSa4CAK7faLjrpHon23Hb78sG44HtzyGn8FK0Vc3Uq30gEGgYAoybeveB6DCLy4SGUbP324Q8QenECCuKiofboYvOT8wMsE02MrM2+tRK7ekKQb3YLnP3+ryBg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7TyOVPS7W7bWQhJ+wb2CLchkZUDBYuIVD9PH9G3EiW4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P9KFfjb8OArd16G2tr1nGSa7nsvtYFAWwDtj/1vxx9pOVRaEAt8RGhCDFIAFUOohnFRn9QsmqsKY0wSj/cCZ3bC4+UCNWq/BllDUM5olXUiJ1EcZbdTQE3bxZNDbZGP0iMoKl0FeVYOkemSExhCRjtN8hpNjDN0y2blLAhTke6jZj6PpKP8CgTEKeXoNuaz8KMzV6f/8XfZGEPjrQa6yJafdG5F++8d0/D1JubFLfemOArpfrPY+MSbMyES8OsQ2WFxRKKLb71e33fiE44Rwy1rHs2/+W3JkKis1pJIBwh9nw0LzGDu3yogmQtOBDvZPV94N0XGoBih2hW2OaXc/CjsdFUVoFXlqduerZ6TdmWgnHpVgJPXctUP1ALnp0fcvmrNYofjafkIsTOGmeNWKYWQX40/BOnLr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7VQ7gTHZIo53PpCWdwIraiEsuFkb+/LxeeJ564N0Zgs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ajXF/l1nJrYZiQoP5zqJC/ZgmC2ylHGSSnsc24G9nUB9WuvX4TC4wbm8Khkp70WwquHpEpYALloBWHa513yei/6/L67R4+5Px2S3ylgkqM+E/JQHKXyn70ErZ23dGab6Z9ycRVikci8fV/6AuV2NQDtDE84WyEW5ygF7BMBVgNMQ0nGOW4/R5R0vV6yVZKVB5fpkHYsOh0DV+XR1vvKBYWY79nqucoVFerlIzFLrbLIeT9DluUSMvezdp9W61p0OPCGGrwaKrh7qcxptHwVxF066Ntl6NY2FimpG5/Dt3sVH6BbT7JLGFg3WTZiJIefxjoqR//0798CIeLbHmaPCYAwzQ5PxM/TOlmxiEbXvHNbX8bMmTDOU+WHpn3ZHmrYele5rGs7I/iPN898UXzYgYaRrI8hyWzVX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7Yt3fr/oc1Go/pCmNIMPWp8IT1b9u5Rc7YRUKOAZEGM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9XlnCm0oBrcudCf8uCU/x66Nl+FNAWaPrLsijeFL9iwBrmyq/dW5wz7T08sL5fLroiWfn6P9tFRD1w+bAnqSBBQekoY3TqxM+OmEZUw2bcOT88HypVbH1AGeKVNyJuysqZaRXC/U5qZfRoD5S0n+PDF/Gx3Mkqh+MOSK79xEyIJyn5xpIXayA5w/r74Gau+B5l09pYk5IWhxrHoE2z4gSHcy7nFSME0dL88I8RS64/ryVfy0wVLZMPxgBXR0btyFCt2Mb3sSu1qZdEMA0R/PXmzhWh9g9gTdPw9y2jhIcN0mfEzlQXrCNQkPkPj4PPKbzPc+1XlC0TxeVmnsS1icL5z+mgMxBxKfWH3JcQg+RUpPQYTF877kfPNeACj9FdldkNxDTPeGXJVTN3YnwxUTldJCQkAnrWk6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7Z+CMlsff4wA40vLBuJywK1QZOcK3hkO+v8+2HQqjmc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F3QowBWvJZV9FcucqjPCoOpcoyL5VML+5Awy/zzppfr7Col1VD+X0NFHfWRkh0pThDyhL3OmNSGl2hL9hgogqa2Js1fJKssJWLAUNN4cNlmaeN4QRTBb/UDSVhsO67HGtYecdnqhJitlnQAEG6Pvc2ZYgAPFpwGIaBj1qC/dH28yJIwEg6sN89rH8m89HrbEts0SFvJNVzAeQLJHQRW9gmci3A7sgvVhjTVEzm2BqshDnUYEBbhTYWbEPeEC6Boihq0ZM9WzLFiEauFhLx9l/w1fA3+8T4fhq0rnd/CfeQZvL8mlwZAzR7B1gDR3HtCnTNzlld1VnyLQUSl47J/s/VU/Wk9eHBhFD+3PaMUyBHVscO2hOmFmtwzKPYu/chHAYnEenEHi+C+8gFq0QKHqy+Ebb+3qvdfg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7ZEMDJdBEm061Cj6/GTJxk7Jvxnk+N/j4haqVwGBr44", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Tqnkkgb7omZZsj3dvrUtmw+yWeMjnL0jxY13kL5BrQWtgCJujQet3zEe9X1ZTYkMsS3xKM5hZ8i2y5xGBmmAg2dfq3t5Cf7nFN7ADLnaqnYuepoCMzYjugOboPRimKYntnlZQDSdUfQAOBIcIWqWRgbDr4obaPm0KiYMET6ZCbSKUUInXhrUsCJnsCklyFbqFJpAbeL8M4mBpy/0eGMLHDW+Qj37YOJL9o+kEPbKah+ZKGqMyZe3pBF1knq0wO8KEO4rEWJXBL5pVP4XfBaiCoWLvKg5YIJtH1pSGeDdNmCAx939FbqyisOKslAcO1rW1x3FjcJHCmirauJEbRZpFRXXEKAY7apxmGYCzJGpGMO9QaW9/rF1goYsXrxjvl28DhzcFlugmXq+gvicWWeZm/G2svj2S21h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7ZOkMd4Tgbp/bzg+ZmbdFFvj9TUrExRcz65yXDqLza8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hBwxz4ImIcuqRi1/Od3WUaMLuwSuPePMcMPqaWKv2UeGEEGddMY271dQiZXP707+EsmM7jvrgTmtCt9zBaOeDtXE3zrNj0dK7e82xAYIS75ZsciHCZDLYaUq9+8RoywfSIqzk5JhvXxjAnskkbXJ9bFqW6YK3u0JdR9ChWzCCkw/F0SZ0zDSuozcDUip3d0d1FG6xVDevyEDjjLvmLxkmhvcJbwdcyKeGlmAvHLcuHp8A6O89UZpKiV7sS03MwYcWY/PYQDlP/pi8AlWRLLrSM3VcmhqQ2CVZSnqF3AurRz1yV/1KHZMxjoxVmtw29bpoFtESzcS4qPv0/xVgbixEvd4UFGYsbW+cABJEuUNYB1xfXvcLDof922NtQe4g6BwMdzq3+cWeSCFPS3o+0LJFWNuGz9eyS9/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7ZebrytwwgxSzNdUrt6F03DgHPmalMK7mjGwPpPbx/Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LLNMBOejMWPWchu34JdBxKnbKJNrepFTVhph1cIqrapgfL2pUxIoPatg/DCFZ+5z9Eh0wPSx7eYd194JvSz4cP6vpKiUP7X5jmQDYc0P28JBub2wtOg7X8sw05gNap1RRZV7cE3XfBnnadTFQsL5/zgSSeuKeUPllV6xjpKJLrpDP8zT4hkrLpt6Pl8m6eH1gCvcDiHtNlgcF4Rg0rZSBTy1P+pxaxNerWZIMnVeDzUAeY6Iv0od0ZdwXQf7JEgoau8zis1tEGaW2DWlVlkfJrLhm8nCiam/crnTg6wJLN/qC8J38sVwZGwukzTWMUOUhHqCFKbglq/Y50v4u+dAHXkwl5SYacZQGqbUh5UJRNNgHeFJ+5B4CNc0o+ZitJ2FcZLr24VQ/wjRgL9RafNxkTy1x3llu63S", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7aCuJ5mDbHNsctXdTyfFWiyscsCaLM+E1nqvfmLzs3M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aViWpCmmmo+EqQt6OIy+HnxLOe3zzqRli1hN7svQNtxSDl435Azq+L94V4CsuT5hRM+oCoRgyIDHVtbJdRC/uo3dZK4ElehoGjeDqDihIacfYWNbjsDuDluMFXn8xeKs6IrO1mM40m2yKFn1iS8s5jlsKXXtl69FIy0evphFPVEXrEQKhriAAicD3GaZAcRr5W2YFlRdFWPQNrJmhKT+3INOBCpBBdqDdky9GFIoTIEkZ+NVXzJ5+0PTsEIt4olMq986ZBIDjS6Fw22f2/cdXnknGcbbM0m3vMu1NVBUWcQHD258UagIlrPnM6rUbd6TYmZYz27vVjdlkSURLGj87XSanUl4HmGvl4z3psxMwrxraGZVAAWPOX7f+FCiHivLv71MFpa/mbHztMLrb38KWLoCY4EDnIxB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7aSml36tM34CtctmqdWCPw2b7L3T84xAsc3cTa87oZU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bCMM20GSO/dc5o3SKhD8z9lENrVXGD9frc2C3vZe3EsC5dvLNnH04eb667NBpyxg6b0SxusTyficlXM8cAlvcYzC7WOS6QnSnJUyCnLGca/3y50IPN2yyLugPsQPgOfnM56yIB4SwEv5RomVLLtmpy9H0pcfg0FSXSyo9hFeAcrwEpAqRL0BX2ohHtdDMijkAo9Z/eS5qQyy6j/9D8jWmIdrxWMME0xZ+v6k+ygaSaAMPvkBWRXWZkurp2cKpgEA+hmBAatlsiojBbISbXKS+LBYtE2/74fY8/reAwUCCbEtz2DvpWcJuTEZu3HhpgwWxfjkeJvAWG9g1RHe9UeAtKIRiaDyksrYxsExoD3WDj1ekLNlSR8bHAEeA8eyedkJ4iIullL0mC248Gvu3siiErZu7bdqkX9J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7c9bBKolrS8WKZX5BSftIEO5kzgUYne3rG4MCzmLMng", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GSUmHXWmfHk5Fx1UDFchGJKz2jX6hhGVQ0gdWzHMpyPYkV+HbD4nnR5fMiPHT48XwvqYLYoDCJsa7tLV6btCt9k34vnhlaIBp2qnSRosi/d9X1oXGqbxvJcK3UTwo7/oY7+OFjncDspg36h8yKOOgcyFtzQHmoqSniwXVBvn6DVwVqHbs6msVLYDKYBBMPUlqy82jyCST7DydfPDuSFsRPCML4nMVGaQsPbZg9i3j0wgmOUDo6YxLE69j+wstnfVkwZ0ieY+NOsC3BYvvelRD7/mvGtA2lg9iVk9IE+2cJsnU87rJQ5iflNv7trxmPzk/IMkeMleFg/PF0ZgaD3T6EDPNRL0YOx+EcOSuKcm4zfvYOmxkpFVQj1tfI1mEz73jW4XiGxUagta5Jndn5NbTOwP6vn91KfA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7cmLajBJcJresK/kkpZWSypa6PguLuvuocvMi8FuVNQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VcNQsl3h5BJ3UsJZCmyczIq7yebgYv2/jeFkBVVu7k/TzJknOZvDWNu2fl/1vjc/Ttw05VtOhI3LzvxORISTgow7rIwEZHikt14TJiGgCH1oNZhfPTLvKiuRZBjHknzpsPWZDv+gxzq4aLq6WHHBUTJgxJ2/rVTVIhZ/IEyeJZECEiWaslXbt2raw7ai9XRD1i1bS2W3asFkRcuUODlf2VykY7x7y4uSLmUTB4aitpAX9bKFkcYuw+bd7A06KSkUCT5BUSZTG3FwkLzSU3AgWOpC7zRZqWEhZbYXMvkIm6KNez4JmOgCCdMYzcZNH3Y38UdlbqxaRShLgB9fX8dK2eThO+TRRJ3OjhvTuBXzGfTXdQ22FHRarS8qJvmifmtLBQnYQzki+f8Vo3oNzLK+B2icktTQu6Vu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7e53XGhLTiIAwkxTnn/zWGa1V1HfH4kqq95W/KZFrRk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gB+28Empq2vYVJy3BR/C5u+G3p8hmhCgJ1ciXHimPVX2Zmx4mXIeGm48iI4HiDD3VA0qBpPNNYJxSA6+fkuL813buULnRJMZedfV6iaRgWNceTCZuqixExkCDdty+eRfS6eYeolpGwEVaaJNcN4u+6/48sCx/MpzfBF0DbTqlEY+EBB3cH9TVBC4Yp6cEOjDtm4ozHVM+iUbKIuojhqzTHu+16QAc/oy1ZG8L/dSAL0YN2+GG4W3mqLS+iHR/Ls2ze8N5e9laXBfM65HtEOWEPfaHjH3FQe5GYdMvniRcsrZ4EfenJRHq7j7OEu9M2VAsGQ6CxfvOqTPzIBPsGfw1t+Eo1qf6hjCMywwd+5y8Lroj+mgPW6E/h7scS+tSGOx54O3133os+28pt0hDksE/p7KnTzKQp5a", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7eabRDHLw27j9pfn7hY4qlNbOt8iIimIP2HlYoyEA9E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LFCSu0DM4T5fIsR1yYA9Tvs0WPm/xtBor1Abnnfuyux1kzaot1Yj3E19oJOBH5bS+8iVRXvasLUrfybyAFsBHgosiBWHqMHl8jxXU6WTv9hTJpK0Vuyq2SdLvrbp3s7gt9xlBA7V29WlPiLkg3fO1u3TPjIrgbZ+7i8iI9GRHNbCSOEyYLQk2kMXBtwQgSjt/0N+gVWEA/uI6ONn1wAtmX/cXhFH4diGCnpWrwbEL3uPXZdsBp9Bd0Lqkq/qkgiTvfHHbwd2czLI5NV/NrDhZJwlKAdQZXP9VqGWmqUt0Gi+EveSy97C/qT6cS9EnPFcfbdOBNa/uttdblng3jj1ZrW+5GX/fa5Y1M+8G58FRo4vdrsAkCHGjBmCZK7UOc6FmXhbVGps6aLvx/XHu8l+4NuQ9j0K1uCe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7eqexMa9u3Q5sOYlawzHc8y3ZrUp5EB6XWOWYLSW3uc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FE9/tBnRcnSvUweTaTCk3tosYHWd4RhIJJPE+Yv/RNXvXdT3NtycwTkrf5Rkei4WZuPkcPLykwgUHwzW3lgCQ439jhxgtZhPexkIss5la6TuutUtm6ftiehN3q3H8ceWkg79FxLT7y3Aej4eodDhaUeOYDFQsRcivZXYM16BKOGra3BF0t3TLl1qMHkzN3Opsfdic+lSx4L0vDlTP7K8Ycyk8sZbUhriiHSypnBDvfb2EqpXz9x3SyXqaqdX+Yo10YAVN/gWjeBMAQNVrRIcKgD+TZxbKvAdBt6/JzFDAgE9YMH6bTlwEXN1JRVo805VsV2c5Q5LShioftl5a/n8hHCyb4lIP+osCSD3zK2YcjAkfvc1hv1ecK3ykf5T55Bjl8qvxwPtS/pI8RuRzZhSHbkPxeoZczue", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7eu334eW6YO9QrH8xbujB/Y17+lxIuqzuC7uH1YZbM4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NHNyfoAuzruQWy8GnqbIFcxyUxWHRbH7lchqovYFGPVJQ26Y6XJNrLHnmqMHpkIYYXC5rX/c6UxMD4YLl3dUV1sBOZ2/orsFxpWHsztHUs9b1GnfnEcVHfGr278W2c9cKjL4/ZqFjquWpU6YGxDp4M11rxbaKaaZ0IsyudLPIOC8zWQPv+zO0p2cbn10ZUHK74Sc0C+5d7yA74T2qw714AguXH6+kTQENsba2+9Rq4IUq01pyZy+5sERUTiE6RwEdjiG+2HLBVK+H6iFN/SsxRAdh3cFCdwrTYCGiQfBU6jNIG8Nwk62rXnVRP2voevn8X6Su41tjgudFyjHgqcTqrw4Ik1hCEADd5pR+TWEPwvsNg/0v7Q2yxNlLQJaOIrhFMjuE5lMsqEt9PNY2Dn+rnyyjzfNB9sw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7f+dN3VVeyyrGgJtEgagjsIs7a9KaoKpbcRR789oQO8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zcVedItK0gHt7uHNXDkCpiFxX7BFwt9/b7zfonvOMuWvY6lYMT5knbuSwuqPnum5/iOH0+8BP73Xrl2BebTVtRlYACK9hw1b7v70A849+QKsR6P/wuAM+TCW3t9jIjQlhWC3IHISjpl6+I4sBILO1PKr+LDyzyL4eBkRYh1ZC+Ql2JLC2JQw/NTEvGoXFc5LDzUDJSE8NyRQ5i5y0mDYvu5FvpugFL6SJ4WnmUxuMPdnHEqMVJm2Mi/E6yEfYkE4FXtqL4n+JCdE2gjAIPrczQWh2i8hzNqtbifw4OEJGXcAoU9wRzR3Yuqci06Mb4pEpzRJIQMRzuRs76SJr1EE8Qu0BebdOUHW8FHO4bncXxoYVNUsEgdZbVYubz0XsTYF9NgU7yj5NwCR0RKJdpUriZQXs6mPRUxW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7f8kUexa0C0elmgwqofzeZNFXoM+dUw8a1oS0dOYXiM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eflqfp5IBfvQcJHfFVVmbzjQT7fF+nNBhrGwd9LqCHnVgFdK+mfv0J7hK4dkIGo/aGShk5i0/Fe3Yv7IyPT1/NkSyGkWBnqit0arB/IWvlYUdkF4957i7FZQemAMDlabIn49/tcF2CxFhXtUYOhQzj89bUJW35v2520eDaEpxKlapwc/JQpf+jdzJdAQSUYX4RLYDIpsVn7N4iw2HmJp74G/h7NYJA+vDRnqfD917OkzklyPMfqfJvihk5jO334xbeIXpJWlSkeRtNqm90PszBR7S4+HVtSMVSdg/zKpKtoQxLMuBjE+aJJ9kYNzsdUFcUMiP8Gm4UGw8NC2lDIGDfs7Xq52oZmICOegM4fBtHEx2pNjvuKo0T4Hh5K7bP2Uqb0dKh+/Z8DwK0zfD6mA4Bzf4nRhu8Wd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7fnS16sC4aPJxPyw44szRVx2fp9zj8wlrYIKq0F4umU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Rro7UQI/rHCZCbu7sX3zWKQZDTRbNxq0uV2LK6iLvLTMQBX0JOuHJ1nAAVpuEwcGcpM+6ChlTZP5GbX9ozKUQIz4GGCPOix9VTp1DMvT9HPRX5ye0jNVxaVV5BqkQvIR3uqCiH5J8E259jWkc147jYOWo/I2gA7DS6vpaQattV6i2KJ4/aDaFn7ZYC5s/0yzkHjIu9m7ym7IM8cRDXgSv9iIS3KMjFei4tF5uVPFuE2WGkq0mkhrlnJfncQJTizLSh1JDqavk5Ck8D827/OAK8OUnMM1XQgBJnLq1ck4BSz+J54Vby76Oa5WZgWoHroM5gIQDnGexaVlnBkMy2c89W8OZsLMRYLvc4QZxPm1Njd7monwM2uJWQJAryIhrXEAno/sXO29AK6mOCUUFY/CMTLQIeibojhA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7hsJWeJ1VZFKH7lUlM6bbVfghtRqIo89zpHhPNACwIo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QX1ON0sfFsZTN+8KdIeUlBoHoIyuCssSN7w08XUOEIxzKqFvv+2KBYyilD3No00jfD9Ir3r8nylufzKho6VzjpIOJCiu5HAO7VQUBIbtrpLhl2Sx5c1X5bS7OS/GdkdmCF4PloGvf0LTEZqBBgvA4OPpjhHiDcBduW6/R1EfHYdkKzLez72Oo3dvJzQSjdFMbT/Is8E7wejf3VACqzpoWJgNaRW9aO0TdDoh3zZ+BP2hjUrVrtBUaDpEoWq3+dQrL/LGTllApD3HAvq1BWTcOHbhMnnsnK6Ed6gZDURxot//vIvTVMpB+f50zwN+8vD+dUnBPRrYf4QbqcwA8LCNvCAj0Il0Lwid4bduhyTbztsuiWDtrtYIny5AHq6x+kG3jczZzoLzqYBnC3B2aYmeXb5Ap34iDY1p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7ilwvaoQRvwQEy41AhoOMO2RKpS96WsMqwzpbgkXC2M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6IMxS4+2vM3aOTjGOy3b6XvT7E7O4pftFTSg7vlfBvfZ6vtE1YG2Y+4dnx9VT5U3ZeoFxrOCTW78ofBCaJ/T54D9p3sEU7Cc7S2NOeUfC6KhhhKAx1/i28nO5fsekf6iz1VJ6d8Ekzz01jiOcPzaz5wDNU0YxXByCmWyiHKdhwDW8XoFIWXTS+NwI9U5gcD6liEIdDkaIqiikIoRLx7F/WdqRF3jLGecKQFto+2c1excD8ooVQ0vgyNclHtN+l/gHbBKbo22/+bOxKl+FTc2Raxt2iQxENjSu1CqayKnqLs3zFnx1vzgny0MtxLIdfO/646mD1eUNFVUXioKYzJZPQN1tPSDB/eFk2huSXCjf3Nx9hyY+u9bhaje0cHyY1aNCpRHgu4kMKWVDn+C/Ggqi2tn1w4t5sOs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7mtPBury8aZkQy0T+85G9z6ZmHtBSf8ErtEvdSKtgc4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N8ZCog1KrVdtmQ/6ZobMgyR+ii7TdiRX1pOSYqy//R7VCgb626qCn0NG86STK2cXyhUyNpP9Emq1QmQoCDihNoFhiD02WEOMKaSc7Sj/B6ezjL2RWf1gtZen+vJha4tDUaafEdZvaiF3VeLqv9s/aKYF5eW4NRmA1HlWzvssYXJKGNQtQGPCbV0DIT7TSBLtgEwRGxAVIIf0fAob5ejGnJ2Wne4W/ZbtRTI/RAB34aOPSnKGonJtI1KxekEkvw1uRJAnZ9SwftcE3yD3HgLPHvmxCR4i4CYgDoUFn9dxvWvb48epMDoXF3TW0klmv5/7ty2fiJvukxLjhGh67nfPVBDoBjx4S3Rbcd5KWUVszD+DN/LGq1MocnEQeobf7UU28DWUR9AnHfW3otCUTczh6BL6AjH5ZXs9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7nhrGtBZqVHMnI0TxawptCTHYmau5XvNZ4CNRP5x4Bg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "63NIhDVRqpAjq3a+Cmu/GS4chd1ayxIMcX4D0wIGRV4VpnzenXlkHWem20QKVPEc7ZRlgN/ArZVAKmdJzTqEEHrfjez2ovOcbzkR5zq4J81cLeHyRKWpt/UHxq5SfKvw6AYrIqd02XQWDOG/kQV5DieDr8FIl2YnwAMOoxIGv77FHG7Jt5drTmk0Gg7zd4d2DI9qIpRv6BPzRbYGZZ4K+d1HzKGw8y2VyMoP+k1R5H5Gw5tFODpyRmgrvWRVk6mdyyEO7Cwcru+laJa05V0PPpm+RP4khCGUwEoU/ce2L1ubCw95tTmsww8U8s6ghaSPtsKhhfQmG9h29YJFhdOpzXvy1daT92e44RdnmcLPAL5th3ayb+lgY7JTIVcXGiOPhWQnye5DQ/ZEuUoTNkBgapuBG6539J/p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7of48RXH0zqUeq8VK5cF5EdS1AkjzI0zqexi9iTsE9w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fMSOUZqsBntVcNtMMmbEkJe1+Umm8J6BIsiUxcPW+GzTxd0j4GRNdYxhy2+Ih/T6xEe3+Xm0XYK4rFJKSZJY4OzEmWxB5c77wBqAkKSYXMmvwq6bzuGVgwh+J27rDJAVkfsqs5KfAiDUEdSHgh7H/HIhoInwHpRPnCRNb/ojh7GWt4uY9tG9K6kVTayPCoyhFYFJbBP2gdvJAz0DIaVXgpSLH0NYX0cQqB72sNOx3GKBvNvC5xEGG9Y8zidYvIkuj8k+L+mImBx3zlTqLnleCBOAls/Tm28efgdmp8XhsW6dyfOqV8kb4szWYb0+8uwYpi8MkY8JgW1ozr+t+R/ku3TndegTaUVLfVGc2+xGjX0FTWhOn1xScpAdaUbD3LluurHA7sfaxVjhwmKvwUict+iv4UjKyowm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7qW7HCSBQBVTKjzrP3mTRm4ipY01z8S9PIbb7usvESU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yuV0NzmDaugIeBf1hqfY4D5sMHe9JMgjw7frFtqwVqJx/IU6IKXPVW5SqZ/8D/H1Zb41tiVACmZjqrcbBB9pi4hr9UNhSnppLzKhrNritbpkW6EoRtq8fRNK5m7xgA41hb/QwHcLERmIGqEPjftObkbBAGmyOyDp+LOK6yPM9L0T1k08+EqzmJwkkWf4bx/3zw1trFDLsk8G++201ZEfnz1x4zlH0R6OZXRP19LJJppeafIF3DOFOMP3nRjjTRkD3aejOK6mBcss1cFT9aK8Kjw/KaIkS6NLCMefJOpKc1DeE8ZlsN1ME/0eWtCKxGXoigFWweXTtkN9ziHiNhqxjtbwQVHBonL7k51TxnvzWuEirotmXwrufslpvjXHemKAyXVaq30sloXAWmRg3wMsOu4+8vDuozAM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7qpK17J8YChR5FcLZbMZKt8p4uE2Dlb9cQVCkyKbTwU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vC67fqizCnLXu4CvgiY5cnDyxClBkutQMCMgirwq3VUBDT5vcoI3VWkOmpkfZovOyONCJTd3BfYztzppSyujPcmEj2gqg+oIIrkYUh4j1Fkt8WB3nBnktZjMcPfTTzc6gc22HulZ1sGmCOa4puCgGyFUBesocIt5DgQ9TyhbJjSoZcJRNu6ycGZirwOvgGGIm3iPHGvuFQYOXzA7m0MaP7y+LPZlNUvefcsyklkFKI+sE0ZG3LAZyYoHb0RgWwSB9XiJZ23P5Hcd3RFF9/Ximx8S8Z/qg1RHqjxcASK6H6MwaDp2/BVPXJKy2xk78jQYPg7dr1lQK5772qpd/HKyzi9ZqOWdNeUqiKknzcX5h+qJYlrKLkOEq0c3cjsqpr1cOUMCYAbV/8oGtbyibHNJdDlO2Fyl1xBC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7rop7eMp1imYSaBsf8oGz+2XxR/SH8WKUOm7Jo9Txu8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1VFI2saajcYrFI/G9P6bokNwnzq+IYPn96H0ZvoSDmmeb6NSdq1BZmSPCIK2BLRNhl/y8k9kXQmopcRb6rA8qkAJvEBXgu/Eqj2GxSZsqrYPDTN7QBSbx3YyIlyniecg5Zi9+upJ5ryM2jhqIYXKdf2Fi3b1Eutr+TgnqB0zgC55f8pqJBQ+DwGLDaYlrcGJWWxGxta2BEtDdyR+uQvo8JMdtWbMh/w2/vvLT/8ZM1DQuPmt03JD2ZK55reATEvkwCzdkg+DPlX/nkZbcpK/wlSarWNN1yS+TABtvf+Izs4IHO+ogHtkMC3p2mFZA+gj0XDhXBMK/ZgC5lO2mVijDJaKp1zvshodlwb0QfuMLGhjzx7DJdzggTytTsZpF5t4yInQWu1F4H5RNDDOwoG+AOq/Rkjdfadn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7u0z2WtREvAE8t5Dtl+i7xUL9aQHCWS9Qi53vA7S3EY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ugGP63yMUlaAlze2jDe6r/Ef3Os1u5FKqkL8R9nk22fqtifT5y/K6V/+/bcz0u2P+Hm+jL1urSSKm8E6X6C38x4gC5Qg9LUDf4RC3ba9r2YYYbO8J67sAPR/Q2wz7GGMmQN88izxiCCoI9VvZ49HAE+83T+cymJYorFftp+in2u2RcP28UnaastrFelbI3rejcFEDEjhmg5MakVTab2fmMMAKSKkUPOOZpQyxszEPPBlrF0Ocnvbt/rmNI7RMwDpM+hW/7Z01gck4KXdHOIqziwEasyNNwtP6SgkTt5piXZxpbMbl4UbP0UhqlfjLy1a8LHORhpPMsOlCFj3Ni0A7yuhte5TfiqFu1XmUxiVjvMmnWy8Dq1np3GtZaLzEdShBr9aMzESEY6uP4Fj9EM78/bis5A542m5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7uDczuRqqPg7yM0j6VVvlQ/NY3higZrFInHpnI3h+ZM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pdZ88kk+mmvshxdNploFeuh694QOfUcRpmt4g8tMOwDggIEHQTZgqj+QtHEUd0JSGMD5VDmLpbjTDgjouJidqiH3ePFSN9BgC1nJc/prC36vr1geLmgOrzxgqLGwEg50EzkrxK8IDJx46ByRXZaOQ3p9M9yNwbHJPguzf237lbRUjNh+HH+jpSvIAuu008B6u/y64wRNnlyX60GX+RxyS9UIXRyrsstJGpd+eLglXqem1/QWMFvGCiCzmTOyfII6nrvZl1krtDvfmnonQOWL5WJ3baT6KPuVvmita/10wrCQiUrw+gvf4bXBTB4SdX6S+Kpe8mqD4SMwZnqYQMKf/9dAsWC5UCCn8Jk2VG0uTDszhFVKk531q10lgWHeYluKz4M17GjVzxhDi8LHpJFBkzSXXrl3jQS9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7uxwinqz1vdAkdRQJxEoYOwcQV0Yz+M/S8uq1rYk7aY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aD/UqWMhHhGokdPf1qRb+tL4EguTUhAvmsRgzD+25UQALKk3RZzpmeihyQ1M8j1Lwfb8aKdVDwYGeBUYAQ4vMDY0Ts1xNKvS11r4LTwn4IYaXCe5TyrWBf833blXNCKvVHoOHVU0/xJW2GS5Il7E7p2u86pHTpYYecIfQV5q4f1QkR7faEs5HAFMUigCP1n58b2StwzTp8QY+BddjR7qcpjiUN1sGPbsmnHzL9m6WCx58fX8I91/en4ULdZACuMWInLzNl7uEZKqYhcfCuQ+CbnXjfrNlqcHDWIt3yh17dKfHZfzDt6Xyugwso8dXgjjgOgrkbKLPsB0RlcJHTqEzjIOjMkCvXJjq8dK9Fg/rAH4KOabkgjuOgqtQaFI9k99OKawyENSeJ51ksXZw5HsuiYu/VIa+wq6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7vIkGpPgdhzoiCAvfe4/UjXwfhZNShMsEVE/tc9hNtg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Id/NbUZspMJYg8NuBO1lf0YTg8mn8fUhXbV4B5ZbYraqROR+ErkSsvPFRKYTSmOncDKdkxdZ6jVW1jvygf8hA1VUDcRvHWZ9Fvd3kTM+zGCrCURelRmkSkgPxZjeUc2NgQSK5My9y7dRhpx3mBwHcPYdEsYZXNtpdPRZtIcCK8NjncjLCt0cel+MhuN1FHgsygcP8E4doa3xgk7S0H2L9vX5fMBwQVWIg/nnvC/ZjNILnHWEueJiatOePTRnPlI0zInnt6/iKAPmY4W+OIW6jXMzujY/jcXJBRbTVcO0I2Jl7CcsrIyx5/nhtPA8iU7j1HPxMPl/qUxdHx6eeV1fDkmBgj8eihyY5/97ihA6pCFOamDOKwfnWW7wRpA+Qlnoj0n8fOrLBcHpEstL+frmY3EvAv0vdDqb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7yj2SsEESDx+NGQeN5h9XJzu77wS1HkoFwJGxyrVJ/c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YVfbA0JSk7pItZe8WoFR6mvTeYmPdGEjZaa4ZEe1G68pwM7q82tV7x1Rt2nBk+/aSfdKn9rbVNlMpz4pg9rrwLoNiHnRBkqPa9jqGlVA9lK4QQ49BJISSGZv1gdp2hIO3TNV9KkH+inFA5CX3TecLNS6HrC8m8eMexzGnDBLl2kSePDNat+4sItmwNq4gYWGz3xS0BnpN7DYKJfyqWGGAzX+LWC8BU57kKKvasei4RAUqlKS4sUC5rF6jlWBACUwAqhr6LTX0IGc2eo653GEV0R8v2QR6PLbm1sH1hOeA86aD3LXJ/a1O7m7FrUYfWJzUdvBzkdv5nSvF/jfhI8WRQyz7oTr7gWT4qkVYrVydEz/ZGaselk47mOfuqaYbVzC9+YP09wL4aoooXZX48NSJ9eE8FlIP4rN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "7zb+a8+Q5JrS3Pe9y09ADPuupNfnuvDBYiQ+O14sYO0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+6q2NTb4Xi+NCRh2RgCMsX02zVujHStt9fIuI/cu4uN7IavCYKMxIYnT6sDcPReqOuSJXhUjsMQGr4R3lJW7+a2YWUCNVEbIDnEfIF8QxyYaRV/2vOQJlyZ/AvTjPz8HVudrilVVPTUxl5AxUso258orkhcddbnU+skQu0pT0xpCzzj4sxWgkZE/QDnzhzV/PUHxPLDGTbL9bj0d75rDvtFW+WzT7YKgRwApfVzYU9Vmrs0uHz3KnxMIluHEAOeSK4r1q5mlmxzIDrWolH5RFO0jS9dRcIGQotk5EZTlhUm6JR9EeH430yxmMEo8OVXNduEzY+taBG2ClO3JF/Lwmd+Yx9R7ykBQrArRQYoQdC01l3sWHU9tBCO/O7j3cGPBIZkE6DMk4hnDfNv6cjr36XflAnvdYjG0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8/b2CqShVl9RyweNR2avWkoTqekt2Rp01CiTfeAICvk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UCCQ2ji6bzTabPxhStTUD/G8Elx2KU8W4hCv4aOBDlIqNaRxjOC97ddJD8UjR8mbBBeipTVldj/WVcfcCHsdBmWbIW8l3qDI65Yv/tfuiBugL4YkNaRQoJmPTBbFIypEaxzLhuKax0Y9m4HT6m9uoC1Y106aY3I3+LIV5z0bTfgmA3n7pTDfP2v4BAUTlvvF2aHXoQnzsnfhKbonSVfV62uyODScKnDVzBMBnMvF5K0PV6r4VLuoQ8RFcFSsHPY/l1dz5xUFG2/Lt3qmRfw7DjROLSyYES7fYlabOuH5jbCGTjnISnjy8wUo4/PkJGPz33s5lrNGkpp/huQbm6MSJKbetu13HmNnTgyn+ivtk5d0qkHm/uTrpvv0s83Wk2kEeoOp63znImc7mpz3WACkG6T4iznf6TSL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "81UR3MUlf4a+lX4COOcqJNdkZ0/ZTpEyXg//ysefR6U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SF8iJ3stYMtfpibPbBHD6FcqG1fxQ7TtxtqSI3j01kZJsH2tXIQ97X0zhRUDknMsNVdpaLjKeQ0dh6oIiuIcYjex1G0vqczV+rvTDG7fzCEd3H+JXMm54C8e8W9cRkW1jcmX+9LwlTMLPM0OdCnzQLyXSW2fICdAv3dJWpTbLrTrmlT2JL44zKryfQZjM0/G8jQoJZu20f6Br2dUM9srMpwnAKYrx5SDSM3J5EkRzO5omE2P+qx9C8ihtupvqTgQrLYvI93gxkJRBKLPemJKHu6jVyQ0dlYAploaOsO3ZA9lD8B+RQYi15JzVCDVUJTZ60bQrkW0Ub5beIIKGfQB5dPtZQW72xmyL6K87A4E3QDSL4REhsei6RSUTeClpxnE8WiC/Z6lwDZK5pJYszxdQRAlLFTRm7eZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "83PondS9NgOTtl3XVQpn/08b8GQtqZ52G6OPARd4n9k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TN3IXcvJI9pFW3mTYsyjCjq0lziZ033inaAv3HDo1DM2PcJ+P5Amvhy0x5biJkoVtll2brGftVj9C5AZhmM5lEmOwbsK7ZfgptmpHDfkyXTAl5COfBiPX9ukZMJw3nF3W5t0kXrPpY7Hkc0uIZuwa3TKJ7mBTqML84mWHaWMETzxqJyncS3VzrMMThAk3xwZ588USIIefazuaPqL+lOBEM2aLe4YCBvzqgZe/kx3ot6vS5+JL/p2wV7CxIrmt3crk2xaH9QVEUFeyjG4CvotMsTKiFZCFAXyi4uEgI6zd5RNY8UmyU6F3B9OEDlwq5k2QEaQIsSReDfqHf4eQcnJSLFFLtGi+4N56+meF4eVVdG/bBahpHtEgsaz+0O3qg7NUsjDkJtCQ1+arbBFLOf7uLJ2bFDWrJZF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "83RCjRRumylPAvDexdVreb9ROMLxbyy/HDA+Do3YoCs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cMHNl5v61WmMVi+BVY8WpVmq1nlOzfH7L3lO1tUKEzycfX7dlS106TN9itlaSpNA9HSYO8TaIDXpCxOx3lYuybVjlEdNgz2OK9bQB49xL8f7gtEB1EOFVO4sd82XBGaOppEWVwNsVU2uGbWfViqR4BATTvdpnnbscu7psO6wjpnhl5CULqf8MN9P1I02+VvQbswgbLbx0VgkqsW5l/QXPmzAzjQ4x9ZTIn2mg6OzCnxfNnNnIw8T+Vr7d3xwkA8C6WvFgNsryEmJa5+Nxk26haMXdKGXn+ydl9lrvbMCu4aI3uvCkDF0wn3etaIZE1HPepODNoc9Y++Exl/K9pyu7aEs/tcPu3RILDItumg3jStwpjZML/zogOQ0M7NAkZV4dVi27AfRj0Qu7lH+3lHDok+KQ1AL4ut6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "83YwGbtl68NncKhi45BH0vWX96QVFOpYzBjTEuDcr7E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oBl7unmMKH3aKnDbIBS2YBotYxC27/oFcGHiwTM9d+Biqi/VR54BmW6PnBFlVNYesgiZ7L+mJecMAvdksfH54vqC4wh5M4rh9Stwisqd6EN0EaY6gEAfPO9rWOIU4jrxWGTU9LolBzwyQ5NU4rVj7csZfFJYfIEdms5j+FLT+tNvOc5GHuwVohytL6nMYmVb5rNRtakGlEofstVg8XcXlmw8q6opAaDmLcOGynFZsF1YplcEy0X3Y13w2fFYgBamTxnho+bWI7kH/IKrmC90W38U+lMbQKwJ/sATPK2FBbUb0TmZfqPY970ASB4Sp0B7Ad/ySXmxu31oRPAG3/hBtTwCp2zlg1lIYwXMcpdeGnvcegngh/jH2r6TUdEteHk3SvjYUSXurL2Vfz/vXVzIcH+SWkB6B546", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "84nUi6cKOxytaXiHttuxhuXcRZlpQGDs35GcZARKzdQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "svBtyVAyCIOHIKAE/9gc0F+4wowfk8+ICrH0RZyHoHo0Gyi77Kpu3XBKrVqurw6mGqzF94Ff86LA0jck5H/CNsIVlKq1SRs6/bJ/M4iI3yOkBi43li24lnu8m4t+BKeTBX/cV1LDGm6xjRmg26epzzjNnocbbdCrKDrUQw4qjhhLIN7E9aO8VW/e90OwUTrImQJCQuJKAW8qSODVJ8tjX1mhQoVHdbEHJyteG5AYtjzkqVbc0TVKXzkDOFJhgDKrNaGjSflalGaYxRolvwTZ/cXNLd/UZX4IJr0mMqNE/La4Ou48AhuFb18xbRlpaJAn0OfYyfBYFNvcbSdg8tcoPtfw38lsc643bodGQz2M7dMwSKcr8IZvLY/F/PS6s6CXD0uePF7tqCIxICf+FiE0tCvr43mt0iX9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "858USEHMl/rrt8gerXjN47+xqUv9U14BSimVN6FzfXU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6+XYo4w/Urbz0Z6mdD0D2/MV71n4xcdJBcsSTGEA47pTBYcwZoU0Pgf9LMxiL6Hvo0bZBL5WCwSmS87k94Nt6tcz1PjNoXum+bGEqRzNU8tFcycncymC71vkJjbvgNmkSpZKUgzqFpNjkT7snOwL1UTlj9JXgmQEKqLH+Cu++CEyZNGOpFkCCmiVSYDjQzS0EzkGLOqXuAxFzceE194jnu3dyoZuYD1PeXGd17lbAG1GTtKWxQolvtjK1eI+gf/dCCRZLQyktIHnT4g/K6doH5urCzu3FdjQ8bjRxoEk/sGhUXL9azrDNKLtgkrVMIzycyWUqJZ7HdvGwJmHmRpz5/fbRtI1iq8Tjoy9aS2nwjYC2cpZ37W35QhG0HQMqyzEDTcOLoJASm83OUz6kiWZ1E20FMWyVERv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "85hb61NE49c1apN55A/yZSIkOAS/GXJAAhGXdWZ7Wbk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "obJ/l38Y9DrlYWUFnP3WFkPweore+nVYiSrqEAW34CjmkBtM4HjDykzV4Gv2wl29xq/yZOkhKfKv+oqLF0O+yf948zaUknCQhey6TLz+Db/s4cM2FmD/h0qpKFXXsszNx7dYcLuQ7WUxJrd88EHFZxqrTTD4UreaRGm7qcV69bGvJnJjkYizYtXSwVrI3wN7yf+BEluWAH5NmOKi+h3VS6IUycckjCgls/ugzqUC3yfMovOYIkMtf6HRGe5DLnX1/tEBZZnJMAVRp4xY9+pumcPduUF+4pL3hHPZnUnBJkKxEHXFhJsNrCpAbatewCE7zLfgV0VqQPCwXHW/Rwz7QdnVE3JxWuwoVU7N3A5NrSqC29OORvGbmPM6CNb9SgaloXmHOhklOzloS+QpozusOngaXYuWIagu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "866bcAKI1Bs7TrHbPc6YzcZLK7k8Im8MA1gIWSHrQSM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "waWQLidpPJAe7WHrKI370lxdG96D+PDYpV4HKa/WWXGSJ7QkeWhPNh6xG3JwZ2TcjoDB2Sl7ntvMTPwS0PLsIBaVQHxBFPbP4x5t4LU3HvHDwHvbpFsYvh5Vt5lXu2gLZetXjWxRfLLviSL3eAbkMnVN16uyQReowooEbZLzij7yNhYiB5H/YUVRRXYLddoyDJjDZfgjmriHprjoOzSZYAcQ5OW/p5w1p6ybhHSESRPKkTcEUaHU7VQKiNgnYIyQOmfadshYSSG0Ka9OIHMN2fNv32m1VghGu8uT/+b1XtL2tjsNRczBwSzMd9uS3whENsAaNNSaa8o1pZAdFKPGbtF84kw8+JI5UGAmReMnFUUj6l0Xft+zwoZIJ9EcdrPXqh67KO/+FKrT8gWlteubP22JDF3SmA73", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "86bNgWq3YsJBe8PBIh8fWyPn5+VzeKVJxkG1ksQyANM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "z1y7Pue9d40VKucGzPNgFVIf6f+GS4delVPby8WEHlbH8oSMcRm82tP799ZfdRGebii9qEiav21YiheFB50GjRfUJO3C5oGPWfDgVyJgzSl97BuJJmUweG0+9nbItWqKl3szE9J6vo9jvvzrB2hXit7n7TTFPK9AiqvNv9+XW1FF7z9QobKMXKu8X1JHLdVP/3x9UfbRmSAdAO0s1TiFqUhLw0NnxQsAQkPA/Hi4UveVkcN+dR3C9PBF8J1A29c4Nh7pb8wLNArv+C7oPKH6d3vJ4gJe4L09i8Bmh1tDGdcYoDFSKQH/nKV0cAPm4dBZ6PEzOrDTTIt92IUKTiiPRR85zCjtTdMoenaygXhyCAFLK+BBdwc0CvTN7UouFu11hOz264bquEsPd3pIH2enpvJmocuYtkW5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "87K2pBWrwG0CjeU/votegdrAMgLCwjZHmudnoroNgcA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4Jh6b6BLO7PBbuleE8+l0IyRhC9ipynPXi+oAslOwqVCGYr9z9UWinw8wfxjEKoiH2Jy+Zz+7V89wkekW10qKgztiBBhdJRGF8MokNwoYjeGv1a5PB+ZpKc1Wk7zuDbIbp/uYWVSwYbqB4lC+rpHAOHcB5GdbpJQvKDzH9kBWwtkFYj0oVVSMf/1VE3cHwvR2KJjuNqKvf29Iq7iA94bTUpoFbZgEK+efT6C7FB3PaX06XuWHIUIQ8SZtFu9SSaTjQnlylOhAObTCylwzdVBHvPm2c0aBPgmVxMep0Wmej2xRHT/Dh8lBhbpgE1sjcwRVDVZDfpaK7siyjSB/X3PtCwzJWcfIQXm6kpdou7RmnPV05V7D+veqM5c7+JQKF+OR4IvE1vT/paLZQgDSqqHen61prDz+TDU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "88cSU1jZWvE/Uw4X9kkPbmBfbGV6ESCOYw0CHVMGWzY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9pRC1+eNdIojA/+rWp4teWlJtZNtRPdCR9Jb5mk9Xw/vfgDRUCtB9rftYW3wz7uUM2i/X7Wqx2WswjpfnLMLzQsJfUICPFX14nDJLWx52zIM5pctX6EAlPJziU3LScJEbo4DmCod/4Zgz10Q7vpT/ai6JL71buMdavUmROaqZxfVB//vi/jWTfkG6veD72QLiRCq5ObkT8+Xos0N8QdmFvJC8ZkrnmwzCLWzCukoavOzn5ClFqmAV6/11+btZeJ/4buktG6S5Ec2r1FVRblKbp3O5I9DWwIGpVXUrgyuwfbQmpB/CjOxuflAURMP9sMTmisYsyXQV+iflXyb1sUiOrBySqTS2bZq0GeA3dO8twgpjBXgYFzL9SEy6FbaA0DuCA40EbX6N4Emh3NSoMweA2BwwJVFJjq8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "89EPeq6fnf02CFUO8Hu8wwCrGXXL5tjyuBwpMQT04p8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/913rtBaGp7m9tr0/G+1M14/73uA99I82lVmDHpfZ2QR2EoWkBA9FRJQnT7WN4WrzyLYaF2SbfiWytG3Uba0RfzXNyBMVS1GbjMJ3lbsSjdw995ru5JGnVgwA1NYE3UsGdvfl4AMAktw7IzWWileZvWlQy5pm7EfcdH7ehGSrmVV3gFYWht1kGUAmWqnQLLFPucYtu3CDhmjTv11Rre5g2WSX6yauNKRZi8URUxVFHAEiNAWNXTpPtiA46psoxR54NrQtekqh6eFLvfDeytEgiqit9eZbefU6NIU4OrthWvV97SuMwl/qcpeLngCwaysMwHzDQzyRxVGsbgoA42kZ8e6leWCCYlY3yQGnt/jyyRIeU5MkJkN2ehTA0mtWZ+P3pY0amWUck8SpN/bIuOmA8x3TRCEJlCI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8B7eZ2Rxu0e0MZKJf4u0F2/2D7fO8O7VmEN3/NVWhuI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "osYnN7A+dpHdLlO6KeJyjSim9m7Kf4XyNt35R8sBHi7hxo6EbdmQT0MOgByzFsZFhvOY5GaK3N/rbUHfpl05Doe8hszegsHngVVv2c9Tj8esFqxCZHoJwZPQmzbL9QbO/Eu219+Scpz916EAyHYYUYPrJdP7qygJHMaaF5DFjkciod+CyGiVODccfQtHUCKiY4Dyc5qPwjwhPAhtmEyCvqO21iAOQqgyVU6bP47kxghCAShQ4tb1wTxweqR2hPvBTjqkBjRc0p3maNI14jrTMEqvbtUsJh8n3q3M1gwE7AA46xCd30KQV+47SZFKJMnOc0RAd5yJ8/NdlZP3uG+8stFuSdEeCemKw8DcJUQVdJ1NCZMtQ9ysgOKFii2C/3TUANvQIunV6ktR6qE/16Xilgi8aBH+h1JJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8Bt8ORv0NOvSCY3vZwtMJfY76shVupHUKLm4O2XRuyI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "777IXGv2BHdI2EJaF1JX6mQ5emmSd5PPCIxOPn/9e9WkkECY5vBNfdB1tUhWzIz7nW2bp4LZv0AtrzTq+e+6679vxRBXFjYhEuts1ToAxnfOHTuwwrm2gbb0T3l5UFY07OoUi0+WuED9CK1Dp4oI/Dr06LdTj/TK4JfcoaJ996yVKrCjO2TEp/tTLVziQqZe+I3vRiCtW3ST8T9bZhsuI5h7Pi1CD+Nh/WmjDtslk6YBxx4ELuPfQCrJeRgfwzTM9fJPrW0nmDiPzQeW5Y/7SS5yiklCaaYUGkwH+ECv5yUjL0SCTFiimxXgJlCqxGsWVbnKCb/jJdxIXQM2fUJCfvNwwQ/n1dzPdi3q22UUjMPlTYQ3uYLS4n3ujmGtgnjq09crAu8XGPPtU9umWh8zvOOV0+UU/wqA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8C/HrAQry0ks2NlLdAI+BaA4LWFWQbKl2l+xqAomUyk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pWzWGiMmO6vZE30QCJeIXq+6BOXg9EwiN2xw/kkLGYTQTiiZ5r95zCcCcHzngviU+HkNZUla+PzAJ/Nj2fB5dc2cRYOXPw7prKZ8NBX3xZc+KENmPh/RCUrvMr7EqzfLc9J273mMxz1urdfGRixcSrPfpirHQsZ9A4egSviQCCg4kLvu88XTXQjrwPOBRjeWv05FfaTPPmBT/4h5oqj0w7+rQaF8qH4PM3PNppE6rsMGpKRuzEGtNIah0FNBDK04iKHMAgGz8zejAtcgyKVaxLa+X0yWndlA022QWVoyaoMC0LZAAWI2QcshhXGb2FUxy7gsAgjAR4GbD5x0v/J1M247JNwphdPLlkmNaA/2D9gGrchuZxpKCDoMGOwW0vyVRJL77PQf6DqXCn6u0IvJ6yEK+AZxyTiA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8CKaahqYK+Y+SNgVCNV65jhfsa/rrORFzDsPN6sMaig", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Az/5iLd7kpsZEx9oiUN3vUOr4Vo8bkkp1cUDxnJiw0KIgsk7Hd+oa9rxyVdcYpkycmY6crSsyI7b4K4SD6HYkvNoCr23p4jKh1WTBKnbSvu34XiE+rGwJyUraAP3/ioTezT/7i3adLb48FNcQz9iP95iLMmk+vnodipwUCxTn6grgMYlzDSbzFcJ5++C5FDSj5Yggyg1KlQ52gJqxhYY3M1zAbttEkrEGf2c418DCxNdYYHdA9ZkIAcRIaJ3PaVnAtZxNZwmRoYTDuD3/btpvUrPIObBJevM0s6dgoI1dpgaYy4B2wZa8F5WoQ1h16reMDMqe8t1Dh+HHNKc/pF32WoaDuwZ/G3zplvgK4xJGJzEtTa3UrmE91ktsYJjwZk4jTroIIiCUrQBJnLM/6vE6MSdBheeSRDd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8E9VFVFiyz8l8wYpM+rKmJBBlQQ2W1o1p0HCaNb4Hmo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "woFttmTIplF641BH3Uwpe1neqShqcp8j4DvzI7lp7SXHa6PxgaXws9HAwrnIlunn92ULq7BzrZfc7l26lBeXer13mA1JUok5PnkXAy/7Jwew/pX+MCBke6/feO0JLkR7gOJyhpHe1I2LZ/n3PfYGUOYYXQPIXSuC+uHE/aVSslu0HIGnJVSlrqKDEo39TYJ6Aw0N7Qxn5G0hNWGfNFUGExpykpKNs0iuus4KRSKtuSCwkA/0U0o0egAOQ/3Oe8Mw/eidWXJHjWELKA/ULpr0hF+EkFEFhZ5WaCYFNO/5W+4DlI++BsKNzRfyvn4vZsFFcf0lbd17w1cHOvC3I73f5IbzNHsTHCFxRDC4pM5TUm2MVmQalM+DyseAd66YZEyhCxpEU3iI90+GFHNQkYt82LRUqteMNO27", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8ED1/IwJXVuCDWA0pbeQ4xCoEk+q/EKlBU479XvfJ+U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X9d4y7Ky8roUFEquDEHxm03ssl72WHxALX3f7/HkYil+so7S4Rq18IHjfQm5j4F8QTlAEToIC29EnA4ESfoxJYP9xCu/uFG2hqQRNuniR5UiNyeSJRSGzRI/Pg7BlKo8mb9Ot4QwXg2OXmxLSnSJP/P5Pdad+aFilLxdZKmiZe2OTXarZBCfWNmSp5UT5PpMOElUVAvHFnqqW5z+/gaFIaX6eBy2Vi1d54hYf6quPfngZdBKoycinov57OuKb8QWadKlPRtvsbwUuLtJnXj9prn3f9E9NromJdGSb+oeCTAPUP4gqHKYYlBIwi2ep8lc7vXDv9uH4mPu5/4iOLrejSgBB5Q+igzcppexvTHm3weY6v0XetapH9PL3cjjAnDstXyjyb/Ai7JNj1q3tXBdr+3yOoZnzHHM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8EpByTtpSkus1zsnMfNwfMEcL7A3LQ2a6IvlOEM8mi0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VH0Kx9MO4s6p/FknxM6F89you3IRZts7ZmqBbYX18nct/+wTLIIvJWjzB8Xy6hR6aZbPGDWlNatEKBqnCKjaCE5/dR5mJb9ZKDAwjohdmCncOsh/XuRaOIFWfjUPlvRZse3yc6KaZRqAbK16NN7fIzHcvJT5DXccnP36cWva1I+KFS+KPgzxhjVgqZOr4fTi6RMLWr6CpbZ9bV+s1sFHcvHlR1G7LNQRJ//uPb19YjA6pFAnLYlCJkUJuVXuqO9D4iAxmGZQKfXbwDBUItOm5FpRE51F5mNrblNVFj0eiVZPtSNlT0e9iLdWUS/dvSAzluRuOCKQ75hkinJqBR4z57ceAGPNszErMpiBuSZtZk1Jh90l5/64kFSVohMO57yZe/hPIen74rhRafGBAzQZZ3FCgMR8w/Ic", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8F1FCOiMCNL0pifcpOF9xsGXnVqEt40TgFBvulgg0kk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MWqG7znPmmDx5275mfgNVMHN/ajig8bw6S1KZ1ZSmEbUjcMn57cslZ/LBd2ZeJJPC0iKnv4AYSmEuVyQ+5mrMv4il/PhPAyPhFbVInJZy1cnagAuQLfYQ3UiXs5AhLuXQigIbzzsjHCLIlqC+fBdTXkX3xWdGwibgBf1+wZBAXodOU83/Tdb2+Y8huulZoB2nBDbg9sPh1I4/Fg9fXjsq5VAiMaJTuPVt0aCLZXYeC2iNpUaWFHZ7n5mDLac4rFJ732kP0ytbHCkz2S3sM9d7IB7VWY3c3sS3B9eDqpPEB+WeAlrDMo42+4yyEFOGdlQdsPCNTEBGkbwp1M/xglnTS1OegExPqFrIHBTkLJSa9E07xQ5/XJW8iI5+Iqwcr/WyEyHXj45g1/UiSQXOEVZb26ZB9nI0A3/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8IYfc9KZ2XqaU+5kkedl2C5a8jY9GupdVQobPzFX8ok", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8I713k3SLYroDCZDgFzR4Rcsq80zbmNwp34TXOjunoSRKIJYZthQGbbD1mUZPRbuO9YApOSydrkQVEH38fTiH7lsEz/+BLuc30v7d9UfYJ9wsqFWanww1CaSr4kVJWqlQd2seJoNcU11cn8dY9AhoSV0LUZbEdnuuVeC6XJ1Ib1hPfPDR6C0Bmc75hKL4ypGn6mHCACbg4wxUw9Jq8gP8vAWp2WR0855zhuD8EwaPD69l9Qx6EJWLZYhDNPIYbHHSihFtRpFfgPMcpHl9dDzt0DVmjpOgPiVyR1l3Uu/fsEtEEwWYonQfZrn3GhLaDHOtnAhLJGD6mu6SCQysHohQij0C9tgYy1xRxlcRi/RSwJ1H4Z30IVXxMmwzIkCevS1tUkBDE2j7I1EIC+cRtBvCxr4OBzf7aTC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8IyoKDwOE6YS1VlxZ11GzGeebqX22aaFVA2VVNWJAfA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j9xGjkMmZ8iQR5J5lESbBmF6zCZw2aY/6HFlh6BK8Wkyu6ZkV0J+LRimZ58UHpAs0QlzCj5IgVEVKBrT4APsl+uOh5rzzEpbXrSWsIxHyBxjiha7RlRvH1vnsBuJnY19P1nu68xxXn4D1Z3RBiR0puzqmEm5z6DBgfV/S4tv+cXtALcoMeGXaD+oxJqYKVuUBs3uJNnD6BOpBluueMAdIys4v+DLCWlp3fmJM9R7McHOIwhm5Ahpx+GETY1+ibtSQ3AqZOfeAAk6IjBylEFmLpZ/H1d3Ta95FZLXx3uYVNeTVstFI/y+KV7AbpLvfdx4POclELvhch5D0R4o4/nIJIM76Rqk8hlTbYesf8Pxl4GnA5xsPqS5yqWXkNSMpJonOqcy6UCSwJqXmyJfelGH2AI/T6da6gOE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8Jo9+TWyMXw+yL6Bd0+GjDGJf/UHV/OYFykqs+4U7KY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "899rs8tnprhECmbCiOeI2psu5NQ+8aQwiXmp9NRiUXvOOBTFPU3Ov11VAX3SrQuH8EaUaBoZWmL0S4tER5LCElZ7fKgGOIS19A+8Js91tI4KqLyJRJnx0E31Wc/r/yoI/fbhIyluPhLrdfQmQHrkeqSdIerHc5TAHZiLjhC/8hDVDLyIE8A0GyJscBZKVjs7funCrdbM5YhzTU4KPPTgZW+pgldYjrBpKGKfbqnJUxP4ryt0FYXDgP9kSaYKnNhNtBuIBWYO68ZIGkgu6/bU28WxeW9UJv/qvWYrAW3uZ5tWWqJUD20eNZpftv9wWdwQBGDOG6TMOCrx/NabkX3iwDknu+/PUuXam0qwcQOaedT2Y27mfqaTdxRNbhIZ+BCDe0ibxRQ/3ldkVEs9YdJEJ7Y5OYdOiZFa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8KEioi+g/m6QkFfdUh5uHXt+G50aTomkIK95vduG0/I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "H7GPdQ6fQeeS/sEmrqxraKkZHrKniEEPgcPEpdDhTZ9/h1rWWe32flKIJhd1LoBFXWSBIO+9yMTqJAp62ZI2qJK1xMJQixv24iNIEFbnge2XsFjObdGzLfM/OAV9BBz34NqmKTr06Jt8NbBnzUNQxG4H8FeQlsI1sFeJ6imwD9cby6dprPtMv9PEP4Gvb2xWHxms3ta0Wh9pn4CrYe8QZQgJOCKzdGVIAOHDogFEScA9np5RMvY15TU3le2rhYRiuHsuGXTC9wa/K08XnbI5S9TUshA3TZGd23GfXTvYLmAiey7izTmbTF1UB8hY7W2iGbSQD63U/N1P1WslQCdFjzMiIMrYduC0snfmPlMlbB8+LXORkSe5SM9YSuzNbY7Y/DnUaZtaVKE21BgW+H4ewOXJAQ0j1teR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8KpCh262Pj9b7DpfzdUB+B95xpgLAnuMPUfWTWV+xok", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YFWQY2DQEdaef6W30UFKJx118avhHJEFdsuo6IIAbUnoJYgiVa9PU/WiMMeTUrqobhwHihDXBpbb5FJrpRXdwWXMAHxg6JAiDTEdAj24nJocb5ail8JtwzGl8JJ7/qH2Dq1LLF6ffXtee7ov0fRRo+jS7THj8gwz9XkyPgFcOvkflkyEZOWBe6IxKYbLHiZAdEkVxFUVPfaT8o7wpWIfgmMi+phR0+a0+9eaMcPHcGt7ZLBZbSGzJB/3+0P33suVqAIIGhgunaKVFFkSEe5qXU5nX+QPPsCIuKm7L32HkHZJmOSqh2VHLf6p6Ym+kAgzcS8fJUxV63a0e+CC/K2u+ouzV12cEvthSzIKu2899GA90Pibh7GtZMdTJ59HJnjinh269RWTJVO3t5BDr1MO2eUzqpvnJdND", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8LNizKuAK5ZF72AJQCTHQraG66trNAjQqLheXkKOGQg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IM8lJ9Co1Onicudlt7M+2oNaAMMcolEhHomK2bMkIGXM/sp1B3kbsbotoMbpuTKpUkWhXj89Dn0WoakIRar4mpbAdi9Mx2pqQ6V7WepQbJFVK+3s7wKVKj6T64u5SzkxYr05nDCs9j/afn5s0AOt+SOBMViLX16WPqkt2vnKZ0u4SrO+nk92c5LGKHG4gt1GBGJupWtfwITEncd7LiAx6MQuCqp5ExQa9EO5cbi8s7E9uAytxwGEesSPyMM0fTE5qnH8wVmUgJ3OLxMiSYnsx4EJZU/Y0ZvkkEOgaLReKfqOezPfzzUxSAbeijHE66lLCYk+VQZlcsr+0LG09bzHvbqgYFO2OqF0gxsrWFziONAvAQPDNi6EgSsznXWEys+Tos5LPUdKhFMHgB7+OwY/dbeKYVpr3O/1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8LYemNMTtXgqLavzQLk3xgPS9l217epfd+aiW4X/ExI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NIyRuKqR12w0kIO+aGHK500tIFtwuGcl/c2l1o9lIBgpT+Tkpv0IoQgdrERc/NoMzHu8eN6vnWKTvvZilb3x0l3kzo0SVRYoK2JL+BRWNFEM+00VQDOC8ecCZ1WbZlEOSYSCc3SyZ+QN5tbpqMnwX+jpCiBUKeF2Q0F5BECMxJe0nOK14hqfRclQISOOm2KArrUGPG9IO+6xJFtmqF3h+Z9zMssmqiYKssA1h+Qhz4OT7ncdJgFNqKJPpO4YZtqlbw2n+2vxyl+8mAQW277G26Mx4wGKVYYXbHoOIOMvvXpNwH48Xq++GhsO7kZSiM5CUA5x5QWTP1c7ThGPozBgF/kVPHW5SP0oeBquWWL5VvTuJPL5u0bNfJqpP/t08gAU2IlkSXUz5mWuqq2sV6PA7IjVRidCmI0w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8Lc5qALwra7CQhAHVSUpqfbRyPGvyAA9gA6yMBNvOS0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3G8hxRNcIHHeYhVTpDZgbgzpWtBiMU15A4Ew/GtTZFa57Y5/g3bD0mEAmXGPdrHv2tO3MGiEtQTSn/ZVlE4M+OtncAz2wHC+8PhcbRdLY3jgdJhNd7oAuv9+ukg7Cr8s36Eut4Ixr8oIJWr7q4Q27U/kREJiKfgTzB+SQHnocB+yjKvilqCFIuXf9QK6GwoDdbV9tyImJBduxs5G9QDh0y99ORFb/w5kupNiX37RP27FuYbwxoYxLdts3ks3E2LrTntbvRiFF1eCmmZZi0hqTk5PgaAjXAboYYAJnfWqrzuIuAsCWR/G+v0nvOcU88yT/3KiK8vNEXb1Iadd3mg0D563L6bGoPLPXIsTVHtDKfAMrjUJVtrr9Br0Q/h7Ml6+nXmovZ7PviaKM0vjleMMF0UdqhVtS88E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8MAMdsvlKMvoQtNsO4im6poBGUSwKjOT6sYmiCUimHE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+FR+n9pfIF+oszeRcOYTScTKJSCxP4DpVkqhss8Dtf6+2GRgK6Ve4Uvdd7Ucupp56m58X2bfMP7SaVq0HMF/BqlVjH7lPk/At2qx27OODBDuWdHaBLCNX507Lyy4C4exfRcD5/mp/Gx8YNfnW6L02S8BoNfv6cbSu2VoTdJVLOnrHCFbzFY/VqJjC2VVC7ONqc0RwgnA7dDyviF7F2vSt4SPOtsEyEltg2XYcofNXys+XyBwhSxTQofAzxHuroMBt7hJR+d+Ev6DaxlZeb14I30j4fJwDTUTH6x0nJeyRw67/WdE6pHLKgT+Z6guLGGH7C5IkU2pvG/UjqTby4ctIiV6hq/DYbFz7l+UNecGEaxLr6ehCs3anC78TzPAFlxKcIZkFWOCeA/6z/vuroBb3Kyx0vPE+8xk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8N7PIo4DHkZZMdqJcQReI88Xk7J7L+aXu7qLtmdl5Ms", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yKvTgX3TBQe1Ny2Ljlq8bOZKmjXG1lVGrsifE32l0LvFnVHd6MGTlQGRXj1IswsB0fVGGv5p91+vl9/tbuusscIVCcjYktK6mW7gD3+GvVmKZ8kPo1tNufZt2dG/madAtfls86Z/iCsHHMnXYj9ti2JFBecvlZgzUBRV/lI3QHg3/WRsKO7kDSYstUbK+hk1ruTL7E3bE6+Ux4VPqVJ0pFfZaGONsY/aDC+1WpicN0ZzVG4EKFcMbmxEOqEa0BOv7Z/Wm0cpNog1K0FLCyKMziFE8WFiSYyCm5CAre1GrF5IQC7H9SrUopjiThLs1lFYTlzRqUUIw2oXhfQBQMkV6G8eNPvDvUOc5xhC0bz7PRSg7GcR951YU1O+8lgaIrFQv4NCJXMOCHLey57N4nMaP1cOYzuk7sJr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8NySxHSgLHbzxp2y7oNmM8D/zzwai3oi/9KIRYStsGI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kYFC8xD0OYNOicmHTtx9TNLh8WLDAGo7T8SdW4HIy3tJPRr/eQv7igr0Oe9sUIs7iqW7XAk5noB3E5e9YFDQnUowSpvASKbKrcWFnH79qf7PEOStwNbWAlQ44Mrm9EFvAegJApwA+W3Q+EKWDxO8PzBZm2fSH/vA2FOb/7wi+tBiCh5UqcOru75p92WlqKCT7LWTkY5UAcTyZ/ut36AjhNndsPniJt6nsgWh43OVHzyJRaCH8uPTBVBV+LfJ2fP72hTJI6CosUQvjsKghssllr8fElcG5MWhNrK8hpAl7gtw6itcYBeQBRUmhmQBlBnYUGxmMUJEqI09lSB0hirE67h2c32HM2QxxiZT125slfw7yNQGJIrYuPJtlBgtEkH4Hg03Yns25qrICQAupeS4fSbUSCyGNbYo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8Ordt9N/mFOIniYLj6LeCBG0qaQh++HGq1zp4F13Y04", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YHetQrpdaMxH1nroXAoCqTN+mBAdUXSOX0pJVVEn4maO2qS1uoQjEFT6BztWDPmVSYCdw4T4Ogx6zplaAdgMgYAhOm/bmFthcpwHT96Vi/a9rztRrfqAO0c9RxKgNZh5/UjLMYN7jUh+z3IYYm0VtXf68TqnRSrCE4vez3ZMP+htDN14X6+cJO3KIGVOU6/jm64dljDC5j0DYRWhFfXMEf6CygrhFFcutnTgdEQv1UUkUbzEZnPhoTWISzkEH/cvdpvL6mWVEQxlYqjAcfAUaSp5jtbMpfcQCXQh7SiZ7jqCWn/2ikXxDXAs/pL75Fqx0BUOp+/aFOWroiI+zB/Vi/bIoHeDHC++ZNsiHuMIulWw81nSWISCnGFDkxFbuOdOA9KswsTdJpJpoSeqFrbgfqWr8l1mLaTW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8PhCYwt21io9KLXMYkbrZOUriUb35X/GixZJCaH/kzQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LRao97f8oA7eH2QRsWcMmwxCFuXdcwdIUJpaO4WoGjji30bJsEIl3vrS059jCJP9s9wBYzH6SRnIEQYm8BRrrk+h0EeJGxuQtFnzpy0PqRP8vVKZ7yEaZ6bs1lYPICn/pqR0zUS0RzqQ+SyLNVqRP8ET0vYOVhIMAS6C0Nj1FeQzHweqgH/Xs+q2YPdU11tn0ylCM7vdbL+DHNFRfJAhSDwXByBe3cPTHiYjDG6ANkFHrukanZX03FqV9iQTgxhaHD+l97fdRAVl9FHfushv2nNte2hNuD/tLhi683GQ1L2JihTHpDkIFLgGznkTF5La4wlsl/Ug7djzOzXbiLk6E8vI3VTmUPD1m9CY83XsgYu+vPztZE2v8vLc6m21pJ4DAFU3HPVgT/balRVLCOttHO+mZSZAAekf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8Q/C8+6A4xLimdaQOOe3jjrp65fbGS4AY9zq9cqpZ/c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pPtToeMYIuMOFBj2xbhnK9DX82jzCwNdQsWUoyGLPZX1+gkZcvM4MKPNuIWdKwpVXIgghJE9TFcyJDm2lPisOHuVfEbS6bHQXKmzajOs58+MAcOfKXJz+5T+4m4iqhDd5rCl+2qkp6ZHevw4VFBI5ZwHAtKhMsfLOwtA9ozsEJX33q0eRG9UsWsOjFTCAeqmTY5ePKbCXeYosxN815Nah35FUu2BcyrbX5M6tj3lgzBQFuwhPeOg1c0IuABAO9YSdsel25zaoEkcFXHFAncl+h7MBIgHM8Zxdj4J6paERXs7/lZl161F22ztPBUUBbtn6+cHAi6A3XL7imiAJLs5sb0/JtGu6+XkuVfrb5roTqLll3n8uE3FiC3CRMK2wwTyQGkGA7euY/77ZDqhG8Hx2noRBe3XxERr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8Q2GlS7/EBes+iMxz3UKvPowDe2gZ3LLGppfj7A33CA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a2a8My4y3jpJEm76caGU6O5R5jrD0wJEsWsvWnTKNMb7dx+KpPWr2xN9CJFctD/YgusP4WVcD8GtUYoPwfVnxTS6YoLtrNtqA25nFChe79ROf2g87Q5pq+uFvo+dzGnu79LUOLmaWxSYn0jJmgYbsVNleWMYnoeINglGsM/Q/Bld63H1/2/geaaVXTG/1feMLY54iPcTNy4+dsHSt5ZV90YDq1CdzLaZSZeHWjJ8Ehf5Bi4I8/SvgO4ni0i5dkJqAGwgCrh5xa751GLxMy2lnedpBvlHSyHOtP1d5osAIB81X+4e2EECzjl7Fn0McsH8rqDaZwQSjnyHFdyMO+sq31rj4zLzYSICf6nZGZnZMJeBIRqSwkZzoDPsaaPAaaluZadVjg/JmbwSGWWXxAcM36Rz0ie04cEA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8QzMk9suoOa0+Utq3z2EFbOPwZeTtut2rN4cNtYN6xc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dOcLpFkMaFYnQ81MmgLN7Dk8xRcxj9JXFa2vJ4Aw6RFwKHaPs2IU4h1RjFf5tXQbwgF0cpEcEJScqg5CVf7a4weJqsiq+XavlMaMkawFmOhdDWDf4GAz/y2qCL6heeyvaqNa3vcD/74hMhkVXt0UNnXT9qSrjqf60oFeEBu19BZYgZPEFFhZIAkH97qcDFj/MP+HpIctrNq7rl2nyAw+VNDhIqnfaKY0bbqQMZ9FddW4nsMFg5jZQAtcRfSDQeq09iACqmdPSIC11gbjlPEfWeCNMtZ4U5ihZnD1PoKxiAGOxZx4l1WuWpFdBysxsZeOoMmTQWdblCqGthnynN30p8taMblITysua1ydfQiU3If3h3/EFqvIYlargFhRcbArt/mFJhEdbbRO/GKlHT2SqQ9gQDr5ZA15", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8Rq9bxuLp+qqxX+kVThwd4U3bETL2S284wVUoZz/6ik", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1mwMwx9BX4THgGdysrHe9VWUV0Gp9BSxvQbcMxGi8ZlXIAy2b1Zbg492LPhlAeF7FrdpgjZyeGP8p7JDJSw3FZvI+/Kz7QJgUmbGM+RibDybMjPD8uaaoop5fJYDOdTzsgpC6k/y5gi/LteEg0CDwIpKNDfEbve3Lh1dQmIHXvOH6EJUL9GQ8Nv5XcX7GDcQiX3+TIQ/0RvAoXAqTakDfjI2BRK+GII16r1ksPuRc8DNUJt1vHWfAyBKTWtfTW2foXXH0PKAeN5nGGnrrPsxZ9UTso25gneKLM+Xqa0uF1MrPsnJt1GhH9g7pRUvOkhDqk22nwYsRYNpdjY+q7CH+5RKqqEPBzuRebqurKALEtXE/WcsoLXnAtMDg6tWLfPnyKb6k+fxWirntgITLWRN+5NesX16M6vs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8Rue/GAZUpAIh+fmay5p/OO7KwJLMKaB7wQnY0VeskQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GVvDsgmbAPu444sBnJHaIbnrT0AFRSt6qqYasm2nbXmjpfa+Yx67BCd7SWP77R5v0Paky+TyqdV/FICQDIrg/bd+BBOHKQmiTABPNutbHONnpsnvX9HEeuwURZ2lsQyyai9vVWGI48fa5AhCn+EnMkKIagfmyHj1Fo8xe3ruekR9iMzaRlPNsYWTqnKV5MWbbb0M9w/iEDbEThKArfWlbUapRx6as1DP2zJxGk8W55gBTuUwtDhmVK4FZTywPkdbLpeISnnuAsQAu8ijo25oYIPH1nKDoEIViR65iZC9Rf/UjuRM/NKSZAbQmGYJ3NkZER/sBlSr2Kvm+kKbLpYfbzlMOHvPqM6i9q72Fw65s7VkC3wnVzpmevd4wnGE0/NXA77VdTv9zRT5D8hhT/+JNf+TlNS33XjL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8SjGUb0b8NWO8aZriuqo9+niIUT62BtfeQcyKyrS5o4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zJdGF5gw0aNUNcm4XUfuo6OfG2PAMS7/Gerpzp8aOzlr4ZrddjINUB6QoSz7SEBcqp56lgSz+Hq4trslASaE+cHds1XDOKkVxG34d9kJeMPTz+hjYHsWrxoXMLkZKj0DomUPSVO2dODxlXXUEdFARfsILTrBqdEsgrKosFIp5Wfhvy0dSE/LQQGRPnvsda1NmKJhuOxxGYLPQI5x/gW0et2cLwnISemU+tw4A8ShvrTQPqky8iaqsAQCMdutrPM/C7Mk8GOJm65v9RAImn3o5ff7iMYH0SbGZRGKbpW92/yjQwVfRrXjlYK9sr9igFM7EjY0sYGlXd+rU9b5OTR3UHCKX6zxU57RXAVFlcXfOfNj4d+4li1Rbkc9y+ZrIp8XhG4hxkuGfDIXlBWrRiFuvzcMA9OLbQ1U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8Sr03wpHFB1eYof0wG1LV7yKHAcr8bSswlv0RPdmC3U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DtrpkPPZLwP8vGv0hcVkMXu/5FXL7FQqJv42uR6Dnf8TJBo6ue87OpS1Kd+eXbIm9f3swjqbQ6xXB+/jNClL+VgYc3mCM7lQjHLDg7yh0n6JgsB0ZQOro82t+FORl1lYtjw5L97gtYGeVnUpPd4dPEenqsIsmMr8KaNnWUZyUhUSCKdnvCXzv1mzGHtOV9NfID7MIXOYLqjLfRSA5vwWwdN+NGHKw1DyOXR8w1SSFMmgb/RSZgmG2A07t3EV0DVOnq+0T6EDCEhqIqmLHV0UoLYSC0X8+HTProUrHvZH1apDNxDU35dAEZT21YdsSA/uXBwDOhYHe9Z5wtMlOw9BI+gAPdU1egkdqFi0O8g92o+HdtnKehn9SK6FXkxNqvAKoZjBYnkDYoQebnvCh4JxwMI04nI17K3Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8TM1VuWXWxO/Xkh5jdBKTkdnT2guYkg0w5aLaSokoI0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1cMaa4t+d8399tKy+IzDqoZFWntn0W+Shm5Ra5g8hatsWNZFTXDvBI5OjmWvFSxPXWUGdIVFvhV1j2xfqlMg259t3c/OWBSVaXZtEPK5dP7SiKqknP31MSYT0769Ak2yTpZcPdl9x0y4carbelIrxteCWWLlBgCBYOfGdGal13jiAGEYI3sBLOjeqalq9Mh1n04f6y3NF7stqlqfa29S5ZazHBKiA/Wc4SPplFgBU3u+dYXwkBtas+iorcX8VDYpgRc/vOZm1E9SxVmPtNg7p0yBRAxHyJyT7o7lB5a2bbwob5gXBXCQROndYKn5IKI4Esb98QwZ1VsHE/uHGi3okXVqI1Ds9vOnb7NGhCI2N03v4JvNb8Syk2B9+cmWK5rvb/RRbQIsg/hccBZLKmfr9oLI2X54Qp6M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8WDxO+pzgDOLJ90ua0j9BGjRGhLA72Rxsm6OhB5Ilxw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vI6jgvp8muRK6L0si+2PEFsoTRrfMzgOYio0kwbhf/ogRzVLmZmM7Ovc7tCPofukQ6HgzO6WYbJDICmIKdBvk9IKaH9jh/DlMBYO5WOHq1+HZnpsXsjKffRq9bjjelYsivKfZ64iNi6YcKj6iT8mZZAyy7lhAJ9hwbz6V2Lx7UC2lL2iQaE3FPB0sj1IogcYP7jUvypTl2xLLUlmsD96tuYNyiA9xJhylaNW2GA5pTyI5XuzAlplKn7T9sXHJRgghyt3th018pcSmGjAqqeHozSUBeubbbB2AVJvHFv+LcPIVUkN5hz5DK91QapRbliblCK5+ebJzjQ0ymhNKFC6E9Zx6In2GKCQ9c6mR2hul/PsUNuLDX26yKZsJA8Y2ziEiyUXAqD21r0SfSM/l7uf9M7n5+2E08yN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8WM2X/Q72cK1SiT0Z5nddQAQIADoCSJ6VO/sCw52X3Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AKHWT8ED2U3bfvU7Zx73Uy0+SM1iUQohhDFU7VDXNVh1EfpR+aeXFxmyEb0ukxHQz0xQmFJAR8CJmCFL01ZE7sRxo1b/+jmV+xzWVEB+AVBT2uMQOIkGe+xf3YPa2PcqdF5x+lHQazFoji4ZGsMaN1bo5bO+r6m24Pm2eVx9f+sO11XpRAoWG77Es3dLenjxEdj0RqIjw1oG3EFPu9TNGc//9KZj6vfdV20QTaKLH+S1foUd67O90xX5/S+gKI/ab+4xG5wV/Z0B7IasRaavh9/OwTucjSZYfUgZUNyYhYYV922lLW/YHJq+okofx/QagRLbXPGdafhoR3n6msgCGwyQ6kHLkY4AzzlcObIzTkiyKRjqc4VcT7z5YTCfC2DPPfVhdH0wVgCMDA29LmKrvCH/CT9/kV/K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8WvCj0FQq4QSDvM+21JlAz9bl1QpBcKYPASMDMZ1/3Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W7bNXgMo8ktB6qQ0pqx9qvyyQ0Ky/Z7hTjF82LkrBCegXgi8qQHktHMpikvkb2uvVA5vDqfnNrwGDP0Z6XJq4KycYVOjRND1+S6uMRi966s6Gmd7WJA+AHBRCjiZgv9aShPA+Gr21TcEmfwZi9XNh7bVHfBdWwYC7XfA68viJ0noICYoiWfd3aSR35bSwFaNveGwJ5ww3G0NygqBSyi4Wmy+hU4tQiMXsk6Br2z3jhowhe2coTQODGuH9X5SL1lsOHYmfuX6D+9RJHHEauaKAHvOB6VVa/INCaP8cbCPyxWEgvqkl05azT/c/AGPERAzXrLlfLJEO9tJVVf7zck5DDI9W+2vR5hNzxeLuKIbzuGVXldJW0RUZ7ysG19DYjStWwZwIAfpt6jx8PdUkvnGh3HrD+RCwxge", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8YEane7tt3f+QDAQNlBqhVNw3DR6qlcd1NuEVr6i9ws", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "64olEdqOWGZNWmSKWk34Mbyg4KkeI8LMxsldPrTkqbeL+iTj3ZE1UsbiTWMjQjPhnBvajMDj/KFWRnDaddnVOiB52I56+9wCLbOjRjZBAFsTzT4yt+meqTaYtHSCSWZ2HNrn/NKkxlLEcP0G3gtPUP0bNDnrtqS4Z77zh1y4yD5t/NwbzqQv3ewHDWxeCuxlFQaRtiLk9h076+ooabihMAlRaiVN6Z+gRz7ZKb7OARcL9q9NSRV9cOvp7k320MoLih5EVOgLeT5+iSZPke34Fc88gbfINalCwu+L5N+vbdeDnlZik/QauVTzBZyDAk/oUv/DXyQIxikz3XkktVQMKCS/GfODVBxsJL/wqyWxeRX2QiXk2qpQZHSmQB1IQQpJmaHf4FIm+14mJCju4OHrSUF0a6YSpFf/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8cJDMEv567e0lY51dRRMMaf/SdTwqouVx8Ts3X8/3I0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w8uDpFhxXowqZK7pfNp3+CKu5tShI8zA/aoFvO6nnCl2BxD760gCIu+CyPDdms120pbvfa2BV8zagFk/vHAfFxe7f7WbV5Bo8I3rzcNscAdjbLBhLYbY/3P7i8Q65riXY359oFZr6wTHXfCji3x7OGax9TqVhmB32NoGnCjlzA4vFvgWDlQs12NgsqLCXdX8DLE5GNFB8d5GvcRtBdIvCfK2WoxHuGIyF8brVhgPlznd5i8zCD72JCHYNPenC+R2RiosTAf7qPTtDv994pHXxmtep25B8el5nKJ1oYZbXd5Omiy5Zmq5huSG3ocITDFXFi0H7wyErGFHVAPvrrz1EP8rWplukAIFLWKQU5K8Rpe/CRAfDrslJZEtVe166D1FY4s/P327VTzSay1XY1sSbEv74FgAYQFF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8fWUmvXAWNfWP5qpJI1iUN6Gd6hnOHm3pWHiEvfx+7I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NZmIR3yjQBLWTPzEJq9GHKxZeBR77iRb2zwsi7qo+6VWxTtFq+7iZyXm6Gmq+YoLxSf4s5G0gT6McaxEsMN/EfGt8VwTR/pENuMj+67E8s9ExITU02Zuey9SndvHMZkWcdcTIrFiZ2Twt95vBTzz+ashFI3oEAmcgf9VcbLw1Z/OCt/KQPix6e4z8L7OsTSPwwNoPREhMTjfSaiitCYKoYe8zZvGJKrZjIjJlmdwYpAItZwVjeBOPjtI08QZCYo8heqwPyVX0cDYgNrLRxw7OswlW3CndJe30xFdk1MQAxIVcJzq45sScGDuQKmUTdIHClD6Fn3lZePkrz0qO3HQ5pavVEsjok1/Lb2CvYwuAjeQBsq5Xceefmnshw435YBE9uWZQ/grd/z2Mrhbl5nW1Jp68qOfXy17", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8g7JRCdc/VBvwnigdvxJa3nbQDWtINvQ0cqx+Ia56xM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "g4ykm7UXtuumdFBHSdAuQ+YtaO09qI+MUzuX5PSf3n6UrFJhiG283ESq5HXrejpth7e1Db2zQy6N9lCC1gF8snq8YSkD25d7qFHPxwPJgZl/qtZorCW79vaMHUx/LcWD6axFi991mvVCnLpoqhgZqfuVVuLfJCwQU2F+dLUywMFbVHUyLeyYjXr25mObkJ44YfXWf8bsUUfcfuK2UT6q07lyh5N33tjomio/Pw+eYZXQYJsJS8CmNjDsGSh5CCcsMfMz/gbqSYgqOiRA/lxjvsVBgA/7hpekC1SAIadkxt7cKabmRu4J43KH0GPn+1d5hcw4CVAMnrVC/GUsLpGAzUoseHzXRt4JjfRq01YYnmjjkBwsDpHKSYTgb4CiiESIvVip7ZygDEjx8inqJJ5cUFpY6GesoNer", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8gFUXqYQPXkhtOyszG8AGqiKLXC9go7bKKK0x0dIRDg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8xoZffTzY1n+IQBUA7rWdxV0EG9Tn1y73xq08a1gBVP9hhe0CbIwEvQTiPO3v4vkuWq2HF5IBzX8XUAJMcefCKMnUHyhvSh2I19RtFXBjgxL9HemmhyO5p5DeP+Z5MgvjAnZbZdc4Axj46EUhySUYGUQEYYwYq3yTj7uQa4ES+U74i9pQjWvrtt7zbZrZVPoOfnBQrRML0ZLDdBC8HGvjEaL6wwQOM99zJ7hv3pQuWHQNkVAKI6vAe20iaNWbJmBzzWS5jXqH1trSK33WnGtVBw1cP7RjvUFkx3HrBMve/AyxR/8+JJlNlLexI482Sav0lJ3y6vUhqa+q3USDgEr0iBUobNQihFDn1zjsjyMp6HQpnD3aZJboWce2N9KoCOlHaGEydkRtSwWtcpW9DZg9A3rR/c94+Lv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8iopVozja12rTL9qCL4fgmnD6jLNvnsW3xHZg7WW7L0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qTWSsak1gH+tmyfuIQJIE7DamebZjJCjxCCKRt/Sqsthbt6f5YaHZZbM15sxn2wh4fBUO26CL6rUojVmZajepY0tjNfEwLsB9bHG87I/9OKfLJPnEWdCPigypTWX2QE8QPUNLKQwnEciC6Vs0hC8o335nat2oi37rD0WlGk3pdsBa/9CuuefP+GtJKfNGy6uv+BFmZIUM4iPR92AOLDQln1wjIWChCezIqahrYepBCVcv7O7jLQmzqVrOWeQNP+5OQ3fl7c8K9GQhqttXgv8f6pnpdA0C0AOeqMxaVby9vb8VNWCdlggQHpHU80Zgr0L7/KEQvQdn6iXeZ+tMX/NhPmmdWFRY6PTUJpsP8/k2Xk5ydlfazg1cDUc7eUD8KAgMcbiH/BGQ4iU1YFKPCraSTa9SGrG3mC9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8j1hbZ9IwpZa0wpkC/nqHspzqd44spQHTjE2eQr4C4U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YFCbdD+365vX1MctPoi/PlV2KOIdOYrIjNxgMeYYimG/JyN/IOEEOxWa683nNl13v869fHNE9GsrNOFISdI+VHD4hRDICe24rKaPdn7sxxiI/cAOR9nuUcjvCEw+2sB9152KoJL1XsWfdNYQx2Qn+Ci0N9F5B4FXVgDLXSdZUK3aCHuZRe+cMzar0XlSLJinvfbrC+zUIT09tovSrQDMDouWvcTpLmCmBhxMs/d2GbaV8LEyDcVjBsWtPHXNrMu5sTgVX5ZCHWCLv2B5ERX4BmhtSBThwAii7r5z+TaNTIyGZ4/oU1JyUS8opJSdWY+EoZwOm7HTT7arWp6J3Amwhtw4Hf5Zu52cMhEu4CQ4QIp6TJ38zK/xle0LBMyqUvJxCbiP4X46sLyHWr1igz0IC0G4V7tJKE1i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8km4DK1SKIhxy0UE3hSoRqsAgqpcTxXXHhZWco2u7zg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "25RiBQ5n3ALylDg8akbJeQlHurRKweZwd7PKZS9GGsQ7INyXByhFGKvWRH2f7Vj4mht/eVy18Mr+tw4Y2bw6Ootcw0gF0cIVNVrqGpxjPLC06Qjl0x53uwpuqGjwSOKpeXBw4oPEuMYveLRTflcFTbWAoNhLGpkBeane9BzmEygd+T0fX8LOktupLP9Y+k9fwytsc8hAk67BtCdrFPiROFR2rj1W5RwABam6p3IUBtLmQ+mfO16Wv+/rQdC5TML/1fvsmufVw164L95c/Q1R3ky0msEnPQhY15ZNT9SDGXzOwXTjDAvoKjDsub+igVVloWuWLP38adGYWVC/HEWW1Pa7ZQ63G9mGu7jr7wca+gIGKF0fpCGnO+F7KXC6LkZmIsY7PoR6AeF+E0Fx7rSXfn3qbFIN8Fp/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8lfEVO1sUPMZSHTszg72THLOdGN8Z5/OGH3ok1QdMw0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JZ3OcuXNQY050XcjfwJYaKFK2LB2idvPYLyjwoFwU+PCS8ySZ4PYtTnwSCo5Z3xZ20hhd+fbBmrV9076XPiYATZZKJdKz/zIUKpEn1SaOGpfinDfi+pPlzBiAhj5+KGHKwL8TTgfkvRAKvZRPjTPtbB1lvOt6kKaRblt+9+jiRIPJjZPfDcYpO1XPzXqn1BhlmVMZBdLauV+XZ4K7RbYR37cH/s+Z/Nbw9ym6rR1IWfIx/kkXGsbnIlEcHhCgI5FIxa4SZmhiJnmGQX3U07EpJKaqz4lnV5al9EOt0HLGKRQwZAMKvfgWEy3XBZOrBsxpSp6jtyiZd0xPqlJiS/NlDN6W5fbucgDUOl56/rAWHPjSo9tT+3bBBYDWTNP2Efh0jZXwAuAlsPpU37mzv76nUN0tgU5vHUH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8my2Arp3apdzSZFa8tRU1y/S3TJ9nqBblsSGdDc4oUc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BEYCXx9UDjizlFqvLJCbPeHGM/QmcZju08qdUPbJZSAUDdtzZiGyp5x+viSUn0UG87EJrMAQcWEdndPv8n2G+PuW+bkR1UZ/0BQYMZSl1DTgFq8ifpqFsXsnk1JnVGdD59JWXF53H/3LP2MP4ZZzng0WrIlogtZ5c3YTnOr8z8iqXlszmcBTUEqKM1Rifpoc/h0pZhFgZeAt+rIiLr8bVF7YMsxsQNUhbZk3ydVBqYtR82RsxC2PafXnQ84aKwhO0960bTcix/KLiMkwMOtxRUkaa3mvXvMNKItLGGRU2A81HlhHdlaX866f0I3GIiaQ/HNb9AriY+fw1KAJqRmHK7CorDwrglAPHD+9BOwGt27x1Aqkaq0ULE8Q3sBFoDzgGAPHI0RppunN5pZLuMvAQTglLVilHFQF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8n1TZsSs7HmPwXNxOq7iUBASGx6kUKkiwxxShDmZGOs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FBxVcztbr/mTh8Ftj+s7xMAplbMLKLqFV/HhVWLZ/xxgoYCXExePnlieYsezelNiQPfmMa/+sA9NLSyuT4bWx74rc6Uq1gkVGVEbWdWIrhYKa5UoYuNfW7UoKOfA7MUOfIl6BxQQhmHUvQaw37NZmJghR6pGCe5/JaBqDtrhY3v/YBLRc44XYye2pCZX6mQF0tXhXmkh4RAi7Z4hUnp/ANUvedY2PPY0C7xtJflVyeZNi9DtiHf1QKHu8f2Ii/hDjDop6kq39huJigNpKI9Mdx8CjpDd6ehUPRNYhjs5/jzmjIyEcqwo4b9nabPbrARxOgEHsc37YF9dBVNqhZaGvwvdc5ADdopPSjBoDtOHXbcf6utix3BasthyRUb0UEm4MhrLvZz1JPE3FGotanVzAKMRue7Yy1In", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8nEvovUhr8O/UGlCoDC1cDOVJMgCBWZjhZzlB3wwHWg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DmZEKcySpzSVqHj+VSyI241kFXp+IOAod8B8f/Jw3DhqmQHlRTHvqAq5ZXKM71fRnRkPJR5k5iczTe7RVcUTmz5C+dzUoyqH6fdkOYaLEFgZ1XGzmcPrp+akUsGMM4JQjzkM6V55TG3TYBB0oYWoYASk9x++Jiuu3rkeARj2zgT7//P5Nw3Ao6ui8q4uYE40ggOYzv0chV7x1uOtcsBC37xdOqMu67Vlt0J3ZJJ2Zavm+//nnJXKPeGayGf2qBsT+TULfScplqG7wGViN5Zr75OHUNBb880rOdtr58ULJcq6NhaH0vh7SwrESbak5lzP7E51sktaQckfiac6MzuOF29hG0K/MTiaFt/6nKUvRyFx9DMwTXD5T3cPvmYzkgGMBVtJ2LVMbVjgK/MJ0XO3VsMQRGx3EIEI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8nP6WJxewxKeNW82n4M7f/zK1zDsNXJqtGtSeeXGOGA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6m+VDyHVzU9N2GNUsheths5EV8ZXPtTw45NevAk7N33Pj9ll+aO3y1/5/2l3zD98oq7EdECpnAEK7WTwsmEA10p7hPdY0b7O9Tb6ZuRoIN6mu2yQSpF6plFkJxpm2jsDZmfzW5uQN2/3IuXFXaaRrhZObcWLhXYVBTuc0xTDDJEV3LYpKHNkBBNyI+wzocHbnu0BGGPZjt5lq8KtaEgSRCruPQXNzvvNOCNRyRrzH88gFe5DxSa810ZX7rsdqUP0pBDtO8ltGwXKpg9guE1JBw2NZ+qpPt8cRCzbyUH6d6UKl7wqCC5z5DlqoO8snsBCPVLPBzN/lhSt9IxrI2gwOjF1LhP8joY0f6oxcJTjlKk4i9LXcpZ2t3ljyE2Zt8YfZC1L9JnfFP0JVeGeWXzc6GsJuThpB4R5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8o/GdoHSCZCpu+N1NJwa1c8lH2NsWzDd7f7F2kxAWRI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FibgYyfjOHGgTjUKQPtVMNXRju+rdo2T9uMIEGu1b+mjKpE9DiJRNCKU9OJJwKWsd/2G/zV1DrjzDyXbn9cnH9EBZp9fkQppOW1ABZ7J9I25bhD17so/bQqX8NpieQe+oV56zrD9BgifQM/HtL2ZLn8ysDSN4G98t6ZfGbkbAar2kw3c5v9zImdus4JuMJo3ku6f2SQJSiQOwTveL4X99/Z+mTv9KyvQ8SNd6EGNYIbKQ2gZwhYQYEw23+EZMpCjcmKp/zlfkT85CbU+CL3CrrvUjCIszFaj93jnLPGnCC19LiGNtbBVqnDwHVHGN8mchJs/ToPh4aDiy6YvzAbJsZRey/HJ697d/bYpnad4mIroo5E1FHV7rly+07MZ3Ro+D3yWqVd/HXogcnm/2d22nR2s0aYfC8Bi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8ok9jMgaVuEQp1IfRa2WZYrFVm8+2LLfIUmj06Sk2dQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ICaJx7xQS4BOdDClBfcJmB3BPU1yXz03E3EYG7IbzaqnyLEQ1ZOnFYCvy9kSZy99zLodrLC8EYEMxc+Gq6xHUpGjc6QT3efCC+rusmFxrs5LyDM3Y9FQRJ2QLJgWyC0VRUHR+5Et+0zDZgr3uyi7WSrvdL7pwhtaLvFQTfa99sZnaCGgPpzvsKcloQqCHZLk4ensm+k9t4U6haR4wIkdTzTWd/GJp8KisN5eMl1UpEeDcx53zJv9mRLdvZHwxKx7d2QvT99h+mMzNY1JAQzH0lgn2yPdobBjGy4H2cPWh50dD0g592qYaLIqM76HJP1IqZ64tg2tbcoKA+YPVU9kOEaw79POT147gbdamTEB1Y4ljcl7mS1XcEOOQr7rKGoINOFe9fOWd5s+ps3jON/yZ0QytlX2Exu5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8onab3q+PKzEelvZ4ABibXc/bf8xQp50fh/uDc0ktLg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EPJ+lwT5CYpNy/9YlzH2NEIm/VAqgfKR4GS/xGQJR5eczaXxhYZBESoYps64reTsYr6YrnrU3wWwHk/EkBsd9p2uKmq0Rw0yDmnVp1c+jaBScQIv81UH63BR0+mbXxmNnTDi8+wzg4auFr+DxxAS+oIg43y0GpAkXq/XiN7JkC0xzXjd9UDR5Fsqm0dQmxcPTPbvTAhdZPG2O154EYRY2vVM84Oc1C1adcdZNifyzNwWHgdcF5VHg3lj+w+gpPvbu1FB1tz0CAtJAPfuR8d6t6NHrLf2xwEwKxiY3m6h59WIOrxerIwIz/ZA8AHRFtFxwofacSrTaScj16AqIXrCgrfnwXIZ2oSLH6r9shVaylp948R10qQ98C201S+V70+G+pvsg9zdBl1wZ3w67YjlrBxnxkowIZMe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8pwNp2+AZcdUilZW888+K0NugnBIYPBumG3+0VXbQ6Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1PnuZ8IQ9gdukG0uJyLfpQFLiBdogw0W4cSXUYzFlrdZHqX8EQJiko8XHWJrNXUIqcTu3KZCSk6hipK0XwzG3Kmx68YrUgBCYeL3YcJ3Yesbah7EkYnmID5eKW0QWK6WLtn+DLcPFVollNsmzeNgoIbTeCmhPX2ZO3NfB/3q1lACuRpasm6kQcOZCGbpJkmmFTECmU+pJoH23b71l2geEqE/feUjjnn0cp9C7kN9H1V2UAHu0GRGX60FW5Aaujj1pII0SqMIaO92cKHUCKDSxWkQfG3TU5TWAEKb9lkhEaIlooK6uCmf7BmfbyJIVhDDpVUpARTkJOK8jpb7IrwMkAy0vyVViUEbxZXboX6XIFZTjfAAOgPnvdfI+C7IKE+MlI7kGJm5DYNt5H6GlOMUIMm7WY3tT3x9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8qP3+uQKnePm0giEVAcYN+VFNPTQbsNGxbmbMqTw5ss", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0FtE/wPwPS/uGll0fXK6tg2Z1Kgr3Ki7fd2zbeOwBBaRqWn3H6riSTSTYKsWWGe17ZQa9acCqBq8gi2vlVi3BSu3jcvOzPMQI0iCdxMfeFcyHX2Q5J542OvIWK0rMPqMvNIsE+77gmBizVHaNbc4TBf1boZhkjPszusg6rTnPfAJ5Hi1hiMVkZcc6KU/1l7txLcQpmVRE3yiMy5lrttSsM99bSYWXiYXzipOy5JX0M3In4mkjQLRYWcy/k16CyTUwUZiCuWv7G/x3vzNTmM6vQAvczJUaMs9uSRaG/wZ5XtDEYt5ouVU/MQWXmb+485nRd6YSU43l3bntHebjZUcv9PAfKkyO38YHuIJxq4gbIeTjaGiXHSxHO8lZMucbi+NQ5Yuy4qxgMedE6FV9RjJw6IBUJUPvKHe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8rAVEaqdLAcM0JG8KmsZZpwjrb4qFNJjPwzTLpFkRmc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rNK56gbr+R3Q65lw2s3fwQ3efR6Au36sveE0JZ7ymZAY3bJcCeEOVHd74ue9iul7cwDaE6XxEK9bYwnVf0tXwecCWg5HtnXIaEciffcJzMwWdtavoVEqsnMm4OYdmJvnHYpFUjcMU9clf07vTfWtr6wyWs+7hablcDlGNlGn5yTEmseZhXgcbvXUXi/JU8kvDM2sRcoUvUMCPEPSMARqzZ1TSdpRCUclmV8S5zAOeM56m0SfKUafyHnpzn/kK2xtp9SzjAimUFfsjPYgC4tYv9GU3dbJrNj5ZrVBihXhZhfx3ggKkH7yEeUdGKMn4dyePmeyarXhe/UiTCyvZNDTDmkj/KG+m4YxWRczL6Tiqf3Jxrfsnpx6FH7SWBuIuXYn0BE+mADY9f9sdEqCV+ywt05ht3/OI8cT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8rVEg1ZJ6qc5NePSDyIJ1zeIiUgWMZL0ZQGoQuW/6e0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lpXYOgR7R/S0TdjshVXmzXQyEG+OYKanTXvcclXm/geuziwQTIh/MLevL2o5uwmKC+QX6DBOigdY6fAK0kpmMX7IbHnVg9zFk4Z4oHY7Nb5I71H2J3RiixXlIady8+C4l5CKhEFb6jCilnJ38SsFtnn0VoY054i7x1snh0lioyrqwiVDUsB3+Xbp4T59SP7zYLg9gJ7nVidafGuBPD8X2NFX94EqWG88f1UIN8RK7URq0OTRKypqPySWIOVXte8Rii6tNacShPOecyMBkLaI8dwRRqVN9RK2Ezhe6kF4nHcEnmjLxYFQ99LmcVj+MVHjUFnh67upbs/uAwQNAFsz9RbOa5oaTTxJ5Kab26Dn01eVLyuJrhucwp3v0M21E2Ogmu4IkSdAusHZ93EUVwS6FelqjwZ5p0S1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8s902J80LrRcHuEAGu3LlDPbc/QiqWIakEDQY0Gc+vo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iaaPGBHxqJFlJnDpEsq3zVXMWMeFe6MAt2vxIxbVt4qjg989epFli0UQF3GqfHoUPrZa4sOVzdRnDjAHi4z2MsvO9RbnpCigomKF3q7rJhCIPHLyAVNXGwYKAUX0oa+PWaPJIgH2D5mNQhQEf8Vh/93+dZj7DzQ5NPfuyq0h3tz8qs4ht0cxC43k/VMGsvtLCJDzxyxUOzJT3T3Z7JV0CNCmkik1uR7JQHgVs335cYeV0sHF0E8WxvZhtIy8LR1GbcM9dqnFATSTH2oRxlTzRJJ1Y5JVSpnmyH95j73fdJb+RxaiP8IrJPfhL4nigeUTsKyMUxgzPLvORM4ZVQHRJFt5bLkOsM2CQZC4Q9KDt7In2/j4iSphRlFQOmC749uH8V6k4trEyw/Q8EVFImijeMQOv7ATdbPV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8schKBbjb7S4WHBMsBqleC730eghGUSXf/8hWIjWHuo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OKbsN7liVnNyivQbSXmnXifL2+VLLRaDwrIuRw6bWT3KznfxVXqOtwuSrmd5/OtR2bGTD0O3E1nhbnq6bgPh74TDwv6INBZmS9t5VzuWq+nbVAcxQyboThWczP+MP4qgkwS7n9hqRIHTK/opepXPNAmjHcaiodhjzhdvfxwo+Frhw/sDkWE4KWWMf6Qdfv6dC+xAn4J04za1wiLtRmDZbQS5OOV6b2om3dj7CSJCkFtOQAHtKzjVxP60V67nTvOWiKdn43VoQthyL0jcgxoD1Ehtys1+u460aIVt7hXwT8dSWDXUlqlOu0ZeawSSULByniMEocZ5550KK3TUQh51+qx6cWZY2FiZ4pZOZ1u3s44lpLugREUF47yFNjXzmIhNyyUDULC87AmqvEl3Ab7m0YUp93aqcOCM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8uWf+NPuqIv4ZnJUM3NW6WuTYcTjvA6oAUT04+zjUHc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q/kCU3slVDLje/FkefmtmtXoTOR+AlfjCKCRcAnLlUOqZ4IQ9KKLf9zEYRTQojVFUj1mnZN+4qn6LDwVaiQXmJTg20F0k9JBey7R5eyMU/JYlpiV+bFVL9RRGeuzGaHYi2a1ewcJYjkKeRfpzzvGATXMRsuIVWDJm1HmMKc5bIosMlrjsl8xnQq/OpfoxxVD35aNCbhwY91R7JKkoRYVzAZd874DNbPB8Eg56p/yGXjh+5IkAt7mzVDyocaWf7lff2W8Tz3Jd/ajqkD4QJBo2Zrnw+fIsJ9M/8nbXxOeO53KnmgXxnhrNtnFcWk44s3uUb/6fZ7GOQtS7h6wgfKIph9RVAzp9R0WX8jiJ4s3Y0mmi405R3xs0AGqKfTFFtVrZRgo3jhq5iIKMjfwMnPKIG05T7orOsw5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8ub4diYSWrXvp8f+vepNUphJFaVLIHiQttvrmV8pjUw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZyV4XpuETpuV8hfqLWtfvLNpnKkf7vbIHjXL635A27oJe7w2ACLzCRypzu6d98b/9fAj5lmXpBGPbYH38a13uOdCH+zCPjktCovNNJ2MSwJUWe6gC0q4qBQGXh7omMFXDRqcQ00aIGP2ExrtihJVPaHMsNUig696rTsZk5wMSNjWaHz8zPn2Hes68B3/dDmPlGYaTYD8+LQywJ0anw5Znsmq53qs0zSvMrbSUL6JB3SFymutN7WtymDM1QGcv0Q7LvCCznEt9xpPn6gDrEHSy2vo2fxbWvcANcF8tW9HfAqa8zcFH3BvvEglXPYyRj/3c2RHhoPSXEIesr1uzcjRIVb5dDHFfFxTj4WQ/NJe5/hQ/ILXsohX5c8OVVQnAtenpUUDJ23zIcd6oHQWh7kxoBYLI0c5MUC5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8uxi3o7+2YST3ouQVdXuKW/8yWxSk4aMwQHZX1YtBEo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ew04FkyhVZS4ZztulTeaApbFg/gTJ87lW9ObPf3AL3v5XuVmTlZsgNO2tYML5dbbBypeLK2i+I0jzJ8NFkXNftXQDwsCboKDlAD7GjNiceKPwHS0n36MDM/XRzYge0L1v1eP7yrZVWy+B7VM1pdrj2ALGO6whl0vxomp39IgGa6nW+/xgmFq+kDZToyS09CupbhrVPfsSTx77tw96QvT96TIlobfzLhrxDvfA2uvsRNs/AJSls53X19s6eUwNK/9fJkxI2j+Ymv9ZXPxi4bL56eWLmZc6h7XATGpIz8GNQIqyF7+TGPYunSutGg7yjLZS2DW9yGww+crAEJMCM66kKfVGrvc1zxpLzBpQ203R2k5ODi8the2O1k5XffGpYoZQa0rLveaeio9fzwgj7ZA5Gbf1He8e2yB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8vOlqI2TqlmHl1l5sDrhZlpyQ1IQDsmeF0A+HFRXnsk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bFCyh6epqB1zZcLIQBmDaWhJrh1oYWPxfbTfPLIf+8Z1zidbD15NHSN7OtpjxiTYgQAAqooopNb1STE527H6hntpbH0IJXDkbvpj3sIOhWiEc+ZbSrTbVDxwOOx2aTzooNCZ904vdVxy8a+zf++1x8qm2pytjjUng5myjH7mKQL+AGZiul7uGoeDwx5G/BKGP0MenZ1hocIWQllLYXpmffTAHbyKCe7CucWpb0RfkWpsdAD169P3MorrX2DKUIkzpIlNTJCuKL0o6EwlJtlSMgvb5jPe1jTenrtMNqXOLh9la8R8rRrdVT0ptg5RswHY10bCvSZ+xGnIcm0gHHRyUvcNSe/RdC/EzCkqPDPi5H/L3Gdqb8SzK7pH8G93R7NHQXDZSrtMjkNjRzRUkog/2HRHScy5OqCO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8vq1diAiZReeZHDqmI4U4za9exxDHC2HByxkGBMm8LY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gEbZX94oWOVaBmHjh+OSnXY/tbOe47LYrL6vxm4sVF4qP0Fn6edOFh8FsHtiWAT8j510qw4Yf/IF3aaenCubix+mllkOhzYhiaR2NLzbX3Xi3KvdzzcxoZYjp40vYFeQRK6fy4NmWwg/xzpRo2ZOoqKpxr1R0lwZaQ3kEXYoZsbs7065cw0Z6iAwL+q8bL+R6nkEu614DaIiZ8+EKj1fEXGWd7s6oav+o8tV/nezRkztfTm4TPOw/OVKJ4MHO3ZqpBls0wmdFAkOc62NAS5TnhSt9QlB+UDjZN6uwSajNHPvHkEkqKtpJq2mKfSYpPjs1IZtTFjfzMoGJEfca/5YZ+znZ4DaRVqjLgrHOXr+uRZQ2vSiR5ZTUDV4dRNqU6eB6mMFqVaj9sF1XW9xajovUZMajJtEMpJR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8yd344UsWttPCD1jDv3FDlaW5qe+QgjC79B+Js9Z+BQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "go3U0AFz/Ibmxh5S5ku5A41IgVpJ6f9oseoNULIxrhMQqnDNl8LsCym758hZ0/WJ8diedaD9Kg451s/n3hGhOOqa9QOFNoTAoA6Frj0zyfTKyJRlfMzqYaYfZE8VRpYHgEZ5+LcesFBkVP+fxApOPK9yNHwDGa+7u9j3W49ntc+rXPh963i5GhIYNmsS/LCWp2iIpXoYIn02B3EowOz/LjwB6nhwg2nCrGNc1qUFF0DAkS7l9GyJ/txSNH2bo5hUYJWoyiNu8fl6dYy/xiCZctUxF1js/lqFLg8PFAty6oajrmukjE+DZSBflCZaFB5ZK+rQ5vZwHxm+pcOtqUPVUQPrn2QuxvlU9mYJxj4CFMsF4YngM1XEr/MK8CPPJytEWfO8+yrtzkOMsAnL8gVhzVJN2hRgayKO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "8zSwMQt258xz61B33b2rYGLqpAtjcZChekDzw00Unjs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xOPJKBcr4fX9PrLuRvcJQZbLoKKZYCT419eeeitIpbIK7ckb1DkX+U929t4tyL1gQOPoFMueEpJmPRfF90yevsf47lToy36wEvyZTnpf9pUrx+m9VNU+lgCHWzMs5+ZJeyBQ1zb/wuCmc9BhRVtI2VnfiIsWcg/+Q5OgyNRlhMg1BWScy4nX8XbrySw4D5dvOViDUIov1bpVURi8N1iY+uileb50JokpC/Y68ZrUljY1iPm/P/WsF1uQWxXyjuuU8fSWAB5HGKNVuz4tCv0xHQrUeWQpTNMLghUQMlZacM6j1APfR4ug99ZimbmKPO1jXNPE39OZ+Ow2f/EXyxpdW3m91J6biu3xGCCIvlRTJV+37d8CnqaQG+29C7Fn94wyTA1396b9fCXi1fqy26Vs2hpB+KXzUefz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9+K+AUE6wHsDuLYzBKnr1Ws5CPfs5gZKvwSONJaeIhs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ioTpL2/ux7sUYxkyAg0gPm38ZSVaDoZYtRcu5Pv4dbkGFlJw+JxRa36yWwaSSk72PLqXeZCCy0R1ssvLh1UBGSyNh9+3+cDus2KGjn6xzEBDeZwEtZJgVjZsRg1xDhWHj34Rz7GV1SInl6qHrtyzO99OXynMlRI2dd8iwenSlOOXIZWg6qz7HSBMxxiIcuRndj/uFqhMzhYj3a5BQM6mRKA8WDAns9KdM6cF1G46ELcqzf+s7Xn7IFVP25eRpa4AXtA1PIdcrSm1hw8qYW9YLFtHTpzCQbfzYP8CN0IHwYYiRsuk+EGmzRC/z64qZyvb+mfFVtjTNCNfzr7aBQrauhGuxxcXLWFKMjCsC7oX/+YMqjt/UYAx+GjqsaUgAj99jcGRaSUkkE9P2XsA63aK6j0N20U+ajkY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "904a725rLqlb5ypQVbeK7QfH+4UXumYMfN4yMP85pN4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7ziZ37WA0VcthLIAQ54GIPdpIuKrSmWGd56eLYdahjhdomey+XNluawz/5Z9HQJgtYDwXQLt//r9FtVphZAyweHijHTAg5Rkkq1167NJ1Pxp16FyivPtfw1VHxK7HuFU8LknzB0QkObCDxczkjbqSeJco5x/kaad0DZ9lNGSRGc5KA2hLHpYonRJ7e50It3P+YC5iphu3W8gdyKPau6C2dJhuK6OiHgvTu9KDSd7RHtpAdlwwr3tOu4z7HqjzcM2IFEHYtXoMIvWnFFI2dAtIV7tzyJA+ljEtJbd/LWQrsWoBG5IU6kJxm2WWk2SozuGtAPQMz20bd3N7IkMsvGmkDf4MDOi/xcFSyPuUTiouthESGkhWZ7KE8bnokHTQZwxCsR66TtFEKJzszhoYrjR82IChEy3V6V9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "90aWEw3cXNk1lzWgrkilOXjrH5ye5dAuhT5ubynbdNE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "70OyJwEMqKYF5SG4XJEyQMgav/yNgl4nUHCkpDpbZQdQarCIiVp8dxT2tKEmJqtjPhBLvfebZcQPUC1hnWY2bMRhAIl4zhwIXaNoN4xbngJGqpRAThDwh3viFFbmgvyaAeBlTSpd8B+dbRzvQufoW/DNdVA36qnCusKsPs1QI7u5wchFYILE24ADItOnKkiGwX/xXEWiFL1nfkZHZHadmJmCXUB1+PUZsf2EXojTWHVsZ3cn4AkJAIIO5bsBdVG4l7jCtYidxyFGNWF2EtFu0507r3qZNuq5Gwgr2OhzRqtTeiYFbWW/GCRuZFjprrIGkflenc8nueaBkjCQeUkfy9RNBlDCdJx/+9h7odemutLaKmAzfcgxx545uJ59ygaYeFUxqSd8N8HzAEOkr3QZUjm5eJz4F+VG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "90mePlokbyVD98pOphzLjgZ3g8pJq0cooT4sqbLFR+A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7rDCULbRttqs0e7uuwhrHi8YgOptuO+6CL9LeyAbpWmYrwKqiNGcxzoQB/9iEUtIraZp7twXzlgOUi/WrxjFhp6VvEzxu45M+Iou2WIH2vrHbDeLGLNFl2bO9023itYkVXkT2ivkgQIzld2YgMaoqykK2WaaWWLoHPSijOcwZ+RRPa06n/8sRjspZ5fJt1mPrRJ70f2OnHR5vmU96cI8KlYO7SnnfyvZHEf7SWfmnQCB/4dhwLa3RXVqOcvn1A6sv5A/YcfrDygtfBjjSNUCgrsJcFRZpfjimaLfi11dRMp7BmbvhzbdRvUH1x98H9PgUDom6AtMN2Stanj2Z8woyfWPcn3WpudrzwdiDVZfFnXwOD1BSbgLM/t17mropLVc+444wLQ0deBmft454V0x7A4nN0FdNsfI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "920/Nz8XIpDg25VfAP/+s6pSQgTyUXhWAWxXhkH+83w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "onLErz/Ct+h7NiMzDVADUkCIn8WuscCg04oI7PbOT61PaNP+i/xuIcA2U7bTy10T4eBOCilPMny2NtXDOIhGv6y5oy6Ho8tHV6gnM+k4yaIr5vFG+VgsV0FCc3TzjQUPFTg1tvYTSS8MRXX3K0TphcrTmIVE0oZAafs6NLLpQpr1u9PZzorLAx7T7eHhz2uxzFrQBVju5D8IJh3K6aZRQXeuAvxVL7lgrf16OcbKOrCUqKHOmsDlbZUs2BtAjbFPnpnqlTKs+OqS+k3mpel/yGf+9C0KJHByNxrUI1fm3tzkzp5nVH8DscYmCztdZQ7Ku0C9w8fJMLxQ6m5TyBHxAmocZf6rFcgAmyirx0HIE4sijefu10YPDmfRBn19RRIv8Fc6Uv1wk+rMyjbi3rmrj228twOXpMXC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "956Q5QGcU5VAIb2EN1u/hKyCDvO1N3SXvgikGOnN+4w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wy18aVYzzTWD9dgSOWIT7j+4Lb2+hLIXvhf0xxfKFjZg2klY4Up94DFz/3Y5rrGr6fLnGnraqcozWWWJh0bKB5dFKQy9SQ9MML780fB1xJo4i66pgShqiPtyrmFpDaq/wuj29A2ILeDvJ9eI0hGF70Hr+K2LdTloIJhCk7UwFolOcxGdpT3R8WEuc/iVrN65NE4iEe+O0YkY4/qSqZkSIe0ZtXZvrHg6J3uBx9o67wBRiVhHGz6UrXIrVwVSTmeSq4ACjobUUfS+voPh49AUXGZqb7794bdX573NhZ98lLXTaKEPlm4ERsSRjwGux2L6QQGPs/2kUuke5vaaDyIiax5Ae6oAePLMEsjKCgH4iCINLVulsd857RobSpBI4dKKqCMDkO+utF5yIXKf6YUpUkbCGZPRwWwf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "96LTWQZ2n5N3mCglM7EysYnBznuJNQH+oDgyS7KFTvs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FFKbEUORnxAUng0R7XH4IrHM1T1XTjYIyPqAIFiYhyfBc6rgQ0YWjBBcuO9eaV0FBZJtEbMHzwuTYDaTMRRQCXlWXPN/7Ta1FbI/VZ+JkhjJ2H/5YfBZpp4DiuhlcvmPCJzilIkm3UlXiFNrzuBKgt1ztqDUxA4mSMQkusEjL3Bmi/tv0AI9tLUB88Mv16SBXW0ygS5DdJ22U6OUP02iH0L34x0+fz/u4V/LAk7283XFnvi8HUtiGUsebtd0SGWB28+UfXOLJu7QVjpmaf8MexUoAI95O0BroBXRq71X/4KiH05s4UBSKSV3CDWQLhI7X5KOKjB2UNQSeMlihysrsybHY1ZxfJdPNXFBtxLVoLFQkf0DSxO7iMDjFn7u/5VQx6d5olki1sYXNajASpT0oWTSBUHylBHB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "96XrbbGs61q6cOV1kspE1WfHH5GY8ZUhxplR5FUYgz4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SulN68Dm5YlNjY1b8MzSvkYbxXTXg3g4LiULtlVwuGkui80uOyl8xkA121EiZbONcoX+husKFee0+kRHi3cp1pIL2JzpCHggNEWb+TWdu5XzNjFcmXqABelNthgdqt31kRGgCRKnlz4NZt2jxUv4feObWt458LbQuZY/2dRUhE67BzcmHphM0okvkEjf7NdMb5ssWkjl69fA2JyNvES/1dXe77D1/US0XHvzQElF9MgXOQEdU4FnBuvciWJx4TvxWQVq2NA1C6T0nDAWIHyBLCoPhX3SOnpD8Y98OZOhjT6AeKLDOZnvMMUM1JX/Z8FlkR7+iD1ZfOZKAhkE5iPs6IXgbzKgwMfTjtF77Ep23r+grK6xUeiNhMPBq5/OnYoRb7xsLCYXfqmIk9bV10MosyprD7hndvkg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "977DijMQ66soffYGFKanthhgCdTcDCw2YyUK/Fu8Mx4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L+EJjTNe5ySzN0LoBKyCRngV+OyGNVz/Fmw+aN/WLA0PpO0QI5PN07CCospcIPNLZeqKqUD8bf/umpdQ6uyM9Kijz2BXOqt27TIpuYwK1+3v3ZjO13NU8iFtVF3YftVOrR0Wi7HUUrRepKhS1oHsFGXb71SyFJfa4cZuDijxJgsxM+fksfmQgGbExQUx9l8TLToNa6U75yjFyTsRycbo7FSHjfUUntNlgLO+tbYwftwYpCWl0M3iKLmetsPVwzNgvUX1OkWIpz6TMZrfE+1+xn3i4TvW6qKPmQfuT5ldAcMKGjeL1l80szYEVT7Cw9z76NZx3JmL1wEtYAGJlJe1IGwAWO4OcO9pe7VQ7wo1Li8z4cvMX6IQYqw1a7as6o1onG4rRT32FuuKH2HlOluyQM9M8+8Jifzs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "99EsM5drbPkmMLaCSS0cWrPsKXyx67r8lJYd0nvfLMs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GZzzXR7upXqyYcdL6wHEMRojT+oyML+CiSsSHRlHpdpExiR2v6L/X0wrzYH9qQ4PwpUUs4XgOrcygyO/ibVi65Tc6NoAOVa5/82FhhEcDWDgErv2YJQXkFSXV89uNZGnp4eRJN9ZOfTPPBQjxbYxby63RDq/UoGFoap2PygW6MwexyJVwKtf5Liepwqzv1Oqa4R8IW77Ljmes5NBZFFPRC0Pg8tfPDvUzAazM3AYDwun6B6JBLs6GulXEzKA5pHSaxVmWALNQvDcB8Ea/jfxbMtjV4Vde3srfDHXUX1Oekq8v4HTCUoqdTCt+wcc9qLLomvAT2i5iamqIU5v4r67sW5f49ITPgOQlTkJu8KqI8bVDLzRYO+v0uA8pWCDAeOUQdbZpT1UWmhkm9ypjYijK01QRbgF1tiF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "99zHBA6ZDmQaBJTtFEAEVTpWnrkgX9wLW6gPym1G0Zg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dChMlbZIpuyspqYSHvNTaH8MVb8+gf6eucwUSvYNdsq0bjOHwE7TZ1Y3gi+2/DpHqJ+gfW1+oOC2F2azxNlafO73/EgB1wnSmv9bHzppvqL8naNcxZophk/vmmVwwJSpEKzlvYRoTZohO7ymzlfoOiFxi/asg30CerJIC2EZI3vnCv2db4w/Z+wnyT8Xkafuqs7CIEtGFYR5DZ10obZWmBTTDj9dUdvNjSYmVhS0lWheSSpt7217D8jo8ZIdBkglU4XhzoJKLiaRnfN3Qiakx8BARQOvMOBqBDiqQtPS7Tb+FX2wDtLmxuDmptBqsID82YIbJRXVdGYY0TsWb4ku5Jt6cd0zU/BdL5psAW6F2qY0rkCt9i2P88UIHw0ZUK2PEeZsEFwQpqTpDCwxbRs55wy/wSXur14R", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9AqbN/eImn+HikqxLlcnx8r5V7hE2OoLvIcZDvU5QPM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w8eF5N6Otr5dvEDGS3xmdypN5pe+Cx7s9o97Oks0XZa0Po3ZDogVAsjL060mSXW6RYNCKnMKhm74cCaII61gVtQXJsHFyAc+u8YYgo9HkPX/mQhKnYtvE+UI0uCpCWL40SVY5rSf1r16q6oITuCqRjRnil5ba/GakdlPpjTfP7dKANb+zxwGUltLPEg405zEI7tp2NWT5UkOFAbQ3LMidoePcBgQBD4OSkCeJm1r92/mCZK67sNxGOvqQ/tvMVhKlQYfNkqUMzfZKRUXyzYlVqvCzLRBmbt742R6gNHywOvwQy8jp5QDxmNm3Sa7mJOJ/FBRkjIW+oU75UY+gTnRKN8IKpZvQv4uVs1tLd1IShToEr9uXGyMtSCrp0/TIE9clfO4rVUgq2+DsSF+frgyIWLIJRhf9fAn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9E8132d3umED3QodO8Kl6W2R2a1wvo0+bIo4wcR2/bg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Sg71xCsmz3Zkw0IsS8f4UfWbt3OiShMqHtOR9rJyxK5eD4uEdjxql3btBv/9NBiMfP5GhnudWqi0ibK/AeREXNVWIiHhMvNUvr74Xhco6qItWpaSjotJsE19//iJG8FBeY3Neo2kdgv94GaqXaTBEl4/38m7A1S9TASYR/6w0J14w0IgXkQY09ZOoNrXFpBi0iDuGqq2ak7rFV2XQONNXSk4P9q18w0WZohKzjjNDo2aZp5LJCti/gVaTxI1PSsWpMfN90gU2HgvPDxkmiCSEFk4LbXBT2YxU0LhTJUdyu4TuXfcw9qzW8TL8+CG+66dNGwm3Tj+vxjzocwQGZZmCy7Sh+jPC4f6OEHxWK62ytc2SjMIvZ8IMm0VSm+7UQI0Fsu9/NfTMzSQKbThU/6XzTy1imdi5vpZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9EDCzHCLd9LIoUgCecJGMnrh7RoyjJc6Wxghsun2xEY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rxqXpAZj7LbaeMtnZQqGZTckwXNWFnwWjxCzJnZKb3zEISiFLwJg2qTSA80Nl7pB46L2eariXumjArmKn8pCbO9C7SPILzDjaDFBkGFpdGUDlMpwas7wadv7dtk5omvGdKtTBQYAsCwYxv+i7xQgE4VURJmAAQLK6YaNE6Zy88U3KhDuEVRYrEigu9+WPUo4sfKtNSk6SIZ9frSIibyA9m2eAAmM+ochyPTTV3qC/M9BEioFOreD2cGlYc+qnOCtneAz2STaq7HUtDButu5mE+WoVL46cA3pMZ/l1IkL1F7SORd12D+cUDNBVN8hj+DKunfrz70TC1CWX7+BvO/PPY2eCig5n+RW4fI46C10WBb6Ga4mknQmi3TghhKlOyFB62fkSTsmbc0YpNLChQdIqpCAZ+JZdN/0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9EG/usFU/Z2SpcRz+DVno6wKd1MXqecwtIgTC1cSLvQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yLYQ4iOB9Cl1LJkgdDQljMlYPV37qXEoCqs0HAbe+3C38fVmwmYPK6o7x1Ql8iwjJutACgW4MfsFb0AJQAmMC0HA83T5mO/3oy0ba0fYyqQSOJB2hq2XncpeA0URdO9XsERFdMAIIY6dqvkWpAj5+Y5z2fc4voTVIfdn72d141nhQaPtw36e8v1s1WWwwoeracyeZ21bxj4T7Si+Hxw+Zp2k5ny7j7Tm7lusk3n6MT56M/3Htfl4tXgvQ6da607jlESVRJ4nChgWMJQRe7PgwtHNtDhIR2XTyXGE0D1BYNEBZm0Qe7sFaDd2TfH37ElG5H2iGhIpCAwIJfuBPwH5V/yp44hcRqJWpiBr+tLPiZ3Lfl5e3GQyFRbhxEqVvXQ1sCZ0PIoCK5TtXax/YIPoU+FR89DGv8fe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9EGv891kVrCzUlm1tbVxlV5jE6U7pIJpt9Ig2byODDo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dg6IqsuICDaHMxjUvCtic+zAHxvbdzYEaN7VSlvwc8momvW1uc4Q50fyVYMoGJ9gJrA8MC4sOiAAM7coQNX9LKq/FvKXKmme8KNe4aVdE7IzR4Sw/3bd4qhBnQC64zFFVJpHgBZr8O5FpvsizrYQzHQP8WaKLqZeuorNt+YEDMfqZHkOEzRHNS0p2AeB76msmK3QVIDhX1RsJsZZCoiIPEDrSvKGVahJUxZrciDNbHXrED7H6uOlzi+1HPLWk5DDhbWfrkp3b9yI7EJg7QOXtzh0Lihbm9f/HQ4lhejU1HTo+c+Kk05O06qfzf2/G197foYoRFKP3AKmi7JI2n9rTIDzW0X2w4Qt0IzOza5ovmkq9cbxdZIuAQQJ+W5JJpevQPDDkJCWAQwxrbkM5cS3aAdBkjLJp0h1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9EWD8DkQM2nL6lHTW79CmP5u4ktT+oV0fk4mbABx0Pg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fqxSSFYMuVmXT/d4cR/YzxhiOqTqPLJkqUHe51UkjHBA9vIK0lEmtWhMeoJBWtdC4dN5wB3lKpWRp+HxPr9vTsjqDrj/iIsrmBZDKWhc3HmjtWW8PI1vm/Uhmk2R1SOci0xbgQj0dJcKUdY0mvX8g3RMSnWpqszJeMKd0JfIfNWPMDmggXakERvsr82Ug1NII/WYg9g2V8BQhzUx8QBPRCOeDiPGEE8C+ucKhhj1uOAF42/G5VVVETZ3PyiiDC3XUw2zGB1POlXELZjLYEw3dklkEwnGBfsWV2qdyiZ7O2mKP32JRZ3mATU54r5SeGZti886e7Pra/D+H93+qIO9fn/XH/B6Q8EOTNaUEppM9JvVZ+pVDwd/0i+bgVnglymM4T5Evd+ELXieAeVnvnWS/x71yh8PF1Uz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9Ee6PhG/+9SL8ghc3iFzMIUmiUW5TkYdbvvx/SsqYL4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wn1Hmgmkpq/w14Nv8Kze0kwpOtTVRf9WrIN28QMZuLFnKvR0e5zM+MblSErpknEjVG9cQNanAUx+0FVCd3NxBidQC/oUr3MdVg4thm4s9a6BWjcosg8TaBOWtR/Lh+eIzv3Y9uELkXU317UNzvb84X3x2lEJOQLwcL+v4m6HW9nX43Pj2DAQi92mqt2O9blA5RE18ZnwbarH4QCOjx/xgbzq3C+EYbmD5A/NtLxWWbC0MVTdg/BbO254F4f6VKBilimN+Cv+BltYzCPQMfsh28h4lUxaWha87LkrWWF3hQI2nMKcILKYoIPP/6NsZzYp8S92QClfRSdfv6/wvWVdqo5Y/k4+ffU0yFGvPSkahARgC+3GavKTEsNho2dT8F4sulczcly829O8YL8+zEt6afQByTPnSTFe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9Eel0tj7CDCpXqqt0SXwNqbu5wWWo2OlPR7pmRkeStk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SPIeGesOB6dja2z6H3O1TfqXHcZCT/jPhh7Xd5A6fdiPTVxIaVna1Fdcp6K64oqDgrTg5EGiksj8B2AvkWPMHZcT72+mQDUWsR0O8dGbLvSMOnYhu89gcVlHY0mZqq68LnIKKYys2ApWI1GEZHCa0n21wzOBbeDN8bU0Sqsz0URidFxeYbvG7WInrMBrRzreHeesG+9zEHOtAEQIADAqIPwWRwkL+tmlgdMngnBYG6XSpboGpkS3mrB7SIJMmMqB330su38Q27SRUbnQZTfInQ6nb669id9iRaz4mTBqLyJHqDmB92kkz+HtIiUOc1xAgYDAXDMkbrkBGzwsq/WNxzGreJFkUZzF1YNfAiYuni0+MQshH1gDSS3d4QEpKaMU1UuhPKlKJN7Us2/y3uMIghfEjWinUnmx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9FWWd5GtV9gukJuoMGmeyYQ+dH2P14tiAG/g4RV9HNg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Iu3RlYFRC6mfmAd/69xvTjTQcBod+qZvEODz4HuDEXK9Mv1BUGt7CIgfhdhPa2VTyYVnJnp9A1qkXBOoGM1NcjJCTp7pxOJvvcxoK+gm8DVDAc3ZESYZa36NHuNvuAjgWWyh2y819ma5QQgrTf+Jw/c2BSK2bOkPq4zC9rBK8au6ZAcRfX45cD5QN4zoOFKeT/8SGj1n6DsWg/ldhBiz9SARmJaA/nE/W2Au/mBd1hwjUprz5b6j7nTHubzwaYqU+3dYW4XFzARQ7FuDPWaamrAnIEB1nZ+clI2ruDCN0Ufcelp4xJlS3t9PsEbhN41pBBxCQ0W/xFLM4CGMeiejWphnMN2gz1akkdzfgPnv26PDbQbjTH2Ivpk9Dc1vw7CQQ5j8GOSXVe0BuFw/udLW7YPM0DnyZ30N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9HjkCcMDK2ixf0QurQYgnVl8DKOYAp8/2baguK/sde4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KE8OhkE5t0nqRKILTIPDW5iI/kHayMOUU6Bmw8OyHpZO5/GpnaS6LZuqsf6cqcAwdU5ElutG3mf6uLWxW6npPWnjso0uJPh6YSPBdmskFwZ53yCB9roBuEr+xdxpTL6NwtToqoPE5Q1m9r+iXX8uXKy7LoaZ1AQlz/8uQ8ZVcLmt4iQICx6vih7hDbohj0nQ6JKVE552xQSiv5rnyw+EPzjuifgDXAqhGgpMPtDCHn321KfTRu5q2T9hNpKj2LQ3BWYHXGV++A9tKTHi17U5fy82xAo8J8U4JSyMx1MS+NCfN+i5snBr9K9WAR5e5yx0cbNCCnkKLZxkisxm7aW9g9YOMCiKrPT+5n6hNykjZMhPutc0r4OS/JzCjxeDMzRCg7GgJdOv2MBsqM3bX302RSEUxfYFMVmj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9IL1GssOGZYJPu93KW4nMXi9GK8S09hpSZu38Kh2BSo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PM/lbUciSiby95RPvOUFeicgkTmYM40BTDKyFhVMlbdg4+TICAZqKXUbnMKqV7J6I+KjER/hBBa4oKcdx58bVOHFxoXdXtismU5PHNjdCJkH3GNemC5qxQEsBqM7hlP4CONh1wVMdX1m1VYf9ElcFsl6sVGx+jxZl50zOOIR8nXgBZ/YWZNLi+CBOZF9ZqS09K7xE3yDzBm0Ro5I+xgRA+M0ELaJCobHrmppPC4ONXvPAMfiy/zCkie7TCq3Pao43AQ/LHAEUqfne3ITdiyBj9OXhj3wWio8kkh8307qHZK3U7MDfRN0gXdJI7eJdd+KUmuWmRMw39qDDBY4DB44tbopMsuA/89FLDfWPuzJ5FQignUfvfaXrPPjfXa3EMq1Y+Edf2x3H+IX9hN+4O0nkRw+v3RzlT90", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9IXLWP928vZviCWA+2TBYDoYuDLpHRfIQlhDLS+8h1o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "R588IazbknejWWaTno9wPFlwGSgKAqERpJCuPP9GOFG+JiK4VG/Ow4b5Gdsg+UCedUkWB3R21hLgvpw5s5m+KZco6jmGURH8FFP4FXFV9+hwbuw5Fe2Jxp97GcjSRlcHC8gvdK2OakzSOFnZqPtamMmbuD4qMMPNL6WhpWAfO9iBQQgLz2yn6K48sJ4qeXGgEO3wLaSs4+JHN3q9rVjhOXIDBM4zQ7kavKE0AmGbeSeW8TmwKksJWb5RLwWIZusOPMBz2xXL80klvc2l2ChfNlEmD6Xr1LnXZ376bzKZytPF/gd67NGSOn1D3seGW1e80UBx9qJBx4WhewuWY+RjnpkrnZRy7ddWHIi6s+Jw5mbiYZyxCi0joXBZYWHonxgjo4Uyr7VW7Bp1T0MEoIW/gMALuEUZDrys", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9IZSrpxHJTr0RFrg5BTwQKgqCCu2qIipnF1pHlptzms", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4cNBzNX12qVV0381TaMQQzprdFQqyanVgILnIOm+B/3x00/0cPjhQjUYxJq1SQhsXFmtprnNYio5Mnv6pCKByLYKzOMrm4nzSqQbbrL2v+7dOphe0SlDPCW4dmHW2SskWD8Zmrt+vJmT5Cu9OA1+iso8f7C77SWDjLks6fUmtuDIFUxhTRfCZcCxV2hW9EE51OzzZySCnypPWzX30dg3/hjbZt9ZIUYPykVsv1e3MxdlfpZq8mkKCrUZ2mLQapHjYKtQx4tKRLYhUO5tPYgYLhGCZFTfDmYzNI7nm/IFIXmV2KRc1CBsFojOUb6AI5OJq0UVFl3cxY8S4LzBBLBRq1WFa+evcUMSuk2PUeeNVy5Q+wBJrT1Zsu/H6v7945N6pYhYcmhmjW0f48WUYN3nzuXZoHiNusOL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9J+qyIgfAuZDXOT6MkSFtuV2A/ttbTjyYw8oxCapG/Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3XVrHROiEHiO/nORv4tXpgoWbmOx+MU1oUBU3QCJJMmN/EOBBCNr0cu12lfDnUQyjC/N8iEcIqXVMITKvTVhozUAi+BpzQObgEZFI3GYR1RuO7oEt86syoIJRfqyvDemYwhgup9xvi4cw3OXaHwR05WjlB7meBazW/lt8Ch/tujPaxDat/QfAoU12mK/dKtcFOAgTB6rzeopQ2zLpTONLpez2PuSJXqujHPosRnY7mm81vOuum6OBZ6Y6odLP1HE8jyYmzfHrixPjPCpuZ5r4qrpSH8QQH2ZnAvXHGiWiqmHgREH4bzs4lczH7j5s9NiQwpwmD3yUz1XBW/xQM6QUd7fCpreaKNvQn0mcsuyWI3Hf5O7jY4GKyoKLV3FvpX9H6AhddRCWz+62XH+qaIScr40DvyvcUge", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9Lr5s7BXhPMVgNK7Fo0GYdvDMuITDj1IvpXmimczj1k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7kJpDAvGm5O8jWBWstswLuiHGF63Gjc2QdBkdmDoYib2GP3G1DmodWcfzA4BVUY1UvXtXcjmZgjlBwPlkaAci+BSZ1GRs2vN/0Cg7ISX6tAifluzHY3DyvrY4E4AVLiDhWw+x6qqB/PfKq1xQ9DRDOZGyP6bhQHpHtHfLlloITKZDh6yUTrQL4oiLT0gIxfg3uCQ2YamGd/dMme/MOJMrn6q/F1+EpNMKLXCy03tmpS303UmxwfzgTFDKW7K/eu1F55vuNPNWb56yZX9jsV5J5tWtxITL+4VSWvzkPxAusN0oDXaDJhkpMI24+5Lr0+Rf/0C95X/P/xwcprohYoMhsDbkgmaPzaagUcRetwoG0bizr9k01ves/kb784UOOBnI1nEaCXL06srGZE5tCEfF8sKITrVFZmK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9NfMAnykPr6l6l/qKNDtM1bXXHL8bsUdD5/sqwcVkpU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kLHni/pwOuzAvw5YxZS6NyqJu5rqA6tIXK9dhLD1M8XWPBoTI7MnD1ITA+Y2/g/zmdS0pecpMtgEr6XkSV+ekJJ+/sstok7eb1r/Oq8ob+nu5Ig3EMfdoVyQAnH9C2sultny8D+6ZNy9DAIp2XGvurqM5Uo/yv97sAEflMrSlsX2JtcTTQlJGfuPuzkyCzyfUWtXEu3ENBQ6XPKJOU9Fm8mPpYS56fQkweFMp2oyvjz1j56Kno2NMGVi/uewSflCNugeC0B9Ne1bLRdIfuD9EF8w0/GBSXEHv2blYjejcGeFqcpW2OfZnqNwEqWLgWXZKj72kccsfN4gI2q8TW5+2iIL7FHi/XTd3OrwczTgFtkiy1paj7VJ2wUrrDs/cs+gq4oRquFAJpZKr7IPyvPr2bRvZN7z64Ef", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9P2DTc/z3BmohNhqhVTPPKqEV3zpzCOSAsgkqSNeolw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X3QyHGttNSRO64zpHFd3JYUTJEhPLNuuUA+Fu64N7uK8I6sgclRHyAiHg1RY3NpHpNOUteYft36PSItHGQZ4ypKJuiDCENZKdcsxgoDvfK5kyeSgibd1xyNvBaHYlfoK1GwabM+HYDygeyhnZHU5MPCkv30jaa2+gyTSINsB0P948x95QAG2FvHvzlHiffB+Zai9iNP2wAl8KAj2OtXiIhzsPhlfS0sOMfmKMW7xe5lv/aofAcnMIt3tGmfwYZTz50iQ9tFpqWV3R6yxMRel5ePpidRHBHLGwC39EVe6QqGz4bl9hgLRZWIJXKsmd1NUhENXt8OIGaJRW30BdflF1+mok2nOyjqnn9hYIo7MmQR4qLr10tUL5xPM4tJAJmIc3GNvtAHjmDR63HKpbcssMh4b6i+ijQ3S", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9PBYC6FpqoRLBIlEJ+5Eb1HxRkAzMTeJBpNOmSW/GJE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yB1ArH548p2JUGVusEnN4aQ+3sUBuKzskDAJT29UXVyxOUWvSsOUTvoNBaItJsAT5KvtUPqGgNHTR0FBmn5f92PHhRPnJxmxEEvZxmgkL2gUFQ15HFHlx60ed1BmmjzkNophrzKAexXD7kfc6poT4Qy5oWj8OmneM+rW+SbMD2xUm1JxTuZy28m8Kb5UJrfaXrWNH+DEUA2EyAHCgF2RoBI8i1yM9UL80AWVkcOSiaWeWy6CARFyIviepTb66JndJL0vpH7OrI9Xrtfno9uk6N3WcVjth2TMzbGfJqNOLSNPahP446Lm40wQv7QMm8DA8LuJPf3BMF34Yj6atzUgPHZviYez2Hqc4n+0bcSegANBjXqVfMxd6teHKO45ABSq0N6mNBiNn55+6ZvwDV2CvJsyaxLp6d5P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9PTsVf4nkeJ48yWt+HDyon9UAlt5CBKEpPuh75Y+KlY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "chm9IrMW3lxpikid/NrdDQXfsV9yti/Phs2nY87bxTituZ/23MaS6dd2PC7nAyhWxRmT3cVw896YGL2FR8y+tr3CcQumaXNpYpg3UrRasqulKaiKgZ05lSWadBXOXme9HEnfuQAnAXh/gH/wMA/NNyKi86dYVbb0IkzVhdM7lbBpJzx5lHBt+v+7NfbgJ1oVNxJC++xglI1eglvJVKB0212sCOSFbqOr92/exkg1XGaSQNreamg2XV3fDZcyINk2dpB3tK73l7fN74b1q/K5ZDjoEKI7QVuwr27DZsKTnYVBxtnPP8ZnSqR1Cdzi+vyxtTc0o65HWlrxMK0h3SjEymEzhzue91LYtbrHjRQHnKyFKT0Bd+aK52AO/Z0ax5US0vayBM+p0cYZmLEE/AEKrysnQVJZRl8E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9Pf7yV4MePInmZFjLFk5adaTHy/cx4ZMJc+Hx91uanY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LLLax7ol52JX42nFObmuy3YjRO/7up0fF/RK2HsAfzXxH+dte9z2R4cA/VOhyAbGnEdOtdjuz3UuEiI4QK3cA4hjVkCYz/BQNxJ9QCSV/GOnyd7+uxS7YCSEKtsrLXVNBVH8x1WCUMh5A1F0cP0GNwZA/A/puZAMt+53l5gp5ami4WiTMtABtuOXOd5X9K3uU5KJewGx6IPs92eSibEmgGqV49t6XMJwdcvHw/C8NHzfpEUsxCUxvFQ1tv2aFOfRkMODvc+jvJf7PMox3p1dFHqA7dNcN82Udnf9578GyZy8wQQvrmapAv4qDphs6YnOfopdni38eOrJyHZtgnASlqgNQT3B0+mHHwWs8IMap+myQyLD69p6yeY7xZnFdQvKQwxsb6ShzvWC0AWVQdmJU06pL7t9t0xf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9Pzu0jUDNl/L5UocPvFyYIt5rUzKYT9yxg8J4cPqqFI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "si97FaoGriebS7/Bi7dq5wX0mdrwSpcXjzqoYANLHi8ORtFF5eSMoYAPK43xlUc/3s+c4Il7VMYc+VoDVvbS2nIO+LwXb1faDH7BFEqR6T0pCB8k7yLSYihZfuk4S49DQFG1tJ28cE7fllA3ryKJGfS623n77yDCOCrhUMGo2tgLyAVhP6tgo/lnjh3rhaju3LoXANknH4yws/0xo41Nd+4UEmB4jxLJRcboT4cs12VZtDMpunBecENglSG3ptbpP+XssSbxranKgUhwYjSszLdShu1mkTXX1ejvv9VXEhJ8+k0p8pzdhSha1GJCBm+j1BnmuhnHvGTaKrnusrFZIFm5Qv5bHEEKOaiMRh1Hbjchu6WvJ8e8VuXtxO0ixs7tcSXfZ02Xmj/1tj5G+FEEaAUG2T/KYo0o", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9S2NZr5gkkmXU6jln0LCdtSB41C0rmz0h6phsXWFqak", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "usamy9EsC7y87P+Ir5tlcsxuqicImbPEjCrANQ9b+Fis2IeUtSZejPXNJeCrzng4dahUplfKkTahIjPHAKjuJ0w0eUrEaGrEnKMxGSgRv3lM0Vb11yD4LWgPJnm2vA29uuWZQw8Dpc94WK0msajt6uDr5GxZUniXvBwGv9bksB8tZXDijcXC93DyaxSGMT+yZ4JWUB5i2adx9kQlpouP+7oVl+2VppgGFspoEXhwjbV1cxg+qmRjP3GK0umZsfoYhAfLKGie4NDCwGGZIx5PluhW2lLabckVCFk8+Fgrkm5cx5M2yAOU7FB/4RVxPH9yytoMGbwg1jqdv3MGrEiKiIzxaQi2BBukTs+ftYs7JMRTNph406DZ26GmkrVjjsiOxp2Hqs0bn1dBDUyuChw1QEqBEXOm3jDJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9S5Ck3u3QqnXf3EttgGukyTAA0aG3cKiYlbXfLBVSIg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vtb9AQ8oSpsO/5ftPpA1w8fy2L9ob0oiXyX6e/+G5QyPKRdcGdcmu86z91MFtep/w5N8B5wxF1IFEI1nowgsYPmRwn8jQDpZ3se4k1MG4CXdJdPgqU8YZbImLmxFmmwXkOy8dHwu4OHaPjInaz1hS7pb+CTKscNk+GMtGIU42kqul3yjwTowDQK/1h/V/zvlv9KjxDFO0Ic7pz+ViEZKhrX8q6KFFXSwW4vr0H+GSPOZ+mVK3if5ulCNK0Qe+QDFD9bojHr9JtVAhwIXegUQmddADup6r7rMnM8iTgzoWv8L+hJPdPujNo+Sx0kXsD/LVzIyzpDcLSk9wC8D2H/ixpWJYcpkT7n7Qem1ffF6ZF6IcCXjOD+dcV8OOv6cSZZCURlR4iRZNQ6iqvR/yZQm1ATI+l+N9+SU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9SfjbwRtmoQ8nXRH3g9ktUBZWmS99DXFowFWtBlVTCE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dn6p9nCVWYrGPuyw92y9oQZ6gpIxjzb7ivvKsiITRy0b6rRTmZGba5tq4UY3gawOK9XCYvFvu1VyHncfqpmSBN88SRcDkFdCwECaaQAeqrJfbwSo2ZN77EAgfQqsn4QexErDS/eY/bTKYiZ1pNDYKlY4ScNeBXm7pmAu7hrq5p0lMgme83cv1CsO04OntjTCGbqhv5sGZu7a3ohzRaJ2e6dOZs29l9fVRMbusL+QZT4osGCyyqZoz2p05EA9rHSGDjqHvGnSQ3gb/5T4SQqSNH1x7PHme7DZOhGv2GtreWruGid05Gd051fvGeeNHCPuZ5AWebXN0UGn1l2kDOEfIzKdQpJRMy5bn21oqwF1hXMqCoVvtyrf3+J3jlAgjd8UxjDY+81upHH0aBnm+DQb8H8taRp92VXc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9UrhvnmRdiL5vZ/GjY6RVkTjh6RxjtrO475GxUw1ZSI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+vGocfSXF0ycJ7Rx/R+hiyGUWBHMkIhQNOtpjeJe7UTkOrs7fuysS8Zzr0eX7XX2xJsrLDalBR6iBRSWZDmIDkAmfAekoDpDwK+KzmrEoICJgYlVSQhCHbQ/BBhfpvdJesBJKjhch26hA4FmXN8L+lI2Ve6NkhiDx5nIrIi0rmogiqVNpVZS5Mi58LwL/sv7OlVE0Y3iLHzzz7xBZFwo6FVMvzWk2As2rVtVdy8KousdT5HjFJcelSUxm/9prfBg9QuRs7iQ4YCBkubbiL9C2sv+N/qbRigb29cA4YkbjjR4qSv1jLSW4+Kt72EwRkGrlvfzrHfMs6uM+TcCaFrYW4Df8Tz4XwN/0UpseSxtPypGyPbsN+jyMFiGHekOg872JdKiKNrjtnkIQh49t+f+QCPPCIOnvg+E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9VtnxwB1Pv1OpzJsSkjdE/Ih+FXKRu3b4eg1BCbBJ0I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WXnwUqdI18/b6blljWp8Ef4mNiFiDE+W9zB5/nEJA06k0X1Yht1GF24iR9ZX7qSmEWZjvjXiDx10IhKd1eNeOKpRc8VIQe/OHxiBO9MXHOCEFrFZSDqwuR5QXeNgK8Pum7nM1vf7RTGtyrLU8O7r5RwZwKqWbrPrurIgY4c2Ep7hHIu3jwqS9lCdtNlLcrnGgiWiWhq+ON1+ummveRTVOG2f6hWoYlxOG8aYHjcvy+tU6t1kIavOS6oOwnoZ33SP2LuDnDZ2P16WKSTbUylKnYsXVW7nyhOtGTcflpaS2K9SxBY0k2YHmEaawag9Juwk2w2Wl+JUa1iyPGap8fv4Z6vCJSEQn4IpUHJn7E5wBHEwjaWWnwUBnKOk+Df3H43uv09/9J58gF+vVBhvj2HMp5FA5wxe87Dp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9WBTgHEhPhzge7AXWDc+aLRZMa9ViXBD/F0ozX0D6+c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X58AU4MglXhKzWAkGbz8LJ+3ApMsYNCms9fg8zXSEg/PA2BojNdhmJBeNjG5m4MFL6uEdQgdjZ1KLbg9jeMX2zQ8Hwaig38/oPbveSuJJRyUoZPxxMKH2rrELFqiqx2msQ4jUIZYw/0yuRKJVfOU2OEIHwTrKlXoqIQTACiSd08N+4cILpGGAyAG0N0WJaRPLXEtyjPGwXTo3BMUU4l4LZ5H+wzzvdoT1UR+vGKDalQV4fZTNNyj3pA9zBadv3eE8/1pm7EEchOjlgpKgwyvnlr4K/Lur9PgKijPBMvugY8Xz7ZlW/pUVsPe2g8J0qAJZkpETFfeeBaoX8CzPkm5P6YEaq6DcjaAndCym3XKR6AtkG32anyCqU8QIEFEIDs3vUqxaS7pJs0TJ6z89MuSdGKGLMarD+/l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9WN2DzAIdsAco7vACf+oJ2JblrunRwzTR4zoaGdo6+8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0YoEtWF5tYiNSUU3Qg9d0nMTlSVcHXCNh5jluVKdmHd4lZDQf36nLlLukdygsN8dzS1kcZ2p/+qcR9FssdDAJ8coK8Wf2Jl4hxmcHnVIaG1vpX/LJ1co0wP5QpME6Y+2xuiQ4NoeoQ4K6ydzsoRsiWY9UGdRorLj00D1HWe0euMpuAAN1MAP61s0R6f4KTZQFv5dDb0dgkPDPbrYwCVpQv1f43ZgHvjrLvGIM/rK8N1yT/l4Am0Ppzo8p5O/lnznXff0AYg5eOxIu3fhPH+6jAZkzAMFZ+7sva3ku8GQdFZj3TWPPhT1DQ3eFfgm0dD8J46QfGsDNmjWGZKD2qdrNCu6qlzJTSF4CYixEAi6Ziel+YodZ7YRVgiwFT+mPZjYjurUOlMY2E62zXfhncz2mXd83rrd9AId", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9Wf/E2E4y9+fEm50b2L9WTVsODBA+BjDFV09WGbWzlk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gGXBYDtlLtY2qAXBCvaLd/HsUmU/1H+5sS4rvU/ceAmjRLjwrTNmxrXVrGPygoz1nYOYehEjy5al14VdKHLbMxyHGzAxbVK9gbUodqxuknnIQqunGGHWF2JByDkf78Ix6whnZ4F1DMtyaxkJWOqCBYClXPOWNkWArDGVMDCsaA1FeTYobN+wNWW0tNn6smNX6388JcqtTNx+CbVO8lihzzu43EIRp/oqXNRVMJDo42GHwIE+nh0+V2dX1qoxTJRvAjY1V8e0Xc43lVUyQRem9yzW9PK814ZXJQlfrpXJYSGxuMAe+i6MdbfHvfS4I/Bj1rlnIhuyJYIZeXB+9oCB68gCrp9ggMxAe18+zQkGNfA2kYnT3f5drxrFOANZ7oDcWjt1vMpuzOu5hMMWOmL/6ZaZlJD2JvY7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9WiV9AcLDFynwej1fhWiEAa357yXzC0WOr2oPhOSZr8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LUnaVm6FG3jUb49NWsUJEF27g05ztcWJB8oDK5POC4vP6Qsw0ZkA/HSRkyXRwVUgn4g7xIBZ/lIdmTFHYqK3XCq5M0is59piwh7T7zscmMuuzzO+kV98nclk9zfRgDwCwlGgrfnrBizHO8jUlMxGaIvEasg5Iyyx5igCLW1j4VH01RMJ3pnqvVpGRVvx8hb9JO1RqjOlwr+mlSi3cc+jG/CtXG55EqLyblC/ThEuleMvbGLcMF3Jx18a3G3ZDfqZZKbUfyswFD/RYnxgPkauqElOOGJneY+QmQBW5XyjpvBDNWts7UhfUgBIDCv5qLRLyztaTvpgB5oejHo38xVcQB3+hnNKQ1JU2q2XtEImq7DIRidgNxWCu7nkEWwHtoOTb9v4J4PP560LelrK+32/AlgZ5hMWlrbx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9XubY0Hy2GYRMkWKsuCBWiQXvJ+8BNxddlHZr46OjFA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KZYWwIIHaE5SC4DdkXFVs5ZhNm3XvJ483BU7kyNJZNC7zfQij4nJqEs6rSAwMElCQB7ZqMtzg5jPmt6mw0V4Wyrze746uv+3LWF2OogpAO7V9onAuTOkTF4IipT7xVm3gpnF2GzrcHvliLFyJYSeQ1utRehm8QFZ3nhy3MXPvQ59lGOJEufR118EcpZ/BMPQqa7E6CxZ3gBW9tKyE8PiEgytjcE9ulaecAoUdNzN/Ekf20wYwSVJCNqHu9Za7y+GO/dG23j6nsl12rfGydON1ugfO95KNdy/Gcz75Yr4QDfIxg/rhmAtUlOCwTwAfq4+vVo6aInnLMftBIcUgpNo9pqKIJElibg13H2buAA8GUW3b0+wTkRGg0n6f8Vv2BJYXHegthV2knL1cYKWc6xK+wXZPSI49J8p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9Y/jgn5Uwsx8w9OH8hEH4vR75UiIltcyCD/AN5HbHtM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1UFZJn8+vcPhvLLfWphhRIM97aD8L/+9Z6d5lh3ezzS1FkqD7h/GXYB6K6586eLZcT6lp5nzbXbhKN1AnfjFpE3z8OSPARpzFD8zhSQJ7t/fRfKPFKgKNcsS0NQpe9U3qsN1ToYb1zclYy2P/lTNRBuBftbrUkAZo14+qRWAk0OerbTmAH3AoGSr79PhDhv7wH4oapVXphwBIQvElN7x+pvC2y12U2KwALuL+NMfGOqlOqb+7Yf/X27qVJBWpJZqJo61C7LrItUJlt92yQF+D0oCF2ZVU5IPS9jfAhnsKuSX9gCiodrcseo1wxTqsucKyXMkMljCDJXUYG3TJhIgxDmKDKBufAtbYuXL4H2vwCoU721m70mQowkHj2xvTXIH0zW6Sgz00ioPcVVsczsTiXR2OLYiSPp/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9YKBtTgH4GQ/TWKSJM1ZvGD9Bu1Zve/GMp6OFxDXfV0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QYoSys103YEqsgZOlZtS8hlREl2G63aHa7lYzXeUxpcZsZ0iu3k8JEXzzL2DOF0XLhr5BxWA8GVtKqFrsY/eeJpcYWlc2g5sSy8Bq7rYtJLJXyO4rzZjLfp0jZNDiVJwedMFE1zdPShtyx5zZqx3rtURfGvLF0AvZd0PyE9veTthQ8TjJpQkyUFYSOX0eetHqs8pazLh82XRYHeantUdEWOBGj540ip3tSZdn3dJ7kT+zLSJNu0VMnz3fFpgEMQMpiD63UKwLDtAfexBySNax7U9Xm2RdcSLaU6L++oRBtfehFra4jziUp2LenT72XjVXrHQ3mgJ3ESVvZ/AVuNmv8CPXVdhRTZ0QE/p93Rord+mhgITIpJG0dpf+KK9nKVJ9M3PsNTBVqd3rvIhOSJZtnfs1zM0y7nu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9YcvxGSf9LrZkGjATfGSchHNZ8wycvQ6zcX6BST6GNs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Umj5lG2v336/6QMWOpRziQ+08LKpgkkJokqYZGDNCnhuHVsPUNS3qrVSIM3sJyRwolPwd5Oox+JnvTbvsyUiNSJgWCN6OPQdRgisHkIfaCHwAhqKKB/SmrITE6tfFxkikSYBTVFeU4ckWfiNLxZUbD4ldKdXLzkl2j/t+eJ9d0SM/3Kdve8A1EOzoQM+RLaphos2pHJes4YesUomumsh8384pWjfUetw/z3q5AmASTkOOCfognYMlQJgrFiBk+lGXOWhauzy4m9PWT9Wg8PiqYdbX4RX49MUepvf/PdLfT5SottP6HMB4XunAr9i5kJvMnwJNOT/UKhQ3vXZRs/IWz8vTSF8Dc+mqcT0Ez2KzMDiVLQtmiY2dkjvt44RhY1ti90EW3UTXlnGLsIsp8L9+mPEBblyMwYg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9Z10N2j2xv8MwIXXWzIZQYuz8NFnGC2SgbVH7V8jO7s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qfE7vZa/Ptnq4+/cVWRdKkbhP+RprkunSER6KEtREoWsuwCgrkUuLlaSqCvXK7xVcW0Jh1GqNPh9LXq5CGFXC+/UxPkxT6aUhGwxz1nGMGb2nrbCcLHCIMwshCfmSDSPNF0pLRbIvX7vx4DvEJqScvxXIBtXlHKSbJGBHwdQpSLczgSpBL8lgzUbblZro75u6Oimxxs7rX2rmYIXFjuMqJWAhYMKksj2jU4duKlWF5qL8ORGnPtaWXaUHk3cVUQnC55PgOEBo8/peGBPTD6utrrhnjmkVDw5AG4RaJd5S2GML+JVmYzYjL9zTy1Q7gCQJlkr9kbxdybsMEWr7UpDZa2+DbWGjzjIpWPSiPLpdS+WDtItwyMY+cwrazfnCZ5kOTTarP+xMQFJAGnC5uUWDG6x9W+b+DeG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9ZtHyISipXURE+beYHnirIoFw+BiiNpEW9c2EUw2xf4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dO8hh8bQIYe9qZ9TO4bmCzoVN+STWGTUdVq8NsguGNN86Eb75cEs45FGKHl8nyewZ4Mi1vVpEmcLPZtApu9R18vs9aTnhVEusTAa4OTuwE+yjRRWQuTrSGwY4ycvyzRN0Tc6Xgk8Ovgp3RbuyCNLOPNcMKAqM86Z2NBnmueEIvwX6a6jatkUmsp4jg87mZ2onb0MLw5N3wr3CPv/0CZjUi15vmGJQi/WivHVQHb4PkO8R6MADYozaXpU+ASXKxnVpR5jibbMNvUJ4skacRo2kM72LCKJLyO7L9T4NUmyKedhKJ0JRb9RkU8EmBThRRTCFw4QX97URmeBj/isg1KhjEsG0pJ/wJQBYV6ykOpOTgHFhuxZx1S8p/fLi3A0tgQ8qUe9KfpWs1WuA4vjFfQv/GahrRSSPg3u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9a1M5yJvMCkpuzbbI05ue8EghkzuoVBI4ThTQMxpkHg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZvXkk7YtNuaCeM/r3XDLXqNdIO8e4S8f6Wqp4bajmNGTKEmtAscS7D2umrBHhPNbovryLVD1CzLxAyoRbiqwwdEXlG/q17NT2n5EIDhzNoHs4t4/6hnQ4GL5jfGRgCRVEAfn3geRgMVFaSKyKTaMNb20q2sZHBj7ki2OZ47Wqctd4lmElRwvVp6WJ7hVLu5XSUwOzEjQxMJTqUinl85qA/p9gypzZgpTRYTq0OSSJ6jV1/6754Dy/GLYcgNyq5LXhuhxMryguSnkuPqbSJbyM5Tq+FmAYKKD+zZB8VtfogEFvPo+VoM1iaVqL42oKfWD+R/xGFmD39GGikVfaflpIKpTBjNaNStdTQ87nr5RQxWW31tsAZxFO6V+qtSd71qh8E8WzvkbNCfoBM4lh9EhxfRpRnfT2ZlU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9dGT/PA427D4V3IGLVoaTEdAXok33d9oA9AEXuAixJk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8EzAKzhtkCrI7yD1QpxXsx0yYCGuH9BPqEXjz/IUGCL/T4wy9KzWvDL02nsHudNr4rpl1whnV7Kj7veeRVPA7mhcrMN9q/atoBFaM8/9hu2Oz1GBv3dpxlHfWU/oU5ZwlLYfDN3WqMrP7aJFcDJ6GkDtR5f/Uf2SDWyWM66juwEbn9In/sbG56vVTkKAAVbrbwmLQvgw0RVrFVzOu8i8gwWxiW/cRpGvIDrDEPyt3WKffoScYD13kmEwVuVdou+frPPmWhm/1qpGUVwfEkWVVmVQUuUWfTpwJ2xb+8sCbfmSWAi63BmHXYgIjqFmhBvgZKPLojkY5nj5rHj0VBsBB7G2uCImsV0jUqKyl8WGEmucPCjuSn6xloUPJ4oNiGvMfCzGtfROppNJfSWScEjHg1kDpjEldGnJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9detDMH4Nc34iJ7e+dxc9WmOHjRhFwVSgiD74G6hIPk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dkdMoaW0qW8vv5vvafcCcIWnUG4Qq3xcf/vF0S61iHu0lxwC5+v5Zho6T3IGZL7aRuA2waxCD1lGjUbT3ch5Ef6hP1b/h3X+dcURDr0B2wWNJrID0rgvkXlEQr3nVpBqlNxbnrQH9OUlMDAq1I9kerxTIWsM9XZl5OLipBD9SD9K5cxRM+AOGE8JP9DboOl2GnWfXZN+yW7eMd1gxUnezRyr5/QwAaxtqVFDHZN0d/wAAv8xcLnyKrKVURjWjDYxvsTwleo6JlSxTsLlsNu85Iz1Ladftr0zOEUC0VWBbHKD1TZqI6Ozf3jBaVrNXr2vggYdB79nhTLuLGF2ZPN0XBx+ZJe8Lo5fmPZQgdPI40epxgHILqPI60hRiXmSkR15yA1KwIbO/f5DEYiCw/usVhW09LqM73Ex", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9eS9z2G85nysbqUJoOlsgkEp7pg0YPQVEgvt8eA32TM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JO5kHqn7OQXvj20q10DkzEpy6+dZbaiNVIo0FMzNalC5A+tZZc4sa0oQqAbzayMSFqRrxHzS3rT1WjEIQdcP677AMtLPP8s6+8vc+Ucn8ZQxH4WP2cLux/Atn4rH0TJDzpm3JOzAQyJn5IUswBLFqAQj2NbWTrNtTXeo68ACKrCt1diZKlBSG9VX+LU1rrOtDJ6yz6zso9yOYc7fau3rVuKWJqjcptqFDAghteudNzVovHQ/BLXFAba2pKxAnSl2hz0uo5o7dmGqJ5B74JA51DN1jaToTSi6aI6Od7348v7uGhSoBHqM5//Mw3yHt5ouFZFld7IzSSR8EcvWG0wvxlYur/TbEAlZcKhwhw0+7V2dsMpab3Elo0pDwUZvmUJva8CnNzYwCavYOEBTq1mq+fN1Tgn/qx6B", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9fZDHgQy0iOlXx/EP+r5FjhoCJ8MDxwnkgY6HaQMxnM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cItbqHZsclJbT2RQJgEsRUST8MZFp2SDYy41pMg4ooNrXXliIMU55b+0X1CWfceHhlQ1pVYO1GfrZYePCaPSeqUwnsCyKBv6tmol2NpymP8tDMvhrG5GezFLG1o2KQ60/5aojf/gUXRMPO7JKUsZZSSIEmOyuyjUWCZjo3aPmJEXjskgN0ZsRS3rq8izrhOjXxOSz2tDmJu26ywUjg15U4kd1B4NIKAcNcwH2etXNjWqsAWiEihv7RQgwCpspcsR+y+LlrAcQjjjK44BXp8aNN8WNfOiJ89x4u9BSWlsIcmtwp2QfkVf6fHVWc2bPx9dt9wJ15sSJJAAsWNiMl2SjVpLTF4LaaNkynzhpRp96AM+M5YMX23ave66bwicaV3B9ErFlZZyS02kIxUpq3vhX+II5aIorZQA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9kQQ6C8NPo7pfaAYC1txciNpNl8W9cTw6ZCoQuZVJ/0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7hnapQqv0QXxXXukHYT3lOFH5n8zJ5R/g6jVJENGzD/E8pX1/3TV3zi/s702XKKcD3GNKY9sksIfkQ7DbhCAHRLam1JJdwGCFUfJDPpnYLVyPL6u6HmaTljQoVCmXADA3qo/pldhr6jWchs4+4jaHcCtNZqppAYD8RYIoSmuVlTeW/7D5RpZqa8B4Yj4Kh1umvjOFKmTYOi5aWrjmg9NZMY43J9eWa03DtsHDcXeuc+cmFp5zkjOyXXN+0m8CqIT2BM06EFoAtWJozDzwVyVd3kFhwKhaBkFYJQ+bK7UuG7WfUzwOMXkQp/TVUHwkmr25GSjgNO7gYg3Nw8KFyRc7V3l2DYYKr+4jZXp0Rwe4rhovZF1MMQDS1oZutt+Zw020GYNIFglEOS5GYNestooBiHSlPRjdXSr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9nZpwccFtCiAyFVe/K4OiWfE2EM5Fk4Awb1KQtXnk44", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r/c4xibPvqj+AgazW4yLaG9QdxM0bSN8PmaJOVCWOPWXmDI60yYBmozonHGpYKThgjx7GapnlZkgtpAsgBpKhrV01l90mvA3gswPP1sgEQK7gcwt0t7d9ha942em3ohmSzVR8i9AJ5QVPsi6sG8eBbjyQy3aJ4X/eAIPFM0cX7hPfSPV764p8fi3C41qsbjikdWsDq8BpnxWJye0DzVCwP70nFPfFD7sxuBi8suYxkzcWauLmaGe4NvAIw7kRJGldyJcfQJnR9aspU09VJ8idtb8KYdO9XoCeKbxxOrYF+63ztEKSTeDIT8NQS8YnVh2Vbaa+788AVe1K0PCS49k9SKE/9cxPVsAIA5UJE0xjA2SREV7q6RWD/FfGDB6qP+1Ymz/9152XkrDzDc61D8OIIImm6WnzemK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9o+lMXps185tYiWZMfWXp9+lmMb4HPxBbQ/xyqdxK1M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OOUim10YnT14urX2o2Y0XiQ0lbHAcB2vA/uXODO+U9dlV5wldDyDy+W49rq7drwbWgjGeV2/un22XJsXPTZ8BcQo7pyJNLGl+o/mZBQ2wav5huARQYmqwh9jaH6w8mpj1tlD/mmSBqd6C27FQ43v2FidbNxQ2t8dPpZANQ9tIHXy9gXmEVYphJLwagRdwk5uccWZndNRhhGM8ks1NcidcTbaoLOZpuhIVXMm5Hc4B/ML1hmFeAsFUYcue65TFahLUc2Gx2bI+L9NrFKfU4nIb9b2ELPP2L+aJJ+Y5EgBFXTbjM9gNCR3jXPe0vxvQepNsHmXcFQfqz+/+f5g7+xrNbGYGISBK1tl22dsklAaoku1GDXDUqmyQ1Gk/O6yt09+1mb4Srr+EH6/slxle5LvL52tT8qD9zb9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9qPjML+G8DSC9hGTJ73SGIDn5txAAboknVVFFZHFv30", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4isP8cXY+qfAe1BOH0+nCvqBwdudJQ2KZlLmF/s8JwJRKvp2Yu8tPss1O8NEsVz4+8GrSJ3/5/0iE4PJRh/ohID/x3cQuECd3OVxxLdqvc/lQGPOg37aXBY+Sjccz3L4m0B7Dolj00IIfaHYeLelLaLfE8YB2pFF5+/jtQY3hKDhUmRLWJeAFxz29BIS/x2l+QXnbnbcabaazaEPIL4pca56kJHB4VtwucWwVw+7iIADxWpsKtYUsfl/D/BDaw4UiIxWE3zgk0Q687CtaYqTa6JDFn6DO+Uone4t4J06+xssBPbd1SCMy1cFOb+/gMhKnrl2L4qAP2R59V5XJqFt7Qxgnt4bFWlBPJzGuDeHUfeY7EuWXBO2E3zhKKNVVH0E489Q6LtOBnWt4CKsNJJkDjJkvO7XO3ya", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9qXyWUtcwTHYp/xFt9O+XiukwxKETM8ZdWWBQXk7PrI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LxbPmUdQLTV97gDV/TbDUR3txmqg8SIr/nqlQzJRKKyVr1rbUlhi9FjEASTwG2Ir/R2+OiFW19RL5uTVT/e/+f8wx1DgdhMEzw1A0xUIWn3jwNdYf1lX0ErnIJi6AMSlKZctz/czFpYE9dy7BU8QAdDPKfalvtTU/D4SldI4T/TI+mmcNtonOTP2hpgdRwbkI/d2BYeP7C0TT/QRgVfAlfe6/Y8mHFzItqz404RnlGfOYcHSxlR4JvmG2gVbcRpYz4qhwTQabERW5nII1yTMAcmNeQ1spcp/GorlcYUw3o7cB0n2IOm1cVS1YtAwmyQpacCnnIsMBDhriGehyJPDPpm3+o0exEFBg1sPs1NsrUynGv5qpRDYLTAiinHTtdoVCy908vMkGc/Fbng0wwqMmkO6FMnNKkeM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9qzfEgTKKtwUiXXExpBq5/CfPaO0QNBnmPJpZTnogg8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "C7dMkJaBBI9z/CK2MFEDsoR2gsPQCmPPhB2mBLxmWrophuV1v5Id/uByd4enSGPTbC1Epwg1e+L5nDN7rPaFzaey00iBRlnYkBgH186UA0HryjOQ/2Z0yNvhwQDmaV9DN635FcWKFsAXJF4KxTPKXZQYOR/d4To20qAyFKCqc60v1/UaXCL+QrzaY4X4zUKod+bas5sPdO5AvJRrKOAkW1kIP8hUreWRaw4zR22Wivhz4JW145ft4fCa5juLQC+/jLkJRl2XRaIwnAmCba7LzFIua2dIeI7DV2IwiktdU/ZCSEZze9nk8IkRAmkMxNrBveWIPMo/JCXDlLuuL0pFJ4dkNnVgZd1SIP1+dJrdlpfLpcFfNE1GwEUEz/Ieg1IRDMSz+PpfiTNkQYXiGA/8mZ7DTX54Q/kM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9rWeCXdXwIF9VWAiSa5VEt0zKdBECJkd2m7cJRyLXao", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tf6Ppsy63LT5B2s9w8Fi/PruSP75RdKt2cPk3xBEIDFBr7EQo3gsHUdUBuzXg3LITGoBrikmyuP2IQcwZ5HIIrnQ7/7T0OMgGjMS3/bLf4wLUTE4ESLGqm6pDcxxlsENmmwWydxonRlZGzqrtGBZqYYuC225mP4RbaNGkksln1kFe1gMjYimteE1VLtFmC8KZa9MYCntQj48tOEW1We/M4gaOZI9cx9QH67/1cf2bWZcfGz2C6nyrJi/vGAy27kO4u33mm59KabWpvzLN6JXmCuvcOceF6YOQxXW2pJv98ZJmvCYshyE39vLgz7Mpf08tjxTo6iDtFYaE1jsOwvLoxsNYrvGQG+cllNzhHca3Ihe+nux/4utGpfQiGY8eDePJRndonQi+HH450j09ypQdKvXhC9PJ5bi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9redbSoilOaiKPhf5mActBvuhfIh+B5THKIZJCMm2+k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YbHa7mHryXHH6VkhL7yS6o10YVUkryEr/jVdyzth7CpjT+MuxBwRd6C+DZ7odX8GhPu07vq02kUBBclG6CrXAUFxelVaEA8X5b66YGiGTM17KSiFu2xaZ5BWqE9iwqlGdgN4Xk3C0+9wxL625ueZ1DV+DQM2puZ7lZqEVq7zRk+f45zx26u8l03+TMJqCzZw3FSKx/PsoiVZ5OT3mFRam/TYxcoHJriCYDNd5H6BI4Kik/bKO9nTf/YFI7CBq94HIXfipst+OKJjo1Km6Rv3DAHoZcBcBgrMBt4vNw3JS7xN11M2vHFyBd0wZumpXrquggxBC/00TDl4qn6/vkQoC2vRrQYLl9jPvz5Y1RtI4zkzVpqCMT1WEcl7Qy7WPl3K/Nsv/dQitA1mH/gy34yHVl9XBjKeV2W8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9sSFQzb3oZFRflICqYG+ToxcKSWCPKVoYG5kUahXIDI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pfOUsgscLv5DMvGNMWZxlO17V6RWOztfNF6xzDmPEapnyGEW1rBGPqvFDkK1+ZO+w3MX4wopLefgTYU4eBfgh7CnNyyPhGeTUmwnxk0IEYlLmVt5kuWlCITyQ8VAfSQC/Y+abJb1FhK+rl341xCHuCHiNS26+V+2IjqDNM+AD5yyELixwQIj8+FSWW7z9ISlYo7qI5gflRGRXvem8lga9UjpY+7YT5Ntu/rA3g4SSrC4uBvYPex45+kVTySg+84/Zlgh0J7NZifyomhHidqgIcEfwV4rL3RrveOHC1jszVtNNwiHj/xVdVnwwWq5qnt+2G0ASUbkCeeNHX/EH18TAPmQEeUuQfq5ExgL49LHXv8cZLBKozJt2l+N/3i5vT8izaKrLjBVKnOnt3s0DARDdfH4VeW15PYX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9sXug94FRaIjldNVRSnpZof0AYU8QuZyGSe8OpUFlM0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mfInhDvPxtjHaCuh+t1VQrpGW7U1V/bU3w3LkHDQGnOFYZx8x9Y3hsTZ9/xzYTyWD+6dQVD9X31CLYRKcl1MqZUQgkSkiDJUXtkr9mjqkpbZS99YLGeMzwjaPUnrP45jCGtCqVKR880PZrKVi505el3ljmhbYd3VBAJkd1KhInr03QRfr8D7XbGEDnK3JDBMKWyE0YomBYUkdix9dS9vyGRf8UCH1n53eH4/tWEnwUg6xNuHXOQbz+AflzwvJkWoxwy/jaRcX14ge0D8sdZ98zChPunEkY5BMUAp6f8jyqxjvoouxq+Rp8srEzZPAbiV/oqpTJB3bxvRUqrar0nspCZibYp+45h7f+bQJMHhaMQ399Z0LgwBjIg2oxjzuRcczyNQBC2vMJG1PBsJLxew+EgRr2BTq38Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9swpcqIZSbj6UDDJNuaJ3O2kaWBOLQYk/9j/vHi50gE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/2BYhSxW4Z1cDYnFyMzQCBwF02EQvRl+Hm2k+TXdB9lC22W57I2e0OzRaFOGHfbmNrkTtuBobe+JPlYsVhQMmpsu9EmofV093Dq55ETSM+eTwcSh8dfmk3Cz7PmXtPcOX66nHvBBGHlCrvJWy8XqX95lglA8Chc9iUvO3Oq0fC98YLU/CNE9S9LeD6vzzqeAkNxkZWHRwqhupUTRVi+OFWE0lTNuSFFRvVQycwupa9eufWnqfO9MzkeHbtiHjr8jVQZN/uUv4PmKCHP//YMcWkblSY2rPYBALjBM0Je6/A9E4Z7peabtREFcsk47mFyHGy68SwFK5HS3j3HjP2mxpfHtwU5XP5e1NQi6wTjuJvC0jnThJwwhPpQX9F1+yGrMuLTCi0bcOzPCERr+Bjm4RbWLofyGGY3O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9tfLrVK1IvIU0PSYWypL8fuAWDyEkTGgrF800RNqx6w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/8vQyrE2OvuGyj4Kr9s6ifeE861ve5YzbPqf7c6jCr0iCsuOs2J9Izcoi6GgCKe/4xnbKLRk4syg+mTvGZH45KPzWLLQBSQJ5qNYuBdQdCqqu9+Woq+oQ0sc/Fx44KvX5IBmx529Px997lg2tdcP4eKDAnmR6TEelkWEwsiT3e5tNiiSRQXgPYc2KRI4934YShIBwPgKyJvac5nvw2/xoS1GeXHBl6VFOz6USNvoaxoD9HO0fAbigmb3i1tYcl72uNKWsj8gqLb0sh9nqwQCsUiHSfkKj6pJ4dggDbSISaJ1caHMeMsO4RDwpIPo3zkhSlxDbWMqI3aYbOp++gP7aXBP2IKpr8FcG017Xlg22DzDbAwsCLr54Hrs1S8GSf95XEWmE45xM/DeadoQqbjpmo5E/kFGVqPk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9uCo2KHL7yPGCfDa2WOyRxKMzFm/B8d0QNQpdX6t8fo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x3tlovuqDdJ03CAP1JHbZYOCeUTZQymUJK9WvWvnfxzxsMvUuBLFjRgSX3reqs9iZj9hsNHdzcfv11D/b3f/Dmskbfyipd/TXJracXYNnTIm0ibaS2oprC7iqL2d6x5za+E/YsLOESPDMO3B9ANw8qru3KQpXqMW8RheofAGB2acbZ0gjWFVQy7dpPoLsivelq5duYq6NyYQ3k/wTV5lImdhOQ5gYxojRMwqjBqQdUl9kuqmq1MzJEvfm1fv2eWyRnyFjWmnXUOXXyXHP4fmtxKKBTXfgl1Pfi64+dTph3HkypjMFyuAkg0u3tRu0r2DrxZdoL+bSkRi40S3DnZNjU7FROXQ0PIWh54MX6eTRYyPCoTbzJO5YvpmB3p+ngwuEWt89ikn1A6XfSlMR1LNLhG2M+Od1qkZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9v2d6EG6DsRZB5x9ULcxC6KYk3c7eLoMui7QtF9JErk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "K9U5PZFlj1JqjT7IDi6q7/0On+uhPe1/4VtPtQWKWKqkCrW9jbBshZEcb+QRJh8mUFBFt4TmEj53KFBS9MastJg4SHinRc9lklsXBHOROC9ENRwFa9zsM+aAUik7tLNRH3OhdH1g/PP/EZOpU8evJrQj8EpI4TOadpc9kNWuAlqdGInK6jZibCFlkVKfym1nJBvZHdUv5JKe51WKdZBTUsEIG3UtQLQa1c3XW+ScwaAMNpzd0WwRa2ztX2NyAJt/ztETmgZDXBDTwxKPT3vU4B43k7yNTyxNPYRmAmhu9GAcz6/02Ra4AfS5OYRGHedNaFPT+FYO4nEoL2tcwf0Mxje9UtxeZs2501qLv3Sh3/3/YvlFj3kH+dG1zjqf0uEImq20MucD0YdmIDJSlFw8yFKnJCl+O9hV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9wDQviiUPdKJfTzpWKKpuY5OEhuSZsqrZacD7tg6SU0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OAD8rhfZpyDDfduvvDE+C5fC4KRyC/3+k/8X0Jz4GA30KKGX02LHKuldeQmnV1pQImN1FCBg52K6BzFp30RtmGziwEMrodBNcTX7qcYpBYi/mLa04Wcby2Yk6HyActpKthFrA/m79nJ8kn/QTEGlgi7Yo2d77qo5m/znKpZyTIe88nRGQf4IZpSPR5o6B/okZ6G/9/MWmXeJ0uAxNAnyrGhTvBxpSMdJYj3015YQWa41JxK3eAu6lBUvuVAU73/4SzQvtMnhp/3jai3B9GPKsTIK2nTUohBx1jS3KGMQjDYkkcXzEoDXf8EbZ8SntfWZxzACXTavHhWPcddBQRn7pKsUnNTpmczqI1Mq5O4EzTzgqbSNBYVx5MM6g84lm2bf18zgUpEUZCQTDWRKhtvd2BRGtd3oFObX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9wWvtTGEAQhPLsRoIosbdA9i7vCx1rlW9JlINBteb7g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "br2DHZQ4QdcIOZ4jZ6X/z3C8ntClghX7wnmwiXsl3LkK58MYw7z0/S8LwHgAnXftHJg1tJ8JqeeDHhklUluTbAW6J7kr7UuPSPBUv9zbzf+O15JppG+qswzhvRcPAWxXeRfAtsyvrue9M2dzkoJaUM9V7C7XORTcPdYsF+KeJXTQkqZO4SeZoCPd2QxxB4mlH89mYL24j8PsPwj4PbEraFM2CMP3N7Jl1NpNlYLmMjlaSRLe+xoTILde+U3vq4XTc8aW9R3l0LcSQuHhPnJh/6kwZcvaC1L2N6w/4FenaiE48jlQhkIFBXWptGVH10ygjfQv2BUsvqk+MtFdPoATQFqsWJeD27g4XZKayiqJNoXZshm3M3K8hf4/jNtJb5TAQ5IIPuhcx7eN53qhbsqgwROPZFTb8HPp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9wXhJPmuyGNIbC/SF1vTQBbRZnG+MKK+t86go/dEfOw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NcBjQ3+QwCwtdyB1l624AwV2SARTK6yZ1ZoVODe+Q8VizlPKjWeB/C+v0CTFa8nav57p1a788bVuN/gX6/eGKDJtSClZdP77Aj7oinjaPy6eJGa57VXa1sZ8Yd/25WY8IAfKR79asceAHWZTv0R0JygY6WMl36MgxwQF8Bcdohr/s9DmY986hGeOQ01fmnHRd533KI6H/FYDh3HuZ/rrAJcTxDL8KI9EYsOkP96vkIsc5mzEB7Np4m6kTZBQ5jkW41vULC2EnmaHdrLBJnmtUylsDi5cf5q0xbo3Y02tku20f+E1bNNcK86/smEFYHrcA8APwmjumdRmHIBULu7Ig44NRPlc5rOIqEWVEKSLcSDzEtL8PrQBPjVsS++L/XfRi/bIt1mS738TQZlJbKhpeOtbyKiHzdNA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9xG1+tifPsS2W+h3Z2rZo3f/FY0T4Nhu0Ms2H0aW2Pg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mMM6fMylKHEeqM07sroXaAI/cZp40vhqochmyQkay1pPZOy7r4bU9k5erFfFpLm5RXB4eMI0fk+jyP/JoImaLGhN+LrdvvssWNoBitpG2J49S9OZxcJPdBfS4YEHG0K28ZsBO8O3RucazAq44pkTedcv7GBtqM8GCT41V1xAGWw2bBK/adK0At5/PuCAKNw/3Q6wunBD42IDRC01sDmZZvPGYB5qxWzDzzR0AxeAJApxPx+bZfnb+pJpYRjtKMwveSOpXsa3btCj0QJt6w8NnlNPwAHb/EWdGUGelQUlyxvqaujdppGDuBqt0Exi4crIPqmvqgqe5X7l3hcDC0nPx4eqNDd9csjSAiUonbIYsEoDZQqw+WT2IQ49LJM2zkp7e4sG1jPj9ZXpFBISzpvPtzL2WuujFSsM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9yRnR4u3v1nM/FeEk52X/C0+dwJFACHZk51t/G71nMQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Isep0clljnX+9tB/m1uCGKekQQ7btxrBk9iDWe5/R9FIhD57AQUsoG22qvf3Rt7LgTXPjpuVrcKWlW7tXHMgeiuzLyAGHMS3wh6Y5tMgrzDKYofFe2CebCKB+pVxoVwOD2ZIflhZlkZqSxGpxxiuxWrKdEzm0i3Q85reUYvzs4d3zSJDlxOEA0GRSstcxK7vN1GY038Zx4Z/YRxPMiJpiQtI3ujA1dn1rb3/lPEiuhlmEWXz7LM2Bd7tSEBYdQEkNytk78SZ6J6OJxNP643eZSloZ6GEnvaT2icvHPoDpgMNf5gkHyfF7QolF7LhACypKKzzYBZZ6tK8vQnzLTKc5LcFhZIF3Eh1OcbJbx0OCKuQ6240F1p/DEFI+lHlcUK4IPiWQ8fVjIqm9c2RG8X4QrUaF7X6QJ8I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "9zSjMz9PKmGES8yvZ1rOG53P+dKWco/70rnGzz8sW8g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tdyp5Whbps2xSItEDKrzPiDrRNlrnJAq5KbufptypNmZDt3ehjbyjbr0OAY8HUTANUQ0KWnthETug939b80n46a1Ga4OzH8ga6Dc4Xo+fdyoxBV4YtAEDvFfiEk7FqJiaeeGujClIy/BBG0GsT+QKSOUN7VzswVZGE6JAjQi9h/ib9Qh1OU6qw8gCWOG+nqYXoG4uQz3lDIxqbZhBBvCqYuPj/sYAwgRaj/TyNV9lJfjqgviLRKZRtWjrjsD+PS96DzAyXaVq4dE3qDZzxA/bF9QE7E9X3kyaY8dnel/PD8q4miAE2l/QlvQIWalWnXtGq2T/ub/YUwdhkN5cjkO/mtiyEqJhy1AhTCkPmvNUDn7QxR4PnkszNhonZmaBPIprFADsFfqHTwY23KsPpptC1RpJi4o+n9x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A+6rtIXVZpOtaxrJEb05GjgfymJ58Yoir/QDVNY0IrY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6F8Pc9ew2PkeThfWwPCLh86iqwr0PmFR+7J3mNATCNZdUZ3jGsk80wYYU2EHt+3xRteX5h4KS76XJD1zSgFwdcpEpQE56dr33Jyd3VB3SGRDvGdERn4goROfYafkQoFU1+HMgEJ3OMHAo6Pdbk/Fx2cCZhwWGY+ffHNdGFBSBmneHdTIQ5svROcfJROx9jBkpUMEIREmwCPkokCo07DJz8o5bkuM/FE/46Sc7sMmtq/jt8ZKP/qDH1JVh6ZUuECyeUGuNatLG6aSNILsPkC2pS9fZFWdUDgeAaNcgjH5ZF7k76OADeLhb1JcTMl0vVKssL5p1xRqLMX2AJsu8ZcP03zH9MsoIxjLLx1R+bcaF/yoM89PtGmBh0Ho/Ekc3KoFw1KjMPHLa8xUAn33S2niZL963NmHXUCx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A+rW0NceyY3LP28ZbRoiYfiKrnLH1lt2QgcAC5DZyVc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MfZb6CcJEnSk7SivFaafk+mk3GvN9TxtO1IqgMKzACdtQsJYS0d+3DnZ+CsZ8izBTDCObjOfA8NDBtvD+KSUwgSjd9swwrCRxEweFwWVN7UT5nFWcmbGnw2JONb4JSxzciW003KCkHvtG6EkHsC0JAZzowedsksBnZY/KwyzpCltZ2IbUdU5Du0yl2nMr3NH1sEYJ8HSnqm2r+y6BibP3iHygluA93smQwkj1MIAdsU41nSWfTDR6dm94KJed5YydslwJ0jdMSr1/CRxtXUW36l9j5tiDDMXZkoxHwjOEKM9/Yr85ywGEWVC+2hw0Z/S3Z88rcsTn3IingZMoXX1uMkQQXb8wvtXv57lmrKeLLSnvvUTrG1Sh/uwvxLXk8bcJJvjDMtY2WJfOrPKPhLvdw0WVHpRsbeL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A/BJTsdM06y9WB1+vi4M6HvnAw9V32VyMexACyAQ4bE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3mavd8DS0KOkP+ISytf9RVRHEoUvXEHPX3+qOiOxkgdT3Q+kB/c1GxCiG5PNvvetOcBjZPxxbweakabzSgRwYes6zv+LbxtFbrZpvbEiY6dDsHrIcWOQ1vGdzEqd5wa7qGiBS1ZUCoXzrYMwXcrGpvP7DMqONJgqUDzBIhUZT3R54h6kfyXrQ7HvFGj7FNDbT5I6rGLCUFiTW7X0+u7CdzaXSc+fgHs5jUSq/CSRX55WxMWprnw1deSGGNdEimqsmLy/OCSVgnrNCyD/Gqe/EIFvV4OO6Cy2gPApATg90BjN7NpcVb00n5Fak4C2WobvrZaEd1GlqYBoSAQeMKOVfCRLHmltSzWj+O47OBN1aTEtDViRxxVHx/f3mcAPh36DOlEjTQbKMCsQRrfXtcTg2grKnqrIwbLO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A1t5p0YpSToE5KvuHd1XkcWfuipO91AjxV7hQZz0zu4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZGbud8YZS6pjWJNdbNESs3FNweSXdsnuPvZzOO+374U28YoWRygkZv/6o4jIXJ0heFRyEoz0U7SoPvx3qbYel++0V4ox7P7Z/IE8vPjz65y/YKrE6q9QUmFG/STb5a5uNaO8W8mLR/QQlct2LCaxZ3PSXspPzakK0F084fdqiB/2umtk3sttZaUf6STmcPsF+bz0T4lJsflL9pm7TInMXizyk9x9QBmLX5NZNn8bwFvDUHwyRQUhU3WLXjKYqWNm497DlfC64U/1klHJY9WfVT8zhEidV9+CGnjQEe90d649o1/RRmT+jrpGrAmhE+py/9HuWEkBJWKtkZWm1lrHqoLUQWDHykDyKDa9zalixn7y671zDQ4RLIXk/EXaC5Toy/mZqB6fQ/xuDVc01983V4OxiaFkiEuH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A2HB1vyIfY2geS8vopVDeU9XhnmbJJayHoC7pnM3+8Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x8FYJzDsfTTu1r4/H4TTEDn73HustMijfzXvbpA9jwYpwVlr525dI9tWg9Zz1lm/aDBKOuCY0grVEaxAmmbt6ZUY5h33zxMhO4JH1biuKPmKI7B+ciZUZQ5su3lqUdon56+knDM+uOEHbMTF/I6MCwgABo8eZdV0ZfojHiIlFLdUMR2+Tl1ncms7z6Ci/vzyXqJjwQgtkn5ovfBSljhq9ggySCTwrbCg/t86dAn43C/Cwc6jOa9/uliPnlwF61jTi2UEYdUbvI0YPT02hwo4udToS+7VNwwOxmkgHQ9cNzdfXs/RrSkX4LUk6SEl2fMd17Tr/v+tsWO/zT9KYDmg8+gYJmYbI8tvSIwpk8nR96gN14xRUY4gasH16xl2sgliYALrP6IepffGpF/mVQ83hatxqECmk7oj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A2ZHrR6yMGmTVf2Q6dSUsv1q8UQoTY8sV231Eq5s44c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Phea5j/VPvO0QFTMLGgyObg0UfoiTruY9irz2dCOYmMAwgMRtSJomovaD12QFNQPL+Aq1iRWIkhN898EBz73SjIBhdsqfo36r18N7X73MZYHIo6nGDJr92//lc0UQzZOyVchHomftqTEhx1NnPbO1BBZaogzxcgeR9KuecKb9AwCmQtGGThBJHz59D4UGXq8BqMa0NCPcdTdt57uI24SQh2Mcm8An7+pI61CQnngAeK9TWONv3ceqLLzgKAfWBD1b91uP+4vEIn1MjL6ebmqnFcOfW9Uc20DugKcNqiHDWx91nlTolxPyusPya04xSBQkvwRM8sMFmFwyTHZVl4KuZ1uWksfM0fyOk7J0SP/T2xfLkdSo4TY6T/AETpzXaftcUQjTTBFIHPTGZU4g+40mzfVPGLPugxA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A2jN9kgy4V9zZa3FIfwUvU0kuUAWTzuFA3sNIe9Mcr0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5zN78ho34lrRP8LAC37TyRm44y8ujwIZEtKEAWLiT2sfWXBENIomQ7oCfZfWYgIZXXZ/v1FiYiFbxiNmk2H1MqUbNL36KrwNTjLMq90QFfCpwGpYxUdy9Fc6yOyhkL2iO9a7/W48hHCR3kHGWvN+JSSKIwkzfYdtxcNUszHxpnMvbmATm2AqGcZ3Wiw1vg33LXHUPtg4zEddLrjM3ysFUVyXjo1tgS/MfA1lZKB/63O6mIwDkpeP4ChBhLmp68uWKq1LPTNaHzKFRdxAEQlglA/2aBSIDQYUTnHGM98+OFgkcBN6xJMwCGbB8oEiCiJ7A/4kgcqGdz9nmAKAzxV0ml94mzzu+q1Lf1t9wT4EBk9LwP+cCBtclWF1tuzyfxM0LLVw2zzxv2mqnvQzTAfhUT0RKgd1jk38", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A3cnFFYEuLVqR221SIJreqeaXwwNzhmQWeIvNXkXM6k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EfUuKGn2M+62oGWyZQi6lXm0L0MblalREAZXytr0g+2Mw851WKCnBht9GeMHbToAoju81ZWxS6N87gOB+hrfrv4SRs4biABn/9I4xCSiCg0LMxBBA/tkRqtG4VvGU6l2L3IZTL4VKlBHSzzH9f59D3XX7iSlPk3Q4rbEqFrl7P/kKby4hvSHn19LPlbZH7td07bPxwrPDGMQFKAS6/H/KJRMuO5fq9axC7rCXFd+OW3C3grVhd3060b4lw3W4AacKqYqG/NgBH4cvYQJzzZpgLXgHPJQbP29bO3JNykWdJv6OLZ2cpEMJ8RL6XWGCnTNdhm9ueS5snGPCQTWGE5Pm26v4gAd3v+JdWba0g+1ABieCbroQYZxt3OnvY9xmRatUpW8xgf93EzEi+LN0gxu7npHwarTue3J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A3nQSIo/vbHAxD2im/XCBcSoSZHlZBdG/OMM3CHj0yg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mOlCGAzfI4XC1JSRVqfUBZq+i9ZqnEMu1jimcM0ALuYNfNtgfXXHajvcJiYSfQtqgPUANg++pVDvyXuJBDg00OUN5py7IgXe9S9YDjnPoHGOQOQ/HD76bg+tUrtk5r0rNrrlN+tp5bgk0NdW3bDabk5PPk88cBbHNPgVHmIak2oHCguwHGlxygRipNkJljtvKKdYjYHQfrCr3HgopkMxIKg2Ul++LWnPpcHEWOeRbvK8R/OobwTojyIq3XeauL97ESr//lDDXmQj4VeexuCAJwkv07mqNCJDvxOQXZaGPCP7+L6I7mQXTdWnoB1pWri/7iTsSDaL0ERk4BR0fpyuy0nxjYhC8vMWNvnSxCDk87vplXFeTsnDKjXZBNWP6v/Q5bHSeHfb4qsKatMMOy6Cb72iS+ognyvQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A4wOC0353brW9wjdg58O11DT4grXLlmzdMHWyqAKn60", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Jp+TbyARWV/9HqHaf2nbHEb+WntVIaU/yr/zRb5De9PH+A2bc5/5R4QyqSxDFd6pJIMZXOtwOlakbxoInmBLkGENDa0rpuXqtHT62tWatLgDWlWuYp56QYBkhz9OSe5iEbzqsauvGrhIQP8+D6h98AcEW3x+6LBgG4IkrQz+doxAupv/Kvo9fZ6ir/Wh35RrEUtMxYjh0U3Jr2WgxNlF9elu8iXEiqtMp3oLd8/79/jK54/63df+08Z9njXyVZWDZ2srrwaeEPPiIkjc3gWMqMWgkIqf+h1jjlV15EbynsM26IgzORoyF/v+fPQ8m7EI8CS62KOqdm78fJBxp1akVLrH9Ak3b4eeW8EQ3YVxPgWTYCZiU/mzBa995OhAS0ueBOXmiIoIJr1QG5eCKsIXw6HBLcDqO3Ua", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A7nytUXslz6ffzk7PzCBdjc3H71NHPDg6OYfp5P/8lQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dhcB5TqiceQTU8AGQj+kUX4B7ysxSJXmBlHxKKMxjMdsA7u7cxlfN0IuPrkaY5ClUFWzuV01H+p8TidS6xjbWow1WffOzVxogTz5v2u5SdNlwl2zGFU8HO2V+jIdL1iO6vAWxL/Mic1hD8KIVIZSzDsklZQAVyfs3tubdvXlp/JV4wudAAqYLX6PllMHjWZYFZxIUavFJSHMG166ZUfiEXyC242XRsr8PWMB505qgiKwVJ3vrZfe+nH+B30JQ4CxFBpo0lqK+hw2uiXbpM1c5Tw9yoBfch600pYPnTycSMlHSmV0pE4XFhpiICamqu/wOwnKbxgYZK0SuiRhrmW0L7bYTfAgGD5RvSnyDFPpG7smonZppQap3/dI6Kkn0vATiPcmPoKNbULWzGaa4N1VBnaoVJLaxpIS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A95Xw/ccBVkuZMLFJE9JPHQpgYTRm0gaD475G+RdBg4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sTOGDKBccoMnFjprFRm2Kgn6GpSCC8Jbl34KqAq3d2g4nkHJ9/UT8x/pjwSkV5T7+0LU9qSuC9GfcYAhY6FkZl1cflF198+LZW0iIkX3JxvKyYTLxVRgACcDSpX+F7kraUopFQXnqfiqMkZ3Km//hDbeNkm6dEFEbEZvk+e7wtVArckge2bfMDbHgp4HZeDhPV+3nbHVxzdu89Ok0xdOS3P9lJttlfd/KDus6o/YFv7GWEt+g4+9mPVym58PL3UmNIbI0x+QKpbtxFyERF9QeyN1PIk4zpsBPq1txDeFIZPvSj3esGJ2iuiJ+9/7xw0AgYNMviSRqluihujqJKa/16MYsn3oSFRTUDJ0/BwmR2txublnaE6NXi2Ld0HWfBIZDxZn+hnH6O+l8xRyfyXBK9uWUw5mAOP/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "A9X0N6KbYVRPKBYFRjXK8J/HqQefaXPpDSBty6icCpE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RXCsDXfpeZRbzZ1dgHWyVZ5J+x8bE/O6//tPaGYSQuQyCDu8GWCxDIUJM+bk5+EjMQkvDDeNWvjq/33hG3YhzUkFEb1MBn3+0VVORvR1vAhE2mRgYgNPWHyz1Jfd2VkYfu6ikEjuHc1TWjdySaLg6qBqLRd08U/lFGViiu4lxXpaqeRwYTDMOe8gtO/33WcqOF3woD2uTLw3nRKwQwQeyMXXQ/idHR7xA7byMESvyJJpGAnaUo28wJy6Nv1PiU07JnhGI76v9Re1Gl6x1I1NIM1CwHOgSIoi6H4Jg4RGOoyzybamdin9vCgzyQxsKV7ZLq+XiXdMgIbyTBd2CU6MpFNjoqvszjGJ6gSD/DEVuZlgKx/OFrmUiWAhXHi1aE5G2AAKLuvLOPoSIgTq0P0+e7Obj/qE5kuf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ACcb6oU9uBr59ac6f2nb6QNGkxiZ9xYfDUfR6QGNKsQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XiWRk+jwHmtQhi93zRe38L86c33VXRPanR3jCND1pNUjucXnBwpg+RW1Mt6WbIvf/HH9D0TtcwsGPiZHaVq0S3TjvAYTYRetSfwfRsSK5Z/fm+PN9BGO5zewvrip+vmweyS2wMaAbWpwrh/F7oZibYVdjKNIgFyrbrEBo8NEmgl8azuI6PXA9V9meuHOrurxEoo+/BDxJECyi+FKtKuLMNf9THV0Gy0bxRQ1pyNsfj6zaKEMBeGawhEvMttcw9vuhv5odFuxkmkGMaRKJOcPvBJkkjFOvCE4jSRkCk750SSvWtQe/wLGY1auP98xbbbvpj1US8VUHi0eCL1RtBeLZGdfi6ydvGJc55bUop4Fnn3vuzSJ7etNW7W4eApmiJyy5ACtZxcXGLf6el5QZsH3MyPCL7Fb99vV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ACdjzn9C8uJLFfJnTosPeViHTGLvtXbHatsRO8kCAJs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pkpcAwwG68YA8CVC7s/499HS00YeHyG5nJhyInuPJ4eUdROXJkfk0iMaMwtBMPElEg2wTWPHgFgwANhWApnwu0HC4/jUI8DUQ3KZ2+Ay/Q5EJMcBBHNc3SvYGNie70YO5f7kJapCRJIpN23nuzpnrc/Z/2lxB31ePgoX6iyYKHlHsynVwymrswjDeGqCxqs5N0EVzlyLzu28dHLK9/34iBmJ56hIE7PSLHNVeyguin2zzTKzc6AbcP/PkOQudHrL79vRcew7eKBPj5Fgt73b11nisPH/xugzQ/TGTsK5Gg1+uDkx4RuzZIOFCND1FgdrAB5cFailff2bgSOEOT+5i1QBBgvaAKI/hRPIo2k7krlSlE/6hgW8ph/Rn7zk/e0DBcvYOcJgMXrHcA5MoGXVrR8WXpznpUQp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ACn/wYliYusRLf12R+WqpyIpAcnUYw+OcwkptNi9rjs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nF+vleWfxoXI7xw/H7P2SUUdlCmyzz/uitkOjQPTiL/xJX/YabT+f/ByHbHhigOmwn1K+jCBDVHcJWCwh6iVZwIcITcwsUEfW87hPHOlXl7jBYjoVD2bRQzQMIb89HEkJxQ8aikmPzho2Lk40j8dcAooZemUEiScIJVgamH0wlNHRR1qdnryt5ePS0KHzDyYV5rTP2LSNkj5RNXS1PYY6Z8mRpgGz8s6nm0ZCdpcs73fZmjvVyUEcIM+9W1xFhyyp6B/+R2iqI+zHBkRoL/E7DO/AmTcV5Lt5oEMcZDpmQ78hFifxCizRjIVLvWbHqAEHofC8HvViD/5VVXmZ/D99IDIzTKyuoqJ7aKxNv1h0RYVluVz6OtbP1UKIuVPWmvyRikHt2kJr+sWUJSCE8h1u1gyXio28i/9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ACzeMeWQpukmyzyM13Wt5BTKYr7LMOCOwJdEmin/Frw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Sxoi1yz+dvOXbXIooYtaD1QDBSBe2jCx4v09JcTug5ogz3ijoP6E/FhV4ojwXWLQf3jGB9c7Y2BzrPxo4LnI3K5AflyxkqeqH+46tbz765kGyTmBuKGAfFOAgiXCSAdfZlvOu7+tGJkDWllVvOgYwHyBrjafdG7xklT6MVBinyOH+xPaUNRNWNufoEw6xMgdzscf1PDuDhM5PgHYcvqAxBbEm+a08QTOnyltwv9G3oGeCKvijhXnjuYCUPmtkEUFoGeqcKQkXgDBlT3cd4o/s+p541nYwXr5pdeQfcw/NY+HwmnlKkBaOYv13iiT3WTNBJbM/YtGx8N0J2TswjZLxTZcq011QomxswwNRfKpxHmMcjyiTVwOC1tTEn0bDF3d+AXK8wi/4MtlJizcQ2cjraH1qnLtN6Z0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ADbX2OkF0Z2B2Q5k1cPZHOV+vxwHbhjxfv0f0puZtmw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s0K1LYZ5NNhv9N5l1/6+Cm9pjfteQKLPGu3ExSBBWRAfeNI5qHnJO8CL6UnWavLEIYi1SvXgqzw85wDPKWzYZgv75gtUAEY10iGGpg5Af1nCHDnlrSqtApO1VXHPpKQ9c4ENKS+94PGGsBEXQq2+IxvXO7yZRoOuAhRyG1PA9OVT7HO4pbE+sT6Ja7hxezufHpH/YvGsbMlksFvolXUj21fnf+td0W3dDNvQNKxT1QMk9Qq80NQlX15grqgxCEG1LcoEomg3miyZWuWZIKNMOpgq5eL1cL5BxuNNJzxSyVqKyL+SCiyBxMkIVjVVfw0L8k98Ey1h5MVsESXH4/8Vd1U8Nfmpp7k4VJK5IeEzCD947icbjwrkF+k/LFcRbTgbH7bCuIMceBKlF1C97JXWj01umQUPJOBk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AHPaRXpGBb1mJ8VoK8vDSJm14IK/uMdx+mzmJ7zQyJ8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lm2NkF/TiER3WmFzvKIaYvOxZBwe1otBDTBNTIc/A/mnppROQgLb56winWVx3dsl14GLexjuoAfL57n+/TXG5RuoPysbFqhipCT+Y/rKEHWj+Fkz+UJblSkkmfG0nU2wFTeCjQzk/5lxHrCcqKBDizJSGceNcSmDPSAYFf6imGO+LTyUsR0jgO3VIySRdWdK300jVcWRVmb9R7H1rNHe+N7KTCrRxpe0L25F4+U9IBz9RPl9oaF7vMjeuT3kCnEhQiq7g40bBFZQJVTsG8zAPUMCbOO0yw7KCgMkPdRwwhwNRSWfpY8Fua8oshuPR70oe+zGyVWnMxezzts5zwYNS/cI/SubBTz4vFvNdcy1jVYk1C0cfWDevaI0MjJWoRFii/jKq8shC80D28B5Sl9rkrzSHkymdO9K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AHqsJBcdpgeBGjjcjj2C3vkK1o4uldg5idaO9KhAGGg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "G9YiqAVnsx6M9iVQkuAZj7L1V3dG/fkWWY27mO/0qyWEfwqiBVoAUttr4dO6EPoYZlj9C+eAE24VyKYuNgeIMIZmlk7U1ezW1OfSYXZMv47Hw7Z46mbhMKXoeFAFT0i+mEF8ClrvznVh69ps7RqQLcf5sTHDA/m/p8N1Ez8V32lIV725BndoKV2j+BcJZmOir0zm6Dp/QNVdAYflHZVZuNYpZ2DBCf8FGyyJ0ItT1krITK7CBxti2XcUhcuMwryoFYZNGtOYLsh8OkHPUN15M1wjnOSa4Gyb3D5R7tI72z1e7GuvIGXw+sanO8aKfsLdWIKmqhwdtk5pJTRWJpUb1EUCFm1UggCFGbOARPwELqo4w42QsYSyJ9ZzwovTxSekz1PDtuYvuYImup8JGWMJd1friAt37sgs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AI5Mz7nsSIu6cLeyhOWn8QJZDSVfoHuPjm6+MGoYvgk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pss0SfbUiR6iO+S3hlE7Q2nvPJhOKxG5YhKoNnGl2fOHKbhSU4RQ+6py82R6j8hjvlYc/O5uU2tONSXBuhB6sF6TDGz/9uhhzzm2/ygGn+YUssf9ItLyOBYNN9+c1iwY8BSsla15yKURUcMf2SHUJjOL+e01Ou8D8zIhfmJnAsGOZpl/txFbuNpKuzNaJAXuiVkbFeE+NwhGvG0yp03xW+5k4ob8DOPYp908ogRGD7c5jAwNa9K7iWbluxQg/ZflpPcR4ru17dOvgAEeoknh1AofvYku8RSSSufw3ZEJDacmHZE6TYviWIrHxpOHeCVgIE/XG8+J8PCsKl8Y9wq+93/I4JIfduS55D72kQLrJv0FP11t7E1nhkaAWxY/OijlmsLjwM7tOey2o5vHwlvWdI0E5O2vCilw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AId8zn9FkKx79UyCcwLoNUUxHwzC9Xzwe02fT840oCQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DkFzJ6Rq+7QFR715GmZV4I/FCs5vRYf/evnQiTeqG0ay4c2x5Y7ooqPU34nnceGY3iA+dwWb0PU91m37zsqCZXBFYu9oH/OKgDUe00nH1OzbgB4VSaYd7rr+ga8ahVdnxypzlPV3zY9Kudd6P+RKXsVDB0R1cyj6kjc/FP8zMhDqTL4TEQuidcjIic4Lx2jAZ2zRvuNuotDCAEqN5+5MrdC0EXYxKNGUOhI+D1bRg4co9tRlWITGKtVY5aO+DCAlZ9Xuzjhu4yvyUdLhrzV3BDN6LGC7JX6n1dyofKWqiZ1qKQn8PgUU0cV4IepLg2c4QE0iZuqW627ZgVp9b2VzptRnhSaVUgyM3+xksUb8pdCcQ2OeNm/+3E9uZ9Jjc43pzojx/WcgeEyLPwMHOs17OYmpjfCqVrDT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AJwK54xOXTuxOLvEcpbtpe1FHqkfxov5QHZNM+M8Rq4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5ApHSTK0V404LH6g/WALBBNNeogoq9Rx8sfJ42PKARdoDOHaHeEcJfszQhn8aH1E6AZRCQ7C1wAxgMagZTM6w1EvpTCiLtynEIFTgU/QJvcPZwNKZ4hMTooW+A0GbIKuDAXkEbUJ/gNUNvMpYS9AwaCTaXGrjeYe2JPtzJRbUwfpkCtO/C3BEud7UBNf5mclDZcB12/vwhfZTlGzDzGTz3hArNdc2CBAfIzX1+r5C8XMbx8962MI9I+NneLOQjuFQQKm6bgq8puOMFfPJbIN1Fup6XlzgAlB5wGeVeGWQT1GFRnyTiJM7d7BKgvfXHol23av0F6jEY8OwtTqtlfAIGHOuwloiDr3SMfy+Ht84BrKA0VmX3vnhHrWPuSKYqK6Lo8+dDJesnwY+eop/N9ANgRJ6fkx5Pv0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AKQFSwDzUy2W/vxfbdrfxuj6t6Ezr6L7XsuolgMel50", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wwKU7Y7VIKrpTHVGNwXc4QJhQvk24U9WNxQGYecr/qb2ImiUB85x+AIb63mPz6WsNncBhCCmKS930ILGdt/OYjSBMWxSo239laIVQm77/9dasuiOhA05emXJvlf1ySwhQYi8h/0lu7cDBkKNBvTl3TI/d5uAV08dRZ7wVBTWV6D5dixBI63oxPDe/9hvG21LpItfktlDYMUgyARSJLeUgx+d24pcZGS1D8oetMWOezd5Wp4TRINvXiSGZ9W7+XFDETdwqqVyST4RBefNX/4rnerBIL2FIKtEtLa6zQ/Z6z23nXOmw6viixP0zs6PhxLcFoPgEE9F1Jhy21HrGsf+f30hf1OqWLAWiyj6RY0KTbT43UEKParbV82UT/6A8cSU0+I+Dxp4TPWI0/AixWX5/cbnRAeiC7sj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AKgfCaFsrgdZbmR+k0QtNeAXh4IS4T7ggaJ3BZbYA6s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TsV32sl49UOqXI4+P5YQSgMejN2vxfuHQKU9+04Kk2rxe/7iE0Y0g9hYY8NnGPbezcIzghPBa9haujSQcLKgJpBXyeGymCyrQIxbmdGw2ExbTITS+r8H3MLWyjH9aYCYbthw2pITmBa4e73xa7jLLCGzIEqp+F27pk7c1fu5aT0tqf1SxHH4qOHsEwMN3tQPMW6G1cvKeSpiVGwdLymsjLDp7HTaEUuwVMc4Zvj/DObbT/ZGk345ncQFh3eRGzTBoQ82AWujfFRnXY1odapaff28Lv4inTLoEnOU0dCQdxHzBKR9dp6EueL2rfzWNtN9iAQkqdCtq05T/LmcOd+ekhRSgVpOztSwhkWlVx4bes/eEMKYJkAPCxVevQptQeZ+HMHBMpN/UTzvZ6ukLefi71psHT2Xp0fL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ALHGqBui7n5plgqNWMcsNxCsikPKm3uQI4XH4qi7NnA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UkA/0edhQp0HlixtwtBj96fId7QTFH48XFzNGYjWjZsL73U3v7NMTdU3VkzJAzKJPxMv3UsHCrFocojRvqzWcQaPenxT4nhlzgcZTihWzIJT6mrKD0vUQrZdeEjJLmPy9v3LCbrQG6uzJwY0fBfDGsUvoOSjyQyuNlXNP1YAyrwI7/9dqlmVD6zPP4BK6BLW0I1MLI4I2z4JWosJIHuciphhB4Gwpc/J1KObLp+nDmZAkruV/qO51ILEYQ1Cru6F9IB51jNp1al47IKm8ynyQvYCS0Fv5KH6Kokdgh6ISnWmoirxy2focjH+6xgl5X43vhc7jnxfR/AeQrPqx8Fwu5clN8HE02pMyzOo8c1nbZKYKN5oiqdUOg2yCO73q4m+fgNEbcVg75Pp+JvbkFcqRcuzyj0UEAp8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ANxuwe6Hl6a03758NRqYZ7AXDePMDCgk9pUSauXInJU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hB52LvebYDN6DOm3HQl0mvj8tHulfm9WrSE4g+6JtDS9HvDlci1Wz2iq8UBCowZ1qt5BDPZ+AzLrOEldGW3KhMR3G8COqQxNdyLzp/Svcunc8RtvrLkWD1H3lLTLIPhwVbz8LpAx1njd0K/OqoenGZgMsaePEIDprmtyf3te3HkMZesvjJzaUwXJFyl47Fu3egfXcYqUXkHsmthi64J4kKDJsqHfiwsqZCYxtZqbGZrlG97CQp+rMQ/uQEnDten/T5Jo9VQNPZrXBLOnQuBG43SORzFvmP+v5WBhSH7ygvG5oMZ6cZFGrWVuF8h3HcCH/HyW0NsujMwMdMxkynaOPauBsWmbJt9fbBfzlmm2CN7Q6VgzE+gV3wQiLOYmUZ/O9zB4PjgGWzdx3f3PSgD1HWa6ZTLeLpkA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AOYlJh6gSPpslNykqVbwW1pkSv++Y0vzDZxnn4wvLkI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t31qGrWo9d8sdyBl16VeTjQAT88xvy+70Q/++8q9N4JddfeAsjLwzENZwhfSWlGjVm+FTmg0dOkxXde27KZs52vuW040PYhfMAjONjqJ+t65Ba9wUBu4Bk1urBg0YnKuPia1IKEICgHsKMwuUnKAcLcb9kOwQ9IeIPwIS+rUd/iofiTFAHAvlDaiTEvfLi90HQ3XV2ekAy5ZgClSXi/4/mqOmacp8+YuxwfZq/cArk656fwLv3wgPOgWRye5r6pdYVRlLEJT9uQughYM5eK6JZIoQLsFFZzIY6sHzxHJwR0TF8bEYsSA67Kh0wsmHXcmd6pobqPe6/OPPXrO49mBxWWVdfmWgtbvMS0pmwwRHVLd2ElwACoqH9mrTiA1HDydQm2juVzXoMgZKQ+salgL1g/qmY0/bW47", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AOaqQr+uTmpaSwUOqNmGXzlW92d8iPeS28I25yJBiwU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0bC0jUhaTMK8nD1L0aE8EJ1UTpfQXklG9ibBwufOlJ/XnQWsgOc8yTalK2G68MyjKIvPy02mO+80S8oYB/vjI+4jzm2QB13ACPbw3/5DrSzhw6TOak7YU7auPCxnQar2PHXbzbacosOjKUildL6REpusTggp9ak+GBxSPBy+SP+MphxqJyS+fMncGsnimJIAEMgVM0lCquFB2zLGQj6brlHpsuS9bwrXwQumPZfSjYQpXjCqf+5uX+qd86UBbU7HrlFRxsEjQK/NVhgPN39r8sJ3r608q7lSYUTBiL8RnJlhZ0M+UVi1jqG/FwBZqB/WZq6IQqa9Bw8yTAJ8fsRp61QHs6HpUJBI8k7ZqVsYQEw7MquSonHvQgoc1H9LiR92poC30o7hCoU6lN5mzs/dvdnyj+rlHACL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AOi2EdF07vPbAWsKUdrwK0HhTb9QH0dxJQb+1vgu1go", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8kiJ6k3WvaO+Sp1LH4DRd3HQWdmk+Q7dYgeVzhkDBtH0A1IHiEe9NwFPYxtyiGRBHBobfekBtI8+UhAhkC+Z+7SVXE/VedmLd1aLu7/bkIcK0oMH9nK1RnThdWRW/UtTKSeO0UUQm1Ro65QDutlZ7gcSCfZbpXlmikL1mCfI+h7gz8vZQ+rXfE/AQT2W7BUvIfJNbX+otDLI3ka6tpGEdzTy+O45VabWKVkH4yYk06WhFplpi9d2HWG1bX4hv8p2RrjMQ4MwDPT5SoToUdI7XlIgov1Th+P9f8QMDHEfcj6e06FNOH2fPT+zl6IxX+cCHOaXHYvqQswaOBycMttLYTk4IBnhw1wb4FDzcuR+hoE35i5DxiTVG4GeYI291WaRqCmLPB4q8V0fEa2uAXwJP740kOodE9dp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "APXFzdsbHbRdXrDAmVKV/CyKPRMGWqKOoa+sqsUptQM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PzLhaaDSzuPM2pHDXadUyHu4/fgAXhw90Lbe8X8DyCEG6daIJnfWkf8rCnxHUe7XAO4g/JefNVCWfAyoDcx27H+pMNo0g2iz+m9TciJWP3KWmSufc5K0TAJgkyYYv4cVzESqtXNAneGY8k9fYqKJ7vVDcTYVLqFWaiF5UHCcMcSoa8IJRWPmjZB/bX+V1fALvL8+j7KPYN1USp5+o16cBvYPPygn6qiOpjFsdTaOdpPa6ga8vvUvigc0UnB2Ik+nGWDY8N2Dmt1Bj9f9M4X34TFwUGn3BuIGyThstMqxdEWVachCSOBQSKgFn4YENNRrU0rjAFP4nuXhe5HpgJZe739zLP65xYCpIEGmnyaKiJSvFFD6tTrYeEiY9vqo25Q8ajMwGbsIlzUuJ82LLeHZlKyTHBhbkcUc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ARY5n2Wqn5Bzn+LX1oP/ebsxF4B123lq/XsuWO9cp6g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hgGygeaiylIOhkyhhZlkigrB9jIgmugYomyhV+eJXKMMjDqtsQmDyRGQRiwD5YmQxfz8EnkGx1iWLNdxu5mt7I41qqj+wCBoRBndRwhexBNUMVGpTryqQQbQ/MmsliMNU1io53puc7eeB28Gx7LcIQx6H4QfoNF4R7SALpwtedjm5Xyp6sGsAEuZKjdytV9EmNkZtJxpMUQmCTPjnJi7kk+zpjPOFQC1FllBkDlENyB7f8lh3bPb54o4QlwsjrbjcaR/JHHPPIlc9EoX5q3CYDP34VK5lKTwxL+aCtIqm+v5q1cVcBGFU3SAOXNETBEzo1GMtei/2TLdvcgNcYd5y2jYIMV69MoMiEds5Nv+HXFQAuzzEmcwJoozth+P/DrZAK9rejg17Rw/zjoOd+Bb3tx6/xK3yImG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ATt4L0E9216pJ2weuMaAo6OWIHYbsyKyNNG5j6Ventk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4Hn1C+z1TqpASb8QoeQdWGxciHS4e+WfcQjYG1Sun/uzThVZxsX0cwDD+OxfFl1XMfdUOq0uHrn24oaSr6soIvhO+GYkER9oyYjxYJJf3p9HPDy9IyOpiObPy02PMvRcELE16MrSooeogV7ukD21zgnwiS6cRLaN1wI1/vPS+KbawouuOherFxFL6U5v9MLHgd0pP53jhzgSjUUwII3Qj8V8jApNjOaTf0w9n4eInc+WW7MfKyRONGRQSK12MXXjaZWwD2/XmgdqBcWB1AGCDTUPb/Lai8zwNQYxLFbYmBMz/wh7qO9A0SOn0nVs/WR1mDcAJkVKZNc5gqRVjjakywrpBXzJOWCB/R8iuSBunU84h1P7aem9bFjBOqrsIteG97NCEpR5w1JaSa+2sTz9OYRO4FAOfQ9h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AU0Vv6dohjz7lHY1sw1n3pJaBmCdLouIKGXGp97S/O8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c5ViLNXzvXz8+yCyVfEER340ObyzR5JZnxLZBYTA6uSnUvTshbBnwinUo2UW+5XYE3VoEFsvnbZfuTl8Ut4idknn2u/xTiwninN+fBCD2hnk02OrqE8hHwKAcBFMMit8Ras54XrvmrJkQwSJjQ9z34c+TgzzJ/9RbCqTE9JZSSZVPm8/XOoC20zQK8eFjr7Cn6owYn5MoXZG7qvyYr8/7QOAZqU8JJl8MYgBuZYBPhvdAQm6Oa6UJGAZXaXLvhAqcKjBEWOVzeSi49CGnIDHwoLTGuGZWkhRVWVPI6juDff+qrdW2tDFe+DJd4ILHzMba9pE8ihjdWJ/a3YRPZuMdKg8upWqvg8t7q/ZFWVwkA4dLEZuMCl393gzFn0wi6TeNPX+ncEjnr/hcuMiqCjO3VTx5DYHIeSD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AVDvQ7jBT4+ufBKLS1x7+AeIbzas7T6f3iE8Ris4atI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DujQBZuJkKMlEXDOskK56qZp0neDHhh2DPcIpEScWutT1E+PESoCWrPJ9HRFheqcN8/A4JxgKm4O7qBmk4ssOL8tvo5cAfqFg3PyT1BHwlcGPZ6z1fQeobdFP59ECcLz8QfSouownrLi2TNfRZvhyHReAsCgqD9+CtTTWgJKEO/bp1JGdGOOkGmP6/Nd5wn/Rtm1lbGNEjmqYOuUqhnvZbcr8EpNuiH2nqub4Ef8SPq7dvAmolzYT+hHAeTSn2K6hUb0StqqF1jfJkXY2lAVqGKPxgUIgTd3bC5fPE5/VbRzw2r+FWn5Pumzw/EOcbyhErz1q0+p/0ZpbLMEL6B8m79ApItdRcl7dDfKrEiBOVaOCfKBjv1NA9m46zdSGPk6VIWM5Z3T2R51OkTiFEG1y47iqtbVeiux", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AX5Kleqr/6P5c/2UF9p6zY1mGwsKmXv47V1dR6ZuEW4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UkRCQ1hxjrbz4VtBdiBdkqUuvXqGgd0vUhLRk+WCPFKRecDdLG9EFW54Mk7K0VBC23RKGESjpyXxKGjS7+9MenTZRd2w3O5hJLpMAd1RFYLQEZ+adp1QEAjs67dUoMz3ZRalBx6omAf7GV4qGI6kcQrCmsuxxzQn58KPJvKz7EYfiJLQBsgj55QSMJMlu5J2KZnb+8HZbpfEOcgA3pkhFHH9NPhLUUoiLz3Z6TJsu0C7hUajRceKjHv2ukaAwyouu2hvpaWvGseecV8mDIoK+pG18B79zLuZTw0bSYwgofk9jKium6ccDaTEyAd5yoikrQVuOzbC1RGqfI+U99o/GJgHlKa3F1GovCQ27N2FJuIwVL+S9vsiB7MH7FB/BOtnrjt1a377qq3bXCuuhG3wNwzN7h7H7n09", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AXIBYO9c9mCyRGIS+3GE4nkvmy/S86fWzKiX6L6dKx4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/LEAy/g7E/ikltNF8cVbXBLFoy8os40/6A/hK1HPQCQEbq0uDL3SeyqW/+/yeCLaCvPGNDeSvGhqDcceMQxSbONs27jK7Z65IEAsp2wx7cg8BkQM0l3jWeC26UWiRYGje/Dyf0njX2xIaTMz0NLiiZLA1FajC4xhTf7XhLu8zQWMolHgTWgbEK3zO0+y8/n1iaLerT57PI2EKT96pjBbvXu6Ym+2UzCAjC+G2L43HFHqwGjOH/QyLXltWxxOXZqWVe3QDKUVLIpEE0hU/W0LofzpMA4+ib2cSXPbwqqpg/WEM2DEc0J7M6MtZsi+V7soxt5wMMV6LTNZ644qcjzVVW1Oa9evUtQs0+NEm6iNJh5ETKZx/vUd3aYSpoNfdLAxk7sUxaN6Qq+qhzT7HvYRFqCNojld80Ay", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AZtd9V7qg9rwcgISybvqNRFEi8SBscchI68+POQuPfg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WKCN/hYDOGuitM7V/jZrkWUAe7VyFJ3SpBJ35iPoYbf8nqLKvM+4vL0P/pvIAXUuaY5AlaJGdZPmA6IoCZqHehTBDS96xZKplvNVn9z8OfkW1QJyIiFPXy89lYrp4xFUiyN1WZ28aAJu1fMA+OxLtOOAyOfWl1gmPQdjLDcnlojz9dvzS6DYBjOfJ/ph37pKhfIA77H31BRTacOo9GSm5eiEgKv1LRjFZsWWDf12FSRVp9lEeDa+y+n7lZdPB5snN78vGfalm1GSw2Pq86WS+onzmFH6XjSMFGUkijcgqkX1GjdIBJU+LewiPRrKOusqbjl9SczbkXgkvdLSOYZuRSUnC38KHYMJqQuxGLVeDEeFY4QsYpLaaH8RCWSBUVbRkbjG4voBCk7x/arzUQJ8MYW9x/HwQbjX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AZxI67ury403/6V4oQ9+F7+ofAZDJciKst2BeULIJDk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VKC8tTfX+FlxqRDSDgaozuHO5GTWfZp0IQKvWZQzEgki1pcWbIzHeeAMRENyhUjVqi05Wi2B8qXlnOgy3oMeLFp3hllWg22y9tK9sfZvKQ0lGna+iDZZeIsh4zityOdZh8sAkVTADyucTRjunv4zZElH6/r/55+Boz1PAxVLhBHapmH9iHhwqYn73CE9A3QVJnHzYiYox7VQy/NO89+mLnSo4L4klo2sZJrIjBxNOwOtR5wJH9yaX9RsmJKZZpFluGhwj6oPwcqSk86bOjPpzA/aWUzHxumE8vAGl1ix5D1nYlKSUSW94tzGvA9Y/KO2GOEsiI77RuxfEk1prTxL44hLEEQX6zRin1Y6/bphDc82hwfjem1w3DAUhl/uWXlhbqfGHpyVLooIgFFXpgKABQ6uHVt2csFF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AZySDjXMdXblthxgpF9a1oxPFAEXADZMbeMkQ0EYO+g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ei32lYBRqIXsQuJPxxo7FEW9egx39jVSNsLopRknI94z32HLRLbjaQUXNYXzJvjGtqKViCGN2kiFy0D5PjfmPLFwxJS7mCMTCyy87dZX7jpxEcfbiXNc9Y+vp1Aa02x+OGwHzafABqXCvuLLgYxcjRlCdvQ2IkacCo0s88/L58wkKkBC7Ln/3PGpCL48ZSqyTeXmbnBeB6GPQJYXZz3VilCA6P4kBVkNCBHRhtQ5t16zzeLUmZFFSipJ8zG9FRa/dhf/SbsehIwoKD5mAZ7KpUvJWLRG6ec0vf/puzPBbrdjSE0RxhhfetuuxQJuZ1zO9z4WNlaixOV2EQ6lpgsox/qMaSmJxTSbpRkYctucAlvooNGnUKvMN9z3fJ+J091yoqnc6CCrGnaIpTasRrdvJJfz6Fzbj8tv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AaKd6IKBvPdpmbIP/P2ohhi1tkcmCf7MlPGfwCtZWO8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0WRaf7uZiMwN0ETqZGPsT7Ps6SeJUgq/QYsmPNHB0axPGH1qJNtD/ZnwCsxwrsK8B7yfgbtjlwV6LAG09SQfOWWBn9f+ya8LF4rfBCjbfUe+G7l/kIfE0czLwQZ0Zl8GtJA1+yVLyrGxmzIRs5G3PFUmscw/cw852C4xgkoTnmIdpGrTtR79cG4qE60WULop4Img5XJSsOzTuyu/MlnDr4OubgaA9c+K36U8XPxZHe4OF4iZxV/NaxDrVCG4rDvOFylViaJgQE2ZkFthGrOjmZNdpXr670CIgxwAsGoOViKGEl5Ew+cjf8S2AD/E8c3wHbGvRITM3kKaUbFh3BAUbnV4UIOMkr3B0/HYEYZscZuCL6SaOV//2gQAetM89a15J4GCJ3mXUrj3EozPIATEifP5Ja1utlIM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AcRyLCQDQ9O2Dq7fxWNPZXRrdClxvEYXrROGqA97mLw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d5L912K/KGX8GrFl4rFMSSR65it+DADj7bf1cxnwwlkOujtI7HxaZV/OtgdVGX0+FiOyo6wWmdXrdzAkvELCKwstEBp1W0N8D3M4VlO5fQLswU3dKDu+TRFHhn545lmXdsuAmGvI9Lf4C3wb7ihYHU0aYF25u/01JZhCcJ/q3DGuZTaVoDE0IJtia77lW2k2B0cjp1gzqVC7i3m/HxWyo5Zpzh1lSBRo4hIS4EuR+jKMLDU2j4i86RQ8s7TBvmDC0tmu2uEZAAp2JL/uxRwcVj5jJXYcKgXV6AQ9YQE6OKGI0DN2HN0MKf27g9xy2SpUVZYvat2NPnHZqr9lCvRBniAr/k2amm94Ro6bp7EqAlaRbYD6FTE9qdmW6WvNd8tv1A8dI5KJfLDbTBiyh0NryDSNHK5eIvb6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AdZensUIabJTh3g2GcxtBrEPNtqAyPb5J7DDDR0hxAM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WbQnZXXUwwq8MZZm92KqWd7pxXlMjixSL6V+eMp9MW+9vPCeNWVWh2EPs+Xp89gTIf/c7wn8XEXSuzj400J1yS6GBwB9x5MqxxLMsM5ntSu9GBO35bnFYy+jcoDsMVry0NsaZ2EEpNEsrlbF3TaNQyvi5oMGeQFQisWnbSelEpXX+daY42bVI2VvsZfhAJKRY5ZZLL8exAsfGCGlOJyLVOLBaS89qQ5uwRpUONu5ivT15Ndlmd/uZRaW6iZo57i5wUFjiJlGRkOqXUCYWbrGSbVJqLtzkgDttIKDu+pJGQQloL56HwPbiLSJ+IiRls0haSgF/u55oFQgBl+BDplTOr+Ow/ZWsSuzZU+ooz1MF1tkj4KYeUXKgH6im48ibmzMUQ3cYQb6EG5IaNTPLcvvXSwKVZYIhKzn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ae7/3A9DiBlm3f53fJcnWx4qxlIvJekbrPXOwPwIu4s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UfNxDLPVx7kS++Wvlt6Bldh70m9bGmJVww+eSrbN862UNde26mzCxH42+d0YZeQ/oRrMGxv5y6M4VNLeCpIBRMoh3rMqSO7lamEIyJDBQeif4+Z7GSH5BrnHqhS1d/JMsGubk/CActnabbzOOx7DgGejQo0cU0GZ9KUkVHc/NPpwbp29EXODQkgRS5zhkeqwoXKTxQ1AZUt56Uom6DlJF3MwetA+6b34oRi4t49LdJcz9VgeVil048V4juwm+D2jKO/YnHEV6d3GoLea5VJtnyOggSHbBTtl6zvT04T96Ey/CUxSk8WhFb0Wn+aFEzl4ZLeJuJKmORVp/9TobFb+FGYlK/YeNxAXnfWuM8BiDT1V9gR89kSiZkTSMyL/2XQtIZZJ96wIskcAqtU9Bfj9G4RRhuirCHID", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Af7czux7rYGGU1X/x9f3WinkUDsdlHZAJov91zSIelQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RVdScXi0B95OiwXZAKOwfa023KSd17RPT0HoHgHjDtT0R/5LBw2qj4lAYLrf+wP2gNzEbw130xjVKOHf1nNEenuUY+RWuqD/p3v506BR8Z5HDGO5z6z6K9Ul8K6LcVxLC2hKV2IKhfInU1+5xpEMt69a4R+vssKPBxH2jHAEKwHNiB6RQTj2vaRdJYATN+9lS6Ye9js4NWHneNUfO85iEAaOgWWn+B3WPm080KtHf3+D+HEvasuOXQ9lhpjLHgJxVog7ryjniRsAS3l7nONOi8hT2fBbIeL1b2ogXxkFoSOTqGNvH39+1WqtCAGNZLzV3PA590hfQs58+8hxjGbtOwrNMrgwJLTavYODqBBNB/szIcgHxQFkwgaMWGNW6MG2KumWYBdUkVxju/mKwdfpIb7TarVhak8O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ag4B+FsuWxlsFircfn2dgQo2MwIynIQK6ojd8+ebBCw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CjpnUbw44heYq6alu1rENmbcjdUq5qRBl5gsy0Ew02RWb1OUaVq//mPWNygbQwUX93hsAlEt56z7ACiKC2ZELquNMUXCm9KiaCMYUWSKyAO+k3YZisLlM1Is39LgupaCMmyJ6mbdf7i9vV8aiQLtAs2GEEE04MVttbN3O+H5PAtzsByifnsZSRmeECQ7c863DsMBvjcp9HGYLGkKUw/pMcvVJJicRZOu6VatY4x42a87M/EAG/Ev3qEszj1nTGbbgajhARetD0LE8vdPfc9I1qzzzcmVDHmeSpqXFql+Ev4iZmQ/GrDLUuAwnHZrUEd30h+TPNzo1kcEgqggYqbjZZuMz14oiPoD98Sw6QmkECO66H5V1dOL4NHdr0wlcbnZcH8kymyu5VUAlzqMrX20xVnV+TCR4hL4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ag6OseihltNdg7+4ZB7Y2XSNsmmbncHcT1XGASwmXmQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vSN/fKK1CcEdaIEoxF4x53G7MEBBMHbQA+4QbP/IGPEctD7vi7lXKX/BKDgykXbwsRVI5pJzoLe98jfwD1d8NrY7E1pYBVItcwLSts4CPUqESRcOxk3cTdD2Sb3AhofBp5BFOTHJ1cVVC05qhhgEdOG/XrYLqxzjHlKdD4LaRRqs0RL1dJJOMv+pikHI34q7JzxahMYwKIfxQfNIXXJ4pLvshsDYooqEwhDeC6T8xE5hh7GsJaZBQfcdN7BpMugByqjWx33eyGTLsyhy1dVOcWiBagb89fBjIO7SzchkIxjQKdi/RQ0A7vWVAQ5btG2JKZywwlqgLcx0oddl8wvpYEyw74xBbWiiH2/kKXXG82uifa8Wn7ReIaubR/4Mj9LPBpZbUyA8KLxcfbu70fW7p/t56MxQ8dSq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AgvR+0eaOvtfOe7eF72XFSVWct03tuS1fSmLD1FMYnY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NiGYnCplJjkezbCqxivLjkTbfgAEhmXSTQNvOLoNA/Q6VhAsLvoZLlbkh2Af7edyo6OsYRMUs83tL08oh+EjrxxvZKeCGRPoQDMkp6qlvnB9+DeU2pODnN7dciKDmJNM3SC34gMYdSVlfnqGNfNAH0VvsSYPKPGM45MKVxJL9lKuW4AUzMVtb8XiDYYaQmVHNiYkLVAxmDULqmeUnqoFIGGTEVwhfrn3U6NC215GnyTwNV+6Hu310c7sVFfIve58oPIJSQmxuBR3Pq454Fp0LqVIfq09RL0SOBY/1ITPHCVpxE7UE9lUgzcOhmnu2Zm61Q0Z4PK3UO+kmthWcDvHL2+NuR06CMo8X8MqY0iy/NL+1cv1qrITzK7v9w+ejqgpYfluJWf+mF1H3auNai+saz4wAir3qtwC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AijVIZ68DDjJ/S9FnHioEM2Rn2S3r7bSrOKeUURssK8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aAVBUiqkVTHaqJLC3ieeKpzZa5gURHy7jwIsGBhVxPgQk4RYxxbaokZf19YXuOgkX1HgC1bRvVZ4CFyQgaM6+VhU69+HUqx30SS8mDcPpE9NajGVbIvvrPlGb0BnNL4OHRNUU86fAi4KwamY2gD5PC6LX+RFUgRKyXXNMxjPCD6VAMpeAO2s4+KiZHy4gGn/dRDrdvxAjkEHYT0+yZld23n1Wq4pcDlr+Uw8pQ2L+/JID8K6O+VcDxpvIPZPLT77rMpoKgwidrIisbpSLtnF7NrfuxMoReFZJX9QldNmEeLizPS2ltvbyu8DvpzJjdLOyoxj/NXZJcbaHgYt9cLuti3H6ZyjTKnsSNyXYN1E5zv+DDm2dUJi6gR7TC9Yy0W8BvaPHpfJgxcm4k/aZzGcSyK658L7ABP/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Aj8JEVUyT8Utxo1HCSLPtihKRqXnBj+Yk468Yf60h5U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QnfefVI8FdSSs4RwDeeBJGbFtOJRdXzPJvIVrFZ7jOC2KSIXEnouOyRWDwmj2N5Bnz3t8LAkD1i1uCz2P1wrOKRc1yBc/wdLn/sQGWrk3SfFfPqhJKymT5VWewnDduZJOK4CWa6zFtI8kYwO/ck0LkyImFpJ5ElJ7Cqto2AH9Zj/JD9ihhpGZmjXgiAqjRF4ljwilYrA6zr0+gQQkRerW6kBCowRXZblFJngpI2NZ3BYQonxzBA6F+68kh/p3A+NFKKtUBP2ZZgSdbun5Eqb4xskcepWGmIBOWGuNtPJpVZLCMlx3PFx0lpssgkQoCjC+5VTRREoVO8C+T/k1xkFOOYrVOJ5c5LHqojDaYyE3NiPnhWZJruC4/RfEqo0ZUDyBohqCc64UlZTVDdEl5PjjqYJf1ji25hc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AjFYvN2yMflC66ltlLRUAK4F+2ISUqMB41HiRlrJP/I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1oHdcuh/kpveRKhJgRKNyVKp7F2/KIbP7lsx/0+8m/o6+bpewjQtlyGgFRwxKDw6+S80+aaZAOedwPXvrOvE7E/oO28Gq0KEWJLLJ6HeouKJ99rrz7eqm17qmRizAXj4sDIVfWAsTdqiV6NGnmhkg+DKHicIhuI5bRThe5aLeupjDJ5rEpWtDMauNveHi8TCBzyXj8ypA3puwCu06ojv8ytLwGoNP2jus3Vkrid8ZQrj9oW2BsmdsmdX6KH4cWZsLqhm5y4ndiJYD3soNPk8SAZwYd6FqGAgoyKPFywfa1rW7h56r2Pv1bw+RFv/xkbIgB6TIqkTGQ8zIoOKfkACNR6oLhF6LTr12LMz0phjk+icsz0lYllcO+p3NTfLBVoxTyEmLkxv4CxVzRbSZqfDGkaDJqz1i0lK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AjgWveqQ+4C+GUYqC0xOiVP+Mi9D9I7WtA5DKrQvYwo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ks44/Vxdh7hdY16g/wLvfRACLLqJWw/uDosZx0k1SEWwT78heQXPpMzRk39J7ZNQnVkibaYw4d8+nQ7u1lJFvuVRkoq0mU+aPnO0RycU0MiCA4p6gmMUn6XiwpVg0GcLemzlkKlCTvit39RjUNI90IqStVIBHURulgvJ1jhRbCzxnyZZvTmZGFANmT/rdIlMEY0cwx5EeDt+aLiY7uyNk9vvrVeThVflCSfXdaIzUTnNPWZZcCYQa56B/TCC9KjP7gm8RqYERTVi+adZ3tJdNhoQ5+WhRa2OEkekMLeHV+qvVm+YbvvILbM73b2hSvVs3rvUaYqvcYH98hIpI2v4rNu8JqlY7aVvZx0bKpv2YPeRjzmeGLDaFv6Piv/tgu92nCbVZmEDCi232gthG6uUCTtAoJsmvILD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ak7zLBuzcBY5wrFZHe5uyK02KTGCr7X1XIXR67w+5yg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5vPUMlduIR1sFO8i+jBVEMvAHOreDT7qAyG626WncvYu1YTZXWrFzv2opeRj3+Hb719E0wVzRuq16Lpv4oRMst/wT+UiIPW1uQxXGU1gUOX9sn00VsqQBGmD+9V+GFhZkiw2Xq616QFUW1XBUsxDOFlpEJ/HZPDZxCF4D2AAbxfzMB3MswSVemz20ub9qwEbmCrRnt/F4QYEqwvZoO3xJb80w702FasQAEDI3mu0kl2O6r8RnRA4qgwhLO+RS37yW2HFfnbFVXte7HERIvKOcvqFs35aBO9Q+LYBDo/ZpTW0CV+e4NJSKCsVgCuulx7SS4ojpZwreBUeDNxIZJoUG4R+vZ1wuBkdx3me7mLpWZ9Ep+MssXy6eIRH80QAKWCT5f/8Y2hkV9CRjgjD6WAasw8BFsS8PbwF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Akw6TRSxhsu+pIfOEHNPlvRfmIK1CnZvtNtURfkw7fE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kA6QReMI0BKhyaI44sc44C3ASbLpKh7UQvp+eLeBpPT2GQ9lm350C2G59jB4tP843kQdKt6uftVYjB5XH2Q8/WGsl6EbjGeylquQlU1xktpmC47LPutkAt4NLwFFkFk7MAPuqChUoJTxGo80Jp51uZfsCNWIZCAlZnlNJes7xGOgQrMhiHtMSkDnAFXqz+jxQlOicj0kTJHYaBmQvnmYIfhskT0wS2HI+tHYYqBMBTSc97fREO2kTLNtzaJ5mrUKiUx4H4VBxD5UgIyuw1fs99kpQcAIfFeE375KQqoccSpmQoo8q65fknwgRasbLMf3Jj3j/aWExMhhrZcG9eBbkOOWXJHt4srvtEDelMkphDyMjY5KRGU6yvz+7hWrQyZCS3uIc9Q0I+aO72xiKOv//620vGJ9P6ne", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Al49JjcGXfha68Liyz7FTTC/VEXqIpy/FRYeYoFCeVI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IBeG73z5QxcbfPIAqh8Ci3jkp294HlxRtE+xKk5tCQ8AfmUmkgIcl/GpGdpCUzf9Mp6zt4j3SRQ0eqXadxmmnfRMBTEMBbAkRp9rB/JLhEQ1JEusjeQY77oAvlY19ko3+UKTChnlrFpZsomRrqrPCxynxAp0HNfsleg5v800cLysbAs09PY4nthxiXVSBt0j3TI8Vfsh/DYMXYI/N7KJf2d0cLRHAUTCbzfWYKMidFqAV4Z1oIt/wPetN9yNHJ95JAHiz00HQ1O4c0FqhkV28tz08eBG4CvkXoAXvCYk5E1lj2HplY0NjNE8QYjcDRQFDrdI4OcF93xw768C6LVcazEhTT3Fk1/GDM2uDpr+7w8zkbRRyCGZTzM2e50Eqvcg6vHYubo2t4bEqYrinSVztgOEK0Fcui/R", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AmC/tBrIW1p7VYjvcVd64UB6YBeeZqhBedwRC3CA8pg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VCjt7CVLMGZZAKNubOK+6z3pff4d6WTJPtvJ/g5T0fJQaw7WOtM+s19qLqiNP9rzht4CQgg8VnSv05338rcfvoq6Khj7VtreKlHlGjeIrTuxT92MED3/JVN9zEaR7zGWpHG3DUFc8nxWhufes0Z5Z4mscfJscJqWqycX6jwkAUENpDQUV+1cSEaY6tYcs3tJMuju6NzXHVv8UhmJJX3co6lb2VvmyjZBZ4rUWIjyOH5s6dW/HAX2+iBhtI9InSNHXHMBzn9fL2yjMW/H2aalFXhRTZUI1XZ3gaXxTSeXITnahyjJJ8D3RNrwLTw0mwek0A1bEBQF+LakuHJzIkX/maG2Lm0eq13hNdySn8nxb+pR4uD2we7xxlS/tXLHese1GGS1QkBRZi0LqnPMds+uZ5yIPuulh1A2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AmJbvZZl1La8CZjk0cZDJ9QH5VTqOv76TBk7EWff6n4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y1FVCPJLBV6A6yuPiLayJHAh/E+NDADnZGmFJQ41u7FqTgzkSM8jFSOiQVBraA6Gdcj/DyiVsIUqfh+J86IzAn//Cqo682AtR2JhU216to87anyFG+4vULDWErn4fVou/9HuEQaLJBxkt9cDcUwjs98lF24zc8GIR7jLkmz5JaIVtlHWZtJ0p9jjgRBZtRE7J/ImkjVjFo9DZ/MS/MECHSFu2MoxcGt1d+WH8yywqZCotlxUjDimNc4ui+Kj0CW+43ob0Sb8HVu6X2dRS5P2NKS+hK4NVrz+V2lH1bsbLzjxZVM50VKVpdxd+GCjBKwZ+/ZwzFpoUOdAA4kz0FsTsNEyNwFUSzeUTGVJAeqy6zBINByESzXP7qug3yHS82EltnJ2On4dkHi31NdD9oRjrR5xtVe8vcZ+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ant7NYMcOPtSL4RS6Mg2sDmtkh7ZBnRslolX61TX89Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kEyF0w/99um+JX9RMjdQ5d+oGkUu6CYWP6nmj6d3vLOHS2ZmxQK7WkWEmQT4i6m4f5j4Riaj+IxWcocZ+0PBG/D/nqlBimuOcUeRs0pyH3Bqt6Qasanf7J1kInMtWLVyd9XjhM9lib48Ce72yPpIJzf4/TxOHvM9L0rF6Q9ur6IBIGHSfMP9QFjL7idGlsgNHhYTOHnnil22ocR6xRCscsKnAKnC5sjZO9zUzwJe7vuj3WkaAns0zZSJK/hWO6dqhto77cow9V8FcwKhGComA9fd+8Y5LNku8FkDJGwQklxeJm4RGrdK/lzgKny0AHyFEVrZ25yptl25iYohltdyKQi3GNOJ81U85OYv3IrpT/fbvsqF4uA4aJBMqVuqnvIQlVjMvwJxF/Zh1CLbrqWbtlZO0fsAAoG0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AoJuZP2omTkmHWS2oQSvWJpJBK/BPPVwWYzRQGje5ww", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RfULuJFJvpvGQ+Xi6P55bnZK8GVRcSoi6fRHL1s+HaxRT22OhamsKr1dwy0EJcJDpR+klQ4J+eXD1FUYsdXt5u+FjvBDzNtcad0TJQiO+do8cdXxs0IOOGmrTlQW3K5amlKfdq47d4Wu8QqFLuRtVqxF60i4aD6yqVCLv5vw+uBT8QFrytC1X4hwYETR2vBgFEvbAjziyr1KkG1DkpqsHEjzfb94vGeZW39KuYs7Iq9rNbbv4ewVOcDjkBb0z3u8QscPATBwhruSjuW5slReg0R1z6J/b4wtHcpkS9HgFntIw32v/1pNN0qWBzGlCZNrRgmsu6ArsYCgXp5YKUlkXnwjNdp6sLVz3M129vRrEKqMeORfolwCb/MNzduSbU//XWwLT2VRdTVNeZJVkJJwNPQAo08R40H9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AphGNa17j8uGsWkAy1LUvxUzx8/zoKYeIXdhAK/pVyk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5FKUmG5mW9Zf+3HQRR9h5LCg18xiDeWedxj7fFAkXKopWCJTiygfxu5cksnaok6uSSe2Ah2dkw7xE6hFNjZVHObpyBpRhLaMpFe7BqWV1fFPyQGdcPO7VKsZw6WLGDT/JWRqs0P1SfknWa6FG/wZz2j6DNuICN3AuTPpg5z176+6FKrYT387yuxz2ra/XoF1ehkRekpi0ccgTIpNagtboEcbGReH/3IqWfuUxFdWmEcVe8ZXDyQcXi9HCQjYnpQUygr53lQW8wqQe4ltxZ9sxpzSNNnAawtq098emRy3DsGPxx8dHyeMgzDtSbs1BN6Lhe0lOueP/V1nD2Pln0zWJ0S/qOGY+520MVfWsU41ZJx5Ft3HWZ4J47BSPb2abpoq86ID+QmL+Z8JbZlBQaaFyd853erPP4vi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AqXg8wa05MZNYKR4TVD8OsWjuRJfjHfKajsIlhLVfso", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ykt86Lk6fGW8Z4HQ65nzgzUP/oKEexF+5wB3q8K3hoYblYdBzOPzkYfYhlkaD+hugzqgw0FzE+WKRSZ56HawaPILrE1QhkpuVl6D3xXlAzmEbuZptjt1ngbAJmzbhbMo6Mxos62DhH/8jkbAPILzZ5RlXolyjwcBJVnVEF9UZS794uL70is/GeqUhhEwArB3N/11Ut3kX2Gb6EYpz8bf3Fb3vQWp3Qobc/44o8/6IvJEFxspYZoOYVWA45THhz+fVHWZHAyK+mIMJCNN7eDNAuvBIpTkdOH5wXDVyFG283YQngRkjoCCv6iulmOh7x+RFDazNbe9qyFKnF8YsY1VFufy+vJMn20moI6Mf6TkW04DxarQH3puS/yX+obll107d6BtGAfBPIsmjOD/uVl/lrVPdQ0MBk6K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ar+DI6woOsZDrUXVExKQWfT7MoNNJwJYEy5kNjkjFVk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a56/ktyWLdMhLGr5s/0lVSUADly440FAhkz+dFUKll0sm2gVxJ5wlBVGYynY4xCH5yDi4gOb41P2c5RheubX3g7fjmt52YuTjB/u10xpUn4TtDLXv08rMvkKZHfNYAiYVm9Rx7NLKgaB2f0sS3WomLa4Cablu4nukzcy8fPJkJns1c7W49bpRqzl7/kVTT8ViQ96MON51v2F2/jJ3T6AoU++nkqr9G67cfylSy2bnkK1bwYgGXkI9lff/xYdWMMYeTzPj5UdeBIghfHIc8zgQWIi+3GbG5HqYR5JnWqOBQxPVoHllvEz+NCz5jjfLwp5c9I4eXCqaXkXyKulGQwv8hcj/Ack8H1t4MSfpPBcyBCiPcutuAzaYpPv7DPN53OXW1iDR+3hGib47LlFtxZYGWR6Mf+YfVo0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ar9CIFJWo8+d7c4qDs6GjRAuuu7wwAtk35YwkiK+2Z0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eESgmN+vUVOB1eR/ob3vqNmERddk9q4UnMozWPTohsH+HRsTdxVeS178rhLEMjMfu4tg3voc0/TtbcganW3sKyICg4aT4gmzqMUGLR6lIT2wNuwN+skh9/vr5YB0MzN4RRloGZVyVdMSf3ICg587FoM+w9kpJDwD7CdCEwSoVNaGmBcf960YWRRWNOkbkfL9mgPHLUSlHWy+pUxz+CPexchS8sx4cJEj/IafUIOjIubSSG/MTizpsLOYAJMwgjv3QcLspaW+VGeAF0IYP29gf684qrDPoD8NnyYFzOeogq98shBjW+Ne8unCR6Vicwg+46JvYqB6d2D476IJiH9YS8oz/Lo1YqTCpmesSizOlC/EwoICIz9aUD0fzrkuIxzdPotTowRxJ5cM8Y1evcO1e0PgofPKSXru", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AtKJcx/98vK8+CGtdUOwP8y3chu9lunSCVF6aNrresk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Pa/75C3bbpDNxu0be9MweoOBWDSJakx9CbRkXjFFACF6AZKY+fQHIHboX/aayJ8OH4kRrh1fI/ZwrDkNVllKUNbcsPS40+8Zclk9hhZGL+DEm4GHIGYfUDUh766ckx4VfH2hAJ09PAqzNgq6RWQ9ue5l7D2xaDoRCpU8OnZ+I51zCgXRMJEVS2FT6aHDymldzafS3AVSy1i45IqbeiSPattnaU+VENB2taG9yj5GmhLuMut3XzNKFJV+NX1PaOsv2ezfqhlpqEvjxUod5jJamzFriBlKaAjSc2fvK3wWd2RN3hn5O2kkKAVhUOAZMIBNIp7Df5Qi5npOFKh7P9D28jW3+rNiPmoWWSL3Xa3y37WfRk/BEwHC95FQ8Pdv2MlsLa0DJ7rCANKqvbIu9oRR7Y55uAC6oKv4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AuPxv7X0F7cjk1IaDdUNeGE/VuXmHFl0y2M7+mDWrOQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W86ivQiWCw8FOnWjns/FOLnQFwOZ5b8biIM6X2WY4e/EhiyTJXhqSUN+rId07rpbV1sh4Y7IXcBnlqSXhh9G7onPvOSlxzQ6NykECRWfns68fmR873FjUCdt0MDbmgFCL3ngjPLMJtltVT9xO6qnSsB2I6YedFBXZaUHE5Zsf8kQe3y1hRuR71dRLcjA0LAsRUR+4EJH/hDedeU4MQvTLQSCkeQDg+2hqfBCtBMWGbBEH4q35yX9gjelRU3xvU7S3EdRbbF7nxnQheEZBHIDEJtkAngRZUVTWqmSgXHAlpPp+6E5T24wjfbOfrllkpM4NMlsXN/1DKf1cJLRIND69lQ6Yjbz9FyYSZCQ9tpUwTxl+JWU80lkbwQI93/tNF2i7+DdRqZBgwnnM7JNBvlCk+BEusn+OqCN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Auc+u/zBJt5Q8023YP7y8Wh5VFnPQheMgQO9/aBaFy8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hPk++fwMM0wxWe7yKYO9vHtkEO9qmnGsrAwPPpfLQrSb61iLBhGlfYFFjD8ZbEGzuCi4uguNkdV6Gi3lWaJX16NYUgg3Mj5KfDfb5to/YOY1m0BrzMFSClifOvueBgVEOeBCPEEZcE2oeHTXMyBRMPQK6V2iH82RIRxcwKRnB+UZH3ZUxqTdgtebRH+idSmxIdzEzMU4gfivfuBP74m+R9Y81PWXAQMKDd+IzORjmSrRETmRN8yw9uIcyW2bQM57mOcX5rUzminLlqlhPfZjyuZPRKmrnbSwekX7R7/vQrVAoUaXuKjF0EghxRfAuAOQW+bwVUizdTRacHK6OhtF2eqRPMVn3l68EuFtRI2oN2jYrlo/rX7ZWt/G3ZS6FVPac9ngoMzI7LEYj2puwGlmJq4D9AM5v845", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AunnammS/2QaDvK+tL5ufplgYtJ7T9KDw0XMr30z0/g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XVFogv2uGWlIufRK8Y7bgbja+v72d1ycTg7PCOr5kFdtPUcnH6+m5kjldkiujT+oVpOrGaFif8mwhKfdquFss9/vs62V/wQVC78zb2z6sSY2puy10v6QUV64MhyZ3aB3DS/KtiPEWBAi/jnGwAtXmcQkkSRlvyxs5v+LLb64lkxQaZqbOaDI+iiCyjahrJAqhHnKWNdAf70spnv1umtndnvMtjKXjA3sq/5+N2c01lB/IT7s5ypuz1mHZ8jQpKht50hzSsgQZhKewdOHM/ijHMvMpLwJg1h6Cdq84Lyq/9nleMO7kdah1Xo0Yypk//chBi2fgsEsOaK3DomncGqaNUqh7cNcpxh/wOxSvIoIecdGZ3WTKBAdxn2AyY1hRCIFrf81Yf3tjMWhHBym30FCCM4FksGWO9z3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AvwozmFXsccUBDt8wpt5BQm4uOVZKrsgpZ3jnf/yhgw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t/mRAfcGv4/AFye4UPy7ocMLkyYoxc2AMIpyKVbLAUL6ck5rDy3pcILoZLK6RtVMbJWj2Pz1Ji74FY3Pvkx+Ql9vtBaRt93d8mT6kFTlpn48jie4uwYDItP4I4TroJseXtDSltr6qBV1eaSCt+XNEZbtLWHQ3v8lMutoAs5LSZxzaiosSnHuW4y7YYMO+2hYIhFJR4J1di/wLkFxqB1CKuT29U9tnc7qRB8NkzypToxRKQncO7qonDXLXMa9c+IjI/5WFrjmOE8PEkhztvab0hNAyI9sVrLC5c3jvXQZXmtrcO33vGV6ZPVkOoKB3TVchmQBTVaWZQI4KdFh0Z0TuIpyNRx/w/1ESx/eNITz/iGLb2RFfoS2ZiXY0qbJ/rPh+aVf2NH9AEUEq5oArNYw0p7ZtWmjoKRY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Aw0I1qevgrYXGVYBfK2tB2IqUyB662JrG2YIAGZJZcM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B+j+TkGmJL4cBl6DojpFbTK/yKE4nvQ2uQNKABScgQhW+alOPAvifeAzLwa74QbOF8XwZbBQpqpHVdTubEYRDraPQakzJ4Gyec82XlmPturXeo/ZoD2DqXDZJsaFRHwsmqvNYtDCb6vXGMQ4v1W75+znwttKhowCzTRWERGcpSj/OX1D3VUZzPL26u/H8ho6qO0CpJOF1e/nJk3LgRLleXXJ3qfrO12tCmWaxOc0CP/ll57JRd722WPRa/SpZriK5UdAAuwzcvarETAgCb7DYlbnG7vmORlGYtiyiNoLGI7sZdSdfMtcISHG1s+0c0OV/a2SjbxBqShPs/qUyVQzfNzKl/IiuKuMN2rO1MLoz1Hbw9irHm0uSC1cP4zHmPHbropQH4al6kmNdiACXLsoCkLyiqhn/1nJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Awtm7ta68293sT7oZDfoM40IsVPNAvMvde3ykq1VH1w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NRxH0NhJiiflEn0/Z9cTFT/VKXNPD8+yVP2PQRQOwAzjsZnNYYF2g8UpZr7BbHTwP3Ces10VXyZwBVwh74l7C/yZ2kXwhSzbpuN5xLrK3DjtQRmDu1Sz1dM5Z9HLuyIOfunQM+stHeU43nImk2UtKAwaAB8xPczvrKRZgauSYBdW2NZaY20nHMONf5pv6uKIRy6Mz/zNiGjSFKDRaiSk7cLXDrfDsurGETddfyDjaU/zsEK5P9lgSogmsQ9Y0yUNjJ6TpDE49qbyGY0iWW+KBgOLMKHz65LrZ3bqzHIodyJST/pYWPmgLGDwrixvNZbMB591WiKZaChCJvUlGsHKVFN8yZ0bQHcC76hHnQ2MMqi0bGvKyFEkbJnfD5ncBo20hsIVAIB8dG8xJO03wJwar6IKI/5/TX8K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AxVAa6WTg8oa6g8rgQiNID2hRolEuwMBjLEo5Hf+3zY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k7YkLIr6LEvo64r69ojuUe7BLWcTHKsCGtSRhSHybReRAGrz+YyUw1q+ZWyelvCaMEnbYILYqDwgr4/kcnzbbiAztwgHNxCymJbBYbI7SKaYEqH9AbMuh+/M9tCCJSR6fd4LHbuf6Rn6cMnSiVWEk8hH9FWzVgnfy5Btc3IbMJ+EaxmX21e/Bw+ARHgH4mjLWzz3W41jl1Wkj6BlNxfjcftDGtz7oOfqHb1orFE14GGz4jMOtYSKAL0HpzdE1VGBllOVbohpUrXMTpkfmrJmYKLqPhA6MRKDtS2bEJzRCF5RkAz4dlFeKYCpQ0uEDlFwc15yrZNeCp8odRrdkJuS+zm6TKPfbkWixBvaLJCk0miEqshIgLmz/JJmqne/LF21fBuY9W93/1dEXm0m4+RO8+c04mbgDIUe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AxwroOHvqrq5mrAPl70L9yLGeC7DY2dZAonBFfp0OWE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SyiMvGVUn3lmthBK/MoUyUlaZn0UM1Daq9wOfGzHbm+bDzlr0uMtbAwwzulnCdtEcKD7yG7yEivb8tSFhfygnUSCu3PVvX3eI6qitpwLCoEm4dB62/c/whOcBBGpjJBnmfAzqKG0ilbx+2BRKzccu46ylsqM1fM85rhHXFhA0wk0Z6v745qbNY/APljwdjufix5YO1yB1v0FAS4zGD8pWKXveX/hGx9AGRB/QxfQGucgZNh3ITsZds59pubhci+21DotQRCHd4m1fo5ggXU9lj4G8r0GUXUZfgnYyzh5t74XZn6hExg7CLmdf9QhXY4vnuChvYWteMAG5LUHkhPApimEIFwmZXImUx1CxRgyYRK54j9x3d2NiFtgxbnx6OI5ONnduahcRJmy/iJtHe5LPWE2DtaPFder", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "AzJTfD/6LvzHIT7A8ssh4ULgVTG9frZuyQaFiX+W77Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HykQ2u1Ruq7LjLfxMs8ebxyebIgIOCBfT6EMstvmddt6UWRty2VVOHWy9eEtphhqOMoOeXfgBaolKhgxIoPfwa7U6rGLKk5ESP0A8F4TwBmD5WikUdBKm+uKoX/M2KrpLtkEI7AyWdEvfhlCyGGZnw7A/57IguqgpxZiNKoDY0A3JGyqGxM34JVvPOwfRzy7HHJTD3Fc++T/e3/FltJCcEHAueRg/hRYc/al6wp9Z3A9upWlQjIujt9CZzhoIWJQvqImkS0Xm5ivwma/zSnbL53A/H/V8OQea93DSRzwU2kKVUeN1pR6QGs86NHAbZ6Gt2XxmfcPFBp6+vji1h9HmtNTh2vmLpNkG4vsXpaoxHREmMzFgNmEAx/FpXri3igUhrpeZq+pgdvNJYd0j0OTPgIG8Epuote1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B+CNygMFs0zqRbhb++Ep6MCqwPsLM1/nrM90Y1o9CD0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "02GZGpR4iUbwi1gNzArMU824DfbV+IYxe6SyrwNYFEoULOeOsDvg5aCRhBAZ8c2B5oa4W8UsMhW0MK0kpJaVkd4gCjfgPHs5Fv1skdgUhcmF/OGQsB9SxHPs/eUPh6cuL6bvAwASOCRxaR46s2u3wGQLcfb54XlZkYQntOaOi+yeTX/6W1eveLsHzsDqKsgq/fdIzymP60u8SkjpEhJSr+Z8WNwBrGjd8MVk5oxQYQic5occFnt3tAdaDg1oMW69r4eLJjZrvVFpWZIMhByx+hxfetr3gUlhohSW2Zz95Y4gLiEjIX95k9T5S3NcFLLJ1W7Z7sV6oqxfKUXVMlAfvowYeB/WSPUdqPxfHs8plgAliQhe7dyJdvJFyzYYYFLpNK82JYhKfotu4uwhY9D9q2CYnibC9JsG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B0S3LT002hdXROSug+yX0LUhAyVonHYxYPaWf9g0hEo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qT+zvKTTE9FunYYuZH8sw5Eggt0TskIzcWatVKNg9XmWHfYdiHjyihil89SAsEGPntkS0S7cNCXld3nWRZkenfMvqLUtDh48dM9GMg6pzCfp5hjAjsJKy4GtdUtUgIgdhxnK3I84FHJ0KSiD2xuAqbVwy2pqld4d6myaHc3ficDSikeu4NF/YtjG9cXFf8pXZ9otfXUuCHaKpjk726RcLH+obAVFx6o1pkkZHzgMZXnDRgR/zKdG3b0pff0h4EVLaE1z66CZcMbzxoZvxjtgZO6AquFq0KoehmUqwmpuzhU1busHZwAsPVa/g3a50YIaYESedkebwt6WAVzBqYHvFY0UMRvLrT1Xkjd9nJdkNFFZY1XTTVxcr0k/ATB33vUTi1k7cIkH3wIfVCf16NgZksfRMtx85y8C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B1HvI85ZXvdrrbw/IKiXUREMnnk0FRrMRGMHeJgjFF0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f2x6YXiTcJCNDuw/gw/YYzbirblXPsw6ZyDH09KydeTtP94PM7O2x8JbCBBNBUMSZpFdkIdLLgWGbLKmBFmmeNArZumyqxyaKwpswjVJqJZLF5BiORmQkTfyt+yNBUsLa5XbZ02BDGVHtovDLNlnODqWEZiAzl5o2xZsRZSZHL2Hd0GgUKTS2rxrqsBLsS2kJV4t5MBR36GuQZfTP2g+Zh6gJi+3SHix26sxR3AUK4pOIbORa9b7dln3eVxBIP68ZDjTmYuUEEPFRXFWuC/KG5m/fiwPvvFQWBHUfmEGRFagszIlHmPrrgBw2iuHn0DqgFssMLNXhOxw5PoJYQIXlTQuW73Ib0ByaEqdzGeBGLlV7A9TB8mngT8VN00IsOMbilkBdK2xq288btTnNbN5PFxAN9hTNh3A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B2aB3+2e3ZT0AT95vvVxbcpBZfYdBUYXeW8iBUPtYCo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gHaWdqSMJ41yApOsixC61d/9IX3KM83S37FB7qnJTNTnZyhryTKK3nHAKkgaoLQWrjWX9Hb1autW/UK+xrnBBk0DrjdSEU6LTpwteq7BhNttvdNgBSJEdfliK2/2Ki6HwvhDpFIS94BFq+7Nj5EzpSg3vmk+uiMB77j50n62bwTS+gHer4d9oLcuY9+ThCvWhbSDqRgFdVfGFizWqs+dQQ4cdfaR1dG5Hrb17UGKTvEQQj/Ht47tIQDR1JN16qw8XJbw1b0WZC1SRmvKTnlyaAT28jmY4+NveIuYCsse2xXYju85QsYcClY43dORVLjKaEcyfhj/oj7NSZD8ijdgOCW1rMbBC6Wu7/TMLmZDVSL9PD083C515mmad0v8FnzqEhGd3ECWVAbX+TfUyXYSsqw9bHqnSQWN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B3B4UoYb08Alh7LwJBDbosRoVFvGomY8YMLBVoHJC4o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pYRGdOvVpw3adyu5g/cMO0e/47qnGbfsEASFWeA3qIuo7YyCPKjsbO560UNPh6lY7p9kNm1bnSABiPoKV9Xs/hMxb7yQs2bfMEr4oC16B0OFDdkidzTFKSe0ZxzWyiu8ijyGkeQkW1cbxrtTgKSU+Uy14h+YcWR2CoR1/AkMwXPcMSknfdkeFdMBgJjKqN+tWWHlpv6jeddD3jf+D9btXeZ6mvzdgpy9vYliuDzbYgglrXP2zDgneG6RIabzrEI0UE2UvlKX/4d7fh0ClUgvR0qgq+ckLlrcj2DG2P0fycgFNL+H0nHNHAAxNA28Le4+XSISXSQB+eFHNLOtCuoMasMzvRNqS2OfWIX/syEN9K4Lr4O6LKoD8+HWZE8exr0ufv5q6qIXRO42pWYnUTl9rU/GmyIi4fI3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B3K49nTQyvxU30G88LnHYwXEqcCIlsnp7iSUaXPY21k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mdElgFYI2T6lCT2dUYmqc7fA63cLdCO+gVOL4TZyrsOdCc3/iQ1OmjbNsYL0e86uuNVp0U5KHwKicG8xGNvKJHxocKH6yEsYRbpQjSxzaDNGneBgZcs6otAY4vEsIOAuwb14MoaHma9tJgfLPKnbZqGOFoAMVMdlgE3lheKwKjXG8nDWXmDVXdqdaB3fQQW3Qbm0p9NgghwKEkLaSM6PWJ9OZ62jmlH7IEYeErvUfXxeFLgIY6Cqi4rFMZCi4nj/n2l9ruVfma+s8LnTxypU85MkIrUX7lwLzgZDV7K9JWaL/TlWQab9f5WHJzKp6MXj5/t6tVJ8twIZ90Mb6YQXRxcmzFkR6zAjyCge4wzCvRAwUHEPy4JGF4buSIdhX/m4hdhMXWLHwN4E5528u9by6NjUU4efn56p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B4KE0KQzSzn76Qwp8yNkcqrThxK2Quyxlf622wbJPT8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CYfD1w75JwQDAoD+AKczZN6ag7+8G0RySfpGiBuPWJ6QH/md3Y0880IGuzwRQQ6BPMLbo5bCYjadhR1gkaWyVmeeRv+9mN7eZIspN2CGFqnHMX0DKDBGMuPhv5u9gJ6T25brF4Uq8JjdG8N/omrC90r201fMBcnBsyg7l92Odj00mFwPtDa5d8TwQd9I6qAytK4IamcrtuOFQ0nntoy4IsI7g7hudBl0Yq2jKg9Wd+hvLjQkNA6RofimNfqGCaD8BVC5RVMyctcs8o+71skeIEU52U0gbrrVbZZbzrOZrrrE6TXIrdOM/IxhfnfR+f8IzTwXNADT/sbd3tAXZBsgk41WAP/jwXq6m8lYuhZhlnMBxB84uaoNu5bKYye6vz+JRhspAONYV4dG40muKIWW/vmFmoJNJyOc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B5VpYZ/LQ1QiwwjKPZ48ZfECFJC12JPnzJ7D9ebl2aM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yYnDQvkhnu/j4XjyBPhVZxfvxPJDX9VZuyP8rT3svGure+XO0uOm4VHOy7i/A4tgaFTSlI16yAEWf3KzHSqfdv26/Zf3GLlyNRDg0//xmEnGu806AET3Pw5gLXrroGcC1ND1msqniY1tv0dc94cLeUKdYWuM3+Y9nACAnS9dXJf6l3KfCpV4bn/tqWBoL03/65N7OxIhUj4X+OQ++IjWAsP9uKal0mq2D6I6bJ01YidLLlNVlpe4NWG+ptQk6lQS8G3jjxx8kElwFq0k05GtJ9HGzebEyfX4Vp2Y5dkmq3em0ImtNH0XCvaCTa5PlBzKCDGBdHlhZwjaPkU4nZcgV4/KS6H0dHMSh1/f4A4ZDFTrrSCJcOMwYp7xVWI32v2CLb/HtEb8L16v45xpK9H2xxhdD9g0hrnU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B5z52H7pbZBih7avxqAZXjc9jsaEpawH0BYnlj70Hec", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xqCTWbyzoGOSYnSKi8Op0lIqnahdBDJxjWrvrfRCiW8K1pexndZlRq9A0djDv5p+2ur/IfPVjAN2qj42fhLz7Y/fwqr1oq5JE4rW+bIwuHy1VQ0WXJnLxENB9soyhNuoELCLLre9Vv3Nn3G/AwhZIoGCQQow5DvUxEKpMXKu4hTlisgaoikrhqnCXCWeuSEiMQaRdVJZ38XmorpBPUXs2TSCuxQnPHyH4bqf9p92v8FxyRJnWEQHh3CkVGLYRwc/9eLD/wwhuqpf62uhEILKGVW6SSCvlT7nmWN6UdqzziwBuwA8eAem8xJYZJGUtVKs8OYMUQw0Abamb8222Cd5WfEYsBHVweVupGDIrDZiZ8hSIN9BAdBZn1IrZZZnrfDUlphnFjx0SLuRxEMS0YcYmJWhq2l1yw8t", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B69AVCN7vajz59TcVwiPS8XWc3GCemHvKU25Hrd2Bzo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nUUW4wDkSlMEPgDdCryPJOc5djP/f5N+/lpkdVzPBAxMdGlaFH81lVL/qnlV5I/bPSdQeAIJWiQtqqkf3CXFJyr/OLKSfFOR6X76lv2KPv42zOdzKV1yxCIWDb3tECReIn44iKhe090pJ5z7/tTi/pztM0mGkugh+OuDet/mZ16+PGDGcnXmu0Suu0OOaAxf78AJcjVcgiwnK+mX7kXq6J+sqQ6/D8Zd8JCEqYURY0wskSMOqafHuovh4Qp+Tj4BDRImMxbGzaUb+zZ2MeXfSse1ZVwAO+PG42dn0evynn0cX0F972GxyWLcKBOyLJBmHc6c9D0XKmJu8MUp167j/cc4tLuX/m7B5z6gfvnAbSA21TqmfB8av8dClUKFM+ig9ty66h/xbLRvS2XmuSxdIngOo3as7x8b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B6OqTuXnwHpU+k9gVA9DDQBC9XgwOpQ7MAOJCGaPLRE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Pvk6Bb5gL+lpnIKIsaMoJu/1F6sdclHj53k08dpKGC4W7De8uwfxVg1DPJCra42cVmVgW77Man95vOgt2fAHDGqrkWj5inKpdQFmfJbRsFWZXFavkQJaCMcF/zL8lA2hHSnp+H2PqgH+wlKWbh2R1rMQetnVWEdyS3HUIbk+vqZpLDiFiM4zLySSIgKz1Zj47PE+gBqybz4QtVoH30a5VIlah99GomgdVO91nd5y9yD/Hp21+3Aop5EJllieDLU/JIKvDZehGrlVgZjV9PT8NxAnk+xTuA7xoGICm+Yh20S8cFpOMuxXOhvrGbB+Zkc+m+CmcIhG//9bad60873soV8xtAi2b6hclM7FdX5zJ4uzbOqRXay3eYCGmCZNp+X1yrtoPYSDJkxhKl9T1Ly34gD/cGMav/Pv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B6pmAjdQM4uMnANoO0vyeS8cTCmghnw/Qy1iwpmze98", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lH+A7Cu2klrYpNGwCqiosvEc7CW6jqXw+tJXLXrX/pNVdHHCWBGE5uDmdijAe/cu4PkJsL8UbynDCLohmsiVmBstlL93qnNShfiRdtinXMsFoQMWS0qWDxrey8HqPfnEq0L6difwc4zJyB7xcEANRcTXVpf1uwDMHR22/FuQXJXKLYHri7RwyvkAOlOg7k0S6cNbE5Y5f2ZABzp1iMQrlS8UI9BQkmQEBvGxe/WU+oANSYiwmcYdMewwbik171Hl2wi87zkl7WMAPT3Mkr/lwduprDC3iFfJd0QKnp+dg3H8bObILShrbpEHlcStX1bVgiqIofEeF0R6QTqGhcMUTeC1b9izapq4LwoOt5+YvzK1hf5RD62/UKc9HwCgOr5hCP375pVnB5qRf2J0AVZRhzMor5mJ96Qw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B8tJ6ELWIKX/E2wgeTxH/YKAc6VjlC9YkwY751hW0oQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vxVwlTHVFGy5slgOOHkAukjxBopxyIllvyCU0HnBah8ugHMIBzPaqxIuP51MLp7nyjoopTAeTm4LJQYra/wietqpOe90UFsvT5jc+rANLcroGhc+M9SarMBjZlUn4Jkgiu474/gAgWDpZ2x945iOGj2rDg2j1zpIVA6qcrEHtSkNS+tzUrawiL8WvijpslNsnx92k6wUZhmbYjmfga1iY04aHfm6mmlekaCD/ju0hPZogiJV12Pp5rxCG+MyFkJysVZ8AuVyrHvMPAwlc5y2dS6DP5HIGP9vByKKDOkxupk4n60YjFlnRnMoiFjTjkA7rs6H7ToRzaLX6B+kt/qDCUFuCF4YGpTZMZwMawt5x4TqwOeWEAE4lEgBx/zP5AlI8/0bPelJP3GEZfDHD94XzdaX6laE1eZ1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B944LBHT6YIc3mka9Yoz95A9koYO3sBFTx79A3pkNtg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8pv+kpUHmdHMnAIf2Y8Rffvdk6Mdw1Y2YzWqlVwQNC88LbV/3Bf+rIxu0yukhtBmlWZci6AStemiVIlk9YPlBABB2NfgYOInOYyp/cjMAdGAJQYpQzXrQJo3+O42k5yuS0uk1Mc9YZVQez6o51pcC/BNa6AkXXAojJEwXeLbHNraGLZxnFEfEEEXJasnKX/tWWfRpsioAkhvOTpMgN7Knd4dAoCWd1m+BSAGfjX6G7k6ws49j6GWMCbEL+wINfHGwFML1jLvCrwaoyd4x2Fxqhami3SPGlPcXyUEb63TnNSD1ktxAfTJkZ7KsCdr7DTM5nCMF0x3AHjTGuH8Yd1OdBHc/KMzuxuRJqgr/yiAT7QI4e2zkDEAESD/x4GpmFLbXMiHy3Phq7NWg8rjzvlyNu7r9TzEp94E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B99NvjqMiZczqrGU9MdRJWxYjf14Py+5Ve8+eYSikrw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IkI1GHbE4YvYoyQ+Wnvu0TLJpNrRjwq7L+8HHt8YlmlbgkDmc+uKvGi1Tu23r+wtPCK9tOxoZUydufIMwufOomNURnKDmQasbW/bJ8ccqa8cSFlXyJfQgftKnDOvoMAWcAe5nYiMiIaqBFbqJf+2lv7Z6lU0ddT7oZsxdydr4ydjC+a3TfLphKUctAxguEK5VybOHnjvMkpGF50DJGEGnFz1XcG1ClWpjWfxlulxiYwcml8En1xRU1FutBHFjR1JDUJXkS/EWZneZzViCo8A8PtQEasIvprxDH4OntRB858PoI7f3IIMzDPZ0LGRumh88Tvv8pIq4t9zMW274aAcYsGDKCqG0SUpgXvtIOc41AE4T2OfoMWd6FO8idac3ujYOQ0RXdAamXU+BM8zl3ffCMNEKaNCJ5+5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B9EZFJyYrk9ffuin1mHJEerBf2g8rTkGiKhgMXd4shw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qJ7lTGppsrwYDsh1EakRuEt+AxBm4JSAI3xjOtQrarFjmZel3MO7H1FaUeafET6Kb0VGM5ahi1swX75lQgfKSpRn4P0NUBAKB5nVXLS6LFFlgLMlQYpf9hkpJL3VcL8sjcQHzwx8Dn9L0U1EZa2V3aFGPCgwHOwRW1nJ3KwdFSxmHaM319c98uVIf3XwnlNXXklQFrY6XeuD0P+maJzgVkhCGLJEwxqC8TNDlPQYw8H58UIqeLM+7GTByuz8qOsKwoZIsluKBbzsifiQ9tcY8EcvecdQd26BUKEcwr1+5bE+/E5X4AdZzz+tyG47yq+A7eMdSZELuVgkf9WpH0xXvXIrPhaTD27s3EF91f+m0aThZvUSlLgfC7Se13V1K95inede7IbC/SmqI3WJuFftshRPNII2ajq5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "B9QyCbAymCeuyuVMbdG82HmhdLMuS+jdlI2k+4BtVPU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kur4gBFImfoU+emka9NjOT9L3ltP3e6Ud/EezvSYKDyegUTaHduzBIMzIQvTqCw/HhFSfGBy/BSY6cW2oE3+TDwQstByo6lOlVj0ZNdDJj7fw3n1Y+2iCltgRlYA5uT2+SxCWHhQA+iP3czHvaLe6gOv02NlWOeIigFlKvBw71CcogveXX3FysT72r52qlf8mSHxSfewldNinw+NoTAl/adXFqH6+JX788dUueYmBz2tpfjEo/Fn5e7EF/RbxJ8CKvYg8eSZE81n55I7O1hF0DON6ki099wugTLCiy+6ASQZHf3ja8CmfqVZ63hpMFpMEltWK/8m93KnYp/o7Cpd40hDvYC2y/gz9OvWIdNxX85vELynve0IPl5nsUJHKNiFdMaif3TVLtK5BDsFFCgyZstVQicah9NH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BAwJSsZE8ZVdl0kyuK9VxqJb9h5aJ2PHUf3zho6m3Tg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "moW315B3MoyhJfAlQn6mCm6Jxyj4JfGvIMXDJaQQAd3mh19BaqKmectQi9eTA5230ifuX1FXT2OlMEz7hrDG7uxsEGihwUW1M1+TsoJ/0774h8fFdIxH28iFv2HP79tyFTSaikCuxHa8IEhMuORF41PSzN2TCWsEATrS25Or89w7GcJ0jMOAZfVDVLOqMcnV/YwOkCYgMVvh9KGcJMeyLPSLe23QUV3zwu0iA2QVC/mRuJIc5OxfPl48S3+XR+QxN6oHPf5UAEWRvdxCwHWv2i4hhkfQEiQQkDMONuopPlR2/lfhEYKd3+ev2ASy45+Fn6US4MhUbrGWWoJbU8zBL3qnKxktj5Ab20zeGsVMKNSrBdE0caIbMqR4vZJpjJJ5MbvgifGnWMCK1UIJuYg8+WYZjqlA0WUN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BBTJXfjOZL0YKglxK+/9l7zH76NLtbZO49miabJHJrc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r2Q2CbqqHiFJCRRrNRVF+EbCdGXqYqU6OG9Rfbt3n0G8fJDiFysrU7hsyMIOBPjzeSqQgyxaTdKkmuR+sDzFH8Gg2N1wbrLrtRGyimFvkwY8UUJO9rJD7b/f6qul9+0mv3IlN+G/eBgKOvFm17iinGTs10DxfWMuSlFvL4D5Vh/bN4tZ1c3mByU8ifehLpoTyROP9QVDVu4LWVUHt61QHd2gwDe/LazJLvwaHZcHlWU+UmCVZXv3cqtJ0NDMMI4iFle4GMaTMJBIabKqbwKukv6pwbHhW1Sn/HNWz3j3ZGOU1sPTiifx8YFFjy2WbNF+zoCOuyEGnrjzjXIbofwDzaxCu1hEjf4127TCbkw+Lvwl3vA4cQtuaUJk3emjR5PdoDJWnZBQ/0R12f89etHFe+14lfoz6wjA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BCaMCQsBk7wLoo5FrG+Y53oLKn5cwOsN2AbSEvwg8pQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OgqL8ZzH/u+XI/Qrcn7Z9BFwUCu25ov4TJUhtNT7qY1Az63hl+2oiveW+JrD411ju599MJ5hXZP6XHZq/SDsW2E/rZyC2sGjC/1ep0/BWSDg+zQaG+1JcZ+yzTG+SUI/SBOuXZrBQzgd9QeQxvhP8Zkc89VLGFLyCjIApkXDtpZwpUXr5YQ5Xle1Yu60eQpUPEUI+HbBzirKEZ3a4/mYazvedmlhLVh8MHwoLZdp25l3qseqwOA/6JWAK8k5p96byZ7QxVDr8VdXSXgFJB2t78Eepzgknnaa2iJebEOyue6Gue70Qrbj6sBvtMqAYo/OM69GHpUTqLUKfKmYXo6TJuM00qimv+QlTWWDpVJXQSUQGhyhTW3oZ0Vb3xJ2tlkHKFeB8RdaJvSpnAwnhngHHPxU6Iikzefx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BCcsXM/xq4gw/USii6LY4PexDi8fyVS5QF5X/aOPIWI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5CxbFh9AnlPawt128Mb/PaQ7RbDBZpaw9bokZN4TO7Y4iXw/DvVNQvoWVS//e0XyJMNn1/8us6n0rfxWu+a/jHd9SO8hCP6Y1ZtkVHax+pyflYu2w8+B4F9d90n5K+jE0hZdailfVFytFCBHbcJ5jnkJqFtRATYCUmHbDLiMzKEFq/s9BLjjrT9GSlklrUFXAcWKaTr+1t5y9T3U+TLtXpSQ4P9zU1vs+Yclt2wNvW1UOvC7sN4zx39XNTQsc9+hxUa7VKfrS6K2QeqFEnavsUeU1N5327kzHgQUKGLxpEynlAIa//N4E/0JF7ktUuSdrT/kKPvAlmCQ4uLVObWRTscNxoGGK6DqWsWDLx2EDq7Sup/6lGk4GAxmbrJ4LxKQRwpM/BFjjdMWaqEDQRxBOC9P4Mmkmd0X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BDfdBe7MQ4xE8DhZDskqbYaVgRLfhgmpezbxIpEafRk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LMzyKaowbPDYt4QTDVcuXUuWLOHMGmWhsMSutUUYceg8LE40LNob8ZjaynB4K5r3BlusmhjJLeVwvu7p0UIi0fBUL2wJtRSKPl7tzFhcDvo+CSSQKRKWrimmmna2+6K1q3ceYyZaNqkjCBcp52oW1YUzWNDELb2FVMB49LSAIgHSaCXlluNR+m95YMq3reZQTyNVne4+m52jdme5OkSvtuys1Wugx5/pYb+PMeLhkW6l/1eQg0gPnvDkI5D949UyJKV1qCbRanbHbUmg/9DfRPHY5RHJ/iPIcgdEZb4wZADBuaOml5fydJXeZX12jx4JB6wWxgXu1V9/hgPLCDmZGarIyZY6UTqUGVVluTwtuX0kit/HtYdSRoVZzTzVae63KtBEZYsRclRYpJA0p8srfhrWbIK1M0ok", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BE6ZDhwf0D/cT8OgHjcINj92zk4q21uJDl6+Ymgr8nM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "98BVMw2VQbKuVrdpe+esCe6M17Ck04P55fdFJ8LIlEC07mRX5DnRfTJZft4yOPJI9mcH/w98OdUg7KmrMswiPOyizkgt7R/snv35YoLvpkkeWecCc+xO4C3d4gQ/eNICk/bfdrE7J2czcoGLyGVA2e2UiZj86y8XOKu/TFbYSVdUTgh8aIKEgt55efMgYjllWHRYrZnSHx2WLFvBIjBho5cxt1b9kwYXeXZWy7bXqRSheHzxSdyqeX7lv7HeoMUt1scTDef+eRjv9yjrsfLW2sOlqSuR6ayHdYJIY+M2ygi4caTjRz6X0dFQl4woIS9st7zJLXxL6y6xwdaZbvqosSUZZj8v73meaFtPPcQ3QSJwPPCq5Yy4Mu2DiIO/PYxCx8FphG0FHWv4Xm/rR4mesdkdhG9A4ARh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BEynOIAsMULnn8Wcn4u6bxVo7IOxpBCyLpasafVPSQc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v7SoI2ye/z8vctzHmGZtOmQrqF084tjzecVQEbDjuGPvSR/OXw+Dy8ZrO251S6Zqsz1LK5QdUi28hgWEipfQwzDyCK335630GghfpviVE535H2O98tkWKNJbjxBF7XTSKI7emhKu0n6+XgHHdGWFMYp91xH18bJDJXvBXuGPX025v7NhW/7v5ZRU8OvDWADKIykQzotbw6mtwOknw04Tp1NgIEVAS1rC/5u7J7s/QZ+OU14zGDGAAK6cTHkPOGcsssy90aEjH5F3GneeVbfqdNaSXuP/VfUBQqz/n0/ZNC9ahOg9jyGG1+Jpi91pH91+dHTJOuWhwAxKCwAfKYVLcgI9kxlo0f2QyM4hTne84LC3PNZEdGW3A7yKIPNkee6M54dnK0Gu3kLx9unKqrr9FsHev+zyXJIS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BFbMzrCdpJuJmMGEAdZGbI5pafd1RakA57kkgM3Rd2Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gzB34DioVfgO7JXzbbdYR94zQdi8n6cLGqfq6Rz9HER8NHjeEO/Au7CtS0BHIJhibSBBC0/o9DkkZyuedECLeX6ow8lbv2i+TwQDwVSLusmHwFsDWa8HfW2d105Pb0vumGmkg5gQRcafD5//7mGi4fpKPrhUGERVMh7KJkc/WoKI/4ZCdZBCfee6Hb3Yy3KfPKZAj9yLd4ryBpFH4gZXEU5HOMWdLE+abhGaiHfmCfmza9C9KZoVh7JA50663AQiMlBA2UjThQizJou1NxdyBW8LvEU4TDaloHnbgahCDny/CaozJTHaZ8VWDFTh1mN4QT12xUtM4PmGDFv9B0B4oYoXt1PzGrqJWysGPA8ddIlAf6atQ7qOs/JeRLlzfr0h0ZMVu1SU1zFhA1NUEqfqA4k94uuMObqi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BFoRY1CeH4Z2qNmoS570BmfXwqh7bv18CeYskkozwrI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CxY5nqfWTvgJoarjgUkccEl+YQK3zaN7uTyFkq2wDrWDccePRJK198beDTIiTUNSvrOTsVxgiYuSZCE/AbNseJkRv5BaNMDFeDeCaKjaNnOdzC7hs5F/cQnfbqinNtKaf9nqYSiw86s1gEYeuc0ZzRlMyvup8u8PcdRxkToPAuCxVSeRc3VhDY2vvZz2LvOfEAAiPoLVLl8aYkiTgX4MFtQ9OetLR3ByUv+7ChWa7QLv+TxcxJL2OwdEcJAefkq566zBpn/leEj8gNY+E35zAhH6DhDh19GNasvs9KXxbznkelaJfb8+LItI9f3G8eVZYUzmqTpOxRpz2kdSZUHeLs5M30qloe3VwtosSzaCEJvYE29g8azVJ9B6Xyoh4FHNzt+I2vZEbt6d6DfzjesZoZ0xvl6x5iH/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BFwwSWF44tE1kgl3NAK6cSVoo4dDVj0ClBD7wHoP/U0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MAYL4DIn8xiei/BtHGiC0/huLiCOE4D/m22Ip2n2Gr0krpxCLz02jh9p+bARtRvlx5vPaIkWd0HWPLJic5O6FRpOpvBLCPNPmo8CO+DCc7kK28CJmRDknDhMhnisbdXXIexd5bA9kPfLFFK13fdYcv9BKrNO5+Oj5aMzLhqMXPjf1465fQAfjklojWXzpFjZdGsdgyjubX3Re/iNZxoYB0Z+2/nNyCCUegtPbX1nAo3Qou7Gz3WG3W65v3TZkdzBfO60Cryxwfv1MKXR8bxQcsRUg/R4syMuR1MShOvefPrsig5nsxOs2yNfGQCH9QwrK2T/70S8bJcWNlJKrtpId6rdvR9q1zqIepcGy68M4qQhcpCVBZqvJpM4e19Nr9uCr6vZRYT7T88Er72FpbpH5U27QwmYt7D5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BIyvaqA82tFzZZViRIMRDwVIvT3mfRtAEfCwqM4KlYI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Drt4BO6ZBVkEl0g9jw2ig/OpdcWQDxnL+DIfHFviHBwD4EVOkOrFa5JbVWJVXzEpax5TukEoVs4KOO15p2I4pnEnvtLzyszKO9YpRAIZodrZKJRlxH21vm3wQoeCaF/sFBeaB8hXYcvT+5mJ3PEa4n1zfsMs+4XUQzyPx2ynu2zPXqTfp7MM1fo/yPm9lyLGvAHmviE6Mn/FM9BouAQ+6Hfo17s5nsG7IqhkDjSeoCT0MjPQHx1/0MLNmQVQKiJ3CGjYwU4pReRJmWzrEgEvZisI8UgzoK0CW/ATJ7GoD766MosGwrZ2yhG5mmEEJoUcdo0IxHp+IWkpVfj33ny5oBAIP2haWjzGCkk1VTOgNG0gGHw2iSd8lUgFbMHGY7I8qC/K0b1JjvEvch7Cqkq0qUBSIP1TdX8f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BK1kJrqFMuQvXlTcl8oJmDmz+ZADgTc5+7ZvHVuWtKc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DQbm0Pq5ueKSWXKhjU4FOOgIDSkg1MXDhT5IeRfnwDP/v7hNG/rKla77X5Gy3yx0egALK7qCi/EROPPPW5PT3u8XB/3YCLdzDD7YslfZ0cveBLRK/RKjfC3uz8eEYmfWoRI0/5/4wg3fQP/sCJJTW1ndFB8jOyrJLqzj5RieSKN6Z5Cic2X9t1RNjuK6SFq9xluKC1wWK6LaKfxIhhLZA519kvmrOAcA3IqYuMuAmkWc5uWsiu3FxVyxzPVsdiJdWF1zqGteVJWcSldWXt/wcbuLC+GFTNmP066K0DCVKE2wJWHijKV+Cr5RSuxKoJC182PpkFFy9Qr1eqxxo8ASgkH5/pW6+5qrfD1dyBRICTrJjrb+egTkKCU1VR8fUUMtKCEsRRgLsqlmO6tzBv0C7feW6/ytMSPB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BKnqABgHT7GQmyRHtFP0n7Dg3txRN+A/Ox7r/GLhkog", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "O7hLV7UQwwD1y0WghpzmwiGTjHTPTYNWkfgum6DpgqjS34OFoh/kuoI01mLimCRCG7KSt0Lxjm7Yye95u16tSj6q4sR/JiCa/15JBjOB6CjxTFwyu5NjGUODqwYvoMYbhibkZxRCs0DV0FlvE6YsWTHrjAShqw0T5rDeU+6Vpva/C7UK1/IdNXQNx5pGf0towyY3Wa0ddLN0lZI2uv+588kCwpMb6+mfSpyMuK63qSeY7gOWy58Eq5jBkp4OVMvgYrnmNYxfOMSrjaVDS9dOUVI//y0DZ/7/33CQn11Jyqbsn1ZTmr2Yt5Q1fh9AN65NAWutQDLcjvwt1P54yu8t+rKD2fYytsnr78i+sX+2VL1V/tB0gPI9mPK1KJmUS6XTFUmarQYnFpkls4bSQ9VK3TLIuycIw1r5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BKuDFM1t0/njK3NPwKI/mFD84Y8sml7ekfN7OblFlx4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0wCZMFFdFjbXXAXUDG+oQSBakBO0+lZFl7qDmDCtsJj7PcnOw4O7a2fGqIZoXYM3z4yLFNr11EtjcZLDaE+hGuO+LZ2XJWDsVEWBeAcmZSVXuKosdOsEijYIqRqtnp4l3K0LW3hcmVTrMymGZzfSEMykugjd0XOL7/jEFRJAFLmkaJOXQxm+inbrWC9zajmrKwgXR88CNaiiurYaz+7JC6AkUOpSMvcxgEpQSjS/I9Unp26gEBmD9AeWHOg+DjGnlIns3V21s7JeJ/6cO8GPyuvPde3xlTIF7V3iasSxu+iNU6zT3pZgerT+skGMhg2T9JBUO9VhOJCuMeob6+3q4TMa5V1wGuCHIycTFy40reKeithjzjBATMR+YqUz5B5Xl0uk5YXiGQXKnmgVYmfaA/bDIlSrt4JA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BL53qEIgyQ3OhZshBVYmes82AKZeeIRsLR8U4bbmvBE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dl83qJqrgDhVwSw6xSR6LP3OLSiZ3TTZKzxlaHqlyUqZeBqaaokocFidm9r2rGnbQQn11OoSaXaOmp+pDS9fS6Qno6Gr6k0EVzC7C+p6pbfcs9m9QuaZRvPendNtu+BdCEfRZue+VHoBF8OTwNn1dCX7masz1i2CTKO4aFSLrdcnG7kwNrXkrLngNU6bKl6eWascSGXr2YHC8riN/F6aY7+2XfAITCl5FIIua9yCfi90tqnR+Px3PJnmAozG12QkhIZm77iSJt1M27xQuX7qsMW3Cj5HaZ96Msz6h/Xbin+PIy63fG8BwdMnfXmHRmnnsH2KFBJ43kqH7cRMLKymZYxiT+BFQSwzRuquEwKuaewWlIhKm/vPFbmIU6Q5X1aYEOQwrxT4H+mfogbtbSZJ9CRKhOPJKryp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BOrSF5m8FKlHUWxkox0YbpyiFuSQCKIpfA2cUaZAZBg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9Ncj/mVCFOPwvDnGftMWpnYpzYPIVajhSqK3IVctXlMWkxiEj0OxyycnnsgJ0bzt6s7ZRkPlFgLfwsoen4F/q3c1ZDYporjn+2nM5YkbKBOknmWOh6zLG/fG0XgiXKbq6H1Iqi7Cl5dLXnd+LkEbsF8pt6yyB+qaO/8LvRmSofAkanECXd0DK5sC9l6uGBI5yoVBty6ZAhHR5ZGZavjuzRPRoIRvsQgDLeZIW6cLlGDcQYAJhC5sKA0ZRsRSDiR5159QuEIitWspJaNSQhcSfm9ODU+5GouvBDXd3LP9aHwVjNqLw6x2W4K4EqhEbNKESLmKe5hfU1G1/XU1fOmWGywmWRe1G8DBxGueODsLcK1msZxwezYhMGRzWYdv33ITaUjBAvTFpeX5GbOqbCTOhoEuz9C3g9pj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BOzANp7lJ46btWu0HQiztkfpJX20YWI8QbYcWBbsYaQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hEYB6hNQPuZhs3yWRHcGqvzH5CxTVi6hflS7/zK0YfW85AnxwxAbHxof/QQx+cSETCrgn2KU4zLOQjjbdVDAetbNv8ewoSAKZR3vSlUgIxuqsWrkS0UGspicSxaD0p6FfRSKl5x5pyOpN1aVRy68AZ+Chmex6ls8Lq/vDNOXQV3cbW+pmShFJwOc1Mw3GH5YfP7nKZIztWPyenOvzelH9cJAHNW+D+ZACh5hu1gXHVWKAdVfZV//2YA2OGDrRYe6rt64xUYkzGbUlgxqIug7mM0gCXsVzS6Rmn63po0rynsdFVeNe7osUYwZHNGG3rkt0HrVjqaFT6v1oMaKbbbx/6VVNDyIHdvE40H8FVOU9zHUmlT37+8f5tqaMvlsolBIva2CSj1vyTNhCP/IFMoO6wrBajErFjRl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BP/bePI205LM1xkcxSASjnYipmBwI9IbmsqAVFm/Glw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "roFciIZaRPSepqHcmW8Wi6Qg02W/a0Eomj9JUgvOqxhMBsVpji8Ke0NwrmPFFnfDhr/8mb7YiIeRr7Gyak9YuaMnYtm0AhMPjwsc3mMZntFlujap1KXlTxY0rZjVgAOemkuoxVAfx2TzLMNLWhYFy0c3mVw3gU8XllQpcibnK+IbFY0Rt/nDRgGr/HbdMfZ1GIR1J4iTT9eDme8Fe0PWnZ30zYZ79iNc6cOvR2x6TVqiGdsT8iCKF8X9f9uq3OeA7OIy58mFWn7G4PIEGu0SiI/gXWe3wIN7fafTt++HmXya9+NU6uJlxb5UPEjWvNltQbIuGrptOzkEIFVNQPMX3VngjXAI0EYeCmkDgh1bI7tQqSZwoHRw+l3LgVYXbpy/EQp3l1fGFylRcmr1HUBfGAYTK+MCWwse", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BQlHQEiW303ESAfe47Unw7qjsKyo7jeSzWKvME2oo8g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tmTpmhieu3VOT7tnUwB/mYDIUkjjkD5JY7bKvoL/wphu03blu3wd+vkLJ1Qcj02fWS9WZwcBsDaKfIIb45ffFibM2zTLUIRkolEDtf0jyBpjcFeTMAbgi3qavdessuuUgnMnvs4sqvumsjRyYeMwY7wNPSYcMg7HQxDk7YZApYnBQ0zhJ3sKMuOrT7gbQWjekDQI442v8Z/5mtCb91lQaNVD574UTWPomTxvzK4eR8GogJ+ARryEGrXDwuSPOezrRSuTsqgtzAsUG+BOze1dsQXXt1bwoijeszzbmA2dQAh0sfCSEBhzxenZVei77QPUVY1N8sJGYNPsvEXCYONd3/jYSRvcXRNYpkrbdg1hwqjQ/F/Ufto196vHCMIdAKs4stHwAuvDlQZEST0MEImmv9gq/bVzWBj2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BSXaCku1Ur8Bmjimt3lKEU83w31Ovp23LQro/vCubt8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BB7QQctIa3wzV0BrnCWev/+3QBbWsTuVedjiNFZczAZ3aEH2mL6yGrruJsOGhfLh8nJ1m+SUkLJcUM0z6pqjJiS6vYIXDvQMuaHaNe6gvPgcFayHcUfApOpdSY6HayHOG96VdwZz49ZJ1oR2WQaDfVpVwU6jiMq3owapkhtBGyjmqPWEXdjEyZXw8I9FWn5UCPgLpPUppcYrXKILbb5L45RcALekh45sDK3B1lEmtaQ7/ccWcZkLXa+dafXPuIrGl4reuFhiYXBx4+nkHBu1skV6azMfLGrZo9tksXw2V5zlz6TgU6JJfB8we6F6HIlfOiVVU+lvP1J6JQ/JWYqS8zWgh31/pN/VOMvKL1onI7fmnCNqneDCcZNTwcK/hcq8fa+Pvj/t7jzRk/M2WnrtN9QnrCNcsnzM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BTCJSxDrZdJR94b6bEqkTjq9vUzdUlQglE/M+yA0sqw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QsOVvqZYxHUsV6NXNA6hTTIUmSS/Dv+hFGITBRQkno1ZE23F+Ic+QsGVDOOGrZ5eSljZYjDiyk/3jysuPiqJ0LWWMqJzihAVd5r2jJKgW2OsHfxK8dd0FDfXYqUbEPO2N2/MD0NEgL5s6tpJGS+3T+VYHu7HkbsyMIhS7AymTbomW4TuFTNtkG5fE8oOcGe5aMqVZz0BX2+ii7tVJ+YIbafraJRjKErE7xV5USoJJ/Ab/Jklr/sEvhT4Ulxe+f9smjd2pZWk1WYHV424mBSQCxAg93p0OPlwsMlhqIYRXwle7LCPAK7piT7fIb0jd6hxbdc/DuACgOZT7rUN3JbsYayj3KeZHr9lLB/M9sH+EB0opQjEHbyIKHW+MJlQqhDkHChAKJM5lEJT2gTXXZsscZ+Ct4tooB0b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BTOf81jc5eE8zWOW+PI6vJ0sctL5oDbvq5YHWAKaK/w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WgAhDnc0ZheXYzE7Zp86pVHJIAdee+dbK3AS58Kb5Vrhm1ch50PEFcIB4k405PV8A30nMtSWENVzKOGgHlupYkw2Bp69R/HZ3PcfXfI1xwYOJlUium2p8ShqWHJsO1CCKb3QN2Oa+OL6HqjshTUdlDJP94Ikc70OSUr2JI/4Eb5w3Rl+/qnrBeWC3RkT2enLfu/XNsxUfMv5altQwYLVXrRxRm+/unxIvv1tOOJ9bLU4asgzaNQCy0KCiJzb8RemlfQlBB2gdzjt1GJ7yPD0J7N+6mDrijTIDScYEwV3uEGiHCS0tLmdRHRWXJEk7BcrnN+mT35EEemIPGZugCpcfQbBmSXFY2Z7LHBsFg41vevck1HlcbKtCSU/2WYVGUZyxTfyFGNo9IwEY9mnQxVCdqbyDBHKYUSr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BV6tl6F5ctTGXi19lYAqFJuMSzGCGhuUoxW3jP4HZAY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "85GvLR1I2sUwo1X2jn2cTKBltjoCtfkj5MBVKWa4PT1uow5MVMysYhjB3Xa/JSiKsqWgqMnCzfhXizr8ZrL+sslyqSdZmo0k2ZI3hQestAKoIO5DSd/rdPp/3pdHoWWPuT0obP3qwpxqDDWxKXKgg2pX9ApJuXLlwe0FLxqMgvvOwMyY5bv22NdP65w+sROgFr6fL2qv7U63JzU2sP/UwrQ+YqMkhE/QkhZy8TDTaFX9ny5V5Nqr8Vwpbo9GPG6buPFc5X+vQ78lcoY0uUPugxmb9e0Xbu0azMPoQRc5LleyfQznxqyCeDsjqo6o5rL/fFIbjvgHzZjkudJL3XSR0uYbqB7CdNVwozFxWqfqOWaWhRPUsA9xGEpsxSlZlTWiIFnveHTHbm9799FBRBWgVTlXxzty3yEH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BV7RPLFAZIRKCzt7EdBqpydu6O+qiO+8D2jM0b86XsY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YTQfu5iGpzkNRLAq/084GACNuyDnRYQMq2wzha6v2nxFf3N0aim8xHn9XwOK5UAclRrUcD+emOqdwl7RRL1CctePFkdSJNFcWtlg87+sipQUCbwnoLJtMHMaByvpH9trylHZFEQ/bGUE5DpGz2EdHcP5DZy4DDbiH26U/rpAkoEPoJXbky4nSdNTdKNUxn98HybWiZOCSkpGrJ9F9nrvCBkA/ZC9BjRDTf1aipBsPS4Uel2lbVAkDnnGcJKKxLfH0mo8HVvoTSBSYKwzqW0Nsw7ZcIDsZ+ODB1Xwj7gK9+0nUmS3mMXP02HkSEN+8K9ARP8AKE9jKKmYlFXM04MulKLzK6s6q2dTQNq93bNRM2uFFzf+glC3ho3q4Jae9wdSq438wzDFhA2kT3jljLdIdpowJr7AqfvN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BVSq2OZO/oJZDmOD2H9z3mDoP6bzsOklLAPsb31XfVM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mCRRn6fP2exkTotBoLZ+0xeDoAMhuJetnDTAmwiLMaPcd97D0vS+5JkmlBIMkZBoH9vc6jIJZxPvacRrDZCH7qj2fXnuxcLqRFvBTwbi2uPHFa8GiHu8B5aZg/z4Fl1xVxSs72xqSiNGgH4dYIC7x6jV+WyfoTXuNCLSQ3Ne4sE0jgYrAKZjJVRcoMrTnaDVG66B99YJS5U5XKpcJBiuxYL53w8z+Na86VbNUm08flfJg9JNAQ3v414QtYPPskOhbCbxyPhjP8c3p5XCpQ8L1naIxjLrGS9QPDy6kbZIjMrwxWuvucTJEWMSqtECoILFITW6pscxqGQtGJzujocmfDVK2tHDPqd2nDoF0Y6Aigh+DeGZNwtZ0T9HqTij199CUSvVRrTQZI0gKjKzOgm7hi7lJWGtcvpf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BXPk0exAq2fv4zb/EWNet58Q7VrMlW5lP8e9jw8vJQM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "I9vh3kwCl7KndL5at0V/YlT6ClmaXfCBbVIqg5UI6JC1iY14mFbJfdlxGZE7NcGE+YngJneKmBevLGS3NsaENhhSQp5W3RHGpT8B7+OAs/Sb75XlPfZnWpynJ/hFBmuY2LJ1MPTU6X+2jAfbi+0jYdIpKqSRPQhdLD5+yPWtkIC3h/j0gY0lYXxss42gUIBjqgxha+aaYcqYGO0wW82x5nPD7MDlUpb4x5bFYz+sa0p9jOPgk+UgPEYsBJbTX358fIKhd3RpGFeLnn064hdq+clXFP4dDcfSN+76ZCr4v6Zb2KooMYV0p9HA9TGWjL30hfRmLGjJmDwNni24gTYhpkdB+rrW2dis6a+OUfOLR3O/LWYTEZ+62WMSBBS7F7+6MpOtroV0Iple0SYwhoU8QCipP7acvX3+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BXrQA22f+cBU3gc6z//auQdC68Bif1JoMM5jmmq7WJ4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7HBtuIf7ucVqfRV8ECPEVUU4hYCvQL0YZOURYEmhnrNoc5bLNSLQ11jSoJSsfQFUsWb1a0PhAZz0PzClNZIV42Tt3uTT3Lwngz/O/matmDJThRc99LcHAXpDDsolEHxLCj2mcuxO+1fkG5tW1xm5UFxf9T0dS6tuoeVBMjzawj/WkjilnuMSeOAS06DCCJhjTaJyq1zt8ZU8U3WHYST13Ddv54UU2kyJtE8FRapjN/67gUX59vfVQnurWjyK7bhQoIqooC1kZDZg6vMOBFdcxDIKuGE//axKbky6qmfWPj9YksHtn5KyHD8mCgzsHVUCjdv+MewcIL1ykxTDGJrpMSldKw80MmZrtHoSv5a9f9GGQA1RLk0jdbE7q+KT2I1d0Tt73O4kXxbF7eAjzPgLpGmM9d2uvp/C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BaW6dolB/YyW+JwgxKLarOldqt/k2MtJPqDFN/pPbx8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1Kmm4zWcw6lpf3yN3ud6ekeJYXJvUsRPW1wpTvA4IqmlvvtNENzKKlsWpNFLeyybQD4445gy7+DSbu5QHCfKBXSVvXHd7EAd67Rj5RseaJ7gA6XTgb4RMgbcqQOeopePj2yA2l9Xmh+1Cdjp9+3BIv3pFUlYQRsJMkbnlgLaj+DloSQZxsBLZXdac3mFXRMg0pRwMude9UcMq5rQ3PDS8gIlrLxAO2ISfuhWiJaUTzJU92VR/vboDRSbHxaqhbHiN4R+75b9Rlf4Gc1bd4bAv9qUBNXmwhcXtDht/gookODEWo2ZfHLu58UUb9suRpLSG2dgy8WbaUgCSsGRGwahLrl1aN+o+e3NyvPM2cOpFzkiSKXcM70fcZt1+ZCvrbiQ2KLYbfKAxT9jST5uLKa3cGPmkeDAi+DE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Bbnki8QmI7KddeAZtzDBdckSh5RvekouOrBQjklx76U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "97Fx4BOtTTRdJRSOL2KvamczSLKSuyMHp1+qo3BrVQbABfE2b3i7fjpEwWbaOWPKzGb183qDefaxo/rQ2pFF164TyGhZRxDhMYiKhfBwSCl9Fy1avXMuZUcA504JNu4DET+0BmRUVXjvi+J6IXuXVLxcXaF+btxYvh4gOV0RVBjAHHlj+zl2Ybw+wxPXwftmWdDRxW06hTOsZhs1w+ucms1IS6RZaj5nZozyUAGzVAq2TGklMuWVaPHvGr6IwXs78RQyVi7kzV0DhOdb3feHyiEtdWqrKEI9HR9XCpomC54ovbtRJlklGD/V7tf6QTskcb1OVDxEGdpVUD6zU20MtHepLmzRqcRFcnwGZLid5h5kLKYKjeJF93qFSdRYQ96PizqsecHRqRDQVP93w1Uy1tEoIEGZLRJM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Be74Yf35CuHh9L4JSIsCbNfUiEApkaRJMAgvTPXd5HU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3AgDVNzciB9yMpwp0EZGYMQIK47JzXi4mEWGbP1eHNApDQzRJSRjqebMhIRrtS5FnuTCCzJt6W/rMRZpv/5FuCiM5onDImtbP8sdrYxb5gwSMJPKiu0UkXOF+mmPOBLY+fpvVAsF7yl76olRylH8S3NBx3rMZCNPz5tfQj3pb9f86KWQCdCDkL0BIDsZmWlunEkV8yptXNcPJfjCDcvqdLPnis52wMSUXDXpreSdnMZ9TV5BrjR0zYTRoIXjC9XKr4e8Pn7c3JpzunZJk7QIFPHPYQ5f1ZJV+PqZPkuXiAJoc8nPviWGByZO++VCclB5oKhjI/AiH9SBH+vKRBZxLh6qbm67O0zlsb5+WI6+MFEk/SBF62YQPgyOauqLePodE2KnML56gAiIRbQESvQLcZg8ZWzX+7W/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BeiRc3vypR3gwEe2nd7UOTCDKoimq+xtWI1NXOuJnHE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jxwS0VsqlnsSJUD6tP9znTZkfct0BnaCG4K5ApC1+5B21dr+aubSXEH284fJkaAW5/t1XqQ/IxbPki6PkN9nvAdgejQKCKiaXHhszrFgIhmpWOKV+zrTJhsfIEE6Lz6Kve8kZuvKaVILWuQpiNRfEneHsfk0kpHC4CTXeSfpPepMeCLY3uSHzK0fARFzdyC28Y47UgtX0E+5xAZBNgs8tHeeN4kpzaPq2GBmQo4Mr5lKngJ0gcR5d5/HLsZ/WWVYUVTuSIYixE6ak7tzLusEC7P2H/DDGIVaBKCJQ+HRr//gCZK3zBemBNQ8V5naMZBFrLp1XVpW7XejSZh0ElU1r1rEmV2/m+15cFrrB6crt4sRA/dmsbwgg7/51936PAXexZyTKzXuBMlFj7JlGg99Lxcmo84or5yi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BfJGpY4AZDaqOdQmd/RuME6xPYbMJ46/x+PRFgzu7PE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l1ULSAUB7bx9LIZVH04JHbMsRVzyE3WH87hRxbWyK/udaX5wCs1QUChYah3IXP0lFjtTBQk5ZPR4SUqFR8XD0G2WsxBdmZBkx/OFlG5sbeccwq0ADtQfdJjT7O1WD1eKkR4MfR+yHDL+pPe4gPCulqNUz9Vi1UgJye/jiigbgcMEdyuE8P6TeJK+TqE6rNpghFUmBvrJHoxMySm7fPi8iutsHAwYlL6hDd6c7Aj8PEil2zWv6LXxLkCTANyQqt8+ohYewdrfcWf5naqCf3mLOyO4EIv6eeWv3Eek1TpVoHJJtVixSP92mAA/K3a1Vups251h5rj6zbPEa0D6ZGU0Z3vH9dkWMqtnt3nTZ7xp8VYggSjR0tWlgLe/odmlrddnjrWFpORuqA3GNTmxpG1RmiqINLOlFYa/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BgheiDoRz9uY5lhZvGwEkCKK0zHjaYKoBqVMWjXT7DE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qnRs0sCR3jpDiK46cMw7UX5IQ3xzM97teHUnZz5xiIxCh1sjNypIjstKbem09RX+Z45UDv3dkrgHZ/h4IQJBZSegvc+tFrMi3KJKTFqhGqOJvBbG/zMfFgnNUemJrHGxbd+9LxhP6z88G1f5Wm5Mnldxd+4xyHBbkL8oZf7uIGIhG+oja4mWWKiSJl1uLPNjXs/MiYGQwCE8LmIQoYSFBv4JeYTZN2kecbW25XGcnQBNdYNOxL+VPGmqNfpgmuw+7PengyARwSyvxclqSV2hzcMZqT0XhZ0SBLrHAilHVbAYKeXaPBmt2eMPh5QjHvAOAccqcGoS9/u+PwHXNQwGpIr0hKtUk1q85+7swSfktSo/qQTM5JYEoYUEoQkJdZn3UstvizidnUXLBpErN3REDyZJtoJ0XmJE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BhXQJLxYdXtwANGvP6bjStb8ZKqi9Gvm4egXEnUltmM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dl1ubQEMccGxtxSA5HMn6wB7bi0p4KF0tSKSjCZ9vOTBH0a8YgrDprV6eBrQTPCUmAMBvPbau9YkkHY8gECQqMwKBon7JNrGufJ+MI8Y6a30cO/priZOMFrl6QeSSkF1OOaetmwy5j2dpB5JGGVYH2CDfxkXzICq8F0wad6zjMeAXIzcq27PXUfwjmYYjmWfZPjy1R351KVguva4datlMMN074LAFMBM4A+gEFbZWS+2pLkUmstnwIidubTec6Sh8zfOKUB8nkycwhWJabQRtEosu56ibJjBrv4oK70bLER2QKK1qyK9eiYfjK5bCJ9zmV+cRPbSI+j3KDqXunD7CdPrvAU5nBXfynjHqiGMkZi6OsCfMjdmjDU7b/+TVK2xJV8Jz29YyREnnVzCluKK9VrolAtpwxTH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BhwCkZHp/ASMEtKRA7Rperf47bEeF9WOnTm8PVGKJGU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sjFpeEk0mbkfSZWMnu9jl2maLigtBpvGAQw7HS0ivEBqZC2+yPsumujWJ3A9HO4q3t8dALx5w8IQZERSbIJSJbFxZ0gFT/w70cxjmxI1vX2qm2rhpoO/xyHSmWoLwNk4beHArOLFbemK4bFESliVMqDXYinxzkEtX7gUKM1d76vKpnUxbK0T2UJ0lK7H/Dm+dCRJTIckbkd6HFQjKQBpEv5mCjs5EXU4DPHJcwhNBOdCDONGCVqOo+YW2sPUpQVlLcYlCjnFn7OmL0cmh/qDfAOhHDN+dM9bNjrJDWO5HaomolsI6B/lpzvMKzWhn3daXleVGeuedW4Cp6JfIuNoXnHqbVm1a8fXkTxurPVwxuXPwttDRLPHQfiVEZITuwD9zc2FZArnOOLCfoAg14vvsXK4QO5ygJZa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BjCf5sIXlLc6ZdHWQ2UjOmrmAUt2Voi6NzUPNEqIz2k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "J1ecyBKxTjL3qEDvpvlOoG2WPRVX73xK7OF6x1OgXmoSqf+e/tcBZ9uZQYHsO9JwwmJ9mgzjnTZrV+dg9NJM1fXR/mahvhEfv9H1hABUgsQ3Q3n6/lcpztgfJpO3DeWvm+8B2GkuulThwQlgHF3Rsr8truk3Hkv9kQyZFnKJ2+cxpRhUbqh0XKI+vMRb4vi640V7HD2z/E683VquQ6a6Wt5T1SRMnhJgt2woVAdJmBklbw2XWl2dsDNt7+RKi6creAqfGBneW0py21mkYxQb3zd0/SHVReXlqTvOsuLXNKqYEuPbB0L1x2OOQHQalYM415j6WnMQ+gh0XPgN0ueLZCHbBP8P7m2F6H3O94LElEifs7IS/BNz2gzka6192t+wKF7IFsJXfvBn7E66iql47w1354eNw2qP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BjrYrsnMUHnw+urXLBABYn9EPUozHuL/K9tD6uTguUs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AnfADgq8cEZtee+EUgqgYPL2vlf3eMUtuYu4vGISpGJgjUoHNDJgWcCiNdhHTov+kuTdAR5UxOq8v7AT1LzBJcyh0/MRdWFR/aFOGNeeVrVDHUQj/526+zM9+7ZXSQPjJjdviV9XxdlljngtGU9wPtYLcs2CckANOQmJVznYOlxJI1zTSph9pdLlxIYtxJaTUTG3HTRdSYhGrJyR12cRSGJzknbQtH46VmBxLNOpCQJwm8/2vI9IctkIPcKucwdwrvkeSln0Ldb/iP3u6a/nKHO6hSLYg2g5BPhzJ4qC7C0D6ENMNDyW5YKlGdLKZDxMqgSmq3Jr2STugAc6ZGqcDz6eQeRtdNRdGB5jnbhF3BZ2kZ+WUAzvGwZtawsPRpAg8JBw4SQpqT40tBOif9NO2/q6WzZojlhm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BkK3NOUpIBdYUoWhzjeFK8yJNUd3su6Ir7E6Zmx07CU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hJtHkA0ORkYA3L0t4F6/m3c4DvBNQa9s/ZnyDi2xiAUkrS3cYIkauDpBMCjcNm+kLFZCTmUh6G/nAvxfW8yEKChbE04/4yJozmKCdpDEXFMRYz7YeNMjuktYubVA1JNvZylCz3J+l+/DyPS1YVLAPaXl0yGagucXQ7q7JBfyozDzFCU0QUrfs21abp2xlAqiAoYWwMF/TzEGl8QupM2X6GQ9ClrRjUFeKNPnXnd2Awu0L9RLtWg4zwx0QALZQL+oFPQ5lcq99H/S40AFmo987AXH6MK3bYPfGVSRM69E6NRYS1ypcUJquohCqkhGaNWO33iXEU9Wm/sigyEKltirBFawVpKtcFkcHtt4XNPsan5CK/PviCQzEzSDwTNKb/MZI/7i+pKEfjkg6K/OFcPreNuVXHDWqIz1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BluawVxE71T/3oZq2NcP/zIMSZYyB4FOsFIukRp94MQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "C3kYXnyhNqda8bkFvGVN8vKc2Yq/IPD2IWdK4cjGK1rNSukBcXWSwE9xWgSjZLDnbJKVmH0X4cwlgTD1Eof4F9YuLWQ+QhNhHiRUHNBcbeqsWuuKWuosdPtn4MivISbiN7Nxez+D40ZkNfY3u2RSawktX+8DWsCIzywvfaPWC3nAPllbGATjAvf5y443uYCff7qg2bL2hnaZ+WWRDmCnpVIxxwVWiILugZZUaT4GxFJzwb8j+jKPbe6Bl/q/BinJEuOXcjNkjIHoF2GTq6eI02o+GLv4drnY5NIghOgA3GPTevIgTb9j8cxLmTD+wuMrpm2YAKyqjp1dgEjXb3LHCbrAZO/kVKkmxs/q8vq4Ly5+cTCDsDCfxcssq5u3dOiYX9NNsxWnCaFGrNd7Ijlwm5VLNTvOEl1p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BmgEz8o9VD4iMS8FqB4GwGT7mUcrzaEZwFrQveVHrfE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ohEtRZAUSV0WchDuJfKsQZZXO+arBntybnI64MGiOhyCZRXXZ03awDIOkpiL8EIovUjYyjG1rSsYHAPvTqrNzTuV3hkzOuzRE73/4vnOvMshkfFiyV3YjsbyLIK2fBe3WLeJBd4VknaEC6ZlYPIER38RwHY/WclAFfAFXNKr157nIYGsMkmUhdLOrMwdA/lQiNv+gzkArgu4fXxmsNxZZF5jaduTR0FxraPAy5pMPh0jXjIKquikfTYCBDvFKazOVUJRjHRLZtQUBWTt9G0TmupkeafPBYUbvzGNWMdsF3IelolcZICZurQSaWV6tNkYYlRVIvXd8JidtPAnu2EkC4db5XTF8a0e8EEqMxDfpjhMxvfFyqhPracuEj+W06MvTy+6Le3s7pXbZsTLGaJZp3Hdb5xqMJtc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BnS8n4GxM0HnHjzlR/TkSgLIuvEautqUUO8KEZuyenI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xKrNSDWyOh+VBtM81NDuwlh2qi89VNxw5XeMI8MChPjAOPtvM4c8kRKmXeFRs39SLV2Qw6GE1+E6zylDzlZrUZfF8hJNIc1FuR/QWDHW1tcCN4WNQMdKC/s+KKMO2Ntd4YgJLq2lwUfBqTRPD4iMfnp9JZCVHbCaZT6UjPFNFIhLwbeVOY4vY06Ni4NTp/Z3EhFO/J9mW1+bBXyglzmYUGjHlreviMDsSFUEDwyVwgJqAOThDuvAQ3xOU+jGNCFfh2xpsxWj6IX6YRtQN3V9j2mhuKtjACoVP4u58SMqfQZtMRtDqrc833/Iatj6w7RCfuQETLB3kxgiBTFNt+ZTpG5Cf3tf/W8go1eu0AMldwL48goICyz+K+/dnPNv7kZeToz7WSVJaHx5JdnFkpCsv/y07qHL2CIh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BnVDf+rQTHIza540oh2bUhpdFRnm3CIkFLJGwxOHCH0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IRva0pX2JoklVqBURJXQss52eKhiXjo6cJdH8gM/0BwXSyuEPWAw5znRW85lDTwH60/SZNm75yTZTjUXdSRmVkg7uq9QsuwTLkOF+54bY11H4A+FxNpQI9K6IqHXn/wqB/LnUmIS2xwnsJRKGM9DvO2kMgQtPcfbbD0LZ9uFUWG6EnneFLNMPyJLmDrOvvUD/1/zJLDGZBGfwCDMj2lNlQTLYTnYZwxFnpH4eGK4ImXWVTHzLFoeOnBVdq2qtV5G0YYOYbjRlDjW9dren5pYev6t3O8EKiVqTM2EZEuRVQn4sh3t+qU2sx+evr/XiFVmcKRlRpCDYpRTjj01qhF5N+ecR0O45rvkYOrBO8ljUWmz82ijREQcdBESZxRJhqQbDN6X/2B/ip7qiZVdLo25f3TZjthR96EO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BnjpiqZ3n2X3GVeQLE1PyAozA8ngmGDiv8N7/Tl5gcc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WcUZlPvKQ+xLtuV6i/vNoIM1WuJz7foO/ODAeONfglNwdvjdbky3x4OBNMt7OgGld9LKG89YCgF3iZFR2s74ygVMrM340whmo4i8fNGzxJIXoHusJ0kt14j/nJUKe2ClkO7UhuuHH71OGEcRlcb+6OChoCjcY2Zpok1PX+Z5yGhgn9SGQNkklLZ9uLPrfzhxzLLH8QwXJu4GzBD9p0Ae/jDKbYREpl+pdw2wSPNGEMXPTLdBF0lVh0rZamEbKKfrUt0VORdWFBsAdLSP4KDux9BSDyNsMGT/RRb27+rc5dlJMJohfMMm68oXXRd4KNYuhAukp87bFavOrzU1oWk187sg+96lHQISkuQP9FC38pNPizbV0+dqss2z8BzI2GXE6qmY4b4FbKkJ4QW1/JPLUwYUMzR8XHVT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BoAtwkT8FHDeCUJiKPr75NL2IjwlXFJp1QdHA9eP3kE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qzzANZRJU4vHjoqLYS6hCfjzF/8YWopi0mnkeaAdnHGU1y7lke15v8nHDaymo7oyUvIXVyTY++5qcwrZJq8jytHW2R00IsupziK6qQcwCTb82I3DXVRdkjrheY5Dz6PGrknrorsxTU7PGbFF/MOE4WGGjwAgqrB2sUVlDmj8VJWDKJ+ZZf7XYcSghxD6WoiljMlKIhy9axKXvS/rzueVHLezquUSbRO2eDKgQVi0nqp2RTl9Zazj4OMFK3uvfcWtga4h2fAm1y4gIVwMrIlhW+kMw9nWZK495T9VePOYmKmkEbyYtur2+xV7u9VeuviVqDSG/TUCZTagCqRCLB3X5feq0YeTB0RjU97zQaQI9PnBaL4hHYSN96+JD2jRmIqCLMkB2fuk6RG3PNDD5T2nwqSS8Dx1Sl00", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BqDIh7ErTC9D+F2tNJ7tbQS4qi/9mNAzMO3WOPR+wpQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c0sWcXiXoZ/jFy8qQi1hZjYHFFtdqXmXrX2r/+9CxZfbWaBsEZVV3eAojVvFIf5potM+7alX75G5EBcE39W/Xw2Utat8ThbfuPP8Ax1W6lh2/5eJ9lBSver0D4O4IJBeEp4sOtcCczJbUj74zT9PS7CwS2DvOFnasjrBrvl1oUevktlUGHAHGou4cLo05CsNfYHOpghB+6AzKJ4vTc4O2z6nhDcOs1akfpy3D3Q8nqJKdQfXG9Uv2UTtGV2TY+d8zNVkNVgf/7DVterC1UFt5JtP6yOy6xEKTGMi5Iw1TTzOU+AU52loQWgtc7CSxwkOb/4BgBYN4lTacs6zksQC9NZKuzPiwHnEbwXAjf5qox6VX6vBhz3DR9lWhvbhedrld0vIiR4SKlkbF/y3F6vZqlqGWbCXa7ZL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BrpNw0tv6Q+twi3mU+77iuE+1thXsrfGYyYrkvspYck", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tJZTvpDMuyFCOf7AkBtnqsxUoX7ojtXa+gJQiyXZr+4pCL0TpjbNfMRMEmMH96D3np6IPK+16P7BHZQCFTe9aPrsvebzTT9oz8SrL77bWarH4CIrRS9hK7KrfhFb4zlng1blUKkXdaFljhUvidWrDhxxdB0yUOI4LGUy30YNFAqbqv87TzURLF1K1aLIA06NmN3DZQGYGNybF1yoVrz6Txw0ci9S2AcCnVe2J9oxkvEH5Vn6CPmwHzgWp8JBrNlA2w7OH3qiyBR9lP8c80B5ugYTmoSiqWHXItbF8byvV+c8as1mSpXUK1xFpQg2y9RpMjieEZzBFKI4yTcosaUwwzlSYRASbIyAjTYsmL6zVKeoOr5AnswBBURKdl6yhZJjyLF/GgLvVQ6AtUvNAFVMQXxKdGwaxy44", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BtcdQTdvL8liXO8UZ1H1XLG7lAjfDwG2G8qMyH6OazU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZO6T5KRqECcggtg4pbv3OQ9pZjlboPWUrLo6bLfKcfmbgLnoH97l4vcGKhwYCu+xQ9HTfTLT2j3QSgelsbTHPXs3OmJ82VX4ijK8JshVJjQMD1QuP43W3Z7RyqY+nCJMXjLo3EyLgPPpcSCRRWJo/sOLIDJ7q3mbI43BCFvUa7qs+N/4Crr6FXlZlRYVfNDm8nvgvQk/iFyvxp4XPinEAcTfHU84JgG9aa+gwUE4Um+wC8ihBqgUVSO36TQEstpd51fZETrxjSOR8QwaADBH4DMekdEj/WG3aD/5Fvm+SRYJtZt9HZuR6+BAxCUZ0G1WoXk/4yjdGu9hH1baplMtslYh755kT5wAWilQgpIeiFOrvqFy1qmT8jQqdlLcXDpi9iyFn1F5dmjXzDwJHahtZLyPOKPJo3EO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BuY/+l7jSnihSTSKuaPaeQMyy9AZlCMv2w8QR1ywXas", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4hd1IfS4xwtO1VlVtdVcyDQKXxVcKgGfLgvbagUWbgZF8pNPwJANhjNnmEOCYGm1vhbddAdatR6aO/zOXTE6rBWzfA7MX0EJEV2uTDcg2jgQsD305oZpldarQjhqN8yxZ8z1TEPcRBtXWq1Fy4iVZMHarZ97nFIb3141mLb3hpFF6t+N/vpIuMNX3v5KVPALUUSnZed7G2H7uM2CN+F5Axg4Sao+CT2sokSUovzS6AH4y1Z84LGH1LScbpr/3QcoysBx62/rpthYrJUeUeLbdwae9YqDlVGmVx5oDmC3qyZ5YURBmJX8pI/Zt0pV6AEcgaeqBS1Dt0r318qeNf/CGDobZkMBUTI3pLa9GVIgq/h7OOaLUk+nPc0g7+dDUbb4KovNkqC7G3kf82kX+JwXEKSKZvt3BrK5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BvLshBz97auqecaqxQNXu11AE+RbIQWAYqTPBiHUNjk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "O6mdqyWq3xY9rkoKTOA3CqwV7rgc4QiOgcZwlDNhnHtcODvbOd/yNxgxH27n/qllC7FHtJpHTD1VzASJjuKRLgcRoclD2mECrO5Qhi6JoB1TZd6Vdlz3a+Gw81+9kcAHq/u0b7q6UYx3CfGnpjICMb6IRVy9HvZ5Ml5nE+s6zWMtj4SN6c5N3RBXeS1myvyXTOeyY0qR+p+3Or9UguCqB1gSQCVb1CyVB62hgqUj0Hd/vqiLRJvV9NQH4pZ6nRJc9GP8EUqwZradYoiImGCmuLwH2uNiEtic4R2AVbelfdrHnXqCYTJmA1zNEGel416JP40nV3Nps2tU8IVp7y8rl7sgBFqQF/bIBzR78cczvU4ivwvVRdj67THQCK2V8Vo2BesISSUhTkzWu/mkn/dnZbfmpy43jdBd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Bw0ClAMJEe74YODT2WEVX5mIzH85pYITSuKdEPOBQ/0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W0lSNC0YZn5PTIr9idX5FKhnC9i44eHFCdSLk601gSltGAkuhL+s7d6QpGFOedE0wNyLbmfBxdNS2W4X4Hjj7mx3RAqVBD4lIsjv4tkyojSXVSMkdBl/KhEg48CB28qJKeC8UjYRIiA8kh9fWT98HNr2vC2iWYjx/MyHQL/mFwhv7sIo/xZ8kuCpJwwtNDORmaitUpA7UgWBW+CpZFFZqTS9YWJ6SQM99sR774OtJ8BgfUqqLMQmZA3wQ7e1gf56seqNaXEImhC0COSElQJg8rCyPyPSfIpr83KtqmDkLP0oKAfK/55svZv2eXznnfcpUXgDlLRldIQrtWsyO5UPGKp/7Fvhaioda3m3YRelTCljbq+wSXvXv2EKxuKwrT35A9dHjlEp2phEItoYb/GIhPehl5mx3DMs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BwxJ6zLrpspG/N4U+9zzOvmT+tVQ+QthOBJoyJKicUg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Xx0EbDnuCcjpUhpfWAq1rzoTqDzDZTwZyvUdiB60Lx5PCv4TuzCcEKmEwhylT4yf49eyHjNA2bFh0p8btP35CN+YCsGf15io2twWFRoV8fWPsf8fOYwRvnEh+5fTaJuGaDI4e1U/4d08/49/7cQsl04GBbzTBlXIQOrC7CdpLCTPUyyYvisZvOqE0d8CM9LoGMRYs/fPY3POX0BEwr6cjlPHRlc95er2WvJJpeoBCH5e5mBKyJnTdSVdLhynsLJ9CRObF57umoysAYoqmJhaNsaRwhgUXwpekeMoD9iKz/6TldDK+OJ462PspXDqY0am+QuYo3/yvx2/E0bzWQZ+oxIklPE3lsuisO7JVQBoX9bZnfbEda+6pbzUbxqbk5BAMyF70sIFiw5XPvccBmw/dpgGh6pQqqfs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Bx0t4H8ANRSqXR1D3/EIgic44EN5g0mZADIihaDPcZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xBzPy31pMhtkDydKeatCcdOmKBU7uehlU5YHSQnO8jAoMQPcWOqlAORsIRaZBHf2pWQnvwnomjyJgJcdRwy1fmDGZFEUEL/IsnBdq/SK+GDMc5DetWiDyEhvIBFDU+n2jOjrVg3XdbbXZiKqM7HgVE1jcRuqcHtoW1takg4brmBA8AV1UFOqPoxu4/12EDL7TfLp9A7l2dI7/Ri1rmRG1wjRb1/2QStpxpPP/tghwfWy0lYc7epnzcTcxM5rIPu7o2+pWyWfG1h8/nChK1JCUOyRnCOJPtIG4BoVXxOzueZDAWulgw25lMyrGMMPLGrB9U21uwKmBv+Z1Oq/8lcjkYXUADNlzUnR4+hUFK5iJ0Rt9tgXtIkmTpjipsjUEx1Jk9l+6EDsI3/Ii/UEfZzewF4P3Gm/A8DF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BxnF/oP1mNFQ2pLZ0FlJ7wH/Y9AOof8gSrGYEthKP9M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "le0W2sMlewwFjiEhuQFwbTqmVzDTXrTi4jcRjsMvRVSPkxZyS8tRCcpYRURxQA959AUoyZCLxwtyu2106MsGeiuBaHq8DO7aBSMBPEC/9YnrlmoLUH/m3mwkQgTWnJeHcVp25cH4eqCfPuXOAVfUiwSwR889rFySoZg3+J6y/UpGwAwafXxQ0rctqq9t7fmSg3EaiMlLygPI9jOTRdx0sOMTPSQTfByWC5+0N3oqmBYnG1ykCMS4Mi8UK8d56WtEj5YQF1hmD5W64UE2bPMVHoyqoLA3nPEZHExH+3ibBllAfHFd7akWaH/DXt2YffCcK4rqAJs3gPbC+AiQHvVQ8eMG/hc3vliZTQgut/qOFBo/hi/h30lOzAdBFfd9O46Woe789BlMFnnBtMRo/cMcAFjoakqeUqrc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Bxq7UnQG3+GVMPXMh2dYNK61jlJ4StDFaQ9gEY6IFlw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Tw9J8aocIFaiHk0VYCB95l0qdDpoJ6y3Qus0t2NEVcPphsb9cqcELcbij8+PfyqNkJpn851DhvKsYD9VjVJVZUOsbRXUBxyaW90pRsU+YaKcCmzemn1MIlUvGrE91wwDmuSnPWuUKArWDqvnWHCrjbfnxKv89H0AiD2WQlA5w7mnJEtw66Ky54h9/ZqQ/fLLbJsg0PxSY/Xn0X2K3uHGWlawPIN/m+UZWZsgjA81aZPYlug5+DC/XCzLu/1p4BBryEKoJU1lKiStkH7ocaQwuU/3q9wdSIFEm3wluXCV6Y1eOFGxbQbilDGTn4ym0UU0wY/rTCohz8IrdFhXAReZF4Zq09UEN+10CwugRSqEr9tT3lQ1pSm7Y6X26qyYNXNYp7romb1dmHNrVJKNbc3o7Suo0QGfrqRQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ByZ9TOkWgoz8UpThh59XapuIAPhAiP9VezTw8JBkpY0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EOaPn6rdj9HT6fbKSfjdoZNRZiZ2KUfFwZ1JakH9WZb+2a4pxVb2HJgvmCc+gbz+jxhUz8djsEao9xsbBJ/gYh5rHck6sxN1aKo4Jwhqvaoqk9qWPDVZRbfRqAKgT/2mPHKaNs464l4oZQMi1mphl56B8nUIWMMR87KKFrDqcW57QiOMNgAmXzWgBJRvfqxmk4CkT/Siwp3BgfwcI5MRMThtgV/Qd00k0mieiSF4560DNccYy6NNG8TcH9CU8+Rpy9TFMOUL0CJYwOX8x7Muv+YZrsztIFzvvK8RDyW+oPVKj6brxOqgrR45STJXx4f2r/1T4lxQpiTB8qdzJwBvnf8z55/74BMlKqEB7zO/scRaqDRsqKrXCWQMN3V1D09oXNu7j6UA9ZwDUkLD8MfErbiI4UqsoFg0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Byo1hoMJkUkWMKDILAyYoyo967Vf1wpEmVL3yv570SI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "p4sjtUnhddhd7XI6W3/O1qiKe810ZZrV8QTv1KrWOYmat+FVp4d1VsraeHsY4OLLNdmW0EjPXg2kyfFsPDkyTPFKBgA32qcjuOW3U4hnMkhpGO0KV9bCaj7imyjIXGSnQh5Z9IdPb2eUcJj7RbafOvyBHenbKPeoZGAYPW5ecax7RdxBKXH5+LLbFvYm1+pl7NF69lpIGQBFvUFGQy7NgQh35jbcaGFI0uCofvIh6N9XOcL+R7+712dqtTYrd6rHgdB9pFnu4cleVkFir+gHETeTJwA6WlQonXgn0wn4gLXRw3dAh9DHjURLr4IKSFamvA1N4X+zsEH0/ZkoQq48wo0hpsV6Qw3sVN3kcDeso7HX3mgHx21ydN3MNcuAK0LArKRlv9Fd+4sGG1JgXNiTvvPSuL0nnaYN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ByzH8mXOjnJL5MMae64p1/22mSBP+gjCulmc3KSXeMQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2NW8y5rinIR4sL/mmNe+JGoryS1MBt50hvm41GPAdUIjMhHd4aWJO4R79YomjreXuxDzSVBi9zxRS5VLhZ0G1viWa6I8EZ+byZUrOXqfvE4ZVQnk5u6sXJic/YXDZzE8uIgicG1BNkz1njKjvbSn7vPxn1vu60B0s1DZ7PMKNGjk1cCpQ86+x4Sboon0IcxfunVHBgzKRzDQANzPozwN0XPICXkJjHlce8kj83uxPGG0v+zp3e5aDvMIArv5fvB0qfphjvptDDPKx70v+QkLBk0IvA8mckJQa4MLw6Uk4/HPUDkveywHhm22H1ah/TI2F3WhgPZt068XlHmqw0dTpE1DU4JeiPoAQrR6wSWT6xgjO4MiPGkzIlCaykcUj0hXSaS0VCTZTzqwXM5CvQrGUKqZKdds/qAk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BzHtvcanifFARtskjCdNWdukI5kwQ2UiNxKodmpEHA0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7i8cKshP0eLd1x+LT7QAbls2Vew10JWq+gjge6hR/6Rr/wKeuIpFcFYsG4USjdZGJ6igt7F4BcVGChOG5s6YOvt5mqsBmmvHijYTX2NmbvEKIuuPo7Oc5ZXcboHqAxmKBPegPx9BwGqnQorYgmASFdsmBV4k6r2uPf9qHxiBZZ+Ji5V1EIN6sBP1C7kuqqz5PjPNi4lDLZXrck8Xbc8qOafHDyK4f94DeHITS9vRV8i47WXwKWHdBx9fnLY4Cu1teUN++nLqhPrn0+VqEl3/ZLsh+Rt2Bp3IpQpurA31MQfKnpK8uWxjtezFb72S7YFMI99id1Ly/d7E0xjCNgtgNq2QglybpiV9+tI4ORJ6epjiBb8VeT7aaIlFJbHtfQQskVpcMYkFwmV2ap58FBa8XxG1aX0jhuN3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "BzakHQjJHNlwn+KjvhaFE3audmU5Hdulp7jIvFjoojY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "84539MR4mt2SGYTJtSjvxjigk7Xxa38N+O1iOgAhyivrRs1N5cRuDbjhc6V/RX4MKYtPKy4qEAE243DwfoCaTkA83yXplAY8IX++pX4GgaK5oqEYg3MGJ4op83ZO8CEVx7V8Z1d8S54rmrKyLcCYs1QcLwFzJcOKLRqiIrJsjgzG4vkium+D/xQ6YHgcGz0R5i5SDV1BYJeEpTPIN7aiZT5nufpaBfZToENO+Oe4W216eUXTh7kiL5AXi0R2Q9Yv30u9OIKpKiRz4thq4NWRw2r/pL2JthL5ze69Y1+YR1yxCjY5tNmeBq/jqsVCA7CjLUpQZxlfS3H96KpbD7rCm7Va8Asocb7BQBqI/Dn2BifueRlc0A17vhsoVqMTgmQp/n+yU3jdFyPocu6iORNaY6LPo439p3UD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C+zCeyvFM+UaJoNvRJjxISKfzn2JkzZA8yZpglG/m7I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pYivQFEvrdxztbYsvNZX/Fro3vrzF6Y7UrHqJiPw63E7AztGuDvZjPnrDUUaA7T5FttpNcAsyFXWKEadM7QbV+kVqEcGYqON2GOufB0KnkL7/zQGF0Mnu5JliS92e1TV/DeWT9czPNdqfxxRyxFaOcTUa0EvOXIoPcodFwJKY2qqXhW/z1TxWJAfYD2lMmfvIZxhvCSgtSVvQwQtr8+W5RlSOaNqeN2KEHMuFF3u5LUQCSyFC/8NmwLGWrAs0JhYwuixTMJGT2SEZADg2/bhO803/nET9psNHsrj0VkZr3nl0cD13VBRU/bkILrlDyprotJtsApkKjsTEbhAIsaxEzJuAjVgQ/a34aFos5WhECcJglhfpu/ugnFLRqNjxwF1XmXqQR4wbFUloMyGsK+GVI3091OOANu/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C/gjF0otbAdOyej9gSIC6vJDimcgljfJcBH+stnBwh0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Zsp6fW7SJV4lsX+EgTg3zhr9JSnUUs4SHqaYb8eOzQN2IpxqygMzlkg7jHiX6d09DjKd4LtMcQmYzMfikm60M79I/PJahDHl4v1/gCxEBeB269C88Q85u2zXlKZ4UZGJd/jnVQ2xDzv8MubZUBlGo2O4Hi3E2uqfEaNgYKKHW0YPC9Czi3ZRhqMvzkLkqw/eYhtcuVuYe45KIW2PEeyag2FFDccRfuD30RhSDgX0IwYMrjlVHW9/qkRJEjHfMlY75hlW5FJroAuo18XSTzyw9cKARv3g9zQJW+odBYT2rSPqX8dOFck1XLAf/J9YivpXFd7KUgjDRv0TreNbfYTyVNvMhHAKoa4EABoXEAi1Xj+uX6A74okyhGWnJQEhEjifCeui602q8IPZAVl9M/417GC4/EhU7Xdk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C0OLFDts+OPxD4w2uDcDeUD83vMT4Z3UNdTd/xkAzdA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kGAkgv1rHoqnf1s2JplNtHNnaiSKNOZI2s8tEhm5coMAFQcOOqw70PPsUvYmkdqkNZuQwzqGJEzvAI9RlnGhiE1LB4LKbav7ujavYGU7uiy5ZA06q8T+ApD3kcEX8Fk44ZHeQ/zuKnhtGqqcyvoe12Dm2CHzBHFdbPsfTHupyVVako5NNX2GOelvrtHFNkbZJdDoZXOnBMg2KiIBN4QHIKXucQNGCcjwtfE3U0FF0CBagnsrdDwAfYDF/njq4vUIlLqiHkdamsR8ytxNEKEc+PfSMTHMrejoKK6MFW0CD1JrEFIv019EF1dmcFXMA/FHn2il7DvTw2YCYOMWASJWcsSpPSFz3Ud5jTo4T8ZecBHyzdW0nHfNSDy6YxEEqNUozY246GBYU3wU9888qtliKWHfAMXtCyX2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C0s1KPSIORtvGBzRPoGgstqU3gq0SPfP3pvKbEuuREQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hhU86NgEV/GXieCDjaGUPtJWiafCDvebytzGYWq0sCFQ4CggGi+3xPPFhfZGl+/26A6iQv6PTqyZc5k1ncoyj/T3Z37UWnv0Rit9AjSFvLY4VbQnY1i3bTVwa5z09iSJoU7mZnSQTddZ7rxQr47LQcaXVlffyZ9t36+hNnVrFdvUNJw9ohAMYmCqu1i38C6qaZKJSv3rxd2HtUgIJQLnVnUW/SSFi+LGnNv8wPaeVEz3HHGAqfxvlWKcPW7Z6T3WMx4992Hu2pDY/+YaXAApDcL3+jwNAGWf0QNVUNSdjYnhH42zO8OuPBEd8/6VeDLVBzCIMnkgv3dhPwSb0hE1/dCa2r2pdNXcl9/5hbSZNb4U3hW6gITN8GGmvTItXiztzDF0wSpRzmYxqbIZzYh3aV6+IFRPwtqw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C3fGx1lRcgI5V+uzfM44iid1h6Jy6keB5TgK2ZZs9Iw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N2hr+Gm/LCqYjj5Aj5MejAPKQKpr/frl2QBBRI1b0GhvJBjbqVlT14/Zf6+NrRDGuYDwnKa47MYF+TfxmUFCKZPejHQTqV7Hvy+OZ45aw/o8SKVtQKaf9cSHsN2Mn4DlJN/My38DGj385KNNePMxPy66lZXpVONzWG0Qc2uy7WYkWx3ujtgGOXmGjz3YuXB7iltNCenULXSyhETFjB3cuKlD5dpJYW1bNtpd9OYhN0HEdepxBxcHNQjQyXNC4BDR64vE0icIkGVRrcpiFA3F8IhvCrCAhhdWZT1g4duAzUlHuKpxlqrv1WMGG1Fd6qxhe0C+zdOBuL+tXe6ps8MH7y6v8d7GKsMx2CcbOSGK4qVBXUdF2SyZtStYPwOs5ukYd6KXM6qED2uqbW3Q8rOFE0dqGkAKI0ju", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C3kpkPUmPFjTivsWLFIUjZOUlU2jS4sRz2Y9r1c4txo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "47jQIBZEsLdjxu0CIjvSCO39W9eUkiV6PgFDuCmuwicwAOulYP6fwQjDDhX7+ZL5s3gibWzWfWx9avfQosAueM9FBkmH657d/PhdP1PgX8R3U+4R9iTufyREcjwL0Ap0QS7XMCNMirQBAH63KOazQAfEJxseRgXYX89U5OqhTRgIt1RUCgAR88ETgBc+Az/c5M+asna/jb8EgL8HeFCBnpchXz2LbJDFk1k2E3DK9Zq+cxVE68QbefUB6Ygk7uqvfN4szZbTrW6kpa3z+lTOOq93OqB+nXUsMe7oMSDR6O/4gwSXnBwSK9smXyWfJ2Y2O9Nk3GYWwFIx01JEWIF3hfcBb7PjmXF0LeqS+1JbovyWlbTnpW3TBUO5q82MLhbZZvfYai5eD1nuZ8m4dPccJ/FqMnG4RgZX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C3oO0kRPo9UmDQrofgFsC+ODkVrVa2vphon2+K/YCHc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "C04dbauYcdbmzAakklv9q7fm1Sd6B76KRCcYVvJLtEupwofhQR04jJJ7wj3suEzOgMlqkXJyOIGByoPb/pb4IZAkInH7p9UDd7PaxC05qQKjyuAkGKZ8Jh48SMjE1e53IKvAhSOnzH2C55HpUP+5HGlYVilyg8/8HviyggZn/isASrhS/wZpaAScLJ6rHa4tOQqKA/I+0gWLQoRk9t10MUQZdDRIEM+UXU47cuzoKVmLuXVDUtKtrclbuk/lwoAoW2yx9676YAASNA5Mpel3ThATtoKBOnMOE8VWXIYie6YAkZWOBXf7q82MOLleqBP+N+6dapcv7amHC+DwlHBDCxr/+nX+3V2wAqzvARRVhHiOGLlkl6Mg2kZMEvjfHYssi0daFGI3q8SidW4a8dhvgRmhZJiMqwL5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C3zvHXKCgqTNpMWaT6SKL+tx2wKn3FCYrLkAnEp60Kg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XJuAQfUSOenYhSbZIQ1bHjn0EK/aSFfsoh9+LXPxRe/9ks6nekWMiBiiZt2etiYnfVgXptAaUicRyha9lThpGR/084utIGvVFO2K+3HW0OR8xf+Qv5xB3Qt4FPHrPDZdzQZDRnEyvwlbUl99Lhj/vO855r46D6c7d9VuMNDNmjBMRe8YGrMMLWaLH/SdF1RyNIMgP/6RQOoHt9qhi0iTjnOEEKRYbeA1qJyTI3FX6KmkgSwOed2HUPMj+ZhmsWbfV4EmlTtXHesFlkUaI6qJKgbCsM1B8mzuOyeYaCH3n1LsPxGau5x0aDXndq7/VuvaV3+xCvEbhUpXMOi+Nbd0SGKod65U2BuptYwDmLaNmcnID0IIdIV0VWEmh0H0SfhcGw8ajlb3WrG0ol6XpamIRblChK0zyaRQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C5Sdcn+ljQaZ5h0Z9U9/oJbYfdSHxBH9fBw0OIJ92Hk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uQAqaLO8t7Fvde6Nfju+KijaQCxAfcbjiJByeWnIv8uM51aTVSA6024mKx62X+BjRuPKG5P83M/xzS1uckUIxkDeZvRGR8YfYq5qfrTkgDHL7GYFYNS7SsFYI3SO4ZEBO6DDXhng2D8yxLkRviABjx6Y4svsYCcbCEnAvzd5fmIReUFjvm6M0v7XOyHvPU9S2lrzBAwz3IFJtzxYb9jNE0iaEZZ24WFR8omtaU1A5eNn+6kUnkgCaAX7KLwgsLM59usMt+ZDhFzWkUbTaPZlL79RRh1H4sgMEkXNsy2gwf/iWqoJXRmAHAgASb5xMfsR7TR6N6QlG0FTKBA6hdR7o2CW1ZtLqa51DLK4QUdzGJXOyU7ijuEMeh3grLwry/YasdV956C7vahk4YnGMoL/VMlKwBkq/DzE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C64wsAQBATH+ZUGHsEIC6WhvXKYEyKpNWi0apB8Yzh0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pCDbQ7tij1QYNpNkrb9MFbPpBsZzS7r0gAFaMwDe2EIOYN/rthkIHzt7iMnPHfUhucmatP0jR0Za7XVCmWx0UDjmYI0LH4WgVym7/ApQpCLSiJ4CODavX1x2rmvV91ycdWFd4siPmgtP8tVVBxBJ24NqdKqJG3FGB9zFE5upQGNlwJ6SCQzScBrTf9bfdfpKMCpDxdg3TkngJxp8GbR00T+nzQBZgNBvMimN0glVmP7T69znMZsxwCDVf1b0EeUCKcL30gjDadWS+ZykZFgecuhxc5ZmOOwP7dLF2N/jXK2nCor8NGQ8LNXbTmMJe683Tjm/V9eLmh86ZFwpLaUShVwS0rtABK0OYqH6YwWndFnRq2TRbOZ25Z/+6/MHMaImhGwLWGMy4knOWTPK0iZaXhvTJ5biZ8qI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C6fn+owdIiAPkkfO/r1HwoCGlcVYAkpnvJYQnW2+s4k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X3IfcBMBUZpJ5pGUeMl521EbQiiDTYHXcJgmu1aYGbo6o94nuYZy1O28Zmr4z65K7FaOOaZixGNM8T8HZAPBiKcZiiSqU+c5d/t4q4678UO1H2efserCV16Xrx1iDuc2AE85mgJnu/xGk4Gw/tijfVkz+We51TsMn3Uqa8Ifm+XHDOBtNN9uu7NRtPbVmrBH/ebFQn6xmg/uDPwiMkxC2l0ITiLmbUK3UswClTW453GSwfhu76vdlNUQ+7zoH4SMUANKe257QmUFaCW8WlktDuLDz2J6ze9+/V6KOgQMKU8QlUluoUqbSy2QjJ8q2HVyrbD+BqVtIh4qDezIXERfQO89qSZQJdo9U9qoulmEjI1ljE+ZQnQKiqkRSMjD/DQfiGrJHEttWPCn2eNfbu1NzEXpl52mb6nj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C6ivsg6PEaCj4uT1QFh+eKX1WoeVwyofiFtVXkQrnIk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/VlU7xA2fQtEqBYWdpsHu9y0QZBmCK6h4GkWrWKOoVsNKH5P7vnbkdFxsRcqkpnwZGBLFkP1RvX92BLnLVWFKN32WWz0m2ZHOIJYY/RKBFGdMjugOVfE1wEvsPDhKOJbOURRbA3INPAFzln0V1XyFLlcZOjW1hHOK/2mMkzSrOoQpS22JazFUuvIDHXG/oX/8Jr43+/J2FOgyY9d9aK4E3HDqp53kgIcgXK3ZlI1GNsd6fbmgSLHC3Fj0OgEXIFzEXKNkpkIjJ8vEEuX5TcY5eGG01QehNnziQEchc5l7hmhTjibPzWJKFgBGuBWQ07BRB3LbtHsNBiEvDp3kRhtj2g7MmdIKXf1CsinkdEQmxvGv7gaPmjAELxxQzxVcvQA54yDOdIjNsCDiWuhS/UTwEt0RiMCNwu5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "C8qS9LQCnA8P/ET6hMk4hDlnHdKpf9W7a647Q/85XuI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MnIpOKh4PKjLxnkKKultR7jUdmSs+hWmPJkKiQRF3k+mlUqI0bSvgzGr1zbb2scyclt1k3tWyzdJtYNb7WgUW7Bd0F2ZejnenOnH5/jt+NLZCSoAxQVQkoqMhgD6SKmxy7cATZOv+FvUhjnhoKbY73Tk91qmvMWlYqpX+MeoK7HCUwCsUgOPAFHsGkHIL7hEw1TAfnteX0RxMoxH13EJDxSVE9mQl1Fk5/SBlJ+x38EBWO337nkBM6eNxaUlxJQNlKVdf3VZC6NXs6kK1gqR5Nckg2/iqlowafMJhir2ZAla6aRhASS7+9YBt8RZ/EnAV1djtljpbd0AxEzQJE8hGcacXiA3NOXuSG2Fu9m66E5BXVSCbAW0SiXJoOs/lue6CGasa0WyB/m3b5/Sj192H19UCBSoafPn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CAaO6kiD+3kf+1Zn2yNqDQ7HqTo4FCfInXB+e4F4/ZQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ckrxGB5oGICucOSt5uqI81R2yAuwGjRvEXainOQjgiWMHKQcb8M/9zPvRbpH1YjV6D5l51cxDrRa8937G4z5E6vuFhc9YYBeKtQei1j0pSBGBSvZhWNRTJwUrligzd1WZM881xyblmQOfHEjwraZwjLz8G5M9nQd1NDYbPKaocaqGpYYJ5zoqsizt6fZH9KAgKAoEtLblXw/xJh4oksV7/kiSz1EEOFfhcMNt33Si+T1pV3yX6ODpcNisar+bw1VApP3ja5l+A52HuIzwwMJWsoB3bHfQC16RDPF6WrRloXtmLjdEiCS1BhtYqweJbmjKfCPpO5ab45yyLP3pdECoS+CZgUzih6J8Xo08t5n/Zj9i1mJerEENwc3e/NcVpNHERHbf2BBQvbUdRT6Speahpv7aHp6cJs1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CAq8/lXewLC6RvmUZATqBkqmc2ll7C1E4fdh5xVjVys", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LMJxN+1jLFJh9S50xVLvyLkqyjoN5Bt1jooL9Z+/St8wPJRxCJ59jpy5P+2xqmEE9zZzMqAkRCKRXTge9Ixg516Mbmxt5Chtdlv9MV7rlhely32joXmaPCK/Zr/31lv14uOPSZEaPPpwkgQyl9xkCNB2T2K/8oq9n9QJTTArhfNoBZkLRgyhvWOKDxrcNKucMiZd3pT0rSRAjpJKyvUUXKwG9C6/ho0bFV7Nff3QgW8PmlOQvb1v8DmlaQMQJH1h/3E8c5oNJz5z8mRY7C6XzbEIPjEvUk60VkBK0NI05oivqw5TfbcFIlUYI8A6YcrU/tO5nhkZxXPIL/pw2UKSXS054v80fCAFrYFvI08d4b03fr5Wqqsaa19es82rUVpRxEI5aNHD0HyTNx0V6MhpNkUlP9PSiw6+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CC+GyT3utzk3RmZnY8Q0fBqdv+TO26OM4doCNrglmdA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LhAuIbNZNW+FIg/pZ2LIctkbqH0cY15P+LsKgzaA8XzcL9tcmKNcqgE/MKrj4LlyC0o3dmfPmUbQmihJ/HQvF6CnYFO2Ub4BCP3qWkUBQBtlFxPLLeryYFAJ5FaZplj6gcM9/y/vG8IVKCXxJtPUcq2jgd69C5bAppNHsg5Rp+7DNEe+TvwKYdDLcPswNzRyZcbf8SZfAWc4N6h8llKXyYwFrogjzL6CMeUJtx5S5yr7nYkYFG240395pNSjbr1v1tv8QfiZwaUzPGaCvNRCwYvB5mjaDQO9rmhFeLTxL/0gLHbgblfeGYs7pHSWL4pTSXvYWJssRZHAt7y6tARH8TrpnauiU83QIZHN2lrW5sdCUKA5sFsAPHKaNRsgZD2elR8KP36uigmVj51hEqvfjX5Hm/gxE3x8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CC1QZWJonu9TTJse08JFLM4u0kRyVhGhe50XejskzTk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+y3Lf9+J2gA4rdvpNTBAP8aiNCRmsV/hrwzzg2gX5uofTHKl8hu5BcjHjhXhQLRlmjwzA+chOVrcXecKnY4K1tZjSbjCaO5ouQgt1GSFDnz9Ictv+Zo+o99vqw7FyZJ3Mdfgmek+JeW3MWj6AVnsbsthu3xct4Orgn97/N7Vmv/3t6R0FBQr6wSVT+tMSQ+1DBfu6o6HMACnKRyz06EOX6S+bwCmeAjrrrcG+afKqr9nc59fxgGbxvVLHepqWzKRRumOItk5b21L81dfbKSViZQZ31EDJwu4lCoHhbqbZdrb3yFvTXGZHOjaW2XaPjfdk7cRlOFXdn21SeqHwYt6SYES9L+xjvFVv2SAest5zV68YSUAifEsUGxbTiCgg+BZ0KVVb2tesyoT4tTeQ5gIFpajbLLiFDg/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CCBNIobLDGDtzsVBJs0Uncwb91GZaUhoOWcLInWAL7E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JEoABuB0l/zMmBNvfBhR7gUQKWG6ApHnT95uETrR3sEM+zi3+adYRkR0kt0acoIkOi7M8VnKpWOIfM1jQIPzn+AGtImQ3dBNmoWBjFre4Ktivi569+1TtukMRaJJJ5bnrj4i1DI12Avj7q5yfZ3o6BBxu5HXJ74W8GyA5frPc9KfFw+g7X4IDF4WxVNRAK+VV16eOgPxfK2j+DuffLEV08Mx77JO6al8XUqlVFr3+6aUh002tQMlFCdsdySM69DKG0P+rjufeawQHhnqLzTr5djmv/Cjz2J2/Aak0BFY6geSeSxkMUMekxDmKsbMrY0QVIFFRb8/1/9WHZ4SHDbSvM5J7tN597PTOJjJu/zrr0c+fa482v1ARiX+i1DZ/B78g4CTcXxphKoMWZjJcTfp4y79n4ooYk22", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CD7de0951Od+v23qN5Z5R8yRhmw7hNwBOwmSlhR9bPI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WVu9e0BChW9KbaUfFLzqvepYC9xQoEsZ6kW4wDnlJ8mmuRMJdduZhfR2qEJ9TTcw1a3BFfY5KSoF0HCEgc7pKaSEVMOTryWT5v8QDhdS3lp/aZMBySJDOgkEeg1MbPxy3hl0W89xmWygunXuG6UM17fT1CRSEfJCwHGEaRzsptUdULuB+dMRlYlSWlyI3zrnFtuQAzlRZUfV2SZig6IJkQ5Yd1mrd+8lwGjF305avCUnyuuo7qYMde5IRX5UFHfHMNeY5ev18HNHZsSHvJzuTdrc/fI0okvsJUhOeeV5OrdZKZi6A9hNOPyAKsTTHksmmF6GYwpcMucYktEY7O1y4NbFspzQVChs2Q2jnWw3lXemma93fHr1tbqgBKoV6nW3U5N+YQ+MK38ft+oH0p5hGeJRa58Xb9Nf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CFR0nyA3jCpzBRQTz8FZTY9Kx5QMO4CYc0tKv+kyDX0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k8SiRRGqjHApP6Oyn3Az668L5dDYyVDu5kCHNVQywLIaPVs81b0Zs++/WNOf2VLCVdKUWgV86u4nRwaISuThV/BZKMo5MvbG1H0AgPnLLqrBe8rw1Be4WmCs0sZen5HC5DngjOquXFpVeq+UuZBXIIYEht+Y6H1ATMvM706CZPenOLBN+3e9570f8eGFj55Nrg+TOKzyYQoqANKg/w3SPDYqjn9DhnmqddPMGOLlYO2ORBGUKwrUToYDMQgog3JGHoaCaf0ln6JSwf2purC0lCQ8/oS4lqXUVIRgpNwdvLm3z9eiM8KgC/RKQ2zW7A/9zGKHJv3077gTWN8Yn++fiuoMJsJ+9suW98Xmar1YWZyfUJUsx/SD9+cGArLpTVNFTjYvCcz8lluZ/lVXvpmKEL8BjOdmeyZg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CFs58VNHY1XQvtpwOFtniG82l84TG1wMhtE1fe90KG4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mb9OZArM9q8NgJ6X5FXBnpZYD2GrTMad5OlpKrmOjKJhc7cjOw/oKJ/+xjQ9IxjFODOVWK5QWghb5lQaIGcPy6Hpef941YQBEfgGKx+pNRC7m64a8aHWtx05mlJBoGmKXWgoYc94SRKcFY6XsvKgXz/+DOjFUc81NoNbt85GWWneKOyBWa4OVWxPtrJM/PwT5NEjVxIrU6l8/iF8z3q9q8R9fZOK9V6IRxIaw6FdLpJqnRgAPyqAOokPZ72gU6s4w6Kskzy/E4A0NvcC4RAwzjLJ93V115ECRv/Mpfq6Dr4GVMp2FFv/IJxj/0qtnpVDqOy1n57ljCbDvAgz7I2y39JUV7EtV2QnVbuC09gzFlhoZToO4/229N5y13MKabZzD+hRjvmuMkNAEUDrhq1LPh9O+pa9TAYE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CFu++uxJ1CAqsE1C9yWlLczFCph5KNsAzJWRGbcq/BM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wzyL9MP1ipeC2mN9gMEwax5MubYAMHWUt+vU0Ud7qe+Xl7gjuXOtXlx0Hyuj0+64UAKVqxcI8tlxadd5rgGMve0EOrv8WbT99lUC0X5+21RrKGOBl6FwHlu5/8uB20Rra6pYsmqUcm6MhPAPf2Wo1lROWSijiEMxv1YKfs+fdtfOW1resmiKtBqJevPS44SlObKb3A+nB57I1EV1k+3WYKDxntGx+QDfSxUwRVxxkTSiz7et72OOyoLk5Asr4ZtfXTfsonu9dLEkwLxrSru/h+EaE8pwYgRqBU4tE7ijOPsyF7pOoCFqNjwpuoX7LOEDsmrPxESyxQ1p20Uk4NiLxtjm5dKydMeUvMNjte5kMl0Vi/Bi3T7Q9VeB9Er4vJKsmtyzewuOMRpGe3MuwBnIBz7D/yIcYe9I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CG/2CFJNVFHX4QUiJfkDSsufxP6OTQtNcr0iHJMi7Cw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZnOKNBy6Psstxjx33fh7tbrLi+KxGAropC18+sMePbNNLjTVj5INNiKS1YUX3ZXQu/gZghHaTS9ePufhwykW/Z6yJkQizjOBMY86zwz+iCZxI6Gpx/r1WIy3pLfgaHsbJkI2S1awJ6gK6QTVLt0KgmrVFpJayuRNXFISDwkN8cI8hzo3R0f2HzPWfk5p4VngeyXdcYzIbMCoikl3K4Iwz9v7r5gmF9B8UvAQddfcQTPl6/cx8fJFm8hSp2hdPvhUdBIUFqa1Lsk8yQJ67qd6wvQqGNEl8VJV65U8tjkg0Uu12FE+2oKLkE4hvNn4YbJ1am40PeccqjUDhvzFs7GVP7MJBAxaxBLcetzjg7ofinMAmC0Tjniu6e98daE/Xvly80vsPdB63u6TIdzaGvHF3SiEnbO8wbJC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CH1w7b+q3ByrVIM/tvTyhMxuQjl5SH++ScNveW+bZ+M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8zErSatFXcuYQwHwAYgr0JN0l0JhYP1ts4BSiF4uI94RoLBtrz+WOFXRFQdUU7KTdYi913KKCcvJYuM+pe5t4AbvG4tl0HYd+ggNvRiLMOHDZxtfwCGeWXLeX+kE7YoJ50F9Y91U9yLq5a4QxeOkLGuEL8IbyAqyPs4kBCRZWbiqK8pLDaXg+7NV7QotmVCk7Eu38JmFDwxvSdaIOfzD+EqDmVE+h/ghGvDKzS68e7z3pLOJE4qmKuxke05rfVkdT16FO5PpYubPY0iR4UZ982WBcbfaHOXTYNKiACf2pfdHb7eMF8d1lasSEoS4yQjhPVNaVW4f86iNXWm6nMWnM2wz6xjtPrW2o1WKvw5MnF8QOyaxlRyaS4r7AMLMULenB855uP0NUsDxW6ct5NNfdDZFW5blgqN6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CHD2pfRwnUA8a2iCDj6Lh1pe9sP7hi6IB/xdZxk6ycs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ij/aBVncG9Tw4uBlRGNQYGOWs4ZFuK7PjUwvx6PU1L+4/nT8QfmUyQGkKYetZEWBne9hSUD2UtfMQNtcEqDKF8QF84dNcUrkc0Xe3QXzbfAAEgtbB5hHOO6Sjcfk3vPT5De91oHqWR2IhiLUPcNJrv3Vck8e4HhqHukS5stU1axT0+LNzIOj+aH4IxFrYqgQtU23MqCFrdVj8h8c8oRUh9rGV63BbZMpVuYUMdsxt51z4ZiHkkYPZRAsU8v8/KaLMBhyV0ZQuZvswTUanolLFdsJFtHlyMxkx2QCxZwsQHxIfVHZwC6a5JXLV03SV93VSG5OA5GGh5X/oqn3xgk0WITGWtaGLcJdENtZtwSHUiTdT7aq80fYchxJtE4uE4qwb2/ywdRHicvqFbIkL/RciuiFFW3QIc+Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CHGwe/NBa4MVIOg1KIbDzanKhDrLr/QQSJAn01ikwdc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rKaSMcy4bw1zXSpKFTKud6hT0J9hK3kZvPGMy9gISBYCc2xtN/+VBdWhOut54tAV68GncYd4277iqWQHqaIYKL062J/UCygtbsnMJoN4cs1XZ1+N51et+1hV9FKBdbPrwaThRm4M+GgKY0ZB2zwmBDIqjtfDd1prlPB4l5aXmEwl+fbfIkIAhKNwOEtOFvq7Rp+6tVCEQYabNIaI0LrRCHnXEKAd0dhvJkKrek0wKO9yD6ONkWpZHyb4mdMARidWqUBtrNK9j6IAEch5SqZ816LPLT1DykW8sy66+YGmyfZvzgGyMpwPjVAUYHXjrFF8fhyq6UiRVZRQ+M5FTOzaTc3qHY3gVKoHXvrHd/5gs0+vrkFjAzOAHihxg1l7NhkzXvcZ8yRjz598C3yHljtFZO/L322QoppK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CHSQC5+e3KUxjwK75/5M3vOFrPIY1LE3eGmkzJTaXHg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pLifZ0ikezf52/6QC8eQk2DvcpGl/GRobXpe3vHNVAa3VLr/DKNcspwtCrkpwnGyF3WU7GDo9cgLYw1Y+gyy12IOxcWtQV+RSx64ZCBrDMO8OBOO9Xt+mE5sxUDkFpXsr+sKoJ4fYQi/HN6v2Kwr1WikOH3yQsC8UNt6LoRSFm+7418YQvqC4mW45ie2jDg9eZ777euImrguzE4qzJZCA1Fppi4rvVmBU8QLgV4/BzlhkF2q0PockC4u5WSX0HHBwxZ0dxz+fJ2GAi8rZIQZkz5TultUIXmhS3zSzDU42dj2obf1XC6wvI2lLBHACQZsFP4j1oYZnoY8cxHrZlLmFzK/kTRjziF3/MLSwoqw+l/zeIiiA7bw4SeHwkaGJrSqEBla2Cf3uMYc/h7fteastQCLt8KMxSIh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CHVGJEpvT3ZtuZ1k5AnBu/YLJFxsbv/HgXt0V67LDEg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4sY+RCdWBxlHV84il54+dF4RPMCGFztlcNbPqtdLcrKdMjCN0CAz+fFqlRTofxJaf/5KX0nxqeas7uJTaXRERGdwD3uDisr14ovuKbnqSu3oEWmI+PnVXG4R+uNuHmW9pFTwTEOGagVKrQ1ti3jMJgWPOSBvfyN51XZX49q6uSc5sEO4M/bk3wFbFqVUmu4zvlKMp2grJu4pq8klSTwEeY4a1Veu+DYEFJaPnYY/jY+e6mzr3lfb9rUZ2760WeP/XgBdj0yhv/stYuw9AixM9hYXvXkfqXj/VQu5OjDVjYjdqamB37wHlDmyDgUE4yRY8dtKVFGbnUjsL/tGUsfmqfr3VeVTU012a7xHiB+gINJY17ouLloxiZZelSHgfx/Gpy5jXPDjjc88m6LMmeBoFQNkN407ZpDU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CJiDFA9w21L1rtuKgY2y+CcIfnkIrZaW1XwGqT92sGU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ORQ4DsSBGoOfxJ2Fpv6p/Mv6/DIsMKyXxX8MFtRB6VpHV/kFm/ile5TQGeazwqT8oy2iJP+HXSFoG0qbB4pljCkMePN7NflDy6Qfd8GAHubAekuURpJckaRSCCOTCDgsxQksfTLfuCjnRvWlL68t5Fu0yPSTmimrwEehDGEjUzXt8vj1ES2YDLfgzy/tltovmW52H6yR7Jt8iUSlQOypKN1WDxBScMdy13iDzRGEAWB57ff6FHLmyknm61Sq3SEU6bqf86gEfEJx1OZGA6g6n22NL+b05Q1dFJWhqYDtG0ltMDg2mkwaw9HFS4hS0Mp26p49LokVC7HrRnOq6EHss69hrZC7Mg3ZoZ6VnCVLB71ajC86Hsvq3Hf7rc1+DyNqw26myDeALwnD5o768yWfusm9fG0YzRYY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CKTfydx9g/MHvLZmivBgVuXSJ96DXtNJelitaVxNxS4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "budDSHER71QdMZG3nT2m2opVz6ylrUq0usC8LyUg7LnnubtvJ5eJJ0IDjEzs5jr/yshzX6d4yfW1faVpLD6xgW0P7mKaBAZFaQVrQFXM+hU2ssLC/cj583Tl8rRFtoxIux/PuCvZEdhip52pGp/5DXi6hSwl4qEsZYB/NFUAYFgJeXz2ZskcVHM6zj04p44dygBzi9pr6qo3bncw1CtiWGKwIB9Fgjmg9JV9GUbAH8HnvNiAS/srcKvVS9SZjPP1LCOFH+QuJ2Exn7OSpy2OPT757wPN3mrY344YqNUUh8SqBgUKaowgYy9j6QRbnX4FyWpPQ8FqyERlwx90Z8pM6NnyDiUGGcJBeGG66nronEZ6o7CtkzxHsXO85VVHqKq+RGHyv2cHExIx5wqJH2X0XVyZ8NwWYR7d", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CL0BxnOw38KJ2ppEwTSYrcjEQC5+aiq0Z4mRcI6Uqks", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mTMX6yO2pFnBcyHZhlQSN+kk5LYnd6yKeq+sF25SrcfqA6sk01rrMm/7MYiIb4Ee1YgFzGHiKXs8CtS5qXDun4qk+Gi2F/zWamayOZJWdjsfuAFqj6SSgXIMGmbH9h+lLdmhtjg1arRskX4IcEwCwh2ht+ebk3otgvDxWoHXz0trxDVnXZEig3W5UgkukFYA3aKWCoQnnFu/vUZfNs+zSMCTaarP21WQqaOA/Rf9oriaQwyg9NxXC3OjglcVoPfGgugkbI9QvAifsg0oZkDB5Jli/Jf6YN2wSZnf9e4dSTAeIsQv2VoIT9o+FBbfnobHcyxzJioSN7GnnAAZsBsxyhmXcRB6DMxcBexgBA8mpxPoREzeicdqgGTvPBUfu8JtAlpD7JOnHNOLFMjtJ+ruHCIokQPvmVCo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CLf/pK7d9oMvOjwYbdJH+hwjDTDF0XtvxJD7Wwz3C5U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tHcIuDvbT7Eyi+CHoOEEVbHHrNL8YBtLvOxAYBuuF56+7MoLSxSiM7X/tnnJnW9lv0qO//MxAVaw7wDlWUtHfm+eBuxy3tBlC4BQTZyw1v2DhMOtoZyAnDvzi5aa+i/9lgcqqCwYgwAra4JPgZMDtyUhgpEK+1fzXiIGGdEHBNe3ZyE/XVqZx8kzOk2+kHcrq6k0EloOHGsRJJsD0n1VgCJJTIhsKwDp6dZu8/fHfe2A3VqeYpFlcV9QN3iIlxg9qdRPc7J4GAjfVhej0qDNHfi53WJsKAxJ3uJw0oc6O9umcrKExJHK5VuDU1fY0tn8vg/MolIqBq0s86ExtorhcYW8l4bB2t6OwTKA3sclksWsg+UsUxMP7o+0vBvPYcRZlvbZrWZ/tu3er0ZB3p7T5t3P19CaUG9x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CLotkSmGQe8qVqCmHvXYA+gWXReAQJeio4YdFfVmYlE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bWzBS1nRajVaxUv8+tA3iVZyRTDlielxo2Hjfm5iUwm2dvrIw5KoHFCXNBrqF96uCmHh3f0Fm97rZsFe7G+dMtcBNuanm2bIw2gZfwBM8i2m3/iuhuT0cMpKu6IME4awEUf8bxVEPDKqOK8RQfEaAFb54IK+3OmP9rE0aFwSLvzpwlgtvd6TwsEhf3KUBVUdIcYIk7J5gktTUZRoQqBRMmpYjgBv/ioECSJg8M2Ki9zOnDWFTEiUEaVih0M7OxUHRT4x6EWqJ8V+tRNhPqC6g412vFE91cCqpctTkpPAS1w/nA1Z8imwvou4UGfuWVeKNItRJjfFQW/gS3DHuTiG0mRaw6/+ah9go5+0OejZtiX6ziZLTW0zPcP1qCjstHZ2PdVnKfZdt5iWEPOtNSC0gpTqn1HCQPrm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CNSoDtxPFGp3mVG7zAhjTEOBpUcHtoXaPd7BA2pqzXo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Qwq+LVCUOT/kZb/p8sdbb08QOeaBQ9QJOBLYqrqYCyDphBsAbGIC4o1XBn6+BY/s3tKH6/Xfw1cYr8Rsbu+2JVD9KtcZ0d+eduZPstDof9EBjELzlU2V6p1tRdYxUOQmS1lsErMJAUBtPEScEeSXAnM1caLzRccvKoC690gtvsawANIsqTeWCrF0wzrwkjIqZyG00DNr3ophSQVBIDyscrAIh+AZUuhud++G1koQNatMXOFZwb8AgjkV0Dr+1qUCSHSfDJK7aXzi5D0DfrmgVMu40IuJgcCs++OAyf9qo7A4QqJpo1hz/3yvO0vgzo6AQ27xA48FlCaCxo9kY263EZmk3EdjoDspKvTjQ/rJ+XrALmLfpXOwhDF5I5a4WCpiesaSZpBCsYYFTi+IwyG/9HCgz0+xFp4/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CObg5NAgrph/cWZpivfhwty9pUFx7Z3atwpspl1P8jY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4GGEouKB3KPfPYU3Fjx9SUr9XFmFJ2mbXHkE3mtcdEpwE7eLoG6lirc/VHRC95CKzDTwXeYNqdZMIJ81tNzFbAagSDaV7/oMesz+09/ieeLSmXXF3aOVBCDeVDnKNmS/yCACrp6ejPy12b21RfOQNxtSDIgkU+HOfuVv/Mz7i3p0l0RB5FNCZmZVdsAhB7yAIu5G+4kafBku+XNJVUhChX/IltEH+JPF/FaXzRSYcSYi0jFXnDvz/Ld4wezNRbfijbEdkRW/HWHCle7cS2n7FJU/sINqujIhOztve7G7ue070/iCvcbfSS5UAvH6hRLijsxk/oENgsl7fSxxzB4NEZsF/vlcxMdFwpqM0I9kXg2npz6Xdp5S9Gs0vNyy55g1WA/zM2fo55tN4Kc1MGJPN/QO0V97ii6H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "COpm78jvqYpVy3iZKOQZcJETkplhU1NF51aiwUZMYiA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+NGh5aiMbXgr0d2mkufUOnGR/khwimh7jePbzef6aZHkex/OSRtrkhC0fCGLrvGyeaymhCE58hdZgvV2XLvLbrxvxi5n2OMqwKwXDyXztDEf2N5KQZa//PH9Rpl3kEJ/gyJS15m561wqfN8HCfeLRc72WhDE1YAy7rhj27YJoym/3pRwuR2AeOZ6dswNjQHx33am5B4u0uj7Yz6u8MrRfODyJAxSLM064zz0IxQxMGFt4f5Mz/uiqA21/S9JmnMN7zkdjG030e1mut1wx2fPQeRlYPBsoL//yq/Nw4ym1lcfeFQqC2vlc8GVJZxFYRiKLAnaDZvmekdrFXvRRAoBx/SJXZ6QaiF+aECkz2cBlEg6igo5WVsAgugvuM5lg661hPbg/urzHiyreTqTs7f5UXkUM3g3AFFp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "COvmbSFnabTfumuISv7WaFf2dAmQpMVdkUcPst3DZVo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KnEAHhYlPkGGm2CJ+ddQa7sk57N9i/Iz14OS5ROM3jlFIZUU7a06/unZD9GSNTsvq1KUb/o8dUCJ+gS2oFmVGkaCf7h1kAdz1soX9xo4P+N22uIS/Yt84U6l2+aov0hMTeo9Z8qOJrttbz5YWAjDbs+DlD+Py/9xJsg8VaXKWHdueGzH4t5sdDiApe17z161cfLy9x0ZOhUZyLNi6vbTwjZYuYhi+QElOrDTKk/xc6bwrrZMk7CXgTn9TNOOsT9+SKdtQJIDcX2RJvAoCAJXJxucysFeJugne+SCiXETSnxKB0Y/ayZBWnzDqX+v9iLZLRJ7K8Rps4zX1QJTWFiOMqK8SoUN5krm2jGVGuBcQa0mFA5VWGbKIVAFPN3aHaBzaNJaprUNHM6ErcjsteSIAFaFUgD11ET9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CS65OeCMjTNYeabeXhBgF/rt5gVMjijyHsDe8RI51Gk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ip33rlbXbO38nr16fhmKyAbhqGKhwQsjktWCeQRgLMN235lHQzlHDnGAQQJWaXfrOazsFgDIG7e6Zms/1cylNe7yX58lWODeX2A0wQJd7uDBc6dZWvdi29r1o9WRRdl3of8xJNHeZW+P+y/W5qogdG/Lil7+Qcim+3CIqU/uZugLCrKiR0Nxwd2ImEJyuYnqpuzg7wxrzjWPVYVQoQHuIZUT0LNQGLKFWDlUXaVAwPugWvvmj62bOjlUJBhASNMebEM95SO+aqzycQ0yap8rZ5N415LfYCn2GdUJbEIqPKOUY0CL9n0AsREMV/vzuoPP8hS+lXrUz29p98SZiJCkERkXnujuS4Ifgjfdk18sLAmmUpEmUHJ6SpEL7F2tTUiZf9B6EkEsWkw8JRQ0bndbo5oQLteOQ7N3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CSQe3iS0dI5MA5D8o3i6ctF3hyYoLqrmeIWRJLHYZow", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fLxqxEy5620peAyfsg7Crrj84XY92NTKDMgwa3hOpIng6pqwsYeFhUm9P1sYGeRYp5I7X9ySdke1e6AJ1D3uk+YSB3Nosz45mawXQceUtrjBSA8aRCS4/ewsZiQ9SJW6LCDwcNZJFOzJxMEVZSwRRpiQBxetFFX0R39H4FNLR9ApmCgM9gl4zWmPCk2fhgmoFDmGSWghh2YetPmcvuDMKOQdyuY4izvgCxafvTXJ/bCbzr3Et03qr0IWBOhUW+jmPTJuy78I8wWOgc3XvTthVp9Bjlnw7oTMbnl7v2c1VUCojtO8zoww0coAHq/31sThmNwuKNmTlBvBTdal1fAu2zMVcDTX/H7Oh6E6skYttH8riKeyCzw2Ff7wJMPIyBYABRHxSltr7OdmGEbMPHFC+Zj3kF/TKZre", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CTo0Q1e9OXEfz86Jlh+2pcF2yPWhXJRlPQJEYxfC5eM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9VuxOK+jEkYeyMzxylW+PgE/JRQuCU9V/JC4xon7eJjvArVCjes1fkCY1YUPoKnkEJf9Z9589rhYfds4Gw6nZ6KFaOiirc1YkU5E0DczrbbJgcNDcD5IkwFZXiSF4k+1bek1CkphXDdPTltnE5eusSb6vUTMDe821GI0pFq16xFHkhZwGLYv1WAGlik3uIkVy/t2GTpXt43Nug7RVL7LLECZAjFUs8FgfPXpEwPdiBtLk1p82awNPwsxMKnZ7jam6oNb9kMANyfrUoWuRqKKsOHYzjvVwd1PIVYYj1yhmG2SrZ0awsPw3zYOR9ElAiyBy74r/PNJYZwmNHcHi0Bl+qJmnb/tQ+DitkHv/XkyXl4NgtI+Yb8QujD4uE3C8bv2U+UDnMv3pDEZMYcBgueMOmWnumtuPsoU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CWRDDqghPbIiu9kZgri6enLG3ORgmyqv7/tT5vxe+08", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0IXL6up42TeKAEnRil8L58YBjhHaluLP6tvESCKfScUfBuXGW4lYGJ7Sju2/XE5Zvyn9lA0r8ASO0FjCxcT+T3ZiM+cFvselYLtJYmPciiaYZVb4maENlyfeIwrg5C4yJ0YpVxgpq1ie8a1FNbm2e9ujli9woP/lHaffxhx195hph4CdBPOnma+tl0n+O+Ql/3/VBMhTDxVb31nbyE6pfTH6ktYmgIBi7nYW/EZ5VIIG2QOcDz823enNle8x5KVqy+XlNVDV/Mzw1rOFymQvWBTsB4d0g3pV9t0mjRn9yjqCwh5mo7BVQZUH76fVC1JNLzFE23nnj9iIw+zcJfyN5f6DlWkDjrQ1rZd01Wl9PTBqavDlcK3Acu4jgBW16lKeM6dNYKGKTKEZjVSSpX7hjUJo7hqtoMoP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CWSio0IjYO/4Avut3UkdbqIGZ5Detja12QQ1TH0yvDg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f3/8AaTUO0HTKjw/gnx6heAPtDuAnB4Ft+/0CivyRv7sM6VL5B3yOJQ50DfjM7N5N3XdQX7wCx9998q+9i6zLcr+658Csmu79nhrawEVFBeiGGFb5rBn0LGsc5seWHHzU1D2hVzo/Th8yPYzciHeVLr68nhotw0Xiaabd5mw/ekYY+CB2KyakHfuyo9ZEaGncfQIlu6lf0okJVZ3qmk85tqEt4cm+J7neLZEOMkMcnGal3EWf96+fL0qSz9vmR2sfoFRHHlY2WehvVPsnLM3ncT9/GmcAWAuDKl5LZU7Pn8OsyZ1UVK419whSWx8S9HgbmDPIQ7bCMEp4zuSSnSTW8fk/pmEQY2DZ49zhu1pXTkxXOGXIJ4xDxm1lfgEK55/ck11hZSXnRf/CJ9F+7wuyNDnkLWimLvu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CWWMWdOYYQp5f5g/5bHB5S2T+aW4XxAMrcRRj0CBKYg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "H5nEIiRIu4NpLrjj043qjmFOubacFHgj3MZzBVyNWWQLD/Qy+7YTuYRbnEAxa3FaNqQ2G2/Y1IuBh49bvmXvsGKp6E6uhRGyf9GcRn38Gp8xm/RnOHFMEIQuuiAPBoONJ/C4RpUm+9pGE1sC/HDK1QufWbpwFe/VK5QaQqGSAtAq9fs4PJ4WAxxdROnXxyMy0K/Az0zf6kHhNcStKpDUq0pHyiNIHhaDnu+D/Ek3yAG8alY3IFgC1rclGrLoHjBc02EPHr60P3mzF1A0Yr6/mkqJTXECjE/gUVgIBPBCTE2sJhVfbq4AMkR9G+f33CbzCH1l39AdS5yNSKDMZZnSDXWTJE4Lu5GMc4fN72SZWMzz+u2K121g/q6Pi1Dzr+TibMH3goQOrVP4r0og8qQAyc5D51Hm4d2N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CYBvrUCjlBHI75Tpolq8UuMif/gd1Axq7Fydnhn6u8k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zcSpK9/0KAurFcVbC8Ls1g+qhMJ99TystqR8lXfqj/s82GDVsx6pRX1DYTWTxLWZ09PUeU+vCuHM8mWz3W8MoIDBsjbz/Sdr/iy7MoNh+rCmJM8CJo0smKjAvt6SFW7xV5x/c5//kpix4+6OVPC8Wuexk/Ukq0kPQ/rIAuLRpuH7ZcbaVAC8n8A4N7VVDy+lVzZ7f09NdsL2CNEIfBnP8Sm2k+i4FDMPDVSSqfBnPZIDM6CtRXPbTlom87KqssifldlMwPUQkRVDMiUGqD/zGfdxJf40VKAcE/kgsTt2v7Lb4B7p1Tur/d8CV3AEWo+kq7hQmhgJPp/6nUcw3klf/dA9ClNfVAh6EUK6Fxv8erAH7BiUllksbTSwI69BF/6Pu9e0VM00sFGhVCK/dtUY0KXdYs6P7GpQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CYYkcwsNWCCkHRQXRTxuJ00kuzk+Lip8LJk2LfIpRj0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fSoDj67pIUQQAtLbTeoipXPETZd958r5oojRyjucMRX5ef22WTrzpLFmtP7D7WZfJyNP+GEQjHtcTFd1a239uBmBuXyPG51DlCXaXi0t0zaIjHhsevr6gIqzuCfFwyRjG1boxxZK25X7+KbHrdqgwEDEqj4PJwf3cJg2I81VXRB39CLbvM6iHlkVgz/Tw07Z8xa6zxiMYudq1y/h0Y85411U+3f9wm5k1eOBi8L4iCZ6MqU1ec5XVfu9PrDNwPyRVCbYjqoZGntDpouDsR8N4d0lZUH2EjQpDb0QS6fbGD2Klaghf8ol4x5GuQ3zYLUvksch2peSi9q/Ii/e/BUhDLQqLlpBOUIqfpwVdAa7nYQeauFYpRTAMvNVjiT4iqHIQzLJDvY5FxbpP7tboQd3v940B0a9/wHG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CaUNSzPS/hiK6ACE0rmmVpBJoVLgkmGS86yqWovmlJw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GYEt3FrS89Ja4D6JclQIVo+rmV0QVpsoXISH/kRD/DYYixUA0M41x3OJka/cXYoKf0casIgTh4OSz02egBDXMfFiFFRfzRBYBlMhQ+SobDyBW4FGdcXL79sR7C5srMW1Jp2rZOrK1wXRN3EI76giJe0uQAWOMV3BnYbtdR6PeMZB31yqV9UQQA7p5ied8PCnTT7GDhunr+std1HlC5y0BDLCSs4Ro56vMlP4T3LRmm2J4RACTRw3Asvetq2JBYsfyL567jnAmAaVGh1uNo680weLNTB4EIv1gak5rtcnp15RaKjj7K81Bcq13D4A8mGSgxPHw01kWbwdnl2+ospoTNrvLN/XbHJ8g7HqE1LxZ9zdZqDl02FIg6xpEGEnaUqX8i+E61n5/t9ZQujnyFO0iAikiyc/kVzR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Cao+bKJ1GWTMWo/3MVcFIQDGKuYKAVnc+szrjQzdmzA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CUiE3T4W2nNigYSd9s+4hGXSCpanoLdoCqr6RGXxqrErJWPNZ7qL7cLtEIBzS76anXbATpiLJAl5fAc85GOECgwVvXvwbgE3CJKo9AT4Rnq0926WSMVgjGxfOefg9w2jsuBN9AQH8HSNn916zGZxhl7TaU5BACWYpTJijMoadNpefc6YygutpDo3Y0P1Ry8rZsRb30P7cBXQ7TKs3nZrL9gKJN7EHWctg7uCnmdPgoFDUphW76yP7HM7bWd8YuBsIf/3g9v/wt2/MQ+6iRCHm5b1UODZNWoIQ+l2eh41A77Ft4x6kV2Q66P1aGeQqvnI5lH68P6zIAbmi9NPpe3skkob+raBJ6ijjIUn0u0pNht/svci5QNCROCS3+dE0xI5VIDaTQ17XKh8tFiajgptx+aypzYksg5w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CcDfYVE+1Nw5asNx32mEAMIMUkl14JdWwx5+A7HikdE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iqyfjumhd6uAJBAcp18VeQRKpOeF/psMoULHJ59Tk1LoNu4p3Sy+kibvEndo16uvsjnONmiBD1BhLVufZ5KK4aglpvOzYhrirhIhDawTDqBHdxVTE0dMQN2J6C/0N6vSyUaFi2uuAgEb+BCPkdP5LulT8zr5l8mS+ZcO0HROIue94EFU71nQfZgyzW3gDBFodYSrPtRiOQ5YKFFtWZNSPVOri9aEHCdcoXVNaY+gJ53T5OkAGcBi33knGLyHpu1uybs89EwurSGGe8gTl5eMaIzvyzrGRXUqmm7vFug7YSuJsFkQqrEuGFH8dG+y8m0xhj669F196Euq6flCp685b9pTcJeb35TVbHxjG556E2SnLo1ZC1JHoKUarathxi3QeJgAskppKEwo0YAwuNFTYe4RZk22zaaD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CdW8z0qdlRQVM3nNYdwVT7e9XchZJgHdbOxB9d9v+CE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rA6HiYkV0cMUtu4W+s4Zyy/Z4HJIreQlvDmcdLt5/nTj2peIS6xft2yk7EkdzTnSG2vo/velCEIkk2mwhckXP3Nc5lV8zdOW0c4s0DYraLBJcdhe4jYKgjdsSjbLALpV/KlHvBhBpFhNkaD6ayvq2hBCl/xXYqQDx7Z1qg+pzdhfpCqVRgiflJZ8HI7WWim2APn3sin2bvMbvmlKnuYZos+V0P7RiWN1wBa5DN/LyhFDIqe19fWeqnYXJp5vi2XsVGnUzvPN0zDH7c0H7GcQr8hyR7myr1hfZP7r+diFWUnyjOYdHdnWZW0VpQ7cbQ9+P4C2WRzUQy+nvRN4bo4ZDJoCTX6iCjX48MKgt4jN74R8lVq3Rp12odTRB7S9tYe7t6wH52DnPSr0RFn7ZFjS3D6mPNU4oiC5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Cdt6BrZlc9QQVQZ0sWU7gQJLHa0f96ryD2orCMra7Qs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HeD7GCBpaK8h7PDSVEnTuztN0DJJWlpj8Zd9KDh7rgi0viSExzfdDuSY0FfIA5MQCtCia+et6L0pnxCOV8MDlDfAW/Kv3eO1r2EXTYGNMYEMLRZat/dKODclidb7wcNVdgHI4vCKAzPog0ReIdCAtJG8Xl2C/fFhFcFVJkwj/62Hy4f1MGBfQ6dL4kd07hZkDwoD1HUIZoDAlXkOHNt68rNP5IhAMxJIBLF6ZOYJbltAREZ621nq7QTpeW4NbaC46wG4qZu1k0iVk8ZxAs3IIV3An1AtzMUeXYs30o0z9Q7/GmarYeiuRtfngtYYegZZ7V/B4aMU2QfTQlZN1EW/poD06f6Fve64FAQq2iOJwUoqLobz8yaq0q89eFJXnteLXBA2YD23O34HKQhV04j1+GM9nsgI5yea", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Cf9TfdSDIfZ98Uq7bPgdew3/XO6Bk5tk57CVV69cuPM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Tohz+uV+wx/vfuVexSj9N3Ty86P4BjReMbLP9KAHyQU5ygvLhP+kd4Da9KLhP0egVV+6VdHidmLQ/6oe8wOmKLXEujVMDE2Fn+F9Bel7rUyvaE8GQzJsei7E1XbUsxIVEE/nrHTR7XVusosTMi13sM4+xg1BE0QYNpFqxHeNvQK5Rd+lU6r0MSoC8z6moz4Z2WXTl9DermFisU1unMc7T9o6DgkcdoDInhLwGxbFXMh7MbmQhUYLgsZPiHEUm8vU1Smxb8eX4GxDFEdtTD2V1FS28+8ooBmZgUss5QjyQRqrlUfn6anjmNZQDrGKlfYRhSg/VO5oa5HfYf3lStqQVGk3GLTPdwQ82ji0PcC4P/jNkVL6FXrawU5FSYU44+ge3oLCAlZP3WEMFXML19cKymcEft4Oxx+P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CfdewX9OuG0Cij4m1dkWEBjpjb/GdZe0iYDxY1816gk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "64Y3CtKmaPG/7/TK66jfZ4geVAl89TpFEKHJjjeiWUnMkLfb0QqiKw05EA8az8KRjIyFk+8RCTc0alvQ7GjNwqBsBScOJmIQwFClSCqPS+dCS/BPCxDOeBbI7GsrlyGaegWcyzoRmcWcgVhOJo+zZQADenFsTBA2HdqShan/+ZuQ1bHfrUnkb4NWpf3TjqBCC1V8cnNj+flfTQEqmyBe8oOXdEHcV9NT6C7vi96qegeERlMG9kdCTVxBeBKD26i+N8pBWr6FHJSZkStK3WA/PX7nF8MKA2uWkPG3gdVosCUDiKP7VT8WwOBCyiKYbJgj3js0veU/LwSW0TP14UKBMwS9QQlP4W9OFNj2aO0QMB3NWnm7J2vF+CA1JEnoClFPGSD/oYql0BqKck7A338RKW+ttwEAoaPP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CgealvcHdDGafnM6/wHypxtlh5f4vJa1HGi9iKqaJMo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tdbzc+cX8qa8Ei8c4y+HJBdFTklZIr1aWD9ll74YC0Zfs//izcm7TRtXXoJpSz93l3yqzs78DKvtjZguk3A3AjcO3KhG/DVg88toc7YciRFA/1mOwN5aIn+j2FjjzlWnXKSoamdvXkjz2Jrv8g5C5QHuxzrx8GvpnWigHdC1KMrmv0C54Hl+qBPw/J68g2j7YmbQWNe/5JutKp7kWILDvoBifm8/0A7bmWGmrAXRfH3FZaLRw1vbG0ZW9oyZkdlooZPzccpcs7oz85/eqPt2/9I168CDgamUCK8HtG2kX+C+h+0Ont8nI+tv0x10lRVv+RDDNulYBAH21uZNvXuFmzJaiMdvKvzhOkLJE1JJUkYq+NT1NWZfm1yuLPXTJZFxoaNytUBJVr+0CdNDXaFN4qF1IBVCxkM/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CimfkyPym2Kl1Sh+2YXrFjf5u8lg3i6XvOeDZSfT77k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uIq+BVJX6/P0fsF/eOUlvPJHnk2h9ImTEKymPwdWGxDwtTGQksZufBAKc4JnAz/mta3K0QmT2vz/obcQfK2yAIPNrg/mV0wmsHB3FFe54dex8+kTiQad08D5o2Z22NPTSqzYJQZJuiDYvuG1uHLYfvc2eWxXuxGtNP6sgLkubOliZuDmduPhGNKbWDLvHZgJruf8pUNDPS9FiuEKiT5isOulQratnQC1vJVeYctIBqbhmR1eCcdmo7+U3vVZiLQ9+FFKI3dmaUmOLcwMPJBTIFYPigSQfTWcb815RkS1pWFpKulFKMhgAGBwm1C0m9wO1pqR0B9gNx9qg0Ig3xX3pmLRzyew54+BvT7a9zLAfmKeS6gY8jU8vLYE94QHvAK9MGaNP9gdPuuUlio1MMZ7vqgD+KDYh3eN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Cj9i9WKPtV0Bzvtaj390hc7IJ5UEnRYTbCKd2K+EpEo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2NS7d3JWVjnUD0XMGOIjFWjREfd6f94nFQq4WsDMtTlz/9ozYUdGRE21QzzDQzSAybpGbY2uvvIt5ervzy0Ehl1jdFtjh0gtrTdxWVkajjx6UHHHcSVJV4AttwSOib7bIMa5QeXOV9vNnPw6/9TZ83PtefPybneQwlk0OkSSEvcF+zmExbZy1IQXkBJooNDnRnEHWTRCVn6nwo9qQqvhwpVBbAA6iOrKgynW5lzOY2zRafBXfTgYKQuY0ziDM5SRhGTsnUBAC4ApsUq2SluXCfmz8qTporyQ2qZEN3NeaWPEzmzFi3+VB562vVA2l47h/qsyn5Rd1Uq6//0RJr5n+qqWRbSEUFL/mzTuFVy741MKqwjGbk4RULBwI76KVwOUTotMNqJjamJPwIzsiEwoARtfS7pC/asX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ck8BlmFXEpGSMaDUi/OcwKb8x0KwLtimupl3708RmNI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KfAVEiaCJipDCYnf4WZN/eJa/umGTplloB32riVhq/h9p+RoqCWi0UTlcvpAiVOPla0GFpM+oUZ3j7IFD0vNL3XINC9jYUpvxTH0flr1erc11LxuhzzxdYbP8cftLegZ5LIFyWMOIrSoIwznem5K69707vJB7nfvlywqehTh9w5I6qnk3ldYibShCWBu8cRTqHZ9Na0Vk+FYCMEiYeAp0IUxbfCOQvZBSI/iH+rYli5QDwPo4k0SxysI2IyzzuKZ8lY3zEbwAbUOVclu3KQ/Lwku7CbuKJqqFcoa79Cu1xxcvWJy+ydWJ48FlvI3mMpXn0gnKMbM6IxLPV4vYrjsWPgbIr4BAxf7kXdhRcD7MrW3L9+18knPvNIC/uRbwazurKXeT5BYW56dd82ox1l7Dmh51RJfxwwE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CkDGiAC72tJz+qu+oXMUqsqqs54T933C8f2gCz7+Cs8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VCejTSmXNz0uFwtJ8KRhvai6hSyhReJHjJuQb+C5ukG8SxMoIMgzT4SCeTEQmAb5Jg7n5O2yHv5mgcpMsMBSL84QyjvIPQV+blycpDDUhT+Vk0SvscGzU/k6eLW6XAvx1HdUEUb+YLxNdS7C2JRnM1HAch4wM/OvUOOoAGCc+unULtgLVA/El3Ju3NHTzvXTEi13MwV9Gy2j8iY6NE0Rxc1zDu1LPMeMoB2O08sotCxPVUaAPnWYY8SR7WpqminKKQ3h0z037quTKcr8nN0/Ea7NgS10sGT0VQcxNtKN/PR47bJ5JIlo35k4QX9lqSAmqdVTxI+uqudeankllUJzOHLhA6J+hj56Gi7iBxA8Fxua13SUzZdaihM01D+pOkrW4d9PKk5ENVH/pb7DR6HdAflBewLRwr1I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CkcNEO4wAG6UzclIMQaAabDcqtH/q2+feGpidHtB5Bk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yKPNzX7WAdS4Exc+HFWUoBSMdoZQjZz8SmNlq1pAU/6aFuZBuKD00Bkke+Ahjg3+O6LTKuVi4CLVgWQu1pd4bdARIwEhJX/ZpEHvRZBJDkDwRr/eXKldDHiBaOdMQKuwSHUN6N61VLlztVviGdcYk2pTOoHZT3lXWAVDzbmu77cwvdNwMnclgYkz4JeNjzE8p+6n13wc6nINb8Kds38SsBcKDtr/opwaU4KMSGhFuoIjIwhiKui3/r1ma+dOJBuLxiVdatzxumwWvNZd4ReZIFwSf2XbibrktHLT1Vwn99ZVFSJKX9oOqLmuaJ4kaNevorZBM8qzK/WJrLT/sU9ApnocAfJYtA1yripM0q5GHXzB7JsNIsyWu4qdt1agO3xrSR5P5NWO28NwzbwqfVrqEkZzGVBNbUte", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CkpEEX5hZ4JiGhJIAaUQTw1je9+nM3l1EnwU5Pz9on4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6D2XDakatsJfZgc7BRD0yAsjrh3GTeOZTG6z0kgq+/aswJHhkiTyHuVakzjI46nC21dUR8tf9Tjk+Sg9q+K2aOIno+txR2D4ZlhPHpNY4ACuzRVtK5PAeED4QLiCBopEzmvhvizeNG0JkNkg3oapClDFu6hC7u371hvezUf+fCOtIBnreQNdvlPvHO9gb1LwPQLrkI/H8qOiMH2ua7roMWYZAPhhRsH15B1YsjlfYhH48a+lYXsNjmrU5wwh2GBUOiAqDqxO1QsRKgn2C1PCw9jp0VXo9peJegjRZQbrUrGGgtcgoOOeBc1G7zdbV5b9oxc/n6RJvQXGlR/6ilvM4mQnnzXHjyF8LKY759llLJQ2T1zjut7nrvfbHDwHfadhZ12TPe2FHbbTaO1qu+jeiXJEziUMsj55", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Cly18Mfx4/H3iWwyyIBiBQiYvrxbaU2gypFmKNtv3fQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qYitDvN9R3uXC3Ymrosu8hSzU/kmyZWIoIZ3VkzUoWV6LFshgQq5wiFf2Q0eUT6GXSNYKngxljmf5B6LC8F+krTk4iz2mgurG/5eJ3nZhMwQZJ56Al3yGvsBn3Z6e4Mb9EGd/qh4F+ZrTwVDqdLUbINi/92JVVmapVx/k37QVCIz4ZaDMBeaps3865m1gtwDtnVHtT3toCmeHXUYj5MGXPYcdUBAEA1LR1FosiOHoej3l0E+ZOf8vWQUfkCZvwb0W9mG0mEgTEx4kB0ZkT5zddww+PB6HO5r7b093FrgM8SCSHyqRUzyeiSQVOSF14oMOvkoKl+H0AV8oNVqZcPB4lniGey/ltyrwCwV0+Pwdnj+90di5rbNpOYMhAr5OkPe8mXIfwaP0wCYXxnImLDd36SzdymOlb+U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CmLYX4+vgMz63bDrowQnKn1rzlIqF3Ch8rfPH7Oxwz8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IDWpM8i7+3fTK2Jd4QJRbX4Ke3sDW38YDECHB0G6Cw/quwDWgKEHpYg1MQmbRJW3bScd83cDolCRqUxLS9bLYOhxUbg/KiBYx24IAlVaDAzwyuSwtS2tKmoZbFmnrk4R1lmOoXrPFNQHtWExjtgnNuWiryZZpm0+wokfAUL0UboT7606pRvUn2P7AV4Rt24dMFCFK5dHBfd4FBynj5JyX4qdLAL0bpfRHGkwMnacCWdL/xj8K0VtnezwQnlZHzX1GPLf7LWMbGG0OYvLrEf3Ffyb/zKCRpkem1gw7P8PwdrXTm5b4/tD5CE+5mgKVE2TywUWR79aIf23A8sx5v+xJuKzHwEfCV3U8HThIXgYLAEzwu5nBc86h7hCaB/QV67GjHtDJ7d6VW5m3jxApgFR5EsbquoEveNf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CnHZp5va6SfqTG/RKR72g7rhLZgdQGU9XA1yClKVKew", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ftV3aApwiMQKeOaDKV2lxMUzj5JDOaCQlSsMSV8PrcXwqhW7R0A3SO1G78YBvaQkdPQWahM6GfdMXEnGnkl0YzgzSVXH88JUrmV0QsTGCb/nN/M0XKoLJxa5AV5PbXeH4o5xpSLa/owjOFSSsCaASqsTM+3CEpvaTuxXxXRgMTkEemTEcjFv+GOIIJfHIGdbVKmu0DuZgA6/zMMrOqcZoXORudGvpHDF2sE/IkV3xdbnDAwBOkhipt8h87vSVhvQpe5YM7oKQnrxIaohlTISBVPFNpC7vUHn2aCPYhPJ2YyrgZ4AomqrnjUPWwsyxdtawe6Z2bAupIkmbJgh662nLZLfH8p89Xlm8fEPOx1I+UY3UCJlsLSEAA3zYvoKlg/PWPvW/EkjqkHFSiOEWtmpM4FCekQTUPTG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CqzZFO4ip4iQiAZ4Zk/3QkZ+3KVvIPkEToQjpw+UwdQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nrRcsKS+XovlwQKxJf5WsZmiGnDiYS3sh1tay3Q2wfe5boGFmanEHnY7B89cwGAXrvqt4tAcyLvOV43SPEknZI+DQLMYBKJ3ladC4kOHR7FMUibktwvfvbrMijkZRcnka3WQr+vB32J2zjSW5xsQRbxeVH45UpEg/4ldjcMj8uM7Voh8ILinRWxTDmvdnoG/sQmHjN9s2pnvcAqYXVHIte/CAN0bz4F4/ZFC1f2wk5MbP41dYiQcUefYsUIgX8cX0EdxJDR1FF1VCW08fRQM3HaXQ5MCGCu8JZRbWxwozv2O/kQrpK5oWa6gDUWYyh9Bwhp+tyKKUd9PFHWogbbU6DpMV2/36uiHka5f9AFriF+1Lup9PqCo7TqeqkY4LXLP+safsPHGcDKG92PhQisIOsWOOSMsfo4j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Cr7mO8bkZogbsVSjEzOHlu5WELAV/szNUCFgFmlU7fI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M96XQOHHxEH07CTa6rNeNdzIMEWx1Q5Pvda44ux4L3PXEp0KWemoaZAYiLoympy4eqCLTGRcrc1G14ZOh94kmROeWcDP0yaJ1SM2RBmjPfQ6URis3+9QJ7cwV3qkmY3SU7hulM4DreYruc0yV00SDzfm+jK7Cch54eJorDOIluGiX4n20H/oPlqFAz6bY75JLLNSmeHRq2FN4i3Ep/WetaHjgkiDJ10kbpiiHj+wpZ42EPEHNyX600rMTf3Tgf2UApgjxLQn+e99f1fUcpHRBnqI+JHN7U67YxLRibA9zJs7XI8ax7CB7OGnZUYYdxSj4yJRY3qCRbXfc0qUqv/tjk0sd4/4U2bsi4QKK8LtB/3IM9vOfi/RH3iVaTRGeH8MxMKCabGa4e6+s3Yayr6CK4f+lfyxdkGQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CrKhOhkqJqqUzZk74O1XypH3bza14hWwMq2xcBhsdjs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kR0QKX5X4EAhkYWYdorC3PMWv1E0XvmqeJyS3GWX8V4ijin4UPfvsNyzKuRX/5dHnEzgN307UvbZSLyBmHmotkOcUpTTJHBuRptawUXjBQxnAA7ysGGkUcQ+il2SX6Q9Mq+aZRyw323kIXltzDKPvWQHWX9x8TAt4rGyakF+BIH+d9irBncwfJmKBsptoC0BpBAonv5/JgWAu5krkaz/AuUhdQOOY8ljiauPw9I3+CTNnbOyBjL1F3Huczq3QL+3q1mMTOvto6nehVWxTP79Inb3Y0wEO6+xuKJxTaApEF5PE/q7H7GFHcVgFDTbXfAT/osMM0lpkLZprBJ74pfdga1cN23+Mf01D/W1n7XcT5tPAqfRonHyJhcDHDJr2lKsxnNcnBhtAWKixrPqN34MiQ82gtE3LijK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CrrhK7EG3CiP12+a+sjw0Ohjz7jmplc8GHzQl6hYdLw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BJld6ccMrbeWiOjxN81lZV+Y6J3tjntWICF2I/PaVA0vJxzpjJma12W+ZKJBZJECk0JDWyk/49NGNYr/yYlZlZgMGss8IwWY6hH2xUhPiEy8DtHfkWkoqE+nyPsvQeuyIAZhHkXpDLes53lSJQwSXeIcudEdWQnvCLfQFArg8i28C+NqIhEFkqsUy0/YpCr1TNpC4DFZM18moa/slmgErkUXrrUf+yYG3loGep9n8iSJxCdvVNs5LQWMN1oyS2McmM90ZAATd4AAvL/9i3EmKPbg73nhzSg0iyygoZh5eLpG6U7HihD0Xzf17C1+YqYfztEDDTIJCI/E8kWNDFRlMAVz8DFXUvjwlPYd/E5ud2RIGYL9tLJ3Dd0FKk84Kt/rjqzj7FGgAtyYNeSq48SF/RTN2Fcswew9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CsuF7bsb79RPAsMNYK55hZsZLoWdn/Cd2CkLGMMm39o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Gzi/MUn1VpBZolVpYk7avIOuh9ijwPK9sAEdreHcw+4+tU9fUm/oBRg1BwGme+ln1idDmqWhlLb7qcH11MQDFYlW6xrTAcAQcDyfSKl4pmUwX7LUucZPefTWBwpopTlqdRfrnOWINDVII9X46YFSqZRocD44t+dvz+28cZTxtmnqrj0QmbFUy4RkokTjQfUSYqYDBBvjn3GjRKZzxv5YEu6PDQxG05at8GxqFEKI/orvT4fe9zWrh2u6GUAruBph6kanCREEfDLettJcjzpzuJMFnDhDm6rG5H2f2u4Vy99c63ZY7K4/dV7uBmw5DzUqplTsYDRAk8jxCLSSt2NttksuI9xinRz2kXJFptKeOO9CPCWzjNhY4e6o8ABqppsBuhmUiop9PT80lRGzc4SrpNAKQNVnC2K0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CtWkdOrads/yJJdp0La0EhvlVkhl+1kWX60DYkYGWfY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BS4IgZQLMFfErWchyHLfSfFGraNBSB3RwbEczQdNdy4I1u523ko5jgcKmlJHcUvQ0ie6YR703IvMCqkLqwWLK/ukRAyPMuWWCbU6NJS7FEuPQlV7PWnGhXsdwYo5e8ctR4aZVoKAvORo33aMn/9dQmjIYFAKcG9QhIhLE/L4dFVE+60lXu2Z3U9EkxbIrbe43YF1fkfFOa783kCA6TAQ8j7OwNNqn1jkGis3gJTf+Mh7Q2bEWsSjDWk3GXvzmwQ793yKj+L28SGfPzhnw4DV12YiY4YB89fHiOosI5/uNLN13p8JLPdAxrpp+RzNhZAWBN5wpa6KOgABUMmdlA7iNOJp19RftTIjbP5zm57r0qsOx5iRihuzVZkyxskyE8lt+CkT0Wh+a2CMXju2GQoz2owoXd+tx8gE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CvIa9EcJvDVCPfrpJ+6MFYKmv9usepsHn39sPIm6xE0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ap4QlDeNAYnb9qX1d3H5hLlPB/hSm8qtCUBMig146H+R2yvjpwAYtdDFbEvB0a0g9dAPOtQ/bVzTWFG20ypM8hU/VOzxGycIMUwr/JsSQPPX7gdJpCI9OkbltZnZa/+SFgHWhWImQst3kAMwuGXokCt4h124viUugPmowEroziPq/SGJG2VgWpMa5W/7AQfllR2w4Z+Ys8EuC+VUPNgzOM3Xm8/GYhzc7eqziBpfYhGnz123+GbEcimCqUEkCLX5uu/5+s0DTzXlCN461As3DBQIajgz9z2Y3yAhadWZkpTevpLqX0jxiiQfaH8F2cGgjnNvnaR76kB3KhmlSPywMeDVyabeSB9qgEnazQAV9NgEE7/cIEVoDoQzjQfjIhRvFqPfta9cD9Yc8/U4X4iNFH70rlxAfjMQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CvapUJiBdQuBaQf/tMC4jjIGvB1EusC4NT3zooPt280", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s0sbmyxqFcg36Vgn9OUeZBTZ0tp9MZ7qMBbJyMmP9uZpOBhCknECB/WWHxA31BOxHFyxhaV9w6a/7uW4Xsch4wMo3UmNPaONZCHCJmqiV+N5ZRc5Fkahisr27ZiG9HUKdqLWjH5zQiJv1mW2ueY9Cc3HyiTOu4i6c8HC2bBA16+DOrjBgQnP1l5sUEU3LovvCCHnw42S3A1pgJxmW4ERtJfYwMqstGxAtDYkDP2wqs6N7G3UYU2cK84JKU79FqEuCxch4pcDfaEmdOlEP/LLnxagM4arUcW+5aED3CZcBdJcchej40yIPrOiTEFZQml2/1A20B4CJ9+lL00tLzjMI9yItPcuq0Op08kpiZmWn7X75IQLRbxrXPxCG7tKKhATOzWQ695rkZiw+KH0/1Ma1yN5Y7Wvq7eR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Cvh0ZjFORKSyMwIzqcRPe/qJ9hsFFyKgfEmC2HOsrN4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M6DizSAt47c8ptlXzEnNBeto40HR1r6mH1Mj+/9CE0EOP/cLHustOQV0rW+6W8XTU8EglljITVLIh9Rp6dtvVHmI5JDTEwreArvKufOKcWIqeKaUFPsGp0PlyQ/zosywVvf2whZCDx1UZg8c5kl+YW/lJgzNeCusUrE6JVz5zALn/HvwLsLLpWL552bzGHCDMIeDRFRsTal3N9v6ugpDSuN/NH0byBePOdQ/F9sbCdFJVErKJ+lhpbX/PgIS4k0r1CYu0UdeA2oPv2sTKgW8JbPpH8NAeT9OQm9h/oeKBwPdsq+YQq6lx/EX+sARroVoghyfxj/wF7q0qyhrLqbp1lPBRyeLHKhpNRazMLN0MznaURnlYwKWfZZZdp2mZ0cNzUysycGCZ7z2ZVbWXGXlJSiH4S+Uwo4G", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Cvt3qzPECe9aWjBTZ+Uwcj+i9AozhYgYBubX8vywOto", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pDbglpOx4yN8WRxzN7g1HRapaWoGaWIZDmeHMsNJ2oIdnUpN8PMrQCTZDDpTxyPKl1rPFc0mlU1VNoKM1vv6lgxnGcSmAY7aXPP8bL08FFxmo01S6JERvEHoV25P78Nzr0NBZGofsVlNz5yXE1wD1KO8tAt/f0uM/uJTX4DkHvLYutk04/bYWcH2ckuepAUivyrqp3nvD+bbaEolXwDqfUq5uX2k+f4tWtZFaZXMG8AK+30+Kk90MZ+0ASY5OpXd1nOjWTukcQDGRjrVgFNeGzxWs7aLRtDj5+SVCxdXdfvmIVG/uv0yD8E8zc1amGXzmuf+i2lT7nDVs2/rkHkl0Wk5Cvfln2kYJKKnYf16RyaUjVrC7rw5Rv7YAoffhnU/rrwjVGuWYY2C4B3IeNlu9lMk+DLzQ7I5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Cwt57YSqbu/hwxUMKl0dgQfDCiGeP15xZQvFTduCvMA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4najUzh1wdaYOqtMo/bpgB52ol62HUBl6AvJ0LvZC+PaJa/MpDbXHa19nVw47fCYTAmIep/FZOWEvtDw0BUcgJqQsZxbLtAzk1SoBAtadT8LtOq+Vt5vMBsUQM/PFFCVrEgFQBQHPkSURCxXkACNkuZ5JCjHoEQmhs4hFXDL3CRwh71UxGmc07H3Me1G8KJJp2YchcripVC2oPFDW6/9rwmTHJOS1MRLuWQgxmSttCLK24X9XxbrhbJbWCMYu+PWVMSEdIJHzEgraLls2rpFykWHB9kAk6vT4Nqq3EeeAONFbRoi3+r+G9kN9GquddTOGEudGWh8lReq2PWVgWMtIMJM9Ae5jIshSOh3L9BSJMPDyTogtYGSZqqcNglofJs6UztQg6V5RK3oekZVnmKMU47OMZ6QFzjG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Cz3aY6KKUYRr3fWak1lkInCQlHGV2f8JhHj2pSNmtik", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "C/Lgmxplwbe/urYOFutSjjQ5ZvWpmCUoMRsbXFLQe6qvh79W8KhCLz1qZxvXIfdhp7pGHG5YnwNMPZ0SBRWp2IAJ+CX8+QFdXnaHvOH3LCkbS8ivKYnlkFlwQ/XGduh6eiVmqepxlcGpYOVUKfNkQFiHTsCLPeY3128iLRLF/kLpXBuyO9JlhfqE+hOShC9SNIephqnOBrRXmSBVuHbfMb3/8OkDK1f3sC4IiynTCjFp0YIJ9iDAhi/rY714bZOKEdDob9ccM/kAGOv7TzEpMGINvvvXfrHTkEIcff21pwZerrS3ioiZRWfDR6rYbTDtn1Gm48dTSCvUO5sTLP1zlTSSz+hTXVxk6+znC549Qe+w5CYkR7/NLgYmyZmBw/BVWkuVquEZTI5M8pimtJZXlZa5Tjb4iUED", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "CzKp5vqv1/kbDlvK2dqvMUR5N3nZ3BpqROjCA+ivLxI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ubk4SHKTh3ZgNFA8NKYw3/QCkSocQpim0+B1uDzXlS/AFzAQZHeA4YjLxp+xon1Otj9aMpoU0MJQKLzUoCBPe1LIeQ46XLwPgdcyWSv5aqaroKWEmiWPeZ3x02J6lY26cf81WLQy0Fzmsh1lM1KmuU8kFxrz7npXw4iiz3ExKBEcguPXmbKh62YNPzsPKUJF8Xo+js+JF990OvjAKKIuLt4KemkhXlB3QWo7YsboSgOnJyFIj55NSf50s+wWRHb/fLH7I5uswum8fgJqiUTPtwtyEQ2Wl1OUQgjrGnSiu1keKJUy83bKTRSDAFk1PkeUQ5iIZVWQNzKGe50w3d/uO0wbSVn6VAj0Ev4zZf4jCDGFkAByL/NIQ+MByV1adpYSTeywEJvU1V92dVeWzVivWvXX5BIiaHBl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "D+YyXk/nWwTeMq4NKtan97RfIjU7svNgrI2DD/AgiUk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GyDHSLgKa4KKAErdTl9zFQAbeBu7lhm/emeqVCV0ncKgLWA7s9aeLaHBsdA0lOo/KdoNhYzuCDwkjRhc55WYmeOiZqeIY6Wwb+aZfoogC+WgGLcKp0s62wpd6EMydE2OcScP0a6fAfGZMbPdGYraNUJPS12me6jN5KMbBa2sWHBS6WChg4giBCq/rJGolK+qXgqTWfwjlftf8HoZNjJLXzvFLE7KWj6E6/Kxk+3YXDES9c8fUSv/iyaNWNV3bl57B7vDcZPDXG01zK2LatWv7ZHNXW2vZbDy0x6zttmqj8kOZJD4bRtlZ+QX5hv33YPIPeUZ3dVpfRkvWGA5OqCp89KXm0iWzbeJgPOTbLbpz/V4gqpRat8uUa09Bn/QJ5JcYQRvTrwd1WwBZF6hTlokEBlXmo7rttjp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "D0gJhoGKRT6h1F7akgu7WLrKKpR/QB0xI+N1ay1LG8o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wS/IhKjceJRX7ueRoFz2cLA3uKgdyaZguTCJwvran8Okur7uvT244UCfhPB8X9skSQFaYnAG2iwbn5/vtY9kv5KnKZ6TLcHtIzQj3I2D+MrT1rj6GWFGJduwMZKdUfm/urQ+59eB+6MUCLekthJgjDhKr4oEh/pSPwvnFbWRjZm+M+X5UpXxiASrTABZfkISjaPbdjCeU4hGA8C+xAuVTKkJUTzCvNDtXoLc7MCr8MTG8RGXIgyAregd6NqyVUdAr6fRE2Was6TUIYnaG8tdvBgbW/31Eh3+BLV5DHFDh+0TH6F2ZSmUxF/gf3xFGL3pxBJM0JvOa555vGTviStrmL/DHXAQZm6ES8dkFU6O5wHHdz1CVZcAeIDri0183kXxEQuiPcMRRjZf8IatWTY98AX79SPdwkWu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "D2+Ru+UjxNmE0Xh0owUuj15w2CQ+9R0jKOmsILeZ8e4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YoFp0xoCE/6YrV8XIPLfyI62TI+nkSaLffGpUBhR70J1R4myXBxXDSe/gWaRndNmARhBABhVrcq3DEIFabLYnFaV8vcqARL9V3lPmsvwo5oisUL5k/5NAU/u/UnbCZdYiEeyOgW3SNdK80nholmpRr/+k7nA3GCITGZGVb0CK6dBrt2JMWPt844FrfkycLtYSJaR+0pUQgru1Jt6Ws5vjErj63+4ohFQKu17VTShE1gZOBDTlzshD3XpFyZ5KPQSB+RpvsJr/SLDhYCDaZi3PhVKcWmRJQaOzakgnoinbmFTU8UixTtfVtdr08NHzia3iM0jUl0n40gCe0kYhn/7AsYcCVJz6hY5nNDtr0+v0J9gnUNDAqhEOVI24WfuLUFeojLmKJH+XyFdv2Xo1cB5oY7WPay+Anpz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "D3Cjyqsw4RYo9pdiZIWHYK6q/x4yI1CtQAt6+BaRPb4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x5aJdTTWOmvGZX7VPWvxmG4KdCz5IBT0QWdYqYMjBY6hmx88mKhVODrSfuXlJwQRGYJk1Rp2wtQIsMlxHTWRRNM0V7hRMN2T5KPlfocNlFYNXk6a7mXDYQcfeY6ZIWb/XFqc0GVEk1cPPQsoGIE1RT3vsfpVXKNPG8SqX3FSkNf1OuhYWh5htP52HrXbi8dZuW/U2kPNbxKxOJi6Hkt37Vgqap4NUOvTYmLbNWdeZ5Vdo5bppBLRPumrIRKOJ5h/WlX4BVGtRVxvoP5Msx6F2qn+9+Q/g+mULNduA01nouKpgHQ3t4OEuzlUv0gFpfpx/B4uchO1JVgZgQdMH1fr8KWCpp8vCxdqI9v8eLp8LuzoxEBsrItBBt9FZV0llw2XIUHUR7xpe4kfLMxwbyxoBNQnL34nn5eL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "D5wkaiTqy+H0CBnBi81etQyd3UCItanU0BQEyT6YKLE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pJhNAop5IBtQA9twAfVVPDwveXGwOsha8WNZZVXGjCXjbMjHtDw5UFIybpVShuwDopBsPLIr4qKKzZaOSiuvUCgV9nP0LVNuxliWERgqRF9F7txRrtjtlTONbXRO//zPLn2XgfyM9g2p5xmSz/Bwqrwz5DXk2E7mKgHHj5ljsV9J63YYO7kGbGAUCzoeX78WEYaA/zQAKqwCcnj3Hynn/WrHtkot8YbL3Y4HpLAgsnQJLrA1Xqy8uosLKl2D6m15l8r8YWWro977wVrxw+A28+bpyXUHNx6SwWnlCDmS9iO5H52+s0IF3gZmBvuDeTn5Agvg2iG1q6/3pLQfahrdYvykuUVtIvQ3f8aObR0z4sH5b8ldJGueawQppzo/3e52K7h53dMLw5akf3ctX1+rrhnG36iaEr7A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "D8k45PF2LrzSEAvpWDkkptyCzLJrqZKlcXp+oaWThos", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q96IbCjEZC0IHapVtO3ZFu1/QVc5b4huSqbRQGPO3tt/P1M05Y0vKY1q8jB4eJak39Kq6x7FxZpKkV88X/I78DdqSZFr4u3Tk1ynKDlyBEjwiQDEPU4muIzalPbFzdLneaziDWpoihJVqHSgNFahYFQs7ReLFJJBsSIrcdLdJfhPlPUxReMUaSUont6OG82z8UTeWSAcF2nCmnWSgD2tdphmsJbprXzlUxLkw4vqJ+dhPRs3bWyumXytiqsgb1jt+IWGiJkxLLNpl8v2DnL64zlhwLriV0U1NRPGodCXGgN2842qk1pIMs1b4w47S/SgNEMtojPbknFu7IYfuBQQqwOpdJVutZ80swiL2ghlO7Vxz0YIGs9vfHPwQuv6HcobJhsgn99fxATYhzGX9SugQA1sWkDZb2XG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DAWG34MS2RCui9eDpQr4nBNudVctA3vV8/Acv1o27ng", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QcyRDtfHlzQ6Gr8UZDCB8TrgXQsb6lO61CbCIWNa5vXLnQ7bbzL5FJZn2PIcMTnQ1Hdi0kUBCxhGbkBmFjlfDrfJRWKoXB45x5A7hFGe7DHjVdEM269z4wXUYu1DlSmG2vuYAPJDEd3RPgTfMfBLE0/9L2SNvkjI2FFxil2KJ+AC2yK2yopwiMKaK1i58zN8+4eoYOuoKBENSkpoXtJzwDtHZZBtcOvY+Q7g1KiV7yRlFRqnalYAoBbpQG8ey99SU3XHKmOYB7rRjtzdmcyv5KY2bUQgfl3ZPZGhLZxMpCZsYP1fxCxLm46kd2gy/9Yh1+KuDzKhv1FKVMkWwOc+5OsNP3prx1WhQTax24L00ORFLp82ZONhMZrMgi1hZPpWkEZlBGet/ybWOEhDM59TZj+n4Z0kmlC1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DAZrh/Jm2VlvZYwThtu52f7aWHZt2G3sBZXtWx4QJwo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jQKSq48fyI3cs6PxzErzrGma+oGaka9Xdzv45GxMrQ+xTcdy90gX909dc8PlFjJnCvBMSXtVChhVv0Q/b2JHuiOX3oXmG84rk99KtCWi4STMwR7/t5ueNJvGINxyg0G9qxrHb4dR27mV7zuiLQ7Co1/rxo6A+hQ/5DWvLUe7fdVXzp4pP0yg2A9DXKKxWSPXby1Gi3Por2BpTznGMXyPXPTmF47eHG7M0QHGzqSO4IWQRAVMdRyuhfQThoUf8YxwCW4HcDxV/pZjtKmPTHuqyOxQqKaAkHnL1UvveyUz/LwN+bdGiaMOP0/HiBuzUQMocfyz4J4GuEdRjoytWX3mU6V3AvMuHDYZM3CaA1vjy953OICdpYp3L3wNTD74NAQDb8kBz5cqG6Tj1f6yNRZOV1WU8TZ6/qCg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DAhMtTtZuxcAxf9ngzxkpv7YNDA7t20cJ30OyFE8C2I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Eq8fspPM+BBKXhvX1fxCP6PKt6bridMorN5ei5fz/Tn8i9MIfgkYA/6kjZYLp+Dm57Fw/XNnq60weJ9BsruDwwjl9J983prsFJ14F9Pgj1xDpGsXx9Gj38vtSNtkrIX2wlqSfEvj1u0JQAsJJ/dMo3E9epku1RUOnWAaN+BDF1DPD7mixnByhhR1A4oaAJA4rY3qAJZOsMIWTMfE4XNm6CdhUvUM8R4VbKu61KTXbaoySMxhjhydwUrObYN47SwG3EcAgpqnUEe/B14LwHJFXPr/LB2q1AHjm440xguhkjeX+syqGW5/c5RygVj9c48fUjonnqHR/CIAtFjwawoQdGLZElC7yrXhMYpYF/83NGQSRwrS6uzqA44aW3hbpqCsyyybl9WCjqNZ1GNLBo/6LNyGJ8A88qiU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DBagvvx37PCezsdESwkebKw1qJLvY7JYNs5fKaFRmx0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KJb6Amwmd8NOmxxP9CGPj3uI2dUfKShPfAvf8jKxX/9x7n6gzH5DmUTJ1ucOT5lOaTwWxe6a7Cr3GZoLKTN+LAunp3o6nwP8AuPW/K0zooqKZRE3rN/QVgDoR9NlEdlnPrV4OhFRznjQO6IOdMHw52wPrhNUO4QIdbsQhRR1U7t/BGXJEdEeProMq5Q0f98awEnCdxeU3EwNNqdj38ejRHuX6qcyXRBplGTvF8jrCmk2PHHosURZW1pyBM0x4v27yPenKU3LXRyJ2iHcy5wysVNXGacQgQYxCwxYokcfx2kSlDpVlx5TC3EER5J1OPYDn+c6fvvBo8KsWXZwtBB9dI7dORfOW7J27rY3OWDgyTmElKCowlhJeT42BeteO/KjDjfrnIQl4JXVDOIFAh28w9t/INJUPfqg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DC13IL+epsQQckcv8Uwtrs3XocIjWJFY2YP6K0KYByA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yROMNEu3+99np1CSAZvoHhz6uWZ5V+dAuHo+9L0eimnPxQUvIpt6fAfWbclxZYjAT8Sw6FHwUfWeGbxToGgissQjfsch5o/ZQaga7pJUR7mjSFhcmzOigufwxEJ6EEVnYyiNW+vaZhPO1GXmtu2D1RaJOCm6H8ITRZMC/98+6829xHXcEK1RtZrTdph0/1qeQ9emyKdyWrbi4RSnn/AVLr7Aa4/tZPLKfVzZB4Jo5UfooeEkpCPBhb5+41mfC74jhEK1XkY9Pg3Mosa9a+RBA9+/49lz24pCWpxsOp21Ha30I2r0rLEsVJNYM0Di5f00MQipLWFQBg+zE7a6ojXurpTENFBYaU9qJwNBXw7MuGWXvIqVDJUYIcNfxMqY32aL/mPakqY3nOkBIoITK0lhG0iW/1kRdc9V", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DDkfqanLs2aiX4VHpXEtU8l1QZ5+UwatZifgK3QQppE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bdG5OhAGwKsVUKCZYvy7oYlTr9hVetAzMYz1RsLhPWft4tdd4122RE/85YjvPDujiGmoDTZHD48VMeFWVNJIwUw9LuTbLDu7YEc4xwRcxVEkjp2JbfPvTqDhE1xVE/O7HKWmnQS9nSfDyrVBWa2C4vem9EBpUdFXnjad7aI9iYQkEXZpjPtaKoIX2//xC71SrWrgiVEF1oIaWEn+MGJaOugs02cnK6Dokei5FW44H1cRtvEY6AIEpnZR/Ghwcekv0LPiciULXCWpBIro0AiglgjogM+R94BgnOWoZneVbi35kNEBpYAYXc6wgoYebrmYq2CMjxEKj2Zjll/2SfHb63ngMuGdRr2eO70sgYYOscwOejXACrYKN1JfcJWLSNiH1XXCeDanqfbNeDCFtoljYYLTx0AOhC4u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DFUrZtRSOzFKvtz8enYntiP2a8SXLxAyHoSHZ8DZdTg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oOnol4s4DC/rXcjIuvsn099dXSvatgNfajY5b3ixDqKZo2HJF2LFc5meVXq/8HJxz6R8mdih6yJdSYoViNzjVop/7PLCLAzbS5gG/0jS14/yesJ5vKTLJuFSCkijuSPKZL/nWP5Dunf6ggECUzv/TkPXsZ9J3FOZX7Cl0htoTwvlkFUNMa3NA04uinSzt9Y+JaDSJ7Iv6eGj5Y0/nP1n0RYlntD2rl1uKp4NH7V5twBL2ORmFR+dVDTFNAd5x8G3s4WXq0lHkUGh6GQDV+pU6pvN3+phjo/xrzj3S7Ug9QQ2EhilvtIfVC97fj69gNhlaET0drg/XFbPGY7Jqt5kcXn2mvGoNAczq74NDTgNg+YdkFu6ae/dYNgj/VNTI8s4UwQLWXSbmMAoycxF80pRzHmVlkNZAMSG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DFcfB78Qn3QNE/sjzLiRNqIY/DLLJ1e2kh2ni5pMX+U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l5GfESp6kIinDdqzWk4S0lvUOOY+SE0Pd6/1I2Na6CJTiL33jQPIh3EBQUODCqxhWeqed9NSQ27GoUBmLj1aEOZIDXPLPpuZeIT36NGJ4K9m09dAVZld2/IftacX21pbm1ZbYkQMj7jPw71ybrMCWRt6V37qVA9nS8LTzagGA/Lpbxae5C1YdWxvVG+2VhrMGOwP1AQ12ptn5qHYyxkvBH2iYDjFwut3zChGhPKCd7sbdkEUQP2RMHYodmWZPdqtiIygnfE/QT+5Uwx6hy/vvY1yI3HiBy7u4GwyJKFlTbD82ULX+CRNL2+GddxpXxYbnghNlOiwpaUAnPDKWNn29RUdL+UhVofB3Cx1HyPzyGW5ImNIOPaeKGr6W6Nsjdv1PIz+k61Xc02pznj8xUFkKDTijB4K98QM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DGDzNp31k3oPIBYm6CM7WYrnv4uXWiGVXvCmc90/UJU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bzCVlbwuBom1lDzXJExuZXjqYtWBHpvz37+Ce6gmCjikznuMeWGJcVtwnytFjfU3Ttl+IxqzKHqiBrv3sHuVXD9M+AwYP/iSiKsvQbnjshERNFBwmaG4l1EgD7Oz5o9NTngokO1P2sf0qeBA2zpkAcKL3HYZ9ztRyE9tqD5m+FwvhY28dtiy4tt8JcokjDT9ZOXGX2Xj0iWIUXO4LbmdCq/LXow00kfbQnLIT1Q7w6+tvH3yfSnigqXrV+GY4djUZvYnhVutYdNnK0fzWP1NicHj9vZ3kVkWXxrcyepTqZjR/cxfiJSCbe3QQiYuuEhTV7ZLds/49XdnWqXfrLAeGZjAErvGyrn2g42V8Ko1wOL9rXdjSjk4H4X4RABQ1fvc5SCVsboMO8WH2RZu6Jkdyx9kLS2AQDop", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DGhb66z+buNdxG0CxFamQSkec7VnlekjylF8QfvVCVs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nXUb9rimFAfVEdUYpPUhbu2kyxmYrLNOhxQAx5npjuRGjWfSkMg9MAamVocm4CwB0q4kym2k7Wchnq8d06LNM7Pl+u/0NsyjgbqT5o/4XaH7vZAK+UmYfSFY6XNzhm5MkyqMP8iD5TjJarzzlCj1gbNq84Jk6PPO0r5NanGXKpw4K1JgNth6PN5szdAsd9XJWSo2VmwgoCHv7a8ZStzqDQSQOCBRIMsRVAtdzOEMwFY8vOed5VvteH+dZvio2eIPE7cjEy3izEKCyphaIMq1PuIeXMWxyM4rei75buXzwWW99Ewwq5RW2yRLl7ojTDpQ88xZM1q55P/4Nx3j2GWdJgTevttqGYMaE5aQG+i7oscQymc15g29eTXSt0hZZpxFnWlAsfOLRx1DvP3FTtfLVsfEc8lHYIQk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DGiy9FdBaZ63SMwS+K08fkQSRGDRPcN8jFcAOGlKEv0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/Vg22/M0aBZvv7bthRb4CIvTvpQa3orl6wVa0gcUtTgRGokg6re21bifhz8PcqSbzFBsigVSr5wY6CxsY23udepwCSb2rYc+7NDirVab7V805Q5nKM+EE+PVuGUW18FayjSb+N3s6obOXVmTkBuJZAFzeyEHlt/p1EYQXRkWKLCssbHKgK6YFt+b7tFf3GR7w8XI39649H6UlDS3HN3EydDhmxSIwyS0KTJLiSrmfh94D8e5f3dKz6Keu4EKbPm82pCFeopEzddlkNp9Tavl5wLbdySZl0ay5dN57PnNaJsAcQcDuJXejhz7BC0KmveITQnAwoWuThGH8a/PhooxngratkmJ6BDUERXwYj8Cvd9oupvDl986fhQljKQHhL4ICLLd3cvNwrzMTQNyUaeIOrp82ZPGsXN9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DH+9kIgWRzJhIbhh1ipNJsxlkb3n1nfS6CPOsGodZr0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9kQnN7bZK0cDXbI066w8vfNWq3Ac1BR01n8437JFIiahXl14QSRuCD8NC4fT8Id8qgW9HCF6Bl079oO0Cz1vrO5SJyfj31Je/BatLl0NkdUQk132MkSMRwurLxcUnILUP9qmCvs/cFlWL+Fp3U5OI+jQlQ9B0q4vB1tqQLfSM/aO3e2fGtLZKZyxOqnw6FUSUfPaRdshN1ehYdEF4HPmbQsRZfzQgJ4J1CNwmd40sgVw8aT2QJJ+VtknjwdUp0uaClsTXA7AgRMWiyPZx9t0YrYd4gJtD/PSELFrRP554voIhcfRIjJBBClmimIZzEiBfgCIaNUO+G2tfxD30VsbJRkaHRgJ48TbO1Q1i1l8QWIdKS6NI7+BpZtNN4C5lwLrZas7CMzNTipHCDTn3ztNs30hauuq7mqw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DK8PZIDqdy4K9JEhYAJDjkgg5Dcf/EdUt6La//2nUnA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jwIzTiL39lSEndm7RcjucaWYlE33d1ANkWtR0Kjec3l0n44W81MOZcc6Fo3ff1AoDL+3a6+re7qdx7oH9SuZAZcLJ/2B1EFFI6B5LoEuDtbSuyeCZaul+iffjJrctn6FgsQ9OfvDTmBX/DV1eQN9jYSwohHzJoiOZWzmef/FeGDhmOF1gNcu5VcZuGc2c7gX/8PME9qJWlOlDnrnBHNLd7gzKE6rJFYxDB9byN0B1mmZBpO3nl530hcQjW4Rbpoq3HODNonxG5W+X/WNyi6vh2xLM9mqVO049pBub4FVHLG1lKhTdnUfobIQiPiTj+E3Ao2a3kl8+46bP5aTMJ46Ay/gbKvIdQ8f2Lj1XNTQ9CcCYyaySn76LAIPtSfJHfe/bjjvBWBFeV6rMqVRW1A3ZDdoGR0axqGs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DL8MISGntaK/uASBCiH4qbzr2B5CzmMsFasFHiojkLE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bTGesWO3JxmBq+LkAHNL9PyvV+3j97866/24pwQrJGHxBPSEIiO8AK9oALpFxyYCjbhR2w/kUC5bzoZH9bQIz34ZDfmWDwcTPZW/9FUfLtv6ANYtdSgL7+f+XUgi6XhcRnk6m09Cf6qb9a4o3kYTyHnJHA6lvnpWjWnOS5YVlw6K1bdQDbIqIoa8HuCUC0PpypIz5c04eIa0aYidtMUD13Pc1bQcvGk5ySPhBnRhjlItPatzMxNNOMwg44klM2TyomkznIq/m71cvdiNuinSlEKaNVaUumTijARwEkGaHHnsoUtvX9sTEjEsE2ziiHO+v2vTI4S1Oc8ibc3zdyCl6f2blHZg9QGI5jO6gAwNRXbXeQbCqR0dEiko4hdNCqNrHzHAMmSQA5H6fLWejnyR994yRHp1xMNE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DLNQKKTh4UQMbxpTYcaOQBlHsCm9yWSjdY4iYit+P9Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gYDCeHL388K2a0MG5zPI3Jo+9VYa3ic6ykn/OaGsfZsSH9d17AeBWmsidyOdmINXdO3RCwYKDbsjMvHHEInC1A4iLKqltSZfCXhKw0fFwsV3yZno93YLin6GRX1hbW3TDDcDEUc9XxB+CpG/zmpDpShPRZUv2RJqVhtC6HiCnl72zEIPVUet7ae6/im94nbRnVR0LdLfXSgPvOm6WhmunbcLOwEXdWiFLiltd9BBobeirG1bQqDjd3a+RWhT5m4r60/e67zIyVycJb47iH2n1NwMEEz0+MIdb9p72RWKpnZYeVNSr9h1nSlWy/CyQi5rM59gJCuT421WvUfJl+IHRsz6fNiPATDZaQ2NOV3/HGuZnQHcRPTrbhTjzDLWVy97ceOt5bTZRekJ0rsgScJWGe012y7BFIDB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DMj4/NhZ7eS3482PDK1kXHviZCK3dhMPq6jL9Gkvk7s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5k2YUsuvEXGuaQym+lgzo9QauIV3Yv0RI+Mg3eR1eXPzDUjQubLlZ/vD4w80BP4WnC4xkylKFwIAkYwnU5LP+ZHRN1xZLvPNwq5CIirnU4gYxPMmToyAns5BuFkHjSSRtD2OrFu+zI06t+pvuvA8VVJpqA9+6XASrljROAYvQl036ZCuU4gyBIueupqDwOzWUV9i2ediUVf9tNveRQy9Qlz16E68Nv+QAofCv9J7OFq4zPh0H1inZIBaglgqPBR+bks9Rm8Ip6buM0Ptd4iIgi2MT6EpcCX7LL9NYDtuhi+wGm+B1rWNV9EBfSU88aIqDnkGPYH0qDwbzYPFBG23ZnFGR0Urgrj13VU49BQfKgWs/b15yQ0p6DCFwiGM5SVX5vhQovRhITI6Y7yFfozWvx2+0O/qRbds", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DNlCfHh4zZvfxWInZhwE1Tvfaz51quwQIo3h1k22t/I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P9lIdnfQaffu4wos9eyoTc2wCyZmiLgbOIrQ8C7u6zlQxVaWqoIvcldHWTzMX3g2WVL/p2b1I93adiyEejKlk6rLUp/jrFrBcGup+vyvtKRnLGX7V7ao7L+RfYxN4BNOogolajVI4SoYxdaG1DwcuedqQ3I5NxBulTg8lWxJh8lhIdxnVtP3giwojo9lQzu0L0MstOZ3ti4UVJxRjeB1kVSfiRgEPvLwoI3kx5cuGG98lCyUboesIOAgP0HYjlDiNEm0lw7pfv4gcK1Gs+7qqrI8cdlQ6alpn1KhjFT4H6QmAdrTp3z2fi21tHUBd7TnD5yhGpf216RMunFm6iwNCOwuxx2Ee+E0UFQ54HzW9BlLsfSWp0Qf8XhhEWawr+A1/kP+pNNT33mgqAECoC8tye1RR1OO3a8d", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DObgt9L4Zkthq1DL2VSJ4mNNWymc0SjzBU7ah3LriZ4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Hb2yb5fXSkG4/huimLtHgrMuX+MjVyY7ZGDnc6QtsomrgagIwZ94bqhcgiN3p5JfhMA+xKrO66poQxQJZew4XyBK18Ff3xuYnTWuNsX6ji8rl7e6edDRS2Mc+XvVOY8vv2WXaXKsLqc0O9SlGjyYxDF56PZPqlggkffZ62FeFkybsBtUNWPTLlnZAhtGvBwVJ34/UarABWP+JJbWGis3tum0/ASh1HBBmO8i8lq3FYDlT8Tm3arClyES9BEcs6h0s+eWqgE4ikN3LUWueptXMfI6/29XLzAcIhh61eczXwgheG+eeszJWHGXzW/+OxLNn34Dot7P81u7YWWrIlHEbOvyLozXZoLkl7WLkO4uuL1syRD6uQUZLsncKvUf9Neg7EKwSpT5mf58INaHwhL5tDjQpar7nnuf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DP6vitNFAeFeI9qVcB2VD218J/H+lBY0pAMe/U/ZnEw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KEYgfmB0HYNuCf2yPgbQ88s8BPFThrCo1sNBONSeBr37xatavYsGLTDDP6gX3MKdzjKEYde9OMiRCGQ0Be/7UV8WWzcIDZqagmSpa3zVmk5K1HbPyMGkvVzVZSniKozw+ZZAQ9wXXRCkHzzeXrq1EB0CR2TPm/9TgM0naAfZUY0PRkMb1Wq+YotHkTEDPhuq+aHptMA6jT7Qi4n7zt1BSlXA9EfV+dvjDQXMXXAA4AAMFqhlwLLZWDQ0G3FEhkQbx/sSMloMiY3BUkYxDw5wjjPzPMXcB5Eeo52d+PKX+RAgpD2ZduAY3Ex0NzdvcEoHLoZT3U4nzLe0dhcnr6OnunM78SWvN6LcTmirVIa1vC/alKOBDgJuC9t7QCzjdrqQK9rHCLF+MjkP1AmReJN5reoO/KmqjysH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DPV+RBcNWKUaacXqLeA4U4YIe43s5l1r9ddkUupFrZk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B3/TtqqQEMLU2eAwjw1CSu9zjzwR9uwQtr0HvSRMeCUpiPaMv642a1NQX/Yo8r+8Aix6AmFum2CNHUTUcYuyxQFfxYrd3+TOrT3SmgGgy7dfthIxZ2MRV0LMausfPIUErySgo9BHZ7te8qKFZSCm0byH/wVn/0L/fG7AArpK1wVH7PPHPEEDyQP7A3AujO7idlsMn4tHrNMtiWxPVLahSmsibsPQkMrBBO9CLcuP3Fw9CFIiMJz9oZlnCX5MKIHy2h8xPO44BIvLkolt4EDCMSprHIVOHZ6JClcbhDPLTTaCUhTnhd8BeL/5NFVFcXiYe/KAzst/5vZ+P1fruzMMg+OdeQgXnyYn7p5751otJ2yzh38XSDOqeNqQqP4bv/yFDnR0rLRWhcM8VROQKiKO8Ez7vGrS3amE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DPynzN9kMqMuGVa+6xpYS9jvga8t1+dyIHDWAqd3iac", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4ht/+xP4U4FtlUBTlnJxJagw951zP2HR2sULVzXFp9EkqJraNj4uT4k7daqaVf5ajKc6uVIZQ6jrEX/4ov76EjN7VelvvkXkePFAXS9BFmw9Yi5MZu7CqsGGaailHjL8+kvURhpiwRYh2PKrCcgheh3g2Qx8p1xvqpYHbfiaytxcnoBzZ+/5kI5zu5wn7Ph6OqdDpluysp3XcwhcSjCvA9OnKns18RJYw/CqAm1m8qsN90afSmn7m4Tziv3V+xaM9jOoHeIEUvpFxmPT4Dz6f8d6TTSPDeUspmtrMaeXyu3XXRStcHpFfdubLRWxlC7TX5bjWoDzBbZqDDKozk1K1ggFWwkiFRuAt+69lQ35hk5D4RS5F96ESMTMK54ZMg4iY/5zxpCLsKq6yhVIDtUH5ZUPPKMb7ULI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DQharTwMBlT9U28Zu6Fnqa7xOWggDlkiF30blJj7MtY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P6nxHfo0Wsab7mwe8z+u3n43Xug8CmaHKRqgR2PKBB45S/GDBgL9jIJh2ccQuCuScSfOJAr8UDOq5t7Ywc0ckCElgp1o6eYMuE7NDQdMPXjib3du73qoYj6X0cUj41vY7OtGEJHmow5QnHvJGLaQGZQkUQ2D/UiFnimdVQBOSF1cF1dcisOUdgONzkVx6NN5FT9LSRkxhcJ8gX4T5X4/M88lR3U+eYxH5NbfB+Rx0yHHQURbLrYHjyEMK1qOkK3RRXP9zHLfFuNPHUbz4KKK57L+8oLtaPYnXddsswmM+o8Qw8/yBQI4x5iSa3PotDF9FOtHNdD+8GLDqtXrqPghwiWI3lIfJ5uunzLxCzKPRGMK63RJKr0cnCFwdYK/N8WPaZ5kvnLnfwp4TLrcjlTgQaPuGQzcp0vS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DQjHMyT84kj/u5DlJQTS0x3avfjbL5D/XKuXsZPSXYA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OCEJX++AD4UUMxDQCHXKt2SBX42a1nylYKtGzcTVaorP4gvSzEO/TwJfikCJ7R5R8hU+nYGS5G5iOOLHcGmCFSd8Z8OPRLUav/eje2IA52BvQ41wE5fgP1DGccE5fXvu318b93VvF73azggnM7GTpC7UvcR5Iqv7JKxhBaGIES/Vu92nKjFyKUi0J2RoSsEH6WzzwGewJI1AMZ/+TR6nMe1kuKH19b89R3ZD008Ov3mZOwPl+aY/CGT2G8382WdTEVQfo2df824fyA8VV4z+wLOjpd+1cguKnrTbCqTSHcI6Kz9/jrl1JZhP4QKqPMHELrCxualpJwPzSLAnfvBO7/NiufSMtbf7ND8vbSmTyYF1SNSXifcktR41VYosoZE9VgIbi+S76a32w/NTS/dys2HihiEPrHH6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DTJIGPbTkP50yAqSMuovR+4qmEHSv517nyINL8ZUU6s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yQjA0aiaeVcqI8u+AIZLl6R8HULpO+0GN1UAWusLor2KS0exeHxzc0LE6K/j/i3nBfIi+3WItOkgDMQUZsR3Ef3SLpWO9KolwvnjCcjyzvaItfR7M0pXVuN4+odOtohA1U7OxsHCUqtnR5KW4Fhu1CZLMbEi0h89UpTFMg349FzIUzFnKbHpK5KfgCwTd4q42HYB4BO+R6G55dDsUsGWkz/9Z7jYacKbkRfhRmqYaB6taMIzKMVa07FZrF6BADG5PQLqxDSh8ZAzl2FmpW4p5HSzcZ/+vEmg2qE4+UyjU8UMyYQ2+kycdxLFpDa1VRcrannobhg+FcQHGHwLiQ7oS0nHb2YTeA2RNc+jbbmxIvFSukXZzaSJDhvQFqby+MH17d/yor/KudhF6XnLo8eVSK7sTOI6Q8By", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DTMx+6f/Kr/ZaAOzT5r5SkX5ffMzfUMIqKsdWNIdU7o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W1BGOcSidMwpVsV80xSygc7nue0f1rfikJ9ZqtbF4lQcUlJWp8dIB6bUaY4GxATcvP8mk5QK5Hyp7ZeNuFRtPoHpuxwdmGyYMvLr6V4QNkXWmvd3NOHjwToxt3SToW5m3cpTnVxHhHgfCvlnIHP1AuARHLOccezsBA8Zq6ZoICsqA6yxX18O5c6zx5psUeiMsDN5gbyBpiITrDhvUPIeQLfvRBd1QiZsaj27+s5yNxqmImdmX5uDazl3CzHuqX+YARrNyHNpkFIGUfbdLSOTRuAXNMiknplDZK3jHKDW9XXJbxWnElxhYH9mlrwjviPEhma42llLvYbp4Yuh6lGg0y2ceQ/iH4/MY7nJjTEYIKN3J2THLfi7q1A0mkVYeAW1YAcNjSRTcFPcXV82lfRTnipZKRrcXuFe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DUUwV3LXAP9jsqwsJPGLNAca+jvyU7auH2KjuRdhlhk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4X94D697L2G0ZF+lWuMjZI/nDltFgttXhQLPImqfqW74O9oo0JFa9vqkQFi1KRhn/ohQv53C33MsRMU7mSLmkgkK7eVMju/RusIK2vuFwXqkVH45fAV6BVGekXQ9B+q6yotP8TpmkzTLZnq+odaoVnjhRkyIEiG1qpK+ni+VEm9zYG81z/n7VNKXTFXyrd6vs+ZWcGeiYHH8e6MUtxMpx47Ms8JrRFtfP2OsT36wwDxLAwLhaJHGuU0gtf7go+dY5Zie34V/1dhCoojbYgHEVL94LFYVeooARwLEDVgWB9L5DoGRD0D37cnb/yalbFfMr/FJbVnhxvkxMQdl2eSPY27wi2t7qAfqX+mjh8e5b2qfYdfXq3PK6r4U96ycc92+X++ddoo7geK365+nhmXAl0s/dwG9i+gI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DUVihJbK8QQmtYDUPIOONuf3L0QqY9sNpvaof36ZCW0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YKV4goruoOeVgPAsJZfxXslynOk/1GvWeEYBe7NNxZhScKtrO9tvbQLNepjb6Z7ORISapMvBkLo/JE9UFoKxpOa+HcE9FRoFqb+7D+wPirC54CursRR0/ZhQF+RtvHFVOFeTVCkQAIlo1OjduG0+EX4WaENhuagPbVBHimIAMWUHdu87Q+sUC5aDO1BP6m9hzaaVQbNRxegY/eSlVLmF46qNqymLovA4hBJxVeXWX0baSvT/9m8g3qx6TMjmeuXEmXB7WqvYwMh0iKMJ40Ad04NmpcgR9TMeur5irSyDnyzeb+WVXsYucYOFA/SWwvaP9eKYeNx1Td0y91nyko6UoHEYrdz3cAJpAx5fHa+MsiUbD2PABrxD4ga15NandAQH1uQy0NI2AcC/QK5bEffkzcYT+v/LBllc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DVE0i68XC/G8HKxf2lq8WuEgTk6BRscSCrAxxdNp1SQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "h8laNs4S9h95ti4V57Wcj6WN/CyGF0cpSEoXfNaHnOLV4d73o57CiOp3jRDkT7+f9n3XkLNZLMnaoLxvBbRoR8ycASphrY1MB1BYlc3Hvsct/coV8NycDn4FslKo9xsdzo66EGIE81jOUbp0gePG8AzT/EZtF9KTZaGeOEg9HyfIqI37UO9KRM+wU8zYUPESwL06OnCOsd7JGGCY3qO4qC76FgVCqQ+7hn6iSXRh8vPBZ8qa1XmoMm8m2CQ3RntgIymmbhXupbD9ZGbpDgiHGzMgTHPA9Tw4RYzxOA7SxZRyPFG5o76wEfwyurelEjLyQkzHjVTDlpkpiIklihsO7houDOfgM+Z9mNzgeBoN3rZuXNt56qs4RuWCaCh9awlO6/7Sd6t4iM3/KJSZR3zcrNl+4YYcErhw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DVfL8vp0rOc7Kt2j6XpTB1fb5H8jW5A3XBZpGEvYgNY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QivawMaF24j5EUXG+b71kSuvMLjNqJmgEBCVV4r3/CbwmQFCqTy099K0X3MFFxc8XfdY3/cwTewOSdnhzYEau79pkhIb6KdzR26LTXHTFQW8M226JEtZ8ot39FnveyG5TrW21R/CYCTL/zbTc6AeWop14RDR97ZQ1+H7LC77hkHDnq7YtEEMT8PwiVrGZYTADAbHk335gWO3LrrDMCjHlF0FH5caSGV7D519z6EQi/D+HGK6NN2e6l+6mOVrsn1GNXuUPfGUqhWM81GfWktNk1QGctw5InHMIBVvmf11d9LuM+fRoc1/7O1IGlXbojW/hWIUD/GH71dbJ3QUXVezde/n35VKleeTxJGvd1EGz87w4DmZ9Pm0JvVtjA/Ul1wlsAFRWmUpsLphyF3rllVKM0lsoDic8IeJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DW4m5ZpRaosot57FrN/zheCfhJFKJ9jUqWwkGHJB4cQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0N6w8k5GPgYYhw7r1qogjljbzRIOUH06bQwpnullWAled+wQg/zMZiE58HccXJNbvjo9l71DxS/H3IaZFkvtxp74d309xXsmbnM2/Z6eqmVrkKZiBOYqBTSij1EXigSnbSipnq84mdUpxV1CGnwoxD0lQLdQ3F0XtULVMqhtmiKohs6PQf9yC1nq6SaasTKAN2zQQ40aEVnu2Ea6cvry7cW4V+ougETHgK9gcquZG9IRQUVFwFTPhe/mJkCxFy4127N5wi4zDlahRV/s3PGn2I+f7HCThP0jJgVRDZ5NlL8DQDYtTVWY7qGOjd59wfNvQJ+TSq2JHICQu/6bjb72noly2JiXTSO7V0Yj1CNMeuEKFzlSvUbAfckA//SP6wQVsTnaxKdg6joJb/3+fvSVIojI1LniS33e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DWIpxZZ+IgP71wXgi7/h/I5adGE+Ydg/rvAG8rJ0szI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QNUqFwvmJ9z2lcfPGT3j8TF1BOxZQwsKx1QS91Wf63MLDogvIn4v0wZhY06/yCeImugx0+/CoxOoRKrE7ZtOv7IcTQJcKz2l+1u6AnXxs0mwYqKv25CnkFaLYzwHsOZ1A8EB4tx98c//Yr5tvKSG9Yz86eqp97bztKP0onmYgSnWpQBhcyr3dBuH8C/k0KNNyCjlGFnQwk587Fwp0IwPesW/DBf2J6kDHnTwXRzWmMeLkipuAXg4CeA+xSOlJ+B9IbSiDhequayLeNTunx5PmFVRrP6oMKrxjThkuM9yYA3/RPs+cCsRhudOEu9jNv9fzpBS1ujG+ng2ohkJx4OnWOj9/UD3+UUlgb/O4X+FZH7Q/8ZRz0DGAxPDh5G589QDnFM+Nm/EuYA9ZDQRsLDxMne0XgQXcvGp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DX/JgWYs/czrtuEoLvvXUBEvvmU/8xCoffPhARJ3R2o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w5gZoF6970YyZj1A5v1GU2KkYVv/f/9UNzHW3pugTG/qW4Vcl3KrYTvGnDZuBpH42d68R0t1fJ/6d+voyVhaLi1JobwMBQJjjCdB5UqxrIi6QvOjkAjqQM4ydFnmnrV3CQAaM4fI7IrlnKHKBMzSMHDhGSJqrk41GVS5u8vnnW5B1aY5igJQFv6YTEb0QeAEwG3jUsFcUycem5QcviLj0OIFVUtHu7oSw1TPc7BfUDrpsChzPjTjfllNs3YJEinOHtcKAJZOxUKh9bV5sg/bTGgVKSL//kOA+1LIjQcCxjsBYGYG8CLWTF3CpcQ4tvxjkrDMvMsyPS3a8wDIQ5pZsxEGIcZhD62zEL4gQvqSMufeIRA2X2a25mPc9FOFOzvCR0FMlqJZs2ZcLlzgVCWNRESCc6Wyudtf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DXf33SAtzMoGODm22j8NrNA4AAb/pl0HF5DI1TzPTOc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SEQDgSnojpmie5gDk6XUxVGzSWxhI84Yfp85haVplWg1S5V4Jjo/Pk420+O6/boQqcdO0n1nzgnrw61JXsDxbrJqjOhJPsXr0jIcSzv65fABmaSSib+sUh3obQeyi5rypGEg2/5pkSKqc9yDCntt2eUrXDRMVCcaUQ9vRK0DBxmKatvAygIdOeisTTy1PmopBmfCHHXRCoBjeZKZL25sSZVgXBngypFpvzVuE0pbyxCZ2f39C8sJoYsKGixbW7U2o7GsiW1xAb/4B8bH0lyTmj6wO9/WB535e3MgOeqvDMAT/yedFEHp8KmNDkQCfQ2Zt4gY0YQ1hW+QIphXsnj/kpzJN7QpBloPzj+sEKiXGKZ7Hax+wuJuLpvPJYD3ESCsjHQAqvdSXNnaMihwpf/Zir6T2IBTBqkV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DYEBvZRcEaSuNAuBC4qHIRplwnb2LRRQp/3RajJ1HnM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eY0TZcXmXcE746/a5u2uTs5cYmiaOg2ASfV/EnrerSrSj8PwmzpAlbU+c0FyCSUGSaPTzVSqYoQA9he2U6SCOyzhjOQ8aBa1RKhEJGtBvFSulGndky5ZIkf96SS1YwgOQRAH28AQI/bcRR9QvFKfjV8uGDUMp+eefHE9Sh4n7RBKoyUzapmpO3zPK9dcUfTTWs1y+ZAXXJAHLM4D/kUtupJQsO2i8k79VyAOBLmZhX3R1oKGLpZMkTxQXppD/VYa8hL4SItungdP3gJS0mKNY5Oe1oa6uL/2/NpQ2Crzwv3BUHYahYqJSIY6tm694zJj7UU0ALkzBceiBPIdhNRS9K0jiryMJPRLIB8o3bygKaERvs2TUVBkRb74r2MndHZpS11loyha75CGfFDjmQsarvMr6VRx9yB5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DYeVNsAR4As/HYO9jirYSncb66gzv3UXg7QLpZHyOZU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o3p1wIjPN1awojkgmnfA4g0AoiMrTub1ot1w1smOC7hkXprFBw9miTWZCO2w4BsJ0Q/xo6UUyM5KIhnDyYf8qOBopDBxQzLVAIIp66+hVnJvl5dJZdi38bI6FnaHmfpSbkQV5qoAxMqpSuhHYaT3YS2ornO+eceslFWWfJXSkSLtFCeIS96ElHIOgpcXf+cid8bjNBGC5RVEXTcOKUb8qxc1zswANr5giPxg/Af1TrVDaVcqZ81tfD7vPy5wegAelSD5iZgRlhtkFPKh+zXR/E+6jNKgSGDokq7uu+p83thGsM6fMynjQkvYknNHSPAnfmDJKr/j8kOwZz1tNQSKInp5qot+RlSeEGtZYG5v369JgVJaNo4koM0+34lDaGKdvIUK+eUYMCW+Hb8Ql9sxFyE4QPwnVl0l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DZGzu/mUDUsE5kerO1vfbDYR92gugVWPJWJy4afUPOc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eQkLKzgOG31+DNqCL1kcju5wgHDF185ed4Pddr6PK23Nf2DCYx+RwyWtJHQq8aEctrwizK65zfJcL7NSWBrhjBrKFdhY144L6rtgnxcqd1NNh22Mv6C4YhRMOE4JaQQw2Z+rSfI2vXJyQYQ6hc19LE4fGaZzooTahL0FfsyvyJbKqQTtOorVAm/TcYkKyujlo/NAHnqZ6CP7MhvVgyDSiyrMKYPMbUcR7wDYivmthvxU3+9aPKwAJMT4YuUNtsV0f55/fhY3ib+7PFyDHCc4/2KRY38182u++zCtcQZjSkI2ZNnR1us71Vnkx80G9tZunziOtLpjnLd2oiWKBwuiRErKItWdupMePbdxo9mxrOGUmc8rKTyCnR5yA6q6Kb/8ODfum4hE0nAEwSwqtjMFMZ0iD1nGydZ5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DZlitgdJCl92d5n7QyDI7CoCva/WZL24/v8hpgd2eAQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0MWacwgdARCSK6j98y+i4g912OKmoaVmah+ajH+/dCNu6Ul8BOlsCRQh821XtaWOTiqz72n5Xc/ji7OJ6JtWt96PGkDYQWPoUpSKc0kUis4ZmRBzESCzhrgDQVfRjvZ2MoevSkLN6/CPO43d5vucfRhN/xlEhArmFUVyiGTVjvm192p0VfwpCbrK32Vv8yzVoQrArmRApUxQvls+E30U6EJEw4Nw2BrJIBLvyTX+7CT+ExoDNXRQxADq9++ha+fkFocLWdCTZSFdQKZVXRFdWAyHG3JopqdJVnT6+W9OFwLDye2bOt6uP6dzAHURcDCnNHzsWU4ztnUJdp/nPQsPW6RiWgEdhEe+hvzmTBtWAfWiBDXSHIJqk+EBNfTmlY/rl/rnuknJq5S2e7TsJF3WCik69zFDJ7tB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DambLJIDzPzTcLKNMA82JmXdC3CLGOZW2N8YxbznozM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oS7DRw2L7YrP6L0zsQFEdE+TU3bMIFBCE6zEWdPepA5olHWJlwndN1UTz+NLVR5MFkxY7xkqqoVjBo0oxIVlMEcD7kF01ivjSIIgVWoI1FMuURT/H8AfIeqbymTLNUqX/ntZlvYwhyqxyRoHntExJ3vWSmwtxF8m7/mx7PdmbA0RgX2ZcgTBK1GRzaiHAN2dn1lMQBwVoLFFnv2zNoeeSbDHpAwPTEHZCMkl5fm/cRvKUmbD8hTJAqdif7ZxzvB9Un5GIeV+R60+rk3SXPkmG1h+HUvY+o6Zrwy4EzZaj/yPHQO/uHr3lMxKF8/SshKakYvnsk/v34KSDYNQIy/knBDKqsJm5mSTeuA2GxUPAJkN2Qu/7xLavjERo81VaLJhr+nrXoQfhrf8YYlsEJwivqbgDwvv+Pz2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Dc/YR7ubdsU8faCPXcpoPEUSU0vMGkVoZXCfMAv6M5c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f1VcRWSH2SuOHQBST5igSz691HdzYDdmXJgVQRq4E/Z5Nq/ofQafhxqqzB+UFbOD1tW3HZzi0DAX4YQHKLU1HD1BKJZcLb+Embpzfgh3AWMMvoI9InB8fWfh3Ca1RxPy+epu6QSZxdG7EtKkBosTC46aKYbhyJ4QnOlA+lD2wW5lN8Kn2BDC+k3BT+AGrztAwbYkPt3jlanqXHNke9r6/B0RqIyFudPMZKpmJLl0Bg3CGgAfQ9aEzYJUpG/uidOrDaH8JjptelZi26ubK4kgAimKH1rZyU/ymni8I526XrHYI6QcQWIM4U4dDZAQXd8gKjqjjEzRLLHiFTCqknuUMGQvzmEggbueaC6NwzNyx9OMb+TJz1rO+I+49sxyVILSIvp18jJ5M2Z5K9LXHX9s5z5Wd1PUDWSw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DcaJUZmqvIR8hbJIWYtiP0Uuv/1wGDzC19L1bTbtrvw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w2GGsIgeFmEvTlVPg43Xsdc323rfrTf36KhldKYyEG0xIi89NEhxtKGvSvNKaEIInqjMcV5qSH+kokTUqIc4aQq+Oo0sLYztvxNRuuA9aCKT1akSINykXf11bXnCrktRteEhzwqdthri6RHoAGRnup0mQxZ8w+wL0waVkCAqwnypQ000QnUbzD0beC257nemP25GUjBKEOV52ZObIogTxT0VJuzsdRSQWFBvj96lvuKDJ4bVvSv9FWSLyktFNAwjCxNTegcIWi6lH7G0G4lS0Vl0zSxPZOx9TwLd7LJugMCyrfke/pbNOFxpESeC++aZ0DcPD24tcgmQutHzMFQeuFqiT4LTPgkrXGSryKgvFGj0PtjcLTZNpyxc20WvpUNwdtxcwnU3bcNEI5omfU12ifjt5ISs4VLo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DcacYhTwMdcmxKilslSs8XCaRi9hnJUAemy++19i1/Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bxnkcaxMNfB8zCQfw1NWsqTWh2z2+CS18T3GZQ1fax+w5aFao7uRgfwwpVSMKtIJFWat/UwapDb2a1T6ZGURtRYSf6wHj8Uuwd329iUuZtT6GOGw0usuE5rYj84LC5HlqAXjFqjh9at5cUSWOnSwalem7vr/11/ZOwLPhpR1Vw6mA3pK3TcUL9UrtJmdsBYmEyBwiZCMCkyl8tQL5QjHb027mPrly9AIniNbrSJBYM+3gbq3egnp9qNA0uy8x7GLTRmtVTDy7vZc3+yaGHQKotFlV227dKrYuynyYzCjBG4L5uWyLExJPHf/cNu0tgq+J43fzxg5h89KcUuU0yVFzjPgbQ+xdKBKpbSL5G2i+2Se8JitM9Y+IctERez2cjKl3zB5GD4MEhDn0yP9n7TRQqJ/sqZFztSQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DgZdyFJG0upmic67jD6jUWbbezcdqSnOV5lrvxIYKAM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X3ez8czw1We7SZywhdNOGJe8hWWg4Q4p9cCWr5XP6qpWwnklE2S5BU1wFYewpXbApnDQ7AM79pXpjV+y46IO9eUPTqsgcZy4s2nkmzK81vgBNo2yU5TtyFHU8TODOwp73fv9meMuJWStfox//eLpCHWT17SXpNzYFIIVsrZrhSVkgbEzw5uV04FVelcHNyBuOnv8nQFFaK3FbzmyNgifyQma56uCcIpOJ+ryEM3bIXJyusTK7AxyhxsD9sy/e/ZRV8J8aZelQYyuNKkNW9STK0JE1PBhp2cY8JIb7tNkWxb+BckAH/2NesWp5KBdrWNeuWIYfLvc6oyxg1dbfMQkSoEcYtUHwi5PmuXpXi1cY7900egqNNUKBZqnZ8JhbfZcNYG+TqAqyxXrurFdvy+PNqb48vDMT2QG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DgwfZ8YMRGGbaR/jej4DGrm4WxvNi1yZ9Y2sE+BPAKE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QzcokSR9uprqBkajee54Yp9qV0gDSzfNP00nWmho2OTQmu2FCwgbJGUz1lYAexk7JojxVwbAkfHKnqojgHakMVZppj186i6os831s4wVx0fUGTmsT+AAiN3kLEaOUYn+8SrbAdR7l0ucwu6QP17wFk+3JAaegIJYTlE6ZQgUFGxa/+nPI6F8BrT6Hgzt1CBtXHheMeNYFeKHNeqwTW1EkOOiNKq7Y/WDJwwc3jls81MuRJMJZhshylZ7TKe6M69oZlwV7VQzfHRgCeeqpwOLzl5NBo4lQxrmpZTykCted/wqOFwwI2x3bU5pW4jEbCVFhQDLUGIiz1wzTKrTzwuivn7Vc2rF/eR8p7CxGFp7A/3A72B7kjEwlZ1DIt1DjDnI57ep8C0UywABunVABCYOEJBJmmunZ07t", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DhSq346QD9ex2gkXRklFJi0w0Fw6ssuvtk03wSKEGhA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BJbMUXmj6KvPK0d6aNda8NlZoZwiywiH52o3P9/chqIZDqlKYeEimqiLPSJEhhQR13pDcvu1lRnx4Cqitc4xzBsUyCtLl8g0wBD1D+ry0ql7XmGWiA8RnE+W/k2rpxHfwDemUUBQoFXhauvn5/Xt2Brx6gm0aJ9k8m1GgwueVmNXmoCJl2MbLcibXGIpf8Agiz2rizdpGk3ciQZ2gxbcizPUQIV49NlPeq3GddBgfH90rbbyRztr0hwNLr0rKRkT+MtA1fSa4nMx4uSZVQ3MGrpSmighuuIFlByxWfaw1Js1QrCh5AOZ86JV78C6hQWTUBWjKWKVsfnqakGi9OtWEUlO+RVmrm9mYb3XkZIkHrB8o2BPriMkZvWgoh252cWLmuyJe+QCU5eMZV6FY0+LJCT2RIbYmQbY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DhfuXMc83wfbo21ciAXIPuK5DVBdD0+mCdyOUhsL19w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d3OWMmoCGWkHpis+E8LKMVvPspLKG7pBySpAp0jXeNbQeWaM4qWMG6UuliIgr6dQTQZNQP6CZPoetHA8zSG/jljir+5qJKYoDVkiiK3BgRHuhlcDjyF/lowF6iV2ZmcKrPzeZLgj+iCKxz9MoURlFhwbKiFkwCrgPFmoMlP2gz5ORKA/K7fImFuzFHqyEwrAEOBoBoRvWO4AjSkbHWXOZ/gO2P6ydORaNZpaPE2n1ATo9BaiAG7CvEhklxCh2XA8e9rC2VXBtuPapSqQp89HFFg+OIeTuGOqmb18TDHidUDSfMiS/ucepDfXmL54Te7o3MOueYud1nUl35KVdgJhb0bs6yKTrXuxP44HBIvO6tY9WaN9Dt+Sk8pDczepSYwN4sKSQQAdzMckbxXuX+jQcW8GO6nFU6St", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Dih7EgXCfmpWzMJq0HyJ2lALEhoqgSprGB7CjHvipdE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LQUQhcXM3Dkju4bkihB+mzlMtuRhh8v3qcFkV7eoGoTXPTGgrMmwbhtX/Q2qs4/ALtr+hmwN/3R1x/Ov5jT0BJeA7kBytPYD80+b4iYA4iMfv1z89vY8IRfY76JnqwkJnW9VbGOjt/4QaqZrM0z5ORUw47QmLBY6eYJkkF07qsGwfDu6Pd0fB3KDAP0rHvOWPFswMjk1pxZ83DVThdkWqJYpRq4nKph98xAG6tnkmVb15L83KbDq0lYjWwngign/cDP77VradJo4zZlXJzXip4zcL9tgIIwkso1OjllhoApsUTn4ZOkT1VhXycFy++i6eFmu0mJaizRk6DM5GeLcXMvLdT+uIHAJ0AQO3R2EWxmwdinn1mlnasol47VRU12YDEc55Esj66Kn+sqNWQTWOYoBurOygJV5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Dmx70nRwh91ROxyfYN+xyRNtgZ+NTEQpxibsBeZqNNI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "n/F8zlo5I7oEOZ2D7w9zgkIPYtyltC2yuFEDooDbEbQwq9lw+O9a6wRIDybcw4TtbZaKaJ5Sc/uq1ZWdKLbbOJiYgl/MkhUciPq7ufZ7rDNzgA6PMcQvGdo9O7WWk89X8+7qAOTqKR7NDiYqVrl9Fkrndlrz78jSERJDQ0eCNoH/gQ8pWyjq0LRJqgRcyCHIhvfNz/71LrYmdmYlp5r0Ds8rnEMNPWwZfmL4TlQyK/e7MiO+M7FBKazLEKAlnt9WLMx+QFijS8Ae2aLU9e5dhOu+uo6UUc0fCYWJlJXgYTBgLBnkTBncgPhyj1JnRHxBVaRp+I8Uzdm4LKJa+8T9NG9JXi2uDxWgAHy1X3SAuqAex0rIwpLzuOR5Gf86bMwnq+nY9+hERD4MHM68x00kd/uPALl4tit5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DnFnkFahIMg8Xy0TiJNnR1KzeD+gWeyxt9nhY4/u2sw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/K/YjaZ9vuFCGIXrE3vyeD7G5D/sOynboztkZzSAypQn2WOhVy3r+w9SeDbsmjAiD28aLNiF7j2OD3/yDotHOgFlLfB2aXV7ufru7FjW3QlxWV9k1Ie65UYo8hqZsF3WuqvTG4S/sMZfxHu/OVnA+3NFbkmYvM8shhccC5DIelpUvJR7+ijc3++tsrCbsDSgvOkPav1qsiGETg8F9+alS10m2Ymyl1ujmwWQ9wTNa0yp8gFlnfd7QQBO8ATJkNpd4Q3PE7GRelwfrIH/pF/xMvvkNndv4Vu+OMunwXjhdrkDqGFugzgY8ozZNwLZ1SseYpC0bYPl0g8ZRLf8d9gECHlGn81PauTVreeX4ZaSQFVPGfRjGWFnp/OlkAzR+gQTE+1NmrEjJp3yoynca4ArcF1zBvg/+kaA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DohaPeJamU1jWrA8T60dA/HyANVv5kHYcbP7MkPOHLA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JqEIvA8BBbFWswv/1n761I8OHln3OPnwrJN7q4PTYBArfUTi47MH/gTToFgqRAf14eo7t6XwjeFI7+tcUmqd7aeo6ndfz2+giRDPdXqZMvM7E5Tr41N1MX3PnCMkcerUcyBn0RkpphO7x0c04DfaOEAlLqU6MW7tju3yP7ecmhPT8QUM8kcNY+chbo3IleDzr9INETDuQa9U9vqeTNx+xzdd05ANZe8nFkRzx7rcMg6DdCyizReBQ42812id2C4XJbN47UrLnniMjdEDOVqG4RXVw0G9+bpIdc/ajdX9tuYVK+qVyiFmw0yji4aqgVmdpjFXEbT2XT3f/oU5OplE3SuXb3KYU/J7aV/HJ/dVMXhiYraIVjC6e7Wda0Y+RKQZgA4pFjFDibO6EjRv6lzoSNWI65OUBzfN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Dp7sJMlfZK/79iFcYWVE6kVY2w0bzhKruu8lYW2frKM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tSLtvMCRvLEO9MHt/P7UBQMMUWSERJ9/Zsha+OMUzyBgLKszWFKws6zAGmK8ufVdl27h3f71hjLs5s2XDM9UAD31xvTAuYdgLLrjuPpmdMbyqRp290jbRm3t2gNhttUirI5vr7vXcxu7B01fqQn06K+zkw84gUeAqhUzwteZY3wPpUV0U8GLD7t6JR/Mki007f8IQXXkKBLYwGeSkgTmGMyecBMDdswcWzF3xz7+CLVevOJEr/QuNB6bjiaKYo3H13SO2jadJj4gz5un8RMtTIQLa6rVteX33syZ3ghwPTU092MaCot+wspQme/hj0OqP05DiYs1IL5XR2810n5LxCYWSjf3hQ1SvrEGoSGrBTGuweBhpvZ0zB304QoXVxcFrI7221GqvKLgxu1/wLfeWjM2dJrwqrao", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DqIy5JeXYTTjA4fReKRmSq8klo4QePbgYDHYiuvx8vg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wqloc88K5BMjQ6UbI0YFJIAQEDip4ZM4P8NNDo6AOtXlTaVUGwsYKqkxOnRnPFRS0jsxIDxqIzpIuutwGOpmS+iSl9XMWfP7O9QIop3YiIaA8ozBK06lZUBXAcviC9RVgC0MSD0iWK/36+bI+iUZ0P5nCBQF7C14ymZSZuYkeqntfn9lv11s48/d3XYBxGrENIajFIBVz56HSaJ3IliPf6MVf/uQLt14P+zBU0KttOIFQWoyVk5OVvqrSIaNCNhPbqtIJOMkL6Gqs96wvKxgbL+4HBGE7sIHigpBE1JyEjxDi71CnxQkSBT4k+BjN911zoGrW5v873bOKXEVCUkCLpuObzYxWOLtPaHa+Mn2pM3fmjs9/6B6b7+6A/2PDTExznfTVsBhklXoB2tWPherYIESRl0U4M0t", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DrG/D7PiquxZUxpZg0ff3CMbpzGmwhC2eBpQpJV5yhA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aMZqs7Wl5XQYr0hayHF3z0sLyt/aXqqToPDrcF10WBuLj9L9SVo6xGvrh6706xvT3GRuPjEpbAqY8FlDksgjhhMUtjCkJuJvm60ofSlDkEYQzehYNfKddMhrFBegIclRGs6k2THCs3Xdd/QGL35C2TTG4rCXiLcBNRUcoTK1D8S38z62IiNbCK+2iJCKW8eH8QKbCF/jW0DPfFlsTzPuJpbKfqFstIPUQkUh/Ga8qDDLRugHciycUPJihuxVfUsGM+tG9LH/vm7b+odn4MjpXbJQcV/eeRmHF54lXHDK0dTJldcixokPtPq6B38hATc4+2mcb7DQaywxx5sueEFqvgjHIQR7MiVhLxpiUwPZtl+sbduzG1+1w9xh+1o10zb2yhsPFzG/8sDreYdtbDXGmF0xJYpiu1DA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DtOuHn+eaBUezxEMIH91b7JlF6W57tmeeBcD5fDmC1E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8vuwrX2b49OApT95w3tJ5ZL9TK9CBtC/zvdzjTF1j0EsRTkypakH+GVMRvsguKOg82C0xctACoW/X0loqu5RwkjH2H2pifwsXVvXtZoFMXvUUPa85vwIjSTZ5rmYewqdH5Nlo5h/0i4Pg/O3Tul6gsZywiIwsm9b+uzdzBuNeJv/En8JNy4hWrdnGykAWSHduwKzY55VdXq6IyT4n6k7ITWllQbuRGR6nuqxf0VyeaMu0HeOc2ZWcoh+Uc4SOVfKjpG89acyJhsWJS9p261fpD5mWD4U+dfvJVzo9eeAbolvD1L5kgqjU5gCgDz6lMm5vIS9SqFKgeWwT5HbxmRj2/POiu5v7hUYfL1HIjK97MWZ6zYZS0LS+cDo7PVYgAv3xF1XUeeEQGKdgnVbDelA1wrshsr4VFTg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DtZJEts0o0dWnr9UsJBiNss3IzvM6HQxMYayY6wb+yM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A/rsMDEQDcv9CUM1MVU6XhZYWVgkAX51iIcIsBNQFAlwrCbmPvviRxsZitwXMFhdkrwldyL/0/T1GuV7AM0a8FM34VDX3TKPlqlZREpJFSakYTHzYepd4FjijteKB3WsyMXK5kA8orFwIV6Eo158+BH1f5/GIMCaCou1nvO/IICsLWW5NgGDym1IMid95eLNBTDakLpV7lvRyFosaYaVZMLxI3/bbe4XZfQqon7schDBSc8lnJ5BwHOO1fP1oPi6nosIo7UZiXRYfCd6z1U0cA207axuNwhMDyg21hADKLX/fCnUFWA0a8hVsMF2/GXqVTKdpwOuMySL5JDEZiuF5CMNE38lTxoa96aTJJuF0y/x9CGCgpei2+ufxH9imTEE4MHDDwFi2ptFkulT77Xk+i6IxF2EP5hb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DtZYfd0aOvF6z10ypWDZ5AvujXmxfDiE7sn3n4u8/RU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vpe/VcId9xvONwwNC3FzLnRIf/xA42CyWuPff329kGIbHMEXd9yoBcgRBXGCzCHgKR0b+alWTmY1HDysQlUmwVmJ5ZqQiTS4OQ6AqfLhMZUpmkkU4xqMRorfWpb3gbBwdwTGCKGh2jr6JBHwClutm8wtUKZXqgt5/O3hImSnVTdZ5VYm6vwpm2aQx0bKjN/3bKQZSDjpw08KGmWnr32b86/xFtLKhDkMbVJs04Ttf0qz/RkpzlptGsm2MZsujvAi7aD/2x0bKjj3LPkYfk9dD0TTODAGb5VY21rl6RxEJzqiU+3j0beGNUazNrixyy8I/pBXcw9yJB/sQs6emTY/bunSh+1KNaQ7FcPvhVZLpLEKBpCu282IhhcvSIxEjzX0QZE0tmd54ELkTlzX3M08MGqJpqAiHYt3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DtllfrvMxgr+SvtTf7EfjHgC/L6WgG6rlJjWX1wh3BY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AJRzV+f9TpequaQcVL8SPcKzVse6t493nZ6ik91gb25CyJxRluLBQrGU7hkrJ5rSj1S3NDGYL2qqVzzEgq38l4+4ls/4dSeeevwu4UJiy0j9XPjCby8SOSMGEuGuAImJZkiVhlUiDRciFpCPVSLK5b2V8QZJ7t+wbPwT808tpl8dzZqTGcSgMe7NaI0LQY/hVPc6uLtdg/G8lZIonmcx+xp1+Q0EnEfDhkScCyRA/N4CBc8zpe0Jkyk7qR18IG437lkcovERoeH31fLINeq0vj9zxlqTRt+ZTKnvJBeE5ovEdbe/iaazTnbFYlJM6QMwLfa1TxVf4F8yYltS15b9bpnvQGVghXkkrcO2GXqKusvh72x8sC70lpR9R7zzjCF1aFj2yg9HrlCc5BFrvplucYDAQIFcXg6J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DtxyVXB8AKVN/Yy9zQZkvU7ZUcLZGd8naoCNBPYFRe8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Tmzikz0wupq4dlX8ei/tBKvXAWqPc2B+QVVK1Fy/AOMY3FgNWKehiCXtYISnVk2P/sP2l6ia64H+Vt9I68OoSEXBf2pNbjKYQMaMTikddVn3sqAcg508gCiz+Kqoe4nJGQ1AQZaq189W3w6aXZk8gJfu21igJ9PtPbuUmLUUyKzSRm5fPXAb+N1yQYseiqmdaO/FlBgBochNcmK3Qg+2BcvMCnMYmSRZ+Td7DULubv7+1pzOX/DCuZ8bz8frjJmWoJA23O+tmJo/QFRmyF4wt7/RTEaN1A+BnQhZM/lfu4pxG6Yh6vlWwZDrqYbKYf9FCcHwBTrrOoabMcGGJW0JeRg93cxEjzH5qQD+F/Ps6UAZPB5exfDkzFDYzghrxRR2aRqCW3vNBdPJTwZlksBHFVnqbiqAzQVT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DuyOhfmfqXDcdVnqQaMn1Pv3H0f68h5OkmQv3Ar7S3c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vWLh2h6tWwhf+Opqg1q2XTsh1x5Dp1VDhNYfZ7FAAL5C9+uNmpqQMIxvtF30rVAIQeirFplYl/pYa66Jw3ag75pA/eSmK1MgSeIA2ewH4QZ3ciOJ4nmAGCB1IXBcjGlyP4IY7Q882oRD63xs6Tx/Ad+tGej0bfnqV04bb7MSAk+AFhk4frXCYEb8WkcYKzzUBZo2eldmWCwUYCgIkCPcPPtQYsOjx3unP2veRRH43lYjGFcWATWqUByrGXsP5o/u32jroUYzSSNQyw0gQmZ3nwqNFfrZO50emJ0YOEo4KmgtGyKDCtun5cmduZKZn5c+Fw0OygSfXSDXq82bKIezRWpQrRIy9+stfcdMiu+O7S0wndr8oz0KnII5xSx8EJrWE7kMa9vTd8vGXwOmQmlrCQz1Ria+nZdy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DvMJ2SbHkHnzkqJNwq+BdeASrRVzdJ5cJQPGl2phYXs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gW5HcIrgyjYyg2iATxuB7nJW50NKLdOMQh41m3ICrWEZYOVW6p5PAJDMrvALv+Gw4POPuYBsWcMSdYlLdGRRxG/xSVc51bSIgC+VIVUYTSKwElUUJ9vUSSz5f5HsQ3A4WVIADz2d6ldxNJOO6i6583mHHcTJ3dA4OYpGCWrEImWq7AaSIccA20GnS45QDU00Flq34TcUpsTz41BjQ4deAw+iVSUl1vtYe5k4SERjfTqB8iFD0Xp3sW40wRZlw+LAG1isNLGeVsEZSsygEGkO1YmX8FavE3bzWiLPomslTYqHHfCMSLxJLvQxO7/16hjtoBe+7vC4DVEssB+3EAWlxvY+H9sOTl6/MT+DqKk++L0QYWYyYUBrVKx/bW6i+Pw9BBDMdYf29CTPYKHqZ4Bgcx0XxuR3bc7M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DvNv9wSIuHMDQjLCD0M52LDadMzS5tgNNuyvj2tKbAQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uughPJ1o/OUKeKCHe0BCw4bD70TmrgI57qOUGxooYDblOThua1KUsbe1esw8M6PZiKlFeWcrKV+cRk9EFEtQXqkMjthU0VgEJfJiWVHC3ECUPVA6Fv5exlqua2j18loA4hZ6zlIN9oU++SYcCB6dnLdH6yJgblXgXhAHiS6ZXhqIcncvFqLtorYq6RGIA0d4PKqPZt8CxntRxtIq0L/tcQOixD3gOwhA37sa2gpeQoBUYKyxtfngqYfVvHVANcC/Op/UOQvE46pq+X1Ld8bqck1KL2+zccsOcoyIizqEZbUr4D9at7RUa7vm7DZ5NPgp8kiQwbRattzx3ZTV8SFe6ImbBsf+vdl7UCZCNL2TLBE4umEYsJ0NM3+Ziv6B/xGS/+30BINvcz2bLUz/DPwYdXWNl0qSI29J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Dw0nhvWTcRJuFMeEIqEPBvUhqNj0eIYH7kArU/cKQNg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xqvqaD9McCuUjZLCO7tvQMm9ucV1xi56kTcApALtSwqYqSBUvm2XmC6e4dCcnfqT06rbdnZ1eyTD1uz0aJaAwBsi6ScMa0pjIUHTuV843hNvaRMw4yyRYjfjPS6Lz3nE9n0/g74rAJdswIxGq3JkxyXi0RM4q8LZa227hFRkud4TnvnB6eUURvSbmHRYikB51B6Yd28aOZxzBxxJtjweaqDnczwcrPhK9tZFYQFzdW/uvRlNLkLwev0AwVJoxkExXRb7nDgDP8dZifdX6efe4byPT7GxGgw2QRYde/bxOZVa/pZOjJhhW5ChmmCTV7kAKQ64trgjO2gthY6qlAvnPNP4ml2/eEF84mPc+PPa6ZVPqx4bvPwoAEmdvNFrG1vHu+DLjqh1wiFNdCGcysA2ItSO21/vLAo1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DwYKEQMWH3d7HKnRLkYpVDPFZo93BOK7JSaI0W3vuTc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FwqubaIe/vqd4c6Ht/2lq1ptvozxySsKgaQSnLPIYVTAaIQWV+mfkslqAyuqhJyW+L8otaQ7HH/9erwtMUC3REgQVCXvcfIpwxt/UxghZSRV+AYf3zCFZG45VM3HujJIhvg7TiV/EGU12fHuYrH3r27XtrXBHeSMzRJynGWsTlDSMX4QkKT3NLMq+F2mz7c3Crsj7/te4MNxdGxUaHFOWN4O4uVVWGIz5OOjLWdQpDT7pmCR+O8fog5leTuCxEB7IIfOX8KpXAvF0a1hYVB3oI1d4z/TEIJodCHnkixG2V9wXF8mKs7zzB0L95+dRbn0A63UiW6ZeI9l+7/Q9HktKwIPkQIhOqGYdct+3wrD1my1DTZZwq3s9bfsdmNDxn0XARs5chc7HF9LHiWoLwXH3W8Qi2VquCPP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Dwa6SN4YwvX8C4ULj6VPzlk8936yJNg2F4b8THLu5kw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/m188tZUwsplsRqnbADTvy7J+y8v8yMVFiQ5mq3gl7McGxqhhZ24y8+9D1vfVEoIOsy2w54ndxHBa8O0G8q+U4yjlCkXoz0hgPJPRQluSTxlR4b7ULtT3wRmIVqYpM1LKkipS5JinLl7Pc/jlLFqbEPuiBF3N/b2m3kncmWJ7W/c7o331RBKGlpgOGZGbGZeDY0o6pCNF2urziPps9/9lRJKAxP9TtirdYBDC9iWhTD9c+ozshYQE31/jYGppadhTgTdktYsE9WClTcwKaOle6eM1/KnHGY9Nhgd8CUXf6oUGthTI7Ed9poEpJnAeDDyIkzX3e5v1998qqGnRaZ0gxDTlAZexu0BYattmrDQm0KXkm/MpPaEvsyersFRu8thAjsnvVfsd7uSBxBohzKI1NTtJvzbxn12", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Dygdnh2q5e41R5CR49eSdarb0kkMTQsmyIrM1Gndaow", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UN6yJP3dyMvVNc23fMtFpMZMunWSvu6BDGVfMgi2tnr4DvXYRwuvGieES82na37yU4cK+U344PFPdQ8nyaYSVBSANfeyWX3zkViJbqA3h4iGhxEyfzgORbXyDr9h31JetH4/TrIPk4lj4S+EXuo0xaDJvjWsa4NhN+hIlUtLa6rhsaHWxAxwgKI5pGEBcEDrRr46P0b7LhjBLG7HH2uAaSq7wAtlIgRr4mlV2OfPo5YKkSOIl8dXERPtVvLKltFLbhj0oti3n9V9EpbhMnpiZ6JnfCC5k6CPfwj7KAVSIDQ/0dVErrWpPvGx/Ug9wGZp+3ju9Hu6gQEkI01y9z3ddHC/0+PWw3+i1OSlATPggzv/SRCUTiMJt4TMC8z5AAqHOzKAAzD6/1+Lc1bRKs8Xhe/hFoWPWAte", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "DzXSDDbC947oDupBsbfvD8iOEK55weWMbdC/bwfkq9M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tNAW08rzZFT1lHZN4pEcmjgPK2X225FR/84cMEhfbNMdVlU0g9w7NTx7TkuvIt0dHM97zb31Q0/uumLe/Wd20dbP+/9j5E0h75H2GGsxa9Qks/LWiUr7f6hZmmbXlwFwizKSc0LokFoW0I0qSh/WEkYYgaREBL9J2NWyb3kfur4UDX9rGpPbAwXX+EDBZCicOKJoN8bvoMGWkk1Bw/Y9HP0frepNYNexGER+3HqdbrnkLbhEF23mWHRNVhziElqLLNZDOrosnoeo++vxsXInvwNZEVxNIhQaaASXfNiAs+2Iu6mFZoQ/ajGYFU5rpvwI7qTkwU7TN/2+NRddYBqFDomkMxPRtXrJT4Aka5ugc0nXhhPSHC7siNSxfN+jn10kkiQu+9zaoDpTDN5lHaprDKOmKLQJGmyA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E+HhcVcY2ynjN+eDlqVr7HNsGvKy+AZkkpzP0jcI6N0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cw9CAeYEoFNUxKnK1VOxu7fEmw/PGB209t/mpzHr+MH6EX1rpzjcwRkiVLXUlejt6tGbPZ2tKPJ+bRvC58Abqp3iZQEihXsCdYa38pBjEdL4B8eSUpN/4/PrPKpcwdzhMRGfQjJuYZP3Yi7z4G0J0ZCJ1aJWNWOsRXNd0zsmos7LKv7w3Xz8VqgDmRVNP4Ti6SJbFkusNAd0t8PwaEom+60ifhQyqPh389XwgCfDlHWzzOrmHmdCJq6Z/WR84MDY2lwDtGTQQNQw/Mt16diPwamBVdVw1i7KC8h7+0VSKMZ4ycZDZej4SWYUIGblXU1k/xVjg2wS6DpVJQCoTKOf82EktA1JdIJpS6GfFf2ThNpNfsMxT55QWKcDPOnkpA6pzT8dwgg43OWGiqQlxIrbntAb91WOI7GL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E+pMythGOA2Y+XfFKrXIRljaYfsegh5IurPfNdVwQDg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UV3obK3L0lmlI5/9VSw+WfJfNtDzSBwGhzZ3PNej9KyGmRmO6pKxcrIjsWHh/J0RYva4yDAx5cj2F3eCzcrT6xSWPZsCkyAZyWtfPTPohiYg/4Q4SW5dT2DnemmVjIUVw7wDmcZhY0/LJK2ThYM93CYljiSaUIMzs6TvrQOw56+XmyLTcwnIE8Ckvn2c1dLkDFlbTv53cXfjz5AUOkoSb7h68zb/5TuULrSgI+TgOc6BcAVe+w5OS0HcBzZ2zxLmotSziDeS85qJESdSsnyRdkCjFMJKESapXCDzaMZmSFBEL5XJyS1d/sn3Ta83+XlM+nOmw95wuGQMjVrO1AKmXKBCUllMXpAv25kA7IkK+cQDxENltYft3MvZgaYo9T8cpavPyg+e8MFhcsK7aKLPCYF5qI0+EUto", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E+xI1M2mykC8hhZER7UQHqyt6nqkSsnALzXXUmLFvnQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iEcBUS0tbr1GPHv4xIqM/fJzaeO/epRUfv89yDuqhOp3oDvuEVX6WyEsdDESdqz5JFOdDaK/J+1Hetshr1xypiXRosmp/QRc86oeTETH/pKF9d6GRzl2+nVesrr1IwoJ2vbg3rSNqfLvYhu69pUOgEL+5D6s0XPGySVH2y3D4IP66YSZbgXH1B9I3q5XBu+XLtE3mB1sKmlDbG+kQGYEkmFPzSvJ1zBH1hmxoYAAxztaJoJp623aPDxawMovx1ackxn0KUUFGMa4ms1M+v3IZ2Su6I2/sZrucRyI8opESCU5gbc91iPuQjbd0rgGwOBZRYHQ0a5w27sh5Rc97Oml25dzaDniNYapkhFt1SHREM97zPddr0wSce5tFTxG+OCHeCTf1X6pLKyIV8mhYnTejjBmonccF76h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E/iklxH9tU/yW5iS4VQ8ycqLPKyl5LOHywinBNCUo8o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FdeX+rNXG9AQuQtAbKG4TmCnGiNgir1eo3IxWh/re1XOX6c2bViZXvVwJgmOdFzjzD7d2Lg7S6fPV7kSvvoa3QfsAAXqmqgjNaSH4MUtmZxcsKox34K1JA+IllGTNxDu7THCmJj5rStWSGHEMC1pJGqxjX6hQrD+mGlrPMlaj0tPuDRr73ZKm6FSqaIQeVTD41E9P0qu8LC88KWBa3mF/b6iHwftlJwz5C+lVwZqeZ00kpptTedN1zgLY2V2AwEhvY0Sa9T4VWI/7hjATViHwd3dA81i/5RLkJ8Hzur2fRvbYBQddE50qR4+yrXwakD+oKaZTeTsSZmmVk8zliIZXYEXVoxwsERldJYKUQzR9Yfokh3UGls2ZFXoKJSGooBpcONpaS7z6rZAUTwtiiRvTy5x1KG4ItZE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E0A7zwq5pvUfmf4usOyRX7y0t+h/hyjhmwsXBsrCM2k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0/WUaK7FiVAi+/HLS0sKCdaPG6AkuOSVv8ZU2Oi6Tb+tRK6cMhQS+sALVgolZp8n41TGtz5bZkk9QZa3Y8yTbR0WrnnWR/ju6Dn/wHDd1mOHvInrLxCZH8YVpxQqEcjyfVyw6y9Gu4ul9IQA/NzHiCl5AT9xSIfp6HMeGNVg6hAui7unWHVlArBeMFrdh+n3xdYXG6igziA/JuRg0kOV0HIs4OZr86md8oXIPx9ekON8huSjp6TKm+9QKgWfbsqfVhZTmVXBEuWl3Ov7aOdu5ZAV7lUdDxGAtn3FNGBY2csIQ8yB79yG044XH23xVLVhciUfDMkCQCQ0K0lTSSG0DXR1bcrQ+8IU/twFyjNjfipKbdeWmj9ha/DQPQhhcc0diilNT2zQor/zWUcer4pOWYJS9kpkDQ0d", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E0GtIMyhkQ+LUntxRh6pq7cmZbfZ/4wftDjZZMp0Wu0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VdP8UVQvraWLvGeliP0W8sTHilz21RQhvtvb0IDjXXuzh3eRUgDQ9A8D377DAoUJfX6SJUy/H9ofpvqmGLlBEGDeIjWoqcozkE3LbONd38mEyJoZcHhegqpO0u8wXAOWzz9ze3vGBzvSMMIceIpv2bvkX8hDwh6LWj5hS4J7EUlS9eSqMVardoTVKAtAjHGolZiFvjmx0bJi+JdvpxPHCn/RZ7NIzYte4tuD0BVxr2ZQ7weLKnRwqlIYTZ/+09ARy71hHYblk4Z2kD6tFZkUu34fXObt9bFe6zPUvXJPIp2vsmGVEWEeMlPrxXHcoOTeR1h6/FKPx3oXw/boMnulL2bo8WHETcC2P79vZE3LIvtqvYyoCQcR7GTE3LN2SIOp5qmLM4IAiRQH9xxFjHQpd08tlg5gZfmy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E0HTwv4F1qxHvKvMXzlqXPOlKnIWQLHo73UrDAIKboY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L37401IsclNo25GokZvYSycFhDM9k0worcm09tFmi9c0GJauOK4mqAyXs08GLgZOi4dJX2LwBSVFslHI7RyXdM26T9DPJq7bXH33czi8cWHG2X1fkml1h+vVMR4nLYQY6c1b2kgwVHLc42HQcALy2e5bNMugbzEBOvzCZ9bT8A0nf1Wsbs6cbVscHTOBhmCR4W1nFqmfYPo++DEPahXnjf+uiExWwMMvEijL+CfKQ75LtHWXexKFHWPURyhQ5AV7Ou8brDRWgagkcDSR2Ctth+e4a2K1wN1Tgp237SYCd4z5fgz7vd8PPvSAKcYecp5/Ybf9kL0dS88bJBvY83oBFhjoPsIuRjHNloViM4xj/mBEbj1VgcQs6zqNHmV+aEmmyv5kAtPbEkhfmJ+7MVQScjjBSol2Bf/X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E0kIUG7dUO408Gej0ONjnHTH3YVCh0G3eZbh4ATM1Sg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AvCALNWSufbpUvpWHZ0khn1hUCsfPeXjnM+PC3+5IE91ALsBijn9LeTZIJSbzOtr0csLomwfVvv3Fzx1C2wY/sR5QR1GyHVX/lL97rWG2rk6vTcK94t3clV3+Phl17pJRAKIGPsggfl/bI5axuHJsW94Bu6zeIIwqVQqD5i/d6LVaSA41uWyrgHFFGX5c9otYFU15Barnfb+Z2aqzNZ432Oq4UWuwJtOxwFXtAsUujrdy3JD75ENFhTFAvPMg75ZLDl79Xs/Lsujp1Qm4PxEAqwgU0KTFjnordtvpgtP3YGZjRYKo82Ro5n8lt8Uqurm+HglVgH/3nLyVxf24h24KD9RtCYFgQ1pA6rkfB93dcIua00247GqpLA0UJT6jeOkCFpDoQkA76mQEq7U7mBPA9aizY59RcKS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E1TZoaaY5eA6itwg6C1SGXpeem6fKxcyFOZYK8HcrC8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KEKqqxbsMpF8FZIAotT/FMR1y7AaVTOzmZCeEHEeyGjheJah9XQXBSpre825u7W/rDXDiNnSEwqt00ZLqLI+vNUzidt2mxlJyus45/Y4TRz5D2wMcoIRydCjAC10kVRGM1UCFoPrk/+eqv6yc2vYQuSIti5r+8htL6ohatJZEcmFaHX1195NJajHbNceThWvrkgM/3rxtx6KLRMfAO6lmVaBTwmhuRofnzQfODpmF1tSrcwqrxNDCA3qsl/KBdfl6q+FvFI52WDQ2xzMR44eWdCw/ELbXOOKu5KB3+jQunKNYepY5jb62jr8Mnu0EdaTzgcDLBRVijyBM9R1x0OfCcqhMQVj5zaFttxbKNhUiC+VT/3EXOKqCQmd7V79XUs+hPdWdXWJOAxnDu6HFGpKjwDW5J+ZyuXM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E26X+pLLLIvTbKN4IVQenB/TeaH2WUKq1JidyVl9PGQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rXooIvmdVngPZvoAH7HH8CU2+BosQttVkRcWHV0vjDe4mUZn+7VgsIrYMLSwX8HHPN3yi9j7VvarW/MDODeDhPzGDfbs0lDBUuSV62a47TVm2gTdM0UERXPPr0BwEsMg3480TN0Qrrdaw2XObyhi2W8zrCwFlsUHEhOFGRHYlFm1W/H0fpBvruDmVdww3vOpnlCl7Kl/ZqlHz3yNMqMVcblQbI8RbCELe4NHIHk+/hLZGfTv2HPvx8HcA/u56sCkZxz8KP5ozmKUGXgYtYcdEbBsh4hyrlpvie+D/AitXlx/Qp8GoTJGYiWhMrhZCUgFe9E+fmldY7jHZo3hBDF0nxyjQlVtIPQOOPsjNQOONItY5kj8BGWKg23m/WCV2pAbVrMOrrkXC00CrYNjVzdn9ABwZzH+izsj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E31egJoiMiPcjQQYl/CrXuzTa/11WsOVkNn3rfxZGhE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ti2oPTKNeggksheuSJShGtP4srcTaqRX1rDw75rCgGHT5DGw998Gj2QDxavs+LtO5v+6V8lpHbIcOMa2QU38+pm1pWeoyK6mtraXBg2YQE2PoA6Iy9hCZ5Icm0T5/Tm9KQ9uBIXqYhK+pqw6I+Jb3vTuVtV1AsDPLc/7x/oWCUugvwGSogrrN+IcWwPNJmxPW8h4PeDPsIgzuiBLaRtG/oWmgTMGXv5RCTRPOMSqIM3XLN8c+FklEDyb1qirVCo1WPGO8CgNpjR58T39X6AIehkavGEA1xVqWfXR7YbogZzoQE1xU4qykURU+gidhx3TgE/LGUo/W6khpWwp2K2w9O92jQhfmWPDpNOZZ4PwIYazcwe/39T1JHGgGL2QXB7MN29MQ02jh+WTRf+JBusmiPwi3BDXWvxS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E3e/OTJki+WSWzP8U+QFfB5OQZ3feICzpseheF/Z4K4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qeKX1Z/vYaVjDb9gSV17sTQQOKjCFSKYp34+FlfxlsjeuZlkoNWA772UWlieQNWfBUli54fTdj0qhzdfRhDQfIJscWYZyHsjELXROZuNGJoTwRJNqLCSG/EVRY2p0HeEP1Phc1CyO8fD4MXpZVxX0QikHVzw5IALYlcx7pv6dCPznO4idRqzGcCCjhYaG7veXLZutYpEpLVh/YIlIRn4b2555RhA/cta8pQOIH6QpS76ZpruN4cFqx5N1qwjD+oJW5Iak7sEprErDerI4wJHYJfFok/SxXvhwSXE+zGTjuseMhYqsz8/n47FSq3SkAqY2WxOmLOIcYtTccuG7vtv3G/ARWjaKp1YIFeHJsZcu3ajZl9Ulh9CesfOLFfA45kb9ZpWPIjY50fsFbY64DqOllBUyC06h5/Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E42xU9uyphzVK0u8pd6l+vTD/JOCEiFckpIr91Z+j+8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rWIe3x4tQ9X5lFvLV+fsqyO1eWHLCb6idqlRqtz2A7RZZVcjKPNztxFw2TnovPY45e//FLfoaeUPVxrgaiRk08rOMOrBndHoWpX3EDeKdtewR4Q+nWImRC8P3pr03a/dvR6HjxqaxvDbdtFN+Ie7C8WuO2+VWmX+0tjqPDpQ5Do5e5UkuBGDetj1B8Kz17xOqxi1AyQtDQ+xtd5Ak9PhVOnQ1Dmlx+Qpj9slt8lZkVkLmvLhoFOKGlXqE6989wz8fdi+XSuI5p/QhnVuQIIf2F8TjFOYoiEVsqrKc8R+fiHnzvj4y8S1VBFuqDz9iSj+MWUOG2/KhMDllsuogmspoCEGu1I/jD0r/DPIdF+E/r+WdSVuJSsVgSMjMYFihwtlzL0ABUA1h1ErCnrwWrA43gRjX07VOnTr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E4TfEYIX6pQTk6GCdfyuraq01+ZC1BJYUtS3IFueR44", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "coXRILTucSTbjQ+/e+uDZQkpC1yrsJ1bUDaNHq4BJkEE+DkkqwTmjMGT2ml7AjOXyqz/NTXnw/nXdeM9zfJq7yqERG5w+EO/Up9ZBYsriCH/I5pBzBpI/d8amyawpiB/g93tMQla0VQPEvpgPOvWpiDZdBmlYkCIvBFsEfNblMyQ3vtE8np0NXKZGPa3anMatxs/6zvWO+++K5xnAys033JlZG0PsYWj3AouZtm06hss5He0v0zYUeESg5CvjvLsk2X7fPXcLIG9MaH6eyaDSFGw+CgKaKVvl42OzP9PN12N5JBf01tlBnrqXVTe0MFL2El0k8A2ibzHdPXmGfOL4aIU6D+z4HsmDt4xaY8uWZWvFDHILp6stgMiG4Po6f4qJaMRc17B/gyrxkmiauMgqimfxcwM2M6f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E4YIs9JsvVJUdUM8ltTB+nQlaAAygb8Ds79vAO/+Sso", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VynJUIw2rXIbUNR2ynXiJsOY/MNnUfsYHCLPGpyZ0+wFWY/3Np1AOpxJ1KAmZjTp1mfEPOeVM2bqgiIYB67wDyUSR+cbgXuBngJpmh5z4gzU7STPMwjIUuzDt9QEib/lgN8ngqLabyBGMq/0+GSEc827wFBc0pQdM4dq9oIeqNhdE6nr4XQGsuyq7iGT56vFOeC5DDVXarBwPZ+VfjZqsy/z9ipGVNlz0GvphMGf9ZcAdVhMyh3SV9KiZYlAPHDnCzMaNbn2yBjfej+XfS4poOCbtxvP6gu0rcRX/pmIOChGnLGuAU3S1w/e9GcTYyR07ANmeBpfGglMri/H7EKpWFSXyXKaxI76myEuAxLKLgfHZEGm/9GP2gj2lbOW46fhjLaDC2uDxcH/Uq1p6lhwtFuHZF23KeGY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E54eSf5KGob52soYRUl50LqG/4qNgiLGD7FcmfdZhes", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uzVyV5r3R7AXhDHRCWfijhPmJ8Ve8vcaYjn6iRoK6XPJppTNIP3SMVDibYa89gEBa2DtTYc+Fm5NslWs18yP/wgEAF0tX5nNMX+Buz/3wKcYT3rFMT6iTONKt8fUU4T+xkkvL4eMPm0TbtfxT8b0+rMN8wZQU3nYJaakrtzg39SIHL7E9Mf7PMBJ/JKdsKBpCNdZBP39o3d+0z9yL2tXfX6KCyqr0fw2dvFf9kowe+52dSDiSMkkSWSxI2609gEFHbEPdNBmBJnpPAWrJarrMP10DyXbzWMU5DAqedhqmLik1dmlQI3ve+PP/wgLM8sH1UlIi13c/sjgcs771nEtHdAU7Co3AFekSNCPUfjTckGO5drFHsmtdcztNdzpERUC+zK7/wEoF7iwFb+f0nfuuEAF21jK+04L", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E5eHZsc/lK303lcx5clqW13TPxbmZ05yNU6va6/rydQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7X2rN84dkYozmFGVwVmYN2uFYe++JWk6Wv3dEqmyyPaprgYjcSaEJXJwx3nQ7xq/+mTmtqtqY7oNWoIZNcE2J8Tg6rOFx/pPjVloFDieDSNWhP1LemLnZGv9jjQ9Lu4JDpUCQa74A9EZykZs7qy2rQ66zotUbCIthZIQdl3lHqpHaHajvgf0ksq9WZ4vuj+8FNhpLypn5v4G2JGasbTofLppNAtJKJqG+fSmQ9uzitVo/+B1NvaNf5WXKWZEGLfvL7NRkrzQRSQxlq3g+8o+627skY7CoL2kTy5qqip5ynvjMaS7vs1hRwPfxmCM4LQamvB0FxOfcgscdOUMleoQA5iAhkv6BX1klE7/Dnx3Fg3gjKrJDW0Zc/4CmXOgL1z5UkLvYhC6jOesTRa0g44EU/VD1btgdJSQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E5ivl4SnGj0Q1q1fAfbmQg1Eg4Fhd9oEYjnvfSquNeE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nA+Jq0bQN2DsmqMSmStlqOKITiJFKf8s8JpgJqNC1IAUVQgzdvg0WnjuYZT9XCqbuLunBnTbbhJw8YGHrwTyb3GS6u4ctfcK+lGNAkrG5TAwvW5HbMrPlzmoFUgasJn6pnbEJ159dAuoGd7c6A0iXAwIpfhKG6QVKG/7JR1SkN5dgFqSgA1TP0T5rItVM9m70ARU2ALzjFVra1BNg8AZna8mQ/pgURaTBAzJkBvy/aQQl2b5TjQBwD5fViCtz3wrVgUQ1Bk544cwzh7MA13CWCWCiNxbYEsBfOGDTeXUnMsTmCMdymrsCa7tZIlQTZipx57anHdW1/T7wzz7SyhxfC988hE3H2BgaRSyuqUlvqTk01myFUDijD7MPBa/rlZpMMB+tMBhVtN1vWPHH/eDzmNsseN8prn5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E6lbP3kJC3J79Ui1kmBdWaCaZYZ04RKmD0O3Emxf9P0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4CYRqJRVzkFg+p0ZkQfMWfLyz9vLW394c647XBATFt4nIgpegvJrv6Y8jvbhXPT7mkppklku4s9Pn6i+uE3L6PDhxBYZqqwvYHgVV1uEQstQtgHlqXw8ae5Ob3IryNtgbIDbUFF8ctlFulCuxPn200m2PbPWSt9Gq28ttjAmEpy6JywVt80eCC0S1T8KCbT7TAF7CJDutyJvSvrKbpucdO6rCXRzTcbawJxZh65K7ozCqImhqIepiHs+O74Tz6C35soAPjDIDSAmnO7JUNm/9N4i8MFLq5nwOyQ2HsZeS4gkUrMihbjeWEmVUiPDjoyzVrxqEW2+x2KujOaX0Cd5D6l2DObc1URxEGJzJIq2lgVARY5gxJd2WzLzzXlAgU3J9Qn/i+gA6o0J+8z71FpWRIeLrzRqvGyr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E7zFO4SCDQBktaORJNKnN8jsSErHfpmiLUzBk1hI1DQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pUAkFfSicIoYI0GKCkk4y5hLySj0kGCqK2GHijjD+8ipHNf4AMEap7HXN2pQf7qN4RUti/aQljJ2uFxazsTTqgbPPZnphzG/mZ7WsYbrqmJ8eWveGVkPnfX6vqhEtW+iom5jneVoU4Zfoyv2fgKvIY/WTPJOElMmncnGXXVGdll1xc/BpJdjKE8dbhltj4D1sfIUtpdxT516HrT8bJToRIv02YtAril6eGZLO52V0ZDRVnDLFrOpaD+x3KDkb7krF92P6C05KLjLDk/7mweGgIt/MzWXD8oFe76Rg2ggKeFQ8N10AeBqJ5cKGQJNBDcOFxlvqpiCbwoj04MZW63WkreyK/JHVZGn5OnE6zNj4QhaiI69UkGqzpVSKmaMdoWtBNVAbVKA+WOBQqoEHmrQsedfyLcOuY2G", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E8iiP2JUm46sVofnJaQLtUPaXqYH922NwzNG1VOEdKA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wxBF4vlKBg92SH0roVmhiVv3UkBVGZOpZ0vlmm4dKdRcR3iEn2mLqiK/A+NpMNf52IoIz66xX/qphxDxiWt1L/Ia81oHZVzPEZLGNXN9ZktQCBUhZIbkE+MFEDWuSwkaUHaXfOKIWOnge3z9QFKsC4pn2OCGF3YUUWqmbd9tkjfmnnIKgXp6H++e0QJqUaWvwOPvI7BbFX0V/OJtE4dSHM+YDgCvwsBXTCUOLJKCUcDgNCFyQ8pVtWiaxUjB0dVsPuKv47gp1ogwlJKPsBKBaOnxSpW/+80hdVcTtCnxjURBQd4Ena8NRGxjVxc4s/qbsqEFGJSbpnFVvEls1rnqcn2QfMpHERqTs/Vmiu+5JEe1rjHLfUw3KC0RbyA35G7L8wQ7BzU4bL+YsBv2VNzrrW1Zw5BLGAU2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "E92JDpsUaNfC42mU3L9KXIqKXcK64/j2L0z8yzNOXBg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+5Sr9NQlDubyG9qh9cS/StwDi0lvfDggDpmqXt1e9LhpEVKLQmFeHJ264uYzLg0qvNXtM1ASQNUgQmJLmy9SACi5maLcZqN0TwE0IVQCwBAdnioa1W9mUUR+AZPopedExSyLGWFNlm3p0EJFMS5C3OH4aQY32rAi44N85ENgCrlZo51xPSbQc5/PIk9sn2zndW9bwkj/U6Gax5x0C0kdD3szuBBvu9TnbO0e0BLNy5qNwLEhEYF3Dx78bEn/L+eW53XqbYLiOz0CrWZtqPPMa70LOwFUg3XLThMpj+Iy683WMTx/6MSmQqdsZ2d4iUzUDTTM6w/QAVktZsqQ2cYCrPkgPIL7uqR6hmPGfDa/cycNQmr8+DvzxWV8DtBcQJTKS5NYeCwz5T5pxuYWe+/JpDv3LUnbTgcy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EAXylIo1XNh+25D/bnlDUixKGMZPxBCwU89ynwskg3o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JTp6jRbITFLkquVODiIHA4HnNg1uMGFNMboEBWgBzHlrexOokuscJSqchU+BRdxk9WrSQxTZyJb4F/2c6BF4jZaDMuhw2t+NiemWn4S5zq+GvlW2mQQS4UKPv57nJU9YrAhWFXFsHDQsdEYzOJHD/Gm9D7UiAoD34itO8M7tQWTaTObv0n6zOCUPAKNxFbrwCG26H79c3revktQF4COl/gb9bFg41Bxn2bcBpUkA1/srDv+rAM+95g+wU0ljTxJ81RCFKL5feDs0/XQg9RzqwxjEomZ3ViAXUYsO6ZKtqJfHXj5W8pPS3fhbK7aj3LVU6TvCt6Ts/A21Nqpq+RiYy1VrYaQw+6AuwSwkBG35wXvYTsJVJ5pZgo8V4SF4SXhOgcUQPxjdB7yUDnGMlCTYzL0B9Vm/+caQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EAcAtdrkZTgW+AX5cpoSACgdGHYm9d3QMhOp0jmwDok", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WoQlwRJ98i2Bh5j2Y7Dv+3JpJRsxzk+iaM0ydTftstv3kjIyKKoNpcmyRyZu/0X0EgjEAGqDZWu2AEALTODg0sgrMk55ZRPP8fiPuarfUP2GblLWBicWyg7fhvvpPOCvUJxkU1YeMujFWJo7HzJU2ANeDRk4lYlNaIFl8Zg7YJmvVTzXnjx6fbUGZXntYVHKiOKatqBZZCUpJsUkvKLrrgATm/ptslSdpdBsfqtpFRohWpub4H2QWuihRPiE0we40VbNyDMVIqATE3p8T1tnh09GvzCgWsOoh81S8cO+HmJVxAfjZMMC/vvOEEY5knNQ0k7G3tPRSbc2dMTFzoopnkMXwnKoeGST5rrJvoTzv/HROkMFvOiWl5e0Z4gxaR5W+0nOy+R0FPatFjw3cfKa1SXsYklAGPB3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EAmrMlTmEDABWQMIsMh7ZmHjBMjb2t35MJpkeVM6/js", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M+AfWHDAjWXjaLB7QSZwxuKounO6YmOMEBY4KOOd4MFxtrAZaEDER8SavzBd9ZzonWgBW80Vgs8nbM8cftRU6Yp2jQ2zLbtd4AO4J3ViON5onOrLc/UKkZ1B4L73dUMs3yEJzdeceDwi04z5JB7qQQtlGLeTmg4XSTOpz9hey/3hg/y4G7ZFYt5liZgOt2kkPwKykrfbjE+OJgkLWR7zRKpKZsDybNJ+e8KPGkvKc2LTwL8BbFIlYuAWP+1du+70pBJ52eK1ynIGJsmHi4ivH1h3Nr8cq93yc0BmwckiGnzdM/xvDGlp3FkE1hWcy7xlQeoBuc9Slgw5OOkyYtA89v0ClS5YeOiOAvFOHtE3r1FbitXQsOau7fWMycCrcB0KkerJKHE+lFQbH00uA7/TevgFZrxawRRR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EBBDqb3O1ACFubyN1p4oWEfddqZQrNNn44icVSJ0Q/Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pFEKLLx7qrvjgJrlXzzqzLVWtO7OjwhE5tDRzMAaZq1Ks3Rk4BP85UVHoQpY0L7ytwiQFtA000EFeVcIHDmrIjkd0vB7GKTALdLSDKEcRsCIukirBXom2f4Sumrx1FqE++ScbPdMpfb4g+bI0LMEQQ1LOESVO/vhXhwo9/4RA7+QUMtg6sXGHr7tUSwmXADV7/z3O5txJHA1LaP9vE+vSqleUHGqwBiu+Q6DUCvM0qF6FY2lrV6hsmDeDIbnglR9ODAOF1QHXyejcNVmSx4ZiXKKsD0H1NM2BcWFXr9j2ra99bPyIg7Cz/hKY2akEK2zUfVcMk7goacEjBlsHuKq1ezV/UfIP4/ONkG4ebc3zSRZIrJ9qYm+FMOZAs70ZKKXIhu0rITroMcog7jUGunbnWWMQUQrh3U4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EBYz4wFqyg8GA2QfWI6HwmPl/JTSCihJlLdkWCFeY0c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "J+zqn+99iZSshcVz6duyilZhSu3OfYxCwkkXwrq18Xn/I5FCZt2CvIWwxW1nUsDbPYaTy6Xk7B6mnhUaisKJqX7cAm0JPHgEiGFB7ey1QIRCzfU2tb0TzuvgY1DUkfRUQDKUZiRNcQ6lcaRZH4mBSPc3kSmwUMJeXFF3mkhSoriQzmIvuQdcI95cn4yqJ1v1f0F/GhQXuOYZSWEwGLt2Z+5l6lYLnucC7AGJEzOonQnIVf/z9r55Tgokfkmh27HrwIiOapQUdn0fY5DqOlmMjXoxemRhPh5EHx77LBVm2qOLn++m5aCmNZI5BOrA8nkV4YrDUwb3MAdeZVRZh5XF/89E0zliQhB/fWFbjeCoCmlxLpvUj4DB7y4Zv7Nk4qOfXo+bf/YcrueYnU4JGCHDyqbYx1ZZ2aT4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ECG5B5TntZif13CWq2S/tI9lz8cBnMhhZWA5ybFmyKg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f87KyniL4Z88ZA7PHBoEBKevVc/vNqSuG0EasrMKrYCKO+GavtIHhxVMLxOk84eb+6tHVogF2LNubUG1xuzKKggd+fC+r9BGhdcJAQvrGiN7xkeFC1d0qozuVXSjPKoErj8ClpiPgybaWNzbSSyqUYxJ+EahPnZx2r9DjdlGW+788WdVuK7aCP/yEtVZ8UDbwa8l3WhBMSZavz+eY2N4agO0bk4Qihl62DUMaVCdvqcEOo8g5zjKteazcrEHVI5QHHacOYUgU+UaJqZ3StjGc6adoaQ40/vtH6UGgqQ+P4ioemRqeYzMJ2cmvOB99pKM4D/iZEO1XsO5Ma9fb6nmQqwOB8AEIALDx9j5/uy+AqZ7um6+I/7bJXJF9fPTSu1uPcGcIS8v4U7n1D1yKqaDDfeGyCORSGEF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EDV9Tu80SdBes72C8EjFzBdqUmJZKj15wmGgC1PxSLE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lMzyn8M1mcYeXuINRhxo0xlnhV0S+FjLN3NU+FY023r1FJ94fPLYWBDoAiysYR3h+wr8UmMArq96dMZQoK4L+yrT/NiVbbk+/gIE4ISo9mteInjqkdKJ2RWxUvRpD3kf/+PA033CmRO7cGHlXWNpXdoCILckgqTz1n9cIBxQyhSHUJn2NBLHyoP32Lsk6XMfvxzegfO6VQscp9HON/kyOS0tVs2dpnA3QfI48WHzljimHdMPMZ20njQjI8IkS1ytSR7i3LHfMQnfJYTGhkyN52TkI0n/X7Ax9N1gKNoxd2EvW4DLPyfrJifiecFRG5z/IcZB0QaIVDxvf9WICHxW+C+NlA7KmbQwtRMsSj80+tt6DFBe3urLwYvDAqbt9nngFq5g2Yy1Kb0bdbYxTLQOFey3PceWQOD/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EDvndSwxXZeDePGQdyR6k76eJfUS2cBbz6x4Q3QNZsE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7vymWG6XJzX7QFouGCkUXy7a7SpuLyfGHY4x3lUVL2vBjyJipacUPa9gZr1ozz1lLVbTvsYfY9fLGyghhs6eTc8VWj6jEjM/wwKXmoWxrkAa1Xp8um7oMzUTLcDkvZGpUdw4up8iDIc+2Jgp5mzQOOpwFsujE1e3AssthYntXo2GgHmn8seEJ7tDU2ZQSyDMYqkAUwC0raJMPopSG+jsFQ565WGAmykiF5WcLIk+pSTQKYlZ4Bf6c6gd0huVAGdYTmTUOr6nXYeO1aoBbK8aZi+xhOxpCMPXrlzBxuJhfMwxcY5z7aWuu8Gl+FDHA3lKW9c+Pumjm5lJlYC15Co585486q1/BWvWwJmKZvUOBE5DaEID256CMlIDx1fvu59+A6v0WdfFZ6yqN7x7bLUMaVFy2znQiFT1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EEYSCbkthaB46U9phZdZcCoPiJx34X6y/7Pnf2dKWug", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w+nV9Xrf2Sp+OUKvmKWFCUKGOJitfacUQfAawkJePuekxEW6lNqiBUfKOYt1d4+drcyAsWmxjm/q5bWV8cVYzZZVne4KShbDVOpm/7rupCCdy74Oj3De6fM/8oKZTkstfRsIIfDtne11IjMlMvmpGfv1QrXyHl0zOKnK426P0725qbyWe0WMuetSv2qmwDxREkBW7jNZk54Itzw+bOcBPxg+UFZlwK32f1VQ2pZTfXnL3ezTJ4jqmRQuGA1qZ4EZ4IpI2a8zEyWBz+mV3HjL6G5jYZ+NBj4A62IayPszJW/vPb/RJPvxJCtp4xIvi1HYZ3e+53eNd1+JF58N/KFp+5j+TZbTq/XkBH0T5dIeA8RyDclW1YEyb1kbjJH6r1JT7HgA/yF73/ztfSFP29VFWnl32dt9JTaV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EGWEQO7eqUiDXbPkJBQ6f4iGNPCJn+F43Ceo1boIlVc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eDcd2xEMJryY4dHKv+YskR4DSHkt2EDysSntZkrzQ7XHtpbB2oEotzCiLuBuKopHp7NRbz/0fMlJZyzrnQNDbK8SKolTPcBACJ276G3jNwppRqiIkcKQTKVWvndmI2ncZ1r0A6eeD1OqT50Ntd6OHWKOzf7/vN6SJ2HjLikAEYfKfSNGLvwbIEZT2EycXHU8pUkW38+srVX2fFHHCnln4bBpn/SKT7c7xbJIlDYv2YAZD64xCXrIttJ8NcUMS2wYA3wsno6QIDbfxWyI7vypDAw8FIaS5GU0qZNpfQhbEK3tB7UpiO5gegep/HKaGcDDPsK2++sQlQOWk04KHE0HYoNdR0hFsz50D0Vj78rW+LuWBh/8tW3wRnNZAJDuHjnk6bxA287VhkrNJbWnRVK2IgCiBsoWICLT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EGl1XSHFTr3nx2vIM5/KYYTSDMQHQIMOmnbql6N1c6k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nC+MDWAuipNulkDkIHco5XTmft7FPYgFGYxKpwsyGIDi1WM7Gk2ebsqsFsqwOMpAs6ycJ7BkdPm0pAWUeFM1eyXCMJr0q2gxdFyAl1C3ojFOMSsed/mPkUzwyRYvRFf0F9nJ5IhJ4ybkwexMLEGRBl+ERPIf/wEl4O0hK3mKb0yUbH3Qzt3XDL60lgNFAm+SItRHI/fxr+GphsGmz3eQaGyJkrSHXewiO9wvxhNaARfh3SdYCvvl1QxOL0DfuGfH8L6UzPL7+gFFOob76ENICLLb03RbIVcpXLfQ+nwur/zVv/+KRTFt5z0NQvmnE/GdaVtl2pdBDV8/6SpHWt/I1tmh8yrPTMBrufg5teAwqknrvLZS20D79TbJ5LjIV3zdjtDzSd8lv3TPQzGv6cQ4HhCXB6qGjyH0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EHZOJyizy58OuHh8JoaEQY3H1EnF/P/5OBVTeg7U8gQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0WAqw/AawEYWNP1zSu/qj4l11Aes7R7nD6TwUdb5bdKLP58n42+Pdem/8ke+eKicq5vrZ2Ai5hNA6lFpvQD5+pdDldJyBl6QtXEPLrRVABBJfFX+ENr4rBNDgUpH4+cC7WoscDBTJ6A04F/v3TPbNO48adEdv8gsdvaYXxNS6kt8fG6DUW2h/w+BKRCGxSf1NV7k5wgGKmEm9aBmjFMnIj7j8RHi/VDy+CDKuPRNsCotYzx7M/9cXhQTtY5tAbM/Ti0HZg7ng7htyC2C7isij5AiEwWL4wKIcqbCSlrL8DQACFS8x32f546awJg8dpbqFX2Xb/lLN6fyEroxwxh4xnxsOHiMf5G133MLWqYy9Uw2fGyMI25BI6h6BjrzpVf6yO35AtKDS2vHcp5AWLwtkFUf/y4XH+Lz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EIDVJ8v7Jyvhau8X4PLe78VqMh588jIV8nQdbUuXHwc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qNTiGoiUD+Px5Wg5gFfzkdBHeZm5YftVY4bbR4q+WfU01Ja1bheRvCKxwj9qsYi9X21iXSSbTTTef3HoSsln5nOXLHh1LO4ivOtPtit2L5OMhx9R+9Pvr/foayivoHw51YaXnsW9bfFL0BkIBXIaxtkVPNId0LHCckvCTdr26ibZyDDq8xxmo3/BRwr5j6ujMk93lKWaHLcDr3lq6zKWAwRweHRc/Aepr3GHhQLRBMHm+8yWZTsb7cX0pIw5V7etSzkLE2erOb52Pvw4/gqHsr/7OOUv3+uSDLbO2PkkvF85zqNwQfXUqjs5XmBF6XYvVWl6IEt6x8lTMULVRG+2upu27HjvhwNTzu74vazEX0VMM+J41CFy26Ugsi5Er5DLTSvUt/4FYe+q+HpxcxEp0BRWvNiBUMFr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EIm8I6t64RRdYBTshBMNLztLEpBGgBDcs/ntd1ZQq7A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "73Ps/Jnv1eSCV9jEWyhdtQ0R8WCSuU6KQJB2ftQBKxumgvE8Y17pC941vjx/g0yAib80LPU/+Yc+i4/nPs3Lhe+J1ke5rJ/Sb4UEpnpequ9xO3J1UcrO/WAZIsNi1DEgp9hBEYLIqjaNE7wtulzAPSmzoBcp4QWv0i+AZmOECVmCxpFg79bACEhWdLXskzWK1fw8PeR0QDDOyEE8Qww1lsk2uI9df36mQQW0Ls3gHNYoPhd+LA+Gid0Him1OgbgxZ11qnnryZOXpgPB2kP14qzB1t8uXsnUpLFn339wkTQHHwflrUKLKu+Wf7z7qOWrorqnelfRaFfwM+wBaEoz6RBt4FdOCSiOIyCYgFl5zhjnG0JevrmMtl4WL0Fl6s8raOk/pES/V3Xi33EIV7SH48bQxdBDu70hL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EK3au0FUked6Q7KCFuHplZwHYwzc8dGBdYnrrMZNrw0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/xdbYMkquaS+3B7h23oji6rLHXTdHHAJH2NpJrulN2VYu0FFsdJpFEYzgB5D9k7oQ9yljsJWXt2mkxKiUKN73k/MxVUIAspIL5uKyR0E6GUvEOGe+kbxYj+5BekOdrwtfggQVynqbTkDUIh22LKPC9uAf3pZjFHNkblnohXjyVABgkh7HI9K1s5WONjDa+KKyNgekIz/xPfiJ5P/I3ovFFFtFRviTxWBUTG9CTGXRIYhxlDx3sFCcAB9b8uHuYuBYdMWkfTM53llzOLkj41/hefFl0U1K3+xQjl5VlMtppXyjSvQ55Ck/kqNTifDDuWNkICD0c+2yctD98FxT+NeJfv9/lEo1aAxYGzhEEVfBCbdgY6XjnnSQC5rQ6luIctR9oxEpLXGXyUF7b3Bg9M8u9CrJVf3OpG4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ELpgUI/MbYUuEuP7X7ldImg+aYwd+EhX9B6BrKGps0c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5ZduzNzdj35RYG8DFcbG/e0QXw3wUkWIfWPsi/TDGL03uGvsAIpe10tN9PSEu3vSWAkptKq1c0mStArNQMkM9049Gk4G4ujQFjk3mxFyEsAldFCcuiUazCbkhqJPUrw7L+FzLHzaQSQ3h0Gotnm2ImuR+ayVEtDq0Kgw/fQ4eKdn3LXhv4gCcasbV6d04CgRwG/2ccwStOwH8SO4xM1WgNWaUU6Jl9NJKi5FQqPa/Cu2lZfi3kzhZ9/KPotbsc7s7IEiCtCZeAUJbSfaGZSEbymV/UujCQpucFCBFgskfhBa4xeSmkH8MLL4LeqLL+dNiacuPzc9UZRR4PpXGw3vZWsEIR5smyhpCpX69ItJQGNA3U2RQdI/TDjyPntDdnTXGLkWeGyzj9f8sxDSNUImTazx0i9wNh7Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EM5yhnL8Sw2frnxPjBIPF06ngIsFgczFJkLtvb8TvwI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6OakcFSCglhX3gNrqfMd+DXVg6kEcga9FeY28ZR5z/cONeVashsIZUyu2FMuY0QiSXa1qXmFejhB+wnZK+ag7xSvb6+8nvLdNJZYXkq0oQhRgUWyXk/LzgwSgA/3lYPDLxXZPojt91sXdvxAuMxhtlo0jWCY1itB2ivnvCBzAOSIfWJW5x6v87q52iI9nJt4YQKGht2EaOLR6LnZD7cN23XCczHYYXe5O0D92L/rKh97ExzA0PQxyLlJF6FP9qp2bChAqE87VdR3HTg/6alnOYPer/cDeGiC9/wh9DoXE96OqnBn5hmqmU1Y6VKlH6RTM/w9S8FSX+X3/g31tVe+4Tm77BNbnE39zi1TmpZwe94OVUh1hgVScGfjg1Y31d3L2armTusiRNE+5ugduWOjJ5hHFFrOkQvy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EN38V4SMAtixkL/bv8PhINuk+UG9+xHRde0KB59S3H8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EwKU6pSBee5FI97Ca3dnVKLleDYaKwt8x8+lDd4rlMNwADa5C1Jiiex860g6GJ3lAOYOU+WJIDedh6IkZ2SZelJT6w0LLE0v0rRKxAYMjVm5aJL4TGhTlEiiuSQDE1eplEvqPADN8hBWKQMqfsy2K2X2OiWozZ/1hqcfrIuO8El26xWFKOgIk8NL8+jw1JsSIC4QgpFTu3E7dzV+eXkM5G61vV51cThs0+5H/NUlg1rcRJTzdgKY92HuhAW707F9a/Tr1p8v6TPvcy4A+rjUgPwl6zAQl7B5d2n68DgkrB+W7I3CO6hwgnCRkbKZ5UvPxhtBfP/Q1GaDjgnYydoeJN8xdDvVPfCPR8F3698sbFoewRLaI8X1bFCmqe4WaK99XR6Cr6kg3q0JVB+fCnR75ZhHQ/CcbqQL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ESxDgwnsRcxRmHKIIApCGA67b15h6lK4BARxhg0bNQI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7FP+b7JLJnkkgoejNL3E2reS7FPpu2YuW/qdPVAGR/DSTv+vVQaZsaQN49vYcAgPVtuodDV9BUMLVm0Q5FfrdYLt7OcHShECo+nCwir+KbDWvBtsatArtZOPUmdfc4/1cg1fF40nhWtwSH/Vhxp7Aiy2kyiBSepF6Mtyozh0DX/EEA+VrARRVStHttBw5seibhYeNhHx71rj5Fkb4Dh4HjvYvFW7ZrD/MT8zgEKrdpKkDuRfkkgjQSDRJeQICxIYYXIn+zuc2jUs6IWdD9dhXWe6n7gym37mSBRRrMgg+QDI8f7/y1j6Ppn0opcFm2DA0gx5red7xBMMG1Sz5ur+Q1tRJBR3maKv4KIrYigh6GnDEkovo0T7+Kxv8s3pTBWI+154l9Tyxw5n0UbwjvE+3WYiknUyuoz8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EUQAK41T1K9HmsJf6KoreWWkE5z+IFMtevPe6Atp4HE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rCqea0X0gqBPpk3IAC7Bd6yrpQBI1PtgFNYiIN4sLezGlbTTy8PXuf2pzTA5NpDnq++a/JJnF6mSfG8p//NLTTGN2NDGzhHPUqL45gXv+Lj9d5hn76UVLby1iLwyce0Pv0UvuGKyNthsG5Xqy712622NB+Goewic9B0eCQHfOe8o9nPL2vrpEen/d4qHJ1NIS+zOiAYZxiO1YyIkrZHvoOPjIu5r6bahLoWbnmiDJmqj901UFnI17722J8HbKVy5LFB8fTi1Nr5pZgfa18Yy1Zc6S1QPX5KmjJ2yFGF0BYvhe1+HahvQzOGdCP8Bgwucdobj4C7US+l1ljJf+MI0g8HGcCEsCv24pv7LkDjLdslmcftec/agQkoH6Wk+JOvNSnrvrKt3RrMkmiEaThnraM5qPXrKO7cJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EX4/Vr6a3IySn8r0hf5PHtgzrbqNNjFMwjSSIK7Kgw8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BSgszTaHTn0zKQhuBUwM/VQx3OfWE4qX+dduLM8qianZ7kiH1ywkpVinbfGWMqvALCw9Nv87+tWYRS62ro9ZPo+7CIc99nMIXHdZGg59/gOc/p5uIl6Gtub5is3Q7IZFg4OQcKlw77Vee4VL5MCuWHyJ3BNx9spshA4LQKTT9V4gtBqDRLm2g9GplHNh6VXxCk60i3mAH553h33YRhbBbNa1TeoD58UGAA1EnDxzbIS8XfO65HcH6dafR0mpRJu/qGcr4kd1RCDjVU+wvqvf6U4KEXmkfCAmMtlxGsM4PyZQ9dxdu/hV8m5+uZn15/byeroihCIU1bXnsgXnTOOMAB8T17BHZ0HwAHAy32dkzlFCa+e8QHbBgEJg4IRTRsKsVgT5CHS0mtt3VWQsRiEx80Gd/hGC0OwE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EXJPuoPIDoKNWIJQm37uNfmUN1XYB6NUYw9jFsCr41M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F+CsICUdbcOkzul7BTswDFkYoEXCB4WQKKF/H7rgwwF71pqIbH8Sg/i32Q6m4YMjB5v3s+vJf26zTkH5fyX2G7uKpEu00KvLpeC/7ewj1kO+4q5RhCmnDYSjdZiPOY7DoEfDWb/SecTkxO90NW9wh2QazS+dwoBOp2Zy7eNlSr9+Gh2FTUdBvix9Spw8p3Nd+p9dGMtyzqP0JxxpBftuQC/MagNBQdjArOMVtTOgVVL1dVq2aRARtZhQT8u/g1EvTaVTlCGLMPBV4vq+JTvvaTWfKf6Cw9I+grzdyEWUQn42/BqG6e437uo8vJEudmQpK5UErrVozCppWCamw3/UNm0DAHptm5LhO1kJXBZvwztElnppJFA3xF+4CI25B5oLWPt42PbS7S8nqFF/PNnjoBWmH9akWT1z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EZeUf4U7y2KPJG+Og2YvvxRf0i4viGTOceB1jhZ3jpk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xJW+vLc8gPewdhdfLKXt9p9V8rlErxuH57FiHxNfvkYtzsA46XIA1h0G0Sl2r/wL6GC6OCebW6Qta0EX1oCskNJypQm+kxRVIAbWq5Pn+u3gYx/Jjt8paizalGVvpS3cWVdUD/lqZvoCLftOV280+kcPb8OFSQT5SXucvvI+0hVbPJaToSa1gK51KgWYIoozarP8YPTilYDCA5cxjajvoSeZe147VnZ+j+5uSBO0UPp4zHvLGEUe7UQjfSoFy8csZhIETpaB+a0wS7RTreORnwE/fbs3kjgGI00U9jTEQUnQ7iARPLKQqhvlHFYhE/AcvKNZHbZrov4NNpMePQS98HY1fKBOfEaWG4dhAsJnMjvH7EEvALjMjAgBh/stLsTkIFmf8VSiT2ndzo2RurkBhJHfdIoVhbrn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EaSFggHhQ3H6OZN4JzvN0NwtBEetH8ra1uE/GJtpCV4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BIEqlgj1Shk0KunDXICTkUe3FUBmJ7f6+RC78S36QOpxFDQFsHL1m4fi0pFU+KaXjoATtF4/vmgZ+lOGRd7ggob1lFbsjvZrVTLaMzAqN+6rnXqNiAF0GBDv0NxNKAk3DflfqD6oSyhjOIHAkuIfTky7nJzW2EXJWgHZgwhicHlhS60BnoySkI/i1PQvQZ2pXUS7wIKvVpJFjJWUd7WHQDOslYkaead5SvQ4x4CK59COeR8QVU++SK8/Q7MQOzZdaxqJIlB3NQRJL8bPMFkO47j8feXkbp8hF5d6NWPdHr2EucMv3n5FH/KhjfzmymOu0rUhRsbRyT3fofhAv1c2fy8kAUfaPIoQTGwd10peNK6aI0jtjc564EjLrQYXE4sbeJpceeX6SFkY2NIYQgqGJei0zco2oUt1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ef2+mZG7HMLNxDV/0xegBCcUWPSrgVEAxyVrZ2YVn84", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MkJZOt0qb+63eA/X3TqEeGNbcSDTl1Swf6pRR6hFJernPTcpc/eYb82zNTtNv1HdHcSgGgIa9qfwOP/rJM/jpghUtD7+DpA19ZlUdKHD+jfO9omBwYQB8u1YTu06fBz6k2mRgdrX71/gaVM74dme3hcg4/fElT6ovMa1vhfGhmgf1an8OdWgnwBHV2BHl6I6EhGMBDKwHTg1E6X0epz9wFkYfiX4KJec87QtaC2JaUXDgSgGMS9XXrUlqVbk5jntSiNkzKN8/bY6K5+HyRU4CsvcgXRoBXAHQpwc5Hp7hr93u9Hw7TdzRCISUIEQ6cwJXPP8BC9BucmbOtjSAp6ivRym6tB+k5K+dxx381aHc6T/sbW0U4fvLsstMjGohKeFGZbIRYVosAfMGiJx8CfAG2OEXMK4EqpS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EgIHbnSP0kPcxgUQ49Cl6cvqovjEp2TcOwZAXhxpauw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JRDCmI8sjcFKziuDNEAjWLfOJnw9oEooB94ep+KUSIZwpzv/P9VL7htW/WWoMOUJg9CkZRlDZwd0+z0LcdsWZrG+Gj2sSB9D9qS+RhC+pPF9AUs6+OgMZl6iqlr2hKLnGKocJ0t9avkeSs/zuh+NwVCXRnTyh0DsOOxUhsQ2WHWiLxCea0+XlE4fedm2YimYb+JveHhyVAKvkwjic0IbVlSs2KTElk2IplJtSnp6BKHvxfX/KCgfzCrcduBpjNOz5o7++/W+RNzbDe7jXB0/ClvJF/b7gl7PaTwSingK7Rr87VmiGRTFR1XCElHgy2zvW+jJYXJ42u0qFi2Rc3PdHo8bY6vkq/gY9aJ1Q9tBEHTPGwpZpKr6vbfSuLNHqu7kVI57q6TT2mZv7cDqTbsAesTmFQi3hRPp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EgPa4w69kY0qQl+/zlZHJZRq48EAhQo3VIwesIL8Kg4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fPUx9m++UGCQxbRuwPw/nZEfbhqP8et+Pzas89OcK8kgqlNBBJtt3sAvoFtxB3u8yR7fCSoiTcORgoZz1F/kZsgBae8ALNvXqDlHCEXkQ+demOwq4SAJUn17uhal3rU0M5mHNWm7QAhPIWWpzwg5NhprdkyoWUiLVzXWYGzkKliNxJOhwHU2AqIZN4qXwL7nPVc80K+qrpwQyFj1I72DarZvYu0Dy0CjT8J4Znt6cLo6oldrBUD1JZEBxrEjAHtw8rWK6FORh5n2P+9kPmhSBrBHyb6eEXOPkJCX2ncZ0EYJbBvpmjwrmVzPd5MXwbjIxcajPdR6yWj5HWQoqeSqTNSeJplFt8PWEXbB2WRIi4pM4SRsarHtViV7HI+RtvJM6qyZIIq78qeuf8WzyQBRlwYPE83SPZ3Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EhIYhN+S0RvttSW9ecb/O6yZDdvak8WUGKO+LrX1IEk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GqreEk4zkB4mi1gRAIo5Kb8wjh0lJyJwPciS/NrkiXrRcMspGJw5actpdhhX8s9Tzq2BXRVT1XkX5zbtQQFNHUS0YAQkFpIGQKJB3MHn7qUmCIk5LA2m3Oywwvizn1K3pXJ0LglWiPkB/93wyATxEoqPgjFCzjuluattenPnEQjjxAyODF0jwWtBj+ASNTGju7FMjlYX0AFmCmrrN15BiPcIdi5VbjG69OAPgH0pY5xpfaYgIo0ymfJ6PEmolme8HTRjzCindME6t/jyCyzxL5NvmQ/KyzvbCfo2BwAAxk4hc3e29OZtcCtOKD40XeGig9i5WMjXpERi/U7w/zRF5pXLKMJJcQ6nMiq/xFilzH374on95V1gV63fRZQldCHSQFe2W+ld2D2ive9hDySVSu7yVgch9l1N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EjN1c2FaSxaskkJllzav0HU2NbNaLM3rX4lHlEXUUIY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uSg6etODHupTotnkEyPE++W26zl9ua6sihJ0Or5a7ZAO2tQmlQjzMlVEfavi1wwff7JQ2lgrxxR623fUzSocb1byazMWSNGothgBMeZNNOjh41drpJRbph+SQKQvprHzheHDTzz0arBq6IH62sYEC1hqjsiEW47zwI9Te9wE14sJxUpspd3D5ZNjnMgf8Mft8ROI8Mpu+aOPfY9PaPdsK12UZlk11GkJHSrlWuxq3xEFcLOQ4nVvVHbiQjt+wEsskPOPdvADPU1ealb7Ib/ft9SQ1vVPUYwOov7naT+bexuhDwC27Xaxmw6vmTzcePqHwQkN9S4Qg4IFTUdQJhztOP1R7mZOjvWZPEKgmZ6KwZunW/Q1HpafI233w0OsMThorECB7JQIFC5AUtCT14FFDAwWD/FS5fwu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EjRJnPLaY7YvNk1uBwSzKMKPk5H/W9G05K1DFMTovgo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f7jFCZtCJ1XTi3jnCIeCseVyEiSA17mkDTe54Zp422DVg+wgLuyDENA6ONAkKiAqxfgOCnUP3q+wZsV77cGSHTnF12hUBZiEPAcISlAU1KopezE0vxDwVEe2/ObPNyNTxysGoyY/bx4dAsTsS4Pw9H77v7bhU3xq+cfUvW1Cr13ZzbhoyNN1xy4lQsGeslwkC4pjEAcSWonedSwEjTFYsYSEbkFHkt7yeGXz5NrviNaOOrlconSpP6qe/F/Vn+RWbs2z5rD75Pp2w2pfmtXuWsf45HBlrzXGqgfF/XQEBCdb+gMlS4rHE1xjqE/l9BDfRtzWc35WtSfOcOplwiEkHlIk9jtjKhLykX9hynruFl6rpQG7vcqm4BLSL1MWPCMOs5xF2qD2wxRKe2C11GBQqKhvYc4Iavkx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EjwIq1NVE9f0FyeDvBdaSIVPJHCalN5Zv1MdQWX7FBo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mNF5aUF9Kv2X9XfSc/dHD/v8EfgkQjJcVIK8zUhX4n6h13zgk0axTUGydF7IUL67TQ2/921kq5QBvhLrq2U0zUGSTYTE3rAXJ+NMa3o+F5TMw4g9LdpZASaG7lV6CfVaOi4Y5pwwhKBYk6Xsx8DZWkTTXmElx5mxa6L5yDHorDGE5mBg7EVOG1h3GMSrc0UnnVjJwI3aSZA9G2Ony5VTk7sd8ENmuxinVzIFmHni7QcLryK6YYPsMlfz6MJ4fmhoNJm+ev6VLaYii1lCYmsBwEzYhpvX3FydWu2TDCEVIKjNowGTwWOqGrm4BY1w2mjV2dtxIWnFGJvH+6mHkaWfiH2vxePph5sjlkCFHXz50KNjL3qYwXawt5aF9reR5aRXuuJo4ClXH35OgnBPMexxK3k2ncf+7ckD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EjzP3i0x1b851JaVnmLBoFNwBSfGqhqlmlzOciZ/Kgw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "p0HjfSRBBzyMTkHV3/NzVND3NSZ5SeHV8GVEUtvJhd9X9xpVtE+51P65aF2dZVi2+36iLCtpsxCumUWRpD2+9HhuFEe9XxYVzzgYioLdgbzGbzBzxPJ+aXEMAWx6kGX4z6QQkY++64QKy28J3sNGz0fDkmQL/M7knDBdVSwiVKwC0cd8dOGgMiP25Io6lnVGfm+hljyWiHFDOdyS53cPfVkJ09ONVFjjhPpAxAyTc/OKzz26h5vCwxBNfFlEB0Kv7nalxnIANipoWNGYZsFVKB0vzXzeGcumkLyNjymNg4cTpG3prPGktLLzEWO0Ei1tstulYS3GnBIbz+0lI1Hv+RFjC+XbpACcPto1uAXlIu11Sr/kCimIYc8SF5nKv0H89tRyKdfej6exgGXo1lD1jQlAqTEmHzKB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "El+tiO2otHhmvO7CeAr/CSqFzuVNJN96JQo+kbtVvEs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hUt/u3Gv0fH+iO0DCgxvGB+LIHwxbDUvT+9Rn1RneVxekvDhrkpBPJ3+3cAKs0WwJeMnO4Xpx7UR4A6yOgMO9USsRAPtZEJtNaY5Serbpbz6DrXmNdFyetQ7eKlOSl1Wot/O7Bg/1kkhjGVI1d59bdIIuphUnIaHCdbNOGbJCtX7Vgyf2O5Gk9SORWdMgbhxpCGM6BgzuTkp4f3plcpACQKYPwMux7ffJyLNHkUwcfLOHcl537uQZW/5UEH3gG3axNJG3m1xQLN5gFm7P6lW/zPhLaVciylC2vPn7kNyLdMjnmA18TQYkeFPfl2M0r1mFu7zoRF29CgbwZicmgYCDQjCbwvgt1qQWgBTmTPP8x3/SHtoQu4zVUnaTC0YN5JxtupYOBGY1XdzRVG5PmOvNeBtxkBWBTtS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ElNqPsRzjnU1nw1mvz+7dylOC95ceas+FpG98b0bVEk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BTWLCxXfaWEIW3VI2O/K5KkriDMa/butfOpQW2cgwSNLyIH6n30g4kHh0sxFllf7xKwnU9dCIGu1LzCQv3PqdAbaRUbe/ydLbwU0ogzDD2d80Ual7tehmQjtfT0nII+lof8vzfBJh87pBNh5RDU6XXCAdz16yWwB8yTAkVVFX/Ib/rHAcSGx27ukEbEIJuvQ4CDQD0Z8GWtlTLYXcPVkNLje/ZuHZAfiSql/CwP2Luw0/dpFFSD1bTHSYa4WYdNjFbaDgUzDZd5JgxFJuwzkDce6Hqfw+QFHAndj3nrRc72qoNsZVXbyCoN3O7JO9rv+aLTBgLKMJV0y8J22WVxlnzMpnL4/MHbU4Q9btdPE+76oyRlxARJAihPU0wU9Qa+lBAGnJTyZk9xo/T7S6ym/TpjZJ4tK1Lso", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Elg3a7ou1urU93lYw8SyBKS9LY0w4Efx6VKBwchbCvg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EAmMa4chBQBEEjNPbrw2zKWTWOnSSLg60dllSTqyK8sbUZoVLNrYJGYI4mzyN6Xqa/FTDLui+lU0HbnWsERInUmXltXeFggV4lEfxcVxnmJ+VI1sX8KsmNh92R0W6VOTO7D4Y85akecF4zNR16ZOSTZz/3A2RrmwiX4g+sXaeXsc0lQujcxhRkbgXUbTV+fMqCoJF70mG5bsqaD1QrQ2QsHLxba7JYt0b0CwvPMAKlFYjiGprb+QOgozCHJUtSV9K0emCUf1ho0AUZfS/pYG4X0+utBgzb5mORhMcYY9EUt3Oab8kpcT/rD97e/PO5nZQXQVGuVHIeXoRUhxA4f+Y/vrzXFbJWGBS5dkgTCbHBvYlHW5/wb8QEXxFP0KHPxeCXD7B0M6/G5nc3YDKUNnpyUXAMTUojV6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EnptsF8RagEoTUxZ2Pt9ZJ0vj9GbBIQK+glCW2zNYII", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9WBo8T134DoYG3+UgFHHgRnovnCE4h+99GqlIwNV6p3IX0ZJLlAf9xA9p615MYV5M8fB2QAhwseBKxf6NS8xdz7r6We7LFPaxoeyPmjUyUWt6FOhaoOyXyhgyWEvi6t7Hf0k8hX0Hk1kO10ZE+GxhVLT/HA3LlqVT+J2K51DB38DBLY8Xm+/QzaWKglCOK/UC1/6KKTjutxKEFEC+xjzDHYIPWXIjGDuwyoPCESAlGyaALnfQtXNGx0lEVIP4UzrsSeIMOfQAHbBPFHe1etQw1r0zAuSPpNOlU6P/fsXpyAbdiN1zDQGi53oFSEtvBHiOavvo665OfsH3+zvkR69WgOO+uiGCNGDPB5vakhT8jd6ze2GlP8W4xwvqF9AegoP4zKaI1EyH0jQqBJw6MD260GKKifPSWn6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ep0D7I/PU3RZVozS3cfsdoDe9RkntjiboToicXPFfEI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a3QiKyEWtlyzJPCFk6qPmGtGd5I2xyTBOEIv+E0PukiR/mpBD6U/xwrtGnEN6ii500dPBchH5B22OuNjXT3TK8t4KuWm4yjJkX85Eu7PgOad+aMyoehHmX4ZOuzQKyYkPzhRc11xQmUwgXGMsl2JecZFokPkFWyv0d4i4XX38KH4Pwm9Aex9yDUtlY9W+shJXG5un8xj35qxL8vvbz4rFkUVSlYX/MMwdzcAqT7gjalNkvYJOt1e/cuf/NM1sF0RscNrWTdoo9jYRNwrU9LUeJhFb7hi2tCC0s2gKFOBKVuGYXg7gY8P5CN41G8OM9gKQTgDugNdGY1Pa03HzfhTtDBpQSZzgc85a8rynw8aJTftCibV/8zoE0u7EBS1ijE4Bw5+H0U4EXGbqUyQ3veeEZXcW9WOi5Wl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EqBtjj6qFOvOPhDAe4OkWdU2ZRxzarRitOr3CMOjSW0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Spdd4ISHWdbZhQC1NJezXrUkyVq4rTca/AZR2Ay9a8Rhbsiy4Trrd/8ti2tH4epxkTiyIehcaC4o6TAZDVjZGnJBQKwSsyvaIEZ6az/PRexRcrNSibreDlVt2j//uI5HZw1byRWsHHOZDBYgQ2Ddv6EogtvLkL4ETH+XVQ1aef0NETfDz5+SMHfXWLAdO14gEmUmgeWYMUCFbX8k7Be9jAun6e8CCP/nLZww9Nv93lRh16rIPsCUGl2MGNgZqB6FJSt4lszwsCNXCMXt3V0/aJZYqslO+hebnw0Ced2B7NEY+RKwoTgUpRoYjGAzV0ONM5VQKZuZUEkyy/ApjV7od8WmHf+T+ekqccf1gO/3VN7W6PVAK6Apn7Oz5/WJCarclXA3AQOCpEoM+OeIvpTuw+fS/babOfFp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "EsUfHP23Kn6TnLMZ9YIoy3yc6coM+n1yci3XJzWmI/s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EBkNmrmKJm/UL50qsJO2oUiGVK+AlaZPxqGtdhs6jphO0BECsmwKXD04xP1PZ/pQG2hr3j+UHSBvoVhypYJnr76uC09Onh1nOBOgCIZni8cPCVISQuxsF6RPxdoOwlzu8S1JSj/QRycC0dJdhT5A1jeL99tpRyXaPMwmPVV84KUbTeCLEmS3d9m9Bkp/CuI7J1uFUAcdcAqCqmhNGTcCNe2ognRX3GcC3VM4qpRUJJuuWl+FoVfyuHaUH+T8MSPNV7FwmluTjIc8Nf9epx0wzKr5MyVh6aYPJRWmzqHRZqUbrBnAgJgKRx4z2w+lpI7ctGlQUNacQV4O4O8I4D0aIOd3IqoQ19Ld940fMj5XIgK1XhyZv4AZb7+UMGdYUbAqX4EGpQuHx6U0CqxZrpV874q9RBrnv+ZG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Et6q/mjtsHY4cDZ1KeRO/aNGDS2cc5WZrlqHby6wF+E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Z9eJdOrSnSGNTlrDmfcwWAzBgILiqP0SI1DjSGuqYQJDYNTtInaR39VeNDuXdN+vqT9ET0rJidt1IjdQn4TajGMLS37bg8yYcbS7f9M8NHBlhlY2W0q/yRrRO8pz3vrbr9opTX6zkZ9WGxuvNjDBD7RHxJERCI0eejM7XM4SrXthTj0ynBd2LCtv+sMYK0ixHpHPqp7Q55lu2suc+B9MYaW/oYeT9AvbgmECmHsyxNyevcl7dElqYyJgj1BU4Im4Cwy8/d8bpk0qoLWdAAd9w7y3P1m4hOSrYPd1Kyvr+yRNuQXyWG4PJ3wymm1hlL60zkl7rqNCBr0SicrHy31WOyH8jlvPW0WAG0vIeGoEGJbMq9aRLDSvavnirIv78PvKbJ22ZDH+h48hVovPzauehjIWq5hTZaS1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ewv8mKu13cjRI/IOJzi1QBhi6SjoSmTjVD2lmfnw6II", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0tHTcbyzzuwEY2/4q69o51TO660F0VZidKlYW7W1JI10SwQHWVJFLlKCbMsyWz685n7Vew5L4MfdItPNHEiQ2ztZq4bo/C0aqQ/uKO0TnVR0+vt2RIV6AJmSPaFkL+JWuRjhtrtpS76vEQJc46ocMVgH3hRWF2RQ0ohOLHcEVaxp+2quvDGzNVAoGx6HgU1WFi/pPBEKkkZtxEvPhPFY+cc7qifJ831g1XROP9KmjcyefwQvugF8FuOWRpLypbP4oEls9Zf010S8S0ye3kpp/3WkBPmb6ZJRvk0Dk9Qa6LadUwSJ4vHK34g5ICeb378iuAN9myyQj/wW2XFxoBs44DGqWy/BO4KrWfzcV19li0vNASGqxZrtN6rdOubufIl6iVNd19uq12aa9+BbtcxYN4OeVd2YnVz5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ExjlguxYa66AeB2Jjg7S3/tgWcnQSi4g5c8hBBhYs08", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yySQFkNSwgt7Vs+P4WWp55OBNslwowFyySfBV5Fd70BQtoFZjWEoXTwvkMawMqib+ttLE3gVAwLs7dvH2+zBVIBktMG7HLzvsokmvFK2/M42gH7xGM6ADcHLmKrYEsXRp7P8DlMP/iKFhYboSzzufau4jnv1gS2pdyY2FpA5H8T5T/wVvjHz7GyBHLCzUNe7KZnNIv8sXDk4DXFDUZxQmMIwJCs8ZrmCrhfD/HVxjUxb4njlp2YxNyv8uLjx9g/QMvACPLnrzsYulU6lHnwJTIpT9t+TUCnHOBNnINdBuEoiiSK3dW+XWKCIZDjLHl6aNTR39zHo4xxlKW1krLYyqCPcXgIJkWpuNsZAqBRRxY8I5f6my3UgjIJ72NbimDt0gMfzI0ZnjjwBj17T3TATNuczxdaqRhK0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F0dqX7g4wtvZhJq8Ff7hdye1YHxOANVni1U1Tl5l88A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YWR8+YNAqQmQW1axUPEYvABMHZmospFwTb/HbnYryljxqvmDpK85z+rPsyXveJKYemQr9pXFPAP7Ju+nEAPWOhYZngyOUIhSNZxJSoqVfv8y6f5BV7OqQ82OpAU5cdxIg1cSGPw9AdkILtyCluqcsczwlNCGr5jJB45LWbgFhn9JwGyZ9fbca5z+YP9ODc042js8VU9+8e2F7RJsjDHgY3mlV9Iiyz7UqHs5mevXAldL/2SLqS5/TAzs0fys9ZUNzRa0DCwl9Er6CinEoNtu5mRIJt+7Biv4sN/+k1hlMsyQItEjU1M6WsxwmkUYIVYysJQSfvMqGCqc1Gb8vuvlEqc5hpMN35o0Yr6HJKEHqnjo7roTXscuknZ/qQB7QZGXn9nl/PQPMV4dMecHYUx79fxteswd+cXv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F1kpujS0JevkOfC/KKZi5r6WeXqbcotyZHC4LO5b84I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rRXu0L69YUFUxbpvFM3ONNtq2YRxdadVFEgHvJTukav+0rIDfrXT7lSJEOb17P2xh71GYgrD6H9k1OTYNa5lgEmgKH/p2ojBYFV8cHFFVDortRshOROLG2EnvC/bta42Y6cXx9GKhOZdOQb4wl5BnZemFhqm7a8Pl+QYznyAtpOWnYTery8H6BTXtuFvr/Ez/LNnpAJs6E1Wa70o9g3t0v3PWWNh+JwsXL1Q9zq03UiBwGTAOt0mUoyVVpLTXULF2+zIVSfMBz0Ve8/8T/RYtVDRAjdT7yPrMuhAEKUbkunZt731uqsW2joRE36sPjUUGVjrrQzN5fZPyJ7nIJjRWXyHIc2qcfTJjU1TQe+s3VDTC+pXDEzcCdKJipsWbTW43qtStD1VVrvwZ/FsUn5STTKhk4Pjjr49", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F2IEBNO8WQm4E0iSDsd8/ctba3si73Or4N7C6JQgyQY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kDlJv2KPe2OUiYi3BtDxTZsjI7HJcT2aqKfMerym++P99k1WYcBwyS6YZWGAU4SbAuAb7AVdIYspTuMTBuA97rVgPtUictQqQdI61Jai0B/7GLMMOwEe5hQnJ04fLcC0l6w76GUzmW22SkNJEETC6PN1JB1kD4wkS0/Lw9VvzW3ri7BT1rm4Kc0uGpP2JjoQkEPj+PwA3dvUmgGFkjnPAliaXb337dzrnk7jE9g4Ia6dy9CWoAYM1BrGbKgYzjX6XtNN3gEhpPRqdquGcfo0ASIZeG2BYntwfTpKE4SRf1wGbHBFU9wMbOATB6o1x+jf9Fr5PdlPQUF63CN/8QX7g9qHkP6vxkb1zD/PdDbIwu7gz+O28fnbayu5pX5IHMrsVcYn9dgPpR/1iSRKJImjI9F1sdLmzVyg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F2yKsijuSKUT51UEo1ZnOsunM6CAoLlNMi6/410x+KM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nrvwA47VSmSzS64C4UrGvASNSIDU1XPvhxsg1aP/MNAkKgYVPxFp9r7sKqasIzuhbJ0EJw/DnAzcnPY1R9U5TwVJ5MyyD5NJRTIi5OR4tVWd28OKlen75Jfm8srK/YZOHvjp0DoXaYzdgeatm1RdlQt8ouzpjiPerff61kjlAf7qjE8bua0GUEhfhABAqQwV6fxSU6slZAXL09UCoCkjYFy+cr/+EFU6pCmnNXymMiWVF8Ww3+QJYN1TblSKbi76jLWwYTWAIqptwCVVCiTCeEmqmjOoAh1VJzOeIvQj5BPaIl7Rm575/PQgbAP7l60+QKXfSZnQDVnfzXiRRdIadz8H1HlSS4ZkABzhAAyZlzsOLheQElBkz8VZeeGPwwtxcIL6jKNZ3kNj8nOd8UieEUZ2BTWjMdIB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F3WqxsffrgSctoE2L8OMkMkmhhT22RsL1SkAaM74ZWo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r/Hr0qIh5/XAWpmd9Q5bgNYAyERKp5pXEmvOIypVYqvMpnVrZuBb7JO0XhsqEvnlMi7XppKSMyTM5FUECdspHynhX2lbd9RwZkHrWeaq/Mz0JLYuRZ8BF7WxkURx/3f1Sd6XuV58K43famXDmhUjvrN2iuMEqkLR4ouhePmWqo3fDPYQr5WAapEIqbBXcGjxjXUcsaHJTnS+ogXTlMTMNyysPB5asSde1fMq/SIGhtupJbTUt7NTTzjd2A/m98azDqk27bZwhWPczDFIYy1iQKVTUjHVtP8pbUv0t5TvQW6JSqRAIXKoJeT41IMk33IoCj4zcCEeMbs+cAVWVMV6nT5xB7sS3HZiF7rzim+WHsczZXg14t7LQRzVQgTJy9MFJRMYoRK7ZHtTNSxhlp7gfNQ3zofC32VI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F3ydSn/IWwBNwlo7najHPA/pXVY2XtgQL3QYB1/odTA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1oIFdcUERFkdRHHof7T/7aa0T69a4vS3s8NxQkC7QJV7WRRHY1kJGpG0r8hIq2cYvAUWtgJqpHN9ulCwbT+jocG1D3tyhmbYzmsMwkvjEZn+y5rpB1g3Wl1F8BTKIf+5t8FZc6khtC7vfi15+kz5QVgssvp83JxC6eAhfLEM2R3wA5Uaeis4EAViPeU9whCRZDSY7bmOpukgJTVaH+dVfNii7bbt8pmssK22Htn0IG1jQqrToGHQr7prbaxn0vwO9L+8IeWrRUzsE8YwuOn5yhzR1+E+g84W0sAyQDbAC9pCcV0QMHKLUe1uuDdyPJric7mcVH7WCLN6WEJLPpr7pugvN16FK8U82lXqtfq7G9aHwSHucM0jgHzTYfSIhVpVIL08vgNwVuD79YQg4cp5VfyNrL0CANkT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F4IVCUjZPaCnMV5im8aWNxZTyKYtTb2dIPd0iC1GjWQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NLFFxf8PE/+FvIdzIilB4LEea/snATc9b24BQXtrtWGtHGSgJjEZjjtXIUDdkfDVR9Jin7/GOcrbVWgJkL1FS0JdTOyf9eIglfmeTdCwl6hr5rY5gLTSjDF7ZK2e7ngDh+ky5Zbcs5Sx6TukAnfqe6Yr+wdVQqppxj+zKcppjOGiEyjkWVKPpwMjq8cQoRmUEklagtpsaSelXmyfn4saDgDcA22BDjwCIoWW8Eqj+TN2C51Lp+JTM2SjDOHfb0hUR8mcnUhgFKh6KNe2v+F74Azfj+3Wr8ASzQOP/rD8+UDv43EtKBMqAPrgyPJe4UT6Ex3oS+TVGqn1pTbAsihyfUZBIYqwere1cAn6fCRF/5AtrQymVivgTmMQU79Dut3U0svbirDfKS5gmEHYINVCHK8Jd1tiwXAG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F4TBvVvnhBjI4OfRh+eSzrSdRsF7sCHYnGhyM+MrCzA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/KxnFz2TSsqM6c58/ZLEMwlfsF8XSGf0XoUu45WeiV5qnkYRBKw9gOb3Y8IFQO73ek6kQjPp9RrQiRahAg1Z/RaThUoNe5tL5vER6WGPa9GYRDLogbk2fOtyP11EkK7rluUXfTh71R383Sj7OAnZUf3aFAUrcpMvmqSc+ol0mdd9D/bRRoDjKlbJhKNZxJdr8VC2dG3e8kMQQRn8/HfWIdvh1fPg265+GBY7o/+OfmPgMupFNET/c5USAw5VEFmbx2Cy3hbP3KPyMzIggeR3wfe9t5zs2jCL43Rib8UjWYO6asMDQOTgTHlrX8qYC7StSRMq0nlYeSk8TCiSYXXmRSbV7VKeCoxwaxDtEEqD0cBWx6IR5mojuDcDYb0YWkUOj6N7SWm46W+M1bKhp9IzO04K5f2TXDUW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F5SAWqK6sGYQml3p0hmBtk8GRqWXEyr8NO9fPuxWRSc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Aul08Y8TMlbmP45lDrPQmogaFDMzm/naC7HzovLR5dTrfdj7ZTr8NhniDP9MBlRdTMjsXdzMXFflCpZZvTv11r5YimkWVtSKRemQEuzd4tb3HTkP5bjeGLe4gS3jwTRZ9fYO0J50TxljkCHkBOLVabsbs6Is7qGTDnmv4X/vCsnQsFu5ubhZbK4ssp40HtBB/wCRLwyi7V+pbAxo4f/Pbh4s6x45mXiZxM5oBX0rZ58mitaPDbjYdMLqIRRT4hVvCveqlsiUQY6c99S6UN2aTDpM5INABog62R1nfT1FGDizTjGX0vpH5OO8e7Q4kyX+U/u87zwxPyt1xz5H8Bm0pyfZEgqETIf2zpvQW3IeFRpehcG5T5Op/skDMlHF87KV3gIb2TGWPchRNH8Haw1paEeQLm/wZQiY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F5rLbQW3jGChMqsh/qUC7BBQaDCJxZQmtV95zE8rL2c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WhFSXwgo8TjsnSzJsrNvAHb6sH37Pf9B4D3tVzsuhbF3B7M/vqBguEoA/yyJb01D0sZU2amsgqT33ZAmsEf+2ZJcu6qHGefup7UA8kskVDChWBSKLRImEW/Td5vXjqv6Bf9tipstNlJciD5wFjVNLsAzkJ4MocPgXs9o5LmiamExdoK/cXocnEz5/V8VturrO/yhoqhkjrs+JQdaofjMwup71zkIkGuWx+v8m7CZJ3CYG9Y7sZUoabkehIB3C/8RRs+WrV5JIEl9KoCHIjF2weCpdkYVkhZbXtk/qbEGeTEmmnKy/whLwf4RVZPLhyyhrLN54sQFu/CBy6efDV7mQjgmXopO2eb9ciL428yBune3Um1ORt4vh/qukADnAU3BvtT/fVxH5PtV4iDeRUukdBiaEm/6kdS2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F8OiKAmz31kNpblw2jBhlF/Ok1E+leAUZ/BSGEKPdQ4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2YCF26Qah74Ew1UnNQ9BsOogCswnvJyu5kQdTjsYUQkzXy/dNL8Gqh3fQ+kDVwDaMm3PsP4WHeq+3xr/I2fgI9DPlKB+bLGoitxNXaytLbwvausV4Wk55CzjoVWtDTVhBGinZ3LDoLFNkw0GBEXSu7RcuTWs+MpkWHajx0T/FoeEoffSIZGRzY8mvUotWD1Tf53WFK5R8M3zMYn/G/f3Kt+mYG1QGWHdQ/URxB45le/ylkpeCvXVK4i8z8lJABf/tUElhqshGLNAi0CackD5y2QTzhsrNoyUJo/O5MLmhygkonaQoma/W8DgI1kErCt5et45J3T/LXF0P6mLjswC2ayiavDSrFcnCQl0YNaX7iQtFv+E9B/qg9raGUohqtwTAXVn/JCotbz3vuE7mS6cC/sH5yrTO2cq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F9Fx4dWoaDTmttpe1nYnT3MnH7L4Aj7rlS5OVBZW4Ok", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VS9zc92NQu+cZiEju8jedHX8D7kyGxMS6oMP/ZnLi21oPDBzkWZnZrcd4kpssR8I2h7GVNLxFw1LWvYEDSOV/fsH35+AzQiV/NO+xD6mlmb/IsaNtfHoQW/07AtHzIs5Vg5FaPH5RPuGn9VoXUzvjcyV6BqrEFCvDUI4SF7iYpRuM5aAtjDKXgcUWk+59XkLZyhVMk6jLe5oEE6rIOfxoE4DKvolCFxNqVV7GlGdCyFkUeDkAdZu7hxMmeSRwQwjTsQyRMBWvf2IvW/0PCrotaAnwY7+TKGeSkSuEy+yRi1GXBmq9uTWdbBVNj7qvfhc3x5dVQpbU7tOxUBo+BfvziObODUz2r05NCAuIfkwBYMVkdXG0YXWUQ54BW1LyFdMbOflFjIuaYPJZWzT/Yy8QgPPVJ62Fqm1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "F9pvXBNM4xDFEOkOMaYMH56iM2mN2Ha9Htz6nnouO3Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uEsyqHm9T5Cpjt0F+QYfZCjFRJCgZprMJ0qxSd69cr8WbmcbR/OsGJDK4nIBZ9Xk/hmjmVC1MI386jlNusWIdzCPFmN08XTj1ugydaRhoOL9cRHMYasRC0Ekf6WvKHyRoa5K50PdBaxVbhzQBIYI0L1Q5a1XWoqit2I6N0Ef7KHWcVBgSXI0HhhMlpOby5W4yWarJeMLEfVBSqdIKPAphD7B9ojXojWmgO/GW7U0pXu5vHFDuyxXe3ktflK86ufX8d2lrM/sJroyhiZ6Ra9vLhVnXay2/mHVHRUIoNv2nDe/dKLrDQYLmYSIuF8HjQDFv0MHsg6l3RoKl930O5tpcwfeAcfwAzIFCVyvMu8eCzykAdvAkWT+Tr92GoQdzfJbuKlOmgzgqnshiv4lM0hIgrATWg6QVzgm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FAFlgfQOaX4vwxUTuYHYSi6dgJCvrIt5NH0yAjeLVIM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L+cP2iru9aO6sLQ3j15+iF8IO28Si3vVxjfmsel4gkcqFaJCRglf5boX2j1Ibvg/LvroT2HOp2OYe2ylD6fTDBBBQfV9sqFK7pSzEWbqNW27kG79ZnSndEtazARHWtYhBkfES/z4NWnVujiEM/CXfvO7NJkeZ4m0TQizlsYaCIOYa5JLXeIuZ06XwUCH7Er4cInn0EAfI4ACyWtz2uTPqVjkcVbftBNFNIUFoyqJXliojlXUOcxwbRwqL4e6i7UE29x3Q+t3/dIiakIzJ7+w8PhRu/3OtD2G4Rjqip397l3StU//3q0VnAYZlekVbMJuv/BlGSTiCaSitmux7G+rq3DWd0ZJCJl6m97EuCPmcU9zNgG/fXwnm426C+IawL1DUqYuGNf7qHIy1/g2z93IqDM/AQfo2FQH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FC8+xvJsTURDCtdlAYIcjGPufT0rTQTy8FbrILq5bik", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v5vammh28F9XYWsn2j6XWyz08Z61KkPHlutFvahwKampzT4qpCiIkEzo5OMXhgMdhDD8dR7cGExp6lvGaOYux2vI9bNXHawx24SwQ4dyXQjDJEu9ats41ggHlnjm5JlbLY7dMZYex4QvecaBwQpTCq0mAaZviOmMlgi9dFV7hK9TNH6Lz9AQxh0msyRgfaqg7p4+IclaPLNB/6DTTpr0BF/pGtQSsKnzYfIRuUKeN7e8yEe566JoC6707VNxJm9+QmTW2vUObjXYwPG7vV/9olES2E2pfL0Tq2OT6DIRDqD0nvYYxitde8U5QM8Ttj0kh89QVVJ33VE2ZjjtNQhgprBChyZ9uLiNszYFE66OsQKhlL9Aey4ghOysX0B1Pqihakfos8E98Tbe5eowC4nOTakQ0WPkLKh7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FE8+blSo8UDSECjooJPo65rbbRoAKxKkGPTSCa+loWw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WyFIj8yKrAqPNYrZho5HJ4DghJrnkxMb7KXKYztYWBmBS0s6Yn+v2fjxslPxxvyviBTb5hyjCj+WzsIVi5myTD9SyO0ebbm19mR6yBzdJapKw9fwzxdpepMQ0KqmXKwZG+v4QdIumYA52iFbcxiNSat9ALqTGAXE7nbcsO9+QrP/GV5iJUYjxNuHdlRoRfge72xfFlKb3PCVohQMrCtceTfHzE2MQGUmkDB/KncBr9PDItE5AJ+xPuoXi6ljsdWZnArfjDDCjlZLXVK0XTNZDIn3+vAvFDnQMOG57zEhkX6/aSsRJnsRBmTZpIDQmNtn4q2FvksVsIDA8dlbo1gvcn+STfYlBcDCRGM2w30ckazmRbT3XKIXoHX18fnCpyRb263/KEB7Zi9oNvjH2uu+UCUiCqxUWZZT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FED3AnAvFI9wma14GOJAtQQCXh6It3m9svTxCTQpSlI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hl9GzPoT8269SYlY32/pUzRtDSqm0Nv/dhPGFpTC05vQ0X1bMdL+ebnUucfDbMa3gqIBR8jZGzYt+bdq18dfKlhCJNc9Whvnp7Z+X2le/Xtgn10kXA8usDSCc/XEypPBvfp2mthJ3qqfltIeODgvE8lNmrgfYUX0dl7LIAMeqxIwfMUyz4XypgKWlgEA+SS5KeOkO2Z+bpirBFcDmpkQHJFXSEMdWdT05vaZwRyzlMNcpbObw5u4C0+K68VuO1BJhdIDWGr1Q3Pn/yyWgi3U3d8Hzw14q+LkJKUzwob7N2BB3vYRFZwHnjEoJ9y0G0KwJAv+d3ZFmOUQQYsHbB+og7RCEriqzAwwUU/GkYZ7VNq2/zKYBMhxWWiTsgUiQ1BAHdbFF/KTaq4QB9z/44hJZaKIMmHZ6HOU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FELCxGaQzgstq8rBRnF5Vbq9vxuWKSckYzJbo6gHh0M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+IvDw1kGA7wSzfLs1gTPcKDDw6b417AodBrrDLIyfNgM8+JxfqbRM+mRrHOL9fJV1NOFYckO+66RMUqCqcFeuRG1gxri9+ppDIUiLNIwEGAa/IHMQZy91zkFO2JDVvWFdMHw9dPiWBvMhJTLqYjQuVRJcN3uJ5AmjOdI+YC9Ztd2pAQUcjTUyTcPoFnmwQ4HgDBiwRs5lbU4UHKcQl29GrQDSJKQbXiIeLa537m5jjyeey05IuhUcgWUaQeV0ulTmD0fGjXs8VhXoLOaCmU1/8Qc7IT3TDbl1DDys0cRyAwIPavLzrIr8wKtuc9K/lw4lvT95PRBc5E+MGCSsdWtLpjpGKEC5MlLM/HaaHp7hm69D3R23WNeScASxdxSQM7hWXAZnkXkSwVwQ/4DF+rKfMwNNntU46hi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FEkMBtjVm0JkriGvI8YFMgSEP4++RzNrbutdfKlNCDM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sNkNo4BQrkfrPib7n4H2ztIIjJ96+WWkx1oyqKyCLRPe8NBNQ4nY9c7NoKNLVM6hc+ePVdQWK2R+8jB0dNfsu9Mj8jrh9hZniROmVpcFFAD2099ToYxKnXA196PJw96QCwNGfUc1uTZjfuLUNujHkl7UlIQTIzfj9Q+0DdjYCHTjBTrdTThqQGDhehBUGRJouBQjSFAYXgXwMdTFbW/1h8tkrELv+1H2mr+shPEsGunSeAg0jTWIYVPVY5634qV78QlLhRDMBWleCmMtmMwuNiVEL/kAJe6IXU0ihE40DPlkJypDe/llwI8RfyCBzIQ90GT4/s/D7NdAx7q0QOGyjhVHXTmCSr+DsZdD7GKifF7mKivC4mZjVLYh+t385wljHzezk3NrtHIQGGaKrzxtiJHMvSZLa7Uj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FF5ZCaVS3HivZdvFrCLwzi7rVCctRhvLgBmQFvOOAxI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k5Gq6Ijj1L++yEINwWTBPiTBMjNAPdmpjMMJfezGcII/QNJXbnLzQCpG3c1YE7KgTx4JgVuLe2xyggj0be+vCw5OIpuRe1yXqYuyXK06RStJerXcnAgmB9EYmj2hCYFLCYKAOLwcjGJ/9ukYNtosII/QoMVB+WpUOa35gc+UyrWqeYWVfK39d+bcY/fIG/7kp3+K9DikEbmuXgk6pOIszBGQqQKkyUP67PFeNiQ4y70Dhiq+oCYH9s+uMMNa6vuMroPMhb5pveIqVa3nXxoOkVHE/sf5whHGOh/cW4CrFk8VvIZQvD6aCYr21e5CHuDuE0h/FIpy2PG/QVVjPCdV56qpnpV/z9mYLm6oh0dP7G1ePPHajHM0pjXdf617rviw9cALbji+W/i6Hgbg7kigHvwotuLCiqLa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FFoTYLFPwyZl1LULvnlmcDwIfaCL/gV0eFAjIWG0lh8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZGiomZySqooOIMvoX2ASPo+UTLI9kq6J8M8CQ6ktSWWwqkJQjsRrFIEkuSMViDHw1upHY2MKwU36Ajjjc+McFYLa8es/6SqlQd+YaCL18GwJWoZm43+Qt80yUH4JV3Yr3GG5ri2ayAeSQ9/x4jTXfGnat1z6t81fao1bU3CkfYeHlqQteAKH+dJ2/XfP2jeTw9S5GmAEVwKDkc05SuyFrDyfdtd1fUM5VLOLgK9/JO/oHmL0U5J2xV+cFYCRDKty2VNrWBRJA0DpMegcwce5Xf0+Ce4zu25FYk5hcnw3r6yWzUH9BMSHzgkB6mVT13FCqlxCaoU2fVNBv0h7YeimdCGOfQ78zByY2enS22bnnVf4IKY6IgQWDNTs5LKNMMVITRE0zEw8CLO0vvTVaGRKrqxed7jgy/Rg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FGP2TlbXVMBxYhvAnVqERK/Xii4svW57ocVlawYfPB4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jpYwwhhcNgqQcMNGD09E+1Lh8YmKjFX0d4/cXuEh6LiEHcm9iVlSDtncngnJZ/zJiaAX/uQxu364lTK4fY7a+D7Z0LBa6fjz+7DfAB0GhPKBWkUdETtiXDkDgyQRg/bNeemHKnBG5Y1WDqPGd5WzuPZ3S5BsXdWK1QVmgv3MJ2CDJNYeOFK6zdtPGz7kfWSspfBQg41gnyBuqgX/S0g2X/RSac4pHdLtWyFVAi7ENdeV79CXYmJuQeqoOylui1adUeCOVnN4WajpYnMTL+8GCc57cmYLAavVz4ctmZySCiV3+ICEoQ9ekNtt1aQdG+uPzpC0R3/higNl6ahsTDPoQwUlo51JMYHqmqdHwnEGo/wXZrnaGlgUpSNlrKCaiXZ3YRcU4zpSzujJUtOtu76pg+Rt2zP/yTGl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FJ7v5moAch4g/7Jm38l+j9191sLkGUHPIiPrzLpJv7o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s809ixUashE0fkGX3zElQTJwd0zWD4xAq5qo2dNaaAopDdIuzWBfP+tBj3nf2szX2xRvuaccSNXL3FTcXo+diOPbd7uPTyHSgNFyBaE2Jxyh0alIGBL+4RGF/MvG2cK6wjy4QwOv9jV5cUrrLCnwHKTZEd5YuHCQGJ/6uXumbvU0SASQUWlQ+zlR2XSDC/N93vHCDMv32YsFf5auqZ5gmiMdiUFKd5+PyzqfqU6upz2erd6w9VK/0F2AU863jY07qxTiRXXGCxza/S3zsFiycwrVLUzJ+h1Awc9LuwBls/2FlCdJQAIKQCcezD1WmxAf594z9qAKZ+OG6ecaFCzI4QF3lMa8jKB03trJ9VOu3XehztS3vUI95ozCT5LuzENn8Y3Jay/c2r7G2aIA7u0UUWnkq9jQIFgq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FJemW+kEZhCBjT9Qo/z2ssgKGi4qUbl7ei7bjs7Fp/8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fNHAFWphgvO5PsKKPxAZ5jHfAS4r3KCfrRN2BDp5f+bCWiCYWgEJjYrSBT/4NGvZ5PslylWuB78xcu4WmHPuKW7SKla0O8o9EJo4uaw6VIQBSUOhmMJA5tM61zcRfyysEqWvVp1PUtXK6E620i3zihwH9r3ncpFfQyyWx03PPG+RF9qyeaypstEVWeFCxhAIFAEN9rpBIlKtmDC6/Nk+mlnK4coPu6Ev1A1uKoVgCylBR1LwAZY7pjhY8OXHGa4AYtTb6RmyFbieP83PUrY80LONAuYu8ucCm5QJDuRAJrahBmLEptrYvrSEzKUCWcvc+2oyypHvA4Lv5XMFgBadAI38FggbsR9m1frX20eY59Le1GkzesfQiTQ7QmF7unmz2+VZYH+mSTZo23rK6lal6EWkh3B/clJU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FKdPN6S4VXaaihYsGSqV5XfLZ1+7bbiexWh0tLRZRmY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ups4N/gtYPK8qeZmDdTo2SimaoHXb+W4KH1MW87iDE82MKXjELo3muhMAVRMBMO2tIS6S6QXNwg6v+Pf6naS7X4T32v1pGc6Y5d6FDh+F6NACELaNiMOnO1sPZuxF89vCZiM5LGBdX1ko/MLNuXgjA00mowwv5sCp/FczCQU0aGH1FI6ok/D0lrjIHrOgwCmE6uWfJp1bjaXMtJ3Owqv3rgDPNBZXrYBx98QTsp7M6dDtAgsoCySS3ZTmwjinMxMKHI1MLSUh3slczYbzJni9d7ZJZsfrZXsRtzfQ/qgpq7yC83ZHwE7GEGRlnXtSDkVEJgsu2kq8cq/0bPz1dp7QsflOfg0vB3jJuf/sz+zq+YV7bl81Yl5teTYc0szI/yglrS/TDApAGnj7AwWB6qLFBYOwbCXUiye", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FMNTt8gZ8EMwTWjjwCAvRl9fAAXkMUF0VACe6mY+ISQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EUHs2/8B5OlG4+9X0loIOBaFc/p9HoCfIWqivL9vrjpPX+GtVEpGCkg64/tSbfr5xBPFV8/ivFuXXS0uoloC4W8vzT5HG+WXtNw+3ux95rw4O10Sbiw6hCtTYfOTxPrPLpxOSyMztBtAp7kaJ91N/e4K7TmUhlmidZHGf/ADe/D8z83iCmd2gB4tdTkfcv/cNzr5Z2h9ZovaHCRDv6V1iRpbFNyj2sdi3WU/dEiyRJFQGd5iEAMmZV8t0FS4VwYbtgvymkodNJCYoMcYZCBwNCn8dph+rqaycHZg+QBz/ar7znJGfMi3G4fH/rcMnuulslvNKP2x8IIvTj5rNx9t/9ZjW+GH+CQPOcFohRAjUTgxwZJDqEeTqhzEVRy2+v7QMasAjsM+5AjFX/sDT4dm5RWM/TiGp7YU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FNvZMgKA3g/+oAnhOoeFH7cqmElvHT6ZIHhWdTfTgoM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vr3NbNyJEqwki/Rl/bRrsH3OzrWsg8I1mJr8eUFsav5+KQ7vDQvTS2IePSeJmVrBcxv1h/zItK5tGlaV+NF/M/Pd9W8Mn3mzXUP9A/vMEei27XO200o/YMFz1TjU+CiJMuPlyGPGKzPcbyhw3AbN0aeXwWBTmw9U1a+8TJygEiSANwwdPcCA8y6V07vs/nCZBURBH0qZqnnm63dyz6FKDqTtJteqpDxi3Estn1adGQmuPmJCTq/JhyLSdSQrefWtrEcPerdsAuRKlCpM4z8hnrjGyu7sCQvXa5VwWTILwPhIfKpWTX6g33bmcF8yvA+/kmbkf41BhUoHzKxRwxyVd70yYdu3qykgyIkhOVRylT/3je2xFkCV/m8IWlREfdFIf7RXuEgY0RliyFPdnFm8oIsdNIkWxqT+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FOa0uuYZy3JyqvVZQBXMhFKn35/Q/nIqNWDn8SzpRuk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qG16YCMK8MUrCfdqmA/FZK4lxUkSjz3tuQSFqpQeJc6EiFv3xtbOxukP3noYLaCKZhK8lgHIfTiZkXgto9zPI/pI01tKvY7LijWWTOydIa83zvNpgzqhHzSez3qHv7ikBw6JN1Y7mFIeqWjYAEiavQD77qJDzalL6/n88noojpC0GerkZA7fgN8z/AJ5H/U+dgErB9IuMhxA4k+X4smjm/i4T2ukdxVt8FdpPomoyMukJKwgbZgNsXDLd6GpUpJtddZkWTpG2ucnOnOs1BRH9XNfG5OgCQCfjJGhYyihfiHO2wJUiHoHMdrQxea6R7D9lrDS1IFtjmwM/B3a3VqjgEly8mVDLkT/23qvcCdzqv2m5sh15J6AcWwl4ahEWEgeU96CVaPv3/+j3GfItQkxUCfXrovoNjkR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FP3mcexwwrz8zYbGrYDS279cbBDy4T4grRgQJ7BkyXU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k44sJQQc3e96/FA1c8ZV9gF8PNvpx21Ff2mFPBAxiF+pymwfE8mOSg9Fp9y/bZ6bo3gcC1UQwpdZtUumKjHAVoTv6dJqVTz0ou16/cfAukvGGWMwPuU5ieZuY2z8FOnZ1B1wsuloRCLJdTo3yuqN2IgbIGdBkON3z8UxhdoK/4qohx/az894Oy+qp+Twlzp8hyTsDf/SW1ZB2nQi5yGSBYRX6QC5ziC6gn8A2Z512Fb0Ji9VTJlmh9EbUCPDeoDFvkXGh5U60/89l42qJS0gCOgHu+SQVpYjTwajsmDQAQnTaaaI7ec9K4QbXjeWyaVCi0+exACXicbGwVPycW3O8YFup9wFoYAgbTKwj6LoBOwNU/Gr5yAstYT8YQ+NjGLl2fgG7fLHh66BYaqJ07Ejj+LdQ0e2NQIx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FPYz7xuL8Cx1vOcjQ8F12H3RKQlKctAbLwFNqdQUzRo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8n0jwr278YxGc2SA4KbO6WCaLgOAgWWnHjAAO78gnjKRCTDge+FiF2645LXJb3uYFf2Hzbk/lzRbBpMnGyV/Zb/z7QUOOxKs4Yl8fP1RomF/+edUjh1caLWBF26yYRMXr4Fh+d118j0ufm9f94C/Zp80EqIqLJCA9ZGqqzwxQzjyVJyzacZdcoI4ZKd/MmpAxM4QKBpKmO04iFW5Z/1Xjzzwnq9iNJ1kmX4RXNvIKODxCe0gNPny71qiinKgs+KltQLXicYvf7j1eqw5Gr6u7/mhi7xC/kcdfLDY7h0abV7k94RIZVIrobJ24zV/4dkW7xP+5pb6DZouFHDlJxkSVHc4S/6q1bvAEriBnzFbzCACzoQzIuZVDE6nmKxf+a9Tddh4aznv0GBB1zAe4np5Jbbms5Siky9/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FQ5Es+mRzC2gwxl9IhrBLhlXrM8yZspbn70yQtmjG+g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BpfjcnJTPAxhjm6sgzYq9hSSKWL51NFgf8Gdn/u5Ct1HLJXIJMyds4TuUh5sEi0RYm/0ndi+PvnYWf8NUMPippuWiX2TUXZP+vjNTavyZpxzClJUn3bvTSuE5TnHOG2FPnANslZZUr7lCtOyYq9KrH8Rh9q/FhfYjx4iTWEXxno/1WWnH/auIy7sgX1JzzaDm+EvPqp8LLzrYET05PUz8i+6F8+H/a53E7kOalHYvMvby6noCa0zzfTzEPcgxaBNTwwsmkWN9t7PevM1Mq/2AAP9vSxWu1bnj1jXWTS8CcsPoIptpATbVtfaK6Gl1KOTN/lsrU46pKOLFaCYSjS0uXvmDaMLEEFiH1iSCtTvtCjXMJuqJUn+uTve3RcRBbpFHG4SgGxQTUXcG0PVxXYB3fioiLt9DcKN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FRyZIz4/3XKtmvmxy19iqqEtRaKtZmAWpoxu7RlLLb0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k/iG/QS3lSWMdW1cVYcgovd+CmyjP1SfQPTBjKGHo/QiJjvFBDk0r2RaHCvpKWOB3Fc0AG3z75lE81ez/GFk+3ZT5Z5A+iT8V/0xH5rs5So8WM8FZMh5Oi23lwhAoI/diT4jUyAxrPh1sUbwdpPxbVQXTZdaNNLhkeb5i4J4aUlrRZKGiGjQEsmZWPWZR8Sw3DK4SyUD8Si4ZQrHOFaaLvaUY1fL/pK6ZapOyJr4OKp+vqO1NBUUO4caF6LvHF9egCA1DKQO7XKOdi+xV51SKH17IaVpNe9WZuHADvz6/QXG8g7XVQDztaiAcoWjbSLaJLCUe5XsQxy0Bt1L7ZUd0fVfqr4KpDkg1tDN8n5/V70C1aEaK2tU+WtQavSZZgy2YXEc8guhvYD3ymcq6jIM2zdekHpj86tv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FVZ0CwgEWNZ/HZJ6epq5RsiCaBiTzmxgIN4e3dhuizk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5AumodYLNuxeEU1itZxrsF2tuxaEqrycUZLSGGJLO3K6dOSGUEc5300vxqLS4VaW4lX3KU4fiRofkyx8DsS4NAdumGvMIEJdhwpnV0bQFVaF4u1FvufGzYttDCKfSN8PPco5eVmdqEiJ5VP31Ym8MvNC2T77DFtjuBfBDROB6Fzcx/rGlD+QNR+KmKZiTnvTXxcBEh7SXu6K353iCXv8zD5waneikv1u8On7mQKZJr0JfDpGYxhg1LhMml8b1GB9ckCjDKZlMiS6q1fdgFeh+tvEQryfC+/sYZplI7PVGyoRcORZBZjgqr1SHrDW9HCKaoNzSYn+y9r127R2eHyAVz/GGR88/puk2avzW/lQ4CTyOhSojEpG1Jb+IIYqL8QwHjLdvHFVmqVI+9PNS+AUKWL4W3U37jWb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FWLRU2XMzHUtrn3U538CgmINTU7LHNm/J6ZxZoN9S90", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kspL83/VzTw/MyaB0ajsj+kMK+ayX/ipYEUPW37QEPBJ4C6awDWdwxD3oM28zCGR4m64PEf317dau2e2YE44FO02egunPQEUMsPcweZZBPuqxEoCq5sqlfbzxEX5hsh+k9UNpiInBI3qts8FuNqTvrFd5nEV3Ec8E/3rEJeH4U6vC9Xd4RuwqDdwLs37XIjIKKU87Ok7n/7V89upJeq36ReRrzUraz+Qeza4eWHdz8mHJyXcQ6EF61TcklgfkCan+A8E1NIOwDJ8F1J6wddv1qI8v23/k2n0z1RzDZL+ws/r9WrpEMPZ4vHaTjfg/ADZbW6wceKTwrmtF/wO8zXFGR1JjCHuySUb6FHepNJj8n8jyYoAruixkMukn8SYjkIIJUEOxlvOUgQyz+K76hF+MG4kuLjkBovn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FXgq9+JUmn4o0pIWHexpDGb6XwcYE+UpMxIoKocHoDY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3TohTFm4Q6TNWo3wz6uKksUV4Euj/JFLExOzPGdToI2NrQADBbxXBV16ERZkjz8o0/COCVfO5EFScnudy/RWJKmDWQyptx5aIrQ7PLqfCqgIjV8GkHQJeI1SxT0V0GBYaJzH5LCjCitLZHfSfx9Q2vEcnFsMOplhS1yBx6JWOrJZuN3eRfy8ISabAKkvOEdkg7+1SeMpj1TbYNGxxP/8+Ligh2OuJ0JIFQWxHIv3m57ngTxbbm3e3ZVOpjoNKmwiGYw/KXlq63pCaxcKgPjGMDSiQQUa6MLHY6mMStL9opolDzKY450I1SORxbFCuwlCvP9bZv5AcNHFU3d8p/CrVYV6H0BA9o1SrgPYjtdSqJfSZHh7zAHpIsTE4iMKzpAViLcr/zmdRfdB7VkJA2IUlGPBvtD2Qs4s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FYnmlFDJ2uyjbbEFNuDGWGC86CUzB85IDOYZfRUvdTY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dl2u+G1GE/U2vNfHf64RFGDAWLuXzfRt+788YUQjEqdn0Cy/vf2PNE0xg3AC+Nw6Lzj5ZzDU25G09NuS7ZjXafs8ufANiJiAGgWAqpvQXb0vtrnL7o3pfMKJnldnYvyhqZ/ie9zb1Ce8s1lJQAyka3/TKq8HPnueJfa6x7uGQE03SCLoNeEhSJw50iylOimfPNmWwC8+Ero5Tfa8z6sXi3RZvOewRLn9TdW9LRb8LuedSptZbytOpkFb1PN+CB5Lm+I62AhtZJkRhfgsLtSOEfWOfCyaiS3n6tgTbgtV7v3+CDG+l9/oURwTpunvFs2x6KjX+EdeWTSR6vfGGMtdf/LD6h1ov5L5OnjwTTwKDyTBbNTpEFMv93uYiulrLXn/ZbWj27/tN7PsZQFmeLsvqNrzrEt8BuBk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Fbuxtf+FlPDJNhFdGbjaEIxNf3NKNfcseNXivkTXfBE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YpocGqytVGnamcbQ07AGEGW41DyznzfWfIkQ652+cwUwnFXuePikU8FTcW93w85lg8USeUKFZ2W4EVaXMcIqzj/bz22kpFxeKM7JDrd6SNRcGXd4zB/ISbplgkiTV0bA11w/8a5PiTTGaSJurSRvSp9eUnlzaUsOMS09yDc8Yb4Tt0XUpmTaAdhAhu+2CCcxBuM3A4KCG3uAm6Elu+EEqKWgGkl8ERYHRev6n7T7PGHrlmz23TASeYlqoeqKiWvihObTlO/A3UIu7AuHzLabTKKTVebRX66xN6t93rKo3+ODNEUJYve2WS3ejSXbL6rvTjr5mgeK0FHYVsF+gYJUWgKtfo6jdiIuMcagVcisKmg7l9rZ0jp8N8q71mrHhTB++5uugaAFbEpGdKdusC1+C9ZiX9zWBZl6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Fc4Wf/8z38a1P4rcnfqWbAwyYzqb3/FgtflGxQMLMIA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pY0bqOoKMbeyWveKVWO04sY+3PyL+hmSF1xIQSvubyKu6S2G/EyMUrhJjH8nhquRy4zvdElpGjTshl5N72kdkBATuZD3lLIqWNROfXslaZIJqhD1HI3qSxLA6wmbZjj5daCimokXWE0ubuWtbeA1djQkuXshmmdCKzhRk6xWmaIaru65YvWBNeRz6KDlISDUhqrzuT6nN4H0DdJjW0Y5p9akQjqLQRDsEXwkOFJUGIdKoV29pSoYR0X0ALK/moO/jk/ME+HR3EwG6ka8LPf/Ha5Dg1ROQHySD3npNijnnIEKdKd5m8rZVN1zhXKTDwJdmr4bFDHZFMgVWex0oSXnn0fs/LjI0n4+gqaEmtEGZDOmQVGI20xE9BCwDXrIY4xNDrXhVobeYmPpRSlL6ETkr503eOmN49jh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Fd/oW6eDTN9ndFnVEyUSOTfo4HkNQ8flWtAR/PoT0no", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qiv6VbBUmsl8rrTjYJC20TUn6xQoATybM6xHTxTEByRG3w2VzXAikc1oOmUiXxRaZsUM15kf95nO9M+iq6UFhtwjjOjFdH5ReDHHjR5wOGeEWA/MddtW0csmEI0F+HLQiS/UmvY0SKFdP0xR9qwjgVGx4jSh2PxW1uh5KAO5x6DrDkJgxQKWNfoxtKtVIrWYWvSu+0EM5Kw6PMhzGBHLKkkZhQurEpOY1LqsfQFcv2aZ7nyPBspSTRJ/YN5vJsMpQ6y6f15VPiJDtv8j1KicG+4xr7jN5XmkcABk8oaWF7S6lVQZOUVtx/eSH+Pi7+CzAIYpbJg0/Uyr6qOGv0xv42nwPPhsUN6y2yu979sRvRJLkWvH52yzxYzKWbLoKnVh9CXGHNwQTbL4KXm67y54uEsHmcWg61gL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Fd8qDo6AwySSLC42G1b7e8L6pEbkoct+BBycKFVCLYU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xKP+bMDVqO0FKNwfu0osk0MfhsjZAtHNR/0aDszZICDX4zNpPzxOEbh/3SMc6I0hJfTKhO922lX1mgZqQzyGFAHVUC6dmcJ0fZZCBiCPiK0gdLcLG1OStp0kfHlEeNjnzShLYbakXFH0JH1giOJdSK+Yj/EKRYuqJk2pYHsegbvd8Ctiso5Jf7j2zx2dsEuFXyK9yOhkUH6zjwCiSl5EA189zCCD6tOiIdjNMr0JN2+ds638cU8JP1Oifmn1ctbk/Wg8WHv091Z6qwns+JU5d/044PB3x38W0svtFMzxMiZErRQQpmBAgR4qeGrY20+/n+BWdSNZ4pKMCQ1L0CBebH700/83y403F6BYCZijJyq9LDdloF4JTV3mcs9MGBOtsKgeDotAlm37/nJdEMJ+8P/MF3uTl1Q0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FdC/k9eIyViSfuDSZD3ELpAqCBW1wSFsHTaLDp7JH6U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RERTIIcTLe4hkcj+YwTei3CfB9N2D5qUr7GMRWjcw92F6zMNX1qSaGNIogvUYFZ/VCwGUEvNu4QnKt4KZtZ9UMUJMO8tyPL3lQqImeursj/7LGo+FTJxnhxidsci1pn0Y1//Xr6oXYNgHTOegszGenPGq6F/jrnSa+aIpAGH4vb2sq3n+AkHzIUut3VRpzdPKMxQL6dr6RZBmreyxlkmcx0siq44Oq2OeFoYbQkFUVqgrD6OByLWjoKLvzkRxehuwDOh3ZG8qg7oyO4M4xr9g8ZyErTWNQoxb/lCzvISwpUSbf5D5MSZF1/UEAKK5PdDhzhANs1DzSeSPKiWFXCfSfFnjAPmABsh3Zbs9hm0cReee6xa3U5X2MN0I2wrfaRhXJOevOXbI8PzMJZLhD4HGuiQ7ujxvyHS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FdKBrHZH/CGF8NdqbhwG5ljFxSOrExQxDaNqowRaNmo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qWOxtnDsPcShM6KzBLF+DChVqh/S1BAw+zYLSxf5b/zq0hG6N7TfgDxYNtVrVi21/i7wJbh/SkHB3zpXYQNGfg7v9WWQ3JWVgVeCAarYOA3BVBwTgzLrljQ4y0eCYrj398gdFHbst3arDcpSbSgfUnkWaJOYbrGKUp1i87yEWsjfoUlU7HuPSKaeDISfwWRpKgFWL9zDqgcGSPNR/WBP97tlybtQDjI8D1z8PRStNKmjruJhLGJUU8Cnj36ZKr7ra+VA2nvpIqUV+b8Q8Ck+j+l5kvFY0qXCqPw8MKvJp2EvGSnYrDhuZmPsx1yNZp0qhZRZyJnygkZpitI8+o08jdQgJD3lC+5zhwZEbIYfkRzT0F3NYu8wVrjQ/1AxkDiqIfILlTUOoXaGCpwCJCC/aQ1dvdzj1IGC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FfXFgPNNK5Q7cFAJxL+EJRhVGYfewFNmD4k2rT6qt4A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8dxyu9dSGmFvS7/LvTVlv9IIZkiUowMK/THR6t5tPDBMMNWLLIlRED77ealGUWFhTl2IsYTkYQVpAbP4Dh6yq8N3wNWzvKsacvgy1Hr3nN+QaPmtfcpgYJZh0voDg3Mh7ZeyB7zvPUiHqNAUvSgHw5Zi6mlocxOdQbL9TxR6x03cVb46XQt63JhhVfQPhmM3qH7OUPRDyObD+CvNl5xW6wI28tvnsS6Afmb6CI/uKulo6HhfzwzJXZCI3hDRotoYSH+PUW4Ddi+Gm++leRi/3kRDgEUSCHGfAQ3dxT6VfBs/eeNReKT3Z7RW6Vza4aIOWJ14G2Nho9IP3qZyxq38RSgHWj3Y5P7bSl/Ztmk6WD762FDAG+rFH7wnvN4m1epV+k83GGbkhpreL2TbP4a6ndChdOguDQ+z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ffb+EnAiEAr8B3+M0gtrO0UCe2e7O5vqOuAdVzh1OtA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RzwoGbwrwHUFyUUf868Br673XT6iUZ5oVl+bp67fpOI/HnHJS8eW8x/721+dOyL3FMLJP073l7rj+Prsh1oZSGs3t3zMnNSbhRnTk/7D1nn6tkCRk06FxWKnhC6d14OFZAbBxwS3z4HaywR0Kd8N7qYtcpIQf01axHtldtTebmAx54wdo6dEM1tpUSpH7/rtADkBIuhfYWGQ24Kk7XRZlK2tEA+2iLdQdi3MGNR6WcsfxIPku/e4U9JhneyPLJJr+XdXDUArIc9NAs8CgKCCVwuFsNMV2cuqnwxdAtPcMuAmRUgWjU6mR0n+By2vu1I7duSWagBV2xpSW69OjSo1XGGYR/z3fuKKXU6EP6G9Tru9mjJ7ASZNTSGw4VHogyb51HkFqKH8O4Jx98xMjNF+WqaIf5dbm6rO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FfxHyAVjrWtHX/Ecx49eD5llLY7msA8TTdtRvi+NTLg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DuVLL97ewJ9fG36nCsf6fgS1sIxSw1N6B0Vlq3/LQ8jbDQdZpgMEVSXDTjxjdTSO97ejjp4rS6c6zH9j548JKokmyIBBaQz/eG/3jhmQrl6WfHnfc0kAeOOHYRP6Bd3KPXSD2W5LFRK24IClpxyAhg92N94Jk1czHvtF75zTKegX8pUNo5R6NEB0lAarxPk/Zf13U2vN+NVUGEuyRchi5u0P5Z+JzAAwdUSTC+1stblgwhPi5o8TV3Xm78HEGKVmh9z1xc5midvpO1n04OxgPb2IvDWsnX6pCzf7FUIT720C3MPHWTqG3et5fYk7yp5iiZraKAx9Ykip1nNWZHrBYni8eZXThfiE364wZ+K6JicsOGGytDLEccRFlvZtXctrjC23YRv3F45QfeTcVYI4ZT/jRjwiXPWU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Fg7aYLVwrtB5MykC0Z4c101ZfK5jQkMyL9Jp9Dnu5uE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DFZKf36s92VizeBSFP7nW/U3D5E0inNRKSlVJfeIzJx8Yksyq+3QaOYRXsRP6hn/SHYPZQtoccP5Tr3n6hBEBhctSjJQL/qGwkfnTL63NJhumU3q9AUBSL3uKhpcNJEtWKleEMMV4Gwj4n7BJX3qnfHtcCQ/GUGJ37t0JJpYBB+82RTeCEHUOkU6k9MIVNL6KDAM2CTsQUFto2vTY5XdgJAt80I8i2g4fk0h1n8GOyE67shHjr2VZHpd/WesamBNRpuVg1hhtfEdAb+MmTSbuXKenbGFuYxHwlL9M30tr3FMmKDM5TYAVM4Cmh6qmIuLM+xWMTyL3wwAOrS0aSbZ4wUKMbwitDCV2kqeNnbYiLPejknUQqdeKIOixIITT7oDo8mh7JGL/2LrkmS8ELuOxNLoGeaEtrro", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FgAjsXdL84fJq6YGJVRsjXrBdxPhosNdLpIja0uXAe0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sYZuNEA/inij9EfxrQ2x67sp/9wa07URzrMHvS2EwyAMvsV0qJdKweXCi72fddqoi0Kjb33WLjSo8AmbTAxD0CwlnzMn1Q49l9L1HB3fZjpgmRmHJ5PtZW1/qu0YIHnAghvCsgtxkh7fwOfCNMzsC8kA9ZNxxtlsbQUo4jwOVTBLkRqWIMGp28UPOK3GaqdbfwsP63lY/e/v3gsDNDLvmyBL996uv5UjoXzSzr/AQ4AnM8vrlGRjs/FWU2pkR/KFCZ3p78h7bKnQS2/ubNwIkNAV/efr4dj8jaFM2E6J6aiE/Z0wWV+vclEc5Ydjo6CuLNzNs8M39QrXsUWnrYwCydNbMAea3kxA4+yyLBwD81b3FG4Jo5YyFt+6v7gU/e0giJED8CCc/vYRfllvhPJzn6dnhm9nFBEo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FgBENt8rwESPuD7RbVQGQmyUM5reE2f5p+t/tOcN8+g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gFVpUMCNg5fGHkYkseNrVJ4mVFnZeEkm8TekJGzfHRGVK4ZpNCUK+CAAftlwMzn2ExDRf8xck1/fq2zaDbOdvV3MLb0ouGl+wcwla0isI2xKtzVmnjg/c+CfJaLoQLel46JYHFuh2iBsQU1uVYq4IIzv/XV+LwbdRZ6HldagKsHYfZnxRS8EsUXSif8gUMx0G3+ZVyaazYrpKfPxASGBxPe0j77bnxJnuJVNJAzHNdfiI5C8FvOl8H6sRfEf8cqB0rovygALJGgPH2CXY6PyetY4W8m/wQWF3pnyIZZbBByK20y5oSCNeBWv4Q0i+XB4y5I5dVbREefVP5DaIulI1ytjDR01mu6SCTen4b/QCFpmjk1NaYAn7I1tmMk4q47MGDZ9xAz1kvRwAGLw26tOYfcVcUSWafNa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FliqmULO/P86L6/ukcUqQnwQuZGTetCjUGwnA18Jsuo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OmpPskyvLGrsrhDDY8SAyG7A9AliLfJQWldzGkw+LR/4QsRXwWkVcpUtffGmUZ0q7njG0sxSlQs7Y8F+YsxeFr3EASL1ClpnS/Iqk228WRmpYhgOzkrKAmCotO+GWuKC5zjK/qkanQSKOIUjumIB5iSX7L9A4cOAb14iIZYbKU2SltoQigv5IkDzPRAbl2M79/pLIM+y5MoQBnC06Bb/FkKi1SI0E8HZsFzuUrmERQWpQ8o+wfFo+cHKSgHzMS+4v5PvYpjqB6zM6V6n05eTwDexJ/UA02GCsOSS3U19RukBtPP8g+XaywT1hvdlw/IcEChTKZpFGRRoY7Jm7FJ/PogYOp41G+V65k67CvKxqJ+ItYpMdK3RTxOEDJ6i+UD6H4rvTfep1/LoL/Ts3jFyO+iZQS0M8N2v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Fm+DIzcYlEiZqOnkpOAzl3fzD72olmSDcDKXWNCQU0I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xO3buJ85u0WxsGuC/oLaBkCesm1en92q3kRtapGo6yjLWKodUGtZOHkq6cRlBXCYu3ZAfoDkaXbPQ3BUxP+T1Npj43Z2nLyLMc96Y5HAwzR7OLeUyA7el5//cWSv2hYikkUdKt8pHbFt+TCmChkSKY2aiKPKL0CDkXimXmFSRDu2gc5KF4PJvzPUyl4B6rMZV7HL8Lgk9QV5enHW++q1dnoihQZoH52wo9gIUQ9rhVRMhxjjqfoztDg272ESf9aySHqKR6TjehtZxCF0Hry7tCNh/YxOG4+EPcNnvY+X7xaUMZkUhMuxYY6GjTwRHm61D5cqWMOprMMejJCsIFgwcTONE6p0kJVMqqoGbypML4cqgLfqTgMiDL0/yD5ul/dei4xt/H4K9aN0+0pN9O6dfx5QZMFXQX3G", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FmGmsZB1V4IcGwadtUe7IdzuLIjpBGYGHSbmgnoYyL8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zaxpBQHNbxuRIELGgXCfH+5TreJ0WgDs/ShvnEwVAUZu6ZJhLfGwh4dy1uo5r6FEbxOaF2D6McCKlHkZo90jAVQYgeB54p5H4XQhlM/vepKSBD9/oV1MrXar7uypIwMyoGCJad5Rv2+1zcNJJ0Axt4/hxRgXtsP6R1iwDtLmgSF+QBGQXkhT/C08uPT1xZ/PemCi5V61iZqU+d7jYmPkvtn4ItXtF5W8zyPhap5FbUV3NKxwdN93mqW9qZakGf2mfaorVHlHWJUgRLpu4RGVNUqYLZAK3A8rp4c59bt7PdWdbMs7Phg2HsRDeGgAl6ktJnjrMJeOcYGPz5dNX5D+xv0vybTEzUYbAliyE3ZBVXThNAbop3VM8lN+lmoGKqIWCcmSqKzWUHFyxvXRsjsGxsQYK6/03Ljw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Fo0jbYaaRI+leXkeM1yiVigKxBj0t5M6gLGDjMBIvIA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "luJmOnSCKzgo5NmHtoSYryg/oNM9cTXQEvs0EI3XMIxrW2wMpW7vmGFa+LhhKwNhJPYu48uBUWlyJ8jdAHEJm6gLvo5EDU2JHvV7WByhQLih1qZSgB6cxkSM5A68gnT20I6ZkZrNXhWXImZo59Nh+1nTZRA50MlD9kDypBjzg70dYBEvr+/x33exWeygenRrmpl9Db1uYcjGLrmaRN11o2Y8LKohxm48tRlsw5tmCeo8C1/Bf6/P64imRNeksxVG6enZ52W1SS/dQ5cOTUzFbXwvZA9GrVChaOkU0ud+CwlrOg0iJhIDPlDDV4KFaA5Z+iaki8E3EpIL7FpjsB+Net0bYvabDxK++bcjAMNfQ3HfQh9cFQK3WmPmjA2P3WRyoH0YbzvU5aWQItPceHC4hupVlEeLPqA2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FoEslpAqrWKTe3vR25w55pcgrtebXZEfredi48Pfh58", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2gUp2pw79K3SJ9MxKN8Suf11yAwLu+XFkeQdphuoFpYvP9rIHfYvShtOJU28Z7SOU5ri3T4nbkgAZrcobo8Wzsv8JtLf9Jn0zO4YbBVVbifLiB4fap/iYcSDx8OYZAVqZfMiilVRbD7EUBFq604wRIZXkFdgt3VMRC/W1JN2GKXe1ImMaxOSt5lM14duB5OiJlSQvKoKgVq3tkIZql1/NoLw+JRRvDJ/vmlEmkMwMI/AKhyOJuwoH/sydFvc/m38/IVhkrjXveOC/UaVMyzgJnC4oAfxOVdz/l/5D3SYUm0d3gybfEnvNtUOnLLdnsbvbsHRvEhs0KSrfQ7HlsriYXTcpwuQwg36h9ptiQPyNTh9LvnS2L/Bl8a03OITxCVkWJ4h17+rp/ojeBi9GCIWzu9nO+YIOpNH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Fr/P9BbQ0OQKZp8uLPynY2z8Nf6cbRl9lVhdqPJixmg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NEZ9cyyULr9S+XYkZf83OMyYnWW1m4J3RqT9qNyQPoT9Znv87j5uJ+JHavJfRxvmqSp7lq8kwnuAIDrm0/3tQbvXrTbYjzntzbOPMM9bXTmdn3Fp0NH6KXXhcd/rnBbIAV1PQQ4GXxOblqzqTLsgW2m0DkPYM8pE2CNfkkWJVk2WAp2QLZx34B/1LeuPLPKgl/U7JYgYvoVSkcbfdTqXskYnH8U6qHp0ZIxjDjICwtcOAObPwtAkBGmNm101K8htOt1mPTLhnrBjzUnQK+s7Zmxs0tsBsI0bSJSe7IOCcT0ErSrje45rjY8uGNpxofRmy7hHby19e/w8S0TUulxpnpPJcriLGYOJO/M0RQnY9y0Q7rNZfth3wJ/Be7iTYiu7quOD5iW37OcEdR9L1WRbhQyEzCXO/WYC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FrzPAOrEomxyJ7JzrBILnjSuKqe2v5yYgZdx2AmsU3Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Hq/yzXIX5HfHBp4g4YJhjPp3HEF2yB1D0Jr70/SXe/8hW50lEczCZgLw9NgDC2wGAocWb1uGDUCoGq+bZowgqOiI7RIurtDXFZdv2YNloJnai9bVdY9K4mDXPnW4nm2hDevJbKBibCT8j9ulmocM1JRHWgtRxGTA1Ulc+OvbE2aAAUUZt4KZaSFsXoqytlBqgP0ljhbUI0X9gfpv8FV3AoVgwnOzLvgwDGVyx5VDLSIVQtZzXR0JIWJl6JHp9MacHOLymQINO2cd3Vxjs9LpemGKM81NTBm9iXo9Jo2AbIEUYCsRLnRK5bAot2uf8ePmIL0xOFuOg1touLMPN7wkYNeGGlhsyGFlnWd4E2yO0o+TyeTJXbSnW7kPsx2vkbMz88ujql7ngu4iDCdQBrSoo5RnrCOxjtQL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FsaNj69yTMLwqwXIeE3IMgil0ofi5IMFDmJJDKbxLqw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IDnnK10mHmy8HfBvonSTQ6J0BvbMO31dgGa3GEudtFSoUoAfmQTyq6Cv1eez+D41r0L8i4qpH3rFD4FCj+gC0eMN5WiIcLf/AazSG2AP7/eQOWjeDXaiEfcPwDmwa33Atk8q+FEMr1nX7TUG+PMqbCYNuRAhKQPXV+9SAt9iXBrA+MPqwIoUb3KlsVlDeRLB3RRJpldN/MUZv1DCrKOETbE4mF4f6sVIEkpz1OOsWqKVDUbcDmCbnmtVO731iYQzOm7GLITBsArSWNs4qwEMAJlY83+LUGvoYwguScEu+spXRTOKCjvcHDQU5OkwufR7lTRBtqsJj37nDVdgnP9WOCOBiBZLG6TvpGTogbRhJzjlFOkHH/9Qb2WYESXT+l0lYp967JeKaIryUx1M6wLdmzCo8190AJUz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FtIihwpcwAmMzersZWikggICAirk63GDqGJnx2Qv3Ho", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w++Rg1kWjObOuoHLX5neLUa401cttvcOEUjoWBY2Ruzbk7ohAkij1EJzsBjr2A+RSI9ziSAhRqATR/7o/1OL2YdVIqIvjY5Xk7Ugbf+EtbUn9zWql9lp530HKk+dua/ffvspS+7hFHcjX64zroxZGCJmbe7kX2KnfdpEv+7kbkj30Ym51udAeQO4MF8XrHdfcEfSoqKi6Xd8xHqak4B+EFzXk0v4OCgc7bA6SqBE6ehkkTDCSHvau1WEOFZqrkfzDBdhKqU9OJrHVpkWq49sQ9j0kBxKOGx3d6roH3FABGCFmmvawnOD3jMiXhPMWwJyfyE5RD4TXnmFC3Ei3Tlx0e62KL8xR5CMUa476bEDjgx3pVGflMqH5QU9LCJmdRv1E1MfhnwC9S7lnqsIA4LDIu8p8l2ZeE5a", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Fuc75XUxlA+K4gOXpq3jNm1eZWLXFKxg2FI/HXc+sDE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gTqVCXzmDRXpYhhuix0BWemm430nQ4uhBEdaQwHMxcF6v1MNETl9+3SwdSeKRtDH2gjKKPwYF6iQjccGM2ETQJ1l24qQ+itFR+WcOw5HOw/zE+YU2B3rE/AUNGVCE6wii7GfXpNpNRxHlryuM2zMEI48BlNTHu4drhHUTkx5BObxwObfGa6tV9YV8r7tYT2UUGtVlN+rsPgkKQ5/rtiACsfsTGnfDWU1EEweFHv+aVu2mX8WnmEdezgRppxTOS/TJXwtmh1IP1udFKz45fcau8klStZwBpm/gmYgJEjSlZQwDr6HgRNfkEitvI5jHN3VAv0qKbnCVEAbTwQKoVqca0S65jARzNApbiNAfm9FWhKYBpziZJorztV3lqsxqg+GDJYGP/M4CfbKjXnZsQybc1d0Y6g6EGsZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FuqBwOk4Cgbitw2Qn+MjR+X3JKYbsUJLx6SGVIZ586A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gA2U2mWhDXP3giCtNm4OSQD06w/nYSivU+ycp137iJgwJqW6e4X8YyF2TW7yRqRNTzB7Ng/bsW4ELklcuydJi7Qrxh/ZKIdEkoPqaj8FJXvQzwGmI0XImntMufLQkaSnhQcg+66AZ0pqyrM0pWgYmtbzvuFCFYld+5lgHXgPD7E1eOkwRu3TKFPzqUgyF3pHYc3lRcongUGc0H3/bqVyylw+daW2Uvucp+7GDghr2yo9MODdFtGB9rCrWcp4rqQooD9s3T4ii3onWq+woGwlicLfYTlCPEuYzAWJ2rmXDmg8whFB69+Gpl55ZrICY1/+e/3cFle6vf3vIxiAh6Bn+P4eAktD/Lc9Ad3aFYiFojv7pDA5nBUqpoi44jKhnJSqmZL9M1TAD4eYXn2ls9T01sY2tkivYy6H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FwULNKbw5slqb/Kec9T+MgyDTgD1OB6iCJY21qDLUFw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hJbVZxULH3CzXZu1Q6vKlAKXrXQ8Y5wLfUb1m1RCs9sk4ikBrqfo7z7ZDXrQWymEEv5NreXZytl64N1eOWqdmMMIHlhrT5n4qfgabtMDrHT5gK0zz1VqTqVNdeXaqXx6dGzKTVHXYs1PKsozJ2pdQqMlFP95ifXDeujY8mKL0IZXFmeWWBy/5CGuO+rMsnJxqDjw6e6TimANFqEy6xGBoXt41bSnXiyVaxaIptUA3qM7qxqfK9BZdcgd4PMd2J7ALcGwpSh+KzX94+8Dn2qAI1ca9Mm0oQE6OBPaXge7QfoaVUR9M8bZFjaWmRHtW8E6dKs14GRfwB3TJbJSjB6H0oK0QgwUHjR16RDzbwNX6IIBJfPEhPfMBDNs1Ql+3YUihYDjM2tXQP4yI2hJHod6aoFRCVK8wRw7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FxUSpoZ8ykSe/5vcGAeR3RLAEX49dXDzDbBm2YOneW8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a4qNkTVcnzdOZkdvvJ19dQ+IeklG5okrYzz4C/tudBC1ywwn/DCc4le8ZtWyMn3m+BfN42lmC8uKXCc7PZTSBGDlfXYDgrx8bWshtBdTei4JOQ+qeQgoCSYXrVcBmNzno77TSewn+sQL+LL4k/TFXNYRa1BhdC1q0Wm1bH4ZMH+UGSBzxpC7VmxKvEvfNVQ+hvvukW84pY7Rd353xoCWpY9BomPCvwntAulvcCL3n5tprwUwSkxyTc8lb5V4Mc3ndWrSJZFtlAE4NOCg0kikOolRP2dD6hwB5Me0P8nO8/OGZOIsOT8G+ku2TjrsEOCDKKaoqMfpy13KJkz9X/Ri5PP7lvoIlP24NSgpmVQFi7vdoyyAo1PhdWcytgsadq1rVkajltRFXOfb0M8KUdPL1H+KRJ2bOerI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Fy+aOkL2B1wI/QrisER9gir0CnhkwY0RiTf025tYgbQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bIqpG7Y1goA2trpe/JhvW61XQ6BWh07kQTOYGQhHGWRyCKDGWJqaeIZjkptYCJYOL8zZRu5JE8r6/i2ouconhpYc/bHx4S9TMKTMtd+ChG0RwunE4qX02EPUUf2CLdcEW0475Wq5Xntf8r5AyUI491R/Xk8ieG8B8W+Uw8zrbNFd0GUJ6r69b6sX8a7/orelX6oyBt13oOOqWk3jpptOow5j6xhUUs4G0bNcXGw8rK30QPtvuO0V0mY+GduieRA+i4UU0DFajoHn3PNnKRcQNL3iZfNfqahN/OwSL3hiE5vTiI7GQzmNNJIjk8LrZnLpOT0LXio5UAQCLCJpW9iduXPoktZ+CxWg2cjRfpoClNPKR9b6GCkigLpWqR6r+lq/Wg5YU17OdX4bz95TYF80bpLnIKw01Ldy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "FzWzi5PKLp7N33Ypu0F2oEn8hasqldIAOE/k62/aBYc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sGlB5hus0ZqQaj27eykmm9gr9J8BpLH2KX/LxtwDkrbrlqlsTlElBTroN1gVXooPgVR8+rLE67D3iEQ/rx8qWaQSsli+x5U9uvDWVjLECE1TuKJbG2LAAipPubUrSJlFp3VQwIW5gzrNU/GvwvzKEgSDIqGFZZPXUUGju2bPjo2ApzuY73gG2fxnjY7Z0Gkmwx0mvk54sDhXAwFOybcIv67sI+y9m1V9S81JDWcdZSY/Yi5sqSz3cfPjRHlumYW+EJWv/6cHyUQTATVsY5M0/JHwYdEz0rEl+FxzM9M1NoKVsIdqf8fMBo0zyZM4vwUok3OKaArkoXxdSADgGvjFH7f0PEJjl2d6w55uVT7P1aLTQCJewfrFo75EQz9fBIXtpcWaaMeMfsSztrXt6dLrfXkkYL0V5+vZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G+V9FmRqX/dFpJKXm/McSFFsSkNL4kZKZ3U7w68PZT8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i91m93sfD9i4cUc8kdqNi+7WMjZlzC8LmLOtClQdo0dzFHLmo/zR0oxT6mZ5LYjySfXPG6TNiAQgelXfjq4zpGBkRVv7rKMl6AwQXGk7+3bWFTMYGuloIlZjpxuXI9yjImP9/cvzm1R21bcwggI6IDlBMQRy/jfu+Kij+mw0S4hdnOZq3hwd09Zmg5ud9IsPCaI39W7H3KaDfa6K6o2HmYKJwEvIRBG1qfHek8legQj6SawEd11SPZCvg+kRwR2SpvxGymen1rjN5C8F4Y0Ggauv3i5YxtnQeDeJGTqYkd3NOppqQFyGQb0r3XlTg/dGvy1OhCS7NChXxOMeQPP6qJu5bQKcq4tzjL0sF7BIojWBu8aOKXRzB6Mtsm1FDUTG8hNLlde6u6QWneJkq3zpSxzYGlIoHdaA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G+ygXTPn/kUpFsQ4cHhORXwf14Nst+U0bPEIPDVhRHk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+fuhfI+C53AxwDzaUO/nMw+4xvgzCz03PDAQDVHuRQ5xOj8WYvYuOq0J0IOTunSdtOXIzZPkAtp4vacL3dRt0WSOmTS6nArBI0J+HLulC4IvzWLuLVLztyTN6B28cbwaQdWFHhw6ZufXunUrPbs+hRASOrnVn6b9gCj4vaemhV7NYXAr7aSsv/73CopAuARhAuWly7SHOvzJHd1OhGnZzH4fxtg1vlI0UeXrA2vyFWtI7GWMYahF4Pl7TX99RtCmYxvS+IatTEzRWkyqpKPnPpyvh/YbOpTp39kr86BNJr+yAezERnqnK6nEeyGLf8Q0gTDvHKDm/3bVAnTT7iFOeWa1bS5iFISe5Vi8Bo1glXi7k2sqouIaIOk9C4vQ8e3M9J0ps78FVy5Ove3jVW/L+UWPClT0Y5+q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G/owT9lN3YXNhHHXGEtGAFckmLb7RKKiMuBE+5cXVRY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YAc3+6U2Ib0yEbM8UaHcAAUB9GVjIp7nqCMqw/eMX65wrfKXDlkl4W7MaVJbVD1VlSXcGXtYzB+ebNnYVP7yWkA3DfHRTlLwN2Ij2horLIHXrE1T5TZUa6bmHn3BS7fpvsVkQ8JVF3EpISwDDxcJt3mGUgldmLyqBte24ydUMmQ4/TbiA3QoWr6zzfTYUPJxFuAi5s+ERD40zPtZfsI/50QhOc7En4HhOwSBlI1vULq57/6O40eGri12OCmOLJ4aNQD5zfHGppyNPIvtwkcARYqIjcsmqZ7uM81XMzz4E/j40NKixcUMlH7Ok6dgB9Z5Y7I9xuQsChxDOMrKVCcXuEXInpZzU2Xd9kd07w1/BVxdSZkESYcb2pdGD75Z2XkyOp7KkG4LwydgS8ytY0kEtjCSOpi5Vjth", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G0gS4xcIjyFgTnp1EZvin4p4b7/O/ozA51zI9+xFwiA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QeLqNYyYUuKoxgAdFaxB6yvkamnnw64eA0opXBrlXM0f9uEFW5TlB1k78dzI3vJRZn+7lrb2UEsGw3X/jJGT800IQQvZEv9ODly2jATORuU5A4u8EWaatUPFw/a5cN2aV7Y8d84wRIo7t9jFNZLKWfe0/r4mebCm/2QP3ifmWtqYET6pDCPjm5T7yL0jfdYXftVt0VXKe3fGGQk3weaGSSKrlbPoPNujkzcOK4g26Ebz0GHOfbeRKJDiT13awlFxnLTwuEfa6c9+NhH4HAfiv2ZrTV9Z98VIUUi/ukGXwv507IEc8B/wTTIsMi16F+7nj3SoMmVXGkOaRKsPySh/V/JQQmr4ormtBVwis5srTow0BOjBZOlFGWC/wau+ZNIwNeER0U4UnZ0oIT5JnBXIbLuFs3+lNQvr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G1yVmQ8k2j4KzXCbj2F14Kxj7b6NkGsd69ExPOzwoSw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZvYR/aOatKCFBM9c0bQMjPF6Jwmg4OVUmqCc7pSWX7Mc0KKJA2JQqYW4cMHz4USq2+5YNReZdH7J6bN63TMtg7p4nYN04iL8ILl8jx/84g5mFeI2b8IDliwMy+7jBLwiEATZzsGnyt4WemZT8f6fPgGNH+IFDo1Lm31Mcs7BN5lCyYyZ+SGUFO3jABVxT25X5a2k1hZjRJcHTZdT5SK2szjABKHedYRgso8w5vatutfE8Y+WRx4V1JK09q4Wd3Xk4Jf9a5nIwY32EU+pdsVZMERt3kaKZ9pzWrBtc2FxAauHclX90Al+4xK4ANg47jviCUvD+AB2UWa9O1dkWWC7NvFCFZcJMrP3XvNj561ejBnSpA+q/RLwjbaYGThJCQ8JNDqOY1b6ddIe3vexKu4oKhW4PnvYW/yy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G3CNYQFgKBobHkjsCWmpFKMb8sUfwpwfmbwqa+g5C/s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ti91aLqWRkOEWN+74p9l/sG+BlSY1o+LGmlK4oH3RGiwxUxBJzLG+uYOlLtUtO6tSzXx6jRYTEtf7Rvtpni7s4Kho1RCpM4TqClYSbx2ev7b0vglvA5fxBnEBgjIMwKJKQvgxcRds9WElfpp213fJwggtoeiHtevDJ4xulyFzkedJ7XyQIy4iMUOlmALJLa9ZPjsAdbsDA2qEgEYFiYF9ZJWb2VDIZXhbOk0IYxX+iDrc1WiltPyWBFn+1r4FXhfzDnF3qGbeSWOceWGBB+esjYzkK50UNDElqwKBjkP55HxVxj+LsqBo+ZihCGleL15dnblh5OJtC/pgXVENOlhvvZYX7VApRWLS/qpOo0c3wOwhlHUjkrxgJwd1aZuvaIxLbjLR9jHilFXZtNgnIkTwlGY7reEYmMj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G3YieGJ4FxMYDjhqoSkkLuTUu5t4D8VTW/hAf0zr+28", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k66CXryU7kovGDusYfnf+o1vnQO+ZV324W000KU7FI2n2ikSfTqYXKx/Ylym2kQTytniqAGRj+mkWTJ7p8kFnxQ+2SKnv6TvznItLUh6zmOTDISWZ6R54uB49ZJDlcBjuoPdnraMp+TYvpZ5eHAdchXJzcnT+5IyFLxPPYGg/Z/v+A2K1wSwxGeNfyKD5Y2pPb0kksxrbVajQj7FLI9AQ38JhyI8JUxVPUj4K0isj/nFWXK/bKzi7wyTVb/evP8pdaHvxu84h8yDW393wdMgnDDPw1a8B++Wqni3D7ctcDMMFlIcxCDVjDMUbtCGcv/xIIgTYfVpAcO+qIQF++3E8pO5T6hewXNmv+R/DCK7QHGi0yS48HO1D2aZiYhARQuwllgZiJfsbkOUITEadO2Qt4yM/c/vVOY+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G3trecC3SOb4e8JOBHKqP2ycxUpcVQYbwZaDn9JrABY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bAv2P1qXFl6uf76Yu94WFXoqBk5/u/VeYRbVkHCA1HhhFlz7abcI1ITA8qmIoFRtp2roc3wsIj2ayeDmRLCC68YCEvG/qgEZhkhWery7/Uw8+BT2423nt7Y1bqBTWqwWZ6LikwxNSIfJ1x/11xCamfCIIqBDHDnH9/lxCOyWz0SXlOTqCnbwG5LpmUCBOZ5ouwh+jPJZJiazLUFOa5WUw83T2oWGGEoTJovYqECK/Bgc82pYoa/e7kxBMmnrsrswbBsyOvTDOcprNpZhMgYOPTGBPSSoJ+7VYiplLctVKAg77IVWAQsbqy/08hFhL57TWtUu9niSe33UaXxht5OtTB2AJoclPNnh5+HjS6if+jHslr7Y2mQ2f+da82lMhgzGvJ9b0b6JkVO26+RznESX4ufZ6MG+Ls3D", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G4Mhae0kClY6w91QszpuNQ2ckF3o59/v9DuJXQs8xAI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YPMMq1+sxPusx+vkdsVj9T7ugfg6GtequXf/vo3niyVYhFSYgcmOJTuniKD0GCb0upIDETGklH0aNhUaqmFZICf35gwSxqV5uHGpUaARVg66OoR1LKlM74XbV6+eGQhALFkLNP+AANIk/o02ziooxyRmGu0nXsfVudE3j9/wcdkQAB0cylfrhdtIS0xtS+Cta+kLwKVf/ebFHu4c2r4sUFQfxJQt4KbzXIhaBUHqWLrAFoRKyvsqr4UzU2I7SXdw/u8kLyrxiZhhy0QuS8dgHSphsqI/vyPD66HkZvwR9fUkIa2JAsMMGohEzTz9t0kMViIlxdqcoa2LSdD+hozRJUJUsl3qOV/mYCcTuMQgcxSTPUzY56HmAr5hT38OhaMdqWfh36rnVSvF6or+EzHRHaa0c5FiXEvg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G6HJKyNtb5ZC2u2PW6KatQ+k6uReXBosWMogkP6RF20", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wiEvLbntyP78HdbsX1er8C+CiapAe3wb7OvtRFM+NSzXtmiOhp5RP6T6tGKWtx41H/eDr9uJLdFP7t0SCYix3FnU+kqUYvKIctGPXtJN05hLDxnDCfvq52JlK8vJKfJ/yv94gcejeMZusUFhsZhnOEzZ/ytp+uYijZQrswvItVnn8PD/mFjKfVKrglPNWXTek2S/C/pZvEtD6zjxqeW8Mn4s6kR5wSH30dYmquewDh5AQ3uBR+2HeBfSVW0s07PfHcUgRb0Cip2mOLU8W1dIAxc4nWFPhh7iyCVYNKyrBVCIBOK16zoJAKSFVMmEGndjBw/zZp6R8NsrWY73Hq5m8rgqyXPZJXCybrj1B9efCix2oGrIqXeZ3XZuKnFlnGc+FlQPCqwQOnw4WpDEI9H2RlIJuGVMsiRW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G6tuW5Vzvwaz7nMHG8R2GOXJ3rs5kjiM8/2H+oYVUVI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GypjB/ix2H5Vyc/ZQzJiHILGLBoIt2FFwLbe4jQTDWat2uMIeJ9I6ww/dXOCeXn/rlPk23I2kPJ8Oo5H7xppgQmMhCTIzLfUssNb7Zd+sJLOoLBG1oRrNgAQEl3EnjQRFBbAvXH2pUWQOzomrqi4yuJmSsF567Xo7hjhjnaplH3y71n8EpUwwh3rw+MuIu2wmjz2VNRX7b5vPlmFvxPQJhcd7BpnqGBlJNCgB0tdCH3Kw6cwJhzIMq9mHe8Lr9jQKakglE4FgT+0AjFQEW0kqfuRGU0/iEdVPsSV1rGjs94p9qWYsJUfN41Rpm0r6ezJikbSt/pTRRQTMhZlhTEsY15ftZU8UXRK4l34eknp7VPc6oEE6iCumv4tHN0wi8BKvQcUz1uMPouUXf4eHOX+okSmfHeZhbIT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G8/7qXRGydBFNmrrk45vh9S6kJFUyXVmzD8r8axpiD8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qjWgueDScWVOUsukfkimQvkPVpuxD6XkmC4cGibjAZ4RBb/RAnB1Wz7375R34X6g4VK4Ny5XqmE0jTtGoGXn+sVPFACw/CV4Ygrce9Ou1YHq8JjXbqe9yb4IKUtYI7XyWLUFf835tj7Er8HC55CRp76nrM7xp1LceC7fUgfVnhTc4013w6w41BHmqNLHFzCDEdtGq5XuGSjpcHAq6Hti9h9YnUxcX6XL5Ggw3UpU3QrgSYj87GQwd/cvd+JMGSFF1X3sfmyH/1yxUY+rzSMnCImbrDwbxclM67pfPW69xyZ8jEYB0a7eY4xXj417nUDsvHPG72w5g6WS1nripwCD4cWLSwRmTCItit2bsrUpqr8eAgTJUKz/+Dh8irgyG37PcPJU4k+hV5MXcuZEp4DPY/M0UQ13/KeQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G8a7UQLhjEZ2L/e5ToKTj+4UbpKZ7cILBJy19Luj5Zw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hh2vub7K4fwFfXfLusg9AJHxHDt7GnzTE6c8Rr8X0xGrvrmIKb63YqZo16UUpccYgFYnNgwaVnLDMUGM1HYhc6L9Ku2YJDDq+S3YOjkxqyCTVsDnJO/TWMGiHJ/z0AZXxA2DyUJrsWWk9xyH+o6cX9KXc6VNAbB7maV3uSSq6231DaBdb+9hMpxzPxh5YrSGxwpx7Zw7oQr9Ke3Se3vVZaWDhBM+fFUHLD3SGkn/blie1KLTp1aFUcgglDIjgeXeywHUFmY209idr7wAdjOqdT+MxZSNMKgqnPCi0Zaw/jdYNss6Odokfl4aso5Qg9unrc30+FKbURYc1scr/y5L36N/bP8VUJeCJVVfo1JnUXjY9hSfCUKYOf0zVtLx0wnjqp3PalEnOmByYqTaJ0j29RWkOU3S0v6J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "G9dA1YDy+TTkfSgnD+ZkZJbB7knR2S7P/okc/4JnKCI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GEyu2EpQfgzjv+FiIcuLAxYckPaFYkwmD+v35yN+T9B0Z+N74Wk4z2IXpuaDpl3JjtuSz9tzT1RdKmik0hR8kLCalWR6zYcicM/SWp+GV3m3pC44NO1vT2vcAQRDIF8Po+pykYyVBO7aZmaElzLGrpb4qS1CVREECUSQtjyV0uQ/uSjJqCOIPPDuiZ2dlOwi6DzFozDmUIIVccUKH9Hh4C6lgM52gxoXEqdN5uHYrDb4vQ2cooqY/MwF3V3Uf6mGXaoHgg1+2s9m+scrH4C9uG5NWnxIMg+xLJcjP0M9YHeGA1F2mTkHDhn2scF62GDUuW2aGxQ7s9r3FGJmE5Pz8AiPMn6hLCEx+EY7lpvpJKBSEC322Y16uRTjaaaXwpSHEDZlpTHdr5FudufSBscMnNt7jDy1b0r9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GA6Yti7EkmLdMz2P/I5pOaMuxF6Jpjf5/l8jacC2NTw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eGjld3BrmXTF4LhSLqTfdzdwLSgHl4SLvVoPTjKd6fyWPI7IXb2RFXIJpNxB0CiBgGAz/1YK1MFnSGbm7JwAul6UJIHQSLt5ruzsWkPTY12v+kmEwRcY+UoGz0I+2LxHzTTi+jLYIfFORIz3hIiYzj78ATSx/btHBgHu9P6wyQjt59UEZ+8dtOGNJDPCwc2e+V+DgyX73Iu1ZFj83WQHfGH92fjPzJoQNOk7jSi7m+Tc90i7GgT9sIQzBtq5uaMRjsTLL/aHXs75MByFRLCYQoFY06HIYhS8CAmYXBKZQeiPXhJvXiFl0uKCpfePkPGO8HMjbkK0dkcB4uo3U4YhR+lZ10FC8wiS7EKOkRl0ntuvTfLrWkMW9cZ4dYSCEVCADDIa5xfVhL1YLbzq60cUBUOrfuwf2HnQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GARIRBgHeI/f+rxeFslUsXEIkO2o5zWkvzHDg7YlMYI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mKP0uAtAYFLOv5NxXngbMRnD1g3xdFRuqFtTShzejdTWE/+92mbtQan0ra+WJeVzeGGXVGixHXkRkCX3TYnklmCzt0GCb/YSVyzo0PK3pKHSihDmh8UNwcQtaDnw/Di/PaQCbSfRfiaih1w3hq3mXTE7g+x494+4D7I+S+QYvn8f5tanGmRdL4x9Vhf4aot0kejD6wxSFKgbNoI+YTqlIZ8lj1cpw7ohtNTfIojX2luCgLUSmSzYdIgsKGLGcYWO5HBoxrJDHbKkGmn8/WKkjM+TEfgCjlqANirBs2mJ5xjO5GeDPVq6SFl7x/6Y8q5OdJZWrw/4ukuAyUy1DiNOg3GnKsFGX+zWgGQ3Y84+cCtdiE0sxtwkQIAKazKgVdeaCQ/iCbNemSqZkPo7BnwMqRTDXtR19ovO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GAydLIJWNjyFPDlGzIXzMGMtcRtnHrl7dN26GVLCauo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6R+GhxmeuP0ex9lQpQdySSMdMc09drCR2Twi/Zg4S6hCtkO++PqxkWg1Lo+NW1Dav2Fxau5LuwIW4eF7gpic7FQ9LkTPD+RXIdNJ+maM26iawNDXuoZmH9CuJI6eGZHNLs6iUTBUPUgIuTf77EuCzvgZu1R+ghgym/pN9IoX4l3f1ZzU5ITUUyiIiuIQ/Oce7IHA3UmgSyO0fiRiXl9lFzCLYf6RXpdu383eVx5+oH0IqtF2e89aA5tZ5Au+hOhN36gVjW1gmmcxZLvKzo8EJa6WcozDFnhmgZwshOope11dvdR44OW4Kff+S42ch1buzwnDeVTOLp1CQ9257BQYSgTtKELk6iPoc/0ojboO8x6so3XjlOI09T5LjRs2JNi+WmXqwFhsuh0ocQ3c5uBSURerwcKIp66g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GBBe36oAkUxz2Pq25ohTilFs2nF+rOHnQtcDjwXQxUU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PytM+pItZW6cLYhQFolcPPoEWIOwTRRKhZMLKWLL4BZ0/1U7BZ58qHm9hi7YDb8Frzd+X6+ETfLv2/4BCzPkXleyL97xO5RmIV7gnvpf8bc+GyNrVxM4KgBBki8jPFTFd9H2A+Ol63RViNm2izFN65QrO3Yob1Zj+2rnALMkDjsKtOHEbmL6dc+T/Yv2pzuTNzNS5Lw0udk280XpBoAMjTRl0ILk0O0F+wb1pBe0vG1853NAnRBBTWRlTI4hBENOp35iWRpmgqwDiBmvgbzRwh4dA3ZiOINUwPCAdE+il6jOxkEfbPWgv73Me+hVI1yNMZB3rJempwPREBMFqy+JDW0vTb9/+X0T17ytL2W2obbe0CAdGyOdbJcOTO6HUYYVCPqjcjwUKMKdz6/EVt6FFjMcP2tGl03T", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GBC1t1CUl05o52Zdy2bDheNmJkI+UI6q9p8CFJePCBs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KrxNomodv2q3KNtPEgmc3HqMKBJz7MVo9+B6qEJBssJit1s8JMMC6FU5Nfx0Qa9kvYT/y8zlhgetGAYluu9U7Y0lulEYDgEciRie9h7YpeEPAusNC/U0yutvdBnCCK9lps8FBoAC0dOc9e7/vVt2Z2t5GrL2KP1k1SzWpf0zC80q/MJRa0LKpOhEadsQOx3lg5eM1PBDdlyLGbI2F0NcxIFvHEpyi23iO7n031wctXwkRV4RTMUiiQcrDbZ13fr0gkxoVEqdVDqMm2AcUsZkhvjLJAQ3wYhjT4B3FSBT6Zk077FSJAXczUyGolt9nb5yqh/XJZHv5VrNQsi/5Zk0yHUK5cGRzEMmDph5PvFvQ86OdlIKY1Qr+UbzqZq31OyQO2sVVp7ufiz+88iRHWaWSVtmijAEMRAl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GBEHBhmpMjeHwlbw2Pi8TzIjZtXqbs/jmfdGhhY3Tjc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aNMIsRYwZsUKhjL0cq6xiF90JxWIZX0lIByWdLMca65aScN1BN4w5MEE/yX3PMC3jLyZIUqXCtPPBkNvvECQrtmi90kE3NQhtK9s7xKk3qmw6Xe3r+hwo+o3x6S6ZLMCEiz7xybbBrDlX2CBkoqijDdI7mM2TmhGi49VuIDSuePck2XfiS69ptHBQs5IqICgf5cSZxyLs7TL5ivTZCSctSKGNgKlcGQcH5vUkm1Xf4pplCWST9GtO85riSmOi/qN5nWtaEx2Ft6GoikvoexeTBF974VJOyUfcwKGiLecLcMsOSrA0vEBmZDzxxQk606JD68389BOnSFHFGW74TJivzcWNVS1CGp5UHOeDWBsl6zzgg3SqrB4C/P90lnOhMhvNmtiZD/ZEWXYV6Ui2sfzxCSmP9Jo+vZS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GCiWSSHnIB5wxiTaw6qMe9BmkNkt2aZj8QjaokNV5rc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/CjSyITsGshNoSxQ8F+Xydo+ivsinfkOB8zBrBW2uH8UJhtwTk9ehA/3pHjuCX107ZB8xoUdzdzZiJBo3wDQe3/zi9vxVfPSgP4eu2z/ZGItOUeZIzu2QbESjECkfr88EkBuD7AYj3v9LP/AoNLCSVD8an6AhjslNw5i8bBntBFjNGa8CoAUZ8Q3CxJjnvuZ+jbs6zX0mUEOKgxcBjs5FtHG12G5aOQVYf/jGcdQeqleYVAoEYN7Pd1uL3DdDIpIG9pGYcTNBddaIT5uSeeoP9A46BrIPitBmAYS02cc0LlB4Gb6tBy6gUtRSB8Xb4pnAXVsoSmiLoudxmozabx1boD+ngQiJKpnAzmnNW/7ywZREP/AxEdfzpdz7oOGxmnyg2bh1IO98rmhUUP02/2NqFCMW3Vo4Uua", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GDFvrVAo7tTlvEQG9HbvAduS4g8aw53EvYMgXdRCZSU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ba/WJwjZAJtG/HW+eKk7VJVN+990myAXvEG8GgErRkPmNbQYOvJbEZ3qfyw+QCBYVMMZOz9TWYCLYSOZ0tPl4LczwSnWmP/Nd3Gkl83tiOAa/OJfjzU2jh+rDX5Y7D9tXkTxrhUqFl7k5Ak9AU/5+CzrDBzs7DiYopWO/Sw4XAj2OXyOSmK+pr9M3rB1DGuQh8J429dNbJwHa5Nv/WN5/wf6A2hRbe2U3BGmCiDWZha77pyEsgbm2/mTechwgdy/RBveNmTUyIQ/JszU56nxbu3JFScHWn2tl2qPgOFjzqtZeU3n50+Q2AIDrR80uRLAgLnHl1HsxukKfcIRce7lcRSQQF1ExdmTd+uWa4aPeyZawhcZMG5sMrYBWHJhWScsn9+6S8m+XU+w95arv0QQNxxKdJCEOCD0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GEotr9rg1AgQantoVJLHhRKYEllFtQ8y0SnEnk4P3xg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P9jIM6/5POXZ7i4OfVK+wJYG8wMe/1gI//UZPF8R1oWdM8bIVJuHzdBdt8rIGQpE1JdCCxjIkI6rG12hMk0P7N/vM4oW8ROG0Aj9rVBOR1QT9yoo5WcfgjVZgtXiNMCNqM3li/TP28w+J6BhI6Hytmu2eXeoUu5fX3disRJAOMR8cwMdsSvHSHMCT46+dX5L1auSTksDhh34mKpnBzVobo0DtICOkxFUc8sUFn0vHIiURmmhpKAYrfYxk7XoxmkBcBb13YITzoKAdTjrhJpIOzXLB0Wfp3FtXCeg2iiNAJICEkNzifdFf7dWjGL3n9dqCTpUFmQFmC8pfr1YQBWWOrLQMU4PZKsGUz73+bkYT4Ivq2lxdiB8eSCiwmRtsrRTFs7qT3bSRlfqpThJ8Fx1/t0w040wf44k", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GF+iARIqgSO8vXKa7oNHFNROec6wFqr7rJYAbg/BJg8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4yXeqAaVaTOWICcxctZ4wcB4sUFNBXim6Lnz7bYURipA0NDRBKSMvDB8ghOgDrk0Xe/rWZxkotrJ4FcBgUYTpWb2oBq8gA1QlIU5i6lgGjinSON2vLxZiJEab/MAPUxjrbW2iAF48MaXJHxLf2BVAwRhGDF5r5+/nQ7KWBlTty/cowXOdJFXdxq97wsW57znLANbyW9ee4Q2SjkGVpSpxrSgDebm8yYpX2AwN+PsPG8LNbJKNfpqpYrAuFJCvzjfLiSpMmXMVqJlZuVmNFT7HeJzop6sb0DeCvqkFt35o6V1ll49HRyGjq3E3RCTe0kzAzXgWnItYYZ0V7mKBEMRnJ2KlBHHV0UC5AUFM7AJHjHxyD11Yx+x/1S7mxTnzJu41+2b3MR2IbZccIRI2riA+LQMafBEw5x1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GFAGaQpD6v0dLVWfiJqqO/d4ZZ47FsIklfCUXroXz14", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7vKnaH10ZPjNDN6Svoj0HMBK+ptf2RpqUBm8pnAf6oj3r3V8/OEJnR7RVOPCl1NrCrAl6IT75/Pt0hxKsJCrtBpqdLzxmWvRHr2ESS+5HC4UhBYsm91H+jlIzrxoahOnq+5PGN2czkUxuysCF5Y3YvkTXAsde7wneMTKgGGDYVzSyqWSwmipHa87r70loLzYIFkk6mVCqG6ThEFyf/xGn36C4C+7j0WJg1XJ9VS4QCXIjcp1eCXTyVFFiFWjtmVhLgN7yjJNb+MuCZF4V/Xa2t5/UfbBsMxpe0vhUxXb42W9QEVL9WtSdMkYZIrAY+ctqnxw8i7wF2EBFCszlR4Stpe/rUVQcZqF4LpihDnhLwoOOiOqJYPXw0pDWsQ9Z3En3L5geNJbLPoaGrC2cEcBq7/k1u8DWp29", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GFQ9ecPYVTQSkl4j78/iETFAu678SdMYOxXzmeIcZFA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BReqFea96kTRCy06w9qeNNtNGVFm8BjtOLGbXoaapzdr0vOkvAttvanGj8kPC+bqn5mHkhalUnVrghnLmaQIdNuUJ6n85Qo8FzX8NTLmRll5JOceLCMgpgEkvHKMZOrWHswdnkrLfOKfXZqgy6V2rXEIuhqtVARFy+9knm/PMB5dGWvh6SdYkbpYvzMt0IJ39zZus0B6tUPoa6EMHqClaGA0UQF7VaMLkFJr1UCgeDRvadif43p1ntmQtvzVUv8zlnZtmp9F4Co1SraazwdzA6n5l9NpcS7/9sl9S53xcISy/fxhbJIZJO0PRb5wyWl0hkmIl7vljm4OzZCuas3jDOgw2KeHUzkc0w8QQi7pVBNEmbyIoKofPFZ9qwhcjYHRmWI5ZRvAJATJmBmIQuJwqIa2cjOFNLgT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GFlEH/CMRn9YbZ7XGMdgG4tuIMji2R/mURB2cJuMHPw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LqYuQFKheWaHYbIP2ScpwgwB1TuhKMOJxLoIxx0k9kiM+tfr/ykj29U4ME4WNiQj+vtIW0d5GWpMglZ1Nln3c02Wv0yNFiN61/UIo8DcNQ23cKL7dYnOadh08WG42UvrMnrpVXNrS9SybXJuE3dBN2AazQP6aSacQOZ2h3ClUaz2DemNbrWqOKxkP+ZlWTDrTV9y536Azi+pFt4q1ARuuRNTUsYhDHj53jMQqthl2ErzFSXilkrx90fB0Hb6WsJjP5cFsguZnnMkJl1pjiqqq6kb5GO2bh5hNFyuHXxntTkHINbW56ZkYx/72x0ScBg5YuH9r+zpcqHHBEWf3Z1e87kH3FvoHBAHQE7sMDF5gnMWPfe4cjLUtJ/b4LqZqcwLiNpA4zJ5w+jp1gDFjma7NRa6LIYEMErZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GFnaZEj2Lv2OAW7WZcwOLRGfKMVucv6ZGbw4ibA5IH8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QUm5WITWkM/KJ71U+9AdMvz9E8FIqoaXR+btgif16WqyySJ6fAjE9YgTQwd8Uc8pF+2bz3E4PhJon+SqQmDaVCj4ojKK7SWDGn6z+v0wfx2TBs096NR9SODdLUHCQsZlYv8IpQrJufh6qskmwLg3cdAPV++AmJC1s+caiuGACeabpcz4KeSVpLRH8h5ZrCU/I+qumzAVQuFiW5lSCJ3Fk3uejN5QjWNIhJ9Jqu+GC+fW1O0vZRYw0G3ZxCQnohPiL0deoInfniXLS6XnlvdX5orthOBBt2Z8+oZbxxz4nj1rJTzVNIPuQaVELOqcL14qvgtUMJTa+lV3jpIHA5NsR8JPEkCTANt5DsFGnP4XtSjMTVYO8edD18+LrgiQ1S8BAcpDfHrnXFQRGodMEzlbJ1ZJgpOnLfd+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GFwfUazT7CU78r6DUGwlbr/pDEgLZKTTxGfP6NOxbkg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/PcGy6P0KxK3JZ8rqYH/t5X+M2ml4zqEBionD+VqWIw63q0IOwV+Uo9FD/XsNz06m+1V+XN/JiEbuhHRW5AL+FlfJE2slMfPdvJHJflR2udOjq8pzK++h7rRYwVN9WxiELIl+r3AcPojwS+pIusyhUOFUCXJ2oeb+gOnvVPqfNhoJ83thxzirpzop2c5FZDtyCcgwYdd9CX7oKs1VkZQjx7wNyae0uAvKYcn7vvh61bk14h1KGJ3jF5Ef4bN5X+N7j4+8sfe4uoK2sg2Qh4QBkXIxi6NcKrCsRoJiuEfUPqUUdbdN5gp2nS6wfEwxlA3IPrgn5oCBWVgVPKQW6j+WwOx0NQiwyLBFnvn4TfwGWgQkwfc8ZsOj/M2yiCLjOSXHQUXZYEYXNG4rMNUcN4+dvPa7jtLPEMF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GG3VnqaYG1RQ7jNsCiuhZiOLLd4QOYfBMWFqgWNOBbc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6YeRmtxzXIZbwTOgOSwpJ6PBcs4hEwyKDc/TlkvUvhG5ASS+09306MSHzHU8WmMIdVU22qC+GBH2isDx0X5gSJe+jaK3kawYVnjuWplRzaeWKx3wMJwM9iqScYKVn5vXwDjeibjY3bl5PynfPKa9pgfiVVOwNFP0arKUGyPatZ1AbU+xN8g6dSOhNR8mJdJoMPi366So1TxuMltOcbePuJC/QAoDon+64pf3Fijwxm1JshGxT37bx+h+7fCDXpzwyECmr7DNdSKH8XVMkle32RAXfRxCyUyrjCvRjZSPqOJarp9XFGftRmiaq/Z8y4ilVJmeksnOZ7MvVg5JjiN0q0yBaK1bsshULULYLoYcKQjb+wg//Fl1AsqTSP5kmdmxviqIAIXjyrmhKvfbVlHJeBXIu6URIMZB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GGn57bVKuUsk/DKUz7gNhoYp25vAXbb/kTANKzIVm04", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dVZhMMp/Pa0M/h/VQDMZwNAPYYLeiG8gGOUq0++fZn22/uI6A+K/zaHQmfI2PAgxd+q4hEzmwUEEG2TTNc9+nymwkUfk0SVeGSpwj5rqDfgc5UG6dFynPYSOdYrf7soFsJIWB/afM64sulMdPQ9ibUTVqxxzhr7t99nVt0/+PAJoZ/sOhwC742930sCXEbzNld7d3MTdutuyTMqhGh47ZVcP8I0wycfG9pKZLb1vkbgcVHJIWLnAQwDYNi6YX6Z0nSYRNtsSp62QAh6jnQgSUK/WuCB5pC4vGJ1K2mrwNFlwtfUPdEDsNFwlk55VOxiKJEsO0eJBNAy3Uf9pZExvuN7uA7QZ/GPhjUOeM2R2mrQErgRgmCxlNhv0/jb5LULYzwepBImJIzEf46s2b8+yHidfjX0nTJWp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GH+O2kEBQqdhEEAjryxoyXSMFgCrs7Awn0CK+1kdf7A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mOfSziTCRi5gvW4nnJQrsuzmiIeB7yKb+PIBlCrvhQb53I3VE9TkodWQmgon4Nh4/ghkKUWS0RKxcjHRl6RAKPoI5kQj8kng+WlF2Se25O46lCvovHRYR5JAyVuhjvI+EWBoF2naCeTytiH3ZWVrRDxqbYQPM5JaAhxPg1NdhFduUkG1RuHoQgpnvQRJ3BH3kD/D2WAkoesapkhPiC8DpRerDwqVq5YcGas6hlhsHS4EWeg8wDMZBnYY1y0rGYCXC2Q2TgZYMkyX0ru9uXIUsMoK9UaJaPAlQPw8C5hQ1y13ITnkXaHqM5SNqiixC1xpnuKZmEpy6O6M4VU7TySXz6P+xN0w8wjQFfClXVLOFOQ6hB4qd/I2hkfKYxJpnM9cFg662TWnI0cp6iT9hDI01i2XPKM6xZ35", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GHNXrCinSAmGl64Fv4swhIEZ0tYLogcRdvvHX21yaNs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KvaMXH5l436mao3c0KKTco1KnQPWkFmqWAzaAnToxpJiWtiyzHs72UMruqTteiPLvoxer3QDsVVPpA98yvRCLWpqCcFSwQUv2e8bOJ7MLp/eahHA2KwnuljXF5WDAaB3lEgyYSsdKIizi3yVis02eV3rjqSWLWNaaRq3N8cczZntppGdajftQAo12QJpRBpZTEIlpckQUUitzKl+6knURfNCRpA+zkW1ADGyrIr+tFVDQ60ccHHOBszj+7jP4+w/BLpezl1LYqO7W6rgUg4/wXBxfMN0LvIhzKAZZSOc54Coq4EskkghU89o9CM+XpI161UMYrbFcu009F3Gg2AuE1TGwrCUHh8RBDpmT9baCiYyFFp+pY0/7J+jcMhloSfbtA9HGodHHN8S5iYcC90BH3Rqqlt2fjtQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GHeUk8zPgr40Jwji/X4EPiNAmAIaXleuxebooGvasns", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AxYE+D3v+S2Oyd6qYz0NFvat24lLpgj1uCldRkN0G/bg682irKDQfNSIo0H1SxxmaKZpwXpzLqLlhHbq9RRlQD6X7fpt+oLEDyJpnq1xcrxgRQ1wd/hhk1UbEjPZMINRqY8OSTCfFpp11gJL5Z91dDcB4J1hUEigB7bcdlrRwqz0DDoebInPVn5O2b/M6qkmo8jhsW8uXxPPm5zB6PlhLms7QU3numfI1tD7XMXGnYgi6i1K3D8ENYXbXNK0myPMOgxMdZaxlJpyQTk8L2Tt6wCbqWhFgR9mdqxSL1lftYstAyjFQ8TS1QZ2OFcAObMv1EChhSyv4tKz5GNJciyYuYaAypnHvy1nXhUaPQI+MrL4QPB+VeXaizM1d+0yStGkZ1015YhXJpcEtQN48ICabDQyhu87D3q/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GHzruMHS+bfdm5Qa/kNhOARi+dZcfxZ1RMi9BhZAuTs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VFeO9uKo1IAUjG37LKDQxS15dLH2XkJjx2DLvaesFHEvyCjcegkHZl69UiUQPzuwRNjbi26N8anS1qPGgrT9GN1K5F7Z5bAFMO74yZuAqUSos/iPGixSN+lcG4GyFnbh8O1IkzM6s1S2cSpmeicT6IUT15EfZ2wnJmbu39XRAttD4zLwwMBlH5eCbrp/BfJrFEAMC3p2k4sMNWVX5us4KMCQ7GSRviA73eqIaMH2lkfONTWVT5t/UwOWOuwUKqT6l+01oEAZUzBeFjF3JvmDSOd+4rCRhT1E+qx2kAw8rk3ceqMtVPtQdsAY4wiNymhIv3u1tvJfXtnFMM4JlrwSFkqye9ffSCXaRObwyL6BeSLNLOWh6QalpufNniXBWBUPXxSCWY0RylUEWomZwyIoKmIV8WM8eM+j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GIC396uLOCASDDoHCbvVf5LQhLrI5sdgHT9Ds82SZ+0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GJTKi46NZaud2k0lDc3s6essEA1ZGN7+96eqZBDqH/1SpsIeKg74DwVPPjpNZnUhGd8CdbIxQegU/6bx9TlUL3YnSUsxdnAqHCslyWNO7N8hOUyErTh47wiT4GrZHwXoNykOkS4AUBfO6d5KwwRA6dIUl03w89J+IoSaAW1q3PbU6m6aTj2Wj7YY84OMMC7I+JaEoqw3/QaoZk9TdoW7rGIRhV7zU2N/MjZWBlhETXFGm3IVk5vA/lc639IKb6ArBfpJnhZyQ+JVtK88AemVnu4v+B1asG+JqfASPOSVYgxoYlZZTENQPUyqpXEPcOf3wVbRh+nOldfMQgiesXrogbmxyhCVET9hbNne0iCMkUqgooUvXyqsAbZMEcRSs/P+yanhIGm1l/CpD+0sc9s4AkbPUKQN3CQX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GIKoD5X6YhRLMgTHXsab65nUApjb8StqPSY8P1bgKTU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gkbJJr0NfQV3T/jO3Xs9mhzUNuy3wdVP7RFoMa3f3xmLiWNSwRD39p0G1GfCHZtkPqOUI5byB9qUGfjRdCt/2IhVJG50Yfs0QGz1UU09FurgxF06dcGq6YX49IxRa2ZJ/emkaRwoTAxnrXJltj1AiGzEm99ERzsdQMseOjKnMblABPVu061i/ThWsU+PO7vwM3ImXDgSwhfPJMK1YyiZ7t19/GpuHn/yll+H3YTTGhyhpltOox/kKbFPV8VaFmSv40zpEgwYL6n3u2PrEkSFUmfLwCTRYz+xqGkFsR2xWXwAu8ZuB2H9RKcAUwSyLwT+Cn6U2J/XHhe1G+IPkf3r2OfrEusAkI/nT3sA9y5E8bCIbD0FR/CGG336XxQNIMBPTriVcBnmSnMXAPY/Mg8u0hW4Y2qiXgOA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GIPzEgKM04QlV1Mf3NDSPB0fUTIDzueIRBBf8q5/Ddg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "savfK4w80aR0LKJ8wxfQE0jabN7wPOS4+DYITzD8rF0mDHgKC/siyjvhQ2L24RjX9z4vad80nFtF4JVmmTkU5xNGcDtT6p0xLwqSZ1gG7WCMQgaDgp/RD9GTxJH1HiubKpoAH+7cu3pFVYLeaTIL+FkzUVgpebZh7MluwdasB71uVadRJraBDllrrMwFC2LewyoHRkD8yZEb/uJJvrFI/KQXHulXvDJhdCSv2MpmEknszgCpykocN1Qmz6+en4fq9v6szRxxUDZDkXnLrcOfBrXEOjt9ca9enzukAiHFKTbGLYjDVVG2326BnsKdS/l79dnHfGzwjp2B3MBFkImjHQOGRMsuPDvZ+YfkjzVPZFMdZ3GBT5glFa4Oz48VwoNy7IF4i/qV8X4FxdJhZt7tHC83ggOuT8DQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GIWHLUvmUqJfnpaQP8SD9M/GgfhwhfkGs1B3zHIdNWo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "C5vr1pqO1FMYBsHQPCLMXxzbBejBIcYVXfZ5UdS4yqTqy4SRxxsD3d9lYUYEqbEsTu4eVBiDv5P0CEipGSTX0T27ho7QAfdbuPA/qCaFFV6GrMVquSbWrfq8LKCpho0df02kUH+1mNPu89H7GlDSupz3jdqbCHTKXLGS3BOvBJGidqBpqQ7pfD81KGwiK5NwsJwdXWCmeB3wktZ5uHHeuZviDSQV3k053RrgU+b+bIAa5j+WF2FQk1O5lwkVzUBziklNT1j27gJKiamTLi2sQAOTS4P7b6ECqbhPjkaB2oxXQVVIhHq3HpQCUQ9B05ecZeHS8CiaXorMqkasDa9Ahe7fj0fY68Too32aHMet2eXRaPA7KBeK1Wx7fHmXl7fuvp+GKcUcLC3SWQa3s7ggvt/GX9DiNcUr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GKmQKtIJT89/QX8wn5rrp70MCdSHVvGtrb6D0tX6Pe8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r8RxkVD/XYZg77jcR8oabx0W/hVksywdJUa/sYeCo1NATB+8CQAPGdBA1S5IRQwmOVcblCLHgRwpoqpNHsjO1B0aOAWWouVst/ZwGaJTKGDIsgnXCYu1SBV4rkJY5jKC/2jj9p13CugGmcSzk07VX+pwnCKuDYm6Ajib7ibu059LTfoivJXw3aFXh1Yv+cUI/yeCput9E2lGg5iMaKRZV0Bik5eB8MUe6TdKiNB910QoR1nQoo/z5HGmKxbIEGhuY3WGsBg0gPpIG1pqAipH043VZ1lZwvKkLMQ3/uZ9fn2X7SodDmcYWNo/G2JI7TEeyWOWLZ3Y1zM28JltoxzvaR7z2M1ny4kLozcQIa9u4DHtXdk9VMbNCkRsLpk1jtuoGSQwT5CxdmN0vMNGDLDE42/imjdByA8W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GMO8vRRadtFcnL4jb1c0HS1WQ8jlyUjLZshZ8J3XjjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ch2glbjPZB9oq+/Qrc4f4CdsLjO13GVQ8vQXpFnakdU+KqLvbXCPwG5ndNEl+r5NNPBXwWsXvIWki0xwJuUxbBK9j2Sl84riI8eYDyijedHdCc59SC0VUyv/CHeQ+IZdPQcA00C/xGhj7qNyjhS1dicCxg3/XG39ykGTKsmS8b6IRSt2tpUaWtWwNyeSlhlFYn0nABdi2XJ+qii7Rzq549brNIX/L01/AdIeTEUT3HTGXLsMBwfPsIi74vasg/CogZzukd8x56tAZQTDWT0qZPzkeJ5/KWkLFyHHk5OSqeH2ZZue3B5RGf6axZMnd6r+BHB7YG5EADz27XvO3VgfrwG4n9SBKIEvlmdyP8kMCpc4LNBbhqi+iS+5wFEt4DZiFErrdJ4Ap3EYVarCoSuWR0vWQgwPRoup", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GMvT7Sbpg2JrrMbL2URFpUUAxaHClr/aiLK6SY5Os44", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pb7c0v6kbufyA/nFaapjE7VDpuXfhOy5yTBERAAUknWACjEkkF/u0th7wPByv0qZTAES2+vwSlzCiNinnv0o16Jmcmb17pFSD1rLkJBP4XsHvh6Q+9VUEndWY0bHgzFPJPOosQjtdR9Jq177nFmBDV/rXRkGb4L1VD9FbvyrOqmpM1o8ANmR9EWfLc8UNwqC/BxuneZhBed/Ru1ihCq82ZXniz1m5sT+SQvFkqnyyEv7ex5SBeWs//WNwYky0rv22gvBJWWN2vZN8sFpBD2yMXZ38ERBVo/GLOr/2MIKZHEy5DIAyXEL+p2oN9C3y2iTQub1KParu6IY/fsL15RZic5EQXpMB+m84hDpVGPMGxKfG6q49SZ4wmFTMaP7sfeOOeZ38TDJPz7Sua/4+mUZ9XV3lAWJolM5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GQYbX4HcpDPXgdp+Y5KQzDgiBVD2xSVaMQWlrTjSOtw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ThWsuAR7QmgWYl4O1AvbA505OpoDvU+XOKw4d8ASnQceAS8J/GxvIqFtZp3k8V792QRW4YntZG13oJs4vABqVGoYjQHdjHoIrqq1Rhw3/rVbU/UXTeEXumP34VDyBoQ3nCfikFBwHiTajF81jxMwmW1+p8RSYnkNVKC08Bzevd0HOVaU0hjyrGSYySVRm0NJbNcLDfjYeFVLSqdkACrMc8G2AGu73LXx+SIJ+ZsYJT2yvyN7rOGmtFFILuN1aFfuVNmfBe+PD+xJUlYQebmG1r0HO6UP2NlaPgPUgfZhEEptPk475BDgvops/CXA0gw0loYZz/PeJKRFTJVB+yM1Qct3qI9/ftUhUgU1Bgb2UFhvAci+LJYyTEpvMCwrARNDSJek0BppVtk6Kq/kw3P739GWWge4X30E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GXRlaviqy+TslueIsxJ/S6EZelINfDwOqNE5dCR5478", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aUIT1xJ3HeO3+6ucSq6pHLKFGik5TOcCKeCxIiXqB+39vxvmhCzOGKYGz6XrWip5LoO52R5zrSo/9RPRiOuRy0BkfWGA2mL9l9BzcEaxeG6QpiV3pCpiv9MTqhq/M4H/JzZH6e2HpvbShDWnb4J2JOrnnNfspHmnadDxfeU1j6K6zZPSO/aUykUGH9knLV967hYqYc3/OUvH9Km/VyIbTnVSmbhb3LzpjfJJy8povukS6MfRoLizQpUAnn24yjZEtPKpy95gNE6zlPjrIThQhlYgOtotcjBdJbAc5ku5FD06V9/W4f/AgwWvJsDH13fb9HlTf33oJcG9oJsXr2OTRpSmQSkdk2U8/91lgxUbGDVWqXi07lDv5zJFgrKbwFucZQ9MhL9RKDaEN0Mx2UR927MWcLHs6aS4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GYf9J1uNOrxxT6/JmANT7O+IDGLigy/LVj5dT/vY5to", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S/SZaMbLvDAiLRG1LR/LnaStoDFFpao88NaspgDIpRN4gLLtafsYhs2lzE9IeNPJ9NkWhExQnHBOKUsJzRzjx2aNXB58bQT6w752VnTlHalVw74z5XJpJ0NHfpvjOKZ/M5HSg3S7lzODqBAvP3szZ/26FWuNUqdrLAaHpdJGojrXHMnBKrcZW+jeMqJOdtNEqXg1dj1h7QI1EPENYStguwEbQXWy85PnaQavNiSCiLDgh5RXkw25ULkjAmFgY+miuihnyUQPnEmMS2OTK6B+GAkvJcw960JmDXuo9RyoQPH82Z2cHuH1EfXlhZXUlsY79wGA+B8vor8tpmJqBofuMWkRkn6qAI354MJbTTYA8rDjA0yOh/2Z3BX5pzlILyvjam77XchTNWsJremOhSzyWA8M9zTYLlvY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GZEdhHjtZhhbW33Xmzs2bIQN6I7rjqk5JGd7csbs4cc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o9X6LUtQtJVUshxTYtdnD4PL4yvzcDFuEJLt0tTDpbhs9IAY4uH857tyu2OiqJmpwKHdJ5v9QWyxpKBbgq/h/Kyp+OndrDNeB9DrpwmgNaZ4oGT7zWK/O4or9ltmGAuEa3rM3lARXXWOWP0L2Kd4XPBKHG5MMqlCG1O1AlUHBfKk4jX8sfR7ntJ/pW1nqo8rSqsiZsXQRrUjOQmQkC2krMVm7JGjSeft3U/PsKm91V49kW2WJXKjXifNCpV5azXyi59HGNECLxP7SRFNmvEau7TcWWK/OE24UyrsYy9yspdSxJHY7pXNsstZhHRYfXcx/uShJsvVJd7dfCGhS5J5aHx3AD3yoGyG9BG19pP5BntG/wwKqIRMJnHiRCZ8sQLGAhA4WeG9vlIuGGWrzlTQCYD5xvM/GXV5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GZbzN3vsuePzRD9BZdHjNymm8OijFuOAjV8W4/WEabI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IYolW+g3TEnGDbB8asO1cWJdPdclcR3GkOl9ZYnLhN3v4v5/B8BDc5xfAnCirfX0jeQsyDhx8TPOIYXKjU/VJV5OI4xjdi58SdzYPOjGRw4Pfb6vi52Q+9iY4uBKnzaRrVsYcL440LRECloURmrtJs93b1S8B39Cgr1me+fb5cXpKoKiOFPzpdqZI1N4JHcuPIvuEWHqWueVSgnA6cUYzcFH0yHF+M07liT3Q0eAQyZEY0CLsuJvXyE4Hl495cRrzkKE18HWxmvkjgNAYzhvXq/I8QaNj2bG0KmP84lf964C9nnerAFkO5MtL3T/dgz/HdVw0ywhcUDJ14y/rI4jVazIZ8i3gklyoy8oxxf7e/h+1dEo0jNLSow4pNv+bzbbB0TAQ5DFOM8/KCYiFWuAS8Y7VOBNUclY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GZfV75ljdnJ/aENYSykVFlnEz3jpoEXFEOgIrJazEvc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4S82nJLcgT4T1VMCZcUutA/A0C6RYvBgNfDxQu2dbuY4iZnf69aClfvz7RYTTU8W/8Xu+nwUN6hDQcPB9mFbUzN6733EUH4bjupLJt8pfY2xD2WE2NSVLN4OjdLHVEW2yhwwEWhCdlhui/sqs5o+lfsTCvnqA17kLmS9GltPRvM7X/evM/fnl7m8VsIzUJwzw0iaM+Q67fCgnhRzuYCKqFtJiLaYwEgkuGqlSEWG4vieg2OC6XhixWtwwKSXcrE4huZ8Rou5LSUAD9O6qYaqx6KzIxuotmhu003erEURX2fBV3EXeNL4qs3hoOsrPaj28Q9SqRedj5mfnkTWtgjk570PW0aET5AL/PFZ6+WCKA/iH7eudFGjvHuPnvJo2KqKwmmQtKKaOc0UwcdyriH25m5W4elFVdCQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GZgG8R0QSX5Y1G00YbUAkQt4tlxe1Y4XlJzlOjEG9XU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "odRkOl8oSLnnLwyp3cXtJ/FIU6+RbzmRAjwDtJZXPyIzi9Bxs7+SQfuXg8IE+fKGYssBqF1fbV6jHdQ5LSDw7MHDFtH9QzxD2cMSzkdipGNOEmdR36L7ZSIwe0Km5HX+3ZkZjMBYMukgA+jhOXbZO+BZd5yvDwFkpWrc/SUXBDsPueCMv74U+eQ49EaVwV0a56rPQAMFKkTLPxkZbNJOjhe3AmdXc5bYSVzG7Oqzqruxu2khx5cUSbLFQ4msd5xVybfYW10M+1Jb9ZvqyNg33FcUigLy00pK+ykHHdHg9xcjFhFtMO3RFQqbvJHfU+UPpvLjimJzgFyzPsDBTwd6htU6QPx7uGE741S1KuiQ6o5f7vzn0XpQ7qM/mqxozTfs1uGCUn8/kc+7cnlesawYAwf5la514YMH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ga+1o0V5DCBxeR8Ysx6NBo6tHuCPSMKrvbxo8rbun/0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1CsMN0aukko4U6Y8NxMoUpUUFBdsaSttH9nYZXP938YahnWyWXnWTEGVU3Sb9rn4mpqGrK9kGYYyZedJ5jxqSfSnQnItpXsl/xuIcPtl79Evwh/7scWM3pO93ppuRGRg2hhJ31kwRCpqycGWL70YJNfDucSkXXMuwtjYu/j/C0CWCgi4kXYZULpd3oZgLAmpRIQ1K0nZK8P1JdhdbHdDZch4Pfw/qqy5xbLTaP1uQWLpmsZ6941oTus/ex7roSGaduiPc2YSxR63HEtrOi2TjK8UeP8YplfOADHE2m4NnKINOdDllhOPUCoins3jzm8xhAGTYg5lild59nJ8NFRkwTutV2ouFqGcoCgJjOLVetHIjTvd25yATM/Np+hx3FJH1sdpBvc4qE097Z9KuqZmkAkSPmcdtuJn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GaT0eJqqzqddl3qlWuhbFwVp1AzKsVjAnCcPj7aN9G0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5gO+RT3SIcbUDzTGJsmbR9V5MGrN1KHrYXI9O5eepOFc0p7vanP7Ytw0simZDukK6yiePASt+ZBV2YTge/EGBdPg/hbTYqwLjg2t08eY2OzpNeqrqH6wIHuBjrapmdxnjUugNqM5dp4oJWJOqEZlKCvWbm7QYRReqzmU0Sz9aiNvY6juD+POZ6uGWkJ1DYmNcyJ2Zt2isSrNBIz3V0jtNEJP1gDB/zlF0C4IE1HLh2jc7Asb69qQo0OILTg3Aj/ECT0cWT6kdsBVboeaef7Oqtqo0Fz5xTLwMBwo3S0gSGz/HiYOlYBJDqtoG5xkkNCpeC6KN2BpETVMFmu/TM5WueEdfcxQrRt0mbkYacO/C5L3mUkGqmTDF3XyinvVYBqejqk9xP6GlU5ZBqO/wAzhMkptFVa4P9J2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GcozrNz8KGNhcrAHnfNb5Vlm0mtC6XB94/i+eRszWWA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OANUQS0HNKfCtgSRT80iPHPX2iNMbU0xs58ILUQfmfA2VFG4iLhaKTJQOEd7jAGAWvYfDzegwYN1Fw9f1F0GKQ0F36Iv+biqAHAwGgORpp4wjxkbUVwBTdY/RKogTHpPT8pZeeE3M1cs1ebAJv16TFuLQEl6IURubWJuD3+lGtgKzxuLSc197asyLtP8Fz+zOt6yDed8aHLg5paXPoNpDQP4ROqbrao5BvLyvHXWCuvDFmOmXAXHpLVfqTmOGZSPo9ZiKMsnsi9tgRh+P0F4lZx7MbSuMXSwGVtIsGsHw61DspVlOX6shU+Q+khZ7CUtxsX+kDwcKDiX5rsUzMDGpkLuZTcOM69PmIWZSDlCIZMFuErXLnIW1wCURIYLKc4o+q7aU7IeZxA21r6H0mO0/vIKwjZHyPC3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GduSiKKUh/5w0PyyoYlFvyiUZTT9P5Li09/hetrx9P0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IBIj1/84SNmYR9wsSD/3I0VcqvD4iBE/Ox90el4gZAtWRaCLHUVlDHTvJ3ojphhTaUsBCNBX0QKjJjH8cDNBVN8iQYQy+nnnVb0XgP+Mt3WXXMcex9+zph57IKGZUkX3KutH+nvZjclSxALX0SY6GSFSr0V0ArBbl3DI++WJk5nLKpqC/PzNmOTQiXlu0LirHHAgGHRVQOt7RogW7rou96v95FZgL7rv4Z9i4piedLO+MRPc1KUaURxVnjlvhhBK2A/l5jc5lxeRjlFO3Tn+3ZtGHZ8JG85pXNMdly9z+rjLW0ptfdpEN53bIzr8B9wIqghIZRxcuCjQODzi2eaFY8w47CzGrE1I8n1ROk1e1JHnHJJ+jOJmLSNui+sVsl1/ZoCEbw5ZEpm/sDYuJ0xpcjHDFAjTXJkY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GgGlD6/GFYmPuY5PNyh5R0vXCen1vXHtN/XclERnleo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Uf45KeVJHdSGWHihkTFeVyEVaBgXQjjR72pQFS+NJPU/oIuPOahhHOTPl/XSBv1Ci9pvzGXIzLr9YxVQLu8ReM+i7CG4U6kAb6ncmD0Brc9f7ZGqc3lDSFZ05865uXRB7MTRfjEOemmCxrcxwSOELiqmFx2r9tMbAYd1H9YM+XQh6paG9wzv6U2cMVDVffUT/1HwFO2XXgABAs+5KGvuM5PkgovGpIZjrysEO7bJI5W+eDLOzIp+gGcmGM1IXeQBOff1v/ljsbIG5/giqsjPaUAjTCdrpMegDFHi+ZqfsyZfF4vj3ujkPtCYXqmXzr1v+GakOanjVfylxdVEWAY1cx9crsUtxRL3vB4pIZ4+z+2WsANj/ylha24f2X+RCTsL7y/9KuLcV+RqOYCcYwuZ3LPPL3hBzrCK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GguWHFta8QMvVPh//CJJLnjXIEn0tyrc9vBsYMJfWPg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q+WR6+Us/N0UC3ZtWj+pMwc5iGQzHFtdURJS4+q+l8+7hAdGLROR4KYNAzasKVgYYI90K1iBGdDsr356xVnWlAo9LlFK5tMG3bMT4eCA+GYqUqU2o5yhZMY2ZwLfbZE14//QAPx+WP6Y6PABzUJMghUy2DxkF6r7TIpG6b1WBigVIxqcdxSL8ICOr8MnApxM+dVH5CTVStdARgT+0xehBZgVwN02HveZAnLPrMaMyWmkPdPQfv6dvYWYc/w+R6ER5mrFZgDonv2Z0q6W3D9dsZ3Yc3N+qxw/GatBHA3OjLcxbcoWrsFkS6AUxF5siSf/iWz3B2SJwiw4VS6WdsYRq2tzrGfowYanod78Q6vu8m3ekMNcpXn2e0tQTHA/BZpGGFJI67KhIshikktwzZinpCs0Eq4RwwNk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Gh6ppkqa33f+xhCa+oeMJI3IL6Xd5TBQx/a+dj+ZmXw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ClTF1bJVUscWin58IUdnCjrDKEmOS1MW1i176hy3Xxi2RxTlF2m1T19TaN/ZSVg6B9pCZ6IrOvzAYQT8heMZPf4lxmXa9JF0SmnMGbwAkqa3w5BN/bmbarvja+JKzZyaLLe+WnnCfNod8Gz0Pwbxz+AnD71tBqyOmV2kWPeKc2DvWEEZ2O2vuXVx2Vtl91jTuTyFbT77qe6LsTyEXDwqV5MFKlQAWuhmaiDLR1b7F/7nQMsdsrByLwAUMsTj9+pbVV7RwJDPBHbARt0legZ/+aCriGnfCDHdnRfoCdIteahepW73YH/pnTK7XT4sZCJIBnEU2zjUXKoioYXkGoTAvmYm7HZpvqsnFwR1dB09HhS/LiEsHSU5ZxbpFDTB5sYRKbGuWNZ47uh15Fomg6+VDxcRkXdq8lzX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GiWjJetZRlvmESS6FcEX/JKCz032jAeNdN6oFsNztl8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "J8V9pj53tDgW/Op4Z3mX39z6gF8Xj1d9Uo4+azsgSXsHdsiq83nrhc2nHHHE65K3iZvQ7nIZ2YEA41WOYJwbBYwSyqP0Agk5OViUwPuLCf8l40Bvxy/i9aFE+3SG7+qK1rKtP+K4wlo5pUj1utafLHABR9Be8eno2Lg8quU7DxwLApPQ9uJ9YI1k+R6ADSvqVzHzs07QvPIDpsjG+4Ndvz3cI2cbppmQfVBi8VeADl1/nAaztiEeU9v0T6vYaQvVt8JEuBgfu747ieaVdR5AYES6b1OoltyYCsL2zZZn13Yu3JizWl3LRpvntbXKJZ2ehPNauTKUSKE/Ktga5vVGbJTab7lqKFEhy0/N7AnH9RHx8pOMHn9XX8nDeHQNuZ/oUqh4o/rz2rZJN3AW1JZnWG4em36fDYPp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GimHM9EVaq+uuXs1YpBiRvl032HDmRXVjDH4bT9BZSc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MrQtoy5ZQLplZOth/2QqZVlWQ7BEzGUy3SbBjKTRJ08+S2Fm4ukJt0689S5svctR4RSLvw+iCubqAVLHMEj7DNJS6tzV4nJsKNkTyocwdtEeZRe8mkPi+0ToEN7m4FuIf65DP7n+CaK1gZWFV3h+nuZKeXuN9GxByuHXNtlJJ9HROytvdLFJjZWmO9TX5ozWp+NbKDwO3JKHIYfuUTYLPRXI5Vtn689yXKL/0VDRDQmfuKfmZC+ZNr3L19esGIYloGv8OKUgzezrJmbwANd3C+y/18aRJTHvrEsofn3kvo66crji518voKRX/EAI/u4vA3wF9iSb7awUpv5GVu9oDN+O9idJumnrwlFuXam5Y8WANeSXV+afBhmTYOIFfJHHGV/zEu2lrQdSC4abqn2EfrOvaRt/xzJ+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Gjvt0ntRR4DQal6pyWqYWw5V9gAoXPTjtfzIl7TBYVE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VcLX+6AtDJDpWVZuC6VLd4yWOCvu4BDlX0lwM/8ibgGM4FIPr68BuYzbPNEaSFWMdqnWoNwtv1se16E139zw9b3yMRIVHeIc0YBDx+7yWGW3bt7uynnFqgZjlK6VdKaMw9mE/zpE94gTveSGfXPTsdQuBN7KkFllRnqSykFi9FvI9btD8n4PSWu/DpyIDiE2/Y94PNl8GFjcvJl3HQiWZgxrOTJIUW4njf/p7vg7Msj/AFWwoKAHzHfsPidXecuC3TC9ONi8Wj+HrFVWP3bqfKXBL/deHXUVY4sH6+fE79gM/GvzEEIHlLLtG91SFBoZWEy71IaAG6TSFc6No6XbIjD8LMVCmyFLsNoCmN1mTJMaiB4lutcdI6A5YXUjkgocP7F8Bn2m8Lq5DJymKs3aabsvoY9bMu42", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GkGn+vuvnODFdaDDW4x3xfQoKCvQJJj/sUUW5VXoEAw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qoWD1c9nJTyjgJoVIPK1zMEKAAry1wh95eOMeRadFoPCl2w/M1rirI8CT7q4Eh/R5+vtG6LNuyAOhvhDpNgpF9APAqQ6BFkL6++vXlqidAkAU7rV7ZOtgoeoR9OkskTVlhMZMfP5bEq/y9pW6J4SnhXr3U5Vfpsi/sn6nt8X3tb9XS6x0fztpGZIa2J9wswRftHMBX9ftPPz0Kv/Fd0Mf1ogldO9+hETOl+YAqygH+ddaV18bFZc6TAqrQvSL2qHfpEh7JcMQkubXzKqVUwhoiak4zyTwGdhdS5RslnNUTp0wuIfyAb5SpIolbuslYtWXm99LHWWLVNuM2092TEfjk5+IJHtmgVbwPl4XJC4QpGVphgaFtYYrJMrWxTCRQtSGXFrNaFI0QZTOhvydkY//3cY5n37X/zK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GlrS9bok1NR4OeNmCkZAjnb0PtafNf7CpBSroF3s3KI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BY5UX3bRgKxpxfqumhD0/1Ez2ZgJbt1IW0rY25JMHs08p7Y2xzrS4kPPwTd7rKpYLdKDe272QVcyi60DsuVJz15My25U/B1srTug9Ri6h4AhE0x/LpiE21tyTV5mR/TBModIBR65uZKPM+o1hMxCO0CxCI5JqCb9aV49ayWU0uWrqll3UX3NZ7y8U+wL8FNJkjMnJe2QiTdTbsihkKoivNhoozgOpv4XqiqJdSImxGQrYjcAEpfkbFwH2/OdBSCYdvyswnLpzPxrgTM9j7gMhIn87wOgsf+2jJWiFJzGlVuDtmVZfDLaqbraK+k3p11hrj0gq/28KiOqDQ4yy8gwQ1gRA+SSlMUJhJvZUYu/1uVXgzNMHBD+ejtJ+sL/fMNWVVSL6ihUjZpATcE6/rSynl+TXJbcC8O1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Gmflcppp9Odjx3XCa76n1dKEIWp0rS6DnhBWxFz4xLI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yt0x8GCIhJjTltxobSDw1EH3ZysF+8INjfpg06s5wyjbNIG8DjSJXtUyp+NunDIMQmzi5+XhW7UmtnrYNQLaBeugPnSM3BcajzNzFBBkQMOoxY1i16vn8zmhUGirSe8m1GApNCYaKfI/3yTIT0D13UlhdQzDTVpOxNAcWqRib9khHP+DqpecnNyBjgIzdxaKqF3BqEb2JroDPdjysYTvHvbfP7IEW48ocj4BN7RjREch67JDctYHsN7nOaVpmKcjuj7pqx8yn98HkrtVkYDjS6bl/7g2eKTiYkOSMkBP0SsXxUuwGEhoUC6h0TIGf2zn4kDlyiEZRUs9DV7dNQ5BGy8XsH45Ze3iK8oe4ZVhI52sg01tAv1RfvcxzB+67C+erdNeVzdIadvkIQHALZhpVS7bak56EihZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Gmxie0ximgbALEvPHBfFpmXyCXlGzbPW4vKJQCC7tzI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3gbVOtjQxUIBCG87VWB3nyxPklDIcaULfw48vv5wLPdCk1AbwIa1wYScWida/KpOMKnTg99fDBVDRRbo5oBc/IWpcSOsP9/LrJA90Zdvl+dVcbty7i4N9kX91IsbirTpdq9U+O+D99RzMBfFJ66nufZcECRViAp79Ei5eQvKlv+p5JqTNEMpR1SxHlOIsphsU3hE2OwUcSltB6peuxLay24/stSNqDqjx+sZl7l/vdwBOphCn4iZbU80mHYK0g1FZLbjzaNggvT5iqZrfGcBUcxPtswTDLOPxzmnz+45jTh7Om9OzO2j1AWFEZsfuHyacmgTP1Jt6JatYMHAAZ5UYlSfRe6zanPy+M1XYG5c4MMyYYXH3T8pGuWKIm25VpYg2JXG/6GUPfGQkmK1HlOZr1xFUCLOkRad", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Gn3BDjiC9kXXp3WoGiTzaj3DBN+ZaiN41IElr0RQ4yQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bMBW3X94TJmPZkM/W4n7VUWwdoV3MZVFpUklw6IrzOXbagztp/CeHR4JPWcg2Q4pQp3TW05+J6EH887dlkN20Ed+tGeEM2rkcqGfLHcR1J5qpJ9Vt2QSinaO1IxZCuLl0p9QpQujExXmPK1qgU/GNYmMkiKNUdoCMJORO3LDrDJZqZQ9xwxJKMv0qyejsKu6OasuyqqzZYgXSy1dKz/gHIQkXdSoVlv31blaGFLe7vb2XRB8CRteJr89+Q2+49TRbKopFDnSJ/eMlPMOL7DEKLL/KLVpOvpf0mWtvb0gJeGTsdVLc7uJRx/VwsISlOuUrIc8XGENV1O5EVJ6/H4ey0XYaObf9Oxw0RAZB+pZkrzRBF5UZruxa7/5ahW98ULGSnptjEHV6fHppCU/nJ1c5/T+qey7UOkA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GozSvTfNFaJbVASdvVOqXTfQzm8Gb5zXmiUVqDSuDtU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cp/XU4+LdCWdIzCHRNMZWdHS+ROkGiK4MRlNPNhuM5N4dk/1QEcsz+XbBr3b9eKBicNrOzYo9m9OQJHDXpj1lwkankAgJ2VYaerDcP5vUBmXjMl/Vhwtl41UwrS+wW4y8DoNpccletunASusg+sFXKWaEl57/A6RIoz5mePDUcZCARJoNeBcsfwz91EaqhrGPkaTYI3m9PfEcdOpWuNsxNEYpXyPYtHwi8WfNpARPLjxUVv1lSZ+pZFPyH2HsTTuBEojHoxCedojuEWto0Pekzcevg9qBRvk12OJlbrm8LOXtC8y9mRoHISGWN/yYfhBYhQM2BE9EXj9pN8Xd6RyC66VgzR3MQ31fGlIrAdYGuYm/DCs4RBC8hoe+Msy9rEcxEcODkbj6JkZhX0B3vgrqbSUZ2Cm/Zc9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GqUdNmkGtioDpQap3y8Vt/SW4NQt3CphNHlJsDuox+o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w6xR61j1sb5GbNrov1hvB44ZG+vUrbivlalhpbdIbsQwUUazuH5RT0e1R/pajZ6I6EkUFKon7UJ5PsmGx475R4TBINy9ZQNfRRZGz9FXEEP5k80wIEm2u3hzR2j0rHbxwIXKNijK6J8y8/0OyobF/w7soc6YftX//FnTHZdL/V8l+2Iz7XRjKskoNmIZu6eIfC0gQgeTnCmpszU5sEwJCO6YqdCaNO44bMg4ElUw3B1uuc5tKs6W+T+p29yB+CpJre9qNwBJeigwjqblAwfIW+oINWvb+ooyjMPd2YWRJc7gpH7FV0ChUSNpEkgNK2Oj/zgclbsEtWjcnMzdpvX1rCm2R8Gv2fCNRQNSFCH/vFcsIWtYozah6tqdY+XZbbKydXUogljMdB75b7RLJWFY/gwrr4QondYh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GrcUI1XQkQ6g83IZEpkpr9YLkaFC5SJUfHqamkZz7e4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dMveNxY241ekf0v2A4KSP9Rhw8+ZuINlxd6Hquk6X66UTm/2g6qXwfAXnT96+1u19RNdR1AWxusbJ/xAr4SYF8hGr9rEmCVNNxfBwGd7duWkoOPNoIL+RReFhbf44c038LFlEYBt1UrRLOXQriQf5dseE9pioP/LjMqWkIXxpNYu8HyyoXS7t8gCZXAluj6XP27VmnoJBCONU9AK+vT2GVMl7LMf+03bIyoxNxVV9927aHxAFQSvsV6cLd58a/rZa+t7FYiaAzrBKJhKRsergALl22oLVeOCURwL3Ufn2+PX2RvJjw1RVcvLvafYKHMZpqosidEwIIl2Tw/MCvMgx8gE1UougBmPbjf/Hc2tjZ0soj568d3Deia3qE77ZgGHOxIfxpkI97V7WKwqkUGhveJJog8SD9h6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GreiGlPZO/mJEN8/rmLrHsfm39gldLjURtEuedORq4E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5xXWqV8qv1JbVnwOFCznBlx+14kRC2OjopWl6ETj7lenOPP89923h8pszlD1wOe9TaS2mCTtmGFjlSktT8jvyOGR83Eze4v8bhX0O/f1+cT8C1Ey6fp0QcEinbColsvQER16ALeKZW8LH+yDr0SGEzleVeEB9NGjJYQvedCdHnVctA3XeHwJnTL2ktF8efn6bRf8uMkgMdwOjxwTGZZK+NDqaD7nK8ylu8mSX+w8CK2mg86+yM5MBsNFXIegRkcNeeUf6qgBBvY/PDMGxMmpkYAPUAiHAq19rom57BAJhnPLZ1THJHUTA7W3dTPt9XWB0tctnVP6XScGnm91OVwS65uA/zhIGsfaEvg6wWUJBuXam/506QpCT4B/cGXlnAHdtQmVvMOEvPK19RA4+oqtBA3IqPW7dGz/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GsJecJkYCX6TL4PEhHMEzJOfUabLg//C+SsMNNjLP7M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+8AdtRGMpdZTeqR97tVXSZvqoifDJjOfR8V+bctPqRDb1u3E/AwHOG2uQ2zgAZ7MDy4KXvc1o1B0NB4dp5hogvDOXd1cq2oRxqIbPf5PnRznOj9si4raQEPMI7L5XUOZ/e6imVIYTR21wC3b7DJbCWCIzMiu9odqddK9VgxocLgliI06hmc5NIY1LGP2qRRbtZoGFpFeiT/q8tLuyFZmlqgkdCIOhtTQ2fZlUxahyjrdykDwq0qb0HHM3tLz0WdPGPz3X9ej6JkataExo9aoKINEM4qa1zibG2oGGEFQS/NRsRhbXOf4iaqaajEF8hbjy6tTd4tNckZ2xiuq9wXLTdNCHBAcihOFEkcMXesQNHvXZ846ZUoqFJO0V1n5rCUOzLVlYk/gMNy0fs4ud6/2XQ3hiOswoXPb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GtZg0jBSh09HbxoinaVdc74HVgS6yw+aFBnBmOkf89I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QDkGiYRA78ZWR6Xf9qfS8lEaYKsJNk8cysxGou4sTjip9e6qF1J6mMXvDzdIhwFg8pj2vzbxg0nfF/0BTXKIIab8ytLs4LgOzIQIjx9nLvNqefmO8b+T2ipROHCApMlG+xeLTWba+ob2sH8MpLzAnAcwFmyE7vz82tYUEsC1sbTLtYp4yciogwRlTTIqcXEfNtq3c2wO/Snh1VmahgQlPXp1J8gm4JK6ICnvLc2GPJQJNccLqdE2XP3Ziw9nKT+ObJU5NocoHUyZIaWlPGUkK1x8vkuzAA13Rrl+xXE8nZToijG26tJRGTGReliDu5EfeN3UsOTkecyxnLZpH2ioeGH/Wgg9fLwzz6kRCTxQ07gDPYae6j4JP2G+CP8BsRXvbcozWiQrw8aVB/MuWcrUI60oxd1FzOY6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Gu33b1oUvwPhBN0hT36fGGwisrfaElMa5Nc+R2q6nlE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VBoNul8w1HSxbt7n9yEpfOJx6jgbB16l3YoC+44neT/dcaQSt5xUxX1Hir1Q1Yrosc+gtFgGLLZ6HUMmhECh8rkSEa1DPfc8sXRrN0yye6Gc4gZAwjELOI3pqQD9/imbtfoPNcRnkEwKwanVsybwVSlMwIdTgrfePFMTZJLl8hPzmx/P4FmcghS1PpWyGLTPsOoWxFJX5ygLEhwFohL90jNDE0W6FJlExa5eCC6IJSod35fblTIpeXTz18qWUsf7HMmNXH1SR+Bsjf969d1R2w0zSN5wrqd8R0kDVliKFSz/M4htC1sHtdYAtnR3dGQqxklAMVl7oJN1pSG2RPnxt/ulCswQJgyYDCgkTYHbNCfOO4RBJAip5WZlVUy/0q4XM9Hcp7hPGkHVZafVKrEkin+2z/Who8LF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GvjnTsDeacPeW2ge6tfhb+bkzjBpMAKY5VkOc9pcBDg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3T6pugFg9JU7BmJozEIx+aTfHpZu3ndmFZ401hTKVmYPLjq5SnYu8AWzPsKeihvpXG/4PGDGD7dO1jMhFs42udCoinYMR3kFkJ2fziONNEK7+xbULG9cOGaIcUmnV0+nr2OnjVnKj47AGnisMJ9qFZS6WS8Vl6F+XwQnPSshNw7labYxg487ci40t5mzw+SKcg2Xku0pEv+tu+rUnQ791FFcxF6iC1ENM4PfM92nf/acgXvcalltQ2g8phLVlYC1uJHNFVgjmCFF+Tx6JWY+M9uSKJmstNbZUz9xcVIPhjoSvvHNek+H1xrh1FK6718+D/5F5bSF0SsS4eMVhXE41AZ6LpVJEKdzkMVeQkwBzvPXSOZxxEwOY7ekMvUg0fevbTe/lOH7zibBoG0F6M7+uvz6WwHYDtAX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GvvN1VJjsyE0X/nNQgFloMGPete2eVNQi1SnAyH8B98", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "atumwMXYohijmJJYB/BlPGWnc43K8R82IvszONKYQ5QhxGwAlF/O20EE9jR/mfoRq8H3QoU1CEPDGxTEPm5UfCnJ6v+zGwpvUZI1qRL0VwcukxNW7rgkOWNrA0rHpA7jZmqKohOZs7wBIqUpbbySWVqRiiL3xihY8Aflq6O4qvH6416UJ5XTm24hiYr0dOB4AJfcGxN9KpiMfzvuK84llXZ0qaeW8Zqdfl876Lrcui64KImoGm9/5MGielZi+4arW91ptZuk+MHFDgGmCw/40jhsv/E89zeVclYQ/3DBng5euM+O3C/UTlmPTMc/s0J4VYXn196Kqh7Qep4050I8hsc3Mf98h31vEanYYsoBZSbtOhLXgZqvPEvMmRvN9p0iwn/LTdLd/10rBUTPK9n8i8nwKAdSGyeS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GxHkNGbMGi23jf9DS13NcPB1E8sUui0xcZn49QYjZVg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rt46PxwL2aewr/mWErNPGdCK9HCyOcxXqSi6+nBzF701KnHNwGdG10xz4uw5oBT4qjagOUWt9REmlwpVgzLY8rIpg66lYFssNHEYc32A/u/C18/VjGg67Ycv/DcFgvMOjhB4X1u75zz3U493VRfdtXxCid+AKH9deH1rV17kYmwdOom+t1f5J8j6az2Q4OdjzOHLrCcd2j4vjug8VXXjbGDEYh+Vm+iQs+pGaN1aoqryZdyXMVqf2mHZ28d/TaXkXJClelwI+OUavtlKnqxenb6jptx2LVh+wOCJf6qgUqDwHigo8szXSQAEPhTRZ7ru7O+u8IOEBUkRUl+x9+JGRkS2s/m2ezlKjg42/ov497sFeds2X7oK0O2crWWLzz8QAlRMCETbniXMeaDDYMPUPvp3F/ehYPDt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GxKpNZgxiFLo2rF2L8AiCu4vkqcSttSRzVMpGUAFyvk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y10oPxKRaNTM3U4iZ/9szyp4UpMHwVAWf5aO+K5n9iS99l4SiZSW8yNhiGV/VQnEjbo4FeXMzepLr7K4j6nVgarEFShJSxIwSQwLMCE0NPbKgwB88i5Ac6GUl1om0BV/Qkd7HQI9+tYRuJ3dpWcSOmLishKlNohBHF0ulBLfTal7BDOHGXzV8xVcRrQMbDmpJZmueQTJuMZzQ0D0oC/TIx171Osbf7BtNJ9FSvV0XsgEh1eKQTB/hCke3E92h/IkHcGSm+QpScTM+WARCD5YjlH4X8C4MhQLYafK0EFann9U/s/i08G2WuDfks2BtBLH+QEbczxW/LZAsBuxm6QO2Q3J6+U4g+mlfsGJQ88nwG3fFyo1L71DAdRkNauO6SFv4tEMeRBecclY1LU6XGtsVHhxVWjiRxup", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "GzYSBWuSmNormBmlx1HuDDl8Mku2wddFh0wOuJDxfgg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2vUWYuzINxOv91czeIq0M+sWmtWzuQ8Om9p0A/yV4kHbJf7AqdUtviuThyIcnguGxoTzAuPedk6FczxK7/PxJdjZYlnuKroI1z225eM92yfm+azVtVSrpvFB/vEjDDZcx4AAEluCotGP9i/tI04ZtEMKFQQz8bgQHQV5iV6B1xGRUpbms/K2etwk4wQgdMQ1rmtvecy3kO7Bf+9IYR15HZFQ9jhvFhZjIpfmHFVax/4v1r6OLnh/cMxYLc0OqCIJsaau+vNAz5CppmslrzeI0nwr0Xs2IjWgs/fMIxrrEsuoaVtCFv1uOtCWG1+aRXBT6fWJSiMUXQUBfJ6jKWgBc3KSgnazZHAL2ym8GLntdgYwAnnYWjzlxczLZdxbmMvGIs/Knt+xUUaHdwzjh1Teqam9LvN1VyMg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H+6cZFbPAlSdSn5JC5sQVoqeVcCTgr/NrGSqcrk1n6Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SA/jZ1COWby/HpqWFkjUs2TD+5luw9jMJ250hvV56aoNZLZfOmw3aMiiyxW4iJh2jLx2eQKO3bgOl8OA/6rEdLiSirwBi8PQv2HpcaKBYsUYv2GURyLYaYFg0Xd2bhsRrCC7KTK2HLc5x+pT+11/YqB/YgnzpfKaSF4xorGc7F+i4+fIIeYgDKdlQ1Jzi/89nSKQG7vZrGglsDEl6HWbXMwyOKGj+uKdCRGrTZqyToTaL/bXfoHhEwzfJzkrF8vaaS1WNGnNnTzYcVwYW87ufZ0ufZkLebmCCxd2nLoOudFX+x2ad2oJccdFJnVKlTw3IKXOMiIheKR8XSKo0HlQ1YirO9976UXtmAxjby8fMxwYv5HjZeyslVTRx3ROTxTI0tb3d898YarwfHw7EcpCjr6D/KnRgX4I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H+ir6Za+yc092a3Pclpwzqc2JpzSXke92oVVJHXCJV4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MmxSCcDWotgHSOzbGhh35uyuOGWdDlHgCkni0Lx1TusHa9Df78+Y3s8IbeytO4LqGlDa4eYvOI/WRXRd7KPsD22q4+P5VMeZAo7ynQQ32kLLezbWbM0OeBVWbj6CbKQWv2pmFZt5XjYSyPjGwdWj+gMWKCXZDdMJkqxBX3NUfUwArs8x/E410T55GNdsbnfovXtO9ThO2KYGJVvK4ik79sNKDdBCPs/QSw+DzRFb/d38t3aZruNXRSep32LmUNj2Xm7HnuhiRJWQNJeNrndh6T8ba1AlCfK+gxFkUBAPrhDNUlpd0ooyOITWftgLMyVzF1boKimb9xPS+KyL7bTTV/vpdI7v910P8NRTbfsTDFc2K7KZnJcuMMcaOFLuEnqCZo0b+VFHWalQKV7xvg/j2WxDRv2c/O1Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H1L3VSFf6QYK18zw3M/z6HpuDGe22pR/pQE5EupIHDY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EvZy1rrbCWChUs69Kq2T4PuvDY9XVYjK7wmzVXxEht+mEJ7vYCwEW0MU1lwp7EOJ5U7NRWbFmhirLaiMw5tiiSPhsZuXDvxYd8zoSLwrqENG6nAHxm8hvmDzTYxC1MZ7w9XpUPoCbKb1jHdPCgI27u+1W9+/xsFV0krIuSToHZPPN12BDREmUDc1xfIOrEHu6yzC2PLLecBwFE+knZ9zDdc4auyfvE7YOwahcLBvUgUcHOJ6B4dg+iA4EPI/Jgzw4YAwcg9ZOlthEB/qXiuqOjIpvT/eUBERaOle9SI3Cz8q210gmQ0suhMvtC1QUioMhCIRRb2V6/Dgx0eZNVtFbPM0MAEbMiuula8Zj8HvOXxGvYOC1OBFb91zXCIP+pTHFmRDF8aOfTxeFHWwxgf6goVxdJj0OTke", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H1Sc50MCIibKpQoYTYOrbqFNnQ6sEgiT2gW7r0esyvA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "G+wxcmlBIvagw5gmfqy57fBdik7RETQF0c2vA6Me9mG87tEWU9cc5hfQAFPtS90ea4YTwgYSeF/5taoQTmGewXs2iHHlAWjWyeCa+zYJjVclhGb8KcuishAvix1JRsIgijS5GDibYu2rNVB7SdAyeasm7a7ZkaBLeDRAZm5eVBapyUKhHQxILEl+supKBpBmFGUs/0NlBQHPgJQq3xx5ueTMe0nX5h876lZlXM6MGMZJ5Eog8eVVTo+VDR83bHoNN4FkzgrH9DYTDhKTvtqehR3P44MAclpNPQEnTD8IH54HFTyp1QdfCHqJmSC1jq4uwFGwI7yDQtvUj21SsKD/+JDB1iYBlnhq2e6QbmxxRo/pac5l2Cj/9RpZcU6hxlHxEV/7XouxzRuArcxmy3fZwIBGFxlremlA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H1mhqZ4iWKLhzETKeg0XM6omOv6pzEhg5rwomPLHZOw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ohUmJN4CH/N0ks6zT9ewqM7R7V6fVuFN3EBmkTDw9CF9qKZzEBmilUQ7R+qwVg/fPZyp8pgII55Uvnewoz4qEU210YfYW0HFfvgxbLntfTvbqfHMm0g4BnZmEObiCqOqGJsoIKeghKuMPgLOVc8PWka8loEfbxa3ciPfWKuBoqUxUCf0NlP/lQv0lKmpiszOOxwKYKVZ6ciywvqpRf1yUIz8ot6+UbmaUYyvqG6RIM3nCv18rG9Y65SBvn18KEfUESHicQwh2//4QYdYApn0S4aAVf2AAYPF3rJIsJ+yoKSpCATr1TBxa3/Fy0k01rd0PlQKaQZ3vtDuyTiAn5A8de1ZdunPrCPt48w71aMfN5p6DusSQYNhm+OppapIgk2fSVCCIGAe5ylbs2RcxK3XGKI4l/BH/5Id", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H2So2r6KGz82Ry20+LrnanfzuOaylRddRDkJFCgx6yE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5Dhh/TAR+AjQ1ysN4eLdxbPSwEcO4e0txQ0xEsKgbVnPM+w5UHRWUGTJO/4BVD4Jn4NAhJpifmrQTkMSkEpwZGGf0Fhmby4hmLOGd6RCznfPhTimjU4K7UcSyuhbXu2SqDANT8b9ZYLDJWGAVGtegPWtD55Ur0FsuVacdpndvyrVgHGYEg8eVMX00HptXr3PDXNJlcbl/s1Udh04sVzR41zZLtUrywusOF15deVOXaFJn2LilfCfwyTGe1sj2yL4ZSCnSGTH5g2KBuiMQOaaSZhN5TJuzykMK+ketiU5I+llTFy5xWF+haaqgwvg3rOgYxOvcin+VfsTC672SAZJpori4uPHDdrez0/JLbMSdenwg7FIAIhm1RUXJzt9Sc/OCfrzUqrC85eDE+iWssxRODOwDGSe79ZO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H4nGCSSj1gSTkqDV8u4gzCOxPij61DBtPkSpKFKOH8w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CRmVki8u0tYiScpcfPIKqTV19Ijg6yaLCWZNFY9QuswjKfWWi38V+YjTposQfdcQRC9JIQHZj83nxH1v2NwoiV5nHKQoKo/jquomOmXXuhqFM9pX459HIpi46TkBySK9Pmt6+Uj396iaaSjGuoGPPZ7vwZ1LPJ1vfwWutlvExPnwN4IeKPHgCnxfjhqL03BSjr9x/febAalw8Sc/Y15ruwwOF+8BOgeyczwXMa7upKpJQ9Lh4E8SOc3cvBeHCrAOGNiBAEjh3KOtU8Uzy/ZbCiFd+SBaCc6ioBcqmFf2Mp2+Lo8Iz7KvAy5bqJEaUWdXF25BWP2HjyPskqeqSWFKBEGiF0+C8daAB0SnjHZzh2WL4ueFWcwTKI28tixCWH/+ITKamUeNed2ESVXEI9Tm1yMjfo6WYTB5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H52Fg64MxNedZUQtKp7FtzQ/y4QK0OFB5v5fGQ78ux4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VnjvZzA/fwqCr0VNI6WVTivaBTChg01bAT8iLFn622duIn50oMG9xXuOE+zotjLKaIRFtoX08hgINdOmCOJ7VH3VK36qOA5M28mTcONw1x5wBk1WV/0dw9NCHIpZ1L+MYQquzpewqL+2URKGWl8iRYoFhEl/BlvOEyY9NacQ43VnudMehPebulSK8nl5CGmzk9siwYHrxh4uXhaDhCgPGPngau8OXLhp1f73tvoMdWpjcLHK3ZLnmFnJFWZdJLPYSYRgcQmRllPd/4+DpK/gI48pXVWuzNEm/pzsgTc+FUQUSOe5twkkjvoHe4D2RkJZVd0nCeq/o7Y81zpxie/KDTHryyiHY0ot1X0ylZKVBFykjHfqVEG1A/ixbL+o8yZugcFI4ErriVRClMLhUMVo4Ycm/nD5e5Xp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H5C+/CEQtxg9XQQB+5ohXvzYqGpgiDOdi7c/EcmA71g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ml20t154TGRGB5Ec4tC27f0MSfG+5w+4zBSvzy1AujaJfZU1yQVBEl79Acb9JjdEVvIANR+yFQ5mG3jesB4NT4n93SYXnlN5clL8ztD155g7v2GmYNbQs2gBtDfa/jeYsRSX0UBclSHkIg8b3jdLYlHfsZClRjMoVbLu4ktEsxeyyY26woA9wy9YJjN6YNHxQTS2TVeHUXVk2GGIftvhrFBBXAqp3ZDvnniYb1xVgTb3gEUpzcfspIOWVyFwbsKGbkwbRVCSQ1JgfiNHv5VIFDLWL1Ac0TvOMSiLuwZMWJdqsarEuGjqxEKR6OAYjHWmKnKmTy54JNcL/pMxmYpeMu1yBtBHEfl+YrzHB74wOhftHrwaYQAWyxBS71DxsQhiH18gMtV75xrioXY3hY1T4rCQJ2ezZn1r", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H5W0ErrQoPr7698kyDjvP0wORUI7LHUDIDBD8XwPwr4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MtcHQBNjfaEmtfzqeM+5q8xImxO6ifcmbEtHCiUietVJeG3dibL1LvOxbvOkZDZ0OyoYAXbOTW5MCcNY5XDUqav+N3r77yyDXvrlmLAmxXFPffmTGKiqkRQHqx6gk5skyjvjThuzTIpCm+lgq6BNzgtOa6FL+4TGt5JOpgTB1aYsWLiObBftmpt+TQlh82klWeJ+AioRH6IgG/zBPgnYhLX6DAynI3CjoYmcppWD1XAtHVTEDyN4EP1VMMJ782zcIpi9+2g1D8d+cmfwJZ5/xEyyDLFHrKhN6KVny3DF+KwdPvdG2aXgRwBtZTTwfOBazaGR12VGwvbXJ4c9IcgHcAMpuPZGCZ5LN+/FiZaxcEzTqOiuE8Sz5o5RHcMjFyA+QxraByGndLxRllES7N/t4ChvREYp6AjM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H7SgffbjMr+NBFUJzR/BvWRV+Uv2YJf5uisldwJAtgo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bQOFBSgyodkv6JSLTNoPLHfUP00WbhRf7KrQ3RBBguTwYOfFaNgXPED7ei0SaDfNC1w+hNurtnzqLHlDqdNTNDdS2fBRQH7K+DFyIP88Mh6sx13kcL8mCgk/fX+n9TjUj4/fCa6+/tyiAJ+zZW6p61/wOySQkBa86TUcedFIEmGRKY0W7f2zxXIM38lv4hpZfqS2CijLZ3C63ICOwhfRUzEiYUXnH/tdXUN1AhoLgJW/W4kMRX5jbd97Z7BOHCB3JNxT7NHbJ4zwfl+0OY8As2npWMXhbX6F2LIT+G0qfcU3ttqACOtrVpvsfC4+bnRhg0oc04mcfDUQzhcKcz9HOYxVxg89lcMtC9AeBbE6jDnJoAkKy7k+R0Hvl5UjyT9ZnqqINtKBggLVUrBdEDr7bxXPPkiK0B6v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H7WrSVWks4hSu9LkEFks9b1fMFw5B/Gn1z/KtG8dBkM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tFUAFzZO6kaSIUm9PPh2fRgFfq241+jm9l4dEQ43aSkOYRGf2HRKg/KH10UGnN5Dtzqq6PJno5jXY3MmZNY+ro+ObYwFnXDIRCk48RWtunSImqR4x2BNs1Jc3achu+knHHOpHc7rn8XviJhxhF5FoB5II20gMIyWVRvM1F39H/Iw+r4oWvXJU/tPjgycYrZesqeLTvVzHy/ma+/KIFqjY/F7V5tFxI4qWrkB6zy5qfDUXKePhJjiZO6FMXufdAH5XdGMD3mQM18ZRZQ3BtQyYFw3uXtSJ74Ol5DOOjNTYGeIx5e2MrSGx+CbNcthKhdjr2z1YUJv2KSESlQvtxDH2F3mNXSspH1SUPe9buw8D44kuzWByHqFxr9ejTB14kk/O8sj+GR2q8nvydi/KHwRojgHc9cVepZA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H7dx0FPRfhlZUOfvcT5qF0iUoeFbdELQC/YDtgBsbjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5i5KmTxdO1QacUkq67qKEPeLgkOnCidWncllZG78zgyX72unoPMQ7W9H6YXeVE/cCa+cp/Gnvu6zseAmk+g63gvdwxuf3cw0x9Pr3lCAdokM8HCX04gSKPXYnRrQZ4eWgH6ZcI4OCrhwjzIp9SsMYn2O/ZFq5zzA5ap0bu+cVFpblt/b9OdW3qMtQSZDd3nfehvIAb6OHO/3Ek8Nvrn4yKCokCTZNQuJl3ruw+DZyTFM/htRXhCfKNU6LP8rphi6hwZ2n6a7Lr2W37TQ99FA5IGqYfguokROd/AamQYq1FuuxLqzTvScxm+Pv4Sf9ZuY3tPgxXwwtGh4o5ffKcwM2zmQqhViFNJuT0bnP5QxD19LDvr0kP6A3SqQEbCmdqZSdu5mTjJAcuc8LeyvzwY4sm4kdpf16PXY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H85D5zN9V2uslUEg1ow/eINYlkfRtLfz66JHyPSVQLg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L55FquaLaNXvy2BzAqi11w1497bruRbQbb652p2ORGV2hoCSJZ1NBPBEX/XtPt8N8jntXnGKTLP4KC9ac7sYAyeWIetFCiEqAEPDZT5IQ+NNzgDMSNP8FQor/WcKoT0PA8DpIVXX0rLKwBF/KWHJ42FDTIdcfe+NdFCuVkyUsco8RodVrVL8axpt7wnRkxgc1Kdv9w2klug/S/FihI4cuD2nZWIwZQVcvKFdvWl+fLzEIa8twHpk0HYq2I0wT6jlmzbrIR+YZSdsNkmKu4A7TioDjbG26jN4GCAWPLrdXoE9EjjM+GLFCsWFkbZt59MXeiHKI95CwARyPl9WNvbi1avFVX8Y5C78qV003eRcU1O6FhhrENItaaVONTqpat3ssg85MUxEJXw8bzSX5V2lmzJYiUFa8iek", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H90FLvSW0lSMiKilvZHd5w1so0lPOf4g+K9wx6vXT3g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/5naysP7I/L6lk45W3uhWFoDTWScMnH5vbSfHIKV1jTlm2gEDD2CDZc5xsnZAqk2GgiT0+VCLoMOV8NgB6e3o6wfHfsT64DGAYugS6YR0vsBa68JFKGfjIZeTrzCFCUpgpUICI7qGZGi/+PnC7JoQzoi5MOEIQkY6fbnWL2lNvvSfgUwBxW2HK+Kk4Z8AdX57csypR1KyiFptRAXVwhwGTPn5miiKF+kzVMDShj2N1Po7k+Ad3yIWFkW0OD97NlqIcGxbHktH8ys1DgsG0eopmjPBJnwvjupbQ2AGlFU2u7l+18ibLFK8CpqDpF5g13s6EU1j3Z4h/hRcthXvGy4quIzue1dMapYwfpxPej7ClTBZ4rjP0z8n4nvKRWU5X4+1k1UKK3NlQRCAu5EHhwZ8EVYXfuAg7wU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "H93QF3BJt9W8o8ATomrGrZQgH8Um+j/R4b3xmg6ib9I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dEFTEGOL6S27l+d2EJnQZSeqwr+lJ0W4GHWZaqyqyVoot2tbsrBV4LNBJ6V1icMl0wMcqfbXCfKhHizUCxymXSMcXuKSx8atjrwt/lsUAMxsCVQEojHcct12T+hpj8E9bBFO6Ciw5SOWmDrpuW5WJBU0Fc30FMaWM8MRXy0g5dhaQwQeBnJqcoVFHKGAZCRzDsQEufTxLNCzBa6/YVnplKqNVEQuWa7qgRKbQiP5itRndEsun0nxjCtZmUAa7mmzAdsvjxbClsLdByheLrw4tuoIqRERP1RJ4wnGipKlIxPjSBa4PdT+qs/Jkua7SvUsYLTuFw9qeSMXw9lv3zIQub3iWa4yHn5uXBBEdvJtus1T9reYTvF0coC2V0H2/3RdpZFSC6pYYPNX/jeTFse1Oo43oZWPpfD+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HB6h7X4UFCcmcR3LzM3g3KT+v6ILdC8KrDpK3s+SrNQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dFdfa2xWQ9grWaxoEDLgVvtIS3PKYnUwsn2KXlJBDYuFaNV7A5BvmmiH4cwOuxhyHWFqUwdmd4cYsD7VKXs0qoVVptGTvMuuFxVTBW2d+rJ4sE1E0awIVzoBExEZnHYIME/v1oo0ULwQIngkHztVhp5kUTRT3mBlhN1/f14UKPmBCvLNe9qid2cntUYOTfPknE6xrY2O8R0b4ntrmSJKguQaVJzwN/42p/L/YnGoatLVzAuySjly19Eu4//Gk6Gdh+3byFftIfQgoTFk8q4CoNJ/uh1hwk1EUi/jbM43Gw3iD+1ErL3EeyX/cLhY8lQe7/tFBF+Kuc7Cqn6N83mkEKUJXDfZBep+UG9N96h9oIBNswspmBxMwlDpcPTUsArXVfOiz5P7MqOtk/wP6CG2XqSZ+6IyVBtl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HBlQ/+BW+7k6ZHuYTzr2c1KHQx00VcSvBSKQkkBC/UU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0PRQvPK8oVD0+32msAS3v/OWf93zxyEahLP2wQWyXogBCACSErr/IsVd6j68HsN47v6lcFDqncyKuQBiD2q3wObJjgI1+cmhROauEUjUrGgB9bgAkX8uLT62bJdoStfnB3lv5PifI7/YlwaM94/bJZbqD6N/aNJoynPSaMGsReJXFs3OaOsjL+PiJvJiRU4/T2DKHEliGLt9DaqvhXpvTBg6Id0gC80YvbuTCzXY+lpa6QM6odFfTpabMiC6+rkysGYK9r+YDH7sFGIM/lp8Be2dENlAx+3/90rB2/MKxYCHMgzJFUMrMaoqnhG0yAtp1T+OOpnPuDqFLMkztx7ISzdUXekxINiMiklmvemmm0JY0Iem6OoheElaPTh1pPRgIj4uFvbsaydzT/6I9RKJllr2cf2f78S7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HC5zKfgvneN4L4A4s2zhjtEU5qfaYqQjyBmqAjq2ysU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mgHEIBHJHL7LYHHjVaEeVw00HE/fAPzwCChFAczPU1IK/ta/ppRGrYmTUG7lNf4HKHqYeJFt/LeME0R1X8gqC4H6ECEUVwI1AbHbt/3vEdONO27r65lrVVrZmsnmb6kTJfEV3Vqn3qQWcckMYS0AIzrAcFdGObuOUn/X/6UkdoYRGX0WBYox3HxedfUM1g+9UCAVlBy7lfEME7pi/NWWSHVnlGRiii2NQfXQYSrHcjz7K2k4Jkk3HDIHXQDz0avn6KaaZCQzhOGuDfi61/PiPv+I06PSi8EyWA8V5iC90+oOOWU2D8kIJdMyN8XM68CdBQ8yIgPSHR7wbnV5HrQjAqTqVy/Il2oP9KFi2xHN/4v0G5Qvhya2MaFafXHpcjIfpx24e4BZl3L1E7RNh3CQN+KMXLWXkEk8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HCPuoFaexPUWy9eVXgI/b3ionPgr+X2pMdpC8IINcNg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+cIAyePq+fhohyWs74YkMsFYlVBdjwCmOu1xhZ3tTDlN7Du4pcavO2JRFN5jdxzg8P89bZuNTgiiyhhNan8kzvy/VyvL3OQjP7vHSZ/kP2N57S/loJAM97xRCcPoYbhoL1YMeR/8aPfEWO/BPRMeazaorXDLRsQrS4mVs+d9V4eKC0yt83sucbYd8MqKbvg1MP07jNZFiwoGbXsIBtM2Gy8tUwwOCzqKUEib5DC+p2Rd2DZXrW+1JHWWhI0TAVnPOH7J7kWVKC7levw6IunqZH5NurmVrZuX888SCut1F8F3qVJjgw5x6/dGFAsCuUmLXBNkld+Q0xPnodXJKkD/0qTtK1BA59gcDutkXhmxqjfX91O9RRGz6ZTDDgKFg0m1GZyjJ4++Afc0iVTHaiBRkWAYlDTBx/wt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HDXN2NQl8WB9UKBkY0bDirRGcGWOD6WN9PPOFhbpSNU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mZIxTOCM3REcktGeFgSMR88eaIr86VUJHUIhMWbSuKfvIpkmFfRrmaqXyQPmpkg9988/Y8x3uoVVXvDlBEiuTs7Zkz1Y3kgLH7wvh8DwTlg+PCyJOu3Xi2MstLuK35Lan4AqyhNIbUFDhnaFxRIKZTxDGDLWp6uALA1IcMYniId/HWV9THr+Xu22kjGRKQXydLYkICi0HDq2EXtoRpfqQIK3V4KRYecryySRuhtsOTDsDHurupI6XBEPrMvfVagDMg8sgSI5xMhRiJjq81oehu1oJQzWhObtPBJsa4eMJeSPeO1SHUelRcDCEMIiDWHH3mfo0cM9TInTXcbY898M+PpcVM2S3Py9i6royOOJtChl8tkkij/Z4N6+dtnqdEHLptRyAE88S3hj5pQljdMufwtzlkQ6JqE+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HE9XrGLIeIEzJv7N4EooyxAKnKEyaPqtdI3ZyXhez6Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M4z8LemeRcKXitkXh07YbiL/WGjfL9R+emeBGJq2UcTlUNKZoxASa27biPQqKZQdBuRPOFPuEGkdf8BQNr2Ewz1pimh4U7J5aG9aYZej3FJxiD4jPY6xPjMHJHFWP+2ej16b4X9SexN5ax3qZxCGxD3j/j0XyeWOzPP7CNGltLJhInNr5oobz2U00+ZkHOtioOhCKemYhGMU3U39n7aBrGHQK6wk7YrOatCXub5IVIrxBHzpOeWajJBwt/6jqH8FiAVqyN3OAHohUXj9d3n+3Q4LCdjntP/xY3huRaPYErAcxuVzITetP7xEpUyBrGEW81SkFd1wt1G1BH74n1hIG5Nk0ZrJSeSeZ+Pk8Clqv/0N16+qvruU8SEql6DBtahHd0Un0IvxQk9E0/73qllfYUG+p4jlRWwk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HEVbI0AxnFtOX6r5zMZgvRn0m/lt4QxlL7bhW0vjYR8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4hPyWo0BUKmMd7CI02DQyN00Qmlarvn92jieKqNGdq4ZnQZJzaSV1chUXyoRWuhm1FtwJ203ueqtSFuX8fFdftjtMwkzacMgyhpIIqkxyqBlWMjOwwWvncsKi60W0YcbHQ4hiJCa0UaNsxzKMaSVrfZGP8yWVp4PDy5osDpnY4hq47l8UMzZCgir1UYEmH0YZHIa9oJip3/Qtq5ZxTw2vRRWYKP9YIpwMSajrXTv8v+seuTxivN14rARxlPMOayNk/1CvObk/W74DOSs7IieqKPyQ5u4KBZZcVU1x+sZrUgkghz2FtWfeQorhmHe9KcCZvDhDd0dNkUnq5Rn73DVaty48EmIqGfVSwXFWHoPW7TM2Y9+H8avvic+16ata+sViaIe6jBsy9Ye6fgbgodPW5zPiccO58io", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HFIZ+5ELAxNeMvjaLPw2ClAeDrVR75L8XApDTkEW/q8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HlsqSej9EfH518n80+0svkF5/DOezGs2OveTpEBwSk3VWMs3rhAPEO40qOhUW4smkysp7lfHZ0Sf1C420e9+GNJeRi0mW4JH6K4zU29ImFF3zxGgyHKgq+D3m+TszB8D4xiX+jIyPXk0Ot0/IXxsucjLXsGXza9PbrLQQxQZQRwx0f04iECux099nvr7evfx0MOQayTGqONn7k7SNzefAjp7rwcdbcTwjYe49SlvaLruwWJJqRPpHlRRR791CT7jFKu7vdjSPultqogLNWe7at9dIbeGQa9TV+LmUSiItvkjKl/olFc5u2YugPvtDyOPRWnRDmFA8MfXnIjTF356s+rr6R5IRGCzfxrhBiTWswl7E9R5xT6dZkqp1ZkG4XRdO1gC2C3mYaU5547UQeGWMRVhZTcpdNUO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HFJ4jwxMSx4O0yyYyGno/yRlVTaceQRJiHOxbE34mks", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "I2+IhTmCiOBQf3x/mRszDHdMDePJEsJURes4Ft/E7gl4T/ZQm1WdAraqbxS+zVdB67uDdy8HaoSNGXT0ZvZqC5+V89Bq1HlfXw7t6rCTBNYvh2Thw6eB7RehQe1KdyUTGO21jRL3t/JtLIO3PU4A0vXz6suE6ah6OgsHiYEMvCKcgpRlrXBnuT8xxqQtpqslEOu8MCJR3XV+79lbi1i5GJCF/Sv+XcUUaDBU8DhBhbOAPlqR8iYE+AtxlfPabZLclbOrSG8Afw+ZmDI5qamdk8TjFy0srO/3KWs1dJzytlxShVyNNMP1NXGwWSuz+kJfZO6rjJF4sCaXcZdJpB6RgJrooF1DrQXY17vMlcXDyo9NZs+cgvqGqxYyZitNwo30q58PKRMb8sbd0VZ1F6xllLGxS4ZnL4De", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HFramPjLdmX1nEdkpkYo9jW7QRZrEcE6DzUgvaGxIjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RVGCHoOntfqmBG2CZpJCkPO4kN8jPxjOUFgNc/sDl/gnvP/1qImQuNxbpritNFFlqfFti1E3jMezb0po+8dpOcB2WYGvolU+V4GR6OWvkK3YS5zATS7RlbqBFYudcLEbFbJYszONzeRpj+L1fg9sLSmKiPG7DxQubcfiftS7GtU0/i5cDKpfij7Je7fifrwghWy9DGwh+D1pTyKCnBK2u//0bzT/YTXIMPyJco/FgIAcYkkRth3qB8xm5bovIxI3JPxoNSOkUNYu0GGnLF1I1u5XxVr8RtNtYVoL473UhgBuNQgFXnAZpqHvCd1h40tB6wzyFgJheN575ROBcHGiLLlyilczNo8eJgqM3D0S4aak4icbyTXp2berVsq3zC9272ua0tjTukKoXuu4VDmj74NmDrKR7g3q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HGaSUvau36/Pej/uRakn57GirkKuDCTCumvB7/LD63o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TzlIhaz6p3F7SvUsCkjvqf4SNrbcYHtmmG9+oR56yvVVAiP4QauUkzORqhX0gOwJjcTBm8iv+NrAz5i9gKqeoet4qxq9ZdYkpXE8H14Ib4mLSaTklD3CmHMWbbcEJYAQvl3fFkOF1Mj5hVfEwQ5vUWhPOvQvsNY3dIZPBcoOfntnVIiQOCBsblDoghy13KooOp+8s//AqvI8dY1e3Wv9xPyYhe4u/KbWuCKQC0fyJpQMxFquOe/y9tevD6LmSqzYEG/UwaP+8xQZ1qk3DzJLNydccMkhMSWSw9TA2C9sFoOp5SzIjVXSMaJ1+aiJmegEFz1tN48BZumtVy1AKE8yH9Q1R1TaO8ySlpSZ7UtspihLXtMuAfzSTMUbk7aMRN6JdoEAlnqs+N/EM3IaLFdwovvH7U2bh31A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HGfc0a+wH6FKMa0d36/7pwv6hBjxJn5ioXehy8UexmU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gyiECfcUiKYejXenPiQ+twmAxeCJMvIXy7uITV1IWSTED/yHm+34dciSasZgolvXAmhyJ1XWy2Geb/tLuoulTp9/PM7WIEpBodVTkCawPxmAQPSQwCWEuyM4ZPKZyrAFhNqRvey+e8zzKoBjJ6FQnLTzqBK38NmF2DAr0rp4cAvkRPTaiW80VDjoj7DOzbGbBLVnTx6JnlNGtl/7r9TRHWLAqL40RqLRm7FGWeY1FXbqf+1qhveHOTgKbrntCanOeSsKpwX+7x4HMOQkINR/2lYaBwrHIIm8+LZ/sfD00QdV5h7edWJr7IoMAsb0X3xbJAW0Lp4UrXYfYr2OyYR4LIZ/XdNhh5ZkPr73lZcRkBmQH6uNPtI4Hkx69wvpsXT23yN6rLmUl6L1CXMzGGNMTxD2lpjqRocR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HGg7s2zhteF+flMdb3kPMejlEoQornugmk3nhHx0wSw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+xUhEspXa7Ms2fB4qyIw9K8ikH44ENf4q53nyXyaE1c7rtq5NyhbPdfdiLlkwgc1WQPdltr1o8ReRNJd2wY0lD2M2ZEwzE0HhT/AEnYlh184ahgwjtUWvhGR5ehrV0xPXkduMJHPyeunPJfxpJ6uxRga/OSDqoKUKWib4RiyGbi+KVn6vXuE6mgSO2faWDPGQsTOX2scMUms6euKHJ7gLle2IiLWoLvGsnJO/T2zjutwUN66mpuuxEFNikvnPN4iNJwGsmyGX4HEa/ptC+V6eByI4adhGj8nRdtv1IhwYV77MaCw8GgFDVICX/AtYua8E23VnudKLIgg0m2iVQZ+tPLOHwlxd+zAQSN6rDBCNZt8HqoQZYdaZumfVmnahrM+BGPUTxz2IDGE1aWj0hfrZI8m/phfcIzD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HHCVJS4szsE4xALLW2oDcwlMiR7SYAm3ppgkdVpBEIg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ep21dI76TkTtyGUnEikv8CqDJhpxDyEtBnJp4UkytC6H64kS/2G6h8KkGzJ3TOQJiKsFOvv1rAL+3c65XomiexDI/o8CoeiQ+9RauKr+6CbmReOK24BBQA+YdsDxDMciXYdut6IG13MWDFi9ZosrMpI22itMUuMeBDEMozsULJejs/Jb/0+3g8BAaM4UvouYdn+mJoagkKMFKeySfBQ9EmO/pExZfGcQSTDn0PVgytupkpG69Cd7aUr1a6JitH+uZjd+n6om1tqW5N1Qed8oFgaNgSIYak3t8txyeun4paqGofOvvTuiD+pnhb/MP7ss1C0KA8uUbxbCpMS00VBgumGXESWCG5uhArII4DXpFERQGehWkcTFkqJtXcAUMJzvT0IB9WujLVz1BjGJwP8/+/x6RCefnZXQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HJPuh96JFzyfuRNk0EsnJVAJ79FhL9HltF3/9jBvsjk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a/Cp0urO9jR/mgY0VYd2tYX7WSiQBjVw37HKFTrLf9QqNh9qCW1JPbcn0U2sRIYIj3F7GP7kJ4btuiG4WzZfB/oHrzFW3y2ewJAWWE9eBLPBI3FpHQTUhLE0rI/IfCtZdVTdx7KjuX60arPjKImVMcHhl+RNYo/LqueOjXCL+T/Fyty3x9+aoDJdOsqXGp5S3t8aHKT6EKt6ZYfaMNcAlu8WfwzwDFINgq+aaA2ztKFp4ejrMoC9LKhSDAQHh273I5Buvu5yZSgtLcjsC9qOzWGCv2Wd0CzMFttDdG4wEYSZLORqGgfdCHSk3DVxjMmJoTx2BUbhXE75oAxPK/VgPBVr9M02UmiOah4stfFzbqKjlWzXYzQCKYht5ezedPI37dfyTedyLhvWmvcFPo61vc+fUAGPkQt0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HJRmtt7SLnj52rgMiFqmMxJCx/TAJdlAeTs5VCOTsmE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KPKPjdO94fh/aiqRHMCV4g+NzvtCCiVhuGGD+27mzMZMAN0xcPaKH7E+rZpg7km0Um8pxO3RG74c5GubLdPkh19Nrnrh091tPCfJLnTQ/rrfaPJ4fW2qyo1bLUUfUcKYcj4SHiB1HTAc7ave8kbrB9e+YxmUBULavEfJJYH8FhcMHuLiEx3smGh2h1CrZrRq4ZHVUQHm9wgyi/Wr8d3vIxGPM7Pc4Yw5+VHB30xIL/z1unDa4n79/C3EpDeuHUBJwtRz5gfAkEyUfsyI6NWb/GZP9neYZgwRJ6xb8DG3Ho8WvzQef0QEzH3vHfiHiuhaK6MpqOXNKoI3JV6qUxXmLxboRo/I01B6VpM2w54NutfwKjASkLVRx1i2v/JJ79jVAbUOxUaOlGEXYlqFxgzRIQGdPwaTq7ja", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HJvjFKvIHXNrMFguR88TNAGLAgpKHv76RNp63T/0BQ8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RxS4gcXMKTjINZzfLzURmR2Pmb34bBnLXQ2kGUozajDGm+hrq7yyRZI3o/ZyMHWopp8iUH/R3h9WmvnN1tNkBHnzNdCNFB4GjDHoK0YXndS8T0/O2fIHYy2ga3KddudlmywcRVlWTwhTht3IUP4Bqp66ue16JmcxhboPZNqpwl5QXszAv3y3bYhcIiEBinfLB9Tq9FzeBEHl+xs+DfgpzOncV/18BJVuCdeG+nxttA17L0AEuJfj/102/7fNkpR5vPuCznr/+ilY/+SZnnZIDhDrdFeVOrSDljPnKYWrrOpKMe0SI8FYR08ah6youKp506J6qm5ga4JQKIQTDUb3nQ5rwVkZe5NxzHLN8TBuPCdMc8Fgj+serhS4pHiW0lytOGD5SPcanwoEm+dhX3cm8tM+Dvy29im/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HKSuNEEK+y82rzVH0hdfWOZRZJxAJeQRY+p7QHHqaNI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+13QmaR9/b6tCWvKUt4OjijQQKJD5ya3U9lx0eoMKT8NCSn22t8pRLbAAyEaZyMf5POgdZVlhVcMhfLHKBEojgqh1sFGlwqP2fSCD7lzMyJaEAf9dMcC7NUl7imnFrIiFPydAKFbLAU/8WmDMXwro98YhCEiq+v3c/sHDEDNr3gXek7hmLBAbxCYZeTpzpprMPQCNB7Rcb8l3lnwHh47tz+8GtnuiHa7xAUSUxCgxitwKEKGwM/DNV9nYMCvmCWMqTRv0Vh2EHDIFuYvf2K++OqMiJNPSTAalTJf13k8Zq7vVV9QjOiO70U8qiZzXD9fbnrLfIrMZ2OlZDXSOSyTqT6nLPY895int0WyUiPiLsGmWY87ovCcQrD9ylNoESxhkhB7sLK3jetGQREU0LNjwNsmMkCtjBFN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HLfnAdjMl3LStecAAjIdfCFRJuy2oBjec42LzlE6S8w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aFd74ORFCEzwtkNIWfs4+oTHJy0hLN/S2lW+ebCBD4JYQTFcR8aQmBdzOZRiK3inXn/9X6KBcDjZJXspiDYjBfLTINLlk6HBZDr2RyENcEaItRLnt83Rz19CgRJF16Plp4o0y2CrU0UWdW6DKSnxOt1x3X7MVxeJMJ1CDgEoIECrpbBd34fqO+3h4uB7aBAy2BKkoH2Jj/bssEdPtY9s7m3ygooXUxo8inhhvC9UEcgv5kjkl9ZlI7nhBEHkEWpLm3dHAZDF9oZs4rvBIjMv0gbWDaTxm4JmW2dAeGvjGbmRsDinmV8GnUK/FrrRE0QPMhm2hIk0JyicXwVpvZLHqzvsDb/59+Vj97ZodhmMGb0bC/96u6XfY7eLtREvdHx7N0TOKjJpTMkLKfU2rV2nj2e18IS5Bj5G", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HMO0y1zZI6hI9fcx3u1TnZ+vcYj7Cz95fivzNo0KRhc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oZTGvGftclC4SnpH1/io1BFVF2s0Njzh72oyrzxgxommdiSHgv13O+6qijYnnPy77j+jsrgUv1EsJJ3p8bwk2T2tJ3Kr/cTeJsoTxKWv9Tt59GQcNZZgJTrZFj1D6/C2LJp1xRcmrORg5M9fCgLkC6cgWaDGrw+hmChN5LD9gaS4epcukjfPhxCWajT5yXdXjzJORGy2dgCapobhftW62Gv1gB9QsF4YEuBCVrM3S8dKLJ5rOkFt/wcohhfvrtSTHCpGqycMta+y5dFxjeP/UakJFyDN1/IVUDpllv4Cl1P5HuojqUhaXqeSteP3XeKDCy8emR2520s/fks5LcXENTVV4J0UxpJ132ZQDKvRb3VP5s+7DkrtfAj7LX61JrqZ/hCkxfZUUAFgQVwDy7mVfErTNvPbTJwd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HMaDvG6OX4rWMGdjoGyXbefo9IJwx7BqurbZOpKw7rI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oHQv/pyV98AVnFQtUtzBOjiodkJoAygLdXVgpLUEhn3fMQ4AkB/8E6cWVbVQp+3kUGu6raJTC3wJg0peY6sC7YJ6o199bkvwLMcoFc7C4g6jn1E9mYLphD6uI3f4uS/6I554mWr3rBR9NeffvE+V6AXCPqPHZ62kNfzucIC6vZhFJVi2iLMaqtGsxf773r5qSbuY2uESqeSqcfuBcGgl9K/82xGnhrQx1D3MOIBxQscqOUi8WRXuuIfVTx3adwf1gYcDkOvDXU6nvhzkKlxaZZZgehhyQ6UJHG8TbP8RSzLR4zMp5FWChz/vwm7UuM/pzDJsU8Nn4zFqHvrvQ+xnoXp0yQzHKWLzOTyGClJTuaI7xLUe2rN+OvVBmF65Qnn0jjWFt0NEz7VZPg6dTt+6rL1j87JANGBk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HNMJYrM9DpnmEs3aZGbdVzWX4cY/lOWWMvAtVOjEQS8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KwPb36Y9QJI/dopbjIkM3CnHotmW5qarhf1EmVBRFn579JknE0QaoVazkwdpxDWkaA/CRPLKBUXlA84A1qVCkzJOeOt47YIGYHUCf9O0L1zU4KFdyq+a+AIN3YwcPCG1837A8KH29QUSda+rwoEJNd1ib3YscagBQUKZK2ccPs5781kK0v8Rzv9mtzYFivEy8cm1CEn/JGj9trPJLiG6CufeA/IkSflHEj9dIvlYo2wWRcBBHhnIrV+HfCLeGDNwfMjUng57YzJsln7N94jwKpYLQhlCGTjrcx42AFTR68kt2zlMficGhRNeLCCxNVxsZx/y+u0Xtef6/VVlxS9Z2ppAHDQUL+JwuDpPh79uNCXS5exu+EF5UNSQZpkcub2w7VKu/XnyP+xGF24Z8b8JLFMYWgJBTbEU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HNcDGmrDcFRaE98R6GwODY0wK1uEh4HKGI5xM0cfSlc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZvT32i+q5pxwoHuQEL7WWCm/HtHhPdFgW1pvWiXXgS4CpDn6kwPifs7zv1/LZh2x3BqDG18i0QYubqsMGzKHHQ0jEV2mUrGXC9aBG+vRfqiY2EwlPrgZOsQ7YX2lWnoFlBc3uCLqZsLghdLqovBFynccBUTyp4jPyuA9J7N8W7dZfRGScl34BCusObiizIv50YEzXGtkEUNrRIt/1wiFE2yYp/T9rWKSYXVW/WTV8NVDoNgBrNsu+1IMBGOuVMp9zYSWYhVipBd9WXFVXWsRro+QcWzWjD5bBOH8PuY14PWUjUCj88WurAXuye1o0cwI5TVMaMqcDzD3f9a5UmJ8AX/GvgLqYJF135pQn1iHCD8+FBn6L/HH+uNIAYer/rPs8Z4O+ybIQe5S/SsyKQdgEqNJQrMLGUo5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HOl6NnhneC/OrdqO7J2FbMYUgdhfgymhDJvZPKErKZc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lOivVf1HMpti48Y6NlarGDht3HHeiPUxNYvq/EYopATagnZAnCBWZDgtMP99gRHzxlvaqZGJZtIt7p2wFchVjpwyhW0r0Ve/tg33fngkvgbo0fjw8crgAkwLFNSnnk3niZUVbVGZmRdOZxMKd/nTO5yOjKbnJ4RJFcv6G8POJasrSn4gnUjkwo9SMDiKK+R+ys3X3pnVbQwQBLKJrw4/Ho/kIAByxGDTTxVd8h5mTFplt/8eFytLDiI4QdO5vMnxqnSUhZ3AWsjj9QHxMXKj6sGdAUF8N1ul3hKbFxzQ8ypHO+uLJrEvllYaEBKmhY2PZCWr6mvazKZMh9Py5UdNFzidTvh7tQ7gYOvLnfqHknZBhKteBHD7dADIIajByCa/diqBCa0JM42sZT7vscDrMpOuSWgjFw0m", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HRzhBjziT3b2Lg777EADd2u62Vp8CSiuHbtYDSNXIqc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6k9WiT/cyyHFJQvQNJuDfawuGeR8wAutw2iCt1ZAR8DS9HS0Hp2N81ei6ROni6qYNr0OaeT0rQ+qcwy3kKOVezux2xj6447JcUe9kDV0/OpAcDlg9WOzgtMELbZarIr1rq8xhAd7Blo5Me2Yy+5D8mGROL0yQv6oFPBubqCx1U3ruQSKPX7T+K2CmkZYIy4rG3OcYcoy45Gi8KGu7iHkAHjb/30566qzB5oLJSuZoJJbhGoaaob6FbqSZym+gPdI0lhyHtyLG/5IPgBiIclSYJ8tFzVreUE33CLYKZvDzZ37tkO0qIIRmnkxjzGHTwJ9iiVQwZkFxbgOWXeOip0vlsp1BuMQr4wVH3YFoTu0CiRPFh0zmZXuKHJA6YIuiKxPL7DmFy4PZE6agtYZ8bC+gXSLo9JNmd4R", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HSZcy3GhBZtNCii3gakMmIzyUa/qc1pWPQnqXvIOd7k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3izPExOV3Zd3icJNQhsSXdqWD4/GLV8tHLsT4HuBtmcjXXS24Q9mmzWB3Bv0iGw2dESf9MNUiwe8PpebA4mgks03lKcwVgCvMwq4fZ/ZUgPWzAZH6YSsl5jj7Swnc7crgCekzl2T1a8kf6dAovZMTTpobqtQNdILg/4hbz3mUijCAwI5KKKYLnPDXaEzZoK3aNKZFm3Cs5Oo4e7BvwLebBsycLrJTF9XarnTIWri4xLf4OQ/gEgaNGi7U8mP0RGq9Iis7+Rto/R0UZUNKjGnPA2lU2Mn2grpLhtWzgZuMu4lX7lxizoh/XazEm69cGS9omOJSrM8mkgG4AvYllo2Cw2F7OqYpZ2bOGcHF6gV+1Mr8E5/z4+VmhrRczipKduFAPB4LuuvjRXdSCNQTNPrTrD64jX19o2R", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HT0Jl6fRWEDQoJ8ssybmFDprQfAplogzUKhyY1Bywvs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xBDYEHCu67Ru4c8x/XTKkvH1Ofh5p2ZZggY/KKGc1YZVWsdZO1g+gSq4g5jEBhwOJHwqpS+fmuzLQWMXouTs4zAaKyobAM8CGvRZR7i/fcNMylyX15lKDMRQFDqVnyVO0t0tSH0T905aJkfAb411N8waGhP/oJFLlvBX6RHEAQ8ZIagRUAEEHW8gvOYtFdKH+G7NyjLwVs9HfWht6UpROZyR9oDanklWxuZKnMX1ecmnBBcs+LLa/1I44uvhhCUHhg/pBJ6Bb4Oi8+BmjNPtLyo28Y8UI99NG6Nl+nGAzcIWF1UGGhKs8oEujqdFOrjDQ/WAvY1xfUGrjL0FWDmNUB4pEfxKHWu9cPqmVGJ+TLblmKz9k5wQk/S4XTR3JBYNdew1JHfWVyHkz7uQPyVrIcz+wcpCnd5l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HUzLtkCMzWO5GA8hemJDJMwuTnw1kcu0G4sEFEhqR1Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jRIiK4QGVW7T1Ffw7yljCUxY14k/XkDFxLj+bW2BdISUlJoy70l3XhpggvAfj2gAq2kN8ZnvaPQqy7CDc/Bi5CADJ1zr4Vw/ZBcEam69eJumDjb9tTVdYsk/jv7ACmacGTuvAuUphwUZmFNXyyDgQEMV08KI6t/F6lik2r0iufpVn+Nc9M3/ZU43s8pRK5FdP0MXebGrZwCylfQcPLXX5XnQIY6D0VXRezJm+w9ECtFqQQx5lNs/qvOu6Ct43+kUh7OEsScdqqQ+locyPhcMcG0HWJaky3o/ImDtog9UIUtqPeWd1WO3deXVB1ofZWOAVob1HauaTxYlSyQah0QprtI6nlYHcB1Iy0HmEQhwXFQEn7ZkQyy3nxROWqxRQZ5YqMetLafPuhd+n6t0nQDsOJNo6+xzh5VO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HVeSNxoiv6MUx3be6c+V2YfgPkcZ7otPnDCRGIM+rUg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j96f7JZDVF63uf4mQz3oauqKMmdi6sx5ZqrJEjzd/+XSrt+jcA2dsKvN3gKNytOUNo7tkwtYAGTwO37yInKNTY/37xQcTCAIoJJ21DqgzfDq7zfX4wiNaY22Tn4LwLx1XuZTnAVNXB1Nzf4Cwyt3iK2w8luJt0jzhPbRlej5H9tqxkAcjMgKbIsG1Oku+jfsbDifXSO4U+dTamXjTJ8guqcOOh6w12gvHuZwhYd/qurQN8yOXI/MSOvhHzqKIKcg7kdV2wvtSa5akn8JJuGhbLRKKoDlYJoZq+SVlT7M7B0OnR4xCcJFzNqQcqjxuaFJgY3fHtAjU89stMP7INMe+RMgsYAxI2/4tOFVa8Jhvk16lCFqHbeDeRkJysdRiLp28wM1KaznDNxfh10cT/S5nmk3JLWuQyve", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HVhkRZoOmZjJwSUvL8irT7v30VWOZ0IYD4KayFC9y74", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2lOosWurC6vYP2pSw0ZHBBctag4jsH6b8NPHq8lwmd6TSDW9fskRYXvZ/5ahF/vFJzbzN9zVQt0tQOD44IjvJt9c9qVVI0tIW4O5knTxDNPMoyl5Yu3pKjn3lI8YUVQ+A8WBWp9iW0UAK0ZQpxeEa1Hsfr0kG6O8PZ4+xgwwSlDxPM2mFQuz1gEx2yGMfuZQPqeQ4CCkB6F1NFsY9wj9bIgRqy0FXwYW4Hwa/Gxsh0QMyCqDwQ71AEIN37iHMox8fCEKuimU24ZaUI8eShm+oRfDPUgA3AvI0pqJOwWIcnnJuix0DwtzMM/Yti49HCL0sLcUR0Y0sYOk8e0PPKtrqwl1Bu7NJywogS+gDRKSmt9WECqgxKvBMTolyHJLrZzKICO+6/BslAltj9OjU36MYDAZmQzq8vF3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HW5ukohq9dmWUovv0EGxj1QvRuiDXj2qbEWfstS33i0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3vp6E1S31yo4e0iXekuYnSUDgO/wWtUO0W8iKE22Mvaf18QmJzR47hovrlV9dmYUtigSTlYCTI2hjNn3cAXtfgvTnlURfkb7F60LYhj5A7MPGuWBnjPSuEIiyts0/2giWgHfUmOS7u/PHLVl69yJh9jXpsa4d8RLtFiIPHaZOSx4AaP/1i7dyBX+9UgwEPSIRdB+S4fgMv4kRXchEp+kcYwoaRCnUiE/gpm9ZfCZFJuv5kAbbMsUwOY1RCC5/nXXszWKBypknQcVLH2/VBs0P7itqBCuI2vFC+nLqod1cdEQ+nCnswDO0HORiasvbk3n31HfXaPjDItVEEa7Kzc/1Ood69eNPUA6cz7i7WhlIBG9oVB+Zlxpp+gNdQJXKH6tGnWfDIBcTqJPRJ54JGfmWTe39tdhYGvd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HWI6BzioWcYjVqXChvxQoRmENZOxwORT4eV9Y0EVddg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RWzqVhvY7bKgqMsJzznyW1RJREsZCYr7KQZgq7iK3tFcBUHcVzdvng5Nl0hyldpD2loTVmw5+/YpIenHeiNh+bMftD+izDQrllNNH3stO5MbvIGFzcCxGrjfLpIDh8fZ1eD+gPoo5+X9pEQSKRY3bsIGAFVCOwD/KrEVQcySpDmhxAmo6JZ3UFNydkStaS/Keg2eZuBGPCAHOoKKvDvRu5cQmYAyQprFiNScWZ3twwl/MF3ScNmITwBI1Tm+AcScHpKeKxq8Kt+P+b7vFiSAV4sMKqXKqEEvkw6J8BOfnTCvre0BqpoBdr+FKBUOzOeQUqlFm1YRyeyLEXx5zkN74Xlo7l64O1rUMWRWmlrVvLnYPGtj912SSupS8KwdrE5DfrQC6rDeBtpTV+8kVTh4TtK4GPVOlu7T", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HWmOAgfmJ6rFslRRSFoeulZyvOpnC7dmAVZ4iWOMoDM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xp+Mjf57Dvz1m2+LINqxt8jrcH5pW9XkcATmHKfTwtl1ZTKTdqmkcFjRjNx7XV+SWdRFuB2Od7TVHpykKPyxsvQF6r+FDcJWe0/aY5tQieIcGhvFadG1wDM3qAqaES0BgtnK/W4VCXX43LWYlABN5I57z1+73fvTCglFGLm5kDVcBON2sK+LVDvEG21yFycMoz8xPWRrXKewUYuUMLqgaqwUa3/puEbGJXFBorHqw3jloBZOF/DvRO+AdJ8R6ga+g8KXWiLdZocQsBS8W91klc89bLuopl1FOLOgV+zYiSVAr/1qDwmVrtpDhMLmpUv3HsJPBakN5DG75mHfcOLKyPSkx+mk36V/lAUgyWbhjQBOXoDPrD5adLjai4P6QHMMIUjrfduqck1a07CKNeub8J6OA5X63yrQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HXBvMPoYtrwB8i9DQ3uL3vFB30Widym+/J0UzrnfGFU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bYNm+SDMvGd5d4jHR5puxNuvU6OuH2vcEUTGR1uZyIDYietukpzgxDgAy4zP2lAH307h7BG6NSc8GXAEVwCo1TpRPZOZcBhsREqIVatAiDgjlBCyYiaBm8Zes93D3h+Gb74mEhUcUTW+bBdnKwbK/VrVLzUHcHJKx8W7e08kmZWQN5nyN5CMVon08iHlVF048p+t9Gqzq+e1KAYVLh3sJmYzajpumrk5+FcH30iPLKpOLJANqeuL8U1THd5FQPWJlEm5U1n6KP1uCndyp9SUE3T9C/XHvuOlClfyblu2YH5N792fKVKoLCU5MT0V7+Ep7SWZi2+r9Z6yGjQp+09BvCqL/YMTxef4B9CguJFU4JgwoVgBeZnroXs7VA59v3fmdyDvWQKLLtyUJ0rI2bi3BG/xTuq1q0Ch", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HYUIQwHCAQXsPWaWEvnAHxYYeHWIrTZqNOnaWQD/7YA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oqAzj4cS7IgrJuEf184gmMTtrp9HQwB23kqrEP51a3kCSZTcPj6daqZagkZ0LU9e6k1UqgWar/unQ8DlLWE+LzD+gZXOpb8B7AdOLLAnvDeNaTwuJdpbznqKfRF0ESFUNM+hl/Fq8xVtv5kLuTZ+FIYwLrt0+5yDFJcbHADnFRVT3nFoXL9DlpVdyqy4sN/2V2epwnn+c5ckl1c5Ifx4J8Ay5t1J8rh4BbHKpGCBOR6yOcgLaIWSKxYtU9b4qHG0sMvcQSO583tUIJ60q1GE+rILxDd3xZxRrf1VPUp6ZONgiWA4sKm+T9WAxA8YkGLPxY6Krn+POtzPyQz7fDQ0iKPY3XTZ71akGMhEMB5FzM30U0XcqyLsPiKOyNjZ6+EHBQGKI43V010wgLx+HGX3Z6qL9fOOonVh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HZdq8UsdC9kRKSoPveFeVUrDZaGGdtFFuSeYtwo+qnc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "266pYE+0SvgJWL065npUUmwzheZBph6TVHEHQd7gIa2RwPIU4BQRD5WduH0Ov+815NE8Kv9O4IKqpL65IC+bYAVtX5mbGPbMvLMurf7GqqsJG1EXIBsZjw52UBrrls72RkllEZCazXNoKCFRpdH3Q0SSowKUN4kuPQ2YILWNUK6dwwAEaReLEX/dpAAfAxhjtsJRw8hkztB/E5Sj2zd3D3QrAtZ/WgKFTMTlsK4BHLqUq+3PTmPRL8YOKskTb0m6YuW7nXtsistgyYQpHQ/Orth7S3wwf4ibFrb/sn/ODb9ywXQxNKSiH3+e7cczzsFqG8hd2sntJcRhkDO0jaOa11hsTH5ffnXCZ5WXfs3/WoCMTzFfD2wyPdd5WTuu2jxCYkgvUYLW6gX19wLnoaN+yntKP5H+qkHS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ha+q45kVPJGZSLyfm8mBhGEb32CzFOqsOXxOvKVkJTk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XFB0USS2kPRFjqOkfSjBdnAwxe0XZCd+inN6y4SD3wDRPB5ZF+m2Tgm698cb+DKhKRupwbiNt5+1dHHGe1DOJp+LslHhjWgfby47iuil6N3YghHduJNZBuYacMEx+IS/VMZi1OysGyx3KkE6YulJdESky2fExLVhzvBwc9ZaTJgE0RA2OesYSuv9ANCNdLNB9sk9AupdNV62K1IFwSJQKDUnLZk3cT+Typidnk6YBOcqgJ2ud58nfHb+N+TpfX4WBKaFEW1M/gIkEGxoaVbZIg/5MOdIv2dzxDmKfonvCZScTo1ktmJYjViX/h8ngQwWmxNgVQTTL9iarZeXmkxfFBOupHfqOW6hX0tUbqndaQAjS73eny2icL/z6r7s8tqvXRQeofD/LGIlZKyesTqlDQtmwO/g1zgM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ha6+1EQ4/yOKkTHMVqRd2PNUMDVMIBF9RduOJoBxyqE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+/1HUAzfdqHG9fjmWC32kCDhAWdH2vA6XO5DNuXRb2a6HkBsBbuNkTQl+ZUPhiXy6chTeRA6pzJl37h3DMURqXPKJY+gnn30YANs4XIOSsfJGgCJyRj0URmXeCCCi5+GAGw7zwtzpyIRMHzAbKN1cRT3u5I25IaYI2BM7JzR6f223/2VnXuNCCJLCLEUTQHT5vHzC/Au3cxYMSbDqB6fufAUelWfMTj0CyBwqLQeTVJQM1s5Pps7Kv5MBsjBKj2AUwQmHSTi2dJZ1SvRE6xgYiNNPxCcAKFI7L4Wz0x5sXy1X5DaHT0pUeDcbwOUDWCpk7dsiWFJW+p6RE2U3s0XSCJ9qDdl5dYf9ZJ8GGoVJn9K2wcRTvWCdRrQ7xO0OPP0N4ok/QZ7YefJxX8pXlg+10aWnnWsD4hL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Hd+sJpupMU5A5IxILtmUydte+FClnLRx4RmRXygdqCM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/ZrCGEMN0Nmi1LQ1R/dO+NsUXQw3bccUXcE3+jFX6Ci7xwPG26swqZTHCdEOKapX8tbHIVr5mIyQXc7qQjshQFODVa13IWz+w+A5xDtUODaMLAPsgU6Wxfe6FjRkxWC341DN7oU7wi057OWa9coFIrcBIfR+HSes0HaEEntTPSnhHwfWPLRJC1BpLUolzuua60qZcFPqjyHUKrfNs9Qsa8icAGTJRH/LktTRcVX/eqqqpW5va0ZGvn5jkJuNrTZum5sT63MxyBwkvXKfOyP3s0kpUak4Cx7IyWwN6T02z4vgKf/BgG7gYoRPRA4Xs2H8B/UGENsHeelg6OR4iT1dPR2t/Ur/1O5YFn+e1YhMe1Ze3OitbX2T/IuOwyRRuoNQZ69nYhjWav6znDyDsKLtECYg0fdICpBg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HdDvgf6z+gzbVVefckhF9pa9tg0RqWTq/dAlsLIuifQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4I/1wg1olmlShraILSUKstg4DgA/T+2A9CjlgnumkZl65lrpz3zEainAtfaxDlXIBEj6xccEAwhNTyaDeNe3/Y9UOpRnNIXt9uu6K/mJ+LbmYAbWCLA4Xbr2X5V8h5XVUuWB3V4Vx9ZV7CQqFFrekfZuKnt1RSXplWHS8w43n8lsfsVINbCLBBJW6oKasPoOadDjk+M8kb1uZBIeWbRbBxArjQ8jyLC5Ues/YfXkyKCbIG8RWe4ChB+jDflhAn87myhT9Ft3k4rR/D0foq6hrjOyIeWG21Z/0wgwRSIfyQXCZLDttLRTC3PCj+eU3949ETTp4lEG2a5bT4oYgoe/IrqcFkJw57BUYdrPzLUQTkGG+kFLZbDBzuMEMi7M8TvzqYGYvMe0n7vp8AsuqUx5LUVr3rsDGrd1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HfvZBw3SmOsCxS7vcOogtR8Ve0O44N89gbIT/luUP1w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "80vpzph6//86rIfSfpv2PT3Xr+VpXCIvJn9rbVv/77PgEmap4LbrPVPZ52tW1r4Beyvg+c2kzf6Ig3D6Nq4gpszorKFGJENSNTTYIo7bqXOChK15ulGBQ+hIsmLmLPGux/w9/xF9WRmGnfk4096tutGY+tlzmGdDGV4Tr1d7lXM4h9AvNJqLAJLE5DCw3VVEbYPnqnqTSAaAHI33LcUtk4rmJwHrFdNC6PmqmMryONbeZZHEQt4lPUrFJjmC15e3G0fRCYveSwFlc6uYfppj6/KX25umUM3M6hk2K6P9h2nDGRR8IwHDXmN88C4VpKPIL58DFuztZjLrPZURcBasRt7c5dsYApDhbMZpbiHbBATIPO3wGSpcQBnB55xpadh4u+jPKsGPD4moJhWRHiAPYKxUcH5BHGUa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Hh3n+89TtYj+mId8KtC25lVSEN4qQAbz9Euopi3DmfE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JUX511d2aRgFGyqrahjx/Q4U/h38/8XlhOAk2ydQ40iayDnooBewJL0J1/EHnao6K0eEKtnih+5IfEgtQxAOy3yj1cNMWPq/fA9sdbuhg9Nm3cVV/b6UB78BUIYUF4zOMunfJqM9M4tmhfhWKh/uOE3/aLHwWweUsTiRnREXXZUFlijG6dSsaw3liJJfUPr+Otn2UddY8bT56uhDjwwup0n5iDMDOPeHHnmziBANloKyPa3KSjRhNCZ5vVEOF9Ys0mTlC59WWQTHw1O+CAqFcUxAcZqsq59jpD76dTF1pUnpCBhjSjrEqnMef8RG10bA77BtZB6ciI2g+4O7XNMCQ5e6VqWiiUrq1m/FWDF68kwUAlqEvw4do4cKfAwNvvuQc6YInBQ81iaGU155vmXujXds1n6tsI4L", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HiFQdixfhBiSj+zZZ6XeGD8+AcurlGEorkCmj0w1nw4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L/KpuIrl+La4TrOCKmEx9t56/JOOCpTjCtf7drhVrUWLZAbqBPYDvx2m1uzSfVRLzWF/EuBBYaEwhmZwDX9cKqWlv2mSLQAXKgK8kwNLIKcuMvci0QFzs3FwLKM9My3vKCzv7dZCMuuxRhY0lz/RKmSzIXVVmCj/D5Ii17KD7Qr3zhynAoAKSmdVjkK3BWhyZh2sQOCJ2ioJMUBu7OH8i9yxiCx6UVIBG0dM/eHA0Hm4JKat2axN26fturkvaopvEWhY/KosqjDxfcyEvdi0RPRWRKFpiVPc5Fo5r1fSxSAutIao2tXsNVWphf9Pnj7NAw3AG+XkDvgyMWuXqyVZ87zEJ/G5aV+po1fvVUgkyQJY4Xyo159I95iEtPCF7BCVInVQnmnKU57Cv6ArbLgAAY4YQZJCRgZN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Hj3PV+bn79gKkslvWAgKS/xIJlNJISRVPxmwCruXnXU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CQ9bDUMgAGe8VR2FOLhcPWs9cozEMF/7KhDHSFm0fWsQ6x5aEqCd4+vd8nBTTrYNX+F243ZCK3a1mhNQCr3C8PDoV0vAhMjXR3lrnYMTfJ7Z8LAvq6i5JzXfW5RhR302AQ/mzwt+rVp5LH9NFCWkp4t2t9M7YLU7Ad+Xc634yzvwKWQYS0mM6AvJ5uPXCWQi35MrdmMzV0DXgaEuitOr4sKE5PzESlRt1Xx8pWZeilumM6vuCDf6KPXyQlbjG+nUx0w/lQMqCaoYNLiQfLHIOWdqc3yarg72pF4zkwvpC+w++Ha7Ogjd5jORrSThvSrglQVN4s86RTEZ3ntTxJhmdTdfjK2Fw54aKDzI9vTckAEYNknwfzpQPmOp79AAy/iqlxv23ZTCvg6/wi2jH1drtAZ46Zo5TIt7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HjYrPpsgVFSvc9VOop70U1yYBm8AG3pH0auLeNlfgdw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q6CEhloRFkCEvdp1DwGabZpUi9znAPPPPc1XCoM+kRP1Km+wShvY+Wm2V6Efce6VuNiZ/EvDBBncR91/bq8dHzvIpEAJn2Pokp0YvUTV5kP2CaYSmu5Mz8anpd+v4YoQvoV/DLTdWP4J5l9N2g49aFCQZRWyJVL7mf1Zb6rXaiUQbjYKEKzylWoDSJD6ZbTlXO0/X5hp/OvwGv4pxYoS2dgtwFm+aqmJpsA6ioqB96U10AO40DOlbrkEfcfMXwuZscTs1sTUFoi8m4Xz069GY6LEQVT98IcrVnFspxjFoRQjDUASUhGAC82WioV7dY7JdZLsHQOrT8Sc7pdBciZqOkwAZ3XBAH4mHhTcTnTwWXj9XqLJ0SpI9y8sxU6/RuKkJcvyVSUCJmjeSgOAiGpETduAjXBaLAPc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HjoynD0CajX7seZr2VGG/TgIDBgecw1BnG7I7UpOxyE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "evL3gy5wBqIPqmSdALtKi73HIbGeMSvpo81IBgL9YpAvOZ0bk7VhQsrF7OWTXdzXl+GqpwSWjMuFLZXRktGvmgl/NGWZqViZEo369k1VI+HPObXI9OHgD6uQCbOsJYV3kLyE6xFzfhul2xYOLJJEGyEhzNxHOakxGkArhsHzuXydPmtUHwh+mKKVsyPfrggyY+hrBpgoROdeUIc4voy2O+yduGsEacyN20COzVsYIujpAgQdrkzFjpUpfbpkDwzMURxwMqRxSPSLDxLR9nClDL/X/a1BdnEhSbkg03QiPjpG6L4WYApOLeurxXm5uJvRH3ZrR3DIV3j1yPSSOEb2ByxOrdCKdXKf5t03HnXwAwKkNh8TmhQbqpOoB7xSTcacVLnKlqvvA2kwwo5m4Ai96kI8fzrQpnIM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HkWfOQayd3J+ag6qt7C/qMhFOIsJxFmZ4D4L0iyELg8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lzKn28oCtso1DM16ZygOrQaef21YHN4vTADn47BGxH+FX66tPnxOFEHuwFkfwQYvt9T171yXLYf5UeKYPNiB4xQegbfLBgEtdBB7lgC///CABVf1ZgYxkMkXgaeynAmw3jyfsYJC9Vn68Xg5tfb9mk62Z/Z2qN5LxmkbBz1s141NEV1yokA/q4sknNZzBwlWi6+wHmXcEjYktNkaDdHCjceOSVRNRjs90gyjvaMNvafenCf4OwKo6AHsrivIlLFUMRH1trL4qmfA7cQt5BYj42iOvE7Ny0e/FRoBJ7pJckMsKqdlFLMhZFk+GC4auEZoo4ETklkImovz2ohsyIYHmCrAdI+QVTQhEbwv68PH7lu8fg9GPQCRXJc1XtzBcBa8tklJMr7EMdJMnrP2iUpSUrNKLZ7uQbF9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HkvCX5qk+dmyLtfqv5K/vCPi+ZjYfmWh57YpATvuKIk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YHDIDs8G9RGcCD70gybs+mssr45nqRoLGmKkxG5A4rPFa3I8zwo/7LN6zwXbp20HIiUXiZzg06VIvb9lqkxwOa+NXGyzTnHrrXr1pra09f+fahmiVH+UWUvXqX5Q6MabqIjEpoLum9j1Nh9SDKf9d4U6EZ4W4XxBOyeZOS2AH88xGlSdKykJHFZDcrDt7ZD51NzW+H9lV0iYcKq9S8IzSQ2/OFv+MnWj3sK4p8eMc4+eSXvoViVHnuOGIos+qI4T4zIviuC6SEJ6Ym5BI3pJH2njLmEjy+klkAIrKQqKNC8lubcDruwSYlQ0hW7URz5X7+lCVl8WPwYLMpJVMuJU4hJODg5EyenFTyflVAEAmTVyN1IOuYVSJdhc9ZzVX0vCsTici1Z3tOc9R5UoSTBCfNQYM0RI8Xjk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Hm/Env1Z5tMDfoQIeXijxQCMG1ZZx6tLaK4gyaZmQt4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UZraFbeoLMOmNpVnguf0TSevCPKH/R9hfcL5iWEKPlWE/exbRxRlN+24nZaid1VMlAino8GZmvb+cpdXmgtt56VuLJz3SGsT/WP9Rs044VUpXcwlMJlHhdBmy5XxZ3RWYQsZl2/yoGl2vji+eeoNGacDmTXtn/TiWlXNcYWd9e59TMajeExUXRF+mvbpjjsP8wo/2LkzQUpUMHVcd0mMIx080vm8wJD4drJHQMpMAY9vajXeC88hN4uES+5a0DAJKK9p3MS400A5U8LRuweTby1jbb1dVlvqbbKUEHo0+5keivW4bx54qgDSVPCao9UCub5Bmd3Wzo5Cq2NcLiGJpy3dr11i3LtBk4syO+gVYZ47eUfjWa9u8heXhFYpPlcIChi+wXQ3tcF71eOZ1YlabaHDrGAbG0/i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Hm7Tec5/i2leU+j8qbO+aPpiir/g39Im5u4UOHwq6ic", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aTTSADMVaUfDe99SywlBNbXZQxJRaFpL8WHFsvEB/5c5UhpyVMDn3rLbq9ifHEVMBJuBXWR4kqtuzHknclnFB9A1ZoHGuRp23Hnn5rPTNba0gNBrIVptZap3Gw9l5d2dZRXj+5obQPRExDgWLBqrMJkuiKiRsNB3URiVJEXOqdzz9W2EwapHXUwBA8nsMMc8b4aiK6mWmycRZelKP8KT2nVwUV4bLnfw5aM1u3GEnTZjJQxC7OZAD7cyAjiHRD3XjKORoqW2SIKd03dp/zS+MlER1g+8uMgH1/eOe68Do3MCQ88Phkq1nBQ5N8G21n958u01V/udbGXyV6lZReNJSIdDzDPJvCaoKFHTSBm1VbewXUHGw7EYBtkF4Y8oh8fyPndrKcEGYa9i85AMmmZpTYZUvQaK1bz9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HnviO0a/i/RKpfHgwRd0kgrYFzZrMCLOwGS4aJP17fA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6CGGlsMMSJgalSmldnUL/wJdIPkVCTKlA3lzxFholp/ixXpvm9yqDSDcfBXT9XFO9FtfvYiL7XieBd5uedZRsGq7gh1PavAtIlULmN66SSFVFZk7JxokNLkKQg01Sy+LsHCfXrzQIi6huEG6qBcC7mt2fO5VT8+8S7vzcJAEoAY6maAFq6X7WQwRUyzh4MI29hq09bjDrbB0kuUxPiEDcVpeJKEo6NVEFto+c+WzzBBx9F8Rd4yhoB6kK1Qz7Sn8Qk17cP+O4Mq86TzppzIVk6hdnjEpMPHtnwjmttk39Q8tjIWk62OlhvaJ4q0LBT0gsceyMyz37KwHwZliVfZx0SbJUmBtF/NjjTsUbCLEl20siF0QXwmVIto7HiEdsjjkahn4QMwatkFtUpYVUkoPGUk0FmpTfWdA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HqHfOSs7zMBHoZav4SdAAREgp62QDkLJvBUYLN1Ofnk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F1SyaDQZQTbW0YUgCcuCAGRegSnChh80LZ0L40cFIr8SoHeDfdwDIj+w7WH8dsFoxIFvlroaKWnf6R3LDd81P73Cmkoq6skhSRXy1dEnjBAh1Xb0iYdV0D3wZrBE4bN0rdYIB7ZZaMXZSHczYb2xL/vx/lgDUG+Jr9zMuT70poDF+PDZjgTVfNMaJ3Mo40BpQSYA72jA1JCYTnjBXeFJq0CikemrtdpFavRJOZhAigqyGK/GaSxyhzgPqnrR3VrIjB6U9lLtB6YuPmg6uZHI3ppH+1AmxSj9W+t2siArfTEga/zneS5XD3K35//9ZQiG5XFRyb1iYxYVh9v2M69ksHoeTjww9oQ9CWFnBYIMz/Fn+5+ZCFu2xSgJW1BPsA7AXcxdOaPr3iYqmAUzEZYa6tN/02kPIxYN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HrHbw/9p8b56Jt5i3sZLhme0+0um2qJycy5dGp5Dqlg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ofEKgJVsfx620avPNHwKgeoCobTD2WhYdyqocgmwY7iKsAg7phsml5odRPeOffIn6EaLwCCFwVv5uYFc+f+cxcO5mBf1GFA8oi0qRwl+8LMu4RdLU74gyfCyMD/p/Y1kNaHWfvBksutETZ71yC+LBh/meiYV/Vyo50IFDmC99W+HWzS5NzmqTjTuAKat7TIvvLlGS8s919n9HjtJwbhAxeBj2y/smPZ51J/bvsxlMg4BDkmWS/5CXw0jyMsQGT+s8I/Pj6yW8cPe3Eo5KPNr/z4DsCWoEW9X2YXAej2iW26aEeKN6KcEdc90OzqPu9obC4HVEXomi3e2J8hgpo9HmWqiz+IOMbOS433fndoNHhxv7hYbl8FGoII4h+AmH4cOJJLaM3oXOZaXhAEupJaG6H0lWbEBPGr6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HsLYVFLmNpKDa75W7tcKmO83hnYuMAsGFVhEWzfR7kI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oFAzDnkBPjpMGgwhhOA7K7s02FBSznj0NDIonldtXcOWRd3uN227Wb6EXblUvfdfCskcRiaG8TrrS8bakfj9/Sce7kMXdqn4j+7zV/N8tCFnKFDAg9FQmGRDSqV0bfx+LA6Eiw/epj10BP4QIHa1LaT9s1OBU2n357jDMIZNLgkTae4VjRGSs9ldc+uTC1JCp9zk2sROdo1/SJgj6BD+P96joMH/Lye+sud41PHHMVNujwo2DBatxEs2fxBQrG3bW1ZDfvF/KiGSv5NA6Uz8OFwWmXz6nam0n+4M06+d3FpQGxzTDnsh/8j2oyLpuDS4+I7j84wqNmUOoOmv5WL94M6riud48MRyAWR14uEbg/uZK48LSgoE7S6R07wPW1Z+fseyrj/SyZM5F4WCKPLdNq9Jy+/9sy3j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HsW5wE2OIQFWd5HWL1PCIlNijc6nQmCeUG0LEN8Pr+M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ATCNDvHhAF6R7ojYMYhg6mgosdK9Bc3ruj5gw8Y0gPudPaIz/NnyfLzGKQKqsjHwluJ5XvNXJaFjGxJUcwNI8PHGzyoLIXjHhoxdnIizKM9gXO4h9dn3L1FAIPBLReYC0Kh7jmgDV8TT79mlvw1wA5Pwrk2tB3Decwu0/TNVp80BJdhfeZRZJpCDHPzHI3xNqaBjPXhCyihvYUMdptbJIXiUxKa/UiKYZ3tu9cXteQ73ag66Lr7jpXPZbTr5FX+SlO5mZ7tEdEyoWHwfekp0e8rg+nwgKXwBxpFMf1NYFD+uV1KDZ2Ai3l3lxbixc5LgVn2f5uDu3x6xA7aZOc7zVbAKeKKLuCAEKEUUxkiwvE0DkdSV7XfvZ6f3GHqIZjgR8Sr6UFlG9rP+0oGIiWJ8hdOGPzIWFCot", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HtThVaZLx0dxJAUoIIpB349zki2Kf37LpA/IcZobT6A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9k5zuRvj4DIEXbfpwtLO8GforyavBe01HTbrpYdwL+fODKms51nmGnxQBDafucmAZuhddK7eFrV5cSsdOr9UcVNf1yZdRHs/tVXVBLrumS5UH+1Z04vymJ/GBJkTtegSWJ+H/qmcEFoSZVK5x7UQZOryYKIWIechgefSKplKrxoVhPNdOIytoq8wfZNO+/F6CeHz3Kar1YieZ/krI4oMo6K9rpHfXl7YdoCe8LDHMN6OIGM7p3N8ncTBWnAMnlBHLKEEBZMrwov5Gym/qGTSDqSnVa/KEvf+q1ze52tV4mC8nvjnZZJxv0agQsqT/cv9gz6WFGnj3FI+f7jj/z9oFbHnjtl5hEQyj5Y/vjySiuImytIguyUOjU6wYuGtynuSJXb8qh7ahNycB8VlmeaM+KZLhO2oxd56", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HtUAIXNfQudgYHMaoMwTVr6tvBZkTi++vLHK9id/dWo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S9KVu+2bcYziWNXpLkP4LE72xM1VTBRfremHA2KgAUAbXu5M6HbHHwQgBuMgWDx5afCxRCmKgA4dehUvLH+E3I6SJU94zb+MU9oduiOeqmWChH4GjBPSXiBM9b+2pwrUawKVMHL+HnaqKml44wiuZu5atzVzrddEjpzFrV643OvF6aKB0gYWnUrfYs1QdQGh9lOIlHEMS+QuIs+aF2eiX9l/cI++qHG/7YJi1y9c9/DkR9EkhgdqCXR67vc2AvaYaAlIDUKc7+J6P1T7s/4mi6ovltUxoRGO1nBkEH+xgi8AaGmou1Dqah0MwF05JuQvu6SeMacXgE9wmKfJ/rqCSjy+ILKoQj/8LFo1Y05USGDpfyQI6VCUlEHVPmDbsAxvQ15hN5yKhDIQ1P9juIVzgz16LKPaQD1U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HwBJSmeY42lcY1GQwTD+Op0qRtMPxN1i46IEyiozHiI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u54fUFwUXfNKxe6GLtV3L2uKyLD4dTilrqNWsJrqRszQWrh9lwJSyY38WtJDpur0qhFoG2IVVwyqHA88fjsq43Dvj0K9xKOyJnCEgyJssF4KtxPYFblerooOCbbwgP5sau5kgjOwHjPSXjAr431ZW2ttUwCZ9qVbS142Z0xR3eYzNDtHv/5MZQGIsUHR4XFLWFBi1slfBlcUs02XFKL5YtpvtFYQmkuLagH5IDeZvxU/Cs+21n+OPWPuLtYZGAMm8BwDs4B5uoYPCNEi0Jtsx57Vk3iwDP8IXGBcSFT9x4bPJS/GPVLvCvtqnIdVe3uY4HF9m2bfnBlUrcVaROdIuBryXD6RF3jWxBz4Nt6ptMthymnmUshn+QMxfaqKfpye/Yiyu222U1q/ImihkLChj7r+JIbsA5f8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HyxCSvaYP95PfmEPuSLia6DcX9SfhnB9e5KjYN3C7UA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FWG+hYkWKb406iCaLH3UPJR5JDc6i+FCyE0WDONCPHk114DHkV+oQxGvEcjvIkqYjw+qOUUTHJ2j2y1ndzZDwz1IyVme/L5srAvxuZZgXKb+5OKq0DBgY2jgz8qwmijhULDHj9nbmLkTmpPMw7iD2sU1LqDHTIr6+DJEqNpOVb5Hp53FsEzGyMrgjTAW9kYXUELLaUZcqVK0OaIONIIny7I2iiKIraQRKXJlsCo/m4tsqylmOS8r9FMfhnxbM9pmxHEcGurj25WlB1STdOkLAzUQt7RYF1OnCofJ927PK7zdy9Cmnoc+6Z0+ZpiC0i3zooTIkT82nENfMhhRY3UbTXTfdDk2w7s7UFD7BX/siTO+NiD35/3XWErYIkYVCi5B/0ORxsjs0FeI57rD7OgRqsLeE+qmARkL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "HzJOnJ4JnGBPaHh1vy8QHk2nCvsxsuF4Bza6/PHLK+Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "igR1GKd5nElpdYuFcqp7W1Pj+ZEMnt7cav042ue1Q9WXUbJMVn+rv3K5FtWDM4yf5dvkMEzSqfwrxC4f29yvkbsu7B9Fr4X2jIfZPAvsS1e3ghWI4NzZkBi16+9kFQQvTNAQzS3UKAj9s+KlC/JbD8+0p7xs9Foq9hU8Om6zJ79nhBP/G6MgWzJwzEo3uoGvOXwlTiXB/NspXwbFMsMZhzG/uZvrASBGg1r020aCJt+yJXqx+t7ZPFd0FRiJCmb9PaMQZvIsd4ICzN8AJe9ICtrlJ0FjTkgH2aFZoZ2n8vDJakglkaaB80kBHC9v+qvhesURLFW/KjcvKlplgNjdXyprraMywK4ka91eWODo125vJdDp22ARgcS3CdaUsWMk4NbsuhZphQHDVZvt8dSNuNLbTl8kzpLG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Hzc5yYezorCbRJso5nbCGCIi+74ms9zVxtn8JYT1KW0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c6i2TcuVRmFe0tbwo+un+Zb4AqAlA9XcHx/+lG5czqDJawH2nJRX7+VXpWLQiLcZd3eQeix6UqekN9xWrzvic5sYLPWVuawTTJFyyPf2U4xkqhMPDf35cmrHIbiU9HgR8laRFeSgLvruisGl7RLwU/ydt+VGHnRsK8ozpL9nrBI+SQJsR0+TrAyiUkfa+zqX4UyUaNEJVx0a/yHJyC2snVtDLmPv3Vpilvv22tx/5Sl7d1DltBNO+j2fnr7fFnWmxV7KTX+bQF9vvgFf9Vv14Za1LkNi7cj3EsxLit/Ew3NZ9cAyZMO6vUQ9C3Z5lHY9VQEvpHY/7jDPuL7eJCq5wrHYUI8yo+nW/AZZdqbl1uq2nUrF0XgA+so5zq2ZECXbr74Siei25Zr5z7lVFbAwzR5R7Z5J0v8v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "I++D2pCbq0naLmhg8aqwlyU3oVXwmD3CqsT+boo3VdU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+LiL3xIBfj7lY45bgTBHaNUg6rMymWqb0iDmRxBanfDOuhSKi/eTgR9W8+FQ3iJu2NldxoBkgN0diYwErXMb/5gWvuF4YoiaZzgghjo2Tz6OvHXVdhBu6mIU9un83G/CqylykmtdVmn8xe6YwXVLffd88DJ+AKL7lQUD1uvU7oLbrhdzBmczb3f6GghtKknXdVMjFR6eojK5yNhO4wIDvyVmvrFY8EMdimSCQmNccSCzcFAQEeAp1yW7IRaiv57g21HXdZiKRevHy9EUVEWhQ1muBDKG4Epn6SU7rPziA4s8QjyVpW0psrRFybvIooVndn27IsfihMdHwQwg7Kffly4jlAkAflvdsts1cKxS45hKhy1XJuI5yjsiUlvQY8Zqu/2z3edrHW1XVonOJzPYJ6LLzeU9SoDn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "I/NrBLPAIr1fh3H9Wu3Wu3TKtguM/L5psmHOGDE+QPQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7Zr25LQk+onUbH26GCCtWPYbut3rOuXvBSI3tgqCN4fgEZg+Lf9aoZip+3hpOCIEC+wYYU7JE5vX8cZQHptHLe/CEdWf8gyUPdLEWkKAHYzy3NRDVEDl0d1lHA1qpz5FGiIyxmX7FI1hj6UQOyIqkISwhXGIiqodYw1ukGSeSJmiflb82bwOd8Dps2tCFCJoY8je9KlpS8tclbN6s4BUsRakgtCk0OwoiqevOQ+uSNrYGMdzEO4PAD517m41a5ezveCQxkL5ifp7SlzKkuRUMh2pRUhcZ/GQGAVWeSquXVuc1nK7VoqZPuB3dallB3yRpzTZ7FtU3ZaSGVRprrK99EDcfuYD+ZPQz0FLfCE7916U2uizkvuPpWlgfg6vpXeSxYhZTgWJYxcg1+DLpnumEP063UQ/drIP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "I041DebnbB6YGCmuJBw9RxfxrgOzNhOAq+EBMQabYZA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "to2k9V1tQWPcIpmLSmyF/G15ZTT4gr2rk8+A795KQICBVtUqm1oVXSApOIMWbxSUhMeFHmr/K/KklGoXQjPh2eGbzES/9MpqnYiNGJwtgdv+qE0xFq9Iomlkx5+iG6PcE9XY5QVP08CktP8AKGcI3eWJYgvnxm7v0SSVfO+Cp5t2sGR0+vFvCYHmO2ZHMMNyCZvcom55BmCO8iY/OL6DSKcouSpOyhmJAtWVzZ9nEucBp/Htazkp2VG41Gja/yaDM8nMEN6M2n69QpZFGL1H1KI9P7Ydq5vNWJkldgeg1uO8wh1JD6mZR7Sxn/k97bFR9MHwXMjN52Zx0eDr5nZ7jO7TpVjorsk04yqHi4+tYrHcRPGlPX2y6CDNiOWjsQ1wov6zzVZ+wY8uVFFz+joNCMMdaXNF7kx+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "I1Vm1rC7W0Olj81dH1PF3072ke/dJE7KIBhn5vnhtNo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Kf+WTdMGDr3ZhLfe0AErGpiqSaBbCByqY9mCJg8Js8zQ8kCGvJ0l+YYWM8iAUiG1juU2++8fnDshokWHTkypDX8zp8iPXC1rux60nevld2fBBz+7LakRKg824PphbQUOoT8xBeDa2T70hNL3g5rBNjXHLSJnTzu2jEF9Cf6LjXqh+5IZ0CLyUQr46JAStVq2XX6aax7IR3hUVbE0ZqUjidI+7TLGwZaNr36rEz+d+pWpx2NOA7iOW/HOZiOPh0TOKKGcr6L3nu8rKDzz8unfWyqVxuQZmXru0I9KCqyS1KqFM9mVfet0I5eD1SrVtNQuFD8vK2LiYy1JIoWPgUC/by2r9YiBLwIBrtTNFFrQJ+VgZfiArqPH0HiQ45yd3yg5Z99aj6089CRNYVDeny7OQF9BHvFUV/Q2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "I53z5gCZYVorjph1bhPkQJvnhlDAC0rEnU+8vHBjAc8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZCBkiZlphTluFMd/cUOMtQ5e+5chcmRSeQXqj9ZqMCYKGKiVpwr5x2CVqPNHMgHLikIxpnPLWDaK3MVyGYz3dZPkVm7G6AQr1puRkTVNwDltkCPJrN8cA7d1aYc//78vK6+6GW6uk6rbcm6MsulaWDxJj5HMkcQHjIS2Bo2AeisJvnfqIsKiT2GgtE2l5K83Zx67OYmuPVtGCSy06CDhLO7GrD9/30D3Iq0vbrp7q5c7GNQ84miCW9lczIxw1QSM0twWr7AprDlmQoPBmbfpOeVClE+sb35cUUP1UQq4NVvXsWG5EJ1M6z+uElQOF80C1Ymii6xWDcGnwRo7GRdyLnLx1YbFdl++xpJmBNcEnAbBuRtLjm0Jvl2aucz/3u7EWKoOx84gVREjIHwGe/y6oJjTQKuG0kJS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "I57+indyrNJ7c4qhyQufUZ7poj4FHUDqNZRnipWC+08", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pyMqBjNlRGKCvDjorFzsd8nt4Med/ExCpic5aAKVWSwlgPEZmkZ1pl4D7JhEiNvWxJAAEggDoYUT6CzBmF4sJmQsys1L/6vTGrHJXM49ty2braE4UvoHbASS6PMSt2u6pHtthe3+DxIZb9zqzINlIEOFtyUIEQDise/HuFBDqovemsAwRh6i0g21ezm9zeYeiOLiC9Pk6dK4mnY+GVCP/r9h2xs7mIeeLPx4bxMpI2j/t0bJZN9pp/HpzNibkcxCr1rBpqHPuOsM8jhGYuT7hTzPAkuCJb46jwL2XgIqcaFswXa96Lu1zkUHQ4QpwQ4Agff09+hP6CFqDcmkdO+gBOGx1QoOOQpDtlPHN12/+S+goGFgY9UnN70bNJuRrSygJ354l/dCqOMclfXfCn3JMVxHUvwqUHkC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "I587N+sTCujx3cVA7S5njFEjB8c6u0jwu4cbtIw4bqU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DA4/ccBKS1DYELEfTVBwtWTq8gqbvJ/fI1x/mK/n50DsU5Izu/Z1Q0yCKtLg3isgDY/Qi9AqTkAQmml1ASl7RVmHizE2k4mmhFJfyYS6+OlodHr9yXPRpPMjTyva3OxMOsYJVM0rDUXmff4/76jSdVmvYzrjZjfAx850pmo+sjyDSXtzpHfzHd7+9eMhfG2Dtr1ZlR+fx2ci5C9iU2/ekYrt+qxy8QXKnUNGec816hCLptUmlZDZ4o4p9tUmDF7jFWZo4d83XSixZA0lqoHIHV8gvP1ylJJR0S6mFf2BW5aqpdfupDxFlg7EhblGRJXVGrPt17acfb1pLHIp+nqFKXSd7lXE6lPtfos1+b9jjOAt8Pp69X/S5OUvYtmqlkoRtNgUM9D8lM9l1KAdnlSGM1t3HzuRz8pI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "I62UDycOmXXiKHy8zk4c68J/vLDV3C6tFGFeiHtxdqY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d+pFmzW1Q8H47OSsOtJoDHADHw8nuphLG0k2L55j3vlM20nXF5eaXrAeuxI8y6AYnE70U0XExljIilpJJPb1sFry9SD5Ds+A3vVoiE/vICs44ZgIHYKlezxBsQb/sTVN2XBCodIe9Ln6KfY0879R/n/5MD3k024KYUolmJpvCrfS3KMT5Qyx88zERfcFmaglVPaFGc2Wk+tgGkFdp1s3qrjGravQ9CY0JTB+4Y9s1dUTsl2b0iPsx0hB9mQzsXqz/zonqjwBGKQ0v1Bw3lOVIWSDPSUc5nOx8bYQ4L4D6Nlf3fqZ3tNeDsFDm9a85371iootZQR/Zl/3waXt+jrVDlihjZ1iUeXVfgCwjjqYfVVMxAEdTcY1iVYk7xNzCYjlIYtszC7QELbnY/fOImJ1JU4XhpxXPNKC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "I7D2s8NSx2wcAK0wSLN+PSP1xaVvxUiGHAFAWLL5Ki8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9v375UA2jNM4qTFBBhTDhZJvGIhT3inxCABi/tTSRpG1EflHVkAh1TkIPS8PuSfEXvaK1NuTq59z8OJuM8Xa0iJyPkIggRCXnb4zA8NMuiEcIK0GEjGp/WF60Iv887pErXcIjDYeBz6URuB28Uqyc3wf4w5Mo7lLYpaUR/OruagHZ3oO6dpsmFWF/KPhm2HvWFu77YN8vHlrAAmpq+3H6uOHAg1wHtR1YxaBI3LX6B7OfuhRL8T0am2rijjXQDU87YJFRPJv6oDAMrMBc9Mqgv64zsKCtiNTqotq5ijFJmkirpYXKDuOSetu8aUSFYbmxrZ7nGMRN5hLM2+T8sK+8HHpKYbO9BqUWiD0evO878aSQWHk/TVDOpknhjOEXmbqCPD44PkgjmajqmeGTjzyReBDH1OWeOXq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "I7wXR8ekha68gNWBbEDF2TIZkStTvSuuRVVA0WLv9ac", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/7Z5D+jCHx8bPfzh4OMHBYJSrIQLrtrzmSsfS9ki2LOtJrA6JA2vviqknv06ZGWoUQnp2TI5T4cjoBV0VJM6m1IDVRsGmHV1jACW7xJgYiswdC7vALqlLJEkYxHyEvTmDwvDFJawMPDMVQBg+Wp/TSLzXqFrWuUAlLXY1buPULgu9Q8qBN/YEUaqhBDajeoPSavQjooje9wXEsvro+xNYiznDCJUn9mmah+zSP+QHnHp5CAEYv1pDEMeltDFDXPI7MTwXxSic6S4bh5pmsG5Czsjdw+TTRwy2DAPbKA7+cbBAvlLDvgkxLYVzAEUHJ5pm58VPCcpumJCM0bdyZO3J2SQ4IFnIOns8SuJSRt/wZjSO5aJrk5h1X0hykF3SoFywzSrzwUW5ixqMFcs26fzWMEmMVwg9jaT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "I9IDPuR176SP1dKl5H8ElvPyxQ4XpIibkaELZldvKGY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QdH3n6WoGuIi2KgBGx7gT1Oj0Z4OkyLgpd9ZLyMvdYKNMDKY7uECy90QE7Ro3pcFKIioqGLxYfbLw8mhhf8K6nt153kwn3P1ueZdMlsC1ihlbEsjQTiled/rf+hXKokWXPZVXTWBDODTO6ypz6w60tmHYM7nS6EsPWJmVB9/XE09gTa1uvP5tHQ15CQYl/XpMoPGOcwODUenNUV55tTAQE3lt/TMBVU5/J/H8jgkgTmFejbkJc7D6JM5NBA3+zK20J/ZpIYq6r/9txlCwV7cbSqmsW/znMF9M3JW0Oh/KM3B+b4PPVLCuU14kiqS5OInF6Xf4Dt6bOWk9y0XmAtpZq0ZUTgMByBcp1ENCDMYVAbFLAd01YqMhAsL0BdfoGx5hnDSMXKLadDkK0KenSW/e5JBvXgRujJW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IA/S29TdwN4fXGW0irh9PX3YjJuic47Rl9YlWhLJ+tA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qqpXX5dwWPoLtHKadmTtH9DqhgS7PEdJDfsNhGztcT76hUxmnFQDaLbhIjqGH0Q6w3uXRvAmQn1xHKJW9Dg8EqAFLuHBq9gDuMhO+R9IwdU/soBy28EhQYxFbYM8fx/Bs8fiO7f1WKBs9DM8eFQCZ8J4hU027FF6VMfCu+K+UBAcuVWH2sEGpevQSywoP0NTJzczLLuhXD4TdKbNeyp7tez6IMkSFuoDyKQIwZaIpoUiQOQtTRw7zso2bzQr0uc46CjPH5CxYNMylQ4RWzDB2eWv9oJbGeVbn7ZPcN1rbt8IilpHpp19ETth2g82PoQ5WuPRa5qdoXL3oLgQ0XjPmGuywc8ZZxwhurpDYU3rAWXWt5lwgGSDUDA3KezGvmiflqqjfO0Ij9Y9zpc0EYlwJaLBdL5xkteJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IA11Abd+kMwP1Yv0WjSnEtf4bbWK9c+i2gPF4m2puHM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JsG9R+l5pQubnLIfspk6KG9zv/XC2ha+dZ5Uq+sDFjZ1P4kIbi1EiOO9Eesve/q/m18RSYGCeKEdgRwYx18mE49B55M3a6cEfl+Yo9Dr3FkJV/PJSWNb8IO59ZTDEnB3Fe/6bCCDJDKgKOPfzeHiuSxLHZLYdovs+WuhmI1tcXHzv5vfVDoudEsLLf8MV0306moKsJehpwTpOqi7bGlOTCRe3g4KNPlbbEwarAPnxAlYWUcgO/KLWOmGwbwt6qIJZxWBxLspeQbGexo+/Dfip5hv0W2iKEzEumHwbObIPIgVuS3HT3FywfCwBV6dZLkRn+mdAK6Tm1BIvk5iX1ETKskAzFdBuvatXcT5Ee3B0Pto2TU9ohs5hh0zvkVWH50Ka0eru/WCmcwyttLhp2/JbaCpWJausnHX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IATr1++7MQd7QQRMx2U50Ed1sJP4HMOiNgn9D76Uim4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LsCq6emrRJdUETWBg6pPZfY0n5swY/uHgXZh0yVcQTLBOiH5PLZSqKIL7sg5xlITCtei+DA1wAmCoE/pk8rDCxnNxwp0GxpmhLESxyJJMlXsiYruB1wOIzi7q3da2kpKgIdNmiclDpZRgZlASavXc4GITdXJuyPTe3i3alkzj6rJlnPEzwkGIyEC/TycjpmAQOj3ZVP8x4ZvnSe+tKPYdbBEEVgECBpowjG93y7/4ADOX17o4WyCSRaGGvN5kYmPoF4W4OfZ7V9N3v0naHnazFd54CQfiPwzoEp0SpQ4XIJb77VUWEBDA7Mbgc2r6w3D2VkBkJosgcyuD6sc1K9PorZ9hmeUzUwquqfW8p+EMso9aAZ5flMKp6cbhOjSQCLdMcBE2989p7j3F76yBOG5X/QBzF6q7R1w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IBCrB5tRKwGt1gdu/B1VkBwY4VOavxOXChvWJ9snAGY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bthV2B6IPCIpYAu70hB8+MfGtDPFzwV9WZVk4duPE1LEdJD5aH3YXJkHs6vzcxliA5oZmO2atYR9m1Z/BIDFWZHx7/dsRc5MAbtftkUxkuTNT4NK+UOVWsyKta6UvSTz1P6v/ft0epQyMOE31J0kX/vXOOKYbVMH1Bor5hURuqsHEcyu0fs/2jyWv7mBTmPV3jg6c7yoveIey8NHSXaRrnbsubiPgeG/1TKS+qYGRsyIu4XraiuUKdcnTG580G1jqX6dAuzLHJJa77qxWq9X7XImfzkSqAbWRbBpmrELFuoWNm5PfiSv8g1sWGYi6ypAM5VBvYloKLkuzFd7Rst+jON5T/m2RHEUdetQSXn+DdeoDfrd5y238SNnMe8xaSGNrDKr2a8hIokXOzVBkaQKH6TrxPRtqx50", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ICDW9n09NUJDenaMwbBHWZ6GIduDW+FIA4OscmH/e+Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ssXwgWZ8bCG2Zraf+e+FcMWQsi0Y3p+CJuNEz7YL/c5lEO4ricLWDokCSqgB5WK8pKGSC01J1T2ULBA3wIe6V/VYbpTlqr1JKQP4e9kFfSDCTxiDNH01QS/i1qYIANTP+O4cclTMo8hPFueWE2a6O+UDMQRF+GJDLLPGKqtKVpMC6cGf5ecDk/fpwd+KyZDBU87+G2VN5ne8SqZOeGTbVIdBNm6eiNGd3oY1Ye61RXQfIRnjix9ZxlZ+pCh9fc/f3fdkkMk+7xBh7g1+62Q5zQMrqsThWrukfTwlzPq1ZjzeoN48sFHulRT33pSaLf17xxE6EZGdubzIAJs/G0EvU0FbKiC5HIsOJ60oWBUcVUdt/p4i/AtNqRTuybvCFMhIaGFXKHQIkj6YO54xTwymJBvhD69oDqyB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ICRcGnP1JKVzXlQWUHBSduYvhfcvwj7HW+OEONVkQP4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NT9XSUoosyF7KIx/m3YHXOpIChJj+zglzZNL9AJDqQ9oX/F9MjxoFSPf9A6dqUm9vxaoQFGXCzcph5amwKGX3peBM+vXY7e87CNAoxT7pj6QG+SMniAl1cEQ5pf9dIT/UnfIkDkreUsM1qmk0Vd0t6T757cGgeq05py6G8cBJotGcRn3tglXP+W+uQVSS4/OZkkyB3n5WXJC4e3TfDjlVusWm2Nlp1GIO2Q3evh8J8P0M0l9YdlKCLIHAnj1y980SWyLMY0ZAEqPrtoX++GrHGEOkCl2m2ZKaOKVqMnh53rIPY+hik4zxvXUMqqrb+vAtWWBz5VNlQahTChIsnXACQgVGPp0sAz4UX7KE0nHOkdyqmTDfRnmHn5/fC4dg1KXCW6Ugdu4Hb1LlZPSM3Wg3rjLy8F5Mey/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IDEEj25G5JZoqzEwgh7v0cP7ZBMBgBjh9wKmgp9xjiA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/GhFmh9LMi5Vr9rJY6RWUFib0ABTBKfTxZgV3fr45F2RlY6yCSy417zUCAeUDRMc8l7RB8QiIMGYyvPrI7O+xviOrNnrxtuGt9MQM04xx3QyzXw67tVcXqsFN63oihWIGtjdzaiID0QmFQm1GzCF1V6OeXqTbtb+YdLf85VAUdQU7oT/dwqZzLGQQ/Y2eOC7EeNEg4LgU+5NXoH+dFpeXAanHY+U/byEMM/bHYCLqWjUZwFdMPySNoomfe2Liycp1qi8dQauXOFMlgQkRJtE6ZLaxT9CMZUWRgRDMgHr8zunZ1aPDtGNfXBZsScCwZVRHs3EUWBt+6C6fUKfKN1wx+0x3icHZLVTonVKtjKmMUiCPNv+vqBBT6IUCNYTL8dBHFwG7iR3qvdToQ4S7hsaxQahXywoAmM0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IDavS56jWfTIxZbuQWxtM2km/JfwRUht/EGfvslLxEo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mFvAVdplRBWxlnpqbBXhibGuobbbcblfarzN/Yxk3GZjS/Dd7OJxtoO8V2X91P6NHsuAlrkLTb3oINlMvQuFvvh5ocs/CnzxsYwvGSVlJgbMR7n1WAiKXBDGqUabzHacRo9HvIZRkISRTuLGxVBdPq1ojC7ySV9hzWzPkP+lX8nskV6gq3crePtfBh0gkr77+a2xB+8kedA39J2n5QEaF8zbF44FHaMcIFB2TsdMKiFTGvB+DQL+knfsFKWjbAt2xzA3nllaoCkgIS5yDmMmSJqkBWjo+FbiD1JrhXC487yS2oJkTIghyXClkbkdwovl+y1lnPhNYfxkgXfxacCYT/DCIQKhARIQyWaMHMWmtVg7CA9Y2dsT25YqJQwHjSn0i6ntwLQt8JfYwjzXu+oD99gMZ50w1u4A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IDdYAdHMts+qZciGlziT9tfkHACNVaGuPLytZC7V3/w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Xg6l4iDVyf0wkhperGnReBCQCt2ejtk5Cfo0PlYij/QXnjvDGiW8DNXiB9RyunzOHRkvmleHV9nYbF0kNjG3qTz7Tz9kfZOdX1G+9Wd37bacdFrPW3IQza0yKgeNiSWDY3OhqOpATir+6uxmKQ40x7Q64aGCrkICZORrPBmQglXPyJ2rlSie/+hZfGhyLDteshCmSurvh8P53lgx18Y+lq+jXBEgzKV5DGLYQ4tFiJPn7WVzICxhX8JYV5NoILho1GkYJslwJZ/Q0tO8GWQYtkBOfhwIrO3xyjDrvjfuUJSlv0dx0JJiJF/08L9PmI8di+s844Du6PJN0YTn1ap44jBjnpaCaczNG5dCpsBkYlowrvK9qd51wx7CB/lueqhKyLhBdbxvC2S+wD9g1G+gtpBidBisI/pT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IE3MFWm9cWe5NhSEZSP09AQczu7zcjXUxeFEALrsGeo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TJTJTJ6Nq7DzLwj65EjtF3D1+2prMNzEpR6HAkpvB/+9oJ1UqJAG+XEqEv8/wsGyKcd4GEqV5rmvSust6l7S5kuqhSVbhIzAvCgIUOPPB4pbPy6gLsXGcjM7ytwDCf0E7Re61qtoi3aJ3xeImij0u389Hbfr/BpeOo6yRAq8fPt/+58+9KOn21HfouTHyl0ujWBZkKn8HLYnkvwZ58UShF/9JLKdJWl/MQHNmzdeg3RusDhPs5hwwMuckUfe+QJAv2Pn8z/C/uvKHxocFPvjrMZDAZZzO86OVvDGB1gRaRQBVguH19k50eIDgsRkDaE+u71ok4EuTbeYQA4/1bHaz56mJ063Nqs5sydJsqGKxvksKSywa2E3+OMiMhAEc8rnLRPmt5VS8c/QrSLbjY1HKEqkNH9kxme6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IEeMvMxywEGZOrXenpadXfNKJxmWo/WBc9LD1Ej0vgo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XcKw/ebVJTuKS+yC/C3L8ytjN8whnUdoJOnsvxgP4RcF7nix5uuicw6mopphlOiufmwcVxmEjqWbymPOYuMh+8ucEAywuVjoTBYD/bxpZf43OIHjA2gVIZRznl6TaQ+FF4A3l9A0oTISxdyiGlS7XTt+UhRoWKKrPJ57dAXcvtPPEuX9QgwpAnpsXdsqAAXoEHaW07ZKsEph8w4JDXiBW+Ngd2araERlw2PHtHXMwID2ifMJcf/ngW2Nza74AEGHtupO8ygywHrsPcWCaXNhgIvrVMqqQDiOI5LonqLUGrBWcfZin2a2VQ2kLcmHrVINi7PSeCQgfGP95jLDnTTdOljeC3/4PfJrr8ISVRDM6TWYOXjkVdW+Fj7o4PCjRrdpvCxKQbx3GBJwL+6/Ovuke5BJqSpR6xIl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IEhUR49fWoBO3kmR16ov5YGOzf/Mbt1Pv+E4tA4mh6o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3nAI7MOtjTQpf7BLoEv61U0sfRm2HHHZjRFwQwEr5r8YnqG7BgL5K8xDYPNWAXthdxhR4t1/0aqHsINcUvGsRMByTI/siZnWAIQB/0e/HWMXtte8GL9WUFVSVWP0TCqR/dJMn6ThzJPh6FjGKLgTEkV2kv9VVK9ebWmk5BoA2DqIS6km0GVEDoI6QwRaCNxYO8SFKMoyleuDSEQnXx+YUDVUTols81FMHPQTpJ5CCbflWKirnnn7Tst5D+GtdKg0sKoApuOtnX9e3myE8y8cloe7bDBXuHGXAb4EsGhebVCMMruNFggG1NmtjFKGtACNazg5vo4UJf/4LuHTTiDkBUAqFJXKEmQztq3jThRIbj1Zh35/4HAWsFANE89FFv7Gic4DNcnNOitzWX09s6scMi64Q4ScgvlI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IFx+OgGG4h9z5FcaD2Elf+Pbu1Qnt10qt9UObGtEMaA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SE97qmr1vK3cb64ShXy28qDlhWYpaABwgHQvIdFm+GqpYm67NeLALH++Bo17TA1lNLWlPzQUaobUN7VwljrJQIFiNUNxWuYsIZ+MlZlCb9+gHTuq0v8fBxwlZo7wa9FIQC06fnoFrZa1jPOwnuVR+wMgkjKLXA/zuz542Xx/Vn6r2yQKyQleS+YUZ797skUDyOOksdiXg1ksMFdxnASGx9wKgV4LOEUX79H7M8+v+IL9je8fAAikzexyJ+Eq6KCrdDp8345zrrM5b2JO2d+csahY+cC7ScB4s232w8PAn/QYiETGGQkJvL4edD0xLwz7TkqUoRYKbcLcp1/muafvOIhcIcJehl986H8gCIxCYcbmS+8i08PC4sq0E1hAVJHi0jTUiUtB3oBeI7gReehgsHM35iLa7EQh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IJBVRUO1p9ZVNasKZHuU1xpOuPLsVkyRbm8J/brOa3o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BbNz338TEGumoQIaxj+QEXDzl3Q9OOWR1eZTCjAzbHLckm/z2+EZS3Bk+KNBzEEOnNM0FBje2X1Z/3rcZFDYFuo8GyL8Rnl4fMPdgf6I2drKxqZROC779dP4VGTUwZr28p5GytS8QUjirX5LNJFDTXc2a1x4ALoun/towPpn9eMWFHpLxqiqS/qNVSxi4F2QWr0hN+Q75qerrIDBLQdmBk7TNuuhmJeH3QDvaDHjT6EKRF3bemRraIpDCtOR3ufWpzbzfxHL9d+nQGhTY+3NWph3rwEb57+TuimzeMFaDv7b+oJbC2vzZVgcY69qxb4Dg3WzEtgsd8ZkFIkK9em4HE2LLJuOminwP+QQ3XeTYRHiUyMK7GeMc6x3eb1tOwehpxMuTNUZnCDQwEMQ4pPDFjM/1hQYUqkD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IJwFHu2JRZlsy0OIikM42Ofykwp+DqIqpjPvdcXJ9oA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OB4uaybqxTr0WpnEgupqPHTu0juFtF6qTPz9NvfSZWHykmzewyxuLhROoGTta7jmd3mGX2Bhscs1ChF1YDYkbkjLHeqE8HssgRY2PcivDERyKntI2LhUDO7LWecYVqZYavCr4UF46lt7ymnFiLB+7ZcSU+TyLTaiAvq+PmOu7iqXCBkG127btCe+G4fNsNv2saKuV/jhTpIP289x4xFvMk8VVjQufl5msTvZOcQFrt1zkjm2bshgY8jF/5HzWbagozm0ufvGvTNxgxeCDyIMNDjuUDaIDvC8P2qYZIEgtNTNs5c0elfe+6oognEu9zVhGrW7/1/xv2f4LmHFuvCt9OWNke8XvORGGUTeuz6XQz6akZA5OaraTvUKvVqjiM9KhIFATtgkrdTXlTT1LgC1rFbON5bgege1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IKRIdmf8i3A3jbYcHjE6hdOrD9aKKS7kErM/P1KS/o8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8WReTEU1pqjWe5NHEMFS/2dyD9HBELDVIGXgQMwBG/NHjXNHMYTBt/LHJX9AvjMhNS22WysGomVb3UxuORKUGTd53lqcSSmJmttMf1H9c5nbLyDSCBabYqYxQJGtsuyfNJP7A/wRsTCf+BIepXGiHlAIrBZ3zXITdnPEbPHu4Bj0eVv8hh+PcvQ5wWZxdKm8IWPhrQFBWCh/pugds73gje+t+zfg/UiEsJZE/vywFS9109uoRD7NSi91YZPrhSmCT3ksnXSoJ2lcL7vU4WX7YXvU7/fZG5atkeibsqewN4Pko0Rqec2sr3iTUqPOVaoSRs/xn2wIMoGWTojeQM1yUaTLV3thS6K2Mv6bogF/YGaEdbi7pi7ttEhSmJldTesg7D8t29eTsX5RmZ+Z9t2vo2k5R12szJGK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IMVnTBEtxLu4+jjGa9/0T3peTL8ht4EuOlF3Ec4VoXY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pRAg/hEQn4u1NduNgoTq7QuWb/sRiurCfNJGwes0bLSHkpsTHEWO9218sf0W+9rJ+ABjPFKUPUP5yIORJhoyiSsSGbLdLGQvO8mReMIP8fgL0HKc6TsQalH8sWZnlbx9pziwpqysWDJyND10SmyQh7SEhQrap8J9ACEfD2a36iZ57LTRH8Oc0KdCCP5ExMwyBAABxyWkbgwSIOqR7EVS7vQGWBRhqlmITi/gQ/imG76nfUdvihuxD5GPxffpY5CGA3rxFW+HACaKl7/uZi4Kdn2NHjhCQXN7usH+3pjBjA5DLxk9rX0YlyavhLofygnHQlvUbyOPr7eoj6CzUYswFwrbrzo3RLv4T9TC/2uPga0qhyvb4VkCr7tmuFjsyrMkVh7HsvnkWoQOJNCTwbK+lA7wK5IbhlBS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "INRGu/jOS0wrL+Of8dzbUig8GSuVxXDYUr4opkvoYsY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TjD10zCDP+w3X6mZoUnqOIZu4QGmJwLFQgeXoV3zHxiiRhYs33KpQEpPM2b3WGNwynym6yrraZQDuNJ7x1aU9bQh5sZI+BJoL18HAh4kC5KcDOSfiOiyeCaShBjLwxBFFxwvkrygjeQf1eYcw7rhIhiS9UGzSBV5Rw1g+ptqUEINw4DACWERfOvIWNIV8bRdGkFtIMdRmqnnbFrfB4soWLI5In70JhNtyG9kTplZJJtUPf3/Rs7diDO3CInKoaRGHJQY4RI7hFBtTCECX4GrcqTXzUc6c6d0lqa+K82WuLx19psqgYwYzOIlqga4XKgRrV2QdlO7kSqfRCo0V4vdlAB874anomlSJrEix9wYMJ9z5vGCY7WIrxSNpdjd1aDepFEQWG/UtjUIDvixhSoLRJjmxNXiOckG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IPQYr7aT+87+ezsP0o+Ilm9xx8MO1z9oreCsETV3T6g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RmvaPli8ux02/7aaRGVysgMYl4JvCaGqc+AwtgTFYL/47lZMNTgNXTn2gN6yzMZsE9rBxDzFByALqhzIIuEO8H+DS5hX4L/zmz0DzJj1EbYNwipG71diQOzZrAk0xwXx5WCnOuxq8FyhogmVzaOX8zK8SnooeHCgA2lE+2yLyDE2MYX0PSwOAOWdgQkQqb8BXWPVOHLvguW7a9EAmfiRojUbrhyyvV3v9Bs6flQiXvznu7dRilv7jAamvq41vK1F7rukm/nv4qCSH6n7zIDtoVmJhK2PEh+cF3qFtnpyCbtNmlQIAZlb+WUkO3c7F1fXp6rLONNEvF03BgacYJ+7AtF+YKWxHgb2fRdTUq0kXaiM8QjuNKYtQ6zMwi5IYSlnQ4FEBG+WBPPfLb/Z55zQog0llDlmO5tp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IRCwJ/Jii2rjgjVzVb4kqO3uebm7/Tz0MwoIzkHALQY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hR3T0s3mIKJSeZrpGZOfdlEUaMX6McaynNAx29zJayMOSLiR9NrLTaUA3kmzDQp0wn5KPtpJHufHxWAGgPmx4XRjvGrmFjZtV9oKM23lbPyYtp9uxDirgYODOa+50qpR2CK1cl2ss2yzwq4pcSV1siGysHwMh56OqL2mLwBH5M3leAjoAT64P4PaboNpS0FRwVgv5RcTp5nhTU+JUaWPAdDmXAa4Wc7rLICA/eawfDUwvzQ57DsmZZK4Be1sfKoMtPSc0AmzZ/JT81dysl7j3Zp5rxuCeCODPVkNtjN518toGWZNKtz/jewqApmtIhGi+5SjCs49eM8u49OO0jegh/KlOwxRpNh7icO7l4Ibaxl1oxIXJMhJPGhZYe5DYAZmE1JhG+NBf+c1v939RLFTRz68lhOmYomL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IRV1i6KOk1s4xwpRs4Ns6fFGc419zTUDXGbtIiUqUBM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vNGgUtboKHcNQM8GfMfw5CzB0MDahOCTCEM5kEvpDXz0UehE3BaGJhTVZ214dr9OnytpZUVUdV3rusBkzo2sMSv+2ZnNHewNqqp91GSZxirKBcgGgfE5liFYc6huZXhmqzzo+zLxnqEfTET9ArIJY3NOtrFGquT1elXrmk2XIAqh0AkazD5AEleFVQJvEDJbIYfEry+LJcCXG7YuiyEBcWK+6r0zaO/wtQ7RwaUBzPPrikmoF98CofXHhEh9/Ogy4f5AVFI/TLlT42Kv8tO1udIIFA4QmrOVBoXC29cHgGuT/msbq4K0hgLWlNHUCYIyuFzV0k6QfZvEJf82GVjGH2YJOsTxcv1Kjw10ErNGzPL9HcAfVJLWb62w3M8QL4QyALr8sWNTSTFYnAGEMsuF1YtzCAGuD73C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IRvEUCoF6Yh1Ztwynhfq+BL/9FRWPeYOYcwS7pYaw0E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YOUQnWn8eY9sCRADlHjXfBQg81ii4RCPR7YdaqKFSzIbw8TIz+yyHXxl6K0ptIVGXFOD1Px2ba/bmQRYsklCm+vFUOjSiHac4+W0NEeglPmmyiih8mg0UybHidadbdmaQBSlgnXFpzHgS8ZdDiyJqidJAg0syWdSr1WEGgUeVYN0F/G9/ekql/UJzUGVDRJqWky98u7Fcq9eBjLCxNXqAAy/ndGhxgrfzUS6eNBVO0zjuu16/SMenSTFiDNUvEkh9w79pkud6XvOmNpqw6qz5mjgXHvRz0KDDay8Xn16MoHs6rBgJN5MlpJLkTWKQodSW3fsVTpkwidoyAvuHyDVwUmWSiq6GfBDHxUIZZG4joKiFt8pVoaQHEI8kPNisTaDiNC93ZSQdDA8EaQ2CeBaPnKZyPWYVsN/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IS8S5Yb+G8qwzeGF94wiITiTibLOBeedkJPoD5SgS3o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KljRcDkcSEyDl6vhUx4ZtT/PMr3Ge2MgqnTOKPie1+i34McE2RDkWvRVSMKwLnj45JO8gt2qhXYBOcdZgD0MUJ637ZB2p+oDlhPF/1VmPUNU2pZK8Y5jmJQlHg/4vRDDDEostzwxPqk4BDw6tzNsaFrA1dwrJPJE1/yBNADIoYgl5hk4GVbEIzLLP7SmSscUOXaXut/O/IcS6nGAoKZUwI+5f521za1W1L8qM7eb7vjmWVg8FutN8iInJE44Cz/cz3xntEhVkcW2cdIc88weOUuwTO+D4ZTlaJG2ENKgRiZUYeyaxapiClqE23I/NNp1BuEj/XOMe9feV8yH6MfwIrOlkDGPqM8JnFvoMj/NuF2oEqVSAVN+N0sQwLMXzzIGB3nRBPzIaLsjeatZYVO7SZLkQynnJM9s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IVZB18KKYVSeRGIw+ozAyZZlCaWR8plb+ISd9qymHRM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k0Ln0sifD6gPAtrgBZyk2Gbg8gGczLBh1EfibRJmRpNZW0dvYB0aPnXR9Iz9LjEcf9AZBXpnxuSGGZi0m9xK6nI1wwXrXp7gyKSH47eeLqgMpAhTKfF4hLOOHOGeywsQO3oUbMtzy2EedL95vj3nbOzB5roKZF7/TN+REurpYMCpA++rGcQsT3XjOzfP5N7mfCi/0OeUbtdhYx4O17e6taPQF3i5IlDd7PaS+jrtce3HeEFPuH597CHQr/oozT6/7vYy2RRWHV/N4PBj0/V8CuPXU7S7luIVWoQSrpxgjHLb1A/7ZigBST9/K3b+VtpfJNbxpY0pFFBg79R/d9heNgCr9xAVK3/luoIvZZqrCtq97hdVg9BhQWlmv59ZN4zsaWzIC7+5CMcfqNxifygoHcGjKU7qleRJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IWqPOYnNCfUBDOPCkqY3U9DqKT0olb6OJKwnIcpeNQ8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "I5DCJrWbELVsrzM16dfFMIIq+r93qwCFiFv+rLGfjS0TTNLfwSTurodc1bDRwpqWwgqqQ983eh5buaNyYnNBlTOMIUspeJo8p7q5UDRkURyWoU4aT/XEuVKnPNedizICLzEi+xocDm/Yuw321aQ3Uxn0QPRgG2fWrj5aaYh3G7p5D9haaqJRc6NONzRIFBQAhxIqT8lKmc1ikd8M8fC0T0Zlvl62eg2mUaOXLwUNc4b/DkK2+zM0oxsU66XEK2muR3aXMRAcjrXMroaCjZUKiUsAlHLxPNb5ZlqyFlTYbYcXiuc2YOA78HXRLNsp8beyEY+s3dqMPgvLblTy/39bNbURj64ncTTO+jOaUxYlEYUUl8ju1TAm3V4Uy8lxgDEXXiQnKZV/SmS5jKuxwWaL09uIMewxpwDz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IXtnsnf0SQknCYwacBlsBxhcjua8jWa6e91yArbN8mU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kTQUeMIcry/3pvp1FGz1hCOuLBGWZMLNObK2nT00zrB2Lf8wFhFOoU3FZc9cg1UOR9D6iGhnrg+N7xgFjAZk/Hk+wCMwZRZmCE/1NmQyRVAJbRPN0MJootxUT0rmOqRtTaVbDUcN8/p015YE7HD+F9PaZsNPEZpPNrpa0+dockfhDSMlqPgNGjKPRaxh5cRsNehu7gvjHZ19XR6mH8+BUhqVnUAq0AVEBGi++y53g2sMa3iqLxiZnp+aMO9MZarg187GS5agQuXxEYTh2hjm6eElsY2cM1ma9eX30+rsxkz4epToGHvl72sdaDVDzfnUDLMrn04snUYr4WTBpN4MZWT3aaBaK4+j9e1lyrd5DJakMeDHTtApKrIX+hrwr7Nn07dS00c4N3q8uUnL0wL/d7p82yZAHARv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ia4g7WXzUuznnRGDgmV7uvZSIXFbrWgOy6uhdOeBG7Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Kt2brF+pL6IypmgI2Z+RbtNmtO0UcD566XLk9ulVpWItlkh4lKbZ3OfXio4NdD33io4YiyvQU8lkS7ZipY7YZKAwKHAAiAnPkj3zLxEnAyUJocKqJNdNV/+RSu5ew1bAtS6ODtQRCxHgWAAhspRGxEKuPpqGCdkZvlNu70PtghKF9IwFF82UdOdS2rPRN4kea7f1O7GWn4Hn+oVC397K3doVRmNjrAinjRLKLK4Yk46ldW37z6eriTAsRq6htapc5b9P+ZxyQGHrueO1GrqOuiFDnBaKuE+I+vQ94I3UKU1CCnQDIATZmeQeqeZUbkDDr93kXZGyEkfoVRHFlQdM2uizDywvIkkpTyYjar3lulIOwb/Vig80Kd1Utmi9RATNBW9jboPvzwSXI1gzQQNJISUky1WRmc/M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IbC1topX6G80dsal2dYMP52VW1Mt+TXWEK8wRx9oLZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "86UUu7R5iK5tjX7Z+LOq7fvurIY4aqVI4RbmMNHCBoGwTRMsbujoFIyJ3U9MiENaqjVT0FsfUG0Z6ibbR0PntAEJFr5AsUQtqW6oJ7os/RyELxu8ogvfj6YDF3eUrU9BsZws/MnDvr1iM9dV4V9wbp8mgvJW+srP+SkKz91OHC9eTm+noli6J0c1AjVj6AkrCHJHrZJbFAakp+Pv0OpjSmMMqj7uzPK5zD0sj96+anlT8UWm/Afjv84TcUimgsxAkqlUVK4B+AoXmgPrdcIZdSAoz2T6ECDY1/rwO4Yu3eoO99OhbcarIzLyH+Cn16OqDzxwBMQ4TmP3H/uBYHyTnm0XDBzRY5A/skiv4qAtilPWSiSAQF8fRuepA/vURFSJlmrcat98BjM4Jo+N2FXUeeSN4hWT0JXH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IbVi6v4ff1MUaGnKoxrZ71t79m7NM7M92POs3iU4iR4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Oi1sTB3zEcgjLOd+unFKf6IBVyFatWl2D2+vDDwCVUrQNWC8xfU3PLK7nweYyvDVUo9T5cPpJhm6G8R7KdwYozS0qO1OHFnSsRkCi1yrjlmrEnbcTdvPCCSXtglqLE6jnSc3Ia5/zs/qYSZDnh+IBaN81K9XVzUz++ps5aTsIYkMc3jL0u33DP6loqksFEkADJ44SzzHHadth3QYYZEeoIid/Ln99yRyTgBuo4lGYDE7snIxn1yrYi/OLYmLGX5+GEWEk9H6Zrk4l2TFkxWyfFYsm7cyvAGXmATGfGGHVFvzj+M2pK/5wvxdQleSsz3ncSSuBvZEF7jal6Cu9Kw10Ez9C7NINyepWo3ZbAeO5GmMLcBK3xOqMmW2RufRt0pNTwy8ia31ZYTleQEbXNP4lBNVw5D7RPzF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ic8BYYmGkEN1f5JHDoS1TUpNj/469O7qhv69ruF8GFQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "55SvmUQxcA17H2Q5E1Qd6v+ggiKPwDM0JOEGgHOiDV2Y7qXsXIyp8efsj4xzR6G4dbsUJZ0piTu7m/+F2rEFSt5q6T1pEerU2ziudUJcvGWceSSSYFv7BWeUX/ZZ8Qmi/jzKVxlq3OIvHOaSTXMR6g3SzAfCOU4MK9q6597vhRPR2gOKAlqZlt72cPyIM/Ip4sTSjNN2JK9KPFoIGxEoQwIHDyQibluct5FH2S2ed5sGoVO4FGK39Igl+wNrTJ7mhkRFwtxfyeOl/4KN7BVcotiW6XQenKE42lxJGUcydGIzOTOiNzihqArmIqUxkxuDjgfykgpehe0RSR/iGOLpjUIazQNGgQqXNnJ3/X4OhZI4gh5A0X7SXe/RoyHx1fPwhoEBRgp85uNmvFFAfPRqCHAp7czM/RE2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ic9sKfIsxxQJqTsS9InVC8MXdmh3/x1aGY0Wlg4Nlto", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sp+XWnFHJAOisiFA9L0ox1t7x61BHhfpuRAq7R4np4Vx7hZyuHRi4y08kk2VqD86Mk6d2U1e2tU3+SoqqVrJufBbXDba3ow5tI/rwepFq1iHpNTDrbMyAc4abb8PyuFioQUr2fCmAczxVVFmXJVNglT/gjt4fvQB/SnUCKHkNBWAJNVzDC7R4b7cG1me/h1XgcAqwTYLDqaVuidzDJ0bT6hWkHjx/BrBs362ZkfajXRi0OlJ9SmIqA1PKrS+8vfVdXPJFrCPJewUjWwkqRuPnZrSN7dCkbxad2nhfwIv60z3GDDV2KnpxmfgPyMkg3L3/1QTmT6Sw987tObTxu3fCyqrroI9O7Z2x3tpwNB89kj+nCxW3w8GtH1B4tvvA7viTKvjoK2qGxgxy3Abo52mDJ/1+omM7F/Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IclDhIHcoluyRNNLc14WYL7n+f4w/QEAv9EYRUMyE/A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kPOXNy5dG+52T7cQJhjXVP6kK7FepyLrarkj+wN1lHpPLeQL4MqWxw9rkDyofZXM+a11Kloozxc3t3eEUWqtqsjyGIEqvmxZyIY983kslEoUE/8GA0bwYKOg60ayO+/cdUDCt78bkTI5bmfeyXBvNheGYUjAWce0/OOd9opmCE0fgaXuSyu4x/UyVBuKXDQ9Vkseel5NFFhvuCeXiUoE8DXjOFomvQuZOTZu5Mdcgit/1B0yCUMWjovh+8aOjzejeUtq1MEuDDqCvFnxYPlUhJjElRc2IPDuWF2iEsb9wyJ1WWioIOdQontAtWX5asWjvRVdAUNm1ypcI8wq3fNo8s8PqKKwM8a8FQ9e4oOzoW3aAaH44/dHBmwL+RBCsAB2GVE+m1a6gG23nLevORaoPkbarSVjuTuW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IdRsDbZZ770HaWpAGbPmKi2tf+RfueTE8G/PyUvhe3Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/l1TPUPjywpxx6gAKUOlJR+9zpc5HzOaIyRPNAkdAQy/uEUeCwUDhhihHo0ChOxkCv1a/ObXGK9O2z8f0XuiejdSZ3gstvuJXIyw6y/KzK37tnZDfz5419nY4Qd9OSzCoxNR3cWnjZVJVLipQNrcyeP3pCPjWHreQ1l1qJhHd0EzQ77Hdwn+TGlV/K3NTqFs5wnNQ8MS1UDZFJEVl8dlbg8tIyql02TxULgzsRn4UFG6JwvgBVU8rK2g2bt/BOR/JtXrQYgIclIDt4wj0nEFbTcX+1HLa06zKZtN8v7WbLxhCIDcDF5FLoZ4t7kBZc+/+rNQ9ulV0BfX3OaOO2u/ecNbYJeebCXe5Ol592FCS4AO5DwXzL25PQC7UXwadr8kbg44rE7Z4lS54760YdSWM+HBEg0RrJe0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Iey88t888Ik0iAVVQlt4G5BCcs4VjVYqrpHd7W5qo8k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PNW3TLgoqKvQOv2J9XYTKVDWVEub33qLcOaNajF1fm9xKq7kfTQzz9t4R/HLRMij0zm+cXHtPuyTpahCy0NIyVOcem3+zWuijawggZzhilw4QiH9i5N1xCDcmhXkN6TFkoWA0oxnY7snnL8pmRx2lF9iPc01J4WWTFxy1PQFCWwSdTrRKXOg/MKjpcm4Qtru37qwow4YQZu5RzYPbVwkhSqxWjMkc5h4kUmBfSnSIPhLfHXG8Y3N2uDLkadFQGIgMhiJXKE5/ubyc9XQKW8SLeJedgiDQGo/lbhG1Ms6XlGobmyrSJf205N0eVjd/O7yBJ9jLWU0LkGtHrYOi+u0zCHIXYA029AucQ/NVKtA3A42h+iS2eV5AmnWueynUt2CWHNJtO3PXG5pTiR9SsSussZj/VLdUzmC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "If602FpwQyCDXpFfmjWgOIbslmTKIUGP+TzAfPI1yKs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HlLZRDMF3qiOl8SDRDD/nTzEYfL/3lBfW0IYlFcQRV4VrRJNyJDK6nKl9v0yLjfTQ8n6/xFU6mRtq/WeKgR0u6DhdwKQp+vpq6UrJ/DhmzQYVW3I4KW2k/vUcAWSj6PBeoJ7q41/b7InmQ5LuG5PZE2ft4hkbOeao9MYTr0zOnLLzDg7EjpM7khzNcAWbZPIQF6x1V7h10D6NzCt+wV0ePmhBlkAuno+bIXUHvYxe5wlwteBXRLbcyl9x4iB9XFwPGAod6TpUT0m0TNXEsWPwrRI4POHBMCl/8GHzpAdEi2y2l4sCpY4IJo7Gm/JmLfk+WYdDc8QDjiww90j2xuyX4cLghCB2Oe5NX9x8dvOuGDe3iWHyTHrf0365GsSdQLJSUsdABmzUj/4CDURfBN0IHMv14munEna", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IfaxPyL9+zCGFdMiGpM9Xh1DJ3ZSZZRL+Apj2ENJzYs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qmrMvACMimrZp2xvIGznYa64gQ27PVGzhLrXDmuqIcnJmoYGiXzbuhVrQeKZs/H7YmTsHocMN16QQgRcJN2So3gEpeOJ/cr96+vvD2XUJoVG5oH9oIj41LaSfgUljZwdOQnqHm6LoitaLkRQ0/G1PuRQTYqKgq11mzXg45BUVOeRMKLMmRXhXVWnYYMr/p+skWsM5wB3IGvMipRRjyarEdliAakAwAjBYXGS3RjM05naI4kdhZZM0Dh+DWbgpjurw/vHsjHFOgOdFyb8APJ9+qmaht5fIEWjYKZROmmQztWTjlXLptd7xOI0QJ4Ot+GOYjI/PUyUXW13RDDzb8uqxipyCF9reN8R2IrwL74SkaC41db583F6SwR0GaR9WFd+xzlUD5i4UyptV3VhES10sKYk8idLdJJW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IfvFPMN2U8la8FcGtexKj3Fcz9SUNGvTP2F64kq1K2Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zvmnVNDi9J6XlQzcZMUPTOMF5UZxhCZZ1YCnjKJik4X+X4+FQ/Xf4pv2P9h8BODw5g54D7xzi5fxRpbF+/QU031IyFrMrn1d4UuPy5MRLwBYURWafK7I+yGElqHUH9ICm5lM3FD3g+IkVcT2vWB4zfjlNoRZOOTbL6YVT4LTXtQY8xPvYjulKRz3m/E4lzWL35Ab16xgZD3tzU36DS2Y/HIv5rmqEOIJYdM8W3qi1azObXug+RpArToPXkctKB0tIYmKzEZ3TEqBmEbM4fXNs9xcYG8644hp2n4+f0tQo4aZ1UOyYM40vwoQVSkP3KGG9KpaiWVxmg5Fr40K6R47JwzOuz4S8HhUgUDY19PHEvrhmWzxVuM/Vh8QtLY5ojVDAPxrtO7Y/80RjaF3xRdI5IsS+/+sBhE1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IhK+OCPtAImLQH0eK7L079k1wZgJfapKJiU5A1ZWvZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SgVez+QNR2inMW2LOp4GPW/cFOLrtbaRTe2BerTIrt3YbIHd0VXYuu3gqnYq8u3a58xuTyTHikMdIAWj+2SCDQzxlPlk+Ne4yWNm5cjftk5/esfuSmdoHf4Gy5YSH/3YxGrHHBwUJ9QGLquwFlF10K6w6XNonxNO4UxGHouXxh/btvuE61ucA3SzJzeKQysgZuNcQoSmJo18jzUh9v3n4388DZ0qLtnjtBlf6mva2+P0q9zg/48dFUENHY/OXSNd9iYbgNfwyxcUR0zX++d+qJn3QvinG4J5CnH4gcereBlcAjsUOAXEBwH2SIS7m+i8P3k/ZgkEYRJiMykHPJzl8Jr2Qwirgqafj+Rsneu+6+z7ilnf61zwDKTHOdHdwqRmBrz8C5vpqN5yFAeNpL3joiEspmhz2GjM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IhOWQatOChAIWVt1mKQI4V05g9sfa6nxHVVb2Z0VjX8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m0aBpdu6Ulen36SnEMZP/a5vWkNJ4mC8gJhXH7EqVNT9SMmvkOrZELK+sZTtiPrqTnoX+GMZz16N/9QiBHna+MngLI2ZJQt8SnoWYr3bJJFcMrJqeywtFTE5gZeMAxF80kxz6KTzGj289h33nrLHoHeTAFNEl8w2VCcemtIuvZR9GU30udoOSrA+uE472shHFvlmlM7gaYIQUzMFJtcrNS74skGOEKWufNe7umlNV/qlGGFeB6KawBSEzjRLGv2aJ9KDabo/OweOLu8oAiiIM5adJy0MTgn4AVj/Rg1IxiY+ta3J/oQtwmt7r10IeIEx3tfZae5blKWouIX1l73oyWV4GbUJG+C9rO7ubkcKfKrbNC8D0YJdc11h+OTD5n1kNZHso6oasFjo1ciKBLhOw6R0yTFsZcYA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IhZbqXyoKIzQixLcSarGqvw5GXVGmMUpYgVdLL61CFs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kMYW/Ws3i1rTAA9fx62VQH7+10TjCJL6UJgNZcgCuGYhy6nn7GlR06t7pJa5eOHuLaeBRnjKN1+FWg+hcH1uEeN4fjNNvnkW3yw9l/u2PEu+02R0owksTkVcAVymjMbjS1pl9o/uXUGGM6vJEseccgq3yajnC8PaNZ7yCL2E7NmyG7ZnFHx71SY8hxChLZr+nly4WQxhS21ImW3PYyZGA2qQp9iKKy6r7Jwqw9OVLTNVC+n8d6E0MDGVwEhk0a0QnBgkjfEKFIs/SDvdZWVra5iMKWmxBwBBC4bGpK306PFyLQPplOiN5wIT7NHbFl+MrS84bYsZ3QdYey/dYMJj0TM0xjF2kX8O/2fflFwLsUZLZPkn7sdbelME5+GUXZJRZeCwjBue2+84GI8CiLzVwkLufp4Hofi1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IhnnYbK7hOuCaNsc28a6BwKEth4egYlxhLFnRUEV0x8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Znt1xx9mO0Lb59Za/aAxBkl3osTc33WGW3EW1aL/WhSZWnBe5iVV25RgcV/XcuUReQ+YJFsgh357HIXp6lbLTXLNeKXHlfEvj7HcLUZjTMdEWZi6wStfzDtPI95r5KrxWb+ibzkpiZfdnXYuCpnevRhNZmLvt8m97JYmUvcrdG14Pr+aXN9lqVsN9Kg6dbLvGrrkItwcmjJxH2tRiNOBgBDbihr/LqE8pge66RWBOpEwWhfNx6N0SKkzGem0Oq3ZPNwlpRE85gItp8zk4Ds0THbWF8qRgHq38xQXQnQwI2E76ff9+6seqTX98v+Iv7YH1Qb4tvJGsQGf/t59loPc3btEgOXhtD41QJCiBG51wpz5nNbf7zokSHWltBEj1MPoNYMGlqlK/klvqr7XEyIJmq2G841Jp0k/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IiQVuq5y4KRx99B0pvbI4CC68ma4bEbifT0o0sPzWWs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nzEvdnVjWkn8DgEWIwhYt1iQpqIsIwldOKt3zecjo5G9qUB+Xus8qGoVX6VbTkQjv8Hlcr4kQtMjBQe5/yoTES/MBVArGZabRiveE1vFt//ch4dNFd+QGB9qx91CcQOGqxx/wFBCv+gDOOzqE2ADDm8YRvEkz1/7Mg6mFr7A78poCOEh8/aEhE9HkcTZ/jnmNWfNlu5EOqOuZL8nd1ZX2B7r6mvHURh01FtgZP2N6mTv7G9ZbR25Zawojyr3QoNpqls4vpJvvwStymEzuLGxoKbNQR6a36exD/ci4p+DMw1VAmwxQKTN7yTKHWXqftUrozPYMDFtvfbhnPo8o6/9n7E+UdS5VfdbxCxDUygwnXTU/kloq1DIxH+XwhSPHVlqVj0ev1M4LLzO9UDnkO5kRMJmUq27VVxW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Iio6wrGc9hr067iWPrv/AJFzF/sVtGbzzWd9g48kusk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hyIIgkK809GkMzcPYss2ZhUnOOC0u5gN4nUMPh2tqkB/5kYGLVWpNT2ht0oosCpcquyM3rNYv/9IE1fCsIt1Ua9cl1jsVKVKKzSCnV70gwUUa9JGlbs/yoxxIrD/pBs7qhjRv/sKJ2prfLlDsN5JyUx3En74EKvASdpLh46rq39BYZXYlXqdCr3rnBF2yEXmbpNOWR7bA6dhM3Bk4c3Ou7Sop9wZJoae+X5FkhdULBjX/aR25hOvsNOasMG6etq4DSvmcS9yu0Tvulfm5LPcIWITAK9YFbK+99IlMi2kBb9UlBX5aifumbEsNQOV2pwjaQLUY78MvaBt+nW6INymC3wJcCzyWrXbSWfAwbkP5TawK5Y9WL5tgty4COOlRcfSD8ks6JCvO+AdSnPNoXrPmJ+q939OqOZ7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IkCkoa/d7kP2WGuzaou7MZv9QgQ4kGlYAP8aoY2nrdQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9e/hOIGIiyLh6mERH6MX26mdnnpmstF01uBrh6+4ifFnWHQ1QGj7pPyFWwZG2qgkNVbc00mcwxVl0k6gA/9uDmxzrvVnn02XjD+B7pVoWf+DpTo5OFIqw9Nf20VfEZtbF5oRmwqbN16dpH0UQoR1vUoj5iZBt7XcwR+ZZTNm0EI3OEjT+bg0RTp+Kdbt1+Zy3JxZzRnHsAykZuVUS9Mo88vk4Qj4ctBOBxbYXppVWI2vkvzaLvYy024ETLMq07EHRBa4YV873QaD3rgkzx5OC2LIxatodWOYDFQe5L8MIVcy1e41oTqYImztBUqCAewIMMidkzyJ7kIEfVDKXOKZCBINO8lmYjnKcheWFg4kx/ycSIacgskQWqm+UWIKb57y6Mw6PEv9duQooD32r2gX1aWWNVPAwwWn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IklPOJIK6vXltwbevmX7+bvkBnsrjrF/hj0ProLdnak", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hWOjsbpwbaEmJM8k9Xg2qNMiPG8L+gpGxlmmUxGLLw4bPZhZxfFUj/SBKKxIAl9WRLNLtr1lhcBGph+1+adtgZ2E+qao0Vd4YwyCT48Vvt7ZhoWIkQnyekWN4KaMMDlye/CMapDzG/odI1ZbzRsdUD8GSoVy45uKEavoPBuGlMr7FWHj7GG+PqFEAmMJWPo5nP/h7NlWfOSNj+PDeG9xuDFHgp0AfnnFt+SQcDOrruTkLmHiwC8Rao5xotoDNpJyKVJ/3HNgRo/ouwFT6ZQ90uQDHTeYh7QOSsJYftL11qWcrQD9Z7Ymu7KF35nrNZoKvgZF+MGkd7h3rtQOINYI20kQcqXmgjYwRn3Xua6E/SUziUtdhO9tcrzIERORNHGG5ugG9GXoe7k7YzOHRvD0qCIVIXptJuEY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Il1DL+2+TVsA3SkVSVl6HB3sxEQDviYFla5xjcqGis8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "I4UqZ8InRqwH/V2pI+te7GZr3/vjYH9Mwt4QB9qlZivieq+ow61BCtPKkH4B5J12BimwHk6q2c4j6TaY43FQ50by3lbiGjoabZqtIGsG8jMPK+Va3fMmHGMHWq7vXKn7T2oSl57FHiOy9CJGOO8H8QcDKc9yGyk4I9iXTT9WRkiBIGKef4Z0UBpxT7yKCXN+1cZj5oKnQD4ryQUKOjyyOpWd/MJReB5vuUED5fEAuv8tHyM0kHB+cS01LllPJpBtSQnXq94LiHEeNiXug68JJlOpB1Yrc7+rDthLeu/t9+Kd5qQblMH8OUp2T+ud8P0nPCGT71Jn1OAvF/jH6S/ePnM/qkj3G1v6bO3laP8HPr8PAFZr6WcqQ0xJOBGT3Mu/pwpZ9uQRK5iJVTu8nrfeZCyKxnNT/dp5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IlP70XCYYLwwxa8sUMdFy+h0meth+ngJrmTRbh+2eg8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ebonntVON/rsukg4+YkR2XvOMpeOz4QwAOO87AtO8Ka1t0h1CrmpZOwXTTCnnFXjizxo6zRRrEh46foE2zP7dKwjdIoEVK81+LYY7cqlrSW8O9rsIQGFckoE6I+LMOhuKzImq4sSMIS4DnEfmpbUnok78Kwz6y5udysMJtgqcY4+phOKeKErMmy1E2wKa+n4QV1tzNNfHiY/rcQorECG1SZ/Eupcuq17UvsUgJflWzq4L6e7dGyvDAZC/QyAmiDkQD2LeiHZmtNJAvQ0IGSXLAi2ZxbztyU8hu+Dyl4pYt5Q0RhAgXDHRkYdh6rLmjSlUM8uJSGnsTuZh2J78/8dL7zcKsosqfN1PZtLvRWEEpBEDcHuzbcVTiCn2XCm+8nHoaZn+ZJLrj0UIxcRpsQsj8xjLRpoxQM7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Im/qj6gJfdtu+b/mitxKoXp4IWiXcJKcZvi7OvdYILM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T0PukxVKC7p5rYj4f9Ll1kKhKJTXBJi6ilLW0homfeWwPx4HpbEwmhHj0Fs1cEOVLKODPX0PRDzKhuEw7nMPnRjjqwd/qGw4YN3tOHmg8/9XafKetStc2Fgw6isTvsOWamfhRiplXBcr7B7MtQWRlsUsmCrTZMs3ikve6mb08ucI5Lqe2eFZWi2O3pPxiLQGloFjOvTU6Ll2oO6TWsCh2A4dDRleReHPA1I2RH742ndmbHCbIk401r0nitPJb+HlRCP+zEk5XhzO7oUaQx2SaxTV/vdU292NLJZ+e8cXgdJS44UDHrwPmsgE8cHIKwUlqUEt4J9bhAeAanwtv29JK9AKeP3c1zIlXRdPbbAeiO+MrSbPHuP9iuhW6NWvF/ZprznXvRrOX8YwPhIK03tJhAYu3dXmVErg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Im5Ta5l8Cw06+gvmlRMyDS/6z0Jjb4nPHJmC51bqCHQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kntUDKmlGbbP3STeD/YNYptbKbcTVMSopvGEE9giw3zHvpXMr1Rn76XmzUTvsj0zyP5iXJN/xW/wSdzqhreU0xkBmQIFSPIzn+bAEm5ZYFN7bYPbPbmRM0zqHoHLRJRXEe0EKr0pFo42h1ZW9FKR3VH1w16Kzaw3u3s3gv3f+sgKbmyZE7ZQL1fb2Y81ocaMzh/tDdIJhJxJ5Q7swJEjyRpVv6+nlc1wJJ2MWsMHrTzSfyxmpGmeVUVdtjShW5Tg8a2GfxYIbJtNwD6VB4uQ9ZN38YQMM34NxrrWAmpfdHWytQTxZzCtQefNVnuS2k0+/LE7cuVvE7Pdz5DMu/ZGSTaU8a4ElyRY5tTBcBRFVN7p9/0g6ilBuDpNwu1szVNgt94ezGDfZxlJgDu0ryAfjs6VLSso3C7g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ImpDrMM9PJTOJ9R/DzoIckK1tAsRJqtAxIOM5O8cgK8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QkbHE7PHftY/SzUEdV7g6mHAFqXiBaXIaBKdhp1pYnozGLq80/83B4nGjSy1NdwycaYFgiQAuuKfPJpwNN/vlS4Ko0QvQCk0t7SbPIxCf3y1aZQLT8FVZ3Q2H+Eb1VT30dgOqudUC7f5c59tII6mAhrwYveELS+q3MMl0o7vlIs04vWtA6tlYzsiGupGRZVWo42FBy3qEMbn+TKKyIjTXZ724Pz1x8gg09trsyhmzQyVbgmvhtD4ubkM9SGS1fiQWRuD4CGu4iBEltej+PKB0HMOmFuU1WTT0UjSF5H+CvzmGMuoo8XiMCRc2F7s7Ha93K/ykA28iAPKfLjMwODWZcW2uzyNMjWR4O0ZHcFWsEKzNOWrem7deY7mjkIZG3pNn7ZhZ7P3EkrVXPK8nhBgM2kYgVxhFqAi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IneBNLQfLyQn8yWiH+jTfnwHFenIXhiBeuOShUvzVhE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1aHJB9Mss5p5Apc3zKitLKHrquWjso3MJs1ALBn5dH256Uo8WqTYjCeOOGzaQ6fgSPlUoNA/89dYCYM+G3i/6Ps+NYmTBQR/pKfGkX3VYtUigcfBC97AjalxDziCzpzke+xoLCwYRrKg7ubzvDCmIq1/OvXvMDLGNitrvNzeF+D0sk4x/bUgqKc6aORXF0a7MsHiBsNwWrGeW4sQhn7WNEazWFg6kluMAGQ1Zk1n3T3/6hUjVwPaNIDnyXJwHtgi2aApj/+7waUb7EDJXXWGXLTJO9c+j6BL9E5hnuZwkU9yrFL56DajKBExWB4rnB3XlgsXwb9I1atK1EKQwPap/P4aXzyHZLPzgxZcSUQ/C7ZU5+dfib7cCYh4DnhjBIwUx6QomUQC2ULstMr2jPh4PNK/Ce1LnNqd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IoszRX9g2D+h7Em7JRrEw24Z2WUnXFWwhZxBjbEb0Hg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "04QtTt3IXHpyf4C0dpgKLqsMLLaufX/pAQKGh3PnqRJzeIsLPc4AwbtrkCURmY51yhxwuCfTjGLFWOkBv8k+5cknNssSiEHXojRE87vt7lwKFcK67nEeM88VE98i9TFYfx9u7Y69lgfytJGnm4C4oReQiBvr/Tz6YV/J1HqVQz1S2njpcFIJbv76YOH0AS4dGXrhArjZpV09y6slFd6q9DIjiH+Q+xwNGL1I4bUk8Rno6cBv6BY3IIL58MqEojDyR7YnRPLfHypKp7NkQGmdNToVF7LSVZDXru+ht2EHPXG1N2FJsuwtT3c6jtMfEU0NmyaQU1m2se/CqoqN+VanCdXtnPPoRXvnZWivtkvlSp4dWYqZSKS50nK42sfywjx5qmCmwf/o+XgqU9s7D2Fv5uvAw6grC4LD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ip5CBxyfHp2y5SKxI1fxHBSxPvj9d3mGOjD34ZmQlBo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QIWX8ER2d+TojBXIyEVAGaQOUi8zQt9yL2TjjeYWSuVqm1oZhNFETPgmb/kJ9cCR4Rbp0OliRvWeqjvh1HqmXlAztJB36JG1sjjhZw+KCMaiS78hV35xpxAhJrirTGZ0JKa0DDCcQKXN40hBLfR5IWsWFcNp3wUVxgIzgawjxUdisxdzPIjkDrAuHCM3DPRFm27jV7I3pVZmYblLYR6zyhK2bMrb8AUB5hmCDuiQdel+cDnguW9YIwQtXK3dig+OXsXBW/05Q+VUBR6B7kvOB9p+5C3nnjc8BbIbdmElyfp5RYkgT1ORRQGJUg1MXc9hyOddLtXZEaFVf64fFloSPuGWhrRR2REf2k0q05cLlqC/mxfIyASQZbTZUDW9dvmeELobyTY0f5efC+NPAhAhhUZ25iFL0GSD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IpbBHCl3AEPew3GTVBrKvVYf2nk13Zj1WWl0xOdu4FE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iK1KdxGtbX276fth2aji0WNZsr4vhyElxxc+xyZXPFskFSvKWOkCgSguDrhqffA7Pgz2+0fNnqPn5cOj+zyavf9ITvC2ckm05PCXOdCZKKyrrkKwLQtRtc0EipCM3SxljJnffCdXgfXM3/MiP3zrcaCrFq5qMH0Fe5F0NTDym4MUq8VL0NRJS72TqDfxbG9Qn16xiz+yCrW9dQidapahXtyRnceHAMeW3cx686oi6+bGKwA8H7LkGfsYmXRjDi1pHRTkIwWO+HMyuuLBIvshZcfWCUp4mJKoxLPiu1ltD5dCc4uHLYx7QPjG21qhzHgqgy5VGX40FqxeNneBkf5vUgmI5XvPLCHLCnYBnp8hW4jwwI0jxFOOiw87JSd0P7+AEyMMFckrGM8OUyQpglFgCQHcD9R2rQKk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Iq8hF800piT2chNu+EcEShuWl/fMdrFeJuhVCXvnLwY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TE3cTBqLWDZeS3Ogb/5vUWxkwUqgtU50g/UoKAsD+sthssy+VaE9A+Uc20KIcbNJF8jH9ReildJdTF7rRNdyNiKgAONMQOdg7v4A7ZLQ+anmZXRlOAiz8PfvxxSu0LQayOAXiIZUIsitfKlAUNvbUYRxZc1Zqc/BxhxiLcqerMRDvXEK8bpeKUNc4Vr2PZxcQTp+OAukerJukE3QZFRETAdM5yeQkbFpZQUcp0wa0UQFFHDy+aG47Zz9ghnB36cgEAd//7e3b3ufK44iVJkeUA1UVH/Ka3ySWeb02vAUMq477d/2TxMA29TuT04yDEQgImQptwVo4pJsM+ZSItNPSXT+kAnDit8nMOnfy2IRuRwctJQJSulpnp84P+4QJ4uXwA+mleRKEbOIEFyUxbUI1LHsyAICFtq0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IqL1OiNfSmSlvK9zhHKN8N0jnj/Eo/lC03fpsCUh+RA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ub7gDkVAWjeTN7u2JtCwX5xbRBx5bQJTRRCcRaKSShNpl6s6FSUDit3UbpZE0dZylQML+XH/K+DFMude1Nm0rv7sCM2Fev/yTNhr8KeZZykcDYp1Ps/qiQ+8fNu4qgxIIuF6YAZwhrnloR35+qckAbLk1EZY6c/eBjfQktkeD9kSRdiQDqIiY1/3fb/4zXLB6NfmDFbhybv0L8FRYkXmf9SbyaxBpwmSfeTRkFT058rI2n0Jj38CHJzXHbJnXu58cw7XfsAmaRUnu7DuKVyeNw1Fauo33EkzX9dmWZarAeHU8YYiVAfIkRDKTfFDWm7l6VPXvfeZCh6DLDjBqQsGr2c+p+JypHxnciNZeADQS83pqIjexUkh2foxBnS62hmL8emAu/T6HODSnxgStkOcqFzu5qVBWSgs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Iqkz7VTLugfi2g5hlGp0Xc9l8I8lKcLYlgPJv6jO/hM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eusHj4FZIrGcLngzqQEMljUjOJZREs+7ByrznvIQ6KbnNjw12X8+HwYAhk6B/wZmVRtEu0LbiWJOxH6+hlaxbfW2AmHsJo8PqYjp2sB/qoz7JTjdt/H/31Z8fTJWP1srAImfA0zh4LQ/Qw52big4UO6zqd6W1qn/T+BK0o5e0GkqKTfxG75mNpRO5llJ3CjY9L0gkUq0fiDUauh48DOVpob4bAXlpAzdtW5Y9dO1mge2iGlGQQNMM2Xn1Xv4u1c0Auv91HVB2e+VeT0lgKpwTQUBpdcNILoUs9PAEhRZ2QrhHg3RJIxkBv4ziX4miJOjGx+gdcxAhPUYTAu3b/Yf7++l29ZYCZDQA3+Y8zngusrpdaxBPmNtzlUkmg8P+se1GxYH/2ZVh3dVajg2f/5NyWJYmkbw6Hat", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IqzFrpimvU5hraU4q05wyO4YAneCccYqupHr1b8wiAM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OuEaom2HM3GPjSt/DtdxgWaNnFP7/dzE2GE7ErsJv2na1ekP3OIB7mTpJb9Cgl07oQMPDaBcHAAxHe4BsrjKjsfFd+9YeE6ggFjN7L9yXTKhS4bbjksd5p1+ABmbkYTnGPSYEcFhtOqsEjSJT3ZbPqzCCgxxLTkabPAEk68tbJVFO3sPWCaDK1WC9mAPM/lVCyqhk+HDPj2vt+tmhwypC42RWgYsx9wwDuvlcQYh6U2bS5KBMWT+ijB4lSLKccI9+ByOuAuWJ3R2OXkdiFQdbQBvwMyyw+MQ0pSAISrfztQncviFayS6j+EGo1ImY1QHD7KfYnSLxg5hG3KeQCgIEX1+wZu/FMdJ2CatGn39myhojNPihMHvQQMz7i3RgKHZ0pMCun4rj2Rp4jTyc2tHySfAmBXa9jgv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IrYbvYAN2TEAXdtxGcSzfVpcwD+SfoRkSIR6S+J+5zo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xXETMpBw6THFUWFTi/I6iN/IwhQkbyjrkcRozP5DAd+AUnN3qNX5eG+WQdn5wO0AEhvld5ncW1TBWac3maKfgtKFI9orOPQf5C3hTMiifOkXavioeNaKtSqQPuZn11c+uKMLGg301bEAhKGKAiXEwQ9Tn814n0hoNjw9aUGo7cCwn2leBRVPhkLwsJF6K3pZ04YF5tirxsvq4HZ0jHGi6asYOosysvciPnCS9Bd9H8mprXSnL3MENZg6ZWf/FvA0+LmEUtsWMes0t7qm5X0s/91FjevUeb+R4itv7XLuqvi+M6wuTuBRGPbZKugcONgUQG08o9g0n0MMjOUJWqXLJm+Mc5dffmHAKTdqT7zaCxF7iE6VE+rsrerK4Y1uIjsd5nvbScmg4rw+6DRHYvXLtw4gCGbpiibF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Irj0zZHVCwpStqMbXzaY0q9thyEXcnX6RPtJLNwjU+k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "J88BcY8kX0Xp+g0fPgWWflDnzLOXplN7KOse5l8sdOXZ5cRExlyfKvrq7aVxrcjXyFfvBkH/nVA44ntexTzxAmREmFWj0LhVSE5randCLRaxv4gTuSzdnUygvi/Uc8x+bekW64J2Q4UQ2X9DsdGdr3SjD/szEUKhVOPLxbC80U/FdaT22Q98XelU/P+TZbDVya22ncHBGb+zqyA1IALYZzzfq7UakniiRN7YFYSqvSRl6g7m1j0Dw1lhcqiCp6GD6nNgkQiSzNlKOJgaK1vsYa+xFKudANfZP1m22uhc9ygroRGGvr93IjJu/PKDOgy/Hr0KI/nrF+X/xLZ9LELhW2/aReBo8YRaUjDw8FhR/ba8dJxQyWpikL2XDCiwZp2WSPXRu03jHnKlWgvvDhezAGXsSMqOK79F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "IsEFnzir5c4ERZPKNCg4iZajmI53HQIQrG9gStf85l0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tNuKmiRFT7alTuQoKFfdDAorkypdqkAj2CvniLrWUpfvIFSjjgISE0Oaf/GmISgr30nWyktQzyXOoVDWPfIa2T66vTW4Ef9OSgwpI3R4y8Re+NgMbZv3vvuYsFZOVe4THfRq6h/49yrs8r4sc42t/zERNPpeUQDaB7v93iO4Sgp30cp4FTjJ6RHi0Y0fezS9HnF7fMryUH6tQlWW83EpFJ9q3qCSAM9DOv4Z0f7Qw3KgMpV90r7Ns9BLDCfQH3ZPaQytPSzBWOuiJS8OuNodAf7mlY94FgI/dBhuGOkpl5N5xaXTe5Y2DnPph2T8B0xOWyzEQYU/wHLEZ9Fu/ey/vCCkHAZPNZDHPV7X369+34gzI+GWF4zm2QWk8eH0xUSDwtsMqGcl4TCoewP11rsYMjKLwOrbC7qj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ItI5FVUpBKSHSENtH5VFk/eYQ3FitC8NdDP+hKNWYLc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uWlWWM7GrAPzwUe7fLwqxKM76886fnw7O2S2jvSw4cuaWWjtMTYHCKRYpww5fvQcBk3eeDE1i5vWq7n0WaDWW/Q+iHlGA+9PPJOGsDNZOSKEfb/1tpOaw9U8Ph4VESaVnNK7o3dOM8GlNcwxLelYo/EcSXb0T1wzVYXjPkOB4O3utwQSY7sgtoaMekbDxzXkXbPlJ2VZZf98/q2zCyonCV8mBIGL6aDLUQ3nanRc41Dc1Jxa0bgsSl2gnSscSsE0AwIJuTJ3z8XxS53a2hWczavu+J7v86PuUlJZwCyQ6mzc/2Gpc6NayIPCQ8yb4k2sOh1gTSynzdDEoFeLVEgcDqs5+Fom2eln6M6LbxgNOyN+6L26m24zjWFGu3XvSJcGZ9oHYtf4werwtsXa+04dT0e1klTC+XG5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Itj7QGxS2038q9RNvs1l1eRMqmlU+VPYNSL5josdQhk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wsd1bDP0X9YhJ+QMFabZCjnNwrar/dCcdyrNS8M0Szcp5ZS5MqdzaSibu49PN7bkcw86q188fBNgbMzcUpuyUMpYiQjUsdq1SyLvYMrnRf7dKNoX0zGA1GpuFKz7ShKDZRHej1iilca9Q4G9tN+CZjNqRSXD71W56rzNqgdu0Lo2bXQrrhn7Gbx+XMp2Pn0rvtI8nYqRb1YBXBCJ0Mk0jYd/uivyiRTZkKY5hN7KN2COa6Urg/xQBwmbRRO/PlBSfCBIXOlRdN8044ftFtwmnaZs5Yr+5O4gZgu4wnirltSjAkMk4nfw96A+hrqXG2uaMefA03pEA2dcsZPaaqskKlvcF6bK3+dWowMigT4COWDYUlCsUT55+sBCYtsgHfB9xlRPCUj4IX9J+o0zzY0CID8d0IYCSdV9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Iu8weMpVz5O5EHs2rzc03UV9ZiBIpY6R0HZCvAQm5JA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TyNE+fexYj7upb6aYgXGvZ37Jm2TnZADBNmIsnGjUFkTTfJO7xrftcwB0sPLKPCCrcSdVu2gv28ebyRdbFsw0P89iwlrLWDNMBvJe9EBgCjoDjddTyv6gaiKH3TnsG4RIxn9SeKOVERUp8tlgs0Hx1KCnC7OJpbBI4bWmhFlH0VH9MfauyyPdb7ekFXPpWf7DyEbQ7yRxqyOKAtv6JymWoMC2NrlN3PYUx7sqCDDDHc2RZ62qrPCLm3u4FWNsZ96zixnug1scZHR8KnTRgDeu484I2qOAIRiPmJey/QAvUHVSw1MZT8gPRycnJfrWjxmotN9G0z8wah0KsB3OZ4YJAxJ4icMKyUoHpswZI8zarHoyuJIMRyaXsdApgU4proGxJ0dlKBxC//vbWMYMEUptL5QuHD61HIH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Iy67pIfaao/OPKcEB+JdZWlHqGyhf1vGyftSJAFPrbQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eUXO6imfbWVSpeefczsQzfRFTinwmfDTi1dPl21Fg2p+x0vfNynHOlknRfCvGSdj2TEk7exBZyerk7ryvKD4CbPeYNfii6FTEFjX/TJk3s0C9Y6Qb9xp3fXMPjC6IxTA92Lm2+LKJ2keZLwvCJChV3lZZ4KJRIVynVVTmf21Hmf3PE6avUfTaN4qvf+Mh/WT4eZKRnJ6qDfm2kM08IpDjfPD8QDhufmpADpSY+mz9gRP9cMZpE4uHlbHn/FD+lP8fAkDrP22GgI2loCdvGilLs3SVLUyXmUCbKbebGIT+ohBC1nDW6YaG8ExOFLWMmqQwo6oeXuzJBkbt0ajcySJhUXYc35RaWw/qFVZGRhmMmKKSxi0G6d8c8oiCSAGaecQv6HGct6O3diKvJ8+N/CGanV+b+GpNdco", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Iz+xaXufp4j11Fm2mTLwV2yRQ3B/5+gPTu0+O9o1vXo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Me4Y/V1cMA7f41tIk4T6ik8IJQLyVxpNqdNoIXQQ1hbnZAlpmkhoV5SCsLrLMPoIpRbc0VVABlG9jfzVedcSrbJSfnbH6A5T+AP4zyRXwUoTi6Ik9WeP5i0LBr8sYh+xlqah/wYtDmCtjmMz2hBzRvlYMQfhTJ8PdrU66anzsptKXsOxjXjAwj5bYzufzwwTTGRgorHPRgOimw8QYTT7l/FOEP/ZIUV9Qb3j4exQdbP1uuMfDFk2NGxArx/DrcsD8mnEqqp57Z9dyDjAD+ZMsXvtalfLxC3g3ih+RnjQX6giRaAoq2ZJZv7CEMiZaNNm6ULxJCNOFNwBrhNCaLuHsnSaVgoGm37Whx1cmfJAyrRL4lpIXWrWmIPpIqmE+SPAa2WatNUXRjRxDcj5AARtt2RMBoYMu4hr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "J1BXxzBLfLKpb0lVUcYItotxn4C9pkQmDm+VLZRN5Oo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "H+etOWmQzUJvBti7NA+gMYfs5pUSOm3T0f+6y0ACdEu+LRj5tvWxsRBLvLTbS95lrWo+l6PSv3iTfKVOOUQG6dNPb+uNh/YzTT4+PTr0ZmN8JFstZSFm+R/4x0TuO0B38ohZNWfRpCGTeUtyoDzrt/4JqI1gGrbEGGzroTGsstqo61DOxOVfuXEBDvhqfmldptNSyAf8MiDUB8rJpziCh+76LPI6Au/xWEImRM/ClNzDkfNLGX9SYbBseuEGfelcWlQ2FaPz5YFXmCzR75USrkkiaDWLMMY/B8tXgDO+sc+enj6YPQY4idInRtouCAjvWM8XLAo304gVY95p73DWSxpZ4ay2RE6yuXFkeHkWWOFBUPfilF4UtbDx6YhGgcPCijQ1mGeRCfgkUsAYl5Vzxgiy06PJX3j7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "J3fZycWjz6FNwqsMGHXtZw4fwXioocKBcmqFdq7RBSY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "K7rhV0fQSfRKT+8wprIpcp3srDqenI2nWgWcXPP9fIPa8V6vgtI5xiCZ0Dg1yYlFbYrQvA0kRmqIzLzlKM4c7tgUHEz6e/UGE7c8CYdhsG1hSFUxSeG+U4y/ihxsr4mBmkiUa79gevTadVU6qtL0/0rqyyFh00mLa4WBwqBBt/6eQtAddbq5EQb09lyDKVMUzjI16Yh9U1d8JhC+cf9FrCMD7jUxbqn6yxD42+brTK4eGYxQ1ltP7+odUaKaOURhJ7cMgqunRP+FRSfbSBM6n3cQRwIS6x0RvTYRDYWHDvdTSWsZkl+k+R/16IdlhT3jsIUIsj6qexJM3FZJlqLSFiiJQHgSdCH5KwOq39qz5VY2EZ6NvE56qHI5p+qb6hyvVkio9m3nPJu/k38dzMPBcUMK4Xo/W1Cl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "J4b4sRCj3aoy5FVSkSZZcL7sVdqV+lV5p7+rAYpXe6E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zSHZtuMyFHR07UYIyUNeDoq9LssvjJ97S4Xue7mILDZUoNXfUxaSK4ec0yH3UsiFWPFvk/oOIBLjldV5RgeQdJKdvP8uXzXOihJWyhLiTUZ0mQiCOUWOLLCxqQTvKF5n2JASOUf/xGfKlTWasFdwy87jLoo8YNjTcKXzHO6kV9rbmwmjIMJ0vDNkFT+RlsU9OHbRpFaSnEFzcNXakQhb5cS3lDLE5OmR8gEZuRk2uAgxmoKaT3mDpUROym99GpJGdEdqikiPaA8QoKLzLzIxSZkrSGgZVMgomCPpEO9OMBWxCqwcDtRaSM9VS/74nNGMCpYaeP2riUJfT1TR5iliOTk0HMdu6RE5O4zEwuPOy+ohW00Ptr1kyCvBcX3wAKq8iCC2alxvhTmOkH+jx7aarg73I2PvsRUw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "J7P34OsUwYXXPuhiX4BwCtD0Hbpf3OvuMrT1b4f016I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YakR5a93bbaw9/wXILnRJcxxkCusKTXSACm0UOCqeDzVzSdrEkLYkxB4xkoJgjm8mKBjW9xWoO40Vx9NHfLsC8knTyrP2WkpOe8CbyigiEwLOrOtQNAf2fhB1cJ2LgnBYE+TiwR7cIekhLzp8hEB3Pz/EapthvyDtGPzmVXTiG0rN+5H/Y5L5qEejRd0H2w/6bOsliirlyz+4wduryDMuV4pJfqc8zvzNQQlF4FzGj19IOLposWSpO5RLzjSiz08uk7I2MD4hDGDCONBhduoTMqDkltDyeRYLJVUYWYdrCj4KF6QvT5Nsg+sivHfhBkQFRrVNm2DxB39gjC8tT0/ag0IMGyRDij7mOlIwwsRVKpTc+p8zl1n8oOhZuhIkdbjPf93BfjRZqM6H4YlpTnzvjFMXMni16n3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "J7tokEWgwOO21x+8xfrkKuwAEFVgLx1Urfkxz0EZGkU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Za7gdtjZ0/+3AalTPqZkfMCUuuLO8IfBWI0s3S1pBu6uHrJt/pyprUyOLOV7dpz70SLvZzFMPx98okSIxFFJyMYjBSWELTeqX6dLLU1N3Qr2lYZIT9wrOKojiEe30mxusdEfpTKmd0EQsfkCjwBVLBYV75KB/6xyqjt1gn+uAVWD6/Rpzz++/A5mfFDMEV5QWYzajLb2B2zi8swyeQSRYGtrUo3YINbi3GFfqMYpFIH3BDKPkAxgxNYm5okMpmoYnwIWHqJ+HpEFBKwsyJqpIw4pDNFCBVKYoD0ueUtpmc4yzAeynvGAkg3TF/zui+JMUqTHpJ2QRm6ILDQkRw+FhjjVi7I5YRdlO7EGFBhXDcE9e6hNrKvUIQJyyOsRSX1w0rOzp9NWmWMcR+GJAB7wQ4nyChfv+mgf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JAn6L3wEokqY7cljQVII5ORMOdycBI0VkAJp+78SYl8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Z5nVtU6QUmDNgUPd1r0OFQHlFLa/Re/EU7MWnvUVPKZ2Bd+YpGGV4uOioMpO3aCcxcrQCvSh4qfsk/Ck7F5AyiQO9jjtF3YJ8+DjPWbl4QJloj08iZ2oY92rt4CYL9rwZZPfGbovfn8AlLDbd9ZZFBhnABOPxfGHebnDYgwBP/kcLkQbr+aTrHpVk6VCYA8ZaEOrq0E9fD4UAYopjvecjGwmBlXxU8TYsgHT7vagXVxncDrsEstSu3fxiguY1EIeaoyUGFA0+BQFvNY5hHdzJpTO5oKDkwT9VDSLbW1zp6PdXDVZn89SbcLrDYf1reMuYvdB21p76igGPsMD0zeFZkOvAFdKmxOC5cwhhM0zTbXkmls9aAgDuuCV/y8cXq61zbVTiHyqMXKFpBW73weFin5emETz3OvA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JBPNgHW+8dBWn0TslUZtWgXxriFsU3RZv0PrCU08+GI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5Ped0WcAoRnJ+1Mr/30eUeTAWDcXi71+YK4lxhgO6xkZ5173N1cCH+wSQUW50v7LoZgyDg/SZljF8hjyXlrKCND940fM0bQylxSPIoiw7hZjpUdkJ0wYRJd/UWQXfu6rd2kQ6fX3RiWNmfpRRwZXcmmzGG5fXqHjFlcZiEhzzkO740cP7XCbrFqb1S3VBoJdbriAzSCEoxef5FFfkbeJjeOlnxDWvkG6rEfPE79AO1GQh8jA04i66tN9LbPSSZgZg99hXTNePYRSe1xDheIlLHRmeX1tdkrJ8zeBGVn924U89ZAr6a0pVEYlrijuF4FbvlZM2LIukfn9/SxHrDfa/4C4hB60vy8HpvHjOMwCeKygwQs+hdLLyPrulmRp3eJG1JkyokYnytvSCzax4i7YeGUuhu9pz+TU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JC+Biyd2Z8L3fGBPlheiX6jK2UrOrWcQS7u49EidD2I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ang2PffixkbIZIFx+W/tD/waVd+bsL7RZ2ygouxcu5Bj/eMmIzgSjCLFRSAznLUjGTj4HXNxhxXpTdpQzG5MkDnhn0mFlFqs/AHzYi055ab5K4nlsZ43M3vCVox7pzP5oiXfUqdAN2pO4XlKaDdFhmG/0aD5jVbu8MooBefDVc+wfHqUXIIaboc3M/7rN7ZZW9FgPRyAI2akD/JDK68x8SejgCSWp1BA43USn379mtJFmcGh+uQMAeAfl9aqjoO/lb0wYtSpTMUDF9K7d6i3AQoSDg2oUknDPAHZw7KLdrAKJmreQJAOhg5/b8n6PYYdNgtVAWKjJo0BG5xSwxm0rl7w+FwvS4tluNIXP7VBrpsUcjItdwG8iM+nEPQUuFoBqCT92X5cqSeGAt3NZlAhHlBml49pCThS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JDnsIAz7e0/yzFiatWfKQzg+FUQeoTtCwIIRyTcZ1x4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nq8AJckMDE9v1VCAA1PWcJ0RuF4GtDeQ5OHnOYb8jG5wsSaznWI+tIaRdO5MewCWXbHG0seJNRFAiCX967XYum2IMY+1HXrC1CfvO0EqXN0uyCSgXUt4Jid+US99iSjsSI3wwT7NTsxIswYAMKOsPNO2rfTBUETbPJKgF0xnxC3HuUZxie9KCmQtMVcYgmlJynmpKh8BOZ/tm1XVKH7MvC4t1S+kPLlXC4I+x7cqo705lhcc7N/renHBlJk+IDmcbLQes2NAquZryNVpcsyq+Y9NIzt+2OuhUEyc2qeV8ZRMiHO7l1/1eFcJkP82eIFx01eFt3n+Yd/EX7D7wnHIWasMNOGUVCwCT0hYxpeLqQpERXVtwGg8c4BNt2kECV0bRUbV/SoA/I/9+lgY4/IKhI4g8CXYzWJk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JDzvpZLG9I9WmB0tGfR153LlQOsn2SSwXJuqo/RmT94", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iVxRbKBDj+M2/B/LW52Yczc96f22yi+m6wTxfXz/V7HXNbc90ujy/nqVrehllmC+4U2YIR28xJTdjeK1uot0pcNULi8hp6wQpVqtfLGw48yloXTNKjJOVLI9yvOtxe8xfa9IlNU2QPitZRVW8UWh8Gq8sm4qcoompaRjPL0TpdXvnltP2CcoT3bD2jTGkL8bKoSWwrFHI8yo6OVsl3tXmQRJSxH4H+/zRY3ic85YKG+fcipHrnvIvj42kDKSOB783DeW47uHCHqKozBXkpig2T33dkqUuJaAMCbitUKUK7IukKLXFfCmoknI+VwORW32YizoL58Wm/oLTZ8qRZZhOUMIm7TLKnZQVcHcud8XN0BfCMFmMgqeptnRUsVsJE6fNxHRgC6AxDwWEPhiydure5Z+KIj7oz9C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JGKBdrVI68VO5vkxASe9hIhHZFnF+kmSSGIURtkHnJI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8nKtNc2d3wEytGGbWjjg9gkt3CfgiibyxbqKc0QOW0htCpNX6f8JP//ElTjakqPrk++XBr/oe2q44/W4WGHvPjr1Ke3eGcvpcdv2zTBqAf/Zk2JvmRIfc9IC71ytpc6kCNroRhTdrZLumFOw0EjfWPI+n4BifyAsiiS50THeZpcSEt4j9nXa/YhK2RXHMjkM8kfNw+lxkAwirc3SYorDOOWKSE2MTMUJixNMWxeMVvxH6Q9yXZIRQu2F0Yj5rabEA3/5g0xv0lz5LN8ci+CACeJd35heK5AQtDfRkIxifFcBuYKe/9mMR97pbjR4+XzKyzmIPH6ZOb1VFJftFScJhFxED92TmPXNhZhrHzXOjV02aDow0bMVi1JhWpTkX7ExlK9RAVrQ6KKwsSoHdOtB88S2cXrR/Gwy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JGsyb7gZj6fvaCwTE6GpsOIS4qoyKvPTdRDdKctqWYU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hTvT6vdr6gAfQpKZrfdg2Gd8W+LKh8Mk+hwsk6F6C7nidX/kFtOnuj0mbKF2R7vi+Nrcy6UqS+KnckjzAuew99/1I/d+rmJJi13emWRhWRwfkXfE0IB8NrJLSJvnVOzMIHZYtQ7cXoguXwX6VG0y1g3+DN4N8ctXLkMh+1MRmQ+pkcC0oOGYF09SUEdGR2iGwhU9xRDHoRmdAhLui4ACha983111AWVHWZTAcsscU41IAFVwRnL8UatsK2kKOBe1fofJVCG1ZIEzRGGIn+8veGI35VXgqsxzU2sJhAUVMeUzwwKpZHkwjCogbiYyt/vitrhJeCRZxcBJoOw24hd6fWZ19gDHBKAHq4wF4PrkbnmKXzmxQL7Yft63CruUPHvMuz5N+utffur6xwEOVJWDYlDuyqkUSCgg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JHb/Qhzl++7p0FDhRxjMnVPARnHnp8i7f+kC+UYCrNU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qIuwmS2obg1ymnP0Gx3G9tJyPCxiumyrXw8UjIlCFJtAR6vAT2Xd5oXYA8zwvUz7INj0IHh0b6Vcj+kumcT2m5mnb45dMO5vW5t5jBk9qZJLTW8YOraomLbMYNbOcXnZtwd5tTYU5tGW7LzBtENQ4rehrort9Bo+XwOPT+kuMZZpjvBFs1NRzFHxM8HCq+qrUin2cc4y1oxMaFDIaEQ0+Ja8dh3AYrO4tk5RkwIsKQP+LUISZ3r1Iubzc7CtODPC4CNM0JgspMz2L2fEB39BUR/zHVY92vl+29RUBKNM47JUIAIAN0lO3Kiaaicp9Tfm2/73R8hxrs60InmMiPAw7xXQ/WzzXLa0lH/kW0BP4WFZovjNcfgYlBrVYfo34WqHotTXvz1ffxq1yuEF7t7/oJhrPaHF9g75", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JI2ToW8gqXKRMlOP1mSUzwbA4X9qRPv3/51bkD1GZdw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c3wKUx5cFxrfZ/orIH4RTtdDDPBeQBJQXwGUdFnH678a0lAJ1tX/WEJtYgsPn+cmAEsE24b4XIMMNC5fFOc4J86HgeAOL7mhh7lwkWSkli2LzuT9aq7w/C2x2t6mru+G3LGYv1Ok0rAG8s2Z+n5tLbAvsJYYClkuvV6s/yIhi44jPIBQ3uOHU8j3dySArvEmnfg7vhFSqoO1k915AGLqFrI1k2FotO+5uptHC91e2ZUvfQ3AIgthd4SGNg50KswKS9P3Ju4rS21WPqIG66MXWlLgfQzZhQqItVf+6lfAdvi03HXpk0kRyGfiXzWFYmJBM3ELq4rG9KiA7Mu8XOGbLZlno3bJ3BFdB+Xc1zIakyv83lhLNnHZXG0nOIshKiTUp4HK0MUlhhP04TZwwQ0I6/R/DCaodmg7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JI46arZjMxnAhfhWrafkrOJ4YD9ivYtBgiGjtnJKKCM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0D2fehg2VYHZMPQM1ZxIznCRwqGP+igwsNHvibt0800VfSeA6Kl+/AgaJMbrQQZp0ivBkCu9qUVYihBRy/VFIOQ4m2IOZnor+nI2lm9OGeF2UX5AeP/QO+9pJThpHm9EZNaRD3xSaO7hDE9LOq+bAB86ZPuss8dazM9oxlGJhDrTDwwtc9LooAPSx1UvMfhelYsR5KNW1YXLUfjAGx3dG1etiCl8dPxC7WO14/pqql28YA46sTiqC8xv2yf7lSKOibdTcBVeGis1WIoGC7aBDcEkj1tDXGEFwXUlLewNqpyLJ7RBYJ1ktC8KwP3Lxp2H0kLnWmxSXfKSNLF2jjxHN6NSmz5PX7x0KUcnjCfiNADgmlX2fPCVZMVwp8tpz7RIbpDLy5u9lWWIL3Rbuv1P4XZPRQIOT0QX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JJmaUf/NSqzPA3RwPLHtgZNQTj8JfvS2i2fANKZU6FU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eDazMHGaPada5mM+tXJ2mGwwPcVfmWrlreMfqD+aZU0waEXl1EKxjKZuyjKN/i35cBWADlZ0QMLy/Ytz1POOyPWTOr6O0mWRVafKg3GR5pOCgUHD6u70tldGfRthF4128zXko4Ja0qzW+XntKC9l1JeLQJJR7H9Nim9/WoqCqldcpCfJQbQ2lLYEdyV52foD3Ea2rLk1dsuEIZ6h5VWuHR6LN5wT4JStQrixRItlCXMAbkymzPXEIIAW5lI1ClTP9F328yybFO366bvvidAFGcL9LMOjF3OkZMjEl1OAZuwDx1DXNbi/Wlc/kH0WUQiXZmdoxPIP4HLLUPh5NgUD7Cx2aJXHN2Lzebs9yKezfS4ZrZCbbPMOEdLHFSDCjR39Nk7O7ReXE5byActEN1lIGMFr+S75jwe2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JJvp8/PsWDfAMzkilgSd2aVOtIQTtmQDP4NQ+JNi+Ww", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qmPXpIaTu/zu9qNzEgBEndy0Bd7Qr8Vx/2UDTtdva8HUBect94SCsnohZH8iUxcW+yczjwmSidbLxEoRXJpMzXfSCxo5s+Ye51BnmpyoLs1aAAv3lBZXAohWhsIIxxWufgpPGu0BahVn1pF+Kj0s3j+hQ2OluNww4S5BmQFEfl0x/UiEWcCzPAQCb9vbHUfTHohVAP/lHKTxP5+sr6tLmMjapqPKa7a+UYJuJe7uT7U7347IFsZFBOl+W56taTRrSjqvd1PNj+HmK4tuSKYM2SKAsyhm7v0VFrBb99AiK57LHRR3+40asLP2J25dSieRF1B/z9l18qe51qTdWGLr4P6pjkADjWpcDa0HCWXQiiggNdHxogJd2MumXsF9OCgjj9wpIcbi/iGUn0vHHVqlW6BHMrb0cxiC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JLYtX1iZTPfobOjrmUlN5HR9e8OPOgBzDqlUguGzzug", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GNLGRA3VNhu+1pUB3EjVYtyN2TGWWajYGuNlfd3h/TMjk5bjRiLlXQ/ZFsnDSUABhQXqUIXAchCyA41TQLebmwmoISowm7NskEXHulrbxyIEtm/D9y4ruWv6XgFU0Wf7jrc6xLqHTcTqpt9+607IufkzKgsl+kcguwrXR2WZBbAJOZay6YgxF70yrxcw7WuoDS1deiU4IP4jvqRDI3VNIEN/dVK381ErZFXKm/NS3mL4LgXCmUL9E9c3PuYGxH9R2r5t6aXHA3wDJdI72ZQ1EKMA403MQN7Ko7dtb2n1oWNF88c/ibXZ5E8AtAe4QsMj6yRu4dxDGJBagzLNV7guggLPQdBcREoAZ8rINjaeGX04PVqXn+v6hmFZHHfBymkkwWbwuoE4U7wHxAsO73cYh9DLeeng2mBb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JMrfD4j3xu6wyiOy/aCSN+wa9OLNTjNulqv7sLkwmIM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NouETa4p/UwkUDcshPRmxjlviokpAsu/kVX0Lq+BUj16EYKK3ZCZ3WMPixEysEQl6QQiyZvdMJ/EFebRvG8KvYixvKtWzfxwKLhcWIzH0WGWTV8ZoK0gCFoI6qe9WoQdkKMmV9A/msHHZPOp4ByAbN8h6mB5Ur2cGMUevNOT9UJFOgmaIbv59JzWyUf7c5YL54GpxLn/ThildPxkPQyS8LtjmHFVVzrwXUjK31XKnkHQfrr6lGca1x8DDBiygE/pkPPM/2Lj/APYR9qQLw2Lha1ZAIDJD7belhZsgLVFmn9iD07KEVC1WWfg7770wL12mVVKb1pl9YiQmd6j/qzfXX079RZDi/79SMWT/B8EuH0MZbpbwecjPm0v+47qORXdz/0pRqCkxQhfpnLupkXdoNqQEEzH02Wa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JN0jUs1LWwzFWKB2AvlcDyFQB6ZD0UJeufLpmuDVAhA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QzN191RiQ8tR7ld+jTw4y7hEeQz6czghBKebYfpe6fUjDm5GGkIxVAd44LxKtfvqNxWvCrBAdl0cqsPm7asq48DbNF1ZC6XAH8fhVTcJJeS0jAQ9F5APnknFYHProP0qEyICXoj/kJjvUS5XuZUWKa1IKjXYHPZVoh+eBPqSdFmfa+siGoYRPTe2kZtN8OMMBa00Oeuz5LXJda3lO0b0mG/xUc7kX3ZEtkBRnLuORuzSao68lmE0G0ErViENT9yaPZ2wYYjI3ClDKCVLxz2m7OraAHVcwMZ2Z2Cl/iPEdspDRG1eJNMZbIv4WtJZsbIbqSjEySq0PiEupH76KV8Q7xb97RpNuSP5jbOQpoI84fSMrVl4cRq1dv7tTC/hp2z7NWqy/5dLIXd/oQtnplQRZHCVYW76HKNd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JO+nGeQXAkFofKmS8yiAE4HrIhPxPf+JWBafgp1qtGo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SXTTEluhgBcZ8slPXCxT5tEdF1lR9XFd2VJnIuF7PZUQ8EvjM6JZurRMh7QwDtIaPwpk/cX0jYIV0qzuum2y0Itmfl6M6JA+uRmaMb87ljqjLuRCOihn/Euyii3mE6wlr3bSW8ZBs8XHE8WY10kN8p/BDRZG6bC2lN8Zdsj9dXxmmmWj28GOkbcJKxcoHZaHtcZYuwO2ukZUvD8K/yPJ8hlbLKJIIlmfG/X+18LJG2nJmFlPEKk1wLmduujy4vRhs0LqWHPB810MlrzJlGeDbS0D27/H0pZSk/qup9PlmKepGOu+cgElJ9nn2nFLigwBbzzy/b+a1vZrUQh5GISe83FF/qLC7YucTmN0Ly2tA7WcgiB67BtWb6USfGyjRFOJ9Kd5DievJ8GZRa4X3us+yXi0X8FOwbeO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JS2W8xTbKKdzmwxaBrZ5DHHjSXZQWtthplodUQ1snlY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m724Bg/WuZ+4PYDm5EGEs4HoWzYEPbnPSI5E/dpkbKPwbk3LiJfnfZZNY8l23KpDnrE7iRpJ8NqDZE4Q89gefQt3a8SL+b0LJzSiAMtPbNus+KxWx6oBKp4SoSQ+OwDBAdY5NMreyfUykmKzI8+4xUOVUeUjaKVylr+QYya0HzeAAz9EsrIf9ESbXLbCz6ImqZWq372ueGBds1jGeW1RphwNvU7IBlo3nnyUxmP37nJ9Zej3JP4LHieM+ScIysNfkVg8/U/t3lljjeIS8yyjr6h2IHj0poDEitkzJgUSSIdxrNPi1Yg7k9r2dZyfPLALwm2jw9YR879Bgjavf6Ll3I0zwkwIqhKu3AgVoKXQ5bjfu3Db8cfLP/d+80LAYw4NCuPm0jwoVdA9vXR596xeLtIAb5tCKeqB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JS61Xcav0ASq1pyAC5bW5/f1AIJS7g6L6jIYGGq2BZ4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "O0PftVT9STbLaZGE0X7XJvLXVTNQyg1t8mAiN8VGM6MVV//+zh0dwwGpoMhV5LhBZUFXMQzyelNV3y7RtW8iDE+NyuNz1IqMwHKEY0RrO8FSz6quz3SiTaYsZspMOZpoiobTVHQKMjOnvQke8GnJcXLHVrQCF/uy0Ylt4XGsUWRE6ZJqQ3aCgWYV2SPP1jbZTsrDLA9W4Ge/cDgW5Yuv82n34ZhjXqp4P9lu3D59NqkpXvxP2IkvagbwipgAUqcohoyqGS1Ho7liuuphi9GjwTdZqVS5T4HfI6HXfFq+tcxBHA03wiL/O7jsbTVPLdqw3T6MTt70hJD45+by6l+D+LgFm326Wx8gvWJi/EzEvpf55e8i0+xUkGrecpKYL3Oh0uq5CYGPf3u02TGY8UZiynUriceZ0f3M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JTTM6b83HI5+k80O9Obm+5WRStMBY65sLyrHADrOs7s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HLDkNZ6dPzarl3Nmb5L1rdx+omwGM+bQNVssUQ9QGtIhN2Mddyv6O5iYHESgmjEUz0xaSWqhVRjgQL/nGQ0w+YqdrCEHBcFNejXptAP8GgTzJ3n7AiuPGgSmC2BYAAsjcsUcafnmdDqI5LLIy8n7hqBGVQ9Vye9izAg6FU9huaqCE3a6s/0ihkVVLezOiX8GtgD1LC5vgVMogKGX2dwYlDcEdOafBlX3NXxMwtPnZ7mKj6lkErrC+8+EGkPxBTrNujlvkZqD2GIBt48jBnyS+UF19ii8hslrt6PHkvod8G72iRozytp2xw4YEv/okmBSxvXcyg3a4wPGb/CHPBx58Zkt1aZLOjy+kuT0DF9pKOZZZA21TTHPNJGsULPep1lxQ90sjSop4W/bUKODv7XinrJXcl9pF/3h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JTZ4vdiAqs3D/WpkyHbD6+CXNqOZ459585sbk4FUDBw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i0ZUO2GKIl/UUfsvqllcznqqpwloo1O070t03DlyjiR+WtJ9gEdz3NenoHVq693VM9y7GOw0sxjRkNJcrqgyDA+GiMncFKXGX4MqQDmImnmnF8WK3LA0EXq5mCvc7HfoIM2uub4aQePsTwcWjfXiM64kF0SgVOtkr7hGyLind538No6lKlqbc9jKN8pGkTMrajgypeVUJvaynFg7SznetsUX6OiQH587JMRay96uJu36tZJKe8YTcMYZnHoB0c/yD4AM5ADKdrhUAncu4vQHJIWmNtFARBk8OrEtI2s8qbwcPL3Wz6+/Tl/j2TbPcynauIB/Iav+NB/MQQi09LkolbeHMg7n/jlEFIm2XmbG0yYq0ctj0APjUaiXDhrHFV6UgaLuY8r4BqS1Ey1mlrjf8CPbhWTVi+z1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JThfJ34r1UrL3AyJSVIcnSCVNbjs2hp7KVXYo4SiLbc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Xfgiv0JV/7RnTRJ4fKUmQrKNCvkWjw5ThGx1QK0nvqhvpOWgUb7CDHfhK9oc7X/3ycn8nlVWg+CC/63Qjvtsvx0JNkTOfTv/MZJjAsn/4s/tIE6WDPhsnm0TZGhMW2bkiwsgIM3WV6r58eV8wUJRImf870h7WRnXf2qdplo1m2m1k17qkA7Moygi0xA6w5+CDsDELaxHT8aDqv/CinIhe0WjD0iMRED+B353GM/B+PlWFSpO9AlKbdhu/8GA56Uhx5cxs0gHBfaxU3Cj+4nImg452/w3flFXybb3m1y70qH5LsiQkcShln/Nh4vbtBLDEhBI9UasRcryCtFn+Z0hUFtJ7BBP7DVkrpP5Y/p18Hnfqmb5WGL6ltp062HdNHRmJx8juFjx0wOGYAPAFbd8P5VKHqj/Sfw5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JVNMDJLR/d9L5CmI9/5lNOY4yQN40wX0QibZe/shAIE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "G6rjucrhjNrWGoRoYYJun8EGB0ZZP3QAkdRRdiqti2TvrQ8ik7UwcQ1sYORpCPxtnfbrm8zb2tgF3pl3g493lJfLHcf7bLZVt+WSz1+xFHL9kORzmg0n3bNj5chxqrdGVRLfAs3P7ZZvcxybhMQxo9Efpl+xLQT9JPBU9T4tB8ECFNcHSwBKn9hdy8lA1NOcaWbHnc/AI6xKExFlvkOc9FQ74Yd/ez0jq+zhD6xa5Id4zhNfdF6tWwRc4NV8QQWZWcC5fS2U3EuY7dj7Li66n0EWIKoLB58BjS0xhMM37k1nYVI6m/M1G1uxH3J60I1X11+TqNLo+Nh8YEjyyMRoFSzSOmmoJvmxW0ZgBnXjDKJw7tIwjubeFQDuBdbAE8CX6I3+oKexNsIam0ShJtQZxda+vdLILPbu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JWc3PxrfE8Ri49TSmQEBHZi648Ziq0vOtY8oPo5GXGs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tHmTEmMyZlkoeFu3Bnjoi4qfLm5sAzmQa1XRE9i1f9baM7ehS6ZPt11y7FzSDrJAtLlf/iFdQCh/f0zP7dfOKPy49KqEuYD9Apf3L26itQTmgiu0rtkM9CiwfgjctbahLLifqUOH6k39nLAm0LvfnLHG0DOF67ZgkI2vo09BrM8fSt4ba+l2McK+Ca4cE7AqpI/GfKIWVD3mTcckXnMNoxFvtKb1Q3SQdvNlqawozOZpMsG2qtiGyU89RXMl8aEXlHmbTx0ZnJpqfzmekPUaVXnzdhKAI9sEZfGQq/vv95wfQw9xSHXlWY9dDWLmHTJcDb5/pSFlOwd3p/0WT/XPdVdeeU99yoyxdB0X/Cgoayk8HM7skqqtsLzyMduNND3rwv6kAfzWxfw1ukVRNRAbfb3ZmWRK+u/i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JWygJVHHTihqbuiioe4qz2KeLMjIwgCpRwDT25SX5cs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F3fP1yEyMKZILLysuRo8rPWOeoKDnqSPrMLiWxkhCR5rHstU3UheYqIDkP5mZi0WLYGKKmvHpd1wa//agGBIlD1PWVA7F2AhdlASrjuqkPd48NIqE2nWmo6HPyWVdoNORBaw11/VB+kUCvcxfRQ1O29IMGPhTEInpQN0ddmbzLZUvPLHtpiSSDJlGDVVWDKHA2NQAjzFM1AS6GDA54C9OOyzyGdMJ1YyUjK3pVO8iQlqhxJwtiXIbeAcR7NyiTnYg0Bx2ku/H8pEvM7tzQZurdsjrvLfeDM1UjJZHb6rIqNZmq6drJqvosIijZqgzVxtwNeDnBxY4CS6xZ6XifuuvLhJzBqZjqb3rcklyh4tvSkdmeLQdZ4LTjYVx4PAEU3f+wkCSkK9LsW+aNaJhbHREK4wLZv4nvrV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JYXsu+KTR3XEPdBRXtnaf3+bXzQDQAlo+a/5mmLWN5Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RGUqfIHmHZ442Jgxi+NGhNDmpPJjI5hJlt91EOS4ABTf7vo06XdnBWN5qKszoP5oRbkuoGOQSIR4QZ/g+FBG4uhBY4VO0AJuU/YYrvUGS45tij6BZucFxQPXgE9NLanQDhvMdNpxSdzAsdoMG5ucfRzX/tCHa7rY/WIzeG+cdt4Akh3tLuVwiuuPE2qgYf51JcfFdbtmbEs/mZv67+3yBgPtJxnpxboApNOu5Uh8O22Ts92pQCuT6fQnOctBKo8Iix7djl19f7B0x4d2OWursgMlONzqD0EVBkxwvjwqqICA6X7y4raNaPFMBej4I+skAPelehWxjBL1JzjgJtdE9o9yuFhzLcxcOe2JCj5Nwq5QfOFc1quyhpJ9UXxESZUhVGMzkGEBp4IEqoSoTiGfkrWsk8h24QfS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JZF9mozhi6HZ+Rqf530UX4uzS9Eo7PTqa5bzOp7MDLo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8NdSoP/l335YceoMjsLHmYrNJJ99I1/1SnxY0or9ko6yL2rKAsrX0HTToU98kAwwi6CnxPXDtx9KAsTZrsK02Cae2+oGecHTuVdYBkNlbR/ChE+rfj9efAhl7rJQ6VX1g/xBMcdMGela+QGwkrF+rqdcB8GDdsLaxFSJ++Yq4k127lhjaw3Gqi6pZP0jvEaPaDROno2N8FoWyUZ/OVyl1A0I3I8+zYyZwGWewjhv1epvZe8BY9VYMZxxIPorMeSmLVPu3t3ApxXySUMhp+f188LqOcfdtNIFQDMt6NinQKK12D7MU03oqshLRANMreMg4BIulO2bMOeW9ayu/4ATMINg7PqJk3aORbZTPR17YMdmL2dDJFkpt8mlFjg4x/IBhuulfjIO2elyfiYte2ZmY+31dedlw/c1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ja6iUAUvGoCNyZaP6AM0P0DXXTYI2QGZPWXZsYYIifk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Nx/4bNCGWNPI9/acuM31T0GArc4EauYhlEDvWZpaHdYzqpTtrbdqn6qqK3c9HnTOOQCS353RMvs8VZxvOQnHGRVd1HRpXGVkW8VUT20n0yDRItJD66Q31QQbaCY+YWI5o/XFln9xp/3yh0QVBTbMJlG4cvo5RmzsfrT6t8Wz4QZj0AUBdHKWA3/D0akWxhGaFDKS6A/LOhDDqgpOpX8FGHYDj74dlwJCaFn8EJVvkM16KOt0ypluElBRHo9M+DdisKMIjoE07gDYOFL28H+7j7Pb7/NuPoXJJdc2qzHb3UdpQ+AVNLwq03I/1246wGwHQZWk2VTwVhbLlHx+We+mqBdOODCT6V686yBbNcH6ZlGDY9jxBXdy3zBC9oIhrh/Xnqm7XS5qd4I0Qc7+wxMib45ymDdb5vnW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JacV7YxJGf/lEg599HKPEyrJladNzl07mvvk34spwsg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nCXiNJ2JhuQweD0QwOLvkuy8imayynmjzhq+xOvkxG+dXnqM+KdiSWT3IOcKZBdE6Az+T0FgFkDysA+5qKY+7e8SJR86O2HOtbNQoYlfh4qXdyi6TprsfCZcevqIH0o7v+YOHg/jKkGP6mW2ypeVhh/GqbjlTgdM5fmLmOMO1rBCgN0mFhd9qrWOs/AWdloty75CG6zFBCsBTlzvVNGcRK8pKeb7hatcagRoBiziHOS8hAxs58qc7MmhJn12LGtiztCEDoYbE3N/zXHleBaZ/9T86PmfMzDWRbuGNtZuqbPYnhE2+DeUTHVN0Llfu73Uze24Ue7YyRJmCbdUwbMtnoJIxfgChsRpmwNLi72xznjF3okJ9emmRUYFURueZgu0uLZSRTFcmcmnCSLlgUHCxU5JNZoeoU8t", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jb7wj7MUOq69tN5Y988bG3ZqZJfzA4w6oyXSj8XyPL4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xqEFiVFUOynliv5RLp1ddYLHOtLqBLSATzFwJF8MV+P/nAKTUttAqWBSchQ+F4W5SSA4T1OOnYiNiCkgfJt1/CCQ5BEmuVJ1dW6bIfX5qVYEqabyNpCzP8rN2sonC8TBqr1LKq5dJRDepEPotvFJdmlqCGl3rmLtcmIanvjdgSMQ67Nmc2I8YMS5pc1UJFT0OU2V7wGcAOM1iJbAiCYcJfdkTF/x4bub7fsgofKIbG7GUeB4qfWUT5ttKRKiSt7NRYIO4VAKYilOQDiltIXWnSrLl4/7lSiicz+3NboQ/a03//rl8CdUJ14bibGuzdAipJPpgljQeNAMSEN28obuhZScnlyQhBMqTaO06M9qy/Xt15honffyUhLVTvCK6v32wB3OmVp6ijTtmqbkQnrvEZEn98sQs+gt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jbr0EhlytGD5C73Lj9fJf+Xh8iOYkKI0rMINpiy4pD4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Hkw+Lp9BRbyKrG+522M+r5KMXWDphJjAp3xG3FYFTaQWOY408yXQfc+lBY1B18jn4CIEPnKOXHo3pkCS47c+MRU45A4ZA6NNhJBSOYykqBcl2E06zyfASkbGgY0bAsBc7xaZKMJHuAX4oE3NBc9EiXSImGXCB/qQY11BMFV6WiHusPbMSpc49ZWYKFdG+Ej937/EqiPcNi2eJWAaKvX58QEaGsMnaNtmtnMyPuXq2EHbHjijVpfBQF8iRSoaSKPRF6XVtvYCp4DfH50fW8pYwV+knr+RaFpF5VP/+dEXF3CcY8vwmjsqpeIuueEMBSDD7RMBPCSOPy9OFTphlMvKSWaio/p8WMKbwTNAEKeSXQrTx1QSzs8/w9X4nX+iT626G70EISOE+djrGqvGik/hKjZj0vTmutR6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jdf+JOfYwp7METoe/HWhqJvmCHMvPiboZiQBiAhZc+8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ou86Hh5oXw9vBBuT22Coad7ZT+Km9lsKr6jEqK9gY2qBG3/sd98pz3RwdMmhgaGuXfAuWyJTqKmW36efcFhsSurN9Kv7cklAMwUMYOksE8KOgmCk4tviuOr7Y2g8L8Tugxtnt5bgysi0LumZjbRqpZdm6YJTeNILgmQhzuMl203vgHPpA3SLcIHd5ZrAZajS2AgVNDMuC19LEPsl6ITP2GgG6eLfTh6gTRhgFe3LMbIT9X/ILe+MIKzNilvaC6ciZMnoSj13GjOxF6hBsp/ZHBthyOJA0J0fwtuz1DIQb9DW1imqyvaOBV+3bgSUvND9D2lH2k91SgxkssbqeptQXMYF7BYCMb4pkw/a8iynZ/ZYzdvvnOLy0LwHZAf+hZRwXNonVFDCv2J6/R9LdeONGQoUkJ0N8ZcC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JfRvTmSoi9n72yBx45MWAXDYaoNg2/G8heoXROId4Zs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "03/H4hQUcl6735Sg7u9fKEFRQ0ZksidewVfVbQzrIRC68ob8kXaLnccYQ1kOHhZr+cwAcUV0WZu+vqqJ1UPnNs86fJr5vJ7F+gKYPu5BslrD6GF4e0iKaiK+qxm0k+aozO963oDWyEV1VHTWCFsvOJI4jLkf969Ja/xbC37gtxG8Xxq2iAdPWMDKO7rFZyBxpr85xwnfeDejshSfE46ZGvRPpl18nqsa9pnnJhu9Y+wXEtWNH/Kuk+iDKdTYUxGhK2qhprgoT1IyUhqRISlN8BcdUrF0XXbB3El6irgzgvXl3kjUgTfYjxwnOj58RZS6Tw/KurJVxoW8dQoAvRRXDVLhBkT1XSxldfT6nCnVOFUJkqEIaLQPCm6FflBrNw/0/fURINKAjzwlUKRJtD0ZPMSTBzR8GrE8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JgGm2D2SFTnAPmJwQDIu+mS6gsQRdPAlUZWGPrX2zA4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Lh/aUcWfwWF/SWXZrbgicxuyUdJTCV7dWbcU+uyOK498mgk61kP0cJZhhp65HVAhTXdDvxYLNrVpkY38rEV5CW6GTUbMaKw9eVYmCAUDRDlJObRCbi+HXlauzqCSAX+Bep3jT/iJ7gEPdzHW+MFRsQ+sY2tmCB7uF6+63B1lFgo0sMWvMDArjFZdeMbaJfS+gDgrmocRNDufXB8tvQbKCv/JlydauAdqcOli4ckNfeYh2I1wSVAx0O+Syhanbzi7w/42YRPs8kWac1w7xZ8X4C+6YVAMb85h3s9Hdry6v58lV9VwpIAz9+HeadnXLBpEBuNGx5ySELn8yREaeVHErlToThhZ3KcV/mrU++X3HnR08zrQdc9tI19B9IsS4NWsBTDLdVnCCDnfo5KLTdWdQBdxYDbYO0+q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JjT/yXYSODjBnSrM8xaW+mSHmEgUayCWXk8IujYK7J4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "H5+CXmvrXTt+Z/m7VoWRYa3PAvZ+xEfh/tEJlw4iqa+NfeGplZ0NPkvWzoobeQyN8WCIpN3Nx//ZxDdH+mqU14V917KCUlZWtbHhj4p/JQDS8z5kJS+Yn2PWIEOQXURE4oUMQbFHiStjRx9jvmFSEwvBDORopiAXFzyAt0fkqVktYvW8YpRaWVG+I92FZPs+JKgVchyxMDM8aljz5uQyD71ZLACj3Te6Txlqk2lWFDGeZUfcCsawE+PPB8njg1CwcdKgUW+PYrxYV5+YdNUYRLiwcuCvzhrnL2PfHVQKHeGK88cFKszUSwLlhOVcbJhCKtHMHAA0q+MpSQV+BoL0Q7TcTIShyDautzr5/vEooHnijIEy278Jygh/kRe4TRMi6ES5fLqZOxSg/r5MtKDrDHS/8VmBOQvu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jk4IHXp80GIcvfqkTj7FUV7jp0p2syYoM3rSccwOAV8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lb7YKJP8UNxIkP6hdLwCaurb1kJ+SVdpgCx/Q7p4p983s4/wDhzzCVQ7W7qMhebGPLm/+qFBVBCCRwDlcaxTrJdBSpYL5GuMLH2UOESVGUcbBnrsbN9bwLHEceWhAw/jvdcpv4Pv0116URWHXuGElfJ+FuMAa5PiPgzemaCOgevkmE7GpuQDnbPLAeh3UthBO+gfY1rASbf32AklAH6JYoilqDnrJ7zWsKAkVuSWo8TV77No59FMjPoznS2oMBObnS91jmh8U2Hy5VHwe4uMpAiEA7FWf4+XDRCq5eOFqHxONxsO/decNq1p4VXulrx/LkaUl/G2wssJBSfveMhdlvUMWrB7OR/IMWcreViahQvN1NZaS32EfOBF7YxE0Dod3leIDjh0+1ihdjDWPagGRYwwBqVXLiKv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jl2NH6dLaQci4BGOWEoUdRlbAvh6HAnKJTMHEaF0sFs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zhVTViBzrULQ/nPL3tIbaSeEklQHQoJeI+FCI+TR5VqHYNP2HM/f3BkekTDEjgtoEAxDRrx16fDTMDpyu6x7CZ9jH65RGkkSdx0qefFCJOutLbye37UEt4jNZVKmr7FSgrpxutEwIauYdDoRQIs3vCD3VDrcc46scZYL2e++tqUX4/9QOmQ69Q5SsRC1Vu1OIfhJl6He6iCjJ62H5ftehaa9V0yfAUg05AOQ+DArnfy5Luhc+EMEvgMvjINFpbA1YnLP5L2H3FIiESiLgZjimOWlaP52cG9N8bkzVJfphxueGUeaEaRrJj29VmxhskYNeyTvwXUHEfhbgnJ4KtVkMqjLUA4P0yKbHkld+bFbaKwP/Fdr53ZwMKTpWPhJFHu8I2HUCmIPvuUR6xYPQPjnqLrqf4tREKpI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jl8PCJVVW74y16xX97fnNjhyMIHpOfA+DDZxgzUN7FA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pF5HZjlpKVSmkFhP8cq14vwCSYptBYadB2XphWRumuLgKqQ1smBvqYE3OKKhHgJBx85iQMcckXHLRgzHxiIGWKwS8mYrAX/pMSnAHEdNv+0DyqRiSqvaPgHPete8HgElQC/Ms0cM6LLXta6nRShRSreCKd6gX/MgboceaFBRJF7MU7qYuE9k2X8MafiOhy9u8c8ELhDYgZHi2Q2k5+cHo0g0ojWJZIl7G9iq6dgo7umcPdXPou1YBmfhbwFdGCGCiEx43qEYro9Uhfq261+/413l/EaQahs/2aazMCuaQWUxP5iSblNXYi7d82dO+4m3nL98WMhKOqRsBiYnQxbI6ZESiPNRsDYu3Mr5945fHkpgxsM9Wn1LFyBy7yz8+1JzuK8ZvEw84NAc9WUuiWG8nP3giZCY4so+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jmlr/PBq3C5dNglCxYZyZ30vAz8ZlrF3hWRQsFw8aRQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1bYgM98UVJwaMGyRQ8S/XJOuViVyc9/CiQkGKHpc2G7hSNTnGR3WfxcBP1OX8JrFrB/fQcWFB4XU7L+x+GC2dMEpOlJ6X5EilfdW2O1GQuW1eGTVehC708y7/+s5VmPZliAcaSBpCz7iURiQ1Mb7kRhtulpPdddFf0MY6skJF/vRmK8jMOC1qdEkKDg7Q+rBwErawPsiNMHa5siyT+lJOYsFXl3VXoW29tmnTlZ3T/CDCfJAwjfwA5AMaT+jryf8TfyAmFaB29w3GIfxIr2qfL3/16cvOaezJG7qABghysAoKNdP3f2j245HC8Yhz/PTRFGys5GJVHEb3vGsO2U3HXuynT/vKGiyHAWEmlxd9/ienb9HjzigcbBRgSCTjTje6tzOFHYYUQcL6bUipwTDzUPg23kOOHub", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jn8gf88qjfR/q8TsJbK6WVtzpSY/S0xI4SYndo2DrCY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1eC0K0kc3LYGXnTgUtvEWUC1WgOtUAiOhu8S/XuFbzgZq2LePT7Jb2uDJDXP+WcULcmg/f5omSLA/c6pkmm2lifugj5uGNdliNurrLYX7HYnFpEqO1aIpX+RUTo4mrozbSsfh6n1ukJ3f0+00oDtOXMw2w1JFqDdiUOqdVD98lzN6VNlspcG7IWsHcS1POCq6zSc+yvnr0bDoh97CXRCR/m49PibWf5++SIgweCtN5S/OeTA10NVERYzWukPFwiEX6HqZIyDunPDqe+W5jralHZoP00wmiSRJkIBIf3YlDQZ/3kvYhZnN4oyn4iv9iLewMMmrDa6bXBf2h0G9MrJlMaoQDJ7Q7JZU78YVbg5tzqF9ftuJi8PrWZPWGRsFqnSlhCkbgej0BBIm3N35zBvp6vCK9lmBYXV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JnchEVBQAV6qw+OxeJRlfz/taaDn+ReWg/LD2TLZWnM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ImuAmntdw0WXG8tHoCLJWnq8Ou882O0mEIQzU+H1YNAgaBxswxedQQtMi4f2BRLIaoAr/E9kGovp7CaLjRqOKDLmrdMzUbp4PuBqgTB3GMdvPdEjrbHkvbmRKVcrHk4nlhy80oPympzXLFtbX0gzOIeCz0dJ8fmD8oDByK6s6n8LZ1mpwIltnKQlC3Tgr0vsGnn4JFiDHpASzK5jdujPguqlTuAUkc3pfOoeD6gEmincuQTyMGB9kcb9Z430Q8PG4GKL1kJSYnr/6WJS7lMqwC2EfG+zvQfE3Y1iYHQMm0HTEIjb+wEgPHL/MiSqPCroSZDwzO/GtSD4MX445VkUtfQoAoiwt/iCOaWekHlIA2877MsBb4OVZmKxw/JKxdEph8xV87SJitlvRdTLg/bww6tV79P/si1r", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jo3YLv/bil6/nechVvPEw1tekhynXUJjowBFgsTJJ3I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mVKyzkoKKi4IK9MwGgvcSY0IGAw22pQCLktWJh2QGk+FzZYwilbdinap/ZprQg8XxL6Yj7gL6v7LirlUG5T/pNOM2mqrV8FhH0wFaefofuloqNJLUnhSz3OyIUgkOp3vj8adx9s/Wgwzt9V09bJ+BCBIJUfI58DxejL04EZsSl3PdbVfh8LsmR7IZet7ukw7wpv6McYx2DMi8QWyn1Hs9Jepy/nYMccK3iOc4sxXdnj/YOWjMrZS9JXdVagpStcCcBbMkwa26d3UD84tmzKO9BOuOA+oUgvMH9dBp+gir3pcn2wPodwgdl3/sBGys6A+6uNKtZ3l6qoXnuA31inY2DJ1Nbjd1BbQ3mw54JI58Uy2KoxZIz7z1CbfmqZN/Kgc02wTUCBwBYwr9lQULTm5TfKVSZ3QIEaB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JoiTuVA+qsLORo1/cNeJFV2Dp1m1VgNBh6rM/6A4vdA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KD9p+9aU3RtwiUkkPTYnkt6A499HIk2Uq3ivDCKq54tqXee4+6nYxitm77WRVpiWkQ/tnj005IBn3505ATXq39r8EVWhnh6xrSee4lE9rJGKoba10btB4mP3oHuQuuMvzP//RusY8kjebwGwmKqzhtBMjaB1jVsYdoXdiuEpMnfarlOxhqVTMT4c9Pvp1wa95tnQ8kdTNM6ol4TpVgAFwpzHD3inIVX6CnDXXx9M/4Cpa8NgcitqsYMrjoWfpB3t+40U0lzad5t+It5yq+Q+PJjJ4yr7liUgfXB6Ucu2xyN9tVataXEDLi04aTfZ/EcF7XeYB2YrvoMjwTSBwqbjOjCvrnm8xlZz3bybiszDzXxx4MF3YmQJTX3jfeW0Xo29CG4jlXFCYLuAT6c85Ii1uNFbdHL20Jq8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JoxyFjLSNH5yemPDon7Pm8QMBXL7e/zWOVZCte385MY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LuQv277nN8+lYBHStwT9y8vFhmRhWgVn+CHche4wKbgddXZ6At3SsCmWfL8K6UAuTYOsGgov8DBhS/E1cKt7nC2Vd4Gq1yoxn89D2ors42s4IVFqRbcTE5nMqcDNUO7pelwMtGE3MgeOZNbh/v/uDaxbdzSvJc7iFuAnU3ri3EqudLQoo/xgmKrbt9Jtp6Ww0Cz4WRnvLFvYJ/pg1karrucfbj/zu09wEOeXGJo/+kZyHHtRLpf3WlD2OkiUaIWwPSBvlWmfUmkI7mjDok9Fdbqfln+wvEA2r5qRYoUQ6V9qWLm1NJS36IcUsYu5xnT81GdcQYHxjTxQNbHRL5PnNUnQeeYrkbc2N5rqmJ51bCrjpOvfHicnpZbHH1CRpp91rLOE2V2F6dvSfFE44vpJz+7GzUNvxNGS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jqve+5M8hbAdUu5Q1gqUO05JDbs6ik7iDdqB58Nx0Qs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+h/RIgjoywDNKHO+GA9W+7WSM3AM2oiF4ytSV6c4nxzEw+sGPdGG0I1VzXc/kDr3z1vxax44w+8rtmC9iyKvceXhxMctMW2yGzIRjhFZEYAdk1AnyXJqFaihYKa1aTKnY70XJbOxc4DdCfNQBSrt69k26VpgoF/bdi+VGBFhQsxPT/TaPjF2kPbVAsy4ibxaf14j00W0nhqPpnSAH5ahH5GFlos9H3IRKV3Ig/FE7Y3+0kaHxXTiMzWraVPDak9QbkpgHGJkWQyCRrnUqwjgQGv5aQfqV0no9yNXTiTo7Mdnn/xbkmwx1hYfHkCTdZtgR84H7s894tauDq+1t2S9qje+yjxWWP8fWXo65UIkMCR48aORmoAfByoeKi7gZFyJuPVzzv6KEUb8hIFNAH9bQqyxUk5zn3Av", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Js20h817q/KEL5PYBASz9D+VvDGqbf5oaUWjapo4LfI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0tOmbvaKyOOLCxrdCEKLiRG5JKwdFkz+IYanQAtDIOdbEpN+/tRVyac2va8ztmyy/Vnk12hh8i27r2dn5PtL+5Zl0dA1PADwSEhT6laIWHoUpSi5yS9jSzm2yy+7Z2P/2qcMEGTZNJfrNKkNXnVZUNnMOwL41aNcHXoYkm5gx2Wt+LD3NwQh2hIpNoizk2UsO0Kppn7uiBs0E0lrBRD074iVp/U7ioyRf/DQ+0NJatfh21SWtx+Os1Q7vSfzlgp0cIMdU3UFWc/xZyTqNPF4MmVwx09y1qQRyrxnsSP70bdOxeGOOyD7sR2LcEY7jzKUrdZsVEg0MWV+nc2GkIsagjt8fCXZVR5k9Ttffs8qLqIWUChRiWWzDrM4vlHJl8XzvlU1ARACTuIA6DgRDjDAX1M5e0Cog6f8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JtGvLGTOXgqoXIZj/b/E8iaVbGCOs6jFS8sndsw0RMM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "81PYb5jjV984wIQhXpr/SFFzAHozsiIB/A8A524IquWCW9eEJXOtiBvRtRg6jeMi5gziBdQ5KJIhX2NeKi1Arb+XLC3t151alAqBmj6v36XCrWn4Zo6Rf3xEGAvF9GVNstDosX0IC5ttvCBxhmMRe7MprEl/xLxwb3GtWCk4iPhYTyrxP+bgf6mOo/2OFsyifJWyb24YTlmkFsz2j4qVS8KJYsx/XbX+XBrURAJmc6RDN1Y2Z1NQub7mAXHBzK3cMATGCPa0NLDTZYiQlaKQt39olVPxNA08SzO45Xa3+KDN1jclyC52KDPNie2azZCA+dgNs3wk6ITuWude2ImOwUWF91nrmeN1pijQ5PTAl/eTIaxjnQPJ6PYLDqVaMOcG2DpC+lt7YOCChinxFN/01xalKkLF79ag", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JtMWNO8q/9QloD1j1OD6NtPhyWyyJ66ls2SruV0nkzc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dZ1OqObLmbGVlDCKOCzLV+q6kxPbtnROgjL3eMSd67O/o5I13DXBMBbwk8w7scFV0H8hlv5T95IvTTCczeRFqzB7dHzQYxgh7GhkG4QFO3Jo8KQKZbqd4my3oaYqaCLHQjxMki2MbXzFmPs/GhIv/3NN9SShEW0uMXuzq1j/QIk3Qb9uePOg1tliGjL7BZWeNaLQoJlxMiRkySNitwShzTW1gZF76UKrVNviVu6s8qcx0tfnLWfDppJcLszEtGzOiqa+Gi3tzlhCvOJGD6VQAoYw8nmgVSerZK/NGgG61iDNgradJ5kDZkFWStlOjpDuyLvVZhuzMN2+5IkwzxN/pqgsv5DiPiJRc0NRdaFIMBbgeXooKizAgQZZs7s9YLz0tPHf65QxSuy66pD8sFipG0EFbljpKLqe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JwbW3zdk20UC0He7dGHeP27VeNVS4CezxkuPdpfxj7M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xTGiFDPmxq1G1AW/tPsz40rWIqzMFwp05bZU/KjiRA+qfAXNg/bDS1QiALslHjN2LQ16xMFv40qy+eunU1ipSPPwVmktQUSQrYd1lFDJvPnfP3R9JpEKppkoTsa+ZpYqU8W4c1aHJ/a3IKSsjwHDJkxrXI5dZDbKSzGUQVpOzZkPF2TpAOnb6sV1Hm30VaDxJ4axqnKNihYyIEzs469Nd/HcHSyR5TXBaKctVm5gyGHSwQMlXfcOXJhCUwH3YiHswvMBa0mg65G4DsjvxwYnYnEIyojxovFuutGCsE6rdqWDOF0n+4oS1PjMGKUfVfUe9DA4XKIKCssmSrQu8cun3O0Xx7/jqqzcyTS/mhypDTw0s40Q0rNurjSoUIm/Bhrjp34dSDdf1Lz7Tkae+hhmsk/BJi5Qay4/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JxVvvHuAZKtXo/he6Aj/AbaFz8relRFAPaN3jHFraW4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MKxgN27yKNJKFsSYifMGBrgdW/Czcc2Uex/PvxOArUjYbDDbC3bx87+0vjVZg58CBdVK7xwwOVVWuHqIsuCe8dFQMt04QwP2MITXXUgy7/f6JDxdcwG2aqER5RWT2AcLMXo2fB3G3rdP8TpjT8T5Fp0kKD/6QavGUAXqvnms8/GPtlJ1ISjdEa2t04v+ecyWkvpHwtLmM4FeZ21pfLK7AXdbix8q03vKVH6ku++z9o0rn/0HWKt+SQb+gUzI0lI5wigao/oqj6EmiS1llk2guAvX3GLjiAg+r6yGvf4iIxP920pjkr1U+xTQV7RZ7c52MVRIQpR0ANmXaAEGYkWPT5Jv8vJeuMjpwzdHVGYCNHUMp77WKgA8EsZ6c6BR6B/i1Z36yZxBAgvP5PXLSXXnOX54khAkNmfB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JxcWNwPGSV/cJoCF/tEvQMPjfJJsGE2hQjJz5KZd+cc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WzAj/V6AAT/TLo49BfUVsUvHCozAF9oL7+c0rHtoRCDDowQcJBpJHJvVi2EQOJska/gvTN/Jld3lue2edEN1ouw1oOD2mtp2yAK8L/7ZBcUVw80rrfQ4Xi3arexcxtENAGUeF+n5U8fY07jBn7s+Irexsq7/Zue52G2L7gVixy+7M6nR1oc++9ZzlHM4lnyvseUBkR50qxCUb9ezxDFMs1YahRIy+hwAbG9Iqx4KuLjUigulUxfV1Kee8K1KvySZjaNqBO9tLDMjt2XzTZmEDe1ZSB5GbG4PONwFODwQnYkIZukSiKscm+Znn+m+HNKpXgVYNIrsmKwXErgtkOMEshN90FVUjFIaa0KV00/DR2gUgk2U6z9+qanGHwAoSpJ55rJNZHPW1pvAQlH1fKiAY7aYNV2ndg8D", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jy4XfUVQT+U57m2sOwy8q8n5h7rt0RE/TlVPRwQLYWI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SmUntKq19Z0z3k8cnid4/QsP56F+nyFOeI+co/vH5ncJjMM8beppmK2JkNKmHnS8EQ14bzxBqqDDJSOvGYalKBg/dIFnCk1/uV0JgMhZp6KI50QKXNaiR3uBXe+ryXL3inI9eYTuFMJ0sp+Rjvza43jlOj1+LcZJrTWkuJMmJ2BaAe1z+vR+FnT4c3/7en5CBawenuBj+3r4oMhCODFGhD3JzB9zaQT4jUaqKkjwkUkOKPrk0bCtdSdO2+bSmchN9MkV/40h24zTU7+lbmnR3qpuhxYr/67JU4rMaiMIMaq2eEFBpFlF5iSpmzlslex0y3LcBLaRBkFOH0HzdPk+JJXIrTL8FC0+AnSOmBx6IM7gZsB1yGqsRbS+q73gqFNhgnwD/fiWjbwxz+Xbd+RlZG/aZOIwVuLJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JyOKLMSDr29t6ZPNAHNSx9kREUft6UDgA2wjVqdaKqI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "h47adCThMGmGTZ98+qfDSFhnrhKGyymqQ7Xc2gXw886fQYRuPK5yIxZkXcc8j9J1vXU/4zgNWIkUabSsGrqTtCI6iD7DtybPa5Y4hlRJ3Ddw4hTN0djwOrTPeMu126TsiEbdGMoMBUfwLANbOGN9hgpP0Wgy0EttDfvTGLwRNfbfBrfeN2rUbBwLaTNOqyk4/QBm7RcaMhButV7MXUmtSJh7Whrxl1IuN2bK8gZerpxUiRb7SRfyPTZB5/tXW3gO1JaJy/N0C4Q0CSsYp7m1VlRAgszD7NO0btPZTBXL+EseGBUs+5OhugTefBP+D/xTQMjsUgn3cOKP/GNyrgdeXgHsKLxAYMXtlmcY/7n1g2iNU4eBnUSrH6V4vMkVjG7qbzNeL7nu4aXLkLL+2c3ndN5/XwxHP7vw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "JyS5tccoinROHf0qM6UJTZksg7W4NxCKE7Is9k+KUJY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "plF38WIqwFwLFZyPbprL8kej3+VJVqe45i00a3KroZ9p5ljro7BVr+nJD51YGQbhYU6nqtTM8XvEc++vTNegnqjR03iOEFP8OnlGYHVC36eDjfdCNw83Rl90/aaMp8tWYnJl0r4MV31LcY8MFW3G3j8tFiAZEJzoVcgFUZGhO6ABjp/XD+Rx+P48Dta4XuWGUDX9D4ESQKJdP+T+DXwhclvYW8WLZKVt5mQyQmS/rBwTkBL3mdJtHuhwPRN1kWW83Sq5+OYTB/lHYz2sscqK86NIEw2/Gd38lrtNcKKddDXvs7UshqAPbngEXpY9U9TBWfWm2Ot1r1gyGPMzjrZZdV7gkGqACJfL9YO2k6I69B/jci6Ej8Gr/CDMDft8NR7G8+dXOHc/eSgoTmB3p10y3e8RireRCyVQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Jz1XtP3vXXavrpEyOsCKq5t1jv2o2iVixag9ECuVikE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pM6NE6KoUoduvr0/tCbBUIMIhQIDZ+VVZCdJsvZCLcXjCcCe1UtYYyO4OCWZis43JlE9Qv3kIcANkYwaxlx/I7h/3ENd7XNOAMcSdWjNp9MF9NA0XHOSdl6Hbi0C4W2w5ggq8kh5Ym/qBnbAqLKyZJY7RWxJM0Onup/J4eN/IfBLStcfX0pM9BRzJVLj0TgcsTSN43rJrtKT7GlJLDfsvNbpE06VaPMMIlHGKgu5ELNrF4FJ7udWRmjxVHeny+2tyzqFBALI8MYVQ5CNC62RfZWk32ydBwGjbbJcLDvxgccZ5mALiEXxxzebbiYfEclwPfC396JuZY6ZiNKfwFWfQl14Yi1F6BtrQEGbpf4UWDBfpdMMYBut8NLz9o98zAAcowjE1KgbOEfEK0Ia5KNiIKiCo/CMiTgS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K+vuDyXz3K58HHEKtF06GGd3TgaukTj52151gHXAe3Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pdfqWOIeGZvu/rsZQouVQd1keUts1seNPhVMZG+HtGCoXugmBKgMPCVN17xamaNaIViyNC93tzWXgTlHKLs+lb7JMcuj/dSwOx5zVbFyuV0brhYs1qkRseNCo0vlQdmbNFdBHgShsox9RSSNBDKxx4i2tl4lJlxgBej1+NsFW9Xvx+1TV8mYzwmuiUxRJxK/A5vrI6UTp5nE+HRYNAXy8fQRyDrQlitg/YeufzgsL74QoIP5ngV9nDaCDtP2jTk3Wd69zp4AG1Oif/RYRFtcON2faOdqPcUmkr7x19LvRjr0mc8r9h8iBgwBWTfeMYK8kckA06/tubbyAGHItrEARP3fUp8o3E0hIQ4HT+6v7upAB0Yf7q6OeniO31+4Z9JDzoRHl5mziS+WL37agUiKSecK56jSVSS/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K/Jo4OoUM6vyfZHEb5TeFrdAuAwrB7OsdhA88zie0rg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9GRqZqP1d4fj3SfDdTVfoIkMAvWynamtfj3kFAfCJMjt/dwqmrCtRo0thrP79ZQJMc7aVg1b4SYc5E/348ZmMAkpymZWCKTlOndc+ODXgGAKoywHvHj6tH3EzG1qazErxFB5ghQY8FV/SSU9Kh2OfS94LNuMzKSkuYY4bz+I5ox3IE6KbqiEXHk2N0kG4C9einHHU5x3ZmK/KBisFFrz98tsTAxaOIe0KWQuoJ/4Yt23xWXOoziwbHdnd43NVxsNmJtySvO7c/SgiTEcBMUG9MMui3pW+vRdkuaYfkQgWRdg0cUq73qyfXXnYoeJbGt3kK4B6/j1WnWMXB6spIiAzTnd5ieH67cfzj01PgEVJiu9t9w8GDVASgMvQX2TMeCXr7tvxF5qHjSNbOviEWeICwmUySO0snBH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K1Bk9vjyjY21TCKpJFXuTcRdVNSmPN9TX3kGfwi6H7o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OgaBXzkmKofhIuOZsxMvFLGiazTxdJXNjPLB+s54chUKRYGCSQ846wvwCPtXO0eVUSOmq80+VZ3UaWkSKpY1+Jo2VyWerRRBCweXFcoovHu9JSxlgmtC4vapf/oRwP+kdJzaS4ugUPaZhVL8NDk1RDgSTdigk/X45DrTkmttXJtW0PhYvErpDFUJExZKC6DMACABnXIWWxDQB8MHyKkRQWcQCXlBz8Co0BfP1b/rRZ+CzLVUau++zpJD34hR25ZW6TqGDIAMBZh4w19iB1NsIpTkq65vyzi5Vx99wqRcX4g3ChEVIawsCXASDg2yPPmqILt7FJHPee+T7HP+PuQpDSvwlLb/RigQTgxYwwsK37InMB2rjU+mnvpoXYm/mraYZXXvja8tjXA+gIxiW4f1SKiU3P9/4G2t", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K25F5OK0WeKIXVfpVz6RBCs/0hB4lviMc+/7whT18J4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Gs+BVfYMisEgsxdSC2ZxIr4MpRse+4bLs+rGle0aDRPNN2cbacB/MzsTrLtLppUegpXWXt24ThjWRLlm6EsGUXFAVsT8Ff+rQrWvnlQe61qvkofF/NqsHlAjsH44DWX2QlerRb56rENrBJ+ylzkmMmDKDrLkoTIQ9/ipKHkOqFXZCpQHC7ymhIJPxM7C6OA+afL3ubZ5mRQ+q2QMQzzpV4L00plz58eIogYNEdYla8cCP2ajx6zwh5zHqQEMU39gma7DhkgKbQkOsU/3r+cvGFIYyZ8Tc3id1mHIMY6cy85XNNizqBoqAy+LqM355diz5k+VSKlHqX8jD4vUVSrMBgfS59CTzyWd+cqU0MCFMMQDgKhsaAb12pfhrG3wuc4TO3/NbukJMRpImJNBqrX5UuSPqzgwFnb6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K48Ti1wyrC3dkEI+cQTzQu2KdsLq8WlA/LYxy+8f9P4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xRz9vUlj0V/21EFkapnj6XLm3MKZRgtDWYgL92MEv0CEaJMVkrNYHN9xEVS9JiX3Pb1KzN3XUvDx+3dm/uypYnoH7vlitzClhmmHXxYZ3QroX7cmJ8PH0Oaa2BiI1iCyuRnq/pQj/2higii6X1ZmaiMkJT3aOnPkREYZBQjz68BRHSvgDFTxRJA5VqUmc/0EFq7KTPqrwk2sTlqqpHjHiEXxtCp0Qw4LmyTadIL48U0ZqbeGu0nwzvp0nOYVBSGA5rbpmkBQzKfnAPwgfp8tKfr99DM3ehGn2jdBqZCTbsOG16b4GYbAZfl8b4xj70/RleUVtNgZsMQKF5uPd5gZzKk3aMQabkXZXlhzx62XD0HpexgP8axORnNkdDur7OMMiYRGFKeixDR3jLzYVVKLuTZYFX2kYXF3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K5zoHEewCcubzNl0FGvTpRTdTDUrWuAd+cDiiZqtl00", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "b4aUHICudzZg5c+N6h5YHkoBlcBzIYc9KXDb4S82DvM1wPNsAvvB5Fbx+cJdPxYysJpyawRqIF7/xP6vAeGJTu2H7BwH2/QLKx8ePS/xihRD/GVzNW1wiQ9fH81Fr4dUv34jd4633eRNo+4c4+FeKMW5p0slLvt5G4gaoxhzTpnkrolFG3lUkGYE3Hzj6AblQOLhT/TGLSvDW2VpGVt6Np/Lzs2QX7D32kHTT85w2Jg4W6/yEWuKDFCE0VZN1+i/JuWwHHjRMp0Az86iareQkOiOnP2Uf6rGtaQOMMlli69D9XfAC3xJJOXwZwDZzDcqNtvMRzd9Ch+5P6iqTyCM1DP/NycgDSXog+EQMPSAniWKffEWcR6F2tlV94rOogL7H8d97H4Z/EpD3+rpsjbgtgpsMsu3yta9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K64/H87AcXkS9W5Hgh3Bs3Pwcy6wjOBsvvVDoJsKsNY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9DlH7bEdN11BOFI8OFoWolzS4+Ou58nTXGyS3MHZTtM5aN/RYnW89bgjJrSWApKOFBdfSA4K6/1a2JaRdcjMpjTAhf+8LtzRRSktMM0cK/Ov7s0o2ZBEVld8F3M5E1/OnS02Wkiy1Fnpbi30G99fRqczds/W24gxrKCQ0vjquun1E/6iiLeA3NzzPFeBzG22dmj0l+zD8aEpfNgKy+L/RLKvwzAqqp2zYj7aER2war3v87gWslWjHiP74ZhDjGO/6855vr4mPsjGJnd0wA8VMTvB5OnLC5hyRCFhpFhe2EQVSPraXBZdyqodx57JCShkUgxnJ2kEf8g54YpoCbZa76PSs5NQvV463jipv307uYLmuSE530zYZNAycdJ3UbCnl07ltAmFulQmKF3VRQeaWbd7QI9Od4K6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K6Y3FnaR2vFNekv27HOhucxoQffHzNRUhmEH6atgDHM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "311Icryd9hLsRsm44WKqH4yyHuolSXa2B5qTOoqB+HI1rD3k8qIK/GnsemSQ2Ge1Yd3Aqq3/+FVFeVyXQsSNin26J3VkiHdoedbssMOsCQmQ/y0m3IGOK2cbxvMfYJ+bv7msj530uqjI3lRteZqBehR9Q6TW5SCJvRvzALGSB8ofyB8W4L9bUS6g888+CJn83g4D005hTUuf9DKaXrfLVeuSUVAjVPFreA7C7ssvl1J+Jgx/xN1N2Uh5yM7ZYzAJBKb8n/8v5u4QEZBN5Amfxyz6puh81OiNtR6O2ylJNxT9+8wBXoElm18GEBohzpvKWdxIuLtDpugGIQLObEpIVMKr0CowUO6MxQ8HNcaYRDqHB4juAWllRuvaK2K//Tj1UrnI9sWWF7TRlOZSo2MW2vjGABWJrmMB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K6s9mnZGISuvt1sRa1PwiLbse2at5XJv3XBmN3SnY+s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7InfGYOeGaNBz/nPClrCIFNtCN2yXph3Jw1tzFmHiR2OWz1dK+wlziN3A5OIvKBYC/nGKQPMEpCjIGM8t/thPVR7o0BnQ/kksQPXeFHnOXE3noiGr1CWpK/f9TnLTwZ65LWI+IQhfO4g6RXdTdEgPokKvTdFfPYUn+FUaDusOtWHkRS7iTVHlsv6X1HhXpf9biS4bDpTnhYNKCuXvYsus/I2bvsM3tBmlm4ub9cxh02tgc3C0BIcTDHeKqOrPuwLcGYz1YfjD5d8M5Yhbqrv7cceP9prs0YP8z4NRTHBMd1zpW9qnbK1H5dGbDeTeFGWMIHe1QFQ/fKNXskXEoLB8TjxkZYbWPZdtBFp1ghU3dwkjBcKpgZiE73VQHHN04dfON6+x0Ckd3Y9K9Tdtn8E9qzWBHXSaAo1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K6w1WN6qvsMbw7KY6UyoSvKDTtNeZfbZEgYIXjQ9A9g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7pOrhVN6JV0K5e6LqNqPc8LMjflCrEsJ4butnd4FyetUpbutQpsscQic64t/4tZXDShDGEn6XBX09Ql8jgBLrD5gjYOLmhYF/i8BvViwIZwQnBjcZf6M3rbsLTw9TedYk+HUYy4OuL8gmJ4hRbIiBlRMn5/pYB6Ae989BCg3TRkSWheXJ2ruSeORd9j39Jlw/cLpDdaCi+LQpEpPRcaQfIS4eqGey/vCTCfUUZtZLzlV+vYa4bMsiePejrHQiTfwaELMU0klasR1u6S4Ak7BC/+bO0jjV33xkBaSODF63382+slTPa9F8m9ihxj1UDxUO5Br1nfbeERiee3gIR2bFxXQgNEv9X7R6yFRb+oDB+zbNmdKby5AaYEybm8KK7GoJ04x4wCugixo7W5on4ojgrSNb2H7wQwj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K7wqkyp4flAZQA0zNXVZn5EBUcR/8FALo4UjrSgZlbc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "odkjgjlc7JuNwjhGxLx/rC+62vAxOVnNZveFCdYe+uZ6w/qWjnKYgiMlNevg11kpioHnABbSVtYYMzEuPQFgUneGKSR2Yn2AZhfqLK007VKdLnvFZVJ4a52Ly2bR8SaniJBAVavAkEPfiEEeJgrpl+SHgmoCeJg1DVbxBsfz29Gp2TvlGq9e+XgmctgCUJCKccxxyzS7lR6jMfh4F1P5n+XrjuE2ek7cYTt4LyJnn/0ibbFBS1F2dn+cBlxYh+3MoP9sY5j6gt441nPunLVvzQV9231NEt9Smjl5/HMLcOEycZYxukOY4SDvtFknXGa72fO85oOD0JsYx8DVob2jWh3pUOrRVPYTkxLxCIMlJdFqDcXfprGEmsBypnB3rblyFdU7sY0ARSOMOYiF4FwU4xenjY9Wi2Dy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K8hvwW9ZcrnoQDdcFq3NayMygK14jHwtxZSXtUh3m0s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q43+TV/SQMBEW3DUVHhWq/TOB8W6ovBqGaP+el0OreJU4DmvK+dAg4BJhu1kSX6F14LKRNM9j++8vp/mmLUySTRQmdgRl09zlvc9yeqD6JQHi5f8G8PP/rZGHVpbAX0NXcOGuhA79fogtuu1WDCUC8wMoLkhw4vOd1lDpAu7w2RyAfl7/Ci7PSEmWS1KJTm5qn2P+lNlaCjm7EUb6d9griyayrgN7U9u700BvFRSenASodiNY10yiPP4k7Mv/MkP8pHAMnwJjeufO3qIkax97HANaNjaxGyEW7OavRds2mJSWCXsWcQRAxqBRP6cKNaXlgfAliFTvdX61GrXehoc7s9pqTJ4YvCo6i9zGT/aYgx4HW5ZJlOcY8GnFniYR6D7MLjzkEwl3t8L6EFnGY8jZ6ejcPJONKpR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K8u8m9Arn00RrYybUGT1+/XTgS3OKAaNyK643pzfKHI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OtLndAKO4wd0UnogtvCyAi4cig2SiMmSQZmXyLm/inBctxq22KyXbMhk3SpGswC2FM25QpRTSVlKSRTUTQmUo9Jy0/pT6yMa71b2qFtQjctFYeo+yOI3MCi9fG5xq7gnf+FoonwYhraclr4+hzuScLbX/RKtgPo4Y9bPPGjyIP4LA7clqiNZgaMhPa8yEqgGFUG3t6hMtxeFOGw37TqhnFlnuPC3kwMbIKJkOGz2Mi1cRqNZ+pQNHwqLsPp5k1uqGtpYtzQnor5zQo+xhKgm6FvSjYI091Esb9i8Hv+te4VXB8iSbKEEg0iCHMVphN+UPGuMe0T6FlIV8HjewRyVpBXqWn7hKM+kGOthD8p75DxYPcf4AOe29cU+tcH/H48fqM+2HDhqgAnN0L5JJA/Cch1abvVg+2gw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "K9DlbKmwNAXy5fXwJdVJkA7gxiZk3Sb9JNWxXsyq7hA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y2nftDi6KHs3OZgWo0xqpbrd/TArh1bSfFnjhr/d0/CY6Zld/t/UJ3N83AMvCbejM4Uqrng7Diu1U2hxYLRbrNJj1p9hD783xbbEDDAeeA/BS0D5gjlJxDhhk+GsH9KQAZd01LCdPWe7FtKyHwKHtUxHRTtMd09R5xpN6DTKw9155pMkBqjvbuCbAF19MstM+JlAYGVKKz5ZDmAtwb9DyJYqBcwd8AOBRjmqnEqLYvpP6L5ZoS4h7aTLmOAGmhqnH9vdGsSqQRJVX61IIU60+22gIFKnWvQvggSb3BxkK6uNCzpUJ0yDpeGrnQwx01MfWHMSnn1Bq16r7sgj1NiAJ5JyxS0jwcwbVRnCcxOgRhN+FYH94soGWmmfHsVr9c01TyEYNepBJkZ8BC7pyRngaqp1Vq1uhxPZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KAlA7sSMAfDAyMfsFSbwNu6XP1zR7xpGoxbVEOmm4/w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "npaxII1zZ/MVNFYG2EL2jJpGB0GzJgRQNle7EBq8lWuPw5gQxYS7GJ5NfdleA5nq+iojkY/8PWyBRH1ghMo5FuXoC/bys32wbaN9kG947Mahkgm6mltcHJC9izqXwEmvEvrXk6oKdnxd0evAY4mElVUyB42/nzab7EmkGJqzd5iS8fblxEVna8hAUeXOg7XTb+2gIh2l3y0Ic3VzteuHcJrWnolg8Q4LrmTqEtWNnGJfRJqk3cseHIwWrgSiQ66RbVChXIfmHBbES9V4gOlgaO/qqO5QhOpu9dRMWR3/wgx5P6UomjBm38XaKaOvd6srFV8C25XaoOjfPA1o22ZL5ZsSgAJaKgAP7K+fqlO9hFnm7JpvI5nrlgbS4RR2seNGJ5qx88vG7pqjkHHe+kdNCpJk8IZiA/Bx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KCo+UiwNwmS3aRGxpfxjoNYWuHIC6gd1FO9Hw2NdXXI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o967ahIih6LUIIdBoYkDKwodABdCufPi+oABpi2HFYrUllYuTTfnHS6iDUE80VYnqsxsFEFclmedNEDzn2mK2C2WRjIH/JQ5c6nIr9J1ewjkAXVNNnfrylLL1O9dVqKK9I6dAo7LIBpfDhzwdD1eIsoe7qoS5pRHaB3NY95Zcs8k8WVMqMYHNb9ZwcBAT6+G4v6V7s51AUwp5PG7o3RQd/At1O/mKzfP8VgamPIXayZ8mYdgewm428tnjsjiQL4wfwxkNakpHpAT7Xg0nBzkCEuACZi3q/qW4VrMfQL6sT87iR02rpnQeogtcMi7qRuEyj2hHT0HlMgnLHlhuYwP8kbO3qI3nmLbtfQHi2YTTdovx5BZxV6Pw3yiURu/hCEbsF8wfhTVuVOaaa+UMVEQynLBZFWh1MEr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KEDrFC3lfU0j98xymWLs8jSkcmwAa5BCWLr4+LsZaec", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rTvV4bw+xtak2HeZVWa0r7xLfpeORWAVReHSlP1NtojlK7fvzL7wJx2wr/5l0Ys8oL1tolMliArYulRLKWh9wxlydb6yj7AaiqopJd1hs6s3LhD9HbAa9Slx8QEvFsoDheIqlE5eGKI85qJgSFREJQh0LeOsZSi9PeGF2enWpAItDXkEWnSk79aatLOX9r4tCyoZ4B6peO1Fjma09IVeG+YsDruQwS9Me+xtLASJCKYQDSOcxMNMOYU/EKXOXj1A2NyhW5GlNAJLH3j6L4cprpWtlO0kwXVxVxBaT/IuOjN5Dmg88lDVwwy270CCD/x+TgxJzb7Qa2+pr0gy6vCjGUV3jsENYYOSjDp7EJG7MoOmQiijBL2AuVCpKa1eB4putm3P+z1fBaTc731G4dkx7BHs5m9UZEh3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KIUGE7/slpbF7CRTQt2YGHSDgcm8zYHYmyyA+KgeBP8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ideLAwiE3VEFGF2FX3NGzV4D70kaSwcw55fPuO1Zg/Rijqy68xRYik4p23KNrVvS5XJf6PX4nqof+IbB4ODkW3TwEvJ0DqOUDeV+I65Fpo9UumeKN4dpnih7nXjBxJH1RD/rw1ts31/RgMmnOhaQFm/qI/LryFmDBilh4MlsO7QffzdhZdqPTNNIH1CjrfAjSwidJumkR3TZ1VZZ5rZzrdNJTtjTXUeP+K4AY19rxXs+0+uDOONw7xZ/PYLA/G7yfvQ4RykT6QAK3YhkJNHtTVhipcYLl5aDiD7M54uVRL1ktE9KS5TkjaR5/6ThLYUOrp21Zc+q59RhG5JvsyW5y9s6vXVkKdjqWZ/VrFpCW3GaKUOsnKe88Gg94Slzo7Ok3OaFGEbXgSKqx8V485gDYSTicI3euSfo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KJPdDSpffvy2FzNIn+oCY7c5uABLFj7vCCHQz/nlfUI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "p+ktm8XjiWJUn6LRfJRahCWd9rlUkIYOEOWycAdY3MpfZkP8TjhuOkBWmNXK+EGB4hAibpZerRkct00CizFrfW+Jwsd4SbfzJaLaWUZEJgovje1BW544VD/+NtncFkz6R/+C8uIN72lzUwqX0SVW29ONHx0SsuzuaT0MavsneqXQNYiGSDijAsiiOy2NmhzyHensO5Y8bJx/Z3bGVOcuMVNyBlWPly1m0pece8UnVw9dnr/PCjro/JS2wYs3ZaqfKM6kj+m22rryUZ0ukn0i/L9iAXA09HW8sWjxVTF6ASSbCF76df+5m6ayK92GegiTIvtvIOJ+kPkWt083SjuZ2NxF/H86mzV7fevhFIAtNEHh4zzgEZinYYkpKOGhm3ytA7+OdZZ7nVfVm9uMwh7bLo0y8t44pLzG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KJWyxshkGMsnaZm6VJhJDjvNvDfEIVCKng7P1ORLSCI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bVrUgfgPXLR7GGBRyEqlrz98W9vk8AYFWKgOSrAgq+r634+1fEhjZ9jQLfLfwpzov/FpgCHSUcP7ZAe4FiUuNAMC0FJOdfkfOTZnXZbE6PwS2S+dOTOUZsYaT273zo97QjgMsExVTwsaIcuJ6Qqdhcm1gg26BOK5BC97EZEr8X4xcqOM/tNC8YUE89RVuQnc7pDzFcpuadkYsqTTZRYIm5wLtPd3VI8UmeBSOcbK9+ZymxDSy5J2GeKFE5rk5Q2O+Mp1ozbPhCvcee9gBqDvoAmISZLWHy+hw1hWFwvU0W2XAcl8R2aPUcqvzBfR6NUIVsqg6MZAsx7jHxNcLT48LtRkVpjPu6eZDe/+4AWbM1OUqquc4vnbncemXgxEBzzNs8mvM98zUzk3CKdIYupa2g7fPn67+5qh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KK9wmNj4QVyiR1KUBDZtughDi4B4Bw3unRsYjKE0XE0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mbnh4hNMtjq58p6y0qepEyx94pkHfRaxeJWKT5z8Z+yoELOs4HtT8XwLGfDeiSHdXTCld8Jbr2gZbMDG0ncTIv6nFNh4Wj1Vyg3S6bWB+gCHIdq6EA/tdsSnWL5KRFhO61IsEyxH6d2Z1ScSKr1RbJ5sJU2E6zvWXbv9O/Fdu8g/b/deI1WgenfTwuY/lJyk76JaxGr9J2njL5aWmRfvkNn6TJdqLngQR19BlJZe6bq4dN4K+9llNiXVDxykcNYp57k1q9sBppP2qEpzzn6dXc1QOO5wgI8FhrDmUoRQ8bZ1q5L+GleZHLujZ/wIpqhYFJXa9cEqjW7nucd9QjWmqG0PSROsYDDM2da+jO6CB0hBO9XCUbhfI6kMms0AxtxUd6dvHfneiXY0P3ErMUN/hnJoQut28IO8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KN06c2wlTZE/0D0sfwxFAlJoPbc+sNdzDiqbE57ZM2Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RhMKC6ywOXWkAj6YXkZyzN9t/T2UErgT+Csl5tN79BDmXRoAarGz/rSZWu5mZXe2PPrUs0YpxU5s7EGtEuV8WfnGHeWYgA/iksFKtUJuEQ0S2eTlQErXsaUqHQD4nPhe8J12IGyYxRsyO3YXLrGVER1VIqD7KJ0j6f0vrdGCAC56Iskts9LW+QTmxLGOUgNbmZr+wmYUlLzApcZOZeuJ6QxjekETijSWDjWzI59ZQ6a5wG5OAdKmN/bv3AxJUJFo9c4wCoE1s6ySqYxVoQqRKfuLk3dwThOr6d1FzLY3Io9fYVGfDjCSszBJ+bHAODz2pOLaCdiTawNBmMnB3//h7p2Q8p3xuVRiBwcmW24XLRnS5eSNMz0qadmD95w0z8/YPOIgOGcrnDjK8AEKgRIpMn3PGwATa4lU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KP2w4H31suRjAs/uAWKnnb5nSqU24ny5IZ4oLKwihTs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i2eZq5PELyqJLiaWIPYXt4zAXLwf/OVT+jb4plYBzT7Jjt8IlOBJBjtLwSiDWLWzqtEyAocHC7DxOeb1fpB7S8Azrz/a6aU5pv4Gc+aH+mAShWQ45Je9fIsiRNvcjZH1AV0erakrZ5Pf2ytqaHQ4I0WBCJLhy7NdnmuhF2ErI2HcRzZY0kYqJDXMn4MjsbiooKjfndcVwfS91O/LQ3h0FnP3p7iqakL/75Nvw72O/r2wXRUiLzuWlWuSzySSSEpdlPfpWNZ2S429bIsUzA0VBp3uv0ensqjat1yltZy1ntQWzGU1mlYSmJ/uSA5qCpA0gERPdoOj0zi+FBN0kKG0X8EWJH7ZMMZlt8xGh9t1AwV1qeQBFp9+OeT4xvCamwKyILJYSC+lYph8jtA3qyvykfK9yTplFtEP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KPWdGCBVWeW12IF0UlXtn5QWuew7y8xYsgoCQ+m+GaU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lBC4OHmBZRkhIygrY3OV+f9eDOTJygoW3LDdlDh9iRRAoLqSkabCbENiFN03USrdwjhl2gahRWhaQV9XWcKMZfVwL1qhe10V8RKhKf5+OytiGajV3Xtx+fGo4h2GfIeVeldYbvlzlskT0U5FdvXtZwv0ZNtDiXg4yd2Y2a7VFNOF4ZJMV99fInm/3hW3ETsWC0VujbIEVzqGyDh7I7SiE8LQ7/x5aIVXRfBA/HUsWeDEHGnzrIp31SYFCmi7sMzysSsdV5Mgci54SRQw1xqe5fyp6jYy81FEOK4U98Bqa8JsKjvwhUMWXI9iN+0cEa1cl9M2l5cvLPG4R7ZWxIBRBwEzVYdqKK/pejO7hCBCoDxFB8RUEciJVLwKNq3IJOKwD7EI8Atd7FcjEcVMSwTTlBiVTYnrRNyZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KPkUEVhoLhd5yzuRTJDZCAhT+ebw3NNg5qJK73e1HGc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ISAHfVF5FUEARz87gTJqoY+uIrys2C+tSI/tDtLjEodRnvY1ZXen+XQTZ8MHzgf/5vLbKsOycD5QsQVDTqXf94ylP56er/QNrd80vI8nYwGvZBKnVe2JwtP+wMs5NM5RqyJ41TPPeRUGUWoU8qt+nIPOUFuAkM05mqtE8zvOWuFGfPEsKOS1fSxMSU3au3kZjKjMYcZDVn8LQ7vQZpLn4zQUuSZ2UYpUeDFXmGLrU0paNiZRCN5fq1+O9mfxnfU7UI0jd8P7RbydvK27U9/DQnBNm1KCMYoLJhOaqWfb6maSguA7Lw5+WgTKs988esJ+Q43n7EgORYIrIdpmSD5f4dzUpU0T13PoY2Ro5lu9jq4D+gWo9wjm9iZ7R6hEiSNiV94e5mfA7AdVX/9ySbtNxvqHPX8k3HXF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KQXh7d6mqk84YjI4EBdb0jF/TbEvQvTTQUJRaJXfwY4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mzUgzqhjW4r3a0U6IHcZa1O1KrQQnrZ9K2laSSr/RXhaVHYQs0lvcyz9iYOiotGyn7q8JBgFtLm9GKg5G2gO3cEFV5QNk2cadtDUkgAJxNwdoyBcv7gjm4dGNiv6JtFFUG/okzGTp8qObnJsja6J5nG2OiqgebguVPat53HmGYvKDtIo93VsiC2mQ0AXqPIYeaupcvqtJx15XS4KGRs70QBkUPer5/IQd9weVvOA9qVfI5YO1l02NnsCdy9bM9Hv8wSCOi6hEnYgC88042pU+m3aQOwlzLZuNOqMUBYflc5Kog1IvBUpaV/K0FYLTZyofukhze68UZXvgcLpb8v9tk31i7hJIbV03TOQSLREQ+QX+iWhMnppppPqLidQmGelg+dngNtKifBZvtGmLwBJCGrqATv7zmwX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KSag6R7cYKK5SXE1+FDerEIC/Z1MN3ixOTNiFuTqHYo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LSQeNT+FOdq2SAMbW1kyB/RzobAYYtzM6QuFQ3vPtvS0C3kBLBAJM/OE7J8h/vvkR/1J+q3QKniqC0oGt3I6k2D3UlvcymJ/p8CFFZEGz+N6Nuy3Ot5v9aPzca0bviv0CJbQUFSP013DZcVwaFbSXsGFW9dsaugBHbAMTmoyS02cd5w7ZeuSyJ/HMhLaLTQwsrLV/2Lcwaw1cgQGIt7Z4kjTwSW0R12g/fxkk101EgNdJc+1nWfMjOitAlKgtz07PUKsVsSzgyUuIWHNigGKpbtWudxAY2Gr+xog5baEYlKfDcl94jBVrCLuiTmCDTKJZye1Oee6D699dHBZpKK5JX1M14lc5X7VjmorqqSXSPqjFQyu4N37/GBxMDoQkzaJ9YtwddSD0Uly2s+wztNkrHjHJ0GKoDdR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KUALP0wgYR8l7gKuwFgUVZ7hSPdzBLDDjtaJ79o3KDU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/rA2mX1zSLRAhL5JDiMtuKW3DlAVMsKR56pErzFZ9YQ1+h8ZQRr2tP+laD0rMaRTMGIlmETjob/4W6a0cTdluX5U276o8IGw2KYKYStzepE3ql5Vt0EQMBxqiOhMyVcIrZZvCSGHSsGudWnbki1hK+z/diS0/mxALHtT/tB4G46v9xLuaLYOad+mfwnFGHNS2psXylaNyV4W6NONV3VHo6GXi2ipi/YmWetK8FSB9ONUp+6YyKywcGbZcFl7Xv82FLYXaugDTvT05FEkAtyUwYJvDZZLMjBBfP04LPNazr1VQsbpgv+89EGRVH/KOkwTCGrcvLnm1CbXQLabIDuKdcrMx5YMMNadOstacxUWF3UASok2yIVUATChOxyGn7APsjZbWkQ+E0343z/0tA30COzt8NdoGrqU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KVh4XZWp7Ik2VtAk6sQIwkMr0wwdts4YFZ+B6gHQTa8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a+jZoEoRNRpFQ8AaymcKIynFki/BGEPn+5C1+TQL3JTKDobZpMJoai5e7yjOiFmMVjQPUyAczy2Au7r5oBpux2YI1qVeb/IqOmQBWdawxTETjPw8Y/xzlrI4Z0EK6RkIuJkZUAEz6IMDfaWPJrL1P4BP1KsxnbnxSYadD/iU6ZyLl1HcI9uKbhQlCgLFdIJmbPj/FB+lJRviqq5Wq9YU2xylRSWjH+1jqq7esTgJ6fr1EZ9U6AU/FR0a0Lg/j9nxGGZyrdUYG/y5HPr2S/8x5IlY73iejSuUiReNVVSjtpDI5Ou8/xe8Egl8+Yp8dkRW8sX36rVdpal915LghaBP+qOhZmDLWltFfnwKwjjVqmewEpscvCwBFQflabyxOK0y/RmQeEm1C4/3yUlROhOXc+wUyzfWFDhT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KWsibqbBt4w9WP+4czRec4C127QAnAZHr3Ke6KLydSE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "es6NaLSPdYQGY5H7H83gM2Pe/ljCgBmESI4pjqA006hqREYWqPcs77vj1+j9sfGCtHcyWIKqbyDgd/VEDHrD+B6DP3j1oq/EqF89nr3uMtWCh5No1d5+FojkGRSTaSa/BSk8SzTIIZv1akAQMGADE7SbAK1ffJn8Sr8bU1zO0AlHKl/0Qp4TlllDsyqAYwK8AlIZ4dwK75eblpZDE1zuKcW7wvY7DT1XIGDOu/8f03hX9cFzfQoUd32xsN/p6lB+xANT5fbn6JEr59smCGYpGnSIt/pWZwkQrhSfdxV8/b8nutaq5OWbfy6XGn7dju7j+RwCz0T04+tDP/8jd2Rcl4lSm5XH5ReXJupCI7b4DTamgcoov52sQgpfp4FESeU0tLsN+WtELV8THrPScGsUvVSNSm/r70nd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KXtp+mZs8TYJLW9dDBYpEhtH912mjgcE1NoCFM1KNe4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rkcNveAP3IDY2bIHUUbuwGoSFcvY1C27Z0flzZIy4QLEQJ0Pp/Qi7eXAPswanDRiDUgUyBAXMrjf9CwnM4xgiRu3DJG0SeUpQMb/UM9fb9uX0Kj6KPmRu7bg5hk5pip4g5u9aub6xvs4DkhC3kN1xN+WP0l4pCMGpLqmoBOiLr0fDYTMWHDy6gXupaZb8bDyUJjMIU/641Mel9aIlGhBgb1/yOcg2J7b9Nc7GvbrTLJo7wSZdC1KPGp/IA/HPZ2DdGiihVHaGibsZIa1FVBX89nEHl9j0s5jxhWy57dEL8Xg2BVpGxCXffApxW+5WQ5AuUOOWFUuGpAb+MKRovGygy04sUY4KJF38IUUE4ywRGKoxFeVg2X/N3jYzq19zq82IX9rrbYtKo7BPNRV1Jnbdy4e5pWgs2mH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KZTgwGz9R74t56pA4SBe07dvqs/hhA5cXgUlrzjO770", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i3DB7OmuuHbLygZL0M5JJbooLktngN5GgBjcFX2kA8wLVrgq9gnNe1OaPw+PBYAoWsU/VBaniE3awobjaadhaw/AMm6lgZ3+vI31JCFsLF+fvHjJNKzQ4ECedkXruMaYnj5gdXrUpy02Gxn3to8hTUeNXiOkDl7vnbVDeVeS6p1e8E3ZukP8CIycRe4NShYNGQKCRdUky7/B8JPL7A8Vg6Brj6viWoHCFf172EvG9IzxTk6sp8mBC9Eb8eYEqrrPfnZmn7/hELJRcPELwG0LO64w/sPKfZEkelT/vmVzJu7oYL9vjjtFWygV26jOg9/6I1pEZsK2JF8+BrdAWPYGIELXz9CpGORiganKfOLwizUF8NhQafHebGqEHnaDlIh0bGFivk2aHEF1n2QOhsNDt4sEB99Gs7u1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Kau3Iv4gqEbY3FWTC9Uk5bao0O1EHsXYkkxFrcKOrME", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+QYgYCYZilTd8KMran6h5pGRFlIsLjOeFSh2yUQJELFQJ9faqNy2dOgQPZGVbDCflaSyyy03wjrwURTsPlDzFcbWmc2L4K+vSUutFiybDEzdMW3dGXGxLq0vQYC/B+tmr8qfi2dWFWEqrmfiFtMXCwhDLCnQC9I7HmlghjVVDjvioO/eM1wzQevXC7RjwmtoXOb4dEGsZSoXVrZWFnjQmJc+yqb7lguQGQtp2AbonO6+n2kUkMXZaXntVKEmpNCXaxn425W1bEG9R8J8hSXGaNlXLAmgm0p323GII+/4V9sKTPP7Br9YQIkqWhpZnu692ASxNWk8Q+0T+bc8vUOgLkPSQ4ZTJf+xudx2wjSpZ9zNlqHSDu6yMJ6Eez8XCMuTAOgj1uVghayIns/kohfqI9D8/9MrqxIb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KbQHjHPF3frY53LNbPvBNboeMIYU4Ey++RFl1jX8PPo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8ZxO2bnKDimB3zkjTCWt1Q4RCutBBU/0tpzJIILZkZXEML2uV+nMT7MSDKAawN6Z0LiPoOp43Rfzu3ImjPPhmGESaA6TBybbJPPVpjqKKrB1l6GaMssTXMJ8Lk1rQtRoVKlpdZOWEw/gmvzPX91j5afT69a1VkdGkdGfk6Yt9/hZM8Fz5Xr/Gxt3ZLcOylKXFnkWS3Dtb9bjTzIyqviYvt+qE25wUHPAl5UZLI+PE/X1of8am4fOrRSsA5+2c27/1xvbunnVyeKJ3IhfFaHuT1m9vojXqktnSews4yWbMPNarCI9M25w2bI0ccosZ5LKMgTxB9Ak/vO9r7t+CJpO72ISqBBC3yXXG5qFIfrpKys/bFKZ0m03Ko6vYvooDF2ln16v948rqbN0BSZJTHEdsJQi4Nu1dndq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KbrJ1mMhdUK+0Oy2vWqq/Guw+uvsZNKJYbUC6mQMBug", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ht4Xtbzb/Tk1k9yHVpu6Wv61DG9xm/0ZxY6wreCYWaD/GKbRDkj0y1QovBFdVNxcX8vlpgUBUI+xBst+2imUzMeyZKl7Zty1bqd49zaYDG+47qOvV38qEqI5VS+Ysf0oF03zxb/xdC7DQjz5HqY0qivHJyydhyfJaMxEe//r0xJJD2+x5qHWxVQ9jFt6qYrp3Xyp94kUNh4sBX1SLo6EYg567etfn54PXB6yf9tNpCviPUwX9g+yh65g6kE6f65BtEJ4If/omOIcega9aVNbizhbO25pZeS/ARTz3DUXqNIr2qcaKe41P9AiB1ki9rZsqqASRMyKL4sJhpLJDe3sOBPERHjAPX6LbNB8KhANuFAVFRWNACXJ+2/fCfrnnVdqF0mSxRA5DQCriL1Rle5Wx18mRAekSiuF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Kc+ikBM2h4qtkYTwZb+w2544WpodWFf+qaDu9MPrpBg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sWoVBdmmuVQL9YFIdEVtRz2WdmtQBeedhtTU6CEOIH5w8IXcNMW7KojhfASBqYzY6Ki03MrZIC5KOeUh5j3VJZ1FNfvM2sg04T1v2hbqaZtc25Y/9wLFTsGBWjI/eAKWlKcQ5pp4IbP5fzWvoG2Mlz48JMc532/xSFx4Rq8pFzmw/v8Cx9fMN0Kc9thw8ZmR0330vEPVKHPVLM0rm0XW+yaclbuXW0tn6C+JWvUPQZUGF4WzPRalFT+ZMVOdr3BRJ3c6hslE1DQj89s6TxZ5Sv43xrywBvRrM5CrWlLiBfl95ZewRtY5VO7zVsxcmPfM1qjRYU43s1RHi5hWLMIB1Tkk1zCigBLPB6inRvqeR28EWF3hBvp83JlQDC/hlEfq9+chZNwplid542zV77JD/bNC2Vle+fCL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Kd9y2psQ3KN2Kq3Z3b/in5cVN60ZsLSfxyLYGjl2AOA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zL/goS2tEDMjHo5LSc9WdGvHcGfXG9xmVaVcxqU99LGTScy9TR6YjgUtHrTbGHJcmvJdn8yTz2J3SKcV4VGVcvqh5m2pz6jGZQNbX4LHmRnEecTwLbU1A11Tujlwq5r3KKsQz25J9eTrs+HMWJOYvnp5tyDYEwQqbTWWaCgydI6k9Mui2Ga+q3U+WJt/4hypnw/iEgubo0NT/xvOYo+oqIH3aAz4gwcK6F7k9FpHMByAA4ZcxGuO3zX5Io+eHj5XBFcLA8uC38iz+rwY/I0e+hKSrI4MNzm/PiSrU1qNOySIyowyojo0SeSFeBryvQN7IX7Rsa8/WQHub2gqdLim2QfMj0mk734v9D4ZOvyXJQdK2Bxn8A850VHwTcVOaskaD0ZRSiH/ReEdVKOcCCXbK5PMOta6bxxX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Kg1ElWuw3tVPN/+5w4NPPZYgiQsclkbdw30DICUgcLM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TR8tr/3Sy4U1F8d39HIre6JYf1BXxyJ07Du7z3HupRzQvHTJnEAJqcFj301N/0bwkEenQOcF5xSmtrvwSsvQ3fduD9C+xCJTyjiVL89KLJse6OxPntR6vP4CkEuEaoSkM+mexlP8AUFrGK3wxhSssFWBQlxzgq0LPZpH1hhiGZdqNPzzRig0KYJXGTftaO5ITd3gXl2MDijjblQfGSDJu8uKb1HMzBuRdjdVayLLP3RUfi92Eq2Qt4kCgg12M7tUqaVStFOmXXDOiNIG5vxEcudp3NyMPlh0bSCTBYRt0yhdL5NRu4R06UUxrHfkPaSK0B2WvGRIUYWED1l8/t0OqfpdUS/KOk2MiGaxXDGOMJ9vIQ8PXJNvcqFLETQQ0O8EQRnloPvRhXlnldKUMv3ZHt1wcLu23PGh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KgMvn2VnQHDAt9JovvBBeBOomsGDh9g3z6/R/4kezTQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VOS3nBy/RlmQBdrQKrZXo69ZKTp2UP/r7UVpY6hFzww9NQi6PzL5oIwGHpCk3ud0eCt0v5kOe3HF8m5jliCyet59Ja/4JHYTH4wZ5KIbCe1TG+ANHQdlYPklK6PdO85yVzgne9PfGAK/iTO2MyAaSR2OYuAwZLD7/oYO7DKS0dLrEbFfdiCIX4HUaL1ZzOykBxSNXoS29c57Q/pEHroXC1YA0X8LlUPxRsE8HioOBH2bT37SPm4uYvNQhXENC4o38xD0ANFPBYvibJWFizYzptmxxEwigHyw2cEjN3via6xgro2+offNTaskF8xGvweZHXLH5xhWFFTIrcP4pAPdCrzA/565HM+eTmlDMR5IGlfZaTRSkFfJfxdWKNILgUfase5wTVnBZDnmxfKC6flzh1HHiqoPvafi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KhcF+pNjP/4cysedxOoYvHrsaNAfjjKJOtJEv4oUfDc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "274qZVH+oJUoQXD6ezbDoHMRkv1XsUlF2hq7E+2Kl94D9VnMJuDEWbhCpwvmnVxOU2Hi34fjueIyvDYmCYxq4bU9BBeyH2FrAi0U7TWt6EoTPrN7Wsk379A3HQW1MBq5aeQQaFJ1ginZuooOhGOvwhXNe9LCab06feWu4jZVyul0Pyppfa05LjAqImr8VanV14T0wplrAfFPJnA6HLO0Bi6YEHIf+AcHMRbj6Zick4bE7adUGF1L1eyCpYXUh9olgqy5V90pV64XPWSYXgtMuekahm4cgooGghUZbvqx1gdChVEuJ24YnaRnnVIh+yxLhlHf7K+49hg3kWEQ1qGzhYt6MVGRMvUF9499V6F3M4OUIjs7+8ZKkDwHZ/wjGSpUmxXHrn+HiFS5za7R0XtxkOUsLWs/sWO1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KiOUgPoCtTAwXnYe7Z0EHb6OjFIq8AmWwcVE4T5yAG0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Un+YX2hj8DWGy1vW3EYOEcFFImQ89lfntHn+LgiBh3o+ZC1dtn5tGxkNrMeNRPIlrUhv+bmZAYPpc91ZsLKg5I+fuE4C2W2O9cbNVVx9vJ31IdvmpcEm3ZJlV5tsiqDTFBmX8Z/OiP5m76O7KH/pLobHZoci1ZaHrSmaSZW24oKmcaJyILFsfAvlxfKMPdQy2s9HGP7PWR68bfEWA3S50ZvXx4Obj5LUYxjdDuqhmQ2KY+RHWkXVr08ER9Q9mOKQQ7w04fSu8hSiJuoIZyk7nSZKaWqUeVgghMJcaYmEA3Mlw9jaGpIfcE5YHiiFiZqCRK7hnEDKgkin3RmYBHyVzEcOaAXYDdPKc2DfggpaIe7gVuOh3KwZoh0uPxslY5Se91Zf5+Ks/oZzryqP/cSl0bks/GwfasMq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KjVL9OORWQ6YYsCju9SzPHW1/XvEM0+604b8BRQIhI4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AfXeM/NaZJ18hmLOU5RGvAyfdiiTZHXIhSE/6czrAUUjZatKmEAqEs11LdR3QdkD+ObEqgJIYbEVV9hy7AaWnuv1fMpM0nuhYaYptUmtBpcDTmsKw+lcUwbUqB6u1iRSNQ6cmlrvfT4pPA5GCeW2BydEBwcIAs7P354QMoiAEJHFr3st0e5j3jCzlhHyeHm9PBX9637bzUM5SSN3wDm+b51gd0Hf90H0NIqQMvLEkpjMvcIKfY5ygqvhHo7p7hvQz6nJDzpoM9brKePpl3Qj3FxjSrJ9tWZvNMeGSQ3fzL9drnJ/VMePedCA8BtFugeOrh8JttX+66o5feMTa77LUJGrTsbdjbMQRby8XYe8wbsDlfEkKU/0IhcgDTxp0uMcaAhPhBmNQkhDbpZnjBV5QgAMjkD873O+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KjaAa6KFB/HUXbyVtaNMn8HzcdDaQLOWRRdQxDLLFqY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ys+1GVqwZb1vTiDC8zIjoUeHyE1tq/Stm7YWtBhTkGn2T+hCoRhLAORfcVCp7t4OVPeIxlD8cOk9snUjfdoQHYCDTnfqgeM3SRG2bZxvslpQJaVbB6uDfqvf9dH74a27wt37hwOgNrOHjtLV69iUeRozsBBFfnhd1RPiLxiiSVCs5/O7RqK15plD8lE8jel90eYyU8okKk7xLYQ7OtG65VSI/yLXwrHMVhFd0n083ZqzKTuFMcPJzJmAMvwiMH1Eiz2K5n7l1Qsf+3BNcNcrlpNZqpMooryJ78hEMPUgFna63ZqRuqFAgpuy+Vdr248zKUteXKvweEl46vgPDAv5pjxHeJRIxz1cl349Xj+m89wIq7jXhtj0s3315Q+KBoP9krMDf7z/l01bekXJCK/X+bFLnoWDQzGj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KjnkCBYSJQuIINk5LWOI2rbFw33lqtzDUtt07jggMNU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VYp6intSDgsqC1xAvfusEA481L0SH1Np6IJ9OSkDV0mqhJZ2s7iLTkSE8AZcrX5OvvZwqkdmAIRh29SJMp8qRlf0DqkER0dlQuZ37m302AIrD+6S2ifHlysmxXmpWGGj1bssV0XourhEtkWuFmaMrRpGizQOg7HhD4xKIJg5vEqqSz9+qrUyTIWV1Qkb0mNmwvPrXwXKUmigVxob7IkdFH/SsSbptqebJUatF2Bfgndpya+yRuyws3GobSKhj7WK7F44uDaWzxwKUUapxaL/RWdElkR6udw5wzdwUngDUaPeJ0h+UokyNYSQdUggDtOyecAqNSl6OJR+mIbjmAOSSOOC/0vopqHAdcEkNNIoMRl0px0qfXWSAawk7yLLtMxfhaWmYnULnXMPGuRYFrsQILNf2SLlZHn3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Kk6AUlOQ/u+/iHI7NLc18yKAnk89TX4rvJ4AO5hTCzU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pmMwC7u5t3MIt6hSdXyHNh8YBi1lJBLTUDMIUNKEJHdcoP4jW8JqLCuAsDJejhTEb53whIAsc7ZbqcoN7RDZnqvyQXZJ5bgrnJsY7VjTLpTYM8R0olFAA+l1ZOwaPnSP7ptbcDlfYWog3UDWuQ22bLpghJPo37A1LRJQacSIr6BZXbuxgM6a/5VcG2f3pcKehlV/4UQ5mPqPU8RFWpOEdNTv4JnocXJwk4TPyDDLbMW704DF8UFvlVdw8VdvyJv/0oRpn09laj/9kp+YShfd/hNqniESJ7ju+inUcx3xNuw//j6g6Utj+cEkw7+xYHEvgr7lyU5/gEBcwPko9VgXW3tWSvvGSNW6bHom6e3bwNugAFAjsXO+5lPxZDye1a12dmoQVwDqF3CRD1FPJdbOYNmNkiqaJCWV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KlCV4Cela1i4Y4SF952wIpQxSaOHFbu6QlXWxmrPSOo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ojOVG9VsQa5/b2GaY9RWpAK9UX8Vx//Q7H6uXcIY8FAm1RN6b88AITzlwj4DeaKrWnA/2h/xk+7GF84jmBFCqjMq4IgFJIQH3l1N8VS70kZKJWQXxHVpm+WFnAfY+H3n01j660bXsVvM9DP6AdI8fiZ0c/1ipk4plL4Dex/oYbh6SIV/zvEl1VRYTXjI6F3MAdkSKwITEo1GVuQ4pqAK4Q9ihmuBLPcmI3uwcdWuoD+q/7vcHEXrp8lN4XpufHe+wHRPfUVIhJa3zxrm0m86vNea7XTytQMz9rzuQ/1YXgP5TdL3aHUh7QK/M7FpavU7arMdL8RY2hDtliHtuBNc9dYpZrTtGR/+6E+YKxk+WrMb6aJXreYsztF2kyhYERf+40owzsmAKMdgh6qctkIh/LrYSkwYtm4M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KlaRneDLWpc4wMGvlaVKgolsT5G5tOeYtr4DHVhupw0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1HoepEOE3pN/gVqQ5TEaWjfwSR+Iv3kRqCGriPjjspeOldjgVoJt01sWxYTJvyXOcXHBpDhu466M+pEyUp6FSoEA6GpG3M3Y0L8CU0tA8sj+fFw/o3LNGvwhax29zg7LtIs80QUnUnssbIiMc4EpjWsmrEkKNJ5V3JGf/SlDhPRhn3zcvvcgN2GpjMLYAzQbazaPn58U/M9j7mK1OVnIDrI+0T2xOaFSvdtnLltV4ltdAPwxeUIwB7czBVPPGhMMxdMtK86ddOnUI9OikatZlj81iBQ8jfonZavFHyJSShwEC+wZrea5B/r+dK8q/Zs3+JtOs+youCoDJfqGLDAEgXH2C5Tr5qC2WGh6xrukjvLjNgxo5ijxKYFYp1OqY9/vgSaQXkUHg4wNbLKcY1dAOynT0suqKTzJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Kpz0oowUmxPm8MYLFix67xnPQqfjYELz6dsxlC7iAXQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d1Ar5QZfikCCR17DuhQGeoVcQaWC+27/05D/6aH2iNyL2KAgEQb3koo1ityWYe2pSxqhOVMWk1GJFQTEA6RGvxdAVmCiSAz4GUG8zNQX6QWteQgLrSARRJ11NGVXmXyJkSFWubGSSo5nYQlQVDn7bUJRoB1uAm+RIfiGWp95T2+3yAu+PKvphNflGbaAmJB9wDB0rVhs0dTojQelneNn4pd+IRqcQgxq2BRibVmjZGPXMu6rO2eLmnPz8FEwJGlPwhSkP5HhtoZiho5MD1FBU1Cxjsx08uFKSpprU1aTnoTsOUX1i4lFUHWXG8tZl9L5tV2Rf+VR133Au7r5Y4ZLHgoe5myGryct1K0iuO8Lm97xUptdjrTIvnC0x9M+WeQHHawZsotGTgGfHAZ4h4jdsnJs+zWEa8p+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KqhYwOtnHsVjbYhQEimJBaac1YzMOO+z7Th0h/AnuXQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sVjJAyQ+jJs4wlvgBwwE/h0r+G+rcQQHM27u1KKZT8l/xP9XEwmw08I+zCuAfjhOmRNCxfCjVnFhYMdyKwLR1yCv0MbtsN/jg3q1i5qZCGZos0iG3AX8ovaLuEyiQR1nKzwy5j5tLEWxxHXHKKvFYfijuVyijxvLqqcb+N99fB+YvvuD496M8OXmt8hmgmTGUd/IE9LLYhhcjlNMuLnr94+h2ZtgnhQ+IiyK6f+HqyB3JPE3+8ZbVgiUrb8+St3oHoPHoHBtW+bkGcu0Qw0VclRooPRO/wi8Gudfrt1wcAtshtekgP2/4mbmCCwhMe261kC/L/geujVjn/UouwFN9p+WrPOo4rp0V6fzfLQhOiUou5LJT0CUvKOWxprs7BzDN+ul0wCAkZkixEp+V2/Cv64ZVKvc9Dxi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KqufGLazfUF++5uQGJbwVYr9kfe52P9Zr116by8Ecu4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TuAnigPbh+1P5yGecTfq9iEGvNV2D+YA0ShNHE7tJRl3etDD0BEVHvZaxctve3dasdk+6vRfk4LDuV3A/E3XayjAgqD2YSzJHESrEEE2vV65UYL4Re0THMw8440mZUJg4ZYg90lyfN4QN6gNWr8v2KLjeW02igB6I/A4BXjIvYdCjRmgIprKh7UG8yjAMaKEkiYm19AOlHhLNGiCcbOL7EvN5nIFixSZvbE5ILnNDa9RUjH/6vaSKad1p7WhdvC6iLlDHhjzYWUedp9LXAr0ci6u6qnG0+OgB/a8txsOKxtjRCa+/7lInOQf2bkgKGO+EntacX5u7/kqcXF/BMN3077o+1NdLlf3pp3gUEx4M5xTOIcKFcbRr5DIjbxafjrqqcJ9CA3pspjDdN06B6VkavvtpX3hw1gs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KrQHwMHlFGffEuuFUSxN2VgZq2pD+oCxv5HyY/qPaHE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VDMlOAqKb2GZsVXI5vsQpYHbGodnX7VBvmsm8e+5vqjA9CYwi09nYlVNARr8HDlHrOoEnvFXtfNOyOyKWzYxqDYkkXD+4jXntGFe7uFLv1/ZnmOjGGtMsb2dWtSRi+NxZv/5moezAbNTgK6FHAKJFlIUeBku9fUuMQEm1AHPPPYH4AXzoStvyzpAfnkrltoOwDgGrKafK6Ewu4NQmpZd4E+s3jaxKIK4DHUBJfFUBRSy9/w2hZe+/AmayfuG2c5WhZ4lcDCfYYv2SNp8n9+xuhhFymGOOX/17cEiuvXG1o8MD3r/xI/aLlxw6oRzE0Iv9i5leCMPDKbu9Q2FgnRtsy+Q09H62p8V/kCPJg0ZfVMAIjYa5tfWQ6XpUM1lxqvMZujm3JQ0nFW6hu17r5oFBwZ3f6O81nT+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KrSk9HrtnaVViCIOlMik5u50FDLJZvHCnsqzhbCkNaE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OezHyhE6HVvOK/fzLoph8H+ISyk9gy0rUErJLMyzubNxJf6Rh1sMZORGezV585wiWvnhcc8M5t1rTojPpheQ6wtzJVAhUwqIxIpZZY6WBHd2Oy5B/3Y4MYGCnFt5HkYgj1VaOADgIiA0ESbMghAuqv8lokctvavALlmqEe0PqwQ4OGOjj3eDbbrp9rfhcHo9Zw6GdVFX1AA+wzsdFWfvFp+d6kyxjluIdV581+SwXYBGrEyICdSMzDJHclJF7SR4yETQeJ0yvh54uHoMgDofr+CY9dxxOQXJPhpM7wHYr4vU2pGqBVJS75UIBRLKlKUvB055H5tvqqxNIL8KgUE05kBcVrnmorIWgRCg3LLxh9RFAz8dWjGgOO13ooj1SSx6G0XOdTUR6pqrcyFKraNMIKEPRqDlFUFK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Kra49fIDtZeHBDPoo1P+Dz4OvKeuuaU86/MkBXhr1/w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2Y4qO6VIdoMxLTBYhyb6Apq669GpEx9VP2V8pJzuh5N1odhelTYBosVrRg/P7gPCYiNiO+RIctlYpvKaSMSnrnnIT9bnDcCsnxIOb9Bj4yIYq2biw8TPmRuR9G39CHRfaIJRZ7GhoBXz5BfNCWB8qBivuL9AosQIK7viaCbPz9mZjZgq7Am/OkZXlHOX14bXS7yD29usdChG8UmxyZFHCJXjlIFtDatU1X3wyspT2lSHCUV0quxcan1I27E+ihLiQMaFaULvgdC2QwWILcSwtcY0NKBVVbXdXNNMAQ+umX3V4fjtOBerFnSRErYvpP1uc8XenO0XlufGaeUcEWtfq9jiRvM28+VzoZxnQR0VMDDvmFJz9MWfOnFGgwbBugZbyX/iNPEbMh3Qzq8ynend+VWUmbDfsi0R", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KsV7Sxc137Du+lLdi/bjRPAjk/UnRGsfr9BAchK1hR0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "To6M0qTrn2AK4HVYL44xCjX/bils+VSdnFWq39edNNmQMkfSp6eZzkKKPYghFaTnbtmKu11ZyRPsFlhouLITGJbtETvie4a8i++DwAQeh/hyc7BcoRYq1TfPrztPchIQj7q/zMnJ9I4ozvpzOhc1m313Ul+Oz8FN+6YzG12uSL7+SCvfa6Zrj5vczA+VWqpDifWJyB6aPWMoQOHfzCCdkoomt9Xi8t0Y88X93YyFXyebjjKXYIdnLzUzkLY1k18sWgAbeEW8kx/KjkXyoWhVJEZrfUMNFUREfP5cLlOvjJiRVV3HgR2LN4YQaxtdIK1g1NE95q5k+S6psAroZ0y2frFjx/3E8h0VmY+Bc6hj4lKa/3mLY86vR8XqBvgHt/74ZEsxJfg8GYnKjb4qLf/VVouRp+X0uAUf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Kt6ocOyDWfnAKWyG7N1ZcRhmdzBwR31pq3XwM6XhZ4o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4jG7KhnUxVnsEoRxNcgZufhafFnfqgdIywWBaH/VbMvlBSWqBxtgK7MTgYTbLuUUVVud9jbRrmr358kXomcsthTLI9ILH8noVaaU44mQv9QRH6RfIVriB4Su08qZIBmNFV/6Cu2+227XApHWED5IlzY2p35XmPwk2+lkK4ue5H7XnRPluxDc1IMa/d/LL4UKtaQbxSp81DWN7g9Qpwc+7OqQWhdC72c9sBx58Pi+Ifr4aqXVoewcptwjFTLUeoflksvsvDixtHNcEpHs/Czp169FzM0uLAlBj/I8GY59Rq8/Ht27b4wl+UlMmqqIPbNGd7VDPGD+L58r1LaqpNBJSijAmTJXVFM3TQoHkVlhindyrKthq33MXh5Xy3fmMbbzSdjjVsth0i1imDPVoBVCQKxJgqtfoFtf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KvO6oMCtmLn4FRXKm98VJE7XyszzTyL4USG4itoMxPY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UPKYgzGShmOXYHtXCHm8cgLEp+TexKlRk9jLvhvGIKY0/sWB+LxDU8Xp2Dn6lD1iOooZmRs/HSw7N/MZRWoOCoxu/dOJ8+LQk3Z+Ptm0VPgWSBatUdK53NCE7VJS7IiVMeOt5N20yjNAM/de3/ZLroPBt/NIMsoSFHOhDpDdC1ZOZH7CVOQ4aRGCYG2dl6IRwUuh6sF2rzaV7G2SquDRhBB48JaF5oX0yKwUmbQRfXfAOYJuGXfIY7WW6ugjJfZ/HsIKLhowO0gBvEoy1lZtASgCJZSqSxIs5xPy7+EulQEQT0daz8Rj1DiuOwzk+Kx2imKQB2e5/l4RsTye1lWJxZE14lDSN9UoHqY/0TtMfxQcw89wGmN9EcK1BeMQJ5vuoBJ0iCuu2ZgeovcD96f/+7HWJEKMHLqY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KwKfahFtPgG9C8fKDU/lX87zwHDYFKLByGVzV85ENBw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9OsgDL22oTIiunJdsFk4JDGBPliHOd9PQRLTUWWBq/YDK23aYKZaZFUf7zWwQLgxse4dBilfYSja3CcOMhXRsWfxkRXS6m56/qxG46tclWIif2d5YzoLLqUbSJ1g++nH1bX1yJ/ZfzoLvwoMl/1DlIBuenTWIUS5SenynYVQuvpFKuA4O0uG7q9TV9wa2Gjojqlgf9Qf8V7bm5S8DAndjWIPddtxFYz3IQO5Ib6zCmioVbUYd6QJTb1UEw+mZabdujYITnRczjetH8Ok6Id+myc73Q4Sk6f6AQJ5wvP3xO9UnaswfJ2Q4KzvOgOCIDi3NB41cbHSPtxJFjKKNFFAbB1IGh77H4SHPH1Z2omcn/zQs247ne9kEJknqY46/fD7jLQ3RIsTvUuKXHWLGN54IuvzXjobylSf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Kwvq0Z74iV0g5oaimUPGDZa5h3BgR0BIRKSFQz/PXpU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0UxKUksUBCFVOtDuCHn5WCex0xwSQSmLgoWoor9AJPRx+xNN7S5GX1ad+zvaEifOBFHRwso83shjXr6JUWcTIQgQsFePRFs9WJb9dUTm66m75XYivlFCpc02JWTmZav5V/jiTrlaCaJzo0QMQ2e0CzS6TTogdX9p8LtUwl/d/gFdTIpC4ApO6uokfb6zVTTTX7D8lEKLRSUHmXxtKSC+/NeiLi21kzpl7EHTJyzmU+joxJ0WSAGucdiebp3HFnvFI2BPxHb/cIe9tfwJX7zYRrYbpTqF2KhIMzMDop0ZIvhSCb4QQX1NI5I2f+skKgJ/+7CdDJJgKq5Knp88cUiZndWIH+nATd3qLH2RCBjRSQC0+cOTlrp4auw1OdRTqWbfsJJ+VUz4BhjpPxWavlAz9Q6jAWnD/QIn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KxCkGwJsDmPAYObQlUQhQw0KANRslSp7tbVyQ8kjCvo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NKokCK+pv2/RBeZREkQbqEo/DD4tz3zji1txP1/LleXwNavTmlxyO3OrzRCb7nnxXvImkHF45paRTCOvw8D3DnudbaC6ONIRz0xKT1RvoMpLs9ZobSJASY8bzmSDcobICpDeaR5dbNwO7QEwbkdRhQfWFNsaJ6qkus3JBNrK4e3O66dUPyzzrk40uYCWx/4akHkvR8Oa8T35PaQsUn7+nyqstXzkCdXv/EuCh/2XI+jvo5q13o/WGnRscMPRWcDvNSP5GfLxxy3ia1k7PiOJUc885eHPHnL66BJ5IMdtEEBq5G6p6VpPuYjSi6oBOUp9/qedTzmhgT01mjZiNKibe+VSB9JVU/7YU2kn7YxXRdvQ3L01YS65mMYsKX6W/53B61i0J1lpNOXjf+QPyawvIXhtoiZVS/0l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KxGzVE7Gym5p8+h7W6WtnsqNzUzuQSw0BmSrferKS7I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8lguarMxUprGxGoRNaYaDt9eWoyFUdjeoycr7K3ExHwmymtcfyJsozeCPaYH4JaKgh4PaEYcjpeW8n3HrskyWsZ5kMG6C8dEsarTS/WYNeSAfik286LV9NzmPQ492Xsg5zGSiZoSk0Rs4qGdwh5BFLgWNJ2KNXqvhILfa+M3X/cESOg6cpC3TK7JtQXyqJ4JNbB/DK3MA6/POk83d7lBkq98ZudfgL3NR2WwsIsqIpuGS7AZi7vkiEWG+VeZXrH/eIyy3DYY7jz7ijwTWDiKdRvCgz/vP+9ZCgK2EnyW2XdEUkBXJLCDZnYXwBubxhQtR7QnJtBZ8nI0K2C4lrdsBLGsukfMODrVYKhpARerzW9iYW8nzI+shpPpMc5mESqVyh0GoibNTf+Q+bPp3mLyE97etrK5xYVe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "KxUVUM/35Wf/ysoQmgntgcHKmj1s1izRHvHQJ2UMAe0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9Goj27f4P+28TBdP0VybLT0B560Lylc1KUGf+adGjwkT3l6cElQ7iiN0rwHn5gqkowsvwblTupGOVi9A9y1buk4+K5uJG7u3tmMgdLddNXaTi5sWBWoZKqgBTJyN+TqCoRtronWIRaG/9nnpzktvLX0ezdWELQZHCkJhO0n/QpSL9UpIMDD+FWfHd7YN7PpqBnfMLf85vflkwL5uJt7UIYr2ciCJwhDGkvctq8Nkt32X0PKJbLSWAzrnC45dmzpjBkPOjhnuTXKVOtAV4whTWHM0IjNi2Avb+6JGOfj3HRs5yr24ErSxcXChsqMerFudvWn3SOwTmPItnwu/YYwDQAQPDe54RKLQxyxQ7SKiXwOghBrhPNRHue5wPMVlkjbOsPxYTgXvgf9zoFYCzLzFLeuXEDnGv2dI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ky0tLjBcqJCd+VnMqvLm1KqP8qkMFX6vL//zdWq8bgw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CWghRooeomES5MNdgFLy9fNeK8c7uQEcZxu5z7mH4ilkn3IWgk8b1R0mGyfEl55mPLVaOYbIeotkwWRD+olxr0TEqw1q8dowZTvXmVjuaVjTe0W1gj2Hlt+NACqwyOb+H3snBttqC0hg79CGEDsI5ojRUA47XgClRd7Q2Z1fzN8Uv7+3hS+SafCRpHeoF79tgWpzRPKtkkY+r+5uYDB5fAgmQrAKzb5/sa5puZbuhDVwNkbS5uupWqCEhWm/9YhMxy5co6l9nzF7U49j5+kMWyLeUui32b828+fFPpRgXRFF72nJM+QyN12EoXpWNo+KinJDLWGLHjk9Tcv8sWqdF3vTAHwS9elP5Jgdplr1+LUiAYO1WYg8ieGSigjgj/r0aapZdweNuz6KBOEj+2tOt8cxLW95CX1n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L/MtJPlo0LziEEoR359ZjUqkBHRo0TDj+8eRQmqj3xE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0xxoUsnwzO9ebjj4pDkeL/WDNg2Ok6NFE62Wa0PcWsV4i9ZIqF25WnCZzEvm/D0eQeKrE0qEpQB4PiALhtn1oOWjX4O+tVOqgpC44S8JebASaxD+fEuSWUjvgGMmATFaA+cDaQfSVrGxFRFo38dw/Alnf1ft8DwoVhxma9NPTDkjYAQaPJ7O5aFCYWrn6FZ4tCvddPe8yduDctFV8HWOUsM6n5cBFxCMQJCXcSfo9sUInPKZXxMH1qBD6f9bANDgYVFBfqxTyfWd3FvXfyYkGcO0TQbEcAcrdGeXanqtaU2ooYRLUFjiKFABBIU9bvgYJm4ZGOKahqeIQ9pVXnPsR0H3JpoiI5YS2Sd4nx9RKiX8Aqlsb2oKAZDajKNaISne4Qw8NKt9SofYILitMpQSverDWOcweOhn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L/tw0s09A7MY62onniStnB/ngSbpnNV1U9AX4jPj2SY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IAkMzvk1LyWoWclfKu2iyK015oKtMXvvF5eKXTvpKDBXopA2lDgZ2TmXlJ4SAl8mXZ3XTHTex1KMyRFmaoyKbQDJNWxRgG2eLdS93SrI3BLXbF2uLnutgfw6kAQpLt3u0p5O26+eeaKRXHwzCYhv9vZNqZtHvF6XlAouNjJOGRQUkqKBNbzu8cccZNVTkDkGB/+2B3/60coPfkGunHeKcjqvC1ZKKKX0xqrpiIGKF+UY7Q+X+mJvCAr2eBD365KuCc5nj3+KPIxxoBrBTx+rmsHzkrVVmJsBlOfyWKImeZvFn0/VTCp0n5iM1sQyY06ssP2Uz76Yai6BGKk9LrF8ykkdcBSowu8Z9bQWR0AuiDCnAZ5CALpKRPOeRAVwYK+ZGxbP7ZnwK5V9r/+nfVqiaKP70ofpcvNG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L0tIxt4ch+wAq5ilrFNSDD4F5X8MrJPAHA+61/2yURM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NLKKWK9nNJL0eEZC3jBGmStgKOhxehKerIkrHB49460H/pjL33pupgabpEjBxl5QQoZKW93rlV5dNpP/LraOeW9qIwU/ns4bEAtv3XYNUyn/Ac03VZzkXRV8dcdBlb3Jcs23xxWqNrx8SPO+dNKEScb/jNWufk77sSsUitelnZD2zzxl+OaQubcQRzM/IJhmRW7o1+UHYtHYfM4f8xlGDpRgNUQdKyv1FOcwr0v+NycHHFMz7uOOPy3ZyNgRP2c3qkl18TRBEDRjo/8vJK2v1/csTFhx/10rwTpXJAg3HhdwaV8gXELv6jeliDmFz81tD8Gi8A3utplfHObcCb5G/Eug8FrEnmUpQB76f2ewoNqA2euMzhDcYi+JWPfNF3MV2lEPcXOMzPT6YNJfzd43NT0Gh/qV01G7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L1JKCG4Lm12dFl9MBcazmXZnm1jZaz00GHkIm0USpac", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JicALuHDFIwA4CILqTiBfam8rMyfM9cBg8/eI/WufKJq56XFtorxd8MK2DMsUxcSXr8//4fgtSBGZ3Vf2uP9cELUQ2ocH/NxUf9VD1U3KzZVHUmPCKV+yMXJmHGMmI7CCQuyAtvfusX5zt9yS5p+r36Hyc7pXvnZpVNp+hm/TJY1sQbp7bmaSvz6YQnhzbsBe3L0CprWa/vqDoaDrplLrjSrtY1Buuk3y6iPgw+Fcr/RqO3vFIjg9Tsp7ZrCSQgxflQqSE7mstvO4/sQgCDJdjG2DNpywUi37YebhXHCBEbIqEZKn0nZ3hsNnsXWMdO5pwqynvnx7BaiKbUhW9gY+d88+h7VVV24wJwtL6dObcy2zJPUnRN5+yJyp1ju0+uPSAXFm9CWe0w0NDBzLKwmGP1OmkoOznlD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L34Ji590MgRX8Anm+yEjD40ya2wLlEkdhrCi9m98h1w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sEAm12i+P+8eB+ZvRvSO+Hn2Ak4qYuXRrLifhiN07EbljM+U+DpVwZzdNkVw73WJuSDWdE6PjYlmFtbmFPLZqm866TNFuOVGBayrr/60wgq3KmuFrrhhO81dLuAxYN7JngeUMM93VakV+24VoffTgdG2GdgzoTG9wK5wWwJ+pxfEac9qT/R5kYyXe9ut7CPiiidfzQUO3dZBfsLvlfa6Mng80MVijazlkfilAXKkqgb0V0GPm8Zg33yEr4aVOwSxjf3PpkkikIzd4eld7XyWgusm9F1+fZaCm0hfUmd2YNYUID1slup4XciHhV1/ajYNzjrVWMXl0N8epRqA2mGReWI4XA0/Rvg/qQIEp9HLvYeIYR82i0l7JAbihDagaz2DvYfPIXKfYeCWjJLB7FjAGThyrq0NxZRC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L3txmyTNhaMWTidXsuo7CWT4MQWUFr6U4gLG3obRQLg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3dKon98TDJ3YgtT9KDSfyUgEwitvsnAibr+BNjWSUe94jIviWN26JXLJ6JtRV52TFFBZQK8YsfaSzy9HaciNwTH7XNBxQIoAXbVG6iMO1OFmPfaEGaYl64QEjRKYVLHPqi5aXgu+6m8qrVoQrQR8V3PuYep3g4GDW/Q0HdBzEAZRlpcO4j2AOqgispneKnjbP4guSix7uUGeJu38dVK/3wxHGLg5KQ0+pPI2nQi83nrw97ugqMyDNdM8EGCl9baN+k+17mE+PQgFRdWmAiWvgdGpVulI/b7LeDRlqjr9Sg8Cd+mDa2P5ONnW0I2+vhpSQUKfvZbnH+XtqhGcQP1n3MffDYxhTDqQRfKcFBvk1En0/DpbO6qAFBCD98Mv6BqNGjS/iQqhUJ3Vp3YBOdCWmRBlWcOeXLza", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L51MG50HgDYbBffS9rUdQ5cbS2gdaVJZuEKusihwUIo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8Vtzr9oLsqYEKMJOu3areVgIq8rx/d+Ca5u3OScREzx6/Ov4OI0htmyG03cIDMJRUGWM8Ph5kH12OWGa9KZmX0HgSrnAclchvlT7m/q2IboMd1vdZ8LLYFeVjE7Br5R6EVKdX7STH0+gG9uhXI4qn5pZjCU4eFBvM6ctk7nVvwX72k5pCDdRKMG4MTdBF9uNYFuPgPgPlXykClLs2dYMsI+nYNg4Jf7P2MVovq0zItFTb26lLhpp9HQ8XwAZQm1cPjAaxDnlFL4cUJfI9Yr+YHkHXOt/H9PS12cRlNhnDBnUYBFJI7KBMLkqsGwT3aj6JOo38TmwOUb41lcV17QwJqzj0e0XOUiwasAtjE2FFb7KUqAsEEE8ZqdOl/Adpqlko/eIdZ+V25VKlKTvauxhebStldIfHYPS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L5HQbBPv3lYnRKGz3hfODsI6RxhQnWwrEHS8mtNokfY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WdYNjdzkhVQ6usWNgRKvw5Cic9gk0rQ/OTmHXxQnxOpquNUfoPtLr5lAWryNr+JCIRO4EMwDqLvRhThfL2gv9raC5TGIwCej0JRP+92YW8n4Ab6u0hQ0MNvghg+J+qgGsoZIWSCqwYJf6JwsqxQe0381cDs9koQ+op6JI/jtMy74G0Gd/IteaV2vBSjLQFwDMHllX5Gpcm0RwTaG96bV/eiV0Y8pGVZf1/omMGPrHUJd4EKdeudR21I2nA/A3dvNkF63b9jPVB11yzctVNS31eJE4SPTHrPdwOFUhTVdEv3RHANbvre8qgl6fxK2IXaQAqs6RrdMEUOnVofKpFKtq1pE7UXsyvFrC8BVtiCQdPRUOnEulRU/BQM6uKsJeDMP1A/hMRSkLlKbxAy33bC+pUq6D/l81MrN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L68lFS3bqXgppw6XnV3grPvCeaL0ZZKRI3hE1YDQ2+g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MaAiVAtZ7QSUr7p5P+NH2VORmVezzji21jyA+r/w3NcANHT66l8gLvu/+VWb4Ar7E2CaBa2/VPk0Zo7LDUWYBe8RQjBkpOP+9spZHpU031Ptwrv5ZN6It8SSpEcvgIrOIRz3VVIDsXSF1stztnoInqzs1RAA4q6+jL9lYOPH2W21j7hzUC52zs864oiQftZM1/gEKUXvJLJSJXgnkYu2wMaz9eA3IwAp2hf4DRkmv1CmafuxDT1kIeQwbozlJvYGTWtf+NkqGBy2K1EHsRhqE0Nc29OpRS5pA2Bry6Jkueq7GAK4VOX5m9zfKS+AsCCdCPmIm+TNCd1XFJqxJH2QqXz2Rc56gONYdLmww8yniKaiSV7YHjeQaD4RZZgG93nGgQPoRu9af+FUnLnJw+Tl4QF37LXYkIc/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L7wOAuNUPT2mUt5A6pcDJpSjXvUHpMPAMQafAMO7+Fo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o2ZBk7E31b6uZ5jdfskdCx5zqwooEO1JjB/JfLUO1aPu+jCjK6+BDjEqHDDMp0ryacuBsAI8eiQGzc5ZhYGhKfdrjQBmq5yLjmjNFjSoNGaKrYOzYumbjt72ecuaXYdk+aNhOERQQnjKa5sTGepXYhx02QJ232l+qb0EaEq1r8NUHc9OgwudF6gFY0wJr7svNBSgQbbFHR3RyMEKGhRJi3ZItQRjfb/LpFAa3A0KN6KIk9vMgq/WDHBgRzgusobzxfxyP1EpiI21XtiKZZqsW+2EuKBSH5s7++b7Ko+u02We8KvvpNjvACoFDKIe/3fVww9Q/xAjR6jYoX+ww+3Wpq2haLU0yhkSN7RBoI97goNeECzmqcRshXmkwHA9Vz8JsrMDksKO2cQFyjgItVYeWsa+YhbHa/Vr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L8hb59rIy2uArR9f+zAhlZw6xG7JD/C06hSPee0D/Tk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TirsaIkXuhgTEB4pgHMOeIKkl1DUibtb44tdO7JSZ/VXbfOL1JT1T59tFX5dYHM/ofQBiUhvxPmCvCQJ16g0M7z5GM/q/wWLzgz/2bu5O1FfqtL2mcv0H9SchjpCgJKhF1sP+FGUlq8gS6RbNq8uHUBNoOmk37HTHiK6JXzC6kzMAk5YSijAkQLXGQA4TG4zEoD4p+f9F5PafwTpjbCXoSmdxSAVGk2/TZxZt2Fx6evPPWEGrlCrwJdo1Xd0LYKwVgmvq/WrEIe4Qn2vTUHDaXHfvrwKp7hJpYAmmE+i9JIRDhFsq4HdGS2bKE3MhhWGRXwEHgR13/Roh/bEnTb3skAOMumSSt6t+oIMkwTqLvJAefa2G3k1DR/WAVI/0nNCpavAONOB2eiTc8uK90qz6g0ZgPthBiKg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L9AUfUHkgbl4aTiOfs5OXuh0R3b41gpY/n/uMkwfWwQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "znrXs9WEb7ladB+hXjYGFjYWg8o1AhafYn284qIuecHL1WCmAsJNGl8NsvVDD8Zxg+6e0PAs69fOoCd4emdyVgqwulkBAM1kpYNqvWCBTyghHAgDwW1g/6khnplE5VIXXwprNBa+5hie/WSDLxhejbxD2lMKp1q3Gu3ya2RuHNK6sYayz/dSgSzj5riwNL3HruHjq7TNfFcKxKY3jjEOb8nJoaa6wh1WudLhGgOsB7wr3xkf97DH0ltH0eOO/tt+MIy74QiTRqn6MwltUGhm3gDXGsX4Zffb4Ph8kqKOAQK3p/SmHwJcuaC6qaKmQSu9zEVJkElOhlmDNNmqZAx+4af3E3ZivcLdRtZGCghRJ/icxosLYi7IfinLLv24XgRAWeCFXjH4GEcPlahWigE2U7XJrS5lW+eY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L9BqCEDasfVlJUpncqibr2ibl/pAOQ8DWpd/u4TcIzk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iJG9QDJ4HnbmGaZgNAsrmQQ6IxCgT/zbGEnkLszI8vhnTxKLypXjaja1G+n5Vy7bGlQaAXo9+IWiVqnmjC3IEZiH+NmQLI9wAzsL0OY72OlNLJeRfnBjysXUiOxkuler4GiP3KiU5cNxSYqUWh4DQacmY8oDsDfkOD3BW8djRpc9/ENtaNTWL0bF4vwrJ8iYg6QUSHd2pnIf0BpLoauiQ7US7SkPGYm626fUrm63JDJY+BjMV2ezUDjanTj7MOJI6xZ/WVjcQZR5Bg2w/qExn3vak0Qzx6x3v/vcbrSLaA/v9Y6j7ibOKDE9cwpDgkATFJFDBcUHf6G/rl8JkHs4pMdIl5BxO6licKnigFwVR6v6K8pm/MFcUITskiyYTShqxZCj02OlkXhEmXyB7/1cb+Rj0xnA1OUu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L9cTPJ+5AtXt4Y/fGDsMspXEIEQ1dIIc1wY23q++p0Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sNIyxcrLgd2TOSBGFJI06zHaSTJ9ZJ3D9uHvHk6YZCH453mQ7pLeFLoMDcr8RgwgBtBn3+2+jSmR4ZHnQ56RhyGTf43iBKlCPJWIK4AgZZksFhx4IGcygApFfILiwe/K2hNQlnlVNVRiyjxPi2ahz1glyzJcRWzZ/JCCKAhiQH6aHpTa2XsKawnh9gT9RRv0g4zL9UNQ7CVqLISMzKc7zstDjyb823xjdgQBnl3UXadUsLJpzDJ7KnHW3oeunetcDQ/VvnWPiTFBlign/kQzKMk76+G9ilD5pdENXAkleJo++41LjT8bPOOEBu4FihSdyHmpIYR5DTLa4wz+y+TPUcLp78KISD1LIlQ/5s97TbNCEh9LSQcqSo0iY/SaOybGPCXUqOawPgcXZZPR6oF3B+aHrX8VdG/Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "L9m3MB74g7F9/h3wdXkGKI8bAHkUSc8JWi8gA65rcCw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "D3Gj4xXhuQ4isDtNusGGxH9lhjJE5RsZ/6aeSWuqyLLDvUwXjwxH22GrJIaSu8dwwdzHVRb+mgzwjllnnNQjW/AaeY4MoLmX2SAOWOjgo+dK8R3I6ht56HrPjtZ8L+fn+nCEylwxebxQHTrFrjh6XKNx+t5IjVLmqptHzVeOLs8KS+kuCHuE10SjsjcnS0DBUiPTbd9sunO5X6E2Pc4Ii/k584V9ynhDvBVYAJQxhRp9AyvamZhG58AsP/6pcCTuan6//xeEyvgyd0XFrOrkr04j1IwiLqqWrRTPXwsMcvFgqcQNjjb4f480OnwiThBO/MsaL5UhJ9fw6t03H9J7ThM9h5c5svTqpddunD5epCWvzeSjz01yZ05cEdgazHblO9r0S+ooyHmYIy1fH0oO2JqveQHAauoZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LAC0/PjxICO6GdrndJXbG5l+YMw8dvTMVLrGsKjFi4k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uV/433099xYLEIJnnutMGwapAFaLQ0n5RKWHzAfIuDz7ySMrUc7YLv6UbjwDHscDMzFsF4SyAnZDwsKWLgEbrxRjZ1TwAxRd4xSWVLq0R5ccpacPjEP8+FIRxNHGPZAdtPiE1dM6cKyHdhOfBYhRtUC+Ep0HfO+BfJzNx4pl0S/hSDS7dF3EscI5WFi7+cMSqbsPBqLmcrt4I+x/no7vyg91FHgoSpTF4B0lZyKpa1XsffQYQUDFK6aqmS6kHoXtDyHGm360K5wS8m+voixlmA1OzIoFjuBnhcUtuKzWOWSlsGesni3NSW1hh8lMgMxUHbURNHXrMpGbK4fziSewQHcGnyzsFWD/QJ04fGc/+6gWd4I8k6hZUbv2NYLAxUVFUgnIN0S7lY7oHp+M12xsT/+dji8Ogg1Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LAfbRYU3r+JAHzkllXOyaSbv4mA3sLKbvdhIL7PtYkc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wUqwmcYdyZaOXJjswS66/pm087Y0IzZgNR8T/Wpvj+e7ShXRmphexAe+tULz1753FC2eAfNtOC8htsJ9ZBfwbPWPasPRuzmFtmk3srRF9gaylurn87XkuV6IQfXMH4zt987Pv49AKooPT+/v+c1Z9vmKp94tFXJdI44qX5HDpZQEDWJIV0BZahBeyatfLCaHe/Y+P8uv3KWs6VVZmlq+eY1Qcu+PNRebv3MgZNmvq2OsgwGmr5miUXDozKPcu4Z811AmF0UM5FtsarXx0u+TRiEQOKvetHnth8znq4kTqT4K3ZVXPp4kHMwKzG2rZ+5vZCK/FOGzOSsRlj+HfJg2McJxWD7TqlR9EsZMtxKMip7vr4Jap+ip93qMKG8l6RfXjqL7NJTbEFQPBzTDx4LticBZ4qYzXX/I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LAjOLvPRmKR9FOMijaXo1922H8PE2res90EaF+I+Pxg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZN5tc5O+utQh4Riq2sM7KJeXDTofBE7DO0K4rPHHMBDxuChTWh02gV4ZiVFeYcWsrQyiqDKYhuPjHh8I9BE1/YHoFw4nhxIjtKrM8i1PsS0b4xewQkyUjhReMHDV6l0BkLhq4sFuODyj4klR33Zr4HHDITp6oEqg/jvQR2vSe9aDVU0oiFa4anvTu/03+h7k805UmR5JyZEL3jJGSX9AWFBS6n20K0KVufSAk5aUSl4lRQe5WGNxl+aC/us4O1azMFRLzAYt4JBwxfO55HaoM2Stjkh76Nc1TeVxWm+SN1XDK9huvqEi9KK2Cf/CgqcPq8JraQI5EPOnwFsUILXtQhz3fM1SDn3vQ00b5YfB7EWcEKHsDwBJulFsv2VuJuOrB+o+9ngsWcETE2lLbUtw+QxR5DiH/why", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LBBfwfcf1AK4A11jc4EAcuO5APyxGYJQ84CWA05oTC0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "77nDKF0sHU8mXdb0IZPvNWmn7jazw3LV3U/2Wb2wrrYH3TyW3dHdp97cik5q/uik0hbT0Bwsm79v258tdrr+IagXk4ehYaJXujQYNNHPJNgw2E/zrVQ9wUFh5M5++z5pvjg2fvMtzmn5LiJr+2GOH3AqEFpENZ7eVSR/l7Of8rN7AUNIAMZ6j09tJvWL1F3vPQVnLTDC8+9ztEn9igsWvTTXpGbMYoBhmMeqmrvCwFXg+LGiyQdNEcSE4pDwZksU5azP5dwPC3eLYnSFD+MVfuUnxpuTQ/1ge4kZM6k0nUbE0iNgLrf6yPw/Ed4ywTys684B9lZOmq5AslCztMY2Mf9RTkFpS5gkNCrj4HY59CNcIoGug8QmzNg49nQxW8J54MuUqftadE6TbmYLI0sxWXjRo1s22oZl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LCGClky2gTNLKWI39XV0NGp5bTyiXvMzxpM8mecywV8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jGLtLbfUp0HR2Gdj8HLL7DF21OyhATbyKu6+X/JnBjvgpKSnhnH4S31RsoX/qL0Vj8JH8N2cn6Zo4Hr4gczxkkBSfgIN96n/F7VrVtWCIdikTSnPl+G01V+vcBdZSo9kN+Kgfn3tFo2ssIBSMBMn9ALXzVrUJPEgM0el9ElinCD9AIavv5o5muUAobcm0I8ZaVRJZYC3IYhzSvFrr4/eIkcchS2LPC+2hggPuisosmDXs3l1ekA2sZeuQSKs1QGuAR+N3tEc1W3ZhCd+b392FSRYWM4wOYpPtQ0Nq3iiz0w+IyA7yhn5fnODqMg/ynvAlh5iYxNggfOjAxTETrS4kAIodV24ZzxUait5hthiiYaha7jQ/hotknCqoLV3vCcg0oc47q1nmC9z7SrefTHXYl8YLecxdAin", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LCYlyoJfFHlQuYpcEAAKPJDaQAatS6+/nQI+FgL47Nw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aAlau2LlcQ6FbOnrhlIwZnmnsGCcwn1+/uVtCfQbjr+NsjUc0loeevh2+vy9Z90qC4CcOr7W4qASk9VPa+GlRX0ZTy9nk4xZh9NVg8wSMchMMCMi51mxaaXtH4IKlMIVZuFwySISeot9C1/mN52XBWLucIpI2ZcWQzwPIYh5GV2p8XB9gUu2BrUoCK6s6xYB8vSQU8FTMeP+17UliFK+FF3skZHQBiaK4yIBtIfapoFX05iHzcxmwIDl8rPi4FP3NykIC5RimdMTPi4V1XdpXC9Qg9Z9iAwzdWRjdIFVt1PrIXnzbQrFxXEvKmsVP0rPAvYMhPxTWUeVyE07CJRmv7/BE2ydi8hDFFA8x+cAeFOd7JomVzXtvcDbeKsh5mMJs6cbEhDRltvnsTTafshY/i790/gMlpdh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LD9uYXLt1Y4RIi+3HOwvJefYawx1qS3diOQL4SohNs8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+Byv0fdH+uQ4wPejdXoUou/HbgGNQattrH+zThD3Sgzo943X/m6BUhzwHsxhcuazKpLwdLcHuhlzPG9Y3Mjh9QDGsjFcG//MBMJ9iUyFwnMLisrpOSgzTSURKc5oBu/4OCqx8lVHzuBcgFh8mnSrlFMJVtybRfKtk+r5+LhNZzYXRDsMHrO3B52YIBpYRGPP98FXzUlqSQ1dodFWaGT7q7BoinhUFdK/CLgFSOSyj3SFmXBC48mixY4bbQlThfsNrsgRGscbtABQBvX4TrIAL68ZYcWZlDo76Ipe9R23Ar3sXxfH56XaTB3OjrVvdvKZ5ln02/8dEbJGHw0p/tCBCjklloMUR9bn4nl8HcPhKRItnppOXPpcKoa1suBF9LcYyFbYQV71R8/ufwG273zjqYG46eMMGQNA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LDWVljlE3qt6Y2bR42klgXlyHiCtdm6MdHGKFVmiSQ8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "httwlqTvcfnqzJIXHD42LYLg7vIxA6Rfk0zK/nje0zNKKMcDerBWKqrY/mr1sXrbxZtziknGC13PRe7vedGwaC3NVKWyha7m6p8U9sGQJmLSM7szBl1kfSKg8uw8qdSZqNRr8Yu9TDm3fEC/0rkhfwCvuiuGV7PVu9CpnbH9/lmOBMEYQgECFCltTPIvC2xefYuP/Xyh6O1QjdVRjklMrXuvXmAccmH1pcvxvN5k3UdKI7Zp76NnJHbCsBe5VPMk2vk6VHnx7kMbmngxD6L9M/QwHTd6OO8/m1QaFnQXuDZoO3XZPQ4BWncr3+e88hfcIWxIfM20SQARtdLbXdfe7ImLXIgh9hWux4ULmAs29Xmeh6lL3lCOLBt0PMWu7ELgqhfjYmLYzk4AXUN3mMiONzKUrSl1fgG4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LDfWuph8f/s8CGSuM2JQI7WnXQKWdNyL11HTveLMaVk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OSeNPuJKGzxXCOqdt+1YkA5M8ss0whrq8tv/Y+tuW6SIM6X0RgUDcfFP34jbqlZbNeLcxNQBIYqix5T/TCXfCLPNhOTd+SBcLl4+Zj5oZWf3Z8bTRE1MqPSkUjaVKvoOkIQaY+xwo620QXUrtTcEZgs52p6sJjs0yscwaiQql8a3LpvKrhgBP9pfK178xqB/tqLBKTI51LgrjAN1TIKw+KL59YowHI7SqZFcJhqYyKHCJ8DnixF4PcCQR3MuPgC9JTXYOFiSTowapXI9AeHlC8CwasveCYWeAJ1ke02uQA4ct6PEw8duExflV3S99YdgSUkT/OLsxQYNBkJwtQkMlD9+960RW9VPfDZmWuO08FneefY+waln9vPIapsvD31V+h7ylROniblui520WFxrhNG+B0zlNlbA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LETcWcNJ1SIET7Giwq5zGzwak7TI7d7wGANKbFEyxz4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dBYgY3PNckft/vyAj8UNkia7WQDjH/eASfWeAS0uvGZ/nwQGH8PlSKLG62esvzF8Rkp1dl+PO9SZ7XijnXueUWrIY+0MmWhKVOTPDuhUp2WuXMop/dkSG+3bmv84AT2lzgx2UmYLoFIhJmqJuVVMeM8hvaJvZ3Sk2UM09CXHVXxQSKULzZypHq8c5nTCrHahiAPTNUpeFejxiHQjTmdXmawCLIzVFPFr1Ff49yWRT4/n1QgPE/O6hMeU/h43eLt9UTPjd4kRE939TGfmA2C0OAkpwurzuGWI5Y1d1+YSZ2yjZ/G4id73lJBzWQfj/y4304yN+jUyXSA0npB9UVM5nN7OnnCvhMZedy3Bgs6wQLdOFX+UaI/+x8D9s3V8LvY23PKuybfxPf9qLcUVfpixSAwxeblaBT7B", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LEiP0vTji2WRZMVYqu6G+tsPqgd2R5uXnHb1Q267tUI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mOvZfS3a1jxtopOO/q/DpSoaUoSxy5S5v6w2vx1eRPyGFA0clMQZwPnDzoH0/HyS1tCWAv7lkXPz8k/mhUNPh8Th8Oduf0IGy3zwnJwp40hmULbmH6ahaObM+2l1pstkCqosrzLRedCzPp5yjYYQKNSDLCBTBPjt7/WpZJXSrsG5SVaIx8CpBQdR/TQVQgw5gUOxe2WfUkgNo5DdWQJIUKroPpMXEDbpyGU16P9EzYkUGVtxBCc8PtFmWiOBsdH5wJmlZhogfBSA0lSb4zqDDZPbEaHucnODUj6EqPHWUNR49h7dK7nHjMCURSeWBd/AIPeR/uToV1AQeYhMhTtuy5lA3SqPRhBFdot0nI+78df8LcjG/TM5HGf09NfByVDRsp2HTPkFx7oUJrEC/Ap2P/1Czd32SiAK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LErfxVF4RmYYbaa7j8KQr4jTMJJYffQXefhVhp2+748", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "I58VZOhA1witLxuP5HtNTpj3jp4Tdp52C4iC8GRraZV4JUFp9uT78NtPzzzVXj0wO2nd4PFg+n2YsKJFeMPfwWW+gukWkA+xnfCgmfYJLfPU6Bhsk++L3q/7Y9DEBgAL0Xpv9pg5tsvO+UvHH+GtODoGGH2+Avj3SJDnOaSIr1GQuYF1x5amPbsvJX/J4h6WFhvdvRxJThZqzslG5uAlu6kS+z76iT7Ez+/DrGHbUqQvZqWBAOkNHLm2suIMioffhnpKO4Httv9LdIlc/8TUf/E43z1PAk1bfY8oPjwvnZaif2Ns3sgf3qbSo0YyNY1i6I+qxbP5SOHfSV2/ijl9HkQmEeNe4GgSggD400Kmf5kr5r+2FUynbjaFbWDVCJ+7l4mA87+RE6PaX8bJo2TZHmpBsBtv9QZm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LG0qFlfkFWxLOKu8p726OMYIOzfGbENczVr4fXfaAdA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zT/1gLTDUJaFmMvEhVjzgI2yd2HKVZ30x5jqRxMf70lNVC+9iVBrQSsjARAuWWJuLVXxnLKpq89D7hTYNuY8UdMCgTwSgib+IPBleSdD/ckIb8iLiVJUuUNggOhNOch6waozphfCwJOJJwpCVyCEM/fkFD9B0okPo4qGPi3W3o0+3WbzAoqGv0WXiHq1+vyNtiyOt09ljWv2e72V4yLXltbOYwOf7l7xcePCf2Q2mIdl/1P76eOUFa+ec0SDpxjnR3B42PZSzEcGOdGZfdlHxL0TNsWPg+SW2wEyYY4f2mnxJXEYeJOmDoGKm/NVlMADByF9DgJdAGQvBsMHlsLZeadfK92E9z78ZCK0gxoPDxNz1Gr1Ivy9x/wyZXNonaMyEiTB0tobvyJs6VXE3Z17PrwrL/jM5ZM5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LGf8vj1QMryQG4a1aPVSdy6K38AP69u4RglHHJEg420", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E5M3SyD4BGqB+d/l+zDb0bpRKMBmZkH3sI7fInxQ+ns6W5xPD3PasReHO9xzDtOqciJx9h//KeE5SSb1hf2CFHr7bkq4vi1s7l6a9yC3Ung02jn2F7++49vLcQQxE1l97wf21bpWtCdNwIOmiA33Wo4b6M7NhPXrx/PGe4V2hX6P44ihBlXP6CA83ffC/JtDotuH0jP0/nBVimvb01iKCBN4ScFEm4BCHJE3G+N5Xz/g+rfXslwUTJ4V0vAi6fLOQSHqZDCOR9JwL09M1fnWBkz7P7J1FvdNVYIgJGoAYPIkjlUXkEduRFow3EBhpSzzcChQL1K2D/H70aVW9plreum1OTZMBTde4takYqOZywNn99i0HZpPfSC5c4ihz81H6Jndf1A+d67DUzdGXu7jM+zaW58mVHrn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LHm8mcjrIDPvJyCAbcGTYQHuzjcgdYvY7IIyKmgrnt4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ehqpc5EBCyX07IcMRXpfZqsR0B1I5pIQ3o9QdJgh3HKSpEusgIavEDuF37bND7BB5J5sT85ht8iaitN9rJGYvSbctfmn34FA+HX+FvQvFofJXEhN/mlCyBGL87B/ou8glOMOhB+63X4OKv3Ps7M9uH3GHS8OCoG+s3ho3iNdU/1PltlVkCYDJSY0CqUBqFYTy8M+eBt8vkg9z2GHp8rbIcZG05vRNwsmqtYC+e6XdLpzOyJNilkxactw085IbHSXd4BTigEivT0OEbZiHJqATqVeLv4T7XB2xWZsbq33IDJM81Lda74sjvnZdQxJPAJYwkFTa7VOSRqN56dopIKzrFSfiNLJSMAEiytOwiEuwBZTbw8GALyoxhpPyoTQ+3pP02sNw/hxXze+0eQaag1tGsBg4H3T6CPl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LIgtc1PYAn6bKXznVVejbsd2QtSwlnTPd9FnA5pGpVo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LzCmxWtTlU9jGpLmRFYoPDto2rwyJ1d+Vj70mObNGwfKKmGDMtcHKe9MS1zwjmR4LcljulJVPF7Yf3chjvzW1qgIlw85cJloRq+UyCRa1eHZ5v71McgfyeOeyZDrzfhAYOu/JINRgA0Daz414vsMYg413XZMAujXvNGQIoOyTFa7asfxQ/FL5oWHmmvRlA/SPQsp1ORtqcqQvLqpXzfEWkkWD+4rUPXoi2I4ep+P99TYNSotWsPG0/w2OwahEm961tj8wtA/O44+nwlUSgWjRaZwvuxSDJ20P+7CqbQ14vC5wKrUGnOMCV8yA/u8LpEMolOHt0kyUbqCHycBDgg0K+mPzbYT+jIJ8BHiOWUt61UPHWrJRVA/mHPXOJJpdW5wp4Mwam7GrRP8STPVAPZAnqG5g0VmuvMa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LLacjewzM6VtMwVIdUXa9u9Od4KiQ2WArF7kKAD0UME", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JSCIqrORGxIkEPGmjFxiEDCHWIcNx1baCKPEk9rznFbewOYQ9Nt84sbGrPY5Z4yntKc31ql+7PMhmZGR5qTfhzlkcm/nfTOUmoleIq8ZMu8oZVy/TG+ESUS75I8kUmDH+joyAGI8v6yjPt6jYAduWVa0gqGXQ4fhUvMnS87TpbYtDvZbKkXS1NFjVXZbxXI0fOAtSypbMrpRDCveALPWRrRDrp+3cZlURfkv9xXae47jCLiO3Nm/JtzyXUGMtQN8OYZ5ky91Z8+j3soZvJEf+/sMkqsnA53g1A9HO+6ftGap+pt+6jMKruUS9rvOthLtowBGLojwtWYLmwiX1KaET+OS+LKNQyyu+3tb3y123pMMsmx7TssjJEgYlhg71W3KW8nw2l2y+IFA1OGeN4EGShbKqZNJ4PoT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LMBZaq96PdJLWzrJAdreBI5RyQ74l0Wdy1weubjY388", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M0ELkmJG++LiaM7En9E1E6UEW5xLVskC/DNhPK/pwF22go+6VTaB1IZ4U4CFASOLOZSISFRz4w3YU6a5Z+gbzStZocgOoyRkwo7UJH4U1ih2aJ5GHB8iXjmlKAjAnHm0dSj5CuQOglXkohirsoEIdmLwp2SoeEJt/sjhenW8g+1iPZCX2RXI9mpp63T0sRO2wVkLCVoj6Mli+7w9YgaFT3omwWwQgzICOC3pLSmgoc/svAg11l+tYUZ346Nls1P79UC05f/WhoL8aRwCxU111GI96rhu0OOxDhchFSDaczE2g6h0jYlKdYBUC13az1mjtCRVPbUsi5M10c60BVQlMLZseiSLkIVak/p8ZCKmMoZ9KJ6tZP8iZnrX5tvMtBejQe9milyt6fnCLSQTv5fGF7NyqvMpBz20", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LNhPe7rvsAc0S6m6ywg7mBH97aVXSSuSg7S8H0r9IaM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ns1uPg64GCihC+YZh8RJ8/HHVTHCOCqU6pZ2FHauY1Jt5hIhx+Hkw8E3+znLzCt/jUjiQ2r2TA702xYHkIjEXotJBdwERyJpifoiSGf9l2ghnxURd3pV9DzuQBBv7RgZGhX65wqacY72QjERB4JR9lxlUHX6nH/tktr9+VgaYXhJpvwVXBsODXsMPDtG/aG9CYk/2h/12mMTcZea+oYTfRwW8tkygO/ZWLvy+c1AwFeognBxwfvSkRzpTZnE7iZ6zMAXyw83+A4sRB80JRNbxZiAezQXLRejTVhvMzNw5/RtYWPhSxCu2d0DGaVLujtxZag7xy9D+VYEaIDY78PNosE1CqEAN5mJKPkK3n8iHgNMmc2geg5bku6Gr/drNSBDkefFfXWUrdJ7UhY90ZYr6Goq6aEwknaM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LNrDTQ+O8Q/ykf5eLbeT7LhXWtkXv+ZK/6LMdYrsIkA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "D1YdWHNHImWRA7aPqOj3UxVH+3ot/65I/PUsgS3D8T6rtMK/D4PoHPEI6Wo6MsHwAP3j2t0IbJzldpKlRZoJeEYrnccyTSudFPKhUnX2rf1Z2XEnBl0Ta1dGyAHIqMoQyDRk9pT3aWm9d7iy+/tB7yZzWc3sAzHWdeqQkV+QTCCa+mxWReGLem2eSkrTpTFGtOCsPwHfK+E4+9LB2Pv9Nn7GigNJ93klmIB8zrxk5mWSR+JMJo78U0lwakTZebe4uUAQg+o622MIlfVPodP/CWAFRsV5KMLKWkZvtXGqatx9SP2XX82oe1zYH6yAbZTofyaxvki3+s3zQXrbLdYAg4PuCujGk7Qlu2XM4Kha+UO9VSZBVRe9dqNVLotFSUr61oCbYi6vu5VysGOl4cfEnPM0TMtOWWft", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LO0XpodZ35YaCfp8nbXNGFtUfPJxft7QByQfuFOn06c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i3i4AaDRFr06yWNfQhsDRoIP5TgSDf7+dvHyY1AmJVchzpDpFa7T4ui91j5QlBOZeYzeoz8lOky9BcD2dghmYfOE5SlpGqGDnZ95ZCDXpSnCK6wMdpQUkxouBQGJjIqamFu90QaXIKgbVEUZZuZzG8i4WS86bVgVA5P9Z3nO6fZF9mkSAkhJb/ShfnpGyk+2ckLnhWX8j4j6czhl/Z0bPGKsTRxNEqW+4bCJw6BvCfirXkIfvV4pa3puKhFiFgMOrlnb2+cVz418ve7T4yg9p4v9Gc44dcoEXk4rs7Vgzss3/eD5qVb5s2gmA8yK0ag4TABTZMs07uwrekm5lx24DddbJz0/1dAncuPkKPOY/BXffK1J+MH00oItuCJuZWsflWE9MGxRzOpMl99VCClZ0yq+8/VWdZZM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LO2cNESPGapHXjhbs+6/1mF0qnSNzNpYlliIWM42Rws", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r/W0aKKfvEnW5tZCHP6EXoOdWo/US7/SeYCD+rPrlrE1Yv2ehYwT63EsXV2mgY8nhjjMthZn7W5FQzv8tCAasofEW4Jgd1Pgd+5+9pLfKE4zZRxi1cjpMlU4ZZd/w0DgxsNww7fpSDnT4ulgT5pnfn4uOC7KuFUPGDhqHPywFzejLv7RsnBkEhfVwVKQR2HajMdWZj/vYhBwiX/9apFCon9vK12gO6jBZuNbGdPipLalTgi6CwmVdaNZ64cs2LNtzinGiymcbVPOwpUeg5GBPOgmK7LABmrJ+YOjS9O/y75jPnepw2UOKEZ906wTQg1hUUsW8YRuUWb5SrKAbSWUhIPYvw2XDniNaVnGTU6Unto+Pe3MXiFFehQxrVDOzxTnZabX13CnwvxWqoPjJXx/cVFggoQLYL8n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LOPzmwbNlX3um9FBbX05ZWCQpzvFOU3qqXgaHiZVIUw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a6PI9fQymD5bSa8NaMTYCQeNvULMIkJMd/TWb93dPyvaTPMArHfzf4joRZYqfRhoDdUnhqGHAJC4MfIymb26T/HU92MEpKL4Q88RxMhsiIs1NRI4ZTuWv1qh5QXwC81Q2uwyjZxCi7NE40Xg2I0TwdwH2Dp5uFwvQ8Go/FDVnGvqIKPTJFLdOFmM/T6GvTNnb6SOy1FuM/jsjDwRhrplYZXKD7tg1CX2Fcije1hM2StaDTyjxz1yJPzA1EbYTvTwjIAnSPxdTyaTA+h3GIRP3SEqv0ONMFbRr0pOe+ahAsBi3eqsyXVC6rycGYAdlkWCtwH2r8cfKM0TNonugYaJLhsiAmTwAN+ckNNmHrTxPg7xWEtP7zhrEhCUDRy20KhJzbsD3DJfVYfznoQ9PSLjd9KZ2gHUcacf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LPYWmnjadmjqw1bQLZIQ6/G/0tuyJIQtil0106EHysM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Y7a66QzKku8JkgEQLptbeFiYsx60lUNXXugT9hNue2wuyxK2baRMEwDqhGuWCC1xYTKPua9gNz5+eE97NmzGKA/W73LPM7TyvgL6k9k7LfBytCe4e1EJYjz3zwmEOeWpPdmH5P6jRj54QMg4967J7m/aKTyTLoEebOvQiFmbo2tlHVzXpnKj75RAczt7FY7UQqnP2V8317tBGqgaOKc/vsYkRuaT8+/dw3JxKxuNQgoQUOYlWRjjs1brYL/m7ilOTDk2Zty7zsXSzGLtjZ8o1mn5ZuhXOXuLhtIumoFonq6ISOLWk809sG0TBb/oNYjKXKuyS+e63GS8QZclAfOe2ntNISOZA0d+EjgkH7Derpq60kXTOtHWikemtirOIz/lqW57hRYy+tZCesCNEOFWEelumyqycwKh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LPjJ9pxeQLMPEinh4uBbM27zyylqp9NvGOqO4Ck9mwg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WJMSbajsS3+Othc/a5PhMDQv68UMIqcHokSj9vy4Z4IwrVRyOaSzIXZf6EmT7XgFqpPDceWIXx2FMzKnVUKZ7jOZpG3cuFSB4Ggonl3ek83u2G3RnAWXysmPuYx4WWQbgg6Ve94TvJLPdBREi+z4QiEpFntTKiWryTF9PfljPq/MlDdX/npt7Ws151vOWaPvtaGyNeUoLYayDEBAFcPY2x6cUUIxd/uOwQAeha7IjNR8DWAl6y0nc6WmxPhC1lFrGi2mgx9+UZ8QI2t6LJMARyAoZTDiirovyypjKR9Ng/gPrhGqfpoSJqWVY4a4ceG9IhH7Afh9U6fImRtW4R9+E1lL58Lnjy1EmlIWNFEfkP2NmMQ8n8PbMgf7nqRY9Bx8nBq4N8YuNRgMmGEk6AW7nIZMJlyG4Jvq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LR1snEIB/2kkFTvYIulWddO9nJVf3wJXVqUSEHlzeC0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r5i+O/vLuWKpGsYOAMltsbQf/crjWor2N6XGgmNDM+YWg2o3mXYycPU2XzFefnQyMymGlw+vbLLk6Yr2t0QdkIGLBedJDtDmIuZnqDPfKWqE4A+EvOjz3zyFjptMCbJgSoOXsGb9QASbrEc7thuUUebcANR4vhDFCK0dojECNVAa65XUm6LLAXQIE3p24hL1kSrqsWgJVJvpon5nYSe+w0DddhsyFav3damhL5kLqkcBumwgsjkztxmDrb1DORm2Q1EdRX6mcfBcNfdfHP4cPM99soeRQP717W0yubxVKKraGORdXbUpITEKfMDzCEOnSlPK64PEPeKxFx7UKd52J6Vzfn0tMyyoFYgIBhvCK5QXSQF8GjyFgN+uFOlvyivVSlCogZ8VhTf2QR4RYvQtxM876YqJI+W5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LS2N4moTlbR9AerY7NtTymiEZzcH/FNLXOCpIFMAkUE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yNnXBpBmMSgX9l0ccH6boAQxkDLIFQRKIcLyHIQVfNQauvUJpXDHcxDTD3Z7YnSSNPfZYR3j54uAN8foyl4DM+m8IANB/vmkaKc8iSzE8k3WT62NOcTwG2rnxxG3S0ou2YUX/v6R3TddhhlEVYNefvC6G6rboXxEFdPSXm678YtR+7uEj0/u7Osa5zcxIYHl7w4evBBrvYTNfEJIMt9KcO0mPOSnQIbCDTba3F6OM58/WiiqyXWR+LZttEB5pJJpfddpT6Qf+FebLTGW+bL++MfCnxc+o5rR7aBizoeBIRwaoXX8xPBAVekl9OXVcBhWNLBWwVLHIIGGqW4FQOtarkxE3jJUj7svlZ331fR+uJr9YGaOQMtz5PMWcK4WcwLC9n0xp+691FHe4w/T4JbRZQNbBrQ/AxTA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LSffKzhteNE8jWfdCiGRkK22x41bQTv2IEDA/Yv+yDQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Uz/SNDzoS7+rA8HnWtzpXPe7KqNnI4bBg9ekgmifNogmm+o5FgNP8WjDa3b5vNX1+Smkcjr9mPRCfZxaTkmSp+KiPJ9u/oNiQGWDV5yfwXnlAmyItosD8WrWkH8CN1D/EtlPHSw02BvXSP9gZ1TO/pnF+R5fVwsqLLnG4fd/QPMcTrHCzEuzGjVaEfZj+sAnpJG873CZgV879WwrX9SDPDTA+w6ovbpVKdgUqby7S4N3/lmD/n91fYvJ2XF0g9fWJOX7EnGrZSM65W29UnXHkA2/Z/xqUZVazzDbSFeWVzghONgfI062agmoi/K8d9Px5nceW8qynJUpm1anUof8CmhD6hlEjBbtfWVjT/mj8OlUDCLooZSsqpOKfJC5o1l3Hhf7tiANV2vQ0WktpcmF17eb8FM8aV7n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LTKjRHfgwcr4XJ6hFbm21yGxgzLJRNlV9WjDGE8p7oQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Dk2nihZnpLJfqra+0P+0AO0n9xLL7UvajRdx0EL20w7ZSbOrnRqBsA9FtpE6C+GmBoTLui4wmQ4hkWAvEm5F3Bofw9F1RwYnbtRkYrzdnY2rM8iTnGKluAjqwYe5qoE8ag1KSriM5YehUhvy11rOIo81Eyr9d9E7ppZXKY287NRDIMjOH1rEXwQDRAEXw7d47OxLUkv+EIKKe92PE3i1uBkbz3C8lMsb3AbznzRB8LeuW0yQr3qmiELNkfMwZSn2m+sUkk0mZwbK3BI2t3iO1MUYWiz+DO53zT3QlDUQF5pqMDQsBi6/my2LO4vQpvbXTr+rNACo4EqshuCpPfGERwxm6n1sHTL4FzzcaFumRFNjjAtJPHVBODQ9tjdLtwQbVLgWIyWLH7/rtjcdNnux68b++TY0WiC+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LTMdwmiwM9luwP/fuJ292NPU/hxovFCfgmOGBb1gPC0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UMnga4CElDpCedmS6wsrX1bvC9ceRM5iRiFJQ2tnVBQh9CBnLw5oI+Fk7HvWHSN8fdISX/qGlfIVJkIPO8e6QbQWb9ba02nceEMhJk07nhaQX/Cx+knIXsRGTvsCgUekut/TDikDDevCvk6xWpzGgaBoHnL+kQFizg/f0y3y+iVntsRXE8uxSMwcEDV4Low5r/fb86pDVyXz7E0ZJjRbC/noiw1rTZZyJyRxYCdni90Inybu4z55e/duW6xJpTNbjINfLRFXwgvE98FSZphesipGXKxgtnMyQwZbq1x/llMhaNQmrttcew2KgOuRah7K7Bk1hET9K0RZBtKMyvDT2Ufc06K/CD1yR/Zo7E6IUwltgQqS17PDnbJYxi3yY6Lbp0t2VCj53RCwSa+rH9ggjqutUsGH9JtI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LTS6DjnqHj3gJhX2yx0amlR9PXmFJZpl0Z/XXYgjGzA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L6q0ywBVBj1sit+eZbGJi3PihHAMG44byivilajAPffPAta0hyqNgzm4X1DT6ZIDzTCm4hzhDHcAozrK7Zss4YjRmJN/GbWaGqX8M4V18VMpjUOoxGjDSZY4fGkp+pVKCGd7+hkzgXJhMNnGALKKAwTnVxQUTZNu45WCv3Otj22dlFEs1/mSBBaTVzjGw97cx/bpAgbXDrThABtbe9KIoS/6EG4rFUoIYTowI3JA6KHooHv+MSNClRbjVvpDxG6+QwPZfpRQTMM7SWkHsouvoAi02+Gd45/syRD2a68Jp32VfTjR0i1FENJjVVW7zAF5m1yb8UvDIvTYgkneMM7X+bXRYwGY7GUZynEvN4ZpabpOse4lcmBoPffGj0c8P/LkcUKNjjSFbEDn4+krrH3sXtj/wmMO5YSM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LTWFGxRRnZXQWLta4VNNQEL58+macM+TZLMuFkZi874", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "86g8CRPoxvUxgazigGafBMyEX7TAi4F1nuXwizlBn0WmwBU+1lM/hRDkSkORnSRVTDw6fpVwjpzvt1H5A1BeFntbYM0eT/r7iR+Zjk9TsMZ+qFYAL/5fBTGT1n2ylVxikS7V/hecJfkdTwg/eLEFYJ+sqjKL3SrJZ43Z8JPee4KGhWdFwfhGXidsvOjdnc0HfrKuWk/3+Nz6kZyZevS0lAB1RaE5fra6QIi0QsG/77VSxYAvsFVdyKMFWLr2bwb/xA7M9OjbbZjOcv0TsWu4kw8s3UyJTGlXTX5szWr5lvksAYis/4PZRgGcyMMVtPUiCg7YpjFvXQDFeDVulIv9CX4EDhPDd4xeBg/fAE65SPQVK85dJoAJVveHmhEpILUsnhwQsCXDkrjDLaztThAjKKU7+idfiqt+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LV1U/4y1JjRKp2A2/yeYJaBqbSQH/WqiJDTb587Fr3I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3UpXlYMgrzhbe0X3xSz6/ioynnk8cubUMJ8ex3X8jEJA3PI+C/+erw26bhB7mV0kgA5bXU2xm23b2+gwXNsDs2fM8+h7dcMORTv4YWZNdA2mdgIOyaiD9HfUTwM0d13xw49e5gWpjPEt5vhNwTBvg/GpuiRLio578XCXG1jeaY7awpNk4uuy7PjlpGWwsJdmZ4l8tnEJpKxjMtCGASSr7UcfUcbtrAwEq8DpwrKEuCMDeGjEg02fuKsMblIv5mvwyLA34Q+/pME3EdNYnzERWbfiySX9ZyR2MW/8ecJdv0fq9lwIC8WxfYAM7RaS7bycZgBF33NAJQ6sKNvinUGDsMq4vDlnyFqhoK9u7XdP1ysccfPiFh8U0ukUunELtCqyfK3yEW+cl0Sm9rG4b6fFFCxjgQbt433J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LVFZOqIGnzPaYQE5pVwEoquA8+UFf8MIIHu+1ZQKgbA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GCDYfqWxrQS8VAQOZwbwp0WasP9+X2XC3ZBphmPP49W+b+G7t2ZEEEUUKQ0XDQTKtmp7fPkkF9OIPRo7bNnJxDZMAKQnlSohiJAXmHRw4Twfe6kr/Qc7CjQRtCIJiL6gtR/IpW9bvLGFMIDLb2hRLOiZMxmD3sySLCIp9DM0mjhKKSEZIu8T/PzoqrgVWLV3LqWZfDI8vDzYhiP5ahQehWcWVeNxmRJxck5hMgHbF+vOqIb7U7oWJ5bZsbvf/Tzx+aK2HNUUxR/da69vBjuMFlLQTw3QXZFFFOjv/rL5yvhAy6vSvQdLxSKmNthZZzmB2D2XhkvnBrvRzdkbxL3y1xYTVRWdksdpFuKg0BwLNsAaqA5fq4vb6qaFRiG8GqbQ8Ksz2FcxZ794kdyUGpruwx3JOegAYcrU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LVVG6lGDfWGPSxbF4GoLZyQ5z6Wv+ecEVNGiUCncpnE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pp8NhVPTp7rWgrwoAc4F3UMRvpXkwksx65lqAfc12bmtNEwu3i4idIyUP9URfY109aXZxXCwHlZJ/YLLMb2y9nL0w9rog3gxfS1ThoFGt5eKBmlTRfRzq+9VJ3hM2wSGQYW09+RTUHsVTw/kSDollMGluoJ4LSi6M5wQROP2KRXLBQhMgvsI2AFDBbiWO4x71V5TNXDZL5D5EjV0KGVdBDDlmtITnBAJn6RHRXwPDDoOUtZRWCOZXik39E2XG8knJr1r6FD3N5MfHpu7jraNDCeg03HUxBC4u1v6MwwkTjEdAx02lbyjAaMjDcI1ug7VvU/dy+8+DlT63TWAejKT4U9dH4sbMrftb8kdiEbIwezG1VJWAMLNEeL+LB3bBhuj3o36Zr2tK2JclGEX3rm+0aFZmkeyYECT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LW1EChsHYfWHe9cVyjJgNUw6MLbD8IWsVJdmn9kyMi0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dRYIlqT7KYzlkf0gChgt/bn9+H/YofRRoQ6KDEjJyydNQmdu+f70T7MVdrlNy4ZeO9pUYJzF7RJ7uB1L08XMV4LaZcNZmyWbY+Fy55ovxdIr5IesFcMziZcVA/AoWZwB5/YYiH4sZS2RGJzLJ9pqOiSNyzXGkdNcyIKnQgsWFWJgahMZRG1X4afHCyr3bX0d1sRTCc2qkhVY/I3Z3wUe0qFJEjdJbYGfQIT9tz7wkeaTQaFBXsqBq7w0oImrWnzGu8HRyQbg/vEzPJH2KTGAAcrdEKPYC+YuOZ5+oVVfM8Ztcvb/148IZEtaYplrfbp7+efaj2f2A4Kwht2UiGzfbA2fU/rfvQUBVgRpObLWjgOcVC3cTywHNL3DmdnsDG5cyUC6JvihpdnlcF0OcKkq2l7fsx5q6hbO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LWAsGD1YqfOCvgH4zF+kJL7sm5CKeCzpPtk6C4IDJGY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v7j0QO5WPj+0ikK7ZHC1T1DJ+z0waZCaAqYYhHHVd9GB6xsBIE/4AXGjWDzby2BkBbaLrnj0LpcLQrgoRYxIVjgY+ZoK+rreecEnHl8Q/ReGmjGPXnKxdSAXt4JIuDwZGGTgYblqBjmewRSDgcLckZ0qMKeL+7h8j8x0sVCU7jUA6oa/meQjo4WoFAIUC8Cs2J46CiSWaJjgEvf4+dR09G3nX0cpiz1xsYt7WcJUZoclxDgU+I8SeUx4QLoN347rzuc2d8uFaVG2gaQz89ZhVwM77LT6GL+WHplBZyKAwZHKHuV3QxihF29Vr4fCKLjxYfIKmwqwww+nBKYTTK2f5Shzdwt2qc7ywSP4PGH2OIWa4jLx2QVlL10pupziFEOgq9mjYitS69mS7ZFvEwoUkI7rC+msOxwZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LWR0EcaFADym/AbJFjfr0EP8t7GHSXr/bvpMxAEGFWo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+amW9jEkV4DSalVdEgFwllUhySLAO12eSS6jVIsJCSnL1L7y5y9NtYsmIb33sbaAggsn3SQhKndDV0yw6JX7FW7T6A8XywdM0j1U4imgF8bAOEI98g06qEGBZ6nDdTYzcbLmmQPc5my5U0Zr5zWNh1Kig0pR33CjB030V3ma81a0YDpx96PsncQvovnKd3hc/t1k3NFH3ofbghahCHF+/5SsE1KJk2h5Vn8CEsTwXd87gLDGDoMiIs2SFYJIdP839ZEJZJtjMtQpA3Dbw3YpPV3M2ij0p+iIkQy1MJojNcys+1aqjyO90R4suQoTTJRHD9vROGn3WB+FaZVroUeOEW5ndgpd+3TMydWjQQ/sNTSahodJ4THivBSCmzaP6UvviQ+T6hvYKuJWnfvytfNbRgr9hvdFx/Vg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LY025aMi90HmwhcVCvbkmx5XXrdIco4OR4oAgqC08Go", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r4tU2hO1Rg92ixeWznoqCOwyTv+wkeMghGsiWt/ImIjJhMcXOT2kPf4dXjCklOOUbYV/Ppm0bwDopCPOGXeRuqnpB+nf2hJ8x2t0Xj2082ZGFk0zX+fJ2RzEjg8H3HoaaNg+qSOtSyKZ+gcWjlAYxGbdL2aqn/CPskEFjP7FjZMnvpGHkwDtFCuEbIRnZ74jNBpMkaGS3SYNuS4ZbmZ+6H4cbNMuiDRSi2L7Yhm+QC9j8CXg8NCivawCXILTIakZpGk2vtA/ZSWYmimC1YLrkgIaOjeW92GWeoxjjtV8+tcLiA1mNyTZmTXL+nbrumwLNQ1Ls9kLgbXGziWTMj6W/SJcNZtLumIvFX4DZLUK39TQo9bpVPuijI7dFyylLMQd+YIkFFreSmxKSEAKU7/EgZUbDPISlG9y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LYM53mUJ/tgvwQKy0WfOEpidjFYeUbrg7ABu8C+eZ+w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4PDkZiePvrBiDHzcDlHimzukMO7whd0c7JvXszCSpOyDTlyJywutpnFIAAen0Z5gKQBmRtwi/Ifp7AQjQfs/am6036KYfFbt8ZAePM6qEVSAZkxAHQ6N5+t4VwtkcfILcllQxJebLxDgqfvVFJ5KQY1TQthQ/TOBqwoaLD9NJKcFCKrLZbGSf+cybpRcDIqoVcCZG/G5p0ZkxXZTdnV3R77bT8vKir5pXabWhtYs8CSOHPOdkIFmNeYSSbE//IMrfFQVyxcscS3ghMeQvfAUhL/UYEgKyIPffNmGuZBk4gsoW5IiNwtF1sB8wIcYVNf8TaJDoSsceb5teBpnsI7Vu8xCraBKxccj2BRJAz0bu/DQb/j6P3XBBjTy4+Cx+fbJ1w2+5aUOy+19cbNV0+sx89cuXjBYF88c", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LZDMtKNwmGPyIOez69HGIISPH8dPnlvWN6kGCXD1Bvg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pbReuGkOd4UKFtdo0LjEwbj7sb8Klqm1rhTohcycYhORywQBerCf80uasX/KQQWiugshzcwusMGdl2dgpoIsPh/kMcP6XZEk5EH0xvxFIXXMuqdiuaY90BrGnxmhrBd4rogstb+2kqOzLJicYJRRYt7bW3YxcvPpgxNavxt8TWvz28AR99ZjA0MNhvibUJ6ePKt6piqBCOSmC7LbNQ3A9ahv9rjVJ/jlBfoO5QCQiuP5p4G6RybJZghbJz4r8GWPLPSwduH43loBuZs9eINpCRGqYq9CYROnyXx3HtYUJnqLwIlzu1LBvmJCDJ51gVBKrnF/8s+YV3Eo9D6e8jdQ3MwRXPSwVkrLjOkXezfBnPW1ZqTfCESbnXwwUXC1Vg6u/Fw1dFE9GVlLaFHpVATqOZ0cxJHn46PW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Lb1nd+wiTw5vJcJ21tnkgfe8ix5JRZUjwDAMuXPNSl8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RyKXD/acmtO/6HnQBeoVQl/Pb2gPqjMo2Ao5kmX82yIgczFmEN+urk5pa0MKUwmiyNhJ0MZc2UonDg3q4nMRvlLTZi21fRRi0xD5/wisxuo/Q2XLZEy2cuxCrwIP3MNuvHwgF9StWg4Ig1uvvhqB0ag9DDYH/hLFsdEG3CRqLFGxZdFXXu8wqPBMRUfKn+xsuobqYtrAluEsFHJwnJ+Axkr076N3a2z0RmaT8UCBA52+m1+P2FTKt4ZCGKNU/62lsLrRlWMpiuZnqAJ1HLPlylpN/s+W3FxNpyskkJObQ2Kj/OLpDtJPUErY2vwKQiHD+tW4MCrZ9sTuZa5Cz14emPRxo43g9MfonNDQwjG6TSFrJiLQSb/202/CDYqVkm7OZSz7uowluZL+pq2qRGl49IuTHuYN+ICJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LcEj8oNsMY7eEG6vIIhStNnQHnTb+cHDmKvAFrV22/I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lun//OEtTkTEwasocv3rVZqTuQ3RcpS2aYelHfS4vnzzRaUkm5uEho/xnOEwtRkbMm7seWpZzD+w6fItv9nyTid/SXADs20t7QPM45ZSNC4NIgilg5UVhYs+8g29YPI4IwhTp2K3Ir9Cx5GkeRON9FEJZjcTMRnQVTVK4abvNi3E3/SxHFQaH85yLeU/ZtRSpz7swGuWjRQXKZ5n4QKNc+67je2jwO0VUQGgNRjRqrh7WoNsLjunIa2bB+UqjPxVcBC1pdTRU/AsgcZdsdy/AC/VIaBbuEIja6Jo3EWdqZvy2weGR7BPx5BaHsPX/WIEzewxhGJfwXAq44YT9GoM44Ke2HdqnFbiMDXPlq7opneYtjSnYXMMUEMOzNKDcnwNVQ7vrUuCURfZHoLlq3x+OiEW1ihaomjI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LcdNZwsRkPy6yqUiQToTpXOevat2GfcW/sxHr1BiB84", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QaWaHQz7rl+VoWgVo8/51o00pH8V5njU+OpTvSuOzlnNF5zfHz9A3bpem2GjnFR4kKUHwmwaoHeePn8zX0EOlqAAJcaId31Oo01MvDiW4dRgDvR7D4Ev8RZE+VCIdnCHsMijT450+iwAAYrqOec0OLWHlyNWzwfVpZKqQFxaUOwawuQbhxh0gIIClg9aV7wwf3YRkW1Zlsq7WFP+13U6itN/EqiFSPV+TFsBfW6pkf4RByRbiViq95pvIxNwKP2QXUZ3+iZ/4wPWldJjAaX+YPgCI67+WFiwzXnGvDOgFh+ky8s24IIjoFABQCh8L7hC9A0Wgm+MQD5spw7KEJYYk130VJBYY9nHMBBhlY8c8YQ0ytiDSp2W1scTUau954JvDCIAe74fm5TNK1ahK9eFEeYbg/DMg2f3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LcqPOmvLJz2k6NKr1vJWuTjap6uVXkFWexscB3wqboQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hnA8E+51l+C4IRFVAcqrn4vHF17FBuxjHpridBjey278jU7p8U3nochf++7NHrjomHDdpdSVrhy2tp8h6GroGaokWICbFGrYFAcd/H8qtfEbggrkSYlsfb5qjWkCx2Ek8vSb1b3Wtor8Ob0I2QFqg0GtZB7I+yeHSAfcTNPX3UpPOpCd99nKtFfkVCuQsupXUS2Hdup9VwiSBGPgmBCAtyYUJMfIVQFEs7KXpH/lat0Pdjh8E5e9EeN49BRm/nCCobcPnaM1zrxzzfV+1LyKtkbBSX1sb2P9oIBk/8Bh1sA4Pi3EJt+AjelOIn0AFxh7vCfdCQmcjmt2QpzD0DS+LjUbI9dcblCyrlapP7GO5t7k4FmSAudsYjneslWCowDq7qacLpgQkOay7+0Y7TBDuQvkkQ+75ynF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LdB7Q9qng7VRqAPThwverLumRKyZJSSvFFMLW3tnc00", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qtwQtdLWp92ORmqAd21DkzQw2eCMU/VJHuKSnaMeWsbUVzfef40At8RW1IHAICTkpYyb0AY18TMKOLFYTPLqpetlwE2RgW2/899bIfuW62iz+gK+LByXttIVWbVto84rDffMFvvGPnn5/Dm4omyIrQxV1Pl1RpSArhB6IMLnr7L8i4c+bAJjkxfb37aWgK+egJ22je3JkKZ+1gzG93eaUTmO8rflEmHjew4qxQdqTILjBu+Q+BB05Z3GkbN8RyFh3VYTgb6i+3ux3lj7zxBO7NePyB/PGeIqnDpaBOPjbIaSTJgBrYkkTYOf5eZRuYCv4RSirni6FLQbaL8bDSJjf/TUKEq8f7JHieww9X3idvLHKpaNaqOCL8qxxfY6HLNIxBoqmTSf5gTrBRl5XFkscbBNmEUQo20e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ldow5MFeqOwmMdlCSiYRmc+Ie/WaKdscYBQmJyISM68", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dV+CdHJpJh7lru+yRFkBtmtf/DAzJVoAQNuE7AT7/Y+dqBpDOQsc94iOFLcqIfF+fsFbkgqkZ9n+/pDglpTLA7+igybbcRZu6I7LMKFK/eifohmNu9IC9/vFaqxj/s9vXfETDaEBYkqI08TzvJDhyrGdlqksmNLC5Dlv9mUBNzQW/vDv+iWIC+mC3Y2A3ZzDya5Eimv0PB0uX1a+80iNBMQyjZr8ugoKSsUgDm2+AXx/B98cvdIPCVsQObG5ClwjVkgm+1K7xtyiu/03mQJeqem4dH9t/QMkSD1ssaBSxhKpm/857NJMiXJy9pAQCCQskkn5Ub5rSi42aRJZhkEGvdPqTDFRPFXO3yEw6V2ZufxPbVfbcqBZg5bPLcKEeZvidzyr1+w6sLN5FcXRiglN9mCyxhIhnmEV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Lf3sSSRF6b//TAotUBne9kIuaN5xbuIq1o0dAe7VSEM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "piODtWnkkfY99upf/0Vx1C1wKzaAhEg1Obo0ZVtf1Bi5+rJpnVSX0YgtU2COnCFfmy9sgAQpHGg0Pt7Zzluj6gDra42d6wE74etLd85qt2iP/JIN07V0xvMBcIWmlzz3VItujxpDQAeX/r8jr01BgM9anaXIME4UmIgWgutv+7jS3ntjtTEV4Tyq3udN3qHK3nHlY5YKfyOyiclOeiSTkPTNHDbht0iYj4PTcG/OcYZxxpdqFahk1OBQhnAyTdd/BX/DV/IkqOHZlYtArmZ+ZZRMTckgpRKH5uvMHscwGcRIg+zwoPkSnTX5KZnA/Sms5z1MYCYCuYXT2m/GXH3/7v/Qe5zx43U6aNlKBk6ppS9SxW9glIe7ocPA4USYDJR0OCihWDYJeDeyrn3LdeSKFeA/C+s4Hled", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LfxMb7RtGu8gMlAFswGic0if/P9O98U7/EmzJcHfZH4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7y4VcPDUGi+D/M+eaWif1fSS8359tnTliYz709UHnFGzFUdyIupCHHs/4t7xlyUt9K+8LMWhAYDid9vMQnoVGFFZ9XBz0Zth6UpKeYBCwlK+JuildYYTY1k0TLNWjlRX43IOygPMuZkpDZJyN1yUt9T6vwKIseVzzsMZPc8ZETkRPfhCfUiuWTcwzDF2anCp0VtIL87MT2qtTYSDFnmnglsiT/CEIRZ6lrWbwhtuH/VPZEL4Ey6Fi/2+o0CsLJ4ngJijlQPb7TaxxGKCkGqyaT/PvolFKA9DSh0GCVJEZtrgd23JT7M93ULo6wuA6K+SEuS+iwPLoX58eXsLbvdGveWQdTe0YQA0C8pzZOriHcTSdmIiJ5ebWAD9a7c9dQllPrQNzrUTb1rt76/QhTR5plJTpbB4BPju", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Lg1/T2SBUR4zgCpblimQLQ4O9I6XJYDHK7st4yCFKlY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GjqUThktg9za8NCmFlq7Bhi+0mI2ODHDo/wK49t+MzjOvEov8deO0TQpm+otRwbuYume4UCbLHro520chqLao2jKR8uBIt3XIx3igvzNXcQbmR5k5hNFXpTL8xF1dfhAXRetX2XoTWoxddjguqS2WiruM5ld5ZPLBjxDwVPrpzpvslgpYHehQt2FQ6GBa8FcfOYnIFgAqayfCEJmT73m4QX44DR03L0cYptDvYFGoLYXW+5JaNp4LIxcPmrPPBvPRqk8sgMeSoMR7XCzKAJNlMRd8nPsRAPYlUocDdKAQGZ5nHLOPZnT7gDnn1zfYpBSAhuw60O85Flt7fMvQb57BzsbJ3glYgit/SMtWgkl+np7sxM2milB4dXWyPCbyB1G03Gi5JiJvbp42TwHp+wBIiyw+RN4g3qt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LgS9ZYZDN7bG+tCcqQbdR71OxZPgyEXjYIAi2YKnI7E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DJ5+OSQ0Z2GyHNG4lTf9NwQE6w2hawgZHmTYyxEPJuEQseQYJfo9o1l8o+t7v6g4ro6jvjpJ0OFsOhMyROvV/sn+iTJDZQLwolD1NRW1YNyZXcoZlc/v3IyssXqH6paRrCjTTMmRE49s/+vW+K2LZqCJKeUdiBeVNJ6pScbTccMzm1pe8evpCvArxBUNvJQ74w/ln+kY6e/maWFCdbLEVcujvnnXo9Mo+QJ8yUMDh2joXT8d6Mx3UAeyFtYBfGYmT4KxIuiU3ysF26riu/y/5Mrrub9VIu/S9Vl0FKywFd3puIKz2F5br2Tcq38jpts1glCMU2L1PLLdJg7mDuLf2c65TUsgAVCGCDjdjA9in21Rwdhoesp05R4vAjhg9+M7aEChMa11S6jJ5WO4wtOQACqPmgtz27BG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LhmYPGw6+g0jxj+HaxRWGVy60f1TCK/5XNGc2tj4nfw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+XpzjnrO61IiyulCRAiUeC0tkPlA4Bx2MrPDEoApEoo3BzImt3a18fRT8rohdB1CcDKEcGiKT+FWZiJRb8/J/bhP2oycYeKTP2ho/cp6HuDSG3dgrvn6BI4lxAxf6FcC3/MDnexv48oOdWGEiE7I1VlAnUnmPF4V/NZM8Kmic831OhtKT8LS5GkLKZmaGkBOkUhQBYAV8AoyVYhWw3CTlcYrqROtZb4dk6JmiR1t0JguN5SZTmUq/44sxi4EiU4fHnLmtkPrrOoMaB2+D6EAPrWCbYsPOp6SWcNTcc5YHhTxbmT4UzCI4eXk5yk6tPmvQVOWB+skAbAk3oYv+mI1y6FEzxssL690K+1JcZ3zgk9hJiF1VQxD1nIz7VwsbvakqtWv2XRjhalA/on1qTsyvkKhLM2TGM53", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LiyePsKviqaECmZ/z3f5RWuTxw1ukNY14SNmQE5fBt0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BcRTb0URq1JgGdx2u1R/EwijoIrhJ+74eLrvbSklpmDjqoCt1fPjoIXdA4lTwZvgm/McAl7rFo1ivD5+uQhecxELJ5FN47xMZTQ3s/JLuZSAYbcDFAD/DkSVjsrz4qh5h7zHCGnW0NRq37FEMdWUowb1qDuT45WJA7OUEFeXgOevVK41WKmSPLqaqUzGDXZGO9bP1RoCQM5c4MT7rsN8fj9s5QW80X8lDNwozxq1+FONEkA4gWTQwm1LrWtVAxNPc5YAx0k2/Ca/hwUHF248U8KfVKwGI2q0DOxOzgOS2OogQPl9rnvKVRN3jbQAEj/mj5xmu9+i0Qe+XBXa1mlTvFgEHPnHy4gmmwEi3+sWMXTpBZ6YGOnA5pcJfnh4EASDaEZrNsiCusQylF3C4TJnCgajlFDDiR4J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LkpHyTheYbB8DdHqkU/FkjRbzC4ZT3mXRdEkoSTZN4o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NsMRdnRg/nt5vRADV7W9qEt0vsep3ViXo+0yLyB6sEunR7pEi4D/aTvd38492/eLjsyG3S0PNyZlq24JAcykrK3h+dSWmo8ykBHLgWF/HYgK3ioz0BHVxEBFqmP3/LxZRD6dS/MzNgAZGENO5Ffs4QDX2+nd0oH8rOwEdc6XkyVrO8+CX7WGt1xICo0KvJjGxGH1nIBXGnqoALl78uwWVOZq891jeOACF+S3VEeOWPD6B21/gDMr/E7yQXGVw1GgMCkpagwUTb7pe//j6s7jY8mAUeaoefSusFJeMwJuKb9poDN9JkXm4IOiURpXAHCD3ovzhsb9VcBOHwQbp7H49Of10OFyB+rr+6O6meRvZl+yyaRiaeIxfJmcSqFz4NxMR3qwY/s7FVacVh9RQZlE5pcr45Bjh9nU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LmyI//DORRUZC9E6BrCMQrh7xQM4Ajps9hvHo0wQ3yY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "epmLegE+hF/vf4L6u0oIDqxQhz8v6t8coc0bjS7H2XBpXZayDomSlys+lt2jvVxNPgpdzfANll75TbkLN8oSnylxAIb7UwHU8CN78btbi/k4cTa8mUBtnT3pkn4tZqdfcZV80PYsjrwQQ2EBhw6rbb0SnMpOlKQy2ckDc1QepJdOWiG34b5bS20xjQIi4tNrk3LNjM47oC5QC7v8CDTLiigyN8IwLjs5bWEjM5CTs7PE8FOd2/KY1O/Ui1y3td0iI7q5Om0dErpcVlw7dmiGzhBXXmFKrffda4wpmwU193vU4YZWFok1gcUkt7PsrW7HfNODH8oKu0iLUVCK41xB00WKR8RRJItToyY3spkq/czUAEdwHtjUxRMj2cYBrLvJcUjOEd+GNUo1IedkKg5mL6IWAPV0tTqi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LoDiCR0bLvA9kdN8E+GIniCrAjaDgLp1V2RqYELjOeE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AZ313r0lMiSq03G1fpiV6dXXoWGfa2HjXUgJG+x6B4EUb6WI/CzHSL7xND4N/cpu0azkdtPy0BVBo7KYzMw5LHUTHKNRP+5ed5ZzV6CCYkk6aK5YwFlpDP/i8Kvdq+2FZmiU51jQAGvkWvyzmJxVMdyFAeQqTKqlm4CXG2gCheUem8KK41j87HhRnJ5dUMsNkwTpUkh+LrCELLx/7MyiDM/xOMP/B97X+KR78GCAUyN75IA7C4vDyH0/swEVC4Eyyy2Gdyx9JVkpq/CbTVn8Qqq8qrq5FfqI2hAqmYRc8jGRY2uxaMSC0YuUjrd8aC/ByLyThkCMvQpuXXOf3CwV4Dl1hrEEPtdJallRDtu0DIUdTGqQCcwGmaIHQZqXv5r2enk/CLMFa5ouzTeu16XRi/E72KeZrdKw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LoqDXU5LMe4EK+V3tNghFYUWDf45yFPZA/Ph5RVPjKE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4dhmuVvQs1rbgTdKF81s089lO/es83P9kkzRMWa+mw7afpsv1slxbhV9ONyVe5LYRZwzMeXxj2YmcdH4+oVA53QGnoPlZO11nGpeG9K+pkjLVSDcAnKj4MHhl+v17huAUwGiBek5OrCzgwikXHsfR3jR1QrciYI0TdEM4urBfMiHOE8LDwgYwIQ/0+G3OtkoPYbuGQJeqi1ZmZho2oZBg5KYDJOCZYPhb332LxRO+awjISZV4H3Ltwh8jkX+45xasO+7CQzcKeJTIcXDqkzdt7o+IQbEcAva4HLpdl8OHLAED9NG5Z79tgelbk9lBwMtl2ncolYBBslX11pUOAy24ke9VelKvwcRwCmcD9f3bXReA1Do8RMEaFq5bU9FMIXXQgXXdyq4XTmgLy8C1Al9AH7SFWPjGu+K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Lou2c4V0mXsTMKv54TMlHSP6+WQ7fdd8SchPWo7srBc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tH7WfJbGQHtzazUqzLkRix474iYWvdY/U8utdz4HbPPf6b/W5QIbkB4UoKe/hAVbx3wXUnEttL0XMMlKF2Za5NNT6EoIarjIvk/mCLH9yF2FmBezhMSZUPRPqvOqkJcFh7sW1ObAb5GFk9J7VB+HEVWheYYIsYV+4oKccxyKwoDg77Y08KpS7Pce2u9IbMZUprzJLxzlXoyCyD7ZBf7xnaB6HV+RujPHJVEt8004iVXziuwzm4B2RjQAGM6x2PvZmLMcGgVaok4wiY19ZSKoodjRE5cDNHC/x5TZG396e7BVYTHNQ9lFlniJauqadcF4trcdHROTbTclidH7FH4G1qZlFF8JLC7jDkNZlNgEqWb/bf4QTXHaV/Kp3m66EAp8OTp9Eac6ebYGo9RZyr9AeMBB1hs7Hq7y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LqyVDPqzE1xmX00vfM22amOT1GEGpBaljhvPF+PfZuA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "muQLAWgWd5SPLj4dhqkdQoPjz9/0l7pDaf/E1OLOKo5EXfBmO6MxdDBSS97n9WdeavHpxNJL7B/bXwrBYATLMTgSHwHgeYn2fiukQq8zIYT2L+SIlEQqNlmntq8uhT5wr85i+I5ZDtpggTGskIm0zC0tNk0sGWAU26GuIYB+3utZe2PR/Mhvu2YaSJyTGlAs2MGdubqEvt0ygk30sgZ3dapSU71TaNGZWlXB7TWE2uNoArrzu2iKWQzaH4qYyaXS7/kLffYgm4WEQ5UzRse4OeIBeMkZPtu6mzhYDn39x6NqXf5B1zFFUuQauLmbUdTJS6Fxq5FXK0DzRpSuTSQYeSzP+EqI1VqUouwsP8y0dmPT5CC3Kx6kb9rgq/Smd6wQiwH23SidqzuKNKDf+K6BXBBCdmO6lZSk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ls2Jey0OLNBo4ZLR81o5RsvNcLMuKNivSn1sLZLt5es", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iQBa1dExBofJi+nmvcipyNuadLXhidrDfnVoqToMz3u3qVpde9vaMd9gtZrHTbNlewwjvJdylumzSsF0+ttTP09WBY714E8LEYWa6arrEMHcTX/wrUKUDor4ewPZyVjXHsIpnNgdGHkRNf3Dx5iuzsm+cu1h7BsE+SCLWm53ye4dM88rRAhq+QYGFjNg11+Ocpa2h2vBosw4uqTViiQOzxVEqlStrpcRilGjkL+YkY7efH651E64SZHHsy+JvIHdCcQcSe7E72bT4IwlFgiTyniKef8NvbbtyyUoqxyX5CNrUqeD2OzdDFRTnxyf8GAjs7/qR4LGU59mE6lzuxuNuBEyBZQ+1vvpuIlZf4p/owAw9XDDUY9vexM4FDRq7lawf2myz0q8YgATLU/caPdlSOY9SSKuygGK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LtDV0wBtBZV/SaUtQ02oOHeycIfoVE1Wg+2f60fFm6M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "21gKzEvpmVJXkB42Z+8Gxs2Y14ZXHhYbwbZa+P1fj6gI6AZwlQCJwJ/8CMtwALo4ilk/u7cMxPyLenjR4Ie5SqsJGmrYJzRV8Yiv09xo/94CfShs0So3CqhYkQECu4MhQbWq1DAyHIW+bsl5iygcfrpA3XhI4vZiMc8lMP7hUIuyLNXljcK5d/nTKWBM1hUjm+oF6+ryQl4LnGYAU/2vl8GkKQFwPXH2Z8EDb/2sOlESLanSqudRXvHuAMxv8Tq5tabwFS3CiK7maOFqcOgSVBKmFLYF1JlLFgZ66wB8JV69y/4uIjwY7A6/eE0IiXJGPgS+hee/2GQGAtjO6h6SDXTq4YsSWqaScVgUOS8F6ew8tRyl5JkEucPomidt8SjosGqhsO7Myfgs6Bc579Xu0yUhGBr6+Hb5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LwZU7j68m+lFMLZaH+NrWGfhnoABsSPE5iOKi6C5+aY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XLRBrzICXHxC69jn1277PNX1t/t7sN0ostlokuPwbHLcJRqtlPu+dx2Ext2dxrjCnmnKLrEqsD9QL30gYdsxfMDa8ciR4IQDm17w8RowPdxHcKt9hi3C4R4lEiZjMzk5PLDb4vdsqnesNrfH3tJt8m4Djoy/oW11ONLaiWx57HukzIUFvswQWaNHAFLatbMhsvuSqneXrjReaqfEAMHf7sHaeWUBP965C0NdOePCV0tzqRXfMxCYwLynIDFCtrDiKSukbVVdiCo5S7W4J+WJQdgeSvcNIuYYdYZD0MN98DgQOJMuHBOJNkAuL80yjcO/GTJWposSgXQSYI5w/oy/QwQI84MtFL25iJaj53FGXyQuhY/UF5qPFLvRszs12dV7h5abTmpD6xsCTjdr5xTonJ5ad3FEEzru", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LxUiVJ/iSlUpU0ZAAo7VSezdqxGKDQ/4hhFPz5ZHrwM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/I7+SsHYQZAlbRhuOF375wt2vYW8oXcdJ1194O3RUctagQDAoLyPbS8slwH5qjOEF4miiEcJ++dK0Y9AhkUUk8bzj5qJ/FccjxRoSQXOd/mtWsg8a4q6IzIsIr88i1xR9sf2slGZJNrcE5RBLCYsxpKtmkv93XnwIzoq2oTIVAJpHDQH3/4Jgbg4RSHkTc+9VdIR/jlDWmEbNY8fILJs+u0rO56JqcZ7RgO91ROfI96wGPYnmkWIyQ+q8rOMBDhhNA1umGH7NXpff1PYveTO9naSnehTuyTv5Uuo7fFDrgymikLM3u6bHUYOFpe/ZVDFTnP78aNpjdW1bjQ4kL6JUQZ0U3npFU845ZmGh1s9nW1hNJIyTXojcc4S9TOS5SqjN6QI93lg4JXxTOWgvNDmxK8/iJdropOR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LyZshaDdoFcSLrrjiVyznyV09HPnRtM0J/xFoG3N64w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sS71gD6y3XlQID0de4v9hgedynMpbUb0fKZazvwWRcTWmEMOAnCDi17UTY4GitI9JQxiUQyqSit1paybDcbyFcyRJtTsW2cxh9VM0qlH2Vf6q8qEPPuKKxAHskIQovT7z1KtTnUzq4GckI7e0TzQiHpNY5i6XrQhsN+7/qICfMaFMjXuC8EhDCn/hP+yZsUSFny3mYU8rlnVcWaPg00+riUboW4bsfqTOEodVTMnOeRLAys5yolu++I4eG/wBx6xY+K+qK2wUu9GmJQhywo2AvBFJdQa87BXhh1+NdQ5OG1R5qAOjbdHwaBXpkg13OqgQDaw1CCxYfT3+PPQN2Pb1apStZGzctqHx3OZ18Owo+jPlqD5TnlXLaCaH0RWzt/YZjPC8LgBqIWgy5e72dm7fpT8S53G90b9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "LzPA0aqJZ7JgDtRpe5PL1RNjXSoiISrb6im0TkbQ3Eg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XNcA20xcTazLo9whTsDlarMbKEOiS4Sb1vgIUCEtq+WICQlqO95g3fzUPHB8ued8nx4odkGFTOwdD/0r30ZZtd0i6jxSei39oJ5OjTtcZHxwshyICowobDzAqL2ier9zXLWyhlVMasVvQGZQ9+vEOGxCbZSjm1+n5krDlAamEFbCvu+f7OFq5/9W7+Sqdu9xDzVpQkXg5torFJEnjiPHaigXb8My14Q5W+iSfnmHILAnxcB0f97louEXql/8tChgzZHWCGknojgve/yjbwDSjK4FswHFc3Q8dPLNrwOE/M+M+FFnA+0c6elK/BT3+yDYhBih125rcL+YKJHnql3r6omH6raAUTId6AmmjzhGdQnP9dzHw/WTepMrWDygMWRpifdn8KnebVoi2v4dMBV1bNYhiyWM2Ydt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M+cRTAdBytMscLC7nAQV2sncCa6zQAnCsLJ24jtrEwU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lt1QOP03Heg/CzKJM1mRslERf0mLNi6SmTbmAEh+Q2iUHZyWal48+SrlFTZv5AoM1BJYZ7qlBZKIuo4xNd8Q/zszmLfb8xyaxIF3VtyW0RoynBO5PJV8xlxSNU9yeODzplkE1IFIm4BxMvSX2U6osOAH7DW0wOUAdLYqVdNVZwROKev44n4095Zjh/044soKu7bWINNhn8m9Gdj8aqFfbdUhQQ7ygC50RM0Oeitp8VQy8F4wbJLGi7t0PqRuivTArtxUIX+ero6h63NyB+VgRsX+E3r/82B6M1zC8USl3sBaSdqlNMaAhlaKDTNJF3QZFMTbbUDjFbVyDr6DsH1tAQCVVP6FAxA7rdN0pd6hFGUf7KbFlM+tclJP3+jX97SSIVo/en8KBm3Ve4mmBv9Dbveeo+YbnQa8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M/8AcbluaRJ3zgpCHKH3T4ku44F4MLbK55nH8ieS3gs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jfttCqge2liv1F2PaYtqdrXM45txKvPeH2AVDhbZPG/UXqBtMoL/TezUrSCe64znEU6nqQaUbA/Chi66OuDSIVvgLDCMQ/8EfX07uKFG+n2x/u8x6uR9tDJuMOC3J2tdJLO5KLnRTaHAy/8NCNdQ2bHCuyQ2bSZsoiJrCam9GpiXsWfxuMx46psjM4WyNXmtIZ4Z43TR1joDqgpzHR3mDBzLroi5ERu5mAQl9TKf+LAYsDobDvX/t5L1DAMnMSC6bgcOfHq9i/LGppVEwDNhgFEhv1Z1WrYEEIRDVEd4tH6BZkXdGr/I/WA1lpyrEfyJnbTAwcYV/cQ4yaHDQtfc45+KaJiDu3ZJNtN1QfS8TCa58Yi+yEfh9BNjNHyu5LfakhRfCRTeX3JbFH0r+SOjxt+aGJ9Hw2vH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M0LKXn//upJlekl5uVJ4OxMOLm1R2g+6i3UvVtsnPOw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0hbGR6reBhy9mFoN43U7s0dDDR7sTbRRrXdG9ONkKly5jpS4gJQq1WrWYRIHZ+KmaLi40pgYiXpZy9Nu83QgtLyztxVaQzKvGI7l9aVRa5oErlSxqT7yAAyQ+5ARXk9Ew7CPBNf306hyRYLRhe8AJ6XSVonjLU5M3+pCLDk6ZpBRwPnEOjI5nAKABouc0527QX12kOd/DX0yX9I3URGQWaX6chiEuud+PyviqlwQ/aOR97G+OxfcdRO6rtUMaQiv6BTTBfLajymgdgY2WJ1wK8yavU59pbXMyV5qPJZRcVzOX1G3o+/6xtn+9wGWVn2V84kNw3yQBT6DAYu4Mda7FkWhWRGw2DUhrqTNGc+ycqzO2SNGE2jqRxbS5z9t19hkmtHBRvbbAcJr/mynN1qBDrcLkpO3u4/v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M0VrsnTkU8vmOyxSWGWWQ6j1b5HEVU7fn47ssl2X72g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0HtiN0NvinEX0B/qy9Bs5+8awjge68sZQk23e2C1qmD+3aRQ06+h0Sxpnv/OWnDCvoHEVun38PfeykI6rItwcnatTQiHRC5BAK7ig1cUqt5iF+AW+5tZme2+quCXqxqTxYmYT1CV8ESKHrtbYQb//GtT84D48U6wTmDBKqrM3NPR+cwzXgAPkriYIvJKKg/n2AwIXWdQba4NkOQgcDtIeVg1jAfgRb0EFJYpAKMwRz0CNB2yon7lsbQbURxzvknj7MLLmTU7qS8B2ObXnK6CeSj+vOdXVt6R7DLC4ZTwra/Q1kk7EDBr7A2xfH/AZYzfMpV4u8nbuYqZoaqqkVy9qezH/drd6NJkl84sJEtk26LZ8XRCpGcVxsxcAKD5lScexhXTJEJS5Nbt5Ww9kNdqx5oep401kWLJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M1+KDoM5JdQAvGuqgTvRkXdQ6r1RxfTFNa7fZyZRVFU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JztF28eKMTlqOT/QHr2nOWlUIpVftMxIkwQp1fzbqFo23I7vrCZ/QumfNO7rAajuqEweWxUkwrt3xU+vD4d0BJrS1RJV2VyQBiVFhHvZzVbiXJlqK2JOsJvqsOtQRkQkcSg29X4/4Q1S4ddmbNzDJ66Mmw9bP2ugxT4bSvLgmFpc2RrH8JY3y/MjFFwdA2yw1YUc4VbNHHlWpo9c9xWM0r+GHbTcP/eY7BYwf691Jnl37uRd3tx25SKH0cVH1Qi24G/4wsfGEeALaSS+nLLFeS8IpxFOKlSoP7BpiRPr/C96BOmv8DMIcRcvE8CWDdlYEEjFa5802Wm98/Xbd1EOGdxDWIJzRszdfg+lbdjroBdAVdx5efkFTgCROYuCzawi8me8zrdzvZTn96y0nn691zmPTrnnzGuY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M1iYmkzSLhcDi+kZS/WtzwPEyDjMp+npvgwo48W+W8Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bcxUA8rtIWKvMnDaYIjJ4TDLv3v9u61hHHL52IadfzDBxX+haIc5C8C14vPAk1IsM01fQhhFrTS1igEMiTs9cnWWEeQhBGiesMfra2c2mLw387M2GG+b2VkCkaQAk9O9CAKSi2se63XUPV0W7IH+BjMa9KD1xk4epmaNqyXx1EJHMxZFTysSqRkuWC5nCTBofFB9IZg/lA5FKGGRsrl+DNjwFxpx2D0SsJ5lxmIJI54wD5g5jZsany8M5TYX2631+zVwAbxRxKzkdF75e437qvAct1h/wVj8XDUfDJSqb1dmOSWCnxAdcNgpWnDf69QWsrwWe/E+LTQZLGxSzHpOozcXBAK27FDikhiQISOmk3gjND7Ne0Zp0oq+EBFok6OtaIpRpuW7j6kEDRd4mhNg3jQifgh4ktfd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M1puJm5GboGy+wHCTR9FUKIKvmpJ1EWpPjXjAzAVhsE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "byPGyQBVPGqVAMcjTqT5bwpQ8fOAX9dFRTZ6HLGbHGOXGYdJqahkydJIwqypRKSQfxfHcn3t3Kbk97tu4mKwCBZnVgr54lppVKKsicVZ5PBl7mB5ym6QzdDMTBCVPZU1PDmDaxn/QcDmeCccXRVaoVmp03jQMdUfZsRtFQiLAyS5Y9Z1apUpz9Kz50Rb/UH9Pq9FP5eP3ACnJ5QtM/6HcPWwYpAaWbO/G2xKAOzhsC/TTAtoGb/hwb8hb0H8OOWfknxuBK7ZP74/ERRseQ6piEuyOw3i3T1BP8WuQN7oaYOf9W90GZ1WmUX6XSXdcqIcRZ0NImh+mhi3dbovLZ+2538mtiV0oHmk/1rVZLhZsv9ekByaG1bwVzx8HycqBj0vME2h1tRFnyFCrJrxnSiaCxAAg+cv7bsh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M5jtMZY78XMJKeL3yD/X7IErDvJCE/SGjdUviLWugTI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W4noUsz0OJijc0w9N8ZgvnxHzkIE2KTie8SvZm4sjWAPpd3QF/PbBJKFFYiBA6QT5AS44TlKvs8WAfu9yRMmwWD7ICPiAiC8zB3CfuwuK56gbw1olPtMUlooMagZfTInLGocfihfFbrUc8jUZU+OcEnulmrvCieT91qmQ53hNG6pt3Wn13Y+2riA/TKHqWcaUlO9Ribw+/K8PwzPBu4aAlKmK5mtUztf1kGejWrm8rNydTTs9A83wKZHPSeaH0u475EoVQfT5lyct0F/9lvqn7FyXMCGPEGBG3KCVbZosR15Ms/7al0Tf8qLK/ejCvFtW9Qew7T5RVUowRpmhunZOmRTXI1n8MyLHZhSsy20plIT6SFJwWxX/svj72lhu+m5ZPUwrIuD2tC+TqoetnCHunweSznnRKIv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M5wpwToi+SBgmAb7LHl+Ee+hxVmwIIvK/DTNefqy7dM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zBubE5kvj84nM/xYRuLVlu4Aa8HrN9c6D53zKFcs4LAANAlAHg6Q02cryJTGq7u/XBgaF/g6H3oPlHRsTq8BWuXP3Crqj84jPymeA2HNwfBk2EtNdoh3rEwumwbpH0JA+Hqpsd12qLkIgjy9lDHKoIxFeUj/eDa/oqAQ7OEM3VdCD0FHZH0g/b2rSZFcvSl9O+sm+n9tbb7QwTdX2MDOsMN6QOOnc1aupI/33p3PmlEHQE7nofPGuuFmlrkgF1Zk+klZGf9VZuDDsGtbAYiyPQsYp1hUFu9sZ7I0ziU/32gtuhSiRP/MKlsz044lmd5KmFwsUUoDgBcv9iqaWp1nZ7VwtN2gOPPcM3GlF5c+HdfRYVaGLgeTuuFFEctPGWz57ASJzX0OhTN/ZzJirBn2v0qHRje2HpoS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M6V/+TE5XusaEni844fIWLJuS5KChKB6jQW/xScWYdY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FOpTDk1qZQA/weaOXVWmzP5VwVAL1dthzhDHMqhJ+5+fJvKaCswgVRgI7WKlp+7sVLfIM9vTgGRgngf1bY4zoSDilipfdG4QXArOIJDctGruJX1Lgll2T8b2ncW3tNvLsstFtmIFwkW47QeLtCI6wxo86Il7Zoghx9pqTmAq+aXnkA+WcFDlhbCOCUByIRdq6vtVi8/FdHL0t7Up4avNWAjOV7qzX0twbzcaTqFNIJ6GreCykji2qTese/mu7NI4i1FWcQWNvL46BN0Y0scl0NPbI7Ox4gOJmf0f+PMK5m2D40irCJywOvn/hMv55E6TmFml+3QPLBj20ufoTRNti9URO/Gd7cHqsMWUZjYRS148udECgZ9XxqLiNXR2oN4i6KOcrfhlx4p+zPdzDlOXNqMlOZIqsDwp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M6nBIp6R7pXNbwUMeIAE6dAA4wdeLHmoxA5Rcf8bww8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "39280Hvwgb2Mo95fK4dsYblskNfhOIPL2Bqe1vcfGm0wL6+hnNzCFHx41sqOiKX688NLPn5OibCEGOo8W7VUrAtdySkvnRjm+oJpCYCRAj3HaTmkiRHWDCIeZhvt56MK7UGQSHJt+a5FvEOmbi9wnJgycutuD+aAdev9wvt1xz1ByLkEUGuSTutaFjP6uFc1QivObfn98dIPAkyXZ4GhxILouDr2lYWYx4bPuZgeEfWnsyGuYE075HRzS2S4goELJmfGoi9DZJkbeohoX+PBDgZWqn0hSSFp4aZeoHXU9MSa0HF4J1eUxmT2IRf5/kor8LgJP9KS0g4ziY1OWm/MMa6XZ7e9F8o1BFORHccXF3zaLRPV3hP9Fg4L9Ci9aMN2UiuO2FtsEGApN2X2xEV9ROhkgPVP3J3I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M7qqzl5Ud3uSrvcpg+w7pEv/X888RmY8tUxjYA7GK3A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "isGZ4JMszfWvyfkKQNLQhZivMcc5dWBkzFEV0ny0dHPE2zYZY60LN2YMqZccaRWSiV0joxQHvwYRxwCaL+LvDZn4XcQMBQIvoGtvzn/mW2N0kYI6Em/R1kLa3lbNQH5kWb20YH0LudBhEzHa1IDXw+4q6ZRBo3Lj8WB2mm275PP00hNY/uSsZZU1HJaITa2d+RdmO0L18l//6t9OKPjesYN6TX2K7cW3MIkBgBK16zOS0fUMBusiDpEWT9gMbJCtAc5+cKwJIE+MMzL1iVwsQNrxaGTKaDK8uA5ftsu4Jz+Oh8pdjY8hbgw7xfQgWInQdgE0L3AmS32ff5gSbwCthsb+PnTZtBCVJAf8I3IQ3nDuF3rehb0rJI9VcAMo3GhtqRxjx89dH24F5EvI9v7e2mAeMsGpxPFj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M8t07y1WqOHG/0FooXHxCrStQAv6xAB4Fq/hHkz5svs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wswFO1qVz23pVCVQ+cdtasE66eNMgxIdm8QMdSwiROvvSw4fFGGGQ7Om+RUNq+NtWM4VKONcq5IxrvzQwkSLpRi4bg4+/T8aGBC3oFMeh4jBD+UDBb6vUSU8hgk5IN0A9pO7P1tIRphLQTrcHry2kgyGDvW87s305hKv6NNd6jS68HYwa0fQPIO1j0VZPx4KNWh1btZ7bQTGVcX05fTML+gbXFsesYXinrzlRm76r+DYtrTHrmE45EFe+IMVD5yo+oGrEM9QBIUaJdrd/KgGvUNW8wvlm/a4//rJCX6/U7Esuqv6z4G//pkOrsWHnwKA1wohPS4ZquyUCFBDbJgwhbl3H8h0Q7VBWm1GUZIzEdpYO0XNQ1lcVD9YLjRNx2lS2sKO1/X8LhadN4jYCY3SsvA78GGqZ3Io", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M9GuyxgfXnQEZzEm72VADYnm9iTePy6Q5p0ac9mjGpo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ieEn51sqSv4pDyUdMgucuP+cOMMWzJbWvAE7QnErIZh4XuKywp1cs6Qyc3Azypzm9jLOE3h+g1+4hJrlo4eIrXGCd2v2NUo9/MXSpcm23BvyXJhubvb06NT8LbQ0VGOXWFT8OkG7MGwMO3CmkQHVbfFpUj8GHQn7V9bNyk3b+V5OPH9VWMeh7wiEMFyx1yCK4+cYqpNt93BU6bbEQUAnu9rCqbjnWty7tcbAmhdb6iBX0t8DF7flhbXKnqBEYKbxgDVoD0rfxwuu6bCJti93nGTsTGMSD4oiYNJJFM5pIs0/tpiawV66/EcX69XEnW+dgRCIEaCOyhdubjVTPrMsBaLb5lviT72Af7VOh1a+cj8ELO+HTh7NWSbal7yvli1Q36h6AIPqZlgOCh4PSLzaWJ+wfQSU0A5h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "M9pTCkM1nr7iHdryazHcM4isS4Q3FXegTTjmnWJiUXw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4aSqwLHCVXF9RrFA/2i8UBp3IeaKSnxwkcUI1T3eh/uh3cvh05cxJQHFls4ffCiFl2uX34ZHhjDWsPzJaAbVDW8+vjIhbFhde5rPTtbyaK1FDs14WxV0nR6cruk2OfU6KvDDSOCnSBLgSBlQe5CsVXkgLbSoVYU7deyb4/bG1rQP9eAlNEC27/HdelP2cVYLEHzqMxCGfTlMRjiLez1bL0p45B8dSwqMH46H0CP9JbXNSIdV+my/rEepQhy8icZgSvtY7Mdc9edrrPKsAEgLXF4Jistj9c89ikbzbit/zudZI7RwYpJtL6A3HXbOYK13LsP9pI0kq/mhpZIRQyMOjEAzuIjtivXxwQqx9PMCNo/vS3PXwGYAa7MImc2JADkC5mupP0aQ2DeIOQyeevC+tC9wR5Hs6L8O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MB/PAA3vuV43h6G4PI8NMUC5N/w+qLlH6a9WQ/PyZhY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "su9jC9/5+/IHbknPmbvuit4j0xl1fULlAaPBMQMZwpizpH2Xkotv2idA2M9dewOUdK8CF/4zOP7menAtAOROwS/56Jt5GQ8CEec2UITR+RYU6k6rptafbt/IvvbxznrCXm7ViOkJeucgWzzLqCJXvy5He2g7FdlXmrLE0iyHLwik/+h1aDdiuyY33Dn713MvRThKS6hhVVFeIS9iNpXmhxhhs+GDqNl/DAKu/sNFja/4LNGZis+Rx9LWFrc0XYqyl8NVcHrVK8z98aehZzumijRZh1ggrvBrdpVi4zRDxLFF1kfZWp9zilj8ZCspe6rqlufEdsAosmgfb/Hg7EF+EyNTAnv+IZHF2oGtCasZme6STa7KzNwNc7VDd8sgfCrTELohzbdDt4erumWviZ1iNSlfGR3G3zI6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MBGzgu1O71YmXYr8erHMNaoiKpAjZ7krqiHyl9a7D6A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CCconC+0mafOuxBZWZGVHSx4xPgFNLy9bZ6xwoUl9/UJqo4STr3cytatwgxoZDJwBbEv+9Ru3BEywiZJqaxll3wAGLKXjz/8ta2Yyn53CPxzrx6N6Q65o9xdQhdriZ+59E25ARFxjwGoxsK2zmWUMc+Tg5ltRDdGglAaIL6bJDxigSJRVGjwIq81xsSW2qbGdvqZg1plvhxCHw0+R8uW8DJbOgYbEwtBLSUd4DFAigeQffuKXplYNoNLru8vbArizB8DwypEH02mA7Lo1kyeT/WQX8zXpFxc6VKWXrAWp0ePKxgSDVf6jTMq4cZ+ypClRH2Y5ZiJt9HrYBZ6T8RahtxP4TnegPQITL+D+W7YDRmvAjHo9xmHoEshbQbm1hpdB7i2Sa03n6toLtcZzQHb8xuEBmBX0WX8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MCS1kfERYefMOAJT/PCWYUDhzlrN5ICvd0Bq7spS9Cc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7jFcJWMaFipwHXoXk7dNcoAu2EFrk7Ld6BB+x1r9s1ahoCy95go4u4cXi32ZtjT379r+slseEh6s/vJRqyx4YuvbrlSeopu5whd1w+eQZbFfT7o32eIVeO641yuFhP9Wis5bCHGbVO/8UMm1DJDv0py45jyAao/OlMBZ6C4nJxT7UnBOpkgQicquFOkzwsXY5ydw71EULtdUPKrkV1PpjjU59b9bau94XtTG5bO7Ax4nY2/UCUGDH14j6zSQTGhKuCYedVCUxxiWqVKRXPTF9ar8ag5AE4Jh3pl1ryunSqtjvhKUKC4TU2giKEdbw0L/TUYwQXF4QOwKtBpKr/v0VGFOU8eRfi7A2DGijGObNiqTfR0u25ObI/+3DgVQaa5/myo/0jM7Z9TFGJM/XysgBDh22bQZUZvf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MDE9Wgzmzc6z/uZ3l1tA9ptBWW00ifX/8khBqx6cKvw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hVBt2Xx9aObgNBqGDqWO6F6GMJ423aQMQr5xOo5NS62NbMle7CnvFq9eeT2Gv6cBu3K474CIPbs+EohCvEsiQkZht32mmxtsTb38tfSIAP/Rt3MAsSDbh0t2D5HvgmWBMjpJTCLKo3u/OWsqywgLQDPX2ndh66Udy6TFoQ0nw1+8WzR9lnN83GpQgOcb6gb4JAvb831F4xe2wqj09Tbja4gyW10aUnfFeVlVDCPBYSypbKcbZMrc8jMypbuXl9bSa+74HFkhhtsqN1eLcAtoFobm8197v3vlmKSZjCAfgZ4qNj6wRIigDdFlxI/rlFXHUEsimwor5zbMCc8gnk3jwDFiU9CuWtkoqWmt2OpYxDLXyklttBUqxUxuf/KYoXH4n02k+tTUAtjXsbzsUYGlvMAgrvyLR5Qn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MDMJ5TlMvWwSSCQC+0ss4j8wqQlLC2T5U8YJ8I/X86M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PPIlDIG6zvrVsnHVacYkKTBlYNuL8aFc3J5ydTv7Z8oyRHVi5J3S9A3fLTLF799JIWZoGsdT4cThkyIDZtZFNtNqbJ5AGmRN1huc8+O95rpJtJHeNYtJMWjIsJCqbNb2ukqblmGFZJB0NbePHnlstV65I4+PAe34gac1wmdbSn6quYMvJkeAfHj+obArP4YgKrPJYQgk84LWKEzOPt5TnRsxgm9xOExITP/nNgjhsuyqVWAmP0E4lejbvs3YRlqUUTb9oECKc0pd/XKTeCX4ZN7ibpK9f/aPLMt7M1kIMX8Q8kv81F8rv11wjzc+5QN0iA79qa7R3nuSW+TEkt8ihfpMPG3o9Mr86w7qv2A9lxZwfe0I9FKWLUy662+moLlUsszYU5FM+h6ekkUYV09U2zRc4FSPmn32", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MEOFlin9Ssru8ab6Mg2FQrxZc1pc7FaqkCoe73u8Vjs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yDhtpMSV3EZOGqZXzSDTcaxckIbs9NNaJ0Sp4xJumb6QKvemxY802WO1d3v5QzEm/K/8YdF/KFi2llfraQJYEREEzAKZGWYwoHhGUvY3wx8a8ld5rwAoQg0/X9p9ldFF5dctn/pTUr+SQHM5hFg8xhbMxJvFIM18EXhGxaKYBaSu1dplXQldeOmPKYJ7/a7U9pybYmY7V3Q5b0t8jVb+jHoIcgvqWTNIQ/tMruY4ednwWhwfmt5LAZhBqEDPwCGotnyrsvXEK4JtNFfdVu7H6IQbUfMuGaaAQltpP/EpT+00jUkE/75LJSWbfsvcqg6GGo7Bomv8zhirIMU3oNdD3omnPHG8mMd3wFFK50F4vsX57aSWF3QjJ6j/pnM9VDRzTTaQRk2j0/soeU/MDzwwiYuVAkelCWmT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MEd83/KNx3zClcqAYYs2Q/IN3NZUCDN5BbHxFp+VjHg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P8MU2f+VutSmsPMkzDTh7Fo+Ay1ApvPn2zrq+LdaS98GBTn6kRMT8/4WYbHBP15T4sv9bSa+wE6NwU1sP0WmJO5+rflV1BLigj+yqBU2OMAgsuVKizlncWiM34zojsy+uk96LfBxUiw1cJN+/By4oXwlTkK8FVLEl1oSXL24sxtLNYGkhMEWiiThtimMQCGK6wXGPDAxR7CrQ/yg4ZscQ+V9GtyZ3bF/p3AKCAT59jJO5ysI+Xm0HmS99t9xcYOG892kaDj5k89YvhnD9P00si+agjjtTI14yS6kunkxuj+8UFRb1MhxpvwPL77uSlwF/8jidyqFlIqVHyGnWkiLXa8lsv0mCxSvdoGZUGJaReFMaI5AVCvjzM9OXuUq8kpA4k53pJKHXqxbAbXMKjWsMU13OsjsJmtD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MGxmUnoaL7LU6rcYW9/4Hp0rbb3pFp3iUmY0JS9Szto", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tLeo8XbaDQShgz3hlj+NpS6UaT3oBlFjP9Nw+58E6DSxTl5/qGSo0/gr3ZMcsVJF9OPCq0CUMVZu/HA+nl+yTBLulWzBwte08gROdyFyNPathpDQ2zxYVVwTVnt+YwsDWgdHonCEn81mzsViq2kNz/ZEvIR1E2DgMKKfgczAFHOtX+k6CLVxcexl4T7FvjdvQZ6fWBHDXduHg5YMcbYFxJIBL9fgyR4OKGmOqixq4+SaUqsQoq72zl7dBICzta5kAIcR/OVXutUQu9iSNB/pp3tB7GrnvCWVSAHmcjFu/7JGMmWSlQby+FzA25Nx3+g3aJ6i/leVZee9AgBtgUe+ssElYMGDhrl0rI7W75buwl3HfLSz7SuljOzjM4O4x80BB+1Rw3xt+5Pi/mEeFivtMpwP9t37ByXV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MI+jCqo+sM0cKXfAr+IW9OSTC8KvR6HZljwjHMJO0OE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qUw4lCCILduaxLUUd12HOKYaJ7kcWcWkEa/Owel2vUI5NjA9jA7b/8yCjG6qN2QzT7cs4L3/IjtyeQ3kILTQLuwu/eDRxVwUFPOg/c5cMUN/tvIVaTo1W2+7HfSfwiyPr0QZB7XMmsDqPqtpRMLtkg+a9EfLk7nv3GgWayyE/NIq/WKRPaNMH7H5n1QED/kFYXyTiNjiv98G3HdM1TycQJRMJovxbP67YCYDUi18xAvDQbjI+LAN2eyZsogpjMmokphgNl1+Vrjm0ltfVCvH3TOe/qjHuZgl79BzsPKY/HdKQU6CpFG5GnLx+lpS5GG7/n1a7iuioxK5zFDydGPFtNXEKboHWE6eVwAQJkn2flNA7awpxIUT3F8iL7ZHz4Jxhap2W/iX9VX5vue4qm0mLwNsjmt9YpPV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MI99lAw4J5KRxcC/hkj41GgHlJSoOmM77T2oMyIr7+U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RAdDT4FhIUZQoXHNNAtr6AQVcSo22uD2dRp1wvvgblreoJ2koiaOa14hdcgMn1IfUTRkfz9rFEMOIJ2P5eNapPbOQjFTtwQBlKfjZoDZ785JG48WKBLr9NRA4HOD+7tXlXmaeKNa4ChYqF/kmk8k9ckAPzqVaMVzq+5uXfQJig8E1ITLmrEXqaoc8rVUvH31H3oBY+/1e/ySZ/EOKUr9ZElbi3hVSDNlsq8+R2lXaB7WYY3sp4Zb1u/E9op/uIqpD5S1UylBIGUWt1HLYcVZNYgKVIX0c457QNuMsck5q34Dy3pbZOrfxqHs0JdmBCwDBz5rih1htGLbxByWMujkdWsZb1DLxbYIUZBTy3oqSc4rBS6sNaWeWTkXQG6cfi2oZNtF6TI6olvKZKALm//vQN3r6nCDujAN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MITiTRvlj4LarxhTVQTGA7Yv9q8Hf2Lwy93bY07IPWs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KFX9NPxG1R1j7OCRmZYiWXH/MYP48duYIhwQdyGmDE3tO2YvJfiVK6ZH9ej3SfU6deLStZF9BDwXX0oJbuMmZKmF6cczcMBppbyFSxMH5u53c+q9Tnwo+tZhvD6FktcMxDne92WsDKapzRpszZOhzKZYW1qvsTMNGAzK0+ZggZ9+FLAW/8juQFT0vla36s6dJz8/pBFJ6RunNn9039jUl1MwDnfceyfh/5sCY9hxLXN1tlCQYs3C44dC9M0utlUa1BJ1csH2UWSc6HU1HVwrk3zAavII9/IpPqtHnw02FYrazGAEME8VbvpwJqdXNeOt5AyrvM+doimljZjP61oKieeLzdeHfzF01eRHrW5o5kU8auuzMrJ1elopAAk7+F/7Z8RgzB7uEwqqEblTYnZ4AmLz8uAebRTU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MJ0AI55t74AQiN85cqNA/RfJcv3Sl5RNZGhg1VdwlPw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "C6FgTtvcc5HIO6pvSTpjcr2KPG+yW5Uhwu1NfEDx3LxgxtVptlTN9RDrc4lqf4NnLRnviVsu3nO9svg3FOVoSpf09HVGTcqcmus0vHiueOH7e+BoyvpQVsoO7U6mXZzKiL5ncGqm3pAbiveHhbj04lXFmo0Nx8SrM0U3Q7/qTqMsGnl+rQjl7zb1++3v/Pt59N90lytX7UoD2f8bPuzbGCyb1nArlOhw0fGC+14FtzUp42nA5iAr5Q9XrRjFcSlYbJ08uvWvdVIZIvCo8C7yuP3nC5Bud3jienz7F8BmPaaJGCReTuRmYwfhNj4eqicggJvZf87TLZhm+gsp47r44+dUXEX42u7mkORTbv06lQaXfgA2QnMhd6/qH2bO1lKbIvAF32a9kPcRHlmRpE35SfK3dbGJxfyu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MJTHyDlqqZ6oyjMHZ1D/SqUpBLKW/k0Vm6CrhDPnAow", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j7zBUzgK/Nv69uYg9k1TQuV8Hvi/AEHLpKSXC8eAzZXjbPWk4JcudFoZ48H5Kxrt+cMscDV+jptP5qHC4Yd6mfm4u2rM23/QxN5Y9rJQwfFI9d3X2MEnfKXGxhklIMeDA8LC+sxAExNqtkETHQw1NYFtsgMX80TN092DNVESCMbpDyC+ZSrzsF01L1K6sF4dMjI0I3SRzeMGTblBoJ5OmtVlkjQLAki7HNrkizGGAGulxAGAx4/WC7SW+DLAy0grayz/s7dQCw+6MYK6KuBJzJ4KmQjReYqk92YjDJsmYin8SXXyOa3VV8cCPnQnpN9/dk3cjxpiVmTmYLUl5QLXEs/59uacC3mvzY9m91GGdAWb2dzCC1cuHlCJuIUgNNv3bq7aMKitnMv/55+v3ILG07DvIBRxmJgF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MJXiSiDpE3ECtod2UdjLkqiMyRHDelXgmDKfc1GBM9M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UoVU8yHJVMsSGIR52nY02U3jHsWrYHeLU9LhESR8qSH+jq84ArusN8tisu3TOT/UFS31Nu17VFmaINq7seDZQh3Ov2qhUrrf1PNgDj3oWUwW5HqeyzdSAw/F5T6mBKkB7ZNpdhRxlaIptO+c3VfXOx5CSWQyjmle2RznTZNqOd+VaMTupAH3QV0b+qzhpx8GOdhXuB2jpRb0HoDPSRWIOQ86hQs5t2xhcZEhsl0xNOu2sx/GPKF0DlgyZq+rzDWI+YnTDqcnu4lEiMDzebr/gyYaoY7zrv0m+AgUjv7thUv77yeKceEjE/Xp01D9x4K6mAKXOnBhaIRGRuVUiaTdP25z1rz4Kk6Ar83QfiQG6hAcyc+EMk60NqnHfEm6Gddcqbx7FBo5X1nmc9rttOERbznlPvUjRnaQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MJjifpkulmQVDACgGIRT3wNM/HpP89YsrQuwfyrZ6WI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F0jNpnWrhUnPqur8rxLB2bzJZ8m8/xitD3O8zkDUeyAnZpeHCF+iUSuhjBrMpfs3WixNYw0WbAORCkTPL/QqkP1sEeIwdTCNlO8CrOgVkY3mBjJWMyonnyaDggNPdsKk5zoMYiCtJ03FMhhe4j93ZXOXND9rcmMQ9bdDIm/AAMniOZEioTgMsPTCuZvUh8VTdw12+N0f49Z5N51caJn/tyUlqNMR/TOz4aC3N9F13mwmesxv5ZmjX+ioZOuLTagNDzDXRe09ne1jAYcT4zGBv4Dg29P8sJFYepcPIp/gAMtDoPyHWT+zVv4dPJyiFGroNdj8vxTm0Qk+kR+D2/JMLl9jDXB3wSojbD4vsYNt+QMOY+cnzeKcRKVsOnYzk69JRVUPd/GxG5QaXi4lnOuKo9KeKvGT0gE2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ML4nvSeBbrg8noTrFdtW82UjVVVCVy0H10hDqF+LVvY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9H8tBDIWYJaZ1krFYHpgWfXu5LUx5rX3+jjS659V0BUd6AZIbI8XiH2o5vLJInPIMNtV//kksMcWK2V7i9fkHTCYhrrvSL/JiTWz7+wxp+Llc0u2eX0Cu296uYY9THYKWpLlOXvqx1XQeScYRy3gxqdUfTTh092eB84gc0sYrsI+xTmfFMHBvEXai36+WnGCpMz6/pL7rTbE8/4pZp2WxkAdAtJSjzo8bzgSc1DaHt7jfgRi1w9WQFH1mIJSR4vJOFfUVwr4AgYfZRYOj+j8BQZJTH6vomcdib5b7sQ4n1D5P6xVy/5qo8tDYLIIAzniL6UIQgOgOmHj/kmLrnZ3ThNOc01iiYCuXfIoW/CGZRN3zX4F8SxqIersvWacq70aoEsYpCfBjFFPh5fgUFAWdNUYMaH/s6jF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ML8l3Mu3Wxla+BdpZxnWF+i8/BvbTSlH2fyQCVhqGEE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YjZ+/Mx5CGqHOF1mvSJL52xed1eBvrAwiQNowueFNj+igvkx6TPgYcm7rbZtpV60F7OOzA4MpVv61KFsjXPCj5SvA/+ZA327Kr4xquTYm0aaZIHGaGB0O9mcCNaa2fGE6LRV7kUShGB0DE82nmRdOkSxpt+8+VXHWJ9Tj8lYht6Fw0Awnf1teVEiqllOO+NSf9PBN7ojljH1WLgydNr2x6cXn5d4smCx1cfAm8j7+1cB/u0yp9LrZ39X2+XzZy0XQHNesnfN4IGV0Inu8E/TeNcY7qsgmhGw9FODquPPUIc/gHWaeLDro13qclw+UDVrB9pXNwALKBGoKorAooJ/nFl9s6Q6Y1X/dfDtqN0S0CQSvzEt4rmYRVdcn0Lw2PCpdN//NvKRscNmKVcBd7tUCl3sV58aegQT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MMs4pH8LEQJDWnw7Sj9+ITPU2u9t7WXuX/Q7rwL8Vkw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VWwT43yt72qLSRSg2M238tDcpnMNf/wYJHIRiMd9eIwUdOBZhKq0l0yzOIGszquyXAGAEnv0yqbCydp72577xXIgGdda+kH/rWOcU8wKw9v4TspyP4s6hyd4tPuvimWjkwYUXv2UGDSJhjUgM02aa6p/SltFgP3qOrVYZE+BXULTOSvevDXNLSsAIP0q+D4NKfyfWLcVBObkjQTFIn9B+Z4Ji5fnSQc3WEL3LGdDjC74AVoVpzXEWyz5UsG5FrE2hU+AuqCDwAZ/XmrhFpo36k/X2m4ikwcFfzBR+C9gggklHJCEo+aG6RCDyBfwkaWx6UXUV+YxRXAWmT2rNwvyOE9QF4W/Xq2ypqxX6GYQYNz35LTPr64HuDC6IFESdDy5qho+zLob9OMr3fbnO+7ksDntyc5ruP/k", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MMw4eEsRn1vkAZpVcreuEtRbl2uimrd9bHuXfRykFCM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ixUQxGiR/CngqCrZHr954MjsvpxGe/BGSY7xfXwvzaicIJSQud7FcTlpTMQ276Rt6spyqefqOkezIAgLpf4MjUeKO2IPZe4ibRyurGP7TolyFBQ8KJIHvFsHWelxqcTeoX+os1GoXNn2Mt9QWR9XutXlr/9pP80JIcIk4RgwqKW+Tph8JWepU/axq60DCJMNOydpC0wJfBZm+x2iT0RZmhULW7Z1ECmJTnNRMQDP2O21duAOVjyASoMzXvCwMTG6oMjoN1i5SdHKVeLy8/7JyEcvS+jXK3kLYtM0Yqjpjs315bM54mDoYa9KRHDw/+ceiQVKmIOb1xZ8JK/i1PUjdcaBrYBdj5Q7ApIGT4GzsAxnYIrmFQhYyj+zLjjtYJs2G/UGUQJoZWNCUVH2CHZfhSKXvo5SE2rg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MNEjO/GZb/15qS8NMO+TneDYnAvdx78aKgOrx+4hJgU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "54Puy8ceV9b/7GLLI63V/ZiA/YWjPAYoccYOvWJBndNALlEsCgP3pJYk/nramuxkqNC3gRhh1QykTVK3IUe0HOyuMTTR2JqndnLTAmPaPzaSymdDp3D2vrzobe/Yko8vPrCSZDI/JVXYWAo3FwC27Zsr6dTxtULHscZBnWa79ebVK86jh26RvLKUucLlczMVajS673lXI7BRDJzTeC4V19RVWQKQ1UGKMNpSdMIgZlOVYMeTi2yax2qcJKn/w4CgzrpoUFZWYq8Mhw6xuJIz5z350L0YicsA/RZL6u+Pkzsz0mrgFew9NhHfJM2+doYj62RkmSDi+K7S57P1rO0wBFaUknkaT84ZgOcEaLtgFIdTm5cLRih78A+6tPWo6bjTOZZNb/XIKLXfHEueYPWPzrcg6m6zrQEQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MP0unDmECGX1e8g+F4ow3zjnZnnaReeeglLH2D48VBk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m7HU6w6R4yYvXtuA6fVcWngf812U2B4EFkPVzA461f+rOXhxv+Cjfm/vaaY9CPYxOTYSQyQY+HkOyHDga9CbTooxsUKciSVb/gDWQWCLejbwtQZUi4V0TKf6EzMubAbiPjCnG9AYELIewiOyaVbf25IHKEJdwAgn9eOmcqL9DsodYf7mNdUJ/iNL6wzwlTJxly/2fntvDI7UTOnaZAWxNiB0b9DZ7svNKPC7ogABLFjFUkC+L5hXzICQX8IAZ7J4s2lliyjBKota5B+Uk/HCCdLTUYcFbnnKVpp2aTZ+taJ1TN3nLmg4Es6c25OU89FmS3/ThPKy2yrWYOUmPy9o6CMAGIQgC1YAWIGWYcngXH7msv0dCl+nWaT9MkDKCtXPd1K/r0RaFosB3HaW46OwH7mU1p2xM2EW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MSYh7EmgZduGAmZlHSGDRo64X4GBMs7B+a7hz5qQhoI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "386JEsvJ4UoXRZOtWfAMP1zQszugFBZWDcx1VinFd5iipamBB/AdwEsGLprawhfKC8Gl2kbHFqApzGiMQU9uduRwSjRIp/KH1fXDMiR88sblXb+yhNtKjlcArewhvRko7lJM9fDS5QuCz3GcOeSkQhVJvwmJgBXfCgN3a8tn4qQbuBHonm/ANqWX6pLayTy4jn1KMDudzeuFqFaRglyB3hsvxNlWRz6sWWb6hF2pe3gN7kld4GXPLe1sMGaoKpE1I8UNZeETeR/r/8uzUruf0RRCq4upmqLJqSwW884PJyd6QlG6eRgG5/ID2ouRUyaK2GpJV6VqDAikTpI7PY0cNmP3we3h+fRMStQFc1kMxp8tubsNuyg8Hitk0/henf7Jtew7evkyhng9zsNrIhotEdGgsb/xMual", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MSzrL8I0vlhtjkAfkUUZoF5c7R6wqmCMwbwM+ggxELI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r5oddrXtY6SSDhOEpMEntQIxgsBgxohrasp0LQzg/v0lP5M5ZRojaDtpA2dV0LAyEeYfTyzYjbRcOvM0VrMCFlkTPSmBpeUs3XVOkjRt5MsGG4vuU2UoOzJKpkFZ+AceG78zX0MH1EpciMo7ypPifZ2N6wussj8aqG8fMRTTXKicI756bnOWzOTI65qqAnIMjfDNDciUbuFckR3RK3oA80a1xYmwwbPvChMZ1mK8e7fzHaTGtT7DNHrdmOSVpDu3D3cgUriJIHzMlHvohQqBtX6sF/jnXeZANj+O9zZKqYPFT0TUmb7NEnUv3IiVzwA03YiqMeC1DUmehLKweue+X5sJ0K0QGnbuhn5g794pDaMZfYjTwBpkXqyr+vqEI/+NMGBfdIJ0+7KG8Z+oVTUGbGhP3lMOgyr6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MWWHYHIFnGAliegByrScrfCk7dr7uz76tosVIFXm6js", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Umt2DAcLjLEbkwetuujlIxVZ3v06Bgu0RMmCJ7DjmUxsyA2aeFEsMVgxO1tbzSvKGTl2giJyl0I4zizcEkgqD8U2etKvWexaM2sXjqJ1hgo2C3y3lJ+j01o6PHIfNeZuaXgfPI0C//6Qbg42gdwD0hGPVd6U3lqbPRfpGyMbGg1N7zn9mhSOyq8JIRihHzZnH9mKUR5GGreq7N4gW93uMqNlUchv5qPy6nDBuG4mDUL6V+4sH/Fn3+9N3UDpe2/G8yXAd5+VPcRulJ7xUIyErC/XErNRlD5pTwopqsRwIqVaLtPCZ2vk+w6U8U/BEOyu6ER7TDuNgfICZ2zJLRmM1TCUb0Fw09RawymnoW/gNegDm7YbvC+qCkPsWxR68VpvbEx85uPdfz9h9zZnXt+1dyAkSGM7Fy39", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MWaC4IxRgTSwvtz2WtoLgoO7RGn7G6iFOsOLlI9qO/E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Vt24c7qSQLUHxesqh1WwhXCY0ljHChVp7ZUo8/+ffO5ZDuZH3yadp0wVHD9qMMxgCjKK+dcTCpmAOwzO4UVipZ6GDvVCg7DOUw9JS5lMUfLpUUFbmcXs8FO8YT7oh86HcUuTorwLFiQ1O0OAyPjMqwzvMPSW+uMqTtopitfNFqgymnpXoatJvkeIgoGra1DQ7YupXrezBTXYyFRmKtLh04hQscNu97v0Rk6a/vjBez8pdY5Xw+N/J9sC49IWg5nv9DIWpKPGmzPl/PBEbsavucPekn3xcrhVtYgRCxggeCY8ngo3vBtHh6X9yODujL8uGhQKKFHHYdouA0ZQs4K7MNc+A33ZZJhbUmpkliNTBcuv5nnAIgTHdkzzBnPfI2fWh1WnsxIpAp1Q2Nm+W4vg27Tcx6OzmQHy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MYgxf6yJmGTZxYwULyWnx8/k358WXQncrYUIL0g+bk8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F3hutoTke5sJKxouFkI3GpYhkL7GO3XU3sjij8LnG3Q7xtihmQjcU+BxtlWG9REQDj5cNugU+Mx4FDjkzDuD5mDVQD/HSJH4vyZDxig2q9pNi81SGlki1N5ErofCZxd9ieyS1E0QIQr2G1BJxRxD/AtQVEjFuTNuyXkJzCAKQ3Ajo7WMHi22dHQ4qY33xig20VzYJvC4gWNW5e1lalZ05OcS2lOZHS2svXbxjj8cszKzv9tUiHcZoYEz2UFtoUOlYjx2EVxnMGwoFom1H++4cyvFN3xWJ8QzV4Y3tEGsNMu0k4NohmD6Mwyt3MguxlN4I7tVFCzvQN2pTmIoOyyAn2sV0PwfSU8L+MqK/HzGWJK0Wv9quGQH5UpEZKdVawZFGGTifuzXNhEO9RtySzf9GWTyUztmOsdt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MYrdC3RMOzJFIu670+i06HvAoFiMvW4GXhG2VmHmh3U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "14blUyTp2jLw2gFUveJexNF+2ZuBBh6q3tGv7SLFYIUlHhcxaCtYtOxJyc+nG64RNLM5NhxuRAX43rRpJefyhaHINP65S3jcijbi0pgB1R4aA/+ePN/IcdKttSrwg7FZW4hISafij+FseTTTTBUpKlcc9pnlmoCLORf+qsJ6Wl39bwiGv0WQgKRFOAj9yTiOfQ8bY6gnO/Spg/kg/twia6qSO4GrP4spKirKVJ4ld2oRzJ+boRQJKtpUppGu7H31NFCYdrAMWtr/NAV0kzgI9GGzaCEyCLKIOH5xJKDe+tozcu9mkxO3oXvvc76R/BWPAaKLwy1rCsk05J7jEKyDe6hI74US1paa8cPCjpwbJ/AAxZiNwZEvPeBd3AxkUj6fSof6f5cnM8v0bWOUJkYp2V4Hof3fHG9a", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MZK26lz0b2pxuiRaAJ703Wlk+iBOAJlKljoV4t0RN5I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CSTn/7xDCPM4wgyNQmvD3n4RELRL8AU47mVSN9W6Mvc/gTny7j8AJIzYCzD1PcVDX8jNcBoH5FHnMqu2kVJz1db2VQ85Jw/P2judwCC926pj57WDvftuRWrBzJs2SzvEz2Smxs7exo1fBroFuuK5aRz7kkX7jvOyFMRdVuu/ma5yFfJ5fzjaSHveGlpm03+fRWDI0T3TMnV48+En4XtsRMMXv27oOhQCoZUm9854SPcQuDzxmxQKmRri7kcTWdamzi2tdiscQrVyglfF2BZYyMbY6NYEIm2l042aV4F/baXK0JWp4+RKQH1lr+erSr90ov2a9sonutcnLvISpHxRPBPu3LCv7iWX1k/KcbAwdoBfUIPAfbAqlLbOCj5foyzHBbqQECOuea2zjevDDtAVcm0vd0Bm+kvE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MZqhyW+ULoFpaUS04B3gcyIMs/PP/QEqiOUk7Uc8Nvw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wYkMi3o/TDKtvjJ/QprbEV2sXcCZ5uG9UlAmZKvJ/pgmNE+S8h+WBwWmmm1jSO91QDtjLqmHe/l5coQQqjBNoDTqW5wTxbLc1zn19iBnx8HrsJnYZVt51tEd0AQ7kk9pEghe1FmysqEUStUJleuf7/DbDn7vdTfRDi3KUV8yibAZIXeUXLPctKzmoj7yEsqdCu1T9R4WUr0WMY3wNQ3dvtokuZgLi3kNCQEZA7kviMkcaiaR4/gJ9+mPqKt/0J3U/bW7oVNHucH8w64BLdIJGzyhtOr/HxC6TAaKxC3Qp5h2bgnrdOM2RbmOqpaUP0BFGJVfOIBplvwBs4a5p9P9AZcbaYmRiyoFPGjsZU22KLxCuvbGWcKhLKvznregKORFGd4WU3DArR8K6LtXOAv8g6qG8K503OAb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MZvtansevMLC/912GUm5EZswxGd65r2XsWdZOrTi3hM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iEygRyPQUEA2H0eanQrBmcu2/IXw3/9R7O7dnetrWiSyY1cifeJaUMBcfC1LHbDx4HBOn4Ixem9TURpaOCdnk+26Fq6K03ahtvcynuqSGCQ1e/2t2tfDfCz6Y2g7EdIKpX9U770wc0WgXnLFMOpPOOVpiGW4zSe2GyDPyvcLDfffMSsFkbYL/K34AwPQt5Hyq+X+q+56Mb5DehHvdfOyjHJmvQJMJgHHkxKG7VhCNfjmfFvwxos9EM3BQbErWeNcbLrwAt8QoE4ThBgz8oK0DEDvocPDIEgwZRL3mhDHy/Y9TM4q44X5rWI63jXdYHHDUW1O24rwOa2gYvhpXgRK2Pe+B2+WwCm6LunsYj+6e49ewOClXyTR8JXPFca3otca1HjG2TaUQVwLZBv3qeotkBm/CcNvNOLH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MaaxU2Ms9QJ6vtbEWKwlLlhmM8j+ZCzgcnskwIFHwYM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jBNbdRi2joexmAI00rjkDph0brVz3d3AktnYt0IwxBtVUGh2YHyhTTPPWRKimLmRsM8DXiUCqRRnJPa3lSFWnMKLmXr3c1ELAzolehIjRuT1AV5S9A3Ms4814EGZYdnIrHfFEmPuAQdPyyCX/u8jF/6ioHhUVs4NnKkYYMSjSjSYQYblAvWzKaGCxyUNB4wyULJ3eSmXDiYIvwMj5Thk9NtqKCqWfhdZYbJ8+QBNO4MkjxCnvwYNzjYF4kToweTVT+ZEcRC93ppShuoZODMk/1jfj+ta7P0UBue8jqKVS1AIu6xQ+E5JJ90Z84adJ4ALhXMTOQUmasotIV71l3513MRjiI+gKMtktBOeaChbB4iFk/ODrtQVw9+FE7eKyE9XkcYHIKSP29ybSXHiWGbnDbvAejeadL1F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MayX/RNIykTtUYDEaqcAHOSdVVYvxr6jTDaw2lbMuM0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9noGa0IqcQbb02+xgw1shJ8UCREoJbhZGHTd+ZJi4SB/mjGUBhUiGBH+cCpHIUF+4tzZOQH+EbfrHg7WfRpXp1bZmmESmz8wpR3aaXZFSnEkoYBomEmTOol9KqtxwiwIdw6jbQAVDMmhrvjvNHvYzFBYlUuWRT6jyRnmRqp8t/mMbTfwVR5uC5v4jfOSld5DLraad3V9On91O5a+hY0VvOKktFGR5Cf1p4V2QMWb9Xfw6AXBBZqTFlZdTpdXgyMwjIjuRciry2jER+7RyZbP4QyRTVojaK2Wn2M+SNq0VSwrPGHeIgxYoZdI+OasCZefdoJEEbKGVEZmJ3dRrtFeraNzkiQ+IIE9VBU2tAhILGASfHZv5mNhhxk5cVhHjcNI1qCwdr6k5A33C8P+dV1cgjcDhL2izYY/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MbX8k1TN3HOVP/fPBQ8L5IanTreset6riSX1Vn9d0YU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/4oj8GUwMZ6kNU88IRqw2gsBobXn7fBvC0KzPks9KddjdOeNDrhksjtL2szAJ3XaGGtfEgIaGf7eVw+nuQPNATDbQ3fdaVP+HvTcBG83VhRO4RVPdU/4RnqrrOQi9lQYOf+4BJq5BLZ91481lsHtIeN2l5/LP7sZ/HR4OZll6ZQN7GGls6I4MgKC0NSM4O4zx8ahhZDyw/Mf+OLGZJk3GYU/SkrBoVON27gb5U1p3QuCoqIMNGYlclfOCDGRtXvjsiCkcYdzlZInjbaWfKg152Is3fq8wF+5+JNCDmJWssz88stM3tTvYBnswNG7X3snMJXxra9+VvMD+zJ1ShFle5LUUZPp07YI2sBL7rQh4Wvq7Q58tz0r1wuxIkjKqFgAKPIFZ3cSOdxS3Y74nt741fNyBTVl1/cO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MdQG2ofUVUNJcbSTifXlqfw3oMqNx2RHhzB2+cpTCeU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uYBqnKvPYje8UJoW8fBqWQsUHPjirKWyjEISn7wpM8BOHWEAmaWGUi12gxQKc6dDtuOrV4GgLGqnubYRY7EgW4A331oWZdMH8+fmjfLPIE63H/nEbaTo/cGDtzFBfQAc7T+3zihUmilGVDRet9bu38VprGi2m2N+IXwp8Spbif2Ocbu1i/mhwqYZEUNWAVNqSCBv3zZhB2c3mYZfqQLiRqTBQfZd1AyULk92gxlgDDDp79GIr1Di/PKj6gS0lQfpYnDo/PRs8HV85oipdZJgiDIYF7EKnJkGbCO05ZyVYcAq5gaa0d1mfJFEYkMvu/VXjZwcxTGx0A9qy4bGl5gxrom6gCa/TSc7aHV2+9S6otDnkhKCpB4ubZhH5iWwduyHl1dieg2ov6hd2C6398wJY1DwkNV6uICE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Mf3lfY2xyLRh2fzOc3RQQi0KWsk30xf5UEM1RqCeGeA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gMlwkIwJWs4O392HormBbwGySpyw1ieLqyFQFQakwA7OGtjeefeWfbI0FkSHICDmIg6ahUe8ljs6MgOH2WHnncn+EAjps4ZiHQggAaJj8PWElmtZcZDDxd2ECc2u2j0fZWYtFMZnPn/X3JgAdPeKGA4Q9bZxdrBEsokawVXEgARlUw1N44Vea2gsrO3qLGrF+6YXhlTnhZdtDJM1EIcfkVYtY8AZqyTjWfNZ2QSXFUfceKL/1x62y2tFe0a03IvW0VHAfJWmTqpY7PlAWa7Xyk+R/HAPOZoQx4TovD9gcz9MeYGddC1IBY08/ReuOAuISe2DqcKONa1cMzazzWOkZPn0FIk7xN2yM25asex/eoR5Yh8uVzf2y+BfvaWWLSW4To2QfprwmEbW5KoUfPXyutWN/ROlnVOM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Mg14ZwT8AA2xIzp+b65tASu4/ycN7kEOxzfBIQcBbEk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/mKsvOaFZPa1jPBLvYAhhBgsqc/4PnAiWq7wJA069JyofZj8vMn0yRgBz1WNyOfaGzscIfimnijVG+7N29SbmYG/7PWMInJ34ect4q212Uo1yqLktr0CitNIToohOY/7pfEdo0GUD8RS6JBGHlQnf7Js+yKv9qqsZ+4DDdZBChgasV3gGpfIwZZ7alWC7L6L8rwpITSdoMG0bFecTp4S08ZeQoHGv+KUQAhFETBwSm60Y691YBBCzleAUs8J4ibMd/DvffsCnHWOQegavQDNHT0yh/nJWfI+ijKs1G1TgeQvEq59YrS3WNRwFviC24Ts0UmadfpRRVEQ9hPff+xy9HJyoeIzCuJ3wrJ9RdHpu3f1k8X0yBlLl9tZCvZ+bxZ5Y8gCHAxxq0yxiU6rJCf6ztyyl7PQ1hoy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MgLkji+y8mofaAfXHW3O6qvl4jnLapLTMyJq05QXclw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KOVo/1s6r1T/G6WPSGCpivkYI32xF2oJvXKraGd9UhFjuGj9ggxaDkiLMaWYXyyPu2T5ehbk/L5MrxBh0OqA0oCwO+3+YMUydTAuUUDOeklbz3/uy66FU6MrrbPIQLxb2UQJ9OEnPnYLonF4BgSelPIUpsYiY0n62Hq0LEOWCcZx1f9GlEY6M02Fy3Amdvz1MqjUUkHT/NSGVotvTzqzFQMto7JZrZnv9/HYmvsJH7o7HSxZzGuSm62pAfq0e+BBLNTy3323lS1mbfwC6h3jVYiDoGx1X6dyPq1lu+bx83j9MJvZYsR0/Nzzuy0p1OqUlHGp6IFH3A+rFllSwZ5HUqFeF9f9occ+q8eeTKWpNok9YWV6Cx9NCF/wS6bwfm55JK9YdIqvHjq4GQQAhKNDVprZ9Y4Z6Kyx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MhkLDoHoblWMAbSbSPWC6yrRA+++RGb3zxZMb8ujjMg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+rspfni9mQwSRW8LVBrC2rY5yAj0heukMpUtIM9eRrJ7pIkGisjrj9v4lJVRRPcwa8EyWvwcYkU3qPuFQv5QmsaJjybfMxfdPfMx9MQGpMj3pSqF5B3uC26hhU9mZwuasn2wh6aHigB/2TlJU2mrS6reokC22Zjld42xWKu2MNAJHe8tdzYHdZjjuCxApj7nMtGIBEHE3Rdwt07jKkIsWYGpjjAlCXrhAOIyXM3e07gy+ptWjIWwtHYb6UdQJSPG86J/ngfUgg3vuLqOqq9m75A5u7n7Dnapu6/13mGfjSsDMt/tbSreVnafjTxXWQTreDp8ONcyUvX9wzd8ozndwE44+71PFQM+dHkQGZXmkL2kNmS880aFGH6kg2kn+XxQKU9rERRDKRHoXbiDF8q5r7Q1WYIqzqQy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MhmViy7ykJqGjGt5QVjeN4xnek5RacYlmVLcr9VHWD4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LjyBYUfydShS4x8ZBLEu2GYCpVPM53aA7T8QRfSyRIvWBhw4mN+ZedQJ4jn773TEL7to62quswduqUihdJKbj6EpGDse/sGNFAiF3TXQOvV1BPMCiHvbGDSJhjVZCblhgfl6f8fmrfPFuX3AJ0k4ZtB+5DXEiTQ/ZFIJfrqQdqMj6fKNYGBgVIRP4HaqvZDxpOTp5KxDVFlAYq8Gk+DT+hHBy5VChrMzZGZneGd/1obtwMr1fIgMp4StB/RIss267xnPpx9Y0EFtBXfgkTmCN9Jug8229+4Y3DNF1+zog4epqr85JVayeB13hQqNlCMyXdxJdz+TVK9+7Tx5g8OsHLk8JA2wOFiPQUqJcT5xgNqsh1FVeWEZlJ4xROce+tG+D9G7ZKasotgYncTEo48rzfiPDvZRioSN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Mi/asCHs851rBrbcHXBg8U5JV5VRSkTjrfeJwH2GRLc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZqfNPbI9oXBEWKEr98q5uCLsfNgpfkEYjPEf23YPh6IEwRIz+o9C27N0WgvL4YE5qqImYVM6602StvQikeDC5PT6vjwJihTZyJ2DBRSBXmYSX3xymZqoD0kjiYlDvdOBufADVaGCKdnTetQklFVwona2FdQLAmHmqo+UfmCMb2DJ0v+bLIMtMT6uKN7rRsT1gslfv4ewaANFvv4kiAJfJfDPNKSd1Fh55OhSsMM1IL2Id67yyHA3ddmdmjJf730LE+mbffO9OPqZrLoHPmBh4kSIWNDTFmlti1T9TC4tWa+WwebECU8DAr4cSq7wtKvelQS9bmYKh681LPvOU9Tp7d2oYC/3SUoqJ/SHi7o1q3RaBqFm96yQNyeLTOR2o5cPmubWuNDG0npIQZffcUFMkTkXS8ic70Ps", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MirRDt5py2+h2X+VHZKEjieqyYtTXFkplaEpotXfaHI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bke/D9OMaBJqmczWqrPOabesoOUDthK6ExHUqkyucfmuYpR6DsXRwv8yJG6CI6t2oCecrrf6PpZAb2sMhwuAWtOkdNLxCOf4WiBrWHV72DfiiOk+0f9U5ML/EVoZPsArGlgBgi3HUPjp90aTpV9xaD/aCbG3/o0JAccBviEbYuhYvrsW7s3y7vDOSuVmukAfGtfk241I2NJGtwuUujyJPoIfE0DJp3d6AzGhY6Yf3q4xTsMZjpeVW1cxUyOgE1I2uIMEi1xmhr3W0TcKknxcyDxcYQAQYft0UXWaqt8dTM5kt0rJcR9xS+F+wDOh2Yltk2W6Z2ew1tb+8H4wR07iF+OpXwXciaVh8J84+Tsm30Gm4fFdQ9f9S1Ni/74mSeGL/bSwtZ0G0eL4BMigKxztw733LpjsDRNs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MjBFaxdEexRzyFfvtrtcaWYsm7UBoRmsDETSUEbQ6/c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Xs3pUz9dWQDRBr6DilUKAOvjpYyFXHJTEq8bKKauvilvq/5AGROW4sw8EaTxnGNxvFOkXeT46Pwq5gtVJXl8aOYq4joudVkIZ8XzMqp7UB250gyaW/nRqIgj3rxCRSue1UYnMPMWyfFUvReRQjPKoD3hWzHy9D6ErbHMOzX0OHWlIstTpYwnBtCcuj28JQtJ5rLnuYf/UmjHm82DSQ4E3ouFPsTRWRr71/Kvr2kHKH2oY6RkjxunqzJtl1znEUZtBURvehgSoZw/tRFEzfKHliyKeVFVJkKxD7gJODNTNDBIt7vKpyEHS9DnYgcbe059l1JPVe5FBmseRmZj9+K6+4CPN+eFxhTEpXDlgaDKZhdyuWg9j1sCNP02mVfgHMe7Kj4ruCnet3ziMgWBono1HNaTAlbRHYbj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MjHvs9V80co/AyO9DYchqj2mlYnutSxupU0icefKdj8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "upMo9XMKK9uiAkYvw5Xeb9cqu2aQAzQ54QU5JDE465Igys8dFjN6XPGEiDhS330WdWTEPP5nxBg1Y3ozy1yELbdZcMH/2S8KG8gY7xc091dbiGTUnFrBH62GZCgqHuZzj/XVL5WUfzObvkTSinLzLTowwxvrypU/DvwtEqi1RQixGwWaxpuByihAm0C0GkjO/VoFe91oHSGQuANjntLLJb4gDrf1dHfg/7h0FSQZbpeJiqnnJ5OWf1/+qBtmsB3sIFNnyIPNNgaS/2BqN5NQ1u82+JP1pn8a7TLzD46tGC40e6rCJtwhUdEqLofJiXBlJS6uYfheKUBwEon7vLwVM/pZ4JfdDmL4cUf6ovb7clhW36wj03TNbNUUGIagxxd7mB4pTz7noGCZaNvFcfBffbluNd+m8Jys", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MjQhCN0Evt/JoYwY9qjGqojm9PqsVZ7ARp+CAKPMyT8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uASCKVJpO7rEW0+WU/FtMJlgxi2UDJYliSeUYT08jKbfpt/9vTHgdUMxzOwhwd97wuXnhKcsykjuuVF34B6oTzoUtKjxNJRX/NCYbPgcQfmYSmEjIHPkNm7mBBAsPMGmXiNSnDPsp8goXlcL+H3ZR/yr2ImIwGNGeJKvK7C8WS34PnykZC1huO0Gzewx8U2/Yn4AcJtJg54kkPrjoQWozm03BSO14x/2Cn4lYolIBuMRyOCxcB/nH6FJ9thKK7mFMXxpdcJCiSfD4s4XKFRg1IoLi7FsmTENS3CNu6pwDwpiF9CganxNmtlHw2glOy+9Un5Hajlc0nRa54kMWLJhcImq1Vv7xku+6zqbq15m43ejymwq0f4QemdrP4+ySUnZmHh9b6BBJrSqb5O+mkCijPurJ6HoB3Zi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MjctXJQTg/tvyKG+92BQ0dXgOqI78TLtb3uef+25ukY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P6xFE++ehDeM7sUczMqEpWfEQR9OF9zHB149N4fDUcKyQwQkhrlxGdoxFLcPbXhk5IgZdRekvSJNZEs72rlh7n7mXweRlejC1xGEuAsCicCtkCa4Umt6oHIiaOnBtCWOFUthpJZQ+3eb8xQoEkj4hVZ/zku5kg6NuQjGLMlhCJiE4ycxyz23Ti69WHm2bwkdMU9n6MfNIb0JltJA59muLrxVXMk9FTwlKdhI+FPyyb+1nYuOZjt2Y73wspje8IEQR7GLxzNc4xnOyTvh95ioY37gEiptUOgnbEblk5RVtm/hSYiWP3T4XM04ViyZlQJX2moxxNTUOevdp06DTJWGod/1bZOGBYt4FoyLtgQC62/dRcZRNRCzVh9mSBRL3YxTU6qhccyS6v2Ti8nxrwS3uF9q06AF/CCI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Mjsn/2LSjClXMspbATlhcP6KBzOxIcuEXbvq6/n8paw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aA0K5JG3Vve/QoChQVB1dveq1bxzEoWjuGov9Cwxb374qvxSot5g43wyALhd7YFUEQNVfR0tZA2QfvCHOfgYSPTGG/gaQD4GoxHFEfAjQUu2qtfoGPikYOftKx2Q1LDW52Vael1TKRByyE+zqXkxQIRSmNbAj7JOrYu6Pu6L2zi+c60o5R/HAFm7s4h7hi/zx8Ul9IADPnWN97t72yVMSPU7DMWqOgTuqrkLt+F0lkiZY4AXyxRtqyr+XXndbSR4TNSuqVWTeVIz66ntEj70Q0+3e3XlXzLuiatQXgK/p0p7MnoHKvbhoCWfMjIgemm0tNJOh9B72YsROQBH2I+OIT9bLLsjXPDfOo2UX6rE6fj1eNcvXYee9IL31DuyP1QV5N9yiNKpAuk35JaIULlnZVkaayVyKMvp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Mkk8EUqgmfuGjLb6vnGOyWmYhy1TdyT8moe3teB2LnY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dirfzvjgw2bMjoXd/tV612qHjcoT+JKJXU+VQTfhXS1Z2z+YtAxSYmbrTE6zeulccWi9iXHUesiHYoYqi1jsHdIFuiUj18g20NGJ9RoLwb3TS16YtG3N/9RaMxXImjehCk2Vo6eGXadqABjocgt30lRR93jQrtFBHripQS2xpqlxK/Yreu4Lqh/V/S8HSxJLDZKOMZgHkbpxUKWU2sVOlx5GgEgXfFLIrFsJph9xCfesdkvgXQCCtZXwOx9vvfxlabWvYM97M7HLkkcDcmRtpldDW1nkJqPjwerywHcR8u9kr/So99lUBUlvNukCQwJuTR4GYHlWwYLfJQXuoV0CGWgu9m/7LVrreHbtuCph7H0HCCa5EjPinyOU9lHzRWaM34r4ABD1uyZiPWDcIiArFAgZ7ZGawJmH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MnF8mL96Ik1ZoQSN3PK0Mm7NkgspiYT+4FofBxbLrCg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B6G+8ISod0DUp3tbrRTaOdSpc5k19iFZQPADQxSYrdbkJYQ3iyUt118cjmBHQ6hYSKSGKixZ5K8T4Zy8A1PhsutvjDDM3XPh1QBUfvPXfQEc4VdsMemwlCu4J14ag2mDUkIKXsSKU7hhQ2GoV9TZ79NNGcj5RQm4hOxXnwBZ5xcTVhIvaJB0t3XVqz+A0x4wmLIP+05s/w0Vneqm8fTS4vrSKb3KrgLP6/mMuuKLDkt0KXjXNJFO40sCrO3fS5RUKXlVQ5yokmGWcNfKcG996xWnQ1k1uKryG5V6iXquHY0z7PKE/FO8Wc8b7FihwnRkVGBeqO3sFxXEAEHSIDaMyvPV4xn4N3PkfCocQfekS27qb4f75fHq2GwuMLe1D5aUEWTxMA2qTtVlpkBdwlh88ROtMEwsUGG+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Mnt0dQ7gj+WB7Zuj3tnN0Fdjp2HqbrY7nHJXuTdWlq8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EkXMoBuPX6iT2slY85m5rhNFVs/cncuCuDgujmzMNpWgrI9iT8n1vZvLF7A/bD1BtYldGQTwSADBIePyjseeaGNx0VXq0jJhxARZ3tSGV26xNs5jxb1EPt0dr1waFEmvOeWNpps8QZNeugh2sEaIDWD9PG+sARdeaUMyRmlkV8nLv5v+Kl5vgbQWf5uqYq/cRN1wSPeLhFk+8GPyKjeYak7dV8x+ZcFH8bv9MUN+qThXXpGUS2WzzhSfYy4WvnVn83SNxj2KMskNAnsozPJE+0kh9EYZqeF13yVEofMVYDmZTsYW1d+gkXTSAVVghfAdMWmdaMmJE5IebVeZHuZWA3QfG5SmHxQLZSPmRXC6g2ET0ft5VsX8hqXEwgUi/Iu0Lv/TNcu7ybOtM5PhVo86VhprkTBPdpRA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MoFMLeH8KyP2Tg/0LV2S+ZH5e+o22owc0JPaJ3ybS6s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "82vvbUz7DgdU+VU2H8S0IkRAgFFafhcatspCwvDIh/qRJRzUOUS1tfJrLeC+2bmebdqOrGuC0CZ8Ktn79dPnMKD5HLw+P/TuRvfalwM3MmNlgu6MhFdwuUnlV/HKscRKBJlYmZONkV+z4LXWjb01IU+mN0p+9Z647maK1kgL8c8Y1c/PpNG3n700b2Bia0/W0uobzsW3Yqz9xj9yF+3fnM4/7CL9O3UGOU9AzR/UAKEvdcmyS9iEevbQVd/W1TTKJDGyGx9JKOcA5VCj+4kfj6YqFVP7+7WVSxWycbVoNmyr5GtkqSGscok8gJDHLPYyMcUUI9Q+bbQ+HIdztp+ArWbXdXx6bxjCWRv6meXfVYRl7GqpGEdgmxrsNBkL+FovmYlHdiyFk1O3nHQbxNImC0pxnSYrgibT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Mp2oOp4V/lfeRzHGzRUkYJ3g9jGqsKJSrz1MREfyK0E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KKy5NXtonJwOiDbmXLdqBdFgqpTIbp7ViE92n9VgcxNSyT7bvfkaY2dp38UYyllVobJlTQ829T4aeeGlUm4VZQJ8tDNuHKWjQaOjLuC23CxKPWgdqZWHl4LjChO6RbcvhSKF1HX1rmpwvKC6UUfX6AUxOni8ndIkBtqWOZK4GbAZ3cVWF7nF/romTjBX7f0RfwpG3OUxsjLkR7F+hXDo3DbN4v+n7q1AjqMU9yES4lpNUOgXp4/Twv8IlWeuqFOrBBvdCt9SWJw2OWxwolSHNJ/dYD8DomEwl1lQAFk6LuVspZRgYmGSMiSDueiE7WQbDnoRpURE2fV4r4lOxLh4DSJt5qgrMa7j4IDhOXqm3lqDn2979xBqUfNeDUZFRmn9NcGTyGyiXJM8WXcAKMhvayEqnUXIy5Iy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MpWD/3wQJByKdBXQotRpHkrUpNgCB+ZmFt4Flu8liQA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hBjMepdSMmemmoq673bP6xwKElA0km/QYX5rLcb5s8SkNyMjfqg7hbsgoSQhCsK9pf6my/bVfXVUmkajCyPcEOgWWBl/8hfXdW5KtEvyDXTEmtdbF/yWzg7xMmPCaCUI2/wNbclULgqgdIiAvC+X79+veLKymic7GLy5n3ypjeC5MGgoQF3wOkiFUFFX5dRB/GwOg/TVJEyUk9W4jtjG0d0UHlVEgezjXqLzyRMlXJJ7xr3oona+3F57dnBF+1TsomuB1H8w42WkaLTc63GL142bwgOXwC74KFcP+KA+XlKBowQh0q09qRM3nJXOt/tgHevhaYCpkAlmh1jbyUPCM6fpRzgBxiLdZcvk1Q7aKF19RN77ndj54b5hT/oT1OgLKaRX1JUZPNBeXT3X79u1beHhwHslHvDC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Mtetd1v0EqCosWk9dp8Hb9bZEE4yx43iqJVlRqSm5lo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kBgMtGiuL+xA4or485dmCnaCPoXB0mbSfHVKJMe0PQg96cbKl1GZR9AiG0UR+hU4sgEocQLrTpvO+R+RimrTBAoPxPKkFhrBdK+VEiRnW+2XovxRo6Gfr1EcKlEjGs5PRPKX47KHEk8ppAIB9OMpoFC5Dke8XNkDmld7oVasiTrDiPcl6xM8YHR3+h0+fUWmy+QzeBlAejUrrk5ES37L6OFD62PBC8F3trnzDnSWDjsXWZ2KzqeqUBCwofqB3rUvslJMKvUixQPR/tyCwUUb96FMfqEDhRqc9t3yOdoMx0NjTlwHgJOUREFeRMvAk7P9bTB4TvxvMrknskgfDOWWpAy8Jfbakxe9sXSNH0bR33fpm8KJhBFLmWiHktY+6ViAY0/5ll7gPgiv9kcoh8TDh+m1/W/ziLB3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Mtndgu+SJsL2Gd0FWPv7g57eYbG6uVhO/k46gRaNnLI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zEDGuVELNRVzZSqe6os7jCSbTqisL01i5f/bEneF71gJGpIFu5qP4qVbYx3Pof3TVTMa/dem2PSaM63yZ6lJMFl7b1N29bhTyIhVZVz+8Uvq1f2V6dXHJ3UVPZAk+D4J9r/m++8dhiHRQJMXgMvnbmRZgfpbEtvQ6VKEEVn8oJiJ7X8/GoyjYZPr++cMD+ERcOmIxZHEVx+D0y5qb3q78Suup9VqRBmhgGHNPG9ih0ZrRPmNiNKwZA4Gk8ikCxNYtWSD+8l8McMcHLKZc+NPepFlxuVK6MXKc4DYzYLq+SogPF9ugEcCPKUxfXO0o4m9EwPmSbyHwaaQFhKb+PuIubGYNIh2rBRyaBYUbH4pzl3pdN8B2sn7tDznUlx5Bi9xWr0RrV5veaAsWMaBrQU3Otk0FPntyY0Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Mug819pObxU/AVSfwqJR8nvLJQdxl5cmdrlYpGTwwDs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vN8roo09wrWT1ig+TCd6ATWi0oRwGBf77kNYxsDAnZUbEy7QTmLWhXVbzxyoFf4pBA6ouzqe80j/H8CjECoFlFH3wsiiWY834IGRKwR6MaNltu6QJU+gKT2QFYgHyZz/YJHwXh+uaVcJLhTDlam01P6wdpvCimFSIWi/VXrFBJmVYF+lh0TEZwEPrQqLJVg/pWfs9Ab0ijQB/ttyMaj/alqSxYpAkx/iH0NkCRJCjWj2yvLYtNc2p9W8hfmfl6Y6jV1gtHR2pjPdHLVXEcfBIi9iC5Xf/lsavSsIkXTBOtnmIxbj22FnLwf2tfhwR6gMMAfdebS3OZp03dO2N7Mhs6Xh1GNJfm7kpkRsbl/ikwlFASx0lNI0q1CbPur2d4fC4V6rSkkhYRdnoPGEUQJzolDVf39vIXD7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Mw6+K/N3ZaxZiReAlVrYFyVXDsO40BsqGh5i2IwB4IA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2X/AagdXK7ofPmhZzmDrumP/MUjXzC4xevRe64h6D5+4iSMO41it1Bb4PupOIEhmAQNfiBG1Q9RfwcYO8qnan3ir2lkczQc1d52PDTy1BwUF+C0WJVrHPfw60dk59hvslTFQgrAQbQAeORHmPhQs1Ftv9udf9Fil7+lsgNJuC6NZgtHdmJ3PgfHTYqTno+GRnp3KFTQJ5sahyvNnH57cQ3TAQYj/qc5sALAA5iD8jKxQIymmRkNaHBayTf8pplnR3Ek6eLXygm0zJJx65bxvNWIAp0uloYAScw4aGT9cI+3hQcVKqWxPEgvc7KipPGTyb7dksONZcf6ASewz0DArizQnu15KWOFegijL0cRpPX/4bvAwmDD0U5ru9OArXhFDRu3QhsXjpXMRHeA8IT9T+wMSgBL5bsVP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MwZ5qlamF1w+Yw7xjVZmMjerzxyzeV30xxApBLQ30hg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B9UyWcyW6qcPHpvMagGrciaTBH+aTYMHWE6yP2HfO5Q2g9fJG88ZSXK4nz/vCt2hem06YpTc6yQREePlVg3OIcAH8B8Z7G3GM/ha6tAaMPUdWyoCLlnR4GRdOmz6pvjmfIgWu9MVVKB+u0Zlef587Ng1T0vleMs/fcIGaQhglYpKK9gkufUT/3yO23Va5Rgxyjvyo/wDdBw+sxoQw+mlCSfb67ydgam1WYZSUs+ppiyghnmTh/3kWepd9c262nF+w945bEa28DDjaQbY01M2g42aKoVJ2gctKLEwuP/xsO6lnCiTEhtfxGy+9+yaUU6KxSklACVCcyc4RxC9xj68/jWfKz4VldPAGXqRAq5huXyqRkPmCi3eIr7E+eg6YXaOpSAd8aN2dO57LW5HT26Y/8Hd49S1w7Wd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MwzRIkREBuYq+qtKkxSPlSlnCN4otlGJ79c6EdXvKCk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ofg2CIP9znEk7RbiqZ2yLAcDhfZjrjBERMSDuNNqBeNXRqWlud5hMW/WLs07gd6kio6QCyObshJ5KhMbSxZgL9zzX7su/Bic6QgKRClPLIL8s1vTkiGscP2ukGVR7c2QO/hzrDozPKCWiCBbtMH8Z2SiKpAzXmS0XeSeHJPf9/NGV6uQJRHkCfuHovjAZGgu/fWlgEh0y3vYyj8asoKn4ild8k+gXTCeKd7TdIIE+IoZa1wQZLGIzPZb2Z9wC0LGQnqo5kx7R3ZBL5tI5KO3UgfvaSs+DHnkotIYmjA//l/lYkGU9Q/OqJKZxJgiXy4PUuWWq562a1BP1hrFUzb2PRHuG5Txy+Ku2kxwG0jvIwTV+wk0Z3OKR4/njS26HO6zHqNFCJ/032Nydc+9FbImrNPncMrgFzZz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MxTV6SJUMLoaj+Nq9YQkTW8Kqkzqsyt4EOXjquH+B4k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JZcZlIMpMRcuk5uO8GZ5aok0fvU8YsZKnP+CwMV4ylqnExx+fTTR+quFkIgNFTSN2z543M1UvvrrhQQFi9JlgzKItt9puo4tkAXakLfVW+vfioaDZY8i1b/RSCiBD/zrAUJ2BmyOOK8TnR0lLc+IUIGPKyacUs5riXCWs/WDFypjkIUxtCHT9GTZXUe9hkZ3sQHCz77vK332WiGqzGgiUOBFiTuP8WEpBBMbv0I1HhvlgrIL1Qgwa1lj9imqzUgaqhwh1yNhhOwCzyk7Hq7uTKAyQrFp3hqX0NjYYL/+W/XguTn8UV0WG2hBYVpRVVaTep7sn7fsWI9wAk5SWI3r9QZloao/rDlHEenIkQubb+wkguTKDBbf4oTZqKlqj8KTRBc9AFIQRUqz/2upAfn6qVDajP31ANg3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "MxtHbMJPgZgIcM3eJwVP1SCzXd+fMFL0ik3y70EN+us", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qUYE+cq7lPTjNbt9qg4Z2uslFySH1Dsftm1L3uFOr47IdhY6L3G6GAr7d0lT4Aa1bLlsNvj9LlTA1cV9XKKDVz8rW6MR0xaONxYCGzKPK/Iz7GItfR41fXnZPJOdbJNsCCeHPHbh7CjxN7fikRGNinh0Ea386xRdulDz+f4CZruxji80mFV0axbHqFJ2ymnGfdOHMuXLHhr61XiVh9YOVlrfMh9RK3lo75+BIH8j/RoJLs2xQrVORiJNPYwfAaiRh+N7nZgKs8E+B5ANl5cBUfgVSMnmOVlfqe/RJAkIQYRQLWVJG/37HG9cN921BpFVE72Mm/RocXINJuTgqNiBxqx060DW6/nt8etWx+SKm6TKnSk+91KZdEAXm5pMe/awCdZs9Tbn9WWyX5BNvPcP4tBgVeqDvB/n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "N+Bvt8sd5RuZ3VsFysNyEAIabh4r2cOnTV5JLwWt08M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BIyAZImyb7rzvYaE4pogX5CW/c0nmkntgVSZYJBNukvJi9iOE8UQPUq2hPxNE+hoq7pG1bIycOxa0m3ZOwqCpTq15D3VfnFsu09vPOcpLfOXxIKEvxFSe+oz3BYZYWf9u7yN2eSKwyJS/yfoVavvrTf8SAMU+k3ErPTikjax8u7fiuPm5REHj9KYlCNGguo5RJPGQMWdvt5DL86WcGhNCKyCCcW4Ad/JCrdM6aQv6UYRB6DFQnYU3eoKfrXRmOLsah0wlnEUxqc5ML0p68QLDG24KChSZ54lCwsz4jgQIAxeiWVHdxM0ZfLgqIydMYbBlDnLgBLRe0GjAQ3EKdwiIpg3/1jPSa1XmNVISRhESK8FFDatFUhpSuHlWacLF0Zvv81Ph74Pxb4w3TRZ9LdBm1Lsg09TAQ/H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "N+K3tzPUdL6VQdN0lQozIxAR2V2V7r7j34BRGWx9mVk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MQ3wOpohNIyk3IwQHtvSkxVa9hqmnJjdvtSGQjojCk1GZBgdF/FrZuphz4AHRq45AWgQelvfeg/b/Pw1r3dSa060k1Bu+RQ6xuSioYXMW/YEn678AFvQgS6yzRc+BbncNHoXB2KwDfQmBcdhz9d0jEABi2AUv+aDOWovU83uWFSRmklL9IoUl3z/en8xClTclkOmb/H+sRSJAQXNutRFkA4GFKHv7voaXJdy1LnrLDYYb4drFggdb7J2y2azyqndlM3x7d2M5Yycpfx2NQ9F/fKi+xxEJ9wd+aDnHb88Vs0FLBqYLSx4ibyd+pxAgYy97N9RIeN1TiWovJgomQ/EeLptLUC0L67uwFn1mWIq/ioBkVi5+YHn90x8+pDnXRRVGgZwhybtEv+dlCdtHJEmYh/njcAvGZVm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "N/YcjKHmG5Anj5gV3+kWJ7LbkdoxtfnbisTzY6wuWHQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "owmaeZnp+xFgSpoDdawh+D82GGGlZxA9B152+cR1y5L4pSsfXeEt94jnT7t9EFd7Dxy5SRIz6LPMKnLFYM23aNoir4YqtRuls1Hi1NA91AFQB3mg5ovY5AVCDF+5nDAFbc/dflK9kzxoPL5896K0YuEwlD8g9+lBAQVNZ2JeG0U98KfoE8qzloB5uvjnXkH9sdEfsucVTip8nR3TKzK4Kui5U7zMXGcqQvCtph/c34gX+BVp7lXna9aTVVSIhQjbjzhUI2Z/uQOhyGLiQ3Mr08iFaVIZGoJxNDHUOmXL9vw/Zd0f80aT3w40LRUcAByQfNUCHDPr4vNxoU7QltJkJ+PZm8E76HW71nvBePYWcdfX+UBOq6MabnhQSygfUtek5DYOMVHqboMVKPDHBk3nQoqsb+mNs0Ph", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "N0PvkaREhLDPl30ZijV3f5EFHN6uMYd9XLNwWJLXjtU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eDulxWZMC2s4dO65dwvEEEdMfxpySfqoqprlDGZjh5BXyGRLHcgCEy6FpB91Qw4qb8TqX8k2FYYJXvFBWCGOBLsS7HVdoGFb+5Njv8OlNybdKwVMaExHkxOJQW7At0EnJ279jgr3rBljQKM89OXkZ69Ob8hKsvLm2QxZ3D1dSmcRSM18cr0NtsMVUXhYkt/5+d2s/uNF9l4l4vGtKHF/1DGcbFZVkRxtlNyPKrz2MDjFdhwfjjEil966eFXoLX84tRvBuk526voaP4vsMeQx4vBl4oc0A1q1jqo1ZiaZ4ojpBpEG4ZxDgsm2TjlDyso31VqOqj9YIOfqwa422BRBwfTpOSZdQStgOcPC27d8j1hw6RJ/jPW5UA024mRLRH8Y1X2TcZqeFh4ur2w+C+tdxujE2igk3F6+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "N12xqWVKXbHyeZWVfXrgXN0buq783+ovz7IDcZh6T0s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nCfEt7FLpChSuumUVvgNfE56I60Gy1OXtwj10YEI3RJ66912hMRDJHjBULDOnpt5oJkBE2kucznWMAY1YzoEhYrqZfufobRmSR146aotHPuBzLxHOeTSvxLpvJ/dF2ZaXM3/rq9JKnrf+mjlx/GgxOHmdKUQYCds8hpbLIr1C6VQhGRWEF6hiKS0xTyLfDYTbQp9eaFaWS+BHaUUiCBuf5fHbg2wRSofTb/STkeNiBdv8uRb0knJmqKfRT/vm5eTFrJCyllETGaEcOevm5KGbPSNnc/ebUwGa2FX/jNn0wROy0rJeBQcBKe/yGlPpTBkYaEJNL3+hNpQ1Dv1rf5/zVqVq2x/8HIA8lwdh0N9laOPLZWwqdovndOhyPsDiaPs+bcI6vuBFgVHKfV4ToFXqGJHGR17llnX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "N15f0QhnBuHb0/MoZ6m/C3xsWZT4HwyeWzc8aSp3ARI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WVHYImfIDQ4WbnFMBtr1Z4a1rCyrRTp9tfbV/7/QjuwbBzH2Hc57DlxqzcTE4KwoO3DOkOQcmnlHhPJclwnEBYMeMWct6y8p/LI0hEj9nenZjWKEHK1d5q87izCeGYlMxXD+GFIZ/B7OsyIxtB+S7lXKFb73fyPj+20jGf6kFPQLWOwJ83Z/7o6ld4JXD1afL1RR9ITq++CO3VG3KnGJLlsA5WskCS5uHC/H3on1R6SNd12L/v+40Hjwnb1P9cAWVkiIzjAU0i2v2O1W5z0x4W2sOH7rfQIMWgaUApZZipry/9wyuWE82rtPCU09xy1jUOmO4B0sP7mafiQOPfhMZaKhgAal0TMQYnzqDpiutv5BIQbkRag5XipmVblqUPZZRinvccH9H9BF63TRY33HOJjx/u1lvM9Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "N4BTu7AA5yGH/mFlRg25McjPP3D5FQG6JwCawG8FnuI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m6yMeK9EoEnfDMXF/y6tK3HePF9seM/gmz7nLV4EuM8x/37CMv1MBX4Ks1zAQr3dd0dRUkCiwMLu6SAd5HglfRZ6/ocRMotxYuJoxfkhuYdLJR47qXgp48V1q/DxtWOvAddVnXugsPKrgSSMQ9Y0AcGDJEFyYMMNClGMWYzlkxDyT60Cbawf+qmQAnZomEUhaVoq2v9xIkxrVjMvv2xtsqMR2I4LutM/xVWk8pZM4Lj9/GxNGV1pyMs/sM+Z6Pqz2ceQYh1PMIDW1QuZSt6PxZsY2W3Lj7NEmuTl8LRlopfFMD2oOCst6iAl6fCtndL6ZduA3Lx0IOKY527Wdlp7sFstSnrRHke8delGCSjtJVgM70P/xc/MoNPDIV96rrTxQbRsV71wQPN1ovYW2FZSUsnUJKvkiTVb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "N5JLc7Hzhe/CqVOPSUZiXJMu3/k5m5Q3W3E+Sb8wvzs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KH2PzMCOcYBpha60zgVOG6I000SA5mxWmu2FjGOj8TAvyDetcSNNKuAxXE2op+f4OeAAjABmUpStCYVwnfrThn7aimm/8AocDi26Cndr8RcNG5jOMyPSuUoYtJUfkgvBFKtwBxKZAMfMuk4Xd1cWjlWC770rZk0L8NQ5sAhkV9S3gzCz3yKCtMl1WBfXOtnHtho8aVG5AjdNCO/Tbgpo4K6MzYs3dry3UT/Wk04P6P6EKL2SyQP2WF2HyZmgsLGY2KXQ6nwVOa0QQGtXhya8YYIz7B+HtNHlxjtslvpQO1LaXyfrENtz9F2BGVxZOjDBCV5Up9TSyr81Ym+3O/WXrpJhqtDOMV+Nw1sPWznsfoQTMHuI/YC/mQl+A+mtmXU0kGxGQ8QJ+A3GGYeInpmNGvKY/0tMHYIy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "N7mV9q6D7vVLF5esWJMxf7W+ZFCqHqm8BHGeEK5dcso", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HrXDMmThYj+qgtPs8kzyLZ9kBrhaKe7hYq+uxt5qneFFpWC5dkNJAd7jwvIMXQERBUNYl+G5N2xSFVFLUSYdKkjJ4NUUV36D1P9nTLHMks6xRW7X/VMG3ffrZnHkaLJoqGg3UOFVtl0s+9blgGfs4M/Rt/MHzYpVLygAJnxUhznyBu1jUi+eO21Yb9om+8J/EFMkvw9l9jwO8b7fe4biGVe08uEbAbDbnO3qGUS6k82oToIPBsC7/aX5+OTrNW60RU5Ms1YB0IP4UPeqh0fbo/nBYreRcHMVVF1NxnMmtP7pl1ZYqrg0o4mVAYvemruCcfYQ+LCPdA4eX8uTZYptNkHSnlls8DCrquBFa2b6xqzvi6AHgw7zXBBij89UJefYrRHpUCLin6ORdMItPNXLN/IdKkgthHRC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "N9sRTOxuYxUbFf2X+oJwGVgTVk9jz/ISsrCzwUGYE/I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Lv5o7OlPrpG+tH/8CW/LDmOCxzkV173d9B1Njs9gj5PmSZasDFiK/tJvXAimqN64BZpMBSXjEUla6uDE1WfO1B+yOj5Ak3Vjde9SQyRwi4ISIRAcg4w+l+1elkj8Bp452D9q7fehhZr7ha8JTnrrhazI+PlKeSpgHF3TbwnwR864XjiK14AQssSIT/n/rKcPnBEFqa8jt+bSemF4LeOF6KVFb2wPRnQIkU3g/84865bhtgGTUkVVnXLdbO+gItequYLfMqw2tOO7TIEu2PMY3SNHQhHY24f/f4RILT8E5HMDOrIJU2XPdmPeuRnWRqnpgFcFo5qeyv/nko77e0U7KXc+0KoHBjVElyj7h7/LVjZSZzyy6iAzao84LTiezLUxm2IhOasr36K6tQBjnLJljMtc05ZiS61t", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NA1ojmjEiq3TsIIA3wOuofytycz9QdC2rcrrIt7SUs8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mz/kAAI+7W3Hmwox/nHsoc3wSryORxuJtWUx5tQaRfSGpjy82zOPKPeEeDVPyx27pfVBzSEW04t5rnbV1UIyD0b2RnretPf60zO67ZovgxSBcghzKg4rJ0XxOgengl8dVDZckePVAHcC0MUIb1T7nYwiI+zOxlIfiQay5LyasUaw6R2dmgHmkBKwKoETbIuBiC0ogx03EP/I/oY7rR0UDoASpRigaLpfQQQ/48OHB1wWgJtJmoJSN/bBrhy+Kn5BrYE9IVIFc1p5JPLYoXYyEKEftLokR6uDTr/SpxSSjbv9+nCNR57EdWkhkuxf1TYnySPh2uDUJ1YTTCDEm6swi2XZnd9CUsxiU2tQxaeXUL0oFlDAUHqP9J3qoRQVxX2yv+tNHdfuf9d/1MEXQ0M6hc8KuOHd0HIY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NBTjk+u3YC37rcHIc4r4opKBqaO4KWP+kVE7/gutgO8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lISBu+ecShg71Dr0TiRs5JCnXI+3immof8Q5qdaqKQIp2NNA47QemLbdCpl5zD21gJF+Uf55fozsh9ZtZGSIu7PLQA8sjSCeV4fbuY6+//IfRbwH1xOzJiMALPE3IcFykWww87QnxI9r8DkmMEgFlQp5Gqh2Ip7PRlLhPx//2N4T2GXnQYElpZ6M/B4AEH3PiHbE3YPxs/0bYVTcNbJlBZw6momN5D2wXW8Hht3C31E3WRuvpPhuQ/4L0h3uTwtk9T/DGTbsABQ+BbKcWw/vdBIwR6TjRN7NezbrSaO+VJKDFWJqVDd6DFqL7PhX6JAtbzh4OyEYV53MD2A80Itt25nTTiT89vLn5j6+VWaOcjRdJC/hJMqLwok+d6PPFHC0KyZFouAyjpeXnUU4SYag93r1/uqOeTVb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NCkHe3ONBLj+QMs1hxg3xHlZ6GFjrFsLm7HnY+c+vg8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vXQxgWHSKoV9E2rHMngn7Jv8Nerg4XleXNfaf2RYZu4oqXMmuJRPmnfcZSBYPB3AbzukDf+1VPaqXnAc+bxu+Cie4LR51Vdmutfm7hoOq2We5dNp0Zm/DRntTESJPu2mM01py6aF3nYMpky8xyaJCrr/0pDeDjijT4oku1ORJZSI3uI15yolJ1eU9seoerHhYrGLTa0+OOD1dAR6PYll6Teim7wieEw21IqKvJIexDK53rslmbc75/QMN7PAHiGMJQKxt318bafGZqdFEc4/UZ9xZnIz+92ote25v3IiKGgZ6VeoSws/qeXMPImy9AcKpAjv5x4fIreLCaAgD7gVIfrBCJTN6DxZDFo5RDvkvFGyVEtJNojbpV2kwe/QrRqbVpAXdBFdVdbAmyCzSbjAYWPZfpEux7ZF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NDROV11QwqS7rpRtje/VPYVUbi4ToO8lCeXhK6f3zgw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TGPlI8hZALkEJGGc4lzveS1wycaRCfuypmNCZuFdNYFbv62oUGPsMFIWC9In6xnRw0I+aq1fTXmWqMgJEX4jBv1dwym3esPLMwd7NU05n39lGfeCIpa1XymbctPdEQQBZfteQQAldFe7Be13aM7LbMQj7w3mRUMC4x4hWJTdwgQTXzvZ1ZtbNGlhJ2zYCu09sAWiexCUPgCS6siBy5lG3q/TxQ4eJ3IRGyEv0+DWevYowmokcLoBDgeo2D0Q+xq6lLlKMaTzxP5b/f+W8M543DwWZHSaEQB6qyICflRnw+pQZHwaenDS56TUNWNqvAhbytVfPSawnpWHfefclzxSACMQyJeF3d2nWgRQOr2j1vZ2doQ0nfcGQcuf1xu827icQNp+8DDmzC0ybdHtC/bq90QKBVveuQ3y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NFqXmfE7E9LxbrPDvoel2RH66K7qgrHbOkjZ9tewb2k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qmh9L46cs622bxY+b6uWrtlhLtGY9sF9/2Vp0P9kuPrLa4WNoBY3bMCUcte2nCJzDQ8RDTmoKwFJRTweJN3eMPzQv7zCIeyUuMp40cS0RusYNBo8c/v1C4jEcATwRQkvOsnbulTj4UUfj3iEF7Eg4/V4ilmNirNCRRemK+wZMhsfbGgK767UDVjBvwS8iXgDEPGtyl7vFexy4icRIdPs+YUyoenQFWoTYUY//HpCYuLt2tI3FVEOGAi+f3qWHi+5Qto9k/48du4pCgt66Lw6R+jkFaKamp39g/mAZIzaIBJjA92imO/D7P3959n+tW1McNEQQOTgBId6wHdlFc6GXejXn87fuobLesYT+DkBTRWmtGEcRHlmHNxjVRoyGrFC7/SthHTNDtgql+JiVB0Et4Jojq6/6Zef", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NIH1KTdT/y4oAr43r2SciltSHslYUQuKNvRzxHFUHJU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d4QoE6O7PNxhV9HwOQMT7hr8AyV8cDciIzzrSVh+q+ZDwiPG5YIVKNONm+H21qFHhe54+IwSt40UwFeltX+K/NnDZQssHMk0cDzhP+cexneTFfxr744Tkvcu73J80M5iISfhGRQQp3F4Y10la4oW4U6aLgDyLK7/YMrISWeMwPmr4jv1IaaGObBYR4hVK1AcDzdVsQV1iMCooWoOYSHmO21nVZvay02TdLBPhCNrPC4aV6Ar2vHGTmO9JvGK0iv2MTdL5Q85dUgt8EWCqgzDUsKWNESu6t2fDGIxec5Uew6vG4EU8ANUXHzHV8hmA20AQqTUciBwnCsgjmurtHE3GEag/csqA20d0m8tm/wSqHFD8tudp0FE37KsAOtreK9rj76V84lCq4jA79Aq8YXWG5VlqrRjTiws", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NJeei6T65nz5sLfNF/WkpK0u93pKX0X7A5TgVZ8wvow", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yVT8aR6Ko0gyrwPYuxWCBBW81acTUbWGFpDW1YEREnRri1Z5Xr5Fi36O30V6BzXgBjoOMV652dWhgnSKp//cyOiOdciGyKlfZLcppOQt8AT4OjTHwEmuRi4fVWgZdPooL9NAVftgHKBvSCZzZEsUhIPX5awuOLuS9BiH5lrhVMm0bx7LEDV1VRz/gW8+EevVtzVGC+gbA/qWF1T5T0BwMrFrFr7djvvaRgsk3Z1GsXcgeeR+LyvTGM2txDK9vObioTJDXXv2aKxI8qUn44d31jRA33/aPKfTRi0mQRLeURVxorkFEIbYGbfC9JvWU7sjumLep2vjtpffmeSJ0s/Dx2dlHdlpSRkbrZCcTMbLfXmAV10Xg2N55aI8JBLkQ0Qe/jR7GAzvSTUYEX3oRb2zg2m921yEJXlS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NKC1idoyC4kIRq48yJnVD/DC0CO2BOzjX5BSMiCohCM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q6sWXNWLT4Et1+AZaaIi0sz3cl8ORMxyFljNG0JFT6dTidh0meONB4IZaQNAFu4M9/dAEH8XmUkUp2VygvmenTDudi5uClI3rmlqcSFbOlVo99newRc/d5/smlFnnoMzR21IMo7AVW8tuV2k/DghdzSjy1zQj6D8wiDZDlnAdT6hym77GdfK2DZZ9xbyqTxAL5pJ8pzC8cCMmXp2MCbKohS2X+RziaRdVOaFA+u+0MlteJn8nFZQBkgbj1o4aATM/aFkCBhkJTSea700Le6zIUPzhb3YaTNTS6sYA2RNqDOoV9oWGLrlLdAmOQm7ScFGcQ77ZbdOAyOXdPBxdBhK4RTI4vHDJJBI0BTnwOGmZRWq5cDjMKRpaPbQIcVweyrGFCSV3qpMbOBojE6YmPrVutkOAz/gWdBt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NL3lm9Fucm/J4iPayHDJIPA5OwuixSAXJf1GjpsYyeg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cgrJj12AsW1LYmiCcD1rmF75JFp3Cg1ZqdMehdKKC15MFOsKfmPc09vEQlOybA+kZgG16A45Pyx6b101b123gSSxYLlewxOrulxR4psSoo6Mxg8OtcJ7Pv3zZmQXbcbLog1cwEFlj6ysmLWqPOM7qBISECsV23p0ju7TLXn2BD77rlAT/1fHDKOrZPw3LtZOL7y0j2qTDAtRHFu7MSr+K5gBJcyrFaWD1uc6BnNn/ju/cHRvDbU2Bkpobk+K8KpBzC/uPr1dGRIBWhGtx7QVL6cjM8Hod2Gd3+HqHZ5W6nFdyGIejj5tVT+ujdBdCnldln0eGHprVwpRoAwlCDmxGtOkUGkJB/Jq7yN1deQocV0QfgJzywq7DIXEEWK1Cy5IFAwW7wro+eepfSm72iQ0t1tRostFbmDg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NL9p362U1fL5Xg4FftLFPG8oQgA3Nq2eCWijeyODBR4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ScxEfMdIu8sUbV3FA+kNEnB5kgco6Hs+9IkwAE4hHLEukhOtHXzd6k6yaB7TNe6k7SG4EjZSEDJIJDQR/ZRF2K+bG4YY4ebn2uj+vXFgQuLWH5GXvq5JFTuyiVO0G5XluZeamLK3sT3oi91mjbAeTxkxKix7UzBsEswsU9vkC8bLcUXzNd5P4Jyb55oehKeGCHBROZp4uVlBYIdihe3HRNvGFiiE021zDifjC6DSCGFUTjPCVL3HUHgQrYpMNTO1oXgZdhQnaLnB/NnL1Ka+GaWZpKDP5+aWrB+jh+fVdjyHYqtJUyXd3PXlSVunaVEcjnDtTPmsbOhnpBw+Ip6nZ/j6KKDaJU0qzGDpgRSONepW17WjwuI8ipQSgplWVLOBmvcAm8G+i/KZkG4P1ado4a6IElzc5K+y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NLl7skV7bej9QwAn1Eo3RyuygupKrezBskviIdmgRLU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iQB/qiNg2P2qaefiepqfMB1eNtegUBYTeihBhcqajyfUi0dbZUcSC1bHsDN77mAs74ByTFe9J8ML2lNRfE3+6Yd+CYoALkaWV1jyJQIdoYUZw072lRjnTf6d9yRUwrooZucfjvR6Hh5v0rqqifwrr4HTcJOUPWNTyGkd2YI4pivS+oGzS91XJPB2Bn2rHQlPWIz26y4+0elyXjTPMxjmigtKQTZ/pzX9FLlYWBIhVSYXgeBE3FofGHZ8Nxs91TW55j/Bdaxoc+OBOfrGeihNp5kRzsSV7KgyrzSgaVtoib7T7tR7qBKSuiQoDXgs8vuSwEjedM91ZmNKG15PiW0MwgRymsTZqpXpF2PQXxOuHTDvllY7OQMe2ZQtCpp2E/gK1z3fP6YYdCmg5Es8hLKpE9aBTizt/kie", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NMfsAA+/cnb1MtuAi98xghGN+Miv1MZfkJrKpfXa5oY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+EebG3AuCTzXXjqx6gGdspY6sX6rbaHHmjvvJhtxEBwCIqguv25sI1/87pV/jbqgpaQWN7UsTpL+0p/EVPoQFkkjVRIj5yGPxylt1byG9JIlmIFTO4bA+r4B2/LjW8HfVpvvuZ6g0t/L481EMNx6ORxZa7MLGdxsDBB8bHqlZW0eQ9wkZY6NHaYnGQXeC+ob/v4js9UGr2wjMJX7JGOvjO1zj9yJBGfeuYk1HSNOyY2t9llKc9zGBgDXXJKTFRYWhc2Lh1mPg3uNSRneiAPuPpu8r8UH54mGSEuh/1PYOfvN+m/SuyCMXXztwj+9Fepx1Gv9ZRT8/7FjR+azhVio5ChbaEcMyZVPt/tnCuWGmuNWicq3NVgzPlTIO8tk1vFVH8bkBV7ftzmZFII9K3f77/VnxYMQhZOM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NMpW7lBIPz67zl6NFmHzdnqdE2/WGNQsdnDQxsMtBjY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t/zi4NHYOiXvdoQ3TzsbByVXELSsfuWeCIuWO4KjRS652rMjkb6TDnLiyvAxwrMjllIZhnVgxnrigvShMWqci/Nb6k2mQXQNmfvQ4F8KDjkQfBbpavLIbQ1gOgaLr58b0ujOYqMiZd5VeIgzADoXw4J6T3JaeJAkqhvzGn1b8/cAKdIk8qJpsr/t9xIWDFcwdlcITntO4o+9TV1DXxVV8O4ZpYNEhZE97Cm66C/zLYNFYOrhf1rCTJoQdPCu/Ze2xz+xwKG0t+/13YkEKAyJL84gjITe63xJbuhyPh4d5Ohju4T5GLNwTKnh+ziQF+kA9/1jd5LgPg9+py2fF4qNwkBcDQffoMm2esYnptgeUhNqEhcb2P7hcf2ho5kqn8haIK6Z9jH0laTDd3FzcOX4zGQ4WU3mbUNo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NNyZhBiATcOJuZFR9/q4RGzI5IUz72SJ981sz721ThY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sln1zC/KpDSD2P90dHzD9oCWnYn4q6mN4jLOH4RjBqDyd/CDTBr6K8rKPytOGh/E/E+OqG2ZhvwEB5HCq0DudM8NtDRUDhDyWfVW08muV9m95w4T/g+mkTaA0r3L25xbNTPZrDXd8GSGMINb6mEjO7iPJ89KMTzjZUMOdqBfyffjopXXV0CqhR78zrPJ+9EvWgUSJn8+F73R7MUK3/o7Smypda/vu+TRQEo68BhWVyjYfkfrXNApo3v0mU2Xr5NC6yRbWBpxZbsfM5M8mOJ8pu7C1Wn5dV7HeovrGDCZrEe8FPvZY72um2DTRllJjbYpbRfLOR0wmmXM3Tj84nXgtlD2sueiQyvFycaoYaV1IqJm2GVxxRYozAUIWRuYa2kDg+QnETpJQPrQVpqxC7EQblMlgsEx6TdT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NOumQYYkGn7ds2Qh/9VDvGRf9P1K185DIuB/Q1HNq0I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bPGOw+n4IIM3HvOoC+AJF6zJ6haucOUCWjrOz/RvPsB5jMgS7zk9wnDuBA8N0pwdc/NchcZ4sgSAvbHjCcLLRtvfT/omkZXgfPvNBFY5Ucd/sqcT+v0UWKhW6hin9d2FlzCqbSwfD8BTYab3bsw4vmHLFSronKtdUa97LhJSmhhctzJXfN6/NfdX1Foulc1v9DYNL8obnHkGAG2BjUqOyx6/NlOSKyHmHe6ljaDNejggo9dmGSKa0xIup+p2qMEr1R2r862rN3cGOWnv/vCWBks5ilLK08MXOMFUDUvyUAoM7oCucp1T41qbUZM+VzK988fPQP54I+o7B7Qrho/uThJcOEuYrmF5SiASFyv0HgbvYOfc5UqHAgY2ehUQiMGjTRFi5NBSR18q2zRXWYcdWvQlCiiDfxQu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NQdlHp5HaiuAwbjRyAyp/ax/me85PB0wNvzSLUO22xs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9vUzOfJSlDWkxIYu116OHASSoruqDZGTleKIbYA+K0CHe6AP+a1qe5/UqVpAQmolnBkMNlRuAw994AjZwcw8Xmn137MrKGrAuR/YikmntCj8n/a0oXG/u8txPR5+WBNOjbb7HicRVpr/fKGTNVqA/VIcDqHeN8MWU2lNozz8UOod6M6ndgGzG2FwGk6N07/38plPEFzcZ6j6Mcr0haUZS9lXeZZfU0ltPe3H9hNtU9VMDnJYMrZCz2RGsoNIwE+7Eo8PvhjU/nR6s5g8d0tjkKT8sV1gHPCDLxn7ODkINDBjCQ02vbHjSiz7Uh7cBkpx5O9Iwuli00qDB+bqfVdUA5wJkMmDbuQZPOzHy+vgmeQoMGWuzipRHq7JmsB4DQ3DvJt2zaPyS5rQ4bpDBwoT0xaucl8nx8V+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NSdSBHx1Dyf+S4DLqBI1IRdohuHpZH8RRsHNdMWkqLI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "okEbZObqRNpNzpTiqYMfWQWc/loSEgqnOeHvUSKBpPN1lVnbkmSHjkhWHu6SFX/qjcO4knVCs4oLyBatndDUEo6eRst+gtx92xyyaseIJY7g8/0PyioiP70VcZo7AxaVikqAw4yeGQgwNr05hxVuy5su7Y0ehrMqGPJUNV8FivXJArlHB2RY8Z4b0l2mdDbEYNmMcmiJKYrdwv0kQUCrhDFoq/SqNX3qQmffM+rravepMnNoV3fQw1iJ07t/OiNlnR/uzQlsgOwDVxreknl7QU3ah9tZkVcP4hBjnAI7cfAFboctTq//3FxeFyUCxkiV09b5Gg6r/A0I4PMb1OaLRFLBANd8JQsvLEiBzW8PfCp4KS4++xJFB0k87zl5UWdgXzBP8kVEd4PhKUj9a8qhZ0kU+M575rsc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NT7qXiJlNxLFmGtfdaxG6ulQVfjf+p65ZLoFIaimMhc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F6h4LHOOIanzlLSbgtS9O65xvZB4PrD5VFKsdZExs1e8qSEQbnMxXhQwYrnYbbyaOH1R+LZceHVXAAsavQJeA9wgUZHzvN1xElJT2h54bmo+33HICEOW9dZPeMEZAWiJSu2Glxdp3GuYRI1TYoXDMIQb/os+pu/ZrFKa4/cTq76d9uN5mByFCwLhyKvN3jRKl1CxjjOQH9j9BVKx6a+bGQUNnUjSEBN+wf5NAWvrKjtNYxI6NoVKo2DtW8VRfJraemxX1fOqtFsdJaFhZ1AqWG1DatRgA5xUxz1DQ6Mtd4BOdyaBMP/YtmcKPw+rhQML2Ns6jy6oX48xBqWucF2FW9Owee2JMUtvlGnbbZuGlefO/YzFn+gStMmrZ2vtShczmIm5y2m3eAT84uBO7UTFRwZplh46uqCK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NUc0VjByjheWGxqmoNdSpoaUSWnULusKEq/me7KqI24", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3evq0+Jun8VkbVzR7gNiQ2QSOiCinwobnLJWifQeFGs89pyBAWlQ5J7gjvr5U3e3uyHNvUMmRDYY1zJKUUFQtD0Q+YEP5toyYdxT+tI9XtOf1KUmxc4aJLSv5OXEwEOenRQtr9MlxUr1LKElr9C5mHoLn8fzPFae5JqreOaHJ2A0hmSYPLmCD9ZEMTUAkZb6up3FnaUV/LJNKnCAj/mlDDNP0OY47/gvmyu4pzHdClOvZiQnRrZqQUt282ykJVZbUhK0HVawKpbXewmXgDhHaSjDyqGRc2bDuy6bU5191sfHYyzr6/buGRUNZ2Q5un/zfAHXMDv7b5G65ieNqjhWc7uF84/A+0Vhk4UUb8Jqfz5NCBZbJBLh6jPTM6vjV7R8Oc3pOJbUWwq6ZHM3H8DLMs/6rXD23Z5e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NV99dlGikMIlRTTmwxY4LUe19k2gc8vx6zu3kkVmuvc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gwQhCyKIxIWiAkN3i3zNlilxx9IGIjqcwhpz7gEom90QIbU4gVH/ZTO/fxd5Ku62wpONOBMSlNYSGCpEXUpcVDaUmLGO/zWzZKjD1T0UAJhT+n5psbPwGr10WPaBLMa4QmXJWWEj5lCOEGMOHPA7oGC3KMsfSWHllTQzv1P4otcmC75EeVCpZMW67k+02yWK/+nYb85PiDFwmRVd9HYCPRkKChh3AuOGfqOaipZK/SJjmkTYLRMu7dOVdjJkl0dv0sM+kiIAw5mJ6aFP+mjSZXkPrZpMwoZVT3o9O1M6vsefCeFjPIZFkhtzZUSqKkSW82t3jfFQvBHxFDOgRjvL7kqMCI0EV6nLhC4TCiV/AM0uSpBbBVZAEDiRdY5Z+P2wN2u7egXKHcmCWak/MMqVfda7tObnct7U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NVMnWMxv0zN0iD/bJiPnpPoaI2P5BOMsCSGPVwHlMj0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dbE/dJaaRxSzFBnjB2FsqOImTRXOmUzIk6eJs9Xrddd7s9nZuQURtVN8ubv25wW5fx8VTCuZvAmhGiB9RwlbljE0g2jTnDeicXo8MfYBsuZu5foxzIhh56RVCuMrsoxk1bRlPsqBOsP+BWBSBhug/2bpdgO+Ihg8ZEPPIdneX42v2CRjtR1F/2GeHU8FoYcgCYkl3RkAejV692R8SMb23J8h87fisIwciXoDqHZCyUUWxLzxAckeFFzDASau3LBQ4mEioQ/0jnCMhb+/mSq4sCo8xygo0QHLXWpEiiEbkURJCCTK/WXAPsCpNN/xcb76OMIE9K2mcE8fUpLAbwr2Rnt39KG15n3LgG5WqQs+YOE5uvWU1qJjxzUxruXo5MsmCr7xEKBL4KeM1mLfyL8ApIVSbTpkJy6j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NWIFDjkzRs58hAdW9bgk+bl2ILqTIngzS8SbWXuZ8YY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OP9wIe2Cw/sDvghroCLIuSPChdtsodwHuPCmFTQeHxxw3PirSNub1Jig+twaiK42LmJR00eL0D+sgCE2Sv35+rUpZyu8htXU3AIz6sR0W3vAtVVTW7KxyNM6m5ySMsvtJ39isyn8Z9YqbtZi3N6uImWZ//oIWyotO9NpI2XxmEZVQbnRtlpcW313CNeAwTPPrR9PTTgX846YSIUqh5VLYRt/1GUIeFJ4l7oJtEMjfeQPyclqYH8Y9HNT83zbBLvAGX02+ERcC38C469E+WZ4UfElqiJMdyDJfyybTdd7dZF73Depuj0UlEULGYX9AhWMGIvbtf8tqzkeezeLnATvhlzuLpXilGaBl9JUQbKSljx3SuhfTlfwezRf22bRf92/OzUY8rEhCbi3h/qNFtq9kC2tRRKhaRbO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NYkcCeeQE4TOyrh/OQn8Yo3Smy37mkkXZu7/TlrPyLY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GVcEvF3EMoeTITaDVCf19mTBzTxFQuJOc6nYGucC7+lMPfx0a4DnMccnTX09upCM6p7KjYFwHq4NG53RhtN9OJQqBhVAC1xnLbCkwnsWSS5Rz/bsJ/TnSfyzMRhR8NcU8OtgCggF/pPn0Pr5OSIX/JI5IgWmOfw8PtBkVf381tRFOiXR4wMZwZF9T78UZOQSJRNhtQzEVOIY7DOZR/11qtgGTilazGbCsvmyT8nhkS/VBDD5aqBPPZiuMgNMNISQANUWoPVgDRoNkE+08oyC9Lz2+NYWhjAtvXGKCf+u86HEbckOeL7U63wKCqVma0rKa3vgxvPFF9Ta2GroqGDQxogszY08fsUcSUIE2IwfkJfv4Nv3BqI0ZNnjkOAaSx2szSMkJdUOgB3BkZeVTAITnmoweFEkMlyI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Nbz0z6NN++4HtxIoMfsRkoGwHf++qo5DpIMAxC760kg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XY4uZi78E/rT6Yj8YXfOvJo5tN0ZAB1AmtAHz+LnqrOJPXoT7nAi4pE0Fj8bFEpRLZEjDJu67xrjW+ElzTEbhLjs33ft0tn8tZiEzYQBOCs+7kG41McrmjybUfgBDu7siNrIP+wPMmZ1oaXi9N65+hCTftxQ2tGs+gnLaS9uwNFXLqRVjd3AnDIEo5+uIIOX/lS3qzJwDhsyhk8pBv7EDyLraNln09O64yv9pAppJc4vUEfWdbBe4Pp+LsSNW0M72e0mqFj+xNOcDZGbbUHR2C7X++8btjxTaYnf1uzYcC9ptsXaMhtJgWbu4nxYpukmDoBMk3p/WLqdwknFJ51qItAZThWhqygf0q2QQdqnxX6KNS9KIY/aeGwxo70HrHbGwPkUnTE7hkxxqF+qw6EcIJE2PXdkVpMs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Nc0WqPWBiOSOw/tz34U3YAjq+5r3c3qU7BF3t1B6++U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JBapvDfuKYSzf++Wh7aH5Yfd0f4ThMegtmUT75Sx+HeKu4/yzY32DfLfDl/UtmEGAC6Aa+X76fx7BxXxODWFMo5HrptWiodAnus4usXEq3iZGm0LD0McmdzzxJ+ojZliCui8WsUdTKmXOzBtgK0+mysq7FzuaFHVTM5CFl3R0if7W82sehau9a8KlJffqA/y+h4L+BSxq2V4/YPw0IZJ4tyZ/lY+qu8L1zVwkEJ7o/KJ0yBLH28YHsOPOV5g+AUC/HtvnpY+N7XaOajjR2c0LpDq9TA06OpFYHRarNqGKJJUARTLuO1qjZimeM8HqJDZ6yAh3mCw2c70VTMLmGpM6Op42PmH+6D9ZPuq1lUyx3RcFtLxkYKcLWr9V7/H4hEMYV9Zh0vAuPlFKilC0ufkR0dATxi1Uq75", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Nc17GaRwM1y2FQM5osIFyB/pAV6E0OjtdK1F5gdwtdI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AR/qALR3c6lrORv/pdlA49IpdKLxY4zEfJfaFdhBf6EeZy0B7W2ppEIQzmLPCTwtIt9mzhJrFkvXArmszL/xuJQVPpbLgStjvOWksIfvdjDw6GT+jRBJi7WAbnJs72VygxkX3ToIa9nhiRF4+geRh0qd0/oYwuPv1I95Znzuz4nu98GUUxrIhS+M77q8Fu7aSsBKGD1KTNw1ZIgOyVOAU4AqnHbgJptY8mLmHeWOk7lBcEMLGY8XLwdRY4LRqJVDOBaG+V887bVlUZSjtl3G/sWR8mM+upUKTyp3r5NZ9lpH3R85Fo4Hlk0rOkJRUWUmNTQPBH5w09PusDj0EQKlct+PgkNYN8KuCVxJ69VMsNgHhZAmP0Unmo0h8561AkmqI93ppJWpuGvUN3ZLhyBSNTphim98kdwD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NcdozI532lWoUYR0UQUzPfM3EXs87glFG3k1lbHzLqk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aiF2RBuoHRVptyXYd/QpFkHpZ4Pu2N4KmLiy7sQLIT5Mn0RdgBNjT+ZE/9QGXv4LOfruXRF3bq9hCqCSmvqrnWdn0FhWQjz4wU32+QSHLxazRlVS4OHtXRPgeo6iuWmxQmxrPpqpY63vrWtmhF6S+5L4Knj4pT+Dc10atPubhvpmVPDQ9KFr2XW2zEnps4eACPFdopbEuhaXRdgQcNxdvwzjm8NwM8XoK+MosXLfZ0W+aza1DLlEauGW/cZXfil4+FDwKLtooJwe8B2uPgDmjrqSl7wgF7yf3R7vU/UA7LPnnNltIWl1XGLRlurIQ69jnptUvxHDQXyF4olHjGHtLuoEpIvsHXgGllgQ6dtYMZNwbH3rGY8GBAUA0Q/JozFqtn1tbdWEb7BLqjV+wsniffKfR5/lLnu7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NcyywBMsOJk9XAAdmvYAsQM48qFg+ZfydjTcgq9AlY0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OJmQ2DZDgsJddM5NhMgWzMqfLW9+5e4g/KLFT7/jicyIsR1RtxJ/bwKoT3Nj2+ev4i1vFF/gbbM6XjPIfK0XeKFplLezhhY3rGKKoCqk0M0tuYMaGwxR13B8NKFNh2ymQ/jl6gWLvCqJ2WH7MridUBZs9MU1Y9JUWzv4BYoGPf++6ReUcrNMHaQlJTrj/0D5uClE7BLKt2u2xTgoDhvI46+k4VeTCqUiQtMSBVXnbbVfySRGU4Y+qYjXTmIufBET2QA71Bpf59GZaFdzkNSHOi3rgJ8FWeTLPa7rom6wgX8CQuh0EuiCFcL+cqO9cJNUENWcda+jrtaw4T3NsTn1CJUGP/sDUf2di7pw3jGV31lBK8Yb0E2NDaErpvk0DoLMMdP9BNY+Q7t5SX7driGXjMWBvz6XF+gq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NdH9nStBOZAXP8UiZh/4fEQnZaBppN06x7PGGnM1ExY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "437OfioN0NucrAM/DSBYGQK73bSW+k/gr+A5ylYYKwarFoazfyBZXOc7tzXWgTbGxD+Q1h4boZ9AXw1y6dG0+qlM1oyLUqM5bIAr0/4ZDLtdTdQstEICYnQYnzPu1knty9xi1U/1aXAGK7Kzjh1LN+IbUbsodzQmh8VIFb3t3x527nN0/FzrhsEs0BATI44W+OJHnV3zV8EFMGOVP1uS/8sFrmK/vOp6bFT1IdHZbMENr6QKrcVcvoA6jkxDy3kPTyENfGv1XjgRRb2cY2FIxgktoCl7s4kmIDdXqCmJ5lCsRtP/2k0cuUD0eBolxTpvNXI1D2HgnEmIZ4+KH+nvR3zeLxAw+UuW+c8vQY6CSs+Jjua7c10ewczI7TMIl2S27atFwtXI7cCIVxnp4K9cEl5U3fepV5yp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ne9TDszYyhx0ItpWZIg5XFfDPxYLIvJ6Ouw+bAGzovs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N9ep6TNW7/+TcTH7h/MjJpVE9RDo3Jvqb2XciFa1Eis+RR2RnVhNj2SE72sb9UFidNheR51omBpuyV2VJBfaSjwXRzKVmPnZAH72MOTEZfuZe+uI68ji9SJv1Wc56fVbQq0j2RwCE39YZldKaFfZMS8n7SUe3wDWNPvXF2HVU1mUj/NyQDzO/2tOSxP6JTHSNvErMtSt3TvklCASPqvg7qzRRujLeTrdCn+yEQ/DJmCVbSdOoNoB/9bHuSDRBb0+fU2yP2fg9JCHa6hetSXfPxXuh2f1dYzqMPcBtNwA2Q8i0diNpztN8tjgAjMLs5F1FPHGiKwqhbQXObya39VO5JJRDj8hthDwOwr3sfSvg08CHqb77b3j0On9H4Vxjyqq/awkD9FR/6BGegTttnrgsIjIOwz0GQzv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NeIqstM7yn9IwQVpfPJnanjtuHcxH1gy2R6kGXXuABM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ttn52MsdLf+llu0m62NWzI4+Tnx3j1FbuCcyqvWLyRCZiKk+tcWIcToY8/BtdOy121uGkFADsu5mCS3hEE8xM3yQnqwID7RBMOtYr6RJLzWwSETXrwlM3AG5aCqokbttxlp4skGHdqxonWH5mM26RvLNrPKvFn2cNcrF39n0tfMWYOdFBf1QhFrKaA8kbskzdcSLS6ReAyQMHTXeUQmvgQ2+24zZeopfdacqz+bXeW4aIpMgl1aP7vYC/zkQ9hgUyU7piRQFEns7pDaAX4tY5XEg1tfqEGHr5RjCgI1mQNjfBrp4pWZOmZi+RzG86Q6JPPefeH4H1KMpF9ca0VE+3bQMNpkinMfAwe3pNJbBbeh4EvX5SG2zKqt3utaU4fO83MwMhAE8tJReZcD93BYZFDLYo3VoVnxd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ng6uwbaKeWyWC4vr7/3+4s+1RIpm2xiWOibOrLv6RFU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YZGYmSvmjkHevj3fciCUMmExlHyU9oba73U4GOtPcx4rLuAY0Klo6AEiTurPI7vSpWZhKBeRXpLJ34uJGEdf0HMdz/LVl6OpDRhkUs4FckbkzuzFmOcaLzDlXyD9oGnz3A/JM5oE1MG/8BxvYDJlGp2ugko4X+Vv+QtxS5xqnIDJZKa3PNCkgOjTAzCLN19mODxlr755RVs7n2ARqFMxuwVbmeBGS7dIVoYVp6V1Pz3+3MuxFzy59xJKDIQtBTPRxC6Iw5wMfx8uTdiFCsveBSojFVN1KsHgw2eZhJS/pLOXNgs62elpIol/r8AvYJBq4lrqMSoRMtCWmeX2Hx+z9/XHfP2+lLAfLOYSxMIaCGStrnUiU0QjMXOmXhYwkZxf2qqvr3sna+B74zCEt2MaerBQfvCavceE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NhEG3O+s/ezZxdr2wwEdsThmvyB04DkN9eDRVy0htJw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x43441w4oXOY1QFVxGO7inrfSlkbHCde4LhevegwgfXwvi8tMRaswl+9L+IZvipk6AOgMRCHEuavCjIo40BK5KuKC5FSUo47kTjFzoLwKp4h+1LTXFjOJw1gildHIZ4e8Tb9KNfZawqVxyt2fHoCCC2zc9vBspN3IkXp7Esa7GWZRXdnEsgAbxittsBcJJtjyuI0Ba3EqRCPefnDLq2gXFiW8cAC4UEeAFIdOqyi4Kol+v4JsgeLe4pNd6FtYymdKgUON4GsiYnnwjpatti5Soyap5J8e+qja6W+9lRXgjM1ImfM93S01C/nKRiyKW806zK3pF2CoI6mPLgeDr5/vq+eqLfAHZbfI7mVk2QLTy2/m71DokiF0QXrh/7FmgSBeLr2+cxdvqAsbt1WPzV1gwfBoTTDVVDa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NizvZ6B25Eyq8jpw7d8tayoxeATiObHCPMQiVCA2YAU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QDIA26qXoR+FTh0/GruX/DqEYA3zxna/byds7YGEhThx9N6TalxnMthR6b4d6KxecAS+lTT6ZcVJGZBP9kaEbqQzUjea68XG/RQTfo6qPEcyGbJSMNYJURU15b+MpWa1gqzlBFMY2dOVfgFVOWKIWaJsKVu0A0xyAhX8x+7n9RXYcwKtu+Gku054b+6KlhQQM3744NcSSNr8qQqntnhkuTUfOyqd5/ZyBOho0SxnY3KBw+bnmP2YdmH1k6sUf+4L1ofraaz2lfxk4aGOHpyoK2bk4DlV0wltnWnGMrZMaCurC6sVWuGWo+jV0mdYkP/Bo3YRGG3+m2/xgSnkeJ7oKFBfIyYCXKJoHV9tR371qFe1vE6KNefMJ1q0gaSakkEbHmbjMYZBCiZSiWmP1fgLLXn0rD2sk2ur", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Nj9vrbyMvhXVhqjFWjegnY/AKxfZHzecCk+OsGcBeoU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Yzdjd468ICnllrkR16ij85RqXKsbHHw9LdnoWtcGyYvZUxm7pSd/NIqCZCq3n3gO+7P04X4F2nv7aSe7K3FOFUNKsCPGMV8nUgumuvPc1WCOjV/AfERuAyb3vbKLjyEkghaMD9ro6fJW6ckimEA0ZU/D2IZREWSm6H6cRdK7QCcKMpcKaRumBKXNi1QGjWyefykZaqvBaER+7EJfG/v4HIuxnJEW/04Qiq+hw3v6Hv/9w8ojrUw+vEQqT8FYVtMxcHYGvu01oEKVxHxa9mHNJUuQuN94/dHDpUNBzgMGyOu6ExU+mGZknjJi/wA5j4iYkFVPd2tO32mPS7fqy63JKTmOkN089E0m2akIj/BpOC+DzltAFTBPuxf/iB0frzWqoWusqyZ4A+8HIUZbTVgNA45OCifIQ0Dd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NjYOSqUlYT/52oYANbq8GKcKcfiiWkVMcedf0aO0Zb8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VB59BbpRpoJH+BrgCqUPkl8HxE/1EzRf2fpeMdVYf0RlO90L8msvpxFZNua+n4l6I2SNuvE3ZAs+P1t0q2KopKf6zGCmPk+/i/RHjZGMNURIDE6rzQxmFjcdGxyrk8aFOAsd6L/VL5/GDDTX1BtqvLesyzK4JHjhlgcKzLPpsV6pglUljUyJaAiyJTjXJTC9B90jF32rDF783DCCphe4McjloNGOvvXlkaCpkAC008Mu0mCf7fxPprc7Z0wYzUDATaVI/63/uBKGU+TzAM5ucMCiA49gTppMbJjA5pHMy+3vVjJbJhm8jXpggnbSYFUP8AyrpjT4outY2WXBUVQyIAi2FhrUl6URxbxC2ETuJCu8jFxyapei4cTMrbeUeqfXadiMhvrroghXzIlO800sv6gTqEEJWqg4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NkPZZ551NI6GKqW6vxlYkkjcMcAWg2YHTGtWDXBjgxM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m+lzKqZ0G/4eqIZ+R6v9Ye/9+cAnr8Z8oKmrtdMRGEznO2KeucJ9BeGJ2jkpnEJlx4nGBvkW+e95OfmYKxy7DEKvPJ6pPutnlV2CI9WVdJ6O8cXmszO22DdvB/MBRkCdA41xtH+b+D4mbaTofbNxQIelp+4MM89WmByeidZIAZiwt9jlj2sygJzY+83va47/nPlO3JWzeRYLVzgWpLv0PO2S5RAQVsR6srpazT/vEPg344wzWlA9fgUsiYLXCxCIt+vQIDatFbvYCleQuKNoGWs+3w3SJp5lVxmEHiZgwCcbFOgfN57nTeHa6tseWIZ+ZjiXygEqbIuC9ae8GruJHps15WLrmCSRXRT/1Z0X7ifvvDvAf3DuAOvPBtQQ1X9tvq9AmlJw24VbtPp+PGcUPq0OAVcQHYc2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NkkMRf/0p13xrkdZfvo8mZ2+q2xo/RXLvByIbYKHyQo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QxHvLG/nygecHxYXMnq8n9GpjuxYyPOsJ3RaT4n5aPVqTDZ279dOTgCY9+4JxJb3RVMcx66n5WEGDQ0HGpAf7lfo6xiJPoQj9QhMbhrCWdvTrkNRHbeSasHNvcuHRQYkzFXdJELClsW9WkmHNzLttgkcMmSDASogVAuzQrg2bjrYr532v7jOwVXJ2P9ctPH1BWgvhXyclrZiXsdjcYPDOYd0GQ75tr0uX5pcvUcBntF1Mhm7rhmhvopfftxZByt4GxmgLoms4jKFUcF0juy5q4BTv8dQfTyoC2IOH1M95wwp+UAhaIhIgHvwKQuNRlj09WyPZjgewNV7Wyi8p+6C56gI54FZaoF5dDMgrLjJ7zn5F7ZJo7gfynLRX0VxoIIDUEs3MIl6ApDpdWUA0SW9zt2fMw/Dy7lk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NlqcCz/xJtTKKyAQdCCzPCHyJr5djzJlLYbdex2ixhY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ay0NVzn5MOhRHRhJpBxVim+sMz6aXpIeY1Kp62RT2W1Otvm1T8WBP+Nl10ywbHLyLjfIbHzSr6vcE3I1Oethfcl5WKf4Dpfs5r2Y6Qx9pdmC0tO9tVXBzfRMPowOoXHbKuup4YnN6CU+JUlZRzUXvceO3sy/+R30+eNAEQxc1vgz+g4MKSqpKQOaLH6CBdfa2Csy/fCniN/9uSxnskg5jHtaCTxJS9s311uuqykDsdsLehPHz81YqzZYRemAATiOduXaMl9u0a0qFIKSx332jMD2xCGbdJsbR3z5wRtl+7PXxrH+xv25qBpTFHL6uillM5O+BNkbNuN3hZy+gSqjGIy3HokJ4HaLZhVUjj657JLBQdc5a/fOg3/aKZgjQrWGmAyPhXdhdpoTirEGRnrc8wLnhfVBCuDN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Nn3MKwhniv1QAVTFTfQvylHnldu0r3bqLZMMYsv8J8k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4v/S8LAwfRME8T6VK3ocF2Ud/4kE9wSLf0A/uuYbQ5JBtgthyZI2ViBJSZBkyHqQqScxMcxwtrBl46qKONkcGJLsAtT1sKJ7cKjG305zQJErhL5bMf/gVypfwey3ulpA0xPvN96QLgFR62/yNWC/lqGw26/V3gTW6kiNJhFqfLkbrd4oDEA/6XNZviRgiRaL3G0ZhUPVSjBlx78mfq6iQ2VzZkV4XdrdhAl4V47LbkvbOWgBzlnob1d9HK7YAVactH5fJui0D2qvdnfeMYUrGPg6OtJsecSFfS9UOdtzzIA8XMjNMgxDTCV9iWA1DtmFssXK+x4+hnA6f7jIWca6Z/Kbas3SMu4hwEUzSJjUkr2ztwi+akAbocvBIGFGkZnaSmTvcXETRFWFrtLB6vyylJFcfZRQckFr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NnBfAmvu4vYGIYOinXhNIcFSghWt24721AWZxkbWM3g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JV2JlCEmV0CEEWxyzMcyMGwJ0pIjMDw0cTpFqh303epggATabIUalWYTJqheII5IK5mxFZVQBJ0w8kBIRgWw+9Vi06CDO60TMQYS7A68f4okGecAQvQJ26vq1ZrZlIPYE9fE81kFsZxZOIa0nN1hVmsCHq68rdxQl/PGWiYYErq0hQKDGBJoZjknq5Yag3hchdvtOZ3xM5YD8IRguaznu48gALdJ/p5heuLm6vNCoq6Urm2yBh+18r+cDnUtOgxk8VLJGDx2Yno3pQswy7KstKHAJ+iewS2mIxAcDs2MqQRgMzaaMklHfuhNRXMG6IXRmNrLYleHYZY1vA40X4W8CpBwcJVmV9USQBHGd5emxC6PApNyNZ4GyW4hSCiuXGgMoTTgcUO7I2TYnSFsC4OJ9+8tGIOjO3Xr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NnW/bwsA77zO5zPVm0cSURqruPfE1z/SaYd5+wyEhv0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ms1Y8nHPrksPCgXLf7u3xh1Yjay6w2A0374WiF2q+rtVJiFaLcAKoWcY1nJG8AL0XaWcTGkVyaW5rGlMC4ckvJuZt/zZ28yT45MpgUXUx8+7CivESFV7XrxpD2rw025j1rE0D+W6qxWQKHbzWqMPBAryqZWHDsTy9YWUkNWOsvpyV6BkgZwiOkV0Y4gU5EFwD+1vFKzVwNFUx660wlPrcuaaN/RD4FiH5QdRcGcd8vzCpgpK6CiAYqtRSdE2VxuR8ggxx4/IgIvlUcDAQXHGEd3380/e3CGcaELVOQg97XymT7pcoYhimvW+0ZE94UOpa1d8vupojpXa/DuucFUxXcev0lXFK09YXeih6KvWYA9Dxh7P4uYtJAOvMLoqKk9YQ2jGfgIY+Zd6egHxLbL3LR0FibF3YZcl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Nnd7yht4rKx5fb9tyTxwHlMJXNxfhNRctJFAD5rMyMo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eJ+/1cJjEMJMuGYqwz9OPMDmsei/P7oyY1R3HjOyI00kIhjF514isA7WqggIwViAHwBiETZWpiHzF91Yooo+8ef/ehCt7rk5CYPF3lPxvq/FvQJLmA3PUfqDchJXvtxtMoJyKgL9IKA3trhzUXHIDk5zO2vKZs/+gpEgMLLIs4DwJXCckI+CoRgbvkUB49x/HeGZP+GmRzbQYCzf/coBGN4YMK933lIioGjRXzB95uVkJWvwwMzCDamzu1eXErv6VBv4quj7Id6LsY630xSq58BTgzd+XVX1gCGjRE39jqhweAH7rNQBRMrDHhSDKmfQfCb3u/acqpqGAnWk8gb481uW4C6xzsBIrtXNXjN/UnAMQfPM6oqatYEGfXo/sH2y7xpeCz+mvqQ/9KzR86Mz2t07NIl59XcM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NoGv3cIsLmFZnn7tUTIDOp/PRQfJeZzOvvrUSkpP/1U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ft6BiWjsLJeh48/1R0xgcJsixvW0hX0LD8uzNq/gNsD5wKO9BrbLno5q2PaoV15Dq3rZPUoxCa1+4yiVXsDNBP38r4zqIcUI4Gh0pw4tS2rKGNr6aj9olyd6Bj9DTddLNUrCpfGfAo0HpfREL4b4yZdQFiGObCrqP4+kixrVFk9oqn3Orl/56EZz0thUNJQKVJtzS+aEm1GFIZVHWrQpNm30zicHanMdRZFc1TlzgxjFWW1xD5FEgbrxfCatuiqn1BjQ+Zlz8oBEz7HDJBNa99xCqVSy9mwmVyori5rz96i4bovgkwhYN135TvE+wY8++RpHrS2FnqQdg93hg6jwebuHwCfSoHpBrJ+p+33/DMdImb8GCGrJOv6/iIXEevqK0/5tIUgmvlNSRA39Nb6B6c0+/fYj4YNL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NpEFXVb29V4iM5OEDycQUFSuCOS3EVIDmggFVjJh0Jc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+FRMscVNXhFViMu5o5eMR4pb9OftSlAo4/qP48IR3rj5FAFG3O1hFoO7AW8JhHFARZOJj5tnOIaxT/EeRIedKGADkoFa9D+07x3WMHHFrd/LWwpLMYErJd4wLDcuLCHzgCsXYGqIiP119roLJiStqqoZY3JbyNyL2+SnD6w3FpjYM3VQmWLBQUZa8Qx/y2QC5BmBotS/pILrvZrSoWRLTXtbtSKA3/6KwqWeoAMiIxmJyf/czfs5vSJBahWNV71pYMwnUclZNL9opYoUXmBm7g5uJTBlQaoqq4pGg9VSrDGbQ6vXuWhtHBBLHHdr/JSdqtM9LHqzeDJcZR2K0ncK6PqFUiCnIgxn75SALcwhmYMqeuw6mcXlvsjQVpOHPC4qAMMIVxvdi5mGRAYpFk6Dog+fy4bNPdSi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NqK5RBOEqadQp542m4bb4Msf99TqWNMKRY3W4NMcFSc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vhNpVIjE8MPShsrpKSPqjzYk3+w5VPAZ2WsBpRyFfeAVJazuCd0Z9gSTcUztqNx+B9RKnkpnNEQ3KO3UK/1Bw6x6kQaomjGE3wDvS1f4i9xcqg8NKmf17qqfUJIu7TSDfy4739aauppE7tinsaqLTPksEk79+QjDz5SOc07EtHzZxD8P/RyAxF8o4XXSPHkKPP3Z0L3HJueWK+ng/RCRdbFCtJHaHaPc1RKfCzf0iBb/R6vJDUxJvSAAS2gbMWaFJjPNori9ygoa80DsPEa3Lhw/CmP9+P6qvxhxrTfnCA6FCTWeEw1cFHg4KDfn0QiI8dMQTH8L/yxf9O7yVT+tJamFzNfJb693d/IxpAZeZgid+BVBMxbUKI+ZwDz43PHOyF4Bh9XFx2W7oAANTBtLMjyE5oDXGZ6X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NqOJ9w3x2Cyoh3/H+uP2bBruT0b80bXGYZRbCJkoMTM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XU5V+GAOrfd9+Oi6UblbdSMXrzIZqQtxVoCJtlkrk952BaliL2Cp8+e5b9Wlh7yDbIl3LafvI4aHMtyoj01/pNxDzNezrUhii3HBcRVcIyaPsjK0frGnK84WkpoM2k5Ur6KRhYZ48o1aT84BM8548YYy2c3SRslgK098F6AzbViICXQYlPoYEFJ2n09xYHOkDojU8WzlPpIRRrpimzaeOSMdG5ggXdgV6+H/bcIXAWIYs7Rlfwy4kTqYIlg0s5xT5FRD5a53zs9didmCFvLJHz6GgikVbGKHCgyvpQMagEGa28DC19LPl1GDS9dPJGX9OR1I8DDF5cAsBxHOmo+FUNMO+SxxwJ64FcNSGzQtEIZGfRNdTpqONysc6kao/LavX+XwCwLVc4HR5gmoYDJF9i010x5jjgwT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NrP6kdQNy5SiMYj/l5ZxnlNpkwY8uDw4qVfwDD004Qg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lkGK/W4aO+Zwo7E06YhLVPdzuu5C9F032ixgdOqBn/dovU4iDQVUOLIjvpYRRbVZ1+7zJlb5bp5pN5BUuBg7tz7IauPRx+vxRoH86vnQakdnKemim3veInnWpbXTgLpEz3vVXAFienk2Yk0BKFyHLiQl5KUFfru/H3ixKY2m0C2EC0KGsqqjYOFwB49S395fJPT5KUWbzqXWTfG5Fda+KNUE6WzR9c3OwH77Yg1NiXuz4ytM6SLeFomjpEQLOTXqlGIPGlBS9/qwgiQSVl1ndLs+8r243bqH03Yq1/s7L6+TuP8YoshOpurX5t1k9TdJFYWSVK5yZqnN4FVdKR6rOX7vkfNq23eVmO91Y2/SjJ+U83vPvl7/rMUTSGO1UyECxX7q+vT60tAA8SalW8DXTH8jdoP1CICg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NrxIG6VYhb79xSLoz27begogPgj/17jCmUqBbIMPTwg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yVbSN/ykNxOC6/nW1BmWv5pMUZPJq1JQ3sHyq41T8OOg3VZf3k+tzw84JSFmMKG9qXBGlZaN+X97jt6Kx3HloDv6k0VRdR1qVcYjXuTcgrxk7nqxjZO59LHMnjMYIlhKMoa3y3SDipo2dtjN3XAabHaDaOUWUaQo8/vKGNEDJn94gIJRFAVEZgxU+Q/1I84QGGRqrJk1Pdf9QZALLhprQgENwDe6Ej1c+yBca96zGhyOXbzQmaVBaG5QWt1sz4ZD32R7xajrh0zlVdHtKwqiXp+Mj2saboejQDXcUZfLg5vUSFgnrcot16zOOghe2kXdQcSBEpp+OAAXBdDE/VyUdfzDOnQ8tnL+DgT5YJFe1OLXm7d2EyqAiOyQcezs9NwB8+yw4SQ8S2fvLtVl7QVmIzLF4qQa4NRZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NvJ6cI3vE4ykIw3X8Pqj8fIKSjkakBPLH//5s5QfDPM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PvTq70xl9oh7xZmcGkXiXZAURWa99WSuLG/nLox6Np6td1KqoN4jLDC16ILyIx88TM01XYbn2kERhNCojrxKwRV9a5u/o00QImfdL1n2oPk/HVVwyUfVIbELPc7yDyhEu2JrfnpUx4ZK2Hg87wSbhlnzKCpYWgGBQRFTCuWXE+7I4SM9rbYO+XmuymCaGxdbM3w6hwNY33JnIIN8xKa8t35LahDsSB1BC61bsvKYVuAeyWfnn1m463+mvQtgDu9CN7FweLhIguZRyBzcslxj882eUvqcFXenCQlCLHLkuqlJAnzawYaFvSrn/4G2IBXWCr4FB1gw8aGMzJTjshpTTZBaUGC3anaj7EgT+79XbmdniSaWRTHtcBT8hLiitjhfQi6GtonwSm7pDHlC3yHoMZbQceOm+77n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NvPxl8o/jxdvV5Jf9WuvVY8cJFf6iy6nEQWDtVAau4Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wlHFTFg9RyTKmVUVrYRej2545dCJEetfsqE048fB1MKWoSWOIwGdR6IrljcKEZPsk9tpbivW7GAsI3CGXUtSjA9HFrjA+pzgFd1TXRtRaNs2StWJZzswqYIR0dMf+dDTK6MgYpmsbwP5fa6QpAFfFceLBzqaZrM+IbEVmFO+W4B4v7fqHYOmkqbV9FkFysnrPbzptFPzOr79+GyvbQRPKXLGlDCakdDxb73LKo8hVZDtKLOLDijrv6Z8ne74wMakESyhAezTfUj6UygYplG9RaJg/j4GFgqn1gk9rFtDwFGYvuHbdUoqfiOooCfn7sZECbQkRr0pxdLdfmszaRYUuGzRh+6SG9uvPMMn3Q7sjl9yd+UWHfatF3VtPoYSb41cmGuIgdEOg+pfWFV6TL3buxiJD6dkahVE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NwAO/jv/WBKpQPNudE1poNuRz/9vTYNYZu1aBfZ5A5A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mfI21QSZEH8nblswj66dr0fs6EBP6fPO7WCPAFeQ/L2sbQKEKPAE5uMVj3KnDq9lkEmgEF3iTjT/PQdnIBWWBKcqeFnsOTLhdfpn09y5L7yO+FQpBEWBjyRGEpIMVTFrxwbrHVB/ExDbKL2nS3lKPyk+yCgPvgWZ+eNzlYQ5pIrkS4141eC0dUzJhoCpaGs/xpfCyjSnmpPYmakRMaZPmY6wDOZNVzoVUphCtsu6N9uoNcxEzn6yDrhQUlewCnGE2/vAcT/5qvnN0i/8XhflOxIJ/vKhn/+C1QucfWIhwGiwnGvmGltmOhqGzjSNzLeFTabyagHih9IliA6oK2QWFA0e+OLiX31FY2tnjNC3BZvxsszZv+DEefqhnyW0L3Gs5/dnR4PybMh2mn3tZb60TdN3Lu3nM9pR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NxWHdGSNv53KFmCYrCtmRriiLUdn31pY96GenPS/qww", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "n7i0EmeS26NMe5a86gleNPPJWhHcrDglEBx6FfgwVlcr7SmkTjhw543Kxur/OKVWoFU6RKowFzFWYusLQQ6LiobAQIzbW2krEu+qNjTJy29E1h/beJONAYd7zSouDFsoIShVY7KixHksVro+2+u1biS9yIFdh9qeQD2YGMYK2vUF2ajb98ySHcuQux0GnS5d1oC1eINNZxrQ2ClklKAofKWvOCAmnjTwuo4k8vPEQHvzWnqt6vF39JtV+lwtA2XvsS5fa5Le0lcXV98dcDOBin4NTvYI80ua1WVTnQOsOL/6ZKGWoTjbhzhPcUbhTPRRyQvz2VRLZDYBdrR7Gwm4ejIurJokISZ8eqX0OpPnEIhhR3fv356LYIPkKezq+XI4tKz4Sr5d4ePSAjbXA5LX5b6rszFN/FI4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NxZFj57Z1xYjSgg06yQXeJ7LLeUC+CHYP85jb9CXoeU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ICt7pdFe/M1PzsnTKOtMDAhFQotrbGAFc7lF2daZSlu4yj+cfmTci0xG+em5dTEGoz2vShMnX36i7pIahCPzkseV7kTnSK42UNYzq/hVaJQc2wzpuI01EHeqYpfTX0ojcjFZHMzqbKR1RTLcDIH7aIqoZFIvLaYoo8n7VxgWrvQ3kfXfuKsVaIrGOpAFUG3cCnwop7Bu7hWOozHvoZQDryUNYvBDp8YMeFH/j3UilSYgv/cOzctgHdIqFT6FoSyTXypgIJBMvM53f5NPxTpNadTOa4CFi7ofPHJdOliWlYWEcATBg8ZMmHz/vu/wg109+Ry7zwTRB+Tk8u9p+OycciuNqlOCotFn3uicKQuDFlqpOD5xnb6pVm8xTXk1+t3nQxZS3bcXb/hJdZh5L32HeejcW11Z8pxS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NyK+zGtMfsAagZIhl92Ig+MvsQGuzMqgNaAWgD8YOG8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HShGAfo4HNfQXLTiK6GAVVIi8POYz8PF+tk1cTNkF5Ubkgb1CwffNZLgIrFHqXasxufpPM+a/SuRvpIapz5pEAJB5okUhsUwbDaraYn8XUkDoC+EGGdNX090qDkivROa4h1wAQlAiTToItBAIjsPAw//iiC2rO9TfMhMkM7Ftx9RjFCtL04b2wqkohWumQaWNhPR+zinvs6KqUU2sJBoeCk1Znb2HHkGOtffDWVYUSZTAYTzi/LD9rjblDJ0YErzrvY0BzrKYJ5ynFqQY5f/xQJwwFAU/oHVdArp/AwBoD4LGxTWyAOJ15nh1TEdJODZxw1yPAqNZurSfAkhdeYZ9uI7ohhBcuovZNbL1A3QKMmnzR3m9wlzRHpGcucV8ud4IFD4Pfd8cJy94ph26QSxOgp3niBor8pN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NyUWM+llC/hIpIjT9rAU0nUiOojpIBcfAbVw8PrwBc4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MOw01z5u2OAv2pTN1i1noBai/E8Gqs6Knqr/0+LUxxzLSRSoc3NyanD1cAYTQVE8LyGNpGTNpGeb0z/nqDBTXrgDIGYMCw1+vGlorSv5cp8mrn1JRtpODxjk0RPMDsOhzRA5Mky5a3vCC/xVFQ1obC+H1K7tO5jbgr60bTBvrlxd0Z4jeS10HZmDnI/FkGdS+KA6tc596YsOGBmDksFYzoCr56QfjhFLt1KJ0KSDwwl49yEHzVy4x1422dPfR4IVDwTMpPqHuAKeRQpqkyqxz9xubjpWaaHxPaVilhpiEnTY4TC1xQ4cTZD+k9E0+RfzifVcXX1OhFwgZps1L2p3XTCRYAmQ4m/IHRwz3pJjfhX1e+HotnuGIDWTldbagqaQ2qSKF20q+YYeDMXtArOOFUaw0kU8PtMK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "NyXcUaICVHFxmQIuVCaV6Nl92kG9hugprIuhxcdbQK4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AkuSD7yaNmeUELXFoNf8VdE6aiZL8cZaVQ8plwqJEttA9q8mnLSksEVnrg5KIPY25ZcScbT1ZPVt6IgtkGIQARlftr92w2m4iN4HVLF4uzsCyDZhnx1UBIOs80Jpgi+AnCaQX1eqyIv1pv9Fd1PwSj3lQa8d6w7CumVRWSlZ3gw+O3DpWtM4ptN6dLrxDQ/IBUkWNHHT5MOXmr7zkWIhVQVuGK1TYmSmWgphLpdIlSrgPRIvtpX/gC2fpRB1soJkLPgWupe7T/5hEh+Ol8nbdEFjyDNET7gmOdC9y+QGl3LcdMBhVEhueFgvlktcGl+0zb5hriXCvL9SN1suhFwEajSL1dNrbLiZzJ3H3Cxr2MfUtkGE0DIqEn3FM5Mrq/2hmXI65nEJVSwxw/mfPfdlL3tcXk7v54Hu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O+dpyXklbHXSZ8YnQuo6/i8L2eoJ7k4CfFOITM5tHlE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RrXmI9Xdmbo7qU4TuQQiAvNFQ+xi1my+Hdtk1633s2HycvCvR0DiLXxyXkLJjYa9g+TOixcJj0eVmU27H7FvrrGPQ9uMeHokKEP/2S3FyKqXUayJbmn/VaVqQ2wRoPQRdKbUAArXqpHlFPhK76vsnH2Pvx1ZMbcSpd6iSfQ7VsuikIMdQcf8uLndiW1AVDb9dW+im3WbSxqmwJcEmTyfCP+tBmk0QEMkjlQrfwvk7IudUVK2Ytacs/rLFDwMU/8gVfGs2YusX8V7t34xKUQ10MCKWfLWK64CYiwyBzqUu/CihfdeFbg2y47ZJKSLlw4D/ycPLmB5feCZiYNG+dWRMPVZ5y8cHdRE38X7c5G05xcAJ7CbpkxY8oS3VaD4HvqD4Uw07uBJaltiEkEPcybgEICI2GfnLisB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O+epxqOXMjVKumzLAUoQ+P9h/LaiOtenJ+jGur/LL1I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GuJhuNM7/b7i1P8kEXmdryKY8rL8YPRRhjiEuvpL2EV+tO2ZV16ZwSEFU7UwHPlAZxyI2tT+9jTItaKNC4X9e+eONXEtGQIpemx/R1TPfSskl7J3HJNezvz5RLiC8+Sgx+T/6dQdLd2qBgRkH3TSWPHcng5G98iONCinV5Ta4ZnSP6xlD5qaKMPebvkaB9k8EcDNNKonsibsU5SBKdKmTQzkT6a8orK1/AzyziKPTTatB4ODN0agNMfGn1M0TqY6T70a0xoZswzbIHT9i7oqLnzMB1fqU14qKKgmmJbcBT3t5PXGEyalZo99NziqlnB1vWaYSGLPaI+oK6cbIz/2X+UjUUiaIJj4gJ2hLgiUElPy5INs/BMiGEm4g9D7sDVBso5WFJnL109IWHfBFlxM957vZGfTm1mi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O+k95/t8baXzlwccdprsglI1Gnr1zRZBtRkTVUAFRCM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zvIKoMdm/gohp9o5fRTNoPdi9Olqe9rRwC5uYTrLMv7fWmH/tmgGtnBEUhDk7naN6nmq4Yfx/Wb9Nd4zwlZrIEgF3wmF5isHPnwzk6vSPNT4+JJlqIrL/t65+67WrgynbpIKIeugW+Jittm55pB2h3pT/Bs0Wk+eaPYFPHFBiAMYYRzqoEwkF2TAQzMKdt49Hauvtu+wNylT9eBc1ZTFYQRJeNrcg4cnEnmmS1fNPfZqFA9Hiw4lWt/MK0dUKodhKuAkeR0VHpKeqV5Z9yWdhbfbTcAetI/5hLvCzUYBV8CX7J6Aukthpme/nX7ikwleFq8FysOqAuFFJgSE08ebVfTyuKoCb/1u6TV8f7VrxZeJMkfkFQ2Eh8aPIRIk5AQ+9O2gtnGbPXWsqqtUDMF3bPgHOKCrahWs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O/EuCSbO/FlSCWpWqv0QuxdlfuIIcIuakxAWNsMP0Y4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "scAkgQ9NpJRJEbFyYCe1POQ53kMDDi1cjY8lSPDAPvfWrSzRCLPwj/9uxkZTdeG2MEEcM3Gjko90105E0cjQY2gC+Lrju6VSvxLqnsKc1TKM7wgTT4XdU5xt3Rt2tdCV0v5t3nTdWuzYSWclFE60hdHaE8XvW+SeYASX3IaQdJL5q5vQhvG1BfJf6VPzBPtAV1trcdCw2jlN0WKluCbilwdWIpsqffiQPmwC5zqEnoiXjiAfuvCzygQqmIE8VOclIScF9KbGe/VnYnorr1M3yHivslaz1F5xdO4oJzt9QyRNpT7+ZzSsQ8SmVvRl4sHXaoojfLpoD4cuWqHHc9N650BIhqDuwCLI1Kcgw0iZ85ziBv4JDIHeqTbOtd8979qIwb/aRJ0oPzbdgdehhfKZjbOmyeE4FRiZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O/izxOOBA7Y9X/BHePPgKoKFwWAbCg3K78/oNEsx+/Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IMMYGTAuKDPUqR20idqkTj0IB57kGQrlDnti5ZGxVrctxpGejueqUdRpz/owGnMNw6Vs4rJjaXdRUGaEsY5tIqEgOdW2hFVusDflEBO/r6cHUga6KlnYpxqDz6SqDdjhW5Z4e1Yy6FPk91rs0qIuZVJ322HruDm1RUJPA1C53yshE0k9Az6CzLx826KFNh5IGgwRQhGMX3GhOkt8wEWJWEnlYXtKloYs6noNDfBheECfrJBkO53W+NUDfJKasZLu9Qyela0OOq1clj9wvljque4b66A1EP4aI4CzlBYklQhkiCNm/nT4DV6JrNiku5tLtPxNVBslNPDPRJ79V0gSp2OVK8XKEmtc51dTdhtgoNcPMHdpP/dVx1NsfkMVOeAokLsKPuyqgkihHCqSex/Omi+Mly+Rnfa0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O0mp7dtoaXdPOB4ntSuZ6rkgA5nWF3Grs0naCuzA4oc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SCiJpA0IOr8MvTAF86nWfWRyntjl/5UjEocpkPicjY5r7kocBZo6jNSiqasj521ypRa84mXTsbfEuvidiTV/j0gbgS0pX0dPk2gvfVKJDwGFy98l6nuskW2W7nFrner3TOaL/6nc7mEtKLtKMaE81qIcR/+lNZIzncUuuQWBwe39ffM5EbNI0NOKQNJhyl9uLGi93FIw9wbJEIRpWFJPVED7j4n1JLdRaRJZxFAr+w/Mm2aBAR/opy7YGj/eC9mJS2sHhSTQ1j4l9yegvwpmbGlYn/6F337vuRYmuBbfu2oBsEVGUrb1TjIAeAfgAQZ5wxQxAn3D6PEBYzx2AJUMgz8EKYjuGXxXoZ9RgpynyK/o7xmosnDhsSodli6tgdEtJtviOO8TEFWTXB3DzFshDy3LCpktGe5H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O16eerdiQuTxLmX4/A8o5s+cmmCLtdfNc7tiFG1e7Fw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "51MqOB7shvC0eW2L3nsmfY8JcecWVdhj0sHeWzJ+qGLNjqYUGfH03e+PonfinqPH3/J8opCtae2jQpp8fQAOyh0kpzrqs0DUQG7Q8rjebLJsqrCtJ2puzTfKoTA57ur3PkGJnC1L5tWXKi232qxfoHvZeITu7S9lWyoVZ0Ej82zsRrRHwmsH8jj4r/SIz3uA95fGrJBn9g/DDFYnhOj9NmN9LuZYArtskY4k8uPGmh2TRwQ3lTweaZeWLhh7F4wQZlXOS4FfsygY/sXGxPrT14Rgb60lRAQnbK1m4Sl88wDvFJrYnMmSJPplcNObxqKc8qzRDIYpSMsLtg5gkuYmnTRUzPO/w8cY1eD+azs2ZVOuROHYpFkEqO2Slc+zMarGLrEjBI7JIgeDNFfN9w/7UIImHKEIP6Gb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O2fORvhvJMNBoFb/hrvH0ghg86uFFo8V2t7sfGvu31w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8irKIxubS64PxeWNOchsIiux30UPVV+RZx+eVX3MJI7FRlyPsgqv/rVQkvrovyPLhH22+M0qoPO3hWLu1kSfkGLyZ7sKemjSqFWZh9wOl5zfV6c3MV9BHx5FxsEP093TltawOi4mLdYAEUk7/HkhrRJ/VEPygFjLIwZrWOXYhc0A3KzPT5cKvjj6E9pB3lK+EF1Wccpu+kUc/Wt9DIlWAabxX5e4BAA6S/9J2cb4f0G9QLeE0wv0VT5Iw5SV9AltKaUVM/DU4ddS0Tq/QHbv8/NOi57KTK6Skaxm01nEab1kA3W5+7lGeTq/4ZTvq36usJdlw9buv5mPjPCvdFG/Tk1g0XOySS4tAfpqFJOxY+KD5hgTomhToK7B2dHM16m5EgGoHI90ZQgCe6jA1kkbY5u73RZPwJGi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O2t2sPYHOxhctwzaTV2B+t+SM8er3bZ5XsXGh+wuvhM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xVUFyBjt9QEqlbk1fhqHI0ySMFoILeKE4+C0UfqzQxhcZDDArDgZqEi2PoJGChyHcehNUBlCawV96le6S3u2nFeAYbSi4xu/4mdp9/ytBAIzQgTXa95UhxHT9urugUJNfAkXS7YuUAmYTsPbPWrh4AgCWgbjGaD0nocPNsXDd/dNZhII7HpHpCKcv/f/z3kn96web8bA+w+Yg+tehKW+hoPnY4gAnTeAWCBOB7i5NB1o3rZnJCxpzJBM9EEpeOQcFPAutxvlNhkn/OvzaeaAEEYl2MX5NHWNcUVTx8oOA7dMY73F06Crt3+V8/RAo+wsSS0hFkQfbgzCar5nqnEOps3BzIAJcPVwjSIZoQ9l6kMS9ZQGlsKRwJSnSkXkj2hD5SKQ2cswg3tySUgdifV405SBoSMIQZsv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O4eLz7g3S5UXkEFMTIgkzy6Hso6SkAxcOCdZg3XF68U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YuMgAxbMgy9suw+MAQNthZCAfSopvgJAR32vsrU/ivv9sURsmx64Os0LhsnnnxbZf4EZLU1cDCB/f7HyV0wCP2DYvhnTLDUbVzv4u/XIsKqFPmF2wis/IiWg6Etn4j0DphYbYtfC1+VxDg0GfkiU+bVlS9JLcH0WjREiuT7bgx6BUs2BB6mc/3S5suXaXnYkTFmZYi9ilDp/C/2QEBZSnxk3Bo5z6QLD/CTnxo5fkdK9aJdBIwzmaTcQV30mqAa27c+cKCN+ldiwCimnG2+LnEPvGdjDsSniPQdmNH4iwRtznZJHFbo2TKfF0bLzvRWSqmZbRcTRfxp7ECovepXd/4Xv9MGsnYpG5iyk2skf1eY0+092qhKAY45pIKgFwkGcQJG6VlAdqo+6bAawQLGXpOT0naL33nxa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O7FlsUXE60q4+C4vEB9Cae97jP5ZXKXmnPMNELH2Ig4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IZ3Un4tMY2H9yGDi7sCWNF0sfMX88wDg75dWJVyqOwapNTurrA9tBYaUva9cD7WkGkKB7XPuJJeoTJjyiGKXZbiX7lInfFiiV0/IuLHJsQ34UiCeeUbcDCa0KULhatUpDo5CY1QLSjOIVndjuXjqOKqsMqiQyYIkxCDcj3eQUsKDbsFi48QlY54vXiZNcB3tlQMbErrixrMOg71Gu7qZ3namjwNPYcjb+AUfsW0jY2/aV3eYQWYEmxFU1+4LrX5/5OTyqI4HwJXZqpl8G4kEMa3LJ2eB7+kfnY9P31gEkFwhQxjGB0NTsvahZiEg3who/xjNVy5pHd97l1jSvHdU32yGLPWo6lao3VY4FJcc0Tac6QWos7GffI900gKq63xVavu2Qvm/FCvHzR4A5eYuzhphkfp+zLpe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O7espdO++loH99wrMgW6BQGoS++AcrmMK6GZNIj94KM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8mxCfL78DCwB1ZiMNP5DwbaCH7uEcliveG4SUQnKXPkS7kZk0DbSJNm+shAHmPFgFiLNh11iAOI4Tf9Fnyntf5WRllBsFEuPTYTroTB8HBAOC0o0kS+/C4urqTw41aPwbA1sLoSkv9NzUGbvM4vQ5/4g8EwztbXpsI/egePGXnC+S9a5i9anEcyrjZzpvVcw7IBpKIRD6tqZvMAwFvfmRCwV4Vu5LmjBuktc6TAwc/etuTyoTG9iLiaXk5BMQhgtqeBGdVki3h65aTA/+55G2VTyqzKf0Sd2lNytaBLoz9nwAhMouUT2ai21/TlWNG++q4siiAfExvc94TYfqsQQvLFzTenn7vB8h1Wmpfd5kNUGMGy7+VGa4+nJaf67gNT3N8gvv3rbzq5UQ1aVuqCsQZOwGKHFD01A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O855MsA+NxGSwRbu09TQ6+oMnUWIM0meTgVeY59x7t0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mTX3ffCJT0PlqcPsXRtj6eof5igsj62SKHvSWHYyqRv4x2p08WuUo3LT5/2xcEMN3Mm1OkjvydFk1+qpF7VTVX6yDQCyFIfJ3WzVlEOuI+jDGvstkV0+YEz93dXgWCdXpR8wSeDWX0+4BggUFjTkwooZ1q1TlmkwuzdsFE+0S30NZw0FYbtkYJQpOA4h6rRPVmeuYfV5tuh2i6EH1dXmXK60taEBuxSngh3TmlQhUXQhg+lHYQ659D8MI9L54A+wWVQJa5imx5Vsak8jFPTKK71qOLx9TX9aO37jEcB8riyFTQGgHHLL0HNQ8eX80hq9BqwJ5KWMT/JHkNltV9ckHaiF0HxO8je3JLt9Ve3kC8wlGbc3HDOnKisqeA+KbSr6RgdlqqjTEKXtRCaqCSwV67yWYYM7LAOm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "O9VRt8sipXbN/mmD9vgBzjIZIbq5TwZ+Y/OiyLEPXLQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mj8guJUVJZlSPRdByOx/+/8KgU5VhfB4qp/8zE6YR45QOE7TWzBQ7B2ga2jRLF54WdBrjxEYBZuYcKUHUpCzYq84dqgc4Gz2CY++lKRsKBFkwmtUY9lbHp9z8RaYU+dqL4ubOBnUlaTarmVu34qNpQdVg9NRFKpbFFbaxtHDddkN2ktNdIM0TXxpMC2J0OI7TigQKhCr1nxv+/Kf+bvkHn72FMg7a4U0DRFIYV4ICuE5Hx+iXcorGzBLNuVegyluC52WOrsHG3NhtcJJW1KOPso/cNyV35a3ozx5W7P+WPdceKVCJfW+1xquwZuqlc4pIW5bilB3ETMHrJeJ5QuwcCjM8G7PCtLWEYvd6ubkXzg4N4LR5CqcMt6GEqmhp5eNwc00RYhyyf0vsjdw5pPuoAru1LdQYzWM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OBMs4l2GIYwf3lHmIJ0iAjXLzKn+KD3Y8noXwE/TkLw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Aoq8AkohJMaYC3aGHxEqsrU1gkFL3Mr+Q9mTHrxfG4R7nOfDn3wS7xhjqZoiMZkbFcRAjBWBfJg6vwn3i26rNQeJuMz7bf3IN2Pao5qfjo7RkahJKTjcAqDXr4DdcX/z/jyh/sOZEdflWYUyGP3j9vhedJ55rL3Xdwgq+9JAyLz8ObVByzcMLVYnHqYxUSwoDn79Avbba4LQU/pVcIu/fNRK2A82nbkzmDpyYx4w6pB/nXkJQlQxsVoS3kwmfFVtAn/CUCTGpqatyBN+/SIhMveykdiiuXiKDA6f8qGwYK+uuY18gNtH0UXtJ69IOGp2cm+8MAkk8xmFr0f0i9NRXGx5BLGCGSkdMBVVtA9kFzzAT5PQfsIi2EJ5eqV/ykLuf/Zu8aWfb8h5Z24AiXsQMG0/77JCHNK4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OC5GAC7r1XGI9fGP72ayWmQWqN6TV5R4vn9e7+cHnhM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OwN2rQwYY8BaiEVikU1BU3pTVP1ywv4/7uYa9BXtgH+LL7QAN3jPujhnwePbtjR8sXZ+723iAdsXWA4RznLohmEfpzMD4md3I0wf/4jhZNkITh/vNlJsCLSz55q3dkWCF08jlHZvPU9YlLQ7ALURZ5TFOTQzwNFlfwyzNeMPYPlMyotMWMEWbrVKp6kjw+glWFvQwtHGrlfSuI5IQ6HNPcU5SfM9bkULQoUc5A/OtYF0KMmfXDni21C5epEZsyB+UV3KzNcEPPMnSI48GYmfO/kdKhvaBg59oHccV4IoLetkWZQGsMoMGHuOtJpS0Y8IWOaH9Y7M7tESZGuQJG+v8T7HrTii+hUfT2/zp3cLHtNDMh6LdhdajJgPGV28AxrKUgyCTMvJyBTqwJgKaZTYxtSKkgqTUvSS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OCCgAmw/mO08nsZwMvlaEs3De8FWoCUhWRbFvEyXDD0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZmAUooXEye+4QKpo3Gea2iKotdo1F+/mofLOh5Dbu9mY2x3K0rLQ5g19uQ/900TQKVGYhN7IlNWhxSuUsD+/gyOfrz4HM1X7tJViVYsyDGkTCvLl5gsw/+LG1orTDze+agYcJEYAdO8WHTIkDWgHd78kwDDeH8YFrEk2+V57y7IsSDDXfpt/urEtoVQaHvLAtwnjejwuSLcjiyMqKPEnmnh/fO8VGvAHJO/r0nZnONcxd1jLWVb6rKiMAioEZ3HffSV/hj05cUnGs5EzQVA2R2LMFDrNmp0FC80l4jrDxsrOZKppskw8+ozBtuu+oR/OjqdsrnsZwd+9kxyhGYJoKSdF4U0CPoO5L6MQEUkMX1UP3k+DXmaaqIPkYgmroY/MKTpuScCnVZHfr3nxFsQ5WUH5Snj3VWtA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OCOsvW/c5nB+HhuggZeZT0N7iM5YtS8aGLtgan0B/lc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ocVP6IPdvB/k8ZrZVIgn2kd87sZGy+xN0JxGPzz/BO58KZp8giJumD0SEesGXX5Oiuh5EcvIoDXUJJw7sOVc9os+MzpMLRsVHTjVU+ZDoVe+Z3cBGxJP0PhpsS9+zBkH+pkje3ykApwdw8L1INStBwDF9B8F7uI8hCvDjryTS/UlO5jFrI9Fz3bLxt26CkDyKOrbdliWWmfYf+x8yJ0K8dR9lYhcURqf6urBfMWJceTmz9VVmQSv51Ad+CZ8+Bk6cwk+9EbLeMbvMJDCciuU+HgXfhmSxwTdG65GD65Vq3fkgTEXXlD0tr9IzwLTJ5kEuHYMpGTGGpok1NzyiGq8oAorSuwHLu7/kSiel2l8oVDeGQRFSiC+48o5oIoMrmS2vcg+pQAlzVIU1JMArmS13efSAssGOlhy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ODr6dTOjYIdrUF/EtxR3WgpNl4t9xA8X+QKf1NLwhpI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Fs1yz/c4AFLtPw003LIBz3xe5nhBw3tXN3M4uqUUl2RdjFhKutqO9Yz/KvjNmCocao3kLhLhFmDMqEmXLZbhuHXDFwl5+UJG29uUtfAnKxfFUtQTNLFxLTOycLo28GZ70GKlF8/U9FNtOZDWhumPudqg2oGc0K87L2TxFiPWjV1JDo7PNRpPDiqBvpUm0djk/IAK3mUTIWQpwZJQdpVPizy8R305LRhL1/L0x99M+E5meNJK0bvvMUE1+0gI63OHHUJAByIFE5ruzPEzy9RH0+cNQ8jEcST0YoxJnX9mn5UlXRpp6RXbZl2D+BW1z9kGrTFGQpjMCN84Ccxdw+z5MlnXEk/88E/oSrM6nWalF6xiNIuIDGLmb7iYqn9E60Fq5jhwJY98VvB4lp5caYZAxy6rM3QsYeAz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OEyP4TucADndHTfaO//S5Zd87Y5yeB3SFYLqAWuiJI0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l+bozMJXTzdUmjWr/Hzy+2jMI6PH5HoG2zDWDDQB3HYwRY/ivRxMAI5ICo+n3gL8SqJrfeR+ChWdjzs3fbuvKrcpODE1yAJDZkRhdHFXSBM5GkLZkf7Du4yLYJTyF9iCgcKCnRjt44JE8F3eND5NfOLAcSl05+awgnLnPQLKRMPyF0u01Yp9vi2CY3ndPXWuZ4u+aI9ootkCWUVDjJtnAsal2rwftzIutDubCBt1JtH+Pl7T6Gsjjjkkh05HV3W4YDwS9gRFqsiSX8e33ViyXxQ48DZfAMbDw4L9HDPyTlVLhU3FL05v4WDHMa2G6Lx6BqrVFn3QnAZEekhurXcNVlQUsJgD5b5mUhY7hzEXPTa9aRov4k6mluH1tSZwnbOuUjlre6beXFzyPwUyOzn4PdSlAOE5IxSH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OH58sALTjwhorGYWUFrQIVy6bLHZvGPGJTOF/UdqmgI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OqJ06Rl5TRQJPWqAEZLvdCBA+9smkUiGlpIa/AS7EAJ1koJfAIlAjcV7b6VNJfk+ruJ2pVS/3Ld3qo/8ehlLy6T+yx3mF5Z1pqUSwMki3tzl/T106wwZUWBHzvTMBMFYEWYTq060V8WG3S1KeglXzsjdZCjjWT2L6XGwcPq1P8MXAGFVuvb0ewKiHIq6fBAIa7c30oiaLOdU4ULdPCiB5YBUaKNsGkZ1MtXAYN395uxu7vRr2RzOGefXIar+YPKuJU1Xsh17v2B3ddmND1lmnPIGzTYsjTQlhLFXHtQ1Cblu0V7O6cG98fcA+1OHco9wOxao1YZC7spTkRhytQXgF+tWhOaZj6aueVy2nkz//7uwzvBk+64AFNaejyNpUbJREhYbcfpGGWUuVukRdvIOVamluT3GGXdS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OHorA3sDGdV3xs+YlW5Oze0PnTAec8FfTkEtoAtu0CE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Bw5EXwNOuLvG/ZapKvmQ/JY7BlEM48S9oQUBnW9Ey4pPTvG48rHZNSDpm1tlkS28mfm8z7bD8UeBSsIGu7xkr/Q7J9vWxI1TgrtV8Jnh8UCtMhw/iV2fgPIXvtfc4GPRo4ILkK/wGAvzjVy1JUPvrW5Cx7FLAA/+Goru88AV2YuiimheBWLAXvXkKCIHzWhnFFT2fk3sf2SwM9om05Ikt4RB5LFp+zeS5v6CV0DvanmP0aDR6lQR/xFnD6y8o/24s/BdJZ0or0okzEnDKRerK7/a5sMtCD5nM/26wYMMTun6BQjNQcuKqznintU6EA1TsO03E2ZC6r9HOCr95Upn3jZB5U2DG/RhG+TPlginAVsiC4Ta0i/V3HiBGmxJq04a8IiiLrTR/PGgaqL9kkSKqFphJ6K08iOO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OIqd2kGpR0UxDFxV8zN7n9LC9VtXTl/dZcqWuV/spGs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "91I+ROD11sUF6WihYFx5npQelvJwKUGfRx9AH7deUBgq+khJMy3EfaRhVfY+uvUsgpm59AFbjz27dl0CbtYShYTj7mk+mAXEIbIfa1qSKUSu2vp6Chc2HeUlPGl0op9jviVd7xg+zBYmK+9agfXqvsd4MbHN4IRv3v85KSxqm0IiKmbTrJ2gPSJAuOY4fSSbl+H6vVgmb2tdJ3HocvneAa6Njv8V+3nFWomuuNS7sZ0UB9QH4HvCuIkMI6ZnWNGTjxhogj9vnw0cWQcNGIKfkMsBGsAT6YZ1D2sNF2hxmOxUqDH4z09Le321aUstVyKZa92JVaj2SyyUrMxDJ0PJhT+ZA9qOEA3kEIY9thnCSkv+zjbhYHeOyfzdLt3AxtIDrz2aYc6tAKVqkPn/YGYJcSRoI2tjhVnC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OJV4cZ6PEYn7F+YD9kOPecY3LtLLQ0HprDH1iibDuZ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8d9tjvEPk6g5rz04bHrMPqEnlN2nb0CGhcB7Jc/z4X0UPsQDRT2atnXrDQk07PwTuqOKt6+n2GuLMY82oyv3qvVc3AYxQsVs9LRH3i2fF96WtaVxYLBKmoDwqxsaZRigtzYPj8hWKHT9JiigSKBAj9zgVCBGDdF/5lOMsutpPhlLNXnNuw8hO8wVpBVW2asLvcldnh5lURGo/yDxApZmK+JrNg4MvzL+u5tqA+czmUgVNyX9+OCbQpGBpnY2GqB31sxo3dWT77LlGMk0JODcaOIEHZnpdoF5xFMnr1sQVMgQucYdBTWjSUfem6ruBIXQt4zy+jyPVmLbmyaik4uZhHGO2ShVP2EL71PEaV8P2nl2jcyZwt9ANH+QJwzJoGZhNV+uaQUPlVKDkDSZ/IgWXqMAv94vQjAj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OKmbKrnOBmfzAp5QFWJJIki3AGsPjUA6H2Y+oZVQNKI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a/3HdN91o7dyQ69OyUVa49EPirxh1jUb2RmyvZvriUKwQZr8temQskLikgAQFgnuWZ/rq+5k4XWSDG02+1WJRuKWxJN6mdBGAMTUpabf7zd97x93nf49Ie/GhBriHz2r58vgJbqNw0mTmSsQsFZCrQkC8MpOJ2MQCcO+GvYaASHAeZCTFsSfcMHoIfc8a2IbG+ubaxx0yh96mpLQJP1E+/cQRXbO4A5WAoQ6FxlGYBzRvdG9UdnHZVRmG6QXUWLQxRKbPjZM9kIp/f5tLFXj8MxYEXmn/UPOXZZlfWvexgqBplA32lxICJOQFehtduubdDcXzA0nJIBx7Wwk7iwVa55hmq7ND/wItIMWqgUPPY7+aiOhdVaymoUKiThTyaBBCl7Zqus9pneL+WE/q++kUM93CCI/vrEW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OMg8ZQKBgfYXd39J10g2UKjn+KFPJZiLn+7gtRdBtAA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wKdoJT9wp3vky1pFIJHvlwPU/dcpFsv62DIm2gxfiK82mrbOowalMOfsIOyryMPkBDNXCJOW/VVCiNKO5toyhR+jtWL6qWt3J7ozxi6CFY7I7blcadSUBQyF95M9LSlXZO7Z6YS2wYlvETIRNAZTJTgXc9m8j9gpl1pmQiDH9C8tYe3PkWXA0zGiAkKMBihqQkwbY4xykBfomTRp1SmXtv9CmN2CaprxN5RJ9/AGX1MgreQhfqUMR31PZRoE3WFBdeiWMKDl1pHf0R3qnX4tRFqi7BO9ZQAaLngSTnx1ooi5474MReU21g9Kc0eZizf4OtPvcQho0FlYFHc6EavBj5HS++BXM1lCQkfjYkyauq9WWzEuuKh5LZ6X2ogXRQO6CGyJMscG4JgHFBt26jrfJc7ky6I+i5Tu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OOs7ogpFY7EYF0mmmTHi/K3oaHhtgi7ks5MVXMPuv/g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/kHYNeQ/pHFkZNNm2xDQwcONU05mXsAYFeslab/+JPja0huHUFt3vM3/YCZz4t+jIIL25z1YE/Nrg2cFGrNc11V+VGhvgMuD2QZHmTWhGH/0DQaUP2SVDY5cCcEanIkvuj+/4X/B64pXQJKC/i9buceD/hmj56HDeBo0AltMv6oXGBEj+ixIWmbslsNd60Bs4fH3+tCmMVebxrsHObcvRL0Uv+xfXdsKzlPtdfWhumHRRyupF8s2n0p73dVrFMj3bsApOvzwdhWfVFA+Bz2TBmOtYQvpS81yL6mYXX70bAtllvi9MoMQIh/HfEtMGSoC/UHUz5G5F8v5dAA1joX5TsBuSc9EcARjN4Ud9mm+gHicBVa+baJ+xaaD1hvU4P8bN5tzb9KWDPd7cBamgUsOW0yw4zfHqYy3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OPiDAhlXwlVsAUhKUXWYT6KYuzfJ1pcpZ6zEM4ICUtc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LxZHCrYhCUQT4QAzF+8HAO4yKidFmXdBe8zr7j+pkXZHc6WE8xvJOWTSmqCm/3rRqoUJo3oD8GUOrfIbHKOq1v39hKV8OF6nVkdUS1WF6P1xVBqmcUkTzOTVydwbfoZIK9xqJrp8BcWsYMYmr8eFoagxCitfQnndiZRCawHCqUSPGdx1M6ax5FegS771kT0RoGL4kQkbq148RYscm4bv11WC6NTHA7Wd0dDPwA+jPJ8AUobMkYxFGwVEhjZEvjUyzqg29mztw2crzGGAOgzIJsUDGw9s9lhXe0i6EB8QbSfr2+2Mqn9q4nNFD5Ur8pl4mkbL6PTBzhbvbQ5WVXJ49fILFjyc0YL7m09tQ5RubpnzOqo0TdFn6v3h78yZWj9rMxkyq/QoXlchiS3LB0PG+opdA/JPK/5+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OQMzfeUCzNGVLs+rBDibdDgRV9nfOvWqcMlxjxQj/2s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6kgrMPlV1vB/EidH+ZZuEmlY8rpQLebJLPZ2OcaPfv4Dh9/BCbik2TSobNDKGyR4TfhKZfbdJWLtJ4+0+q5kQ6njn0jvnkj1qAxXMNaVMT65fPIBpKr9Ctl2opfBmLZqVkFvffBYSE5eye4mj8EYrJ8ooIL6ZJAPFKCTBUjb2OEtobatE8G863jGqWVpArXWsZAMtgbG63davbJUS8Wqq5M3ZXuk4SSiqty57O0Ys207Y3G7oKa91z7oGdFrEulRuBSNSyJ4PGTZJ039j8+jrMu9i0GsU0MexuccXhj2/RGTLMo4graneQ67nhk0B7E6L7onSEfRAShvpQNRX2LYYLeRi9oPeCrNseNcbVqGvu/AhXk5Ifj6EiHxezWbG0BQtP+rFok4yYKrUSvyeUImPDcEU8U2a/ia", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OQWsyltZl4aoa/pzsAWHLeaXo65U7oYZi51pFzDa/6Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KYZ4GvMX+ty/oCrsJh2r72Mxoq2y0S2LTirHXddN5a/2UiSYB7howTRvbSQrU7DuZq9aPDdDVLTn5E0rI6Nz/UCqAbZKmgUCfZcR+re6J512xV70sREl1Nwur2VbA9O9vfIl6sDcJB1y7X0TQJediEWVzuengEOPg5UNN3A2nUmeJ3VgTEfGrRs1ZcQUVnhaLU5CqNAgFaLRkpiF98NGS3OSaEZZdicEIGFuN6mIMIScEaf3lTd+wybS+uxMdQ6Ef+RPB4Clm7/ePmSEdEVzVmQlfCH+PF+pAgvWa7alYboCJXSRVV6OglsWa7FB0UzeXgvTQMucY1lgiXjD7llawQY4xx/xwGTx0zZLkfTb6mpT4so4S9jgJhgepkWqjjg6P0FYdYpbjqVeg/vA31L2C7MQ1VeEeQdc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OQdnpEokl0BLinqZAwlR+3QDcg4z8MBg6h6TAUg/8IY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nFSj8TgxTj3mZvrVDw1duccce+Jp2R8xcBociUFu1ZagxbwNBlRarCEVIS22x7sWe9W15oGsTLxMkCrE17EFGvEpkjcexrE89E6pGY3nwu/+KLguoZU46BzJiSQjMwKY+9n6gGQlqUmHQD38KBk1FFaZeG9SX2a2LULpaVoDqgDVYLOqCZ8w50V2sjntUVuaCCcI1Idq1eaLF5EQ9MrTWdj7KDSzxJ6PSQJltfD9hTDEfEupoq2ZvFtWyC38G8KgAZKwdrDvun1gzNYOp1r9MX6VG+ZgL+p18p8ZrOzeS+JthSfrif1nahnmsJMd2u8JrIFDe1ol9avy/Eg5mCFMbkItmXlywJAWY97LXaW72eJHudz/1rbg/Llnb0z9cT/vSACeYVzqE3G/k6AXQqj/KZiffVkI2C1H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OSQXmikAMaIGYrxp8otBUg9LiarA2IDRyOJ9SxP1w5I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "34EEcPfvQJovWAbVic3ZMePJ0xgmrsjqcZ1BTnlF8LsvEIjPCl1Cb36z+qpf2g7bBbSxNlaW1oTzg3oH98UovTukH2M6m6GKbHpNMNqASzNwcIkP0zEWmDsoYUHJNVGd+44rahE6e0/4948IQhByWvAog33ffdt0wvSDJA9Eu5nV4zxnj3oQCg+bRucCx8Js/4cin1zAGQt+nVze4OUvqV0XrwQaqFU0JyLEp6Vjnp/RhZ/Baj0vMmmOHy8H8sCCMnMeuTqyGsmRxgDiu+sB3Iy8mLPfbsCH+j7+o+g5dZBalpHddf1UFx7F1swMKpL1KqL3BrXtiSebexUDc3oy78NhAADRInjGaKbtM4MerO6nwJjbAlYvDMI17T1sgng0OeDszuPr1oW6MWYOsAp0WV/o6dqrZ3Wi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OSojtFMZa2F6XKOwBg0cYhxW/aBkqAjnKT7f8Gpopjw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dfA9xI3NtilX932f7qtCr1BknReqFOflpZEd0s1DH2hP4xdUT+VX0byADp4xPQJlQUpKB1yZbkIAmmYe6Ea+NMNq3M7sWiDuj4qrSdmaYTZjl5QM6HMJFzDAaOtoD9jeuv/zTLm8EymsyGMXSdUlUKd650kA5q3tNYKYapbzlzxjWgI6JvguKMxjxkJ7l8Q2u17QAy7OxGirbqcPp+uBBNnhF+yYQ4Kvtfh5s4mpN8kiNiOVrVqZFZ72kxNVe1SgMXlhim79aTkOK8w8sg8EM35e1C2mhOKSPvZkkgcEuRZkESllRvxu9/3VY6sHWi+rTrQ81kP8T+z610/fRuuUhGA+YDVHKpT4teYSInvM33LeKUCrCZ+xtxCCf/EZSxt8s5YsacwrikTXUZxjUD/bzQtq2GiyTpap", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OUGH7QZq+05xj1xUmDR/yy4Ss/z9Jdup/cooUoMwuZE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pKOzFSUseCaeuPdfpQKQIsSJEU+fe9Vic++9+I9rOJ2odqR6Eood+ImsFha95+Qptgtsu0AmsM335SBg/8vw6o94NcXtg2f1E1n/jv4ZL2WP1t9zjtPcJgQSpRgEaYwHaH7owMxSceGHSSDoTDr//JVt4wT0ZAaPDH6SYRBkZf0N0HlBD2V2uaevaruvMFFD99sfJAbZSwbpJ2Z7iwEyPkZKYMYwMZVNGbsUUeIzH/mWlxx8eNcBfFZnlPF/W4f82ZQ1uVxBlftWZ2rW98lPolYxKs+L2RbySAJD+0TsBxudl6YJw8cl7HJocYdJp5eWDvom3N9jtJs2ZMqFkl+p/g3iNlAw3rRufOMXIZiADJ6DUERJort/cOi3HoSPIPbEBVwsDcr88eXs7HbnkMnUoamH+ga6xN7K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OUOsTtXT27z3HUpNiJ8x9tb0EUREaM+45+d0r3+BcU4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IZHNIapIFOpnHY6kA0bYQ9t411LP565sWCXqSf1E13eXH1Xf7ewx96HpglK+LLpyPdOPxijCKbunK0ozOemWMenqWv7P8FvkPAgKRrqWd/gwWguOr4OECoaiI4zTGDdmlqzuN0RgA8oyZWT+zoZkBR1vNHUtLNO+z4GlV0yK3mqx7Kt9H3bVFFMWhFzwh1uU56sP8OjITz4XZJvkrlpQklishcumn7If3I2kFG7P8tNgYc+87lXqgUTBPT8NbLqIWjvN3Sc1OSuKSffLFh6nyP+EmxlsbnzIksDylJF0jGJX0VlwgDo32cBrHYlMbJWnYwL5xreNHjF7cJdbqVEjRmg967RGfXkVE2qJLfbMrSwZeOSXb1XP3nu3W+k8RRE2eySQ3IAuEIT40y9r3MSm1OVj0jjGYVDU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OV6Qbrj/FoXvd2uy5Ala1Ew4JrRBOj6lYoxKwgT9Yxc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d/8JjGtVDWUlBxwGaGHSXxkwIYPpsu5okyK/yHP5hJHgF2s1/g50soxGxmI+wPbYt5cWMAJntHGL8VKh6gihyCqf0ZYuNIWTWnIhdorZyb4tLTWillstFRcE+T4aFmKCYWtG9peNFt2XcZf8rfHwRwwlsKU70yqE28inUxxQiUtWMKzfUeD+8kwr/R9U0AXESOQdiWbZhEffADw2VTHb2myaNceTksYhJsqOGcnwr12HIBT85bkiYa3KbfO1pBDwjm1j7TPzdF4W74dzUVdGhv/IJBSMKSKQa85K+mtvA7zACJFwsFZNDJqQt3wyOBeI8wiXtz1oi1cPz16sugBFvjJ5x23YC0e+AKFNIYXbGrcMIJB+vsGy1/HZCsEtd/CiTgub9BUEA4sbiGz+ug3+vACf0YT3X+x7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OWuWoCsZEnQn6rpKz7hF6Jvx2/FbR47h3x5nd/5AT+U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ykKVKhUbcyMMwZTofU1mVEtFAyYIjc4PUHK6k0FVCvgity0t4qKKN0XxfSRcntlDvCqnf/SAt7i07MQeD7b3rSHks7UXRjjQ354J/X3pmASEKfBAwvDMX5C1rhQ4Ed7zaRjEpMwj57tG0KrfKofwmDhZKWO+ybVuas/V2NiJeiskOfx1kUvMfrYUI29Xet6J4oI8siL6xdfvpJTaw81IYpbyNMRcE7d/NtbthWJqW3n05PoaUzYr/H1ba/aE4PQvWjARvtZCCi0PwmYLgdGE0HwIOZeWuSQsSfbDPDWS4B3q13DPZmGqLAa/KzwwWFUH5mFsbJIlYAGHtYhiflrPeQQruGoXT+yXQrq6Tk4STFT8bxd15u9ZYlqohwwTTG001XH9oLOrC/3eYZglb0CTX6b3nSji/pL6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OXO4F8jB4xnArI6aPspweJr/dYjIGRcPXZKQceUbFT8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GsMncVo0IjH6erSNRTej4+LhkjcUrhZJqXC5ZivCZc7BLh47NeRPYJ3JbrAQ+FQRBhmF2oU2BeKXwgAz8K8lc/9HKyNGcjU+p16ke2SPgpMukfkSyltGS5LxjEzp4nckaUm6qM8qkGbm7IVedgdvzswD4c804yjEWla5Q9IcwkSiN+kMCCaUcBb2ntYJQhTlkzi6msb3ZPf9YL6MhcrxjwFYtZsEHqbW8UfjmCO/RbxwFt1FhBOIBjas5zvm3lnd7QLWDKWyklp48G+Qm56AfP0D1PqBOP8QcGrvHV00Gc/kL+r/wq7WGpSn+PfD57YWQ5GrKl8zgK39R3uCY+drCZz1jLB63TU6lKt+x/yNLy1VwKlk6l0deDiLNZFIYI17ty6P44VgnNdnNVIXZUdFRNjSPnSyjb/o", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OYMbmxsm/0J2ilTL3xB7MkAxRzTq98xa73eMuCufecM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "h6a0+mEQ8XaxuuIpyC9IwOa/TgUPFhSx2UfO1pAophBVRsK/CmHTX1cnuBruOQC88NUP3heXAWKD3B+KNJZ6oIxOAGdqS/26/GBtH/3aMAPkXFAZ3C9HlpmJYuqNjGIWdec0wShRZk7944zAd4mK//xE9xNFwj48VuHIXYLvga0HSLwl/laz2OHFd2ob4UBX0XJfuHBXFtO4S+IFjIiqKKk9UJNu9O2sjR+4sORBtPFUTgyUIuAfZBsIdddBd19QzSqINMp1nYmO6PR7yOR71KNViYEFJtJEVXTcQC8r0Zw2aqdA9cPPHNi1cMX1oMrvN25WNwtg3rxHzdzWss24Q1GXNZbFoUQVqRjpNWpi7q2ba/NHNAeMTQf2vebCgSmrYb9AGfMGlKroKYmo74GIG2Don6cmD0E9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OZTLihENzVwDI/coqoxxt9G5omzGbdUPDHKKL3MomPM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zGpoepz7CBQlDNBLAaoCp3bE1F4bfxR/614lePsmm2g2pFjhT1d9GBCwC5wC6D6V5n4FXLs4qUajmepF4pqHAGU+3d1e+NZUDqZspEhTZpusuA1foIjJPL7xTwTeuaGLGmZpQFnIDRthvl/Wo9BsX+PLoE3kTHg9RIdonwm6EYVkmP+GvPIrutuHw8p2T92pEiYo/SJglP30CZb7sFmoY3yNorG07R3OZMghp2DTMOafW04cAF4mA0i+FqrpEQEXNoANY9xNeB8NbH0mQjL/UKQ5BNo6+jwJaOKieeh/HU74SoS37LGdxsIZ5eMX6i7JCANAYOxSSUes5GHKbsHq70VrY/Pg97ev+mKDUTO1qfSvFu2JAEJ5Met+SygI2MrADG8R00yL/kSRuoRMxbOPvNRMWSomTGEx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OaK+rnmaFNOa7JWZ+ceVsWgKArKGlue/dMmxca/vFwA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dOCNQEtT84wBPv36f4LBHJfg6qTX/cZRmfgrNZIQWeGkqEda4nIt6lwHO3y+X1CWutIczUY3btUsJIHyMif4gUfN25z8pR6m/ZYS2Nrfca/PeYWJPW+kBhOfUc9jwqfAOeP04SIjDDUAy+/OF3dqlUwvJatXOjknSZZxBuLkop4w4+YIPNk9S8YbUYeA7jJRihEXdaTCUCzXGUAQPMZfLK6kBRu4g0K6p9nMQ7D9FfLdoZ4VOP6BlbPR/rG5HesL5vXt8KxcM5jTJbP0GLWzJS2NRkyBJ+wnmzzA8rNAREHdhXS4o2Eicl3rSlFeOQxQqYhHQLw617J6cO+gsy5L0mfUOdbiw+w5JjT4rJ3Vu1b+CXEB9B87MXfiWODLJtZ6xCJscAwAGTiANDjywOkA7bE8SR6jWRht", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ObEwCyhLD2rfTehfDOxqHF/eI12nrAMWEa6F387SWMU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TqOLctJzU5Ot4AsHfANf8vwGI8tdko3wwCt8/3/7Kjkaad9EgeLUQYQHRoqs9C9w0W43G/Y4rpKr5dRSHd/nl+0gT4pa1pohAdy+IAT/a1sChsund0sUaoP49NjIrYOji3hBafCbl0s2TX6AXoLMsfb5IYlf942wyvgcJ+FI9vPlDNw3j52BlBduKfgTa54iB0y/pbEdTN/znWJu1YTf5vs7sIsvQcXbHi3/V303Zm3FQc4B/fL9XukPVJwqVc9PD2Rpe9/v1ToV0FHixdzQKfF9/MNoFwBxAMav0bBDcuzfmpapmqhWETy0R7IxWE/v9CdeYkv0Cjxx8jsTE+o3eR6FtZPWWankbioi8XiXpNu3iPG6fsvu22UN4A6y6kzv5py5Hu6ImYgZefXc6YMlraopBa86u/yx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OcAT7h4GeqyuaLr43cVmf+ybEmkPtdjfxoHlfMX9eH0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/MfLpZjwdzBu1fUFWZYOw72EKq+hYOXRzHLhO0ga2zfvHj/SgkE5fl4V/fP/mRsSQ5tTyPghUbtB2hO+oXZVQ9wY02J7IYWwRUZ+AadP8a4+cVFIdlBG68+hlNb0+v5HgLZ5JrQim08OQ556MZtGaoR8H9clpHlqjm+dk/uukLTp1FuKKr6vzbTKcDvUATbpvTbPkmcFZsIoV+8jP6an/HVwxezljV9TlvzKeYPfqYfmSEj28sRd6aSNmKTvw9X2L6Vv0QTCGvwM3hcUk30rE5Md7ZEfLIoWeyu/4RoSZxPrkyPlcy7d6nLsbUpXFf9nflqZZcMEHP0nOu5NAw3xn9/Vq4Ftj6EotmJ5IGgpqc/ju7LJTNaCnbW8eKN1v/5a9aPbjKxA0z6sugC72hWxt6dBOGYyauEm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OchuF7qbRFwb0BbiVVoRi51ae1qi9BIOtE+t3mYNZrs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e8haC8qmplCnfTBnJtkSuhhQw08NuU1hI/kXHal1CJL8A7gRDxrWhUdpQMSVYon2d9fzB0eFYRPZIOtC0AKrpaD1/Db1sSNiRmIfmJ7sU0mf2Z/EmdKCv9nQwvMticu4Rpfkvk/Xlyw5wqru1DNAP/aGUiyrEsWM+3vT+xEDnQDWN6DWNg/ZyJx92RGB+8a74brjpskt8uRkC7VcUpLlNvjxnBQBbRyhbU6F1Z5zKWSrAJephpEJx5d8sP772iYpYZPYLF77lIKZT1Ac19wTT4H57OoOzz4/TLxJ6IWg1lytcIifO8VAR1VduK4I4dmp7fR8eIc2XU2B9IdCP34+GbPS4JQjQzrACVPKKY+luXvFfdGlIwhHkjWMwHvF24EfwsisZGliZ+cZ6KvIuqtpurcIy1ptF2so", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Oen0l+fB940iI662VzJEdW8HlfX1WAs0hJ8+9xuEoyk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vCw0hRo3hHawG1Mt3zGT/F1TE8r5pwT+umRc3iyNUodj9ONfCRtBSzmfw5393kKamYCLA0j35Pc6e9Jy2nvMei235DEvbeK6U58pO0tdmuAcsOM9lC+/Csg8Aur2ecZcvDUmzdsDHRr+Jz+Vr/CgHTnZcg3p3jUcTgXop9HtQ1D7N+faVMUrBGdRvMQ5FBsPKRF8hxqnMRMcOtAR0XvTbQoID6EUF3miB2ASd5/UxDlO+L3sV2+Zt1UcWAmHlXbP8nt6m9vR3bl1S1DBn0PqtS2siBodN+tMzFQRztpddlZGOIFzZaY7w/V6DJv6wMAy0usH1nfqlE8SgCKr0yT/8k1rdhSORf9gl9VptAt0y5HPlLj97NICZpg8wA8TNhWNrgBkGDUHfjBwvkBmGwM5x8Qj/lkRf07T", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Of+fq+HwOW6R5CnyDCNLaLF4rAOAlqEHm9CwYZ+t6js", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XuB8BXPe/GD5NMW3TfeWT7E1wks69Hi+S7io/J3cdEGWIU5yQePCc4O/z2mTCijpNZiBnzlEQFth1EQpD5JX3Qt5siBq9OjmCMC9P05+du1jSQRgjuZwp/gASt03cqJGrNpuzyynEdpQ3VAY9ey9rByVvUDUCjSFmHc2M5pOezdIlgEThniUICb5CHufkV7xkY022gCLRbDEaDUSgihg/TR2bePNT+soe7yhhz4KmymEfdLmY4pTVN3w5Ua6ZxDXnw1OcWHwsxz/yS44tBM25QGX68+zx5i4SwFez+iZkPxrBJg3QJe9gWYiffb5u8SQvKfpR6yExnDwsibwsuWwhDM4uwrfgbslpcTPcEwGWhpXvfIeDw2IbUp62vcxOzeW0qbK/1LWsHpHI/bIQUQRvavmT7tCGaHX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OfM/XI9mIx3E41PxYzfwX5IAhmCJvAsrUao/IXuw14M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8B5MvKxlJOp4HC7SpkeMTtUSPTzZ0Nk5Ua21OHCOBPyzAbAcELZXB9V7rxTz7WytevmHU0NPN/Rfp3tXC59relgJdhz6+AqAVBKvEdPiIg2nIurloFGBQ6W/hWjFcWYCM4YZTOiWYyMaZorSF1dsAzvn7vWcoGuR4uf2xkpMaHNbO98nPL3/U+uLFd2W42Xdndt6lCPGhfkdOKrVEmwFbct90eQv/B5t/1Wx+W56nf5FFVTWMsqYg8o3lY4kGDpqVv4jUDeuQlPssTn/jLwqS0t25P/c3sO1YSUUOdc2WGIv+cfvQWITJNqxtpNChtjm/XYmBW4K8dL2jMuJLJ3RBwXZnOPLvBX7f9gB+rJr3+EzM++ZZ/9slYvgdU05G9D9yuoBtbxqhZNOVtrIyxs9Tfh/J090A1cc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OfP8qCFcbMDAA3SX9I+LWbkRVV1i9IxGWyh3WRTrkdY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/xFzJ+DjRQQn5LlwNv25FOBsh3wyvnJ4FJplcdUtJDrDxQe6YMquiyLzVVGOj0rTyex+Ila6dq+60TNEJqwZ06gNmnPuDQgQlYrAd46JKyO1iFTk1kW9Opgty7MmHGcrw5RNU+CtetuO2L+jzCKhAxASzgiDWuqwPm2CwX11HBqIWb0isLKA+LSS5FS2RbKSgrr3xT2j2BTcqDMbqLxHbVffFmIcyrTt8NLxUpVDvhxbwQhJvHtHGxssCZJeaHl0+5mtJg0mCEuXDYKnapZr4Inms+uhqYYYB7RwaK55hOHVHcechfoQX1PkTYNe7iLqXKN8ws1cush971mivXH+QGFvpJrIm31bYJ1CR/Cad/Hie+jAjc30cssjp2gHz7xVd2MMuuMpvHCiiorNKKg6O7OnotVZGZ1+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OfW/i30c/6gxKoDoM3kAQWcckG57Vcw/1p1pyUvo49I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rts2kmG3HdSvqGTYV4S7z8D7sSlqiIUtcO8zg20U1flvchD2zupoZnuHtGffh/IDKqW5DY+VDSoJTDZK80VAV0Y7/t79ca+zY0Eu+NRcX+Qbw3v/cIMbrdxjA5wV5j/vX5PIBAa1pEmci9O4gTYfKUuLtDAt4c3WnQoyx4Je1V3RVr31OM92g6/P5xD5uzXMru5gGuWYMwb6AQJ4HzPy+fN3dcTixt9mMXc3tpWSVbAigvBcI6r74oEXZax6F+Tey3S6cKGuB4QtodZx/qZwywUaviqG/fFsqO8Uchltt44qPwLAsF0hP4n1u98Uhd+zS461mR6l9eeT3eGEA+gIj0XYnIz8LlWnhjgFdYWE6mm7dFCtTJ4EYvG4dOVSgEG/FOtVsDR5QGpOb7lc1/OCBxtx8zLgP3Fz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OgD6sNPkICxZLCoAE5LkK2nH7SDq4eKHkeO7XNfbcYg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MD5fnEYELZ2WmgH6HPzBf341+YFQv/P3lXhY9n/wWzHIZ2RwNWAXvnF6ZZbS9Q7YUbIsJ39F7XzvdCThpX1sIx0MHGeiN9A33hQDA/SDpPA3A5npjPzX+dZ6nzLXfGLFECLBd5OH8p1g4u/PNqhHkz3LvDqo3d33f0jOmPZs7p6/c0AkEnuk1k6iwG88y77gHZRZbX5QILee3d+ZTYDuLCnquAo5jGmCjnjLGpni5tUYw977iuHD6efGI5HkV2dXzeVZieIKAquCDE11IaMj/zu1KyeFYlEfPYfgYQjoEBCr/3feaqtbNHFzdWNEBhkr/B0FFmYPfh6VyB68W//0P2Iir8Iy3tv70QkL53/VdUiYhYc9v9bV7mtD0X75sUVHr0R5ic5s+WjxKszSp6vKm+BYoL7pkMoH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OgRAiQP2+wPA04555WnSKj0hsSqSR6UrBqpuNmrHlJE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bdObgHh/95WqyJy/y2mzHCNDkWQw4FRViiMVfWPT2Fxi2HRy6eAfwIbNSVjvlkOeNvwch2t+G7j/QI7RwuwzXa6l3jwEHjWdejT6k8842cQDvVh8NQh202al5WhXkEqGepCcKRYeBz6hpjpxPtsq0LBW9911gwFSh361LGkD5Z81z1qVHo12IiZvw5DLkKMmriaSHa6CnEWs7tQErT/fjq5IzsLYB49KMpjVdLJwjZ2L66V7ee/Gm8/sHGtWSEwBHo8LzNZaeHhslP2kivKSlwvs8x06IXdJnCB4fWkxKxgBdVZgYuR+dIjgZfWxwZPxc+yZ42JgFlq9TBSbW19CTjQS11KJfOXuSmD4AHr8t+vHamfgN3f99J8AJXik0BiKYGeoJiiyF/w/CpZ4yimtKb0+Cx6t8mHf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Oh/sao3IKXHct8Q/1ulKWIaWOV/gCwG/by8ASpAxQys", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VwfypmzGRNulryQCgBbjs1VyG790qk8uNLZ/0hU4G6tf+jvvER6gBOa62agC+w1YWjmfEoDTwXr7u5UJQz6F76w+Y6OI8XP3fJmOo2H/EUMFXnqAGYXUyNEu8tXp4FMwQow33z1yEeujD5zqQwZtrnoPBnsRSog2s/AIKOl0b4s3kurc11G70XCu0kjSN39ZHH7F0N6v6RaWnreVSojF/ut2UzO+iIbsTona3c99R7i4p09BSQFm4BaR6N7I40ZGxPmG/1vsQvPYeuk2l80AKU7ZHZlvufiNKbpDEzwc2EwO8HcgClwHpF3eyWop6E5XoYHRKigVijzbvft3gj/TKs3/csp6lbA+/lmyuRg67L9Ywj191ovoS2h9MPmYXD8BKpe/NPzCZUwgnNoADo2Z8vDo6qKjpsjE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OheAF6LapgF0IXZx2/YhNFbEaijDDkqOAXJBrPFIhNo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c+KGNOt0hyQVy78f7d6xrZ+JSOfisII+Ju/17ycOGG+pl07AAloa/f4R1pnkHOWHp0OPJFteQ6w78IfqcF4AUYW9waaTHpSE4yJtwqR6MX5r4Rcg4ZKOyDIQ6pGdR0wepmddZiZ6ATKaWNf3DttTxLU/J7XgnfY5jYNf1rrf3R34Jadlt1oMtSOW1uW6MyVyggyi2kx383Gc+R7pS+3gflKWclNaX93DfPoPyPilpBBfiCHDNTVvg1D8SN+tNaBDQT2lr0fH7cUCyPL3hs7sfcT1cPBOqv4+AmOpHTXUqg7d73XJNQAIf7xtceOG7LP44C90pKRC6Ze4c+yYbdRvtw9cQY0CnnTRiybTqO4w+2NfPFcDNjoO291zytYoeL+vapRunfby5kzevt4cZfiqJyfeyx00OuaK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OhuaY2viPaPZowxmytHThFT6xFz8nDKQt3c08JKQtqk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8ManDwkkpMuCAK2wfCELYiFmSeB6ZFgk2/bBoy+lai8ZQODewBeSCa00zFg1F2viDxLFdmTtzn60wrQW7IeJPmTgE8EPyy2DNoTgBQCv1VIZ2k2//yFymCFiwhopfGR7GnWYtqJmGE9S5zneIWzlpT28tdPBsrveY9xL9lo8Ac76SkrFDlL4bz6K+GFhOkNpLN1ovlOCPm8U2JfgYQ23lbgBDp7t7lxI5gbrRCIBVMxbosSPzY/njuNxBsJhBN0ucXvQcv20dwXYZ/Rcr25tiTAzyR+bOa/40tO0Bj4eICxR2VFakY7yCn4L9ZwG2AeOq+7agMUugtXl9kiXxOdeGa0TD/Oa96WOoKq6ZruRA8WpPpg15cX5Xkh3ZB7PCrlcAcE+9LB0GNNDKGbqxWV5y/X+IQyMOkp4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OiHlEpgRYlJjUj51yJVWKA3F8MbgYxPfLWLFh40JXhQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Hg8zvU3LGcKAc8MPOVijlMO2OU0OhpgkSF1Mv35x91T6ZUSuUfuD6Uua59+3HV6eL3DSjVQ5B5yh2Qa4Vmq403KR4YwK9ABGZAZwC8i//66TXLj3r33/ub4RWOeO0ztxbFNRM2gEH3+g6d3ajhla6D8vXTyqTZeY3VhjLVJJiGcuCl4FJlwI2xPCYH0v+D1aTgZgakzXSZ4KpiGZj5jrP63M5l24vVEWQ93KS65Eu0xb7kii8VI7qjQUD4A4kjb6zuogJ/5DoP7DMv9TiSgOMgrEwtJVBAs7D89uiRIow1tLibiEa0fj5uzZk0XwCR8bLlTj38vFyLwlXw17JUL5I350ksERDbUvBRpucxaWbobNPqeAmrg+/uesMzdKRYHN3LOcCx4g61gpVmqvkqI5ZaqAPP7+g8F1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OiKWRkMB+oQ7LHsgMtbEo77c7C5/iDb7YuowxBtEddE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "84tNG7LQ1MlyhIINIXcJZ5B3uHjSeqI2wA8PW3IOnyNSwRDHNRZrNoVBZfKoJRAQt3V2kGgslyvxEPJ/PTYM3tc+CgRoj9vNkYnYGzPL59aH9EVjbwGaf4W821vKLPt0lc95O/Mp8D3YWK4cJeNxx6lAx8WASaZwAPlO34bbqYgdRCu0kvqAMJYnKFKM8/z9L60VHUievWXOt1nPeNgjOgS6MCzoYsXzB8ct5IKixPDGUmc/4k0itJtRMVfFyzDQVDpQzlDKyATiH4yg/ylMu8U5CTb6WvPriCsItmyNhFZwid1Can7NK6h87jN8/X5yiSredwMA6FWPOLa4C3IqHoFYvGlkuxw51PHL2QCVgVUOf1vVy08W7iGFzZj+awVYiYdLOr7wYSntzekjN+cOOhO0xs1YxDV4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OiOAFwfxFP0Xj/eF9pTt2YteTp+VLbVwTtf+r4Ks4dk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vzvTAUUlOb+A6GWQv2zCNb5avc0C50tYNr1bVUclIbn0nG7xSyThCC8XDBClbK3UcEHJkM+qdB25qRbnbnyZexxRQcZqDcTkHCDor6HJDnzk7ozfB3ngnsTehEhvzGT/opg+w/f1BHnsBgH+eIJLMGi/nbSC6eCXWh2aMcRqN+4VFGlISaQAGbvndE2CKH7FPmVBK0Dcjd1Ug0xxyuOrQ3OP+97inNcqK3xqulz4iRXzRG5bZU7r367LUx//Kc7CmE37JLv7HuEExEjKeSyK7gfIHwVmdfJaVdccn57oFDAIRTOGlG4KPQ54isKWDyaV9uGpsTZTbfAoQJB2eJrP6hV6QHv5qPqbAiz6imBCbwO5y9e9jkC6XT1SaXAJ4nbrpJr4Svwc8WUvCUS02d86RoUQD62ib48d", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Oimcwi/1J4CcoPUdWo3EvM6bA8Kf8Fu92Vl++VrHuYM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4h+spEm6DedcvRMjQUc/dY0rEx+HI6fREInq0NLpDd6lJOdyoQBaEIz1N3udwtnFS8cOYQD6LVJgWD859F4HEQBnWI70J7JBP+W71bAtZ6j1E/PGusUgXojkD9gfW+4j42x+8l4PSqvXld45IrLDfPgVu1Gxg61dk36A1PsrqyCR4JhZBjkz7KGwTls3L5orMEK1hvJSg01HcHUGsVEryQMrHxg+Bacdw7AuxKVk2kvWyEpRvnNNL5nN322HIynGYtr3y6sgMEu7DSySkCYQBp9C/5LJNlKwXUcvkUlUSCgWxmRtuxp7wJbe9i9tTr1zmDiTgbugvTPkkr8Pg3Cy3Aktv0H1fRZttPbprqJjzJx9hPMIKGQekvs1QRypVsGcpQTR7O8VUNdiCcBZwYbbJKr6V658npA8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Oj7+tod6aXCAYHehjaTwddgEMCmYEvMemzU04m0H0ls", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x3sMiMDW1jO3cs3qZCqJVKRwUyj6lPPZ/OM00Jy5wXoYmv4WGUn9aNignd5ydK4FGjM75b/XAL45WB9p1xA75WzjtWB47A6hJhuDqmQ22PyeLCBQp+oPyPSQSZE6IvvodqeFnlkDo/y++g5ak/dDnTlfClThLr1HcUkxqh8F0AhNz0scXVXRS8E1wJAUcozd8OlDBdZ+5llPxa+Auml/PpdqbMLr2D9wg81NUY4GdSaV2NRlHEhmonu4RorlU/z37AgJikIWY/VuVKUIOchjNMISI7reR5XUPQ97ehV6IOtvWk5TAftrxROX6vLZeYwFqWp5WD5juAElV1ybdeCylGW4G9JZnTC/KzKq1gLWcsbh1DTNwsbQJKAbLaQ+1yA+FaxYDUYT65mTMRvIStSQEVa3oOc+dxSO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ok9j9/Weul5Vmrihpzd7htglJPkIxg/MtkgD5CF0VEw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f1nBtkpEb4AAhctB/f3YctS1BIg0ggVlaE8Evrz8xt1GCOYqGBTLjqBI4GM0zMm67kNWuXzUbuBxm1ir6ZAzccYe8/Q2qS3lloR2+9bsMXhTy8uLLXnBvtDdNTGs+5eKepuwBZI3z8bLyOSilHutHsza8pNFXuUh9oTowTqvtmuSnEXqM2/jkoO4OP4ZqeLeBnJz+3MHcIufNaCzGebKCU1zeUWV9R77FaxaJvYyP39EHcUvLjobhCULkvVooa/BiBlehfAVya48bS93hlwdSE/0gaq9lj4VDjl6oG9wYaK0w5NuIyLcSCs3bZS9BgNhdgF4NzM0xb+nG2vzrfIE5+2EcGGhxHssndWGP/HiOYhdgIcBc+f5kMjVBh37Vnta+ci0O0faj4JDIdBKAsSoSDo1AgiW5TBi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OkFDbm+3MsOKjFRaSW1MdtgTBgZkuYdRbnGWg+Gk6Bs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WOEnaqTVb8MpfBbVHrQNbsIDQpObFHBzv7pmokrmJogPlBsE0edXnBrCoPDjoBZgZxoX5QMyeKY4Q4VUOstZxRXbfd6Fe0fRaXCXJSfzD8cN6p6hxwdKj/zsuznjBBQPKoCgZDHPLATKsqTihoLpQuYIZI2l4/jqpdWWllkFt3Z0WBPAwQjH2y/HRu8Sdl5jXmwlZrBIX3RP/t5UwKbNj7D0xSD8zDHDo6tVV9J7E9OUrQgJUMfaYsqQtiwFknx0ePxZXUuRQu2Hjcs7/OFf6rtUMOu5sJvzy5kxM8W7zvtoDRIUykuQshBxbEH3jugq+QtiQ5Yi22kcsfSjjzJzS+N+IxnT0lMoIa+oQQz2hGjGPW2mHL9wrqaBiOHYZuqNlD+BVjqNc3yWAU91nq0X0ypGHM3jmqmV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OkbzqyxdMXNI09lOw25//XTMrgBz4RyCmSNMwSd64vg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mw2o2JWs85Dm1CHUWSKNb2O1vs2lkLrpKfhWIYFTHY6f8myin7q0aXhkVKBsjJcVaVoJrMItWVumE4dl/oodnvEay2ze7gx0YMZHPIAlRtjOpH1w64EbVyyd8dWj5is0GEgXETlsSiqiQJyS45dLdsYxM9l6C+HfCFHMINncpad0RFqQ2YS29tMmgyD6++dvlvhhiNb71B/Gj8kNV0N8Yxt4QP0Cy2w6aAqE2cYG5MC+6PTrb04mA8nYHBwu5Yt5b3FpAF2gL1FGyAxSvanpssMWblmls/Mw093CuWRf+PuaitvRlNvZkuU0LvtEzi65mYZwec0XnIp9MhtL4/VWjSvrlLIFUEhA9OPqe5hK2rgAaYr77pIX13nRux7cckD5PwgfIx3pkX76Iaxoh3TcFql++eGwBN0Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OltT+2wzbcNwVoEgR3Y5TxphMzdeSQmNVWLwYagESZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dmf4+LkpD5KiGCLqf8Waz5Mo/MJHx1Npeji2pVH5jQUH6j2Juh9p6cQB2GS61BWlR77Bs/UdDis5J35FFPHyrr1y6XQcIkauLGshqgDHxWGNiYV7Nk8saXEw73EZp/hc0VCO0kSMPSt6r0P3ed91ObcqoHhXBCKuN7Mik8y8X16phl4laIjhyw39+QjJZQ9IPFdYRIUn41ncymyE7Uc/kYTtiR3mtSQQ9pqC+uEqAtO0KGOhcTsPIPSt6Akhi7E0w+Jm4vDGwj2Kf5hu2diTwPRrX/5hUI5XUdbsanet5G3PIMQnjZeUlVOnv/6KreY1eS3hhljnBAeSWR5LbCTPK/d5d2QVMIXHl9zQ69OE3kXhUdGnobwswHg80H0pmCvhRx2Aons+O38Te3hv/EjE5sQm87rD19OK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OnVUxCiNmH9gCkWkeKt2oiUdY782Q86e2MksqXgOWw0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5wqnV72Jv9soFGG589oG0hVFcV/3nlaTcpjukCELpvrjk2UzvdNciqDrS2kzJNdFrvcGaJjzRda3QKB/1IbOlkf9Fu/7sPyPywEHQbAJFMndSw5MgIbSg9ThjLiU3KrIZ9KYCf+T8CfiyjEtyrHXIRMmVFQC5zetv6AAtzf4rbwuseCGFF5fFPRYJp3Ok0hqwsK1dlLHxM3VxhQxrArzB2m8yMwV0agw1v/YBPOECDSOXqUzmnD8EYoqXsPhm7jIlLl5rDkVsZ8nDC8O7B9fpJSb0WN/qc8P0ZBe9dw3UYSIyqswGr2tF7VmGaP3Zq2sacJxltjbbPJosB+ASaJXOwvBkXhnrf8I6L1HFu3ukfMgcLuDsS7e8A9+FBxt/3tYhA+UwsG6mW6kAK/0SGzhPYKm5t5lr33n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OoTGYDePLYDHmmVzFB3nWTuP4Qm3vZ4wnzq6Zr6gcaI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ekw1TWihXPanISO1Ck2p2XoX2u/4eeouTCFBFsKI5It5pfrkXsv/tUYyNtdEYmSEZ3wCRg7lC/JOLFOYU7vRMm0T9Q7LJHQf6esqJ401VTL2IzNuayyBYzkpLPtKtMZQfeUyzDYGTWgoVFyzmfrzZ0eIkHpVE31py/bf/TqgbeWric+cprvMX9y8445i6hV6R+zeFH1GUZ3kcJfqrWPquiRYW59VKTrmhpeUAqZNIT1ti0Uftfv3ey4D+b3WAgVtRo0t/CaS+IxbdGKH2Rf3eucAa5BQXIpkbsBz302kPDh7NJX12KrtoxaVzwP3BUH95EbF0ZSHEiHTBsd/I06u6rCxnKgJf8HBo+odzee/umwqLrqJkbmybK9M3PhrJBdPg7QeG7sucp9WrLU1q6GOnGRGu517YFKn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OpZW8abXlRU2m4AAD+4fx6q5tpZLYRwQni4u91fyKOk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EKL4vwDkO1C3jS8KYFyM8iwXtsRxa4pTL9E59RRI0eYsyxlTe+/ZdzAuiikrGmFGHmFi74KwI13u6Zs7PmMWVtoweoLgDmVg4P6Zk2+Om6d6xxNXgbLTxxqmc3DZpzrOpcYU85JaeHNTgWorpOybsEP9WrKASF8MkydW2njwyT8YBXYMRm74eEb7wyeaMz04c3IfSSIKZQ/5NzBIMlJftppbjiG8davzkkdaIC8qEVaw5UgATSPX/jgr0LRj7kphw91zLNdWkSgiVjuUfTwUeJof5xUqEH+1fK/cHqeJM+cW+xfK769WAMuAB9h/wazeHk+POzLknDwRQ7g4GYkskOAjkYRvvMxJwXTPn6FQvPLZbXETu8qpJYUgx3SPy8KDoSNoU5xW/vHE3wi/pkRhqA1IiNtXZ3P3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OrOYLX5sAaf0qvs9HwU4y5VuFRQ5x1Fv8uSVLPqzVVw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8F08L66Lad8+eUPoQ54xFxyjDONobkKMGGWw7r27AC3slfwJKjUbPeQ+WRHy3pbtsMszpi4zveuRUybEnd7s4Qd5aB6ZfdAFIdIjaF1Sc040ragIQZY1ykVKUuG0PIRiMncYs0Pmcs3bvBN1f8rKJxOLSMOjJZBykzs0SBzHqiK568aVurJ8wsGwwNiTCmR1ZeSA2oV8RVt7F/PhL089p0yntk2i6QACrWcqFvAgqW5dWHzkAUrGF1xWIx1K0QntsQ32B8zt280TJ8x6Z4+X9E/jcJHI8+RWFxUh0NiZrmW38hlQ7AXpepQ8W73ni4LTRsugYJyo5YrHFYapiakRL2a9BKsBERcVHE9c+S5lhxpHhtr92Jdl9uo78Gq+mIr/NlqNxH3ib0lRsswpcUodUdqOgUkoN1mX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OrqHhMR20c+dQi9aezQpzKT8JLI0AAR7Ub6sMlLsKM0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yl7hLIvqAM2FteEiJqlLAiSP/kfML1d/xWj59PLx0qLm3A1jVeDALn7UfOlDT96Oyxsp2Vk1v66wDly6NW9WyXOUUMyGwAxqysSIbQda15mcyf2pOt8w+mf+A/dBOaKz6FCX2xiIACGdqozp6LULzdOkbgjLCo681zIAKw0aAT+ELOrtdPydM697ay8SlwDYNY4n4LnO4I3UynyPNqbh3bDzQTTm8Sgu8fGp9ehrE+13gi1iX995I5cViZcBPO4mS9LqlntNuRcDiBxY+BDtelxPtP/NdLA+Hzrjnx5WzVge3utyVVa/dCmC17IDy1wtrxt8BRJpMwHBAeDB8RINNvuYdsRLWOPvnZHOyoG9WtW2Hzf7oWpcE+7fedk04WCNBMPbc2cXJGF8NJDPSy4wwFADGdxRRfUu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Orw6e/wkqcogTxBOC5+4p3v2geB1VCl1NPjw+QKYywM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OU/oBAD4l8vYSWFgyQugZGCDBboZMxLCQcZy5kNSaAnU7z6IW1c4YkzPvIWVcxyhgcqbDo/271QogtstuGFjAi9FbUAvRnP2KytMAFq8GHuQFzDIjLyiC8JDsUvIi/JBTFyA2EE13vPW5A8wJvzsoAo++ktExY0I8hDtnC8k0n2E0YgGWA2+gyb4iXZBoRZp9H2EbjQsxItLihQrc8QYYdEUkglrODIDpFhbyZXdnFMfovLqLttRZKhH/UVJYM7kxih6AWOPeJuJHEU/ZBhrThDzs3ZSP4VIBV6CG2h6mlzKbE7fm2rnKDy3Fo2Ma+0h7X+R0s3dlqrtan1aEHGjmCihwLWgwVLY5ZLedUOl3TujshGvnl6GGJszGkzbZY5lJS336RrL4IjEL3Ei55OtEtNBe7kxMAi1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OsguK472aLgUAJ1mtZPXI7up6PPOAwbL6dQVuSmkLt4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yvqcSkWa51JPccQADW7eKA3+eVehTnbNXn55642eMxlJmPtcqz5E7V4mFxXauq4H7YNc24SxdD2NrEYUzpnVJYpWAwozjHdlOeflFNOODqDjEpNMk9GwqyNw7ua0pZzcanP74EIv+xTjyC/sqPJbMQouK1Fk6og1vPLR0U5xyTByJQceb7VE2UxyCYkARsGNg7wLlJUNL5g3FYsbh8dcrtArDwgH7gYIYwSgjAn9c4WECYLHdZFkYWfPyXkIxLzKQKfwiG5vRBWQETfPQUzY7pLjZjT9TqGSmtG342/wpWPF7gXr50tWEAJpWhjaV+ecTIgExfAd8EMOwcU5E4WU+Bp2PUe3OBSKz/oHh7ZjPoQw0OWEaIz5TFbhQ210dQ5oHocrTuPQtWCD8rnIcYXK3gAG1IWnB7Zw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ot8eqoEq2TIPsbcRoNaRKXbA8YFukj50Kd3AEVDjghU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nwo8cy0+6m21LfBW42iTqqmTpZYyPd7OVeG5fyQy0phW8UKN0M7uDvuUwGz9+sYK2lJu/Ai2bLraBSPU+hcb6oDcnvHdicRB9JOJcajBnGyS0iwjqrE7BwyacbuEnc375Gj/R5AC61pyBnqfOkvy+VaewjOph4bEzc4hjQ4oFIHtVr7Evwe2oSeobmX1oWOmC5TizIMHZqW2Eu9Iw036TAHHYPKct8zrKP6xMgEkkz2V733tWBf2pQf1Zi00G9ISw8vHyXuqp886Vx+lVmMd9wr6jtfJnM5sQjgPQ0suldgjt4oy4b2UvWbov2zAZcyedoAKOeKL56yLS+5oefRfZZb/A7r3C+W/N+L2k62YacFNazMbKkyTd91Yh5oHH/LelUGuvs25lz1F9QOTQhO51OYdEl4eMuCq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OtZw465hSFWDW9BtNd/3X+3Ffq7oq7zQAnE8CpjCbRc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "D9Vj3TMc+lTsaaNlaqpXvOUR3qFfQCT5NKNLs74PcaeQJCtJCon5PLkP5iK8UNCOERhs1CuHClx+Uzd1eBVjaL1jnFWtmL9sgzg41lG5slHl+VGJQ5VIrcpddzs0pp62xT1s33TnClZZ4DnON4G6prcz+4uysYwsW0IOnAApNyBCDfqO+8EtoU5Kg6TGjJrR4XGV8ND0bvaD1sGyZEZnIBU7xEmg3EO0eq2F3Yl73815DJ3gBwz6xvlWEnlRNsikil9EeBvRYLtHJh5xX7YSweObPdmNTxEtOGgYjCa4B5r6f2vHMDcVL4M2aI9dVG8gCR2pv8MXIFdsPlOi4rG1ix9CNeZG3BnDs9w+l+bO5HP26OUW4pD3en4ESYFfINO93iT+sIvP767MEcBbzbXz8DasS08EdTUj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "OwchnJYD+jQxE0VObvRlJ6NQ/f6gGg2AXsFq1tk4piU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EqyA/8Y5CoQuugR8F71ypRqJcy9xtkmhMYSV5GJJWTrIQPDormKHdIuvOXuQz16jfsXZq2Ew/2rdWJIUG9YLMnqYO7dr2Ks5Aj6ZyzJx+84D/J2+Zwo/xLAh2w4PMMydL1GZDviF8bFUElt+A5wFLHmQuwTv5G9nkTC50F+JwTdS4BEvSkIxIbI4gJnUhC+YsEusLU7+pphzoYvmwZCb8PlwcvVJG8WTO6Ipg1u7tkM3zNc0B9lOuwqS9RdwcjSAvlMDDl2085It4JxN8ugfLr1FwWBbh4iqk05UM1FcTD1rQCz36SfrJHtJljNX1G4g3DX+oRYE+ZUbaum1wTrihdWGvqxzoQWDuyCAVWpbXjOE330ZgD9nw1qXAP/NtNswPZvvx1wJ97ovDcs03I+tBv2hoCcLC3DY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Oz3C8LifCuf6TCtjDeiDCgVratodRpdJ3ncKJ9YrUb4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "h0/h2uugJl9yL6R3NcLtpHjPjMElrGBelbew4eU5sPgsqtqU0Pe+sIbSJEpNlhYDALR85Cd8WRs1BMW/HOkaO/L72FCJy+G4woRc6spBCK4O1AChMZl/KdCLTGIIUyI2kYQatsvFFXK101n1q2NUkzagg8XVScd9sFqr4wlrbZXO1wFOZUFumajVxisXVpe0dRIYG6tiMg4StHL5On2wr+whMuo2XBsNmg4AtrbA/K4KJvZHOIFNeNjosGP8XXQbG5P892KW/FjZWVWSX0iX57QuJr+7i3HWsKG6V5eWDWj8mCNaycfHEvteRr+JvAWQHw7Sv7KPGFoMTrNE2pR5bP570F2751zj8mWT/VZl7ns0qhBxpg3V4u+xJmPev12SaV1lf8sIg8xgcpw56YPE9/XdwcEcof5o", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Oz5gkjhBLS7jeFrSb0uvkIUovcr2+FwI2tLgLDGhiD4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dmqGP5Wdscgyd5FTCeMyoghcgnHCoKGfWYUD33BkXTVwpv0I7Wz6mk0yYbSSgixT/VzHUPMozQikDmrLiSdYUkGP+EsP5z+FDbaxwisJ1cATdjezwCOtQbgeM2X17DZdTejmIChxZmd3MtyTJ+2OSikhEirdVPljWbxGOlk3tAZceAN15OWnKWFh9FGCc+fe7Mt8m7+m5gZYMcNFDGc8DoUx6AThD+GzfH20MYnZNDxJmw2IBpHffoL7dDCeDIsKFgQIkOUNz+Pzyy2khQX+VF+t0JqQFO6btKDK+yPiq7X4xyheq2MVcZ0o48kQZtWJZVql6SGlp3aPBLklYT8eoZVG3jAwLf8M8pxbKVtjnt4xmOKss8D8B48XeiQjiGs8X2ymWsrNcCjIbEaB/XbMvEFKOGfj7uc1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "P/1o2mrjmoVkfX1iml/vgIhG/GrVikYLCp8wGAwEoak", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pBCjo4yHcvi3nKi0SPCVE6ZBe/Y5vvmz2ouxfzoBio3hKuxYNF1g1BbvntEr+bHADc1iXQ3u+wsHO8eWf1qlgjc+1iwJ8unl8hoZw6IiJFEMXOMxEy7zYEht3HykDkQmphgTa9dv3GzQOZ25pu3FwebWlyn0Wxkx6IdMP6ujWiFeM/ccN1T1hQKPQQpGmJ4Bq+LHji3jA1HIi9Wz0ZDKO7U67m96ZMSKS6a27bj1tFxp213FJ4vdTWQMpQa7xugmENe9zrGc5RRFL2/08WsKlhOV2tcf8iKhAqHm5+haxdSfRYoj70P1pCzZyGcwCYZINO+gb4pdV/spc/AMyFu2NVmyeg4GOv0C5Iy8tbocgw0IiAyB+d3sihXGhDL1e8obxEfk9LylYgmcAJYuJG5aVCNC91Gr0uYQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "P/hxNlUf8DL1vY+dYtq9BLSSd/DVs6ZPLLTsYs/qQEU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wBRB6naeXww9sGHWhKyV5QPHaT6vcb6GW5Q4b+kdzGJj2r0mZkamAcsz7ZQBv7wbWMXdXAQZoZ1VUiTDelO0wpmg7WCxz2tmy7rsdvvATxbky4Is+TbiysJzOyl0R6fxgwM/LAGln8dZrTmI73upOkB2cHnWF6vUR+DuuChyEh4GnwN6srhi3fCiaO12HILNG/ew0mcazgXi4IdAbXtyhp/5V211QV9L4IMoextuSnh8qOxO2+S+25izct7LIlldE19XJSUDlmm8qO6QpbQwf7UJzyNWVHjc5k5H0JlHiqB5JK1d94ViFBOg0e2NbIptnxlBhS3Qoq3hf+nRzUcgEw3A9m25GWBEB7HfEUeg1+vVFCzSAGyXQgTVDWvezQVATA8uvXKVv+5Pta2BawJg8EU35Cum/gZz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "P0cWYFnuhLmUc0LjXMis0qQyrVsiwsQ85eZMzUljk74", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v4/jixeD+KF0WyeOydofxVtgfKbFW2Vj8tN8m3v1F5IX2MXNxFfBxU2oBlPpXAcoS9e8DE2ce9pITuzLmJl1clJtfg5SS+4YFo5fJsOdSTyH8ASvhYdAQJWFjqjehlrGDnvv9zp5vHNG9VYDvMzNlk3pYphVFayqWnQryus64lcBVFl1Q3kTIQ/ajoGZzfW56U6hycn+ZHTDqvaPheYXYpgt9m26lTNC+CvDh5ukpBiqrrZfJ1WZ86gbwZUBjpDHJLVJXfUpmW9OHDMI2F2l4kawNl7LDntfCSYNiW5DLVirru7jO73cSQV5Ti6xeL9639p2I4wBAesvJNl9DTYUr1BXciqM+bEVMIjvdGgr3K8kgkZjNMNlThDKBgZcg1g45x46E5nMW4TNkVWIZ4pYC7+bb5OTRg8N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "P1o/r+IWs5HlkVKTAeldW6xts69qXijRx0alpjF2xoE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5JpZoqepcz4z2/WIfdbtsbjTM+OTZKm7fBE+Txl8ZlH6jFo+6SE05gzrABUXCHEHdtnsBXY8DjNKT8FiGgdogtBsdayH/QzbpUQLwlnSqLEFAg3lRCgxfkdfk1AH3Pdog7XRDzYZEPuhHpVBkWW0y0RNMCKtr/HmiEfFZLeHHgJKSXbT/uWHBgSPI2SclrvUch3Tk7/ZPpRFA8KgnPb67WMbIL/UlkmF3LqpYUMAKyewLy1XhzIarqQtBpKgyqErSXGqqLcP4zoMJw+okds5hRVpRW3Lx/aRgYLAbd1rK2h6yVuuRtpOcmLois47LcXbOm81DPvLYlolX/K5r/7YXYn25M6y6VqlqapWZPbUU/JeYjHIGigkQbPJ1uNuQN+cAOxievcJI0EudPGO32AAvQ33Aa7Fv238", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "P39K+8JRPHwq3UBOzmyisggVGOWLU1bdy8ssdHbA/Zw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FosgTt5RARl80bTAiCqXgw8D9GU1Zmu8fBov6SYt2MlN4BgamrHmLzg1Ttp5hn6eKCgHLATi5DatA1IHeY37v8MwOy03097J7IlWhxYxVd7X3X0ls2eFm6ht8ISMddGGS5Q4qr2LGw5V8xJFT+gaRzPTL/890fI3LziknoXLn6gmjXjgXM2++scRjNFLat4tWUBVaU+DW25zrsXdId245LhoKT5jXaH3vAb8vq0nttROEgmDVkmw1UiLw/+oOZN1iRVVx1KvSbes4qPVWWh75odjMxgdwHoGdi3JY0WaEsmSZA7lP+Dy2anomYEI5hkFGC/UvxuS7kvn8kh9sZX8TGVUSwy3kT4clUaqulTi171ip82TdIXv0pm6xm8dDvrkZv1qszvHpDJMubBxFNCb3m94XebFXJCX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "P4u/BU62k7kzUlrHn8QxV539YEsgQGE566i+Ly58zhY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "30cnI+r0aLkjbwmKukJH0Ksh+xE8p+2LJ/VyW4r7EpGS4xaeYzNNnHVMScDD4rkc8wjiFYutTsoP936OjcKV4v0dX0oClHAFbkDSmCux4ZygE744/wmBHeaJiOklAa0cII0Wz8hLdh95XJJ9E5B+K4NDLoGmRz/Bgbc+PRTK9z8/f+yiYBcxREvPneGArFrIpjSGEAO16sfF/zIBCLU1A8anFZoVQK9LebFuc/FDCwwx3HrDg9Ld/K3E3Eluz82cnZoJURVPbHQZn9v/9AxGtp+cu1eQVuP7XKcvGI579b7+levDPCn2Fb0OfL1QGvYWco+z/pHKhq/ETXQ0Tc3rO54qk25IYex6K2lZ4Eb3f8VI47JR1dycBCndU+i9goqAw+c3MfJZc56n9rvKSTN1dm7+tN3y3Ndm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "P53bodh6PawDEYOs6qwHx9MaY5YivNBmO28oxuV5AA8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LfqJlznxhDumfAhp7Sr30hGQwt9iddCgn01Cgl8h0qNvQXT/InM+P5NAEmSGCdQz0s3UA2H/QCqPZB0EsfMIkEIiXYyr5VX9OJ/SzdwwhMDRGpoXPwV8A5G8two8lgsMLiAapdynlvUcvfRJ75ZD+ZCoHzbNvxWecyEldIab/t9N6I96in7BzMhaa1znrn1b3bKa+Qc3uOB+U7Su73cVJqjYS1Kstz5c54SJlqkM51tpJQ+WkPZ9mKytegW9jfwE3YQEl0SRmNQiisBFcL5nZJVe0NJM128f+C8W/kQbRDnb/jJCFtxAdlgw6wWjuaIF6nYiVB4qG5nS1EjtsPvhgqq7UDSC2ACaCzENhVDHLhdb6AG5zGf9Fr+41LuBHggOPseywQRJE79B07ApMWbPS4oWdohvDaJV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "P6n6IKG+0uSmQ/nLxtGntuUU0anmknFgRTEv9Pnu8G0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "O3ROtOgWwfefhZ3UCFY9JfzWlFi45BCRdSgIU5UM0+5pHi7BgIalHZ3eUaaSlCbnhAPQmwzecUTvIB8o0j+0nTVf6IOCTtER8U4/ryjoqHFTbCIi55rysyoSJ4Q0ppEfxo9Ds7igLzUzXYwJqf1dumarI7C1Rj2PhqXy4OTZbj0o8aNetdYvDV/TXrvQO4dvtH4YUs4o5Q4KShZDCdIuwgLwQagH8+HpIdryOUcL1Fx/mJwPVmUPnyRshn5SG1VnaayrfGgc/nYJ+2jh99ZPbMCHNZOdYFLD3GDzSx12t/ybtTH6SGeVPnKqKKB0UI8JqNrt5+FbfiriAPrGL4OPWVRr0PFZD/yiVuPs/1QDDHuoAxiQloe5SKGgFoMxDPydEyQjWJVV3ju7T3Ox7ARIFC2H/mIJcUst", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "P8BS34MnhAMB9EmqE2R9VeAXdvN1B5QcVESSYTpbFGs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PAByBtEDvcXHn1Ah4wjjr0c7FLqPlIvvD/pKCJFvkBC2DRgMcz9YkmvdaloF6dg+giIzs7RUvSIvBF/U5UzilyHkKqDGj4a/yBptgzbwUSl/1/xDsuA3cPR0k6sAqvOKUFQyNfahpZEK3y2Qr15VFfK0a47GWpYGMUciGCIlngdeNGHXOZiLwH0HeNMqDbmsKimw7eTw5WsNHAzQ0tKdgIwAutAqmj/7wIGOKQE3+6sd0hbXwqu5jhlKV0N82CMtgVnoyP3y7oA0Cxa46UTGvZfHNdqxWCTPHcq2qpylBfEwcpwmYjO72AObo83q/gkna0UocWGLWVCen79A7dELzEuplfFY6K+k3KypiImddmx8uSbI2MQS1PxGohLy1tHx6FoL9xZVezoY1OogyJQ3lY0z/sfH0x1i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PB2w4emolTPlI0pWbINOykzgzU1FB43PuvulzUwEGdE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HQHOdYnd1RotaKI/dOLaq34WOpUkzM6fTGIGONSZjGhli8XY3orI5P28FNAmtshppSX87jr85LUWDIwDtOn+2ABRtLF2wNxAzGmaZQDXWrFOihCC8OiqDlkLBCnnVDp6l+G/VHakx+gZtTcxrd0EkmyoCwOueLS+yk4KtmZMeEKOYgxgpZrS05Xo5GrkSY1UZ5qguJvPGXzgS15dHKIOE7UO5ED2eSCw888wkjrPYhtmk9gOLdMJBr6m8Q3t3Vj6t0PIOG1FlPtv5huHkidGAkqF/1YAsBFFK45PNl3Tpi1Ei90lXVV8CS1o17fJnnlamomZEBv3BzAx2r/esl0DKn7pz/2EleoiVTpFC2FKstU8f6gd4C20rRVEPGtws3OVG3iyplmiK+0WfDu9jTEi3kR+LwBRw32+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PBcZi3arVCqW9ofLkRuqAHEoQ3c3700+xUBPVP/hGqk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZjEald4gpys4leyS0oixIZ3mI8h5hlEJhm+y9tLIcZzWf28l/LOx7srK+AnDoufOT9ERxAzGwmfW2WXGPp19qm7GXqjVF8lbTqTuzT9qwygCt0WWnWgxjq+VyUq43AzecoJWyJ5vo0zwusBEHiMvSLUCY7tycYM64FqTsnH1X2nSdrbryxiPWQIe/49Ql8Vdjitze4it3cjngDmx1bcpnVXvwgq16S4CyEJqGxBx60AYCy3rIJQiiDb+nDJNBByLurhdMLgh1Sn48ZkQwCgnEZpUDyPxPrOxrjP9hWYiaF/mcNsERWC2/kwCu2btQ4djYwWoVeUKLKOiNXSLK+CgLTJC+NzDmXYSHwQWaHWhm90r9EybJB3i3erfXg3SOb7wQl1KDcIxU9QtMexcp23tzCktfemdMV2W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PEyNn+3qJqSscNLAQBeSv7zVUN8QgczeoQ1jTk1Vi60", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xPb/m7NEh+8RzFkXO7piOzBVfzw0eHddwGU0pDVr8P5jS3YpJexrTPmO+oltq2xt41PACwwl365PsU9NVZ7wqK7/TdxEqS6U8aAWn67BGCntbX2W6JaxXtXUi91yOVr6kw51sL2GkCVBFo/j0chEbPrggmiHYshdH/cUu81NqDeXjsruzmzTSTviofI09wj2Ak/VssB687nxGR38N2YWcwI8Jd15kK1svI5xM/C3025p5z0GhmAqhZql6J+c0bsfITzP3DZ2QHm35lKOrz/+Lr1+acqp87vhXQ2q+e5HANj4L9y5SEWstAczaQC78M5ETCyX3E1Wsa4jwF6FM5Qp1LPBg2pvM2PXrBMpxHwoPMBwccUrWo1X60iucYcJtWOdAYj96gfs/3okjV/dJ6ioL8Wud3yIU6cA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PH6Kfl4sP9O4uzboH3+GElCBUnj3VmFu/GUguSSTXlc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+x1X7JazZuVQHYikU9Bdl1IMlf0BwT5b3kPrwqDV8QQS+RAp0vZkOVrrZ0zPsgSz7VkGZfUOdykDtx5emd3F4ugTR4X2ypGHbQNBrFfR2T3Av+g9kp+cLx4mtEDroNmOn5qZenwflPz02O5K91qeHlB+2ZB2Mx3BTAuYKQAxwiuZ3q/djH7sQEvTlgRnIVoaMMI4laO2CprmBbzFoLSGqaOFG81e7+SUcJ2bzPlYRCXFO5BYqt4KADjCqbaRoarJKyAF1H0B7prakBir0dkrUs3WLxDyQ4MMHSEWaSIEOEoULYoZftxxHb1TNbVQ08Jvv6c20kooJkkNi1K8rL/ImMIKUtb3IDAcslA5qVBp5mabLTdCZUU5aPHjhUgWwuOnB2aJwYBUFbsetZOtvJjfzbzAyeQE70U/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PITcJXvoM9qvCkY+e8XQ0aBFkI4Dk0FHDg2iHayTuno", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FXlAdYFv1Wt6GjQ3D3DolBydqqD1nkl5hPZEdztdgLnqLA0YcHEYnLPqcCcnRBwakcw6+wdQOeE5kfBosp9AP6jTBbBokQ4aAopSmVWFxbPn/WIlQ0yejFOdOCquQgNLAmH5owRnv+nvE1FaJtffUZrNd41FHxYgYyWgr0yWfz+iE2+tWXWMuD9HaION+vnL1wrDxeJSuci/K1oSv4MyyYBixlhQwnbX96ym7qeQMh8spPq6d7+cRyO70VPDyNCVjpjrDW+pIG+dLooxt73iLinFS7HDSs3wk8Ibg0bTffA6EKqAXDzl09Mp4VeCi951RJHDPDK8H7dwzFhHI+binNobII3J8bNwUe0z9XKGlEVtBP8oYF2b1UU+2poySFIAtAjvkYFnVodVxrMlrTJoJptETekyOuJR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PJYdqKEbouQjlfiYRkywpw3j37mbPhWNwsKE97Qvivk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "G+SgM1M9s27mm0ShPHDR6RaqVvdw6rrchWCyo+dNAadPx9WQC2ku6S07Eq6t7l3keipd/PACrOJL5KXV9wQnYjPjAD9+CgG37R0Gc/c/vAwl0SvS0Eh3tGiui8Ulrk48whD8oCane6PdoCaK26M9BnYtGg3wJwYJfWC5DOuD9WVHe8VuAiDVqzHO1SX947/a9tXd62GjEkzZECedZpPNRWDMNNoitf+6hyZ9UFEzrfCvcMpvWbaI2KgTa9d/WlxYmXbo5nsXy/og41umc46WcqItSSKPoSm/ToNabjJgY7bgh5Aqk3xjm/8/AQZmDq3erFFzOX9/imAJd1D76yI9s/460ISBChQ2pbWoUeXahmKMyEjRUQgy5uNGLMe1jouWb1FxqfvtoqafuwaZXNyLbfvudGkbA3Xn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PLzHyhLeopQicCsBRy5lmA7KWHMQcFBBA9Odnrrv6bY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "05LYI1kkG25CuFszLqlnpVDRaZzsCAQaiO5P2AcmJ7N0CkwP2iCibISHtup58ElPowy6UgsruF4nA2dcKECsJChWZi0p+8AjJMCcYqb21XRv0+Z2MgwjZ8binWzGCuIC92AOiQchmhGcoUV80vB7yzSEH5Xde9zs96MRWHY7zR4m7BKOQ2aJ5XC3oHMZMvxFTRMqSMiL3VF1iwPcoDWTZd8srSA4g9ScGxzpNK042xbjxE/Mh3xYGddJLeg2ie7/Suu5TCAoXiVTUFqBicOh28skSKDoAJLcub8WKd5EEu0m+n94eL3PauinL5uXjl4k1Xx+cx6pBZ4c6ENQIBDsUfgki/KMmPs0m2Vsfpl8b+hVBaZffnQ0+k0xXFCu2C3KUQp6n/AnQrTM/aToiLBs7KiRyHhzXrha", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PM3jPVipNy2GiFeNhO6Kb4XWHGpWluE1ZuuIhLYtZNw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "flGDJHeVVKN7neW+FI1O6zjAedzoBFe/No9CtQsxOxlQQX9yq734h2ZcCI9tXyDoN1swYlvvX4/t2cgK+yKT+cPaUpfFDQdVdydTFBWEzA+IYKX7ytO+NsuAQywVcuq27PkHbrYReEZBAdia1W/0eofirZtuorb0Ov5qpENsxF+lKefrEYwjvAfKNICAliDMcmUfsoHf3FyZf7yr5CVucjjYvPZCPIYa/eTip2+mSI4wByYMlTlJaPpIFe6YvvSWSdh65qT6EKjUkQD6HyJeV3fSMU9AktyrUgzaxLdIStUY2sZfiraUjrOoMST9zQ0DbGcAwmxVwU7QXKGsXg6Y1QAXFgoBkSvwuKcjOTdgHnb7rYq/qGHbr7+kGOIFvySAGCGW982SO/+okUAkpEievgCC19oW1M9h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PMlOJYpqQP/wlEah4waTJsvQ9Hh0eHGRHPtcmWMxHK8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4D070RY59PYcD0RxaqoJLM0yiPLYxwFL/h9H9KomiXRii6sWpLBTWkUHiuWNguUuYxDO7MueQ75TgC4+4Zuj+55eEojXD5Dah2Kq53aTnO/ctgHwNXUG2NTzacwGRdRg2tfMiE/NyhKQQzpu/VJkUylSGl4CUoDLAUfVtc8tZVgfcoHimwIvUouYnNMOJ2/hp3+GJyR7COpnOdsWQN64Qd9nLHO/MZ6CJK0coNkAV0Uw83MCdsbcfTl3mCsfBFLEedCz/ZDC82/tYzoDcl29VjkgxJHCHBQt4i1c8Mjth+q8H0aszpj12aL+af00SyjsrXNqDevCC67uAFmRThcXttx4Ak7Xk6tX0nLScIgPZlfsrTOg9XotMsoryjQHj/h4vVaJ6HHGzs/Ly/jaLzO4zOP6AFrSmQY7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PN0oJTsSxIpun8qZli2rtC+BrKKmJYUlvfeMji44t2M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BDbAug7UQ68p+4SNxhoREdOP1l972zB+Mu1VVcAhH6/uWIE1U6ZnfGJR1RA/Xqpdv8rFHNWstc+2zY+e6Orh/N0UrzhdNzuQAf/KsKoHepoLoKPGdhxXg6x3FGjkhmWHdHKZ9+/M+8fusgU+CO/bnz7+KBPaxLxIrrfP624Fg8jMp0ioe744lAOgC9fkNAGHfncn1eAlr+XXEzS9ly1FvhAIlz4W8p69X1iH+3gcruXBzrd+QrtEZ8lg/hlLyWB9gz7vRv6fsVEPHaq6Z3ufXEWUR8oGhNTihyxH70mEgPo5QMNGRSnevD9YaTAuaa8jeGcjlwsGap8f7Z5/0cugKmi/oRhWiVOa02fqT7r1/zBNg3TPBX91U035UaNkKJ6E3X2VcQ9YSUTt1KZxcsEUI0gkUR0uLLwB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "POLGZF/wrKO5fz2wQB7v13HebE6hpBBAqkxJlxaMBBk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FEor2U/satq54koCkSY0jOQ3c7PpuR8c2WUdv6apnJDZWdytNXCHByWhgMJkIkSOVZQVa1Dpi9BrM5M41gtZPyWHoarK66h/PHpL1ZSyPNBG78j7AxtBGrvvXXzBoxYpX1V8vxXxeZUZY49+TDp5XLm/jUzIIqPXONrJJ5G5eHLIL6clxbE79H4WNAKU6MtjEwVSIM/XdeqpfWZtF/tsKIgYb/EzpkaYUseL7H5rumuNEsd2qcoA1SqbNRyKRczxtgzBnrkzR10XStnwPTpRIoIRRN+LvEUElkcJoqtoAqkv4u1JnkXkL2ifeeYGtcRteGc7mun05uadONJU0UeroyBFMCYj85ZWq6DL0CvzgA3PJ+K6p0iozRmdgeu2l17tiwhzPo8qSJLoje//6KfzIZdM6J0XZ5Dd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PQXpnNy3Ay1qy9gf5cSPlQuv2j8BIKmZoscVXjD7AnE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gJB4f66rji4KWWJOOCVoCN6uc3tNFtOWGjfAhvaNTomTtyI6jxtbgO/uVgloKxiEfVX9b2lrlwNR4QByfQFW00D4KoWpI8zF1ObpDOq2n/fTFk3qUkJgoMZuvJdbWHB2BLvwDk0PP5W/jgqLf4KQkOY4q86I7PRw0+LkO0HPbsS7Mp4qP3SUbiwsatntJJcSH//2fnP9DVD/cZ2ny7T2SSZNJ3hJL5wSVVH3glKJe4xzMbcyOfNzbuiV0tE0/39/nGgDp2YseXUJR0ibdq4zxzrdrw4hrhuGNsPjC/xM6gN37F4VGTUGekr4c0OyXNh+t1l5T4OSovQwL9sNR4Qw43+qnufiPC7dUw5obVzL+jt3CPPwUp/knm66fTarjOUSY8JO1oOhuCZgQikVZZvEXBQmHlaOVPRN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PQrrn1cXvKfwvutYUii7r1Euve8HfMzV40TXAapF/Eg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DB28sHHTdKNm8GfyZ2msyfHqWXwRbuGkKe1KXZnHwKI0FI3fgnW+8Mp0QzInjKNN4nkWU1ukDOKRnLanD7Y/To4kqAJ4OsuTtkAwmOnmW8CX1nTTD9+KKfcEsP8dk4QdJQNl3pIxN/vLelf4B17mMhXSFHdvdVD74euXoXzK4COZFWT7QBkDIgvEKRIWgx4zr7AY8U8WUNqy7WwU6b1Om8cdp7IYI2+Rdm1uPx3Xj093rc3eja5h/f+lkZItviaGt9qL97+fK/EqAbadTs4VUFPU2LV0DZy1j5oQ/iZioizCw+sWHLJZ1YZx5DnCv6SE/l1bTkygFVi3S9/CCBmhfN6J71siWbLG6/hu5uHUh8zKMF092D7sVH34gRJblzUmzCB3r142b/zPqB8vMVoWRh6fRNHlFqNC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PREQMElmVMW4xk5XPQOuRMsyCfVDbFDw3FOLqqQOhhY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0moK7XIAm8LWl+imeZpHkzrt5kD8QAYKO39EKv2XEUQUQBi6rLZBP0ML8QjX7gYgP3NZ+Adk9c+eOz5mEqDrDE+KSdc1Hn95h2SKXYgeVKBpt9ljyWwIR+yMjm7CYIblNh4tGXnEnNWwXxgwxRc37f0MJhHxNuS4fyz1PjOj3jmb6+n15E5NnwTCnB1K+qvqxojgdD2PSmT7Yxz1+AFCunjGaL2osHIBhlxoRsHSr/FPLDHiV6N5zi+IkDQD0rNWZ5kmUgQotNeBMuFGYs243TWTcAff8Bcz0q8+RtB9ZAUvInyXbtw023QwmP9BjMxNHuccyp0gkwzSpwSJ4GMU8lxrGdVLfQzKurrwI610IDq++XvYrwpoNaexraay784MFgujnTS9FeB4sBZ8DJb3i/JD60xOa54U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PRewiv76uEbyRxJhOFBb2rGG1+mZ+z21vG7bV6a8RC4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5LvNBruztKgMwG1lLnCg8M1pvOHDUhE1IobqxLKFR8J3A8djgmjthPZ1dW04VF6Kw6yShvuXuVBTuR0l+Hhf6yHHHErtGO1Nt5eQDHAaHn7unAjhZ7kxlaL6kZLuOAcY2USBL/WT/1bvyIe5sRz/kUvJaQGWfZggxzUJdR5DrukjL1DiGpUgFs+8ANAHZE8wac63CjtQNX8AfP+FEsEAAKnKlshnv5Tl+oUsgdnQCzaa5lsHvgUkO4CymcLHpuGVJTsR3Ma0I/P8R1s8odAioVsBoqmx0KEr4hQeOkGJzB7NtKVdIxEPpJhvZCe9NPIhOJlBfR08EFW2g03wNxxYLksVVRD18SBGlXrwoEhCjkEPVaPhNLo2gFOEzw2BjwIPR7AQMIgaSdHTaPcVtY5NqaY7QP1cSdwL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PSJmLER8AxUJY3Ctbazgo2VORDHwgaY6Rt34E8LuuWc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q7mF0IBnzCj7eIcMQj4rYqtRCx3xX5jg0AgkCn6YS1iT3SFcTMEpWYpGX9ZuCftX2JHseUTd5Axru+leX1dJbX99JX7CkWXqeoCedx0bJY8wNysh1LroYe1RArIjacKC3aokn0wYI6B6z+InrsoJ60U506rsosdsP16Lqm0FOatK8xcsnuhMJ62m2gnJmS/JMLEUuZfdZtGxMpXG4RxI+Py28opfLWxeHuBLBrevkgo6nS1dWk0qsgj9HTEB732/lDiP5grA0ZwMKZj7JH6bxm8/bs+dcon8fy6Yha/ytaQ1pnAIRRNvDrPHajMs1bq8GXQQdYt8vlX6Ds/Y2HuycQ7H8XcYBScWJ2Vkf+R+tz4gXENxC5LFb5SCwfwf9pA9uWv+IuMiE0v2hmYLn+2hkSzW9R5WlJYk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PTClc/4PLtdR71G+PnYuYQIzvAhJVxygJ0gpO4Jnljs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YM562ag3XxNUycqt1g8LclwCLi/5W6TEA6pG09/U5SCbKapuuEVl1RaO51gtB3VUo5urxWQeIxkRAafNAPRS6VwqfrWEUgwx9a54tnqyOerYG7LQTCNT5fR7WXp+mHOtxAp5vwt41dR2p4pEU38xPBPuPOegFdVaD7OzyiNOCf6FfeolQgyi5jcBJgaRSn9m1m1KPVY/q/i4gv8b8fn+beICtzynaJib84cR3fRFQ54lhYryyluEi+ZKHLXbqW3l3LOiGWg/YdDhiwSSNA+gWBrIn2lzn2BJS+kKObvPILPALoC4qlOzLQpiqr84LRMy6Ya7gS3V3IFnrv3B0dAuSMBvnt/KAc7pTGtf4cy+yMYyo3VjHqvYQmwWj/Mq+8cYuP6Lxr0QYgd8Ov2aWYkLFItKtnivT+34", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PTPqFI0oPxIMpjWkLWms6Pekp9z456Y4DamApgR98CM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9zMJyHnivyulyF8O5ZvDfnz+crPH8yZduoiOsRc+cwKwRQJViKZewGZKlUlD6q9aCFLsaRseUMgDY+ALfvAxiP5bZ1hp5Jnlw4tpJsE3Dfz4U1BRnT24THRHCw0qKubr/Zp7QlWsZYnOsMMUsIRsq4gsYvmh3fQg9RkDTdcYMjztzlof3IdAFGKQVrm26Zs39eBd8w2447702pfk4RgGNggpzL6TeJIhudxYxuyZZgdjMyFUbAMIoFylduMnSPp+nZmHNRirVhEwQscWMxeAV2GDTPB3TmKyT7xlXJz6sX59NiTjtJ4mEx+t43E1w3ciTrdRv+u5mvK3qPG4q77zl8fd+V+KfsRJZ0OreBQHsG0AwN71G/i7/ewHMvWE/l7YdaVfA31E1oDlUzZ4KJ88Y8Mfv4xPatqz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PTx9cGtY0F688EJFTzplfBz+3ppdj0g7JuqVOtSORPo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PINEu8UkLx9neW/KaOjdj3qKN4hOJq9ve4w+Hgx1ThAbwKfuWwhE1cICP7qUySJ/oFeSAldsVymq/JnHLjoyUKlFmvXEUWF1teTttTRTv0wKvT6Wshu5XYTREk9yxD7GLNbFvJ3PjjKArk39Q9hTkp0MMxwW6nyqk2OTSVTI17ZrSscNIhJMpAAYnhvY9GmzR1OmAmoKvsqwv6XYv+x9+6z+RgigfjuxYazj8ZAexy60wqmFewZXgFJk2hUf/ajgdrcZdxQogeq/CFvzSSBF3/Gz9Yuluir5TvGiIXouO+krSZ2HKh705CGMf3OlYFFOz4JuPTveBj5k6YSeKmXGiUcg05pew7MxlgPusFIbmOHGfQuAlXq5EkZzBCYu2diumavYwahOF7MfvLx/8xtnyO9NPXSjZtuf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PUampdrRqkxNa0hXG7aqoqxoh5eGjqSxaVfqm5RpvIQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u3t3TC9iXtQJiJDxaDZMehEvI2iS/i2WCCkBfGPiJqBKAkFPyANDyXAekD+z/YFN5jOctnbz+rYpPyfhniiFy7JMWR3BgMMCSKFFWt7k180G2+ccNlBoSKu5TjzSZ+aEZXslkUS5/wBNS0Kjfij7mJrNUtFNd33+DcYEQFd1mmJY7DDFmWNWYFjYiUpmzV+p7smQX8KTOpnSlQJBFCULuLDm0DoEAOG1k0ZNEDL04TddrznSmndp/wHExKKgGWvQSwgp9syI1/1eVzyboUdn6lB4y7I6hu0xiI2vXNZjtfljgYqq4oe1Z7YI3WpUOutv5/LdN818R25j6pRlZZCfDs7yQgMhUYZ4002M2LlouslnwG4c7CghG07ayuvC51tj4HamoMJs0SohiMPDOPcf4qYoL5rv6jzF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PUzbg83Qe7xqx19codzBQ8+nAhE1gw0toG4FnfC1a7g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dhB9d1XTv0xEVRvhPEipJckKRCX7Bdxm2VnvMcICZ8l4LiTzAe7oC/WvqLTEcfpiwTOXczGOZJnAbfcovPQdYfpw8Nozh909tStSQLPfxfCHAl42FBj9Hrnhb4lfkIppjnfD23j77ZD4aRGuExG1I65AiLixwjqakGhV6JIhuJpQZDlLtwchPCXIstI9c8VnFdgy8K/9jZLPzF9o57QxEdcHMIbuTIWEoeawVSMQoJzs7XHMK7O2/12Y6K7WRQ6ApY0vdb3jAfKucZXEc24+a/S1s0pCGqbg+lGrdWVhAr4qZYZWQpjkGCPqc2C2t2Kr+rU406ksh4RNW+2f8Ye2qiKbbiWCI5zHcd8mbaY/B0DG4F9iBk0wfmFJ8uM4KGhBJBporKeHk+1WQYtzSaOjN646YhJmhdZZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PWZFBGixhqNcvjMinKwTs1lh4VgHHnlOobR2Da5ZUcw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vGhMb+L5Vnlav0eTicw5Ub7i5UMQd3IlwISM+ebIL3L3w8P1JQomguahagCanQithpyHvoJMPnMRyih00hMCyvRNOlOIGWM1iHXzn3uj5n0TXVBY0OvQsuumx2VnBXS26XrOYYhmd1bk/OBpV+ltPriVpwZx03wauoJVHfupPJpLdW5yRfyMnkXoEoElbH+ug50410BrtxYTil6P9rKPYKTEyHxPx+pARPWxqAO8Dwxm/1DLB08mE6AsJmKGBR6G5Vf+wRbpj2R1Y/Fdjyk8ffmKOZziPeCORd5a/ud8CK3/Yp6pfUPbIaIXJVYQBDViGWOXojU7zdbqciyXtsRo1dH3bWSPfe9PPN3TeBtYCniXD4DQiCEl11jcxstm+St7ymkdFEi5sB7hgRQ/tiAnKSlnC+LWGmi6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PXrahKBzG39AC3onQxhHsaW+VgCAbt8ICwDXYFiqgGk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "knJegnjK+LIhIK696803lzfxBtGEtyP+lNVlqBo4zM+4q6B4RfFPOngoui4+W9wBSxoyREr0WPgQMDRSrlqm01i47nMyYeW4RyIksCvMrwYt2RMtFp+Pg82eZA0C/7syWCUiYTOOYFsceRdJt0zbdhMtQzM5yJCqm9tcJu/lidV6SORPK+aQxNLpP31ei8dxquQ5gqp9GL7E4GBij0fAWik/COmzML5xM64ACp5LVdZcifpt7z89sEhaeDsVCAp66+KxZzwoP/edXAIcRbo3jdzAYoPy/SP39fNpsmSKAvI7c87htiST8j5eFhSdA5mN/J+Kpb3Iu0VkR4vVsbgHGyxd8UDa2Czuh7AUYIKmDA1/oC/XgPWCfXz5dZ5PtIrw5FTLQZNWkdXZQJv8dSEYdViRthsIbFmG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Pa6KXYXIkXJCTQ70lnKoa0msaOhP4VHySpR+QgWolkg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "C9e8k/C5w7DQLkRLzsbwuWoFRrfT4W6ZpDSM5MRVL+ZM26vvkPrW3j+dlcGiUogSWzDIk69jiDq3o3QFwd7ebHEjTNbC0DZ28rV3YndqINnt9f2QBQbqOYdbJhvVpxBg+kwR3DYCKPgGaupCDkSYp6wPPsPYDrLjZMGZ+SD3koMdea9D8nGD1LfUF/Ks9YGP4OfHxKxN2OLHfD6eTkx9nzrE9Yxnkpe6FSIbKOdJd0TnE6F4f4+OABv2rQekghXpIQtyBdX5j4HaQuM2MkQHwzMqM0Vxk3F6t8U/lQQ/SxBKGj1sXHPn6tKV36EZiv5QjyzSEtfiIl22o9M8sQ8+NJo4RSutSddqzZloJzyzfH3rkGhTa5OFr6K0gRj7l017AsjNLsIMuQfsy8mgbwMP0f/l2i2B3fvH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Pbv91cSQiUIiwW2o6U3RHeFPSpS6g35kAlEcLjEgLEA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eQa+TUGdmXHadSYVnK8CDWikzj/T8yDWk3cj/NILPa8h2KHU1uof1LvwuIWqPcEvZb6spKt5XXkzAPEwy6evLOg2UGYR5ZfOYDaqMGv16XwSlVt+S0tdIk9WwMT81yQOEQqm/WD7dRLiaLIaD3qvbvI54jBm0B2PRQkHNLn8vODq3yMx7Ss8/fgCXMSXp4VZlubpwuIraQ3o+Q7LzdcCLPsa/wW5x4sfuiyRUWxKa8ydMm1pnnj+/h7oUT65Muot1sPoJVgUMxuQ95UUGg9UTiov5T4RFqZI3OYEnGb4z6Mjc580BXU9YpKv3VHCOOOn2a5ybpgXBPLM1NqXw6urNDPjyg1uV3Go278lr6vjLFo1C4yLH0JpvEDu5EjmCzgOjh2jfaAwp61GGzuhh5jOiqKMo2JYLCj2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PcAYF/ug+7fLghy7ch5Br+MCAsY/9+LW7/RSQxXsvuw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d0Wz41sKEvhDamgSAHmsm/fdRjYDGvSWtBtFgKeWNHvM+fqgeRDS/gFr9rePazoiWwjgXq1V+0mjLWQ7uJThA9SMWRcS6sFQJG6uzZSEFinUsyya8owoAGZbC8RyYEjWgazEX0iZ/oCAQeZxle32//rInvLyKNRdlVxATDSodArvD1e+w1SToCq8+B8cXKVYk3FtDbHP3d8d7/+YMKP7aAcQnDroWPWOdytwiUdiH1tFZW9rO+NNu09I/RdxRM1q7K1GisyFgtTdLNVwiP/3ZU7guvBK0FnMVIUfjxKTMVqtrcg8eH08RTolpj81dWi1AZgSVbRJJSHxUu0daBUP50kJ17nV9A5PB914L8Hs5Lpom5aY6xdl2IsAuMN2+zC2bVpZ4ikw2+MGPxfDliqdgtmw3lSlu9T2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PcwIFAZVh/G86JxaYWBdWEmOoarrKaYdx0V5wlVLLvc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cjpkbIMDQdblvrUoFQXq5q6i3YhKaV9Oaq8zRj6ZZCy4yDS9oYIviFYnnoVr9nVVX0HFKm5gdWA6gUeNf2WvxSfH018H+mFRJa+rKUpHjMpvUBDzk5uDRyaF1xezGRg4FCHq0C5/IQwt2ndc2Gsy40pk9JDrCWFGDcGuOa69BjU2LVUQf/sFHT8CyYds11JNBicMd1FS/laLF7MGdfI01pBkwhcQE393TmyyT2ZvgWQNlSxX/fuGOcOwGYmQYyF24gUPuKpdIccMVv6PWKGeV8IY+P4ov/m9+MO5BOn4wxxbgrvC5OEgV/0UX4k1S59fTe4VAoRe+OmMPNqIjpnrYg7d6JpDfntI1yiMRXwqtsixv1zcGu6QIAz3AguHyNqZXg6ZodwRNCbDNTMNUGXL+jvqu7+a/MsB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PdAa5/TjCTCP6C7b038m9ZHqKMoDpCLKxA5+NdslzIM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ptX/jzxojG1WDCBNZyZiuKP3227YgW9HGnUp1vpoV28bkR3iinStrFInc/bzlu0nPebThyByeHSrFA7V6+COG2ukJOO5l3qnXWzMND4H6nay7pZ9xiYVshox8dW6Vz30dI3wlkd1NrBzspNTqz/ZeZFauq/K56fp2LzBJlPB/J71ThSKQJV5jPdhZTTYrr4hrrI6q4RRGKwGwQ8C7KkK3JWalr8FNKlv9P78Oee9P6AbIl6CN02je026M/md+M+PnvcpTxHbyNnhXr0gPhFNrg/U+y3DCBecwqxeRhTImEYQiYDEctxQ+eDJA5bzyPT8dvq0avWpmBJUUk4cAXUZaBCmPkS7T1tfP5Pyn9fGZOPOtK0tiPw1QstXeVz1npPySoV+YZvX+1a7YMini5a62/uu5u8dZl9c", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PdFUFTQzxpN5kQYBu2bxjK/ri+KoS9YdciUpjzPUhs8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uL9zfWHvOpTSwF3KxiTF7SpRZf7SSlokPDOFtvvXepPBBoxWODvlpyGq4QcD7oi5Y7S+wRGMWah7ub0ysuM9GMiXz/sh4EUpVULEYVjoGoY2x2gcSF7IpQvU40L6kWtDfTg+ihtfPlv6Y0zaeGXazj/KqTqYeWaueoqsQwlT6e2d9pTPdMtqsFhwny91OeOPxNA28M3msCTTPc4uv0Dvr6ejENlo/QFOrB/+Erqnpid48bTCrBCD89ySho2/sL+sV5p+LxN3jYQS39kpHb8rP8hMDP1zKc7UpHcRLAGKEIRHauno9+DxJXmpeFyloujJq0GKacaNBvmVcf/9VaW800YEZ6LQoh6V5PrunR7fvL+qZIRk5rf3Xx8ciyLxmZ2GkghWp3zHq4bAuTkihX06YTZwRaoryXuP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PdGT5LwPgUJjeCbjZt9qaNIKHV9IpuKwYUoZ3Svt6DE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q4+i3SYOrMrGwY+NR8MUXlsFZT4JdiHpsBImI95WANvEjOwjRk5SnzOwfDZwyv7j/XAm8sagNvBr67gWhy/GdZ8Dfvc8W71i/9bcG4/VDQr4ZeuRCrc3NF2JxnAIXdnCUc2DLlPO3qqkTzY9x+duUqQti949r24IKZdoCx+478k0O0iKedQnH3W6f8KoaMoufCoMiP7mjIZ5F7I/mWSirtH4jbSym8Zby+h2qifoPSL6e+iazkqnHVYZrMaJBvwpVaNaGEFOOcaNGW4zn0avLJF2lfY/amAgi0DXVhojtYnoAOOPAY6+XpJwOfl6pvab2qxX9Vc4rrjhDE07NPjjQ63zw1aVfHMi0YlNX+2axQ686fsxZKFIH5WqUs3NAh2P188n85QvjqKxhH/gkZzlqWbdDb1qH5Pe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PfO5EADkjKkKUsFSoFc4CJl9qeLVljT/GpM/220Co8A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+8Im/q4m/f4hq6wHilPuhBBEPyokHr9PibjQH8yEuUlKbGtO6DnHEmmTaGRvR9zxf8VQ5fM+SGs4wEM1zwvXExoiKcUj4nn60zp5Vp1fPBT2uTFDcnxcoETynj/EYxhAEOC4An0g1W/yEq5i0LXn7fx4Jzo0//VFD2/YVLh8/74VHRLE/p4HzFGpmvSW1JZBXWHxfW/1BOL98ijHBhUtMUzBCf3thNZy6hj6/T3P1FrCKs8E24sVttujc/YvnN4jAPU5ZLlPK20aShnansx1VPbju9ZFkVOhVnZsW7LR63i5XUyy6QZMKKbevgT17/AVJcozlFQKS0DMh2EkR4kvprhquK14Bvn81PR1RuE4go9ETUA/o2HFPRe4mVBpRB8qFhHoDW6nTMvFLoSgCX+wzUEk7lgXaHTw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ph3OSFztXy4enTdAiPGrE8XAqBiXfqij372Ho02nyV0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5LbLhWbrG6VrJxlm/wi43Z3UJJylTSow6hvOdI+VBsvIO8H0wICdjH8/jynr/wP6AD9Rv+0QD1ieFvgBRkH7qxbs2MpPjaVSzUi63p9TcTzNusJP5MjSOP/NFXzplQbc0bYBVGuEuZDSU6Mev07rp6IkH29n4TyLb82gY44ziQRQK2ObXTlrS2xuCIXvmUvPVviMdiZrZMsKFXi3JkwDyQJuWMGYiCr/s30mXYV9daxoXW7dfwwgc4agOZNNXu/mlTkqdsLc67GQ1sdA7YXQDi7Cg/Sn7U92ND6v+em1MRXsFUFOgTfJlsXR3m3lWZOCEKpGKkOAZQs5b0FeGv20fWS+5NabEtBdMJ/HRL830F2xRNhXscr6WmuZ29zsC7xDapAzBPeZxKsp/ZuIgXifDgvk6B2/ShCI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PjzdOOn6hHYOQvImX7D5hxFvtzmyK9ECc7mY32ggeGo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "g/eqs2WgGTtMZ+2SFrhho7UZemoqAUVxIZXmGGZBEhkpNqV/zFBZUMsCGMsUm6Cb/YnZf1glVxJheXnwDMq9E3ZDtMuufx/Iowfo7lwgHvaYBNli/PN2A8GzbjR2lQ1eetzT6jkqYUhaltU2PJ8nZ+efhOkmnO3XYFoJtz23aFLRWJHa+scj67go0PtExcTQnDq55t9vpeQIJPku6khikOprdXI8ZHrMqvd2Rx0T07/MJuUQBrponzZJnAanxgp28cDnSSzHwLjSVBa9N+ZofPk6/K3s2oNhYrfUX7Dccpc9+UeHTMmRiHGc92tiNczVbLkMS7W4w5mjsv5RNHaN1mAnid/a8jnXzDC85bsO/E02r4HjFn9jVcvXywMLCMbJoETXm1doroCzuaPyAP0ewr+3s+b1Y6MO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PkGLgFDFKXte7+jG9OytUpkVFaqpzW+Utwpsy7QkMXk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uFiUG9T/CBuUwbtaaOct6I4q5gGHmej5PGpiJbGtRUH743U1TTApAEUZGJPLo5TJNUYiH1xlyIUiwiAgC1q5jn7yPe3CnlKww1SqRqmAn9TPN5PZ3PFgySEQC4MyMPWdc4XhXwB8ZPKKMHjqknqQQgCoce697dTNOGPF9AhuWWvzsAM4xQyG8RqV/Zl62DENSyC7wrl3eQdG38gLwRnipQm0y/6tIe7Buwdfu+rJl4aLEdMMJg90q0iJjK24ftr+LSJMglPwONxGv7sSmRHX0FulVoHnwBFg2jLVlxuLRUudgo5lzYMOYuJKSPnLCq88JaZLerurGcbqxItrvIDH6woqlWpX3jqEPQxcf0sPpzXZjn1xqYEgOkRspwL/Nz8EBKo1kZRLzSroEb6Q6nGeX4LFR4RemsvN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PlGGq8SghIbeK4JRLbxnRhAMsuwaCnkk+mRPBpwEUXY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MkYkIsWHTIF/5DYJeTxt0Yb8wfijZm/zZN7exXR0+wuCtd7po+/BSu5DPw/BRuPSQa5AQuQIlRE5GKmBJ+NCvAgTrOY5zbc7ezf6DRIve3xMyH3S3vXRbrjU7/ZuQikyV2HIwJeVXaVQbVD8ATiRlVFp32LpoyK4QK4a9EFERmjF5W2LJhhCVSKTE+d+yl2bXVVhL45fhRxNtnEN2mvYl6yGrqGzvSt53ed7Og/BERLmas6I5s29QqPRM9b6dDOW3KgoqkQ65ZT8NaXhDQO/ajOtYsqKAgyQ/S6oRzoydPD0cgjqKIy2aSGlm41Opj0Pm33EgKvRbjgnbyqi6FtxPmuOWipT2/ozR8Rsw9ctpttzuvEp2Yqx6FS3c8Wbv7k+h9RpNKS7ga4niAv12yWZRbltZ4rPL8aG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PlS5tDs8t93eI8BIcm2i2t68sLml8TtJezzQKB6MjN4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "teAAdld18UlckHCwShRD8SJgxGNmk5zp8L+DAxE6j3WLBrfW1mUyXJQ1JkeReDOjFBf1Qp65khNp3l6GwYjv5uQ6K1b0cc5OleZ+5ZaAUSY/ycgGf3NtOgNo0QlDse0oVZYhHpm4uZPqOETiDZhZqHlgQrGmnvVG76BptVC4cxNqhbmtjAxW5sI+S14x/dg7qRWoN1olELELtIDeqVZ5r2vOnFN1cfzrNrRpaxnAHcVdAyDwnb/gIU9senbMYL9fDehqzcSQf3rM7O6u3mKPEkoB1qs1UfXNyTyjwEf/6lFZhivbr6DxL17sR5mYVcSlnwSwFP15GqNTPaDTI7wVODM0GGCIh52AJOEz8CwK3HXbTlOkaWszxE8qhkl5OSjMglgV7+VZdOqgE5/cssCDasqvUQAb4BX2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PllFEAL2fhx10vz6sfvEAqQk+i+hfNLDS136zrJ66rA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "go6GE612pVrKlDXYQMvgyfWRilF2jojnZn9HuARR++v4Ap3EC3M4Kv7PPIC9NKkzYqbbe3y3N0D/T7qZgjPjEamk4GtwATb3s/MbYQSqah2ZnzFUpa466ADAsAz04Z5MI4Tt+Nq7LB7SGnPrdzqgOJ1g0mWInyOvsE8+sREyQZlyZWSVsps5NGcQo3ixxgzRyR/zLMHgeqfSyVDz+Ac1acAv2WRtnKeonERNH3CIk5AE2usCKdkXx+qsgHoAuLZBNJuOpqbspM3ER5qqELLQhGm4BDp6Toa8K/8Kl2rRtPoFu1Jd2EogRCtfYdDVl8wCMwjLNI5Q+Cw8YtRQhzGMwGdR/s9mhux/9KwnCNDKiOVB1+oBlPf4MdZ8ObHK7ssPGxnCYq/ciLVjTZQopiY704BM0bElGawo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Pn8iwyAuQgZuguK12EfhmCWDEDoVABaxZxxvMpKIuGg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1o5EG/sk3eWiUZc4TdsksCvN29OX1IWGAo6+qVO4Vu+Ax8qScmQvunOCuEUYJCbv5NPEuBykbvZkfjdzkBXX2wXKQzzV7wzxpNr5JyBAcvTpm7SiblHiXhleya8XqebV0ITRUtHixoa65G68lMiIcHqWshA71ZwkrzFpP+hlcjMCTeYFZjC27wQFqc6D6mJ3O3ll+/TQMTJ8pRTEhJSumbCh/eL3PRB4LUAqmQO+VnPsoTxl1rfKDBW0DH9kyDf/sZ1Xzds9xIisTKt1vNjGA/FPTqKgCzZEZjkuACNgFQLTH5d7EynY8+356OeFW55WXJsqK6rSu1R3g2uTM/U1/gdGWFXqLOaWhQf4TUdtR0EGMQ3OgvWNZG/qkUcIEOlpWGNgVbMW8fa5zd1mfIiBEB9Ox/apGyI0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Pnw35uRirVoEoZfSr2jI73lh6KDMSXMzrFyL77+PD88", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8iu5a4pCvfq2O3waS4hMEFXZQAtMOAKoAejj88CbvThVBBzgjJayAPgH2JaabjbXR3L6epBa0OltXfW8MJW/v3lhkqgL3QbMh3KLXTdG85ENpAwC9uA0b/lMa+xw43/tog207+KjQ2xmid9jSM/1LINLawhaM6bvEyAxXQBVYrr3AHVOfBpH0hKinYLEaxHM31KrzwEBz9HfVJiFLkp8l9IapA7P91lyt7KEavwFmsCnx9hn+C/Rf+RgvX35ol8VWX2djdNnmXz/Rrwhi6IDf4l4ONKkF1wIaI5HF0mzg+gUiujrjjyeqZtTIPzBEMzkU1M7Su9KXAEHHrMtA30kG0QQdS8kEHedxMLWVV9Yboz9xO8F9NbOAT8bz7TEy6TJWtjc3RjvAsHx70aB6IkkFCSit9K5H9hP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Po3fucngZMCINt5Zhu76pCMgn/SjyEiBUM/2f7y/2eU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+J4HGOGbkoWtDbWQSTta2xH+QisFXQ/EAn79I82sT0muCPmRtlFcJyMRBIP79EUCuGsJ0aSYd1ZyObk1N8OVxOwPHF6QbBRNOH32mco3JnonQ5prT/I2QtDVYYMB/yOQsXSZ0ONWNJw+DjEfoEjyFsaGkwWd7fchhpL6gs8PcGzvqcTpAGl/Kd0fXfyY87V10kb70AIDojYZoa5KcVSobYkYG1fj0eVWlaaF1ZqLgq0pOcHF3pfPHtSi7y00hE/xaHZsCiYSaU8gvCM6VKj9UMzkzvI9YqxIesHqOtnaB5La0Iuc+NnJJfcM5PDYd3YWk4WXtncz3GzW21Dw/Yfsmyx3NxfEiMMPZiQvaf1Zajv+vtKswzaYAjfRmo5Y01yXR9CUkCJrBwwFZZ5LvvXi/JzwyhiJZ2Yg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PpS6kSaL+HXrP/N2ADg5CsIE6Saad04E4dtCeQ0c9fU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SakahKPTavplLQKtVOHK4iv4FdyvhWgrDaSRQ2Mwb+JpaSYcLsphEk+5m4L7moeRIhG0QJ3KiaAyASsc04xtQt5oJVMP82PGyBG5mdY9NC+KRqUsgqKT+aEc5CyayBIMSdyRqREle7LN5F298tiCmr0NmFn7SQFvzf3jEmO0JMZ/uQFOTDqLjOYGpSqaI8AS8Cl0nZLGqSR8fSZyOaCUN5GqduVYmU/B/bYlZ9WdntkX35OiNKwORqN/CjyuTKorFFpdPylVui00cOvTXr9CQkhKlpqwEk+3v6J93GcUWxMo6V+QgHvfqWl2kZMo+tn0zoMJQZDX97yqXKOy8784ADsODaYFtYVCJ9Lb80pmLMqcNw08Fbjtd3b+H/4QUehxEynH2VWRKMaiq26gClE9aB74zYGX+O1x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PpszX/4d9FbkACE38XZfeizi8xvvMJ398Ssv5JaAqWg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SuBbx/tl56DsK3HM1G5eGt7g8y+XWY0ieb7K1j2UwLnBdf2jpu5ttH2ux9h4hmoeqdXFDo6nOKRa9wUzCKZKPTgsyI6PzrhuhmynShHwfHFO+zs8j0G7rU8l+9YqLFsOMZFyLAASow74syKnIEuZ3w+M2/vW5t0DlaoIpg49NDOiUolhoSufWtLd+FcuhHHUyamSihjlUyJb5IHNmnvuDgxKQWt/Wc70d46ETq+1xrLbAUWNkVmnYIGzWD2gntk8yJomSMTCOx9+X46SmIjerbIWWX4un9YAYKGm8URYAM66qBIWjJyO296RXeNcbbAIS9wtun3V/uvJGKulz4ckm2CvMjTsnDibZkqTo315xlp4Fd0Hn5hIjLYyKis7lc65waB8HGvVepAnmByxkftiqTdeWfY1I6Se", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PrxBTP1isuHLBfAj3TnggOlc7Idx6nrRwjGUD5s7zC0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RRQfxgg/Abe6f8WYWprdv5Qadv51Agfy+6a0yIFFcrJ4R955mlsnAtRqNT+OStuZvVNHO8/kmlDw7z18gKat6vrCo7Qd5kk62PGgezK26Y+a6kMH99NBkQImb7YCx5vAld9mmBiWsr82PNrt89BGJor9EZ34YrlYrTe33M1Bn+epBzXJSkDbqZN7KQyB6wch2tdNmCZ8jevNfbaIYBW/IVoFO7/aGOoRBNjYXyDlh7a2Dy+tcIJjniXLy/pc8Jf4vVto9TJa5N8ivTVlgsI8uPu0LghtA2nRr42Z+CP6JLh3f/3+TloaFBPScWANPNPAAXhHL1kQTn+ljTZ8+KI+JsUPyMHVXO9oOaNCzYMAQHneXvHiiTL/aP0pB8MKvM9w31ltC/npHCbLoc0mm8gpsEy9g/3LO8GT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Px+BuUq7hVzbdeApbW6h7S65GbezA19GLNWhaLQ8GMw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MMpLYxRzPa/UAHvshzW9w7Cldi8q3Sjoidn/6DX128fP06YZ/Qzbztq1X6x6FQrjFxkF5MKUNsDTRYFMKWljofKvMRUoW2xeoK+GRNz+ZNIfpm0bcfIJDemxo98zMCZ283bXFbnXXlxFKw31x757HAtE10RuSKO/uzHGGR5jaP0kkpfIYVK/MwM0DcE3jDg9KKCKaM7UuWBt30vDnc5aOBdaqyV68nXRDFqbOsR5i+Sk9XqdqJrO4L3HqWLq3FheRYeyPJtgPykCJcEpwd5MA2NEgHDlu9MrtquKuCWaZpfMc7jrKvPaKsdJx4bfLHwbMvEMkQt5Vjlf2aQAK4vl6sr8RO07FPyV7s+YyvsIBWShoCc5znUUK3RAePfvTKRcjybtRKVkTTLgKo56q4pp1HLKTBtushGn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "PyuDEPkAnKXcyF+3Ugm/AJADhoShmzyZskmnPL0EuXM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lX/Dx61FgTczMc9IXx7dMW4gcU8ATvUfz5wLjF6IoYH4lsZsht23dNIrnLzlU3owII+7HpRh4z7eRj4X07m7B7vpbw2vzKlcEmVGRb2DLsbiqbBVhjY2pVJa5O2z1YxlGOlIBRn9OJ2vg8+BbYcanVXlNkb8xwWlF3qNc3NQNTBPbo1RhSkaZxW/W0/rNRWcEAJXXbwTJlRW4xYQ36Iiyph2UTBbCFvKJ7KvMgLKQW2jEc/5cCUKgx7kDQZ6ImsNyTQiO2Xj6DwXHxdBExks/w/wHfRYLT2ANARN+6OcYgD6aOcoX3d5cSbrFiUI35xzNQBwJn9ZtMQyPoYWldhJN26wDDBQwMjFKHUccglNgsdsW6XejSPDSMhigh7tadlcphOMjZ/G+O2AA/YAuFp9Hcliv/OAsst2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q/k8C3e/0ptV7IljBp1hnYnegvNDEyNWZYszx3hQCd4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wEXmnDBwoFHZM6Ozl0Np1B/uM6tJgK717YBqtoRHpG5utIf4ktPK1rs4ynvPHjE7OCyLxRTTMnmnOM2r8HcgdbFqsviM4yx4h/VNFnI8DEsXfGxA1Rg0XVwPOthEvUxVbyYLSQV6gLnQKyxQdpo8ZMjd6YSio+gKRDDfo2XOL+wPhEbGM21cIZVIWo71uLO3F1T+2WysuPdalxeVy3HM/8voIbt3nMnOWVskeV1MecFuKTMQDIT4I/myNhaqExkYghp3ttfGhSh0UJidvWcBN1ALy23nxbdnN3zpDgIvdQetxafNwmbBMM2bpqbpOheuS/bcRWyGzNaEmWAodmNzNHX4sHet1kAcAXFrkPvg3QLUKlbHhyhN/lvAHIZ2PxkKiNhTuYZWI9ggJyo+1mQExwfsZvERzRfm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q/z82985wgsnHtxhSIhjhhKa/yniNP5cTgbd/LCmJqQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6uMX3gEyxI/8vBC12TMAg+tJmX+SgDSOeI6sL73XBm7jbo8XQLpDb5j+quUBCSUvsR5dtMmgHFNU57q3glIWBDLOJO0LMLkW6XTahQ6mcsrjzaLbgDb22RSGzJEzXmnqi5qY1fTuR5LGQzR0YpcMHrLXWAZ+HvLYnqy2Q+WzQAs1yRCDn1ZXvfooFiEj4NyBnI0EzpCUQPEW1Tfv0LDMpDxp8pHxGJKXT7TThuMRPXTFitVXhZaR7OXt2xYKGkzA3W7w6imiQRXLRxzV/I2UkWh2yq7C11W7CPyI8AceG7mWz6t6YGBeWcdxWN9xBDDnAnI5XQNvw11oHhXKOgTJ4NS6F0zQUy8h3qCA5I/yxllA4k5/T+Ny0Zvjjrr0sal1HhkL6Op2ony42zxT7LSgI+1n0YxYSDT/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q0IljHlxTESSekKIXjfZDWI5Q2OdIgYoQCm9R12XhfU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7p8X7zW6aNwFiQoqqsHPvE+J7jgOlD7E386Cb10XhuefoGFUIolR+Pwn38iVIcRqSdplCLZx1n26OkqgoF7tD6Fx6YxJgviPIYuutMWDYvNiMt3UOGnI7zbkFlNgzRpOYUvNRLDTaYTIq0mjSAC4lGXsLwTyZ0ej+A64qFRgk6dGjXD2bVsCNngitY4lCB2UJWkrCA7FMG3ZedOCn35GkOINMTC7cwvsCM15pVyqRZlGqlsq6WxzOp7WttBU5QXz9OnxCJAwcFeguKz4nOx8iEorNz++aH2rHwvs0B4NQZuGJyWVay10YALWWF+/xA18Eap3MIVNJ4z7+Nf+srUp92n+m/yyI1ICPtb4UIU/HyF8BH2k1Na8DnlV5VzHb6FSd88DLogqZr8kgIv8uGVqmBNsJ8FCT9ng", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q0vM4CjkyGpZ+3ffuf2G5hym2X6EVJmg+NO1GWN8eTk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JO130aw3kM2zfcB9hpD+c1zVJ5aQL3fYhXbIN4aDzHuC1dgvnozGQLLUQTJBhld5gYf3MPJ2aLprlhB2SNJUTDnyBuEgCjRINNSCLEfIC6FwfSfgASlFg/8r25fNL8IATN4TdOamnL7x0saUBQSZc81j8a7XXG+XbHgv3Z9vpXBlrKMAJue5OHikrjWe/H+z66vsdtAE3/aPe9nF4k+6m0tj4lAtnVx/MTOGUyI8XZDJSgKqUYp+25y7Zu+24op7it4vDDeNFbFW6qTGPJXKnSn3XJYxGog4pZX6Fnp9dbirrHIY7MIR1WBuyMCeDSP6xy7+HsDaUfGsjjmKddP2aXAlzQd1zPK1yzBVMFIuh85mlPJ+d4N+49u6rdDGzSB6F/SyCAOL0nWLyQVM4j5DWM4iRrGP7x2P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q2nnHNZxCJ0AIohEWQcP9NCcdMXBI+kzw5CT7FGGIjc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LSZJzYNa0ZKA4QyQYeSQOevJQZlBVZ2iZ+OzCwPfUzOIQsc1/ZhOxV8WOUqr21I79KLUoLnJUDbkDI4jH/4+//y/mfAyxDqQcnStPsuiWSjvvtj5PwK3BQw/i8+6IZcWFZLzkTSpUzmZLfcEU663OIsm/1EJqLitcRYaXxxYZVZSTgWUaDeirZq0P18AZ+xIh4PJFd5fyhdC3s1un9G/O+yJr9yg/rcNrBGltliK7M/P+bmcrvDxebX3APHyJmFm5Q6uHAgZpsruFxxuY0t0z+0kJO5byEBSlPHnFqbQQ1kpEC07Y4hO8NzEE+tKnAa82Ihyoja+14Nti4Qt/tLjVMEjMiN3j8U0xNQK9n7xVEkaj0cbo3bFtJvgSy6EEWMyyxC1TnIP8wYK8+blPobx5/C4SBMBBN5T", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q3aEiCmIpRUWmBamBAyksWGZfYwxtvfCAfkXNKSGtAM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZxEb5M3m+B/dIi2Crd4EsjIj4Z9tQGHc6hkNMHp24NEDyN/jQXD14cRqqwZwhw8QgUD/7QlyxK6doynonBbZ332Xo8DAfw34KK9L3Ern9SFSEhNdzLFi7woCB0VLTDfMoTsoDfHPatogUgnCbz6iufD5/4huZ3SIrJiJ+mETyrCvLwVL+5Dfkun1Mg9kLg3pn2PstHSPb/tVe5tUCSC8HHvPM2SC4xj7p+OUMzw9LZDus7W70kdre62hgeDQOZzjgmv2ySwHeOrUah/7Cw7SJEHjKot/c+gJrTXyKg9BLe3KvXVx3kQWJTua+P9dDOUAgewMF+hHuWXO9rAWUDfhOt8YN2wjONhYLBvgJhGz9zOcpLrQK7MQagu1tfbbcXR73p7dyHatszRdJ0NZnLd8zPhA0iHuMt2J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q3jEYu/vlYxk4U3bXKZbzOs/R29l+RfsSah8udrX0I8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aXGyywWGps3KygCRUZJqvuKtWqyBgIGS3WLUL3scIqijsu4mZU5pcLbzJZhbmxQZhXBgKfCkMrZpQeiFJnpcKEixemseyNoZy8Rrhc8lrmyyrYMpLwtJv8LbJUCxtQRgECpeyG/F4SHPcXCUbhcSwrnGXbgOgbXLKkcP9Wf0gNk87Ch+kR2/iuBifGxieYMJqNgFOb2CmU8Jrp576wR1tiq9s3uenvwUbY+XyasO8RCJ9z30crYegP5URE1pt/QM5h7RmP2tS/LRVsnj/l/C/3YJ49a6E0FhMG/D3xSWc3hTiyghsSqyEz4W6JWLRiS6udPD9WmFFl2o3lSdCjCv6AtR2rtemunhGYQPnHgM6SPf2+2kRWblJn8ALOoYU6cHWtgVV9pKvbJyYFpgRUJaVot/d8A5Se+q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q4a++uPODMn7yHvXCwHLwY4ivzQuOqbh6bFYDNivAng", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8QzX1C16u03DTT20HsMKWP/8AsNh9dWAn5oEXrD+WqY5zNK70iIBbpEDm9VeVHQF2E8seXXibIf/KJ2BXKpZTHL8rJPSQviXrN+55LF1DGMEIlvgeWSx1R0G8zjW+0wycgynRuGITEWXDl60IXXW4w+O/0Tr4ULmt4oXtxReHsUA+a7Ld+m+yj/stWWOnP/yPmVnBz/2Z00KgCK8oyc3EiI5ome22Ub2UYOV4A99kDpH5Fazy8jVlO8adGxDAIWzfOw7c3zOwYWB3+Ox4y32hVkIizolL2UW/50hSgnlVB3b2dktQvo3VwUGUGjjBwDueA9RUbwws0Gz5PwLq34QMm6yfCmAxQVYFBZn+ap7k2ZVZvdZf11qPnQgak7VmYlol+YX241G/azOV0rCc+AP0Ory1XLW3FO5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q4qTdcP221RbWpahNOUxsXWUqWEXQWvoSzvu6r2XpaA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vjl38OOEar1NCk1lUadl+5P1cQYUPVru50OBqqhzfj1UTMEtQg9FoLLy9PpRGgwEbz0D1seUazg1uy3aP6qvGjyy/WNS+sIcCTbuT3U3xTQPi/xh+5JB6CDzYmsxsn9xFKK+AUsXPSkTZlI1vqe8wy6rA8K2TVFgwYgP52fJHBWda1jZZp8e66yM0u7OSZgzV/wfgNGectpf5y6xbJni2ZWTcJjWLaosi4BuDwV/PB9yHWTt0DJQyaRac3owlgev8iFy2eG6MaGXltZEndvoOCntTjyRtRN4HvSSycnlnfbqzJpKovesvRQHS2+kHAy5C4hASbF1jEmYA1GkmqnZ+NFxdbZCkSC65Nqr1PsDdnlBN6DEw8vIt1VBcgBPaJYGh7obJ2YnGxmw+lsEJjPJjdHxTfnQFYZi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q5vWkJKpLtvb1fQillQM5dwnUXXDtDktIv8MHtEH7+Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RxQUeMGjv0zqhlotymWkLAsEPfsytj8tNXHlOGoBgADb+aMnXwMfouCO3RK7A9umCQGOj/zj9vrbk9jEJ/iQBlZVvQSf1S5nyUurbsUNYOjD7s/kZBbkOlaRIpPENo6pN4pwIaC/W0JNO7bp1dieZjo5o4FnF0Fyb3BrHHR4gO0QEROTuRfV6kDG4Kr5R1hK0GoohYQY1/NDk5zdEBCy4+Vhf4xOR4QsTgXHbuud82BvmVGV6cdt0QdeJ4dDp0zcAOuuC2pM8XtBzSbgoaulkgTs6TH2MyeLxSiR1YAtXPN5UsHFEKfWmN8FVgCFqdfvnVgulKIop3QYLv7aNFMsDGL0gJnsDoEApbN1YVPDRUqCD/+2GRgEXErIKEh0VdGsEibTAc0pCy1//CbAargNR5rqi4CCLb1Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q6i+wqEeu9sufwDoY4Scdl/6UQiu+mPBJ+l6lX0YOjs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V+8M6YpLP23No0D7Y+pI2yIGhMQL+D5x+ZEI/e1aCW/08KR1j4VRiu3IOJP2INuzujqLgbLiZQ0c/3ywrDt8c+gw/Wu44xmAfcuuWTexshn3eCBwZ4Zxy0uN0Hf5L1o6FQKXAYTVZrBuI0VrMUilWRjnzqmJ5Brg8Q+XCUma/c7VdGyJMJrrKDCfw9yX6rupezTOe/c4+scSiaCq1NeQY+ojWc3ZUZFzuSDd5x5c8o34hSFmqY67XPNXqutq5cfHTXeZSSfccihva7vc1WlcvuX3F9P/DXNFzvoKq/FHmnPoUKEpec7iVRq31355sTCOcj4hWUdqCB7rIXwz/kbm57hf+ZEdZsEbfhQ2F/CBivxlGdPMPuwVmkztKMVYxtmmAtySFIsqBiSXunFs1Vqa/ADSi5g4Yowz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q6tP+N5nG/+/0819R9ANyahIN/JQ4kFCYgUriB4euWk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Msa2+T1iyHckPCMlir16iRM6Te/parEvFrTu2vZJQ2jrTEHOi4KjZ3s2b7ObHemt92oSdU1r2P98TNmHHuDqQTIDLsKfEtp21Ey7eqTKcs5CEWYOZExwAq3DfFHzE8Sr5WPyFTKe08qnxc53lFFADiCeUVU75RmESLgtdi0KrJFu7v6STpTUN+RLrRS+5yGs2apIO5HiauJ3dwbYMucB0sMPI1XYL/qcP537APXmtzL/NGm+Ol22jsYMe1ZuViNrBadiDecNQIUg5nZ5eS5URJPNOYxUJAgft34e7AiColOgtiTpQW+sSm+/36MCpewjVb6zV/eCoSvc6Nnk5Gxxq4B+F9j6prESZrh4QyEECyzX2HROUBXfTjkG08+2tbGBA1kMrg152Edxu87tqAFpqnck1BK0h5Db", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Q8lNDOtU6J8St/wJkzCpj0UdqYa3RoQ2r3zsFZ/qAz8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/RlZLQo/bIRaknGSkqZa6wchtWB0VeJ8vvvDLAG1oQ9NVkSOus4eL7/ow47JJ3s+Mo+LNJvtnAR5m8MEQ2xSnezdlGeZkP1B2DA8itWNmkRd3zGkZrM7oGkXbzIP/uJqQlCng0sfWce8CAszXZXoATTUlMrztu56Ub0y+KHjSX3jKkGs9GMb1lV/hnAMW3j6+OjI6H9mGTK4kCzmKUf06YVkOF/iGkeGrZ/eyaLhH2F2cXHGuHQo+J7Fj85sXzHbmu8U12JuC14Dj4WNW6sUpYs/H5FjM5nogJBIryHNIRkK6AvDTy4Soi0sZ/L53KRwAgCl73FfiqgnFnmvGrBFAMyMuRL2qx2mRGFgebRBqREKlRGZABMHr9WfTSjWzTEsf7/DAKubzRIcb1DlGBWUofTEvwDq3tTV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QBHkRdtC0o1piwvBKeeHflX6/oV/ATMNykoCppE1j1g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JNBVsGvu0H3EcwfXCqgvixD9luUZ1cRgOflaG/EQZjvEiN2CvzXVOB+7Dzhn8BRQt4iC1IrZC9x9dm3DaKvHHadaX09GmLZKU+0+pCU0c2GOwwZCIrk/M7M3IYwfjfkCeXkUilG+nrrspypLmplZF3KTlpjTFvI4t/jQMv2rVyU7ykrDpAM2MQy6cyelsNLNPF5TVpodtIrFxbnCyk4UbBDAVD1JVR6RCRAQTU+xz2ZWBo38EViucy+CmOK6s1bPvqFoALBWJv1zfbTaGDgISvBkmpiPAM5lxnBGT1z45hTczOaWPGHPAYm1sx1vJQIOdsNeISniRBcjFWSMJvGKjTTefO9nw8I9L4ZFRYTtoDAF4xw67a8/CQsPGVUWmdpV1eqPUqtXF/kGssjzXblC/UA8lN73I2EP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QBIjsUDyFUY88XAJoVhoUyYOmmdJZumwD8urEJ9qZyk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gxEXvm7K+eyxcte+/wyabLYORBoazJPdxECqXbJ46ohmilhxvpeGLR523c9Ii9QwweCrt2ZuZoSEfxC/6Bh/Aou3L+A/SXjHGjq1p4NQO00btJpgAZfLB6SmJ9vFRlRq+3wf1588UjziENGge/+YlRDzPnMsAibLYfR4Yy+jTmXhiTCF56rMJlu0VLukiCbAyn+YEU+Z5XmDQbcJqLBNLJ5d/HMkmupvVVeSGLOKfbhz2byR+GmhbPbutxnQJTO5jVVjBpVWEx7/zOjATVYOsxwqM6GJ8uDHzhRKMw6Ut8UUUqPYou6S4r6f5s09PFpDJ7EEsPBbrVZtoy+npKDxjyWO8gQTNYGTP/zeMzn0WtlGb/tdt4TOqsYUtvDAexnxKb9WKxH1ZDC36c0NzxX/uEeJhxSIUSgp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QCAYiVIGrGt98YWdJqe6rV5QR4NkDnsh6VInfABl7E8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KfEVOfOIuWYbmAsqBKUCvbw6fIliva/vRDuNQ92isXbasyHqwmb4Dlqkz1flTD5j7SzoCns0YQc6tPfK2naUMOOSXSoGn9spUxfSfeFyM8/zbale3NWd55WCR6ovJjOcTpRodhlyq6M8OudLTQ7P5WP71mydejh/OE7mS3cjw1AWwSm0Y1RhI3bWdUcQw0gSBaStbK2KAAyUYGvQ4rT3Ph2q8fzbH96mp53JModyN4C5RyUSr74tpujJeq4Zef3hPpDGMJtKT03VCrRyT5aZgjbFOaNo5UWZZQ3b/AqLBxam66KfXwYXIFI3YsckjdA29CERj06odhG72FRlhhxiAg5h0ID4WjTLN76lWXwB1Br/Mmwl6AorQuKCkhWZKvU6DpNWNJIFlW/pU2t4Nael4gmCzudDnkub", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QCArnE/3CiyxroWTfe1yatpVD6eSBd7f/ZBfVlZzsYY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lw2ozvKIzmq/WkQXWxIA6GaNg6MhsiUwAIi/j6Elwpae0hWdKJMZ1mL8KaYeDV6WMClpCvkNaGi06BFggepmskR83p/WsWKZbI3VbJ1MpEQvDKESaeP1rE4iMMI1Y//WVMNi06x2dlAM0lvFqu5maB/zxjjrWx7wL0gUrpsaxDmW1yVulyKJ44nyt4xael7fuiHEad4LN6x/5IT8ylb+ySCz08pva6w99J2sUdkzcLq8WU+Ezm9aSwlMmdvw+kKUMexELBBqtpVZptKXHnjhfQfGNRd1bEgarEselH35gxMxe54oka4FULGoKjCEGCkH88kjd50js1bjNocNv28Lytq6vRkl2wH8oRfi1cenJ6uKR+wVoQiigQzKFlzcSEXCwlyo2doSQfkifJQ6zhW4eWFP38WVl77x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QDaQmk3OGCISHWoieAfP17C2G87dgqiu2KL93g7I+kI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TTOdEHa7mqfYHJTD0ePzeDeJby/MMQH2jlePR4WVRLsoeoy0tSDiry/c/TibiiMibwqJGBw+GJRKSJa2C8r1drXdHlMBdhip0IOc6MJrkPci6hOlFrr3bSsj7+lYr++tDbZlOzzGaQcu9BsL2HmnVvaxb5DQohdB1Sp1f7cNxBnQSLC6o63rdJ5FrIl9KidKyo9Ctvu5xUOOJknY2fYBsYY5nSP/VduyRuB7k2us3+kjmq27CVbZrHA9cTFGRVTJDjFFfKcHTYgUz/mGDH8Qn9imWKffMH8xG/ZlU3l2mtxU2L/1RX5UGlZXBPe/VicclorDQAbRmoDzJzvjuWLxENzYqxVJ44kRD1kayVJozj3+lDPdcqC9CGgqUqlnJUABwEnxRJXyGPOtDlTfu3Dcm3D2vSSC7vxD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QEsGRATHV7j+rFJRcGjaHZriq/nghhioH01uxYxGkZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MdGBQJRl3ZmUmYFHuQb8uKTX0wDwhgFY0cfMvBfLyCNuaWkYNskiGfZrqI8acXkTyaxQ8dKWzzVlGNfO8pTIJ4idFf712DsqCAGx7XHc+pxLBULMxA3+LM9LSLevduOZwwPQcdq5WuEw2J4G8Gtg4KUze3ESxrv9tsdUbjm2jvNZsBcIRI0tzoh1Bbwtqbk0c1FoZcsvQYvdMcAw20wBsne7X/mmIEIm7qhzgX9Q76A8/EU2YcL8fnJAfCYShoYAaEu4sXZmP0wmL9sAxzx6xD39CcDzFMul0b9w+meunVZ3SP85e8MaMHz7CC2s+MY370imY0Fw6u5HcwsWgzYaD2fIg2ZaVZ05786O6ZyiZAFd4GRrHqbvq3isisR4vAOkMG7Qr8nWdUXaxuL3VvgFVCrFnBIzmXSD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QFeCD5NIfrp188kbZ6j/nS+e9On7me9+KuOINVO50W8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x596BtElGC46zmHPxzNFjcmVFtCCBeYcXVhfbqrSCLOZVcE7Ka0KuGNGBGMkY682tZ5N5Ap0xOSolTvayuL5IRLEV0ECZr/N+gjnWtL+ddwh0fJ8CI/osF9dKvHjdsVPmsQvOdPicJSxstTL4TrMLizo8Dab/4kSqaTpdYVfO5+HvyfAj0RYVuXgdwt6zQoMtJMqE6D82OaKdz6LgQSM0CqfGKeVYIlyqdauq6t3TjBbWZvyLKCDTYYPNKPIoFJpUY0vwgd1rz0IrNBAUhJpsCA326YzH7TswNbRSYVKcw1Gs0Dijv43juyFdHgv8tRxNd0rafhSKsbnDeIhGAej4WnGwiCXoLNTydyP48O9eCGYO//+teYvWfQ4mSSU0rYCx8mWl3rTpt77ZhakyAjNh9izAdJ8w0Gh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QGWOcsVo1QMBlqK8CgQNPXsjfliH82EQbNaQAGPF9cI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+2CWyuDsko7lZcLGUqsReA73/sZ28jvam0XY5E8djLOFxTORoddQT7/MPQWyZh5Q4RhcD70AlOLpZ9A+EQZ55mJT/HtWY3DihdGQwR5o0kLWP+9l0UT7k9E/AV4LU/v2E/aodNIv9G96/F/ksIv9GXb0Xy+pp6MMQQIVF/52NrrzAtzQUMrnbA50btkgvHTBppTGR+LZzipeLKTg7ZPgdJwH7g2s6HSPWRg38i2Mr0g5WZhdhNPyjl0yIH65yyz4UpGLSTknjdMZFFh4Ec4GsS+v1Y3zT6SOJNxUw3/NF0svB6j/GRgQW1/Q8d4Q92efm3gxyQxtH2twH5mAuDabRJEgytMoOzVdOz/do5hxLXtJvgBfaUrjcZanLS54rMu9Fn05zCfTQMhMUoG466gH23QIVMOOSlCR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QGfJnK18T2uENxJM2XtFv3Gx6I7XGRxV0GxR6+4SVaA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TPu2VQ63ohNMfN5El5SXp/FFy5L5fZBY46+RxxQubyHL24PhlfI6HH7zjNskJR2i4i8/5HJrRe+REOblNc64gOPw8ed61lvixt7PSqeqKiCAcB7/oUNx3hnOm4t3D7qfUQr/tv+QfSsKZ6VmSIoHXeugTZeJUEgSds8ZPEXKNNLLYp4/srZGuRUJ8O8Z2c6cRNB2r4LQdpsw4GeUvQSIeYGMXnFQil/LW2gsxvR4BLAejpxqTAxRBQasDH2L17YTGAxTZFyo5BZ/9SfAeIisogH0o3uVb3caKGJI5vCtRKrCwCmuHFMTyWcmMylU5Sv1tzzYB+euDMCOmIP11L8DUYBWp/rcIASd/2Rm1XpioO/1CaU0xNVoVLlnQ8/9FywvozKk+UHVnK72I3IiafS/R1xXVVonn4uL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QGkiKzHJrCrTysOb/WVARf7HnRPFxBe5ZVsjfBo+Bf4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j895CcBjIFsr1Ek9SatFs0f5IEWp4YiZASAwbbVUBSYgTkaw0FP7uOIOE3Sp7cJoIRibnG+hym7lppUWZo6+aKweL6MGn87EtGklLk9guwewGqwkEGczmHEJpQPbY6x0JCsP4S7WvSYVzMPEUou8bzP84dTzxoFai7A8gSaPdDqmBEAO7ocdVpZaCIiwWJS3DMb6freyOecfMykzJibl5RmZW3pv6FvzOCmpcb8DtBBEx4KOr/WB+Hv2Ytq7kT7TSaGsABZ9mNehFzWZbBjOk7VKAJYjKVtmKmU0djgeet7gEF8s7BAMT8ad1QarfzctRpvvjh12v+f4u1zh1W7oB5mnSZWlQX20JQ3r0AXE3IPKNEmImr0rivhnPR9+OCHjXcHSM1x/adsY1qoxtd3EFgpPKeq7Q6rJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QHOg+h1miJlfrj3vxza5njADMh9lOPE95ykmyDx37zo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Hxxa7/7rIn0feBO9te9AsmI9PCPmLfJY8xjdPetf78fh3JF3gQR/IRv0lXY0BGHTobVqn1k6QwBwShCUHGtfynLAMuSjkMPMuZSCBLy7T7tRfG5HAycyuwKH419cIO7c5OrqV+jRu0YzMAzJ1bxx9zjDRemDECGnNwIX471+huDx6TIUX3Yo9dmMfWmCYX/NGV1lYn9kBul4UNJTo/Z3Yhs3V16s4n8TTtyBunqEgPUIDJW/GWBa+2x29qfNcKzrfiBHjCbr/YFPt+/D19r39lVVoKkAgFqv1gSC3nY753DQV5yLaIxgBlSBWVBU0sluDxbk6trKoVZwVJPTbmbJ35F9HIV94Ruatl/Yry0UCm/lXzwtrHQ/RThFi1UX1Mqm70pzhPdw4nEySKWJSeMYmNgmKnKhsDAB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QHSsjErAGKf8jIVrHpy2pmSOAfVIbjvbkyaHFedjpfs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ragyDHydJTYRDWojYGdoJSOG8j8pt4Hxnn3aHTuuAE71Znanu6ESdvTn3WmJrIqohEJYmH+uCdx04+5TQpB3HWaW3CaXVBFAtIDmUKsgCEmPRdUPvF3QcJZlW2auZWUTpbTgMLs7S0RKBx7APiHSXdJ0BTxBgHeY1NYeT1gPvmpMmIuhZul5CU7bO6A5wQ+jqdAen86clh+V1dQnatp4aW4HyeERFxh75xZF4w4VvxIQ77yCRxsLGyVffk7zl7XABYItL4siZ8PDqd0SVjUzWo74ESAOral5vpLIkSSJ+HQksPIi5di2BFL8nmi8yiX1Ivew6sa4gYsWGakUIIraLWFQWUvyresEvkxVny3qqWVZuBJ4OIQMQ6Msp4yBgeSJDjhC9yFlfpaNhm9sG81HVsNZ2sWZ6/Lq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QJXJlqkABTachuDr8MpgO3vQ4DIfrd3/kmB1hliTPtk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rZplolhF44iVlOskfvsFEvJnlh0tUEVkk0OQx8TA4zKnM5xDbj3bystRNgIY6l4Z843p2oEtp5phrCEuRX/ZRA0Fvgx5u3hIxsSRApToRW+5k4EpPzpMjIDsWRvlyZPa3nNMxsWHOmPcgvSD2/YJe2J753VGsTbxwT9TodXIqSPGJJZ/TB1KD7f36LxBZUJKV1VnvPmb1uY8zUbJRzVo3sNVqj0VQzK4cAb7OOsd1SDb9GtsdB24CN7rdK+FqWyauGIccnSjs/fpZYg4wJhxYde0WJRn2P7RIOVVs3YLmuE3GMYDXHw8TDto6rwEWvZqpBIDxuFRgDTOq1QdOVV0/fur0RGfqmFRnAYZyo/+qCShKPv0wyTTEwf6YaUcw6iXE1FnjvlXDz3aukmljeKXTK4QjFytgEbW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QJiNJpFoOMmXnevjkXQyVRbDMRmdXQLCjgJaRlYJbrE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w4oPFuwHa69BjuF1sqcuiWis543hcaDOaUYhiG+tSxG1aL952f+jV/O5anhTO5dFMm91rWzA2Hf4Xy8+CMy5zcHSjjpDTvieshu+2VXXL8oLam6rYNuPJE4y0qJbmHt2Xvg68A9hw90+WHCa5bMWo4KfEEjEw+tguSjetKl3vJ/xx+ORgz0SMwuMXXgueNpKU92jcGaWB+ZeD8qeIcMzjbF1eWe8lmGcNq5NN0v1lAtGht1NRrNW/av4DUQ5TaXzHhFj1E5dYggkJ/Xj984roFHQhiPGnUtphFUi92Z1wn/DGxs8AV/iuOAeNQDTNW6Ue5h3a4An7Iw4q6yWYuhoU+btHfcs9gnaG2+hoqcTikq3lUDu5ieq+Xyo/ywcmgsIk0Blhd0dbMf1zet0K3UwZV+8gFA/jN4/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QK/azWOZ1LcDi+YdS6EvvZHg1YHuKSfBVJVubiLaIRg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SbPv3fYJlD8W6rk0m0PIXHro957feAAr0QGFTQxwIN8q9iuOPaKdvHECKP2xj8kTQ26Q32J9MAGsJQegh+WE9Ua6ayCiXDSAIRKaUAoSOlTsHEDNdkFW/yKsV+3b2WCEqqA+oG3EV8GvefQzAqCGE8m01fSrcT0/mqAV3NnuGXdN4hYxi53E9v4XpJnA1pOb9Xvf9JBiOvmCGryy3MJr43wrVHAlW2kU382edYwtVdvqjoOdZc8pYri/ccX/AtybReufW11eGJHWQlyAO/XpDGmAenSDWpE29cvpYo5KpR25grsYneG93Yk1TF+fTbElbs5dpfhUcBurCHmgrEMDksuCEAPmTnEGyRsUEFuGAAHh6YDvkiDNVNIClTFpsBZnxYKkPcg6CYhsZozDzSlOQEXaXuMzWSl+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QKUuV8XQr+WGOCTs4h3K8ZJ8EcC7EC/5Hs/muz4fCJE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "D1TB+2w7n1hHrNV2CeJ8WWdRCRPfdHpKegPKP3+hanYmIdBm9cxzn8+n1KWyBipLb47o3IOv2tOMB2FLJgXEUQjM+gLQ/7DNNmlbFxXbcF1+VCUQ+cPQ3Cz5JrpSOaIiz+UGeimwWoYNF174OJNhqu8IfMqRnbC+oaxF9XJKg6NHa1mrJMP2dOoaHhL4XJau+zFnU+H7YzXHUur4PA7nx2hIh/InvgB3YvXc3Pf6/LQSf9cGo+9AMajD1Yhi6bitEzK8vhatfQB9WsABN4LsOynrGQpmqJwKQwmBnXFC2/p3SiAGQ0F1uBcshfcWX1HtFeeaIHkQYPpaBeFt3INpNDFZv2Ql2I2964EUgb0TIjP3J8ch2vkP3zL1W/+cbHyFZVRn8iFaOQQ1rLSwe313BlpIi47gtjMq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QLPY6T9WD/x8B5pJfOq0LCmMtgKCOy3O8xPNWhKyiCY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kBhEdbVWGGeWyLTBaP8bP2/O2fGtJkbRrN54A5yEwmU8C0siAcEvEMuQk0HJG3u6w6vjFMYL/rqupKQu3BHmQQn9vUpDIh2M7lKHf+/OC1NDUOmziZ1j/LUGEETSbX2uCSA6JsfoFQf/nqwzaq2qvsSgXPlS6fKsDtXyMUG0z/gMbjhYulg7mBnOxRe881nTY5RVf+qpaXrHh4SBnEmoG4EWxIy9RBHFKyR3j4njcVDIZIAaMvVCCQCjM/PO/ICRJcmQ8JTH6RuYK0Hi7Ka3R4+GPEWqGgiqWP92rrLSDmSAGcu0TmlcB3pB874Jf/lRx+F1/7vmSlnNW5UQ4MAI1Slnx8g7zVxvT3Rgjv8eKB1VJtMsrovnXJWxINP7AAYfbnCBtBGrQA+XNd83RoiHNdV3svKCwum2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QLo19kCOHP4yupPKJpR9c+raoxnuYm4+JldTRYKDDpI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "68us269CJ3bs/HvmYXAfvXWhYuQKOjkeLVMaLEViDoHY/m/WCBmwDPGRSLpw1gb4bSqR4LsXuDNdM8N3c1G4cpBrPLOGLrdTTkrBAoIsev9cp1Pl51mWBs6Z8VI91CBQwSEXWGJaGrRNIA1m38DJ3H2Hpc21tpImEo+UFYR+jn4BMEGKYo44l7MISj9FbKwyMWT1kZHD2T3FQyrprfrGI7mHivzQJmymtcN+7o0NtQRRqlysyON6uToIYJqJowUJn0LF/Xkp20T6ng+RB/1kQ4FQy1kZ60yk4jqN9N/WEnpDK5AqeqPfwQJ1NI5pknruhLSaHXKraFlMxgtRIzRtUeO8jnehcwmr6TC2eYLNBH7lYEbAOGaIaUnkRQx7p7uTOveiwusIZKdGZM+sH5wbBOMpqupOsepX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QM0r1EWNAdjhA3buBWQv7abNt4HhVRCQlvl/ghgTX0w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ij1vzy6CKk5Dkpgi3pUZ0rURUAlpB6IqaJleYQwOti7JeBBK4z8ORRhu/hQJsWmm1ebh+w4DNrcnrFw/b1trVPzXMj4ehf/uL1M8164h47t2ejgcmODtYTNm4m5dMV5IHZF2b3Qi6J/xXCDrKYUdf+FpQQoaqj9RJ0YS6WOa0Grr14dkEhVTkNqmNoX94xQ5Wh5BjlpJdfJlTFwzyMnVvAranIAPgisevmLGBwvLZqfTy9ZcfYQRMb+j+8gD5JLusVh78n7nh7dE0CJVnENlNutzeX+/fRHOcn1+xWkA3c+/Sdrro2NQtpY6kKEdZo44wRPy+zLk9YbmQz/ycZMc+raQOk1+50wK2bk4GMPe7eVcv22r/4Lcko1Lpo32qn+IY64SjsbxsQzpizRoOOvqc2UhhLRkVNu8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QM3M9f0S/OmICsY6+s7PtHLalgpJO3nWa4tSBpE9k2s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jsgaziLo4Y82JwXB3VJB8eeoeIkzOjlIDjRPhSMyFIF9CFtv3BrAZJNzuj+AzmlmogS1BmbuwJRJbL2wfnLomtDJoEh+kfwit6GtKkdjt9DxY7tvMIrW+jDEMFcQG7/6AXWroAUWvrkxIcTZJCSaNLhGXwabEJIUrqgWqERXD7CqCDofxDMHCoVPKGkIiOUdpgiH7WImpuIoFPG8J4FAhM4nl6DQ0gAvhveIZ4ZzYooEzmlkdhoEkJVrO1Qss5kJJ41XDp8tibvOOtoxHTijG1ZKcYpHYsmiVJAXnqjUDUlokHZRrhWajO3pyxVpbiS6n7+uJoGb/5BzyhoO5NpoHaMMAP18jvPLMmlrqq8KQc3YwaQsBt/XpTbjwgUC3gmMJVw7wyQZy8cey7gJKAqC8mcoevXDvTre", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QMP7gzUsjLRHl+d/6AlH/ilkjoH99dvyM5INRcz3rHc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TWAms4CgmZdDyqpnJgYVxUtOImndtj8EdAV+EZEaw0i+gq80i/Inolh47yCw17J5HGs3I/VM6rWW0zjpJ5WFRECYZO83pkoNc0/1WpP8I58Js2gTX4zf0E8p5I2Vf8OqsIUY9YVYlEpfzc3YrlQ62e4fa9oz+9CkCaZgm/gx6NSAgZqiugnF8w+wzz9d9atz2W1JaJtXWpvc8EtF61cNB9ELKj0v3M2uTxJeH+12Yyib+zti/uZ0IA6DwbXIcdNWNKeyd/kFkuwt9s5k90Y3GNXZkvkHXNmpcdrY8VLSnvG9NtwoCmp85HKzzoZNC2QJBh7qkcX+mXvUcBUy6YIxe4vos+y1vejIHnO3WnZz1cjAOwZgltbPck8pVnsZWi12mxLizIFubBPyypzul76rUFETYKmQw9AU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QN7iW6G7Gxbjv38IsUXzhwhHAmNzYp4aWbSJShmly4c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "93o5mnG/FSP+XXXqhUiFvwQU70ZvK9Wzb38Zfm/rV4T5XCgQ2C/2d3y+0EYJWLIOdR6yCg1tuztZdCBTU0eGJjD4D4kXolrj1OZJ5SUceIYvQG9QLOgSsJBZ/eeLrowegdo5IuetbLScu+75wvs4m47KhRzqv0g66b6tBqp8c/0NY1oCBnMcxqVORq3GLS0zEla1BncBUaXSvKhcxY9Qsf7AKI0WdPzWgpeXIhURmBzTgrLLxzp5zGgGD8F15UikrlwmQxDmtaUXCfpPSgbRIgvlN1dGZv8L9C/1RLO1C8ZYcgWLRNRTzjlqYnC5kjkeMneYwZwd903Y6nBlMYLru1PQ5XEl5kiA/0tCBIAaSts2+njq6mQLVrdQaDiMdl24O7OgOLjL0EaG7fGOSQV8DH4RGFtYV93w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QOL8muUzs2gV20nOFE6GE5DejyRJBpTNHNQMd3c/NdE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VL/CiPWd6dTw0nnCGV3tUJxKqoYMcAcdf5ezFITE01eZIQUAKPRA7zuxTRXEFa0rc31qsNTGxA4GHgpv2fIFE0F+QBqtqpGc3eqMO5dB27bPNM0GobzrSviBwIEFcGrO9DuPhgnVy48V3GSCOqWf6WFC8XBhwefWJ8BFo4t13oi+hui4F15cA0yzzmeHkA4p3e5VCdZWeuPORv9nOXzSpQ1ekSe48F9GBk+imUM782ufh9WZH4Iwlcszjq8CV2IJLHicmMgHNq9QKtN2DDN2YK1u/fWhytdpxfoSeI5FHOUe/73+Us0eAA1apMm2QmMJjqvt/NuiaVzmpYkhAk/f3kWN2JRAGXjC9nSa026T+oWAxHd9L8mlNJ7hHkc6E7TD0MRTov+b8T0JtXWyj8i+BzkBswp+8Sfq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QQTpsXg8W30pDqjDMLw7XcE962/z+E6VkAgC38gAGDs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qzeKE1ycVtCO1ZVxmDBn1lCc8Drzz3fvyuDYgyeGuzYOTT0GsgOe8MVN4MGw+gJoDt8unxg/J5v7fP/cKTlYnfdjBNzhPB6UP1vmMvV8UqP0Efc3XrT2dNL1gUSZCTgZp3/B6D/ipjhveedDKhgwZ3blTRl94hINj2tPTvEfyoqNn0weP853bfY/+EhH4N8IIr4cnTrMsR1hF7Lrmz7m1U8qdlpuJn4G5iV5J1jFaUKQ1EosIV4qw6AFjOs0HHxnqT3tzDqWLZHkgwpFJaXZHHsoVPSz0kJWSUhz+Tj9BePzhOtJxc/OaPmxioNbo6vGVkFdsd9LSswpJFGYrZ1qfDo7OXL0DlSErSMr9/jJ4zNo+FGeoPAYSgWhrztIb079Yc1wZ3E06nxoXLWMVB/qb8fedg5rSJbM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QQmCD3hwAi263kLkxo7kShpztFcvFF+s48867STU0po", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "n1EaE0LK82qWALxmArkeBI7uUHbCXGuPaWS7k7BVxTpl5ySNofxSXYg59H754Ry2jqXTI5z2W5TKfI7e8Jzn5YhVQU4wyRwHmxP/ubAlnjzmr/2wUmqn3zFhkblevAJ95Ooyzb655NbGNx0egdJnwyt2/5CEM/SEdsO37zZCVD0qTbMBaLYYghCxpH6sA4zBwaIfMAiKuUENK+tyYZ3KvMMKbQqWU0Ktbtc7V9Cr8rRRpswQ2f/NWBjFFCpvRVIwvVNTvYh0pBly59OF4wYoo1wWu0MNYpkVLMnZrp+BCBcGCh1tAFq1NvJr34eEc0UBi/6GOwNXRrjxGoEGr3w0NNfrmaD+sCLQiAtYlI65FAgEhlZ+sX4Zh3swalrYLAGf1rEmqG7+OYQ3O7k5cLuXq64n166e/so4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QSP3xkYAvH48j4BurxU+gJA+/+UIaaGr1Ap4AWtcot0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s57W2jo+kLKQwJrj6OqXnk+ljmKcFmWtNydnpvtCo8EDgJhV3PNpyocfGWp6WrfCQuTStKqzu1qw4Qp6AOXTY0/YNfk5MhvmctIXpWShPcBoLqnTH1M6kmOrkpme8FoNHewXnYRv2CsxBi0ecgCbmLcu+DHx/iru/8ske8tTVDI6WIqLDCS/LwFVz6gOAZxyMMq24HszCx1b62RNnAcfQIdBd0uIWKdZKFjoxtoOv1s9VB6MWRINMIa1mnC+9i9633a/bZqNxD6RLgEBXUQkYVhMoyu5hX7apLwMYVbOemaAwL8IK5kid3axuqdqfjtMS/Rst0zk1u4bzwbzV17OCVdiolHMIfW0/V/vWtHO3P45dj4V0kIHo3ud3Pn5SXaCuPvbIV9zx05U9Kd7aCiqkxBDmcjMw/Q8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QSYYp5umwuvGeac4A/zsy8vKp7aviEDonU2+6z5C8jg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8n6iJXhqq1lOugI57tBX+MUfWCX0PqFzh7ZTk9CEj4q2CCnjjOIRi8ynJxvQPoAhLiAtop87fr2Veo5mXeeBewE0bDN/0stAtBaPUST/MwKZ0tTn+FJZVwaeJ6rgcGESoC2iuYH17TwTknWK3DZyvKF6f8d8AyHA1qHxob6RW4mSvoaI4k/+uz1Jt8gF43lSmk6N6fpM2hJR/3ZNGAD9OEOQg7zsZRkvq9iRaO9hEDnGLbT/u9GNnz48avZ+1cRU57upd4I/ymyt0Cn5gW151oFl/4/yj6eXDkxbVcDsb4P8flulBZCL3DG1iIx692rweCYh5IAGoPpfT1X4p+5HlgB9Zzk6q6aVg+GfhJrdGFCeT9y9GNBWpEAinbxD2B+ru5eFbGrS54Xi0sK6MA0zhjtXlXgKv26N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QTABvIbOq7P9X2PasCcf7QX/gmXSrNVoDbGy1YAn+Z8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ORrfXDIl2gjxIJRrwGUPJdA7lNxmAd6A+IhM9sN4USLB7rcEYdbtVmcuQLUbYY75DPLYpa0LflxMjK3zkQpV9eqV0lBRsDGbwuRgJjRcJgRJVI8GSZMkvBAA4SYWDAGbo2HPhaO0rhgLr1M4i+U5y1g7Lcyr/IDXcE7mcO3tE5aVbPD+QEfA+iXrUfttAtbUpCejAV8ahfZLm9hrxkMfNCBfxBZQyHVWiCnyb2I9hLBrVlsCsvymve0eiIF7opWL4i7MENzG9Al+i72buIAYMcGEGiwjiAaTxnlFhK33TjBWqFLTeDZ45eHG4SZQoCYTq/P+XobxY23WsdUAjvRtPeEM0/yCQ9PCXYm8C2rRrcDTQS1+OkZ6Zit4Hq55jpB2q+zEAosOJPez91i2m72SgaQrDT25p0FZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QTYfZuOisVKHhAoPs7gfwXqOjiMD3vO96YlAyp/t2PY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eU219yj3HLn/JicOniROAISE6vAQnVs0NZNKPWI7oMExkjMdQLyEq4nsCfXqvWwnTIjSjXe3QQWB3O1UQ9W2+7ysJbtv/l70o1N3BE9KbUXGJr90iicil3wM2eRmTzK6UGlAfwBWkcWvtoDm9KqYceAB+Wy1ZNgkRMZcEwSb3s+6jMTuqExRScmdTYRSBz77REUOZcJ7HQ7Ett8gssoJgOfXEvFFgcoPsgm1NlI7RPBk1+sGTS5wSLJlm4xBb9tx2S27Jv55Z60wXhU1WZWWOtRnIie0gPYNixQuAM8d6DkpePfaaJCjx9WvMdPO/td14KRZHsOwA4Ngjb8o5wTzUMHFfxVg6pOZ5rjYGA6UPDOEujiW23h9cQ/Hq2RHOxOu42UysfiMQy4nt45pxcldsaFQct60M4ng", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QV2XluW3KksKQ7AuiOwsAbTLMlihO88YlH1uZgySEoE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1yTX7L4pmMiZtuWdskE6AL5inj2tR4OZXUDJXPDJltwMmXUuyrXA34O8P4kg7zWOTvdsvMgOypf3QruJqafQeKsGAlpY8kxl0sI6lhLQhD8LHPjEhIaeoZ5r7cfOJI0K3YzksRct+HcaoEDseeK9ARS/W/pv/OazLi2gkm74Bar8j6JYJoDO3pW13Vm3POCeNPpd0z8vkR3vty2VXlwnAyAn8QA3gj+rw7qK5+bNAGLOd792neIxhTtHScZdB9EzhZabMceaWTKQ/ByyFquTnCMAPSU9BmbAe8uTuwpMCcM+WxCI+NX3P5u4fmpxInMIDOnOqGW0M16IYGhaowJqsEJxR2AtiqtmUoyTZlbCJYXDlwTPPdfjw0gcGXFoBUt5tcjWkRGG3ahN1hlFqavwwzGAVHTZr9l/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QV7bhXTZSZfMbjQyccH/+jBp63IJarUyt6JL9wfFi/g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E0QhyLGF/l1KSCcT9o5LREcZcc6wc73J6zTeFUK7r6c9mvDeJgbw4JLd+IS6euy21YqqHA0ML9xVz6sSyllHc0CM2WQP5kz3T10Q0cAZnW84arhGIAWg7wkE1pkBxigOSIFf/X9aGzlYG8BpHU+b9Wg+dkXYjmW0TiMCxFIpRjLVehln/MXQs315A55SfXAM064sAGV8lAtjmvXDvYRjnjE0uhDmxxpS7+ShVmyMIEKXV4XmGzskv97qCPjyRhZjS+kynVW73GF/tnTEPWnKC3gFg9qH369LuT2Vz74KDtWOAK9YKEccIW8IEhfM6GdhWEoSnHqjhbdihFb8JmebmDHtEhOyzULujrWt/cDu730FZZlIlttXxFxWcig9YY5DAhgxPunoQ/JmGnWZTrXveIUTh8AzJeAD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QWJIUNIUsCVfWCeseFEckTiz+zzJWSl111e7WWoZwlE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/goxe9rnHklEUSGrjbfTwmPAsJja/mq+KCYv6rEKYeHiKLyuMcjIqbX5poaxWIcdlOXa8TiYHYCF3GF6wl+Ve0X4ubkgI392kKq+/5A54Ae5pqJiI6ESLyXztAe0GOG+qoOH34yNuBzdRtIzNNGGVOKbOAMDM2Nl0jnHVGNrrAIsxVsBSti6q9yCb4ExzJbRzT303tpilbGBl5MaESqrJkYX5blLLcrJKtA9YN9rhxdA1O6K5WTHSPXlT8yME9wS4QGFi527a0ZxXUpkjTAUE61GzUyGPZ4hCuDqhUt7BAM2xs8zFDBN4ykx8dWIMr3E+8UsaEjZZCpcldoE68vTmGp7CJqcvSVuK2CDEikn3+mcKxuVKUy0+uNJu01ic3cYPJzq2BSQFIAm9NoGfXSP/UxSo10+7Bpx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QX92HNVGbDTkCkAYGtSEsP8nVCYvr1Ew9x6J+7FOhsw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "h2Hy4VXfUi9ebmenJwD20CBDr0ON83AooT+IfBjaItfVdPh3sPnK+7mSt5gLwqavXkwzgjL5UX19AwNc6bvd9N2qrMuo07Y5vdfRLUeElpC6RUiOQ+n4sSN8dBpPhmOJdQrhRiKXuaClu/PGhBeeOc+Y1B0BZocqDOI+l4PSoxvX+DmZUEY/67cnWCp8a4D3K1qk+SGafZyw+9i4aBoVPv8NuFZ+m6psgfOiLLzxuarwTPqFYlwYttnliH4xu3/x9KmV8RDVrhYAeRzpTX8LFE9Lskmt2My0Ua3cS6nzuDsln8KQanO8z3Q7/IJN8H3U1SOHotTkWtxeEQ9qUJpoUwBrTtCXHUXW11A0BeEOtHR3Bxwu6eMUNivky1zLXlxokOnMywEfeWXLtaaSNgUsfApVga8Dq88x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QXVXAC9+v01vTenubXgl+rfmQVFk2mLKRyit7CD9Qjc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6kIUm6e89NoKJmeGiqoTajIQ8Xdrhj2z236+ytlZD1bn11IczYB61ydpeTd0SdQGd+qj2/umK7UAqRLbK04ZN11GvHg8swGKezYlx5a+wSn8Nw9CMy1RT+LW6z2L7etn0Xk7lKSEm0edCB5Lf8HKJemtOveOkAV/6Fk93MelmnPEwh7XwCzh3QeGKUwDA8PLOGLe483n27aUgE6+zlYZaaKB1vo/clpLECnNzVNyRvqM3VNJuU2ey27RLSmWP9JDfL+HyeV1QOLcnoy5Ny3EukxUbOKKnvKwokdCNbQMXQmqKC4Owlp+dvf4O/EzrVO2Hg65eQAC3SwVfdCocWtEWykxqiSmKY480wYH6VuyyzDbCjlac9HYa0Dop16LwmVJiwwOSL34u0a3htvkAqPG48+fn2Okyrne", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QY5dkcJNWasU2sveIOZOriRpoN37UaZhBJvucFAQcfs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i7Dlzo5HKnRI562rBlW0T35cKZ8FynoG0w6N/4zP5SrxUkg7+dtLjbY8xl3VuL+ZHzmstl0O8ImG/UrqECDinY6JbYYqDow7Gb5o86ifIN3e7YDg1yhssLCVmRA53APDuEY96UlZgX942roCJ/22Zl7K52ATmwif8Eg6yu4MMZZvOBr/BSqT6JuaDjwGW9cHhNh1O6IvjMJrY9e7ea96gfkQM82IJSHfoId7gdcMStwIVdT/XQPhmYA/k3HGtSVsAKJrgR4vzw9eyB9eCgte84xpd46/TVFGuPi2Jo7yJXuUJVXPrlzEaz0ngok50EVXmaZeCAnZXG6GRqddhGP5kZfFlki8bP9D8wPdOEyKDJDUTxaXIjKdEAnou2J8asquKedbNaCtmq27aNycLDa7w73UvY8sM1jP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QYNWtHQCe/sOJKIsj6cIi7/JlsGy6GfZjH+fQHcZd1g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v4qjQdg+wq8AD/0ZTbcWY4P2FaTbLyw0fsuBO7pUtmpAa3h/PZDkVXoArhVLp2OV6hbEKD0Cv9qtgkKsDRrFNq/NQA3ZXPEHG+UXcMdWJ5WWspMr5mjyBX7NT30T6PP/s4t+RSIpjKIO0in5jod0eB4uQAb+ffdJ4Gkz0ce62Zl8aq9/oe0JKP3Kk9Wt9O8w05y37ZRVxN0cO5Dw8Bl1GYIvQ99Q1RJfCP/36Vo2yiI7scrZipSNLac4VeY/jTX3LP/HyyW0MZPz7hpOfyaYAea6UIHTcovxeTuF5KZ7Z1pd8GRwB4D1JLvphFaQiIAtPWEUeG7EWdp1v0V1niQSiwXq7OuRfImuoKkynQkhD9iZhEN1kuaeQRuGqASa85lm4mtcpwETdCP5bfkDLu7nWN6+8KqouDvQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QYdwz1JT7J5N3CXqLz7iGftQKHJnXfFXh+vw/IOEUMM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9ZqywrC9dzleigl/nELjh4wqQuB1fZPkM/EgvrcRQeTWHaC9o3D5rUV29CoSa2exupTcWGsjYh/hX7zM783Or9cq/CnuFgLxpPEBJ1V7TbgoCCu8pxv7iLPf3jlbPoo3u7qhXdXyEbusQmu5WCOyjVMLxCX1r6Zwc6mp4lBptHgzUo4lLX0bS534JJc41GEsxeRrQoP/tp3if32aOaJ8LB0OLf8tWOaGbaymYbP0jaFTRYPjWX4l5zkaglFX+jUmLiL7Z+xg2IAm+RMUczH+EskUQD4FSScVQxnJfrY20jrou2fq5FGCphg2M1ck4D6QaNBeu/L2ssb9jjLoKEaBqv3nrI8gRILkus3o/9+FRZyxY+euijzgrCb79ev+kvl4QsQOBQg6SuOl5MCELWh4xCDn0hCffTLh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QZ7aRP/Xn1Hx2KYVXr5HiKxt8yZgjZly8N+0+89rx1M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VK0EEnJ9qXJctqTVtQqRFSrpfAS8nzZ0Ga/aaYA3h61Dio/zddd9IvYU2zXELFjpknEmOmnWqhZ7mzUojvAVunSdgczPcDVdcOfsuve4EtY7r5bTzqbvtUHD6ARyLVU370CzIfLUnHFQ7iJyoRh/HP+zH1cyPNQJCs9cs7efuil/wGqyHUH9Mie5rRBMwKagxKOwd+ODno9gKh+NyLLKcOlO3OjGSJqqHyd+Nvt6ILSoJQ+JAe6/lWJSpLQNHiH7rq9dXcBI4YkAktLj8Wkr4kk/N4E5M25BdZLu7+vYL4GV7HJ2okklNdRxwD3mACODckxu2grvBedomoQizaN9aypciTBweBOBimd/D4wMXOt5d4mSHe8Bgs4xFH2+ktEaO+cpjz7QTRpIugZxA4oEc2O9s/tBDFvw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QaEMdldlo7htJEcbqKzqwHDFqkWc8Ad/QyCpWa9z8E8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oguCladvrrUyPmal4TgfKVLf3J/N2EZfyw+Jn+OOdzXXUO2EHh5CfeEY6lnJlhaM6WJqbPlg7JEC5z0Nr7qVspXgMkJcgx/BFQlLxMEVNoREWYrkDHzyUc3lObWwCOhGeQDzfdg+KcjNNAYqYUiG82s7dWU74UgJcklqr88YiW9NLU1ZKaxKmGpDuA8xoOkrkaz4UohqCwyCcwL1kiLY5knFJoflpv2ggw+bmDAIm/PPbBrrl0bPwjEQkDeyRUeKD0+/qmopAML+cOHya8KbQH1pDY15zC5HRaLdDn2PkLgMxkkgRyUVH1YSH1AN+74buLN56hsyRVtTdmTO65UUMXjZgkbYTWgF6CUoDODberTSuuLCD7BPoZNFak4uMZmHnc7hGQpvLJJvZC1lt0mieIw8nfs9wkXB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QaQ0nuQEgDb5jeRtArtItZKzKuLBWGQ3kClQh29SyJk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "K+HiMoW9gFUGkAbgqxY/L9IcKsmcHwI5/CFuo89pwNzw6LRO3aMfJRZQjVRIALMHh+arngvcZOGpLXhy9cVMi1Qo4Gt5EJ2q1QzJ8+d/Wnm6jUYBzauBnP3h6drnOS7If0TJnPGRT58DzcJlvlDyjGfSZYAYoAcQy2YLNBQIDUHz/GV9LTACuMaUea0X/px7ef358UBmNZL70cow1IyAPSlcNZCEzXRTqgVOKPN9iXBtx3xjRxGS4vEdIyschZG83MzZVJUzbWF5/pH+gQ5a4hauWBs+TkCK2Tz+y871E+Es0vt9LXs0GDkABOi1GgII/eMYvtOAPIfdkNG0SzMEzHfXB89hiFqK+1V13pUutGCvK2PXoJNAsNSaAqJIO932BrZsmtf6WpjTZSd7/pl05zm568BfuW3y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Qb51CPo5bBKlYtInommT6n81N4y09AK7PHvYV/K5CoA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X4BUWexHLBxgCX8kXoxdF57mICAq771/KvCyCY4jhGUU7wm4ep71u5d3q3w6ugE/m11Xhngm/7kagTHVFGmaB+C+oxiUDSXHtoPgR7EHhsyyTz1mcqV75+7jWaa5leyK6fqFFwU8kD/S1dkdf5RtQaW1JZNc2elhP+7qT89xYkox4fQpgvEwtQTNMXwoXyzETUpTHf/mU1liKfqEJ2UQoaBJsnaTC2Lzzi6TGsPepW2CGW+IKGyYP3YZZzhCWgdcD/WSSQN37/xv2A5t9suptO7KS6JLwgWhB4Warz/6TKXK5Tiu23OVC5pCTiGhWa40HoDVJ2uDn5ffdLozKYmBC1jjxnZUs0UZDljyEdaDhsLqJ/C26wFsvyLl/qgF5bGslqc3El94mH9c2dRmpMbjckI73jSgLDXH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QcZQV99426eF+o+G2WUdIAoAJC2JjrDYROvV/p9231Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "I0HWNOTQr6dNDMFmjuy+i/WlCdJSqysMWEShgsp6xoOXjqhyvUg07hlPy/QyYMsPX9vxftpAHjuuoqL7mkloQBJfYKx4Nn9CxgOvpMliyc+GtDPFBwnM84lsPLsK9fcFbIlfz5UikMag0sMbCvlCFfBNMi1KpE6gGxpnQduonEQrQOJ5CPnIkVL9ZDCZSRLuUc35gFdkPSE+p8WbRwdiooy41QUnXKPxPclobPJiSLpIgvVQklu3dAFM/zyg5CvYDgCjUnWV5KatVlVxXj7jvxfFAxpSmBqwgKLtnLwYnu/BXx7XeAN2QF8aZnYAlky2NUDK3JFU+u20/lEcP6++cgzrgO22UfrmBRmcarxfdFqIRnXlc4El8zKTWw0E8xeeak4yrLUmA+0t6UOZnCUlxlkbpX7jjlGx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QgnCpk80NnwA5Faz6pWgkPiQtow0BtChoDQmJzHkXHM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ELOex6H7Wo7yX4HRGKSNf0ubp4TyYFdzPzOAxlPDV1HsIKUWkpAYyIR5kdCdHw327RlfwLAGcGLfsRd0/sy4MMiisuF75CLrP7dhdjAJh0/zoF53AeR58iTCaIjAQzJndqibbikgikCwa7ksvnNDD/tqTbz1SzX4ihcLJ85stSizBsMQWhmoIdq0fUVKVbegdUFJ6pGaqhNb4O99ODO9gP7MMxED1ixHc5kPuYxhHYNo8N/7zYizq8421gRZSZaVK7jSo8vQ4vucValZV0O/5px0JkqPHjrN9iVcXHs4XxUwD9gFHVeCu3VesXX5O1Y3Nbz4G6Rj+p76EpuPUw2sRvOAaQXrQZ/6wdEmHm+MFeZesxD0rDXtQveZFt/cfPG6QAaC2QEQUVPw+OuxJs7zilf4vN1nvTwq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QipwWvzc2eqThkdWZ0rUJQPe3tPGs5jbiTbf3DfeqBU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OnrukVEB5a+RjPGNsINtV3HK33YTkEWpFfjiAdevgbOxh87B+RlMu3bPZTDKkBAVDt6hfR6YgLBJ6Bt1ejEpD2buALUkpxc4p6Kkq7WlnLa1AZ1ehiejmx64fuZJdJqORuOa8okdPrmqiED60V6QNHh95chA/hBYWNJoap4ZuC/xBFrMRrrzi/q1yBViF1Zik4PE4uK0Fe4/m0/EkBWM20/hMQeyckMCF2cTNVLTx+uN1c6EoSehmxut58gBdrq44kfFFkBC/Of0BShKO58keYe/q3CETDP7ke0mJPvMrV6n+CZRZzP30tQJqO8Vx/3duz4wU8Ln2ESUtt15Ya/8EI++lS6JU1kBPelfARQSxRKf+ZEEW5CDhL+1tL2H/ZTme5mOiJfyBhMrK4pYi6kQqU6zd4d3nTc5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QivXHtTfKRh84OIURqLSYnVIZdOIVnje1qO4oLnHJhQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "17QR7y+OXjqdLELJv+fXuNx/AXMjXG37Z8qT8xGQRILaoB9V7SPYo6+dWjVi46o+o7cWjbGpzt5ABkUHY//gm5dtL9QLilkjUFfHaRAMyR8aqd7RuXFy0ppNEdJrSohHLDAATFLQ4dY+0pOLCp6QUxXsEgiav6Fn97CPXpPXnPgmZcKGVanpv69ylw6pqBEEDwfEIkhYSPfWH2HU3X0lv3t8h8kE+e1+G7sVaoUNpfLiGrt8uVNWXndzGa5fnsQdcH0vet46anBhFJy9wxmFI2m+plswznpm7aQrewrIdF9Ve90/tYZgaQZkNPzA5wtiWjNLcgE5tFNFgGkS9spA5Fjg70wbf4zYVZeM3uEKpjJSpMSYn3eIKxoNdei95vo4lOHjWdL+y4/nGvU8J633sOdnTNCXC87F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QjYnmoBrcnfUARp/5sc70yjLHaC533uq4Gr0VHBqHYI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ymd63oXcPS163sd9boO9kUwxSITvLJDxXWlRUZju0mi8vc+pi/BaIu24n8+Ud5LAQxd3jOuNzxZYtEnr/nKc0vuZNuEWM0UCkTVwJqwMb72xMs3p6tDbSiiTnqgDoDZ/XBlaXLGFWGIkBd0YHnHdoae1nwjEbbZEjwzwUOiiAx3zaQOgd9sWSmQzZFvYWPQ5liYjg+9BWiYvX/4vtsBmvaE0rPxLXqdOlkIFVeSG116ZLeloHGU0BQjJsAgpMroJPqSlWtWHlSJgweFA8h4I+8PrBM/uoVXbOGlsdC2Lw/T95rtuzkDFvOeUpuyENdUz/Ye33CKIJkDfwAvrnc4d4h5xnUrszWNWnWqoaK55PyiHVnwv0yBk/mtZLSY6j1xX3l4N2wfeIxtdfYyTW/3JHKQiltp9gs3Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Qmnc414z7juiSrq/VDjkmkhQzGQsMkL7jCMfvO+qFx4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B6D+e2cAnkXj5qJ7rfPRmZP0oj6thoJz6toNERBLh7EavuRG7ytBfP8BeST6Z30kRNFybZNycRvGBSlBkjBkLa4H4jvLAdoE9T3c1VuU78hVCp2iLiG2S47jaAqbClVJ1bzemUp/F9Mdirhn84y1upIMuGvAJXvVf6hIec0RA8UYnWX3je71WivpR6LfKUE/5svAIXkyUOOK3Yy8h4mHxdO8Oiiroqm0hA6plCLNg4ahzIUji+tzCo5bWu6sA0desI8orfjS2ic7SB5A3py6LzRQAzrbuVGFYFZx+pRXkop6HofZfDoRP77Cw6xgSS6leYyVdB1ibdbsCQv6MlSnyi7Kp0qEzD9YHlIzqHeBjmbsJN/JFL1PH3gzHgt9oE3Y29jmQny99+PDAH5KVaXxMoPGb4BUQEyn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QoF3KHDHbUCMljmy6cPo3WaTUknPhKtVDOAfHrs+HCo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "28ysn5YVmFX5XtwdUwXjkwHgH6yDaKcUlVXALs1QICgmRy6Zzbv0d+M7mSEua3UP6y8NbbewJ0PNzh2upfG87qhkxytt+DpxdJY8hN6LmLKO4Z/RHDSx41bkRW42VTsmT6gAHneFaZ/kNg8fwIwFSljaBSjoFXK+SL9wWPd2aWmDrm1iuop2Oy6KqtSA9F4+oDP7iGyNaG21QgdYojdJ0XRL4tT9ZC+Wc3q/NVXixD1iRtMF+sfUZBynNepRb6hYP4MsPZGAmV3t5lQ2yI2aJpv0DqQuSg++g3eNsNjp5LrfCl6AmHP8ZX8s4lWpNk5oSRUjKznEsXdCaUrtR/JAWfv1aDMvaGbbuN1UJ1QQ7t/zD7EKX58bJzS7QN4pU2V8gDZV606BC3rdKSd6339ap6Z/o1L0OpcP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QoGvMiwQRe2TNnqHlIyCbP93ihgPdzXzTUkOr3AiGE4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cl9jOZj5G/mqyYMK0BSLAcVOXT3JEGKyFoTVKjg/XJk+VeDSrO+FCI3O0WaTfV2WeRRQkgq4kE+lMwyVD7RkPngaPW4975sW3/GBFqG0+FOXAfjTNgS2DJQbb4C7g//qZ9OrPEbMnsuFqo+g7LrUX6gcRxNMVBoTNPXYAYf51eKI50dpHu+J/GM823PlmLpn+KsMtPNJuRzG4Rmf+qfEPavQ6hmOUQ0OOLWhainN/snEurpwpedrqARXChA4XEh4h54XetqPSU3A6XHZA9VRuyXFlP2zUq5kr3pijlHZVAJraPl5WVvQEO8nbkQxX1WZzuAwD+ui7+Fj5dYFaKMEfnnj4JBV/mw0dFMmFp47PS46GmgIlQEAM6r6CSc13E7M3WNYP9Jbl/X2aDbP1KYUWt2S479ZnM67", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QoJtH7sw1GjclANj3sM88arpuxm6iqFFs/jVScZ+Ltk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q5jENypS03d0xgm7R2Bcd2U9V38cbmq6qhxPHXsyO3dfkJMhNslbftjW8lEBLUoTNWM02WMq0BZJRrgTuY/YZlXjeNypbSQLWe1IuImvk58gLr5nm+5xnT/PWC33rpmkLpruzaxLSKISGFVkjkW6FV3ppTwNquV+1WCHywKInNYvWFapp+ixffVFyAqDOMmKEbBOYXc1T+4PJKCPM/5eZcvBTaSexHRzmYsPo4+0eoRKzDtS5jhn2xvy44u3Tb/XkWHE5DkHTTYkeDjNYvITwQ44m/MZzchZw1yN+blcyGs4Sr+NQPVNu6gsJizltkeTMt/VenAJISGR4NdgsNjidoPoVTS4SB+1dog38tmD3eme0ui4kNRXBU+0wjqlZN1vBq29iNhOgC55LeuQw3Fn882aHfvNarZY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QqrxZFGNE7LqgJFUdqH6/5dh8nkLpUGM3En57QzbT2A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dkRuRk6hEVCEUB8+w2uhh28B6tKDOu8HyqvMtYq1ElI0z4wt+nFz6xMRfVjYAMf/Jhv7UAVaYkJRVtlZnwtPAawQzS3NYQxSD18LBFQgiX4AnTKEirQ4XHavTalKMkm0y5r5yyMBqOWe9BfTydb1iiO8W8iAGifwkv3mJn6N78j92gPwZHUnLgFGzjWp38Ead0seuyo1JqvqBpxTDc0rxiDhjAEot83EXxjwjsDvN0NKsVkl1zPmtBjm5E8QDR5QOTCxIsxv6kzxOGrIrJ1prV2Vz9ULtthkinvbjNzuiVEpvS0Tpg9MSomOI/bLaT2AfSaAPiYyslmsVjHsBy6xueSjxDFZ3kHNq4FoLxod3ThhK02Th76gnGRUXSGS/r9oVibweLuCIaUFuX412r+COL/1Zw8QJsLE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Qr4RcpcI8NId7GcTa3e60/zKtZUHU7aHbDKqgVWKueQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WgOo5nIln1pi/PB2TD3CZmf609iDaWHATkn+g7b2bRxx5Cu3E7cTaFpk4jlmQXKl7o1KkbhEaBViZhC/rm0JnlyTOSOa77qbEOZhP6siUAbqtS9spgq6YYQQ3votWmDO1j+e3QXGGNwBYnM6KPYdYSoBonRn6I3MMezl/+z3U7LNP8x1jmv9onxgYa5FmBpB0vXWSnT6jigGvXbJjo2MJKi2cl4fCCJxXAl4cuwlE4tp6AfKDdchuJjSCg7AWjYVqppruz2i0k0zbQtxX0dMZY1fdy7TWzldnfJrKhUAdC5Qmgam5CSPHGNKsYiTiZuwEHHBA/ujjhlzV/bu9cLGKv/ayS1YDKJm1FxBUaz7uZcrquJGjhd4lbacLPcCE3aRz4clWkW0BSOjijywhGYT8qjmSHNGftK0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QrPkT9W0IbZoCzdsqZrS6zoC9hiIMUp/Vh1uIad4hao", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vugVJRSvlCmJpzdOws+YUuZZ6la7J2dK+jd03E/pZ0wJ/tYwOV/EpXFnDno6y0GipxKQTEVtenvw0meDvIwDXAbis/suWM2qxy1ongs0lWtkt7oIkdO8dNx0CvQ3VjwV/xDmLjz5iwvDYP4qQtnsMevl2gigRetf861QakKvMaD6apuv39cKazvae2B0TGjsmrVsmqGrlrS3QbL2E07CKvYTh6Wa7RBg995hEdQw3LkKYtHLckcl/qhB4FqYtsHAWYMLvsy/VP87wgk38jAOd6blQheOY/lShjPtrOwVIQ3gTiWrr0D1rnwI1dHgQhfUaYi0EsaCwJ4k14G7e1/nw6uorhwuGfoBhWmvfOL4lG5Alc+g6V0uRH7jW1YRmF7qb0Vzg4r/OdDh6LK4eShA8MeZYTVUlP6n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Qra2Rz9+28lxl8gFam3zKvGKpEaivG4TPTzgeYeKERI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kKbyZZWtD706Ux+81ZFM64AtjzKZSIaOUjAEb+WL6JZoFB+z7nPXSX/wyHqJTMOH9suQqKkQxwD0aVYoqxnbOkv0KugwiDP8S7n6V+TCiswkebMj/KTTW2ccLc8GaA/eAZ6ShBWXbv3So2XqYg4pZZA6pFssHEs8Ga8JucLEMLMsCDPAAXwLLZykPhCcKANK4AHLEf/MtYhQZoBLA5b0jC5gpHr5hPWClvK8qAzhP1XoFhz29Q78CfwahlsAjCq2dD03SzE0Ij0XpDTLykgqAeCkjHfjq7TEEIjPmlXc/5HYibCZQ14sxhEXV6henetE5iN+0lo6c0BxyhPeKtT1R+20fXFjYWtXV7q1YsyLcPAeRSlMqQTS1KrE4NwnD6JTiUzEdg80cwOVkjk4weaoEm0ZXKKwmex4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QsA3Zf/eAsLvZwIzjtfIw3M47Q88aoEtlAD0OxLNdFw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wIkTnOymnZlWZt7IVE/a/ueLiq1vg9vVj/GXM5c7a/VW9Yp7kpx9y0Q7AzSXTdRGH+csXJewZa1B5X562mgnD3jAtYrgUVHCZWnYwxh1NiFJUg85FE5YFPLBDKunadCHx2+cWy40oYWRBBSXqSz+xJ2636b/KT6E43PwldKU8EOA0rmGvXIgUpSF5cwRigMl0bqRtLTpzpHK8m5HrKo2x2QFDlaTUKVXv6fEjYcB4HihDvqYStEN/nteS++XN51+KCkfoG2ebRkJMnJBhbDofoUaDRKDjM31h2rsQaMbYp3rYL2nC8N6lgIoZxAnd0P6kxsKVlrTmiHB4OOtuWL8Xtyl405lAyfC7jOVOklvRwzoutJquaU8G4LtHs2PtNtxIuP7Z+YOQcVL87Xys8OBHdgmT+lvi7hx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Qv4oQrx84YmsB2uUxzAXLwNAMsYelQSzuZqcXUU+yN4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0Ikoq6s8/qOo2goc0lEZDO03r70e9Qxs8eIiyzxtMDNlPtlNUXa8OWe8vUBLoiXtXhL4Ui4/VyYSGV8ViBUsAv1Fal7A0Dht/aUT2Fg6Fn6GvRfXpAVenNwfzVA/bvE25WV5lndRh8ovPyAdB+oCugfSAz6qRIQ35ciKNKprmVzDoXeWoi3IiIKoPD8lseblv11U98zVDemTDSuIpd/BQMc7yXIcsFlH1jcWjXLi3bBReUFXmETSE54a7+w0Dwh3O9LWfNkWj4nM9hwY18fIcNCX9t0vxdqhYvD7duK8afi4RKpRl/JxkqqozuolNCfVllDDFV3MURKlLiN4F1frxadsLv/jkYDBHHS5TmEZzSFetAHWOJNRf+YpI5S+U5BzyqMW7x4c23FOlF0wsJNdWEk37Eyn7Wvo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QvUSwfqVZFqeWYdbr1G2LTjavCmd+C+g/c8y8GAnRRM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8KjmmUxr6goBD26jYL7EjycvH3a6kIYvlb5LOBzwYgYfpra7wPSpPNTWBYbhWldTAov2b+Dk/bLB41uRQNxMB/dtFLXdl7p7Pw9U16HuZ1hx6f5EzYmXZETee1k+zbcnRNlWTBv+FkKsoAOZvQXHsuiYitXhiCewsdjwk4XDAfq7z1DnNBqHUyw11cerAmXvRhe/H0sr0TLG+Yz71hksWyptdBtG4JdHs/TGOwUTEl1Y0JgxjkueUGI9LOhESinDwcJBCUoEJw8qkweKH4faJ5fqXtV4q39/9stqsnHxKpTb8j89E9tJkmkgVPrIPA77Wse82cqrGgMY1xhPj+UUFCWrYohNqdk4m+IxJY6Rqbj1J5avNpokMULk+ahfhmajTTT25JUfsRYfTJibOprWVfROQD3/rbhJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Qva/bKiZv0FK6LMZ5XdZh+9mOGkH6P5nJZsjqAT+2zI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3ZaWsxNWxSEpDl1sPYf8imv7Qs5IeaINSXJmUHusIkc00C/YiAa3NTRbYDWFfVHf4FUvV1D+4qzgqYie/oj0xSti7q/h7y0Jb9zfhIj8H6N0WLYw0/sFL1ikSKFmvUD6NXBs7LqBvSJnX8V141HqRdihTCDIHZk1de4y7MFCJE5phiLnT8hOmZEXAFRWtmC+AznQOaYYuVP/NlxEtrXxcQCyMp3frSm7gemfpmcnpUCwT9s+Nm8m3e3zPozdMFQMd9LjLtxrizwXn1Ajj/ZeKgwGCI01NwU8hapDs7MOCy1iFSm+QtQEK9AhROMotaV25biHzwWV+EcLsO+Vp6V0JglOv5TBZRG9/0HfAXnL20kkupYFcRodndryykojk2ZLjwv3brIItW3kldv0Ql4Y21da/P0y9maj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QwDju8mGqfYjZG4rdiFx3jShLEHR4n3sKid+6QojgxA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1ehdBbWCPqhNqhU1/Xbo/0sxteLEdpItoY910hOYxxL7xgVeTHFaRYJMq5ShXJWe8tthlzyWXWt+LyQDGHvyWDX+YoocpSDonAepSNCnnAbRfZ+pUraYnV5Ws0L9H2/Jirj5q9d6Xy5XF/VhRBLCOTb68cbSHlhXy6n8c7QqEfXg1+c2uaN3fbFEezEnioojjDpk7QeiyPosxf4KHSdNKhYFOQuaUUNqfuIq/oKZKLNMV1JCWrSQEy/Mdqp3TLsnnS3BXUQE5sR3rjx3gtZ+Ky3LGczTtBgpfTxXX+WSHMbtWbOyyt75UJ3Qw6iFq/orSJw22Uydd7bDkoLmeSQ/kog4B3WRAtPyMslwYExz26d7722Dqm7INhTnVdBEfyh5cwEJuEW4SabxRaaxSt9u+7vS12kkLG11", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QwptC+6vjUubnPhw6g2JXdITO7XUmr3GcUJb9QXjt/U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0jfuQWKZALcnjP3dAcSEpXOwvi+l0re0lEpZhO2RAK1gkLVp8usHgWYNQnG0OSJVwxSnmcaU82OmPcO7UdtF1GJ4f/KBMRmYpAtsCs83WEUPCqWKAf5ztnU4KUPVKclRyhNQSPK6S8E1n/DBuxpz2PgOqkKgdkrRergvsDQE0+O5hSLNdmveUeGhtRKDJIzRYfnHmWNC7KlyC+wVKNe+3cMMui5gdjLm/Op2eVbZczyd+QP74jF1dwCPKTB5y8xo6R1miNrw7PuQfAH/Fc7J0qdkhLhCPz2xDaAa1K4qfBU9/zxuz3qWesvZGfeTrqdWTwSl7G/Tkb3FlDserGDwTAyKmYNEbLxrzOr5Aa5ovKn30qbnpuiLagLh/MA2OhKSwiUrjxkv2dekHqWAJ1I8mTxIkki08+6S", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QxAd60oCRqNHnSN4sHwl8qI3onbClKTGPZr2RXa10BU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DfD1zmDu7Q6SmXTK607pGOr9QercvV3fPXQCsqVgPnUqycdbos/EuueguvdT5sy9hLxHro3nTm8ySV+kIKnh4VLXMsdLuK6ON/Cmq9JAdhIm7yq+bV9pj/SzhknekeFLj+ScK1dDqGIzUOHxVui34WaId26IhcdEIuGpzWv0Qq9IYD3duD3SwI4YUBNOyayHXE8yZmW4IQdHupr5FX26idn0LSiqEKJy5AfhUZtcox0J+uTnV2O4VYsAPmznEKYqcizQXJa6pQtcpYcIirQYQAxjqRflCQcxX+OxmZ3AfXmcOwoHuo/bVo9ukYeFAGQipqTqS0FT9iKA0uiWJ9SsOGKtU6b6o93KHkZcZ6+BSTINZT+ZShzqTTds7MOfMGstkrg3SjwHA1FWy+SEFpSG/3s9Ci25QR72", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QxyGzGRNwk7KCT2WExflpBc9mTHbfYV/xBSW9ywzn7k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mEFK+hbSfhZrnLySVFXuEChrVLrLjPYK0LVNZGTx+0nEJeS9NJPPIf30p5CGjlRL0uIrlRhH+/zVPpUICGDa2hJRzhobHrjTQ6D51WvA87PaTUXaisiN3C2IfFMfGrk9M4RIl1Rv+nElh6mBM+6ifQK8X36/uSxvxH40wHQCkeke4gsLElhYBiRSq0i7nF1BXbemsc1XFVv70x++1oWjpaUrKLNtN95ukwLzP4tmYlLoXYicQxdUXOa7ODX/IXEl9oyuefXggXtd60cduCFrk1KnS61p0dlgb4joJC6dk8dlghC59u77A5vFotDjIPz/MKZuf5qXBPz9fwbCYk935h6fdsFCzB+vC+xzVVC+Rp9eGO5QKIy4K5XcHLc2JADqhn4DOd8qgJwwORuj4FvCiBtl717CbYgX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "QznwTIA9nYZgOTVd7nPwKbyXpVQ+0o0TqhsdGwGzzqM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qYy4DNaCKNQdwg5K5z8F1tP6fL1M96JD6ijupWaQtwIn0CtOmh0xX2/vX+rYZos9mDDzsGp2DUZRJ19ZWjGX9uZaroNpgVrkQ6WtPmKlGMTItajhzngcbKIboxJH1booHsEyhfH9Rw2EOsvWXYvVTudnS8AsMPVjJ/c6yxP4vY9cCR4jB7jrLIlQkLOm9A7F1He++RNiGdP1SpOUerKHwwb/Mfq6Wt0tVLUIBirAT0QTegMUUFU9ZSdcds+wRWJrQhLl6jW0bdPrTcQNgnAGxj7t9UYt7UTzEpWBDnEcal+LCvuvxnigsjU8g5Ah/xET67NUBGtCtJBHHcJiNzxP1iTXIae8cbMDiPVZI9oaGXeNRMST3OLsbxZjqm3MKZTKMYGlFlUjpiX2j9jVDf8njwzUUZ/L1/Ek", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Qzo/pMQH7l4PCGTDvpXNm7y1ztdClYk06RnnF7uMoN8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bdphk5bvtaLJiR8m6QhI1LaqhH4MDxgNaWU4Cwfy2AGCA1EdP+GOF++Aasjg/Tfde6VJndjHy0g2hJE4kCARQ+PrDZxcFNYB6O0UPhDJ41jI4Zl4cCcdYes0+zbvaSYRes7aXb7JMzzzVx7pvw68nRywmpWzw4eZr4J6LI+fCkBm7cKRrst/MspiBu2IncX1XHP2G86g9bchrIDUPb0Mhhl24qMhZ7DyEMS9r9jCLlnmF00zY1Wh1AWbsIgNXXkOFAfhmhUSQG3NERbdczt6l6Zk5yf19Ntjp78yiIfX+VSjFCbsfr+QHWCf9xJIiPJKaDpf+9nKjJ1Br02OXF2NbVv9eJheFDzMSBEACYszJIeWWopPAZPv0+5i896NIsnmKhP6fK5rd56s8iJMOnnZs5MtH7iV9nz+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "R/sLhj/648J3CeO2BYMxenfHPNBxUh1cZYXhC0emKs0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2VkcBVdJKPXJvO9eSAKqbTEHkhF2d/E1A/7jg3AezscV5/rKAbAybwTjT+xM1HkJ+YRcIhPZG4zJZH71fCOj2HvIyP3RXOqh4x+6VlnzWIktOLHJEwRpUWObYFEf0hTGRMtBXv5EOcEwl4Txjtb4/xgpOhq6r9j2Ico1k/IV8sa+3j2TYObLhVGblP/DYK3VYCpMZiUPE0cywi/OiCr9yFuyJadnhaH6QTyfhyCMu+sEi1TxRXTYerfaRFuoRWTT00UYP7kQUd8hyrwCMFcbxNllHbijxOLhT3AdNg0pKoOll/YrAwvPeP4+s2iqifmm327PyCtw9tIbdLt1jNZvG8Ir7Np0MbtBP2CqQamo7f62TjD5iPdjAU7iWFZaKDHAsHhjUsh0J6Apgusy0UyZQUTYl/hbvFgr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "R0Vd+66J5vnodSig1RgDKoQDlPArixV8ebOW8TGJQr0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JSslwgXh0pgC9L59vizYmTPTR2mp4DS7JmiEWKg9Q51ItkMeMnQZ/vFcEl/JaJt2COMctONgXUz6tTYZdz9xkAON4T0pLRFSEJ6uow0ZIcP2xhq8ZLrMGgw7L0OqmCsyJOH3abfQkwwza6QBEL3M4EwNwBrK6xdsyGCF1n4zMYQXHQgoP4AzUUX5Roi7ASizUgGrFejPJlyJTefkE7XXJMXVEI4RXxEuEvvt14KLPD0XsnV1NSZI+iK/ZjIbrcX5UtCax9urNRiGrMLY4211sRQsJVnMz8tFOveS4RABcUnh6MtI9QVYB4XeZGB6kg//DLS4GVHcZo/ep8KC30smBF15Qnn4KXi7l9zeFUVVRFZQaLcSPy/nPE9+yQqK5OKTY3GQ8a7SHNCLYvHaCrBO8VaR52jqFNBM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "R1VaIYIAodh2WHkObInNTurPr7N6wDDeUa+8Rbmd9EA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B0iULMiLA8naCwWTGjZt+ltGUCY8j3lNcuEcaTp1NsPLQ1hOr78LhzojtJghYfQ4iNcd1Cddjl+OuAwOHMXYW5jLcUz5eJzc0Tuuggl58KSipZ7guYjeNY9XVUrZ2Fqw1mTPp429M5GSF2dKANok2rt2oTFS+8bPMjNJFMyR6duhnpY1rPLt0PdPKlK6ic76kjLt+/bj651GR4cn7lkfAdQRZtmD8r9UtC2eD7E/9RstO1jWGfoJ64XO41cfcx6fDooyuuella8OKVF41BVAIRfuvZbIePI8dFhlxeZE1377ZIHWDWiT7P4cpUBXIptfrWQd5ULVf21gmLqzCC9i3TBq6fA3A2We71Rd8hmyNYopN8+y32Q5B72BCtQ0XFdbqSwgeNo7Ck6pOHKL4bkztlLTTIU+4vP8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "R2YiZVT10EsSLvxdmc22kQnsPNvV9moJM6aAja7pkd8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0iyAh3xHmBoqebZWwcyh4YJTGvHtlLI2BL2WmqG1IBgyQ5vf9bCfKP8DmI/+d9ax78N8Q99H+Tacor2geuL9mzU+uhDTWmC0DuXCqMwghXVLS+9yeEeQJX3K+Vsqzl3gp2DSGGRtAYPwRhEs8rhkVB4CVed4NYZ6pFzKm+8BbBupveBMogWtJ7aI0sWQKocvjve+sy52lH1pS9T5aBzpV2ZjZC5JMi9Jx8evfpS20Omcy28Xs2XKDZzB3dphaoDCyyHHbvBn0iZKds4P8iuSIAUTPTRvHFpyZn2JRysUwTvBEq0HzqDw3az1kzJMC39n0fNiu+1cu1p5CLVC3m4ela/e3NOgJjp8TU4ADwnJy6chmC2/4dZlf/J46KZlEtkaNd1Q3znVk6nlid3yXrKflg3hkw3CC1hz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "R5gqixAIt/EULkZIHwl0HFUViU4zKBLaHH/eBNkd9MU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ePEYt8+YSvh432J7ejSyCCYzTF9ZEhT0q8Y4g+woLo/bkXeURi99xOBWeF4TfH2VZS7QPAxK38ua05vi2A9pUVPir4CKtftnn2Y0JZvRABaTWLQun2YSrqcGzDQr3pnJ13j2M62G9uKdA2oBeZsIffc88vpz5TBt9Y/G68cRL2AgSNAGZfL3GHoklKEoboHfS5z+ZawlxQ3rCtYiYKyURu0IJP18/YIIo2EpJzKDStNejHMvyHG49RgwAZLi8LyWCLM+/EXlVlSJ2OLF52EV1GjLL1YxhhPZLkijFgPfwcZ9EKCoeqLqgih9QEDIAONvJPzwUXfxyjFclIVJ8grnCOxLlG+W1nL3YgkPGdJirjK4VGlXBeEOhfdSg4cNvhyeFMhNk3Z64gcZYQnWwkODgutyLWU1P/0v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "R6i12fm8RJAGJ6tJhwtjNYfkwvsC5FRCBNY6/NRKh8c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vlin+3ooWi6CmV7h76JtZ3h50W4nqQZoJCN5K2MQGH6S/FU0gRmXZ8hce0YWvLCZvnUqd1IALxr00z07jyXzUjvx2qGsVqbH+7nfu9s/SkHOpghRzjsiCTgADNxbmSask+EgTzbWA5A8D63BcqfTRXIV2ywBleIdwYkGHwkO9+cbalIDesUtu1lgPAQVHzBCPBMNX9dbTed5zpOGhJv2Y0Jx1nf5Os8hbhGXLPGCtTXjJTDwS/XvfpdSloV29hGCQr9BuxE1p+XZy3/GMdYZCCnpc7IIM81dd4fGe5YUEXpZrYIdw+AC9WeN/vxaQ3PEpKrswH6Kgcg+njXSOz9z1SOPmlO/kkArCthP4h11E9ubHcr4PXJt8lxs5Sno6c8TmuA8aFoFtgAPHA18DdFjv+PtZvtzJm9U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "R72V+Q6Ah/K0QqTnMg8ZqmrKL01XOYr0+LRg2993iLo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Bb+41NU8O0DpIvXOzQon2KaD3N/5s5EGQvby861FsDnGtKqYmdgXKejfET61q6gdn7e/URnGFBoWFo+4F2Hj3HvU5jTwjEfq0VhwGY/woPJfbp0yJ9rC2lRr9zPTaD/0jBgEGITSr2qvXb+B1w9xb5pmw17UeAqqWlcCxNuV0fU3ip6fIf1L39x9HI1GyZ0EZAp5Pxza62PbaO7Xgtwk8r3LShdHMqd8Gyx4I4RQkwWl/OFty08UbkrCfhD+iM3LZjuMAEUK/p/MfWcG+dfbLzXtxfiL5b7JsUo4AIFwML1t5IRtCl5f+pOa7AP9sZddQ1TjLyiy68TCWNCqFvZkvEzXc9O+6Tjz1qRH6GvvwFvfpgeyUE+dLjk7w1YunaqW3OoieQOhBC4Tfy0Xy2pqSIAXb0TM4fw1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "R8IpjBorc/ROQmf7tXiFI08Uy0xanO1aFFmhlUhwKOE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kIVyZttRIrXco+monMSqpvCJooWXA0vvCwmsFZCf3tityobHJADG6J3MSoOEolTsCb9sk5oFFJPSrrwXjW/RIdybNbT4G3GgvAnF4wCsd9TqKVlQ3a7wRq3sy8APrncJZ1g1VVy19aawK6B9+5Hy+SKwLdTuzRgXtCTbMMoxPxWJAF75Ym5CwQo7v2/EPGukrNJRODoB7vWuTMg8CpKp2pKvx2mSd04zVadufexTQXKJWumEHBGp/ChDeH6Wvt8bGrP99ztAISlLdt7zgoyDa08wLtVL5wUbZacsZQNvLPCVfydaVAFvUF4QGuzMTlnIu/pEPQHI2KtzRSTycafOLuFBdxz3OL/Bjzo/CmZu5UYhKqchQvJGHuvy7sz7At3MVpuWTMqtadsrxnK+DFBB6heZ/f6b5xzy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "R9MMMhxUiqcqZVbEVEDInLoupqObjZeDclBV0ayk6PI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pYaWQ4Y3thc5Dq0CG9Z9uOG2eVOMEiFkHqCn5Pm9qWaRUPdjlNiks3c7xUav06O4ohRlfrjBW1ewwp2LhwFptBy2Bv45T+3VtvDT22CV21HIpXY+sOdYjKpnAXxOKVbOuwxEl8VMvp3fllvbDEecvxx0DpnvC+gflnVhwpSGkYS35hf/RbRCX4ZA/ujvclDCJSnbNO6XYK7VL0OiP4lalzd5B/X7drbWbf4oE8K6hY1CpRKEFRtKPsJf4SRqcS4uHltcCtgNOGu+wPm9KnvwRtH6Vi8xc17e/KGqEyG/k9QqED52d0AwT/Ix479MWFjYoQF2jNh8O4ESP+sI53fu37+A/DeuaqFLOjOn9HFA+HkVKlQf1kuVuHNzFRHSIL6NRegqEEEc/s+Dcp3sHq0EChDDgZOR7D0O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "R9oFFNdHZE26nfiSuUNRjH9AKEfN7fu4n15mpUpEeLI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Oc/GfujcJvbM4LhN8ll28Pvve1K+XZRVKjUofthPD3fQ3obZQm4ohjehUIvf1GKLo4ijQEIUGq9Sr2S5SbYYBrIRIGmH+jIdReOa3M61w3BK2/ghDJITLt9xd6hvfRgbxf7+HimYbXofl7l92Yoy/R86xeA0cidakrnOYnZxDPkL5k2QHAWCXbClj1KBz8GA3Svqwm8SgJrYZ/r8LxoEACmNOkocDpBk2zO4l4O/kbFo52eoRCouz/2aZLCRQkCZDvIRgmCEhTvY4pH7kvayBHXfwif2ernqCVnEM0idwQjlts1tRrigcIbOCQCOLRjDQYP4XjaePC+bWVY6z+twWhdZK4vcBZGwfmKdAW2INkizJJRjg5Kk8t/C1CQCHMUcKKHt+Gg6xJZBo7Mfep19c5erApZRTXzP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "R9y89IP2OnWeNnn4vOK3417B043g7oKaBlTktvN43ag", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q92XAwPYejmaioOWwC77SktZAdPbh5bLmc/BAmYEMfur1kxGZe7UBzr6/76hGUKFvR4AWH8L35fFZIdPSRPCH5F2S2uzHujgrK7srd0gf+d5QXrWi7LtGw3dqHFlj3Ve9ZsA4K+tXhx2joxfmfTAblo7bRejBHA6jR3EOtg2jHT0PfOjPAzwC92RXRdTuvPT9GC0NYPzt0a1wl858F5VS7+TYhXFzRt/7wOcAv6eA/g1fhMdPLW+5lr+Q+AdbLsqzClk6imQhpgiJPKBx1FdnBVC3h0risHYDDpnOnnLuxuBTsSVUKOWfQSPrMM0vPryvXwsTcsix6SUCWBzgYu2GZ1aUIY8lmNhmEk3Lz6IWpe7FonvCLqTdPLRJwUguL78A0SccDbOVfDT1imRz4ifsmEpfAD5vOOI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RAF81neXpmj8BEIWDsbmMSaQu9GEHBRJ8i5xJC/NyYM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rfAVY6k+X2gRbCtKeWabUGYzsTpoX8ZYSstq4bU2IXkYMCuN7jGYMAApvXaUB2et2yCu5U+y1bx5DEV2XGS0Smx2iUBPq9x1jAwJynD57oVgCSAzyL9/G8MqDxrm5RWQ01o6Bvd6d8mn2Wcy95Pbr4rV+2jOVGABNJfI1qKiFwGatYkJH9Nkb/9jrMoQifYZqNfqTCyrnGVRmO576hdqSiFxVFuLnOYe0azqUX+IWpPK6m4YOtSlM9LHfTVPGU7QkvVX2as2N38QgRWw20cyz6t3AwwLNvucET7gaWq3g8kV0MAGSt+D6G+lWj84cRxjeFOY2qRZhAkt1eRq/2fT6pum0KMbZpiqGsBOM35otNLB3OEnznmtTKU7+w7bERG9TYfjOatuF6KE+ZqcoNcb8DvMwk9JQX89", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RAm0qm4P/xwEGipUkoe9Kz1VMll2BlVlU5J+tHF5gsM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qIObbc4Ksy8+zrF4Z5l7YLMYmRjU2o0pYb4M+OPxa5SutqP3JEj0R+ebSbOCr26RIooYm3Am5E5x+xoAni/ceZf4lSZyatIZJY9yac9UhS6PC1a4h/kIed9tYDIiQMXeFW5A+lLhGhfEE4u9FzOIqLcgXLRhXy8zZeZPK0km1ORk2p9XqfvXq3O9MexX6MUAgXEsL+sGUOar4LFoQeTZa3ZMeMXh9KTeaIo6yszxtI3zNQ3rmYbVh6UiZrL0Tev/a83hKE2vbaeRmQ8LRdDs1f1aaKxmHHe6EClOscVLZHj4FFRGJuWeKOeY+epxmOy/lA0M7EeezBHjYhsRskF/a3HEWqZIaTw+STffMUP/KFLzA4ZFBEJ+g2raP9qtwXnCk5ZNcvp2DvZ8zopFkbT7Yb/kcW6gI7pO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RDCVnkyRUEiuJi60ytxSC6fIjdc/fFqenDhkyMghNbY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uxLJElhe/aHLd6VAuoLyjmVMXw1zDOK8ZHZcxIewsOyYLr/we6lxsI8FvgzZ5AP6K+K/PIdC4MGYOO7I+AqIQ/OWcIIPVE1qmw4R5yYHkpxTDZsBsiH8hg7B3w5DnD0BJ5afeaGrj7tsbWYeNT4ncO2NUGGJ+3f8WMiUekXQC322zfc1+lXzqzDWpSXxTyo2DG2bt76CRVMztx09BcJ7lsTHq2e2weqKYRFBLWfLJKyJldLlkxeGoGY8S/o8+6nZh0Ef3XOrVMCtN5f7Q5tcKsAmdF2PfzRxPzrvbn+LeBSUH2OZN7xKwoh5VPsctT6Db3UqrxOFhfOn4qqct8s1z5DhFap9z74KxadY7H5ihG5yJlxXNkjdL1NGp2rO3AZoojfTrMFuBXTZ7hpnfUHbwDhYEpLFDUVt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RDgyPZGLmfTBUaxYzmS+HNiUrMWJ1oza9kFTP7tMxuM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NOfC0irr9ynYX2NpvMImRelUOKNuKWYE/3Li1YNliZRIWoivCLeG9cMARXGTsAq7ztiXg/F0NjI/vLkat0XsO4QvR7nPZg9doEtfXvcBOblI7R9s6aFHu7ovGWdFJnHTIrvET/zrDSKeWIxDsgxyXHrkvVF5VtxUX8p/J+LbIvch90+uGvQqf/S7dRYFSEntV41qepui5Tiwht4jBwzSBe/rnB/4dP4S8IQjdiFJ9YXb7ZIJz87iNBaRwGj2Lzki6updIPykChBd7+tW3HjDwHnZY4QrrEF72vzDBJQrd7NQO0PXCrvM3PhWQsvRnS2jMNbNMa1AAHuyuWU6J1k3SPfwhLWHDDiPx/TASwKZhNFbzIuuR36MjdbFnwVKTIE1yGAHElO1tx3n51a7Pn7AYa08KZRE4E+K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RE4X/CJA3DybVm2Bnsfc1Em35Ogd3hAUQas9RCRfMGA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YkGuLnkxFkXGkHs/XrAzIHBRkvrpeQYR4U8S2Zt7IfBLpZV1A6JzIbEtGLjlc9VfhiRaUGQFrlpBsrt+MnCYODF/NhKJwg2tlxF0aFGZPpO+qF5sG7q5oxsBPlmUtKKPZbPrZTG8L2GFRM59RS3jz5MfpvPbhRvnweUxAIv2OEtd+3WZgzTaDnPTWgbbe6NYxNM6DhKIgGjpaRS93HHS3ZARF6F0rMPWcIyG5SeckyeM48+XGHKOYPj+O6EgjAGX7cV7taI7N+dR9GaVWahDp0X4XZl/UoUhVgaBEEZh0l1rlso0ca+k/I0hH5iYw0kcgvuKVnyjnov3DSFSu8CEL6tKCPwwCckAo1hHq0ceWBWFH4p2o9Q+TEjS0+f6ojZPz0V81xc4aFKrG3rlQkWBZ8UEGl9lLvT3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RFhmNGXnrT5TkCIspwXRZTjutk2aLnx2sBAMY4+npBw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OOdyXco/Vm6lrlbkHMkWqiOquOM7Dr6ToVN66MZhtoCLEPytENnpoJTz5nc8GcB1Q1gwb50FFwZJdVXOwoIdxy79JL6ip5si3DFNkH0RlKE9pHt5KBuaG1Pg+audloheNQkzLjw24+vA4G/vKrJ7eEk6NsWKU+k2BqGepI5aPKHucM+iu94Nh2hZVsrlmiMSA+omMNchqqo5d4jhrN+FsFQqlUt/jXdYfjiOc92ouGRXVghG0Q/qiVP+gNISvaUNvYm2/CK3p/5eBZAZiYyuwAXaKzHSsTQiUqoIzzkXXjlQWZu3wJhEYQ714TtseelFwC0lHFgkJEgM9loSVzfkd5AYw+qOaptE5kTqj/BtIstK5AilLGZT2iXyG0cpq5WYjSbzT44ufSxbYQkKy+h9aekFxpvyFqEw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RGOxgs2y7Z9FywLblT5h4ffhSCjBmMDzjsRYtlvijCI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zRhcsQhcLMACHcta0UclY3NN1Zw0hBI1OidMKOpsFA5QrQ4ht4/P1blcftder/qtUok6nvczs/G8tPSLVpLuKiNiKUbGiB3uAzbIugD6nezGDKc5Cq5xhint8xpR7HxHC1upEJcD32XWLMnpIJOGIMViGyYuCyGh/OASB+LQIDOCFTMixRm8Kwy/P0L6mwRycRfYRwWqI0PkGdLQkKcyPrlDQeXgDyHZZKGpzoTJHjc24ICe58kcyrGJBs8fvBUHDrz/F5sHzfvF8QBnNKV+TBp5jbnQr6Z8lqutwea98El6NLD/tmKJLULu+sv/gj9fcWB36d9Z/3kcVV31Hxe9ob5eAYRLHsiVduLZYYo5Iz0WmkzJPcxnNPyh46AGfiKDywANw0yjsqcIqSNBYFBad2qhoPO255Hl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RGtUI68UtK1ePhjQ1yN4qTthhNOVdLPKNdTWavKoNZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OiLI5+NQYoCTgsJhltx7+Fu8+o3cxbbs0QJDHrpUukEVHb15vz81prUlh73xR+vLn0UvF+dG2SmqU1nOENjc7bBdxuQUMaK+fxK9AtWo5ZWtFzpDMqlmImcyJ6NE03tR7Zak3F44DqTpCgUJpbU6kWXIq23hbgCoclMbvCxH6MyuQpmtoQ1SG9Dr22h2jRfS07JSSQyuu7b1rdOmBoazHDBr2DKbfbBZJeTmZ1Dzpum97YWxu3CcpHvhEhIXQoEMc9+XUfxRAApY2axKZnDcEFj1Cka6DHmaLhQU9qNCIfrUcDnlEYZIPuBeueQbFcGi+lyg5Cj+w3EbCingqLJatKgFPAUqqMH4no2bOCZZGE4jSzXNLvEZje4NOYurKhSTrHHv9U0J5FyKScYyOkR3IOuK7xMBCoa4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RI0+OXSFw4dWD7VUrjMLvBLCoUu/2266yRSe9Ea5aIU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gibUT2UKmS7Wcl+gB74iQ/M8Shg4CTc1u5tGjg4ddTqIdC/7wNHlmKltDs7uGwHD1sGu3/6jRGqetSLlO+IPrfISLNIxmEsiQnS4Z+uOfut7gH0z7K3Td6mHrVJauubS9+l/3sOo+zPeTVyXyWA/UAkG2qEAhSEUC2NC+XGvu+v2DaPoLlv7nuaNTYFl0T1dUczdIjZcAl76TVqM5h8aNe9yv93XkdQjy8KE2NNdjSd75l0TIChLPBFjsGkCd7Tfd9I3gPIBkyqBqVA8tqi1+IK4b1MFhTbFjmBC7v6KT1UeNKzNW6BQxYdeVLFS1BKcTXLSg8oOelZYEZ5x0j8lAeULhCq6wjPpiqLD1JTKv3BidRjWMZrM0RJO+1Nzd0eqkWfozAQ0cRoRZb9SvSr7GQl+DoICcwdw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RLCL9YDBm/eUdLA2HlHt0vXcqjIUUYautCLMSLsbI9k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XdiVj2DYa4RIvJJyAvAMOony6phU7w5iilC9yl3EPbkEz+YrzF5zu6utdYtPNau8FLdXU60S7petdWDTSwaC6bPMM8Ac26xeA41Vm8jdLHUWF9gB+uo3by7b7Niaf1sq7hHHBdMTg6YMhDBw3tBS2Sd5WuXchga+XCRaffHvAG3iFj3DfX/3h3hvTGe7SVOK1xc5qTWBUaQSZpnEJFwk2CIVmYTgsQG3XgLs79khqNKkXPxFh4JQ6SFuPSLE5cF4eM30FLojfJQliSuWvpifZYcJsVHS0ZZwEXCrsOB3XZmDmUoSDiKWJrgT+I0/FmQvRf5978x9ZItGTRRO8KrFZCTK8E76uxAP7/K2mty/x9xWHF4lQvxS9+0vaOhAgvXt5udX7k1jYNWGNu8BQNkyTkk681f0a24X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RM6mfGbyMHJ84P5fZO2zmCkoVjJGrqzzxIIUAFae1nk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w0j0ufRWdQv02AW60dHf297hEErvjaRflL+/XbcBnb8+tIxPSUk5HlnGp0NeZORjArPXs2eVhdWt6ny3BcTG+hm2SjxeoDHx8xjSCSjBZv2pqo5e9k3ES8CxqlqyuVMHFAlujNQ0WhGAuBL/e/5W9e7RGfVwSyKRarZk/xl2mxUgUBvXsxrBw2fR2PZk9TY1VkadbcOSfhbbIedwW1+igYJ+YcvVatsxY0aK87jfTbz4a36kn7xOKcu9FOopwCQpwFM+ZgsPXg7TrL3JSIYGoDNk3O87P8PEM8rjV/ol0Bfgm+exeo7h/o52PwwO6lHFT8k326fGWcP7CQAcTB5EuDJSz1NmHDag6fLsYIkyyC5ukVleK7j5U8rtHBdTS8OeIuC4TgZ83Qu6isFM8Fwyi6X77YSF4yRV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RNU4BR0d7lyqV/XqZMXbJEaFRu5Db20RMP0qVqxdt1Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6mokvDo8o8mtzw35F5jnQweTOl9lRMysMI0ZHxpKBovIYJjINNupYNBpPghijpqI18W4/0LfGL23D6UP4vLhGzpJZpdOhqDxiWLAwNXMJ9F/xBIIrRiolFf7PJI4Muw234XfA9YUQkngvmqm9gA1fcTMdbUhzOJs/06XYZN/yHO+kWZrLUSwx+N5g8DhumWnEx0iXycMom3PXvc3uT/8ywe8yAqHYFsJzlnsF98HGOWKuT2ukjE6gAEmNIpPp41sE3OhoPiXvXTCayvnBW3RwgnffnJUJTAo1OaVfHeJaS8AXamhbjJatFcqAVIhc9ZjCmvav0qcDP3Au1wO05NtKoXjfvN5XRKgS/nOiCAzHrFcF3dE5k2IIkklclqCs+w+2fja/dW2LioqlIfXrEvWSfk+kA6vTN0S", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RNYJT0PLpI3vo+ixYLB2mbTb/bDtr5fx9OI524blcEw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eptiqfqjkF036WSxSyDYuye+oFBcg5oh7zYFWzg5+btZ7DPsTFniWxpzAJ7Xabx243evOS1Xh04oBmcn5swzSlbOS1p9qRcG/Pp7+lEu/7Yq2DJteUcFW7U1zWTWpZfWswnPLiaoxcOB6UtThj7zf8HB7p7y7pESqb1AuEb21sD55OAe3iBk77hUv46Ovv7p+Un3e5/Wg46sqmwjBTJe3193xeGFMQ+oZN1YA+wL7tldpxd9CmpeUuYSUQKk071zjQicvgdUCIczUlQt7+T48dWCdJSeXurueXyD+qAz/HyqPULEV6vljKdzeagXZ8MhokkATt7AXXWtFyPZZajaEnr+I7W7rFBRX84T2dXlkoXEVcFC9iy/Y6cr/VqoHyd+DTztFXQsaP5Lal51cjFX0hT6Kxtq38N4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RPFqx4/RBBi5tuWHwtiqKMWJ8NyptEAxI/q75pnP2WM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FoLCQKQVnSbHGoqymBSar5I5PmHjYc0qvJxY9JFzcNLI6T2wOXST6Dulz8WuA+/GvZ4RffClVKdwpTIAum2eeuNYcWl25em/s8fVhAvxKI5uwDHnfSePqPilhU6bhy6/7S8V/tBQyETvOUppT0SojDRd/XcVqZo+faC/Nlu+MFjBBia++ftPdXzCG4bKPSbH243nzVlwENSaPHEqLN7ir7hA7grOaF1yGWRQFgjTkXDU6rYj9xc6/bPG/rsoaT9rEHRNqpgLLW4zMs+W+I+06ZHhN9+n1lat113slweuw2Q3KS1heyLfsSrT8OEFqjS9mr50g7JPQwf3a3CTaeI6IIkyFTd4yTvYry0NqpK1c1m/I9NA6TgNA+5iTroP1IlDOTcTUAyN+pOcaWbEqzmavTbF96IBrL8h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RR04ngXBwSFwLMp0nL4MnHJOcMVbkRP6R+YvQmYsB4Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SbM3tpbQU2+qQ1Y9lNvdkLL/K5hC+dxgCekdjh12Tm1ejdlut5pJYywjw4Z0AOX2NId8oRGl9nBG0xfllT+h+DiuDvy+2XVtDv4xkfB47hoLL7FOKQdkDhbEMUfUw987pHXYC2HvHRp6hzbyyutHF2yCTpsaBfOWe+WSyD23JP8TuU3xvltNrjTYzTKHzDqrFDp2NHzwR1U6BuA3yWiK5yiF3WzubioYmJLqP+IP9ZTUdaUXkfm+0KY0fSz/EzujQIaSlLfwzN0KdIW97a2tlqT4+HrEwvY0EsIbefuy+pOhyS9NdzajZsI7M7Xqc5ijfVS6N0oD7Mws6JyNER5mez7EMyL86Vm91YE/77Iq4Ou9fe2DoJLhWeKBM3bQ8TGNrn1+PBKVV2HsNSUQ2qhISvis28w68YiK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RRQZ+NMHP5218iRaUpa8c9QnVIXhxE5Lsw8rlrF6f4w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DjrW2WR/8olw5Nou5vYARuhEj91DIB71oNc2oW1R+ZWImj5vBw5GFBaWnf2IzMTFmoQPiPoU8Z8E20+G7RDNGvElXpM+SxMDTY81QITgW4zfNNpgbJbn/zz3+8FjTt+qvfTcEfR6dv7PlkcrEJyqqTKmSnuCIxmO4GsBWGiuV9GKI0HnHMxAJPcBtYErZovBDICyxUCJoLUUO/CxUojNGcAoQytZcgiOILF8BQaAguLKSH6QddgR8SgICOgMeVk9La+MQtV/msJ6to5nkdeiU4XkelNQ8hUn6+Cs1ihzMPOpSfc4yqFP17g+Me1ILMOvdYwvTpiDaJrAmx/CMwJVvo/AYupKz2pKDHtFvW8vJ1ssx7iOaIHyVr+wneSC1JrdqjxuZdL83WTWC2pSH/po2wih5gJ3XgKP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RS4Glg0bEacw+TLi9Y0prJHO+yZwuEawSNSMFoBPCs4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WXy347eKSPJT9e6StYqNeo29RhA5eKO94BxTzrL1e6a6pD0No+U0iVUvIazpnVXM1hHkJTkKg5UpK7NwIKA6MttiqZtMKfZUVpMTyCB9bmVb75hJlZAq0Is0ZHyj00g4IY/5egPOCv6U4W9dnVa7sKkPLDh+Ppkun0q+QrbRGvotX4ga9uGcriJbJLgkTinE8JJmk49a5lzcCM9M5GVO3TIhtKA7NnDeY2QVcCUT9pDHobS6wgI/CPEWLZ37MDDeigi7BHwqiXu/vKdT4G1+wiEYGAfMA72NFCOnk6KIHkrqJ/N4SoTDlFl7emhIB6qxgV1Hpz0dFR4y6oUuL5csX1/tHxZ0M3snjzUkDt2/JxmboiZb5gRz6xvODMgWnKtmxaIilStAxUoS+a/s5jILFN2BBVNG83NW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RTsCQAoUUUxv1f+QfUjJsbpNhFfeuu4ijUjExv53XEg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FjxscBvaBYqrJHcCiLH1vT2taff4AeqUJ48+58Jc4e75JNKB0s9VMzOekMui23nidpys2NI0Ec89rQdPdQ7r+gONCNUzBgLlBmiP73UuRm5xncdGWUoO6/1Q/S9y9ygxLa6l7ZGKUPPazg4oCs7XZw+Lgyhkxw6Dc7T+kIH10FKfGkZrw1aKj3Twdcr8Jrvc4IOfuIgqct+IjoB9ERF1PTfbU6O2JIOtbjmLlk4cRm5XBCwq2BJO5FoWoDS6UZfIcOfQ8Oo0lS5pCVWzg/aK+4rExd+txBC+WDAk7I4geGBNS+M87xKxYRKzDI18iOP8j/tMeJEIDShkW32oS9sJgAtfjBXfhGN5uht6lGQK/pd2yMXN+PTbM4gmONuzz34Rge5/Pp7tWBl41yW1Vri0HHNxrFw+6E0g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RTy3VBGyisPB+Inv3jxewOSYyi6BabRpZ0ii2d7kjLs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E6RT3oqic5rKEvC75d9bKvk0CT0YcdQQvPodWYlhLqjokE66OrTQqgPsVBYfeFRAyTD37kcFvEmXENJXsUHxfp50xRqOykrbSHej7iTeRXUsDpNOKoIJV7zY6Od3cKJTyuhKwBlqh2G6yTOt04zi4paqZtYXXzkjh6hXj1kUIivSBAUF1Lmvov013T5wY+I1lTAl8PVSbCdLR6GvGnzg6TNy8KLYre/BrDARKXCK6r2jutqBy/IJZRYkjaBt5mUN6Z+6tMIFUfrEKkQKWbBw70p23QtFAy5OaXDhPtufoVP9O/EEZDN5iLd8RUr1hecumpyBVGgdcy/SVNX9JKIh0bzoYSj8iUG5g8GvN+0Eu27yrRIUM9ZneAOitKcbWl+pwIThoA5W4Ms6oO/ljSt6t/QITbsn+Tw+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RUEX8xUspgloTgAvaFZspHpuHr/GIpbI7v8qmzYLPnw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/l0YOYiNhCcPFqzTB2fNw9pa/fi6HIU/PpYgYf63S9daOLS3HnscEF4orAJ8Xy57VIYf14njnJMY3fCWjIUBO4s5qv7rQVNXJf6kfVfWJ9UnkTNjqcxdqpaaTHrQyQ0tSBpSLIMr28Jgl9MOx+ZP3D6k6mDcTAeO3yn70ZI63Tx2NtbFYIznZeS7GfrzPRiUpMCZXM/5PQCoeYRN4Iq4BY93AmohwJPZpATvwpGxtrg5/EjAzpvpRBSkyFzwk+1N8tW+SRRvtoMfV8KGRHIxsBdMstE6wGx0mZrnZExFYuqpZmJw222mMdZQ7IQSp7OJur0pZ56plytP+ECaWDZ05wn6HcBn0NtW1qlmmixkqoismkFEBHcllrIV6iKCdx+nAzA7NaoV6tgc4J13HQzlgBet7dPBAgVG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RVJF/qag2mzzivFuCNw0P27AYCv+R9AslgR9ytANEko", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NV+LqSkZkT7qLmTHhJFx7fag43eN944pZOlqcpxLyuINiE3hk5NgfzeRf6kR3dV0y0menfm7/q1XCCL5ReySGTxmFyWevc2NefyXOxrB/XszRpYX+/6z5grdjEwYOJhUw+Suzb7yz6N/ws/MjL89JK27s7emZxLP00s58hAQ44vD41IvW4bS5Evx7t0FDmIFTVkwPX6r+KSZG+a64niDegZl6bnffxFcBKjAWTgth94mzkRq7TYJpTuQ2o/BJuFrpo3HvoA0n9ZJRpGwcYuBRPt+EL2baMcbiLgZ2d6pC+0jK375S9ZFSG5V9flElWlz7FNCTtyEfz1TCPW9CuV3KNrg2EnepGoWW6OqGqpUdJq5lYTGKM+WVj2iN/v+uETKgYT8IEbYzv12d51ntIzGkeD1DYXiB246", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RWXk1SHOuO6gR+7ACxa+O9bDj/2fqJpNEp9xvrc8GDc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ky+pXJSCn6HCk+JOE++j/g8PXOhgeIJXlgtp02coJ4LvSz/ywe+WGbVPDQ163xQln8pmW5GEiL7ceTMQkv7zFgtNP9b6VIwDe4QzQFvFSdaxihY3YzYeUm56uz18n/TB5aXsLARTanbWmjAl/LTmF7M6IIFhjnQiqsFkjxrPYRBgGuvMXjQZmBIuU4fLXMCJDtYqHTqJjrHCbJnLz2JKXK3wonU/1OKQVv0kuEK6S4unDM7OWWpptKdUMhhufD4Cf7rLzklpbnrv5t8knJ3BNg/gUb49+TvCDRl4arDRNz+FFxhYizaLiVJ9ekNERwr+TaPloa+mrJ3+sBwbhOg3qz3Zaam4otjl0NPlwfGXeHT7p/+Hth+gS6X2lHHP+OSk0JQgJeI7SCANerq1SQTnkcAlgj/JyK6l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RWZFQe1QVvTew8iJRCqFe3ZmP/x5z72otQqbCsG1V9w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7E9OZBnRQWGlrze4XF9+Txk8Vx0aw2y0+7aK9GO1sEVuX4BBG1OlS8yWAW3LGJwMYyrnvgYS83vsiLqcoW9cRj3S3dkShL6nkyR+mCB1DxUdmMyBKxHIx/ZCJ8zoVK1o0CiT9U+FUuJTHlqRQ/5IQbxLO6UDPO1xnWtdstsAOrA3UqlhvHUtrGvjgC+ogPJK4FgiNdBSSMZeGaBcGAald25WAGIWVkrXB91+q1uUJhZ+bQtnvt/H3GNIiniS6G4dTuEAhrrijLj4o98R1KnzUCugUZqsOxNTnb0TqKDhexnbXhUfe9OhUs+2eUgo4N9hZltb/PPFqKEJ7UAWS5mPtk3TkamOwDA0zhCFMiOzBJKXEHkx6zUladNrimR/Nhdmipp4UTqDspz+G6EPpWRYIdhsdOZSxv0N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RXFbh1JwuBX6hlqNgf6zkhVt+ahkmU/SG/lmV/m96Lw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v25nhtV9I870+GQtcaVRE4DWqQEakp4fKjuti8QwwyaaoKdRGmhoSkHkiOK3DZeV12s53/fxMEx0aDKUIK5m9gPYtV9xtX3MBASJBQrcqbrxZ0v1J6D9m2/hapErd3P5IQSuF1W90e5kpbmX6OpcyKOSLavRFkqX5nPpKRR8CoyzHMEjzrC/RRMFO3PWkvvXY3cP6SGbke5FBEh/B8eGZIRi+ULjuhFI0a41P1CMGu3UlHrd2t5I78/9g/lhnXctY6x8mYXQTxezzDY2DhGFoW9ftzSae7fyj8F50zZZMSukUab2EJv02p2bD7LwCdLr/LhQwJ/XG3F3QtXVpABa/1BcoVj4ZCCwAiA7zusjezrcoDwoFJ8STRWJ7fi+8R+Zn0isSVnT3NXFTO2WQG03PdQKVxxNRxdt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RYZUpK2fMMn4ebfqXNIXgfmh/Mkwu1SzGMEpyhRAQjY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Nq5qLKxqJoVRy5gv8RLvIN/UC+vGXKXfcayTXTGPSoY4/c/65/csfgfSD9J2JnatS33gT31djknXbtv6H3yOea1g/UAP9tWF3T0laORgW+8SF46WrR5dr5ungDYcXe46/eYNJfBr51H0Kuva8yfck0IO7QAamjJ1WR3V0VPbyYXsTn0LlcPwWDapm+LXjJOJPLB4/fx5SyZyi8UX+9HwZVqXz3NWlvAsOl9vm9p+2f5O4+X9CWb5+Muf7w3F7kPeYGAuHo08LmXQWOUCoJspgde1QX4uDJuX0tSZDL78SA5YbqDh6Ntxls3rt339ZeyRZTg1WXbRhWZ55+GRmpyU2wFa1RQ++ziSM8vGLJDHJMZRHrYXJcPJeHBUGuOsbR2XbI2D8lqqLB4dm85iicDALN/+CHf0OgkN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RZ0TikW1voOPyJLKKXcbTcI6d6aPu2JPvHH85DplnpM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y2JTD5TzJaCxlS8xzvpPTeeO6OXstR45BlJzcsZ9dhLHEyKQfo+v2kcioQ0b3js4DvZysXVirKy046GdiNM0wU68W2/NsRwj4nanoUGrP2Qj+CtytehtCPzSYOg7HOpf/NtjAsKk4AZ2gvyuRQk9DvTUoV3rPoVP5ADRlrfrEKO56kbk3GHgmfJPFRK8KRaK21YVSGWFQlU30ihUVlV7RfWCgabMso63/11yXJlas2P0ls/9ATN7yT5lmGDtcqyR0FzmCPv15XNHmIdGBHIUo1jAq7h+ZKLuKGYu6RsmC5yrj+eVUnFQkddRhwf8MyanYrhnQMmnK0lC6WixW+FT6GFb9nd3ndX+05gRETX13/5JlP66dekcjtI1cn2qV3m7xmFvjOwa2Yv22fEno12g64ba7uxZskRl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RaOAoBNLDW5Jljpb/3O8stri/XDjBsVrBoOihlyc6QE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NjeWDIfqOxj9JU45orXbrJENbY3Hm60L4CyQxJsjDkn+oFD+tHl6jzz2LxeEeWGQu3JxPT3DMM4iDnaJ8bYNG6PCdGQqrV2Di1vFBAQM0NyfTo9/WpaKsd61+eDz0+oGMsD56SE2quoNCK4HzkfkX6R65047aQ+5lNRuc+5bf8pynApZCSRHWPNHDBmpy9Vtsg2wNpRbno1jdDhHltd9vtyfOSfQ5f3RI3U5S8Ibppn9C64j8t0+S0eRk4iGWBCg7ftCWASsax4hvH/nqirMPNP3RwQPoC8729wAFFdhuAfHcaRy7l8Eav2RcJvsdtyCNNOTNPUxBRZBD9sxgmKZlzzZqEIdJYZCJVoQtqG6Qm4m2OMVMctkdUcKWNfh6GOO0/LGI5gUs60fPFRPwPzMLdIaYbVLRl60", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RannbfEUBQUEzpF4d+hw+O2i+ehyjDeaLEmiy2eW7ds", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ngrR54+ckarHKh/H6fKH54ZtjK27J0bToWey/H+prVARyyozCJZIRaRi9dnva/NtcXABzxLEAl+XwgP47gpbXtCW3bIqduhmTOgiD2dNdkTje27n2mCi/zTPhE/cKcZMF46Tso1/LzImsPSn0OAclmwaKOpdUpo7I1oaMeiM6FSKeBeOfV702G2j8gzG7TwQOzd4XSKpjgkN1WN8xnHn4Ap359bZcbNWVQmUqxmJSJkcZM9lbpcqi9SEnc9NB45j7cxvzz53KWp3crT8Uf4bbK/s3svOulIjbGV9BZQsPDSj+PHjr8A/cjygx7A/nu+3A1C2D0l08aTOu8v+5XYf4pPJBzpQpszSlQWg1Q3o9RirYmSEKn5hz7cd148iNVkZ1sXK8C3pvCN4Oc7poSOK+trfFuwkMNXh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RastBxdR8AP1KcuhQJAn0KaD9ptJZCKz4PAFuOucgEc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "J1Ing03qqA/gh/z+YXB4j7xX2//CqRqHu1P/BTrATs0Am4nNGHLPbLdlSqVNVNb/FHhxBs6qUy4hRSotcgeZGXG2Sn9PsYXTweLdouRHJcVadkv7qcS9tP0iiOYn88+MV4qWuoKa1HoXf8W2RU239pO8zFOVcYyBejKf3syRfXsVfr/uSCUbxtk+0DntOW0L/Bamk/dlSJLBJsBJSyg7fpeEF7GeH96KpRnuVZdQfB4bb5zYNADLkn/YhPywPzLI+vjRo2aU8N8fjKCCH81VEGqOdv3fUYOwNh4WLQYXVnacHhO8TeQ1HC5nPsCblhZUUr60/6I6w8jnYfxgI9HUiFPX+jngz2UqZ5vTyVAQK04EqwE6iX/NdqQWNoNQ3rwq/LqTM2rztB8mjup+CEFWrbQwMM+5TMwa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RblgLFscb9V1Hml6dw22tePQ1PrHk2HyFzjLj56VQcw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LqC9xBRBOoOP3hOIpRF1FbWB44AFvD+ugLsfIdpnmJCgG4xmlQHV0gsi4yxGdFIBmnznBLNxkhvVJJtBDYHzY+Fkq/C4NPUNqn6DICxZnpvj4gyXbSQpwZ8abZM8HbF7gn22Wtj/WL2rAqaq+AwmYIhJeU3EflZ7ZkQ3wgv+XPbB8jaCndCA8sQY9ICs+WIBM2KAKDLOwEE6/l1l3tZj0OIiv7Jci9/TxHWEPyKIn8D/MSU7EWpncz7tCcTjtIqtsMeMXbQv/ogAMLfvjgovWt21nfAyi3WzD5pncHV4syv2vrmZ9d+ZhNiMqCkPM3gMHQm+QZP4SZfUHMUOUay7s2hVjkQjbDrcmgADlRG+MpWVBYgMl0wRTjrmnnIzUyiB06pLFUOZdNd4+oLFqrsjqckhdpb+cyXp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Rcf7/iaWc6VVWjGVU2xiwVQ8kQk3lZ6mNOrxogT/kdo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Inp5nxmjZytJr9H6qgG5RbY6+nlG2OAhvZlxQ4Nc+Qic4uGPMIxdNtvK6xtRKbrTvl6HtlTThQ030t9878llFoharxXX9HKTniofPT2GYKwA64FiFfVMVzhbbh8oz2y1oMgciEg8/CvrD7mLQTFYpeMIxljQyQrTlmtSLWmj/xN8rQPau5P6GvLnA85rbjvS0Ks1sXvoA6woCYdvdp/2lf+L8hRWFRMCe63Z/uB0eYvEuKJI/FhA1QTWJLS6t/s0GC8Lf9P/i2e1cZwENTq7/tQGhSoYSC83YdC//F8RjGYDtNGubJCbatkSCQp2dPnY8a2yqrFbkEIWvU0GK9GXDkG71/Xl+4wIqzrVcpZD6zjngNUyI3u1ksFKChbq8/zR/PYXdjjsWkZWjlKnR9+RPrH21YsV6Eiv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RdyTHBu4YrYq2Fzi+Bvh+aNpdP9jPnKcZbWq+/WVFYo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RwcFOXNUZvPRDkIi7JkAtf97M3GoPqs6+mo8vyuOrQGVYfcT0DJpOArNs0qE/9DnyXKNt9VlUFeyBq8BrJ6nGzxsJTfpgDmFyGwYReuxJs3o3pD+5FQvM3/Nhp2xzeQ0423BxzGBSmK9oqKSlceuhulfTFXN/3PuL9kfqG2qgpnvaHWYXb82GI19bN2TL3juLZds9URrEyvAdMmmdfPpStj/4KwgtaSJb4Hyk67CYtRceQj1+V0sE179duNdYfy4DYQkL6AUkueVEluSimHdNUrpMKGRaI7FJVuKUzgkUJL1Sg+9RsJvMWC9A34ZrVvjMDQ5npH3+F3HwqBv8kifu48OIIWIphg9/Lfcq4PbB7zhTbaLSgiOVeLNm4DvZbCL6K9X1WDPJS27T+MSUL7Ei7Lqt+MXRwRV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ReUN5nkLAOcGItUq/xiY2upMh/OCIz5ys5rQD8JD62U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3hWv7VNPDfy/YJC4LvJJItoBSJI8qnUIrgSCrolWAlX5RW5IjltCtSW6iUlsnrP2WwhSChMC1wdrghPrzzeLOn+iCtWP0Ypk6fLPE/2Jd8yhUQAHkBDyBremWgkNwteQiR7Uhy6gFXyr0WN7eeQNVXAoLE0B5MaiSEDi1cPGKC1cHZE7wgfI5frpgLm2aTSWWGYoDq9CMtcsA8N4VEz0oIuwA18Ux/xzcKN2S00EZ5LTzxiqO7Bxy08IEYcKcCpZrXAYeJzLboVJzIJqNzplAwyph6qvsNIvn6L2C+jGiX8wjfTSw3ODj/+BGb8jpTkJeQl6YLQISVbJ8oG4H8h57o6GYxt1jKiGfL51USgZcobjjN6lVk3PqIptmY+gOVuRciAdHiirl0ob7xSI4EfFWGl6H6yz1tj5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RexYwb9f4FhIiqmJul3bjX0+1rr78u7E7Z6BH2CFQqo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x8ur504aLLf8WSWtlvFSjhbm8IDDdJy6k+UwbQEQr+2QoquVu5qMbFC/DKWA+Wo6Um++cgD1CmIrYUWr6RizitNanqmZPYE5Dv+2hz8+1gbFPlQZWi5kjM+xN62GI32iLOtVp5P9l8fU0w0srr4wbrSBNpCofXofB9hFhZ2saSa7wN7A26ZGverTw7a1al+eYDumGU4ak493V9h2KDydqpIx5yZ+W/KUVcYf9CFd2eX/ZT3hDis+Wkgy2NoqBJTx2ZWI5otQqwpH7opmkADdvv27uwNySBy1gH64BxAP6+ZDRDWxwwAcXtuh1ePbt6DOoQx9A8dHMtxoFM9c6thNjhCVFcyMe2Zd3HBKKn51Mym28AVn+aZZCynwjbGKJkNvTCkftH2rufxgeX9ZfWgvDgsfj/pz0v/F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RfTxffLNkz2RSsn3WdAkGlwftZsE+lozeaHKu5UsPkA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hYBie7obSjnJDJOOhRZo/xiwjdoPxRK1cQGNL6NJ6IhLFLnLdiK16x/DOtfNjp6uQK3lwNcqapZiaZv72FsiFENNX/2gfYoHzTfPM55g/jc16vgH8+H/YEMABmkDCjUs23EzctE6yGt88yg0aJXRJzTZx/7qAsoSaiiSXAXCqydftl4pAMM6IiCTtcT8qE+Qyqioak1j/l2A1iHFaTncqYk9vaC2P/HDDe6oGuVcAbhMprNuDD+v1aBqmdh2Mjn7S7ZquiBKoymt7WQLgrMw7gWJV6Ha+rOxGpFbesMgu8SQLxtbZviXKjpa4H2o5XQiP0ddZud94mFyetHjHQjjPH8M0bnxNtuMMv9aG4xk7C1jSnqke2kKgLkf1PSB6auWIT5u9bSaPatecCiDSrAmL2Iq/ZwJ+5/J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RgFvtd5f2vtLPfpfKDhf6qpOuya0H5GhsRAfWAkUn6A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7cQlheawWaobBRwWWD6iXAAHncuWGYSGRmzOVyy88XftZA71JU4/wkJTt9HJBzrlYxTTZ7gP0jNhqD1yxuzyhlO9WJdqrWEW61+Mzcl5t7mL0zeYAhwdqjWt83rwU+CohENyyN2Clo+EEwlkzZiEdhpe/V+svow75g19mOxLcClLTVy4sYpXX1B2JyFPwYmNw4jgbOULrA6HfdrAa+DWchK0RERK5wb5HwSsVZb2ueZmmq+ItCLd2DY3h6aWFObfI4Xyeqkd3AQuI4hGyzcKqP7t9jM0Hgy7KRkhQiMEnO5AIalRLQeuZ0mPhGvfqPsNtYgoY9Kg9P+MiFG033DbCzuDn2hQAQUTVxwKBis8bzejXHJlsxjw2nGy+CAxNoj4TUvtdPDR5fmVowiEOtxWM9uS8vaxhqFJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ri+V4brwPfgvNzMJ2sTn0PQA8CwWtH3wusTWsgE3S78", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TThXVDKsPEww96PlXhvS3uMEC8m7fQvlpT/7MJrE0HjxhHgvH2gAbVThcC4nJcWefjpiVeu7tULHSlQS5w0KtgXrzscxqZzaKXCAhgi4G7o9DxcbBC5Wm9cMhHvg1gs+SQCmyiH+YsUQZ/aD2nQUM057OgAOvn8bGKq2orR81zBpw1dFca6xx9e8INvkVtIe0sJU+XmaqBlKXflRhllNwoOuL1976ygZE3+V4lYW21h4ybjnFFD11kPMxcQIrTx3eyTa8w9bV7KC2B+rK8ZrYw59puqBhhBWT68WgzzONjrgLdqKk/rtr7iibFsnj7NTUsAgH0I3Dr0nudB+lK4lZOYnHS+Ph+7hn1hD6XJ19/L41/rhotGiOvatt/RV0otFVGn4DzFmgb70EHNSB/x1I/k5v2dNHIol", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RiINK0PEDJBeWJG4FXeu2FOpRlICsgJQOK5EDrs//G4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FAlHaw1rgChB8tULuRLxcq2FolXC1hbvdXqs9C2/PNaleVOTWcISp4UNQyb23iXpf3EqsYe+y75qSmG/CNg5NBEdfdY0f2sat9FASqZYapGKeHvgbTUkRBIofKne11KPSFsLGjjALdbPx8/vJx0SnjKJrdCCazSrgBjZluSkai2StXMP+0TdqGldv8aDr2SL+rSShQHoqGMmOcm/bm6nkJkKxzpRshUvX2tOnadP0fp1Tl/nA1p2insGybaBpPeeqKD5PEgRj4Pzr7a710aAlvSifNkwd9Nwx2iAeswte4SkVJRQVCEkkGq1TJbp3kq78s5BgynMVC5c0UNwDcW2lb+B7wXGv7JrrRuFPZkOTtQnUyk+iHMrdIEDKoQcsy3auIkdFpMyIZH7k8rKJbeG69VHMs+r16f6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RjJd01GgU5RVPqkRvlk2tDaUnuprXzuBe44X/vqub/c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oXsg9dIP+Q7a4GLbkQT1npojGymrPCLtRnaj5N8XgraV0KjLf1HCkQOQr6jUmv++FgOhDr7zHFx0Zcfp4bM7nKtRKhhT8Py4P4qJfsAytOb3nLOsp3oCCPk8NdRM8ENWtmelR5kx8O/h4hPJRvliUOXdhQws1vfstE/Q6gy7bmJILDkqmFyq3vZFtpaxpgVzqfsLta1hOJVwSSUrkHAbjODc3HHr5+0ph9BHzBzYkHzxrg+gCnIS3+1gN+H43ux4XN12OmOKE3czE65pnJ1Ipc9k8HkFHjQtF319crv823jhBMLqoSdkuMZVzlJ+cl9tPt06S96XjupfsqTm3KUzDMgIVC2Wrghf4TM/vjdZKoiOV6iJsg0GBWwmw/gH7a1X27u4DeHxbOfUA5x+hrd00cfHaSH7Mm7L", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RjXU/bw60qrXDQo8PUHxG+9ejAY4Ig+P3wZfqOLghmU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6crXZ9rUrjSKBBFF45LUuUePn872N5zOB2sPtuAubhtqomMRZIVWBVB+2kF5OO+QMW0q1HI2qNmPaEhlf+H0AKBpByZOHWbppQ/MYuMJiKzx+mBoeEJwSeOnBxgO1h/NilXwG0bspw/ocf62ncoH7K4GbGHcyiwVpy1vEsrzo3uXXQmGL8RxAHt+NZ3LcmbVraPdh0hGevXIQ3+UAtkRnxJt9Ujl0SPnPeEqwFrRvNP4AFjmKv+b8ubcthyoogpl23EKqnO5m2aeNetwWvSJ2QhquvQ5iL+BRfXaE9PuR1UsRrVOfDB/pf37KHmbrY4BA4SR8tmA4563zL+tKwcQaO4dcjnj+GwFLoRT4D8JzSnjk2lElZ76y0nliKGSPjcFQqjQT2feYWCDGVGgEwOjfUdcGYB+tszm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RjkJM+9a26QxMoJDB7eNNP1bGdnQfGxfyUE/yX/hd5Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1uJh9zhl9l+pRC8SddF+GAeQY1mN8u6ueNS3WkEawQHX/NVZFtnoCxL0WF38SaCisElO5Z4uc+yAhBGhoryyh3liBB2iLGGd0LCb5O5fG3LrUp2tPKmMIAVM3Ct6b5A0v+N0epQ3qWMqnNrkICmNrYVkHWl0eUPnU6oVUSusKvBHYts5XyHG466vBh3NpcliLW+91gvIJ9a8pBed4PKYjNrjEl4CHZaQMu+AixfqxAGSmVOprM4o6ZXiKygB9aTEoTpuosqNJd+EMIDvcJA6406gndaII8W+GHX2Rvjg32Gkr41jE4u3hIg4uHoOCkDh0NZlWNWwKXnAZLF9TkUNVhLzewvp/FlTtEuYL/1C38wMOc5LnFU9cq46H1WddWXsDiPnBEbIV3ysyzh1raqAPjgXecsUbxSP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RjyN72KxyJrbQpvndZB7zpcpoPGQxe8AGVvP2hDsqyE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r62eY8ZGPM8o6v4imaeBOx2XEvbpIHzI3bn+ujqxUfthNK/yBHUgC6q4CbbYdVQe9irodes5NTK8cWeJMjGKiWxgIKWRlTHxfuuwKMRb9UR4ee5EbzNdfJJ7clzmcsnL3kQwiUQE7aS9gtBbaNRPQUBdrxODRRFXPASGGUL3hrpUFYs5r9KZUneCWmLpqWbK90SGmgZhIh2Pdo4Y6Hip7V5HbYGmN10AOqYDMuEmk6033LkV+ObIUakL52/QNj4xRQK8Xa9f7lRnq9+pRe2T7PuHRJQlNZYUR+r6ZUavfaLWNdDZgTJgrjjuvYKlRrVp73DGo7VIa/qPIK60VwQurs+tB182yLWAhSQji+jdSBybJ5V5H+PQdCVmLhvdTxiXZ4TZRSkYopk9g2fzc4Nd6KUif/ha4yv6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RlYWDDl4WcEFYMCZyfLzULAraSCO0Ai4nu860XJ5Q4g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tHJ+wI+9FVGBbgQ3A7u6yZax4qYrXPhhQSKKsGj+f6PrDc9j5l0An/p0AtvZwEihiPov9CIReW41D/+TG27Z/9w6SJbgVwnXFEqFTz5vl3BsifdsX3lyH2dQmPPsOJGZyczeiI7FpKUwymayGb7TLYB/lQU7p9tJj6IaZQclYdJYOp2nm+JYQo1ruooGRo778D5oqZXg2qGA63FSByccLloLDxNSkknf4WxNw9ypqqxSQHzZGRpK9XGiWqJY7kCpKiV2ARopRDrPiO/2Mp9fRbnGP4HfuRN82Mda4IB14+C59dC9w9WeMqdigtTzrdvIUIlWLZqmfezPYcRjZULYp9WYCOwFF5genPFqWzya91e9b+RWIwbGCDl2RWvcZs9g7D52ltvLxIKdI2zWBLTxaKhSNmtMgxPI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RlnyRvQPD+dWYygSVLjrHtTO8R4sWqEDp9BN76AP3PU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k9Wk5Ww4XQcKeF6Npuzn519vg9hxLv2yf+pe4OjJmFYq1onRT7Dj3V2eWDADle/bklfCPiacwFaW7UoUVFSk246YJZ7gc4fFvkZeeiGCAb470tQI6CBpfSssEPIGYMqkK7Sru4zHViMkAwPgg7hvY+WdDU2VfBIFTJ18S4bebeBUv9lj3qE1p1GXRUTr4Z8tmBGNXIoMtAPqi9d3Lk1jVGXi6gS0hSgqNED8Jt6wr8pG79//+Z9Qrh5y9HkK0uIAoG0gl/wv2iCE+ezJvKeDK2txeQ4MqGy2vfROQx2TeqqUoiPtXR3SkVhPVtYcECTPXTiSQNclpwrYucK3qBRHdiEo03s6sV7mehsSgEV1YP2j3KZDHELguSH6Yyzg8Je/HXJJaJN/vJqcTusL6JQiB0fq7k/3J3Tm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RlqKFoVFtbOqb8GTEohffqSWSA4wezjiRHB8d0u5AVc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7rJ4llwA1uBBkdz0Nuham0lSA95z3v9OM+e2cHplOnFjNl5eHoXed9pQEWpMZqVQHLEZm1YafNXkGmpMmdBWiNaeehnojWz3wJGqF3BZedE1dE1fzfErXdTngMnd2xrCqYvYi29tYNWtnH1uS16IlzvgQyqp8GTzMn7VJDl8pFr4ED8SBtupdCM91hM7AEYld2vhARQhqpF3LVJx+Hdf9O9vLISaTnWSyptIL0ItuknosgqGQ+0eBZaNd2WW6imY1m/7ni6WPZoC4uspLf3HBZgzgAdv9ou0/5LWoQb5ATCYgVR8d56+79d9KS/6DlCSoEEzSuzdQ+qLwsmIw9prBuxeldIvNR/gonr88fPakzwJvj3/8AoICW48ReDVGa88GQEO97GvSQhrhU1EQ+sWlmLI5YTFMIlN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RmUDMNP3lDuzeuOOmyn/VbbmfJeAs52NmfEAQuJ5IMs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yKT0trWZ4nN7YxL7eUXctOLsbxCd9TZgAluuzGqBIG2ljXDwwXvMo62OVvwlaISmGVqBvfNmny80CXy/TtbXmk5gojd4kQecIPsU+PHMLfzLWOgTkejFQx3oE0oTfLzYYkOXuuwSYNkS7mfMN2r+MsvJzIbmO+HhzAaiYImIZHCXUlGFqFQhZ5L/AGFg257SICuygQU9KnPvwJYPKgODrvWlNqJK//utSO+As5bkfi71HvfAeT5hO+sPOOC7qjkBbCnXY7CaplexSvYh1jS+4NVHsZ65x5HeL5hS5CGsTHUhEWdnNryWfd/cI4IzonPQMyWSXgtCszaPwMnFk4NtMOlMd1ZHbTGUtKexJ6urDb0olWWsbt+9cwrkNedHpfErHZ+2v0Aq+alHQsYqVUuoFZnt9QdelEDB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RmyCMCOGogpVTVymq1gcIft3KMYjKrDnAHNem9zaHTY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KyQEg7KGDvI4z+amZ8sm9dlX29xur/oiW5m6ycOEPVicLY42EaDfjj+E9UBfVpp2ybnrYRUUkhf6DCRgXj2eXKy7uJKsNGFdsulkMLuk2jlIfqO6i61kk7TUCAS980KClfOiIjdBwjEnFmtzk5k662FhDkqj5QIE+79HydFzJLNZn8MM+3mlO6paXVjTTFROxo8ldDNznyd8WUSNtoQG2Xp0r4ojgZv4K7v7qPblP/SA3wp4mgHvM+OD9CbzGV/vUEnjQCclrKJj4eMpZvN7ogjRv9vc/vuURjSI+vaB6nGAVwWwkuwnqgW2AHoSlGYK8axWi+haxz4I1lwvuzgFsj+sQlO/tKMbqsClADWlEGro6rgH4dyU96XbOdZN+sF4NF+tRMtAjP8Z2xJuzHp5syV/9PVdADvt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RoJnqGJ/Lerm5W4oyOzRr4AA3X4hYP7BSm4fVdmP73I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bXZOGm7OYV4fml1BK7b2nBuIgcg7yDN6TmGCxmhhCajrRW0NszkiXEiMeWsoiUZEcAHgfdPr12WUJxBG6r5vhZqWJiEbOlvvMEswbKsi6mnxhzRe6GxRB+Zt9n0oWz5q4W527JsOPwndHweauNNAp85eRuntqhdAKzSoJQohhehlbQ/I+muSAXSUT2xQoDZzBXZU14x/V0tVV7X7Qv2BdICppvuNk1tzcmI+B4ihdYDaMSxZV7fcAjXnaTKORsa9gw8qh7UNKK/G9KrmIAZchnjuMJJMWwzUPDblU1nwqx0zSqYd0j+LppMumBIAKJMoForgpMy3LuxLRcrksIxYHLBZkV786r/dDeM5pEtr9kn//VghjrN67/N7Iez+T+YkSUr6eihNMzdURslVQ+p6vc4HmEuw79CX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RoR7lNxf4mGt7PC9eoH82CuAkiAL1onENRpNpl9w3Uc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3zMLuyeeMcNziilsrFAQhKQkQEJYp+yeI5jIee000EJnH6LMp3nCPXOqIx8vPd7clhpKF5vbR/mGDCOMGaUFZi171GaDM2wusL9zvEjZWCzFGstQ1cQBHRUrhx90ply7CR+HvfJ0euTwrLFlTvDpk+21C2crjoxCzh90YzV+UoTEFcAq4wPdAfZWACXGiDrK7c0QcgFEc/3iMu1L9dg+gm07fLk46O8xo74IXS34gZ+Goue5D6tYVcgADcPDJ7z775Rai/fTl6ESJipkCwYFtOr3NTcjaMTpUqtiaEOisJzkj9qrmhGsFZSK6hEhBcsPKIFaw59RYEeZISuMrefq2pwDIBWE0FjdLZXDePbQdaBWzCtPS0cBJ4/CHIVtHv1JhkHO+DSG3A7YLcQ8fGF90xQ4v4ylU0OT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RpROIWC6NiD6NS1wv4qJHI15ihaJeaUdV5lltTqlo40", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S6I1l3Aqrao+/WVDDPEERNFNPvqAZ9JS4PdzR3eeRMIKcCkrcPm2HofU92yhGW6Ogub00v4qQG8qwqXAe+ddcAI6qs/5zH1wZnmaC8ymlk+73kIl91TYer6rp63jW1DzqGY556zLOXRkEvQctTgV+reOptxOAEswYOACn3i4mFC/MkojmiZCqZpBef578JqyaBplbsbXZqM29HAQDC9FjkqD+LaprJEI96N5Cp2bkL0eLjMQ+3v5Pwn0XMjW0DyizNSLTa98Jcd7rOd/2ZMqQY+3dQjjAUGwrcAhqe2OD1ABO31kX3xsf3H9DROaslCH+VnFvdAk+5RmpqtNvw90+89ZNLXt2opshEjTeldXzlNx4akeaJI8bqNLwB4IuiFx+KpGwA3brZrzgscx56CdJ5XKcODtM7+d", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RpUwPiMonCmin9hh4zjGAnyCjzMkfZFzEY3jrUOV5dY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2OAcOLprKGwl87Pdn04iEYgRq0pyxB6cyz6A6JDPHxrCiIRKc4GoiS47hDwZr066nkxMtqdXQGZk2essEW1gcG/bMNhIGx0lM9wcttjvjaUy8I3W93trX+r0pSu8oLM7MgMaX0qca2zNFcDPSYvJ1v6qP010uAA88muDgWvV3Z3zDmlDjekTB8UeYDtoYY4CQ5o4BOKhWTknptMBXDiIX9D71zND3/uAAsVMpDAsV3etKrDAllrAUewM3jFXP7kKLLv3yLXtw25hchM3cJcSAqIwLK1uRRpm6Kj7J2C7vL+d3+wT+499JTageqftUXznOQ8zlGXf+ODO8rKL6ApV7uI8BJ/GvJagKFph87obrlK4KnQNyfyaqn9r5K94zAelKE8ItJ7zlYs/W8gSrIRAmXhr1qOw+iAy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Rr/QnhlTtLXZKonL+WeO3emwkDWwgkdUv4YGG7rpM4E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XDzlz5iNii4Kch6r22n24vnLG2EuwEUF2NGyeDmoW03YC0wKoWh1S61LGLkYpddlxN1kNbA7e8/oihh/HULVk+ZmA8tZmsFg2tUX4XqfXvq/yab+fy6pqcNh+w0sTmhR7qGU9NXe+TvclVuZuPh+83iuJ5iMfS/4Re2ZW95SiEhc7Q2rh+GAN0tBIoFqcVPG2+lRws973foyvppnJ/aEJPTkH1wnTWbHNd90gn8jHdBCpU7D3qCMwszuJNcMKsvkPQG3lT6mgnZbxQEt4vgmDOfxJxuyriohpWsKV7I5Fb3LujI6ja194t7boYYqfwO/6znwcuLPHFrE2dk81qjGelDBmt6C6O3iNwRIr3wo57G0jYMOK+PdjN+/8/X4q3AmgIhhrsLtOOiIzxda8G8NxjShjoOgrZ1w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Rr0xukbGKwrk+py+ViQZBCq2laiTdPDCGe5jp3iDQEM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dQkiZD1ToteOeoPVVGrbTajG6gfLTLdDQJY9DZp/1eDXu8QRC2WwCnbFPPEjBFtTYLNdc8Xfs5zdBl9TWuMVveLa3+1qQC0fATeZ2R1emVinfQa0dRBrkh442O3bqFcdle1uIyOpjU5zHZ3qbyNQlCg9xDPLmIU58rkOs3jFZTCr2ASF3OevvsJu6vdh4gz1JHodbIJwEEwd94/pXOyXPO8nPFEVKcVGU0KDaovVa5pr6n3PK/3Tf2BWN7rXCrR2lLYBJ5vQ6pty8+v7St3BZFNqUCtTKJI7tzHYoNXeqVWpZ02F8PcAnSVYCF+wwo9aHYRAxAFs8zV/s45GLLl7p+cZdmR6xspqnWgDgi2HKQVJQgWhfbvyaQLacerQMZGsHZD9C0qYnOmVMRV3/Ez8hKviTOuj4NFf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RrPcv+mI1h+Er/075f0jHu6vNQrJIT5OuOWAphlxey8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "51CgE3Y0iZGlX3JG6EmTX65GrTNXt7QHIMysTWf7ZA2EWyZVfxwzQ0VWrrM9zFKITCAkfW4RAnRdrA4QimBVBRAR3pfVMN3eXZbGTDi0xr1cmw+a9P5F7/eY7yvwH8LVLQLYfjw4A02SqyD3gZe20CjafpJrUyfGthwPIX5xdeErYehWidlFftUzAsgYxWAoniAhnWFh8PfIXFRXj+19cES2JBntqYmxJlnnrchydsY/CsdSDQp5SuCXtFfmAeBUjh8dnNmOeCrEw5XvJQ9OAk7uxs1rcZxHw/ghTGwft/+VmFPzQEpjGMdOWFgr73JAfAvLH/GgYjJ/s72tKIaYV5STGauKtvoqVDELJU/RhQ2J6TU+cGjyerlKlMYQQ+FdXcB0kZU7JNQ5frS0ey4kckAoFuN2HXgk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RtCNpUKvvGyZ7cFEOq2Gc9TpjQg4wlP/EZuXCcOYZI4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GT9a8lC8h/t9a5ZIBUVRMm8abnQiRYHwJ3KJHbuYX3mkOSU+lvT/2X0O2yVqBqn+wx6lJTRG5j+miVt8ct0bWXip2F2/98l8Yas8UmtmNhJCf1hCwD7ajat+45i2kWbpNj/EAU3fBcjzBXeikm+vvrY44v8BwhPOtrCdOKOqtP/IvSI1goIaKlYBRysiVTuWAeQg05Xh5piaXQjoXyYybD5kM89/70I11KRPvZQL+CDJTVg3KonHKyKSDd1oyIiNtMK38adkzC93KxBGHJymPgS0RZY05pU2C46cKmxzj9bUD7IC6R8MrosUglofCAgAEiVXpF7tL+L9ySy4MOFEYqGMiPwgx3r4pbgiEZ2PCfeYS+hdvCpdt+DBDAUxYSOTrjAofoh5adFVunElZMpMBbr3lshNOSwg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RtEfu6yo8OyDg09I5GZmuimDBhnnZtkIPr70zjcdwK8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5aBxdnHvLpVZAK/Io58D43gFgxNvfw+SaGTX236DZequ8ddBFevo/BIb+f0jyllyQ1qVd2M/g6aukmaBSIcMpLkMu/8WaV7fjBuNPPQAlx4AaEQpGnrFD0I89NxybTcsZHQMdR9R5UnxW6jprnGHMlnDM07IpuE7W+DxEbjKKDVzpWsR+KW2LJ78fZIezg7bJKvv4Z8eIz0wLwQQwoOtdta3XOl69YTbbJxClMLRnYXuNOeAgqgFqmTbHb2GdsVvoJuQ5JVYF/tdLMSuL8yarsMIaJWkEqCzLV1cyzgutKrB9JMHUr9yiiPRtNShQgAzwqALEofJ0sDWoP970G+qQPv2wH7szBbaL1BE7biAjfNywBSlX9GKkav9sbuv/B26aMvsYnlxzx+pKGVuE6dqeEHg1+U7EX3F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Rtig0qv4FicF63UNThHTjBuiDl0Md8stmibosXHiOkY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Da6R/NivH4342SISwylLu+Q5xive1MwHykbW+KP4WX2Lz1QG3+zvnQfNLqbcekLbIxm9Y75+t+aJRaCQl+geEKTT2wiEHfFU9AMKVF4UrkrjYssw3ElMm4Tu4zou+c23ETnbg6g/GnzRcn6f8clWVSe2gFNYRBMXn+3g7Us4Jj8YEVpGdCkfIICwAHkqFLSG4K8/UvvH1Kj+0hGLpgpv020jhdpZJhszVV/D0qhTXPrjveXljIQ7FE2GU/nthDgVHrQgwrR741AtRc/H7k65Uk1Gnki2Djd0BbgoMWFdNyKjyi9fJ6xieksl57x7LqUVukevyDu32soRzRwMLW4XkN41qOKyeCIwogMGeQmgwRZqz0suzmbF1bJAlB9g5hFah5X5F2Hy0AEeeUh1HXf0BFwscC32mwsK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RtnPR5P+F4E4ord5tMgkIBxdd/jdDuS/dwbNarGwj98", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i7pu+l8tz/VgVn8XWQxHJq/ol05emd6ARUbWL6rB9qV/h0ta1XIzHheQz9rPWNqiZWdflVSFizU9WDM+oKndODidHbcjE8fWPPaOG8pZwgC5At1NhPCrSYafgcNYSKsMUkbcjCilhcxHSoz6BEEeQO2zZ4wbJxtwk/NyRJU6CndsSYg/pF65gdKhs+/IZ5byP0vfLY2ILAE6o03uLXaqbY9cLR3hRrjoSyE10fVDmBOF7osL6RY/we94ISEasLLnpEepitKlzDa3po5cnbqG0ehPNPqAP4sANfZ9oHRqn1cnUb/M7ukfkNhLT9ZQtkf/TAj1ermR0fvmxNRYEQukNU74VqO5fzwbSwJdJ3bHyd6ynBtsYkTURbY1uFoc9Ybuj1F20b448rhn3VweJ/xq/Z/AJHsA5Np9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ru/ZkcDjuc4l7SAKfvIYYu0ZkscSaK1/LOGOn4KDjz8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FHk5Vft11cMob0LJK+8XGHNyeqbEpZz+PHJ1Fy/Fs9CYJbwHX4JXcRBdofnwc0tJ7Fc3VIlckFArquHRIIL0sgAV3cWIME/zv7JS43es84FitR001HSLJdp2/+SUr4a76/RLG9i3J08p6XFDgly/eAEf5hmUCPW5SKNkCjGGT68QrLhann2cX4UKx4u2CeIepfriKI4A3gQ7DlBtdQvYD8nn2TIS5qfmSzPUONqAChq4nwafWE+4mmV4BTHfJnWDlOrrPsLYNRQKZkij7bav7eAhOhJBaZ1IapEOSR/G6jo+Sh2uuTWI1Rw3YLu903DMhn7GyqhpnIub8d+86aT2HPxWOQ5ofK8xpyXKxKhDWjY5iSEu4lBEDEt6UcCkSVy304JEXq/LgA0sh1Wv8KQIqQ6iw1DLK9zo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RvgUAWeiPQg/QDBzJwSy65GoUsk6TI0u7dGAjmjPuhI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VH6b5X/pTVaNRNEG+HnhifCXWDLzWDPmxDHEUznXIbm8zpr2tlFPyu3S1yffkiYsqoVvqrqenCylv9cD2ex6Qx6xl2xMCVCHYyZIwZYyglAzQ0Hx8sPdYcFzT74D6NFaFXgut9CHXzgYOCbalH6UFU9U1Bb5gidPc4p5+P4cY+1AGkhOgfpewt9iq9BFADUkJ2KQCen7urKk8qyvrkeLN1tGct94n1utWSILSvQ+n4orSpKCXGZffakvOdplm1twjS6cNO668Nty66yJq5Dyvct81Ry7XJo5fcsNwbb3RLedpTQdSD9AKCcUbmvtRNY+ppXVK4mJv75I5UoIvd3109iJ0rQTGSwfsxHnNIVGbyPkKwBrHV+O0DdXknvGGspfyAZ8Q1GZpvKnps1FhDWbqj4Cs5Y2UTT4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RyveY2Zc37SXKvTFGuHM7qxLbN/Os6SkYyKB8Rs17q0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Anu/ln864f5nKnwVBBdbqUKjF//7OeUWdRkt4eVZ6qFSWSv/C+yJwWsZzQGcILMu+QUR7wrv0oiGZ2plM8uLoU3/tKv+wrZl0lro3MvfBCq4gwveWRQVSIbNWdBeyWH2tn1T4tbVTB9VQk3ZSjZ/xEQMDBYQTJ3SpQfyCPQluAtStYU32XpgK/vWIXujSZmNJA3qCOS7ML2lKRPl3Uum6Rk/IeLLJjorfXlm8rFz2uqSNoraTdOWFjBne6Nzf6rqGafrt5yLdUMlo6BY0h2kuVukZBzRrlvVeOC+srVxPZi7K2nFnlAXLzYCrrv+U+l16Xeet90Cz697ctP8j0BG9XIRieWBOYsnzY+ntm39eQc7ccXC/Ec8DpV0ycZK4dr0UdZROXPEWs6VE8RYwbRT3dpwrdUtPIB6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RzBq8VpsP+e/RcA9EF+elaIsBxcqakINdVlBMWVzo6g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0hYAkkPdhPQpHvCQbljsS2CTYslJnK0CPtdTt3/FIGJzpJ1nWQIO7OQsCy6064UbgNvkWNX+sb83x8xU7XGyeyu7BMC19vxZ/k2MccgABIzt7koJifWSXa94G3pybwwxFWrnO2ydNSrDvjhNRuzkNjeqmuk+Rr6jyQZCQbxCQbWTm0OZBR/AHIGBaGpc8jZaLqg+dL73L4yqax5gVcmRrqEaKSNw1UvRc0PziwrpFVSCwhgd/05oG6yoO/1jgAkISM1yAOfehTu7OvodEDnEEouoQ4DOZYzKsbLYnC/ekW87lM8Z33EH1Bh1XNKx8xlKr3w05/0wWqIbPzf9ZoSYHTcSaowMWU9bJmS0ISsovB7xrlELk6zqkKPWINYxA/g1Uub6ygVxyR+slKtVntSnR9Lcc7bymLbD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "RzJrqwZuCt9geV1GenOII3jXuINXDcflFDE4k80OL8s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B7BlDRgj2AAMDMn1PqyMUI94+VoIA3R/8N+Y7OSAdD4y/+Uv5MHRQzYEyup0/nOfQDp7c2hVcVrcZbkD0f8Upypz/gWV9AyNiEjtUTZFW/cpT6iqnsHRSj2b20ttppQImvlLhcEuJnsGWDS+53IrcuKGE+wbdFyR5ngSj+ij4cgFyix+MymA0k4hYloFSCje9Dk9VYFOxkvIJmoQCjLIFS1G/r2x6kvcnyYzA4w7tD6phANMIucCFj9uUH2uPIAi5uLJ63W+XweWZheyPE7Edsv942HBW5nzVzV8BlqHg9G44B93XAHcwp6s7nY9RmMKd2PoB1lSezl5WmUfbo9FOi6mq81B5BgA02iHhtFbZMXuRkR1VCc5BEyX9M+9zo1qWhGHzYZgiGaMkgPdUe4eMUH8Y2F+/03G", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S/XZhSkzk6e2HRFzb+KnJ0Ehh8tmJQn2a5zsBehW7Eg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "93BcYnUFAadX639JpRHp4B0cw1BZFLG0DnoUqvcfLTjQ2qOqawXLn9TTJE8JRlHZNROWHv/bU4oGks6rtpVUp3S3z9Rf21hByfW88BNFGWZtxTk2QK0pznPMYUba7ACOz7/PV7jl8owQ+/5PrZigsCzMgzKORBhVk4pki+gLzJ88eVv62duXWXsZ9LaKop9ZX2pS/jrhuO/hQL8B72FlDlg3GHYfHu+DV6xA3xrZH4Nd1wGhjbgfQPs2otnF82ZPqsCtbVZO+4w+VeQFVH4cXnp52L7eyhnCGfiqLQ5/tKGsnBBpoZ4uqS90t0LRmRhxqPry3rajq53Ic51LdZ1g12guRjqsOeZ03dzatUvGsG0ZaRsKUKmPPJYVt5yqKTZRSYcjAGOFgvn81/0uQ3X4w5vff0ltky47", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S0B/wXHQO14o5OQgZqYvIadoCbPp6Mv33Xge5ruYoYU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4fEtezidXFpgWq7UW2keA5lzi/SGRFw/VBGJqt9gcbpkEo8oqoKnx0mzLGp+IgGnMHVp0tqPdMoQTtNTq7tEyeBN09aqioStL1DxHeokWTVr5h5SWRaPYwKutjuIMNxNWBk9VxbGCTnIaJ3L3xiGhQUYsvcXJ1NKDWe8umMCm5j0WxxyyqlHq6gt8QHFowJS3p29LiyBIXKRgKGA+ti9ypNSRWphvQ9SYK7QUJEy75bIZkv1I7yy/7CaAWewM/g+BKGTjgJ2jE2aIntLoulG72F/TyU8hsMMWrGheA7OVjsSSLbU/pbRupYnl76eNNZeuUyK7JGzRrE/ZhHw8JPqi8yRVe4kE4hQRYEkB92LBxp/bTnG382Za2LWvzaFyY8UIF0VX7eH+bVFQfnDxzl8pkZpD7lK/1k3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S0LCif9Pboo8xzv42rRmYnlgvHb2zbkN5WSJ4nCqjY4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZVR+YVqZWyP5uVfnBthbT4WxEPpln3UkRbXbrRvS1n6qcgbl6+nX2ylYL90zO1Wy4S9Xh3MiL/3JJL/cksuPa/runhfgsvCtwQNtyUJ49f01JCFR8dI5+iIzpIaE9I15Sj6S2bkYf3XNVhYXnNWygMZyi8VCVNwAI/rVOJM9cHZpUvpQGidfURTOca+tWHatmC+AtALP50Q1DUfJmef25unJ8jFakRI9agJ0DL31OLNYWPouw+wEYSo+P4fykEb+52oxSZXYMwb/KYlC6l1F3cHwOrBWx3TvqtY++qPN3yzTzktqb0KSiHg1e8UjtL2yG9ROvRS5JrOQpg0pLTWf11hG7+tXyb7dyKOAy17piwinPceekPP/F2fDHuSvNwmlzotFDjL42ivrVyOWIrHdQ2Hvrbok0NNZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S16rKBuTFdHMc8fQUAMjkyCp5CpmRsuaYX8t5HUcrgE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8zGdPNtmZ7vwSYtapkFemZaB8dnwV9xdPJ+1ro5GiF7m1/S7WJWCchbx8up2frLgYdnFgfaib46UjQsPEtmWsP51yA3JzKKC8i+VhijJoPTVCX1hqqYNcWc1Z6PU5RRDZeZ/HLqyLnCQ0h5n1mifRh4vnkeoDk6wSw3ErPWR0ltLDjam1WRwWqS7R6G+0jMcmV9HdoMQ+0b4Mtivjn88vv41E/OtXS/+PZ/2enUdPgrcSrkwKkprEhe3JItJKPH4DOkUQwOuutM8kUbyYL4Uvz9O8KARld/P6//BuOTxQxEifRlWLlJbj8j/x+jOhBYvgCbxdk1Uh7jtT28m5NM8cwdSvV5IL2IBr2+fktAVjYTcNcFPIE3VzuJYCb64JXwYhybRENfw6qhfu80bulD+gTYw+mT+54iZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S1LbfTOZGY7HV+TB0xCe4fKRGIfRhxfFUNwv+f88b38", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5cgpU86/8PeGA2z1Lzbe0bH2MAqHqjouRv+b744ZFsqtT9o3K33yy1TqXhB1H358AU+Ogrtf3rUMdDFBtd83t2eSv8ADlzVIkCUukwR+dc+jO2u3dK/jhkZwtyPMolKPLReCbNrDs8s4GdbAM5m9HS2nqpMI1LGyT+tUtVs/Atb0g9KNHeA4Fz7IH8iiaHdgf7SfikjQKDikftJCinMRr01sTGkTCA5U79lXYWZ24s7qgmZfwZZLSoCZRpcCDnWsq485xIstKpLI8mFZAISPH0+NpHhxF9L3J6xXtBeUY33960io0UjQO657Lj0a0V+Bjf6ayJv8MAmwwoXdcxhc8YVFRNrOAhaJP5TljI5V46FpdbG9ykuHqgvob7cjknxVFDxnuGSLVRuOvzVabKMjn+1nw7OzmDen", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S3QlPrbF1m5nhQjS5YPh2/0Z8p1CAdDzQixrZsrEak8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4uqa9G1o/bSQp2c7Mlb1hXU8aabPXnSpIT7b5ZgXjTIMPn9ps9yoz7C3UT9iBawSdNaOp1QNwEzO6Y/mfWdbQCFDow3GuhKkRmiqCf8hvk9S4u6P+u4J7gy/nd/KR1lem8he6WL+pG8+OuPo6hFsJGMxuwB7Mgi65ym2rcdzTps46BWn6tu3bS9rV9QgpzgrLlcwrb2W4ksXMstlr+4Dka+Mcow0YAT8VeLTzXXIm1rTmMZpE1IfXRe+DCex0GIKy3GEZHWeEFCuHeo4Zzt48Z3kdpdV6oATr9gUuteLXxeso03WaVF6lYUWOaFjes2ru6J2n36i3oJp5YseJvV2gs66Vir/oye6AYINwmunKSCCmOObG4yHkn1OlSR2+pA1gctx3NDBGhDDdEnNkvcCqin2dX1fcQiV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S3UPyntOWCl1dJ9YB0cOD0PIXhNgwql2vGcMsadn07Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pFY7lnCDLICVHfPQB1Erbq3hCUFtf37ZHf62vYZHPwjkL+dmZRshKvDATSpHDO5meMpOzgnvN5a1T6Pez3KBB65eF8AIFMk2575O6fGKLXQEn5MgX9zcIJ8UNtyqlI92o9cgt31UvVpgR0Hzce2Ylru65/Zr4aQIc60PM4pXvuqthfe9vP2OgfJUK8El/lXS0pVuwKqxw/mjwkPjBJUns+iNdldBgduEyRUgLDAK89hqb0AGPazxMNES72JjDTYDXNan2+XrC1NVN9nwld+4AWV/uj2x6K8lJVBFGl2buqQzqtGFoPCc/iL81Y7o3YYDGbjw7JLUWgj6qzdtesE+T7rhG/+41T/l7WWOGmIPnCipkifsTGRW+WqiJyuQStqQKXnTGwFowojBoYTKwkmiOADBaqa+BdPA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S5httWcEEwBnklxXv5AH7tCLskcub8dqiIxjdymHW/4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oF2tZNrxUvyeyX2D9C1mR+vAzf00JH3MUx6PjJH72ToEYkdKHJ+vU1bH2b5OhEXNT4fd9z6EzCYl0TiudL+cBj9P3LsDOMECeSxB9acqPXNZ8tUf4pKDzF8PQLVykr1F7t2Q0CxyopjEqoduuPuLJF3AUr54y7iF0vtpr+JLNLATWOHWbElKjaaZTO+URa8A4GTt109Ldw8kINnOa3uKQluN2u7bEAZODTF7BHyQurGz2m12UwmzBxwW4x0zdRKolKiyKQEyhqSaxMLju0Zm50qL9wgmaG5cHqMLtWKL2ZuP351ZBl6BKpJiGlp0WbvLT5wO8TcZJCi2TpbJjAgQu/7DhCXpCyVOQo1hY66pHlToMw3fZHer6E1C19zwnwt+qsbxZhxyX9XEaHQ4CBW8ex4j+xXfDpij", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S7VZB7auwlPuRN9nBmk34xX0gA/MMBZhTpGTnJFOWWM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lBkILervoz6iUw/WZ4etZq1tUj+4nIcwJ2EAlkKvQ25irYSH/0deUDlDpA98dzSYeOPUzF1wozIrLO7jQyXlKCzTmn2iGgDl/iEHwbk/R4PuETFyP4TAYrYUWLBmCPSwkqSGrDiWsvKd30v6gjuatvw2u6oSTLviZbJJb813Jz2SflsLfH6rBxKrFLd1l34a9gSjH1m8KACY3SX+0vqIZ78MKGIsg46hCKO1T3tJX7Dob8zDh+xZuUA4GCTyuRzC3JL/bO5CnDXeXkPnwPYrgnZa+8yXWdWsNniLBqhz7h/MPGygu7/og0NUWtyDnvx0vb+UGSXcdoiuQ3Il4XoI1xKW/gyB/lCfKVmI3YwEvcvD5RKZxKThZPeEB9x9EYZEvnYqnHdXR+JytfBH4WyU73bi4SamIv4t", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S8WS0s1vKMumVigQGNlLSoL2/yfEydCrt9lOQ1J1DgY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q5ITMLN9phLvGe93mVdndvOoo/MJVjwKS5hXt84aUst7J6o06Ikj3n453bCK+i8yOdFGq/d7UizDjMG5vQgyuyJkNYDX96or/AZm9XIkML+qtqmj8HgNhD8cEpUUu7parkrFfzgT/A3AO/+MsH8Ryjnvwob7vW7+JD7f/Dr1JhWYYy7xwH39kp59Zp5l2CmOrOPCy0Z+taj2hRXN5S2tDzxTGlAHdnxXKHNZTe9Ney821YjrG5ma/W0NOQ6ZoZUV6xxIVjopTiiEk0zTPMyXJGaSXwRPxgqhEnmN4QnWD19a5ciHubbWqHVswUnDzCVQCcd0MCp0ixw9MT62ze935n8gQN7zcfsskxwICd6SNBvXbyS6MF5i1z1RMmd7QBWSh+9q/Tv271Qa8bP6CiGA7HRdQNrfGWp8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S9jZP8RXWx/D4BewPTjYAm6LvO+YT0ViG/PRSaKRDZk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l2d0wlO9KrBMhGldfaZ8LqG5phhiYfasSt2k2AYh0dVHOWDOsMOrt4tThrHYtaxpPCiNarWBoQGb97wJKWNDSfw7rBA3h+wfdC4AQBZfKpcOdmkHRaH79HoFTuR+UL57X/HOQUuMJlDeBj6sROgtJ3U/QCnYwgAp9QD5jex/V3exUUu7ovpFaRB1+Z8qGW6XtWKGqKhJk72MzqQ1Myc6WCGrFhlfgGdyMG68ToUz/rBL84ISsvDI8sdHTtpcNHUe53r0hG8PNLHmMlbipN7NQiXms8AqwoMNXxHJtLdRfCVWZ+C6ofi1LAeV+h0IHqWnrD9BhenKVZbFxYuAT+FPF7qOvsQlr/XBEoGczMWn8tfNpboZ0SMrScdOwcLWTTBhs6/ir10yeYIqguh+W0gMXn9Sc9geZa3p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "S9l6k/Bb26X7kiZoo+fxc1PWrvmFz75M4KTQyf2b8xI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eVwgxCSEz24IHTiE5YkgqE7H2KN546v39wYf+9m3o71p3aPyAdZJIGAGzQM2Ms2SK0PvQ4pn1HwKTnHovfn2NNiQObWTAAW+LQKUa+ehZYNNvcKji1KRvvT4ICfPibRmxl1KrlBnJhEBcpHfKJBB2tf1ktOPSY6NehwwbOBZBJBJvdQVL/Zf4vZCT5N6VYig1zkEpwah4M59liu3Rqewm1AWDUO1AEAgEaRjQEghf+pPU8uboNII9l/OxIXQQN2/+5cgXQbKcxM6aHqqWfgurpKjUxbf1z+Phn9WJLyKYk6OQk/5aFkAljupFKG/vr1cHZcSSyrsxvSC2Iaw0dn6pf78xpazX0CwWb99jHfaf0NHAhWn4Onlpd2op8wU1w7XIF9dRR+/Witvf0Cr4egNSf97OHBYfl0x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SA8f/tqpeke2MT0sUGEOjBN/9X78c3fUD9Rk+vh9gv0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sHAl4zzChRgxHpLEyWIA+XPygx6NzVeUIXSjzrhivohmPp6c7ODEQ0zso/hqjkl7jjUnogoREG+vLTXisGbOGp4Kpx+m1Xh0UtUWJoeR9tZcGCE274rpfDFhbwwQGjNeJKiVEE+MDiMJTra4KW3aTk4jdDWkU0pxCKICBkd+WHAHYu111XW6nVk7wk2lZH6TXHDT+KnexeTuepAPw1ueoy0LV/6jF40AuusnGKDqiQoF2SaQUfKuvGFP+Qd/MTi6MoWvJ9hIFYO+S0NuCzgLpvhly+YLf4DdV1cc35/+KLIqlpptI7UHreK5IWyH6YDq+9MZY+Uz50kWkOXqD/uUHlmSKl/n9/z16zeOEBVf/3zxIGoKoh7PIj73/TnN27rxN/hpFP2qlRYy2ebPtjwms5033Lp32hGZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SAmyWn2RgUwrbxuFY+7apg+Zrr5mauT8AWdHh0NIM74", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UMeu0nQ9ttwkgCSeWoji3Zv5chCK90IuiHat7gmIUkjskLR6pRH+CdoJResOEOBB4Xu3E9KpOR6ZbAz2UTowzC2GgNV5wvz18zYh2F4rCTwT4iT+PkOm8hRkWPIjbTXPKtDFVu5Swpci1BjZhmyJZJNwjqibgdy6I4FRzcu0qkJX4L7QICa2Wr6sDYNEuBo5tv3+uApPLu4babw/XHq7Jw3nzqzvX16W0lYlvQXG0mFJyj4kXsB2ZueSwW2xEjFdH/8GGq0iyH2HqwEuUCZo+2l6Xe5qHxf1WwrcDup5h/gVWc/jI+iGYeUcsScIWHLxy+Yhdu0wNCKMLyhIWj9CJv9Z4VHTWRWe7Tl/PlsNfa47ssOVlxQApA282MOMCvL4xgO7SFjFx9qG3bN4BN4bbSEzoBMf536H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SBWkLKRLEBe/Cpe/PVUjN02fPBbJaYVGUIcocZucGc8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0YaqQZiW5edG+6m/wkGWS6cdoM2tv09RGN6e+P62AT+/5D/PLd0PKjE5UmSbd3t4htA1aoIMf4rcl/i6hjV2f63DC3nj8sonNHrn4VIcJQw+yrP8eDkL9JnYVvxrv/Ti3mxULtYcEzOVVOrpVCw4KB2qsI/tWyNth48owqgYhsEe86XMPEWIVzDquyP7f7/4BULmfk5YTFNeNEuneNB/o9PjzYBJITH+SAjliSElR7vZkNMc1O+Q9ScVZl+ZlJq1mXRDMa80RQX8HLqkZoKwvRBEd6A8lFSfogRkaXAyokhq5E1ADbvnF/+jKePsUoAn7esGmUKtXk3qBKAyCAGCtoSdq5NtnGjTIJWhyxsG4ESOfldGPMcY24QJeKRZSdmfOFxBj6x3UzRpgFpkMPPDb1uk9gkvBugL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SBkMmGVz+DiXZN8GxBGHTrZYzqPL1LiQfFx0J6vnxhY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "toB9nJPg88gcGgSAuJBBqi4qb6BlopjZgsQzyv8Q7eh3G7ttglaAi0MwKMwodWa7baNG91e/3LUxP5kR8A+4A7rqpJwr/KCCifI89V4BigrFKeF900A/Zakv6NvyZYNwmDYqikHDni4G0yovaVEUv6YzD3QvfDzaDLjXidSaUUnyf2y0m3AV/bkD7jGLZWTwiQUoq/Im4h6KSu2Se49MVtF1DOgAl2pdiC+/CwzUg7jrUjVM0F7/wXr2RNXzCcWmEG5Hfs/bMnqixe2s/jxHynqMJzQAJ9jgB5YZBtHF/BUBddmdC90YNLlE8s0+f+lxr1ezLMtliqqMcgwrC3zxqtZBc0zMjhsi6yBAO9HcrKZYcyCDqtispMBFljxZxHwO3pEQ0YYDjl+IH0i8rKgLyygo5jPaJYmj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SDfAO49W1xCLZR0a4dw/IxTkJ018h3qqK5Sbm8gfwu4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "g4psJPZS3Z7Nkxo9zshLUJRZ/6T7rHPLaYGp3DN9e9VfbolRKCKfYP9IvUo/XIrSz/k9cJbhzG0NdvydQpFhev3muXy9ECiSfYbkvc0Cni4nLu0LHFwect2uU397VMDlC2rRB0eQIYpchk7ZUeyFCG0Uf9iGNtk8wBoRbj5cGuz8SA1CCfHVGF7R8kip5NDr5La8CSV/LEZp9/St/p2xx8lDvX0S/EyCetBq5bt4shIsDdxamZtqmEI91P8H0ucQcp5fAEwg/lNtjopW6/RtLY7b6+qdU0Uhv0VDknMvCJxgd1tBs8r+pRMkVYgd7s7YFKGgwFuAKcCRlpoMwMq2vRp7RMinrqeDthLk7t1CgQgUTfESwdo+CkNNeLFGawYJWraFb7YIcAvEHlbwtRD/LYNxDf8mZb6n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SDu3/wjP60YWEpMCML/YGU9sfBHDkWnljFJcv/377JI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L0M7HK55+I+mDp8jA1OOCkSicE+bXw1tDhJjYOnDOsQ94Uf9V9Mrgdk57JNWyKqc5I5Au2JAxNblwBpN/pzQrdcsuHoIk8AT+cUmTy1MNZdJXwDL5jjCdMerX2jFKLzBpYwzigXSMJfHG+SSk1Gm++lbF6q01qwfxQmo6RCBSwDNKNFHLjVNhlwyQixG26sM58M/7LkgQEh+3WJfxRweo30tfO9ucfhkgSe419DGEmym7uJ7w97HRtYEuJ1gaDZYlXsUUueyFUUWL35EwPV0kXPzIfD6EVQce/Mb7xwVGT6FkG9sd2GchBGc6mbaN09llXjq3J+4epiHpdn6vMqU/QQ59ZWIJUMGiK1McChZQXsiMmlQmE77jHIFp1XSDfSaCxhsFr1gBJEJvuz/PrGORu+cydK37vxu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SEAJtydLSZfDyOKNbH9vbH2xIMNASFZLGm+bXOk9cBU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e3JwWeL/Dv7L89tN9CuU9ptOn/FUClJAGmyFMg2eevQQOzcPrjpXdmyD4cu32SdtRfmrsI+7OA5y4iTmlF83UPwY4SQgbMQYPVpVPXwqZn+QJYg5XZtijldNq2sL+jkH7f9p8PhwbZQ6rTjMjsHR2RszfzsmYXje7/xxRuQBRzBDkae9dqpWv95Sb0qp1F1jf9/RX2LPIoSokhg4B6ner+/W3fo/Ol7xe0GmESXQ1Zs9EXMPvE6VmNbONAnLb8QGTxITRvU3i/QCYTZ8GhtpL62UpvylvxWq3HuejUVvzyT4K69EMZaWlQiMnqiQjoyG/Dl/D10YsguYiXv5lttqWcAi7Ado/3s71jaI5w+4VQ1JBKB8Nuyf+yn7O3aghaSiT7Xe+YALNRbvVAsEPM9kSl4LrqJMr0XJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SEJ9e7NBTNmsGeqQeR1/aFHQYwrqkmQSOG591JjvWMU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5c/1nHpV/o1zik8LDG9rFF1KWwA/IlBKBosem7MySOgNu3318KT5wx5dUOrMSpwvoSpsnutTvahOlXJ8IDwSsXxGzsyjNvw/lJzFvMpSLe2YN7qMACB1uEeaXYCCIn/U4aHyXZGTkEPw0Ob/OJ3HpbU1v2FCmQNRo6fvzP5bSV94ZwYzdCn2Hoot9WJlqz0tzu6kue7pNsIMHXP6ckRDi46xpG+3F5RcPS1u83bnlbIFwkecFe/vNbPPKjTv+CMeHSDQLwE8S4QSwOkr7CXQ6B+ShZeLSTYlO9KXha6f3POUhxqK2WkdT+MRYFVQaKfrUIxwKbC3HZCUk/oWK25ZmUJxnyOzLj+yi9itq5qL2IchiFrX8sHj+o2qFvMbTHNQIt8qcYjl3uvGnrq/pluk8hgD0mNgYojq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SFOzk5APQtffkYrH1gDGy3QW3yH+CQNW6vATduLC0Ic", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M45YjwBAC4o35JLfXylW8g68EKOSN8UibW3H7ICHPi6FQkHc2SZ3uid3G9Qyr1lyUHao4rHfq13n1+mfRjZenZvHuqRORGLAKB/QxarE+LF66l59iTMlOHzFqx0eQvLcPtL3o20JWp6P/zGQ4Phe10angWfK6MTsDplVvjjqxlOmJspTTSoQZsIrdqHzfVVnDefnvNGIrAlLqATnOMXRI57zrlSRdfRWYm2Bbf92jpinGuPOPH714nRjR7hIhXIl7MZKmX6jngCQQgAt91EZcWMuitdFxt8J27Y07RBP05HfhtmOvwCY5saMj5QcxMsfGiG6y6GzGLupuj/QD3/a8ga4DK8dgjkfNi/f5v+mB8GA8fVvV1YVMpTVZwNwNxVCpgLQ2GyOs1p2XpjH/YhuVXsIhX2yuRyR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SFsHOZcN/cR287wfMt1LPht080O2rbgWCKro5lzvyiQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IpGJ/z3K3OKFAQZGGLjHXiBrH2IojQDGm++m9uZHZOgjmh2ok1IzSjflDo6KpVfOIBULS6CFQrg9Sxn6i4ICuw7I2w6kfMcBUyBpEmTt+bByi8Qda6MyaZxwo1GndCbh1SQ1junziSfBT0d805CYaeJsBDgn4tyySal2D3xJ9OdTLWnnHWvw0lCBTUMBWaQOth+Bu0O/nY3fSp7tLz3lH5LRrzT2d4jI0fB5o0aIblweHvo3/rFGBIIEP4I8Hj89gQhitxmESy3ruWwfTli2DhS/zsfgjJqsjOjIVsYW94OcKkzqvnGO24qrFv31wJdTSJnkyL4G7YY81hnCZcznPqxeEbJPkSPjsfR67QHw8AuKIil8noceon6m0N68kPBkaWoTtObi6hKhqnEIn/UwmPbDxf40QSUa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SHtipBdk7/kYv/HsZdo8lPvZXiDKwUmeqSlweCFh708", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T1eNlIoJiYrDErn2NE5pRlmN3rPWF+qAIhwmBKc1WtiBbuQ9hIAMj4qhX4vefsbHJ+0ow1u/5h8mZMPFShhPKgkKl2PYuTVQ3g2w5ihvPbBhxbhr7cwm1tS3Mx6Ccdcdg/elRwp5RUmX7cvmFjjaMlqk6ECrdnqxuuivfUthfSl8c2bBNTX3IVlAN7BRRUP3hQ2PCxl+sYN1ebgT3TvaXYqzfFQpaQCJ77+WNzHN3AqWojs6rIVLE1CE+Px4IOLQ3LrLK4XXgWWFDwbS7Qa5+S2HyZRqd37ap2KAbJAJz3SV510vRHbUP+9EwqwtJozJT9QBrtzXE9zv90ho1Py2fJFTDBJUIIDEE25RWxF+cuWsHqkfZoLL0I6llv3Yab38UeR0ZV9rs1Ijg4xx+y4Vni8Vg1s7rpZe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SIbsb0JNVBXgGIElxHND3pEwNm0WJhwGs86VPx+S8FM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JhNnYZVygsZn7wIH5QgJq8gDyaIR8kTNNAW5+b2vvD56A36XK+Ks2nnCfeQLUuiINb8R4/jn+Pju5/FtBI5lGOfW23OBu0ATQciGgw+zQXcyVQqS0rCMSq+ffJ+NsOx35l46H6xjWktZTXe/AQCAb/dQwPxITmanElaLTyrZ4Au0dl6s/8CqObvU9oXnf1sjDp+xv62XU+ev6f7xqDyonqu8tg+9dnY9zHqQtIvBAM58y8uxFFbEiO6mplPN6DSw4LOF8bmrB1ss2DIS0V0p1hRWk14XnHkoC1mDX+7KTnOE2rHYYtHX+kfGynCP+94PTSxxxDbmRRdWjepa1zUZcRw2Qe4IsFQ2+Tkv36rWaMceCL+BTyoFZ1HKaulX6Mv/1/fcMkpztgBwd8tyEJVpPpDdkor/BNEb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SJDzYOrH6z6kycd6y/jX1kTeweTMtghekkix41Geu78", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "moydjhJbOg4jrn8V+4QMicYbArvfUDdlQ1G9yvOrsJTEhrO2iZ60iVipTfzma2jlgSczr2I2LqriFfI9Ohza7IC/aIwxq5q9lUzFl06Q2LndibmIDRsFSe3/dybgC8oAFERcxALzIlbq7fhmMTtrufHwe46+yXRhWrX+vIqz8aDnkJ3iX3EBmczGhUjcZD34A9+NSQaBzYcBIhKhGNqurzQZQ48phISmaXhVlHNsLxUYB3jqst3L0n/5h0nD40xk5YwhzdQI3SRvS5Vk/ya06M9yucBV9uVFmsB1YHIyO0RTsferv7UvDdRTl3FzvTgkjnoKhuBbf3qFvvnm0oJAJjl3BHCvwqOTnHx7p6bnq/P07xao+b/SG1tyN3MxIcPMyvTqnjio7lM5iKJIv6Vd3fwkUkAp8msG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SK8peQwUYeea0H9ogIjwNswbcE9PNDUib13XW0IwwE8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dDXUYpZ/FTsJc6kcWappHTz4ZW5xu7qyo5KU8IdxEw4SqwXF6TpCPy/xuiyifhfcxHG+JA+qR+IAkWpt9WD1PdFAWKoEtMNZ57HwS8T9WVQ/95lDrfsVL0VuInpBEEvucEr6xstx3n0KbR49RqEXv8wMCtV55hqvau3yVgbJ15uqbf6f7YJu33PtAAfTuEGsMqvqCYSCySKTyrkb2wiE1EPueoM8haAD8qhRkz8lN62TeVMvA7+Kr97M+QmAU2vcG1rblhrwmGhQiPyuKH+p6Y+gj+/R69lc7IJg/4ObNhRn6pIXPcxmcrn9A2sDmKUg63ujQmTr6/ThsDCpnr8850+Wl2MCKjp6B+jhY1Dkaaypb526mCkHX4AU6dB1kYq8aEiaut9XwN/4wGNIAywQPMAHbBbsvdY7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SKUMtt8Vfxs+7zQj616wFfTUFGvSpwuDfr+VvULBzlo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B3lIc+sBSU/4YHiQXnmWf0oQJfy8rA840MbOsh/ZTZ27wfzZbXNIyedmFtSmI0Ze0sus+K6Nex7CWeCELtHDzGsXumjnlGOjQPJzr481Jz0Nt7AembK98Z5MeKBlTdslFR/aVTsG9UuuIZjDOzzI3rJKkhgTs355ZxJvdBPyeQnm5ah0PRL/7SFACTqVcSLETHpMWP8QUc2qM8a7UAzr8eszafKSkgOOofCzY1HtKs8ncPlW1Ts+roYhLPlToHwk/He+Uap4mU841lSeF9YoJpNhyU2X/kK3hgPAe0LAz9yhlvc9Ud5gG12f2yW4C4WxyP5BBmc/LKD0e5OYVKLjd93kn7V8rdEGL7e3ftoK0lX8lnohU8ZH1lOPB2/148gADNXSA9Ua+XHPJTaMcs5hcEaqyTyphj5U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SKXZ60Mg19pksZLtTOa0BVfuxXOdCy10Qoj6Vpx0kUI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W5q2F+Xf92yT7HWFZSASTFf991mkS0l9HMs+ecDsKZK6IVTxdX7nTQvQX7UPKM5qGp0iwoeM66VujfAHOFf3Twtkkl2j7LuyX2bhnNbkXDVMe+ZJlVO8LMpf2nAjFws93YuZEadoQlHtr7TUECR7jzWlJZaUnIWb3rlcGRYFiy94kMA9z/nPr7K4uQ9ikRCTFn1OO9ASQYzds4DxSg516RO3oTpC2R2rnner+8pG8MFfOwXybjXquAE6C85fc5HQ2LPOGzNtpQuNQez2u4hc3dgoaSfFB5FmuMiX3zHdhuN64ysAjQq3ftUmt1tAFDeKqwmVar6grlcK0doAHrAuuiD8SlyCzH/1pc+ct9U3qtAasZOE2/T5QEEJshlxCLAmcJuMeTrc7odc5awXMR+utzRWjTcAW5lU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SL0tWjivt7Eq7r5bdZ6I6tMwkbNYBwzssOM5UTWDtMg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eGtpOgHRtT9CLO61P4fgBHGQ7pIx8ESxWyXCeSri+4oFovsUOZOZQZeqBZtUu/rMcJLrFO+DXho39NgSQIJLilmJ00ucNEd1cabf3a4elh2uW5li2e9AMgOmWX6pb1SidWTttT92iHwq/VlHwGXBx0ctFxticLG3dxrYRyydvIKM9w/xxOVfdRS57blk9dXWTij8ThpncFv3buau9fHO60gaV66LRc49+uuqBWhxWq4doxh5jEmIApVpRPlrRQRsl0R+V3xQdbDlWJHaoj5w+fMQ+lbKQBNKxFG3cftSTl307yQiQbIZ7n9ifiy6jy0dbu+pHszRg/d8pvQE8ficCftJFqiKYrOxuYx5qPInL88g8cJGQbhioAE98noCaYCRTC6EAL9/k+Rqq4fsAcx2AgSjaWKpLw7V", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SL10s+JlzDp8FQ+PemGDXRCmNJFAyUHqc40AykbM0BU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SOV4NH/4U2f/JJ9tpjk9pk3c6UAmILL+BFZ14j3MF0pQHLbanvURju+LY0HXXS6TJrLSDSO+RpanoIhXBVyrTLQFzW+FaIwLp++GzmKw3mB9RrieAd6g1eu+0uguCHqUWHlyFdv+FFYq7z/Qy12baEKdQ5j+J8tDxgL/xc3Bxh/yMeS/E7ya63muhI8/uQxqhwHpvZ5LSNMCDohmRUPo0RDwY+7E3kRnjhgtcWRBQFOunZ9IlAPPogfTsNzy7MgmZQ15qV8yZhv1blPU0YrvpOyBnQ0qMUq5q0t0TkTteYiNSqivKF+WL/RatkoPJJXLDN6cfZkxkhHFme/YyfHMxYbHQhQ3IK1tPPFn6x88TLRdh2SIQcEhxWALIeo9mS9oEY+ukq6UE1C55q6CXvtnluah0TxnlMQA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SLEz9n9vOJsD5fzQacFWzrUwaaqKJQsmsVW4HezaVwc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B0eOnsBJu5qttylkmShutIzvQS5PpGjBSdaYD+OrGag5irgUYDCnNyz4L9wcl8zda1Gjl5nE81H1nnEbzV9e4/7wga9YbZk4AWmWJFJVIzFtSpWHXgG5P9/3z/IH0RMVH+s4o9Pj4b7rMI0RcaGFT7l3WjCzvpXd1OZFff1Q2emAOXADykEcyhh7zlMaL2lKmFfmPucY5vZJpwgXgYiDH5e4WwLOW/7VC59ORUj3Tgw4DBNvoJzxr9Se9gNyHDhJmoEq1diXDaCMrVIdQ8V49Y0nFM4RGGCQBPSYH/Xu2jUsN9XCNmUeV/kqSdod9BtjkL35xF7E5NcYhT/BSNb5s81lfSSIrD6iRuBgahSh5J26UAjbeDApNPhGxh77M5si6mGxe/62MfycJXCnpFcX3dusAd/83aVG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SLPe7NQLYvt6EPCp5J5W5YUnhS3v1T03NIx/5foDbkg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KWbvtkkDHcQ8xV0ZTgdeBjUmnYAWru14CR5n776YW+3kHOkvlppbXmyusMspX177elPKF5vzpl/MnMfE0G9PyFRjr7K+RpEyAIjbgL/m5dwUffjZHMmr+4L19VSeHJrLTc+Ucgschd0fV12O2UNYNKwR8K4vblsS770W8Tl1iWJqffJ4be6wK1Uv4+m1XJD8FKWtfhxO0n/US4RP2p1/d1/kP/P4dcZAQGQAnQGceDBak6bzxiZznfxbZVvdB3GdGfQzaX5+y1hquoBDquVPg8lsPSlJKPVNOVMfSVTZx7XgCbpMHm975/dFEFr3huYhNI+dmsrelDQ5QUp9f05oW8GBAkkSHpy36S6O7eBTbdICGlDU2Wx0OeeBjav2W3/QFmtE3XNvcyhg8r8uXrwcOqcGIRe8ogXP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SLlN4B3oLGNL8GODUrImHjiWgRVPxm3xALXI8msOvbY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VnChrH9es99wSDHqfiX9yJlxj7/Y/ijl/R0kefHR+/pr5klOgvBPtge3vzFKrL88sMcFf1h28GUEFoWEhC93meL/VMPMW51/JQ4nAdY5piXWuUE+WAs+H7tcTGfqenNeNTbkEgxzqU11N27/V9rGCLrNx9yYsfgVWg6Y09Kw6+vvsJ8KcVZj+cF64orf5zR3PMTjMoHU9epDls+OMeZ9PIsCALYIg3QevOrrsUxMxGhrGGLhGqWFZe604eNdnGR8umghpb4rOfRTVxpd4y3SH46bENgGPJqHKBvTg9CwpEDwDzBMtYpjuyChCtOy5d94pyzHg9LVKlhwF7sHi3EbAOyoeguwQ2lgZ9lR4H07G13WTUNIcnJmwbUJbYabc1WTgbzGbf1px8ANOaRGIb/Lud0qpc6RA5Lt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SNtohs/I3CcoFXfZEKev8TJhJvbiOpaT/WmQMZw667c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YVJhJd6pBdbbapZEjb9IAik1QGWYYcCOBHR2x00XCi3wwB+XD4cQX+KS377P+nf3gR9tZ4BYOixrfGfrNo0wvBacaKFD82aHdCxJKi22CBP38psRelZZbPiLhmz/F5UyXM+QTEGve7ogyYfZLzA28vW+N4MeC0OOTS8hxBylYnIa7zZ1jfOtZC/nQTLQ09x5oEX+kM9BLqjRjSqIE657tFXrAYTFRTcse9Z1d/jpdcHORfftrx3dKjcPvmqMKMQw1sM9fl8nMO6+viHH2AHsW8z2ZvTOi6LAbz+H9h3rmrJEFKV0opiBjSKh380tE3qDAnOJ0E05TlA/on2SZFH3AqMvJtRYmHquX80xCTPKEAefxbG0R4j7ncfjrKYKHeiVLOo8RU/ikxc1LstWTNHZT/3DuqEFxms1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SOBDLCAjBthK2DrkdWJpofMn9SDhFWvon0hfqBjFVZ8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V6lbukvrnLKHNOBkKKzljnc2aR9gRtZljwc9A1zSTGIkwG5wAcwp88JkJWYy/cAFmkvlynqKDsflO6MvLX2rxbzFmwi4pSR3bmVbmLRZ0SsCgoV6J2HK/McexATLD70lTSn1vlCIqj7A9qWz7j+Z45SxXOddxKZ4zMJYomvGfNDfZf2BrYd1ndlzagpHeh+gFmlK3iAm3NDKrQaOVKRdVgaRVmvrH7Qm2fF8srVqKU0aeGOL2sPnBbVVf5nWURR5NrUqkqso76Caiw5mbaZ2KZ09wfAo7IVPgbxKRuXAoUYd3ickE5tCWH3xNDzYpCIyoBsY21pxqq2Jn9eHrnVZoB8eH5fiJWYmM+o2aE5UqekSFSm1O6sJiy1ZHJ6GxLmv2P10kEiAEFXVYrjk35b0eezdXfRDOOY+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SORlo2k0QVNV64ZQooph99r67sDnewj5OctkBFPVTdM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i2SFj99f0CwHKAssMHBzUxqZmM6IRFO2lFnvlpELwZxG/gd/9pA3NS13UotSmRB0S1IN2mIYeHDZZk9k4CVrs+/xRcg+MWK0iJ90Fey7gQr3/fAeO7RKLLXBw5aMsg+eAG8prrj/GYYl1w/7uP3TWtga5FQvZGtrjjY+o9rBEM1ern8pPANkmRQtneA4PwXVdZMYr9CV9nomPPwXw6EGOD+yZUKHIugXW1jcHCbqFRLKTgshIr82jpCgJI1+EedWbxPGN1iT+mDTdtZIbHfSOoYrE5119hPASVdMT1e5tyLqWEKi6+7dFFsptnJZ9Ts1SiPWk1az7daMmGPAxpFU8hhw9mkeu2xIGQKwiz2e11H9QymHNl945JmIU9MrnLCBUHcW+Q5HbdSpM6eeIZ9Rxe/zLHefFnrF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SOqqVNnsdRAUznSyfuFoLUQpJ4mYv2rZ1z6XaxJ0Xag", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9XzDPxgp4XQ4Ws7OBiV5mPs15mwsegfKfzouA7D1gpXuHHwzgIaAnZzaIp/wTrwfzt/vvusaOeTqdRhKZmN1QGV2KBsKfQ+YJIv8qjrFqsvdKiaBhIFCcZj0eG7ZQomFjE2PCRJ5sXGWJ3oru9mwn+PP15EuRWA/j/AKQcPBVc8MnJVtyLH3W8LtsrQUhr3c6VInCl31er+snSkVjWWzdcormiDDhY71TmMk2z7wB3pqDafwsyE6T8q2ellRzs/kjpk8NmbJJcD0c+kJ/PrSvWbGXCGjSBmr6HzG0aG6HLBMwbwJlghZCkEqZBxpn4/FTi6FEpIcjRwP/4IhCsvYvIhN6R4VEYu2OZVh/DCiOm+7Tn1XDLoUb5rIlqWNWFhWZcumciwkk7bASy8uEAu+TJ39GafkPKgF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SPGXBMJcR16vI5sIJ8UQwAlTnZwDLo66ZKv9RiP9HyY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JtLJ/G1t9hQ5h2dOI+JSSkBvd4861M05OYi3pk6hLppN32+j+lSSTOX0Ia7hoRjfaOLKnchYpK9NoVX9Qp8+IsV5wgZ9JuBz6o43bIiyX1fI1WbnO8AtX7cI6DnCtu+LZvALhmTY4vn3ovjCGJczkE8lZ+1CxMW5eNKmwfGhixwZCMRKjdqei/mp/PJ5ZI88aH9pmFYQidkd7azHRkrgpNeUPY6rARCKakkT9Fbq0mEdFG85FsSxBIO9O7xd+Vbjyf1cohA9WAFiYRRhtIrVk1RxRGfKnxkp1zEEwHRTS/Pn+SpgoSlJGY320BUDJV/quzyUG7hRgW/Gk0VbJzGc04PQuFyvUDlV6sUFpFwRfKPe1GkDMGYBZs9I9nDwGHCsYAWgdaKGKeEE6uzWbIDLlvXmuw/uIDj1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SQkUwk7DbzkeL7XiMMqscC2sk4czqMjY1BNsKNmwc9w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nG0Eho/SAN1G4gTrArdjBY/mnSBZ8vePaY+W0IKnziIxXAWpDhrGv5IWbquV3fXZV1mnU+4Ntz6WtyyDuKoUddYTjg89BLDivmgq2CPu3ZI4+1XGh88cwTTzx8L6u38/fX2yfOAAziDxogjX/tAhLnbDO8RKbmDhLh8Js+SfVNKhToZxIPjOw+UzSzuIU85LoM3y2SN4/T38Q86ngSb9J+pgbe+eQ1wz6SSwQxJgWaZGQkd+khWHxnZJWwXXAjrHG05bA334WNjGsl17XHfUg4CoSjDBCwS4H0+LfAbsqZMGudfjn9seiqmsMoKUCm7mJ5k3scEkR6SjgzyACYrz9Ca1GScVYByv7ipT+O8h/pf3J/d+Oqo9oL2UfxFk3sOEylwtmaPb7Ct2r/onA7JZtAwHZrRDD7ks", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SRCw5nj/dOOfUU4TXy86GXrVzZBhLcuB1zW5HZ2s+NM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VcBGqo/nSP6o6y8k9+9CmRK1alK1P+rf2G8wrN2IgxQak9QDTtRfX8oYs5awdmWoPlYFD+3sDLueEhulP1oKwl+DetOVHhUObyzXTb+59LlbI0IuXaSXv0lcwLNeYTUiC65Je8aWsdR6ejlEm/hbsz6rjxu2dJWxVlw8pmKg/VfjOUV3emXPhuONxbcSKNAJtJZ5pqYh2la3czItYD80GURv7VlnXrKXekRaWkSfUARDrdLaECX6RDdO1/MQvJz7qc+8K2BA/v3ZdeijCstLd46u+L8mx153H47zTzbSehCPKdBu7eXji1JWmXDg/3OG8f6cAu5irAImMtdAU0MHDPy/rDoEatsD2Fiihy/ErxmkofG8Wi4o2duL1/L9nBAKDeHDMTlqA+8LNAngZV3m8wOyAXHDE03i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SRXHVNF0Q144WxoXRUTwRjlOI8xPa1bbIr3FVqeN5tY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eV5EvG+xpGj0zACLZ6v44g7JU+y/8dxniyfo3y5hPF9OTGwwPMWSip61d9RBJFSzIaKQuMA08h/1Y8/YCDt1BEEwERRyRF0Sm5aVG5/GMrE8K4tSIFlEq97M77fz4/Noy9tF+xV6sGiwhTNL/Ko8q/mzzfMGo2QjOpfRyiovONkTDJ9O7ujSXyaWa6uOVhWO4Ldtgi6TImWSAloZpCDMkt25XsVY558QG+40cL4H6spH7nhhJJspuUxk+I2xQ9IyDLhj3u/z9hVb/YuY/riEWEggZcdo8SgyhwxF5z71d3vdITeiUaBwnDf0Wg7vFO731WFd+BMAg5upBq7wuPDdDEvPVDKaaArKDieOVNqWD1YIOrXhO3Qpn+6zJTYVkKyy6Gv3iSZeIQxQvRyPJGA+1UiT17ZbsjTx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SS8+KMTU5xHveBL/pPO5heWD1MIbrxCTVhqOCPi6CsM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UBAwquOatDCMslpqkvcPFk+VGNoESCCZujdTCFVjSqaTzCgxraBcsjKMylbVMtRfjCvVznZeR+/dfvXU5X03e7CeIVc3UTXFeatB7yT68HKHuQW3xo94rhFQ7DHK8H3cZof2fOUfbWqykPdFnzvkfP5pKFvKD0guXIbyX0GrWuEGdoHgkge9SIN+u9uIYzs8S2u+ixn3tb+MxeYhLEMSUDMZE+q66Bp9gukxodLdRh4GxHZGf93jh3BnWqEi2smaTjUg1xL5AVJGH5aqkzhZO67zXHPd/5nI+PQZA+6cy6FcQDt7ZlDHSt6g26MA3ICtB4mJuSpNNhBOgmzcIUqY3259be4whhLigkxUv/AOyzATU6zQxY5EbnWq2tZ0pntUapw03nAJnc55zP1V0dzHCQnKKwT/PU2g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SSUP3a8D1x087ED4iuCfMHD6qsR/wD0d2UxL0kuZdG4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WmvIdzOr1TaVLbr1KeV0qE1heJC/DSIgr/jP1YUUsZk9JwrYqQrLDU6v0SA2USiPQ4JjKq4DZDgkmWVh5562hxCnPBuKcqZh+/GaNRzpZgAhbwh1o2wBTvXPPxTToJ2WoAuLnDQ3jerv/lQNUvQqUettZ6K3VlkRA/mnyp0R6wi4oCK6arJPv50Qv94hAew0E0TVaaCQd84FflO9qOimdSVarMQP8O52O/t6q34I5LpDcGG87f6HMQeZv+uoCaQQIFFpKIk+BdFOuCV+Ln7VE2G3T+qN6dme3YqsQ7OI3cfFxpVyFXDtLDgveXM+c9A9N0WAwzHwafIr4cm5qE43EgpQ12JURbnliI4qDzlOjD3+LcgoAmapdU2VCXLDqZ8nUx8PtZUiW5nz+gIh6Mmt8Z48ChBaJd8N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "STm5BsyA/DJ/G7JuhTZD4azwIQ1pTbpmG82OXno3oII", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e8+mdNStl8vtRzVMUHEghS2I7TaPb1KEC7V2hbUw59nI+czrhiGqaQhx/rMfcIbYDXIqgKW1MIBWOgp5TPOGYlHtHbJaW3/Dwq/3Cd63U6DMOP1pjn3h2DAh+XU7qQEQaTMiURXtR/Qx+jLvxr5mWga1vGL5zR/0XGfrATi/KJ8W/eEe3CzHjH5HhoY0lIU9zIbZ3U4VJYT8at1VtxJqD9KBjPUihEOXjJ2GLQvIsfw2iJ+/8nPJ49ux6A+QpmP2ml4/GO/voxakQsB5bKl3j8bxDfBHK2Y8fWiTDwP7ewM74FR5U5US9Bt+TYCoO4y11FkRdo9U/D2XqktMSGuzwEtAe/p8xD/Z2jYc4EOLfRIPaH+Ry7xN78czL8yUqAC1I0wvQV2aqrNL8qqYKbtEO17TbTB7uFpC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "STzRs4BtUvcGjZ34KDNz/9kzHYOC0ssqaEkFxlXEDbc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WICc0aAww1gX/cqeopOh8DLtppZ06pqsqRWsoRYewPYhG6QwgaM+K+aJdB9rL+UUM9ZjII7KXFUTd7qbk37qzsYAtgsnF6XzFxaNcl1m+DyeZjDdbJbR239YmcWm4sw+t1GJrsW+JUQfUHlT2fmaeT1g6tusPbFejahoqOm/L4d3O4wOU/ifLmkiZ/J9uNm2GvU/KXMGoAUAH69vfm6cZKKhGXdrMO7ipPq5riTsGPqk/g03kRA0M2RtrfC7xrwbbhAZG5YEEhvH1aB0+fq9UijlLqTkboX1BHmALWM5NLKqvw7F2kMftzoAlHmuMAEB1VRo60HhM/5BnAAVvuAU6kkF2UnezEg1yzRZRko7Ill8Lkhwmji7Yjyq36gfdDweBtMqt8V6Ov+t71tPeJ0NUD0/8mfgIqlE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SUNM/v6htKBH+JkPpqkQh2HMDjPXREDJbn10BVWM8D4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "baYil0M4rpbvjMVHpd4DitoqG6AEnzl0pv/d+/65yyajms9R6N/K911AOJbC8KnwXJZH9ZQd50Oj3oHv6mLv5xIXIrSp7eI7c1ajb5BKKjqNiOIbWz5gluUD4UoN2isNInmoaraut4rjP26rSkvcCExKXJ+bwEfd6LvC6CLiCHzcxpRMPeerm/JlCyLI/MaLK16zYRAWKRjD5tTkahavLwKmm4SYbYgph5UoJcT11pDHebFno80EiQGXx3sFOt0yqcVn8zQ1T/jytvkqQZlTqQrvSl5dhDa3QnA1kD1Qz4wCD5nyooqJYoAuTsiDhN323gwwW6Yg1yghmK7JnfX5pE/RoP2hxikDDSZjupAy7NksyR5iGy7aqHlmpXLewloDaZXWqa8TD9J37HjKmkfsPhvynTC/gyJa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SUkFtyYc/FyA38yRwcpV+ynIZZuKWbSnqlehW0rrqdw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IfxXKrJ1PRnWB6Q//OV4R9csSb/Ft+bhSrCxRpWaXDP6beryu/6SQCMPr1eih4KZb++Rnr3Y8IOu6U2W/AsxwwItZHJvu3Ybd333wAiQrKwl92FXag7rMYZ4P5dS5zofkVwfEEgFtd5ZIwWcSZGZfd0lRWK3OAOj+q1O5MYidatPl2VIfTqZVFpOLkvxExvp+y+TgqOjtKy8L6KpSvvrDLX9KAl380he/M11f9/koiZkp96qQtW0EQcodvCsiCM4KjtaX26txJIQsF352MysEbWynUtPYDTgd5wm8uXEtCvNcdiRMrB1AQxJ8S1OyNSKYamJTfG9yf7PJGvVtc9qYt462aAPaIn6LKRvFEIr85UI5+Fn7RSoUxpl7N7qwMijIPCVAUo4Ta2IFir6Ah3NE+/rkhddjerf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SV1haqzj7jx1pIF0YL0CAYaU2QJbWhr1B41/IP0BDy4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YEAN72RY0Ez32Z6Xlk1HyA2vd6zJHdR/Md1HNFZIDX3Vmxgj6ByxTcVzR9YkXbTh4ehTKOlJJ8RQVDHO8SH/jdmi8iAyIHroIzll20ioUOSOByFpse+KzlZUwRHYzt43SVu5rf9LKTyQCggNkFZoxRA3OqnYqG16OL2GYJMFZA2xtSjVS7DkMT0XV7qRcsL8a+XANDOGCp1V90Z06PEq+BHDE6t7mUg7gz0aaxkWHZV+6I612xSes460PD8eu9MSGQzAWbZZj7i/K24zENKHVKoOrw56aWzKCaW+D3VSCR8lei6WTAk1DNWRJLuk9uuwKA5TtFh/3c3rfscPAYI+ZGY+ok+vAfAzFYaE1AMVviHoJxdeTHt6h3A5Ov5RtnBEwZYH5V/4iqMXQDZYTQAFYQ+n8uM4M55p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SVIdxpP/rCp8KKMUW5cL3CSoR6QKWoUXtkxeGVpAC+0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LSSOCxeXl/riM9F77tLLW9qUIE7oKEwCY3QnjjA0JGyq+AbHQf4C0Fh7KmnAtefgE124f+VSz+mcvl+RQKeqS8r+k9nbsjoI/RGiBfhsobriDLreO+w4y+MFpKtzJjnqjrr6XkM49oNKid4ZDELl0z62e+aPIWD2OAaXsl3khxTaZjZf/Uw75TRPmCeuk7PTiqGcWh5ApxGn6+Z/owVlT79+GLrpc8pHi4vhP7MO/sUonGOMqwHiYVNPhRKJtX0cZqgGRQ+6tr/ZiT2RDoTf+lhAE76X+a8/lQb6VaUP1z9/5KGakHxLJAnz4EbygSzehorHrrm1Nf5NSacEZD19M089FQXJvzsmInSWfJiWg2lUIR/3zGn+ksgCi5Xy+s+nW1/6G+oNJR+W1At20KDQy8igSXc3JhHP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SVMMn6fjmbZfDJ7Jv+JxmVR5zSHw4FtrD/4rpT/GkEw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Zbi1JRJP4lDmXEKTsMVEBTzx3LUSalgIel3V9fzdODXszQFtmtcuOztBR402R3LyQJzpIbPfRtaWCPo9bHCGYXH90syfdxfjFxZYb7rN75HUg5ebXGZGs5SSZHRifo0FzZkugJr8jUP3VPUwEkdDCbCh0yAxPQa4oPbMYnuklMzRxb+KYXx9dnT9eQDqfvOjiQfLPJwMrSvF7sSOcpZkeHsgetAgaM0nGpxwbZX9xTFjQvLLm2qRiTLo7R1URcB6AH4J6Xg8NWUjxE1idtGGiHWlwq9sHAwt9fIodMwvYaoHdTqgJxN00uQqJT2p03NWTwC5tv0Af8uv7oiNtY1GyKire3H42fQerueipNuwu2affhjA082yxV7RcHzL7ihz/Kk3zTx03P3QYbiMRkAxQj01vn1G09mj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SVnluqR13s+v0XhMoys1sjwVvOhx56b0RhGr3UUByoU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6gHqHli2lTiAlW2Gi+fSuJ1d03Bcl0C8JIUXTVnziTJuBSG6kzUgNOyNiefWzDOgqVaEjQsoL4bp2jl6JozgXDgmZCTg5jA5iRYIIWnjnjG2Y7Cvq69oyFx7ahQxgJXoRgPP/keB41Zvh/WW3Gmm/hW4E99rarqxVeLAUV9/4+hjWViNFY60HzIoY49JJ7Hl6kl7FJLGGh8paTOnhyTXy6mCkkD18EiMbm8NbrUM+juVe/qeHcV0cZiB0GJBYPNKtHMg4fRIrnKLhN2GQ5pLeUKrtIxON1rTAUdJFlVgbNEeT9SDtolB3zMR+Im25yuW5jEdMcd4QXROrEHgcGrTNQP8U4I0aitA9LqmuHLZ2XQlQxNGkZfXgZuWDjGYu7FXwWcFk9Ma/ebNNNnYmztKJRore+mt3oZ9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SVrsONiJ2e0/io980CDKCgDW1MkCwe/4WQf01p1fE5A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8XKo4iEWxewdg808ar5BSY9/kwfTZVYmE/Bbyfc2Y7MHVy2tnqVuNsBg7NgsOxPNPbVFPmUOBcIBLsN9+B/YKqffWw9EbXE5JCtkcUFJTardFazJc4tx8hm7F2iRf9hwLGYD4GQnZHjO4y+016dLmctkOdBz9GPeMD8d/lBK24L5Hc1h5Rej/z4i21euHclG9ol5iv0/ZNteKD2sgA11lqjf0iv6N49IngszzqJrpd2EBiC17KtuLJc0aNHDtFwzUXv0gvTKKzI6co9CREASp+yuAULrqxb8a6tuNmXqBlY4YYpM9N2y4WN+oUPuUKWnEkPBDfWM8mC157e06qCRRpBIZIxmFW0jFOzamGbC/S6xYkTpILIZZ2i95IwqMebUQnu+RFwk7lyxNWXhx91jUf0PbQWA5H1G", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SW9cFF+I3cBWF4g4GbJNyLD5rj6Jozg+SQkFfKJ1PvA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "H2awRA1hw/ZAGhAlTm7n4mETKW2KE0UAFlUZ3HDnRl8o0Up1oivpGgYUMn0KNzMNxR4f/yYNULvo51m6p5M2dWX8r7pomLPQjxCjqBJLD15yRGRI35jNidJeaxd0oVhfpymsJNoV1DTjAC2wSTVY4Nkda6QDIA8nZb3u1zWzbZOBsDmReVcRt/1WqQa30BwEUDVaFhpMhkjtBU8omR1Ndy0NFPO84u1tMM7wcIoqeIJwCSHoSk810nANm158+oxPjpN1X3yjUuYvnl1ZmhIkHFZPG4H7dzlK3tspyl38mpwgwvSb8oJaXsJDIq2rVKooJ8y+Gkqtz9TwSyRJLHc2NcqdOO7lMNpjPMgfP2yMJevyOUBFeJK0V+I7JZ11bA982BqwrU8UwQyNu5/9ChMu+5L4XXqQ4Baz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SWHtcM6Fw2ngGOp/Flm1G3kJBQWxo0DhMkJvqtjrEEA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2o11RkneBb2cvy+CIaLM55rv1T3Lfur+ckpg8Jy8paUxzl2jy9HZ03A6ez66o/H30nIO9zhEd26HPhduD+nb5WdX1yWcjtFRWBhHoIF+plhM/E/hvXk+lRUSAbzDW1bzxC1A9hvzIg+G7hQVqfjF+cdGS4mo+c34CtjQ8nz/6hf0Ma53EIuLVX2A5cxZ9EUDLsAMTD1QrsLIAiRwgJ8dQsRSc872AirvSYPxfWx5zfjduAp9PDCOVfE0AMYONyzDMC/7lsivCBuWAPbCm9brRhtna57ERxfoONslTR9xAA4qFEvjm1f1PSFWuJwdwUTGlb16prvn3drElgF8c5KdJTVaoqsg8N1xGYwqUa7RLUxQPTN77wKMJbpfLEZW0af+DrS4IzA3g6j7m312oFqtoaIXtBrUh8en", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SWr31HTOTHyYe7LxLBOvBlTj8HPlqO2YL8OavSwZgpo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Y92XeFe+CvAE9qFBVSv5AHFy76aQvSSLBjHepEihghasryHyN4RAHw763zQziEBiRTBsjeBcNIFdnqNwIJp/19Qnz3+84yOO7sY3qggVTw9r1sl1uGl6CYS2OzohVlHpNTklWro0mWmJ8GUGhmpC6DurvRIomvf+0GlvwMwx9fIZE9AGXkZR07+8FwF2+9NYJsMIy1IPGDbBmhfFFUK2S1jTTbHbWaf8womR0bhLV4pWmPB0wds6HiqKGrbJUE+wrOVfpZ5hkE1x/xUzHT7WaCXXLWIuurnfoQiL1DsL7eZVb/sDkamZcGkcOJ5lEvTNOKI3pMjqrgXtomNSqnVFQCoHdO7S8gqmya5MIIpTvP6WuP7gbj+0CnFNlD3cJeTT3Gm/07TWnPcceL6uY4fYVwkzUVp3CG43", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SXZ/Y93jPk/XvXmw/eh2BxKaVG7v3dyR7nC7g8X10Ko", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AprlVVZPG7jJDmDeafH3/i0+155xburJzoIoaEk7wjX2ShFHiGpGrReXPQTVVREVDlQCdp0SlDd5Gbm7GAE4eKGxvE/oi706IrXnuRa3YZtk59PZinhVzXzFg9R/LRJ5n6vnrQj1CLoQr1UM59WuBkeJ4iS9+tyFLja0Y3+ArhAa/RvI11QbaODidkno4utSVbrkq5sFqKqKY5yk1YznodsYUnedAKVjjLCjWLX9r5nVpR5XG1qfZyEbncptdlFMeDzkiLW57YR6gedZUe/c8GT46hsa1YVNI8TjpKVBBA5gzqPRT4KDD+dmjBg3Lk00MVfpct8cVR2+G25WhZVxFQTklY38j8v8JkCOtLXQglo+mFA2AytfBnOw+9eQcbxHVZBmVwkd3S+xsVsjUw/ShnJ/zAlFpnpK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SY2L49D4tn12YB9DofVxhdrAIajCCLXe+mw/MrO6RtI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fqO82HmWa2DewHI6dj1AivSPBmnlk5qcr/DzJtYd0Rz2LH63a+/f47qrHJ7B3STuc2t8ZLuvnZNP6KyZjpU6sfb9N7p6vA087TB4WMNjM86IDk2qwrjoond1dakUIN6kE+DJ1kNPmEpbmLEcFzMdcehd9F482h3M5BiPaUOdKPeCPRv3GmZOfGOTAf6LB8TdfnutvPOGyPaDBVCpziu1uAMKwdgga8XJsS4b2tsoYNS/gQuz05ey2wPOKIrHfQaKHGrKVabnnnJN88WyInULalbJkaeED7sJqTiN8nzUWorbuOc66IghCEsxn8DTBK+IFvyqusvX4+hO06Iv0ZY/GLAQ3p0ktlFdzxbMHSHaQeAOWSlmw5Yeq/Qa+GIRq6JgGnaeZJBnFkuDXYI1GFEfWXE8bPPpQkOy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SaZLiJPb/nY7WEFlkq3m8BrvxuTQMkqr3cqM0h8bX4k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bNCksqMYcE4tFdlvkC0aDra1ujq8x/st0y8LKs6yhFoNIUMQH7GMEol87sfA6mRPLLcYS2odoZGfTGhvT/juWIxvk+FW5x7W3A4FMhCRYHTHlaIhtz7PUJemcoanyEEjbyxriNMuOrZQxxsHlfRA+nb5WCqfPLPbo73WEl6OtfGN4fHpJ9zol76ICSK7OOgASnVpkg3OXwupyRAeyDGmTwszX73DzkEycxQQnZkRMPAAmZ9MxxINMlmImGZB1EY7sjnbS48Hx/CG1C9+FvZ2+fV5x5Ko//aNrCEhU5NSr9/P5KJXWvxstmel16e0oXk9+UXPcDbSez34oyxsJxusz3BE1LNO9xMB1I6m7HsWFN5adYMGCOQjMcsYf97Cq5PoPNeQilA0wiiGJNID0ofkoIVmA/dBMT7H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Sai7iQEb0ZDDJTB67loFz6ey334dZGUMn8tkC0XNMGs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SrK0gsOYvEL5yh3mN0gdzYLru7pjDWRSTQBB57lSV3q2jZ8BrOBGCTcd+lZ/eiGvcJEbDwotTsBy3DxkoiAitjhLQ9JDO+Tw7x7U5TufJwuM5gUbkYe6p21SMWF9HjT5rBtzox9Lq2wDJyx+Cuo8SVl1yOwjfIPAA2uL+558ttlDUyjsxaM8TTfO9yYPcHDzMVen3tQx7MwcFwjzMpLQ68pCq/vqDRd3rbk7S6KsnoNyAVhG+8bizoCCSfDKBZwXJCju3xu2tFmn44WfNJmo1zzbriS/9VZ+UztyMId2jCqa4tLjpw85Cr9N9ICN0oS9h2bcLgkwbzHeNluW2AsQe2YWYGG1rave+yGNIyJuOkW+xTw/gDVLNTKlNtSzQMzhSBilLCrWxb6cahGFbHZzSF7twiYa2iRF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SbbUBdWqMyBp8oAgTe6Z+XGo0SXkpKEgYJ+BMxSDAmY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B0I+pVXzZCXhWnOjf1Ss1aEhjIpIYsuySJrjPjLLyxRw2hn1MvwZAi8Fo+H1H6fxnWuKXq0dq1jJXtqdr7Ja/t7+ufK7h+aeU5IxDmEWsYFAcp7t3S/WyP0etUVGPU3sAG4ufOUNdLhZ/TE/dnhmab6R3WEUjigQGXaGWulxRT5joWd/xd29Hi9osqSTPLnDYir+6lwtYko4CGKrGB97qKFjhQO9qWozFh8urqXeo+oI8jtxyjmTsOR5AjjquhCJ3ftZksSk0DprpTNy20nmqCAWnrqmeFq+zzznFi5FTbcqEO0GJqFUh4CexDIL0R8LBVYPpDRY4VlX001lsaRHPROz5BQ86xlmMYJUAPtUI0Rs78BfIlga2r/YuSDh16m9UzUJ2I2bOYnn+gtenaylpL1gzJXyC6E6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Sd/Xh4F4TBRGSgrfU8LYDqfIiS27IdWyLU6dgETIFR0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sVjNyMxDw4Qhi5/1EvELX3Tf5nz5TwgB3AUDV8KCuy2gm9CgW6J0XduBTfKg94F1ZOexzFH81C12LvTnbNDOZyuDPPWaKRh+ibMxUKHrTtz77Q3vsMi/7ORI98wnACuIZ5L9jeLrWfBTZ5SP4uWqsdF0SQ2fbjFJBo/9JC9YzHQPKPgP3cQh/RUKTGZAbXJWD/P6Vo2eJu3+YQFtQD8sbJloPqsztBFV/V0xAw4iMjdW2QJ5CgjKn+bz+66VRsoZaPCzPQkH4Adf+d0PKaTvnBm1YWYAnv/NrZS4C21fidnulf0u+DAGMGyJv9jFxfrxm5jSaOZYfohlVYQ+kaTwxGoePYgscDnNYp5Azzdj0FGblw6rTiCwk5Bgy4JaAocgmfjt1SgnN/HhHAsru22uif0ymzYvyxOd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SdH6Do7KasDIGFuEZoD49bbJGkde9bd3ATQ3Uz3SBgk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5e0wEbg+WaB2qY+MX9Q21b8ykiiTGX7zsI0jOgnRf3E6v4fI28wJK9i7yIEwErivFYjVUpmb8IH7LmlcZ72SqZvIjOmCU0XPPI2iWQcrFORCn+FiD7856nIzexIogyFLye47tLCJVsaxzhKbQs4HX+wE1AL/cVMDr05Z3SE6pnVFLSMhilkF8SI9lZrGzqS9pdAwCezMnbyg0mK1JtVuk546ZZiJipaY57E54UVMksV5HHBOvzTdxUzKyw1my+MFFQG6xahMSuPMJBNlQaV2YMybUbmorn8oRQsylP74wJECwfFSlGMsMa5JwnNFeC9OK5n536QuwbJJzH/hu1JcuaRODZQ0cwxtFlprS6ZzO1ZQ9lvoIO2KDW/9Q61xppd/gYescOWzhR2ELpppmUqYneEVPrH6uF4M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SeaoowKSEa/ofFr75ZkJetLG/aMQhnYG3aIyJHDhdDI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mOSOF8nuhTzczSf0106lIdKLzEwuwCkDOT1FoCa0ifY4MyiuCJI4dnOzrl/Xeqwxe6KKR33xJVCPZoi/9xkBJBxMkRoSIILVxS5iO4zhHhJ0XEyIi7EEzGI2q0aZHWLs8Hh3py1OiOrJ80RMOvIMRBp+WT8d7oS3u/JtCfKyWIFOqHpL0Np+hlXDoVTE4GCEemvs8xVAAbZUAedbbfEu8417Rj2Evcd0jAGTBHL8y7afZe9/pWwVDPCcX9VvBop4FdDq5QiGjcV3cPZI4+wHg+sDnzuJY4uLT++E0v+PjnhlEjGJ4Tb5f6scrpADJELwfvl+Hh6Keuly7loARMT40oSI2UfHDSYgXdaNP8KM4qvsSGqt3bjZNGlZlpTneeRfHpDJES3Jxty8xUDrk2btT4siiYoynVvK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SeeX1x9vrVlxJDzzSqRPODXTY+AKobwADzDNSNXYWi8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dUZsE59Auomt2dR27bBlM/q+SIRHZpg7CH+mLWbYcQ+cAbwMlmoHPYNWIUB6hubKjxvyyuVhrdoO42GcOzfz32ifYmTQz+qB+STqmPhuszpKw9bEId/tsmmQzFPpoD3PfWqsmuyEXx1a+2oxB/JYU5qRnxYg4W5mzCR892VrBRB3mYxoEFohZOiIp77bsqApplhio5BjKcp/E1SPAQpj9UItBUrwaZXa04KHQPYYwN1QOcPuZwtH111ACgOx9YCV/MyHu5hom7OpQdbuA5HZrslx79DAxPm+jDU4pyRNf5J/B3VD/47iEADKhtiDVgJi48gXYMXWJdxLZCEiJgWODM35sNHM/+SU8bEjLN8fotu1lInu+PMz179gHUSQhCf8tPprCBHCFYPTRcUKSrhiYJXgPwRFchxX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SfIZq5BXlFHGdtDPb+/e9OCwCC/PPTpTJO6Zu51RvwY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lKJ6uhoTqrIs0wA+qjG7R5OfdOXaK6xgrD7DAKemYm190/l+tNDjYaq8uJ1iVVBj004UibN1EiR1RJLKwC3GSwYs671jXW+So0cTW1l8aW/5gyz0RaSq47WqRgwk09XfMfe8WNArfIrwKcYAxScWgbQZygQKX6/glupRohJH7Qi8SwCeEQ1ixolKks/iee9WJ/akMxHqQFYo+ll2y8UHVe/DT3bLOUaGk4OsuFZ2UUjwjJZFvuaFcp4W7vhDyIgv2hyk9fG9Z0HsHhtntz5QlD3a2sLZ55eCn0NvdPCvNFXFm1cJRgkDABRLZIk/1YEwklK2qtKHwH9kavvZmytZY0lZh+2Tx6tyF642i4cRGlYAL2hkWA0gHQKJjQ71OfgFyP3jd1ib3IqiEbGmEv4ifK4UdR8lrMsR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ShdTKh64jiQMxTvXhCrSG1lcmNz3ELvofJifeRtrbDY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bauf7rsxqkkgWSMHEh+XfwsYNXY0uYSdHhIypnIQUN+N2Dr5M4YjtbZRiyFrRU3agZ5DG6tUfiWgOKTfzS2cAgLLvGnyK9+npu8yi4H1M/dOqs/vY5ugX8L6f/X+3p8EdBjPjvg33BLr1rmpucZjtNR/MbfiGmo4shAEWil+8v12TUz2Uq5V3O1yUKiDXsW07F3vEmlSDFy5kkZTg/Knl011apCaiYd5DRPQEUp1N3UPvSAUtDjrdnavvzy9q3+18fjAIBpqIFlYCrSQv6OxPjqUGiasaPmZn9Gwh/nuuDN1lZqzASD8bvA3RdChMgwpmj6/rBD6vLm0LjEaiAb/Ax4SEAW2P0CjqNCpig4e/+xnad8K9Ym/+Fr5S3cB+qg8ZPlXAnK3qFwUBIbiVYE8u6SmjBGmM+2H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Sjya+0nUkNKmiascuol9aTBnDqGxv1XT+zR6H39UntM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BeqSPeSclR4ov9fvFlQysfmy73KahYVfbkfSmm6GPOzqyJ7iHiX+XC+lsDuOoD84J2t4EYZ2ZyqWpafh3J2vRqEfutVVcDW3NFaUhF6eOfUIcNSqe6IKg+TVT6Y0YpbIagc7s6mMzjFjn17jw+PRfZo85qkzvc0CL9OD4rFxFgeCHuMwhVIQ/+rgD8KUm6H2jTgpg3hglxaf13lg9IH4bTBgImQfkkO/8zzUN8jw1Bt7JVQzKnCHuLEjcwUnk/aWcEqtgYjPPAN3ASfhSHBUiefB9tXytFCnFLdKaKBs2Y63H/Pq4HVmPJ8f+D/93XONkCWTE8XmlvCn4vEuTcMsnlCj3dANmKMSK/6LtA4Ufva49cWUgcdOeJEOtHbeeVHMMcgTZXC2Pes63r6cbZi5oCSMMl/VmuC2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SkDoXp2gQzDQuZTX3poDEFCmX058CsmrHq1RAqnvcww", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4chqxKCiH78dielQewV16BlttGeBQXP8Tn86X7ff6imk7yChXIIdWX8qa2N8fPPTUA2o86jzadK4NQTDPE3t7QwRgp+Z3RSbfeYet7BogKyItUv73vjfywmmZZT9MiyjCha8DKwWHT64G7RHlaqG/KZOIu99qtORfhBlztAZRxobbgWsIafbXlBT6Akt4mhNeU1uIzI5Y3W34gCC2VSAV9Pk/fgzgvZ3paPYi0dC6wokE1J9LVt9a85TS8flgoNsdfRsbSLNbs/8J6og1nmGIbTKuJJpV4fZ4vKNZZz5lwK419dIsf/6XGcbNiD8gE5mnh31PhjwRf8YMRarcN2tY8Kf2wkxMAgbzBAeTsLAvlKyFqxxs/Ea6777/Oal06yCOgJDGGg8PJh2stk34JAnTLwuMCgrCuKt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Skt0b+3O6lVHNJRo8nc7sCwpJ/zgNdZ9rn3g/kOgWVg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "18FlAq2/p4JZzzmb0JldfXXxVDTA2C8Ufa5Pc/9hXYNCh79qzRo96Fj8nlTSvzuZfe2ILdaFj4cibpeKdXsuyTDuyWgl+bvhHRxqtkSyKNQO1kzMKt/Ub6enThusASXXFLhpj+JDBMhFSGOdZ5gB/2kBX005CsREBrtbGyCNjmnOtOfU1/7GOecD2jZv9/Gd80BYWU64NoIIbPIJgeMQaT7QTNaN8AK6D6N/aoQnexlUcW03SS4M5EzerLNCmRD0KGdmvDGLR5rXDNtw61KZsIjW5EjYeWaNzAdWMnIra2XZAkCAxFrEWqGZGWZaNdA2sG8KIFKo7ufp9UMxCUOv8CTgiunBC4J1zh2nq2bvC1UEzIZPBb8n79lIpC++C7OQJG3c67M0QrXJSJrxvcWv7plmG0n9KkEi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SkwAlgyoycOD3ULdDlpzJ8NPQVoZg11vS2IMn5jIbIM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YdxFrQKIWWZs+nW0az1FaNvavxbBZXGE+gAy6CDe+sp2DcsRPF1pBBhfEytj2A+33HkdC42P+nds87xPm4FsXzcxywvwpw4KFZMITajQ/ncbqj7ihZHF10binf8Sx7cBVBZhVW4isUtDZCVSJ88aYG/H/BNJPX7iWaT9Kqv/2lOEEqgB59TzzVnRCxHDdqSw6WsnSvasqQpqJQRvoZKbP4OCceBo465SqhPGgqlI0j7yWVhXCMg9JYXIeEdPJpMYNsSlo1Wiv/AVD/Jhm1yK6Y3ldZOZIGp3EkhWK0vxXyPT7/aylQyprUjWmi0ZefeN/UO9oTFlFoekmK172nN8WrHlaYEowqOuZVvdgJz07G/sVMYv7nliLH8cQUztle99cclhbp7NnHoAFBT1ZpFu5lS8+K0V0sx8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Sl/UuDEulZ7Mgj8Z6k2vSj3FX7CoW5Ecp/9OzhEDHt8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oRdebFc/LIqmvp388vK2eipXmNB+Q82RPGM6/NpBdn5qbaK/U2hPYnzmar6dNx/EVUAPE2/p72pcNDkzaCv7UILPvRq3pQvkuCdmVBYseLRyTxsIPGL7wuHD/3GLMNdk/wGU158HkAPJej1HyMcbvMjU31X64hYXNAYfRs23BlwEQrNY+VV5VqlN1V8BnhLjHuhWUgfpoM4p56FoIpeBMze2U5RMbc4MKd8kQjR0qN6Gm1FNiprvgLHzuIQcag/snvhCZjVDhyhrSLEYy9Ti02wNABKlsStE/m4AY/azqe15tGJxFUAmRoPmVQzPQTqcpiCodAzO3VrAKJ64K8nD/8PN4Fn4zueMSN4HPT04kjC5XRqtG0uJEjD3Bu25/ARLaJINeAkKaJunJzSSSwVH+x33oL1cKVqf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SlCh3KaAnGQccEBSeYyd2ISLbj91WU+aKsHxrt+JOBA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TLotufA2JW8tj/IE1cDVMnuO0RKtn23sSx7/RKR0HmWJjfrbrVTPEOzk09GU0PxmRFprhHzGaxQ/bgtg16YDUXPeITuaqfaQRk3GbMwYD+mHEN6viiG5wYa9/n9RWQZeamygbZbVMH7XH6XogTYq3yxSAk/CgO5bsNDKHPe0JDPnloGK+KkSnWrklOgrGYPcXrPekxVFqPiRvcpYKaeI1uRZeIJKkcUyYx6vphNLJA1iuWQbiFBMXH5cqDyzXO4icf+xjK9sYDa2TwPh7Pe7NdYpDEUCgNl5lKB2n77HormjChAKAI+Dyu789ZoK1OPHpiCSW/Eb/Lr7BYGU10ynNKU0VJBPf0ejqeCM/93KLtW7CCLGHvLrGBG5Mfrm4pBeHKCpkPzy+F2BBDbfePCX41J9PUdSVipu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SnL/E3chwfdNDdJguFqoK7KeTbvMEifah0eSAEzVy9g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7UJVjxoYOu3FbEfOwkcc0Q94jbRKFXCuAQR26bzP7+QqNrN/iL8AXVLkIHRxOuQzBqyCfdhMCGeUaMSioLN/kFRGnuHzJr8H9PQ34SzmMGyOPBhAb8N9t9BAVwj2/UeBgqJ2dqnKJpJnpKj+MaQyZKZLuhv6fQ7MljUf+0z1Z5OWaMwmhHxDADbQivzN/JXXqkaxOaPfDl03j+3e6hysvU2K4dOotpF8BSqGVIQdSRFUJJyGUlLnAmV4ppKSUcHrx5QUUGGVz2nfXxzZzMSfHYB9tLjyjGXGfb5Yw5WO16vWfxgzDyCeBXaYKnZHadi8wYn4kDNv2IRRedhdtSlhvEE/Nr+qhgSmB0Yaucl+4Gzrc+hKtEUJC+O1733sDjxqke6quEAaKu1cVGiPSZ+wh39iU/2n5MXE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Sp8CkU/TRZGcGeM+l9AizJ/4HcHhobWlhhIvPKcHzzM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NPtvzjMb7kHkcBHHWS/3yAqRmjVMvUDhUKT/vIq7qzsmjwshMeLG7dbIOKghqnuwp9s3HVVD3f0CDHJJ0g9isuH3YfocvwLuphyw/uBHBng8iQ8yyoXe6weMSAn7SrZfGeKFJH/oHkU+qTIp2xwtadZv6fps0vC9klp36U32j/rz1NC7jGZGx78B292GRJy/EndNsML8azxFRlyXl2giTxQYXkVEzrTVwWgViLNfvmusQQwyk7y47x9uuAmCXtB/NRyj9BrIZFJvEeJFOYjDeHoRPNRAbU4j5xaYPcej23eTzisGFIQokiN0MWm90uZA1ftoTcFY5U3o7pign8J+jG/efEKlHG83UvmtYvhQSsbx6mRpNgNs01d56+0SMl9fw7m4U0Yai5RG7Kcj9bKC76UwW+nFbm+C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SpIKRnC5qVJX8XgjYgJVt7f0plbS7111XK3dG2mdzII", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QriBn9gzbL1TjJBJ4d5DVPVfBQ9V3U4RSi8A5H5vQejNf2jyzY6y4evJlCEgWYomXxHVnQEAHCBDhxpSNTRP0iAgIvhv0007MbWgujeM1SXZG42wAb79tImQLldmsppAzJetepVfA2MkBkHM8BWdGjxpKzn1LxveBaIcltyXHa5RntD6wYaSPkknBEV1phFO8FJ9CVZnvVIAJqjyfhI7e/w5f4GrreQSvrdiclIqUeTE0W2VJIRvNx8nDlTwjFPmJTJKFVBswVEwUgGJOX1BsLGLJtDf09lYxDQhgJ4OqkHYp9glONBHMMSIizUL1DaTHBZRn7ecgYK2f5oB50whK2RRY21ESDKmNKeJK0tIcv2mrLerUI4C5jhjwF6ebO0l5aeR+qtyRfD97UgOzXgkdS8h0Yua1kh9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Sq2CuKEuBVEVNJxAlK+WjbEwo6KbgVWrvAp7m+imAng", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1cSzBmmwzuiOTiYctc3Cr5FipBu+By5JVA4ILOzAHb0jR4t1fy5f0XVY/v6EXDXHjqNOOnzkXW8nQJgBD7oJsmdEEj5LwFnW0gi2LpplW04VC6cu1UFlVjDRndIk2+JjyEQ+OFydxISR++lunRyyDAxLZDhjC0okoFBKOA8rCFomNOgLLCXRqm7NnS+Z92RGtAEISIcGE2V0G9CFHntf3WEuZ00gQvEg0LwOpWNkuS5pztqCyv+s059fn4RL5sosSomzSAo8V1ajtrnjTxNYteYDQv47DLTEUN+dlWjUhGZmXRbxY/vFz+7wUOaTKZkLOpufXJUzTj3ftPEEIxdt/yzWSsUp1lBkZFoP4D8jcRdyqztTNWGMDBHW+6JT9jK+PA4eJIb+CWDSDlfyU3QuxgCO2MNRjANz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ss04d/xsF4h/0ECAz6JDjec3qW4Gv+2bqSmee3yT8fE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WdVt3sgle+VEx9PAayUMNvWohoFDkz0JxA3wxS+/qUHLu3/dU7FIIGHuaz6Hp+j0cfXRd0J1+oWGbeMQI4M8KhZ5q2fSxOtdCIuW/L6gsCwSyPyzIS69Oh4p+lH/nEo0NrnrXLUVxSIdJF8d4I/7VpbqXCv/qkMpWDzHSQlZUShCWsjztbXvP/SkBYfw5iD+9dlWcv43NeyiP/nl0Ed+7a7qvzipLZzs9VtAWEZ67lxXv+CuC/VAZHoy1RRm7mFzwgFFGv/SmR1GCEfxJReVFU2/uM7qUkzGupDvcxGc3RtJ2+dBO6LHl1KbK00iNAYiXRyei6EMjPDGEQFKsLFrfdFFy+5A1KGM/YjsuRd2tZSEHJGZ4hAYTHM6IvDhDF5fMTc8Rtl5S8rXKdDeEuoY+BWSXf90cnhY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SsLtQZQaKHIHCK76M6E53clv/XVLL1LJeAwBWa76Wbs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oMbxmZeXJZ4dHVzQUBDrA9jei/neHfZ64sediCyCr6jaPFdsMFbxvdmOOCyjADiZXZSUEbVfWO2mIE0e/QLPapTPqnxoUV9dGeFAtoC6OzS/0zxf2Svq47JCE0RNpN+r12xHgdcfi/HsA2TcMjBg20BZFygD1EEqdKNfy8psdPUqGJouD3voyqou61/8QBiI/RFGhmSoWIiM5slwcZsT5Blj3ylpDdSPkNjRV+n7u9fXN8nb9V5/07N+OIN+3Fezpw0PEWbTl/QVHSEPB33MYcyKMCzQhljbbWvzfOzYYHZYbhc348tkHZQaxSLeq+qoNkW6v7OH4YPvGL/U7by54Ep4srq6/hTmk4tY+R49400FsKHQm5Brk0sU652t63PfzrK78WManWJjbQyayCkh9N8h8S1PinBQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SsMXBGOjcgYpL22a8qIw3oH0zpIUyLd0Sb9pELwhTcY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RuGEVacsKjuvvgiAbTv8YcXbLnsPKYueT2Dh6gJh59/8rfDo3YTmxB8kiLNkikXE4ag2xyQSMwmQ4Ck1I7PLOuV7pgpU7nd4IComtP/Ih/LB6KTDSlLKYjQsAGtrxemcsVuXiYYpE9zAFkQxD5XAfnZpJZmZTxujxVA99TUPNHNMs9QwrYQeixiv2XCqpzeftyxXcjA1Vp4adiqLBzxYcqWGJrivntTCMoymbaYPTPNXOUY329gME7KR4Xb42cTWOSDvF9kwxrI6GpF0YbMaqJAespeijgAhsvyCsFh+B1xx9g7Iv5vwMUkJG37jLBN6pxScDrhQ9SNaImrvHHpb04qApIu9+MADYFG599S+/4N0hycUMue024QArEkvU+Z7ONStpyFvEXxS80N+wQDj6byw/j8WC2Pd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ssm09LmC2Agk3yhK6fDRbx1HFg2FgfGc3s8c7P3ilSQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XmMkn3r1Ic7QKpGPn5cXBZQYzE2vmpOXyCJ6QJrM8MX4IrWfekF3/xeqn6UOieEKpiqMIKoNC4MJZJ+ixN/4jlepcA9b/HQuW/n5Rfqg2xWS0jhpDCtxSYCgH3CzXhHo1IIgTdOYmZGEIZfED8JrJtreqXmQ43SGIiaMQAPliFlcDUOrzbmqUW+8gcS2OhKQGV3BVBGHbrfl+8jlJB4TqKdL147GkFGFLFfmirsCEZ/L/FKXRYcitQP3g6mKWhEKJ4mkgSr1fVEPuAQd2Fxb7+FnIsQWM5fWNSmFS5y5RZdzMAPum5Sf3X2GoO9SI6YdyKNH0v7gCzBI2zmp4U6XaOVgxc6xUQAXXmNGqDyCuQsqyJK6JTDyiKl998AF8rJBTB218zSrXg6bU3L+mxfzMQv169YSFGnm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Su389qjsEYSrKYE7S3wKe75OXMpPzCapOGOGIYCHVuA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y+RH9T7mykw2KutPDH9L7PwAEW1e9bcFQBNS/Z45C02KhgSZ7OCjeUd2cpZtjZ8ygB0o2dR205foC4MXmiacoDovX04zMMkhI4XS42b0dGA4kyzKhwhvL42IH5vKS4cg1sitDI9TcnYOQ5HW8+jHsT76z9fSZeSmGJBZwu60K/a/y18cQiABA6FGNYTleB9/4nU7BflHghnrgT/BggsAMUsQHdGz3ERD9xoX+NnCj+mn6HwNcAhqJVqox5ruj7PFy55TBUArwzlhJnXGy447zyrvaTL/BinfdX3RKjZfwgh7dRL3AA+V6BF/tPDzlovhrZGyho3tt/mVj1AXiACU59gg5SyjCHgnz7jeC1WQwUy0OerZAnWeO70MUMPZKxjdUF4Z8lUuvDNnrNA3RRyHKV7xWDgXgn22", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SuseqNGBaFeFX/RAubQe1MIXCE7t2Ymx+oaoBkRkCkE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JcdMBek/90nQe7qJndmpUZefSCzu0YutzMIYgHll1lot1o4PzlAz5cTywWO8wGvoGlplJchhM3gWVo4Uht7wgWQXmyasowxJ2SBBc4uFrh+zdHXw0kFvdQ0fTj+m6mxKTT8qwK1dZ/w/D1Fa+bVbXNzyreNLtqlBgDPx4EYBsjKYi2/KcLui9uSaQ7orFGUXrZEtKCHZ1gn1kuXuWXasbIC6pTb69XL1cQFh4nX2tgS6YSYogponLi1+toHzGd7VIPZ1zW84f3L8g+WPLvQiRoNxc0MHh6L83jpaMoH4C8GjfIXeG7TTSE4OxU1RZjMjCAZI7a71CCZiUsgFwIQm1xWYbxgTMHeJnxwoDmLog7HrDQ9E404aLTvc5srRdIrwyUCfK0w2kF+B06jU2ThhvcQqYBjE09X2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Svuju/KuWykN4yBwGpfGFE+SRbkBcabPROPoShqPh5o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3mLUOFhcL4w3M5axJyJ6NWU7OfiyPVkKnHnVTFR6qEKeFiZprIUntexTzIcnv2XpB2ahBVjt5dnNq/Gmyl5IRUAX5AH4lA+ASAVgLYZpZqc4qY2KIy0ohrTvFDyQ9J2kMz4KSyh1Gxf0+CDcBtFkBLZsJIeT4EQZXEYe0EEyJm+9auUw2FNYBds40XzdJDL6KlgOzn55P+KFuLIiN8GKeLpxTwRjx6kD1r93Z2yDcwHDo60zk2LqGBxfN37Xkef30r2EL11xtR6aEGboBGAvMrHqMkCnLUqFBl55TwD6CeE6Y/XyU2B2MjezeRBKQuervJh4mScQ78KvAJzOXU4MLoQJw38sm3lYuJioix1G7E4yquH1jlVNbOYAJrSzZcheRlkd0ngfy/DRQxEUtoX7oL8qQprUtWwa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SvvDUHpfuFG9//pjId+MdBNGQCBxJvNWDDQ34+ERkuY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dQEbsTZA2FNCKIIVP63kCxMsYT0yzn7D17VcapYjcpOxg50uk0kgoo2ikS3fX13goUwPUeXCYf8xKdd1loxnwPOEdYRTNy8/DVr98dtV97JNM5tNo4k7bCVQjBEhqpOwUEPNDvO2qAltcWaTCtngsfhpeq6pBINkinOTq6n8UzDFELzbWQLYorsM/SBM/EDm2H+MIxW6ZPFibafLV4aKZ9W21LM6jNGI/F885st8EaUkPlwIP1l3cWTyuYSg9z+X25jxv9OBbdGzLOA3OnHklHgfAZS4bbPL8B2dxG5Pot+O4tdDn/F9cD17J8gXK4f27UvmSajT1vAp7dzggpBRrD2fYMNaufypLgHfCJv3UtaTRAJaPo/u5h/sJOV9neexOEppKgDMavlAP7PmY3gESvMXdYF1Clk8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Svxi3xc5wWUmb0KMFRHx+Ju92MPYiqD7MrF6ngNpwV4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CO9hfY9us+Vxka2zv2r91SQFa9F4KX63XxCEP81szS28tLpZzk/iLPM9vVDMtQeWBMrqFEJKcK3Am6CZveQQmhoR4jU+VZV8845FfJBr9fziV8qMo62CwXeUww3+VQUnF3x6RFDMtqbDHj27y+PPjZ6EQzN3y/tAAj3mtY7iFpz3eGn0gdPcWki9lqy+R7i2NAV+zAjwYLoTimHGpG5v0PPXToaillUFzFkLqwYZrglzNr2rZaZMOU2817EJljYlkTZTwLKsN2ynOHy39FcIHX1M3Ue2pClbw6/njK6+rawiRz245D/NCQmu3H3vKr+6m+ylKnd1nTCEV4CUomzDgpEf/JgY5IFFRuySf/7aUHlNhaqUZSwc3huCmpV5Hhu+gsV7/B/RfcqVBSfMfPW60yB0OtJJezbY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Sx+d5xj7SmNR2LMwMkFibgKHfGHUpQCci2BacTaxqFM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "en21FYj534BKduLwAeu87Ko9Yvta0IMyJARAh0kXkN5qtzcdwnn0P5u9uomsOTBWOFeegmTyvQTQAqaHbT329pXWDxhE6mBFnY7TdnbBPFkKDyCVrihjYwbeRKmn2SItrLW/xvyo4H18wkrxg9x72wBPrdXzuOS3CqTWnxqUrPnMA00JzLjMtzK+h9ceDdjh1aWMpoz9Pc6wjPNkzrNTXg5fBy3qMpIwzsfgXJfZNh2Gq/RYP7kCa/1Gp3RUGe8fiYhOgSLwMMyFHAAnmhe5uyJKN6X1i6XXi2tWm8xAVPNt+bHnlHH9xkO3+pziTRQP+6V/RbnKsQ0GEI07Bm3kP/RneED9u4IQXqSnU5CpP+ejinvtzvsu1z+r5F5UBsJDvphNCYx//2UYNfGX1GrXvaU8B+Xk2SRK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Sx41voyZwi9NAi6JevOJmxejkg9ZKzFRl+/z9M4i/Ak", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vTN/DpkdY9inrCyRuI8jFIqfFivfJEHupDan/IUC5Giq+lAj9/jisaRNSR+5/b9jZAMx8sW2GxVVgOY6aq/mRDhgVEaxnZClOex+6+rTJFb2CGFpLchuP9y4uva+WgRZ8WAHfWexTNbbvN2dh62rWrI7+MhuaGdU/Q8mqlmbxe4L1jy/X9Ac+GdYL+nSXlg3h+da7BdymupNtUxlsSKeI8cQTF0I7hGfw0qJrBWYx9P7ATsTZfVkw9+9vaO8jyY/xjMdQ6tPjwYvaYA4eaYRtj1Qav0FUCgX/Y8OHsEzQnEB/xBMwqWyERVwrdAKujjKPsUsXj3HYn8BqHZByL6yS8sF+J/yOfLwAh7m0JAWDUUoQ8Bmbr/hwFGCKhCvlsdShNQqhIdHzpoB1IkMiUC+aSGrvgvH7sff", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SxNYfZ3dByhGRb7wJ7BsfnprY+9lYjjBaijTphygSyU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3PnYge+ij3C2U99c2aZpYRME4xugB2uoaf9SQnSIPWRKG77dmVERTYhIc+yVVIxRQ4PmGz+uE+0GIMOVajJwEdQqcbiO4t4jDm2hxEB3dbGmAQV/FwR2hhKa76IHgKFVVH7f8jBDBHNzfMlQx1uHMljYar3Mb3yk5AmZ8Q0tVN1XQM6xcGpdYQGmqvxH3vlTJpY1SZUbZxxEkEnhtsGcWg9L3gwvrX4my4oPCaGWxqy51KmxO4sNKwln0lfHDGPaOEzTe9OcofDa/UhBces5fkh3meYMv20GPLssdZm8v+D/jzJOVANCTv2gqxhbMFmh1WPe6gVKWWPn7RBLEm7Gpdyyj7G6Q5tDI5xE/Lm+fbXQ10BSGSsBcf5Unh+MAF2Vxe6BXmMkqjkM2RhoLxUebpG4Gu3lVyLe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SytBLGfC08zh3Wr1m3cGt4KFTm/1kZXBmwECX+gsofo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pLPugZEwrwj4aLPuwjfFkbgd+A/h+0mOL+Vann1Iz7NSBqObzm/+AeaRyKooXqkgA2wT+Ap6ppHDT8w6z1M6yQ3G1pZNPKomd4e6WSErXJ71qCyTeSj0NcbCtzWN87FHwt2zzTuH0Im3d1zORPXd+bt4dmcvWQrsUQsLtgO/RCs9rtGWfHmDCQAOvH2DXGiO0VO1a1tD8mfYdFaf1IwNl6bUKFADzvPUSG7XMDzJWbb0POL014L0rmk0uy0P9MhK2CCoEdBJ6VhbxjoEX10iYUVreq78kSekp/MDaXYySoabFs6kzAs+uACNZZrxdQUy2v5YZLNP52tDCb739Lt+rcj+ZwhAdZohHUWPf07AJChdHnmSzRXNCSo69tj8IcxaLuw80BJSUbL1EOCv54rp7SsZivlx1w3U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Sz7MvIWEpTLHCZZ+FTeBHjbbBN1AWv9GyErJ88Yzxeo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ormStrzd2PlvUvvVOyKxW7yT0rpJrvVjrNYZ4AlMjS3WLLvFxcgvWv0Hzm0VpIRVU/2ch4gqo/xioTfBdPvhMJNrmxQyCXdukxGn+D0hQIBS8NFZm8YmD8Y4adDHym1gmEM1HY+xIw85nAtm9lFc+GRuudlIJbSDYyk7+ovobJfWxCqzochHWIo/OaifE/WATbjgX9zb7geQgr88bYBYlAvZDNI7TWKgh+iVwqhRO5qZnxEykM3bZghZQCbRpTpA2O9pM8ieVis3zI3OVFSrrutt4l6gv2MnRtLpxCwqLp3j1vAzW3yQlnEzTP5e237eLMQIpiZmmKC2DqQM8M7Hhrn5QgT3q20kOxFU2dnMB5c4viPPGfPwcGMCx/TAUIJGd14+Wu4UkkC/idWUMH5eOFhcQ7DVYBce", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Szk+6gGUttiP4bYxArPJk6HYB4F7r9vFqPPSyzulz2U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Rf169GyttgzeTc0koiajfP6NNOkpsmtNxaBsi5it4dC39NStcd35oZBxF/wZxgIGdxJr4pyrdA57mUEcsZwuR9gbWlC2MT3l+9n2oXOvQX+zwjDtkfEeCRnLxUT0WXX9pxc8E+GPV3bU02bshoDW7k7eTZ/hXJ+I+aOA35qCxX/IKauOGR7goRwQt5E0jnAKj5kLieICO4kKnpb/vyE8PUmOEafyv084hPqYYhjTZ//4Wbn5QYHeDJDL20HT72bT4M4eauTF/bTIaSyzeCMnHAu3mA9tUmPyCO0aoZ88IawvilTOEUW1hr0viPJV4cc9FD18hBzSthkO98CljXeCcSlmJNB7TQDI8C3tnlq3Ia4jZZYqkipzo0BTvLrxJrShuvJ6NYyPP9dL+vnHnCO/kslkl9Zj0uer", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SzwxdTBLHNqT0YoJYtV+iXLnnR2/F0THWH4VLWOLnN8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xfUWrYqCRhWdnnmDFO8LPJIzVmhlyas1y8Hcpf2d5ce0UsTbEbRt4DwMwY7SiK+9bDJ+HmaPsCz9ZTLbfhAgGNIgrxa/ia+uoe82vys/f/2ndZ9um6I9QfOba4DONR1HmSa7T2JIVav++JJmHfwwhqi4LAAUfy/2hGT9X5dx/BqXJpubpSaCirxgl1qcghQBIIsqcSvPiAJ7voxJMvlE8VQAnO0BPc37JUZEX4PZ6w5wkJTPKX/QAhn3PQwIjxBx8GXF5nlryRUS47UgLIUb1QZSkfirHNiJWubShBIcUKW+CYdIJDPPZANnggZN+Nb/heOIyy8whRAnzdBPtnoXg/2ix1VqE2RBDUWso8XzW3EG2qoxae4b+WksDLR+W0MjZcHo1xhJya9KoxNg7I0G7ufvsP95NnB2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T+ai/6wNjrbonA1TO744w36s96BxKpTHfm4VwrgclPA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "llHjfNkdyyWr+l8+E6eK9yOZe8OIqSfRv1oDObTtdnTlS/E694jnyEQF2CxrEvB+ePxtku6L/HJE+VIk1BaudCHD0Xmxr7lEiNps1ZvDs5ykW3cwFsSxhQBy7JaIf/AXpmuI0KYtGtt6NPUwZddXAlgbVK4EiHU7sW7DCx+RbIz1Eg+NbczBH04p9jA40hdHfW0g+MgmahnsMkg7NRzU1kWLxyIpnvqGJ/vZZ7p7ZdcjDN9/m4rnDEURrzGOXd316G/7RdDWCyhxEOi18vYPxbC7gk7E/izLWHoT/lxAkTADNZF/R2SRzfiUuZTmVCFjcVouNx2IO1QoBmp+93ehhXqB0XJDjbgjT8li5z4tZZ9GJowerz7/B9yhiCnWdscGjNFLSES6X/IW40TVqYT7iCeWVjSi9kiv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T1FMYoOh1zISzSc2XIOZfPT0J4ORWLSATs49Jf9oXqQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DUi8y+F/fzZZ9QVWLDEhDoKme9T1NiuuY4KYmueO9IC3cO3zoZyvVLeYTUfO9wJ6uY3W7bpxaBli65EbXrFtasQiG6gdIoh8PDlhdwywYrSt2BruSfZlrpy6/LnSJIXf35PGhOp68ITO6MCvY9fbI8uBWSWyVEsSx4YGgez5OBtCf9s/b0DYZx7GJhxRtokYCE9d95GTJDypO//Ide3cyIg9611kx6codx6XB05OLkikM4CTJh7TuEfRvS42QYX8AIzehRBt5JUz59h7egsFlcfNEsaaQO09B7om+j9aiqYnziOSv4vsEQmEfe7dj33fcnSq73L4Z4ANO1nYi8uswHPULEY+DX7PYf9ridbqVAYe6dsKxU/Ob1/djVYh/WUUem55qKoi3GXWoh9s+1rSiSjq32xQv/DH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T1uxCKJugOY1K8zwzznLsITTivGguKDW24xDaAN3L3I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0C+08XYCc6bt5k5YH5BzYKV12H7iIQAjT8Ot5zBeiMqyzf3k1wB4yOdqOFcu6lQc+TsWh2tC4NQ3PQeIj/Xu8S9cAxcbDdM6mw0eIqlVv2xLZIVc4Qf57mgR/AJP1feOQV1xzq0H1LlRIeXr36eypgC8zKRyAj43x6g2ck/1OZZ0D2HU7NPojWNe8voM1i1+01nOuB5iCM6+R1D4MhOo1LFIcYytA4MS+6m9V1ImJKhFvXyBc36swk0Sc1SfnGNqDs2OhDK40tegpuZvVEH5Hzuf8NFZQPtbQV8cEtalJ/AM70+Z296QtifrmF0fFoyymd3Ei6qe0/vq8oEqq9JnbvyyUM+63X0IZ6Rvdgv4p7j65nrnvf2gYfSkY+4MPmCOUZj/GVkE1fYIycf66REJVyvUA1Pz5IR5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T4HHS7Jr/B1zg3ufE18AxRN7mckuQ+/6+E1h8L3CGPU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a3iL2a6Y/6d4U6aarqdEH5kC4pZ097k5A3NiPmHCMYG+5LuAbyAzHuh3IFWX6+bnvxaBqAqr6/ALOqn6fDCYwqdb/kkZ+Qq7y967R5xuY51NeofXuOu5RjNC1pyrhgFvl0791gP89EaQpCQw/0piWKFDV81pdkug/F3ZT7c1BCq91BGHk/2Rw+P+e5/jJTa3kMMrzthF7EGK71kttrL/fPEvX8eXfIM8PKpEpM3+DRdZzEYBsfj0BVUdP7CPxFytfLHSr8joumaTutrx8DoxydG+gOxw65Vm2LB1UXf82TWAwqX132knpnDdBeOjQsu1/tfLQ2ymZHY7Q4dyIvygUMEVdxy3C9vfWOZzo8pAPT0o4Xj7xcl9Gojuu9E67f6IiCxxUmpq7jdj4k8Xk6Y/I4/uMvf6y5np", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T5jV9LCjKVsmnA2ObhO0OZtlaWfybcytAfp+B1yPqGE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ziyMf/bTFCSFsx4uOcIT/xHZ/uei6g4uHzTuGjWFUzeJcE311O9Y8nPfkUhqv/nXUU0si2Grf19jBfJIIAdDAa8nyt/O+9DwIFFJ8IbLBz1PE5HQ1nmv7I2R+Urdel+mVhKPp7LpXiU2u+hQAnljyLUv5iqSv3YEssI0RuX4gFUfWZ7+wg/sPaR0tWfh/Gpo5aM/nDixooaJsLpuwbpXM7njlk278ex4XH0Yu1qIhOwOVkZ+Snh7P1PeRKHG3zYdB4O94IRtAp6wOiDOK+5vcgwq0imOVEqbEoPA10zhuxn7aJuwaX0+1k1/V9Ig5ebswQQikkoD4YFoHdLFKVKTj+7YvEXXSon9kUoAtWTYZEIJzJ8zzi3+Omqtd5fcCuIQz092IC3oGU9IdrR8P+pY4KJbJkTM2NTq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T65BkiVmKVmAB6mGVU2A6FcQYo9TetwNuhxmAOPf9Ck", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mt4oHHRD4rr+xc74ycd4y5i3cJvR7lXhxaBKY130Xs7JpxbTar+z1UC7noRypxUX0CKq5nncm9UA3bksKQR6tDdBCG2bsZIo3by1PEl/weBC8e7KS/CIF1R5J7+S929ZRzqNjPmpEFqJvlGs6szKNMfi1hm7SSgcnUyKBU6Spkp7dAoE7dKUgC2nb8/8FW7k1voqax0AvAq6LjuGmHNDqc7SihDDF+AJF7okxfBpjV363lNhJPbvkWX1xP9hKggq4TX6GdBDPF946AndDqo72ZMsIHCpmjy6sQewj1/8pjtdTcgTeikLt6Zr95Uc9JcxHqw0DhFA2HqVISmiSjUTxK8GEDn4/IUhctlmhhNcjTAlZ6TJke8ElYvZEuouMSLknIxgyCu8wwlvfb11FuI8uTlLymGcpf9o", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T6DoPcTwQL0b9KY1NKfA6OeSdRoEsSksrpuXvUL/Wl0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AxcQ9TJgope09DXoIM2CTFgZf+ov8vxdusrmyslkX7pG+m2ZxpLsVw35KGnLOuXpIW4KMqojkcDVGzJ8btNHFjAyN+fYztmeZR6q3mMG0NIwlECEr5HK1W5ZwTo81YEdCVeH6m6U1Vj6uAqDiIpys3G8DChKFwOvzuteanXjm2q54chE2XXcOnJUoYfqPQr4eiaK+xthHbIOPDJd9ij06h0s0a861Nc4zCGdhFAPiZBx66wwfmqADx0GekMzXkJ5mdQ+M8kti4v8p3gWAaAs3NbTL3PKOiu9+BIp0b/mS+mIp07FUToR4Lt1CexVoPpeySvMXpIcrvaOu1DTMIE+9gBYgmPQIN+te0gI4mGmyASxEky6QgCZtv0ST7ZHI4YfnI98IoyTrU+7sxEOWfVSDJGRs6Ky9utH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T6ciPAWE3AJeX2DYb/4SjNes/iUV29zCACs6z1Ak28I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nAv0PNs4MBrWHQLADDgSoZ8xmwtopRnRF2ttMPnEemX2VHxDYs0HzB+Tek1zQxkh4l8nukPqi9Fov2vqPmi748nDVDnMV3bDZyZUmQqCiY6wIe/u0av4z8BvRn8QNjvoySsHidqEni/pdBHzfGTvkTSoVPTEx4d0OFVZaquwrNY8TGG59a6mT5T67zIwKUMby8wgbwwTJWD4EVs94gqPAbni5iMk4T8DgOr3NNni0Sc9Q1y4CyLuRO89qa7pAiQVeHdxWJMYezcD01EXeTqmZUNr2UjMA3UVeNzw94IddAQpD9IbBmR576vWIPQ4As1PS390zOoLM/frp9CdGO+ZquJBwmO6eV98s9wjtubhs24u2MncvzWcrqohH781o/yvtZSWNRopSCkG+ESGuT4C4+S2uFn1qu5j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T6quFek7pC4UF2KEj7BGVEsc3fjE2tEhOsWWkWBQJr4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "49pAWPvCAYjSKeDyMjcfmr47R8guWK5qqCZiStdaiie0W8HcZWDxfsmXPj/rqqwjgFJhv3PSl8Zvhpr69Wssg9ZmuVrXyWxl5O5s+AZrfdrW3ELFkK3piypEeoM+UBgDW83znVMbbjn9k0h7EHT245ncvI59S8lC2MhU9IBe+4Z65XP929lLv5pdBTy0Oas1fDdf6G//GetnvVJl8e+SwcAYbkItpaYxTDK8D3QOQhDDJyqKLmyWRSdthyObB8+M2P7Q9XyuWDTVCBb+fpTbR2SohPNIdSdI4NNma719k87tV82IW2Mie+3TRDOS9mBUDtVJYd4GAHJnMrSdhZzn11RxmMnFcfDIcd0uS5wcK8SEbA2ZuN+LUbds1BDSrfq8eV1isi6ESFo2fnmBVGMmi+WzJy8r8Zn1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T6r6M4PHiKNDuevatQOzh4iBIoS291pX9tTHLpsjmv8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mw48rR+JqzO5UAxQdzFM4QSfIIinvifFbPEsUPfyNVceFzZDJlYBD20ND+5q6fRIqioYSCaALlZBQkHD5D0kY/48mR9UR8Fjlt9bTuLENwBDegG7AlthPf/e8g+2py+soqrtcg6MbKFlm1EpZpgcWe0deJVPSf+jNzzTP3CcpInJEFvha1NP8LFDkvrgvNTstY7rLewIT+0LXiYN97S3tV/0SjjUqkK7e2IQ2vjrb5gJEmg9Y8HrmexLwb+3YuJblcq/Vg+2WzYuYwOWvChO3xkQG2N/vfBUKf58kpV2BnaMyfnnCkiDtltYWgd0hJQANtXo7QFyCoQzg01EQd5x9RJv1VbvYxocbCkFxCixW05ZKd4WZDbONAj1av1YkZavMB1/J0BkDD9cyYA3t0KO0KyqCNF+ogWJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T7JmwlGNsRbZFQKL9nsR1IcFdpZd9kl7MOcZD68a4PU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZQqI6l5m9busIV4tRYPAbwQNT4RQzwSBOGSplphBYh+RJ1KTnILvup6rkMGAk3awP5cKsMXC8psb4dVMuLZ5VrWZmJthZYZDVQjUYHqNvMB5iEqibQu/q5YJ6eMN+hpG46iZcBToU4l2CRd+ocBdRwmMdR9p/UcMthOwWkjEsKSbb7fNGvWr/R2Fkj/g6OlP2aREYNGjVoeU4FDZVuFMtNzFLIa4sqs3yRbZq3qgzVMc3Eqh496mZ2VNoAAEOLUk9re2z9weh2NJb0LqVpWcOu5TwUK18M1yZKBDq8OUTNRPS8aNO4fEE6YD0SisiuP/2DmhF109rMy1V8D8XAZB4xO0FM+lGYuH3d32jx72KKL0TvjCywDr9UvFuI0uPJMQ1839bHyfb4MvQKdIFC5MVsOnk6roIu6Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T89l8eZ9F30GMjuSeBgA+uShm3lPUCr5L+ScQsERXZU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bTpx/TBRX4tH27AyV/OqKPKJIyfB9OiiQ5vrvlP6G4TnFEhswdS6qEgJn2XyZDpG9p50fxTR/Vw+VyVx4o//fD0WMB2kxLaTCpCvvJ8E99SRdqX/vmjUF4dWwLlL/79Tzglhz5XmWBOJkVXAbwRDTt5g7mHNxoXgVJK+MraRMP7Bqq73rYSjW/2rQ3b0feVM0BMgbG644szqYESg7xGgZe2CxtM6VIecWFSZR3du05B7KABC3SqYQ8Hfnd3dHxHUJUhEiPw9p8IWftALt2YaU19EZCLqCDs2lN8ET2dEFoNRl0gwzoOViRCwaMY8suqO4b9DGQp/UoxrDqd1O8/VA5eLrgVspHT2jv3zM6pGlaNxOQ6l5pMgWGH+WduDnzQa55vBQX0Bo8945q9hc5e7bFm0W6tO1Od/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T969DXTJllTrfUCUBvtWw9Q51tn/WhaCmHAuBDN163k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XRPrS8rgAunBYqD65dYpuWCFDylt4H4W6Ou4JfSeA+8vLug37vlQbrek1sspPfU2EP/MA2L68j96ngwspPOO/m32D3pat0RVOXyL5vRFeCrBkEqY3Ewnv6QtpvTUJutls82KylIKqTql+MuO4Rps0aG2x5uu+NI9U4oT6UWMB0iCX67/S3KUZXU8P6cKaIRc/wpRvxsNzBEQX/V6JTc5ogehG+VI4hvA+ieV+z4g5llA5kakOI2SOR3SMdTNGbn8sDk9urSt8CsqMyzn+IHmoQulK+hPC0HZVUdF+tTpgd4HYT1kRniGhABBFLw4n8UYJjrGie7YI3GQda+Ir9TAwqYWjYUMpWdaJ3+EoFh2/MTsqKaicI+lK4RpmCrDlrVVWuD1rqVJy1Thk6XZ7LJH+ME3WDKCl/na", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "T9PmPU299JazAj6D2umIJoHvJy/ZCbls3gxnCGoqoL0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tIA5M5hxtWwopf17JfMNN+OAyJPKU1ORV1gFJze9R9c1sc0AH9PQ21fMKJzptRt+7c0d+gnjRfYF0I00CzqPXt4QL5ikuwaPitEUtSWf1Bot2EtMqEH541Aku+aQq2s7XDGGs28Yk+uRjmYg49qZO0YpGmEBPOb5WyvCdVdMc1KUmGynaAUm8PtyYxYBDihq5mULqBbCsyYQbg13iVBxQeAa1idlUeMwkHfhUxobn5actc6NMp0L/TfzYgrtXf8fCSxTbobQRBp03VFb77Tp7fFqoGfhczw4k9ur3rnIjpsY95oK2p+hk8PjKXBYhTEKN1nnqX9DxSWK+pRVvIAQDTXO8OkFWP9RRX7GcW14mC/jhsap57FqEQVs4EMg8PkO8GdqhopIpE+ehhXPIwEb/zCa8/XIALbx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TA9m8610Zce7RmRUv4xb/Li7NiWc8Q8+fV+4+Pilrnw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "244B7MKUKj18qfO+NjQhKsXvVuyQmh7l3WISnjw98BhepNyHkReE0XXP5T0FsvdjB82bPdYwauqoNn7kfpSmYEA+obhPFehED0QfKDUefJ+tL9vGlx3CZ6ew1m+Jg4fW/7l9SNfoN5wxdpzvsWp7XtU95GhHAycRNotXvHDlSoIozKkbffNYLuQ+Pvm7BgmI1wLwT271hyXpb5GmEHFwF7Zb1PYh+aOUi97cmQHEficTl7OKiAJyg+tznK/kw4jrfedWteA9Jo4/1b/Cki0r4bez89S1rNXE5xJkwWMePGXHSkJdBee6zbymI6mQJltMhzMTo61DTv5WVeyda0UiZR/f2eI/DzUrOLc8+kdFKYOuqxZUG/Sd4oWhNrWt5wM7c6cExaF6x2arl5DtEW3fcnu/4eFvloxx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TB7cp4s3vto1kDnuxvh9IsvT6JLr8+Vhyi3Y1jDI9+o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iEqWLLUnQ/zU6v9RPNWh/PXizMAIlGnQghvrcXXwRmc5fiVB6T6OVPWySdmjIYqYUZT+YepSPE3H5IviID92UU/36IirWj6QeOLFQ1K2FHXUX1oRwziCaVXIBTZMOtLf5zk3kXgyiPh4TCNyrOF8ZJZBClFVx+Tw46nSrhhsxiAMjjnFemelNPCOmzvdfn+/lVswd/tz1HCVloCjQkWlQM6aPQs3Njhu5vPSh65V2eM7fuMkafsOqDZWWP+Ge5H3T4gLouG70Wef2tuVuhNfVP+EV4dryC8rdQtFOGf+bKj1C1dJlYciS8c1oII6juf+2c6QfVgXAnJtdzpvkOyoHBnY0uaObXSAFRWuUGmfoSD9865rePqBmpY1NYqUcfuG56fBKo9FDfiA/zMeNjsPleVmgtnlcZ6J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TB88N0pP9zpZOX/rhZ/65nOiKClL23H9URpEaSQ5iv4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B1ptVhqBwxMhB9QccCbC4nt8HkryxofrBkIkC+8fe1HLNW7H+KqDW/6ZiFDzS4dtb0CUmC0Ngl5l0jGlTRQLZ0kkvJ2rJ2BwNOBg3+n50n+DTs43XP7cB+BbVY1QRPp1i6xphn5HGfr4i9qKmeAgo+iwURPRE1FlPXMg4m9RCyicNXwPxNqzkH4cBO+xUDfYiSv4ca07zFUC6RFp7hHaNvVOmm50WNPXUtD9m98DiLY4pxLfbqAQe+S9Av0eOeX/mDGG2fRE+q9mrLPowlT+46YiETqlOn480KXHaJg8iy9vd8B4X5MoM6bxMb1cuQI3F55UutzD0tMd4fm+JEBXR55TzA/wO13k3vbbH/Z2oq6euU5ZiIvQwXKrlIF30fELdoSKcxYqRGuLXJcONQY1LMzY1l9tNXX4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TC3X3MbbF2Ewny6Sg02iyJW0Fnr0BgSCjx+I4Gh7Ulo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "biQKHl0ipRUFygREFNcU6e1/QK/t9Jbt9uCyjDR7MucZZd75pdHydB4ewDX+1ICz8csO+l9y6Y/O4pYCYtGTn3XaJ0m0beNhTyO2VVHvx0mQNfhGhmwqAuuzvzWgzeUV3gRUE8N4EA8Y9IUpjZjYM9Xng74sXy7Qefh+orOeWiD3md4AaKBtnYePmdUimKtIAbPwjKRaJxnSfZlgjXls9AklodYNQ5uDqe3pKFJx2c4IGob+rWiSF6VbDkw3uxtCyqFJS7WLo5qgE5biegJTmhD1T7DtxouuMp4QTClgZTxs0AZic3Zj7rbH9lAyxG0z3OM0tyKfCB24t0WrhZq5NthBLbteQJQ7DXaELQWXHos0TiBFGhlbfFkTdRgkY50OQ1aHASscrUwy/lwExT7ZxVFoya2JbSZC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TCvoBzz8RZOP2jLS0+DADEND/X/1pnGvzqVCSg2MQU0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ky7HnmUmyib5gMO2u5EZHZEPADerCx2EfRus+oFtvPz1blMk/g3UBjFkXpO1aj4GPjQnmNmzZiBzHKi6UWY7qMn8gvyjSwt1prgOtqLChMj/l9L24lMGaeHgOBi5ISk9govl9Xbr5gjqyYJElzzn4P+l4N0ZAq68tZtpnVMsscJl5t15z9FVANLy3myUKlcXicycZcjFZgDgAnxXbIhVTwCgiz7UfEaXAJ+/loFtCKQI4alOX4I7h/xffUFnWshvTMd7vlnwgS3rbn43pBxCyNcGpS9/McYnDFbdnDvylzkM068aa63IX/hiPU7xeu3vZyZPJxcaOQe/dTAw5s4T02bEStJUDK6TDWrzFFd/9l022M3Tp/5+1KKROtcKAeJmCw9TtWyLNUu9cD4IfitA3nZvkhtp3nY5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TDT/FARtiAHj43MMp0Br1DYmAxkbCEwS0khuyeSJ9lE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "soc9aIIG7WqYBmJGnH5qgC4O+nKSfKdXWLiifQdhligr3yNRL/UKtVoMVXRy9DdCm9cCw2rBR1FEeXKCWrbnjzw59eoEaHMn9r0Y8tXsNoDE/Hp/AeObi74SLjIHIFWC1ucttqxNEGMTiMsjsH2xIRUaYYAQOoS1+Wh3VMioOwNsfL99jPcf6KJ4FJDIS04+Yq1dQ5B6QuWFWQVTGGd0V5418TaQj4GKlYz169KMXsrqtd2gz1KGE+n0PMyLxnT/pSgALH2v0foEvV8rzPSHAQp1P1yVIvJcv9HfAPU4BFUXCab6KvNdUG0QLGPWuDqQc0lwsjpfbQxAOKwPeWxBvrF/PoR9/CFklpUsRAGeNArvhch2bZy0JPpckqn5PVuLQnQKbOmVveffiIqH0sr+1kD6AxpVPJOu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TDyZyo5Hxa0vXKdRIijXj3wNlPIfNyzAoblUcrNVhAY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LQM+QdWstOVkEwcHF4xzjK9vBLHgG4p0uVxKn7s+HMQ/TqOFXKTE5AAX8DYQH5sDpJe+HJy3X/OHajWixMuPfYCWDrEPeJWMOSflCUfhN3jrrx8s4ChiLyK/JRXqDiWNpYwweKk6jv2vxLplmho62cpS+almFUqZjH5aZaIt1zbRB2jwuq0TJ//2XWKnbjHAlZtLM0qruKGijI99gt+CTxQ4be5bYLiW+50LQGV2ATpeIyzxdNR9uBwSVBZh+gBljUtxsfFf+jU5KQrb/T4ujO8QZKQRnlu7xl50GXs3HBcQtLacVC6azdyjntqLo3aGdm6FlIOIClxrWHB2kkaPcTCnJlnBF2fWuX4sA+0QfAsXrdac3lNJjaiJbdqW253Cb9p1LIuV4DW+MAw1xCzPD0kAZOx5woOa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TE6KqKFPWKO1e1PjWHfcZyh65GebopVffvlh/gSjTng", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u9G60hTxSv0TM7oh3PtRXg0dXs/UImYbaFtlUgMxOzirTwICxFoU1VDJ7X1W5CYNhUl14fiP62ijBZ4a+zu7Bg2AQ2ja0WPx9K00sG6zCGXC10qHddFpe3F+pxoKq2VjaVNaVKrwgrQcWURtOVyGat6kcOeqZKKLttIxvGAX+UxKuwqFxcHednHBUWgm9huXlHfdp/yt5eW4sI7rkZTTDAmHxgTjS1uc9MoRloNzj4n7jb52/hpzuqIOKBlC6NUrktYEB8zmGP5nJPlYOkDX1KfysN6k9XWS0AKP8/VGFcp0ZzT7Gm8ErvDQUP0b7ukN97kYmneZnGSGok7GvGccY2y5DZz++1iczA4XcIGeT64Y93rSNLqgabe0N0td6hzG9ixZSFlhbDx9cc0e41Dl3uew8G5AVsuT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TEqkL7T7kVIM7f60ZdjfR8mrgDzMu6kkVLzV4odpcyI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pnfuOqCGgH0M2dMjBGE8REVfCx6rkL7d95GHJTkWGWw83tw+q57jYlHV+TDAHKn9GQC5PQVcUpPQzWaPdNlUnMxt0W5tsEvpxdQG7AitVkT/eHoU+k7gshgM0SWeFHoS7709cimm3tVe/0ONE26ohQ/PL3mgAUjSebh/hIKJl6AWeOW+N817kC6xKPzDxruph53U2hkhR4kfPqh7QvnY0rOSGWFWBeXPZJE5gEC9QiHvPjV1D49STGLtJ4R2m3lBEfEXa+rwQ4KPaXWup8us5+Ocr0GxKrzb0fx639E5Cdlemp4xNK24BuLAapNuE8ucSx/uxrCSb9gDp7eHkaqKEvYj+d0pZdCc41jZ4qnR8ojN4OUCtV3S/4DjVTznZJLKmnX+UKhI7B0jwhMGiBghrq0EN6sVQV4y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TFtjBCPilTSVfW0jDsYt/j3XKRp3LDruwKnyPFmj4rQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wbiWm43J8zraQNY8NkvP25ZYCjJe7pQEkYpT2FeBgYGC+PwQYF7iMQrEPPwCyslTD3vk/v+9dMMCSOFejPTGljoaG+KAdJzXq+TLdiCE3tbnMHeFmeArMHJAWbpCQlreqh4H4m16jr2zbANWpLIVCy0cA6fitDfRaB0Q+2gnZIlhmTCXFS6A2jFpQxOhxpVXMlhqzBk++DlQE4IuzDDLfUXRz27FKOWxKyadSQEj45pEFX20Buk1y7PqkMajJqsRoohLsz07XjKac85U0gEtdfvO4UEFH5UYll5h6LPF7xl5cIB6qs3SLL8aOnEQ9KDBkqhTRgb3OXlQUq0qO0czE42HZjJg7C849Hf9mS8CdzI3xjMUUfTbps82cOSALmKFP/WpUNwxbc1/7vyUpRk3EZZxzxdH1mSy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TH6TkUKcvEvRZiB4xa7EY00K6TwapBRQft01veKalPY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+5PYPb/z84/wIZA3cGWbvvB1ecwfg6VFOvzHH/ewgwu2iHudwP41PuWLs6uIAizpoDhnc/Km0UhItoQ1mH8VODhSrOIdjbSLqv2dvuNZPPNO00k+jIHNeI05Tmo77Drzr3gF9SRCx6M3c935R4u8GXya7nqU1ydeq2ImTr1Et8R/dQ6M4p5nbPaeUB3kmvY18lX09MAhUeaPAnysSDfP80Lfb9vmJisy86VEFgq9Jka4y7bhqTgxuEBxPfPQIZ7kvHwtx/ziCRH4Ndmq7G8UvuY+btuW0SCTwFcvcpY/LLiiee1UBXeBtyB5i1pMkiwo0uQrtmoQDWr/CgyisTRxdFyZbpzX7UgWAUQxV6ooQsFgTwY0FnKlwUrvRTbxq8OBfowgY687UGVLZ8VSB36erS2y31bXcVov", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TKlUczvv2AxUfsgEmnDn22ktJ6SgRwqC7gMHTP7J7x8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FXJ1NFSgvYawjwcoF8Alncj+9rtqhEfutnR82byIy8JVgw7iOnILHa/tffoT0pWZ9ltmZ6oI7qmEzuTRmYK9R5dc3Qo6obTjZ2QJCndt1UHclkBWVslZDU3VOKwYjxzzMQY3zCBjIUodqc7bYwFJuUAZrWl9Cuf7qIWfTlaD19EHZVVEPZkC7co06WkO6RPK7GIubmRwnEwauAF0INbmIGQBQFMZ4MqVuELMyfwzeCb3i4IEULixL6rayTGQ3HtvrIc94gTY5RyOVrO2Vkw2CFycAv8EeXyxMJCV5uf1eCcoFi1tF19a6eRHHfbEnm5nbIpp59bhHGJqjN7WPtbPChvL4hEX/Aj7Km8Td5BfjGWtReHMfyRn+MjBlhyVcppImsNL45dOJheOSnfMoUdh9TrDAX/QTyLM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TLNSb9+HsZFd6Gj6aX/2znrILQeIL4E6pMNrlogj8gs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Z8+cedmsc2MKcX058IY0coeTrjUPSx+vL1UBLpZs6KOGaaNh3LtHYOq3uqpSwutDaXuGtfsJRCb3FF64uf4kYr9LyvSg/b159OICrvOTSf2k4cbK+4AUh5ohERvt0I8fwxBDoT/OB4bfmXC+KtxIYA5hmCyJ/VM0rHQUctIUT5jAkf53bC7de298YU1hMl5dC9x4lRnAvhVfXQHfIVJOrA35Fyis+1UhKGltWhosOc53M7hGCWXvZY0O15OhSzDTnTvtKEjbAfAYpiEuipTmjGZoFM6uOxg32gyRtVath2cXvqvoUa0qmlD1wHbIoq80/5P4ylMvA0I45EtxIxn2rvV5rEx77Db4Qy4oin+U/5T8UZ71x9xSM/oMtLDdcHyjzEHjc+ocXWeHLuuK5xzZWwliQtBIlg/i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TLbZJRKtYRnvNmV/f51IkKkMZUmajkWa2XWYrizDQeM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MjR4UV8N9k0UfhY7OL0Oxb2mwq/nITBrXYb57ewRR2z/NLsuwS8MsyHA56Z5BNiCalLG8Zl1YIslyQiWDrAlQ6SK0zcxCndJgPU/t4+/yVq0sDim0vBQAn5EwVp7PdU9L3SoGOQyZTzzrsSgiNq9Im9BHGMI9hCaJBYJjsgPD95ohezP3QanZVCJqR7GjpxO4W2KBhNWe6Rj2K1MqeclSgtv97T1pJS87i5OZz5kSQU1M6j49cOh+j7NLoEL0ymWIFPlscndODHUVeACMJ5RtF8HuQknR8jHRzlFNUU3PI1aAYbc1DdLlWvkq2a9qVbHT8OTmrTvcIuIz4BtFVbN87F/c/HHGsu1r4oYQXh0MtTM9eUx/VmSeYClzAl29gnHP9oKiArd0uqs51O3DKrM16jvneVlG5ck", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TNj5SfMX6pjOAh+hSRbAVrrlsMP4jyaOIWxj26TTWiA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yKmfs1OcIMJG60tUDFwJa2fMOhiOjKEHUQOojoRODCl1RQlEPz4kL45IZnaomMTIONjCVO8vLXlgVJlO1WbS2rADSZ0rBuK87MkswGri3a5RqxMJQ7PeR04166Dm1xS37LayNOZM/aaV360yfnuMBxFcSywd51hreJCvzfksq8MLCJ4kxbpdiP47h8Tss0aoDXWqBYPH8p7qaXRMvdjAz2eXotLiZ0LYXSOYnSrHXGv620kiendTU3ci6Hvz9AGi+gTzZ3EAgCFOQ1pVwMIPmse0NIy4r35VSvHf3AEvnjrr3JDZXK2CHnfnj9RMfccyw/SMpOnxCvcQ4VGhvkd61DVzrkw/MprPRuJqLGJUtxW76BuexBF/OYyghClyh2MyOltpl+ruSRKiegWEamnp/ZLI/l9qPJ65", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TOEuCrffIzW3Z2/3L7GqqJ4chc3sEnEpWgJq+Axa2a4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AyMg2g/gQRF/4Y3mgKK0aDcUlFWJUyn4ZbskkddpsWqIOenNuElx8wOlm7p3ncjI1qyUCZAlPIWo8mznEQKZPC9n2w+wScMccILQTFbHEtzwLVNVieSb8sYwrYO/KjPqkrVlydNeRasQzUmh8UMa5NNEXpxZcFwoWapthVFaZ4SetVo2djpNOw9GT8v1u6NKB9KcUxM3u2bSZJN5DRd1/KsgxfkFe2tWxs4CUwymM2MHMwh4FUBKVKw3BuMvynctcOTKS1nJEzoUdE5yN71a+/XE+0iDumMrk0hNbK5iri/dL73RSqk9oeceRnTDchuDEvWOr1YVa/y9v4sSUPhRkxw9CRSYhuoxWz4gG68fD/Zna+qFckkB0Z7lKFM9vbiRJd9SiwinQXEHgfiwS38MOCJfGB6s8Mdk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TTOBGtBRKrKA6dRDZKg662XdlMwq3I9zrGVgfG2WqGs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s1AMBOfgYmMQKzWdBz5/H5i1qO3DSosCyS3Y8Tq8NPhszGpV6CZNdTa5mlEsh0xa7uZsep2rpZBEXV9XaMLnB4ThGkbcuX7L6O4Fz1DOfD+JAwT8GANqLqXu5OuzVvT+41WimroBEk383FclXZmEdSZZgDJqJsX1kg7h38Qht9kpG8SbLKpidy1aDappZG0fGfXnWKR4+d10Ph0Y2zNcYhGH2BXI8iTWrL3eE4OJ1+xQx/vuofchQa+DTe+Ttl0YJjKdPo/K61WsLdCqe1TBBUtsTXTr6+yRc0zAK1HgPytc3d3K8L0vctTpYVNoyDeR3sCD+dYg4ikceVOjmSRwdsDCthnnpu8c4N5G80Xu1VETC479iJtJbjVf02k22zSUM3NeVYMJ4Dvel62od/pJil/aFVIks4dq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TU+SEeB0a9R2NZiwB7uoG/h4CZMCcwhS4BrThV7NEbY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r4m3ymBanrJ9C+k9OawXfPWa1+sxiODgQ3EGhfaiH3MkzlbmPFJh7wlk7J7HfMTOMN1wnSzhq9DDfV2GzkyA6ltdMo4eXdKJ2ge7iMKV9jCigWNUf5/NFfhhs9U5K8GAD9lNo7xv/1wPlkRc7meVKEiNg7jSRXAUPp/IA2rsQR4UCnhm/1Z6NE7N1oJapG0Jsj2dCciDkgJGZb8rYNTIS5ee7Ehd6JTX7S1b6PV5upmNff4iavRn1t8HFHWt7zGKcZm8B029snTCzftyqvDrELe/gRz6LTP8t/8qUgj2P2TUNVCxThcQDu4WIzNNb3mWv4GolT2qmr/XD/BMVSFUzSNmxDv9JeQ4VYcu9U5winCAWfqJJdNxgaLw8WCnfYZyvKVH04ETWhPT9qO7FNCmisgkyG+dSkCF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TUCJaTRyY+RG5cQE4jgIcVbV3IyzBSoXKVLP6N2QipA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ioT+uoNjft8IpUYioNHCUB7uKVDATV4AHlXN7HQw5n4H8j94HcXOtADrr5BdWMXeQAmohz21NDEBHFnOfUKePtRiPPKIMLGFwCCKPI9tSwmWMCLF2UKQiiqdfxgrh1Wym5YxZ3+i0buEHn+imxsbd/h/2QID4JLluLOTk8708gjLO/8nvqjJB+cCT5tkQY4WL1UUZ5GMD/NrcuTTAivKMPpMG4I8vvJVFHyxE9WPPHw+HRQgQAqujyyq5zf9FXJOvxo3hv7RtRGa7AAn4iiwqv024Ui6n31F18Vn2uL0/Mi1lIRkC4SLF3lJ0ROqP3P0KXPj5mcCQeFCNakZ+E5OfDNom3KRzSOcQnYd/iWehZAc/fVW08zH2Po/WgoKSG2kRhmVf/88azYL9GsAGW+nN3wKHd+lA1O3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TVcSc11/8v8UVJ5j9zsGg50KU2d7YjkT7+TLKrKRwOY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1xo5LLh2cdQ/Cd91gv0E5ApFeVJm7qdVRfYmzelxLGUJGg7oYRANqfLS9Hin58kOfWVoNY18AbVszgnanPf5iWlosVyY9RB41a9Sqs0gS5fitBbjRFjE5wiQ3wX9tNqk1L4hQHTmSakSm4p7gsD57zRL5cQLrQTObp3tKpYlOr34Xc3d0MAw2xAAddx1Z2eNykiuoL0s/Xh+62yeyWpEreAsah83fzFhw02J3fVPZs24V4CPAZsx1CbduG67TflDpDRWsszBqqh+x2aihgmKjt1n/bAuelp3JI93KCzkYPgIlxLAHN137mqfze3YFLAVGSkwVv1OSazlnxxw5Vufkn+QAL/VC6Jaj9/AQimqD9C0PRPnzVDfYnzTtbQLXSJY0ZaQOryqm71SB+gHVIIEO9nAsdZ84DHw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TXhNGJ9Q+KN4oNnL34ZB3MJBClfwG3KKeTDW2/fnOYM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L9YsK0Ir1rMwsOQXWkKBQlDJbmeGWqzyPQ8jp0E+3XzQHoQAjKQJmOIyJ5AjU5+CHmuK0XNLQIwNca4vt9XTPEe6m0xXVk7JFzPsh1A1BU9q5Ec0msQ4ZIPaanWwbxwLg7yknPUoKel0zVkXccCrSMSgf/NDiF6iZwlT9RtsPia0GlDQztw6Pubh9pc1+Tg1Nz9mkekqnICwRjcfs4Y85vQkh7iBB36NDJGqVkFI2eMYXPuDHroMxYnYJy26VxKNaW7AQ9UcDUW67YClH2/CEBEpapk0pRK7DgViBt/ulORdHeOXOWAmgFhqNfL1kVa/hXcSAT0atfChFmKor/M3DPI7YA0KjswKRw/PTpoJ9g1TnD8f5kSpModtZfR+t7z310jrxlloaybmyz4590JBXifSaJg53c/f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TXlYMY4scF+pM3uxxeDxib6iYAQ+CF0d8RkLXesNTuA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yOZQaidiCyG/iR4NLbTLX8LTpQX7TeoVF6GpcwZGMZK+RAQZP8zHSOrTdNnfQbFJSAO4vAIMWZM1ihqhfM9Y9d6xZMpBjV5BTMEQOuLZkvJaCJvV2rx4CRfbGMYcM8I0rF8HOPAk2eTkufIeaK983S3wlqfqfRWKG3WEu8g8rsn7P6MZXmQ3w8d+GyF/OHnjX+14d+bCnxxWmzY8mgUGja+N+QlCQDsRsFH75MpUjvXTVPkbvNCX4j9Sx8jBSyhjNz671AT30EWnKr2L4tjb1lo5BolyG/hg5ft2nVYmcTexAcKEmDFE8ST7bK9/hGJqVNpok3YknXzxiM1gUg5LDeK68CY15HVAU/q+UuW1xv45lyxA0uHPcttpOX5jlUXcEyQRxsIRwrANKHofHD0X8wnJe8beu5Gx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TZ5VPw57NCk9RUQSPG51eAp18IO5gC/yMTWE7A/YGiQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TOuzHP+JqSifBgz3olvVul1ozsZpB+jVbvEfZVXOA/smKjJBhz7aqXwBIiyyTmHo+sBm2e8jQ67x0e/Tn2Wf+/U7beNXaI0sINoTVoYI+lAtwb2Zo435/8eWGrO6X1oIA7qzN88miGeNf1k5o0GHWSTOeBGmM6GVcHvr3K0Wr1sAIDSe9uM0xSarqGU1aWkyfqfc3aD6eb9lwoNCBvgveo8phZ+QRRLF+X5G3r5ZV6pd5Hwwq6q3eAl3qZYwmKZ0RBEcmFc/ujsBuBGNfGmbQov3zA/pG4T0cgyg/sHQC5MSI7etu8bsg0lOF3hPFRbru85pEnAAm3oUH75zOHhRj6Zbue6SkIvUWv3isccDwT79urfiZYP3/uvIUPZVfAsK7ahkLmGhvyYPDQDmLv9V/aVXGHeYzsTK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TaDxwIBntRfIjsnZOSBzuLp3VDnk3y58mUH/CEBk/yM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qczrcidAiufxNkoW3hj+BvUWi6HlG9fMKKp08yuwPofBBsxMg8XOBiPu3eBMQ3bLtluKGwhHOnyftlhg2RWmg3a5d76gvwGsnkbzLBGllLD8VQbhv9XyWzaSMKlqgMst4sv1UNZ2wcKhzAsOOq5wZGigLIFIG6ULDCLIglMTXqXLC0RZW+oNGf/9u6x9svL1p9zpgKvo29GHRIZAfyjpm9x1oKnoXwyZnshNMWa2Y4y7f4JFUvdmC74/Nj5l6Yv7jMuisMhVypU1ywvfauRQthg5dhyzWm96DQXCZ+J05amb4T1THx2fFFxAlBlOpCu/MtVW+Vr7aXcebj/g3xnABT5PvlpgoMYsZbvuXwD7iO5WjD11BpfABbcpotXaxnOL51xnyqZMsg8CdoWT8GNyKj3bqWJIKyfr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TaEE510mzAz3hdznJTK96iWBCeXoj3hT078MX85M5Tw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jvXIqIub5U/ZpxJ+Mpl5zu/V9mv1fJMVF34uUd4UEiXl9xo4qWFqZZUHcov8nsnOXEc28iXne/ES4m+4fIDYpGJN+KAmSziXTEg41TZBoEHff6w6k0bbm7R1H0lLLvyaWMgVq/KC65A0C7qbOMuRaYHRADLuaEzlbZL/btXfTk3Yyyf+aRI1fcEmnx6kzcjF0RPz+J7JhP3PDqtv1/fjlO6ajoERi9fU/+tT4Hbunf9lXHv61Ob+OvIpu1nWRqGynCz5k6kdxOygYWAHneZB12YkdUVQ0CsSX8OsTBguvM2eMRCLJ0QQXR20X4wWo4TjdR7SnYp5wde0xCfwgrlP3O9kk1uLBPHP8LL+jw39zrOaDfkvhFJObCTJayBOApbk9Y/uDE//WQuIqn5v3K0FxibUIxDAIbJD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Tczje27VQ7Qp0X9uoPaM66F9VufSCfgkeia3h/MI7fg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uDoG0+2QSf64CtIDt+YXzkEHhNYtW0jTnWRaNjiuvTuIn9Tcjq+e2F/1UnS9qTdcM3SOrmBN1wIpKLaLErf5dvjKsZZ2xAqatUz0fCwP68q4iSZ8ARE6J0j2fp3hvwXxps8JXwkEz5qn+sBzX85vN951IWH3ANeQVaQe6ttH92tutEI0T+HnbK+LWPhVaKDiXWSeYXrveSpmkVa/9h3Jsqo+AqLoYDLkw/R78AGyBNyEy/DIIuNNxWR/oJ3R9YhtDW1oXyHVLsq7wpRWNVQHh7YR7b8BPKraZprxFFxf8RDiLaOFahwqqB4sjqVUGKyggEAvofhnt35Qm0JOoFVmv089yaJTh1i4cW6KonZfrm2ardi1IR/oHxukloQ996QY77rCVywVRsX6nHHwIJRg32N1EKtxqwA1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Tei0/gManED4h171CyANXUckAG8ackfi6plblov0QEg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Xg4aa1m0Cr/sWlqHfxGdysiOCg3RtctWImp1sjIkCIig76M/3XUpnaNfNsVhp15MQwNyaEN1lh6TgrUiyCjRcCdxVYWRWceuQGD3Uz6nFX8zdMUiwQNpdPvwKfkD+Lt0KHOlhIHq3zc2H2dZ/KhJvjSrdHPjgIn7LOAyM/X6m32cQyhew0SiisAraNlJv6NEzIdw3B63UD8l6VnW/hcUE13+ECuTnvHRCbKoATX7bVmeKdYz9MezRMZSqme6foIY9TsRAvSCEfeRr6njkITSePB+5nXXM/ocuTUJXxGaV6uSJqb1VqcmaLWJTQsAyZzFOxNAiboV7XKVABrtDzKijoNw9kqzoyzrp9rfkuqArw6NLtrY9dPxoV84JXgBd4Sm0i/HStk5kQ0SdSKQ9hKbx83hXl1NrCBy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TfeQamk5t2fiTMhRAAGfMMLTepwfQ86L/tc4EXV/u+M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RXw5QEcjGGHK3SOnV5RnzxhTZx/ghZE/NtYHMnXPBrd8jy+BAbgNTBf0T1hrYMtd6UtVOg7rCsUAxZgTx98UFZdsg5YBXGQi5vC/uAym21TVmLSWg8sX3DH7pMwPcXpcVIswaJhQDkn8f39i1hoF5PqY9BOWScs0SH4+3o2j3NkvSLhu+rV1bI/gfpkWg4KAUegjG2OH324v6KmDGU4aM9T1gKJ48yngYpiX8oN3mdOOZXGHnOc/KbZ+rxpQqpktZ7slbA6MR4BrNCPGM7cYUo1PKH6k8JgiVeGXF9XJnsTOh1/Hc1hrVqgHvexYqQ+28shidPqJWhu4fw/yXB/WZkT4MaCL2Y5Q3ynPuLePVUPLosp1eJXoPkA9EScWQszJWxR/bzwFcDuZpSfiXwWtqUT4+wnQzM19", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TgWTK0Ar/9L2tnOSMyUVuBjplqe2hQsL4+vDVBPQwQI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QhV8HvClT2wG2vfQFlklVsJcNwYAgqSrFTcdkOVixSYc+4c0YLPQIKAkegCPCqqVWej8O0ByUOa+lc/rHV1shpaamnxX67uncLw0H1dZSmShcGPJb4bnlFCb7mqAQMQLXOVokHWcWdlGLXD6CJEp7AIUt3Ntr24JlY0uVProMzKd9GFT9mFz4qaycVSOJu0J6n9XtxqYaskyNVSLfhuTA99UTD0mk7gYzNSNi0zmDR+Zw+0HJoxF724PUkGbHZGGqy7ekXsW8PafDTBscaAdHN9O7E+V+35lWcB03JnnUwBBKS6zsKRxQyac9bzDt0VhCldSBtfOIxFHJzOWwrU5s9pA3AiNcOUOlgAJ1yrqPp8EB6mDsHZyktLsLWiv0MlCrHo9gT/G241/GYsWSTXm1EiFgJon1hgN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TgX3wrRLcLC7ZBIto6ha+CO8rqML6ZbIKVJw8PZ8QPo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jLLVpINT6YUL05hygZGoTSHBGiIc8LK0dfkeuJw+Hrrj1tlQkCzJhgnx1cdM7kYJlTKs3+yiU2iKfwupm7J3wTob+Tna1iVecXybUfnB3MZdiJXM+COTtoAPwJaNiTPd6v6wbhEaKIGx82mxyjSAcgVGp0G8jPN0/EMuH9RvtUGummfwIVTdTOs2sf3seiZjVaH+qyPH8YmaXJiDRiZIIejrNSEP3sh2q99ZwCCLfJbN1k12AyNiv4N+3bu6tn7u/UCbSEYy3TpbIh0ajHUS7M7LTKyfuTVJb/7gkhmk4XujUoAlikjTqVkNl236ZLt1Zw7uYN8aCCn6tG/ClSUaZSyDGHajunI31eZEE0PUfP5/MaMlTC/2lPoJBkleZgvYVExAyD6k8gYYBp6ECCOu8jIJQLY9ZmjA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TgX6sPW9O7omztakWkCf50kvfRn2CljzDteDVbUTj+M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nGhMsKH4BEVYtwutIdgXPUIw9hliuUiMkPfuMoOUAsJrlT9rwZ+uQ2g2cYwzFvzn6dqgHXhm8kOlC3sRIMeF3+YqKW2RDWYUAZbZJMu6UcS90YmTY21x8raD7cjpetJ2JQQEVkOy7fbbEbBVeKYUt2/R5nCbW9R3OM/UuetI2WEjP2mocja0toYi3vXupShhLRepDrJE0g/7MRMwoTUMB4n6Q91NnvO3sivtCTcpS94WzTEmm/vdqivgHrkqFpMfmdNiihvuaFFCg9ruzw6hNFxYWkefOWKr+veuWf5HLzpjsIpgHdCuaTfCIbiXO13HqV4U0+0ZmQcustaQy6XvqVgScL7Dtn2suIzolEvqdgbzenItTdlTrOzGgLGfV9fFjfx8xT8coKN1/UCaWPHCe2oY+ZPCwIpI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ThJrFwbD1tt8Nde+RV2zJNWdkWfhA9zbm5iBSzgmjno", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ib6rs3nXkEmafGA79oduSPEbnRNCUsMMWigeCZ59XF9yFnzy9l2zbFQ/hAJ6zZcbbUT57bQNJ7rM9U3sJSMgj+U4h3IjkoE0cIg3vKVxINnai+jNm8m/+x6BIrcLrTx8HXpwVZQ8xdVnZfgq3DChp+f72tb3mVabwvgbDny0oE+vvW5yBwkAqRGmwim6vaBRfwngcvBUIhpF9e7xKeA6CK+prxOzLij4UuzL8i7B5+3HSKxDx/PqSCtmMHJoMFvcOPslCGkQSswHWz/yNJzDrp1ACxnpQeVMO9Og0tjzHzFrAd+buBtvLMSlXkmTfmEB1C/yLyye0qSQhFoQljPDWkHRKERmNemcC9z1clK7A3r+cylzjfU6CAHS9jvSWNqZn1QJ9Jmm8nGLcA6O97aflJiK7HfVaBsi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ThWKsidoaTCswec2mCbCn44WEgLQfrE02FomxADGbZ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ImBe0iXEqe3SXF9kJZm7B93ROXNnKVZtD5tJ9MBEMco/WzC8bLpEnynoOquAbewxTH+QF+QJZRMk3/lmaPh5B1nnSTsMkCJYmicfqF/BNY0aFQBNcGw/ofubMyrbt9jmXJMzKlAE+B8Mzk2bqADQ4X11i6ZwQXu7n4vwVndC7hD3GgCY7skDA+O5bj+egx4U9PS0vF5yyHEYhG5zWOwUbXU6I3aOkrRFZXiosDS7j7+Lxa6gj7q1vVJqlI0jdejigbz+tGdgpaDYNk2GoeMSU6H/FQdQH9+EqS7Y3wQOHWl8KA/aS1Frju2KZElhuGtmoPWhGyNPv9SmgcWFyU88IyDdmZacXAPBXMKh16aHfi/2MP5ISAZNMa68RfRb2GqzCf23SweP7iJBedFzfSfstIDqYg117+eM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ThxugoIj0oPUbJ+PngQcEz6SOucHpuN/fSjTeOD+rlU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mhGn2KM6WhpjTx0ydb/q3nJc7BtitNTGIyrh2G6kQu806EEmkyTxxooyy8egxJ2lOQNQfxupDcdj+o/yixzDuL9vaGtm0v1oaA1NeK9Y/1QVkMW8yObSRnoi3NGyUZBP8k1StRVMxX+tiwG/cmf7Ed8fk1XMPlUtxVr4kmWYTgxY3lBrxJouDtYRP92SOqYoOkOEuF+H2BKSg+QnfYE18WA3WQ5vyttiThEz58Q+m7RJPcT7B/O5NbousTn83+0205R9O9tiZTUu9WuImDbcNx11l20MmpPIy17nDMAPdLpllJSCwp4X32N6HS5yEwwW/h5Xld6RsF0aSx7vp/GFpBRKrSwkodu71FM0X03Q/uC2GUzUk6ZYqIs73YYb8SS+1bj7NhNGWrSKE2MtnLw6fBehVjifgblr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TlO+G/S74oLTcVjuH7KgbvprmHzB/PC1DWrcnYez/pk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o61HS6JdxhZksJTl6JU4nbJ8GFtY07gWMirAbJjpuqo1ZcXzz4FbuX6AqeiKu/UC4BlS9s6ve2hlGyr1rPpZsCcYdeZ5XV1E3cLOrjnKLLJWVr3LRpbqrjBcyy1KOGzIo0HbJ8cMldScB4rOFB4tUKadt9BDBZh0QrcV2WYbug/0XYFqSvBVXWpZuEJ/TvjToWA0Aw7E2Lu0LsFPb7bWbv2C5YFyTwie5jJUmu6jg8uFcKCiXA0ObCCSBE3OFe5zE8daABV14tAfkNQrqlkiqUdBRclhVKisdhwzHmp9PqGjuFTy7GAWjxQuCtkX9ZVIOiKXg8zWGxE2Ur69uEBcfoeErBKLA9FPMkdtcRm65GW6jn+45gKIOv1+EtGyY1t3zoU+a0kWhvKcQtIL9AEa9LPGLe7OvXRU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TlW07NpzNj3jNBqiBN3hu6GoJXISWIX4w5EkIyPRrKc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "13sxUSYW/dn0TsQrRLqihfRPqOcYY2OfLh+6yRi20NHJ0s3JjZ+cM5C8G1zLxaPIZZe16yrp/811xxrnhhN/a4wCicRCxP2813tKS4aJZT5jvRRxhiwNAPSCgWWn4c/618wgzOLubGJLfY+0RSVvxbXYrmZnxuAbZKGj4ttfoyMmD6m23O7FlDKFvsiXHnDZLWwpSgwFGu5H1VyurtlfEOlsga4Kld/ML00WJ4gIo7shhJ41PON4t2EmVuTd+DHpXC2zCqKrUQOddkRcV+vbQRdP0NntXt034fZSlh4hVGHRHC913Am+uIbtoJicR8fFLaNMSmqOYBd6OFTW7XfaK/N0KjZpV1VsoH10JZDVrKhknbeWKTGufzFcdmSEA0pyaIUbdB+hU2vjctJ+DXE8lJEco0SGy9Kv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TltzLQlg/AAhrUT2n1VZXCFCry/O8apb3M26/nqp/60", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8NP2T7DsJrzyEaZwux5ZjU7EsJpm9ld568DUOuJ4SuYRAiU3F1GUjqSuryLaKyXybDYP6NU0I2T0nqma/MYDZQ6EMAVYuUfkGUQ8GWeUYvXfS0ufRyRalxh53etYU31dYxYSsBNGvML1RjFRrfKPHiN6UzTh3sNEPKKQ00ZPoe0IQEmBahvdLPuofS9rOKyM8y9pggaNDnK3gPv+3tF36JUAYPHp4LY/3BMldRj88gmpps/JbzeI3sxCY4G3feYcjOmSCy5UU8sSYT2F+IEGqy6pvmjQ9PwfERNXGFegCIy8AQqoqduv9J6QBIQs9TxBiNpvzpYXSdAICvOXFDEXledhEVQSIy9qyEj7I2z/bxHjW85G5XpZoaRM0bkZxpRW9sRaAKvj+XHiwunS9+GM/ei5X5GnieJQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Tn3NJaAGyvBcvtJpQzpoExnj5rZJTLSSL0LpKBKE5cg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t0DBFIaXeO19Zcq50Em10GdrqUvxd26CiZ8DOEpIdgL5nxDcYTVWBXeMxNWcdvrHohRkbCS+yoK/XUL6haq1Wti8PSX1ah0OMdFCzI9Q+k0D8fP7zQRNIebjZt5SOZAvl3Nc91ezKl3vovmHaj7Beeq/8bFmd6pAUOCevWPsAxg336mZ4Wgh9M76ZQHt+AbRmRCp5gSrBFdWahOJjxG2juOUW2AmgVwtiAL4a7lS+mrEeeI1DQ2zHQNcZX9CFWXq16VZnSgGeGMwfIXN82uZ55+uIvdWUkDA2b/xTJNXp06TYi/nnJiSKH7zHftVydxJE0lDtcL5+5UBzWKQWj9CY8RtIPzy5UE/t/4+ha36F7+QbzYGcIJvXgB/wkjb5G1fWVMP80CPO9+PEV2JJMG9+EIZhcrhUyK8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TnPHd+lNJ93g3VmzY3eQmrwHNT1yRVVoZBuUQhvqXKQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "93gEVPg2/WHK/PLXNDweYpswjRUb74lVzlWV95tdZ+cQqipqA44nA4D6T6Hzz+XDYplF9qBxQzRPNmlx4lIyqowQ7Lr5VL+q+Jge4noV4zFOl0WK5S5L5jsrVoh8iPrm5pg25sUeZDS2k+73ZudQySMlOn/AY8GdES5IDmQ9FvRocOhmxPf6Gxy02+RDfXOShxEugzlhKYIjMNHMQxzgSnkxEC83CwlXThTPHTvdfgcEj0fyNXXf1i3Hoso2AfedI/kNmVuDg/WxjUofBdjNcDSPgyoCuiCH5MT/omq1uanzOMzLvC+VM2uFYBXK2LaWFQK98uiTnWIKbbWkp9YPZ/mUGMolu08zOs2FscsHBLOH0QqWrS23J/rkKn2JqFQX2x3hBrdjI/lYmf7uywrelxD/3CBMdqlr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "To04rH+auwIQcm5aJ54Ai2lFV2Nlfrlyl2IE+P06lJE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CBE34vHr90DH0OvIvT1t1PJjv7IzQtgSMa/gSIIQJmXYaHc9gPLkgrOoi99GjHXl7TVL3AIynOumC7phE1J4WkV4mMKolgiFquGRBJan8MPo6ut1WFPCP4U3RKbdgTqHriZCJmTcmLsaktOgqF9qqCWbVfxpXDVyZH4eVWllpOj4NZ0QRfgBj66ciuoW2AMjGQfhkK+e+6mtJZB3a07iF+fZqRg5BwcyLQZvAEl5u6n8DF3v7Uu26SOY8vz/Os7OhNQOU8dXR3A5acfTho82GUp5rUs39KnuLvL0npgvJHvi79PlTS0w5iPd2bIffEAcJ3xbLHUaQ/0QnzaTrE1VmNFnLAwxOosImoYhA187XGeRMZ9TjzHjuqyyiGS1QZxJ5iZGkinUpR9GNZ7rPe/rX42IZp1h6dhG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "To7SkKJ6aAAOhUhvMX9fkLd9CPwPCKVA4yn/H++lYCY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Osi7OTCv0lEylVm9AyTrOcSq1pBWh/XaDGhmBEe62+WSXU+C//76hwHY4hPF4XiAvP6/TOhJxEy7/NyAvvym3LigGoeUx2JeIUO8e8Kdp3J3720cBdDN0H/c4RcrpCDg2UD2XIJZsDdpZa4S2UaeC9sxYPNfk1RXkoxt69IjiVa30AaZZkjC3Lo32yqKsToo1Ruk2buzEL3Mvm7V/2xdr70iAmS2k1Vk4Jp7L2+S7IeDwJsK7dwB/xPvZI1Rl70+wbdGOQ9aQAwVn6jT/Z6st5eFvOPGCrWieR7+hV4A9CKH6dqO5sEU+Jv/ctOwoOLgjVxgfspfojkBZX1cmHqvW9w1h7iOUxc+BomMtdDlGrTeoqoYFxboY7VYk+uuHxitc1QFQSVrUBNfmx9NAjJoYp5Sah3mGg45", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ToPuOXjmmdhNvbBSUfjWGc3+ofV598xUinNX9iBP+j8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9YKFzla/ArJhb2hG8Xc1SOJlj6L9ksFak2t+/L3AaurJyQoRfDERtZQq5zHBe67dJmnamC8KeZ72M8coObO0dhxUn/g6qGPSZuwckCfMzzVHIvpsnta9zlVgq19my/4xlh8eiXH4CMW1pDwVTw7ALKQ4TjgpiGExkJ3WEly05TOX6LVvbYPOzsJUblfvmN/8s8v4AOro1P9kj3UmpDT5pwI/vsXNllRF5f3Hp4Yue32Onw6yzoCuE7pJyr0zCC2+Ni6iIcQTQtvqy6P67yDM3JFzQVDZkf1mo5ABQv5/3Geo7jSY5H05D2aZLBkb/VVU9hLI3bLnkfW78Ig/8+TUiTB8eHVyY/w+eLyiJ+rL3bBMTwOwcNOhkepzb7KngWBSvzxOIIA0s4P6WLGfqWRA0yAG3iGhkwy8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TokwtIc0gkITxXwJMaqBrchAWgajYcUGVy86t3S8yQo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0Wxuy+ODg8/c/Qkdx5YWupIaYpoeojoe+fY6eIngErl3R9OX0onWZHIBPcwGrCCJLRCea9kDbCSUkwp/aCW/vQHkX2fiWEP5JEIK+JsclZMT1retVNUuz03sJpmv5ezyNaO0PGjKuWfaUqp/TFRRAbaNS6kESJH8HsSrn9RtDTZXR5CmMYzQGPulbk6eZKNhJnjWbfa1XhCQxLmjf1mTvxo4DaqatiqOPPdpUj00J/KtO/3ppgJtS6IMnxFeEh7NdoZe19qyeprx0Qnc796Fn78FQSZAr1sYIE//+ktAQKJUjGyGmqb+DaSf8llGrRuDnsx+iEHfReIKrfjEbvInXF4oQT8GxMtOHjARAkxp7qMU6inQYPxvnA/mLig8/6F1RrsPfVSYPpRXUGVPJs4ABsPSpuvQbxLn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Tp6UM2kGAg96A5Z1T/Vnck/9i34Pwe+qioni7QKqUWo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M7Hc90p/6oa459DtHjzrEegh1Oj5WtrUrUL7Ly10uEkMN6bud6xYG0U12APN+Monl0DwcA0UDSwUQLeZyGXGK1wKEXRXft8Dr9IhRyAC9t1xacHifd2FtPtxhkPoHavihFcz6zkCebUkkxM0Z4HTFXUEO3dTTjq3acuyaxoLM6IXTImK/vfc0W1iA5sVS8L/KZbbfVPFP7Flh0oLLc0qam+vE0/dwJ5arHHjMd8yOa89uwARDmebcMdnyHfRj9MV6Zq22EqsD9O7u9BoWq8lG3SJOxcNhLZN3J7UdRSCKyBv1vPN+2KomBodaUpvAoMHK+BYZG4u5hMKYe/pXF73+jnpQBSIHivBvwei3Y68qLwPj5M0y4huA4EpezQvEWEyZKzzObZe+DGTNQkIZkxE5rD+xnVTMOiz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TpYY5mNBPYj9WvrQFJcUGPsLsa6zkmWxU1iD8zjgpb0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BOC8XwhV5CIgLA42cG80gcpZ9oYf/SDb/wWcil87VNKpYEJKhwAUhGwQ6xlFvzAz5DEGucX5mvIi9alzbzRkfpOeucPwLdP0kR1ntVlwJquK3SluMjylWuhlsPWiwsWRFTgIdWLv7CYE2PRDzAAkZgyCXJtrtr5OxVLA0Hh7ooUibVBb0mxXyqhnXyM1URsgKN4sPIeR2drRkPyTNNmLs2f6V26hSsP6loIwHY8OgOTDjVfBe9N/8pcdqGiLeFEc+emNwHqabaKUSKtUTUEaAL/rAydGz8EKa3YyItvzcb0IoW8ZqbSx63FDIn9qTuKLjL5yXgEMtkBsIPBvi0SuO4pU2+VoyhKJ6IPWJ5MNpoGXz8G1wt3PB/cyonjxXKPchUyzsfJBthM4BYk9sI7p6Zi0WOQUanYp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Tpg2L7fcXAGK/h3Wsgy0EdkJ5Y30xnao9LF29kG5HEc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S+i+MgW3KwK4ghpdtKY5dE97XMkfYMlpBtQudiUWpqCmVIFnn5lAmVpBHkFPn7LrmJ2pJIJcJO3BOI98hDzk1P3wXe/caFUWex0tCUiAcsEW9wO6xb6p1UedxXcVPunAHdkSoSA1f7fl3AjQ0xJZghOiA/f1DqbAliQix7oz5+Z+Nhwfk3xtDHobfYsjA58H+f1As2eE4IPP6NJggsKF8tgiCukKhkZHAktjIjGRHE8hxEuropxePaRiS+60oNdn/4UBKeaSK0WZiY9Xu6Lz+eTYM7JtnTJL/yDONFVX+exVUS5Pd9tBd3ZI9bN3T64c6T0paVnVs9shXynSrVjVs2Q3KHptgEfKB03ZnQ+F+mVlGk3XVFsTPQR+eQiCOvyUm2Hlhfqw/pziy+OhYgNC6c2kfLKl5/bG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TqWpMoWCrdinMfcqu/njBoKncjVV7TVwFPQlMZA4/oI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7vF8Er518OGQhNJuepKHIthTlaBHXSJjPTl60AoRnDSvWkOyRiKpO4+q6XMT4BnxuwEE7Qg6bZwySi5fKtOr+GWk3Xk0ux+onhfl1eXuW8iIuKB3mIaq5OlMheMVQI6/5+HVGynbiAzebl45nkaHsVtwRtDMnhI+Phi+nWDuO7q2OkSUxAkd0zPMYCFcXG4fnfXmB+iVI7/YVnkmD3feVxamAxbtCBkJaUv0ZSyJr88TqMmJ/oqHX8Aj6cXiXI9xS6hVmcKUXGZOkgIVyty6UEKGyk/neAo7si37iCiiIEwGSwmepQJZJQF7BfFyoofKB5E8LRPMVd+/nJBWlNfCW44CoKwYq7QRdFW4fLfWHK+HdPFHKVKKqjBlHPTIZRtDoMYgZd95pzoUH8vFzOI8HUQtw2cnyA73", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Tqs/JHbS/CnFAmqZbz2JVBxOo+jzkA6yVkcnFQ1j2gc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1F/BafXXjdhKFhwh4ON5sWtIu7FjFxEqbpSsR0b/RGjWNp8+Xe913mEf+6nxecFReZkyLpl6lsEO6j10Qh634Y8moYpf2Kv1VKkO9QmUDPCy1/0s4LlTMjRA9T6I/qEXfugOActpb0dLOSYdD9Z8zx7SkVE7lgh+GRb6Wm/76zoLUKtIq/fGQgGbZFiMcVHrNmBXMrR5iMxUoXCuPkyJRdX3W+3qP1sTf0h21Z1D9D2Y9Fj7WsKw4J4kgYe87hrfW9hmgUFn3hp0lxxPEiR7MCAfD6A3Z9zJeD7BGWx7LvQQXzlIDXsusX3pEUfNDrqSdAYu8VlRfwsJxxiS/MFobMhMT/8Kpwc9ad2JD5+Gx3AI2Lru9U5Cpqad6jLpIFb+rH1f+XFvkNqW50JnqO9QJE43WrgpJZWb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TrdVMi10JtuYxODVKHLvbGT0cJCQ1aX71mPAt5GRWXM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zRGW4ldre4r1RjWGeFJRnLm8AnurwCh6rDcNnNBFKFA9amt4ULR9um1/BnWXc/zJpJGo55LbL0AK7VMokSL4wEmToibiU3nbhozOTxiEy+KsmKFV5sQ+G18nSSnkC8O1F/ZvIvq2XltTYTn0D9wChHcGKB1GGaVGRSK2RP7qsZKrS2Ut7ml1fKEu/VZTuUhrd5BaA19/5eEuINPAnQIfgJZ2pAasj0KbP1N6mkVjFjp/JOGQGZNkspL/W0yTyFA1HP5nN4IyLVAuhfbn8mxBOSUTJVXns/9ub19NH6sODvMdbJrUiCtLVOU6GTlrYH+m1rvLROSB5/pZxx6CYsQqYMwz48yIjLrrMWg3k0yqjMl+ihZdBVmic1uNxhKY+R1z9/N/gPav6rdmFHJyxEvTJH89I+KFoMuA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Tt/EKl22WwSHbM73AewX5/rcX93HDQ8rPUumu6MzVzI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zQqt/YxSMfviX/4cbh1HE9ZnxCVJV8SKmqsxiPMD5jaEi5mD0MV4H1GjKjqLTnbyWkxukx8yyWJiLNpsqDnNJDTa86HUjYRSP/LFZgRtKodKOqK0dfF6wO+lfUJQtgG/qZuJWBRu+xiGyRZK3eepwdzDjYt1BGTTmkysMXuq043KIBF0mVnGNnh6moZbzjtQxAsbp6dBS3bTJ433pw0kVx83vWWu6GLfpYkUAnZ+C5dCqrY/ZKVkCaUuzm6hbOxS8LZkEnmoZTMRAcwBkNuZFG7lex7sNkuiIxujo3eTckPsWtY0ErpxP5RA6ElR+CdWRp1g4Y+5QkYaFmbGXWoePNG258bHZjfhtLVsCT9lNwC2Wu+y30eNrpmBIemxfBiYJO5KOWXtmGLpKlMkKQrfB7+N8iXmK3Xk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ttm+noitB8zLnkPP10wDP9/DKPGJMCHYTFQ5Gfy+rZ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZCQiC3nNaC8c91rQVCqFF+Q7blkzdiAxE/7nyhN0zo4aB63MVnCVDeEP67WegKx8E69Hm7dTpHwe5RnlLQfscmRav8a3ttJNgRbWZ9L2TcJK8jmskL+Mje6LbZyVVFpnjlTyMgsrpLWNXxY3h1CfVI+d4scPyCJa8bznl7kpxaSVvch6zkWs/RWG2ju9Z5OefarJ9tPAhGC68zyg7LLT7uJCQb5LGI0hh3awN8HfGnIigpjiEjFY+/YrNGwBiyfvjK3+I79soTJ2mH8D9B2X9E6HwZY3oUwe/lKKMILm/Rr/TPU2UoRWkPFlPQrxBcRF3LfEuVBJWCNhKsEltdiFHbLu/10dWncrT83ZULHla+gShq8yhzNxRL9eFxwLg9bUmjdznEvxWBxCVrSpL13zxoP5uM/YUoJ/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TufioKWzWhNPeObPnbxLMHdO6quBUv62u9GCH6ecI7U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cMLTyfpmO55tF+nrV7IzAAoFhLa7TI/4DIJ9j+401M1P8z0aS6wuvZQkZkXT2CpOMfGyVcjXiau78XAjXXsmrus8mcVICmQKST5bfoEituMvV29F9altXByTh4sz3vQa0QBHECoZIcKR28UcOEsY4pj5U6MAYuCO9dbRfrroV2LyXUIA/DTyuoNleaq4j9dFT+xmPhfNaoX40BbcDrM/GmMx+7Hp+AkEfZIZhCCXcBycl7TQetceJdAxanNkm3Ccf75JciqF3gCshY4J6EVGVTO5OL4NFOlHI5j5b19ZspnXzfjWLRHVbQjWltwfR1VniZNS+t5pC//ql4YtB4jLh4cL0aKl5s/JgvPYCk/C6ZZ+u+u+ivCp2NAPrrUP21vBMlC+TUbQ+vnj0sxtUheiraruI0jEh8zZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Tv6cspP5CCIHa1Eprwtxh4QiZxIIoBUN2HFKIRodqnI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xdCE2SfklA/kCLQabrQjCr799Mv7ez43lG0QvYoejep5wZb10CsktAst8MFvcbYzdTb8jqciXccIKmhosQabM5clIiOhvg9PKtGWQ7R/jYP4mgiPmELrhbRziY1xmbK2EP48z6sBeABDo8CFTF9bJRmgV188zfThonhvCjXNhUoAmJHuVhamgEEW5ph0nUaA9HHEjrG/UONDxVqvrR8K3fNYNtSrVxiMVV2qpyByWZMRuLCSASn6hY14OGaWGGhaiTawH4znIiTqrokln+TpcMFnrPd4zYOIsXltjhzrmUKbUrtd/L0ww/p1iRwX3jWrFBxd63dYPpy8EOP/efqA2pkWmGk5WzoOLcETO/ejRCmrfwalZtQxUAis5vtiMUIOYH2T4GSsVGPXWykFMvM1zHAzKaOZNDhn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Txd7L4N0cQsqN6ZHLPhQ32iiEFLzfYIv1gMr2LwmVAY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "le48TSE1tfUrgw9sKmyx+6p8dXYdwInzAUkqFfT+boh+Cai3vvhVDqBakkDC4yWl14jvpFNLIkkcRK+eE/HtUOPNn3CtV+NL0ngWTgTVHD+amTXkfA0Nx/oSGTsxE43SveNdz0Fj8odcN7MkOIA0bL8Id33fTvIgZQCRXlKFYFC9+MIJ6L0Wc2cNXobkOVTNZ9vAWSGrA3vXvupeo8f/5HE/urrqQCjvt4AsCyQ8+dDww8T8oboev7EqQlnAgP0FcPdbwiu+IlCval87+qYwP/d6/8vsi+Rfb91GfSEpwZASvw9k04E3gAHrGJEBfZltt3b35GLV6AJyG1hFpo6hmxObSv7bKRJGEggvbiVqG8PJj/JTwEjRJsdIJFjv+tFMub+7zP4ubbk/a5HqkxbwjNh7ZqL/JDac", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TxjYQ779E9H5VRdPpngUAK6exCkaiUhiPc3m2xqmIJM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Lxq9gKJFEqnqXMBfMlr9cDrj/Ogb0rwLF5E9EvMzqahlg1COQxHOX8HX/X3BNI/nSoYLbs7riYUHE5XJnZXAxkbEoL57UqTBp0kymDReEik/1VDvqKp8X0kt0MW1GwtZuLdOq/bVwaGE7yVqaFoIXoXy/27AXjTtr8MNXCAMcOROYfuLcE1vLE1Kx2K3aTYBA8QKr3KgoDONWGf/LAVhu4Q6W+YHIh/PfRQMPXY6hS2JkY0+3x98f+nM78X0COGMOEdzIn2whuK7c0seNinolmMS/BqJp0jOyJ6LmbvwgyqBk7bBcwS3Wt7I7j4lpYlw8y3c7+O68EI1g5z0B5iDdz6JrxqiTM+oKGIVqDNTvFdBmKzHuMMOzs2y2xTXtDU4gCHSBWTTKfA+QkBBhjPywAfHl5nPyZZZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TxsCwCZahD8a4vgDM5nfLjXCDriS37szXjnZod4UaEU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GGpqb79hxU2qQ10o2jqOx+qEl/kCauve5PFznXDHqnLlaxHXA0V4lAtTKrcsRR0Ee1CaSaz9uv+qQXxqR+GvIIsaIX7LyjHM2NkJjQBLNAjJWpdO/XUb0oVVW+Q12K5TnXnsAyZ9hMyTFoRBm7BG6h9kRm2Yn4INMWKAlrKWW5CQz074BGqLDKPs7FOGUcUj8+eyb5LYkJIVzzicDMD6xCcbXTVAbV1mJJBgrAfKC1cUtXTit0S7Dv15TRaP/6ZF2zeOx1wb01fL2BGMXyk329q57zHzydPsCJBZLD3K555RQ/WgpwXv6kLx8YiDVp1tfsw+VhlqD1MHSoa1YpHnWJAgrYU0y2soOQymt3rr7Kie3RKewEg6+6NI8GEb1hw+kYvYnk8FWv/+vSLfQrqdxamfRVbyGReI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "TyiD7JWUEn7FBYwUIOAJCd9htZ4smfnkdS08xcxkvI0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QfkyZaOc7bbLB1khgUfZMjytpohm0RvpU6eFzDA2mjzhld6UA8+EZwU3Ic6w1qEq21tEzp71VD8fcMA+wJb5hNc2IBbF3ykZdoW0Kv7hpp5/rTM+5Bp/r4dZo+X69daUjNeGIQRI1Jzjek9JaON0ALyhJjNfsjgwsVg5A11QXy0dE4gmSXfSKyCNBFsyUyVLdzOcjC01RNJQy11kQRugIzIwRc3LRTaQaFsRkp53U2SPv7L228CL8HKUJv80KAeIuxMMrDWXUsfAhFSfJObnLnZU1gB1GmJ0hhdxiFusf5DaonQwbLMZPicJ8qf9hd61M8OK6+zWeddi336HF4pRm0iYClu9np6olFv+JHljkMtm66bM8dnl2KhiiiRL4w+I2yntH4M5Qo5qzgBVyLpQb3FREYtG7pT6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "U+3mECFzg9VKucUWIyTUyBtA5k3BKo58wtUcq7j2Xzc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cIVwG8TKWb0SwnW7i48SPyZRO94zA++hY5QuP/NW8R1nP8K32WLuRJ7BF6I6MGH+4b9AEPmW/SG4D+n9v3RwDXPEYz5eOJ4keAjdC7EOtx4GHDylSU2RUz6167vCiBnN3s/HcHblOwhiYfB0W59chzfK1EETY/heoFTk8T2UH0/QcZ9a+xdwq5E1kqqEp2n0IB9dIYFD3EMEcDobiBxJXbSOsqrlKTmAFQ9oouxF6D64REreHeAGQShnLB6Z6aVe4mLFH5711a86CUo5cEk9gpRY9hwmN1Y3oO3KFQfFM8j0QR9DWjg3WEinI7NdeGr8UPqJdQH0DFy0HpecgQKsRwm2FpXvj2aWgxPWMaH0QTKcAJ106iyP2r4xMgaWa3DhrcaSyonBs8ekxB9tWPj2CLi2VtY5vfcZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "U+NBFGtJYUJh4kovLsjc6BjYPQg9MalKYoOusx4W+Jk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xWM3+IZw3k+J9FrzIRh9ocjWSUI62LG8kmstfHa0ayAiPtakLvJ7NS3sBF1pmPWE3HDaXpC2UgurH9wvMfxshI2Wc6P7KUnD+gQLefTQcy0FlPltu9G7BB48y7+BGvqPsdImZgK9eiJanuHJexjmhcHvB5BDpwopqHZCObAI8eYMcFG6qZ+Lzj8PcinmVn2BrrJsZplmo9+Tid1ZTun9r47FpSqMHXzIM07Iu2spTy0QHn9mqhwpUhkDzou0EKjZ7VR6UHSo4VY6EQPsXAIUOlIl4YMTztlmfWY2oPAI3aukqBo/CCFRNT3E7j8BaZD5+pVaf4t6IhWIa0By0rsVH5I/iqg5u2rNXksLIsG3Um81BjYlbbe89EgWwm5VPLk7Uv8AdXQqJ2EVattOGZ8MQwmiRnoOnZ5K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "U+v+kKLcnLB1T91DpFqA0XUwRbZQ+W7QuWEGFdz+JhI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1G9Ruw1OQW4YRUzGXMrkVd0xUbltsVQxzfLeZPApFxYV1jgpgepGhjE7hXa/fdV5beAC4TXFxAerlJ4vy8a4176XK+FNpHXTMZgr8HIxCgrGIrwasMEnekLfDEXPiWAbtzP/wKEwMR/SN0UQjuG0eohXEio6bsaSmuAnKyMl9vIFm+6hiObbSM4mf3HwQ6nUd7XjfC0nkSbfxSHaL7zWtRhFMGr8OstvM4D7avTsKc8yS9WV0e+thaavn8ikHdW8WBJfBVT06qbguU/mYqFESi3d5XGnmW3eVAQ8gI7iF+B2weeXEtNtP5S/U0NxyaBP0iTqaBxMdaRoQtO9cxUqqyIY6gOvuLaSTyyAryMD3f9Ml/nE8d9bTpadaCLjshGOC8NtWNgy35kGLkBHtC/K7yf86n8e1jrt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "U101dHF7LsjlaNXJLWx/clyoxrUUJ/CoHrP2F372vwg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jbwJUZWwsOi42m2tyqXekFTf00iWDbMyAqtYfsMc8g0GjisJnY/9LIFU1EO5h5pcqAFcnCQxtlW7AnxnV2NPUPRoQl/cMpQtuMD2SI7x7Y79VXCPGtRpsPEF7fqGrXQC/rT5ZHBrw8+bt1F/QBCSnedzSdR2+NJ2BRloLBExgtdzLcvlxVe1bNFS+M9GkJoDZXQxPsl0wtbzv6V/WQ2S5udd2srUYL7H++0fM/xPhxYFlhf7GnLPIZdQwniD+XJQARjzUyGeJA8TWIeJgUMSVbceqPTaznGC5U0TOiPzpKZDj2aLni9au6YZccbcV3shz6KOhVopmVz9pb3J4QYCHyTnRpQDcMhKrtcbrefVWV+b5iXYjpWKBCFhWWT1ehFErYh1QKxz934RqnHUgGGFFZsHyIMQwWlw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "U3sCfsSEuL67rKrpv2tXJRdNk2hzuF4zefaddfQDowk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E04fMTh3PABLcBRrTvebBEpimstTuXtuGDVCBbG0BbeAHxebqSiK26BAwutI5xGfuQnTZjuiIJfywBIQoNPSdzSJzGrf2gJ7Hd5LO3AxrDxw0a0GrRmsM+xMlu1mlPkgFdKuML1dE/73jDxKHbdY8mvierHz2s91eqTk/OnEKEchZDVTuLVUTks2c3M9zfthfLOo5J3tSeTrj+vj6uB3LF3gSgw0tD08Jt/kf0t/NDCJYknJaMzY8sXd96fW7AT92PKfuT04WzwvY11McSGClXI+tzkDQr6QhV0i3bLP3yMZ0VAzfXsFpW8BvbEYIl2vUhvyePcuShc6P3x3x8WSRcN2tw1Vz1II2KGUeaQ5de3XMQIkhcG4LaryQwzdMBooYzxkKxKO3nMGW5vlmJMcCkRkUCrRjgYi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "U4ZWTwhc1QNRYUkezWw2NulytX83TGggQL0WJfb5nHk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dRG7jHVHcLfR9lPrg+vaMEqU6rJ68W95xBvJSGOy31c+9mMI0cG1StfpkWxjiWwDHwhQ40KCuYFAfCfLwMItSPGYD/4A4jib6Eyz+4gZWzJWDx0UQFGQ9vi0u17TEDqhce0Z7A0BCkNn+obmXEwOha8YQ1mPXglOkm1XtqkotrZEsJXrZRktDqVsiLk/VXW0i9p6Sg9aP1uGWU0IK47p3Gqba5k2y2+6tOJdIsfQuHO6eAckDeBZtB7Q5B3XAEfBvZAsb0eWBidjnZr43vVVIlLpELmjFfegF70YCJ7RXrygRqGfYuugi3QQwOTL9Ye2uyVI2UMg8/eXaLCh8NkNIUuzFXoYHNhOmBlhcKEd0rbyQuKWCx7XMzYeYq3zSoIFeBU3A7koYCF8YReVK239cQwAu64YjJ/W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "U4gO/UsPG3wwLqaZA9mMIAZoLOZRgg7O4k9jjzRGJdc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s4SVs/Ys42uKY04pIiyyjZ6DedS22w9owetFH0jUfPpW1DNB2a5wMzy6vrPp6bAoDubHhTbpZ/UkUIMf675HH3zjuVb4NGuylcGjGU0wTSZmVLhHxsxSfGvgfePF5FucwbpnazrhT5lzcSzpP+cq6SNCo+Ie8qJpEVk3F+lnr404J0veM2kFkTDE8cvjsa4EDi+DKnpbNPwzn/NQS+GNU6l6nyru3Fl8kK6Bd4LdMR9en2vMDU1W2vmNkuovldeOxfUQcYPwCP0s0aHq2b3EDXKG++Iqj/e9xd+SKURxcE9go2HU7AAWVV4YOHU/R3Yj7Nst3uYfnbdu2fOnVzDeuPlUQcMC5q2j1hPjVw2hE2LgVy068RVgMWdy/02+DBWBv0bB7/LNoUYHU63F49viooljfaW0OXMR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "U5jh1/LO2OiQvKWWFt/aaTvM2q0UUJw9UWoJ4XtpJJs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SYUNO9G9jkyz7Bd9ECjMowrJNxy3RoDBm36Kqrge3944/e87fG9SkKRrFPH5t5clHumSgD4Z8tf0Jf0ayct5bS77vAABbGWrbpCwwoCCDXJUP8xh9gHZAwncpTJIdicnzVyegQrSq5ymzPBLsAbSSa4W8UqBWfFcZB6Id6Q3hklyoynPLRda7OCiW05tkPeBJzqy/qzXFADhjgQbrwO1eGTI9vF7tOUSM6q6gC9u5VMrCIpLiFs17un/DT6x9LRUgtaXkbsfP1YzanhzpSmRjBB9cq3Rjg2aBdWmydQnLp8E9YAt6060UVF4qanEp3VWoauIdwItM3Go/VLvMhceKEAVS6MH3L5RPTh8UYrOYKFxxYHooYClJmYo9c+FZSTWtI+POTZlho8jYXZkSokAD8B6mpNY/BCa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "U66/UoQyocmqD7a38Yr1smu2212Xt3inM4Q/yQZP1UI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kx8Nhe/vGbKsziLt2snRSbwAC+SzPQpNdOwBUGJTfJwipCKAUneoWVjoPkB4BQ3jjN+feSEemE05K7g27jy5hgDl7zgmnDMRIqnp4aXvYMmbOB2Ea8yeJErG+5S+Rqml0PL4T5xPeAMTKuPJaBJq6yM5e97FHUNhw8SP69BcqGqbLCjzb9qNOEgNx8iw3/lGDOs72TmmVhEpE1shToROY2vxgwDk0/FC3NHJk4kb65djs/+Zfmw3BsrcZDblwibLD9vQ0PLOYU+XnVzVT6RGkCTdS2KahAt3f3XsE2oCu4vr8YvzQLX4uEH35WHqT/7BTv99FscxJUnzqX2eGbKkpLxU+Zrr+MPMw6FtV2XdN8jqOCf7sCqxXLK+O7jMr/5suIe7fyyhHyRsL9QLTNQTKs6VklGTg4fP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "U78LMjaMeiRRdHbjFkSmfVLrC9jbEghtOiOCC8zimjc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1j3Br59aaTYZhzMK1zl7zvBjzMQ0YbeFgwoPW0kAzoHsSWrHow+WPQ8wWVitlWeqSw25Jj9qLCnsQGdhEMS/dUqS44xSQjNwQi/alAYbR5LW+7GBZQQ0u/yYCBOvtjUCuAdazz23Ye+MdoezeD12e0gW6OHlkauiJyAGjiFzVkNcGT/4idBXdm7vY49PHcXRzN6H39qeP5yXB6F8Zf4yrmI3KKbr8iIsaY2lJmZglY/sYUfbKTUVdLvrV6bbcKyJAHWPTRz8XqwwGBKEK0GhiBz0HRaYXJaDhKu/gtpCfy1FxDxFDu7MSuubhiMI+tjW3byoUvqivK7w1UkYsMFa6fmlC15JhKK090MtAwMRvMw4FkJHtXX7uC8CtV3H+16GP0w9jASMQfN7wUQYuf0K1TiSQ6qOfZ16", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "U8RXADlBpyN7HKwY2l+L00QXmkEruv4F2cLgjA8TmxU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M+Ak8QG6m6txFZa2aTJ3uIBxxtLBeYlWu9SogZ5iq+XoNp2NkPMx4L1FbDuh2dpz45VzhfCiwWkZXhgyi9ZejeXtvDw7g800nRt3RYsnM6tiZCTCxl54BYKSQOi7dI/hqGWIkB3irXb5uZgIsxaSdDPBEdFczNCHiYVhKBv9R9aH16+NIqmgCwoJLuZO6EW+uRw7en/fjt4nlHJRv7lOLShYExPjaM22G2Zu+tRJB12DUcUeeZuL4XQloxoZ63WpGwn5Dwk+YYg5TRZicKWywbFdaMIqaSdrzJLcZRmqoHDwQHV4BttvjUkw7JjE9Wj39hDs4pVPcnHKDmmwD+/VMpnLBBkVdWzrp2ZwN3Uahw+mkv3/vc8nlexc8ZTA8/td39oGUXG9LZFDYUd3udyrUcPUMaOQ3rVk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UA6ZpTGA+VZqvfmgiiXTMGiRWjjNwVK9A/Isr1W6RTo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "II3LEa6CR5Aazq7xmtbfu1NCyWQDFWgslOjoiNq4Rto7YvHA/uKeWy+HuqKsJqNDDdeDd/4G9ZJOjdSa2qJQwEL9rMplmJZeOIc5QTvCgC4503lKg1e07mhR+v7DkXysrkJXQQUt4g+VXtex2nCXw2Mv5w2TOotzHfTAvORSkedSamG4ReuOE9a4lOCCKiPuFVDqiadXvtEWwyczcJ8OEK+mriIC+RWeKpiAkCgCHt/un17Vi92oMnEXFPcDGQl2eEDjvi3LUgh0fJfc91LC5SLIwBl/eVmT28IcnaxovUAUjwYFQDtYds9mF6kmGCxGFVFWERYR8VqGKYTkP67ZSktUGi59uHHIbw0eWNn76QV37xioAoOFWPaeoAjlrP2OFpu0ammkMV7q1CAkue9wGftkkeAVqQ3p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UA72WLwadrdp+d1ZBVhM0LUQ7HRiiEdzUW/IwTY4NNE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nd03u6thsBKE6ZP9D4nbkY6b8DkB0Xz95+t7oi5pj8HXdFdc5OK9xMLc0OZtC2/irFS0UYiyqhW47pXn6iS22TIt2zE1YR8suf/TJGar9xZHIi0h+6k7Ta3Uw4A8pM3t0r6HzazqybfSK0eI+Ct14ktIK09Ij4gbsJb9Xn+XzTqicK5DCR/QgnQbw6v1tHa8jF7MOaRN8WrhOT7ilZYb2uxW6LTdrzI63ftf+sTykPERu41HSoJAEO0J8ao5dwLWA2/9UmBU5dH7zTYFrqkPJA6IGuEaUSCQs88R4N71BRxtr6yk6gs4KdsrZSaOVhfwUc2XphErLSB5kmLr/A2H6I7KVkstNEmL+gq0lytBpeXDivUQv0xgPmUX0IMNrpaDfepVjwwJ8clAqt4kdQfdR6iq+jjaJPHp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UAgm+3EypklXAtcvSdj6ewDNqehKWyxAgk+Sope9urY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YV9/BiuHruBmU7yvyBmwvOJfm1AVs+YsBZmNXlx6dS6taJu2+i3kkvHHIENhr5Ql2toTr10kKQXZFltA1m77iSZ2e/4oLmqcI8SoKIlPwrPeVwiezWri19n8s/aP9La1mdGerB+8uctsWkytH7hIydQATy34UWmd2Pq56oR8rh7rZDOf7j1JeHYFDwBH2yMHGjZ+LedMtg2MwK4B84aVPeOpok3xv3P7aLy+PCHq3L6WDWqrmP6cM4FbmQ6tb5bmqCU/ySP6VnkcD+PZOjMPqM72JLN6/Qy5zLHDM70N+7cYKPCbBsz9dCRAh5aIrzBsgQOPc+hOw72hiPlv9QrTnBks1FRsFZfMPisaVZ7H9n0tPcUvMA1xK1YsNX8mnimWa1Xto8KRSxG+wUbB4vvuPl9I1oSBDVYy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UBjxWjikZtbqzir9HuLtVcfBJRMV0uyTnVlP3g8PM0Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "szhQUnz4y87oE27DnfME9IKiWrWf2YaK3eQD2k5b8ocuqo2Vxy3WoGa++o7SA+V/TPnco8VgmI6DZImhRGUMXBgF+SlWe6gs58UhOfs9td3gR18d0rj8raXqQO484wRRgRAjdD4Po0tniE2z7iRrYYb18dNERzRFFRicu6RK1C2Sy5ZYDJvtBU21Czz6EQ8CJTk9Y5KfbXeBxkaajwskJLWB+q68MqvpaNpFhacotM7XX5opGussh7vT59bKoUAgGGRigDmM2Vj/z0SesbPBxLbQ9mQPaIGFfUW/kYEhsNClgdLlDKlpyu+YdgHjo8oyPSyiuM++qApsW/oQAbIGd/tt1dhtsuiRuPLFXrr3HMzHMwfM8Qk91PApYIYxjt7Rebhf43oIPQSb12TUmYe4EHtLUtxGD1rv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UBpml1id7sgGdcGClFkDwoMnQ5wVlTssYWEuo8SXHjk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mynqTWXbN715W7I+kqGTT3s3cQQD9FqaXqGdTVgWbyFLq1iSMJzmOu7PquJmi76qUJ/9WK2y9ZwLkVR8qAadhCw8jQ0Vp6JV/MunvoKzsJtXPGne9r4PdHxC1eHnAE9AS0psnfuVlGoSk3OTlRG0XqNxW3GGchPGTXhaDYoC1UziNU1NKFpTgiIOXiNr43fllJY77IEZDk/LP34ersXhSzNpuJH1KJj4lKYLXt0wQS6cw5O95hG7xxrOX/fJwc43B6ZzRY82V8LcpPJnIOwvwZGM9AdiKTvsUD56/jaCHfas8z/KD3guuMmXWfYd1jS76+lcPMJMqZMPPb2rwbqQ5FbIL5QB5x9cwbEkgybQxDutjbR8tTseSMIy3FgDcwE7VM8QeYaR/sj/y7Vmzd1+HauwsTK5XWTa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UC6LkOf8VF4MYe422UFsoiE4ZTG9ABazIvTEauduY+8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WVeN0mlJrQ3YXF26O56CMR4NHJe/uZJih32GYDvz7QdU4iyd6xL2G43yeqP4+iPd4+bVWUuhDR7KRDR1vnJwgCNq/91RI+i8DzRD/GFRJhHjAeYETH4zLPaliyXKkedi0tvZui+HkiHoTi4XRLTcRUKuxmzQoJYQ0NvD5O44cQ4SQSSLT60xSLKt3F6uIgbKfslCe5e4+XQyF2XUqLoQMgAdlkis/2Aac7YsRJ5mZztTNenwVsk2Srue1haBzqG3y13aoQ9uS/42my7c4bu1KloHnMB3wHVwVFyN7s0obRw95Lke4QWteXYWaWe88eAIpq/Cu8Mfxgxc8Uf880nLiE4aCv3N5w+bBZFK/fnNRHVblMZF9NMP0iHTdLRGNxBXmQfNsbl6knP5X1zjIDKEqlObGOZDSSSw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UCYAXRTjOhZROwxHIGQ04YLM9CZDyTvxUXbSXaScEOk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8IjKk0V79eLISYHbv0ArNqPbLjdmrxafAMrXBUrS0lodjtcNX9ybY5VNzWyMEuKLFkKj+TSj0VwMkFDl5uskyPaEAKira/iEoZil81kzs5epD41DLXJwaZpXkbcWH+U+UOwh0W6U4xmCNvZt8WsnqpscIat+4qBxwt6yDwd9zudGE8xYkzhbGKL2BpSkH/tFa5bnHkf9f3mhJ43VAgfDs1fQwwkM95WlO1/XxMUij24SM/QMg3zlLUV4pmeLAzBccGXvrsR3XHdX82rSNk1KZkYKj2G1gZm8QpPsC4CSwm2aF0xZ0konsEz/fbtkoa3C4NtqUx2XSSLEn3PMXb+8I4K/pQqbccLRoKxuVvuosiTDu5acKRbxcboQX86lDYuiKyPoRhvvdUUaABMyljaRH45tlGj3wimg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UCnqBHHIIo6m6/Z+Jre83Bvcg2SspQuI5SoDPbLvMLs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jdKLhPgvy/EYw+4M5leGx7J3agnIDw1v9fzjRXHCtcpUi7vHw6znONG3qytyHOdY1HX5n39namPJYH59dLsqjgnZPxyqwIkAhptKZ5rkLpqIssdiNnzOSJR2/1vpGNVKA+UHeo1iuIPLdZ1NfQScT7gCW7jhyGZldz6BdAYngltGdq8tBmDXXr+2VFq6fw9kQmDcelL+sXwpRF/YeBEvfHcHVCYcWyR5JjbNJp+zET1Pn81lAzNCacPAvwBmoWrSWlmOnihzpFEjpwq6pC9rikbkUraK8lRQfF+027jmqjK60hF1yFxBq5FTQNOSBSnwHjp6LBPoy3BpyZ6ZDIzg26MVrS6theciFB+wQcC+mQBuiCDNbRMIntAjIrtXUsq/k7eVQo/UeFBAtUy8ZXJv9z7W3N6SRlDS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UCt/ZqY7NGMvaU7jmJug6oZKTIhgp0yoT4voJa8JeBk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MvedWap1F0dEMcRAIj0HQhVdXhomP0gZ//8sB3GGAU6tJa5XdrPGtlaMbK2N68K9k06H4OeiX8NC2ZbXmUQdDKr7FGYFmkeETNR1g2Ztl8Zw+Q2D/d1iYIN//Yeukk5p0y67Dd1AFDR8UYLsMT0UB2ilMDV/tFl8VglnBe4bLY/36WbPjtyTJK7nVjqrO/LKygZOHj7ZFea9YqUh7P1l4zjVEYyhLg5n3P0ZRy2kQp6qtXFEP+1O8abrtnaZ+OUl3UUzLQH7hYL8QtQ4H1Q6RudandfNJxBL4JUBVBI0eLO8e/I/JyyFuazWAPUBQzrcIb810oSfwWcoMjuxGM3626XNb5+B5Jfl6Hzle652SGAi9/ZIRtH+WamFI17KPv83YHXKyKX7E9QAgKFSYKHF4ZMO5Iphdo/C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UD+8sO+oWQLQzWjP6+tKenJ9hS050RboeAPACx7VQ6c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lEeBHa3BOZ/ze17l8Q+fQP+GqPbdstBzkZM2S/Ku7Wt1AYslxMgMW+1cLyjgawkstgPE1OjZsu8vHUz+6Rek8eb4fJTUo5K79Qao6Yx+h7FtyUZs+wIydWgCvbqPa8vMeUi8xC/H9gKn2U5h011rdp1RWPUVzwzGj1vLNHsivNcu+yEfIdQWROUSLLB1RO3paQ4s90EQDzgYH5cfSSnvmXSsDu1WOSnSypOKsdlUH8DZotyui9ptDjRZOw6aewV66eqt4mmnydfyZrnjQzVZA3FEsHcbGa4w2C7EFlqKQHaTiKxittNJxYdre9AIICZROuKpBQlXObPymnjAPQJAq1rKXDTM4u5Wph0o8m3s/HykImn6J8+0uDkYNrZ7mNEfacIGE853850mlZMeqnsE/bF4KdKbNCWz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UD7UkhB8yII1iJBFC4pygHEY8GeazYkF5IX26rjQ1PA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bzLc61HtTNTM+97wWHNjEEcJ1W2Fsf45k6siDtMajeMGo9iRXRpHO52A3ULraYbFjOSE5TdanWykMorrQpZ/v1IfuZkaQUg4cZUtwLUS2hVTCimDsCqCvKw+A8QiyGKv8AbnRupie3o8alrhIAGGhZd9s+OaxBBc6RnPzNuXgL2xJXaEjtrTffJjIUoQB6rsq0lsdio5L1+0gBnaMCnZsOPtKjswrqkn9OIcBPwkOonqtUIfPSNPWQTA2TYaN33rbIaJHIKZbpjkGYp6lhGj+EOzEws0duHm6e6ETrjiVjPxqUaL28YwBdTrB0lXOiKMyS1JLJmRb+66iPHyiAOUdSA6kHkdhviAL9/8YTrWzAJy3cn2BfO45SNy3y5Vhlk8drtpnkZqGQiB8G7wCQ7NEHGXwXnOV0U+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UDrmyQsGxf9FrrVuwmUaEORtsdx0KhGVtFetqWUdyeU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fTgP+vl8+0FUc7Zb1T73rKHxbQcWcLs9V2y1gT75UTH/YpuwMJOPMnwFzdtMCND0LvP6Qfe+ZkrlLaFgZ3JJtKtCDVGyvfHXkmtXo9imN/kX36mMj11emTO0DdwafKUo3DqKvS/KCaBYuV+3TIxUb1ZtRwssdOIorgwMpsBYrgTgl+Y8DZKb3s36khB5QUtLxjumne3Xla2rVugwjLSIa/0OQJX6Ielor4VEOo9pbCJnAplfEWO/JLrEBtY91zdtu4ZJf2UdKvmhsecKZNh0bBoKBp3YWpLga1hVuRVlNs0FhCrRMqKFcnK6emyKHYzrB5lrK4JLSEDfNSxDFqoD+hW7mtZSZSYcB6QHZW6dMFWvpFVRhkFdGPWtjZhEvzb+iOOMglY75y/erYApT6wscBBfF0oQJSL/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UF3c90GoP9e7h5eoZ3QdbUvgNA/q3DuaCZWJ+PYgIzU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5HOlVo5MptAfTIV6GmI7inXRVbAGr3EEYSfioimLST7oHE/kRaLHedey3ohJq80SGNJygZdjJBlG9ZEo3/39gczTX8Ee+GzqTNgFWm9uP7mF+vtr+6hp/U7mWFtQuuwo44eNNVjQN7MZeO112Vx85gd8BBAvCLRo8pdteqW+4F2J0YxsepdErM4z4PGIeBfQvmiyTmmsH33JHpFhTVI+q6RhLAkD87hm7m2wC1LfpTBCuYwjsO+089HAIXqJLshgHI3YTJkXgTwaPJXVAHURrL7Cko1a2TOl7IX39Bl87Rv1ly0zi98uDoK5NoZ1uwT1pAERsowuZ/vfWbn6P2O8xEtDP6nTpOGMgP0Ge8rtv1Tp/6ZBprhoTI62KcyYYSFSmCeRBksv84xleaF02VMsLnribf4b87sL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UHkAEhB4EqqwizcNHD49pKQfBVjiufu4m1psCA8YCms", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M8aiWwL3LZc8fxSKXC0vrk5k1LtTeqj2vITT6PwgskrLqc93FJJLA6ujxuQi3HTelAxAwY7Fakkv1L/wnT4mFUZfFIP/mlN9Aj/mCp3ptLpXHFj5CUvtinQdNSQEA7opM4yWWyGo6dtuxho2XYPwTp/QVKvKtAbPqnadKbcveW6BSr/MbV9gEGu7QKA/HTLcISPEvsoS9rVoc0DB3BqonvASw7TVmc3U1rVL+UkUQ8I5FQhNUcvFgHPhnPasvnrgFggUn3EFRAtA0UNooY4rNJDKUmwDpNKtJpk7fwDbBsOJwtFSnl3vwqVYTpNEjgDEutfKmyo07BTRaeVu32q6gi/hi0Ifs523tP5cY3k5GtkSjdC4L1pKx0VqnLUwLoselOqGhNMgsZWL7zPE5FdpZo6hk2Mqsklr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UIdUZrSU57z7gTxOhdfrJucZicWml7XRdZjIC4U1XiI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gzEpi6DI/1VLeyQY3oGyK/slFzBL6v53osPJ/SniJGlaTTgSbaB4F+ZLt0pbbfw4yjqxmFcrxEJAEK7oD6yIhJHViehM+CbZLyz20qu132WmMKVcgWiGwqZDPLCh5GqFuNBtMXS/LK+Os+83QCBIzBI96UQV2WeWevYJz6CPns6Odob6VV3dHKGSTuFg5d3wjQpSxjT8eI3lPees4rGGf4+rnG4rRDZ9Y8XAEakJ3wZVLFIOFTd6x7DJkrLJP9AlguF4nUzcFFElWrk3ISepZHmlCh27Kt4+9BC4t2nM80SlzWO5Q1yMq1B+GYFfCUnwVbrgMvwsiEkLAbKSO3AWX4lczNyc5RrU+fT3ZE1KzQXxWP6v4UXa1QTJFTVBoyCjI7zcfv51C3M3DmWGi1Xtn/pi95+ANnYu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UJg2o9yINvkId/EqtoR6GFo8D70XXAS/jiqrPq9PuA0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QQ3kU41MEfMoZCKLwulIeuMKH18ocXoSCWrHbD+owvthDDJdDF3ugoteYyvly8gostFOTRTdIhN1/Tqor7txqwdcEg2+zTv1+Yj5bBc2h2Fr5cqtqCnt6IzTONnkKeMYjwKD3nwY0nmvHVXTOpkE8d79V9AqYBXaJ5HQg519uPX2ZvVC2pPy0gZfcSu+gUzqpuVi5ERRarWlxPrfIrNrTKgJQvnM7EaOAWgfltRMxJQ4qDtGRh6LK5sI8WY/y/xAw1na5m3X4g7EEmxfpPblRPNtRcq0MKCVHt30wy9BjPLx+Vbq/AMhczRydxLjgM4pJpw5AHWJwiWDZQ/zV1rGOPXX8ai+TIKuve/OEkzUzBkjPUNg817ENBKNPUzWjXZ8J56itQjBuoHedR5r1+Y8+cg4ngxBDoc9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ULQh/WBmtcPAp/q0kfVu5p1qp1unY31e1PET0cBdbfA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "889UhXS1V/xl+JMOMwWJZIwdZGerfVMOxyw16sRE3h/JSiw3X7pJu92eZ3hQjCXjH9U4xOWNEqvEhx1/iy1PXIimnUIGgVvRJwPa1zXuCOZv30LekwM9OvpphjtyzghnSjwZnIvu4Y6/gdrlEzfywbLQWaeunAVgwAz5KwAUDwn+N7DwBGqE2yYIrhrlEKVjhSuyVaLEQYJnIJrGZKpwx1HVG8aHIpFw/a3AGtGKXZ4nuQcmk/UR0nPGa5YJDkKynS32I58/ZSAN5NUcRNb9duM67oDpR5b3aHhAw4BzPQWmBg0tSpYWPHR4nT23rqzX/Nbkrd94dXfcLbNf8XwO+PxN0JeB4bmWp1Dd7foqm9sXJ9CjoW7X7PoTDT2tXgkL/N9alMBtcWxE+rsGcw5p7uuLzv65Zymh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ULVTT2GYQDZlvg1g2aiZRN+mbojjkIw8fb20YIhvwKI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E88Id+ThXMmmbSFqjy8pm0QUorwVTs31T6zj/5hpKb+pIhdGmESI6jahD9pCAiJPFV1f/14wNPO/lKRsX2oeRJkFlNOoHIZxBcOAqEmL56VuolnUhjy2ts5WPkT4zQUATh5yJQtIJp5IbSO8HbrWvLxKxH9F6gIoRZVMgwFOjg95W3Xs7rAgLtF540KD6ncYnXwWBjoFS6/zAOMbChvLbmK7BduHLoYLgm8CwvqDFGZY6+tp8yd260ol3MlQykVNis2uTTOkrl7AaROftlqIUGWgzqxfuz9n6fCGPBpOxBTXoccjTp3Mjlc1fbIAA2YAtp9jCoCwHBpfFVLwMdt56cGuWHBobrtR2pNNj8cUQcdJ2fRbfhl1q+sJbb158wWDCO0eRhrn0KTHTxvt+tU1rwMF4jbfz4P8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ULWbjJUMjNwD84yhX11XmNcde6pdCLRdUWXDCKjMvDs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yHNDy8weYf3XQGPX4oNXISuKtzs6wW0p4qC0kWkUgtXcmzjTMum6458v+q0MSbd7Z5qAvjPkDpF9TEu1Crt47TbtKu44aSE3fLNmoIHlPuyU8OO7EbvHhDkOo0otTEVLgSK6Wzt93odo58r2JvFpbxfSdO9VSSs4/1KmvDf11qFr/9Kt1meAL6w5QZBlJs71wjtiunk12PaMACAjXd/zlX3breljL/sK/0sutQ0w3vsF5zSVQKB7ta7TfMrVJ3o/vzrP05edHC7SsqVvVsOb7QbcFiS8mkN/1dkSrm8QByS09VxvNg7HBJJwlUJ8yKObRBWOCVg4XgAN3tpw+R6nC0g3us3ZNTjkm3ALEyZ+WK/pnpp8MUhxT+cc345F80GS9YGpYuRfh3BB0UCdKLm8g46tA8z7bvCg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ULiFEU2QJvwvOw9FuxxRo6XiPBXmxCDP3Xpcm2LdE1g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "blHfpNTkCm2v5bqSC0zvwio0jecHvo2qSiplrIJTMLgV0lNJbDXEWthPoP28yoYdYsikxQ6j4m7s2aZvUBDx0hVNNjoDL27EQO47VS3ClIW6bLOetybMA6R516u8mxuD8lMX58k9Jkj3r6ktWWwdcEVFOEcABOcaOn87FKIuzlRH5pDf7QTyXCOq/HtsNR9IX9HZc7ntM+B+N37syNtIIK/3iL1OdbZ9/8M8t/ZeiV5seZOCaa7h4rD0ldbG5LyoBXdYn/GbtmjYM3eu4Q0eUFle4Qp/deBv6Q4iyUeI1HtFeRRpY8oUmz+nYX9VC9bf4+TUlzc7Ed3YFuFs3uWxheD2xX1veDKI7uVkXi0y882QNauwaobBfjnsXSaBAVfk3b9liBRXq4TcC4OFf6a7XpeEc122JiOd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UMrztFEnthJg9hI2HIVT48N2bKgzxT7y8taJhZDK13c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2Mq50DwxH0TI6R0tSjFV1daUBK/ZeABE/+/VtxgLa2Pg9C/FV2iNDekZW9OX1VQydfa9MDnrlaV/4VVuGagGi687bephNSXWXksjQBaJDgYF7iI6JWHuZGaay08g0bD1/6zp/chXsPjyiZyEf9jQh8CFdPLNE10hmEPojJc8tfjYO3vgpxMoa529ZxXo6mNpZQODnsKfHH62gp42m6bDqnpGgilkEj+Ss3vYc4miMBLy94iiK/VSl8yXHuAbv9DqJceS7BlaM4aOKWUgwHgqxn+fHPwqh+uBd/u+SXERkrLlHtO1ddn3rFWCMnZOWRZLAjUOQtBzRRRzf95QNxceb+sQPIW9e4qYfHsvzyKhsdhZWV9pMBa7PVJSdf/5fdtF+CPf3RZQxktqe1HpGZ1qpRDdrj4yuCFk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UMw98PK1C56fO0QcFolwZFrZRPL4l8+vxWJV6BvY6Jk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TWvNcEylToEm9jOKaKcOl8LSs2X7hocrZ9f6wcgHx5CCFy+a3nXRRXxQi/YUSHBdzsZstZnFcQYqCYQjpM8wc9zaEaGRCJjLG2+DrOLFSXWw/G7dT752ekeyufzk9wXtNb3jORvMIVaZCy1HAjOp2eD1teTFcOwlgeKrfKJqy/ibWCP4QxSl9nNath3rXcCSN/lIrjS9WMXGHyjM22HqD3/fIeCK7SiOEQZJ4QDmSLkvHhem7/cTPaOYSiJETkhdfNbCG+TSQ291F+zUtq3ZPSwBBjct1qUf5wQvcEPOvEmTUcJNJUv/7Cq4wQH9x7TSprjJY+CgZJnpdpy0Tv1zPOCSqCAmNaoCh0u50/zRYhi68ovbf1Mqzxpt0oaMY1K/J6nwiwSFzmT6DTtHpg9O+oaLYza4a0ou", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UN9p3t5QOekAsdA9vj/YBL+bp3qpkXPwd0cQyGauxB0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3kNsGLzuUR5X6jVUdI0iamL1HThhv8dUNjJdNyrgVG/qLU953EKHCzkt4UKm60vIQX57vzIm+AouSf5WrZYsRgYXdhCHfZPrBU7L2i3Dtu4NVrxysJWl893/jozIBS2dXkNfrNPau3dx6u1A2U+XRaGB8osZY4PWtgER+RXqZGwAoadhv7zPQO5xvu68JgbvW5trJwvM0jJXQ5c7jRSkajOUBY9NmQXd6Y0o50RGbuf3U6INaNGXKTpXOszDJ+QqvJob/+OBDJjY8X6tKOuuq6q7nnw6t19TrWa6i6pa8Vhi3Mcjrl7CRGqXzy8K4VGQYnQAIuSKlqYq0jZ0Y5nbYwL/CEq0zyuLviFuHURdj8IuOQIeZQ4RWPYaW4/D0PjJ8q8cyCgvYO0Axzv8Tfnoj/8UxcTSk4j+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UO2lVHx+m8glV9Yp3p5COFl2hPfHLGsXBlSwgZO2zPw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aes9Y1ZfFdXn4hjjiJN+NOfSSiHZuCKOSXa74sMgdkz/+bllr//lWtSaObiVmEcDSMWCE0kDhjjArDCaimgNLMzTUgjHuqCU2FZGLQ7E4pCcd30qQd6FRzNwRHBe4R0f5dempUoa1BIxelq4/t3iSNaQG0ixPrafLMWNkR61tUs/cmpDlhlYMArxV4adtn1cuRWneYChJps0s7L4MP4cAr3HTgNWQ6+zKIBkO9747/dwlMJFwFdmCMy2XZQcmnjszxT2l99V5n/ESMMZk+Xllie4i9VwI7um2JEdkw4xCBN4jIlYr8vNuHaId8tooQPCQcPnXp7rJDftOeUlYj0z5c4yCOzYGFHHIyG4iR5sMy4dyOpce6un3Q5HOSr9QNBkQlA8ygoafxTaHfICUdUSNyH0xgsgBa8q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UO83kUfvKdYgzPvdz3cTOC18imsc4ODZdU67eBXykdE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RYgaTAflzSOkM1zN8qNHIDju50QdKM9LZRxsu7wPJe7KR5wtLIDBLZFN+ytOBnUNQ7FyCaSWnLKsZNEPEJuGLfh8uUI3Ds1h9g3W+nLaWWVVEyhf6FvygRRDWJC5Fneh2pURD2XfDcJVULo8BOeLK20ZYoMIh1OrBe4x2BSrbe5IZb/7F3CtZx8fHT7+Za6BdjJZaMUl3q6+4wY8Bic/Rl115gt7vIawqHm1kjVhUvK5aZ+8oTScygp4J2YpiDliY10tN+tp5I0W5nIR16iy5M3rTmF0SAUjwoxDuEwxZUz/sUF0Z0ylBrIFhm0oxIoFratrxZQQSEmW52KUg4qVcIXYFFegr82YS9KPg/1EGbe0tc+uxshpLy6bY4DiTN7mIeaTVv29ssdFh/WVfcN8pYf7zlTlSwS+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UO9FVMM4TPyTbS/Yj0iJEwvF+1XbLW/N0HJ/1bzRR04", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x6aQ7X+qxLvhhkoLPw/0lQvalLHuDGzVgeINAPH7kCTk3vYQkoEIpdPDMM2sbtvHF0Df2qFU27klvrDuC9EgKXXq1ePG0K1MUJmumD5PYrLkog1pQPpWLIDbe4oxcqavKZeCKQa4JkGxwyvQGvbfxQs0oBpUUgc8GqQLmOhAgGwL++xDILMBLeGTNuz/lxxJSs9ks07rgBpZQj10dW3AP7dXWnZ0dGrg+TkDQ3o+fknJ1bAsKcX8evIdKCymUDMl2tOB4Uty5CB0De1fR7tMW1iKLNrDkRG0BWHL2Tq5MjHsVYjOkbRveNxY5CcYZB6YufJO7Wg+iQyM2eZnAxjKRWjVWj9UUwlvQ1MZienCDtiJjJOhbOYdLX5DsKZ4KgAhZ2l1CQ2IYZqcXb+2YptQ9iyZT2/RkGAy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UQnPw9//v6iNMUrHH2kYHHDqgI5MmQLEkFmJxv6FKEA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Lib9wqtfvX0IEXHUWEgl4kKaB38U6iXCTJrRCKFMgg8T6MTt5XOXa5P9JkeGgpANzpOC/tnV77+zlVs2qAIlr8NPPODh2VjnmvTjAl+CusXBNtlLY6xpL5DF/4OgOHsmU9o6q8HtRtYdMKTYtY9KRXX5w+XF3q8OWAx0ZOU7EUrESpxmhHIJr58WwgVaHGgNnEAP5jUxy1BiAaNNaaa/bd8wFHJpF9r7R06tXnaf1FbZW6LUShLDPZKv0V0Ee9RWYP946nRla92U5wwOS7/ILLo9c6pmOEYNUK8KHYEHS/RC1fJC/Z6Dl27iFn8RdukQawiF4h9drNhZL6n12CzVpbkzq+lIiuyi0gxtX4+hofU7BQQGME1yTTCvw3Q4hTlG22kjn6bxFL6Flhl1OeC4XqyOnpp+qaf4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UShI0/OQcsEMksO/AjezUhPwROGWZJ5vU4UBTMCB+Pw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mh2Y/jSSsOVYQKuzwGlqL14oGDiAcRVYCCdE7O2FckEvfHm9sZpgyAfHD+HRjlRO7Zdb9r7fZ3xSZ8lbYEIaDr5Gu1iAxDTcso+G9sYAaScE0hdq0YjVmTvICUucJPAicskeLScYx/Wq/+t9yQQx3JwILWowzGbBVevLjspuAfLl0TooZPyBE5KD71TULAUw4raCEiEJEq/FbythBq47j1P5U8w3KXdYEMypHylHiascTvjCk8AxEPsOQd21C2OimQyd8CJiseZv4HvB5SaSQOZgrJKQZPUMpkNvBQ5vBgvUXM3ecOPOFUixYogja8iVDQi7B3R10XCllWS5VxpIubQODSo1InwJ3/no728IhPdjjBN1D1kJRvp/d14sXpv6NKC1gLB9bn00wFp6avAMGbMjUqrzYqxL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "USwzqOqvym9Z4GJxEmq2qEjl+VgV4kXcRnAEiJBHdVY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "29ZPUzlsJ4xHUtBIdxnG+eR8p8km6fU2LMAPdP3hrDJ/kBYw2jMOLxrQ6E//3hqeKC24HWafdhvHs1HGznBolILZYFHVPylUs4NyZE4M0Pd/x0DmmOeCILfBjyxsloWJJfsIQYLucLROV7IXbhbxSsxkC+eqlWtk6assXoVx98TdyWjrK9oeSegrcWm8JkNIj9lOg/mP4RDti0+dUBiArKl3SAdFsBq81sQh/h+k2QMo00xPxdnAjHN/o3lagKA51NSULD7p0SP/03IXxzOV7noYETZqShBeBBFEaa5iRpXEkvwp5XPUv05MjoK/rHf/pcdAtBzIa0pyi0Tpt/yV3UlASw6rjj+Jl2z2gPpfmuSe/kYL4ab9EjMPFFu2a8Tkx8Q9LH2oOZR7ZhVT44TlqNqpEpX18Pn2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UTJz4/3YZXsc0kISqSQemNLEx3+3nogsFTZLzBnceQo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QMeMrM+Dhrp3USD/FKUK6fkSFj7DnVC4LkmPuh24pJAA3S9ERfGrLanEndhBK4OouK2ZKcd57tEwztG3khW064HZUB8AqxY2WL8GN8Doq0GbptjB2Y0m6wkuPb3f9wSEQg5Raeq5Yj6rXlCrffOm/BQm7KNl3cfglu6GeGdmFvpo6niLbxq9sc4MXyF1KURYzeRZytunv/Xaw6ZgYGMQwtVTrSczbS72tXBPCO9cgrbNJq1pIc++BaLdHWIN0/RI97pEgtqhgU0hZ+hs77oYYicbi0nBTZ0KFYXeEDkfper1W9+Gzn64Oxr0BHL0ksHWZ+oURubwJe53J1OM2yQ+lVcFQ/2nG2B7NNHWp7ClGLcBp8y1Ps6ubm6mHGhABqg6FHrkJYgxP/AH2hCUg4LqJvpBHLYUh94N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UTWoFZZIopdIB15s8154pkBylhybZcCf2MAkjVesP6s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6Kvqc4gpaNxBETNlhDCfL/VhalQtB8i7UXub8979P29iMvrVR5oA1iBXfcPX8H4IyZlU2zdDgmORHRGxncxfv20d1yFdS3T5eT4kRnRBc83vCK6redaEWHUcSkqCzih0Lvo6gEKSMpvTSZYugTWAvyslDN+iZjEKWRvofxiZ/k+0txaeoNNzWiZpZ+tAqbSRJY/sAenJZ6qaTfMOmmb7eVztuTRDFBsuLwSO8W8laI06CQG2DWadq0bYZrqiP0Fg6fOuw+ta/a9jiRy6FCK+kwvBrx85UNB61Iketrlr9kXm7heR8rfx7AuVQLLyQnLiUIaJm65eYm2HeGPEDNYNmhTnCbzU+CqSvlEE6YO8jAZjZE05fQhhiN3u0W7Hjxi+lKSA/TAumM/TtefbNmVzdv3icjjLTHBV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UTxLjXqO05aB0jemExbwuGuE0By1OTrqEPjFC8qvusk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XEjBiYR5K7sgzQaa66I+/Ig92TKuqDU4aQVtXiK9KbDekZDBhKH6vTKJIwaQxK0uo7DQ4XxM3scxBg/JqzqURdSwFey7KgHfewRjFYLCQ8w/IORK49Rquw4DcjZKxxynKTpCrFU2mRPWSdlSii71oHy4bsee1U/PjDNIZhAitrtNEaQTZFIBYhVYWO94mca/O5Y0aF5fNbSwIFpp0TPc2DA3vflejEcSeiZ42hjxBZt70MZyhGzYpIx03c3q+D+jMWtFU+Jm4gP7EwpAi6mZitcbnmBw3UTQU+s9YxGa0C024MIwP462/5AhOlPwoRS7uw/ke+LprCpKdOFPnZFphrJ0XqLwXeILylvKOw5Scau6NlAKATLmzHQC8OlumxINrkmEJGqjTw6fFAww1ZOrHvun5B+0/H1n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UUipPKVsCn34BSvxF9dvx1dXAcHXLeFQshohLcIHUMY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WVYZpdGzE1k0byPObLeUoAVRnXXBqZae7A6bkzg2bwL/mVfqi7sERKKcev8fiR3jVujJ6NRVsy+Y7AqqsvVC3XenEbrcsyV7R0za+Z3N6wedkXWCOHLyXPO4GChAxIh6AiJG4G9AeKV/RGJZFI8TwGUWf1KvqjLylrVJsoNMg4OwsQqpzTu7sIKm4pdR2hxbHaCheK+j3kqT2g1+o26Pc1+bzUG7ZdrjtVFl7JjHeJX7m1emK6CRujRPq8nkq0GdW5Jf+6YSqRvOexCHgBchMOSn+L/Ler1asxnUVMkf9Ltm6t4mCI5AdIOEU+dDxZJXKtAbAFtvKY/tKTT1vuvbxEH6R4wrs6SWU5tz3klnztFqP90r0cGqrRrtcfgJBthd7HXluIqprOUFNkwSDg+dZZYN+T7FtTv5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UUx4Dz8rIQDx3zj58Y1e4qwKshV6YXh6haoLj2LINjs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XF+ZZWGCbN/4FjBICT7fv7XE9WCZCu2KGM2a+bmjcHNrDVK94EhT7pwrF/hMp8Wx6AI6X7EDGyetXQ2yvug7XSWHCIv94v3Jau0nk5wsri851XfJv0xbXNwCOlUjxCs/6y38R3f+sGSatCfnU7dIXsOp342doW7T9yf46zZOz73jlrXj2ZTAseqd5j5SQWMo1RBU7/wY9YPOOqWPAk1nq5sTQBHZTjrkxAwwdjioS2nnAU1O2Kd6pQTS8lMvuYz+J9ilyl/DOrys7boILO/RV/UyrSwQMuA7ZCjo+sgeySiTALSJNL/6P6g98IsW+Wot130WhijpfZiGYhZuNOWNXXk2A1m+HfV4bLUAOHt+8QTbMAy83QoU9uj8aZC1Zf/XMukC4pho02OvOiIlQ7TKhzJsL0QoV/bt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UWkLvm0L3n6qZqwZ/Nx7WU2AKKpK1Y7u7q/6cDnHlhI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yco9OSWBnt5iWIx431ii31qpaeDqv4FnKG/CWTCRlQOk3xQqCkPRPSr4kH4tGT5FmHObD3rv1RgMuGyb0G1p4FjI1cH63AtgosYfN04IfLkroSrGGiGLn3gobKFjsTnfwbe4Sd99zVP68LWTmkgLD1s/qCcqZqCCjXyqLEi4/sDlwWAlTOQloeg7rUg5QlmHTKkkB0lQ0r+NOxDGEIhIejt6Ofpinz3PEu4ABQvds6z0XQnsg6J9XIhV1YFTdPrKCvBhm+bkRPQWbg+jHDuuYL5iOv/q1NVruc7V9idnTuGsds32+clQ3YZXLBBbIsgXNhF6iRx1DqFcwZnx0OgMQHCv90UK+Yw1i0gktz1LbTzjHxRxFC9JJ8mxoOEvRnpcOlpf/eIQ+WP/JQ+renu3PZF3tSLTCD51", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UXmSwZnzXVmkush67Fct4YCRPpez6ILJwcqh//bADCI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gyVvE1K1zoo4fEXEq8Wncnme6X3LauZSPI/UQq8IorrlcRe2Mbhdblbg5PlzUt0V79AaAv3Sybh47fZX6mqp7/2mCea4jHqX4Qv78Bh/qAPdAM683PahWMrrfWsH+UVZXCLxw+4eR6Kf4W0mbW73lvPH7kaDfWkMP0AIl1H6TFQ5EXfGfvnDiU+jSU4oLYqL0zr/zmWZIyT3UBP1USP0dmU3tV0O7Q+hHKS/UGX+hc+vmwSmmnyTEqzOFP9lImT/JSi8V8xHUe1qOnzPZyx/UYwRzos7OUSq9MJd6CQ5vYid+CZPZI+C5HePjjLn8cOTAI+AsdH+pAoNSD3Gayj7o5DROmnoKGdLfvZ9ek2hgAlT9a9ZNn6Em7BOlgnHKWdGR3UnsvaCly7HfqbczsekIYpgPya3/G2P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UXqEY+bieHrZCi/TZIO/gVeXoaGKU+cdYTBDAHYItI8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mhl6P5T43cARtSiw+gkGUlFhhPC9NYw6JbNV7YOoMSD4Oc+57sBNSAmZ9+Cl384Aonbx6FY7tVJ9A+Ah+ipyDh29at4ww4rmo7F3PLKzYwbul7EB/lcrvrmppBSJRKrH/zoD55rOfj1BUu27Ey7dd0xbQZNTNP2QToEfkn/3uWp3UQC6Xe+NjGj4OajjT6OOjEXbO8Z04QqVO3ZPjWb1a6pcVuB2xgVqRwN6zCw4q6HcfJNP1qolUfefIbeManriydbXM/xnPsLOzED3O2br5+uoSq+Ttna2uyzu9wMGTch96I++c6F7NcM7ZilcXQ+zWsqfl/drwBmDZHY89VTYTNILD4gvfdAoLFxH/q9kki/aQ3YKOuqEV3B0Ffrj+VcKkuFV2vGk1EbFy3UiH0M6H4oFc+IQyEBx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UXyETNeLDEqcgxF7XzJQWEBYNEkDhkazeqTDcgviUTc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7sM4a2dCyAt1l3QWqyEjKn5c3j3qVdwZGwuFeUXuw2gEtN2bUkZI3/uOtDCdRKJkV5in/MNkXMWazujaRWNNKdbKOZ+2eggLPx96FD56g431hos71yTe+Gz91bDfICk/7Nbr5JuAtk4L9gi9JDVg8o+SF4jNM2c/PKkItF8SDZ54xCMgF4gFZZwHN06pBsrFtdOP7AM4shULLgvpO0FRLLYEVJ++qN90Rq5bQC43PKdcZiwrd10kHt+fciUG4meoFOJg0Kqf5NkIzJyMa00GBpRbx2bfvF0v+XpX9YkAd3uUFDJTQt8etHEd3UDzgQ9jJM32sednYDjwrF50yGKmyTSqCklL+5gCDo7iWrSTKw2udBuyhv1k+49jh8pXCxehXE2I5R/REEJShd8CUk8FnwxvQdS3H/JQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UeKuxTSihsU3TpT0wCMJuxMJXyqXhgfCqBJaSqoBMe4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Cznum+pszRHm/r2MusidNYW3coTZ47XTbMoDrnQlJiGllE9c43a9rSgdkuZw8j9uaQDWo1j+8adDYtXA6QHCHoslveUmQaK4dhZkAK53BgxM+30bRMK3zh+RA9u5N32CzZQXzTiaDKGpNwYyFHsRMBD+l87HetW7t3ax+8PKCj7pUt9jwPRXIjL6XBklN/CdRQrsVxput+3JzjTaTRbcdOgdjQM5rIiLLDCZG/UtPNh/IrOHWAw7pl/xF7PcIhk76yvW8ZeqYXiORVwObgTbf4AoWdp3q+JuYL9p9ncLzOrdsKnPosZaJIg2/JL6gd9oiN8nP6LPzy8XPeIma/P/urScirveOw1GDeNCFX5D2F13x/36+zIOIkO5UfnStagEWaQwBs/KlGA+Kjue3fHa9wbfiYeetLHp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UeiLWodJ23mmVXAnRqPqsJRhJiuOWhqxdgMJ6TRy8tQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aKFD73AAamIJ9WTswNU8+gXmZhwXRbHyQb1RS2+H5yiKD24fSqJwJRo+NQhBAH0jMkIaXAfduuSBMTDLB5MGFPgpvGJUkGmGz6a+HemP6xvZdukLyT4icNl0SzgzdqYz5UdBUfNiJdO3DrnRv2WOmxjwfaM4Q7ylGVSIlLStGlSuMOvBfUaRdqixgs+KXA7JQ/fuk2z51pACeOYC1VYh7Q0FWBA3bsZGgzess3y5weMIdHSTM5Ec5YKjBvjvTi+Yb0r3QtVkYonpATn7RjPYHPH90e1vZBouRv6MGeO+HtVDHCBiEktw7/AjazrpwX86NclzdY9bkL4LKRxTjAv4/5GmeC0x5tW/0cSkmNnD4pUkyHv4rRiZQczqDPZRrihdi4jmt2w1xkPmsS2hIvMG4oQUlhUx1oVN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UhYstxQt/AwQotsbpWhHAzfkME6zmRCEHXMKTt/CO68", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GaaGSdeMuwEV7NequOH8Mu/da2EFY0dbi5WNCWwwVfJntEPQgxYE4jMxOmt9MmDPsS+cjSwFjcQVcoIP52Q2gN4YWF0jYawNeVFAla6d4peEEcC6iIEnINBOzvcykTlQnxVLwG+p6m3XZupU4fFOJuScXOFTttXq2zBN2BwW8mXN4g5nrItCSkrTIfDPYl2jFwEZvbKjOtuTyFZPU+0Nhg5zUQaxupPUpR6eagNr7SwkBtBcApRPrMpCWhs5jaESrWXB4v8lvzyxjiumkdtE6OlKSl3HDX2kw4dFA5+y+zN9a/Dj0T5jItuOyd20natBltMNhdHXTLcYGUGCfuCSc+ZX6Ie0uti/EDz1fYy1wieWNnXKPCsDjniHgoAsr5ECHIaaAU1maYDHsVClXEGbdC3UwRDUG9ey", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ui0HOl4aSQFIX0qVp1omM7GTGh6Jk5etce4QtH8glqc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BfDly8ePRn1HMpcwRf0yWoWoGvvHSsa1qOv/eXC74lWpw+C+Tk9E+nCUvKK0hU9zsZyMlTT3Dq0evKZ42Ra2xodw4XgaOsTPfo0N+urE5rAQYwBSH9DU5gmsbzxH63m65W6/sRKSmRgeO+V3wWglHCQM3mysrort/ba4Nsm0N6jqF8pGqoLY0nyqoQO9QLX6YJJGjDn3iaxAzExld/FB7aNCw2mPv+lx7hwA6jDDZ5nELRAVZDZDq3VBz20LfLz2wEIXxErN+ohyFs8Tg+5Q+mdAF6os0vlUDe8KMKvHdUZLclM2u283SK+w/Z2ygZDe90JyKRlu58cH6JXtlkSj3Y6lvt7tAIV1Jw8qMx2n8x/1XxbWDy7mU/23JVA/nlaK9xTpMlB82sQiS9BL8w7fQEIvsyZCiW6Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UiOrUD0RNEsOp7ph93pHF6g7JwkBJwl8L+7Cuh8LMz0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KpcB+V2TvEk9PiDKjI8VZS5p7MEY08WbrGPKKgvdHBWrNjYih8HCYzktalHvdAP+0KCGuYp85+KvVB7eaouPmoQk82CLf6J+62vl4cpwCWnliTi7d79T6n2NhYKxAKo5NDG+BCtMPaH2fB7PvDTmQsdJInudA8PzYqOf0khmMct4xvgRlYgyHwbNqi38v4pTjo52CL0Q46H5oLKbZabffU6NoSwKnbqY5isp3OEMJkSTC2VXcakC8tu0KkRQrGzeIHsBFwowciRwX/yFu2uqveK07XDvqw1GtzbH4lZZ+RXf4mJUeOdP5LDZjUMD1hZX/h5Jbbwu18bMwN9thuCqTIX+kme7gJvyHtWNDeJObWhxBR16fsoFQVVm4K1pBRm1PhZ57sJg0ebQce4ZLovJKvKOFm6/Ucye", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UiZLFmNjR6uZXG7TdaNadXtwcPj9Ci04jxNXl/hsK5k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VUyFAnpLJUqW9BcxtQ96Z7ZOyRiMbGbYzru89iEr4L5oxU0gF5VJGf1WwPZa/ktQmRtOEZZOnZguZAPYyJWakl4DQq2MdoEKKKYxydPpIRTviUtCPgGcjvS82VywmsCU6I4GxXRI57eEmPNp3VTXM8j3+cbc1FMLUimnglKHLDB3KdCWPH7aObIuzvHf8xzDjlNZin5Qkm1AHe5t+ITIpIuWbY7tM1gIU4R5oyLZn18hOU/meORB0IE8W40YqV/SWwxSizuxrDEDPVTZ9OXVpEnlhJXTuxdIrK/4Iw3qCoSzMvOk35shV1dwI1xiGAW3BZ8vazdT0oGA3CsU7uTt1joCoC8IDw874AceGCsI5zpq37HJ5dF3KYxOl/CgbgRYqn24//dP8rVr/58Nc9AdMbDlEoeAs4VS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UjAb0J43GVPLzsUcctn1fpv3eEvB1Z/uK5WywQHFa7Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W3/ubSEwVHFuo9Uqxktp+05KYc4kYnlCRkWAaqp/k+mblzFZFKxSdhJktUo4ULZ/YMthgFiGtJ2A6OJm3KcgdBPsusgdm01aXinU8yrZhVemJC4kn5klIvYS/+q+o8ghTSwrJ6f4Hj8iql2RlNpOGR7qLlbES+0/YlEMQ+7LRF3dS3I/NFF5CxC47+UDVRqj3Mb9tSxdLmFV00iQ2yX6JR8XOYpbziA9u3SLMGa28s36xsJWZnnAwQ/kC6Rs4HEKW6tAgBAH1JbxKKUFJMyPKwodu5Az0mReLi8rpR4XfBaqYt5nt3gltkH4wkcnuh1yVq7HQ5m2nbp5e20Syw1sHQO3o4T2d8dprZocrDIaYmBvTeEoj+rlPPlWvhAHIW1l/5EUQLh5GXU4ytKG83nGbDnm67V6AHmx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UkbZzpmUj5dtlv4x/JNEq2lCRzJk/fpkakgZq+mld/g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6G99x7vw9hZDoYzhxrQtwC+ggvcauaJbjCm0QHsgHeo823fO7gGTPspOJZ2AC04ZI3LQib4F9+fWwE4qCElZcvgtwwEWlb6t75WezTyjxc7frHggjaGPfIuYX89IKv/Amj+ZLsaIxhJzh4zSWIPdvRXO1BjhTVTQZSoh4PrGRQHLr/H5rqEQ7OcCIRZufJpJKXZkIGt5asjuBJ35BnRz9crQfgE93bnz7BwaWdDeKKybeiJYPopub3VdDKkduoRS3tP40/Ykrzmu8pfxjO6AUCbcUSawzwlVfqPkrGc+KyFweVd00aRurK1v2+wQk9LnVcECcnhD7m4Anr2KwgiNpGJTEl10hsMbLwjlaPHVB5xabV+Jl8xr/8BGFWHulaiJFzfB2dBIoD3eFzGvGjh+UQrFtJaUIIva", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UldxFKYxKany9KQzMeM0vOtW3BETH8zY+ZidD9A5YI8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IPpG42fgHLY2Xtb/vEGNVmABoWdzlrR0AY1ZcUvtf6uPppO13zdwsLyMaZbHCmLBZe73SFd/n0hhxSJYEhEJ/rSq4EPaOdOVKol2IpeehF8nnzqPMqv5SOUyKYOsnxWg0gGlHl/v7YiWJFfYIyWPPLFNdBt2l6geJ9+NeLFD15l6bDY178ifXb3ZEt2kOSb/7GgHEzb6+KnMomtbKj2pMRDHRwrRKlsZDF6lN0bNDcjUxU1pTQflvPz0RclfId2zuS2KNkiw2ZdlONwgu/lgkTfj6NbLRaGQMOt/p6YfOm9WUAz5Wa1KxTBurda6CB2tTVQCqDFPAN4XlMg+SuMjYZ/cC/eCqraeQm7LLa1eGpLLHGWd+3+JKOsI6/N8iyDu8VWeL6oyLc1XryVEqZLI5LxxGhgv064r", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UlpueXy6r2vIQbaTc5xiAmrkxnOCQORFvPcG6eXchaw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k7wXU8CHM6pRzs2tuFhdoubvCC76G7CshTTqmDbOt3x1OAixnJxgQHo5l5zuA3L67H5usAoP1Yd1J1VUAYzIGSiCgXvOmbfiOt4UVIjYMpXc77uH9b2PYIYQmIrtwAL6wA5TkVcaO/84yyV97hGdN2S0FlYjRUs2cfEa01D/0oy4LqKs6NyLdRhSey833lu/z/5feAcL/Narc12IwWB6QXy6s1Qhm2yHs541jJx9Se6var7tls4nzkgT759sT+Y8R7z+gU/WHz90eesqC0/ifFHduydTBVBFmPMQtM2YAQtM+kscuqCuJim50Ww8slB0ZZrAE9nP0sAzW6HtBPEjS6m+CPS6VXiFzvdRcvneZaGvNvmrvd+Qf342xK7jbRCmUBxaOLD7sUs8fSstG1IXvrlpAc9PID1I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UmO1uhbKyDh8jjoR6fNSnf+thcVkILbGQtbfGT27zmc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9O2XxOX56FhhoJ8FuPsjjMs/BGG0IJeBN+8lyga6SYUF/VNpBLr/GFm+ebQYPNf/UgVlk9KP+gYr359Vkp1q8jyPnZ2T5MaueMWV9P7EwlE+ipMLdHM9SC6zpU+l9bK8bzErf4dewBpariaIVNoAKm/EMEdlZabuEZoS1XJQN/0GoXpZIIwznKPa35GlhT2+kFkp7rEQldi7d8jjMUAB6DrHLA4CQqPSN0HFzhuyJSPuT9iWFlqeKoILLJo12Ou/DXvG8mvx/j1SH3kjVKttpD4RJ+eS+pHAEgZWGJeu9N5qiuz5IcswHy7tqFfn5sNJhy08jlp/+yyUgO+9/5f09o/G7pIUrVYhqPwWh9FV7FoJnLFFfD35kS467rEkSueyJjyiL2n/OjHqbfH4x+kudYQkgaQA5OjU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UmUsT7MXoZsvNTToGC/kBe7W4hboiDIf2T2nXzdw+28", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6D5VPmbFZxq28jg1xLELMavp937LlPMCD+TsY3223EhJejPqKKHExDNuZN0TOdXbbFyzXXwlsRUboM65YTaAzIF5BiiI1XrVr3pU89Kh7LuQjei91DbE4YUeVFfxlW+AUdS6/5vmjbLS24TYyJCowGdUOkS+4+mRPD9r5SxfAxD1C3mN2AZkcaFQEAt54wprwFx2Gj+Sr2W2WbpPWbsdHp15FGovMcn8r77JvLxQYWKjRbcB9Xwark2l7UEX13X1ivXHanrpE5jkABzwQbloBVj3GcZZKgerHXKUgX/FZa7s7PT3PKrC7Lt+25N66u4+X33p45KyJEdslmP1HaT4b6U330I5v6b9wTKpu4KjwtV+f846yj5NjKZjeZ1QBxFxnlctM3lEoRP6NI2hoP5AKy3XD4ym1fWF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Un4R6iU2Vkh960ytZ4VqDlwmFOaTbTIXgdh6eb906NI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hYb7n63c3Rk3vl3WCKkNbWVzI7q40KEGJcK8sLIuzSP6Juz90Ujg1LpPlPg/NeG4wkoBkYKij9kL8G0CrM1frpgGobrRiYgVr7KSCKfLShj5itRJ8p806+kNv5QA0OYvoc2vHEiqnLdtBqG7wqkE/qY7LiWUWbya/p2DJNnVCpQQAXFcQ8LY2bMe4PhxMaH/6XRWA7xix8YStIRSyohSCw4Dob28MH2cG2T06TUdIk7ju8VxU/Yx/U711YE40P09JbaCSaEud75sAo2c89aIZU42WLPXwLa6sIjUdchup1HHePmLzntcEwk93QAovSu0d0CCjeZGS1EtWu9wDm7fGRics5UYVIbXsTW6KMj6BN7F9vD2+Q0yz+u1SCpvEXJITphN3spGp5EPX8Vdwj8AOmdnaPxUSV/K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UnsrdOlV5lcNXIunJWVodHMnEChuJD/NT0JAyJj5rEQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8vCtkWvonOyRf+3RIVurCpSWTyUptOrgdVxS+IDH1m643kF9D6z9WP01L4YoJbLS6Gh0UhRWqFa5SrpREwETFd0BjVxCj3c0VilwrQ+ikOWD3DJbWBT9weEzM1JCVwo9IAbJrt2Oegm7cjocUr4i1IVmvWfO0c1lemZEi95CkRxCSydnaVRCv463TK3DGOqxzUA1Zii1OmSB+fz41ATQ7/Owo6YIefviX4vyB4Pk4A+GvRToVlg1WHVxeZtNT21jVsmdcgvlICx9SMUWK4Xkx2/P1mh7+wlBPMUo1bvhxJLhq9bCcTgUgoPTMlxOGJ2Bi/s5C221EcG2y2vgcWKePD/EsqaYMu5D0hcd1694sMeoP+vOKPiaytlpRfE7a8U/RVDkYRYnaHpWHoVsFnTK+0L/czQR64UN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UscbgYP/Nmaon9worY9A36emp4H1BVH5RyFD3UwCmIE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "73iUlQHob0pbAE7aED0/JV26VeBfQqVETZ/cV+U/JRCyKE6wR7lZinlql3rQ1zuu09br1uAxXBbtbUP8SmgKQYgfCrvxrCNYhKsjGBE95BAW9uY1h1uYKM+s3r5cAqmTUr1ssTZjQDYWGraoZzyGWVVE2xd5dx+LjEGYBnjvmyn1Rzv5w2MKS2d+TpAW+aIK/c5YQFwCr2dIm3qE5HV1AhIGbCbz3UlfpgUjZeYL0sWyaZWDqG2Qcgktt5zv/td29HWzmDQzdF9UMWSoumdZ4hpMSgMJ3iiSp0qx3Agh4dyqBa00EEXR5m28Z0Px1rRvI9mUKla1hpviiOZOtb4+l3D8aYJwnpyetj+pTkuzQhlSSty+MKk4xYKFbBnmtAWGdYEus/B2olwtsR7gOPGis03iUMf2gcRu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Usw50Q7LGyxthuToRtaaMNDVtUg6p0o9ca/fA5UFIuw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aWJIfMEyfWrUhCE5bfZomosal+Gg+YnUwuIaE/Booo/u886SXBrDBGdoiITBAwk36B9zrE/2evFGso2lElVLRxbhX0v6Aqil6uYeQ1FraCiemlc3XamuFKlxUBYrpqXU9DZYW2Pybe0jbEW+UgCpgh1rNjEH01LxypMhkmFjro//OhaBOC4Ic0OBznhVZ7JousCilYzDUJAeTw1nQGs4iDdzib3nDLeZ3PWX+Ndl8C3i6W1UZp7pN1pnkjgoXMMbnaKbEn6G0XfhPzlzOR6ZV0Yc9V+oq05AjVlB+HgcZtj5SZlsu4+CrLNBQGDp8gdFxwttMaFoT6YKTdAbNp97Go6vEV/ywX7y/a+Ln1e/w80+YpFELE/DYtMIXSbIsX/ACufpGLRZIFdZfaLU6DTdcVLfR6bIv0EZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UtZK+TfVR+MRUpbRc6PLGXtVXXLZ1LqGk+ZgQ5NqAIk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PIJPZ5IrnsrGPnuczK1aYQPPT6+nk0CvzkMsLsqY9Iydr/2Snkeh/VUDJai7IzTplDG9IKQ53egEvfl7nPcgbRL4egVrMaruBy5sEnMQ5P6pAC0INI75RIRou4Lekqi1wQrIpfItYKobAYnC49EBYg9JZCDzbiKGPUbs5ShfVohcs5dRM+5kRnDq9YkvVaZIB9gHvVqH504QZMMgwmpB246WmZGTR7M7uemvA6sisd3DTcFP2OIwU6B2m1iuy5Q2JNiFSMPCe+beaDaoQTtCtRRwNWVy8+Z4gHPZLPJoSCO/BvZg/SxPwLO9dmOVJp8bfSscKzZeQoQooOo5a1EF+QaH7Rlvm8lT6edGu7w87Q+21A4VHRiQ/C+kJmD7aXHf8PsoKv7+2nzVGAHTzkVBLArky524xRgk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Uulgq6pBm3jI+x/YQf2GOn5tq4on6iF1jAvYMWUcRTw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Y1CRpY0PbzYByeg0vK8emWhlZ957gQUUsytoeB2mvzq3nVE1epDxqT06qrqt/EhjjksvuWNrREDrJVhEYy1TTZ7QrfoQFgPe2hgij7zrrNARZYuixCH76vd2jWGCXbF+PZdDS2Lwku+GuIuWg41O12s6wKx8M6tNdtshg0UNs2mV+O0w3iMb0r6/M22NEmC4KqsqoIT3xDBtJ39O0c+r6Vzn1d5sNdSBhgdLKa/j3eRg/jiIi1jscVVPh4B8JN2YR/KxcFgSMRDJRs0zuvLv6Yik0ktVo2ivYkwhb3yOSOoPZICngSTrt8ieC6OOrNXm8zWo1AhGKZsEeDPHAI0W6WRXQVu7N40DRg+sJ7YEvgTvVB9hm/ZWHxp+cEHboH1ODcojvSCMxugRHaGxWCaU/ZAbqHcVwP7g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UvLflb1/38fCXka8IbUMwVh7Z9TwKXDoG97bAJdqWDQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5fSOqqUooqGGER7VMS3NjBV10JFp0ALdPscuoRudviOQrhQ19En/XQi+hipOo8NUtug5ZolVeq2wjP6X/1beqnBxPSVrhgK4IOLHZKW/iGzZ+jYP+jh0hfO4YD5NbcPHPPVdhu7TaImffQ0I1hCxZmcTdp2vnYE4Nq4wYnITtOPf6m5k4Slfg5KyAaqjfUOVOTCd7kougWGo1FtVJKjlIoUmWif2PntG4DN60VpiNv2f+XKqxJDRGGwT53k8AhIAc4O6H6KAny2GXEPcEdI1ZLN7Of0+q7fRNdivqtu/kWUsTT3/q3TyZsk7XfvOFd6cYZK2Z/HAhwnQryuapxOFWXWUodpWifGiqxPnBpN4vQhwVyQcibD2V7NWuSw9/XhWojn/18lSM959JpZLlo3j4iCG8grwayB7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UwOypOgn1K0TUFlWrIIZ1PWRfuvoxVVvhHS/WSWXW0U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AXjHopEgcZ0thbdDCcn6twpVJaocmidN5rvTbGOY+lpWfRe5DA2+IdF5Lw8rfOcNOEllzZSJ8sNgW8M6PZxPQpbxyI0mbsFvFwurpEOpeUdAUBjfD/WojFAscgd61lFIrgtJm5BwmUGGtKxPEynolpePyyQi6sC5oYz1fyi/QRfqkDAu6d7vi2T50oQhudXnueax5exLWOgnVFfQ3TsUs7ovS9FOiu7IXqmzuI2VTSE7netSdgGUvRe3vqBzt5GK91Pm2gpqAzx2Ti9aBdO3lB8+5LO+o34zwvIVZDy7ubuvrFIgt6Uo1PBJhhagMQ4Y5GQqDcFVJHrvK7n2fojgC6ZkvyFmU/nnFR0dNnCbqGIylS9vgiNrNOVCVLq4+aN+XdMHepMyi3YFcpKFbd1viOkgDwe7cjhx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Uxc64LnALqLatgwhPAZhX3etgNF//2LGN1+w6ihjBFM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y69LBmN6hFywBwWd86BmFq6vJnYbDHL2a3uApOAKEEG2HLBPDAvmjWmu6fUPAljvpPkF3lDPy4+c2VuQqliCdXudingAHbr8Tb4+5aHmVoijSey941Z6I49o8MJNSZS+sIiIjnjcKxfYPqhaVWlubYl1T9hheQ2jfj1Q1J0NxXBmSozcvr8vuFxA17Slym9McBtOEjppNpxH1gtKaqYZxbYQREYj9L4Ue/X19GQjys/MEODGH1FYcGLPVbX8Zf4d6gancW5Qk2XCt45BiAsV/nn5WhDs5riF55q8gyj9KeC9+30TfgNcBEUapEHjQDtTwg3CWnaNRU+0BeWuInXNNjOzRG8egmEeD1nD4W2uGVE5ihWHMYAp+rtK0NCY7Ht4ro7cv73s2KcQ1uMmO79pO/AxtUPAIlDb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UyrjmF4Zs/TsEMxTLLuozUSnPxKLupZNGTggx7Mnyfo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5dGuIMO+4mqN1/y0O8P9SBpo9iU5BShNPPOqtlmDaSuZ7sl6HMX6X5gi0iSmE+nap6wyx8xLWt4V++CBUYOXTm1eRZA4FRfsBHuSqnGuMkF+T619wZoAfekp5RYIVq/Z5YMPRCgv7PH639p2m6N/AWtD6EI2K8RxC/YINYsl1iENB0XRaXdYZ41OzJuto1+tdN2E9V6MQ5AmnJ8ReE6AwUHkJJ7xemxby57gDIRBrEBR0pVnh8fnY//nJ7qX5wA91ZTZTj9Dvcxqi3DOfWnP7Vv4DfJb9tam8hPiEKc01kkxsmRY0wO4ElMgRj/7dZ/Q/ouyPkul3YKsTm0OXp/9Dejd/FxrALK114cH5rSwegrOQLSAhFEkAsk4oXfUsAgzo3m0NgkHLD59x5FlzNxuLu1aZH6WrzqZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "UzYdI3LyB8Dh9CdRWaDji4eT4z5q1dPddZFwB5DMbmU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8WUVRIFD1jEsKwzf+cbMsH/M6aTJ5gh0Bo5Ge9ibAcw1efRf7PGyUelGgB+xcSpy27BSRl7GnnYFeDPwQyvf+xYBXjbJtJDmLV/zE8ltINhz0Eee0FU4v34DNf9HHsbk1m/DO3zRYT/kNud440qRY4Hd9PKCNysprYkuwtys2WLSEGxLGoT1NYkeqCO0+CQRaylXUegdg4pu7rWbeHAqpQ/SFZMKQ+pH5fLEFQZObJi8VepOyif/2Gaa+fclNI7W26xNvJn6wfk6VzzSqRMMPIRrJJS4VIpcoI4qXvztGesRUvyEp/35trkEdeXyYyjO0krYUFKJ4+YyzuPSPJYn23H4xgfaFQqw3taJLOWcl7t1aO+T7gx+qjLqIKHXxmfK4ZYepzNBk6+/jhSqR+RQsHKYdM9R3bJU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Uzn5aJoxHGr1ivsM5wdWQCQTTacqtgWe9t02mbyfz1g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a4WI2ZMWESadjPCNAGCX9BKOGYXc6DSbTpUHiLs1PFU4mtEu8N2pB5pEx76pZAILIsdTir5G7jZc+Gg9urnd7gEVzcAysbMEKo0mjUGwDmLTc6dSKqFF6H32hyT0dm58/vf6jc2zTWF1z/RjK/hVqpL8SAyI9RDDPLaJFm4Y8qFFiFyz9q3kg/yrRfAGjDX77tcEsKKf0o/dLUqJGGSIhi6nJTq/lSmWluQC6XIsQDjcFcPzr+/z5511gZXMo1PwR0u3DUVBoHcvhmQhDtu16Yp3RK9TGV6h5MM7Pbcu6Tutcl8iDRKpCqgNRdPtG+s2pCMRpyssaWbMdo9JLKapJooN0qdj+Zzxjjnc49cw/JZ9UvAGhPQ/QrTVfF/lmNVx92rnTnyYvUWpoWjoyQP3d1l9Sfw8Ty4c", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V+KIPfAXzwd46NiWwqmFmbTPfuxqNsd8V57+enb2PtU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XCSI3IoYGUTchRbesVfKVslmnw+FSxAzUDaMmnPehKTQlx4IEMnsxEkiU9xrfWSyCo53owRAwiY4mkCF2odwldTXrqsuUxlalEhHuNyX1m+zz1c+By116uyzCHE0mKUw7OCARcVOtS5fwWcKrfW5lCAxk7Uet0VzbiNDcHdcwZXiDwfkSvb5EklEEUlgNVuSDWVFcq6DCFgrYoxnKSFxt+tV1oQen3mF9vaa3bNIU6Y1isfEimPptGHVAYyx12+gvQv+2HxwP6UwWq6gqmpYI6igN5yMGxALJsFG46EUJcbCPZS/FfgqxE6AlMlQUx3tWzcOVOHd/sZAGenJCNM0gx/PVCVzRO8qzhfSNlf6v5d859slreLdm3suI3argciyOqeKXlCY4O1DovcTxFHAf9tGISvakibA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V/58laEizFkmDcTOLcWWlQAatO2B/3m+sHfkHV1m9Kc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wNT3TSQEUX7Yba1vbbOjiJi+VETMZBSEqIwlKnjMfoSWt/MtcxjBaGcNZhkoHTjTHXGUHlqgw9CIJaQTdUtWE9gBqL+BODNfFoJOMxnQsm9z5l7XUEqG7F65THSMTG3b/VSdrQehuSFxg2guUZSwkt0QtliBGDGQYveTK1WU/bdVjFxXMEfEwZdnDMrG9GLbq/ma3llAJLLxXB+4VtuagPtCjBAv1m2L02uc4phMS37jS8MBMbWoEiGSttrw8QQy8zI7cfyECCNPC0qL8woYwNZLwqE8/gonf+psjWy1vRN+g0UOrjUdLV9GXDXsDvs/VzxiTHDSffiY/tGfBhbB4TluNyyfsuHix0mvJF6qvpJPv9dZWaPhWGaYYq3TyvlVec6w759YVrKBTcb/FjIKHnq4hojZP/UW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V/zmf6JFbn4N0BIup00lYiiLZ2TLViBPvvXQ18z0L7Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TeO53c/bp81gdpqcEQD+wf4Ilym4Y96I437yja3Lxih14sIE33nDvFb7rcQk2t6dbeMR68rExk0LTWCyhHUppLw1ssu8I+5XADavKv01fSSuWX0O3I2stzb9QSEW0ihVapdfrM6GzApK24UvRqHL9+nDtMV4yYeiyBx6Df1kkGO5VvKo2NtyUS/QwN3hxYcq+IUOzDipiLAGFS9aORktgM2k2u3Qrt934y+YMi2l9dJPFi7HC/ofj1L4s/eno/wkV17CGl/ILE5C/7R8c8frzvJNm7ATBx7ucTyiLYqqae2eLphZX3Y6VJ5SmB5OVC3wlXfaiWnZNOP3xg88/WqTxhuDt+5URCLRncUlVOxJNYxyyokaQRwO7RCTsQkJVGp59V+/MoB1B/hhewGaTUGbHz8vq4XYwTGg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V0STqqx9ZN6J1UtLUGbPy2Jf+ziKO0v9sj5SXqHeW+s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "G1W/SHwF9ipiTHD0hEAc5WmUoKArBD4zFUO9Y5jUe8LCBmn38wlBih7JPN6UflDxKkva3F5zpACMObI/DbV2g3lwglnuw7zA9uGiYeco7+OWvJBRbZ7X0wO64ScUUM1TcuYI9g6HjYID7LbEu9ru/y/a6D/XlBcBJ2dO9/HmfTkvKj4Z+yv+f3gbNGQwKXnhCVBT6lZhfDzk5UYh3Ksr/GfuTDDlZDmHY9u/D3BCVYM31z6cNlx3Cu7+tDdVR5Sg1ZmvLoXscIW/2Jdr12/II1kOPZo8cuPK9eu0Gkn3f1nuGsyslZnQnImsoFEhvxY4MVUJ40wQ8zkCCVYaBNrO7IY7++Dt4V79yao/l6n9NTIHxDW6jXEiz16tryKHARR6hJNMWogGiXlxwIj6gjgs0d9PzTtITx1S", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V18Pz6Z+pgCzWuYOJ1YuoAwYLfIH16rJZplP5RZKUCI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SUcNKvqF+4HmViGD+BAkvoZh8QsxJtEzlJlfTZcsOiePXwaDHYntyLb1VRTKBWbDwQJNzSEHfWxntaLLHNeOgouw8e7Lkyp9gnmasR1NcqvF4LhX9d4gphcVov+F5HgQEr3j5x2kLO9SJoU9WbsA8K8kfMVomIIQdj55atILX42njVZWgJFLGQL6gsRQi0v6vpjRbJ6i2Gt5TFRgikwlssExkakWDawTovTHK7FfFwwaJ+WZpPhRrEDuPSkrdIW3i2LX1anPBUn+z1RkB78+0u8fd4jvj1zvq8RjC2bmFg/adafXlZ7ZMBQtkqCKkKKqqnNKZxANGzCoQbDHSm2BSchaHUY6eLLCE8vVW/x0hLeO1ee53PrB5PiCjWU7M9xT4kd07lfpT/Z9lGOCJXZK62IL5FwXrXUY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V1NjByhB/5hsz9jlzxvkzpxlQSQORb1DhhuqtAxQnxY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wKXf416rJUv+BhSa4kQ74qP3Jqo33ZZXe664IrmGYK/G5tPZbdAVt+HN5mGp0lvKNqFQ45fgsvbLidEsxnLnDk+JyFx1YkWHtTT9cQY7S5LnIt8dDKDfVPhSORM8izdi4dLVUE9YLxZc18h2j+fY622UNUq26YXHEjUP2HqBvFqRJ4Nn/oqlPnthMMxtEr5yG/iXI51FsxCakVA22+ikzJaHFcYy2+v6UDXCPxYzlXowySuJbalYy2ZHCihnYDA/uvV8+UExS1HXD9v8OZTZGgI/pJ4r/lFS9FvcgXtDUS+Jy3PReITHM3zULSX/s9nM9H2ghHzhdD9Y/BxPtX2kotnPIYe2NETjhbk4UQaDdZNgh9W3P5UpbHV9ueypsmYSsQlM8R7YdeN60CouBpmK7VO85ilFdFNZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V1qqa/eP86z5b9lG7B8OIa8jV4ibGFvJ0I5vyIbvFPQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yg5LZcOkj9V95cSKE7RS56DTX7LKgyJna7a95LfgtVGH3h76L8BfrQlQSpM4s4p6vKaMOrllIB9IZKwR/98aziF/vIeYke64cXuFw4uqVY24ol9DLvmjX9JJZNmIb90bwi1Mh3mGfr/E0UP2Qdo8gRVqo7YuWqaBSwf2DIQwWfffY12Y15J/0eREB82MtHbI/fJadBLxZ3cuBbfZGyh6IaPG64GbhEczlW8B0zZ5DszLjKhgSHTebL/To/M7cz6W9IKjUO9FOGDcoH8AgaehlPCvMH9RafDV+GI08ShP8BeA0AsWQXnBCOigcxBAfrDTQdy3LQiaTRNDbXi92aAhgBdM2hjIth6f48DNMY6TMcRmvC6cXTsraweedp/5oW3sEsHIYnm+5GUgcMH7pGvVZXANs8nd7SEe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V3KtrwlZlfAYpwuFU9HZPlt9QKG5xy7QTlwzk5TO7SQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xItaYzweJa9VZGjGNy6/MCRCJPd9fOpcu6Nto85yHoRGND8SdyPGi4e0jbKiAr6XPbaL/plneiqZoCDLehPGs2aXg31fnfnWREOR6q1AHjDv2ktXsCOX0GEz5HLSI42Mes4n4OApoUt/3QaVGv0rPxahOXG8hgLx1poU5TdV99CXYXvNXdbiRlDWV33s2EfgVitdUdENWRvJzMwfpLfB9wZdLJ5DEWiGbr9aZhj+ZmFEoKmS8gsGyGfBT4q6nUPyWslgoPfwSHIkUZZVTXSrowa2jtzOjN7LM0Eh3h1b/ygkqP1BX5/35VCwC55rSttcIBi/lwSj965lRktsN1NVtT8jozkaXJCNzAXyil57LBSD+baFi9hVcFY8385meN3HKKY+LPgMcW7ar+DFZzMM7EQXyZ23c7Zt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V3L6EpQHbw3j+HXnVFRMLN+7Ayj/VlA9xz5kSfwZDmg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NGDctXwjRAqdym+KsY+8Q1luHYpgx3XjlD2IOdiK5Un6l05pPgSq85Hu/JQyCznfckjb7pr474U/udJBr94sv1cTJeRSM+/ibQ75owx4pcIqGW9BsGWXWsAeItFmNzMKjweX9yWfErOQvt5LwGyaQoqLiUU8BL33n+ZSse4zmNU6p+JbC1j05Xscr1YFBRHP0ynoaRBwHS5lFNbOq/L7oooLbd/SFE0qpeMxdM/D2JATzEyGvaIDAU6HFcE5PdO6m2+DWp+thmXEOlTK9Trna6rhzrZRpzOzU22yYYYeM4jDIB9O8Pl5qk1P8RnX4HCsn6UTtrG51Kc/LHn3JWsU31l5iQddTF9YAWgl+V7eONP8yRUGhnX3KHsxoSzfIrh6WV9EhdbzUCq2WFGUfQp9J0hePBqThSmq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V3ZFpd6sIrZURuPYzyEKHxkQoqfdMTGvnypII3xFqjQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bepXlTrAbLKP7UnnFw2TtswTdbVAzyDNst2LHRp2Ddtr0hmWyBqVMYYANkN0R8QMk6vANek/fcpMYRoVzZR3Y5bEh9yn+ndzrEOK3FJblI3LAcuF+5mBzYhVs6pA4+ztfrWoNUnBPmt/fbAoQ4XOTf1hyAwhpdpq6XhPXQyC5TJoQ+W4t0JqeKkWKZ4VDNCwsP97aGKyaUFo6dnnjlPHki+vwPou845TCrW+HJneX4rS8/u5vfh66lHLCqCnQZdesCXZu0ibjoSt/qfS6VkAndOdv3PNkOr7To/OmngzahIxkIzcGuCLFFp5wCAg/+8gHpwKdVBQWLrcyODRqESREHvZSizBesMHSYdCXxeqmhEDLvEcvCDnGywmZ9sKopJC1KvfSyQ1nkRE3BMj3D50gtP0mtjwJjZi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V3gZDvOUpUvKJssaPAc/nKnjUksOj2iDLAfxa2ZWOw4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4dn3ThIJKix5CMrpn0mE4v8GoZ5cx+eTjXK6wxtBVjSkaBUhtAHvi+j3/6HpZVr75/QaL9d4M7zHhsh+AisEdHDy0gSNkVzrli/VVr/HLXxkCV1RC601Wt1rhEFAXM4CGVF0PTSzStOgWfzS/Adn92PZ7UZp6Zx3k4lk+Ozonj7VpHs41EHvkGWRJxylhgX1ipQ3xlVpBkly2KmAwyBeHn4HnULGkn71YyXNWvMUcwoWVyE6SJ+c0MjpwzUIy0ACtsA68U0+vIKh8/7adTdXrckY2QlLs3r0LAoa93T9e2/11T9Kharhkty1NRWml+o71QXIEVlETsXUxb1M22Uf20UWvLF15Iw08zKcu2uA3cbk6v3ETGjW1PvzwkzAWg5Xfnu8CYnW0+UNx+OFhBHPb0SQLN8srfkx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V3lDAjrHhyJWcHxI7omGfLSeOztGN5DHHDQfMHSdfQU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d+TKzVfNrAL1hfgn/h8/uusMmysqq9vvWHsasBu+6NOHCo1l2xq5NOSawKuASFlc45zytmXfWgc+Kw8UxD3GsHccLOTrlZT3Px44lrZp+bLvpthnlcV2SNnEBoonhisG6LjBTlSaDAf9YgUxUlldEC7Zh64c4TRHX61FX0F75RC12YFxs5Ddl2SIObq1eXvAYBXMQRGCffCBdQHoI0gLC+UAHZGzWKQj6+2HFfMSgEfhs6BIetgAXWunRVo/5aK5+wcm4y3N2X54iV3Oz3tZoae/kUWW/Z0tBhiydya0OuxS+XGpNyNW2JyCex1Brtx7bp6cKqTSzqYYecU1z5wAuFcWaUHJJ6pBPDnFkxii1Gami1qgpRX/z5O/DfDGUNDc+KyEFeFKx7my1+qeTBqjj5qy/meMPh+c", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V425A6PshwaXZfiIuG/CwYc4F7voa4vcVg3ALbciSgo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m36ZXjwkCCQgir3iJsvhcrUVBNTVL1nc1Rx+ElwBYNxqqBPaB+wzMCbTUiBZExmbUCVqmV4pUFGTyQLIZToClIo1CEjNM9G48tg3AZ8DA2Enw0jHzD2gR+pQkcRYNar1hW+BIex6AE7ALrf55vsyjsD8tm+XWR9XsbcBtT84VNFUG5RteFBT9zWvkVursd3v51+mRs1I1sCj74HI2YefD9mIV2yj/avp7NCMd1H7zi9A9iTEpRraSYFbfsvADAMmshH/7y14G/296bCaDEXTJSZvmZc8thyuQzANe2gw0IvcknVOF3OFkbiOhweYnSb1rJeNCIUp6SqB9FSdaiH+bN/aaQ8D4mlOmw4/EKHfzYu+G4Qq5R93+jEgW+29a/NH1g/AMaT74lxBoDDe3OLFgqrmSXzxebl/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V5LMjvmhAvx4uHv58qFDQ9oINGvnImvroRs4mh13tEY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VkBWjJxuca8oB3a5pVQi3qupvRWFrlQ+i8+kFgvMSDYlD4oLEqNADan8BXsaW32iz9GPZc6t88hiQWXFdtUOQb5obbA9dNtouTZzct7QQV9R99QAOFt/yQbOL2CnJmvfRtYRcaalG95hncZ55AN0iq9LMFkT57pTUXnrQ3hXhLXI5AyrjznqQEKVE1XVgbC56d3iseSvzj9hbgQpJnPWjVU26US/k8eXbMKFv0P3oIfsIGGVAPDXqyNRgLDteJdSgAiKbKqNU1wI+N4COzzj+LVaoFiTZmxF+ZXCJWInorG8aEShkliZoK7Z76w0Pfn/8B1f02n4ZcsN+Q/pq76g9kDMA5KPojhbmzxFot7xcjjuAspR4cKacALMEA4wHDHFpncxwXn/SJm6ZD0qeQnTESiJ876cQ7wx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V5hYaV+TsLdWGgapeltXwnK4W0cRlg/kfwczreqqSQU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fO/L+dKH9wygEdUwz7imRB8D2k5q6z6wFvPFbV23ty7+uQP6bjZwPlKgdOv6D5V2B7W0kx4zyjrOLOuYo3811R4bwvHXopRkCG6cC6NB89MzX5JXFtewTo6QBGQB0JD+VBuE2Ja4mZJocs2HNfwsIdwQx8W3s5TnRUqOp9YnUOOO7oxXIxp9YUjXWVhHBX1fDJPeT2WovTctc+LHQkFctioqVtWM4whVekKhoM2HhGyutc8hbOgsxppdu291pmp8iIzgaZIfGeN2FwZmad06hwr1mxdj1QRSPUv2Ad+QyyjxEAPGXUWPJ/DHCY30otv6PnU8vmhlwd5MgnEkVBMGuQr/mGTx6EV1rXaVYSrvcVHN20LM35UcqiBj+0efTEgkWlHeZCQKwLsj+Afllr13jZYrdkzxUC1u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V6QrIykBgdCJV/UoNvqHV7NvMzNz2YD/wG0jr+j4JLQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Pfx0MYngKCusQg4/0+dYbtn96s+KNPSaHUMH4GWBr2ecrLb4cOCjULvjI+0RiUGRqnW9RudIzIYnOE1dfAg4/x3QPpbUWIZqSh8t9ztYEqUr3ShymWoKFe5jGE5K/P+DIDq5OGgmiHVW/SFUqte6VLK1Gy0fYGHW/S1wLIyVVILngo7odehissyC+WBz28o6nk5cyp9oawZS88/2NT0AxCFEEmQfnKI2NQGeD+isISSspCwZuALQ6i6XvF0ovrXctPo/L+UEsal1EPdANPYLB+u8NnV6IvV3uXLlYiNVVvtaaggg/gEAS2AER9a6HwO4lQ9dzVSr2ObZUTTuBbHrA7FXcw6r6kIEE30a3giormRTq7SOQLvSMaiWae0pBiEwiQ56wJK/lh7RuCYgC3+ga9QEdW5QmiPa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V6pfGBhnPEvFY0A7FHzXLGP+keHXUVbHfpxQ7Z2KBC0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sFxxDTuOh/JFzc4X5H1zym03+XqOHAkYCok55NNohwo2oEFIyeRE1j8ACrqPBgVB1Unm8ew6gquGDShV45NT+t+LbTq3NM1kRpeIqPzugAeKpTWG3w25PY0iUHS4aBUziLaGdCOLv8QmKICWHMACNQScC8xYn3b6iLwsplHpojMjxv73sS4yyPegkwOiLsTNqgwkQckEGlto7D2fHoyE+lDKj7lkdBffuDw/+MKHv2a6+CcQdWxREOs5HGfI6dKWAMXmboXluTr80qqt68Zyijyanz810esGcf72BsohvyyuUrgMHbPlphmiKHEB2CZMXYiwNthY7k17ZYxRmM4kpa0X1UJhvvHtAaY89PayGZtTFIffhwBUWWxQJ3ZMwQAh46p9zh2JX1QkITmuX+GjdArrIHbnVf8X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V7YBbpasEODkc/rCaY+d2H5Tj9qPh5LNs4CDbwYTi9k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eIHQcUe4TCGfgYlPiav2HcwGOdzlYzzMZZDzXCc20kQz2cwdpJwzyPPIbP2Yg4icx2USSRhJa5uqvXs9yYB0Aqq809wBF+hyB3gXo9yY+SNsSZOGYzVMAi5BQSlrkJCaMDxzK1KFoJpAVDye0F/3vfikjwHpZBlwo8w8NRaCtaDqnnx/2BkoHQ0amSGb3Th7caFQ59srpALyg5jyLzTp0xFVZtvmSLeQEn0mk6cEZ5vj6mk+PyDN0kp1B88lwyQ/kGvi8ysb9f4ty7tErYZGmsmSVbsoqUtsej3vDy/OUKvZHywGYOwoh2nfeTvM7UbOLzkexsb9KZcQ3NOfGadDVSYc88oBSY9JNEYdBbmN23o1nFMxSMZ5t8Wovidj+4Fv6iDF6iC5YeUroAD8tDShZEQmNlJmmH9p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "V7gpVSHznWE5oFsKzESGWhdyTqQi35W+ZBT/LXQ/FJI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wwtAi5CG7LRyuaNqNSEajI5gpUjKZU0yc/VjeZGl+aBy4eBlN+55XOYBjarQRp9aBSuuPEOoOy3GWoUpVE4jX5xNyHAvd1S5L7M7OFh8ePtmNM0efthVJulkDfDf5GJzEhomRRg7bk98J7acBlHwq2F27rXF9+L1yKohTtCSq5apbkTn9gyf01QF1IX7kM/e4EvBzJ0lVuGp/xnQ2pogfytl80yXS5x6MDfUHdL2s0iAUhElM9ruUykn3cAsZjamo97jes+/Gyt/1VS0GQtSxLxSqEdvdk4J12BemPn0owIHdInchTdQpfhnD1jv81WIPMAfaP/eN3LNT2W9UHbH/4/7PSTDh60XgjFLb10APyMY9Em7uQvlXs9AyBEkw8LjgxdhU3XltrC6pJIKHGztxZ1qVx1N3/mT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VCGx5lHiKMcqjeiJOm/OjOjeoGJiJJiSP6Ajej2GZl4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PL705KnlDwudW1TQBFPr5nF/MVYVhQtQKbtSsmsKPPIvL2Q249AsJtIfc7Ps/G1ItEkROFU8hGQoIOl5w18ElL6bX93++k2RhZgbS9fCklbkHk1GQpV5oemzUjAuA5eRrhnl1PuM+r4lQRl+ZUKIJTNlGaf1UgdnvOf2Vj2LL9nF3fGGQyik4aD+YkJMdj9hTolocUc6JMtvnfmLqryoAqqq9xf8EOTLN/Npn+2NQDtYTbaib+GpkatjwXcGgwr7QN4eyp1TqPizdtZaIbd8BbAUe+JlYNVumDRFlP4I5uNY3yMfswD2Ea2I299SHFZagQYWCr7Uwiw/U0nIaVnJCEJCF3iY11Dy8n4OO69DnbL8HMinWvMJesGvfRFhrXuzyJHiSW6W3+UkOprtGqlLVJ1Y15Ji48J/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VIr8O7QTX1oIzsvi6fynP8xw9BEnwH93I8cSB2fMwKI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ksTdiMFcuIlw4EHPevOXHRihlakJ/Z+AD0XyOZIEo5ok9cedflx9kyb/XE6bVstSwPBSMrgexyBUbim8y8wJ907EaxBhExxWKK/+AgJNrN7UfHbg2cC4pfHCRVGC5+L7tQXGKku7KYVb1gdTD6IgY4c1wW5DXBQtyHL27EDMNCiY5EqrmM4V/0UJPKIoRgfqAWiksFPc5bEONeUEhW8EY/WiEvjyHdcLwRoKt4695xgrWW6V9s6wussKbuPUXteABECUP/8NwWbzGO8lAkzFlZJRMPIo65Hv1Ms5RQpBQ1/mtIaQEHQtBk19gBYHbWqMY0G3kucfWXQ4vpYLtYqOhsm9E0K6CbVb5jdhqodwA4Id0jwhebnOMfnPY4HDdSTksPRQN3tUXRCXmk+0lkr3LnDhGumLbGtd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VJZ3gOlhk0CNbt8bi1DzGDna202hgQIjDj3s3D5m404", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6+jKGsoSgOZWY3srXjaXaJKh+Lx9dytmU2ZLMX0jj2ZAw/H2A78GKlQVGS1JE/wLz4/vo+RMRmPicOJTSR+Al3azO++Co7RSOlo+fLr6xEZD/sGbkcMi6q5r5L3+Ae4MNPgijMmOoJdTco+qG3fbUq8yEI6F2EV5MsV6Rb8yhYPk2bSvT8lI8fgJ61DPmRAVwGzsSiY21mENkcJRPK9SI/T8zEWhhsPiKF4pQIbPll+PPuGRRS6Z8H8zBhlQOX5w8/6x84utPsoPE8MPWcyD25fVT6wjUoOzpAk8je4XE8BDPufG1nJCOfioDdSVvGJp3hrmlB49VvS2GxjQhn3EYP2Kr2Yz/iYCt/gSKVQdOChJrsd8Abmmq4UEWgt82HI0YEZmU3kxqJjg2pR/zj8skGM/xZLGXCoW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VJvbL1sbV5F2yeajJG3F92rXeZnN4elBuUbWrl85Cg0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ySyf2StXSP+Z7vwirs5kRJb8rCOZmWucrPJ2GBT//dAWjA+wTZU1ZFtRkj+M8rnqbtqbXLIgjwlyTIUUJN30rYO1tN/IB0M3Jnzr/McUcEf21R3UYe2k3MKkNxeAVf1ndPUd4ksUYNRYaRXOJ4YOHMtrcPSAP7tno+Glyb4HFMyj8FYzrfTpcTyJI8c0RYHdLJwvGDKGiRfUozGscxs7mJ4zkcY26ozIOnKh1qKmDwUIioV6gimSzndYyWueil9CDAgbKRiUMsVA6t1SioHQqneiloC1mQy12EH5GYrYgcBN2y+V4s2WW+pZMEpFR3cz/+eroul6lqKt7PxEUIXJ552vLpC4dAs/EpCJvmWtzFFK1uJN+qWgtd5AKzayv3NAvwybGzC9soAOQ1d6v5jWncQwLg7uZ8Xx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VK+c7vAoVVpmNK78UD98UnZ+xILkD/dt7U5Pe4rb1y8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uJTfhrV6B1DuxetZ6JTwmXKnY+S9z8Y68rBKV3tjyfISI7tE0c3Avrd4EXtHJ3A+A19RFJTZmr3Yrs+P9YB3SrGOOAigZ1tKAO2gwtDNhs4EZyntTQ37asrgBqIpXNwp3TBsO1tqhs/IMUBDQdeJate9UPjVRd738P2m8xMmieTM+LUjC5ISM8+QklFS4aOhpmuXU0Ul84QaJy4JoisVGLRDqN7bSjKa8HBTz2w4lFlDa7qxN67nl6dmYqZAz8f1ikQUYHlRiRijA6hHvjUcTLaEZLsAbgcgOxFMsKmx/DaIzlHWTXaXcnSNcCQ5DWPcTS1HpYeGjIjC21B2kcE+WiNBwaPzk5T2dx6XShiyvaD+PMGLRWvAb6v/xVX7Y/yInbPiCnjTshBrw2o6FNCLjqxQNHpZYTgY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VKA2Mso1bnU+ZSBtdIr9mfbo31Yhh7uoGWtcUM8uPB8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "91L/ke69H9rQrjjbf035EDIITiEYXTe8IgR3QJGXqHk1PsO/szyeG/eagokJMnccskHceBEdJUy9879Ku4QKfEvJpDR4gbewEt/7Vn2pcJWR+NGXOHOAUkugRbOG/fwEh8ICmlMK6RaDTd+zsZHV8WE2xWwx2pmC7kyg0EOHHICDxhX+HBiD+x9qIgTTGk80epHLnw1zTy5F1KF7XVDh0jA74QF3sV0Z6HoZKNEk4FlUj4j5GlTCXvNA97Nv3Qfx68QUzGLbQLNqKadb9roK5IC3K8oKbIRZVAr+cOVQvckPzCjAQOZ+8Xcs0PJLCzvg4luno4odGcGs7v22WClqTQHHLElhh/wNi4u68ShrCJV+QsTQmFDM3Mnx1azG28XnIOYJSxRMWuTeJRZq2Drm+QkO95+ApB18", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VKbNMFDavYT7sViiYgubBnS5kUp6gi71DFrH4AU813g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8BgzQd6HkfnkYdIJ+e6i4iqbvLUQtVEYPaL1xSemxXmEPptiD+dgZbfKFTsB9gR3XK+zdfYSF5Ppr7oZ6MOSuA9t/T3gipF+88gfad6CbXck5PEQmDxSczcTehGh0QQMIUziogVKgHery3pj9yNZ/1g8oz8nI2K5c/sf7G7LiqcwO3NOQginzPpQhV7rOjtAnALOTzxuqFAmG/BjMSsZYmhOooVE9tgQunNzjBL/UU9t0Q64UohHFLQ0yWyJ6xHS3W7sIzCTDGc0OhX9RgZTIjcY5JbDb8ud35Z3k03GXDhU4h9x0/+ggGwF8EHKrdo5RnpC504YUU0n+9PXx6wqJsJ2eOkHsryoWgBkomGjIY0AU/yXbpBR29FQO+pXYb8nLHruT16Mm1MgKZpshBmiqUB9McQB0o28", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VLFQoOmwW2GzAVwY8Zyc0XnN2pU8IbPgyQboiOEJ/a4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YHVr8Uinj+X8AwQjy1V5iS6qAUW5yQfgTIDdxi/5a4eHCHE+NBMJ5WR0aqpnn8Zx9346fdEA+KJxuQ2qC+i6YkveKVN4jS4l22D+dI3xZTF5FNq3IzBlu77pK+uyCGxnpPDZfEGb0cSIQTbqGGr29PMeuHUd8bCAJaUdmDNg1QkQmjoEYuzOqSYIKUyKKvGaQw/+CovE4RicXEq/bGO97KVMaHrTAWnPQ3t75KP7K0yUp3wZ2s+TT7dFwRQPmooqt9fz8qDjWm6OZZ38Y7TVLqxfy/NcdJNRPHIrfVmD/P2tClWhVNNUZAgJ6wEgPsg66b6WR1PC7RXCwSQjxH4FJoDtxG+qKv6+TsLGWJBxJCorg3lpLLNSRoeChwmfm8JPLOQVw+p4VSInQGVnib8hWbHpTbPGkzEa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VLtt3KpaXcXtYeG7vNKtY3y9sL2o6QuINx/eB2LpXu4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YDVa5O0ILLuqka4AZBWWf2JcnUjZGgWuErXAKsKR306ywrEiJk0yCI844tXnnVDdPhemN66Ms/4h0udArkSPSw8QV0dZgEK5OdBBeeMVhquNwbkEtkouG/SewUeuT/90vESkCLhOtRVeZ7QZd+d8rdDmjA6Gf8Ovs9C+FQrc0WkAARfmJX8mX/wFzIlYCk0yGlafXIHnMjrHx2RWwAI2Qi6zKDUSKkCjFb4tppcb06fLQGfBFh/NyimehX8zfIbqL2cY1AFXAabdrTpkRN0saIOD+VeV+ud5Wr23G7s+UFPaNxZHtr2cmBI/Dxped6jy5FP1h2Em1Y9tCLBHnGB1c/a2lV6hh7HImyA7qENsl3MDH+raB+oxQyek/oixTwaVK8vGuYbpHryE6E4B8DaqilFElXSBcoRG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VMq++ib8b1K/aX6xsztboHghl3yiPwEPwe3hfzpiEWQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ham1Tq4pcXYYzw/s/c+bNAQj/ZsGSK2KejWDwusLjuEVvKZarA4FvfYCjU0Oute4HLlU6hdJ4wvwYcbhmt2JbdrMDCy7ZTyFNj78UVpumgJw+lcmIk88GJDHR/pb08lpHVqOyXSYXVVGuo2KYGVxCJkb/pwrEcdsgXbr68rLVsTQ20hkmyiKu2qO0dYvFQBRDA8qIUmDOiEwCS9FjNg3+AtlR05b7VW7eVUy8pBREsKkYLoRKxLG6HUXEPoLIkwhG+cfdzdX1vfBLXsIgKsY1FUHYtZQfRMuMpy24fS26fvC75hhl2hp7bqr4FkLOzh7bXlZREZnbwNwhxlhv+UeGanlQADqRw77Sgaqh995phCpTpuUfNimmZQ5zvfsMFd91nrvdEyNgzg97WgMz9t/CbquEvmmhL9k", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VOmAeJmDHanz35uBDY1CpveNgtJq9AJjr85dMFddksA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5JpN5aRnj1crvUUKlwzWm/SgdNlOKGkoXQbREVi8/xdPr9eZBW+9j9334oNVoI8wzHb4RePVTCOf5G2AvrhD7PVu6DU+k1Km2rlzWADGnzOvJwPy5rQGrRRMb2CW0Qh8RIlSehWeeE2onYXuVr84hPcqWbVXQ6UOAtUQWpxmwOn94vVeUQvVOsLRQjpokUTesugAYf1U9ey5EK8jtMEug6zfcaMD8fpOiLjmpvQuEUo46l9CNV/8j4BNdwH+sGDXptHHtx4+2KFLrJeRAw6RqUqLK9MR1GhrvolPbbaTDA6lgePQ776Jcenkt79xG6FOtDV0hfXcgStPibQ8EX0DX5bXZouoGwnhMhzmsUSA7JbNrI/qpnCKsGmg1ADK8e02ffT5vr0CKSvl3xKJZ/KqKf5F+krOmIXD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VPVYwXcvhoLIvRuKG3UWI2ibLk0XaHHsaa+M0i3onfU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Flo1c97klFxP9n8GP0nu83vA/zNBP48orp6AgBvNRqfVPjhYAJiioBwrk5DQTz2GO48N2N1yOBXUytvqhMBwxq88/obqW6cC+e+BngDImkMjgpYliflfAND4JgnR2ZzdXVVEzSvG9gwVCLmGm8XdCrtslHb3d0eWXZViKLnYwY0FkMz5mmTyX6NazM90OeWU8Zeko3VxfNDMjcEgJSuTR2/eCC5ypPUtbhhURORhmg8laTIW7H+T0LEk7QlwuDwImDgXX4b+O6aLd1oSgIqz/74+8rzCIoVoDSqaToJM0wrom9KDaIyTkfevpRTcv59S//tQctae0LmFYdIilAa1psyt1b25dVfD6ftTDcAu6qgVdCZ7L7Wg4CGumr38F5VCnKHtrnNegzMPHXJYJZfc8+ClUyuE3QQs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VQCnWNRsc6KeE/T9t6yjOp9Ci/DXH1F/lEU2sdn5Kok", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zSAxueyqv7mrhkwFDUoaCkLTCJqo3v0rG+saKmuGCNPLMCJ6Y0CuDCP5IUAMDJJtQMTwWri4L9q+mIdlNMFc21+z7zKlgD9/apXXtaGmAay1yT7LYqoq2HKTNmJf6V516dPb0HqK8IkOjlJ4V5ho5KXQBzsC9ASUe0zp/EgZadbl75oR0QyJ6HpP6BuOE4I6IgdlIe8+rigcpEBZ3/+VM7IeE/raLEC3ym9yly6bhr2zmOLZr4BRUkrnzYcP+0IcRRYZBIYs66fU5YVCHk9xX9ZhzeqaCaRf/JjJ7kJn9ql2r7H9+abtWhx6FuTJ2ybVGCEQpllNX60UElH7VK3p1bngstgP7wKrUNHLFeIW/JFYOMld5waI76TwYmfyQmrKB942WTqTbWZ4oRbVsfILatSNkpU5jR//", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VRSimtkD5eKVhSv3MCYDPfj0MZJ5KFkM3CP0wAVhYvo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kTZk5Y2tBokGnKR32n9E33O6ixD3P9xYOZxM9oiAx0xNcEMrPXxKc11sVPynBrn6+WdTP6KS1z/qDxMaXJBYb6UAF0kJRcXEx870PeifpGssgPHa8LCIbvwhRuuVbYBFBo0/y1jk/zbERVdHFK0F2COvd2ZLOCjQWy9IeK5OtUngDFU3iB1troAOH+ieTZUunOxuRlJDRWC7JxJOypyRAJAxCQ0BXVcv9zs9F4Ep44PT/hJEDJktvyrc6fO53+qfGLKxpXizVEOv/okp/o11j5PbMp9SBk73xjY+NnEL/UxhFbbBy60ufUGTBW/is1tro7/CZMG7J4R1fnPdTqqNf628jc7mOh/Vqg4YqgzO40g6yip3I5f1/hOjbmVIoq0yptL6ctGUbX0jH7NELf63phmuHa4BLEiD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VTO9uqJH8XoxVhJpJduAdv3eInyH24VxZXhscCqFvM8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aqLff84D6jeW6Ki1RgeKhhmNs6NXFVyjkiK0fLgpsWT/7iGLRWBigJI/hE22HUhVSRLAI70+MRYuc9vLG7gZPvLQ6ucyclYMdT6/o0dupEXhb9JoH4tp9SryEfTQnVmJ0xs7VNMTbwc0/EpHSxCsJq6OW3cA5sQodoLBKJUDZ0Ex2TgZW+Pi7cWWYIBYwpU/jbRBmcMwOPqWdUCkzK+MXSvuLSOYm71KyDi82tIjFmIDQC+aG8ll3z0sGbRoIqORsyDkLKpZ+Y/hqmaLgJ1N/qx5lcSCCL/jFC0Wi9KDIfPMdaCxG2I70HzuzMyXcw9lE3ZMKCBJisT+jTWMjexQFfkVd0XaByA6J6EwORRlDC+RHrpxQgd0ST2zSk1JdY03DNmQpy9Z5Yr34RgOmTOXiq0kqoltovKO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VU0S9+9Nl3n07G1IRWpDjBvpv5ZT1zH8WfrbV6icWEQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TM3Pheh55C25tMnKsIXyDQ5NX4tOgQi980qgbU+0VzEDb0g+iJrxLJMjcpwu/NXkKql57jJHSKIRwBJJjwduW+pUwBcBAe8AjqYO2UqwP8eBTEnf/ZGfQKY3S008C0y/QZuGSBfe1aNa07Yf+sB2E4v1of8hGZ7H6Vu4xfrC4AGpAzdpi1amqkZMywV36TmVp0/x85fMotq4p9n+06ExHo4S/Fr3Ed7kY7xqowaVrJPPhTmDq+liVGCjATvZN4LkZxXivVKvNB1Rd5nI0OF7z4FnFeh/Wvv9XF06IzNoiH4M2ZwfTAxdpf78Vrzp8YOZ4eqFD4C0emKX31P81qpSTndAQm0ufyBqj05J0V141zjAMyCpEU1+uHsVaHcULBkR/+Jlwd+HdHqORQl+br/cwRecTtcFX2hy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VUS43qPsW1OIeEWB5f4WALOPkKHqGANMqIzOA9dwgnQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MgC5VdKN535QzPZF0n6ZD7pT9PvrhXYFHcIb5XAXlqB4IG8quYJqkiLyxThy4WLPtGqqb6woDY7Be/8saK/3c0+SgxCvhv+fv81dUkNsQGNmCZ6RAnST1iQVEjEzBcywFH4E2PvV/sweA9t56S9zsWykDg33EJNuFvbgUCr5qFJCsfdFZWF+3o/kwPD9oDTpyCfnNTdsVZU42SbyEd30X++nVaY2OrBZTEviiuDNbGx5s+R7XpJHyb7mg8cXVvNSMaTj8ZA9yyH92Rd8C5n/LoH/5aPUR5HILnZPUg6WyNQjqqdFOsO4bVBqGTPvVqZBTYImB7chrmP6x65kL2ZZY1rthQA3WA2rXZYEQcqwGumSN011katbNrsnYYSifWxb5g3EbKTfgI4PTiNGA+ap1OHvcNZCe5nq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VUUpDfnmvwGwi6k+4b+GW64hOL1zWaW8W7AcFBQcCD0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qfVE4HzGqR+LfagknSKCeNSYmAOeUIto1K5LhUuAoovQHw2Buy8XO9bm+51ym1UtbBSLkoePzGOli875qgtyJy7Q+b22qPsVIh0TJkdW7iIj1PP1ULTjvwWxYbKNgwdsjwmsnkK5Mlmcu5ytPLc9LNpNlJb8MCXpozrlZQrxsJUyoGG7F6V1BjQXTF+MEKjIeESCADTXp/ftGneU6bntHaJrRPyVBM1S352Q8YlMKoW5yQkBTvYh8L9vOSzmI4PzAET1STLmiEcwu3sH+E+V6NLhvTtY8YlMD4zIPkSSAjJN6x+k/CZuH1cXUDVVHOY1tYrIqtsFyn3Wa7afp+jCRxiu3aeY+3EPfPf72MDIyChp021RC78dRnUzOzUJDwpeEeQT7YVYuJfgtqrEsWTGuf9mkF3w8xOI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VVHz4uMScUk6plbZV68Kv1xj5jwMBE48iGuaO7xge6Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yI/m5vaJt9Opd3g2pYH9HbYdErNkoNrRUq8SzzUmKOsu72b1sBU8UCEfPNS2LRajAwgaeGKxpikEPwjeeEgQvl71jM9BDyXYHcUzlB37FjAbDbI2vqQ9ZhCeB4kf39WAJLbm2pyoNiqEOCM7POBIggmVP3jtrCgfLnUk1JgkT96RTCaQDprfNLrujtdRJehdg1LVhb6/gi/Jm5lsovtCZuYq6EA+wABIJdmlaY7wdLmuJqwlR882aQdJ/xYBv3HkS/KMzis6IhGqk0u4v1DqnHbp1VDd+nyar5ngJo1G06wECTIIWIyty+tYxUzGnvLr+bdvONVH7+JtQ+Iv8qUgvc7IAaH969b0R5gaXuS9J8o1asYUKOjU9djDpgVrIKImrYzdP9RoquUV2cvKW0uPWkLoYsePE0Ai", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VWvbQPBNQQnxvhh6ckPn6Dr7DFdgv34mObA8Nd/IDpA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BnWW0SHRlgHQw86FOEAwkW37ZtlIR2r3OKfSOl1zfo0GWZpoHLoaNMW4WuNd9LK//VFuTF9y21NVD5qkN7hUhSWFh0vwqLqTjdeNBio7GG0wm3WBDsvvi3o2yj8ioSUh5k6wD/wQ7dDmSpngzQjVJ/Odcp5SPDZNi0nYvQk43omAdzJiXza9yzB5fvWyeCL3uGpj6m11NtlpZU3reArW093X1RRklreG/0u7FnqODbK1MebTw95TISobq5gcRpWN0MhI44ShIEKY76S6ZCkJcDFjD+Ul3HWSiOwOTaNSuu4gE1ADOIwbPu+qiUOVAhorfj89Hijba1bjch8rjnGpVJE6NxzhnDGMde0D6f2PxM+5NP73CewlliIfgnbPvlzelszhl/CU7SbIwtSt7YW7J0dyo2hzQaab", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VY5kH4mGVhTlWEtPrf2IcCnVApiqJ9Igxjr7LU6ZIQ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8Mj/7qaF5e0wfFimJZqVjF/7xf0Gs9Xf2D8z/MlscPRJbtZ0M4YLVb81ZbtvyqNt4FirlNon2iU8yYm8h7H40Sm+fZTDO/Y1hEjhQlu9KcyliV0fC9zhvv8Mlnu1uFkM1TpdTRUgrJ1MpFwSo3bAVNO8XXB5t8iIRgJHWCkgBbiu40Np9LsYNL3ImMktPRCl+Snx9AJTiFDHDwbZVa8XzBcq2rGVPibJRZOZb25wY+gVREAY8QJnPfqL1ow69Uuwtrzc/EfStPU0LbXfATKuUr1EDJS1xR6/1GfMoa1eZ2y+JG5nc3PpnesKYGhLit9SBiW4oTojwKYoLlds0c7VUJEY2sUhJq0+2iAG4306zuS9nNP8fYgHQPTQq38gJ9hElBekpVclKSXJvgm5cyPpRnFhDXtMBKtM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VYmf7KUQGjcyqi8WXndC7olor9s0UabcyQzO4gcbTyY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dfqDsqfmud0h2CEKwO4+EvPGfcMDIHhGu+o4rhvKpdSfOy4mgnG9wVnXFAHUvqbNvQK/ehJwgYX6E6wYLrdSn3/VdjkwRbrStP7NfhkUY9e3iTGUrwIg00sLAYIJGXLmx/HDUxblEApcV206iWvLN5ceNnMm2s1Rv1AFB4NSCE4gGYvVHJq7U4AOpmdyOdHnBMVzF2NP3ZJapHR2Ab3GaU5PI93d/nvkBeNN7vL54gL0JkvykuLKZAzWOVYIy1x3V/q9yqrA5ilidAI4Z+ppZgfEEDMkpcYWZF7buV98od874Ohx+394yvcYxBf7Vdscsc1d52G0KhxUMafB+mw7uqE2Wu4NspI4xO3xrPXzkHUmfyh63OMUxR29PaUrcOFWEjU8iE69/fOu2ckB/tJ22Le96qsP912W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Va5kwtC1mJ9V8U03Sz5ss4QsmlLLFB1LYYi5M7EiNtw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8CJz/q91gHN+tiryZuFePQvt10A5EcQmc0YzFXUThtytPJYPIi6YPSOrke/q9Hl1qyWcl23AUhuzimoYYQ2esKyi76LSNgW+Z3l5XxngKGl3SMrybA/eyopxwaf42rfOnSUvN4YgBmNLlfq6ZcdDMempsRC1qB7RMrY5+R2l4TM4hK89jmgJnGvqwiiWjkFb/ft0OLwEc/i+qsSEtUJSTC9CdiG4VMc06QkbM27Aqb97Kk+NLMLQcYZw5Dpj0VDjZLKsIMvrFBFEZUG52WC7OS3R/spEJ+xKvwtr6FrNN+l58zWOhjoTsvCpdBQeXKHPjsyR6uuiR4nGUP/93JEZF8eJoTr3jqp9kbBTsZOnwl3f0fOUcPuqaaDOr6v0u33K/NQtY0TgCVYIA5J8N2HppYmWzyBEFg5K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VbhOyzekJLbh/gJbM8rXwtWcwRUz5QDDW++GrW6r+Gw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HoKT2Eewqa7XwgyarCpTk7vC4weobuKBp6QHBMN9RLhTrnzWbjEm/LaN/nICSGgyUsfKiVDnY7iBo0OmfDmzc3V9Ttxn/s12HfBlVX8xQKDMUpkG52VuMWQYuH72TzxvIVYRsposdHepyWmB2qI8vomGTmKcHT3zBJ2TFWWzYsC6B+3lCtv10N23/RUzlW/gVcP/xI26/+vDKe+c4cAvC7DAkfM0beDst+meqiopMDgU7y9+qUVmoUF3NXHRg1RzmZ381XkQNiJ62ri0dN4hqnfQw3dBTiXzVZNn0njiPR5UzFf3QMJ13smEyilT1+t/n9qIWYrlSlwNsvFWjGA7Q8NBqQ4OV6BmUkc9fpbMhKUJi98rbWrtpJdIPX0GopozbsETIn6oTVpnH5CYtjyXpqpR8QzFMyt8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VdG9Qal1a2ESQswsr6iSSXNn1JIVExs4e3M427UaPTw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nPsG76t/MDqXWbAaw7rKCQ+RPR4FYMtYfcE3rM7AU1xtdfyYZS4IQHJ4dmReEa0zQm/IEbTs4F/XzGHrgHgasjG3lvAHOWZLgRZbQRlumkWkRHUya3Ar6sHy9IJVqSgtVvK7raLrfKzGjQVnJaQEupfKfh1+tVuiYhqfHyuhCoxrblYUexmiiHkX7ArycD1oVcLVtta/C7A3RkSpgFkiV5o1xAyxX8pnCDggXwOr+FSVVs9GEaYuReQ1mcYqS+270F3r/C8hZl0+YAY3jrr3UuRMYLAZbv2rSGmJUsdFxV4wCmFLhPzrdZYv8C2IreTZQ/iTMtkXm8DuTdqddeJUVWlsJV25hDQX6Hw2lwrmG4JZubqWWQnRdOaqJtueCEp1aBldqBR86Tv6aAeJWcCdP6D3y7lenrQN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VdI22q451eSG9xQ2Cl01d0C0rihR8Pey7FAWD8zVfaE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MKckuyM3ulB/9ITBY6nBRgIa4N2ei/maa64mr1gIGuGu8EQx7e3W5iAXimJ5KIKaBXL7MJckGqoXi9zv+iOyE6veQDdjrF7B5ceJKj/lBGNBfD/W6asceeYBSgFhbKRiOAcIBxDVnPIX88dyuQ3q0yDYiWk86wwhLwgqDhpcx2nyKG/+kmQKAcndDYQwmaBUNBzL+oCvExakWXOJJNE1CKfK6uU2Vwm5ig7uI4DRsNPi79R5Kk4TVkmx0rAob+Y+iUDU6OwYVGRZx1h35trTChucMH9TR8nP7AVpOjJ0BCPbCKPYnKj0loIGaixYNsR3nHPRX8qc+zjz24P26nZKH/VNdysg8VPTlB1Nmz1PdajTOv4GvDqXj+mDIfI/qX/tC6ByEAav2nI7Qyiv8MjKgvPjY2YBtTPx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VdN5X/0SJW2fU2XdCCkIDQwlBB5GFk4w1p+NC7kc/lU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Uig4lUr3vwKis97VpkqguH0s1bIkA2zv+GiUjPKuoA2Eh4Ji5NZ2tA9U8e/InMjsSjrMn1CXC2iDOu0DW5L+T4+banG5to1iggisLG1LIexoaUAthruKhjw8jgVwkOzufzzPRP7zIL6LEgwpnakB0eEARqqK1CtsgunZqb7cn3g3SnhsQEEgP9AfMfu6fpzaYX3dvENel9lv0h8u+7xaG+WTeqWyq3s7VAAlZSNoQlPqdMd4i6jrU8tSHFaqSMpH99wfDas2D6WarPqhBTT62tY/yajnvT/x2r7/eOasLbhCSAGH//UeqOuIIJn8n1cCwWN/q3i0a4AMV/IzmjQhBLvLLjr196DVY2MzjSOxyW8AmgkxHaSngu6peR2EwfkWJCHGPFvKP21VOxXqHwYhgyLeUdVpIOZf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VdaCwUTJbbvoBKIJWivMtZ2JGrAGHcARs1nGEsyzh4o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RnEZFetgAujPJ/kYHtfPWNiTZ8uXsvjzNxsTpLeTFtth2M/vVPWkvD6l3DLYLL+cTrSL2mAJvJinJTGsQn48yNQtgUR0OIYLtdT0sBPcmwekhfc0rHYf0QEupxFVGAybVPYv6E3GlaK5ReWanb9SLc01CWRisnc9JSXKj+p8Cqga/qftzt3Kp/e230Xq5P+2uY4kSl3OVh7RzlT7Fvh7NilMwi+kuizrtIEMmvnbNphtbskRX8u2IcJnZuWgF/gFanQNFPppcHHHBPXDdC+WqQZyPwLJc1jDKstIxV3UjSfZxYZRGI7f+qRRLD+/ZS4nMmWfclPPtzCDSbqYsoff0xUqNLmbKHKTTbWbpX/DfSdcfd065zq8Z8akZZIFC7rvP0Y9FHmOhfiWWzw+oMpnmmzbuuaEuCAn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VeEdr5dPYRho0nQv5pCB/wS81NW4aq39//1RvYwwAAA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SqE47mAIj7RGXnwRVJ2OuYfKVRJKXkf43oAcyaZCi6vrMaX7v3kjte3SuLRTzOVVeoNJdgqo3oGtuCiU0/vsNlKCsr6+qc+CAILOE7Vn7jhKw8oqh7hBUZOpfG9yCDISOir2WjYnupXnFrZP9hxrGeM0rfBNNoWpcZC/6kTpbtfGfHJdx7P2VFa2S2GG3UNgbXKlKsoV6+QGpuZIMDhs1/pN6gc3QNVclWdvcP7cruyH+Bz97lLfsKp52PhL7tgC24QwWcUUhrnLQZKIKPNT6ogT+13CzlDeWA1AuRhLt5x0fFiO6QefIYUDJSFTK6IFE+D6Q90wBcYQ557RkLMjn2eWXkmdG4giCBHboVcbG76qbzqUahmFXLsGAYnubZ3gT44pT4UY1MDh45spar63Ib1eK3Q5HjIC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VetCi/V75+r/+Q+Afqe3t1WrBifUpBjtc+W5J9vwqBk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uKo8CXb+MDhlPizfnbMuqKdSnu1+u4SKbuVFMLB9ob4YsQLA9L94AOjdJsrN05ujN7hjTWWWGJzWpxkHRZ+kIuE4mdmWIjwIIIlE9KkyIxEDI7Zchvq8fCKVDm9Qt0lrfgsQ3cBX/hx1oQqNfIv7lUJ5oucntVpPRaZ5qBZT0ni92f8yAATzCyewh/Abvfh4OThTbPuMQhDmZZK+oNhwehp7ZuKqxxMf24Q/e1OI+cR4xUdJyxuNzWGVe3VNXxm12o9F8dLq1fyw/mHV/bu2x/8ii/WOXGBvQ7WlChxaSyFagLPE7f+ve8di3nXUbQO8Ufx82A/NemnGVThXLB7JUjpPyY1fWbsYlWswVOAppjaYsm9ew4w28nvAqK5ZGENuOZtW5bWqH/dmR/VRDQLBJU1NpLJIehu7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Vey/gXRtzMJpdFD7FHldrz3QbRCJobOOUftPGffr0fk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ox2InX0KvxrFQ2G1RnBa9RpMMOM7UBTtWihxaYAkT6eCHfVHQbvfyOhMuCTmVOGw6ICJbhn8HGKovdfcRYP+POa5wVacAlPBDoqXDHOwJk2fUJairCQu5yLizSQY8PzaVPFHa3rR2WGQKRUXCxleI25kL8qubgyRg9onL+o8OUQEGnQBTWcxwgUwpWXfnNB4eeVpj20uZDlqHdf9k/FCUNLuQ+JKCCRHt5VSvlpMTTldPnSynXioLGeSola3w3/jr/qPcR0lmAm/avbkrXn3qcOv9T1gr+oYOYqCKx65bAm4cXR8jpbGUTCjWjKnGWdnwg7pOPK+pjX8MGE3ivZfORsStGZDriKS6ArIkFBraHh1DevgJ+LTCtUL0gjonm0Uq5wvCFmg/1clG9N0IvxaPnGTZJOdl0eC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Vf9tmGC9RDBJb6TMAA01WkdniIs6gLoeJluqfNBZzo0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ozgSv8XfvutY7Oe74u64pO+KTW5Ar0CTgZyzHjFMkjpy3se2Iv3bcwSK2Z3V2q3JgYhmbNKaDqX/Sdd5aGsngmwRB9YNxrpE8NEyPbKYorHMFjJttaDD82/ZmIKQwB1urVRpfexd1R39+hY9ghSRnL4QvCHRANV7VeYTtM3Tafch7vJY3lmdxswVqmX5PqJV1/C/mI+TlPCz3ua1s3vML1F8jqjWTAEV0Ds3GKz00V3Q1wpkW80rNd0nAA8b53u4VwrTZ8rbTu36FdIYsGpjQMbGNI5u//yNlJe/POzUwjwycAPTELjEc4BT2tLcN8aqIci7JYRqiavJGunKtUqkBIgYgkgipwdz4q7ByG5MiX6x7tyFgVQkD7z57399JHZ6d6dbQA1x8FnMpms65KuLe0c7t5omHkjd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VfeODf7w4UhODiEnOv/X5+t2eDbXVQe4HW0/7DXNgSA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+r0iZlGO8FchpKwlDUXWokljQVoqXelrHDU5xD/2D0/UnKGbOPqxJ0lbCyGb1NoRjIS0+VXnLclummBZqrHFrLYhnpU4n7DsnOEhqAWcXNfXfY/fipcYVr9II+Orw7sl1fYO2CBa+AYrZEReIOT5e6oLEKfe6rIMUQLaMWzfdY/qi3TaYUzPKSVy2lpetgNRcfcw1G1vDPItZOmbuukh3J0ElMqZbeWzkhdNinqW+Psg/t4sl6tQ78SZu7abYs1pJKCfTOOhFXfKLaImboS8disowOMZCwAmJrxgVUQ9nSIqBOIr40H91NoEb3w15pdnh5gL5F6DXDtfXqhDKJaReFZeH91fG7iwaGe3Oa0rN1YABfmW+/Dweb3ePy90a1PZkzAJ7Yq1EKMUa8ilUH8WGszFw0Ru6mB0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Vg2hrKKpYTz11AH1ugs1qYqMCw13wH0mHgH92b660qI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4gqdGR/I/Clsg7iozdBeLaws0mbOle23NF4fiLRettlwhagpDac3KQspXR8B50Qj6graKCZwtIs3VumE6MiZMWEp9nCDPdsksrdH464+jWyAx74UyUDH70kefFncdx3dMhzypK4VQT14J38rqG23UAnFd7UKG3zCTtQ+u6JB9Y8rddJkLpvF3UpWjXBZm3PrSPY61eB/sP4GOannYdRH8TmYer7X9PAcgHgT8CnL/eWV4kUPtGn6hAPQrEBHkNCfeLt06HVY5tY25NvdHfmwUy6GKSwx6YYfoLuW/H3Y25JfDEaagjyDPnZlEdjNzA/kTkEp03In0WhaVD7c0EBL/nCYpM6tAcnapvy+ceaJmKt9cMq3yaD6BAuUdHYgCA7IeZyVGsmDYZC4r/GStu5UDm5MTlX+pusz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VgIUrO04pRpE8hWpOSEGz9wPh9HfRAUwZ2Cwh8Slcqg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aYxOq+FRySNuH/leU3PfkhGghbSGIXEoGmCECaXlncCLHA5oVREZmU60o4a6lhi5x4a7m7/4eigfD1MAvE7S8YW/YejQtOtCF0KSeXdZb5WdxKUftG/LybuSWKqxU/aHzoo9VdeDGzC/g6xyJOJoEaYF2QrwyiLWEWH/q8PTRHooUdyyhnWZQOZGHeooy3UvFtnfDZg29nWl7AeTsIEiHORVemYROXDFylvjjPfoZZ6cPMhu61FYC/hGn2JEi3RKG8H1Bor60VMxydjgt6SBF0CXlZM3Nf0DKzH5JW1xcmVfajbvSGgIXDWWFTlIoniL96vFRXVm6WRTR3lyKaNpFtRWU+iatWbvKybrFpVK8fXGXkZTh5scS3/wCGNxrn/5WJC83rZxALWMtQ9ks56of5v7aj+f3EAh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VgMpIFHkKSVBId0ypwOnLkJRCNiFEfaoo5xjms90CRM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xLvzczlOxwmBhE2ojo/+W6zNxqbUDyxBhjOCEw0rgMD79RhbrGmcN6zM1oOy/IfWtEkT4e7ybyA9vXXLecNr5lXhLG/93ZHWHL9psKZdKeJCe4Ia5tJSuUBJw9CpZgdzgT2SYKG3B10vRSHqrtB9uK0di5GQjAuEPTxGkVmnPxKTDkfk/MVgcgiQgNNSy+U6yz3d9dbQjx6QiSIA7Ys9GSkTZa8P4S8E3gU/TFom23EHLAHv2/VOBtk2M3g0bdhZxOlsckz/QSyT/E2qtx1Pl9l4bWL29Akun5Y5I4gbYc6cSTixCZ6s1r5Sh4JAeYRksQ7kCleiGm1HGf4wRf3Rc3h2y9bcdwkX1LVQqKO5xw7K3oF5riogiBsHDUsWr5B3xNHulw8Gpt3DXnuxAlJTstG4uWN2IjSd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Vh2Uf1qbmm2Er+apIbQ8y8rZiOG5eCbpUddnVqETvwU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nRqx+OiDXTtcJTTiVLml1gJxuBkljyrvY/alhXr4i6q3/qrdgMmwRMsMjVZxDrzH4kP7JLz9d+sDVN7vZ5awvL4NKyEf5imKK3uox17fl4erGa9O+h3Mx/yv2To0wDYbDPjMA9c8B1StjJbT1RvzuygIRMK+u2hjA7qQtRMXJ9IMeOiQUlEb4rDWzhqZfg7U8k44v6NbJoofzHxBXRRFN2NPKcCT3rz8f6fJAbahRQEa/5bMDh1C+KEjwmphGBh5hU9sNLaVwZnmDr4efQJdfq8TNtLBWSoH3Ngrhk67v8XkciPyRVRq3BPtrxttUo6MDz9yo03fUjeOz9u1z/i4JfKTJ2jTAFr0tN4DBlT/SwJVmpHnjMAO9gWpEHijmhFDmZ7mIrz8hENinwtNGrJcpOde5AAop9cL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VimeEEzWIJXg2tgh/HmZHg0GTGG/rVXCEgoT59mGRqI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tFVV6YJ2UAKsCdnD8v2nyGBBoJvhPncmzExygYy7GxLdJPvLV1IsUiQLG7e4EI0J2KuPtjDU+E6dI7nvkz2jISk/JOdVnhachrINsgGUlqz3/kR0leoBYMBov11px1Qc77cv93zkxUF6uP02p3KR4o0LqwEbh24hUNyIKSP1FDtpmK57vbLt5hlhEe8KWRHAC4cnJFLiblXeOHNzR8ugck1edYA1JxgqtvMiMsigZmkM1GitaSy2/i68cfQqXnB96d7rOeuAF5t4I1PreEpZ1fLxEgrp6PbsHRznIk9L825wiu9ugOPQMvZLQwrvVZLDYB7s0ToffPNGa28SmO4PZYZVbRn7ysBulSbh3KVSB3ZZ/22g/TcmGJU0vPpPGws5kcst1uVDxb98CFiiPlOFs5COTS+t/sd2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Vj0lzey/NV5BmU5rjNpdBjpDAuX/Z9tcEjvC7TP5sVg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "af8eFHVRRDvtUEwgOT+xfC0smtvzron/WcFkXxq7Y7W3tCOXLClnPpvtNyl5H3xhu6+fyQpOBoadY9JOKnep2rwaQPpfP7veCISIm2VtM9MExbiUeDZmmU3s1JgTIXGoNETE9S2xEmWpi0Q8evQCrhoAWFy+qGCAqqxav6xeKsrAqDp6nRqizzV9zTb9b2WV1X4fHgtSIuFd6O6miuFt5bxTLks4N4pURv3Buotf5hVK9HVU+wN6VuppxoTHD8tQm+uGTBCtjHG+ZZ3Spgm5fUhR+vnlcvEsqdFfAxMA9ulRtUxJTOv05zNTfnEcnKdZpyD3YBZ8SEN13EZyqrami0qc6ZPak4Z7bBWvUsClVsCJG8uYksobbQkp3xAfgV1j8kPd6d+ecU1nHR6RhE0Ku98Vv4NKRtEJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VkMimJU+vW3623yB+mV6FzUSYqcXEnsuOWonZREOMYU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hK5fw7tCXTNNU4Vdr3n42RgxrKi4pJi7qR1iH8wLftC0cn+YyAN5ZAB+Q2580bcMQvF8f2HnnGwYJt6TcMtUqu5QAtkHnhLHy0f6YXWXjL806Lw1P103UznBS/VYTP0LPIr4MYJAH40O3lNq+4WM7cqWcYp+nWAYh/OythNO+RH9eVpXi6khdn3R4t184Pt+sXsz5i8nVLWJ6UEXiVSw2LGdZjhmgAvibnLxmDKDBqDE12UbqwfnqRx1SWoIvNLc227SgDpHXOr9GB/gz/2rM+1sg8hqluM2q8m/Jj3K5HJOyZOfq1lrevEkSbLu2xb3LHDydD8e8VZHY7AJ2j9qSUK42yURG04aTFiuRhm3rEwDywwwW5dJB7Vmwd7LRt4+95GVk70o9N3Dqg9orD5W4OvpM9P1mpez", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VkurTovK7aiaHxjjRq6DQIXX385RFUteFZQE+gZ3SmI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ExZHlhOeUxfsvACEHawG8xJiF8jdpeIp05tbBN1ISoDRPYIftL9qdQ4xfCg6ATK3AkLdDoe3zOdlnD+Hd5YP9S8Y7cQscVi2r0K5uDU6O/ItgZS2iZoECy0xEL2gW60FktfNDWuqlCPNaxM4aDI/OFaYCGWscSKscMOKVVxoNSGmDRWVrxUHEgXodCvlewoG0iUA/34CAP+aiVjrUFW6YsbljpRV2fNJp9U6NLyqreLUB3ptYJk0JEiO2I2zEPCaYuhC56UoIcb6egT9Bi03emyA0juJD38J/llaNT9qNqPWttrgVNn6oZJxTMvdj5jXaEDTrKeqlTjd4JWOm1HklmLM0LDelMi0gOqMi5i9uMxFlphW7EXFbkMiW58Tbn3huBe2Gi/en6ojpiNn0R5xKwvHVYGW0rys", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VlC4tr4KuLS83gibFl3EQJiSvgI4VAThO8KZasqH4cc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8relHQgofht+CgM9NkrwAVVcfPae7/Hg/cl8IwcNpcH0Qcs70FP1E3nMKN+x0hgI+L9YYhW+Ku6VM+5l08r2lFB7A2po+cBqS3CXOah/wtJQpY0DQG62vNfu9pMKAxR8NfsKiYesn6bzVylANlmijIXC071EEpNUsVZwOC9JVFr8jsdBcfHuZMaIZdyg9jOd/62eU4XzpJISmHkKldPdArfW6/uDCrOO2LD3qH0I4RkSh15SgJbRgxAq/boxsTOx1DfZ4C7XkRkX8IsjX0jjw7n43/JkITxKbg3Qa/X+tMNT1gt1nKtMUd1YBG/qq7luDYzdyN/Wm9HJuhyGA+jyHph5qFgHlBtzRhdgK9m+fJPhJA+XMT5ZeIopEMz0DwwMCM1cq18eKxFni09OBYeSFXGGVrvM+L81", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VlMMRLEC08Ctflgjg8LFW4QmM/zJZ6r1dp+AvwE5BBM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2Wfv/hhPmTikUF5x6EoNuplCn6eG2RdMPdsz4d7O0FlRynw1WCGGKFfsp3SzdKvxZPvvW2ucIb7kAzsQCiNAKCIZGGUhfqW7m6CQecqYjvbvn2mNZ+lVPzYXKDCwdAtdHfy/hBEW2v1XEPK4Tyy0Kd8w0QjngmswvG7SeV6GSWAyqpXl6W64LsDAq9ZaQhyWC+EVMa67E24hNLb4VPbLf9GzRpy1PmDcLasbKfYQoS5r5fHkLKPRzVuPMdtnkiqKuanMYqkNRKU/qVJFNNuuG6NBmK1TXn0cc962DxRaz2mCOj8Z5IKK0dJcTbNIoAzOKzapfXH6XS7ee+ptivxuBwFjLeF+FqhN8Sx0w33H1JOAl2HgyRGHDtODn4QEURHTB2aCG8a5f3Bm3Ujq53mqfyZAogawCWWZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VmH0MSNXlQTzi3Z0cW5EDHVa4rNlC6vBgJGN+08YlDk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PtCdrhX0oPaMbpwtQ8DueMvUR37jmrrUh4Llo+Z4u2pL/gG6Hn2qm3Nqx+BO/yKIHZScmHBJO6wx5RBrY+j2EiIkNnnKazirDYMk4BbVtDQQh8sjoYiwAqyKNvtfUNr9ZT8IZC5R74IBvpGcBh3yjeRYp49b7D6cOs34ZoydGsdjof1kjiwdnDiEDKbzyP3WyLr60mZIXv0p6ji2NAc9UwpIiSllMfE3WrLvIMihQlfVQedV4iwqI/oYl0XR8j5OYpxPSH+JgwDSMrgA3nH5Jf+C8tMwnRNA7/aPSubZCyx/cg3XVRi2srK2gLVmj4N728OaDBpfowxuwHKSyMafWz9xJUToY96oE18xCOPRfD8OuHBzBFst6m7XmoPIjMLa/JyCVrt93A4eoN7iR1z807XHYpRXAXDL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VmdJ+K5gDz2Wwd4esNpbMXZ6YX+kcJd5NDSWL3T1uxo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xCOWhVpNX9IoXce6ZI+OSY7Kn5Ngaa+xnB07DacCiuZvk+wYUpi/yw/hwrH8kp+Beo5tm8X+dPoBEHbZydVrsz16i6R9gPUVR6mcI39qgUmU8JWdex/NpWjcB/JJ9jsZZV9cWtIMJ3mFss1s+pLQ+kS1zv+frgt0CeUFzun0tz5sJCeZAdMYCjQaK0Mm2f21Hq8kKrAO/Fczfq4B0XHfvd9F45U1eaQOM7qsPxSyeUgkIHLkuIW6WBLsbdbsozXGmVZE3eb93L40QLTxLMTbgBcebnLLbzgr4lXfo0a0DgPGzZVU82WibEvvqjFzuheT7I7J4/5YYzd1NZsh9/ld354NlVQe9IU7GtUmW3WsNCUojNEfVv2X9PbsKDXz9NbxXH7EEd72FDomlYO9Dnmn323Q7zvgnT3X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VndzfmHVoGes4OxE9fmKuxGKuTVtDGNL8PqiI7vrRzM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2TqiN3p+nYbkrFbAZih8oovYUIO0LHZFJbxcCHcJd/rLaaTAGWo0raENF0AReMVVGMO1D2aBpI/xD+wbR/GJom1Uz9SYJMFpqUfvlrh1reWlXYn4LHWYAtOmCVh3g0zKsDyx0UG5H/2uU1NOZFhU8wbA3I0vYchgTYmHf6Br03jDET42idyanQ5u8erlUY3UkGCOiLD55jRS6k5WfKR6/xEucZtwbSsV+ilh3/7XMA5z85bk1RhVySE6nk87XSsbKBtLQjFMAAy4pBRsbOKwhdN5YJ6YmjIlLkp8bA7t0oEDcF3yAleXV+pajjUC7yLdXV6NT0eObM5X15DL6WR5egsvAIDa0LbPxs0siGa8jraP/fQEToT48N3NV0ROiC6JzRLRGiTa/TjwibCH00ncm6sjTk+Xs8CN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Vnk04zjBkrCrD7qAAI5IGmZ89REGupFaBBMJpIxOZ+4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9Dq0VRQVCOyezRiU52bCymSJXmrjQH4WUl+s0ysvIAYNrqKVFM51C0gslbqB8duAZi+aowhStpD8XUvHT0ggfKP6ULqH2J7aKj9gyssdGD3Slepg9PGv0pntAg3WHP8pQ7XEnA24Aicz8MvttvN+YTPIojaEPdu+fy1A8Gq2wRFOZtrfjHCczzbWms3UuTm/2pViKG94HInOCY+hr411QeKALceZ8e7QGe3wOi18af317xe1GM5xHmQRgblGWsYo+credJNM0i77S0gGTe0OdJYbwibzIZcIsI5S9h7nQa/zbbooeAcv5p3JLDqaoGSz3OXDm8UyXshtXW9PwfK2DWQDEqmzeRj+QO7OLdIuEwzGsgrQXeAtZJ5SvhTQnN2NpwrWaerV0VH9P5I2nqC4qKZv4q6LG/Pk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VoLTS6ul4ziHrTptAujyRZHBhHjtD88arahswIe9kxE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FTelCdOdc4Y/mRs+HSxHIlrtlVcWs9Ahy0IQ+IY+5XUg2U0fqFbDdmZ0oCqo/SF9jMRXHO0/+JtyvrkzzA0hMKXfFKs5G0ABHEa/QsDCtpYhUgZQQHwp78gSocby1EwioAJheJVjElLg41vD8CTfdjSeNzj936PCX4/Amrctsdsv3X79z6JxvxppQVos78M6EOntFjIz9iwnXLKoAJz2xiHdmEZM/UvwqAM9GKU+jpD6cDNSFqRC+NaYevUGONB9fWMKKQaSqkgh0Hfw7h4Wkgwh8bE01ae5+WZPVkBQNT5JUJ+SD/VOwjIvpyNIGVBVJ0Ptoyvt5KP5khdmSgtJquZSbE2k3dJ3bkwsEd8bQHuYRvidzgnug3GZXaHN5vLFl88SSNKnHEjBzkyaObnZ50GaXTfQgvl6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Vq/hfCmiRqFfaW0lW043N6j1OpD409Fa4BsZZabtEO0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OhVq8o8nfNzQ09x+GX2wKSZwgKfiHAlFF/Az1GwUQVEoinT+YoL0ZLZllbdlfc6CDQHSHdCWXfLBMXfPkTNrELLVH6L0r206ZnrTjHUFeogYb1AEX5SeRoLcxxDzNxsudzX6ZWyJ0SflAoZ00YTmIgfBU+7fI7I6+Yn6GPXRrp8VbS2ynTVYoX0+uAhn8e/7PhD9p7YSaPxvjZeKJHb51j6SyiuVhLrikK6DyH4F+rz5XgQTdjnfQsbDkHwlgzJOwkQHEP06S67DZD305gzDzP2IqGdXe5Sy4C8jp7EWL/11s90R7tAGrJuYq3i2XAek+0j3fQSODt01Mfjnu7tjm/zHY7hmxikHVvVGgplOnSnXxvIm/5h+kbWk2d6KkYFM8rfmZRrnemQpidto+DYZfcVjkN8IBnB3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Vq9X+xgayvv+2ADUOxtjDXhOtwDnDk1h0jYn+9VqzGQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wnx6Sm3vRaPiwRQk5alYP9x1qEF7zaz/r+NWbVR4r6ntynlalEC0VBFR3aO9YDF8tHbcOQgYvsqC4+KVg/KOn++ZTVzVnbFQv30358PCQ06IsOm31pBliHCa9ICEeNyM6Kd65MbT1K8OxEFqb0QTRt07wootHJJbfdnRmT1tbc6171SIrZVKGeCO84HtHHiMI9e+wG4UMNacz3BiNRrYw9PJnDfXWC5Z+AvaYBoadRgCBgeo7KKLBTThZg4raEBm1Fyx6I8hPtvPkvLz2r5qmVCsui2hX9XFWQ/RLjjAf87OtKh7K8mpV66A8g0133ETX/i1pYxsjhkptFLfZNjcgCsSun/HMb6vYE22cXcRZKBpwOQyEi8UXDVz8dT2xEekrz0WhFn0unYlTaJ2Y8qESxhf7n1yjKAR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VrsTyAxKEkGqQuhFK3dhXnLu5UOx09I5fCNCCMAS8ao", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IuG6vc7bfL2IEXtzWIRF/D0VaU89bQjFZOobV32E8C0FWuEJWN4PtvlhDfRvbyIjYQPKTyO2whotUMjCEIsDE4vR8fCDodx3YJGZizuj8hGq9nJKXxyslYlymEz8Vu7KXJKnYtv1J7hvDIkdjwZpjEhw3Re/pxIvLnWCUcNmA8n+Q+zAiCqIEgyKBEZj4Df+Qz7ONACZa6zg46OS7+0JXh54KnCw81hOxV1Muh/sInq4Z7lry815g4gAs0nWSEW8Gaec+wid2QnEoNiIFaWgkkhzejy3Te5ZgayEFHa3oULu4Sk0deZu1H975CQYki2CGR5USJqkGR5oSxAigX6h6DWUHuPm6UTu51PboPl/aAzQBNUQicP7njeCPnBZhkA5yLKFaLQqX88/2Ko8fUEtaCRGkPJGdduK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Vtlu+5xKi96WLAf9Mb+OtvczHE/mhZMTeNgrQvahojI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3kQKVKP8NIylzqv/OZUZhy1PdikjfEcKu6fVlRvXmIjSjol5VutorflX8Jf8m+uiYP/FuvHJ1eZlg+aVxQGTyLUotOvOoXF/CYA1glDlQ3Z9D5pFa6Q/+DiG9kf3DOi9fUlj5fp7k/VWXfVeGJn8qE/a6DAYuRlsGeaWL/RLFRS0NEGButtOKY1uND5OUZ55RZJUYQEVRQyWS1UgGwyj9Utb5FZCHSAxwc1xlW4yri3HH1GUJxgXcue8st4yWZe5uIMn3lATHSGtbPM/yHnqpTX3/jyhWV55b/kBusPMizFFpwiEPoqYqK20SN3HbBMaHf8ShoK/lrQa7YxsxdMlGGywRMgovYE8V3RCcXfipV8sb61UzqVJK+8giq7nEsuRMlSFG2qHjuC6ASj8HTE6JomgNqm2hzRb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VvL7hD4YIj7X6vmtm+WXSg/C8inUfLZ7N+Wr+nvB6/M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UISNpos+8MNRyC2gClmxDHdFcdN15KNYtdmDG6IS/QEmLG05I2OLywa+ZfDfSBj2GLKmGW+NwwnvxXofGqi1Ze+YHdfTq2pbCTu5/MqKXZKXeI2Xk8TyvUVpi/URMKbuaN63hTmuVR9sI4y1kz0Qbjo4XALYUwH8ZdGJaEUhjKBM9Q4ApyiP2UREd2IaxDSoB9ZZ8wJesD+3AoG+56A+ef75Jd90/O7YQHvmUhvyJuW3pwrOZFI0tOdGEOOZqDCF7NwTW3bt/f7OjS2m2E9flUxg4+nt5KOqSjm5E6hh1qpdtN68v5HmUgxfEljpaxDISpMYk6dUvcRi6E/xksshTblaRCRYn2bDvcISOZC3zbGYKvgv0mKZ4fCTDAY17HMxGIetkNQKwJQYkHbBj0hxTImXmltkfvms", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Vx6Auih68atNAVqu67YMw7NeG6Y955cVJysDWtfXaXU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t9diZdtqF9Cq7jWtT7kweIJCDL3+YlQDBuXfSB7IJyOfBKQwGJH9fD0dt1KsglCHgT0KGPHleeRIqGB/bwvgSmdzkWHhsk9qSRK7lL+KgeRzu4BdXJknCfGwczQiC1hCH2Du1SfhxKBvnyQ8hVxvnyASFXuxA52NUvWVQ1JrcE/TcPWaFS4HetmssYEFuK1kI+jmPc0XiF5Q0nehTDgdG2Gf47TV6eD7KTzDUubF2ywcXVhBfMuXEKqCU5vwkscrzD8W884ds/xcMwczKRwVtLBiC8YcMnOAXJ8fXIMDDzyWqqImEWx7M8pw6ms7CZqZ2QcyhMRTyRtRNRDxt2ko0ZIUXtE7p6EBmEisFp42VeRBQHoMmWlUmBsJxMu5/0r97lKLjwutTzgQX5B7hkr76PUiLl2GzeCB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VxJwqyHvmDrW2cNaNTeECRbMxyuiEe6hKu2FAUADjgE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XSon4FtkKbexhBPPXk39Al03y4cWoq8Lijtb1MxjeWQ9d8lK37nhJnX18ybjYffm2ugwurQ+BMQEmMuLu8l/e2X0QfJ05Ke5lvRM6a8yOGwqwoNDHcbXZFdZacTKzHERmGKs186EvTyUp8eunATPVn+47l3yqK4aCOP8Xuc4QoCne/d4ybKjGCZSDA5fptYr4n/hi91R2DOU1ui9/ga3F83AtF6BmCggWHUF7XeT9q/ovP82U32EmpUD9Byml+XtOqRPnZeHRH+WlqgCBqxlJ1m4g0rR7Ig2cYt92wcGNPbh6rtcimC3IkJhafDiz+gjDnAjPfMxH9yRWGMJFwWW0lTbvuQmQBiIT7fzHxZoYfcfj74z4zcvmqctTbDRU0V48Jcw11B50ipEzliEFknS4/FzFkT3MTg5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VyJM8QQTf8DaUts4H9N/0v0OdkRgAn0zNQfMqhPTlA4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "b9/J15GuKfNBUajoaKGir+3N5TaDZHbkBCKjHFD7zx4X0DO2wADFGTLWrXOLBoQP98VKUnm1sDny6gKwAubZeuK/1NlRiJY6hpmyozyulTqtUIQDx/7FDzZAPal1R5revgbFrLwF0HExt+vaKCbJ32ljYO8W3j+70OjhABPzo0j7OjCnxg61WvArC8UTwmujbJwSLiFVavTWpLL1mCRaLtXgEv5L6Pk2S6jDvsQhwZSQoT5dUwfN22XqS2gtyAu2HyPiMcrgNVx8rbqFZPRiKrvPykE6mzashbKbcTZG8QnuPbkDKkwF0EsT5NS6zuSFQgfu4fjwveg3cqkWJBaEeSQHoM7XSoikk/HnFTzfLP4z9fOmslgGPS+gwk6nFOVQA5N0XGfgP90SB/jfz8i32lIFzNme15Xc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "VyRBPK8vB0FeozZm5ZMDA/DNMbR/dTGpTV5jDl4uXIs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZD14AYK4fDJBxWxlrN43gZq5MHU90y3dbaBcEluV4wYQ2cRlJQbgqDHaQQOu+Untq2exh61M3Z8rVFR9eyOlnvj7+PLcW38KwMn2jgzcIKxM0Q5Kv2yFteTdZjnNkwMdoCDGhP4NBbeVdA5jlCq8XYDPu6ZYTsfLn4rrZmuQNSUdLV8LwqRyx8azp1Zm7k1X1ZqqgvHnSUWoqjkl8QLENUjV+XZ8si3ORrzYMaprw7xN9soH5gb+zC4Pmln6zlCo20BN5WNEABu88CiWTESuU2bt74+Bb1YXJ0JSl1XLhTIMcrgfG8dy9NjWNNISMg/jHG5QsBstdZAcm05K3G/EEQPW8JracWZW97aeiRirE3/P4dn8Xf72y9GauUZq/1+hUZn89jNdu6McxiAl7rpSb9fzak30Dmgl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W+BduEIX9E4CboaKQ49/d2URqwxBwzIA+n22VuKPfxo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Jxov3Jucr+336k2xzLAgBuoeIC8+rbKxBMVKme7ajM/GKWJfzclNbiAUHdpc/pitzBsx6I0qId6a54PbcxJKnxSnF/8q2eSESg9l2m5UILEdBEvFioSImYBf1mkeHRxy6cGDtNUep08iFiMp2zmAEF7Y83dMDvtzIwa6240oFcX1fuktzo1LBInlXFtjkUSAl+3i4md8hpwK6FJA1b2IbFZ9Ds0Ll+3ocot3h9WAIdkTRDNBLPFoJegs1H0YMQXXLNnMs6NeksSHipEPeT9VlEuKy80FzBngmj1+6xPEty6aqf3zcW2eV39EdPxd+ormGNkhJyLzViappYwkKJKLoaoJl26jEtiu8rY/RNJEAnnBw0Z/PQLjuF1xh5ycnPjNBws6FLlAk2eifQLHfu4FM7N0mFc5tcaX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W+c+qpyH7euzqmI6bjA8DK3SjSWoEyIJXtpC9QbMhjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Pps4GWSBjfsm/uxLsVm4/PHdFlQjuupqfYISmVvkKcOyAv89RJJHmj1jm5tljm8Bgm7CJUqaF2TIveMFyxjX7ud0V9MYV3rYMwt2xKUJEcc6l0uHRfHlpwG6taIHg+5se/OR4WxynGD8Eflt2eV0Muz3bacLx0j8C8j+iMsaafqL5F1nU19WlxGKgaiKrc+T9GtipfyImh5pQhU0FIJuN4C9zN0RNqD/txkpo+5NRS4ZRwt5oxH6TLDDnadRWe9s/A8PysSYvCldOQUoczCOJXGN8yU4q7xZDKgbchwIMW1mbruvq5MwA/VhdhNM2ANOmzGUcaEC/se1um0829y1w7zn3UbgTG0UpPjRVCgT+iTQrmNQVEWTE6YGapAMA8ZVbDmCm1MFrGHBNoe9p0CryEvz6C5YBeLC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W+ioF7ICB7HxJ0Oy2L+sDM/MUtqdU2IR3TkFLlRsE2g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E54j4EwMKZnadwQjS6HPhPz0tWU3Hp5OPrknOFuza0VeRf4D7RlqgXAKniZON4Au4QlDpEn36yn0AKgvk7G+9GJ0jTDvVxM20elmd2nxxmBywpdMFzMHKnP37ATp6bmuxfMLjAM9fStPN8EfsNxx4I7umDos8AKoQtOGJn4jKQU1aHICivNmeAlsf5Kq78whTXO1jlSIrfSC7auI1bmbnzgLyku1HniHrhiHRoRxOFJYAFqo7Jx0pYJPJf2o96fu3PG76UVh9N6FobatUwC8pmRFNRWzv9IxHeXfpwm4ypI4eIC+d93Eci8ITLzZm8ginWGYa/gtqGZA9PGQrJ9AXv5+DISB7cOCXIEXC/p3lXmsZqVq29GkLviViOO9+/Q/flLXfo3yMSwzTTcsL5BlcIhSC3P9SYjF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W+qb8EmGVW7pn93uZIclYiY28qJcJUUG9bxPbe55tvI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P04Nu1z3iqNAkXu2Jc+vwOngWB4PvY0O8YSXYhlMYXhJKX8PKS9+s2Q/Ogf4ZwgUuM6xgQQF+8av4ZB7gIcvqsDaJYbB5uaEZLJrNrFSK1SP0K6845t6NeW7sGvvIb1migMDsurr005j68d3M6gni8M5TrxEQ8mJ/Y/lrqgn/XpXT/kUMSnfK3CZ2afmTk/A9h/lIHWgPpjr2zRlBB1FGarLA0DDzFLxNH04GoRDPXfSIo/yY+AU12xyG8G4QF3tJ2AkbsF+sfBYWixpIuSZY6mP2s1zQkEhUEyv6x93DRAn4DAhKEmegk89fg6cFcrgrSMlZNaEpBPONijRR7uiXkSYet9mAXcOZGpnZAC4Ujg4V8XwT2vgtlMfHV+EeJCo4OrusK2RqD6FPnedt3TUVQop8U+LBeHv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W/DPhy8bQkOHZxHkqaPzGXkCwrf9n5pEdjoVp5j09jw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6cu6ZpEvFqgKee2ujIknIFo9PwpWNL2+PgwmAE/O3/V80VuTK9mAsP6fJgBeEnVxMF13akJJZhocq7rz21jtvA2Tu/6WEkcRRjrpD9h9asnNtVrSIVoc3KL5qtzmasHZgAecwK/drM/LEjzidOsJzjCdnLhUHSQaKTjkEf4gBZ9pGfBIMNh4a4hCHeRuCgRwnZjXGPhQUOoRq8gbHfMDeTS/D7GqAle+n9/GqgcWRvIlw9OfbxkHSsIVG2q9s3IZIL17pHCI3P0sCuTa0tSVyDckGuFDVy4tyalMGD/dTNhCxtaHWQfnXtbxk7piGNsANrOevaNvTKUZchp7qvz83mK45qsNGan2BTv81rKv051ZMRGRc9IWi/wKDYHoXxgwKBQBOQZ5ql78rzTnVFJhuG2zlaR0QWus", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W0rWSqvZsMRRwOirAga58DsH7YfRK694JIhkHf3Tc+g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PZMRk+HRljTCK4vBxSdoeNEM3BEFgjiQhsKjX8nYmfB1dFkROIhMTWeC74QdMMfwyvU07o1RwAaS4foHonehe4kxiz90Cf8uKONJGZD1Gu7vghpNmK6CIjIVjsK48DZies7AcoBZKjKv/SJEewVv2L/NpgMmQTmsnFKJASE5E4mElEHob/1AmwG/SsFkYOYzLwQ7QgmKkV+AtzYRZ8cpHJ0p0rq0wUOFLQLONvS4ZJBmA26O6ReOc4OKRVVrYXTQ+65r0IfrYs0XKGayLgtZ0f6doHmLC04k5vWBVhunnx6oPYqZ2yVFA6bG+VYzw51HE5CSKIZQNoLn0TaI74oGNRRGc3D9rh9wbpMui3/ZS5sObX8U2JRT/mn7OYD6VTMj4hswMT9aR5mlU3kPzyJikKMvkK4K/uNV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W1SOQNB4x7dv5trreaUYs6S2hPNkHIFFsNel/tcGsuc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "frqmRsgjHizAYZjMAJVkD7wucXPFn2haIyWbgWXCP6FhjN2RBwNBRqDUSwVbHsFzZibLD+1xcjEsPRtU6y0FpRThSCWPuOjwGdLuDTJ/Uuvy/PDAP+xQ7SoLBXotCuvkWwSYPmz+9DQG4mBQRrQ/Q4RrcRUC41tVgH1eAY1pXFFvQWcENcHvPeKWu684MNaIC4Rf3bkOaDxlQ1W4a4OyaSC8VaOFXSVv7sy0wgUK+13PIYZ2fVpPkzkXWNY9U4ED88f224t7j5XV4fzaISXEuYZ9k0WkTUsnrvYszIaKrygWqJT4aVWpVlmGlEHMTZkjv3tPFzWNVPdUKlAfXOByQzv9CaOtD8NVI8Emc73bipF9cn8phyoL6CZ2D9v+158GArPwNTq0KTD7ZWGdU7UnS8IA5ZINawQX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W2pPznXRuk3c+t8Msl0JMIhhvi5tuk1mZ5EZdSWAMLc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1vT1wVVp9H/OxDQWFj1FLIBG5er0Cg6Om1YoSRadypd99glW5cirvqzuUumTAZ4C3h1Ta7gp7n7Q2F992fKPHbQZ5v9oilPLqVJq7CIHKoo1KnppgofC8o0icwikok4wRQaFHD80jRedaL4XFGkmO/aoNtun8Ug7utBqkDrT3umEjnvtrx6jA3uJfNV2wZv1AuGor7bBNEFQ13cYWM0SB1ny+FwsgV5QzJh7ztdfYYAHdsnKZQJT/5vXyMBew5UEe0l3XMm5BReRSRZJEk16A/A93k7BrtkRPSL0CqPPf5dXTkx9ennJuZ7zgGeeHa+HoSXDrxK1fvemgBikqhFfJNn6I63WBcKfImUto/uJeg+6d6TTVkVzzoBabquM5+70+umK+diIl0yBSfWdYfWkJ7oEx7ljXTup", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W3eLzad31EgGLX5WAuVHq/UPQdcUxo7wvij3SYgVLYU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bt//PScZ8tH/waro8PmL/nrkJz6DSDgquYsYAN4tDMZ1xLpXa5otjLC2J7SM8+JaSXWs5W+gVjYrGnf3bM7f+u94+arM4z6L4ZWaUxnsr9rr8QKpGEVVju4q90FLp6O4MJdmHLcqCEwIxDlwF17xOqByjRQpEGh+nBNHLWYpx0/KTZqgtUT6Fuq4N3nFB+0yuKe8OvuySLELEN4g7emHoxzCL0g0n2sbm9Y6tC3jf6RMqeuEfsVvor9ow/A+49tjt6O8hKb0Jx+TX2wGBCUbZHZcAnRuhARgXZQvWsPPvsxs14JSAy6sP+F32sAAtAweAh4RvqvIZRqM3apYcpDS3G74Dqg7a36vTglWRGJUoOG030vV6w/HObIBE/BzTVcNTMHmgPzZWbaqJiix5QaJUpKp5lpyyuX/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W4kn0jAZ1xYGFrZZis6xjdOZGxLjYNTjsB/SdwS155w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "05i/P7grySqXVx1yJKNV8Mm9BDFOxjBY/VYIGCB6skhaokjIe8Mpps90Qj+uAagi1o0PMK+DCgjaeWPWTq3MiAE1czBKDPs+IraC9mbDqNBln+0or4R0f+0XrgR8BSYtxoHsjdNb7I3eENlqq4fnkKDfa6tXce2hMgTtwGP89NHSMZrDuoawyng8OvzxP6oimjN/CNN7NCN/9dF7DXQo+vuzWrDwBq9JmczwA9PeZwyRU0gjYWtEyFMBjjEMMDPX4zuMGD+NYhmcm8zXMJU74r1R0RtYpyhVLe6NL7ijXlxAUI0pcndujhVkRPJrMxREti4VsqYfTifrVjn0kG43u8KA9plHaRfwCVX6rCo5tPxHpewx/cLO9Zw+2UFsZv8M+BME5/H6hK/p2qJIRv58hNtaOEtivLA6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W4rnngBnaVkMf/pUjGSnuiKfc9BsTLHIoTV6aYce6sA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ow+NLTO9Vd+ra7rxKl2AcDvH6/Ov2odXGjLmteBQ4rzv72e8lkwxBs6i0b5GAsuYR0SUrBwhlg07OfuXd2Um2YWoNGH5az4uYxnjGApeDV94l6H3aD8/q/Ca1S6eESW6fDqceOZBA2X1v43mfr6tmVxw9ERqXkTgQJvmdysCZoDDoIg01SJuOtv8xlc0G5dDdYWTeeMmH5s8NU0N0cq5IkR/JIZOJJVSbyDQcIC/yIYQ0yrvbk4vYM5MYnfr5Bekw/pvzZ99LuDKmi7MscvpmXf35LPxF2/9cv7UUV/7zj5HFrOTxLUvaZTE7JkPNQtwAKQo4gt144Q+2ta6D1rUqU5MgxdRnwydJpCycth0yihni61/c540teucxcYLlEmCrakF2MDxF/J10zQc3lDWnT42XyJz8eqg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W5++z9WjHt8wpqMvQP7IHZVymg2yff+2Q5vW7dWki70", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qiWwYbcK111KUbCrFxoeelfTPw0LhizGDRXRRISsx2SWUPebxNXm2aj70CFSuORjA926/CTqwQh8384n27LyV0f2NvSFFa6vwnRHKmjNsvSZDBvz6Ec3WgP0uLK5KKl2HHzKDJxlxeHmYF40vw8DjXPwCyfCoLNver/6cwGwb5axjdadu/XWIthtK2rbnGMuG9LiQ9nze5o2fESyrY+xDkkiWFwa97u1oczWDidjSZFMHCUpQnurUgRQK4TPTHnMDVZC85DlrjI14/p25iDwZqd+0gJdccO7trkjgP2geHWoHK0IciYEevuV97C+sFAgccE4nGuAOPYwmQGG48Cj75drWKqKqXv0pUhIWp5PmE7bEF9Kpm3m/7Udx2S6PqFgAJGhgbLpTlkjXLcrvEAgzgJo2Z0r6fPm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W5KduGgclylO0kszBjB/HhLw3nVFdmJpWZIRsSbUvHY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BZnvMjLJrKJHCyA3sbCc3pxC6gwkO1zfa3DI5GGAgsZUoYZtaAbLY/IvGJsTYyD4HqDvgvObEysMEXaVQ6jeHoT+snMRVDdPekX1zqVgkc5i7xvspGB62kd9z0XlZW7BKbmvBd2ixElwUG1GLn9DTj+cB8MJuazG5NcNtSxU47uskgiNRPVG3BQAN05kiuKTGLj8cWTuw34m0D8v1Xmqk8taXTzMmxPtjkyWZS9uylh9vc7OYmf8QrGCz4dg6P1kh7Ti3SjMEUSvfTdC4jm1fDVLw0vSI6Hn4z+MPsJtqOYgWwNTT3kQ14WX3HvcPRoTrCX3D5jUFWtIh+Adeq1aSaWUf+wt6iVpR0ioGnaX2uCuElgMUeQByuDFUM5PUCi012WVIXHwiZeklX8lNj+jRQfsE3Hx5Pog", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W5nBhaeNWCbIs1o2Tq3vHJKqtpoXJ6YTjrYejFZgAVA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3gaAYTAEWnFUpRyvcGlRe9IxlfAMk+gFFDREamJ4ohDXib9Pyedz+nSTwoR9A2NJJaZZmFdYyCva733PjZchweMoHeiZv35oOpdeAiIDDP6o/9tpr79n3H8w0zrQB5aHcAQ+i3tgi4i+uv6YEMmLTY9YUGkXv0peeSyNROTM7U9Ab4LAEGk0iEKpomOjd7exOlr8itOZGQj9b1WLEkBu6pSullTq2D5zydEkcR2K7qGbuYpN+YIjK13T+VKYVQ3zDVnwUkLzDWxw2AgQcbXxH+LQR5SRDVRwtFqYubO694WbouREa9yYm7IX0z3bkglDDG9dTGjY7Qelmj11rA7rWazttZhGGMManTILD1IKg4eOVAiRjPqi36JDgk9QBBtUA5FKqpxM//1vOrDK/CR6Zg/dlT2aHMkY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W7DPV8nazSRnAN3cNbtfhqeWWvbq+IitOumvRGs3NxQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gHD8zZGoE88x/Ap720c41eSEm6HBXN3r8hi7a19rFxMQyIWbh3vdOA94eVCzMYsetX7cXInwTOEvAQXJWSkYOmd6jl5ZgLrRS52uvI896xgkdf0S6BVC+T6kUacCI34FMnoZNp1uLnvmv1vhMQsJy9yNUDItDW3qxoCyr5uFM1iFljA8zTWPkYmt0vZ8Lk8jNiOst4v/4EG9JPlVUsgeJxFMR92S/V5bGGGqtZOQIv28xpUNy+ljXvSxZ5qfPnIXUZMpB8SGbj78+7aaUp0z2Oiw+85jADWOx3WXdN8K6DwSh2lShBHbxpJY7vGFj0Kzw1cI2Xlj5z98W1qwWaLPAJ9qdOcP5KCOdXGozifB9qQl+GURH9hYtetUsCEsf7Yx43yydHmU8CREADRKYGMdEVx90f2XofDl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W7LoThqJ1MQtDxY5YVAdXOr/+oah/YoBczeuvv4Qfxw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gQ4BJ8eHZJOuX1PSaGh557yOFfQJ0LXkN1/aTQ01mvijrDxheFEAXmxmwh+vGBwcVii4HUbhsNDEsm+hkIsjd0bfIRzs4IrmVJaBnRK+Utuk/6Rig/y3tLE0tXZgXEaabpJRe5VKKmp3j14P+LCkK5dfpNY5eiMYGagl1eSF93ZMjoJvWWni+Y4+9WlS28Wxpubd7jvXQGRWQysB5j2MFVjYZBDyZi8zjIxWYLVdlr68KqaZeC5mR6G3CuvZfmVNrWeQD7XN35801B1mu72rdwzhD9NH4GxJMKEH2GFlwv3mbdGDK2Oife6hBwgANr01mRBHZ+eZuDXpNLnVKki7JT/Ncx+bLlK1W8Dr44hCtlMR2Ge4QJEY/iB3MsODnVEPhGloT1/Qua7o9K6FqZ6TwX/snftTyJtm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "W9GU0eoBvQ5FGQz2DVmHZejvEcoMtE5L1LRWLaJnw08", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6rRFTJFaVN6P8pwYEPQh5uWwQAPbji796zzCl+mvmpsR2bxO3Zdd/DU14wQ/0f1IXvMZ5z2WieEkL8J2lzxXgTw/mrnkX4ovZHvRCZMb3BfHlfPdaUhsLbGQMkh9sab5cbvRM+IFYqB2wdJVI+W6/7j7ah9iX1cR0nhtwOM+oX1t0jVlJ8ne0RDeiHANQtVeaz1V5URYVwxptGjR3i+p45/+3MVfo6qLHakZnqH7fuSZYQblZgK/6Pvkwk8/GOXCWtV8GHF4p075MksK4C4IBHEdmjT3PDvBSAaSN0bqQqHlZSG7nOdJTQKnQUXB8T577/vtFtNezoDOFOGlhL78JV7EBFH7kc5eOR0tvUsUOhpG/okoLbeIALu2WrkGkK2hmLYpCX+yWafzpNSmQNAO2G8Rc339J/NN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WAITYTTvaWrCTScrrUw9yP6pHgYqyPBNkSvp5w/EUKQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YMDKPaFA4+FlSd2A6s/SzEeIvPn+o1TwHtT/f1qQ8t2xX1vUeqqKHdBN+dS97hZD3xu10IDhO3RiSzqkp4Cca+dMpZbHw5/EopF9RvuYTRvw6qBVPpudGRZOTEJ9vTAEH4zxhi+5x4zXLJVe2FXzK/wouiXCft3iNJHtP0Zbl4Q3t7uJb+bW5wSwGp5EjbN0jOCXAW8mr1QlbuaPpo36gCEZDXBmbH230sQ6DWp7rVAJN2vj0hm5LwH+vCCVn9eZTKG3Ndn/iEvE2OcK2LA0l6yfgU82R9Eq22/Tbm0hcHS5cpPxHbiOuQcFOhQUVdzyfdnf//YbBRCm2zDaz7/RD8Rr7nWwxG0LJ2EF8LlmqUmGRXOL3zf0AyJSBvbS8Z7eotI+SiPVwGLhmzl06R/5EteVuAvPK5Aq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WAWMgqDxLaDNAXXZ3G7CTOvWR4WD448ZAEuwjv5EjAQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qgNkSlE+2PwDUFQPJxOyX0Lrl/zqGahOIoG9/jURbRardWdwVN2w5lPGYgSkBGMVxnaskaQlQznZ7/i7bJCbyjVqzo/pwJFVJMWQvuRUUJ13tljVDF7cKjxM1fdRbCKlDoAIfZHRqDhKIM/zUbp9Nv9sfFPpdk1dyWbGB68TC89uRlpPWxpTFIqg+akr350tZzZAHQQaD9dW+pg9r9AZHQFuPmd+ex/h6EQ2rrM5d0DqYbLtfSgQJh45rjKdjJ87DrUZzXd92Xvzx9RaqPyNgG0g7Si+jgNZrz2N/kPFhYVIKZmVJjcRZ9c+yif0Kj03DA8qbUlPfrWBcCBTNK24fwj2+4KBnQBimddOoOTpk3nmA80DWBGIYtclAnH1xemFRWlqNQ/YHYinDWxesuscfcrqnt7RL2Wp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WB87a3RoQ5qe8crYzfI7EQ9dOZTyYNtgWcCxjktOtCI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EqYM8eZcbaWNkYflTwCcEMNCBs24BTuZXw/pWPOwgmMRpzu8bv7rh/28gBjKEKht+gat86mVhasK2ylMSzm8qyCykZvaLhHsq5QmYOibpSczYFDvTwq+fTBf/vNYvkE5+hQPkcDMXVD7n2YsKh6bphLG4yI30Oyw2Be6BcVN6xTIS57CI6OWFNmEkRU+gfUre1n6s3AKC1g4Nh7v1SX/89LTvSVgZjsJZ2KaSvwThYHV3YBJz1faJuM60VbquZxoFMDK2X7MHxW2yki+97k+L6L8rdkHB0DhNAEvwn9XpZ40HxWjNdrIRbVcUGD9xcT3LySjH1KxX8Qv/URYYFfRUl7nq0Q5nBxB8o5Nn23cSyCQFN7sVI4DXclKSCzd77VaeSpvn6snbJo7vz9/GOfJvzqLGvwVzqKn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WBigjO+GD7pK5KZSjr1wZXfTWiv9MU5fWVAxsPI8uoQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zI4RILqh9Izw8XUsIjOpnB9HzN+Ie1Dv0c/XKUSPrkAD9WbwVx3jQDSUxOhPiKA3g+MU5uziS9TxJi9FmjGigpDsU/o8A+aaP5J8t3qltGd7lCB+g0dp1P2W36Kcoj31jRtIWBg3w3uPeQjpNGX6zHPRs2OTVEZIL+T2Wa8KPpBbdsIxOJn3uLga+NrOjsEgGuNPaOB2L/BX2+RbiQOfQ/LLtbcWGjapeicsQIafwuCJSw+i7YBj+KD6zWEweRgcdWtrHzaMysqgqSsCVjMmVHlbH493QsYnosoR+3tN25E0kWLX7++bHZaWe3b6kKoPlkC40P/h++DlUEGPAdQ6lR07d1R19fzpuk5yUlQu6QHW01fiFVEPHKgWEWgkSjUj552urTz4INuVMzl0SfffhCtCWoIt/+uR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WCGJie17BIPxMfjWpfvvDTFRc6Gxa1L7XzVZ7NXSZ8Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "swwiRek7nQuOmT2Hs/lcWGg9Td5R/L+1JawrT3BxMlfjqGb6MPmIWFcckyMuBvYBwhalG1Sg1gxWaiV6GmL7bLdVNQ230/OK5E4iImedeuBDi47SLfYhVXo1SEiEcnkEhjrdw2n3lf/dMB3Hoe+OAXYbrDm3kbsTP5HxQmB0ROvqej1oq2V3YzdiSJonYZxj1DeZ2qQX/usozd43YKVYnixSY5jJMwsWUt0kvx5VQbq6onZbqzA1cYInGMU5LIePaNyuw/e2pHnyb0Obj9oYZxobuL5KdUglq0eb27OQ59AAtGEqixrxq5gXgCHDJ0v6093V4YxdXlgBvlDTZ/E1/7I5hw1HUdLzD6sGZVgNzjx8lt4qIQ9zG3BlBQiQqJa7i9Dj4vjWFtbdAeJj1jtcQeIIx3ofZi/C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WD/e91E2U6CGL1W2CG1TRJekoREQSDKXLatNTNjpgyo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c267SuIxmGhmvBRmkhg5JFWm/o6/J0CN7+xgEgwQ6GAUJGl/Hk7BfEsQ7YvlK6tI2Q2LzaDAXNBUQ+G4XK1sdQ06G5WcIH+PvGhet0omtEVmJZfnbHVSIVIOIv/ib2n3KPO7ZeHUy0t63WcUQg+QshvAzGdhUay5yGubakRwPQZltUA72vzKE1xN/ZmI2S1MWaPSItFoLfjefIFFhOdByjCjIe4ZWCIQbQ1Y1Ps8RvIYrmSejN1cPfr8JpOjtm3wpMLxCyEwXam6RjmTWdeOsogqoXjvMXZ6//eiEs/bRlycBWD5bT9yDO71bvv1Yr8kXciaJN57WmeyC46p5M9BdFITosNajzL5bCDOXPzmJmwjFYWasi7rVAj3Eg00yBYA+sN5xVAC58LpSRUWP8/WY6F/p1Gh7+HN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WDGbgccH98MxL6OQgeFw73d+SmDqUHuwdi44hyRq3X0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kPuu4L+sVihAdRTdPajz5KB+wAbQ68Uh8dNbO45EMkfMyrdRnWvQUwks5zb7d6x3TVx0KNFMUN+rv++FL3lK0V3o6OwqUsPfCF9wmPEKszGCJ5clijz5/PL/QYC+MFlSAj8dDs6JnP2DQmkgQbWSPKrpNFr8fOnq4c+wdHMOM1C7FPj5ip5vfE+qlUy+wjNIppEYp6684sK4IHgq+1IVoRXS/ikmbHIf9NWikJocXXdbz4nN0GKXxcEkKGPlcFke9uhas55A8n6u7hK9CI7eFl7u+44ACTJ0P99xQUL/jJ5KK0aimpggehuBY9mgXOvrmQ2d9sQcs2Hc/n24jKoJCHwikXtoB0BdNKL+vUcq312tQg+QpNP+z72+8u/ZSYkMf8uFG+L47boKkvhahh8XQLMtoCSkUfdI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WDZTUlWL38h7tjpyQEaOogGr6Oa38i4vgTY65/P585k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1yf2LKBpQRsZ3Ob/6ZCVQdKbOp0gIXg/eWMUDPGbZRgImih2MuaRTPyxmeG6M6xfGqAaU8M65q6OG5rdgsX1vObnO0OkITxG6tyyK6uL25+vGm8mEkt3NHOfBxvm3QKtWU9W/4TMTwuq6EAYMwvbM3sI5YD+tkgDJ5lCRQ6vZOEH9JjkHcsfdEfejTioDOaBEIEXJI0fQcPBkCftuXzb+3+H5O7tExYmsnCbk6fubJkQY8CHaUomctcdsGMRTZ6HVOw9yaDMKIPFOAJBRH6rTe21n1yHLZUCb0ZZf87gBcHOtkhow7QFEnVDMzvqUc9a+mGtMx5nhRI8ihi+tNL9dfBWSOU5SdAwUxIegAiauXAE3hNOfF09C4HDgGd0gnM7uaDZ6fqJmBECRhPiwF4nQsLxVLA4v1KI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WEK7FhZfQXZMjURRiN8eVevE37bJpU4QHT0SxpFC2tM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M2f+56HEd05vxdmC69l1xViT9eno9dyBn1VBKKY1FqO1lg+GjdQsejoV2b3L65wCXJ1+gLl5os3gGyGfUEEFb5Lg6cQ0mMqZXp6fYUagaXdPh5sHRc3ZZLpKFeIYODpgL0zj8TrWg4D7HRhj9UFWVc7vO4WQ6/M+Y4DSnaH5s9hazu5nVqal9m+VrVpwlK8+Y4q7xgFc6ZfL7vEDcn7qWvXJKfWoJX+si/FVzXkeWRAeRrGQ51l5ZBmNl4JS6YUGl98sojsc9wUzMmczv8LkYmkMuLawf1K985XRIy2efKDRmXemfBDes49O5Iq1Goou/mPFGJO+3uB0vM2EcWXMa3W/L9KD+Tpmq/tJXpZRCxbI7vSYNuJD0VolxlfLOy/wB0nlAZUHTRmkVGUdNMwTpT/X+sU9E93b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WEfyixFcEn69KOYl+ZDmT5sFv/M8I0yo1KntnwWY25M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W3wQ5gkHWFxVnpEeTIWWhdT/eDZvHvyAlfkJAb6ai4peUJhKJG6yz5/EETP+GhV04hLrSbmgsa2na20QvtYknosrKME73psnCZJv4xJG6ZurwzoeBPf56KWJRuE+GbSULGUGWxCZAaTz8zkH+Hy2tfnbwfQs0J1TX54pRcpnWz16jeDK0k2mmzAbZTAGpkz3DRn+fT1x1bjUs03NLlwaZeet1IAZZbCyO6Vw2V+bPtxrpjsseDansljO4BM3eRWFkJdw96KBunR5D8kq+i0ogaPuGSHtnIpmUr4WhR9L6LvBJzItyXcxRyoE82cZDoyRfso2LXqk2KAd+a/AqM+O3S8ZzBqCZH0AQEMZg3H8p8gDcc3y68EH7GzdC+i8Eq9n8ouGEDO2yucA6EamjA+10gCGWdjXjZ+E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WEmFcN6FPFmlVBngGTN2ax4XF/dNdOTXefujDMeOduo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aN6R0u5HIfKq5UKwlzvQwk53yFVn4X8m4ujH+hmrv9ofcIIs3g+1VQNcBLR4ApBCFQ/qiZ7czsQUeoGXITgyQ3e+QDsRBITjVzAs8NqpfROor42y1gIQYwI1KQX8/ORnRZ7LDffgL4vAtr7AbkjKHipjuy6CbAyNqO3cQje+vSNhOAyytPAeMDeDq1fvQxDB0B3+RMbaFp/wkBvtUyJ4SdDWFet69MIOUaa0STF67kStNZekfV3jKhVjDRFXkT5YbjGQqJhEOaQ+ZUrGOnhO0iJhpX8B3BSur2TY9F9aHLWy74Hk7nqcYqTvnhF4TJIN9WKd0RnkkEnN09uwPlObd8YJMp52UxrZXDfkZjlL4pkj9KCcgFlKK0N3Rp/luOMktB21JinBw5NA+6233p9JD5s1GN17UU6l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WFeisB3yTjLz0Gx3vCISV6/D50lbQg95U5zV1v1QrL8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5S3jg4iCeXE3IveetTyi7i5/Yic4NjMF6wbefJy4qx0vOUONO5LaH8nso7gM4xQL04vP4Zb6EWsk+YMrvMRMIzZdzMG0Te6pQjq5sMAXtMYy4gTdKD59B23ZiHqyBaPLH38sS6uTq8SNxPKymIUPmEenURDA4bOxWhihQaKezJmpu+WTu7R7E9NbRN5Qd90YpDArTvYUv3CzQmMomNt4GYoozDNUtplsg842fStLMphzAkOCQ+cSAD9M7L6eMYi7Vk+1/mVV938X6OfQp9fWtuCtGpif+9cBeknkuEi3ZG/t0+GF6Ll0+RNw7bi30Jkv/yLt4h7Jkh1YYHcGB14Et1HPxcmDQjuTVAT1ErKAB/e/t94Lnal80Uau1R+BaUprtGhUeZeTvClaN40Xbf5YHKV6BhNdae85", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WFuNF8A8hNU/l8X08f3+iAdlcj2FXxcIrhmuHfWtWz0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P+9Dcyo177lFcP12guZrxqI+Dji3u46yFyXSj1tNv/zsdUPJyNnJ2IlifK72/CTdkZxwPAGhbkGe8yrv4YnCz4mEjkUQMRqh3X9ZligIRzJC84gTUnALx8MFlimvwhlOz5MongvtxhV+OUrfXgID6K7fXnLxWLU+pd+Snzzld2nrWkAMQuIIhLy2g6Xvq1uLEt2RETqCdXLmJEF80rCS01ARrvJXBOeQvaCPy8855Nk5H7NIojrBEgOnQc1oDe12pMhYOIaBOfLOIwBPzI05K3pWcg6a0ubB5KolMcIYsVFOowI3RFT+g9S3DLUOqhg8SW9An2gEM0Dpr95mMVw5t6yHPvdkA6XErB7dtMQHYNxV3cWVpUao9ZTSndtyXUcYHVpaJvgABS5aIad3S63xDTePu9sKPZCX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WHrsIZHvpLc2DnvvE2xgYqlcw+t2rNBf3579Nx5f1cQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qHh7XOxCkc76Y010rFBxhgBmmNGfoc6+Yt6UlwBYkM0WeFo0decuOV4QwSMQ0XBp0JHy5LDA71unHn15cWH6LHYF0svNqgYrUdMnOn59JjpypSC3/BblH6ZULZYJXAzAnf9QidWatJeE9fxwPMd+pZZaFdJds/tW9l650pXN8QORb7PbkR5tXaTVVVsJbbmabXUAYZ4k2pjHAFBZEAdWfjxOGY5VyyWLS2uaObmKLvbE9YPW7+4b3AayaxO/PWms7XURckUw+fEhfTrC2kZAlGBC/CJWdZAlK7NNpZ8PVZuiOsvhLfQzM8TDzmncaONJ2nZHlQ4jmHp1xEjltcgSPmcnfaY6PBv5aNHBCvokUuRPh1eLTsEryZur/2u0OFtTzL9YABu0VLzqv5/5BpdcHDud6VMWJq4+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WHtR4jAgyZD3t02gpGLjSrj2+kPs1URz5KKzZDGLBCM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d/HDAxbp09dXv5sxOubweEJF3pP9VhDMCYazi1Rqacn+QxQg8ek0TwZJ4K828dn02i+avhHJCtEXoMM7jDvmKZaZmt8pCemTTQ7jWL1UR6KFkaG6usaA2Tgs4brQxDF5UPgiGNv8BSsRZwOWnRo+dkSx/DWMotlb7QTy0VnoQRhscNuMDfUUVlj58EJ/kPcsS6Svhv6ylgr7JejH7HkwVCKXjN+RZqfWJ+3zaTEi1zZ3zO8ReITh0IRZ/57G7BmOlQDTg+hRtwAZ2Vhmdiv63f4tRN4sfpn1MOjiSrdJR5JkXzGKPd8YlFvHaFSsksqiQa1lV/TCunie99m1bek/MXaDnnKUhrVrSRPC0tJShubtCISaXOZQBB7kWlmiNsQ5RMc2fX89hpgFw27GfjktttO349bC2ssC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WIWvbTBEtarX9opwjsqO3m+TD+CbELKJS6yFVgwAlRQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jUg+xqIEg0m4fE7Bo2oiTgDDUbGEB3IMMetW5y/16r6/8M4Ok8s4lYSgw5x+/1mC9RwEtCkfACmWVxKut8bxqENBg3P1Vz0N4hSPVMZx2CRkYVOvYLmDlKDhHveYKZbJ3lxuw6ifk8k2K/wJwQjsOvhFITGXoLabLsGIOjpNaG62kzbKSZUjX2Nk/3Ph0fNE9hYqG7ZnFQlmI67nu9f67JSIg4O7JTFCilNrregKAC3/XZQUTD91pOqLA6i8+KUrMgILAg+3u/pZ+4Y+/OGPnkr6DyoIuKeTWXJGlP7aFI9Qts81SqIUKq1Oimot/g8AbAGcjxSz+PTKJcntERtCekFmEu/jaWYUadMI7Eqf/sZKTO6uSU2tU575RbCjiseRBbPQKNi3HKroOu5U2ZvC9o/2r9DOnhFn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WLL6QwNlSIcyTidLnKsnw35nku79m8hbZlyYVCtMWXk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SrOjvUamWHU9RvRB49qKZMQQmScvV5dfRKiJc7nyZQUV/cAZjfmkkdMMXJpvhi3F4jyc22lQWw2JixoeyX2efq2QLFtvZUnio9CcFodvqVldd83I7/L2YVAD7QlxUsPPjTd1TCh0TYEOLz/1ZxoEoo8BYdOowAc+Tf6zi4SYRdrHoBhxaVywNuGNevT/Iqf4gQYyi/O90k33luWGgS3E+o/6rN+r6thrhl2Rzl9fE7eqlqjyaJB3BRjj5nsxQuhYRfcpsKSqVXrCLGKd/ak4a9nD/Z8Lfg14WuNJixT3GlWZID9tAgrbet7dy2qCvs56mx5EebpMw6A4bDr2bG5y5O8alSO4u3Jfe3/53BIR5903fa/0ArN4d5lYl2Vt01FCmOiU95RwMGQvS/W8mfeXt5Kj674Gx1At", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WMFYsjPFDuV2yaRndpNFmoXf+WYVnaIPh2MPnLsPZHE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IMaDnC0pdoDMcra7kkgTQM8YD0PUmgTpsXHn555KjoGFFT9XgLdOS9/+gMjggsrrZhuJmbWkAlPqyo4rBQ+sbIByuBWOPthaZ6vhp31bTwSKz2vfkceUtxXPIJtkZt7OkPP+y/Fr9/OKRWwFg/orIApXK+oEqjeoeMuzIWQFhU+ofA8KfZtYWVlX45yN0yZvaTl4jPLb9QCyA76I1R47KmjENEQHRVBTRqjCQ/CGXawkL/1ek4dm5hX/Fb9Pe/CnkUAuYIh6Sw0bpY0lBAWQixJVP4G0B+eflL7Nxl4mYb5zDlUP0GXdpB7/EKpz2hBcWhTOqKWu2/N9TUUws9bjEBRRuEPMJWSucSQZqx4VkI4IFrU51vbhd+yKdiH2ZP6Pc0LbSAQ/5yTC9GVONfrs4zhps42rxbWk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WMWoGJfwPC+8UIN+yyeq6VVsxHAhxe1NQM3wrlaQrWU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qR0NyUvjDMzAwLlnA8ZibYAaXS+jef5CPlAE+taKr2sTLet357IqQvdwPQzKIaGdLK6dvxJdUrbq/tngrq+WV8UlzGCGjxSLvIKiKdmSUjj6YLvyIwhSlBcsdzItbJNAz4uWLlbOe2kfHzq8vMh17xqh8tj3/Ped0r4BDx8K1hXNA2G1LI6YBTbWqkEkPiKfuy7vJ6vUVKIpl/ibr7Q+awhx4b5C0l+aVwOIhzyebhjf2Q9CvAHfuxp6LKbjNf0M9O4ZWIW/werBJ/CkKsXFEhzGeBUEBdmKvNRSgV6PnMrfaw6B/M8Y263le6uEJyjJ2zgrDEsU2dCTg2sONqGKWtzHECTb3fYD6sdtfTvlS/yWB5nvAHlMeabPnmoypMPwvZN/4qGHOXJgAN7tws1agGITBcnQ9zNM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WMYlriCdSiLbKtBI2RELUgBkIAUCe0O5HVU+ioS/SJY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/AlNpWCQ3eSHx5iKdb10oFsSdb9pzPxy4fN7HYBTXN5x6K54SZ3bwsOusBy1s2Gf8WQIYB00bNdJvDXfLCY6C2BpkYjxqhnq2IDXScafs3xCXvGXqitK48ZwLtO8Yk09/2ocPjCcaTmLviwTScOVbYD/Q3LKhtDg8LKrg23dSlp8U9hZ2+b5xhtswQ9pCk5ufPMqPnYwSveZakZkPSphmZBRVcrU7FIDSV0VyBq9oQs25XUy6ICzHKLQ1C9LY/eNuTsuIjOrgzY0C9wjmpVBu9BAJif6eh+YXe4kRpDrWKieR/E9MdG/ZTyZGWTaWyOIX18rLblIZpXCQm203M5LlbQA9TkCsPxo5ZDobjoUTW9/ZPbnWWStbhT1wjrbkaAcpSV76kDI8myfU1iUL7/MZEQKqpEtl/d4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WOngfTxNGX247AovZHClAnQcGX+jJo+AGwDGeiZrdHA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iudqUPL9Jj+EghT4PNmVfw0VGp1NEPXW8JywZur1kcTmkXSufnMN4EnaYsBfxO7JwLM56f3VnnA+VIRKA0iW8lBHKXx1ARjqXKZqxDjZ80M819MYcJbL1mNzfGCgKgaaaYIUiElVribfbrTvKxpO78imkI0SwK3RP4igcW5kRbel0qOx/mtTh2klPYcvuy1cb3/BJ5VdFY60ypYiEvh7rlUKr9IdrdR6yXYIoDThLmqQUofKD57woRP9hHO4RvsDFkxLp0kP+5gKqfyMoRI196KDtsnN3AVvXKN3po5DS1g42sPiCJt0+LuyNry/QjMYFkUPU39Lb8hHqFro72F74N2ifg4OkNEVXuPoVKBPJfp2zI9t4L7c5T4WkSi2ZRhkIYYbRsmK474oYJdqwtfBlWnfIOWrQMdx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WQF0NCf+yq/UQC56DPD1Nvf01P3wFhczzCvtiQ6tSMo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+YIdEcwU6ZJ+BI13A+walktPljOZ8pGnvjtX3JtDMq5uk9Of5GWOqyI33EwyimJUlARO/xwlDs1kunlkn0p9sXSeSX7tgg4zQ+9kAYJutbgbWm9mjVDUJNqSKg3ymPCLp/Q/e0exk7RpIuKWi/7fB3VWfqjZJkM0jzklUtpJ+skXtZCnWEPITikf7721pVRGW1IefhJIStR5kmQNM+xXcJPoq1uzFJwWwirUxZ5+tqAfVfpu2NDxFiOLV6xySybJHY5zDRauo2l+Lx2xzJCOYr9CsRhSjFuHOF10j5HNobrFrcSoYLX9Oy8yhjd+V2dM1cPc3CgAdsR+yvmVjRq6khrM3cavFE4cIwMkP/57k1HYG1UGk0yI7aygOYzk9UlUrzsMLV1lje4L+MYpIO0S1yXl4oM3/BzC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WQsECj65UKrY7Z4bZ+oPXbD8yOXGON4YfGZifsvzAQs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zt/KRpBqJDdp+WWdOclCLcDFChDHIGG33jeBWKUbwhxqatK5fzc9fI63EgbIUiFJ/jCe6xQJdmxyxyBX9B7EiK8esytMuogX10RHI+DpmR2/a29NmHWUwHpn5a1FFsRgefwPXa6lc2aWSyi0B7p1g9gUctd6wPGc2VGZc+rjeyj/8w9SXwyCRohjeTN6lXmEyH3wMogzCqvjPGMJsh0N/YGYo/iviReo5MiBVrAxDRQawJqMcMNTl2YT3AWwoeLlSoIS+IytCJJGsnKL1BeRq7ErscD8szps69pvxjCnr6SEcJlDesVP/beODDfpXBFNHS8E34jlEvhUPMJpuHIUKPszmz6t6YepE0xJdXGnjwQXNmxdpp6q/DjFBN9zYdaxXajwrydZSD0920pq3z1tH38jzcxG496T", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WRIJPubr7czPvcCfi8tzZ9mhsxTLi7y3jWsOwYkBFHM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PLV91vK2eyUf1NAnVTLosIJKOupuK6IkK14AOeYpuM2RqlgPmtTByv+dioZt9AZkGjZejYJXS8w4vGCQND46DliQT5oRlAjNuNhyI9inTeEQqFKd1CZbfAJ/V7J6JsXLNQApzYUu5e6grYbXfhnwI6Q9ffATbfT0CTkIeYAmaf7wP4ubqzJE5RpVGl4Mr//oiLfFdgnj6msc7QRwWhjMY9JELpNSj9FPkcVh1WAL2DzGoPn3KLbUT6vgeb1DkM4fRjZGdQswESmnBHGm96ssVTyCVc9fUGK9pdyiH2yuz3jHScwaN/a216OiHf4d+FDw77WxZUEFdsY+TGJ3zVXLFg7277F3J76uw7ACPIqdk/h31aEVo9h6TyxvaFDxemrgVAcZKLwe+9N2OFloNt384t7bOGNvKKL0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WRNJH5eHVG1iNycEqaoq+t+jolx1Q9wjVRWXBIq/rDs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aO9J+gVn59s0hCnyb/Cj+EqYiTmfFZqk9h4O/rFjYWFhLJdcNCw2L4jE9AoEjw8PwgJsIniKolvbiWaeZOBPhbhEGrhiFFC3dLan7sQwdk5EO9Rk7fv3nuKbnbYNYXhecSeJNCQ/N4eGCBWEo8rHvsavAVvwKy/f3hea9GC8urrDiLBmbPUqfdHehK7JxrBxXtaVqa2fb7JYx1837iWCJKXgA4Vs8pdf1t/HTFAErooGCDo3sgxClYpgOO7AOzGqRW8tjsJCqrIxck06TY+3lfuXWhpMq97UdWWDJ88u7JxPmT3s/CXtGF5uuNoVCDJwFO9TuzSnN+b6viZ26S8t/JNppcI/KB9YeiJB12xW9bmu4XL+GNw6r94piA5xvyvi1d6oVSmrKxBAc3vvF/LB0TO+MPMIZ1bg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WS18MowHygCNE2fDKzdiZ1aK5+q1aUuFJxTm/mszDG0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WwaCUuaS4GeANhKL1+fD89N5hfiJOJombuQ62paYQ5MxV8AWtYucDt1JgsdCMt0qX7MBJoJeUHkKDtMKHwl0axY9JnN2mCqyKAl/W2j01xNCjTwwITG7Jhe8D4XxsLg4H/rL1geSrqUfgA+A7zHTYSBuCmBi2eNx9iq0sUKuE4APKX//Bukt1oZ60Q5CA41adgNBrhIolGr8IRN71Q5JURuCkypa24wmMu/79Ee+hDvzqCvj0JZSE47zCh4dHaB1Gr9EeyG3hqjiBiT65TC0880F76qgRy1q2o35LNSlgSVW/Bp1nMCXlyo5r5WVDoCptjB/LU6B6Y2b775PoYNTujdUVj+UiiMzKNOwxsJkNArDJizQU7Ms7Uy44LlPsMDOWGXHpQZplOZCssMGxXlx0DTBMO3uhDnD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WS4YoINQ5eJetX7oLh6clY+yWG2EU9oo+FiFNL1qFzw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rDOU2Q2OgR9EdcH679PNy2tKyID+JKJx42GPmeu6j0mVUmar4HGqAUE2iMlllMcy2drLfxfkH0XyezolE6oEEGV7Wc0RiSO8QBvyHmqpdIclc3WX51wDq3u42U5Mb5XCqrdmUkZlkiFFNcBm6oy2lStGVH3RYodnP8GU4gJGaAsX//UkfuHoARPBAKPo6hOJSW0Q7hAHR2n/7qcabW5cSMneom9L4x+wPWuhXQQ4ui7jHaGHMb4DNSKdbxI3l+p9CNsD9sUc5K67Gmusos9q0gJU6FQodoiAmfR3q+0Urg22dkujgq2tyhRlUnqN7R8s1qByOKGbTW21xZbThkc40UTir5E1QkjrmudZM+1dvSvRcu69q3+NaqnhEoLp0ALyD3DrdGLUyzDAlD4Xru3SJVx2ZmzzElDO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WSOeMe8CjJQaBQ8CyWhxGPp2NZIDlCyWw6UiSs34syM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AU81p4BT/amIdOHQGXQkq+0ZkPQgXPTak75KXzSmUcIKYyG4ldiM6toqjxbdfui3to+B68qKYanMQ2hVsPmBnjeVl8k1IJPLMFoTEScSwu5YLX0oUzgw37KpLnWvM0lUYDAeKGRYckezNQwQFmQk3+LsawPWJoZm8kX2gR/xelifx1dFz6PgpssOmsKMOalq5+YRVL/nEBncEsQrxIqvrlaGiAlspVcBH3OV460AN3VyIfxGRE/uomkDub2w3uv91ZscUlCHk4rlZGKeqOz1gYiHeB7mpuZvNnaSBZuG7D46P7WCxnagfBuruGHWJDN4mqsV4DM17h2DlDvc+4u46ndjKkhIaMMfG8RRRX/wGmV+cDTBGZjzhDtZhjBWSxOGBXFL5TUtptpGDaDvUfqKmpuRvWywXExz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WTAFPey6tCH5uLMm7tR+jCP8dmi8sVk0MjxbHs3o+GE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "stYmBu+t3r7Njr4hTFxw0Ppw61NGJut6sClwr7RPTlakM6xmXztphm+N+NlpUL1Ac4a4EBjh0R1UXZWStTMQ1b/FmUF4kJtecwgwnkVoabvcwSqmHynofowbLtLa2HSjIlm42/EKNuhLcBiM9N/5auu4rXhzpuzh2PLGwyzyOX3n4C/OMVlX42IwKAwYcVVk5J3C6EjOuZ7ByFXtUDbFoX0nn5RjMaJ25mij3aoUB9aeDYBZmO74kN4xjHunjiVi3PJLxUqAJPcVZACykZRhi851GeU+BooYclEZ88KCoLLBKorfQnjmuXjhgs3vuyk7ifokE5XdM/0Sue6npUAeSACkceHeHr80DCPJdcTWiX/Kfx7BNYmXt+6+2ERAYOz2GJB+Gm0KLQ8L/RQ3ZLF47hnEMP8vRoWH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WTbwtJhsH7F891rKYCU5+toi9/dlCISaX7VPVeiGAZ8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GJF/hDiWLFAjETGJykCBiXluqTP9223t9EVe+hNiU40yoKAk4gQjZwKcszIE1MGN4+mEEkqpOgzFqWl4Rk6Tw7RPCJSyWC/uEFoxoPk6NGJEjM49mNC9C9Up1BjGtx3BZb4uyyLDzIIQJKgiyoH49ogYAOe5Wma/0uD+ijyHba2wCEPLNOOAz1HwFP5WEzB67aoAbzf0KYccZMV5X6LOjTn+GSBupA+UpskFTEBgBF+N7KPgrqk9kvXem320vOZ9cgY4PlIpllxeUhspt7EJF8NOIL4KDnrbCbl74NFHnPSzbEu6KPuk+Ogokc6g33fzvd45v6JVOCByytE74RWEp9NByxZYMWmBI3LNBBSSL0wo6WuLsV1LdVJjILdEjm7CyT0jUKvXImTam6+qTR+pypbVJtTZGGiU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WTlDa1i/A4Wow5VLJa81aOO6O+MUmUN16R204/RquAY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E4wSH7a+s6UWkXfjXmh780gjK/2bl7cxfufhtP8D5YWrax+AWJRZ6NeRjKXrzxRnWxZakTxAMrhQ47B3olSxqNccuuA98X2B3SuoKk2TXqf/Ku71KSzbOC3NHZ3eFfsLbBnT9NyDpLFvS5MzMyZDl6c3TcQ2ROn9abKNzPFDQt8hGw8FBcs6OcWoU0GC4X3xFPM2hOm/qKjpFJii6LEzDaz4a9IPla8uT06kpIRM0+VT5XFHt7HmZJoMB1/D7wlrAxa+sYXy/GRPpCB+1DKZ6P4b9ssf5IcndNRFkXB5FSlc30/hg3UobVUaZ8cwGz2Tkeq3rngDS98PULLh4r9S33scqa7j0Br6sK9DiAHDWjH24PqhUQ/9zltA/5NboeFsoBkruxklVWn9IfyEtK+6ar2yFiK/fdQL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WUg38LtpeUWwcQEhWwgrGvgmxlbvPGLSaWl62+Fom6g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZWIL7Le6mCA2Z7XPDfDWqkqlaAlmCRFhq8PbMcDoDhH5kiOyJHjHYXPO9/J4Z87eIAY0ms8hQ7LEBEFwtUyp1u/3+Nrb5as+574UpSAvd2Tl5F2b+84iJmxdkHQYvhvEzJCNdyjr/6HZ4yhumimpst+fx0ctfvJqONl62NU4cJ884WNUttObM4Q+/acNd/tfNeu6Hbz8sSs5LYgMRutTsn/dOXhNp0ffxPEkdvp1gAEuiqvD4DAamj86HUJQe6yGGMuxHA1677/lpFNQGQmIpeyNt+mwPjOsOruBdToPUrXF9qouunfH38BcrSEij9IernpiIMJP57Z3wOcXnuE3koBGX3gW2RORQBM6ecGozkqakZBL10gh12IeCEc9shzWerOkFpV7PPT0Q4O3wOEn4uclZ1e2vKoe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WVeWfF51RQzbWuFY9b269Z3onMasmpw86bdLRgNfdfc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s15fIkIeEnt8Vd3wt1Oy4EAW7r40QBbvHmpNl+R+ayN1ichywk20EtmTMNnBiuYMQn5Xd+KJda7B7e2eJuHo7/Q+uGfpT2hsGDzLdWfZdGRj1yG4lSdmGyKgP5bmDhrbD3bCq+7GbxI3pB1HKBYF8eUZcU20MakfAvIcxBVPUkdIutmAiN5SFzgqZxXiIXKiNODAB/QGubsgRHsSWZajrreHCxeknsxHZ/qdp2sTIQwfuQbStN47rgpwm14viuNiAu+0csyOqYgPE1ufORdInGlB+Df21jj4Bc6PZ5MdNqMpk4HDEVhEQBd2g4CI11bTcQUHirBuaXY7Y5Yi86XVibzVF9T2qcAzNqxFZk3AaEvKYMywvCi1mGwgJW704UdD85NpnmusxyyvshqBPbyx6ahPLerHuhQK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WX5qHvDwshc2HHWaPTZ56eMyiZDMQ08IICxFkLPpu3o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZjeQaCx3IuYsY3ODlhT7tLGaVCHfgGGZgr1jWGZdi72cvuUdsp2ghttphWbU8Ma0TrwEkcqyonX2O8lmjgxvgYSOmBlFjHpUVIxsLNV1wn5Z9ngchiiZngjA8nTivMqDd625E7XI4ma877LBRjUYcYVGsRGMSmC48R3FaRQMwoG9HNk85K6pBFaLjiVDezGxOrNMCxFknQRKi974PWanRzCsI9LUTE82NAnFmHd2maTCaE3a80k3sLUI0P15P9G++iZA6GolkzAcsh6IJXQH4RO9OyCMeqt1ExQrB2oje/nW8I6Xvj+aY38d2XN0vvTOV+Go8swbBzn4xO52LWBYbi8vFPXp5m10KZhnng4UPi7s7uMavLIyIAShsnpsYVu+zvkX+IVD/9PIRIvolmo57q43tMKUKiTq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WX77k8UlCVbu1gHr3NbWWBcMUtMjWIQxb4U6gxHlltQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AXc0nPTffVfITPMPEFUxDUH/+89XmQOSN7HeZCtpENn9Q6QT9goktRifqeJdZTg3Dh986kFyCz9y7FlFmtFT/Bn9Z0zyHXuGqL+WhD1Cx257VhMdzszb8F33Oc5KtE00xsm2lH+55YrPGwcTL+yADiVQdeh7QR9kbQTOoP5d9filyr4K7R3H0y4Ro1PwJeQQSBquv4bzyaMZ/2JCbZnM1G1Dt48+92Ph64s/6813bNrH+xEZJK1QbQ6SSAL5vVVsKscUcxxWWNC4FIvtvzn3BEjtFnrgP4CgyjkfWmKqbf/wl6f5sN5ioeB0xmgeb/f7nDC55vdnQWUlO6KrSkPEdCjPWgESRwIOWbgRNPg9U8NrYU8T3k+I2G2keKCG74qb5IgBTEIx2durea+Bsc3Oe1VrITka397P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WYNvUSiSVIv4Tl1A9owH1oQ71Z7AVBrIag0r03rUlH8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q0+E1CMCZ3ckjBI09G2IYqryWTHXbN0UWXxqwcfTX4zN+XN2q5HLQOrg5y8P+ytaGDIcNVxMAhUTsfXS2g3F55pnM6E1TsDGnLWXhBKmHoPyazw06/FEZWQjMKO7eXC+tSpLqbpXQ4HMG+3FwtmgA9xprUld6tFiYbwCMvVcF8uhPJvv4r57xirJXhawvkHFn5gamS5Jj25UHqUI/BwsUkofvK9Ux3CSY9VJb807ENug4NEZZU7TpluxhmSl5eEJMT3l4aAAIl7ypWN1AN+GACSQeA1IakkOan5pJhSKwexkxsO1dkk4hJXocc6WOakGAyQSS6n0JrRUu8HZSHAuyqcuvtXbTj9xm1BRIHlhmI7x6CC+StxbSSWdi0FZ+lsTid5mNWbutIMImMSYwUKiUJhH/AlBBsfo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WYYCm8DtCORYdJ+pdSdxsEu7ZO4BURRIOGMquh/vGNc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MDXa/t62As0W9aEdiUH5zJ+Y2t2jo500g+Ub+6SVs3bVtmLSyZRyFUakYUdy2humrrCcy7tGiQeatOahLNeqivRZ5d7feOK9Ta/6eOH7kNMyW0QoWJmNlEIZJu2gSLQNvXjnPhnCKdP/Rp6IAbcwRLaQDJAac30MkWH6v3Z9KWFXMzx5SwGXUB4+N8qiz2nNw36LRRhwfzM4yUyJJ5n6IljBL6wzOoSW4bluF3KuP9yW8kqFzQEEX1KWrHK0Ch0Xz2+Rq2OIzQxFvuw0YRUp2SjPTKgFFDJqgQc814/2MDR2X3K0iJ/K1o6d6iWqMNU6yYa7sHgJB040cGU4o9lr2rCbV0dM7N1B8R59pJudwoYYocwTKrepWrnFxq+DtMVJuNAtjfWd6yiuozK1kKJ5KiDnBtTkfvxN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WZHBzt4V2HbWJp5ZYiP6JXmHqqNgk/Z/NUkgSt52uts", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Xg1SNV0X9kYSTtqKMKDrRcoCG/yDZn7O/yCpo/o0csN1EuTWzoLQhpSH3H5kjE6Cy9h1ZtIB2+WWiKJVb4K9vqBcqKSqJWCnuzfzKAU57Sbb2u1wsCzDuIPYeAi65HnsYBvypzQaerx8USlN8OZp8UhVwqbzFHyANEDKLFUARuL4y1ZnU/pLPwRxkyJ2/IIjTF61NfRcKMBtCMWU9/HlDZj94TRB5rdCQ42SJf+sM/VPxa5fDmWae0rV8qL0ZW5r12v9NOCCEUYbqEpbICsVvyx4haze6UZOSGKJVR2Bh52nHab6/gtp8G2yg2wvt1NiPemmpy2fwFuimn9bRR1ZYF23lziB0cWjNx462XcQ8mHm1WYHkEh0VeJ6irygo3pnLtZPc0iSTxG3w6n+f4hsOLt/hvCcHB8c", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WZYT6i5Tk9sN0uUAABicZTBpKLfzReVC2KqLwBll7Ck", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pVRewPb0sgvmbIUr3qi78s4qN83KMNhuWiwDc5HuaA1GnblGAaSu3usFg7ky3wPdV5prkySivrflmDnpM+X5NiHsY/6EZl7f5A+Ut3PeGVXx8D2YBRWTN28fqhvk1/1tKsJod0XjMK00dBIuOsh1+ky/R4VxCUceCmdZ45ayurQF/UmTvHNqUYZMTFUtoy8qdmkKKPGuhhZHTJds8GQ0VTIOykK9OzMgsSpLwC1FBdh5ifVuT/mUZPcWm7DKCHV7JDG3UvSKGMuAkGm54AOsWEDUawL4SNtvrQbrVg/o0aLgAaM6xWzra5r69Rk4Cvxc/YyZCmpl+Lmez3SX0nkBVX3GDnR3JW53gHk9RbawP7S/aTL8FZmGk5GYTKNc2HKci5LLKdULkHT+ark/I37x6UvE01lQKtFK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WZqJVKciTp31wQzzYiUkPAIZDC2K5HdA0dbQRvs7thM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X8gQr++IRsWzUMyfjxZzLVoX7c39M2RPSSooF3SOxaA1NQR+Bc11Pp+Nlz1B+8te1hY+bGBdLmejMxrwQR+XaKHhde5Tl9SA3qOMKXDDu9xQFsKgncOmhVCKsJ8CvTbm2xiuX/cJXCR/1fDkbfIRznquJjxnH5t3mcZN9ITRKdJQ8g4Kjq+JCBXVmtLzJWJ52u65bBuNa9KT49T8khBfbUi5fbZd/hm40r1eRApL5pXDHgOoDMWBh/q2e1cpW6pFoNht9hwYuEI5zyRYbgalyqthh6eZRa8j/wQQ37LVr3+XgMsbymzOgawmw0udXGJwDwn48aIskifBF8aXXwRmDVz0ZG0izM9TYxKEa9vdYQ9wQM24SNTEj0aM+85nGilCDcsQWNBNq5K22haAu3DCLzuDfOSTQ2VU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WaClqgIZjsNKc7NE5spbha1Na72cO3LJde2O+djHKfA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VL1NXvFTX5wQrfHcdN0VP6LfpFX3uAVgWwWST/b0t/gnv20Tt8SnAyrEEViQVT4tNFryfaum/k/T8drlx0rkHFwf5Y9dhbxubgU7lNGhpooep9EYnyho4+8OIbqRfJxqqafv56Css2L9wUTWddb3ZO0RPusLVX8OFfYFS4pR6u6qrBC+/RXzqrRM6MbKRRq4sK5nH9s/B6jm4oXKjRsjNR2OmejuhzoOTm0C3txJPEtb24Mp8rLnmOHCQktowtVOtFNCwMl48ZecW1D8nfUcWcvAXBGLxXs+T80JLkyc7eICYhy3qL2BzUDqUBw94g2DDIy7tFbZp3rjfBrLroJ1uvFnrLDlP9Ux7Am7cLRBErgQq6CggwcuC2a/kpzIqH0CmEm/fuh0AjGMxfiEHPIQ2m2ZCkFmIVz3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WaxEbM2oQR/jf9XRrMHrkhpDGp3coh8+tUUuO8eP/DY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5fLG3nvhHINWFdlarsQuzPneDSboZoLYpVFJdqr4OKdVqrC0cZ1UYHiCh6vKXRpD67lAIM58hErTpkRUL2qfpGJ+N3IYmaz/4UjajgnVYdtA22DLKiFLtti78BcKiO33lyGipC9APp4BqpPU6bT3oWKHWNsRr5Su6PEsQ/OoW7TKOWVGS8vqo/poNBhky0wJyQ42tboExVyP6n1k22GHQi34rcwcCD9movDTVP5TB9Uc/ni2OXH8vNfUmvYM0qOIiiEmOURw2hDSp7WcLhyMa9kMMm+5QISo9Qe2q5+gxbbAx3weP3AtU0GkkRhUpQY1tSMLR9GMBxrjiNL7bq7HfFtaB0SAIkf2JFTjU1oMDpXnp05E9+3Q4PrbnrEKDYdJD9KT9SfO3EcM+GymInSeykRvRO0QGLzc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WbVZVsXLEH41STZSL9hnN6kNCzhdcDaSCdMgn8TTv9U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xDkl/HYRWJ6DcBgs4g8RGMRzPgd5Q6ynR+TwgFCPLFsBTda6ZbEaxNmgkrFjazoWRe1S8/VIv7Or7DX2w5AgL9Id9ZpgBk9cOivAheca5tGAXZ1e1mzchx9JyQ4YV3ZCf26aSwAPTA9fIwLJHWUc+1kR0/EmDc2cLPucFGLqvrITcZtl94yYRt+T1hteWmuQ+/3iV1FSTaVgJ6YU/N21SgU/l26ov5M3ii1NB1+Orq6mQKUbRRL/3bVEbU/P5NPurqYNdX99pQnc1GoRhYEOSpZ/CFeCyr8EXhmCK7PkmdRL+ZuXDQlPBluluibVxurottxUc3iew1jLFKtPMRYPfSS3q+4Ueva36hutUkF5i3sCDAjnwT/f+7NqwY1wS48opCj9DkAt4aPU9XVU/73X4tNDWEak9I9B", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WcSyNhB7rXWYrzRRkRuwS3DvAQ0+ovovJmCONTHZlIg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rsCgPdMYWQ0oACCzNvKjSCzErEXr6i/V2hjPFYjsYZwquLRzWdZFlizf0pXdnNF8if4u9zbo/pSLud+ErfyIXGc8KOmTgCvDK8mr7/eSkQBShINC2TpmarT5lKQGw+gF4c8n90C5OiZfQyJXc/fDpTnWlqDa3uxZPRU/yT2unyDM4k9RfFUtgMMIIVROqh7BjxK1i2g0v2fmgtRwukimzD9/jr9wQpJRavEuke3ZMjZHXOYuPe+8Hb+VQPEG4n6J7tNS5m0u9q2T55ntpG4FOXs23PcdUoKMkk2QpoRQHWsItY8f40tr2KMRQszECL+nfC+k3d/D7oxi2RzgD5Obq6MnaYKo/4MI7b4l3UCGjlKvIWjpcnTZ78SSWaGweL/MBDZDHtFcAWmPMEMsTK5eLgf3skya8k+m", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WdJy+aXBFG5cDbe14ebEbkhWeRfaPEwU7FI/wtoD9jQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BPDC03xVEA6zPaVQlce6gl8GpLuPk2QErJQsLzG2phcevM9eR7z7+u45z9DtAp8r6iD1z9BXrf1l1oRMZSSl7dDX3A4uD+zFTPjU3jpmOtZhObmoZsx/J896t3jNk2aCYCR8dTfafgcSXKNVrSY5rntiy/5zy/0/lPz58r0AX9iozMdxTU6FWjYyT5gj9qYoiGcQ96Y41vZSEzFXl54VsH7A04jtKGWqGBmPvYYCRZkLOiqJ8t+2LCVbi+gNOTyrI7MuYxQR5bP3eCR7eZMWNRz6aDjA/j/C4CtDkawI3qtIhcP2UKFXy9DSdCDQ9C+s0UNqvY/d0x3aau1zMNK2w4xCaw2Vy6aDV7yUvfCweBQYoLwci1CB6ArAZXpz7AkTcrP6n2iEl0YmSvPBQrU2eCQjXKOcS13q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WeS4KWF/4nJWUbY+4xVTmP/MOHVJFV49spPwrJa9bGc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tvTdwnqPt0aPa7ht+IHPCjgStkBSEa0Z+dGcP4KG3wsAERs2SzrJgPhJu+RZfxf9VRfqPjJs75j3hBd2qpO4XmRiDLtwquc6w0pRTnDEBm1iUDShS0Kn+iDqAOQN/0SAIXzdJN8n9Qmu7Jg80TSpkZSzCl8QPJK40rmPNPW+g6GU786nZ4uP5HD1inhsXr4imAuyMTjIQFBVCGF+G9+ph7p+CRYmWl3jh1TWhqoki1jgV4txbpOC+lfeCm5qQM4Lcx01oI62IP+zXWJiXj6O+yGANsDSKs4fg/a/gVFjMhVfoCGaISWz8OkmuzQS9PQSHJSsHHpZYx57TZzGhWTpnVPVmlvk2etLb5alZrkifnyghUhORDL7Z/NR4oosYlz81u0ecePFR8tylfyBvReRhGz7qjDra7Zr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WgOZDMb1gi9l0QQJ1pw5a9UUpKPITN66odBctw53Idw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9q0l93lYPbjlqSEB3KdDMeC8m60jQ1SIROmMi/P5ZgbHio5zIO+4DfRC/79XRiDFbKQTJGM0ij3rnNtXNuhm6Yq+jjzC3u1KspsIFKPK8s77rMHCahp8yINi6QsZuoNMmqNNg7ZHoQduXCAtIF8cGkPXa7bFQvZs4viTBiedDRrW/6y+TgvICV3UB6h6QkJjDdHep1IocUW8ic+PN0S5eXMo0QJ36NO6Kl7hHIfj+uo+e3N3oQ2zz3Bh8B4YF9Dl/17OtsoWLNlkJRQ5683x1eYoQaI5eT0Y2WTxUU/EF1y2TJMDHPEPDejH3eoxUhlgnPnEe5CkqOavrlStxQPb9ogYpV7nrWRCo0UYcFuf9/ZEx+vc1jesH0M+FnY38lQEZyZ+43aQUiKO68HJTwdItPHyovZ10Glm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Wj7caYwPC0QUVEkGNMEVd9Bojf7Eg6Pf92SJDhJrU0Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iNgBHOs0ds0LsWKBFsaolfFSpjOlv/c8uPzyVsji0/7B3h48+oCEx6ORHQfSZx4rwOjh13iA3cauGMNKT+/0kSgT0r5CJAT39i9wq7WRMzAvkY5n/L19jMkKucqF8pjJOHIvEG6FtvAoxudcVTjLs2cAHde6bOsMD6Bn4AReZ9XUIRgNz/XbsN0WKGLpVSDk472uAI8Dr3be1o4OUFX/BUTFeKuUlNP/LQe+n/x7SH2hc5zs+2/JRpaEcbmZex9bpuaUqsEfcznu0q1IEW69DKVnLKBlIigpcgvUJmpQuRfWY6pbPb6xzub+2ZCJp6bmkAUnSHdXNf1yOljtcQggbBcql2qMRVCQUhgq4JCxMhn4dc0uNDeFStTQwsSqtDJvFwAxgW0cLB6fOimaVxEVv8dUPX8aTuxe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WjbFvixGz871fu0Qhq3pgDLnnX2xcBV43yhaxImf51w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "z2ihmdVcFyheAX6bTaO1ZQ1ZCMa4vlQFJ4sJyvHnsQ1h3LpDhROCWXWQkTnzX4UePZAgJRjxgIgkdUvklJgwhj4KoZkFdohZ1IU1b/y5HQ4/JlS+cr4ztofP1IeOKJobVWMGN3eshdKe0s+HMfElmwqV7v5Pd5bBCpLAfPkW+ZrEnC/cm3WTkmqX/AwbGBY99j9nTxbgimFV7UniocuPgDK33QlOfy3Kc/57GRBJ2mxzPUKnTTtOwDYIcNM8xWNWfuJydSN8fTGYL1J2Q76fFuoIjrybtbcTYmk04cwrOz066gtkmArcn+IPZ7fjIhw2Xw3bMTs8Ww64waPaAs1FKt2bSAnPsvsKYR4jygJcGQcI4eIjqt0m2bjvXCCdnJcv+ssFg9VYc/Uc5xsXUFTp97vonPFij+AJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Wlk9uYTrk+lnrbqzMYpUnVAfMJk+YqCR8a6FSNz9TR0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0aURND0LbIdwBzDhTqw4FcfsahNaYx2o/U8ocNnyJOFOGnBMh0t8CFNFSSJk9wNBIa7e9R3buNLCUhXSl4omLKC3Yq4sBs1ZSYyta7rJyDqbUTLWTtxTKFJdfFJtOyEEX7jp7O/UCJRUSSpjSqXKY+2ldaeYHT7mYGiwOBO7PmS7LqKip9yX50w++MmPmgU2AiYJfZ958QngFQqReLNXjfTNkSWcAnS8AqDmvOhowIQah813bXrDQF9GS1flGMebJsA5AsLbjZ13hEVYSZQfjattWlrfP01MZ7+9eoRlZNn9UUtQhuUDsOJaXFQOhDY7wHqXVu6Rc+u+D7GqRGhGe+ijxnR3a4EDl1em8QCwr8wvMpfNl0a+SNqmyHqmzN4TQ/Lzg8ErNOQOUBwkFE7BWAscyRBol/gJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WmiRzK1V/kL4CR1VUOUBVlhP7Zyp08CbL+FotYTyYms", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mCAEGBP+yX+nRIiIJG9W9wdrQwhrEyP1qPwF+TqLgj8lzrF9rDMxYiyceslIICM3PupoXiYaqaxH4jjTkemYEGEAPZjkAgOYznNdDOth06IZHlGWTmglBTffDxgxgqGlQx23gUt0ccJXaHQ3DLDZc6ZH9UBBa4nSdVI7V5Eapuo2Bp390S1ord70chMiX5fzKhh4IbiYDcgNCIT/5Yd4MVeYSHzPfwMFwMsF2VwDo+L2N8JHvuM3O9sHntfvmHg2gs+sGU96wQYfLlK5IZq/sGDwePmQaPEuAtCWJUf/2x16Emd3AQES3hf5sEqh6syvr6fW3F56ev+qa2z8p45bZ/f1Sl7szp0Q6LKuCAJuEX/ctQHi0sbiqjpk+FtWRukGUxkqjHHhA7TrOw3IPwzCLG33RjSfOGO5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WmziiBDGQ6S+F4ELFRzw52rh1PQfeTeY9AZZVAyiXJo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "p8l+woyLtW+CGcfaY4NcauuRpaQiDJp1XeIlmoQURsrzo3c3ucO4Afoz17rsj5Om1FT4iO427d63ZO8AQCQatOyTpfr6HflvwAXhbI8qqpzmuLxTDZAwfro/V6Mbo+exLQnExQz0x/M+b6fpq9GlZx60HfsmHpixgxgnhYtVhhZc9yLUHbyrLg1ZMnbiwVxdIgMxNCEU9S/487J0fWxghWoJfjRkLkIIr7lpYFbi7KG1WliVdbl+tDRj754fma9Xs7xnh5bFMYrXm3qCkve+UsYBCGfynZRIW1oY2SLyFSvcsW2obWUsrJdkVOI5OcRe9AHVJWSVF/f+M2BSKG+elYbcoGTLAz8sVT+xkKct43o8dCwajKDdDNhwokPpS+kMYSiLth2ytL32Z2fv81utwhTXWbzbBC78", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Wotny65oS/qYLovGNG0QW5S8O6ee1sh9YwLe53J7HBE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c2eiW2PQh5cniB17Qnk8dpoKICD3nkqHVIH9kdVwsnHMnJsAKYURZsoaOt9FJdyQWSA+7o618l1/inlB4Q4fxIrmZb3VBCcStWVwNKKM1lWwyGL5zXl9tgwVNRcJm31U6seyNRYtpRBtu/QJOPfyN90EWYqjqD8BQyrtZcYOrw8E5vBhzSXG4j8qPN4NlF1wN+1C1+uuUBvA8reZCWEpo77XriLRs1aipzGwsRg6DqDZhihQsCOOn1cf3CdHB2P878fJMVZ68DgWbQOGdWbXTB4aS3d2dC+eZRE/ZD7GUv5ZsLcEUWAfKfqUkb64fHsvEMyUuTKjZnocbTsojQP3FNq3/02oK4bGwzm8l0P7PAysSE7V9ZUAOo6HvBhL3oHJlzjd8foYJ8MYym2L9/czPQVlHKyZRQiq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Wp56+z+I6oovrsMhP/AwKf/y+cc5/BJNffvm5hbwhyI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XXn5OvzYo5CJWoDn5Otcp0qu9pk8TWyhFsBXPdfD3S/puoJqGAavctmVSEmjYRVACSe2dLALFgnYOg8KIYbaZMGUyXUO/ynGUPqetPptwo7FSpXRRDX3D28G4UrCT1YGuCzcwjJJ3rvDZnnHxfpI5+M5A5pPuJDojfIqZFiUI8ZrGadJ6pBhJyaacmluVzNk2bRA+IUzXzqv/NivaxvhZ3aGCxv/UNBM2KgcAGeuksbJpkiyDxR1x4U4Dc5D7kAWyOqMpw0m0FSvSbOtLbM7Ig2JdemUwGy1cslF7h87/brNKMWA72xvmT5huRatkXMWl0SPfQKwUqDbc7TZySE4SkHRVmGYBC/A62Fi/On8/Qhz0IE7JuEJDUxlTY5Fl7SKhlBfQTL10vZd4XOBIVsS8pvLdsnCjdWP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Wp9A7JZHW6R0luYxQfv7Ov9RCmlZ905JjviTTeto4dY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VPKA5BzY4g67wjVOMoqNZw2MuOTlQkZTOHjvMMbm4i2+epIhRiBg9uGZcrEkcw0bC9XfDeqTpUE1xNLj9uzr3UHk+3ACmu8MMi/Ox1Rv948lOLJ9xhKVhveqkw+IMuDdMiuTCrOdMQ2tWTFpJg/yV4W/by/NfKj2CcdrMtbPpWzFhbHYgKmVuWhYmfxSv8IhQlcg9Til6izUrKKbMSprd2Px57ngtBlTjIZnAEOBrRvQlKWvMtJYvS4Du/zHe2noOg6gGWBeI20ItQuRgYjU2gSDwl48UqZ7YjRam0tWBc3S8uVq+CYOdZ6Mlz8ScZuJuxiVTT5bd07ZQp7bh5S0T75kbIZ/Pc64mSYpT3ojGN5CVGjTyNeslEYoDMYDq2STrKMxVZHSGFLjaFajwqacq+2usj+kvjk0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Wr+xkmMocDb5R9UuSO3zdV2ECiCjXXRGZdmf8+ZWVlI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JDjEBk+u8MTCYugWXdof93FpNlIT7HU6fCS7FFlDW1yJ7J64s6dUiz3G3aGyTR3T3zbuWjrnYQ7w2GebbF2vvJofJ09HFQGHnaEPXiKNZsm0SqygR+Wpyzu7ZLF9sVF6gVTvGCEPSBGwocZ/RJT3T6l4Exi4TnmU/9PKccPvUg51tuoUDtae56zdnPo/T37A+EiAB4014Nt3uX5vDiaD1WlBe31iz67i6zaERSV/c6jOJtFCE6plcpLwLT5YAZLd0f0QIfo80eUoz6zF7YZNK7XrJ3mx1n2pD+TDh7P5YUXqIFWE0gjmXipVkqu/iPVlTszcppIzlLnABdrF9sPUoOEbBId8a21gXzbEccKldPbiloerfchsgyKkggQGIGq7gUxJckRbkOQ1i2xgj9ENoKTLwRCm0B1s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WrFWljU6aN/ZEH9lTzZmnMZh4Y4i2vXmsv4MrBZCngc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HwA/C6tzqfkkL0DUK/u0+MPw7MjGEXPkZI0uFkQEuImzg+GucvB+BB/MisKm0Hti/i8iMhI5bi9SCwKtYXoDsL1vXGIobu54UitDyL2ezClm8hY5/rbcqd/xARKCwRS+WhRpgw6zRZmwSJQdN2H+XAn7FaJbuJOtGiytl1qZqWz8rP8QUdQY00WHyALYdYXORjpqvqQnj433MdfRxJMO4AAV/jZydULczJchlZcQVrwnhAjhxdKOYuhGsfKzDqLDEiyA+TnG5i+/gpqJdLp64jFEO0tHFQgztyy7ZThGhhXVQ6wFON9rv2mjDRzsmKXYX8QYzGlFieLYUUgr5Qs1OEQQk95nO0P6R+Jkiok3BJS9BMw43rLncP7IBey410iw4SsAYxS2nf7ABqdPMyFu/q1yF0l6fyhh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WrIoCs8Ps8fal6GZRSgSDLgXE2fM2/SDknskm3x0STA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qJap/P2sI03rcKCv/XS+3WUkWPYp16i+CeTW3OYFo3UOoYfW9Ehx2oJ7c89DyvMwShQLABmyINnRpMyfNUlt92V4jXQd7mwnsqQPokEvmKPiugz41z+LUQa3AtI2wRRCTouvH6GBOGsjiXENrQYh1s/H/2sKcSCqcUywkcKfijJ6w43XWpHzsVgewUS6iJsRC4vZ2V3XpRyPEntU8jmXBfhfWhlAJknRH4kjrcy9eWmlKGhh4hPV+Bi7IxZMrQMCdJRQqg0VmHsZ8i0PfiKdIdarSbB/ONCR3ZGdYvmP0TPtM5mm0NVSvSxOpVohasWVAVNTXXUKsBTGWH8tYtFMUjDd0EHWriu/8uakOzqKgjVbh/quEMxEUdbBt5pNGuj7uVNWF5IyEFPdQqE9cCyEbR4FmTEydJPz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WrTZVclrSat2AkrS2Of7JkTfT2qUHe+0X3OAcS2V4Ws", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DHrPhVokptjCta1ksIOH+UtfO9ldGRBXcFt1Rru31NlSACNqSLgunJjinKFscBncXwtB5Di3Pf6sicRQF0XXKieITXQD5XWvDx5Y7BPhR/eWwF05kv1vTb9tfXDj8OBpwJSwD9XhhpFPOSDlXH39H+3vhePBIbIvcxEH2RrACijF9kO3/MvC96xJbXeqwWShXEX5ig0Ew5MZuG+8z+H33d08qtl0bamdw6JCyBd0OOn4Vc27kKjqxKW8nsC+1UnR9WbAGX2xdXe+RO1mI5IvvPj7/jdyFFZ7M3dRm9tK0QwIlLbdz6QBfXcICkivyDmAgg0Vc2NFkmKVKNIIWRIGGrrcjl4Uv08hOmZzkdMA6qn+CCy5DGGAjzt3Bntkr9Fkz8A79Hb1wh3ivckhHjUob6nQYQ8w+emC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WrXRFMnVeXjxoH7fRxY7WPtLWuFQPVW4YT0bSCsQ4Kc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BgGPOW42Y4/EpbWaPa00y7Fxh8Xjzkaf1KM+y1wYWzyOiTd/tvvOUie5R360n/YX95fKgxTpWKG901QbTA6Ox2+169LygI683vjmaFSQFRYEDBT5AJdBB2l2BrAA3c49hdoUb8zxBOLSOA7d8UOLbjzlfXQnP1slcHx+BwpYDixiRRCp+E333S3Qs9bssyK0eadEu1x4oQAyEvQDVwXz5S0FipUe9L6tYwcMetrdn1exgtRaB7DY0sR3MshZsWVgbm64yWw/OifAlGh10W9SVIcTkgcb7DkwdSjluAmFG6HbhCIkfge3vcJNBeCO9DqiJKUZw5Q23myxPQpN4R7sdf9MsriIGRv1MdpGLrzqmOHRlZMn0Bzr6n6kE9G0ZoN3A36fUHGE92MNy9J/EZOR29NNKIPioECe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WrZ0YRdOE1zu/Qh9MMdNYBVyCLXMjHyZ+vjHJm6X5UI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cf4K19dE60UDmMGQgnJn7CPyB4g2ckswahGNNTzIoMc5BM4kuOS+KFFK5ZSMmITiBKwF9KnZFXsUESSiSY7uhRgOzZ3TvmE1KdnNqfCHsuQh3pCffTat6e02yXoROhootom28udWj+aD/ZyjLLQOzkZ0W7t1EHt5UKfyzDJZx8BE3tTzyZiOHGH+wbFu04JfldYgEqwxAa+eiAqXmYAp+vKUTFy1u9tln729svk25+4L4hQO1K1iUFbIMUzukDWHgsfGuwEHdgxgGaX1fcV2pRsIIOntaoXxvnxM6xnQ0C33Rsjg+zyfQSCnod92rorCw/gLqZJnkxVvoI4I58N5GqBNuqMXk1nP5yTpS7hF+ESFYMN/JHHI+K9P+/uqgIdJT6kXhKC7+piuKWXzs52wSK1iXS0CBNDq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WrZZQ6jwyyuNF7vseTOXZUeuXKWx6Cu2nclNjemojuQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oZLUEWsk/mKD16e5aDqpEDri87SyeWjjx5m4pogqH2wazGN2aOG6pEFBNRDNR8Wu3eVq0sWJMmxOi18FDvBxgANW7Nqz1lejraa0KIWq7LeQIS38pvbnOS5nTvnQvcibkD6zJPDuUC4RzCLA2+ipjndFFwo+L74ndOduoK5BQUQNtfJlHmou8X8KOiHdeo1KpkCHibjD98ug7CSwUoeNNyD6X//07EUDqOzJ51ArGINbUIXEFdjvj41+ODGaFDux9w+o4cU6hASO0nnWHxPXkAUR4C/IbXk1xsLS+gDCYf0ANxHxm/yVb1c/TpNA6DhLlcQ576ILCuh8qXGDdzuxFX/Bl/RkEEBO+xC0WwoYRLjVg2aBCrDnpcHLkXzl9gGi6SZwDc8SAiW+73PAEMDsbvgNJ8I2BKXX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ws1+DMG0cmNu7fdTFNhdG1e4Nwy7zmUlucL38PCqL4c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2iPvyOzHFhaly/WTNGQUhkBhtGkCkU14MmU04AIWI+zHcu47M2Zdu8By+79R5/V9ILzuDAtDWETRhlbWG+NyVoT9uRTAoIPucQWEfSztgGeZTfcFuMlH5FB5wHkwI9HcUh8VE2UqJkEN9jvmRgqJCh2idMuJ0VXYIS3zpVdoRnx/KTDM7e+esd4CYGRHfiEChSrAHV88u9hrTEuAV2G3DIfv5v12mdssancAj8uKXzRYV6BPMUk/bfpCo7humghMjCskwUkE+VpriRDel4P2Vk3wzJ2DDYbAUWzftzv3IMph4mshlfvjQqyK1z8n+4kVfd4wtLXZW9F87d/DDRGSoT/twHcjBQi1w/sRZK99sT2wxAQEqCpVc6XbD0xP1WWkkKHhvnhUMDlZrdnVHtScnXOi6++RMgKU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WsxszxcNbVbHTiQGovB8PRKuJf4ipkv+3C+r3vzTpWk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/FCsXxBSj9uB1xBgqzPul552dQS+y3Qd0Son0SKi0W0Y86ZLuUPpmiZIhjrgFF53X0zb68lVhrJpynGyEN10A3x18bMtEgnt9mDXf1OKHMfibQGoPEvXAL2jiCrfditfAA347RjqAgRJi7BVdDcPQOvA6z+VP7gzFq1i5QXiEm52TGbXUn0VxQEHny9ywTFjHPJoLbGyxfpAaDvhwSMA6U2ZxgeJe+Y9HVz4mkJybdfjKitxKpTDM/fnxNQ/htWcd40O/afexoQn8wsJKCsnsrdON5Dd/AbuVcZQyX9qXNuLxKH3WF0bol4F/WUkOYNs9vTqbYmwEcDaYe9ZjGRAsw4/M4fTNdAvZ5jb/TX/rMw1/f4kLiu2/LcJqZUY/VgmHwZJMtL8uLoQYZlis0wHbyNUGQrbgfet", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Wvs+nmEbRg4Hw88GW5OBrKOqWZIXAdC+B6QxbrIYVAU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rXSp000esVqjUvE9/bGDvyCtcLyH7WDT1sHC5C+eAXnSOkYsU77QtBKoC/w0YTRFjH8l3Pv6TlhN0jAIsUr3J5YnHwg7cpEw3ACAdWXisbhjGwA6pULZKs28g5Cqsa13sohYOHM6omPK5GOXwbaFxtBazJPFFc1Pns2GUMoeMRPgu+2Z0Dh8K37F1bGLqyyM6hxoRjz7p+Fm9ui+qcaEtem0788M3saiVOu9CzCC5Itsygkct+gZt5w1mt4MXaRf9r6QgPZFSYDy6RcwvdROixhoIta+I5JKUg4bMzut1aQpCfDGr1YRtq4WSfY1Ly47JCqgfUGr0KQ+1uPYqJQB93Ulq17+vRJ0xinIknffdNZqOXuVDqnfjl6X46xRnv3Ixzw0fMVRrPFLT8oDcE96t/gTRziIa6ey", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ww+r9aJfJHbUc2F+Ck8JWP/xK5nKqjADCAG+5wZ+yes", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s5yh69Pj1l4HMkXES4tbEJZS0bzwW3cyFqGqO5qAabKKri4SkAVw/fNnQY8AYJUv73D4BeYY8OAPrK0v/K7bx3jNdL+1RWq9kdrbG784yRNpEMY9p5aVNhgEfZHA6V4KiJgJPQXvW0uZKzne3C0vm4451SamE1wmAHgkPUE0njfPo7Clxj296/PHZbiNdXOKvNepEwsTJLkJj1e5I3XSKRNMSWyZ2cE3/KK9IxG8Cz0IqUxzUmN/Cb36VMg1vOdHodbrecm8rXA0NH0os1jyeID3TzkwG6WQsfQPK8A8CdkPe85djnIjJhU/4P96vyYROzcISGkd3oqqt0b/1tJdsflkaMXFO+XJZaeuAecDqWkQKddbgUt6YJDzMnZREAwtCeEQQ+zfx6WuE4ZkiEJliZKYH4N3oUX9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WwFyqZHUcBl45m+cfHDO/nTyPVG3n7yLB1U0ug4jNAE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oyTYrhweoNh8L9g6Ni8o0cE3JlnhcBQRXMYBSbMBmqUsf8EeFEeVMx/X0FCZOeaPzxBmsmFhKkYHFQMKeTYgD7SsQjPLOXTaOQVWEI6Lp1iYNpxrFBzGRLWZssNU4HW+wL1n/Td9t//M/OfrdNH4ddxDo/OPI+Gjc5ve3refS/u9bAzMNhvM6G1boaZKRjkRU8yQxlmpUDj4GfSwpNXklUVqEdIoxXfx1YFXhgP8vIuAL14sItQYT5Pf3qNknEISdeDe5r6o+8J/P3SsW92GF+pkCZB6RdrUQsTb4+KEr7dPq3LIAg5kdQW1wzq9oejFz/nOVkay8oxZ5ivG/CteDTsrhLK0PBQvAmohqbp14PMdRI1/uVtPy7IFfetAhC2FZj4fIeQmWQ51VACPMGIu7ALl/R8HMLT4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WwkQvruoWPx7IjuvBbAtTX5VuPTw0H4bcGdnVeTKZXc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3fAHADuW5yWiExcojA/KwefiShOxFJCHOVj3cE+wpZD4yHjR8QRUZsmEXjCtRQpiglxqqI0d6gCAV/tIE8hNp6EJbauw+ZJuqI5Aspyjn6ANg7QvdO7wz1P6ePuc2zYfOW84RY85WgSvZFkcUtAGti4ymIj650NXg93tv4C4GUaGLd8MEHGLtqx0vowDkS7rDPT9cfIt57XlETt2GSgzUA+r9NykialURQM/1kGmDAQ7t8R5WiQCmwZ8n9BuxykCxLYUl+M++sZtsj8EXYcx8TpU9h0qNsSeYnYWTgrQoEBbf23qHXRVE9UBGblOtXxqYsVNX4bbvuraRwov/mUw779O20wr5i4gcONctS+J6y8GhJHX538M4lvKw0h2cYCpU/P0VVHa0lhX0myLqvUpGFU4J++NMUYV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WxWnLyrCZGZSUBeHWseghpxpYSD+m6MRUotqiOjGlLA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xMaB4BiqeEvRFuMQoGCVy/8zASL9eHpG8k+t+9NDqDjFUbRkwLzHKBJhBcoyzFmorX9dPvhkol/XyC0LVRE47nGQjHYmd+4SjZ9q19V7adf/dlwK2jojoRO/5hGMNJlspL6Zht0mRCXhFWcU7wKGetXvM1nWAM/eAq0EzWWjbplLpBjTKi9RP64ogqBOc/Ee/XoYhB7zk4wskRpENcxgJSmPPXyD8R9wHwss4RV2QdDXXUP19+/ZAr6qlRtuInuwCmemZIhdG+jayIbova8jjyAJ/SvuBgs1dzCRsRZo0DfHvv4cciFYuTH1D58SzuViq20hvbmyFVIk3oSabP6sqyYGXERVjMkcG96HUgG6c+eDxF+NnIXIUZHXGkpk5rY0jEkq458lGgvctnX9ITK919uDFQi5iIpo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WxnlYqZiHXP5lAkjW4Pj+wYjTWlqCxXnQ+dU2uEHZW0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bEjplfoaBI/wIZeqRCuDvzXbN09g6VStiEZM/tjg2fukwqQmGU6fDCzosJeYHgWqsjG0k/RuAogSZqDIP+i8YvfuRvCoQ9l8mZhqUSPy8EdpyhrQ6a4DPZDcT3OHN0LCz3Dg6sP9Kg1W5WxabHa8ECfIuBTmMAYUsciJVwO9kj/0dMP85eibvctngcbHSl3KZdjvrS/tpSqDvyfu3oMdh6+RtrQcl5w/VQkM9bFUCKnk4/SppAksX9eQ18MgYh0Pb7lItyK/hqPdHSVjnDkQQC9i93PKZEbQJfzPUYmRBlB+17i/ugvxB8cZWmQNDLhcUbtiV53qk0b4CtLgMEEHeqFE12O4mRipoICWSIMJ732iShl9a4aGOVdDXkto/hTMQvC6asDXCt3s+kaSzDPmm6rq6ItFJJOx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Wy4e17xOwBmucEwVEoZrqcrn/+1P8CtBkg6dQmdXLKw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T7yJlu8EOfVbAMklsRQts/bCQcwW7vtimu7FTL2qua2FobNXJRJOf3wu5P+Pi0Rdra1IRbIEUqo6Ei3CU6sXupH6aR3le6QY65oNkfoj51xVz/9Vc0z5/D0Yj+TipEYalN1eqMHiovQty5yIPmWQL6XclSKHhHKLDqAdZCJnDGtuxAAGhi5vi+cdE1sRjOuinS9TXV6lHDg3SbnBPUHftCX1VwHh43t5TKAH3AqouTGRkmTTj/hGp3TzcDs20wTNZCt5G/OF34nK1Nf9U5blVndHdNx4rZRaks3H/UeSMzRiJo7aNe08qKyspq3L+1pw+5YPom0Ze5shQSC/r3Q1EPfWMUEIDBpZbhoKEKbNLH/MpP3WJFERiOmxK5SOyoo2mpT3A1tENjWDhGvqKParI6y0lmAK/ZF1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "WzBgW10bWEY5a/eKgcMroRxOEqMnINQbjIyMdhQY1cI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MJsLOUqPCDnpnzmZRNAvJEAaJTxy9jMS2s42lfTO2w7lrhsBFys6/MLfkiI254jtLURFs9WOh//YHJsT4o05oDxO7yYUWgAWbJ6Iza5Efl6sAzjzacJVf/JHtX1P/G3KlEYej3BAQ8T0FFiL4mZ3daazg5++axL056T6cj4avMiJSWzsAUyqh9O3lnPuztu6c/LUusjY0PTd0ilL4ORbQMUfeN6D/SGb7owFuxNq9eoYiPIUzW4jFG/9eUFlChN2wrnGXEc9c7nfC3ghc1f6jmI+EiVl/V3fXAS5yHV76bnIO2jhq93rjxBzt8CTPg2wPb1EgRY9Tg8BIvpMyer4Cer3o1YuHg134pqf1Ecm1D9Gyvt32tI+9MhpHET+01YZ2vhPg9stlpzQucj1TI2xawW4XGuxZUE5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Wzyrz5GIGbaLT7QivScjqRviRWFtW6mDYISQqDEPn2o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B24ysFSTC/5pPaRGSOaN6K8/136bgcCfwPKlQMqI8DvWo+j6REfYXMuY1PpU9xc5GTfXFbwsAInSB+INf7Eaq1+AZBJx65kZu3CidFex6/VoORSm/HCMtrM+P2lHk+31gbxvZD/QdDd0ImSqOdROUjVG/3zc14rJLg/9pBPM4AoM0y5H25WdGQwDsHvC4BX/kWZ/VTQFIFNFAqqN8FiPnTiPFEtORE5hVGwkUUesu/lbhy/pdAxoTLCku76edoWsoE8FBgLjz7NqKFX9qH0az80yowYZi+82kWHUABdF00xg1HA9SVz7bXsH3mdNnrUUYQuwph349lEc1Dq7HzHklGV7AO4mkS9HMSqmHKw6boTIRBv9in6wFagK3F3OzVjr6f4mGEUTy1Hy2nDv5K7m4ck4b2C0gOdC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X+gL+DRaTwXlMjuRknja10tpYU8VrHa53umx9QGFMeo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ysDnuUee11ldAjY97xn38BOz2NVeXCRqfT47fA0t3NfDaY8LPvEa7OYSY/QUgGzBmtEGiOHhAaMycsFOPg/s6b1dh6AZUC/pZOItlvpLaq9nMc6VVns3/1hZZw90lksauD8IRsabpU/dKmqWVuZZrYqoLTZgYfqs5viogU+Y9tcPH4cnvVyTdsIhW2LULs2GhjitQ/Fau1cQgxsMA7jTuStpr+weKzAbw5BYbIbU348B3fij9lpbOLntQuxYfe5EvQevgU1A13nkRJST45wnZXL4IDl3nFOHdXBHF0Vgjuw6eY5LS2Ip/ZFPDSxc8zuj0fK8F0vpky7qnZ/gYb9/ofv7zFO3N3rNjNlHVH4XkTVDIDDtMFDCliLmke/eM3ddVu+LvOwC293WtSMKf0s7T2cRMPTbfqkB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X/beiT7dcqsK/KKQUe7EAXQklcXaCw3FrdHNW2qA7V4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i5Wpc5G0W0sXEoURJ0R66pu9OHwJRWld9aPSX4qYWrGM6B/yhmMn78s3ChYrKmU+bIDxEFaWsyVVYsCdCqSixuHwtZSn6PPmH5mYD7Qbcv3+5vlnrWnd3CtsrbP4+vpmCqmeniT6khckCeu2xrdQLT3fga2Za0yoLeGy/W7agS9sWdcd2nGkbsCck1F7W87hGjO8EjyUSjeJNSdrtN6Cc7BJjNROQN005+zHmFaEyrazjoVsET54eAEEtIF/Y2G9kBfxOlplhZKDgPtO4ndLvGfszhfpxvegQWnirnhQk1gnrnaC01uPm9wDqB5hZftNDOCr/of1BstHXbTozUib+VZ4a4LQcWdQOsoEKkuoOAH+oTwtudmSjEGwoCjCZEnRZbbqKzV/zHANNSvvJNQAQ77sZ+80LcDC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X/cweAgX/5nf4eNeo2ZlqGYxbX0WZyI6hxJc1mMpnyg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "U6Nwc6xyOyyAVoYYKI+oHE0lH+Qcfp91TnLRssj8DGCw+K2hOPzDJuCI0S/Yfj+i5MBwTG/uxqm+F+FTm/Ov3aKK4U5nxej4Tch9Qbbq71tzTJI18j+HBc9afb5MSNr4GkwUH9im/x//3sXMHukD3E9rWdKa3U5DyAuLENwcaa7rUHDzWXqa7GYMQMfASpB33FIXeTTZV8pAYY0j49NHuYzlVMpwDAM2mObDOiFoWPYXT3FLYGjPCOxfBderNuF9TmbNyWD1dEnXVP2F4Ug2YRfxa9TF0oT/UCndy9NPELi0ce7tng+4wZnZRhnwJit9rnGg9wnagIPjcd/bjr5kTfCv/n4kkakb6RHSQtl7j1HpfNOI8XObtCOjDh5+ndIib087xVHzkwt2/qplHtoJGBKUuVFqFZmn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X0JEJT85OK+CpoAYwoX6icWCKB6AAsKxyp3prhHMm7w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u5ISCCw+vLMSCpQ497vIdzsrpqMWDArytklrbazzMl0dZnkw61iEZZXKzT8TrWKBqPx0m9uHHF16LPQb/DxK2SFjiNvsOLJztUlf+kOZWkVYHXDAUhS5RLqoAr8MhdWfjPbwANOugu1LxVEyK34DaUZyy6QF+UX+08dwJlIRAcH8PnCAIYknSyvVZuOnZLm+z3snI02jw0cZXEQ3SI9mDof0zN935W8vTYuBCXxccEbAj5LesVuQ6tXG0Epll2eiK32gj4HbNidz9K1yAl9m+EtYliU4gWNvmCVt1qJcUiOEhlBUBUUJAMw3RZU5xEoi9JvCOts35ZmNmi/jZ8PKRWVWIUYhkEnV8o9YScqLBvy5XZ0LKs/alkQClxp0pUHVClm7tni2828PUoyW8mNXFA9ed+Rp4dof", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X1/JSMUJCI2T+thxL4qEtPnkCN7YFUjqu3rWXFI1n5s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M+Xr6gD9of8QKcNZTYo57i/QvqE8EPFtfvFegBJVf651d6CFEtvXOQauiyQnZjCeTqUmvkF7wW8yOpOVpLURMJrQZzpMZ+g67IbmVxPZNCw+MHlKYpkTRocu8vgVZhWCDN4zqsknpecmxg04OSG0lZNzrQ+xI64jgKnvNBL2ZSAVfOQOgWQ6EFmt2il4axtzJ1dtAPQnIdjkSuJZeUCHjhslvB81+HMbjqSMpTPn0npSK7apqIYkYo1brvq3fwOEdn2vFsRhJ8gIp9XSFiSPNnmCdmhp035Gy2Pn1FrYh8B+55VHHPfYyB5b8NEmDmxXju8mMSPrZJQjkbxBxJrY6imlzP/VPGQ+/NyoZv8tw2psXD0TvvdCjvhSIFbmjL0wRiy9VPuqZcuKi8+SGsbqK+DhkCydMRl8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X12zPSZvOaK+sMwqf3ulXklnhnYqUa2iPajJthCA7Gc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hqyMHz/E1NVUYTxlqhYJH7eySZh4dsmxAUcTwZrqU+LA6phPb8iEMqTPTRodEWDYntkk71p+9zJxBuLP4mYneQqCOXsCBxEYATqg/oFhVlxLBEh7a2v1osBedYxRA86vtK0kYJa8NdH3JGVLKUq/GcmOXteaLyskW6jJcyib2X34/1XyL0SFBYTzAqiyzEYkiDzcmFidBorU5bJfOLeyl1JL/sl4p8kGjUxrY1KUL9A4byKtcLHPr2nhx3BrufoKXaq/TulMS1ts20JoyIo/4d8LT0Yll2jA28i86+1DiJS9SO3zpsncDlCUDir20CagreUy8WeJhx44mVSJpSJiYelnMZ9RZV5lJW2Kskgts8R6zbEmRn5GMDQPanTNqGM1gZ8dRCsYhkjiQB/HelnAP77Eyt2RobCP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X45BFdLBJlGgRltZJVE3nJ8zPY3GMM8Zm8elce0AV1I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DWj6Od4E/3aqfq/Fwr5wcApPj6PRQglHBfxSvqmYMMecggSfogTiybHqt/3mvVVgIwlq2qVG80I7Pbiko1kRuSBcSbD+aoF6iGfwVMOSZVlnfF6bwYOO+gOjwCB0Avl5yIThhfiY0Od/ekEc5yJgzDv5pnBWy/BiIrncudVm0CSeKQotFNWxDpWyKCWedaJwZoYwL1KVORHjPQkpiBIuAIGHVySH73mbzgWmogXuRLO+rVyaVtk4nwMEUEekNUUC7B4CdlZLolitM23SJ6AWNYnThwOORFMUFiDUBCdn3M17RqDOjDw/9GbYJDtxm753tEwUejwIIY/LLO2RClTIcNQ9jHGAMGLsmhGdODKCgKGqbYvp04tiAdaUo1RnWnXdlHS7VpejX/6SBCPVRmLjAE1+WUaNxEfU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X4HBaaeKC29sLAmEsnpDCAFJQzN55LyDDWK3tTWgZpI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UhoFx1zKY6T0zd0emINR3KIfttaj4QE6xt78oOtJjfNp/CH8j/lsGMIkOMXdAkVH9NmAqTYCP5/O8Hns3UMwNTsYPO7n15gIiuPUbfBZCBJA5dY5FJGP17ffjlAAzBB3OzW5oso9f4mAxpNDsxjwRbpZ2NjgwFYF5Alc+d7aNwdyxNEpryuGVgMnSKpPcEqvUheHgSEKQloRYtT2NLRu/JIH4UiVxKUzDvHGkX72P6GAmbciya3Ye/2HT9MAFZNsoRikfDm3bh3oDF8FHubUT/WyM9ulnoQFUpUMVJXwwa0EseRPCrwDGvv2Cszp6RoIjcXmEdhnHhnXMrLTMW+jE8BstttWQrSqn2JDsLkz3SrF+zz+DWyhWuA4x7cNvwfh2Lf62NeGCBNuK4y544sm3KNAVggRYOGZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X4yjhY2ivNhPjt/DR9NWv1hM57FSD2dD2KGFfZWO5lQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IJgV7YwDWl3ljHOUCPsJpwPa2Fud/PCsL29LEesKM/53Hh5Ji7xhjeayQ1/X1WtKWc6LUo2eGWC0qscKeJ8HCYWU21gO28aMJ6jByYOlky1JLpkvGhxwZAVCYu7lBpGl7jXBLa/kamzKI28yddDkUvwUCzWl2pDIVyh/WPR7zZKXGCmPdwDcdfD9O+DtKtelA5Hmv4qFjOlpX6bGOdOWcLWhSqp8D+Fa7TU93TEjookLGP1vjQWkpCerUR1R2G2dpW/N8i7gqffjJBhRa7oa5OwA7AkgQe5VuBRaxrV4YIRSTwjXiTP1llndVZ7fKdOnhKTNZTRVDKms2+++3mw7G1dI/9qloKTzq9hvGIQNcuPFst80hpSDLk9H4qwNhXl3UCCTojBxC59UBpoIWvt2OjiY9zjEuKEx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X7GiltjdIUcZgmLqeDWCBFKpIgFyYJ1lT0+Eleqg+xM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8L1ZZKg8uOpCG3e8Clx2iNbKUFUXyQPZCAgIIYm612QellhWL1KLw1r5jo2MDx3+xzJ7w1T1Pw1rCtIgZfWb2sLSPX7+JwOA9Tyh1Ltni5k1PrLcq7ZGggILRzWaE4FtUNnpvrADEXyk032UHilcQhd5kvbAwWQu9oWwEtFo3cExZVRfelNQGmk9Vb7IfDuEZX1GjzXePxAWjnHGByadUBxaPukwxyesIc3AxdvJDiCh3k2Qb0ElQuiJOkntATraLwfefLpxW2yvraSA1Q5UAkphOIDpw9IeDinHM2uGWJPN5HRjfONeXggQXGOJ/18fA4r7fTHZVxMs5CqmU4NqQPIl5qXiADiXOWsmPYAVTHgwTUn9SU4e/USIW1iI8t37lqMeAFSSuxKBHBxyNklP7G2Vj4/rdeH4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X8mx4QCMsfasmHhkflvCPLiP8fDiOVVg5Ewv80daRGw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3/ImUR7uwKmLUnRKOpE+lkNMXMMoEmDZ3nbfiFEPQLf6NOBK1O8VGD+53zD1ThWpU0w+0W0H5Ve/Eq69BiF4LS5h2H04R/vCvLyFhPRrcKMI6pP9ScPvgV1ZsVigdM2whsVoElU5hNzjJFSCWqLvCx0Fs7gJ3Tww7vGyS1PfdOrwuJzSZKZqZVjFYW5UVjp1IBvFnQI8J1lFE9e3giChoU9ytPvYvQKP7hE+ApYu+dDRNwATgwzzna2zoUG/MZj1eU+q+dNs+xq8S/oY1nTdigA2ow64ZDYJDFkQM5W6edKGLyVgLcZrBfqTII20jxmrR3KD1KD7Rf/KJhvWpcrwyI+vzkCWghAoOQN5FjhpgOtnObmOWzfcSP1xsy6x3sWhKpzRzuHf+8mmPVIwxJpHsoAh3OEripGK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "X9TRCRw+TUKLP+kQuS0j4UdQ31ZCS1/vYxhb6cHLPts", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "14ZgUUEB6fZWwOu6pDDnnNAK07fxRZ0nfOZ3w38xR18hu0r2IB+1vDWwXevsPxjFvHC2NgMWLalZZKWJrStmCr7FhaVB8VlN15M9irY3p81IuRpCJ06EPez6z/aLCeCvABi7MQvFrBIFYYwM2AvJv1fTGmn0z11OnMfsndNacDhlFQjk79kihAJJz4mRO8b/iEUk16Ut9X+XG+f++jwPwh/o6rSGwlHbNSnIWXWX8bXtmcDURAXHRc9WuZS02AgCLJynuf9PRAKcIIlBhxroaI1kCr6CwV+D8sXx4oFk17p7UA4OkeC6JZSlU9pfvRz4BDjzcSgtkYsob9mbbycsiXDATrc/+Y7kLscw5EMprb0rDdJwTvl0evanKXXMK37r0YxM/qOvDODUJc2l2BcCuqgLuuH6v5oS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XAJMoidHPWjxqtPpgwzgROteyfPpH8Eem5SREbCGQsU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GK+IbxImVQBp+cip6OsQ10aMxBXzjMeJ/8CKXUl50vs2mxEYc6R79VyDHGaIkcGGfASB/+c6QB+8H+Pxivu3xdixTW874uoxL80ejIXvu066YTnWciYw4sFm4r1ciL80Yb+NEJW3y1v+dyztrM2gPgqACwPxjmcKr0dhWKYrmk+Ycf2ari5kbQYjkSo/mb29rpQe+jarFv6mVuD1K/2feUa2KiBIGvfp6BVVR2cFwg6jerrdKPQvt3EBoMbM5qXbA7Llv/OfPzuxh0tbMx5c8/+sB824bizSJ7ha5LzedOCoY5k3jOUCT7x6NcVXWBCN0xT2swEX0JyehneAt3vcpl72DjZMN+p2L7D+0RTncdFK1V6B55fLkpuwFwxSL/0LX0d7+9DP/4UHpu0ViKSW8srYeMgP8+la", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XDFjFdVaY8VYpQ1+osJ4dYhUUpmLD/zjakazjC7fNys", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ckaJUQadA9Nu0YMimDCx7BpJc2nG1/tTFKTZQyGCleufM3KaPxstmHsv3hTqPVPrs3MkxkIbvWFcNElUkyXvmJYntAn9VnMkphWJ2GLihMNlYnbo5x2vJK1hzSC6Mon4fir9mufguRLEKTyMgNt+zJErXjrBuWs12j4wFW09hnLDUKbKdRjjsACGRUHifqqk7kTKG28IQYNMl+UX9LbMjSf6VMtKpA0kYlCUGGCjO/g631L8Of8+x33HkII8yJhp7xHqbkQgA6waQHRXh2ElIb3q1HMY6xqf8v3UHrsyfN6nQwowp70H0W8KRAkC6mcDjaiwH391G2EZujH/oB32C8X9k+78oqSHXApnFFXQOuzUSDbg/YdBJFI96Fqd1b4M+NEhbc2kLbqpAF51d1J6vtkiWGVmx7oJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XDfsTUFnz8ErOX2iHuzTR2U9prpnH9gMuNM+r9NmrpQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7fLbcy7EC68JFz4WBhCh2wftHhEh/Pxp8wUMpKshJaJF+CRIigUlE2Z7xdG9/S3cEkmxNZ2zaDGDwLG6QWRH0P6E5YW0piA2WcUZxcYtnrAZIdU2OuoXWii6KwlG8zIQpQNu0cBlwbBIC69FUddDwTL+2iQ7cDyNYVhl60al0IuhjP5V/KYbVTjl73U2p6X1VnteATEhooeKHPZOEPgIOaD3t5qpvMl8EO2i1DK2eunIhtsc3ZQiOYFOb08Mh1MkyMGVYRuG+gCxf6vvWjTqEZ7rb7tMpGYMKAe0De7DA248PPx6ITFnNc2KYLJemcQVlW7nng3Hn4qq3yAz/ivW1URk7H3JpoL2KzY5Ou2pS2+JKm38STfZAC0EA/fkbMHCZz4sWZnrABjzuGvUZFd++wbduE/xN/D3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XEYBUDwDpGcvuILluGXJ2BzuCvQSzptJz//TxLHR/dA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OwCWCXqo07VqEQpicg1oUH7vAZEHzrUYue+f/4A9iPuXBGHhwWB/xJqf9GvsrwlgqUgn3HVBKSitcheAsrJf4wPpru5ZwMAhzHWiXXKFggijEdvQUbDos5FYzwJZAUhEFhKl/GhYal5Jn8aVckOFNhJxElxzUe2msXAQPgLIna6RoAZFVm+5/QDEpbt21yefs0pl2ckDR1NLiyr3x5h7jPegi4KHCKmfj0c+LMDJb0yM4LGj4FtsMiM0r7W5a1A05lLu0Nhk7d6/wwc9Npe5Kj05X3XFaQAflNSBDKNsZjbxvzZvnIuS2Wd/xFC8Idh2tmFFwhTCAqi5vqg4/wGWiGiWyCgQG+19HJtCaqQ76HoTdkHYaWGb9SMKCJgh/SOj3N33V1jAVv0orP8naNRgGvfjK8nEODFp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XG+678KF9CaJGR2T6nfe+A5fRste18ytV5mOhorL7cI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1eGWxLDwcze5DPG0Fo8naYAVuNUWX5wTnF9rNxTUsDHD4fHXbrGYwn4HDGRb9vae8ZD+BZG4VXnR5hdBys4VGfr+axDVwesgykT+D5egsReRQrvaYllreWjivIHLDLfXwwxU8ZAgJo4DAyI5wxPcy+TYNououJ0UYZi+tUmharAECkc2mTdYl2tdwrXgCbrVwb0QZEFzzty8fAJoArjPkZJc2mVT0tztZbqPJw8rU+4Hhx3IdUydwGnnW9fZACbW4ubHTcYCInc9IAZVCm4Jfs4FgpSGXuKSNS/ndvOToEP1ty1XD+6ymu9YMvpzpN6x/LNxMIYeAWhSXIpkXshQ7e3BeilonQBwcYlEj0NK4fKtOFfIMKOOJO9d9JDv+YtjhshbAWT1s9KnaSA+8Ut4OBitL7nrhB2O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XGfTm7H9FnvtujEB7LQD0ulFsM/FP6BEyyKg/YT8oI4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "irAd+gVL7bzicabhM+WHxU/WL1fQ2xPA807M+T05vRMMghoodwpXhhl90TpzG1AeVC5HfTMwDgA/l+JeS8W4qSSj/mDgVfcngADYP/DP3PBKyad8Wjd1NBkyC8JZmc1Ao/vJgWj3gN5XufHCYrpzAJfg3LcCG6Kj4DR8hsvgdAnL3nmD5qR52U2k1y/hHtl+6z1asEePOxE5dJvJq4l/6pydA7qDyYQgKIzsN+wSjc+1SAohqkVNoNFZ1zdSzQHeyyZW3IgMnJcsioNQILJMYw9zEBWR3agw45odGJrwbFOgm2/7VXjeapq5+GFPNQPuvWnCnG/LcbfaB7PcqFTtfbqIMpN+nVmjg2Hiil0v5ayW5bNl8UAD4ucm1WPcz8Oyn3Gah3HTqrvZSBmEVuYUzJwUjqGbqCU1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XHVfOD3Y31iU4IrnimZrgAyCZfTk9ZT+mkpXuwQ/1N0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZsmZfHQCi5Mpzqpw0kX1jfMY9ZMEavJFjhZaLt/XJGcRG5c4vpBCkNXVh/9254tCXjP7R6qGCLKTSzQEr27YOtIgcBrVm3yp2C4seci+LL5JIzk+YhnmWNHIHCmw61MrxBvxeMyJ5BP5Iqm67Owvwyfb8q/uRW1H7GTvuAXlhSwIEVGZggQ2r+XdVd9buDujiE4uh+wjKML+PP3JkzZUEPTUxOu3RpIdDb1r2RDSUg4+gPl4gf6B9HeCOzM6kwAomGWdZw4Ge+GIDvvkQj/lhB3NgPXZXeVfDN2XrH4u/fMkbGQHUcAHzd5F5rQ80X8PGxm0KP8n593tcvZxONyDmfBEupOuo7I2FGheaF9666bk5wlt3p7GlS6xrQ1P4fTPHHH6yFV31yJfptS4f4dk1g82US/sn5qG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XIW098U+zRHgA6F/BF2BWa+MBTjBZAfW310m+AEByP8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RL6kBKo4OCCmzxk8EA3pp/hXlGjnf7nwyNh2rdTyt0DCKYPa120YSCg7cYu8VAjfHPm2VSNKRHCNfg/dG/NOtxqlCC56K9JXOVTGHzBU9VjLU39/kA+145Go4/fwhgymJUpoRBHxly+lFrkt0+9HtaKXMCgIVypuMT6pGoSOc8cjTlpSVAthEdnEsdpSY3MeCr0FYcHvWBwm0Lx00mdp4FBNKYXs9G6geRZoukJv4YARjADLh97NOkBguMzF1UPPqVzjinTdaFfoCI8IsQaHQVR+SK2ijc0KaJvkbQBVeyGO1HJE7Gi/AU4dBqU+fWktvp9ek4h98GNjPGrhkTdLeqwUWAplzOI0QQslLgeVInkjCqe+cJz/sLa6QmPoD7xGaROsr4oBRDNZGDxZtCv8niO5yljnG9vl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XIfNG9amHsqdIFeGpUHgnPtpqg8kb25bMUeb88XOzgg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "du5902GgAn29ohuBbGNMqFj5NafFtHBoLn23lTaZemAzEPl8JaRueQX+rOuKBTU3Em9cYkoIC6JdtF+Mav4EfM89FoCPyuwGK+iPs4B0tdbB/z0088Q3a6KPx0c0OdH3jAqgQYQNi7g6cLzZlNR9DwOPVsoP3tLeqmZrzsJtq1DVTAelAo04P6U2hHRsz47VBvHxqFXK2HSPFUBRddNi857WYWVfOJ+Z7Wy21KLYFKdfrQhXlwLu0ZejjXpnU74btYDFwTWTK3VcPz91VDuAt/pyYyjvXW1pr/W8gtcNiPJr1t9YKyQGHRGzGzfRcODBZS5LnnpsC9cRJaO0Wcn2SYsQjnhebJbfy/k3AeBk5+sIWY6q0/utEys4jKVvp276c2s8aNqM1ezbK5vDPA/xhjPPUvRU8us0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XIoNg6P9VU2Hjp1PtUq8lZBJBxA5+2eGHhmthYMrml0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i2AktpX3tLQav38JMNZxv99lrDP60m6ZD9jeV/RW5ETD6FL4Se/F8ad9XNJw7Za/yUCCQx6swUFU5Z7tnyzbkYMEYdWEwNeCcBIOTk2Q+NJ/z8T5/97ERXm8QqvpCBqNadR4m++vqYBuIP4ah/j4eDpcRctfDvUCVCBgJu5/9KFj7lcJxLsp/sub92g1uUHBN6hAfw7SBBNj1ZtzJDBLK5oiQySh5gmouihntkgsayjaDtTltGtOkOsdros/KrXn4HtTOduMaBq7gJCCzdMEYEK3KN87ZMgndiTNxkd5iQfHNHiaQlvzArINA4BZ7vm99bkrJ6qj34uRQJTffYsoMKmHIa0SRdc/1jL2eRDxc9pFu/CeLhdMNldb6rNrmzmaVKB0ZbPhT3nFqSTzicbAU4m8zBt4s2Ve", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XJ8DCEKnZFHFoDSB+pOU/i+XkCR5HbN7xVdcNrvYMX8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oh+haAnd6mVULdmQUFJi4rmdIOV/F2NZjP0Jo2PvRFxN4EHj2wKVKp9zY9+9K9dmZmMt76apuPpuALrBifU+0+HTpkABwimyEVWn3ffUbNNCx1g1UESICEabXBxK8lydByIBrGHhtXEdq7N1okxmpweesGCxeoyzQ8K9LfWULitibFHspNziOR8x/Mhi7MaSwF0Vw/GKx4kHcQ0bFReotVeMQeXKp2fDbidgOhKhFyTj6xcnpRd+J74pYxiBOGX6Y81+lgWkgZ++GJdhn6/CwA1fCAwk7ejORAsoYECr+iLgQCXCMM9TSuWaThVSnIDUs8uJv0qZFeZXKxmGMextWVfluUcen+FkLLgFCA92HvbVWu6uRRR642V+o+8pm6O4iwADQybU0O3OEJXjhWpjoJgKzJ/lXYah", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XLGhcxzMcTM3/xHHJ75J2ZaLuMdc+m0/V1bDkQuxwVQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QWxzpbRQMap11KQKxQO8h+q8BdpEBsXMvoD4z7w6RafH2LoRzvtbhv1XoKSkdmXK0Bman8aGpiuv354dxS8xCtXuY/F3/q3X+0fciLSEE7HG5xjfr8MQ3+TbBVF9rqzRVqACHBu6VE1Tcb3P4dDfmM/DotTM4/NfuFUc//ZH/XpyIEGWhXeMa8Cz6UTqv71ft3yae4Hjt+zopbXq9NgnDXLxqb0k67lOnuMpXhYNk1/In+QdKcWirE9IAlnG9wiezGWw0xu1+IIW2lCkVWt4gIsxeqHYE3hDEmT1qj/BXw8Vd+3ew4uk3tcDN1NeXy77i7YJisRfp+kJqTRuCvEg5ILYbvAnSVrxW0hdcZKZuWO/LqpP6rPckkBvfqUxNuaXY+F2BMP7iVyOEAqk36cYE9xgHhfaazBv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XLPA6JyPtFz197RweHAzcljSBNKQomwlYdilNKtOylQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fDweJsOprPYil1iOaXq75xTCOoTYthq58C51lCWNxdPKRAx+1laDhBLzjxwRrwO9nRmqmOsOToOBkwYPTjnIucCx1mJXiky6pq2anNO4I7QV7QfwavsSPTkxUvv5ywFXqtNRWw/LPYD2SORDUViArQQchoPZuBCEY7XEVYIcn1yY5pUJG82BOGUp9GvAU4TUI7Ue1rcN62xa/9N1Og5BCQoojwXi7r8uNj12gzuDfApaNmI7HzSWdUC9Rc73OwsDEHhMegIrSgF+dKgVGdThlh7/gBc3yTi1jgq2T9vRXJnkH/caWxaJbX+RRvcfe4g58rBoTf9ca5bazqZAhlMWp0K5KVC0ewiAlGr088e7mwWaN19PS48NzMBZ9oVyBq5fDbmw4YIyyoQchcvWrowDMI4YzsG0BR2X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XLZSYcgEsBmOUUkrzweFoleDThJZt7gY70DJk/OgFPQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "25hPJCqv4jm/och/kSPMSCYR7L5MVO7oUK+rJKmwaNlMl4xnjey1zxCuiO5tClCWBM1CUEY31A8LrY1RjfRecU3GWILTTSw7wLhx0wNnH1V79k3z2nPbiqMeMDk3EXmaAxc/uQ0U4k+Gk+gO9VmdUQxsFzjycO6YtR9TNy8oOlb1QK55c00rzJto9+BTeu6yVlKpUIvLZWZLdmVPmRhSH58h5/Nn/yxVuuVhgkWLIza+dg5E3L4IOel4ig5cohWsIy971T5CoKGn/N8g4tkP0omGl3501CRLohicn8Mj9uMHqQhV71mi9W/w6RkPHpteLakfLKWSZD3ZaNJgYf72etMEb0E6bQ8taxdySH/WGrsDOqbE092XImc49Ip37CoKLBF26EbMxLOS9XJIoHeMbY4fkhVKC9pQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XLjzp2Te1CmekcX5tYK9KRcBRkk3F+amrk+E5PVlNWI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bU028cbeDRKpOyaj48WeXK2g/CSdTTRcTX1N6ZRWETOXI3NAUg69SmbgoR9t+u9TfCef0Bb5h9vJ4tbJdXCDJe3TJvuj11gGvaQvCl1YAIvsiRveuamfiIGuLxYyh96HUkIAfumfs7bxgnIWPpyUa51okll3tQwbcEqi523IXJnYGmgyVtakWl7wkAG56biHuMbTZbup8nZK28WSprb0nGD3u5Nz6Zf/5UbT7fJl4ZX8EhU/RvCqygBW7SF9J6WVhYwAEHUbVfSmARQDHEVIsju5fnBqZhUdHO8LN8rD/8mZe7eNsN8A6tGTeAjbLhV7jCyh09S6NFfzniz1W93UTsSoDLuIhH6BD9f0wyxtr9JjjTT/KPo83de04meWL4mD07sEt1m/bpQD1SuJ5fg6oW93Re9/U9qW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XN6Z8GuayErUEEbtVxowobqoL6zUjNeX1J/dEOL61+s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s05SYTaokEMPYLL9hT+BQrpjjlXLNKnzd+uGOUoBXWVs7Kd+gPEeuSFUMOjXqxGI3APzestN2y8m+Z2aroUqVlAbFvVJz+bmOiY+CJJtU6RUO775SgQ/EC7E63QPPIkAN7+LvgEdTDQ0tY4DvxehDuPW3sD9o4dFXklQ4suwiN3jtmBf1RVwlU2rEhMdBEID0MMsw9WYfvy7KzPYBeebvrFsxwsL39lR3leNFLO6tyXnJl7OwNBYjOmBLs70oygNDhYLwiur0q7vxtH+aGChdV6E/7nFiEbE2fEZJZV5/XE7BWocFEfOuRDzGRFJ93a/eXebeomvrAQm/9i+9Fa/v1dE+Wr/wLlJsPouzsxvwbRhV+gKEnr4KvDcLzic1rw0vmPgMwbABeYfYo9dbx0YGiz/Y7IV88fD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XNedARcJw3XXzGIUnJyeAgdhnSPncS25j3PZkvwNU50", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3FjW9T9V3cgJASCeMPFuOk45DW0eWyXMgrUq6U4SHLkbFLUkievKf26Dy75BRunaoKSDL3gV+lxNMTr+SG/WctMbjRWcQ44CYxOOl5wGVESPIiTVp64PagzJ6JoMhQVcinCGMo9RyAlWT8s3jTtNWmpV8AwaFtmumoEwyGlv3NqEWHxal25mD/FORoSZbXlHl2h0151OJUkrtiAWpfUZ7X/ZPArdtsfRJ4BwU12nNqYVs2GUFSfKV4SPU3yKcbb/s4YUdjMOUc2rtmviShOATW9yzmxkDPyC3lrvgkp2mjoR6itKt1RtHHdyRtXBWOEPmrTvxyU2Gb1+lR81TgZingxfkAfI1HmkDwb0ZDU1YBHy9BV+AiNaE4zSHsLSCqfYNEBovFe3GzA1tVkZlCtVd5XQ1neqWYEz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XPt8bFP12jKQJCFrAJC0TPDw7Yk5xZikyrxaElPI118", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A018hF+7ll1vEGTxp2LuTPEp0usQ1+N06zc4dPI6eikuQGoXE6Myo6E6yVqQyqRKLWLYEtWLvEBsc/VPP0j39gt8CBseeSZX+UZZIhQ6YSc91LSebwE2c/skJ/zdpOzXYPFcCcOeUFlpdL9jSBe8OYbzQxHJcGtgMJ3biuPwxB5AT7KprqJJ6QAJMRztz/oejyfwZGqv8WKfw/YIQl+vXleeqletChtA9wKb7VPjZpQdtJJYR279R1erp0ELRnmFK+t+09Z9S1QcXqQOzEszanvOZxg4O2Lyxw0egb3/hUsW0zClp/EYltoxsK7lKhirDvOP8k8kXovBxR7xvFUaMiQ1aGr7qK2C1Lw5c9hFnPa49D9yFH3q80rpbn0PBVp32zLAa02eso76GgXR57jddmdiYWu/z9bm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XS3gc1uC6rhMau1mmnSWnSKUzfnx7D7GMtvEzZ4PpfU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+AyuVt6lf6xzCgTQb+RsFL5YmScc3JkDgFXFaeNO00eac1zkj+fNEWzC4jWfkLKbWkTbq2gmjmur0nrZ0UU2gfnTNFALO+r0ocxBdNG+rqGYOs2pmLPjUE3bmvRBeGsiheuj/u1lXrbzTd8d8qaZkZFW+dREC2nSn4EftZa1saxOfR7qhG7rkhA0/5XLOf1vI2XeoOk18PJWFs3Y7269HFwcrRH/ET2peKdGN85fRCQbhjxFwvZoH7SLI1Y22j6z4mQaOO9dn8NGMYhSUixN9gx6jzahmzbshlMrRlAIdNywrEROqd01tc9MEv9Ljzv2q1/NG9TfJfDvz1FVUHwjTP7bl++Tu4PLgfbLqr9RIH2outRC4kNkR2gib39XsQSKFXxH0V/7cuj17hkIc0SPAOTGzUrk2xsk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XSXZE27VlzIYXgJOeMykbgthQuD58l1meOHO6znxqGQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yMskgm85xEI1Avz0hBBxLzj7uEzx3l02Pj3NcUooYowunuvRf/r4Jxv0+e/rU1BJyze+t4X1bwyKNiBYJEGVHb4nDllm5pv4AxwbBKVg2hL1cQ85400KWuYXfdb1Onjyej76HOAQxah+JguLTEbuOG+x5Kb69rDTK2j2sWiaCkoiqX1OpaqhmsacTigaUux10w100vlHEeWp3xX9sU+bY1RkOHFwMVMKDkALlykTqEhNlhPZm2h8uyLdVO8EFjQThjreNUWCBuw4tMV39p2Vj8HPJ9KrL875Wtx1Dbmmol4TQ2uWJxgvevKdAN01sguGbPVwvk644ik9tLDJUrRf0T80grorT7k8EDdkQMs7EA8z2IYrU4vLU7tkI1OS5N6nj8PmK1ohnrGgy9SeWnQXy+Fnojhrrrwe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XVCDB8Cwff4+F9Ot4xmrT9HXe6YWCF/PZHk72jAvjl4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IzflP4cjMBqJbRUOHnX3waSgGli0X+/fbxkzaPcLpOXBXuelMRGNJYNRB3DZW06ZYgS2neR6zkevd4WIs4Sq5Kv6k9aU3UUzETeyek81pZplIs5MqrxaaePJ5t5y4jDfE5yiTl+kiJ7zXPeCYG6Aq6fxCRzNUPFxAVe7X77rAbY8lDETd+RazglmhS72Jy1YrWF8gUUzT1xP3rD3FfWNpPlk5SvnIrlI+c/UXwgefb+9EszlrS9umATaEy7HrLkVc8VyNEEc5plcI06O+4DNGeT2LiwV+B51gwuKjZcK07LM+ls+JprnMOe3ipFG7hWOjchS52svXZQ60I7Sy/dYirSbsAqEtKZxvJIYThQbehIldyxxvvTvJhgqA5xFZsJQeaWz9SFTGcHgXk3i/fq7n6SPf35+zu8b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XVGYnHQqF+KFcYJo1t4H20R5sponAcybRbXYM6sv3/w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uEt74Pz8NwLCqgbyRHdlgrpBIIg0z902hCzyw/AlqnMdu1MYraaa7Q8mMGLT183uRtf8dJ9S4BOsMhp1d2JBeDLWoH8s8VcIGYW8wSb6SVrW3dSMq/GD9U0tKUQAfReuWhtU27+NglG88Eil0lyNVeSui89kaGarw6gUS8GliGOSwv9xT+ZJJ4mkHWTi2EB3Zk8uQFv9NfoadQe2cB2gsuVok7fqbLYGJOEjggyXRrwyWOjkK68XkDqnEentXPOhDZGFyIT03SdfisAqxei0jQEtpoewdK4dNmOH/jHKDPk7Mhi5slveeJ2CP9N8bPVztdDCuD6Fud4pUOIYjirjsKwcST43YEP4E0GN4yYYjSlpa5hsq+eVIwCrxdukpN/8wY0uscAB7NKkVz2z3NgTOganK9dYb0UE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XWJQIQGnDWE3aDvgHrg517SptPQY7Ap9WABIoPxygVs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Hy1CGbNZk4nahk8HoPY3Iwq+UutVaO18ZjrWd1l7JHL2pJo0ZPJNJQ+HsF39hwSoAVrK01brzU39/IuaklASbyL6PSotXcYjWEvye00wzL0OiocyPBdOmp/6imPbdNB+NyQRkQ3/h0YxXZGoDgRXKYILOiqBkkpsnHS/HU/brxZer0TFsAyxK2c+kxyRUz4HjFjMjZx9Bp5+wN9w6z4epzxNF/bY2Vdla2fuOMXioFBUtHInBqucElCF2jK9eauBDIGUtItqqyew2fk967xVkEVDSS53fqYc8+4WwLLnoliOJx+PhEVzvP4AH4j0Ho43FCKlIPWG2jM9V4S8lOtqqVzJ4WoCG2/WpdvwSNmWMD21WqQeqZjP7spQdSXkBigLKVJ8jBva8AOKcTcZqWJuWJhXseC9oagi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XWsfFN74lSzGkH1NCrSTVFss7nZy373Noju8ELLa91A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6l+dPxKavXhjyHnHGpwk5TbIcGlGhigRk8Csn7WG5DUiIz0WjNQXWbof7G6KuNtx4lSWAc7ctsXVXpSiA8FX/eHgEOmVvL5IAF4jG1t3xbpYdLdjT383z9a5IuGc+CkxvuMjNTT5Fz+Ptga3sVgDR1qpIcsq1C/cEgovHNLNbjRwrKx8zaf0ObMtGXdZ4A3/59bK2pS+Zg6uEpKpCfnZ9giIHqqv6zkuX4L5R9z11QByi1+4RGeT1+hbk71SdJ/k796u1haKmV0/ACWMK/tyQS8C+BA/yl0UXRbtBfGxWDG0fDCaITqV1qXdZNQjVBonO4KCE7rcyn4OWOIgYj9ekqTwcj+LFUVMLrRemMAR+FyUzGQFGTwOh5jgr4ycWVGCxq3ZKx+QQK236kfcteOS0MRbFdA0Wlks", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XXERikqSG9vhLv09sBUTgkTLYxHudsDW1k1j4IBGdNE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "idevOujbGVSvjzn8W0k7LgcgX/y7muGe1VMJfYjdQGsbvLX0qVdbH9B0dOK4CgKZHNIlqbO5cLteZt18653z3qeHuESYGk+UO6Rvg5axg0WLocFo6y/bOtXQA4HVzBddhLJxKFlbxLH0CK+b8phsjI6C7rc4tlJqO0exOu+opWj4SK+Y7GL66rUtoO6qR64Lw/HNO1NT6C7ZwZL3UqgKzXXwxKFFqMdVBT/I6Si8m9OgY8e4VsG1USeWdfvod9Z8kaxPvAtkPpd0IU/2oBNVv91HQDrTlNb33Btgu5uo1yFew45BdJe6vCBfMIjojK2qOiUZ90tCn2gp+cUNAOC5KkNcBZYYW9woM3l05rIV4aBXSLylCWyWhntDtZk+Q8I0GGomdDf/9O5wiL9cVYFzFZsWljQShEhs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XXY1F7ldzgLshZWOr2bT1qMIXxvb7G+PBoJl0BPU2X4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0cSRtV82cSmpRSYi7fcV88tpjUZJk1/zI5jqCqAvJboYTmEHVlz18rkPtE1MOmidKHZevXvJLRsyJMSH1UEq5lWNEv48sAm7/T1qz3wFin5dzJvdlVmSCB3L+aOC2XV8RH3eSbMWj/G+F9EqOYBrfvkOA7khFFe3TlOoFlzxGSFWC4VrR4v4xOquTaA8w29RNn/IySXqHw0bNsJzy+kstMp3kun9QX79viuiAYdF6BI8S4MKtsKpqapzgPdzavQP5EDHjnODPM3RzN+Cb8oIeFgAvFKLQGWmnik/MC+lA3Jj/ctVysPXqlAu/q2Y3PWejP3MWRbl02XtcNNfwCdP/p2JYXTq5ICMaOh/KSZamkxVn1eJliG97UMcUWwmMqImhwoOCwWLSk4PVQQneW3ZflcWupH3FqBn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XXwwsLzM56Bvv2hN/h0SmesKEAaJsp8XyAvdkBOv6qw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ThXvZk3uj5jW1glFGF+MkbHf+aZ+OI1bnp2lJhZPa+YW8B4NJkMdj+wr6nO1DlnrzJg5uvUyHTOPbjfYOfAuC6sFHY42qu/KcI2jWVnDvycZQR6jSQvbYaLFrGkIGiUzLo4aBTEAtCpcfqaNAOfx1YvwdCcZXueLCVT3GZ+SE99uiS6w5MOhVVjOeVePE+GgWq37jgFpQHIhWCXPHkHjujYsF85yPnqe+FgXqPoQat7gOPZXjT2Ju7xZ/6rrKIRCK9GNnpnHFJEo7HXGKHmJvQm7iKblxf398NXjgy3trrAf5aQ3moF6SWGQQrkGRumkolJYF/2IwtIjd3iqcwt5YWkSA4V9YEz4p+ZR/H2lmu8xReJEzVhwPqv9zvQDRD8nvpq4ibBIA/xRbdQ2foBNACH0AvzjArXa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XZ3bztkKsyUgIcfLuvFYASE4DszKwSS44HVO0imBg5I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jmYmFuOeePfqDATbi7Y2TUv9UesqdW75V4uoetfaPdiFCohqMtbamZ2LhLSxIq8M/hdos7ZvX/vtTacbreQQnx/tf4nhitSJafyu7R+R7zauU3LC6jCaM3wkqv+pPdz/X8cNyK5xBVVqMqsJbwcdOkX392sQganmDpuRivz7d7BZwUJdEN9BJvM2zX+WanfDATDQZ03AISrlTAW98rmW1Dazdi6X51CZcjAXIUTXvGxYfAEIMW6GG37Upq7GHZwwhnfAUNL2Jlvhl1vcBW8mEMZqdXsulvoZUwBhRkoBmgrZeCEVlsD+1zEZhFbww2JD6W96YrOz9kIosye6NU7oUNcOiiBvqtcvKisLT3xvONbyhqq/zKFxhWylEYBIYsvKdM2y73TfNGp+CIu2CPAJgACveXNtPtY6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Xb7mE5kag2P0nwkzih6ppibv73MxYqQgDLhkx4kcXT8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1l8i/yjddk7zwbJL/YlWXrpxNhrGIMHc67ClmKgru7JXsWiC08lb3+oURjlSLCPs952nMFVuhK0uXWFrb0wpO4Zp4YCgJPfLkglzZ15UALxaZ8nsuz6yU/n9s2eyb/aoLG6LC+HbpBfksc3+uUP/3+Y4IdzZR2X1e9iYXIEIdBftedOOU+mMgI+3/DLqJTqSF9BMUTrQEEJcmd/tW1T1CDjqICHv37r87omwk4FXEHvnCXLhNaNKSeE3XApWqQscVWLwFJFWTT7Zcw82/nUNuoxt8OUaV068qucpZ+oy+bMy+jjRFc3/ssRw4a5+gO+qtnKZ3OR2FZmm8wue2VwS/Zt0my1iOFccMMD1Qb+nEvIZCuOl5fKhZ63q1lFfrHQXaFuqRFyvodxv6sTblcFCCnbQJLwuLMnU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XbMx7arq5KzlJ1lO7o0iIY9LOv1HmkAB7EbwvVilrXQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "34M/f1+yWpKDmVCmfz3GjzCm/34df8T3+0ph0mRn9GTRI7APUjdp7I9W/UIOEiyW58K1viPGQLWbAEQb66SJcdb7kdUrzXx0voxbbXrTJ8Vjpw9ZrG9S0R/AgKAeiO2NFCJtp3rbIC8ybOpenmiK79Af4td/YVJrf0ZWoy0EnHJpPlNtzqkyw3B48Fe/0xSMm6FVqCqP9r3fUxAmBKmeXxJtu40fsz/ufUr94oD1NTsHdJAc7VoNrVlIU1R7mY6wGQld8RjOVbbKPPpO+ynIkkpELXUjPBRTldpklIBSWUMz3Tz73K2tYHsr0D6yvYr6SIf6N+Q8HF4zqM7Gzbwt1J1YK6rBDSx5CUHXMbZTmhEMf8v/UZA5vKzGOyzJCKUelNGpNivlxC320XHBjtXQJcvRcvk8X2x2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XdiD4rCmCGCRmJ2HKyPGLvcKWzI6b0gc/uBbzmgeAnI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kcuT2zPnVhdsb7uTLgu3j9a1wYQUsaZ2vGhp7ivDHku9FsXYpuQTvfSga7NZT1Wws10Kz2mfRTmL3t5O6Q+isBbTjdYcWtMdv2xYSGCNvGD6HlMl1/wOVUqRICUIjH2UYiJ66UwhAz62s1Ak2bNi9sVYwZTj7LKIIlDgfGLaI2fCyiruGQ3r2qvIAI2Of1DCXbPzW2doZS4Kkz1rRZ6eS/YxO0Q3cUTMndzUVV5LVomL2pxlV4gDabwjQRO2xCKbXToXefKiNRF8uCZJXjsTP5hChuPIRajDghm/BlAPYUQQLILtGJNQ45dI0wKbNCYdczWjGZyIK2Rw4lmJzb6wG8futv2wC8CSisoZ93RJ0PUW8IVYgkLjqHqENvja05KS6Koo5WNFeRmdl5Lh1WmI4M1YBXQAKdPn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XeBHCTCRm6Z2akD8Mb8eEmyp44PjsVLc1uJPi+97xNA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TWFOXcKzbwvKlvNXQkj2aKCinMZDbb4ar2RLk95bR0TdH9NYtHbvpY8WL64agks8vYNiydlqaPCYSeGIkMjDZrtctroGHmtlX1Ea5PFPt16t0M+3bH4Sbe2wrVTH/2SpCW+bBIymGGFWi/O60n9gliDVSCt6ob+ZAz0VKLQcr5gygzdfuW7Sjr8C6duo4T73Km39RWPX4oaNUPIvIddVHnjM6SZjTK5syWO/00jIF6iqRhjw7oms43GugAUexXPIXulD2/9OlZwJarwhv/w1PM2Wy5HXvt3PgxtL4JOJ/wJ9QPlmhZVt/qfCRZ4CluWHtJ1zqJHV+ed1IL6wllbvVvnnrzM/jcapCAwHu0y2WGUdLvqGh6IvYfqjDG3EwohpOkwxr7tg4/S6qJSUkpClv5PWit5xs6Yb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XeswZndawY002+cG1qYylYGkR9GrJBsQ3NU+ICRVkJQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "skXev+R8edIYBLajMq92WN0As07utosgpmYFgWRow3BzKZo/zcSikAp8RVheQi799bPKnQGWPejD3BXUm6tbLND4MVdNWZ8ythene1vTSrmsFquNWZ5j4xNBCfWph+wIQCeVmVWkGvFR/SBAOY/tQy0Iv0h6vpU+p0M+SCvGeYALKxAMnkZmJL0XYx42anzmFLF0ShCMIeBu/PbY+Bx+pQqfuv+v0RYcExMSwo13PZ78DF1YNCYWtrnfqVjfVyyb9UJVM3vkEyPj9BEwyfg0l0V3zzr8aTbpVaV3p0QUuKyHNdzoLhqReND6jBGr6mfM9z8pMi4eM6IltxUuMOPC+Fas6YnDqbXOV5HHguLXoNKTfoJrx+cTVFgfrHFzMkSSjBSacHCBaYWwFStuOWluXR2j6xkIH97y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XfpRVf1OeIO3vE7zGjVOWgg5VfhWlkZgV+GZvdbyLBM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3EIOBaDo8cH0gNXfU4d3Ak0H8oAmCcwzDmyjmlcCHZl1CqS2uOaOAlYjHAI+Thi27q7r46j2Kmv5Y0lOs0z8gQre4Ysyk9Jyt3l+fFj0IuPG48urkiHy50povMuZfW9uamXEjUec8BG14pfAXu6t0MHKdQEikKrj56ZDClWuX9cHSO4Bv0hDJ6Ns77eGpxXyOWZwaMJz97nDpfieSaSbFpLX0jMXftBo3hjKrWEs/ZbsQ/mE5BmjV5ZyHHlOtbXyLVGDXgqnk3z5k1rDEhbRW7k4FglLAWqSm7eHDhOmz+JId6LrTuaaO7y2ogJgrHfoozPg7iFNZShLobx37Ia30xqUxB6K7Lu4GpeJprj7Q1xAFfwa6dP8jnJNMC0h9bJ2l5mL4DgpFWC0EwpAufPgLN4ZyCEaBs6Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Xi+QcBGToaxL+xDb328Lvmu2YHmvg+z8vF+xcY6COkE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d0k0VByTIfWi7Fm+1t6VvMb7W4DXYvK9SlgQmgcqtFGuVwyTwz+pnHaY/2o0Hmn6wNmmttEduw+lcoP06PtDUsJ40c9gtvV1slNgCZtnkxqi2Tw9JwuO6TMVgdQEUo5AZ9yqw33/mwwniOJQyQxGcFRWIENRnu+HYMn7n7r2tF9zFgL/tDZ2GbLKCxnx0NOj4bWar2sVKm31iVFosUZ/i+j0LzGTka1utPyl+lCdayMzQo7sq3FZ4E42GknUxKCbXRR+CHplySrpz/SFcDZYATSrxB9SOeziRasLOFwf2cFM9N7ZrIcIg8zRrmlq6E99I7kxYQ5VwVqkSgWopZ3lbjtJvDSKHj8GSax2bJmsu8SMLVJzLHyMCjx/svyuMlN3LALJuUmM6XnXvSRwBsvXx8kX2BSqs0eO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XjxvbWUD4nR1Z1zCztL7IrYbWYj8q65PFD2+9GM695U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UcIx/XY8R2NYAJgTntfNBD6z1bao4pq1sL0gf0HGzPpIn5dvTz0C1XNSjBdoMSkzKyHW98+QUq5E6uz6xMDO6ZatBTQGeVB8swrA7AoW1qY0xU+fiQElpdaVAkTdfByd7708ZJThxHwI43vuxKnGQ9KhCW4kmpIY9AqtG0/3G6tBAUps3eHr+oFGlgMuIKY6dePv4EXOK4L03ZKlgFH/W7Ex55l/9KpLAAbl4mjZdZ+RLU8FPw94C7Egf4XRRC0Fl/mpgqnCetpqTOGO79TQYE+Z2pM9VTZTtRO9pzdN/jAxNAjdDY0gfQ2AZFol/bQq9zEhiOa5u05ISZ+TZgZbc7VZhcZiOeF2jM5unJm+MUT5EC1EzdPsE7IYxs0e46FkSB/TEjGmjWXllH7VO3qtnLcAxQE5+YTu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XkTHk/WGmrtlGnlbE5HBKI9Du9iEgjx2k+tpQAcktnQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x81f5H13D034EIwLzh7SoW+Dz3ZvfW+k894xeSxxldk59j7IFMlHgN+NZt/oEH7nYkd/eZGqoxKUnyPnQ/Qeb+ZRe+fLqs95JUyf3wp5r23psJeX4IHi74RDxMRHcDwa6u2oIkfPX0f2B59umeXc2g0aeIxvK06MaDxsQJnmqc1pv2Gk/ccX4KtzNv9WSJ8TCvVCUcL2xxrHWf6XzIyit1vadFsMf+JbZYUV4xb/VGP4hQoEhnYsNgP+Nzk2RzUvig9YOW+VOLJHVsmm6gBjQJYdVuTobyqIgFL0cipbUfxJlqXaKnCF6NtqjTPDfTi2KlmN+jNRIlVOigO7cpYoREEBNFp6Pskiw/f6gopEPAgyGwl8hewdr/P+42N8gOHe1wOD5CCcgLapfHPa+yeOv3f/H9U/EJPo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Xkz2FJ3b9JLMhWcemRnsOp+Y1wTIbGLw4jCqUTPow6Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CwKjk7DCgLM+2PEyhfvqdqXw37RkQ/ge1r/JkI9kiiERvhqXC54LyCiX4aKpFmxcGBdPw/BIzBYZ16X9z8c3VCNC4sxBFAZakMt1+HTPMCF93o8YUqcnOjbOb1SUkq3Ux0Qac1lH/zREvJuD6xB3HWsK4dRuhpCF6H1AsP2IEzHIvrCvP2wki21W8VnWLF6arLsIndfv75/DL/g+C9yo4JD9M7xtWIhX9RkK2o6YFyLrmPmiWEuEIBTz05YDXShphl9YSotxgdzoWdrHtrfgroQSHxtMO2xBrab4RNn0a8ouBD2hU/OAwIeAsD4NwECwUZHIw93LIpaUH11wd5kS2GsXmMigklg6O0p9hnUqsQFMtGMniFnIY+P9e1kRDyfje0qoxQqtG3nykydzXOZUn99yc90ZLMui", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XnALwXMKGKFJ9mIkTrsTcCy6aJDLttTLGcvkR4fxa0c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MbqhkMv5i6GAUybIwZWoPA/Py/LvuBugR/QtnwfhvOO7IBP+sEq8XAZ8vv7Yodtt6yNG4G/mbfPCfuExzECoXmCs1rPm+vRxffJqrWXlYbX1Jdpts/fwKHqWsVHBz/Lcs1Ge6RCMcce726kPmjhX+7+V43E5gBh+Fwp9t4SUTIiKcyr2uwzXFuHsmIHEA2FGfc0rYDJbNhtbUBdGyrOQhSidLcpJVjSBAzqNWZSLxDb3IvCNmvM7UQ0Y1ot2CKcYcYduSU58ovV1fKSPyHFzatE+wdmLaJIfOVD5fpd+cBq3ZR90r1ueMsRoEZ4hTYWu0syt6la+0nRkekXEMmUeLUeLhIvdr144DSQ/rHhHEH1NFk4WBTyJn/yFo2dx/pNW02qapsOaTQwuiHngNXNs3zUsP9qqYdwO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XnXddtgoIn6QOAw1nReYJ3BzcvMLFnyMpl9844cTIQM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u/1gBvf0vwAM7od1Lfp8hTDKnDn6DpDmWCdG0c9PE8xkw3lCgxQzx7nkgXDcxFs/Sz1OgZh4FUOJmVLRhb/uKyQWktd9xQ6TUinjRkcC9UP9iWcGmfQBNIwdMKg6POGQ852V2OdAkdnYIcxl041ydm5SbTUhRpvG3ib6TiF3XOgjOvFi7f4Y2RfZBR4vuMIpvjxaE36uT+GN84d/5B/3IWxVJMq+XulPxLIEY7fRK1WPxCh8+RtU3mk3XDUAyLg4U+QCwhEO7Cdp9gSXs9XAzKKZHb9P4xdjsr/WwzQRDwMtQqd0NB0ZGjmMr/guSkvRf/papVUVdeZwuKSlxKJe0x7UZAliQzpzqchRycDZZ+3UMBo6dlwSl/H8gbTbGbLu3kotVit8HwmWVMv2fxRmBllTGk8CvfK4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Xo1Gi/WsbcZkvmTaX52yJRmRG/P6R8hywdjtQIrmFV4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vDw+ayHXdyTMMXIjoQB05I0Y7sp30ohhrvOdP6/zyyTG1W3+EhH0OTNziRIxoPEfRl1awvrHHNkSomjGG9aYLSSDiznPqAYqNsduT+lpFohPMo0BQM7WxgcRmL+cuRYre3KPkkNNLRWGmBhhyOHlpSlVGnbwg1pKo6NLb5NtsmkKp6QMS3vaXZEV3VwhEfjDa1P84gq7vOrOexgrF/hnu4JhQr0U8eeqaqur7xdT3TbLDS+6Kw9qHqeDde/7b2VQY3tDp7rRDaebkVi8oFEdM/mWmp7YbFjFoNRGn4xNvgIZw2+cdqWmohJfwPsVU9W1ZYg9xlA+BigpePEcq4UL/Mx5KBWCecfRN6Vz0wMg2vf3cxgp75MK52icri1XYd49AGZJG7LeMBWh5D2ct9RS2ygznajIHkXe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XoS2N324q/rg2pkgYi94xBrBKzLlw+RH6P/vhHA/lLc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fwg0aAs1GEAO9SCPjJJ5VouMwRRIpPvnUaZC/Ytkn0eUamZDgjf3gzOaip2ZrSnjhXEgtj0HH18aE6Ltb4+VMzJt6b4CSi4sdLC97QPCHp8uWSTPFOG7Yx1OUiBDorsTLGeBLQjn9ASRfct9zMoEhwRdsBK0bS8xE8wWWZzJZ83y/QMhkQZkAQMsa74l2mXVJ5jdEIoUxwZP89yfrpTsrkSk/F2BGn0Oyn8xcwcQVGIofILHtLdfRBEE6ZdETKtS355E5SjhjMxd0ilCeP6267fhoWgi3wwIC9e4ycl8XkCXqrvqmj6yg0PDZPUZgo4n7VpWkrItPph6wXp1/3HksbK4s//a/rvFshs1EMd/Ll8dOdY4rXIw08RheEjfIh6ETqG1uABhj7Akqs08tJiuFXqJV7Nsqrmp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XoTCRkijyCdtfsgs/+hT3Q4BmavEEVWBwPnTHgAvbW8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "g/0d3scLHYao1nperMbQFcQnmGT4H6PfG1Ltha7UtX9QNU/U5VjZ8SU3iETyZjgMAY6s2CyF9ntbsfZRien//mRdeva3mMcaYEjxIm6HpYkj+inuJIfKH98Nbjsv8dXNmpjdsV2Oj/c/KWOXBEvD9OgP78Q2idnRYj5zXKQFjFu39/ssvKN7uHlvRhyJhxaLyoo8p26hlCwRUN9j3uxlb2HMT4utqhxWTZeXvLJvNY3NBxllf9qTIISnHVnb/NgBRR9r3yGsYdxzTQPxprgrqUkjefYisch7DnL24fi0AtA/W11wwl3GWv0WRNstpSBbyXWd0qw0O1HWgrWVmv5kZC9rLJKTfB4JVzNZX8Ro3MLZ7DFu9rowndalpwRZf2v6II3yrA38VyvNhoq4q44qrkfSqFiNmiUj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XrweIDNCPBfGRoHUPIobdPbZnoyhnspq71j878xzKXU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xb+oZuJZbOpZxdHV/zn6rnIgPQ5gVZA29NRIlqL8rGKKUEbzhuBVNGUJth3/JKBEuJxK8OYsQmbxLliTjTgc3Zb00A7iKH/3woZ8TNOTC6Gc6vlIbKeKH3z0UAKybm1+aCMahxF7ubg5iBqdWI++0mfZmrCn5QcJHA/K78bh//Hx3M86X8SsuF6CYw6myLyFoxbTtZGhYRuxFysey1iwaTYOgMgn8sVT6vtXsf8+sgt29RxWou8aK2Uk8A3/gQ5ajvwv2jjLvpzspm7TgxytWZr52shtLaNDY2WH+BDWjVjWbvmEBL9iTQPM6mQZDe86XHNYKZVBbmFwMfdlcvv9obQKUiWNRvtuQnZz+eiviXoULsDaDdapJE6IdW6HTai3qNj0LqcSKYbqglYjM1sBxa4fgadq38oq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XssQ4aptXO4+j3uTCImSKczYTnRPGchiKR/xBFqZCEA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sYz3e4HjQkybEMh17+gKce6u7JAP+kp9LVoxgc6Or4JQhqv0PgGyM2qROZlv+lNmU/sqO5crqkHGL0cAKm/7ElrE/V/w73Ab3gV+wDLOzCXad3f1E/jVsClB9bxATbnU5lEd7zX6yvZeYt/APLCR/pT9uvjUjF1jSk8e0Vn+TJ+uKj7S6yt0t63P6qI/FNj3xX9Htqe1CBRkJB0nV5leciuHDCy9IgSLkyswDZYS2txj3/ArGYHaUxLiC2dKxNsDjkoaWgH/YrRHw6uudGJXf0Ax/s3zPety9ft5bPl3/0CzuEM8TrY6/8l890gNj10rT6x+FsIido3k3FQ6KZFsRKl+rZqSVUyeipio+4nEWXGHtzd55mAyYKpk7p/cDuOoVBZna9RNXWzAEI7ATk8pK48oR9D3ciFo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XszoCjP98eN+osAqP+kGdnkQQN8llZpYS+h8JG6AUQI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "je8HAhrNTYEGjHnIZ+SR4XsozJWJVRm4avLep7WtzSxJ/JoE66XDp183VftapElfP+ykgo9ui/D4yQ4lZXRsQn+IheKPW1a1De7sx6rbrg5RKPtdXt7YRKhggexTcly2KBQTW1ONeOxP1LeKR8YJUlKXBzg01la7HLYKNU5Xl5JwFmEORCMpPAb8MsencwESstl/So/I0TDuNoBIRZMDVNuflXK96wAeTAuafCySokx6Uix01V31TVl13zRH4Rs4gVuLDQgBoobYNqrcUDc/Xw+yCRlB4xKRf/lJs5aFy2MVDT+QPO07X/9c67cz4Osp9H8ia9v3+Waa0AHQbU+3pHnB8QEUtesEfTmX/6Lb6XXpZPN+0tA2vYn+h7S7IZXVr15zqCkCDtgIi5h/QuxeThw8jR+eBq6A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XtRTLQ4o71LP/Kra2nx86Wc4SDWCK2P26lU7mjnmH9o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X4oL7OjO0Q+7ROGsvteBKRuDk9G+HBsJKlLolKIhwmeuH5FbFlohxUDRtWA6uOUL8CrSfIf2Ew5thhwLo4kHCQpeFUQMVJ8Pfw6iey5SochFc0N1mjq2PucGG4nntr6rrSCFn3EO/TimKmXFlxfIdF/hLIGUEiTHMPtQDHHfOGcxjAQprfSp6+o080Hw7iHdCB5hHI5rpVX2PY3IishdjO6tLrtQrDTsqEaEu4CJV95o4e2SDGtI8mzb0vZwQWW+8DgleXYmgi+oQ0GSWg03M5zl5/SHfpFW3b4WHKC+cxymVin+eJWdIJI1HHfJiGUU9RW/ltmoVApzu1BL8xUpqzDqA+Og0ltndIx1iE7of7n0Iw63QDBZVIJ6H55cUT33bFvzt0qcApk0QpSEBM8qfl04C+1Li9lu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Xur2J9JWuqQO4/K7bDniCPb1RrLJYUKsCUyAh9r3fU8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l51xsdgWc2AVsssLy+GLsies74cJ21bkQbKwvk0F02aXuiqPfrS3KROEKfKCpI9bX8mYHey68C2Xu9n+Nr2cFhMbrwr3PQdTG0Nh4xyLC6VIzNU8tZNAUVNZoZOafxatnBzNASbZfK35qqexA3iP9TwNKi4nEzN9O88ynrE9c1V+flPVJ7Kd7khXcy5I6EKySyP1lBz7tTYrAL3HeoyWil7+PEyZlKg7syoHmqIFaku5jIyTiTt8oM4bo0zy/blIZB3h5pE/8fnBvZCBfVpCOpgfRCxCnZtqQoLSW//xXj6EFA3WqKXkrZR1jttKLQRkYy4zoaKBnnjfbExlpcbHpCI9QXO2kN88vcfT8+MejThku7yJJfZV7qwYQr5NcK1IaeGq+7NGESBwN8NcGUhtjA/BAqvSV9vo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XvNueIMpcXyWG5Debr9EXlPZ8I2COxq5KPhm7cD0MqM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QKHh39w7sqcAqbGYDhstPzwFYHg9GMYpFou+osQz851IVDn3bFNWBd1dGxUEXv9zX+QiCGeW549rLVti3KP07sMyuujrv9cs3hlfG515LpTxJMAKp5OKmCd8Me9sIOVin/nSVbDUcki0k0UQQHwnOFQvn0JWe3N1IoCQM6eWTQ/y1lXkXnrgDMR5SSl3cghOPdZLKJiVoxXxbCnC8AXTsGi2sf5xvKup2V+ptN/ex9Mb+C95qlBW3tRuoJiSOtSMTtQP1ZS3dnNISwwcNKzRHaH8kmgQUdqlLKdLUfWCZzTPRZkDblFbjwhK6q0xFidjEAwn7vb47Xv7clVmvK6C0QQzCVzO3WHmvpNok8eCdBHfnkbPqRs51pY7HL5DTX4uZ212yz+Jcat4IWbcjUaCNrntmedtHwOs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XvVYTpWc94CMtpHBamLdip9qsiQNTqrwpHEbSnFGdIs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0bRBttpindLgvZfpwjDLBFTr/lhowelIhHQY9eSQWOKBhHj74gLEAahcTc71qqqMIiT81EIFoy0C43mXXFcUbQ9PEYE3+1pRM/UO5QuR3Bx6lBogNALNtriUh1tV/offYBSOtmTkKRefJGMcqfyGJ4NCjhpy9eGZczeauB5OcMDmd3uBIPe2DXwmypF7proBYRAtB75Z3Lu0q0z6ruou6QiaZVVyttScgUEN0Q6OWJ6dafG8bdc6D9bkv6TvW6BEVNV/lKuXof5oxfp4sq2JuK1oW3ssAHDD4eItpWZt4H91PiWfXl4BXxiVvtjJwzQ3rS484DpvzOoJCjbgAWJAqLsjYkgDRykfEfPPv4lBdEf6yunNJN9LgFWuhT0hqjwjiswh0kNZ8QYg7Fjt42uLUwYyc83/Lvhf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Xw2hym0yqvaa4vRPKxDlaxZ8NTvHdsuxbDfulmOjMUY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "61zCh2fbNPyYlsEtkH9yZmz2S7fRpG3AE0zxwMSVKAvwNlQXc1sxeS7xDNwa7jRzUpwiZFERPKxpDWcL07BJTYV/azRJa4KY4iPZOf+hAIHVPgFNPJu41qXsxmdE0FforCXmQFPLVm0+HDCDBF0ZtRv6VgQpiale7A0E6G+cReUZpucjQWX6AZhjhLZB+CZXwe2BuAZlhFJZyTdV1Ke6z8ijcU5bz63t0GrhIFvAh6jTC2rakE+pKbwwOKXfE+TvRnHWEx5gxdeFP8Owv/Ry6AA+pGlLQgCkC+q0G6qI1yb+rFpKC8gl5ua/8Zzm9a5TFMq3I+WuOFsih/DRThaXl33BlzMlQohr2Wkw3u4Lwe5ml+06GtuDL6piYnaDRhk8DGVEcZs16utnSgq/YIw4D2ajYlUGA1eD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "XwkUFwM5txgkdkssX5JBvv8EniX7bbOURmjl9FsDQQY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nZ5fFhG6lp9z7/eOk/mhRP0rplPzt6Y8bPmhxMxhPpdYpk+eZ0NU4//+wdr+373ni4aT3ETkjcNBUndlCWJB9kHzqisbJ+Oec7wuyfF8UNlQfrBNd7yCbDZSVJW83h9966zonE+j+ytmDyCke7GbvJpLSU55OyqRGYidgPNzBW7h2UUose4jvWb6qK81hr7KAe9zipITpKVZSdlXQrrgn+XG13XKmoFoYdWfXTDdS17Lmgfl+ywJKElyZxN3LIHqTE0oirLIbmZPB06Jxo2uzdCdv5BpdPjqOkk8esGXqg1MP6X1YFUavraySI0W7VUrIKeRBNv1CWkXH+/eH8N5xn3la3gU0IyfMNgoCRF4hXKr2CVZgX8fDjlZ1BvTvlf9yLa00ubrrVwMijXjeKLO04RFWAvbUznB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Xwn/pORU0+xiPkztVtmrMmiBImRVPOAtr5WzCKwx5Ag", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RwyDWLurwR26mBMCz8IEy80zLwb+a8N1ds/l+kpbw6kP7qImFjwu6+WFqPAT2mflMx7XVPML8xd34zd8sIaygspJA5NgdBZbVSdxdPmziFfsK9tedxL35IbFvuvmSOruknM7WcglF2G4x9Em80v2emIaL5LBUWHKXiUpA+D+6vb9gWmwbT94Topxj8fukwdhp6sRsFcebuIcUY1jjJFGhqo+CoxxgFRu7k5msExk7aEhk8LDqAPLm+QhPOJZyfKA/Vm0egkdfbGoCxQZsPTDC5Fe+lq+ZlOwkOjvizgH/irtoHsp3oxrvIm9lJD7eY5Xnd25vIULvkcNJ4OVFKtEooSbfUkilODsiNHxGqWkzJAMuVPbUDEnSkpo7QcqPlQuhJBEQiI3whp3ICq3Li/OFtni5Bxf9N5a", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Xz0cWanarRcw8GXorlVU3kFvqvAYbWelyYkY2IyWhEM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E+xBc6A4vbRz/oDjDuVsQByb/V86vmiF7ubkdrC8bO/Vl4j716oB/hmqAn7Jl+T1Zv+zwNvRTKzL2pVjqvrKp6iouOR7mE7dGa7lOPLPRdBohLU4Z2QKToVU/uaDwz4JkNh3siDb2Ty+MLcKELzGmd2ZltKWrymNhCTuFnW8iYI/eBD6BaWFUVz9csoIS+iQ9PgYoGIctXJ1TIaW6ZrfRGgC5RqRfGjf1/NV+UHPYBF4a9W5lDyl3A3oP0uL348iFrrTPvRbMFZHpkgcK2azUg6wm2uPMpCJ/7DZ1a8KqZh8itQSCoRyO9vVEfFMUgh9Mid7A1J1rGKH0n4Ib6uZi5cQwjU+4UYmrSRCTenscL7N8ZOyBI8Sq9GfKmYOwD5DBTE8FITFLcyYjryimNXBP9vCZBuvH3yV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Xzwwq4jjlzVV1X1VWMJoJxI5D3VNBnBuyGp5ev1mV6M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WlIEGEovZcm49Qm2S0bS2UdmyQ9+uYqrbyT6u4N7rRlw8jTx0p9PWbPNUPfBzZhkciG4P+OKxyeaIb+6fvGh2nd2HH8Eq2OTPEwR2OmIxf2oqUkpvD6rH1xFJY75R5A6UmerANaemxlEhiUV2coPZTj030atZwFg8ovqcNtblMoNhzwMN0Rms/VX1rhYc4aXIyY/SevKOXYHYmX09JkNV7f7nll49ae6BE71Q7YmoC/N3VIiorfQfUO7rEnmo/V26Sp0Pl5BmuOI4PeVshXWc9dNRukSlTc4s87yYV0LtBtrCOcSwZRwjDVKR+S//6Zh2J68XMlB2dofswTp0fYK1hHv7pTtOH1PX90/UII++0Ot5Vd7kZ1kcxq5ERM+dHDG7mYBK3mpIUQLPHA+pkE10ws11MIpHKWJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Y+RlyyjYpXoZbwsfp/oRbT8VFvAIFwJREi0Zd52Hh4M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qPR6TAazY0gT8MCUXHrsdJpTkgXg5hnSjtMSM+ZASrcX4fJtFSzA7q2LZzZxgZvb2oeYm5kkOr1IKKXFGsw91FgLjr4uHlF0dHluykAYZDpCKAZ/WyH0gRqEoEjGzNPuVeTR8RjLeZQdanHBCPFmf6Ll+r8jTgq3TAicKsCcaNzvlxxRzXvP2uzfLGiwjFJ7Tw1MwsdOMhIjXibET53aqAj4bFj1/pr+bFejiOKl3VgdNBHMPKosokFj+KEGtO4imEU25Ugke7U4TxuoGU/+b65T3a0D9hHU717kTeU0h6l2APfSHBsugMUKIQjh9OnO9D+Z70Sz1E1zGZGr2Bof+ljWgH8D02CLiVupkso0pWHSuZHExJfk0ZQ24wY3RjC3oHkD5yF/KgXEKd3D4rYCMsnGoFt4ICc0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Y/aJSkjUcEntnVtt/77qJzRX6FfFaUkWj+XqjO6vgwk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dBgM6GMz933sYqh8L80Y0aELhRt4Yy/wGueXMnQv52lBs5LEsPjdKoX2q87TcbQzhf6a3kjWw5PBtaIZLkh4TzPjnb8yKIioXwLIHxfNI5WYLuWPWZPM06H2VFjTQKh3Rd6yamqrVbH8UUEQZbpiKGXJZLOUTwaOcZAebHOvk9jQdm/XMgg3pnl0270i+wsfHsbBhBs1ne9660JScSDo8AKwcMz6vyxkCADNhIWL+cbhvHXkeewQIC9JfW/qIW81clib+ciXQyhsseUuQmIBc/WNApsAG87pnfgnb3uE1Rl30hP/BbWOMtzh3VIjO+DeTR95KEcGSOPseTu44WD+e8lmNXA0Flhjjnwf4Ld5a74oo1Z6OJacOXpP7abO2SWIzVLAuU+A8+gO3CtibdXkyhwehhUCUnm6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Y0+cFI85xZg1pWISCGGUW9jKXdJyqCk6Mri+jOokAA4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BxpN/gMvPSYXXqUT9nhLT6smLGH6XbSxuDELa3ijYlDB1p6rMccRjpMKieKdZOvX1MuFObCJ5pAE8APMTuMHd977YcRGXe5MPhUZ9wpkbB1pqG1gcrsArXOnOJJJqxlm7Uvh/U4VHbhPWViPkAIKAhiYqBSfmlBIVesRaVzElIXv2byP8T2aTW8Ox4dZxOONTB8JJPxi/s1yBkFRR5t0IqILsmptawkxjMrTGT2IBDTkdLv7hY1BYXucA+MUOQiygAT75Inp4vHRKbrn9qrg22PCXx22AiraqPB9jJNB3Ox3gkJ3s5+FsLCShdReDnE1OlLmDCenvcwAffogJwNf4SOlhSC+4Gs5CuiecuuUBVCLqtJX6QizxwDBEhNBS6bVBcxH3DcSCAigOyAII7uGAneCasKNi9v7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Y07s3BesTnBa5AM0itxpGNSiMyKdCN1cJ4+Qs6kaKsk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RX4RwknLOks98EXIyoAM9DA2dYJ/2O7xgs+36Ua9RDzxO3Sf9yLPsSbexLR/lK+bIzBsC1wwu/tQcVtDA+0n04paWNceQSGBjQujqc4XK4RuvoydIh5V8T3nknZCvfuBfJHO+ELlQg36VSJtq/ux7+y4WEPQboBx0YHVtpJYVXVRFmx+LyHSao028oJ1K5fp9Lcz85EyCXA1TYeJ06qTkx58+aggRiZXBc5+7aLgLKZeGXuqsYKKgU8ZdQMTZTtunmAP2ukJxq7efpXT25GVB5qmGYNIFq7YNAHM+woTaMdWPkm9WjflCNXe9v1VG5ZbgVW6UzguosmE0iQHtxPNR4xJ25fk6snuX2fNsFXQBoJ7H881cRKstJZoFB4CFJ9YIKvlDd7KKoYZCo9XHgX/8oR2F0HyMokz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Y0ZezT4rdBQCF6v7rVkxUtsMyguJsPMFpbB34/MGkrs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pMxeWRHF5oQ2CQgTtEBkyUK0fEB4l0MVuEcDWiuJq1qNoKn1OAOMn9Hu44+tbb3/9OrWIZilZr7i3qo27cVs9TiQg3TJ6vsI2rVZd7xyajHr9FnFAy5tZDxaLxGRRYKjGSnLnkTljhjNno7oWrW3rdqap9JWU1/wKugcrBtT4ms2ERG2TmYEDO2/nccjfObRTtnjD1CI5fLnY6Raz9wcvGq0hTRyduHRkW9riUNqDFxRhkYgErrxKewdIlDKsuQvP3kBsqiE9YtgnZxPDvozIj5bAafDpgSjyrKp9rr/3gmVI3DecMjZLlaRV2xZmKkVQRaLu6bWW0b9R887x45v2m6q9boZkhjxk07lLqqs2prt1vh3lnhIjY0f2EduxcVsIlveyuM8/CvHp+OQOfwGPu15o7WxL5vF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Y0mbm3K+Xtr8PXUuQmnwajkp1glvs2JM2AwgkeJXfDo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eE9p+8fEjInN2T2MLoUjzXOFvfP+qu5Am/8V+E4hW4y10Fe9mc4i9KLe5RlQRI7W/GAEUJit1+tyqjdg1wT0AkvbxtzAibXY79rNa4DsC9dNZcewNYJgk9SXuyUuzWpIhN9OLeFJE5CZgaVVa5T/LoYd+8EVMyr3L7pAc6sHcUErDnfS2EOavluA+iqicaHONGT4rOJV5mbhxoahgaAQhn4Fw19hwW4DEZry8ONlkNPFgjzZX6YgF91i0ryMg4wDS0RKLxumdBKxC/yRTEINT6VnLa541M4x8H3UpzvwVIFwJAptt4xlgBR5oVQIe6FV9Wt168ZsJ2cW8ziiazxS6zXCbUlhsI3zM2PuRqnY59BeJOKtl2kmwrrsNzq86ZCroP1qKmC50rk7rUjAbY072mbOOu+xUNYc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Y6rNs5FWinn5y0UrK+TIU6ft2TVN5eToRj/M5Q4GML4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7/lnQiFVieLvr2XuERnEfuFLZlLIaHttWEnK87Pl1+CTncUEpC9ER7gxOZvG2/5LQooPaj4FA0hQPdW0sd2NcaoQpImxw9/gZCD4WIkUOMk5fr/xAp0iro0H8uDj8iXeufe5HC7OOmdPcwxLRotRUYMvoPQEw2MXLlDojEP/55ytNdxvaPl4i+f6M5IhDsEtuQDkSa8DBx3E5+w1JXzsrZgWX8+hfcY6+tM2gvQOnODjQKgnfCIKg5jO7lNFypn1cbdDlqdPzDAwG1lPOuovlZ8/S1HnqXe/+q+txVQh6KjwVzU9dUAJ7wX9hy5e4+65i0SKHUkawn0Km8MzBgvd+Hvu3CzvlZqSOtoA5YXNjj+1q/OdtF2mr7Bmei1H0fY63w7Cdb+Gh1lIsvNsIy0Cq6uOv2dkqDrE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Y7j5+nxDW2M78PPtf/3VTTB49yq4lWoZGrWNJHcka/A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZmofOU5pVAL2PtyN07+vUWQe3ukcBSEwWa9EP70fJlmCIBGcJPfYw3uRmU86bBvIvCbg7DnnKjysQ+oP2nMOd1PG9LB7Zzw2uxzc+UKI477xkfgR8FC51PLU4rPPwvDrLwi2V1H3i9IBtgQZr0HM5T4aK/o73kz676BsfmmBi32Nq6bGTcef5U5xmYdIurfGqz8elSsheN8xmK08XVxK/uaBIGj+Xk4WybKFiBLwUwWzcke4CkLWPFWGV6zJ/XRBYIbRtPNmuG4mzkx4nI41YZZe8W8IiE5SRjwoJa/vVeIpNH9Kpbfl8/ssJA6PCVQSuIOnjcBo4uMaZcqdeYVmdo6ptT9p1TPwDtPjVsVr2T9nRGLJUqh3/blSQyqg81bP1tthScMyyYG7vhzagyU9T/dlYUVXRxC0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Y8ASLY1Bvl5Bcr9LA70uw5eyyJJLrgsF55HgRAIhY18", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j2/HZXo3oKV/w0AWZRibUFlVKfay5P/hYNAjKiQnIdF5z2BmZvm3qzI5fUC/5TMpNzg04wYz1S3T43/MyImPvi11w1sixEa+0BRgKm1bLkrO+V8hUTUW8JD0lF98d/bBr+Krj5/V5A+pNbALW0FCsSkwlci/nzs4R2NHyR7zsNSkEzQ8WPbwSuWC9/SWvMMR1iSaAMrQXavgfo/PSxm6ElywmBWdI27BqRuVXTmCdsngc7Yja3pIACurqpMH7nQUo5OYO9sCjwucLlo7Zp+po4jrBAdlzWHcQgoazM9Z6BsR52MXVZtAGdHU2VoJPPMcaK+rtAJTOLQmqWKXgYv89ZEs7EFb8dRa/2bj/3rTjfJ2NkryaALKSNuEevLf9/gmll8d2wPbLr5KFzZPKK9oqkgnWCq7YCMh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YA2s4ZrtB++nHA+LueP7J0Kb3SH44W0FVOGHepkkbQ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5FvTo131J4zZfKpSyaKiqtNbR/PQ/axEWfspEAP8PKDeUU7TBHh5VJXLBqOP98Xpbj6qUwq1r8oBtKra9WixelG4+cuUFOKgV2RK8+lzh9pm5eoskZ6Ey+EsZ8AvLBGNTWM93NR4Zaomlu3Xoeke5HyGOF35HJbi51ZHY47hz71eeDZsC2RJJJbjFCFKEigGboX4CfdOFy5IPQyT9GIHxpb8KfW1IuO+wC1+q74jampM4EZs1hvCF0Hw25B6dpThUYHQFxAvqBbwNN69inrdt9H+2691yogoCOuZLeTb9zLATe4oMh4FIQ4RPf2hIx/zVvA3sTCeeIHsa7HZTqgwwhQUu/W1KAxuYC8ItTLvvPE4V4CmV6aUcy641F66CdcGyJszsieiO4ESD6gseVEHmR64cAAOFIii", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YAY4gvpGszLXDxdteOpbV/7FtAWMdLmhjZjHDG1lQfQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tHEYm32azmMxPDwBK8faMw9B7AqNzwyajEAC1S+aKx+9G9XRBmXbm2KQPiBjVul3XGCy2Bb6bTfEBR/CnWoQN9PUQxiAB+IcWxXGR3maDk8E7j6HecK3fm1eOx4yT5aX8pCju+PLF0nl8Ky6dvxSk2Gss1H39/aSPhK5sIlxKwQMxeqpA5bCPUZb3wmkxLkr2BjZhi81PDRgJ+okCl2GMjGGPvge7T/GQHkiHyQ6hbqstGwShvoWb3+VkbvlzeDwYYtj60xd+83YG1YysjoM33HZCbip886CDRQ4uE7WPOlo9ebNmW47t+qN1ZWqINjF36ZiqvNjmjE8Upm7ee3v75Fjt88NuVjLZBRHITeSH6Y7Qhln/i4GSkcuy9//215PXMI8DwF2suPlKQ3cveBHQf+xePzwT/42", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YBozHYcCZlHCHTCPWXmzoYOQT9ZrVaNaW1xizp4mFUM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a3H3qiH8TryqvCQuLu3K+aeyn7mZo6QW73AV3g+tqAHVzkCVAXpBxHoGeW4VYS3p3Ak9ebs0hvFw52d9qAtErqG/Lz5ukYPXttIn/RPynxQS+vYNfwkIsX7BcqYRjGbnodqVhbHtBZX3aHFtBDzVDQKXyDKKP9M4G9ibQt1a/M8cimHx7+A4Woqp0YP3xm0sn4aXe4v2s0aTryLYj85zmFmqGOSd4xyVeSKMtV2ppxatVvOK4l1mXUEYoDygmJKdLoYZMCvJEo42JqQQ+rGePeTTMljcQ1NPWwff+99Vduc/IXcRGY1l0cSGsBWCAudc0SuI/cJP/Zhp6MpkQqUAasupVKX4qqDw8gof8Eok3nhKRh5tpuKHSrFhUg07uKX1Ue3ZoHar5yS3Q7LY4qD+G5I09Y5AZAEC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YC6IB4A1v4lfSp9t0+ECPDxHa+EiYWxjqdrEKKsJpNQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WIlDQ52AXJCFBIWvkWUwyk7uG4GvzHROUkthkacFF+NVCYzxZL+RJLp4UIFoaWSbjjDJUUhKVR5yOAgqb07mXR8DhskygSM7tEmfoz7x7OFLlV6m98cXUlbpxFT996kkhHK6R68K56vsg3B/6SXFbUKJtlLEK+WrKzdYb7Z6kbp8XaShxPfwHWpL+dbt15FoSXCLbjcG7Iza3Z23clwNeFNLAlk2PpvN0v2Bga7jC15B2lDtQGN27Pd+bwCMSMMLtLkSas3m7RyKlQzPa8XPOqqCvmwu27h8iCJfOFbkdYM7c74mDNETPvM5FO3UHUiK+Jrp9bDDCswSvmcYl5yo58Tf7lMmpWjAWMD1Oiib+9iy8Q+LJZJjYcrysW2jAKr91MG8LWt+nMO016TIlQrijY3HKRWzIo66", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YCh21BFPVgpE3VjkfYzBmtKODbFDhT24lV+I6UPxuSw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "U2wAPK0tUE7SnZ21FkA4leVmLzTDDDjGWUki1pmi75ZbSv5nX05By4j86sevoEPvIE1puyNtk9mp3JIVzebw09mGVrkfpTjx2sx90sB62MBwr+0k4d6YbvFxolmFPxiXZg/dNA5lv9w9uc886Yh5JRMiQL+cfF1IHpKIlc58laFSH1YkxXzBZAKXaa6r/W7gKlzoh4AMBqyg3V9cLh85NeQypzN4DXXBVFqysDLUQN8tDkorbIbBhx5GNzDdeiq9ARjPX1HvoGl0F3yCRQm/X14JChWOkyWZ2FIByFBF4jOCoa4MnOapzXBQBKmT3Uqp3n9I+DU0IMRn14wslveBuaji/nS2g7Ae+YEr4Cdr5JUQDgqMGIdLJtrtZ09VumjMamOe3BwcC8OUzSg342a/R1DcOK6V5nPZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YHxCF7/TUUpJ3DkI6k8Vdm62HfLL/NPh/s/NfBHoxv8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T7lIA4i/jmONaA/f7+kObFWUkrnH2lw8yJlva+QiB/KQ0o5LHOSO+XvrhLd5ooCP8mjvsy9BI2AFyYNjjXjvwyWPrAJ1QYRrNggwRxNg0lvupth+598PnDCCsHW8Zb4MAEaNf66ozcy/0ig5Dc2Z5Ib55qhGc+cM8WiaXafvXl+3FE+8YbVy/XT6TLFoA1KEGC4q6BdJP50J3KAKjlMo1n4Mm4L3YnmIfuME1sWVgORNzeBIfnZSRPYJ7qk4or0SzPx0lBnDaQcjn3VP6duQ/rA0M/vDFQCTZRoRaZrzzC8pIVp896gWqxNZ4fgJmVPM6d1QJtzi4rfWxGVH3T7m99mf6yePB+36CnDGsQPheAvN9NKjLauyQ+y2iwZeYJ3M5OTYZILkTgP6p+fzu/2P55+CE9YBqceT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YI6U5hRIp3KUNXqvdk1r5AlTtg03ptnGLOHYa35okSs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/+Yq7ZoUVwqYxeUf+3H42bntNQZyu4RYL8KjSp/Xw9uXCjyUpdYnB87ajJpconoDbaM4wPvQHHCbCkET1KfXcYXknc0NeuP8nV9VBauhGTMVsOWCR5leeAqjA8BheqLDmEfQAslqFu0kQBH8NzRVr7EE6u8v247zVGRerByr2Ziqsvc5AdhdOTTa6IEh8sS4Krz4PwIIOqgpEBB7Xf9fWl2gG8sP0G0PKdQikqaAuQI9+DlmRsZRO2uZGvLnDtfvUDc9x+qEDtDpZSMNSSgUh/WtSGgfRlnkeHb6+z+cmkMCtQVyUWgeHuVIEgNPrgDrMiewzO96KFAmZHRayWpJbMjDeOY7ouTcXQVKVd7jR9z/Qkb/neOnEc+PWYQKYAiWED4lnFd/mIrePRuIAYtn2IhAtn2PU5Gi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YKIr1tqZCv46eQJ0EkZEywM5RrvXvtlz8N4hfEx5znc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eOnK2DVjHTYYQuSiFlD2VjyUKKk0EIsfcEyQfEBJUVHKbZmjTAbvt+iXRIc/4f6TB9rqampCdPFPL75LMBxYRR1jVTuWESb/5uCPUp8yiJBsqRH+G10iTdmhIO1rt5a66RNoZTxw0jMh9EASJSisPxl3lQtjgkAprRJyjQ3TTGTBwuSgeNTaACBpnfgqWdoYIrv3PdrFm99BgerCgZ9InBYygrk5todsvkkXD0A77zD0kZE7KcXdFNZbATdHkHzIpAZmLDzBN1jBDr5MSyrJblqWR6y5n+pl6eLoT9WWOHzjhWb3BdQSGPQzYO27mk9+glFhJcJQzOSgPQW8euNW91O2hxbAgsshCcAZYrjsUbv1xhM40TsVTHFQAQ2T7v3CKAH0z1EMy6C6jGMCm3LCVGx44+FJf6kI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YKSCPtCor26WPHDYwFZ4BXolOyEndbE+8Jf7JH6mRXg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XY5i6Y7ExwuTisTwqkVDTGpG+D74XafgiWFcqv0A3f16SLndCzTrhI+lEf/Yez+jO9WckL88NaINmXbFFiaNRJMo3mVRdo5iQHfIkl09f6v8aznvpmqTReC9mqB9V+Q2yZKT3WP2cj4MKMFp01T4CTKGkzSAMSpa7fIRgNpW+tMaALWp7iT1/eVA6Wg6M4meT4BkBUVY3W3d6nA5HRlgw2v7HBelqqv7oKWQ3nyDSDIXsM+NCoZQvwWMjxXRyz/yxiRe/IiYue2txSq0K1tYpnDYcnEqQFyfW9PAwjMkP2ogD5m9ZhU1rhZrq+cvdUCDn26CRwSFns8yisxvwr/l0nuZqXnKCGz6C0OScY8VS1t9zO0fxAZBenNBL2Hdq0puzgzXU/e60z+8ZlsXM6hT/8HXlg8THsEi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YKtkcxcUDybbFckH61TIc+r8yheXu1uFL1gKsNvcmOg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ksHsAT8HhkJoc9QkO9UqwiKAxjRV0OKiwnu0mjBok7L86Jq0d8rbCBx9ijiRGnH2vN7BiHNCI9WyFF7QDNEqP3etgD68/2jQxplCZoPl6kycux6Xfo5ENZ5xEMNb9km+eycLROPfX7KpNcarv2bR1gcxj9NZwPSa8vpP7se4t1LcOux62jlar7Ez9GYesQXqGErkv28odZBpI/LHZuAlAGBJZVW3Ae8+A0VsuZ+OqB2J2HDk2Lnx6J5sNbb40xWI66AL1fm+6IDLNiEg/nQHX2KOlCmHqG+QEYI1/a5qFfs+jDyYVVzCB0vVXI0oNrWZt1VI/v9Nrokndzu18DGgPMRjys4kNO5Bb1myJsd7m0R1j08F+qjt/3g0mwFrNph1dQo8iFDhf+KvPl6xy9RG51VyMXsBBL4/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YLDUtR2/U6dV6rl4IYoVRxK2LBiJcINd4gpy8iGD1SA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "14mH7wV8mQtCD5jM4Aq6G88tjjCiBVJHrdIUbe++2BndmqTmMXAHDT7Swff8VAWXk3P6/y4e5scIOLbMBE/8J/w+EiZEKKKI4u+N0T83Py5kocyBMjkeR3Jt16D0izrthCxdd50KPQEtQ37Mrog5HmpADqsrl522hctmqftmMI+xMskLObqpdL+iNpoW7M9SZ/kyHXzDliKXwVNU1XEjJFzWoPp/wwWjEmtE6tl/D3bifqbEAT4Zs3Pq/R3JbpNlcmeYhWzDMj1UpgsVhSudd7DHfgQ+n5oOhUkNzo7fQB+91nLYMacpqTOJul/vT/vvwDoHFeSU0QctN+AV+FxiusAIrCU+zNVIQ86tJCR8K30+tBPrCr7Z58WyPlN3fwmVS5ucJoBgz48ksRGmny+ZqE24ZMVegWB/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YMFZkZ9fEH9b9zbqzQZ1ynemyZwpYWPj5RV7XNUaAIE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zMEtruzsyEtcS+ERZN0/P97YO+da0DLSAV9aQyRlSvnTTZhXk6uUgDSP6Md7qSRlBrk1PxmAO0U8CExXl5i/uv3D3BjyEIZ01ojllxMpmIfbRVwxiwAi24fSYhLECiR7I3sR2W+xffjGNmCgPU3mcPnijg3kCQt8PCRp45R5AtvTgo3iiD700JUZyC24rFMZFPx4UnAe8ZQcD1nGC52//8HER9IBNQIKr0ooOqk2UUo1VAXDfRv+pVHHJpfeenZi3K9wFr0RgUuNhr65UpK6najQJsm3tvR1kdyrD726utxLs1VLsyhrM+8x9b1/iZViWnBS0FcYrPsygOrkghxOsTKYNeHKjQebPbzpCmYIPDYsoYGjqq1/X5kpG1SgpfQH9tyO2v30gP4guRuD8DI6faDjYXVoWOdw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YOU6tiEjWqmTJulNsrV9h2bdnifUlEax0SzbYaimVaI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CByy01t9xDSMimWwZxTUnoJrnADFXNTBT/VSTnJeF4yhwkZkrnzNdFOZ8ycOGFVZhUZP2ai5EA222mhKJJkyKo7CUe3rSON4BCtFxi1NPIaltf5dqw6jLLwaqZKItnXlJlyx80DkWjWTRAxcEYua0fsklKV0kDyT5W1Ft/Cm7UWNA22QMEjFXAyzstYmj2PukVIrPqiECLD4Olf421rQJub97Lxm66iayUShkDS+NqjYKQpImEj2v5i8OljtJGQvCi4qdI+qcDWIOxP8KkAiN1CXE8Uxyc6juA85wFbfyl/bbS3ioM9zmHMeCpFyqwktZQ6VAq9VZKG06Xxfz3cj8pgnaByIuuL9euV9Xhx4cTUIl5+Fh10IA/6jtnH0LUCxzxdKiB2ym9582r67XCcYdtVH8/5+wAjN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YOtZdub9nMp4ehH+uKSMkCX0+wQHJJB25/fY5oMaT+4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3FsmNmIKIBA2On/dQ7t2qn868gt49PYvlWZloLiouT0LUKgcxip1lSdrWABvGviMiO0zsQAKtgiY435dOlzwORA5nJ5PG+jY+G4ZlquovsXVKknTn4rOht9U+zDUf+7tl5nWmxsQUm0Q0EwW1u2x+qpKauQ2f9eFkGc73I9LctdD0IyvznuTyCDWmfVlDnbaHyGhOQ60KEgJJtiqIZwmV6leaPLoSmQ4SO8klVgz3uiA6y2mNeOedv4EhKSrHEg3H10th3zZgpWCPPLAzRomevJ01v3iM4QJh70LjoE572DCc6ru5xwQx0VMPNPZFzYC/TQiem9bzrpOVbp9PCN7cpeQx1wUp233g03lgFnLTYcHKendbqFO97dE6It5QXqjUXryv45JvMUb1Cj4Eao87cmAlpdgQtZ2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YPRg8hcTXaBR8/b6Lym8RhULKNABIy4LhdBptLs/K7Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "enBhH1+TRt+hb51kR8KDPh7k+ntqIEtHoyWZasncDkBZyZ8YM0iQsWMFBX0hvcs88NYAZrea4gLSJIPuAgX/i0FbWfioX7eZmX4AP4pEyoSH3acKVGpsY+c6I7Tjr3WGaau9I5nQed39V7+qyNclwST9DzRkteA/ToqZ74q5vJObVc7BU+n6rJnjC8BolgxmCNoGy6Pl6l1ydlp1nTv4nQEtT4r+8vg9eBKxo6HFxQ+MBFwOL9gAa/Hnh+6ADFRjs2hue2bfOZ/tRgPkG1xeP8FDFbOtA7ZbnIsb3LXqS58NKQO8bEpYiDOIvVlOyvenAF/ty6aFJzvqMpgLy4Qh51zS0pkc0OtXAX0PYgYolGwcCWG2juSduXwYsME4Dt56fX0b8/xXpN0rd2OZZdPMJPv3qFIXcXjK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YPcdZNrWDKACQy5LTGDl80tr62ox350jBzdzNIOJEtM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EX43aUXUP4gMdlQMOC0DrDc8y2F78MD4Ye0RQuYhHDBkygngWICjHuEQCeBGroqt/VTnLu/XM++KvXkI/ssaMs9jkV80hThWYBPtjiAwqVRrt67ZNpjJqMgg1+Wxo13OVnplRiEzbR8c/dxAMZp+T89FZCCsWKxPu9UN1xKpM0aPfFujt0nPJt756mihLluFuGTTG/r4Bja7woG+U/lLJYRvvWI2gxio+Xi/JKhpJcKyU7Yjrz2SrElJ0WzXAQD3ZZryKlwS9VhW7++IR9CGZXi1N39XhBvCQUaH+oHQprzG1gI1VFUi+3rPXN8knf5vIx9tbi4NgjjcyebYj53rrWaV1zATfrUvLR7HwVjzua3s8LKdqN87030hLJtN87t+Ifx1C5u3s7Kq5xSvEiZEhISZfAtrBtaY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YQOHmaSJYBMJqxpTaT8hA51jRJC6x7d96YwYu+8+HxM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YEo4C4mnVW4kWLRfjZ1vJQpPgqkRENyWCq5Evjixq8mur7ZmFyrHhPWHTW427DxWzYPHjmpXxENNS7DJp9FDMNSH6wpS5zIQ7UVN+CBigqwuaDyddNsRR6WXeeHz2mwHR+JHKiDLxuI3A3sYD3kokdckJVxDGuH0FMAKFzBJvm2qCKvZ/Dhry17IBpToygk0z6o/IjazqHTnXd3j8Ijt0KfqlG+yxmRIBDV33dnKbiizmxYc2TFfWYtOt83Y1FXF1+aKysKmX1PmjJiK2zEQxS7YOYI+5YDsM6DXN+XGjS4lvbAh5F0rZDXmOuIsq1/vgfYyOCyp2fH2vTpXS8RQUhfGuWrj4NNtIj7jsovUkItGKf/9M2nmBpsK/cocbq+GxITosOecClowBm4VxJowNrPkdd27980j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YSXOsObbunGzWnzZCT8hzvHpQRs96bkCg91QEhxpbA4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a6OGNxpbraWXr5bODrZSzDxoep3i5zCd7Xa0peT39uw3Yp9biiJjZ91kCenY+u4Qp1Ih9WtfttSGowva7WoI061728skiwQ7JPKQYYX+k2TnWVG/esKTJaQDlIuxaKWH1bCM5kjNAkne7qLiSY2E0NsUf+dUwTS1NuWEYjc1R8N42DhnXW4vPI9rCt5zkIrBrjOXMt6jgWcFhI2Bu4n53k3EFJErzXKrfIeRKkQ5K2s3C7bF7rqiyq9vNzKHibNRNPa1dxJj8pW41De8+IS1saEcoDWjhfLjnij1Atqypf01XCELabie6W9Th2CnTCp5KTf9J3ToZYSnx3vbYCYJxVMrHge2pjqhf+Gk4mUeCHv0hdxqAY2Yokye5YTYV61LXoKseWJe/z55yHQQJ4TPyjk43E1xtcAm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YVqq1ynsZZt7Jxb9YOkNVQ1EpunTf/UGyDPNAeXKBa8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bXFBYeiJ/rhzCiaq+D3B5ElQz+8+FL07PVgGWgVeilUmkLxQNYvgrPBBR1A0epoWCGwzwQxOpMI+XL9n9YM+4T9lGKtk1gPdi166UtK6EKRdGqkMIKH4TIip8gMppqQtcJ4IJOPFRbcB+vmoPgWwdb8bsNtwbi9KCar77xJgNnqs+g7eGcF7QpIjKT4ld5BX7xIAFFv830LD6sDGI8p8rGzKpNF1nYzZk18bmZoHE7VQ8JVjfgmgPTqI2EK/yDrlQ+7xNOjzQsjq1eeg2L9QQC0d/KNIwjvpxhLHGU1vdgDWDGk3O4vwn8gWIUHOT/B3T3MEeRwezzYDlF6iUqsCRTIKqnGpPcWSP6lZGOiCRTBv1qH05QxNwxUYcOPUCO5k/YeR93pvqOReSLtHIjT9NgOtJF0KEA9y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YWDYa5+FOSzSgFGVyKzxHBRxy60x9y5JwO7nHRksxxo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w1OKvs60Y9in7Ij2GhHmQzswo4OYuEmuOkWCf/OGkUEsoDySftzQBA6F7LNA/A+PeZSMWM8gaaPFsaGv/fUwAob72uIStV0rDynBz/PREV6kv8tFM+PaBkCOqVjYmNNbXFNLSxwMyVHgEHHF0d81BBWhGdShLKMk5pW6TA9bpVhA7U8q2bWSfpHAijB/YAJPC5tOc0/8DVeBfAz0+ylD6A6oZYZnIIMEsWyO4yBPGJMD+TYvHj+PZHwts5g1nmU9+o/ozvHEfAXH8cBHktH5BlGWAYNaZ4V39HUfGs++KYg7FI0db3MmD3yDSYHj8KNeXlD7LnLbGz5+XlMAU2gUiR/xZcWjAqC8VsEFwP2zpKu7PLTRKR0bwQSQ/bvxdUjg/COdliMTFpGyRXqPvtYIfRHxGdvQUj2W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YWt0pZMkF86OGb5wp6o+Gn5FaC65i4OyQjaBndX2yG0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "++o+91AEdqovuIynbF0CrYyGT4DOGf1g0T+RVYZgNsXxiUrYGp3F1AmkAgcpHHIbvGv34G5s7c6A+yfIb4gqJJOn7ah+/HWruzMmSNtNAjw40nMxc5Sm6IPBsdPbiehqyRhP4/4wqQdHsq7hUUzdlhP6L3ZYKJaegc8LJRZWQKmS20DasmmANK4Bqhv2FPVFojPOJ8rckXgNP6fvb5EJYP9slmCbGRXJSTZGLwNIIkGiqcY2GnBhhOX57pXPc8qqJay/G1fdX4J3NJmTjusQqhJBsWM+bQtSS+M5YYu6eeQKHaab2cW9esxK18BNxFSYHZo1wEyCbyrq3y5bOcOa4yP1lHmiScNucf++RT0TdCvxeF2dR7gGtp20TSM+3dJ1x7cxBn7caHR2+eyAoc2RW9+ssjrWBOy5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YZ/8Rv8rAbeoH51HBv7d+U+OrDeiVuN2HYED24Op+fA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XEbxljGBYk4xW4s6ELt88nGhB34miZ8m9MXe1R/Xqt9UqKAe17Z2aQsucXGYL3uTcZIciL1SocO4nhlQx+vx3eewyCYTBmzpnI7RJvgDwVTgWbKOiiKe9fnZEo8SdXwhEKC2k2udW7qZFnHRXlgw2O/du1hNKz/G/pCitc0sIkWy9cu/SwBbXBPdtyPY2N2EWdMn+DELKKMdyn4TSwlnEktGwEXWm/gOGp3NiXqZ84eLe9KK8589FYhrW60kwBHJH9el/tO5Wig1EfW/ECarqvabpDmwWJjM8yVysRtZR69XJ0CHOzyjMBJKQmghbphpfokVrODu0gHoO0z7TbUP9Pxa1E3JMs0kumdjEHZMb1bCtdznaBiX70TLxoBzN4rQ/0gTSoQ7ZaL101QROYEOdd9RiveIfzr4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YaoDk3Dw7QnyAdlPTZQ5l4MSOryHM0mAx9weqdFd/Uw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vEyGf7H0p0BX41pk3zLm5UOEO64AnVS6KiLyVv1ZuL1hxDm9iRKKaFLZZQLytbl7ssmSlhXU0PgqUH21/EtshbBvvAs732XG5kEohT1U43h3lTilANsVKrMULyK33YFNRoIf+uLB3GClUiuPXgbbZcErxYPFjPmXpNXyJ7yjvaAw2JlpeiQKJMlBfvhqlncZyIPwPQ2sH1vBWrVoGD4QCKXwqLWO5yhHKeNDtdSLzxTptrfW4wPaTM2OSMWylGfZnjVpKGofRYSNcNRK5QFzsFtuHUlNZlgpHwgOZTBihql6txi1mP01p3wLatDCqtsiIQlp5dwEDTC1UUOpw+TnIIZdSUxSngnTuiMQ3NYtjr8esw1o3Dr05TvW7iKKgwHqXbzl440vxp6UEv6AHncjYICtbFEcHSxz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YazfLxKEsKj7atNUPLIt1TyE1AsM7MNLhaNvr9nAp9Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8W5Yse7LrlwUKEh2u9BOBco6UBJEiZKt601K45TLIdcKeV+kbjoPZcq74J9zliCWjhnotf9f6JD3/u5DfcEVAXwvZfUHa6ceJD/2XdkJXl3ha83rYIjULXie+0SSVucPurh5X82MGOLYCHIRWKPn1pc3vKRY5lYyG9Y9/BV0lx7lbQARguSvuEd7UG98RpHSj0a/YND93SUgOmsUuFBB46YQEyaarx78t8+hHEb9sNOsZWeeffBxTNMw37R+qtsbhirNV7QLSV2dWL2c5hNTOl662gHQiTvW7fvX6VEWEadzWVTz7KAiAC3P9zylgHSOtc68G7mu1fVLbklBt70/iWhwsc1eIPp6clWG82A4WTPBy6P/OqGwmuh4Yzk9NljxFBt1TZjBofW1xBuWx0YMvjcEFH/KEfjj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YbLCNzQj3Z09twQz/5gz7+B+LZfvcmKaaluc3mJruxw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AFtHpqs7UtpHNTy7JpEw4ewhHNO4tSRoGyT+AhxYEmXIqztLJex4GxuAjcpg8lps+zFjoJMDFguhhNlDq/h/I9l+ljIY/+7IGu5Gdt9erRJRidiUzGlnOB/yCrulEQs7GdYQP47BY3sq8M4L1+FJV4ULEoXpGjDbdFygUI2CyGBHgk64774iD5nRwPFW7Tf1TU4OJhFlPX3naMp4QnO4cst428Ws5/Wxqf/Zprnx2FG0kT96t54AOIXlBhMXNzyCgm9GxJQ5P9qUoUX5QgRSaAvKqQIdM5XNgN1aN2SVg/j4hx+/99VjJ4oOt79hTQY/0TpuhXUKmldsNN7P7i11DBw0XVVrYKn95/8EnaXg8qt2cVkg90cUF3gTUF5ImVk88l1szaytSl+FldmwnfduPpHT6ZC+0CWI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YbQMbatK2yUNSbfLwdu8oG/EOfpaki8vtKtzkpMx7e0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mRtZoJ+GpItDeHORSNASL9SCvDIEnmCDFBx34zNYeCAS082emyUsw3vbpR887RHHhk92e4Kd6FrvYTLRcoddRU2CKuGBlurxn6OegoZzgVmcg960mUEezhpaxfmr7pekPScoi9YMrA6ioLtaPf7Lki80FsX9MfDnc5sL49KQSdEr0CCjp653i18RGjXSaIBsItCxyA0jAtoCyJcTGpZnk6Voem+WBBn4EJVScDZmjwaOZxnnj5xmDcpD5cEs5QMjTHsH2IwSK4ESs0Y/S/SqU+SeOBgVZUAnrGu77oNXTa/wGcShTeSjF8q9zXSSdK7ZljG24fwYW/QnIkT7+vQEnufQLixcX4DgYTgnZdP94aziHKIqBEUdtCHi1YpRKMvTHraQ/TsbPMebl5YG2yu1GC6SLZvqHnvk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YcEyJ/eSwJlIUlIaTfLppdfbNEL4iD+EgUx/XmMg0zg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "htYKFQUtv56YqvEpXnRO4/utCTusOYo0y7yuTErdrt2wlv4dIslPtwAI3+Gb5EnO+ERVXI3icjS+LE6F1V6NbkCRK4SESTt2/GhYQpjwNnFGfDz99ag3cSwuc7JJMgOm5xriIezMJuf70hXZ6PPYLV7YW0YQduIOJGJknNjg2/3NKIyDm61BuXR4QfUU7w5VXDzJNaIh8IDD//RSbi61I3bN9sy3P72jpedMyHitxpk8/fzqGhYrfr/3JBZ+6Qi9q99Lh/meXBo2DnzGZKy2I/g+W2arw6oBSW7JCVjzXN/4Rhi9jPJl9p3E4FHaoe5X5HGMelK00LHoL3d6KILltb74KEg1uQe2ed4ynaTzNwvTIdrUZUl5RHnI4HpZ+VmpL1SRRd/AM7WoGvkQtai48r2XnFDN+ovm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YcYWjDiGnx79quGd7ZCIj+By/R0PT9e5LVuHrGDk0pw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XV5EoWowML8UgLIfux33RcxHCi7P/Vcht7GpzTyuKcFM67jXiOeHS4+/H8YsrxrZlEGSL/Aw2KBVDPYNAr+pXxE/mj5EJ69CZuDr224DA3Ir8XRY5vFyG3alsNTUfoKww3XkYCRCiDvKTCZ6imZtdWBTFeMH4HcqhNg7jcb9gBuDOGl8JZ5cRZHii4qYhkV2O8oShf8/jyS4YIPlqmoPNUhHWcjZ6T4zyf42j4LOPFwq4hKZ4OG4CxjjicgN8rLZWaRAgzjSD8eK1gawCuJm3YCXWaExVkV3ws5Wa2j7rRNCTcgh4gj23ZtPZkgTAnRWf9qPz9nJuK2ChB+iQ/tR/TL63hU7XxJCqp82gPBL2/ShRgQnohI5GrgQgr/8+vm5wTfEHOK9Tn9pAJXE/ppfflSTtvUe/2i+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Yd0Ga0sZceEG9QJ9eElReqSf/EP/XcoZPCDi8mygkxY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aGIN1EcFhwt27A1RZmqMMVB2U3C3RG4ud8ngSubEZxNttyu59dC+hVMJ+H65cIzb15g6UR2uzGlcOWdKUbFhW79dr1mcMSU0oMzSVIbmVeuWwxlLgWFi08aE0ZCTUATsWeXR1h+BGxLv2OhzKltX4Z+6E8L9Emdd/rr1yBSR9DwJeKcRjrDcSWl4mXeM3r/nDXuQFKeBSwfnwg+emw3XFZsIsxukOzpy4Yntx2vR8TE/qjjAacj6/OlVXwiCb2+HBf4Ztk6ecv7G6+O7WyFE0m905OFclLvHRrw17/PmMKp2aUT2lnJLPAmHprDE2FzXe0iGFJL5kY0Dq8Be/xcAei/O9cIU4fxznxO/K1YrutdUG5WIOO9PZfNu1OxdPEjzaQJ9S9yEe61H0QCKBPzAJa58sroSOW4h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Yd2Rh37iXBtaA4DUK+BLJxoOxB/t33Hs7jGCx9V0nr4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0DFX8DZhs9uUKNiXXlEeydpeRO3H6spl2vVxNBhwCf5T4dO9ZEJRAtsrSVMBuxPpXQCJvCi+dPFipAMIuCR/FNCQ2eSA1Wjsa69tiUbYg+NshXFAeuVR7vzySNZZJPJHtGWk+ZAhop6jGlAQxAOebd5ayo0rEqHz/F3sJ6+C48bos6sYOv1Rn90lbYurt5mDHClulJxx2W0NG8YkR/scyFSRhvKB+FmbEIeubcyrsoGbEqfUXWTttlgPkIE4Go2GDLHvt1a/4HEwOc2rxE5lsSeKanqXFq0nJQbE65spsPxY+CoSJQlNFdNLyoxH+cFP0qtmsKKL+Cb6PG3zRblulQpEz6iDVcIDetFvkL+6NJrwvo0L5A7JP14m7SRm0VFpSowabPLFoUGQy+BUFmqe8zp+y95pFW1X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Yd8SzVtNZzyNdGFz27YWNJJma6JyX4mD+MpwvLHgenQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Sc/dMjC4gBn9atqtPmLr7fS2HVzIcBXgSkOV3lY263YLWydIK9rMX47RBuBSAzKpf2KTcdg233CfxHZymU+D4/0P5kJcjbn1e6AX6QXATgZDjsdKihSDPN4O3ugNo3b1POQcwxR607UioEuBbEZ2Kdsvz/svH/ZA2ZqVBYyxDA7IvLRlAt/4A3mFVaqHpNLHv7iUfoBaBQ/xdr8BZQLVX91MgUwiwEtuxvJ0XjTehhG+rgEL5pGgsx1+9ldcRKOMyBn3eGM4VxBo4TdGyBtiiiXBrdhqgBYsXdrBRhZda9yj07U1aBixKR8G/Phum4PI8wChf8AvyOZF0iMpq0wnASE7Br2doMGmE5BBHHkJnkkBJJ/j2fiaFxWVgyIHji6RMl35XE2IhHYo3fW9vFQxgID7hB4jjgN/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YgykECRyZQdBJsGzx5ltsbnnhBoOa269Uj3U5Q7hjWA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NB7e5eSJVpYVUB1pplMiA1h2ZX8TkINJ6VI7bQEUJGMH/S2I/P9b1eNAW2rx26ty/OpOCaP+IT6eKx+BT7st/0v7fA/OqSzTeNx0M1eE2w+becfDbuJk20U5+0TCYJCtJpL13EV6O/b78RJeN08wR3i9AbAV/2XEWC4Mc63/3xOnM1ttyQ/qwCd0Cpyb1HxDQt3ut6Oi/xsGmX3rX6kwTf2bY/VBqoOKwv09YO7DUyvIHMzTTl33aos+ciFfCWSf6sMfa3EZg5Aux8BWVxCdl77kzXqVFom4RoMVpTxqgKgoyudA2f9FBWqlB+KSO8Vo6dKsfo6nXp/GfkDP0oR3jfUYASfZiEIttT8a6L1KuhiRng6vpqIEiHtgh9afWTTk2/EVKRKACGo4860OGMFH7/RbOJTjXTvq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Yh5D7L2s01D6JrTqLUYXgjIAgpvzXkruxW9tsnWMgX8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gfD3V7iUlS5PH0Plki0/aJrWd2GOP+TNQVraHIFSa/3H3kI4l8NhrWjPOTVRSWRXtaDuDP3842PIoGYQzS/i320J/z8WwMRfjfABM+QUwO+IQyS/l/RoTO2dzdzUN4biBI5zFD7dDY0OQ9I5C4mtgfKPziPO43eZbe8dm28+qOOzcSD9hFD4EnflhhAjFxw+9dyakGddm/LeBeFCYyMVPktD9M1BfsYxJkj7ze/VntlstsQOwY07rH9rIBp/1lDydPNS5yF1xQS70iHf/MAeBjZhxfY2Z/ATjohmyuM3fUKMLkBd3BTFgw977SyjX6SgHp28iEc78/xXdrtewSpPv14GkvRgCpLRRioZ/MosV2lGCEtICcCfYEtT+WrXOulqQl79LHSuZV2/5KHjRCCaVOT+9v/nLqhV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YhsqWmH3xF3ovsIrzFgdrNSGWLhGv/1+yRuBwlJ2Hx0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d+YviL602D9jXHAlYlvT0dkeqgJiBXOWouNU69dUssKRWETXLd0xExQDMtLMRYJjXiOgWZVlg6VfcfHeT1rIxBgF+uxrOdMpl4SyuI5UKwuO69TKXyVIw8HWejzLaYaIMP1B7WEWEP50H/eALwu6zQo+vIl53QSrraODW9XTbBP7sT2t0S5ksiHDsJ760Lywt7up1qtPPZYpga91Zsea709+1n3z6JrMmiZNKcfkIIxW4p3gxocL5z557BqbTM+io7v2u90ipirywjul6ZzVIp7oKi/lUIuv2OavuAbYug2Ib09iAbSTpQ1gTCZ9AEiSrxK8XlBdxoUYtOaY+xHztivqdAYyhLEmnmfx7VLl2f7Lnsb9xfywFH6QvJv6hQ/FdF0YIJnEyoQvjFvI0b9d4c3sDaadwU2U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YjKvAkMCIiQ9xW375+g6PTDB60P8NpkOeN37ENX57sE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GXfw/Ol1001toZ2sL8Henus5RsduSK7MEK0GXHyxO9ZkzVSg9TmKiGpsftr5gG8Guq3qoXo1BJkFWz4pPVOpZKt0zy7ModRI1mt5e7+PVq56OgEOmtAVn2Rk8b8EX/GDdZRd35JSlq7JmIWv4lrbx02WSoqfgml1sbJq6a56bdsexqSZcxiD2vwYQ6BTbCF6Yliah/q2OAlw0OEYqwaDLA3NbUdiTSixK54jSqbPmrpCDJYIOKDAvPRgLFC463aYVgF3OXNCcHfbPQbFOmMKoFCJR8Yf4YoxMQRKgRMhlJRJde6tlFzfmBDkKaMsaIQyf3g/dy3tSiKPoINhDU9UGBNXBZkvTZz1pLo9CXdOANrZisO7WQ7DkkopYP9wHKv7MiqbUrajzLJJwK71esNaEktSrcW7zReB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YjW9M+Imws+WOFletG3QI4dSRNvaX9jOmdgH3veTras", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "num/BXhwbpzEcvuNW+pofwOrNYzNDLfOit/nAW2/JSU6qjQb9J8zk/nCo+dUZNPrVKwcfeNWuXOJDZ4nlmcYtGZeOemQMx7I6ZLRQ1CWBJjl8dg5oXkd9Jl6Y05SrUGemNOs6vqxL9Q+XReXevRgs0/TX9zae39L5qjlVwHydc5TuI8Yyf4b7wqKY4Nf8E8eFZ02QTAKjletZaKwAFfNTfmWOj/6u8wCli+QrBtMFpaS6qbDBXCGvzmUS32q2B1vtKCOEpzQ3lrO5Akw7QdFfSqEYzmyVHSUEXZtZaRjOhkDmtjh8Jl6g0j/taOK40wfAIP8oc2clMhIdzqVq+0Fa+huWjSz1gmtgoSuWwIKAUGVuq/SDXvQNejw7fkAyeSRj8hpavq0e3NPCp1639uySlViDyVk/55o", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Yk3xRf8D2+4+8EhJmJ0Y+KxgE8IVTu0T4hro+myPji8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rjQ/03YkTut3wS8d6r0o1boGBZtxsXL4/zQH/BRH4pGi/fNpL9yqTAjz28bhPVFJFW7w5J69/PcU29yfqxd1Mh3v6SvD+3IIy3F7TlX412vM/WRc6xmLySiDyzst/ztcQubxREuC9U7FSgIVhrWPtnyiVZHYBEQ8AEZvb+UCNvQo2XAj9uxVtDHrOMqOCDb4EdXFkDPQjMVHpnschMQuf27M2wU8O1+9Kt67jXVENSkc+d/Q0sFaKNI+YODgGupqQwYJs/zmkrzlV+Em6hlguZvY00y2efOXgYETkWdP2YJ7LF50+5hgq6Ee686buFt09mgS5MoWMZ6Cncb5Lqrq2M49pHnNKglsdg85n6kb6aa+SxMNtFdcr1pvGK+vjRSpoZCzraI3K6umuGlU/1jJETurwxGCFW4M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YkKVBovr1hvGwItGiYgH21pc5jljr/cztnPSHevX5Uk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JUkWDBD22NWZ9Av8Q0RXHshlpC4SyM1ZaSd50XjOjkwp2sOq9Jl30lFlPIPmj+FfVDUCPiAFYrn0ObvJmBBHG5dvpPjU4HCWchUtKVuPUjiXKPPcUFWaRRfAf0ENOTyJxULMBpZ3jD4gpCt3GHcIchbgAW0sQxEvjjeIO3VevSFSP5OYY5FfylIZ4qqqfAaI+IaO09PPbpPQGtVKoCs+/RMhqfCufgm7bJcS/RLHjWIhtQChNPX6klgvlG+RrV+drja+ZwpjdGdNNO2srnWZs5DYPvM4TI+CNXDqAVpe4oPJyj1P7/8TJELchAVJogZYmSjs4/DwhkFhPhepOS3CrkNjAFvZgO53dmwcUB9HkT9NCh+TZFrYnqeZdQ4JHtriSToh5vCl8dz7ggyM47u90WCcA/eETWYd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YkOtyBkv7XLYqaVxj+vcjMLo1PdRYbbZPoo3ipG5J8Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PC8JPWf5P/KVwdgp791+TNhM/1ii2kl308UAz6jzm4TnEykveDh8HonqbC9BNF9f3LEkqWOr5YGR7UZohwP5uBER+HlHC3E+4ymzrq8j8BOP52l9wlTbiNjHP5Hg50shEljbpS7D+EAvoH5I54/+UBIYu+7KEejU3tUHZyxSQufYljFV2yZF6PWgV3cKk3Nj/tWWibo7wQ72H92uAJMovNk3ExcMszr7SqZxe4So7vRIoiHV4yjM3h9iloyvO12P0MONUUQ5YJGE2pLDkSvK/tYBXcsDEru+hO7QgjCBc+H3I4qKVvwRh1YENskhdC3h27nxHUIPiQo0bL2vscnT7WBmTgva0fZvvPKPaPAyKlXqwB5yZsd3Ot5VF3Ylt2QoOH2adh4z3hbdHZn0KI1XZoAlv38Ruv4Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YkeuRmB8WTY47OWngiF8z+A7whDiPsOaE81TxHXvTxU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bevJeJJpXcC3Of7S4vZXvGJ5mucoE4TkM/rhlqjfYsG0lXmLLYX40nDxEtt867CDUyorXhea+NPIUA/bH+Ht2E8jH8QfHlizou1Szr06pr+0U3MjPXFi8iXsbMSXcyP/RSg6ePI8Ca/hTQTQ1zK+LoRnCOXjY4+WxPGDyJ+qMHfDI5usyVAP1jvXv2eGXTK8FHbgIZpXbPLQD8BpjbBXDCO9GIlvwsqUrJaBSX2WFZG+GZ4f62DzGoPKeeXPI4nwiwzZyeuOmLIXgUKnShHCU7tMHvJtK0Egx9vzqlSAH2o1zKvfJy/t2gMU38HrBheXKlgAbNr6r/4nqywCfCSyuilYHQvbAREIwVtYtLvSBr3d8z1BlccktG8qowS+k3i3wF5eYi3UO/d99EiW7U1JhzTQqiiiqIzw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YlSro3xuhUvLrWLCc9an1ubzBg7xGPScFWtbmq4jeEE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "reBESmnjuMrgYI285U+8oLf+6TUG7yCvra/D9yz1yUsEMOlju03H99OIIS/I8gxOZM0QAPZ0jC8zGcaqzQpuVCW/ulEAJ0bAlyzUdZA5KPWVXRUDmG0WdzysSQxX5G9dcVQSL5/dT8BB91jlbs45F0JNcVZTDJizsdlhvJUv0Tt8ccs0QCgeGf2qzHxrC1Dh/zmNgPjI8rDw3PEYTAljWjZYLDNWK82aciPSt3M0RhwNJl4+J3WQeODXtSb9cdwBbgczpgS7s1gtsjtDlrn/N3njj0UWvMRvcDwYW6OcdL+DKVzKH8ItRtqgpj9gftcgqg/pwaqg8/VY6dXVxNALz8vAN1FybzgBVZd/d2IeK6FIXStmKIcaACBc8Izi0Fi8fepiO3NqrLl/4778/BS3i5y9ZtQaINHw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YmEDg0401CBiy8CkeabEgrQHhj+iUyszBQwM9Ugymec", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "74lKOI3nzzcEWi04M6BC8n3+GJ8tXjfCl52lFqNBzp+L2XYp9OOEdoD6m+XutYqJjhfIPJsvsBFBbj+58OfZWg95ncxaZpPNs8fZkJOubhBIxQWPjHXb+0QosV6hZbBxBzPKg7dY5DzxHPlMvcJv1ljR2vFz/OoO+HpULOIwte4PiB7DFPaAHjLrgJhz0YwFLNEfbShT3B5SxRcJwmHjuFeeEN5mf+hNYm3Z4k41J7+erjlxtMh3uZ/wOhrO6IU4uOeYS1L7yzTnjObSJN4Z4fJrWJ0yuw/AE9NoFP+o7AnbdzZLICmfknA1isBQn78SH9HD2D4HVTJtrcNAAWwT0Es1WcwgQpZ9Vsy7FOu7I4enEgvt8Ssv91Th6qsOzgC99mZXi070SQ1jZfp11CSjAeohIr6FQzTy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YmO/qVH6nxoCH+9B7ImcsFiQULRWh6R8vy/xS+h59rQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DVAsRT6fTUkHQzkZysoUB4GmS6uubKhqwCunrrMeH0YmWwHzwLhkCG3vdzwjsIUmgX+MuntY5Bu0FpKIu2mVn7iQL1kLcczD1m5YSsbXIinN/7AypVs4xGZYsKU9YCOSpvIBcu+spYJD7MNu/iP2dmZgRpCM3S9oUc9Y97yWowQF3Ra6gieqllu33q/uEBCE+D6ScPsb4/UyHWnybcuKS8mA7tD2hU+to6GoJSE0DXecQ2Au/TpUV8wNd4PfYV0g5cE++RnY9nYQrUetgWFy8zAQwPdLOI72Tkm4js9PlTr0QC0V7iTgNJcRuyX+5hPl0nbu2h5/8ImSI8VsMYqvX6X0uEAW8cq8/xtyjL/0csJ/KaaSqXbYfPFUow1HDR5AH+wjfWTL73aJcA7quDBt6+zqMnBgjr7y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YncfcUa8w36bXRLnKtbQKq29SQyEpx0L4g1jh1FfNhs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EcFBVSgD8u21dZqKi/iHNaCUmXOr3L0B/TPMyfAe0jJ8kFNU6wT4vLxyPPT0XH+IAag4qjAwhhF4N1L+x4B61pHhhyakcXXsFv+EDaSe6Zz4HPaaA56n7JZ1jGXLdcToknlED7Ah5M81ubqSZj9Aq03MwDsjKcdtSTxw8zTrAvhq/xey+qT7oNsfkjHr8XgwWKtogi5m9bYneHIoGan0lG8/hDZUIfqzosMWV5JTZXU+36DaMOSYB1xkgLVNRcl6XFypmLFpjrL+qezKyuYLYbX5GNx42FH9NXUj+UX3N7jYhxdNWvu6VJsB25e3Km3txjtHhYDlRmInVc3i0DshRl9RK8YgjcuhO1jKv9r6ZlQs7CAlKPVgod/c5XW9+C4xX/VlFWjr2y4TU5B7aQRldwC2bAL+n3wk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YoHDVaYm+aCOuOiGyzxAOzm+kCUSmjoKC284pDAkcBA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B90Dd/RltDg+QyinMOsptW8HRAL7cDKBBKMcsUgYjuGz0cqWU5WdHMSYR0VPmT9Clhwml2OiPhiaZaw0cITlZID/kNc0Qai2XcHxQAp0OTFnXmGzKsajuo3do8q7QQ0Mk9jYnp8RuUOs0MJF3lxbIrPQ3f6aBdl8O5MCnG+IhfNmO+dP+eWjOnZgjL6IIYscbFfQnteucYppSv5dB7l4vL6OA24TT69N/QKes/L2FfbBppkHjNtoQxU0ZGAFtf1mh4I/YLj5Yb9sQmeffygxBfF/K7ayZeJSHp1GXUjoTTMS0VQgVSzW9tpypPs/alcE7hP99IEohdfJolRK31ageY+EFjAq4Pf4jrJFjljVBiGkioMnwItF7rS2MFIz/1xxDJbMTbrGBm+59/b/qn8qRWC1GlyfQSmh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YoplYYJDYN4NcCIqxCMHEoqcaeZXDpWPlNahfklg868", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LwPCRBCgvqe+sctYFxjzhTgyQ+yNTC0FtevCVXvwr7sUOGhuEDyPeteaVHeXaKm7rZg2qQAu2kmS27FpiWNM2LUEEvDfvMczgpwmFQywK2L5RsGw01a0QbbU39UV/NNvND9oRTp6kxLvGFd4L21ntUcmd861ZR48HPCfdmS0fnHuHmMQGvKygCzGDvmrPMm0jNMmyTAtO/9Gv7omFl68VzISr1VBIdcEgNKlwhaJN2B8vBpP6YtBb9lwafecYGc2j+tFlv96hwLuPmZ6l+NElXNIVZWhKXA/c0LY3cYsa+EnjCy/9TiNbvqqaTGoZgkgrUp/IcopF5n4M8n+uYFkZJNhFzXUopZ0z0i0557+umdEuZAAlgNA2AhmZ9SIQ7QDklERRJ9KFxtPD8tH9mFmIhyG8/DBYr+h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YozeKOpTsAvGBVYTWRtNjNcUE1yw0PjHcoUwLBuPORE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3SI4g0e+vo/O+kRndzH4xUhWXqK9lOA2zrrJfp917tPE3pNQZDn3LotLScz0qtilP9UJ76mBq1Un8vF5WFQd48tCwIq7YZCPfqC7HsQJZOlUICpJ5OGoccN/Em101kmj38amP0I1c0y2akWu/gF0kImY0tdh9y+PD80e8BAhNrYvgfxYIhWkW2PVWOiRqDMO6a8gPK7IKEKNZRORvy8DefBpUzh++mrIEXTk/d7MnX0HbW7x0XDlctw97ZHU2cumATLC8Ml2H6R6I2XN65S12JjtpdFuqpBR3qjpehcBp/JVirwED+qzRqlRVahXvdz6hwiUBQpOTAIAKlnG8XzHwYbG19BFcParA4bBkWRD6CXDIDj2jVLSd7fpINVliQBvjADign18KPYIJYxa97priRXh0eC5ToWh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YpAsOi2VBrOFrniOI/Tg+wVFGsHsu98zM6W39FFxn8c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+kO5zL3/foULhwp9hShmII9UAcVc/UBktCY7A2rbgMKKTpAdKmzAo9aS7OmBZxf2N6Ul9C3p7rDwyJyWmpUfEDRXk8Fxdmj6Be8CuQNoySZpdMw91dYMr9VxwgF9lhDCGf+OZ2Fajv5iulG5lH8Yt39f62jtZSitkOYbMb6SxUjpPXJHk3KplCzMhkMKOEIzQmy0xzg9Fj6XJ1PyhP9PdsRrH6Ly4i5nGCPamomEyObj4yKzIMRt9BZyl7x2aKJ/X66BTfQkGsLX+HFTFlWjnOcJss4hDSqVTA7+lIv6vwjtevO2gb1RWUJFrlNI2ulbo4vnvTTCRw949haSsmZuKdgDvmY8IXq7RhK0DYx6EZ47+1Fd6LnaG6JUn2p3tmB92dHSiF/C5p2j89L/Jl5ugJ3s4I++RvnD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YpSTHT215MsuTIzTVCcPek/VipYTK+YjUvHr+bX2xr0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OaX7E6W75mpnHmqzRCShn1ChJuonPCTGZIED+i4mjlM1sz/MxAD6DHxypsYanZUlvCxz/UVTEaHUt2RFu7gQNE3ly7NvKl6kn/+aICKRCxfb0YnCfGRUY0ifybNsipVXmMpNB+5HnBtLqYt/C1v/l/aSuqY+Gjw5k71+nhXjBw9kgPu9sIvvMY8crtuzaD3f+HaSEVsaEKGuDPgvrDC5I8IoyTGsPmQjALpXpKu4XkRRlB4pxjqkVO12ZNPw7IjHNQh0RWAPXzKOUpMLa4QHDegNfi23DUmRcaQ1Z4Yz9yRTMG1HiLUqlyHR/lMWzK3Z9Pc4Z8ODgqmHhyYYbJBI7Hkwl64BDE03vsCWe4W7M6hBJJa3zZ/DWwCUpXwd8Ie6K5hwpIExokI1Zhe0S1O441DGKU9A+aCl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YqfQw1Y73Px24AsxUi3doMHS6QDKz+RPHKzSev/PR2Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WbOcdiR1dhSTqqvifq64JoAuUhmx+MSHLiJz03cTcWhnFiIJkzxewqIbab+mPNE5JMJRTDVUh/yESkcw9G2Fwn7SVDENZfAoKSSM4jLVcg1n/oDVxHUn0wHRBp+LumXlajA0B6PSAUXhPOY3jDJ5yqLuJCkvTdZ2lVSImSEso3kraerkfD6N+OSNDdeXecnd0gyCuDatFMxyAti/TAmYxF81Ab6eM0uXfj2XGi5tqu3j+SOWuNm67FXGrPK/3N9zSct0jitRWU+XNjkWLAmJDodW7BFBdOknVwxTebeY8e5rkm4VQg9p1cqx57ZV1a7KVXCfrwpJbagsZRtTdeNRYmdMWwvU4HhqDBHqYjHS6NmKc83hQ73r/QY0ozeLizAQnJKx641oKxrbOQQs1WKbQuOBJnvXKhjo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Yqt5lQumvp7sR8V/1myiU861glcQn/+IduDB1v0mtl0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/dvNRNzZPDGX5imHFbmleD1f14q9gwcKg8a0ZCjHwU5eIqPLx2Lk4nKWdYpnvcOJvYDS/KLSTfWLhK3nS9eyEigB0/HOP9zCnfIlx1ltLgdBusLEMfndAFlfBhNU8UAWGIh3ZkLxP05ybICUA74CSm2TJ0Vpil63Bzpmd5cMQ4KUS6IfjFKjfk9td4O4Rec4L1HinWCQheRdgbFeLCoHG/H7yKyCxPE4CJ3y1Hcmnh6/pQMtBDtZ4kJP5PZcPKM+trCaP/omDRmgGNRlJxC/Fx2W9TCkuA1Kng4CKnT8Ww1rqUqgKZPgZ6ySdGRGJSlalG3YHtYSJQ0ZJQ6bIfqen2Wyz54jg8HcaqWh8KWdTiK94pwzphE3q4c9LnAxjvBVWBGgOW/moTDWkPtUEkIEnana2BaTJrlE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Yrjaxcq5qcVXxTtHr+nfdlvmouPJGaOuIrCRZohpzoE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kAZrYGsr7MOZrGIrYCCtE6wKSMzw2S2ZJflBZvIOuF5iVLuT4dkWGpRJk7FwoCFYIEl3vEe3w0fWaS1f93EipLZgM57FT/OwJ/ajXumHmar4a71s9tx+JgPmUtcyI5tyMOz0eO9OO232ehYRC+c/exTA+5yID93bY8A3cILSVu4JCUEQwwQlYbIzKEuBP540bygIZekE3InxcFd5d3T9aJ9ZuWdYxJZ9Kwt8/CCxSOMlE2IpMOKi2rpky/7KUz5x5MbJwaGa6DVXOLVuLVYHwdvAHVj31ZL6dEQ6ndllJPCtnzQpSDc9O1+iWqiUUq1WnFaSuA7y7HIywOEqryUlsm9fVH5fqIlDiyh2AeU9UiC31HvbML2+NvGgl4gIYRJEMuBulAvYJgwXSy0rlxWBKyFI8OXomjpB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YsuhKxa0s0/A+duBwT28sThRoKIuxuu8tNaNN1U8YXU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TOysQ4zZHZMZ5ruHMhU2MRP7hMUql0W/F+wuIuXZt3SO5Gv7IzVdJhtm3LdX4I9AVmvW8gxQBjIYbaryotrCxgQclfMzaaVCSBNTyA0wZWIRrfwVo9xWHoQ5ZsHS26iSswxhd4UBifwcrcH2GcD3CAuzzBvInMkImr1331b5OsuiRRFRG2aDJhBXJkxVI3W95tLjgG/ks1xCEI0Yl1VEUmOc+jBi1FVSrcAjvNbFQJqniyZ0913fDJznSiE9FxesCcYfwaUBhQFSC207wRwyU8f1JUBHUNKIDZtt30jI3spCPRlBmOVlrox9peZ/gCIpVuQLkvLNmyNP8klxcg65jqt380IMJ0LdfBtcj36qz2IT72DbN7Mpuwh8IJohpH/+gzVXEZ+oqx9OWihtQpY/yzsslZh+Sa7X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YtXoaWbi8/NaBrgcNE3wVCHpF8BA8/SthndmiKWyFow", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YAlzLm0tFQOqjMMfOKk0SBypuyk3QtRtrczQ4+beJbSuXOt3NbKUpEGSjzczWiMkEmQQ8cHEDKKd0wzDmfmmq2QDlh+N5JgpuLRRmxveke4R0r5H+HEqwr2Y/73ljdRN9BvtcMvDTG8EfsR90L/sNNYk/5RynmiPm2opUBGyleiFAFUNV1XzV5B6MmgkC/XlaEJ8O7Z+S/Hn9RZjQ75hXeC5zVfdndJagLHYq7tEJ2FMoTlQYrfaw7vNyb4sSDOjWYikDwdVfB5JsKHxWHP59JvV8JWTc+TzIutXjhYB7Ko4xmADWiXX4ezfIyQpbS5bOT1fMHy/bppZPvQ6vKIOKqVPxQVLLnQtojGYP4W4tYSAdfObfqLJowmeIJEPpg97AQun742VANgTlFWJOEFMYQiYdbjLqTw7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YtfbYvi39d4mPqQ6W3hz8k1xLY1l7XwPNQRWXII7/1U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ydzC8pMwy7VFwBRo3BUjoLac5ZQHAbOXAmFlpZH5hCAi6KMlaorUBFmLjXa1lv/lemIzUfqWpTAHNeduv1RvJPP1uMRwGhdkPaO5psD4l4Jrws24WZoPp8fnhOs6A04cGzjamkHXSbkW0v5vq3qN2AQzxp4rbcUYSIw1W7ZeYkMh7QtE3WlkzLkJW0HZbvLQ4AX+sivl5Wy/rtibmZgqNFrBlHMrYyigfkVPToN+qYVvYgcaq+qJBMxRs2FTH4nXB5PJC8yg6xEAqXWMPebRrJ0JFj1/OGirvOTvLYCcT6bKtEuNykJWyMZTjJhOwU9ZPpK8Voca7a+//n8VwA0kB3iSZ0VnDArvZ8jnFef0rhq/5eCx72wo2oWPVNmxyhpFVwiRoJhRx1xRj/WGQXW3ZSOLXZCJUiar", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Ytx0n/YYDaz7uTbsx/fZgq0Ppkud68k3N0VC6qdBmKo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XZsfRP5HB9yJb85wiMzb0suI4b6sOEtDdI81Cmm6rHFmHoYRDgQVIcNvecBLrxaZp2pFTPqweL2XXSfGBJnfkLzG5cSSEy6fVtCW4TD/yRX262yQkD53W4NTfdyU6OsnA9x+9KMFypMBkSddN/wzEk70+Ag16dRU5Bjr85DckTfotvA9AogiZRyKJkpVDV15CwUmeroKCKb2OT2uGz2t5sXXHl4gkxT2BDC/Bp3+35LBu5OPa9JDNNFFANmLSQB6pH6HksYGl5kmA6IxH9dz9Ijen87etEMxO2Z3N07kbweZ/D/G2eMWVzJgFTSGtkUbZEsDJSJL7J4g4KqzF3KCrFfgXYQ1hcrQWdS6H7rQYKr9e6X1XN1kb0cUq6TsYARPUmSddJBLhaRRVwBKioNco9sX5AJyTN2w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YubE5RdnE9X4l4LWvYuHeF8C30YFluggRHhiM/4aFLE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GALEhrecMD4ASIGVLB0YYaV/zgPJJO8RrfExnjjK31r/Z2F2+S3/woMIPjws3iGB7UX7uNyqmOI9iZVIcfJJS9cGCH8pbZV7X3C7WdZ/lKIjitwnCy9nzpVZx8HOjgEnjskTVl37UVgwy2rPLGlMT3sAmo6GzZVKV47EMD1Z83vYf+pac/x1uvYW7Kpe3FnIqmcBQv/yk4cOAY016jNqOAOgaLqenYpHn8NndPTYkMaYNQY/2dSDATL8g7BmvlOvQNLWPPyvbc7i67GsB2TgFhOOHon7aNVm8JTvqoLIdiJTmz322EeoKs52aMRigyOqHg/h6j0KOmoBN0c5E76WWKpPtcX0Xz/LyrWANA78eQJh8bpWQyALukcLrZYEzNySHvLKfeH7zSJLBwyP0rZFQOlQ3BhI7NGN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YvWfENUOW7TDVPISYXJcvrd/c7psWihtV9qrC7t4Mgk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "G0V2fQEH3TumFY0UUrcjodz7TUEQvn/C2IptAvAXoGCKxDipb1KvR8ygjEKozmwOXHzluMxesC7KHFlZMf90/YpSxGYlcFs/Pe14QSKcDGXsmBswucuej2Y8iHGB/8nJewsDpflIVyk5k5WGqJzoOci+y19RenDR5DQsSORYwxUfvJ20uHtdqDqrDZm6RaNi134SOlReBt26xAd05DOhKSjFwPtE4wft2QaeddEyDZ6beCdwOkaYhTwi9Aj9ncBlIDrRoIwNXNVZGdcJz9ChnPONK/gfzwtLAbKh/I1dsWSq56GL0DimyejCOpUY6RzCNK035wfVrZYEVLUKzcdZiXMQSIEpeG39tkKf53dtnzZ3nreT+cBBiOsEK7UlHTynVTyujOEpFHmWjbk6z+wZAGcaAbPg+eoC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YvoC2sIrMTAGfiXwcB2a7C5MFYLd+3yEQq3PUGkuc70", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cMwwn5UAyfVU/ivkn7GYiTUaDjGWuVFat+T1BNsN32H4Li/bodeoz7kk9MAvUg1qYVi6cjV/X3i61IOBBp24os+h84klu+ImirtzcLSRxcansbw2j2/g0R9Lhfm9ROv1glkjE3++BdrGL9DmvYgxIcvQc3UPUsvG3VbFeROIFx90rRuij/sbPj5nB+h59xfyp2Aloq6UxEBpXaSzqhjlnldNiyvVrxrPe9iy6mnn3XcYa77l3laLGC80/J2KF72jG8IOcihF7m8xtu/r4u/5Uz2x2hphciSMrbfstWsGKRdZ3/RNfykL+hzujGIJHJAamOxDAdbUc+d9WDRCu6Itw4xwAGK3LyWgGXTU7CJuU6KZikBjXRa2rk5p35WddVaTO4V/96BB8qJ45vX93f46vl7rbpdttt2U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YwxmG9xqdXrYQN0xMvNzdTkaGf8xYk3hro0OIOl/+4Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "908CIllGd7wG/I+/giGYrCCnaAom5hxfYVIRkXtTn5XpNVEFjB4BZctxoGilWfXVkiSgOYwi8edcJmlGQUE1Y7eXCOws/xAinQyhOVUn7WP+Ksbi/A+jesz9sXRMaRpueXf5EuZG2TSEQFPNc88DOLMcC2/0bjnErgEniV0BtjZeQ3i0dJ6pDfWBNR4sWN5ExI3hNMPwzd6uXML7p8IwGAFCccd34p/wdw+nuc7J5Uexj4F984npZ0d/yMCY+2TJIQxE3lZxC8ISEK4ya1UOwsCACT27GvMZITOYh6xbB2PCUpV1z8TGSXxL/nDLOYYntClua3Y/orXGdFZvw364KSsXiVv7YxaFTpq8RiJJOSMhcZFsvPL4HVOzDni3wudmnAyhBhn6jw3Em4BH2+zsl3dt2F7XLGg/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YxwTbzV51jipyicudHNdfOg80lgnv+t22maUDjj7F4o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Tu1P4Gha21Wx37063lFCKvhYnTn8dhz5XDOurlc6HyQOu5iCgXQm9Fe9T63drSGtFhLDlkHfbQvFGAAJFuURUAezodLbkHAleuRjydvDiwx8OGI5aaNaVhH6vwiWaXFFY2kiUc9ceqMe9Z9v9sypJr5RNCFTjJuDy34HdlzdYLYbTff/FUnpYHJfsQxIpQLyZlLPvJ0A9SzThIP89swLePWfZoyXuPdTPQk4xbfli+ffl0xi3IJ3Gam5Q34SNYQLiSg4cyJz9vfst/Gu9NOAfi7/agwLcEo/96OygdUyyG1kTStkY5ztmXr+7auKHZXirDytFSrfp4W838WFPLpA0NFXbDqpKSxtQ9s+iT6K3/3CYLyEzJyQeyNO8zG8LEN4Z+OXrVR5U7HGBHLowsVHETIapdLY7Zz0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "YzaibkOM1Avy+fZL+pAz+La5/brkckXOVJzxG8MCXJ8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ys74I9432qwFZ7+e9EnMNdC6kjonFuh8rGMdBE1BiaP2p9Jh+4VFrg9Tvu+3q0JukFulFjpgmm0/CB1gr7RaiOzMxmF93fvfEDJmB2iBNfxQ2ZNjL8IkUn5ATbMvS7VI3YmPolijPz1hkD1WLDN5izxhViwiybUSf3PimFrNhtGW3Hlrm/ILTRSEntxD9M4OdzvxIHhyytCGq6zz3yibhwgTqvfaAED+2jBf4bidL7m29GqMGKYnFZWwB/+96O7eAeSwJyUXAADWOCuv46hrwRDH1CpWqETb+lvXnpb10p7Pj0xVjxJSuG1B78v6GjybRkpWzGOIGA/AhZEUOxBB2npfUN2nG0Cl+ljx+EULVnTg5y2NeeIQdvA0Zdl03OaG9VokV0RJvmMzzFUVsWgU0p+mTOT6IMkX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z+BksKrOfjD3WoRd5eWasvUAO7oW8a0XtZOni/miXNk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5rokDg59cF43MmpDYFiNZG2T8yqxFA7t9A1SvYAEFCFTTpcWjIK4BvPVhBDauYX+ZL8QL3GjCjt4FlLIG03jBbHScOC0KjlnNLoEhUiKq7pD6DfsQXqIC6Tsh+syRUHJIS1S+v1M8yU4srldGiW9fPUdJt6RNLPZXFhoYrHWfBaTwpKO8ET+31jFie2hbTy4Kuf0NcjgV5a1j+83oTJ5pSuKXU0nDEfqOvLalNA0Ca86W/u5tVzwRChLTahOiCR0bhlwnVYsy4xXqZUhuPgc0cEJiv8d1rOTeLlqq1MNoAgoOwo/VFK3JLY+NmzCHKHChkNIcRpw7PTGMfCMkxjSXxtlYK66NqFRkPivg5pwQPlRRRmzPic9DvunmxykA+I7RVWWFWy6iOtWdijScnLoSKpwQQb+yq0M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z+MW3rLh88BZ6WOIQMkF/fdxtosSGoC6nElAntDzDTY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7KEajRZZI+v2GmgHlQQIgew77EhtyxKskZfSGy7X/LoBRajLoeGXmwDuw2CRd1Vnn3AXv7sH8y+Y4bjc8wdtsvpwb5p5mDsQ59rWkeVbWBCjzj/b/9hSQJcWIWI+uzw+rbXIzawB0OAGaHXCbf/2x659Xsc0c3/LnSgpHQOH/xDSdnVjuIlZpRYb67PhPfhILXYLIkkTNqXsZ21UA6FNjyp/BpOuZ7r+tEt4DSPqYKjF0jyRw9Cus2LajuTl//qk+9SRALXyoIoQLs8I5eG36Aamg+tZf7RQI8ZEqSVfkN/r2+rax46otDiZZ9FFFaTL5Aec+jzZy3MmhD6TWaf1ByHERwd2gf7cA5kgF2QA7mvKbL6CIylTmhVWx2TW24JRKUE286DeFZ3OmqHpSX3wjDZWkbrtodRB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z0tOW4qtnaXzUCvbQxDBnqNWPF0O6N0ObbahhP/vfSs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w47pj6y5ksE9awVIzcK9uHjxLGmimM/PBgbPFIJquZavB7/SZyn+O70oSfB5jopxFQkDm/4Epds3LD6AmDgxJAEIs/ESCoWmrAT3z0ZKxGmjmlGRehFnD4Vld4oFn9JachgrAtQ/94E0JtS7ytMRWR/hgGLlWaO+z9LNJt1BD6U0CXSeAC+Xvl38OeHeXaOXIgM/i2OQ2EZ/K42GTfvE/70phbpA9SDrT2GWFnbVZ89GJSIbdCvZJsYmEwhjlJLYwCtxjqdNyNaFnau6poJvmTThOlOtVgTQV2gI/yQRk+WQ9+qetNhf9qZu9hYkH69G6K8/3NUG8GVGiXYx+Q+CWfI7CLIWE81qkLEqnKYTUtnXBodCarYqj2tgN4fskOLd+rKJ+JGkORzcaskC05hoogyt0RMOjiHd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z1Db80HsXrobmNd0lFGK2MVfSXpGqB4veZsZlGG8RRk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Km29REpaABTdsUANqtKiQpUkc60Wz4+hEZ1G+uCR+ipyIjWIpaEh0mr+LiyzT/lGQG6XBgGjFbtP2b/KLQPY17uVXcBdhBlsHkqmOHQBBte+47Pvzo/Z2F/ObPld+4ErKsyZ7M9oAlcOezYe/JwLfPS8bsWiJsiNa3nfPt57n/KIi4X3Ktjp33CIiNSTjTcdxjcAqWUfTXs9w5E4ZdEZxuX6Zlm0divFume1cClOTSnpiCBUIraAKiRckeSm9vz1sU0wy8CkIJMjt9d1AKU5EbTFwKKc42jIAl97TfO9ZqYTTvZi7LydJb7UeL0EpvAeG09Vk2EDAvDhWP/N2trHpsjeLxieULOcXpdYzc+hW+AFsljOhMBfI66QuZO1o8rDAPxLC0zr+bmv4IM4g/tUQwnesbY9VMBy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z3CmgCD8ZyCEHw9l3F9TMkYDzxKVfAi7ItUacwzYesU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/vbdE63pluJnd+fD/RD54F19QaqxwCK78k46QeCerRnxcAzJEQyqWKS0wzru9ND7IZftv3rrVvmpIhnVDFQA5hGfIMmV1xtv+xW5OYo0YZ3JWhchQx+SQ8gBfqT2cRj1C/b+zjMayZtQcGU+2K8wiCfk19Dvf2dCfuQIF36TkFwiWDkOAKGm/S+63sq1aoHSR04iCHlPMBD+MY+zrHwZoHEgnGrsvRu7e1H/iOkxh5gKMheSy9L23T9beVIB+eNx2MrF64HM+IsbzNqGA8SWQWPN9MIc4TnjakhCS4wpeYeKTT+LVwuXIvGHvMQkKa6Ehn5j3R+7/YzjwLMBVNYEYkvOXv/vZEGcu3WquMVK65MAbfywRaf/hDRS4juPmKukiIWID7mbFzLPbwn87W6/MF8CCMTsmbGj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z3j1DVodZJPTECFADy8I8P8C6jCfl0xIwoGZmbbzQ0o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pQt9W8xIylDRrJkPmjKDkZIkaLpQyt+Ks5X5MMJBjMaRbAZTVDjH0F4/B4Tt7gznQwzYVc+0ebxnsZffOOR/sslMwzZrGRzmmZxR7R67mrW6HbgEtRcSNkvKqXbygzSwjezjiX0fBfvo1qEFNcN7dZnBTLazAYWpqUj1wGWbtiwt9jU2Zk/0tj/lAqinFxmrKP67REPufxKw7bFCBLVn4AaBwC+oHHq5E8oEbkeD2lbecYESQTIPqiDo2ygR31sOKwowV/FUbThBib0RrfwGa6boYIym7jRVH8xVtT0djnYYVBlyPABpspn3nx67uelDkDyff7XRrebPNuCa0AxqnaUE6X/RKTW0L0OlLxebbOExgqoiygVV9VVEOgQlyNbrI2GelL+fzkyI+XFBXo4AT6apKGrf6p6x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z6aYPiTEP+wqZ1dqoUnvAO/XushmNfWWWWFejsQL4pU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x8fZXfkibyVD/Oxtf+F6C7+3AFo63j/0pSVDY1UjgBPYunuQKBAKKIIyulhF1MQVyxXH2AHerWyaYnm0edK0GFWiVZHMftTX/TU9OAp0gzvCR/aM/pprQTu436Zcv2jDnn2tCFSTBeVeJ2slCFNxqq9fFs0Pk1ey/0lVjzJvoisbPSPjStuok31JJvFN2zTqCIpVfbn/ilayShrt46jLkKWcWM58sDo2nrug475CoR3I7lSqzEPKBLqIFLFEM+vH/+lfYi+zqSdZPD1HhZ/ODtvAMHTf4FZRLQ5hr6ljQY5xe21m8BdTlDwPbjwmm2k6gSiB4c7i2dq6i6YAvkDh3PLx+hD5PzUueeqIztK39v9JdzbtxF3jxBka2m1ik5RdLqcbq8iVBDdQ8L9AWbjYmnENU+2E4H5g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z7V4jkeYu6U2R95r1X8QyMD+nAB6X7GkjRZEbx4C09c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Cn6imzeOta2ZQyXbwCt4kFiocEszrio/JG7aKRBDtxt1eABfDGWvE9IKotNg8bTgBAJBn/Ioi82Obh8zxbap2Hm7TbFU6vI2ImnVyxJHf041q5xJjzO3Hr1AZg5x8nk3ZSeBCGz+pwji+Keth6AAsV61DWixr4NXmGAKJ0uvYaRY6CQrLsOAJ0jniy8wEHJ4xir6a/Iw5GutElyKAo57Tos08iEtFRcygYq4lnsXEq93ofq36ZqZYc8howYZTP9a/NZH+29OcjjSOqxkOoJdlpyM6XG9R/cVvNe8rq5Nf55o5ikDILE2LZBJNLoOH9Rco1YphQ955dJMzX8K6Lj3g0InokuUWKsMx1N+nWscrD3bk9zlBC27+cWlj1Jz8CwwICfnSbbC+NRDvv9MdB44x/V947wpOZYU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z8VoJXTjPCIgLnA/e20R5Y0i+rrGZkVodRd8foxNe+8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V+i7LnhlKWYaRxhjiAI4S/jitiX52ax3bRAdj6+J6WrxYhVYpu3WHwJO9Lw0F/fKrauXwrHoHCF1qnpb927rCvEKUie029vtnppdnl1fAy59sYw1AJ/EzZHyOncH7ey4Nbep6s+k/9QHMOYvS/TbEdF6jxyULDXaqLucr2dR6oySn+f52VxJXbXMo5vT/0+jWbVRm72cXm6NC+sbmLMcSChyxoUHLGJqMcDJGidAxk+J2jVffx5X53mJX1zM4beUYcdVvUpxQJDzUNb5xmVD/JXurJpZJ/AHYhFo7O5HZn52xBQtlsxxc799lw4tMDGvCD+OKS47+2WmCuSZDvoEU0OyX/ajv83GlszXrwvpq5tc+6smptFgM+ZcAFIPNuzeO6frNEp1bHY3Vbf0PMwBB/3Km9w7NowI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z8k2ClzR7xwFDonLDPMj1Dp/XP834NjmMdg3xeH1OcE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4o/5lAuZh5IzMhMsWnCaqruOJjdQjobNZWU30eb4undhgjNjlhiS0zx3s4GWsS+8nONsaSP4YN8xxBkQULUDSxp+DehphMb78QCqlnG7gVokKvhfuUqy0Q5V8DtMaWcPpB+ri8MikpG9ccdNKqMafGTr7ki+Wytr45YATsLf099e+gH+QOjlIOJXz4MjzX/Hva4MqSpjSMJDR9+WW1QQP9P6eOkUq/p426J1hgKmxa3AaDr157wBYMJHJ/vZydXq4aymNg61RXzLTm5wPPI0g7YGtyV4qd3Gn0b9E7pP7EiBSJrInCkM7sncNg+7MKlMoCqPjMD8aJUS1d1h3DwNF+IxRZwciV/pQnPIGvmRggo6O4LYErCDalxhmEwdNXbh/mTt7BFIwYujTfN5OSSJ1Abu9ZZhkmSp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z9+zAKQGIvCKcZShaaLbQoKUQRo6M1KqvPihGJ5L87o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iWSWFNpmgcByjZodWi4M6QABFBX7cdp425t990+sMdskuQ4bYxcJoVR3mTOQsZ4/U4ckO8Etrx76GWYYYc7cCkbaHvU8ak0c8sl4Dsd0cDuMNlX0CBv22zX2YEBLiuOwbtWt/r2FWxaF05qspIbJL3h5e/OUfeD+9kxhMsBJkef/vAdrk2PI1+ORfGm+qfM78T3F1Pp2r5WU1YFqUnKo4N6dagLvOvizelTtCgrAdpk0K6oCz+KlGqDvDMIQQu1h4BIOM2I1CSM1vTXZ7ZsjvRu7rFgxpHiayPCCXOGROdL2ySzimhr+e2kb+rEUdr/653b/lrosHRcw+/alDND5GP6aGrEc7wH1VofquhP/q9DZgYcgZjb8A1/p9fTyxzE0mfK+Mulz0SnR+uZs0667Zw+jGg3sXqjP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Z92XBpkSTggAWHiw+T9hjNGxH36SMX4tUdBQkY7ZVXE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j6+5Bz/XCtUTFA6Bb8SP6HWonj65P5JIejooYKuyP+VpQUdmsUd/FPo3SEEIzl+hR2M+klfLk3teV+YFB5fxqHS+ZbY128prWCb6MEmFIpT6KZHUeEPTO85XzB7HiNbL5HavBeaWA6uPr47E9nYT3iMCcKZ1S8XLOF/iDqyqm5oCzHNw2i/g5ruQHtwTX5aAY7bbOKoPiUB9gEsEQ7Epl17xEHbc1eMc1hfITObJuVbY42ghcOCfCBNGGgsDiVVs3GV8pYwTATT0aUh5Sh2fbKXAj1a4C2mJoiE+2v7LMV/LoFDKpc6wzcFHWA08P/A/hz/JWkqWan3vNlszo+1Wlhz7mpGZV6uoZ0fcc5qFriRMJuDz0kLNxXeZ67+5Mff8UxVKLsf0tB2dRqoXMAjYwIoWGfejgeuO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZA4lGh1RSVSs13k7QxTVo7rrDL6UDYPv/4ZoE1h0NQI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RX8M+cYx7RB7OxOSU/19MiDGfl+UZW1uLJBd3i1V34ns3mGQLsZivXO89jM1A2K1i0aDhKmch6lE+O5jGlD8HQuBsdKmaYy7Vo+crkw+IG3H42EUSE/Wlo269R1tzc2UsPt/s+cWd8zWMTExdQKtLFX6/oHQKQaaGyvqx44vZWZLIAv6AVmFpF5DmaHUjQ1PEHPv9uKTUG2Z52pZVT8KEMcrVAJx0NEg5gtbkpQ00IWVHJBICC/UgULIytGpcvGNq8G6yZXW7jYNhYyv4wqKPn+wrIap6JJBQYkmIfPF7j7Vyi15vPxB/t94892tf/QiJv797K3S/MDZ6QcwuaC961mhDuBMicKhie28U9Hf58Oblv8QYEvIJPtLFpmwunB5bXx0j96yaOWI1+S4esWSlwRW//0jLtGP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZAY5VMmxXH4z/+5JngB/K72umgPCAV2nRTyqKCT33Uw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "X6HLttgeLu0fOynoJ1V1kYwQZIVjdQ0t+dFb8a4X7V4B1KlHdy+4DWkgZlWjy2R0hsXzea1t1YkJixOoRXMKr9EasXfvbXi1VdtM5vvEY1exXIbxBl1ts0Qvjl6VZHll0GbDpr+kXM9QC3zmA4oKyBUT/fveakuISudiJyk7k6BCLXAocfNMFLiOCZGxAO/DdfJ/X2hcFu1R9KJBFm/UWlqk9vdo/mkRxSSCYDtO5fx6APX9cq23mT2hsFa0oeMo7+3JqCG4/Vx8hWd7onWwN5Rh+jknHdS+WWaFBZCJfeK9oJdc7Om1nHY6b+g7HH2lwZGcaSD/KYj5wtui98ufxoZvJ3RhaWfcpVQ3SGfGeL/ErinfVFyD30xb7XwWyL0zSkFEu6XPb78k27jQoHMWtacIhVlPT5lC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZC3jiSnqmS5S2FW/SLwsl936DnbuoEu9xhRwl8eC9j0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rBuzmqXMTu2Kcb4WzUXInf+K7/VtBWuoOt69f97uapZe1i/l0Dd3Ri33uNiRm3BPWSI0kXgMP62YxioGIEr1ByQuT4pQqOT3rYVLxC8QOA9oXurJKUSVKwuXCMjLoT3e6MYPL0H+x0DHZZbmvQOLKqpQs7UsZn/GYYDZ5+Fs46n+lCblp6sD2W2uw4c1cVWW/F6ikWhyDOs1LT0TsctWjOrXaoKu2di3tdmYaIaa43yMeN41KrrUvfLEao6J2ExthLhBctaNVfhK86Xl0tquOcRFj2IjwzatWa+TeYlnUhdPWwlXVhC7v5pcag24neVYrLwBjPAXACuVYP1jSjrkCvjLIFzbwvmB5wG6TlELtdh7uBNm86i4okQu/JH5/7pKDAVGnbkvreawhxpg9v6Z2cDc+yPAU+C5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZCo7rmHzMvsR8Asiaqid8qtiGAIPpZBkyYBUPw8phRM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ax9f9BocHzDFzAucFxmpvP5MegXm/Hx7ADRr574ldMTl3uDhZMeIt5Eyy0/DkVa32/ZKYQdDX/11MmIUcTUrNMJMYZdA5wSzEzrPvCEd6yRbiYoDJ94MkJMgm40YSqTHauPHyT2B/IvhuV2ZhivTSd1/TWjh8bfm6jC3IoZYv0mGL/RiKmhXorDWJY5JXDmlDuSHgm+AoNI7sBYoHN56le/+BWucglqBu6dPyqwOpFdEEQCkZOMPnlQOLdgPFpAmMShfkPt2aw2X50GHXSsoY7wRxN4NCwQLcik4kS2Mvv/jrBnf/Y8yOPtwFFbUfAX3EICJ0e04BZvIMwsLgfTbSOaiaJJLnGXjwllFfwdw6WwA/sqeZ8ts2ivnPH7cJIJCaKPcozIKROCa6s0mdqgGZ/OSgv3infTd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZEDahVMsv9BjlEllWwV1tFVcVqZ1kdUP7kXlSifhHNM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mGG4dFriBEoDK4Dv5HeiaSu5IfCgefeCxciGxumtQgRwCSFo7Tv1v9C3/bi3lHqY211+B/jKcmtVZ6/FEwwhu4OrKKizVutU6gtqMLDKx0rESnfTEBoF7x0gAH+MPY0sEqFDkljtrao/T4xQ4LhpaOeUVhSpcvl6MlobkENAmCgy2jiIfrux/oqDkwSDC37zVq6IjHHKjHiCd1Zf1RgcybLE7bTryepmP7k7MlEC+TojENsPzxu2XF9UlJAUeQiUb05UeSmOBzQ5A3ZrPx/SdNZPWOJjcESiVqsGGhaz6mEUq6uL/blqmmEK91bC2MShDmvESlrNJ0ClDiFRBb0dBqg4cS/GY5MOmXEwEWHHRzVn5dVbMffNqlYHSTNrWH6C40R5dDcNVRY9TmPCgqsNntEURkt7KCIG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZF6m8jyS2LHk6wS/QI9A4D5f9E0vTpACtyfbsX//M4w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "g4kUldo01TZdNDVa3exQZakJAYkF7grAT9ZNWUgYmegC9bWP5yZ4bv1ARcPdfT7KObLDQMw7cEF5hTaCltoFlBG0onIi9pksNX8ezYZKMAMcKc9m0TY896Gzx1WSGg4gegPnuFSt9WAeRnr9PyGiW92s0wvwb228CbmSx75Awdx30CoPsnKlk+IxxILZ0WO3b4gxRqg2xL4VDe/zQl+/9/dx8BZ2XyQK8Ue5VjPQsJbRXB2+Xd18PNDDALM367lAy2dQ64DJ77yk9MT3bv5XbC3uWkgos8eXv8guxlCN+aGCc6/ZdIJdnVvsJHsoFhqkQzWNL1WhxhEWA3+kV2pJKHk+LixHzLtVlzKYuxHiWSE0ZgIAbI0/4HvcA7GN7qROdArS+lTQvd91AbzCDF/ekcSmGubOFC4X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZFDT3CxmDfw6q/fBGfDi1Jh0PKMPqp3tQVyYlWo1JAI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xxCC1fn3QTYmfXIxLsQ8P1/WwPF3aETSHYs3lI9Wyk5twwWBwSJplRuPc1BmZKHpPjKYbYzxOfmBoWMK4ZfhWir4xZIrJQAbDoq0aWovLxSvTY2C/xh2MKsGNAwOfmpWRQK1agkr4ngNpiGqpjW7x2Ts8yasNX2nZ7CjYksVqlnWZ9ZMCmI8uEYo7MlxpY9VG9Vftjw51yYoADRpHp5G5oV5vha80UTHS3/OxsKFEaSSlB6i5nqms0vtzbe7n6vrB3rlBvTYSzM+mCyvpJ4jM0XAwS3biOD6p2ZDyZ36nzRb7/Mf2eQglAMBMs2zDMPE5Yaj1RDFXOo74BtZGeZdqZYbZiQl+lcIIJsJQoTt7O48QRBhOw/Q4qjkOsMcG69+TsVLScRZIdYZubViM7EYO/Ni+Cqsrjpu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZHkMHGBiUwYqDD5/D9D3Nd7DVTt9uYoKtd9b2Uobgy8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3E5HJBbH53fDilQuNoKxUuRrxsqdtHwcw9lg0K5Hx0txvx3Nqn3mNqHcqNp9pi1+n70aSmFz8go6anmuWQFQrolnV4r9+e5zc4usJwWAMxhhDJvP1DsS20TZmby2SXpaMluu9sQi4SeXFXyHwxJ/1Xw+AqKUpYOAyScQM7e9vtWSPOhxhz3ANPUl5LNhMwOalSSxJylV81iV/MVNkbPDQnrhUB9PCdZNLxyEycRgvCC321GA/aa0kW0VkbNoIceIJNG5lPUbt1cHqwbLnCtWRNCx+KaFkARQyCLWDcZiJd+GtoeKJIAUiLtRepzUxc8s9OeoU/prHcV8h7T83GNTkXrEFqmRznPiDu6OTeeaJRgzF/zTrVeakABNrcVGuvg1QG23rt8HshqN0Uu8kbgrI7AqlsU++Bnd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZHyXS42SEM1Qb7hYCId+PUuoT8OaLeeK1PP9aG8z6jk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FN+niJkCYBz/H0u+9a7Ja2dPM6sHUkWij86rYKNbKqryoVGG9XtEtFPwBnCwXgA/5d56HUHvwqHSaun5p6B6o/Y8olfJ+MyLQRkZ45j/YYfSlUCKn+B9K67CmCt0F1csrHkAzhUFnmDzNwyvHtDdvXCMCpcCPbIWI3cphvBDN5PzsYkzLJBUL3WCJ685KC58oGfHyQW8zG+IuIpJqEydNYNewG2bepKnLMXSeZOo7tMfVSw9f/vYi1jvZvGK6ik8gJJgDR10GqLi1l+LCFJK4R2HvROuTRdU4JGzCfKJJbCLro/kProMg64afhDboZpa7GB+dAxCA9bfIUxPVsCO+s0dAy2DHKaUGsUfml455oW+2s9H+YqSunuy7ckYDf6IPzseaukLeA20idNLWiF64p3tMh9nTiGd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZIaG3cGFxYNzwtiE8yhfHTOH0liaj7GcY+LbhIuwJPw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9n2AG530t22CvA7zr8QaXZq1Arg/+vkiiHU1pIcteib4Rz4RYdxHeuig5FPKkmbfTbVNkNkyCCSDZVlVPgZvdgeyDKQIVLRSPrQe5ph154lid2v8FzbPUJbndGNBY2w3f16X8Ygs/wgF/LDn9lK7CvOY6S3knTK/BcbQb7y2OL5E420ewFwM9IC21rXJTUKM6w25PPN4BGLyCYjRbqs4so6cDYpyxrx4mM1hUZHW4M27yNuzf8r1ONaNMHiigQQPBi/GLyStDMD7gxWzskFAA5d5z6HXbl4/gDVp8Ywr8yRiNgnZzKFiIAiZt+nJ9dovHH4kpc2xUGHXuyIbzptE1Sq+sKp6MyvvdmW976S7joU0xhQIgaDmZJsQrSFTh39NGfSoDzBKRvtrvzgK3dlRLv7bA/JPY45A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZN8aKsC84q1D3CWbkMnEtv/WtrCdtnkXKD4ft2xJdaU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q8bTcg0hZHVslvtIv9TCy94lViLuV2kurbPwYiNAAXdUC7uja+7wFR6+/jVJuDnyjEfLw+eZqbF5WiHIe8pTtgZAf27PnMQ7K/xcn0sAtoUt2UTib+czHnv02dSkXS1j/VBGWhXLtLXUxFNbGpo3r7yOwAyd1ijf5MXjQh09b2Bz5Vn+IadwNNKarp3m1opCuMSzEqm8WRlno/AFcAIEIktjooIi4BFjd5aSEjcgNB3J6b6KvYzMA4txGKQHDWHjLctrWbdmqzvEM7SHygx1V3Of6X+cbHEWIpN2QpszUVDpiW2DApe3M300kzbDaY9hPi7y5ogcegukt7TIYuwT+++KhUGnt7b5AMqRSN7TIZD6x3M/DaX3+Y1NT+ftBl+DeOBlFi/x19nPhJscYrGdnHF1ja+EaSPT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZNCuYoAT8B4c0fQHSzqEJaWjtqMX8KureKbCFel9664", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CmawYrCf4WZ2J0+tNziymdcsYtn9mmV+gLa98gnVoUVe1lRb173hjcRZSXGwY62ZcZd2sQNXlDelIuRluEGf2DB5fSwBYRyAEJyZ4iGKvy40GEVqMgKE6M6kH7VaFi73XOOwZv1UC5zy+9mpKucnwpI/DEd8HRwJMO7pd85q0ctd/OhKPR3YikuyUxUSWxxBePztOeVaBlT5PMHOq8OSjyvNwf7yqYFP3QcUCuwGF7qp1XePTlEmRoe76GgI3upGUoSdTti1ibO+upfUlfbsvLEed53jgSlM72oZDVXcnhbq9mlxz9A/fi5inXxBFx7Sf2e/S7ojAE3AB5rnvxHG16NBHAx53pDLAeGrZzsZi7BlFPAL5WS/tjSTZYKdXIj8kho4ONPyvLYXgQNLgcNZ1jFOSUXHjTnL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZOJLjWt/JBPIYxvdiQEld+CdBYRFw4xuImD9GFu0HcQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9y5JLuHUE4tRBinvASg3AHfRT0AjitAVF+I29H0buI8ku4+DgU6CDq3bsURoLw3qmQL0rPU2NgR2ux4uY5+WWpWlz+lZ+tIhmQhvJKjFwq3MD0HuN/njmAbNpR1aZ4ECNZlNoGJ/QV3SVXrw55/guWJsciJGle2r+j/Cin5cNLD8qqdx0Ae/FnhnWZXF/tBH7foBFspdsrLb6iQ8F6jJ/TVZd+RNPXISUJ5/xI/kkDNIb4LhTcOaOsggsWiDPxk+7ZLge7CqOCqgRSVJOo8/pUy248+qxW7jRGqkBgTXCXJuwjRh6ngZqqbLA9rZe/JIU2A+9cSxGwY5eDdqB/Bk6wYrgGVOnIpQabBlRGJ/I7Cvl0zlc7oQC9dHzU7zBLmJ1RWSrtgy/zXXWBVOrlkK05q1pMKXvYcu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZR+DjGF5lb2yyGsYNMOcFm7Q0RjbUCpFvfcYCgjjrR0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7unaAUpu7phqWTStLrz3ulUf5gsv7ghn22ihwuLukJRViWr7P1qEuh/9c5900w5d81kXooV2yxvZi7icE75FKGTaltmQG//a2JyQZctWvGWgQVFKjEI+dxPYCMh9UPw5QmubvpHUDj6ie8yIcVkxsVpwU94xQN+jrBqvRWB9CilvXEk0HmEtYXq0MzhgrBkvhnzywcRytr+43I50TYgUTqWZkVQhFjvOBGswNXtNUop3Q03/0zSAQ8bjdPJPKxsarmyLOXYEJuNwUNofZXcEN8hGWrQ5rhfOyGOpuxYgjy3BgeH4dVr2NoMTLLGIXHsZY4fanFBakUGHceYMGQRPj/5JYZyQC2oDxTUeH4oTa/dLupMqatV8AP2LbXkvDFpbXsFUH9qN5KSWXX+YlTJRyIKl8T+SvM1M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZSLm063FDzwIrj2XG32omy3fM6QJUUpzFlNxyh3ghaY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OioeHdq5r5dGOmUL8z8qB7z5XWJ20D/qst/9FezewXidY6pb+JuNtCM5WUFBs1J+YqSPAUqJkzB2hL3hhQjqAtjJTwwDYvAqtmL4vwtX4+1eG2r4PSafZNUiMIcqSzF0hMsOn3HpzzU6PJOp1UPFcrjV0xB02+PWf17NwOdcerz72XgnrsA7f6CGM6c7TtsvgxB60fAQcfoKP4uBUiPzoWWbb3AWSKmYZdZ+9/KisVY0b6JiGGbcWGXzKdqDRxHLGW4+HlZqgFxHstmzlTC/g4ekMp/zNRUvShbLG0caAj0BeguwWO29l+pw/cW7FxbfXed/XGnA7XSig06/957IYK+TzOdW026GMD67sw2w9O+IJ3Y7i3+BhESdPwqs6sSPHKgee93jkBU2zrrpha3Xvj5bFbgmZuE+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZT84S5uIx0IuDzWeOAJnpRmIDYMO/QDRct6I+QryxBc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tHalKipa/qa/oAaZxRbLPoYoeEVfOIzS+14TBvKO/POSJyMFcRKFlq6DX1vQMSyv0eDX0X6cUg+2e9j3Rm5BHaa9C86Kz+QMacSDreOHXa8QaPpiW9CAtc6yxbSiKKeYgqc9mWhZzOZjqVGbqn8B/kf7uPuY7057xldcxhAs7NpQjB33eUYvLGucq9pUTrturWUYGZkIIaDBuB/FrZ0VenEJc3vJe1dRKYrDOk4WN7RYJ9bvtGZSNZoZqOAt1S/8krDevweKsN9nYcv4xK5bEe1JCxItrG2BhaXk4RZnTKaJRGmE+wZXrCKPK8DfSAkbv/J46Q7rhvBLWwLBR2nXYMiMyx3zvuQGWQPB65Dr/9HavMiJruXHU0ZyvJbr+Rs0JH/DgY2inY6jhjZngmwoOFKNPx/kNITo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZUmQ/I+WZqV5pIkRLUGqpiG1ZGNMKtvMAZrsYsoTy0o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KXM11to8UOYFPl6OTn8uYBMAap0+zzdQP1j8FgwlHBxUK9JABHuJcYuh8A6FcnCnSzjOeq59fy8nx87I9baHsQMxy/sCr2XW91Gx8SMkmSB05fXZeniBZIjnLvkY4meCjApDDx5hGJUVapKdUOcl0ibz+TD91/Tfw5+fD89xRZIaFbZWRebKlHbdGJpbLe7Xz+L0sgnqMLCPk3sZ6dFsXQdrcRYNkzw/rIK7IjNKxHLJd6W9Y2MdD61MD9HEPBWijzHFZ6IBUqP8OrYpuJ+32fg1N2lwxf9jCpjn81fvfQnFwjCan8p2fA923glM910P8Lt1G0B6Jr7+pqUGKfmI0db8noJoR8MRKHp//pIqQiMvV1ytR+qZ8R6ebyveX10FNPD5HaQrxjS8xhMYTpDBWKOA7CqAmG97", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZXhRVfK0f8me9IDEOEpyAnWyLIeHuaBCH5FxqAq00BA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1U4WO9U8fXod+JMpovk5J79dbm1dS4sVZPNzMGFNkFZcdcbhkvYzE14EOkKpoTKhBMT6mq8rJdIbtuUMkHr43I5sNvb/S/b/1BDEYaZZ2xWGGvgV00Z8yd8P5F9ZH9hkqSoKdONmu79IOfRh5+nVDFFp6IUUlpSEzDUSOhNmOzliNLYh1/xjnbTZbnrtTHT1OmKT5mbf1J2tcWYypiR+eVhFbgRrOJg/pKl9MKaICu0Mfz+dxGTLhvzYBRB8ptWnEXLbsquzlHVrQ8XTltrCLMJMJ5xRsHI96Xu8XXXsGP9+TKb3z6rJhsI9sxGWXeiYIPmoHkV19cl6UMj4Ffu4f94Ny3duXDUuXvTFNsVtpZsWLHfBTQyO1Jigeyt3ZNA2N2LYctw+XY2kYTeKQAxJ8vZCj+LRLmjk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZYfleLdkQXMkv++gMf+XkeDIlH3ap/+pksGY8iQulro", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+TLeyFvYPvRPPbHU2boKrPb2cmxSUDDLqMoCLPF541tqYMAKXA2L0juYQJYYZJdBosPIHqcZ6PUhoWD5L2NQUxX+Dir5S27JD1FlOaQG2sCmtgAbS/qXQ03w9cnpXCF/jleYWAf2GE8np8kfK75JwKErukIwK3MZbCwSBEsnaWTjATRnpnyhe6n9LTPsBjwsB4uwNnDEPIzXc/ye6iYNAlbph1VZ8PvOe1fq8D5Qv2/oJPCXSTAn2n7xCpVJnEfAlY5D+lXifd+Gl2ATuj64N9KbUKnhp/Bg8RZYjOdBlLUEncH8Jq8dFx+TbTHdj0v2Uz/8oQEtSiQ5wAVndive9ZQ0VB9nsoE4v4Ug/LsAgJzZWHuKZ0kjlNSUbci0pvBQNZJlB7esS/EKLV36iigQ2CHwVOyJQBNQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZYxNBtfQY4qs2+GBip/w9XpwE9poi3fOJeJwJViXPjU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WTsOr0h9pb9iNBg816XnwMfhJHSiilIv/HCIFAwtOegouHfgsiZ5Tt2f27gLPkybFBlOkcNilFZi4NydS75yxjYuJ7Fpmx4gL5JvVnY5E2yUjukAnyqch+Cjj6Y5DRTYafIkcKqbMhMMyv7nn+yB//bzld30kSxGPpSYXY0wZX/uJTKPf2FWMT4+zCIelvEIrwH6YPeNjJV2ljD6KFHS+/i1CP6FxsZD+rfMCSXtSr79C0UgVS8CVFzVUjlLrtglPDhROz6yba17AWplh2UjfhbdAzpBYZD9cLfPTc+Pj7wwilkAgueCDaV7/A0cBYYeGtMTUK9U/YDuCC0LzGZb5HL8R1h2wu+9fW66hluRibj8hb/eb7R23SLdNNsVwvdgA/a2hbSFDRDm5kBO9Tsh9pbIedZgIj3V", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZYz9rUasEeA7TN34l0iTzcAf1C6hGdr5K4p247AchHc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IqlAIAfwfUo7p+Pnx/UqrwgJUHvp6awTc7430AGmFM7UXFJZojBqFAB8cwUl6sBAz9ca/xpfC7YLLzEg9nH6hVy2IHJMWOGaMGV+a/CFgG4idlNtMpgDH25tOf02CBS5GpyYOOyiA+7X4fdrKlR2ctQi+bmbc3ri9lnrtH354jKEzCvgCro3s5vopcMVGCVlmdrWZkR9lOTQaVZIVmQWxvz2ZlfEZb3lT24S+3Du+gKCjURsdB8WrzYPcNUM7BrF4JPK3d4VvlqpfCG96hSoLW2BIY8P9bcEixh9sCf6VlXlbAfuQ35pIvcXERecZi4CXeSKFlMLWFFfspe5DYI1jx+eNmtPkE0sEosOjPhGCBwGnvu+1XBoZZJhsfNmGWZGjXaNuOLMxWRUKEGmqX9AqbeRgE2Trrlb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZaizITUK3fy/1L2hGG8L9/mL7Kc30p5kyZpuMoijar8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DmzEE6PMiUqn9xMV+NKhgKmTswfOJXDa+tDmcH7jIplQc4wHSOToSB+vI2qyygppAKQmMUr3LUvalvI7L11L6gIm+jFgkFS3Zxdo+Rvv/h1uaPLIa2KyvSH3nxRt9n3Nm6tJJ/fFkRoDtLWSZMN4eJnZQ7F6i8iOds6rURBow4mJQlgsgy6YRoLvdZLx/psRd7GzXn7rlcX6spSEX6eG9AfIm17CXpPfJn3M7MTu9OlS9a5aRUl1mGl7tlZgMwlqpVe7TogVS0wuBLfK8z4hoWwrl94tEvz2HZ1CCGJgW8VQnls+he3bWqxrgLMD3FyGDXDFeYDD6JA6MjwOyii/O9iznSmbm+J31bJgoSEbXV8c72sTgOaL6fNQTkNeP/HcvjUDBJxXq1KFEKxHsCYtHbKcJoVn9VJ0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZaltT6XZcggak5YadcUKKg5od10pcBUag3hnlmDCILA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iKnY8xSeAS8XuBM8Hy0ozT/9qxsLpTzSVJDb7cJFzkvyf+9QL4krG85u5d6DwRYX5Ht9zYC7n1wVT0lHkICIxcteWkyv3FdvFy8yKrBPKJeGu+QIbFp7JLHYgTXAg5/Beprwd7Ya8y2Y8xtvt+adH4fj+lTNxk/X0nc4cI6iTX0npyfY/Ci5iCjIoPWtp/8e8KfVgxLd7CsXCtdpltzvg/OxbmLHUAkW5xz3Hv+ycGuLUP+wJ243lEQqOoai5Fo2lCuci05tBdr5r8HBYQc2f++WJN5KPGlZQbL8bVDqwRCz/NP+VFwxLNf/R662CYGVeWT2m64XWOvEgUpMgWZR+9MDpG+U8FkUzEMHQU/3dUj2j214IWewiSn4stmb6pNJJvUFTak/59PDM3PPQDmEzSSvjQPR7s+E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Zb9qnp+PSrX8T7HT6Bm4iZXWMhKm+KRCkYD+udLgMoE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GTlM/SeObhgMjCqbyHYAv6ts9kQCeU3z5NwEbIWO0iBRiIotpxOnAUuigiDEDE4i97F1byzLPLCcJyTBt71lszF8aK6BykoYL+iGvvTMfDhoF2WvMBQkEkuSbpFZLijKn3Cv8gxr47FbLS8I8rl5XvvLv5oood9rPHqmsXgfz8a8rlH5IvWF56HlYs8+JprH8X2u/GV6yTKYLG9LHwz3mezUcMDoKEwN5772wSEBwpKd4SI9GdQ3Fx3m/IWL+DpzTsaYTUNHgTY74lWto74eyF6qMUfMrT5iZsd2oCywv9w0SDbRtTRpNAv00h+r/IlMrxnuNCczl/VezYTnSxGUohcXQwAq4uz91yTkK+wHhfzr4pcfiZKOus8Ta6FMKrHrX63NV0g1kEdPa8OXzQXQmXJj8SIeQjcO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZcEaMuDvUQSodGpds8zNBjjqSmLnjrArGVQJd42ETXs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hJ+RMXYXD3tG+oK3iKZ36VumkXPOhYVzRhRnBU4+RtW5MOb4r58OGfL+EjGIw1Jy9zohsjdtGFIb6UpHuf9jvwyAm/aMsgWXdY3F/7wXXCpOOdUy7/eNqywdPHVLgqWhljbabJtXJj6JyAhb1dkflf1Ye3HTcnQNoLNQtqJ1xSMfmg6ixtpLXdhofLXQcz2cZOr2+cLH1BgIaUV7oevr+ABJmfB/H9k6hNsLoxw4DVuIJXr8M6+szSISvzF9v4dFT+vYDv63nsKy6MBQMWfHhW3n8U8fRANCTan5qAfGE0Wcqikt+5X/gY2kXIiK4w2JitmFShEKkdEzqgr8s8a8Ijgulgf9ZHuwqnCh9YWhoLutIFY/5HFCkmdesk9VtYapMmVLw5UEOwKWJq+kq9FD9qva/h/uPsXf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZdeDh+OOkYspFsrbiJsoiGnfEiJ8jxlw8Q36qLFY8nQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E/ZW+7elk2x1cRwye1HStSzc2MCQijoM1ceckBivmZFfIQm+jYPd1+HQeG2sM+FwkOqHP/GxXPv1d5g3whc06rHhgIpj06+6KAoVAr/HnFo6Tn2XneLBoDXkGB9K+1zkt5d+TKoKmBlVelRwNCoqU42a7WYYdU5jCWgSeTGrYwslnOP8kZMgpQXFO0xq5SVaqdi5oSpF9VCFBAVGSh1AohBAzZm/Mmj5MY6dNA9bF5Zh2rFdyVuGoggZJaVFicax9a3j2963Vi+QwXNbsnM3djj9QH/sWYx/kgDDMWc+/uVWUgim4I4DprUCV4pq98qbSrnoXbGkGoRZNHd5IrCDfe6iN7JSbXii4O2S0R248DTjLyM1uq8DNXwX1KCg2OF8SU3xyfTbXD9SF2g7whiNj+/DsskGdwXP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZgLx0blp1BfTG9aJBvy1U4H1RWdVLnGlwF4fxVKYF2M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pcqXCtMabtOUc4hbCmzCtQ6hPkisf+HBG2IvYUrgyuin39PnyjkMNyX9ig9gDQ/9X2YjllK1mFLF/X/WNgPBTleJ6Z5blR2RnXRVe69JgQboiu8nV7mXCd+R2083gFBcxI+oiPhi26sZ7lJsMGHI7bxuddSCeJKrqlTKX6VRxWhlZ1wNI0yS/Yxzhiq9BYH4E5y2NkN6ApQYmr1G7wmabZoGNkzF1OBzKRgJXYJp1tZs85ffi1aD1FtU9/JduDxTTd7UlPOW2jzA/SCbr9kKh+zNgoqYeyu5e0y2Gjt7NCY1EZ8gvfveOQqo4n5nk+slZmcg7GIRiQZYoPoedWF76crMswBGyM1TrQtgLuWwqgeCXwWMe3ReQ5L5bPxCAO3iHSZafQjGZgLBdiEIOfAwOP7vZbFQPZrN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZhJslY2wOvxanBPxCTAfNjr3p0SXfmKqUbcEUbTWrAY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pfbcqh0mn1ZthWa9XFZV5rR/9VbQKOSlRSrc9XeHNDOQe649JzLJ/FeX4hVwi4T81IHW+GuLdwNVaVlpph2SsXfQAMkUAYgWypDCBxACMuN0uCk+sdMpG6Yw6ZF7PkSZsdOZoKMKXHzGd1Dqddp0ZtBtcuSG8hAgTZcZWxj5T+yOOCDy+/wxWPCtHtPD+jc6hSJx6FYnTSkZva7uFJLOlGwh5BTc5ikD0ODi4UyH20yunpyCobaWdgr0lbd5BMg/aQIeJdfSk2yZRwRCQo8qxKqJ0gMItHDiSsyBFNyhWlfdXaHFyourn/Mn4o+5OURRLt7nO8FGA8tXHXdH9WgAhDp39dWFpQbf5SBpcBp2XX7x+khpajSDRqyXi0EiZyplb76w0dsUB185oPAIvcPXP1v41xTjw2kK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZiNgsRV2PAixyZYhj/PVr6j/K3T0pmPTB2velD77Gsw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oM3d3f5oLraUDay8IK9zdQYkQESMUAjFev0w6kqP8ucFIcZYOXGfxw6YXF7zpFXbmm58Xc3/6DkhBJdb94F/bRfWilIJJkLkCHNMTAZd4RHet0NMGeg/XGSM86dgkoAy57WtRVXIVwWLwkFik/m9FofkIBEGlVWcAvLSHdLulyVzuDBPj8/deSrLOVi0Xp3MeB3J2CqXvrm1e4tjb2sDreK9vOxa5yiCX1Tz7bIMDbQiL6eg8dwyMQViwdvULaRtizE6Fik13SXbBhJQbKwpjwivwHBn+KxXNT3zO5mrNA2tn+XgJzn7MKu2vkMP2fadMzbcqUJes6CgoejSxg+OFFB9LG6BhtFuHtkqECW5OdiAnJiTDJDcnzv41PGX9vt883oWcHnxdczSr4+GrVCh3Z0BLUboYJtn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZiRsWcM7gRrxcfqKidUhAKri+TKg9ortpKZGYTUuf0Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "03H9EAmNIyJ6aZIaxdBR03OsJ48YX2sUt9wyM3VAxdwD6DOjbmFoToZpK1OUQeSTtkBsO1vW0ENnJfwbGskMQ0JS6zfwqE0QoPiWDKAW6xWpgW0Pl8GxN0RAcflLSFIfS0lLtrKvyLugH8MgHuFGtuWLOBvrvu+KH7764QQPtt1th94XoBnoHHU4F62W5Xa2Dm77UW42ytZzu819XI+9S7bfwwQhkQYjVHiVKJtSlzKun9qRDUgtyCn//GKNX+esZmJwlWX3RffLVQPWol3PYY1R0uWYtXRvAr8nRy5xRS+kw8MHAft9JIxcX08S6afh6x8RUaQEnt5QZv7LqIF+0m2ZJw1awLqyxdDKmbe39Q41woDk8Mw+PlCFH1xXQB6g3HwJAMkrS8PR2GG5NTRV9YoaehjXA20x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZikAuihKfI6KLGzqevvPDz0WeiaFop36Ypj8beY6Iog", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GON+HJ7jzCFKLQ/P8xFdXBt25+J5WVQ3iGUTJdgL3WNJahQZZknPwsaJyNasPjqIRCXsfXMoxZ4WYvwLN0aRYaNSc3UemJD9RqEpDrZfoRENqgOZdSfMkMcWd1MtUL9g1R7rb2C3nbvJHQFwzNxACFmkHMXYY2R2ZR/hcHyu9q+SH0SxQSltprpSe18gvnCAQ1P6cjuoID3j4TnwuBoPAp/dveaTh4q3+ADWF5g5G6+XHgebgGu/tO286v6WpGCQK0xYUwiljd34siIW/eBo3enlAbt2NMyF/ZfxuwTPCPO5qEGzT/JQGX1gvafJruaYU/hCDcoqnD3SpGqT+4GPt5JP8/Dyeku7pMPMoZtaXwSrPiACoy9l89655+N62J3qd3dm8f5lM24zOBEoK+iuJ9+s3MZSt/Ak", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Zk8xnU7+BqVzdMPM0goqKnELvrf2wsNx5RzHvhLJcgU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t6EIF5pVozUpWgY46EHfQxfKUPgfr2JYZFc4dVuQmUw5qY5Jtm8K5XXZzDdXxp7XCFPj2CgakZT6MNgPxKD/CSikntW3PqoQZ9cr/v8BfGY7m/ptkKDQBfKle61iR8SKV2kfAfCJlCcC0FreHeIH6fYob3EsLln0QSbr8CLMWFWmErcgzR9I87AQr0BHX8QPIEVolUt/YN63+JapL+JS9H43wS6IdNewt9grnNQ/UkGUgwJ3sR7D+e3Zk6aUh9Ih50PmYAAwe1wg6CKM1u7oq9gb/HRvq7kXIFi/bkvC67WvsCCKjcVGcaHOoRe7/qp9J6rv1Mc2+D7tnREU52oInU8LWn8ZTtTnErG7oroKIsmWkZzMCpKQL13OJ+Z3hakogNSrpc5J3O+R+qdfC06FgwcvXc4bxRXC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZkM8J2/yYzU7LEmZVmbjf0bDYmES3uUo1X6eoSIWxf4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yM26F8TrbFU2S7lIODviOYbdB7Qe9NOBIrfUi7a4RwhIjCtVvd+BDEcJ6YOUybHmlo97uRkciqyoRKWu1K+RkSujbdh0Lz5hiQrj78sGCSGjDBPzwmYDU14m9MUgbd1CFKs0a28AnsLD1QfPryT7hooALGrNdxwd7c0o8hPwfKqI9GDx5E1omK8QrUPg1zslUcGa1JcbAtsWSWEqUWErnPIjGAh1TICEOHkqpzA1k7SSFeu3IWV9JKR7s1FFk3buWpm0pKav7tZhFLR3ZQ/jeTMNaAmzXOuTXUoedGTdsIBsAIjYSWAN/2p0b2ZxtN1QBHDsz7gul+o9fGtTkLm7y0hXLu2JMYyR1FQlltekqX9zovQE2Y8d6dvENiPTUaz5l9/2v6OR2h/bBWnMDz0ADqJnck6h20F0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZkTCoddiCuE8ToBbe8AfUdOIzZFafoFVWD7yoBc0WJQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kkYVnpK8ePBGoD9FYH3LOnpZonEwCBikT+Nzy1h56yOVEgJb6QjdG9/YEwHJ8vv1177s2DhBzS08DVS5qjAE/LSzw39SlTNQmHz67KR2h59Y7uAcmNkwbRLwgeS9l9J2PsE/RFA8HKmYrDdkry92g8YGijCKvee9EaPGmQLREA6RQGduziWUL4iLFYqtr8zITuUOi6gZCVtKQLiLccNYK4ea/AeGRATPg1lM7jQ4dVJ0+46Et1vq8OJtr0GXL1Y4lP2GphRK/+nGeWlYTZMqbeBbKnEvmFFjhVdfZCbJ3L1yUqoeATTx+7Fc+fc0WnGRgoj6jHS9ZjW5PHv9bAHT8dMA1CWKQ7eOaGJJB38WfjlSkSeZXNxynjeYT+nUQHi9csRmTDpkcHMWu8PxbTo0QzCJVPgJu3B4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZktyvUYkZ5LnDtVBdBTwh4/QiUCQWb0wHs0i2vTu1UE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "n9OTJ3aZQ5jK1/6QDn4POziq06E5HU1/NKnOwmx1royi4TrgsIuqahso88+9AvojtbXa91l1lJsx5kSlNiY5nv15s9WtuXPnzMAZk7VHs5EFNGa2TIWi8TvWZ6VoGm0vvxAL8MXjD3/BkToXIvrvRYzPaNWY4bwXnRAquiiVNj70nadRhybQR+6GxhyhAC1Yginfq71xFjqqAyTJToaEFikFjNKkrDFda2c03OpRu6ZohuiIdJ+cTNEoVoZBXsFNNMu62qmje6huuVSyHpQL7SR+wUQZVjWK4RYpC/h+BFAZwEcCaR2296W4Akluy6+UUEPKs9Q+D8zKzBJpDrNFofLQyeRy+bjMx9Uw+lneO45aG5aDe8S7zYN86xVY02p3/nKGyJ3ziZkpaOs3SVNS5I2P19N6ni2f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZnUDGH9VIlOtK5P77LQ5u/m+N4lLSZ8BNeGqDC0gPLY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F3CqbrYP43ZWIsAe4IsYCjfveZBfGIPgUJv5bluw3xr6WaKh44YUTVhDdSIWXdtFOTJ4YT2ObaEl6IoYuDnSXR13WHcTJolW74UzyiVBw9sidWZj2yaDl1HRuUBw3Z5MzwNjDldGPwLjzW5kvNhq/It7Y9r6LnJHxq2RcEMal5umDKIWOOwsMzDS5hC7FuFUDX/gLer7aUsumTGPN6xS58szvzr1A43R1w9vThV5jpCu2nuJu3+29xtJ0EzE+tCQjRbqCLsOuctpDGzTrLA5DSeCwFJ9nuA5S6xcuK/+7yZOMZtIN72WR0Oaqdw+5GcuD07qzSv9ezvOLlKIni76d+RTwtZFsaH3FBYhZ9SNqH4p5vyUmDvB/R0tS8utPynfpOapqDTlFGS1y8EetkbbyesWTZqQv4Kd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZoUaNW546/CGYqkktfWYTIN6C0jKg1ItAZ26qrAbaTo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SKR9fUHf+w//3nOHYJ2aCVGMpLtfJTi8qLWri3ZmLiSVRjnUhSQGa2mXT2YI4h818DL5qucQ4vt+q2KD9jWVaNI8Gco00TQZuDaogGgM/pNIW7JSMZQOtQVqZ0apJQ4/cjEl0m6dyzSL42IhN46QQm2kMZLjWRGoJxsxiddVxEva7slygHQNHNnpGFIXAfD9MOZgnMKMAOnehFaNXxDzMlek22AqmJF7rMw1vBmo/sgsnByhVKfpBoO9aHqV9cnvEAy5CoYQ5XKzYKa7NACtmo72pAWHkOx/iVBoeCqJOvcDnDe8wYkjVpBMLCu8rEPTNh7jX0149xPmvscCX+/aCWb+xBICG/U4vhj4sKLvcrhL9W/raGWD3ywU2LFjLtuGQ00xVPZeaBSixrzpJhT+6egqGcmQyRKm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZovYPzUJiiFS3lzS3Zr2aQorTtmkmpzE/jIgUHMX3vQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "I8Sm734GhjFTw+tU6vL4wu0Ihx17nlP7j6XXiv4SBEtAf/e3slJQHcHxtYHOd1Tb9n+Os6QKlTPOozYVnQNfQRYlkpjXOfP6w4J5g5rmv7aMh8as1igElfgfK+J7wNwph5SYqps7yMiw/VfpXFfkbcEDgufkACfORbNl2mOUSLbLMAiol3susmTPJ6VUjmFDKzLs87DKp9tVQzicoSEs8rDEP8EsLqxiY4y4YsxZpP8J2VSCEZUaar92a0DrqXPkGKsvhQR7J22FuzVFG84B6MdtZhSIiWl0BTZHyovBZwfyvHdpN1De7+U9FUTvqjz40Dk5DQSRGK8pupyRbytIl62PDsvgWfqdlf9iQvYkFG++cwJkdpVHSPa+OvvEj29//jja8mFg8hklbaOfVE1ZDjWPkzp7QUxv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Zpbhnj1u9fHufNg6OFNquc+6HlubBZ0pZMhxurn5Xak", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fHilObuPHpg42cJHl/HzvECXNUGaFiBIwejhB0/fc6UngCa/hXIeGsdEiQkhJxLSBQho5fNecp8hcSjrDTGYtLajYx0eaI4NnUHHYXGstWJRmwXjYnrp+Nb4xlAsBSqmA7WJ9qLxKPJ7RjKYPaVcfLF3S6sYNOUySDnj+mXdN6NAODio3o54dAZHNGT+BREYIgQf77CjkpmwBgAaxdTz05OqthsaNrxhD3jufW0aR3Ibvt94wvoNg5uurrCx/j+lmA0AadaxTTCZBjo//FHmaBbpJHT7q+YykJvNVn2UspzF3pq+cZJBA9w1Jp10BgWSYeGl3RBtGIcXPaLg+8tAs5BiVyga7EbFgZQXcxbKhmCI9J/jbQgpObGrB/UxbtlY4jiUdK6U//wt+cVLHnC5a7Mw1p00CBW0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Zrcf2fpaoI7c8jg+R9Yt2hhAkVfxZutN0u/4SvfL6+4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+WYB8zdrnf2P6YUmdPqIPZZZh1YTW/SBl6PExD87VgYr33Etfe59mal/3DQBifWGCXStHR2LVB4+sRpqWKo81Wuc4YE87doXU0KThL5ha79cMAcBD66gQtUH/NXOifKjPbYCXPG4/FfeBMvvYle+ybM5AZeFeB53W9lAoRONQTHQd6PYoXWsPV8P/bwoYsJmVrPIWTb0QCxMaMSrJ8pQ16u0ex15SR4CNQiX4z75LAItPdZywBJCO28o9CL354KuoCxoBgLSYGOBIBH2sxUWdr9npA1quZRrAutlf+z0Ge+Df3dzjyzvBsbQyMG9NQqU1SgSGaFsUKWwFSMchqEP3UU4j5COXaT6MNz33blfeiZa6vqS1ffHp3vLOh/RKqJPaShtF395U8GepFkvjrbh9/H3m0tba/ON", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Zrd8TRqENEzi29+nGSNZ7QJ0xu1Ugmeh5xhqXWTUI3Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mF8sviGnRwZnSOV17LUWuXheLjsvec2rowiV6gELJsY9l2eCDx8/57fDUqcqb4TO6V9DYJ8ktUlnUqPwpkGsTioG3IsF9yR5fyFoWRbQy5QY69Y3FZesY7qkY3HpxgsrTNDGt2zntOUmFjtxcN3udaFhqV9ERl4VwLje7pSpiJJCKOfyvSJrZJAzvgGvNdpjg4zuzVyYp9OlOk+vlKQGRG3szczC+0CdPjcmVp8zJvfRRsg2uQZzTkPJJd1/3qm9Hhc+l1rE6umrWvJRvwnkohnOduvu4VGlIhHQeNyMjQgx9W5CI/BUPdfjgnnhTBhufl5kVlERZmNcVbwriYfPAUSEwnTflcpWYLAZ5fN7M8KZyFapn+ecwMO98fBbg0eBKIIEbqSXM+vT/eM0QhWVcIHwoMpxA76I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZrlxXr6P1ITwmmPTUktM0XgXvVBh9/kMoKDn/Khkcgo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RG/hQTuYBC7BIcC24JBr1MQc9kM/iYs+S6z/Ph/KL9j1rS58sokl0g/FbY+lQfzoIT/9IvLFkmRIg8hDyP3RiIlLmty1v5e22Nm3hsZHhANpAIJUGHrkPXfnVBGZZ9+C7J/YfpXDSa8EZUHm0+TPW+XBR0fah7NQsB8xG2NIPrPyVltZB45kgW70Ilto2tqbfSX5CWdjoOyiCE8RoEqeB+W1gxSYmqyJiY1O0H3rZAH8u2WHNE6gIJnACxkq/XedMcRqs9Hs+kBuEwzyREvmuFkarIrj6yS0BBzYHKappq/pWi5xGLP/lecdRd6RkUpjDP40SZEFxAWU745WYgQuDT+El9Z0xrkA/PaKZ39n7EMHtLei8yUKtMsU7v1EJmD2yjboyYPpSsBmK4rYa0XEqkpXoR3nU+HC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZsAglckSk/dkhHakKevLYboQhB3CTLqm700y2Ue3pmg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0nRQg+PsfNQBKdAwyvWnJBhme/q90jGpTPnP3gRurD0JMuIR3fsOgJJ8AWJ5dp84CO8WZUbxcwd/SQooWH4B0G4a0rVinEsrAkhRnyuwQ2I4gxLfqOl84nhicMOO9i67myUyNO62NYgXvdwr3AawwXR4qR7L/sVaWV8S8wvHZpo1kDB57i354qmq5feYmgIu6IZ2yrMBVEXfMLm+D/aFgUJzHgzVEh3tZgypS0CmRYWy4LjCh2a1sIgm/LIdyUstDM8xuWY+n1XdCusrQEUpYZh7s5sVYDGZTJIb0NR7U/YlrvX4l3autcnBVE8k9JfSBU32Oimc7LD9zcvq5A1mj0P1MRwjfVfF2b5sn10nGSN09pnlVkW/M8FLDEHw2mQHGUxK+px5LsV7S8/ZLM7me2RlEuC1y4xN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZtzeRONMkLaJ0kk4JlhZkiIM1pvaS7aBA2XyIVuGSJY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IvU5X01BUxNUCZMnRlIeTRqSBbkvvUPfsPSnEQLMCARz9gxNHHX7b396Ohrr1bqPwxgH94J0+mXx5bt0wrwUsRSrPPZHV7oVHYDfFHV5YvBn59QHla1N1DmggMRSFENH/jQFEz9EZQxdGdFIYmZQLRG5BBsG5sp+bR8PKHb1WB5y8+P36599SJ57tH/3i5hD64FTDSI39IeOLzbQxI5D3/v1Ugv72w5r7b2nFgz3tUWghSWr7YI2Lm80uzdXxdOXI4M+ceEpBUUnFqCr3mz1ZEfN9sDZTTLpfnvf2NP6j6DlD2zAXjlczVWYfe8lvHKL2o+dG3Lb81uzDwpxAsqn+KD4l+AwEILeFCRjh94BmMF+4reElZD8WHwIMc5+Ees3LlxMWKy637HXR6jFggyeV/iXj1rYwX3m", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Zu4oRkCYAACWA0u25JNBinrI77D34Qz6oUv5Y8wFE/Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GUhGT+y2YsznliIQLzSPom0ApzANXAZNvCpid9HhTFFuqtH7Nv3dG5AVKvCGsPzCTigrkuPynpJWdaVN9kuh/ql5R1S0j7CMWqROyiVkqdjL0hWU4ZxyfP7N79fzsrH8vySI1JWfrJY1oHikO6pYN9NoPF7omDa+hTa3Vtr9Iji5lvPHCTUedTFpr0o486FOj3+IdIFInINVrAL4ycL2qERhFMlw4I7OKI5i18kGznAQSY/0L2Bj27qtdh92zgaWjnJOZ/9dgQwPf9miQxJOEzpjIUjOcoQzcs+PRCui+sLrCAh/zYRTkdkpkgbsmOOaGtwUi5IiXsu8WAzyD2XSeTH+gXIkl6in6x334bCTY9cQwBSUu6igdU9+zJaBgNgc5b34YdX7EaF9s6PxfyuukLciIyt6zRw6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZvhbqLekc7DvjqP1i3sFOGYyQSZSezCScDCb5uq/3D4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "obdGyPyOyrj705esNsJVf992Hw+M8nJ1m4SCOBfvEq0r378E3yfLbP9T5ddpQLBzxlzWtIIkcACadzE2G245mtkag99FawaFFo3N2sqX9H1dyYdxT2b+7MTK/FmT50/K+cC/MwTQ8PK4ctWt6NDp7RLOyi06vRbsEyENZ/TEp471/4NWQptjqEsL41qGCf3gGBAzlphauDv65evMid0xOzNBJ7vuUHfFMeyKVkUt2xSLIGdpX99leg/IUIH+z/J8TsK5cj7nX0lL4q9I6dll0uGGpWDsrOLvMTWm/H7d116iziZFxXZ2TGyPFBvWaYbgaBWjLv5WMkkut5oyUoJ/2DommG0Gin8iIsAsdUbU14/kFMyyb1foKcbFy1jH5ySMSd5hbBjFvYUgUecEyTw30yYmCTdSrgLm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Zvz8HMk1E6X87eJYAGjFb1qH2WRR2j8Utzci1xt6igk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bkbmc6AiNmDhJTH4LvKcn2KaC4H2KOQ9kj1Q0/9T3wx1P/yJVRAQdGsN6NIQG1b0vd2T1HDlBw5oi9H+wBU7w/EU1CwC/kYIV9AA+Gzo1xpv4ZKgd9nym6+pjN4UeUT02UEdRxmZ6zlbraKm0itmUHdqrOX3LksqyhZyUQNnarL1Un0KX691JA9cn0/IKfRKsDDU0caaMvTL0Z7pYvzxIdFmaFfZzVrI7MdkUaG0Pn4Uv41kx7Q3YJ82aeYtEQfav2oclXgFxP63DWWHpnM1MH0xRsRbjDQu9fIc9dJVDSIIQc/e4+NB6kvHjkWC7TFAzKoXr0c1nE/gdUCw90PgX9kewkAVE0Se1FFM2glmPldTlQkkVRbyVEOI7He+zYW0etw/bdD/3/b6VqtYgwQoapyYFjo7vBJo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZwvTzIY76gbxGcuPdDEzsUzxD7xyOYWmgjOd85Y3M9g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "onhhTCC6vc1Mw/go1g5j8oVZS4Vjq0XuF412kEJge4Sr5FhLZVQxchE73ddH51HsRoVIpQr1xNEGfHqGvem0DFPgN/Rehn+3LRTnuDTysV5LQ4z+KOsyHpHJ7Zd1m1SsZ+RQsgrNWt+Gjz9f+Cyv7b2tYh1HRfbVAR5sOBiN+8Mr66sFrzGaExiHQI/K3wMDdVua+eWdU89TMSC1Yhvoom9VtYr+roF7wKYLyD7ne49AHoZqv2JodQvKyZePOTJvov61TbX8Nc5/HZWfm6UqlChjCLie+xa7erOeu0Uo3T7hUhaPFAUaQAzsQMl1n+crfCSq5ET4NYRJF+hj3VnvqcHBhL6mhtUusLDWQO2hEZCx3MCnxny6slkiiu7NIINNM34F8qRvh79W9Ek1PB+iFewzR6Aqbeav", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Zx6xopmkeegFDUgJBIUE18Y4hGgnqUCCDoaOHS9hnPQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zEEniJIHiElwu9JfNHJfYW2XTOLtX88uIdggiKimel/1RTBNsCcFV1H0gZwwhDRjPQOXvgxWM855O7mBSKMHscALyFWXRkTtxhviHsBxPZVGYRbuqRXQHcnep7SfkTBFlHPHTD1DJ9NO04UocRYNJZpqA04hjZRnLcXwWswcUSCWcse0MoENXD0DmoCulPRnr2QBUY8z5QWRt8RY+yuRweVkVbkI4qq9fj/k0F7t45f75widnEn0kHoJ34LGiMkcvFmU6bbxoaLyXXsbvqobvmFsRJ5yGqxjpb7131dfk87YWxKsFQUmL2ZHnSO42EbuxjfHOIU+fe8r5RJEkUSC7Jw0fY3ZaOwt8ADYr+sHgK+7eHeu35HNxU+279IEipnZ4J1SbmNP7H4hfstLIVKkvnq8ZUXsPfBC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "Zxj4HIdqvBm6qkZYhU0QOYxkF8X/CsgBgd+gVo1I8uY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V8UaEt0JIDmBfK9pd5gdSBldtDFP+CQseovIPLSSYKreqXj0bI/WW1eFLg9weLYJNMxSVTgK9nWbPA5/PtscLWpz0FcKmcR4BMj307UJmmWRMtZJyxleK0Ai+FCh/1jKgVuW5JzckryXct57vgSoL5DZSEUGgR9CNTKGHeAATCPElgThd2guDeLbPipE5w74FT2Zx7MF0lMnzyPQfdv0qZQpQOiRdj7qqpdcbSXfYjk5jFYPfSmkHlZleSGub1ce22Y6MBf26tWdjKtAKIvapqx6piOHnStEO5GTYnwwgIvjznoZc3fMVEInd8CqVKAGqKlRrvlM8SO0V2eMVSi1JgIswF/aKWCpP+ffcWOiOk+jlnV/EQJX297oYv3+wpS8t2L6PXEBrs4hGb5RTs3mFeE9o+S6YtsL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ZybGzjFTlZRw8V1sRzt/+vq6W8p389P/B9ac/deRF+Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "juz+TmOLVXGDzVCtqCIIJHyO+stF9mGOQrZImQaLxaahiQhobGvMnl8A0UDFtBI6LjPc2G3loc6Ra47rRU1PlLHMVVUwnjKwngHBkVJtoHtsHGrUIwwLkdEvDOk/BQ/ZWMznypUrXxhQSIs4rh2tKJVcu1yScgCv8p4OjA/h7Z+rWf08BIw7dY4zHidM/PzMImvjVffA72gMszG6Y+eN0gZo+mQc7T9PVG7vAJ+sYgiAPG3WN3WCacOxkjoV8Pe0DlbhDaghJ7dsurTVDECQb55gK5HNuCcKONtRsaePtPbKYiXfnPn1Ji0tjvnLWuU/1BYzS6saoxmz/7EOpwp6VzCHEyIKrv841LkRhcu9J8Pb3v7Mfqtmuz2N0zsGQdcWqbqq3EXBwe7Kh9uSUZmGY6baoc0/ihu4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a/xby9VytgaeVytHL6jvqFn+b4oukCNyAy/hIFLkK6c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DRPWBPzEq7CPd8Thcj0RJI4YNYOKalLuVw0uisUu5gFRgdkcjs0kXyEf9QreaWKsvLDASaOIbpIHqhFq5ot/Zcz9jLbHBzSGExi+yKgUZS8yZJ+juPa3Ss8A7R497dP0viXzEbY70xBv+YqK+aiEjntcZaOK29cK/ztLctDqoft9tnTI3SA60n5q+wc5TJj+yQ3PMSwpkpPE5Ot4tasJWbQluPtl0dttKl9c20nd1MSESA0CQSoFAKxQO3CHEMIbUPoYjXpWcnh7IZvFyN/SdmJVldT6l2H6wFZWIkBECrWfMZti3zwG+KLrGZRKKl7CH+QY9guCmFKl+Ls57BiWFaIsEl3KkNqgTbOUzg8MJSNJPvc+ft2qJd3RBlo4VN+ZUAiPvV4ksjdlS4KFuFRcQiYAL8WtSECW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a0NPsMqw2WO9O2JqygJGj2/QIcYhJ2IygjW6Isg4jRE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7+HrMaZK+Jo2Fs2BcXuhEatat7XeQJb9oorIl62m4YcnmyKtwzi/Gv1CNHdbxc/XHih/VSThbcVMvb37c4mqncaG2eQow5I6GLVPnYO45PSY1ity6s74KHmWY+zQKQ+lS3MUa+gi7tjRdciC6080EVoKCIMmC/bairXazEcWBWgUaB5gMswQjnk3RaRVHyxb+jxAFA4cFXGtWRyzVe8FKjJ6b3JZlagK7uQrCL1NXDDcOkQt8wBpgRGA5kFcommxEpYeshDQX7T3cniU9ahk+MKatJHEvtvcJg5kX7IoplAnOf4SYpphs3VdlnQL4/TlEPgZvsrGPCcBOo+iIp6Se81M34xrUxhpcjh+a1uCyle6kLbDnQ7ScTlS28m/y8qVILxWc2E+aE+8F4Ck+czUUyX3IfUW99zj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a0xsl+t/ZWTZ1TpMYjcC/e6iE6eWiRFHkI3qNg4BISs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SGLBvPZZ5Bi8fxdfh4+t1/b+MhyX4gU3i5X9RVXYxxiveoXy7ijV6v6UdI7pLysxxMMNQKwFihyK/SgmRHswje7ojgc3lTdmuyf63wRilopGJPOvg63KCNlqwDrn9tVINBOvE9Rsgbuj6ao4GuLkvTmpltIFgPnXcdP8XDS7wBqLIlZMHyIb3shgb+qAl0oeairIozyomcPagKYbqcK9hOeLVRWQKwT5oYSy8ZaPggrYqlUe6o4dKJ9IXF/hMT7ETDujLVmSq1fQfi+Kh/ymfMSAJhiKx3M+tSF41ZsqjIeEm3osbwQXmlbOVacg3tOUyBfZow0LPdSCUGjwygYoK8tX9dcdjBJTQ7MfslmPGm9Xe9yadoW+qK5ZOrTggry3PGlSFPtdfckJfCJYXYaCBga26B1unQCH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a1K9E06eV2kiEk1/6Z5ffUaGKkLkPE/9tugNOhtOAYA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6Z6a9qh08mwVPo/VHiJoxl/nQMTE3glT6iJrZO7EJhE99ysavcpy7K2PiXFCkFx1MnWQ/op7GGWkBgCZkfqA9Hdmfqaq56ULWNcO69/VvNesalE1a3Vb3MUDbOMj9ZzCbl3YqCa+PgM/Dg5swcxIpqMYbtzSth3t2kBzw4ZF7dEa0vUyDTLadGTIwaHNj9Z5jLZuXliQv0m+93qLj722krU1f+TO2whX2XkaEQw8xVCsiRL9WB/bC7IdAuL0PZk5vFROuscey9J0pMu9xctQ8z1P/1dy+3+bfpsYQvg6uhvqiTgsyF4o9MaEB0wuHl/hfXdkS1KmSROj+sj8J5LC8xbn/brAQLs4PkFG1dsfYf7NjAz+DBonbFUJE3SkmBBoKlTaWrp99lR//AcHvif8rvz0PoHiBjjM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a2LhnM3vdT9WmLVPuqiy+Lgkn8ZOBy44b8YM21ZKGM4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OgsL75VmL7h+5LL/1xNS29CsluL+PTG/iMDhvWzYaienud28SC3sJ0LJq0XXadzUj7zGDDTTYFSuT+KFp8s6gpk9oRwlkrkjvXlyILcNbmCPEX96FbE0dwrpSgWEX1e5hHtXwwmxHrFZuI30HYG/OwuB+lVQFMQll8843v9oNTdu9Gg4tqZtI5ckqzplmhgn9btDnQkcfhHbCkHIigyfMS81EloKI2myEJTNgMMZc82P6H9LlaBEtP8j0P6BJFF+JIHT6mxooRVgYss9B5hoWVh9+FPJDWQ0isEMa9JXouJVv344aqYmfbxQpo+CQPs8YdAeOyRhIKPIKE8N1r6sYKFM1Qwsj/SE0ff6JcJgkojwOdegzERou0G4EvWuo1Qs5Vr35y7gA9e+GsbIyq2agIRJFn97lwnM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a41UFM3eji9kQ/7WvBaMtQ0K179luQh4JZTHXieBNHY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dpBUIqygaaeFBDZGqVzC5ogzMN0YiAqUcJT/WLQBwYVuWI5M/bfnN0RyZDUF1Srykn5i3k+tw78cfqCz8ycrwdiYnMXkG3IKZrCHhfEAEV12wTcnWvpAt/PDCXgrB+jG8wi/2LZPJXVr1SDcNHQKNqmrjpuINYaAwWR668ioVXRFtai2lASovUBgifnB6zRz63juz37mSkP0WzS0GQbNzGGVFN+rHGeD8RNwp8wqK+qd3GDoHb007rQdI6azB6BhgcE+MhcS2PkP/BYjT864KiqriTuyhm7TOCGeASVtOPV8+1POSXAy0ZE0GSEEpEH3FBqgpx6W9NTQFunT0y1f//I2HmFB14e57eaCrnv81GT915LtN6uHIGbx0GsSRKBCxrO84+XsdCOl4IDP8lNMhWRfAYUubq1E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a4Q3z9alv3GVqyj/dTI3wyGFRa9EoMh+CzAjbI/GtOk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ktX8Vd4LjyxeVkiyfprpjb6MihYIYNfxr8ooIva0erHvbgu1tMREx1AN+UFhtxhBuvHlK3HU79WF+wyC4+mvAy2gN7rn5lWNSiW0k2OKYm9V9NVpxLvoA7nEKYYPvntZc5hmyHvW8mJpdmVW2joNdjFiak/1pzkcqG045vPO+TanTQr9a6+48/w0n2UsRn35HzwXs00xor0EPVR8+mW/7KVV/EumCwa2HeaVpcIOVauqCLJwLf5qSRYr7vevpGvGOkA47VPQhJsongpp3PwP5PMHZSXWoImKJEjdPuXK/CX+TGhnYMVbyhKp52b7cKdNcV6kQUcHJZuGeUaa1UNrm/3QlpppeTkte6JXedQ5HR5yl7HfcjluAIK3F4Lcu2SK+szXQxeWYboKTL5422fd+cLBkqWMg5r8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a4ZhICOuwy5SoS24+WZKNo5jieJcFAtyMh0dWzN4miI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wbOE3qWuWQ56OuzlVbbBk+2jkMXpX38nHME9EA4ZkvfXxfJp2yRCK8R/v0z4bfXvbZr5yArL3ebZRje7hqFv+77LN17+W5HQ8PPGL76xMxY3EH/f3tmo67wbRu0n6NAOs2e2a+tysnJLWqkeRy2t1k11pZtHV2r76q2gjXajpxVdvpgCiGQScmtFSIiWf6ypLCnLEzfE8RzJ+ZiRyJpMHalSq4nAC8Xh2/61WQZufZ75wVPzozGGDYT1YLvq9Vp5TW4UYwXq+uKcoHpVpT71Xm82MddjE5U9LuF8Wyd6dygEs4WX2y5BNRDZHkDSy8m6HSjRz0W7f79Zku/YQdzinA7SGwTAk9v0dLwlCFTYEkyI82vrsHiA2JYr3fZAJdIKhfklnNy2S14+42ZRjvD9GrdX5GuVI4yn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a4r9Rj8w8RqVIvvAv64rf91PYXokWrLKr3HARqIVUew", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6J43xwxX5NcwGXtSTVFb3xPTefBiKWEv6bUmQLLuCuo22ySOY5Zi3vsRet0L9ISIYb0Tbalm05/4iwXnuH7LSoazSDAtX40fv24+bbbmMqFTZ5bk3XY+aXVK3ypklNKH1edLbs74XR7AvfH9dAKWL1odhM+QaX88p7J9Pt4BGK86UiewufzaFC9VdP4s8Hz93V66G78wfaYE3yqPKoL9o2S9GEjy19NTJkBGn5R3cRaX98LKxRamaSNLztVQYvRuWyFQPgkpSpedrXFJUllou4brAsQJZjPJJl6boPniNE6W3eh5lcevNv1PeEvlaHV5P5tmYRL24/uIZIrrwS3vB4mMs+4xJFrFsS7fQIA23rwt6+QCq3lpecTEY1Rd2Sz2ACtfotBfvSlyMlL9Pr/9JUdBCRNp5eRm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a5f2Hg4NW6aJJ0WrIWL0C/LZ3rwEQzWCPCMWsqQdHjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0e7YcV6w1y5ANNmMdCyJ+M357exJzCq4FLeqHTsh1yCYIewGXvxTgIBQknzki2HHAxpbW/XAMy6zrEZMRFIpUwTyXDcxtu4CB3CKD601+qDWJA7vwo9KP9CcvWExe71bYxhRn4mVSGJq7zOREaEKVQHFzBM0AdApVuJcNXeY1aDylx9FoXinLEh+7oMc+buplN2tQl0U7nIrcnfHSCCKs8U2kevL7PrZTDL9LLrY8BwMQcwGgBUd75jBt3NzJCxu5jhbEZjP290NPsCAEE8vFUPv7I+HC/fiHe57CA0xq9d09qfO77hP1SxLEQ3WuZZVnl1yHbsY+RHCEnLPtLKbtoh2wuGIZJXCaAuSolPhhZA+QBET75XKe6CZBQ4fs744jM/poDKp6tT9NWhFczPRrp+KOZtxX/ee", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a6Yy9+fkLyucFBFPOAvp6S+U+exl7N83YsHV832r+PY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mM0g4inbZYokX0vBJPx1r/zTNC1ECmvvseG78NgPeBhvnG7nxxKnoFPssVYxA3AMHlHRC1B+OZk7ZlAj2Fej4l1fw50nVPJO77TvGPIHhK9Wyf+uxyNhJF66+cyRZjLtqj+UQ7DGS+3pdcaOvxDCuwghGZFHdryneoxzca47eL+Yyt7ysOhYeZIHEHYawF76lL09B5bIvcKTnnITPaPMiUxS/yRFiH/Up7DvajXrgkGmEu1Y6H2jL2xZXBgVwApQDOW2d9phANaDiy7WVwBGvgrYYio3Npa1/ro7eM8X6oupaBAURDSJ8CXKi38/WetIlED8PVBsNRzcbXWO0jzrua/U2Kziy7DYJ60DV/LFmVbdHTz7oYnBk8halgNzoVbzML2AjRApGYnZk5TcUYrqgpV9XJzDvPue", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a7FUO+ni32WIPVClX3RoJEeyBz96YJm01B+v6kq53LY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "slgHNi663SOBQHZJjaapkXh9hOA7iPSEPTrF0DQcfBB39+dSAxCI5Dd8LJUlzvkS4Kxs29wcpIefnOVetv3xIwNjm7oH2OB+8FrW4c6lDj+o86fwW4q33Lhx+5cYDMYvvEvMJY2qncdgEDgN7dYT+ENQKkmxxHt2zwQ4yHv746QMp7v7wwD6Le8sA/LG4KXQBbIHWvDGycSgYz9FlJvTb9ksOQgPDwyH8C00ga+CF/JX06ckd/Kw4riNF2Yo8p6HjlU0DnU1A2hdYru5XEbz2uVOzjwRROWbePIVTeTt2XANVgvZtdJW85EYfmQVKD+NostI/0gyRs8o+V5PzBVXqQiWQ8LTNjtRO1mt4NWckXWjiYJ9LoKCj1T9W1f13nx6+aRPYGbOmFKLjwrK1+ZOraYxp0E+q4dX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a7VXvHZTXRJnkNMYy+OmhF/OwEUmboqMLk3CP6jHqGQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KAh4BHIaTHHtw2m9mIcWZnbkFDfC5iXPDkB0S7mLqeMTO94wdtS56DwS6eylMlEJtnR92aMP/cJY6o4/IW9QvUQ9oHka69AsOtwji4XENK/8lR5oQXfXCNFg0GLxofTgnnjDcHKDRmKnPhbGPuwFbbiF4t7f6i96XB1riJQXABoolb16qyIX6ravgmyDj0X99301UZQKdm8xi16Xl+pXDI2JgESljmqJK1gvO86rBSbH9Il7Eu4AQU06FX0/xmiBJZvX1bp+AdW/NdaNjufR8bosK2GL6vycytwbYJFOUpbpV+PsPM/HmLZ/EU70IMfao65ZKXGDQJpiZomfO6vXO5NHdvEu3WYfXm9xwryLpThmL/BlRDO0RG+bfTA8tRHVqJge+96zjLTQui+SKzpjwqoiAIFRGar9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a8Wq0+GtDNmSBUjy+Xc9gKviHWbLGXnQ+0bKi9112uM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SlCmuKdu685dn4bU8yH1Bw0Lz+WQOXsGOnt9NY7gSGVj/K3ZiCh8eV2rLmbPhfPZyBC8pwnh9S/D5QPhZHV/eo51FJnjWvv6Z20URkAXX4lWs2OOEFTJOVzuiClBfXLAwzRQwMQPmI+S3hvGVEQ8D7izMLu+0Ulw8c7mDcbfOvXLRUCQrGY+3UI5OD0I1Cls56raUCEfAXvXUy/GJFhbgW1g6tslFax0lqahZwH7slNkEzQEJtk72mK/nLrQ/4wrUDPBNkeZXHV4hVQRfrQ6vn0Kpbf0Ssd1FdX/DGbuxy/2s7XW7dNWhc8u4ox77J3hZ5uhzrA8NjKvFfSG8Us6tpgi+A49Py3+pnQKWbaAfgM38CfcTsrSB0yaDSqKEUSY6ho9VQ45Y4n9HfD9ZOMsozzDCcZqgUWG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a8bE4g1AgJgjay2w3+glccuJ7Za2IBGH9G76G0BcBnA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "moAurvVbTN4TJ9PxtwrmFuhqplw8yCRoVp0THkQ3CGP/BtyPjnd8jEOuaZbBeli1sM7V3eruxFWkYPe/KEhsPQmAwCRsMrFFp9d5c1q5rK0JvuU677WALU1w8v37pbIlGC7nKYp2VE7XMsNPjVC5x7YVuxsyC+iXQ4a/e8gdv9H8s8Qbr7E+4nklKVVBdnEtMjsKNdJ+b5M/lsgL+8HnBLimfqPZd9lLtD8YTldS0Hf6yF3KebRyfrOIRXTwqG/W20HSFGkSCHUYAlM+FYw5bk+kQCRceIyjvMN/d4HE3mTb5r2RM7QQkPygPLHLFtJLNNJbm3p0b2iQG20Y2agpKpK2Sf8Jd0ych8jys/6n60IaGRhxNRAC5aQGC55bnr2rIHzc0pLO/1/yybRg4jh0RgNTN3WGRG/6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a9CdLj+Gb+Cvss0QlQlLVEmYmBqq4ncg7YZnkI5ZXus", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZE9oYtAArl4PzYmeekbcPhqFJcUcrecdJr1uH46V3DiyZM/jwdAVJyYaRA6BFz72J83pLw2LxznzgzPhKFG0OZbykxfn4g6b5nMFQc7vjRa37rZs1opRmzviXSR46rhtoALqilnRcXoZV8szgGFbScDwpyH/khONYt1KcdxyNZ8bf1LxroJQI/7+yHe2sXPJLL3gTRxcRj3Rb24xXnDhPt9WdyEnkuEGBqoV4x/4TF5Ht3E/P/i4VUh/aIARuZP6qtWkKvUIS1NU3oe6ydBWJNbVpSFR1EziDOMQ9QRfa1txv5EvmfKJJRgHXKthRsl4dWbMGx2QtaoSRkrP4MW8tvtoEBs2HcSjo4J2gCyx8kVVYeKMnRg+sUCOe3jS+ke8fY/LEe4JIMqLp+9jnYEalAtsSN5Gfcn2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a9JTxMVDc4KREIC4Uxea1Kgs/Jvmu0+CROOLaXoCndg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Pw+vC86v6dJ0aLD/3picFGty1JWTGRXWxgYMM7hVamxQl5xWqVfVN1inn73GBtY8OSz7UKlJMKZZ7DaNTdfu8ulTaTSrXSjiiq4eSMKwkONlJP1v5+vZwKTD23/14Mk8J4wH2oGTypp0Sdhpbln0cy5jk+6X/YsDy31ZGOkbukU/bgedC0BvxiVPs/Q+y7EcF4O8PyJGGTSSz/jY8HO5dq5FrnzMJVzHo2n3IRdMWi8o7GEBUtqfYjQw8r+6SaMAa/XCe5wh5EMWC3LPORBOfEmvpEtTB5jHX7MKybF3yPygH3S/f4SELnk0MF3lubLIm+63D62krxuGV9oh/QADw7y5lM5jUTUUMOlspyMML0m0U7mMw+MybY63tYKxlt5OcdUvzj8RtT7d47zXjSWm4kvuoek2OD/w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "a9csg3Abws4Jl1usZQxbLJwmr4chUWiCKHihpjm+MSE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P8x9Hq/JlEab7KhdYMnMEnQ/CbbkTTNgTyacgbyH9hkc7LVvuGXLi89U6IqadImFrh8qdBmnMPlCM2BDdotDJBLz2lC14cqQa6kxDpAVRPCLY6MUVoXA7OLoHhNoP2d8UsCdoz8qhnmfyXdxTNPR7RLqq9VdHeO+1q4jMcWvUKcsuFyu26QqiTImOwDhfXUy+UaKKEVY/n7MUEP6cizuKnQsuW+AR0Akeskvcmg1uPlK1/pIaAU23vEgsdIulhYmWJ9zNOpQjtrTQR9/xUYeRRGDti0vwaF6T85sVikZxG1raZgTFovMbwKSppr+lQpG4mm9qL1GA9JzYysJz7XAlCkcv4zFXom67XrmZlL9+nDpFBDvTvezkvlYjT94c2NPCheIchTlQ/ffzN30LEUzO/7UPu6Kh3yz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aAgIm1hIlRx2GIbgvxaG+hwKVY3BekJfpBaX7UlcgGk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T6jUvYIHQhciQrDWk8T6Gyl7BR/VsuxaCQGiHH7ycwdwPmDjjOi0MlgE0OCgTlStvgQBJ1FLl8hBNm2sG0f+hlQvDuQpO2oJkEePVg3VOEyAJ6VCpcF4EAMH8HipaDC9bE6ibMZ77doq6RtLSW7PCMvNvBfbphWV6H5Dd+s2kOBQeur5wSWF0SiUFgcIKSb6W7LX/m2rc1YU+c+rTxcobaQE4fNAPy+C6nTaJaVrSIXJPriY7eXynsMWqJe9qZTFKGLT0hHT9k2uYwoo9yU7MjUMaVO8RbWJCl6kQ0H4tnBl1qt8cCif5PHsfScecvVj4aITQUPcOGbGjW2wWH7KhDXmvP0Rc2NNNumaK7TxwLILzXZXRFs+VbzqRV0ZFz39bNKSgRMom5SQu7v5oNSA7MvSo0BGt3z6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aBkF00iOEYMkYIAI4o0IDHVOpblhTRqUtJF8d/2jHHE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A7y9/ja1qpthm1bxNCVMGlEqcOnqgAb/6Z9gj0ZRYOIA2l+vWoLm2nF4Hwh0KAbFC+lDDdEFL72MUZXnpGXhYyJJgoNuKcia2zPGXM/W6NCtgokqL2dSIm261rUDymH4t72ThK6oDUgaz94i+4C2sj/NaFQCc+6aj/CkkcSJ5e2cKQB9rX6QBKr23mejN9W7zNiuadQOmma+eFaqP3ZA5xJlInh6qvMpDbl5Da/1Jm8bUNS8diT6srrXCKybSwR88X51HjLRZyIPGTOJzM2BI62HcRiz6dMSq5xl9fxcO74Krd8EMJSPElww7H77l8eWJg8cTVPtXFARlqFhZa93MvOGfhfYg2TJIqf8OYF7rxChZ2KqLTl3c1Ek5cRNuzjrLgXP6KKCN6uoxQ/3pVR+Dx0p9SYvUPfj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aCbkMDegU1nBQtD+0joDm3sprgvGx8yM9pbFyOZZef0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PyFhSdpur0nKinxwCly2XnQpR6Tzwwb9Ld9Mm7dgSKNdqPMjkwxDuFkDwQLMeEGDQQebG7IUj5Ds800oEnHbvdywL+WBaQp/vQyXDYmVLXIGa6G/bKkdwl7lm9sp6FqeVoPMVRp1+vU4vnmfRcgJBfswQknwUq8FUdu0rzW5HhrVjjPJPLiHGQkD0m51MSIbcRgH6cCpdue4w3dwYdmtp8nkXfcCMJaStqmY6GWBAwRySvaD/UfTcEKwfwyL3MkJJu62Tyk/eKA+Uia9U9hZjJNiwl6I+TCgTmZjLpjlyXNCC7VoDZ+GoTZS0oQW4sFeNU7ljvpxK1yCzM36Y7iJbaxY5qPOyF+/eKxn3DAImnphxWfNqDkzSXRYATJecC20Nj5DBSdmR+3vjYLm43/DhbV8A6p4iNX3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aCu2g+FVCxW3A5w156DaOaikQ5bCffbpUJQAlw9gtJk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xzKbN3YRLnCK5Kj3S/y+FjdU70ceD/5azRx2lzkTe9/arTaBuDy8yJDoEPOGG3Db+yctV3tC1leLQI4MVXtWxMXYFxcSYim91MOGc8e+as2W/qv/9171v0YsB6FusfMx2D8oY3PshIQWJsYz2W1shE8bogEw7SRBPx8kwf4TIQCXq4M+4iWRJUAbZwbAM3O4IhnwagZIqKQjzah0xMeKySTe/sfy3gPIIyw2mQ2K7bO1w+xiZrne8n4DJT/8fKv9IS3Iv2DoTY9p3rz6PsmxjE+8UficknSS16RBROEHY590GPWPO6TmnSCHiugrXduFOfk/fLDWcpf3EHAinJR8TUjzJccbN0cFsApMknzOaL12y+qZWff88ZkDkictnNLyr0Otpf6hUsURf5qUmctptiAcrCwFeAv7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aD9qCWtmr0hC6P9YMTcHQpKM/CkQyv/EZahvsbjLC20", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3CpAO3ChwrMFwZLW7Zv1R2J+J4pviPY/U0Hf2GWnFwQc16dxWJrhtFlS8np3bsCKTRyDMU+d/qoSTJmOEpT0zLrPShyBCAFviZrLm3AqDwQzgVHb6AxzE3aMnY1QGRy80mX9AnUKd5PsJeXajkM7MnrqqIsCGuCoF6cZB0gR5EUEoZEvWb0HaD+p9uyHwvyxh9RTLhBV6vvTHrUfoaZEruTG1ZBZSPdgN+qI7apGOWyUNPig5KQ5G57kk+vyuclYOXq/nO0tCz0V2GjbcwTxaHWL7AWb/lhDahaa78xtWgp8DK4VyjdCLXJlAdj137rfReuPVZ4Lc8sxUDwr5n2OGUKN6izaRXBqm7S067REHmx20qznxqggkJU3HrTak2i/4Qn9M+72jcmy/mtNUkQPCdP41ng2Rr0g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aDLE4pWQRGxfKIQunRkQUl+LrlO2yZuM0IJ/aGMG4kM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0VYkFi16XZVWmc9u5cM1IIfUPjCjc1DdFtiZdJaC0JvxrLzRsEASd5SlE2SIlbatWN+je+Y17XiBKxkxvHPL7lT+9K8vuQuRF18az6z0V8jSCrcuN0S9op9mRj3lbp4LHod5BOvXaMzy1SrUxMq45wIFk33eqi1kfub3D1DO60v442fKsVRLVtTa8TIihEN0QOqVszKa94vQGMPToNFsOkJGmSNP4R9LEA5WkoNymEGct93k06PqEfkGj261DToupBwfVQvSY5sjwyfNRNCCjfZJd/epseNbbk+kDRIZMzTTXht1gaxItfI5OfirNQeJbwHVIPYNaIoltKi+Ice3g7hwoGrlKItjSyc7I/iV7AXW8SMJfAyuibIh/Yjg95VX5JCbOFVZ65L4/LlQJFZFauLyTmUzr0aJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aEHdAfUocSMtU0s+hLd5EouCHqzsWiWipI+/26xhWSU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "siY+fe7UmFdF1rL1BOd0vTVlVpMWatbGyD8oDKTrpFZ9W8X7jFOL9SuMdYEFa7ZKJ+rke4xRt0fQideDn7qcFOEexk4x44jkSxFWhLGTsRLvTCMIdXMpPn+4h7t9KEz/qEC6vsS6kylsRV75iFuA1OXXd9IFSQzydBWXzAnQgOJ8pA9PUiz1DVgj7SAvokgi1cBlnxHx+p/c+Qr4gWaKwnGNPrrx4rywnpcRAz5XDxQFGzMg+fQFEYn8U4KomEEHMCKSzBXJiLb6DWCcDs8MzQqVNxbeNT74NnEpBf3yyZ2yk2DAPmy0fechwDWWPUBpgesfNGEqwXQsZEKFg7YBUCfyIEUcZcdypwSqIvT+HxEZEInr4OrXdJEH8a3ib5rKXxoNJHBOAhCiShwsoUXWAoUvVWWAJLZ1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aEj9vFEgZJmLYrPtllGpRbGrtAZGi7rfKQTn2ugt4bI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GncOTxEHonNB/UVHWHi8vx17G7azdpdA3OAPmYGEmyl8cJsrUtV7Oszxg+pitD1CoL3b+/D+xbatRdq2l2PnM/gX5icxR6XlbjvdHZRByx9Rzou/m9MUSkmdj5ICSLPM45oruadIfwjvO4odlTilTe1BQrfZUpyyBVrgH7OflPStfQpEBs8ccA+lnCGOJkpuRTjFvDrF/fFzOGjThU+Z7RX1fHUSqJsFqhlFOShZCZX0tpeWA7njFwcnpCSCsLIWZogUQKFjqTge/EYYAzJodQAB9dLi1X7SeD410yYB4hpqfQvLuZWkN4V5dThlOHXfa1BGd8AR4AptlGljIgViorSJhNzPR3o86DK6rTwxMDBGn+EjjWE9z0xbwHeoHbXNGlYCgeuPD1Cai0EDT8ZfSQZkpwiVoVTi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aFK+tejeRdXubxIFtS38ci9vF97guWhxK7wf9ePD6PE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TRwJ2AQlkk06uornkItJ+oF7SkBwtmirftZyCA4uO87GfH3SkqaDfk9l9iPEKoTHXP/R63oeQkpeT1WN2J7EbGOKbb3ZZWV/hpEfbXW/J1KJpE3VEIdSl+w+GTl+dTRE3bgWpMzKda1dlxFuXGZqsgVTFAHsiLE0gsGWz/pEer8a2RqdO9OFQx9lqtEPYir5nIHSu/7dnX8Oc4ZyH49auqKEoC1qJievQv6nQFRtTwVVmlv2QnCLY0ykGQNTctEosbL9kd+cz14td2kncylHz6v201x+4RVvOXdmfySZxu761u8vhMCu724yKL5UpHSZsnRcGXcUUe7tnMVWr4r2IXRohM1ogVjmPB5dVBwSWzd60Nac+uqOHZC8dz96OFUDzNylO4iHOj8igfIQwnRieChrFFaT4mqw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aFTID1ZI+Mt+7b96Sm23uYjg1CyLA0NG7zg8lFUmE8g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PUILayQ4nybNap8q69Jo/kvza3gZAZwn5jZh5XAV24WWwyIInegDFgopXb0PTnuTj1TvMin7VaYHqZvX8JHGtIYnddZ3xXkdZPxtpGoCJUFPvVR1SEispA7tk4SwscnB9jjTIDyKAEcfNYIHKu44W2/MTKPzY9WKcqUZ8PHv4cVHbp3XOpSFnOsPNjo9sxJPVvNNCyHp+9PoEUJZ8Zl2mFapRBsJflctLlEZWhP8FyopdUx3X9oOhKO4eN0ixhK+wBquGoPTtw/+drZvzMynM3qtyFr545r2njPvbpHnuZbpW3Z66ZO0Yr8ep112Ivx2yK+/8fs8Y/rCIABrz/4/jLecziiv6CRg925Jv4O9ztDf8MTevU5smLYiYcpsKpVcsCh08pbSWNo2RgXGe4+D+5gsF5guwCpa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aFcWKkzsq52DOXCelhOXyzrJDWPe/L7ggsTyjGviOI4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tuDnfp03SpHQJWrnav/tnUcKrz+nsHKdr+jR03b6b23ewwXq1z/EuivB5kDKGP3/UYb7RUyxNdKVXm2LAlb6lN9DMoDCK7Ib1VnEl2/RSvaZTIkMGVN0IdFB03n73SLz17trYLjvIskdV0U0np8WxsmM5gyXcHmENw2f/GUld5qQoEdwGcPX1JrEzg6VwchPMK/vIb3le4TqPZZWPQhoXjiYFNdP2BafJ7KBZUbbsF77cc/mSHBG3PF1ksl3wwvvJ7r3KAoDXEtK3VDmVD5xHNDSoB+fgF2IuNMQiv446hCp3nnNJmwpI1wwCuy7oyPdP9ue2ZJmRIMjFkCY5DtFDVqJAR02NjXFkc5PJOQom+ePO6c3Z5gYXXgvR01VtyW0akmaCD1DkjB1oTFocRCzzPAY3xkNiACI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aFoex5rNulEIVqM+ciVDlUjMQd8akhaX4WwHxnRZ3F0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+Cj8MYxxbeLGZUu92g+9BwcaD6ktr3wbyxG9KFU9ZzqnppJmbmUEdz68xMXiQirX+jPdRqlyBGCU02zmFfkb0UVtcrW6HmraTiMIsZ/1jo5tF5lCDqGS4l7lTmYvf+NqkGSmvKlySB42SEflj9SS3CDa3K513SiKS2RKjiiY3AheN/IPBOojSntG26dIVNXIkSwB1GGVHHY8bMp+XRt4M7+Hjx1FzgUbM90QVT+NwXUAAUzeR+CXMR9LbwpKFEAEMW+gmlOX0vPW5KSD939z+qOF4EFx7OU+HJG5afZDLrw3QZu83O5UWyGZ9hVwh9JXS4ITSYFfcjJaLc4goZxLBFh6U0l3BBQFRhU4oK9cSy2UX+3idxuC/McnYh2cUC/yC6B+aT7GjI9V8gb8d68pn4cQFOPBl5vu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aGYSPBS8OI905RW83jJCPvOPSy4DK/Q0eo8S4o5PKrY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "btLeT6IyIsqaerXoWPLVNU0A65C3hv7m6qymySFKhePSUQnatiYBH1tyg3eyRKsWZq0Atl/6xAi7mU52fDmOC4T7mAf9q9OjdiwfjIV61/2FW60EHZMDO/FPPWx/M1vcYw3jE+vhvei6Jh3RpijKTM3LMUKvCdljrNB0OdqGR3HXd6tHxf/jYnDxd3uRbaU6fE+uzem5MkMOW/0t9shDPjT0xXbk2LIalVMcN9nxKNFDT8XPswplYcKo2ILBHFbkp5vC97aqKiHsEPaVlWIPuyq36dPSKw3JraHO2AsL+INVFWBKa8bULgt3BL+ZR4AY/Pco+fewV9ZgYTMdxyA3Hw8OIfQCZQIQ//UyiJ6KtlNOcD0pUWDG0bhILFUIhGAlUBpRExm39ftJvFssGUyh5VvpAEsgJuJs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aGedeTWGNbjOKS0TKEnAELFSpSYDyAmqha1B31gyoIQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S0VevPy8H05IOXwVHcm1ot6YX2M8mq4D3u9vJ1vrC4IkB569bKkBqs+hPkZUlyeuegLU6R+ul8n7ZKqTn9EXZEtLbO0HnXVVrgJtJtgyll2eZ8mJpfiyORaBLZms64fW9vsbpd9/hXODY6b5ntguM54QL1g3nX/dcIZ8L6iZ2aN1QtsMW6XnWJspdiigKyEIj1RkC7/mVEHewKCsm4J24fozXxU20ecMoVXIGQ02yAM97O+SYQD67XWdlvkTQDeKftPCxRW3jWzgJhowpIif2uVMJx7QMpeXfY2TWINTLY4kp3k5LDouQSW/hJN3Ok41EKVxXHlJtu2FsIFa5YKn2iE5UZjr4RN9Z40ogGwTQGjYbjM25BVOVI9QKWKvKc7GyY3/PALPEJMZkxLRKVsstjJn/7S5ZCJZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aGkbotlCOoA7umaFldj00umitBOCiNqI6iOGeQHCxP4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gVjW6tRLYAxpoQd2kt/6oRU8RQWcYoOz9738DPSdoFlMa5SjeWr9fcdR5ryCoskwXs5WQFEE7Hgo2gN1Y9hpZdmZu1TXxtoQTXZZdzdyR6w19oSLzxwz+fMe8wdPyYmwObCGRNr7rbRxi/0o2thxYsKPaPen6fP+18Zt9KLgcmv7kiFl47+7zra2obeJbUrExLJpA690BfZbVaNAgoJx5a2dO1VPJ4QTyi8W7JNjUD3zMRgd+hGrhnl7MMo8DXnRYf4iUJpWffj/xqFccaqszSLVm2TxjogIbL/I0X5e1/nGiNy/IcWdeTA7VmBnhIL8LsWQGYsyiX1QnOCtknCOYr29LgO3o6lc9qI48adBdmETuayCo4WZg+Urwg0BQ3FI8DcH2oFKMYKzKkKN789NUE3tBLkVBjxY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aHOAybhs+U+DLAZaH+1LmVqSfPizWwMoY/mzNXqWY9U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iN7QVI5lub+AuyKuFK8iWb5SZ7ykfAv7/itp7qVdgNRHn8WLPxReecDoqWkrDIX2WfjxdKNsOpdSDNRgQIbuNVpnLgN4yc3ZfCcAD1+MXWPOG8INNxvGN14OEQWnfyLFYrF7njVIIhNB+ERV5UP6887yquCfkqbOJ41WOyNOV2sdPi5PoTH6In6Rcl4tLcE3X9uNjXM4Bi1IIvklenr51IsnQMPzHuttUZ+ilhbOBPE4iw7129CnRefxAYOLEaNcHJ/lGhP+uhSCydQ9yedk+Kd0QA4CMuZvJSDPAq+F/gj9Us0lWUHEWJS03L8EoQX1n/03AIAnmRQoVV0SMUhd/PrZ5p2abjaLFXbHbXnF5iYW3OV0/I3kixBIRvwsZ6vDHcOWJeeKkjIlxkRv0mnYlq1U1ZHL54fm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aHoQMy4Eyhg8zl8M/GF3Ai+1dAoNgl2HgB6/gK/DYWc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IWJcfPKORNXGC71cjDgtIFgVPs1BW5Qd2I4za0MNOkNd6/tj1I2yDa5vR4cp2OBEiOBwi7VuzQlwywI18NTT8ed7HWJWypTdJzQ/JfwcJpBkIh0C4oAt3UQ4rxuF9A93rNoLNKlboVLjJ1yriwucJDu7/OkIdBN5soPuSmXa6UsxOpDplVI2yvEACvJPrrEAPAawomI0dAkxwBQ4mucOiHIo2EUQ8ABtNGE2CYFmnE9U5zeC2/YAadSKu5SHh90PKdFl30XaAb15NBrZ2cqyRRrXkC9qQSK/PN0m5aBPSI1CJmxFEdB04N6A/Ii9hZlWXmioOjNWVM7E2EgZqosrZMEf1zI71H3k7sORbngewYgeK2QG5JipKUesnCHO1CXK+LPaIPtFtnFm/VqFeUixLo6opKKcuIFq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aIGvB0OWXidmfpe30NUR3Rs4o/KZHSh1FXdNz9uIy9Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RuqpU5jw1XqcdXn5i5nT2Xfsc+/yBW72pgVDLCi5soroueu8C4bazD3sQnHhjZbSiZOdjeNWZ4nb257Lyrr9urwZSd1Kv/hvI5nDB2gerA9JURcu1G3rwYkokP8tCJ6Z8ulbMSyUYwD9G8c1mzQ6Fji3/ExAfd14kpJgabpl2WPV4L67Gw4/Y7St9GwgRjgDxnLqwGQCH4DSjkn9o//DsnoRKpmbsoy2xh1iCF3e8yNtRLlqZU1Um8THGBNF9vVgrMVSxCr9qrf3X1eoE9fzCJWs53kziUgVngBEcyt4Q4C5Ej3OXrDJhoE36moxW/kG5HBXphmsF4XmOza9t9xKFmnY1bRQYzoHrTKQeYyQmpTJNkhFARJpaLlQlcUN71SEc/jIbQywQbKHuhClnjLNSTWbXy0ScwXj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aIivmExc+aRrX0SDzo9Nsgr43CNd5UeXSEXI8JFjHI4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QHQurmZso6Dd9yrFf/8+CHNBEvWzav/UscU3xm/iGN3o+kKhASit8TcM56Yq13PUkVaehpN8OiwL9SaicFnM1FkRZlXz7gbuMMj39J5uD0WBaIudZ46ebV5LWVUeygCZ6OZGyl7NgRMeHCFLPSchSJ+kzL3Jkhm0CTJR/zuHZJqNr5RyZrj+1TBPx9/qEQspO7ESivq5LmG1GYbh0Qj/xXuiIaHsiy+X1DhLujcunAg0EvtqWfaDCbWSdbSNd3zRz7+K/cTkUznIzNYRc3HpFp/S82mzBH8y/In3AnezqiMNJN3/K4qt4P+0RcEB43NMdyYb1tB2dfa80rilReqWlcrEUfD9HGJcv0/lboL8g0FAg08E+PYhhL2piIWrF9u+vdqyqULUjTefqL9AjQ2M1/T+bGl0prm/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aJDajb5LLJaTceDTFRnKt/Zr8L9WxGsXPtacvoDcStM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MVXSh43yttEo12N+mElSrc8sng6+UN5o3jA4j6fzTpXjzNNvGEOlW7xWA02J2M0S7XL6UwGwAMGz3a+eiI2ZxMPOEWH7BfwYv2hVSkYhKPBYdlltSIHN9D//17ON5WIqCyqGXxjNdQRLCoHSCbrjAeX84+lwosnzOcTnHo499vlQJYDELJ+OXifvh4kU6Ir6n1snflwcM73mTRI0Vv4V9gwMK9E6PDAAeFkQNDR1ug9Z9y02wWHWzT6i6qQZNwj5jnioMEehGmqBwEEJTJOg91bP/3DPwJgycccLJ1SfRxDfvVQuBvt2Um59pZXWVau/38EIfQVFMrD/DDy91Xl8yaZbHCiQEx8Hfcz8UKM37HZthvSK0BBifelc638n6kVay+J4cIcaAJHvKXOSZpxVRb5DFo/msRXV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aKt2wQL+bktmk3mdXIwlOPWlT4wcceC+f0TREAfst3o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AgvFMhNcREhOdxRcTLuGwesFlx1dCOupznxF17h8pgwAXVwSYVDLECtpd2eRrnBKDSWQnE/hYon2Zpn1vTnMbJuiWNmdFJ6Ovn4ua64214aXHoIEMcep8TeSAwtzj+5ibCKY9SP972Fuzz7A2sWhgDwGpbFqwiWBVPK75rYrlk9iGWj5rs5ahJMRGb3IsYMe/H+GQzBY6WgpaczxN5kyvdEscD5pViWTHz939JgYEEYOtVldnjkbbgkx2Iy7uQC3eU6JSaiWk9Fdkhd23E/ziFajEFVRgf7MB6FvGeYQJPCLIQf7uM5zGTopjDX2d/pahLLFkvdt9frV7d6+deRRD8kSSdSpr1MH+QCMoxVxp/PVHPxpAlizMX2lfqdnRuKVIextI8WzoE8h0ENHG3craIS4VPa8PDvj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aLuBGm9capsKXxsKrIldOzL1UQ5RFa27suJmBA7Qu+o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gQH0oc26/qnlo9ywueGVOhc5vTE3Dut/41qGPiGuh1sZiMY5vf6KXCLQl0z8altKoeTF4gcyPswlse+JOVdc3ry/1E1FeqyTUNHxtbJ/ZX7BIHm8WQ8pGvTHdH2is/eRS+SIBWa4l3yC53zC0CL/EHGtCeF1E67OpG05Z4yhiGsjoIH9BD2SNr9pFA2/h57M4vbPSug4lohCUD32hHXIlO3kCi4CuZoud3zMLAoyP+GmnwHh0Nd8iV49ICvFAqbVcgg95D5vHe/0hO6PtgY0J3zP3A2OAMBrF0zzMzRMdr+2dXgx9+CNlboNqZVVfMBahyPjGvbOeppNwuCD/bwOPsdtOIJ7bXyjsamTLr25GTBWJMlV7+/GHepDNhpdamuNnOCxmf3sI4ODkQcJrKRG/lNwysaW1iMa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aNLhnM4ndhGo2Pddb8YETDPfdhk5OawgpchkYCq5A1c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DZRlUV1QXH5JTAhmsYkwBSrOscrC/wxzIS93i4UQnHpUcnS1u0RYQp4goD+TvxiGdmHjmATibVX8ZCGi9Y/GaEs0smwmBqTwvcrfMXR0DlNzZEQxPh4l6JdXF9bp1eMOOeUlLnJJ793PsJbUm+F9FoBURDt8Ax4iIz8TCSYmlheNQ/DJ6LLxcioJtA7kRP14Fm03h/72S9L37BXR7rMfJuq0g3p5HJ9s10Xr5FudbBkW7A2KZ3R8JUlZuEB3puVG16OqD4YfShIs10RXR8RDK0dFYbTLylTzs6t0IsCjNXnuo7HeT1NumPJwycXbqQAr1FwAAQnMhbw0o5OB4LLtLj9xOCQsJj4JHEXqvB9oLHoYXSy4Tf6d3LzZk//kyjl+GdcHRmXb2xQQ6g3HYGvo3OHR+rwKp+FA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aOJjFU+pdmldfJRANIisLrJVQ7YSsgwCjvxQnP/GLIw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ft6s5helwrFabiPQkjQ1g5CLGVgAsluXyKVvQhtAg490ZkqBxid4V7eIehr4qzAQk/VnNpT2MpIo6XFMhBhTQ1Fp9VPN7a6LqjhwT2T1ovDrK9mcuu3z/FfmZO0jX8gmI85N9uz0pNmRaFzHx2E3AF5WAtAu9M37wVHGUdo/P6fSh1Bbb9uG+JzLkmZuNH7DONGe/wW1zQnjgh/OjROSC5F/Wz6hPHgfMv5EJtTh0FD/NVu9Y78RP01zrdi/ip/QSIKDYgkG05wKjr6+1iEXlOJxkjUeaRnBqV3smb2y/xaL2razm5jQIfvjtltdnkI4AweEHpoeXHHYMOR9vyMDGlRzp9w0faogtXtvbTXsOY1YeOYNdPlTrC2cGrfGnMGiLccvqsmi1bCQuU2o+RjPRRS1F4L1HXik", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aPLYDt3CWGuBLHLdKRtRvGmXlUTthRFmyas9M4A2AcE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gFmz1mmiW8abxUZevZxQi/2JjfOCtozcKZ3q12Fvppk3pdeZRg7NbJ+I4OUoSILpRc2OzkKq+jxr4UkGFRdt9r22UIc4RhpqlVWtulLGOR3nYTzChbiDQnXkOzHe1gGp3yiq/3vOqI40QcJyV6PFKRnXYBHIYnlw2R8dLtsIIJjCUv7M9nc3pMgZyhjFd7gU4XchKho2qpyzGqZsjMp7juus7IfmyK7SOoEypEHR2V6qssuwLuRkpRZZlhsrRrvAtyBQVLi4Wny9Czom7I6GciS7PK64Y2YReIRrSyNnG63mMvfVGdN9OHbvM22qZ0geiOZRqLpkftQmMD2+hpcUgxOWnrlATZIi+an9Ujru+Igo6mitO3+0L8Y68eKqLA8kdLywcgRKyAYhxm9hcCFkppnrLEqoQHX1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aPW56JcUfWkWPnA0WeKfLqA98FYbxLfRWYQtEqaQ8XE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FybBYgltKbRldgDz6+Tqu+PhWzY5DJmt5rhEHRdjvQn9z5+1yRwD6Oun5bpjoTLEU0dIaz51gYyf8NH1wz0zL3xskzMCGO/2oaimkHwGnTaqniPJ8yKw8vfbUsrzlmT+MhXobThz2r8hF6b477VNSLMyPKnlV6m9viwwVtGG64vbUHX4b+OAvLm6aSNKItX9lkAslXXUTDsyx0zZZjjHALLI5ZP6mmD1pEib6m4Poc0Pcwj2zLA2kGC41PCq4WNOeSWJ3jjItX7hNk/WEQJRmYMfuy87MBqY+CqFi2fApO9UM65yLApeJcavSWgxrhpButMeILMopKZyiehr4o4eecffaK8bu1I0OenZkh0N/whtg2YSisxpl0ntCUGKrNSiwvP1vnDtD+gHu0FNYcvnL0Fkjho3YzDe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aPyX8zuhQEU/A6YQM+KyhcGL3a3YOiZwbiuW/xz1iLQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tPfx3vf93UgbkWc7r5uuo3PabyZwdvnuupyY63RGeYZZBN9VIU53kRkYYfhEdvIwS5RKyz1/MuTBx1OCdXLhlMx+dBq1VeqEB1MIkRv1JQaUeh7z8UsUQO1L/YwK3/vTCNf5f4zvmYWsshKItpKqUlTWq3pPK38+sEyiSaS8luXYPzq8r93vt4b2LSUtF3KRbxebG3fLHJrFMTUpvzHIUUhTvstfaW0UpVAd1xgY5tS3c4nIGNnte/oNKS14RwWbVM2JAHx4MpTWvY8794SGkDBYSVnG+1oZSOICDEtfoi1goKC5g37FUHgeCN22SPN3gC1zwGWqn4hvcx3ttzb2k18E7mZy006M0H3olH+tlTtObOIWBhdiC++zs3eCihuxSk9udt3Zg1wi0Xz/NZXOtodj1zB7Ccmm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aQzJQJFCEp3erN8BC3qZBU81df4/oZrTKuvLq4RqNc0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tcizXJRbH6QsVsh2jYTsAjNRSllgQCmwUHUFB+gfo8P9NoZOefHcyuHy4yg8FMbns7ievJ4vwvGwNvxsS8MSoe9cyliitSfLJUyk+O7uX4O/CP1ncD8z+kmUo7kGyQDWEsGRHvVmDhqUQMu26/zQBneOpD61sFFihLyL8I9LB49bpP+aMvcPcOKElOAWbCgVatT1fjqoT/ojTz33fHECIQKSssnlOVSZ9j7zuR5Hvi3aNgED1WKOi0Mk0WmxVTFqeGci6ZkVldmqRpoOh7ZaQIvpS2kmUwwI5ncZY9PKGvYSOUoq+ZANay5d+ihVRzr3JXR9X9gQJvCh2534kVkcK7YHAPZ9/4MKEkFrwmdEwC486wmbI7UlFSa+BxjT5Q3hKAZJuoHhotTmDGKJLPMAFJAHA/KcLHVk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aRc+W1P1PgixI4eubTRwi95TQB/mh3Rzs7vdEu/K324", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LvZNff9EmS5urqgjyNuJ0JXenjMLtIUTXZvVX00NB99Y0lpAOXeKfzb+1fmExskfoIzGf2Ve5oHj+geU2bcP0DEAgVIxhY4XSnfPCJ6i7dag8lbPE1/TFpYC7nd0K80vPo4Ng3h1JbcRlK43OYwa8t8qLP3zgZLDYcdvqem2zIfeJRptILMQkNrxBbqXhtFbRf2v1Mq7Is3m0rXXA8rJQ9VsORqcalfbwwV2f8gg1OcOuzq9p5IvltrdyRg2XGzE3EzUcS6dpA0gcHgbgTjpnW+qc4DC09OdttIedT6bP+tjPSDD4Kuh2jpXbucMykMlTT079Hsp5fsie84qiFcS8e3BAjm4qjJEnZnLEImUuEhAzzaFbPEuryUQBR7Rj89TPK0tyfqai/PmwwYrDZOCXPv3+5lkoA2L", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aRlSdK/llauHanzbMWolIo0IvuRrNBXcZxazQrWMKP0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6bWnOTgQY16JplO3QhTfz0xmwImBLcECYIarrE+ZTe+8EY2+/ozNlrDVXeVVkszG/yu7CtNSOm/gLjr1PoE9cygk9Tu+jFV4gxwlzg6B4WBVUfWb2x8C1dkslOxktbN/FROXzgMASqsDpNtzD+0/XuGxDoGpJA55fG0bqaVjSK/UOSjAik4Rl7qIPiMJWndXjXkQDZZHQHDeJhxHOT8SPwjHE5Wn1cerIpjfVw2U6EniOng3mBQTZodin8fajc/EX/lqPwwKH5WsyUYwXZNAhMlL2EZ6IY9IV4jeGDuA/NhGPxbL4jKJ6TKdMd01mt/xpQxxJa85EZMVxwJIYdDkWAkGgHrgvpk3w+gm+ASQvwijK2POt2aWiC29I2uCXunN8FIxoOgj9NMO3exdQ4mIe75eORLbECtl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aTDwosqRz55hK9bqNFWugEs41tzresqc1dO7d1E2hig", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6DTrpy1GW/XYukZD7M1MyIMwBgeWuqLZI2cgP/YEn2Fvt7V/HJVA+Xa//mxUheE4cA65nSjw/ihmUwOj4A52oMArOG/jPJCEsQmv6bnuFp2EAeZVluZOroCKuOQmcPxkv3LyJvQZ0UrpBywlEvOUOS1Y8k9Kmmm+6rXl03dTxO6ZnIZwHWseuyPsStpODColJ6PQLi54vxZo/cTCG0M93h9DB/dWMdZpZe+xRZJRRYOqjSB7dizmGydWcel8eV+IBcHqpNf74+n2eEQa3XM/1zxBfEeGhOItMeiYm2ebiEjTw0yg+KaMBDfpuHkzYELKPft2tdAzMq402K6En/QO3bGu9yVKh4Or0BizpRv+aY05zN6NVor1FxNDWY5hDb5irglg9w+hrZQAw6VgeipiFbdzac/5h4s+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aTJkzxdZpjdyFW0nuCQ83AJSa21ox4HgDtCq/n5uWM0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s5Er6sDVrlg/4ad3H2Z4OP1WJRsarBavfVHwNiK3l0i1kIoSKzx80fvQjWXZKvlFFIpaCgACjaOqDgf8TmtE1JxvSU3Ra2y73p+748hPLVlPgWeGYTfoBpv/xejSHTjE64bQs85wtMvk3lKWMhpzHUXmrkupjwygMVZXUd4+TDAEgY96bNWTbDUqMAkhnGAf9O/ja5l4XHD3/kknWuo0OBiUjl6oxRqeKque8v61N10rWnCR805nblXvZ6Fd/POdQNSlh5JPMLxKbLOxM0UUW/wq9qceMuxwlgCiFY13NWEWKkiBxbI9VpnjGp7k21Ts6YN+QX1lNZEvi6+UdWn57No11NUrP1e7qPNEf88g360KvWTLNGCqEpqijhH+VyluzoNQriGb9vTp7n1XZi7tMLFimNp5m5DL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aUWCIj4Q7ROQR5CEJ256j4m2Mi/XIllqsHIXzZ0W7dc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aywKkiMao13fok3z8q2onqENKiHf/WEzzedE6iF/qQJAPo9jlf6B+0Unv+r4WGJR83xxjxJ6nlusYWdWDLF/9Ps+b9hIGYP1hnXG1UEe3Npd8dJZG1IBUX/VUg2xn/LFTnSd72zZsL3K4lzWX5zrbJDR56O618DVVAYlA8yZOrqCUIZJHFcGmbZ+tr4YCJOpw2tZczEDC8DWLUEe8DocaZ+gKrcdduSNtD61qBNqLcdINO7Sf5QdoRMiDvAvZfA+vJDAiUWr53X6ARwDZBw5DkziVrmYU1fc/9ciJ0b/lweW0hef3QeV4YwQfQ8hvgINXtzEwNPCWle2ze4s667m4oriQhVNP7GnpmYoj4lCEx4JaH8uV2YdT7rbwWeLPH3qrXp9G1Ze8Ga7Pa0gFofLvFX2YGuEaYra", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aWIeIRAW81UcuMsxutYvKo2rF1y3yG7atk/r+RtjWQE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x8ZRZXasScNk0IoXnqgv24W5NFeWZfBn11+Apprs850KvGyIpZNEF6v69wNWm060csGTn7SHJRFZAb6W9RHoYOZxO9pnCpk7XGFOH5mGFd+EhYRx/qTCeoxEOZtL7cU0kt4xinyQdoJu9KD22IqQv2hfnK1sQM2jcoUJG5cDs1vQhD+5tZ6B5O7bb3nH0L/Slv70+JU+wSs0XR9klL0hiknor3ew7YfIQOs0FjdTuuVPphO9cNe9BzL3mGWff6IutwWOtFdXgV1b5TsmOXaoBcLAv0SX1QxYVlXLwqbEE1LjestKltXbM0r6lI1FORSE31tcSCdHCfTvbqhelIPqwGhNHk8fOod+PfK53F881D2qK/8iq50L85a4ju9SvoqPRGaGxDz6s2U0VsaoRMlz+toYymEYz8kr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aXVUf5azoRZew/YhNLD5jD4bFpE9RwR38+j1KRrH4LQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8bq6E9nmghp1EPM5sElkM5GS3xAiodAxFiBgO7eR7CSTQS2Ym8YIB8T/GhC2fAS3t3SkB6l6PKukIK9Z59IBQuiOOnRMK/D6HZGqLbtkh1ho2WAz8Zbii0lPuntrsI1VEKEh6Qhj+ADNT0Eu0Vfwz7MI9FajABtvhYTl0MBt5XBpxl++olPkyc6iR3nwx5MJ6wCv5oROMNMHE0zfuq3T4n2jlPHIMJQlu9LN28mOCr/oMID0c8hPdZ0jC5gVPFAsFXS3MVzgwK0bemxePCzMGlWwtvJHWFR7XOTdqItgpPIM+eQUSrccAkQYbKZZqfWuGyzo4WAlsrv9U/aJxnbS146OpeVKwGU+wnXQf2Bv8YrBM7eKq5HYM7wvwHpQxIniu+9F/v5rR4aclpDX+BlEQLoK8JBWeQcR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aZTwTmbfzr6QVWK7hoekmtLGwadcbRT+3BOHdZ4Hhzo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "59nDp9MvqIqo1erEbDU8MDFfSni71ROXkMtJ6se43w4ZxaBxVE6M78LziBs8/8nigrifFRMdTDCB+iEQ7KMW+MdvHSX5EIJLbhdTXqts32Cf8hbwcej6N3zLEdh21yFhqBiebai5KNVdIHJ2ls5Q6ghKVr/wHdYcIFE+IvxHF2wHJm6Chuz1sxj/5lKjFeUiVGWMRxXf8HQQmSuiDPwm1HvRVrl5baifVtUPF5OmYrfKN+yDqQ6ejKxp5Lbglg0eo5w4FBvtMxvAWVvIdp2Z1i7IQmw05G5SRmxfgDV5GkT4nFrEIrX9ISgNXBolQCa8VmPSclYRRLAh/D6Jd10x+vQ2XCDAnh50VCsNvQyQ95mVKVt+oYRNIsB8u7byYQscJEhb9pToR2qxH/NnM6Hh9lGxDOKNZzfJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aahdqbrkUnP8tCNRuCajl4vGhP8CJcf3ot4yiiLwIaE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1BQfMesCVsLb7BJX3oXh8n+Dhd8TISpqz7A81cvGHpUIWVfVJT5zmFZ3q8aOYVvGLvwIoY1w10D+RU8aaK8EztFUnLfx7VLsLPg9V7BVFRN8saxZeu76v6+BgPpgW7HwTJ9e+m3MNr3UvM9AtxpwmLQopOWCjF2cK4NNcN2cxuGWd1CuaGFoQXrIaPRHTy2yBwvlS9icPwJDPiIRV/KXw5wbzb7t6LgwPpqjW6wP04ZxX7HQvXP1uKOK9ZUojD9ikFjTfWECBy2E5Q8DIW7ZDaDyGax4vB1sGAQzuOcxeu/qh7KWTdDc60l4cAgrx3ULAHS+UH8MUVzzuMCNGIFbs3g2y8UTvobwXkEcq2KAeccXqeCSbxnF95LD1PW5V+2PrvuguSKbqHZ6cM2YGlWoKedQqzqWazmk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "acWGWV9cmIOTtYeq3KQf8YpIpDK2Ia0rQ2xjslR7Sg8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eF8Q4t290l2KDHGMx/Eg1dWjRk4D2/vxCU8/sjYzlLKJMgF8DlUO3XXxyHWLHp26vs577zzEwJH693iOsKEAyTLQ0ihmY/5YpD7jJKVbwiolSVCvxM8rV7tqC/EQsWtZ7mIsGODSJXGAWn4LDHydUfCq6B5aAFqMs9wQHP1g5HeP2XjKbXLnNFMu5iEW+Yde3vl2Y004AfXtZbZEL2zULC8Oqcfpb8fnMzRl5L8WOh0lgkfteL0nqmJi2oCPEBIi4BrnJbTD4N+mQdv15u7KfXtjxrizoLmsntG5BLyUA74wObrusQYBlIZQ4wlVDEUQe+s5YKa1BebdHxXzVDu2M4MP6lH/kaij5pRyKwD1Q36mcwxbqpUqJjg23R/Zpenj/3X2GvPh61SOoI4C7H8oLPDzAdUJNSGP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "acuJNy+Ees8hyERd1MZyei3JjwlBxGpGYhpgFUAUGHk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GCse0SpsM9h4I1UH4ESgi0FGFTyhqffymQxmai7jJH1kSrZX02Um8ON7EpJa5pJjGB4zYIwbNwioQ48wGPN+m9TgND4vJdy/uJ4wKDoDWGcmPC4Wl+aKP7lI4DgkxyRE06jEg2xz9IO6gg4mX5yMq+kiYdMo6zbrOUxBj0keicfJMBQQelB10WaqmAwcjGurQBqUXYL4ixYzOz+rlLEFfqu7kUEk0xRbT651IYUnG92vnho/UXoezvh9sD+KB/dazxUSm0eIKTr4eAvptGAreHSohk+yGNAbh0i5+zwLXLGxNA5HN7q3RzVeZg8VToISuOxR8aMnY+q90Ef/vkALO3AazK9qJW/u8jiT/jqB1D4Smo29uB+0Sc8buOw5kj0rprGqBNvp9rPjqBwuo4GPQmww9GHhJSJZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "adbwdqedvQCTjHu0ElfN9MaglTDWTeyNMM83lFhucRI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oGafFQf8z8D+LqPt6aIpnatoZnfXvcwADezEIlFsF7/E+rCg4+1ehb167hDJReXkZ90eQdePntfpciJuu02F5NIcKEH60iLxfi4ZWU+85SB2w0zHX9zyK5UfkgwZHjB+2VG3n2/WXgW+9qP8HwIEmYLR3s66KyIqjn6sB9GZG8kRzpKlJKajWGgU/k6iKTkRtNPWResQ2OagnVA+dRJkE8BjLPqGxZwETe48BmUeRDzLUtlRZecl7eh9fnpA3iwRtigSI5huCrK/mr5cwfLuqktl4BH0z2FsJZd/6jhrYADLKgZLgKDoov1rUyGuateLmB+ur2tSK/Kmr8FrPxlSvAilqidM6Su/EKoLMZYuBL2CHMhUa6wEmIXMLcRW86AZamnpK+0WHv17nBv7CtvrehFT7veuw4Rm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aeRhgX6EG5VvDbpaLMctv9KmT8O1uc3Pi1yiUU+qwC8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FnquqS7xAYaHGele5s5do/rm8PMrWipiQ9UVmnUqSEoX0TWXnmLh8pUL6mLoFOcEi6UiMcSfYPLo9rJ8fyAoNC9vS/XAFYagu7uYFFrMKHs9Z82jESe/mlzPM2QCRRJIWIoAQcvVyL6815rcxNBbrOJVioMJHxu3R5JFgi7ckTcDKtakEz7swvmntgm5cYvyx8KqdTEn9evplUyg0plX/1R/dnJbKNJHo4yhbZw21NXyK1ciE5mZO/wPU7+YE3Dhb7AmfmqPjAqcvo/pA0J+oKWzMn+SNUtzhNEs9ti+KaC1ZUX9JvwDFFsjUoxgPEtjccTSY4/3VO1FPYnBigs5OSZhzwmYatgPOAoGd0Lv4pfRpCWoH20A75wJcAG38EYnyA1i5YRH/tvipFYbKuCI/DKcQ32jgLRB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "af6xCvbrErjkv0O2XFKVl0gfhNUOdowdhUDxjWhJ0BY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W3T8buxwLEPRDEkVDx7xmyhjUxltbwET29OGeTtPY0b2lKbtCm1MlmF89lLX0MyssoHXgqgx+ybvjK4KURmvegDGMmHhHaudOJh5mj8ncJVhNe6YF0aP0Yzjy4Ai15b1nmtEIfSN1bN4L0hzLGtGlAg+1A2co+MEwwDE4EY9ibgQOhpKUw0BbhpxzGeHtjSFsQYSI501K9idCJhnH03R7INXZqAtJ7ZqPYgFAD2bHlTMNoqC7AchHHmIhHHh0nmrfDZBmRCXC/PnI3+yqoLRH8tqmrIChXRPxy8vJ24IVLFxxavTr3p3Aziv1QellKm0LZary0wiJmBRx30O/nP2un5KlO/nPtHBYuwUCsnS0cU/sd5irsLiloodEw6LSi3kNG8uUjpV/hypSQ9ABvSmuV3w+w4ClWu7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ag1+TWIJrVW+vDeAzcSYnAR/4mapi3WwrkjFOVY/4RM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yp2vzUMCVTFNKVfyn0x2pM/XpVxslMDRGDmDHL0fObjSDVVr3rSTanK3yj8gFNT2xUDZuZ1ISIUk3wWKUUCEYR7ImsSR0nn3IJV/1tDDHZBe/K62Mvd1h+LjGfc8aQcm2iKa2/8QDXJJBFCxO3KWf02YMV7mmTsnyn4grYz6lWi26psb428ePAow/j2KZhJ+1uSAaemnR0maH0wLG2GJ4l2izwh7CxGiCFco7Os6T2lJhuSGMNLWBODFG8Yi3uZv2dLZ6FRdy0KD/MYWNolxLuvz4GGD48BRAFjzJAS5cawhl492bJApgbI84mIYPNCrrDdxiN4H40girbPAuMIaJwN4t2GQCQbgIY83QMMqLhiMAawhvjqywG/rzt8a4xUFKhAOtq9v3Syixc66Q/RKopjpIHbyWCNi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ag1mHU/PHB+GCcOHw/pVdtRAVdJqZIOYlw86a508Kjs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZmfJGvr5iVLtf1JsdPhQMoVDx7ZlqCfwsZIKjx6HxWtbjLYoDLrNxb1/LAhu6Ujq0e+NJFcub4dXjCj3S1d4NZLUM3iRyTyB0cjdyG9a2DgwnNNyHtyd+XBznAJI89BgoyvTjn6PSM3fe0hCjsEGFJDNiJOt/OTGxjD5W9unvJXm+h+aJ5AsNkOv3dAEoLWyx5Ud7Mir1qqRsXSL7jwewlgV+RjkboptUvhLt+nMOVIQTks+tcdLkPxyZm5qDySla4h96ep0eo9pzQKU5MhclgV5x62w2mteOIpjZf1KJn4kPl4IqJePxhc3uLZ5KimByTxrKVb1qWGc4cIHZDqlWTuNLHZIN0rvtRAXdHh9iIRC3urxafiLLe3VQK66yxUGff9e677lqSXKsOsQLZUpobhUU8BvVIHQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "agIQCDRgj4h9LZxkyvYez2UPDqHpwMrWw/RqJhj6Aaw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VUNZYM/SbTt+hpO/Fe4cO9X8RrizfTLvwQ6ThtxJCLKppePk1zj7Eo4l1Fc/pA6RYGiJwYbJ2YCQpI5yawow698IKOcRsg/xfnCnNLJBeG/OoAl9zm6rS1x+6bqqTimIztLh/5tlp5O71mZ5w40lqVz8S7DfdFfZXu2kOH6da91+YpG9mS3mcdhD9pkXqc+2n0tHF6hhEdzdrhWR03mVrzWDE3yVE0VsotAQTsn/bifFkTaCV8cSZK1QywGEDdMdrHDmljN2n/k/cs2pOk36JtIiD0jlcYyTGyqwD5BEy44Ll9FbtmiIxdqls4O1y5rAAk5LUotajrhD6EY5nu2BuWQYYhhwRU3felPpXHTjo+nPeihleOPcN7XnG+dHywRar2SikE/28ZLhq4UzumXwy2aQdQBsomEt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "agulqoqEEh/ZhEc65cbeD6gBy7qiKbxCPRvqGBrZPqc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "02Z2E1en2lAMnfJWojEvxfJKquTVu9L/QBWk6M8xlaQ433m6MkMd15TiadeZ7yVPMMOUPBjqCfCAT9jXNJW9eKzLbYjUnqsekZ2DDxfZ538UBEm7hJzGUonT/HPbTfsUfal8eScTW7nJANgPPUKpo3ntda47xOKDNuKbv06WV6ehWvaNfZNYsm1ty7CNLI1kCmJMhRVlZXaeyK0HErQf0XjdtlHAt9iutW+9ULUy/ZLWcxvKgbxqs+sPgYvwwhszPK/THnrXQ7MLunU8Yf8RDBQ13wjfzuDRg+HIlF1xivNvoOrPZS98Efeu3o9TE2yFsua3KC7XZn5WXMbjhgzwjA4T0goeLjbiifvt4DYTkXYOYp6ssWcIpcXXwbxze9IAGe0RIpmQL4CZ1JILQj/Rj06+iG9ksldy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ahIbRPXRaDFLWJa3Xec22VpYJdhkZceImq3o+Uz+U0k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DKue21FwbjetYoqw4q/eJchzR/LAj0e2QwsDdrSuZNAywya5RBVxaj1CoEpYtWIxPwIxchJAuQZ8nPSxqm17FMOUMskWFNHjrESL27u/4/sHZjmOM1TsRdEDY8/wwb6WGLZ+Sadj8xnAZ4KFXllI3pr4ihnPBG1RoSj8tspFENO0KvwJyKM32/aNM/nbyNfAKDLUpFxNv33GMOMDsDdkoYcKJiGEZK6FdrLekC7fHMxHfd3sHo1tW9D26VX+P07s3kek8PkutTu3XZ6lviEI9rn0c/3eyhkSX/B5+yAEb/KdQJORr3L9HwP6MJS/oxEol920fEzF1H2m8zOMfghB2UWY3UNXYkhFXOpoaCj4BjbONannU8gEf973ePfZODJ2AW4qT26CAievhrejU7yulOLe/hm6Jbow", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ahPQR5HpC9g0zbyhg+QYRlnuNXAGcklVHaSRKR5etio", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "G7sCl3Pxp8InSx7ZRVgcuxfXvp0GO7VfVXdVWvWFJZvOGIG3ERKeZVmb005v/l7sspr5CPN7CH12ES6CZcNlg7qT1z17/XHPGsnOWdtCWXfk5lONt/HeZjt4z1GmD5/+na5/aJG7ja16aLlxY3ex/wkFyFO/KXUQNx7pzhkV+cPWfHIG5TA4nwunwVGMkBtcyazrpTojMeD1sYpLB5vhhtj2rc3jq6POSahwv0sLqLZKa5fGVey2Rm3RS9Hzxjroqrn2utGaIVIqNT+eAk9Qq/ZtjBHWsHauhWk9D4ZTMIPn+otSl/ljPjHjI0RVGdl9elPg58MBy768M6KQM1zcJzfJkTG6forqEa9h9eX4+SMOTt4TNN7GxNBoyA12+O0KiXw9mScpuFoEcf+IcDUf6QQbi7WUk582", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ajyjkrevvFbm+2hAyUhfHr+cSLRXPPRcgd36ViO9/Ko", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wHVpqww7I1RjprkUc0g1vq4CDyZgj8Lq6ur9eBQ1Yp3jXFt+nVnMEh4XJ10Z+WJnfG8muhv9KdDWcCeg7TSzfZVfrFTV90dXcVR+i+eybVagqCXqmOupbWvRzuEn+ls7/WKizvJBnrMBLQ6zy+YXy7BEYXv+wqxamFvi74fcSFQvGwi3sOLobjjY/n/3oML6hjEzXrdVplzertSNfQzo4A14YSbTPCwsLESpeeLTzaL095TBgnX+tRtx0Lti3ULiUGMnRKH1f+FMvahfQhwbueFlszJ8tztwbgCzO2gJXkxzoE4JtB5766g/DimY9/aZjPwiZXVJzVbdD3uAsSQrueaX/1BtCLV7H55+hUXR2XvtDvhvsgM4MIxBfvpKTonHbo4QYUorog85q9e3M+zpiBtz8Ji5IWUX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "alxBapm1jpfapb9mcWsDG0RlcOslMoVbgCGensnPtMc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Pr6hEJTf0qb8Hs+6r6/v7Rv581CfzuM4TLPzi2rxjEbJ61iWOHslU/ThLawIbYo4UeRryPvBLDocr/EdQj8ElkXT/cIwmG0wymdLUZdf4fc3ra8/c3+4+dmhUaYFOIjpaGlAvGQgesO7l5+oV8ET1SaiYvFHMC3hm4rg3vuDkeymkdzXOkUkYH4a/L/Hjh+om8kVAnpfVXEKpMZXztwmfB5z01wlbCFT8pykIKjdYK25rcK1rB5fcLzRjTOwpFhm7JISj8/nxXGnJZN86kD6Z0T+G4xlRklTD9T+GesdnKXjVFz3v3dSXFPW3yZmZdxcmeakYv0wpQp3l41Hq2ZNfImHMTSbhA088FiCNcIccVz8B2EHozr3m0xLHX/tA9xq5jOgKZAqFBsQo65GO+obQPdhCOQxv86M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "amsbAJ5MOPwIhnD8GtWqPIelA2xyGgGwImxG2DMlvyA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pY3RiQXgdarLGE7CvCBMJY96GOTXw/RUxq27DdnhipRGQdg+ssclXyepm+6xGIMqip9dSr18H2KxGCjKr8m72VBOtqzKtFeed10OEw8K9MtT44DUsPuUNa9Z64m1TphupPxKSCyA4hjTXZX8ZcRf913x40UBQxK/A9rmF/t3x1sc05bZaSizTcnT2Jf+D+FIUW+U/Q7ajdxIogIBOEK3eFHopsmQEXPdylKzwx2o4ia616iIlA3pQvfJf0U90iwNCLX/d0m9zqSqs6R7Ye7guSfs/FBMJFddJsGNARtw0A+afeiz9Yuap90sB7SVKygh1gYGAw8uLzNGeKqrA6mLaxi6+BMc2Irshd3McM6IrHuNH/aIxkTFBIUH7TVHmZhNIjcPd9dp0uZgobEHfaUBeyNBYiBgp3GV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "amtNT5xGd2L+f6HYRMZTWAsOzn8GziIfSO2KK0QNEuI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eKBkWNdXUNJMt63nEBbb/8JA/YSC7tOwEVcEolBAlDjRv//HHOtCJEqCQGF1Nt23Y5q4IqJm9q5qbtaDshw9Ps6sCB3cc/KxMZ8aiczwAMwiYKqWRE3FuGUe7Tjtv/EYKpMHN8J3S8Xswr7raQj2aMB2FYtSbO0sUtxP5yjshh3PDMEb2nAi/dVinxe+hIQr3fPlDrY1QxQMfzZOazv5wzo2PiNEnDYdx+/y/H0Oal68ROHKFMy6PeB6G2Xxc5XzW4CgQiJoMb1UP7rJti/8nmQMukT5cfhDXHyk+WQbA6L6HKiweR/9UXSDIshqM48pwtUHbZQtskwvwoa3IM9xYPGSrPeMXqOuZpTUtw2vMhmzowochCGUVILg9Z3DkVGSdXCr6D+yI3j2JuS4GCflNm6fY/GWKv8Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "an3KnCfQHogUyN8ciUsvEuxjFC9/jQoVHJlkZ6CqJlA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BZmKY4jHr85n3cmk18Ra77BYFuN05u2bOqhAgccOGitpXjZuSHN38lE2YjH7sbbrhN3+sGzme+1hEVyEJT+iLNP6m8ANr/H3E7K18EWa/M7dMVhlyvzfJCySln1Jh1FTl2poAMoR8HyZz/pgkA3FzfO1k1hUDSfyf8D6y4+F4smAEw9Dv9jkvLeNAoVnRAyv1PZ78IrHArX32GLNSbmzUxRrp/nd8fYPrwFT9EQTEZp9pwZN4OBMzcuOpwc92ad3nP5G/ZOxnOF0A7QTKwPxImN4J5xUXYRvgOnZqI1YJDJLr0UoaDoU5BOXgUiN8No91ZDsGsTcp0mdbz4qM4F/AocPF2bbZ7zRruZb2ydNdwULR04KlGV9djyebEwOe7eh4J6Y6RptiwbxhHFyK72nCj66/adc2PJI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "anAl+mNIlT1soelbgI3OmkKDoELqPQ0sLAQQ8dicQgc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4xi1CPLB/2AnmSHd5jkWahYRGiin8x55Nk3zldKsx+AL+y2O0xf1xNe1+ek5TLZ3KRlKIjt4mQM9cWPkzh9BAmJfuIJj01QAqBIEuel/c35A8z9wuWZjp3xDdwX52yEnAoaNdJerg7+GBJF+WG2QlRb/JqCbqTFfbAcENWpCMXI75nFSDyaWmjf8F/wkKAeY5B06PFCFGkGUZYDj7WoSGGf4vOkKoriGdXBT3vjDkHzK6fMOSYl2rBeHJXgMK6L4tMNtLUzR56OaFu0O93XlX/IM+RJrViMBK29hkVyYypzdbETfWgb992AInpAreyqlBVocRhXtLOD5ys/QHMr50WJFGZ8tFnU9eDJkylMbVitNCR42VRMxPmvRXGdNQcWJ3KbKXzSWw+vHLLWvryl0JilvR3jjVbII", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aoS36vN1KmWXlNgK8/s39SAZuXqtWs/GTRi0iqVGddM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nQTe0KYfIyl1/BZmEnU+DVEUAiKBfRQwqRhZfR8htOWWq5iLvPRKeqNsEcXAWNapKV63o0PTWbH9wGYxZZipsXmf+VkPVx6ksMXp1Nad26urGe3h4OmwP5MF0zKzufF60Gy420B3r+brDa4p/PFkpQLSLRtSuN0i4BROvzfQGJDVwq/2loHVSMo7I4xFaM1h7EIjlJO7NAleWVTGpBHhbpT+y1R7kARJ7cxvvdA4ZzPvfcTtssVrm+xGAPNeyxUIwRXeqcK44oTOp7VbURLQ1F0hWfvFaPG3NeNUWm19WKzvOLH4x0lNExfJN99tVN4T31hl0FcIjwwjV5anzQOtOmmPfXyqWiqubMej/pzMk3epMKN3/Fun+2qpKarjz2xNRM7QqSorI6CD+D/tvKRAQkOHofwaYA6L", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aodGTs2mynYDNVhLwzIAgg2Gnk8Z0dBpZe0hknIb154", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0SRWFQSMzCg8j/sHGdQsg95PKhaK5b97Vde7lXwZs914e0OnQ/UJR3Y/XFovFukiBtpiDMc/UIsPgyP8V3Rh+6nFQAVpZy6+xySOIXW7Qva9jVf/NNqvg0T16V82VP8ekDibK4xSrYCJORC/Rc/5yDEt6ljTUeRxBDq9phYUBB+MrUgdXaErXcomeCbJ/qhA6bP6uHnEVzzDsIXdVDYH8qWuLI/3iIDIiiSljcSeiB1SHoUOMEXQTosCve20aSl4drGWn9koixacby7sV+fRenSuL8Egk9Mu+hER2m5CgvvB9Ct9Z6z+PahH6pUN9HiKD+DB/r2uxkVZWR/29U32dnf4QOmRWLuB4xi6XvldBvFxUNW1/pH9/ZQGOws38xS0KXr+e5m4cmXz4c4FPLkv/Ozf2pE8zcTt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aoiLBEuzg58QDrjUuAO33LNT4q0wJVeVzCwKhHNVUGg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fl2uj3wyk/sXMiZVJmJxFPiw5qP3CqO8ylfmc4+5zF1feT9exOad1D5u2SptewjzCWZjcqTkJeVt1Z/8ANR9MNCtTIo8qa5fBZ6iulB0A+HcKTW+blLSY2RYNQ83lsy7FLvdsiln0jjrgIU32Qpf+MdVtrFStCQZ7i+k33YEYRYCqrGvu6Nb7BuY6xg3ufvrxjbkV/dmTKd+LOE+EA0D3melOT0p5bNPClB8V4avM6d42r3J3MPj7J9dKLNCWQb0xkkd0kGYn40FnMdGEmeKAHeoNBzWWaAJVwzpOFzvfONQLE/46hmtwJ3G6ickq3gYPfcF96CipuaIvuroIpjwct7VNzUBor4pg19urOQu/Du4e9nikEchNMupiwvsUd9Cy3f23VHK/RUoi6Ivhk7mdErs3pPjpmub", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aqDq+vwU6i9y7tlJTeH8U/YAz39vWAViHLEkfsdysV8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E8UO6O8PPMLkLi6ghp0bS9KBNll3asQj54TYckbT5O4YT985U7QDV2Q1mnwMNsdPHjvp/KVGVlmXHYw3OAwb/WZcPV5ar0Z26jaT1o789STJuk4Ttn6T3TlmosXbTweJWKi+MiN9o3mEDkBrUfm++bYOx77/MwsfRj1atl8tr6LnjOl4+taGhcUzT9kFSUMa77SZ6QVRcG2tlZ2+fXMbu5E45+ViConZ6taQttdY+t+uVR5EYA79ZKXZLuEQHx5gf+2FQ2IyTdQStqu5mRVxVNO72+NaWHECa6WTKc5sC6ZFU5m1Xh+Or6XqCbVBH/llYzFHDmRGy9LiGV6kR69UpD0PfJ/Q9P/z0f/SnVpdcyVvUSMzqHZlgwBOUUaosgO29rsgWhDZZR9ZbYT+YeaobGmJP1pSj8LX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aqXkSlV0oxkBBjAxtQJALUxRfuHn1hQH6LqelgOMN6U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WGxG8OKLtxdHvYMMLD2Mg4bOxtGu6WdR6gkaYRx9u7B7TL5tcrwZ1KN71QFleUNMnaKGtr/bUhSLSTkSV46IbP6ZvFiSHE84iS2aHBjdb9gmbu4w9ip5Lv84ECSQ0inKrDj7pz+B3gRW13HYCGIyUy+jlj5UbdUEcM9v14dKMKRuLLX7JIzFMV4jf+zSMwO8+c+skBBlF7/vfvWr84yQDOQGurRJArPSspu9co4WXu13lgMDUvev8lfZNZUXUCqOFzty5Ixshq6qCRQluywvk8oCEH2jh2zMx/8Wo2fJK/M/npBcBIyIIL7+/YErWtxgKy7JJQL9DoWjBDlu7NTXiJQmftwmTc+6Y1IGgYVD1RxPwgJHQLLnZjr+Wmdjiw1dX0XAYe0RJY+5v9ZYdyUq2uhttKins/us", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aqZLgjAxai1Ww4/0ByFIsio0iX0jds0VefscxQA4Sz8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "txJjD89A6Z9AOotfNQmwX4pj/6VBWUh3Xbzd1bLg2Sdqfc4zb2+bTTkhwDTCViS0B2oh1iVaVx57KHYNOWLon6kaWBEX6vH+cwFBYka/Olott8wQbc0PT2N4SKcG0EsZB67+eG8nPse/wqNi882J2wAWeZ08ItEte1HbRK1FM2prxwtiVL3P2oggsJuuIARvJL0F+N7lmi+4VOgR/Ci4e8HDgD1QLkA93ec+U1NJYzBxtJsZK6d80hF0RULgHoCW9HKoPrBxjoh7cN/RjzdT7rIIMSdltCqcIyN5IQS0r0x6A5uaB3HUAbBxN7nvILT1jUF/gRlwVkvgkR5mkOxwpAfPjQKnIIJfOi/xa1+3KUf1tROPArHf49yumX1RM7BHPF4v+mF7cTOmt/8L/YxKkHeTq/88D+g4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "aqe08kmmCK3VNYigKb/EllCgZR84BW8WMl4tXjFFmBs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OYCx1mjTtjmADVM4IuB4FlSEzccmCzSBlXilqYsPALWVa+9y65cWyrMwo3BK9tah1NbgbbA4aZctr7ezB5EoaQf0PXT7tupPjNBaOv/ITBY0aeUbwFc9PKFMiLJ9x9Wx2oaMDmZnY+gHmB7bqNH8ZcF1Kwes3ZjT7kczMytsWFr5Wo7LDwJ7HXZlu1ReU+JKvYzpATHBgltintsgzjel12SwF4vA/fXzURRomU5aUcrkdL0KmqQO6/XAlJWDQwq6hg7C5vGDMGbs0CzRBcYNCeBpJTsRrLf90CkFOWSszjoaVCNu8bEVsM25TLlYp3TVqm6EUpR0/oqhdbZGCT0RfCXNCSuMp//OHln0wxL0Ug6vMPb0lxnoyqVRow7iekBQTmt+2Wwx/rc/1JcdnO7Pzs/W/jGoLb9q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ar7QqTroDccRTnORs7dQRdov5+Mdki0wSoHG8HYV2OM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L2OD6NEWQNhczCUDGmDTHa6e+wPMMuSrsyX0g9eH8xsIlGNASu0v9L1M4Nle1BHx8p3Xkmzg4slRITMsmZ38fFOXglrlaNd1NE4n+zpLaKvF70aQ/rcc/dK/PDOH2ynB2xANkB790ao0hc6wNa0/UmrCiQw0wwn5MmmXoeRTAni/fA6+aLtoVjlT/qgToY1fg3OCoAVJZ9Z99qxceGUfli3UXLx5AeL2z3PliVY2+v91zEM3gH06BdpxdjU41lwGLxxEVAPhreUdJMlRtIUhRwhgf9IqyOIUzVYMrbaoQOG6y0DxUCYiZMk3Y6QH7iOVkdSDevjJUG59jqYlmrZ9jsBLa2OrhPo0+ruMo3Ft4x46l+r6WSeYxD+X+xuHBmtFrBQ52qtzhNBe8XrwKgIoF8fJ/xJOigLO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "at+4A7oQhwfQC6auydYv/hoCAWjOxqGj05T7VxehHIs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ELc34hEiDP2Us/bGNYJtYPxmLO+7w9SL+W4IEYCUythjijjNFzzT7UBdYp1UO2WiUUp+sNs8kRAp0Kg7E43kRA2hvQPZG29OX8thwJjveLGGu08SCjPv5lpg8of1A5sY3EjyOjAkbOp8DdxEAEoUXnAnped9j5sMSzqhb1fST4kMx7dpbRuBhYGePMkKAix0jhy/tzx/t9HWelebcuIMM64nUhgwAIKOM+P91x01H+VhqRSjg4PfkR5RTQYzYC044l3BeSpTog4dM5UL+wY1eWojaE4u3mc3EEZ88xE51FLfPvoA/+sNCNJd6mH7K/wRF72hRDvXl54sY/olDFBcp/J5a3cw+fARmVS22VHDUUjeJ6FQNugGXirkEpocJ6zTkae04pnUO5UIXpV62AZOZZRTaZOP7Cxo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "au8J7HLt5LUlN0KZzKfOzM1CVokr98bawBJRTdCBoO4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lgcNtw2MbFaV2oJ0WdNnakbrmksmgbiH7P6oANjRX6CNu/mgV7+2Jwp1RSNmCaRInVfJaIrxF7NoQ47lmg+Vy9hzBubb0M6j7Bo27HkUxqtkoWexCqUpRNAjdgVsP6ANGwaSIVw3K0SqRhCIe0lra2ecoStB1Nr5j+VIAz76bQdgL0HEg+n/nAX00oUytuumQroDnzZcp7ibukeCqzls3Sj5NXiV/yuXHk5AwKZ9B5F+RPQ/jrhl9cywnqPZYudN9UTEbA9un/Q94TBXk5BugpoEyTfFjaiWvUMsCwiuDjgfK7qWj2cjqQpPYPABw6mVD8KuMJRfwI5ki1mIXLpbjvR7jrtD9hewhwurM/bSqbwT1BkQgOgCqrqHFx/rQ9F6k9vl91Icrv4XUULXfeZsuCaWajp5Gxr3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "auLP4byf5OvEP5YsPRN80P1tCboGWQVENSqr2i1eqUg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/4tJbe7aIUoesO+zjejCPm7NAz09jK6LBr3MeJf1mgbFRG0bUKB7OooBkO1+pX/SGgy4siNNWhhvC+cKnSq/tJdEr9Xv0VDINfCHdCi0ZeCwC6HDMfoufvEJb250iPHtB1qc9ak3RAhg00WplU0/eGBIp0saaZiKmCAsBwgZ538vp5Qo/lOg+thU5IoU5shhNd9acQwbbW316YNDuIBey5H43V+zT1EE/0AF17O4K4gw7LlqD4QA0h49ShHVStoQ5faTBVn6XUOPsJbWqM1E4R7NRompPy5d7+75VECO46ibuwJCqEcXFN71fWl4mBC4thaIORJu41PkbGte9Xv+V6CT0aChEIaZ0PRqwf9BmOqLtF4v2vTDzY7UtguYcS9rpf2sh5HPKJPz5MwA1Iu3BtySjbyn4Q5g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "awyuf5TQtFw+1sOd1qGi3IsTA5M6PQsOwE2wsdgLzUw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wX1qV9MP8XTMACUFnvgmMpQ4YyTaW3+2rdiKy6m9Tny8Um2ihVgol+q3m0vAgfj5KAg0jacZYzchZjer9+mkSqf7C0U9ElGsFJ/qWOXELIrslU3qMJcMFLsk7h3gGdaZ2ZvG25b/8PT9Es2xVrjI3IJVP9q1UxyHM7Ge7qIGZsJMSuGJfIRoP/cspWVThlnGOtSVdVah1pRgM+q4E6D+WUczrd/dXbiiXk2ESnAyCCqV6wIXOm5DfyzweILCuovgBpt7pcfZF9Au/ctShnSLWSb3Xgwgshm+z1n9XkMXFPhp4olL+CvkivUTQU7yooa5hJcZNR0S8oaZMkRpEgNb/5rhOSeOfJMbihFHmam2GeXpaSE7Fyc1OK0h/rnBx9smNyPBAYmBXQkH+lEUEc8oOZ0xi8IvlKsr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ax1qvY3BCIzW35KZVL3CSbkT5IEs2GtB9z2IDQeHoxE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WGb2TVL8oK/8Ap6pu+lZXNATErG5/9Q7WRMwZDI9CBn/HcVisJ9L9hvWApUOMJMPVa2ltZTO0hbZErglskm+j2lTWy7MV7A1MtQ5YsqRWu+XbyY6JMd6M5jg3C9+atjCWV84Hzy7iJimBdWXijhO6+MHBSCaz78S4mzcdUiP6M41x27nEDphRw+ZiFs35Z9kJ2q2wJ56+vsA0gWerqY89+KfeBJU412OUhMWacJ2DsqBIqB4pj9zxjk5S54UWy0fr8Nb6pC+4kfs9/E3Oh5APcmf+YTA7l4bb2T61WjfoUztEg3XcTlZ95HwgqRE7Dc4cg3R2iKRys6b952ngQPw0+3TuK/S1reERH9+/DMSjuooujnHzl/DijAQbQ5Jeqcj8JRuExuNgQDz8lnnPpR/5HajS4z45RRw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ay1UBCDxjzDb4eRQrYUcGc+kLaxhOFzEn2iEx8lUKlY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+tomY8enGDbeK3VA2SCt2m7xsNkfiPLbe0ZqBSpxwMHuRAQdvxq0dytsr2LKWfkEP/6mY9LzqpHN3j9Sgb5DE7HcdMhbp5WAEClAbU2GsHMVUiuKY4Wox0ztOtXAIXzej4WYSo/NLfLtfEQ+tQtQeV9hSdHgGvasPBehHpGckFYFuYYxyYO9dJNmIhwxOfc1GgaKo+15K/2f1bLvCclItxG52yvv3/rqcs7boH+Y0AZM60dTz4xaF70tFVew1OKQ+t4MZ3r26AePYfHhD0jgJ3AEGoc35o/sVHow4te8z3zGAtk+JPWLQKUEyvam4Y6WN4z+GNzX1fp5Kmgz07n1ENeeBoc0lkyTPjVR0Q97l+zSGoCRJ1W6lzinCl3ggUOTwinkrUADpvh+P4QcKePPvpr1M/UOEQNg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ayyltI9HbrG/lI5l9I5LAFCAblYn7thN4PMQwE2hHT0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IqpW0HBhat2bKRbFrcrI9nMjx5ftRw7WKIIZecu6xaVGHfHhCaMyBb5kENyJEgjWF2iy1N+g32yiLsPSzjjMWhAV1/8hZwO82Vto99b8sFOyxy6vSOJIIrDSWerod4tNDosc1FHZibtOrkFtXkVfGtnctxqodb/U/SYleVZ3RZ3BXKbncJsb26hlkYkvEfXlVbnYwu8v2U4Cp/+lJxA3a/E3ZcR0muC3T3VvHMmpwqjCMv1Hd1eemEYrHVXfu++uNfG9lctnQ7G+wU1U8Q3udsRPrcg1gsjZ/Uhj1GRT5RpFeMjdsSL/Dz3VyS/8WuzblT8SCvN8rpp5m24Hj0JWfJqRc1o+Hx8MbzakVR84R5/1fPJKUUmaM13eWqP2TsT8lXWVvYP94TTpHZYqKzi8hAV9gPchmibB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "az5bmemI6BsVtWRCpFd9KfW9PQC7mx9rEzKZvCLNwNc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "p5ucBsqPTXp8zlX5EIYw4sSQpS8dqc/ONesUrkAlDhYg2Y7V88qDs1lc2UzH/BZuEFJ4SKmLKVLy/VW7qlgaDPsWtmffKptCm97zM5Ph4ccFu04i4RgcifKYbq+E6IGPcRyONLs+mVrFb/SPrxOcnC75yB7t4hreBgcjsaU1Z/RM00ZWAbYDjF2hXwoNMVPibOBCszkhdyhJh9jj8UcczhaEiFu7t562diKfcM80jpDOfUl3F2A3yIIe8sv0X1F38g3WnHl5WFb6W6qE341mF536ZmV126Xnnw81PNxHvfjoDsOk9DPOOvCEHnjJk/WIgbOZbt5ojuIlHcIZX8kbw+UaTRS7fi4WhwVWyDzqr/x51pY0XT+dqo6SxymOGY9c5juzn3s2WZdgufz+B0J/P2qAWYY6g3Ld", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b+K9E965jkNEBONOMIAOEaq9uvrke1w4d5/0U7ajgvk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tfbVSCfcBVHYHOLol6cyD2hkl296XuV+LmHmgCNVoXJ3yZTWjeX7F1V8ag3+TfAJdKNzyUnEOmJ1AVKtMg1P2ZwRMmRS1fV3dHvJgv1reNHruMSCkB6iPp5plFyGYuOgeurUfn4ksE72UnpaGTPw7wzlW+S/i+frbF02GffMMX0pyWTKqUyIcUKq3r4aGZ+4QE4FzSOek6BArtkjflAqJtx5zs/3Xz0kY865dLhZVLkGlT4cMpfGVrgqFNuNtzOKu72izfbP3zIKWormF+J3RUDk2ZxjuARqjv6PCM101itmjRC7ZVtz4hxPRBEJQbatmqzLSFziiqV3pL7dHfau4z57UIiYKUGS96ompDzGCYEJK1Jd/ZlkQwAIRe6OjAzTsdv09OvYaw0EUrKD0FQPGvrYTOLCz0C7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b+bSvCgd9kDh7Qk3NkCa9JO21ss/RZEWV8CQwrbHl7A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4Ovo8zD4nBqc5tJ362aMwjW/nDUQXlgtsT2+Mwx8BxFll5oCQnhSeqv8bgmto9JK8gvEt1mgpWeCu5T8vNHhTPv+1oNg9DEuAPe0ztlkLv44q786+5H4L9CVjCAjIWU7H/uivrKRAx5uO4/PP481z1nG56H8eQCnQshpS2s1EdJqUmzHA7lR3A9XWp/zETOQTzcGzzYfdoVJeER3dglzs4LuoRHOhsh0BKOU4eMV3iJt6sREqAuG/0qf0l683yFUuTg/8SvvWycp8nCdgwsDXGeaK0le5xGke9Pa3c8o/DvZrOu3emDlNqZMWJ3C1ePSX0orq3V9mgijET9eWj7T6Ku4PAoKP70Vmul7sVbU1lvdReSziPaJ7EwclFHDnMWesoPzdLBZdtsAaHdQv7HRfVGaUW6y3QQn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b/1jcZhD5F+Aimn3U0TFGGB+BV+wUOIYl6VniONjS8Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pazwiObymfJlgHrftNETIujxZqvude8rdA8VLyqcdJYixVg84GJLdn3PKrTvi6EXQudXUW+lTARMlO/1S7OcYmErIfOrOi6w1y+aBnCU8H0U0zwuCuHYvAjQnwZnJogrMQ6oQxxP16pq0De06L2EGn1+qSTBiidnm7ML8fZZx6pzCHyeF4ciWRhufK0xWGnWEpUsT/ENPKe68qFqC87nKjJwwg3yx9J24ABE154fqFtN/Ecoudwgctr9NaJ0R5PdJPhNaaPbSHQtpgI36jHNf/kbmp9UQHArRA4uP6WERnDwAGKtt9JImuF+vSslr5s6N9t4xoAzroGH+cZb8ZNCOfwIplVYFaXHfEj530Er39eCmuxxV52WipB/2dFSBx6nl6vjtaCUl8YvSVP4ZRrDIhfNuEYukd9U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b/CEsEie2ncEhXXt7TqWaZsQT9+LXL3JXhhxf+4k0yk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OSSqcO3c22mWnPs+8PT9lQx9NcC3rU+jamXzXQBfqNXC0IUemOZM1Vvawouk8B3SdMXO5g18ZX6kA62Iva8Wiec2Mrlsro4dTX6llSvNdeH2w2AcJOBmFdrPi0hqCxyGgMpa9aEETLeKnKHClyE47n1gWh19pQ8m8sEh+NdVelL3Io4ppvXXs3obKLA2Fb/7OPHOg07+0NsDmlned2jkjrSJpGxY42YAUDRB/QAF9HCkQKg7f1kuV2sg2KBoGExRMrfGDcwDoZrHGLOSeE0J2hfq/2hRk+vNr2uIwUmIgYIgrjQcYIL0SRk1Ol2ZwGgfB161dKZMAqLiLKLxjMFwP7Xe7aZEPfYJdFSGQTWtQoCtreNBDpDHaHURTsIiQRztonP8ic6g3rE6b8D5dXlxSNs+ES2M/bTO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b/dtN1OOY2+JLky0O0kP/778yGuDWMJ2Rc5XcgWpEsQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JVx9Ro9MTG3uIWi1wRGdUUK/wRjV6cleOCS96kWk5TwIzyOjdYorcRkvjfePuPv1R6HD5/RMhwLIqLLQYm/UBmWZ8QLmeZXWNMfskurnjMd2k3RHykOLV2CVqwhW5f5VrK115QLq0e56erphY6IwPMI+X3/0W9h0NFTq5U5EfD8/gs1GpVFT4ueKkejd1kSAzK4Anoo5SaTX3tM1KenZ0f/GB2RiWHDJhuzYxF/5WllZe18FUcUKWuFBdD/5XfikDN7aOcsSWX0kusAIC++N94Dt8OveTx1nPlCm2AZomWs1SHnl2q0phumKgyPVW415RfZL9wFXR55jCbuwzAvD6zB9FkdlqAgAjlVjAoZ4j9sRtKlnL9oeP2uELv5aXG5EhnBqCB6yJHN4f15PFnUUJU46IRK0joHW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b1AhhD89tAm24YbeDuiZXUab4O7GL9pIO8majprDSj8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wi8ImqPjqi64gmfsRX8PnkLkcCcENKQBoaRa8d1QZ4iUacSqJ9bSCge/Uc8gExSy2eB9fEfO0nEZ2rnX3CpDGec2OvYfCZqexfdexSb+/8uKmKUGJw2Txjz/HVgIeteyYyxYqiv7b2PurvmB2RLDjBZa8WVGsOymNGv9qYrzimrCGWYNt9B/ipcAKEfbRlomXI1k5xTVG+qOU5Feri3GB9kGiWq8ebJfMBI7pbyqWItJs0TwVJiBmWMYcNi4uqyKYToyxvqlmaBqkcvhAL+apfnggQNWXuY6nDNL/fZbFIUa2PFKjjhBrbF+J2wrZaqBFDHn1E7tf9FX5UpJo0tKuMLkAAiGyOdadnzplnJxvepnxbeRRay4JsRjkkjWQxgtJK9AHEZ6FihCo9CzO9nb7KEttW9ib6t8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b1H1Lv2f3X242/2nF32H+AEVrwUE49t63KF3+XyJd44", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "15d4V3yevLLwTwYYmawr/aG51k4Cuz8n6xEekn1oJYOX/8sahpbsZnJT5ToFfrijZcJhwdwj7PL2+3T60zdbVdn1iGuaadPWweg2LrHnF61IWJ/9IV8zgmYP2OU0MpDJe3XUAY2/cpWE+50az6UyhW4poxCDtkRVhhDlqM+T9fB3dQEOqjIgDQhgM3w0phothH8hmNxtdZ2LWmNkmi0H4DGwWI8x7UCUlvdAFiL8h+Wj3o+NrUTGF3lOXNu0E8+ERvHVbqVuAFdTl2ODzoiUHFiC0SVOWSy1oZnIZ2OY+49Iph0H/0M+Bs5+S0S9YPRZ8GLO6yLVcDWaqZIAaCud862PZLvW8sq1Lktwo/Xkwe20AjHBEjykqBsoxOoIalQ3j1HbdeS75II3Ac+KWYQT5pvDQJXCKbXB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b3dkyzLHa8H6K8aYIrE6e4zaRUCfTpiOuEdZeHhWNIA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a6guZgT55cf4urHR/7oexTVzebfhVQEnx64L0OhE4fWcbLOUzvQ1O4uCAUijo5KNxnCmN5+U9pRJxWli9u/yaIRNdw39q9kvoR3vjYuxleHd5nJIXOQz0TgZAQhCHJzc0qRxJKGkpMO/QDp0zlif/Ag5VTHRKi/kPDOjbFXaniMJiphCjl1EQqFehLHEpT/9gA/PBzGmxWQB7IpEAKXCARfBlts1SlOa8BX00CDPJDT0I7KKA8hLRElOvHIyvtbVmGnNGKU1iohuwzTdnYWixqiZxijL3q8CZgeuNn9E0VqLoBJj/qIhoWnRvvIRYqbZVmIM8rUg+7BmrXycOWnp2sPr4wEsALx2jLOLV5tYEg6y7qOw07x5GVGfgWtni90Chx5s/CcA7cx0A/FEY/GtKqetROD6eYYZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b5HzlYYrMlWTV0pJliXH0ZHCfisQPLVWiTo4DzlbR1c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eYOi6/GVU0m6LywLVI0uV6fkZLfFRmTNA9adyUdk6wfp0KtPeOaHeDY/82QBkmV6LOvg2nlN0jeu0TJO4xx6jCs09AZJbQLBrkWAs7yKUphLNPHNlJXw6FF/XgD1/8fuHpFkvcqxpCLkl1lzo15ub8WFFMzrz3NsT52J/mOcHczSPkLtdO47QSluA5lWhnxphx+5Bs8g6CKMNdWIR+9Jf1pEt+LrtvwyXdcnmk/Y5SP7kzcXSR22EeW371mTSzngDqzP1xRu9pd8iXjI9KDJsBd9OuwDjnSoVspN93h+AnKZiDE5wEksZvpFROh1wTjVLBCkdBzpFtQYxIGsbYRxmziZxMPLbsmyI30o2rsXDkfle3aJhjwmmf9lL2hIUdL0VqVhim8EMtXOp+xwz73SD5Ft9bykBqAi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b5oN6JGfniTMjrZSFfw+V46f6i6NzPT0hEL5e1r0q/E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eItNfRop7PI6XLIlSuLG81pqp/peGn/71kXrS766uDy2hE57tvkSdfYAVFjztS7OQ8mI0++hlxH7slmtyhtgcQMpBurrz3qYCr6nkMoVvv5t0qs0rohQ5sC2RRQLv0iuWDBn5ZCbquxoxHHjmyzjUkAWn3gVjGEaSYeTXsBnvPRAUH7JdHeEbSzrBljsC0j5JV7hJdyUAGbpHL0a8MWzB/lX2ErazBPQ8eX6c6Y/ayI12/z2zfycf/7JsHxZOivCLLM+GQj5Ml6KUZ73epOnotsEojkkGWqfIBzmwnymMcWdqlT6TQo7dq/idUW9aUPQHbLaaQp/BumdIzwyNMbQTMzYE0vut4df+BHQwmaZY0L2P+7dtTxcmY3KBX7BgdoG2WzCu9sRO+nbcQP3m/QhsqP26kztQaJ7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b7Rpj/ijmII4Vk5FP7YKTOQtXep23ju3If6KM1rUJj8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A0GgeSt1L1rOQwqWjF5XFbYVgsArWoLaYKvnURfLb6WYIxGuQvI8+v6WGbZaNFhYomFF1AwEHp2/oRf1cUTDkBTk1fPF/uH8C8FjWNl7KHy6dUN8/hEi4tN7YSVP+g6+UBj2sSwih/esWmnCF7KLyNkEZLYbEeIOrr2blGq3XCpqzSt8/qujSNPbO7ozTImIchSzFykeLSYRnrac+dFhKBcVLMTg1kc/cJB9B2cqJy+haMthGGubPyXm/hO/8b0eK8dDEF4OdCDuF2miUqViWTsxA7KEsLxQ7tHQThasRqDlvDEontGMjyt0P+qg+JYYY4CoJyk1fqWXP7DgR5Eve6EJ+lANwmK+jlB1Q6zWsdMdf8rrXqrb4aAwaRXG4z95nj3kpK9hmBLy6UiO9r7GCNnu3h/z7iuo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b7d01ZEmgpuQMXAvTvCxWFzHsLk9Ewo92nE4vlNqTGQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1qPoWtZiW2u44hgKFm+35QQlIxzrGkb2LyJocmx60HWOmp1Vw+SqgDIC3NMXcipNCBifXsk1l/rzs1d/OgmsIoxSK8cjnAgeGDqslyk5Rj2L1pJgkZzjDPfIF76EQmyiqwcFFytm4VVeZCXY0dSSN+DZna+ZNG3vqK9s805xrRUIppLHznEISKNAN77CPi/ivGhdEUBd3Od9eO3g0ZdW254LufAFASD0MVqIa5485LM4g5CvHq+/ySriKM5MFb547nPFgz4Gv5mS/a4sx//ho0YhdSK53C05ZsvcdWSPRXfIDGATE5dqMEYhawGEYvmvMADhwz6/2IaKg6atZQMm9pSPs7tdy7PL+luA8fS8k9UifplwlFTFXMyBXR6RDtQQmKALvQvn3GoNpqwhkKb5DiDYKHQAM+X8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b7qJsdZh3jdp5kV9fFjdbxA/iM8234NOPA+vuFRWSmc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZMOgi/IvpVXNVYlalL4qd2fhEcf09ZCeMqa9bIReh1ZJnkePv4xl2Yocqqg+OutdJl14IioK2PMWibllmR+DutNV+v4qC/OCLoYO8f+XP0KNxIcx3RaziQFB2y1pSMEnaJFTR88Xz7TK9kYRxDH02l5eAULCXm7LITK7hlJvT6FnhkWZIOnL+41d5c4X2OifGFh2PCb+MaBeJtYgLxyjIbVxz+PWWIhnNyQVv1NDegE1a8wJPd+JcO5u/3ltAabQ8mGfjTbEBrc4rc8uTlfXHhEyndU+t2wkqic02YucnGPUT0A2l7QkYV6sGbLj2eijBQHJS+BIx1atq4WPeE2dbPKIA9PPbxoHmTXD6qMWlUu1FoFB0jTgV3r3tGAmcJs0/+o4iiz2uGaCus0bXU3/PLRpHlHu0TFT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b7uHzyIhf8Czwy9VXT0JD+L6hknzk98oYLYfkkuORvU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wa32EGg4rAPvAON43cng4aWLcHQN/whhNi22/eWfr60rdHwlORrGp66ygytuMiNknPKAcOvxsOpkVY2Nx6/G/CNr0ntxVY7ySiNgul7Q7kxtUIr2JLbGg32Du8EtSVi8RUp9q495XkIwGTk/PXVqlhiCyV490iJeBwhrGcppuiZ/DjXzDEShBHe3Snqaehpx1fQ37ouyZHmyoGk4CM1clVvRl1FMuS6ie8g4kI+aEgGvCOQH3qXdfkAFG/9WjHPGTNL+0l24jFNCcO2n2QSLMsjYSwH43Aao36xrOzCBmtMahhf5NhHiEc6wFgj692x0RVB43kp91l6v2vJe33KW771wb3TYknwSeAvoHyeiXqLsBnVrFj+JHKcgsNs0oiKEbq99OaSCYNrFZAxC+B8v+CoCZbfaeOqa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b83tTDuzlpRKBZkFGwgtp7VGVlBzUlI6nUIsZty4uUY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vgRgSzaY5S8fi8xb77/c3squ7txY67gNSo6WPXO5PZwO7RP2O1+LdPv82CTIjI5fEYFdcGGoVREHu/SRdHSLYUFI7JKVofDSBxkacwdXrCqBGohSQBV1VIoNnGBxBihg8XNHIppmDPMd0O1vvKjoJctXHxTb4QfGMoOxxECS3ROG8q0C5F0dq6GXdpwbdIJ/AJSPNMacuejeJvVqYoHso2BwjGhfzN/S5es7n8gGLa22UsyfXilcW6oC8+Es7ndx/Mv2p8xgA5pw11U1ZSL5Evc+sfMQMOe6Zk6+Xp14UdgTo8THOUAqU3VV2eY8XesxQBDQzc/w0SoVvbrAGqtG85Acy7P5v+zHXdITFable5uLbwrXyu/qxldLSD9N9FTU5ZzDzzGjn8sTYHJvLD86dRdTX50dhZZb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b8b1VgSp974wxulrn+sBS+9eMPKGWfdyc77DNpvah40", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "obhx0ioDqdQQ3dpxLFX6TpNPVZdX4XVTFTEqUpDyOwDe6RhmGJiPWr/mpBq1TchBNfxKtRn9MNE1PIeW5K4wSvEQL35Y24Dv2BeiygmxgFGxbri9ipv76+z+TtM68g18YMO2IGCPAemmEVCFygdrPvSfoFHXJQV+Z39lw6JSrQNAfgkn8rWq4OFa/HBr3gPHF+t5EshvVqCvun9pLsTRFxtAcE6eN0RuEfQvqHRuvTkmcRs26DpVlxT6jdIK8kEOmCH4DDI9LkGcHvTB1YIdlT70j/NsWxC/73tHA2JHIcaSke2B+XR8BbPWq+s7e228GwQe4nXed+vQQPFQDIGkambHrDXR6J+Ygq0CX+zD5iBDfoA/b+8vTbidqJnyzPy1X+hxDk4vTAfSforsUfHMuXg3O07NTiVz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b8jnkD6cguZNdwJ1c/S20HtmeEqhTSwXy/R7euCYX1I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QqRBvnXHeHvcqI+K3gYlkGB8Hxxu9cPSFa4IPScAUxs+iqZ+aHtoUtxONp8nWijQsguCzSMXLR0a6rU5RKOwAKZXBhCb4dQTBw/qs/Jh1VywqYMx0096rjlSo4J2jcIsDYQVcATAoTj4GMlKZ5Ck0IE6JILWdA9BejtEELNSWCwUnc9xuA75+yF2MkP/CLyp1zJLVuqWcZ18aN+PdAus9HFtQ9S8tuxAOOi2+0l7qvIh23bOOg9uiYwR4kkQYmilF7qJi8QfmVGvNTN8VRNZU3be1j+rd2PJ1Budh0I2ZBkyxDEMH2Kz5+VjxIXWg9DrqwPOTUdvHeMifkZ4p3GSMoLu4FqSbkv5rcJA6LwKvRM7VZGfIXxfSANPpOE0iNQi0EsrLyWpYkh6FjQboGqMhogSJS7cE/os", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b8vZAQMNux3GFVtwg43a8JBP69sx0LGgCngQDeHxBO4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ohXT+L1JDXp/AZichbpM143/tTAvQ19UrIQhNl9NYZgmrXr7EL+R2OaXng7HLSAowfH1r/JmDVGTi8PqQHRGKGcNlJIIk2YqAotHlunJAG7CNsYU5oKuaVdAjx67v9e6oRBweZAjC775slJJN6xKQMNH/B9TZnSIolb2IWXZ4Ta25/uABe9ef16iP/t4ArNkutkwvY+Uvp4MYhkvFWy9WWNFReSRb93LWyxalW8dtPgfNY/CLDtaK57UsdAGO7eIG9QSic6M3Lx6qV7qrubKchVasQU5nAIFsIz2169eOiXaBbAS8l2aD6jdkysYCdToRncZFha1Y/hjEkYJzWPrfMHA1K5CDDhUuDutiwbmnncNKvYDoldOi55Mm3XBb87MiBIZy/0QBVA5GxQCzThArLo/xHEV4ckG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b9aYe/A69RVkLgr9OBAB/S2/21RQdaTz/H0btHTMgxQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jTNh66HfI30o4rGmEX/Wfpi/uymZaNNZRn3WxYl2AreM1wpY2JCyKWGHbQhPIWfFsRk2dk4lgCB4u3IOzCBxyPR7GkQrzP9Ar1XyRmAH+VhRGolotN3bZIDO8GmVRd1acXrcfXh7J8SozGhA+D8lPz4u0RELN1hHud5mZK8xa80HOyWVtMNbOBwh6TJEUttekdSvJgpLKUkhWy8mpBiqSRFzANIlhElJkxsy6nj/Ybxtwlu/5pE7KSWff0aiBSjbA1as/naYJLo9s31RRKxHE9LAUqxYXzq3mo6jl+qHIvPcDZspzBzNGB+BBifhTbfI5HvJqukZdgI9YrJcFLH/SBH2+0FsyxzqoUiu9JIa9HH9Rq9qyP2Z0eQucoO7CHTsd2wJUIHxMm/edKg1eJ/7y9CVfuwyP71X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "b9dF/Fzm2E7Y8xgJwOLJ9q3Qwa7OiVbYMQ8AXdeQb+g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "U5QyIW7jrWSZiE+2sMSX4A27GZ1a1Iw4aE5k4ozxh5yV2ohmqqjImrxGdJOPko9Rvnske886PKCU/jI4cPw5NJd/Ekp8cvYmbKo1XS9URN3cfC+tKRMfHUbidsPMvwH4ftbmvXkAURbanAGV43ixLcJ62/pz1IasC7KnDjtH66a9nKx8T4VxjH78D41UD602T68nROfLzlGYxsPl3NTP/dWJijcvAEB4oZgImRrBQXJ51KXp3vRAtl2bFK5jjDbfJ4hSeXXqHiXeIOJ3gedYh+k222Yr3vMXLheoGg6W30lmAVs+SPhOZAhyy2iOsLVPUjCy+H7gL2pkT9LjzO1sVTgedMwsZhGsYmDau6nmoi8vj7qdQqVszpHi6FFjcqTQ51+WWZgE/+R25ULnhPXuIPbTp4kwMSVo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bBQvYm69YfJfUxO6JLw+ldcrjwhPl0YfKLugPM8YhGE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mIcCD6ub7+JYdK5Is8cJJoBc1817koPnoV/970EAyiriu9e/ZUUxEUdRSa6ItdAhGM0LnWUedBuzz1xkAA6yj9auAbG1jPt4ogofDHOePNNRvH/j+2XuJbhznxFLrR7B/UfVPahKIromiTiM87mbenpKMpwylQOWSkxRuclZIC+isBfBKFY2ZbklRKBr63DmyqzWE7//xbxBj29Sbk3QwIIfowgX+1VHEKAivt3FscfiIAM7IjIuWJC5lzniUXRu/Ety+UuVFaR5oiX7naWI3rmQl4cLRV0LzjxqfSsh476X6IjYFC+93WX3XRcVTeFZhEIYxhkQkq0waE3Gqs77EJX/XDkWskt4opWXsXfZ3D9VxLbJgb6vVe97O/OYnykRSThQqX3bl86Msz0uwK02Kgn4NHiUxSD6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bBlmoYR+UFuWETEMqvKvTVAEpMPJHHVvhequTD2t6EY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hJZ7hHUoMy/5sIIn5jNRb18X97HL3F1u8VzZfBU9gL40cZhpn8W7qednSLzOXB21nhTMJnD52iCV+uTjAdiI89JU1M1Ut7gy3B4ywPPBIOMJP5pV+H3CG8V+/NDABJB932HKeMryEkhjyw908GULlayc/G2lMen9oF+wi+Mkrh69mrXMEg6pCV5ozIXGV5HGmKfhxf2FzYmZUXal9tPFga57wdbWIKZL/0KN1tP22NPz2D8L1GODlWMO7uE8T50dDUMcGtnPqUJC2uZBLHNayHATneptZ8fy6DQaX0rq/ZQ+vSioGwAcoWMcOwxY1IuOg/L1PNcA3xjM/cG9jqRZT8VzYIN1dPPzzoBrFfrtxbsqz7SEY7xXA6UX/tkHij/ylic8AvmWGZrXHxPax8wbPA/lPtLY9u4/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bBsMTbrbNwvumkRFzqDE/cVTZoNdgeDR2gdlvckIouo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GPTzNt3VvBU8cBfAY5pDsemE/JZBjw364Ke1SLvHXxBAlvgVr5tzhyKYky4yCEkFnxR6oj+nhq3G47g2+Q6dg1TQRIhEi/YP2fFCmKUlMu6ksN8re+nSu6VGNU3qxDIXfhyvvN+ahIu9qji8QCHbI0aCUdDyoIB5OzIoE+dOKzmEIj4C4Zp2nZPq6cJKE1tL0u+7bsqPF6mmWGpBJT179z9sF5kmx/iJVUxhoDybGfZ/194Kbx9XRyc+HcWKWFQzOJtax3J8HI8oHHMjbG32JwjVWkQq6jusydlAmd66w7gisFhqASMZRjALgjZM68R/mig0WenPvaOTriJmbiiOBSNqpStFplyUMaAyGzVNqqIze9gEs+DmKGamxoBfbyqlRoNfHu2TEfq227NdkmmH9GY7kYO5eUQl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bCLZ5MNgEklaJu2DLwI/EQdZmJ9MhTm7F+bxKoUK7e4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QZ35R5EWbH7nWdcS8xMIcPRFmpc65MRSXiRKwOXEsQvhiXd5o54nzBs/VE16UIe9SnACOra23IGnjks5jX68O1ls/JYuxbR96CrKHgxWWiklzO6K7P/CWh5/P7L13wB0xk+CLeCTolnIDksZp2QuAHMaC8BWfVoXdjT+6ibvMy08kMh9RR7AgJgKw9BvgKvSI/5iLlsiAFYQbVROwquOj4zbqrgieA96GCd5aEshERUr5NDHZ6rpuvnZoKUcc0RiGn47K9EQJHwKsDzMpjj8v7GRf9/0tiezI4oIeP0YDwpzCVKFiuDtGdwWwPKQMyLk7IPd5oXhTibiK18MWhvCSyLURrAc5vf7Xndc3SSuhkW/LJLkLL8O+hKOh8VME0vuxyQ3TeYgv3op/3JkDI1oKHWX0FQAOKZ7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bDECO8VlDfaH89aoINrXuXSGLamJ40Eg7Ipvdd6Hf7w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u/sDcC22lxTWbUpkIsEVE4GRDQPuNM0rtXVvRfjfz/ASAMuQNU0PzXx9Bv+1LLd8xObJTszrfjsltRCvziptjG0A8lSmx0CORzYb7iRODqp+IUntT7TRf7QAcoEYaHMq77he75NoOSqpr4HN162onelnTS0N9lhfsNwKJ3hf46k5fJajyuzyeo8gMmjlsrSuWkFXyTWgBd7RFOAoGdNRrYAHZv+L2EuAPaBDxvf6id/1cjlZ9pjhAeWJ5urQzOuTXyOKYd5f73xuiM5uJdbNCztX+anrroFAEWswRg9OkbxlqBeYEr1pTsx7OSDCGOHpDpXGTXRzxr4uKCtwbhz4r3qbqUWoDUwQSIh6e5BD9oVlvzEE72P/JMyA+cnTemUodM9fuprwnKUWRHjRhz2k0lKoLGyiiJio", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bDjJVOvBMPAF2qUciSIR7AoSid5BarWlJtOnlsWjWkg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2vy6qrCQNpwfhq9jQZ4+ARaDg+txGICBdRrPyddIyopV3NUz6hZt9aBimxnijs5zq/Kc1Fr7XL0hWQPjRHNuNGa45t5mt/wPrZpN8g2zblADp6HCoWsI1k9eVA61lwI6sB+itZAapRj7SMgfU6hqI++fm4L1bMZ4xLVtP2xfohFJkF/3ytiyzRi5ML6xwIiX0mVzRa+0IAgM7vxXtT8pEiLXoln+MiM6eXtaM5+1CQUzpIwOaVKmiaxVCl3e+2nFoC4YZ3+nL5pOT7uon44hwtiMXvOuV29wzcbLlDa+d571FePxdZV4Y79CGKC3GlubUxZpDnNwHKa144w+2twWA2e2Guf7Gho7liEFIjDTvVH0DeTP8X32CdLiXDmd7aFSxfXINZ4pybFu0w5ODlv4JH0Y1Xi6lAMt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bEM9UX5gMlDruftUkmF8zA0XSiohs/MKbYq2TWSyHDI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k9TN9jE8uDdWHui8IKNSY4ntt3GI0aS8rMvDoYpbhpsGw5nurnFSv+uVPI4BcA+ZgZw4LNwwgZ/tNfO2KEcWNyWdCuUyeEHhhFfW/9+Cy3DRTaWCkCUbwP2x6cJtulK6IV9KsO7y8CNxb9JGdAOv41d2ny6ioSrxIimmE9oO1vTQeT29dDJMrUzq8aodKvmy05yQkvOt8REZl0qR23CBialOKuuZJuhW1McYbC2N8p4j/KZ9MxLqwmcCy+IoiY15A/SYpUIq7hbU8NWP6/03bJAf+zpVHJyHkM5C9NvVdt3JI4hJZDXg07hBG0OjO1Tz9wmUCzQs3K9Bj3H2Pbm/llWbXk7ZLGfqVLENcVFp2RybrLHcvJf7A5tKSsHysBOckVFDl3DnfEJm53MPvL3mn2kT3ShtYvwg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bFSXkbYkxQmBIVXZ47AYdpqHx6r9UWbNvHKj/bvf0+s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mCklaGnl6+zv5zJipEZSi0cpXW8gJ2ZoxC4V5RkL4xeThkJCHJlrP9cdcG1W2CVbt6AWlzLhxvus3p3sGYP7RM44R0CYuxo7G9yx76ke7bktTWgRkXLP7JGL9Ed1gMF1vutNTOQM//r/HF7taS3qAIIpeMr4ueAPy/9JQCRfKa3H4VQ/gCae+s/HVw1OoWeV4SwionCgYn9Ubv+MB+XeAS22q8KqG5hByDhZtiXpDc+zybunXWIg7f1n2r81wNzJBBBAM6E9thiWaCc0KCD/bmGLE1R73dJFr2CNvjXGtlEG7FUvSix0qNmgnxdCruyvSxRfRu7iCzaDWmHPMkKqgH3gTKYiNqyAEk/M7AHBQwj5D5WXJCiBSmeU2k+kqI3ZX5YiiJxxFWdOxdDR4ldHca9S5F9nLabc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bFoNrsa1FAnCVexokY9Rcqd6qf9e62W+vS39UcaCchI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bYm2KtGNBFhYRwUc2oVqBcyvuvMmUyB/s3ONg8++OCq+eUnnhjXXK5vb8TpCM2TnWSdln62qdPpWrfxld/WmqYEmZZCXqKGXyhu7fPgaf0kq2uGxsstM22ZtL72PNMbRXMYm1nHP+1T1rDiKiIIeL0S6BrvAaFrh6LVrv/d9X9VnM1L5LV6RTV4zBaY3ELouhQZEhRukjYr/6LWaVI7DEWFw/+UobcAhmH94KxoetWJQ57qhV7/m+1YumWfCJP+f+qUsgymzJR4feC95zkNYhIH1mSrlY2zOQCjrTTvtVRqBTPmftOsv/iclf0bSMR7lzV+FtgT/iPqTSilBxqgMgdVwuZD2w1sAWQ08HDpX44RO9c83uq5helBAKaGTlaaJVO9s+lmm+uitxeVqgdJLBJq2pf0B0lMk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bHhQYuwZ15KFtEZH9175rLBFvVYfPp/+MmxYGaacfUs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oN0FsFxAgYEgQJPsYHVtfP882w/eVbevvJ2xS46Nqm5ZoyUi3r4ygmbKu3x3EcBxIQyFgav2vt6+pXXDlWgkkZprSRXHGPYCOENpVAgHPo5XIQ9pO7E/7zY2DFPGvZl5g6SPJxd6Ne0s7IsWfwah85otY1oSYNeNt691x4gVkfYexga1SwOYijwopQ+u/9rxrkSnYf/tvG79SdqjqKeuwLxpLXZSZl9hgWKW3Frx800YdVhcPHtjTtT8R2QW2/Tgj1Gd28QNEZ+mfZ2BgMp5TywvHZj5TSClKYroWD6agp/spLu4uiXAURsXUQPKsoKVv1y9Ed7N8txlVkeqqrNnNkuQO16rtSRESRDOSXiPXmNR1XRXZR92pcNRqQ+8OX3fxlyVhv/Ac/lB5FoFtkxAX1J1oK+6EIVk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bI0qFJtkJEiMjS0Us4Z060Cl25vmYiLd40OXssCa5ck", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ctHH7/fe3MQ1xMNtP02vhklYp3S9sB0o7pkIMBGtR4pJWLgJ5Ihs2SzHlqptF1M2x3K43eS19DjE+cCEhlxHp09WXAHJVBxMYpe3eLSRp53mpzPpV4pyHyLqUHkXpnxhqRZqfKTM1ZQRaK02MCINHZAlF+/GIM9f5CW17EZLHbwNgZaO5DROgtbLeCJlMnWrGGzWzK9tOq2nKDpq0ZktSC1832hjD9zyUE8/mFBeKRYtCFBjofxDxbJ08pzEKHWLLXaumkU1njBYqCZHAAKrGmXxtU0dihaL1c7iuJAkCfZILxHNaxEfWGdhxFakVHK819llx/7W6Czfxqicx8NS66ZLogdztCWojO6yp19MZOfFo90/cjMD2s7UjZZW3tXOLdVI0bq/zPruSEC2cIOkPdwZBssJJUQv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bKKAy74PxiO1Ok6LLWKF/TFejyFmG2HRO45+dlo5qM4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+SKtOUYoqp/C0QnqVQmcqbANXHHbT0V8Td3lYYjWinwbSVjsuDb2hT6ulC9veih6GqSkgf7t57Qe1j3p6k3OHvI9QfxU7DOC7nemNehTDmk+PXiSBSHNbaGJUHdincmZefFtKDIy95IsJkCL9F39IWKTL5zJt/PTp2IDuolQ0Zry/AhFkJN5/iRD0/F7RIRB4mSQMdNmphn2/6QTpddcAFZ4WVsOtWFbmBL/pxUdC/ci6mvwLVzQEE5ik/QpkzJqCvg+0Q1AblpNyhTi5e2UhhkSDWy4J5PAYRNb72TWJ1Lax5g5gcBmdVyIUE7FT/uyQeaGqKNnyOWY3TpV729nIKrVoL/uXmbEMHWCEyKND5ff7lvwhYPLJgBqzh8K18o1oAmFu0KiUp64WWAB+Xz4xuOBAC2xTX2g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bLd/K12M5JTGED5AMJHBPDg/650KekplilM6yy9i/LY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pJXI3gx0aAasdzV85D05POchA0l4UK2pJHhkZGrphy+flycXiAE6eZjQ0k97JHyV6OlASlBWPYM49AM4rTEYK2Jz5p7yL13Se0Szetv2YbOyegjLtcB2bUHbIL3AA3P4XW6Q8AFlmBEV3Q0yqCXayGMnI3c8fwcPAwhi3rNAoNRPmaTPsE2AikIKFtZMsrB9CBpckwnASzUlVyY6dDxb1AUIrs1lzNPbBBx4TkmAFfWteYpWEeNdPyUen0R1QzIOz+JT829srOVs1uUG2F3nkWjfqZinxTS+cMLI0StZNzDJ+pALVS2DZ5d4Xeq6LnAxHP7B886yC2SzArfhSDLrp2xEoqfjPaZcp5tJEl5wL4CrEbZJPEN6IHvu2szvSHPB4pMmvJHIu2SMIHg9bUOhKeHnkT7EPJb8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bMEqOluzhc5/2deeejrosVx311EUZ85EZh/d9nMtbuU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CXe/2IwRsi3VocNQcjza1Cag235w9pfOFLqgsQAMiSUirwYNv3J1F1LoKCdhzts9W90Zash5ByycEtj3rBbXO1YCmY9Ieeyx0hf3v3eNg+yQD/3w6HQvxk62IUKBhN2lbDSJN98TKt1k4dBt8Gv8nEJemPpz2JAO2SMe1iTOsYo6W9XZHwtUCNWu78SQ4eNto4i7jb3+xJ6LU8gbYQoDmRtXW8oSNnTzV2lcGHH1oXJXlO2IltUWqPUFuMrga0ak6FZkE2Yniej2sX+QfOpDZEMTSB3pRm1v2mpzxvxrwL6Q0v4dBPAEJe7CADNyaWkAH6u+3xraq4dEqbaESacEfE08CAHmiF28V6dBFifdUM3z0qDj7amg+XNN4r4uvQro0IR8OG6y4p70gZkaLQnz3e7yItOKJziG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bMYGSimRWCslUgiUQj+54Vjfv31L3B7J9Ao1vQ2gQDM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eFjSss7UrbLOb5LPeZ2z95PPaIx/u8Ksnqb335S+jgXZxqjA55kSj/IFQ0HOB1754D3fPzBj5FjY2D7ggW26JUkJpaYDYFJu7hf5Sp9yeJtgl24hnFrXifjLxpd060+2Noeg6kdPOeIkzgwY1EGlJMwxNr4y9BEEhlpcJKqkrYd6OqwqVUalUj5LjOtto67YAQedTV5ibqhGkMCN3Cg64AyCnDJ8PMbuPmbdiMR8hgSUD/fJ5ZCKMwJPy7t7T0qpefVVM2X3pFliaKB7wXvURPyGKHXSb2EP3WBpaulAZ5oKWTIfff5J2xlkhPRqzE+wokFfDkw61Z9rN+GWkLY7w3kvQIBTSLWS/pAWKYtlWGjG1W+tp+ZED3wRhgY9Usr0U3CobSFby2ANAQp5+RWeaQulY28zIONX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bMmoz1zgligLg5YhPhtnKI3QRO03mA421f9yGddvXYQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mBO337MyNCctrlMtp5tTLGeTlB0dBRfgRDrMuwA0JddTRePPKNmMqgsbf4SknDei3+4mVZECN6m1qLTYQ9tdxfN+BpB+gixonWR9aB21K+ynLx1MXIhC3D9qVy3Hz4zppuhzCkgNQQ67HIlFQuVP6l32hx8cYbKtm7+LDoU/ZYQtlTDEUxv5dsbTbZL11MkZ2Hni12hITwcL8PYRB86AGxQ1Od9SbcArKiKBf3sbfXjlKzHnTApPnKvUB5K13FQGNoXljneQZ63nt1nnullLMYMlDBrcy0xaHU6vg9ggBgPbf+HknrpFXoUQ/ptbhPckTCoZ1WFc+I+ExHvZ5xzmv2+u4Wr8ZNxIo299Z5sUa9mHTYzxCax9wG70zSFBZPh2YeiBic6xjWT/VJ3nkpJh8XebnS9v/aFO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bNf4c3LzP2GqKh8fDwByAqFYjho/v9jU8Mc9BMPSWWs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UVIJTVbNr09BRGnA5pXni3xaBqxXDzRIDGHQd/nSPwg8HJtDs9JCXVhRT2tjxVdPT51bx8l7c0JoaNKQxDdZNFs6UY0LdVIWZMBdjulRlsyj4WO9hbNfTbU48R0U41O92JxjRVTDJXlfBG//jd1pnVIOAmZf4HwdKpAx/OsYhVN+as6/SQVMzafeUwDycof7kGOrgtSYHIcgF6LkGgZh4wwW0jvNS49lqRMLhaLOj0gEYWQPQlQVgsVzSmO9P+0nfGRe2pJa+ChnH3WMXThyEGJZKp4/Qi4ZaXTy86cJvXeWkXXPlHeLPQpOIbKzDGbUiRbDzhCfdZGR8OhapLjd31GSXKjzmbTtB8FPFFb63uQbXf1PUeZQNqOe16uiEJE3dMqWmMonhK3VdjXlmy9G2GL9wil0ub5s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bP5NOXYw8atFU/oJpgYCRJAXmUd1ydM0JUbDVJFpHH8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5L19JHH4du54SeiE4W9gUbf8tAlMMAr2EKZw0hrkeOd7Dr32Kan9y74uASfQpgjXJEl757KEpzAjNkOA3jRu2JJcwr5OmCwBdT/m9b09WiuCosZAqqbhWAgy/1ZZGNfEzjF7xoj/0BbeViQnFDLv2upRwbJobRZXCFksviRu7T2SMXO546id10KqxFI6QCbSPHpPYD2+UyezUeRh6Vq0eLb/d/xAKFlxp4usNjZ6KD+GKiCthFbNyeu9SKpIsvcLjoImq5y95nV0xQFJiL/et44XAU2PSQHWT3Eqsk1PjPvNKh2AdGWh/XjpjdCewe2q19jxTz5iFXTrCkoVcrR6pa7dz6uVZYhERMmX9ZRSjfHopj2NB+1BKCANCCG5K+ppPaiTbjIBwOqf06+CDNAUTvbpN/Uk1VUH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bPrMxXHUdkfY9Bq1kNUxmpG+dwQZcooNj5h882THj2E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eHJrY2Ev26j4t/2Z/rcz95BcIqC8czgYjUURmkNzYaSQ7IVMyGyFBOH07j6Bit1dLhPHQIW+k7K9XvuiQmoqmsDiBBsZgOoHiozZ410/9z56vCxAWC7LKPzAWFeR4nqHUlwsJt/VpUQFGkAl3PEKpgCCRbr0Y+kc22YEsDB1aDE322IeWN7+PI1wtXYIOkcGBUip5t33SiRmlF601SwCc34klplHC613gczzN5+yRr+6cnXF9QrbWvCK0epZME0q4LLAn6m7dACiYthkoO/YFrcT5b7tM3yJYl0UPpcsIvI5pi4UG08qQ4cBNFq7oR188hxaeJZ0ViBeYZBsW6V2dqxi9ZdWYGEwjB/7akfMoHVEhXopaoH5uFavhxIzELeBeKo3xJi/6xjuaPpiHBNFFjidmLg5ux5W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bPxC8htPnApZfp5QFP4Scf4vWMntGAehWhb0f15FaQE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M7Z2wZ5w9jYaNxF0ZzykZXJ20N39BXFd/QtWVDMy0EL5miKuiGv/goOGxNieBkqm4T1wr7Yy4+mpUwQnMeCvOumAN0JIRA4JkDDr4Oza/ddP6o/geCUXTstvBoRTUF3fEnEcjZpJzwLcNM2qJh1tsbEYdfX2w8yCZiJregERqB/Fb3vqltJXqslSu/Ad/E2ul0yPAhTAkef9/ZyaKhXiyzPearmi8LbP5Q6ps51YX7FH1T4aLnkdm97NJHQCZWxdfbbygJZeK8/wMkOgpZMblT0wJMlCjNRYMTleqQwND3B6qSaIedKvwkE24MvZ5ScplLWsJntguY6FxJvFfeJQA6gaxogc3drNsEezFeZsJblNXyMD5MqAqb6yyOxZxzGkDymfT2U8tHS/aGVwMwCQJBF53FmI27JU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bQTM7WrB34qzbOvJIH+1bxyx5ujX/G2P0/toF+TSPo8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Cl6o+oQ3AEvPZPZcnjKcuM2ssYjJOUxOQRck9EesZriI11WZL8AzhlONnM6zv1WYBTM8nfuiKuNfYBbTd9PQtd6MCdkTfVAURJZtzmoKNaP6FDTXmXKxPKev552yMeRHOo+0iW9veSw2gq6R400Pi7AheVoIt8NQhR6410Nj+cTqwf3z5uTbByY74uf6km2j4oe+qT2Gl+OvUhEGoBP6cb+AtQiOgabutMLAQm3UOqRqqE57Ik+rgfwAX6C+mF1TbIp2rbKKFKvFSyXW6qhOXOhGXXgb2c4h/Z7ZPMvn0VymX3Kai3Up1RVtdLXYhDkr5RVYaokrsljNIMmkJxxD1l6OJDt/igPN/wcHpyirnthUWPH9QiyF+DKAOCHdZrPNXf1WuCP6RYIMJvoEX1n9iOXUFyCLYWL8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bQcdLUK22Gn0KITbJHireixaGWqM8Gj4c9v/8hYYWv8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Du0ZqaOQ3RPn/wH5YfD2rRg8cqm8rWtxBO4LUHVd6nehv808awmtEHJCYN3r74sj10EW9U07s+ZjXn9H+jcwDMvMhhbkP2/5+ROtJytNXKxESkWiztvHnympB0U0SCov+Z9+Nc99naSqef+0riQhF0LGOex0xVkdnji6k8J4wBKVp73sERKLZ/cuMk9detwiwJtXRk/b7PfxR5xMmfTyKjUWv7S6xNpoTqpwNmv2h2HbEgmlcDRGOhEjk88aMPgLdQIm1MMJLCxfHVJabOEeuiyhuYkUTox/XRuvhe/b13o/nAg2Zr2w+EZZkeHfEytBsfgiRS7p3X39Cz5cbb0NJrTZCHngvv5gdS89lRLRu5VZ5be6wllxF8p5XU4r68TMorWXy2auTd/UxettWJmbk6jJeaTT3tXv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bQt2xCXApHTD3WZ2czxL2/kYLucWxAVDuulAUgHWSeA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OfbsyEHAGq3Q0rltNxYFFK9ZRBS6IGiOofTQC9O8JMeuQpscpvsu8fJgagX2cHpF+dXu9jMGvz50t/zB2OYdeD7/7YX/LxaZUiZ4L38Vjv/rgxSLVWKN3GtQ5/KU47pJF9wz0qUHGkx3mUmaADdKldmYy9zE1eyFfmwhuq7OJMt4/8Hbbanq/5VXAd7jXjfWFTSyzv51xktrsyDbZoBZl86Cy2hNugBH1dUw10Oet9YgKNpnwzqzm7KZ/fwu8+2u74Fi66Qe+kCpl8sn47oNR4/+2CPxipk9XqFoNtEEJbkgF8NtxES999e5Ihd5wDOp7KdmwtitvTfXSp7X3ZsA9vyuMV15mfO4BXiIi4NOzGSlqCRdCbpclU0lil/0fwlaiJnCrHBNpE5vXyhFS4ymmez/fJpvExJm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bRByDOzrWiT2KKXpp77aU/KrLKf2nAtLHftHatHwuk4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j0FpgVXgoiMh664/1GLbgckGVnJPZigNgi4wBOlPOEXr5sJRL2DNsv4hVenwMLQSB0gt0ZrG1u35c+nl2oGoz9pvfcQo2bYwt7GoEJ56dmVyi8KzUhFkbgqeCD0Y3TGuEqJ9MLTjCwtmeeksX/pw1nwMCzjDIwPadqOXrZ5+pGBOzjoGIsGcxF8FgyqmqX1vc0oVKjFbmjgjlKtvmXDRAKt9mjl0oZFIAClgRibS9lA08mzHPjTLGmTqtN34GSIHFASuhv4e5xCs8uRz8BJIhVdep+00iGCHea/ndTvfhy+VhsjWWhgAR1UPFwnJdeeLMqwMdZ0tfdKuAdUfTpNWZqlki4m0O2djEEB2NPRq57+qQ53FAo5DcgiqJJoZsCKl44h2MWFRUxd0jQIJmWaQupcJgCgd3uNF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bSNA61K3Ns7WZmBxkM5DSdk9KBPplbUrsXWyH+TTX10", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "apRnRES09eMFc+MAbMATsEd6Ms/ThpXJHKOXD86w99ZRqqALsG1OUWD40B88YW6qPRJGLW9ACBipa1xVwyfKGtjPiWAypjbM6qqzTyZZZYxwkSCXec/tPNPXAqjr7jwgUXG+mUdNHHiaVjCdIu9tghISn3OY3ETWamZEjPfWXdKyDgDuVmEcQxjZ/p65wKw37eILFt2BkpB72SlM8sm30+isTud3rrB7X0KAtIjUc8hBa7J+Q9eV5u0QBkGBUMD9xq9C2RN+n4oJAQJ8uVIX01Y4Hvw1BXOljsfUEs9apVRt4OzLG3G63wwalBsxSrGtIOAEEulLMTX0QvieKERI72gKs7BFowEd7ulyOly/s08/9d/mJAx3i02vCcy6FtWP82nfQ4HpZJ6aqISMxXH/vk8gqkN8OvYw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bTc7uYetZ99zkzZjqcyhxoss3n4L7btlfKFT3HiY4SY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rQl/xIP2CaaxYovhR4QCHqpkqbtG/Nt6bSXWVzwt0gjX2Dj4SYNDhsyzxibf8AiPeBcGKo+C+kTEgImsQWrgy0+XfjrvrV6moOUUVCaWmv+EoKVSEf4OVBvESsU3zM0s70rL5fVvxiD0UTZXWvO8fgcEjPgbpKdzRHol9gLlLkRWA9vIaskN8TaSktIyzA2tfB3Wd8vZyi5/ulA4nAPtWpbVevJT/phR46s3G0/RmnZ0QnbcVXDtd4ho9DwsO92wc0G7Tc8XkjjKI1fnxHH3NEj+bWnBl3ibF0NhHIboesCG7ZTpS/P7mqfmv+C2NOKA4c9yZDF5s6nEFdouswe7Ay5VI4B3IAiD/OGUHLppIzJdOEm3JHjBPZ7VjnaHfoiftdxxJ3St5c89U4uBfp8hL8JLbM508gES", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bUt8Dx4IMenYwBCQs/K4KTo0dREmICVmMtRqx2EGohc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/zh3uJVboBE84Xx2Kw1gWo0bK6Rd4ZInOk2Ng40EdABFEoI+jwwTNf0pFsdOIoOr2LFt6N1QrQhjZn8W6RAkdnl7PSi6VNRh2pCWUKVKF4qi9VYrbuwTSHULtoiaRLwLAgcYV/niBd4zVO821YAVKUJyEVx1sc+eVuTLm8Ot0yrkC+c280e/4ZAuiPnPWDgyEFzS7i34E0neRwQZMziLXS93rAWBzwMCYYXylVuWXwIWGAFttkN4XGD4iedWY34xRtFGBYGD3jrYX3aVmdhVaBaE8Oqa6pAd6Zn2F2fznQvJpQsd7/u1f9H1w4N1EU+CJTg9aO1+xL/PwcSOrr8I3moFN93rShM+mPPTtxW15TP35PCbEKQZGmZIcEpjDdBGoJQvpzGLTlD3p87iZ9IDqxxbLdBp7b+e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bV6NiNO6trnSTeSmAI/s3m7R1Z6QekbMIX4OryqTxqk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0ac79zmwBu5VB7T8RfCbqSMDfUx5fWR8I1mos+/VLMeMzyywFpNJQyeT2SDTgvw7h+7w5pRgd4XC3lGzKCUnmXcQ4rwmHvAuzMf1PA9UKN+EOj2jboC9kfoEJHAiqG8CZtsZdLRVFgRilKsSdGLm2mraD8b1rco3nwGOEXihzaP2wCtxW9EmSyfxGLAHCln+7OPwQPpwgzRliEDt9NA+o+XGmMeaObCALSPyUDczW4qJUx2ZUquOHoPWjSlPyDVIwft1iIErXCQWeyLG/GTJ8R0wkqkH1FPs/KNwyJTwxKhh3QIefici5XZQmkWe0lS5ZMkBKzqKS7MQy2CRN2lmsFiPk+5NRpxI6ME+oVfbz/AzBmspZyg+RBoI81qAGUJCA5unGdLQ1CglFn+WPsqTrKg6MMPLsiG9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bVYKhkGask5hHt/He6VWgqaSbvJeGlfdIUL0dWsc6WI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t5i9YOMztpaH63rWqKqpRlIFgoupHeOJR0/ol0YjlXEsbLTFYPTIpepJEuVZzzydBmPkKZZ0aUy3DRqm3HQqkv7DOMQbED+oBHuB3w5NKxz92JpQA9MF8voBwHDFvajrayPSBtIzY3ldgQUZzyyoeOg70vTYq3y8gbecK2HCCaCPTxhFlSlnDgwweSkhUozO7bhheXZiZmXG+jXTZhaX37k/3gqtdljFFNKJws6NRxTTtzdosiE7hjD9RSD5xst1m7bQmiyoy4asd+EbU2jI7EY3Sr7/+9dJ7GtCS3auM8G1gli5AnKcb1ZTOVAl1VCZ1r7fvUQydl3gP/zyOycpQCxQYTNr6FWZ6OkIurDAMRePFxi0ewkr48dKM+b9vPr0yo1a7a4BTDKAOIvIoYtqrNDRaWOOqGQW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bVu8W55MIT1BVnRRyxnibDXqV+fv20VIyACIPzuiu4Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N8T4ExON8eEzrW/V0Qy995VYyNfwsxjtzIzbqVEPCam8X/B27yvWrZx1dF/AH+F89sjx70qVIOS0nai58XHzhnBc7HBd6Q0P0RY1gx1csBiygNfTf8EkbKKzYgjNAffVECWXJpJSnkgwJPrwhfKIEb09eHl8aQJWTtLImXeMh+ho6NkroDakR6L3mMxBVgCj841rJJSaD+BUBhx/RsCqwPjW72UDWpfXvY1pLHvj/LUFi85Fb7cvbNUXJJEAm42PWlHC7+7fRMF73JTX+lrRTrb+YA8jrjyRpcIQt+R0MY1VrrdjGjNjBixXjGLU/X6hRXs7GPf7PrXyqKhJKpifYZqEu8PpBaZfM7ClFzMY3IZFqF+34XvRADdJ4z9Oej7v+b1YTAvEnmenx2aBuivqndzGD+A1Qx8X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "baOevWZ7aapj59fLC3go1MePfGnlmTYReYlrrg/1vQ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AMWIl8p7LO5RCaqkfhI/5JlrR9tFnR0Mq0dik3bpseWaQHBHIkpCe9MrvmMdBSUiVtDPeWZflcu47KP/xtZI1UliLPxH1UceBz1ophqwuyAxGNLLnLviieghQFdlgBE5ubtNlolwru0PmLpjoxLLTI3+Y16lLvx+6VN8vNRThgdN+FNlJOVA7uOR1nH1q/jmm2ROc0zWrvnp2PQZ4soCeH3X9jU782M4SHH6Z0wJuoaNA+EcOlD7bRvdawutQg2+TaHZ4nhTFixNOWWAjQASiWSsw7OI6TOdFofCD/BLuOYSHYwtE+HCjDphjAyMyxcKqQd/l8R/+ozc6YHhZelC3oCVbba3pSKSKItMMfEX8VrK9iZkUDpI9uB8/fIzgjKwxDxr6FLys/R8fjH/PPnjwLBm4INo9TSl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bakJOIUKkxjBDMKunmpSmkpIrsxBHy/q8QFIWLevglg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fKXjgwq/Z0T2tB688l4x8rHaDRr5e/39yAMS/4YO2HSJsH8NTZzThkGWAjnLW2jgj/WmU0q1fgkFjSk1Y+jD0j34cCVG5VUli0ns07JQQvQgXyVA/Ipv0IRiLb+4nIowFG3C0Ep0jY6JrmJ13JI9LjFDtFSxpj/qfpJLAAve4pFVlhHZ5bKzvq8utoePwLGZNmMp6+Ksiyf3XvjSQ7c9SitGPT58o0wfRlM0Nu7UAihurPT59/vYxxUaj+3yUjATvTNjGa7/INnX961fh5l/QRiXg9eSrOiebQFBLDuSRthBo7TU+GBFQH/Sh7y9i7dSBGuSE6eBAX47N0elJU8H/bn4w7S5LwfRhV3JTqUWt4iXeKUWRB2wJWoUl1/9E0PoPkwE7fojBxgNzaUMi0DNJZzzDmuzUfbr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bdQ4IIiv7Yz/mx0l8OH8EJKUf5fZelcRQQJHvFNXUho", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6FIU1ni+hXPP2WAZxPqpibg97Nsc1LjOTwF7c9o3L2JrbRrKDT5Zv4fKx8R3JR+izck4hsz05HDrnV8CyC0czCHPBXdBZJ7Pl5K+6lz3NurT5gK/XliYboq0QHEwJZ/DSm+a7GSCA9IZ5WTVpkfdSYUOBpAfZSHZeE0Y2NkfayGAarowvCFZ1YMdU9lZYpA4MsKGOjUZ4lFFU0d4H2C8vOXjmMqRgJsc8kPJVbG40IsZhBjzTtgRRC3PdeAz/GmRDc6j6ThA44VbTadMAtHiIzRVRK5K4e+RXV/YvM6QikYFZMAYGrYNoZSig45OlmWvSJ7HnKC8ucF5RvlWn/cJlCtYjp6TGuLAah/R/wMza9E76ERGfwSjwuPQMOP0oOSedpMQX+gE6A6tqGBLQb7/piSLOYeLC+FB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "be9XaQqO15QjAb5NEmJgS3SAqsb2jOIiOsYHjcj0E5Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EFd4pei+JwMxopHstOje6jmRYN+w6GnyKzORep/PMVylkMx9v6o3bm9WcO3oTB1ZcRXrU7WnT1rITk4lNIozuEaBtPlLZbpBUJVc/1lGTs8oATeMqdjMkg2dK32g35ciXyLnr8PTzLpn7GSwk9kSdidNGrIzfi8qriw3mihmKly82nRva5SCF7ztJ/H/M9YK8tTbjw1dZM6/Fy4u4waDiy6hDJVhGw0i7gpaZ/wqi6XELy6T/7xHiCNZe1lviw5mOhvgFrRHC+W0tyGDMG/zwZpvgzJCAP6obqAe0Ctu95DCjeONpWNfKiqU7PNHVlA04cVPP4QFcm7DP9MhuY3uS2V1o14PECtn6a/C9+17CZJ92Uc4XobE5UzkRwN9SsbyBxTlvZPo1YRJ3azzdFsUhUc2avRoxJRS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ben8VMFtfktjr+zmauzCke34RXWei7rXwB6UpMC+U64", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+qc+M7MXzuNjOoo5j9Pu11rYsEx8UwNQHXij4xbmbwmX/Wh6ufCf4uIMRblJ4O2UAljz+OnNTlMicyxDYjijUrbZkwUQPa8K5HnlQH7B3oVW9COAAhZCnt3ZFYW957Tp0d+QbO40nlqOn5vP8UKrORdzxU0BLdVuwrZLWw1bSO7A0umRnz3CTVlP5g7117+udBHeQ/VvoG98eJuohGQYhr2x0SMLQPxoVlcXG5GIEU0D0zHj/SnBsPutXMNVD+TBjJjoQMdw/bFsWPfF4oCGkZjJE1wquyqjSYkgir19N4myd0rLmD6W0Dv5+ulabQojVK7Cd86fXdxO8Xkm9aEFWjIFOJXElekXXgHEs5ojsTa6LJPBsmvNocrBgCVCSSmvO8GSZXPB766VKP7+s4cfDre2cIzkFwqG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bfSBWWS9YkhALVuCYdOMlUCQV8wxrGPPJ8J1YD9osgo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d70Wc57YKEx5zE5YOnhWqaIcL6xE8IeNeg44IJN+t2ZlcL2mRDOoA9kMw8qQ9Sl4Da+QfTXQx8C0kr37oWLtJcMPijtMVsSvS/pklEDeOdOrL8DQnVZ+pHy8tcLkSObXqrswPq699ElFP4QqbC0BLPMTEtMb/vEgSVXte5db48W9FK4bZZA/yd8siLbGgGadyrLoKGR1+y5OFAt4obsLyaL0xLo7ALh5YIzranOQp8/LOcrzQ6qs9l9GYmySMN9DEBRj6J+LK5Ovq3vOJYKixs3qiBhOWK9rcpdE8322z3grzHDcCVq7+EK+O15V9O73avCJknYO7f3xXtNCy+XrBnYyTTFt8Fqe6FqFRvW33gUTpUh7dGyPanWyXTAIc2MI4tBBO0oqOPiP0g9kkpBkYYFfDZydi2C+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bh9faaCQDIZW57E5qQA5kzOBoZTcpLPzfGrVqkh9BsE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hHqPgWBImUTbNMXdU8UeyGva8Jm3FmnR30+jskSUGUR460SPDKdt4SXNlshmn1O2WS3I3xEoxWByT5/KY47shONobS9FOK2qku1ZTHjs7hRrHiyFKnUZ+44grjUBPOsTdWjeKINqW9ZrxUmWB7ahcNWRxBVB+zRkeqv8TUA9JlBw/SCLbrOqGkzZ4e/HDs0QskPuA7xchSjhhXBwOTiQIPjpFsWm6U7LzfBYTguAxyn88tcKuOWF947znFHzBf1l7i8cSrJuBbwZ7RS1JdKzygLe7bw/1I0NVdbOKWgC6wuMr9r+NRZfubMzhyWGZWFqp5MUmu+uWz8IUmzfl28RKkGUSZiNTaSh1JxkEnVRx05gJMgSeALRvqKdUK1A93cP7i8kdpQdgjkgZyqxyqor5u6seoiqMD5Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "biU2Hidlq/bF1SGhoIzRiocUucSaQKEHr949kQFsaTA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XxyeGRsCWcgNmtEPbxwSPFW8fUzV/dj5Z0bQighM3qpfi5Q9hYDpYXaU2QNJjTyyMd95E4ZXzUFcNlmvR+hPULfsGtz5f9mHgwguSs8Sa+00ICTYfFg5WJzcxv32i6XdObUVMxZm1UM05m7ckv/jXhim/Guboi4GmcTGtqSyE96f3lTl+iO2NSGF5tAZYPkeZsnSETN3GISlO/NUg56sAZ8bXHmRrulLbkAYL7UfvYkf215bJaY06ksAagjQ/mi/2rDI7IcT1Np025hJ7KC8JB5e5Kw3GWjafJgYnKGSectcUxyNvw/HRyz1R27NBQg0cQpTxqNbVnYz8erT/70cB5tcdNDJk4E7e7ddwjFsIYkbRuW9ee0KexDBUqsj6VCw1/qGmJ9JCuRxdnEW9dWz5u9W0GgIhaFq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bihKIkWAxNv44v+LWh9BytdcdvVQh/y/YNnYya2B0Dw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iMR2/x3VAOgGMphgAg6S9hI4QP7VSlMemxY+dIW52AdtjeWhBva0mB9grqRl5DOd90krimS6eVWAQajTMH0Ow5GZeihULCQpCqPhyBP6t41t0lFU0oDfJRIxnoS51ds6hIkahmJGG+csfw29aBZy+W0JB1f4arS9GnuY6ta00quD78FKHBq3dgap/ETjSERUiaMydSESCWxtX+m+lXmm5MPCRoyezuhvd5IrRVd6E+vxFp4BlrHaGVmXAoLk4ZahQ0MC/nGBxOiVnURUo8Bk4BOxhYMrEZsJmWZPY4Xl7VcSHXL6cImAenInxJGXwOXIBox1pXw/yLnHeP523Ng3punN8HiGQZ0kALdhtV0iUfbObZIGeQzjNhHDrwPxmQInCHrvl33BNKaNgZy6o9WwhQKHC2eDEp7w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bkg4KeOvEyPNx6juAGZAX4CZYN9/xGwKrN5KJL6zN0g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Upeuc8C2f4mMvQdlRceOOR9XPJaxAQ6d878LuAtombdxy21rAJoosxJ1FOpMvRMZ9M40qcRfFReiscOQhkdxSW0FfKZsPBVFJGHO/AySmiTZYwXeUkIv6hSDcpkGubIc264o4lpQzXqlVSYKjrR+tTsXUN5le6yG8QNTmfOkrDCdYSg3xp75SOSBHn9qwnafWRBQBlg790m8Fnr31I97zsBnO91/0nta/6HJs1yiJ5QWmhP/GPsanyPdCcMx99p5uo0qUYkpJ8l7RRcpFOpKSfdJe0h1rOyCm1DvxSg3YH6HqLt0i8dxTa++TYHai9vZ92Yf2nv4RZiCUalV632z8PPmagrNaucjrgbBJWOCT4tpCMYjwHkYZoPUV5yHj36n2F+7v5ES3h+nZHH0wyM0yUKpFAmXoe85", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bmE3VjeYuvbkau0G6Ulp1c/qpTlDBh/38r0NYT1FxhY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CFEgX0NX7F9NPkVFoCm6RRCCGmM+wSEBi4IkXvv2D3zBod1b4eXX8BPdGqVXjnPNM6GfHTypiA9qaXdvP9g7uoc2bB2xqB5DhozJk4nCCKBOhW5/Xa0MwQr/9TEFGR0XgbmF7wj49D/022/smHolXozId7/bsx10m5XTHzicEyPRoKdhRvwgPtOCAZOXrTr15Yusn4QV/dfzmCfBUdHT3lo+E/ownm8Vtuogs3fISrfIpTKHlSKxX94UoK+tQTHhb3X49A5IsUkVejmsEBSMRbhNgBzRnnpy1HbLSrtG2xGWuSOK1kXoI0TPGQGiV22SeXE++UfWdRHTm03EoabVILiPlBTs/+7x+jtESqO8Raaj41wH3ETV29Ty84lj8u5qcDTvWjtjVPeD48Jcy2amIx/OExLjdUHc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bnvHW3JCMtLoh1dBJBcjSOszLl562UeclfW0Payh1vg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ypMuqXpK2BiDKVuZfELXY1C8L3L5JTUAvRdS7j+LGWiBlsMiBPQFpzpHTm/MabvLSn4R/+sNh6ZecFI6iEhhopdcDV0tcFHlCR7ZmQs3gkky9lCzQIMvQg8/Tc+kh/HEP1TnSJytD/zxWTScbhOduGKYs/WaslTPGIUrY/dM4nf3gb6uB1XpdUvBxiDR7ZjEh95y2Wr1Pdh7VldTJLghPVVtJVo0is+FYFJb/SeQuPxA4rhSrw6WhyUjAb9UbK+k39gi62CLKldAI0ORg4gXESHnepeWDdXes50IkemM/vY6uOkSY46ieEqaDfIzXMotu4yyyYl2BtjILXXR3UFGh+HERdosiW12z29lukQAHtN2HRCboenc6f+qYdQ41YVK1SEWYO5EE1HI19GTPE+IOzDYpUHH6o7/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bq1vpd3XbEOG/x76skrD0VvdIqr31kNevQTOondDT9w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EB+K2n8/s5eGCSYSHBHWcv3MLNKVgMsWmIy/MIvE41m+Eg8zav1a2JotBtjqKAnTXXKTlgWosdhyZr6ofzpJdR5Fw3Q5hcmexSQsDi6LZFg/A+CeFVc0cZ4CrUPotfY1O/ZDtfOg03Er4d9J+IHwqV0VUg7ghQwOQNU0VQqB25nDJyY7+i5slAJ3F94Ip94bpG7fa0eYZxcwf1e0OIkoQZl5zo750gkpz16sZniWRkMaiR7F49oVARtwFrddn3dwe+VxzA0Kvg1u6cruG7dZsNHJ+42fLzKBFwE5UZvZ5y60W+PKA5g9MQWPt5bAEXm3/4SsxWjjxao5o/CnovbztVlxKi/Pg+NHRix6OkzVTUWpMCKDfFFdHXcSvdGYYAMPBT+FuZClj8v8kmfWI3j+7xYLZWXDb0iH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bs17FEBww1zj+sqPhb0u2zNpMIcNNyXwG4w4Fw6tJec", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9Iab4iq4n6QWsYNBKrNEYN3CRdH9tILXO7/y95SqUZPHHI7zs5AziDYQnuBSLuwtsoyndGrBFdmmfaDuteFaPLnnA1f5VrrcT3avdgDOt8jUuS8sWcJlqk6Ji21j/kuPRprMd+s2geKF+1YPf3/GYYfTM2kEhFHzqzHtlXdVUa6xAG4mR8aQsicrpbiSa9z+6Ex7e6JG1iHbV2wCD7lVrBnWzSb/KyNjwk17U4BCgO+3pJTKxva0ekUHZp4Ia8DMgBbtgQE0cRHXLsqBdlcPei5NcDn9yeb9rxeTOAYlGUtRYfR928K7mnTsxYgvAqI05sWUbuBrm/sgc4I/+udFTVlNOOWNHlnqBfqV4C2leEbOwMa+TZBp0jjl1Xc2WRMZPWsgGY2tVnvyAs+aebFU6mUeCAgEg8gn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "btPBQ8KuRZotzSXa8RNyd0KsEx+EsmlVuF90A/ogb9o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pD5HMswPnTC/ghAx/TJsj/EtgpknvgCnBVrHzTQQ/x1bRT5eZxfhYjeGzsM+fETo8t7LxOGZaJOB20t57Kf0SzmqHbjxyzR3ensItw3s28UzyT+HRTQkgBZ93o+F1bJWWi0Gd8ow29ojn6atl+WFKiWqe0t0ejDKyr24EItaVnVP4zz909E/eplvJN+IWaaUnEFHsStmf0ofsjSQ5KolIkepxsid2yRo6AETYrEi/Gq+ZnPKV28/7NSRCRi5g0Yuer/WSPPumZzomco9CTNgJnfzxWTzMBSUlPmayWbaz0q058WiGKGE/kC/TasbxuivM92sY6NAMK6c/sGEqqjHKYQhcc81Ix5ooHVNXgF325xVAFywE34y3MM7Pp94iHeRCsLM/Et9gE2rtgV+hzhRa60yXxAjHXMX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bvQE55/IyymOhZ/HCwlz6HHwzWXLNo0Y2FK5N9LgqHY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l0oyJTTO1fO5/akDlIgesOJenCXFzDx3RnWUtV2OPExKodS8hx74gnr4yYLCsNwInZjCJ+Zsua2Z74GRSsgRsHUaH3Ofzq8Xfy9T9QQADZGo5Ec7tuUGl/RCYGjPvtvxuRT/fu7PT3MGUZkcrK1cpCnfqAZAl1FLClMTMKzxilE6/0RhUraI5tjzOEYs82XqGBrKXCLbP2UpxkVLs3dnQxM4X4BeWXLgI0LG/j6qpUXdQLLXG0P9nBmdjZNoYWCYOHwlOJF9wXOw+ApnS/nVtrOJxxkBu2gVN8VvZCSbI2eC0z0b3KpWJ7ALa1yAVJTz8Fcj56xzI1PzZFOhR4zUK8HfvTwbuS4wi1pTKFfDcb2Y1GGSdEPZVKLmkrmSjpDpMMZN28k66SmHFiOkmmehaxOafgxk/OTa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bvREaw4VzWYMaCiG6Zdqz+XPCuj+t1X3tbR4D84xarA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DNAW0m+JEPcRMBzHqlyihP668qzpGFEcNOXWMhkgYsOJuzE54NIw+ol1znygJj+PjtESD7NGSgsAzJ0mvNa182OM+dnrQK5npUKjmHIRc1kSTooRQPJf9irEFbnYMyIenv/R3+lBULCFsgjEfDwCvXq0qRCrpWSW0BVE7hIpbPGUfWb/5SNKZQe903c5XpPTQg8ll5Wd+0w8bqNV8c4Hnhg1fptvx9JBGdR2V0Ip/3MNg7hF/+x843St1hx8/lc5GlcM2Lxz0byTY6tsLbGShnXINb3C0LvbNA5gqznGkRlEvlSldM8NWWsdCknmHC3JEAf2PD8Wr4QpXHMJPJzqAe9+cgYWc94hNAhywRCd/CDyPlGojj+mPoWg/mBmEWfAoElfylkLbRW06xZCtVQGdmeE/AYUfbgf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bvtRb+XYoB1ZdYmLx7aFO1LIsNDoc80CAkmIiYZ7RMU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qUHEc3/d4Uri8xqTUK9C3gcEO25Nfsp0hUzJncdIU4xmk6K3OM2K2sGP0EOrv3ZROPwWgs7uqcMqzlI7StR1NBX1o8R+twPHa3sKJPYHFcQxOYMjLoCOvOfy+Qo3pzuFTR+M2TNTBoQztVYrZf7RnmNHvd9G6uFDtMEGV1fFBeoFt21ycqPCO0v6A5KXOBmin8izPaD5hsx8SX9wzihW2v2NZzuCgAlBw3v1Y1cXg13woLBdsFxs56YXsE3cFTMoRuMVgEZp+0K54WF4b4qvM08l5tm1Qwnj+1aW11BqHnZxRgs/xJQBihhcUX5XWF3989eRWCCGJnQRUl4Iwnma1KHCfR97AfbcqMP4dvOusL4vAec30M/rAoCGcydBFPCbo8QfM6dCO2WKcmC0NL/BNf+FOkjbPcl1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bvya+g+L62tr/rFflLQQln9q/7Roofj3r5BGDogylUg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jG7TvvgTQO7Qb7JvleBy0cKfcZA4vpKxJ04lkLTIWPO5OveuGmFp5AuewobCA7NMyw3hxjQ/P3u35Ld7rLXWUQp+H3MLHTW5zBS5RlQPLeU8HJtol/xnn/SAgjH+qKhpQ7j1oVoerQke/GxoLOUxq7MoNlIjt8+5dPhr/u4jkalzn+qbgTRqn2K8m5ZA92Av+5NeqsIGapa2c9Vb9nBVCsFl8aSpFE9G2syaACp9CDDh95CJmFjhhkZtMBcGV0tiabFpQ+mh2JHWTU/Um7fWOBrolPY6xT8TJVf8Sk9O71ixeL/g85tti17GkoTNuv5l2w7VEL8XvsAtgj8QYCoHMbuCmbJlUCp49YsKFYcSoPjVxL0dGVhICuvehJIGjPVygtG6aSBVROkuDlcoh7PBbN3Q3um7c+rh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bwuWRkh+Qa6+gQZrJemXg6J7Y4CaXu1hManyfjFcl9k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JZF0OMksnMi+qIjyVQz4sKYMzc4kjU5yACSg9ZCIse9l8iFooR/8u4AuJIOWWM72+9o6BfQ2x454n5LS1lCafXT0APDKQQlwD2mZcb+50xAVAhBebWQRFAWGkgMxIdrJnb4D1KqLiC7+ScyQfeKLb+5MmKDYxUXa40dX5dy8YRyG8CmUVVwHL0cpFKdm3k9qy5Bz8k5KZbqaYBedc2uGzkESvMa9hZs822S3Hqs5ChBwsIg5+oMyITeXCmVZO1SDbzYDXsL0+15wDs1d3O5Z21NCdhPUhknZvbBxL1mZ8e6l7LLAPuEd0mGYO6DCdAP08VIaj3+EpIoJI0J0M2aJC1vgdEqIaB50+xQuJuc/KZmLRCs8gXqiQml0lR8bZAs9XPLQ+WWnD67a13SDuxu2g4gcjwfPqQqS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bx2MNjvZuWH96wGYzVAYeOg6o2bqqGVqIy5HeGxQcs4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pk8bb+EnYGJBpPowVGsmXeQ9O7txn/SisC4nWbgYXcrsmjyN8+GNdKfdHjRcezY7et+LHE7N+a1BuKD3pOrI6Gx7hKoeA62NIlSu4ThmzA9mTVfr1Wjmb26fnJGlEEV5w6qsrhGcTm0eN1v+WUdDcszvit6Zn9WpvY6eymt/vqFbBtkma6i4XkBan3+HsqYFD+fy10fNrrnrPJ0J2zW5pe8r6aFRozLkp+4JNqjf91yjbZS4/ZI3Rpq00EmXqCZkmhW0aSNXZM4Fe3pOc3nSAAhDqvY2bn9DYKAR1P29w19gIZZX91tB92A3zYDH5CKJw7FlOajE0bdsu6ZxGsqBs/WcwwhPJ/1QWw3Z02sr+n5iyW+fPp4Q44dH95Xg+JWSZBIZkbBcBY3kE2g++lHNuMs0Sr+2kf76", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "byZP91+L6N23xrFitnMu+6ntdDyjC0I9Y5vBn/kSDZs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oECmSr3xp+d6w7XZyMMHCufk4lzZHK/FFMzAjG/3DkVsLlklOzsvVbb2UpNHf1m5sEbQmLJuRyv/M9HtwbFq3+oRr2UPPdG8KC/eATej/e/KKE+3zKM4JuFTdWkpywjZvl1Az0r5M+phnR/qy19RTFQc7QbfDUCdFtgEm6fQLPQqZKkubPKBukcjBCU2OHm5JvheYS01J2++qcMpeHBKNWgUPKzXdTG7uMiJ7EsmOdt+NWKQtWhkzvZWHd7RBiAJP2ZmY0Y//TL2WwqAJahkL1OE6vrkCIba/8joxvVI5K24//EX4NUlOtfnWpzatHmZ4rtsSeCJX3JMToUjI5YVQVF+1j4gusmh2+bElc26Wv9CTs+k8YULOQpzjFvxjrz7NBZfQnwnAR4CZ73MWUJ3PlMVS6BY6wWc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bynBGt1Jvi36UqhTDzkcv53iIFDOJ6YeAywn0FS1oq0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SJ4QhL/5YsfDmWGPdQHbfFBsd7skHh5Y0z++ncCRWiFZVEZVtwuJQes0RZEkdfeT+9tzhEBV57k/a++rjnlPXhMuM6cG3dQvsVxgVI3kF8w0jHB5ikG6X1AUCMDq+0omanzHzwSsufC0y4+TJX75elTAmLtiBZ5e+yD6rscnDTeOc9Dl8PF2T7QodLeYBcdCp+3BeX4M8RaMnvVqy9rVIqcAS7hNdifNk+7uXO7Q89eKC45RQVZfan+uoo/oAN/ITBjZLAyRdNTylBpRSyuS9N3vZ37idkg1n5C4a2+eEUyQgL/y7BSlsNrmKB1J3Rv+rMxcD28C5TEsOg8/3Rpr/bT4OCSCgzTiHwfQr4UIg2pO2K0pqnMVks6jo/M4HiGshn1H7dhQPUPA6q+k4Ui4KM1bInXOgfVE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "byrfRmT4LUk8mjTlR4eBVFPdeCrwpGjRSgsDKTUtU7E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T9swf4ZbVRnXsY1SEV80tcTkCOu7Wl76KbRrKqZLkldAzDljmaR6CMyuMR0b4ui2rEfO9AwfGOSRaSBmNNYzW4MLGQHeegWsnpwnZeZ2LJC+73aWSBlGSTG9chCNGlLjpDxI5L23YxZZJ6HOBGen9xL4XnCOfpKxsvpClbn9wB/5vQQYc2fg4s05aWvvY0YPkNhMfVj2HEFNgdlMZyzMTlC6rrZB081LpHRMTaFLFxG1re9o86ml+jgPvjWSLk2wzKIjoTpt7+t28dswQApT55JTyGLEO+tICGRxZjrtW+Bq/Hd3HHF0RaBqLyvGq9D7sXjtYuPTBiEcTBvwWdL9s/QTj/MtO4IrtSHYo6MwpUuO6/fHtP31A7OZH714MM5YV1SWaHllw+txw+HtCeA025dO2kUO3v1L", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bzKfJu5oMTPiUWM3RBejAkRTTJE8T/+8Roed7OO2wIA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JzuTCXVYB5GozIpxGgfAV0gt57QWEhwGctvzQPFLuheJrRTXlO9ty1SSmz13U4N47/ev9Cjp3iyCyjpJevg6zF7+/9JCSA9bS5JGMHmsf6W8pO5XL2Ml5JRmtS2cuyXDIWz3CKba4dY7wJv5F2PqgQV50P49ku4puBov2Jvjl0Z4NeEfKdUntaMda2ypHtSqKsdOuzYwhKS/X3dNujrd07yzJmL+JchAuHBU1xYo2Y6tdwSbSoneChHDFDvNfNzugQAkcZejjrDHmGlBsTuIcz+9tKu4GLiSvWeXYfUkTbDQblIGVFB9k7FJZ550Pdr3/HR5LgacZNJriLB/Ds8QCVb7TGRqug+D4d2CX1xew98aZcZCW74lxnDaOUK3Chk3ZnIk//cMLMMwZxCvkUpDLcM0pd9PW4ED", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bzhYlnTrID1kNe/qE7gKyzovTtOiqhM19wr9WbPpkpk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mO+bVYT0+Icu4tjMcZ4ABqNXhC8DmuUT9bT+Ih8fN/KKuuHPF+oRroTYYhlHaJAFulQO6/UYEz2idLh+z9I3+RkdkfV00pCVqpiDXkgucqIzoi6qYi5c7OJ7vfge3IoobOOkw7KhO2T+fRQNEiEZXaPYP3tc//fan8gMWIvYkDX56KA4Jjf7f3pc2uZWujucRuo9hbNEiRuJBBP7QZounbFeEQBzPSoVS4A5gYEm4fUkEdzD/VDVEilrljqUMA5TTb/fmX1p+s33wFqQtLFh7h11UK8VcxGFII0d6N4HaITdVq4m5CtMIJCI/73pcfx7cOz8wU4qFZ5PbMps//CEzlUDndWv3cnFON1EbyuCYARMU8Z0Jx9+xImeJdezQICRaMZHmAYgC9CkCarluPMAKXeM+yRIzSD4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bzwKDcpJi6WAufK73RrHU7O9HAgOJQW7DbPeJmgeEPc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oZoGa3wxKRkdNy8ElI0nsMOSzDM8/9rQgssC+ZR+RsnbyBtLsXOqLhqNm7pGlLw7A+gKZoZI7XlXssSR7MxYf/6WsXEKyFS2UyYo8lRcuy3tEvkm8+ox04Lvhmaw3Oei/WSRt6jEoddoo6cps/HqiybE4OUcBio/lCdhq1XrHK0LTqRXYuyeikRHBPKEc8G61HeWFj4IyRhNwU7huBmy898fR79U96osHKKAls60prfjKKjGc0i3x4cp2cy1HebrEQApN1VQ7tl0qkd/sQMx7YlvfIMQB6dP5QlQhSp30KbSdSEcc1oAa4MC72+o1/jHKQE073J9S5jXmWVw7/VuFTuBCF1uWVx2eKsBGPzfR4CxkdlWQ5DoORRtOO/OitBPDvAStw4owIRGikavl2hNbv783m58Xahb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "bzyuvjJ4fLzQE5bUmXU5TK+CN0EqPGaOkqcDW7eEtjc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SGIoSEUXqKhpFHoKolyht1CgkXV6WnhmiPFn86MfQfFj0lvvNx4Co8B1t6UQ55tc35+Vl6EOIzb9xWC4ykMHfhFWsIH1uhUH3/Em/yhT+4wjf8ukAt9pjyGw2y3zovDyhkKzg1sw/V+ABeCE6TDPWrsBTPmiOUyMQszO80aj+Qn87m44EXOYOgGk79lmbbV8mZ+FWPn8kVJ2w0zaTaxZjxwIsPjYGhYW+g4njSohawD8icdt5wL0f71FTdW1FZlVcmRzwzlpdVUkl0jvhxFgNk5ldTzy5yT0QxsB+mKknDL4vcjyQa+EayRiiSLDiOFBuQPST56Wuq66hTT4NH/OF7nRvt+tAzhV3Jc15RY5pYGrWuKK5uD3/t+YNnp1JZiRN6+E57rDN5dTTJeGMKKqU3t/hf6pXP5v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c+jlAxCEJ0rD4Y4lthiL9rPNUXIiN980Z58WPaSubcw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hREeRqvT6IEf4aqaa3DOtLHX2dcqU3VE0E8IqDznYoMK7jy1bSqJgq0MGWE0pq4zqnHtaeXQCxPEACQpxBgCmjcL/0MEEbXEyXgyf6BwhUbjcZo/BTcheemcEm4P+X1mIhe2iIaLgh8Y2kX4hW39VRjT95x016LJkG+8911TK0z4Gyae2nad7EM/r5CaQLsJ2h7fHmF/jZeLoE6dfjDXtR6hekZWWXl82qxD+wxdFw/CIK3v1BFGEN/dg4EbwJjCXx1+zOC6nq6GN08rRgTxjkSJoxYPuDYi4IQcSJsEOJzreRNz5kqK8dZoDL+CyXeqtne6jQ9a66c1eSZpcLsTV8leD5D2nw160f28qtflhJBf0TdreMyojWSKcP4uq4mv8+6lnq67BQQYkh0Jhysbo+aFVX7cu99f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c/PIwnjVwdzsRC//FRAsZRzVlPYecSHOAJWpxLhrt5I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aYSwmiXHNB8OA0sIcC4alqDKbcT6xyWdQPb584CQsa8J6OBEl8d7ZrCVdYyEKCJAUemHYtx8uwm2d5IRgFd6bLUg6asjwZTBXLZwmK5U2yqeX48Qxh1tBmVczJSS72W4sUJQqKc185XsKSt1ZzB4zPrPn5Vn/B9z1uhlEAvxfLQz06c38N6b7uSPnkTXw+M42Dr/wCCHBts5Ip5vdIO3HJ5/9JrT7rGOyrwt/9m7u1ogYN5Sktd0mc+/QGMC+GbeMx2RxfRHLigmX2K3mlaSzCIdHbwzUSW5ZDXpYoPFYokHVEy6MTp3B0aLJirnnV3xMdRNfiq7qSiQ5xuekILK0q8F/Ege9phjjvJnDFqBIpXB0Z/WHJd3EzLPNtvntuXAWV0D7agczaba0OjlqjNvyAZJMUYw/Mwc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c1aUZ9tmkaph2gfr/kwhMw+FaKWU6YELaDSBOcEgX8w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FoowuMYl8fmSozHUCn6ggfv0cDwkl+vsCcEypNOEWilJCMMj7NG7i6ZQO4S6Miq15HUtlu4wYTBSOudlGmkX6mPPkOg/7U4XlOYVOsTFYvPHJSXfgADmgfQ5ZDgIS9uIsYzaTZDrp6K5hI0ssuE7JMpPUieARc6koXNX874Pe5EC0fG5KydpfpyYCXQJNJWpj5LvGO9cDFBEQu1WH5O8McDURMftMuZKOYpdr346+syqvVSWESq8jL+yztsYFkBPf0YNEA/zczYGu54MW+8gfK0Gq036xk7zC3PsoWXCmZz5wOP7TaEmXAuF67m4geVdR1CY/OZd7REt54e2GfN4B3cirS70pwhUyJhBUIalYfxNha0qjeYQqc55Is1kitHJsbJPtwKB6XBcdBCP+oa2AZXMZOSqPZ3t", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c2cFtnS/w5nFLwQpAif+WIAr9vOxcalCgH5sFfdOG5E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DWQVStvw5fdQVEyfQEudthAwl0Ybc5MRAP47meyBywtbPD9zkcZ8/RAtKf8oU2o3XUWgVY0ViIJCRDAq2tMRg+08veUAsiRDx05VkzORwpdmqe6SL9qTvRCsh2tQ1wGDIFW3t/1tWIKo84cYxgXAo0C6agzUN/n5cBjTZTu7KphzP9j7HI6P/MpyIyIYfjQhXu5HEY1BLgSPfphWaItIMDQhgQPkiVIc+sYhJhBSxersQoQglMVTHnHvgXwJxNq0N38YFUFuXEV/XPROJJdxgtgteZ4yGbHcLvMTRSRwKBok0lUKwA4qA5S/Bje6PEzZFYnPCz7wuK5bZw3wyEynzU+Sd8KXMGwoacqxAPAhgbltcOEuB2Xk1IHsOhmW8lplzrnuULHSH66KyLp8l7LXRv/F/Ekudf+w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c3B53XW8Qc24b+yf91GMCK7QBt+GgCUZXpM253c+kvc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3tyvsP9gpzJbsAGcClaPDLjZRpAeotbg1yIAfq02PvNheP/ybXrFkBFxwyoE4WctiOYotWV4RyKdYX7h6DjXVK8wJv9mf0NWOczHQhDRI6G3eW69I0gpNak58s7uhv7NtkaXCnHoil/ze22AYsg1ekLfh+CfWFoun9hNiUsea5Blm+dRg/JVFg4hGeCXTgE9bTHEN8TGPCiBU/EUu2nNBToNlcdyAehiUSa0XsacJWKiBoDy2j0e8OYW5KJRy0dTngsRtCgzXxHT592rGs0G5+dtzV2+i4sqs8gXdI5VNREZVKpkfJYIVvsbVsqsbTpCto/F/a9v8srUHplYYSUz+2Rg9FlIN1c4Tin1tc+4Q1aLhkk5Ureiw3R/XKyzUzMaKaNj6Ny9tQo001E83aQRsCa0ug6oDi9a", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c3TZ8mjZ6wouU9oeSaTqFkGPopvZ6s0Wg7h+8S+a2oA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NXsImx9SsCvQ0woPis9ZKUXy9DhbFg4I0IhjwBvjkDETmWKp53UAHBQ7dxtrr+IFbta6Txd4mBL9CO67wD3xym2wECa9PaLdwWM22M1jQ6tKzq9H2mgxk1FzP1sGP3Nq/bZ1qIVtPBZwROxsJ2pTHRx9eoEcOjhiBw7lWEup8LyPnr4UpS4He80aBiLJ6VV3kqV7upZX+ZpunFmPKmgifrJyvaZGtCstDVqAHQP5Qmokr7xm56ArGe0F7Qb9H4/U2fIw6+dT7ptogcJyqyxbbd9aL8NPe0BR+DZDicKkA/FBVSYAPnNVrhNcEeLbK+WWE99ToMUOtO50mBSHZdnm08wsAZfPP08FbRJM5P1rcTRVP4v6P+fRQUPdon3Z3ARI2rI2ZYvZVVKOKpBNak9dTEbUM4hxH4eX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c3WlbjlrZSa8G5riL3z0NWagZ32RuKXSeMspsJ/HbcA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SkfAGQPqJyH6I/jcnFaRKIOv2oXpoZ0T12hnnMzCbnCimhqoWXlpw1mIDXfVv9A3dFCuy0nJ1kBnvFhMCCo+iUhr0Ls4Wx25yWINMVbbolHgTLohkkomevoPF/banqQl7lHYjPb/njt/8CA2ATW4ssAPV1Jtoq1ghKHjWW5Eq1R3qEIIghDGYFW6pEQb5s6/zAaTa7Mqfj+eBx36ptrQXh1L4EZz/PRpBmU6g4VOyy5VuYVZcQTKAc3ywMJcRqM3nnSsDVNL8SkMd6INJgIrNDPFLYP5mZPD9axVV8kbTfTFDtpAQez7dvxohnwVxV3LRptE+OqLVWM2OShz/+iy0eNxh4ccV/gvRiLVWgGl5mxG6MtOZv8QsIQlg/kNZ3LC1bMuyDbpd2Y0N6PeL7nDI4ciBOlHHWrT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c3rNWWDQRj68zGBNkSXRlUhDEHG0c9pJ86VhdbUylPU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uu9ySZZz/Wssah5tz6f0WDM6HV3bvgTb2bV++8IcenFRXlMuJePcur3SrMr4CUHmHAcIrxgbGhaeEPsV2m4n+4hVO3rLIkOT8peu8lWzyx9t8NWiE5F07ZrlV4AO27+VSZwEJsHvPBb2jIBsSIOb7BCO4ZoL4+YUAbL2inx3biKg2lwJnv3bVVRi4iC/t+oDLpyMlyIdkyU0SFnqvccLIMyyHpvwAXmc+5W1tJma+JwuskPAIxV0f5+UAoV4B4PBPwAoQgNyhDlHrNP9OmJwHiIiOal2hdAPh1VVnZK3gk7osu5Ywb+CN1LnEeL+XrtJBDLNiJc+tFCWZJqGPxFugEzy007Jj4lJTcylyfSAYOmBh7mZzhOVCs0ek9tjtQ+K/8ikuKHc+Y1nmZ13Q3APL+OVbX3bNd4U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c4+4OU/PB57AuEPYcxDCR3UI8aLRpfipxavTHqMt6Gc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HbRYqkTXOh62iWggL11wNgwpapZPyOL0ggfrNBBVVqqKAKbwsvxPQ3yQKLkg9kXH84uFnLbAzFuNCMS57+KB9NxankIgMtmhNG5xZ7F0gnDkdd0L84DzwP8LOf2b5cUsH4C7TSZN4qoYYgDOFpaflM5YgEtB5/d7JZjzd2y8l+KfT/uA9r+LQdgkcwcTT5y1rLH7OYewMKWfghapqOIyVeM1emCMRrFEexW2CTDeK+PEbFwzVkubJZoofpmnej/ZNH0Ty4cOfDtt5piAcIaR16PJrp6J0lZjhbu899g8q1lWmz60mEGl94LR1K2ALge9ECvyM5HQ5tgBpPWHOxoWnNHMn0IuT39pEKsLOJtWOLviouPIq5MDftVrT2lTYsJd0NkPlHnCW0NIljeT5cSrpquhVRaJW5cN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c41dBRF2hhAEiyP4TCXDS+4TH4sUgcsu5YjF9whZhX4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+TyaCP7xxcWSZJchK5R35Pgwq9lYf2tU4uhx7v3GR1j9WHV9afX7quYaGp5kY9Y8vUAV6tEUPIlQzig4AFPFVyvyRPHSxnlk7muGivr3vIqkGWK5caQUBmA/c1Mr0LEqg1N2ZCH0ZS2WT68LLiMusr/UjJDKDlFQH53ra7zOvJx0wCgfBIEdWmBagkXbpCo0Ix3MSHv80ZXb1HWL32kJPh7JOLTX1ytDtgr2gltIRg5p0mPvqK2qUfXGZGWFGw7CqnsENueat+7UxJ4nTB0leA1O/obbZVm/iEWBUMP2BvgLOCU2xz/h/Ft8HeWsg6pP3J0c+jbcE85YD+Qzijw/aP67cn38CrARyZfyjJ+8IhSR4ooP0u8VqFlulhIySzh8rvX5MSsgyn3v4L8eYS9rc0Km8ixp70ND", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c4Awd/hfmTYuc9E0OT3ofeK+Y7G1R/NBLi/4xgG7M4c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s4ea2bU1GnSWIBH7eF/2qOXslP1qT/mFVMaJCFpBqHbJzd6EIs7ueirYbyAMbtxWUZ6UjqygS0Y/lv7pfXQHa64ZrePEBCR5KM8BIfCEZiigV01I2krv4+A2GAm/az2gkqPhlPePVQ/+3zIsV11IpPsHbapSsI9ua5NvNpmAYDc2ArLcBTDz6tLXC702EUUdYTfFDMui/7MOTbwUXTabm8yqsVtOQCP3IS5aUMrwOTAIjJNX/FzT5bsRnKgYhx+LJPqirq6btJy1/1jVDZvoQHzskM9P+bC8Y5MVG0M9k+0SortmcpNcAwM/pxaR9JtlMxSF/LwF+xxcB+qxWxCsir3m99CsJ2ZxzcmE7xhVO/d4ftgXxahu2HZsc2IEfqCASRAg52oIozvOZ2lBBGryNJSZJl1sdu8A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c4Nm0T5EeXi8KszfFvOHIqNgrpaZW/nXFbgSSvV/oUQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GKJ+x7COxTJ3koj7S0YWkUCMhVBsH1L57omjkPub7gLW2+p30LlBY7LgRIZSj9i8c86a54flop8ZYbLUojl80LJ+A/dH72wQmPkSjnW7yCl+OytSsA5eA2uSqkQWHsVNJ333hrWr//G4M/u1mXzUiVPJCDj3uuBiHPaVykBdhw6Ugj5tdN5snZ//B5zL8zn0o3HPREUKiamjuExdozTVMDROyw+7CGe2AhM8VtA10S/NN2cQm2w2Ct8YQW7LASPErDjqOw/cYsQSHOaY/BvIYmveWnEECD41d2dSR4d+CM+smwMj25Vycm+d2P+PWW9tQoBF4YauXfi0NMV4MGIII216CnyKGXY8hS5iQh+O0Hk46dVHy1XWDDFq/TB+o6CRm7KQtU/ylm88FrHTnnUQpo77yCiUz0bF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c55m0DbS1vjW/W88pOjB1xPHkiJI4iim3+xYoMbDSSQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "61n/4019a+0xq9zE+ujmqxANlrT+0J5MASxMRnpFmMtXrQQvqbtMgcfEvsVaXStl/ikCphjGipkRNTEXkdHJg44QYXK9RF/X/tGcooaBV34SaffumgCkO3nZxY8TUUTLDBBb698qAoc4YB//wCYO+SK4jBKSD5+Rl5B4smFzmkobB7BhCqsxz2mNTsKSPJLFQReVAdRe0ecqP+Gsu81VNnpMsMPXMTX07oWjd01RpztYe0ViICw71YvP4yaXQn8szXHY6YKT0FpAHUQFfY/aooWjZufWj+U0zObf8BnUlFLaXuXyTlFWEr3smTDUgUKHjlZangrHNvHsR7ErFCOcmgg9HY+8QRnLAZKrA7U8ks44ThzT0dI6SGuM79diJ29tZNTSvTz09hcKfWA/cbiNDLUEXj9JhWDn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c7JnmNAJ1yDGS/P/oSPP0cUayzVSp+/NBN30o3xfolU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/7jc2q4K6utYpa5RqFakfV+g2+2ZeEyJWJrAv9EiI6ZEoeoGnBd7tG4y659x6O2wgwutOKD9aJ86Qnw1hs9fUA6PMEO9kNXW3Ujy5k+fgsYcZuFKUIynlhdmr1All/IEqkY6Ov/nyv/BifWjDeHhu2mrIqS0yrAcEYd5RjYhF+Aj+tHuKynQRq9hKis0z+BHCRVyTI8BVUfrQkJoj2KtVyaib98Cu5f3/RuL9iHfxCb0G326L603MZZFjBnIDLDxV9WvURq1DDIdM9jjWTpKpl1h1ahTRr7Bnxwiij1pDiJreY6iBKIYGFWTTiu3EyH6evhv/Z0IBD1dYoqJlyWUVa00ntFtmpbfD5hxLzq4ta57/pSRf3WqgGHvM7Sr7GK5j97fjBdgeadYm12FXRB7Pf8cZRNGcK1A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c7oXahbpJKkg/IxG5SoblfTcM7bqyUxxmU5tkZUjISY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2GSlWim+LLBU/dNdzNte54qifzcLo98rXggik8Tv1NeiEY2a5RejquddPiN15QZgRBFdL8Xg6V6Pm2uG7lA/AnA5SvhaKLQBrFdeNmcjs79D1mj4cWJ4nQvfRK/BbHtz1MaXhpkci0Hd1KZJ+lTB8mBGVJJuzYEKE4MBmPW0pmc76foHunOgOxjf83CLzKNLQ8+plrNqedU8FpxQUE0YZuXHbku3O8LlyBaKtlJwC8jUijldIM+aD+i3kZBcNOe4vLue0mwRIxdlKEvxpw17Ssjp+D0qC64NNM44qgj3n7hkI0IIwmOc7FMYSVAaUY1pUHsa4ETs2sDbGpSkiM3rO3cGTP2ib+oZ16Z7qeatYpnmdsZHw1mAI7MUR3zzvbajKzUjkuErmLWb2tjTFgzFhWfdhcBdLXEt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c846bpOKcFQvz8vV/3zPBx8nixPwlQAZrfR+Qv/iE3U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ELRxdOexyMqUFf9AScMhd5QTLtPjk5FRGB3aZ2N0j0q4DTebvclzm8dkG5ih+RkhOmpKsIhWR6vpyUV6VuCiHGFMcpjmuBPbsmjfZBlRfleWgOP/ekbo0q3ypVUhum24VrdkenMdCZ4of8vi8ArJ9AHsu7q5gi4ShjN8mHId+S0TwTWg8kflCdZvP62adARYwcE4qjqNXUajakQDeZwoRPanhOOPcNHpen0zef9XZBCyCESzZOY9wS3JR/c8Oa1VHxPNlDVwYAiiuR+VawSw0HuGIS8l6WIfi/ybWuE1u4CVnokzXR1eGen41jCFhwBcQ6yUoyQapeD1rn79eRG/WM4G5NTlLJURj1Us4ancAGtMBqgGIzTy+ak9r0wNlyNJaZ5u7WRGM2RlFRWLEqnaWCs4sF60AMdf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c8tgsoG8VWqBavGRaIucb2txY/as8GrdhyOGDTJNStc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/Z0Njl9yjMevT+2dEYro37aUPe+YzB6KJeQYxbTfNSHFgqxfof0ddURvnI/Bxwh7AdPmuqO2olfB3ylFVaaapiIE8xer3eCEJbHFc9LKjJysg0WLVPIaNEDTzvdavncJLnrxsPKPgqdUitpCtoIF9g/nsUVB+jVUH6Cl3ZfNsv9PsvJNh0QVfZuTXjvOOPeGAQO9t1qFeoct6IHlpSJR5fvmyu1IHfuJKwlIaMtjO/quO3dLmcfV2rxu1CJ0i1oopl7h+zBPzUaedUV0IPhGLl1Zcw6UWX5pBgscPO0aliHkhmJofTagOOgbmuOgK0y+uWLF9cuFIIl2cKn9EjTV3V3NziQLNoMtNyRay/Of5MrczjZzbvbEqQlnLaKnLDcmXsRTHQtI7/enNVPXXjlLqTWc2nxNa9FX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "c9yD/XucfohmjYvStHUIgPLHa0d/reFDX6H3o5XjeNU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "icLfeEANnRyhkZtwUpTZPC5ivL6TYqVm1bCmAFS5nv0aux+CRL9Rboyinjn+G9jLjVt4Li9XqnFm5mU9w/6kRr7OuvOtWccGC87dVk/WoxpYqFkaq2Wmpk/he9LFcz6S01tB5q69L9GiQwV9jfwUXZIDrmiyFmslrfC1CIVb5lPqmI7fOk2nYZJ6k2OplWaYB33A35zq4Iyu9vcDkrt5TdO9ph54wU7EEkNPMrGIbhndYv2+hOE6/+1YFNThIyFLsUTlQFI0h78TWGdi1s/smRhdEdiX/DzWbtEYh7bJ4ke5ykSjIfbrlQ6sHEO3JPAZAz7Xm4ubEgUKWlPISRAqDILViBI6ytNrd45zItgHpIxhGwbFzx+xGbRDoe2X6CEYMZk+QjKQPjG/nIS0r5dVciPBJvePweYC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cAJviYaizYM4wmHI9AKSHjhhwLLSqCJvezT/9Kxhiu8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jSz65dxmqkRQB3uvwUHyTx5e1qwsRi8y78WrSnhuBvuaTd/sXk0Vf0I55du44u8gnxcPFQJ6Ew36Mah4yWsGEsrR7dZPuJJFuBkXUub1CiDWOntwugGTSmnD7DRWvKzwVJqQ3UGMFNhN7aWCmUXcZpzdGPwoLNsFIGbs1ioHHzdfk3EOEVbSR1QI9aRhAYzHjSKB5qokbdkrYC+IeXnAWqqJ5MStlMCCCA37pEcGFGi94VD6dJ2lycI3F444R3PeXyOqIzszIrWga2hY2JzwjIQiZGzWQZRCZZ5B3AtkN/BeLmkYuqigUD1vm86o0jC06MqDP/RAcA0ivtIoPFDAJxR+F/5wgjgujnZrb9RSdBUNyfDhvTfddEi65RD6WkyGVPOuJLg0N1tWj6PLt9DlwRePjcNny/W6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cAYqyyaSigXIBiet10GgbConx290H/kDRm9R8wWik+Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YkGC+mpaSz4uB/0XZgzzOif03GxrD5mckDWCbcBLDAu+H2KiBd8NxjymeWDpoRG+oYhHxSc8LShFMscs8Kv65LS+/j4GnrMfx8T7MS8dvFA2mYKTQ7SrC5YEfEr0qrmfKnV1akV79yFMoin0q0WTVcqfXkKXTr0pVyBZtR9K5ukkjfuKco/MX0hJBfRZaJerOjlDWIuDKHJJgqexNCTRlcQs9xPOefB03Duz5VxwgVyd2P7m+fDlOfb1/cEqQpOE1OrgTX4EIGt+9AGtCJrww3UGQv2aQwS9GRKdUa6tdMYU6qbMDKoVUk0md+jeVUIu54dB5NVm0oALfNd3re5Kg4LZzke+X8SQjT315+B2OUWy0/FhKswrY1QDNS2waHoiVzMSnFnTyarn0Cj11QsfTLEtv+RBnPb/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cDBdJgZz6pA9PklUw7ASr9Y429xAyzrTy/ViyG1bGTA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N//W50tZ1aXYjuuRgmH9DxnV+ty4CfzUDwFS8EEovdi9uDDPz56ckVp/m65hX5is9F9rXxI8WDJRhl7hl3qxj9jedADPbaLnRNU8r0nbRaMqYpgWOb+7hT59MKHxxWU37rdNV2dSJUrQcG/FDqcu3buhH6i4vILPPuddbZanNz3lAMnEkc3B3nmMhYLl4Hfnpe6PuxjT6zsfhlCEhAeCAOw2rndiiDE8rhdNoamRpiNzwnBR0U50tG9aFNd3kBo6JFLNV5+N0lfjEMbzEUfaWF6Uhf1n764CvEYhdfglBtjwyUnzIOzJvF7EbQe5Vr2+6DBHq0rXmgzZMQIjGYdHG+kOxJijJAldKnVahxK7BN4k+VyE5suM2Q4tRuYQbIx6aSJyhedGJKkEKHqHDsafo4ksu9v/EC3p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cDvfqZpaaP4FaO5GDNA067kC+wxJSNNprKWT71LKmX0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "16kyc/rbuxXWwGi3Zvf+lSiFQuBwhJvL73Kpkpb5+j+MlbeuzqKXHensZ1+sk8PNzEjO/iqqbVvF0AJ9W87S+GJPk9YMgUs7RG+WbACXaHMcdrlKBvccSb4K7ZaxbkYXyCTP8Pwvr27O6m85m+nx6L+pRMFCs/FDUzwK6yOkn1waoSpxEKmmeNZDW0/VC9LY26+jx6EWN/GHqg+0P4SMeaKhYUZdJDqlAlaORb66S+ZvoFwoyMgdcOyKSHzt7Yz4Ox6KlcnlBo6qOhHOR073DfTjh3C3/jBI2mAFVI8H3p/QNIkvLj2c/KZDaIQQe7eWMHiVnI3FPD68pnKUqG6VZRHU+/fvEyNwHbWCr9/pxxh6qpaDc/VaUe0LFdLp/p/hgoFWzMb9iiNqKB2ywJWkw6+JLoDmpA3b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cExHgDpNLrZLT7IEmfXRo3CEAWS2Yt8EI1L+lYiSRzM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hHeZvxWnXTyuYF//bZxshFxbxnDN7YxehO93CZsLDG6uH67OQI4Ya66ktD75E9RpwjSZgY6T5sVp8lB2I12IPeFyxvNEIcqP6RCIFllDXNyLp/cF8u+OKUzO2R0mD47DjqoRVB6viX7VkKYHsOikLZMb6l2Wvl2gW14Z5SCBzkOzehDdIp7DtOd6v/OiRE0UOdRdKJjiEBRkKX0dCul/srAOo+uwhuw0vL9vKeBnCl4woKHX6rz7MJaRgZnmwjU2GcYZ3awssmNtMal/IMpZFs4DmHxE53HU1CTvI+EHT6YceJjzx6qc4tXqNAmN+Ykzm3TdH0FuABoFOji3v1bkCzih6rOU+042TfNkGduJXINxzj37aW0CBH0p+m0wDLCu/rhjjeGHQoCaLnWINjsFpTxTJNF4li+p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cGV61+zL+qFVoRv4m5vfSA54KqNIbMB8ZAiZu7NVsgw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0unPVctGUsqyVzebJrEFmfLgSCEz/B2hq/uPQDpDwmTRskWOcwWL+TJsAvwPP8xGaL8M8ZrhWtAB8IfAEg7WxR2PeC33HKe0xnIPF/qmT8N6wQF3SgubvgS5RLXQ6IhTmdKMDzSRWrh0hZxreKhc3yrcMG/A3dfMVywZpjHrSv6v0jX/v8FX0A6JodDpF3Mbq5gJcNXPKbenb5f8OEV6Z8Crl700JuX2/j+1Ia2UUwzwi9MpqiD/+9DWLkv52IgwzZrYFdV8fLg1RfyMkU8VFSi8LYMchgRBPHdfBLEQUokKlhiMD+L+q0d0IIf0S4CMOjIIc4zmmo7ccBbTvdCtk4mkHyeVC5RQbr2nfQopcgn37NJpd//jGyycUKsfVlmmKjiDWKuIF2sCS4zvTYRdAITdlWdPdyCN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cHOm21oIDVwUv+MGOfO1Tte/SkcNQBa1Th4nbaGFQI0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "J74n7h26jmKpnpLcJR8D7iJX/pFnilWaxXRiUeAfN1e2muiOxveT8xJnI4DaYVXGahT7DVEPAYS+rzMh5LZS1Wd1CItc4+BuTkK0pEzoa7SJM59onx/iAT6Obkm6GqTCvcFje30Xv6bStFrMvCSqG2vXtZU7ZXZreUa80P4EBpFK/TB9tuUNWOvR5y7KTDONalyIxrDveYb8S6EDgVnXQ7cU5GyPLpxGcRIMGLvIA8QpwEIkRBppo9GvsIJvMCBUQqGlZvQL51GeiLtYOUSnctYDJ42AZT/FRiF2WjxPZqeWerWm2oWWNjIgdbHNY2x/yUO/w4E0nSl35B91rSBh22iDXxizqI1Vx+XPjQdvoV4CYQp8weUIgWRmX/cI6n1/FlRTbXZFJXymQpFEcJIkB0zXFdK4sox0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cJhA+mBCPMvZwNEZKu6Ge1DVkhL+KqXlFECQI3xuYNg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ncz3aI3iCFk/PZrN8QbwGIIXYSayW0XSLLiOlszRpc1O2erodXPatwlTQ3TR8YsbLd4e7N5oJVejG8mJFBXzwp9JKL1ONnTJH2iwy6LDxY7VfeBRnYmAisZGuUrM5rVc4NZzRERHI5FkvkSTsBdM/uex2YeZP/4uYJuC3eky4rulENRjF4bSES58rJM35ojPJeSmR8wRa9k2FKBIS9xUWe4r3h5Zx8sOWO45OTzfrq9vbSDYr+7yuTUp0FCO1Vsi3hV7slh+mOi0GR0LKqGY8u/5cO2/uTBFkyTbthMXI1rLwCxKrrCx+lve0H0Dd8+e+Csanafz3jIXJnWY9Eo5sArqZIcMHHHqshshrvzx70hp5jlHISVyMUioWharKwUMuQ85g5qA534gNLhbqqO8Y8aaMq9TcTfQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cJyMA7psuL+kXnaTQ53/8H1QNbsJrl25oZ2ijKBcOg8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SxzrHKi9DRo8VmiQil565aUoA0w6tcvReA9Wsdt9wEkZQaLAvtd7tzLVfFpKDVrLtAAcK4z68Bi1LeRPPd7aTSqmtR/Hu+dMliOxVSWh6BveKhm+rI4tv4FvamfXwUSeENT5OgFeuQyOauJgQykIAe/u28vdgkfnOThmVJdhznC/bWEmgKzyLqNwnSyR+i2P/jcmWWkOc9cBxGlVr0TFHa2Po/GDivhdJmNBlsYHA+E8XaQbbBoyU/dXT7GCeF7bcOCFyaIpWJ1FkQvEHK0m/C9gAmELo659q5aA9y1KetvzyJj6MEQ7P3OyjEPW1LwGDW89sakZmwSlqufmXBgtIJy3vfp5lKS5qyWTRzvf8M7T309EzeD70JJtVNM3W1JYF/yRwwGvgbVGWHf8c8oxZpWH5VIeKAwJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cKVXymt+DtMnHZFQMyPryqT1WU8snssDfTR4fCPR954", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kZINJw53rSIA1sdrVBXDM4igkYVPRWOr/Pygc1dmvkGsA7zsuddpFfqJtJP7Dpm3QevYY5+DM/B0q10d1LbIpTPhZY4UWY4TiDmIvm7btSsAN1pHQM85qZNRGyeGNacyRfpocOkyZsMiFS4mVos3/9bzi2LV4Rtuz3mzsO7YbCCvnhFw+ffHQp9PsY/RFraGrjP8ISQDP8puKmPhrrMzb+I1xe3DcI/t+bIDBEcCFK4k7R1Jw7A3CQ08ttMa2ao+Oq0PANDEjMe/B1ya7INTBhnsfhyckHpXHbtURaSz6NTcwhSHHdiZo5savH0w8O40srQ1hIZSh+QYiT1aLtgyigvA8btVI7jSxsbYCh7e9ZuPbm/3WfKa0K+39DKdBsjM2+ze4Wisc42dp6ZM5uGpTNTEnpzw0Bwb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cKklC2PTlOZgANR3m1mcKZ6xHGzKJmETr88DZTCD4C4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pG0iQPmIbVwXWJxR3NKyC5Mco/AVsqxRJmsbR2tJ5oq1vfzQiN/ygISMTGBKs17uqI+QcZtipzFmn2FxK1lar8gqAa+gPiDJXmVDlBU4WFNsAdO/gSJnIeS1IoZvN4d25xbIpnWQ1U4ppVnontFCKSYYtxHz/Go5auwrYUFy8FIx1yK/7uCmx89d24C7xAo+8f3QIn+nMgiF+iCgdn4Gh1GixeIeo7ezEQCKFUX5MNXFpXqmoKHIJTy9Ii5PeRfe+ej98Ri3oJInOmEHDT8PTpbAR6SQryLRNsgTZ486AaP7I6BcXHwvEFog4Fb5jPdA2QjQ6HMIjPYZx/g/CoKA5k7OiGgjPVGhyDTE082c7g/3lgrvxx9G0yg/5lXgDdLC3j0Nim5YKXlRXnswLTgTpmg/y6b0jy2o", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cLHySnKK0O+O4uvYlI5Kp1hNoDsIXqT+2ToXBZWV2qc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ASl3rzkWuoe+iSuD0E7SN8pF4I7oLCfdgxC7jDHrnErkekpA9S3l/+qMC0JnzPK9trdpuSESArM4TzCejCYF/dLSSZLXhN1+nIauHpch78C0/isXvvkCkkJM5/BjXej05apvNbv2L3pYffhts+iqkvoQVw+G0289SI61GhcHtMmYyGwrF9NyoGnGqbb5sUNbxcv6cduGJAUWKQX1Qg4FC8dvm7GOkwZ0hgRLw6cvn1fn3kmRWzHMkuxAWdeLXs1I3joaOTa/QYGBgIQF7QiQ+ahohAmXvXcP/SXx9uYcB/aayH/3bJLDZkRE0h398Hna0Od1gL512evhMNQ3+0jY1BUfM4KHrEDUK04+9hbzG2Y0HHYvMNNhHcCp41sA5jmX0mZ97MYsciIvqzEi0BqYio+woLuE4fLt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cLc163hp1aqnbxBL3xIruXqRI/Oxr2YELlkzjplvCIc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gP5MewialnBE8UBUkL4IiTn26OaHBhGxONuNQcZUZAO6VOMOSzWZvnh0u6QIXsMcBMqP5ueE8URyn9MU+c5amGPp0fR2R8I/j60eU7y1yxaXdov7MBVbDtuQjNWpnDgRhp/RPw71SkhNAil4aINZtcIsW+0LxINeIGrN+eQqZjGc7sRgAlrH0fnFGv0XH5x/0DojIlkxbHK+WoE6GCdHJ4plmIkkgIQQ/9tJ2EyfT9X8VGPrX82VH+wrZhV3GySU+9BLWY/P6u04BBZaMrFm5G/AjHfWL7g+5JLu5qfYqEf7VGSJ9tRaHXi5U3pW5CzXidnQ0HkgiNc+45/iy45sPU7XX/XO8ASV8aZeI7BsHlKKtNkYsZeqKwQuFaCVrlZHs+TpdJIhtrNOfA2ZKD9g5hIDjGKUUbFi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cNb1nK/MfxWLhr2Bawt8esQqDMP8HRfHK4tKooiSuBo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TjWIuJX1/Hbon2fhFpsYYx6wT4dJdwnklnNWju+YNa1A+quE9Du1rH2BbpaTgcDSDVv0qlkzxnJ95ry3iB1nggetg74b6DKQoUckXa1vOXIpwh1vB7m+q2T1bqnFWJthCO6sVJJ5wGBnALZs2PQG31x1CM61RXLX2YHCaypVU2NqTfiZRiUeeKCvSdiYQSlbZccO/dp/50RAdC+lrppcEEq68j4FenVQAQLVoPcWlHU8V2cPw8ruHVp7zKydu4vB5fvFS69gwvjgFA1j4n9FCj+Xlv4nMsD/EzenyMp+pe+oZILZVi2XZ6/sSrRaUDHyjYUljaovGEc37g8A0DF3evVTTsZGwZNJGuBc59WaWcxlLJ83bcs9lNXmz5qG563XB359tj/5qitKDXpamSLe/OYNiYx5KLPd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cNeBBIqRkoSn4yaCTFq0ZQJEAIVuLE635HQCM43a1z0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E8sFgNgKtpjokaRs06i7W78XpvDicHqSzkbguD0DJPiaCD/sLNk5pN/XCsC4vjzyfGAOcsC2/1tBFBGxAHjNwn6rCXGy17rhXdFElRdEdjHSouqsKs16V2v5w4poMuaUS+k9pyi2DDEtOxx4e1zEjFmHbX8gCAZrwIUh/1WvkpByeU9GbbZTnKsmVkbkyUq3/0AC1zC9OvwkmaRHE+qkmwxSPa2dGyXtHsTQSjW0kVayzz4sZdK0dC2cYTQfyOvsTj5lAfvQufn7IDv1+f3Xa0BqPTsoL0Eja6pWcgvZh+2xbRRrAGviy2W1X6K3M9QsTxotqCb663oZ28BH0lOgSZjip+nnrEntkHxg8KBglAJ+jUYvQcB8Y4QPw+uufAypO/TH5MZ+CZItnqhkLM8EInW+RflDB3gt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cQSiWE4RTjo1cdiavqmR9mjfUBu0xj2UQ0E2BVwyBK4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lQBGPOIVfZEDE7g3oBr44rX7VuXcLvvaoiQh1JAGiBrtjFFudor05pNqDxbugGcbrid2naa/GmvBmYe5ch6CLDO2oENQ0tflb5OMe+KxZH6z9uo9BBtyRAb+NYGfiVPKRV39kwwKgv0ReHuVoxq2UwYorbpIfwIMChQ4zUFV4PJzTypsB7+vfVqhEclWOs35Z4Y1wXJfhx+uG2OQCbHW+UuPtVui+xpEjiX7JroryZpCH7MAKwhEztmeJZphKCzyPsw7DP5YkrnGYfqwXiF0lNQZoHdcaGBlkbqA+SlveFtoz8utxVUYmQNBOsucqbsLBVZY3/JZnXQ28WqFqyBtYuOLWHY+39yqwwtsaNPaeqGrme+19jz0S093Xq4K9fXlc6QKc37PEM+VD/bN/IzETuy5PFHlaUMF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cQkQKCxdfPAe11bEhHcvDlaTYBuKowCdb5NMYPFRlTA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MjWeyb5yDS354COpE7DvY0YECj5eaJ0pvLn/sipovrXY4iUuauYXUgpsMWOjfCzMOUYeUoYwCEkhCrPj5aKvaNVqSYCP2mH8CkUJd5m9qrcvkUjDppHbFvQtmLZO5Yx7/rNK7DhYjkJLsVCC2TrLQDOb5FQvIx0KkzvELuRD9vt/oXZJ9PUZJ0hrb3HIkQTlC15mTde1BBrPeVvlXtJTeMz8H8odBYwHGAwHuA0J9FTyCIpFETfPaYT49xTLHl+wgM5HsmCQsppDXgInUT9DaE0leuuzYNZloiakXA1dlxBCtPcFPDD0WCylmhLxT8RfuX051yMaOtq3g7NBsNiWrcChBV+hrbpGZ8J5ZbtK3TdTxmmBlBpZg4VktnvhNAu8AF9/DUrHD9vy+FM3VgS7zdLlXkdcRWzE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cR+af6+f8NiKoTx9/ux1Mv/Kh5LsKre/irBF/4J9Ouw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vxKk+00wgZ+hpcKfzD5z+bICZB+iRgd3o2BwnPpLBSvVSxPGRJlW/HF+jJ+4KenY304+qyEiBoMLYJJAMN0QoM5HKyDMlx2WDsQGwiSIi/qzDUYpRflB+AQts5+QZ4rGMfzE/PQm29DlM+aEs8k+mEE0Z1gc8Md1odmznuSN3gDd9VbBD4VMVKIfp63Cm0hPFzb0lfiVrNyPnKNQU/PX3T/6wjP2b/i6qTi2eCY4DIub/uRH7WqroBak+MlUISe2KdVDCqF1HD4fy3boGAsUQoUQz0WPC37fUk61os34zfqH95tI6BuV4Mx2PMAxZbgCu9cCrV9PZrckRqrTRnVxqZbKNTZhY6WCyh52E4yYWKEjPUTEsh6uQH/1QF1gvsjvgnvkGIhf3rceyc5clAizsieuwCRp2578", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cR3Wzm2i71DAfNRbx0VplIElW8qcyrzEDgPUNCAKE2g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ci4tH0pZBCvLpimFnblIlfKNaMZr9tCAimnnFyXLGQramriBM7j6WU+Goy3vdsqHGXDLg48JhAvaq1i3X+s+SGvWAaxOIl2g3sEkNzEvyhL/IdfJZEbuOfbscr5cv4iZjrU6Lwf3mcBeN3X2J19EkPRCFJSf4isVPdd8QTvXDfpYMGsexnrIA0gyWRLMfxzUsqjw+cgEtOXO4v0IyBWob68QoAAbTf/9P2cfWks/68EfWMmpsGW+E5BRBF4D2mi5AFWO//vPRwMewWRDoJw2cxeQ75Y6x42DP8RCbNCOur381KscutsILBlhqE3ePjBs/G8NPNbKkX7JJrrsMHE3M53MdS0xVetOd4V1at3eTjnIFIxRo8xHfb2ExVarKrFnj43aKQ0D5sq9ZCD5Lrdt1KwnoL9mzqKu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cRFV/xjI4WKktvraMv1n9GjV6AW0m1a5GcEm/8MafD8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r2d/WgLzQYkF6fPr8GmgfnPAea6DcN/oqunl3wCEwD5MsFiKlLcvqsTVkhMlynetv2gaRG8IIJ4+nwEN2DyGVfDJHWUItxTCgA+A8zJMhbjv1WCW9Z4j0BC4Li8nSDKKvvul5vR/WMWQskTTO6VP0/IjrBO4L9n76W2qsrq5caRkjeeA+53AoRZp8Q7OAdR8jFq3xJmlIkIN86123u4ksPzNcSUtn3z9jSaaY6VeDLnknR6xRHk8O8EAiofhTG630W0dEajWi8vd83tpRUfT+1FajZu9bIe8GQ2oeS7+hEVRVcuEopk0zXt9WTmCycKLlNlPDEcGwHGh1SUZVOCJmvPWvWfQvFUemJxDWyTrUZaW0uQVDgE3h55JMJQV+ti7JmCeCgDtDmDUYnWAzBUgMZVjrDiXcleA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cTB1Bk3ml7TVjl+kZYSvhChUM2gZNpZkvuH4BQzv5ak", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F1bO8U3igopok7hw8k8wdWwjKXH3FIoZ7YrWpj2Lnkncl3V5DzoStVa0bYyX3J3MzLWMz8RhDIquMQl2UCJkX9rsfFsCS2X3UVP/nM2GSC/hsGItgIIvVzbtTXug5xA0hOLa8owpMTF4svYA8+mR6adV4W9+PdXXnSUMNzLu49k3Sy+xOkZO47145Bcu1lEz3x5T9BDekwQpfz5BrlpjSA5FBQP/b/RHCoE9RxbCBf61+b5yovuSnEMttt9w1HXxQhCfZEkuZIiRpm2OFPmQPe24+TIczfkr+eKaUKnc0tw8qcR8VXIMhiZzZDPYOR5eXjLio1vVyGyB9AN+nehzVmizaMurQLkjNCkNsYHMjEGYJ/vOeMX3cEkZmq8pxN7Ai3iRyb6nXNEs2jO37l55ImkIT41LxLdJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cTpqMsf/veXxaZonIPGPFUIes05UhVK/U2aEN9Nu8Mk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vY5H0P3/1CwfsNeRJp3idb1Cmkl5gSNmbEqVPbNvR3y6bDKJvQFRFb4K/lf/GMpMfspXTW0Rlc8EIGy+rqHG8ty+07PzVWtcITgNTWYqBnEIoQyUevYUXd1VS3GJKhzo4o8mv57SZysIxKnN69N7i9f9PMVRbaa5DiIhEZqs5HwTeoVeYGBSAiCH5ml//p0wPAot1yA3VlS8N+218w5qsggCG27iAVcgTv+Zgp3M6LqHVMd8zHEMvtGBe0e2rocvwGAhybCENO00w3d+0BN8dLb1VPgCXgnc5ZEqV4v4PftWuJDFxjOiOYm78YB1dLqzFz5MvpznC+q1q6n4sXeG+GXtVyyAOwWKJCgb+ETNyXVO/+oUR57lPqbuDcKrZDJLCuCq/kWNQBKqJil9RpciYk4nKUoIsyak", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cTru7WDcBA6IXE54zzpmhUTle50S7rmOvOA6H+jeDYI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xT+1AOmtG3Bt7t9hS7pKI6v6FciAVMPU5xR8w58WiXvKITNXL6akjJ4lmzuXXR3HdEGYMwStqBU/H10aJEGT/7VQHlhkN/wtOKQd+lby0v7DDmLQMHfQv1tqQbjSTrL+83+7iFGPVBoye6GYtVWQmmDStDbEM+JRb5dbsV0W+ScvTx3TJTXnTKgbrBNSRJEHnBhEyeeV2SKzUtndqoqIcg0U2MGxGLRMnc3HfL1pcqmuLFnMxvqMx3rDSJOov1/i3lQ7+2Iir5/bGVjLe6Xglv0G1FpHVDEUj+lkBu6UvsaYX/s9CzDgmGz0Zr97Xi/jXtW/Br8jQVyIq3rWS0IrfrySOLwTFmVJfY0mj2vviT4eSL5hOYoUlhpn+T5dl0ss6rNw3XSSOIUzBZMUn9eoaFQmAtOrBHqe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cUbPDSABtS1CHjLJdy6+sbyhN5CyrnzxyiVJaP7v0VU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BJeys6Xc9HWiQx544nHcaTmD1U49tc0kFjGjNMuWpan+h1nD67y1gQLzN6sU8X6PFRF2uslhk3LiXSOfp9nsH3B0su5wIBVii/nEIYq/r6R1IJl6GL+WzWRBGh5gxRekcL9IcP4AiM2UsSN9gVpSovYJ0sQGGpha5xJyX12MZxQNQaRHGUzET5vC1tc5Z0Q/J/YZcwu3dpzLH1MfG5z3tpsx9c6xDWMnwlDrrODO2mRSjVh/QYYM6R+6mPWfDKaRLx162qotZYzz6Xxz3a/ZiTX/u2hvjhENbj6JzYDbkqgDi6aRPz/bU4KTpJQwyf3ur6XbT8Rh7D133AxC1bQfd0bvftXYRRHC6XBN9S+yLszRy4bqX/Z9L/IewK5oxxpuVNrG9ORwGmDtFZh9J2js46cqIxLeXxGP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cV4AAMjvZCbYDCfXQc8cpHZE1ys1x0nhwecPmACevMw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ixFcMYrZOhE+5eOXXq1s47af4OlLWlChoLf7+JCPWqmYkibChUSgqtlMdFnhRtIIQT7acR9Qq31MNk2FdPzOgoX9a7k89t+XvfxgDwD1SF4RA4ipjWnkTHmCBLgh08PvimBa4JkUpkSJQcj0H+KGv496jchoeUeWPMAHBaZxbkS1qFha91W8uIG2d8MZCQefeAlTcT/JBDEpGoVx0+09N41seWTS3ZMG4HOGiY1el4rrBvlWaVzXdsjNPlC1c53Bj3JtOAE+UQBGpVdUmyLagsM64Ip/RdCnM7DJSXPIFdALhKuScpVgcUSsmQW97KxsjRdqosZvvq+irTMWCWJfdC8cm9HTXD/Ax3lJw0Psg3Jc04E58BTTU+WJCE0BpB9H5KIkW8klkAdA1ifvKAQGUEKBIuxI+9DQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cVEk6/q5M0bxyR9clZfb/Bb8ezZNEyAvQTxiEpbejjA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tiwXSQUen8x8ZoremJwPMPzDVnejg3E+CJyJuOgHVNgAsAorOa3LtwXLvJRUV0X7t/kCYEhoMpJBVBPQWNOJAd03fd+1eVH75j0dem2OCKV5MUCLMV7P/BVeFiPKdOq8bnP4zeZvapfI/HIhw+L8pbR19EWzbhWBBN6eZLeYA7hVZJdnSyNEr0a3NNYIKhQtW9fN1nVGA2fbztUn4XjbC9s/jYScOrWiwfdWG9ZoSkXhNxz2/uIT4RwRqOeVgueRPJ33wlSypHstmykmpBJugNRQciwOUIpANsHNUSSCsOojw7qXr41Pn7QnaIuPIsT7T8SRiDqnCTgvVAPsRwRt/G9ZbVVHkzwKujyrsEwzhCRhy8q2nZwAMAKG/c3SB7/xvo5TX4TZgrU9qkUJcsmGtjO/M6twk0CM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cVgv5XJNn5f4hw8S87nQml9CxfOpkpQVJl9Hux0+/QA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7qUIIrHINzrud2ZRpvOf3lOTvOWnHMkz6axjn53ObQCNHTxamxP3AqKw/MN9JJWHRF3pKOSG46V9iMWTD/Kf1uCQ9kP8u7wfwJKJ7D8MbNc/8HuzAFgL+2ahakLH+t6sMe8ny45wbmH4YiTLy17+wI/O7OiUmITJn8JpbAp3lOGSCcZ1ynQSrz9bjWCYX96CrjnfRLJD9uxEXgiYOFZxO9XYQr1XoSbZvyK+Qvo8LrTHi0UjcA+fdpfQ5ZWJCSkjxKZsreztaTrPstcdyVPKauYeszxhnHC7pGnRGMHuPxGTry7Aq6KaCKHvNf3hVq0PQpGwywJgtAiVUKpJ9iiTWyByIwbhTJCAPKa4QSrOpbvAxgjI35YvVmhPq2ydsewzydA6u/TkGTJ9oIDE4jcBeEnmX06DOdEv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cWJ3BjRzMKqq+IC3M4EhmPpErBb+w+E0DllBMiMkX6k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6/nav2WVn5xiMbu0viVvGVg9hFavv9bOwlo8ELduvkXg/1hukMxcBiecw4V+ftBPVab4OWD0c3zuZRUyH/Za1v0wtKTiw/cg9rZ+axfN0a+JsFKOCiiMQbtkSmIJA69yiK+57mT2clp7i3ADcDMg+5glt6sr9jGMxJK/9IBH1HT507ZgzMGswNnV3oTmQme3xSmFZ3AiFB6ADxs3/8xgI9JSWmEE+aEhRSsKkO95wU/qh5KibnxdpEm5F8GA+LE17gbihMzMYZHyOpJBtuZYQSzIBX/g3vJVQwfjxPYz6oxbLODSnzrpih4dhoOyEfdxKi5n2YYBzMig1loApHPJ7Xbil4bWZdOH/4RjeFrlMuzqIbcVW5XUxAS9+MU5+t0qt03+tv5BUt7zXjG+PzuZZtNtlf6UQHOp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cXteRg9Hdpd/zRvAiHq414PCo5JP7jf1VtqrxpEWJQ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xlqpID4A9f8xPASu0XCXYxvUovM3b8a0oPR/ALgzQ6cPtPzxqiI1WsFqvsieyxRt5oMpZKt+52C27C7JZ5JmZf2z+4vdqjF+xcCsFSPhn/I6pG1zr8xryRsdgrdag7dD4A7WQn0+QcykYiF4PIr596nuL/cuOwUotrRd6RUHpdPqeRFDv3m4eYYmFp/z2jHiuN5yFuKQeOnNNxayJ1jdySJ7JWpZM1LZc3h6xgAdGTedA+9/TclBx2xv+cRFua5fyaTiJGjYNbKAQPyw9AUXlMAD1adGXle3/pNkpzmlLN327CJ18cGGC/YqQA/HOCu2hWxCkqq9MqHlHsqLxreXGaI0aE0ppUGnbEU4LkxoLojgsuf65oSdpxFwMLaemnkL5WE4l+iFtzO55UInriwK8DSM2v/fr+BW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cYL2qk4Bm+rMArzMe5yKrIFTmQPoVcO8vawcq3jvbGo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XcdryB8LWlrJYFnVr7I136Z96KGrjPod/AcEV+FaCspLZId+grCQLG4QK5IlZ028XAx53A//UW+eCjmzhjooDaG62nxJafjcfv4ZiF40Jk+lfHkynjun96eiPy0BJLCvghGStBznQ9jgcf0ixvn9MLCSXfx7aptBToPSBSBoFGf9XilBXHiU09U9gqG2UobDuh4ZEBYP19ctkeZ4WqdINzNpQujZPaH/VmsiXylPbuzYi0hk75JC2rw0uvdIGUc0V41bi4vKKexyCPwu2RVlIdBWUpgkHvpPFcROYNf6OR6JtYkZJHXhH+4xAnjPoUofMmjsJpdwOMKIN/EpMaa86ARCn3ZihlSweL7Ncl0AkympclUGZeBVzfLvY20wlWFMPGhQ4F6O+qV1qvX2m80bxm46bcQZookh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cYY/bVmsq+tte3KsJDljqltvuXrj4O1NP3gvVrSL5Z4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iHWHHBjWZ4FEsJfXP3ZwmK/l3BSzcTcY0oOxyvnxf6//5hIIclKOfttDzTtQq68Rj+fkA2mfLD/GFfW0S69Lvky7rc85Wbh7IMttMoeHCgnF+qpEF0owRNc7f7UFDO7vVZWcRozgPn9p9Ao+FGzaniUTHpyWF7YXPcwhKbppSsvS9ySDXZhXTJuIC8qW2vMTtgEtzzR6BumCLwZI8ETANC59W9o/uWWLWaky1E00eCzTKgEIVRyRQRdIXcwJdR5DzNGyc8ffCdHoMZqhYXpJBFxF86ivkDG3PdhGonLwRqyNibL1mEFzVvDLXL7oIHGe5gYxnQ0EBxZQ1as0FH335y3bt7xGbd68MSyR+AEPPvfyqpYumDxVzgzY8S9f1si1zefhOH3unaiPCvWGZp6vT8qLFZK7qSur", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cZ4Ljco+HDekX6yeXEQbTnd1amk6eukAAUnb9i/GF9c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nmDhqRMsl+2R+LtAIEpeMqzcFIuksWLAaW2e6jTF67w5ZugFrBOnWOKAY0S4O2mOrkfQRHx5TOKJrr/mkx3RsjqMf7htrppFpAxJBXtPiBVMlIxNMUgbl/RGMd/DNyW3MF8YI53fz07AyCndnEI/d1o62uzZ4nDhdItqLkUJuIwyl7pcOXF9jhslsPRmMh5wn1SeVhuMTInEfdxv07EJJAdo24nimUWTBPaSverEWz/4w98vgoGjhAfevnqkDF8bxtKLLNsFPBnrCbStY5Ya3E7zDa5tobkOG84XsdqH/zjaEpiKTXAO6hEYJLyRZVYX9KRW038fDWvwf27VGZ8p6CySREf7/BV5ujwUhkeN3AhWhfRo01z+eKngEQ8zTOLrT/l83piikV1W9fJBw5Qhrx/VMbFMLUGg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cbmww5Xbhnp1CGRZswbkh5IGCDIUICGvXu0Dxd5lVvA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gfD65K8zbiFtPWl9SyVG8PZcQl9+4AFTSLTpbvuCyNoWLAhlyTWyPClLj+UmFVVH8Hc2YXj5v8g3FYpODp/a88nchLR6FjqQyEWRJNvH+gCb0WYiuCrodneeM89/ovKcyG2xXgDDDJkpL3b17TwlaRB+4EFeLWznMjDYfyko8ntXSrXw6T4axZ3Bah/e9od037yuxizU8tWfPV3b6g1VVKAxcIGsSNhr3rjAXy92wjT1PYNGiM2NgyJJKxoRU6hHcmCaoAWph8nv47/e/GM1LAC3AsTE31V//z1qXtSUpTrVf1DLAHsnDDCJhlOiDtbBK55XGAvg6tQ+mJlytPegOLlGzklSmUP2dTd7DIHKMG5z44vP48rY0oqh8FM0hmaN+53UY2woCaRaD1e4NiPNIdQzEWqKz/4Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cc/sOaoz7zzW0KiDfBDHDsAUFPvdzfavFbWDD/UWDvs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9eZgO4ykSggCiHjkry82gpr5O6aIpecAjBvPv0og1uvXEiHRUhYOIah4N2uOKgTB2+j7ny9pApRiq/qxfWZ7U90NwjL+H7Mba2q+co2VS7ROxVpzdeJUoBe9nTa8M2beph8ukCDslrQpBMhjTq7eIu/Zi14UBWxMnaFK2IMp76xqmlZKzRgLys2s9GilSWGAZ1yquO27SA3deyZ+hZOCf5QZ0PAkrStDXNAFna8KuTkdKa3nqAuP/zLLfNIHVyx2/XQrLD2iyQli8XGM4P5lk/se46MQqPYWWAfXXc4qEFuLmlktsAug1ep4zLP923JL9AsZxV2rx1otfm8rsdB/fD3h4rORG6pbvXNaWbwbf4xRwOTw+n2XgQ1Q/7MFdlVfddQAmScdYpgRmshdiU4dmz7FiYoNQbR6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cc8c/+aeCmCBChp40weV83fEeRRHGLBz4e0f+i6UTF8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "p/nno47bjhiX2SjdTfpwhRtm8A6AYBi3TuVr+ZV4pVNTaTYQfsQ28WbP2pUPXmunCDTvpLMgqDY3vEF+Uo1PtRoZF8ViIzf4xdYEV1aWry6NOqcHeiOCzLzx/HBTuFypz8HQvUR2VRnunI+y4kx6Nkd02Jy9PwV6ljE8e12VQeh74Wg9zsvPT3CvrVLx/yqY3yTFQ2bgnS6rPwo0V3slzTK76APhjyNwxsTIm4ADtVohlHz+r0Uw+W3cNomQsU0hs0yh/UyTobRiLCWd1RXl5uWcxS81MW1dwelG/pDBycF2/eSe1Xmfe/78c3PvAo5L42DGgy0HxaI60cmEoq1hLMwISkcm2SnM9S5gAWmE3GJh+nTBnDrBf/8MXamziimRqTHMMgF3Iwk/ywcHa14LV/pGDkGqsDGi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cdRPmlbU3XgliggjRJdOO8qsJO30je8ccjiEQvizoyE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3Ot/ufCoTxyP7Spz4UR2zpMxL5lPxGAb+fBIl1+ftXi0yDyYLAtr3JFSSBwsoLXVXoDDxKOTFn7vj6Le4kXbNtH9YgPoTwwnXMeCN+z9x+eWg/wzbIx7ggoiWk7qM3QmwPVjUN4oFndmq3uDZYEIzxUAJPhtdjdSJOV5gZaZR7YWPE8PTHIuvrBgUTqSOuQ1XZywyxDxt02NHU6B4PkIQJanua4GetZOnbzJ82azG2PU96QeyalsiA4mkbvFKCLJ0Vtdmm9uw0AxTAaplQd7NA0lmAxjcKVwApDFWmSRBj78z+mf/OqyhUiYzV9enY/DgkFbZsiOFSNHTXYg2Y4MvbhZp/VSltxNjah165B47iraYsijxE0Z2j4j5EIwduRfrAXmlBJ3ppKcBbnoSicyadeL0xvLAWTT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cdj7a8LerjIEUQLEjrls4u/Zl/980lfG8L9hos2K88w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qxsJA8AqqVYfjnkoEMvP+4uvK8s/Xrm1EcTO/L9Ajul1yxyIoPma8t9fX3PGEXhv69ssZ2vMTJ6PtH5IBH9xIEpPSulGc2TSVAAtuMOIdMFcHu5Sny9H5k89NJumtAqREu+H2mAp9vvaKzRYaKtLAzrwbSFyoBWT4bqJwpCmPvYq0otj53H+NE/4WRmzzQ+z5Ejry85+f9bebi6LMaPptbFznclIoFVf154w3zjnnxy/R65h6p/mfB/89uwNhiUPXUM2Jv/sBjlwQvf7/7wlOXg3hEPt75qZacUzCqG6e4E3VpgHi6jBsIFvdGQechpVH2uDmlFneCNV/dgWreQ6RPKTWqoufiA2Tw2kRmwWUlmPsxQjeWqZ27K/dd5oCLgVOVpDt41zFsVS9aDvheiQqC2bUCO6AWMw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cev64EC/Q58Ug2Gx0LqgY/ZL/f0b+5D0MVOxDTP6TBI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NRZ/J1/KcSZk1nG0xzwOye4rVEKFZjZHUbqZryA73FiTpw6/qDeVDS6/ahNfYFQXNfrCiSZMqVtmXGST2KWsYDBDzmIg9H23Ds9OmBL/p12QRTQpSziOpyRe1rU200aC0ZgxrzXB2OZ2jIIs1PLdCHnCunoAFORFA+vk2y9QReBc+Zl8weZ64nGJCPSLmxaNXoTWaYDW772GgomOP2rq7kfrnX4RodnzI1wEQq8DizyhrjyiYTWecN5v4e9pETSVV2DO6Nwm3RM4JwCkkcT+dh4PSw9C+MfhH6Yr9tQS/F3mWGw3q60sGyiXLDehqtcTU8tI8O316A/yZAZAwECGSnzthpn/vqY2NG4s7If3rGDWicn0of/qCqjkBrhcS0/jua9Tv9yXr/yfuLfcea4ybevPPGMDOjYv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cevHyC/yLGF29zJ1bC5PYAzJRlommLtGySghWdewKyI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DPb5IvyJsdrKNd9Xb+MjY7nhD2TN+Pf9LvcPzNgYX+nHyapfDjRtRIcZbfRHIorbWHCC5aBmmJh2NSTUG6wFABA1RD9Oq6Chsw21lyNmBnWxEWmeDTJ4xg9N48cANDgqioSurV688uaZe1Hr+GoXSkh0dl48+Fg+V10nAu08Zssmxpqlj1KwZMfjovjqs/rlZv488zJ9TS7RgmmRElOabTZfBuNkrPqAjqL3/1ohx2umgHhlyy4hf6qpS1urKmBxb6L5B9qF2CwWk9qbLMXcqr2PSO7u5ZNu1LhrLInAImdpBMtGRZ7ktEz/9sj4KZ2wEFwxIbbVr7DCm9/r6oQzBcaillIhYJsEG1mJJfwmsizev1ugapTny9G0vu6Pp3kXYYtAaAEUwqM4MR77lE1lDfLSdpCNQ58I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cgQtNx8bo5q40TKVV1Sivy5ZXD5sTGsGITiiR/WEbK0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gzCg+JAYQKFzmCB0E38DVwK0nZhaciu4Z7mxrkRWkMpJIBm9KBE7IUbRGHlyw4I7usBbUghMVjRAL5sxFOP0PkmuOOCtXVO1PucAtw4kflSTEFstRTyViOYdXBjxfyee7msAeusSEqpCJvGgO5WEYVT9C6WyYII8HLFPm0mSClKQlhugZe3yF4eHgJdi7mV31o1uOuCqZRVxpSWYkqpZ6O/ms2UrN+FtUVqNycKt/6xIAQZZXsbTRQ/XYN1Exelv0lSnRFKJ+o74NWzAuKhhIGuKseKKmtrOXWw6Lv3Tf9cvyFVdTgh72wYw9fnV4Ge+nQpig+9Jh9FTd/x0jbRPd3gKsU5QmNkfaJlRgL+OWYbZdAn/AwaIaoCBuAJCMdxcIEp32FFAEwxtpsmPCk0j7sRWu4DEnNvr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ci/Yvo0uQgWpaIXxj9PUMyuJ9PpnegAMhm6c/DLe/zk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XoQ7wdk7521C062Q2v47ERLFd5rI4Sud6ffF+SM+/3+6d6NBn9Z0InOp8Vhe/qqcrAArVwwR+6Sat+297BJLuofNi5DfceNERReDZPOUM3fUFQ58piighgtPhJ5s8PX1sa41Q8WVGrOVXJ8fyU5soyFCwmU0SrfjTnM7PNuBbir9+/NdEY4OkQjTiSyS6gv8MFWlOQgAyTy79fdGYqi5Paj518pCBxN80kkT7595ZA2SvFyAuI6NWgjXY7xVmbJ/NAfdOTbuga2m5BKODIsnWtEjQPOaCJ9X3aUyscqNRZU8JM8CH6TfgxRZ+yb4oRP67PENYBxINtB2XPkHG/Q/E9HCFsUQUL+2sp5it2D51KGCwd9SW72z7Hu7LuTahCF/MJQbSPQQhGdC21c79gYNLg69R4NSpUaY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cilYy5JU4i+70nWBl7glJ0MwH+fhz/qsz+BbGs5KhQA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xMyeiIeaT6QD+leMltjeq94fFmEKH9Cbzc0yqR963VgUy0fMrsOw4MKa7w/jJWOOG6V0pzuqfUie28NtWr5S7QZiGYzS6dE7B2oQmkUMwn2wfO5irOd6A/qAXFLOEsAKx1lQMV89iewScxkYzU+UT4/uzwTuPQqDvuni7Pyg4fK1Is3n8rI50YQAAADiB0DAMnDqguw4La7LJY5pSd6owDqI58rfRSOLjo/6QGbIwB1Tlc2hPshxtwWHDi4l84RgZXwYUOa9zavyWHRC+wQWx1O9NqC46GYHU726C1lxMwNvBhUf1FtqMwSIIAOhLff4dV9TkA9epgEUNo5eIDhOVgSH4FXfD4vAgkulHpqT6Ddy5bQY7ewZOUjk4wkpyTe9BlcApK7yWf+jo8crVuipApTpOuUpuFDa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cisSgEEQe9TQfwczsukoGvaHFecLQjvPHe9+UDBbFjA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0Vfb3pUJ5+ngEPRqg/cA+lzlmmHjW++5kGUOgKiC9NWZs+B5ixquaq3DPrYCdElC+VoMqWefXNVD/PVVVxd2IoJrIxOFAtPRmVFP+yVPyUInBCJZsP/IAFHKgPQALx3/BfxR0vXpz3xPgQLcqUlClGQZuFSL7zpb3c8ASqFS8SDDYKDqsV8ni7RF9tAZlqwBet9oDQZuY9UaEV6+KwZnkmfZK1frCq2yCEMg4fpNawAM51kgWeqs2redut5iI9cSzn74Ee4P+m2D7HSGdp/u+Qcs4T1nMxdX8zBAyg4VrLPlKG4yk9USk29HwAaWfqcpJsRmqIFkzGDYs6fyj7LZUk3IqBt7aGqbfDY6VLRCaYJdFe3Xf8T5kaBstD2m6kBk6awhXfg9bKyxRWXwoTEvrdILvBbHuKML", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cjiuhaW07NkYjJC79A3jPtt6Ogsp81BZyZ1jtc0qESA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AFk+YYx+47W7YR0250Dt81RMQrSGN1faTuoQFE+yvJ6hQ99fkVVCHDgglT/d4wtPhk/1ARkd4X8y/QxsKZlfynb/3pb3n5k6F5e9vG3XPPWeafzA/qJ2hJloGn2lnySIYDpjHtQCvBkHXA0F9nZBadLRBhegXIm5KQ1DDKFfmeln5Wc6xyzjgeA+Dv9TrYLIvEQM8GIJIHTIJzH79IeFrh1FzQnA/Ya6Pd4iQ6lU9Tb0IluHCYxoLZF4zELq2ZkxIT2SOgXeMQFSufFx463hU/y13wT9iRkRO/HKtkiXK/CxrHrWul2005B+R1YOlriQ2XQ3HUO8XqDBkVZ1ysUZo4KCXBwsAo5bDMZ3u0iW/3YJhb95tGNMIy0UIZg6J/gEp4fnBBjpt/Zdejb8TtrsPGXOewzH/tQv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "clmy0fbZK7XodfvX4WDCySJxUnNOrJsUSx/3ExAVKg0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NFV9jMqyrXapHAmdsp9HzZcZx0lSl/rAwuWRWpmp2Kd8hlpJC80k3MlggunHu/6SyLh25ajv4rkNJzr0+Lz/jfX5Meyd3oC3mVYflZGhIU6Yd3R9ROIpANc/8QOlA+1c2KKkpw/PPmutVjnUC0ghSga/sJokCuuhpS/2N6ZeeoE8/5PQiabCwEMR3mPrICeNtKopwn4ssc+Xvt2o8AjUWVoy87m5cx9muSnv/JV9ZEXTRHoqWCNOGZxVwyEDeuMUOI3Ap1DW+0PR/W6PH/YuHhr+hzQh6Iwn5HQB/d3AAUfOwCDKhoWRnbYFgySmcfTSieXjf4XgIyIeRY5d/2m2SA7aQwLe1y24TvxOV7jo9GezVE5Xnw72XTDWUUzpwIazB9Fnm7bil1EM4ImimTetcR8JFM36kz0l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cm6IVBItbDc31xAkpv3u1uYBdeqM96/NvZdfWaOV+sc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bBEDtgZ89FJZMkRkz1mHfooNUfRwfaU5ZTosFTzZqrSnAlwjwIjGgtCBiORBjmEwfnElZjDYprx0IiJn+cBqCEp6rGYxWvpmU0Seh31g4SCmHceDItd3L5PQU7fBjPWLLcMNhbc6VfAT0b0z8T/J0fm0WzIMN9b+F5rOMY+NA3luLoMrfWGMKFXX48vOVu1tR5mp0BhpYfR6aSowohk3ZVXu6FKxgmYPBouj7bycm/10C8x+mzJjNQUu2aHOEOA0+6HU7a/8DreuuT7eJYcZM4/8vI7HOJb6DLmH6yzxGGxcNWbWt0kEa4wdSdu0Dd0rK2wyJuUJyI5RP8SZVUkoP+oTaPxZ/GtctlhD8gRa32mAxsz4fuSNWmDSMtPhKGsx7oy+Z5Kz8vWH6n7U99skXwepfT3STz0n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cmCZg2h+3OueLnbaodsVWnULe5vmIX1IEGsLVCzbraA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "orKWa+Qg3q0CXlB94vCttxjsAWTz12H5x4Uwy9H8eZZnQFxRraUtZdW678sWv9o9Gv7VQcqkzAhf3orHEG/xTCyvPeNhY+8I9Fjc5x16Yw+THlIwPiQseJkq7WV9s6rhOm7lrnMWPN1Nlhcy03eWeQnDDpxLQn0ZvS2kMNhWijtz3qefB9NSlrIpN4f2xpHXta2Dmm466u4FU/RYnYPUWfjOb93iyWh2le0pcmXU2sIHjjJk9uQDE6xvbs/jqTu3x74uwk+RlIYPFChBJ/0rTj7gZ/YC6N8awEQ1IlQzCIksqll4lHzLVx95xpgmMjolq5ERFBGe67rWhOb/r7JhrB7A5t4qmBPC6p9cwgr53TUslQcHYotRqK5Yf4I+540Ll1epiFF6l3AfhEj6SGIwsB7hxegwALTw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cn1nRiuzbGAxDm+02CHn4yLrwH4HvUwBPgAChY13ODo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xuSK/REzQpCU3MSdxqJm+hTL+Zw+bUD8FQRCVGaNKHVoPx14hFx0GLo6pHrzcHQHOUcXfgG14QHQWrMQnH2NgOaPO7wL3C0T/jxYFM/4WHdflRzvg5QaaOyIJuVjWUTZEaQ1WTwcdBK74hVaQ1uwMkUmNeE/UFp7WHQDnjVQvaf1OZ0n4B0K0oZdYtBJM6MbplcP0pY5J5FnJlFJg7vSZxTwr8jDQh2Zv5f0iYMSp/ylp1jdOyvqcSdbZZCeHUhoRVKbPT4E/nldw+8Vy6FLzWJYA+tGGMBdzzJCjZt+can2gy8wc9WLukgZ9g3dGyPf0iAMvQPDOSk+kGvsrQ9lHKGHEr9DbXtsdJTPJA9ilZcCjmYH+NDJR8UifcvRw5AjUt7GIAqTjObq6NMXqh6eUh2tZnIS8kdu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cnRpyrL+tqNvg45tbwNAI6PG48BY8HPqECNwDJ17My0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qFfFXOV22Ido/ryBNNPT0kdAHIAnQFQ0SMyQNb4/iwgto//gPyU9HpebUoIzhBzZI7KRKsM3L2Z66pW109+/zuhp2dCY4eFw509/WD9/gqMXJuxXp7ov1D5yG25ZuP5pFGtLe70SFf4iyxe6kMOjVERSinxDtXekZjTUTJOHyGBgwugOQk7u1prCnBmDiB8ekzXKR4MI/WvCzM2hJwm6ttfF+ipytZubs1cNoyZQZRHP+NB0R3ew0mEkMkB7w1NbCHj0YGX6XZyeuYNOIf0B1MunGtP7j07up+vrTxwgBltOE/LwzsBmpwdhUW/baM2327XYDbBNXXCE1vf3UyRywdVFzN9KRHcKhFyLDepnScqlahXNs5f+YAi5HjIj2k6coyFGOK02yWcjdfRVZeR0Q5uBBFiUC7sw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "coWPWYmH0yTY27k70KSVSw34C0/tQMkY6F+vb8I/K6Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6YHVAXsNxpt6m+69WiG0ig0B+5L+J3i+of1P6dDxg+JkQkFVs/RW1C3s7KKUnOwvwB1MYAYsrl/rZXYBFWEERGmm5yUZ8o7jp49NGUDUogfojLm98mScLxXFZW0bSDHAYo/55PpXAdidFOc3p/l5zSztezx4MF46TCGffh+c7Go6u65nF+IZJqPPkiq/MKL1Q3oUviu33O6cHc7nLRq1RVN52api3akNv9h4s8OPkugyWaux1PTE5t5kqcOt+0PxOy90wsuGO/rokhPqjRAZAoBr2USDdzMrjG2xEG15R1OyHKnQsJAqlHfittWcfaCDXXMBPud1X49zu/p0Ru3iyrZsvacQ9eaUMO/1ZDO0eEZRUNWmrRce0dNuHSmG0LLYfN3T5cnZWR73rT3vMTz+UrCRB7NCC3+Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cq+8LwMwAzHvbDzYdILfRxVkPnXLmYADBOLEEZ16jHA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RoDekqTVytEUvYRdJWaJobFjdiC16F6a1yxfkrCmVoNBoyhLxzvRrr6n7Y9wD95qvZfSeZS1XUcodzwR+nOt8CueQxZUDXCrYk9MOyCiW4jAcMvuotQkOlg5AiyqF2k+BvDQWjl5YJtjyf9OpvPd5YE60a6Em14/0TPOn5I5aPDN9fDAYXfJofPfnd5usLM3m4OxnvEgFfYQnnn+g+Hq6Y6j+DORt2NDWrcoLAHpwIYtPs5PcHShPWE1yJgMTuc+jZXurCmxNzvn8qwOSr94UzZQC9MAIiWaxD8JrIt06d5aBrgx7n0iTxl0jzBGcm21iEqMDrngsztMmKiy5v6VOxblw/D/vsucJmgzMUi4M2IL2L0EHwK8zfxjnCvEIUuyv3LrQxJivzp8fk5Z9ObEwz2dNcA8dRqP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cqV28B8MPBQzNE68EOTBkkRgqWy4i75iTClDDpEAk1Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mHtXQulZmDgasHM8dzY8rgfNL5+/fUP4GlfUYL1IWqBt2tPOJe5uXItxoTS+tF6vpdOiEvAEFWlfNjiuqhkR9vasu4FwGepSzyFJbkXK4bOHP83fOPuSaKrvQxTI4dG2TKNIXsRZvOmMtcV9uBjjB7pNaPqaRFGYVKmsvIm9NPXJ9QHKTaRGvh+3U3qtn/xLY2uhu60TlqKOqIFT/U2jIAfkUnVrIkosc+yotboO9gYpdZlRhMirIX1GMkhCp6ecyJyPLt/tMvCh7O6k4AzpZ9mlE/oaNM7lMjx3lGtIzO4EkBucO0smWRIibrAq/f7ck/e0k3oN0JIm3jbCFPUFxihKfMb+59LI3N5Qe8Rf2+3oJZ4oHLZq7fAgJsV18/LYGg5KX5+CslYu1818MkOm3Bw6LmrlxFLc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "crHRzZq2oYyNFA/SfS9SWPxD88hu7uq0K949Q/UVKek", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZGhptkv7XTgF98MuvMbJ1dc31ZT94vdzfwzbcWHHfJo+ca+l/gg67YNnZphDoXI1kN+nv3+ymN6hMcC1p9ltUIjlkbUqHqZNLxiIxBspA36OtMW5sq7Y2c1HUatiKXfa7uDcF8ZAAp8mIgiBnYsUOZP1hBKV0z1l/8BgZRwxnyuLoXcGmEsF9L88Ou5ajlLBp2e4R1vydDuqsOAsuIj6HDeiG+wfK7AUejKRypgJD+OTbrYFRDEr/3gJbCoh6ihTZIUYUz/4jS7HrAAer2sYjqIvX7fWUeRDsALN5Z8j7wuWqtYVJ8H8uBFMUcRFzZKM6+/lZHdPzHlBkqSnA9jwsyji/WFmNra5hpvRXmuaHpqpzRJr+2IRdi+a6hXEqd8Km2q8EzfkXUYynvX66FU9DLHPzPaqWJYW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "crsZW4JNvbEntIrMuGgLlRSgcVLqMDb8QYToFtf8h7U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qCm0JL6lQCHlNweB/uqRr8q5hFLt6WA3oIT4oPe/AaDM421byQhNdhcnL4jZJ8An5hYNia++vqcN2hJdaqRAZ7o56NKAN1USNtdOsHlLb84zFEgNIUoqBPgHvKgcLxC2WpbQxddwwrVZmxBEhgqVE9zLoYWoWGTGNtb+AtsvZMxJa+yiZQf3SKPuV/0m98hjtI1cYWbtjZv7OpaNtIyoTUfLBtzJ6qZRGpr3pwxkgy3PaowQZL7cYz9G8VFMPxj57N/jwxiR6DZX1V6wUUyn8d5g9eobyGwcCxZv2zDks5TMAE0/bADgEg5i3+khhbhthkVAyxjvLeG4V+MRx+JKFBn6IA8kBYCYM/9rwjBy0nZU+I0C6a2prtrTwFAPi3Jha4NAfkg16DyRagpg3yCXWwumJNbP/2I8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ctOhGVMVWk0CVixB6gWg1gF0Qy7h60RJKWtuvy9LHeU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PqR7IfgFJTKRxqZVl9zuORHLsMTRefadV5akKN3TPsy+qsOoyUnPEwWAR0UEeQdRi7JxPZCh8sTSAe/R/lsn04CT2X5UXCKrbQ0fO4Uek/elJt2WH2FKd5JLKYnr6jAoIdNbO+3Rqlokb4dPVnPqt2eysOYIrkAT6bu5gRDTx7blWxfPCOR9C7bFW5Ti0usr3fnEgqFklWm8YECXY4kxWifJGJAPdiINxt3eGkVPtiduuy2Bj/rlTkpwwGg5R3O925rNwYFD0dwHfQ4Ft/TFDxTk72q/KYLajFP92COeff0A76ex4Z4BVoTSQss5ZQnZCWQ0RTvV8ThwZLnq5ute0o2MnxFlRGt258uR9kb+pu2XwW6d3goTziAeAyKBBgPzKd28OtqWIbZtTrguMv9I2k8VhEwwgZq8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ctRGvlkZw6Kl5KumFDNNzKQ7BBJpfk26vl483JEHGoI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Qd3Iyn4z0f2iOqBAjM2t+AtDmlC6eCXUbhAGF8dMRGY8QNcuR5Y49vfHtmcUsYnLMQef1lSXmfzz7BRSHk8OrmytUTKnoFxWeJFXc9Ffye8ac5kpkiTv95O/MB/x18ZDBaGXRvxLxNst93Xo9bmvH2Xu5o/uEW9uSCpAfKnCijSEOXPhTMVDsPqpZf9Vl4wLeyUYjTHGt2/jMb2dR2D2ccF+hviUbj/VBDUVFoyTH7fNrcxSbhBt4Ai1QNo8704Leo9er4NtuiIZYlHjYqQ5EtyeGY+s/stsxqMuZBSrEDGExY1+RSwB4uZKXh7T/cFbzED2ItLE09Pfm33BeLV+kU51eh6yXXX89q17qtLBmeCisthd2LICJLiROnOUQMjsbE00MjZY1ySiBsthtybCFAPwcpNgtToG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cv/Q7x0X+mRtVla4lh6LP9osH9O0bsSPiYO1u5OaFNw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6NzEZabyK2qRqJvD6I/1q6JNY2poauXpMcsOfYk2lLW5uwjJt5Ewn2HnYnD6ABtUgMM/iVQ80tuvltYdc7TBO8qv61XCASd5naFPm0kKv37X8Bbz4kxaypU+Ca0+QnsL35uVsQlGRl4Gd7JZjS1g7fIzA6LQEwkAY+0MVHcJy7viFspKqCam3YSQvJLSOq4Djxq5ojpvS6i8TyljE50pYyLtlgpafK7ojU7ruDP2vawlJXpdL88cCGm0q2aNAND8R27Zp8vuim7LxPNdIS/0Ylh8O0MjE08buz6Yrv48WOvPieEny10CxmnhFqseQV6Jo7iChSgQ60mIsodR29GL60/00lgnzg8lo+VuGCkl4fJDNPFfrZpolavzdPRuGkmaTXh0bq4F48F3M2qlJq6c8UjO1tWpEpGp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cvDjnRAuw4M0KrtFYeA4wqGZAt+f43Y3GnerM0i0LKY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0JZrRPheA6XQNIqHivHn3wDSbdu3yAsbTASTKx+WfztPsEVw87hoEgLI930FKDoc+CrqqeAEtT6mC2/kQ0EDcPRoDC/Kj0czXO6i5kiW+IuRco/7hQCnZvlhmrkIE/GOJoKrTV5UNqG+Hxkkq5df9IoFT4qtvZORpT5iCr/AZ8U5dxJrF9gkfVbdYcrClpROCIisXY87sdUdU7BnDddvFmXLZGLrNsER7ZkOBBoFNIerGeQ2frZEAH+Btm8Yo5NRDgiFMW6EnaSkui/Usx9Dj7+P29i4h1zgGkUzzziPb1K8xuQQ/eRsmqZZzbZh+mJme9Dq1i3y6F3a/4RIN60mGLfA7rHx7JKNylTU7oHXNeauPtPuEE2RMhU5LP7ZjDgljp8JmWCZQihbpGdvhAy8TazJjAeObN3A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cvYmab8sYvGn7C98YnqyE1m4QOtZkX6uMwNkGaauN3Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vPcnV1w/TL3Chk7skQa73KpamPdEpmpdAVVlJeuYdeZY2xzc/AdN/AP6RgLIiIjyJA4g3o129RMhC6zgve4Hz5xqa7KdmzCagApN+Rr7B980hyBWpbl3IO+9F1zSsxz4LLIrIp6OxBHI8V6a0Zgnjnqh0g8PXDg10lNO7XSXX0k89HxyVmHzrqKRaqiiLP49w5IBMw+guIj7UqIVULzIsqdjjbXKTCrl7DLPfXxQdSKFqteb207j0AY/qKXmpGX+MZccXO6MhQc/+BZ8l4AoIHF629W7yB0Y/93/8SIJwba/MsY9rnjdEH80ebGGUW9YpZjKKoZQej/6+2bxfpRDC7ZlVTQ9KrRybOs3CtK38oxDpCLJ71KsIwzqWsQBuzIYh+ti1SY68zlUYaBPuMk/M23lS4ktgnnL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cvl9IJs3nQFtIMQUkS2zH7KB54n1hQbyOTJ4NgSedkc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "orFovmK1pn/fB/WyDrhGQtr5dBm+K1m0RtviR6XU777w4Zuc7d7NgJ0L+bb+O7unDcIYY5YQsRxFV3rFpWQ/jIlMSgz5+B+GK2CWDfi5drvX2aceaINg3KkGy8TxsV1Du+YI4TUmf5EYi6I6+wUm02adSQyqsiHQqbTlL81/17a/B80OPIUkPS0V/T7Yt8mez28Bnl2OeG4cDWmDppphwZemIGdZ8Afnv/y6amYefNEO79SEegp+bOEPDO9RMnjNY+Ld13REjtPhOX3BvV9tf922Dq1Zzp3vNcQvuQqvuVeQTx7Zn6zVd/W2hkahqjtT2Q86zPZIRTHAPZzsn/n3u3Go9DD+HJeoBb8C37CkeMKK54/lrICxzvzefq6KjfPXsnBWz0phApJ3OW/XVZAyJks0ahq+OwLm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cvukARQCjgD+ADOGEmohdnDltw9MUrIQBIFB00yMx74", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+VzbKEWwJGuiU9ZXy1iMecuOh6GtqCltHuZfDvfL8L+hWoLuK1IyQzCB4HLyU1XgJ2OjZII8L25BUrn/wWZ8/FaqYRoAKUqQOetBfeEL787inMk0VoKJOYfRuYD6K1OgDps0r60XurhYiuchPe5T1iJOnekUarsJ/rmViR7oTlss03xm0eseqzdxX0aOoSbSzcS5LDw6K1riG/BIj4Qb0a27iR8WAvEmj4InpiuR1l0wSk9xVaC+5OimbXQqDhh/EvRbRUxh1Lh5bunlB1Ui5WBfn8jSMA6m383TIhL4+qsgIqSQchVC2a48dvqZNVmoy07ouiJDfr7PbHtw2NRcgy0RcoYYSgVR+7laVR/Bbk1SiVvqB+hGzV2Cdrzy829ZMPtpOGYU7jBt/xbFEPnpJZY0bGX25oEf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cw0LU+7cvimhDmqgPQE3Xlg7H8fvt8ENWXmTifDfHtc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WDR5mqPzhRE5dmUrfzLW8x6bAt3KHaeRR5IUipL87DT4qXIbBnIL/c5CwC5B4E+pP+FcWTm/71xsb486l+MsfGgubQDGPnQgdCdUjIcQRGj4j8+6Cgrxghqy3fTnw4eYNs2ww61VSG9uSgS0Wwt7PJMieIOsHK4zN7hxFHcBwWAo481rMxRaz3PROhIoNX+ikSwIMPs1YI7b9Q8pH/XYvdxDaHEg15zJ7ztkriHABCHylJ4M5qTeDcWxWCTZQ9Zt6CSns92yyvoQEGOe5StoFOxu4X99nr9xFHhIHR6cKoNJz3pU14bOpnNgpRjRG1nln+svpBQGM7Q8PDZuHiBtdpN2lytUXm+WD/qj7WwSA9Z+5NsfxrWLRdDxjNbnPMU3521NYrsd9NWhKNs0J89MfDirJcEroT+s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cwKK3Za/Rk60dQGJeDvse6Wvwi+0O5gbFqMVUfEkh0o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JGXngxlYwKYzuIwjdJF/zT8TKHGiZiNWbYsKF6W2wxIPdE3eVuiEHaFvCLnrYj053icY7midHy0k6Gvzb4f2MfhmLUgtvDATgqt8I9AQ/2W4azNSfa+jy5pHgVNn+GsM9CCRxVO7LCuMpBh06EJhUaLJwOHHITYMOXY74NCM5W+KF3lMdzv4vjBPMwuk1S7jBqlbaazQfn2lrZMwh7ic3P8cFa8QefWuP7uf0KpCJ6LXV3bv2QqNzpA55+RDom/mF4768JeMpS+EbkMbXgrjqe59FXPObYRlZfM2yupzpE0TmJpdJrya9qBsEBiU+GC7LKdrmx0TPiLD0lgna9N4gAK5eyC+YwDNXUPdorKL3KsQTf1MYBIjDbrv+RlYU9/063jiL/Mc8MxfnrQseV5lmR3k5fajCLeK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cwiMdnV7yPEp9uAfTsGCq3wUG92Hh9SJWZOGpZbhzPQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bzaeMkPTKBW4tdPtK6HinCVwSd3HEgDUeqtTPnZD6wGXz+fj3NahzgNTB9wOXMQE6oreMierNTkqusa/ZwLZ++pZWpDXLOB5feMPHvFyPmCa5lyZwGqQVCoryDpBlJK5ylGgK1LbH3gEVSqpf6y4Be05KqTvI+cWCjl11CXujnVXCRmIHynaBUslKtuzZcwnz/MDIIngN3oJ6Nzo+yCCO/2B3fMYHdYTLsSkU6U0GTRDfaenzxUYZtkN2qN/WHXHJGIqu8xly4LHV+o9DW5OL3wPagIikjCUzOkgfWg2VXIyi9AmNwDfekapuMXQpHgGv1PRAeXd7+qpXm+mgoYgR+C7ULqS10ZUSxQmgjkVUDStxJjd0tSYbhz/LtTVQByu7bmUg4gdFFJdOhAM3tsag3M3cAybTlRk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cwkeIpSYBtLy30DoTyZ0KlFrKMBEnk+oy3SHlAXruTk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tE9rSCymfrIoOkuHyWgpJaTNm+BmQ6tPjEaS60cK7C9dXIl+xJ8fW1f+ogL72bslWvzg8kw/T9S24mBCo2MVo5v9yFpiFzrWwoNQIRy2JmLDF6jPddWeop67eITgvCnprhtMVBCknfZeQ4HaebtcHSZlXsTwV7i7xewW16GGerlNg9JNISGrelHPhIDvDlql06ozrouI3FR0UgtTTkp7mN9eThJYsuabaqLNlntThCark5+KkN9Vo2ccDBsX6whGovnb8w+/jhCUblq/VSfOD5PlsNrrt8xDDdIKw5mYkPYZStGGXNCZHt+QrSoz3UGaAWlrUxA8i2o1VHmf0w0h8NCdAeLxCwgRsYzGQ50H5J/wNEg/iKe6x/mr0XK47x9kBd0qK+BZ9EQSxMrlhvqbAUfJ57jzrL/I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cwkmItu84fh08BTFXB70gh1zPYKT2mtXjOH1myR1/vg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jklYVTtRxmxZtLHJfhmDD0D3tGdr1YHqjySywJksGXsYeUSaR8ApCDKEV2Jv8Q8y1VsL7SXn6iakW5dmWsfE8Cvy26BOdUFpT50/KcYm3FQSu7JNhuDBSEt6Fj6mdqkrChGyKqUVruJGapch0TVXhnY2/bx7rL32Zv1mNL5mv16Ilwh9VQD1ZkJJeKieI2ND36dZXOTcO2FSXZGjHCTSkRzNc6wQUj9roLRp4W+dzMnVlye6NC5buCO4VqpK7jKdDkv2zgjXuP/T2tFfwRL/b/rduuTIWrLOYH3q9mFtVieGDDLByTVeIDhF4JYl61Hw0EPnLvRj2xXdiZC0l7MAABaqE7qTLeCOiAffz9itRIcd+2AryWbpVKtNyJCC1DGb3LLTKOLsfYYaKvv0OeVOT0wMPhYfa071", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "cx2wD2LcPJV3kyUambLRQXiSJ8+EcIkZNelqQaOr+Ls", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1KqavPVtDiA0bXrkmBFeXCioOB8HR686EZvuU3QnC8bZrx4OXnA7wTB9XNXIW52HV2Ew3WLilloQcT30HuvvUjX+JMqQyPsBfNkXxw7fm1f96GJGJN8v/xas6z4s78Mh8wC2tdW8jNPVMR0vOkNgWiv4N6JNK8G1ehu4ofy+5IhrbBgIZaCpC9D1O+GXQ/rbBORX8EawRBZQihMYO5jDxoJ66OGe9Vio/icqKWfgvLvr3KRKvSCQa8B0mpEgjxWdhBkFkYRo/RWxsoPJzYxocb7+ww0ZofD8sKN8ydx/X/q9618vVb2a4kkvRLuegFJPNQUzFVcqgUqWsCDn9AQPAHRDznJ4qOIlrYphouVEsDco3ZbxfjRvfwmn0ha2JvBgznJx6e5Xd8dDWn3eXN5B7Mr7IeENEykD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d+OvWOU2PkjyOk8M9frafN7PYG3f5Y/m6auBYaN/5so", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2uLQkTZqf8cRk0Wf7u4KibT9pzCljorwcm8aetj7O5tx3iZoANERyjCz8FOwJiJlGgFvXphwz28K21n3CBOy4EoEpPTX8OY5R15/WUYpIY89F8wbz3gCiZFeeZDmpGYQLbCd0bUox4tfnVk6yKtF0Bj7iAN+RQoeIQyUpd+OKq4o9gfg58UFUYAw4/y09499tWKnMPJYn9hQftBwy/NnXpUtocpyp//ABZ6JXlpW6KCrkuFV45FixWCFxar4mqyHddWWvdAmbNO4tIIz5+9p1G5qtrkHmoWVzd0R8MlbXBFGelGoA3B28x0xNywJayaS1idDZ4zKoEkhCbsmDtKO4sYpywoBW4nViwojp2vWIqSxpYna95rvhkUYPJK4QtPCQI6v1TxiiIoXNKXkmKtaqpq/bBtvHXwc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d+aechOuC7T2kyKvpLnmZtUUP1e+dxb1Mv2SA8Oamiw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1zfqIFwuiGnMXsLLgjPh73PI6YYw2cYHmv+SEmKvQs3cYyfyRYuP38LwB/vQIE6pfjp7ZswNUKqUWL+wil3VJ+OuYyjcBhFJId6FyR0kv/VTYQ6q/bFvQkHT4G0bpNNYRUQtERWwP0GJOf7GTSVD7WVSXsRODuR7fevETy5LgRTn+4V8CYtDbuZ8AkZHO6Z7Er9DXgKPoBshCrCenGa1L2eDxfwzzHqECMbWfQu4PBvIuQgXY5hJHqq1tIS8r2CaozRxwEShwDs05dtBGBx1NhcAgw94zQa10go9X6djYftWCA50uFvtGpw+OegeKbaatkR8usnV1q9/vnCzLp5gxpfra7PIZ52U4xrQ5xbCsv6VgKEye8dAUfufyXXQOSlphXHBcYQpeZuqx7B59k9dtO/RAgcA/mnO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d+gW7fWnKMDElXYZrBh2U+XLHH4zfOqVo4AxRkg4zqo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wCAPTW/SeNbWq4DD32Q8I2B4DJW8Tf/qsjEMC/RHXrJS55u1AqSWdU1tylLQXoDjJehXs1lkL0ubmZQv4mlrcz/ruhT+Cml88+cVjGnXTVOm3S3dksDvuGAzx3BjzhebDIxFhYKIVHEDHqusiSt72eV0VhltjssoqRFy+T6ieCaXQJxj3gCyJJBxZwiMpyvgQIYigUbbfLs67GfabBT2nXhpWsW10oOWPzJO0YC/1QxU+y+qRnN4PYyPKsqUyNUua/dyqv3GmvQ1cwPd37GFxbkcgTuUztz4IX2QpicIwEAP5bhYqVrN4LF+8IVRvs4/1kyarop7w6H4KLciaHZvzudZvz5Olog/vNcEQkSDUaf0KPrHE/9j9BSEs/9dCpwbSJzIh9KudcMTCyfqcXgnyVmVaGJvE3u7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d0asOvw7r3zyA3qSdSVRN8PjRu0Ot9g4r2CeFZCQduo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M54QGuR+7WDq7XmGhMymXXmRmMHLdUyA42vPeg6fsqFadsaGOq1F1W4NwgZCVrkaZPcpoRPftPuBh787/IyepdNAePnUXPYu46+seNjlNqtAjE4UkyafgsSc+p5SqMW4OwCiWeCDujSMjIMjGwG22Nw76fac7+SM3/yGbBd61Av1Ofs6UxYsvpSJZX3d9hovRmZvJES6E3NA2FkTxntDwLdb6iM/Wm8YzTdH5LV+uSb/Iqv+/mH1iIYKDFCDH/BgfSbSKMCqHFZOsabZX9O1Mn539W3YcG5/lI2FVIPaKOpaGitZ2N7vC0i7juHRFItRcHKVg68X9sHz2SIGnxpsj2M2QqBgYU+0ya/ibQz5PNuu+ABwWVQwtKofNYOY+Fut8cFC/zmZ/aGgC9BLMD9nydiBh8CuifYN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d1Ky2TU3E1hVK8b/B4QCTjJWU2lE+yxJ2wLvWL4rBIU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "K+6gMy5r9QmNuVv/feMfcn60Fkufbo+MxDmWEUgIOKvwNS0+O53DdPDGAHwrp6bD9Mb4iHZBx0JasO7fTWDXtHLyXMlpi09Tq5JTTZcIYEhCydDX9GQnZmzFbHGIkorDeIIUzvXIW4EBL4+Z+exY8Xq1sgn7reO4ixMK0QEsKD20T9BdNb1aamEs0XFdnsugKcRGJiOHuayg94tpf4A6HWG/2+h+P7HOqeS/qBUSX38Px00s4r6ffX2qvKoSJlF/ctFQkL9n6g/2gyLjSrxHZH7eI1KD7O4hS9V+gCLa1qrcdgFOj3q0fBiMS9PwnffzgsHEvMhx/eoeDoIf6wVu0ePqo9P2eI67O3bOberpFCUjr8DSp5Hvz5gXpm1/pMwmcEGjs1Dsw/RS6k3nsGUoAFwLCZb25LpT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d1SYI93JQCn71QQ8gfiWXO8iLhF/XnyBIdJcJz6H8TQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yP81ALMgjbb2meUCcU4XhZvJFnCszZu4otoQ93VdRhMZOyVsy+CukOfzPlrdps6COFc9qH8JMT+amjGHchAqxZ0cUy25qt2zjj/etnpYzN9vXxbB7OEfRR4EdZWKDwx7tD2b4KFEklJecITFgvHpyXW+0SXu1A06SaJNplvFdMvI5KUH/JjFURQoNcq+umF79vZqw3HxewEsLohgepAvBAeIpWX4dn8+ftBYpuIm9xycjRFkCZdl/zorgu5J8BBL+zbHueLV+OYhS5s+QYGpsT7Xk/x6Fubyd7ZtcEShyLybX9r3fGw2RBE1SfOO3nkfhpMMKDh79ERs22fYyR+M/6Be6cXle9Zi2p2VtEBEQFyLsTytjEAwah2tDV7jLlKavSoG1mrwifmVWWFGUK8y1OcV4pP5mvLp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d1TuSAeArAsFCFW7MgjJ82xm/J5dWWMLWVaU3KWeWwE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0FNHDpjj6aMhZ90K+LXz4CooD1MYjC2e9pRQQnFRJle2ArMCZANmpxKhksdaZvvXsmq3nGfBLgrnPN0yy3K/tneYGYd+te6JkZjHbxTVtZXjATJ4Ef94NE1avUXClJ+O+395uc2hNBz17DZ0FGU+CkoR00pYB1Wc68DqmRzGB/Gigla7QIHz3ZJo/jnQ7C3v69iox+jy7+3BxJ90qd9m1VzR78A43zpTV6gdf4mrAY9WJLeEjXo118IcMevhkA93mZ6cquh9C7uHavQiCUkcjWm934RUFznvdd1tXI3o/Hc4m6xF0gnozlUlko0+xZpsT8eXpnIUIVONa5oWl/V9tkGvdCazMyW4fWONUjgRPHix2m8T+nVRS2YMRsYamWRcp8kkoflKeVDwtSY6ewUQw5XekNAipta/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d2n6haKQSqxpga98na6c9n5P2UOkGdgaQcwza+/NfHw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CR/BwyDyBGTH2LRtUrDRT/zeaWkcVzEHUgmk2XwyO2X3vdDhUxCe3Bg7NcmlHRfwwsKuvSc0NJd3tpwsvwTQYNtXwKETfaqBTcBQjNiRm9dq5VWsNwQBA6pvKC4igZ/qTr9Gy8b9FmeZsQV11IN2ivKayMzwGYnvXF2suK7K+wxEwpqTgeezQyQ2AiEzKSNqR5ryxXfXmbWUC0YBKO9MCr0Z9xoEywEZ0PCom0ehepekME0ZeiYEvGhIQXT4oDPWKfal7/5JPWpwJxTuQ7KsKr6pErX1X8IQzRX9Nut7nLiILcICUNzfTnraFINmwus35p7W9JDoUfzw1Ohy6/Fl5cpB15Qyf+fdgboxt/6/t6Mpak9eBet+3HhVkYvDwph42wNQuXam4DA1O2Gse/PWhiJ767Wj5AdD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d5HPV6akbmHlU+4sRMZppGUKcCITwqGg0L1DeXFRDq4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xFtLaYwtaHInECniMe/h6YiIEqtwgv4NJLfNVREZ4/x2Hc65um7beZwnk7MXHFJJ+d5IvYhz5Mjm9+KjNieByyUrc23U5uSQf1zmcrhkqXvto8NrQk0cZ/9KP36a2baxUogqFMdQvXVPOjbLBIqSWw3ETZ3cR+ucNK9ddyTpahPUUXe72HaPh+dtNLkRM74NTWjaZnt3I3nSwVgwR9TrC7hN6eYdzJNYtRlDVUp5EM41J6uK7I/1CABQblTtvkDu/PrxqgbxUdArJvGGQMaOEU2+WNZByEx7ZDykVCmS/8Si2ZuqkCQUEb3ohHgb+IyJ4DTtcVVjXgBj5WjXbLd6LX+YXsdSjv4p2o+2i2yXt69SoFyy9D79e+oG4+fcXTLMgLnbu/AvOh0LdfwaTf84MrTtAbH3zFL2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d7/l7VVlC7Tx2XVsmclYuuZtEhAyq3dmNy+3ipjZ2l0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A1dWhmP+MSEpxv0mahGwUZQlfmIOUVmagh3gr3XFwJ1gIK5xGmiL/p375PpkrYXbJMQngdr1kergfPLAexGrcTP1jlIyr6xcPDkbXc+gJr4PmHPIC409we4Ry1WKSO4Ktp3nh3fdXzx07cQOyvg9uYhIkw3SpIKELw1QFHLJ1gGNRMlZ3UPJiPQT0FK9J2F75YXiJMVELT99Lgal4xiq/v1B91MBFE2oIQK2wW7x5NslXqie1eZ4mFBho2+47i9+uUGzEQHsaPW3JGgIfi2j52Y5NirBdgU+mHUmVXFJETpHO32CNdXIo/A48RjHv6A5C2OSfK+rLswS1UuyJpAdk7u/UcoPi5LWcj8dfR9QFQDlPuCt0nBnCl4uEb4eLDvfYe5QUws9mjdQ8wONZurPhFee8x5D6UBL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d7O19f670JcBS9rZra6yuboi9zRTDmueNpk0ZsuFlrM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Nk30muQbZTk6OkOLb6yNdDJacOkc+skh/JFREJKdOOzVsMYs3dkEsdlmVFTKbThOi7qdRsOlMS5XypE0PEdznU3iQamM5ztS2Vke5TID+j728D2g6oncdhOql+cwwiFL4OtkT0PtspW5PUt4Gmrph+lnm2jDASW3of5ci7pw3Fe9LFcSA+wZnzVZWDxHXtH7cslbsOYPTcPiCttcvXE4z7/lTU076+Bh5kMITPu4dHVK7g74SvC58+jU/juFbY6A3LT6R+EmcO0bICIl2M5VMv346v47qUTOaouDTNHDN8nEDHSMoH1Ie5+tbU/R4OxAfJiM5kVbKJ4mqmvWC1OmiGkpkNi6RTVH/zhuhKVkpTCYM9REPZ7XB/2RVnwAVpNXOgMZpWVtDTgpQZX0sMJ9klUlC4z/P1eH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d8Y5rNxAJpORSFnnYOi0/i6mPWl1Jiu+i2CyleKGnHo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vYZHyUiqbQXBV7bLmpWZI14gBLPvDePJs+Fa7Pn4/Tu55U9R1wKJiCDsqefxswrw/gcIruTDclXxCnTYeKDYgL2qFX91pOtLqTfdpa064NX9BIjmcgwbZOfJoRsHfXuylsz46dn9o0o1naT85FpSZmgJFF6m4F2IOQBn526IswI3NMdxsNrK+Cbw04ogpO0c/rQtE5I0xYRSQAZaFJo1rUarGqNhaaOTb++oF5daZ5JzcBc5rWZfQseOmsP4aiq9Cy5zw/yqoeug7JlI3XzU+37iUoC4RJM1/OWtMLzN5+U6QCm49OQDp+/ro4kFndAWouyOAExlm2ARRQmS7avqHw+bwbsb0kFdPYKrmglxHprCs8eE1tw4bvOrxglDezs8Y67p4OrtqJrTJ3jwcE4PayEpsXCJL1Yl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "d9Bu8Lau1lwm8daKzZha0hj2Q7IlSfUPyMZIck6ObjM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NLjnF2qkTcJFDViUvZOyS1kK01PKoZ3O9UG72ZJMNUj3qXmplcNOS6g6XUyTIy6E2O23y4u8ToqvNoF/bIGpdJr1bj5BTsudPN07HO/qvdpl3pIrA92HCMf0aFHZ5Iyb0Icsj9+Lo+5Kzp/m4/RRNSNRmHwhJ1zWjc3M08WwqkNwCHLX+GsdvcFkkvRIWFz1bUPF4AdkZtIyzTROVDgTSLpxZXyhZHtsYyN4EU3Bt5vk5ksnqhzeAVSeeMt1dS+mTNIzwXOM8TjwfsRJu4N1OkVPwl+t21u0yKqR+Msz4ZEj8sYQ9/r/taM28XeEUXJN/cuJkL0MJ2DA6LhIBOkIQ7xPVSvSnOKlAvsBLx82CcIZedsdITjjXQy2diI4U2tem8iJEdM9U2QHRYfvxOJqbGuEGotohnum", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dBMBiwL3DUzLUC6NvWy/RmHXso8uB8tmtUxnMyB3MCw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RrdjldCv8KqUkvnCX/VbcDiO5wZIiNTNvYdiKuXZuNblgG0jkUWRMYfpD0kUejk9Jq0CEErSRwB7x/24bCLq0f9urHNpZl+gxUMhanDucm5KKL6xzVH9PU3eklWLt0zzt3/jNeUyyS24Az5oUO+h5tepOi/8kKWqjynPe9XtSeEfon5VCT9fPhTna3tYuINxrcYQWnKVF9lBgWBHgDjBeZONsuDcuW9dX7JJmvILuOUYM9LvWgBZIcbVpBJB58FxnUc109YQSFNxXBPtH8mKZ2lMp8Onp2ZCsBCQF/OJ4o8T31odKS0svLkmdviE7jLpvOgeqDIz+qAeDo2bcX13dJIVlH7bV01vWtkoFuHIhEChLT4somyI0dPdqqbXvotKi1ITRcC9UyO4frCrhq8kE8Y7e3tUeCo+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dBUC7QCuTNqSigzjmAoMg+yYlo+VQ6atvLglGguxj9Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xcKhKp45vMdo1hZPV0AHAZdDAwlhCj/AJmVREdbKMyjZmjQtG/4+Pc8UGrg5suqLdixYme1kQneys5qsjzMJhlJuCAP7FJF2dutgZL46VufOmhWccSlpGHPaKbDPd+KjahxCWa5T5vJIuf3CNUItpTR8qshVd89n+SvUfSn/518RRjdg4MOWtZaBL5G4xtpmohG1yn6ExMvvrssMXGoYoBZCKDSBYJQyv83VXt5UgiIfFpiuNAKzHAmkVfv1CBIXw29sZphppfd9AGYXU31Wyvq5O1vdPYPkTgeadVng+STLeRhCEjIO/rGtQkNr/36IXMA5eKE920MnNmT6bUPb+/Y9TJzu1QOPQc8NF9kdT76QviHJ/trq1bDf+yo2ic7aWzI/u6lZvQ2OHLq+yzpYLzVDbD65ct3w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dCc7KCPzRDyCyqPvGSAzmL+2+XQ0G1c5myCvdRp66h0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oScrTN9XLVffzmjWRQongeA0SBDYYAOg3MCxS+IvocVVkIjIARWbrBFfbDLKDnPNvZecMztYEuan4v+evSpydc2wZsNJTbdxXy4qY05DvpUUHYFmsovu5BQCMXrlIywX0WLWUp5JuAChqnoZpukrzwX0XxP5m/VGsIR+DplEH+mto32qJ1HwSV/bm8NvBWtcRXjRmP1lI5cwSG8IzjLTFZY15H9dzpObbx3D6lRgYtHnpXaZolx98c/zF/ZEZ+hedp/UVV4ix1EWY6+5WASqPNNGzC+7FQWzwWApaTbCAscRaDbGrtPWEWNwz3IB5WfrwwZZXIFis22VtmzoDVZkoJbiHoQaoGWaNgBFFcLgc1uCFra7cIZKWR7pHknZR2EECUApFymcgDx5yA37eGWEVkyF5s+NU+cL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dCkTc95p3Q8oS9yLuKgRsCj5ZpVyiLjZ23SxN7Ojq4k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZcB8v1G5M9ghoaUPbP7qg8U5xrpR8c+DNJHphwS5CPRBt4NLlPYrGl3vlhGsiaVIATj5ZjubAYPvsawBgkl5aJ59vpkILCpzQ0FABi7l1O3a8LQmknbo/i5lAqa4CdUzGEdhDCtKyfOBu9RwKJCCKuj6U7gag0ypF9q7bGTjGahxwbBBq8GuxbUIhaSR7ZN+8hWRy+WOvgf6CxgJwdxvHEbyVs6kjaI+++W7mI/AH+OFVDtJm3uqWsA2C7p1HzihBD53i1SBbLgkYK2CZuUTIJkSJ3ZmD7z3S3mGc68UWnhpb4czxx1JK0Jc3+9B6EtjOszk7BNCJ8t3pUVMsdxpYfPm6XJqkKb/0k+c3Qhqfvya+vW0mGD5nEKeTbXqKQ0olSnWHxmcsx1fL+pe4J92uC9hUZEHl+Q+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dCzQYNUdYcx9vZ4oGW9nBHeRCQuoumOPKO5xgdXVYTI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4MMw2bL+UZuwCx3NWq1H/u1wERIipyY6YuPSce4TaIICXU5h88o3jYLYUnRNGfrYSbj3CzufqqCmbmWovguxKluTelKATeHUlx3IBaR71R+KGt4SRV6vln0GqK0wuQgc9ug/2BGSmg03ro7hjoXiJzZNSHbC0Ifftkno/cvXMRiBbYMwTvoWtsKMbTAe599vSsjzVKpGHG7apLH28OOoEwC8oYvj8fRJl9xZ0Hy1qOERaPxUXaX3iCAO7z/Y0Y54ctLPPMtzOrlkZApF/cEAx2TtGmPpGhAVvfMqHVmC2t6Vy0cCLVhtpkfr7/uceWPj+bvx8T3WSVNbI7FPKyd41XQ8ldTxW84EoogeFA2ue7QTIgGCTpqM4WZXV0cMEiVKIL3DPCm87Gj77gKfd3VjC46FSSjbTsR1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dD8uHQTbqdFxmLgZpGL09fYdHjZ/2DKrMyxfZzjnsSM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "deeNlQ2WbtipHvMe1E/jKZYl9hGYxuuo44ddRamvYkFlb6dRSyDQWn0BTJAG1GysAn0bIa3tMlXamsPe0AlklXeAy5hf/oyTbBWX0w5Iu6RfagBQSt3WFEQFRclgzSY2053jlOvt2/tQIDGz2AiCFWaSi0eV7t7hKWuH32wainD329peDu5qcPLxt4fk6/vw/37RIDih3UJyGFRNHZeKctZWE6nlx7f7SNSeyIs2h+LsD4w/Jbbg+RkRe4CVXDcXlOGDRPE90xpwqaj+AMw/MZQo9igSGi+okzZuboIlnSSE7VQMpTF71nnaWmXoZ2RLn7TeFuSsP15LRMV+X2BcXxZ5z1bRiUAvbcPhXKE73JA/f+BvRyTvwPmnYmylKgpY/E2spVaTnPu3DoLfue+lzsmrgVblgpDt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dDQ25SHCZMBM2Y2lXgiUmElfLyaP0g4sUsm5UooKhCM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7VJZ0delWOTzhNpW4dHC5/wp7d+Z+OsPXeaE7DWSD/UXOOTwHHdwJDcJIQLKLMVD/YUduZ0ZKgMGfZv+1QI0wpCkVL/KEsHi+ER5IJ6o6PZIu93E+XaGohgLd0nZLcXCFL7RyNenxpo+3f5xxFosNtUgGUer1aAhLTPWUdGvMk2qn8KN95G9PAWMpXDVUmt0Ts+ni4H39PJDICwaUYQtH/RazWTtSqGXTYR/UrHkFvb0TRUwIk+Hw1GkF1gpDOX9ntOexEK0qzQXI0llULFGYSnbjdTLcUrTXs03oUE/El825bN1gcvbzapEOJljStclelrfUmHvGikzpfioUH470GlgBRqNextY81amtyIyv/kd3MuCTFiUTWfbX1jSsv33JHT+lVXxFKmmUt0cn88RzVSM1sqsLOVz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dDyENLxn3tYPEmp866GX41KXlSot4I7BIAgXvrq8VT4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "31wbY4v0ptXwM5VS0+S+puaT/i6JiOp7TmDr+dKIgi4iJuMd5qq6PlXx1M+UW9l3MhH6yQ6O+VBs9sAaoTZkCwQUm01YibbEBzb/IysH0HVnmluAGvBwAq4ydnOpLAK5i6ZE/1p0lnFuDDjoSQfAg4iL8ag+5vP3o1oGpkqxiOtXNnOnn2xGn2JXgLdFEKv7pUB5ObMcLlnwCEqi8UQEmhOw2JEvXfMnNlmpR69KU8WCwPLb+ujwg3pFjzwkpe+Hr7Y+FpIvaIDg0NNEwXOBxYlLY2mE3aFBCQIK+S1IWxVSUjsG5SmD4spO+9pO0A3mqOT9ZjQ2Jj/CuX1s/xka/kQYTfsOkAFvDo/CPW2gdrUASBUmb1wxY60+v7lDb5ssHaUn5O9HNNwRhV8/I353U6Q6qEH70Nkd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dFBh/SoD+IGg636nRb7b+kstiZIKqN42zwRGYOq5SLc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vTDf2nOkJ9/FUbPZNKwVfVq8Pc9LzK5jqEe4Mg2g0PuAImg++i6JaRhT8caFNLGCsgQxhy1AqR5GK3Gbv4pyR0HXG/+YG417DiPSGs/Ll8BNi0+PMNfINCnWeX7Zoqq+X4QvBYVT9aISPwUhRqHQn0QZweA5/2FzJ340i2lFcCU2WomzTLRm1a/nBMReOBUsQZN504quxgJAqTFSlaWwSCXgJQEsb3+/CWrlH6Nj51dsiCD5LQrgGAaQ3IeZYi57Sliij4/yuKITerohwVn7MuOhzFs12KU/tJphk7E9q/XRITU7guYcnWGh5bBaB8ITXZO5bZsWAlpT7VjFewpVlXi8bFMRWB1aH7qLbiRLAhQuN3kpk4eCdV8KDyFSvC89yLyd5+MWt28ZM1xDSENPv6C3gzPe9/1p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dFUQN5GnvOGWCPCcqNm8M2iMKk4TbrGV6T2u83Ps2vo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FiDXkvdLfU4fJ1fq1EJW264sKeMgU1lkacIMiikSDluCM6cUxPIWvNN9ztTtbS08eLZFuGMO1tN782QqQ+6QymHIPdKKJPJnQXJQUUZ5tfG84EDSYtXf3GXEgJxqIpIgdHBQPlVzEpO6ZvPoSxg2rXHaF7K9jAySWKsDxfK7A5F21pZDsOsWAW26+w5yrA6cB4OrYSvC9AcVS3zauLhj74M6+KVFxk3/uswMwVYoNcaSbCmgAJ5at3hD75uTukn7r0yi7Yjt39I9/PrKQT9JzKJsQ9XHdp3KfhAnPO5negPKdrp+SNR/xsNOIoOZuTQb/aH54rfDXcUw0wGRHR7udMraLZMtwEx4NHM5At4UFv9kQBr9vtJz2wkE9rqWSATlTEFAXnr39WGBaGkH6mdwJYiKRIT0MTdM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dFgUeh329exEjDyVnszw9c5RXvGs9IOpRXj3JlzlWFE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9x0u1S/7eq9r0xju2K1vAlm+atL6QM6kuOzxuLs9iue1IUqVENhg1Z72KZE83iHChJckLiwsY/3VH6JxZF5k/cSsBi/+5NlFSCgKurSZYs5VOXTSYeUQ58tc+KjmMe17tnMwZOT1AuGAkPFzrcnQlsue2jqzxpO/qbj/KBq75irg4VIszHAjDStD7iMKuwVFWTPHC3xksDQY2YFIKIUHRI86MB08gPB5DIlFqXAr27rDD0Jjz+9rmcc+aK8Mm7/F/lcSqnGP4PraukZ1DjAYDaz58wMCmO+TmvxfHQY0JHE/LENSJQoCOoK4n8uuijcGOk9Z2qxWRzgTkuBm/ki+xF0lC56JKavU38ePf+AAvZJI/5tLWiJxrx6fc1p83BgJjN+auSwn8QpEGl3pclrYIfVzc8oQrOaz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dGwClfy2egUXkRrj/tHmqB9O3jQmIPKJr186NfCh0+Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eJdqvAGXCvRLxgbfvmlmuEvEuf9xPkePn4ugMRYABTgOsAgUJ17B3PVtUx1FmiwoibOnGoke4vDTNb/lsdwJk1o2w4SfezuB/hhZJWil/CO4scFA4p1A/I1sRsMFgSy4ZMtUm0rNHZOlYnzmtwL0vznQ6QH2c+YA8MfWTQS1dKeVsbDAAdfNgW2hqFb8y6H34+7dmu1etfck+QKmy27F+pT+IZXLkpPEviuKEHfGhgzIjyNt5gL0TdV+Ns0WqjgqnMnhOFMOfuLzI17OINCXj2YBV3Cns/bLQGjO8Cgx4NYbtrEeFiuT98FccNKrd+1jtQifRM71n7dsE6JljwF83DGdnU5Dr/WNlqcH1gh+QcLW3YpPl0djIC0Rd8Ca47vCGSW9KyovL76DHqhgfHwzc2M9YbuTd7jY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dINIQAjfnne27Iyj/VJId8P6uC7viglfrWJVNbI+z8Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m+seH4IughiGCGzIhG89nRMCHkvzeqCToxidmdRfcvoftpej8O+Hb0EZgKGZpS0KGU20pQ9BBRzdCBdvLpoT81++9aaQnxpy4Lqh983LUcLMDYzG1PFWImnuNpl1AOXZ8S6efxgpdkBAc3kJF/l93TeRQRHlST5IZByxGFaHoCpLOujMY8JW+RvFyrlEngyQMmKH/4d8H145voPpMpspnUcW4tYRTQI9oO7C28Vaqiy786S8Y3PXH3oAJegupUMHlmMErEWBHMrkDSX9hv7fFWIYGzTomAtIbq+luxvyf2MvtsC9/1TqLKBhaSbKPCTDVG7hq24wVv8hdLDMS+cGiqb0P1Up7O+7wdoIi3YVI1l5VZIKbg1tCTTVEpD/wgREqeSTCz0H99rKglk5IiA+zQgwNFl7BjNp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dIbCXZY5hQOpQlBt0UoWIFINpegbrEJEW5SAJeAoYCA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IqkIFHHrXu941+nLpicKjYump1LgeeetVWbc+Gkc9zcMibFj3iQgxVmkQ49uFBD27n5D3t3UXD5UNadnjKVTT8NQt9o04VQRbyEgtxPruh23QH4yRkmlgr62OD75HaUfVHQPJxXn21un7dVUfIve6H5mt2eYe2YcnQ3t2hvaxnlDKo+0y2o+6mXkHl4ZD5RJiloy1IRBZf7D1iiU+FM8DTd9uSGh52SE4UIA92MVeQpMc+av1g8A5yn58RfbfwFaQLSTsqxaUzgSFSGQ6QG6U0mvH7NhxQbEkoJn0337OhoKDnypW1/X4iCF79N/uak+m4aNGX7aBOnr8bbALvBq78nHa5VoLZeVHwsQzACANSMmdVNZsKodkKOjeKs7lpqXx1EJIgcFT36UKS9mDeyKgV8WSGRYMgSD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dKEJd3Le8mn8CtKoW/biCVmU2re3RJBiLYhWAvo5EIY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Hy3FFx7oNQ5z1aVp+yw5Z7sW+SKmzSUkax6onGEMCD5ciLtuynQXPB+VPSe9uk36l5Oik8PooLk6eMlKC5o+cncHl4OrSkdqhXzn/gwREcYnx20Bug77gD7xBXhbEY7JX3VcUNMmKwb+IH1X3ehRbH7PS1N2aXPMwWBDhtJZcuzmdCr2ja+L57TvFIxHNQERuIiCxIQ2QpFvFEjLrQt4ZRavu4s5y3myixP+6ZV0X4yKbeRuszEn/5961LNcXRQcm7rfjVAWk3AjR/8jLpTOQkNHTO2abkCN1iDkrOu9EVZ4no6w7S3hrljKNAcB0NUiSbwumkJm4iNTGX+basIgl62nav28kYEuiEx8F5HBDy8Bhgd44xmYFXrPLfVofIrUWTF+ibtxVlLhfy02J1x7CUCA5XXkGHBG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dKvOUf/Z5zmraXJ6u41xSiQ/gNZRWJCMfpy16TUiuB8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u1HYOAlIN0+sgZpDNxHhtAm9WmO3hxXauZx/2xjQUELsvGH4eYulSlWz0FmJTlFUWCne0/cWSe7KH1uWxRd7GLnKBn2E+wbl74I4tSzY3vT1+MYK4+1UPvp0RLq8nEa9OpY9WQ0WW29JMRf19LzEHK9U0mAmYQ+NNIpm+KQSNezR4LSLA7qt2enMDJOtipfkJawc3Y7TnYvaWwPP4ecL7yIqc2b0v2+/NdTx2nIY7p8Vmytov28P0oPo//+LFg7SfizAvo2sALEssG1QIscPxhlpA6UcdDE2w5R379v5ZYDGFXmT06TjKVYmOvS6I8U4O+eU8PO2ROVRQuxUnUskYMMFd30ZkGpnANr9wKKbHEDY+uxNdwzV1Kcd8m80qQKM8sCV12EqvLx6oGy3Zf3KYh5lArNbq164", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dN//pErfFLHoM7TPc0+nC0kFbfA4Cg95VZfhFvHSPPs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S5FfekmnImPQm/ioe9fkQNmMmcD0X2YhEB1DMLQyLC/jnYBW/PLA9tnsH2cQC2V+lsoNEhLUXwiZ06pKAJND64PrbWYohMfGFNx8g3bDyh5TDvkzUh8uAr3VV5E9U/8wjyEGgs4k+Ois931ZSHfQ73DG7owMsZJnjpp+6oOomXQAUqOSfsitkzlf6KnVsRg+VAPkHwRg32O91TLuGYX9DgPOlRN8P0EIA2SqYJg9SUW2gXtk8E887sPNWlxi37Q9GGr30walckEjtVXz9j7STslRWVNGALNKS3NGvWhA21dHbHU/Q9V1uWkhhJP+71udZ+R6WthUm+3kSS7cdP1RRmEwr9m+Lrl3LUQmH4WJBAtY0bCp88bolQj1iie6lbNDO97UnfH90fXbom7aMj47ymPfo0Yqzy/0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dPWGhy20wJY8wCt26HHUwa3YabbmU/hz+XExYes/iZg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PR38osxG54ZZCS5+jYN6OGy0z18vIfPxqkkstBJWXfT1JO209dg5TWuxhZyp9Nto7wxdotdv2SsSTW08Mpm9pjh52qT/bqLEwQyBDFxKGvmvDs7U6lM/jVixjR/Fb3EEGRv6RXGzbOys7G2+v70jvZY6h8jLIkboRDEMsGtH08kR6773Hitk5R3vksKG0pJpD4Q6iCdLi8gEJTTfYc4CMsspkgrH1S1kU/N4n1PaxFr36rsoxXcsKDTG7BY9NWk58EIQG1Zvn8g8oqMo3LBqA0tFieYKD5fcpKJk4o3y9paQLyC30z/uW72vUgPajszMnfrcy2EveKmfFo3WPem7282rvV53ga9lHTph5J20/6V+tFW+uCkGjm/udX/kFS52uKapWvA8Te4dincdMR5cvVSp3v4DXfDN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dRZbuUA1yF3Y6OQxOyH2AHz6EuCoNdO3WaOgKQWaw5o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q7iGyBEZOFUCnQxqhgVw4amEk0n6Am3V+aOBndZXRCXnmoSS/bRWURDqyA+4QFlNs8V1mZK0xwEKVZ1WgDND4P7P+0N8Hp++MOdlXVb3+LOOA1x/4buy5uRgS8Uc71Il5RPquedzfkxIQoSvSLa4RxmxKbqhwlna12jnG5jSfQ7u8HN+ntBj0F4WVwH3oIV1pqUzJMYKzE3CvrVFUulM9yUjddhDem0Zoq0G6bI3y/otvQuiBF+409Nim4wfAf1lG/vqE8QUJ4vXWJ4eb5aEOHsQJk/0rWnkJvXL7Elu2mi1TDgHEaXx0hCcLcropMgiyCrDBO1MKRB6qg6QBM8NVOKjDdreXuL3Zps7yM7Vg+Kn5Bz30G+bg6wxq9smpDItkfk60aWjsa9JmTEz8Lsa2zgO31FDYJAd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dRquyVDPm1ICS6RGoRnu/qLqAbYceqKiri3Bo0BPD8w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "n/74AsthJSP9WoB4HIbOCjDf38CQ//b0XnyqZsJM06/G4Boj2JytXYgM+kS68VyjViUy4eXJdo8GOCpApKHOCh3TDQ3hsPh962yyehVWDs6IR6vKPqFELDEi1xVLWxXhOrwoSo101itSuhRBw15mOAurPSBKpeQJEi25LwCxfWqyAZexNdry+YIyr/Lzo3B9oO93yusad8mnG5CPT/KhTtlW4lcVDyn8nj+Bo6LBhlZ41ua5zSgZgBgPtrZTE3Lde22/iGnF4Gv77LePdCK7TliJ87myqtMusyplMwOxPxfuIaxUaA0t/xOLZ9UgLTYQ7fQ4rB/TflJnIhdsahztdueYTT5cz6jj4o7AWo/svhy82GwdrHgNDPP4SYsmbHg47AXYGbXHANEgk88bue5T6IUrfzsldELe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dSBJiWKWDGTrOcIXBXy2NvS3T+aaDm7PMGn41hL8CPE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HqBH6hGPSA6BE8nDggh3f/Ev/cdHV4+Xwsyqms5NvqVpfIwPZ/byPvyh7wTg8MKk9gxBVLerDK4XrwPJ46RoVwCdMm81R3s2KtOfZCnbgUPlBkrIH6OsRTIsa8wAr0+kwIodFsFjj3bVs27D377lYvRfMiQM/MsXKW7oroKlCYLeu0RzIvKQh0wcgnSzJPFpOGintFgNrkNDFQjBl2Th+PkhLpE+NCIxclLt8dl3VF05r/f7hkCMfyk3xHPwyP3tPpLEXEC1BUR5QH7mxKRYUy2IRctzJulX8Xw8i6Xre+7Xjk31WkJZNq27KEuoE5raFRMHmNHMcGSMbMfdAqC0mL9DII7CLliEaKiI3N6A1DEpJtfMB2qf2X2hDEDYuuL9dedgC8HoAPPP7WISf3JYQF53FaNFQOw9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dW2LdDcUgWExJBqljG1U0WVV4RgHkjR+0qh2hv4ET20", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fO5gKZ9q09TB4EbR5QwSs89o2hH4WuWbY/wDsiIWIP7EWmeqY5PHR9Bp9EP3hSYsEB8ybKmeaG2QwIUkMcJMbHs9ANlpfnAnQvNNo+T6YBh5nOI3oMi3wISUz5zeNaJ1E4rsOAm28VuB2NeLWDPqi1veKtQ7zfPAO+GFU941WvRTU8iGYmUG0tDr/OTNg9zBCedZukTs8La7Zm7v3nEuypBcGJFRZkP3Kthhd1wIejvivvcSlAJ55JE2GJn7FbQGHXqRMb/f0hjTriHpiK2v7xlWEuDg83/BYjFwYcjT9jAI0p6gendNdakwoZmMY47PNroNF0WJwR9KCO/ajJqTxPyqs3pwtACgOwndM6F+C+UPW2icUQZphRXMY3u31Au9ynpw7NSn3iAz9udbXGX26ZVd083pTemO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dW5AXxiQ3RJ01JKTXR7zVxm89qiGsch1JMmz8QFuEkw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ubXCT7CqTbiRpm34/Ct9yzmXijA72FxmoNOsXwfrN35P2ESUaE++wxwpIGSbzCqmsl+Js6vmvjbC/4xQgCAa8Uw5MNVXeimFAETuuTSPf0oST8yAy75LxCztAJ9EbVliwVKtz+FUG0VFYsFbCXMHI7hnx7eX7EtNcwpG+GlkN6p//sFEC9O8GgpoXagB5gtDjQggeytE4tm5cI50NHVEMPh19qS6Z+tXJc9aIr30t3NrA0hmYmdtqooVKiV3EJDMtzXdeHu4AoUCw4BsMiuymDPXULlvLtOWFLY0I4bFALNRuxICGs3lxZHqlN6UUOM5YN3CYgNz8hangYdnxZPkswUqNunOiIIxwEYw7IGeBiDzuUcB7LC+LRoxAGYkFo7Dwe0CcNceFbrS4e6FW9ZS/UpC7XNjbTFD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dX0YRmNL8CX/i+MhD3xv8e/kuRlr3HYH/a2GpimlK2s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pCRnZFOJ8xjeUPeoT13pur7OQoFZk9xJha0yiGOhkvNsHMCP7kKPQcapqUxnp18ICEU4ly8mG3cIHFY9OMacAd+5OBSois3cyS5idgJ5JwRmuL41axb1XemqyI28w/+W0JAHM/py4Ja7jcVsygpaqOy5vyqN0R2PmYGwvlFFz/5GxfuC5ucDU+dm+Jl6Vxq0ViG+3zkSVIOTtHWb5WtzrTnRMxWrt+kGd0sFipZ/DU0ddgHowOmGFv/QuYcJq1dmCC1OgUO8DTecChpSno+F+wcnP1RqLaYO4VMDVhfOmm8prRVnIrNG7FvYv2jhgX2Rj0QxnI7vVBUxNPYbcAyfMGPlE3kOBcAUnwwLHuc3HtKAcuLz127luiajjAR1SXKnEcFk4yN2gqiTR3e5W4Y2DU+YhSZ9ac/Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dYSTtLLvWi801TaqQZ7Eks6Zb0gd2oNXQPwPz5XzRrU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5aacd3c7ibpQVmzFxEns1/jjPOQmrHYi36JX6kPtG7McuMrkXxT2sN8kb8vP+kwPP43UQG+CezJJf/6lXrLBSuAkJdzDy+J4F9M7sWTlwjShu82xjNCGVtx0CqzGGFGIw44+LigUgBDw96TZ4WJRWPVAPEyLsWxr/NRXOaHohtNi7T+vn+Q6nYdW0+q+OL+O27GxLtQ9VnYPLEChhex6HbQDf+nVkVyXBEVv3enTNOcDTcYzYB753WoFQ/h0IQLkEz9vkhgVsW72jb4bvPwcMkZ1pFuFLGXhbsohwslfHygejuTIL0Pm63Y7uaaWOEkid316KUHdD/FyUeY5T6rblZHgZmkuelELDH1Eoi3d9Y48WY3qnB3znpEcxteUtFbTgrYSNlZJFETY1ie9tWBEFr4xHupq1NCe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dYUER6G5W3aIJFkipTR2HTfZHUbB7+To7XUD4buYqsA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oLYRrqcPWXzemgrM30lWwx9n/y9cUWoz+Fp+xgJWQl0G2DreHLpzodjMacjA7c/FpGc6s/ZJnG/rJ7aFOln2jVTEjX8yMfeCaEeSa6RI/h8i34p1KtpNnBd7j127j5o13hwvjpxVJJGWvoB6xQ8U2+QnaSoqoOnfkV7SGoY6WP+rvhayadJOB54S1Oc060KVHgKHJRv7QKOyO41gGeiyHpf6L23hbt16y9cPNZuyT7jmBoZ/fxccJbmsGUpD+q6LcC1kLoGxZvPB9ufvs/moumZHgkPQNGe/9ur83DI3ujcEspFeFGRQlg7JpXY/d46J5pNEKkn22EnmSBzDQ48Snet3wBXxHGRl1IQ849ELWck7Z8uMXXj3ItOuT913MerU+eCo48FeI8/nUdmJpfEHyAOUEEH4tccP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dYktLkndTsk+RbTrYg/NEunsbBjtF8AQ7KhGEaN3EVo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hxuDrffPven5ulIwgB+4+g7dikCE4MYds9jlc+C+WuEWq/iqioIdRsf38ADrGc/wGnHPhRBAZ3KUbh7pLHt+VGS4xJ1OK0TIglrA+aieBPn8WxVmVxKKZtzmMH3BopK40JLCh+t8uTVxJfw8xU4MhSXEYFvaz1wxWXaTZzjhWGx/Hey+LFNo2I8bD6ExF8s3k4DrN8+pOJsbXMGp0d0Lm0VMtVmN04HHkbjo+97icmhXDcwwrMLbNOON8j9quLU9z5L4T/oPus6kE0MMMo6T9+feIcM83ajrw07qoYBAW00AdSL/HIsZkevn8eIkeybA0k4tz78eU/ckRXmW+rKRFUJd0H4+51EPLxmSKpXEuHbri/ZJll1VXrTQ99na/ATNNM4+l1mGuSIf4GC3JN5hvHOxS2gC4U0W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dbrFCo5lwKZ6sWoduzCnLz+5/1Ti2HPlA36RNQrxNBM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iyYw1c0Maw0GgiUCo9Q+AyVA7mHG0eNBrhnRJOFLEIkDXjK2MoGtCDmS2OOj9sykJbuJfQfOJzh2cBWSLadr1GM+Qpms5iVbVurlCELDWaLU0N1OVL3g1dWgLfUW8/QAbX41en+3pqQcy0qmd4BM//GY9VduBIngQa1RgdbvcKbAnIjqO78hT4G6xRy9arQkdV9E3Gtnejk1fRaKHe6UD4jeZ7GH6IuBNs1c3A0vOxKFlt9OoLGr4G4/cHEsX9odJrH47mF1jto5ZUX4fWFibP3ctu56g9jIjjrNc6482oYotYjhFVplWFfc3b9MvEDgsAXdfScndE5gm1Ohxnu6oFlNTsC7OgJzTFI0HPDQzZUx34y6EjHE2a/qk8YI9Uimvp0n2nVWWC1JQiiAhaSLnemJobyNT1X3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dekyOfzTCfQWn2C0rzuNhnR2XzLr6J6PIK4wOztO+1A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j750FBMC5k31mx79L8wYj7IgTEUKNq/uzjUiFVsQt3NZn1USAVib8eJgvFUkQVyaL2DgkBxuyu5jznwSX9CWWNhuFY1ZU4/0lM87MQkf+g5vALeRoBn9PcLzmy2mwiwkX+kzrOHcb7ZBYP/AYooFTRp1ebR0mm1nhOEbQjH/gvkq79SJI4MtkPBzASaxGckt4JFqeBS46o7mJehkGy6gG3Zq4Fm0oZ93qafwkqkXXy9ciRuru8sfbDuFa8lJCJgYRpL7H/Kg1nyl6Q28yC0PggeVQ0j7DgFgmTwsocgoYTMI6FKWWVR7PORwG49M2SN1ufs2bqEPgV0Lm6Kk+wVVo+as8PM+Ahb4/bnBlAkc8xB0PeWfoK/ZPHKI22H2HWoHefhvebi33SrnleXtFg2/JgzojNwYYlqJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "deuYXhNARa4Nn4rdha0IRXGF9GyeuawdqGkbM9uaVm0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6LTY2i/ds2y7aW4UjTDs4wedjAa0KZMaPY18t+cVD0j7VtRrDOeaWa1QYKpKy0wRaQCGhyhbGi1fgyNjljKTy8FrTzSSNp7rzZDuHQs0UYJkamlJG7bLm9lQ7XbZbd5yCyDVvTakHvBO42NCGOIP8ibZYKOgUI5E7Uz1lJYwmlCO7XDEELpsm2tUIKKGOH+FvUyY5hPPfOpkYvMm9qybVaQhCi6trPd9KgzrPN98kDhCi5B4BAF777WI/sPMe3OeBYVMjC4WQU3/eRoLEm6wmspkAERyWgn3C8mJ9KYLGOY4AFEnP2fzvr+/xLy33n/Gv7qBLZQjDZ0h1FRHFo64+JvRztvRom0uD8QPONPdAx+Ls581BKzp2E6BfZRsb+T13J2dl3jCz3Ggfvb/u2UxWoEfdFPGcS4z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dfewsKxX5wBjXYRReLsIxjnspU5IdD9uTFTde83RVpk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "85g2CGcqrRhcECbDpJTmgz2DWaNjF+6RjlYatuSmCNw5OuW2DbE8zsY93c9duSw85wG4F+B5tBUf2zCqTNfIkEeZipdZccL1/5GxL6kGvNh6XsQhtWmkamHEMvyxKlO3/C41MzlcoWH9osV504ZW0KKGxnLRbabxd5Q5NXLV+T8i20eB6gN0Eo6UmRI4jC4e34J6co9ZpPblJK4PJIDwJlfbV8v0s1stsmQXgjh03rFkSo7hAPxCM74BrR7YlXRlqRyr2x1HhmtYSxbNpkfc+JVFN4g4PwghNcvUnDqr2kABKvnIJTFsvdN5FScTaOMpC9hk6Zws/vmV1121TeGgtITiJWEEkZMLjIECZVQmQ9VaZwU9nfwks2hrVGypmIiNd5/Um25d083JXS+x0DcZAfuHlVkiG+yU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dilLfAqA76FvyNVCCgxyVv54njPoLIuhprFMbaTDjFk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GUj0yeeOjGMFbNyFXtWSio9w3/tfxlcbfjr9jVtFaL6mma+sCsHsavWuJd9UnkbyIQIjhztzK6JcO3zR16MGGzbjqKMV2TF2rfleWk3KbSeLM7TKQyn2POqzB0KNMPy+ac6Im7lg+975F5BQd6QNd6NZt7akZahGv2dWIzUDRmEka1jY+Q+mmQJqxEhLomPKNh/2P1fjzzZS6V8vFQiPkeQ7K0xRQQ8clOkZB9fFDAkTuK8iEmNkWyt9dPiwAvtPrEV5Qe8IK+nffSQ/fTY7Ytol6shhD0oRb7o7+iY+SNWXgiNQKzQIXOUzhJ+QpP1U4IXn04RwpiZRAmwBJsD8Pxh8drjjvwxBqCH68m6iAEIHsA5JQLpydbmWqoGgHXhLajZP/Q8ccqNj8mBOJmkAfffxfe2jvSkq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "djW0DO8NKYLSbEiczZxxMFNikvjDjb78TUcIOeZI80c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T91Pt6wRovAqUgIdIf7iYCC9uf8UK/0PZ9PRCT/3MmnaHlhetWuLZE8+/f1S+0vwpZVfTXsLW8xvknnRAU8DweSseEvdB+Ee2WzhUMA73xTaDkPZMPuoj88SqVs472v3DOO1uz6G3weAqIk8dQH4ILAIyj9uN2xbCGRJX3dpVeCd1zH45AOXl6lBvWm7aB3i08kmrwxGRmbgq9vTYVU3/44yB9JeuvbbGUFpFTOyYP2JKER/sHV4v6guYxiRtGfHMhBM2bpe1bEghdXrUvk30Kg2r0gGzJflUnoILby8s4YDvxAUxyEEWXKODfgvKMtW4T5QYLUHzkZEAmwfbJF4wldrE9hj479nIH8FLZpqy3qQQuGI8eGPzHEN7Blc5GqCRsPyxgYNL3AyERSrpiCsJtMDKUQdoe1u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dkQz51sNcgC+wsE5ro0P4x9ugn0DpxKJ4+AkgSjCC5k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EWzQVwzWVIVNG2L1cA1UwD3fJZHcUdOTbbyH9D1P0PMMFkisbT79Ua2RVHJDxYM/1f2qGsyzWjpyfzIKcCfXG1fS1QuJaxxzE8HopJgZGP4z7mR8TbE3izX3E4qJ1LocPeu91Bo2AvMaWwbsqH01v9cmCrNQ+CZaHAPBqMbRqJSK2fSi2V2pTugua93s4RrNesfYyW6HV+a11IbV1n6H1+qGiGIqkz980UKskuMh+n6qxlEYBM/kdUh+4lHniPCuOP9gEXaCbdCYlfLi6TPd8YkOCcO+agec3WKlArzv9DcBVqQo81r0CPCAhghVibIrBHaSO/fyK+2SIQwjFGikbOb0e2SgZyWpf6lpU0lIwc/vjabed4dwHAsUkJ0PXMC6Dwws6YqIqFDWtrjXo49rFbh+HE3I4UV4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dlG7vUOz1J/MW0s4q8x/zVlEgaS5yKj5e+FNyvjlEb0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zFBQ59p0w9OHwRyCAbPF6/ThetVswYgtz50OKMZHB6ZPuFyP5sgd1YdvOxnjhOt0N2Vv2IiLpWed2qlIevIbwMAO/+75Qz/5UUS9VveeGud8TPySPp23ppdZg/e8JcTKUl2rUqpEBGhHR9b7pDSmUj1biZ1FmZg9yikK8sTAhaLI4tJ/ST/3P8NpnGpjUQUbXeESD86TV6/BEm8DX7COJMoWqG6MUaEWDGScZNbj1Oc7XWK82mSKZNgYWhxcNJQkAJRyd0O+Wy0arJuOWSGTSjwxs8OFBj2Mm/+Qb1FI/CrOmSgh0nGxdMo3awWSW9KbcAIujcty2LZp5roWOZoT1bx7iZj/hE2xYEgLMCizCzqKHuzJRDdzSujMxD5HtaoTQyv9jVmEfZNX7nW6lD5F8zVPfEQBrR9b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dlGiw4ZNnQR688GgARIy193M7BsDzUTuWd0Y5ZbwKz0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XP0wDY7BjZYF1Tf72RGhD/hxJCJzMhx6l3jngWf8BCNnVLJ+DbqBI/txAVTuk5XppFymElOvQQXdx0E6EoiQqPbMnN7Zg8wyfO+YFhJuXHl1j3sO1z0mvAFovuJ+bAEPG8+01yv2M37urKjzIkFC6a9QVg2DS4kO9aawRP5Sls//6j7N0mnvP79NkV8noBepS3GdGALcwqXf7S5zULozMVF03Ux1hSwRQFTX5CNzRCxpUp42Bik/Cx8C86zD/BcyivHAXHf7L0V18JR0qkoDnVd/WrVYWpciYtofuO2iyeQQZXOEAvCpP6b46RRhwGr0+zeulQtrnrAZdsOm28OnaMu5qVg8xQ17f50m54JsPUempC6riUWPIelqr1tKfEpo0h5euv47PN1DFkpYxoX/0ReDG96nseHJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dniSK/goRPwTs4QVXbXiAQBKIPfg8aKSHyYDuIcfc1I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uqPRPgaKP6/RRXA2nqWHjFoebP1WfDRUgWwoflY/hV2Lia3bNJWNdEtjTTiBdEkz8CmVwgXjquh+VQsEJTTcjZsrEMn6cr79mK45Iaum10i9LAFpcKeK70fqBdom4+7YGvcLQWAs6flCnbKNYumGNKfsCvuohFVL3GoHvFaK4TrEx+fw6MgQFC3Vu58JoMCkTXni5FdXAY+VuVtFXAsaeTP859ubZAq8HMuH13yB0KKiVdSxT0cNQzU1nGMlb080OM6qThWn+L4PC/ummDpVQ1BTbVn+mN5glERG3z9XEmpcJWr2tYh7OVnsUEvgW6FJrPm2KhKyZME6fAlOqBqzrCwTc6y2+tSQw4wp2GQRLfoPboHdN2GyxpUY/gTH7nyquJrLztacSUJlzFyVrZ7/8iDLplvpwtOd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dnzOZjdJ26vfyX30UXqsJllPKGP2clB76GG2qxQTTVY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nH4lt90IM35a5ENpm8WTtunYL/v1xQ2jkE6GFbQw9vYUsF/0VtkvT3UuMePY2KM6sOh3tthGBhqqGreq0fiUK31pdGRFRFhqc2bSlkcFPRRd00BRGOK/tiVgkxmjm8lZU88E8NG302R0rPYHSLNkqTd+Ra+/346zaB6jSaC6F4pJPuys7kvPaC2oUU5AA5yAu6+KMlP77IhGDFo8SmaP6SU9HF2Fbun0hbl6Uzls2bndf17v9nONlNp4rjC25ZkXmtqVjS5QA7W0DPhgW4CiogoaOjR4V9oyPWCapo0K+oq4DnMO22f8sYPV3pEUAExPMAzsvm4QDMc8Fmu+GkdLCzK7wOzJhadThX4JhLy8MjI4Cc695j9gwHnn2oSue09qKDfg4hfiZAlXZkJj78Uiym/jjGO7BU+k", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dpM/zEF+rKlisxLWV6TBj60a1tm7328IM+WsPqwMHPk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sWI2ZgZooG37cK2V5DXPss3UPvhFze2JuGd3m08Gvrbbs50tW5Q/iS0gScMkKkowKMWiZZ4gb+Cfsia/FYJMbhRYOefZsJOSNOKbf/ST+xNGjj5NE40ns5TBhyESaG3MehtbOoACMA2W7FijPwsjyNxPz5AQu9sfmVmOOke4ZTyK+D2TTuN99HACH1IgShMlIO6yJFOepUxGbRayQFDuksNcBoTEZQLHqyG+CekvYXIG3MaUxOXuTeHnGWOdespFjw0jE3lR00kDlaz5gsjOIhmeK1IPNmxKpBJqklGUf9yamVIc2QlUUSyxiPsc9IhFoVsHb8sjde5SHg/HYNUthA+42bfkoyU6/QB3bWIQS0+cblzXIGwTbTZxFVufSChAYINk9JIGkWGEULfe3+S1T8hy6cVGsuDM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dpmmoKKjAjd4IN5/EYnHkvxBEOZumDwH0hf/i4/lFGc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iMWzLGCQB0pAWFoUa6qYqulP4u/PoN0nt6QjWb8NUZDAl7GcnE9XlwIW8UvEPPmhl3kJkbuKCwPy0KjnfTD10djXJKZ2YfHtPsAiNSk8qPHr7OFW4jdoE+f8J0ZoOGq8zl0L7jruPzN6bluQgIf9U3Wr16mMwqtPOsuAuv3CUBetbVdC25d0/HlgkOB8nmP/f4mGxa6wECd9l5Xb4tjX8qZMMoidBmB/NSA9LTbSq2/heCV+oihoWwZG1mtsLCU50kgA3imFmRBQqRfDfngZlGONER/ClJWLeBIMMX/rjUSzSexMfHsDXVSAJrXQ99+ZRweW7PpkhCiuy0n+nuac7u7BMPgXKQVQUzS5zdGg9A7obD6H86Uu/LocXJBN8F4+lkUovdF7aTy4wmNPV4o7cIYdM5rgA8r0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dq7yKBD5puLONT6XMyFvd7tNQtlUV8NzJm/5HKn3qsk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TV8YqgFFBH5MeQkdZBYVAjRbXOX5sr7TyLgqWumrgwTuq+QUsW65SBemtoQ9Bl8q87U9nYfq5lBTQ+/CPvEXwo/flU+zo9fxm808bZlqZIenp8PPtMzbMHxiqkuKACcZHJWU0fEkyRgsWWw9M+1UnzXXKdx3QhQgvuUhye7IW7qlnySXmeWZxyhmReePmWBBxSKI1mK/+GhwE9LcVRM28ayEKe03CMBlzaTuDZn9V5aGQBbxt0MP/1RwnlQQIezy1k8ZGIwQvpCO6I33MhlLRkhb6/xqK6nTmAbH3qF9eGw8o/kA4uCfwNEBDLIp9oiQymXmDtZBtLZMIgumIt0/yKOqIOI6wSfTrjhAV5Q+TEEpeZPkB/Q8OUtM4EHXknbYi4MdnG3jKXGnlJU8H0HqYvA0yE4yCBVp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "duYB8E94wNd82LlG/s99OLwHYBBWFnBrIYiZYGsdK3Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aqxAIzgBBk7E5p/3nQBTMaQZKCF2erUail5CLCA/RRxs5Q6H0e7+u1AVIrPLDooniatotIN5vrooZQOATE0xVZC27o+B7Qwve1sxJ/Cb4JhpwE79BoZSFdDRButfAGBaIbEFJyblC9rByaNRUXKqyqV62o3nJzbEERD9M85EaoA8fBZU+6r/clHKUb5EhERzcoIHo/PYMsVRz2jkgDcoV1zadhB0AoUmfUMJxupk901Kun/YWTWzCwMFGhK2Sbp66n+Ava+gRyrPgfA9ZLPFDmTULfxO9cRvKsHNjYrTEntVqcJxZStmDPkAVM+EalE+MXAqtVNhqCwcCo9kEiEiKISRLR0IibwTzoliyT0Y7Lt2GjK+1vS0paq/RblD33hFL4WqPglmPw2mBSKgPKCGaifOfnKbtOOl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dvmNs1RL6hMrriqYy2QNsUBM6eqY8jGJQMRIpwccX9s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IkVnakMRgiJYclPpKHZZIJ4CtdoeSO2q+xPJNfhtKEjLzVg39NZDB/EqarE34+PUSwq37qPmQxyjPpXQ69hxn88iJKwQYnqwwcTZryvC+JBCLIfWGnDRIFVchgNwM/QPNaVDH2UsvQvIr3QvczZrgY5HzIhbSF1B5ny7/xXC3okw9PoOZf9gY3pPueaTMFNpgUFhJ0b/Ar+g7Vu/fv7jXdVCXyF1msZbN57pavvwaHi95fpqy9d/UauAoeVvPM+yhblEKUOGhwsenp2+JX8pQ57XdXj4yIzqhVvNENkdnJBY7AOZWdyrhriZeIZqYB3jmzfD4ZZpH0tidlbeSj5F3vTFEkNBY2jj+vxvLyHVcrXZiRdA71zadTexJ9g8Jm7A6HR3O/TYH35JG9Y/yOHHd3vgRL0pWXHW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dw2ag4sGIH0VNM4lLoplYConw6ol2iUkaQ1doCyJABY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JnnVbYPaCLc5aAJnT+KcRJOr0iKIBSic0mlQVgJTNVy68wwvXRv8xBjQWaLAKjVAuUHgonOA62ZW0vit+AMGe4kZw+lL0jExznIhjY3a9iQ+w2lV9nwrt5aWm1sxhaMN0CVnepiXT01nbUHLrxt+83vBuvHtoOZrgUR+43R5gAtOKJLlgJM9mBqbAKeG+sgskSMpmUG9aya/KPtw0NsVItkE80x0+0OM175xUWT+zLrOasT5xc53QzDk/pRHvWQMfrHZSUwPtS9AJn5X71LMCsEiJ+rCr9f8l/4JoHj4JOyRfAvtn3u81hD/eqdrAmstOTNh+q1mLmA+vIW3oFu7s3j2Ma7v442Xjhyp0xXDADsWTW2+6EHV9DdK1jRBMKqvzWx14OwKMKtargB90UNcHsZkf3/Z/0ki", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dxFGOHbnENAN5xaYX2DO1Qkc5M0bJB/SN+nZDBT7z3o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZTHv3hi1kWHNJQjXZYfSV0k310PeKyOVjxE1erzToFzOuNe9N0HeGBIAuL5RZndW/vE91NIUOjxGeN8AdAAUw8CoUa8aJ8JyVN6h7jXPHfITg1r21uwiF1pkDwumgdKZVPyTJNHIc3k99WMNBGyXjJHq7MBsW8+0LueGa3CHJ3lld2varEO0wrgKnuBiXemPhVOGtrVZKRh4xDVLecpc96wcHUDv1BfLpbJVsW5txKJPvwJ+zN+VNYAv2C6XybEi5k6+IMq/qTeDMs9lSVvgK6IHTTstlcaQ6wGCuQ4vmrA7xVjI29kE4C+hX+qX4M3Hwnsa2EyZ/9MvdKFiLPXNVnyjeZRdeggZUZ/qzGOUyfwsMXEGqdh5gEPpAVXDG6VlT3yeoe8mRPDYbxCI29rlJKZJ7aDF2wBT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dxmMZkscZk9MhZJ8+vpHKmL96wrK0ZcVTPBEiOm8Tqo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nvbi1gNl7i6yHJ84GGZb9ZeHVcypKPN/x/njIGuKRcOhyWQ7IvaoZ5e4sNvyWZL21e2SoAcKcpRJ6GcTRKlgROSOpxpKJeNjdsc9Jwmt1oTXMFmbEOYO/JsDnfyCumWONrOJRtK0PaCX1fFg5KYX5ehTYHPCJcUOmW5gi1eNV3uuV41UN2gDnAKyZWILe77QcNVYJxm9AO4v1izuJGg0Q2XaEg5Ul5BpFMe7qm3Mu1Yz7aC7l+G0dm7p7ld18Zykfly7PLhz5/aFdp0FMAx3smVXijbZpKBXx4F0/7cM215JEJ1d+XZRBFf7iZOOjeYnShh1yXdK3Gxlnh5jdmD6ZMzCxNJ/fXeeNuU2Ltd7sQJAVsgl0tbCMU1PXEo0LlPNWO485814pD3QsaShcHKULr/TAKgHoD8G", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dxo+Tit9XCvUt7d7sRT76VSsWmEey6/Jr5oCiQjw/DE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8f6sN4DYnWd39tieyueevR+3ZlR2N7Ci9G3nIFvxOZ+4SqUfFA0zfopO0wpBByMifSgsXnGSWNSRJUjfrOJk8EO9sywj+V7WFZwpWfqWpj9yh6/umN8dxyd/6nKs5AOxXiqI8mwW1AyJO9s5jnxnGq5IJMHOvaKB8LiOdKVnFs+FWPzPvGM85hWL9OV0kkZVkTL8LfsX3Yv0LX6OKV2kMuvAjUSCyE14Dyq20SCYpgghiYc+JIwDqnoX48mzQ3xdvw+19mWrpwWMafOt+LqPeT6prGO2XHLr89amx01KRP4PoiUf0sVSh+G79sZ9+T/orggrvXLrymguqiSqJR2/fMRvNwOPCo5rHd0LFIy7bcRl3Tx6lfVtMOxNosuOklQpM8V27W7HVytwuWtWN6erqHwmv66kyr3H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dypnoUcOFH1DnZO/k97OrBrfkiDZz6P+ih3udpYoZlM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v6VfgdqOecJREYjl874JQXK5Vv4zXhjljiIRaTCtvhMmKF7daIKB8M3nhH5YHtrmaZTG0eZtDeIi3UrBTsD3y3JyjyT1bOEK4HcOIguBKTHgGPAoMY3J+LsFReYf+dleujNdhXlGWrwN3RSq0KEgOLNs9zIUg2sO9WVHqzVEqGS9E4ml/F3lnbQCebACg0H6cVz+kHy7QhD1oP1s0gQqiSsNO6lly6J4/J7+5nVW7f6JT5hhcinamNuqpgUnmIDwI8euuWTrQ0SNmhW5QRTVOi1pqzwmUi/0uoHxm/jKgm3yLNmnb6kTKSf1YdMVc2YPxo0pi8fqABdGLMcc6JPkhJYXhOoIykjGRbMEoZUoamHtaS2a/qFnzbjVYmLSOPIhLIyYkfsPPaXI5hhPMEk/rygteW6hZ56c", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dyrop7qFydIgkdO7bTb8qONSQU7UMl+RCZiWwdeuQjs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "C9WQlIZwFpnbRK+ImN5C1J4ZoZVKCjCxotg4QQn78/Pz6jm6WyP08taGIVHSXPpLjnIRJrRz1r7kouk3gd54LXlHLEHV5gvZBfplcVu2hp0TahVdSFNLuXfGJC4FC5Oq2jkG0yX9Rsotj85xdmffU/KiOPxRdbPmWCcNvUrkXfTk3sOoanPxCWBeJ07WyO5v6aYW/8SeL3xxiTA4uPplMeuh0gDDoDKjgBpaM43k/O+huHKmHlfszZlL9IAJW4ADuYYqamrJI+XJC1EzpXJ2ojUj88ek3wJyIROs94LoRW6U12K2jG8wVT6wUUwsc1hmZcHZSzghg6cMom4TGMWN5rtXZZAXc08bLcxpqtUYBP143LBMfZbDGweYYoJYI9kO6ip7tpOO1l1b+oiFQiqkz/cgEVBxpU9X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "dztqYO9n24mc2gAINV5USOueLUvVyVFmwFl9qmiItnE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BsU8e+I/WxJPe69c2KasErKJYqUTe/10N4aEeL1w31mXcnPMC4cYAxlQlscNGI4JvqZSo3GT+yrPK7k1F2AI35alA0Zgvijv1qRWPyRIorapJhWXtk+TAGIdbdtF2G7/jeF8o9IaNpF3+NGJ67HtYnFAC3BookValhE9T+gHssUDeseqCjxrwG0UEC4ZHxeTdG8ULsnhO7cyl0bV5E1MtrJldHyR2zqBUHaNjGPAqXMpfYu2V5QMhXa7/LykD/IhcLyVQ5nI6sQBCfiCyhd0OiuEzaycwaCVA/qnWixgx787cWPEYVpXcg1XubEKv77dHdqgmglWOKT6As6WRIDm3FN5ITJ2tbYLGjos0oSZ0b4IGnV2sXnWW6pPIxxo35Eyz0iAVxVzHDgT2bmgoA4IlAFeoEQMuywY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "e/XsjY/n2h0eo5abo4zm97oP0ufopzjG6+Q8qxuv3AI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4z4i/PliVnTn7GzlkfAhgH0EKeiqy1YDIYTZVq3SIc7d14LcEdtb7tkETHDZHxnHjYI7q3AeolMBMpr3hk/CNxU3MPQc6qrLJgwQVNPTSfmukVcStJiC5yRzM/bjtbFjVS6nYbqgkmuY9PNWGr/D2q1L8S7HqY1IV0jsbI3FvA+gAUfproUvICsckfxpwa3YmnvN4qoTWLMdWNOxznHc1dhrX4X1Xp2u6ToAZcUu4lq7L4vIxbp1JZCG2QwCBs48nfUQeyOxAv9FcAoD9jg4CYMDHpDLNcav1bOwkC2zsrYqRFJ3jr19IKtZwAIuTMxG6/AEomwGcfhFHbKHKMY2eGg0WX9/d03rEyk5Pd+cwzD4Rp8gWspuCmizPpwHOIBdHhumVkb+LSRwHoacCnjQP0uDsyZq0Acq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "e0ziW6j93WMD5dXwqcOaNIz36Kj6KtqnRpnPpoeidFE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t2PtMfu2bovCx+MIQlmkLlXzQg7BlJFyATO2QrZlGY+4zJY1sIsLDQqqpmAKLSa2u9RQSJXbAR30/39d0qxgfNysdLyZhvkTVPb/RHID3OmXYHH6vkUw2k3Fqm4tRAYPfSkPlCsLtX+juwxhnV7cklGvtxP20drMdcEtKLiENt/U6fCUfPsM+UsBGbFSms9zITRBiVIUWH5RK7Nfdm4zHCGdFYarIU1mlME6V7Rx85C4MtNUKeCkdMjzaxo3mCv1jkTZNXbo+ETSPFkABn4+ulaq5QUOKRPY5QPWSJHrVoKTSoQeCFFv9Zq4VmvwhFlKaiQOV9S4aJCCzvxrM2+T+Y5HkEGtCHHPhOKjgWB0iXObZFMTQ5LQe4mmPsMh8iUlv+rWfaW3RMiYEzPtzbd330ILnwotRzlu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "e1DuNzBow8nayy6obZqTIQEU1QS8Hx0SN6FTGOkn0jk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3pOLb5R7qZ7KxXJMc0W63PWFDRaZizFPbvhXrKgfZbb7imuVBvcrtQMMKTGtiXO6oyJZioTencDxeFMzaJKEJyZSlBOAx06kdj+i1YxRWWxRqHREFaD61q6Ny7OlbMIrkjFoVH6FdrPZbYo65rjmOz/APpbQxXgvrZ4ZUiNRDIzGrTpX54bEJz5FoNC1FhD9IuJlAP5AyPxwc5eLdrMvInJ7QiItODtB7ull2U6QbgH0FafUufojRFeeJ0Qskvkcxe6Lw7Bh74/tMu2/Ko3uDJp0awS7/1u2QsoZYuTgRn1ANun48pVDWeBI2d0TulbImGAfAgivyebIUNomlCwEV4aFuMYvWSmEEMv8Xg+VgH5deJkrfT+NjFu2q6KmW8+EejSoNCi925qezVH6Iv+UeJTEv4GYxpY3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "e2hbx7HlRe9Z7IyqQHiIKaSskdA4a5hbB7lBG5Vcvuw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RHFZ0VQ0ePzINtna2NEyLBIpVWU8xYeUhcsQCnzHMCBnAqL2i1pVYQ2jJH0IfaxJ89oaGd+hc9thXe+sZkLb21gg/sz9FvpEcWTgpjM3elwQYQSWd2psCWT9EjQcekeJYYMnycU4F3ALmbW+Yr4y+vIy/RNzuMpmw7zqJrIZRNeN6vw4UMmUcLm+q2RRNi3oQ9K5ZL1Iv0XCep9GYr5X+gxdRgIgjgB+kvESDp2hqawKL4dZsu4rv+A8TswQKjyXZfZVJ3MKg2b2ncpqsoNHqSenjgTK9RS3iG7SXqHkNSoEZbrS1ZFcWqjLxYbiQEyQUXoYR4aIPPoC9htJS7ML1hfiMOmHqQlSGUaXT8XYwI+S+LNCOl8qjU4WjKahtqC55l63kj4zDsBBY+La3sBQKiDdifUpkqzr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "e3bX3F/C5taqCLnunLivSCyFxgxnBAGpSjnHwopTTm4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "62CrqIOouJClaZg2R/ar+oRT+wM8dVybouIblz0at+ZvPfbAegvVOm5FxThLpo3LDuzBylyc39+iBa7j7S6aD8kv5Ghn6R/7RotRDPNVVLzjp3Q1CnSa8+mQSzId6X05vKiGv0+NC3Q0ahgDTcp8767vZkDQyXlYb/ASdb5O/9ko4aw+JKEYy81bJJlts8noBREFLZ7XId7mtV22V306cLsOiyHTyCB2jTTytwvHeXk+VanvyEGZUAk9daT1D84Znep+Lr7201XDja162bn+JnukjMGb1+IlSglzPNpTzKe+kYJfuSOtYL9q5fhLe10zF7axaZ+/oc4U+RbJfCWxa5l5mhVLdmtm2i5LPar5KrhtZu/TBhqzSeGJt78Jch/duZpji6pDaWi3w9nrkYj39M0xH/NhclVR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "e6bADk/SRkxrD1FrO5FW5eW1OPK9I7mfNLdhoqPXPH4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q0DldN8RfvFSbOtv/oK3/5eQ0FZ1twKHBLMUgt0VxkxVBcFjMJgRbOCZA/rLzqzA+ihrLgSPXbw+8kKLQZj+ZQlFLPmbGG1wFZftJ1A6A7lbybSO8j3N2ljpeIRDC81jzREHXtPyX73JtdITkTYo5aCIc/GeOnBMh9+WUjBZ5coN3M0PkDuATJ2dD5V70DNxNnr/bMFaOr+rYEUirP0P67uOW4jZlqj/GPjD/Y+lJZ9G2vexmakb0xyfeaXKLFHCaiDVZTf9f9OyktxTIGppFysCplBPiC3Rmx+3yz16un4nf+WWi+Yc7TA8BX/Sow0Ca8XRFplGFuoqQYVnzQ4X3zwUOcB4p16baVfAN/4pc04LAXK09wwx7sg4E1/msyvrlIRn6C4hPp3wpQNK3J4SXutmnDlnMHvj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "e6yt8Hf9QkK7u0uFAeMxZOQWGBmSieE2+1ycGqsZ79E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mhwn/g/6jF/lswsqTAMZDO2vjoXBx6+lKo3xss/IsQ5kj8x1kXFgA67aX3HWz0NUTfYSCgIQOy4ms7TUqR94Tmsw4YRYOmE3d1zaBdi9eKTgtJxyeuNGIXtzGay6zKCRKh7zFZmVWrf0w9tkCRrA+aBKoApiU4ih2QaKhw+/vxCdnC6fkse6CgeUYQ40GWa1TuWs7sC98JNTUL0QcNfQItabOqBOpiq7Jg2TUbf7gtUCxyiqH38yU63AT3lBxMSCsMHn1UgG8WXtfV5UpJk4VaUUvvlSWNiudnnfhaohzqNc5T3nD13f0f6U/3ALzJL6UahiNrTYVZ3IOlxLxVjDZCPx56hdzRsW6V/+q8c0I42GG0P47sR0/10wdL4GliIOAmLK/8YoYZJ0owaeCSJegWtl0/hWKj//", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "e7dDi/gDnD1k5m948FQiBQfKdnj4Mly3Fh88GrZHHpc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KyAkQo/Fo0upwMMvVYc4CRG6WF8RRblvOTGe9m9GzboRKqBAHCnooVrV2ykEefgCja44hqiwLg1KzBit+vfNsr3+7RlBBvHOaYtxQrMQH6SOKd0jCLTqwo8Wr7WDOVcZzA+YEDAVgTGQH0V7oZ4n3UMm2aLa/tOrx7DrZw2wlREc0rZ0ugSFl+mFMtEHBuFffgyzPuJL+5qi3tC5k4kYW1C/yrnaIB1jOIBviy3KBdcoeX92+Gr3Lyl77+R8X3McbVnn+eFMYC8swZIo80Uh0MBU9bdbJQM/uf0UzQh3XjII9Sb3hUh04piDyRssNR/2S5pkqRc4F6Bx0biQUzDH0WxAAEfkHpYn6g08TGScKntJMWBt2bgMPmuicqmzO3+c7Ffvv18L8VbBw8l/9/AmgF+fQcT9+Thj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "e8LczucRZNnV0mSRVjekXaw44aXqhefsC54MHf+zRGM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y7cNGHqkUwLeUIlEAlDEb5DgYrc7kDfyCosHF/Lt3+Q7oNAlNodYriRx1Yynsj/ORpGpFnTh5kAzqh4Zh2tZKKsXV0ZCH/5dknZoNsoudLukzt8r0JjAGJLZnCPG70ZDHVTPw3OZ+XkmIVeCaRTVB0mJbJia8Mlxrc1OlJSSMuwfI2HDC/1PbVmak5FXkdK0HdlrVCS6v6CaUMt93ALMqFNQus3Qed19MjHDee6BiBs1kLpZRsp4wUazlolgQmqd10Iz5g88NdqbGDFx9ztgmJ55k8Tpqwy6KUMh/13mFfGGtjuy3L1KsLUgXCRUojvLtgTamQv+sDcSu02hIcQQBiHPGq3coEFuVSsaZC5OVWWmGlMKHuwv4qzI9aUshz2KEqJJ9oPtJqf6xyMQlBBZJ9pH/5c85iRZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eAQjmDDMish6+BgQLJ4znHJXhXMU1njGzc+7UYsVQCA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "h4tC+D/MfIUgjhWZWppc69fZp0UCRCtaZ/ZggptZQcvxTIH7Cqp68dp6fTBhDMn4PoixP2W5u81WHMoeeS+neJwOaJ7oZn4ObT1z/Zb3Kp7wa0muko1VOiMFfHT+joiwQyVMI6woqbGQfuPUhAaMGtIu+LTxvZU0CQuID3lFkuem77NIDFoR/63SggnpqRNd3p9dSgybxJlo51vr88OxFXHjl5pbJpyRoTGeqIcQm/iv1+ahUlU0KmQxc0J8lg5GQgoFrf4zITJ5a8bNDZgCO5o0F00BzYZUISLJOW7twpHU8Eo/rSuH5DwWphvVatreoaLQkCCw15497KbQWg1bPQo+ohq9iBJCbva51lu+Y4dqZQZnQnzYHE5+oIiPkbjRkNPVlXt0lpYn6YDZ9WFTthd5W8ODAxV0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eAqFNfxXMbvIveLT+1sglLjuJvuDK1TM1aHzLjF+ihI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d7YwQ5pFEEmRI8vZR8Tcpi6jQ3StCLx+wnZMpbOvRtGzoO3RMi3fhnbZENJ60JH+Rs6aF9dqurdpstiVetitXtFYAMSmtmEaE3gQkcNkmGzEhYhzrrNYwENXvwQdODv44g3SONqLsomFqMVXBL9ql38h0VC/FfuGIDbg9cnPWPnMxvSMYQtZt1uD86r2ki32VbK5ItkuxFA3K5idO4HQrran59rPQ3vP0vMgA6OV0B8EJPA5/KwwjhAmpzfJkV4Jq+WHWud3i4GrgBYnkrUsfa9zLLBo6QrRYV0SQ7Y4JwIMCVAhHLOMZQ2dur/IY5NoZ4Jy7v8XBX4NlGQ+icZJcVbiTJkr4b+TUZhMjkzFx2xsUVj4HkM6IWLL77jp5ek3J515YPuSkH5VrMZ1/ufERkH88oi8eKdK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eAwl+eBu4QSaEuJ+IlMn6bnUNDNHGBom8Iik7caa/kA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TOTSMl9MdiQatpLfopwDzsf6KDGEmXUxP58BFH4j2+Yu1BXzkplTm4lksCpY3zYd4gDZUpYyjyMpghQdzBILQH67XJF4gwNngTnIBffsAxJ/e8YcBvefKy4LRcezLVVnRSJndpe+ZbLtpwGROKbURu2jsLh/I2u3gtpvHpaZnPZ6DAyyq0wpPON3Q86mgcF6KWsvAK5NraAW4IXVreUp0ywBPA30WodZp0mGvNu0nfNNROXwpNcqxuGCJEUqguZ2R1zRBKcHkfhPuo/0uWtVG1wx69fbp3b5JKhI1L++UEGsnFOiyha6m4hsDcyscxJR6a76V2wnBPudA3Ve89n/WEbPKyTknPB1goiiVzFxHdz0ZU2nlp4WKoihTHAVCQ4KP8uKwljUPiLqgtklc8qAr3gjHGGhAcGg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eCdYdjei5cJ048299zBoAvFTl4JMTinxjfMqvYvk3GQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RK/xulUQadNYY3/RRSZPq3xeA4+7YL7gCK1xmUQZzonzFTB/pLlTMPJMtdDlPVf18bDaHoDND7KOty8PweZrscZHM/0vYTbeFTrhnizMxL58sJlFfhDAjU86QDosOv1lnha/4W5Hnd7p3vvrqk9kLgrtVKaT7rnbvY/X8UdFOJ7+zBENYiwlYY1oZ+7+LTcqWuBP3u/26/1AdS388TAonDHhayUrF0rOHZtJEONqdYzT0DfpD71+hCGflXtnDKgE0KgQe2DIcXJ1RctrfjMmtOPPQeEZUbLdB1MomKeE4wgUly8gzmsb+i1J41xTj2MXJK65cQIde9TCn/7lyQof2HDYOuIkKHFwrTBfsO9ObBylZOmVxCwkSwSGR/cU9+vqxdNKJkgnfjCouUrsvFZxZF/sM69Uw0dv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eCp8YGdmZimLhLlO2hrnr5zPskq/KzdTqHvmgv44KCk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gxtZzPpAHn21GlKh2bEnEfZ0fUHrmS5d1jOflTVPegN7qVl5YWB7xnn/OEonMHpFGq85H+80Q0cGw6OE53K2U1joTRGYH4lpPW+fqIruLvl3UPJ1E758fyvPXO0IlpjgsqLEt0IHhh+W1JK9ZopW59jRb3nyOmcmYbYbPN7Y8JLmNG9vT1KubNXPB+GG75gMrAEkrT2Pdx0e+0nVOzMhq9DbcCujYriGDZttiLVqScpqhnblFWqy7ZKijMzCoLK/M0sZ7Qke6kHPgla6E/8/9/v/wiSMcBU8fO8dEqgn9i1x8LJUvevAEPU78pm3Awle4Fzv4VmxJD6i60RaCuH+sBts8xvj7CpNtgc+szGx6akb/0a2vewK28qdZ6X/FfrM2WFe0L0HhiJxFmmrI1fHdrUUoCKSj2om", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eD4Wav4Lv7ESkQt0LGgvHBgwLlmpAs65poERpsxNNQI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WJhIYKuzYeTTUtVN0nEPXI4aax5Hxia/I93IZoLdXM585SKzyvXNSKIuiDsppOgTkrG2pc/j0htIZBPLXbZhgGDgpEviRUHubPpJwA4A98AO1wHUmdz5FDQET6jDCAIrHu1mq46YeqJmd9yydBiF8zeCCAwEijdpms88DnHQV7SpgdZxVpghoRUoOK3904AKueKhOb4v928czxpxVY+o7F+jy0LYu7w32EcCqVJQ8CGlKAzl537Klj3mMQIQA1DzaK4NcxHEsevxowuSElO0v127F7yY1qyUToyvfwJ32U3aW+TX4xDIR9WT6pwyQON+L6V3wwx7xt0ETWBc4lKoIGmV8qwDwhsiwWkOIDwNo16yyUTM2kFPeNfGkGmt7BXE/oJbQ6B6WyBI2mlPj3YLSy+xwVJktYuH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eDQfJsfsHbMJazDHD7ACv7+SKqUU9d/HxqvO7xdDWro", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wbuZFgrEEqBprAGl0lC1m89Z/ftUPyCtPbCsPM9Pco8xK6Dg+nZZbJIIP5SodBGZHjftEoJ7YPSjhWjGL6J0eT5vAT6D2BC1MkQ7fLkjXDk3YloZes+cgBOooRn+/eTXz7Xp+e4DP2b+AHJr8k4S2UYRUk2YF/CfKBHhHwKu0VGOpbZQadKro0I/tvl+Ey8CStY7pfcW55T2v1Edd1URfB0iGL5gJyB5IkPE98paLymjBLVU48+HvomoyC7WsHloIX7OKjAtFkxG92hstNZ/I/ZK7NG+kYzUw/HgJQhVv2PgSAxQI63utIf2xNa8AApboebDlJOMouNMusu6bSUaXZG7btPmYmXFxYzWVj8yvdW7JWBuxN7mB4l8f1lkPppq/VaMl2EAev3xY+PyLdexcLTsTKEgiUut", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eDZT2ZY2aVIXtyiTlq4mkmgxYYiaM4Ng5yYsxlJgy44", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/+A9z+eLxWF/+IMHUlHA9PVg9abAyNav70otE/vM2c0Odhag/gvy3eYqHTXpqAvj0ZjEYKl8IcKKp1R4cctiYPvsy5sRgM8KlhJ0codwLrM/ASdbGYYnVVgqXZdBxT1uApiJwJKliJhbGL+D5F8gHGWVQ6EdPKlrwYdh/+eC77rzfOWGY9G0B6O1HPewL7tsxwblks+QzK3a2UqlPJqArXuh0fSLDqthuQKCzAqopLjzK3CwLfVEgMucTCxuSvIrfrX/8Jrh5gXGMHyK8urlcgmsqBqSYi9ZpLGpS/+AlrfeGsFim6/C3+1zA3W/oxyUm211wa4rxenHVUZKV9IPXw2rIyYE1s+MRGe8DtKgjByWaPTy5rwR0QVUObneaBdZcAoHlaltqZTSeV7TYaCNXvcK7axjyjAs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eDeEwFg/BH+uBdYxmH8XnC7/pPnEhUOZVyWwE/UjJhE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JLrJ+tOY6BBa3Fvy3oZENu5WJBhItRSArKKXUvdR+mSUJHS7J5Yat9XbaW4fp9kfWCnCcHQm+jSnUI8SWFbOQHLNgJJ2qVvYsQyRLE1bpuUOYpmK2bkYZv8eFx4Ffdd0EtBm8gH7omHHbHi5kvJrVZba7UMCNKLQFKYbAKY9b1uf8ZXG4EAMw0GH1PR1ys4kMlNb/tshiiZQaRPyFO+ne0A0MfcuFRlPozAzQ3upGt9MUsHxT2ofs3dHM6p/fKfZCKaTgQXsuMcr07B5hdSN17+ludXJZcvGVAGy5TugWD7Tf5EGA40x7bZamKGTCeZvzbmBFYx4JtSPOtgci0caNYVv4BiaKvR/hSqbyG7xqHrXGofZv2DgJREHlgEp05WbYkaJc7Vkp+GqEIABlWrGSNKSo6hsXOYL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eFAsTvYF+rFmc5MwhEznUS2Q1LYt8LX6F6ntFkUdMHY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XncIBbkmhlpuJ8BZmIt0KjsSzLHNGsE2QQUc0IIlfW4R/XjFdm+sx24zngjsTl2U8M/q+jN22BwJ5K/ZaKx79OpZdgLG/GMsT+wMpYR0d6FWVUu9x/V/GnirHshsiqWZFib4UHWFmHGRZ9RPsnuEekkWsT0FHyr7zz76EzVPbrvMPTjNJN/iQ2YNCnxHbpKBALugG9z6iEeQcbAL7O/dAx71IaqEWwET+rLRJPEKW/FhiK1STlCFSgNJPaBuHT50YBVsteO8X4HedZ57PCRjm6vLWviQbnELS14pCGhEiRwDzw+p/9V9SVg9m1wD6N5eZRCH93hP9PlZANbdSR34XYe8cn1T+9e62NdsUWnnOXrg4PSxWKn8wA775Rmi84++Dy2cwsR+K1ra7b1cgXAmjcQAsGmrAItA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eFwBK8amo+J7ayXJ0MxriMNcH4zRFpWSuzRSCc8Prbw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BkySSKpyigFcCD2DRExXj6YJ57xZm3mUiJV9gc+tUJ7OO/I1iEYECmLuCuZinGQhEKBzjDzI6An80mEf4oXeN9YaEWDLu5bmSx8tRSLERnclCWJtJnu9XSKl7rl2HoaP/DyAOzBuplbsqA0WhJOG7kTXR4xhJ/COlEiLUkmuHGa0vts+/KmI1x2ngbURMegZRWN6EkgOri+T+jtvbAkN31at67W3Pa0d1EeP74eHeAC/DsRysqnWJHvHqjEiQMB5EYjO/lca0D7QAi4CYxfQy15WyC9ynaGmkERgEgt1oUP/MeIw/7Q+znmROxQ+Y4Dxm1lcv618WYMOdAaOtmmQ3FL0Jkj0S5VGtoYr7WlhXp0hS86W8ys8FBD0erauRrLqeu/joKf1HdqcWK6h3zTMQAiGEok3sDGD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eGQTfP2WFcr6ClH8w+q8IXuJDNz6yjooHzP1jrAbPmo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dQz/LpPBbLelu9XUxNnG2pUD0NMV/JCsvxaPiCJztu1vJFrfcMBKyzritmhFU5WxRij//eHY/bHPmtfV5qdejAp7LQAyZuplyXsNihoQxoF1vMgrNocUlbu3Sp3ME8bVMUZKbWxsD/TT0TI1Pup5rs0OhFUgsSfSTCPRzPulZKN4zhWjoS8w6RvZCBnk7U4p1Ck5NiRdwjhp+6bXhb/wYq9dm10wc2mGR/SZbBfOK1i1KrU9o6kb/f+b28wbwivjdPoyazVBq5Ur0cBtF/D8T8wF8jio82VfWMU+OOY9s3O6KE++VJNgC5pYKdGleK/wHA02MrWVLygIh9BB7UT3IliEpHMS9rLDeWqRBlyV0sUHXEUMrKnnc46KbMgVTgZFfyG8cxO6aNwRHJlAiEaPrJ/7Xo4w4Hzb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eGgyE8PTOZcKbEZL9OIgivy3XocwZlY1wRNznwMKtCY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kOi9dhcmiP0kp3l4SdapCLoZAUxwwqdJrjTuqFneA/vME7YByHpoTiqxkJc2oNrE8fQtEno66vwoxXfsrki8FpD19YdPMn7Y+TFC9p9ee63OZx/pkgelPJA8asCN9I4CvLdKZ2gn0+fx/ccQ0iUSXW1lrb4+32X+Y3rqY5RA3OzaSMB/NaJAYiXSPQJfwiBJMXdBkjWoPHgDh7zxIs7c4nWVOT8fMBN9GFgCx89kC14gFH4GK+A5J3s7m/NBRR/dcRB0pMTvMgCRBrmyVxQLwccudGZeC2EtqXmrLs4JxNbaWYo93cDBcdKf1ZZ0cRhs2LsLG1wKQASVUdRXTWgI9y6CCAn0nFsBorjcodUlLsKnj9RCOMogbjqEoJ7sGR9P7zetF/xYXWmdInIeWlgprPY5ZhntMLKU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eIFFl4IKLNNljuw85pDLYAjHa4K2qrdFDXu7PIqN/Gs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nNCHGhDveSCJF+K2LwZwgp1p+KwWIqY5+/6R7k4Ylv244u/mxMb1FXtAt3F10LFFie48idhAfUN1z41x1UrLcdO1z73bVoI3HoppKcNGqiFO+vYlvvenzea+u7F2Ys0H5otmEy1X0Ucb1H9Q+hLT33ggb4JmvDdcN6dNTDexE7isUcQV21xWiVBU69Qbli3CUDqq3bQ22ceFntbu/R+rnTEkng5nMt5VhgCYdYCZjHhM+xr2L53N5ji9Xmue9OpDejMb5Oo75aOaHeefxMKia6Mic3gxvvWVE8PzcJUUtPOqQV1Jty+uJ5VdOLNyAsAJ6LIJh1bPSAclGkbCPeNDKf1ZkssKTMWsxaOVAlMd6SQX26HOPAR3qWt2sCY4LKMqTzi7UQgNe0f55LmTx8mjBw8Zo4F1vWaL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eJHdqagZKUgMpavr6D2JMirIOlQWVHv9GUuE5cWE3Xw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5rC1LH+e+ozzC3jxy/GAbVJ/JyVpCMm8QcmBANPypzL+nas5BQw9A12h6KaWBWJBtAxRhYwfIXJa5CyezY2ffDggbPQnlfzvdodrS/44ayXqokxG7zkaSbVHa+0aMfqEOpHBelfkt91SVN2riVUQw2BjRp0Fno6LyRa2MlPIksIFnpWPk4z9A++/mCIYlusAdKrzo9WyrG+6zSQe75McFuBTZDLzXfxNfpWLwVSm5EqzY01IonB96FLx2h2sDJpXRaI8tVp3hJPooo6+JHm95Ny76et1v9/3eu1P0JDy8q+OOTLzpHXMXMWVSB3i2nRLUmBvzC0EQdmPT9gGFphT1onesqMCmJQTqHTUUA4kVGJ7UiAwBA5YQAfRl2awNfb8Gmir+mhT9uptYdtMATyRNtOplLwEn2fk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eJmi1Etfcmi9BSVese0sTnI+zAJzp6TlMqSmIxBRmY8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FBa9/eZvoxeary5x4tZmfmQjKDUIcyoVUdEiAWDqwMo1lTBynhht3JE0LOwlBfWGM7NtFOUKZXulZjdXIWo2tw2nomPQ49uH64ouFLDP5IqzHbOQAtpHQGfF0yVC/xaBLfE9+ciESt5wxFaaEI5oOKUGcioANmuPEp5c6CbcYJQaf80yVqE2IKATaV+KFBlCAeEdN+HQoUCwF2rQc9sytBaIC9UyjV2W0XHhB5JqVOfXykapkMFsQIJjzUQjj1/jIdclZjRPVPkqRpk9YcXrU0k2p11kTinixKQS9x6UxMLQpL8JTk3QP4mSJquhbLc/8iv2tUdZjTv87Py667BDxl22TiG3caWiU6ihmJRiXhCEWUtyFm/YZ1xLWBf+IpqmgLmbFHordtabT6FcIMQNL4SScLFeT204", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eJvk47Bf9VKZ3KlnL3TJvSELusbobOsEd4aiXA1vZhs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mdsm4KA/s/pkpvnZUa1AkqY4uvXWEtI+bwzzveath+6lGietcuAqC0sv9M3qzu0Cgo4+VWXyMDcUfJw2oxnga1vGFQbGprHtjRC2ZwEMFH5coQAEGZIDsr/tda63i1cbl1eD5nOvbnvqIq/OHz1SiF8JPXowWHRwXgIIDo7LeUl7rJ/gdM5MTdcWKSKQkTMKKvKOwE/hkL9nWAVtRjxXlgp92jVZv3+2GeylhXI34mqgPVtQXvD0Nmhnd6MhblMqf8hl8mpOfNcT84iDNz2fwL29fx9mmSrGPvOBl2KLTSkGNme0UED8vH+vDIKEqJ9Ad5IVVDfOTBj8lNb0igAxMnVWtsEsbWXDOz4r1IPBN40O9xEEEEk0q9Z4PGX7iuq5o6HF+8+aAIiTxNwzQqjPWChVmAMmyBj6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eL28z+cxOSzMXlTCQ14FF6tG7ZLSdstOZzCfIgEddWs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9QlOzIxiDYd+jHFB539Nl176pKasXGBtyr7SHcRNiY6+t2Bx/Gaa3kb4aD+NW+zj40OkoeG0LCfPJP/M3bcEK/C7HBa3nEq+e+iY9P9IUN44gXAV5ShYXbZxOd7ae7Dmd0KhYQWTBE8Q1tmq6BfQG0H0XzcxvI5Sv5YDiS8KsD41f3hpZ3Qodk/FRHsh2rYEllyIaAf6Lb8xHq/9L6pOaynLSfWvVT8BL1qUkjNn6+zRCqhBkmRix5sug8hEXfgYpYHDDOwo1U62m0lAys6G29+QKlvcjNgySy3ft4iGwlWJABp8vngNADsy5aSTDXeLm+7hWnA8itcWeWM35e0jTUCDbYb6ByTjGUPC4r4v2o8Q7At9u7BOs9By2psDLZCx80e00YFx7mxEX3dVZWh8g4w6eQyOFfJh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eMH9AYBBhir5DI1R2ELvSc/1VHEMGJGyBhVBdXLvqVI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LAALjjhkcKY+AT65mDh9N6XV+rsRRtXWD+NUQtB6A2jgmuj7J+YLWAxE9dxvC64hrFoKic48n8Pq1VGDXNtr8eDRG2sPF+BdrVDJWflA4yM6gEoymKUSzU4diOPjM30slVZiu++AWG5ZpVTL8KYiWEGgZ0CoYrwGMc8FMQawgy3x7w9Fth0uHah5ZAqMJrxevePFAJ7B9C2REXRV1urNUEfprcKXZmj6SyKRhp9+FDhnQG+VRCMfsge1s0w7WJUMPnr0pVjmLQzjHLCgUSBlCloEMmPtgTnlVAKZY/j9F/UljXTMF+tmVJvGjQ2lHTVoRrTU1cH8Kdo586tpG53XFmkaR8drZmMm2qMZnfjb6z3L+zlgc4NOiWPLTMaEbPTNyxN5hubKLbsgpK+tDvpypW6IJtZc8D/f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eNEFWX0azGJSf2PHDAuT4VLQyIFek5YXGAqKYgqxiRM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N3KUpBpXs5b6f28uhojP+r0sdl8DlP5c7iy5DlTvqRoFGiWaxVj3tbWWgy/w7Jiudo2Nabd71gT5ztaMAsao6du3jFcujHQcIlUUi5tHrYqjkArWy4JGpKizLHyksx6ofXXTRQ8GIruuKc533aaIJcAs0T1vXmYuUjkkwUbqbo3apJaQCmq5Hmu5hxsB4htoeCaulUNh5zZOwKOnV/68rHVX9dDSAsIv901o+KpInsZicRVjhDS1Hut+678wseQwRAh4XpHDQ4tdLEQ/sNda8/bUk7yx9165kgtkT49ANKg4w29MGe/0ypUUw8KnswTk648xgRquB//GYmUqu9FOR+Xw2UtvMIs0dZTx/ai/6dT+bPISVO6ssqs1d3tEToI4p/G9moEKBktDG952QQVvHPKD7b9WpNLJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eNsIWpKnFrtFQoXTJAywsrUWTJjeQdDX0yTuvE1cVTI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PPAgFsUb17fTNvETFmgHL/Yro1pP3GeR02ANA659xguy3J1p9oRqR9afjwOsCna7wq/ZzdA80O+tQNEWVU2snUDyhgAVC6NETkxYidZjokJYWs8iyri57ODrhl4MNQdDK65w/fM0Q1oufjZOpfMB0vyiZcq4LiQxGW6YO4V97wPu7T2u03YXgeXXkpoiABM5xzsRcaKYYPfpeQxM8LuvXTod+04dpHAAHEpHrqsQP7PDENpdOwuJbBhlpwWHgeABbZ212m/ww8nocPr6g6nM/TP/5keLh6hcYuSRoQSMRUxfcUyFNpImBp9Tbxk7sRiDkJHbR4ahgOGhrd4NaTzSkiSYjrlk1gBBpczpcyvvBkt6IL2a/cvu5Zagux8K/4T018/AaEHoi5l3EmuMUzCEU60cTYskLmIs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eO05cmvGYO6Aosa+sZM6TpCo29xm7IDiY56/DIFeNdA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f4XBalmI7svEj/TTWte8VWL7U+7U+XG5jk4oyK2uBMbPt2BH/ali1r1lasYMwTNkqoYrbzeVyAN975cnKIhbSmuWHl6xWJQvL5AVJZYigcmF3K5K8lZXKQnZm7md0Ah9TAL2fr/de3wBX9zH5A4vamyXGok2Xsork3VIE2NwOMttNIXA9hBVG/8dDYoRcehuMr/QgjJmDFCiinxlahQ+qpCH6GWmrG3LmR9xbZUwKR3SpbVh2cFMrhpwT6L4K0rJpPqzUvfbVhSkxJvEFWSENF6xcc65etVAAiTKV1CxQSidV93kas1lKYDy1CDLXQFMQnsfNQXs+yZouui8Ay7DgG6YJRzRWbO7FtnuF+tUBqeRw62Mo5G3KpnhwWgKvVGMrw3nb9v5LCVgLpPoFbVZZsdQbuMbUqSz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ePLiXhVfDwCjgyV9rIL6LsdrKjbhF0zCP07k5K7NQWM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HVyAXBJiOUxIzZ49V1XAEgTKDE7lFyfnl3W8mSuSrzhRfVqqyZP+DNZZo7aiDt2XbVmwcVp+gS53CstSLLw3n2w8yoP28ld0Ru4XRKOgsDQvaR3IVRnxzrY8CX3tUvx1EgQwNOztFkzhTaAVH8Pqun5IDhATsBUCgK/wPMWgW6Ty1oQ/N1Nq7BE4xgksAFeyuPRAS+5N4YRaABH1pS00AmAD8YKbLPJbHdbT1fmsFotzEx5AjzbbPKF9tD/PIjHS6207V6bx9R3krVEJnGh7yBiASME6pavJkd2ut9Fhh+EktVo6VbumwX0lcweh1Jnn+Rg+RyKyhAN5IV4Sm9xphoD9IJBv7/vl3riV9vZHiZkjO1kZyyYS2xSVAnbB791md3Mg8UPsgvI+cZfsr01uAtECW+vI6Kcc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eQup9kzLbkqZC75oPG6PHZaSb0722taGVepZwEAqhLY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QwKWnZa92BFCeYPrg5WmrNIlQRYpz/KqUQe6zRNHwGSRZ0deeQyEKItumS0iezwxeoEx5k7DnFv1c6S1kiiiCBOGyrFwNNgbhIhCJmTW3rzw248Y8/xibMhg0iZY/Lq7ZB+9j++TiMOhLUFAm0p4sZf5EtaJm6AOWYOkPB7QMlpwVt863xV3hJms/DiNCCeIZ1KgF9VpkpP/okBONyenTsRFd36xH8We4ITkYjO7zTYR92QWWMe0YO7/rywrG/ZzwN/TM86mC/Hrk1JK3z0iB1sI6S/MgpkrbBfx0W/aps1FATXjok2WIDWPXIEZByS4gMiulJMGM0WanFFkMQ5e6rTbnSi1Jz2eN0gtI1iL0PAzgIDdNO2HefWk7pSpE9ErFNf/+pa6nP5OtzzuRw1GUL0wBAQn9EHX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eRPLHO//wKotIL77MZSfHZSLfV8CGBZ5XvFbFZeHyRE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CjjASEm5d/huShrGZ7XEGFGA8DQ8a1y06CCWaGEU8qQGOpBjlJx936I0HxH/PjLm05jm80QoqFSmWRVpPVMJ572+FBrDc0FeOZKGisaIaP5noeqfeh/GWub9wPoclAr/mJePKSI0HVV1dYz2s1nTeW24LmcIC53A3nYeLGaReH1YbCl6/OsCWRdBcCuP68AArP5CyH9Rq/J+D6HKTdAI/HJQ2N+LEECokD+fqYTqBIaPY8FInxGtpfjw6b7+YTODX5wr+tZZBtw83ihdErJ9sLA4p7PuWqc/kwiaaJeWWJkVRxCBfIuQxwWGzL2/CTHUS6KQee4PXpUrNTQpTPyVrzlls51OaRJhex74VWRqPbxfbBP4lYSEHklETLiU97acLgkjD38j836JE+rx2Mg0WyxaNV2XvIq2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eT4H0x4pltDo8QYVRpJXC296kPpUQpYO/aXyzsfbMTw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HDsCrTKQibPX1TGwmRYgj5C3PkAdhOdqdl8YbuCs9PgAA5SaS6Aj/METNRN/LQRE5avR9vNtEJZG2Hupa1s9REpE0dsHhzoz3N93sJA7yA/NJHQzC5fPMaY8q6n3Agw/fXNTafeMuZObo3sKcNunYQA9S/ZEFw4puGFomzyrbJcX//QJj12KQnadhLDFk9q7LHw3aNzY4+hghOn/FVmDGEpOQS+FVHOd7KCxD5zt2lIA73vvIJRZiQyILZwcrP5WCCHyAHW9JgDCewx051s0JMFCKVDmJ2n1BYHDhtU4HqGXvtZhMMydxOukUmedDtV/NvBNNRRNm8I7aRC88DO1DnoGV+0wt7zR5FwvcvDkNBNGiFHrwB9ieRU85AW63JdFdaNcKRJAdBjIIQNvsLW4P+TZuTdDkaWV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eTDbYRZTW2pAXFgVxWN2QpC1LLQk0cLIQrjoUIA3s6c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+pHmTCyJJGqd32NEvpW0adgYZn+v+BzPr8Rg4LR0mpTL0irut4xDEySR4rks99ZkxixrbsEql1GHqO/M0O0+fat2295Rb7qdMqmLwsABCMgdAks3lkrP6D90ba7K1AwJQ6SV+4CQlKWwlMtuvMV5rm8ftTDhI5PXfUjeMm4iUEuNp1Ews4lbWiOKy6izB1mMu/8ST5q0s/x6D6gBaJEXByb/GDm4frz3c0g07Kju72It1UdXMJKEM2PnrW8BWnu9bhM1r420O2aMdJGl7ER+gpVIvBavmEZpGFJmrH0AMy8tgVEovV2RQVUWauBW/B8YC2hob4pP75+EkqVah0Hp08ys9FotiJ24zpem+hvWSvPaTERujn7k7eDqzax1C88z8F4PW2dgdmYDG5VxXKtIIX44RC4ailMS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eUFAbkrYOWSbrgRC00pS0DMm+ZmNVUsfLI4SE/64K6U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yLADm3Y5XeY9PhA5i11JrxpvzMGI473VZGg7Xww8TBoYJYiQA2cmaabikqAKwktRvq9kIBOuyLzw2z4R6G+V1qPbXZf+HAr7DuknrV0Io3w5qRH0P5T3MkihrmYFUydWKFhz+a/YwEc7RuBRB5GowKPBBfK0jbYt1LlNvB8on2YDbYwipIkBYOHf3/7FtIkYXXldkp4v53vXg2+44AnkDrLz4v0nRHbHl1b4oINHnwGGOq/xtYnj+KfYmLkOhyhrVSCk1ZFd0qN7Qpk8ini/VzWjuvTZpw2v/1BCmsGRMascABruqzBsx8pEaRv3N09bjmOiBW7eou1xEStgfHZEIID2pNBF1FAWTe3OV7a/ckypUO4znx2avvy01VBVJaofSCB8sa9GHZq5bt0nWxjm+LK6nMk/ndbr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eWfPk5JnpKkgBLumUs0xg2hOiTadS8/kewQ9bzHAaWM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jhYYopf1bcY5UnhxZxgM3xh+BOeZ5RBUprmTHPwEstZ1OPp0a/mCeMgWi+813BwaTuIkS4R4tdaDifstjSw5kLv6BE4iH6NQOOkqHiZpejy5ZK8USEpyN+669VMjVERqutzYHvTp87AiOgYxrZ3wnwcZL2bi+pt/iWWS/GIMU4thf+/t/ZdRE8sdWrihBjGlywUEzeszggmH8ryzFVWgeSBRMWg+kA0rUXkAwe11DAyaUNsVNlN2JaiS7c+dXi7+40paG+yHyfDHJPmAN5V7VPuql03yimd7tKm5+hZzyyd7JGTAY+BIQN+JqLxwOp3gRkeSvXmSpvYaexDaOQhLSmb4jqhJbClN/lXIErRL6schx9cvBx/Mjt5Y9//+hdidRZCaK3lrutymfC8/T3N0Zzak28hWFWZ/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eXBMi2JBBArqcV79vawwobp60PjmAsSi32JtE5zzMoY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SrRohXrC4oa6ycstqhhp4uobAEz4EgnmQSJ+GxBeKG4+IP9NvE9exWbTZIBEnvxjQVHblXd8/YaJqvhsfCeOsXHQeAbJynO/K+0JgKAVd7cbhoek8raryHGOMWhDF9rU5SkVTBGY6+oUH0T5PuMm1cjEnNZUtbC4PB8IcZzMcj3yDwULbnvkBmRKjfQHWRp3WL921z8kjyqNAtPCGa55dz/FoADS5luGgUDpKkjJBow7jvpRMyd488eNrajPunp0B+oiH5in72cbZGtQii2Z96RQXKhLn+3QzJraT01yeBQqjyY8fhcwxeEsmD7N1DubIg/i1cgrHCazpWDKapeS5oUhJe7RgxdFafpkZ+bgaP16ItL5shXABt0gmyM74PNJYarprrCH5+MNyZ3ZkuSmiJffQT7/rKJG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eZz2WDquGliAVmMbYsB1A//WI2mVwQLBopFnGbDAtig", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QHTX2ftE6DDhfv6SJq9NfvKZ/AQtNefV0mht6Kx+nmM1HO0kNtnF5FcxYxqhqWMLJPTXTH18ER80VBSyKqjm1szNTslvk6BNQ/q6eJv9x5itEni69uyZtbcZZD1N6D/nIb6MKUQOdy9V9b5F91s5BARyAzjpB866z/oIhskvrGUZPejSV411ef5fcD84g2X6HsuTUN2lL+q4nhOlu7Ui2FEUkmZrou8pquz9yT4rTU4nGQI9MSreUDYmhiCZJHZjyjzf8uzZoOsIFoWOTlaREEnMGwCUFTGxnUbrPH6dDq+tj8BO7VxN1WTMri4NjMieNJ/Yku64nJtNmZwbCCcA6EbXT2GhqCIczfQRRkg98e9iv5tKP1zz2vm4tbmY1ELQRQT6L5jWQIC3TXche+SoW2IxCWEpWaaK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eb2RgLTwPROepopWE2SVm7+DQ3Vs9AOXo9s+KJw5stE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "51P5b37aeu85VKCahBSFjI6sYP1EbQDRFlKs/V43Aa9fCgnuv0/R8+izGisnZiAy6j6wzgEObHOBzbLrzazW0z+2r8UiHpHbk1+WKQuajuOr552S3cL3l0jABQqOxqx0vyvvNfp8Qq7YLUvhceYsF3lZF6l6QPggPBBEky7disRbKJX4sUDzktvSxoxbPJKKQChua9Hh44WwocYErinf4ug4eoy1ckWs6ziSqzlEMmqdBk8uQ8CpIQZPGBDiwV/+9wEfRDeuZ3r5IZV++leHghpY5PZZ6FHiqHh3re/exGhgivpSavtSWLNwHs6b5JErT3c+IFD201bypyT7eXLNjWdnxbr/Woa6TlrODyS9vKdRN25Ot5wxxEsjU2QlVQ/JPbCzKxckIGBIjAx2RjdFiQ3dg9B6+uWi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ebx5Cjm0E7t0N5DjnKi4jw0KrihEFukip8xql9ZDMgE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S9E2guoTTgLGLzN9UzrTVuxtcFtlWHEh3sD12dUpDeoEZZWUeLpxzmV5jw5SWwn2QWjrG7nEjY2v4+N0AZeTgjQFUasWuw7pIUYGxzzLnwYjadB2gxSPpff9ah4/XAan5bTlPDJh+qvqHCAGOcMKwmUZTgjDT8MkDtYkab4pFBQS8SHg7uo8H47Tp9hC0Fs3DZPBrH0AilCSsfdoeZjfbv8ePMdy2QbqanpQx5cA9OQr2Y+i+MSUMKE+s3eHa2F+IgYyS8Q/R3FqOmgNN7ewsrsztB2EozA4r1bZ0jsTa5eZuhWyYQGt5IDvZVm0kYcvsYVm7gsLfUXNq3Ctt/XR3G65+SO++Gq8ekh7urmKes4r9oC77xGy2i0EF/OkPl9SkkfiKgsPEy6ADzmEDIe6zwE1taYiNTNd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ec28YfXyN+XrBHVA30U90DfzSAZcmpnz0sOpCwZpRnM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "laz5dYB+rp/55K1q1coq8O50OwHBhfeL5ykZixXBPlG4392Vc2FzspmSsqgeWOiRJ/Gxpqx05THZfZE88ZeMwHLTD1wyvpNBWyKrQadjp3JkI6hyGyXQ84J1uUptNosaqDF2vAht+FIjDs4PFDJvof/9KdDQLFHKcxjup/GW9jnl/R+tEZvWIDrdXdBr9t+JPMSOALreckkxJRrZujTKMSvh6Qrz+WvXC+tUYgqb38V+DW02kEqhrwCiuq9mXDZ2qlF5OoVLonC4vkHWLDQf4E61Qh8wcIe20oV+S/GmB+iW3VCQxAzMdSfOSoNtIXqbu+nbjPxuz0clKsq+dzaxon7Rw63ylX0PlUjpVl6ogrz5U0nXXnxTEoRudRSzoYVrxy7jiJLwSTK8w7IFZtity/udHHOjIA7x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ecG3ECimIqcPMEMYYcgA/9wsHeG1GrmAV8biLD66mlo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hfA4HuX/blxT7Xv8ytPgVh7TviaUKnMM//gyDgiv2wtKLdm68H2k+RzzuVjdKxYqLDX2FkMyi6BASAabpyzgi5aMmnO9ObzH5pIicHwJgfwQ4MY7/4qnfzX5ozMKzgG8wMY9hzhJdluIQa3EUVT6zI6LpSkW/imwmFrmM5H+LdITPQb09wv/OIauOcOK4qrl8gc0zcnBv3padf+WHb363GtSHixpaDYatjDvv9wvFDnWseGcZBdaH/IWTWl/7bpPWpWZHG7lBwLMSX3E/+N7S3Ne6kFys2al4URs9wXFa+OYLI0EwHspTRPw9sJoWiexonCmqmxtTxfRyWcT2NRpv7/enXccW+md9wR+YWPBD5i9WRmbdo2rKucUN+DfibBPYHjVA0DXMLoXThpPgANV/kxYYs/4FEnA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ecJRUx/cJcg9Mw6XwJZLB9a2SEkWfjPvQSEXcUJByQA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6aZya7AaqrcXhld9HO/4HqglldhzEkDMZwHVJAYDMZNLPXhG/hYckcIztfoJKqXKdxVnpa3qQAAsYm3uiYeuaPb5Trx0ea/TKx+3OlazTtHNPqBnX8FvLqQSHEXqnYFHLZYeXnVDVj27Vj9uiy3xjppgC9CcnxStkvOydoGTH6FjSFDiJUIkUE1vwAyyasWyGsa6z8Wc1XSXWtvlYGFAZPLglMX3LsZ98uCtK2EE4oKQrvmINSiE4sVPdL4Gd57f5X7NvW2Jc4rx3eocufWa4Felf4cMlrp2MbPTvJblxR8Ln93n+rAUGo5/ZOLgqnJODME8sEw8SLhihvmJogq4JeffVsWkSHLAwLcAOSe9zdF4gggWDF/PjL/fphbWPtvmOvVWEJHp53FY7ZdguFJr7EBb2jkvxjot", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ecYJa+OVv3teLmL8vXXOdZQqdYl5y6H7GixrBD9kJhE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "I2GLf4J7+wAiDc1rp6oiy0AzYIqx2wRAHj3x3olyJijbKgVGMIR5Bpyx2HuCrhk7zo1XPTLbAsHJeHKwAR7NM1ycO8hBjAJkyuKYkWz3bmWDxPTijQxXuO+XMssdxQXa5QxqfZjeyQKlK6kC7uBGvuLDzhbWCbdoX0dBTVTc/FZOYMhLAgVGttIhJG8+V6T7lwFT6vc7I5mSlg241DE3xRwosmSi9Wjx3AZEFs6zQDH4+WJcPko87fpG19pN8YDjxfpY2i7Gp++m93FFhALNGPxRPfWKd1NmidZ18jLar736KhV+abL4tL+J45HNeUODlVarbM0xh24n/ncm9X+t4SZ8NqudQzpL8hMOVYg/SJhM1E2XLWudMN73BzgzEjX5STEGX+fems6ow7kNj6y66XakjG0nvWvo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ednqn4bbcfnb26uel2Uk8iTPE7u9uv/FKK+A4vGGEl8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rdgcawGvgHWpzjZlQOdmy/WFTIP/WXI5ZJLoQnfUHg8HnE6veDVVmyTV8EthAmem/ysKIXZ+J/xw0SU76oHcmyWxJ9Ibbfw+6KKikq+E3MbladkwTNsCw2AA1OnC4abz0COMPWaLhNzQTlfi6186ioc/59RLLXWiVNo+mJfCl6JuQgFwh1KG+SXlhWh08ZGfxDxZYTPBCw0RTMfVecMbWFX/z/qotdmbFLnoEkEEReamXsEoj5xLksp4gfgb9PlwWh5kSIUU8M8mzJVewctqwr+TBrcuwhtRUBRnhSeWYdClVMKh7xvwVoA2CvIB5+Xh9tJqm6juIY44Q7p9ISxYJkZFMzooVnY4Y4/dHx/LaSSFSLq3RdneV9mDT7VeMrprz3y0rOj8za1S6nkviKPIRPxqsS8QM00n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ehIniCEkJ13BzhmUiW0SVAyCSSJ3WE/wTtFs1nV2pKo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hsdi6Ws0WT+I7nJWcDYu0LlsXfEGruM+KtdIuI92Z8zdUutTTIDGQufCY5sBEucYAGFmvhTtlvGkfajGPwjFgDDLjIA635wKXDqLQuxRa6YGv+0xg3KReHMxfIsj2jhPxs2YtlbkgLNJWeUizL8vbaXKgQ2dj/XzzrTCNII3rS2MU3ckdfbQeghZrxO5xCU8M/qIx4sczOGLivnrsSbZ5nu0CKzZur+jqN5NIG9hQcaH1UHvWbWZkSU6dUI7vx646JJWPNeJqg9ytvZ511w4tBkZTTAhSTP4Kp6ct0GZllaPcYFZzsOPo9svqB5uipG047WS4PDWZClbz16YLXa8vFdwV/wxE4YhOh3LXZeFnepqdvPu4QhsENiVIH/cvHXjr8i/eCxhlRHQZ6RvLMV5VtYA1oLaFRT7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ejHkNjR6NhoAaD5736DLf62+B/bYczEZLEmAgGgngEA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "McMKBsfPj/1C3iPHp43WuksyYl3jiReJkCNQSCEaqtwdRlN/xrMayUK6T94f0Mr0bIM5zUTl3C+ZJSQsqn33KZ2gv9QQ6OrPb24i0A9XLGKzDhibLgf3DHDjIpb/CKWM/y5Cf03mv4ObCGIGWjdxqFwI7blgqf2dFJDaT9XVRtG/6JCa+zQ7BosO2GOSYbPPbhne0r+YSEuzihyWgfdu4u9ZYENFzDK/3FqXodvxKctQ75T93s0NNe6yZd9Nx47JeWdyGuJF5LhhMGqnfmgHuQC9/MUN1Seije0sJ26UifbkJH0G7ONeRoyGyWW600Spq0nxXSl7Q1Cd4x4a5a6sDN07gYbMkDD1YwmCBojG4HXfh0Nt2b+RaI5E0ulp+2z3mGfqZYFMkN182wP85nnV6HOZIvaJhDD0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ejMOUdMeqXGL7A6iJxArpHILF639iQWlaDE4x+NWQHA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1HQbHG/OvB09iq7wwwnRgfEfd0HapNhsfxj+b0i5wbc72ui0EP3pIHQ0ba9r2KRuzARUCbsUiLs2sfVUQz1ltjRdVuEuGyAHaZitm+HXv964nIUryBIYpnkTxPEjvUSiOY+lJ6E7+rU8LqsFlekfwhfHEy+DGEapNehlHXOar0KRxVqFteCDRqrjficEGz5nP9ecV0+yVeq0Y1hzefrAE4nimgeHx1MTej6Agd+mhKc/+kztWVbWFhE7trPFQh/QbACnEiP6X68ubzCzxsz+Q4VsPf4s8b8v6j1aF88Xme+YDQlbJIcvkxLTj5u0cDNh2VECx/FJNtF3YTvG5HQRUTWd/p8r6LdATdkwjR/0cFiqdbj5QQrGNbjoJILzgGvyyrFJ3rTg+DOuksJVdK30tSlQDwesSxaX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ejuNtWTDw3CnkV8XjArjGsNooExijGmY92HVcb+i5Gk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GpC5JL4IOu840O2tAgDweD9LaBuZznoRuEHERH54RoaNWEhZCeVSqgX8TwMra8ASoeQVDLrQVS5K0Y5MTqnfIm6/+3v7O+eV3f7vyg8muZ7986cqWymeJTab4ypszlapeRCPKerwpAkIDdR7tgGwDh0B09AYi3fDiqknPtnqCeu1+roMDOxCSv/quTORLQ+sIRXnEdrB6wrvmL3C7G/h/sw8zw2SxinJ0umZhxW2tvle51JXcYjaJ4R/MeIxoHzdfuEL1MEWlSJ8XPAZIY2ddSlBA7nAaPagGTJe6syG30geDVZCqlwn4RAHNEKswQQ9BbEsD9bB2GHgC4WGIDJGKfNo7rqsI6iR3zPbFoeEPJl8gniw2onkAfcvs23ceQlQB4eUZvAoDss25hQjekQ7URSlNB8+uO01", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "elomehzpkSg2hL5rg01Z87+1lX6CJwjt30xjEJh4kNQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fepIP4iMQgkuupvQz1/35yhOWvX7fZiC2rUCOYyf4lt1AkMVg+sBiFfy5JlWiZ/S8fyj+DGR4qGQy6FE245OAbVCQpCSDEa9aicW3T+em9yzfxwAjUwlaEb8Yd/Nf44689Qn01LyNDaKwyPPCiFR4xE7qHPAevN0nyskaLiBk6Uak5bTm2EQW+rYF49orN5KuPFsjv07vESWdiYvRpKXIqJpoljnqaVAXXH8OY6hk5nozNL20XqSDeesjVrOBMwfdBhHYt6/X078sRtKejiAl62P24bCrEjKx/oWPlIeVFp048ruH5LUH/z6AYOf4Sj+fXNR4sRdmJd2fKMrTQnMETO5P6c3Kxi+kT2djt4jLzU5pRGSsPi6hoc7KLxnUoCuA86PMoNF3wJC05bWNbofXbIlx7/qKqyT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "elx69FkrM7dX5yp41hSl87ycX0/J5EmYLShw2a04PDI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rXpTr7U+8iN97emcFehWTCA57ytkiOGViw6Pu8qWlsmK1WNTuPL6bR0sRv6XLglOv+BO7vyQD3RqLr1yYq1Tswjvngl20LhXK3S6sDY00mTdqWAiJCHtPhscWXIz+ZindbLJNULxBBdkrHzWst6xuQiXdtRNW0Iu4es7EYaNJ8Pb13a3piEApyExPi/qps5bzGUAY+tfvFDW4RtRteKZNde1bnqCOSEdSticX6ItPvsggN9V2qz4ribKAR7yvX9390cJREBwuAh9vPKoIh5yIejT4u/FfXn3R6+NI9E5omYMi3BlSD3YtZqpd1c4bsEFNIm3xV0IcS/umOa/8dPK6nWQXRSNoS/9LtBAVKL5AZ+Xs+sR8EzFFXXyIQ/ukjgu7FuO0W2x5WRrdRR+uN9zkHfvgM32dBw4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "enRfgccSsmZ3jkEdllEGPb0X+LIdX6+LQ4kMtwnFW7o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FAnW7jOOMsBqdIjtW8H3IRuC+qbmCRg72pSJf3EUaEjcs/QSMvnaVgpT+vFAXgcShxSTZ6Ruvhi9eqnC+nb6DMDXOztEo7gOAQuG6q9XNI4YTSWd5SAElTazl/E6R/taDFFg9h3COxt596U9C2d2KuLBUxJ1fVuUGPzygpKvb+I/8IxR8I+aZDoQjGlF4wU/2DGwRw1+1aFVWfas9xalFBVEqTlFcw3DkNXS1dsKBDGa4NLVUz8IuXtpW8anjGmh1KW8em5hxJ2YGIhoJFY7nj+I/ZC/Vs8DZXXUfzt6JMbmm1Jumoxi8Kxu8H/+vp3OJhzz20UnHInis3cjvbvvPRlvEOadG7iaM4Q8IimePfeDY5ayjjYKTgQnXhAHjHN2MIbinCVI+WE7F48toQhXB+Te0MxMMtvm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eoSCsw00lf3sEYvYyQwJFykhsDv/fZBUCqlGaSsawt4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XzaRLZ2JiQ+QBKsmuMl9tao1TjJY/v5NWApaoZ72bYdfNz9b4q951s4AsCMxz+pXOh6VYN98TK80tKqlnHg5p6UL3wp2XA9voPMYQYNyE6YAlfnh0DWUMCkv7d3nzTCInb2S9zD04/6tCgnoJC+oodFn+QCFh1IQzGRrdBJI0TPVj9JVCprYaYfBJUxfWHvLsVZEY4mMieVaaVCvcvzEeJpsQGGxJRPyyBLJ4OTzHF2L4ezFU//85oYB9dnvtLFKbx3fGLS+qpAm10HrxmkwICDC6X9k9YzMZHRzIdLoelNdEn1aqRXwjVfaIR17DcghMLZNTHQWn+VTVn6mIOk8eXv4O7r4D535ByNvIIMXXMzBAm8VQKNM3EeRrp+YKLvBuE677/aeJhqkbbjdkq5BlZWgqYM1f3YX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eooIF7Dg6Vx/uYhUmCtqh6FrHwyvfjR2mGO7wZ8bsig", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CYWOCSCg3YMCq406d9mu/yJMbR9LO357jWUbc7oYqlcXdsn32Uf5rZcYIRTxDMvMV9Yj4AN2x2PdulpfHfkPnzbnCMJllr9oyxhAdXFDcjiO4I3YVtyrQPt7Bg7Va86UyStIEJ7RV1Jouy6KLX+7SAQjov0WckFM2HO0JmNN6HG+aHLWwolr9SI4WjQhxwHVdYmwteZo70fidqQFCv+4883BDnH1QwvrQs8mxQXFaWL/jaC6iYrNQbGuPXf/bss/sgMZKE4CLFtYd1H1CgxcqSa4xilsGXC8LwgjxIpiXFzSHxFxri5adnuARt3cXW91L5BmB1uWsJATHy72Au2ZiGE7h/re3iEspMtakOJrBxeh/CrM8SMcST7X36BCHzFFtL19YZ8lkEjChuYQ4PGEZKU1RmFQnj07", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eorUmMuX9lSc1mnj+Yge2iZyx2hSfZur75Rq28LVw08", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LWCi0AgGNHs+R8eDGmXhG+3uOh3IvDzomhonD0gzp7rcfcSUg7X523raBSAYGEtchUvMgFmwpo0mbA2N79zOlkZ6e9uJVgkaaTKx9Wxu7PMMBoym6VNgZIHLlxO6GWW4uztxI25cWLGRa+5NRkankFut20XW8lkWkA5ApZyXpLYaDNB7uAZ3hccIyyC+qudasr/bWOwqwqERs9u7u2d7H33QcFVrCDyGmYMUtpHXa94CHSelYP8p1MuYrZkHEfsBiYf06vw3oZyqjY7z3k/lC6EERQiQSwQUBv5Oxy7DmDQtf7hPBNdJlCVwVL2GQXPURCMTYBpkseEsTQZ35pxwci9Ikd8fPK05hhIKYVQY1dusBjcwUt6/69PIG1bk/O12qQgRfN0CSx1h0BFSJFG3GBYz0r9Dt/xB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "esFJoUzqD9Ze2TFrBtfwmjBfU6ykE72tSb2ooM9qNMg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GXVkcv3D/FGD2P2MT3OiazL0k1rcAGeCLmtM7B371W5iTMW59Oa/ygSthTmGi9wBjJbpbT8sTgbqi/uQntFshZ7nWnt/zEqrsGlNlIbqH/QN/Z2L+YMPGzkYHVgA4rwVGBifrKvfIx7XyNYqfIGJodKzzJfHlDH3XICCMVCxElSQWqqq2Pz4DBC2qITc8j60lPJ+EVCyeusJyliNaPnMaJB2PONhLwP8yK4SYaX3BFiP+abz1FWhHlK8LpA7rhV+e8ErGNytRu4D3qtSF64ChgfOMDxPzYV2VpR3Wg6jPwKtNTH0vir3eEWR/Fi9in+f5tnPBsN+r2UOs0tVVJMqJepgDN+7NCGCr0SPGTqSIY1bb3aXuBgQQyhHc8Uz+leaDBnaUYyFpQc+R//nHf378iqZcxQpAkiN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "etWol3j2fdLjSnVseTa90TuHdw2fhC9qzXFg5Wjkt1Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UnmTcpiIDH39IjRALK5JzxxywLruOZe+RqI80cC0hNq9hEmd2hFzDfGXjiwWMWHMFoqsRASpzLSggV0O2KESA5+MVtv2RDSbDIoTdD7WFx+WluSIVxKFVnta/fUvZL14osko0TILbQQnziCOShArH3tyWikKSewD0S2yNaS+QPNeNW1qYFA1trMR8l3eLkwsPI3I1f5WSK2Dnwj266O7iMfO4PdSqtD1A1ITvby9Y10+tBv+C/o0jgkS9rjBY2o4hY1zZKt68iszj2GDQ4ll6/4f4LwYWaOxwCLOubxbhBZ0LCWwF48C91Tkz48xoLYH8kVFyhhXU+ryIz1X815iHy90mLkXxm5DdcLvEGS3A/2FQM3JvpyXDIxlAluInBaJoYTyGpF+KWo2GTg5uz8qX7O4Uk/RFtVH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "etuHb69wOm9LxDAoCz+0E6ZLz4kBaOeb7b1+CAG3qsA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zNom3p+y0xqvNNPGO2J7gbXEJiwLpnWWDyxQGmfrdOe9eRMaOBwyQtDEVFwN9GphF8Bi2IEVgyZVDBz1l5F3A/sgkKoRF4JIAnd31Gg/+TcjVCIovKGDN6IU+SaHh4S9Xx3INNz/G24nIOIPuy9BpV3l3oTQMJUUrhoqK4zuyjZ+RGjgVfM0pbqyjJL2HoDuPyCa+YRS33D0quyiPrcFSGBTtiq1CZv7aXjhRV5b6iCufj5CpHKBk2N2JpUP+9+CKOZyMn4ovBe2FL6WexSgarvk3Om5aRH5uE0YhPOqdgsRCwmZYbjfiupyZpuwwXmpeCvR5GRDJFYQWg1QHZVtt3FEKAlWR8tT2YARhRPDmtKsnB0NIRd2o3taZ5HZG19AxAT062g930Dym18addwJWeASIWeOWdz9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ex1Vbcv0ta59bo05n/8aQ3qEIZ056MbYmZ6OCUafFhw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "h46RRkqokjethCrdpcSqkO9kmAn5Lg3ZfhMyb9585rV9JcRRnxRUnXoqmRATGaryG1lrSYjx2apYkQZKvDqkowlykhZF1XtSte0GNd2vURcDm8pCdq4HsnLgTryZcwqaik/v80Y6Xy66zXZCPkpDnQoBSbttpOFqUrdYKMLXRf6fNxB+nfA5V98JfVNA6MCdcMlTRCytahH19CJwfm78u/lKShWRFTnWDWcN1Ysz1xvwf5EVI5wjGEJezis+J9KGG8xYzEFnGoEZqNw8yS2B8eN4I55B+Q1S3i9/NCualkX6UluqeqYmSTLM83cDrjPLlT9fFDIpMny3GcwlfNwkt1Br2XHkUiB3m/LaOEdzPainGyFYPm64vNBPmkG0VOI/Eg266Qo258ZinenHmW8Ca9B7yyI4LUwc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "exDkgDlI5RLI7ub8kbIIz3E4okNdHK8C6EVFFcrRRFw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hESB+Vu2NVnzFLzEqGDjeIHvEudQZLbdV+XSwkhobKALzDXVGCDe+jJv1Z+edQti0lywElBuno2JIHzFIg/hR6MDhUtuNKKmwC72WR0U/BFfrU6EPztXuJR97n6gynA8HtfEY6AZ3u7Q4QTuS3xIfTpQ+xzcwPDEsSGWeo0N4uohGk62YWstBVkEq5xC1m1NO35tE+bQMp9rA1jfq1kIxyLRitOU0GEPR5xckZ48DbEEYSaQsWLNe2+u8UdX5Bh/QLid2asBMd7ure9T483iNO2l4pbd3R5Evi3GeLKks8ChRg8X3O5vbppCl1K2C7CQ4GdM8hb7zvM3QRXxIKyvHJ7doaq3gcmzDRvpXBGgjAa5pwKD6MYBWJcYq+RSf7QlzxfDikRpJZLB4Eg4NlVQ2raX6azBCryx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "exER+FrLGuu5Q9aQD/sKk95j2o1bmS5V057Jn7SGWj8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2P1PWVoqjH7dC1QZAS9GDMlf26SlOLrFo5w/bs7MDPJl1cw6eu8txMg2zs6EOD45pwkxP09vi3fjdEo6m9iOpsYwqBPvziW/DpNhXtzs/Y2J20jhck/Yleiu4nt/QVqS3E7RomZM1K1YLb1lNHMGPkl5Zm4Y9QsCUP5BRm5VsAc5mGNCZ28FIJnLF/6CptHhUGsm20EVgDZ9kCzjErFISpA5HtNQMqUtDkaeEOiClaWm9nszviDjAn3LGF/o9xjKLcQVC06Hj/F3Y8bsSTx6R51v4IjAgYceg2BMKnHOOFlwZsNsHAIdraybd9LpJEsx3d2e0wEvWqjI9zmaFzj4MB0BC+yZfMiSkIRsbEB5BhKUSNtRGaKZo3oux7YzPLseN0pMAKj3DrweKhzuIuGzpq7vnXVU/l+5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "exLxnzIg2PCzWRWF1MFZ3NlSU8WKTApGqdsyMFf9OH0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0NWlOKmDjWWhs3HIfXLhj7bHzYsZHW7qGyjsYN376d0ORSNx7/tKHkujWQgNiYDMu4UvDwjzXv05BUkJvtDsyt5T0Ix/Nc/P3H1q0Iq2gnTySOhvdFiEh+hRC/wkavi0uq1wAZLKa9kHFySy9iIsea+XUQFcl1QDuqjuffuzr7CmZMgPxXJ0zvsLqesSAUy+6G1ZAj74mu1dWpkTk4oZN6pc4LIfeipDNUeocRlEqWxL5bA51iKNM80sReIB5kQoq2VeIPRDUcPP7tlq0r/Iwpf0Gh8Tys+nPSpbnigxA1psl8Tcin2BFw2xVzPCrC2fsTGcpzK5RVcmOOWddZFUp+9Nkd6GbC8jXUimshD24HgIhE4etNTMb6J5zFEYxx2EBBi2r7AK6VUFkgGF/WdmQtaet7kiElIq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "exPxte9TFdK3QHExxzpG+WUBCWIf2rWCas+1ktigovM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "b98fBGgdR2wuIpB81Px2e8nG3IF3ScfhxRpsngwzYm2V1AameUYl5CIhkp86G6AoOBziS6jVBjk6rXfjC9K5SQAvHXku8/SAHplFoiUILa+x+pxsE76A7sH/108jQysSzWZwfEUqWl6uVojwN1bvYFdw0jLE1oEnc6TnAyXa/7ULTHwJbets16j5VmjEFQ95pd7WoO2KAGN1oJMn7EAR39nav5uYfCRN5XpCeUjVv2ZnjcRkGcRVjLwBIIulXXHAxR5/L63JCGY8UT8PaqN2zltaZB2mdHsmeS1ziU41E7ZKukE97lYczxO/iRwsLW72u/7QVlI7PEF72crRICIn8cSax2bZTzBNqWj4YIxLvxNSrUB01EsJ7N4qj0AXofvJG4SkLygnpC7+LZjk65JhWITswq7hAa8e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "exSlRZS7iJeSZXe4Ahr8bx4EiF25AfF5X7nwwpcXO0Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+wUYmDFVb/2o8Py/wq5fMZ5FBMqXpZw5DZSnDsPGfOkvg5dJbtkL1kcd7s105cLZTODnnlHYErCMxXqoj7y2vjOkK3SAEwBgl7e90l1zdeAnHfH/6CX5TrnSbD43hmHUxarXz+TTiAPyhAyxt/U11MQyLJGZDk6sDNDClpNLM9eblKZyGJYR//ygHT/VIVj5TO/Zhs8Ax3jQROCf8yoD7BOHQjLnPBgioXxGTyozK38sLPGoTKfuTXMBZZMySfYNw+AI1MtGnwIo8RyhiYFE2T3cSpVHT84bgoxvuZUGSCMwKW+Yr89wKXJBhi67Sv2QEuMPm0xweugZq/ymaMiGp6GUkNUG4I/4/qt9PCD3CppGApD1iJYsLHQrleD+NJwsCvUcDwXp1/hdm7E129CYkJNPutQOcSTS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ey3L3ImQzOFscYb6JrOGQtZ+QL2PXEObaxUzKHfOy48", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L9/pfW8eB7I46tQGWJJK0JHDXYxzaT9mx2BVlF6lA1NyrrGw6mR3pEC/CXzMIwCL57oKppZrJUCd3Ioh3IEnkcZzxYV4h7qbOsFIf53a3Z8GsCMosovX0Wf/9GCqleVauYul36ATlfNuAacFzTzpn7md2AcgCf2cX4NtaG5k9pmxsZFMSzZIvavf13RL4mMJkWUYwBJRDTU8I3NR3t6knWa4CP7r12223lmk7CGJHOpkyE6BCyu39znl6FdDoPDKyYwrDaoOKbldMPx/4gkSd7M5ePQdN5ODpE6j9MkUmiNT/lgoJEIGKdWpfa672osgQ1GpSuS/xCAqKOYWJ0GkqDLhGqSIOFBIqSfM32CEijhFQrFt8K5CcuXEKa/fMRjKYt89N4YxI/T9Gc+2LjY98w+VWRT90Rwo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ey9H2ufHStgPr8S7XkkWbnuLUK4P6vlu4ODwiBQFsqI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nCG3fhehweGUIAvn88Eg3QSYpelMKvt0cbFSEqD5Xk8BKumivcm83zGNsEed1f+Pestz46cP8ZyZtf4w0HahBA41GXHBkLRxyXgIZ9m+qCLuOD1UqNW2AoeaMcZVh59NyQDWeLWOJAPj+SAkRN64fPBJhGUaOvljjjAYyfnemUP+M0Hgk+FN1ntQbzoiejyg6+GaBxXEY7dvMR9fNN6VEvbr7pwdHDv9XG4PU6N/lXKKNtY5AwxqYOiZ6ej4pWGRnjMzuW9ZSu+N0nBNppSwwSAiADjpxspOITmhA11C/ar2hEHZpMfyjNEk+3kY3KhfdXeUp/KbmCV1bABXc6GYNfpHThuoWNr8tZZ7yGDdvGlxj6KOtwQXJAo7XrM0Xcr+VVjByssC0QtCpTRKpsrm1b/ba21bG2mX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eydY+loopQ2ULvDo4/E6Q+p8UxQm3QGJVqLrSTUKmHE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9tEnQUP5y7ne7mfHlFxAfurhTkS5rB4rlCYJ6vOi9JQlLx89bexzG09bctv8wu1sKv4VeapGWXfCTNV56hrVKyxfEhBbH2Xio8oWyHIv0nCC0S5NIF2NqBJf6tnDaIK0djM4X6OP1+IvqU+Ak5sGskXyNl2mDVgOE/sMVI+OEhcLQfjvhcrUaTOAsq8r+gFE7vyv2+/UAEGvikYGd0xGNNB4e8BeUy6gMp8K0WVh0oD5HEAV3oiVzutxjdcESOds8TMIxz621BRfcepL5MkCObHdW1hAEyxpeYcZEwx2bvYtazqBaSpZbK65wDDj285VJwKnB1Noq2FwWReI4ZdagSeDVjS4karrZHVOufyirjSvcsWtMdMwZC7fxkqqJ9ghUtnXcmBY2y9qF9Y4cgOSGQ78E16j1YgJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eyhS6IajgvczAcGrn96mrfkRQE95zalbbLGwJZ6QS3Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f1hTzhi8HUggFxx5FjaKCz+9NyZYw9MxeBzRxskIRAKMOtWAvB/SMJMEdeR+bfB4c/l5KhUPtwTCTS7lb/mDJOSuSntHH7VVL1GghR3YdT+s4FUmavFrqKdrAUXjOrY7BoTKEmHwRPT+TDr43mMMbk7NMaAh2WCvoH3Shs6RAwBGOjTYCgv/96//GL541iphpu2DJsnDaiq0oD47Fk7/p8xm55D8Ybh6OKO1mLFJH3QRP6ef5CtI7BcbMVcuNsn42bylvGc5G0rw4nIRefdKcs75SFDMlyToQyAIg+i8HB6JUYSmpt2Nc2mNh9Y3mdykXqgWcApSPdR50XX+VWcX5XV479UOta+SFsGcRChW7QiQ3lNEy9uh2YOP+n7RzOMSbbJTR+orCXw92dUIXxi0r8H0rT+3lZ7F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "eyxo5cYtsBXqzh1FgfGsSp00J/obtOGkqZNkmYX5lE8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LbAaGUzLEp1uFDRkONXeS8+0iwiohhi2iM/qfpcj70zDskDjzcbt/VXZ8DWJRu55/oz9eaE7qfD4CH6caN7b/7W/9c3q3umaC3/JIVb06QcQamuNEQE8NGKBoyYB/cmi4tB/mvWIT0jY1y0kJ4NGTXwCiXgZAvzxA4sJ2M8yOrlEhexPIWecCi0Ec9feaylosM/KsjTzBBA6mVYKIPEw7tA4sB74JmJkJF+KudHUlFxtqtr9kMhlLMPW448LLxTyjlbRIjYzTacTfpbyu+uPBWtGgkfCeQ1Krj4NPDlGmjSF3kMXJM+xAC8IQBEmpm0BWBk3zfuEvjJI2VuL1uHORMbtZa2zMhHWk2WkH9XG+3MvjUGYW2j8197M6zUdWG0+RdOW2d7bwief5FXFN6TlfiPyLF42BSyh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ezsl9B2fALtJumfhuw7pdNDC4dz4v4k6KMbN0dx+vvA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Bq3Yq4QNmVBG7tI63GX0zhc40L+5lJkfifGhxmUyXoFhTAmK18/QXBGbwrbLZGZd15kPdVzG6wsh4q5zcmK8UTBoBnaOpzszcCVO//dzXo2SWS4Y/AF+/79Z3QBJA+odzfYb7bABA45Ma6R+8oT7nkDcz+Qx8PjO0or6GtwuWjrQGF73WF+xVURUtLFiiFitC6PgNTR4QxPnIdw48aVlIryEAgMnhNxFHFY+jnKkIJwEhZVFXDKPz7Kk0ZCI+Q5IU3HNMWy/H4sJhrKUR+r5STG0aiCZsS7REFGrwOP+PUMHITYs4ZhFJwaZJNKqLXhzxKLQdh6R5inAw5AnKUise0f3a716ulRzD9GGSHZiAj2ncvfBeIX/xfd6OB3/aU3tWIMpYpdl9J31t49GCt4DGpzsaEfwFqF1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "f+Rr5mYvQpcL1GzlngebL0SMcvcoHMuVogL41Ky2BTk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JhvfcqgE/Kivcd8UJLlq4RvWqBkjIuSuBCifkfMi8Crpty9jYGzU3UpC+JRJ4suPyWO1IteLBryWKVem44vbBIva0V6p+kysnbJD2qQ7YPTPLdoipgtmsK2kihrxeWJvs6vdKRsOzHsKxkvZ2Sa8p9hohJip8EJj2fCXILN6rtuZoZAkM96psK2eXh0rJ4XzfLmAxAyVL7I4XnzrGyIepXkC5DqjBaWRbfdYQXVgdQ3gF+GvKpewmjVDbLExMbnvrdpIidHYGRJIoRYvfLcVLC37VJ1MVq7pnrbQha5yByNeL2Bylxr1N8zw6J0OSF1A9gp4CYXxJ6C01462bVQxQ+6Q38eH8e8TuTy5EzxVwGC1xX8MPvzcuW7bpXPxCm4yQ2kctrzkTZIVMPeylgIppUwNPFOUMiyf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "f/xf3qko+d89EbDpR2F57mvLUs8JUDk2uDHyoG5bTEo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ADxS7Irt3h/YTCOLtTlQXB2lPDDrHNGmS2+LO/DMI+M29Ckx2SZizSuHP9D7QKrWSYpNqjTeylMFnhows4pCPciu6UTHjwif5F58ouCT9M3dUYoIvenQsBLA/t6VBlfE0xbSZjcLK8x441BLUqFSQgs2NJVnYWL1IrxuxUEKjtKRYIc9t8NvPguBgvviQfwcnMGpgAvz5zhz0VmwGdXEb5f39qm67oi+m36zySTK9AmrcDddq69crn3EJiRt56hStxL3lWT9FgUIVwSZG/ytkqvAIyzNXWxDtGgJp88ErKZQvwlLIHExnD/IT1O8EjLMOH6y7Rb4DN9kPdhuq7pkpA+BVALAKKW3MPwrLZdqZN3GagSy4S72CEVB3c8162AcyhM6nhRt+OyFmHoiL7zZP3ExFwFhPKhL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "f13cxiB21GsqTd6FPk6RqZ5hkRMN6qPNiZrQkDxkaVc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hKQ+klU+6NxG0pI7gbp0kJhKnqW3M0Df3idlio8ISl6spyIKa5LtgqCD1+AecfmvuiGTHRkDqm6izNIoiRzz2tj8+hczatdTr4MWJoHGkIRWdw4RBHGh7DEpiyzQ5WtYrV1811TzV8BjkrxxSgqGLyalwP2x5cr79xo+y+hFxPpf9U1DGEeYWaN3e8N+xGcHf00Vd5ctF/pNIeqb55mliIqP1u+j/aIqrKvOEEJO/pVduU9AbmwhWDCWkyvze9BlI09yokc5A6riNQmytYp4iS7McAEJW5ji26v4XUkauXqQypPmk0a+HuRb4wHaDdJ7AjBCR7ec8GPLO5KbfqCryIla7R8glxpeZYoGFcAOJ3pEVhDeXDrm0eo7ymbjCUgvE6O4dV3sWBhxxo4Qw2giotB+zl9+7ffq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "f5ahj1JYFlYNaK1YdwiMwRTKg/eJxKNnigq+TLe7b2U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cmr1whVDSSgT0cBvMhIHNWnHRigEj0nLEQ86chB8SB85RnsXgJlFIty62JATzHVlnVSwLoKGFsppHVgVV2dJZPexM/axV2+lQbUEMRwPYu3XNxAmgBp9RqzP8eU1NilBuCgD3+feSid8K2O0XV1UCzxCvlnN5ND8bzNMEwlObN0S2wjzPGfZbpkAVCuFcOmMGOKrctzs+rX7fioW8C+rTK9PzHV1p63zGJLaq6rVdQR2aUIYweU/s6vCaKluONcbkyrfkWswz9OuAglxk5a2Cgglaq0GNQ83fk4zkGkwfpRwdoL3gyULjB89A8j09JOdmIoINfj+VVgsx+oY0XJU+YNd0n7wsDOCBcLcopV/WqjjpAmgdS6oz28sZjDeJL+lTP0nGqOVaJhu6iPuVADW9H99+5DySanO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "f6+80HqM5EA8+5Vhh4ap6Yz0fLNOy8mTgWSCZo03SPI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OSxWK6ZdxuYh+hoK2+yNXBje4KzyDtcGzTeklbzWvqIspN2CWiQ3+IUK32YpM2+ME+GDmqxewD86T0v43P9Nnoaj4qhlSXGy3k+NNw88k58mCUmgZoWjKA4ls8XB99pvWQi1G8kAKYaNqDxPsqGnY3wz7gvbUmW8HyTUsEjRh6ryBgZSg1oXJlMaU/CFG3p/YD+uDxk4gxSkTD/MIVS1kEaXn2/G1J3/KsN0QThyhssbCWmnZISmfRZMUg5J7KeSwrydGZ/NwlBQgvy2RuaZzccKXddcTWf2G31DOY4Uy77mamEu0Pi/lFvCGnmyxOYeiQLUZ9NF7c0lT1i6oguDycHrIIrScPkPgJkA49LqblUeN3MDC7H7DH5ENnZTG7Mn6O225WNcTe6v/vmt7mLEvGUoCUqIrkHq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "f6JtwJQU/1EmqfN38C2QRecoycYOVdC2/GGrkjNnw9I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+OKh3sXa0oMdbo8WaGcV7IlslNUZIcKJrL8IfTF/CA8WSses00Oca6GfeCOqc/USYuP3ouehVjYukVTaSVTxIbAYBxvwPWaUgySmFmL3fOLL0eSd5qwMROdUOXZXw9U4E7PbyGeOXHAuD/cxAu3LH0R8g+iMZEZaxX3qJYry/T8n+0jccFy0mxFd8fAiEvXSOF6tkV4ixm6L3WMNXiWEcXT5voig0Ee/Vp4e152QMLYwFobHP7Uga/AzhyhM79diQbm0dRxHFZx1mtlNf5noiTg8OXRUtHjjpTHbzBC4ejgadG0l9Y/yJ8ZoEafqBzgs4vlH92+ieCx/LxlZ9N+ae6wVmGWGda+v/fJGeDJGFoGa+zSMqKZyJPyCeEZV2DKm0yRrmMF9PIlss+JqQSs6q03ibhJmK1XY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "f787ZkBlwMi959DTGTcWlmfZPaNzb2I5SHDkn5efURo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2WjftYHne0gTSnkUou/vIc2NgHCj9+Rq+90mUDCHrM+vIjP7NvPRowkxsmkN0TORfZ2r0ocWRjeSP0Et3SpFfQH5KziySN07+lDKJEiT0IceXwHNVDPnXOB14/1nBAU20vWzPL1orF/Cfe8HMvVXuiHcauz2pqt+211tZ/Ei2YmoCxGemKOaSy0jPRqLVyquP2B+PziXyz7p0flu5+SbkAvhq9KnMOkelpGwVoRHT28SiZ06MItN2BYPoXb9GZGN0kTmJYlAYv1j7qSCCy8EhvQGnHFRrYm3xO1XomKvXCvJyXsRupYGk7TV6WXwIOOcaRR0jMIpSdKGennV/CbaT2+QrI2Y7GzOh6Mi8roFOi80sHMN9CV46lMo4b1nHbvLb58rWdGAvLp+CnBoH0AM50ErIRQiH6mp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "f8cPTz+H47SkyFyELsm0/Yq7ija7gfkkIkpOMtCsZLI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qb46X5w3qzVJpN03Fikumi9E3Pd0Fw3b0RLuI9XfsOpJhmXyYaXcEPNnX7OozX1cpdowuJ7rbhr1uTgu78mmKCvRkYUFN/MXn9b/PSiNK9vUG6KqO50DIOsLgMFq6EbkyBCaAo1BXafvs8HVNmOEoLpnDCaeMYoz+Ei3kkH+ntn5MyRAO+Yut/jd1t/d8XYqLiFPdV2pxFn8UIlvcv2gpLxLbWum3IF5Cjr/g9EwPVqj1dl4xHjCYE0/+p2zwyGJspkih6gQzYRFtm/aDD14mI2EDaE1Z+JGxFpDYbGOoob+U4zA2+7oPXHUTmMb+O3Aa4Z+eYVlpsgVZ8U9HdsgPfNjoWZwZ7rP9U9nPp6aA7+su+JebVbyUJ2Jo8Uchu94DYpxcCWnN8VXTKvq8d/17V8CIqwrU8y2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "f8dMbvfx1NQAi8If6zRS6XIa3F3xGqm0ALJjECyvID0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Y4EvP/GXQvCjj2DaC/3G1kCIpAPro92VK3FRtfdlmfeSKWwVidlAlzNG4eqX1Y+3i2twIg1Kt9ks/fjwp95nGtBKaq/7U2Vai29jcVr4iyBlQaOWKML0ZD4fz24Ugn5NbTysQfD+lwbSIKbI2vcmxUMVnx3wdZJhjqfZjzWhlxSpmKVJHQqrq1v1Koktu34/knUErOepHLCUfIcMTl3+ZO2CVzXgrtspmFa4yn/KlPLPxOhAH06s8GBHN4wBhe4IUG0CDBp2AUOhtP1WXr4+rfiquxVCKecaHdEq1bqWMO7BIVCcGeS5OutaL0XqkRJBFzFqKIPfVEQZjwVnlY8sjmRZQT+UV7LR8iKlWDCL1ceIyQUuewj0C1PSHvqivJnhWbI3UwLnIOkJaeya0nj2NjS2TJMMcKk5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "f9cmKwSvclxGJFdltFlSYISAyLHg6JTiUMlNE7t3NMw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A3Z5qlX267r9aqmh9a8peKGYqsAOsxSxfQMv5Z/yb5mr9wYAuLdyeOJls6/mAu433JGDBZJEqDx6KfYNcdg8dxlgQEaMbqWP50HtPf/WKoEPqubzcBTZPKR/yT4f4tlLHapr61KLTkgu3Fm4z62V/UY16M/rodeAdvrEhSCrMenzUKFzyALqHljwgf+bHawkLDSt4wizWSt/viX2j221lBvT4DpKi655EOwINmtRPnbfQ8rZ40WRcIOIPurESFjJmzLifLVeAbLrCq7WzeU24Rz3pXQOdZK59cJdVH4mn/yxJNmTaKXtKwtXHWBr+fJRU00r3PufoVDGBsm1HS9rX8tZGngUkw6M5oTkqHE9n9RoZ68LwTYjLofEznlUhRedBfctHdlcgtx8HupubDdLHbnnQ6DkIEXr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fAOj4TtJYVCLTv2oWwccFfZniepTFXLSBffLkDhbkCo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/cx1uDmlHTN3zKkh5+kiTIphKl/ZMgJGMbmwUr6r/b7AjFtCG7vFbIi4zJJ4dzf8qdvIsiv9CJ8qBV/G/eXo4bvB96dS2fmMPfwEm1sKlk9Ggx5w9L1g8Vd7kk/GrgCxibela0odFhaigeVBuTz91m091qepKMj6Z7PgGRg6GoFnio/RwGiIcufMOF0WcfvJUZIjuqst4JBzhI1CAY1afrfXDjltfCG/TIwmhlr+IrAUDk9Ee2UsHMxd5VGhi/uQPH+CqFHjxOWHDsxIFiyituR9O8saqgE2Au/bNy9ygfz4OcI/8pPHS9DV4dSVHTwwq31TdYZybaVfh2r4xWOTnArkt150fHXAwAIwV2OwLpYn8Ui41/d2DoxfsV13lNh0DmP8XLR94nRK8SGZSRyY1OTvIbuNHEiL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fD2xC9HP/uVN50n6lZLdrqTT5pARFQCrJePSX2/dtnQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OVnFE1mZ8/3AVr32vQQXjVD33Xo4v3d8XfAgKyUKhwYJu8x4YXV9lv/66x2eSTwz9i19C2NuPbCycAGB+c9R76nnjwpPy4eJlWCL4bf1HzzNrIJnfamg1CLVp7yiqpmOZ7xqYPfdF4H1Gg6vXQUkotzMV3u3Gq2+NEBkqOqRctVn5mLvqBxir/ZNjws098djkQ/eHTCpWhT4cofvFuzoefqQj6bL1XLijO1IGHcP2pm4p2gb+CEdDZJjMiu7u3E1NQMtdJXgDLanoFNlz8zohSFSPbOPhGOmWrEEjFb2pnoNxHMGd9G2Nxzu+3FBGxiVqF8+Dk9dUc2wRegWcH6EmuCCGwb3yrou7P79JVqJhIfN6Oi+0OYMPgBffOW3YwgrwjcaZ6bFMBfiJ/KKpT5N8vZIf8XUN/7o", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fF9lwFL1uMEcuAra2BV9Uq0+dOoAJP/zn7BuuY8OeZc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S7OCUsZ4jTs0MPMKY5Vn7ijHlAnvYKXi2sfx3JPZ5JWfm/v8PTbD6vgdbSWlLnUoJ7nE9VagXoDYnEp/lUIorXkbCCWsq2HIyur9RqtqZ8rr8gjhoYvcODtmLKA8hSKBl4x2Oypz7y7KNcSYILWV1d+5Xw5xYKrRiguCZn6etShe0vBJtUhE86zZ9JGyj4+zhlg616s4JefjLf1hc/wDefohskKhs/3OywmhcmvPw/+v63JufbRLnb+Hf6tEpuf+OB/qLwRgkWPyq1cnc5BqAAr2rAqaLZ+kDETcHaTTNBUhEVqa0iB22z00SErvFwxcdBzZimhDmSz/iJwwGx4BxXWix1D5jSOhzTdN2TBfKc9j7HWOc9BpKi37APp20IVSNOag/RBJkr8PGqfi0cldpogXLPDvaOCl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fHCcruSUhaL0qPEFtxSLz3S7AyBypW+WhIS6SE3tU+c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PCBMbRfCLaaouVDQkulHuxN6/BlmpKyMMRiowpyVmwA7FV+Z+OTdQVCGFVEvA6bXPM/2AlrIjP/QmymDENE2EkPQpmrLANMfcoXEQ63dDW5Mtu4l2z/3IOQr1v+ZuF9Irh6ie6mcdT6+lxzvwFDdAxrEqmdTJ2qU3bzFs6FZlp9LD46+un1B/ZyZibgb5sw1n2fX9cnUmx8or8CwJiQkzrrRkLz3sTBieRf58F1cyDU7G34ybwiN6XX1Dc4gS9uq/aQWF7357ZoYfqKNkgQSoWTqHIWxsJUth1n4YK7UBkU6qfjjCkXgZ8tyCKNcS6ce8oiHbzyYt/UcVrqJdWRbDqAUYC06o3Ok2I6pwdPHfygSWCCqgCutW3xb1aMuW8pEUQZ54xpQ5eMriMYOoY/4POU0Tt2OO3tv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fHCzfKpTNpkTErvy0jrX2s+aRtC/b7GZ1WYIcSsGPMI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GZOllJfBH1+SznxM99SGaZ0ecuUacrgbTiz3sViAX363LyVlvv2VUi19ap7+GOkVOHbk90KkIA6Dqv7+vGi0H2cB2wOU8QqWKTyu9RxCuaQhKGZ3bUFjicCRdlF1QS2s9kfEDJ6dOmumzRA2L9zilNJ2gE4uPNC25Eigy9lNtjeYSTt2buFm55jTrxJ4eaMwKtE9NDj07GWjZMPurgCgwI5+2THugkgpCtyBdYehxQjliaU6MRdBuQ5vii9VdtI/j8l1FTB+qYIwTTIPZUB3dBzQ2DBUQmpgXBVP1YM1sNlZR2uD81QesCpvrhMF0gYFROcAnSQMj9NZUp6F9H3LH4EcMqw//84mFbSLsnKWegs5a7ax0P9N1+/SFv6S646xori/vCDP9OlboYL7P53xfi5XH/RTSo8V", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fHEPfHdi4R3YTKdf4dMAxJbwn9WjiqVp6Uioq+Stb5A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5Fb6rpcbfKPxo8s90/Xvo7PrItoNwJ6sGcSHftqmxZZ/7uoF8pMUp7ruLs0Xr4GwnOE9obW2IecA3ZJxN1sxIbO73AScI0fQXaEfFdT6xB6GCVt8tC7kvuYe42B3Vx/fy+B7LabIYar7msarObvd4OLT+E+OZw9ZP8e4ayQB//tbGX8dtOKv9gHAOGjXEUl4DLM7ay+BUdCfnz8I+yMFDD8vKPPivaY7DluQR0IgF23UNUVXttLhF4hmx2XQFS4wcOReQ++0XIM4dg4KY9Xf7F60PPnPHEBPYVSBFnFgEsbrnDVBjzPcNRpXsX9qp/fo0WG7clkrDtg9792KhFKpeZYpgnkJvigH27t9MWz0SeL/ySow2hLLvbU67Urlv8D+l5lcd/igt1UjPMg2l7UkO75iXiZg4Plq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fHM7bA1Y8REZXqaamEOxKgejWdhl/36WY1G6vu96KFM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B/jwfDB94fiUdWoX5uCUksSnJqUndB4NaxHn4xjuhsGBFFM1exQ7bvTtaesG6VLSIt7QvrxYknPdJhnZTIyKlIL7jj4VDiBod9YhrQJwux8Iq/CKNGpRjRRhj0O1H8mmpcH+rRuKnFobRc00FcvsqY1ANzGVwNb5V+NL1u3ESuCQntO8qfsCRjKBuDfR0ZQDJ6BBnf+12LhYieQvB3VDxSn7bfie76o5HZDgSAVHRqr6sGcqFemHo6wpnYO+94gYI6NTGTJrRLy5KX5PPj98aPNXC+v/EqKyPWFEkVNde9ptkK3qHuo5otrG0KnhqYKtChMO5tW940ikdhLCrjSr1uL9y7w9OCGpOuUh4NG/+CCGiU10VYdBDWEB1d77IR7B3oRDG/JYviekgGzPvkby5DomDo+SUayT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fK1Wl2FP8ISqbwk/wfYcWPJ0YiHmJP4U43i5mEmm4O0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6MzJ9/4R9sj7E3zztbCWTIk2UMQlDdcDKdKOY9Rgu6mFQjDEAHlsYbiMGWO3S/OkdVajH+K70OPOOBZlxjrSByxWHEg9WlfiTMswriPoPWFo5kFHpSM2wWPhKS5VpdFMkQGwMZ1S9yMYwvre8x9oOc8fS0M3JYnHD7jQcT1hVprQ2xXc25q1+VbKjOrX+oJ5doyeTAakdEnYb7aTsz6Pdx4/s1VhWWcCKlIApFgsP7UcCX1Sn9rMxkTjaUfaSu6IVA6lIJNUiJCugVf4kLTo9p37hn27NrHQQsw4mX1agj47Hr0KG3dtvGtMO81ujT5RQplEFOVElgbPfWNcEDfHPmzOgxoPy+sLklKTQtdDVd70+MF10zHmJXAIp/Ob4nlwyBOGEEM025lPNSuRVeev3M/frPLrBmFy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fKGh25Km8qsmfWN3DS2WltJQKyOmdU7uMhmr9wMR0ec", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3Zn0hzCc4df8cvgCC0in8Gye6jzTVvr9W3D2rxgj+CUp00vHMOmkGavI/SMZEhiHpMFbJhfPLjzFWOtPBk9kyxMp5a0NBIzCoKOn85uDljLMwCQ0ZnOgGau8MLd7We9j2nkhjfkZTmhL7Vb0vId8JI6xwMm4go373qazkP21SsSD3ctM0TMyCz6Jdjx3OrTtAsO1ENoS7izqxLLIB2TCkeX5DGAi/b727rrBCXW57p5eC8AWBZ15dyBaFt3QuMIDlGY0jPt+uPU5PgJDCscWS6xje8icYL4ZZZWcFmQEgHI4moEMCrmFCPRuCWk21wZ++32emgOQN8Ui82Vf1AKPrSsdj8yD6vgTaX22GI7btdvl4L85tmGp4PuiqP6xxcKxufjsv/aDzjdBMRfluEYqZeikrlnzFlGQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fMawmIBha58BV+cCe6ohsSpxVObX0BtWJMmtA7jf5qk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E7IDSUFZWU7Nd7x9/nuUzLbiJNvX+vdg1fWm+5K2MlvDczvFFvHN5qt3uGt68FQhAgskcaIhEZ2eVRAzOxHR0jnyYLX18YfjjJFVMd67GJCj+baMGCIEnCXo7PnSrzFH39OVuhNG2uPV+Mqt+vzJGYEZYPZppy65yYPO90nXNpV1NqobEeOnNmsRizglC9ZVMXp0c2pxvaMAINf5X1wucaAwR2HygD0+fxxiDlUHVnOVJL4J+bWek1AXIomse4UApO0ROihif9XX1y2b0uLv7HwsWkAExxsHxjZPLgMpLjbFdtAkJuG2CnB1PGR4vpysgnDPYIljKLlG45TtxxnCZK/wKnRf0rHgrugXj1aNZgX++SYG0VPH9SN0xB+pCdFPQ4oOR/EFhJxxed339z7qS2GsxMWsX3tb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fMrd0kvkYX9Xz4xCEO0S8/fiStM0pz20xAp630ojMrc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CAU3JcNSjhK7/OWEvgxT7e5CJaC3L6V/Bxfo4CeLzwmGCphVVI1avKJzhiwQp9jugofb3dea10gB5ok/C3AUBHmFtyUm+EjYmi8Uk0e8nE51rIgCTvI9ZH8Nm2lANITgNZFKg/MnwAZBNajkd/i5XaoFgF+NCJxqffTuD9qinEbF9rbKM63VehF36HhactgvodwYC09b4lTofP6/9xJ80TPNvP4cLKYcYHga/jPZVgUeRZqzVj03sy+o6QAJa4nl8iC+2y+66kW6FgOyK7jSWNUk4v+q9E3Je6pRl8VAPPRihM3lH/o2hMmbh3lvJG6u1WiKljO+TxgVtWsiUgFyJ58lD4sNp2FtLookBXp31C3CnNLJR2MgSgucq62byURw907RR/PvB0Iow7/MpEq3SZkgz2Af6pV6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fMworxgrROhqBiXh6Flojygwo0novhJBDYJjsj7gc6w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LSGGo1EfykqsA3Iu+YN+ewnkpuUjl6P6jWFNQANKA/eVrrkhLWX5ggxE0S/w6lZV6zqdi9dBMJVx9PqX8Km6qNEAotiYmWLzuee11wYinkdXuGjNj82h5MhgCHTjOZZ5NMcrLEsB8Fr/uARuLjanIcrIXjCVuknGK8ognvk1Q/1zC+DaOB1pjV06HOrKvvxNwXOh00XnvYlmRMuQ8xZvwHSqhyswJTz9B/yqMXt53AqZy5CzkABlDcRpe0/H6wBAVmH40ITVP5fw4g5hIWNIwSPou8zzXZ5VM7oRHZn0yW6k3/2JuXC6kBcfWq59T3OA/DohLdSdh/ntzwkwVgcEbprwM/+WHg+gBRGz6+jeMlM7HFMdFhYUyNFuUj5ah/lAy5nCIjEMKJ85fpFDD7kEveJRss+2LJ5s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fN/6qgmCRUzqvk8/gnEbRN8bn507d6/1ybCS3WkUBeU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F0n2fKw0MGPkJDAywRHl+9W+kot6cQYMgJfUV1Qv/hkotLSn1U1jAGUI3nzy2lWGPFjlNkHt99/yFDkmZbMT1RqZlQXe7KqfH2b7B3QDfwFMDoIwYRUlwY8CeJd59aSp5CzvnQ3OQH7rgRzcAj2DjDlbPxptMASS3Yeih/jqTJVD8TIBnJ7WD0p7dPSFdsDL3BQMj/xXBOf6hnswDadD0QqG8dGPX/vtwLTXEdtUW3loDmrhUoP7YoNqGViPvM5ybwkIoiyyffJ5XJwHDvX3t3Fb2Hk/ZOHMdb/chwXIJG7KDal+YKwk01BjoeO2Lw5HuMofY3FEJgVg6Sy54upVnpHTRIC+YVswCh59eCx0h+WdMcsLDusEYO3CR2LgV8AKoiuqfaGD0BG5F4r1zy1Njz4LESyTpHcV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fO59ThKPiDxwEbRJfBEv5ezjmJCLTwIqUZ8ty86Swh8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "K9J7WRcM2XZjMbmNgPuOAzC8rxT1AM4ZyNLgbO+b1fJSCMomARokrfaI+Yc4JNT2FQuzgqU8fZbOYdJf3XQmxjlqrW2CvxUV1z7rSBv3EsmM/JfgkuVl8WRiurLRKNJ23V7rtB6rOKJ3//Vx8cAtBB+NmAGUdNQfi1/6gy3LzrHcSsZVEtFJi6Sx2pgcwCdM/r3araMMAxSCJamqAhXkgu9jS12zNbuRFE3sVZB/ajSXFrwFutu9bkt+qLQMsza7bgiYRI14QHX3AsEUTIlxxwi/th7WHMC9DatC5RScZeKCHNAxQatL5K+YofMbRwH2EKvRZ0xN6eP9Qr8flbIf7tadDuDUOmIkee8fZTwLdmGKARJzNAFJD90SalMSAKrVl/qIxBSyfmwrOTU1X5K0gh5Q+xwSTqdG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fOVJUd8QfmH7BVTM0xzhsdJY6fGEHZnPx9GTmjmAgvg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fyDgN3oES3bnFqDM9L2PVGosg1QJ0c2xRObBfY2YCDQLgh1oZRzgPi4VECu/0pbepHEJ4UUIA0ZYBxPqXoDnfWQId/xLKzLjNwz2LrBINSz1IwseYYCVbYBozayghfPlg81UBc8Ky1ft4sSy1jE6z2x74mPNKLQA2sq2SmhekkoWCIDiyIIWrMYJ+ohPMnsIcx7xFiRhPTsPz+vt2ZWELOqi2Th1gfS+TQUVJaDO4OOw/cXJYWx/2oXqdtuxMYNGnoXvUSv1Cq7JrhUKWOn1j6zhyuGk6dgOaP+yPdCoAwZeLEXOUfxLpEdyAwDwvWIyitOPhK12FvqSrfDs7Fk1ENTRwTpx88OL8vIfSyTDKMAiDNaB6QpgzkX5OdzsVoCI2hn+S3/b1yp/XSOubzT9iUFpHAH8Sy2Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fQBY/vWk9GxswEeHKRY9sQfqaq7pa7HY1dWA+HSgn6Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8tGOh3Qw6Z8L3bENIGeW2ayZfMgle2LLAEQDPGiXMkZ6HTjThRAE//ETvNjp9iLXmgGvEF2YXPp4BpBUywOynOjwHpUJaYcAXlk949z7FTpToB226A/bS5nkE8BuxFTj3aW+tIm8m/Wo2vYn70ZFAte575d7VkK9hIschHxfvj2x0AxMQ1v/EcKmOc+9qfYcNr7uOcQeo1wxdk/vZa00b5zaqNtNZuXrabMC5niaZi/L2ZnrKGLbd3WN4dPJxbTR/Rwc3TWmog7h986VWvpKTSdl6fcQMl8sxa+PPWFk6ni+2qhKRL/9IAbzIRKJvB8bqJcnmGV0KFml8Dm3zPti15WGa9omzGNDvEokGnX0xE+o41F4RZF8e21V66LB43I7jFB9iFCDb6K29cBqyjs1DRJZ7ZSul9aI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fQJUSI7KppPX/AWL2wQ5M8r2gSnulK1KgPsDlj+RYAo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wclVzQBty5H59Z2Uyswi7e14t1HUyRnqE59map7vDSWCDJFTXRLCdDKgO/AWYf4Cct8M4jlOZC8kK0BB9Z765MRwf7cShHDH4rjZLNQd3TPJzMORDaRH9WgTwMhjPaKfNtCPxWTxnzC8J36Vtu0JMdGAcU0NfRj4HIcLlelN4P6+Qr7MmRt5iiYWXv0CMFL52aTF7aldVQDpcRkSQMrGbqtKdvcNXbxB3JwHJB/CjwWqyZHcBHgNOp5BgsluLTo2gSURUyqquvlCyrD1ZfnPGeMqk+ZIG/P53phB9ginxaLPJgXN8+oKeldMktp3ntQK46LjjwDyRK79Xbf3kPrwof9BhE4DN//9HEytuAsgiLmte6EXQlH/jQe9hZCQ2npQ+4bvzDtbMrtK3jXcGHw4vMY6o3jFNZId", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fR5rcraFp+dxyq+/oQjzyOJMy5COUOba50Nc9F0dBJQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PKiiLZ+ArV1yI9U3VHRQHBANREcxXey3YVZVz5QMSLE0whG1XEp8ehT0NZXbKbXcOn+gMwi8rm2sP7CKEV0PUuFnEy1NgdQLO8Zw16GRXD3up9mvFx+e2dfIl15BAMRp1FypUlon+63ubgTqGaG36tgPCykxhyM11lismdJgzeSbBYMK7Su2X/SqZLS3x0Y2SRWP1EEaiafjTGsodG1C2BA6qO8HLJkx+p99WLVmkzys/4UK+vTiQM62sB4ghrKrbVh0cRlxlA6+8whbdnQJMTpnuAkqJ6D6bPt2WRzlf2hEeGLq5nQFjYERMW3Y7I659Ok5Ks5QWhoIwXw3JKFRkvoZnR5e90X6tsmUoNeGcJ92QnuKllxgf4Ez5sdgF3ncNEpStMjktqKrghBTcf279164SdpPRVRU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fSPYH6YaAddKPxTAv3WQipkkwDQ/IYPm79VPvbMjFog", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vHOAASaRSanUEm3ddRNxI185vLsPFAC4jqy2cYBzcZ5KC8I7BQphr4qwsifYNIWg42QV3JliU9nysoJt1LpfeB29nwzFQ0GTLYdAAZotqDE1IgQpm0o+eeBBTrt28xYXYPK3LVTy8zvsR0gE0/h2hYQbm5DgyfhN6rZh/9wItezCzJ+PgkE4iNqCQaYiptB4ra6FrntapVq8zsMB105na9WNIAZLmWe8HiuxjQSnAf7iV4QRlrvCH0CHKmK3LD//m0UbXFpS5xcl9+EyM1S9GOQB2EApYxDAVDuScHUj9iKbADbtJZmFxXKq+5yY5lbt/XUrDdRr5bkaafT08G4BDcmRRh/e6u1eDFi47hrHZiTJre6q2+mutIJ1RB1E56IcC5rn871wLFNX/fF6u020OW6AMaZzgbVx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fT6/iXrS2fNBqiAuf7D5+lLhs7mfEGpR3OrCY3P8IdE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0NrNv6CgBW/MhgYNGPcGBMMjJECnJKBYn/vxFaUggmqzRK72BUmQDV9tul+5LNSHdSBN6Y11XsqJyb5xhud45RiTG9x/LL499sxxJjpd5BfWeOIDtvmJRsZXv9HMrQ67a5CZJoHWlolP/9SA5qwKyNvDyaBrt7Gw1qkOmH/M7G2/LJi1pvRqsp/cQMQL9nJRcemaVWCdweQhVO9w2Z9YTzQHUG3IflD7LOerIowvhTLWZYPM0ftLEZfU2SqCElEo14nDeL47GPCSKvpTkZv/8qeeCOI8Y5MOr8SPlfJ3FYGS8qDQIpJCng+BggivupPjpjYGcz2QF5IMfr0D0gpBIwZbr6i6EV+dn4TkTcK+u++qFVm7N+mQ2nWFbX0gPrOvRS+oaZ8hH7bJjwG4HjodxtLjcnC43vBz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fTEk2CyD+/vWpSdDGAt749VmT/aBOH4NvfqZ5JbmP88", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w67DhojgMO9bqfuxx3jlEXvp9kxaYOQZTE2naCgu/lBsf0snxfjliGvRpQybDapsWQCzWs58aBZ4/OHue1CXXeVwy9pyd/9+ZAWV/dfhLpJWTzN9rGf8crt0Ct6SxOViPPBrcGeu5DnW7R8rrsVy0a6G9RtjbcfJTmj1al2U/af1wzVOAopyCJMyFVqXSbQEosZjAwWlnaepTbX6MdLdFRSsH0p2QqB4HkWwbadpQ9mkFEuKVKYtWg1AXNAU9pRzfhbgmnWiFFPHlU1y8zAfg/QuKbhswF940oaI3K/Fxwm6yBD5fC2wE5M4/5sVxfriFyQ0A4wPF/WeE6sIii3+IpvPJwV7R0h2RkFc+BWSilg/FktdbGMbQ8//SV8YsI3eEdbZeGtscnhOSheYocesUgl2mpykSrhi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fVQM9DlzId27XjKStO2DJ/Z3kgOHruFqZ5WU10gL1Y4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m8blMnHpnRPf7YNPQJVdw0z7hRSkuB3HimjEu/6aPw5XzznXy76fjqlJsMNzkP+28got+F3qnnXLVcpX8B0zRmkLTyMNtL9xRKl2xIaM+eSa9jUwxcN90dWq2TecG1mjzctmXwc9fZxOFbTSHS4KJoWGcp8jS6S/KZKrBgmo+34zZr7oGV1FUYrvOJGJNWHRMLY0GpkG/muILqFGDWtpD9EcYmjGYSD/BFmOGTCYFaB6/UrEq6AfB8QQ9jAQdtINCum9Y/2Awwh40vsUfI93U009+3RsC7WL5x+U6XVM3b4EmpBWzNLY+Ky3FuDgckngMF2R+KnlaA4HgMEOkVfiaxqfVMeGqpkF5ECZEb8T6yf2WOHkIlltoNLzXtvusOeYFhgpfaYYzvebtv4D83dL2FOnxYSYG37I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fYyudWaWYJZfnWCZPvzYKHPNMtUqdxffpWqh47qpZ1A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CG5l3jNMc3PbvYrfO7BO7147Qd1nRmItlMwQBHi/ZKTz3WjRAFrKj1vhn8uqKk9PqGz3+liCXafSH3c++3YuiInaTrxPpsjV2YYo+mq6p9xLdc2CWxm/L8dJ5X394d9JCY6DTdUuYbiQbIXurnFb38PxQlXR53rl3OolEg5u16LVdrZXxOF+Vf8XX00HNr1xINCTnnsGlRG4celSovN1mhLZrLIEeMlaeOyjGUeWkngSiypRLOk1RNKCSeC/H6syV+Srv7SuMdCpVDsj2sca7eTdLiASCR8EqMAGunPV1E8w/G+i4KpXGIVlOFd9A0VAagUyeFUMzorWHVtGxAMMo8vwgGe7Fvq1qRWwGJK+cIEGI/8iGMnYj7jBwUoW4h8dcMFzxbNoQMowT5HS9QPQfGwVOo3Vpg29", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fZA1aVNUW054p9Y7C833+FZmn9VE9IKMTQOrqEQ9yRs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wAiO1nQbPpjZprgAf8ztzqmZl+MKu/1MHBA0st3/+vQb5YBpaa/uvCPHHFZCiFiTG/M7yJzoieeUMSdxXInv4lEjpbDH4azfmmROJbTN+b+nXjaBDBgGFmtEy4HeBDKmn3tRGrOF1nwBTRUQWl5NSzqfkQTjnD2GyFLaMqZjjkQbRSsN65T4cIGN+AScCFXP7PcO4kOJihrmvTL1Z8O9d44NHgC3XjcESCCPa87vl1dtw/ssIDWYZvv0yImve5zDAwcAR1Bt15H8LQhFGz5Zur5WHan7xVz48Q0kFPWd2f6k4DuBegIRcL2SATiXPEVU/ot6w9fbLjvceNKIAPACtkjpu0xLB9BdA8Pi/6rHJ5FX3hbTggEOkbDrnaeddE0d2/3ZnO6GmaUxN7OT7K6SVknohMV3dc1Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fZaSvklaOVks8SSan901+PBOLABC761fwKd5P91p4kM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QmXAmQJflDkeabTTEIcmd/mR3b9vb7Npu++No+q/OVXpMbcCZgqs7V8Bz1QeuBEDre4TiMxpSDU68jgV1Y8Oc+m7CDyUgbxG4tiWdE1SUkN+mKaprJx1Gv9WfHJWn2rJexHOZIkNa/VVSytYMP0N5gMQ9q0ljnUZzRlWqXhj094uuFAqX4gfIyUPsliPBBGLM0SRXOIA9U1qE2vQtPWL7ZYSD5/iYDfajrmflEE3tuq0qGtrJ0dVQC4UmU61qCVbzFx2icYg2QfAfJsjPPVsAdsfonISgmLlnsAK7b2yiFhmGHiBuTQ4VPYlJR/9mnQIR2o8KYcm4c+Ug0jX0o/N6LXnkoe9tA30bEp+dqkBUYbAJCMDIDKawRS2U0EKok1FevYIjtlw03IPS0e+cIJmJCVeRcyxvj5b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fZj4J5mn0grKZO3cRKc4OkSb44wl1dzjndbcYAxrCq8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UVzEe9KhzAuExNfCrlGXBMk7iEb8VewMHDlk4DX4engEBo4Z2/BVK0lwlkSsubq+SYyl1BO5/OV8Hh+LnvU43w8hjNq5nX8OhWkrnqNECrq8NcY8p7yXNtZIVhrhooN7wRYPXs/l7umH4eDzI9gbuQEImmTfPqOXCgjyjqu/DpsD92eMlLy7e2HuWi+Q5GSyx8zFAbHHKX9qDjenBNhpVpgPe32PX2KlHoFEZxCbAhTzsj6Eq4MbId9aG2sPjY10m6MLn9F82285j+k0LLnLu9FjsMBKnN1+gmHGNg42Jw/0q2iqPvOCV+eqfrMS6nXGiinNlb3t8P7A/gp4ZW23sQudDdxC4T1COVAbmkEitwazShGRk6g61CVPwPZUbLYeS/4w7b7E0s15brP+c0uU4sb//S8uzM/7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fZkJg4PZaw+z4BuydSd9XhvfuuP5o7sBHCFYKBcGJ/Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JxIbE3obamr+ewC6hARQ6dC32k/PmBsTYcp9HssMfGyds9hsiAh0izJ96yTJy7jpa5BFH6/ii9x0fEYuOiUldnui5CB7olN3jxrfl69JoNxOUuNFFirfrCqN3x6UIfhZPrAFiBd1nEY4DDuVIFug6vYNiFA3gNXDKuu2kbeuVPYUh8Y4EWgepyutGJRRFQ+mUfZOgKzzDeN44IR7YManpF0YBl65Vs9ZpCen1R5/Aq1zPCY1umxbxZb09+p4elphMocgnZuH3sJiraEryi0Tge0o094gf+VMaHOTXEuIZ3PWFxlGApLzADWo+NLAY6lDENhqfIITLYJIF6P8A87nAvyWgWVrmD7Aue+Pk+hAiVmWrasr0CE1rW/PKxNqhFvZWbfkZ4MDcRcT9rj95xpPF/PZ3WrrXS9+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fbociBz2tFca3KCovDLko3zMlgLNpcz0a67fneddcYo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6QB122rvSzsC+U2kIpuOk2XGLRap0miHiMzMQnuaxBEYTpOPzgTRpOpFF15Vr0FfRQyoit2i44vMQQ6jF9djEMnkwY4QNWswxaN2+kHYokH+ikBgZhPFc50QWIqZbdv+UNabSIAXaNbetdGIYtBN5UWgFDmEqLydx1EG+DEDW3CjDGmNfqhun7dFAY/gZGbhPEJ6SaIC+0WyfL752ifPyw3AC9sFth3Xv4ZEzR3HbhN/VCL7c7/KC2721jGC5KOxNq/jS+IGIjCQXAroPU2ah5rBefXgu9Pvc0accv9BWO6cVYlrpXtEAB7JYPQR7U7L4eCYDIaWWjiRHTbdeUf2e4YWkmFEwdVRF2OXJZiSydU1COutxERCpZZ+qFGLZNylUSUN06D730rHmern/gwFVe5AUcv3xGru", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fc6P7sVe3+qNHilt0w2qX2AbtgFJKEgdRv+FEXvuAVA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rVfVokwgLFbzvXK8Woo2IYDbKbLAwLgtj/k3ZNUIDEXVL/7yU1tSXXzzGaOSDvajhQlFSHyl3FukDnxjVTJkhuigeYSOQEu12dIN8SdGtsNJWZyj4DKEVbHQrDj6yGsn9f3qTxWqImhVcdS65qW3ssmrlbM4TkKVtVyfnK1FFMJtzLBx2YSLr+fOmvvdcli/P51u3tqlG6NjzgY45Dz11V+xQfrx+VE/iQrKjdnMnfO/MAKfoXecGqDln6hpK/xGFIg7eOmjwjAuP53f5rJ2fnn/Zo2wxaSk8xgurNA2lWA2TFTwvL4CYQhu17Iwo7AT0OGWu+kUvVITg4oeKCZwpcPfZRgN72lPWtEUNR3QVvc8ALuWXYm1AtWE/4op367j58w1fIwLRo7jNh3+smUIIvXk1WocI6OF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fdTHC3XeScMN3JNk4r8sryBOTAj3AasXlq5QZIBqP4g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u/NcYSgADo5xdiCM3i4cdBoPSlTTz1okS4SePA8Kr7rfDgwEdt7eHxw3bUOaKYUedq+N07NBvV15HDsmCTD8Sk69KIKUF8C24P2UXZajslDg0GpKyyuWGjPzfPDO3KrztUUsJ+BDzBwz1mwLhTLYf5nNDhxLCm8F9CVBZRLb2Shd3v0kjHCyJGuvpnU92WmWn1mPPpfSeg1LugXVO1vxdBIXXsjta38sTgpXbK4wl6Wo8zCJ3LDwyVC0TUzEuVUUGWjTH097udyo2HGc5k8EweCnPdjCc2V0jvgUBaOjubgCv6ya1VyJoRZVnLETK72rX1LG6tofiuXX4mVsuc6vN1uitgzCGTxDZAtNt16b/HVNxVlbUyDrn/2UVRQkNiNMkV5JaCWSAktmOIHFB3rSjkg6i3pi794w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fdzxXJOWD8v2rRpKeeJ/lBPmvtQcHVicB97cT6Z3W5Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RDwz/Hxg29+Bh8A93R5SQOHdQn4pSJWeCMdZsRVuw53DInRWzftMu7RnnZk1cG2AiRaw7Yssrp4cTO4u2LfxUG5wX7iDKcZkWmy18RAECNhOf9sfImkpFV6b+hJdRefFtIgakabRqlzvRRqpp28EgdP8v/LZU7WhgQeVGUkKvMlvEIuDA26MKe+nc3V4iYMUahbDLhJqrZY50Y5LaQliUUIMbHPIhIKRkkw+KGduHzqmn/qFe4VYIjMg3siOa+fyJxFN2XkipHVppP8mO5ys0Lh1HuSFSYEKkCmNISpuTYRxIGf688fKxroUgLKijePO3uctIqrQ4a3kZz5aDQb9EcWHKvfn8wgXVrh0Ka+BideSIZ2mY8eU9bGhaEss51CEJtaip81cELc7dzgY/ZsL8aqbFzM1MRnz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fefg4Q6bYPFL57ijm6d4ryHXifbMQkc9qAWpfK+E/MU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "60pvqJllJjf/qGhWYql89wws9gK/VsIIb6REXB1b3AuTRGx0iX3ovaKIudjJpWMNIpZ208Yx6ja3DdVlxH8mf8cvv5j/0irycZclnRhZNApxjrkzRC1Ey3PP1N84Wczbh369ZvwKI29HGLUQRQpeBzGn9VrVE1dGPRkyW/hj3nfXhaH/R0i+/VHJOJ2rnBPHJxmSwBFiSpYqDKJLoy7pASkn/RoO9CXaE/FXUj19QrJ8MMJnB4CcgAuwfhhrwr4zbG4l0CLIx8NwySmDRCz8EvibObfR9Dvz1WuT/Wcf18IOvJigqOYqIPn4dFcbQ8wNi3fEuxwDFE5G5H3B5uD2PbaFE4UMWzRSbhUC1MTrWW30hntAi8F3OeRsdXE+qKkzbT31QR51/Tduntf1E0mfqPGBCI2VVrs9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ffL33XdizTLWxNFFBhWMuDa7wfG9pGLG1L4DdVc7nYs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Qb08wkCg2Kvug3Eku4EgBY5PfS6HXxrMzVwoAz/uOYyg72MiEfyVyuxz02o54CZ7WXRegNZ70O4g3YVJQW45e2yes97VLpDXuurVgQuHfkLXBBmXoIh4lXtwEtYaa6exx8BOu6jqtJGWZzwo4cvk2g34YNx1T/IT5D4wM3i4j8heOqZX+dCQLW46obItg34S6g+wI7uEzGdV7yJirhkIgoDb0kQncGHddB3I9g7LtozhDRScGwcatLwA4XQsgeQQ2ZnK5ZAg5ejyKMdddFhD2r8+TGdLR8j+VQJdX0TV+rvMlo2Ud9sQYjEme+oa8SEHRvtjmmKohaj52A+pnhjRO5lqZKozjl3UyPe6yDBErs3U/DAT3UCcWaLkdtXj6HEPqIa3F0M5Smd1mzDMlLOjZW9pyiC6zUOD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fgCjlZBfE9IxnngzEQY1mLTkiXfHky6+uYX8yzygpFk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ui8884Ia04dEDFsKn6AuobOQ9c0doAOBq1aYT7/tNXBEUZELDX5zPFktToBq0qWNZ77PfvMw79jqfef9gZRJSvvFmUPzwPhYaDlt5jW9iB+CZOml/9ZglhdZ3zJufsuGxO+2Et9kOfYlnIJ3Uvabd9jgTzd5ARysRt5XhDP9V6DuCGizw/mkrvUVGiRgD5siQUSJ+vtVuU9tvIu78ATGSRYwsvCHQCU1lDP0N6xF5JHmzNMUqwepkLns0lvE9bIFligfj7gTR/6ORyBLKNWfKmrwPVXohr98/hrk8NQ897DmMRWR0KAVyZRiP2QNaLwhvWI2ndWU4uS0TPLjQMLQlFBngVe098m0I0j1BEVVFMU0JKFm7kT4LYdJZvmw0Q12rNGwRt1ZP2FcH71R4iLKP4hp5LjFBwSR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fgrBbqjUnUCs8pTvWelOOymRUQRyalhy/u8GT9GNAqQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7EL14XCkkB+jRI26tRorez9Ik1BDF2veKWVBzl52PzUgv5RDs36AaQ7kO0rW14SQEqkvzXHJr5igk6ptb2BV60a9WNeykF+dSNhgROXi9/sVZtS0+UyUIvw8JUNfDnkNsNhYKc6YkSLGB6JGmbRNSF839+NdrEgRiIn+xabxs2Mned0LnwKD++bX80htqQ8ppYPid5XM9to0cGZTA+R2K21V3vF1ueRIsjb1FLYM/JEFaR73jddXt7ouFp3rTF3ZhL7szwaS7dmK+Hi7Ng6zJiNw3jvMsXWlbjzVYDJf2l/X+Fuv1xUXbPSdhEgAL4NfKMFRFIl9ntnIM5qB96G7Se4XPDjNbtTOBsNuF6G0mtwQe5HJs0MF0cCyTPbwGaAE+ac/x1hQKwhu/1eFx9EJ6JqdY3e0QFpW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fiDlzpmt1BwobH8j8ZGlH7NAA41rtgPNnJQjLT7hHIk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3Qut2QnKzm9FcWYiX6lwB4savovvQytycx57HSoZLHtK1ZZDIf1oBcVLTVu+ADncRcaogHnxOq2vN9dWJEVY2BBhL6yUMbwc+fyfPsTZR3UCozrHMlilWfynDq5uh5+s+A3C7Z6pfpEw0iS7lkC64gneGL0WyekQ3IoHjmNR28wet0v+4RiRSYY11oRlqnXrRWMCIRtKgfVrjcAPU4hcaN0sJ/2gFUNEDYhEVFWAuiGJoyA1+Xv+8O4cfF0qtV3NCjfEVbkBHIgmM2LllZThXjY/qTB682F6NCoCc03CPGChnjdS+BlE/O5njCvazbH7lOhDqajCTK79d+jy4zpZAZmYQasGMwjbSc9kJNRNxaaS/RvUeLprZmB7XSZAdjPF3w3wk9dveUOJ6Le4wYdyp31Pl5CHNviZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fjBKkM9O0cjzE143w6CBsHg8OIlTnZcygUbUg1zT4b4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PxgN8iKAYW+g5eqd5K7clopSy0K+XwnDz5/4yAkEhWM+oQ85f1GIcHb6po/vLQZS/cI8exx4w9TxC0AroaqVJqgi7nRnTqp4fMK7S6yVQ2WH76cZSWW2JueToT/KmL8eVQcFpFDnR18FiITprFTJ6v+XS2OsfwxJxYlYJzx4vF4Hy4YV+TkF5v5YwsgKMaBSMa9+agKqAXeOdO1FgRFY32lN6aZ0/b90Ku4OFoaLniN7wSW7lXGDQ58GxWXC0x8nCobtxURt+BiOIeIvOB+prS2imra1XK6iqoUa8SXv2pwwRnvb68KctTEyrkQxcStT1isNf4WW0cvnAiqUZwo54umYsYfh409rPLHam5urT65SV9sGG33usYbT87S+0mo5GNf5YpUroxYbyRulpVXSyUG/T7WvKW5+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "flh67LLVYq2S4kkc4IJZdjADUb1H+V7N2IaoEsXJ11w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uS3w3LLLbsvtNq35IHUzO3eZ8krLV6H6tBpvxVv3ZNXFYxH6y1RkGSyTta+eWg9x4ghc/4jGllV4FOqtPYmLx5qU2juNKrif3ky1EIxuxFybCUO2MFYM49/8YY5clW4rjpJcnDPEAW6qrR84BL5VgQs5nx4vuz+IMBk0PFp4UAqRsqbm2j2YrNVF3+pw+K6y4o24jkUge6LtGwebX9POHW5gdL6N/5qsLqV/lXCoFfCsyRz3wpCyTS1uC1/KWcvTym3nmfQS9Uj0R+D3DqyhX+D0NibZinL1NkQ91flhNzRPjROedN7IkoTAOs6w9ApLG32gGimtHQodqeXXoOuCogutqny4eXwOqtxpV2SAMzxXmxw2v3ByoiXru1Bf1FEou+sm0aSZOuav7uFkA7Hfv4IPJKRdckHv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fmzZz2bsYyT4u9U4npFy943pBIHiGblMzxu/s9+aFRE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XUxP8zrdqIc8XL1PxYcJvmctyAwjviYP5yEv+ixVoNyZDjTKMhgwNGEp4uybKaQlFy1so5/FZO9PpLAy+A1/FBaR5PwUuiIz+cCCUaVGF5Nc9Q9qV/V+HuIA0NDMFpKMHlasE2y3GY3Z9fcFR8pl0Q3XM4soSpfTRGfPHm3MZIces6KE/8RMeCh4kaBXoYL4uIYfBjiybYDmBV32kc+Av4PWZc320XdMwU+FsHENiJ+EGOV0AfKojr2MU1ZSLExOOYMKAs56Ngn0czBw3aoHY0OBoOYiWFWB671PntqNryhQLZz/N7L3LLJztFtjTXmexlJC5cqB8haSVJfs0l+3sbJARPunp+FBeQA0043lcVifmWwRv2vImFzpmpHWflnNIZCwYn88SjQaHVDemR3WsWdgRKR9I1n/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fnFDcLFtyFR3LgCC/xXpWBTsP+5twR6T9Kmxm+oc+H4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c1LQ0BoCeZMAjBdogtoEL9BPmEsBQLVj+25xwX7jTc053/8+WRs2Lsm0S43mYTOW4i29MhE/S+iyfXuK7lStW6JLBj1+vCqvxRtDDi4I6Besx7FNdd/EJlHlVdpvYHVbiz4TZ9AYT3MnjKAhKAcei1OacQN4Lw/yjKVzHFDbrhpsyyIrNgYQCwHZ20PVsFTETSLcZMrMWuY7W1PZGOi0Q5bKWt3qPd/WzeEqmXnBgaxMyO/A6iEYLlw3Y4XK6ASYBvxGc/uV+EVgZ7Q4PhAUKx4lDCAto78G/MUwNfmybjl2sxby7tDlgn4HgfpJtTwp4qDwx7o42qrlVvSwFiKZnQo9qn4brFmM49bUc9MS7h+F+UKNY2W5wB6MTjACsCdNjLbaE7m8jCdLTKeWuJgey9g2LbJ1nMDQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fnXN0kff8qxY56pa+bN7TrY5aebX5Yj5ZPCnrWWApNg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XtoueIDQuFNEPoFyODetVJpvWAYJrxpnUtZ8n0aZJ0WA+uga2W/V09mRXBvmcUq+qlQKFi1zqdfoBHr1tGWLabZelZ9a9DSh2himAdKyFW61h0K1Q2Orwy8GDwYdEuBwKlEFOqR6kwEmSwoYkpq3SHtHe/DTBD7vaxpZqWhjDiXv5yhWJrVipdb/5Hg9Ts/sDlpBXVhlfB+NKntVF8Q5LCiv0jmGr1Hi/70mrpZwbcMnCg/GiSzy4H4aSsqmxqQvUGJCpsNcRBXn2/yAxIgHs/jswtbrdUc5H70dfbFs0TiXfnkdmOi1//bcbX998orm/SG1mBBxvjIXYIZmTTg4X6xKnFbhs0jBriYpMqW5hOoumELgoexqpoAcFqM6KNz4bn10rGibdRQQclfN5CqOIG+j0/Vk0Dr/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fneW0M80e3DFwO7siawWJdK30xkB/eXW7anKblWQes0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B/zN7C1/MO+NrOcuEkKtejtXNGLXTEkmfAUWzBKSurjOCrt7cROUItW+EO9uII+m6YV5ChusYDxXNat4HDubImD+Jvx8zen87jnC3Li1qhxubSRiZUQ/nX08lUPVS8RF9F3tz1Idm/2Wg4AMZ49tP/vTa/gF3RL87K/XUPzRltesGV7bOnBHBKMa0UqeIbPHEbH2FH7AkwCjevnxtMEyUFfmZl7V/3ClAkQ8OB092y/S0R0175SEBz6cw9MUEB2mP4fa6sKpNmEs5AHWWFE7QJZ1dgxwNuGwNP/1a8ooD6DM72GhiTnzKPo7ufnw47v1xBkoV63bsBLxYyRuCKw0ck3Ywiru4T/yjT/WfAsXIPm8V3V9Q677Ag6Z3lQx6PH68VThTHrzJ8eXjuW5jRGS9eS1XDLeVOir", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fnrK0zGGamX3otqpRaNNbNPlCGDuG/qILTL7qnz77N4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+LRZFkI+iS3+XscC1uS1U43QEVYRyhx+0g/ylkMonEOsd3uQ4u56vzdPqUIT9ovMjz7UmPBA28lvdhdwtqAxf5lE+dCUNS9b+tSOY6yUlO3Pq9Y0GZTkew9eHIrbeE3es2pYtmCTrfl9z64VexnC25pA0muU1fclIKVjh0KdQhbRhXK/U+5P19OawkW5fMGGH28om/SS/vNtFUeOzRWMHsOsjafcYEN/A7Wg4n24QlV0xN8MH2munmj1k60SBiqYGZ/PH+/3HqzqHwucf5SD6j8EQGkbE/MgyCfCLIXo0J+t/EzUqZZlLco3xmDcxPsuCTEBECi0XefUuCvy0LTlRHKRGR1unjz+78zjmFfZxA2IpBQdwfBkiuajh3Y2oW6zo3Fu22d3WStwGDW+MTrUm7zqO0Ocya74", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "for6X08xMWHOVgnR4Xmm042Y1w1s6sRF98EGl+4a6aI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UUvbypQqFW4ZUh/o11dsEWStTPY2dVpIRg+ve9MdY5z5j1S82u3/7Tyv8MeNweJi2ugqqHMtS4BflW7neteEqJAipHafvHSeUPPWvoXwbYBL/mLMcL/pJh5UBAx+H1GPTo78h/P6weRba4ADi1TVMFX05Neg0RjeX8Qoh0JNKpXJZQC+fPhid97tv0BiyuSH4iSdTQA9HA7tM+g04RnORcJJnx267/J3itsNXhkueR4caW8xBCrmOlv85RCqWEb8ZhaMxZftX6VFwoTqL5E2cKGSGrZFkFY/pa3L0bVbCfvvsePTRPD/pKDU160TnESdQ7Exlmxr6NAaQs+Xclx3dNkgvOznx6bSD/PtZVuFQBsv5t+5YHYZKld37ilHoiZyZv/AD8Gx001sRnNbfYzNRH9qr4up8po7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fptskBHOksJlnNZtqVUqpE8flIHfL7hbK9i/wPS8stI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N2+pFKGFfKGfdxvKLFXDcgINTlkPmQy3Y+wQZO8vnQNZxVUVXPJ/0n2X2LOFiAbN3cJONcvwpeSwe6YrMGwwi6AwH90EfSg0f6DpiETDZC9Bl0WZrUQqGTzo5V4iRAGTA6GhDXJu4yoP2qmsO+1UJQIw1KWQfpWcoY7V8Vj/KK6AF0zc34lyetuzkP3AzlXK5S4vUxwIweybl5lF0YuoMPqxpsugPXZ3CKSor21gSINxwQaLB2NzSKvRdsOgExV68qTkLPPocHanTa/kS/PG4zqwHOzK+40I9Qqu7Ljo6oroWapIz/+XNTuuwuAH0/Rdts6txOuW4nH5IlR423AFpbu+x6TcZUpDLSFjx+RBj+52E2sLW/qfrYd/xDFzk+SlOX+RNV2YDLgIk4Skx0DtFuocmxeadCnm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "frRYFatURWXMYWj5oZG/DdTMimnICOmIvjkstD+rliY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tDeBAPY/5EtTN454VGKrdUZLFs5nFn+oFbNo6LA2+w2eWtLQF3AXymgcka8TwVn0JmUe01tbEW0V67826YPU+gn4/ob3CLbwkyEObojTheptwjTKVPch7IWnu45EqgeJwPYiG1gfx/olNI6FtEgfJEg29qtYy3SC7UTG4KcV3VNKghFM2eF6pGO5V0Gz+4O0kc68Iu6WVQ1ssXIThvyjZrD6DDfML14IZJrQ8VnypZcb7w3YmpBZnbB9zULouifbScloSRdIL0skD50pD3Lt8Ek7ErgP9gTP+XYqJsjT64HJhKWOALtGpu2lRTtq3rGpGR3TDvRjtcUc7KciwJbQ44cpl5kme33Mv98u0XoxcZuGNuL2u6GkggfyIXVPEB2pwCB7uf8/wRUGxmwXkKqhs4ejAkS993FW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fri/xzHK8pLzlMRhHojdpE5nVjjjLm3Fb+dx+sHyAdY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4tZlxs6pw+OSy7YQ7/SSir1iM433DOuKW6qElWGB1tnsJhG+L+j70hIVd2Whu8sYvjN8iJ0K7Zmv0LGxDtaOSUPf0aoXzpU/FDWtyH7PDfvX8hgtJdU4a/lK/hz/IQLNTO8jOsCKYHEs8vuxLpq32GCXvKNKqc1fCY8E3yBYmqEx0Ejxjj7Hr/bCrvQZ0THdXPahqa2zfTTIWHpakU3mP4K+2vzADAICIRz6PYk75jdlKwGNC2rOsjHK+PmHdP7F3rZ0Ov5qiNwrRg4Am/eGVWXhmK+JsyLtOmgDWfvrpzkEKu4B1v5dtjYwYW2mDT32ANO+qi7Z89tXwbqnjTWx9cIC1SLe4+a5AQG5KE8TNHw1MF2sTXorkSPchPGRG8JP8wQJSdmtxAkoCGxE6G3MZl5DAYf51EUN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "frwhQCv+HwQiRVIIEY6Qh4wCkKQb9LAPNnXhVSr+gVE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PC0r1yaY3v5UaIK7aRSdjSyhi1/7e7GHAY9xkwNPWa8YqEyY8qtSdkGmRAlIOgHBWCL1UkGzJ8Kljd0qfkv15UgpIW7nwlSxnIPwRYVFQV4xpVakcZrL/tE28otBYMazmEdG5Ev84mFTG4ZMkVOnpaQ2WkJDf/AOSZxPgQypfS0JqI9IVbuwA1wwTFJDNvYetUqhCdd+KoTmRedpUuZT6R8NEfGVq+xAHtsHBSqHtZYfI/ePmvbXEDLwD21XP+DOq0RmLP2I4d2h5SFT3mFOK6rD64vmfHUiybV9gE0Z/RJDPU/hMngESrB+jFRsqbzYYFpCpSWL3xQmB66cDmndmxPagh4+0i4tR+Z+8xu3BKNm4QHBJY+ntqRGR+MbYsqogMGVMVldLGRlK/3bMFNK30Sy3xt2UEVA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fuBNZhPB64L2nJfJM6ZzM04cePCa7QDmTiJzev1McGo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xHFPqdHscm+92BpugIjjpG4z9j449z59IXbOpgoGTKPfcN93Gwce18SDkZJ7doWeSVHs/v/Z45leZktIl2KRFiOH1O7alAULYYs578s+9MrjRoRCbHQZtvv58u/o+W3OQ0Z+fYSOulExOQMGKLfUN+Ci7I1AJBEcK6i8kExTCMG7kGPYrGa636ihCU+Akz0DSud2hODbezdgtTBunnaqWC4M9S9/aZfQn2oxsl9HC/EtzF2j75p3WJtODCB1OmJO3yyh+LCPrbqpiMI0kWZAvV1lF30gP93k2pQmPYfwWhfvwUxkS9E0LaPaI0Jo9XVvjFesh3QlKZWYtybhZ4DAqR1eZspPRUzqfvmhDzDu6QBzQ5hgiJdj9iHhQi3jsma6OmXolzsiiyAM9SSEQF+2Tuvm9P+NQ8l5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fvC0qySLwsmBDClr2kAMxapvU30ga/WTKmfAl3QeuNE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wHwOnF3TyxI4k9tlxhU3u30n9LlB1rvsaWuoHLfFrEVWGkwHep9gvz7llWlVlAaDaC6MXfvda6WDbzv0yiK08hhcxCA/Od/lO+ctwwh1kVZjNNmO6ol2Gv9ibFAsze0wfZoTjjOU26QIdlLfRI59jaoiQeMtJlxwPWToFfXMw/21Z4q/XYY6DvtQ1D9bKYT1Zq0pm7fyR7nNiPVd4xUZu8vSBs/iK/7ifm8gMT6sTnh3yBHN6sSfMzrh5/5IXRa8quhsVTqboVp7Dh4s31B5aNNpCRiSn6GYPeD6O2kfKImNf/WpoE8HFcvUls8+JWHiV96+YN8JgwqDhi8EU+VJAlxiiD9EibP1AYUGO7d/OB1UX6DRWweNBR9Ccn0v/qcZOnPKVajtPLD4JnCy2s2WszC07EK8YIPY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fwYwYsKCnf8mIyfK8gXnYDqzJwhYOgqRSHz7oKS2WR8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ghdMShcSXQ3D7697A7f+pIvUy9phgtavjKMRonxCc+pcog+ElFJqJ/Kb7qtqphb9DkG6qPJvIMaEFniptjwZLVJ4LpuYVLc6wlJ11w4W62H2CdKVIwmAxmcqmQDhErxqjgl/K1TcjQs3Lz7jK/8obn8UkeAWZj8NOvAuPTaEh/6Yn5HNwjZUUZfdLZKewVci85PB0g+OyOqLaEbpiYluGcoqQ12QL1pkCK8f9n8TPhzJc+uCAMrurS7K91x86rDbMaVkN6f7J0zYxLXqX7Ki43PVy1eADKLJVLFHOe3x9+K8BxM4a9cKYgl0tgGnHlZ+YElpdO5bFb6cdIRTLJr4ivbadJU3eE54STrjLhPvoixT5atBFXbkluF+CGINv+1uSmy0sp9sAb58ZIaczq03GAOZyUN0h808", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "fzunsUMGQOvpjpg5hV7Xu6w5yCQXGsgobo/9VHt22wk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YPr1NQmQpJnkzhaOzdmcWcD4kqczvTHByxkXmcUme6hhRV3rgWWh1mivr81MzAqu/ybsQzdcRyRTSQAN7g3aph6BNRWme3whVEZgq8hf5Bt2bwNek8API9b19vkIpFx6MOyvdum8wGG6CW0l6ZxtG6aJaZbs8xV0nzKbkNFErD0wX2eTcmjyyM3Dh3zXEZE7B7WEP0uWBMD/XtakvVcfHiTz0bBtBy0mpQQ9AbF5fqdjUTHubY/G3NyH341coEAePteEnQw0EocJycYga4fwI9IFlgSQ+2RSR5nUZZVe+MVmznLtS9dkhJB9YwyglDdNUPp2k8tmV0lgRVt+omn+B586mnpG1GM3XuylXChUpHMrNLqR2I3TCN94B6T6YVZ/9bIdUIikj6XiSgtmewu+OHAtGmtQf7YR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g+jKXc7cr3fieOvRu0PV52e8SovqT5qf79dGQdRTDlg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GfHyaxYWq/8kYwXgxexOMM//e3QeZDySii9uwR//1b4RKzLYfAbHEx3Ht4VeC9IdG0a6PQBZ5OMCNYOxKcLFDd/RX35M6ZXPOkq7gWj5VqD6FrzLPtr38+ezIbmsPiqdAlG/uYBHGeQhAxyi6wfRHKJt72hUIKo7rd2ntcz8qKbdjUpmgSRbxLTzUHKNAHFdJ7jsJHzqi/rIKAlFLco/Lx6g5JCGmccPgI74JzJzODslsih/qDBxM0NkQIc7CyVAqpRFfHF40naRTqKO7XfW5ugarzAPcvvhNBo6NV2Tj5u2YNVN8cGHb0++Yr8hmRUrjyyGvXv1sLZG5yMUY2Xy+zU656h3qbyzMtR3e0A5D1GHWaOwKgiSuE0xWBYisSrSRp9x97wkATSbLxAOk1uCpV/chRivgGq0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g/L+eJtpDXb4qAfUX9CJtKDHaOUuXF6w1VeNoZJoMEY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0iD8pHCKOcY1g0+sUpK7K5XZMvMCABrsoF/bHSDukpyrgB3zTo3rvd4ISnYYgtt56ft/7QAco1nGVNjsVs32DFNPd4t1xlySwm2bejyKt4z5087gjIYGr/cwGMw1JC/Xpl8+a+H1+v9YMi6oBfBQdjDAsoYJPpPK6CWpaxR9J5rfF0Rt8CX47vhMBVIoxOUx7kFkIQqMa4g21F9/zhrCGEC6HuJvcPLw5ZcHTLFQKm4wIqEVqVYvDy3zJq4W5RWwamMmfCI6S7T/ijr9YHChEEiP2/4fdk1iu3pdCKgEakQZSkrm3NANHfZyVwo3vBE7N+ubIsspBAr8P1tOJ2hktQJGzrZ2I/8Z16dI9zQ9Br16l/c4kgwfPJMnhNlleJUDMO4gnRDs50nNVi6hIzm2ymfCAi4jUrTu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g/cxLL0I78n06ZeG4idXAguC/mNRjpKNoPNCDNjGYWQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q+n0w+sWi7jF9VDOnE0R7VWGlIVrgObPjmb7ZvNahqaeNdZxUJhC1ytaR1L+aTdwbrJgV/6z++eOHyLQ5gyqJxzgI41zgBQ9+z4uSN1Ursebmb+S0e/k9SVF9wX33V9P5E1jTEywXhZEmmWtVQuTeRz/lA8YlDiq5QfhikrJWxAOzSADX/Il/GbM+aDeh4+iJcQlELd3sGRmAX6H5EA659DwQ1GfyG6uMjCxitfAt72o4Qse01YGD0hGQbnTJ582+q66VTw8hA5PUpGFZOl3Oi+ox8ZJYZz73LP7le/4qvHO4q3rjsMCe1JUjh7g7U6btn4s/biD005j0gU5wtfZPAi7eyNAVg/d4QaAkfD/7gKsKw+Uemrg3/x6ep9CSHpWw53TwIAgIb+syNEJqJzQ7KUS+9THc+aH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g0E8W4qMUSibwAXQq5uCjgxdONbOLUqlN6Bw8YvodEo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OqRc3j6X2UP+NOa/QmESSX38H/x8LHA92j46B0rzSatOJ/Gx1n7H9xDixWPnHOAF+EZywiRNH18eyGRhbqusvGVEUdv2PQ0ch7kTf1B/7O9z/0eGpNbzQSXGxsKUjNP+VgKhHucmgeZrEnE6xXIy8Fv5BXDWCZP6bEG6X8E0Roh3HzoH6K89Eyu84N23bC+w/0fx5t/m4cTjmW6lBpdPADjFy0AbEHiTvjFgVVqvF+5NdTtH94HOR5jB0BGFgaqaMuWAg3sEJcJY6lBJR8AsYjWKY5xJnvv3b+bUpsTLGBtseouvctyNBcSf3/hmfVU3u9fs6J/lXHN7l/TdnmuLjiZGklKqfF+L5gx/cWqpoNvt0DSreMRg2A5wWGgmJPhT/e7PhDQ2QavsCHD1hUEZb7xB5cYZOLGN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g0b+i/JrHoDXYFhL+CsfkgO8j35ygdJsQnSmp2RIa34", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KbT2SlEb+BSbfCDFfGKx3+5KnPaBqOxR8r1t5jaAAT5a2/r+UzweRRBhoiQJioj/tZnP7BvWEfV0CR2VUlDgST4/oRzD9NlI+N0hrFAf/JKThKEVE3+mP6ao1/C1xxgZ0hGUM44cKTf3L+aqwUjhYj1hh6W1ulZ2nnI7CWCygb0YbsCGBatosQ+vGT/QHxdNrT3ELND4NvnvYZDZcFgT5ezyUyRanosAqL5Na5/MEmQOeZ+c7IjXXvgtotFLwiY0mNiHZyH3rG2YpcxEGW0W0oqtI4qULMmYhJxQDTBKhmJOmHPAWwkSV0sKkt+RdrkTkbZY0mYyda6FXgrqAEfgDTNneLD7ocp7XBZ6gqHAzeFA0dgqMQcEHeKcQ41Gl6nzmpnn7ePf3AkIU3PnKr/62lqU4g41ZQm6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g0oJQbwNrN/ygT3OOUqE2+qcseAuOCdC2R49gH3MsdE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "atljY4Fpwuz9bXJJE3sIiHuggRghtSD9x+t7JNLv61R9xmJULCChQgCev5bWbTlKcHAmIciQ9gI9MihVvMshMO5uwdXlrEo3VPntcm23JK7kAwZ8nOybjSH2NcuCUIn8JozTW7vJ773WDYs114qW2ayF/KlxfgK8UMg1exg29/An9U6tngP32LKNLzcXsx7RXEte0nKNeXlo1tL2JiWnXPjjye72+Xu0Tjt+ZZ4AELDfuhilyW7uETjeB/s5CdWr4wzRAjKF5LKdEd/Kkh7lRmr0XZqDJBtVUQ3n304e3u1bsvfr3lZKNehTTE1MEyVCJVLiQrZeqezjnNkIuDXFV0gmVyhQkjwSAmvkOoasajtRqU5MAU/Tinj32GOaTV/WRELstZdGHdLvscogT1bq/cjgHLftYvP+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g15ZwlNRUW0wnh4PRBlUlT1BAXxPsxhFMBiS9s3DkzA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RdQV6QCEAeJL+xJsI+e2Aftc6lud5zP0IZdqxNNbgyGPD9xqJ29ElCMAzIZGJVDZbK/NldxWiNlHl2jCC0BN8bHPu8mvUNN2vC6F7wWvNYd5NJDnZmpLqFWxolEntsIMUXby4lIFolfk4QNf/csPOQ3di+TPfDSlu53EzcDsSd6Yfpa38voia3dLVSjDdiFDW7ddTybWtWMb3Rh/mxxzd9hDAJEGaOImbXo3YRUjKDw8N3s8ZnxjdigYZPmLNcWUf12Ym9yHD21jd70pk9d7ElB6dNnA81OzkVGwKiaYqzwEkTvNiExtx0Q3YEa5MQMJ/BJ3vG7qQwBuzBnkm133V517cntxHJVOdtyahPKTPfglzDnRjS22MVWjteVu69Te50p+FtDDYqcsqkDj4YaCiWyagwghcaEx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g3LmbkbKtGGU/wUTjoyzMTh/aLyuw4iO3npPwp+SFvc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GIRPkdv0//V8P0sAwP6aQxKX/gMCakmJCrhwEg4QQ4ji0GpkpwK3HqQnH9cIpNuHQn1SlaKEZ9Wnql/H50MaKXsnL/trDoof3KAWOMMAO9l+jaFuZfmTBshpfeM7AOC8l61ohRiweWvN6nVIWlPyr90KnOXGIHOvLIwp4qcEdKB1BoivhdVTMADlhMQE92Ji7HbE/Cd8qIIi4oqzD0keYc/9UUo0v5C/VRP8nz0oJPC+cjb8O3kaEtAGD4iWH759dXoNfZNFK/aEm8Z7y59Vv98x+Q+iuFEUNQVHPUZvsSOcDi0vHq+kv9mKGC5FBGEPERuD4ctGn8rv07voDJ0wz0hazpoy8eNf0cDHz4rkPrJ9lFNfJVFjdBSi/q3cQFKF8SZChvH2nkZehPI8BsMyhnpZtHxhUNWT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g3TF8whaVq8A4HJ+KrSjHW8XXgJQc8H0NTxdPqBBnrk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KAVQzgSYXvIXqqatZ/cxpGbkIqb/rjFJqWmcC6VUsrxt4Halkr5xd2rvV8fOAsLG9VTq8FsjmiDIV6oIt0TB5Ssi99MmvclQHRqOURU1VXgyPCCsiaVh+BRXsWueRSLDq4PYo5kCGSl4E49QCKHNn2cFEhqpWKsi8/S3FX8c0J9PdxvsTOXgp7ZSMGGMiSK5oebEAqZ8PPGoHjxyVqou4e5wryYSDKY9C9K7i8xpIsEjwQpWD7FOsE1ETjV4eKnibIepD1OkVhSRrNnpisQqo3fqM8rmT8q3bip+H6YsHHNC8RJXnfJVg9SMNw/AwyuS/JaXoskVDtalYrKBOGQyOv4mA8rY6pBnQs6qkvlvSBU+CO87GND+5v0mPeMpX3o8uXC+Lg8qWjAEVF5vbOJNMGDZV+61vJMv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g4LfWY/PZfNM6kNxL5aMgbQGXmZeFXs+z7ZTQ1DbHNk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "La6i6Qfy6FkNbbp+4QFUnu9nZ1J+BWVBUjjavby+QxnZHZF5ldON1Lm9QuxBdZM83E4CikuetOpSNmR1BraufJLspZhFGtjAQmZyyrre3/sVziTGs/z12l2H9PS8fVYoGj/b+asekGr7q289NOu/0Dy1Cu+TXXV3wyYujmr8H5ejTjaWcT9HGuxLO4XMnKMMMFKFXbBPhYQliVWhYdHjbtqQMSwJx4IaX/muwJDHi6a0v8YjwrTkbmslpxplHPgdKuZ6Myu3RjfxdY0L8xmbkFlg9XM9TvowRCArXV95pL1jI52jJ+vPyweygm10W0i1Msn0/vwbUyivWRmITdoVbPl0DhIFToNuRnKrMiuTk8gETxWTl7xiDyZcWqYOyogJyY13CgnD3Xdv9tiz9A5EzRaA9PFeIjv+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g4Sk9n/7VLzlUyUOMDM2zpE4Ec0eqUlY1sHj89tkrM8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d3S5oGRxXVENT9fxYZs3wa2Tj/5ohYu3Bvkdc+sKA0mK3Xywz/YmtV4MQcWF2xT09l5WsvI8EMM+BUU7buj86S9lCzhr3hMU3VmqU68WM8hOaJ1C/u+64Xml+oZZcaWtLLRcak8kF3vZY/JcLMu+DnPZn8GH/KgPx4t9y1PWIzZ2acxUWp+ueXr5nqwwn5lKLPM6WRIwv+kcrNgZivTq+yf5y9v6uHMcc6nZQomZ2kRz+WQMQTc5XEU0+DGZU9vpv74ppSCvlxA5dIZ5wxw7Rx7MrMLXQ9P2C6om3KJFbIn7lOOjTF6OHG2jXCWa4S8YODyn+lT/IHrjJjj/JbHmaibP/TJpE9hIMODfYkm70+JzUxXPkZXIY1HQ8duWa6F73lruv7BbCAQIQHCHQ+hZjMJUQCTtswd/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g57dp3Cfglc0smz+tjZH1dsZSrQ92VImhd4iwiAdiMA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UukrCoCt+THO6ZEqenuCxfSqL6bMctBTrViePqVlukv503p/5oY6yd0yrXJlfAMQ+/oUGaTj9IvS1W2em52w/7WgNYELYkNw6QxeOIW538ZS0iEV/G1wLSgJfuSx3MVOsMmfplQoOcPpeKJ210as7U6WFiISBYNL++1jjyIxNeFy5vfaAsXu6c0+wfQcr1fUlw0UFCibXYEYGo3OaasRV8J5qWYBnwr2+6BMAnJt16nDbr4rrSOnWDYViys0Hasc/BFy4AFTgR0e4Oeqo4s/cTXApem/Eol/OjignejEmvZqCB0bce+mOel0YYys8yKc2x2czE309OHgq4JdPqcy0edKV8uOPQsON4ASwxP9zkRhTPFDFJ+Zx5BVxj4YIVnCGC8ePbFTt/ouGu9Wi9zOK0w39zVy59TG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g7SMnppdq0k363gdcGcAjqscAB99HuSxsvY4+oJ9/vI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DfvO4iY5DotuhXaO7Ntpdu14s5D3py5Sa12QHYpx0YQuIfX0WIYnsfVmJoU8j6uTmR+s6KFR0lPNXAMo2KJ2OGahb7bRbYLI//99NZVtlhtrSDwf3YJpTon/6vtNYO9ipyYzfVzJdHnDw6EL3GPm4qOgmX5PXFqCCfWgd4+zc5sqq6vvhKVcvK5u2/sXf13pH0Ucm/O0nPjG3Er3CBl9fJrmFpCrEcI61/aNppFNWcNRpO68hRbtUFGWSKTQqLn7XAmyKn/o2nrWq3nsMyemFFnkVkbmZsUVLtL0Vh1/w+TPxErhqtG4Vo2GOgu54Ao9lRunhEKDJAuJnVLCX9dp6TnkVcC22g/bWktsNhEYOh7n9RD35HEFMX5lvylD+dX0trg1GqN67DFC6vq9UAdK6pUJCgINK3cf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g8RYJAQfQ+YIZQh/1qmS8PP3yuutsi6eKvlc2jwkXi8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZB/84cSScTIajjWVtfxy2+YGgNu5thNHVKD/wjPv+43UWMRUF1M9UosL8x4G4+kfIdRnf24ZvP62uU+HymT6e6Hs36Kjr4ZoJcy1UlqM9ULZd8fkfgomg/CfsbTTLVdmijpspkaySjDgffcs7piI8qez9523FcB5ui6bE7tlSojcHh8yvwIv4+hq3uNcxjDqToa+gSTmycJLtYqUCz0Klq9zGB0rXASSCjCgmBBXCuMNlNxbSC8FGUHXnre/CRwc2+AcKD0UX+oQKbOwlngaP5E4m0qs8U5QIl1aSDmmsp3NckgxMCRBekcLNglQblt3piZqjAca1TUK/JXOy7THfCOJz6Vpsv/FkEmd965HmZUnGLQnUOivWHnWL82xNdvNCsXzVIKGvsuvg/VTJ+6370S1zHulz1CC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "g8a0mji+wBN9sIUDP0KsI26cR9ZTL6iDNtTRgJ1M7Ew", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qlzsR9Ots0lpk5SmDMSq9zU6IAqBpqq19c/AH8BXoOb0seAQ+tE/EO4VdeGClm6CNR9oo1ceOyd/HwuSKu8Vuqk9zBNMLXMgz3PmIMUvYk+U4G/zSloPkf/nHKWYD/keujgB7fHF/7aGrOdB2+Wi0HZsL3Pg7crXc3+ICDpFc0FRxs/3u3P3ixM5Jd1oGoBdwP4IqXH8mRscYcme/H+8hxwmI+JbvC9RZHiFYc0xhA7pYkP6RzoZgmldrmLum66CW4xmWMQD2aE0oRyRNeanEEVDnnmyFB2SG6e8p9ghDzWnP3TpE6OAVZ9FfLhC5oqoDplCgROxNd1GUdAJVCHYNBbmYN/d6pHD8cbI8aaDbWm9HT0KTNDiURefi92Pe4RcMDOlbGVzk0lpWQMUDsRdZEQhwJy1t0AM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gAnnZnUUqISILZl4voZJjDxP4umFCh8oM2kbunVHcBE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/hj0qj0qGV42KkjLcNme3HrXjjplytvw+LCyqTlcMTnww0kZLqknPkNehwjSCpvk6fH34GX0GPx9AeGVp7vo0z4BCSWWlZrO0l/9OD7OgG1a3DsiUAarcdEGjfpgAZyB39WSsNRPHPzbwXt7OK0bjHQBKbNXbPYGEIYbB8Q4mzkIU65Pv7mw9Cem3eV0fFQ5q34sWpyYu/BfTVjx7q/Kye2zYMaq97XesZ0xDR8apfLfrb8q1fzrJOmKv6a+f85Y7L1D5+aexWD3MSYZJYASt64xao96pSyPt/ohhBNBLj9g8EUqKlWIwxVc//G9yhv64bej5sCN+YCnWh3hHWK+AJSG6Glibr7YAOMGub2mwiTpek33U3DadKr7j+3PA7FduNEcdOsub6SGGQRdewf6wKfEZWThPV5A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gAwg3l3v5qvLhf3X+cxg81XNrR/g8LHfbJM66HNCyrw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Gw07w9V6bNXo9KhLgRSLhFEb8dVz+fdUxPFmwKNEPg2mX97C8M+/s2TeWbSb0tMXb9pZzCe841OQV6SaGrzgalkOHgxDFKAZ5J+Q4B3IC2Gy6N/Tci2Qn/yh2pBGdsh06koFetKWQU1D/YMr89HaqefxtKF6RhL51R2t/fflvsCsEWqW5TstIl8ClXZs5rpr9D3zURnOgb38E057GacxsiTSOgAVMMv9VD/kFsBc01DsSrXwbv09hoF2kyttKeHR/r05o1eLPnXaxfU9lqB+jlvR0eHYxWaKqibtKAuKXdiCzmKLtTpg6b9VRVSqQqsOCNbQmUq2b7A6DeuEbb9FkGIb/3MYwekFLdOrhzBIctTEKaK1OyyfkM3E4HVJMZhm352chIq6YySoNWprszkdRhDz1kmdEef7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gBt9HQdeYNqEwZSdsIRq82sizzf+aKIpoEKhE79AXnQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l3KQF6zu7t7o58qqd3Vbssf5r7ruJEN3N2xHUz4auNOEDUjlsL8GHZ9Zhld/YzvMx19o8wUMtNEyETZ5jnn8D6mrFC71MY1VugJ+kNLh/l+cInCjAhrU8QEZG5qkbTv7uzEoxwadbMiS1pRU2y2bsax7cnNvz48cpBsU4TePFa38zu9xcOf2Zp22HzyCP/Q61EjzQ1Isvt85OmOOwFc6m6JH/oW8dEaLMQ0MDgPjXq+7HD7/l9585Kv2DD263HmPRxVXAMSMk7E/2ENohX4zkwoewrG0jYIyvU6L+oyqLhK31LY+Td6qTSXKW12CyAT8bmUSOcKF08bGrgM5oXB5/YcKiGeS344I1kHa9bENIG7NKOgUpezxsiEjJm5mZMuhLJ66VVCCWzb4sy+eXAgKn9ICCx/CG5/y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gCIGEKF8KIsCuwF7tM5AMoaoCKVMu6SiNbS5+CwSUjs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/bQUrgd6MBHRJSta2CV1XWZR1VfZYB4crTYEMd68Ul8Bjv2Ai3utA9ohN1oON8PYz1KwQWzl0gH/HTFY4QDdSGvEVlRAXQ0IUZPrLPGFbr0tqSMIoIeXlHTCVA27GzdCzDDJVDo2tw+WG4EqOg/x1Hcwu6QWytt7SekImUl4AovWjaexjfMH9/uu2FxjhB1T9nO8uyZoeWyTeux1oqM4AiHdl8do9VI0xIBlt9CuzZYwCp/F2nHE+hnmAdfIBwrjs6U5DUIttZ6/s7ndueMOOxcTvTErfGIRaqbbUJf8rC271yu2CCGl7ZL3g+loLUoNiGKEzTBNOViFOppD1MB3eYIfBPxJChF9Xdy8Bxravz9tfO/cffFb5VKK5LOFBD1CfeUOCqZ0rzX5ZRYH/ATNu7Cyrb15Ntu/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gCT9KMPxN5flBtd+JG47i92GpuE0UXW2gd/RoOt2UFw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rPcki+zo0vy4MTWa7NPk4HGg1E4JooHbGESZX6vvxIVzT3l67YsbLAVWhCmQxjz1WLQBsPciMwZMcgINl6+GRXMUhJgrUqTHjq2/fbhmFv1VPwx5cO9SJr+6DPC2TR4J+4yyzmi+p2ktFUclHT1YVn98e8oodPgL4Aiv4HrIuAEUi+PGWJRUhsH9Z+04+J8x8kgWz/de5rViwzb4SBwk+raOBPhHztZmVtRLGoRzDZwEITVBqtEv7OZYXUUkcrJ9Vx0C1dRoGd8NfGq7dndvyQ5VZfsHS2Erk3KhpM5Hep0U6cNwZ1ngUJFck9gt0BAyev/OfYEvwYa79vgzuPghGrSzj9s7qUh4Ukf2tB1xjS8tzOhiJ1rAbK5DPNIPzIoreWuzCdBm39yIrieaA0RdE3AU2CUDLEXL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gCezqXUVGA+X673pol6d4umHfh12DuIOcmbs/a7wIgw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7sB4rwZpd1kfl8s4cy7z4VH/5amBiMrz5Zty+5gqhEQC1M9uaVrkM5R/9eyI9YAeZLsJ1wfKjHgWT216nZz0lEUw9pnG/s1JdhG6m35T3sMQkynUuT3V84YfVLTJCkrIX3e3J9C9SMHuWjaVzggkQgG5Zr8160OOyyfvc4d/RWoe7OAOh1H1x8dalUIP672aPwJGlHiAKzlXM23aGRnyyukBb0Ixsm4cvfeVs3C3ICyQKnwUyKuOf7Sfq7UyEIsVAZ3DeNdMQBMaFN6ZRfadd26xTezafTj1AHWxRgxpTZYtYHFYQOoTVFGYQcJtTcvIudUwylola+MlN4irQsVLlCqmQ8IOe8Z2T3CHn6L1fz0iUD5z4wmTBKroQVt7ZBBo8i5OZbgIZ3rSzQjQHGvs7G+KLGJdR+7F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gD1f0Srfssz91z0JumvRVMexFOewiNElOs+9Kv4okRw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DeaxVu+jdqdfLsXbCKlZtVPKtDH649S02a2Fs7G8i8iosKW48wg+5BSA/0jsKjI37ixFgJ8ZgkU3sFEG1k8KUmwkJq9mjQG1g4pJxcgCpdDLTYhzBUuiFLZA9+niu4fHMEnvlIocdKi0OFrDCDCs87z3o1FisD/yhF7a/1waYUk3zZunw/XGUFW7XmnR/aqc+rEJ4zPyMxZL/5TFfJwE1Sadie6S80yYi9qjr8AOMzYeGC8k8cFR0M5URau3amHb2C4TW8ReBw1Ku3t+gIs6XCIgy71lOlGkh3erWkF5fmErxdAIwdXDTvCpSoHEjZ4y7lEO47aVi3RHs/Ta5XOWCZRgvhE5N1qDErAbRKGo1O7uSLG5wsD5534Mt9Bu6ji9To8C8TC8xO3ebL2T3RbaMeA9flKyLUyv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gD2Fm35PlHmAK3wazdFoABZVrWRp+D3KzJ6EWb5o/xY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sLDDX+Xb8XAl1ebZPOUIS4iVj7KqtEYK6FYZxSJsydmf9A7AvzBq94hoy3KckDrzjSm03eIehf8MJh6vroQpPSjHwy21kzqTk+dfJEoXf/qrep7J7ETp3LnnA8n35sUFhGCMHdaYMIQhf0ktopIoDTO+S2ZkMe5tcGTTsAl791QjQjq5tGLLhR52goc9FG7j7tGtG3yQtyxHij0pec2ut80WCSQ1+7CxOsSPKTugAxTtAvXHa3l2bPEqFSJ5iJDWu30l2y6kfbnms1NwZOdQbTDvKDpEmG4BuCynL31D3Kn86mnbQQrnXL3RotfDxauazUASh1KrxZ0F556j6XgN2dXg0ebBKli9zvkpRc19ILrc9mNtksLFlUMBCHKB75Nn/btgJ+5WBY+JhkZDL7Q8Ti8Y5VGX43Ly", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gDrdEFMIBg0Lq2sUqHSvRiwYnJi11V+P7gEzt+BJZDs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kCbaM+4sB6NsHm5XKRBxaD5UheF5gHPbzFay8+IVIM4oDzb3wZrZdY4UvB5ja9tmEmRKRoCTUiItBFWb1zMGFxmJL+1ps4LkwRxGgko2MMz55Z7eYIGnNpsQtNb0bL6UGxFqfu7r3nvVk969hYwv/10MuCeDKN1CJrRx4K8HcdCXjaLWhFQQ8a1IsEJjrRV5zS+Es+LsiXXAmhqWcgin3OtTCfIulKB+fIHMwPQfyWD9uevT/u9ZIEHRn117qyzLxAxYz7mEaViB3QBwVpBcrNH8GmKkrzUNtQ2SVHamZeWua/9EHJyhzlv/BApjpqMIk4DilfEcmh1mFCxCLncS4V8uMZgfLk015/MNDTt+JtcjPjfMtoOg1UcyfJGo0NFq8t08Fi6yXDhTfz9cyVhBKgcKsM9gGPEh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gEnhrDCtCigVJES8hbO7I6h3FmS2zZ7RFLoaOW1UurM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N7FD8+wDxsaglGVNpjoO+K+vGrsMgYTkF13tLo51xuhKkcyLZMzR74IeyB9N0KOtBkjPN43vMxaL4cGYgUJW0qU0kkBUWtziIuc4aXQjMwICP47lf0hHA1A0wYzkTzpPWljdGcPwQPCWUIQiIvYZcfNl0EGqOMcfselrqXLxDfMILEcJ4/Z1W7MXOmQzqfR/UDeP2shZmVYQTNiY9f8tN9dLVw1WPeDLZBjilv8PBaGkB72mdp/UK0ijEE7XWnotbjNc57qLJTyPa/5H54jnKLrydweUdRr8k7Xa7rjqu9RCqkia9oJI1GO/LRDYujYW2SGiJcbQg3zM1lJl55Ia2CcOIaI+8zbwWigZlkRDYxJxXlKmUKclEtt2IXhrk36DPT2ApOzhiUT0uKIp+tiFEzjL/X0HDFxP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gF9a4HzmVIZ/v22tpcy0QYoQ7UVEHUg4cFGPs08X6gY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "feRzzsWE4uh/LsF7mXhfAAu1SRwNGGe9qaxlFFlpuMXFlUPUKwpeoTI6CqzLFTx5XNrjY4Vrj/CFohsgjPoCxXKQzpw3nRYI53JY56hv8DC6Wp8wuVrImv4iZWSD+4O9PEGOFwPG3WtrE7EtbUaRxo1SLtPs/Kep3dG9VwoJH8hLBSxF+drloZqXzOGsfP/5+RHkMr7reamCHpQZ41X3Yv1x/n9fRukv9A6r6sEZVWiL8QsIjgBf9oHwTOefvPZMIUXL03vNy0PKCLPXB5nBVF52pfM0VlDOZ5dPx96w3KLUYyO0cUZ3keAnScRrYIzmIKGULkst8pCbL21lKy77cmeUwf4E4z/79nDqTPHBLSXCxZ5yFmwLPjHEErVaT6KoqsW11aOK5NS/ji3J/LK6qVlynAMb13tG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gGFS5U6UShSjLOFA10MSTYR23cygOIScQpbj2C3v2wQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JmEyYj+15wvpaH6hOTVgQrKAqlfzyQ5kYSw6HOrM0OC1kxBvfqLqhco1cWHQkYOp5rFAm3g3d4hsQS+p9TckrUu6+KkGW/vqfs38JN67NMOgs8CgORT4VYPhmEWIhsibi5iMBA6E49n3Mnh27DAVQORoeft52t7dfQ+DbaELTVGOi6ICvfbp4mStC+iTdcSX0BV7VB5yzsLHm0q2SecXWNzwZjp3wjg4wOLvOA1CRx4IlOsadr/oQa55qd3XoAM/hcG6n5uz4f2WIZ4rB0usFlcjBg2Godz/CQTNMV1sVKSirrbDb5rqR40Fn/b+2LQO6i8V0ZzMhr2U/IIcuETLaKQBpdV57EM7SBm+yMMgj/5+8CeXUwTTvLNbxBNT1NsPj/ADx5qVEbhrh8DeLuA2j/NUUC9Eajt4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gHwKNpEBGCEeMrwdmvCWJ9hykX4ihEpp+AHsIW8gZP8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m6Pv/kCw3pbr7qZxBEMrt3lmk4fYMv8R5P7kSlmRSUmFgzH/IKnTFjEml5+F3rhZLr1t8Co9eMe5vFH5T/siHYD3B5OYRJp2xCA6MiT5TXKnjezeqRs/K4h9hebClV6PjxINMIuudslhNaRGzMdWEHXEdn80Zx4Gz4a+4X1vkayVNW9lYXssFlgpOUsGgHnAnwArHo3PAFyAy3sP17L6xmpsDV5tgj+mT7nGlLxx9X3vzItiliZIhoZihXwi69uwi4d9vo1qHkLk5AHvLgZ0KMWjyDOxXGd9ujWBbGeP4psRl/ymGN0J+pB3kKJNsLRMkSNtG8ZWkgDAtRJPlquds+FiyrLIEzX+l9Oh63CgSPblehc1ylEhdZmqyJ7BgbUDZoWr0UnOHE1wbpbxSgsS14F8tfnroGXa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gIGF/4lvP5wtw+F8U8e/+XM25zq4yffZHRxsTnK9dy0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DZpB7hp84SRWutKRRT1kV3rzDhvLng/clLsVja3LLgHzfoY0s41KLrEYcsYMX8z8gUhPwDjS5ebe8VYxMG7VgKtyESgK1696Usz3JYbMFb0Jl/v6C+ZdmjyTgkALmxTpIzszFOG0mguBgFx1RDzIppAeiJgOYv14wmLJHXrJVJss+O4EmqP+j6RaMAUtHyWR+0UqQ6tKYHYYLo/vB8VtyYGo31i9+zrvd2zTO53VBNiKoVO3n6DZB4/XVtn40I2wxvjG0KWYBaRT4c3PQXrDtdnCPr5+1o31SWwjxZ9/Ot1YTHEwZwZkyKh9cQJm4rY12As0p0xRt0FOrLYMkbOE54gkbQ7xTAeEV1iLPRJ3SzJKGVSa4m88AJci5OK+3pDVfZ0O61CKeUvC0fDzfonq4qJqOwwTePE8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gImfg/b4d9qYOOb2iojbc/Cjx0J6aeJHyA7w6L5WYF0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Qmg1acnh20iHRqHrvXA+38d0z97R4CVF/sPVHUFUGbfira/9fQWeb59yzqheuwLUc3A9812Y+pWgECVkfi3YjsNE2qVE9necAFnuryRHmyTDKsQXPDnZhK5s/hBmJaofvevI4RzPjl8HCQoqNlxVpUlG9ZGOPmn06LbfWYoFU6pMCzWqX+dyaw15m/sGKLDWZjULlbTOoIpUaSCXaNzd72bjMKi422zS/xq8/TyIy5ogcWhUdDeaH2FgEN8WLffAaaEx6o+kbOFG2CoSwpcSCrUJ0godD8WaRrMtaPMQrpHj+GLcFta3ihCpFPu/J5l9jNLDKo7KkDzjCkDYwR5Fz7J3pgcvopwMO/uBQ5yHldjyQvmZF5xdtckDWE59II6BAsdu9b4qVYD/t3HBmx2Zu6uDct1hP56K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gJqgwlI0PNB5mbAXSm3p0U0a/zl9j39Dl3XnCNSZrv4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r1c6hSztadMf320v3WFlRYCF2Aimu+Hzvcj0laFGD+OF7Bpp8u528dzmaK2pw1d9lDqJyItRfexiVR/z3jNL+3RQx/B00BKqJ5joLT/E62I/ovP2yUYGOjhd2RvcaNawdMQXkrqIlIbBxFT/Q8piim80eOcmFLvFyl9VWhQP6JjpRSRTakiWKf4X+lRS09FtxWM0Tgkm7KzwH50SmbBLlzNoa6lb3VGZO0RYiUPL1CF0fQFRkbZLnf6uvuv+AkFCn4/IdFwVzU5n81SXJOshIAgVL7HBEhxU7LKlXSCFJ00u+FZQlUBf/Vvfi4yrEhjYysEa7efGGgelaM58IoLd80nep12dzpE9MAXnQR20AQj4a9EtYb26uKeb+T6V2G+kc5sAePcppFEvhVUQIL8AhQmZJD3kXdOL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gKFhT99WgjCCMJXlcjIISmVAzVdRqyRNevy1ZYXCifk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B1lSLFdYQQVWeLZU3pYYJs7L8dzmq1h/2/8yuPDZt67Dx6UMOHppyRaqF8PCAURbk3ksdpJq3tyf0A74nxWVM15SrGUdlKAjcArJpZs8scSRdrxCq+08b+ZSg/AXTW3QF/7Lz9XVAAncEI0xc08yNkcbnPRgI3bQTpgZuhgTHjSsOtQkRZOKE4duHP8zRWLUQcLG9PeIsFmBGDSkQsS+zzu85w3riWZfkv4r3fv6fMGiENlTuN+/pQP98HqcGvqf08bdIdUAionP0u52p6Qkhj2U7jud23YxlA/o1nC/znmk2Pmn0bJouRbpiJ53CVR063YVL2t1+G/6ueir70uAOzZI+jjo48WZ2hD5PIWIUnDgQghIcJ9bNhAsSRiCHGWrdOjpSDrtX0FfkH9oEQ1aRscvPSR79+4L", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gKJRh2cCVqJawBkWQ/a0a+leQxrhml1VGe98SJnVHBo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FKb6xXezdvpht/fjzvowv0o1Jz2ljVzzyq33wSni4fM9ZiQiYqV9mGIOvsLxgYTPSskMjBy9DGZJFeic2wn7WOa7cDF4bQpwaDztvxv6SgCBp7+IC0CzFuIMubmC96YMoBzXplbemunsipKETgWz5ES/WK0aJcIuC8Agavl1Fs/RACAXqRB6u6h1rwkx895+RUyOSrCdPbSh50Q2WS5kdSey/vPti0eVvQKdTeZNTZeV8asq6FZpFz2xQby9wb2zJfcZJ+LRn7rMqo/1jB7E/K2/7Wdq2KK7AikjOxIEeMhsFT88ya0VX+kERCH+fJOQkpP470mISZvwOmX4P+VKF/ee4aWdWMsB4R7ZAQVKtIFvBeqdTqrZVRtKG8VH3mB24BIuy3ubvVqSGse54aMTRO5460QHDbVD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gMeGwUsSldrlJcgI3LeDxiH+VaVHC4ETo9lm33qaDTU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UNEIVFO/nZ1oX94/fJQBcy9xn90bXIyswI+oHZOTOJP1sKGFD49b5N8lqyOxwLW8LACoFrcL/fjlMRUfqA7rlXs5NaqjlLMgvHqc9cxV/shy0e712JVd8pP82o0GwGgFqwLzawxtV00jSVYpZb1O2Qq4lwhJcPfM+vNZV097n+yjLQLF7ZzcznCbqx6s+jZ1xEsEEE2sENxAY+KNz41fnjNAFJo7nvVPhYag5Oo55lBVbLsMIB7Xr+VJ14XmJARIJloTRLabVSxvroAQcyp9WwRV09jXu3iNQcIbGMezb2OuQ0IKusuSx7EFaOAdwv3/s64QQeP3xLJfSQqQTYmW5VL1Ow2RuFm7vGbMb21bag/OxmCkCJl7rXIOG2yMWOhkcDDqQrs0emldDWNXM/auDGN9TR7HIP/i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gOjZehUbiCiiyosaYaQZWsUZzF5oTX6fjIkp0FfzInw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "K9Bbl5WtgXE6e5KSmxTlG9dOXiwMVXSa32JM4x6cmdMsUtrZnEl2GQoqUUpXJUURDaxlOSOQerCPdD8FSNxMnlKNDeYEn+c/fyRohmzbA7pekiQhNVR/TtzUMB+yLpY6U5+Hogln3mhgrZsR7fyH7Dt8XoOdvu737SpXlu2HmMmlmN+YzjsQUS8aIXmezXj/khKAZMO7THG1NjhTQvZJjTH3Ed2IqhwA50uZ6TI4nB+5jTGSVrP86JHH9i9HdDDH6v7Q72BXaBQqLkdSgJT5/21p4dM3GqHolcaz+aS1Nrr3BOHC6oqi57tnZs1pcOmlbJur4AiCeU4K70+X5Twxpdz7Vmv2zjbTKduZf77YbvhaUMdwaisECbqs42OdqXWCXTgebNHZ+QuUJPWeYO0QS7oBn68+YCW5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gPK4DrrGNqQigT8j1D4rbyI4jHpgBuxt4hc9sWLP+rc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AlTqaG/SSehCDdra/2dKVsRb85KWFuwHgzYOzffyIJdWtUt6x0PHC3NkAmOEVrXVtH2PZnFlHFoeJqVMa3kroITC7VWshFQeLl3AQbo2+KMlOWkT9ew3RDvfpx+JOQE4Un3LB6GRxfjfKEROlzEnoFvdVqhoDDHLa+uygL2rpyM/kTHcQYDPWM41ERyF77NJqtKsSTx5tIcNzAgofbMLzt1Wmkz0FcT7zsZG1Hu3bFCTT282CAv1H6+br8gMcRa1y93DcZbOFiztlsnSsVR5QwXj/vBEhIxjNCrt+PAptJaceAyAlHENlSy9KnO4oJgT3sLs/jMRkUYXuQ5abrUUf550GO2kWoN6gcpcMVMvjRHy5xODLZo/5Gtc5kQC3JIEtDeB99AW+qAOI+PDlO8vkByaiRituWfP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gPOdnO75sM2LVObOxDFVoMBnNT+5no6/ILOEEHMed5c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NBJBtArNF4pZ5OenSanchSJdfU1AKqKe4Z63EzcrORlAHKNi57bh/6nd1Pj0Ar3XlFzl8dx7DdEMI76KAhhhujVHnlY8/R0pUX5KSO/47+FRuFGgoVZStjgvfV6GPOSJBgTKpz1FZbkCiraRjmKGZgk+/ri5gyabHp1XK1wKocL9I5hE4GKM2gbtErHYvH03uh9StWMi2SVAPEVtDl1poWoXo9e2rjZFdTBcEBxdbM+A13rUa/zy2BFMXyHVFe0FJ7SfeQQYWLGYPnU2mZVWZUvB1vtp4YFUHkR4fIQIbZGBXUt+RMB++ir2OOLrJEYKa3sw2xPb9KgAjiterLBsT787Lsy2yAUxrre4FwGMKfJxcT0giiXURJVewatQnkDPwLxOfdpRihlhXb07h7OM2IzkOKzEgAjG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gPeeT+ShNmH7yfX/ocpkcSruwZRD7y41vGYOvNySoIA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2xWXXZwG7E6cyiYZ+xTSoGc60p1g8wZedOhgwJbRpW/NjtWzGzpq2qbrIG+h6fzNtuOc+/OMKRtEUWVHO7StZefSR1aNLu5HBxDAJtA/f+aCxNXdQ727xRW6kTwFytqhFalMDm0KHjL9ink62ioW5Kkjhz4/q8peKcZPPKQ87baVIGEnpk2WMFJLngvOKRQSyG2qemzXk/VACWT77yfzBODyGNDMmXotS232RXTMocSxbK9nNy4zPg2bescwUPQqPUF3+fvYK8PmrzqbfLM+J/zZ0eTlxuf2c9evV1KW10YLhjMVJ2sqGxxBhVVtU02A/Md7EXN0dQd5Va1+qbf/JP6Ixm0ng/yjthyQR5nH2QjlQQcburzaHDlDxSzjLgDuAhODnW2+hZImhANO/XJU+p70cxbZEDOf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gR1AfQWRPysSt5d+seTrUOfJG8uYTzV92iKjlijyfpQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AHGjjLlfsJZ4mbWTCgefk9hyPzIaitrJ15NM1pMUu9GpjJraaXSf3NUJjOO9VCfEcVYvadGCdq0d7O2xDY4BW1yjPdTUpwNNORDHuFGgUrFFOqlAa816Nlhz5xF6M/3FgBNOEPiKDNXW7yB/9IDnbab7nId5k2os7Pl0b0D1ZW3Vpt/AoKL7d4b9bNdq0EMy8cUgzPFqoGyXU4v32aWMLAxf1GBzkgupLT9OIx24AqvyqWsxe3bBWU2iIKBOtRbA6e5XP1B20n+5bSn2CWi7zVUBtoWYmROpLqyffU7I+KadEUk4QU/vMQMQLi3LHJM0bMT+LjyYUu7A6hypvOwhpMmOoaQlZJZUqS7/5eyivGcQ4NZIVGsSJX83Lw+caLikQkwRTU4+NmTH5CjEJDZ32TFlpz2dRSao", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gRBbsX6KuRjXqBue3MiSYOx380q3V3I4A3eCguXxl8o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YhPiepDyLS6TVpfTzvbwxILGh8izB3old7exRWk5eV9CW75Hn+eyskCYIvwc5DbSyg36rC2vVVbIfT6RG2oXbmTBUpoLRCAE1ZsVNDBTXh9TiVq7fa7Y18fj7yffTFSnPOnSgo3lcYojXdbo7VzzCq5ZJsMSXXy2+EtnwgntwSykz2RVZxWRRNlg8WDtXr4pWUnpxwqFBdTw1sr2IZm0oHJ4Mdtun0GbpT9fZ7D27mM27DAApQT27s0uu2tsCnb9xyEoEZh5d6cHxHvqUyOZabPTetAWIvLeEssw9Zb2DHU+S8ng7eKU+ZWmGEFlxiuT94nOzBcIx5M6amfZIQmnAXcKZhIyv2Ehk49G8W/STaM2A3IpqcHQdlJB871cIhfi+r3LkAwWHh5QKG3DFNvAPvBBByhV63by", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gRMKffDgXMEBerDjiFvVKKwxHcHmfhOcolb7+bmtOA0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XO3ccDirsNIVINFgntgmYBRFr6d75mKmOaTqQCPWP55jBuNexwQgso5Gw4pklCeK0/YjxuREXYGdL74BEp6I41uOX+g2HqFQhgF7jZZJ3l05wGN9zpvMENZ83Ryzoah+QVW0Hu9ixWRx5hlR2veHAYV7eqlVWA4mieHGnxY8NF8QaUChLGFKmyNN9MXfAa6RZDSKH86P4JWgg+DQj8iXJbC8P8wUhsOQyQZVB3XNaMvpIiONKvU+bHp9aqZ3u6nJSl2NmMUAmaIN7c7ezXk23CJOpFrWe1Z9aIZDnHHTfHEEpJvtQG64Njrhhvd7Lv0hpPR4fWFKritNhXbidaQl9LILVr+w2bhrTxvWY9ShmzI0A63cz+GyP1FgRforpw7JoJTgTyRkXSzAvI+qkkfh9R+AI9YLO3e1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gTYYPUXOU6gKKK60uo/xVVInmXv0BBpbQPqAQxOeh4k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eKE8bnIEfujgdHR5+/LjIYfaWpl3562R/MqrpQLxJ0Fm0gUBOtKm4c4kcQ3k5oMoJSp0IPimNYnlcQU65YJjS/j2ciHKQ/4lcc/b2B8FuyftclqXwixMPJE0lD+ud16gqDISZ/ZLuRW5km46kg6rVqBVYSudtuzBNK1ESy2Y+T9lZ0xr/WaQIU5NwqhbeW3eSJ8/9Rs0BY7zW0czAxQm9MZ2tYYApxky8EJkdP3fHxv8FQGQMsssjZoEO5cINa1H1XXaUVh8YmLSQyYJzWDcLegUhtIh6Oa3neoaJEurRUJPKxhF+GNro1zkhrNlYIASgF+8uIiR4+gx3HWqw/L8sRWUYfYzr9ncUJyuLnHr7SJxohJZYG8M2vKPOQtIldsK9jLpnE0ZwClnhCrVDP/wSWs+gjBSBeVD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gTdy3cvuN6GfSLH/m/ZkVSCnlQ4iChIDwUXkaU1pDvs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RQjdT0GxeI6WIY5Dynemn784Vu4SVgqbLkOOjXAFFMYamGgUoTVHbk5Mmuqf3APK1/t5IDtoj7LBqkuqlZmv3ylAoYgwyYWmvuCorWYGXTbQNKTr39BXcdFVcXoiCJXScbCHWi5YzQNiHhToGHR07KFDiZBGxEn9A0ALyXg+/dJu9nqWudrOTs6P0+8YlnxJMVNgpaCHLtGDLvSRbTuKlZrt7Vz4MuVERyBPj9PboxbjjMDfVyN0n6eG57W5vuzVEFFo32pcUn4+KApMiir1WqBQdjXHEYA8w+c3d/WiGWk+7uWDFLjCoCobqQLrd2uCxKdwBtJOj1+6IGRfgrhAIdy+XV0HB9huyWfoLybLkimW4nXXIPLwXfvfDHCMcfKa2OP7+1gEbMA8U0hfSdQdxdZ+j5U93zHg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gTkMG5PbBFSunMJH08pQf9IAXislMWAFHmOsZfIP7gM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5zjZlkPSBSfZGG8Mzfe1DaGHkFQUv3j3KJ3uNj89XEEd0Td7k2rJ7ZirzdlAVRtviFug5/ec5ksdlMrZADe89Hv+yHwKBNvlsEMisILB6wgcJ2VDqz4Y6+eWac41Ree9/oZmELztcLA7GUv9Ndi/M/XfiC8qKD5ZfOLpYAKXcJfLTpWOUTLeuyVQaVYIn4nzywX0bDlBOOcBXxFrAsL2C3BWUprzrc2xXUXM89cShz4q/KdI4DhQfoKhSChwrN7MsOggG1/qwt8fjPXh4reKWZUfbqKLXzHZobcpblQr5tvNU/ZIUIc1NskZ/wT8Zbr852O1/+/z8gMgpDTg1WD10pTT+yLvxYYW6Gzic8XhbdIuuNQfUBIST/oBZuqY9cBjv97g4IWJqJOY678dum0Qb9ALIVElTK8e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gTsNLffarOYtUquF1ooKxH5fcXpiZrmFsimYpt5LXSY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+8qhmxXL/k3HXhXbDUDCIzSJB34rw/0KVLlBeH3Qkx2JVVSnt0XllRr7fserpW+pP73eQQyejKMbgbeBi7iA1I3TCSUkqzZQ/YNbrbNsbeh1pOXO7WYhaJDdvm4U6ztJUVcQmiTA8MJjLYy9jacyw2n/XeQw/fPA9WZfTtGuO159yk6pRV6VSGH0m4f1vpOSKXATqaYlmyDyUf0s+04lbNT/nM3HGr/4yXd8K28SUaqsxildLWaoWAmqnjEbPF04NHkgXTn2ujKNwint0xBr5QDQBUWFeZlk2reBZ51UcvvQbXPTVLEGYTFj/AIAr/TY/PUKgqBlZ47n9WROpbdk88nO7IyTYpZR5UZudLBJZvTdbe1HwgsV1jdHftqNVt7uOI8CeaXSQJIMymX6VltGHyOWYXdt6fb8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gU3diJ6F7ChX+h4vtw1SiU3xcCakaSyheADPILUFy2M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vuIxy6UymkbXVxpI8N9HJiqA6saK1RpUlROVoJoQ+o3GYOENUxTmE0TTPXkW5648p5ybEaU9bm7IlUq6grt6ad+AzA57aGQbgPk3nPHal3aO5pjccmfvgLQhYUUOEFdxeGPXLcsc4GCohOx5PhnrWZAARZqURrprlNxcCl+IFIpnF7eVt+bFBly1jKIza92myfITUhKGxGLm0WoTC3QFSEs1F3B+t8Hs0n8Os2rDg56KcYiqDnOMFqBbDXqtw2Vh1Y4Hd0eVJmGqzehfus4Tnb9Wlz4tQLWwMYxkkSehuGo+WHQT9boahEmib2h3zwd5kisNJWXpYvPAHQbGOF2GCMi7mxrbLbvdvj2HE0wgcA7OKln5Jf9nUxn06vliGTtO6pxQnYHuV1S2HePJ0Dkwh89HB6OWeGqT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gV5Q1dAjUMk/RqONlyiq5lohtbEjqaL889nJtrUAbcs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LAEw8F45hW5nJj27F8FtzWveS8dVALgrK/TisRJj635duBxXboCmk0Yn98/J3FvphqhyJArZqW+7quIwbhe8HXzUEv8ZCHx1Eld4SX5NKQ0WoO+ZvC5hZtmBWK+OqxaBVi7dgUpNCS2XdCVfqydMxKz1R+MTfJh1bcPts0UPTyNaB4GTBZyavLqxsHa+bjyFE5q1HTkju9ZtJiueioZeXHsUtG9xVDmPJWcjeoC9Gwa9/OsGQhcbPee4xqzlh128FtS1TfMIgHrBXM0Ijo4FcZ2KtsK9VYn3YXhhkwP5pZWhgrxA7vSupK3+QaynjO125Jvhgk6bggBYpMin5wMqJ/KrEyYn4L86rdGP3PaS++A+ZVWqxS2zJC67xzZQ0jOd3Wnrlxw1mxVBnRodXof/P+0LZqW9+s6l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gVqm4aNWNBnBHwuWfnUZmH+J7Fa5twHwhgrsk9atN9M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A3Zxt1BkV1Q+atdu67UXzxQ1gwDtVie0pZZwomlIABvDpE+ytlkyzBcrrGICfhFfsh+t1J7Nod2Nkpm/b4m6csNPv1gg6/ko5SLKopTHaJgkfzCyBqQUBcQlF+q29b5oKdNB+hAjMqqlGheMiUZgmCzt4K/vzgV6gDPYyvpB0VB/SRg1M8Qjy/nwLu6O3sqPd5xkgCAF6qcp3lZzNBlJThXrldWTlz9+OspvRAqmJXb+ZPcHdWE+MxXhybq3+T9I9qe8jENzD+/9Xqfh7I918LtCOdWstL/joXAyhh/DxLneEJWLyyStN33KNXdbTk7kiMt9qnHf4V5L2WKDNV8PKZO2nfUxYKwKfGTs2t1BrQQqLAN3ChIIWaAfNA3s7zw6BCfK9hWIKPds26UhDrOkNc2lsub/duhg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gW9JorAYQzwiexPv6gnZG/NwaCiWGDAnD78YwPRBbEs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WlVlgWdDsYNAhFe+FGm5LKPpnhlmk37kV5rHmFzoESpKqo7pTWpvUQXTmto4tupC3yDDoZ5MDqgTt89pb9v/1uNsqVxLUzSYRFaYk1nkfUrRIU8MLltGSkbxyCgPrbQJJw28IOFaYlO9ZAjK6I+UPBLx/Q4p4BBQKxzvgn1eRsJTGMTYajN2kG205P6aZ5Ar8/kxaaACfxFXo52AE8qTMkL1KE7YDiRIyNs4qrGCWpixo08llWuR0KisM18n66MoeUNFW+9jg3NQ9FmYyGBBwbAehDuyIRT3Xna9l2+u5hvvE7avATM89ZdPYwhlrjYJQorTMqGTfisAHdzZ3lkW6bEjE2taA+mgNVJI7IE9SeAeBitOsz928fy7h9RT0wO7QwmsV/U25kJHC4xuS1gcB6Nf0aNGcKYN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gWNuHqRPW8kgy0ds+xyg2YNCgTM1L9w5rg4Vrhxp0KE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2lJFMJxZuVi1dvEG+5BwoHIVuBbGg77ChAWSLXJeg2ZiZokdoBS/peHGAySHg0my+ZibqNsc1083ekwKdt3zZ/vyYgzZAxf1noo6kUlu5fIIIdyrk9DmtiflGoSE77HA1cLfI7nSWq4xWMFha3iLfN9M0AIN0YEvRNXHad0rCp5d38TXjv1oPFNrw5dT02QupKeyRrPY4Gk8UfwYz/aYofjThLIY7xWU56y3QAq2ES0Aa8xvkXbQvPtQUHXxALT+s5hl7tTr5IDm/SYrGckkxx0j1uRN3n98mTA3h1eG1cyj9M182a95+GU/NtsctrQKpatK1yvIY+vbrZ10p0RSGDmLe0tYV0HBCg29pwxW+jZ2WcIfSeL6BvrSwKROwq3yjBbROCZ+KiayxANaflupXBUwGE3mtTsK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gWXOXoU3HxcmCVGBCjvjNiMX0pshM+hFwdfyRgDD4Fc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pk9iBPGZb61Q8GOrJmqKl3aQqnLj7hbnrcw4fbBYp4mqgQX/nA+Dbw6cQ6hRfpYAvn37OTsahdWynhEMqqMC/v4ohI7p3W5yExKFkUQQnOjdwwnP9thnQfo6PPJI29NELz6CyI6++sbc7CKq3KbUVWzzUj2NWI3ZdeZ6ed2lp9DWMgkZ+mcXz90iUh+jrkKH1NEUqoWD1LUeTv9PypriSYFLUoOwFejXgXsrZ7R47rxLogeDu6yCoGFzsi62QvH5pyAz4N0BkFnSmWOhdfHRyksy00Sbqn5IPvrSLzKy8CSTTXxQ8hHMxh8wP85FWbqwD7epyiLzG0zsyQDdiBBnPkxZ9NJRUm8v7+VG+gJcB6axbWCQmzf6mKi70NQdtD3qNgZXY3pSFPQXPvl2M/R86Q8RhIf2KT+E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gWe4UjRyQBi55zcYYr/MEHgY3Bqsy3rHbb8eQ4xqUlQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Xtf0X8evjhKczeP6qw043BFHrlMKacmxErgAQSlIrLtWkImmZ8RUnuf18FfWN0AKZ+m/yU9SsDzK+LbW3t+oJ9udSzRy+3b31awHG2H0+deMnfQUdPLqXlRzh26xyswSR7XCQIBgUUDN+EtDHCTZCGaE4/eGklqVo+MfLxMGXv6vl4+IQoyrB9z6dOGvztNosg/bTcs2B0LhUHoHMRxwIeUTbk5QBqi0b3DbWGIP00SmPSu5oTx6HjlG1CYLeEioO9PqL9AUCmvxd3Ok3WX9FFriRUo5EMrM1BLvr+z0GWBUw6AX7hkzfByAc0JSE5W3gLWDro4QhSoFVrXh6GHbsrvr/+C5VzgYqP3PHViSsLEZa6XzuDCrqzqzzr26GZtowV7j14whTt+r3d4s+HjOCqeGKZgjnAQq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gXNSXXubD5iSu+fYyHDUhFE6g04gsPEnqk4c3pxHQq0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HHtg2hUAv2cOzdWIHvQARU8c8OCBYXIX+v2TZh7xdnZm/CUG7ReU3hlZ78t7IQPzlAiPfGTYEpsTwnrxmiXOgazAjBkuIP7vXlg73bsd/Pa4gfLSzcRvyD+/TAclxIfhajnOVJJVS9n0Yh1LdYAk2x3XUW5zYW4XqTBCLqSwTpv4nj2+pVyR4AN9Mp/2SUPUqZ2iFicOHkLSFxc7u/oQ1rjsZ8z7OkrkqugptareLB/Y0sfFLtwCIOKquhn9WFQuaZXRq4OceCpiipjAb90Cd2umBtK3w00Onlt5NMM0fzTmsiLcDYU/HFIFsBe63CNe8LQW/McLJvwGedsGTUfl+ZJ2440PXurTqUB3hBFaOYbXQL6mRQn8ySZdWx6e6DFiTrSku5MxkDFNYP+3bQQNXoCeTUbFcAoh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gY13YZD0urZzll6d2Eb8OMrXOGfNqVrh2eJFX6yQE2s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Lm2C1wtJOSfU0UJ2IOziHTikJUlezhtbWfK0ZgdjQIpz3MTvOGtolsfX6XKsmbnN1kqfdeE8bC1862ztg9Lqqt6d3ka3w9dHPtT5d3PL5TXUOcb5ZzvOaOM0Uw4ZWOD+OTwBazMVKwyhRvC9aWCWzmboLu0q09+29QrG+l6b+jKZixMdsjzOZCrp/sdz0Y3qASSWexbF5NhffHgLXcGrU504Qtq7dVMcX7LL5WlNFZy9s0I89Bs6w7djQbuxx4dA/mN3XMOzGWqUG/uspTKocibSU4gA+bY+icp7vYK+pQs+7L+3WaE9WqTAhrumFVtCVfsE8UacTAkUzDEPKuYJDxg/B4PNEmHrrh2dU7hD8ZtCrOsIXWA3gbrc78SsMgcuMZj1NB+55KMxzJsSN0QRTw5uwas2C3db", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gYDe238UklA273nb025nk9mO/HDossjLQCV16Zdjje0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DZWU6BM+MeCRtHikMIPzom1fFrwcUZYnBNlmxG8rvta3X5mGrnmhUwXy2ZBGd3AGfXjLW2j/UQjAd4GeWEJvmfUYn0TIdB/oUJKw03Le4z9G2U7iJtFdWbHRWRKr+PXrvmX0uF8tGbHIz5aEEcU5VjDxbbKDmjM7ggKqfSOYfsMND9aLqsu270Hj/+Kao28K5OZHX9vc98XBKTIzMRUkEPBsoDrR8B+zaYN0VR97Oea43Zf9sVxFvuJOuT1hxkFo5vgAsj7jJvojR9SrrDRvEx8WQegxToI4syt32ycFM4LEIjOqjAfdjUas0JtwO/dD1xS0j1pcziHq02J6sPWbLiaEqzmWbo+BcMARD5q+0q1N+e5Uk1nxWEaheBJCVvy3dGtArR5YanfmIcFM81ak+Q/SurBER/Xs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gaG7okBcS6eYxhmjR94+XKEPCzI4FmhIr2RvmqkhCh4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EDoGuclXo9IaDH7mYEjM3aK/z5hdl0utITrBVhzTCBTOjoSd7ThhQvnOcIb5qcOP+u7qEuB4JggcNGm81Kt7TFeQnqr85c0R2z5K7+DixIJfpU4lp3ifY6Fi60WVqzT4ga2yiooiuMYsCGLyuklSKPvHA6/KBSI8fswExQMYB6CbotNehpgdNcUoKw9w9Q6EiU/U1r5T8NO7SIOWM1xzjs4GhKfgSfuHAH5Eu4A74IBE/YJSoUF6TMbzoZcUzrD1AJllZD4v+sNGOpdairbO9J+BN1KCCnQ9WsxTeDdxd4qVGa5arCEeP9Ugkb2sdSj9iOPjRTiXcOUD0QG2Z2gSb61tZjWtptpgafON2L4WNX9qdxZrGgm9Wzsv9YZHq9wjfYExcE5k/zkUq16tKaPQzh4BjACmI5fD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gb4AKxS8wf2e5oa5rgSXWLKm+wp7FFJ2tiSaU1xDSa4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qMIAVm0k8cLHo430x45bEVI0cnMWW4ZQmMoJKQ1qL/CKUE+vfiykE0LBNZxW0CbQZP7NTBk66v5lGGQSpSY0QaE69Jsx2LT3mWKYT5HSsqNOOoI6jrj88Yx6/R2l4X2rpr+GIM/11O1zsVaUGKzk+/OV4oTr8ldCz56PzoWrs9uC1EuQINej7FHiDeCa9Jd2h/+y/5lnF4lwOYhNF4jvygk7LGp37NarXcQQiJE+nNBuR/FYtvoFz0aJSsmVZhE/LYvmNUMTrm2X101KHzV9jL5dwEOk6xLGaVqHR1bTaGNs4jzSeadpbMd3kKukhQ0NvpacM7hbgnl+wzLiXV4mNlur2Pkt7IJGpAfhEG+fFm5Gc180OIgF1rtRx1+K2DSx6mr4AxxWS0AjVcyN8WucXCQJWeyQVOUY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gbQk7ZSq3FOAYB7ZRI/pvrELAqiixmi80hA37fY9+yo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2czz+aaqjFoBl32e7sXuPzJAzXM/UcCG54rQ3CNj5Ddaop98eMj3EmL6HR6uAAFSjPY3cPYBPczMgQvxIezIrCt82Y6BYJ8b9poiOa4DOhAdzCH8qrW0UW4PJhzbQbVMD1IVlpaPCy8xyCpdapII6aaJG1ID7AlVP4TbYYzAqlWuexmV9YDdlpMmcZrzBgNHRuADKO19cusZmFyI+Iz594aZX6TtoGqftcyaljVmwZvUdUwWoKVH9ztieWtxWUe3XxuMFnb7Z9cV2YBIytKj1blbnFdp8JjP1UOooIV0/ay1w2vPjx7RhukQw0tSnshyEhF4erLp9Wzz3n8L7pBcb3ynQwQn5kkJUPvXazKPg1Dbfu6w5BFtGpDjnVlOcmjhWFqJW5m7DiE6c1VMbh06xwHclnSG03od", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gbsMK9dXeiWOxDjdKxoZqEfCxDiLFG+M6P140s0mQsI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zAbBHJL2vhtN87lbqx/GxDwrEvPDMOgIHUrOsP9HRaNgFlhgWjvItxuPIFzFp29TZKY9AuSU26TNtOOQxX5Qy+t8XfAngEYUJR2rZp5IzvLHM/CHw4CaAV5rPpoZoCWzg50tai/7V5f2Yzi97gBuLhzQi14GhuQIFjEaqjK9M/HZtoVzU+Qq49X+2jsGapVC+ekTlt6P2Fclr9pW/t7H4vsOJgrf/FzPnNlmzHxbvuztjcw01vuCT/3j47M1c7gXw2rlTJtVMs/uj5KwAcPsHDTQutDFdO5R2PwzSnIYRluoOUk/TFfh2uyE9V8CJdWQsZHwJNguEG++LNS7JBP/zysoGynKSX+84M7fwpfOi7iGLUEg2YSCXJSNe8W5B9hu70znb8LivGILETGM9sOpStVHSmMRAe2/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gc/U5GG4gNnNWKXqrYlAFWbL6GzRiuuxw7wglTrEp0o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6Hzb4FWF18hEK03q0AHjWQ6RPDenIFsMYCDtTlr4d5+satjbsd9M8mS+gOQgGRotDCk47SxwIy8y1a7zLQCS01orko3fXv1dMIY/znOsn6PccQKisM6YPG0+cTKdXjP+r4jWiE/8WLYiQqdFVOsW2swY9y+PaL12fMDJMplA1Lk6w/bmpK65e7XFSoD36csFM1jYifhUHzQD3m+11Wluz84cdE1jsjBe3UGTm+zWCCEAX6x8g1/NPnr4Vg0CO/IEsBocZv73P5p0rESt8QytxVxnrqlHI6i0+ajSOWAgtZqJ7GJsWWSI2MWrjLSUMIGorkUECHnPH+2r/SmjO9MjQYEnq3+jnBFgdRVk+92TqvOuwTEex4ES2WRRRqhGMpQty0MJJ5zNWHgxpzUYmuL6V1eMLYwr9FOa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gedZBEiSklOwELcBYiJWZudnBQUaCvSDz3960HFCzKw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YycM9jLB8UgCWPVOnFSCYhVLEgsByStEkDKaVl7g8L/47Ae8vmoBG7viTisEJFg38ZTrvzl8bGhgYK6lw9WXZX7qEL0Feiml7A2pdN+SVsomKIM0ezRJ4Wp1fSzHlUZy27W8mD37wJFwoefcJ4bWVUR1L0lsVuPknUMD+UYxEndKpsExfnIF7EfrD4+0uqHqKN7Jxg4t5E7NO9zcv/XlyIGKsAjV3i/5PDKPjY+J66t+eduGsAg/wv1L8zsUb847IIwBdMCYEM4ApR1xPN9eJ4/Qve5E8OLCZbyC/5HFyTVMNGiWq672haw8DTikzvIDZY2oT0J1qWgXlo3EKrl9f3prWKPKRBZIZRtrWVcVKFlkASI3M0ZDjEY+127hbNFI2f1RTrn2M5GhDcxxAyjtD+M0TnGzBTZu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ggAdO5Ys0D5A+2sEK4zVDaWzEkX1FlQu9BbF4V3osfg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A1aSPTZqbgMeVy50Xh+3vU/i4II5FIU7yL1GbWy463tikkJ9Us0dB1piZmbaVxQj3MCZ1NmXswe7zD05W5u13eGcHhsjTn7ljgMMaImYkpi2bvfwQfwv8qVCZHtUp+4jIqxIpYTYgKuAS8wXk8GdYpcGLKMjYuTKRbqAVExx7aHjjsHUum0q9wErFOqiCuBZtyzpLc/2rBS4MKyV5QgtB3cCVCBmBCCb/jfDRPNeedqvsssDsxO43Bc8iCFLY63XvMt0tytXPHjPFjrfmVAfw+8W2a1X8w28EjAuB3Og4JME99xGv0Ao0fOsCvccrYX4iQonZw6WGSOmN7Tlj4u4wgMZBXwYGHZdgm/kwJALivFUmxDYXEnZkQyDqffF4g7dsIk2lZDjneoCmgQjh2ADumxDdam9aQc3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ghGYa5fNhoQ961RglOldJBEzpDFBBRTkQbCQ8EV4+Cw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sLEFMozC4eI1DW3SFtZO49oqCiqYNl7964Q1Ybug+H+Vjx6HwrgKn5A4Y5Vxw7InZD2GvmJwv7bWTmNgSgvszyKgX5rg9zgj1n7PJXoMa5P7dkKyheR3uk4uVfvM3t3DYKcJJBv7JSwO7zKpPzxhnORfPPHdQgo/FD+JvI7QsJR5ebskN/Fx/+5Mer8q2gKJkaEbu72Rxv8EDl/gDVQvQ7Vj0y9S5dfYvj3239HIKUT3yJzqpAVwfSqpt96Gss1pVMTjKrXHPXbC9O/XbbFimeQx+039rqW628b6UfmBYA54ZyB6IZdCdJqdRcOxUzTbH1+PUe4CTcXS3NLJGcmjEpYw8mR1fRKfv8NPGTzEl+1FiC/Ccn+AEEEvekL/xl+Qkxh91OnyGqqf5Mtr3iLAyoJr6xWiOSwk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ghKoUDNAVMVQWhzSNz04yQlssG6JTY933tKLGI1uTzI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ko+JDai7a1gp9CwTA5vZsETmx4DJrvUp/oSSrvi43gYDZNro6Lo7q0Lt6KpnXU6zj4C8rpUcBBb8mSSUdXKhgdPB10gvtcBwjq8wEEL5qqKiHgn36jiuyatM0aLeYz5VoH1qUIyaUlHZ2tdPaLywXWsWxgyy8pLTNQgBOQSRymuz1460wULl8c9h9AQ5jPqX8YUcxaVjNanxYYgwf7iPZcSfYfHM09XFCoX0IqpnRJJhF34JOlAiOuT20YV/9wchUBEPEnC/t+0JU7I1YCoS9XzrRdI1WzMnFfiGsghdKyG/obAlU676qbp5Tq+31uMtokmHAFyAgQKznYuWEZ3Wxo7nxMzK12Tce6s8u9pNxjatU4jJjy2AYUPo1VGEcOt1ArOwAK/uWrerJp5gTAolPSKkQe6xyFhP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ghOLg82DvGe+rKhq/2pOG110PJiwD9EE5uJT0gdIFAY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ixtLRne9H5icwidUMO1xtbTkeoxHpt5+l56dSdc7atDXQZ9Lpyp/Q1zUB+5iZIXT7ze2UnFF/WeRzJn+Dny7Tp5vMnlkYpCFUODtFCVS/q9jNnjAX0PupBUrJw/EgjWQjqgRWmAhr8RWKpgl0FlKF8a3sRxdpBJSmj352Cs0e7wKCymDNZIPm77okrIk7tZopJSAlXBtPZ6hI30h6gG9mKaP1by9UApTGztgIrua3RV9xcbqW3OEpwC3lUEDIQmbsnADXLH6Ha1GU7m8/lCdidfHRTOtzIMFpZ+rmRXyoOshTMdQl+buKqguwBRcrH/vno2KT1otR10vuUMzcIBZtw4aQ/5+2rDcnGLxZsPI+CA6h7PrB1DliMpPb8aFjbsc2THQ6TFyJ01pNRbv4i90WqUPMEXoCZzV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gm6IuxrUkrgRd8kLcBH9YcwZFNDCUwp02ZL4x1eKQ/U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i/7CSD/wGyH1FOCZ47/F0+BEyJ9eja1adC0w/+cEGQhZV/J1mHOdLIVvYXApiP9mJN4egVkAG2VY4t7nRNjXP4qOmMQzAuo+bbKLg5RPAvWsdaLvSOndGJ9sGuAqISg0ousSYbIsSprx7ugejCJLDveungALbMcZQLqmuH/8pwAmz7OklcTugXlR9QPL+hise86BXrQpWOwhU3iMvl/4HsJfYuxUqSYC9ui4VjUlNdagrjg8fzXnEyYpMJqyRdf6RAqFFqRpIYybg+kWMq+to8TakVXNObnNYMxqKNEXF6fZDW2q9jQCGAhqFrciL3fXe0/WEFidHTiw2K7IvUl+yPBrok5jzjBa8qPxZZW7go87HezxyvwSHy4LfU5+8fyLERwFZM6u99G4v6GmhaK883kWBMm4ZWfC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gmGaq3rU9W7SYUaOE+OjNuGpwbdCv3oR1CaA2V6oRqg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wYUrQ0d23MB8UaojNqZ4IejjZkvHAju9Q/+3mOROpmgbTG6NY6zvcqFv4v7k6JTc/vJmKpakNDOrKzf5P2BWq2FEdClX8IWvSoSx+T7b+iOkTFSUoWEkqenrtOeHdjwmDyZR/YWQM3RfkK9FdemY0N47nAOd3yUlNbkH+D5v8ZX8eO4yNGc0iyZ7JHM6Z3te974bY4SUNJobX0gdAuLoa3D/LBZ34Me1ZW8dK8AdzpzXXwgpPVZMoik61Crorlj3ktVS28vtB8spW3kCFBAj/hqoSc8Wg3y1A+g+kotrayG5NtGdc2kU9ZqxuK+cRmbsbHQGBSKH/RQwx6ZXZUzHEFwfIlIkw0Q8HAXKYAd+yIWnxw+HwUUzQEEQQQVdLAsn5dfHt0VaCKP9KJZnIGyl4WCbCaSzfhBP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gmxBLSSjYuKx4A7iASNfVu3jw1DC6/KDLYR65SaWJpQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pF13NWaNSgGISsutTmdqecSA3gAx3KJ3DWUWENupY9ezBg6IndFViSyunouhBlsAmXpkQ/0L5zL77xw3691HvsDThMWT8gCW7riKc2TXuXrooVsZhOzHGww2aE1ChQ88Yoch7CkMloYeDOLHeAUFHQX2d4A+xxjRal2Aqc8cIfmli40FLSon6pC6XAZEbjHVkN6CEl0ii/1LeP4Z4nw3QW5MAqj2aB+63PnTTBCRVGUMNpipkaHj4we/BQ9ys+XCqC4p/NJvQlUXqaU5+N1X0X4Vvks7yuwDHI5Rav98ReXKbSkh3GLMuJvpnuHSaWIBvwFXJOUMf3DFsD5P2UTHLb8PqP+b+RvvW7hjvXhnKkNrKAZmAZYBiOZ0nbu3qNXA+dj/85DPiGCpNgHmFDZh421UKxSjN2uY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gomsuoHwbvre26Y1LBTC2CC3IbBNtNXaLSjW2/9v+dQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vkjclD7PwcDHWkKS4ViHYeE+wKRNQchfRyfJBPSYPqCPATj1LHeryfsdUc2klNyXblutnLin8yBCdAkpmuaoxtIMMmUZyB3At68bZYxnIag19DEfOx0mGS7RQvGBPMZA7+qvAsDqwp85j3sj7uPU160Tyep3cGsofOjTt58gJvvIlMX70IgjDTYZIrIv3dENj3BkDuu8v4wEDorFqvx0GoeL9UQbgroHqazcO5CV9BSKHLOxhmC0PyTBLMlPkZE5/or7IlZVu5PjVuSyDlAs2iXxxVjzP4aSyw8jQZ5M9R4/bcC7bHZD9dfP+6O59Rxbnvb8iNF/JebqC5z5Q+EtEPePoZNiLNxLEnJc6+qpoVx6xpEj8hwGNJpNd0ALE48qFo3GxE5MTgom7EFXGkq+wzbxuwySROXY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gp6Ucit02CgKN5/+yL9D/ISzQbNSlKOM8xCpkNNItZE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yUmg1oI6bOASjbEn6Zm7H+1Y22cMTUNwJwr2ssDd4aG1goKC/HFLBHlqegllrcPJo5xJJ54CA9PN3gfxLre78omoywuBOVaojFxI34MGGvd8rjOzsObaUW+LlhuuDsN0nknkIMSsXGPkW6rXeZnxhNULtDPRNmDPdDukrvLnZyu8J8B0Zdco4ErPcS0cGa1e9pksna/3ycjszCoG2e6E04WDXnHmh6tu+DLHRBpCw3+s0KECDyAoFFBylJTg6FP748jdDhVCnqAI8hzERog060g/uAEwRn8zHrT9WuvlY/znB/2PLQn2l9P7lhzlwHWZi86qdPYJKuFXrmyEQtj5/Os2tIwCCiuKxBt2E+ElJqp+1pv+WvyCTLaxKUS0fEa994ucLNkOfslcBdvItpI9E6kmKESp9Dra", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gqv04i0AT30Z1d1/k9DCQmzlzWd/zjq2FVmjHjrjVss", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8j9s7GvgdC15pPL9x/gJBrkJRXcB+8klRM4QRsoNnN43yO/vR2v48deoVToR90MJYaPlNf+7RsA3riE2Lbg8OKIjSVUvtbO2yaxb/Dpm5fLAstzhCIZ/5eVT7xBQzKPmpN2L6y25+y9Ce1hX9nqC9PRl4V4kUmLIsoi4hD+yIPR/ipSJAr97f0mqBrF90uSMLdNR3O1orDvji0seI1/fgw0rfmWhPazoZkpgLcwYXjAGpXd0TtpJ9Y2sVy0V8G95xWO3Rjbzx9ICRNCxrbVmL1uB4vNEDQHlF2oK2cgOei+JASvlStvUsJ6jOn2g3+bZ3R4A3nj+/NllPwKZjY7voJLN0cboA+0JCHWNc11gk4DgXcanCOW2YIrMxZG5sdQ4BggOzFuV1uxoCJ9Zm+5cddIOY+ZXL8v3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "grNJQhZX6qTG/yQbtUUc5w0hem3ZFHQXGnwWeJvHgLA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FSOqintBWGSLhmwGqub2Mq/5noW0b50ZWkUAxBJaU2sjo9l4pdtDly0aV84bUm9Ry8t5Ct2k7oiUU+5CJg0QufEflJfAv8HebcWwZU5CWjudtYa3FOudZX2VSjOQSDqEbgBmQNmCgWyQNx+BunQ6fENFe7swb3grTB5Da5TXSPThj6BtFM0ijFlYa95sXgcBBZR+BR9HVNsffmPKrUU4ig+/UA/VJyv97dniADTSwno0JVpkAuv7vMuKhmCIIb2/u+qdvVK3XsuwjCF/mdtGPCNOWp0mlaE10mQe8woF1oFAA4ftDVfFyV2C94IF5am827ham+OUN0//fpr02AQMaJCcY6Rdn7Jbj1fs1wgE2dToeFQixzIwelXh68I/c7F/L+0nVP08Ucnssw6vjsJNXATJHD2TsMPO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "grprTnuLUqcIA/6nt3B4JusQot9RfxyiZ/BrZROUZRo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JdI7nvm9hIdBccZ1qfEPcrsPnZ0SqpflF+sDghnTvAyAx63L1fzTZBKBOWfBPlzB+QsjcSYaksBhnS6DEeo+G4YbjVMiQRt7v3Rn6JWRRNSsmtvOL+ZmM+1FIUzQFJRf7XZcv8ic9Add8cS7BH+EldEXDmT2FWogFj69FqXKztdCff6qY1gQWJCfV6zEA88DnjO3PlZFqZjuSVM8EmGO10r2IX+oQoM/qzxgHvP5RO4sEkgWO0Nn7lq7wY+ay1Bn5IpZ5Lfh1TbgoZUuxkMWUkl6lH5vkhcD/aC/IFayNaWG1jrddHx2Kbqml2WEDDKI0gMoGZzfxD8Xp7BxtJqBJo3TE4+MeZvdUPQCA5+uGLW/88EPC8AWRoYcYJVjPUXONAZFdK2aJG2+kyfTl/NWTT5uq05u7Vu9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gtZtbcKGCUvxxeiZ0wh3iHww4uX9tbkvcCaqnCh9l4Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ayd0suu8JCvMPPXtn9/hhei/FT2FqgdJT+Z+sx1TJQ90BRUgn0D8AoM3UpqPrZ0OGUHYbqt8nh7AaVnihzZfObgpsoXr3orCvUMLEDQAif4oCXtjmeQCm/+xfYXJEJA/j6SgIKYfzOOFBZOhIED39sU5ZHFAzLfAmRIz3/UTyfZFDJhfsu8sU8lmPac+cdwle3+f8dEFJX5pTbXe8NUiqZdE5fE5oyjjYHdotrxbIUD08Cwlpkvd05lnspk6kpdFtur+Bs2pjb1LioHKVDVYF4ZCGNue6ll/OtzAkQZAqsVDIeADkmAR/XP/4dDyMnf1fPIdVM7L4OqAOez+MdFxCpEqHiw9TpfCwOXqGN4Lcmtvc34CL6HEi8jViCnzumUHUQn9XWVq4xpQqt6Th1hkaSW81U3QlZ2z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gu+xIMQL/RD1rigPKKGnmskAKPTsl22I8Awcaxbmtek", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IiX7zdg8Jlk7xfXoe953u0tzhdexq+IHZLRm3Wuzi9rJ3QiZTxpXa4oMiKZT4ROByoOhSp6IIY8ZOGA72YSDwL4fo6AW2poC8Nw2JUNKxyz4WBDM5l1DmlkSRff6IkECmHJhKOgG1fevY+Rttnn1YDv++6p8Js/a30UqX+SG3TRtYlbJMz+KjwlDmWoo7YF/Hfc7CaPmKlJxBqjqrqWqMncrrWrMFxHvtFA4QueTMpITBaK52XozHwH8duXiWjvRbRdv77y7xB9ew/EvX74FnqrcTj+vD2yRTgYbuJtW/0BmdPsy5bKKJl6GCAB240Ow95j8Qpr266T6jCmW9BzNmX1w0i4GqKvUFrP75nmjAUiHHOmtVG+b759B7COpqPfY+Wkwzyw1LReGHyc+WsOAIrl2DFB1xP+m", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "guKafuFgW9coV93uSNa5LFS3dMsbMXmQpNNSSeLVM7o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lF1YsfVBVVpQLmLOFr3LwYLZZjiIL1gV8/1CogRkak7DTmNnpaMYz0jSeK8/go+oOQKa9n7k85oa1n3R8w4ZnFs8aInbuCFdsw7xQ/mnwSKVgDxYpV3Bi/DB8XLIEVI7BYOdP/CxRGTuY2iDHVPLXxka/JjDcXP3m968BAWi1sC2sZbN+OhBZfCCAGkjuQ5uf2XHwLdr7vClbHnA86KefLP64c5C+Oejgw2wN5ytjqtP3YX/eUBNqkE+OLtFnQKE5wcWSBbC2uTK/WVRqBk/jYLvz8ccauxkWcJVTa7SDZa073fM1Ng7paFyaoJG+WzQF0mqMc56/r6vLz+yKx7RdnEtinDh3m0NFp2+B2cpi3e5NoGNmDWciAbrWuaS71wOn5M4+c8CBIdsCiUhf82zu+eay7PdCjb0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gw1BgiJ43S7802JLuAYL79Sd8lj7b9ctEJYvuy+WWus", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uzqXqhNZx4u3I2/LuqrTHv+yDvcyOKEEl4gkU3f9VdWBXKSagfGvjPXHegKqeflqMJQmW4RauyKrtv0SL430m7o8Lyo5vgZKQoT0ndvC22iuxFJ/Xr4p3+geewiiuhbXx3qdGtwKumyFfzeGKqguJCvU/ifGivCfbDavWR+XKkNZHxc/CH5dNmWJUvSN/UhhpNt1oc/4U1K0K3WoKr3jPKYI6S4XqGBkwtDO8yD0V8MlLfbJOVXp6sDKLq1gFURDMyq2NGkdNEWaEMJlJmfs18i5J663OsvH16iq0OBINisRMA68LW8iWIck1haQti3y+hxdpEdXsiCR47lfppPmeLcy9coHYGqlzzHXTb+UoqADJjEobkeCt+OKeCOT9fFLMqKQAlReQn908TdVzFhY5fTfuc8JZ1EI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gx8MJUiNYpv3riZWn9wVvBzn/RAtez4DynYgiq8YCgw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JjDmUTqajnO5HIaBLz5E8KAPYC+r1pEB1JZ/w/+N4PUh+kP7KfhpPEGCDNQQiXna+66jWI72asOdmw6h47rLAVQ7hsD8hh6FXXgU4dd2n8VSv7OdhSBeQxwfwYM2poJ8xlKzrbuTwC5tpx7nuCkgtDU9VmF2RxmV5d3V8scbU9wSbeT/rQUR5oTbuzaMGhkjgegFzBf3dQel5PJaIGocVDq4HqcPsVYom6QBq/kgEu3KA+6mcoIEdhryK6/ogDU+4Wyi93pX+dUIbi0uiKzhsdWg5EwBfjgpEP2mENDSTisl1GlC5zLIDLAI59V7FBdoVVKcw7oAMiB5DVIAtHjdLPW479c0LrJyXpTQ3JE44uYqbBRDNOEA4NaxntSC/fw183Uv82RdXvdqmiuL3qq3nEIYFwAup48L", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gxOp9pMvtG0d8C56rqFcWvWUhgXBwnUZSLAxkXz1yKI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JlWjwmJaBSutQshTwTSHQKgJP6JtLvpwMSEKwGKI3QL+oxCnIzlutiv9tYgFDEsxeOwLAQrigKhMWsycriN0n0f9dPLJgbto4pVioCqETihkqJjlc9DqoNm4ve6aFKEHkrxETZqNOUP1UHVpM3HwgVZ2iOsqmMwCh5BrwVLpVXmn3h5ZtuHgoIF8OHH1T8lrFNEWcSzCIrR2VkP6+SVgDJfSFaHxbjgHXtZOiKFvXfm9L4h4iak1FsgBhWDeWYzQ42hQlLTDJILjMWoAmNgoC5IpqMFE0mdSzCWHvzi8XpjW+FshWR3p/TamekKWiOHxr/R8yvviPqSgvXPs0oIfWzYO9iPCvWFP+n/fU+x8rboldnTr/eUdWNE+KpTsOtPSQcRE7DwwOW/pzkckTGbikKICVtsElVnY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gxR45xYeuVn7zpu4iWgLg1FUf3BOTRWRFTImURFYyFU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gnIYRtSnLy7uIZDqKvEu0nvYEO1n5ZcbRoYjmh81AOPcyeIOEbnpVhY0RdjBJeg5E7WICW/4tTnL4TIdoOi8qWynm9eQeyGRSJNn/GFacB29vNcTO30WD125/FQroiaShr0AZrRK/MpV3n5sxeDx2M6gy8nnqnP10MX5oWjDOZFQOcW2VF7utx4jR6sWNX1I09UnFa1A24WSyQFsaok0ZQyCmJXdKJu2+/GcN7rR9GjXVCWw48fSVoDbTadvOw3LevC94f7GrY4b+ILbpplAYwLdfR6bTfSyL/lquJt8xtRfgoB9VTOgXZ7NFU11Gqtd/0+9LmRPWAU7txcTQ9BZ/I+EwS8LGR1KuSkPoJqEpubDaIFWa/fLM6Itnt1L1orOpm3JoF5oYlUqB4QpIeEOnYvqCpd6u1w+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gxSGgL/sy6ABoKuE+Kra2yxSTm4qwiFr5dQSISpowDk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YHSIqf6bRcIgqx68oPM3Y2+KioINQn6DZtRaFlpr0q9U8BlRG7GGSSEoi6r2zDy+ld52MKsdKNf3GXWqP/dSWPMcPN9lqG9K2MLGPSl6LEK6OgqB9D1Ym3QNI79T6LJKC9OLxnFUyE1MxH+R17QGFjhzdCCPJvfwNERIH90qXgjlXOLWD8OHXoEVU6usZsJBSNhoRrEo6TDMbNYfjxA8iVzUB/0sUKhCOf3RPVb3pmWLDxB3UCZNe1jSpSuGMKd458m52mXv3/vmMecV/ksBqngA4FtKnJnkLPsTGPvYVefNdr8hWTxdSHegf0MaOHT85JsQe6y5w5aEWQysAcA3v0DQKq1v4P8Hnzzgu6vX/2887JhmEsERkUb8/z5zAzVEU+ccEQLiVov0v7/O6htqZ0u3z5luEF53", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gxdO4IUAu6FxVvodBNXwh2u/8mNUNwWowjcK0oMsQHw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Y4gyQZLFQMpCh5kcIViKorVvtMALkSi7ZPIxT6Y24xQyE6ulYLinrLRsNwjq82+TLECUuUWweVqU/SJe60AVAOkdwh7qdz6QmuIZn1cEchQotjQbZ1Ug8KkQMMtwE0yIGMXZmDrR5RnPpnkbD0wDOzZ6y9UwbDmjG/E0lQE+jKrnduEijykRE/saJjcBfjCyhjAyWZSJTaS9WfpGr4B+eL+2pvMjxc9Wyw7NJobXbm2aYk4fbKtjHe6sKg52dEuId5wJ2eGX9Ivjb49qb3XvrKwnNHI+0Qh57dDHpCAeOl5pHGOfU2gpgdxi0di0CGPhTEbffCO+MS9cu9A/bpB1IokeZ0JuOSFB3d418OKZVSYqc1V+zHRlf9UksfHwQGy+qBQYUE9vrnyfyE5YsZcNy47AV6paakXE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gyMaEE2xfBmBL6yiowyvfSxXPWUeY/Cxy/gfKVU0NOI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "g5/XVTLPZ7I8UT2RPAMAb+aPxT2taG4v7Icbt0xM4lVMdX3KN2XN89Jan0eC2UT+XmrYCHDs1UIowQz0SLzMEzYxaffoBrVbbfFUCIsm0WYiC2uCraKS2v+k0/e0/MzAGcQaOCizSTLc1jNsEkOzDp2RkJMJN1GaesAVUOs+U1zbq2KIn6QJeLz2wv1KbPcGB4lT8OATn/1P80REW2wVJsQL0jpx1psfs8MOwPbKMjT/p9/3W8F6kJURRbqH5VD/QMAaFfMWsbOnHpRims5l4UdAsPaofhJj//9Ji9R5NojhmCC9cX/kYEgaISKNWJ3/VnrZUg1psIbgq/ZynrN4LWBRhkDXdPJEimRWAQdhDppM7lujwNZ0vnmi1LzXqbMkil9QopybfjeHEPM7GMhOVSkoP9ztpgP8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "gzgh11b3rDcPIjsBeKDebov+rFo3J3k3vh6l8dguhCs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "06CyVSbCLvGWDoKgF12V8Ca1b7etNUP1fH5oAwGtDO4Cd/ZZ4+yxVdRXxet8pGf5OeFjsORcZ8PBH38wypX8hAgRx6oDevd9CGzU6kmSJZq6TDQjmRkVddiBidG24HlMbE24FZ0bO5D1ldjyVBaeIlcdjm5Kl8mOMfHgETvdmleY5rQGsfFo42z9k+X/H+f2reBMr8UF4hx9FHjAGc7EYnpoz0o1l57XqsMP8TVEM45gEjpFpmEOM3wxXEGiRkme47gk8SGIoY/y9BNSiam1u3cCKgEMeC8Nw3RFhDjphz3UDBMKBN7auz4hI1nMWLRq/BypAmluM5yKSf4KPna9pKQZpgkwo69cEy9UL20q2Z65bXzXX3wQ93mnTdvMK8cAPmx+8KJcaAoCm+zF3MElvKUVaaCtHLbe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "h+4QE1Glh4C/3dNXi+eN6fzNo7jbEk633ui3FzUZ80Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TBu/NOzeiWkCgWBgd37JBfkbMivoyWfv44OzMde2PQsSZDOvZIhsyNNiL3DIsV93OEwgXlhZvSnvZAQsRbhiz+MmPRqII7+8t2s5ESwYEcxp9f7v2sJ63DWZrlaBjYlCuJgo3mc0mJhJu6CA/+19bWZ+WxEANno3QH9szXiWIo1mgXr+Kw01Zp1dlChZfEOGgt1RocRjfzL0PfuZOl85dHIXKvvvssVQ4CibzJ2ftaxv0IQ48bfkEtFaSPYIWQeQIdGui86BRST23FROifAGxGuSvkjPX58zHQLeZygmK1vNneaIeteL+SU09YFN1p09ya31+NCUEcKGi7sKIHLPrQXN5DT8lr/EQD+28FlDgh2YKyE9OsLDc6pZeYmYvMhpZAtjBi/rKuQkgxd9h392uVoMSroXT/tO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "h1aqhKDy3jpyclBAiAo8jmU0VBW+XF9LfD9C9UreHe4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SGNy1cegf/MHwEGheUh0KtzpXMAHKkeS6Qggv22CI1ZSvtqi4sj/VC1KS12LRFEIhtvkF0qzfdcHgS1V33l2dym9hdprOAO4CHvVfE3Cuhtas3eo0b8UhvO4TOpuOX8zOWA/2tyHTWxLgmHav9hlEj9IA6VzpshWXG5r+meYu7FKC3r77JCeb8XCQ+Hxf++98F3ygfc8BZmz41vfEvP+H1GkQreCrpbCyOhfJLAp3OHHkiQQKqgkAb9NaYPI3jPylv18iHHWR2fljnRs8hcPgwcAk6KA/Kf3kv9IdYNmfGriog2G/+Ru2iDsOUha/XeSdCvE5WETvD/mDUvPYRS+4PwuE8GMIE4gVU8apdtkpAgDtLckKULIx0ivLKs6pE++JPdzTNvPgmnHqIb4Ohzioua+/lK6bnCr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "h2uqCRY465dA5T56ydUMTpxGvnTzS5ygDM4ZAQptorE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LHWXHPPiMtEw4XhePyh5jWqPlaojRM6vrQlpWG+a1HWSVnffMU/M+tzwxSZ+n1YJbsa3e7VYCtDnhtsGzr7oMlPtRT9zajEOfJqOIOBPNVreJfd/6yqpMPL9PmZuNcK46R1zMI+rBicy3QY3dqUHNGzJLDEXomXzswgNdiEVEfVUzsBCVL8XhmyXYBydFPwUKUGn7BD7Dr13GZqtUk5M9JVJ+8voEsII0M3NkXm93fvvDg7y8QJvnLLpXi9pUBzrYR7AtTlsLXWepFsIPb4TrMCVJqiOegQp4B0/9d+0u39KUQPwdVNsxpsjSiNa0PJgW8pO3SpBIWC4591yVCZMqBNLqbbhsXs0EKl0Qi3PUVFfEp30ryZxN2AbfJuAULtPRMeaTIcCMdBLPApMmpEvr25dYW6aK9lg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "h4Hz+UjfnNdBeZuisql5foJoUUmAPFfjDTVZ3s8x5lk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XP1bU83FqRS+Gg6abiMV/a/vUFI8g4lw8FKZhVMgDX902CrD8CoeG9IRjnk4Ozk6XMhTsKFtiQHSneoLzGS0ZT7V9HQbDfzW2Hxe+OttUJxLLLBloisqailKHByXp87hIyoU53tsrUDlZSsli7zScySFxb1++ohesu3C1fC9ZnKOcTUth+6JjKmOmgFB/xOCDFX27scedd2NmmFJh4BWHMuPIOUVupPo9zUt1tm2i1QaK2/L/kAy2XCKD38O080Y41aIAq6+2CbEDgMuz+J4+UZjGr2cM1YQeakN524ey9r6srS8xnSrQpyok8hCO2/XrZcr8SpEfyzeJ4qiftz7J7nCddRgpGCXsiHK4nmtIan661Hyv2Uh3ms1yq432Ev/ZpFmdFO0rHNK6JztqZ+Iny1N1A7nAndT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "h6WNrmxiey+VhfHvvadGJvS51UoEHef9x0VWx7wuu6Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uKBKlW0UnoMQe44O75+bPSKkqt+T+9ZVAgA31sK3xDtwsq9wCjSSruREElqwI0n7HFA5Cr82V0tvUOaIJY25zZReJLMjzKBLzDDUXnorBWD0SfESzgzhhCFuuNfFcTbKU63qu3aE6FKPhnBhHx+fJD/FF+yDIB4peuFWx/YqlQtNFSHbVR7vCanUbBD75Bt9/F0COJ9+FmYqLScN1C5F8EQGrR6ANElxrLvhGhS4oQLyyGY3XKGktL0dNPMNvwdQgZbw55p8X5CZxIE+sHDF5dQL50c2IW01G0vmHnRxulkgHwRKm3ruVieBFAHCk4me3LUxOuyL7NQjq1uhcm53EWiqZhQPOxFG/mbe1WngoEhWxvfJI74tvjXdCfoSu11DM4P+r+NFQhS21VoylkSehEDNXLEpTZyd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "h6kuiC0+VJ5K42TjwuGVkn60JBxcXaULocpaHd8lJOw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9Idskx6WqGM1yYiwGGFOONVgxBYA3sTGNehnsPY7VxX908AB+eYCYm/G7nvZd6go5UinSwvguMB4ZzOoK/O3QVVJbUjdsdJSgFEKdbxPaT96aNLlh5p5RLEdz+8uLgcVjLqODXi7Mt3nHQ6W1C04NABhx/CPqzqjmZ7m1I8wOHytzJINqof3T+pCOUZ0gfiD57a7GgxmcCsYIOXWyOhoqCq01A0F9epxr+zCRzDneXgtQaFg7fuhOQj2rwgYc+2JhTjYv7ehAQQzEocximxoU/I/rj/soCttS5AXKzGkYiaOT7Hawb9LerYom96lsXVeOSiZo2hyskUQya8ZGEO4FL6quybzpXWPU7YQ5pw2BZ2RJ1yUWGoxvnNy5YyqgnSZ10P+fYRJJrATzf00QNcTZ4TaScHLt7V+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "h7WpjdyEQy7m5cOx/9G0nEOEgQ7TWrELYpkF2ySRk38", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CJ49JzL+2CJEgsxfkwH9X8Fh7ua2Pmn9AX1fgYfRghSOevOXLApDjdjDcMxi1rXzX+ho8EnO7VnvYSjepzoGD2yDeE/SZsda0gFEBc5ktD1/sTR12hGSoxAOwu//mZWvxv83+1WhjzFe/KOVqPaq6eyY0bVjLKMd8Ua8o5aFnUz1eAl0G2g21lGkaT+1CcINpFqJRu9TMgYjxxMm+VMjE2zbRMfC4Rw3VNrtYU5OSyXYeopxiR4BDH51rpoBqM+qzqNz0igyEErX7cet8O8NGNWA62PQR6rVZzL+/Dnj/R1gQnDNsPrW4BNomn1wZfJJWzGtkZybZle4TCAUc4OKELyVW4uzpYOIhBMsYZFCMi1HRv8DjDDwWtt8VCqxDt1HXfzhsd1f1UcZyVVZLPJOQh5UFDZjkq/6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "h88BqUzTEsVfklpu2Lhe/RF1sgj65XRSEpmCe0KUD6U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ldcArMLmazLrdSMyACY8O8TS1sibCc8OH9KQLNWh/ss+IysqeDKmj71QFMkyxt5qvdaOp7Ry4Y4GMKssALXl89ObDq1dZohZjQWsI6yHfD0gHuh07TGH2VvJRdmRAZZ6NUAo3sLX5e9z3C/uIAPKfGU6xQn9HCLiu8gI9nOlsTAvzz6vCvQOPYDQBfkIgVNYiZeIIzkKdFiGmOaL6e6qcYuuhiCCb87UN65W8EGDvRfsNPyBLdKNJh6A/DwGRswDLnFlqlCWMFxX+V9JizCiic7YJ9r5gMJKhoRl8pFsMod6qRgL68OgkpKRMkhh/2TD0Zm3Gm7o5bLD6j3XYkeimiF+HGfoz2c3Eyd+n+FcKj+wHYCck53b2GT0EScpfqdBZRjFbmjCj/fKGXfGElQnIweYOcvsfSCT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "h8HJAIiZyCFX1KOM6FM0AUaR5NhL3l86La+zRjIaqak", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CZlrCWyVH/2330PcedbxFEPp7cHN8Y0D5M4vE+FrdzPfyNT3e+9hyQlIKtCtAxGg3zKy3Xv1CttHaeduMHoQ2p+8Z6mM2ALBd7o39vZochamTo5LUVQGtZtS6KLyepjAeiPRL+aa12rAErOCCo64y9Gdxd52WqcGo5VzaCWMVTPJnPdWkH4acaLtxT7A0Wt9zKWnAjlFkgMIVANi6SpfjEMY1v0QJsQ0/VbTeYwar37GNDDCohdcMUSUzRx1s/evY44hxzevtpOzkBCKukvO6GA49obhCwnuc05OvxBjTCWOjj6QOs0V7iOuCD4yxN5Twg1jsxTkJvUn8So3WVmW4hmO/i5PJ3qlTYZf6O41ycqA7dPXqwPWZJNs3h84bWyQW2qGKCG05qHGcboBeymZqNjYq/MCD6+P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hAOMqaetMLN9nJo10QmZlUOBym7k/6GOx6KgkP7wjWA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8s0NjxXcJClhY/juY99xR+TI0X2LiWYMo38W34F1UXbrq2nGw48EJ/S/rDLL/RnCRW7+n53jz2BCa/MdJNCM9Rx8zufwyGupWe/gFdFAhAJeeLhWcFqX5tvcZXcQTdMjGH6qDWZKWgoBzDZsYB/29QJWT5i89QBoxS108dIz+f/7JF+drB++xnGiv5Yu96BIWP9UVXNiRxgDNrvqmXhHUcxIpk67kaFe6exrKQOYlZ6/4cIf9XxdRlWFJL6wEPc7oawEbvkhR0Xm7PW+g7Zz05mzQ+2b3TCRJeN9gEJ/cmQlw2x7afaINqvg4QgOO9XS3lEpmKBMvCrIPZ0E9Rl/cZDQMYGoYRtYSWQ0ThPn8pvmErmXs+f/HI4mzPuQMKwXkyzJu7HcJj7/83ClD0x6QNCmwv6ilq36", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hE0Z4MhTtBSHp6hDkGudeFUNMcpIoDLgeCBAHHURBXw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "H/St7F2roaOenGEEjbBYEw961vzs0ZOG5bi2LGDHqn2yu2uMyG9LBifAAa0VMl8sDkhxhxgTOZOxfWW17eSZZP4U5cTxuNhiuWpBXHrpwuJlGS4rB7GRru6EolnXqdTw1fQWBfdAkbR+JG5DIJlVy3NwqHOzE3JiSsKq5D2dbE+ZzsNJxARHzZWF6Lzzc4gAni+8HxlJOd09LpOuVR9Axpn3l7wLjYe3zBdYyt+5dvwl9gLDkMSl4iejRtewCPHgWEzyrb7skIXx1KDSkpnYiSn8JHmHLKF55uhZp5/6WFE/K3lUjXWtLO4I/adDVLCHCec2u3ilFkciNw0hv+K9d8irgy8ffdYfueLzrp+HYyemMTN/0tWTfR3c/gWmAFptChdeZsJDmcLehtjCOBoixe834DSYklVV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hG78OTEn3kAH/GMIC4mqlfRcMbSKvObgAw0VXJjacgE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AnxmouCO+qWSfzP7T73rylcarHtqda4a7cA05MEzT7f+b0qAjZdvJ0uGNobMjRYZzNEqUzVZroaTjR9gyAUK41k/g8+bW4XXlzT8BRlh6QWbGlNgpBaHugB7uJQObxe66Sqb42jH4P7qBW0qBxyEyacLbw/UufDUvb8uvZairkF/uaVKAS7jAOntUkm5Yb9zi5sKidH9WQzffZtdKsq08IvqkrLKiXfKMHNO5JqGOYsLNsfV038JPmtHe+WkYTNf09JLWraRjX4dzohJ6jdRHaAZSfQry+fHYwxP+WJNbP+nI+yQT9YwEv50KWePN5fES7xBl9h/2uaX9ZrIf/cHCu8f6Hk8yr82m7KOTJCaB9vdIbyWR34DYGTxOZrtf5SbdPkbiSM+h91hQA7x+DXLEWTFD0ybWflN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hG7C96BX/jxpuKF4zhaNyDoli1vnWcrlsU08FI5C1Wc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hp5pCSyxUKlqsu7rPhcr+InH/gDGQ0758AlDaLNzDbEuDAv+wogGKp2+i3iRNngfJ/o4VbdMpbsx0UDuz0Sbd2oFwcDa8DvGx+QeYcrFNVLm5j9EP6qNW64od08mVmbljg+sKmnFKLR6kEhAR1rcBY4QsIUSIZWJ9Wr2b9dP+03vjBsjPWvjd98Kdret2y22JvmJWJxX01Nb1iTkS1Z1Xkl3szvD8ejrP53qRe7D33mvOO87mj/cWlw/Vk9FLZlUwqxXvTDkgvktGrwiIHnJqOxDiJYMm9e9Ro+mPqFvxMfXIjPm8eMbF2sVFUUpggijGdLYM1/BDEW/sDs0H4xRDSVRuBavJ/Pq27QNLJ9miswY+8jz3iylmg8GCPEgWQywyfyj6m0Hs7N8oeckegu2dphM14R4IZqE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hIeInisPPdeH9gmSRTA2ekCnKS1M2tUjF7cD79Q5u3s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8kKWGS3O+PoDA+XVXeDKy+C1+wQCt8cQXeNY+OK8Bfw6NI6XjgzaMqzF1AScLEbkzeTG8G+qMKKVrV02EIQJFSdYlbS5/0BEZgnIQdQaD7fokxPYPEUJP2OrImys0JfljsM3ZqquSSqGQMT6cm05ckDU1gHmqLK7xUxPBmrxgZ10X2d5Ue5dqUkxkKzpKCSk6pNVsCqMXeT42KWoIiQ4YYQihuxxCmDdNX8j4M8JAQXvc6Igey2F7PLJ7urixNxd7ZyRuFvMf/RB4jv0mhuRQ09BsjiiyLNr5ThkXy5lMIX6tnb/8ZGJPK8/i9l1dGttJlViDcrB7bGyqtJA0HmmMWR9mz+8EuU76UnZHPx6DsEbDUwFyYsU37SrNJNmqi7tCeZqqPKiDtNlWlONCtdaJTmMCKhkY7dJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hJ6MeE56HRQkMn8jfu71K5htqnGt0Jh4EKVvM5KP4Uc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NHlBYNmezYxcXrYWXwHNH16UDuVQ90BYe+DZU7zbHqT6rTFHhuWsH743NZEzDYOmCqNEm7G7yITe+KIphyrhuV06HTAlG4sHFmZlGvr7oaGaI2t4VdQY8eQGRcKMtkqMS6JxJ8WXgoO+4EZeNSPE5u+si+L65AF+sYTBLdghD+PrJjOEeXRMMNUc0tYHUJaIAOIGEQL4Mwv3gLMoAMkMkd87RnRX0W98ZIoiydfwZYcAxsY3r6uVy6RUa+usgRchO185JSBoG2DwkpmVQFQNXqno5gBIvl68Yz0XtKu5kh3PilAKjU83ZxEOs+knhZ704A9aGO+b2TwnHy1cpjpjLM3JNwmc0VQteOBrLNLbRD+lwb1MaAT2VRVgUfzKqgOAGT2xDVo/FrqUaPurpFqwNdPMTODhfUqj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hJfIlQ58DUnL11OwiZvsvT3GHIO56rmHmXgrgAeqmi8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pQO/0mIshPuzWjD0Fn9VMq9hXSqkazeD9GKq0nPY/sL3ezz58Jey4nhazA7NMPLuYUwYiaT041La+IEH5EVYlwlfMfE3Az+TaworQDtgTq9hQCfWGbp24Gj6dRhAubJUhyqphfySOQM7Zoz5BYhI6YJtf+CVTgFRa6oam/GfHOgG6M4CU5xFBXlXCJ3n+CQx4p1sS+Sk6czTLldWx9hWRJ+TXQska2ejazhc7qlMxLxaQ0/lkM9Q6dCeAh3okAWMfvv4k3VPGiDAa5rOy5I9rtQpbT54dAzZ+K7WVOLGbXs7a/JF2jw8FTugBxCE8icS6LFKDl9dfjwUh+oT7fPu8tEbTlrTzCGcV7w/KYyJVh6RJJUmPhZb/rc36/kXI6mIzVu9Jtrrc3KNEFOKR5j4RLXSl1bLUkhG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hJo05wVG3E6CxfunJ00Ov2BJEAqLALZ+Ya51Ui8N7ys", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XcMaCKGp6oIIJ4vTpqKP4D52QwZ0yjMxzxdBAK2faPl8njqEH6F7KvX10h5JugiM1u81+/bajP9r2OeWBrABzIuyE71xXXwaGmH+c6ztxEpYhntjsIiBCWQTzudgf+fBRLskx4V793MKGdhyvm/SmaJuOpHe31zfdzCbpm6/sr2YpJ+O3Atx2Jy8Y/D+wEwAFCPTmV8/SWCkUs7jzLlMvU+DF5ASFVTbMC56c/tAuDhuObRYjFQ386VwXRJD4ouccgfIvpHIcFjq1j+XkZtpT74ae7hf3W8fS7R3Nrkwi3O4nux35pQAcg1xBah16OfFLnboLO4qmPYixZAbtlzaNKp9nBbnC3EgGATUSnC6iOOQS/RzCFdOkFMU3CMv9h6KYWI2K+bS+QBUKd/RiUgoRdzxJFz6ktfN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hLCtOg3tSTCyKD2dWfVntQgwiZWiBMbl3y4124DrZJ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Jz1QONYPHFtP8C9PEp9pDM5q9ywTE6Lti87sv5MrkVJYIPQM6tmHClMu4sg2cu3HuXltL7v+sguWOA37Yf6kif6cDmqnhg3+csxaaLcspKvy1piNxnMR/aoMtiHHbeXGzAPeyWkYdRge9NmaNVxJtRUOMM+Sa+p3V79nPuTMMAMyWYBumfdeiaj18VGyUMIyYy7i84WHT1JwKrVYQ5/hpEO2Eey44unWJHiGLtBf7L4BXfLBoky1KU78osr6tqhKq1thfGkJltbgt1L+Pos+vGNFcEcgeUT4VNs5zCeLJ9ySkEU4vao+U8crdGg/KJagoE5135ZwzU3CnYlKr3Mba/v1utTQVw4NY53er/fAaDt4Gb1/q/oDqVU1tw6r6edx1oiqfHrd7tDVcRBNHW+y8ZDoJWrXXmqG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hLRlhybZA9pPU8H4F7xXsVuBQkgyHYZNa2RIG433lV0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+d6bqPIFcMC5WUPobRGFuexu/7oYcz8GdWTNuTDOSdsMqyp+zASg4WxK5yG4ehSnQnXCb0C1DbjTsGFGqyh3DKuFbcvyCnSrAgk5WLjSpaK1BoLeuhsbWuwnnUngtA0Hc15dMlnOecKi+1SbynKtYRtUmrI9/+cHRbr8ixeXmjwyyk2IFEJxOKjGhQUdt6+HClsS3j4/5FzGPNjrkKm5JESU3Yqa+VezP+HApLABmsmBM6WQJ8Gz91exq+Ti070627JO9Inv3/BlizNBEMt59B73pnt6omeA0bmbtz5+iMDwu/4ztrFFHnVj3jJ/4ddowzV5Ix1wkO0tvrn5oHXaskbTuhvZQaH7NIgj2GTFUWeplikThUAh0snpG6jy7jLKaz6avi1xHaAl5iYWyRICLOPutyRjz/0W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hN4RuVrssblEgY9wavCOW2ulVQ7yH5R99bmWhS5rJAk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+gdXzX8waXfI8hleGmwtYti4WIiRkwMmi13a8+3ZUJF2Lx4yyvw+UnSpOmVjz62zcNNLaqH+brhsrCcBJhhhmKDa2VEyN3Vj+FTKv4sXA10MdvkgUXTw175mGwufr/vK8ZQn7mvKjnAGikye/QCEnMqcrja/bOlTR2y0W/CSKjBJ+V4SAQcwOMByH0ouxkfjQ5j/CcYGYAGsYLEx89AcIG4gGfS37UzgIUgNHtIWkFgJJsJb3+E4C7oz7Xg6kxrM10mRHrnHPUYk1E0oRnR2Vhk9GF2Zan0pFrwXR/NT8fKWWvTeP/J3Pj8Ubq+2pgd6Nx+d1mtRO48+37RruHQBdhrBYB+WH9jpBM4TchhKhJUPibv00Ez/5G2ygv6KSWRmG3YSQ6DEieMtDyDRfTD9s4Vs3jN+vv+3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hN6wuJ0vRv59GvZSzrIc6cAeZ5+L5fkhirYasvXXmEE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "U9Uh34CaVl4Sq7RlfyPmKNvYGguEIk3SP5nrTTwl2gqrPzNit9wFy+MaRhMkn6vgTQxQLyzKMM6YJsWFg9qmB4QflsyVaSgccLT+9jpXyB6GZS4vhMrAf90bTmOoy6KQd5yi1KY5uNmWoyqETtNNtbUYmylb0tcEK+KM57xMmIGMehoedyWbDY6G/xj/f0OXS9V+GU3uxaLi/1agkm5OQvu/gLYCHAZRg/jGuQYXXENCy+2PNI61vPPBu86Gzw2k1ClVPjm/P6JuE3AdnWZhL5iPnj79JgpGr0Vw/Gtwm7xO+YKevxJVwzsk+LS65T/vrQ5EqTpq2dGj+FbUEfNVIQrxOB7y/wbBHtEPBzsuHeWmDb3ev7tlssRv/kKAfZ7tPiQ6BL+4s0J82xLseMO4iTXFzW8Xj5BE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hNSIvY19RC8FEMh/TGPldg0ChDmese2Ot1ZGMHU4AMk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "z8sTnBznTCyRraXxra5mx3ph2wqDDBoXvJW8j4v+PKE8fZ5QHcM83eMRopo8FIt8j76Pg3uxdy46LwP053BjggGNb1aEKg/aSwZIDY1WEJKWlHpKSzzSspRu0Zy1/W/rrWjNFXqvBsivCcpVnlJltBt4sunOeY93AtdUJnqrU/9cnXB+Z//O2Dav8uZ92d2YJqRn/94IBvm2fJymui+JKQyt9oenNAiUkwpqnWghAJFETZAa3UzrlLXx1ALztfOjcpchgiIuxPYo5mHr5C3U7V89XD08Hc94iw+jST6mUtwMc4YWeAsXyfw7ADTVe7PX0TPm0DFYYd0Z2BrXOuwSYjLIp0UDGrrtkhU3kWeQDODEkqGWZ9XafooRvDRqiGbYcI2ZEBykUJ0isoUlJyCvCvhrk0QmE/Ly", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hObg8ldHb7kv8qRi43XFfLXdbtOS+kMANGRGSWlHX+w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0hPkelHT70dwXvNcUopCK8RUg33F388KqVGIw9IjxTlwz2kiNdivy0nHYNKs9gnDOVQoFyTIVYMa+OAQdxCQHyrioeHrInHZafFwYj+7qwZCQlcQC1B00NYthepGQIRU0pligLpbpd3JmNJVgBXQFuiJnQ5VECVFe+B1F/U/dqnZO7tsisKfe2Joq6VfM4fVkMvnT9TgRngvT+OrEDpqKy3r0czNa6mrc/h0WeuGMnST8yFrMGgHOpygEHxsqKyebvPaBZKJwyD8YQtoDq2OUEmmISKlmAbvNTkG6qWUvzdVkmyQY9kx71Lz+FqxLg3xS30SMsbp4aKqFub+sQwC4AYaulI6BJ/pbnTnKDaqaXzDCmq9KAi11XqPdbAKHttwS5lqFBeNYB/I4cIAyKHJfkc45v2AzBSX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hPzwqbjJJOqM7Tbhi7sNb2azdjLauO9uYSEEwmlLN0k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sFjiJnIPCVhBemQ+2+JfXMJXN8beLTEnfeTv9N2+WgpnX0PeqNkrVpR+ZDHiQ6iMsYV8WKYThLeA+Jgey3VbDJZt3TZ6sUMu5+QXWiq50zGxVHEllNoJm7lTAAtpqdIWMRVjwkre881S6ldN/QCwv3tvtTK/jDQ99OBdz2zhsZgW8m8AOmTa/5C4CZVibIeyFUAn8u7ism84rTFG+hHGMrpyk3R4tJ3/eCzgamCzknIWoYKh8QUq4YG5rbcXSFzDKcJa1c/aXyhQ86iJFZ5+YFIGZCawiJ5LCwpfomvAslUhCGSCQ6O9KybFKXmt+/g8dlBaHc/aLDksBh5P/K6+eDv7APP1keqUbeGNCOEz2ocVdfxhubdoZDIoRUOy8ffTqkQeO1DmCmCiRgJ9paqM/fmlnQ5z1J62", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hQmMuED2DHY/Hd3QpJCfq/+rXDklRBs8HG/1iCesB8k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3GT7VUgbhtprf43hAdxMavGOVQ7Bfk3D7WIP239uCsmQny631JcLtc0ZV0J36+oN6JyOnH5Nx4uf9zNCXZTx0gLIQdhIkcMa+m8VIZMGDXBxoMxQBQ6h3iT4NekbaQDVzPRE8I6i2e7108jC7YXvEcYgd8G6j2ygU/rxBfecYuREh6Rzjgsyifu1kbAdi83bFG1heiyDdX1Ps2rUYrn2ab72Lj7rVcYe1XwxwOqEiliQ4BPCMWq68UJyzjcsEW9ud+L6HJYkcwoLM3bHN1nChPba5Ylsr365jof4EGdwJElYMj9VAXAYMVwwLpWF04Coeq05b7B9vql6cGSE1k7j+rGhSIBCYEZeylZyXy/EWZN60WAvnieB9gBzEprfaY+jDJRsIko2IWtlZa92ybopJ8FAZ45Vl6vd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hR2b/dpKRmozoMnvBaZDP+DUsIuuq+X/lGxaYfJbQIg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AtVQMNawANIePLfT2KKDodfpnXfwVmfzmJOyYSZpY6e3984k8lci8More5uyquJifyqo1MGyzwBLPVRsrdNPQ5BnBpzS1sKSb7nnK5FN0zS3OJz15L8UhyyWdcFVR2xpUyP1Hn2opvTKAWOAkQTCX2rqCazb5lAuI2/HU6sjvTFlpbifIikOJ9f6Fi6Sh9rrqn9JQGJUByWeIdfEeN4kLwaDtVmxj2EbLyBF/UewFv4Wq/F3L5ZH02gXwPM+2Xqs7oXmxeemwE53/o7cUMWLdi6R+FhiC/kXRgfFfBAsENk4G+FbS+2YZ2BAcJgTQmDe73ixoLpGpp5SNbiivusvUXh2hmvHYE2Ll9dGPaNLaZFoInBnRJxF2UPAemJB+da02YymhpuNiQ5qHEW2OtEGAoDVJ47MotWn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hScC6G0nyBe4cHJHJQwBhvSREMhCEZZ92izlk73jD4M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HUCG0LUTzsqqKuBoADimLBYa5Vtgr8/F1oq9y7KKLadOhnd95BPQpDLbRde2J3zTgnT0RxLWk/AkYkYuG3XjlNp0uNU7x0qbg5DoEvQC2SpEIzPwCuKwAo3PNPkRKalpTJ6gv+PLp/NS7bPEPjKIg6KjZyUOCgFvGl+n58kkeK+ewjWA5h6L9skoFvwEtHKkPWSnQzR5h6sMzfqWVcAG9v9iGRXVehv08JNiT5YboadVrvl8wkwiChcUGg6xfla9zcFKarRBcfQvrXY8gAC1cru9O1qCTKSTy3SpP4UffiulcZdlGY1/IWS6wtnKLCMrTMNFoNJf47SvgFHXui8tVn6eUU4hidk0iQjbWofpmic7OLfeMfymaJi4nEtiufLq1ZRW/hTchmGkxyyCEuCuZ65864mZHTAQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hTLFLyhz5Ct1BaTn/j9+0+i8x2WpEDe4CfFAFwClSQA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sAC/CqtAHO0tXQUiI9SC8jt2cv7PEQJea5bbIz2GdvAiGr2bxn8ypXPpRetfWI7QtKOTcnU7hPrNax5FxSIgh1mAkaxSYaG/tSrsb3BtGZUiJfEjnZl0WK8HYkrpvb8YkgC0gjl2GOT36ooa5ojVN+2nCS4ADSHhqdh8zEsezs/xg9gLSzDNRyr615aG9fv1aPFxz/onK0nuOuxFyy3O3AL4X0c6McA7uNDZazIa/7nfQtW5aNCnl42QNALc35jv9dQd7DdZDQY1+0yoO2mvG5umKQprWJew1/g+G5D4IzS+WAhE7krJcmkBSI0A8NR9Am7ZvPKPK++5iTTbvidArdnUwAE2hIJPWRdhqXLIKGe1GyiurMP+Qp1uNYNmkXezt20v5MJZgYqf+QRuCAVYBo+4wvxdT+Fy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hTroy+jwl2wjEiF99bcFkUnnmJGps9pjakGAol1oPpM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ryUMLh5z6hbYcHaDdj7f02B1wUDcTKV2Q8Z5dNhiXul/aIp3jXxaP0SJkbd4/kaZPZoGeL3Th5MxeOsOJlKhSPDpwk0s2miljk6nqrPV6CR9vBYdptcqVz4AocGH9WSxtX7Kc7PA61g95x4O3cmF7vivNRwdncGJOOvbqWRMnOoUVqBGu1D1+O7Maq6Hf3jldGDkHm6lWNxkZUg4MZervHAh6A7hMKgSnZ4hGO4GwxjryijUfxqxlPRETHP0qbyW426pCGRzvZrggAEjl6qCV1touuRGJ9pXFJeSYHtK23D1xudsYcnfWP5fLxJfsd1z59WBWw3Aw7/s/o0X1ISXZ7fFvh8AGf437mlKezNr9uyhbQ1Dv/MX5JjyZBIdGxghG2gikbtwbMvZ8itOhx42A5Cf9iYaQkex", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hU/RJKz9XDsoL0Tu6+8W454Ft29tD4XRLrbqyWcPuDU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TWtS9bn4kWkUlcGj0ZCpbPCd02lnJjp/OggzVIwqCk2LJGU/djfTOcQaM8hYq37alpyjsu3QGZtO2etVFutkfnY6bebRtCre6Sb+3KKeaGV2MGaA7zIENrQiKFWk6ojc3dJFVeJdXJWytxNtUwGFpnMhHpqFZUeFN1cHZvcYkSVnqXhibLi/ej4pvCzoKVbE0RHI0GbYpUrQ7IVpsEKGi0BwkfMiDk2COjtG9wkNg60amtgV45f7f+3EnHJJi+tcQlcG+btZdFfC0TxzNXrhl5OBrXWxFuaQygT2iI37cqjOvHm7255pisDR7qtGQuDjGESxH8utmudF8+Ew1LdXU39/bMbMj9oG6WcuIro8Sy1Fa6BkokOpi+W2JJYY61tO6o4lohgTNNlc8MerTA8eZlsZL3OVHXGq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hU3j+lgb03BjOcu9lo1lxKkWj/W0Wk7HL2/eXkEdMr0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OHGQNGuY8MG7cMLUd5o7qzIDZAM+EFmztdqC5iFS6FuNWQytgWceEAiMaTPEEPd+s8ScgSYXqGGmMxlnQP8ubauAqwuhzSSvE2Y56lsoikbMdiEqP+Ame0O/yiYhQVIwNyMt7gdMOexjTi1Tes8SAr6yWBGFs4Tuj+mpTUIv82TncUQqZCYzgM6LCgfxXbxANE7VJJClB9EeHdu30rrCzqilAsDPuenxuF6D1xppCcQcaVFUSBm3l3JOhB0aA+fY0bqpOp9pZ3eKFRo4l5T9qiUv1cW2ebmjkXofuwbT2fsAnJynhga7+EeNLzMIj5p9r3gaDI1gzI8m+O+GbV9wFPgN7fKZGghVz6MajcGAGP6w0kc7JkUJGER74JdRCoG/vY9M4Ra74LcAoiVxxQGQvJ+kqtssSmGH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hUIBCI3uOvixzcnKE/J8r0Y8Rstip8mL1WpZ+jXYQDo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eqUZ783OMyzY08jCTLytd0xB0jruAP3LEryIB2vaMB1eKQAOmCZMNOdnxv+drsS7I+xe8TCqE8vEnIWYAvkBe5lPFAhZvp7Iq2iCfvSb47nrT/ZLJXwsZk1h97bF3UWtZpDjtZO6/9d+wghR4tN0+8Ko9zLbXa40uInpGMgnVoBwqJx61jy60+nUu7Vhn3wWsz+C6iHERLYdSii/+i+1SVjTakvDa1Fnt8nlagZwj0FnTAuNi4SkVhDzB/Ji9QtSm3H4CTsiGW+xIS9Cu3FJrwRc4DrLzSBaWpDGJedTP09HGU4xKUsyASObRAB3g+baGmP2HQP7uBg1/A7OGl963/V3WWReLqYF52WXplvCQnWRSuKsAlvvaHejA+gjQn0AIMyQ9hatigqAuRdf4zeDNReWFp5Kst7c", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hUy0IkWEIcP2Zn+Mj8ghOS/EhBYA70tpEfQNg2pkB9M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iGEr0iYCs/wA0Be2MXW9ZjznCw957lPbEWes5BUa5emSMITt3zk7hmNImBgvLGTfDgloAIoQI8tAFbUrNBuKIHVmMa5e8BbqwIJKM5HYvB0WgJfpD6ZBk/+UcLP5AOEH3VasKI6Gdw42toZFgP5s2+MUQHJSNJYLeAs/Uy4otUFE8SxwqhkIh2xuWFx5hbuVDFsDATvCiMZJkZP8h22kEciN8v7iUPe9oaQaHdwTuewL8ESxtqPidpQHiKaSkOJ+kwVsWWnfGtUXeFG2Gv/E98jrBaWUQkru2OEeM5I8QXyv4dsBSoWnNv7AFVnEMdNSyapNPxnjCiZPDFJa5zki4z1JO35I3e6UKSO20sRB92Qvv5JjAEAhOayVZdZvRn15qJKPCLKI435YY1+dSZovoSIdanC4cOHh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hVqwko2mHpsy5uwpTm93qVKubEaDU5nFuRK4Q4CjkeI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sfmZIdhT+ubsPN6zMiyjn7vb/lzrtqUU/C92RLGPjEffHnNOGX9LuUfNdjS0JTW86116h8r2e4j6fp+CuHSoMJ2s419JEfFuVuce23UbKNlGglBugdwfJu4T/+qKruopzlcyIuqO1lWr2o5rCiI14ZTKX+n9vRHKD4lac+VP60qeB/3BRnNeirTmOOU/xGgqJFAgDXCpHL4/AovheBlPiC2DAwbdx0AQaf20U8WFMRizxNCksMPl2jalFr2VuG5AyKSe2WX0KwO8QMsA8QyF9WgkrFuezdi69QPWiEkx7qsjWTJRN7Yd9WzAq4mvGXbQB5BstSdBj3giDrTl6kkYmhY6I9BrsqrlnXjtKes3Rfsb0y5TFW32SSAhw/5zwTjyV7Uyk0S2oB/8Yc0L47DyIAwed+8ioS7p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ha88Ti6XTzt9/VUYmwzQz5S3OVgKS8Fk4Vc2yepydCI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "emy3um6VMl+8lqymi4FhwmuHqwXMeEfnBM+ok4WsrRXIk5bSuGl2sN/0hTisP464O2UOCNpymRNyg6nh12mdHIUyta/NJDuDYiAZ6jCciIYpfQINEuWylXE3WGmRfcK4CHIKMw6K0xrW71YzNbB1y4XgKESNtECMNLSZZTmayPTpq8q0xelJUitUSL1y/jpVkTBKmLnp+yuMD2Ur0hRPj9vgb4QggKxKttCbyGvc35pKNp7V7Ns3r5G//bGHO/Dc3XT9gbA9eSn3cOyW0UyPqUYFY/N6ckVQnTpZixjfV3NTXhNqYYcN5pxq0KySqmRtYybgmQKbG2OTxoyejMDPuHYlmBpGWijclCcuf22PAF7EUWfQpnGC0ciLjKqFeWHlnY+Lgu7GE4aDThFQITHZ9n1UpNRqVRdw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "haeSWC/a3SokRLKqoSO28Z6A+i5TK2kpdAAtyF4b5do", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "omx+w1/wwACVTX9IIgOMjiyy7KpaQybq2Tt6J6azLbuexyBp4P1dbjajR+DttinEs0V/9mOajTadUVbQ8P9U+eIQjVU72VF3b17fgpJmORqPDHa6AcxGLyI+NvtkR/yOze+Q4Ns/UjDNyi+7494amQYQOk6qt2zlNK4S5xRauvOoGsjf2kUB2OQTzYrs4lPPeCWNaJrEHlLaV/5kHPC2bTOWn/FzOKAmUoMmrNs5iemWk3z0t2qsKS7vynEqV0HPSvzZfEQbz1FDVX22OS2mzQ7fjvJaCu51YgmAAdmTNuZuUte0x47SxvHV7C964fmJz3Eja6jf08K4aqBMJhOosjRGwwVbmRhOLjjuIJo/OuAT1tSac0aDJo0Evvuf/Kwhb2gUcNTnvAqZWmHp2yj8sjjGe6mLPav4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hcGtV72e23rv6llTJpabgbo8ZK/3+kU0XZPKCGlIdLA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DL8GjXAT4r6evAriFY69UvORJeWWpQ4uncOipIOSjGDlnkSiq9fTiRNTbIQ69QUFk5vCoRxRAFmzg7Tgovpn5Ynp7QW6XWEc2lwKWlXYL4bzU70tqexmovVL21DeSBRBAe5KxDcUwljNHhP3UjiKeCi6A8dW9KsP1YVcgLTN95+yCMjWyjHkX5ah6AaQhIzpk/i+ccBgbNreC0b/c4NNN5mdnkzxCKrbL3dyn3JY9OZtDrbDiPnSpF6AQYRjAFrldhUqZ9IUhmhvaq4S20QH1X9ArihCbMQNYfIlPWoZh0GOueeO+76M2wQJSHlNsaOvfEFzHIk/SGVKO01HBAsG+BUd2Zc+6l2/HtOoG+jSyFu0S5xS87dMWDH4ZVZ/frab3SZAiXU0Pfx6vQ7wIDOuNOTUVpIJUYVm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hcZCB0tx3EA4oSnnKiI6JJSnDD2Uw7j+RpQLA7rh4QI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bOVG9jDJPcUGKgIQ+w/Bq4g6NNvy421/JvvISyllk86VQYfcT4jyHyjVMkcK3RQ5Oj0BSCOQwOXvcLDLm6lVbsoctBOUfdN/HDqlsgVy7cAmdprH/7gf8P8g/xFZKi4B8YGrKlfZnypPiimfn6qavdNqxKIT9DgrOnsyI+89036/BmYKeo0IGMwhbPUzwanzkn7p6inh+g3zWvWtBiRrhvcR86tBuq+eqiqRW7FaR/+/ahVFajuMqJXMHo98f0Y7uif8Wy7X0idNiFWVJNdbF/VlLf9IDF3mGPkwsnob62DnWd+FrDyrMmJTnCGSQrVm7L7BxK7pCvJATRZ0XifrpkQjS3bSfDf03xQsTkML6JbzJ1shRucUJoWo9Gj3bygXwUWWcgjiXwcdWN9VM0JJrrtVG3ds4XLJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hcy6htZMUeSh4/rghu3E8IJLjvzQ1SDQQiYfP+w7n0k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4dIzYeGU8v90T2UbdPyvDsqoIWjaWZDpGOPrVUfS0ZVdEo1sF/Oxm9Gpenmf3rdEH81oZlqW5HvV7Ue8N7KSBTkh4MSHAdrfbS2u+Ul9vkoxsAwSCGCDyRobWkC4Uhr0M548ZgxGMuTGTG0EXX0qANPYZm/5IO1S84SRUxBGu36dny5UcFJNBOeios137E+IWS7GRbQs8VhjjkJVIwgMsFVawKlaIdGdq4LL4Ik8GQtxoVG3g+MGmBdp+naMV++IWNMeuROt38nhJtwBa18QnLwPYLAnXOoqkYZSSsgf6ApqWNnGquCF2WbI7NL5BnBbId81ZOnFQXWEoq6+Zo4UMh/v3lVhdYd++nHjwn8/ZjOaqGdDpRw0sLGssoPvEmI4OekorC2YmXaJ0/Z5JZ+03gxbWv8Ct27f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hdudJdMSNwyzuA/LpaE9vO0Bqb/VsczfjSU3aSYLzQs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VehJsv6vvCuNBrrerH6afLjeYEoSysrGBu9OAnxTtGjmkq9zfiVhExAjHXUSHwp6Wn8UzyAaus8crDtQrkUE/5PrJUpNPmrvEaIlvMsA+JzkHCcH1Ho/YnIVsS7WEUyARd1DtDzxxTZrb5CGEox9x06RRHJUns5hswqO3TAg/Mm4A90Re+Z1VAMqUPZb4qW7FiLB3UqySIypxSkoZ/nvhTZUobRCNMhOAJKXXCA/sKfkyj7+0Ew72WPUiZj32+AOk4BhQjMIL9xe4Y3MtLpbTG0YdfTR609YRboViavkwCzfzzcS7/pByx00WT/Wjv+ekaaCcqfuzb21rqZ9ZW3Wfe0EdXEoUWnN3cJ/uvUZnzGihUigRU559aP/0iKUSoXWiTlCySr6FQngFcOVYvBj0M7JvgyJ4IMl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hfXxobFQrTr4LOFe2x5/tKcjDBYNjq3vDcJr4PZgClQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "loPeabrel6UdscncAvsGd2zjp6LnRj6e36QTqAuGTANGIMcmSt8TpBMCEeRHK1YWJRYPOJswdL0scNnW38EqMPMd2T5iuz+jGLnTBMinNTIfinOo4IZHuCCRjCJwsKA5SUIxMjVfFz3kioJMHZEFbivFnic66DB94mq7YTZGQjt5jGyTFSbJmWVjsHXuseA6oMV/mJ4wBKzpj6rH5HWIBhDKPf83WsKMLG1n6sKmWHKMse9MueLYFRZmrSWZ2O5+iL3GXU2vrLdDoSBSG4HYzEJRDLieKaQG27pCo2EQfA3oMg4kKgw/NrUZnlwPG2+cb8oP85QvuUvgoKILJyc11PmzJZBQPaQgaISd5/LwyLQeBQhERo+pC5C+3k39kNN2VZSLjkylvsu06UE8iR+wB5tX98uTZ61z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hft6g3DaaREdJhwFivUrll3kmVj4kDjSP+moT9skOvk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bYvI2GU0Hjq7U3/z/quLKsVGiMrCjIRBjBYFFPive5ukpHOPlCFdrxAsV7osvzziDDtf2RFQINjF4DsEKJNaM02HcdvH0AgNqJeWTXCICzc6qBdRhuseJsxP1mzjoAobV0WLRUzQjDDp5VCsMyyLZpx2GFCMf6GngELqm6YLIHUwjkrM1PuRZvXGUIXeO3YfeZjhel9D3fimaVX4HI4RFu9l4dM9sNtlXkF2O9+FM+0MPPw9GivLdUtd/CR44so5UzZE/p9Z32jVCtFKIDbmWECPV0+H+DOHhjDv35VL+ZOYWS4he6zWmQWn1eWL3+DcA/zwD8IZwq56TGcAC4ioR1PQZONMGopafkxzGiRe8geO3e8Vyjfz7ksCN8zo5mVQXOQtuFqVOi2Rpkbt/4SuVDBxRBnQ13ls", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hjhKqfXfIk+ei47jNme/0bDY5tmgCeXKQ05B7uCtKAc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3ajbpJLDpD2M9vd6NVF8VYnAKm/TqrqTe52gevUnRcEzbNKW3DzhJP4LdkCX6Lb3/JtzJRSuN5D/YtC4UNOgHLlQHifU+PBVoMkbnc3ohXQ7EggCH2pMXcqFeAAMdabMZI8CxJZDhnFeX0JQePNZLw5Shl+BUJFEqXmJqRN6hJT1eTBIOWVgKgzqisPU11XGD4rUx3YJ3CR3ZtJLH5WLHPNr2Ya9H/KgDwv2a+3Si1VW69kIlRDSSmEOFdxSCmD1d1vzFndEOL1uhyikv69muozZW7GvS7X60NfyjPhc7ilYDXnwkZ963xZud4mVrIH0zGRXyKfk91llKynfgLX9hgZHW6/DeUXJBvypwgWfMx+pHANRqyPJHEc4W52vYMQJMonNuUxGpdOdTvW1SaXwLCExfGKdRjQp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hmGMfoQ0HwT2FYbZdJ3vSXzs6wC4goZQEALp8477VW8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fshPFAVUKpivDm1K+VzdwFRfpJt9T4jTReIFK6o3YYf+6Z5pDPV4HQVZe4ORi/9b6I/SkzSZRj2vCbniaN9MZZFEp3gqw4K2KsYvgQLMiiS87LzSXfMNoWsbuSbHtUBlfK9aq27/NZKj/YZ6dMxEAz154tfXKLgaQZgQddeOuolP5Bm010yIOs6VP/WRBcpaP3z+ZZaN5CU2NBfOERzvI/KlEMJCiZvDeu86XR1SRMmeLom1SNVU7Tz4sU1Xraj272fF63LsWr1kyq5uQa6UAv0bZAPl9AyxJG6A/+m95cF/bIArkwC2F5UAKuGW/0J1e8kSA0tO2m3/XGEf8cqF2Ej21KUb668Zou8nkTT6K0phmQNUw2k0s4aCEbLUsjxVHpCvuVPTVLo5NNU6siq9uRdF8emtpwhl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hmH8+nyBhQXvhPle+7ytskwwy4GDCDV8wqxzQsD79+k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LFvRmtPiSgFCLymYoaHpSVAbPa6n1TYGEsuJcCE8TcFsFG1xrHplJER57IfUi3nqC17VU655SCe2xNcmtEyOC9G/KyQAaW+HT22ruU7BINwKaxLoIsmHtLPYzhaewMvFUbn1G3UZtS3LoClyasKXU/6dYeIkrKKwwM1cqhvNict4leV1DYGskB24FkHMyg/4vLfPkG3J89sYPeGPD8eiQIXt7ygtiBGmnQ+hmDAMFR6rqgqUAtbEz30coMgpnEWJfpz8HSCCCpaqNHG0rtjA8Cm06nmHexyU2imAntOIGCEDQ8tpwVISCddaM/leOA+Yt6H2UYQM0tHFUCyUgooRoy3LOXuAxyQkDK8EftmGz42Dz3z5ab560R5EsZ9IzOuVeqtchYThNdr3tNwPhZRyw4gLcG7RRHKr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hpAN95BJbMcd0HBqYLzoHFw1BJEWrVPrhqnkiYTP37o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8pDpakGy3TEca+8aK1v2pUqN01rRcOsM0P7vkkPCEmNNGLMelgwyfn5RvmV1cs6917i560Bkm/yNYcoV1CsvbGpS8u9xJv7ieRtfasKqYe8zTZjPZ40idI2glzkIXH5BXz9RD0ACVZpSR++K5W8498Ps+rofFloOhosnyTqnlF6zkoH4Rce0fDWxZE7HWSaHQ6LARWqBAggzYVx70gzZ0ys8gSdAfx3BJd7a+2nvw0CvTs1fgIy6mmp+Ty1KEX0k/DU17bTxWiD2xY3IDEhNIUZe6i4H0iWMmU1+oKGmq2HYx+i4sRaM+m1djcDr209VNKnEVVfpZ5Wo9vVjCTDcYwN6ypOjDlMfV0PwF26yl4rgQ1vcbk3jhyxAMK8vPiXXI1dEbCaYOh0OiChVBZH4+6irI22gBwv5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hpTNJsWAaNhq+98+TlPfwt3onkPjunUY3RZbUQ0OYaE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RhCVkKOkMXbWtjU8zLdktFDlFX/Sok95brrZLy0Kxb1R+mHRez45LEBSS8briG0hyIXlne39xzzSLiN2ReOrcpcFmNLvHgft5VpJFy+c93BqZfZPS2XXxsib9wYgryM9rMTH6zrI6djQ6mIog/Orx36jgg5iijI1znu4ice6ZU4VFyEh8PLlYmmOmiwVh9aE+kFSyMz/Gx5jZPjuzfuEP5bE5JAME6bmZOEWbG0OAw1O8yDoyEl623LLtXMoQy14u2qUPlDOqV7Eov1Z3KolTbImg1lyPzGZvvD4xg/KcRGkmLUlJ9pn25YShkvI+C+tnAlaDpOabTiov2jrqLq1xnQHyhXw6ZWtruE04NMmWNwA6dPHh6CyQzb9uDQOLRvEpa4rID0rQWpXlsOXWbRwMUurlssYTU33", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hsNqAU6A3paOZmui3bZ3bFKrStHhnP1uFd/a1GRlxzw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FjBgqoTZ9UNXp1KPXpI6Q4wqwwoPTb1OQ4+EDl/KasL3PF5brn/wRnBMZ3SdlTcZhIuYLsxHq8mWDY2U+CJcbTIkPQVjqrff1Y1LzyugNa4jOthbytKyogT+rdVT597XWvC2YMlqBcP5oI7IyfB8TIafWytevsCHjAD2G/KXiYmjVeZ7ReVgpVOgykE9QPfkxsMFWmmAL1E/F6X6+FQv+KwJ4KsC1GXEdl6bVmBZh4xEfmj/i80Jb44fTxiqEbi6V7QozHnL1wIKEAk22RUm1KbR6gI5AlH506pFUaW10BHEgE3LrRp/BvdROOEv5sIFfBENn/Fobx8PnEXIbWnK8M3jFbIUSgk0x6xCk8HZVuGRCB6ShDTywdWlkG5YdMLaB+sXpUAAV9glxF6W/DHEtJBmxvN8M6S4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hu+lLhlYa1Eec0oOVmBBaNv+M+TBClpJa76FtzaznZo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w3DQLC855eS60d0/Z4cylojuwhxQp6uBEJR/ljMODB61vmT3zg/YFiA5co12IWjtPya4AYwWpMTyYmLP6tkA2v3QSBR8WxaNXUFuyErLyYzAQr0zA6tknrY26RlwGCMzguT8fxtMqz4Zzd8Snh4shmeILXTELA6G6BopXZpzrae0Dho4tPZmWTVxlsp/cPZF2GwP7SD3twgR7oPGVJieod46czp0MfJM34Ybnb77qE4O4G2DHsBV0h7psyWVQs+t237Q4k2Ox2dCafwvEykIRvwBb8XcPrGEAjRZi6w7tPwUekAUSvN2HwahEHouGkI69h5fdCZrHdL7Ppft+quJf3qMJq09otd8gjRCL1EnCid4QKmSRICydRCISmGuYiDSdlKjV+D5XzlRWpt5adm/sHv5D1ZjpLcc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hw4mmSnqP53bMOdpFAA+Oy2S6FI0NNxV4q8nirz8t/g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TmFkREjxtyGgXQKzHw2RbVt3y5rtxeQU1go59pu8ZxuGP9iK3kdMm/nxGF3JckMdYJeEDfyxJE0lj4QqME7EVIKgXyVXEYiROWlXRMtRcLfUWnS04NJyIbsiDhBNpPBO/D/gcnVi4VDy1BFqtNsAx25HOWBW1TQZtrt5sWyxE/F8Ldd8BAMV1KWnab2NwovCCqXJjFgK6MkdgJ2t4cSmSVcZLDltmWzpvsyUO7D1o/9rO5btY3NvhEJT5EKeuKZnL52IIcswzHocR5fEYo0s1Xxqu42fKl3bSa06Yszbh3SQa9DKfcQfr/21y3J/4hjt6X7XNk/kKylqoUrF+y16qEczEreRrUg8BKbfvqIndVX+vILsZFxNosuD8mckO16LpPSN+tIN9Xzad5zeq/ciEWGCdj0BaLRu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hx38kIuUi+aNOujrx7suyrr9HLEbBiJ+KyN/L5OzwwE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YKPc9/CgLpOuMaLpULq12YjLGtmjgLbxwgkgZVPz24EuoArM3Z4QWeZhQSKPK0MxJ43NHx+B3UD8xvxbBx8vgb91ddvQKnd0vnWd4fGwAcnBuci+AhOjmRG9LreNGJtuCSLIEsG93NBVQodGLvQCC90+fTrxtj9r1SNHvrFGue/sjF9f4U8Zc/gnHOPhMl/76HqUi7j8/SIGmjtr2UcyPZai+hwGK3jczIlp8T+rVJ4ZAtt6Px3ixvlKeIN7Pw+z5uH5aey6cSCZfHloBw9KkzZtTOgfS3cEXAgPWWMCqJhe0SsBBUGuH/05CsRffpZrIN12Fabbi4dzs4hZNbZUY85EM7Ji8cdVrnRNVnVk1Q2xYG8QZidHUg+eIcwfUIcIa+k6e5JAGpLWgfI+LKd52rFZGoACR93e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hxQYtYsX+RIwy6JdCuB4zjgbISYVf1aFclGLa5WxlV0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Md3h4R6gJBaW8zhkuypfB2IBFGfGhimdpiQcFpC6mV9I2VpRMH8gIjgwsxWTX6BV8bWq7MDlntucuibA2cQz3uKlml/wNTlbGenXcRU24E2dkrDRRyCLiLZ6jQslmcI+4EBX2eEwi5KNCZJfpMwYwRIAms3cl2EoYbGkn8cIk4Wfq9Q6OgERwSIL2PXidIVxZn9mvMBd7lU5qqjiqAKw75R8FuS8JFpYmy0BIDVo6LO6fZxmpERRSgdWlp7+LykljtAWcs8J1lReYT8M6Nj8rbfJapNmtciEe/wN+KoIjKXXqF3u8Fphj6HcIJUhr/KxGkLJu29lHqDKgsT0c1Bykjq12fPn9sOgNcYQeXoquZFaJ2LEItJtG3R3ThdNnKEwudrlT+GcRnhNoL4hCEKfb4oL9KZP/A1F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hyF53o4Dq4b7qXSiyRbsxgxzecXaqvXuaNnmltpnqus", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L9Enh6Cr9N7/ouI6GEjB96Ka0QlQqYLx5y0nkeqCzw25wd+77r5a0hwiyWgI0lNBC4Zf7tkmuvWHvQedercmMsG6+OKXISuYLRdcTsBP18KFVxbVr1gGun9U7pwtvK9VdJDMs0oaE6vva3hQLoAPw9OEvSamdVxWPub+wgtuL2VkcyP4t/ygXl3nOQsubHyC2M9+DG+TYwK5URH5lFK6TpWDdXpgwCgDromPkh+QrMJSSvWMpfoo6781XZIODpXeF1gNfIMTRV9+6oyckH8u8gwd10FSJVw6wG30ZFbWCcrpsr/dcokUnaTtmJEGI/8n3jjpBNcxJE8+bWycePctRwAkpABTjIvgBaFn6tLM9KoWwOQsYDGkQSnnPPL5g7Q/pgfFFVMQWHZ7y6gm5gTGkcod5bslJ622", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "hz3fIaXlmiC9QlNXUNXHv0EExgNz0reblOF1grQjxQY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4A736aE8O4878oQUTGa5Jl5VLToRhiLqqo7ev3TRTF5Y1VuGm+IihS3fwt4t9eqHphHqtwkX/uxNPniRgxID08fa9hfYXfn2plsYodvF/JqSXMEOunQRuLnLUxDNhHd3gBXKcbnC4/ES4PTz3i7gF7Kk6NAMuN6EMay0BpzwerPpSxgddrNBnYk/fKp4NHP2qtEpnQMzajhQU77BGCkmBiHfqxeaxeO6XOMEqpLnQU9+nIJFojGlRC19pOftrwCQqvCoxjY9NfG+akeYMFWIwArDHrqneoRzXUnEcb3dqxzT0TRwdznbpGkFE2ku56HgvVH7jlxF3noGav3gl0xI1LMsDtmRii9AfTO2Etr0MJVQj0VUHb32bBnLohpACAC3LnBnWLty4JSjRKZPK5IpcRXx3DHBvTa0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i+UVACo3P84MgEvyWmCUVYHF83uc4seZmWTWRqfNfBI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wASjaQOfh25eQwFAY4FYqaxRpNCXo9VzWjRm4oQICt2SBWDNP/O68Zro+adQEeyX1RXtQFkir2gouBkvcrp/6lj9WKh2/kjQVvn+cZO3eDf4joMTKCZgZ/HocnSH6Yc+Grp5uOtn9TTi4heRE/GsgBDG/fopJAlmjvg0eHyT5eAy9WSwc4hUuqKE9cGW/9xrPRpt/zNftUaU2Q6LnHzM1gzAHBB7ZmPtYRh/lcSg/1KPzmPhcNWXE1CFUu8z1hFwvKKhsetDR14b8cD8Zyh8AE6t4ujrw9p0yzSCORYLVn3JcuuJRRs/4pqI/UgNLCulDQlghoeNR7WsA6CUR1rJmqC8ALZvgnD104J3ElMwmEB5LFiRvrOC3S6/rq/zyEmPQ0Q+4IlmLPgaQW2URQan/876+62leBBW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i+vgZKqKDFcO6nFAs0OvoDxzjYCU9lzo8sEuHMdN8G0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x1vSWsO7pvjHlGH17lOelLaEzTcBbcNWUpj+5OQN44aH1AUgFLn+Lg7Wm+86Ji8gOegtyvk0tP+FkVJ/9bYdPm0u9/8g4yhfBKqTlLQPKLD6cBA1Pd5BdF4ZFVDC6Ln19Pvb2guLkRc174076yC9NC2KpDg9lVPg32AO4JmrSSZS8jaohLKvU5H8SXCnDJLr+B++6ty/009V3a2rhn16cGzy9i/iqYVQJr/scYJwDO4SwRuxBWall7fb0U2aj/ZK4+9jP9Yugl1ppvrtdxfRzlmhdE+F3b1DEjmdA0gHU0tBYKmy48m7Lu4988v7aYPciZn8igYHqOyMjxVCjD+WdafZoWQYfJJeWLV99CfMWz0wyquWYOCex4++D54Ek3bnONXv/NqsPM/bvGHVlOSP0BXqMjH18UVw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i/NSmaYcnVKE+YVlThZzxXzELgoz3t5PPk75IGDoCuI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RDDy9K0n9pf5Gw6PdRLG3JOzkwTPSGLhD1gS/HiGSIG6GpdezI3G8Qra2uhcWcrDsAv+DqrZ2mMnpde7WrJ7ptkNfH0ihAu2+soN9rzgEMXGN0OO03JToeoIMtdZcBTg8TWfIcLL450gAYpMDnx0Mzj9544hL53DgIanMKxjawByViNHYY30YOzldgYLdUtATPc5WnMpt8wtvSnwtsD259oDV8ZZwzT5KdJczPeBtd20rJ1MDM82JpWIqq58ZkAftrypGmxeQn3EZvkUcMIpQzgfJcu7y10Z+xTpOqkQdp0bFKAdbfN+lRsX8fcLlV0+KjXOpvEd+z/zm366E/T0ImBDuCZ7Zj0dgotHPSVUCNpwlHoWCxOY4LzYfdjMpQVp1r5fiOLjniBmLzaH29OOJ6pWje56tLQY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i0dUM6FWFeootiDq2txem8jSAHzEJFILmwP6rH8CE2U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dederIFhguHICusF64bU2tw1w8OXJ1fbbJJgg+i4XT1e8Lt9GDJVIEwUJUReUqZCm5ziCFCV2F3aap/jFNyc4svUsX/IOphhMBoidOhRkrbZ3KAnLo8ux4fL7taxNkC+hDXfchPTvvxppFkKxt9APbMCjkZoZOkT+b4FzF8ub5f5QbcwmC15VuEhbEpnMbGeF1ahanS8b7GEReL0DZBQwZqqL82KWsi59L9DAgyBJ+mq5XCo4Smj7X+96M9NlZKqj65BvIPniz+5TTrnfP5Nx8xaaWhonRFbkcRcLCCARFzHuZM5btDgCHdSjnvV9ZxTjDCYyDCSK7+T+4Frpb9RfhcoAUthtfeirE+LgdM+r/S+cFKgAHE3XAgplGwYcBiQfzOedwTq5NvhsR1uohTkGf8F7ksfQfh8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i1zbN9bLzO7UI294OIy9qK9Rszke67T1yv4nZSH160U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cRQiAIw+kxJiU/++H5O+89c5z5FTQSXQq3tbcslAfmRq2gFOEMLT/jq4DvCXuntLYcUY2tDZOEKrhmTzs36o0r/w9FpqSlDb+rNm9GpMvpa9nE3V2/rBgh/O6Oj92nBz/GgYmzbeG7gdANiNuEXLDgWaXKf9uHsR2TOxQ2IQ/NLU3ZhazuhfPTHWQZv9N2NcylYsWhjYp3dyocnGlOMtMFwmtPdDorOHCeJBgLAxaqls+XNp/ROrEoWWKVwdjXcU+bs44AGTKHjZ8vjIwMu49gaBCEukP2JKU5hj4HJ4aTzZ4fi7xb+OTVxH3QTd2ViKthOeNRglgWuN0MbIqA4gI/fO1xVPsZONlYuew6KjT6mV53nzptrrsJQw0s3o3HBB6SgLOsLqrPmTAB0v+oWaTrGUpTYqwPEi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i2oSSTQJLofUYP50IHwp4qYUIJgmxPtvzyRZtmaENWc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gSqGNk1jD7266gG/3DuwxoYRLM1F8MM+Ax7CDJAyf6VpwFZ25VMIE+URL9JEL9V0VveBFl70INfT3Cs8tDUSy9GuTIAfTyfATcNXO/E2fAV9XYzvw2g7C/1IcOc0XsZg+LlP3SG3hTdZzMSMUbou1Tyt2r/o3ztZxvPikD+Pai3vNNV/k5SED60dDZwIvcftfFWHV/w/V8rhaECVWZHMn4dzsW7wY+NhJXE6dWrP65EuCuOw8u/gS6Jq+sa0+UhFHRLWYgaUNw2eduwXGuSiyr65+TpISAfUo+zSJZBaWlY8tNlf/ArlD15YO4fu8RgFQiS40w9GwiZmC4g+wL8K0P97wg9dt+W+l2CVHNT6J+er3oLZk5aaFwo9WFUeUrt4jIzBk3/pG2241tLbtCIi2gef+vrGEBFT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i3A5K8LEg9tz9xGBIk8WbSWTHu8zwu3NVIl4Buq4Vq4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3JM3TQdInSq5dEi6aJ+Nw28y+Bv9aIdP3WwEAJ6RW2Fd0ICtOfHO9nOrqQvYNIXhi2quBv94IRs8tBEPSYb/z+agQcpxasBIZQT9ef8Ziv19fb/GNoSCG4GRMPOc9rAV4O7CuO4G/miD9fkkjXDVsW0xgbvNq9Ot7zNwzGGwqJgunZLGOVKPdwOANsvA9/Zgewtns94WIIPZfFlGJ8hSwhYDqsX4ex/J7xgBc6Ifm9ummaqSxDEfYWj0pDYI0h3pV55VEGMjaWdaHzglEVp6pyTc1VXee09i7U7VmwuNMBGTkqj46di3dwTa3SBy0fJNEvYj8tMpu6VXHdkZrind7lqc7PPK5HITfWMho2CBLYK4pZfatk1DySOEAqXetY44wzHdS8pCPYMGOwXRxelwEXtETpfUh9sx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i3NxeZFV7x4nXJXDqQUPazn55jbEA4pXx2/41EwWFZo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wd51T7V3QBwA0eFxPOjy4l1rmpOmLKiJaQJE0pdDkocluGzbgue2+qpvzmjbmz20Dzivq7Q+pH2e/mxwU1H3S4sjQai1kGrT5GuoN2CQMVx+Z0rLzQ9ca3gJKFRcth+wBDf5vmEPBqSKhfKISd5jXE+GP8TSR/ouYEiRVxBLuOi9m/2mXwWHvV59fSJSnG/nZnYbcSsT/jlxDLsY+WwnlRg4OY263DMmP48uT3VxCjb/dWMkfvNZ0P1dhnTeEvnAXAupA7x3ed2l4U35ZoQpX8CdO1QR1MjnRFSGst523Rjpnjh6de6Gf3S/ScFV5sK40HZY7C+ognRTc6SHClK+kAJFeIUzXqUS4SZg3uLwBtsSIQfV4aRbaALLPlTt8pa1frgRUXZYKF9hPS9b2T7aM9OUItSvDtbP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i4PKPLrJfRl66cGzlxAQvfPAbjvL+VJr9n0n1UnHrFk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s2wlNoNqZ05sqcJJokF70OIfWrB369xrGk5CCN55pYiHJD1SihjGFs5pHc+vTvOQyU9s6FUbwsDzSfDEVl3Ozo1k5UAx9qHHuypIQJOu9hOFAJGIbijbFBI8pBF0XoUWLJvYOUBxWwKdyPysEuMkUOOviWAnJXu/XF1f/+KNe494yam1vU4KtWmJJeyAZcPVbYPzn+1YEcApaw71ofCG33fp+X1ckkjkCx5Ne+2KG7+ouMSyQGJ8TI9cpdrh4Sv2WY6936f6kb0sw0RDKv3UxWys0wsS3NwVee0tBPmhoodrC0uJ8FxUlLCpOTUIHQ0+SfU7H1QuZ6t78YYHaypPnkSOpINjGZtriLl8J9CjL9fsnRcAe9llyYT99O6G2ZPk7MFGzW5WlXX5kE/o1iXGFtleFo3T1Cvs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i4VmivsVXTLh60FBtMJGrEBIaZrZmSTv5opcL4ixizY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i86C+1M8otvwWfUDtN8rFnWkNd71naNUfycHO/mDbGJbkg7PvfNS4921RlQkPCtQ8dOfeWFl0Zo0m45NjYAxH7GxjU3ZSC6SyUwYcY9fAAIQBxUNj6yt1BT1aFPsAeGx3zhDyKqohTMhGcxf8tl0B2HujWmXzjCiSiv2F64IIa2o2K5tALh6z+e4EfeHE0NoSAp4sw0XHCeoexBuq8gDIWJGmiEdbp8kVhhYsOrCTxkskJa061S0o3KW/mJ9sGrYiPqpFVAmuOrDOLn6js73zGzOXujj3Twnrzm1L/Z2dQZyp4KhfRapn2RRq0Z9Ku/CgeyquRMH8MeMXvzcznJA9+BmJLe4EuaTaLzcIKs09MBBSTwfWjZ1qdV824wDGxcaJTxEQzwOOp8cbdmKzOdOUCck1zLxJkcN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i4gBBaxwK2Diio1Ja8SzsJA95XUVz3aUzDSPyeqYbRk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Wt9ECERVu2sCWqZp5b/N5446tOXE6gqmljlqOHBW5KBk304Hmjv6hy5pkcNezmMgmKxswE3D0oqBA7r4hioSj+Xwvhv7TPfIX9tgNvDdK1FIqt0HrNHq4Faz1gFJVR1cZ0CqIM4dkjZI3LZqqHONVEH4ZzGkHnhcYmDoVsdYQTFh/3RkcvU8YOSa64lPYn6jCdTJIz28y/txcbTaOpD0ahlmLHcYe5o92Dg9xlg0UiT0/pLv73m7vQOHA7B8eAA1SUMJ9OyD9XkbxiDS5ZYqJAR7BfSlbdhhkm8iaLgpVJgVH3HswvnjNK+MnEaZJRi1RHkQFbJ3qv4Yj9ZhQeapP7fXICvNE8m5nk/hkAuFXJ1gU4s+N9KgP2Hak6BtmKsD1NyR2OAhWmQVGAEfJaGENyBYBPNePjmF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i55OCKrlZRFDxUNR6w0m2uda/OvNyiZ3t9PHASlxhds", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8lJTkV6Cz9CeL3bQk2t5PVH5tM+z/v7HR24TcIrObVCsLG+k5kioJxxJYrTY3kd5GIqgl+cxa9XqC/dd6B6s4u0vNupt9N5h841TebnaGJ7r1lYYAdcQxT7gOSkwIk2XI8EFeAUUqvr9+rJdlN924KVsaTDZq8ByWoLvV83/DuQGrQeerFEnpGzqCImNNlvpmehDOBRQxVHdllmzeI94sqP0yyUbAEyttU7uQvVH7UJ2h6Ar+p4hk7Y6OZpuMlToCxZpoWwxU+XbIeXOnFUNxuiQxQTqJG+re0w+CCWak4XAMEHw21kGBIi+eOa6XHQwawkPWEdEvqcd1SE2KXuNFBBLD3jjRhX6QfkbVFwKN9ujlEVEfdFVwAACwFNvIa1CFldo8U6STLqf/d8Aba5GEqLQ34QmdAng", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i5YGKiSvmz0a24NvSyxqP+xERXiqv+G2+0OFUpKtkGE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZXMigG591qiIuNz1sLaSTa0HaEvE7k99gKinhozfR5ZKqFp4Q5c4/iNvvTY3GxDw4R0hfIa+N8G1JmgYFanj3RXrvwLiDUTt3KpWxOFKtR3EmuMbi3pFLZuwPYI/3sK/eqTT5qj/F6t3el0skkRbUPKo155o3nv5KLOvoAZMmGM52FemLDTGPKLnG8KfwRoK4Ey6Z8zihlJQpVJoyhYAH/l+qS9ASA/c1KW1ShTFfcj+9KkBOZGBnTvhB/w143JzUsFUC21u5JOtMmQaqwVco5oXZLi7x10FEkueY+SmH/pVU+8mXYFTjJw+nnwOmQ6flizsg5Hx40alCn6XwhPNZm7+tw6gXL3nXA38sb0nVxsoVDQRxz3XDd1R4mfuPLsjoHV255Tt90WAW32VKqy8IFsKuEHf5QNj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i6/7i8tXaHnn9ulJOzdrZtvUaCutyO3yNKQWZGZpvUQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Qu2URURIjidRL+G/BrLCWrH/Y2Oup8D2emt9ruqPcgMhWAr9IsnzQf/nLS+peCIiWB3Z/bMLy8/BI83c/kf18QP34Hjw1UMKlujuz/btJikCnNzFh7rBiHh7Uz3fDjxpE4LVprlGeEH7FMuTLiu4BzPghyDf876Y2ZMuex51F9eAX1pEKZKlFRLX9Nw6nfyziQr13hQ77Gt7eyVPm+w+yhdPnKnUZUZI0sHi2YQtnD26kUu9YqqHaOuWrlNlV0PeL5lTVxAeWAKcH/Plwh6vOWcwm0w8z/+CbmRvGB91doS3cDUTKoVnyMkd1H6vRY/xdynmZ0KT4gG5fsSDxkQKHxD1vBE+Z23zOHoTy/bwj27bU2dmahNfQmL84EW5GggBTTFfRT7hvw97YQnKGf8DvrsqM6mOT8tn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i7Wl4ONsQZj+Wb9MBmVQo0B3KIG1EuHfnh9xH3ieFxo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/JgCDT4ArgBBw7i6IdSOr2ptF6/RT7lj0s5wxkamMQuBllNs4xc+dMVd9V96fg7oY7Z3CvvGxzo432RSxWlNhyoxOfcejlXh4bDGkB6wiHm3vnUil6oBr7i52Ye/Nqu7SZVA5BbY1dLJ9wqqTN7hmo1enZyf/6zqr0oxVgGkP15bUDFQf4ZTMKv865LEZ+q0G8x+aKEv+Yz4tcywpUXVmodWKzuaymBN80OgRXBdlm8da1VF+74GRHtZKgem+axn95T6MbuMYz8xHu0JlUUNbwnPBjPPELTArIvpLPIUWoaWx1dzOY9SDYF7IUgl5KWLHXWgy0SQxccWY29HvQwdnjb9pBuLf3/pkrFVB9RVuMBIZQ7PjdoqlrYTyjIezu9N5QAirZpltE52h8MTULO2VoaaCfwCdIJJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i8F1e7C6FInuPnUCaFkA8EEUfeybxZI8wK0rlSHl0EA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "28AfsRRc1w5Le/YwQ4cYE4j0/0HG5IxLazx60U/GbbyelKt+gzelAaac9GKVCqe593vhT8ezKpZ7wb6cr42ItJW6fkZbZym2zJCiHfe67nme6pHByX3H6wWs8f4x8pCfyQcJn4PNY7m7FGPOZUmKOe03uCrBgx5OlTxN3b8X9IbQYre0tO4jdulXPKbTRC6BnxYJrzdCBwGUaPIAp9ocBtBUk/bjSUr6bTQb4ybDFRfhFbWCOL5Xsk2lUYePQeFG42ieMTTuP/Enh+P4hF+/U2bQIGHZWC4BK4zq7AD6g/73O00q9xfeyhMDoIdWu1YTQZfes3KHj/W/yoTwvDGlsB6ysjv1XvKf034IxGHVeOqua7NnQbUa/66A5jlD6neqpKJZoHSLP1r93PfagGhVEij5b90LK4P5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i8d+GmYXfy6USAQYBAXHcpiH/55crbecce2QwvnHPe4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YuoiRMLjTeCAUPDJmEvQJbRTXUZiOiniWBJAQgl+1ypQlIFoN7K79ojs7y9tukeN4kQwTKLalNXcQiFVVInEOEzXFIwypUKx+oIjt7/MqjqqZeIONzD07LKa77Tfa20Q5nSMaEATV3TKDVDBbcBtnERQNRfa+Y3AxxqZ4UIsIBa4rit62OASjStrVTyaWiptlG2EIIn20u/Pg6a9gRkj0ILHSTkzC8fNdEXBO8nID/QiXUEdNjS6d9l0OWq6kcG7sMOn15eku+XGR3VDES6HCBNSZjQUJ0R3F5QrK6DTIWB+0BvDXlcFU92KaQcesqe1cm3+i9Qv6n3ZFir2FaFmHepSKrgvxV870YX688zG07Q0xBLbteH7NenSzEh0JK5sSRU+wtWVZifkK6F13zlfnJlfyIW0Nb55", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "i8ix/Al5W3zzRpF4Gi/ra82jNqa7W7TYTP3P8WcKSPY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cMGpsgBwwes1uOTlHL5m9C2XKXH9G4WaalC0HW+VqHfuXu5bva8PqwJRz7o8xnJOmORCoNPJ7Qc8bPRvtzSby+kdpNPgJ0DAJiIo7ye1xvm08OAUCJI5q1uoqCByklwXLNxIsrJUhln3fJPWqB+8QOwMANiq3I3HUxVyBT+AxKUY0Zq+jHLnukvhfvBKimrUMA2Gg+3YAP4+GO7m0UTX7LRy9pokNZ6m8yemRt4/xR5ReafpMajbt8FfMre/TQwwRwHB2KDIXSHDg+U2awWOi1xYkJNyqMBaFRzKb1Z8u2WNicaQ0lnNPY/A0Ah2DZv02jvXyB0AEsoJpzxSHX4PoT3TRBO+k4QUsfWxnT6RqymDwkoFEPXuG8dzEO+I+q/8mjwy/8NdBG13+8wLxx/5nR1oWkqrU0Mz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iBXqWHYXydwYP4TLpH/qUMb6vx4gMpcTCx/vXzx6aDs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s3pWkq0dNuX/20a2oPYioXurs9RdHmMbecA64xWdDAgL+20iKvu6+kSGqZpBw7rmSsXjvUnw/qlkCiTOg3W1gOun0qPbXl03vktqFibMKWDyEIcQuE3JihDkkyh9eLlEsZO1uV6wBluzuQ/elfrXOSr2RSv8saIXStmHp6Io7uVhIXsw22Rmtw3n9HvXyZb8+MK5rJuFa9vTD97RKzC7c/asVo33FrkaG4iwsNRmcZHxZbUi8fc+oYLEzMtAai7zD7RzC53+IquQE2oS8SRqupIFMv5iy9wj7/oHpXJ7SVumKB1F+hEye7Jh65lAiFlmzfGmWvGY4Uv9L4xWmX8AADDx6ULZurLR8LS6YB3564FBSn4Ckiq4arpYk5bD0o6gFOnZ7tZSdUdtK9MKQhpzr9t9x2Bj8rdm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iCMWZX5o8SzI/Bjtq4eLkfkYkU3g5hj2mf/V84sM7Ao", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rvC0nIGJoB3pR0KTGkM+ynV4PoTHGIngVWB8pf4QTboqpzsD54+/1WErhqyMiipZ0L5/XnVb9IvEtDRhOy1shgjGtel6TBnrjmrE4kKplI5ED3xWybbMPWjpHG5ULpAPHmELIZ3GrjfC7aylqiKsdgXwmjdrq+5QTXljbVXkt2edPQlZV6pdQvEXFNOswnUEmJ5PMvwuNCBGY5eS5Qf+HHPVIxaa3Fu4DK303wHMOhSgXVjHQaGEMq9fZojV1kgwPDVJJVWQJ2PwulhJHDsy2K8m3fc1PbCktQVpNgFk6wLCm2uwyz1AL7a3cgS75V0Mu5BpsNLch5c05J0JSf8YM6dPPggAx0ozSy61ek/VrPbd536cCJIOrAA523pzEZWyLAHGF7RIUpOCMLQEs9bVC8n49UiCrQ6A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iE2lToHF2LjufCmy1r3uuOFV2uBFYKkH/ANfLvjVQnE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+9S24XIjIQR/LlxKnJ2irnP+pf77gz86IuM9WUpLDdzH6R84vodCp6STTqIEC8PTkMlBZLQ67dmvVFEiCvtfCNHgkwMwy1sgZorac5kypqE8R6h3V422OIz8A93FR5dlnJ7XJocCjO1Zl9T/HGROc1uiP/eF+Svk+OzkwwOAU8Mv8FM9Pya8MFMEqs4QJpyL8awjnl8UjwhS2Zmikd70RMY4VJ8Mr7VRcEQKPXhic8IcA2ifBWpEoKhldWaV9yZlURTthH6S+rsIpzhU/B/ZnH4HwgKQL1ayXcpIjVWmg0aVsyueNneaPyQr1RliHbVaJ8tMxhPIYiZI3QezrJHWteeGepSF1spPi9y5/svNRqCgY/ePssknr5dAV/l4k+fEB6nD4XjwilHzY2qq1ZyCyMbOk8XW3SI4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iFxaSoAP3mP+2VDUpszSHeHsQjiW2xFULv50ghK3xqI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uAmTw7g55Gs3eTqEU6/9UklII8neygZLhj6EYUNRq8ZfCMAvGJrIxIODAQVuH9+r928s8FS6vCiaNP1SvyEVI21mFDdlKUBjmw7R6Zhc230GcV128q91x05/wgcH6paI1kxnxQFD3dTJmX/A7uLwX8Puf0qxJ0q5J7gClxY88NboP9kC6Mu7SgYNUQXOQGxWeoyozrbh0gBXmOliHcwdVbsgj8JOp+jWjsYOaqllPsWnSCsg6svCew/KShhBPt1uAIErMrO8YOloudQlbfl2cr6bsWwDsnzfnZHNz7OIpgQqeWpsyEYmFd6/PY3Xw8iKZvFf/b5WAJlYfieDi7QcsS2cDZqoJTeva7fMxKtny32O2CLzHuNpQFXD5pkdvGaeltXDsssXgABGyWTtn39q1rhvVqyWkiqt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iGR9BhvcxDBrmC6pa9MIqLviVfeJw+Xw4X344JFuJWg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ss4SgzLdIesYSML0ArVGdUn1IKsW4mK6y7fnpFdHbgnS5Prkba+Z1SKr78bVZmvOuzc2/3Ur3iqnjyJY6HfCxSc1vJQdBeI898spcGY4fOtIYNwr6oV40haU/sxZgjZ2acXclI+l2xIKAM8vgc1ulv42SeyR/xBKkpNs97RNr9lVq+6ZJin67Et0uc2fjn12Dlk2rgC+Kq1wQI1mu6xwMtuv/mYITxvwAujl1KOM9nuMEFaeFGj1NYoQR9jx7qSS9FZtbHs1LO1uO/LFBlUHggKCYJ5skGQ/uwHs/N0q3Wkr0oyyVMSM4MDlhBgLw3p0V38y/GCCoD9QFTpFx24ODTQCWAAzcMQK1BnZjunET697SfQO9PrQl1hImTdoTcTBnfqjBMokOUiZzicVUNvRGLlno7n93OEM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iGTwc4c0gFiW/q14Rr39P/eW4bW4K2O2dk3rfF4KJoE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hiNymZ9yoQIjvQvcO0KU57v1xlxtT69bEvScpaTNVs2sE0oV0y46mGib3vMMuaQQQRrp6kBZYZZC214NiO0GMxWd06VJ/Hr3XxAVuHH7R6lZM8gOimlhmxQOOpmQI4s2okLOQh0WmBl5li5QZv1wmlUSYgoKRV1+FahfVo++3EED5tU+CwbCl9cTlAaUVCvRTAqHWAxPhfhFGscwCrl0ZZrUwSax3QZ2MHyq75UQ9c9sErBvhqX+XX+M6Mv5nD33bjvtODRp0RaYR7nY/MlNfEYL3SZMClj5jaBjugqB2SeXrFkCY599MYJZyHcF5K9BxPMblls1xlIe/Dz2KSBr5TDKnbGdZDHpYTBdVWD/mYz3ZFzDc8wH/VNpg5oN2LOhF1KtQMePWAu094iE3pjqjVzNzs3uRZqI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iH1slmPm7B/U7IY5H7qNaOh9s4boDTfMmm6OPcRN5s8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hsBiFHXZF0xXGNL42e1M0cQ5x8fWu08iijsiVFqEjb90w1B8GgP/ynwabJadl8oqN7xUXU4ygoZc0HhpU9zcC7bzR2eKhfOU1hhbG0G0PXWENI17ZhlJN5xetz+SlMKO/CBpxTzYrYcWonMelExijY76phxDm5PXwxQr357EtjjWs0M1MV1hkHwhZOjDZa/829KNt2LxRP/Zap1MquNiARL3t8yttxEyN14RDr4WEVZhZDNxmpucEAXNQKETL9CNofYwjVFV9hmVaSBlkCvZ76H9ub6Wl2NFCEF72rNCyJwM+Vl074mB1jLOTksG9G2fStndAt9bjQCRAtCQmY4xFJsZRGlXHnDz4Mk1BdF+4+9YmVQXqUkm8uUFSAnmMixTAqhOnNLZ5k/NOUZQOa4q93C1gAf2Uf+0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iHg3jp552lFvUWrUawllQgg1rU9M7Vsh9Bqg39taG/g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sNxPn6EogFftpPiht/PtVl1NaxzHcc++ZOdY8HFfyQHiA3tHrma7gjWk5aBJ30hybYbxUIoiMyh50qxT0WZe/icUKdeT/1KuP115iRz/D4kaeUkrusIdVdtmqKNpGq2B13qifMFIcam6tJVwKRsTaESG5x93eJKnlQILJVhBlyA/a1a/FLeN59SaxHW+iCBsaF+rjIHD4bXc2pkbZpfGr5UiN3uhmYKUie+oPiu5h80otSPhRcu7HJPxlPzBfTTP4zLQcsTVppzsNN7RILaK5Fst2acoovV9bzoXmsiViGInuz7UePIvkZdDWPEDVwENiACdH5MDxD5D35F6grOXNeEBMvEU91y4VMJseOTQXs3d35+Q3xzgYnbeKx9kuTlAdWAOjyb2AyGiB76DqccWnTA7Qkm/mPxI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iHuzTKqnuOhg0zFjeQc432q9y81f9TWX7Durm4Tz4Hc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DHO/Dy3kCYGGPFzQ0bixFKooBuelz5GC1zdkKfVa3G9VvPfLO2LHsU1bnFweSyID/1zIVHvVVOHy9OjRSGXk/ous8ydRKYItnljWjhulEOlx/j4IGH+jaxyGeXWVzrAzV1kpe3QB6/0lxk3ML2a73oqwossExfLHWchsMAykzXLEldx3+W/YkXcrCUFMXsl5Fk/ySv6c4bcgf1WV5ac1fUFT6xUWwThbGMEx2EQ7dRjVkb7oe+4qpOotbI2fJ9FGh+uugAVwdFcAQvlSp//HZUYj4X7Tircb1Rt1gqGdLXe9PiMZn8kdrGjFxSGKXzi08HJ2nlOUg129yTBFyTEEbMzrnWtpulLzdH74WSVgXAMdBP2LFT8F8fcN1s0ygh3ek6xXeX5Ib5wtly7dj0iCT6GuuSOFwOyg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iIxwVx+o+J56E2FY0OMD7v36aYjdhAkSaWMcQ4EI+HQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PqVzT40X4NTmPAYrcsygz4aO4r+fE8Ulpk+R/AzJQU7rERpK65K95jMyueHWo775clyrD2q/H6+ZbIVKS6QAPbRtiyj/nCHLldwzPZjiiFQZUDe35/gCh07GZ1xLRaDpt4bEe3U50W4EI5QdMBdIl/dUG2XrwR9nKzE6cfjOsB7GnieytZadczTg6sO+bE/GeUP3NvLY0jZFr61xsyo2lDwcToNFE5OgP5TsMySj4wRLIPjsiZSz9wmm/110JkfOM3jjlLn2K6PbfzUMo8oq3sSYyJBiwPMpbSWDoT1Q4w1E3JWN6ofdxmVmS1Pk7AKHABROPNxHg3SVqwTu/gO0fz5I5T01+wQ7gbp1wj6+kK5FNXM3WWDEldqs4gRNEjBLy/gfpYO17jVWwWrXAXTJspZLXQRsIMCs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iJk4VdnSY7mYUt/DyqjV/wxX7nBvMQ4aK7aQeBD7bQ4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gzhwaQCDlPTEnVtian2RU+8Wn2S7gM6PLwilidYKnLwAzELQuasNHfYzqqEWh4iQ7W9tKDdGgYyPSh4twqlCjHcYHoUZTgTgW8O023Bv7o89FH6gi9KyHfRW0Uq2i9XD3ca8ZF3OYe5yf+EPZjMQp1LJU9GHY9qXNbOVbJZrjKAbfsGCRSmUyei/x7HB8yD4tU7dF0WlEnUt9H3r0p6U33ikFr+spvZ/xIOHR30CLSqsGBjnprffMENsojNscShCYWxiSX2tSD8g+p1SUEVO6ti6u8nnDTglEUjanuDwEC/d8pF7GGN4Qk9UEmW4en1W7JAFu+rXw7eAfCUsyDXpUSNtHKKndGrU//2s0Us8UFeq4Rw6+9rKNGvmZtb+ghyI57bCHa+P0LrKMiNo2GKb8zM6hvU+bWUx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iLBsWpm8MBuqMNu1UlL710+ISp4LYQJhSBspnGJUpks", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/NUecV6gE4ETJy1b1u54xHQQZYPCBaE4yL8Iq6yUM+n1LcR58qrKXS2BbntlzZpxkO++Atc/jkIJTeNKWwRrqUR7jQW2IJzwdN9ItS9A6f67J6T7M72qESrVMMoRwsHmUZR5PYZFFSzNL9jXzLt8Gy0CWHBqyxBrcOHwonZpj6+TN1o/MMFyRLzBRJFyFXu8XQzmh1YMWE4tQ6OQy7ZhMEbjhfktDA5MASpHgIcR26bAwSm9Eg0ZBTnDDmp6IkkLOFOG+PAgwD1n8WnU2yTlbvCvdJGFm4WB5D1gzoRC96KLL+TuPq50jZDSU8avm7vp5DrHC7ORDQje2tbGSPwpA7nZcdmFndnLIsihmT5vvP6gGB6DwscyH/RToe0DDD8gL7UfNPSOTDK3rVPa+YH4LYSdhBUtN4Pg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iLyF6n6Oozk2azxZd38pWBGCBbMluwI7/xDIAthqns0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tCYRRf657gw9cEQJ4BGRwviu7LANgOb1lygpRvC7ZcrY/+aDN/Nhm/m68Qhbdy5JbMuU1/Syrv3AitICunEcuFsIwJD8oBZ3VCBKffVdRC3McICN59f2S5c8HeNc/4jpKhK+ORE38a5Ru1rXushL1itqKllWRI+h/RUSse4CplbN1/gFbl2hhEg/bX+1ptZGuUlDy3ZxLooyLz+0T5ROx9Bf/AVEAE2dmHzH0B27hXlGn+4W4I7SUM0Vh3Z+5YVyhF6j995smIO8U29iO9I9OgB3mHBXyjWPQ5u2Zrtm3Z8JeuAFx6fTLCczQdmRMro48W4eBr3PR4qSCFkYz6g3Lsabkf8z6PJlmglR8ZgNjwF599MhNZcPbUfAwoGzLCrmIDHOGBZl9uX9nERA3BwwsSEUcqt3eEBW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iLzF/od9kwumsC3EUcD949KXhX5Bfs/a59t8QnPIYi0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "n9WJNuhlczb9pehxlN53xFBJ8tnWiILj5S2b0IcMGbkn/AO3n62xvk55+M6Lh11JEcirsGGyIZWycF3vwomBRCMw8pMEDRpBqDWBPELzHvQotea9Oz6KQtg8iS+D85GFuJPIwzkmeCpx6XAoDfVKbYWmwlOj+cXlBhSsvk/G+cXRhnyQejnO/cFDd7IQeVQZ+HWIm9YMKR2n4Cj8/z0FvtIjwC8FZZiRubpyNIWWwbadaTc3NfQR1QbDtScVuaEtUhtgFKQFfESf5YI17QSC4C+hKOloQIYcXLdnh+54OSLJBfrj34CUdSJjQqWyNeTPFAlq2Zn1jfJrPbKA0JonpESe2un/L/wjn49CVM/vf26XsPJQdrsQUhWSiO0BzOWZY8xd1nUfbpAb4b+09jIgW27WMQBq4SgV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iMANwC9PEr4dULiqdP32jSgGiWcjWc0kgt/Giy14WWM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vWuaK5NaJBOruMNny0ZH0J7XsS4ELmuDd+phYb/E2rGe54lAFRlCc5073rRnJ5c6TkrGV8EkKGQFjPkWsJi/xjeXXXEmdulZDAhZFSttA3LBVTr0McPre/4LqtgcSBhJp5tfdMkY5q/gg6vRWyIqhXbD2DMYNdNiUi2EwBYcPKjw23/2PZC2Z9t2N28oVCmxWeibznI1tYgoh7VIoJnjCrEqBR16JCCwgYOXOETon9ktozfxj+x+IR5SvdzmAqNIWoYXNx+qQy6PQ8IXmEpbgRcgPjltdeT3jdLvVvOHjmz/CYab2t5+eOIxgNazlC87Xzs8AgkHlnZopkS9+h70abKuoBe2+dfJtx+MKXr6bPCVaZ1lArLX6TNda6qCY84joJB97qy/rml1CwaJ17wPZIEKiHMX/Cst", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iMXlsGncP3h53QObgyZ7Q6wOmMog/IV7IS2FUY24HSQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "U75H0s/S0sQykB9gKVzuc++6icG/bgzdqnps2ofBC+WI9F25EToZ0IB/ue+N7hsWFQXiMa8DuVJZHVDuxuTbJNhHyMZCX/0P+MTaSjLjdJqfibsMEbeegzJY/1YOxGl3FS1cSpaT7u1IyBA6EYjqh5SK9aIrrdae1nQ7DZ0My4YGslb4F+QRzefmOHo9elpAVR9W4MW27TRpHkxuWZ8LlzOCUmfJWJ2rQIk857me01bjjMTOeEc73cjeo4yPKVurO7CI50dkABqR1ps42PxePfMlAGRv/QKx8xP2eEi71Cqb5pmMMnkzpnaheomXg/WPc2oiSO59AntSpkNLLtVIp/5lGHbNCbxAUTov1UyRGspe+ME7o73cx/T0rD0yDOpHx7oetcLQ44F/3TBWlEl/xp6yQCy9KyZC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iMiIKZTnAJ4My36yTwv+fTiEMhHfsvcFj9e/3Gj6Mg4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+jlP+wy/zSpR0+OZzAQcCXavmcn80hgN9jmL4urfuYDVnsBvW00O9cGwe3NivVjnJO5/03TMwol9WFFIRbm735iT4jvUj6T6ceoZo00ismp+RrxIZlpm665vL3bdyaw26dRNC2GIJW2+CcB01Wu4KyPfcOJHSHUcn4CG5m/7I9KL9MNVqJLsIse1Bk4jGEQ9Sr3L/AA6u/uisrKuTAX/8Zvqk2v5BBwNYT0ZNJulbPX/kKr5/iy1lwSbI3nx5T+ZfMxsQlsns6dNvIlkJCRRHaqHyNvsPy3ActGGO+JC7CnEyMGcIyYLdf3WY8P7h8WWMXaFiFz0XRfVDnlcBMpTB6CaA/8F3qKRbf6AFgkf5uCVp6sHotlzkxkxIV4k15oUMQI6JZy7sq21KjX4jtDqBQaOzjkOFZbk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iNi1lIW4/es808VJadw2aAggcDyqzIMr84XBqP4V9EA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+JmZnmQa3+73e59jFEULBWxPuEJQ8APL5eHVfbfOtrUDokohgU7j7mOznUD9wlM1c+iffUp1cFwY5unGxmvTvmrvUYG9m1hoAWWC/KA6jnQKVuxwlj4g2t/J2GgkxXJbbaqxMz0vkoploWSBd221IM2ChNVSUQCB6SamNlzBgw4E6iVrAiL5ucFSV7AzQAnBM18yb+p69vLA719mFGneSljwEBkcCny8DgssQwafYQweycTuKkqxljyn6zKYcgKKHdJX7C4ZpRUw4yc+OQ+jzQocSTkMtjjOYpgdcGyAz/GH5hqSzr8n+GmIOkFBwhRHXqvSUd/klVszK68z+KYwvQ8I+TZBukEqSzbP+g+MibjfeovhSEe5jsCrLAKNdNnAOn4aU9n9ML2LuSyGOfgJsp3O0PyAQyxf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iNuRGM4vRTKRUvpHKd6VA/cWhus3uHihqEzhjrSUH7k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iiqN+dQgXBzdql1lcBbwjKfG4/rgC5FllJSXCk0OdsTDWYapvje7OTCIsvME3ifovq/8fU1sw0GOGHVmDDZDDN38JNxjfAhQlTGMaz9ZGdfk4sKjtQmKQ5E2up+aUlx574DqKIaCtagh1IlBXZEKMbENGER1IVZvgg01+NcPh+nf9+f5LJCVgmRdBHgO7l3s0BXbR84i9M/OpGGEJNQMXc4QHqr/eM1171SvJJtQqGd91W3eGYi3yNYRKLSQCrAsJgIktsa5nFhkinKXVD/gWfNJfQT5pSSLPadaZenNc1E1AjlWAg8bAeV7N2BubjVI288cBFI03K5/0h1+BJRKlpMJ+knRmOylnHV4clIxflNv+JAoZBJOBHyINO8llvE2hzro/O19awB8HquOUpExYIow/vLnHSmh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iOBa6GKvfykvWnXuYa6CYyOoaDtSW+VNDORrMl1q3Gw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l6tlqMlLaWVwaHSpzrl2w0hyKqOWYXXWHVxmv8h9nV5nzRO+ujCJq8gBBenYaPPZgHo4GPXbxaYh8xeSQDhLfCc/rZQ8Z4wGBHh9pomvAqalia1ZtJen1UajF6/MvqEBUuBYQRo5PyA1ptXRHqFRvnhMJQhPPYhnedDNLz/hcPHxAjjKbF542AyNxx/YS3ei1FOKMQCXiBOK8tennchv3KUIOANQw5H1wsAIhRbT0hKbG00FnHsXiaLDqS7dHxku27oqQn6kfUVgTzgrZg85lYfUxWLWACNrN7lt4PUQE3igGrm9M0yo+/8W4qn+neaiJgbvUE0BDcTF5eObhOoAARhtZR2X2HKaohtwNZio8rON3+A5cnxOOC1STIcwyW7WxEzG1w+k2V+3sK/I8wkIKZLK6crTHM0z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iOSP4vzTD3HXQ7x3Y8sMYw2HTE1++6kESJvw3E8K8cY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P0jjaE/yNLlEuEv2pBVTpC32T2+kiso5nZC8YD8BgBvi/24LJFfnc7T9/T7n5wWRrOp5YO+js7yS9jtY2mgFwzFM2PZYyS4UsHJuj3iPne7mmKUqlC+3UegTVNW3V21PeceNfvIGtcz5dlSWgIx9OxyHowIs567JWT7lW706IeVa0+/2fTHm9pMkiyH5zzheaqqg/nz2AjVMq1KC0PvBMj6lKolJfvscX9eX30cOzka6J/CMK9sL2RUZJzRkRb/Y0vxtDf1raYAvM/9oU80LMVa0EIvthTU1Xzdvh0NC6L1EZ3u8QyWwsivBxK/Y1sGefPttsrxbXplLUzOGZXuoRm2YY99wFFFkyXdJamiTQ5wTk/dbdEFJAoFV/N4nykZBer8eUl8G3+jOE/5NqYdDNaQFKjSPLisb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iQvZUw9MFRU4HBUIBKOGYtNhtTJ22mvcL/ztvIsvm6Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "feQ2QUc+3f4IuFeVD4Qcqx6tJqmMMpfgNSi1u8CA7vTUwS5mhTb/Wh8gMWrUqsZBUBeOwVJGibaPXrWwD37/w478JSmcF+44KzIdnBU/WbMadQ692GV1/mvi9ZAiZ2uobPUObsFbzXVDubypild1vwRkZxTKffHH0GCyH8EuUmfupWMRv6pQQUIuKiwzjhnyPfgGaJoO3bYIcTi9vUKaxqNZ5KrGDlkSv6ET51W3PlgpnwkTGTY+81Rq9GtpxK4lub9RzTA/kJzFhTBLMku7vcRzlddbm4wb4thRca5yv2jIxaAtOkNoSXXALGWoLua4PMl2qdM3lBcPcoKwtVDnk51mJ/FOFIBRKDDwX/Z0nDO7x01hqOKSzMlHIRglv7xKZuFm5pbgHG+s8ShPaDLF080ty1tGhoWD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iRLvewXpiukuTjyEbwFI/YozEPx/CfSie3j0lkTrj+c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pvSHcBBLTuyYQtyHRAEfvU9/uLfxrAnwD3LgbpiZKcoh2GnhQZzVlRpJmV8Vb74hXlETjZTEd2IX6NnhbjcgfeLX7fgGxn/G7YKqtEMGFGfJ0cqVm1faObG7r/kWtIyhtUzVFNx4YQSY0aJElGHHeqjoK0kRmnQ9J+CsdCDDNTNGD/Lw8fI3XqnA312C3C5p2jzOIVRFYstMdI53lDwS2NuxEYlzSx5qZMV0O4bZoQ8OMUGjJGCPEvhKeAyfT2PufZ9jbITTOAbqAmwt+JbHxaJFiPIg4wuyaoqN40WxBoS4ZQhk9mdATIXlYKFNORYgpN530zruYhhc01jjz6l5iWuiRBcQ1I40rH0Mk0jxhwch1X5SA5qadV8pKT0RmNr8229BxNmEjGhzppO1B6ERORkwjDHuee8f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iSX0P4sJKbdfN4ukyoxwuQW8/uGarigEGO4ertDoiMc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bDo6HFFnmi7u/+DUEwdgGkpdMEOsrL+ssAVcqRV6uvQoz8j/0iEYcNShBYGW9odR1khiDsNUdxFcp5Z5o+OBGKwmvNE2TyW4Y7O8h8XGnS6yrEpADbGv5lSi3v76A3PW8hx3bi1P73GKggPcE5So/B42qPQ+ye0rX5Qhl0o12xjXN0oddwUjS3LaxCvbwwNYc3eGK/yLDGsQmSHozyhsVjJzScamYrC0fCNYSMmx0z/B6Csi3JcYCJTUTWXDnRXNlgN9fi27dfouSsoVkjRqCswDnAzndcJjm9Ov8Tda0kWaME0/nddVYWBFJ/0wvRFQ5oDdMnYWAIMhCfQ2z40WdQgZFojIlHb7UiTTzjaGAmnaczMGHwjoMsYhUiMNDRTpwGmhXepmr9VJM+112Dp/m4TAhg4Qg4up", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iSjZreRTqETHQ7HYeWfl+7QVwQuGTOY+fdkVIQ0yZQE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "su8VZI4SfcPA3Xe/itB+4IS15VJBqLVIiSa5+SRZlRtaEs409LQ/r58yEDKBDfLdy2ELRzkfXmIUQwhrOjJ5FpuYWvMFGxnrx0NCYwdSyVgO0sO7hxqbkgegbPYjQF2u430fyKDv8vlLNC+oelLz1T9A41UMGXAbc96s16Q1+4EXEDPY03LMYwmfz2AqMo7ZoXXotNL+tswgXSZOewezFlMfSJKpkCXO5WMxxIXGRZPlsYW4sY6Eh17oPC+ZDxuHPIfRi/+Pp9C+aX0rTMYfT7PFzGGo+rsj++SBY0zSd47GvCJZKMBVC12qqfeauS7W65/S9THO7KYClzozCimnPGEcDgQYWmEoYMcW0VEuV4IqdE1QILM0/n1/qv/kjHvR19tvVRi19t8DfbRNgUV7K620CGYJbuG2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iTcWGRd/3eUXW5UrUAdleiXlF1ZY7ubrjLK8x+iLXXE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "21VZ/gPDyeVy9WbQK7KbnJAK1YSvCdycWUNFkkLJguCL8l+A42R2MNM5oNEq7t9QwuFx8K0rsaAqxf+8krV+6IsWG2nwP/9J6sMFSP3ZpFNII1Oc6Eo8GqdmAQx1kemG13Ig5lwc1EfZW1wY4TUjmQNg45ex+0WXTdbnxl6FQ4uxmdE2EJLSCA8dKd9fMrIqTDaQZbMiSqo/yyvmnfsNj92QGWN01fcX6WKh4MKM3Wbej0xz90JuRi3n/2j1e0+dKmBhmUWnl/OJGmZNMbaHFaT4AjzK7g7/Yvv2gVIwJxBfkfohqpGv95AQLj1rlZkO8YtW+Gyn77t4vJQ090cNPM+y8b6W1nQzuVydTjp7+y1NNZ0KQOh8o+RgB4bVOY38pFApNTfK9S85ykOYuCCTxA2e2RMXmMRA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iUYHRjuHkQ9BwPoBTWOeO9hlQL7YUp+GIYgfqrxzfT0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QnTqJjU0MOE1FHoQNI8a+mVYPjN+bF+Y1Gr6g4+mYMN9eklVZ8GCvXpZQiHbyUT1TwByhN9Wcgz38xoGbFoDUJne5gFlpqCHKuvhNtU5zRxqvv2CIM0F4sr3AnPG0Ty3+ZDWZF/2g2NLTAu0UX6kkPZQZ62zftknTXQ7U8OLbk/E+afLWDMuEanWgx6tlvq1OsOBx9Jb/UaGyHDSA0mDc3bVHN3N4iD1g/04Cm+JDeW7HcKeGOe+zypDdDnsW09LHMxJAbFf2wfQKeJZVgSPS5WK5Sio5WlMVDsPzq2qxjkMYHzZZPmfWhE/pPwzShm3PH1Ctn8hhss3Cj1O6EEYNMBou8q44Zq+64tkdPOkWLToy0WG92mEJNYmRFS/8xV01Hny263Gcqt3supOKJCUyGHfIActPNk3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iVDa+QIa/v4ZgFv8QqUN7lrmXqY0kCXHGcs8rCuwKGc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y71MC9hLDGgK4FT4LxOcpHsWdMIaP1N0TiZC07+DjkM8LZZb/DgDFtwKYwAINtGphDondqbjWBBpN2VUW0MmZhFW8WcgSl/3tGwXeI9iQ/qcrnhrWEbubrDMpUCn3S377WlrqfGO+WAgcJAHUdD+/slTYu7R9yStsHeWIwHpOwxfD1VoWLuny/ZdR9esjyKCU5iVzCacZS8vC35Px3urY9bkIOull3AZdzzfWzfi6B4hfHpXjd+z14mKbjKPBdwtDjrrZuz8kj+l1f6Vc6UF1JBCjy7h0GFs65RZ9dIqonJVv7jXs7WMNviXHFQYikF+WqPuNC7HZhHEfTMurJR/nPItKs56FpkKkyl3mjQDDvsRKBR/2gK04S+EsA9+Q2nEXh04VeDVoXswRqK+eHzKkVsJVxJR2VDj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iVcO3mFXBupwJXDHcSJSdG3ubFPU5nGUz2LQ9V+I+tg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Souh4Vt0p5cWayXs/b8+HiMREjickHGYIsH1lUEnz7s7Lu/kLnkbyivYMRpKB5FNPQyC5hX+a0x2PWb6vwB5JDSV7rO1Unt4SLHW0sXFSUb1O4M73AzNBLAvWSRylP+WLFGEEX60bOsG6zd6ENEtIVvSIIDfYAed2AaPJtOZV5CJgf7N3rCr1e+X0j+Mk+a0Oundk45J4wBQRXiQfJbbj3Bn+VN7aXaGAOhrxDq4WDikICKrEZ83Z/8AKJAtmIzNBbCTflM4RDy7tzGB3nTPR5XmOJFNJwgk6U+NU/dIyKMDysQh6LhBMGez3/TRRDudZ7ipmG1HcxkxyolAGuStvKDsF+ANsCLWuCUHLoiczoxEjRP4JRZReQOQYhzkHfNSROL4YM9ERO6Waf+rgpBrLgxhf9PigflY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iVm4IkHsXdflo8sLz7lzaWm2NISSCnKS9dwcgedm4eo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sigeGL3f2HhJbt0KvNbuedTIOEKzwU+C4V8McqgqPa24k/kc1foICGeIyBBHYef3dljh9D+drEbPFWVDqT91mtoxlEbwD8bT5NiDQMwuio9q+SxycEoz8m3XXT0Qf2WnCd0xMZJwMrtARgoEv1x5JX8hXXQfNijTs69HrtFZdSwjled9QhlayYlOIsCbUcTGnhAnOYcHUodRMfyyVvfn94Ga85dL7hu2vQK4BrHgOsbLiSPb4cQd4Gzpy1cxG4DGwmzJyV1OcSBoW+UNHs6MbOlelX60jhvfoAGJTjS/x8IJKYI0hT6TwX+O0ydLm/hjEFOzY9e2fnnUMFvEhhGoNMvKUS2R0sVCOw1tHU1Vsi0Mzt60qXmJ+u3P98U9lL3ALIMXVU5bHhGwHi5WumyEGLSzBeS0gPXE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iZ1+iw/uMSzMPLO6k7wgsKvmfTKrcCpQuf4ycULiwAE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eSFRhKD+cJ66FswpMsDhgKA/EnWM0zRLWVB9gUFtsoZThAWUmwHNkoMKk+E5I1PsL0HIAYPuCDAGesxf32uaOA26TXItPYrV7M/NhlS96lvwH8EDsh7cZQtXgqbsJaj4Vx/RQb497pGw+5xxqfhQTzeOYWjz4t7Y3r87JHAdGLSUGiYoDifhMnav2DnJONpyWTTAFL9QrAZvXMr7mTl4TY51b+ySVYNYIlVv2b/0PDViEQfC13h8D6k1PULCvElJVKOnYjys1drAEUr8GvLuPB2EHpM1yqqjtD0vXjB+s0wLdmq8j+9R8aymjQQ2kP01D0T/Qm8Nrz1euwb0outCR7sI0NV9SGn8jaPbw69UaY/b0+ltJlkJ9hOFAxa6PYIFnFqogWGwDkjbohynz156OSB1ii66rCSz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ibGC5Fj375bG2AmueXj1enoFnOi9bG+jR1/dfgolYww", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l2UoPHLWaWhas00YvS5i+hjAGhgrbGfz9h0btZGtCTcNoHKFXZnf3X2sPItXxbMvBJKnRd7KtNlTAcz6jLqKquEGuLdBCy7YGtstWCZQnT89vpIA5eNJJqOhchUACiOsHMvau6AHrHdsRerj6daQf4YGDaVq9QAzMRhlm049akgopItjm45JYakDdKe/lWWOrl5B5cBN7O5yLtf3lYS4MYYlt7tx0BzShmUkN75/oJtcAu0thKj+T/hrpITl5MrRMdR1tjZjmCf8r2xDErsVOPcqLNjyAXrXsKeE2VncQiay/HL2HYIBuoLoJ9TGF5/a+HDNVF5kKip+TffKYyP1KXUZbKCNlJsPd5Bwg/TrrIf3HbWY8FgBvQmb/sg3OgkWXKFn3blDKA3P/0WJmkR+Ok7X/5/CZ89J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ic1fPbxN93dyaOcNE6pl39O2XAGmmvRDdaQ6OFrOc7o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q9V7SQzh+J+6l48NMGsl4hlOw7R5AXxRBEhuU/6cloq8PK8jLY8eso+6PZKaJbOJglXRPUBs/L7b6U/gzlf0ngtHCXC0rq6dfGqp4q6ETimrtwqB1QYsNFdJjGRCfaanzPH+01WgGYvbo3L1tGMubjiZTCVajNKYvzSKENW46xYGav0c2M7HOmEj8pQc8jrqO8RfRjNr2uf/8tIKW/7SKSM+fPaEeGCuGg/6rHYN6a3B2OO3tvTguosaWqkFgQVTJ3So4Riepl30sc1s2KzhI8RdFzlZXFr/txOQZYtqmCX06mQe26CBUFUxkc/LEQUkkWJUkDa7GcJGGT0xfJFiZuXwLiL7AjTy/pyT6LFdNnrsNXExAVQTBfbIfmmM/jGVXcrtd+aaB3u5MOJByiWK6jnWv9iOMNni", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ic8Yx91huGvE2SkyVPw4XtjYgUbdX3mwpk9foHqtfE0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tLtvti5IbXvKVoHchYs3vUR1RIMXHVbjtpa80lTM/Qtu5eJQBz5NDgMiOhRrjut0xlLlbA8DMNmziz6ynZCTOr/82ebvSLN0EChHTdbCB49CnCLi9XAyEEjcn9+SZg8QUkRCytUvdx8apjfbXqc3RBT5RVdxFIzfMgbP2fRFUfLKMPVcdWe3CBDtZsBUFoBSHOBn9MFkI2RdyUaIi7fnp5mW04IhOa7r6wWwN+DdKmdwIEFxIfq+p9wntGuXvzCRU7urltrjVAp9AR2GrJV4I6xJsz+WC1+RpSF7hKkdr1VBmoWJhs0f2HIAnCvOyHCGzHFYRW8nLPvED+LDPRRoLam8JXVudnrlGuaUdv9GXe8fg0V9aK+KZRY5Vec6CzmhRoRS/wbSQM0hiCtubjTG7Wto+Pg5lwFP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "id9n9ZSuo9llW43b1Uw/xRxrXdLu0XIpiiw1ulRCMaU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W06OIVFXRRYd5/j1RyQykAeOPMuE6tURpGNC/zuOIeAwpP6p9Iw77q++KVRzQXWYTLM8JHUOoA+wGL5RwNR85hu1NC/vzgCqjt6u5IlmYkV/Lw/gL2aOd4vcm2VGHYoK37hY44jWRO1VdC5GLb/TXylut9xqdYA7sFTb8yB7gfMjo53DKQTa6qiAcPA804nFH+KtSj3yZcMC7ymGk5jaCepYQP/yS+MK398CXp5GS4GUJ0g5FtcdNzvsNNjM9wXIc0gFgM4nr6CSyOfjW0lfuSvvieoxMY24/G4Bv//AAVdH8Zq27ocA6EQimALDJOb8iH+Imq3Rizazgqy+/Q6iwYsCtXd81ocoFib8n1oLg9dlFEuVmnJKG26AeII9QyRej3d9Blfg4xUae7km/5Hlr/Fve5E0f4Li", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iePWp8PGPYviR+5bfrTJjv2MDemv4+4ts3Hw3tgWVhw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YF1n8fNGqVhYYo+REVpra+Pjrq6RJuciCB3GYkIYL9j5Rf2xQ4XZANVMlSIK2rAefkUtuWweQ28IhFE/0Zp+06HBFpswLfaSig0SiJJt7A0aMBa/wJ5rOD//r/BVqVMIytgd3lbgluJhyFTo9UeytfJwBS+o4BcPRoQWXGgaqe7omxyHVFGRe40yQkVz/i4FoeAcvgEAlXU6tshbAJIclk46V4nEqBRsiS3hxsMCyND10xmGBVMDN/9DwFf9ZV/yf7Ur+8j0X0m6y2eKwy8YgMtZNesIM4dM6PEnAN+7rJvWU7hu3zDH++DbCp3qc9e/zP41JrGcYQ84Qz2v5EumGRCp9fuFRAUKo5I0bAeg4U6sHL1aAQ8rg1icegY4v31t6otq2+GjJvo4sdhi+gFwuPpgR9vVMR8z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iezrVmNQ7krU+LXB+PGqGYWc4aZ9Gp+amzgx02Z2Nes", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "li8TaM8IkOP5OR3DBFFXYvU26Ka029uQKvK9x+OK6+/aenNsrjDHZ0TJVBT+4ZrsnFtxDTc0sQYJwppMhQGqGKGvezLq7knVytHwQHmFas7HHJTUEUkW6hGGREFForh8B0O84GEpT+0zmhI8/hTd5QrRv1BkkFuDWILcrq/W8rFE0LPPnD/iUwsPME4JaCBJ9R5uowNSHp4IUn1CsmiIBejS6ub/2XIwGc1X03tmalKGnB2M/CHQp3Lni+Al1Wr0Wx8fscRQ3XiLn3MZuBkEzRdK7z2s6Zj6WJ2otB1lnJmqNpx3/2Yf9F1bJhcwb/+mRrQmQpjEthl2s0OorjTWcBbmNb9Gkt2Gc17KywCw4CSvzoApRdSrKsvZSZpU+84b2v8lGSUZLmBMYj+bHikS8CkMkvLEZbq5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iftHIoOQV3StRhTijfSQAVdvNMhP7eO8Z4n6KVjr/MI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WdBz0wpk+wwXPdkaWuYC4Dh9CA4HvcNmPtiYlpHISSjcP0YJOJ5E7bG84VmdH2rNmmT71pTmMF011BIFGrNMm9HUbQI93IkOdzzVmJfediEZ+2sOH3FbqOe2Yi9IFk5Dit8mo3unilJJvdZwSiAvAkd659ggSHEHeyeh7zZZoT6D/4MjZmH8mDFFs+w+SwWxPDDWw18Wm+78wCSBHcRCIddkWOcb22mH6H+OB+SvHWASO4ikGx74N/FSMuOlaIG302NrGDi5D3LBjxiJI+cy/CvqjXOEF7+t1XCBouBmToRnczHppF22P8Xz625bkTPB+PDW0kftLXoLrXf6avcRmKw8CjPalQ85hAPIIpGQs7LUnrbrfEFjc65oAgYKKR9Aur/hPCF86G+IHB7SyoRTwW6ACScXSAsc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "igOVWfIEDx4+vZgNkBj10G+xXOKjEb2D0O5YVA4BviY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nKZ/alBCAiAOWnnku2bIcJLhoUJE9Barg/atn0a4B2d60OVtEHkIgDCEZaGaXgVXbs59N7tbGcnubbOvlaBcxQXdbBy3sDHA6+0WQhUItRr6cJ62VzJMyR3aBv9jIUrNXmkxsi+eltDc5o7tJ1MBNorcKaGdc8fNPXNcxzS2aQpyk7xwupjFm0Ibh/czuu9IYyZBMzhYI8eF+Ss+X3VYCkST4e3NBjTd3l8EOTMoSiZwcPzSshENPLdZK9YQWYBjrym6Ggs2D2KZF/j8A9S+hkqwRTz+pe0IG11bm2N0ZeJlrClW6zxzMrdtP2zRyadWwFalpa4gcBIYIa96lZUnT5JsnXSHLRqHSY7H9QfwgD44CJ28nfyV7w9vKGLfVy3Z/GTxY8dFmieR+++m74+r1aJkiFTfrJo3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "igzK4cvK0xE68oCbjLEwf7x0rSLPgOF0ZBVo1jZT87M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "exRdYQ807bvi2kEuVuLxysbFeB5oir+2YAzATV4M6CkepxEbeId7YeaJymRcHidoyVfnH3wTi4AedfZjPM6dFkQepCxEVORGPNJKw9nwB1sc8HIzuykiLeU3qPN74vLOcQD2Ej1nQ7YrEq4U7TW3p5mVdQch/LDNaiyJTAzmi4xDfVQvV65nNjMNCRbJMCJiYIKX15kiAiRRtekNs/wLA8HJPWm3p5c3qDXKVRrFp0eLGqM3Gkb/GLIzGn4+4bmN4sSQjbF3DrEEvZEpmmGRZJYFzf8utWkinMEFTSjxPSAEofyJNP5LG0kepOboUB/hf0P86Inqv7qZ2BMbVLFmTXSu46GSzls59/kb3LwSCZ8w8d1Gvgk5MfHMfUYw/IdUtS5mQUh+m9IbZ1ZAja0XdugPe7Uaqpr4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ih1q0PzRDXQjsJuVZ0a5V8TXM2Q/WduqllySGH+dNsw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LiFOiXnN8TRDoxn6UTI+tuHbKZqRdnEy5mDRvv80aykxcQlVB9sAC2h6U/GSy+sQQlwYs5u+PDfUrxldb7pa0xqlzC7C59iJjBjABvD/uCpaZM5PEhh9Ld/m61dDDN6qz9qYNDLzIKtEgx7lQzOwwhBQIZIHkxWpyCETPDFtZAfdRf6NBRUVnizYCmq4KxZ+I4VOwBqQdDLGNWESQPi3QBSZu1UXnIqNwjWLhrRihYZ9LTikZYsHdtncnkuM13WG/iNaILoLKt1GAbe0myhgd1ECw3tdSXmv53uRrJayyTXKLdhseuWad27+IEWPZI4uE4LQojHW+HTGztlaxJ6fgrCF8vZehkNlv5yVqNIFyDvC5cWWp5yJHwZ515E4B/MGVFJyrKuflVSpTwQnhX8Smszu7Ipe1NqK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iiQK84CYY87aywVfBTpU8XTKkTrhnmYsL+5sZY6Ok3g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M4YaeQt/AZBaw09CcsGNDexTFCsGV75XV3PF309Sj+ug7+85mzL/z50XZlPXC0EPvN4kWBu/Fxct9xbWhuwVw8/3E2n8BvNDD/75MO4aJ9GCfSZeAoKJ13nORBWlqezsvQ3Cl2OfXwoF5G5ZsKj0uTeStDwdwzy+KQI7rsE87mxLzBSwpGDbVhUOLN58IKMuaOu80siOX+BUuotg3IrnaBO5gDGtpQx2ySi2vhqL8p0pC1N9yhn/qwSH46jOiRVAgwAWJhtX9yvGfxAVajJwEKLVB9c8PaSiUVoXHBZvzfa8RiNv75qFfu8Q/GIByk5cLYw/EBBr/+4OZ77PvSLDgDDndjoJSGs7SYM48PwsC298gu58PvblGChhQcsoYebHQtnXQxTe38xGcWAQv6TatOxC39n44SdI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ijIBwd2b7FNJmVKazbk/TnxIFF8x+a13qr2R8i6/1/s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hty0/ztSA6pgJj/tLHImwpNLcHMNqdGHgt36Zrv+DI2XYlt0QEolOwFO49FHMHcDQwKYkEORLIyW5eSjjPIC5O70oQC23unqHmpQHv9Uog4HswL6QBd3ceDHIPJb6lR/mzWX6zV4h4endnY2nfTt9LZ2iby9Qj0HqAZ5Yx8zEyHVu+hXG2//uZ12U4FpT9JhBNxEeGYY9ugTt3A6IPwwbujaApdq0d3LTzpE8HS/+7f+T8XqMOWRgSxFxKy/xnN1GDP9h5N8X9SExfa6FyZqOlM114Ebs2zLY08nuLYi9n6/WE4KahBLEC8TWllQlN2O4NMZ2gus6rQ8s+JPxf0z0BLZMlZBNBDH6pFuVftX7SFZiVOvvHWDsfVhSAygrDt9gGM7cOTOyI0vOojA8Ttw0R14gr4i1f0F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ijLgGJcDRBXKN0wQMKQEeXUiwPCuC6Of1aoGfQV9wWY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uzA/WDRHlDm5BieGHSQFxTybGMH8bFdN/2mqFRV5J2GeRucoKvmApCMXEEEC2KqQNOUQiXZ4xlRgNd+XVkcXNTeYxHWD4WiKmgSmNQb/3bPg5RP/l0BWlLZB2Dx3EmSCiXzwP3DfYIxj/W4CAJBL+Gp3/IMFCmTpaztYiF0Y/xjCnRSK86eY1wdgI/HlTedTfqDJ4RaidVNSnBMWnTw7WCMQMD09LCPEG9V0Qw064Iq3xFJRzImtI2RwoXKKuo1b5FiRzxy/ebE9PN3FuJZshhH77tCg9gXPX/rqmSjFuyPJQma8kFCKSrcC9qPbFiN+/by74ycPorpGBbSJPj37ymnaxecQCwkpu+NP7vEthT2+n7pLiPDiCOLpcTLGqvyv4dsvBn503snc1odJMvLkRIvP3d9+8iYL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ikV0qHmsBvBY2Ydtrl9xgsUcub7qFnyU3evW6xeVD2A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Wu3K7ouLSQEBuO84eOqd9apv8xIN9Cg/KLJeJaiNcSrfI60XSFCCI0WUv4FwDeS7kgANHdAw0wiPRnvi4poLlgN9qZ6Ovz/lrmNpInVdVcdM8xule+Zm3Q9nDvKZcTPV9aDRuqvb8UhJZ7IR8vBD8E49ehDIhF7vLdruoTuKS9gCbvAy7pquVFP0qhmWzfFQV6X6mpTUke/hMb+DXIU9v7i9HydBsBLKPIecjfutpgTM4vYbL9TfxkhdSYJT0JW0D2gEDdnTW4LHIjSU8ZuT28KNq5kDBqVjLocO0rxugcIuy7bw1r7PfZ0FuBzHh7TfaeqyHL5FueLz5zeM8hJ76RZrXxEJTOniq2vKPzj5+jH36NcKkQHJh3lmw65lBS2USd3URNNGRBxtC93D5H8lOtSxKahANbmf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "inB2FvyCjvqiEmbXRAjpMPq5O8zL7SriArwd8ZVcvYE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UwDCWoao5eMitGyWRlgAnuL9+EoqFzkvrkLYHxbqgwz2x39p4PDf7HRbTzw5drm/AS9MpjLkRZYhoaOd1/+xzIaJp2m/08CqapCZW0jxGPghDa1MKT1O7vh2cdAnDdN0bAZaxflzFG+2WeUen005RhF2LU2S8v4E6oZtV5HiEb3KUOrlvHu7Y+gjhtr14/F6cseEJXfF7a27jwTGqbNITZQqkdjcq3DczRAfFf64PaKWB8WkZLI3bQ0QxgH6JXkNHhLXsxl6wL5lLSwgbTTU3+iGOP6QfzbwHtbM47LKoDc27Wm6YhustyHXvgDp7sBsifQadd6vpqvGyHXpjGjfFTwlNgaFA/hsqfOXvM3L0M/xnO7joiPSZFch3xCXMGkfdUTTQO8aadfEgJP6bXC66gv20MjB2kY3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ineehH+dCiwNvYHmsJAvAVlZ/uBINR3OwHlhebYSygU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ppv++iZ4YkIu2mu5jVwiFPnGplUHnd8+3/Q7Eaz6lD0uqK69waMarNr0vjDg/iK7FvKKnjbVr7EgeEIuTGHhwGqBzbZnu3gDv6CZx1L5ktdCqvC3lsUIZ1wruKDtA5Dsb1CRPphc2AqKCcFVOHwgSfjVnb//OPCUrbXVdp3Lkgc2UxX7XMsj1/KFHZlFl8jkzYPWGq/De2TNL720uoKvJ5FuGHEwl3dG3Gx/sH6ymiSonxOzeSKaHTJSy3mqic4nPY5AzJx7VJFJsAEdnjij/JdSIOrgtKEf56BNzoI3Ocezksbeu3n8jlsHzzTmP4BpzGModdMPQpKoCNDJt6b5EoesbPux6O5qOs6SfoSdn7VNtxLsSFTSqU3U2chI6lmeYIJ+Wb8wC7ax2zSKT/96sBkkufSJFsXm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "infs0BM0JlRGL17F4BtJczOEwdwJymwfGEIOMUYDYBc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gbAjAfp8q+oEKV4+gquymYIrY4UnO50HFloxVnnihIluklCTVP1H3LU6FURLVhdafMqszeBto/Xx4edY3hJhMEN/2fpKHrrZXgJr9+JqzopQ1SSCcwV/MtpxTrzBN5CdAtqvcZMxU5vT4gvvyvIps7GF13kNuOMxCsQzIIflRrxhgnjAXExTOAk0DW02Ay3Anf/RN0SFM2u30vRTvJsNwUM0ttbZgwSieS8gTxVJjjitnWh/OHrxryNhjyFFfNapYWoxDpJ8NFvTf+ec6gMhQI8jfMQszH1hRTX7RYnkU9FsfhyeH5WNVgMOG/nnDg8kjB6fuIY6x9iIb2ENmxOwflzU3VvC9G4BosIDgwy9FvqzBERsprBd2xERED2TqGBkH/7kf35zeV8Y7wZ9yQvv8i1mvGznnFqs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "irmAcBHeUDuDsr3Yn0uds0XNN7ilm5jMxYLJ5teI1kM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OCPcutyQSZHbRxrwb//o4q3Cms3bU6OwKsSp7LCHmv+H70XkQAfiV+W1bfYNIXYCebIUIeAet0vFU62j/ZKtOi7373em2OZ0EdGRTZuqwdQXcPhdNKNiQuAuKp+gcAh9I6L4dpePPJaJmt+iTSTLQvtZ2iPXlNH8mA5YszoQ7aNVvjLjGmn5OVHT1XM754Zr+owi881EKeQEVX7krjqVWBzWYTtjd8eBl+OK/x3MU3ill8CqbuZYlAOyK6h/zYydpo4FCbeOE6ToWVbt8/31BnWfmV4b3VFroiCezpf6cT72dsIIQGZKEYVa5gSY2c5qyq0YFYGCL6Kn1vI7KUQ4YZDp+kvQViUex7/6Xk5uNkwCfTjgAZARNXwIgEbUV1TcGGk2xhAh0WGytBuusGZf+9XEje7Pdm4v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "isP7Ao0HhGtk13V+BTemV31Dft1bIr+aWjgu/wSY5K4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YYs4Z/oyKa5JYWFGZpP3uU9AbtAhyAVQFzYmRXKX+cokAHtNLyahPU7zQEKAg6wT992ajPV8tg3toNbrJU4ba+mhSDH7wfCt9GdIVNj93AJMWP7fIBf7N8phUIfYUoy2WYRwu3iu417600eIU1xt8HuUJ+NXbtnCOzhf4eve6/pT65EVPxk4/eOVEp5Ih9fveOqY6lNfF98XaZ+M7dH04VEFvZQfItx07HRxFDKbPFzThVJ33zRpiGhcE4GK31iBTByrJqYyrigIXLFQLoQ+PINiSY8MlwCKzxHtrC8Npfo1y5Tej+T2Vzd+SjnhYJOgXzU0qXWq1ReMciRD0qegSbPXzyv0/qM5p3V2c0SGiIZim4wEI+cc3RQvv/EjIPbn5okgSsd/G0oqHQK6ptCK6ztRrTHB4X0z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "isz7R9rk3LHGfNzIpd1ckarp81/Oe4qHjoSKOtXMA0A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "p0QYA8ys9J3QuXxaxxhiw/1qUTjAcGYHc//C8SsyTe+E0Ag31EnfUZ2I6ocMvGXwaOvBRo0yUhBL7Of8yb9eiTwoMejoI2wG6kpwn+KD8IbnKjb1LNw2TQZGLXra/hBNBJejAXzOi1JNnOP1o/jd7iwUGs3GPiZNA+I75g+Iez+g2CNLd3HGYNOnc8D06Y+idzQl7ygu6IH0F7Va7uWI+t2dSKpKaDKGBRJCYIEV4iQ8BR+tipXd6RpNq4yy186tvWUwmvlLT/sqZuMQorEoWTM6DHa4f/MsRZbAE+QfhsfXqfnQsZ13Z7NZ6C1zhX05hlkfb3w19Iz0/mokItb6I/Gzsykg9EqteICn/SK/jgWXMSh+jSkkzAPvMSXXBo8sgWZPWXDGF6FpsQAKvggonBfpBd2CEmdJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "itnGPbjDHKQliMY7EUB7yytySeuW8qaRIq2784pAjiY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Vp5hyjzvgU29rqaUz1zucn8dFoPN2uMuo00p6YPDv8XMCwkcmB3s5Ns1AmCDXwTDVMsMdlD/uXhqEo0USYhwQvGTkceg2DzfFCDmedZL5s1fiSVwph1AEzNSavE8Jxiox++0IMhUToS3EnHzSJa98cQs0VYeVDMjoeoxP6Q2IzcbT8a+Du5MowJU8VP1Of66Pk8NlltzOvU7PXx3qLOMFWH+tPo2uQ9B4B4L3JtrsVoXZY+wDooZ4yUrLD5bZSbcjx7l6Iy048V01BLFyC93yS4yHnYOyMvXP/aJFjHvK1DFLUZNWE7M1Hsi0svfkK5nGsUbJna5T4SUDkEOJSvGn8xGqMYaEHDYYN3HFUfmmpM50aOBsZ9r0LU5BixOMcRoLv/mdNGeMbiuBMRwmxgObFqVbmxKGjit", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iu5sbUiDkkHciL/+sMRAGTa7z2MBp9XqpQIm/GjOhrw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d2tvGfrQYsQPfeFKBDqtaMexKnCFMTJzB7DchzOCWAW4s5wR+huoV7sFaHIW7htNSOkMfMr5uQGALmRSYk0XRNM4+MSglSc1xy4l8xx4WcFTnxUBB7gQsECBxIlWJhNJD9LanA5wVYW/xRxWahABGV+U3H7Ht0ZStoZJSt2O7jvYxSQofhamMVaF97L+GOGG7zII5zFAfjpYvMmLAX49nGhdRD9TsAbLmDIrg/J4r3ZP514Grgje6hvoqMh+ApdWlX4p5YqG1DRltFSKEYQBoieP1nsChOmhihRGUl1hlZUUX73XMYnJJ+nN2r+pEfY28y+cMvXYIY+gY7ODTjlX1f4Mg56GyQRWPOsJwNI6bvFm4ta7Dl3anNUnfGC7X+uj2pqJTRXMWfGxA2R/LXo/X0MwFKMHJVwE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iueFDHXFQm/ja+SKLsk7FZcEqYAbE5Bl76tjDCIW/sk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HJvfi4wpJPhj9mOuiJ70F3V3Ub6eNQkms4Bvuxa6F9W41JgsRXq6rToOIA50RGIS/Xy8DmM2xb/sX5TIn29OZXF6+lkPcteHVMp9BC0ukQImlMnDfjx/2wRhrX0/pnmFRAua4AI3yZFQhjqUphYutVGowqsz0LLYi4sxhPpNeORCOLmHb5D8hw5AeilJy31KlKSUAv9RutoSCk28pVieU087GxjcMBQd2aZZ3hExuZXcUSdgur9Wa/W6X+Q7gDEinteug5EN48Ui/DJdcSr1oF1z9n31FE0Wc2ezRCLb1qNnjSHeZDZv/hEHvQvgG/BQ2HKPJiM2J7VKZUdO/RRf6vqeeygqlDZjkn5uhTSulOjU1W2aUCPwZ2KjemvxMX9O9V03WMp5+Ql1ujI2rhse6jz4oUiB1jtp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ivdIceUAjqeMD/DFC90PXR78AW4N97euGJ/kfTSMCpQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VjJI9buB/ESy6Q817/ztCoOS/Bry6929owUh8Q+TyDQfGNkAJBXXCs8WM2G+0QTfbz6iFPrrM7ow4mtFO8ZaPwe/ZG8+SEauYJKaAiWNN7AOfLNSajodxysZLE+Vzv2GtqsO4LXsBpyMiH0m1WJArmN6D9VC6vOenRcVhePQcVKVJlis38sLL3kz7+k6w7PVl1GYhhBVR7QWG0obHJA62NFwbiX2nv+jW3z4ttOtwozi0E+b812mcN9+ZWXEhuuTYDmXBkXwEpWVS4ezPpdUqz6l0e2oWKOvUiGV0fGVdwSL5PSEYALMzOO/LENh1VGHVKgvoor8zbRL/vu051BjO5ZBiuUCaq0KwCPnmPhEVEOXOj4TzRAnIpbQ9A5PM2bdP6OLmM+ezm7ub2PBvu/akYGpK6vj4ojA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "iyyIfQi90ok/1zK0lJcdxE3fHVfRCcVLh6eVTR33juo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OedbSC2zQzQP5SHk88qzKj2fDrIljGfeSBplYqJNYCEHsdWUOFVXtejgB5uGGnKKXn6zANfjUTW95XjS56NH1JJUjtXmlYlRL2yIBs/WeeUnZsOzDjU2QGVaA/yA8C/8WRRq5nryi/j1eGAua0WbLSQLDDMejk5H5+baDMx3kNjIkSDwr3FmxR/5dmQcwNQ2G6b7dj0ocJ7JFFOIg8esPlY8WmtGYng1HT93Ivw0lnwdyku2Pc8r0XYqZIjyNHt0Tlq4XTF7qI+s1578IIZbQot9TLX+g776kCxF1Y1RZ48F6fLOIGAfh9ltZo9E+mg4jeW7PDUgTXC9eenGPh/iAkPkNjZEn/Ijo4Euh1P4u3hD865AQWe++j6OqbQBBul0LpVlrdBKerfpr2j3aCdpnrawGTKZsYQs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "izPuHkJmvIncWXN6u/Okr91V/YkY0reIRbwnCqtzcUw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DM528YPsIcJrCALuYglwQ+30I4qNP+MWkp6O61KwbEu/tstf0yMwieRb6U++pMm1zMD6I8R+bgDDIVjG8S07ox3YJdzurXJpB/36GVEiaW+tkv0InFsvbeicVmVKF2ygTmuAgGXKZGSB+9K9IPYZ3lH9Wz29zGX0YE36t3kEQ1xoDcINH/SxIXQGg8ltP1nxRFgwA0Cl0zWF2Gg7e2Vl81oHw1hszk9Mvp542FyXzpU34YRdcheEfQycTv8ah/NDXayWITHpUiDUr/ZM+iFRxHMSqsGR+fBQkISPDNz5zvVPRmqRO5eOJG8+dbvpK7V1Eq1QA49RiRwErYqTOqKsFlYb4RmMYazhrv/E0vBnNxEeiqSNhEVIhbKv2uV5J5RAZ209AS3t8sM3bIkQaB50rGAxX8Io5ZtJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "izxQjMBBvNMfSUSepbpdc/R+hA7PuKXFL/mbAf2lRtA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LjtRKv9oQXpc9duJ4jwKtAwu04FiEjEIfirW/5Uo3J8T1y0Q7lxYuJnhpJkThqtz8BmwdgsL4rNz7JRYrkVzCBHsj3n5CTHp2xUdso9trtRq0pZfqxdSRIfr1IK/WUqOArxPJWZWGwAUbsG2Zc6/pjwdu6JchKYDRVIcNneyvW5LhtDGrNAJcMlbFDuQGdaNmujwrIfKmXK5RFplJC+axm7E6pMEfcUWrdpDPnat0QTLj+fNJvlYoIdfzs+JCiiIXQxAcyEKCYXtoFdImSYo4STX+PWSPmSzd7GeGU2wzkyIsiLaAY6xMolPOyMan56RpleANQblT8JslGJjmHBO3+04wp4ZtEI8Ru/IRk5QS8vYjB8v/rf/gd05wnMGoWSwysUCXBGaMZCNnW2Bl+aTZ52VevPxWANM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "j+9TGeCiiK0lSJMW98hF92abnEb7Hr0bAD+3ENK2og8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6lApAs+8qIIhm+A0r8iNyaUqkI0n5CX8NGaaU7z1S9Om0qHzoIUX8l5ZPn994DRC1rwni1NT4gmL9FArmj9MvvGLSIXNYYguqpcINCxTO11IkXEwb7/+SnNS69n03hXrgq9NTIQwHp1+QSkMB87WLYmlGqNUxYz9CHRgQaVwZ6HDNuP6vTUTot/Y3Yxo5kUyAhxq1ercw5AAQ/Ul/b9ywSHYQEXXslGSmmKg/KdPZeqbcZXb2MAtLCQwRniQPrXaDRrKwtVhTM2KgJcj/YnHnJtEixhdEccOrJ4oIauVewLWdj333xoY+W1WOzpBhdq0B+Lb68JSDQZvIOK0+i5HHU04wYULH6d/YoOCvtXNxmUKUbCuEo2R29bY/yEk/fbJ6JpMpVhMyFczbk94XcoTyqe3ODQ1BWxA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "j/6x3pgMYf5cxz4kAkSNqGtSYUMY6pX+BRDY3NkJ2fw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5O7cs648OIseH+rfhPIllPobXFWDfNGrNnkoV8GFhYxhT/PXABf2w1k5YwPM6SeaKIATjvYUeXZVV420IeRm4AnIZwA/agiK5toUcqUoO1B8lVCh2bmjDuUAM4hAb6YfhEeNQLpEBC3xfAGmNlkCKKXRiQUuvPnFxdCJvwnkBG3hT7R0xOVfIK5ojA4sMEsp6kz99nvleEom6Et71T/+bXQL/S5BvvBQi6njW6lashJ9zW4BnUncZxfrSNMCoAwD/9zNXXi907E+ToDncLsmpEzRUck7388SyZppqrZWCIyQlGQU4oA6iFSggr63euBp3kstxvqf5kO7VQLR/EZ+FsMduKBU1nfsDVtY3eQTVsXa+02EErpXPbXjuNRUm8cWm/es9c5rl+ra7+0QQt05H89nwTaFsUu7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "j0GvQRG1aUiniPizrlsVkAtQUBJPlQFe3Oh4+BfnTd0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QGV66kuDyDOxDEZOKDuEfcUfb7Kppvd69dE0Ozgyng9pfzIrbQUNjHhOLYMIyls51aRQohMEn+fUrsUAaYhhK4NWtz5kJBSVoWTfwPuGqTlE/6u3KmH/hSWwKL9FaciRPROTBCqncuc4wJljjMQYeg9u4CEzlnQ4d+D3JS4VcbcRz1mlpMOH6ly7LJbhasGJcLstrecQheq18qXjAY1TPY2xsXzYgWH/+P6OAmET1z2nr2BVv92CAldXVnORJC20eoYf449ykKUycw9iFWMwgUmP6q4bbQge8UPE3P5jpptWPwvR3j5MnIYW4MQi4/5BC40RxmDza8QfXEGZbCcurjPfiQ2VoP64ycLIDm9pc32X+dUugTgStGY2Qs8yP3O/Cro9TG8dC+AnPU7RYNi7Oa17ZpMFBuRX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "j0MerjpjDVEO3731dX/kMaPONMVuJfWc4yR0dkIsO6c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/wqfSPKX+PdSH5S7K2IoKiUPpZMhoPWNlPASnVca8HSOcRYU6I7aKdG7xxDYg7r3Gw+LcPZZas4e34H4DKaBd4AWtnFquECyHsWk1sKV21gThdyj1UUkFzHjEzHIYy+VKaQMRBQ9U3fjqVFF6XZ7Xw6aSIEmEv196yNrmqPIpm7vHJe17rwq8e+zj5TwQUIP0s7Tae0EUdUeXpMTfcvMd0cvpnbLZmsgOdGt+hvWdYAaszBV97FzxNzjluYt+fskVMwvwTMe0vUhGKXc2eWorKarwliZW6JbBqLF6UMfIKVtrvxNgWZg8LnMiTYexZijBosCsFsAAPXP9tBlQFLQQBzZAgr8FQq8ijR7wWCH7G2iil8AGxEVqWG77l7e/6cTBskyasudtfe2kvlmzSYPG3ID2TsKCAxt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "j2sG8PvDQ5DbkTNR7/BRf0hWGFoOB8wvMJFn+stXET0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Dz+RHeITtqTSo6rG2yk8gbqkIrwfFXYMUGsfuzVyS1f4AtC7noG0ks1JYT5z4Lpj3didXeqaLj4aeslij6GOpQrf/WeE/q7d54gcQv5HTtYogGdwBpM6tqKWTab1dQP1KRo0g9Z7asvLWgAeKqRRDuDlFW4OYXXriERMJWMN2yvqD9vhxYsyiEScLwQ0dYmy5OyW/B/0UMiMTi0XQKPraQL9kd6mPpbCP9TT70EEQ3f2HPU0VJSLxktYLmjCOBsDXLA1YrochSuirU44cQKzRF5L28G7IN0iN6NnVZiyvK5UMBqOhZglGz63vXqJnVr94kKGloUhrD47Su+FOIMHZjspX+BvU+EE8GHaNRLJl+352ItRkVy8p7t99HJriPcVgmLy3An3RY3zT9Lt7J5qP7TjZ4pxMWE9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "j3tOnUM49bm0hpFA/QP4qq9sYIto3PbGFX5kE+KnuJw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3d0UQIG5V1FPOwSgW72gDaQOcSnzMugiJLFhASty72iINyMjCCu7wy78853AjVE4lncXuWQbH57is387XxoqpbFl5X3yNzSv10f9yT967wbBFV+27GnUEuXN3RiSvX3KeXEUgX6LtuJdDY55Fl2q/rIbMZdrLvdAWS3j4/a50ppQjakFWrSSXHBRKYmiq1ZTzeH76tOe5gFmCrFFZybabE3NlTnvbmhk80wDpfaE+Hx+nsC+T+IsrPQeh7ZXnJdfuObYbzk3WeWHT3ajQ2D2p8bKO56mgrJjrFtT6fynr7ZtXr4RtGpFwKULo5U5tabT6ngxe2JrCsNIMuUd2bRmu8hlUfp3Rky2yh8qbHZngV+6ndOvdpM8IrI5Uqa3uxs8+SmVCeqxy2Bf9veRbMo5J6FKcKmUzviO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "j5C24os4wmfmvo5+c3DHZqyicmX1ktBvop1kWjJU98Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yDi+/XSXrpY2lUdEO1mKf65f36Ixcyi6UOSdfMtaPAHTXufb6hrZiVuLpZXnnGfai6VHASLHwhABnZPH4nouGlfh8DpXE5i9lWpai2fZIz5RyJb4wqWrVwKTPB7kcPWOh+Q7tjknkAMbJbba3BI7tVG04Bi00aDed9nJwyL9KA2Xvvj62QwYDmzFFcxjgjMDEjA7y7RrvTCTi66Xdg8PK1O5v7jOWBRXO3JupC0HrDmw0yFaPOOrawSooVS6Af3aN6eMzjhEhV4vT3204JgOFiabwSvHxzbIsCFemYjGOR8V7jsFtJnQ7uFSJAsXfny8tUIuBpl6T3uQqF+JmnFfcCCY4/K1gQYXRdhaCI+7mq4Sh6l1liwuUn1W4QUGdFJA+DwR5Kt8OONS7ZNtKZUo5jZPzot20SwX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "j5lWE8fT/zoExxa6vejPMJPTGf+HC7714oUmLBRAErc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hGWaxGlQh6+iQCdn3kHo2daEWwcHY0HCUZPPhuQROqPK//38nCICNLxoV0tz9OXs6Ru1Dd6irpeXWfjhPmSiaTrDOO0iPEaC2cZmxvsBHhznpeJ4BR7OCnMeedhDp0j3XEFqXAbH1frmaoqzMCFNeIPb9mOs+UhCEXhzgaxtiwIPpFKPyEk0nTa6lp9pFw9nN0s5LtH57xfiO5F9KoQnbj0yr49sQx1rGKD7FCV5ffPTUCouJVrlnAXTnK0Ie6BMEufPFqYFumuvQ22xJXMKepWSQQnIFRy0J9tzGaWhfn3mOcR9g2DkFtBFxV+WoEostGqX+kJeALliZYw5GmmC93dKg9l9AQoyk0FpmFEzev8uFSTdqx39VtumPjF171atjLx9Fl3rdy7s/ZUV6vKLd64OnLURo1IL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "j69NJtm+4JD78a2SAvjqebC/Aw2bk8WJNYOzO//wjnk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XD6igprJbuKsrTPALbTHLIpJeqjtvKRl5GXhHWE5Xmz4eb8ajBQu1ZSBnjlRuowghNEt1wUQdhAHRMY/gp4V8kSsQNV5TyHZioZ0qQ6x8OZGIUGvQUVsL3iwRxATHrME7QReGJ2v0XbGkDaey+2bFstSH3ZKKvZmmIcJHotQ69zT22/YBskjfH1LjmuLXgOMK8NXf54IQjZVEgzfTIA6kZEr6K/BBpwuGYqDLg+vWl7a6HoWmWZJC5RQTXx7MJQcultPcgUj8FRDGR8vZLRSiF9axD4a6BLjhz2unOkaist9OzrUAoX8eUwAPJ5GW/5NN78SteB46nDlz2K/e2+/SSfr3B5DobkW0sFbN9kS1Et6i4bGf1UvCZc1/MUkYXM7N0UXhznv9HrrvUDzB9HqPkdeAZecPly1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "j9QMZdaqT6h3YkktsVpWwd0h6e7ztM3nX41wVqLyYsI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2GLGd7GI1dys1U7ClByFqqHLD+bQ1IH461uKrtgocRTx7qPQ83rjVN2dsHxSuo0HgHlKCPAnmZIagXhxE2ALY4aTulI942phs/l8CeQEMCbnzil9Wc4vdKHsVTVhjW0N41KP1Btc9KvbJhPAmp1iDMhJwyayTK/fkxoN/Xzslb/yAXsxuB1fuRDSgTgEEFevvs9FkbkfvNs51hCRKrpWrfA6A2ojoWI2kmAmDKToxr76XJmY65zNWzQKNO8V3e3jnZOABybxOz2Hg7B9NeASdmX79bK1vGtyBk94p6shqTuDLUjhbdxmkfDqFKyvh+HaTW6+z2ODcG1RPKhy/P0F05SLhX2dtGLfWEPCMI/IMmmsaigdo2JlsuEOXh3FCMOK7QBLk9QHES0ONTbKt7HTU32Dpth9lXfE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jAELEr+8edGimkutxObne6COEUF6GpYhdCNvYWu3J+o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1XWgRcr2eJaF5FLJoh2fxe0uhsl1Wsv9+jJRAMuVNdfV92yDrjecPY4Yf+zZi34opJxWGTbGVrB8dHrmdOuYg7bravDfYk+d1AmVBHIKpbKJPjbzm6KtNhayKjS1eKIQnai1U4/6fBYGUtmAmOEk3kULNJ2Kgad5/7vfFxxwgsmr6bTqlSZKaGv4NRLCusmntkCAUr20QuP2sqw0VUoZPMTz3kEosWoUZ5i1p8noR2xDt6KRo9UkkrU2xiClV/yXy0jg5d7pquZOKySNEKFFLoXRHSOCGwBlWqjz2V8kzXcxU/EIaaxE+IEnOFOsO5MK2cqEb1i94qBXM8zP0OT+2cm/lo6B6tfMks6mcbc1bKbVnHO17lTFtd5cFI7hWTEKask3KvGI+EoN9JrhAaFKxSFyo6F7uQJg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jAGNJ+YRdZAuuJQF/KWVXJg4xUf3FPk/gXzey0jfiu8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1MJuhOzwkpWUN6zpFaek9XrEurFJ3N4eNatUducJoGdBIRK0dmzrfipwavNN8+7BFPscc7epd08YwuFP/TwwzHAM4iXKmwYTBD30wUcsOBXzl9a9YPxC0MSBjcWZxAvcRrLLqCdVMBn9Q/W5dAoMRCZRG01CAmGHz8jRCeVCcs/UKjPaK7Fce2p8sKLxA9NREeVHZ7AX29OIaqrz/6uUW4chMDUSh5x00OdJLTTADDhDxQsg/yYvm5+afbZbxe84V7C5Hx5gLxUBXuiFNj3c/D86SDHRRoc2EOBb0iLI8u32p48nhFCVqKioKCpAvCKyfXKkaJn4oSfeG2y+V2TyExl0pBs0+alvSj06WiXwNlRsjoq/Y+XJk4LlfpZXV5uWhLBU3amisB0niLXGcFgi58mGfBjSRKLf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jAXNOv5MYvddVMa5r0K2zV7xZi+2iVDB9HYt+lli28Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4ylcVvfoQb+4KkEYn6bM19Kgu90+Exx1Br1sqcmdtbaYE7xygcw66TZEEEkxEfYG3yDjCnRDyPrZcAisDEub6DXn780ntzxM5R2BCqkpVV4EPtjSkIxKkNxm15yRbvFOJD3y+/OmPbTvyeWTqoYU12uJyB/AkYJ5CPU5q26SqTs7TTGEXbfUj8CwFw4q7Hbwebp9oNKyYWH1j/qOZ0iKWvli99tq1hA7esYACceckNwHGN29O/Vb7WttQw6l9fri7pYyGu4eTFRkN9QNPnxBD339LjSla1fLFemuYbBieGxfrU0Fdy8RD7DyNQayDYunuhEkHnQpB3UVqksp1oDOWkorpA85aOwdICIEvV2gk3B2NjBxZbtKRQugRqM+yv5MYT8xxQ+HhdqNO65pXhecpNSDiMnBmR9t", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jBiIpzzfZOO6KnIu+4KdDKAH8JnEHwfGEsr611nYFvk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vG4LVWza/4k2fPwsa4mh/c9oT+MppQYFNJoxzZ4a0TMJWNJjaA7u+vLtsaOwKJzH4kzTo2OK298ef1kw9nc2GrVmXfKQEiW9iSP31lgw2EL2ZtiOXeXtqiyQL1BNeP71VT9fo/eSgdJl9LXx1mQqAvLJzoUGXEb7uUnwmdJF7r3wkJhBMLeZR43GOfR9f9LsaenSQ1cfRQBnyiyukdS5aX5GecVDuvqQsq+QqoRkqsqXxO7mpmY2gknEbPM+bhHMA/7DB7SCXi6wWf2aJTMfNHxhwnfb6gRsNdbnxhQbOUHDJpaWQDzbSc6KTMQD5S9h3+3cv4rl4jKHPcvYyuSjiesOEP2XvwLWdhK3jMI99+jS2IzI6pEa4vqLFXw1vY48YUgy1pBzJ5/AN91EDauucb2/yghOR5Hn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jCbS6fqM/5MpkPXmubA6TI/isq9sIqSWnn2+14Vbu74", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JzY/+nXIG5zrTmUZOejxHtZkboMJEIDCmYIAiDSJsLk+UlD1bZiYf8NreKRRYN6xfTixJsKoTHx+CfE8HO61wXATojdRBu1pntOO8XyuxspJxe2qXZ5nJrMTbmd9jv3mSLS+w46UdHHP/5iTK3q/Er+w9+T3J7q4JKMH4GVTsb0DArcXo5IE9D/R6FDEnvYzuCjkj/v1IdXmQlVzkbB6UuQujM/hYxGsvkaHyxuFz45sNQ2PL4MAWFqkL1IVFpeA/BJBWvW0Erx4NDbHA09MWSOsiRpTR5kJ/Id2T7z1pj/eCFONRQprXYvKoOt72T+g2WQ2WufPEWjonYtV2tCu0Z4t6uiiaixOptImSoEKdpL/gO87sox+U1c6P0yyMyi8gzG9FCkExpSj9dpqZBELVT0xYPjFP/So", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jDXt0R/6X0J2R02tG8ZWcKDrEvzVcoGuPITBjUucafQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VRViqCwt8sarv8xFFUEBBK9OKOY99li6l8JLeytvrXdX+L6E+ZrMzWSaeb8y/PIqYME1ut53YpvWOGXanB2ghpeGs4B9WcshrjglIHFoOrYxcAYmOlIgPgv4eJc9F0ekiab2mkiCX65eZ97nHzYoCKOA0T+6Qyc83J7fZPg2GJvYxG/CkgJ0KUn+OnlAScvkSwXUy6gccg+/O+QU0M1kZOSpFwl/af7aP0x1SshAZgplYfNYXdFHFw2dDJGLT7RdigTLMo3k3GxakkBPI2IGu179rjfogX2UmIhX90jhqtzLoyZ4AO611SSJUmZFJvtoVyq3FNPU3O4MciUpbJHslbHJFyY1inq946hhGLfOfQyAC8baEJXhOMvNCyzdO44kLPm5pT653qvzyJqFDoVn/DBK52EZlT4C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jDgl5YlfRXMsIMBJ3ek2tQVpYcJnYunLs/SRwV/mfxg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LBTiQTAnWoYXZIAP5yyMOQwZKxiJvXM6gxWoku0eyCwjOVCfFR2Bc5SMJ7FXD5t6mXtMnCjcVKa4DV/qP7B+jsxkaZanHue7ffUqDAu2/g8C3Jc18+oemarlXLDElz1FiKGfTX7K8ntAzbCoQZ4Cy86EuSGADp5D7qzJloi0/z/2QIjxK9WmmW4z+MNeu5KdzHZo/JVKXiAlYB0cvfaQ+pV3ceXY1NPZEDPfctXvi6Puh6VUY7TA/AMdvq93y1E4uir4H8dC24m0TqTgOdN3o2tg3twA4dep8cLfiU1ZzRZLmi9eHLinWfOtMjWcMIXomE6ZwbPgBwNpwvgbgweFbcllEYmoJVxqIWOfVHanBPmG2w2HsqL0Wb8WA5x/Wzen7gog/AwRj9eRpScLum2/eb2DkmxMcouv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jEvwATwentHQHGuLR0BCh56rXZW9LWuXRYL5QVxvcVs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/Jo/e6jGChgOdWrRZetwKQEIbTOlRCiBFkJnycSXsRVPhiG8Ob08B9+VLHBc6axaUsOh4cOM86qjEXRwLuNeXDEbUMgBCOEwpZLMhOJ+yQ9hw4uZWnxliGFp6KgUiqvsegC+vBBd/yq+RPHk6D0oKAwqrp4c/yw6Z05ogV4yOjKUxuTj2kjuth+qlb7zGZkqSaqvrZuiOEHb8yxGn2nTyOxQHteVPKpQfcCkd2HC72kPV7/j/x6Gkzq2lAc7MgfrsC7MA+WXJV70s6Q66N6eRN0Vx7WDFsH02mBF/but5nXeAWtzOI9VeK0qXKNGlkdX549OdP6owFzJec/vECLH9x/UaT+PrzefqN+BWMRky8vQ2EpL/KXTty5sDK7i1tfABnYpo869Jx8F1LmHK5ArUivYsHiO9Rj+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jGAhIKE5LKpxhc35qQ8lf3BXP6R5Hbn9E9KsoMnHnYs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "U0kiVqqxdkuBzIYzMC6ElGGDEr3OHOj7iJkxuM1+YSaCectzXhT3fUubHQ+KH9RhTjICqnqCp3Arz7OsKSXxU1aPn+zDIW3OzVeEDoYGZv4fWK9old5GCyUkQRXqbXMaNncNJvQ72onmek30BJlSlY8Ozs9XFcpmJPuzUO2JbKYD3Nz59KKhwd8pNuwfiiL64bEpF96xUMdk+5zF1wo7x/5QxFyldMsqVEIl/6SC4Lt1ZoZGE6Cjk+VnwScOe+R6YP60ADhXQhOpFQDS3o/Bigr5Ljc1d4WzlhzYlZEZybR5pIGkEn6833u6a4UgFiO0TkT43ccVFzaE14bMNwuck/IxiQszr6QjW8ix8T20PQVvPN7s6g0j0IgIsGz+bLjQ89BoOwgxq6R5O1qH+sPpqLCAsTGXMSGi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jGSlkRqnXWRT4SgOIigmCt1rdlHKz80aH4dIo+AYFDw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FL2xnoWEnccHbWkJfD58cZiLCm8kbgqDex0o8RboFSkaZV6vhqIi6tW0w27KczQ/vV+l4/PEOXZc4KdwVvUoLryPdQZmK+2GZezlIU2h2DirkkuC21wWVQQgumJhzopicul0cWNmj1hqabwgmTzaXlSOOuf2XyiDK++8of/CsFCveI27odh2q/Eexvtiyamx0v60COp8wJ6F9c2BCAphoYCG3z0bbhg61bzsGVWCze/7SSeGl6uM0s3hLqAVJuxeSQAJStV+b1LEYJc7fx7A2A4fEwEoIdBU0IlZjZ0UNTeso3Gsf1SCVLmtCpXEYIaPcp1Qa5iZEN9EH2sJ2lP/lSaiB+XRuBh5JtNgZNsnEEC6Cma29efMQUSXKyvoRQGCk+x4oS7PHR52mf56u7nk48pXoBP1F9qL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jH8xW8hiK40i7aFzhQMSA5fWkcq9uIfDGOKyQIFy74A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W83018E8rbrvqaeGaqKEqtd41F9SCfbBDrWI73KdchUCg2PRpf62tf0LUm5oYhQZZuYlWZ6n8hbgjgEq+qoWzoG7M5XIygYUBRfTL4cmAt10hz0ja3lL+fEYLoez+bUTpBiEzK/0UjEgp41yvlUqQjVhfhGZsRPxO5mLetH9c4lNU8QQc7AuX53Uu/7cqXAJlrsgZdbVYRfIMPZ/ZKasozptQat3zRdprKhAp8x363c1TnZ/eQ4FrkTufUi/YO4DKmuRxqLX2CWRJvawlgTSFn4okOWmVGL0/xkJK1amfttxwF1nRbGwqo+c1x2SbsvLlbI1aozkFf0FL3EUo0SWEE35hskjOfo4a536hDt4kucKNYRbnbzq14LrOUMUPhIQ5/f6PxXcfTN5tM6N3BpKn+fe+rdgsTIf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jI4qMzKKmZUw5pESYCMiWBnogOwBLUonmF4yFog7ajo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "akQJsCa5beVCRI5EMDGdR8CVkqh0RQkuAbbCA1JL/QZV1gxm5FLMA7otmrnRGNJsgKX4YxaeTPtJyylS/TYeL2ieuaPnWcC51tN0Z8bsYXxyOyDfvfeQvvhU+iE2Z5CCivSW9WActZ76jyLzxYQSAtC3/lEWjZIDnnkLHi7xzlYcdkk7ZxGZAiSLPXuT5G7Ajahljt/QLOR3ZWM8iyisAaBTiHhXMRc3j1GwLmEYKyM/ob4crZqojvQSo9QUHGw4yYNnPoqJxxE+oLj31qQRd2MppL4UPWgvY+x5FJojmzB06eMxotkNYBURF30kJ7xdYvuGAlIFW47H1t6s+rZ8dFiGckV7MppsM7wH3zDLy5PtHMWgDti/uc+n5GW7GKubPQG3hy64Yxf9E3MH7ST9NBMqT691gtd5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jJI+/FbXq6G/rhC1OfmQzHPCiovEg6XzNr4L39PKcn8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t+xLGnIns9UsCkNjmOQYjAdfs2fBT+RoIzYOCRa2HrIZlIV3SFha+Jm5NXeBCoNGRJ2dWZVSQaYsGvJfZ1ZjM4FAF9jyXAysCH69JVTMy1POKPMQPxlyXIJIuKntLxsXUGSg1BfNq2L8WxgBRfYqbDIcSafxyFE1/N2JVpaignGMM4lc7MKUnzrsyLwXKi3OJOZ4h3pUR2M4cqS10b971u9Cs4qy5qT9xlx0xYHlK/lJB6glcj35XmjszdcVBGpnAZUAObn8rYEIm4TZPTdOASvDcWGvhE9mLttv2FKKSHXMY+OrRwZLfXX8PqBEl8+guPzc/5IGf28SToIygy8LuzCw4P6NPN9TENo/yHdvawBezVx+hprO9pDgIiMuQmB3wJARDFmowKKIEDESVEcFa30gxM5KYewj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jKJN7gBDMZsYKcy2gH9DGXqm/vksQvrhfearUYJ2nk4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ws5WFpw0Ep5O/6b70ppw6cLUy2OQKZ/uKDRaoC4K5gu2q9QexERjVg4pOSdS2LkZFnEjUtflcfD+2s6NmgRne+pKHJvyNZomK2LYlPM8HnJAMgusCvJZsGFRjH/aZ3ZOY2wNxy2H8al2L0pPF8dLFvyDVXuny0TPWYstYGl4ucaVzFVBOdzrUhdwFIg+p8Qwgo/zmCtZfjpu3oKNJ8kO/t1e7s70hdUIjyH9IrMgRIEZh1RkTGkzFLL9zFOQdOjoDjkzUlY56YFZiWE8oPN1s1B3Cb9y0XJdt7IgNM4xTjiGnM7ppydVbKAAj9GWEEjf7IIjo8WLFN3k4hMNsbOhqPC9Lxg1dIhEwWFk3oJMEzMpIxaI6UA3gBQhE6v75x4Cmc5qhD+6yk47/i4QpbHkzrz/3xhWb6HC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jLLJzhZI1EZJtrXFfl2VcHZ70XY1jSB9R8S1rcSqrXM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YfAVRVkDQFovA10zim/K65nhh8pbkBcfneqvt1bT67x1RXBMYEHnQ+ojOZ+B7x014Y7mLivYn9/RzI1jvzoSaZoWA9UvzZ90DdccVDmaJ7uBkz0MpOvakG6ojjbtUC7Ppf9K8rAWyxdh4LOn+pWYF3lhyEcQMTahMqRJu6VlH59NVTkD+OZ9e85QktZLggfvKSbLqGEirEZk3Bc2/3II3NlbGTx8tKGl0PZB7dpLBvlmUcbZrDCpo9PUjAWA0BRXWMYKgZ0udsKL9BkqXxepslsq31c0p9gr/h8oFPhEo7gw4NoXEHpjCyF0n5RlhdLkQdPU68cRIt+cguUzvZdQdJ+pcB/PliSJOjagPQGDSOjjQ9W0V9y6T0ROdsj1He00HRZhdLa6KJEjAFke09rDz/Nl5CleyAbP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jN/Ky5UlgVR/8XuuChF2UHZf6c1q7ywhF9G8qrSqVpI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2ZYW1DT7HA0fJbQu8feshDRYz0I3qD14Yee7en+RvTRogjcdWPgH+hnVsOH1kXoDhqqofBMTx62lSwGD/r7IHkOVTdyDsrZVba66w3Yfk+LjWxOCC95xOMgseb8dMPg4NlXZlYwEKLVxg5HP4NA5qzZcliEBartWYuTv90fzwuhF1YlftyxN7iSoNEnPHrVB3B+aVWHjWkQEHOC4i9UyjxYNN0jCNvVqA+jN1A273GS/YYQYtlRaCMOYMegtkHwxs/6QOO2R41W9MKFJacj3Lw8QAqS3UFU7tQ1u1+vZ2RAN7cfOugTY6e5UdOeMzAUQ4kxf3Ow7ZqzJWnt/LO+ShEhG52ZQUPhVY6pGNLF2mrIgz3datLHyOl+bGPZkQamNBr2S3pDuJSJZ9jFJ/aUJrvV2BZSql1Zn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jNS8sNPmZiNWYO2nYtegT6THz2r1d1fKDVPF5+ajPeI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "grW4NXHWHUzzCCZ9ps6oCZS+mHhCw5t+JjKK70n7K0Eo92C54vZgzx9110GqYOj79iulNXoXDLN0aQrr2Goc++lTf7fbs4r7YE8Qb/9c9N57M0EkWHIWyf802YP98iI1JVzXDFn8ynh5gZhgTKpZ06XYZVaqLVt9DVoDrWiF7Ryo/G9QAxIUDStGRoBt4TvMWEyCy5Mq4HD3aGZlt8uwQhs5PRkYrZp4PxBThIvZ/u4jqdAuTBA1WORqpgaJeUVQzA1pXL8whPhxwI5wUAAdMB5uvp4OJrf3VsQb3/6TrVviX2thGxdQ74/NzjePgJndApg3nYCBqvFIlW6/FlUR1lohLCSpS+8v4JV/11OjHACez8QAMMLRLcT/XHo37kWuSmrAY2h5FnwS4T8z05+RRvztU0iBt4ik", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jNsbI1A4LLloufjNqjaJBEVwxV0hIMq8NL9lqDKPcUo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "71sTgAgLDV/H+k5d4EgZZIvh1+lQ/z8kdoOV5BRmFzzmouf9N6gXqt0aoB0fnGMRR2sEGMiBfhYX1NZ5VmQc/QVuVMyD9QIMaX0FgELND94lAuVp8h/x4tSujPA34eKjlv0ucLBu7gMb/lVEpv/cxWD7J2dxv2FUReRdRXXVbJzQO+qeWIEL1MFsgBsR1rkCepPs1CoosiluYW77ocQ4aF4LwG7h7EdEgAU7wPkk1c3JJhrxyfVA2cbSp5Em3qN51xVGpAV2bZU7T0rsqrQR6/9dn5QWn1lx4pPon0mveUTeAKfKz3fXR8nYxfle1VnGk7+cWgdoVwrGCLea0OEZ11+WoL//BYEUgJEYBUboob14nQakNyo+qcbXZ1sKbU2bjTlCD/yF/mfSlUecUSLVqQ9c6HHEoHSI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jOadH1umzWeA8FHxcUNdmze8TIqRe+z4M/iuCoJm2+c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o0OiykXFSkqRoVg0hmaITjUH4ECIrR9yyOX1iFV7jQd1IzFe822ifhN6NJlsAhXQbl8g82419yLy4Nn3/jbPREDvtmHs1hi1QpAZ6J+8CBkFEBF6ojR8lKGEM1wRGam4HgqqOsmDeN8GDGJG/bXK0I2v5aP+I96kukUeoMQjht4CtPnl41S1U1WUOTDa3lnZO+KvpZ81wbKwPXJLDLM7iznHIubR0mrZegMljIbkk4y3urE6WI2I3OsgxDznootnBC6jmTJKn5omU7jWRL9SWjMhu5dZw0RLPQ02pKy17iQ0QPrNaLPFOY5xhRZXsqCA+gW8oFo1q4GbIu8P7FVsw142pwUnoDqyNSjP8N9wKkHqSJv/WPPr88g0ovvz9cEc0eZvUM87e61W8IseZxoM85A2O8UH+fq8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jQ7mwnF8XE9BwExy9hs2CuYXQ0KNaif187cZdJpypTQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W6k3KhtfmJ4Yd0bcZ+1aN/0zKRss0sXIVQ7paPoxOoB9qHpTu84Rg4Z/BfOz9zxXWJ9Gss+H+YHR4UnDafds7OlPI31HnHcImP7hKTloIwRYSfpbYSf4O6iXujapprdPbnknxUBu6MYwk1C/Kev+583iSIKRkONK4aED0MqtmRfmPaAvrV7OIZuh9ahBFsvTroiBjCPbppEu91SwLhYwmPyixvbvEd0AfnryrTGbt9GL3Zqoo3cJdiB7W2EEVEW+8bi0US/W14r8nz0HZ83UlmrXqGaFgMh6G5h1Pa0lUgeRux55QsdacSsJ8btjnYl4T708bNjfAdKeui93ZakgigYBtququatcH9AhU/ToKFkuuA3FvvwE9H017kJip4hadWLw20Y5hyUZsPLokrU5z67mEBh8Re2w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jQ9ofofedHCR11wh+ZcXumo1onWKU2Rolc5qmtbZivA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XZ3I+KBHRHu7WclpPQUfQqwq04jMFL3pStDr1o60jKBggokPvv2mcmbY+DtdCJV+yrQqyIoKbG2mb5QRfqfN02zbbD1avS+upiMNWLVIWXqIj4+rU9bGO0ABxoG97sDY2Xm0H2QZ3pEuNM4h2QQ+P6HlpG1fZa0Kk1ehmOxQw/Bxf2CTxt8Ka+JzdT0GWTE1wB3OoVBdaPx8yhypRXVLOVTULTdcFToPx5hlHdqDMbKyv6n8nIWpfpcBfIZJRwGqCIlVDrzispxfklWBtwDGC3CyWJ20GX0iuKs3R8aBKqcd2GpP3ptxjXXye1uRgrP841MkmdqhIrNhrdyFoyxrnHMsK94S5lUT3cF4/f/vxxhZfDX9dGamaM2dwSwUk4uzaDlZ2JwgkHhXt0KQIvM+FN5aQfa1tdFD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jR1KVl8OhfpZBZKg6v7K/ZBfkRowr9jQywy4ZvIoFRk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "geGCTvufJmQkq2q+JSVRF6zmjTT2biB1GThro0yZ+oMvL5efB3sT3Kl/EAt2QdFlQOE6hh8jDdfFg15fwKDdk1YGpU1RVuvfG/qGd9El/6lZKCCOee1WV2dQGPWjh//Zgs1BB7e6LUt6RbDwR0AqVxQ7tdaOktHDFGJtxLnzKShOair76zKFehmI79lkFHEHPiHuftGVfJIpfeCEpBs89yPgOnErkNr9uDBT9xkS6pkwBMSrR6jzsHFK+rl0HvEt3V9f1fDu4bL4SFh7joC5KTkkMIoYfvRa4Q1uk3gCDJxigi3en+OQkpNFg8Mus0qnqjhzbBJxn+Q7vJtH0arpvva+c3/vTSnMQ2OPH7t84kvx34ndn10b3UXP8dXoONE9kWWps3zCcclpTrxUQB1uY5Yl3KdPYFBr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jT2CmuSaxAeqcHdnTs/wGH5rIp391/GKGaM4LTPQeaw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/nxXOGXFfRJG6xaZ3Oeuc6KFNPOy2LiwdGE243DT2FwHkbfTl/gvrXrSyudM9ft/y/ZYPNPrCjDjpP7ZVbX3lyIpNikjNyGX2bEKSD6Q4XNpVlq+T5gSalG2CDJrtGBVC0OEVIfEn66i2s5BD8hENAHkJyryhY3kTHGcZOlJPy+pw/oEbbIuMoVv+cGHNvCcPJqf6bSANiAYCN8qUKWBXigBUBs+ox50vw4iJZzm3URclmg4M1osWinEg8QM0qbizeYDzUK+YSau01Z0YukzCc+Q3X/3P2YwqUhGVJYypMtZtXtIFd+heuIuc5575pY2PcduF9srsLZeINP8dByRUDMlJw1Zz463lIDmPxnfMqM1avqlMNzwGdrrtV5RSf3yJH9gpdpKSEPyRH/sWvXM8F7juKPOw04q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jTCoGXa/2DxRGh/xltI6G1c/VvJWCtiQyj5Ar4q3maA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MP2geFo2HhrOV4PlbL+SRJWMekl09+mSHkfLBD871O8FU/bKERqcfA7SBmOIpPmrsVyeDTeAoYo+pxhb8eU0gifAViFkEHvHYbJXuNFMzPpxcSJ5faI0wgDB+G4VxytV9raToolLuXcBymWJHeG5Nl3rBNDezF+sjJpjvjVW8eQ/m6DMT4tkhrng3ZhbwBMSkjSZWwm2xs6/P1Vb/lqfcpMq+lhRgWaXpYMlsiskQKS0PmxmoWh67P4XUKUxcOc3Nj1CY/v9XF2BzqYObDX4BeUpBSHYFeWurUQmByIkqDRqtKnfKUd3HCgoMB1YrRxHkAH8tddQvkU/e3otIYswmbzMcDN8qXYyW3aheTPXwjHmbMWfAURmONnJJszdbjZc+Bkynat5x6lqNxbZyvkRARlrsEzQnlOW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jTicPsJVr/tPeEkpyYyU+HUmtq4b2athxNtRpC0eQh4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5KF6IccjaYEIDw/I0JbGaMTz8fLX6Wwz9Bq5zI3sY8N7IxuKWGqguarOOYFlFzcOTJytNetR75eUGD+35SHUpH5ycut4clZFlsYh1DEq1vQJEhVE695/C2MtivLcJwfKQg48ogkhWiqtYab7aVBEuMAZVRuO48ZBThIP+Q1IejEi5rL90tEphzfeCWxpGxstzkbPY5whdA1m6ow77ELjavBV9yiYFYs6JTcM2RU9mGRhTDDeuvmrcDaiKzhh2/uhvUA83wfwWJ4LvDse6qOjhxWSbBId7m/G4+GPDJORlZzYtgj04YuWToX+IvXnZgHcUn9xGDioJRdThy3rzhsBo7T7wffQWnEqNu8v1FJ22M+722O7BZ4rNj67J6Bj993VXDUu0sDQEe4X8Tir8N4boJuRzotGvN92", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jU8YXJVCSx1sWNcNr914U+9xufnN5E8E2hGmO2Rhv74", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mrV5TGbecSfLYtNOup93dItuNJFSgpAMcHI+DpDolotrnQAewtJZiEmTClBw12wiESAHx0gzOEiZT8dIzZ8MQ+w5pvuE2h67VotzeakqAjjVl8MmQ4Ucm+oJEm7hUWZ0PAj7517FAkjTyzqbksz+16wN7pKQF8fQWpt0qUPVwTqwD1X/7evnpHX3K+7NpYo/+IJEDFpJIEjr1NOqSRcHjMx1nvMGggP/y2TEosLJbRTJJvSSxPtCJuZ3b5aMSzI0RFkrXdCGgC/Pe8vFEnFu/n/geuB2G5ixoBwVPm31cZwRsCp9RdlPK3XLqmFO7tFsa/ypJufvSVdoGa+raxnknHhpMDo7/56NL1waOJpls3XxWDmyvW8IdKeW2uRb1+NBe8XtdJmcfJZvPy0UNE8Eaf+OnpGsOedg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jUFGA9FrYUyU35D4vhr3j/7UM1RKmsuXvFizaZA3o7E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "663TeL6bWNLYZK0RbmQaJq83ZnCQGyuMPHsq716Vv4i/ZSKGXbpy853qS7t34seEkn2ofODCiHisdBZUyKw5+vy/JBR5bcqJZdkOra8z0jtsdRlvk7NBswXKhO+Sn2/k0SDog2u4lYegBQIap03Ergna7F50u0A/eACobYKE+Qknd4g8teBogbUdxOx1nvN4zwfyxTkueZ29lLqt8hwBGJAjZklHhexWh+VwDseJGTtXTrveO1acux0L9cYYTTpeFZIW7rOw03etYhC6/EV9YDmR8ce+gb0kho/+DX30ORumZALP2mI1bSwwhH9mo9LQlfD5VpGBscjuferzx1JG1jMve/9aRDbHeb2doi+LrT/OkAZV8/J85Y8DBsqi4UcgZx81iI9qNS2zTG47Qp105rblkKMIi+ri", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jVOACYc1vnW5+lv+8dGdDQTXpIF7kEO+xZ8mZimRz34", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+DOQRS7JgPlRBFJq4NFIrsvZ8wP7lY6ynuotzLzS7lnW9Hc5tMAvRvAZ2tdbNatyTp32iN61Xt9H4Wv2d0xR3+bpS2P5B2sUq1ktK7sBrmfimX9wC5cyVrO5IBqIwnCsu+nLiuy/wrivxw0ueKGVbmKNyDagWjmLdeG4EGiWnBBxb4Utj9mBOCiwVj3WFrehPRMVPY/muqST8RvsaUAg5uuXh37vUr8RSA2BkXqOIz1y9So3XRt3ptiygP1f4iMuUQcfg1+AAuqBlbtmDWGu5644rDMzrsNYdK0QqjRw6BEcsUt7+RYZSic/tPbkl3JV+CfMXHO7tOsHVQM6S/YY2sjKzR5bfvwyDHU5UV250nQBS0nc9OIDOuDkOKH+Oc/HdmukZNfClXdwubRkAQBdxJBEjfMwuP8N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jWmVFY0o8pi4nA8OWZUPaJewjfJql9yYYyv4CLw7d1E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d5HBAPNjMkMP1z3UHqXbpCT+gh2oUzmdrNZ3O75Vzhq8g5GFL2UvIpsXKpt+Y+Hy+ovdh4pOIRwbUs3TOirJAMRwMmfDLjqUlm2xcejBOmis1nxxaOY/v5vOqCcr2K/eB3dScie2kgSguPXp/0fgHaVazPBk/LZp7msrSH/Zcx2Uw1XzrMgBdzgDboJi2k/mkc4tRwtJ3hIRKaPjYNLdx+p4FXUF1ccWNCsnOp0fL2LF0Lg4DJDDIUv8vOUf/77y8RfMLcPlzYuYRaCrnVVLQA7am7CTGgwC+s4jw2GGJAKEDixwrNWjSaWvxWxhWu9q/arm7CFhtcMZUU20QgvgZjW3w1wVuyuCcdlidS87sBkiV3dkgk/+Ddr4+j6yUNllzq5vjBb2+l4a5jvhEzjg7fvdKU6OpE77", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jX5iZsHX7Um57LwU2mB/jBEZeC9gvofpF+tmcstK0FU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tTzqvUh110yiC3vh12UpAP0YARZf/KZ8PtxjZWJOTDnfqe0zpwlcblhxJwLalss/mE+Xaf0ZHZ+hgm41N3ICsjaFzl7lREsxowFTCqrdFi97En8EqfgrsvP/Pjo1Dz1x7pmwUIBNXB7UOka50mMJCXdUXlTA9VlE6jSWLEIOzCOhhpJpeMkfH2Q/M6vUChAM4aqIwFphWi3lI/4im/tJSdTKUgu6ObvUOJpfQpczhRGI1Wp67FUVw5GndpLSmHGQNylI/hAmHVBjj4mSYwLeaIeFysCjzqnNAsmHyEdUKoRCysVwuaLnopC7yLugB3SZ7hIpA7cgcLvNJXHvLbQEsaXurHhEbFQCcH1gIjlVyiWUFfdDZ+M0svj28Q4AbENezBDJoIX93bb/pFB0B72Rr70UWI7d0zBw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jXWvqa/XJbbFYWKIwjx1yesEENMq1kMP5Nut08Rv8XA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j+AOla7HdBHcj4Lzv/7dOmiMZdGwE9dkgfOMaMut5GSZDMLIwcaeVuuQz0DIMlDh3yLENqof4LThpt8V5IxUN+IC78bL4eYQAoyieaw+N9FLQ62llb8LvkzqL9z8TxLxlNkY7MNMT/83LMrzgStUlYKxMP4LmjMP6GNARZIybaVK8McSbdyQheJeQ6VcnTWg4YdROc/OcAEXof943lY+Fx0UrnHIjOr0FlukZ4DRhyOG6wCPUEInB+z8dXv1g7z7ddNxd7EBG2rvsvVKg7hg53SwKmbTANHTr/c8mTXbWIaV4JtNJCtvNFZOLU+sdpovX5kG766oIzbmbtmwhHWgJZZfPKdiMEs3HPAjG6xoGWferNCcZ3l2vO5glmRuZA95W/6YeyeELDYXzGtxLXe07GhoxWO3g21r", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jXa7iEQAmzLmutFb7ClXlEbp64zxR3/2l4P+0Hwze4U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YRDsBCECrCxKfE3E1Zl64kedETDj90yP9T+KBxbtkTUhn6tpr4GPNc13KFRenMA8ZYVrLH5FsLZS5/DSFRzIYHt7HDkToePwa8mtyydkwSoQLEfdRg+nHNITmLlGVBfPoc1ARlUZ1eOm//lez+fGQuW2W/GzSkN/RgiliQx4yq89Co+EV9gecas2vwh8ZL1/Uusn9MPRdjoHtNyBaXf/LHhjg8HrB2QoaHF6x09WsnPZZzxzzSl82BOHMqUNohOuG5Lg/+z1g5L1SvpQv350QUO2Ndosauz+ne0clz515TuBmi0Lp3p96tcpeAJZE7anqMK6xaMVCYwGrV/UfMsYrIigBhLemPpJKI3qk3Q2cDfkM2eE1viCUfRst7EJ4ft0dxMMZnQFVM69NGZfUU+F4IPEhCTtkK8d", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jXqPDIrhQWZa+yhygM+K0uy0Q2XY8WMcSHE10B/5yEY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i7vz/eBFuG+CT87OEEMKk/l6MOU3FVDMxO6ZSZOfXDgwEz1oyZoqCU0oEXlZhJyF3fOjxstfQK2EHn2F20o/2SS2F9I/7vkg+adkjPP+B7cTAbbWqf30HKjM2VsDK/fqu+PBWpYOrxsWwGVWGEy5zasd0YP588S44mr/Z4vC2eEzh8YaoL264eyyOM3j3m3UdPEYzxVxQ+eQ1QPaaKaKfCiNc4iCHMo/ZmqRybqnwOtN1VVftowkvQjTsAfilfDZBPudUWIYGRoMCx9oWJNNx5NywpGj1M1smpI9HnYtzFVOwxfGLQabSrtVLABVW+Na55dPcZ2OlgljjnsMYKxbIKAH7AtXtovrjWUx5K/MswqKCSZ8dpEhXW93nixjoguwXq6Geyd7mpTxfcTe6C3gyBjeBn1XiWNv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jYU4nnbFEMKvkRPgikLHsJRCo5TVz0WCKkR/jCgsXp0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PTSYgc2iD5pdhV7mvchcvO7uJ0H96xmHe4q7Ixk3KP9RPTcZj47TXQp4Bc/3gYLZf3b8sBEzI3bQN0swwErQEKyJdZ1KWZaf+Cmt+O297T7EOzbNoIsiDgEOQb8i5Ek3q+rQb0QMvh+gWhHaq3pAVQOiIPI/9B52lfX4qqYcfTNS9d9qC97D7AT2qbcwTYYrzu/eoWr6Aq8e7k/dXi2w8ncl2Rsv/cBlg1UWhtCOoU8o93are1KZsmw3P0iNQuadHvT9XJSsxUAVtZ1Gg8rx9U2jo3/HT8Szo0/3c7Mw99JAhXXNUiWLHzDbcjjOsf/PJIfsqTDtdel8pPz4YcXQyqNAWURo/uHvwh+sQ30NCXQ2pkFvHBuKYMQi7nGinAzIOXz6w9MS1T9fYfwJfBdkR0kv+ZcS1CpL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jZpKnt6k+hbZHi9vOv3We0DkWgVFWg3CfaQfuQilJqk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "H3l/R322L3Qbc76XKbCvUK5FmQdAVeoLuFk6TMl4L3rtCiNtnx5wlJrFQdYaww8oJAHsywmX5Pq3fvfQkKsfRdzXMiYCl5evO49j+4bgVHMFbxVvz+F37OdktsopnuguBnMeTKGSt1gzPTSr0SGBbLjwhYjY+h7L3BKdZ+v0714CFiOuWL+6Ub8r9Wger1kg/HDOhmprEXLutT5Fxe/0bYG60JxEw6f+15IWGzZZbRhcsNS4+kSS9veDnERoovE2+2EEhb9wyCVkWLwVIephMhFWxuxqirSeErUPsDKRH/21YyDJEEoVUl/YDp3zgAvbT3DqwKntWM4r2ZyDuHlNLIv6bVhfLnqEoEVcnFQN89+tmrYXZgg9x4XVD/RJZs1rmjDYXsg+il5WE7L7x2PA4DnrjUJx3HPo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jZswkzHaLmJPZTi2J+EklK/RR/BYNT/3NLEsvClJvJc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BQFeP2EXHlXXsOAKLiRWtsvqxJMS5NslrbwwV9RtQ2pUpW43hg5IOWrdU9bg1zYLo/4fz8bxgVDLnIwW7iejeIoKhnXMa1K4YxWGSTnFuyVWmnQbCHAzeESqT5u5Vzi4RXnJImE4QF3hodUCrHm3SBGIRp5IH42i3+/6HG9G3FCkYxa5acC41vk7pNH/395B765UBLyZb0RS5UeBVeQzNBgsuAI4V5IgBkVoCX+xVbNGmizzrZ64USbiBwyKqJvXqT0XVM0dAnkIH2SQVhCIzTIGdf4zx2BWy6MSeNfpaFa2EX64GK9mXqconzDspCb9leFcrgv/fyB6/Uz3aFFSKOu43GgRk7UBObr7hp0elOZwPry3nUWzX5XhYlv+lMbQqenIq56RHLR+LGCEjQkAls/RtOXBvkok", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jZtpeo8iHVTYqAFgDybm77TtCDt8uMW48GWUqJkiBJE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XS3xPLOpwGzpJy9ihLsidjJ54seM96V4QkZS4vcnccfF55k6egG2PvqlvmSsewFCX691yg7VNSdhSuYtycbHa5hzgLl8MvqMVdujaM6Dz/qAYF5wCiX1QWaHdGS7RD+f1ibfChCJNkr/YeSCoBIBilnAx8HAmHrxYjocLq7EQerwwW8738KXa6KN7wMT89qZntWRR0MNXYIvuqnGcOWS5lDIZ/MLxx1TXPyxPW9qcsFSKtactc7FZTwxBZcIEMscc/hqoVITO3N0WJkTaZlAtpebziFuwJpXmWRk0xaITAnZ8hLwD+3wvCsBeVC+h2WFjgb9rgTLh25mO2u7hutUAuTfqF/mYaE8vssdOKJKr70Ui5JZvQRM6dFmVVsROv54Go+Xq4HN2obTqlIpE0U5Yh+oC5y+r12s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jb2C7psNu8wdVDNSv3+HWprQZ/eDOQgQDYOcX5nJbig", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AvNeIWFle2bve4rhMR1UiGgWbHr1xGoD5QgHeWm0lsF1iDKDb5vh9ojtD8NZ9lxdHJSq495DOjWwfd5keI2QSDBwZ73/80RDejyOfKTe5HVm68LOJhxnEJDlB2faSYyISS8kYVDDo9FQp0PArwQariJxF1+FbouGyInLnnZQhIzw3eHiBqo+noeoTCJ6wGaQKtLaQmIYQUU78Z9XvvHrfitjUm1RhRlFC2gw4PsIW9vzlO13hd9eTjfVeJV/ZbldV81NbiZMWvFe9uR3nqw5gwTV/GN1p+jcogq85li6T4xpFzxeVl26DOfjbPDh8cQPebXx5D6CoXGyCe5+2UxdJ1GTucE3I9BUXbJflbah9N0y8XRMvLnznLHzoDUIcxlcFLb1V6T9/1GCPCYrObXvQRoX/WgdAcQP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jbveWGw1NN9KKRnxmjBRpTwKYF/zx/WPCCd7lmvOBrs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aiTbNhhcx6Mz/L6JZ7IN4Oi5OzZzYcBGJnLyHuXU4R3XbjCw+zd2MlRGxSMPYX0r58YwcY+hgK4FF9uo1BErnMHHA0FmQFcHHAhH4wYOPkmM8XgyPAlcvLrzficKQ4IrzXyC/tsuEBQy9s4f2jnwZ9Uys2Q5fIoYwXTjDTH7aQ8xWNRQfo1FVWQO37h8bsCZiz5sFqI/d8AGvNxwMa1AHQD+bjVUr8ntJg7R6zU9vcZo3R1Wc9uSdXHLFOp7i1ENII+E7+9Y6HxEIxh8GDTe/FozSa1aRxGTFTjhVXdrsulBFwwZcBlMfVAUUVF/rM/LuKyP+T7gQyNjaPlm3dKBopzxMmt/jb/1YyRrwHg16WcLQJxVoPbVUikdUH4gZFMOEbggWW4bXNL6jhM+athzdjiaIz/1IgUG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jeqtCkLUjek6DH8zsEbcTTDeKACgjLNCUFdeCyAyrnU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fKl9SyjrmecGv3+7GZKgPR8sgeu5X9tXdHlBqtksMrtxvzb75EBmI2SJPcON/fU3XKW2k8LH04qJCp16SiARPteUou+25qm+sF6kzPOoHO/Nt0KsoaMYbtHgOk1/lnRCRBpBHxy/HO/R1DNwJCdvIXwWD1tmjjawahUAxbNWyWEO5S8JI/FvUCOINKHyiIiGfmia/Skl7jK7gDyfzasiCAXfkFoJ62NsQx+nSWc2xWAkwop+oM6/2ZklFhR//e8FegdKAJjrpRs2f/vXK6LMEEh10ae3c/+53ymhTpaoRXeVe56dwKpFWPuTLVoz7fxrAFvXWPYdfzvTwUkA1mrZG6QMRtv3uq8nSFjgAORXmEyffV1eKCfYpbTDG0YjaUcbEoclIRcAYA654l//91xEquNyuZOm4r7X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jf2RNshFH4vcPxJIFG2fnStVFXsOYFEUMC5kjWgfD8w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YKvTCJTj/TiGwy21GygCbhjO5HaDatEll86eYkCI4dYoPRif+iT4Hf5sge6/dpd4t3foDpVqPwRjC+4cpckW1T5VAef4r9wzFEP5PVdUtvoQM+L8M80IK+W2VEKMA5KTTdBGlJrVP8WG7TR21YzMHTp3kmsUmb6J/FVa6TLyR/PKF+nwuX/ux29Fti7wtNYSfy3uOwYyTTHYLpZM2OHFhL4p1mIroml9Br42yU65DavZqpjv9AZ+EiNFe6H60Wfj3XpnG48g+/2KxnJkY/CDl+3ZHzEHAQXxXyM/VDPfv2s5SuLs2WP/W1mp7NlsXu+lwmlTaDiI2K2+LJvH02tUflwhvvysD0Cg1hxlrooXxzhy+W3O6Wa5hg57Zsp75ILAE0DId5ow0tzjvuw1GvwknLugPoqfPmcA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jiZogRBRg+GwuEYLoywdDdMIUL8bnR5LxOsGiHRc3Rs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MFxtPur0MJ1SCVF6d4qnOtF0nA4omeKR5HzD7312Ax++4xiHtM6w9Jyv7QN/cs2lT/ZU+B6oAw6LX3+nSRT8em6mta9J1dH18ahSvPShiQmv8fEZA4Hl272+iLwrPcX+GiIBeHGjpn9BQb6ZOCUXZXp2z28ovIR/+eVEo2YighRKlILk3gRW6GNSQbSPHGpM6jBh806ONzINOKLjE/Yaa2lByL1QrleBq4OsOHD/g4Z7f4lOvuanLwdQxKyDf4eR5PIkRMPCbSTzIkJK5oIYG6lxt8ve52G0s97Z8l0CcjijYPzvYRYlBh66PPKKUOwsqNn07XohIK1aaJuQ2UvevoZwBLrCeumrCQ1pIboxjYGXPGmWaCd+Wfm+NUddV/QGEqQPbT/1u0TDIhyuD6OzYkKCOJEffOsi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jj2CTi//d55EdmKpfY0eXKesQEulDMylaZ1wmcBnlrY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZmIh26c/oeoIttv70at0ZdH73AlDMhcLAQ41/iscB69BYDLtS7dEl46754XgIfaxYv+8dIjdSMWNk7WjyBmJFDR9b3vDC6Z8kHSA5wdr7Y/f9TyeYmosbD5Dfbj9LFK7T7+jJC6vtxDJmX8UnNbzeR6HRAgueH0YQaYeSQ+NCwWw9eDh8n1QRL3cQ3MFebF4ET6u+QDDCWXbIokeED2O6FjUQHjg1fTKotsoLmqzgfCSOp/AENBrkt2YTJPgtP+cP+Wv2sSMrs9fUlYapT2B8Um74XmRXAgDkxg0GmZ9gRcwc8h/3HDBoZ70vKEKotNULHZGYhx3t30AlWrEDUp3wTVFUUnzd5XzAPZbJqoDCzWf5BaoqlqRlsBwb8uBmr5QayiVwuKUMaDItNbyyBsAE3jFW7Je/z1h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jjRSZQddQHlTArG5kGwofA2RYUHczxiS03+w4xqGauI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4wDYHieC1+GIL7AMqqOm3+d0lubdWrf9ffT8IC43JWhIVvT+s6O9VVOTas3GF87HfXlsUQ1qiwWsFn48C8T1dhI+VUzkpmncidyK/oaVr0m3TLH0IIFqudmZ9Gggs3rO1hpR3t/vHMSN5ACGmsZ/emw0kVKR/xAgbUEOjCwF8/IgTU8k//q6IVOL8BECKusac5vbrxtl67k1LtCRCmiYPEyX04Pezz/MnhutGIjRZTjyErUTDXPmplHD1FV+6i6Aa/hwBqyWU5EjVRQ9sYwKKEUd7eCc/t7xWb7OsZiIZM3hj6l3pI3ba0puoa6HxfiXots0pm5kL9xoYPPf0Ry9Ho5xNN8K33wrQZHG+GReqzyEY6XQrwu5Jg+YpFzb3iITeBUzJsjZGX/mwd+E8ZS4qVj0RqCMkLiH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jkoZSew2x/aIZiLQhBJyXNXj0aufsxdIDBF0rkiskfE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uz6CQtucr5+BVMTUgNyZq/uOL/4yddADeOjb8aRlcMpfWnj4b1VRO7qkU5YFLvb2zhrSdK4cHYV17MHoXUGBhd61ymcNCw/yUZwyWvheegewXtSzwx4LKjRzvSbv+8ulAvPdHNlHo+bDf/55E/0C/kiSMynFblldfinwzLDy+JQeX/YH7rV+omz6IPGNrmtqP5cr3Bj9pOkLerDNredFU7H7FYgEaldkvy5qMVZ18rnMMOI7um4ZfQX5QBbgIf5JFWilEr/ULk4Fs69ln7vi/XNpCgra2tle1oGFFoGN7tARYckSWZxxmU/oLprkKu0xkJE1Ql3PCCo5sCEOvW0Xf5EoP8B1I3zKDxxZOawPg/HDp2Bom01m5nnijYdefq0qjXjFND7xikCNWbNukJz8cs/4HkP9haml", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jl/GBCR3AkGiduvbI2P42ui+eHH+DZE2SsUsQvn6OTo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "umVwbs/5ACHKLafpzuexyFYXl5O3BH9UmBd1TedPUBbJzI8wGZGvhfAX2Glfly0hMRMNPYRlXHHU5aTTbBkDTZCRtxl3jX6z+KYGopVDuP8Aj1SI2gOkKc6IfIRhjPBDdGpI6Im7t2mr69TMzxBLQ9L6zJONct9HppSlzcCaC0dOY5b44NBBJx6jUag3AwKxbd9UVrR2GYCqLu6OtMA7JsILiyOnVXo95VX80gsvJ6TGf9hBKeTOreT1mdb7em5Lb0Qi0Zg0hvdTL7zoZaUM0D4oE4J3tzX0SmYO3cYg0cPdqXbat9n6JSEm0tduakkwGkc1sz+7c5u8QGv1TVp1DaiD2yFxP3kxV0Wz1k0MMabqjSBW5QEAjC/H3F3dQEQLot7dv/DwUCc8Md/2r/OA+CJCRPMYa8QE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jl2KKY9S6kgKihtDEh+l+i2bKHCxuHQtA+cRsJ5wrf0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GR/IZnpyOSZ86ag0DQ5Rmz4QH7HlDaMRmGk1rQto9LazCIGG8Y+RMILmrlyueRWDtXMq2gXISskPQkIP3DjLfk0LamE8QxjwWf5RfOUlGte9r+IJOS/F+32GcRlMF32EMB8Cl4DmvKn1XuaNqmrNUY7Q1fmJ1U/A795mJlI6RerFyUiyPnf+GCCYHb6URdoxZagS6XHUPrsB8E3cwcaxluD7w907q6eBHxwNsPeupL42Fndz1ZypIY5GEHF3K/5FmRvJ2ZLqnKjMFe2qBUUmn4dNUSWD2ARgziU10d7nMZiOHxrro2yD239BX6r2e/rSW4SNVr1OgL9L8f1cbOZ2kNdUfJr5NjHA1vnjxThkEWdmEYRAouvtNTrvPNWvdD6KByQLdhDoyePyWgBym+gsR1H+9+RRRACv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jlDnjj/CackgwXGyVYq28dR8HTNMhtVAh3HoveXZCpw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P4xjspSfsDpEoUACRMtG3B9C7jtVkw3wbnHRKqc2OSDHvQ7wswmhzH8fbEg5N9Bm1qY7Rm9cr/aKXZynLP2GH0NRmUGTomDY3vvIH5tWT1N1TkS+vsrRlvzjnDOMrjW4+ZTZswvnxIZjJaeUpjBnAuQJ8/RjMTHrN+WzhoKCd4KUQN7jDg3fjwFkjiLrIJ1ngYvY6Z/t1PkHQqfqV5No08tpdn5jLZRtzpoQrGYsOWEq6jEHuGk7mXh5wWIP4eKXKdvaaMJvt/Xseno4Mb+pihLs/kZjBUZi8qbM2H4g+bG0qKezK/q2TdK33nxpLGGrhjrRwfqC8QjsiMOGB8m2dP+ZU5pUaF84yFjJrEpCHDPGwBO2MwforH5Tx3y6Ad1nllcv3VsE3TsqM7KQlZ4/AMuPit/GHo4I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jlgnBaMg9cCpcaGjSDHLn/nLCOwW2yv6eIPTYlZyQRg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xLcTBjPbOP+BYTez4bRIgjx6rFNo10ASRYSSpYh/wNk5TCUlMgp77ZN7JUztg8VkibNd9n35dPOQK+pGRUY1Gwmti02K9OvG3sCikDct0Pu2Bmo6ym11e92D92SauycKN5GYZ0hVuJ9iDbrsOsl0FBp36JYGeCj9xgh7IIynzzKxyE3t57xPYzLkB8psRL3eGzkcdDSmFN4O2pDDxY3Zk1v8Ig0m0g8kgE7w4HVrOHBIp6m17n9PZbgrQxMJ/KIU6PI7y9hJnV6MCDo4BsfGROSMeeaxW9tVKzCUe3NjGl+gDQyGM+f/qo2jhr/t+hD5TZ1M6429tN8WUjvDE1tACaxUp7skKV7EPMQfPQCUG71E2efm/I4A3+SKZZDD310hL+bRGjUKFcmRzEGbGVMMJUmGGTlVCyqo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jmat2heJFBr/u+EAX5IOH0wVuP1s6WqAKXkMJasxFHE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6N4HioY3Bddw3grqv5eSzXUJo3Wxq9aaIEfL+2KGiEcZpDSWX2lZlfpA1C1p585WyTCpP8qmD7fFL4zHuPN3BXLzR/KUYtbQrU/+3P5uQKJ/npy1vdG4ynC7s2AoGxxDgKTKd7kBti8BTpt6D1QdhxsWo20XNe5rlkT4IaDezUWvOWQngonsCSOMER3c5sHEEyuqJMQczCKeJ0+1h3N6yEudeGzdfNan9Smhj78k+olJcZ6Gi6W9eeYxtGTPXqmnzSPu8vw6ZEMjB6PzRknKP9I79iCNnZOPaioS7RlqrVOnNDHkw2ytQbIBpWNjSgp+WaRpgvmI2aQ+yvU98E78n7anOQj14wz5yV2QmgSslryJBN8pJGxoLBmWTSpQhwjPpOq47YfGb5uTpgqhYxwaMUtc+E8MJ56u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jq63ST3t2S6bn4bj0Xz/bnn16hRyKKUV4thFH75tk1c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y1VYSPknITQkHhINr6+uD2BxnLNml40Nm8PyEqZf6D2bzMmhLtf+lRGD1XHwzwzp0qNBtJiBHTGbf7cI6eONfo000BpT4R0tDpNkLS1ssEATUOE6Be15gGVVcN5UuxB9PZm2DmUjpDcZjZoWvg8lDvyejAbNeCxMpuxQfq8vm4lSmIRKxM2kHeFMnjW/n/qmSUVPVKKdXxXNSjSSa4f5Vap/oBJKi/sqHLXvlIR77750R6xdrLEuDb86VINCOe2cXsQ1spLQEJ0xjMVVIuVoDz+uD0R5h17GtsTsBdka6FvDwaxO1wSlFwx2lcbs9i11VIkBQPjv99ks+F29ZxJVNpdn4BOlpDO8doHMhksw24cIl2kKt84uYJOXzJSkMW5jtXtno2fBVMdKptxvT1DUPaOIlMhE4ZiL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jqDW4rUi9Wb4/WIE6pLQoHNU1HWZuMG2MceuV9sryCg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oWrDTMl99GWGzwkbkmNNNx0TeBQT8mCccW5nlLwUUc1b15QS2+e0bD4/p1uROmAMiVKhkMF6sYbQR97d6QytNFeK8bjZbXzartKwZJrmOqUFKVZ1ukfAFmSrB/Qtr79UXZEKYF3X+3AOvTu2eWqbWwgI5ebEb2G/420UgqegtbaauItYXFKzDYo8sdYDblxklzkeM7Jncn4zjMGy5ZYWGFW9l2qdKxW6t3QwHLRF0vQXNu/lrOQSJje0QpyIfTSjtZeI4pheDLOSW2351bWgwTZ0pVDj/MRLToFiE/+wGw4fMXWMYFtUx3idc0G63Q31SETu8jbDumA4Mpl2T5m5IJIpEoYgShxhmg6otviCHFbkTAz/eGWQoqbozC4S16KTK/pAAUFcORh1V133YUbt6eIg3ZIMdWFq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jqP6a7pS3Pk5z5e+i0GpMJfm1jvIqC4lZz/oq1HKQkY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "StkTGHZ7njDt+tjF/BCPDvDxaXl5p47PP/xPwIePnDkBKB5AwbzDjhOiyZ9mD/+fNK0Bkdf6/wvbneEnlEVuPp+K9gMWnkof9Hzv6Hshnqs6oDVLjryuGznfQY90HTniTHq2VeJvP3oyrDcN0aVIOQCqZWHsFznPHsP7qx5xw5QC8wItilP2GTF16Jj4ODDy/GIFfevpnwN17Tq2XiBBxr/WDZoH/ow/XXkPtZiuk6QD8hrIhkhr55y0MEZsbqskDsNEfsQpeVU3sPZcZbarq5wdSKtLXPukqsVNUgWwwlci34HaGPUti8VmKkK1IPB3vfwu3GhP7LY05HXOKF3eNPEX37GdODJFME/Lnl+WVBKv42LbhTwI4CI10UFit/t/OpZ5yTNzykmN7sqw+wDRjXOJ4YvjpBuw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jqnMAV6uQOAGz4ZpKuyNoMHxwxf3U3whD/DabnjzEcI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rhxKunUe71kBf6N5vtdiNCt3wW2GNMR3iPGWgpf5v4AF62K19+G7G7xp9nS/EJoAWSX4BvyLTtzDxykcKGJmnq+WxQ1FjEsFPcjhXCKtPKbjYkl5jLHdSr0TB1Z2IdDpve+X/E7S+mzZ+nPpTDLQ7ZuiSnq/tLHyk7hqIyfJzW5hw2ljxdfJ/Cd1+LTuGMEhoBheGCK27A48ey5O6UzER2iNdRLnSBz477bFZbbE52ztjBDsQht7S4MH4fNZKlhnel6DpnqB2uepx2uDmepMMUibEP8Xf9btibcXyMeB/6ZzkRxPw9jtE5hO7F7j+2qroiCowG5LGd6nGEFW7F6USFjrv/HiKrwnJ5k97mbLraTpbSOh9fOapiN+aT8peUsnLvuw9Y2m+wtGvSdH7UNyq4g+p6uH3q09", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jquCpazltr/lGDSr2m64lvDi3dq82VlS3YG86vInLbI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tLrXc4kvLLz4d0LXdNJLUrGFLFWXlO8hYxeFItZ+3jXSLNvbavhucZToqLGnh7U6jTf+XrRDGZxHxF8d512DoxXc3if/QsP4cc0DbTo5AUgZ7cB41yka0hZENIhCu7n4SJ1EsT1joMJYPTMTGzlK/NSd0rCNilkctt6t/WD2cdd1d3wA4JJE4+UHxi0GOjYIVx5egcSk1OicTj3NN49mnpWaTi/AmF4enoh2QvdA+jvVDYB3sMC30aKF79QyIa+snfEWWQHCz/+ERLHURCZyCvAsUDWNj85ic+bJhKAqppgdEmU2HR0+qNb8BgJvAa9J53vZ8vFt4zjDZdBVoJFZypYwDZumb57td1MndeFDR0DuorS96wSmgHbT6PUH1y288h5wtc9WSTpBJfEw7M8qetq8AmepOTB4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jrbnJwZNGwPRoxNHMsfnjdk9FQLwslA8cuWCqAo6AN4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s41OHPqF3A/+swAPOcIHs7cRug+GY+XzwDKDw2xj89F9c4i6eVZC0L4EZb6cKRyRnCYg+WXVgz1i9DgKt0H6W6F5lQwTesXaq5RnfHT+MIY1PRxr+VX+8QkaRCj9xt/TtK88C4MMsNrUt62duwv0EU23FDjqlkPKkWamOYboxgYGe8LX59Rb+zemFsbumpqL1/bu5SMbssciLIizUNPb2X2KDmaiTxPy2cNeQbFxTyuxQJqEI6ehBC8KQOhBXg/L182UQAgI/CSiXSqPdbf96Xm/PyomMNCINEQiNc2nNIyvwzljXocdEF6k/UHaT823QjpdZqU3putXlIyzcYA7Za3L+DH2CiWj83wBzGseLNV6v+rpNkLkaWoXRe+t8RZghmC/masS64cr//TxsIx1lqiJ3vRtZZ6e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "js7gC0z5my3NI0kAqlOkcYmw1WzLznxRGpba4opPDQI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qGfplfbcM6dfd9K416YU2t+JbLtsSGyl8lC6TsJxSts5xwPcq3+WW/UM/IEE9RJo5Jc4YleomUs4DYvexaB+MfYE6+a/ez1HPWN6it7vIvcPHtMzqMXTBUwxgzQM58ipajp2erraaAw6v9YG9SduqI7eHBGiXPSFSr7PZV+q+Pvyjpt+UdZviNgkctGR8MNFSXBNY0+43BT493ERgSI41ACPpl1KmQNteRbz97txS9iWq3rht+Sv5Vvc/udMA1NWxREA/iqRIx8PrpTwXEj16ZeGAdZnTDbJmOWVTfIpGM8W0msEPHP9ADwUx5PRohGPDDttI4mRbQR68UgAlsmcdqcsJWBFclNRbP3BBinJWYUUvyUUBo5cWETgmfVRIA9gDODOEcfCAFx7qsuIIsn4DrE+NMNti2aL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jsWxxDKvOcfGRd71KczkBsaDNwtCJH8OZoAcvRYu5mY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Hq01aRLoZavu74g19nGZijQsMFOZCx0g+7YDzetwWbpxQ5gldlAS2x1nXeFwt1pmjJnBZeaBJj7z8AWUZHD2ekWQg7rslpWKVTxws/Pb+T1dI7L6QQFT8aOKy3F7M2DXoNb2nHUAol412g6RSNcIcCmtQ1en16DRVRGkI+5e0gLAWGvNk+x44jxZmcKYEj/+yLFHFqi38dX4m3OdHzpXvqYFI8ybdBmUOxwY25uxPOLyKHmpYpGqOuqEpm/saA+JeISkMe8gThuo6OuUgEnFAL5TqQTlDd/yedoeb+uqE4IMP5+g2s7qTiGB1kiHRpdH5ZAh4j1ZkQ87gfwd8609bVegLspreJqD0g1iK1GwWOfi3HpUf5SThlJGhIoBWCBsmvDIMr7QUDfSKm7qiGFr7br2bgA7WgDb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jt6C8hr+tSQ214hAZq+I6jRSHvENm/jWPpOoUrQPM3Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tz+pYZjCfsh0nwm8YAXPdtG4cEt9fMI4s62vr6bjghifaL8DmwOxry3epSq61LiZwZW9CB62D4y/BzpQ2esXnuz3MX5uWKrVyhI7hJCkigXYrcg/m0wJk4bx88Sr/8T736H3PZzk/POirGDScs8ckkzhfNpJ0t7PRaIfWHhKjNo/9bLIu+w6LIMUiwhloiE5tsv2mDP9e1XlgQGfVQZDXFgxlGC7V5TWFFZDIky2QoT4cb+QAKk5cXhVwRBU3ge/gpGXJD3NYW8KapOKw6Z1+V2TendZuk6grfHe6BpFJ9ofeLdmjevXos2Q1sgZdskE2z1fjFIKA7vsOYCWTt7uNZlaGb1RC/mNefyP6PracU8AtUbARK66Og6HQ3+l3Sv63nP09KvbkFCT8j6AKtw4mC2M6BczGde8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jvX7lL7b5oKuCWzWvZwcR22oZnVgBuvxSObCNZqHQGg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mOLfKcXqAlY/s2tPKDDrLZ5ZbHoHn9grIgpgohbPg2qLt5RPWtr8AXjPiFfMSpillvEKZ6+TfPIJPLPfyD8zPYxN4PaxYhiofPpgOuCxotRH3DpMjo304XGq8bkB910QQDdepU2JEcBx3HFMFXip/hHYQCioSS2xuOngQlKgZTRnOarMfYaglwPmF8L3nsh0xteiCLlZ5uOePNt1c/2tLbhaB5j9gVCPh7SHyVzyLSk7U0GvbZJs/qRCESQgV8iAGKIr2AWwalgVEux3GbllGyW440oM8pgG4tJPhgvWL/K37Y5Lj0EGyvO9JOAAgOChT4z/lPtCBkzNcsbxhmp9Q3/i9BKMFWwQj/lSNmxLMkvUiCXPVR7eEeLcYSSDjN3Y63UMiT4+zP9ZyfkHZyrWvPMMOQFYImtO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jw1+hrt0K66CfJhQAy7zWcidKZZQ/MvKaUJsUkAOUck", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CqzPOnE6lDyxQSVBrSKN0JFYy/HSfA4/TJYWrKsaSR19QCbzI6BSSS1Jg6fLESIVyeCQ/0TCpdwqG6vqglQxZXW41hVJw/F6oFB6ZXc67UbYYu2P3Gqz961T1HxNPFOHLpketU/TI/omXjce98l4Eas4Qo3w3KzJTKfm0/mQ2wIvyPdc6T2t6/vphIf4vTSNM2XsqLipjO+KKPGQHZQBn6MCuYdaMojlssiKaqd6DF/0TddbInEpXy2IbnVcW4G9CSzfi3d+S3PC41cLbuE9LtkZpRd6Ma1xFQyXdEjuGsS7hyL75hFOqxL61a9PjLn3H/VRILOHlW5VXiYN8FLGHMIluIoPAbWTp1XbtgMpwaOStNUpwJTaDPrdeZ9/6Tdf5+HzV+8q9p4vdaSrtw7nvnAAmMhTGzFX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jwiwL+Yu69X7j6LYY1qczgJ6Hm8eke/PQLS1I3Ac5xI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2/rcPCbMe7FEUmfGLZYJDcOfgT8qNxXK691mF2B9vpZ0i07Tf7Xom/B52laSeyrZRj+cj+oskiZa5pEOFVHCTT45HBgvQZE0yWvgoKgD+clQxkMoUe/j+917R6rn01PswNMXgAC0NLHJJ7iv1lrxa4jXiOW4XtB5JK2DM4ypEkFqjAzYxIENWnXxsilIy2C/meO7exA/u7EBYEyJT3vk944QJ8KqhUTqtIMZ98S3NGzUyKRdKZX/WpxEsW3iiglW8Lo9CXnr4lrYeNGDK+VG6UWtQiC6DnzAMiB0PknbG1yO8tCR/JVallYaAkbSChIIcAaqp9GVqwHdxuyXlZRhiFWZ2z5gnovK2lS9pTL70biuHV8WG6YqRb+yqJFy7Mmu6BUfkabgDy0DB5MjZ5j9e44pgtUnmgsz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jxpXLnabf1HmhSfcZWQpakWkzCUtmKpjSwX/nbmDFHk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CZH+JTGWzuKYBHz/wjdQdfShiHgt4s5A369OD4CmnaNg/vYZmN3fQaTu4yF08PtTD/xqehtZ0wJltac1sm0cxQKjP9R6d0O14ZQ3k47IS43yXTdbWncuuN5qRtdq3Z/ooaFtamgjERzp4/HL4HnqJZrBG0ku5eJywkraYS47mXQT0Wc1oWJskfsK7bLOpkIdQmHwAhAxvv6VuZQwX8+6d95N2S5aafCdOQNcMsB/7STmNJ8jUdN6B3FOff2r/HdiI5lBlhabv0k5B5d5sSRCa9gI5PBogeuDtfy0GLoDDdL9ikwLS71cQmyBMsIb/TIx95FhuqnROZkpKaj/DWp5xi2a7RjM9nMMx/gYUR61R/y5E/4/7ZOn4gtvLyyiwfapNDExm12VUnTf/7ZO1JfrKpOX6GCM6pQI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "jzQl1t7nM1Pe6nE8Dckdsafkek+TUMleKTnzfLrUv6g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "twpFQefBgXzJtyA9VHz5VkUBZuVV0n8sp+iAgnnID2nZPLLOOW7kukyNkonHrwYxgmgbzcD1lX4+XjX/6CkYhmQmvCX0gRnAshXIuSgXuT8Zj3Y1cPzQkkPfqOl9ZPhxZwwfARLjlKpPYNunf47L5HXDAfs5H9ygZ0LTmS5YzGv0g3k88ZCfxAy7lDD1kelJb0erCn9YBx2V+Eco04o3daNIHQDRh/VKdN7IjdcEGcOdqQHh47PT7r7Fe7FSRD5L3DM1xKARjQzAONvm59tUZlcgK48L+beZeaf2H4vkKxr5fEDVvT269vnqTRQLg8CBr205sXYaXuVM8SQ1T5us82yF5fjy17aFkPgdoogcw2IW9bgW1w3sFVVetlX8OoLqL05Vx6aiD+9GugQqYzfKLcxHpebd0iAA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k+9NqNlsIkiLZdDATz2QNTXvuFNpm+4cEL1Am+oS83M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wMYHz++H8ByyW1KR8mLMLjHVOaHuXQoS6YyXY/T66qN4wF4uuZxQdd234LuQExYg+bXQJBPhxP/2KCQTB4xsUBa5lDztVmOrZK35kmpsv5T9rgmzfx3gJ1F2ATuceAyCbAHI22TC2Hn9WKAl/DN2fLGqczaDrcJUgmTEddalnXk0ypypW5u3oNOePNyC434b7uXv0MHMSuVbpp/80CBa9UMbOD2wPOFS1PzB8ybGV6Be/HV/f8PZ6H/iDbuFzW+8zKYUuJdDuKZpGUG05WgKSy0nulxHTNtOjEKe6XCET1658r9Xa3GDpF/aXbnV18so0EotjzgRGcnxj9jQzDvrXHA5J2BUMblViDvccDtxX7fKST7JfpzVKrjl6fk9yKi9vrJMpkXoJcTpp9/YHW79j893h3MV8KaH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k/Nvmx5bw+g4U0ILV2G0HKC5a51/E+LV5tB778neHWk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7g9lzfRPMqMtyxYDYHOPsCYly0L7sM2IT9gGVndIKmm7VGCa26SGFgiEWfreAaXPNN3gYBcHEvdmlth1M3CDmZpbOwDdXuzDaMhC3v5gP/CAEnKIAZy9eKRyfcOJ2MdyhSFgY0+FpfTGhw1syj7HyAZ0YPgBecT2BGsegWste908RMJHANXJeMqqMywyjxYCS0VJqN6lkQj95OMyEiYQZ3Ju9yMsBkIKSIgXeyq0VTWkyz+WuyZEF1OfDqw2BCyJHuUi+r9NyEhUNCgqf3++syaUxaN8NSPGmOm2MZmDpUUwMBxp9L58nIOxAwMATsZujCXvyuG8Qi1j30t6DB6L77pI2kVEHwtKQUa+4aitkGWbZsf98T+ZxqH9Wb+UkEBVaAPob6J/m1YZdExP1jWNDUQSsZYOyYAm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k/SVI3JkBGU2SJQlF2XNV3e9FaVtWcID4zo/lmvev04", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M/XP1hHAzAQnuFwCXUEwRf86eFuYj13YT0jF/27A+7ndk/kU2m4zStaIEl16WARv5wDOMkQkLDd+6xmVRvnVracGNio96jfqA0q63NMtY3nOxVLJgI7XFFIwd4U0Zso6JE1tY8B8SkDIgyv12gm88PYDJK+cLlvXntlnUzNzTBeVmE0CG9XUv7zMDB7kYsLsWOy4339tIN5Fse0hQFuW2V3gTOuYYhW1ZMNZ2MMVtqIcxSkbfO5CSCO/MHhW2PNeowh7jKrAkdgZpxUg5oe0u+nBjzTKnoPTVBHn5AQ5Nq8ztvQtNL5gB20pj1B3ss22od3OQ1t/MqKEZ5jN8nYEgx6YMK0tBds2dzox0zV19gT5DqlTNB3K1GYbzWjdaNmeo13BNZVW84EiBECqKDarVPv/uCE27Ybl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k/kp7Yomd7awBKOSfFt6VMEQ08DBqZAcFjGYY6VOIC0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PLpAl+6dqbGM/51q2nswLvwXJsadEhSs6Ors2HthzCn/oRRurmQAxXfk/0zpBa/c3kO+9UXTnduGOu48BSlt4S/hn35Fz/wIr6k2/6WpRTaJJDowHaesdRo9swBl4VsWn+tpPCFcJq8XOImzdawZ3ijKmkad0QX2UgmyS+tOde6mp56thnBOT9hTTpaHiQogNL0WCaoDKqhQLOE3amKw+AjFzs8HkYuUsCia9wl7U1TDjLkhP65TJS6IdY1ocRcMM+Fj5qtPT8gsoXiZ+v4LxfooMxEKtelrUBVbtDw8zruzzNyDdcTy4Ekc/mfhO/dhXHvInbPJqXa5bowDgU1BT8T8Lp+02MxaVQ7nC+CAaxE0j47xJb5Bih0bj2D5hjfsnjFk5DqrFb3XkFV0mabSsVP2YUt7HDN/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k/mFV1Yz0ossRJer0lfnifgLKsnXfNG1ovdITCwMITY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1ssVv1+koOUzc9McEjl+7rIuvi3EHEiQf4RZ3ARtwqcZ8HzzyXMKTzBJBfG9l475jVDVOCPIDzzex34SftMMlAnXMewSU/jxZzFn3+0Dl3BJ+PLtJxrLz3OWYphrbNuwqhSeQ3EcQsBbyCIPE/ftMDuhMwS9JRWpZpdMSLrbcyqBrgURn1n/g+FhAz+2QiQ4DhVXoMPyseZvNzPfFd1ra4/68gFMgTJ3W56/6g46LKHoKYSLBRZbW0bS5BSZzx21KiNI4ZxrgqsRqxPxZgXINaXQYBTG8GV/QEAkUIEBaPcncSz+gWsCDfpWM2XsnTOfuZvjf7CKX1JFq9ZFq0Wn/UpDA/EoMkjmILjSr3J6u1E3KP8KqnVyYPLYU1K4NB46gtuPQ20aY1nSKTWGMMy4hqvGjSvDUpFM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k0DqnbS6slgrUhBvsV9937VSI1risAn0wiJyBmIM2FE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BrheM8FAhVd/9MqxZ/dFctC1r3NHIa0lv3MC9YrWbBR6czBprhksL7M7OCFFUYeBf2hDvQclv8dtKXDgdD952py270/jPxJnLR9Y79RJnfKfHe/4SgYlSbcjy3P7+uPLknvxUZOgAtL7XQTF+nXOSUMU/4EMsrDbRRGa/CV0vHJQ5WvClpX/u9l2+pO11Hh0dWF8en6evr5BPTs2OprabVpiXcBFwDpmbuYei+fl25QwvjgcqqO8smZz+0/alqJyzTcBFp4UQ8zaBoP6JueHTnxSVWV65QeR40U2gqLJFRWzD5QV0gyRYdPROE3IO+jMnRVtEffizqNO8hFs9Jw//TKrZwB0Cnl1mavqAquJEDbjaUpT4WIHSYMq/PFGpwEZ/3IZED4TDID7PRvB3XosVB7H46I36yu6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k1D9sDlh3PpJ56RjZXB6J7sCt4aqDSGl9wV9nUIDj5Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CAFdfJp4uNdMcAWwAXQFc9wLTR9FgGmzAIU1oIPeKshrZ/7bljzSQi3F0ejOQBvSyW9SnDFd0YNgdV5HRT1PT/yoFW4zYtBCVBtYtxFqCFaA5H7UvpygXEvBPYRrzdUFNmemUKk869h1MJUB9fXrEd/sx/Q/hnFzH7DT3A4/UoF1hSrWA4UexQugSlORp40t+u0M569i3xrRoklEcGrWVNeC5OK4lxcxoMmUCq65h5Nfz0Odd38Bwnj53PxW0hN4A5YHqztO2AXORSqEEdiFgM7CdkO0es3oxZhbrWH1ct7i27Wk7wJrcLWESMv269QFoStu8Ivo6Pa37HvRh0pxQqjzMOskKFG9ouQIRh3bTEtkishIWzt35mSfc1eFlcLCTgei3jlbNlIkDW5edC9AglXPsFGZfA1M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k1iUlmnaH0Hzw/OiBIclDfKqFAEIKER6NK2XER/Swy4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vOp2x/WvPGp99JhWYDpwX834PlH7XU3+obfVOk5Sn83BAtYM7CC5unjxVYluDNHnWzP3dAgS+cO6GjaTRFOfCDguM6u/g8Co75i661Sa3+jlZHLNCV3Qa8+sl2O0QV4F/g2tQe9ux46oUWjqWM6EhpIlRpsd6XpGU6nka4PIAbeFbfIs+fgePJhD+GWCZlokptuC//6jC/VIXUDI+g0Dmqy+NRMvmC2EFwaGJ2raG/CNzOAcf/SVWpP1KYuH7GwAFiFuKpPJ4EArLSrXl/evYnPRT7p64zOjGOQ9BaXkLhBAi6L5y3VFJrOeCyzfYtHZycpsC8ECVTU9k+Dadcqxhn+6G2c5AzaehRHWW1UNsiloipb5zdSyXuGmbqf2HSaB4Xzy+J4ylgevfDdQs1k2AvY7VV3WbMrr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k2WV2zMoPGxzctzHNAodgOPJs1hSVuTLNdLdi8+R2ek", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TXrQXDTNZoo4wKSm5OdDNU1qaHz1OKssfataB/nltqmrDpZUkDhanZsj41+ia2xFd91QahxG2pWVUGUh8VvqlUmm5xrVTCLnCNS4O9aKMpecGCQtdXWmy9TzeFlTjHP/Nt0fyUtpK5oi+zFv0ePEbdyqIKEDvGJgR2ex17rz+XLAkKDcQE/tkLVv0Vy2ZnOKj2VaeVcVIroX+wvjwAV5CVBY4O3cTq3Hf6A5MzvZ8ARQT/vgTPgA2Zdjs2tomCGlYGcKV6u3nAf3QA+Y/1GiPsONaeLRmdj8AbDQQ1q73rh4kSZEROa9a69QfPRbqOJZXRixP0QmYwCEGFSTpCs5u3y2Er64yUnKBWinE03HCYlXthuII7hZmI9xEQVjl39LpJcoTBYTGExdk7B7p7zcQALyXPhmNmji", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k4Kx1N8U1hjZJ0t8UB8TEwws28YDgSONu4mdmzaOrpk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WKZ+KZt4Hc6Iqpw2PWCtzQMdGV6x3PBKC+6T/I4KS6A231q/+ag2P2mKL/4/iJPQrzhsX1fG/wHtuVn2SIoqP2udy5Q0Ie1a1x/UXtGYVQpJfA5ZiknNQ5IKRK3lSC0KZio0sgbVvaOpnc20bHbGAQKAyag/WUYbjDJy7mBHW8pCrLq+aJmp4pfLsyrpxYpOTcI+sHc0xPaVdsc93nKu2GEKuEfAXyNdBo5IinZWxJdN5Jkes5evp53lTQFNIbt8ojIMrIOPEhGbhQcZyXE2U+HJfaboEwOQodAsule+xCV1gk/4WfHmqtHDsdi57t6liHqciW0r8qKMLr8AnkKFYTnBOmd5/XES+76wJOUiK3op5C/Pj7DgF0wSYxCwLWwrpy51rJsUecu/Pu8f3Al2gI7cWCoccEf4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k4MmjvchyY+XuEA4YIP7MnlmJDJjBWSZhfVLdUfZ3m8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ep7+CXi8CVo6DwPBUlYMvsArWJYqcHLTTMZMVG2MUHFkE8hocDfUSMhNDNFLQSpe6Z3yVasDKyxyFEEqCYdi3b8Z+8bTqtn88V0fW+W0gLF9wl1F6m8p7/2dnvasK0RjeE7pC7eifL8VXvaeys7kEUOzaiHZlywfPr5MAgjFzxgj8/MEYeEEKp2766qnlrQcZHCiNS3+1ASC1WIY56QhQ/8cjQ8a1obEvnqXU8rIPUuoaejy6BOOvLpnql2aiwvyoMAGlaW9/bA9CYcU+QkY1vEYAdWNIgqy1YRbAIDrHrW0ZH+glSzxeoINH2F+fMTLk438t76j4dPFhMbeOf6tNvgmnuPh7WnsSesWTLHxGkvRqCOrk+nVPS4fvePN6Ajwg/Ce+qinw2jmDWEJgixRxw00fspxiv6O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k5TzsHTssMu9q4/kQLOKBf6dijk0Ll7KwNwjBnxhLJQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8IA4RL5KSd4QnEhKD1HRIK4bxvlQz2+PEj1d2wwDOvHDdOlBxk1ARZtU8hnLnaw5OCtjfzjHqs/fqyTBPgJLvGXB3a8gpPmiIQrkJTfEnAUjmyEA9xG9mlfQ8gSr0dwvbVjALcICGLhpKKSni3F+lGtt0QRg3TIOIMkJL6PVBnIuQzwKfTnARw4blDKZ6+L6sAAnMs3HrT1X/4JAdq/B5RYgkaggJAQ0WEaex915GHaEAOCqOwO0yzL2X30dJ+S52I8Y50XwIUeprZ/v9+1PlyeUNflAp4aBWhkK10Bo0fmIHnUrBqit6AGTVgLqCIeH7EHFdekBKdie5yNlFqIexnDWKZzn3lc4L+ZVBakHMOQTzdJ2mdEP2Ui6kc869rhDOdTY22hBdubq/Pl5Lv7YxlwIZqfcECm2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k5oG+b2sbrh1EYjlQnkvdtHvI5aYQZyNVKQtjCSk5sU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rfjjZLC3yYYHXUjjQ3+MkkITYb7ljO5HzaYraFR3txjho1HnH1UaTY+i8SV7ddEfOG06K1abzShj9eFU2auwYEIC429HL5QQBbaRtT7D94NqiREahsCPzmi8gSVPru6DtZvgygDzX1axN8CfwGOEzfmSBiMi2hCpITO03dzbKqisRsIIEDhFNa1gEXcNYBKOMHHXxrYaHyWSjzM6BrhYu6UvKqJ1+oJc5VnfgjqMRsHN18DVgUkJpjngvnetfM5jiHsiRblIpwX3tMfEyJcXva5YjT+jpQbFSOmrQQ3pNvrZyc64iJXvkSC5RGPYQVFq/stgj4E9Q3DBYWT2bR47sODgJ/DRJoBPENM3HnuVtdh241E4vRDzgWbaTRHxSKw/rJG4cAw84Brp8RV/x8ZIhFQ7BqXzrbrx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k6vW3YQMmkRpcvEOHr1EN4kvtregSGJtMT3MMqjJTYM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+eMwPKmrwATk1p+5RGKylHDsbpFJhudKF8GWTIkV6Ni4lj2yJDCqu11gIY9v//Of2UiXXH3K8UOyw/LsCKY95AAoru63y8faf07lDNEDHNnOnPQeCSirbSUOtDKUX0zcEb3wdvPUkOkgKjFF5SLaEbDWAfud0plDpbk2Mqf1LTdcKlIZeSmXR6iLfFtomsq4B8E1FER85pdPXS+j2gsKMQEykQlgXIUf/KoRGvxLiTX/mKS7xv8+71jIPdrlHIMLofYAfFdk/AP0/Ytr6Zu/IXwVDq/XiTKJHqvGLRds167MBbq1u5SoT1To51Ra9/XuwfKzlNvRXEOy9zi5hRYu9sJhnv+hYUYiVNmApUa08QrSV7YkS7xnl9q1/7Oii8Cv17t7gleJNslafg67JO9zuwTjqZ4LngbV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k7Hqlx69OnjXzeYu5HCR5hVnGVm+76cgBuoie6X44YY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MsUtkKleCIo+j8UfE37WRjkVsVLu7ZFKd1RaQDYfhekwOmeLmKUvsAFPMnTQYSXHnHVsLe+qHkinrHAl6sgpXc9W0sQ8vLKJM8rXpZ1mEfdm8cWPyn2GRAyZr17zh0NXoLKtMSobl5pkhBXQuwX4XM5+6ynFgkD+tJQnlraW/uGgEHi3g+IhfwMhbqBALu5x5NQowwrdFNTWzShnxkVXIx7YKWGjTiGneB7JNny6TUQlmyoZ0mC27xguuXYjW7batSX7emGAQshFaO4LkGL3MGcOb9Ie3EOODGd9CRU0Uygr2/ZTeD+rJG3kTrfviCcrTUkOC5zuup6nZgXz9w1Ik16H154V1Cy+j0vJtpCvkdyOgMpi8wSerGXoN0KZetgMcoF79TQU2tiXdNVn65nM+nNS2v3hJrH7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "k98fWtrb7uVX2ds9foQyVQBBNTs3Lt7sJuxUFmY9PlA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Vc0Um8re1Gab82LRg5xqo/3wcc04z+vmilm7A828lLmqiVUvNf3yKPlsgibLKMrWOYHuwez6778XPuF9l8RhrDYpgt25Noi8F6jjQTmnO5YU47ic0pWXX29FdwOVTOB7yRwFjo5KsJM13VEp/66YYg8VN9SQ8uNBGW5khhdk5mw6NYUZyi1qa/7VcN1Qjkv2Ji/m0pgOxrbFFM2Rxrz7hXSiyXb+CYVcyh1EhYaEMcBp56vQLsQcTjZnWDN3VHy01NZ0AKYSFnFOoCg3DePPogKGepYEotQTdBum2MVrlmwqJC5UylQrzwRPQ/EXx29D4dF9KZBgmQ+PV4YkWG/PfhePx0hVJiMoQ11u75r4aEhnG4CXw45jbN6iWM2fll7/7xGZl/cWPtZZTDnd/UXXSQHCCijDNVnr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kAX3UY3mIr1Bx16lbpbX3HCGizE/iROIPkKs0KhWssc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eUg2cX9g1Y6QlH6nRa3T0WCE0sephOovLT8opv7lnrpK2gWtuXRk8KPAWGY8AW/nkqINzzfjrVHWiU4AvsUD1efi1ALqPLRVAr3/en9okdvaphM9gOeqDC6BOQxCK40dKCWVjyl/5epj+tUNs0HG9VkESORH9JoQR4sFsKaKm4UG+KK27QjZ8/Zt/E4JPieP2PAdPjW4uMfiTZEjjlUn4FfGxmiTf9/DAc1lkhioTd77hpIUo6H5yvxN9UWKUggNyd8Nle70BCQWJpJO9WMWLTiAnzR3HRGHk0ey5gjhOalE0Vg6NMjnIXmxTSnI37Y56rF/3g3rzQ7j2+1COp2KowOE3NofGEKLTuDWZ+as6N2oOIBYMvpY765jQW9PpXKDlxFHPf7MEk+lA7508Fr11rqxQeyYKpyJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kAY0RMM2iFfNna2ftuDvhjDHEfuMLYHuwNJZyjyPZ/g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2/Y607rV3n6iACxYK+1sqcs42XQnDgjRTHDEcCR4wDtVUo6JLW/oQtP8cOyTalHNOFf/zy2Uomg69cXk79w7CRzfj2cJRSxowIIwOcproqftZp0gge+P0dEFofkx2XjRNMG6L+f0IluH1SXfM1dP7D+XmTzYmHfymXjfZ76k85ToZH2Gsj0hbecA1XWaBRDIQosaQgOaFjytk9X4RQb+5tAmEiegxhGr5HC+SQXYOf69ffz5mAGdEOrm7qfYeRZd0/aBZ55J2rkg5VOBlLtltEZEqygzdnEwtvxeGE63cyuStHikBdRTQfdn5R/XNcvSCDM7Gcjl1NV5uWWU1J5tKsKFn8RK6Qiz02vtFVO5HgVx3VtPoPCkVIl+dMHJaa6ZN0lvi8wlFDmB6di5Ty0/6ItUHUBoy5fV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kCJ+PRe73xKXp3bD+x450F6X6J8OqBQQ6xh2biDBzkU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VhNriiUaOqO3go7VX2LTX3LsjGxpeqy6uf1/Dumk/2O4+fyNB/6gz+SL6FWA4ATf8Aatze9oqtg8OIJZKQXITjT6c2CmEtDyAcEwjQIVVEN3WpcWYjDLqwgaYIkd8D7pGGPMcjPRlPfYfE/MM0CSdLfmGpYD747ux9p2ZpHGiUWY81AHjGkpjJzpJJjNBqRCi7B6gT9uFE++rH6yzyWyC/NeOXnDbM7fye1UbQvP7YlklKyqAKdsK5nGgJOcob3fS7fGbWWUkqiww40HUtDfWP0oCDHtB7zaSCRgNG3bPjF6KrZEtx86eaRgJ2zHVyJeC19Qg1Y387nsdVDI7XovYWTSpPxKr38STs4d/3VFAu5zgR9Of+XmvEwqGaC3XcOUIrh44eipLD1xjp7DcI5ymoGhZjUd7ubR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kDGUXR5zB6n5gxqcHYKbbgGMb/oWvd9shM2sZltCATM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F89iCVj/ercOeY3Hr5qTN2ZUrmTB6ijwPogspKX7NAvK65UlpxyVKKdC3nFeqo5fGE7YOc+0nYL+OBqMCV0aiMcniKlXRkj3VLA/MSQ6DLAecTUzJZpWaFaTLkbjmATbOdD9fpG2HKXoV4Xw/h6Www002jZTweo/Rn/o+weqBAihmV1oM50dC18sIq/zz4B2Xs4qOYSRbzbpEPR0mFjyVAuw4BbphJyeE5AoBvTPSAY/utBeiWO7JJ7GqU+p+q1hu+JagbzXIDjkAsE2Tqh0ZRdinIghfdn4aT6TXI+gw/2tmXf9pI/p8SQJU1uwODrRvp/LtUhMSK/gQft8LvDC1PnTzmL2NErj/7ACwwuivOlSdbK3DZ7Xls3jCbxi8MVbQbJbBM6uy9sYhJvSuzo1L55vPsFELNgg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kDiEzovTV86ZbInTm5MW49gG2CrW47egNfeamVA3O9Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f8QUjza3qpbahAqgm6Vt5PkITJ+Cpr8KGG/DUM7pOl4VTjd/xoXWseB76BLZntejrkZGwL2rHki858VtjS6sg8JH9s+vqKMrlR6Q31RSy5CgXJJucus/A+9TsSJItzmxAtxRQ7QWHUaw3n5YZBgldiTLWNmoKRy1aVYm1M5dgrcPc6nPT/jRQWMc+nV/AD2OkmgrO3uGW02OXDuP03T+0tO3aHnGcyNACQwMMXHwcM0+iYi80dKuUHT3LHy8mwZyJd+xruGuiyJcZIdObZZJOzihKUFzd39YJHyScripn5np9OnL9k6nftnOLfpI5AEyzoLlGT07GK9CgbTPMHLMzOnTVLy4ZW+X+fKvF6cCB+tg8qj7qLx9n2Lo1jGoCX14A9EkIFsKpvoo5q1XEKSbhgOgzD5GUj8x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kEh7C9WZvI4sICgn3xCr3Mza7L50uICIhHCgpFfu3g8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BLbq/F0javGvgxndPs+6vbYWugwOIEcO/GNxM2dGf9yrMulEq6vZfcnxpzQSiAe0v4iMtZH6hGtclG7yEKxue+h7tQ/Tc0e9m1+8W/7VqcFkFkDe1TmzFQ/ifyul7J4Ey40gYpbV6EbnFuWk1NHuZPMyuPRvw+vP33tiKSt8sSkr9wvnFzhjWoLtWBS/YqFCq2UPTZnGxUn1Fl+iecOuZ7vDWcxT+7LZ5VBsAGafuO5HbQmLAF7GgaUPsXxT/CGNqFwbjbBOkSAF2ZeJSB8jVs5wLuLkIFcP/X/adQDMhlq4Wd9O5zpxFz5G/z5X+XmiV6uOgbr8Bjfu40/s4++/MxZpTZdW7nIKOn2Jv0wByOTaf4zsfSwKwhFjU+8ZYyi5558WqQlwG43lZ5oYxI+zCTbS3KelfSb/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kG/M6wgCU+zkDATI/XJw6lufbl3gOYI6o5FsFJ18zjg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "THqexaHORdgMdXiIDM++jPznfDPC9Q+hQABvDzbThRPqp6g59LSspa8o8T33b3zLqW3tmBg0w+5Qf7CxwGHC2jSsA5d6IaPSeEg0LQTEUDvUvdxsekGoLXc0mOzLhUste0o1G1mO3uTDG0rUOZBuJBNFJKS4B3ChLhbwtNxzP0gOCQ1snNtULy2QYKsoaJgNthrB4nOvmLawmfN5vbtqieFNCZ6KX1khpa8OglAxR2sdgkLal4sStiuze8nr7DvQrkAtDec2bj0vl/knldrfJy/D5aDWNa4esP9yt89SeScUySwaE93Rz8OLJMyq2jNSGO/b/oRTX76XmdrHoXf50pxeHqswJKeef7q9t2mdIGXHrl16isMYQ3WiqrCxLo1aaOD3s05rlaBI8DR+OhqypasYz2S2Ztj+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kG046tqb9QdIysU3ZEm8R5+uXD9nAXeFVUo4fFrth6s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9frqja7r2ICA4mI4P0Ujfag8RRLN5YSxwcH+T69uUkFmY1t1frWE60/NR6TbJfpJEnNIXb5S6RjPuUD1jgm1wi1/PH/wU88zBlYGibmFUNjZHrDaGBeT94VodS+smy9jYBAA0e3GpqwgeIOGJ/k/ThD1zU/4gaxocA5RTtkDjkJx+1VOJnx5iz5h9sBBIoV5O7zvulyWFVASVGEEvkh67RGuSN9q6k3YMdu3MwO3qkLT0YTGln5fHXWiynbgqLyjBMeae5WM8kedo/XyR0yR+h3JtcFUZAkaR8uPEnwYfLO6oY2RI7VF5WyRszK1LGBLP7AydPfBKT1AJZ1KP8mo8NGDhMxEFAtWyHh+LTQRXQupNYkpiyXLGwcK2l9Icv0zsLjx6EV8IhS6O6h1A8oxJ6cUQQMTFDuC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kGE/YZ12/JSpvIQtUKzgZonM97+O0xCIdFNgZMW2DnM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PvYJ7FigxigwqgXElvjaHpg0HTuVPSViuJNCrjh7hXf7rz6rs5t1DfHcSb4HtCZeM1x93CrzLkw29GUOtUIQG2tkcWcKkcQEpbx3IkJXz13D8LsilVb7Nb7MpHBBO9Or9rJJKe6vpif91xGEIE+9w8Cw6NbPCe3/l4f8B1u+X0aqC7sxoKERBJUqcXU5QJvFG8ykvJxGm7MW0J8IFpFzXDTb5gCAGboLxhWfvftTWFShHxQaVVvYJVsybutMsDGFdRtSjTe8UTHbbtFQxwk0q2r7vDeKLxOQdRQt4OKyZFIGo4a3cP4aQNSTmi7x3ZYsEs89e5lldEfjb+wOwsK54Xbnpp0RzFHq24EVpTGO2eZb3VfG7dFg2jhQeOZcMdnJwebXUBcyhSpwWIVSypu6ixGJ4Y2tJcnW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kHFDhppSIkYI1BJeNumdYBcyKja5osiLxczfM/SI0/w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jTSHPUI0+toL0IjPKXlS/YfHpSdwUW/Wel3ZOGC9CMMe13lpXe5pSpIu6pJ0kWoykwVqQ634mJxFWmN40ljT4+srcpV9sKqWMRKmFk5Td8vqHLuw7Gl0Q8VHrgqNFs4GxLAMku0zFPUYdjwugRSKuZ/OzSr4Z7hDX+pwMv+vym50Hm912OfInum7W4T7o0S/LaW85V7VlSD/ESuD9BwLLhMTvJERPnRPtnVj5MAPjhUoAtLnga+8lErHRiuL59JOnQKwW7TKXTjI7yJUYVaTbx0H8aTt8rGYSQpv5aag+gsb8g6HjLjRgyTsVhPBIPDqn6dq+5x6c3PxhM3bvTEa+nXUh3dB9ErNMYmA0LuDYO/1+5OlQBCpYMUjKF8Vi/wKTxNHs+rEWgeBBszJJfHECGO7vUQvFNf9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kHwFf2eh/Imz3KnuphrXqHiSg4GUTRV77vlzv8Re5EE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iUcRNjIu8uWK+emESvVYY1qWS2xwIh1sjuub5qgWRoR/8e/MjWtir/0PLgWxLps5kJmaj/Bcj1UQbHmlDeu2k2bWKT49I0tbpaZAXKGmrKJHKxsIDFOIGvMXqdxA+RPT8VJPgfsayxHjPWDpkArg2EFfvktfTrSnQqldtQnsKfUTgBQHf8MIaAfM6IH+PV/00km9Nu5nv01K4gZ8kbMBX6zXEkKopLp7jx7+//fXMYITmKYfPUPWNXOX3+UcnHNQb1G7WD5QHCnAw8x3Hs1LWtakuTU3WkYQ+mlqEUNm1lhRk1fZ2yWzV2B1dwLXhitlSbM1tRNGBp/QcaX3sx+TjcodPuqyg42/Q8jNfdmT1WqVoyoPYJalbvcmEuCBQLmy2PKbdPQbSFFGUyCTEvFoJxUaf80MRX12", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kK/cxpfp8VnKlqgNlnFlTtWMUuGnScr1UXHJM+/Z/LQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "J7sCqEy8pY4FGaHKZZjtIBQwlWTMhbR19aBfHmvVqbLE/mz/KhHXvze3xIRvcEs2cv7wvQG0hcSqOfACJsaahnyqg0xVR7LhsPTJaniRqyYo8yAPoHpm7HfWnh+uJJcuCQx27xY258C9OGvfv5A5ZIHaUq5eIj0aHKQceo1PpetJGIn8+RQRaMskNd0NeS/8Z/No5umt51vqyGoNIE3mHrBrZZOBX7PV4DLhPsjpfYEIJueeHOk+uw3TryOCPI78iCD3XA2DMHbhN5dIy36p2x7la5vFqx6MjA5KvceeRRjNqJNBJY3GMmMm5xRr83BXwL2nq9EgzdjeVbC6VnEZY9DJYAoOKs8nfpIb6rJig7ORnX3mxp1bdQoFo/PuR0otwVI+gL+QRpA0Qw5Rhdt1vgZJNEbQBmTf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kM3y6EQ8sYeRlwXpDfMn4G4mlKDLW4bkyzmNrNbUWXM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uynG4TYdCNDYgG5xOJhe7R9pBBVuH9Xf5oS0Ljk0FqEkfRT1zB1dIL5NVX23XnrDDS4Fl9VwlP4Jbur6VU76kK9hmXkkIMWTYFTLVqFnnkViamv8K5MBhDCR1oQAOAawqYD9YX1s/MVNcHVIgIsTIzf6Tmt8M5fK5Xj+fygfK9hNuMOvcI1zChjejFzmtLGJVvlmX5Id2bYHfkUQ7dnCrmdrdbswyToMbqFfXfqqtXnp1lExr36lNmYKtmRtHxRWu4p2KtIHtoCErOVagltROTVpJfi2NNZpP7kMrFJh/rqwVGOzBo9kXPHZTMlC6Wq1nalSqwJU69FpwHwq7ILhHsROcaQYdqYTbwBq3h/l8YpinsnZ6FnJIb8oqc+QLHUyzszA0wyNHF9XGmb/XMYpM2VxJsHq5ORK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kMLwVxESfVCHwRf62VVIvkdO/EQ9bjAjoJdvZDC0sus", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PnP+etyaKIYlB0liKeXrCFs3JsaMZtBRx3vbZNzUCn9QovaCu57ntanxnTat0s0aVShnrxVfEGfbNKmdkAUF/Pf+XzmO4XWVwR6pQBBELh0ZybiDZTVW74BbrZ1XDoA1FoIr9jz4g4c6nQMMSBK+0T4zta0ctiURKwKxJ/Z8y0zJtvWU0Mcxiyw1RYJWie4S6s56ge6vYMX7FVh4gAHf6yRJltZ2C+3uSR2nbFObZeBwluN54wN6KzeWt/fmgNgLkO882TRVSFdn+MOKROMRSsDx/9DTX0wFmU11FM5DyQN5ZBPQmikYJHoOvBx3PCT9akMT82h54t/Nb8b7pBH3bnsLeF37gxxGF79TeLgHDbQnWMWx6sux9xpfvezlVyrHd7JuHT+SFbVMBIGlVXDMjIX7EqVhQgfI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kN1YkT3Z837/bxo/5gp2gYmCEaDRNN2qr2pHluqY5RA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3mVGiYOWOqkooN1aNjiRcz06o+RZKcElAaivjkWuR68kEIfSLTizVhiBi6FBaTcQJ2ve6PnrwnXf7ZYT0SzuyJi6T7j3xKQo8u+ATV3Wb9wp9+JaNd8ld0/15Kw4TH3/cubqeDy79ZENjw8XLjmRl5Vj0OHolOuu3xLHDz/Rt5W4+OFl+0idNxfLUn91SAowIl759Oed3v1PfNPLPOY6ho2QNQYrYIS5IzGdvXHQACIzwS3NS8Yx5mhpVhgwgfHgUVFvz+kjzTMbbUmyPBzqUcyLxp3MXNolVIgM3dlTXxy7k/oNT33XOtMyIPp7aM4RArBvqaOFDt4vC0IRafWFvn+fyasmhvtDPp/uURux8MucDTD0nMTpvN4WIANjQTsviv2A5nOSNgM8Ytgi1lZd2j/DR3QTzCKd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kOB954oP68TTofRK0xwynDtSS+vIRpJ7/lV4DOlxd74", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/m2etafyspg5ooGeNwQNNIgJA+tkyBao20AMVz5rk0SsFY95aoKvhzGlFE2+0odt3EVUORpO84qQPLvyk5cusinJ3CnJbnihIEg22lNjAntE4hB/Z7mxpIkU8aLFjsVP+bSx6Ip642XaD9gIOkdwdqlmDz8cgh5oAwFfLGwXt83Neu3Yecmi5+Cdf2NIL5fak/khAMqpxNNQVWdrSQ43Wgy7nsA7g3Zymi56f8w/7LyvYgy+TagL3iaYbZYtiBludObNXr9XRXJmKxnAqPQ2iGeaKKTOmwXdw5q+wogw3kltx0JZJMUu3ik6Z7E8vJ88Qnxgdw2b+8c+HsuSt3mDK3zRU4jcuWJexPFbPC1m7ygjEF7hsMTd3uUoGp52rHoyibLkyq1ZxKznZAspXDC9WKeKXGCOF5Jb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kONZqM5Ave83B188mZIg3i9akr3hi7fQPJLzKMp82ho", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "g+nlICLVivw+wnX3VwCLAzwfIaoOAgGQywxd4hiJ3ZSnsURznQZSadFYAd9eI9r/IYuv7xEAJC7eBbzvxFA6sU5O9Y8eHJpFT15LcRCr9zO8vUQuryXgeBj5q8zJF0cAUiVkOQD/QbacqFS1e1dt2D6i2cQx5JLb3qkROihtHry4dGKpSckCEonTQU74IZVI7+Bwu4EjIwJZ3+YPrU9f9OT96h/8iN6U6hTkFNZpiRFK7VfmmlQHxoFNENaJrjUfuJizsi+sMqe3glAVm6UPUMCNQpBo7vr8n8Q/ERpc4Njss3B8RFOe/41orY9dbuI6xW/pVjx9wXiOk0JWbsRIzyz4JPJD58lUl1gRZLgjTZeA7BMOR/4Es8mim3tEnRId6c1TKqF2CPZdrFnNR/cjH0N6DjcNWwXO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kT37nZ1zyalaR8hmQ6F0Jmy2LdQTCZHAUpvJSJ5T6fI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GozwfufJKflkrynEYCzT+LXgwGKRhhM2wN5NZch+CKVF4WR8vIFm3ynYyzJml/sKojF+aETvwdpEOZgx7IlTjghdSl00dQ4OiaUfQONUwJgKXCsmOpRtrfJaYhU06FC6VPlHHJuomforWUgjMBmuRBbg3uZPJBPuAL3ZnVE9BpLhh1YUibbKYFydIJG5V+FSN0FYU5P1y2WrOAf2njic2QOyFjDEkrvPj/5y3e/5oeYCZrxBwpQvaRnraD+2/S84lQ4AeEXy0E9UA5TNjqgCSMbtd5s0R+O8pDa/maqHqfBTAjO7y0qMN0/IFZClp3/rCJLUmtVViizq/uChEtIpQShZm2lAyvzlRVq+o87oiwOhrv8XQnFKN/p3fRnuBkYVrAV5XmqKqIXK0fZavNrJ09psDoyv0+yN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kT3QOfO4CqyzyYFiYhbQkp3uzgbaVMOvJpP3+d2wZK4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3HFg+vUoi2if4+5wo2EODLH8XqF3TqZTmgxC5Dns0ucnMSQBNtE0mnZCS9yvX0I5cxYYNW2v010/zi9WEuqBG/q76gTeO/QUkikTKBYW8kaAxHzaw6dMEIgsBaq4U4DexU4u8U0Ksd8mZUDF605zBC7jTNEaeHjjWtlhvNBRsEZF5C2wwIrFVK6KiUMjyAYX4e1rdzAaiL5etkrwiq/IbEyAkssl5yKiT1JTNnuUxiPUJ9TKK5yAW/mM/KBONIKkv9UMeSDietjOwlwuPcdLnM/fhK0F12BssdpzA5caZNzZuIo63IcpbEzey0zqGFbAl5ymLzbfD/MAhI0nbF5RA0xa/4rS43xQ119RScezfpbhJVYrS45GKrwloFQaY7Pdm7hiwCk5PIiMVs61Yt0xBhNYlZMssoOQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kTa70ReLr2ha0kVkhAHq0hahQRoTF2J7Krd27j2jcw4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "npuC46YIeKPyq5HeKhGCjr8A8QQ8ZugD+p3b7xIkZ/o+WwNIxXLhSBbLsqoldCxUelhnAoZ0VMS1peXvOIfeSKyNdWDF701gAvGfSBnUnNfSFX9XMd56WJEr5GUhJGEJ+zTZc5pjmQoqvfzH9PU6Vt2tuB/bnPjh7CDU2dYGFdyILlrFw38+47yvhrptIzAnyK/zkNYGPMEDrSIGu+rmgwW7yKQHuMKoidpbdK3cdWZ77ESbmpVg5sC+TyG1B1gs+DaU3sWv/H+LJ0iT1a18+CfMuu1yOCUEoZxC2lGJTV/mCOShEuVHnyfFQVuGsypeqd7UdAuvYksA1V7ol5K/pRC3wIg2CrMoAqKevqP0AEkbAR5vx8fNa4yLBbQmi61Kzgxdmq4NShEc1/sFqqbbHVrXlGt1HyOg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kUb6RsYZG4i68BJ4tfEEhw1QPLOeL6fQHNhdsI3hnnI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tavfXwX2XRUeL0k31s1KzlpVPHuUf7SvVAHzfNupSx2XKghSsmpyYjzTILiD5hH/iTONy+45W8Vjt9QIX9bUp7Do6iD9aCj8s+J0zggLAzJIJBJX8InF1SNpjOI8RUV9sGDPQUkLlylT7N7NFExW4Raf/Z8aUxYS1B79oYHdYRuproso0UD/4v149mQ1hlS26S4RpXfg9d3tbnfZwnQJCDB9uy74/a1ucZIqhQGVOfFT4DHR1hTP3E3zrnAgpf+REFcZZ+hQEpCr5D2A3rHFjN5jz71nA2FCIvhnBdooA/LA8nKFZ7D15XuAsPpcsQc2VfJ283/qst3Ma62XFBB7U9dA31gVUfIfCLiel1tYdXGfOA7MS5SwQFqlP2gQBv4fm2gfoP2P2qAt9yHQ+jW8G5Lnrezx1gqX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kV4p9wr0TM8gLwRfokTgYFF5n++9v34f8ilqvrAZG00", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w7ifdM1MbAcwohv2tKxHNvYJot9yVoO0iFT5iObqGFdCSbQs3sHUy+SUQRwgjD0eAmShYby1NCpLZTqX/Rsq+VfNzVpdOxsvX58XKS00GyZLhgrcTWxGWxVrFAQwwzpO99unrL7cXqtfKMWnDwJEov4p4azAu9kJ6Qlbb3dLK7/usQ3KRmINzlXmcDNMFzoSW9eNEOSVLLUNm4amgp3FA1R5oHvpeleXH6wcVoYVg5VB/tulsZCNKCqC3fnbiMGSvQsKZV0oxVXMOD21WuzhzSvTLy2Uu45MPJ/vBX0Tq49EzQEXdEAFh6gibH4Evl7FfaA2r1pI/Anh66ohO3qbMcyOJLumQIbBtrIWbyzbFuwQqUGDwIEUhdrqq81bXMTFpUTBnFIJ+on5qHUIystsloVEQTd3bEMF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kW5J2GEABZ6nWITxNxayf6ywR59wgOlSSMznqwvqTHQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gv3mUxi5p2weWtFYLYq8PRBp0HzHGYBGWVjjdXJRbFwjdTmU1/12P77QV4nZ8dUrEy6M6EM7E3FfZXsBNaWF7Akr2If1IJPHlq+zpg3nWdDbrvFFDMIGfEzaOG3mnG7D8tVpNbMfwhhRgvyORe1GVijCjlfKD61pF/HVmvTsJJeFqATFubziW8qz8BEnxRhx/UehtT6dJ4UqI5OZrmAN7cy/RPtScW8G/NBqhvbWsnk4S5QbxR/TITbdo5GF39mCCKdy7pl9iO4L9yk5g4tpqKO7IvrsIp/N3eoY7fnoVOweg8N7ZAf6QIftVSIVkKb3SYSUz8WirYy0Gf5GUoRPx3+4wfAiNxJ0oRLCAcJivdJMb//Y5xLVwizq1kRVSQrO53fVJ+C9qTYq4QYYVl6uNKP9HPCCcwMZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kXT/efHSNhsN7WXTQVYajkFvJmoz0hPPcGFpEPs4UII", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jbTEnIY1PPFHntSpKHTZneYX84TTz0YopxzKWzPRHw6+4xGG5H0WU8pVScrRLPHtif8W/7PTSJGiiG1Xq6Gh9W91ud2hw0HqhP25SIU9kEpqu4fiDwfcZucyfk/fc4U9amjNouHgkFfF+4vDYbc1FRBtgGv95ahAqi6X74XHh66MY30iIKJ1oTlHa+bq+deiVExQFsncMzh5elJd4o2BmJvDOyDqkU81alYhaTieQSfxG3sxnp9+788g3S5Q47Y3LIJWRzcYRU2mIxQhZDP4FMxZlm2k8+ZL3x7PSmV9hjPOrwEqaDZSZ8YywzyfGH7DRDDKHdxQV1gFV9I6jSskBvpkRJh7pE22/tTUxj8RIiwFzwzAb5wfpMXzqwse8BVOZfzChdh8F7j0Z/8vJe1njmxPCxH+If9X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kY0ZghDIs3Br6NFKuTPSC7ecWsKH0z1flj8DxuM4ois", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8BshbIf385hxqhJ3779oZk0+OERwONR3afeGd8z9IDHs1dAJoKmStuCThPRAqgeCFAnY1Ccxqhxi7g3R2uUorwofYR8awiKaS6ZHCFbz6JgdNYmlVFpYdROcMl2lNBbFkVDxIEcrjto1tmuWED6EVwFVi242X5bcBh7Y0YaxWKoV2Id53Yvz2S+47kNe5MFuIMaou3fyadFVuKHHQN01+WnE1R6lZdzUHAGaurBEFGZ62tcEjOTiAf9hXmVgUQHxBr0DtNC42fwTC8UwDMN+l0FguX2nn5mI2bYUNy7I3Lu2bZxqg0U54nmhyIcOdjLvElkSqarDpKvcLsctBtAtp4oaq8mOw3kjsp2wfLzJcWQ6inllLGsrWypRrbjNtWB3AUgNkCv+wiAxVKXfd8uNKrTmzo35aP2F", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kYIuOkmIPG8nOdcxn2omEjv4XAt7edafp5F5cudLd88", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZqAWGDrrJQGax/uerPw/RLDZ+oCSVgCqLM3eQWWifXF0VoWlnS/cldF3QMrZJythAy9HIEPs0Int+sijis/w82KDLimgBbpgDhCOeQq3iymGFxH8iB8C3/qjTOuSveuQ0c6vzsD/S81UfnozclZ7QdqRrHgr48gRziTgo+I25LURfMV/NZZjAcTdFHNoPaY0t9LsZfjH4pxRxr0dcn/QA6nyJ2ujCUriEZ7BeCOdbo7X0JoQetKNpNZ+OiCm929q71hFjS463akhD0oCvLIkxaBKlz3xO4FAWifBKQj8jhISmYi+0ESLfs2N27iLzURDjXauk/8Zw751mNN8h9H28ilHGnlWKzsmhvGwep9nKE7iNQl+lc/IWOAIwggVyzE1tD4V1WujNuYIaP6H5VMFvNgjr1jOk8q1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kYtYk0FA6dPofMJiTzRF+QjYkswx/uPJWpCNIpm+si8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0oWpyFUgwe5G9MU0ATcyZDJosHy+fBG3KYNa+DLd4glO8d6t8NRgjdAyPR1rJ4mII36QoiAiTYNU/tfRrM5LvIBhT6mwhEg2qCFMPcuz8CamWRdcqiOy21C+A/SXhfXNu6wNdHVOVBVr4LYDS+0Ykabe/pQcC6/PAsMmQrET9goThTOldto2FksNhno73PGivLpwoAJyGv02TX9Td4BxGfIbGebAv7UkPuog6IM/kGwCQLlPkzVg92MYPmsEKQIVCZNGfcS3x2tJJDXmpn6VD5z71hKSn5mrhV/4qR9ZhYCcv8QPiOqZs77PWOb/ESa1elj64Dz/QiWNt6dXtxSYFBv5FknyUS/+pp0boerTUcQHkc0qcjF4d4LCoWgJaCELLzVjrrUKsSE7i1G2LlMJCSN20b14C/0M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kZufGyDWJO/qCMpQm0Hl/9bD7LZmWvCfh9pkGtsZduY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q92D5Oine6YnC6XlZ+uCM9fKsVE6sEO8z6c3i7KcZAFeQh7VTLW7Zr9hWh5RoqMy9t5i5e0j+na51oEVgj7Cg7SUH3ROjqzUbha1uDQA0s63oDstTnY3bRop/i1mjKbsKF4vARziMWktXjQpMK6rTQvRIIGIYU2it3OqYLVar9X5tDR7PqaIkwg5A1Ki+Ox6l+0Yh3yDl7aY3ogN9oDRx70HfqeZNjSj0Njbc7cV2ZgpUQKHvnM6lRJ+iDQ9RYFAeeXH2lF51nIETF6c4ezxhTWzUkmdmc3zux23iBc5B14yFMdmAxdfNm4Lkjw1cvCe/AZpR/eI7XCCZ0QXHQboicLtXi/bQDrgjObzWcmkJV0LMJkNcShxYFBrP/ykNLuvoQk4GGXb1v8xvn9CpBcpvtXuaF7vi5sf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ka6vaGe1VtAVNefiR7Q5nWF9AJqhiBl0Ia3IYfV+JS8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5KQv8BJQI4iwNDXtyFvY4Xpqe5zvr2tQLFXz8bdTirvH0RTA2Ux7FfPQF95v5U9J1SQN3Iu6Ls9iFqqsbKIwczbSArmwSitNVs80Mdx70iDsEIslsNGYjCzmkbR/XhJmdS9wWW80EYXnyxKhqMeynCMuDn4lHcgX2IDlSLXJu7iRZVMzXSxgkTJicZq8D14HvVXfHgjzG/ByImPe4gS+XCFB94H54rVQumjzTTfOeUwoQdPvpRdyq1rBmGdeNm13b73I1JG9+7TDc3FNphinv+eR3Jz8RJpHcB1KDk6GfKlfqtG+Yx9Iyw3h1pctHcqrkt491uA2M6vkfmFamgfq8ojPVSgXY4oBlA93W/Cqogqtli7tk82oor8XSavJcCd8dQC+K3jpOFUNrQVz2uCy928BJ3M6K6U6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kaTU8SufJp8Px1a+6Ms8IvYA4vRPm2xS9EF+8ZNDOcg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j3xEtmNsFzSN7nhvmCIP5eQdRuhecasUH89TWa/2NjJvy0aKsI2+r8VoOrYBRYrm+vKzBrc1zI17L0packhLJIeVNDl7PmKPfxPXHc2sYJdgM8m7Jg6fF52MlX1OOShft2oD3AT60W6woYdl52lyLxStHJzNkgYRYxzdzh7OwxtrT/2OTKSzBYZtfhaaeMMgQQ8mGHzLCGOpgxjfjW/WIoV5BDR4OpYy7sw5tB4EnHdhTcilbAPlM5uXhMzMNKdmHphtYj2HfUxPoG6p1bNAJJdpeznljNh4lNauhZv0/Exs2/RTBhHzUHAEcdaqzWtGA9Gk1SQ8zR1xFDnJNkIqnyYN1gmlDkzlq1ako5vtWfGFj93m37HkMfeANoT3xfjFDywLm3JNtsfemAc2qvm9fvnj8noLjcsQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kc14XyoOYBC8r4I0dXJ6B78LBWH2jgkpBZYsOzebxhE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hSKGZDwHkWC52agI4aCsThxwGzTSZPbgCMyLHrIuw+zvsd8TNhQSTUcGNxgsW53hS+LiFqFskBUHq5KtTjWx5qIVL35p2ITOvoJJ95GQDRLTJ15N/N61UTLJMOVbIPy6Dh4e0FRt8faBpAFgGFYhr/7aCn72vGFInyT0Ix7q5gIrMwt9iK6h4AzBxV8uc5gNqeaBCZ6hsG4XH/CFdIbM5ZQphmHMOtm+x1hAul+BjR2aLUnUxmUXvaYkbiaW4Hj6sRGKn32CsH2DEuzIWVp3dAzvC6Q9sX/4AjDlN1/g0JW3wIVxBOZbtv8JGJANrhVBYz6DX2ICHOa/JZwlcOKWc2i1EyYAoxfuaY15XAVdL6LPJL63TWYFW/IGciZNdQzD7auz+sr3ZCJ44szp32qLtUazA524btt/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kc5qNCK4WKq4l8IMPQzUbXA9NnzRxMwYh87u/8tTiz4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lWG98/2OpN3HI9p1CTa8/kkezsADxXMBDlRMnxkT466NjRfG4h4fVhOaApcEwKvyc7hP/uC4/VI4hJuWOhPUMQEwqc6mHP4r8OCTxYra5Im974qCdeVr+RAqz8yppS3je6Qypgh52jMvcdiSqNEJjfUMFe1p9qMiCHNSDpAWbhh0brZr0iFuX63whM+A2DnROOLuW3vmKAS9E0Eaol6bAt65AEKtcYY2hPmxn1yd3AiMYCiKIm/+mf0Gqq46W5+wt1Kw/FFRoqBFlhXksM7YhDTd/m1exV8mEVZQIS1NGG+wElq+EwWfPFM+jpVtmGs9qScpAvecl/ef3RtGPeTOcj5iYU4y9feAYjggbmlgKKsG7OEDgtUAM+Dv50WuqppTu/4zuDeEyUyx0MRkr5VFdG+VyuhLvC+j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kcJ5vanY9w8JUeO04qcKQHzV99sfVVL5uU3L7nCdiP0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A/MiVHIfmkPsK6Ump7PotK9du542OCOQZpTYUVjm2Ucu7g1zC8IcoLb+L8439PJkBr3Oh0D7L7A/YFCCdNvJptImD5XMF8NJTIoKGY4Co+GWisF0ZQH0qTwNeMagMqck4VqwL8WFOX0UdbLu1oPsUebpAuiH6akehp1AeRrbKEDW529PHR8MHidHc/vFC+VX7BJOQX2L/galmao2vIynq7uS0KM5xK5ZUlIwfYy4RwtXqxmfOQOJDcBRGAdGJQPBU966+7IMIQcW/v4DAS24DetThjIHQ/t0Iv/ZZje1DMOwPWZilgYnbrILYIc3PIkqLbOhB3zrEQPAUm6zv32YvjPDVSlnqne9GRFc+hHUnHVoW9qu2hZGwGwIaIQHxJbYC7Hjd+2OEGVsZn8NSmX+tOq1r1G5amuy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kcLCeUkS0ZjC6ad3KCOiR+WdmD9F2nbYfJhjn8G5VI8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8LvtVoWWxW+wwncBd8vz0sXjv6LxEPQyAfHQbYba2mhohz6Ufvxcc1XPX1WXETinMLIuXZ2QS+vsHrujmvgq0W5nd/ojJn3ZToRHo8vjAC9B61ORKRIdJLYWEtFt3y2xKsYAxL9h6TjDcKbvGGGu1g69XPsDtGVHdiW94y3gNIaiOWpuhSP45cJNlGlWdOrGFu9VU0LAW5+ZZlTdGcwLjO2dFzGmKWDOnynu6UeRAveokcy13uRPYGHm9J6AuP/gnhdaWQNSkpvC+QFDS8PPEPHBs+Ot8AjEcIMT7veQUvoE1C9c7WB2UPxjz7N5NM8KrEnriJWstuVlNlBfvE1rPNxva/3N2Z2qr1dK3GOxW7kOCkXzbnUTeDXLT9FWXnKgIF0tjlw2Cr09UM/Fi0rHiT0DhECoJDxu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kd+GE6wgSWvVbo+dBCqBJx8qVZmcu+vOlD9KZDkx84M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ztb+Qg7GCjR1iYiShdRYoQSC7eFXcQoAX7RGNGzwVRa9lmuQAkF++Xi5X55hidEohtCwfv/RWGjYGcaKDOD77rCRBkWjojrvKpG1ZSJ+8FhJ/S3WZHzdYqT1vNmsfPAHcEeBbBI/kRBH8yFo6TyeFUgpjVioAzAYpjsVe7eMZqGfm1KURJUwuXTKd6tz4tW4pbt1S/8TZbrK1hopa0ERsytDA9JXEUUNNMJykq2CaI4hQgaZ9u7Tver27FKyyu6O38KqzXKdxgRT6xVAU1qEr5Ud3oN2WrFwQu71ZQUPMTuHPFweCN/+4LpXxz+eBcSF8cVIuOTdWHWDWYVfJhw6GTk23w+a5tTooxhAKt55T4lLxqBqSQNhgPt2JloWx+0C8gz4g5F70vcRPR9AQJMZEvMnk5ATmPt/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kd4N7aYbKA+wLW5wD/u8Sr69BHbIfwLP4Vv594wdORc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+UKi1yR9odCHDQ6RjcPC6xLavp4r/8HhlfWRRgB7h1F7n43d1WzdEpcYhT/ftpeXvZFzgCWoexqalsTkoehKQXbPt4Y65SMdHXHRSB8rdkIMr7kwZwQ3QLgXzscmgIISAg2R7KT3inBnePSGSjR4OX6kgNcHaklDQnNRoN0etvF1ZCWhD1+1t6+2tVdA5JaqmmmkFKAX98sG7j/l6TJZWTxQaR0ANvzF63U1iP9rleDp/VyCGnjwaodd5fB2NG2Hn5Mva+VOMw1Jki+Mwr46ZA6DR/dEmO/TAUAUl6q8VaFuPg0oIz39cLgRGmCwjF8qAllGA55nX9/WcsYKPDEFnBvSAGuK/f+4lORxU/i+jLcL4q1fro82ZtLZmetGw4061Y9sfJednelSU01N7VKa3YIiVIOiUQbd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kdi8fS0zvWWJpDwa6V/erytDFjXA6J/FXjfaDBkpGiQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hSBG5fiEQlG6eJhHhyjh9ZHFt9fL281bKnpbnXjULvCpP2828pyJphsz4hjZ5Wndohh9g1ZuMkMiTL8C83lSyjtD7GnvB+sP2uwUIVnegC5fXHSGGxcIBvJWPb63tIlmiLkqeI/hkQRwWCSV/UEW6qtbxk1wKMnancj4lyMCg9+E0eJkMET8foOUFijTNy289lGgKchEwnGmn5g5UPsH5SAghqEJ9CQoHk3JhGZNrOuLmwB5qRuxsotEttKYGmq1RqEfJ77waFms8bDkg8nPCIsCxOJSBMwXwImpSCI5yGn7W308tU0WVhxrSE0xl1O2NtL56I0mHDGkisouU2VguDo3mdpn4t3YJNfWpvQQHKLvWGOXpfOoQGN20FLcRjiA49vcYsb6oHt6VbIRtMxX+belAqIz65en", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "keJGlwBjWBw8HEJ7UZHJsVabSFeMPdjwWzhJh+wX/jM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aKnCv7Y61tHLC4IH1wc3pbT61Kaxz7omUwRpNSMoU96a63h/A7Q/UaXCdsFQrg7kqN1/TjF24EzsFNiWvxyI1eJ2kbqGfi0oHDhJh+FgvSduEvWHbWU9pya1a33cmKOeITq0DdWHpRoi33cUHD9OILRRdhrRtnAKTmTHNvd8XuEqShiB24u5kyewr/J+FoQ1EXsDtMd1hJmT+CR3ZOSPRzcSibFW8IdyogOja9lOobRK/VEP+/IGbretPMEA/4vzxPv8X0nM3yJjc7KdLbvIq6ZFcewZiFta64dDot/uNqPVlUYwrO47oo2Td1ey6SA46FInGQsB7pgCFf9o5+fjy7A4IYoMWHuvz2yQfm+CWENeVj1OD+P1WyzwBS4ESdUU+nnZs22R0EfAjq5Hk/jNgmMLyzlCSeq0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "keVt7jgWQTVn9wu4HMiVCAe7YoqDtheFqjus/xrQKBY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wFEZPfgkqJjK1w9Dp4qZzCrDB6SsDtiJ8YC7sfAdVbC4oFk/A69mWQ23pKU1fgF3xuY/dBbmE0CaRUNWg/12tCUACRE79cysUt6LOrS0R7qL+WISETsAbCA9mg88VQyU4r7WaVOXhV89h1Fl1XPQMXXmnJXpq2WayC268cgRuzAktQuhi1PaP7bH7jxwpDsGKTghCn6bKWedBlvmS/21zd6NMinVBcEgLA2SHOr6fBP7LrGQjcZkowyY+vf8upbJkzxJtNXvTAoiS0KBvVqEZT695HByh9pwqZ94ZiYiHVuTPx/23aLA0xFprq6v+/UlsDkocT5lxsTAjeBsA7w94yj8deGUYtIARJprD8bxXLo3omtFMMGAlVG64nGV7Hf1JyGA+Kmi6xVhi2UWZtfvmRblrLKA+6q9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kexKPL0pYKmgdUutdDBss4jxzESv07snO97UIgxfvlY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0SI5n6HMZUz2j2wQUPrGK5z3NEdXmKSLI7ycr143Jsb1eH1V+iosqZQtR5urFryKD5HC/edkIgFoU4GK9EEx5AJBOgKGBVDMDTYkt6lnUc/IfxUXf2WQ3ZUlIidfxh/ZdMkbmbzfvDY3fBEMUj0kzYiqhLodbRHGZuPnM9CKRUzsTpchpELR5mKLfbx9s5qvhlNguIG/dAQbdbotyqHFqnXjniNZvKjwvuJNMKWZGkdMYCuFwxB2ipFbK5OJTdbR6Tby10Ef5FLwvSVJTWk+3OFyn/nn3rJTcvPPiNd+fc0hqaD5gLeYStoX+vvFe1CbbM5T0E6gGCTbyMtzrOt++0OcOM7CxcULDyejM+gQrXddQ6BFkA0gsr+oDY9K2myBTykXZE9Lue1pEZHxAd/YGfE2azeCryQA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kfBQkbyDz5bYHJfWbJRiXFCmhS+ws8ePcwvJk+9EivM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OIda7fVmkHAf/rbT9csbriGCI4oUImJr1oC/aICoMZZn+qqbkjDVuC+JYcxwMwoi0L5fCG/SmGcmw48ZOu6QDa6G/Wo8zb4Q6p8oyamz8RCDqYbQSOuOHWlauJe3aemdXqpO9guD5spPuuh37tZylmdQLVutIuaTJOc2W0VIBE6cQ6YcTJDES43hlAKEWBXllyCOSo5De20soBzD9eud4dx9H1Kgtc2KdpFU1TaWHADULYCR2lZCfQULsXFDX5xYbNcm2yoorzAFg8SMCYsn//pqpMK5BR7ueJ4JOLoboSehFm/7zXLa0NJTkeKnOwoYU9gkcbZ5Jm7FM+Hj9FW/yEDbnZsUfOTHPZzy/6fQoReAMa1poNjWGPXaCttEhSMj+C+QFPB7K+YxJO52LNPUUJLRCV2Ea+if", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kfBzDWceZ6ZoBJWZB26+7Uj7bnht1bzz2KYGgAQPz6o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yPIINCKT4naHiDwVRC3UtxyZUEKHlcX97FWHySiiW5BXYPeQXpsxVx5712sVTc5bEyO5ypl31w6F8xTI2Ccts3FfiW4yEMPZUOEF9e7DVBNi/w69x9a6Kj1gti2CtY8sRtIonVjNGIyNGTpt/yTL3lT1Lr0V8ngBPBmO6ZiFEXGXLSDkN35EcSh2sZ2OvF7fHaJIBzROiIHrQl6WMKmOgBZkbpdhgCSH6SxEhV0MSwxouSwv9s4eUXLqkTfWdjii/W64n0g1qWzfk6h5OXreWTQXvdU+hsbRE5TFwvtqhP1VOycQii2X+XwM+4X/08zrcR86PltQNkRssxEaqpbE6lLazT2S6ihgMsGTjswVEmaVM7HQOvCvAsMEsvpFTuBDjw/cwlONBfVcBtwd+Qblq3HJkuId+0yX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "khf5ZThRK15cCLCpuHue4vhUo23daIGtqQCGkl2rUYM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jPKaMV6XKXXVDw9DMIVyrwCQ7ZQ5MceAYBrngLmLCd0RbNlxm1Y73dK9GtRHO8PSo1qkj/M7bskZJibXwSrIGSzqGLNn4f+r9g9/NQZGoKrhJSQSTSxvlCb4lDJ7IrhoHzJRyKZjWsBQYJpXmufhjRir50Bui8TQ4VNoWxYx540+cC/P4PnY7n8i9miKDqynnAVtIK5bYxUYKYMSYzi514uPzj8aaU+gkUpj0+x78rD2GZicmnE+l4JfJ2cYl0ni71WGDsZGYNYSkb3OSpSAuFxELcfdKA1iMAXg+d5ynSaw72vWwLecuRZq248qc/nA1U5QiMus35xJ6AakjydMXPnLvBmq04uk7g4ymXvkWbHWdDzfo2KT+aanZqqOz3xzfPkzYcJA+x7gIKCzwh5xe5r6N1FupcDU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kiru8dKwDvf6oKNGc0ijpGpUIctsNTSpSV7gW4VAhGc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "adc636bDBuWnQn522kVXc63x4h0tfiFe2tNUFnGgI8uypbh+3wJUIOuCA5HSQUOUciSrU/YsAvgvYgRlutBIcmAUXwb9BWwabAJQZd9BWiMpsXDoheDpu8Og2HVYWWJ8rrpvZyHB7R0r+ft+TmIx2+pgGO74Gc6T4PGekkC+xncRq4gXkqUCcnGP4rNeBq6M7/ku1yma7vGEqzaOktEMtvzZ2wxig3LpgTEb34wIJVW3e1B4UFY6INXlS31IWgGVRwvzCk2vCqOUSTyU+JK2pRqA30KklzjP2tPZi2XOLZU7nCwfXOyi/u8JL9oDC2m/nOCHe7XTus9c1le9l6quOf9rQgt9vPykh5fnk8HfU8JUmu78RmiJnvpACQdPVGtVp/4CPMHUs/PfWO1gOGHJYNg69EPYz9lp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kjFBzCet5K+tqPHz0M0jdcwwQOUzPWjiXGM0erZ++XQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bgMlsiUfqJWE6p8GSImSV+PEd6cT2oUdz1TXl1bX/6VPOW/3YlLX/13WFBLF9/KYZOSexqcpChH3aEcAnMLJ+rfcGk982nssLc+NRRv1x1rqx4gPfnfxl71KS771VZ7wLV3sUMWcrRCO54HjE4QLjMcfnTWbNQPihL8ewuGdILI4JgknQW2lDA2Bl8drTyUe8fyYOZdiKSgY5wjEz3EJ/W9dtliGh1AYoeIpLCE8eaZeMxAkehwgmRwYdBBxXUWKzy403R7c9/+jKNmy5s4j1jGzESW7rqvFjjGD+6go5vojRuljbOQfOViIsqH1tEn9qwdg+gTnkyi74hX8x+J57XFYHuSE0gJlcSuyC3ZufGaSom5hKz/wqLq7BRIDV8fmiJvuBE3nnfB1ZNq1U61IJv+RRoiuJBzJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kjwUfvNXy23Bea+K1EmxodcyTz68sS6SMG6XeGGRPi4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "42A0Zu8wkOOMaO7ZHj1YiU3FyO8nE9vF+jq59Izj4ZBd8BLsXChM3wKHX4fjaGfy71NUy31QlDRe2YBM1LYdnXGEYUbOf+1kUmWOyzfpXZ1axvlq2CqHHqsPzV15a2k8Rb6PZ4Wr6X8g1zXDKLzbLyR/7DGeEs4RxysADk4xgvuLktS3dunwOBI+xByzhgzXYqohSEmAm06DWDvLE/jQrFcCzUhTYrzuy70xBeCOm9bZJVeyxmp4Cn1ViGHCR9lAInDyXJ8/947keLLozIgFSUmO8RJq0JzG17tcVesQlSKRwjZ2gf75GTszRyns+Q3+MYw06NTzGTpQ3jAOaGcGQyhSKziFtDsIeNoAuUC8S6S5eUueK13re/z9nrAYFa8+v0UO8fF9AH+D9tDwZwkHArRVmH9FyQXT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "klQsuN1jbltcAMTcsR76gAgsITMO95L+cjFLT0mGTns", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y9iPmzRaFDQoeKi9rGERMjXdXMzZQOkw5hKUprUxDBaxr9bfphemXu/VEYGyV6sk0mdSMAoc8f/7ZlYItPLOcULXcZj3UeSGmc33BMULUQm3l1E5kzVh74cnvd4eZNDmlTcBsykSfHnNFykv9o0pE8whk83TfD6lAkE3AfFVfRLQ8EEjwsOlghb+wVGA+iWw8GGDEDtEc2tyYI6It0IYdTlBYuHgyl2hIV0AdEPoyPOj3ae85/NAabiqQyxEHNFBrdVqMfyEMHfN6xDzYteuhfiE+o97h7XVRar5MS3roqGHgikDieKH25v325fMAFbUIRggC8ZP78Pm1WPsrEhI479pOibLOuy6afLJCxkX6xE47Snz79UtfaUYYkmXLomBLuXJZhUbWYYJikgo7S/E4kgst7nOI939", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "klSeR2sFrRCA6HH4gz/XCnWJI8PHPSY9h31FeJcbf4w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gX8+pDRlwiEKkE663s+ConsJ4pk1qnaxNJlfCA1daDMhr541c0hHXLuQ2wb0WYXufLymjePHoE3rsXBKYi4USCnCPGqbIGUfFqGUhBVkHAisOWjorkyMP4Qh72uLFrTn03tEiQNnkHwBFHr1fDeOebz1SUx0EfrKuRh5cPwhEOl6dC+XQhqMj+MC27t9TN4ACTNGA80W5uNZGPVAejmHqIvmoPVngerOZLuU3Mwtm1cZTugSFmYmwzx6oEAcZScSqFk8E6O78E9m34Z8hkX4jKIYYR8fgPdlIwSQcyxuo2YrhiGjxAj0kk3abUc4vY1aKVhqzn0ETqv67baGjghLlH0nmp4tlAhl0N/7LfjqIoffUSqtsMFNf4qgu3RnRbQg3AlNo/Yjm1rDlrJpMcskg6Xfn/cJIbIn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kmIDeUtIkHBPMKFu2UldJH1L4uaA4PV5GBBUwP+KK04", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mo/DoyVyQ9zwPtTymmklmikkQ8XVOWcXEBu3LIVR0r2AMuF+EiJEKS1mHVErwmkwybIg/fVc+nLmxYBHUL7HQJ0qQVmS70Vx6JNTLpSvK1E6KjlQCimy6GDIWExdPfGKVKl9LQl+Gv2HIcGjcdIuMDeKpBZBjaCdii/1Xe0XVkxM9wg3qHv2UFKCO2vBRh0lnhs+l9CfHR0zOWj5dhQb+ZLaWET/WB6NsuIKr2dLXT6JMwaEz8qAhu8JrQ9L9meN1eRhrsKwUaII21ybAV5oYwTZx+nS8/7QO6Oi4JOPHnV9iCcb39ayHV4jeJcQf67xfUPHh7tUjmeqUp1Uo1a2iQg6zUGBHCzuo/CGPosbUPHeEK/WDsxJ6WruDQl3v+Ahc94riloc2njipo+/W8/h0WwhN6wmg9tf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kmgZ/wvu2o0+dP8ODaqfi27UzAP45i0mqLkqfQxdtRQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4Un2g6jz7KPCVjpb9StoSY5CwI+O6OeIjbSxFYBQ9T1mIaB6bfGMh23InMCn/f/5uB38/dtilUfZ9hmpO71XJl0lMQZFjCmNSwzyTF+CtwMw/fU8NgIIJvK9R+7tBrWa6RuShcH7YXRfTOMOeCb95QpAGII+lZScBhbYQcPnKkXV5kiTNTsEQ9p2Lsbmx6EChZarF2iymcubFskXw2oWv6n/rTHX17hO6/buq1vLczDrWKwTeZPkjo2/th2z6VAyIqZTsj+8qwmSNVShiv2KQRkrvP1pC3+4xcKPjbL7CPf9Nnj4jzsu6VjHgfGXw/qweocz6FLDngusrQxK3P3rorRz3SsWqt9CkDoaVHv7j5WWan0O5e0rqXrRLreiB/s56Feb07pkMlM7BdbfdKxaH37SFXP3J3au", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ko7XHuss3ZE8sc4GFjXRh3v4eoqAo7sne8QIUrzulV8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "maBPDpiMZdxtrDQ6w+WKqoTj1uCfJmp9qmurRH3c02+VTodNto7BRcXvNicR4XSZK8cM1uKOhtQXg+MlQ8ydfySDAuLufOnOqGTDmMTjrkII51DL/ohq//ApXkfVto+s/TQzxrkufs7TJo1xIFRS7YNM6tSwX5bjZoBl4yWIXmcWkfDf2OskAbpk4jRU3M2JF39h6JhtN49LOy0eht1g6kGBiaE3G5QRDf/NwvS3Uzp/G3V+FUj6Gq3/Owygn2bLpotQEXadb+b1jdt8YpGuAic5LPcbG0pleuocawCe5ainX9rhIcYb4I4iCTrrQelUERI31dMiqUtNsMn/2B+fYgZ+RngPXbwFwueTZRwWIXbpeU3qj5hAnHfv5SaKOtBkmql8cMbN4EMoDnPm/b/QtZC9XTFSfUoU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kpJeOYIVDxX8CXkR9vjXyfc0nQ9PCkJFPqRavg50dJs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F4WkRY/9Vclj1otqOyTpMD4pngXkmRw6QIrQA+SkbIglIYdinx2+4xCapcakJZZ0oW/gaA/7GDVVlODBy51fkbUJ4am0RCSG6lBFBDNez8givsFEGwkmRdawBnG9kO6wgEsk0TzR3WuEbt6LdG7Upys2zVWadJSFRcyI08rWT0a0B97+EBCHHoPJmPECQ+yfrXv7A27b5NV9qV/qCAHLWw7M2b/vqo84cgdPCuERUnqY66xwnkkd0QVyNRuSukl0yf257rVrgkjq/LSH4xNVn/i6gKYo3QGW24tXTrTQbqA5YKnE3IYTakaqJj/lNBkF1ZmTR8As1OQ0QAlIyYUktCANh0bA0HMyxN3mgcVYJ7RBhBQOI41DIFl3O3crX7GWfqTlGpyBPLX68NTsQX48SuLZd0/vl+iv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kpR78KVluEuRNzsFCwiKXNpoj3MbAxBzg4hhdxqBUwg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YlVRpUizna753ZTQrLAnYaumeb4/RV5pTSBV9cLkTIU4qUJ0jEZflLPnFovBESnpi34Sy6X7xMMYslUc8MjsZz5U5Gfpy5YjTxkJvf3+JG0g9rzHAQs8re2zP8FWtTr8Ylzd+26TR58e9wILSrCr84IccaACSZnfgY51+Jly6p9X7NH7TN40mZNGHANE6jOmJBqvqWi7ilhsXfibAm3A/0UClpxtCmwaM6Iy18RRadtAd1lS69bAyrboFhMAeAkGnwg4ZROI7hfotWrtAvDqT5MRwr2tuM0n6BryH5l/cuciXGwGwg298gWVuJLD+I2l8HSVHETrsekD/6F8L8Q/YfsIpJn/jbUYWjhgvGQsw1l6En8y6ckB0NXcqeuLVFAQH3J6oiuh6kq98i/m2rjgJw99dv82bXuf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "krWvvEcsHUv3TtEp8WhTE+JSE+WD6RANOn8fxa8M87I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rTlxolewTNZJ8KfkT3xLlYHlRbDjAXlRL4VzK+n6TjDs9q+HDwWop47cFQzXqrT+TfHw399pwM+ERk+yWzIel8QAV79XE3uvXCpS+3kxaE13NkAR8+w5T729s+/jJbIvzvmQpQwsi3t46lk1V5Fqny8yqlrsRFdufvoBWJbJxP1FJMNCRntOEBGuXFQdpG9Pyym4ajzQirTdhFjVmpjalQrXOM5Ni+Z13okV6z2/+83sd3VJGM34y8nvZjdAT6a3KPE33EZwEnE8PqeafsUzvpkyOB59zkTZ1MWpxDEe0VU5jvYig6lDH2T3vNTBuPFOSsbYXuPyETyUQZCDA9YZP52xaqE5lLsJDPcFKsaXQUcaG/U8STDF0JVQS0o8D3eGbWcauyPRcVRnGOtyeh2iZ9zKsXnyI44s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "krw/MIMd6f2++ixAZEghU1L1+79dmEcOhplIXLG3B2A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m2zyf55Ah87WaoGtmkS2yI0cquiuoerPMNwrSoloYFXrDo6UihkXIWcBDGg9YLhA1SFpLd2IDZuPh6CoHEshaYOLsQBd73v65IqKQrFxRt7xdWTx7Jtms8GutbGJlbsYsOWcEvMiAJshwTjMHtkES6QABPNqK5msUNRZchc/+r+voWTe9s2pBr88FXDf3uEc82dDez8HvsHjQrtma/tLNwNQ+aranZjl98IRyTX9AEtw5sK25PCqZ3l+DXeg2DK5IAmckp/33Dj7XLQ11J/BMIBVVkkXZqNAevg3sOTze1AdyYqlvJx55uVLEaDu2qWQ3CXASvos+lsxvjSSoEQGJ8fmQIiwftrhh0S5Avo/CzsmxjotbuwawsWshWtG5Rd5Hbnglh6DxyX8/9gxWlvfHfzuJN6r6cW0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ksqlFcXCUg201zmdbO1XprEmxKI8EhWUdARaQnlsVrU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VaP4NBj4gOyiU2QcQdiO4HPjIlFc74Op0olf0JqHBlXysqZA5hArH9kXiJxK35G/rh1Na/ev/e4pgbl1CenwoAP6fzoff2OrvZEuveS2s4jjiaZ/Nd9KTQnsdOw6ziIZvqeygxo0gj8SR2+nHBwzcqauucs34YOrNOQIQ/iS+dP1TdnfkFLDyYXyXkU+D/nTwzI5MRh5fkBgzL/Z87D4GwoF7dx4jdkG368EOJVUo6f3rZ+7XLyo9zbyz4+Zu01iFUP3eOSIpWnpNWXkUf6sIhGOlB8vvpaZXOnyypQXza+wHXvkm2uAOw5teXpIKw9fUL9Mmo8vJC5Y9RlZqvwU1rwu9JxBdm6BKtW3tIdgWaKtkzsWN5hsqpyjIZdkiDZ0bdug3GmzDFvOncOuItO0iAEqGymy0+cn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kt9JQn8R/cUYl/851DneNxzd4ptFuNKP6QFlPXTXRRs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oTO4ysZNKSA9XgqPDDoug3QMnuVF2eQa6M0i5HGHnGfbpd3jraRwEYLwN5HlDnl2dljjbp5aASo/R+NeVyxo4/lpqRpCiF7HEq6JzJVbM7ARP6B5oHjkpLv6KDFh8YOw1+D73/MhNIgelVRXY8fqwKfaWxaCH7JCPm3pLPWwKqz2j/wdVVJi7Sp9ucqdILAkv/3aVVJK6kgQQKbT8Zf5ey7YmLPoI+d1ykwkC6nOeYblsygMSuFkvJ1sbVAoLd7Qzek36ISyUcMK7EnpCQdQJTZcqcsY5FIEjcy7pcKQxHLzWMsWX/3LHt+kF7llcnzlEUb3WZCBC/36XBE9gsRgN1YQkuEvHc4UGK4i8yam4OPvUP2Zw8aN5gKVw0Gf+hg/FOdXSf30o2a40PBXaXwMS3FphrKju2iY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ktmImP0DRnpFlqqth4aKAILxO2QzGio1gXGS/EN4wGw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YuFl0XGPp8wrgyGKs2ZaB55yoD4/fh3HBY3cva/4dEFFCTFHi4i1p0qudGRCOS81kceDSHoVovkgBqDtNZTn+Tbo9qxiSAoksK5PRG52/IfsK6OhTPMRi4S8ewC7dF7K9u7ZwW4e23KhjmAbjuOlx7q8ato/g5GWr/0r11GH0WVg2UZiwIGnCt4khk3YUMacqLVoP76BSp7h1tzaNhhKe7T7icQcdjBBTCEyf2XSS1SRz7fAlIzzj2CMRFjd1KmVZjCZlGSqW6QrbcJlbDA9nwIUktD2T5ImHNRQuBOiP/tlS7bA+79sMVyFcXCSaSlraNQ4Dnm9+StuEUBwobo/J+TMuuF210bp1HRGG9rQ09QO0DQ2wvZPbcOLtFu4HBPeOin/cR1lwQiAS74r3xVK0s+BuFu7Pj4Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ku1PgFpC0PL4z+Ll3f0yBo2Gqduv7INUU+tRoCkXc9s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "daVkHaC/Lo/Hsdgw5jidlR4BhP1h8JwPjryHJhxWLJ3Mhky6+szhIBIFXxTGs5H2zJbS7MdDeGxmSH8MMQbkNYWwXqjpggWgTPMkhrjqH+kPXvsVyENVB738u+1aZ3HL3rhfigz51+P2NfTkP/gzaBKiGg5qHkiA/8JY+iAW2E0KgZ492Ic0E7Tylu5saZipdwQm6Bh6dG6MfDv81HIMiVq7J/iliSDT/eX/xK6ImALDP3B8vujwHZUnt001/sjcsJz51tEpZx3/4umc+J4Z3h6JC2oJ6MzibDRhQDGCA/hQgWscCPEBQRbpRbNN/QE1N280l4KKb6WUoWV5QeeWmqZ+e/7UieaRcVrXszwahPdOXDruloJPgvgu7sMNLRvcTSLQ1s5NPEV71hyATJdgNzAyUX7alcul", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kuQ7gOLu/gCAmYKkb3gr7OR5zYpoFHZrWFTsU5R2AQo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NC/kQdbuojfMWfZ+pe96JwztYkWH92U0KigToPMDrT128i7x8ZaAyszZJTdQ/RQu9Xk/NW6d29xDcffbXOYmek4XHYeLo8CoW3vZwtoNsHJ7ViSR08v2qVgKgr9L3UDRrLwf+ZD5Pntdb5zefiiFYoRvXo6rE+b9oR/VXY5GbGFYJP/6W4MgZX070C/mTezT71dpLkKkSntqVEHMr9+CXTuEGLth/7Nv+U+4xt4CkMagLpYL/rxcoOqUojNgsdmR1xQuB3aMvUMeH7q3SzKfV8mZqnwsVSxVJmB9oKhUJW7W/EEFO+1b6KRmoWbT5IoZVJ/ooPGtVeSyWg6ev+kWcL5aO2puwofPua9hX6E8G8juGyp4hHRD35pzDpctR5BeJj6RpNriEfsUMO3pKHkZs20rm+jEiM1v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kwZKj5FJmfFJDS68Deexpjnq4raslwkJnScLOo/OHDc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gYnN8tVP2NtkMhAQ1lwkwahHE/QmfnmSSXppTAZProzCRqoXhUXI0T83lZFQ2VjH8VUVoTmGu+KKhYwb9yfR5H3wlIDKksZZo0nL4OjMwaPgrtOHgGeVBnwmC56TULsDPkcjT68/XKaxOqqsRGqPLDQvViNZGkPXVomUJh6YAoJLtN9/xNhpWZkzwsK+58pTSTgqU8Vy1d83C6/gnErT123wQzC6JFTI1dTPKUujugoqsscTYY/UxCFZlh6wUGDGNQx1Hst7u7dR3xDVCV8h0fSPkgkoX7wPLhsNJod72bcRT2t2Hy8CIemL0uH6aiZzqHT96LSLaWKkl9/CU+60WlJoFm9UDw5u2BhjWjwvuMaXWE55pjOeZO5ejuo1D3Yyg+bFrAEXmsaQuQpycZqe+2Nu6XdNnWwG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ky2Vj55tutCxVq8F29yixRRTIGne9FBekkNdoUhULj0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vHWro4k0XZq/+bHNbCtaKvQDnHKmRNkkhK9Q8HFAgpbjhrdOdMI1WHJxw3QNKVnjbEEKhPgzqbkkcHwOXnAbnqstkep8oV09A+9wC25zKGsRoMZsZBNFRPdHwpEiTRU7wvw54zfIf9HKKLPb5IfP+iaQBx5IIOAC7MwxwZ2w8vdbIElnvdlz8whpGkFJyE1XlxkqJLWJoDN7KJBkR86htDYBw3oS6RObm5wHmSW4p0e471LFWe44H7mkKLZJ6/q8BcHN8Ywdxu4NIqAtXAcvEt+yevzGGcg7PwmPVAVcpYAg2h7N/CXyXmOWHiWJt3pUyGDp7fMPs2BFdPhwzAZ9I6XvpYHF6hXmbkOczSAZoJeWbr4V+9VEue61chX+LlFRBhHpoVbld++hFNVMP0wtRojqusl/XtXS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "kz3+MFO8ekDUQA2/l9KqbiESlcnSmda1LmHd5n5LLkk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qTbUKns/OYyiZWrLA8ARoTpD1OtkMpORzZYR4kSlXmT6rDeq4vNYvRY7XDEw4wK/2kcP6I7BBOaVifOqiKGxrSRKRA5BwEjYs2BxsOxUzepZ+vEvUF4U9r+PFgB73CB8/+lsdF9CHP9AOySygW3ij0ZbX2wcr3/s4v6V6PSMwCXqB37jTTaBinA10Nm6cRe8Vxhajj5zXFcSnMmnxgiEaoEFxn5vJER5jJyfDlZsIOSfVmfe8g9CqSJhCmuBqOXB7fz2bZg4RGbbv7b542oE6e5hRvIwh8fQdrAIaKJiiuzldQpnDihJPEOScVysScVRptEEPlYHYstQpAszpnR5VhrmnOlGlTtw4qzNSCNugWX5HmLepMIantPEH78UXRkiqlCiyFvFmZh+4evQf2paRw8FNIdMZ1f0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l29K+5Bkz8q8wQJ7ws1e7ywOCUeLMjZNF9aRaXuWVHY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vY1eiLPzCeFkgcC64b5R/Ke08XMjcwl1qAyxTn6x9zr5WXeukoFLkS4L9ZlOUwzl5T1HEq5sjIWwS+xXPgTZV/FLFwtbTMXPqpabgp/zJ9qC10boaTfI+drQ7yUwHIYKF9IFFW5Ms0Kgo9JAt7w8Q9nvgb7kXtRJyBsOlzjItdWtjI/wbLS7fnizcuhZpOzJKgDumixvqAk9/y8I8fh2Uwy/N8PFSDjrtfN9eiOnT2rxh2VUV61+oq51JKig5ckvLITwcvA4WP67dVhmJwaVcfdpScgYuOPn4FsRxc1ENXJmQrLJnrTu2C80Jchih5LOlseTs0dISGh7foK8s1yXoznFr4MMlwYzU75T/+HaJw4PBNe8wDP6FPKjftHbeqoiVxlWen3iOl9Jkk5r88/AsuyHUCl0L7M7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l3Ck92jVBoiAqiz24urpB73k18y+tzwjOkhouV1Wth0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "upfTCy2olFevVxB9BWJaHHm56g4MOifgSdM8EtAI1xM486Xwo7sOsh26DPNLLHZP8U5hPLJzPWq8M4r5v2Wlz9AnsE4o6a/PCNWcovi53mYIwFe+PUv+T6lJu9eIhMaJ63tPG253H38ZckerAG8hny/C8GTY0jmhiGdJ5la1Ffoe7h/rj5M72r6ekghrqw0ZHtz1F6AagcWTfr9LWB7oyQ3EfWBQc5dl8608PvZrA7/ZtPATElXmQBrp2ljnJ8dU+9ttG217lId0WPAfdlnapPosul7CAqVrojAnu7tyT6rQuWy0zJ1LS8FXcGFWyPYhz0YRjTzUmWZ8EIzYCO11KJbx0lr1IK/8w3cfC4G3NtbNxcYl1iNJsh98EPRCLzuYswKebyDHtOosMZRutHSf8Rcj8fjPg/BR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l5m0LWuxGd8Fsdhyh+bLfuVieyBqDUQM17CrerI7Prg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eMlWEjunao1yZ3YUsix7SbQ1H0CCQJL60+u5NU6bKkkNhoXu0lLrs87XmiFl2MBnsFHJLt5SxnA7U92qb6kFzKHhhkCS4biuzh81AcSQ86oEOxaz5E8GBSfj0VQO6NbOedXXOHeohSbzSebVi7Ab6vHsHG71bSbQ6uDUlS0/ioSkpA/gXo+tfbYeSAnqARzrG8+e1gerlkFlfL8VTSMN+IErsOsDSymSumrS7ZbA8o9Le3SglrYj8ByUyp3erdY+PCRGfGqq/tBP5qlXrayRE9QfP2iYx3DslTkUu/ldhXAC2fKu1JfCZr9KHdEzv/Qkzikfpri5NFnBOlRxA7LdaYUbZxrl9eHXc/Y0cnIk9/3Ej4rpXrNfrlDdGDp5gW78C6GfwxQn7Clkt8nMu0ztm+IU9FJQ4JqV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l5wc8C5T8HfwOkwptRSbKSaABRXSYzhKxoxG3cWcbTw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JrFv+xv2jllJ75nWbu3o3tVOE+2ydgDNHNitVa3tNmmIv1y1wMJME1DV8c/AWcWNQBvCEdjetm37wwBtZD0LgtEn0VFhGG62Xo2mKg0NULPW+UHQ5uakJpBCSFQBDlFMQuDtLH6WxXzPskfZ2auyhUlYVVmkJqvduj5QTDDXQ+NVJvlzOOMmLy8Qras6Lb2yBdtZfExLAYIhPgg4ovD3/+qcj6CtnzBrd5YN0UM5yURgpBFaIJMGa79Un/DQO96h1r4USJaek/44/BygBRSGSYswo5Ea2fPa75XM18UBtykl4QzTgmg86/+Ub9xjFnxsCoRRVaBVMxUR/FS7KdFX2PZA4OPIbE37YgQYAal5rzZbgahAa9uNmVigpB7lpFk+ysGhQec0RUqzrIS9GVzA6Ns8Co8dsFkD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l6IZlRhlvjbcKTNnCN3neDNXRPWnTJTzvPrEHhsnCJo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "32L2m+4ZMdE1jmPyMGE4GZ9DLrrdylK23KfHNaRM03oE/m++tN4pbep9oc147pKFAsEg1/88tS6hQPVvuLMZ+8vk2vCIwFMyfykj8q4K77yJLW0R+Y4SYQ9ycG2DNkjowqHH1U6lNTYgqGzm5DHr1/krRWCOSCz6vBYmazMWgWp2WpY+jNviYUKUEyiA3IYAN7fvCKZse9rtBR0FB6y8x+/hdXcBcIb+aF8Nwvh8veAHInv5q5x4ck1p/KmuVnRZkTTT5Flg00Y8WCKSr3hyc081ahLi9ek5h9b/gC8YiexLaBduPQRoFv2fHLS2Wrxf7Yu++zJiY/++Hv8o4QMWPYYQO4Hrm/Dnb5PUw5hr0oo1ItOuQmpdHbGs5Sblzvwyk5908B1AIyBwCtfPWLVwEi13N8PB0hMw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l7GQkGLJoXbacsNwo7hz2jlwhcnG3Ug8TkhyHHWzfMc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lv1DatvsPScPb3wObC+ZCI41oSbz7qITtVatPms3RoTcpaKNjN7c27A3Ad6ULrHKPaVr59defdWwvJXrzY3XL8UKVhFqQUK1MuSnIWogOBVoerMPWsMYhiXAwQ4Y+FPxOiPE5qToCIIoojj5yxdy9VGww8Nsr69IJcFxvXXnPW4kz/SJXCvA+shtkV1lgHoBt1ux3ze8FC/OlAVwi+RRC7Pc/f2XZ7gvjFcPY18NbwFPpqnhGWGUcPJn86kuW8sUpwyMlJBOJQgq2V1kLk6PDBXPTSv2yXSi1I/oXmTbUXdrFHh3M1wYdU37dw7m4XxPfLLbX7rPqqBBqxaFAl5sgkgfRfmJYUaDGh8v79nv/suetBCzSET16D03zlvn+FjwZtlvlAiGtAIHPrvSs/vOvEP0zBMLvPXC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l7fudnVpL4QcVxFhtLFs/0WUooQ8nuvXHvaSOVfWGNU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ncKlvrn25w8CvlFwC6Giw6XlqyL2xcgNy4YOfyXzrprqe2SuujhbyAw+5OWbKNsFlWcyqRNt2COTZcwC2GDefA/avdZ3ukBbbJkS5PRBBcQgUGQ1+8DCWP3UBpLmSvyBgDKUDqE3K43pyv7MKzGcjBJowLqcPp+6KmGyL483NrBeqoHHHH41YMzGKECm+25cv2iEYa/Nemu8W5bjvgQlkgoVD0I/J+FwuJTfxuBtYTybRzw0VZ54IaH+inONuds9GWTIR6Dn8b8WibbwZ4cfSPBuAaHCddXb0fOvFVhrkUM4bev9j7A93G3bP/crRSG1sEgYwdxhnUPM6wSMvgDnUJIulphlcgImbE/+Dyvvwwtg9QVfY+H+DDB+ebkdN6xqiceKabnzcvz5Qfd2AzB5rPBxubSgetkh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l7ix9iinW4cdH7+KdOYhoHX7AyU1LZiJdnXgEuKPatI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HZO0leRGz0xFtiJTLb0kcO0jx4zQxv2XJZHfJxgdgPDsJf3bCJJRFKHCjlxE4ynusOAuC2LvdYini82EyYAP8Je7B0WT17Iuk5YTm1qvAIOIamuicO3BP9uXc0bTzHC4XDWi7l0fgG8ts18Lmuy9F2nsciSd5Zd/S3F+38aDCrdD4OV+JuK8trcUuzNN0Nvhrs32jKHjD7XPckcbB+lI3gJ1/QEWNHbGdZ5iQqFM0jj1rc6q2yQZZ3jcrX7SZ8ZQY0/lpve3Ze2Iuij06TCssA5Xayd+8E12SbLFPMCdKjtzBtoDtViaZOdEfp5WpnMLlVQC5fWYO9seVBhLEwfapPMQvTjl2MtE/RAc5BuExQD2xJpTRHo5qahFE9bddyHv7yVbfHR2Dkv8jjwkkfYeYlGUWcSRFfkx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l88kzFvJOHzTunyReMiYz4G2Vd2JMeevQbOAuJyon7s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zWeb3xmo6VOig4fw4SyIgqoGnyO+dDt930TFWen49f7lf3f5a+7wpKpY9YEbLx68RABB6ohxGL1xEl145/LZNiRl5m977pH/gK+HOAtgtR/KjvJCuaVTMApivZt0cwEkRjb+7liP1AZ2362iv87uY/kNFeQDYr5NjnjIB4T7h3IWJpFMW735bHCpmHpDXkv1LP3M5eLsVIvwoIoEdXdC266Navl/88kv7FKrRVuz0btJZw6lacNFsnPWnM4KARLNJNgv6DE0mUyoh2V/9rd1VbqVJaZ804tR3ob9hBg4m+wNGEShOfE+4Bd9wjSgVHTrXy+3eFAxnPITiFGLKeVYrZ21X/mZ7FE4yM8empACqcDrrrKrcMRZMV9JZYWSuUFLOj6CO5TjuAgDXi95YOstjTskISeucOEu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l8JBRw4LC1gCHPDJaNAKxiprM+EjdsUl+FpdDZTR8HU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zDMZK3XSTsdoTp0Wl7IbkewCpQkrrns7R4In2L6cRE+/VNK3FTQ4FHKgirNjF7kdoXCcA+rBjvOvOgCoRWNvajWUcbg4gvhPBEDYtIJ4C3nq/YLOKU+d89ioY411IA2Xkj9c7hIJm+bhJnNIidv35G5YkC3jhwVhGKsdAcUF5D6bZrajzDj/UZ+vHOX8DOkq9gTZCmUca3KEDimn3IM+yLYVpsl9egIW3zQ/6zTtoAt3qcg817xFReo1xrmlie0wqDhgkhpkjwXr0lz1gyAlCkRrMaWxRzOGig+5Y0Uir9PnuNE84KCR05wKVXRqGK4U+xFlx0BxCofbFZKER5Z51bbl1H/L24vhDyopuOZTWy07w0wAXnF6tIspCLxAVVY1aNMdk4KziSgjPUAYK53FGNNvUQbN1qAi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l8U7ZFsk6pc/OpqMTwiMk0pocofIc1MiLvwQdfWWMHk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pGykHKePUr6vO7Fwo6mlUryDUfOBuYX5rf/VUHGxtu3oHPPSgRusVsuAQ7dqJOByZDUotHe4JDFSNVfdL6A5cpwkRaqp/VdCIQMP4FeQ16c8Y4xTJQW4sym5cnZXEp/ng/X9ErK5/1MxCTzdyBnTAowOQcwZhHub6NVTRYKjk4hqXGKCLI0jv+qyAf9DMMozpdlTEyFr64vmTTiSTZ/u4PokEorJ/CGpG1uvT0fN8dK8xl2eJF5aaLH0biAWO+qy3jlFD6HHJMpzdjVHBioLbT6zcbB4gwROtUdIxTriSYHSzvLXQ0LfRJXvSGssIfTPhxQSMytmy8BssYvjIhKE+HsfsqZZN6pHYEX2Siype9KAt58BzooDMYEvSXW7lSOb2ncCfatcv74FfDDrJ2FajZPxrDVPCzev", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l94SyRQZ1pREKBVXfFcJokrfP0e+oUV/24Nj0YN/aXE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qvDWAFbhrZ3qi3vifV4b2awDukcuTFw3nD/M8+BotWppjLncaUSZy8xWdE9jVuBhNmMbSYLcwxo4iPPRqKDHHSnAIUJj14tm9Z8F9Cq1wuhk1gEewX/ipmi+WKqcAFGW+EFUJ26cr4tIvzXpA6JC0h7pTnJJgmBHozzov9TawpoNzFJWaX6HoAbopWTL5T+BrTJZD3B/6CXOhdKMLwzj5wbBj+0XIoutHVnC+iCOw1SKNKG6iujcXa5V9hBHigESWvd4XguwcBJhhQLhKOqBsm6yXTxwCr16jiAHkaCfqoiY6/ezFKs8WloKdmOdYOSrQjNh0Cl1OggONBlna1AoVoKJH+fZpDpXx1d2gM0qSZJS/ij0xqu+ykEgbNitxCKUmOwvJDHqT5X6FSKPz4FUUY9QlNbQ63bz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l9D5nJfndk7eDN7yWQHKpSTjRMM8rI5O5QFlvUKf1l8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iKvBsV3tlrst3J5p0u9kE4fMtomDZFqjyec7oURm022Uwd+9O8+O2VfRX9sILD1xDKgg5biSFDFtuAleIJHr9ycq9gXP64dcO56QUhsCwGGTcRq0mR/TzD+1Lel5CzD7Dix1ArZbJGSc1Y/zfJ4WZx2iF35judfrTsVOD10WepjGHP4AHq/H78DIydjAcwhQz3ViTOZAHsJLsBHi2WaWn2whWVnetn6p80Ee2+LrUWrzWdrKOCfANdJifZT1E9V49h2s4ULh4cq6AzwcE42et9r5z7XVUtZHbp91Y1VXCflIByk0Evhpw3ObC84GJWQEtIfQ/b15c0yJeikklFQyD21uaXqZB2/hFr7CbFlQtDkpSBlPZGYRXFT4ebAj6+jQEdcI4DCUSCvFCKMqblxqqsvuTrzya4Df", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "l9FG4kIFDWpO6glM11G47uU2bwq+ve6WdIzqSUvjWS4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "azB/F41L5lGdkM+cze8HMYDAPtar95KuUclPemxYbpoKjU6FjCjQu9GcbsbvAXJHEMVPERJYBQmOn57hrKaFZZRr9lm8ZrCT6+bDaxSXfTwVc6CmI1WA7XTvt9iB3iC9qAWk0BBycAxyebbG+w4iwRqe7NRL5Z+Vs3bH76NDBqBcDQEjCKUTdOOEHUfXtuGl+gBvgSICKxGq4fTLcKGBSrjAgw1SY+59M5y35Slse4mgIWTntPcFh0VJhvhcJ1g1Xd25weRNox2Tl8pL3MjETNUr2ZK3uLbosKboQGmex+ExEUtk2dgjYWLJ90pLGHJi7wAga+daKICVd9/4TpQB+WPU7nauxmWl9uy8GND+7qeOlcVgRiaf4k/WI+gEkEsjZMyO8rBe2prLTS6LedUt6Z2bvVcb8aOY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lAuDp4ftY/Xok8jWtCgos9acgpNOVZfuN0umJMoFUsA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "n4PeSq42zFKn/L8fjmbjiM+liPIpgZJ4YecOTpQ0culCujh89TcMe0Q6NkVVa5jnWPag4oSfRy+4Ail+5YoKJAH0PvkUvotQRW/HDicmteLAe7X9hniCAt0QvzjMpsVMmzoGWEei5zHr+YedjkxW+7GXORnY3G2AnJH8BjE0Yj9xhIwIagPBP5rVGk44zkuKKMrGojctl18KvFv3RtspRfls8kTOIU6vMIkM0IHhoH6IjNKkQszpmrl5XpbsKYKOoZfEjG/D2F1MAyNnhJuJHNccsOZznGu2fEHcWrbHp6+hrC9KjNwD3qiKxhrjgIc69q/DXl45X5mnigT5gjFYv4hPRxsLPr12KvXhbi0gYqrRL3IYfJ07osRaAIXc7AGxb3iok21717C3j7gvBkjUeOJeom+81Nyh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lBbLyuE7owHHTYt3gahqgex74Kka3VrgU6gYfhI5Dac", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "weRPADUzKu6MLF+/mo4QO7aoMuwqRKIdWCvAyRbdm/5fjoQ76tyULwqdLnG2zudgwF4sMjpBOeMAhPMNyrK0AzpiiAzzkCSR7a9mhr2IHLYBumKZ/Ke3We5mawejIkP1933GUC9hASQjv4ID8yNIOLTZyV92XMpde/Zkl5+QCSND6eW0ha122KP4aGQHpd0sEaQfSqz/DebGwe9C80N5kkNVPAwbdjdTndcYfqDReQWaY1pecKpdki3CQBNbWqKmi62IVA7uBxUW5RKggu0FjlwoaOHdXlkF5mBu/Ysq6xHmlIWQr2dMyWp2dgKzpm5pVsJvj5wS3jZH2xcmiPF/DkHw9fdDM7BXDIYOl+qeszogqAyfH7czR2+9Q3WverpTl/kIo2ebx+AQd0UlcxI4cimfwh8gwFvC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lCM5H1ui70RMdYSakirnn1NRmn5oErx7DjLMA0zf6n0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7AGu9O05/K84e3b7Zkdc7Mvf2LNh56RLYbJ0HTsRzK+H9PgyEizcbdmhF4O45idNAJCMoeYlCtmRA4O34QyU5YBeXcH2BFrNb5w1at0YsdJhmSyRdYDY5iDoPh9ZFjGaNyVKQ9iyB9xxOM5zh7MGa1sR/d2BiLQqapVy/OOCBn6ni+BjJpnFdHPrjEl9sanhUrHVU2aWZUn7RAaefNZVfSOLUbUfpZufaTubRVAwoU41LOtw6QvHBL/THZkAzkBOP6SeHX2AsKAWwuzEtndqDG9lRD6aNRPsDW2gY56lQXqNb/R9uuF95seqOTdBmyUQkmrKcz99BxQ4hFXEGhVhIdZojPMPrCo6KZ73GJlWwMDtG/gqkyegCxFTSSAMhGnIfl0TEE7HXpxxFmMG93HE7E1pO8t7+K56", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lDNVcZi9u2DpuVNE1y9Xp1WatshL492eXH7h3W1GMTY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RIr57i1KpM88HDlI8sRF7BhFPSjGA5UL4auyGbHMVyPxyDLLXnmGmppJPuYGa7RfhGQJPGAbh8dmRIwuegaQTZKKI5By0zd/ZxC9n57uzW82Gt1bAu8u7sdrVLkWvFw+nNPzff6s7zTv1PjOMJ2DFzd/J5GHi0arRsPKJ3WkBGP06HO7P0Xdm4hHCJlxwYbE3qXJ5V+XQeGzmYhTNYyhMAnShy89c/6Z9SKlPLazUtQqscI81rKK2WP3lvVXlCaUKie54fTYIhRFM5v1BI408hPETK0B4K4zGcP5n1OJz12gmS87HTPRX62+hbzfBV9do5KRVHBWrSvMaucTsTeF1GhMF3OOuFV0WFTWszUvY962pJgxYMNmbTqgqtD4NE/gYJn7GpMeJn7kF30dtqXiUCnQdF+tuw3g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lEmIwqgGaC5NcvDNDacDlLkoIvr5+lGLc5L7YpQvsBc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RaGn214Pj1QKm38ARzHeDsjPW7n+zfuHo5Hd83N4AdlYDMxmA89kqqzAZX7e904Ed7AW8bQLXmNia2wkC3hvWuWcjEf9QoiJW+0Uik0B9lEkP5tMt4vqrpEo6q121QN9qLg++C7xxTNxnJuE5fNKNeig2BlTZtynuHixyV5xwcWzZAkPMg3lilBYBQF5yqO9MvFJ03aC/ead3XMYqLTDhFVcjbYwQx+/IPjdRcb74AMx65RDTOnkaIjKVs6Trqg0DQ+4r7u3TT46zD9qrCOXr7Q0qnaIVJ/NYgRtZRVkHODo1IIfSapsb9VouQB5Hfq76ilvWJt6ZplV/H4z57clcZ5pDQdCAyMpPXxtmjTNu6d4U8AL++VYeg/ipw9Xj7sdbuQMmrTmaMGf8CaIm0c3IZeNxBenWZEp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lEsBGWm10Rlwafd4ni2tSLT4EHaKCv/WT73jbN5jTno", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j4eVAzGy9k7dcB7zVNd7yUd/lB4XfXpWnpZli7Kw0JjgV9EAKIPJirNU0yaqDf67ZXog14Ki+h9y6YiFW1rjRTPYOFOzs84PA+Qjz5xDBVvBDXkDbW2kVvTQeMWbPeZI8fy9Y2VBg+tR6mP7w2ouMZcv+OrKnwm5e/9u+KVFNgWtwPX7G/g2ui5ZpgqPxajT2W+x9pY0tN2SQKvjx68O9BuIFxzIBYV3RKa5rD1NSZzUOY88v1B6cknbxgCfug36zw4RdVFEbIJLLc7eg8DQC7H5Js7kgNV9ocoJV/JVa0aORlB4KDFOPh43gCeub8ZGJTWKLSGri9wkqY12R/jjvxfwJVdEDmgvpItU3eqEgkBBaA5tYjbCHyLY2jT9gGOHVQiCda1SxUy4G76QdKAHn/azjkaOkUGI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lGA0+vgpnZKT29smOVMNkzjBtUUGCqLhK84YS2N1hUA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "umhMpaG7pWOjft/fcIFMZYuw5lo35zgtdIO7DAgGxlfzhZOO2ZB/cQEo8XVSi9efFEAlu4mhUCRL5IQLOzuDIaQEeakVxGE+j2Pr3UUP5gCrd96omaW8BGK6uojlzx0BW37sVE70IWE3dCZ35MMTlIcNYs9/wghBdZcdb2LTGsJisqNu2hX9U+hfbKCtBGrmwnIoHNZ4KrqseI7DjnXhL6f7NyBCDJCOsLRM12nbT2k8176CaY8n0hSuFA/CEzpSeNF7X6jfF8XKkjTiK0kig3B/rfRj/dHvvxnPI4w0vxSUQRROLZNIO5/ludIfZh2At2mCwG82REWJ7w+BJvwZhQ59ktMXkIIKw1djZgQ3bq1fr8k9fbH3hISs4hRxfFZXycZLr1Z0R596f2kCdAnB8MY7UXC6XgT6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lJacyrN+ch4qE0Z3OrFoe1/8XAE47qtyJ7qxwzDZIAw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y205w3pk5r5NHUikl/9bTHJNDjGcsYKoWC97MWNlFbLeIcmFOClFeB02ppaF89VTGt+zbH3M+duU97sx0x+e/gkP2aZ4+ZND2FvBZpokIbAIfx99p+p08jVdWBe2lZ1hEzMrHUcRk89tl4ZiRyJ2hZldLi6FWmRUcd1ltdtaxxxCacOvSOXPcy23nDtQ1H1J2BZBEpdGuVQbfmWvXTn+qT5kO7W8pH5nmFJjyADYVn6gT0/XbsNc/qjh+HhZA4TFWbUOKA6+A8uCeqMBUE5zEpCKvpjAG+RGVMqcAbdd5y5aOW68vNFWBg5YeFYNe1f1R7CiBu462AyfdgfNJUCzK36jb6gXQtr1HQyJJ6WXFRZiVyVw2tv9RQlhV8BdxK1JkmKuE9dO2HjEfyienO1LPZxcigBzFhRB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lKzEWIr+2yfXB+oe/J4dn5uHuVPQZL5V6C0iLk1aPBE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xLrukRzAJhcKxUIAa8bwTu5owhd4n2K0Pz9khtPlX6RSWG06A/zXm37GOJyt8C8XP6PnKRDFJhvY1zdAfDPv94CZ06szagh/+6+BGioXTc7pLZkEn5mZ9EfUvnC/2vjgHrvaqXyOERElgtjtWw+Yd+Hc6Sx2IPPagI2B0dLtWAvIkAPs8DcSO68ya6DZ7mFvLlELy8aA2ew8dY118YfFm8MGzqG4PUQE6XhViKhJPYUIb3hhyO4vPEBzG6xa4S937G8uuOCEIuw+KRiss+SI7ONaze87e0Zb7rt+N4Yz27eYfWdCBMI35WuwexWP0HDeBJykv/5HZzTpTJ+EBfIkRUQYushFfoktbdmlIF6UwjjJ4JG0gzK1OBag+h3UqLYwqNnXjmK0FBhhrauEzAPeMb5g7JZuTENh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lN1qmKx3J5hdIZlJAX2zqp0Vkg2wxRrrznzfAksGxEQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/GnUxMSHDYK+ofj2FoJKrGWt5tUNi4JNdJpiUBWze9b9yQGOGK5r0M4Pqk+3FDEB+0PTJZS0WQJFoXyhBVK6xASJiz6vVwJ5ksKGM985ZZDLzuvrt1x4da961NcdY4ROYCefZbYhBcNBcNZ7cu5M1rXNPcl18MOG0isu7gzVEnUnSsyaEuZk0QV/2LJP+JWNvCOCeupRi8tmP6l1+aD4X5nu1U32TFOGEG4Iu5iZF7mG3Q3fyWpva9t9tlTKFDhcpFmVbq6qNg76QmDr3C29bsCpzOzcg2zq2aJxKX5kWhlCpd5nOu0K6uR5fjrnBtauakM2i7mpFWQXttkdoUlRM3kJI2Lpt9HQOuwWa3C938LcXE58KtKauR64dIuaf4yFTm/mVa5MkKWrR37/Cfc8dbWiyAMOG2vm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lNFnW2qrwxhHrxQDaqDVFbJ48ry17uAVALVUzUWmj/0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ehRRIFOVYPnWYEDlnVuJzQoylXxQHlwER/WjGqWy+qtfDBJpCyhHnNXufxOUnCw9ehPhcga91ceenyVuYIf6c/ph330ZnQizreAOysfe+dkhgnulEu50M3sB2Tyb9a98nEL1o5+CnqOrHT3VGyjV7gB4fpimq5J/f5vBOj6UdM0hkrdGKz/vB8I8qK/W635Ltizs8t+VVrqWYNL7HQLjj+zpQqc3rZitxnqal9ko2wHGEWR6WVi/nwcsZC5ULQA56Bwozpx0n6R0MLMCpwGKBbkOmJE+q9uW1MegIvAYg4GM/uKpkSj6Z3xA1mXM10Rvw8hZ6yjiDZVo4INlZMzgU28JstdV8JUNpeT4Rk9yweuNbTHngDaDqa2clS1OVnqIk5qqrsprjNXgaOB2m0HrWGF2InHInegk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lOcCY2/i6oEIvukkV1RjoP2XKWu+cMjTYibzcmqrFQ8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LbiYemcZPiUX1bcZLI014kQNwZ9MwOcoKLpxYa7YCtiHcQ+Ml0hf2kifgYjZiwdsE6J7jnlgldLvNbzYzaDa/+eYBD9wcLa2v7xMQFaD7ElZdFaGAbzub4XQd0yT9kEl9EF74qzWZQZi3EDqR2nmjuMoDhUJ4zRWpqWee0GsfTm/ZTqwJuEVbAIh/kBlYJQZ5RYpMjS9owkt78Hi15c785F2wdYuIuitqV06JmzEY5HF+NlwpTz04f31Pq+fCzOqEGgJJcRN4U0ZP18Z0/G36EggfBqz/q7crh0tCswGV4Muas1yyMdtNblLZL7rCnQWR8044s5JWALatMN/sywmUXqJPt57e4LcaMDWhzHxN0oEbUBaX+OUwUj1LeAq3Qr9D6z/ctKw5bOizyYzHoaWTX8zJdcahiGi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lOxpsC46KIEJ+duf9EMqiaLUga/qzURykt7QXOl3lR4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RkLCQMBP68mfPlzWbj0zDq93xrd649imSaV5tiFKQNjbzF3VcfVamsGKopTch5+7BHWZFdgX+yQUqO/ilAhSP1NEz4his54GxVjf9Nh469N5ji41MYwi0evGYwOuP5+RdIWU+467+9LB7YiIA346CUKqEwQ13xkGxVQ0JcHFRu7JtS9N3hZJ/QT7Npt5OP7IYxFypr5z/qr0xMvDNYE7M8549h75d1/FvNNZTiQOiGCu6GnEttoNmFjbbZ7An+roS4/NP1xfiegZOW7INzWAWVcc5aVh/kHZGVT61TE3fxDhHUr7dLVMZWxJADoEjFjxRRgz+AkRTSFwO/NzNsSlKYQm9LXJQVg2p8XBHcjatZHpnLo6bXj2HaSYnHFP37ztK79BonkGY6/3N1NN6SPLUKZeSX0THk7f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lQbECgqtw7Js2xS/8BN5766HGC9aDnN1V+uLIcVsGAw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pIJJES3zlQ9DTkIbj271uQem5FQk6O8YtjfPtIpyMhh3IxX+RBehkcSeMOzAOLt5wNrBJ2xS0xE2qbThqH2o0bMsghlErBtZgzJ7NAlxXqlvaWarLt06eSAh/riWCTOmXhB5EEUZ1Jyc7UPqlCavFBGNTb8ckHPGu72FBO2Mp/Wvpgrvz4lZ3mo0UbifGhQhTQtzB22YWdl+FzZ5y/nBDXq6WajJdao5nXP17WPqGKbUs14YOq+/55teyHMsXpg7RjcCAYRtPwbZfIX/b0PPI6BvaDrCrJqZhshw0VRt0CbNeyWTI3/xQcB9JTNcMLpWB54OZVzTdhwVQ1sqfdmQAgsjG4pOjjRTxoG4Grud3sbLKMS5H2Av5SP17A5ZnDXEM3msevxEeec/znIcCNtBTf1ZFklOYPgr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lRpVV2cQ6x7EK4Gx3MsdySVo4TyAxCO669g0Q0bpxz4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "O8H2L3WnZEFBLD3ypTv70OyLmG3lqLn/LWCyVWfLDRmiMu6gVmSwX4ZnUet/QUFXBJI0TYCVu2OEvpclKqSfm0wowVkCRAerOr2OdQL/KyoFHWbdVb/2tphBWlgYDIHedDbGlkd/WguAdTcWPOvUxLE31l22B13XA+/sju2pvL03u7zKYoPQzqnVOy2R1LeT/wD60YpK44q4i9JiS5yh1I36Re/GoAALulS+5OZzSroDKuduiMdhmBNa8ptQ1PbIZzrfliXjpBjbZ/nYUiDwLEdFHJj+UcDiguiH3wb86KXKaongwOWFhCAByMNOW3DAfEUDS/7zEUiAj8WzwoxEtycVl0o/ZZtwBNfEcsaUKsxx5t+jXZPrIuUQ8cCoeEoulUWx+RnRTF9GhS1xvHUhNeHS2bWmRW/z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lS+R4wmjY6nRMslGPQQDJabHzwNX/Rd3HgzOJjP+e6k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KndPrsAHgUXR0+TBKN3TdtjcFqi7gYNp91wcFynCXGYA58fH0aktDERZMqiaTrFuc5LXp9oR+q4vilm+ojOkZ1YLe0h+5vZ+okFBI+JTsvsDcmhROxioUtUeYTsNAbFiS8c2pQCWHq7U8x1TejhbI2wrng1UhWkfsInxqrNDMn4E4Ea+mmCDb642I8FTUEywU6KeFOikdRLizCrZBcCWyKqk0sgErjHFlgSw/Nj8Uw6BbvxB7tHZnpBEKKBQq1JjkkRK+676yYKGYuNDOSq+bGXhGBznbgXqqOS5pMTs4hbxrRAiq4OMHHtNKAO45vQxM5/5kJYh756gChNF5YeS80CmJa0biYjwXLm0cMq9LxQhQ0aAyjihUBLqDh7hoqTD3nEzqT2yk4CHh/QO1jMXaxLaaMenxIex", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lUZ8AK6xDLK2xeYH0RsXAShprMlJnMcyfV9aPIybaic", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9b9+lHqEF+54TrNBISARCPvN089gXQlxwVPSDf6MqemYIt74imB8pKk21DuZfiw7X1Wa0UpCp8XfvnWjAJCD+WhsfhI00keNmz8wQQ5cSFjfzVjQBlhNFBio7P1AIRPLbtfhWwphaGsOa24fnRgGQqc0Fb2X9mVGcfQtsQc55LjRoBTlowPU6dzbeAq9lEjUzFn2akHYHi11U6Ha8yiQyPgMnP/M6byyDODnaCLV+DZ4INSrZ6RyiAo/XOLE1YmrJGzkhsN4lJ67i2vWBaLfxQ6XhbO9YUNJIKbtk6lTPNmbwLyIajzE4SURvMH+Bwz3CIrDYLYWUPLQrXyKLzIGkNGKO9apTqm5cPu0e8rtbveUbSmVkhsozy6bc6IlvHTJCnH7mlXPAjz3xqBijeQpVJIYl1IaHAVm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lUxZnOon24pw1YspWP4xCp/NySVxS/HGpiZZHzlg3P4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ws0Kr3X+lm0LGiRDNHZUAaSZH/jcBZFFTptRtVSnBPGHr09t+eyLM5gYdfHFbtFnmQ+H2fzmsJvTXAVMKXYK+nORB0jiLnv0TWfxD58Q+9CCv/YKNQX8QhBQrEtjZremDP+BvZF1Zk1D5ZtRtBQ5CagY9jYeJP4sxRZhJrbHpclKXMiB5lO9agddAc1SICnXlf6vKMy4eP01MktY+wl88AEambVH50imBcxy9KXZUwU5uFrgPLTcZBxYt9xikTK2pngjSORu5260sPWMSwZ+T3bSUii5RD4IRXJR5MP+KSt2HkWoN2XcAWiaR+pvhx+MfCVEGOZ9aCWmWEMngHvSzN2UJns1JZApsK9gO2Sh21agIlbQP+DZc6/4yRlF9kQn8ZFjM7h2Lr50/YEnnGGqeoHPF1XWLApR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lVucBrfY+dh352qMx+Bkr08V9FNTievOAksp6z0C+zA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7YNXlLC57ARxCv7yWUZDNtTai5HeL6sPAPRMdwm0wDwiYE6FwjJ9WN2zi5u/WnZD/gqTYvzhLIIrUfnRsw0vxGqi39Vc/lwiKKDV5bLuQnMpvc/GUjmTRP75IMGKkFzYU6vSbLoTP2nuxD9qvcjUwNhinllvToERyp7Jcdc7BfZtiuhAttKT8GBeffwYDYx/FjDaK8EG2L9XH9pVmYn1v5pJzbr/f5BKHQm3qx+tCz1o30hp3ukijtHyWJWz81PkCsUYietgK5+oOdSsmxIREToHRSGbHgoawCWX11OSN1F7n/j50VH+I4AMUlaaCV+yNsFX+IJldMt1PGglxQFPSBj3xosovpP19ut9iYVVT8gUtTUuD3qoCgC+mlXsydwCaniEwY1Hcg7btqAibv8pHGuL0UM2A81+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lZ/2uLMjz1wTSCOzkM5ihHSU2V9w/fGTj6ctEav5bHg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KCb5jTGzIM1jvEv44eRVhIhZKZiFpoP6Rch1nvCTDNsB8zi2KMcUvbRhEu/4e0DCxpBhL0W2eP9GswiEvehD6/MpxIUa7ttnF2dUhxaohtbzusUJimqeuXdBKlCMIrejHRq9SZzcbQfHq4ngFHcI4awxMcYxWFXsQlODcr/+0C3MkYLPUxHTY5gNOiBkK1JXY+uxxzfDx70CmBIdbw1hxcMIK/Vx9S5RcMudCTTGX3OJOfdld/MeJvbBT+t2MPY89BmcOGfquR4Wm3HAEyhF+ennDkugUHYDa9XWSKN4WGJSgziYDCt4dD/WKZsmkq8TovHUp1i2NSJLjIQwFIvxCgGAs73fNliQdy2w7n05Clszn5qp4ojlclfYHm3GPTloII2NR3tK/woPCligyyKSc6ySGzatOkpj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "la6ddzSPB3MXB2qb4YwJSiH6Ux67v0vBljRmF2siRuE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "53RQrxSHT+/TYrKuyILsl4cVFqDRguEuhKTgW0eBQiid5aJ7wP5uWnIn5peQQopcyHaKi1rOVMKR12RnzKdcwtA4plKaLv1/sENXKi5rPeGUBztnteddZERemon3c9y8OHhB0G/F9LT/1bDhIxYZXqGzDWqRHgyk1o09/3A7+OTuV+c/wLlOIy/C65/KG77jxm/4cZJnB8zhVjpyfQ/wMWSx+ZySJUdP3GE4D0Rz3WxuBoD4q5R4c7TBs+zfsFIp9TRARVudhAi9Hb82zBSPKYOSUzg81J0NDWznQYm1NQsswF+p85m7xZzo5IyziQNwo8u6hLEFLB4rNBaLAQ+6LFIiCeN+OfTwdJ+cZUpPsFr+8Gl8LKM4pdg+Qx/9uJj81YciOqPu+oxbmIL2hyhrtWW8g+0Hzm88", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lawhq0MwlstdOaZVQ3HpypRZpUw0/7JDBoZN1EqPVko", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vlTYw6yNcoYEXdxuB7BSQ4dBA/NKE+w+kkg55CdZzubxWQEiETVM/CnSQwCQpcLzTmtwwoT/qQWOABkUKwy+1+KhcNDSyenQAxpgdyUS/cA0Xl8BGYDgdQxXuGW4hJX/3Paz/JW8r5kWJU0Pf7g5+1aD71tzTo/cYQKm3sHiWw4k57cnzLfJIbZasxf1vn+lG6xlyV3ASeALBxlU8STavdaC3mgsC36Hht9Q8DjEH++VHViliCfgmzkEiO9KJwvEdZ+n/TjYwIVzjSbhm9I1/nNOXk0zKWGogOsLPa0rotl+UqSZBz8ci8XlpPyoZwg0Nluw1jaif3YlBEwOpjtsomPVgCon4ct0+tFrmVRduyJoH1z1cZunNF9axmnZopRgKBZXAFba1U57fYMT6jVTul+WVGt9O1Cr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lbf5faiwv+l0htlX1V0vx+8T7EbGsnR8ZqSMYbbRBYE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0exMUK7tCArBAfnZHQA5n2OWp/fmriLid9pNxZzMTQ6PKQhpcyO8l2Rw+GnLKrVaBpUOJmY3e1Le610in29bLV3/UmeFISFaD1GvabcTjMz3J4Eg1hLvyhasbKGnH10TXP+O3qWsY1bem3YfyrV1Ie+WjvUAVGVDC4b4buwBZxPyhCUowCUYI6+O+q+viYvq7gtD6jlz1Pt173gNutFEwZo0kr13JPSYPVNKmgdm0Ba1NAMJ/9VgEdFSMoF2fdFqKkh3H+6dlTwna3nu+XfRhnr/TmClqhXxX52ForJkIu/EpHsrsbHUCoQzd6+lNn/xwqhE47RxXuTR31GiLpvN/eMGX0KwGyjPB/6wbwxmb658g2rbiRHYvdUYOM2E9JV28Fub5zKLaJvSrwM8AvE7o5l7lTIHRHJ1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lblxNx2XsbDfEyWW0AUoq9WQLiYsDK9cdNGnw4ji5NQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a/ereUNCr6kU81GTZWdIhz1spHv44vFdnShGhQbDK5bqcxtHDr/z05n9vMGV95p55guMexWxUIJM4U2zoJ55H522wF2DWhrHKonEWlwVQRRiyLOzjzGYdVlXuDpFzs1j/l7uGQPYnPDUy+1BfOCP3AJcbIrDJk4OLTZydhXAEV9XSzhfQzByrN0n2aueu3bWgiQGsLlfFvhvSn25wkWofPF4IosMxx3ystMPm5qS7SYs9zgX4Qmh43W9DJ3LnM7gUOR2SR8ywaE+TgnlYe4v7rlFzRJ+vmF0KF81NkTzUovC9sZwl6RXg/b3ACJdYO/LtbsedvFUaLjR3GmFTqJqXYoM0jB8IPPw63/+mTSxvVsAI3u/m+eTnCtntxYundgUfa2ua0t3Dn6QEXhxanKp+haaKykSCtFU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lcpDauPCyon8hNGQTunJJtMutjG0dgTULKDClCgKems", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "07H/ZM3A+LumbxTheRpewRFXWAxXPSFzL//7SZUWx4QwMYUZ5HNwPbl9hCSXim3bdLDzb8sT/nV8usyF+05iYVOe2SX+rhUSxT2QyraWd+/QIx2s8dtVKiF6RwtQqFzPkc4gaVzJxm6SqLrvcY5psfmIDgY1UPDPTqlSSjxAR4PKPCVYr4W1jsQregEQoJnn6ucWehoq/HhpBN/GUgl1hpqkHvgvuJo7dxWTUT44B2haZOcj82kaNiFvMYf0hcX0F7JzX2FoWvx/nJktTA4jz9GCzBldYxTGogSeVxnm7PbrdQUH8Aa8qRMhzg9iaiBrgR7yIbPuPWKUz7DLKtohVUStt2HYHSsqwOWZ+qkckydq2nyvkXBoDPG+/kqoblQHn343C2SrRYVlaIzv74/UTLKg8/iP+TAy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ld6gMcq+2glD4f8AQ3ulMd1IYH75x5A23KTEw0vnnXI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TgQPD/Iyiv27LJLj3MkTl4wylDARwAdOLlnxp10wB/7eoF/zYhJj94L9M/ByKjNRoF3+s4jYve+k1tYBbbelEi7nyhnigPLyPb+b6yhqI5vx/ooWRa+KQENpW3QyKufY0GCFTpWbxxNUIzjj4hsBw8NJJU3Xwq7sUQ2a/9G6KSW61JhRpWexiJzGD35JADS3f8I0HtN44lqPpsTP+j5j6UqoL9ktMQ5+CLY48dpPUonLPLGafXl6UiAeTyBWp1+ycsPkaTtH5makxQ/HrZJkTNmKzkYle7Y3XXa8j/MyZJf/lfZ6ODpZs+nPs5KRGIdp6byCZeLnSDUZcstfxboALh8HLMrvQQGHgR05OOptg46gSy1G0kRnx8NrKi2O8IequcBu+yyBTtg++t15s03yjUeisbfRDCgp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "le1+WGOHA1A8Lm00RGqlCxeibsUYirOUilSM24bEnG4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "viI3hdCyiwS2Osa9P2s81uTVlf2E9IqMML+5zML2rtfwot3p82sgib0U1Bk/lBbHlVlmI5h69XgmLBHaDYet5LdDL9sYGH6Og2m0KGfj+EdOGUMt8EGR9NLTc6Mw48WUKNk0x0VDG6Nmwzd5jZxpbMIXU99wx5mTgn/199el6OVWLtWvziLpIg+DfMKL39fwVpWlVBpRfoOJOcnWPj0dGXCrO4TfRuCk6V/nZ+KQRknp2taVRS66Jil4irpbPDDvkODEHTHghdbbVjwgAsEv3DRhNtU/LGlBTMdanAT/274+zgKTf4n0CQz0tpPBqoMiFup+yD8K42MoXdIBTHJCjTBHCgQJMovuGU/cscuDIT5mRNZ7tMF+uBG4o2sUPxxzlFOBBM3nOfju/A9Na5qQoul/QkYNf8LD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lenG3YfPgDT0lXhpt4oeShIXPXpjGptrKHpVFe9ZT4w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GF7XaFsN8tvTkXqA9fdYRPrC/4npm5TxJ758Q90B59eKBxSsSQwdK++ROHwJMNOnwdYYtQgfHBXqVzcRV24Zs4Rfq4u3P88ZTVHEFb6OjY1n1lmc0y4pC6Ftt1SWoJ6Iiep+9RFmd4p8+BJTEfLt+50fwcL970+VLJjr9ABPakpV/YTOGk9GwjZ+pULcuU4XX5bCKf80x3d6a3EHyNW3ggRMsfWdJM7B/EGkmFf/xJ1Xcetqr0oOPbjMoqGreMWU2DuTeMCYg2zhlrc+bUaICXs8hyb7K9IgyOwv048r5SZ9A29ROVQscmYejAlTMEaWrziaiJpZ8pKEPVf9aiMt/LwTunOInW461nZKrFbLD/omNO1RewvVXNfP6y+MBZqs0IIqb+u0vt8Pw8n+fdb/CAe6Qzs4o27g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lf66bT62ChJJcvrW2cWb6H7EUrojutT8P69jAvZwvj0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Z4lL1VH2o3wvDTm5vhf/0c0vztX6DHPUcI1c+vXqgp88ZAjXrG5Y3wmmmUv/RliWBI2RusCuWyEpIZMd1i25KPoMnRy72sBV+ezYbqrSyOPB5CrUgJW4WFh69Tn6pLpvPMBI1LfzJeuAy6LI1RcSltbwvetqolOWrGD3snF/mDmg5dDH8TT1ZMQand2VP31KEZhXOMKFX3JC2ZrnI8eo3etZLqi/uwgGZxwjcMdmbaHOS8sOJcnfyPUiFggsWRf8hi/7oGbcZBESQU3bBIR0BrMRtPfNdHKcanQ3pna8QEe4ua9iR0Oqgej5GKMtIqcjCg9/AQVQTI1g8Wd3cz8r14TzPUOOfNpuOf4iKcaklc2Fl6FHkkYbAaglDsHORopeFMiNPSWcU9d4JurXlVs9dL0NuA2g9p2/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lgDZpE2bYw6ogG/0dYrIKW1PHxWwLJD4cc//7PT5eig", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SQyOeOt8Cx3K+9sgWQH7M1BrLy9uWADLMELWQRkA+fXeMsULEiEltPG4/xQcHZR316jhsE+zg5RFlJAIyKJn6SK6YXx4GSaeoW5OiFdvCQNSwfM1Em5EU8YL6KSSWjiGOjs23BAcTU2sGBrL/XpVu7wznaPGdfyBqSeKda7M3nn+Fnr0uMy1AxA3yNDuDIq3ZilcVBB58rs4Si1sjLwkO8OlIRsdFTVyxZPN5KNrR8OQ+PUAlbWCXrX/qfINNYavxjoGx+Fmk1/jU4/3TD3ZPde3LNrni2J2LKLZevRvIpzUu1ysg2uHGHfwnaKyVgz/RKa81dt2d/5jJykm/E/TNqKGmLWr2LSmynEv6pjxL+ALNgLiyDspmFqDT1dhG7ayrZwqb7TSN7qFQwIqUQiPow0Vok2y8cIS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lgEVN9kz5CamtGNhGTa/3+XaClkWn3qPKpe7CtYoBxw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UJSXjIGG8u22QDO7sTs4+v+eKkfkYsqgGA1qTbHfDp9+3Bvio2TAWqdQ0GuwrxtYG7XzIjA66mGXwr+s5iQkPJ3oZT8onxrubUDePrxkL2Yvt62onaCgN9pblZGhokJC3cU80AJkkMnbEWxRT/CiXqk6nAgHYgl6pHKaKLDDLIwPLcruf+Pkde2hQmn1d4gE+gzz0voDWGhRyiUZBlu8zQJQqBNVn9q6oWmVSdOcoyweYgHiVJ/KdCh//PCEi6zh4byxkEGm8rexpO0KAb7En/smraoClIcOus14eSOcmGEhCVW20whvO2qv3zj4lAlS+ExKwfYZP3FG6YaMSZDM3wHHVFU22UM4BX7On8/om1nujk10QDU0eMSMTcQc1dfnZyHBRRE+xxZIrmzELsSIbQm4UQWBDkXJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lgyp/CVz4lY+g/8+IuMCvigsoo+OR3QLcXh753oxJoU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Z6KOGREHeEO6Hlak/7OR8p2kUX/q43k4e3tqIvfgf3oPP9hKPWn8QBsnW8gH4hVPUBXyW4fANY5KEoYNZUHc5BLcbWBgVWndi/xHJpWYR28iYOF65XFaYqCZzTDRWPyLuzoDLBfosom17mXA7TMk8Vphq2JU/S3F1eOxEC2jgnyKyI/AZ01ofPuwx2vqk8P04vDcoGGJImhLA4fA/+zMvGGtw1XL3E7/SbOa5wLLFlzYxQ9sjg3EZneDNYamz6S+bVU8BmovgPUkoBKqyhB5L1Zdg2E5hbb/sfv+rIJa8+22DRbMTrH8Pf54sSWyhKGUrlQ7AUKAZdjW+O5lGsnht6yGvXDvPPVdQ3pX+zZMgVipqOzsNEpmN5qtAWrJt3Lv0SNQ8nynkZCBAOVcY/53ByZKn0TBN3+d", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lh55EzfkstEc/whcjqXs0AYMxwFLU7GyHgr6fC6DwTE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "06ChbuFpvwkSOwrYl7i/DVheuJfuHtaaw1wtnrdkLIHQuEHfan7hxIYQN6tdYpHbp3EjbUgYyfotDSG6OCbSG5+EZjcc4pLqACWiQRLFrOuKWbik+3y5eTmUMDCTnTHIconxzXbKwDjQpcCb6grm3gk5f22LmW57jM52GykPilzOMim7emg2S1kwRxu8KDcn5gc2C8l+Up55v6hzQWETP0pZiL3oCdG+ETCp3N/oahIaMiuAv6C9FM6Yn+h6/AYi2dO911vLxw6b5W/V8sfqZGg1QBAhAoshbBEhOv9LlSWc2woiYaf9e73E9jLMCEWPwWrGEghDpKurW7ocRsyXeFZtmxXHFkEse6UQ0VSbmqMhM7Yv6DppTfukK7v7qhUS0vsIqll0IGBpwaZXIjXF1gXm/Hyok9IQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lirazbs5+AbnLYkZjKezoo7FDXBEcKAwVrXnIXAAR/Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XfsBEJmiE+s8vFfwyJiiSAoxpayH4I0XsrBkGDPNcSCHbBomumlAym2EcZpIEnNUZWn8WsDGmk74Y1LfgloawRb3CXkMnrd/t/3GkSoToXvcHyljMyuV+Jyo9H+Sb5ccUoSBNlRBhsJt7F6afqLEEBAKbKsPTiS5z7nkt5vyHljcuydvyounoUU1KLk+xHN8M4MRrkWZx3aN8pmJ1Ndr8kwyVyhn0QxRWz7QK6rWBG5bS3SahiCCtZREKiK2Q5UOXxK5N5BtZ5G0Cdx5dzHCIIho2baBzi34GVm/rJGTwJy1BLFH5O0GGx23qb57psR1fwjVtavIv7jG4IyylGyO6EJgIJQ/bHSz5b6rENxyXCWi6gs0YuWsis00FFg4VxqJMJIaIkYKHnIWB3i2iBK7S3SrbfSdQs2Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "liu3r+Y5OsTCbqrZu5r4nYLSFCR6xA6Z4yN7rVjFAhc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ys47g+fV0bTQR9On2nDxlMVTTpq/LwZ5YA2chMP4BObExCYQAtsLemWitoDaLQ3ZCs9eHIVVw2NlfOg2WGM1K1cHHe2aaBNP22iW9zhqeHcUYAQh4u4K3Hr7lgDCepWsm/tSM74eJvfO3ceDkxp6U5Q/i9+j8DSxf42+u7jaI3/9C31xnWjheQCsFcxQpMGmywWkh+4L7mlJmz1y3PqQ3yRUrVyR4hgMiY4YipCTHpjc6m+hcMDXce/0Shd6cNZ4suoOJ9AJrg90Y9jKwgaxMwaDfvzFv2lNIN9T2n85P07zgpyQEROuCp91SCM4Oe5I2/UN0T+lIfFHNLpj6nhJn6C4B4MUrlpnKj3qgqxICIJwj0xfdYtK9gq1hjfVlMlNPbS/PVUMGUJFfDwnqoetPpnZQofx1Hkv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "llNV7Vp2RXmOpbEU8srd5GLZl0vqv1VU8JsvThQw8ec", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ArkMKfnoZwreW/3QwfUOffBMRikNlj9xjd1MTNI9/k6/T8R7FxSVBVOKIOFYZZQX0AcURmR7MxeUAizrF2UxCXuAsTsnvVosCLAUHnhcSXTaw2QrJu6MqoEMs/b1nez0xzebo/wt2jUptPTp/LASBgX12DuQn8OcJDNi90SsV7/AdtezejEGY+KOP67ZCDNBKYM9ZWLUyqGKERr4P7PAyiZZVWKnPgVtdns+txYO2gFrGxOto73XPE9cDIsBxuL+9O9CY3fbym6AGYclEtGeHhUFeMgpDNVHs2tJ+q/6WkxEPUeBPhOur2R14rTwXEkJSDDye5I77X0CugAeXoYqbeSmE/FPrL7v93xw3ziYMOgCaYzhWsXFFZiTo9KhQoL/HzLieSd0eV+aT5j5XmCDUtg4W89jAuuj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lmSFLizr9qXX5wQB5Y2FwlKclXxVSASMiGtiIcdL/p8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OuK/Acwu7fKY3+EJUILsA4uMGsDXYSwN69ibTFFXEMCVmHh5G8KyUYXW8hemIZo3NDOg02HQU7nSZbz0IiyxWYkBYAD7XGpmiPMUUnqPnZ3WNumF116+57QjVxfaGo+XixPzx2Q3d4j6lX0+bLPZqaphVBnFzBOrIxUmKYV6QmZWpbIw17t3o/bdxvlCQSbVoWe1CewpKUje9qhxsbm0sVkgKMSnqagA0BA4tHXwYSpJ1TKU1ss/ntgywnytfGDhn9e1Rt75qnpJBFvqqeQ0etVm53GDzVVRinUizSB9OD+gAS3SpR0aVzoQVYN0Be9hqm3QkEvKtbmiPyj/JDTmCb8OJiEQ/xNOAUlOTrfyEzj3Dk/mFnW1OkC9jOl2KIDbx2FpGoUd8q9t/2+jEmJq410bIR8biXrm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lnjmCmLljioo9sb7HlyjnzoVB5zbOZowOFXp5Ata5tg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pQvh8yRyEjDIXRGbIvmrJ6tPPnCmVW15Jytw+6+5JrKBfSR1bYdz4ZHTYDkx9AWRCUA57dEZRVynWTFhDCa18chHRnKSc7EUKTsC0JDTlORWXmod7O71eqzMrndFk79WFKHvv6j4XCGPgL9JHb94yHcWF7+ILrTdIoBkz+KvtkUPb2X+Ry5O3MYIc7YBQwJrJ9W8ho7YwcmqGpQLxvkjpWfuVFsM7S7NJEbR4W5f+piRCsLQwm3J7rQ7OUGr33y6cpZ1PtS8CxWSycolaTuzK9qloZFEsd85kbyup+S5JpUDilngFKxWuZhAYivHZoo9AP2N5y9hyx4aS51Ty1GxTZjcUNqwhgLlVeB+AcQ9ALNDOhv2ibuYtPz97r8P9Q9TfTb1VHCU4UoP+rK6SUSFvi2NDtiPgX8Y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lofTXVDgFXcMsPAcFLnZzXac9FYj6W7j48dpe4Kq+88", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZiOHF5Ak6CaEuEIq+xUMVPWqqQuoZtzu5bTK42KdoMkLyu3Z1iBa7nSv9U4W4xSbqytS+34D6xSloIHvZhray/HzpjrJ/KfW0SQ6P7n5IfNwdDN3qzaLy/ci9Gw31Rs+vBYiUsZxW7+fFXBX+BMD49i4d/xRGTCgGp6yoqA3Mdz2nMqUTpHiqjo2dm7TXiPw9ihMOLY/BXndNubZig8i2j4HgpRrHFyyOfJ2EVo0U5JtwcOiCWM4x3+24XQjW1eAw7zYbPhYAeMh2ZgrH6/C8OnhfPtklwZsXkaAwnCnj0OjZczycydSOYX+Nt2kGd7YHMCFwdbmxfUFVU5vAC/IaMujgNwROp/GDaamh9SdO4y40SGQgY3sXrvBIouZBkUJ4mWGqXCp/rug/sD0iFDC85YP8MhIc0+E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "losQ0a9+oBJrEEOb+HNTVSVK4SZS2sxsg1y8g5BjE0I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LP/6w7nj65kocvIINf2Q7YG4VHuK+3ap/TDsH+mDxiwlE25x8tppSM2H2gfj0BGmkvUJXSSQoEK2EnEV0TBzOX4AIgkcKs7MYlCxYSYmrYSRMfg+8awBJncQfhSPdBSAipbdwilg3Al5bXvpI4X2VKNUE/FoJlzATR4uWn9/OS0kZEbn5SCj0upXiXpPBKZyBkQ8r1sI4ceD4jRm8trqbcyT8R4fa4zqNIF4vWB9AuPqFz1Z/0X4XWYwPMZvFhK0V6F6Ef6j89jDYgL/wBWPThlZ3hs3wNyzqZO+Rt0ONGjISKOQAl1Znx5WZ43KeQZod2IvXYxQxwnbfwAvj/PToXQa9bqgMGIkeemsW5xt0k7Fa2ja+RY2zXyP8ZfkXrxiY63gRIIUijn6V5NtKnrc+kYApIoLyVt5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lpBX8YTqmA56+c6HWGRmc4etcFlTbCCoVWEZAG1aDyo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pe5vQZv79rhZsYdiUU9TGqY/EpfHJGgd7skafM7sdtipu3J9DosslC0HMgGOtuZ7v+J8rlKMMoRH0WKdFIPfcSaFXmuuMWCQZPb2FSo3G8jkm6FtBHg29ha+4YuiD7baQ/U5pcpjUtqMtlCnIsblWhgHVBJaciOPyfEY1R8qRIdj8gO4b6GsCWDgxLb4jpZKSqgKZkx6Dy5Sfe5SSSRp5Y0rIZ6RDUMufGvFBldjGCpJGpjClmyxiqHrWCRKY4AmdbQ7pIPmKO4TI5zmEZ31WQ1fW9v01j5fhXJzUZt8X3KQOaurT1K/ZR4LP07hJ6kFaA08drFs14fDvVQ18IxqCFP9IZBnJpnQOXEsavOXSjsfrtzahEGnKY5Y9wAhE2Z9SeTT+Bn217W8fVdITVfYAe1wRIClaN7p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lpFjfGf4Rabky+DqYMgEOMzzVTJKa8aEvpBbr88qbRA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cCjUaKuhHwP+Te2jXqP8hYjjs+N8+3QWR+JE/4cp7yng+GHFJKoMV1sKWXz9Gz5LcCFzCdFAHGtJZJ8VDPWj09Y+1rxjliTEB5H+y6QFoelbgBDfUU5DzgBZJxNwWJ4a7zDPzTgmLf8YllWJdG+J/OHdOMUq+vPc4Yz3wcqvJXsShq07zHAxz5k75ZXdTyZJKkwCKstcgzCv41x9R0R808kBXwBSE6wtt2MfYZq2Txaty21uo4Eyi+f+isqKmNsYcVHN7cWaUmkuAdCbQDnjDQ7x0Z0Ck8EnYpW/fOuePBG+gIZeZj+UM718zQD62a4U/quTB+vhE5MMljoBDNtBAJZA+YLXKJIt/6RiuJw5vNbcpMOrufEqfPTmG00CTomRuu88Qrrd3cEcEz5iAavP9jM7RNT6V4AV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lpNzYU4NCq82oYcVPZBReBrDNXnwL7mKwYphQta2GF8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kLHPZRz+OhfPr8QP6hp52OEGKXzmnVn1wqw62elxF5ClDnTgwgtz6aF1eRCnI9tWTAZQ6uA7te9Lq2X4wYsMXYz0tEKAfCWpRbJilQj/d7sACWhOO2f/0TyEETeuwz8GXntUm7TDuPo23fQWwSqU6ycowaI4FX0A6StfOug7Z+L7sAlVH5H3Gt8J+1obwNshsmVwjpMqUoGGg3gJI/3+fU1duIOx5auAScsiVHQVefYKW2paV9WTZ3bWIUANtTcSuh1sKBZCEbaoQAMNP5t4igdb95CZATfelNcE3GD9g43hEyM0MpAX3zEPxB7FCh4SKJHuaU9oZiw0dGwLxMf3GDy8NIB/zSlywRT7J2cGn4vGZJmfhMwzxHOpJeZYNZAhdNMq9aWpEWv6dw40EP4SnG36c3CPkLMp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lqAQc9rsTo4IS0tmeiJXXY0gAK3yuV45y3hKhXnlBjA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OJkQ3Ur7tMDMFBH1DloNdvP2IE/tK9cmdbhI8gv+UsKHBfI8ekkXe9zycOQD0VebEjAyzZmepK2WFATSDJidK7nC5LgUIP/eYwQyzn9IM+Sg55UWtnzDKbidwIm/IfYWCXxagCNlsZ5zFtQgXTF6IUSe4CbcNapVkJ4APrbBuHM/3orYsLL6eIPQ5X8ekWBCPfIjYrEa3nEV9caz+Zowh7zR4m/jNVgaAgc97mf4I+0cREi9nNO61Ca2mWTmY32gUxM2REr+pUdBgLZBdMfj2z1+16sGd8vj4HlxjJOoaH+OuR+zhuzhSFl5qEzRD9+EBl8+ISKOjLFF0CE5XFc42AOeDjll3Ip1eY0I14gC+lNcJgIWk5NrsEc4B4QpM9XOm11aNFZpIDKGExVNbCqghfNPGMBFc+OB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lqDbFVpP4icQbNNnOKgZySbsIK5HP1bWDECDYk3v4T8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xI/CvOyalqjPwvnjqC5xJf00/QkuRkp6dGvGfh4cwU5SYrGgyANTdtvuG0kxSK7loANXuO97g9cgPiGOY35PAyaw09/7cWLeNSPACkOkSyZ5bVzasXi+5OXeMOehZbzdURyZePdIV/lOh5W9WscuW1LXzRJkEEOy1Akb2AEBQkxJTrSFqXNzoSP8/CCm+LY5tKjhDBsMR7H0HyijRSk7VXYwfEWT2p/RVknOt76i3EFgDBR41/qD2qGxSyUq+wqeKMH0IuEukja621AKqkGB4QpCWruOiJIkQ1NriNWpXi3bsReLyhnwJgo0VDsdrLiEVReX/kYwd7wVdJeBF4ugPyY0YgYeTokbwYTpslT3K63xYv7e5W3HZwZiRkIcpJHw74iy+vRMSi/XGPwbR7A2nPsHyMed0X47", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lsgYDhHqItTvtDmopzePX1BhbrSzL3/Wx9Y7lkl+IuM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aB4ZnYgx5CQUwcODLhP1Irj/0N8r/BmNkPnlas17UDJLSGE8LYVjuXX5ih33FOE9UWniSKppFwuOm1ipC6ZdXKqGMkL1O9Cq6O6ZzSbKClYD1ScsNwiHJXbbImqlehK3fTceOcrAXAllTS791Wn/ajPYwyNIZPiNs31iuIPYKDLwF68aMl3E/1hp3KOyugVyhkEH+F6egwGjqEL0ldg9AufZEmiXAFwy45VarmYasQk4duv4Xb8EpSEjL3HSDkVa5Zx+ideb+FSLP3SfftsjU2kz2GfOvai8pUo22TIwg9H8d2Lmd/dTAYKSVFe27f8BL8bbJOzsKfGaHcEtDwnCNGvi7txYuLX+NCWjUCutIfBsaMBwZAyaSiJqoXOVPN5hGCTRz8yNo3qKAvPXqV/1LHJfAuCGtREU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lsmrALdhIzASc3fLRNQlpluIrgzb9Nu7eKu4UzJ2n1M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7hwYumX75gMOvgh17OxHFAnKJY99FoJAsWuEhq1zgZ16eqxrnrEzjp6p8AcPn1XE0Ay6ddhR1S/Pz8UQmSCq9ts5qm2erW6Vzpum2eBy2dAyO4tCNeccjWuP9xt2H8TTdCnsFD3uv/tVOJun6dFPH4NnzN48lZPOMouRlcb60+SQZhgtfjebmDjgxdOCHlCZeEJt6aFLstoTR3bh86JOy2Ffn/std1xal7/K5W26l0Tv7SFfQz/fgV5CWzhya82PVzcrABW3rqCehBzAb8od2sjtHT75He/PLK1igDKqrVq+4fpPBkWTni5sqCbNRmVncFW+Uniw7Pm44FmFuPWOVeVmGp7UW1gGrRJCpNPHl4WXarKth+IFq9eeLXfpS6n3zKItY+5/E3n5x+kHsjkvWf9QPxZASh1k", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lvjY0FsumAzHekFO8jNyiTh6Nt42XjPd9eHTZF6qD+I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JjQ49CEK9lUwF5eB1jw8isMWUtZLIkGnKi5opayPAN1GHSWG/MGN0tTh1rNQpFW5vgZrcpSPh64Q6Lwf1JiKEerkt6yGGwlEnNrTJo/zzfvSSM2CS3vc4N1ze28rcbNuno9q0AX2jpjS3KMgn8ersX9OFCi1by8NuL8d0of0WyIsGMovh+qK6tfEbzvnK2k1cHhcGji8j+648Xpj3113YG5owoQBYiyvyXacNxSlqNwJ/1NLLwxFmRcCyZt/6gR6nJPfPP/UGalzMj0eTfhf8JcPZ8VanQl/VI93TGCbMiomFlTUcsECgLIx/Ue6c2OYh2gDAWD7gJoCL52/PvYEE1DDEbzEnWnzRXCGzIFzqTNX7T/oNdKqNTJkO2X1ybnDwF+DWs291EDlmuQJ5zuJJoCqt+SJQwmS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lyoVQMBKt5CBkI5ppI4HLwpLY49gDJt9nAQP464VpFQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8wY0Qu3xAFSZFdBrqLWuGAEZSRZ53ZBEWZic0LbMN41Mwb+NBp28ticAPa27zBb5CHCDXMyigxtAqMqjxjNmS+Hz059MuJNarYBWKdoMgy1QYoSxlafn4jbWDB7aP2j6LjR0Oofz4HHwNtMShVaHLoUf80dwwgBKWRfTODdjrM7KQcFZVm/oLA3pdXONonQKmp54kGthyDbVGVfhbkMzHMPZDMH3pg5BPKTVsS5tH19VGVoNfQszeFJBQI15tNpGqWxJmZZyxkW497CaHQUGfSXeOUE6h0BsRj8vyCavs+fjRD9phzGiNA1n+vDP/Iw7NdHHcS5H29Bl1M9cWt4Uh1VusGIRIPFlMGnijN2m+F5fXOayuvV/vPljo8W2pdlkF8QZeqswoeEx15N58eL4QDLvNX03s+x2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "lzbPiRkcwsPihUVFAXfHdaTeIweS4o9Lxrlqwm1TpmM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Six9SjcGe1tCrjP0T9WdXmoJjQSn6chZYUX83L1J7zsSNnnZtFs0EUNXMe7CRUuyAXtAIHfuvxLOkova8pELvpQGFKqRTb7RGUTrgdH65Og6yOCOVxIYoHA7hKXZp8FkCApRUIfy5VLHOMNTgVGhxRsjjhLa3Pe68aQdmrF3uBaY3v0tgd3QuB4AIALghPHR0cK4mXtEaTsg+w9WKhA5Dro2dsFg+6WeDTgUz5Xbp1J1lM2gK0SnfQtGKkiwUzzR6QlrH/iGWLYlbeia0iiF22CoF22wRPdf5sMkQuZC9iZ/AznAeT++WQb1mW/voN+C+zWAIlg3MTfkRrM/JMpvbIJ3Xj0eRiKbxQnCTVMey5Kcy3ewtayYC81iHRnJ8EW/ZaHNm8qHIdZ4foYplnz0ITi9VKrBpLXC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "m+iiDN2u0punp6GloL08oPl1fLRXiqFAw2CtBCv+pxo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "No6POrGYewXgd9U6kFeQBh4aMvN4gRNEFcQzufbp+RawLe6wMzOF1/dabMKVZZ6heboENRr6UqZRNFGbrwAa3RLL56o7ZIqZhTwenIEspq8cxGrnXcVGfKDKIv6JgZu6XXW1mEy4eHqTNnH71FFcfmPtBdoGQszHuw8RVgJtdTjEDpmgIk9CRWLgGHWzEwFbDV33Ey3qJWeEmAUxNJQG0tdAeJEssXIOpKhoZzl1qXwRL2slw8fEMVKeY2G7dACO3PYQvAbJqry/rAKWiddNdWs4xTALhYRyVFmQ+fIKspE+imSlZMkEO1Jkr+BTw38mnY+qYGePIcxTrTXea/uuPaqHPPSJzt75QG+/+SxcABGi3ehJFdE2LukFd7w5F/NmBNpHTBGBasLfU0Rymhz/DdsRX80o+elK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "m/baE2vkKWvYz4vleRBl9GpBY+J427u9CvaPDmesk8c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aSWS+aqjfyIzNPZ62TrVvu/SI39m/7bcap42MNMH0WvCuJSFRAesVv7HQycNa3H8QgGpsvDyB8jRphMIVmoKjsehhoshNRxrzKYJTM0z6GR+1h5jjXyZeW4IBghSB3gjokfjq6xh47Kie36rkaJsHpt+eKZsCrA3v5bk+OAn028fWFtCSvUQniqrh1CX+XMYQYcaPssnlmNV8OJEu3VzGSpoXmfwheUMYpnUAnIqN7hgkeaWSZAph1aPz2yAijp1Bkkp+1yd3HECrTenDtq5KhIQ19zxsg3YG74gcLVuBs+b5aKhEMPvIichFN0RNq0Iv+kmRU8RIYPXQQwRHY6niyTWFnuq8m0oESDQtaSRKgaWUkYw1pMGAPrEHO7FUjnAJzvhu5jYGzlV8JhZ1OGV8JgAoCldafuq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "m/puoE4vlbWH53QKKgwgRKBQNaPsdKsjKtJhxsHnqoE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XGPto2H4Z3l2xqAnrOagkYPc4RKm6HOK0MF4z4H9oCflmIcG9TjW2t9mJtQQYt8cRZ3UNKVSAWsTy33zwGQ140zEug+lot1NbqubnNkjGSoO7nMXAKkxiW6rr+EoXGMik1iKleOWUG8XDzBLy8efNsXq4V933fJ5htrsFH5548zoU+5L3vhkhqKgRLkd32EpetBpBOb3LZwzsguOTvTA6ffVcLfp59mcRmMTROx17BgpwtKmovJlZMEfAPYuPuZgkFKTPjNJ325XhU9dV0AzUHgV/xScoYf0U5yEwOkezBSGjxrXZnHOt90cZdFudhlgw7jXaE4cbT4z7Lcifahc5GSL1UtVkYGtSPsjA9HvPKwUIlQ793XaUsPUDAX+XshTVdaP/yIjUanUG2bwya9xN1dizCQAzXA3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "m2vpZj13B1p7ukq0HwMd0eZzKTl0nci97iZYRN7E3J4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uzu+hghJXBwTz71+ISTmyvN1B/QzV12srEjdJyWVKz/UFtX9S70YcBernQZAYLT54T0lexAx/jYNjFJ01N8jBoLU8/XdTwIClud4fyHCibuiqPJIRRiplYiLxmIzCQvyyRiO26cLMmYhdbpJWVTrRqqMzaBJLrm6NHC2Jfg+tDh/pySsNEJ9Yg9AvyXcfES3DbZ0qNE8t+CRyQfM4FyoOtOshptZTVtd+zbsQ0xXDjgIRRvj0FDq5Sxi25ryEKF3JDUzBQz6t/fLRuORO9xYbH6CQ1PAUsBPHIsixdquHJJx2APwuYisrJtTgF9Xx9ySgR8tOGtCYSEm+Q7eNH1gAsGQLvySLz8mk08JvSRIgvT5DUJQw9qKv8CEDGOLRQxHrqp1PP6hCuqFLvhysPeHqTasDldzsdN8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "m3G8XPIEi0TMO5Oh3r7AubqfG3nR1Hw+wlkwPCWOg00", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VdOdaSIYSylatsnUW4PKaaZopLAMU61YgxYkW5XJUBl8zTbDf9jv56EKOe0tHAIFRhoTdKGYHc5jxdrousDV9slE8qv+SA7Ukgg1K6KBNFYWGDC0CAb/01GBv/Ub7s9PBweRC8g+VBDw+9jYgyejdW5bbXC291M1eikf/ZQXB3ocIY/n/F1AgaaL2Rmx30kWHdPXpenNN6kIj0wwpA3CYpetwWG19jrelAZ48Af2KrnuOg5n3qaVsHVyCgAqW1EKeWq7Ep/4gj/bXBMjaAhlsw/c/UtKswU9rETisfPiwVtCvwQadBqtjFK9FkCvazLWNtml3LxGpzNQfkIkC5XAyVSCSgt/cET3N3sL5p31dPcA4+ihpZRafwpwryVFvkqlxTcKoWiScHavmHnhyytU4lFDzNxCJNSF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "m7jRMpjah/I0Fi1i4tQ81Ps8CV/g2pf/hrNsjKI2BHU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "b+zJomsuF+zxaVFpdt1/8RSykShhPddb+5MtIAD+RLYBYJjyx8aKe8sQE4W9Mkfgc5+8BgT/SplCwQ7jDEU3Z8myw2AE4FfEVII+W1mgC6Q6s2z3l9dAfKI1JBkElElBc6n/wv/UJ858H3imu+0+BgegXe96Pz++FGOXjZwfdU1uVp8hUvrdqzgJpqOa7Fy+2/BO0Y9TwvNfwBtD8GLeZbvMsGRwq1Q+L3iIQkogHDz+H100rJDbuCl0zhls6OqtW3A1RYusRriZ7cITkz/PFQWjyeXxU3RtjVyYeomUsrn+8gvx0Qq7zMYp6sDqNHOOgGvGezM8zr8nLD3zRK61E/uojGWLMeTIzS21fm00s35IayK00xyT32uPO24PcZFSEHnHTf94xdwhyvgiEkVv4AQwhNyqSISV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "m7sBGwnNP/DIvyRXrLFuBYA2Pp6Kc+h7Fb4nMzbNM3k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FYjSdpgTRka3yP6gk2VEuZRGCC7D+BBzitZi66Y0HSftxN7F3EiVfnqP8QKIH6gCyQDmhF6uYJtIGD5z7tgZB/2mzxHb9fqRCd549qwgdwKU5QPMhc6h5GeNrOh2bh4Qu81BjO3g0Y1nxo4BbToiM3PmL20BUlPRoNYSZozHPtzw6fM8d4P6MyuQxG16C/qk7vB0reRnHWODdpsS3VQxlJq18x1sFnsOwkdtG82OBqCMqzhDAV2g4G/to28mLhsbBrTlNbXw+chL255cSNOKCXFb4Q23NDbJGMT1U6a76mLHA6qPVHtVTpNF2QbefAEXV1WbZQzlGH5v/Jt3KRsAE87ZD4PmbB0tVjvRNor7KqAr14mbSmmEnzvYnpV6GlR5lK3jghit/KmE4nrv3csmOv2bPpnC6Tys", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "m7yWoCg/4WNpHpfsZEWz4fVuYQygzKXhIk1XJH9QJrI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DOpu9b7EbSzOFbgqaA1FRPzOQJofY3PjCM+Bs6qYd680UIYT3RXTJDoNEH1M/EQeTT4cd4HtSuQq/upN9+fCY8thoAcZoyEV4h1apUbK5qN3Go3CzqdLBmaKd88CH3V5W/vawnmj3qBGiudtnJrQRHLWN/Sg8U2HNQ9VNn3uW7bErLSUBF00iJzyIT1wN89v3YHrIvPd7f4V0/kqwmnny9pEiVHOjrLwNb0Kdt37QH13UKxubDq7zudIp6HRXcrKS2/U0R2tnT7LHsfZAF9p69D9JSQorq2FSdMvUbxO7Pd4HhzUmGDEtbW1pw3PsbCa3m1c6JLnKC7KZ4ci8dLeybGo76KKH3NLFdDzzWiQJ0io9lBPiYtGsA1u/knMJiQHaGEQTYEyfMgd25DcHM23e2E7f5FXEC+K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "m8LJ7M0zFBXUz6kzZGq1I/svMao4+7FzcnNU0+7n+XE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5V3sqwz2DsgOTfMGQVc/bkgW4fjZqHenCsmNETvETzGcpJxex+fDaYHtF8wnlVe5ceieKURuw1zHkjW58ZTkG/bJrZETVYEBJU5y4MEDbhCbSg/dX8bzrtdBrn4u+1bitELm22QlnKgkeoOqsagugvBUysg32o2SLFykXDhcOOghLb5JD3mzmjSmGufi0OqNekMFpWAt7ASFUj+poyDI5pdp2xABOM8BPwQiVVN5r+2QFIs1/EMIAFJkgtDEVkCYKbMADt6Py1O8SRZJwjIngHhit1rcarJYPYN6pNxjOiUUMnwn/U7EZqGakpE55Bdmr8Z4uJ5l+vhDOZnL+ifY0jtBYdct7tdaQXmNMsqo//D7YGSwAdO/1EfOf2lYM6LFgA/CLdnc6Z6G7MpkZC3wzgNV7X4vOokw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "m9yN3GaZusnOB5ay6b0U358G0oyU2jb2JVEjuBa2SNQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ltIiMPWOBDoQd7WeoD0kd4ZtFmIFrLqEsGi4QdMoyDXLtiOsHLikTWTK/quDBEGOIcSPgt8nHZ412YzSaMTd0u0WpNQPjcSOdi6XGm7omaha91PD5VLhZiSTiGI7Ly8pqzkAduOFslppcsOyDWWjBkFcrZydQriZF/glVQ7b9IY5S6psRxqYU4TRSsTdQIToM2/pOTN8t6qAwy1KaRvsu1G9drAwZluzrsy3rHt+qTp4gpsBbuq0rHtB4a91vokTOBCDQd5lZ0g7I1vq74hUxcDMsNzS3wyMcgW/kzjXC3mKxIBtYbFuCo9ym1i4roly1GMUbsh+y3zABIczwHAUDem5ZP/D5ywTrztOe4PdRk1C7z75lF8OWQriaviWY7lPAVG8Mt16YyGW86GgF7A4UVvs8StAKut7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mAV/k/nNjxy9e2leR4FGFt/+B+w9WB+f6Ut/tQSfHz0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lR2lYyMh6uiS0YOcK5CJmae4AtE1xXcFkRxbBsxoeW17i/im90iHtYVxJkd5AtFY0EeeoBNdLgUAtdFRJ3qgTByikWB1GFOo61SOFcLvGi1Oa3wKqOp/OXiEB5MC88/g3T1z7FTTTK37eWFYzC70lhZpfBVkFYlFpOJEs7aeGMKqHw8YhOPcTtsUJZex6bRYMWv2E9LrLE+U3lHqtmtKPvOkmePhLkHU6etfTxQCANZSUnJisoihZlVPWgqzekZi6rvn6oQKio/5zhYHScCrSiP7JXVJYaEuVwVJjGXedygNDVvFzhkYpLeiPWLhHM1aIZMlFah3L/yCj9ofRX41lDd3NCafiCV8oGxOE5ydzXA6hDsRJPpD+6udP27zdJ1mHGLUvdEdMV6POfOO/yNNDG/UF5P+eWXR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mAuQKt/WzjfpFOiJj5YZzuPRzbZcg3+DilvHcMS6Zj0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZzyekF7bVkleuE9l7bcow46FVk0vEyzU+72qP1WtG1uK8Fhx+tSx3y0xM5NRDBhG+jGLaF+jkF1ard+VyT/qH0JKdoBzY0RwCEutMq/Joh90wMn9VyRpgS4zV71k/VRUunYaleax9Fz9Yvws8vHFbNm1ylAgNS3sT4LstPinv8cJbjbWp2qVSG1EQ2fLWuYIzC13+oxXZaqp8jjxoTSX/1dc7Z5IttQMwCCHbvUU9bC/8t+tHyc9thxCPMtdv1Le5f0PMmVo+km7GKr9XwZ2VQi21ih3MxOBDBxdV5/1vpj90UC21UnoEkuNCUJKl5rCUhIlpks7lXjq9fJ/qyqgl77uVOpx59xqvsRi65AX/gYtbBy9UZvSj9spdDD6muL3iSnuA+WcATx/yM6H/qSS4MK+RGt7oiGf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mCArXLFNEnW+MUIEDDoyhYj8pwWzW8zFtWHHpp2lnQM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "01AKe/S4Zpkc4dfZLDauCSu+X/PwRW2xMUrXAzp66t1QQB4wiRk5kg9J7dCCTrFYdFWbKkZsNjP1b5s6DDnb3rxlqbx/DwUmi3j73l62TW5f2Rstoqw9iRjg2P6Z0HpUoiIfNLsSuktfmHistv7n80C9rYm2I5Beq01mJMy0I90MPvAOCcknFjVclnoZCzIOvjNG2LwS4j2W2nXU7BOMNJ7NmDVmHcuUAA/Rg6jL03KCorcDgttzrnqf1R10WPkUnrvqQR0T7gFfscuMPzTNqksIOqdeaPuVTJ4/yjcDKznejnGajB04b5z1euMA5oJaFHM2zp8TqCbhVd4hKAkxleWPdrD4oUf34C3Hwp9gCfYzGdBG0kEzz/+X02QY/ltpqqRRFgOq/SD8PPIf4LBz2MildofVA7j7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mCYGtHinEGwYFBRuYZrkfhC6+vhGDgHxtxIDDOgGUQg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "D5XddY8/HtxtBoMEAZJ8KSjY6Ai800FzC5m8zDV5Nwtu4P4iKt9m3M8/vqCnSq9MYGwEbbtK7RGWIcsJ5M9BqyKjSseQcOCllLjcHrharcvDJ2LSrCHNSr6dM9sA1RIwPbeXg+XJ8mVUuTrbIEeb9S0m4aQPFstsHKMhudho9CutDcShrozaAJQ7eElJURq1jQVFHHxkCRuv7db/2wQcKWajRDunLoQ/veTemf7+6VJRt6T0Q701oPLDMD6OgBwwspNC596Jw5/FfdxkDvM13/ZfqCfmjAuEz7Wibt0VwP7ITGYLl847QrL+1lhNglF9/gVun/fdBlpgHtWmrcg0rs2CRCSdqGHTtSvf/gyUoplmasAWudXSd2kWiPK47WYX+yh63tPLDWFo5+HbfheD0T2DK1Tz9OWV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mD6xb+537XIH9WRyZVKHO1U/KLcW5XhPyyQpKhsIVRM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/zMP5oiKpCSmSCZCzZzMY5Smt4ZQwTg6Qng4QjTePn8Wv5ddR6Eki8eF0khcIO5U7T1TmuPgNYY4geWk6EIyOvUYmGyJ9ec6LIqPP7pL19KEixn382eP2gmuuOxO06Lku752VOUR+IIbQgGRsv1KpHu36kAonQVcfmOyPCCzcU+LxUKPKpyNn9rf5QUQNJfr4pcMeUU0T5TuiDQvJOXkYnBpeSaxad4RcDb4OKLg6oRkCtQgCRIp1RiP7CZFB/18qLdM2PsSJHKXX0PUVZ3Wj64III3BjGc8fBViMfukJhlQa1tOSFOjRZnIzlPb4kFiBg0APyHioDAYa4g7qzs1HLgSOt8l0+RLmpE8gLKGIW5gmt3frxiPBcPdIoUeF61gbKraKIDSyiVHUVIT5K1a8Q2eZXb40alp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mEOQfDNdyfvs+S6ruwWosXLejTy/ZJhx1gaiqc6Y0EQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fX3ieq1EqzZOVCLWNqBgzGFtaASscT6cvji/cVkVL78opayexhjLjzRs18MWbyaR1BzYEuSQP3GbOyxSZ9WKa0jSO/Q4ArnszcD1knfwn/ZGDItiVCXeSgGBiqN6VRihmWtVuEsU4ZNnERFxfmGRCn9eOCnTA9c693n7w2Sy/wcT2yXzhRtWH1ljLDpSn50AFCwACdNJNU1Hxom0Q8ywak/NcTXrx3rQXJFRQZ3+V2AdgGgbZBDey9a8XhvxvX55uyelRgC9IJJUwIwPB1ilNwmvCZP9UMmI/yTD/01ACEU2OblSaxyBhN2VzfyNerJpZVrtGtp4qFGXm0kiBiiCSz1fnOM70DvFzZPWo3wcdVNDDlMtjbB3qOEkvrZ9R9/Hvgf2y3aL8KTtciqjpR2e5875vy7a8iDD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mG5gLOhG3KDxRN0m8j9r1WdADAbmvWcW1B+JYNgLhLs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bksWNC7r3FILViYcFgwme2mQNe7afN+1mJfXSk5wiQY431PDvTxGaJurQTsztlJK8Phg1Nam3Z3m7gd+e3nUuo902i7ocxyVQn/dQHeNnpRwGxprhupdjCsYktsF2iPgZG+psHBFXUWBvbVJad6D+tiRCqYLrdklmJstSFmYl4sHioHrRb1Xi9NCfYTg3wNwaRKDHa6qCQN0MhDV6A/d0h40PIU1rb7LN64MzQU5FmNCQyls93jee33B8fLhQ3ZjEPmHIoiJGKGmxS4c52gMBPvQ6veokGUJ8IoreleRRkCGcadRZ8WXi3zt+zAUSHfxoWsQJaHLsAxQmPwqk6q5mkpfUXVF2XJJVhTbQR8a0hz0UqU+nnTelU/rymvRLw0dKqIPuDYfmQtZYwqqhCFSyi4APt/Y5Py1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mGBrzdvFXA2OetVrWkXEah1haZ6Xo1ToY5+KZnCKtoo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QT+7bEC6DiaC1Kpu1zwOtQuC1oDSMp+wrJ2g9+32+oRKU+tjJ54k9RFsQPifo71r6jR7Aim2AiRkeiyT+eL+ojiKv5uO/kRnNUO78ksh4QgpmzKx5Wt6g2ZaiBwgeZncauyBA4o5MWTrodgvvRYS6p4y27xFl8mIcR+dCnTAJnRQpr4PgZapV69ONutHRuN8B71jbKr6ERAHJqe4YXd3HkP9ENYyD+zTQ3JtSttyHB8yQC78yUGvleSHEv5h+KZcXtTWfSgKU8OvEFmOoIn78W03iO+qnM8uPbiecv6VxVWY3NkxAeenkIgiY1O39/Aexse++HG+XvRjs0LgrBLCc/0fhf2dfcIP7Axt+OFi7aQPrXXUocKchtWxnHJSlZ5h1hohiQTG+VZBq9atZ4/uNCwTHyND+bwM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mGeho2EH+c1HiCqvlHheZxUECnYKLqWkCBxPDQqEdoI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zIb7n/bLUKBRavyTHM2HbCzA1awV+WlmcZMe6wux8fTNG/4bqMeqM5snncnePd96GTQQkJ/7zvw8RS+bwYAlGSDnEEU//C/3giGr518YoCyYh6niEHp6WygmIYuE1y/VW40XehAMX+6NgW/yES95XQ43hFfVNKo8etwI68PtaAt5TB2rV9CwL60NYDkHznmqB/dx/K5DUU4E+Gn0yhXwx1XcgStJPeyWj+b73kLug8LB6YN+jH88+ZE/MRN1OLWtfT6LF+z2+aqvmHxiX4oj7+I6wZN5S+hEJDHImJjQhja9nEzWhxlq7IWt4rtBNxjWQml+QGRXJxVB3XiRisL2YBTiEODugytgrlgtYCSmY5ULFDfjQNpPR6uJmRE9B1HkOugpQYolu9hjTZTeyUqXlzHQCpnp4/iY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mGu9nodrCxcDzF8uoi9JTwl8fZ8xJfPM/M9q5sb3228", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9FB6GgMO1CD0TxPuuv6MqbuUHbDrUp40FWs/EHUcDxWiq8ggZmOiHtrrL9yLI9xGCl9CzvxyenRkXJJfqlJ50zDH0o3pq5fB3qhWIaMKaJ5TxQtUtJ6iSGJIqafEjNuDW6EIr08RbTGuUO36KVWSkrod+/ITbBkMgYFojdyFI9vSAzYVOEjmqSL1l5RnaJE/mk/1Xx7b/DVAR7qUMBdbt5lXvJa5LrVNo6YKebc3+oTsi7l84y/EFa35SYNJIiyP410BHInE4YXvaFwPXAuSzEQWlaEH+LC4PuU/nJpn6ocLZCNjjecF0JT/Ak+Ba5MjnDGYNGFAj0djzSRrLTOL4XdS1gE1azk9ctpycmbcfGllAzte2GgGH0NUlHCaTIiYpiqltXG9FbhAGR1C9MCh7Vg9Pef/Vb0q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mIIsfsrr5+XenTZ9ql3zT0ZxJ7I5dKVkB/MWEFvRgSk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BmWYbuKOLTNMcufN3dqAs30Q2eqxHg2WISUBYBqvxtCNq/JmcMQIdEsE7fGx9deR66rp2sOUW0+9hIxonS9QpAHR1mygRiVla8wuNwcl6N7gpb3XIp+ozH10ae5XFzwUoifCuZUJOmzxayTyQqkGM+cOoW621RFRo6bOLTjWdQ2Pt6l3c8KqxwoAVnvLQzBxbYDxcZk7Q+8COGhOokwS09j4VPW7Z3ylgmZI7ctQwxtC0VFQf8N6Ka32xgK6+N8JXafkwR1fN9Oa31QqrEg5EpsoI3Lti1/ntUgEidhlsB5NevIqymsQZqCaMqxJOtX5ZTZXgjuJn1lRapBY6R+LOKOhI4GCNa31SE3c4JoTl+h47V5BRpxiW3pKx8/Xz0GadBRLepi8LlkFpyK7bCOjlCVOkaQ4YeGd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mIPy6V/vZO5oZjsypgITZAGIuyT2mAUsj52u4DJOKNQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pLc6AaHOlHHQtpOHu31c8yGcr4T5hvUAeD/gqa1m62cwS4dly/xwSt3Grgf21pujsVU6e0RoorpNSt/wJByo+phPXqU/Jt3BrS3f8zrmjyawnhYh1ZzZK3V76wHhOhkDgsxKyddKuGd2KqkYyTD54PrNkjo+cRTXeUJlnJNIQoF+0vEUex7Ay1H67zsrQc6FuWLZ5kEhULtHJrhdQYYAiZRsZBWq2jBMT7EEPY+6JyiBuSKf4LunTu3Qeo5bYCrG1imunvbKLlX+Kxm8eE4wBRUjAmPYh7EzU7hYs6wBQrxQqP4WDtBp6SDHt+e2mxYR3jfPYpUVpzm7rjc+C/Oh3rGkvbS0IspNLoGGKxj2rYFfcCGnHnazuVXyFOwc0Zl1w3i/Ws0EQ1M1SF5dmOFDWMrEO+Y7ED2u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mLlk/t6XB0ZsEpVFFoLJEeJ6Ub7NDPCg2SA3ttDNL40", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YeaIkdeU8ekRNMYceSU1/BnVxh78Kqpo7lY7iygD1lq5lPrMFT0ALvFfhMmVab2X4mF+SE2yhyF8hFd3epALeShdTFKkRwQq95xbP/DNnoSpMAFeE/DbaOCS1n4PQSgjwxDmT7iz06QjUU3Akt2irvxVqLL54PQOwGXhJ95Di/Us0dq9iZqOJDmKfimV70RNxnC39w3JtRzpOgHHd4Ud2gLpFLFlVATQ34PGG7Y0q5h1aMMQlWe3rxhv5VV6Nqz1zj4jQtiThBI79eMBPSL3wyRDRDo5xwcgrcJkysWegNB8SeB5LlsbFGSIaj54U6DTtYL9hyMf/bhVazTkjcdHngduogYgZY9rrTSOc6T6rvb4R17eK4itmZzRw9hcbAZ/1S0P4tHAp9kAlpr066pU2iv+kES6lHni", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mMhmrkLaIvXi5pYgR/2i4sN3279wiv4k3KMz3b8oiKk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RgoQrAfXmnnttVnDMKqoTekmE7q7V6WwVcggD99becAFQuyQRb1mXEonGCAR9yYgw5DIh7OlpqwvsMVfMtde6h73ixceIbzMerS+zGXPJeZFIePElaaQkyNFEW/lASBt6xwsbEe9XVn7+SstL5u8vvAzF+5Sphm003jvRWsTosVhEsC0cY9CrCrBZ8e1qvUpfcX55jN1P035/D2802ETWvkBpb86SgAF3307NG7VWQI43ErrPIXpvQOKRIdOW6AsUosBpRj1xoEeiYqjHCfAgg306y0QYtbGalphBsajY0Haku9V3xnRRnOaZv24ZMCpS1w50WY0ElvBuaOnhUil8tJd7JzpdPrLAuGxP7JHgsvl0n36DbTdAovDlCD98JiiE8Fd8bmpnusDQoRmTQFhO33LOjVqsnbQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mNFz3Ted/HFXQEMqeEaxkwmYDVZBdJnw0NVnbLgnEdI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8DW3V8fpgqgf8NeWt+AXXPfzU0uI7wHITD6aI6k5iszEQN9WhB5W08EVjXqshDo1URwcSzkh3AMwWHn5Kl/sfSU+Y7rt1n+h6L4gg1+ADBeuoJgjichbF7RuOOHRCVM7W1/BqKtHl0kCjRJJAtY5EUS/XbuNzrzrmnEDrjGuI79SD7fwM7cCnIAmRvdHhl13FL+4EtjkZeVzfSrjVf7YsAnapGB3fplbX4t5vrilYCOGZxv/6UaLbdDQ5ak1+Ag+1X4HRIsJroOajO2/eqSu2oJcw6km0hkwuncg0FLaDjzXncDSCVmGA4r6SzDztfznGfknzFnbJxKT/PC/6vWh9nAb0xoYmDcIDyYnJc3fS1hHuGJLuby3CjTq8B6vsF/ih//p7/GbRs8seYyhnECPHZiC6GMxhUVs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mNyOxU5071tyI/JeTsC4DGPk6Wlo5dLmJC1WYysOKLc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lKx87wI8t0bzkaV+fI8cO3PRMaRzOi6bcDxg6XVvRxbtBRqTBLnn/0IEzf+cjuq/qHrCFT5qBsYB8UPFlZtntdYCVzpZ7YPqTbLxtYK+sSFOOsho07ku5bKy3YpcSCxvUJAFWmhkwlIsO2Ft8++6NfKB55Iqtabm6ivURy3wckWmhTsoLaj3Gy+hqn/uhsoZjF8iSHhelG2lmOZOIcns9e9+KQibi8u3RaG1X4GQ/333RSJD3xXbjvNwzgaJ8mlV4vkyi0vh9DtNVpvplRUfKyQujp3uDfOqgtYfYoB5KCStDkVvWq6ZSHOwnfYNI6E6xINVBsVhT/+GuY2Y2jeJAKKV8CPeiomXpRWA02WRFt7xT7mVlTDv9eTEkNxv0nfDqufMNudx26ey92a6mfT5HmPt297KLdwO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mPeV+2VuOBqJwOc6c5ux0dr1GFeY46QCb8jma0F2vh8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fnyLT42DmDF11mi7r0PKCqgH2BlvI2ecW2WQayHtBEOfRXFcePw+DYkhJ2Y/PnHKbH3hHPokhpjO7w80vECLdWHKlq5Uxb+nAH+IX79e43nfbviDNPtYA3BSfTP1KH4qE7RPrRRuAk7dYmAo24p/w6pVqb0z+z3ExCPtwvbesCAPZ+UxHCAJWL8vMap0bu7cjqQu/gS04IWCW6VukTZnUkLg9kidJzbOsZBV7sit8Sa7cPDR2xN7lzX2xa77kOe+7fm1sORgBpq6BwuKTxZzV/LkJTDSgDOOfnHxG9ctx2tt43xjO+ArnAJAS0QK2jLAStUV0liZ7DrIykIF/F4GU4PYxc5rJOJ3lDbU5DCHzPZrLnTqZQZAB+jzD6q9M+yUmYRjbq94N6sA9A+umuNs/y9cIIiWBZHh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mRjVvPdz1m3P5d6OqmLF8ALKa+My4dgq2kq2PiFScB8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "//xcV/LXInDNtbpdKWy0Ket1Xb0FfwF5sccFRp9C1lbHegmtMxf+KbX7ku8X/DMvR0VDrH682IoV7nonCJN/FwBL0LHX8aTkwEBJCxvOBJ03J4wDAJdLX+Izl00Nn/GN2lvwJRRfhUOwx852/kZ34GQBc7MCYCyCV/F3touz70B6b5ovwbrADv9W+cKGw5jHkb4ftBLxr6kopRsMiN6F2yzGToa9ExCTEwtDFnFBLHSOLNz7hyYkII/yJajg18qnG5nOxFeGiMmf4MpTdZLmoTooH1eUkQp6Olf/EbocIFio6/e97O5FxHRqNCn2mvV5BaXOK6HAmDPkjd25LkkO0K1n78M5QcZR52OeVbDM8kiohReFoi+TWrHetYITnPjMCSEXnKNGQy6wRc3ia3aSBwTn0zuUvHrg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mSU8JfnblQ1ApIUAeZc5ZBJfEAu9jw9qLBTkAmoCtyo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zCdBEGLjDDfqHkPLqC+0HZrfqnEvElCrs+G2fqn+MolRh2uqOxdu1YTRelVj0hyK6nv/6w2y90eZhUJJP0rJtZkJxCWf5C7Ngb/o6Lmj/xwSM2lNmRKOaygcfAY7ou4zQXrOuEJZUZGo/fY6Pz3jEUrySNBrdwMdfVF12VSc6+eqNuWQ89ozua0E6KG5FQbDlQAHdbSXSZ3QYHTtukBIF6nP0YreNnZ43Y4GY0a7rXOjIIhMBuE1F06REW7vFGrL0aXB6FzM53J6hT3CkyZF7QO5t1l5tiXlDT1rL+V44qdcn/57ZXVCAEB0RqW90lVmjul5kLb+Zb8XK3hwMCaR7KLec97bL6aAUHTgRZwKZMCjS3fADL8C0mJ6jq4cIMsJ5MGJMZ1+oF735EzeuZMcYEq6n4c88hQ9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mT4KxBCXvHeMo4xCOPZOyhVG9iGPYmr1I2xrNmyh5S0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Oalm302UofVKMDfHrUfkBXMfZxhWRd51fzzBgrq7b1uILIi/8zovI7z+0kaxekhj/Om2ecFKcS2WMGUNUV+TEcrWDcNU2y8m1o1ZEgd6MkKmeHNwo3iFX79f9b5vFeqcUsLg0jlkIHK1vC4jWp6n2fMoSXQBvQ4DHpKjX07BVZp5fIekySlr/hBC4LPCHOnNhYfsNEAjrp5YoqGNrwQem5R3DWUDyvn3dyiZE6tvKttE4NZCPD0Mg/Wmz24/Bx3p4C88w+MN5S/6vXnY7ap6uwZr3SckxQAcKWPhyw1Z82pLYKEZc0WJp0Y02+DQZh44OHgZde8Dsz0ZmkpuyYvVhWyTF2EF3O3+rdkAkNaR1n0BoDyoHgHk3AHXkDjvSjexz3tVATtRHgBUbnaiSDBUOtLfWQq+OlYx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mTqJEQ68zwAh4C8K54578TJ3ZVWhJ69DlS0pj0ZGExk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xCmch5K4HJ4+OSPq5Kjh53LF06JogfBGHHdfaq4BTyS6X7Tw9+oNS+myRIHfYeUMkPVy3FQ2JRA6lSww5L4IdvjCBR+XPWBX9glHrnVZRumr6YvtAKSe6/SSo55G21ap6C4CaLqjwXqcyS5/XRD+b0Sti7XamY2MXLRE7b038A9cCPuF92UKtkQDeMBj9+OyZMjoOJYvZ37ySijcHiduftPapup0Q6uh3ePl8UhzqXfu+cDVA5lJtNFiKOKiUAvJxONutC02T1uEciK4vqzBfX4qzw548iRy8T1Gi6S6PgU7T+a3g3YGUfi8Xfuoei+LJhdODxS5ZCIueJcO7IQrq/Hr0QEZnE3r3Sn8vX2G58xC6Z4miLN+NQqAgrJhUzjNQ8F6FFG71afMVUGe+w0uPoyFa8+VGp0n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mUxooWwF8UG6TA/J96xzuV7coqlju1ac1GWNsPhxAK0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N4GIUe6TZdvpe9/CC2VXf8GaVM9apZVJuamswfN368spSYU1/qGOR9NV58H9be2tC7UFzZnj860hzVoR6woBk4GhGCWb/LfGMknRgZGFcfxjJstUtRSs5YTq4AC6TAV2AkFwLZk3WbE919nFQc1wM++CO9GawLgDN4GYDPiKGvO79VoQUZyFl21B5dvG9VO3kVKvN+64m31kMTpKv7u7h3uh0s8+uHquXtm6NNMR+YMKkeeuFxWOxfE4P9tsUgxP3MtYmiHiv8bhQx0hjmwcp//FPGVHqDU+5zcCeKaWOxGoFPVdfSUqSHmqa/cqmCr9Sdxq/5DnyUADmktEKOCPg5TqEObNgkwXleWD5ph9yfJLpJ0M0iUCxlt3pGDwL62uDPDifbf2apjzbxASmw/Vs9f+wx/vuYwl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mV8T79PMI7KJu9hjqdw3x1X6ioT9SXek9LdedAMooTc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "J+qulzc0D4zSjsERGKqvRDX9NzOWTxAZR5Bx9x8mDmBQOQ9nw+/CNIUtUtVkPWBxI0UBjn6p84wgpTgdSKvRbuiCxuu+LMyWA3rVCXX2PQjCgjLKvJ7xMWVeZmCrtvL117ihN17MSehCKZ/o+J94q5hHtbMR/4LleFj+XWIbVn9EVdI7b80ftDxawzdovxYhxfRkUUotRGp4bTK1LbbdQK/meDHbx+26j3Ea4XATsaidgCDv8J5Qy49xzOwjFXHcYK+A6Y+k3kZ0E2HQCpRaubj/QDjGRIymkJCz89zB8uzFiUC8mwm8q/jRTWkL1u3x1ZnN1Jln/zeAegXB6L4kBYmUn0f73wmSsNU+WLW96rVpF6LA7O2jgOcdcBbpUnSDuiytK8DoZ2Zx8sQJ48nD4n0GvOFnOGnH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mXsSVnl8QdBu8iU/MUxQtJ1117PGBvi2jnwsTOKlEBs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6WFVr/FI0NOvP9e5KdOHGoAU/2s0gijmmoX5hWYV/6azF87NAjpTrFKdw3vjLQJpYdvSpXVr6remrke0J0WGiNR8/WzFeeEYyG7G8Rn8TLnKPFLPRsKjff0UEetKXpHT65quMylfLfOhBfZFktDMh6FuFit/wezjg583yIJ+s4OfHAOZ4XJWnsq4EGSS5B0xLy7gWQSi78ZG/MYXj2p4uTZx/P6kPMMbCjwNS4bEfnO+jzJuHHoFXtMc3V/MagrVgWX3rXmCdzHfzYoZ92JuaSF527gTJ6GALOWP3cauwlGbg5u4RmOqStvNn8QmKvhp632cCTaW/C6hri3w+9aKCjAvhn67pEYSGQ+jpK4M8gMEN0+QE/CyMidkU3tqLFLJJUDIfcQQISvoMSPIhNbixt2AqUn5+FRC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mYHTcfmK89GWa8YwFDvAddoMcukYmfk+ZngE7JdQvWc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "h4gtxoEUmmwp59Knz/I4TuduiSVD3FfbcxfIRGSRTSVAT4DTUckwdrV79AsXEiKSHt/fP1jJvv2BCX9GSaR//InQZZ6ZrQ70saUMs/Mtd7GL8NlF3ILwBRGqH2bxMfYz6Q8GnnmdaYondDRpX7JwaKIoAuG3vJYN0dj91WxfoOH9fy9tGRYs5ux7PfpK7avsJ6NA6Hl3Lp+wHIYv9uFuNJvH3ac1EYOXvm2NF60R8ZEBTwpYSlUlEwyxubft6caieVHZ+5PMKUQPue05+bn6FPwsffpmXDoTKAzlUParCwdbt+pjYR02x/9rf4uTOQQpgyzitC4sIw3zrci2+30qgX90nH039uOEj5be1OZSvpekVa1lbW7BV3a85FoNG+VLMcCmLik8yK2sIv0jkrzvSZf6oy35zezY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mYOFJW7ayGGRL8WYb+6rgY4jew+qoTbquefw0c6aCKE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BWkbbb8AMU88oV6MtgL2pkndRQxgNMtNPwP4uZY0xPmZLw8QsmoUWv9qyrYZtjrlQ9idcr2WLGrBrrGxpVtboZoj7c7TU5T9+kfLGBxB1lvnLukPmN0jvNj4XKnZMwM2LnUDETw6zT6HYAxyC5mWCZEL+ZYxJNezoRfBGMlmZ0nMNZSuwq8Or+aDAbm1t5SOHBhR9+BNDLaTjcYvYNPvWPAHML2htwyqxIkt+B1UP+rJzvLLGm0+jsn8Dk2iNGoztnZs7UpJ71OU8hu8aebaW/C7YAp49IlQ+EbEgSjHary5nQRMWYQLh3xMoPMdvMiiuOv8aNe2s0iYBy3rc/KBSAAUXw3Zk9KWe3Lkvs7a8vrkZL7BPU8usBYAFNHApe7I1X4p0b+uxgCzWfSdLfDKRtyaF1pPGHgP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mYdT34lLWrVaSxafeUCI+yRqS5VWnHvtU3uVpPDSZOg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qnKRj9Gg08lZlrXQO6U4GYg6cMD43elYRbPuTV7KQdqHMVysX1fssKJ1LAefc7gKUAc3vplFTlAKxxr0c4k+XKjS3KsK3jMHaFqRe8sSKSFCkYWGLwH6+de5kk/7nw3QCUoelUwkzAXVfTmxg8RwUOFVnlW5wRQo2NPfZw53f2WUAKC+UrSs1t7wGUn5O4QdPeOreS9aBiZu/sED9XUqxOxFf1WKpf/le5F3MZhmMT0S/NmwzFbAy2cPj2i1r/NxMIqnhO1wh6Eq6McvzNno+QgHJQGxlL3GSmFxANT7B2ewCsKI2G0BvD/ySPwXHTHagDN10bqrnEdmpj28e8xOaRb8guBuLlEi6dWVahViw5aJOVb4f/DdbOBUITr9S3PQc9dcSyL34VXoK+StO5OwrW+7h1lMxdZv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mZ1C6q+TQi1uZ0MjYA64GFFS8DxzVTeIkjKe28noyOQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WW1FRPVrjMN7FIr4UpwMin55jMzaBXgrkHloTvFdf2xkUdjK16zrfkhwYbnYzbCoKQ7jWGrTjm5LZp1FuJkP83wF621CKIOZ/JsnSsRQb0Lpg8Pk5OPP4CgQXT5ZXmlSkLszZelj1i6SUhqenzcEABLXorWUFfpy5pBm2dLQEqaFScxPS3Y19NwUincM0UG9SI2Lw07iYPLi3knv9f2S+mY2Vgxg8aG4751bo8FQpxsk+Pj+r9uDn7Vb8dNVTV80aA/k1IrX7HpWcG/4hIS+4zteRZZmt2HlhNx8dGR0aUO6JXvjBCAsiPmO2AfjpZBmU+DZPbT+7IVzkVa3Bdss19mji15zrd+bl7Tdm9JLhBE0JxOe4e9eOuzrvyvAAa5h9wy374Uu2+IIv9d9Z3Lygw4sTNHr79Ks", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mbIZCeCEMhy7oRZc8lfzGGGQufoK3Mqd1wbXRpyTJfo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0ex10mK4kwRAuySqLZ/V96o6j3XoZpAI0lU0PxxSyxd0GaXbkjpJpriGBi+F6NS+uuRBppAOrV91t9n9yoAWxuL/62cVx5AQggxPactIixSoRpAOcOJD0YhpnRMlcGFnUnFm666MTvKEjO5iH0ahY7NWkxXuyXCh3nWfDBpuivIDRBJte9XE3gQJNUTcjwU4E0JCOHv2wE8yDpcNsakLNXl7DXC1uZu7eN6knkg6DFZkWdL48q9KNS7xlzHzCuMH+wNPVU8zvL/VEpaXEWhBU74bS8yEfZsvjs9ykZv0/0VK4cd0qxfvALAAgGpA0wW679tVIE2TaN3fZvqp+97JaWLcsprQqBZ0uW9kEn1VJMyrbE3GgYE3ZGEXGH9O32UdTd99L1VkBYwv/O5gMmUq2AYH9E3wMRUS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mcu73IedFeCZxbvdSr4/tUn/ZDxQ13hAVqasJZAmiQQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nEjLQW5pFb+pQilidmfKEjULObL5BG0dwOISyLFrf0Lw4OOhcdA1V2i5T3kbOIfHFozgw/gQc4qcvpHhj697sF1ytzleEsUKfhH4pYwaqP1A4yceNKEQ4sKh8rc6F9qsbKJ1FmDAMQ3zeN0Y0HgV3QUiux8vGCBhP7RjcmmPIMJwgDUiCb/6ayxO6d0J4nNcodPWcGBhZtP3Yi2pkzYJruS6AIqeom63EmVeQtaZf50yyhHYnm7P8VTLv1tZ6hfN6E6U8jazfPwgILWCWqyEsvk7x0lNnDpJB6Vb9QG/y3biV2i67EjmZwR0o8wYaNMbQI3qDwGbgvzsRMwigCf9Gj3T1cTxac9fkFtBIel5dheyHqrr7JOtSJpv4pxP96Tq7s2A6WsIHgX3yhxWsFXXVOxOq4RYqjwt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mdsgHEC3VeJx+wYF9qPaaT/Og8K+zStKsTXyXE2Q5Rk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GGxzjB5j9Vb4HS+LjoNItVheacur/CZM9euYz0T4VB73Fd57C9TfIfw9bUT6/x9ySK+gUG/NDROcWt0qwENLGen5OOo2c5tkQ0V4OWKxuRo+EwE1TJvCMFVSCzYYvpfuwOXSOiuaO1v8FS2ZvoTLAby0r0NygczO2a5DSCs/zYIwwAP1h+De5Fy5HBfsJCo3ZiXsTEQ1pfxILOjDCVaBt+A+Cw+JTaWHZ709eSl7PY9QOet+JgBIOZ3LsGaox0CL2hVOkMzqf9q9ORsErPqDc1r9VcNJAseOqNcchomTEpxI52qCAYEv16nhZTBJZWD6zJw7YGEw7TcH8aSlEDbNbpc2lPhimjDgeLhEVJ7G3fKdaKYKnF/XoVsalbEoFAj/DtL2HF1CjqWFGAoicoA0JVux9yd8RXkR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mdx0Pqfx6v7Vaje9AmqmV4AQ0OI0JpmB4uMRzSox9+0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e4uJmJqit91kGuq2+f5P7Uj0kMWmz5mN/MhPpEfvBr81i8jSoGpsoQXOZyn0QhMKG1TfnVzZUS1/Mjwt6JH94Y15BpB5q96x7pfh9L5/TXk2Y7bD5nIC1b+6n0p3k37R6OLxEDuZmeYhMB4yzlxsQ/UF/WfPCvTrUaaWsX2WierUZw0p4ZOe8R5B7YBZ+uOyAi/waqYz8vRHQ8l+/kOllpfzVkhLs4cTT3OivgGcyZwYnS2Y8v6stobzzRpbC3LomfQ+6gNAFplhB/Elh7/lbgw14MFYV3JEjd9c3xQoGdMDutHFI8DTxTiBMNwE0douxMV+v6haXludtt5bGQqcRLuQGM3OlAlhm7WTtAGW8s9G/aVS2bASV80cts6JEyf9JrWQa6pE1J7n88grLGUlCgip6FxHL72Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mfCRyNIbk2cZ28kmYpkO6WMYH45PyLmRd7g3un+KOuU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qxU3aYHY2uvVTPA5OPKufqsM9DibliexNiKJzhjpGSEV70eDTgiGO0NZLlHlUjPGelxizlF3QgMsR7vm6x+yhZEm9As95wv6pyriwBWT+yaghQrt65QAcm/TEB6mXegX4zRl6bMGhx7BF9++1nNQnknxLgV+paL016zPcI+iDAJoDLYCV/2IrGyJR2LEjjmA2nAxic27w445vAX/sQfZ7BruEvx2oiabvB30Vx6NGX5m+mN7Q1YZohv6uc8gdCO6923B4eEkfHRHied+jLrdQdfUUwxDxKmfm6OU0lXAKZzvgLKjZ3zrJs9sdXPNJDLY5h1evvBjsUUMp7W6m2510VW0XVaj5KjAp+BKPpSoPPKpkYd0zeqndyqsue3/ndVwwDi6P8ePHqKky7Cc8Yhj6sHvhq+00qT5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mhHCQ0Miug2IoDY1PrMAWPrRKflk0dIOVrAr3B2oU5A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7JyPJ51Ymdpk3VbVmT2/6ylMFHGcN2RohueDGiQ4LCnWjQBeaz51L5AmBgu55OFuCx/qS5YI0ABgPmQqWO8uBJxP5Yd7a8HIAp4l4nF7qt0vOKEvs+oIYrfwV7HUF6X72EcIJuvLNafJdCo1RW+YpVBcyAEJM4CEE//+B4eEuVz/CPYOoISrsgpTJbwdbaovuWNGceaEUd/gO2DBa9eLh0CqXaNZzt3ZtnN1p9Lh3lkrk1vdbpJUVJQz6+kgRD2BQsuhlgb2bCRTEYOhugcnTenoxlSy9s4OXoemgk1+7VyaDvgirM8s7d6uYlo1GIBj+XuoSjyhC0JE/0glJHQ+BT4jTlAbQXwLrqiHvGtP5l2pYMOhzOgjXlzNxq2wGxcffPSheta00WsPYXA0tZI6jVH+vdhSHjNQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mhc+j/5QYpPvlDl5hqgE+epi/uamU3t+jMcvzBYKSOA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e5Jk2b5oJZhcGi380uvBDM0jA7U8c+gNmM1PjKUxMrBVGg7sy6yB4sbLvKU7KDV1ICvJacQEqzQvAlmE4W9U/JtU2hHSlvnXnC4QCqZjAztdTKhQpBMPFxMWxhd4y1hFZre/x2TpLbsO03yrPJs7/QAxXfkMfiD1GuNnMOk7Z1BIA9VxiYGjC5JkIuRmesz4U7yaMZCKSG27QIDvc778inH6ZymG3sZgVXAtrIvZPrS6t8wxwAu15vM9F3zoAOhZ0x1IYdVnxrwUXuQ/ZEa3G9s2p/uNaXfdOykdOY+3g7zy1PWh8Z/a90nC6xlqCCsB2FU/inMfwS6QO5VZeDJ0TTY+stV7HjVXPr+7ppJJ24s0SbY/JENo9FT6sop4S0vQ/P1THKoOlfXH6nanTd5IsqI5+vy3gb8/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mjXXhGkH3ACVa0Iees94cF3GWNjf4rZVz8HYektRF2o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tvUu/1eEGeX4fBYRpckyKGTNnDOJU89jc+9oFsLleLo7sXjG/cJk2G3iSu2zpk4CkQEnerUNutH3OsE5I5S4qyZNi6Rl/673+VfjLSTVgZgqHDRrKP6GZhz2sBd651OYtGocIMMklLc4DXgb1USGfVvhiTvQS758G5PbvqbhApAAbhWOdd+TgReQ9nYF3uBfzdERHR+Gw+hON2Q+svkEWxUhMECPeWw+QIs1OjP/TTfwMvwyYjlGXajKoglJkLIHa+k7iNwAsL8CnZbxSHaT2/VYi3JqhoOkG2ebuJwpQ0WUFgEEj7z+A7+YKw49U1Pg84GR+UigqcbwxutcABu6wcam/wM8tuPWs7LKYYwHwPduA50UHJdn/hlftcX6igjhUVElONRSaso5vLnl46dpDWD02Nd0hBbF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mjy7lc0BFPxq7oluYjLMfvThums6b6v5eDX96rNqoSQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aD24kUIR6w7or3vqjYiOJp0npqRrnGwcqYLyRsy5ruGyt0g0rjOMgWDAoL90p6E2EPIQW9SE2mUunW1tYFXCbn/GnVS0L1f/ivu9Jmb5u6TVwlonxXNRmWQypwzCjChlZflrERDqJ6u2T8ErLMBZ4HQQtJVPNFtMEDFpsIByLYJJ37KD2FTJ4M3geRr6ursMQjPFfm+t5t0G4K1bzGXp1nj8R2uAK/wrSk+Cxktx9yOfdssVmBzqb+vVKSRuRqZII+7gRby+GmCP6KPDTHnGts/yV1P54k1aV+SjfFOGWK2nn/VpgcS6YUBIuhoMh+ReZDFjSLKxKlFbj2Mp2E2L4Dr2tSdJLR9w+lDeMyOLiAt2w+BBQYkHeNCii3ldy5lX7NcdJeT+Up7NtJy5dCdoEg8r1obTgAzm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mkGTwapZ9QpT1FOHBJmRr7kIS2IZwNRga0c3YmpzRRQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v2kSRI4VUC3wXAbOGIOQ1KewqAfJblNTiVLpJ9CQ83UyyXhYxQKgFkYy4V/VzCELNHYdav91w620f8Ki/kEpCJdrdbMkAur9Mg/hNm26cfIWMIwwLGYG6EgmwXzlOKxhbTQpI4LcI6mSwaNEY0NRquc/YhSdTwzbyz3zHsB5SGMlwONoqLDLpKEl79fws9lpyjQNRDOyHCjYmWSDpogbf8kEP/iv4gA3ABGNy50Tl5sJNTflLVUEz8vn9s/8LjqZiprSEde9f44TKwtHP7+h5NqHQ3Rbazi+c9I7ZizlVUNbmaDd9bYG3gXpLZdjSlvHAKjePDHKQ/m0jbSwj0ryMpUrsyLFD+xKNLwhMbemPsU/fqv5UiQsvZUxKbRMjQUuscfgwrpbrK8IpcVuHy0TQIFcy2tSKoiQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mlPPQYgyvCdu6qY4I9kSe7DWHBO0W9iEfMoaq/1u6Jo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NQpmfX81cZzXVU7hgjWghHAKRPp+2iUs7q2Xb3Rj2ZqkcJLyfltTOC3oCAu+VG2M4W/tnku0NftPv4iqVzrkb5WaR6HN0pLvgcepk/CJwvhMu+bbHhSpHauR6Mv1CebEGJVfNgKXdVGL2jSsE4SHKGvMH4edTSZzJLkOu9wLPSlNFJSwwVRnWrO9mAjX1uzoBzImMxD1V/XMJ2cpaQGUinfrIJmJoufWJHrwL5t9xdVNo1ICLeqPrIIqIQZtZWSYWtaDlxDMCve1u1tTrP0cYeo88g9Y6HCglpPFBTmm0Gk45+KvXA0tJW0dxLzq1Qk1tY2TAxDeJhCuq8skiNApKcIr5/SRlQq/JDfBq8TGXbvsMEQOyXDhKrPrMbe/Hx2d6Qd5NUGDsOdp13FSxlIP6VsUtnmvodOJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mnrz/NkgXsylhW1bqRHUS2D1ZlfXk4VndxSdazRUVx4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9yb4IfWF6WsbZPoi3SvXCLEgoRjMxCx5FX8t7CMUDLHC5/dtNp9xcnfaZIPQGGG+l324DOs9cFJSax0MBNHdRF0CcWc0fkkIS/+0+qngct5ZJ/4hbB4zcuNjbMDTOdPChBDbZyVuNrvRLoRkRCSWqFWdtZDUcAhFOWFa0t2ZPDoPRke2XJod8C/faWLBkQfuPZ13y7HQdGqhgrL1rr7nEM2XQgW79GWP3q97+xnQTasfcuWut1fP2O1cQZ9SmI79jei9PGQPfiKMr9iMlthfgVqA0V7vSPqUU5rZW8Ex0ahWc3AB8KXtqv4f7PoQnGzkbP4KmFlJiOMBM5kyORsYIDZzkOaOqf2Q3h7I0GOHH7em9dEr0kaL7EOki4uEBCmls/KCjCD8tx6U5Xi2QxBQJ1bfmaot9lct", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mqEoKG35lHPxsvHx7wWYI4K5acMcs1BBBF9w7/Ei4m4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BlrDBeYxJK73RrgHNLVXUIAFD3xapqs/q7vNdLm0fQjVBwNoJ8e21z2wn6g8qJDt1ZIipkuGDbiHadFzvJktboPduQnYxwEFJudHnKFgcWn+UEefoMHgSI9fuDrIj73zJOhPVfw07Alj1UoGJWPLUN/BK5mIaoobms6M1sT50fiiOKS1sxQjb175QSFEVe+gQ4tQ3NT99s329cOSHggEDV5RNzaOIZ7NMMRfBQZTNRRI0yE7Wu5YZYUX6GfJwoRIvhQue5x6vA0FbF4Q/emeGJ1EsbgblK2g6uj3dVAgzqYJakYQP5FWtMlK0GWBbbBtySocyEW9NvDkNp6A7+gEjT6dCNryV4fgU1ZYCYdmjXxr8ODcGXvtOAxoZQk2O4LaK6yFWIm6azf40bfB9IeX3VOpf9hvnU42", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mr1/nEoCM7eTQR1QaEjQ3aym+NDmDhoJipEXoTst0SE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SqzU/xGqBLZ3lurGVaHPEngznmXgnkowGo4vJD6wA9A638BL4N6fWSlPIMzru19wbOv3DskKlolLMyEgmXBKlXyVg4JsRm8LVAgJkvX3IbKx31wDcj+fk9/n5sA0Z7YR8GdFxjTFyUBpBDldHQMgAkBar9LQwlUU5DZOkH6N3t0iNKjWYZslfak7wus5iH5eQ1GCUM0t7PcEz/QWcAQ5DJkFEmuoO7cDFuXKOUhWji29Qi8ibiGxIchRK/wFd6Ds9NBGc6weSY/VYhkA/3Zcr9BchvDTVYAnl282QXlg8DHi/HkIpqrYqvE4ZT0e1zEGqdNMY1KjryCvPNRa/9cauvYTvT5zZACP7lkJYf1ZQESHS5eqIRAWQwZD2Ap5UPX+D3ozTlDIPdlWvQhbmqkOnOb5HFlHxD/1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mruo/bfW4wvYhro2ByuSIZgI9Q3fLbZxuaFIieHT1dk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "urYpSqLh3I+hhTBbxzM46L8t69+zVZ4NoQkzqHPvvOLP8wYJl5+cOjZhiTQQ+dfOgpLjHb4kvkPKKko6YlK8VWTwhKlQzZCOp5z4cdGiFkCTnyjeXi1LhxUvCsukzYJAcQtD2VvV55bek6K9mB6WfY5vl2vpGf+OL5vPuN9cipc8H8FERCa95h3YX6RNybgkZDNG8bHQN6UMRORwtatOnLbwENjE5VbuWCyPPLHFaL3lnU+FI8XT8v8TKnOIHQA4S+lPArDYupMixcmxItYI6BYhKNPJO0DyE/rWYqQCXNP+aMf4qgyirH0A54hyq1cfASOOnmWyHplXKnBkSeGwXVE3ZAsfrAx6zVIm1gnHAzrPplDFDlzYKupXiJ1RdD+tNkdu0BasktaxlNkV47b1ahy8wjXj1vR1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mseUdvkOkDHfjC952QP+oPt8Vr9ZeN4tmZMiyUohSXg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Wo3APR4uJvKsOXLc5nuPmZynpcXsDgRGDKrwAUJtHEZtbAqIhk6Glx1AjLZZnpK2Thot1E34sPszT1YN6T0A5U15z5gB5qKkzdGLr1YNSBsuj3afyRL5O7B6ZIm7lZppt2kMFi99etYVtTkxBAWfjZRJeIrPVESaMZ2Z0tnlooNMKq8wc8flrMWPXOaOw/QfeKunv7+5RMcKDAHOGtoLN89xpCYk325JEGk2ckltQv2BYfvgm3IK3kt+XUtJkiQbO6PSz8vD9ZttcTL2XwShj5T/qZeEbe415emQy8EX85q027mtCDWYv02E20TEeQFytP4+F8pUvcWAZxfaA5o+mkmxaAboegQTn1Dy+zmh7/EbfM9snOx8bydrf4PQxfBNJ6pD3TvbQI9Xmj5Ip2gWJEwF2A+S3ZJC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mvV4VB8oAlwlkZh91Rk4Ou0cxPCCNSbSiswtCtvzKFY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FcnpH70Os//uuER5mgfjKOeYuZFWZLwkC5NhmjbD9H65xQYvt3l+G3ga5ePvhYEtEVAIjMt7zZ2wvGMdCsncpFenF25stW9HZNWDe4MIuxOEaoV2QmdIFe71SU4izX4xDvbC3h9x5g+KtA9eRV3gGAgRO0o2YmREwVqL0lp3iVq5Va8ozQA83Kd1iXoyWcuykJuf5khL/XvkMHj59+r2nZxtmQ8ghzpMASteV7mWRpb2DQgqlB/V1CozqpS2auRgn4HvIG2BGtGt3iW4XzEibjiygwFxNPCaAI/KXvTbP3jv8OdQGso0Ts5tOkZ4SUlEckunNTuOxv/2IUMcckAzs8RDAQlagDCCn/Tj/CawXP7YLV+5JdoNSgXPVTpp0lgf7ysHqAjOXobErguGxm9VEcm12jtH9NE2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mw4NDO44nU07VfgM870slrzaRR0DbPdlLTsqh2c8EkA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VAsFQkL79HCotNH0FLO+EaIDEYVXZTERBuK2uAl8Qc3Kk8uE2iyKwzsYnL0FDFvMzYuD7BcsWIrfFiBjy8yvAC2vgvJwJIjnYSAqUlyXbLULsRLz5Zi329QoS09BpQSHo3r99Ne1DO7pBwT3J3OiZ8Ww0q8CQU8QZ5HQjCLu1n5SyWfoI0oTcNJ4V7ThiJ5FrDG0Y6nu0+SsHNqBe4ewwITBwfHCFDJrHKUDLK2h1fB2YkgLHeNSUby+bcQ+MaF0DHpf2Fm3NjFmqqnFqaYoQz3b9/jRh+wQt3MWA6V462IV5KTzXaWvvu6iDqkfoX5G35JUiLSnXIujQvkdYE4x7K7W9t/oBhGShFGVeD3S5QQuN71a4HNIOmqG7pekz4HQk+jGNLtLKhkXE3YbtpnEkwBBXUIzsuh7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "mwbsBQ/Ka1UAJcpdedxCnDGHMrTgdPrcn9dFNX1kWKs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T/+SJgGXzogf7Alaufeu7sQTGKq7dBtRYLFhdMHli8BV9nbZt7GX5ThUbLjAagFVMc/SCjU/7q/nWNcxXmAUA2B+eMvrplNQFrHiqFVLu3VKlqSmZHSwmBGgAp7OK9VQdGC6LM0OBElg58jwcIZatT+X1AyxPaJVhtR/qoDkCvsgterYp2n7WrfNa0vjgn+X3cRnyKO1Oe/uvZMRsvrJH1FjrGmFtJP5d2k+L9g5+GfnFhh968W2IwrRtFz4QpwbyTSZsaK6kTIcXLzSMZfml969OniBN8kITiSC2HYIiQ1IMvdqiRZP28GkWkT9mLPbK3Irum28xLpC65v8/v/LkntMoV5hcJ4eQ/tLfyu1bL6MVaE8Uk3fegKL46kmCLr1i14XtDX1AkiLGpYhI+JRlbU5FCh8oDrH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n/IxBILVRt2o+jmhAmrOdiHrhHGHTcyvbbaQE6Wmb1o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KdXXLMSimSxn4JTGJ2iktCe3CvXVHx4Jvvg223y9RNroJ+el0Jt6yCt9IVnB7A9LJYyR/5zYziwn0vYyNvuMogiiOy6AzuG+zXTdq86KWCs1C1HEcx71Iv40ZJbR/x9Yiz0Zgpp5VzQvDTAKtzblCv8vZ1i2pyIWRwAC/vQDaQI8yjEPJ/OIYbDGZEyacgMbL5a2c7zs5WHJQ8Lsv6lxSaUX7+fXwMr6kJ3jaR2S41BxNrbUGHUH2WD0ePAElhtJ8lKc2T141D5WWk1BtwjOZph3aqQNI9aQ2Y35aVA/zsB1BU5hWV7eQ9fZVuyR+h+rfxlcGYFus7ti+HRZTo07zE1O3mqKm+xG3VRGWh7Lr48Jbj53F3ULpqAZYOSn1KlrTrqhWP3vMjqQmJ3vJCsZmByoOyc2d170", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n/QpGehublWMgNIUgyjVCzOE0A/ul89naG1wLjiPfPI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IcE7r5XL4qG/Ro1fd/WNieQpjdpynYRXnoOMdkcQ3WdYivKwGciIh47yLNwpsCDegj0mJFvdDG70/Kge8fdk868ABmFMrJmjTOMr3YLfL08rwjZy2+QNps6d04lkoizUj+evPotxiektGj2IGYcuxprYlFyl2UTLT582tHgvkoGAXtDc7khwP9iqQpprL/cJG7J2+dCskwQmANQ6xwKuhklarj/CWgt3PcLNdoRShRIRZvgqpSQWPKnrES0eZM1ArPac4RJufrbhZJ6VGygU9ssEj5+eFbemSPz3LYQT2Ur897idgBzRvidQ09LrnYwE3IezSK/S157kZnOA29mY/tQ3VcrkR8ClAT4y1ADduP9IwOmZYxYhtxa15vk+hJOH9ojoUA1g4bxvpK0RgfA1ZUGIgcmpUAN3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n0ATfJV/edvA483W3Pp6RWalr0WJKfAxsu5rPzWGFTU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uf8+GT0MWerzA9P0fRk6AiJzhnOF2C0FdO6IFwoESKnFnR5IrIQdfJabqSnAS0U8qM1Qjit1MY2DCKVhrzLrnj5n37W1lssqSGqWAkoQDqQxee0YPPoiDR4vl9RQx5Mgz4y6SOYOt3iT/3lXOwFwa8tfslUN85g+9AOchf3g0WWeczqB3X+ABHbtoalQFGaElPM7J1HeyHhuHur/YVgutj4xWTYFdyVoSR36KJYInWrQu03Bzcn4Iz5OznZSoB+8Xc1v4E0y6ZdTwhARPJCv0Owhks8wXksYpeykCnqUxXoTEE489ZCNgE/6BOILJ0HPwGd4mOFFzU0xp3oFrmWekZ2x5P559xp7ZtNKiFzT/00ebFuK1XEQJZPctO+uSw4H+UoBin1Gsw7odQH9iAPabjS1Jr6SdFUc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n0ypcKolIaIIDRYhGkfwhnMu/1mrgHgo5M1vwfkWtao", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F693ylYhqW6tSFBDVCd+rrbTrz1Io/JdZGgIseG5pZP25dKQGE1k27Bob8CptV/nI0B5yQZDe3KsqPon/3gwWlhIQSLl1yTFGZTGup4miGKc6h0imm2u/3QuII41db39m3HNyNF/qQyu02lgB3Prr6zt8Hs6LLN5sq+01vQwbvSmDqFzlw/UoTGaze19GnK+SKm0hyXdKbbG5qh2vGtTMX9mJ5EtS850AsNYgV80p9QwJ/d3LB/eHfanXqXovIR7sEhrOsrqP6zTHBqgCQgKYfpgQWPnwso5ohT7V5Km5oIt01IkVQM7b0WB8OdVZTMH6kQ7KpgpOOteffWlzaEY7wgumHb7RP0oZlA4KDpaERpPsBKy4omoPYgNlZlzlASRPfOys+789qrPRW69j+kmjeMZeo9tmY4Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n1zpZORVx7nCCG681ay8EylGlaw6xWzCavKSkEwo7lg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4DzkHFUM5VGRFIzwO8fvBPqBeKEEE4Mkp7T25DjMCFNoV2H/+0wsHdRrFG46CUK4KJkXPv6bcbeweCqyjLBikZ/r77uOECFi6TPt8ObzT+96iAZJtSXc0eoK2JjYINZijfvcHYZGBGAUNy9pVyQ+wole97g1LRb7LkxtCnK/IMLD/KcMNuCCUMbmgVJVUhoz3RnHqi8EzN+s0z/m+FvVqeKqXanvVlebkdavSqxrouVzOzBo22HgE+XzTY4dttknSM3RZCZySpRVFc+J1wmjoTW8Qh0SnvoXtdzlnDt/XC90Zd/iUbiNdDjEQxmFvPl2OmzsWBN2XL31Kh2ocYJ6uHlQQKyIKPoT0DfWF7v91ymV04KhTe94+MfPvxFjjLP5a8yq89pDEKpwIBED8qDOJOIWenRDVPoL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n2Ddvey//gEup7B5kloJEirgCZln4YrleMAiTNMaf5A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "co9eafcqojzyuxO3aqgbeo/XTJXXIFV9FMDAjEHhgVICQsYX+sUtDJ3EGua/qJedCRXRcrzihj6HNdZGYH3W0UdBNmQZqhfiX4avjv1ty1rwgpQ+vZu6pGiQJLrU4vRvBZ2DfrXTxB8kx2vISDduUkgsP7arFYqvDRo+p9gON3oKAvmaiKl26S7kTX+oxCW/cDIcph6rLNrai2xgF8J0PiXjrCzi0glmBrs4VyYW8MvOcONw/Ct0RsjvbaC6hWxB3w9TvGwYaedtULg04xzOKAI7J9VfMzRhemgf4QljkI1w0VzGZ6cBehc6Ot7FtVpIRUcybXa4Jp+YWchMb9Xr294XKhj8NTmDhvgPoyq/jQz9tyH7zhm0foPk7oPohEovI7PggvGuSHWXls5+aVW64xMsKSFyS3dH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n2KuKWr60to/FHbcqiIqaod7/y2+1V08xmTtYuU5Rbk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3BmQKEzr4zJ3z4yukF+Y7MOtVcSsAi1guIPB56dy4kSbMErcwmWNLFnUGxQpaXDGDd7kTEp2FJjGvgJXTZHr002XbrGu9VJP212xHGt+4hGrwaaB9Z5AnXc+KaeGnz2XP+IKquiGIkgg/7Ta2zsWS4c82+EsD3VphAKH6VTXrnOndzfDnKrKvg4QcQfXKhW9F8pZ+gMbJoYbrJdBQSbRIZ0xy7BNXdPE1puIzIDxSQMA8JdX2qWR6rwSVQLPzqbwTvQrVzu441wB+15CTQZqPPRr7SEMweu2DIY/dHXOlM7xBNMVR6RMini9zrNl5cKAtdaQOhiJdHVFIo7K0kBQVEEGBDpWJaigclbel5qJRGFLO82x55aaPYKN/uXlH3fOvaDmZex7xVZ55R9PWiyXJdGnI5XHSll2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n3+tRcZJzOMj97NVDJBjGs/nmJlgiXQ5Btd5zFtPJcA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UwpJU0xKUth60M5UUsuKaYRzY+mrXMvsRCo1IC4fRXO+NwO24OG04oANeBNweOfbeLjSPnno6x5HyMLqqehh7ZEhK/G9CckV3YYnnRR/muRJ+N4qdOIBvyXBM16o7A1vEd+wWNZElsA5vb274G3NowgXX8sGAtzlmXU7o2iz3Y3fSd1MH8Pacr5rGlmbsD6tyv33LuecKj/2P7vKFoCBSWkU8iNbX5BKWYVQ4SsB638vcQEYdh7iyY6r0RTx/vGUupCJ0LP2Ulvbxq28KohwqODB39okvcrivB9Iwgg1SWaGWiS6L1gKz1Kk1LdpuCNcxD6VJlGdd6zUuVCte1/xmNCz+nOf87DrhlPzc+E/wZrhWBn9qpkqokZ4OxS82jd/mKozd6IiNh2astPvZ/+gJkJuqbdSwbc/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n65pBs4w4rg45eb7p/iPNwp8z3xygEEiN2lNioA+8nw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Dpo5WlSzisVcsSH8RkWeB6fNSc7GkE5hOYqqZ+S/F5cSX+G+s+SIpgI/LYcJVAkCVzFmZpsY13cAib5w97vr8vb4w04Twc1X/+HSIZKIESVN/3rEkcnQcUjI1Th31MohvRqyoh0h3E5g7Csym/SQwPAqAMpUdzAqtfrwqLzgtLAQV0icXSgSQ6efN7i3AjLonYoBQ9iekxS8B4IwX5/UaM95fBAIM2DHI3RXpnSX4j735fK/rnrAAvCF5gmHlRke7w3acLjTQLf0rSu97INFCJa11wmYqYVoNHt9ZFGdLELStXle0D1s9UymV6AfC3c1ypP1prvuGvyWmzIY1RwbVGylDI4Dk/YHQ1a6UqMK7XkCXSQQl8xEJ2M073ISSg8WujJgZaQKM3m07pgnFpanZvkw9qTlaprH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n86cvAuVl2Lz73d/Ex0t+pCVrsYzmKNVMY/C7yUiZAo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EPqjsikR6WXUw1B/3ISiIjMLbzXxFKtZPdzcSX8zIjDGK9MzkqchAcGLSoe3HqBhwaACq96d+n4I72iZKk4zDqb0Uvii0s+qUAMImrdSbiDZt0S4oQwgCtM9wikilNdlaXs+33UTkZIncUzT2ebVIqiD2Crmez4tI5Y8S+ur4TDVl2auU68dsnrLVWOQymYj4f+vp5pz67deaDIOmQ8RSQvZBfMj/IO9AUp+apQBrhhCMWnMTR+vopgUGF7SFqA7nMgjyD74Sd7Q70XNlatiZXnPWkXYpfT/wGXRPffeuX9wRpwkdBi3myOQs+YppyuF3e3MsPI8K98gT044iO3Fgcb0ldM+fi9MVS9g2DXQqttYzIYV2u9kt8d4f2xMvXlT/WqOuEul0fK3N5Kj3GP+Mpz9VjXBYqH/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n8fnOOlMQFALQhwBb91DRb7TC5MtuNZInwzQsNgAQQo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9ufUvnfObBYxlxJXHDW8PgJnCN+1QtW/lUYXEgL9VOPyoHj9PdTDL3n1+E6UNE5iA8eUgFd74IB8zQNR6FDPJg/W6WX57LE9ewRbUNS6XaTT7mtAYjAI/WDgkX8KtSJ1O3PVVBwKLjczcIt5y3JF6sZGQDtK53RmuejGnAwcQ22mjIb3johe0kfOMYx/0H/BhXPaF1yz0NkYEPIc3Rj0gfp/8E0XOOAvIlkKMJh3kpj/Krvqrn4c2mHBPhGoxmRBQFFP4urJXNY0p5tEtDD8UyVu6Gp8gF6iubCP4PJoeM2d8IKkQ48ZyPNsLrR3ZPYmIu1qTZx82Tn7WgEG8lIY17Ev6adZxO6gkgwQ6cDDiKNAQywlcf3eD4oVKt6BRl1xkAeZetPkZTAdhqUSpNhZWVvPz6jkgf7k", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n9+GjxsTMOb5OOYV2WOH98mAnWiLH7Oz61Oxnm4T6DY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e/bgs6zDD0ytUHX0DRYfMANvkC5+U3l0Z6NFg8XfygPCCUXD0z/APzq3riKpETAQ9yTOy2dPm4kcrq4tAJy/RopH3yAb9tgZBmkXe0Sq7D2/CxTKlYHTU+gNn6/Um0QgHos0UWeTPTa9zQWzxW8Hyf/mAQX5uQWXByMxREPTctbvK9pufknsxDK09MnSfblAj9vXmcZe2ebcw4bfx/y81ioQd1pHhRsD5FY1mBh9tJabkibitt5MVR+UbNYxAWReREYu2aWQ+bBrIW8O7UbALxrKkQ3i0WNLLn3eWmermJwIcfEfVGuPJtqUz7VOxmRRIzNs+gE4yOOyASi3UfnNAUoK1vulq7VlFVpe5TbYoqsFMnLy1wpCsJOY9t6TlkRec6hJRS3K8nznAox3sF6U36hwaSN0IMmx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n9+pJxkYLAbT8eBLVznpWSaetafsr27dVSMpzvwZ+ak", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ma+k4JIZCCt1acN3oY4GgMp1yI/tvCBNnt4Nmy7VD/NMiaSDXgtM3x+84oSJy4gZMx348KD1D047/jzBUbBKpNZdgTgGG/b/jwF3Ak19VMtupftuelCkCJLVXLroYasWX4D40xSqquSlAEqnn77WTPnacyE3QMCPs6h90AwVpnfO84jhqYsbXSEPYMhkZTbRa15e/KCJPQz+vfPTNrnQUzRUJRiSnHoImoO6pylj5ekNCiRqhEhTmhoXIIonX6X2NEF0qufGhJt+6jaUxdtG/8fnaaDWRYuk32H+/vHsmvx6X+gQyEpu8+2vv14+qAMilXFxjGUBh684HmhosC5p6FmfRIcHKGabnYmMUzLQGmXohe2zZ6qsfVX6ysQsb1F5SCQ7o8Zz+gwVgqY8puQJrPg7g4FvFDLF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n9C1OeGGjGA3fChTWNK8rqVP6dU97smJWv91iAw6Z0o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZD2u3xrYUXhI9w7E5peVLQgBRTXFL1ci1FiYqblplKDgDgNPT9OPfqx5AZRp1q4OvyGAErTAxoj56sL4RseANespxO9sQUmNS+QFX5O/iqoSG0OXUJTSXvUNbAau/2T5ffyhCLsuKR7QcMKH491FCeHsGvGxEYw8/PBThmiZ8L4eIemViy6yhXBoPLO7kh16rsIsxLG9iqT0eg3fDVGy/Vtxe4SM9IK5XTXLvRBeZjdqlQOCINiDDQwx2CtHSXSl9AWd11IGMUbsIVY6FzsRo/MKDXNaoKuaXvcTLhuTP3R4tnvoJ8M9JsZcWkd4rE1jqvfD7Yqj9vE+gVmnkTiFba8WrVBL5fWho2hhJnYZxESlhlNFURLKPsUfDCMXLtEIW3GNmieJhx4YaVEdooPImKLuvcBsHMxY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "n9nCqgRyVMhOFfBYfuhbzOrOiSRoNpX4AzS69t5WCJA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NmKPj5BXtg2pfVcxfIJy+VdQslgBUNT359iMv+45yZ9Fk/niviDC993XXkEZeTYZ5zlh+81OUpvlPCy/nKr93hsX93inLW8j/uGDQZOMtHt1/mdSF/D81xhzKeH9b1V/VdI5z1u56ugyf5DnXyBWKrmelJ6fekf8v+eoDNJc8alp7kEksCZW+xQ1+MpE7/zBXrk62dhymbzOKuj/VcKmbmv39Knp9pnwibwlDaxtp/ncNq+WTkg2ZR91mE5T3D7Q0s8X/HIYDfe1zZM4dcT4gUOe51KIxhxguWipdI0Pq6cqKQ+mlUIKWXoi9uv1CGBa930cNCbEGl7TZZzInCR1PnROllAG3q5cSYyQD4BI+QyRJINTRmVODc/21OOHPm4hdTi0HjaaCcx7gjJX7Tw0u2joSHz9dixR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nBj1CAiBjv2ErIVm8hMgJMC6GnZ/K2VH1v6G2WU+j3s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q/m8LL9B2OqgwbmfCoTKXpvknNsX66MlSAxfMe/f7+C6KW51o02HVpcAycQmCihBMne3CAaOpDXoFDHk+JDLeudFR0ATwCITO0czEzFEMMnS+Q1iuOKsNiTaEsRTcP9XvYyU+R3EzjJIKyMCbGQwndxM+Nnx9zY8GQ6n1JYJSqxYdBP/EZZjEnvepA9dx5CwI2XJt2LQd/5ZLDKyInsciSnGtFMh84FfcBGg0D+a5vCh0s9z53XdmqDvIbgoiTFmiYIry/l2hSg20thp2cdYEzsqFPKhoNuchbj5mTamXBHiX51r6LaqyPAT/itymIu6FY+1Ly85zI1s4HnuScnW6/jG/ecNl4Usprnv3+hU6yqKTQAvMmHlyXU6QBXunBT5cjLql7Lf6j2AZu9YZ2vNDc3EJxUvBmIz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nBjbzJmWPxnSWYJysK0HA0uxWXIZCG3zWwjtLLZVwCM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YjdKUMtIhzeVFQscUBAlRSDqI21aRiPXhCe7Q2TgILY/nO/kNiefeyNxWRGUtpgtbC95wxRiL5AbqLwQirKI9xQHN7vOSrViK/bVKi/sAx2lTnmaahlBGqatXFHcLGTnLRhqn8z9nAfNL19wSN5EWMOB3M2F/OVMzW2uLgX68ngNBgIZXbjb2lzLYmnM70uj/XX9RjOE2vp2kptyCqSvx/EL4p1XGn8Z7xh3uxvOlAnpU05aXUo2tfpc4t2ytHCprNFv38oy2qVXNgS2vuURw7DSJAZVTqBWfoGdTlyCewwsMAHLArZMZ8DOE4RrYbZjk1Fuw1zJfOG8J57CRmelHOtRMQFC2tM8avHVkelDUgyD2yzVdf6jZM+uRAffohXxnWRePz4jUfv938O5GV2m8qvSX0OZ3O0W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nCJgN19ilbhS02SElL1F0ZqRNALwAiOiZIt09e4EXww", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MJf9ZbQ1C1NKlYy5gGfiy8k0g/1IEU2FayGs0t84BBj4E2unVbpYKRRsw6LTnh76V3XMImwIpceP2yLhhXKW1xHHmX1L14e0lLHuMeFZgropvpsSCsEgHMJEd7iIShx9JFjnKGll53CfXz/8+TMeJJuPAjvSzbqOGQPAQU4S+Ht25p7IS+1HI+q0mbwoSVwG7IzDTkwFV8by83gnsOmloxmPTGE1FR93009jDIzQkmOWYGTSyeaKfGFDwHX4msBT49yv1bYL5YBh72Csl14RKI9muoVXvRGneOV2Vkuq3FLc/9DIjgdxFRISlqmXm0J1oHp09hH9CSsw2AvzrHZH8PT1LbRxHjQnL2KXoIJ4IWbxZZGPENk7hQnYYg1GS2A1HoDKFrmejromFvBiPvQWQgLh67lcDCvF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nCg2FpShEoIdw4OuFVbg+o8DMF4g5BWJJ92v44gZ4cc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GOPQmB/grb3QQ6KcyBijd11WL1UjA46OxvjwzQQcUQp6KsjDOYLp/iNa6LhV50nlPRGkyZ3JjtkO+11AgRcEw5XUi0usCGvFxVGw6jnud4JTGH+WbMdI7F1chWtNYXvHy6+gqBpoWr1j0TgkR8DsFm0866zVMfnzsnOQT9qsinOgmTY/3uVREEes8YKJrZYy+f9l2EKy3k7glSHTspHryOdsycWScIHz4c+smRRP1/OB2Sz3xiRXzfdZ0lgtyeYRbFmNTlHNvVVCyNDcTLA5FWHzUQ2xEeFy6yBIW9WpE1CT7Re2qie1HlKCGdkO4UrbzHK2QyvZrsOhlxBCHudKefkB0dq78TcRmhnKxpFquxJSGjwLG8k8UmjTHiYNfpjj2oWUBaITH85Du/QDOKLLRGylcUP4WGEG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nD32EjLQBHHGcE7cvYF2G8FJCsBYg1yuIyAB5Cdc+/Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4/P8GR+1wBs3/76zbiMChgRCkXPPgtzd/ucfXecCQDMJc8XnXxQ4bjDkRgHun6kOtrM49uqQEOzYc3FY8UOhs9s1BAVs7XfYBKWMVKxERvhboI1QNOzfgAjkgaoDu7thDdErfJOrs5R4qwPPh2yWbWgzZiCgGIysd0hLgGbSxLxZ/TyaIzQtEtx6u5iOs9DVquB4r4ANCtXVirCD9jSzrNceVN9XrzYE+NSfmlTz389tGFMs2dXHGz6n3/s5BPktXcqfXRY0tIXmObAcJF6sVJupQ7AAcwZYQ6/NJTAs2EIbNDSxlvgXc4nAVBktzx+jHo4Bj/xHkIyjslzTayGZ7foZV4iGF0LF/bihi9G1KVJpujJAvfokWUy7Ysy7xYHUPY70RTcfSGdbGDG6QW+yyc5dSh23aFoa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nE+ZcMZh7tf2ftJ2bqyK3fmzfgV7DpcfPBmNYh2DESU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8LJjWUGTUGtSuHXiZAHqkQ/hVlhcTr4O7IDMw8JJVPxwZxBFU4RG2LaW8dBtMSJ6mOSHG3c0gFFj5Rgb6vj03iaIoK7T8ScL3RhXaW15rfbVdap2KVQylXFYoToSQgpyNvKPxq8EhDqBgLhLiBQ9cK4tWt0BqJR5S38Mrlr1nZcRPgTTT/2Ay5Uywa1CmqXlur2sI/vmigdnX8bDpCr8/5FpSAjd9L4qZm1097a2uIxL8iAytWAPj+3EUurwyS82Fq+onba5dmbM23HGNXqlo52nmZRRx3VLQAIQHviKDtrPtYp+FGyg6nah8cp75XbAu0JesRa7p4fI72m7w5cX0KXLGgKfJzFx5M1zuEPsyxDIZ+zW0wcWAVDdKUWe6nLp4Qv3Mj2IbkG8XXqgGIc1l/ujz+aBBTuN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nEwcx2pNrCczVUI3lzEjahGsk1UBzpT8a0aDFbLwROM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0qKu7znuqA/gSs+odZDfLr4TJDd9YliMbYr+g3uVeqxAGxj/ocMEUoTk2SwISxkS4WKEEIDGIYC3LUZUYoQGV8pTHcsdg9CKGs1QC7BPnZLp/04cpzQFVrit1AUOMaw5oMggfVExIegxzNemCwJmXbU5dqs6+AEtVInXbtDnqdxM3Ksa8Lv3UiJ3HHMDbWakemV1LrCEU6ZHnfDRHlrcLgu2njRVMe17eDD69MAC6JRzFgC1x5V7WxhL6beNmTPqamgoBsgIssgsDFZnVYHxF4L3vn/VdOh6s3DUSak1B95nZiCdEUybPu+o4vZRwYp/3F319TeaJ1CUVkAnizT3waiS0LKCoZESbAhl31EOPtdKRNu5oQOksc8B+5TBXPhzjIvIbLm+FCA7w8FGJBPFTlFsU0hATBEs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nF/n41H4VFfdtubjKwniGX8jmlLAXRhhtCGl+mcD6C8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aRd3f9no+2YHNQhip80XGfzjCgjuF716j6+jhXUgHsy0cPDROBHsv8wggpQl0+249vYQnSoA/F7lyeLLAhqLW6a2adVaGsWepCKmlF/7Rxh+5nJM4nk69dWQubl3r8HWhKfphLtHZfdQCDIOtT3g4tjpiU6K0hBQ6G/Jjv4GW0Ogp3Qk4nXAzf2sba4taO1s6dJzmQiGlugqTMor2cgwMJI6+CbG/eJW/kYFjKCDPOSoC5fsOU0Q/SL6rRjIYlS644T9qT82Dp4cXX+mJtm42s9nSb3r9yGROlq4VUBut0E4gSCHOw5bY8aUYmoPh5WVkgdI/I98df7BQxxY/IfedGxLWVzKkokmyWlJBTxp9uXBBTH2vJ1Ke7xqI5ztDovWzQdNO83O7y5iTk7uIubgKCetrOtwlH5l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nFW+PSZUp3oEfJ+BUsFmdkCuh1Sx7X84WDXaxdDJJLQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vvoQ4dBucfjVxjliyX/0mIKP0bUT7Xl3Vv/RW+O4mPdMtFAzeqL34QQS3eBJ7SChSoeH/zGNC3r9u1ONyrYgPC2y8suIL0aQNsRabVq28rvIhelMChbUh1WJTcCGhemM9KWAGLmlch6cSM+dicY1SJuihvbGrO1XRb2RTmHtE9yMkTQpTAIIqAhAJPZ/9KRARmAb1nZnuaJ34tcu9ihOS8P15V6+KJBzhZmoBTcWCsCWwYJRiL0gG355VsWOtebfRAqI5F2b9CfjDVJ+kLkssa8O6eLY/IBECnr6FjtyWDed7LHgp+qcL2dLKZboNmkYn0Xlt2dbVPIza8z5iA4HXW7Sq42Kfa/00iqT9CVbTP1WDa2wyWm8Z3ecafoXxRrLV3YITRsjWesWLC7plpUxb7J4ZhNC8nGe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nFWNieU2Ruqy5TqBNK+ZvP6MAgI3KS4NvpHePEqzlow", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Tu/voUjhNxY7kcoXmzSaJHk3kuwCfY6WNkJ29YZWb33DxkaXOWNDwa1GxYHLrR4KQzGHj4ugbfTDhm9aUxZnC7LbQX0y7b9qENEHS4Epij55jU8o3DbB/oNQFQ65jLYbcU0b6jvFbCc0nkkwcWT1VaEzoLLRRSIYqNMIkmRTkOqxiXHMjgt1XIH87ZpHGip1N+q9ORHGr7MMMcjqeWazzmv4eGUADPhwWmsfRcm9OQyk9x+VQGVLk7d/IkWqc6ADXb6GWtQJlPS8TU2MkPv2z2dDt09j0vMUtilra0QJ+/Ke0YgkmAIdIRo2FTsIuAki/rRvX5YZFylbv0HGNCg1v2JUa/xWkHlpJZKmagqC3SHyeatf9WUlBWVBeNaOY02aD5mOQPxAjFXK2c2Tx9UQ5Du6ploJlW+x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nFzrwaYEv6jcCvt0YE/LRAe16pF4fYN7x+LZoYoTcY4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "51d2WpcVAz1TYaqtwpv6yGWV56mf8Vzb691Ec6jzf4zO03tNJHsdl43CQisKNxsLTzGHmRxL/l4xhFBn8LHMJhce+Hf51KKDZEym9iiMgRDwcTfzelFw0NBT4pINzgae4yMM0tgn2sEn4qifZdcfYyebSKkbWPoDyaTBRxmBjbQj5/z0xrVZ1QaAyhJqtAycB+qgsnVIo+mnCe1qHZ58bxKAk7w9JOw2OfNHvC7zXKS5HB96cpqeSFiSZmlWqMmLqgeXR9K7XRGca4Jje9GFrO2k4LC7QCPTiTeQB2KwFfR7acqmwxXp/k6o60ih4lCh61EQcL2w/C/OMwQTyZZDpaZoJs5gxrO2Ni0amClmDA0mu8SMcU7J12fcVlSwUWsNaD7Mn4tynNhgMWKdU8M+TxU6gVpFge8h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nHWvXq6ORcg+9BVVNkqMs0SPn6gPk9Sn/E4g4zMfE3A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9VR+5YR3qSlCR+vybCUtdtzH3YNv/F95BPqMh5iDc0++zeUmcNc3PL2mG3ZxR4fzpREP4mprQB0VLbcT0NsT/FF2gjgDyStsOnQoSyR8sSd7YSyXB9qUk1zCxd6GeZomfQtcywCb3KxqUfJEWBZH5p4m2SDxYk8Kio0hJIt//iEu2cwnqhaRW2bQTID1upxBQfxiq6DFbVMW66SsHOYnln3JycIC7xAes4UnGVGRHVU8kqXnozU0rh2f7X1s1dujFRaFJnI6SG3OWdp05GwS4LX6+Nz/P2i7TT6B0u6OLL05GZyOGzwqCHnWW7FIUp3LkYvViYkjizdxhcmiucwrd64fmgUzJF6rXI1FMeCwN8jaRu7iICOJjLZXh8TF3Jf8SSIqwSRFd1cGEVG9F6YVPfbBLRPrfZ+8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nIYiVkWfC3qlh81Favo1AQ+ICNXrZu8oD+XhMeTxQcM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OF6gB5FJQkqjuUouzFTQYvRhY66ytOsKmK5FDi25bTmikMgEYfjny4+sp4tCR5POhHSy3VJRD5LkGa/orwbwr574Rqr2+JCXnvPhJOcDy7Hr0DvVlbsVAcSp2F00/zQDGWuMNevaJ4cpcxaJyvPOihZ6zREBff3v34ZOSz25AiZke2+AE7rQHxAtbzXTH1VQTg3Vn13ewN2AbUmNDwM57GX1RugoVyX3XHBSd5SbhESrXYu50NJmNdz3IcVTEacJBBLpd/cL7vL2crnQ96GuhhbrgVFluy5DUfnR6xBVpI97dQ+2Udrv/Wo064GsoUrt+lv9c/58t5p0iK27xv0nI61InDpDzCumisw9P7yHbnHOb1JZq1lE4T7tEVg34fb2qN2dVdv5LSVyxZ52K4qqcC6yb5kurvwd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nJJNqWM5Y/K2PAsRekeWnpDQ/U/PA9CTjR+77xGlT5g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Jz2jZ1n28+DYGs/CzyNQNTur5QZWetikejr0ldq3Smd7ZOnXvPV5ziveRmRG6eKWpDCyUMnvFaZmmh6eqAEkOO3fzKQfX9jl3lZqEiMrpab91ZTHzgj0PtAYH7TuzYRp+2/3tR4/PXJ45Tq72BsxMkxm7B9RExmstKUCSv0QRyRxCEF4YUiKeDIOGGDNAUhft7OETMMe5XbvMq54Byh/LQpgvZx1nMeoheFuUazHRy52jqEjdwmxWBJdqBk2F9Xje8tmSUEeCESH6ANlLIUwAnZO6FYO2+GuKEdwqJCq/7pD5GvZ235IltgFhXWTGsD5zOetI+k5atf+6JaPdUit9aGnGDgOtjs2ojp1vH6hpZHdi4vh5k4a/C/zi1C09nIPlTKKqs3huaZcY0DtZVE5o7wAzwM66Edz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nJaDiItEHmQ0HVQEl+cnvv5+c/39zX45nYHaaW5Znqs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DI/50PevlMpofdGcn1CEwRskRFNzNcuGWtmnYTYhmQW+FhWkNd4YAi0LVWt7U4FCR1ZTjxKt5tz0W6HeyKhKFIohUvyh0RCp6NLcFRHBtDrdLyAgxTHmMw/7k3sdAh1oN5JDTi5OkWpkTTxpiNHzAwAzrf5k8SzHA9eLEw0O840qQ/+LYwkZ+CCGOvD1shrEMA0W+IPH4z4/aSNMA9Tg6DyoB1TFrxIXjBvb13ydWkgD5l8teh04mx54ppBg5w8t+JRqvfOn2y+iSKa+K07UGn539D8W+HNOYFX5A72F1FNsSYt8fJYnL5ec2y6jGtcQyT7cvj9drqUdU1wjvoEtKOl4Asg3vFq3PBmhN+bnXtJjzVQAYOpdDMcmibah8KTvGl65PHcrsCuhoQjKMsKDvNZTSPvVt42Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nK+ZZTwDrwyFoNdU37HQDdyBoq6AswSlnw0naw5taj4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oR5LaqIWYVOKf9dn0R2UWRedm9uRYTonyQXHiTQEa5d6W7Z2BYqblFgn1YHJTjQQB8YBedEt+nQ3H+hMv7Y40c8ZeG5coEoGh0TJHh8ys4UdCFUQooNbKw+1F1qwwLk1IqllyqrQuwYxOozIdvVysz69u9ex+g9xtHNWxblN82+WMkTYXwjxyfb0rsyYWkGwLRQiKteBAgZXLxEEPloTHOAMhsMCauDegn0ejTEdCkYTPT8zhLsCai9Scd9moylrfb93ycgHijOBShcwN/27ZvuceuDeZfgwKYHKN2dSQdUTEPIWtsDEx3plx2XEUvjJRJLVsMMNVM18yiGkGNE3hgDi20U9rV0zX8rNKMXJf4yJEkDT824ROWBSMajldSIX4nZ+8pSvk/+MCOe4oxcrem/JbcB02EgU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nK8ZOL99IGIohC3AEBTjHAS3rms0JBfGcLGB0F7InAo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "g4AYEV2BX7ce+hd9GS1xFiU51WldKf7KfPKj82X/OmifYdsqVMbYQK8iJ5/eES67hTx0F2L93fts1oXs45XtyipehYkWleKNWh6yhTy54fyEWk6MfYjsf7bZ5ISeFvOIy24Ljlew0YhU9asoU9cTzi68PFDfUnYLnLFh5gHTHcbhHiRA8QJDahQ0wi6DcOGL3is2pFauCfNv07GilEKpUWqX8Kr/SrjWhUk69q5obEwKDZHn24wpgTtB/uIOLVrJy14spTs6ZJOaGMe8K+QdP8meXC+VENpOUzwFNKOhLIUrwotRH/YSRcqZrp3WolixR0ZOuGrB1nTT2iDzwyKgw28ZCkZo1qmuyZVrlE/SWb/QeYy5n0qBgurvvotP0EsDiNh6bAsACmdURcfQp5dCMk7jg1/3V+aL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nKWpTskMGvW8AJ393mt7s6Rhx0y/2OXsH1ubqrPbcSc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mAmpkCJ+a26Uj7HhbMXsagk0UQ7rtlNBNaNwkuga2qL7me7kNdGLgUcNX8ch1mCpm6+FBNNPAz6vzRJ8Xwx4KVZPibn5IozH8Zh8dqd355ViqrVu8s/RfVevhXG/vmLFJ5acfFGG4vKl0L1CdNg4Adj/GOgcGHeS8Dne43ZbfDLI8twMEDaPEeEB9eI9wqsTRbKx1HvzpYrQGIGWBJhMunAynOCYVsMVXzVvdAAr8XZCmQYxHXrK08zIUTZRKOjrWyEJN1KAIBqHvZz2Uq5ukur1GOgOZY5BTstQBltlJBPhAxmXzLc8D2aixllThpy+ynk3gMKIW2wiHxNvEzsEcs31xNJJSljVDEXez5byNiaLO8jImhQx5oJmYdi4S5qHlRz5Tro+XnpPKITjY3qVh8+KzSd1+XDg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nLmx3OwNRFP017w6srr60d2Pk3A8egEw/wq3jukXJVQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f0eJoEnGRgXv2DT+gb1Y+Tja63DkN1dXuylk1txsV2s9b7AjSS6ctxYxgX7MvJAS9YSjX6Vd7ApKlFKetMmDKZqbeK6gcUgAHqRQLlEWXUVHI2JZkNiGUjuNUjx6rpHFGq5cWnlbTgaBw2+xowVDa4dj5+IhMZd+NmrD8kgO+8WgIFJXu5aV7crLVbTrZTDZs54NSy31OpOj8NqfxGHpoq+jnSGMioivMc0nlysg28qtaBbBvzAXHuaMtTzqaZK6Eq4RoowZErSlw2wojglL2eDMmpodvuyKDGtwyaB3D5WFKBbP86ajkL37vK1Kwr1ZobsfQ/IOU1+CmaEQaapzKSLEg/m0jjCQbvTGfTvooCJzeAD8AM51a1iLmGvM5dRRjPNgGu0RIZHihSEWRK9tqlo+QVAAUrFv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nMJVN1T9bu9NgedP1WRluV8SH+QZpLm1OdtKQOcEFAE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f7+mZUNtuxlCk+3d6YTm9oVqFUqBd2vhgCvxrKBXBr5RFlzojNQQY26Avdb1ewNVvaZ7xPYIF0De87ZUkua+foP3wJDpHArQVsSPZB3YSTe2Z6JStTuDQZtPcfWnGH2TzLIWCweaTlTIaqB2BuyFhdZuJyC3+wZlhR4QZH9FKJ0baYA04ZUvzhAhKIRJXp0mVqrUoQaa2DeDJf6vnirp11HinowhuhbOjDo0q9I7MNxt/rAAaNsejCv9lRt4+vWorsmffxCoS7n6C7KgDlb5WTlOokTOrn5WJp10FTG7a8K0WRH/9JhaXrkhkH5gVafAM9vyPefyWuu8mU+tuix3FkPPOsCIEFyYkj+AqdHIYAt4S+ZEZ/z/5SdLSNW8Naquf+FYHXW2zrE+jBI0jS5God0mqkAkgfJO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nMP9oTGzHvd8a7hC/FjQqLPBTJXn4L1A2D1GPNbPaJ4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qMK7DF9ayVA0jc1eG960rEp0c2Fds4/+CxI9V0mNFc50QSqejFZQK4smDQLw60wKFgwHjg8K7Ga1figTC3LIjpRyVe+f1iSgBRuzN6ApjSTtLaSr4ty+EdR0/1hFlDLDNod8s9Mx/lHQIzu4AeSIDrj1nmhVScrdpP3UNVNqdw0uuYObnh9cV0WF8VvTnnk+QK5tVCp7mUv/18JHP8/qMBv0XD7tuGVmsiC/W7eR+xpjVE5URLPDyuTtc9ArJqiwzbQ0NcHiQtMGeuM+5gWME9/X0cINJtJ/Y974gEVq6UipSH/GNECjP0P7rHuvOdFel8dcWiJlAHgHaDsoFI9/y2FqnCDYQ6z1TW4tzbJRgF9q+hzBbZiIyRCDhT1ifG7ceg+flXKDagWyPI00lmVaWcl0SV/cURiz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nMgvhgeoNReFnvrfqJEBMXjAFupejvEvstPAXeiPQyw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w2DpaxjClfJ7y+C36YIi9EER4IqbW1yRNN1AwX8pkhMs8rrCdorrWz4ETFDBUBOKu6/gsz0JfR5odtEgr7ahF7Nc0mTIuoCTl/zIF5Xncm++Nm2zHGbXxWYfuxxPJ4pSDADObgxbDuCjZe3Hd5nxnhQAMF7CpTrHFKSvESfAGN2DWKyJvL12wTrw/19y2nyr/cfemU1jM/5Co8TtrCuPyaL38usHfdnBxqF5KcXFMGf4Y5VjaglnLn/Qee0MSOf9KQq52jCSUZEro2hwafyfdS7Wz2GJgapKbbTLSa757tZtE92IJ8BkxcvY7WdAQJHVodtf7fOM1PPIYPU3WQQRhK2S8oe6pf7DvtZTvCrcLTcp+s7X5352EpZCsB13rMjTR1HCjHvrygjLirSI5SfirVw2/2N+1yBb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nO3o5fqnN49O3dJPghZ133IgKmWWldtmIMklpPXMzRs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GiCiMtJRLBzkY633j81YVd+Nc9PTcgcZDeALMBpKlcmvs96lF84jgZ3XvAHF5Vctq5RD1eiHRj83FEM9dxSrgra5pfTyoVTTHVpK9v+lsywWWXn/d3qnxh6XWmEGePEKmDF4ESxmcRN2dzfqym4pN79Ft8giGvI80FxVL8ohTQVte5iL6eVMVlytMru2g7fAkidO5+Rz3cI5MiGEOf+U+rLiL7JXPtghUETlRXb0qC2fqBPj6aBqc3+X07kUPCAfwcqksSLF3MwqRDRoUTtSvTVEMQqsmUV6nGTV+woD8h6n6pemjeuEmvUzAhW5JGfN0a87Q2Edusm3bVSWCqYl8wNMKvEGeAWHAaHHQo48n0/jU0tfIyd+lVF4egucnxJ+9Sw4OmsE9QOdCwDbkNB1fTLZ158+0Zt/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nPQcQU7VTltQU0LBiiFSkhAZr7HH+fn/VqbI6+VWky0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6sMQRbts0jqiWX6av+zYNfaYMnfV2yzjK4UoCKAKOIwgfg5NbUnlmXemqMlrww+ektum9bA053MEDT9mf/c2HOlXuZ7IBNr4ud2LfCpw0AQ4q8N2WgrAxUY4V44iNf7GDVCOKbKrnNePi18cM98cd3q5rWiN/XFRrTVBd2R8M3WtJ+NnhBtnPt6Wv1rY8SIXZ1eNdWiN4kxUnZBntn4DHr67pgAl9avZMjKEuj2k3N8Jy8lD9xiliJMhItEvbCbRLMD+3lyEQkxLC7ddjLnyvZd6rLwjylVqaB4jIuHjGzEEcO9Qgtd15GEeBnaewwvRie0UhubHc9CDdq1hqZ26S2MmrONRorszCibM2Q7R82hvFtm0GOfbr9MDqQyqHIqsGMxPtWrX0EsqVbgBRlnvUoeRJ8ltdjbs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nQLxKpelVSgeL/4MMG1LFklW+bNlpi9WKhp3fI0hDcQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lzMC3YEG40n1KHcdCWlILKTBsHKZ79Zuy+IpuB3gbIlIBEPkB58VDchgUuDHwEMWHlgMUFF3QBUIDhydv+E8hWtrOgAOIPOiHmiKvqxdbXfzjJ/kaUFQADQvgyVMNf2Ka/ySWERVyLmmRTHCM6NOAKJi6AswjgNvwbVO/I4WnSy3uQ6vHwXsN8u3DhBafj5haM9Lb46rOMovL34bN6lIwWFiMDz4daS2w5PoOM6ZRHsSgt8RtqS98qNnztjS5bTNKRWYa9WcLKyqb1oPgiLmkbNRsJXU7z3dxXotPecZuKegNrJCCUwi7AVBxrODe1gFvYRqZnXXuwFVVMHXOBWd2gYetaj3yaZSI2359fcD1iyT0wSCqG9n6MxZ9xaFUkFgnEtRtCt4U1jdccH5rpG3nZNlfbSwEBIL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nQda9QqkF4OMBnVG8QrUZ1ZuNw7Z5VscVKCQUAEmPDg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GNfZcOqIZVquXQaONK9bTirEQier8Z9PAlQNHYu+4Es1BM2l2A/P9SnMykEHfYuzosPM96iILt72yJED/Fevn7cAaBVyBQEjTw4XfRurcYe6xhZ4LMWStHJwZI1MpttiVAOBZrQDDhGAWQtqKhn0tlprTHz4ID2M2W4s0k7ESaRs26BRDoRRacvw7zS07W5q720qG+DtDDlcC6XCpSDd3pFZxBTQdBuDLwjikfIhxdBG8UVp3IGqyO0tPKfJS8dSg5H6y7NdWh2Ayw5vd0ZDHES5T2wkl0QcJ490Q/BHhX+AEp2xc5V0cgK83cCl5Uw7YuWh4JqTlMzdW0c7sInU8FZ0KcbhPFtMXd70Zgosi/8n2WeDlrc+ii3u2Q1GK3Gbrti5/aKdfEBAYDGVmCK2SvtvR74RoHsc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nRpO0yGCyoOOAa9qeEBaajawsAH22yEJMqqW0/RQOCE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "y/pLaG4K6wpGaHl1N8O6X8mI/KsSHAU91+3kXB4ebetLXrvOPsczxSQODOPhBKcuiKRYmSZgZOpYDhphZ7oRVuBC+CyaU0LfdUeARfrmiRVaxi86D9Rtx0inkmx3xVFgKo6kooA9801jF9vIHcM6y6K6k5+qKbaP/riQsJobxpL/MmWW+CRduLRWslzGZjF7N5ehO/DFLe4Q+2jZMTqX9+832xV6cJjl7y9BT0sUlYzCbtLBSG+1wqkzCED8ZNxcVjlG8GnSJxIeFG8xsnvKPfv0IZLJGBbxdvdQRNpvCzphHAQVJP27/KzVhES/GZRAqnO2Te59X9p3V5FzuSFVCx0eHJWaB9cg1pR7thPxioG30F4bSOwOJo8vB+d7WEHildt+aMOMovnS3FggmiTunGEh6Y5ef1VU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nRqv0uLwp0+Mm/MvCsCxrb4RFSY4tjsF+XCa7c2mpRI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DRGs/ds1G7QPq/+1hM+ve8hPlIXulHNLL4qhwvufFOpBlhio4ctV1NybZ9MLiXh5My5jZmg2BjFLmVwj/m3N2ovZmx++y4B1HRk9Y7xpOJS0WR+ShgIRlgJbYBfEnLhNznbmeK8FNWuPM0nHdVwlhDzLyY5L10mQ9uF7uD2HkF5NfpzahBg/pUzhoNsPcmmMPc9hrUvgMfRta4wsujRhkUFKMJrwd8BauWYCZRF08JWIzhLPqrW+C+sR59qw2sFABOopfGhWBHmb7h8ebOdPh8CiF9UJZQLn4mGQIp36rGRr9Fek4t+2hkQB2ZG6dWoBm0WbuGFTmlUe4M35pw1MGXY0ni83YtUPV8/OKdcgla3b2ivZdDY9HMDufLvxGAyrR1illxUH68L2e84ciRrddA/NyC1yQThK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nTCSPu2N6lpuOnJcTxoD33lZBM6tCR6RrG0sUU2Wj6g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eZ3dcMfr4fzANKMDEWFXSprme9i7Zdv4Aew6aDXJMKNumQUDTghv+DBjvKq/uIKz5QRciItP1Crpa0ehPKUrzFTwHy1pAiw8nIjegrAXrybGGk9ZrpWfBF5J7mniXrHRGvx3bWDaN5KSxHU/htUWtDDSpstyk4q9v2x5mbczjMX2j4d2hytIORCy0ig7U1hKYaFIYAXzF602AgMLIzTlgAFrFMWsk8/yonl9ilYPJLveTuDBna3WfsVMzNgI6lOu/isgadse0fwd9yM8P73QqcZzx1G+JqAXrNwB4WX0XN7FuDXjWnuAEsiUR8V3kJxkZVtaKCSv2rKEGIjQwSdYEQWeiJU1QxBnrtTlwowmXh98fDvzETpBDfU2Gg4KavyVqzY7cfI0OIeftCLQrhBXzsjA5sfHhWnP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nUr1sL0KIbmwY7xrKVDSaoSo6yTivocpIQ3v8tmBd7U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zlgJtldkLVeLUmN/rBHTXWjzsGvgfYT/vD7PHrVNlxad1DoxU4j47EsyN0imzmekOoq6JsijEZI0rzA1T2y4YIRJbV1j9A1fM52WsBo29eogARD1C9+/W95Kp+tDqoWmjn6ghIrBeZonLGkiQHLZ3qJ84Qbda442QQ4CoIxCoA6DS3DOTZUBHOPY8Y63XAo0aT27GJEhSgNiYTn1PzS13eo3sJeYvubeyoo8WV6lzBMXKD3bP0k8Tx520gFyFnXk+7pPAXuEIO8Mrz2CIsaQhMTXzgFm3sng6VyQqvv3hPdvOeBrlFiUGJFaqpDvTGoX1bJ8/nBHMLpAASdatsMTruoYJOeaWfD6VJTsjd5OBaWf2VfAVMSHW5FmD9Fy5rOj04jn7vgpUzqiP6Mgsd4zAc/i0BSZjFxv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nVSl0cnaLxG3xZqrMtapgM1hw29rB9FA15WuiEBUzus", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1Xp5QS8TTmVAVDVsIuD95vCT5PZyYvArAmT8WcSKKxAgTxWTcNbRz6T6w4kMyba7b+LNRxxF4/YONJa7ENwbLcBE+L8RbETWQnNvr0Frap9pkSsLLTw3QX03W1mdrjq5LPtBGorIiqQtNOfhjgr7tpqEK52WB3Vykz6ufaTIPjG6ai6ZGR489E1gj/IxhLXllLeXr5txJkk06T+3rToNO+BlfKTBiKPtYj+TCyhaFcYNgVcyPe5PDKTjOEJxDYDFp0ootnoAmJB7VdWkTg6BGYb1h8nIn5KUqAbVKo7sWKmFt2xlxPLOqJ9eIzyhG0jEpRdwrcQXIY055dZrqYh+Y9sKibyFQAUUlPhhJsNpG9VhwwRhELoQp4ZTIf4rG9YBNs1l0yPKnz8huiL0OFWtKoxPI419wU7v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nVj6sI7rfehIJD2iBA75FA5MpoIEJIFWFTRKyS11zX0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S5xmhpsqXCCeUVhk/xKoiqGo4gg6sa3HgSpTzW5UNu8clVLJBowbN88pPFyG0UZfTpbvDD87tzOM0MSyl2hlsxcC+H2LFzIAcFBVtRPzKD0YJ65UyjMIqg6qq+yg5ijMYQ5+Xtpghk3bEcpDHEq9g8BgdHUodZUwjiarDfNcq64twF4ySwzzUrZPHwmUok8a/mIUQaNjdMCTvHCOXkFyOiehNHkhd6iRVYGq0tc8R6bHE0IelARXP7LZ5Vh2bw1LgIqng5EzzMt+E3pBlvnvsX0+9b0L/bNzzcgDB96XuXtMO0TgTfLNDIsfHll5oGdQEI5qFub+DZaFqwk5jZwDXvj8M4H2qbGMinIZi0wBTFBhcWUO7iA1Cc1rc2rEXnFG3qBQCfz5c8Ea/v98jWxHfK10HAmqCZ22", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nW2fq3kqMC/Twm1wFNQ2nVcKXoIE+Sx/EuftEx2m9EY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TyKQuplYSTx3aptD7Su7SdQdFifAuFGjFTgHMu+bAyz2v6ni+QQ5YvRY1VxPT8E7m/L9+xmgrKw33yL3aQ6ch8IjnmlPVqUAbbLHDWAUp+0aPr2Gd1csIxWrusr1hOry4txRckTTMP9HHV8WpOcOQQ2MSBI5CfFw2jB+w+kjQwz7zXlmhXF6FKoqpltolu+Q9Syg5wfIe0j1qSETJTkpvN9D1w0eSl0/KrREmPWaRgXnPdsS9biNeVpPsf+VUuN3K7JYtnqr9CPbmTFXhlC/JZugwZtpU5rWEFv67dpKAJAhOLAW6voHiJJYNl3ZKzvivZZ5rWU1RTiv9C3wzZB2QrvHwfOjP+qtemXeuMXhijSr1Vi3gJCupTtDg/iTr9Gqg1vlzo3NgDHx4QIU6Y570F2E/gFoO3zl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nX0O8L1zMpGaeqdsBJZSmyQi3aEaNvHjgHzV2iuPHac", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KwC900Ngxi/P6ASqTeSyQZWfl2z+PHTqLOKA6gPp6vVNnfQ9aR+XDqHixk2/RdwfavAo8h/oPOYYxqr5JXQMUtmQ1GMCrqQhnGC9TnRdITdEXJpLOwjj4PBrymF1ZsugHJQr2XBdn+dS+N0mftRfTYxs/WKQKfQVNRB5COenLaXKBvQWbHJ3Xlc/xcO6uluEsDaUcAHtoNCugnyO1uwRJvyKoAmUmWAeeK4A9z7tn1mrNZ5EzK8durEVvQNu7kF50piQaNZoNZZjDvARrG62qZYee/srNKt0WFSmiorgx/iUEiOozp/BUtVCMWkoig2mOOoah1SQ9ZAM7SidK+OiRnl/30U9HDh3TCZ7OqDhNA/08/Mjl04BevCOkHBdWmMU0dukdB8wSOadsZoSD+isOjlr9VbDFHTO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nZIFXwueS1jauiYmnZAMk2hX4N4SKKVKjCFLo4QWTRs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vOKaSGxb5mqkDI2sygeSBZk6+WYQaohgZ7+enXNwp/QQOWYT2MBbeou/bhqQiuW1/vPay/+fYkH1jAdNGRioGGOzYUkTIi+u0vrIg86Riz9SXN4GANWq5/N9RrRrgagabAcohsL3zH9gHN6G7WKRkSDgtGrQHA4LYyOkky0OdRAD8x0iS/yJ6t3Oue0lkdPbFR9vaozp6s5jHnr/Y6GjbS/b6lR/4Fs7KG/OJLBOzWPcitHMqNefJeC6plMGHIgVDxJRyRZTXuon0umaDeY1i1QEs+LaNRuMgTdBZez5HAsSN8VdPtcr4uny5LtFG1tMpp5jvRgNJe91TnKarLHe5qOxXQwblsKT/TyIlQ3m9NTBAo8BO6He7P8luUDXRJ7C4CUW5Oe8U2Le4CiPDRTGFTkojBDHFbhG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nZrVUbseNg0naMn7aeJ5LJ+jwrwvqDO/XBUgjiFsNKU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Qe7W6GVaxtM8I5zVx3KM6SkeOnH2CUqY+3ZaY0fI2x4i7kO/Vnm+THMLg6YOrSWNNLScQ1N+KV7Hm2OTf2gdlIniJqLaeTtx/3qSe/N+a07tobQtBUkYhhg0gOwugCpXg3eTMuObQ1vv4AgViiV3TsAF5BjDyGlzGa3X9Va4QFc6ZAoFiUDK6koJ5KVyANWIUe5M11x4B14P7rxVMpMyipTM+TJhziDOBOznO2uxkcGJ8VcGHN3jHod2YMxwW5hcCIAGY/KPPhB3X4LQuHxTNW4YbKqyBO9mWyONQykbDmnj94k/aDDghZFpJ35XnQfD/12rB4SIYG7BaIYC3SU1CYgH2rTMoELiigoD8nlc9AxVbmXiWHbCOabJwoK1FtHzNBVurxNrMU8uBCAC7hX8kaff0WtgxLPZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "na5us88VuID+JLhYw8PSre58tb7Hse43WKskI0MrFIE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BZtzJMOTiF1/c50kLjBH1k03nehHvE0Gb+eZlf+GqWsFW4IJdrG/jvqYjPz+hCwPCHiG32cS+O6djkqTQQVuRNWhnLhBLiKgPW6pJ+femttCxaD6SkYTMUpY0XKTNN1bLg15mFqw1p8gul+9+OCgnbZYOMqeUAHnoTjyl0wQZ/ZwVLZUrWtWP8DamT2iorc9gEanqBIgo2jGP0oljelHfCe+3w/1sBIsSlaXMA+sDjK6cfgJWVTaBOAuJ0EQqKZxk6yda9L9/e0VLBC2WS/KLohUkL0PoOSOG4FJ/wb6clPWrSHJ7gwitmHzUvSyoTieGHz852AMmqcxQ0qqh8ky0iepl4FZRR2a8xihCI6Nlpc/dzkij200umhHNd4V3lhLAIsmTDMW//+4xJHc1AOVqTQ908gpHr8c", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "naGc6R9Fha+P03yT84kabP0xnYK6QDZk1MewgzX8d9U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9a/j4M9mjzHwP1WnaEU5LeNpm3AjNKR8fyWxewQOEklMjv370S6Q+4RMMY+cB2OT2HdlmTB/Y6MUD1IZKpPpqk0souUPFVeb7Q6BFlrq9RR9RSOamLmrwmaTLg23ltvJAJMpIzD4ivIBZ5g9bv4ldzOLzd0erU2wEWgGQ32WtPUsJ02q9q2Pu2BQjy0jdYpym2lH+34a1UaxB+3puUzr1X0rMQBpKNk6YK6OxYJkcSv8G+T6kwgxLSmb0QggJNMiGKPMYCnNQbKpcGPR45ISEUMfeS1hCAaRHQvRMhSMcv90wXd0FQrnx5Z3VxeOOd7jDnSDLQ8bIDOg7by2D1kRxZz40LYKm1VJUm/XyUy4+wc2UvKy/qO7HTrrjuFaRI0YQarQot6+SzKVXMNNsDQi3fgEwUbVSmbe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nb6+mxqcfOQHHSicjOtgvCFjTQp4njE/EQZfT8JCoFM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6JJ7djnldgvP+AYuI1UzT7qr56+Aa99ma36nn3h6oDshwKUVJeYrrbBXzFhGaa/bMPxbBqWnnAuHcXjXt+efoVoYGCnKMpbHoFhd8PJDCK5Xa62ay4EbI1PT/ymCDW+4Px37Y9RIyHSEuGR4BYQgOjRmJPWP3nktA7xyjZxQ3OquKLnJQxik1l4DPOIfu+PjJiuASpp8AgL+MjpCBHrbKu1Yo7q4ZKYP2dXhdrbG+P8mZc3aaIniqu2iorERSN/l+JKLt3OIV7+OIZWjwn3EOwjY25xdiuj2rbq7M+af3epLwXk2gm2qugUB3cb80IKS57KSycNY59yclI518MzmsBG430JPvIy97MOqVh4JPiwW2dwM1xYcLd5b5oxvALtrLlNoDrbAVBd76zv4pLT4z2Qo5Wr5YbOW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nbwfNIr8loQFMTy+aDgA55A5024QLAhLxn89HZVIjJs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9IyIVZYePk0oxKq6iMd+kCvHVX66Pdqo7pdE2dg8hNrVyQJq+99VbZEQC5ZeJJU5bU7R+jofuu+cYzI6TPHkHZrSqcNuEoXFx3oQ/pb0M1VPvq6mvF/ZvJH3QTM87c/qiRLIheZhtGqdaeYNqctYGsL3fIVogqq4SQIiFlEv1dz8F1aSWThYe/3FVJRCc3kBqBTazJ5+8sdn3P4am0S8ITGNZThZo9Ob9Fj9VDhQ/+N2VvVi/lu40DPO7cto3ZFkAyi5Qf8ZKzDaG04CPl+3Py+Y+/Ez1ug/3M2kGjArMS6nBKMPBCIXdp6KzxzgtZT++zaGjsC0tAOoc3ShTH6T0x/fPdELAjk9NQa4pt4MzNwOw5ZS87idH3X8zeWaNObQIWGP2FAeQREdhFWVFrMiO1cbf9Ofv+OA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ncL7cICMQo1WlIVBM/QSNGkyu35XUlXcvC5+RvGd7rk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VCZGkrNuTSQHOLVmCcPC8YBTGur+Pjel/nQTNxxMMlmUCY0MCmeDYoQPlyDyRwbt2dMgh3BmSYI8QPIG8m8ZIH/I5BejACe3izL2+Lr2uXpsh+1vUo1n+7N7982ySNF04TKShj9UM+l09hrLnxPrTE652U3SOLIPjy1+F0MRo7RXUR5KLnI1jZ61JvQapQP6LZOT4pUd31LjvxWaJIc1yH/b0k2pgOOkydvB0HrUMn8/N2bYZtb/nGJrtm4oqEjy/JkWcQ5UmDOIR/eoxb6+ZmQNYfJHszBAOvN4XfjU1MTVByI/9MvXrSh9RRBu3gujKjguUX5irHECijFBAkFSQOvnPmasJ3KPEvWIjDNpxMDvitIBEmpEJRrrvDpSCEw5Oqn1rTpNQ3BUJQxM7Y18y37EuIzetTER", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ncgMaILf6pJpf8gaXmlbjnPBvuAhPhsmEofblZFpnII", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "z/Msibb/U5a6vSzHB5aGB5YZfq0krJNBxKf14BM+4Ia6LrkLhD+T0ASuQN+iH6zcb90LKkAWuCSLv7DMxvL3w+xTTAAx3384xdA34jCjvibFvX5jelCcrnjmeSGwLCk4TpjgCLC/Qc3lyOCAs9wFJBR9JxKydc6ur9NHjbxu4fItE5wXajVprXJ1bk0B4Ioj5fV7Tuz2b3Vux7qGr/qiMu6oEOJgMzz03/MIqYHsmCSYxh/oOQojKGf33yXMkUsLweYb57XLSJOOQiCmnZTE529PrfNlJsFK8JvSQc+JdoNhIun9wZahG7sTr/m2El213vzrIqtDpt0Enuho75jUVBg1Ys+jGg/PznQvfft0KLRAOoQu+1gYMrrav5bg845BhDoH2kXgrCVFGNguTtHEnlOazYD95eEx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ncjpQpnNH3HAh/yR96eejjas4QJh00kdzqFkz7iWPKc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N4+bhqIpRtsY8kwoxqhlJatbPbp+3icuzFWQs5ErOo26MEJw/UA8KNQIjWxcdi1My7jvVO6FqZNb+rmK7zLpqqm7mKKOl6j9Za/eDuDJagKFKrxzkk00Ib6j6yfwxjwLpddacXG3CuY7aEZp/vMQcUybmiYthdJkcrVlMBpulD2j/31pq7bctEQ/p0fG727mvT7XXg6/SlLFEc3/IjaOPgjUhzru/2gvO1HzSEAoM9t6n2EiCUg9tOH3d9hhkYdLWj10aIRMSzxBqv3ptELX+HyZUrRrhR7rolcig6xPHKDKCVUB+8SmX+PaYmfYdv09HG2FMngzHqQ841gYWYbKr33sh9c27G5aVikHqE9ot1WSxBOq6GhBUlfRn/K2rHIxW7jgRcSmRdhKYbuf++VAX+f0vdZcwOK8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nd7b36e1Xl2esMucreelu+dYi5rFbgZnBkLNADBNbeA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "b8Kcs1+6E7PraN9mhVmbXkoXzKE/PL97tuVPHdre+2oFpiuiogcVCnw4A6f6LEtW3mG0WUzrvB9MAyV12SRjiuIg1KLG4C6O58nCysMr2DO4DNvTztSWZc8zgYQFtA9ikNlqqE32ffD+duCcTxgNo0b8j/8WLwhnO6AXFUJy3AWMfAwTeMtOq59682kFBvqkRxmPHGaF7x06TxdyMaqntn9Hxo+Osb/aJY1x5EVF+6+ueLd+CsbKuOneukVpAaeLvF4EeX72q7hu8r100c5CQpEpsPo6whpkDM0HlxQ8N1htIy/dJUbcnNMEVKqaz1uU4yCfes8tmqaWyldjbYuR/xyXBA0HCIUoR7j/VLHRJ869Kbl62U8KDt52OKCMtKquBHGp/Q9v2GSw3KCmHRZqthiBlgXv85Xx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nd9fV0xgmmONmmvyIT9H308m20o7UGmj3e5IWJv4Gao", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/lzP/ayyoQjUyoFu7izJa3IP6oyJvPLxlSZtHcOwNgGl9e5uJy8TZCmIT23pVZPv56ztf18/f/QqT6nrdNUlpSfXp+bGP2Z6ezfzSXTmHcIn0gjvKi6x/4ghJEjwjjCwB5ML6nxLcOwhevXFjdxYEaHBHzDdfv64zaDHf9MLvspG1wfNyCu0CSlYN+Ej4sLCjc/Bs6IU88vxzreMlMtec/3bq2NsnJ0Z87Rm0j49s6UFuISslLgGanz98A5bZsbSj7Ysq+F6lBZ1l/o7Fz9hMyXXcV7qLriMC7bsn+Ku8+hFvxC5N90079BJU5FUGJ3nRuhGCvGx4JwCny6JRP0v3MfbPrXa4Fz7yHTLdI8q1WgibY8yRm/eBeBr4oGTurey45+GAmnibNN33RoigJbg6tzBh2XuNshG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "neo+EG1tmRh7XGLYjx2Ejc4zS9XTuCRxz3cB00sumw4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9d4gI9ZdE060FTTEXiYsjHak93eOYgmjEaMQj3An0L6bOg3DYlZg1y5gsMEOVwcUFifCIioRr38OeI5ZjQK4YwfCU+UeIrhNOPF0vHeE1QUQvhCIszGv5vRXVxVANzG/NZAv2W1Ox8ofB1hmJJRRr/2wbxwzdZq/9tDADQ3Rk+XyCnn8Nl3eZae0stlQB92WRl7y0H5C4Z8omqt1x0g4WiKnWuJLw8KGcg2z3AY0o1ykJ5rZrbG/nSxGbPZznHhusProz7ZAWTgobVE8oBG4t+CeKUtkkRNxzToA9/OE0WbJiDxU0pyPzxEy2TtnDpGxXwnsorHkMJ2bN7/m9F+m1C+dyDRbPNMOB74LLpWI30PSZkjkcANrfheu54kbYrBvj1as7LOmgQnYvni5+vYyQx3N9oH84Dkf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nfBAvoOq1H64SssFAyBk9EGAc15I/OawD7YmR/Hmi30", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wb75lTDWG0JNQ48WzNx8639fhWUHQyhhED8yEvgFG8nJKbCqZBRzdYIjea3Q9yKZiRDM5cLfoPEYtQBFCBP9N7iOhbef+zx/JzIPtX9McH+a4oN4m+wCnkgDsjedKUNRzxnxI2B92+d1PE8mLA2gd8DU1sofTQcV/G8Tmbie6mVicI2uaOaR+y+PSRugrdsjaflPsbX0S4BLTO+7hyvmkfe4Nsf8nubMlLgZl9Goel5aHiYqPy1ugUUW5yRUhdCiDCLlHXAhn/czQejWNfOX2WtEtlzAqjiBrQcOKUEO+1e7ZaWTywaL57COJEyD51SKqcJV8B6Wrx0fCS1RQUPc3b9Q/HrNTpWKX/gphMIsR/u2fgWP11ha/tQxlCoDgggrHcBpeL/S3PjK+zZbeH+uAddLIouf944N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nfKmwxpP/NWtWoIpqax5Kx1tarCCzoPVKQgQSznWvL8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iYnxrAu9YS8qUL5/q+eDjDsilRjf4B23GLuP/OTlazYa8Mh59K7ynRAMu6oIQoMX6pzbYe7oevhZ08mqUXnr73BZwTT+/nLg7I3V8X87EI6I0Pi0gz+/8yjclPXMkjIW1P8o4kRwkl+Vsgw4Z2BOH+UO3Zcd5AX9M2p7xIARl6R9TX6wRJCJKmR8GxeOdbzJ6QbKBiJ9ix9x6yF8s/Bc0W0LrZuSlW2agPaKYM4MD9WphgVYDAoW13MGB080urbfzx8K1iRX2DzFFZTUpzEBSLfYN15CT7W8Vv5EaiRTl7R+R4PF4pPBwhMEwI9ih1rS3NxZURZqg/O35pY6uWhPjLqdMfrb6RlFPYo3/VNKY/voxX27OjD/qBVktAj+IDP9rWmSxH4HyrnowceiOP1BQS+XqdY3ctku", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nfMdBPT0n9JDRxwQxW+ibVpUH1n4oqKts1rOIrk+ucM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t0GZo2Pa5lrx7poij3TDQNcuvWQGzd5igLtmOlhfC5iTAFPdSCtYAST0AFTkK6dF6pAyvq/CvvoY2oTwBhN2937/2I82ou/1wkclo7gE8zN4o0Z8q+pf9ENItzMKL0eXoV8MvM1ihYqbJIYLW3SkVBnvrxciUI0HSllR9xsLLyx/R003+IN2/yIGuZN7eEIM301zUS9N5H9dciCIlIMxQCuR8UBEZ6tzmYSpKYFBNDYvCHlW8SxWn6LOwYRwiQWPF0mKo76NOpLiqiYEZLxLvkYihC5O76sJca13OJlFTHBsHfG1neEf7MY6JcKVJgtnw+ZwzQ76ez7SVLk+rHp2gkP38XtFt/IO82k3x45Oe6aOzOR+D8b5qUpfTjV8lvwE0ZzKNAyGdIVN/c3l9vvzRdOJYnryTpo0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "niuOVe085bGvRLMGVi1rhabYTdP26qM1HoBSr4MYDlE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8U0x55BD0HCnW0EHsU/jzxcGu1hHaBz9duynlIm76CpCrlBnONcYhttuNPqQ0apMgW01PEBC8WXmrqY7X52pfy5WzDAopzJYeW2DnI8/6bSwvDLgRzNhK10GOFr9mT20KxYa6y/TeCvfuRNitqKjzX87ccpyASW5UIGVXhRzrR013zIEXfivjYP5r+JtG9cUMkwkk8m6qmbX2Qg4dD5ppd7TMMUm02uPapTKuGH9s83PmeKfudNSNtosdznh2yveYVfYKo7aZzduH40RLfz8cJp9GGsM1QRko9uEuqDFT/8P8PPm8Y6Cz6yTUfHjZ5VwBuSLhajieFzPzOxCmpVadhnApZoz0c6W1WUq92ihN72Iw8Z16sbqcyakpLLauwvv/TIR4ryCRlEx+Yvm5AlOCuJHnOHOMKP5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nj6eWVUYuSEus5fhrVLSG32mFc0R+NFZN/BL08+ouFw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N1Jjrv6OrlmaTVlhnLx1iP7DUC+ufbGsvK27f31P1vcKJ/NZw69sEbLsaNFRvpEH562sdXlBySg7nI+ZGkzJd6mBgOsuqFchNucfPmohqyAuyWxXVVpC9s1X9BV3QFaCAOgWJbFsvCtP7pKnmcM9r/THSB7RuicqmrCFciwFS9D6AZN2ekVskXWO9Z+fI1vgdZHlbzkhpp7bFUqxf/EPcZinv2QkOtgatnXHSLdeM1Pv4O1t7tcqW/rlIY/xFUQ/DwlKgzb71YoEz+rj0xlyw3OPm2u1O21vPB7h9rsLdAkAWTxkqta/Xk0Ox2cDfXzgpzEhBGaU7/MLmNiQZD2NKulziTbMhbUSgoNQLDa1e1KHQ6/Cu73+taOXqkzCDwwC8u8yJ3BhqhaPa8WPDrR/NGd3QQxR0Z7+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nlioROapJ7KMPbqrX1HmHZuAq1IUcKW7BtOwRT9s+6w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zLLUUp2iQWiP2eeI4aDVmqWpuCw9KjBaDI5ftY/zmkKtrZbtKXvQI4Hz0znfYA4+k99vTfXjEoiL5+s5FBDzdTccjnUSNyq4dRp5R0MT505HV/8XJqaBv2ru5tkfVr8GC4RUYCqc/l252Az87FAuRMRzUyFHvmREH2S3QZbyjahhD3vM0aISbk619siBRNEGnyB1LcVIr+huqlKinFF7/mHr1WVWWx6AAYJ5Dxf/nyl2NvIBi3gbVd8WbQDKosHTb23oZQTBe7yEr8sHE9A2y/E6S5DTjkrxXq4JmcT+DyILd55L41heqRSaRGkZFL1GWQENYnrhvMwkE69idGGnhh/voqIhp79fvQbyNT5ipqSNk2Rrtz5It/TU1d9E0QAyps/1DiPlTIcLFR/O5FWwThcOKNUYDNwh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nmLMXd6ZbHksQCmj34l8x4XG9sNTNNGn3c3mfqKd2+M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2Q4j1TObm4KN18xCEowDODZB73Ufo3f879+tUbSZftxgAyVNCzHPGpgUnIKBaxSorJNOmH4OlkQD7XXMstJz60eWw6iTr0wyBSIKlSq2nlVSpKNz+M5f/xXw4heV4HluLQbIk++PWDj8eL8oIHDWRAwMexr5OrZtzW8DWTqyK3ronOY4ZOdNACiAcgPJuN1o/uVYbVrm7NpO355IUuBsQ80plgiRBJPbKphklYwN4mhc3T1vu8fBV2VdnPCwOT6wxA3+asRVL7y/Wy+MguL85Q9KzsN5CBncs/OwNbvpQJuBdnKUJQaInHO2O0NdPuJPa/AJTAmpTdxzNe7HAfpHrTuc7N4DneLvzkio10rk784mLiu4GGCXPwIhRfP80rxwSr7z2UEpnAc5xEdhezVCJnPpKUclJAL1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "noc1o4I3ydlHuz8aUudFlguX7dXvZhjh52725oAUdy4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mNPZ7b1+B6uBDK0somYhAqLCTjXONRu3q4M68r7fUmg8IQb5o+PAnfJuouv85QuF1ZyU8+SdNfiYRFwK2NUCAK11Q9fcKxw5IqxHIXQIJPeMEFoAtc00MPWbQC9YwipW+lYM0QFkdnjKvxJETiVECS0o3W8volDSVV1eCIElt7xyCTx2fRkR7fO3guZrB1YMDWVL3ckEf3n1T/ORgzTwPWhpJuHDnLyTLnsgIR2rVcQnFcnPAktJbMSNBgcFVkfQk3CgypkljHWI9YGX9jC2gDEnQo8GMA7fmU4MaNOCXehAQgI4Btej7YvfxvkzZJzo45eji/Fejv5xTYY19mALy7D7buSzBjKolLRx3vVU/V0+0ReAdyqSAU5r6PxxHRAhaHWXutivBMLYwTZfRnjYUEyI8y31zwx9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nochLJDzUhCcig1Imff4PPQmh/SvfqF/o4z76pxGHRE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hMSOvdNKvpQ8XSVZv3VYOCE/2wcNble1CZvmISAyxZx8l2WigWH+TVHKGoGvqd2J6HPwr5NALXiE79ssERCC/q/XlSViqE74n0jeyhXW5hKqg5WA74iOL1r/SH1GMnoEL539dxjXg7jL5Rjaf8il4TO8DxioMSYXWH5CoVfnw7PRRxtGNcHyS+WTuC/zZ0PbcpCjO3pmJYmT7o0Cq61M3qsj5GzkVpGP7Lf0NTNX2sRrWaD1RZ/utGVnd0wUTvZHvGuwEtUrKgfkpi6dvhEe/5/WCk28i0Khp8Omxd/SYFZCGU5IJxaQB9fhKlzVaAGUbnHTgbhZmnZiiOu4oO1cBjznh/4QvF8gbQNvfNptpVhoFD+7zd84JMPq4c4rj+DDOhlcwbOvflw6q8ooAy7CbppNFDpAQFQt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nprBlzEzrNG7T2SC0Fz8SbKRQuUbQ9xSZAKUje/Mc4Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cUe+AEJZhAMcIaErUZHgQSSC/kxK/GuAUyViUMpaBwLspy0e5MBfgGatdM60GZH8A42y6qOn7hjfpQCUULEsvEjtToRgye7/C3XejDDfMaRMCuyCifz0ChxFQQL37oaUXKD9n3ZvOOqXg9SdMrH67h1rKtZpzREuRyro9vBsMBeO/+uu68rI3//ws8zrl0IvR/dyl8HpAMQpMeTxOjvmAgyA2w+Gdn28nxm+JMKC+nonwmcrkflXTfNexZsBXm0RGzFxzfqhd1Evg3gKVy+qToQAGgltSBMWE3fuseHzuNs42SEjXcB9yDJ+9nSk8dh2HY9Z5r9F3HNfQAJ1G1Zb4zSdgzkWO1HLAeSmuj0BNzaxMW/vN632ceuGYwfs66ZDYjKcd5sPmSJAHyV7C5clZxxy2mFTzz28", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nps0upe7WF3l+GcyB2c6D6pWpS8/zkEMFo3mI4jm62M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "18nh/r/a/WmdmvElgWqn47RnzAva6yZWAylaegtRoG493wpjOAaw/eg7BULWdWsSD0fMQjvi68kQuds0qEzentd8JaJAEhG/ay4ATvTgwZJ8fuzzOLZl4xJjYiUe3n0GvV9KhhFISy7j4bIz878kSxS7vEx97viZnSZ+rIo8SKQS5M3PRpZq7dclm2bqEi8huRZsHuTbt8AOkLXt92e2TSbJDlhhIIhw3/x2rC686YCw+Ezv5A3C6TezTZ5AquL5+yARa/OLiPvJvjd5tog+7ZVDEfa/4kuyQ7ss34XRBCpUQj19hAOfDikYFIbuKphMooGr/Bz9oNDt4G254sPa0F/wxsLjh0ApvBKQs4sF4L+9vlgyZ/7g1Qkoif6feZIlSJpVzAHUsIBKj37lCCEnsjlV8R8pQoeD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nq/32Nbhm4RhniOPQElVvZGikn/pqC108Aj5VUpeKCQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Okehu+6ceYje2ylWX/4GeBGzn2NxeVQoxhHkxE5Gc0ZGDNEpNrGtdshrrZqEpN53fMEYrk7G/t8rZx4w8pLSAyhcLx9Fg6Gp6ZQNL1xzczb5SFwt6KhvuecRw5VsQlNNGxNzVQv9wDglUePRjcGYevT4CpPjiAdxBIUzWjTL5cvyvtPGVMeXlp9oNFek7BEauNl8lzchP5JJ/B28UUwV6FmXCKScKdUQ9st3r1bFUPRE+IwaQ20cTkeOqFOENiyQSfixjjW2f0IpQPUgPPxx1C8dCPOgfaV1sXJxguy8KeamYhy17tU8NwNnavv1/9hFBZjJR8nrrCH8r1RXuk7hvCVhwPWGuVyaa7MiES+KMI58rI3JSHp7X1ZH25kN/FbDVY9gUFpGH5fjyAMSy+f5/trkYjzem+D5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nt+U7KgiMT3JxZmo9rCpZTL67lhbdkokUhYKhtNfIMo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fMxf6BLXg2FnksOVy6EPYAfK7P70AVf+K8L+KJbtqO9uj9LrmhUCvKhu0lmRCfTEEsb118M9Z4PFmkC6DrPc6KnwZ4Nc2xjukJKWzPazt3wnN5JdJy9HElM9gE3fPSaiRL8mfaf0DtLXdoM6MnHhQwIHGJSpr3g7BkOAIG3IVc/rHCwzYAbuVDokboZtHIdGK9CeijlGMp9A6V+dDYb7eZUUPlp5MTe7tJf1eTNDIaWwOUqyEsxyP6hAZTWj3KEJrVZQu5OlC8KZ/0BJbi/21V1N2NpRY0eadtnTgNhEQ7Yr47meCfF5mE7g2TA0Gpwpcx3lelCPfrAVPEetX0Go50lg6y5BqBL5XpBPO/VvSyBxIUwbd+dMxipFD8ILyMZvK04EFxvSfTL9GSDRDcZyZ/EYqMBMM1bn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nuQAMmygyPl9YrQhTtWwWn88Q/GV2JDQ50MVGMp5/1E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0yIOzMlPF5iJq/0VQnAMSD0D2DQGc72FZNKgw6uSofOolDI5Kb2jCXcNvVxF6skEYXlFxWtfX5Z6cy11TF93J+2kzMd2ATtqtnUiQFVgprLV7V0/lNC9BB76kX6TZ4Gmz47ewPd+LQhBd3hq3zMyqemtelvySddSkq7iWe3YuFER63awfbQfaNNz6l+HgLZttxOtfE2y5vfx9XmZhfVuQX3C2WXlqHgzpib4jvLQbfCvszvUrB/kOp/05zP+egQZ4yysnW2uyfhod/EYPQyoRoCGp/r4Sgcj8mIdw43IJINkbXOBbsEO8t7gHixa0UekMRkl6qeDqXvoLUvhdkokNg4mITEVvkXHyiZixon3/njRe4zxT9jEJDVMUoevz98zAF8obBkTPmlFUPDv+S2kyOjPKldgZRJd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nvSSgc5gsHuNyfwTOk/B59Eo37gHNHaNV370wB1uPqk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VjMvmY9WP/Nf19jCXhIazCH1EW0MV/lxxJMQ2LgQVy9GpnzeHtSnHXkMhFkXgPjxZKv2M7yVSEN5AOoHeRBSIILaTGwmBu1Xl1VhdLbiEIoP4f/7OGIZ9A4SBLpxjsQXthLypdv21J60pDTucUy4pBV33OsBGlhW5Ne9LWDzTj7HYOFrxpsfc9LbfCpnHxFnsptfhWtemUuyqCxLR3GVLdfqNuKNWEWY8JrCdsLp/bGsSpvkcDaOSLnWBtST+08WTM8/5wLNvpoC42ctW5EjdZokbGPVsgmoojETu2EE1Y1Iqlsm36EMAOTYsHno1xMZgLOmIpm3rS0tgW1LGN9optQBjIp7ObqHZXhtCptRP8gP+0riLqP+hlgWn4hf1EXz9Xy52Jt0aOY80M4W701RVY40YE9EWO+k", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nxTUfIB+mU9z5hkos70gDMCco4ySkroqLMJroquDGYU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "64DK5KVi6+b4I0iwQWsR2DRjgNwG5BBcAC8Q0IlhT/UGsf87pD+2s4YyniVjc8LCoQL05IoTSREM9fnkG3mYE7D75QQk4N3ZBrJ7fo/rWxjsCLs77JLsUCh+0ILo75EyloRbMWHoo6iUC1w9R4V0qPhWRt5cH5TaE8M4+mqioBztZqoy8tQtii4ptnyrr3Tydgzb6tc71fOcbAAiWnuzHS5pVVaR4SvcaqM6dC+Pg1N3xI64ZNe5CHS4lxZk89GsGW7XzkL+RNMy+iFOMD26m6AH5JTDu/liyEyX7TqO3W6pkw6wqz91N1Z4abSJy6vmPcESRLgzM6M5BQsMCarsOe9bWmNjpn2Bc0rOBDcOc2qsZGlUWp968AX3LIlYxe1PVK/VUU7XxtHhlK9gJnaVY1L39bXxfxqY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nyEXogCyRnSrvqhBLYwDD8qrk+eWh/dJAMJ8ZK0/rCw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s1bm9dtzjgcLmcpQLOiR9D7ia+G3WPgxXsqhgsDk7VzqFUNxqOGFGjp7SmzAQ6SDfedBitkLh01OEUuJAGpoGxWQ60c0l8qSmz+GMSS7BBpQSoOHCTHtzxAHrelCOFRJhKcfNTtgJSjiL2UD0nDY0uOQaOSbdiy+GwjJnViUjN1tR+CP39EYK9x92Rt0wnyDyTdJ81qnLcOG3zh3GMLKqAf9l6rTAs7SwyzgJq3OMdWnzWexyVQTmhloxU1lAKqX6n5JC3MBjgQDhy8QMHCGPDAPwM/AQon7y0GRAkWK/vAQFzDEJl5GPUH8ItSDflSGSntXvvVcwVjHy+Y+YRtLMAtcMwO9V3NiuSEY5Z2ORiPVV4kDC+GjR3mdoFbrhKlE9OZibq1YeSidUb8B9Bq/h0d1GhLu3jGt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nydEIzj+h4kfFq7PMVk6Ow4wHl+bwAn9LcePGs3t6HU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M2mh9AaOGkLqhr7bGVgfh8jS0gCghGtf845iZIY+T99kmsZ4WVBjEXXRccanBC0jt4VKXbgjjKXxKeHbzBj0bNnrmpwgMdpdCaCtvOvummJ37HyPc9/j/lnt7IV0qFNpfvQs6SEpNuYNdi855bo510fBQ5SxfJKbPnQe4zR/eKluBSnKVbc+YcAS+4UCn3fJKcGbZ+SwOVREcFLu4JUMl/mZfwyZBxjYgp/LaE5VAgw1lZxJr2YvbqQIqOKjg6MqtPJzLOrWySSVBr9YGDrw9hiRjDvmA1321b0VA/lJ7/CkyqYUj5qh0qwbENmeC/BcUTzFAlywWFok5Adax4WExelAllTTw7F03LbMCnXLwxNI7tXY4ehUvrTIXRVO5R9o9J+airKAg8m19KNWSF3crQOVs1bY2uji", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "nywnwZ5JDQnyjGlfWkGA9CAxyg0KiKpi0orWHdcrdQA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "R8kSjlK2T0jblEDRYe0NFPQr8dFbg0TnCSMMzhjw68ejfDE01kYLkTVxb5rT4SKNgyMcOCMU2UZfdroQP3GriXF+J+zN0NJt463Bx300qJE8xMmvi+dTrrSfb2NO6P0MGc17v0ugTO6yRu6qaKGbWO3KhRJDnw73g5d9kp6v79JYuvUWYNBxuPXXyP859BjIQHPP7lSN7oXlS09zCELfFEPEWM3dl0mVmPPVHbSH5KV6fzIJhZRdquD/r5qa2makDMt9aOqhC4UzKNkHQ5BFSYoE/1zzUp/WCHKVq2b0G8DgOrIcZa8YoNsHjoj0e75pmpK5PVi+mlkyuDTBemOgdE1/Pt+ddT6Nr9pg98ySY+myYn2hfbBkfH9WcVc8CvSacpXFUZLHBJycxi0xIspXDhZT9CFX6gwB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "o+UqBN4HFE0+myAzaXGO5PFTaoa/GtkjiY7OVzvIgf8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v+BPvVSXwyLVjXpU4j7eU9+zuT25LVOulhYi5c4G7g7UmtbanhSXzXV4CU7l/hxWvVsx7HrozJwWKIQe1GRUfOgvSnEegxZRR/tKiuRdVZ6EL8SrI7ogQBioE3J5yhpelopw9UmgmqyoQ/w4aKaup0+TVo95M4ulrL1lFyZosn4ZJ3lwy/RpoxZndKwaB9UdoMnt4R3zhNlfwXA4Aud3ljIUsid0hwUiOCGDbmtX3JioD0766Ui/lxcftMQAUubNjkqLKtdXBjfZebzIKEzDW9ZkTG5oAAOCrvxduHrbG54QZNGXfmwd1LX5HB1jeU1Sh+oTkp25QLJYdpEooPLcKOlBXGVZ6OL/3iow3YXz9C8yfK6fFZw2JTwSZTjbfs6RU2uEEOUWBoS6jKsBQ+SSToHyIarnJBOr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "o/N6cLn0DxSIS4aZfTeBBEAUGIFZtMOMTxN+7GjJDXg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Z52C+nNcz5D4pfAKyaNxG9dm1yKtsHpXUscFNZrO3MaxSXpQlCtigU4xfAoE9su81lk4zYTDc4eQLc/wbGsM4uo8DPudhv/IBsHkNTmdegTwp2Tsa+3Pi2XZ+GRVzsLRr764b7S8UsCgK/AHTfjfW6rnnCUn1BG0OtMlWDZ2/+ih+Fg5iNDV7sq5e1rpIYwhEX1GUvjyjlj7EEuzZMWz6QUuNGvaILXJmSxfeWfVZiwkBNGylXMHClKiqJAIwaOcx1fVaAatcTB4oof+cwTpvJM510M7mBp+ybYttSNbRwnRh3tVtG3Y7t1x/slgrxwke/nrT4HLrXnaBbLjwCBBc87wNwKjKJ/drmy76jDiiHAjEu9hWtgvgTmv47xd+sJcV5xTbYQHwL3L4JC4xhVNTQjlwK3kyZDg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "o0YtDFLiVhoquby4W8QDMSoAIDdFzIFk5t7DQFDRvXg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Gt7iWxzQ3vta1wklr9Wpo3Re/qiigH+nl9Ksc9kHwRtKtm0O7afhgD0d4tzqzduUXt2IH3z/QZKOOF572ehRz+uDlaxwJadojoSd400/QyHaqGOLwwf+3UIOb6RySjGff5adKVbcZR8xhj5kfbUIlRNtNGH37HQoZUXabD0OIgTuFSDPAjaK7IKqsWDQdE/lmt6LL1RXkcmWxA5uPTNThCmpXpqK4ZCWr4LUwCuWxybq5s4j/GtUR3+My8RUZudjwOUljd4JUy7TDlqc82KMLRi1yU6FMK+eNRZE0gX9L0MfSY6fjROTGS1NopnXCx4Q6TuJKHi5wTcYUJ3Z54XZoJsZZF3lMGWQD3NGgPmykOKxNrSg6qVJIyX7VBjNg6l9sjp4TmmyDYle2K+zrxCs6VjBDp07spja", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "o1Rtt14jmg7A9TRESA83lWsgLzGjJctnX4C/EfmVoeY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PgZVVORwEDo+PZhD0DbxbSsSAXzYlLuIp9wpVGkcfgAKoGbDgFfyVrBOGVKGe4P6AyNauIvv1IyXfcV7KKmcwyFPueOUuZmTEFHFjeqoFV0LpMSEl1rWc008oIukiAl32kHQVVopu+LSUjLKDrDyPN5JcCLeZZGp077KrabmLhjg46nZFPcX0d3SHnZXU/OKXQeyz/Z7RdvlqokDavtaYuMytEARtGgiFKSug0YO5fNyQr5OiY6ukqlcCv5DtkNwnn4+O9FYmXjv9gGuivPNnLEGd0BE9N5E/yu07IlrwX+l9wWdE+jDHat3bReF3RGSgEYojyQygCe0AF+SfUYxvormqAjSs52VbfF/tCiEOTJuCgYVXnYXrL5UrCBMboCweL6dZEemHmJ5gIFl3xp+MMYRasrFb6kr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "o3f/pysQ06Xi7Q/TZKjeC6KGsjXOvreXV3m751C0zCk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gZPvnWb3R/Jbjwy1KfWc2fPqQ0wiqg4zS2qxSicwp/rWdK5r8sU3Ncgh4j5x4ToiAA1HQ6ZcjjITQNfxGY0WEkxH6ICqZ/4dbRYukBNPFvd/+ua8B4vvtzDpuA8E/U27R+nvh4pgkNH+y+CY86c1IqiVaS608E4CogaibKWedodQP76znu+GQ41rGnM8ig4ETXviV7y3UUCovZnaJZYG6Ig+9BaA56t/fsWF/j0ZX+/SofHi3FcklnkBOmJw9wBTNkuoo7pzq6l5IpEK7tkgsL0gE29U/ypo/nrGhqcXR8EhQIY86KIxeVnAYufkEqlem51jwxmZNkzb0xugjVZGYMvIHg1IjiuyQyK67gn6v663mY4fTLz/m2wPNBk5rDusGvxjnzxXmE0/muRLzVYh6VqA5z35pprY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "o3gJObX286y9H8SRxkkxWr5aLeAqtFYSlWK0cKtfl78", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Xi75WdayAUPgex57aFWVxPfMNINdVqKl0mULaWE0hN3HJPZc9hoawnCelSNRa2+PmmqzJ4C1lKCL8fJTiphU7WJ29kOd/5eGm60ZHAtiXckcCT30K8NZiGE4n5exGkaFCaWr0pKB8vN2iG1e5fPv19MGQVWmAuSo3ohgLCgu87gY9Dis1R8OytROt3qoaHpQCNwfDpljv4rf04eMK+Q1aFZaxNl3KhpCt4bidNUMtPh5Jqb8P9wUJvke5GqlFO9GtxtNxPdu/wigINrWbHdsw/VmMXPO53msN4KnNi+BJr6IM5kxYzfPGzU/IxR3YCv0Mt28qIUorW95VazeOMYd1wnWY92LgHwDQSXTKuVroTVrOigOXyKnvm8ncSHUTuyRetp9Kv3Rbqq2wjP3fqc/WN5W/JKcYepx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "o5NmQ8q3Q9N8YJfL7l0oG32c8nbwovwQLVMELSRveFM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5294P7n51bkhChz1TAfvNtxlwiZEeSKAz/nbjHfB7fWE26uXDnq+x6jsjO47cuR+krBPJo85tR1CTVY3Rh5Rp47ycMZNNmodWPH2ONsgom5JCTEdK8GrfSY1jxWs616VEF82XvGEWMd8wUcdW8cQwEJkwKnNswZgQdO391pXnDa+j3ob5yPY99Ci118wx5zYiqC58kgzTy6IqDw7rWB1tgRxQV2En5ZzdWYDchW1+IOJ7Y2urDavNtsBTYAw2ieaQ/rp779sW6eQenM1LcfoKHGLpy9d/h/yS+ICYijJj888+haVp+mwH42rHL4ebt4oZOZ/Vik/cj6ldhEHW8y6zfCbtQaJy1dAz2w0JHEbgR8rJWLL36kTfghjzgf/4gYl5BXp/51337aQyNC408xyCARRejXNIkcu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "o5uvsr7cBuroC4FfMVKw7o4V3gWGc3z4ydz7vrQx7QI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rraU3X8jdsLkH3qYRkuQ3zy+lAHCe5fAh6Ng8KY2dksv9lrkr9gJOhdPJG1+fi7fEoMt5yfB9G5B5y72hhl5ei7VBWuiNdQcg7boYGox+OKg6aqrtHbiBNksm0w/yHYIhGrkQUczeoF7j6WagenaN/Lsl1LCoZwmWCtX6j7p6Qa2ggWOeNfJIxR17QA+E8nzrAOyPKtMzCQLc06kuaqnTWEE+tshaitmzTGMobtV42JfbU2yFgmf8c6xKFR1Yd839hkU7etws9k4afhqJvoWDpJgqeOfED1obsx5IQTTIFll9um2cTQXX1j5zxO84/lES/SjkJr+qiXbMI8QyMToekH/NZz67BpvrpzSq0Rf7OJhfhajz6KTw0xmImBcNjULKOrHMyYBtyWkK2d9NwIhuZhgtwZ658Vv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "o6udg9wU71v5DO6huRctSPpj1l4jdnVRPnkyyISqtZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5cvMC9wZP2HbXJ2cGuS30LR1HviCDYCH4PdzbM6wPzjamt3CGL0S57be8SV3SlXpryfT7B1MjL/zwbAlI39hC6IGWx82nZxm2ukxYD9uxC2f390ieD7kwHtcdlpX8PA0IAq07Hn35+IKDC5K6t3UToDnkNexi/Y+pV39TWAiuSMB6BCMRfY7Yv+nbrUCVsmhSQ4OS1TwuCgCIYEO8FcP+jYMRE5UYxnzk3xYGzTAOke1X4LeURolvsvLETsZMie35KmEUqka22G+2kXmQLrUO3gUrwEz9leLTjYt1Z4xxQarynrJ6RopzOzoYJ/95lUe8r3HJGTdfCENgrnM/HfdTAjwYJ7M9EQFX75/wioSG1HLt0aHBM40JX/3FObr9O2g82XpywpXl3s9sVScJkIQTSvioitnbibS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "o7+2uSJaQAWJykPO4r88fxWetLAxCsm71e1ulcVDY+k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QJmJZ5yJoQrmEMKc19ueDDFNoWfdlV2L/0p60wMN3Ng177DzYRp8ZJKf340b16aqVegr+6XtDYPQmk4oAMutlUWyUEp3l0tYsMypw78uFOr6ieWe4Vn0P2iYSg2gh2WG9LpP4R0gb11LQl1AysBonEZ/RJ5orwK5DpIsiHpJK1mxInl4+bRCDsbGS4d7dAxcOtb8PeaBPN/3RwR6bdy2XaCAll/Rv1HsvWXtlUHhebnuiKQ/8pK8b1Jv2pKA99BLlRQUv/bQ0DDkiFczj8C5C/yjOcgirm0G4rltsubm6r9NTWdPOr3kUV7l4r8fkFbuhhiG2Ag/2q+p7INQxmSNQS0szUD5RcZ0F7UrlRwDwfuyG2SDJoMfY0rEg6drWielFa+NlIkHmvxhpUXq5PWHj+LbCkCFDMBP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oAfZTA9PM9dme1fB98YDSFypY08NBSJ/OVLplOEqTp8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cQLSeE5fVw2TSSMIGkmq3tIUaQelL7r9KsySDUvGR4N5k0h2km5TVOtp0ZMYxMnvX2TNSBCnRwZxZo/qVTT0vAyTbvYjUIbMq12SDTlmLQ+XDvUjBsEtigOzRNDeMF6yZF+GLgbwsPgnYX/BJ7GFQU27Um/BnFDr3iT1NBC5x5q/kREAVBXuxR8XnyCdxPjl62lm7rHGL2wL/VdpYmP4UTG55yP2TVCW3JSELuSx9YGGzx38V6qEtFKL91xwfoyMzh6e1uDdSRlLM6bePhnv92y7sc5IOrNT37XcDTuhXCbe9XOkKsVO83x0LR4X5xvpfPA1vj023SkQfRPJbxjxgh+hJpBDogHuAPpQa9MKRputCBRI0y+6TD/P/8/K6s7VLrUut2LLUF/gH/VHbPqWgZ101u0ThcyW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oAlhvzj+ZweSQlp+9/oSuV6sckITeX2Xg3YfSBeyDNc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gISkbMTQG5FOKQOs6Q1bULy7pS9Wgz6CuVNiubbgJxrMW3TO9g3z9S4ljpnQFY2t8Slh5jkGdepcVS3wGnMWTovhVLsSYUXEKokpK1h7R3ZMPeSHYABkbAWaPQf7ksMVBTqd7IeQ/MGuQ0MAswaADZGHffYnDbRvkzQ9Agn0INTbuLRHyDaOnZlr9miffpwyj0X0IFnarjS0jLLt7c8BvLsNusS3+sy2ZIM1hMOSATNlvawmxP9YQIUHCoip3sAVx0LQUIBkuW71y4AFC6eCm7aiw1pqFebU/5XgpWuaKbJ6FM4Q/rS3qEkyV0RKGQTbFXMPMhZjZPdb8VPoTt4F6u8Eja9QeOBqbC5H3i6+6TzZnNktf0FsM6eOZHBuQIl7C8guQOVSr4bR2PIOOnlzuW36XAXGfkFG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oB/nzmiwyOZLX+iM9yWwvBuY8wN7tvqObc8SFF6ijNg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uxZPxwgbxRe2GK3YQeHLYr0hiXm7q8rYt96iT83Jt5/tbkVxPmYxwx6DTcV61zBhLcQO48TP3vkBYSZD0toAPVGfTw21oTu8l035arFaF6RXzVJ8JHqo47A1g8S63U/Pp9F0Nb62e9dYLGL8tqU37LYoO/kiICBOPcvkp9G4GLv0sgBVikCkIhh1nmpNfR+YnWNlPAyWawMLcz7+ht7ANE9vmZTn/D4yrfb9Hz9OqWq9AO+STwqixExDYmgEraJojqICpQEhaCOsBMv9Kd9KDhSB36ZRcZPGpSdcUFj8k9+QLoOESomOBtx7x2BqdFWU2H4+cHSX9f4Pj7m2x5Xn+CAQQkuuVuWujOC4uYFe4JGWBXiClb9UUg97mZrQQkHK5x8bPAo90jcYB6HqPNE0aQCk6bS7AyX6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oC+VzpAAnpm2HdKyYYqqOJbLcIGwSJqXgsSd2ELhiKk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6+ma3c+YL5/0lvt3MtHfe+YsRKjBrfRsGW4oIc9aE3x0XPSj86LvIy3jh/JtqrZMzY85wwYoQCUkS7UUZzul9Av6G4sD5NtBW8OUZYIVbSAkKeqahyX+v/tuqVhSxpC5Riq+OFrG9O7lvpUPZZu0IAw8BfTPgY8w7a/gl5GcJG7PjEALn8i15vb0RJ8n5Z29yFGHbzh+W5B3xCvvZ0NErAHSj8gypX3G/6O8Rdv/vxucF0M3j5H/HjiYwePnZmPVF74wUrH8nirL6f4OXpgUNoMN05jM3E+ZAKa3g9HkHvFw3LCaJe9U5Cont5OH2fihHE1HilimjfMX/wvJq/Uc7M+pNOdG89Rt7r5VgR91INGyumbW7Egso3wEjspG7Lk208hy4lg3MyWW/+PAzApYwd1GrkE/kHlx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oCH5ar/naE2XIXx3Q5bxonnTTPiR89Si/FRQl/1RwNA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0ZBa4/6nEN41mMSmtBj313mc0aab2ZgxDvuspEuBkQH/RT/b49YJu+WLA0aoI/e389zUnfYMr9AxiQ5ze3qDO8gNSBSVdh4N/exGx5Vn0DWR4/6oVKl0WROW1L2a/Xi1kdk8WdjJL49sZ0/o10qgCtotfNBmZfM6UsQCTFzsh5v7L6dmGzREg27Ty8X/mAip6BWHsWTMbVQkD2VpAgvgFIeK847fCHDir7+ooVdd1pJNvZr2iDT+jZWuB8aR4MknEgzMgt5RrEuljYy+EFoglzhx5VmlCIKboVu29EqeqS04HKH7el1lLNpl09QJgDaTCk/fHIsLlgYr42V++1wAPP4vpj5jnxZ6cHD2MYwlA3R64WOBgFdMlPxwj0zkebt1pobeQJ1AOEo/SbVM1ykqiX2N7WjH4VpI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oChiQiSi1212vfXnu8vqYm0peT2MouOebceOW03yGew", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zVYexyDW5I3lDoKtXVZ5xCBFpjVQ9N7ChxEJncXy6+uCsxEU8UsMZz4DZKflVkcotnpP9ACTDWVK1kVESY9cw1CLJf87FoHJkuWdanj+3+5TK0jl01d6I9fszE3Vi8f1omEMIb3zokOPBvl7PBvMGKe1krthe2Z+TCLEl8rBz3BXenN+qYe1gGN28QGBasIkyEq/R5G+8B9n9YplvSxphgRu6tBukKFu2gRTDEymZopMjPWmMMn4LxX89/QaS20ktz2oQR7KPlQ7AmA1c+9Z8qJYDq9viTGDlAeqlWCTBTCC1Oa5aNyxasad5k+bFtc0olMju1hZvNQvjo0lAciDZRud7m2D2JwdBy1m38r1AAkX60r022MUFRA+myaNfM+dvfM3XWkyS1klblGcBGJwFvCcqrStoK3K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oDL3cPK/0z5PZKxnUFA2akxxfj0mP+6g+YR7Bastooo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3YJyj0aILJGT2Ukgy9UhEGpFSIWx7JGPIGjfnys/H47sjtReuPINRhWYl8PqmfGyZU4YlZcg+qe61uqbYQgLqce67eIaFVes/YJwK9GY4H8OqW3t+4ILRTPxFuDHt5ZiHDzM1VMrOMP3eMWZk2fEAHxyPlQtVOUgsCcgRc3Wx8rLwU7rS392DdggXABB+mfejIS7hHpeIVzPMpH9mFCRfylcPu1rI2tPIwcXmamYjO2vTxq8IJ/gj08kw1AL8fIarNdHPhwmdAKaNIZf7M6FSOaGC0ChGhLlszg+hQpTUvlRwS04gmUHlhb5DDvXHMMMDUmKZKGfrMbXssHJ/hqhecP+RAm4pj9j7K6sYhpOcwZq+MY0DfkgT1BER76NhjxiN05vtpX95I1pQFi3xTmAYseeNVUSMfBV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oEfjQbYRMZBgFsQ4Yxt2ZoKiKexL0966w0ET4XXOWDI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+EUTUWHqvUpkWCOETwGsqcSnHGWMOq4EAmnGHc0MMlxG+/9kl4oG/obqkO3T5oRl/DLL+RyKE10XfOxcVmzZm/xXtxeG1FGBuyxZ7eAN1xfCFWyRjcMc+pIbCHpg6/jJlPYxZ9K2YHy9xoZ1z1arb+gO4rPALMGmPoN2LhRieKslevixcNVI5pLoQ/ptFylPr5X6KrDFx4eFKWE7e4yhuzGbDQF2833S4dxDQX3k9ELym5+trNmszCaHf8PrrbCMn9mmP1GE/FX6dFnNmqzx4MhAliYBrX1vuzZi5mix6/oJc4qbZlHJRCxvsLJmTJp+nwJKC1Ny31HXR55LNTB1ZpM4RvEeB+9KCrPXa5F8hw2WwuYD/r3s7nkYwkA851s+svVP+rpF/Bcqwwk+O9EuR7YPJ0IpFYU5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oF0sTz7jJImxWmDxmAB3AYFxYiWQVFVp0njsKOMoaUA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YjmYhcmmpKaQcXrJtXoRe/aOrqUwElTxfyq+ADZXSR9Ln9RmSnZPhHs3OA348+CvKvpMK3yfwVr4M3JxyrnXkzFYlIYHuD2SV57nEArPj8DwUitIDQv3IJzxBpFyNrCotKkR6uICT7/1Urnv8wqZ0EcY984Ma00KqZj42KLXXwf05NmHj51ebaMwp5whBZdZgqdG0w4Gn+dxKcQdCCD3RRM5A/iVbP18O/QDy67xLkv+c/rD9+McsFcEEbXqjkmFAQZ4EKmJD1m+6S1gd8wpDZLczvEfnTbtemUjP62D/ehKXxpZrDA6+8n2Cdz20QCQ3b9JauQOiO/SNTDUsIHbPEujQs6rPt1exg1AHMAGtJrGBAN3NahBWV7HhAlSbEcDVAnv0bwM4+QLXyKFPvSdA2KRWzUf5Tff", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oJF3kh0SA7fLEXg9CAXva+oQCX0rkbPe+EJX5W1fpw8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NB3e+vz+2mF+6BtP1lCI57V8ovdi9PrUe/ida/eS+kgd/mJAE+MH6dShPej19xcNISopVCA8tmuwADrMM6m63jTCg9QIuVp79iiunNX33CKT9TpqKj0MwiS4iP0E0pODdk4n4rpsGbKdTbO4n3O5uiAbH8WbFn83Sk6sOBpGhtuiqCZOIFTmPtASoi0qKTo0RtnxkCwzn0yGuyewDXjqU06d6OcUDOgpI1PlFCl/jpPBc2doztxVXs7mzZd0eq3rts8POdoziP5hqF+u8BHmKh9Ptt8HOvt7u9w+/GiA8N8IIigECp7oxJxej7+VLB/EZ7FbKRws5U9IW7yRgtYmS/xegsK/UWVSoXN7fiHn3lKgOp4K8eU61E/UywNuN6dDEyKKZ4DyhalaU5j8TEo32OzKV7UXEvo1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oJcraK76kcglRfeqH+gpTJQNSe21vDnn7m6F1FCA/AU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W57mZfV0iHfsWrFDxASvnWgoa3iN/rS45uwyytOnx3tMJ/OZSGaz3KMD4/+yENI87Gf+GZaXJ1W+Sqckha8soOqN1tYjP7XV0lybgZrgUiRcBUpJHnsny0qtOTil8BzyG41zhlDieukiqPAItdaFE/Bv08rJlNZQ+T+9czGlk2+WzACXGeXmfFmKmscNt/OrwAOgNLj/a6Pas5RZGmq0+CsRHfJlEENXZVDnnOWfmbcTzO/Vr9LALVjMfmZOoLQ8PZESvbWBPnnWLW8NEArGG701mFSamu2UGY5vZOYzBt6CElyc87mmTtm0u7Qz5gVJk2vRhhrWwqNEnitDl+uJ9mG5gnQH0yJiA/eNy8KdXxy+XbwJDqPQZY+dhDZOQS146aL5qTRKQJlR6CxKC0as5gXyZ47hofBQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oMJJ//Yw52VUt1DQTaD0EILnx0D2/u9ZEQhlHwSD4Tc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5uYbLZaix7Fbgruie6dHHSLIj8Tjy4B6qEoNTnIGxfX0zmQWmpv7IBLxqu7m8HrM5HRWZknehjyA6UH0y6lMg/0ATSqy3HsHRYa68BCr/1eYzvotabmxUO5O+Jy7KPabMbSAQfkAYcuAcWtsE8SFm2PG1qJxQHr5nOt7awF4hyb9hMmQGeF1rNGJN4zI8UicKfxyph3oiiJJbips1MPFCeG+yOKreHl1YcraLRjtV9Snqsv9V6p0PQyODA2hITluzNhaK/ELCHFsT7budUdqPhM0O4TMBM/VkU6wkAdHdlq+SgfqOhnLb7mTzJgzvsVZaEISTGG19aIZMT2NtVuYfysfi/YUw1m1LIPx2H1N8eqwu/OaUMqFlFsBEf4bilwd/MxxD4v6TiEJmLnYgCz8ckVoeu6i5ynE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oMYyRRgoSlATMCETJCtljOkMhI8LfIcyEbx+eSAmJ9s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nS3kGIPmTCgi6827Kq0f3JJSlW/K96Kis0P+HehNCkAUxY0/rEM2ruZVBkc8za6TLeVzccr1myU8CInNFItK2Gf0NxrcwI+oAfQ55uu5/KVKOZ72SFvhR5XxD+1qFV1+0bGE+RnluBaPR6pH6P/le2dIEhhZ8Nca3fZjmtnPOlwEfO0x9OSkVlm2dSWApfIefiVxIg8alBZAZfxegNKYBWcRawe7Y+DwWtczTHU7GGupEGSJ8pdBTPeilQROZr1V4m/6joGtqkNXg5IcirAkz2QnYdY5J0oEu3RgpjhDHKozIkuG+8lTg2VNHZsYrFKY7QCf4zvftKUVdeFiz0fTuvweKuViPDLnF/LpV7FsPVcQY/pLKx4kialwxh6lbhnWrR0JvvjIPepiCwkO+43+gxn/p6cBtqM7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oOd2q9a2QJHpFJ2rkHVm2z0DOrw0kGI5HlANd+OlHig", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4ASWjqRn2ffU949auybZ60p+IJ7dyqt8mjszxSNWFAGJ6ePrj7jIygVoxS+skbJASiWXamtEvXqFfsLqsvtFS+T90tAEhPKVAdHmcHiw4RvDwFHGOyHu2Pgl0ixyDysVx+6CcYLkeUWhDVbdn+w5HGe9Ta8K5/xiQFYDEHUxE71XdD6EFe/aaYeT6FWQU+nckWOzCnf3q9wID6ooLEsG9ogg3QROXQ/XuztDWvD1rlO+R5HfGhwP6WolhrX6JpuH+oRf8GVXKy1v4ufMnF2/EtFteUIDRjn6yhdqATG8v7R4t24DdpcEe9FIbU50INoFxhRHcSnHhqcpCZP0iKYO3t6w8+volk5j8c94EFsriV8de/ImO/Kyx+31rTgtyCegtjy1YWBdtaJ5pWSTVhWMpIl9tAq9Bk6K", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oQPUCR4cZBxz5dWbo0dpfZP7Q9BJlWIJCxxR39h6xCU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/0D3jYhA8A28yqWl+9OgJLgDVt0OYLYjzzUVzQy2lZ30tMTvz9/riOocVR3NRG7H/yWEvg8dQbtQMMCeX+CPmdEudUtsk08efqLv6u0VwgqX9TH6p0p3YOTmujBTl4R2CCp92IFdAdtwLyZetTIU0+jUOFq5USXbGv1NY8UX7gCLgXZ3yrJdR1zmQGjutKhEJ0GSPsjOD8v0W20/K5phoGhyFMnsrn8r0hrvhtcNKLrWfq/Gm4HCLJ2X+GIKu77frgKrpsgrJIyb7R4rKcl3vCLSWkRC5Mf+qcb3gPZ8Kw5bzT7NCGmQeX4jTm89Qdmgahqn7F3bACnwDINNBSGznG0LM2ug9TkUagSDHy2bgjlv8CSSbey5AS1s2b6oJYNtaG+VMYpmIAat1faq32LNbkwqJX2dWX4v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oQkPg7kztdugUMKQLH6bWlm/WqpXX28MPPiB5EKrEpg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vT4OkrB+XyjLQh2AYsqR+elVVfTWiDKLOVKyrfxc72qKb42TN30BlPbpoL3AZgro9LXclJQf1Y/kGzr82/rTVdITEZrHFExkNp1pkiRPMYibl75qtjrQNMeJcEBK0yC/YWYRSGs9g1dAfaKFOf06XRoJ0r6Ah3oD/ZXV43HakffkJ/l9EbtlQnbK/Ia3iPBGZ8LT3XK++gPtp2E/H7uqE/S/dzUlk8D4OilkSfnY+TqlwNlWuIElo691p7HBAEehJHKRCmxf4UuPsdbr1bSuS0HoZPUCnYFN6b+65nEVVTkYb60HOJmv+BQhZ6J9TwnhI4qhEu3RYyetArL5LuVTZPRUEObnpPZCPxqD1r15g9Q9zDRSl/oXPGaT/Xo19xgg82JiwGGInFxNAXMiZqHchIVLLjDrfvRF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oRy+HaJFd/EP7pkaVdV0IRtY+vHugzFgG2j8PHT0GGs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gVnOt/lrmmUu2kWBDcyO0k6Hv1RVpv7JYUu6yl5OhAsibbQWTu3UCUQtbSscxFxI6g6b+t8lwWE4+xJ0B0Ekj5Cq18OdO6XDfQUQTMZEQK2tAsFJ/EREbeGBxBzKLXOZJJ22hVWP/SRtOcqq6ZOtdsnjZE93m0j0btOdvxrBdIANfqFPxPG2vDiB7KtSAyhm7gsDIqi/64w3U2iFjXghhlPkkImIpMDiGN7wZmfpFe9MuooCZEcNa8PYOUe5pXJkeImYyqCEn+ZcrrID7hTcNGOYbcdtIu0rHQUlKBpZVWqN51wMz9eA/voIxJo+pNUYk4aD8KprI+OQkl9PVfqCUdcZLYnMEzol5NZnj76L6kCu1lPengdQ2elZ+9pV0RMNXQSN5ndcvwQQQuR6mp70aeC2Hkug7IB8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oS8cSpeHsmTFuGb/AQjx5ZmJEXYcEvcjnqb1d8tEXjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VQHahlTB5mnVmmN+OEn9Zkl2duk1buiH8Uk/ygffe0G+Gby0DIdRavSeVvXtk3VkXS+g6vqz1Q7ImUKii/kGFDaPnaE/ucbq9X09nfvZWxCpQYyd7HSwsBe7SgmMh1WtdSrjnrEUos3zlmp7Ous9dLda2QqHulOWQ+HGLsvV+QHNW4bPa4CLfm4lL7GKjZ8Zjm9Byi7vHY98neo2tzidM801xrUc66BJCJUD3PJtCqv9sgSRAzcnI0m/k3d8GPJC4Anly2rJRG4KaJ8wrrr61Pkq6oAO/JSnmAxeYq845xeIXKd+1JO1kM7uTHzfJVNanZQHyri+msNuvmdzuOAWdy7bG2uNLY5YphFg8XsL31DbL6IUgqGW68oVlUOAQg77XCNRV8SOCzJSPa+551uWnjZNnN9nk7Js", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oStXihIJ5ndhsvPdt9fFKSLrNkyXUJrioMXYZ2819Co", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wX8ZK8VYJj5vj7vaodwsVxtTjs3fSLgGNZ/rvw5Kq8XoA8XRJE+ctO6OD+fty1tEwdj7Ppz9R1rGHsuilbxHBqmq/AKEN9sfqkwYO/LAT8LjK6O3EckAv0Kz9r0zkAkHBm/9OsgkNDfLa8MW9JPD7ejbn2GpYJTfF9sn5b+ku9wbonZT5A35booCWzlI1gbRTJ5ee09DCiDIPoZ+zpXjYyBzbz/hbbbWb0wy738u5VTL/JwXh+qQClMqbiC0QMJfjwYxJSwwcrNzZ5c5Xol+sp9dCFCM6tMU91u1VEhMHzqS6qttFEskLhMCGIbsvH6aa4fdX2HjlWPs8eVoHInRhF0r94iyrEa+EfIUb+MbRABTrc5r2HUuzNX7PJEhIYcEPCiCm3ky0A1SSu8bS2Vc7Im+p9RiDL/x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oTrz/lghN0smx2nhFQhV9EjlxKeEIHzLa0Z4Dnh+rbM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0kXRMLIGiVQhHOrS87N0dpyZoQ34ASGbbEdrJkBqWYmskWgKYhPNHG31M5ktY8HRcUAWr+nF2p2w0FKagAWkPSsjZFMR8+v7INf1t0HBxCczIBLVbJ07vBxsx+1EKbGfwUSCOaf6hXczR/EqojbM63V1lw5/rYAiNExTTlpWqiYMdGDHAFdKWQBBqi/mreWXjqsbmZMe6048n6NgCxbhm3EuXEr0DKSIrtu+BI706DBrmxvP5x5SYyz5z38lcojR6np7xQydGqO3+c2Sf9pJy9uwWEDXto2fMMv9DS3fSUXj3zrc6SkmNUQZSnOmgGPqhsMNM+1x319sEUWhkI/5J4JmwnmY0DJT0sLzIl/FkOiWOlIUwzU+9+C4pctwl8KamwEJOrLdYBYaCo9w0wZA5sdNwhE0/OH/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oUgYh1j1seqYA1dloB4yNH29H1DWZlrcsszmGmAk6Ro", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Qwh5uvK+1kWVa4SVsl0DiHNZV7ax+xBtXNFaDKFVuqSLdF162GBcqnq3xUPLc3T1s0MeSLeMM1xydjLfwF/iTGJobfKs3NkEIc8FWrpitsZL7m7lNyXsGIb+RKWSWKFSONDPrXiSU6mn1Lm3Na+TnFkiiO2b1sRAzwXEY/IzeewB1zvB6dzSXaPsEmp32S5vsRI1lL6aWxLO/vcX0OAKefPVSHLoNWwDhCrMT2kpGL1iTp85Db7Ir7p0219Zf/nzLBtqPyUlGguI9KHqe7TFrLYLa0FH6Apm+PP+7tU9LtepO1R3CkpC5n2pjDWTbKMEmHw/FIF+YOO1wrT3RsSbsP8Xq6H7Y+U6gtrQju8p/z22ceKESupP4F+0OR6BwFM4zmR3v0yraIfl0M7zxUHVRfxEhp5RdjoO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oUgbqBymmgf6e5M7di+ARJmRRtxjErT9gQY34sKWbEo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YYImWO9sSAKjpvlt+Wh5MmxfE9MtIb8JIu/rTnboKr5/xBm1Oe7svM/K11mhNG2jqjoU0B4tjQ+awn8sCLLo5JzUY6wR9o2iUKJof97aJQkbv3QjSUi52xQVQhBZAeeTan3OrLGEn3rFot/q5zIlD77Nf7Qk1o3rl8v2mg55kGawmtHKmuPCJVacwz3GAsKls5wrSx4U+UMelHuiPuZWk3uF/qNtCj/+s0rzvlsQXEMy931cTPylQLdNT5wRbPqne+yTsKz20sDLEAFp9W1ujx9GgLmUIkV0QGYPdFh/yb10ArLN4BDCRhaBWYUslKJdSkbYbeBDGntbajvzj8QkLM8q8EwKF/TohgZXhcxNUiHey6XcXUA269XxcJuT1QxGV6WAblOHaMZiEwy9e6gxbUMl5OlWnFPp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oVhFbNf9SqT3vY/3gt2YSKxo27G8vyZ+lyPldokrAXY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T1DqwtjGjyVcH66qoqISMLpOwgTMpTN+GEVOn+2cowllZYC8LfC/kUCnjKByBrXaTLgCGROrAip0fldN22j2ANsy/Sa+PDYQY24ayRZ/oRJUFsZR2EAIFVEB/v9p2Y5oU3vsJz93PV9AXQJ+TJR+6wWF6tJGquwMJ9doj28tLrT+Tt4GDny5miaEYGMJapa/76Yg7DJ9KvGe27ITtlCYxqafLbyutuXl3YeNMc7zhc9pMnL6oJV3MtVJZ/B686CITcwTCKMD0wSYZpWIl+wLmXTQSkVVuEqDBARXZPyMgQzddqVPIG96QYbcz1CLFR/FqD8nAutgFHLG1h96cCoeJSXFSpp/Vq21bB9Bjgfdp6OecdmBFHxMxOTA71JFsI8oGQipi6RjdAHfyJG78GwguiCQWogXA6fs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oa9X6DoUYTUQfkxfqfaiSANlGzvPIwhDadeHXRuoJWs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ByUFQr/BpmV/QuqSMx7v0A3Q+l1xpIftDvy9wjaG5Rj5q3X0j92RG6+Cli/+soVCDI7y5LNSTOWTuIbcna4UzfO5SG/FFM/caAgCA6cECbm0OwDm+42BiEL+6oqupYfBeNTZsmHmUAKlnclG9a9POJ8wej2kWPiwhCzkIwd/n8Jli0yH0Yn1AIhIr6CIx7xinZGhT/dl4bMcyXEfyv4DO2+/FZQrwZmYBgwagzxGn1VXSZYpzdy+vaQMA6La0gWywebCILxGE5GLDsYSOngB8YrfhlDzqmougLabXVZaLCOFjvv3Hq/NSvFEqiL43K3AIBPIZrLgpwvj2s+yK4lDf5Z2K6xejWcq/QAqe+RvAIxNhDKL4wj1f7m1u1ZNb1piwYe12F/13A0unG6xAzioUoCackEr3v8p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oaEe6uG4HoJjnsFUKltztP2XFm+tPWqkYIgGwt2/sLI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3gQhEe9ZTN7i0VlXCDSGEyOHb5WOJ5LYQmlkl4tFmDd3haxg5r+DEGbYA3OGhOqkzw74EkAyNYB1QauD9mQCecFNODwNL30lnIdfD9FygFaUQQZ1esKnMnblWQjcHjNcgMiHzYUyuKbNLX4ESiW6zv01GFEUcA7asUvnhgoF0tsBG13P0oBGt7XYkTpH8LNMh2SB+53jSSKtyhNJvI46s6xW4ZMamrpbBwpAwLZSOSF4pB/s13ucN4+a7YDgBapUWobnEVqFb6ikqP0VGHKbrrjVt7SahJvBNuCBtVzeLXQO6fodkxGZT4wZespedihYqWb5r4IKqPFusWBmRJ0FWOgsHNwmO/jb44Q8FGCbyU8S4bZko0SjPJ2KPkmTv60KOkZKSduQ+rrC1ekmH1KdyLiQmGdRxfyx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oaPWaEiJJAj0T4mMrtqZdaXaINbTDnLKqHkS7doPPRs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FBlwTxsXXtl1zUs4MY+juuCUAJl+zPZCfQPEzjasueDYTY1XF0DP5JQ2fn0KvUTXmGMD9icxOdbJN2WJa7A1CilW+SoYh1EGcN6ktPCGfUTHTvISeAT5h4zppMC86ule2k6upcuA6RUdY/Y5ZkgVImixtOXZsXyvegpfZCVFJjBJRgzil1kNE40d6jYoyR5nq0BcFHYsUjYaruHfgM57L5U9zIq5a/hCL3mH0m8uOxhU/qC4sjZbtEOprNFORDYvVX0vQmm9W7xBFOm+AQ0KLuskP7v3EO3Tg/NO94Ma6tnChTiGIGV9cGo+KemqaIAu+7lpDuoIh1+OEvDpOHpe4H9/aRj3NQx+QNTBv5vtH454V5QCNLDI61QrLNckCT6NDYdMdO6Tp4wKGRdavgBM+aeHtssJn8Lh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ocHheqlTY4Lc6SQe3vlHttTM0rkcnP3J0JQem622HAg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "p1mSyW6kZvNcekGOqufvrWdgiFj4xwQ5dpSe/5GrYsOicHx0rmOUWaJMbqrZKO1nYubLOGMteDhABzZTod27CRVZIpzlq/uBrhcHGyX5PIlSkphtgU2VdA9VPUKhlA4WT/heYb3GQRlc5s0K68cOz88aC9hTC2QRuq9/fdZmpM6QMFPm8jLlPLH/J6dKloo+hu/vo12TVigLkSypAxm517yZ9g1Y43/xQImxoXMtSg0n/Ubw6ShgZNteebNpv8pA5HpD/bPO9CRZYg9NO+5nSUZNDtSf/KtcOtlKpx+xUZbqUmNRa5OFO/U/e/zz1xA9Vb7D5W5m/uRJIFJ1FBXYniwSlT6pEBvo8+4Sp89dfCF0Af78i5/+d+kax1Lqko3UIzymg+khKwsRkvxFky+qQ5YZHrazt/Dj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ocZ8y8o0mr4dpaUiUUuLQ9bn6rk3r0JsKfAjGK0LaqU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hejR52xptHlgUI4tXCu8GJNIvJFPQRvmX2PK7Cx7Ike9psgbXdvH4KvhByHarzsYnL2fq8sO5O6ZXOCJ+/j2SENbFU87zNxqqA0kTF6D1rPd8nO9Vb1PQLnFz1QdwPLBhjt55Ias6p33J7zjMJj7uw2m3vGrh4ZqxWiFnOP4OpIy9hwK/zXhko7BwbASvBm0DvRh5gXipfHdJP5s8k5NmD26wL4tX4xpYtIPhW3Dgdf9XQtoy2TA3JWv2q0zcQMbBTfkfArlfNqrldWETGY7V5OefNI3cp21AuhOFfhmlLU2YW3GTejnh4JXCG87rXLtJn+PmBui1ze40ygoqwtPVJHJHgoKVKyV7lZZVFuxye8uS8I76hENC+xdxFs6rd8S1ifCMe0lXQoIU4r84g+zVflK7dRncq+D", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "odV/c2GxNcIt+wbqVZolpKgrnqx0KJwz0+mofm3vL1g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ce7VBzf+UO32WZLyx8FJtZwFhrQ5DsTZma6T7W8yOJAWc5PFWQ2zsVoN8TpA4Gng4zPqE33O9AcN/sBKH7cOLpfSI05equBYZTW8KdtWp1qgwhoo1dY6kip00C2H6X2nxTx1LUHJG0xXXEeC2dvfpplq47NJdSfqxt4yR3QXVcw0z2DIVNiFo9/qrr3MBAzWrPJiN78kg5aFtcLctGGm23xz6Prqajwp0jRwYkR8ygX7RhF4Km8+ErYdIU3gb5cLlPhFqz8AwkK672C/k5fkpMM/rhESyrNyZRF0FXUJOmFy0ZVBqEvGecY3cpGRbPp3i86ll54d8IkrvFwLl+ykTDZmds/WTYjG29S0MkVjmXkPclxCjiVXgobzQ4Tl/MZratwAEzQQVXUdmbujAsQkusAxBQUdkkLf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "odYI9sV/YrcZQckbUzHGT/w4exPT/6vRPOoUtaIKtm4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5jgydnZnQN2PBd3vtqEtuDpT2/8VEmPky3inI+iGb0PTj6m0zF9U0nqABcqy5ZxCjwxmIaTe/76YPTEdzpgUptiz3NUhWqFdXgTaeOrJpOnYvv1hOPnHDancQjBgEjqEbZJu6Pij8RcVMDpHvx3TCHxeQ0jtYBSYWNAxSxxTJpRWf3+yFdbPCSL/cK/5w0Gia8ejY1IiDDr7E5vsNIVn7D1vnzYxwHVFNXGbn/knIHuqRfgeyUJ2JPkPUq7sMnAAKQ8aJ1ljwf1UsernO4lPuejAgITrYhjsJXZ5CWG3a15PDXQ1gZ6uXeiYkCEcpPXOhY+O4gBHpDiH/mPKe52bQb+l0Bh+MTZ6VLHE67DHX95l9oTNz2gEermUj+Dlyu+B9XDB0JWQk0F+gg2+UkU2XiS1WQXaRiNK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oeEGyX3TV04fAYjR8af8a87k/JgSCZ4S2nUbPI5yMis", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JtYwmzvaVuT08GjMhYGydP1nnazr8JwuoNqaphbMSt9BybLBdqffZJ/BAvVDT2rOTuoJA0r7SwgBA5daK2EQW+L5eHjq823pnItSZ/VtVWsJKltTjgUUpCWXoPN3psWxiTqoiXamtsUWsBn19Z13u5crVcR3J30jfm0rZ4iYpxceCa2UZl+MPJa96G3PCfMby2167sXWbvldEvAeLITJJgvKhq0zUn5ZEy9+HD47axnsgVJUC4lcuaVx/QJ6tk5TZcwFaMer9uvf/3h3ppc1hVKaVl97AjSqbaYDQQJ58Tehupx7bLwH1PFnbT4IxWW3UgkvFiyarmV+4XTWYIMsae+nxVyVMqn+SNHR3EBuL0Gv7mCOIIr7Us5wgvv5vcOMlF44C6nB76hRl2HPnvFPFo0Xt0WwuiUx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ogJi0lBKvgg5g6H9Lq4hIGZGbnc69FLFgn9GZRvdB0I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WNLmDEL7F9Oavmng/qs0Hm/97ZzTinXi/lcZCIOyWY+Dt8VgzMPpVFX0VWCwYoGdiuxbSOJMj4CQblAVmkzsZLcN2JzS66Aen/hoAKjNvJBlBrkso9Zimqd/otckgxyovj6xY/Jj5WSGy9ZB3TlNVZP7128kCYjcSHjPIcBl5BCQoUDwqIEE+Gpzfasb0zFPBNGZcF1f+Y/o+8XsAubVqpkMjSNcp4QSf5OTRuVqcp/f3ZVbcx2uZUDah6xWWzSktjUdXF4EiJ9RrJMtWWAAL19vEtMbI706F6zSSpEap3OMFYeuFPiowS7L0LUMYbDsuCSDHqto+RVuffrUyk9Rig65bm6HL20GRF77n9ECXB566m+duWYlN3ivMeCytl1lOnwrTRVMTcD/mnJGYmJ50B4xxJZLYMsW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oh51CizZFqWmbnZkb0DU6rnyWuEMG9voWxzRcFKawCI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uPdVIRYtMA4jumZUdjgKZiB87HDVMEqpw9TO1+tLnb9O9FeRyF9YqNvHF1h3+fCUEpuXlO7jbOFuOVbMxt/AwWqBb/nIVLDzqrB5MeIk5T7BaPNvktnL1xFUiW1HT36vpKkzETclTB1EW2FfeHraakVSkBWZv7wE54sljl6Q3BIHfq+TnatdWuM2z5y0391gwJcqlVSRPpCkacivGGw5xvnmO9kYXDQ9lG5RGOn1+a0pTcmAKly6p4mnlfyskFbqzNQK/LsfsbK82x0GCLckeuSlHdZvxGe/Ab/SKHg9AWaJeQ9l+xMNbPwOQmw+V6pCa9ECMafUHciLMVG+6jPLRCilRMW4WXLPWB1dl80DaQCv4mZLf5Ueo52bRV7U7NEtQCECWAbH6Bg5HseeV2+y6hfH8oJ3Ibfx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ohChXPLwKgoEX0qpmoXdQR5VhveeAx1rX32jNFzM+DE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5mzTQajWX/uU1niXn7Br/z3RZkchuteRJJRbCbuJTLZPhPrNou305kDAEeYKpDX+Wc7oRokEaKiroPKxrU3eOBHTKAqcU5rnJtjtUsRsK2mbtL70nlrgjP/1CETGM1eAehV4xjDiLpi3BifxeBH0dXFrvuueLXbqcnAF9T6w/LUUdgwUq7dPgbBKAYOFTy/h3QA0pCcRczt3Pa7I0I+/eHimbjBN9/2fslRrLO3yEw03ol90dBfD7Ow+qa1b7K/7GkgTkmtUVb/c73pou8eRs8bt3g71aSqJDPcuqSq7aaPHXONrf+8GOtTpQQPVXjPi4OHYEk2i/d5yro3uJGJ4/Tlb2wXwk0DH2ai8d/r8xrCZ7Un/L1at0C+l/glLajtSSge7JyUxgCZ9Pz7zY98+MvONP2/66Mnj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oiFjQnoweL7MXXsbOKJkkMi+wc397W9uE0InJ6wLWnU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4Dyk5n/RVUNr8NbCfnBLZqiCFTA2YnHZPQkGKIYrEfEzdLzDYjokwuXDc2gOx7x4G76s79Hm0S8rUSiJSe8SNblwbb2DxK1WWQFwLVb4/KUhrlulTttsRKoEfDu8cb7mF7lXSa5+HGuoLuo7bvSSD3P+1bYu+1Zu5QKKtXd6P6iMTXzy5OlBFaZwFKQau3SuSlU6NwdAfKvY1l9nZdCjo8iwAbq2HDJ9quCFQCkqT7bR8KYvQj1vleKlc3r5DS+NFR5EuMlawaj6V9MO9zOJecuM7RM+FSMYqxPyYH7r2uqYVZYYMdWc1+nh2FjMEE4IqvhW7bQA6ye8rEicgf1Sn5g2CAAt76AcytNYBKFwv4NUMBtDIP6PXH6ddZDh9akCnHQ9+2FGrs8t1FidnRs0fSvfTv4eabgA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oimo6YRaJ3C5+qmJxv1ul78wSwHU4z+nLBs0zvO57qM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JPD4FdY85wp/YshEwmtTjnfX23tCuhrPR7bUSuzugbnP/Y0VBiqzyCSi4tq6RRN/tvDmIZI0TMe/an3WZhoi4do6yuaDX+7rkr6X7gRl8p0yN8kxAitKD7NBJzQw9gFwyO0loC7qjF9BVRWtRy+z5Ho4/9R5ZJcCmq81ehqCQiCyo+hdKQ+0nPBW27SRYkO0VD3RTdADJSTnWcBCXmKi294t4eIf8MQPUeU9iT56jSZn2QDPaJduVRWhargxFX2lA1I/klV84ZMTxWbVcQFQbT92bYnQnK3ZfqOQLaMODcW0kGNzHesyAhgAqlUnKCA7y8tf+qm1POncdqq31hFf9HC0vDUMlEigsbic+3CrGAt1pajBQexYfjvDTPykqXg/kQ5AUbbxi1vJ0dPdassrOqNxxBT/YJxj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ojMkoG/LnKpTV9tVgu43gvk4pu3uXFiJUjAGd6YmI1Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iZ2kbU2Q6unNY85lZqqm/3NNVtHojEmkrC48/haobn0ZodK9LcWl0C0OLh46MsH6r6s5Wf2a/bUXPPzIClF+p4FAtOAcC/PZz20zk07v1uvMjLOumMQ47wrJt51WCUNzveguGPmJEPnXAAdCwAbZ/0nM4cbb8HdKXkhLeY3eVq4RlJ8wBUh4PUMMLnsdVFSWo1W6VBY5hDfUVlxqqXpZhkktAY0AfSUuaPdt0+vmfEqr8ERo7IQzwr4ovRfYX7X4EUWRolhQRla0vh+XfTCX6hiqRlxW5T5cwOJsWkcbv+4heyABY2SiYOl2vWgWzWJiAEzrpjy+xVlBX9AP/nJlcFjoEJQiiD2wo7YJKRVqOeX+PJ0bW+7Q+06z3oOtc/X9imoFjTJ6mqJa6JyJUZA+VwMe/kSKm7IP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ojggNaooO7CWVqB/jBbUgZ7q5CMkIuYBE4Q+dI6M9Ps", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LjNss4bSKfMLeraNGeTsccACB0YB8uizasnHB0yppE1EFrVml3Mqb2Qt/Qk0Y8SyFEFgCAXXEsoge3ccKtypAVYyS8YVX1USggPCf4PJ7PlhIS0CyfCh1y4jOuWMHQJqxWnSVqAYMC90lfYMV6WiTNvLqd4eaB259rRA5wOHGT4sEFnf2l+9c1rSVm/D6FQ4NzKyDBhJYIt5KtLfTeOmL8wyI676Ze88DBbU3e7w1xxaW96tME0M9krneBhOB39qYo0ki+uaRdeNcIfbURh1XB1KIGyPTJatN+Fz/s872elEQNLb57z/BIoLLrfXgnnnGBzp8W/XOPRRiDu54zYJLBn44j4j8UpjjQVqULm6VJgbAMMHlerZZbUzQrWYj78HJI/e9VZIiMqc/JXfh5Twp/+dYA+a3KRp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ojouJrpznqTU6q149Mc2+QDNlaSQUnhgMphhv6Gs7Z4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Lm629J3R4CPomExvJQPQxm3C5wUoabL7Vp97cyLBbIfqDYip8zHplxhP//t3vHZXKH/Ef/ulSYFAKfjIY5VTBKV6IyCbAEkCiIaoyjIVTNcI2Dyr0OGFPQP5QHh7NCBsWdRj8Jb6TAzcO0rZDene/+uE5YwmyocOVG6HRsm2Nmt/rRqICkhkAykfmaRE6r4o2fntTl/hvA16f7IoXIu7Muu8Q78cPf6DpDgvZYvzigpbfHf+vcRuAqyZZzb70UjD62HSIU4mm9bg2degB9HRGRoHDbaazymI07NHE6mL3ZpfEa3/CR4Jx1KDpLlXUY7M8gE5nK0RlRqd2SaKSwzsO3hvzXjPCV2b6N+WltkDYgfcKHtd8EGCfEX5E9zJVafy7CozUduCCwa9SKCdH/8b95MtJAj6u9/G", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ok5FMbiHV/dF8JErioPUzs6I56CKuhuvrNNZxKeN7ac", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bVpzXAratz9eHQuUnym58aCiCMGOZ9cD3ARlCFRYnmFqfXvrme9riMh1swwfq1ya169/quiBU6u3iGChefFWT+4WNcfZxWce5WYAG26DyPTTlhOgPJgZiwFoQtvztF4VHVQiSvh/Y2Qp9DDW1mp6cnC2PZ1g8roYUUWTK0YO1OrPnHvoYOLp5yVCOH+RnT/zaydoiKs+JEGd+4C5cB4NAKj6rk0RMH7/pkl1XfW5GFV67noT6y6oRb/V3uRrziEme5VtLiuY1YF7Qm61HBxLwmGzvK24TmYyQxKgtaTDzWSi3YgFSgIJNVkP3Q4pQSlL2Km0KOcD23l8Puwqx4sevbRnLzDY6iJYFqoccFc0RuIJnoI8ugpIWk++00HKQTMIjdFWkmVwXJ9V8giIs409qzzLTT2WMf5j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "okkOriP60e4eH8+ClOY6F0dvbRhgcv1qGYjUqtmDBjk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vX0ifM/hu0vUDErCc0IhCYdfzE4eGY+Q/wXI6WeUX14ohNJB//+qpPbWagepd/katl3ed0QG0VHvgXcKgu0MQ0DjxIpMeTbtrSpbRMVVYHq7D7fc8xclnTE/WEaPUDsjdZI3xwKoJoPgGZQVrmikS8VDPMFcD8GE/99Cl5JPCGvF2KbKu2Oi88zYMM0Jdi3uJ1DoGVqMcQnE6OLDVprg/1vjekVNCNBz5qV9yslPIkJAOp8V4yRxVCVaV+jwi5Zl8Xu+6iB95plSsSov1SD2J2+fOxGytIxLFLxnJbdARFvsQ3rtcNV8qZgLpvv3SGtjAJiLpEvECakyLvvw6wvFGO05EVv0Bz/nQenFLmJKziA9B5GKr8SaedhTIlEckG9hQji+OhLVNwTkJ0h0MMu3jcWH3jI325H9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oknqtUB8cWKzxQZcvUZT+sc3UDaFU/ZER5T5HpQJ2Wg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PKTUEFH2uC7LR/EAHKPVMZVPrph4wpPdGF0vOM7fv687A97zX6XJJUIzROc+hW0IsKHbf9dEAx6/GuW72zIt3K/tS+P6Fbwt+kW51Qfzdt2kGz3vi3beROLZ/kdVbQ9zJBVNiWo247uHsulyAhhyobH49X9+1s4i8uogm8BRsOMYbbw6qP0ifniBn2VZpRbwgwIAtUgJWERkdullX5K/kgIVRCDFYSCQRK/dQ0s8Tnj07ydCczN7aeBwUg2Au204bbNsU94fouIHxSWwLoeOgJdsteXNTFUXf1bkDDYqI5nxHJ9QHeiiRtsTrj8mhOSxqYIcc6XHY7XdbVdJ36f01EXTItH9r36bwYbpLPTDk+8VyJ5biREjrIPc276lOdV2L8oV2k5mYDxbJ/78dN8DfrIaLJwoqKKT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "onihYA0ps3wnINFEX8YHaBxJ+844vbyPTv7wTRSMZD8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V4aUESXTCO0j18TCwL8UhXnPte2f2NE96SHsNAhe0sj5Y2JCBeZDQcY4BZUZeUm4OGXpCqZXFFsrn+ca9r6a+OjjaCVHrFhq9B6ZLwiHtgVvbV2+7y0C83CaL/4IRV4M+bvcm3s3BB6i1fYaBSauYXLFUNht7SjFRBD//ufSQWc1ScmUmRnw8Zla+Cscp+f33/GmGvXa0wlKgkfTsZE8ngrByA8V3xGwhYnyCvtTb8PxD5Te5I8hnIzER5+kgISRkst13KYhqA35epiCFs7hrPVLeimjeVYejKXQ1LFDXcsSxi5knNru0xiQ6JQgljj/AbNwlVoE+qUHYLMoQOpe66SEg/qVTpF3WlGjUm3pEqTjx3JEtCrFQzR/D9W7XhF1W1eC70Mui3AQHpm979GVPxbKrXLMfoo6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oo4QSPC4iXOO6lqseMMqCoG+j4Ua0soH7jHqjtFLjOQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VNFkZx9SN7EoeHtQeCq1ryyUFXKeNh2UO31BK5QsXV8sTSA1j3diDSenzO/pd5eJ7XF2Wlxrdc5Znfo1VoeEIi1m6KX2YE+3bfJDUliGlAkdgd1lThKDpD1QIgO8r/+LPdf4X8C6iFkGHO0pBznjF2aK5FzuI/Oyxw6W8WnDVzkUZH6eMragsegqmAX59PIwxl0JjxZ0seL15uH/xs+7q7VzkmU5IlAGEhjAmf6a5V1kpPe2ybwVomRL+qnZxoXsCBaI1rNhbAu1SIh/dqojXgRTLq9UGupqjd+Os50rSd4z5CrhAlfbvsSAgzG4W86KATmx9baheGWJxQgzxfu6UOMxkpxewV9BXEE2VgTwqjHD0PKVD3tmYPOTRSRVENjwBla4MSf5f1BXXMongFW3GLlHVR0wuhqG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "op3FUanAH7FI69rXtKXGoqpd6+13FSV8QbJSqEqY7V0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YTZSY3bURX/fNoVRk6kKJLKki5vWBB5vGgpUENJnTBafCjedS3e14jcHWA3gSLe5EUrBzlgOV1A0sobM/OYQO03TD8vbNMC5XH7yJ+8ofW7mtcz829k+U0g8IdIGQDlOwLRMs57QkHr/AzfBli4TCWRl3feALpnbFV2RjwTeaBY62oIjFSrCTVFX68ryqsWX0NU+9O6j0v2oyVMKCg09Vn8z26xjUFfXpZpIwMDA2Z5r0Uup68hfDO6tTIGYeRUb8LkyApZg/IMRve7KaV+wYn3P1s9/ZTEb6RyFMZBsbXc6UE6OCD7hIY/CDz4lhTSRwEcpPgsXXaf/N+FZzI/wa+I0Q0pKz+vGH8YBi+DOsip0AX3W7AabaLcP0hC3uEmQyVLF9L3MDnhJVHzVTHeNwsC4UtQf/S8T", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "op3UGQGA71U/LpMHs6Z9kuFQ1IGsTiNPLbpKXaQDa4Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F6HXJBJNg56Mw/kkDYh+/P0r9HONNa2x4SklKgbuylhUpyHoSTnUb/UPgSqY6Q+7ls6o/JALgXgqrCzcDLD9UY2qUq6x4GJ20KjUrbempzXyTHOEdvjN8Pctx/smUn0axXYvnZcZM3vdidcGU5rqiumc18uZ510UMeNzWLyaT0ON9RqoMLPS+zyCbOwAbEJyvW3tKZzUS6be9YhgRJLYmcPBUWYiHXy7aoCTlg5Vn5/PtM9RYhv1fe+qwXn1WMuqLQw9NTtT1KWVLFG6bzqACvbaaqUTf2Vmql1xqFNoEU3Xzjd+2riW86FlCZYbC1CEiJhWl+sSz/YmPOGbACcqxDIcjPGmZh72SbY/rly46F5VSuUEAtvTqLlVHT5YFuymhPk1obVwUfazKNtrEgFKy1xywjuNIK/0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oqSZMPdoBi5sQhnWjlA6a28FhB9hYUpXB4L5BNO+pao", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/uxHyYOFRZ/TuNJwOaOPqYZq7e+VFY7Pk3G/6/3YsO4PyQlu0xoz0YtfenAya/SMkCgpbC6Qwox/rp+LGlXMGLSI3N/C/OFEhfRkZlrGQDYjvUIrkSsqYLBXDcA383+AAKDQCYgtHNTl5pcFVO+VjEU5p+dy42XVN/bPveLAhjK35L7t95AxkvoCbb97JH9FgvnL8Hn1qMxLaBLSke7xm7FqGtZTO76zxXTiJOxnzoBQgRl8NeNyXvpz96UYoghjKP3+lhfp+lWf7rmhC4X9+q1d9lWd6HrFeGJ8ND3oeBYPjhkYARpgngIub6DKcxy/AA1X9lSt1p2dXwCb+M3cgqN7ZA84u8SZsUhwEm0fCnJgInsYfcilOoT4ZdkQwF+YBLR+TQcc+hCxIThCP1X7JvcYORRzrx/5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "orHY+VIBEz9Y9GQJSPuDIxWOPhePDXwTQrVi3C9fbBA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Sg5PtyLTj8ydSkRwcqFJMsDSMHLBGskVv+mfJc+hxRoVj9lodwjYrp2UIR4RP+X/XExkKvtkT35tesJkSQVUZycagLcI92s6xIy5nyzmeKhg80shMDcox1uHWeamXjNxHDqJ1oM+djivJ3o+2p+hbOLlWG21JWpJIXRS6EZn7maESJ6kpeLqOcmtcm8B7ZkAzpHH0fiftg/OoztUGLsX+7gpDGS18PmbGqFBzSNO0XkevtqTlAlCPISG9o36g1R65t2Qb8Ij375pFNWkpnu79/8PLtrRNX2+a836aWrnBcaYHaOkXGKj46deorfjDhNvysgPS0GQmtP9n6VG04qDYhyvolTrvXlxZBUGzSzH7+gC0DPKUeAEtK00OdjqOyt+iNCdSNgoEio5+wE7NMgXMIAK3tPPtw/N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ot3Lcxd3WC0LBGrgSp9EvcprjqaJY0V6/89qTfB7Djs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q63/95XPSPKRWkPPd86Fstm+nJGYdDQPk74lnyI+eSlkZHipNgnCsnnKEkvJNUQHtjoRS3uwqJU7XEa+kQ8UejbjHNZTuVklaYLWNRWIZH64uQOCwJheZKi160Q7tGZ1xQMqbiZjQJTvfDEdTesLjY8EoseRo2pkhzdE7/JSqTjFSmLd+wbMtP1Vpq1JWi+PPNvvYzqCH5iUUdVwJTd7MA0VWOWyLdac/Cp2VsXqm41Ff8me2T/y5kmVR2LcLcrY0L35YPRh3XJc22FuFMCaPXew7oqg4kbCOQT0/NSARWqFfKH786HoFxtTluhdwQyB0u0c5zr09atta9GtmPNzKVyqo5bQtChYNXqoW1fytIA2/AKfdC5+IBwomHjQ7WWPqfiaSWY7n+a8565TNUzAoo6t0llSEcgI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ouLJ/ge+0XeZ0K4GNbwzGcLfKO41YCHG4e+cZ7cvFf8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wmWFru8/ZRyJKGRrJfFHPLQV/ut2uiTZ/yAIWPOS9C5CsL051fOs2ze0pDZa9pFjZGylX+bX98k0+gtBnM2AQPhnrtN0UrlmTMIQzUW8UPyptGGfqFKXF1QGCKXWXM90DmORxjfsYRoPTfD/WlX7lY4mtr0OeHhOrH8z7RmIbaRnsAms2KGeLA2djAT7y9F9JtKkZRoVGJCGuR3FbL30V3AA4xH1HrYrngjoed5i3CzjHLzYKYS7cSL9G1h2ACjWWYVq9FYM/TwRKN4e04+Sqbdwamjmqdt6tle2poeFiomMEtqIZXiFryMEsFZk4OKLAZVU2GT+hr/+1/jZegt+qQTYlTQstDwbGPgSDHywTrTFqHwjNXyAdvdOM7Jc0Ouvj2HL4FYVWfNgXuMpqXIp/NF6JeX9wYKL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ovJIxS7BWFp1072VQaTChhxxnMepIyMBDL7NhViAqg8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OV8SWk7PepbAsg15zFM0s0mERm/gI8SlEqWU58fgSN3VyWXFijmmNbcSHvrpmcsKNWiLX8i7sZrZDHRVEelFZDVYG1yCubT0/j+IzeS6hKvqnor1pL7Jm6UZMKsB8Bng9cg3ZaFMaGxs9/nlKt3LmIkCYMfTIWtmXMgvMKvuGLQZpZaELAVAbAwLxWUzb7CKOWja1d3K5IBGy0GWk28/5IMyRFQH+kyT2+GlYt1EOY1T58Swq3YjXZAo2TxKjHfhGvqCHtZe8JvE6tdFY5WdEtvOokykiFp8nmI4NChg2jR1mXoPvoyEtGyGlz+E1ELIVIk+YAL/AJKKo1BVWRb8jkauQ2GoEmttTSTBnKg4oSq0KfrrK6J9UdMxfpDORxt/bdRQzrr8dYsJVIsHO2WGoFHTCbPiFXBH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "oy6DKSbKdcmRFPGk1vw+WWigIUDZZL8+shL2lTpnKu0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "v4JDb9AgB9nO69NnxDax9H6vjKj6vYw2KCuD+0wWvQF6ERD3P7Wc+y03FtUvrEyg6NntdE5v/3Z+rb4MwkxAokdYhfLendiFqMOz0DUq8GFIUYcgR67/7/Uhas2n1EJtrBCpOhDV1VTYjGgH4d/2qh4wpGJ8ol6BWXRYWv03PMy1Dhcmblx3oCmo7aflW76I7KTl3J7NDwMyQd5IJCwRnNukqUaOoZHrwuKaknSwkt2RKjqfJYoOZmPel5AG1y+zqbQ4lKy9ij84RHKPd8h2J9LzSD4Fz86I4rf0IgL6FErykUKQXVIaQZKj7ZJUOAqRxQ4RwTdwSxei3UUuFl6WhnS0QvS2rWjp9IoX6jngKLQkyftfoi6wETdnfZOQT+budnmZVF44b36oLGQW+waOoTLCH2pK9n6i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p+z4U6WaWeAI9HTX8jRLlXtTKHKibdgn/AgfjPsghyc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cVQleZeOmC8QUaXi8pcDSjhgsXf7PTcbNTXOPFpOADXsJ3vP1GIWQNeEFDmj/6SOEHxthObxcWnkMtZR5GlOARyvjGGOVjsH3vQAYCZrsQi2nVmXCEluKlZaGLYfY6fIf8I7fhSakD+oHmI05QvNcC+px57x0+ucOzr4RoVk36i2t/x/t2WQi60PJEHNqt7FOnWg1NV3Xx26VvM3XAEP73P41xvfPKLkIeZ6h5RCP2nSR0VgSPCZxvcH8zUCd6jCiReadUKm1z4Q8DR90GTYsfPs3JJOUr7lg5qNJKJLbarhjuZcj2VOYmbmUkSR0RGRd7efHWnLLO1COf7AlDQfZLQoCxKdL9LE6W2YBlk9pHYtywGwI7lXwQ7wmLu0Kw7XtbZOhtoP1OW+ega4TgCgZPFu0whwQ9FS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p/NCiGFzo0JSiCKnNnCVCoeS6CaFg4/MJZpMAXuLywI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6sUWDTih734Q+xLJNPkHJSrdRTj/k0sa5cgr+xq1fePRE5vgbm8M4bZTTOF9YM0paIBbchsmWm8vpDW1K0h2FLl/7QDWJceGVn1Um1/45Lkq1rLxeDL2Nut3lz1assqX2tUDlyw4xuEw3Mp3VeAHjwty1OE2VfNc4r/hmzkSBgUivK/+x/ieYJF4HZQUXnfRAXwLLLTfFIUj+12OPOqz4eCivg3tBbJU4vK62p5s/gygIYSwBmZyb8Xsa/FHDzc/15D60fyz2E0aBmN2JR8T12EacKFYNcCVuVan/SNsve9Y7gxsneW3oFAEUiJSZIBPgpHUdgo81tskhigWg2S/jBekz+NU14GGdpEIv51NnDp0U+qIx1nF9XHBxUAYdLhq/0jvsSyWJp0NXFdOZPSDi18T0UBHKbqa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p/OeNqAg0QaucmcsXMlKicPGVNM1lHTYM9GLH5lV8Kg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hW/dhFriFLTTYw4UNoYRf1SczvpQUzbghgn3YvT89Wy6o1VW+y4bcObiMFEs1b578D8oourrS4rmMThixVvFSuKGQz3DFTyBkN2RQTWqOFh8ENq/iXl3QR02ZbiVx5rbk7ejj/wK2KfN0EdgjEEF9qm77QPQeMV/j1QOB/Z8LHjVG/oGqAuI3ADsUJCGWEdeG3kGN/n6WNv7vDdu9mPGue8LPaXWyJi+dyXtmnXqFDPZ8xIj0Coj6wLvOyGVelVeb/sCyD9ODdWTseI1WR3lLa69hYte/hVG69KPJcKdd0SccGY+XRf5sK+J7qLZ0RqCXEh+xXZVTGnCDBK0y+Z96T/WUaloOOW/frLVigxgTrQi3/6PaWTIfGYj295XBuGxrlKXPN5O5SQYgoHyAzbt4npWbIe9nUL1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p05oYlWZtz9LdBxS+dk4TGPDgSQ2iZs9hRDr+ZC1Jlw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Et8nGCfaadopuS9ikxf/3nLpkEbviee37KgKUYaSPBICyNU5Yl5spOxGJbB47Q3xzXhAWOZOW9xuvpC8lqYzwdigdAMSftK7+KfrL0uVSaRWfGNvjd9OtYeZ8ifX9Cs82AXZsq5bpJHlfBPMFxn8N5fVS/kBaH4Q52f7vvQkYj4Ji1neI7qfBj6X30YTrqvxHEaAKPYTnCQ3NxwE9xzJjmjjj6p3whzDhOjlGoOKTvbN56cEgjlWxKScZolC2WodwQfp2oFDUsP2ZIe6XVGdir0bxPeK6Js2I8sYYuqG518ICSJLBGpGJk8y9+MTeZ5uuEMjLTOMftrYnqvNtlpZ/YUssZrS9803PNUDjCM68GTHUVLYl1dsztGzAVtR5Q6D0RXSY2nEPQNuiKsfLNMLpB2zedmoF4KD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p1pEU40kiqKdYlXKMmE1pALRjKoiZK0Ngmw6fhup9J4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AohAmTVM098o/peTVrkLlgEWY44e/6g8Cj4zfS1om8z5NyQ3ikguFP7hbPxS3VoiTZ5k1Hn/EOQ5r+LGVSZ26NYYwIvFn9UUDVCfALHz0OrFldVUQ/DN0j3Z7VJjdF6vypme3WqQO4Q+Lvnor5jXIdyIH8P/QJGmsyCn9iDpNgBHmLWQmao/oO855h8BWS0plK5JeunbtLNzgDJ2TSM/9RNlF44xmNT80zN5H05KIRPcunJZdZA0mXQXsZrswpBEcGQzjXwp5V/GNS1DVj3fPxuQlxG2f9g7rXakXv6xaPL17xEhFC8kOMH7heCyfg5VI3BijJrEwYkAi2Ri17SOg2AMWpmFKwPis4zvSChiI8+1hIVTub8EMXRW1RicZ2d391Sk46vzgl1/AisYN3WPXGOR94Ow84Jw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p2PeqPwF1LlKjZntAIR4EZw+hRThQV1u36kACmIVKWE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AbvnmzgQfLPD5J81HkGwOYWf0l4zCK3Y3dGm7d5Xad55ord0PUMzN1aO+myzSM7x+SsRPt/68c6IZtmaebuMHYX+g9oMmjfgDSeibY82OTy0mpjJJC/Rihl8mZYz7/xwILD6X/lSLswE9uJ+2uI3qifZVoy/G3PK4/hWYErY/eGpWrVG80SjDDP9DwIq6HarxJn1mTDNlP89pXtx7YHMrMSgsXmlXFqqsc/m/8Tg7huYP2HR3d583M4H0bFziHmEeeM22YNZuDE7OICzgW0ShO2WR6Ue6r+fPgFaX7UeUeNxJHwYkFvMu1Vq20D+EUsf+dlYIP48mnPYMMcbeY1JL5Z20bMyWGqaxSsM9eYfa/OACaxOWe5Od4mhqNwDJMVMIcfGvIO+NGBv/TrxYvF9mapXMWF6sSoB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p2kuuHp7gW0uLL3EYCuKq/VcWUG6vNBwKgb2SQy/d6M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VQAP1Z7pKwZw37C6gXtz90ENPLl+opGm+mu8ujTwbCZAaP/5e70CD8JHITSSeYt5Xho7RIkTlmnA3xD/kwSssMxGJ2nN2qSs89xF3mHTeWoBfX2CaGbXj5pVxl+M8lhOtWU8O7vynpSvIbXOZZRA+7H9tlUwWLmgszP3Q9iOVkrfKwf6FdHg04Cz5tZ7Co7/Ekm447D844FW/L9uhzGgbYRY9XK6OPB0l/wRPh+HsNpurUxdl/sMGzpW62iAzn2P7pDdCudVP1VwKYRO7iTBxPfgWVKFUKzG6sF6br4KxR6Hro/AnS0MZpPJClEsq5ixebxV2TDkqqYXrn/OSIcmajLLxn4xyibtHzcCkFmDxemrjv7VnaMHvS+8vwLrEFKfqxjFH8RRotr0jm5075HxPsbjZf4CpMn4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p3WvgPQzL0FO+lDF+OyacAne7SmaQsp1McdS2hJho/Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JutTF5YbD3CTRl7QNHpx4LXCz9w2CmTAcvif4w2byvYNB9YarE+DX78hpj+pIZDM5neVu8fZGxkPLvpnfZVJi2CQFMun9I+TPyg0JtS//uWdv3JgjRr3GYCNjbEHqq4r2a7RKg8rvB58hlgGeY6vl4od3OXRG/V+ToND/AQbtF8J4SyqjXUz8EZjKJUaz7b2O0Z8cHv9hayNKkLI+mU8Zd/k+fK40LDWhXQJ7jOIDBrMFGcN6SEleAyVLhYQfmkHVYeXtsCIkW/XobEHxK/bUO3zVhk0m3P70RaN7wpZsjf08K1OQtmUGyuVHdeJS6oFL9n06W21ke4cDWVtqwQadLpSk86sa6gnvUq4LsYErF8ui+yRIiRcD3kcCbRgJQQJ5RN8qiFerlDY2RnuSsyzWqk2rmlUMGCN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p3k6OdFCNXdSUduCb/WatyBtYargKtjDWXmTeDhhAc4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jPyva8SPZGrV55Tg3HkehaAlGEFh/3tXgz1Hbdz92yBoepiYpBjTT/uZ/7zCfcu3/AOCX0Jq/NUl1ut2dY+fHlNVckZqJjAr3RuORQm4tiIG28zukibNJxG1Jdmvfe8cXpAIznF4DQ/BYFu3q839L0PPoGtnIjKpQOIME0+DUzlObz4v+S2M5rssrNSOq8/Zr0BI1abbI/mxRYkHiy2sfLP7zOFfi+1aITNYv6+bQvJaWfMnYR6F36fBoKHQJRLokY8I0Lpf5i4taJSEzVtILMqKQMH25gCg2lCZWunaBMpna2hO98SM53ZOLUiX7+PiipnOiltAgSjoqzAZgk59CGghc+whBVCDNmCqj1Xw4ArEXl0ecRvytAgBo9PVuUG7w29QlFzJ4KY48z7CDgyiNc0cALDCm5qb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p43qQ39ef9L6XgheNjjZ9Utw22iHegPMqjJYgOJFvCQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rmCFxTpqFHKqE3bxThc0Y09BRcrI03i2VoT4HSvZ7ZW5Bt1JY//usU6NOcH3jSQhpknpCipgGC49qfR5JFrAw2BroFdhJQpGZ9bT9xjDLclacsqG7+MJyk9D52/waA6w1u5fRM6uYVl4T5A+ggeChTIHkM1hYMcUF6+WqHpUwQHVf88+/hJKBs7COgzTdbCAXKUv72TCoCtuv+PenepYLINWHY70XHFMDqNzLIRWy7QDaLpAg2KeokW0FdQMeP1cgaeoZS3QCIiachyauhv5bDys7VyDEzroACs83GR44Vx1GKISLgLeJWgWAPrqRG+R0vswbEtBLA9QZFMa5IMvX/bBw7CraP0pPI1XAXlBdlWBfu3KZcD1Dvsta5Ammg/xTTtr8+mbVZsXwMROEbMQtQeqz3w5yeLK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p4C9qfcbMYMWRXQbA/P6sYzDAMr/GYXq5Lvu2UQVcm4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OlNaPGS+mhcLEtXSf44on7sJU9DVIohiUWfAS4ASKi1WzPzOzBX5VQzYHf7ATMJB84Sb0Wg8S7WXxDUE76HNQvl5+Ay5by/AfEGJiOH3lgIiJeLMqjfpZMATEsvRZbP521pjhr0Vtd0kT4vjon+2QcaYL0A/pMFxY5mSlro5asBtSOYiD9issF8w5fcEeCpS7swIeyyeoek/0f7JUk7Cs20CYphtUvkXFyXEs1tGozNiMtJwC2m/X3+GNaX6Ut1g2zqqCHbrrRsJbKnaAhsks/gRzI/YvUV3Rg4L3KvdE361dq2Dj+/PE/XnbXdVJlf34NwAiL7r1+RtwfBbmnwMopg4W0VSHk2+b7A0EghKDRqqMMwcrnqvpigTvkW/MqbjIufo8/6xPOVFbywQatLHVKIXwFr1pfwC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p5Ciyh66WxhIVKbe+c/V8gP/7V4zWnF1mNbh2ob+jKk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "G/Fy+WJN/0X/+Qj4GHJgA6ayZpmQEbUj1rjTmdvGlg29+ZOKVqrTVwkxX7DaqyfsenpcdSx1dh7jrsQqK5AK7qMWyWY4XrRUajxQH3+LpETmd3zx+Mp0pZ5JRjChQuzskp4kMAp+CD4kPUnvlb7+mfb/MzvGtrBl+qVZ61WCz6PG+C8HFXiNYZkXD8vh6EhK3B1G2zWTgC34PP3t2MBB4G8yMnPnB6tISI6PFEjWrR+aP5TM6IlF/N/j2K3pdSdjk1quxEzcqZtEtFyBBiva2H6bTKMaFEJqsa+RX9dwl7VRoWQaQ9i/qGkgce3vODAhSuRb3TDhMHxCm7gMYirzvuMG4IAIewUP/G2Ata3/WlJ62VjphP84YbO8Fchg0fjwohCp5xcWOBSTDum3gm8HT8KbbaWTGpze", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p7Bvh8uboD6EXVA7UIL4hEcL81iP4ASaLVy1BL6DA3Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "U5orp68Hcsyk7dYT+BVdKjxMW0fUXU8w+kJ1JQGw8J7FhVd//oxKCU1sUQ5J3fFDvrUaqc0SN5A4QbmYqkm2fnTPdQwYImDBvKDWh21Wn80p++/1ijUPP0NxLMyEJoUefMeAYglem371FoKFWTBZRnLlh5Ol+BkrcXtEsZMPIwPlyogzw01KdoTacL9SI765i5jDtJt+fP3R0Cc4iI47Wo8G1iGZiuFyEd9/BI412MjomBPDRLNCKgCreveOpr8X0liZ7+Ib2IYnBBYTGGYpLSXJ+w07z5tTX44Bz3zddzXUjJ/ibplUmiuzkpk6vAivLjrbTafHhvmpz1bcuNw95PiNEtaq06qNI8JIjEmUSdvwziVE9rQCWCcYJbE+f2PJMdIrh6HAO/9oSH+SJrk3JLKTKi5sj56f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p89Aibc0h4Tc0KIfrARP5bKlNo72OGEiZW79803QBNc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pM8yXQ+72NZFOMh8zSZ2p5U+zByfRIjA4TmcPaYwrLqIpXoEapvM8kYEB/q6fakMYk3QwzomWEOMpOPsLRWJ4aHMlhMnaEBkCjw3r2ANeyNsxn5XP377MoOfrE1jiY4Qd25e9VuDr4x6EX+uOwceUpN2m/mjGyzc9oOSflY67Q8HOCE6YveEKlwN31h+3gHbUm/cAFtfgLaCIdlmahdyAjdBbXciHoaVC3K97QZXDC9RdJ0p79G8oJrYHVVIJ6b9BMcH5ozAFKUHOck1B7wk4+tqEFBtHu9GzQ29kumiwUj3gqC7BpKlna//lAxQzgb+rj5Glh1AzO1MAehNW5nB/Kmajk0J1qOpqatNxeyV9Y4A6siBk6Q/1qVjtBgN00ohFwQpDJzAnP3Q37pjhhEZLSDVhORnTKlG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "p8Nlb5XnD+PWq7DQ51S154VgWyQisDrXF+5TdRSVcok", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "S8Z1lIm4slTrOGOt+aHBzbindvgazs79yl054Gff/YFJj51VwuMImBoSic4ASOJURnwGQfpRhuYmd75OM27RYVGgwPUl1uVS9mqP1QMI/zNVXfUpJVC8HK68gVCYUVX6qDZq58QjY2t5xqVB7vshWxI8eFj6uidZDD3dAXBSOkQkqVetax4fXvndkbarSFwMx9JJdQFgcCdevc9Lu4QCGlTPRgFzhNabo4Qyh+BgQe89WiASp7sp/ZOltP3QO1Z716QCPaA4sMPIJEI2u66mkkYj2xb/Iqc7auHnN4o7fWrD7t+Sj/hdXKIYZk1SO+RAJFn/QDqzfPcPh8GDbXg1InnCuHz8SxdyMsIeO2tQvvUnD3/p9JHazRpqSK2qucMRW8mMDGQq1PQKPOra/sBEh2Ltf4rtPqvH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pAU1CaplX7rzXBnxi629p606DDHZIZsk0nY3lwPPORM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k//E9sHVri2iWoG5YVGzfQfGNx/cqONBRv2JXjvDcp0RnIt9QcpW1Br76hLlBF6eCgxiBtt8ou1YhSMT0jviDXGO35isBDdm+S13ILhR2pXgerEKn5bk6oMoc6ohE62wILt4bEOkXg3XExE3q0H3HGKTIWMG6TcMdiqhKCMJPrGQBqXH8VmykISbdzZewTBkHFVwEyUZEq6jIH4LavyUozMitL5UIBhDd/8WmvWt1dUOZ4urpf/den+2fnLNzjBJzLrLGTZZ+7u617JiteIC//R2VhtV7SYwjpaQMFTOwHXITQ02vjTG9bDJlLbVG0bfbOLPU1N62xlRuLU38vVvPECa3biuezTVVqDqPFuDiSyPmwjj3TPmVVGnlTJkyTivU5mUe+s2+wwcNXXPnGX4O9aTPkKlUgDt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pBd/YsATeFyJALFeH6sIcCKZRC6ZdaZ+y5+TM43x0pY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VNdPvW3JW+ykW9JOsxXGJ5S7GQ6ISap7I2udqfN4CfX1zn9CF/10k9tmoLC90EQO76QSFyoIhFUeH4+4uD60cZraUYB9Bvm+qVsoaym4vTSUVhkVcuwtFQqjLJnb72ngBLINfoJE2dVtl2pX2aO6Vo3QHHuEW7T5Qo0vgJqnLMHPS0LffFDwrQPTVAbSQWjp/UI0q3jmBFRaeNCOLC0Jmfa64Vng0amu7J5u4u/y83nbx4wl4y/inkPkMn1XkVzGZ8VXefS34aqurBLDYQRufWf7E7ZbRxK6FDV5M8L7gcCVybXlEygFE8huT9FrGLn3c3xjiOwM5StLsxLW7aOWg4Zt+AWw4Dy4Y336W9H7WwGnJyZxXzMkmitZyaEdBEUG1wNCAO0XoufzBTyxb+yXj4zyboZBEnpG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pDuTASj8hIIOpG0j33s7OF9+VdWg3NdI63OHl2ZJuO4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1cvyzSf6eyLeqvMzZbuLFfaJ1xMbxwrh/oaAE13b/qNPt1i5fqV68kFjQIZsu9VsFdXSJLa+IGBwraTeyj36oL+xcvxyo/bQi1Np0deX9TKqrtrqQKixP8p8H26FNeLdYckuVXE/a+5oUnWTBBsv7ekU0fS+Jmp4HQsO0ZdBU1FCiaaeqQ2cshJ/lla2ZnsYfAJTHDKAkbuwjAlkgDtESJw/y1pQAyYwEb9XpNLUgcghpq+iCXteKomzozLLk33S5Rqmpagku+Vbc4Txzxu0gliTPiv5Rzdbq4W7BHuw0zoTnf6AfW0wwVq1N2t8/XzrTUvwv5c7KLtjfZmI0oI5zr7WTewjsjIHxse+lfu5XcLn8XXA7zwQ97wFCKBcIVxbnVjQhM9Tdy4nwkAzpG+9zHAKhqvPwgvq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pEPVn/AIzO+ff75aH25PowXe5r3SCdxsKXsQHeRk+sE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "G3P0c1VmQO0VW1Mn5JTcOZz0kslpvHotrCDJJymELzfIRE/xM5eDmvNyFUNUynB5bzWH0d/+nI/xwqq63d0OSF8YuK721Diw9GkiCOBQed88dUD9ikK75iu6ns/ZAXLw0TwcZswogCeU6Z2UAy2WLEE/LtO6UXNt19YNpQRGIsNoemCzKTM2oqTjZcODUSEMLxcNqE11MqNmGwqmCQ+w41DDL6tZFM5KhuZt2H4BI6eu0qzkAv9WZVpqNHc4TR/uCeMbzjV2PcXS98S3dCXY0p9BbPP2aQj1Vz40W1MfJDciYvut/Yim1jTs1HLfdhhvatniabg3/9Ugu6nvY+S0WrnKk5OuF0bAxJg7DQfrfFPC0nCf/2dPrzqNlRWGUimuCw2SeJGy8YlJvyrpC4Gw+rFIF1YkXii1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pGHm+xxJVCEg+zy9Q8o9kROx49v6rFzFy98pDZ/XcGA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dQtNhjGPgQ2EcRUrKai2u93wo2Bc/TVHkSPFD36OSdAqv6Iysdy+rDi/t2fxPjp9+swO1CgC3vlfK+9ItmGfq8XZ2vv4eIDZeF1k8fAkVpVWoxvse+KS6Kk5ygmkXRvanFsJSJbyRcz7feXfgQ5Vl7W9Iyl4iXZCi7Y+ED+nAxOktlXrtLAVA/tOK6U8XK9evDaF7ZCEycDLhZKhe2dIgkf/1Y6EB8v2RBxmRW2+13odbHW+Us06as6OvFsMSW2EhoUPVtpAiLfwmSvSYpKprHsxPV+0f0bkoXs7Hm6tNeAjcKrjoCSAldd107K0U1bwdCgPCvy2iIHScG/W/k1cqCOvzqcdtI7J+aZ4gzoEEN8maYfClM2chql90zVKVOu1HLOiRcLY8+QjqEMEik6cXHFPi3LTsJVz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pGWLptgcitvGwUyn1Gd05/qnOFNYGS0XGmW2/5Y/XHs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CkBWsfVgxiyu/F/Ra74L1nsOd8UThsJjW4/dO/Rr5iPgPMjXQt0Mvcdrl/XsPVX+x4MLJVLacSp1DppCaO6AfemgnhxiY7NRO0a1eIySCcgGuqesPqAQlMjlApAI6YAz+kMRxAQK5LmjQ0p2uSv/VBzKIHDGd6hUMaFuqwbSHjBuFD2bVhQjQAxqfl5MhM2Ds8LPVU7boss8HcN8GbJ//cut8/bE8kjp5EMwp4Rso2u+OpQIIRmuq3FSK84+zgTKbqj0kivo+kLW9fXVu7RoPFe6qWgxWig7mtcSVVDWBgYbuJIFJevKeVMtEEfLM1Rr9mieXFjtCVUmFBN08bcttNzyLWgAgTqiB9ePT3lvIif0YpJyOiomud2NIsLVvA5P6KA12eX813S2E35jZRK2FdTb4cT5/nrw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pGvOgmu0NByAKhBNwwOE6qcgzB7Njbp57AXJGSlCiOQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CXOfoXP82qH7ZG+e4UVarHrXQcAufHaV+1ZXelN1qelQXt+34kWG3fwTelhBKeYebvIAQKBZiTi1Oh1LNWDQljMCmFZ2LniGy/OGJzl3WWVY11a+KQakC+RpWS0Igz+Y9pFALa9NXMFP2Uiw2aAe7ERopW5qavzumofW/AoMS9+vrQwaXzdQVIgyBUmwuRwBm833RyAGZKdk3ze2BqyJVHQpd5Tm9oZLgeCGhLPIZgrKx3TmB7ziWmyc8OaT6Cjv1KR6OA9dpLbw+q8ZI8SuD2UBdV+/OOLH4IFi09U8rhxQftMjg6dmUoVoSYbAq70QhF8XO29Mi+CSLWc6vNEvdtsWs7zd8kogVpB3jm8oJJlWrRIvO+xwKBj1gDjzcVDUCegCStR2c7eAzNsiSJFgL8yQEFHiaD9f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pHbfPKfs5wYUZcLV+K5HNGRxQ0JF8G+1Y650bzRe6DE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xkK8RqbD6V9CkfEetE06oct8N/Fb7TMYefv+0wAwUqG7lkyYgW8pAbyzK1XVjw8Z3EQn7MRAghHLCbkI4vodhPZ9PbxNiKpoZZKCNPUVgyqLn0b9tH+VSZR9SeECOMz1hcwhr/P4GLt4iiCAUr+M7+qiLgM4xxvMLUSxFKVoj0rfPu5ix3HdKaQnwrJ5MaFCcHDewkhL+UIo9luf21V4TqjD/m5oILUCtaT6W0ypenPaqwhdkjA4l+dI5Vdlsy/rEuEP5B82qrLl3I5+NJQc5LSgOGLgmVta2KvjkHr2qDIa0aCs3KelwiBF87uJG5pGpuGa/nf8C/hobFLzyDedSFtEiHNvnEcyYxXDeLyJQRiOYQC9XKBuCkQe+HvR905wWCVXoKd6hXwrFsK+eGDS3ry0jJ/yYyxC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pHdABbYYwAo/zyUZNSpVWeYt81uw0U5aD6Uc3eFXmzA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gX3T/TB7rZtI93xjASG0YBhmYDdsAMbrdkzPwdF76in5e9pUk4SB9jGLlIp9wacVcv9zSjiMEvKDvJXj2HjqluNvvBv/Gpodt+Xz8W8la9sd5UcjG0EiQfm48VgHULWZu/IbzAwk+IEEUtoxHI+YKi3M/Uxi+2tEh4RFeFVSPi+UBczwE9pRxGrOnHRMF4eOkBNZCzElXDKnI+evkBMqUzYN/ZBdtF0AY+C2lnARKrBWN0Br0jq4c1X0aSEEhFlNXwAcaajag5Ey/JpdwoxiGM8EEcPGHkZ3cnTlhjci1YBKhpiEEnDCK2eUCcBswEe7qLyMnMxwSeJJUhp/yP0TVyVRFze1rG2QqVt0GN2NTWobZTApa1CN6fpCliIkmP3QjMx0cZfuF/hkem4/xKiwCRsBfdMlzoB1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pHpHqXCw6ik3fUL2aBQlnUQCPM2lDrndniFG3KqG8u4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Cs2ZpI2xU3FrHIgJTQr1Zg0DW2p4+zc1SmW17Xw3RSYuyP6ruxPcQ7juazjUyGlzJ2BYECiQYUtMSzdeCrpCZQUQvUGe3g1TmR5wIXAwtZZRcUQAdk0lkn/syb/UohRhe96hT3e11m+yCn/i0zmazcTQrU+oJ0SWHKf2QXoaIAYvR38yVGwvNvj6jMg77zonkwsLS0Z1jc+MeiZF3Pa/+ZTp7mQXWmq1980ceBqrMHyN+UKTo1eih/Gjm5Cz+cmNkhkp2biF2N6jMf/eR/jRN/Fj09A2VNgxCoOXL37FuyyZ3+L4IRRhvEvMhgIQEbeEOqp2Svc1z7bgTTdW0m3WtFaPd4UiQMVlpDYeQsSm6bW1Q4NlIsi9+xA9zNEbt6FKEwGz90/xTImZ0aVjJ38KilvV4/mwFKXx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pIlp9PhMpuMtQ3yGsJvUYazxbRo1nv0kkkWwvXgNI/k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZKXKWs/+bpRHkYGtXARUMCWqTt86vxXMcrwMiDFMJ5nIR0TS+dv1NqVAVl+MXLKhaqPPeBLztphaJTVdCNgoTp/LsH42QXLIQUshRzMFVDWZEzVwgAtC93eojL+8xmWpUimCK62FLmyxW3+ShkTNAjBqMi1RfGSu7eoSF6daoMpO8ZhbHthQf94evMuvnGIOepok4MGnK4QaRKteV/E1qVCfhAou35T/AbCXIt+Q4LlOJYF/lHCGDsU9FlI7yyLVueUcCMMFpXQFdwh/cbSVUdT9m7dwlt+jbjajAI8zQ6DOKHWUHCpbgY9g2IMNpekC+4tdiQMvYiTvLAbEunIYCQVButHCo8q781CaDNGZw0Ubmi4EGkYYPYtQNst+l++sUTLo6vNyRLfz2pOvCO//r03cRycM4MJf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pJAlCZYA6kl/3/nTJ+87muZkl/bxSRiVO6BQTWetje8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r9K7YkOL/RLP7VHxOAqgIMjclBZGDZKJ2BgOl/nIkTZPPhGkEjoiNfsNyDU3yq0DokWnz3CbVteoogJwHUkJKYV2EEE2J89LivkOjhGBjy0H7wc5GWhb/8gCyguDv+WQzRlO8T2ysDRUVxww87B42MY9XIFtAkfUFnmcNF1zC/UoA0GDmBzfc6Yd32z8bns0/47W1PdOz1ikZ+yd7FPiY9Mnrx+fecoIM6CLA34SYYPP5l5nnP7Gvo787PsyjsjBcWsT8vq+jm+8obW7s0ywbs3PadHaWOvOXkSR7qbahgYPZy3ObRsXn8b/epd6YS9viGL6s5BCuY9Q8f19vsQuCXtWklm6aXxL51RINT/Wk1MyMSYtVkQJJDtNj4UEy2EYzI+qit45wK9GRFWtaKSnxrddHrvi8BkF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pJOmb0sdQp2XRlY6uv/KA3DgBHpqN4kjYxIyYhI3XPQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/QdNqiHp2iok9d1HwvxjCIxn0SsKH0mf8x7pxhdo2BKFhon0xVAEoff9MAxn37l7r2aPdPIl7xNYZFj5S1ZqPo+j1bnXqW9PbSMJKHNDpYJfm3+GVSrseYQrKmwP8jTDpl/bM//xdKRCgiffnxfn6EzcLMctR/9hVz7W6FFFbvbrmTJTiVrwoXVE4faJGkKy2orO5TPTnS84LhbT57oFW0eODNXC4Hn8ychx1PBhg4JC5/wlGsxDFdwaXmudnrUAPnIRBfMvRKQdSFap87UeXr2Wc0OIh36LA+p4DPlZzlcU3WxXAc+vRsN6FvYtXFcTV4RFl//qSBn1CqTSN4olM+SZEQEyoLHNCEu/Fi+942/pyffla3ovwpvJ4f3JNVcfjjnDg4OXrx3ddM+feSHvlkFED/XeIwTn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pJoigZn5TCYQ0iWCPHYlrWaJInM9hZNr1NDd5CDv/Z8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LslRRT/4HPGgG+XX28TbDV9ApVQtUUyI8DvFZNqKW5QH/Ddm9NAZtIrpYQtaJwe8gTUTUv7Fuo3kgLMaypr0BpvC3J2bJYARvrCN9rI+KhvyGB2QNjB8txH3OFnHED9s2rAkULjJWFQTK1V/DmFNgq7pMlUxgwC0GRG0p3Ra+LL1PvoEeeMN9Ws+pl7hegv7kL4XG7kmLoDQqAPkIaiORL/gYS4WQO7LcrDlmphdEBoMfeHkASdk05Sg+i/0ebvIj+TB24xIKV51ymB1fYOEEz/9C6uvv1qhQkraLcksvHqVBPqxIz6hJB6IMVSIf99hMmp7/RrfTfI8TK9Hr8eVkah2F44c36z0IZ5LmlPs3jwog/r42gCyPVcBseeb/eqDsdttxXOxEPRauVgw/N2OQzoET/JAWwIR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pJsJaIVsOvzYOCjHAf9esiIOLuF4YtQd6OpV2KtKXNo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yvMQa4ZDKfA4fa92vMfI5TGC9qcTKoUKOi3mrE4GZmupymjHIegjjsxVfaT+EuKt9za39OMSK+o9Oy1+JEl/eIR06DEh6MBMHzNWl4qA1FaK4jjGTepZNw5BmNXUq4yGhbLiXeZI1E9WZQFWH5DoM+qjPb/AeY1sLqm2MYVMeg4TIBb4nNQlps81aCsB5LSQx52qojujDwGzKy2p5vCKgXm/4GS1XV2ENKxUh4/2QHH3mQ2zj6LBKsa98lwpj9mABXU2gbeEA/Jj1AZnS6/HAC+W51d7j2Cv7YLGXIqEfFj6yhfEAq1s4FbNd5++7Q2J7SbRnBCGZldK+wfr3qBt9xz6v1Y3Dj+LdhtVG4NcmCfCJ10Eu9pIpztUKrg7dWzcWaqCkg9YEysUL7tpm/GQVlkvZpHGpNk8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pJsfklPnU5DSHzy4AK7znIeEawobSlE/tGRw1Yr7MmQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5cBxbvXlhsbtkCU4UXW/LH7MekS6pN7+JwrfTFePcTMeEKcpdwmNRFfI+EBHzvBx7YfQjC08Law3r2QIbrVkw/QLDRn54qwC5aTXtaxadY9ZTnNqk3e2t+tx41wORBT/tHsbNSnXejB3c2Cfr2lCLZG5w7XOGgvVhzWzkCQW+ftVYad1lveDi8jfEKJM4mN9NjCJkQaJBbJ6xCpWwt3NhAFvRFr1b3kEtXvH0KMfXoMyW/nXF4lRe1ydMcDJtlRwUYoO8EIFOeixWDXMbbqW7EY8zWs5EFbvINQhVVYA7cr89d7rhv9VVIk0pWZdXgmPC83mEO0buYsMbyBG/Ve0QlOKojdA8UpIeIqnCcLpoXqgo37kG1qqpTBix8t63aJpxF6BIwzmMNJKg60lqtPTYaqtwT0WhCUc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pKJiisomOLRFkZiENrjLUmwE4xxAX1Aedraj4h6wWGA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P5fboJcXLdlYiR65vMv6JyXJxEOBYyz8MveAtTI4ak5hicO9qdpfTzEB0wlMnlhNXiSiiC4N8moVltdYvzfOXz3aTJ4Hy0kJ8lCvWwyfVR9MdG7reUjnzT+W3lJphf+GTVoRUQ2I38I8AkQIzJewD7dbZWjYyiTgylhdOCtdWCJNZh4WM9ou5Q8u8Hugk62BsXmF7QnAcO9aqGNJMt82zZfMtNCWnhRx4smjfg7jCxpZpLnbxGYawM4U2BLn/D6JLT3/TkApyeXmBXbgno0WAMHGS7SAxzIKJeGlTbpqqhsSMmNqfsTbBSQnyn/nfxvv5V2n3gH++zoUZnjDvb9mOvfpiIxgR7CLt6DG1bedpSY7N9zrAt2Xk9MNUGk7PNKIEEuZmpVsQoJFbIKQMQidvUEIoY5rmpd2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pKvWUtD5i+sY1m6GQfeSd0m7AYsEasrSnHshvyFawr4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+h5KYg75DxxbwwY/gAPWkGe/Q9FBmbL1C5hmclQ/ZyDkBnyAMp8nC7ao3ytoAIIjwOoEt6HrCK8oSwHbCE2wor1y2nfUaNU+UeU9x//h7WcJIYIK980BR5VGJ+GGtv+vSnk8BNsKi9qVoSFCbHLgvgW9hg/Q9+xxam/t9Zx+njBp7AkKQ1s8wIRLK/n/cA863hy3QdeHgJWX9KfQf05RUC+TMOxP0VDh838xiIi6LUPLldJeSo+s1hj+gp1ZXAhoHhWOjWl3TLJzl6SzuVk49P2TPgieCdfCx7lxBfp4PeJJRpj/R0p2EgNk3ZW7eXYJKCRVlTF+4KXfMWWsP9psbI9+dklR9q9eYl91rSUCVe+pN4rhOx332HxPboUmKSLimWoUNkCrcfvb9IDJxr2W+LioQuudl8oy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pMdkcE86a9uSAqNAjkT1i/W3kOSuhsLcdJGzaYg16WI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pCPCVQ0arZqhPyMP6oifw81echAJsByrQWtiSy042b1uT7p6H+UYneKuY6PZNFMpuKbY4JrzcQEOyOGLmO9gpU6gEiEnC1oHqQYs4FhnvvomVtVCtIcoPHyMf/Cr9roja4Vnp/l/zeXXV2agbEKZrxTt9jeoV67Q0shWNemKhp9Tr2Sm8F+Jnq4XfQViwN01uKuPMk3d2yvspsyEimOwKNzUTtGmnbLdxSWS6+f7UqSssaONXEKuq7wNeKLlXPfc12V2nQZyf+TOWskc44usP9MXERQ8tGqK1YR/B6ShRTMzbbQpYY3mmCSc8iuyC5MZXZmjTwTyWs8qX+0S3p0hiY+Cr0uQ+U/8hbItRPbwQuW6Wn7nZiOXUicoOJ5tea25tbeYL3Z7s6zCsuYq9/9jupLX2Oc+OtYO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pMuM5SKWBWwBTC4aqBWvawLJvXp2JkvY3cAwj+NjZd8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RvjdgYhKSwT50RqztvKAdatrZqfVBDt3Pvv2Xp/XjY3sMf/w2yo4z3wXi3rVUAEZ/5Kw26YuDvPKQIoFlHb1usU+wUOPiOaqdEFszuuT/Ay/0uggWMhVMx3QVPt4FeSWaAL5dW2JITXRk+EeCydcIaER+cob/sGsiYiQMnt+3OoWIsxuS9laN1lMXNfMLMqVAzYmaHBYKu3oaeOtkmVhLdLEN8ZdKExoIA0QphaT+27IFyk4S2rsAxb/QYMlXey35YWnP8OmCNs0VivcjoQkO1rGeBN9MQU5obStr/Fhi+y+mXBExEyVDOXJvJ3gW8z9ReAtbzOOZ1rY8sP1rAtEhuCWZYQ/yogZ1AVWothyZKFvsX8Y3J5gON95x4YaVrYE5iCiIw3jm1S2RUyOL268++rIn79V9bMf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pNnwN4Eu3VvOxs0ukngJTxUPIdrhdB1Id+BUgRMwiVQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hXTSrqcxaW2V9glZLiPWyZY1zS4oubherJ+1OvuZFE1dLu+qOiNpG1QhRjSorxUEbUKC3IBAgg47X9+oiEWKqKWKKJLXCWCPvrjmO1XIu5l6Jg63NklOfpkOujifoAv/q9n3Ip8dbhGqVQwHxs68ToGDbDmlBBGugzP4HsyAL+o8jOiFmjYZq87KcDoGTKRarCAbACA7SbWjfFF+5Fplt6Pi4LgIdyh89++HT2Tdc8KnFxUNVJpqs94+6NIugrwEqw/T3XrrjwD0jHPLSKKiOiBIHXrSapi6kxS7UWhitCM308y4ISs0NnrCnQ7/rjzth+QIrwVSMcFroqbACB19tlcdRxGki2hakH4AJNPrm0eokuhAD5Wy+5GPpsImv+VpFskB+kD7TwUhSz0E7lAvM7Ka5OgMIUo2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pPDF0vM4vIO9SI4uong91vygoOBAKqvszp275QPd38k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uVXeMXo8deUxsAjvTBnUH/F0toLkxIPoHR6/iX5ICkd8am+6ZT49sgkckljzCxAAVK+NIFl5w4guc/RaLgtxHJe30UIzyavM+gTu5pG+PBSs2lzYNFfY2hOxPuiGCtC952F0O+th60E3YTCbeE+NkC3o/CgZTQzuTU6/PqQHkxA0n+Wg/eduFuBWdOn7rccHJmfevJezmiBxl6/VmGbTTPMg7usxaVGsA7HKkEBbMZiWo5ydGCsmoA7pHhywcWJvAKhqvnVO/EduAjQwcT3Sb/1kBqRFHmSqFADNmuwrRZHrLP6pxflSGJ9rqJV3a+haXmo4i6crL7xhLOMlcJ4BoZ5HEpVkVUDGT+kzK4BV8S8DNb6bpoT+w1GLySkiGRLUsZmz0b2hCj2CtfExyLfRKwe7v3OuYZAw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pPjZ5Bwhm1AXd807+8I5cDYm+t/m8djJq3vmA0hE9Tg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w8nJLsOtmT+H1KetZgT4SaFjjZuYzgL5xabQxrLv+0whi98jTfYtCUXAl6HaQHsTyvobIl7cyFXFe0ZcejLzCdJGvBZ+O567l3opAt/QyP6MxSXq8dRFl4mfYPUb+7Q8qieipK2VWeMvmdlhd9a3MyRA4tQQmOvPKRYRf28rKeOpy96qwmQMgDba4SYNekpD41BriPsgdKWjqhQTiQtrh4s8vtJ+17+G5iOJns9mIF6ppS/9rHkcTDomr5PxFSkzNX1FOPxaOuHVc05btXgc3Bl20DSTo4yMJlNZXfmbe+b6RP+4mBfatV/v1Soz3L5p+xpNCcV5ETZth8Dr24qezgeJNqFYdZ72L4gB9Szv3T315uEpeSeKdGsjWbqNIRELwUKwOBlHmzsOAr0oSLwSriCZ3puL4qb8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pRa7xc9+lP9yOeUTMQ+JHoJ+aHTGYvveOl2kJ6L3ruE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f8WD25DhCSLJQya24ZcQr0Qi1hPUvnRdhZtke4alW5QmvBAjTxTmyU3OvbJb8XKcBel83XQOruSC5OXJqHpx2z+fyt5VvYcL3N3thCtLmdFpKLjhuumQvqji64IhT4R/A6fNVG+PEbwuPgGnXb4TBw+9ZkZUhVhNeczcoR6orYBOJKnXMPTVV6Q8dAPKrTEIh2vaCBj+ZifUXE7siiIzkIVMyucSMxnDkKAYK0YhnvmGRg71RXO5GeT1ZlAOyHamSc+iBFVWuM3hjpVtm26yfwpaC991C0djpW5UPX6sWyV4izfFqpYGZwO/SXSdII69dtrB8MhhPnby4wJ9ywK3vx0DWWckOBEtPOZRyG/fVfE46vOfb4J2+vRfVt+MC9bAEoMp3yWQBnmTtgruXqwkXkkNgCSiwSqd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pSePlhJQPd+QNh2T3/GQXY4H9zmlJZ3QK7nAv11cMWY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e3BqWdgbfU3ACflFkKyP8Q2jqvkqMQPe2zatJdBznvm+66PcbMbNJHvyIWiY3+Zr0tgMWYtOTb80OKdxP3BY9J3yvnhzOB/28GU8c7vxOb/5voj4CelshQgM5vsUds/P5XiAmcHiGgFl2Q9xXu9iJYoIrY/dR9t9+4PCIC8yxyCVkqPxKIvSbl12//Wp9O6+Rdl5377ND4EdikiBkWQMIVIDMw3RITnnQyExoWZPhluAks/QlxoOlLLap9uA7X0yx/I2tPViVLeO+ixpb7uofoOTPohgLJWWexCOxcmuN+7x4K6J6ZFpa1d5ywKx706dlw32N7j9TG4N3fFjrPKentngBDSJAzdPQyDGkJHU9zAorzsyJfGov399I4gHgXADXU9Vp13VsxlBK4ZD1KhoWCOuGqFQbhfv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pT/2rHE9b9GD9bKCHT6DYZsFre8KVlZcvKil0FUHgL8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E+NhgvVQ6lhC9j2ymgWP/RWEc+GObIZzU+5kUqPvJyvpGbQblEJKviN8hE/22d6fKPQRzoGdMFPYGR5eTShvWq88+2v/GOr8Se6bBOCwjeBBN+4aE9ZAr4MGDcWw9rzQ4flwDhEYC12+jfL8Jp97gBIsVJzJ/XqmguRThjEnCTYBucL+3A2D3PU3xoE6RmYQE7ozpIWK7eoS/pkvLld9b1+LGab/oIz0rNaTHGYrcM2o+aaOYOpzTkuy7CQWlcxrG2z6QBorLKo5W741h+OmujGWzixBOxkdhm0ZNtZxWnKFIsMOcPnQk+YgwRZN+7HteYVdeLWjDvFioka9OvD4+r6tX7LQvkcdp3VBbem6e6qZXRDoUYkmWChOxpPsGxKnWzmvlL3lAxfSeAYeA/dHumDJtr+MbHPg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pTejh1DC4RUIbG0LSKb1Zjb6wohES7s9j32ul/GCsms", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vqzP8BtgzXNrjQHkfIiiDP0J/AX1ZBJxbCDsabuBRoqu1+CuMY2/75iYiheHBhTQEQvtW35Clba9OCFMpmq6kocGCFD1as0+kKa0LqbeHzc+Ip+Kn3KLrcy2IC8JYL4WiiWluFCMtQcNLTuUytAMVQWUM9E2aQsKD2QPZNe4I+mdk2lPMxY+NkzvUFwEOFYvqgYNZ+cRsHqOB/dmaCqMvJbEeoD73wX4T+sKErvY4+03RWLyFFhtV6n+Nltg25TylvxJvI0whOJsSVicQk6CbkNRGL4/BwVccaX+/dmKsKVNrcspuwROItKYtDfCTZrHB3/nczaSR59DzH7Dg1QxKqVm4mOtwn6juRVsF7+u3TTOU6kZwbpD47pWDC/lgU7cE5+fo8XKKTUMhLbQcPpfnmpCDIfHiX/I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pTxx13P0itNyGJ5PnrxmqHqgWn5rH9EVsiMEKzracjA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/b4TEE3+hgE63B19fAF9XVTz8WcfhYtqidd4CLkQ6cSzWfFeWVVeoovRm3MA/4kuKyTacWVOdbHP3mCY1o9NX1fug+PGzIv4FN8RkToH+SOGh+gZr/p8aA9Y4GL0o9Fyg7RTXP/qU+kIqOtH/5xJZKLCtjpxNUacizjQLH/PbNKeRtjWvnkLK1BScazy4c6bNsFUuFdHqdwZVXVU7Jsp3QezmVyhAViAWaAjCMTxm44CVcyGNlYSUpug98Jyo3n2UUcw8X4c3gk2HrG/kiU+jipGJyK10VVOLFKATW1HQdD57u1xA+yUek3KIyCvWXVFQt1f0byjwXrtoHgdZ6DQ38uPRne5updYZX/P+MiDETQNgIw8TaKUNIHU9mWma5Y5TQMW3otvxXN269xAwhJITI8HdQcQ+ibf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pUJRPB3zwTBupCtVv7KSkk89jNZ582PjI5v87F4zpWY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "txSLJcK9/NmIzN9ykQ9SpC6L3tmohRlc7rVTkMQZ75DfQNC3El9YpJagCTlQ0Ao3ng8AikgAfxwCok4FnV5DlphYps160rANzBl7PW+q42EavyMK5k/HQI4em1WIDgHxj4JAUdqd054p7i9NtGDCY0IO0kJ8CMVMhdvO+4epOnzs6C2790G5wJW3baNgs24hFrH4BP69GXVOkMeaXIKo9d8Y3Kt8oywH2Gd0lDYu3M7fFiDnCV4c3fHkajRzphD0UXDerxQNz78DLNjjp3PzkBK96fI1k3w2so6sgwEJ9uG59W78ra+0ZvnzoHON2N3lScgyBEXigrx2WV/NrKRiywa00xpi7bD0+BF2hBYUu1i1NeaEDCEa3zl2ODbywrWMjcVpBC8GBZazV2lZZSWHQS7DMj1+6u9a", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pUcgYx/uInIHhn2uToLMBdIILEwi0mDe4aCIdEaCQCw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KPWbYSo1zhyvCL6X7sMj1JXYnf9mmdG0o24jSGQzMBxQypBHUE3yfjvX26TM/GhrFqXfyTNWHE1Jkxzqjg9BQmCkeTL06sPx06ihlOdTTVqSr6XglAy5EkcBSowWKHBzeq7DVtL/1+HlJ9xde5GrDCNgKdoXP8ppQl3g/PQQGphwijRg3gVkfu4A7zxdJ5B6zxlnOcuZ5CxO2R37hjXjOzbO+ZRg9+VxSAzZJCsnmI++MwvUV73CnDW+5sdLxgaJPiswy7JJPbaq3x51yXpT/1OsZJKHqExfNrkMDMMfuwJMeDghM6c2TX+B8ID1PzZ/6vPQJIVK+p7/sg2V2hgd0xce2YRBKktuN5D9RGramHOuKzkOixn1eyjjKeYjm8dBIYrDF1UBpyz3eFrqGqV1iXq2lSxs5b0q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pWrL8CozUHj5kA/9BTtqiAY7n/XXLI9ZPEJO6Q+OhBo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wQxGPb0T0seg0czlWCLhu4jMXjJVqczfpkoGbVQEQ3abf7e0nCOMaQEPcbVXDJBIh7KMd5919QacXVK+Ct0kpUaRmxj6PphE+24VfELPt1vaf0rEITnIBSzFA6qbS4wl+KIHnKdJrSSIN9TDzIwsa+d0Y0/fiOiY5frj+rKUwJcoDhITinqaw5mPpBIABQ2PuWB9SoYBCWesC1BYI45je/udgm2ebHCzHW0LSydmQXRIEReQdN4ib7LvRLuWI/S15WU5U8p2MACBWVSPh91UwyiqJDLbxslKGQL6yfOIrqaIQQoGyvi4WOndIVRkY5pwwP9yuIRLVZupLWISa9JWbPUTTbXYjwbqycp8ctgzdZVEMITz1v+aWQt3Fekc/sqd/aJ8HP3h4p/pzX2O9gFF7+nUCb947bMy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pXaOUieTFXHR1uqzANX1dok4TEHreUJTOQDSLlB3xV0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/2f0aZoXyiOR/Y1L16ZY3BDKbH9ZZS3aGhf6y3+Dbstg8C66ZCK2lSmH4ERFDUdQ6jfJ5SKRm2JFLxKX9Lik/YDGYqJaZIC4anEPY/pXS0FITKhxs6LqyhVfgWRQ1mGFRJshBIRw3TLv8+CQ7XeObkUoVW+yLYJSJqzVkXkvWnY3gNYPsAIuM5h3L2tDZ5lBeF1+70EeYzXhybbe5UAGxkqRL++b81MCQsIkI4XaEqfiCn53Aae+s6pinSMSZBuVTGQO2agBNdyRHer13sJhgrI247lrajZ0WiJfTK/r5s2qdWMyX8eiURW0RaEEI6QkzXQYo4RfHP+o1oIGI/nPch7pde0UC3HGhN0o5ryh5nDaGTU/1YG/spokCaM1jOPV7jWC6bEEWyY5aEz1wMLTA91eKjob6SbR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pcAz7r+5e0lNX3xKHprYTZtyNUFJ60aGqA+80Uv7ch0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7dkyV7bxjES0/NligX2MK/XrZF3jggdTU0pbt3+jupeXGMmiz+yMQqhUcQx6H8fCwISPnGXgA5h+X3eTt3ay/HS/sg3QSFVvFR3JMDepUXv5/N49knK545AobmM2MDXLyzHVqtCrw6yF4NvL3+ge+MZfXO23j+LfACPQYILQxnXr6eO94zFcBr5sVRBp3Hy8ycAcz69qDajl9V6coNX8aXm3SOCu7wZtZU6PKHH77s/nbaEDaSX8NOQzu15slWuIO2Vtetx/9DhY9iAwxs9l5tudhAL3CAX+1YoDKSv6IyfWmA9P8cGGCl+F/G8F0evbz91OkpA2SspSxB7PU2SsvFfy0pFNmeSQH12cDrzip5W4Grug3dZd2gPxEs+NjErPXDi4ECdmGTNyByUycyrwfL2SMaNj0paC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pcYhsPtewxjH6gAGDCksJiUrRn34xTGiaWUmzMJWn2Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Rf+E+022ydLVFvPvkrAgCXUXHSky2BLEg0DkaWdaskC6rTF48PGvsNGyA4+TRzRXVmFQnTRJVL5neguH89/LWu9YHb1b6PEQXttonUIkS7CajvSmX44Qhls9kKDDt12ZyRtJDZnteAHzV8z6BSzVN/ooDU+3C0P+rselUGYnq6SJ94c6n8bgothl2fIyweo1UG8xI0pxgUtdhCm7OTYuo4nv/UyQG6QE1FpCKL3NelwlQfF0bSFhnRZNcpsnq/lDin7QgtDjM2DPd17J6XTjgPrub4hA5fGkSlDqdrIUzNi2fuwAOMMc8J3Aja6FlYkg6jG2Ns79m/ZlYw/ngwQSgTKVrJGOd9ux7FZTrQniuvE4LsukhbrqmOm3eEeaZmqDr5zDuHPRb0V/kDxdOBTsfF0DPV4T/6bG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pdXzw0oXXak1nPDnv9DHrUP0VSsydTGJcnVahJLcrbc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OO3Xv8yJJSo3/kEuIDaFrn+uGYx7pRy4ztJySNfk8ltFmwImCrjuhRLVVACbClYBwgQaOZl4pcOclB1SP1Myl49eDphUXodVvKuKrQuZe5kgOv1WbEvR2jRp9SthmajWdwobDlr8e3oDjzcV79Dv3+eUljcCDkc5o4Nq4P684LTDntOkl8vh40ftnsdPvqDcavX6dQ39IkrtyZzfp1IVaawSn3zAFEH7zbb0os9qt5wFsehsGVnSfIGGjOOLmuz6zqPIDFNWEf9btiT22nGIxR8krehuu5uSOZPWLZXQZlHL86C0uUbsLpf0PB7dloHG4VgNmptNeNOh6FItKOb1F1koyDIZzs8wlKpx8+QJtT6HWXVWaok0K8wkdof0I8eifKOdwmRRLNg1sgu8chU6YdHxW3YavdWq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pfU/tld14BDdZrimXgFq0GxW/o88PfVhTZN/kbz1KUM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2bzW3LuNJ0zEhREEOi6+9m2OioqwMqssTWk9ppc5ThRCWt14SofiX62vuG5GrEZJOlQ6kyrn+2Zb3Oj7cqvbhok7ivtkt/eq2qUAv87PMbLJjdU6jgcEttyHEf2+rTJYI/+YenCYJNTAbzymDEfoYSRcfWgBftQjdZOSKjgXBkDug7XrOBFJqW2KArhRtS58aU8Ggkda4Y5uRZGV1GjKpm6Z+hpt9FW9GFI53Q6oFI29k6lwcpoiSGzvRQHrNXraq/S1Bx6hO5X32XVgOn4AeAfKabW51WWMhBIpeKC1+RrlLRPvpegUPAH2Wv4+4WusTXzXnksAbRcfxXBSQHLBUszM9/57NIN/YBre0E2aG9XQwwmfYa+v4/OCpfcY5hXvnACERwUQYghB5zjVJEz3LbJ0On0CzWH/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pg53jvMO1QQLl2sfMPhDfxLZXZn2t91C+qtdASJfbVc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ywb20T/vfWjykRo0/D1DbDMywqORU5prh94muwZHJYBuqZ0yrD1klPzV1PAkaMWrQ0JXPZv/9nhz+JVJssZnirf3gbL/jzrt98B6WiaE0q1uav19HrmZZidM2D9UGpPiC1RhCy/YhUNax3CVwKEVK4htXQJGH8IiEuZ20QC6ZTJ1PnxeGR3b3Vk6zzvqL9n8vPMy8rFYxi3TuNbblf5LwgRFJhc86kRibDJSz05F1utclxEIOnubu/+7XVu/EmuV9C3K6bOUaD/I52VrIzX9fqPnAmXj7LfVT99XDmm1BoXNTCsY1laxY39nfIJVkJwjDrdbj9OzP/ZDGfjK2DWNUN/P1aytFRixNcSYppzEhYuObfDUJ9eJZAYihNMlS41E/YpG4aCAJcRyCMtuyf6jvZuulYQOJ5JY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pgVTEyooRsGBp0of3Hfu5mG4huMCh3jent7/RNvsFvc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vG8dHcGeAEm2iCz+YoLy1xO8CO7YuP/psA11cMUDhcJs6yzNmnNyxzn2bv/hPsMW41f4nfNxtT8+Q2F9PV2hzOTICCcQspx9f/RgGWnsqEBFz38MD4+PufIlBOswhm8zydb/rB9CP22BVQdjKv2vSMR+v0pvvXcBCMK84jN2E2j98pxStHEB4ymdZ2xY2L/V1yH70KxhHoRMCL+BPSo1Al6HXVQHWxNkA0xTw0oBbuhESKP8jpzc75RaySmqZCqplsKb/NBWJugcWipnW1afJ8KvxrwS1SCZJtW2XiH6O+XieRt4rxfPFmyIYoxal+Q7jYsqhQAydOD84HRGwV2xKXVHs9iBLLJRTPK0uof5Ymd7wyQLJIFkExg8j8wdzpqbMuC/CW4KjDGOxVyCK1GEek2XHcND865N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "phLNeQDy3dUJOufv4jgXnk3XKmtVlNRn9mojD7zaoS8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2kSoMA55TOzdSlINojXsSJnB32CUlrBb85gQQduAKThbpqRGbqjCCxzLTksqsiXVDjsO6B6VpUALl6cK1sobNz8cRhVQKBTrElDhxuIZgu3wyHeB8iSZQrJgMpnl9jSZvEvQ3/3NG/3PPOM/v8rCU495JPXXDxmrPiAaB4yKA3Drv0xu7iotDfpdokTKiLF2bIAtuzfDprxfba+KADnIEDmf9YWGXBZthDgSUsZoGQVLb725pPfBV4o7cuYp/uUQdxjfZwyuNDrrFnULm5q35NgvzCR+IXThpY9ITTEhf2BamDjL6yTvvzIWKoN1+Q+LTAerJHfDZZeXTsJhIVl39ApbRY3n30A943PJcYxdE6NmClMV1lfA2f8/guFcVUHNqdvEdMsYRv1ee1fsM6IsBXEBxLrEghM8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "piim+lH44XY/VuGjO0RmAE34ripWvGjfkRB5MhDMPsk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mQrspLzKv3EcbfP5asqDf9sWw45OTge0BQGTLr3CZmHUOK/asUsO5JIi0pnKb0aUDLHPKwBkHh0SitfZiK+K+NJPTCTyiwd0v0r4Jcrgl+w+q1lrWOaSnplfFUkiDaTP2pIj7NfnLCOKNuSv0Vgp017iCVWDIZsmAa+ehDLKKX4qm3R5NnnTHymTemle7PsY+2ky0ltE0ZaMmn0QihaWuCINoCTQN/JiBoIN/Mc0bF2EwyB6Uu5gTAwi132tv56X6SXJxHj/2/eoPEGPP0fH0GAFiwAbELP8RvJjYoL8LfsaB0Xxj764u4OiQBhOuwZb7B4oIBhasGI/dYaXsGML47E2xcxDKEJAXVLTboyzitiIcp3/LJMbgRXs+0sU3wg3ZClFELBXi/GYYPpqHoM/s0Sp7jGhKWRq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pj1XycsbvXrRqHQVQUUWIu6J16057o68pVvrj/SO61Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7etBoM97o+2FaX7KR2c4NQG6GZaFu9gjwfzmvAWzZosfucBCEtxCiuJgcds3GUUpdluDKtoiyQ7JImXJCR74oVoV97QmJ0azWRPCKS2vOk5e3So/zBMm3Fa6/D+TKsWJATqcQtR9zJUFjF0xrTb1Ry6qD6cXGdRMlS6TQt3p+qVujJ3UIxXp5CGKDy91YxzEJcrDRRSVajtr6jiUlKNwbvof6nmJAXsDV0jMs5+onoRlBfYTtODZ5jsGN5s+2MLnjdgL25IkOoL6BkHvRatYZ3rNzIfLjSVKsYO2Kp9exBDV+44XddTbb5pV8URycBDBmlyxiwCprurexGgTkaXn6Q84K8WMmQYmjan9XinmOfdEf13vid96+BuoGIEqqqFQq6BpY9QkJb/mmaeZtd5y9pVuzfXyJ3Gk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pjq0ggJ65ThORxeQkvOLcFfZjeXO0saAYRS3gAEVwTM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QrwA3rtMg+9xxtlL+sT1DQu8l8pIWfz28p9A4AbJHpIwDF7LBjcA3oF+/Wk9nie/x/NUngUwtfn2lHcvG2IQ7vyKayIxEN3gLix3jS+XiyJxJnZcqnydPV+7naZCE7jxXiPhVbOw0TinqzAMwr/CHvTFa6RUm7hGNvcseKiCMJR5zUz62dZgqVmzPDh6twLDpW1iSs6ZNTY6FOt1UHRuPntyt7+dvEvc+8DgvIRhs6TVEPcCT/0qEgx7JGn88PQciy1Va5dQm3MkujSEd6LAKvyEQLfng3dVc8d5PjXwWpVmFUW0d1LUkvB9m+yskosTiTkMdbmufRzIJTOeI3yF6YY8VROtc/gvEnXdfbfnm/zdKAaqJsXRtSntc+32akuzeWwXCaXeKSxeGEGiRoGmaRE+dohxmZi+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pjxp85djNOxR00oeAqsVv5Ee1/b3ICbBx9L8hoCG7Dw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QRO62FQax05Q+uXTa0hUreIBdP2KmAJxe2FWKOpqmJxrRRZ4v2iR7EAjMIiwCiV+N4bBSF+F5kw4CBV4oBEuZLzh/6x7SfrnXEwg4ZD/TZ7T7WCZmF5IrA7LnI3FRyzkaTQaicJD9JGKRanV4fRzVSMa3/8mAgpWnrTX/9WtzX+g+33opSZ257XAmYtS0CTA+2sNqboLpQ675/G1fwGkM98E9IqacRs+qbrIPPcAdjyMEDD9M8eIvu0DFNZFwqLJfT4PI4KJ5/SmKpKJT3xujk2uRkn8t9FH0KZCpAg1umheWPQLs80ZwcbDJtYasWyHS/FpxWUB/KwdKlzAYeguPHtqLeiGyeRexs29NH84sYeMG0K/uRIQEWiSsedzCju3JElnyxpg/veO6D9D90BdeVpxhjzjNp03", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "plCsj8qGVM/mRZeWZCSArfJCwOfs2D7A7kUA/MF3iRE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q2HkRXzzykjVBDs15R2fP50M+iJOKEgJ/3/A5W0MQ2f1nwkhOdHLO3LY3eefqtC6sOVYkS7/GhwHPfxYKn1dRI8CGGFSOV6U8E3saJAuV5l2H/kCMOUb6BLKzwi25PzfvHXYclEhH17h3KcJ1xgUpAmNtew9HubXkFXxQYw70aLSb7FVAL+bSGjJegh9ihvZ6MCyhAjSn3OXfy8BCYk48OsRcjpTSQqi7xy4Dpq9I7GExO5yI7ZBXa9asfcKjrzC/9B/cP/aIX0xUWZc/CN3tNw3UoxkrIj6nncxhYaEdr+fOga2RFtO8QURdRkGRCNkCROk6/wJkWGZZwr93R8o64G2NeSiUJlWq7aDe+A5NNG38vLinVd0c/dIjFjkVdQBggq/rWtpSXbr7XHA/UgjiVNtjSa+aDR9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "plnoPCB2fqp8NTc7e6mWd7qL7DhOGdTM8aIQJUPUh/w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dqYPO9hWgUCtMGgi0ZKT8PNOnOkagCCL9ZAUgeIuaHcGpEBYpKyFiGpVsDWAjRHjEqpeTdfvst5H6YdbVFLbYgVncJ4p0R/q06bOZid1aKISIBL+cZdxT50UciQsmqEbsfwd+wxrpFINVjq3xUq1VC0eZMpyd5rk8+OJ6CqOXr3iYcTbCHB7cmCpkDodK6qPTNjpIYhvNSE2fgUBYPXy+7Omjc9IzHG8e5uqau3PW8/LkA+WrgSCcEPeLvQhDvQWVKhx4gVSM4G9aUpN1XvfTPNdYhU3Owoct1cBBI5So/eX+AuO/9u2j6tGynNR/6pBmxKonZxCwiTGB0mtaL0cac0STaq+SmRtasA4WdljeFl0mHMmLsS/ThVkKph4lLpl2Kra514JPXXq/sM670/h0KO6dSy/55PN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "plo/jgc3N7TXPSgANkS2qTEKGdy1fsnp/y24MQhOtVU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Cw3M7TcXUwvzeocNqllw2C4qCOsj1/fytTZm8ds9egDjpJHjfPU/cR812xhsF8RDxLf8tFEATLe9EfbWhJ3ua7efuzN4RG63Bro1nCiamjRH9Wm1XGlfaZGU/lYU+bEm9lEo8xd6ferp38sjqFBTHR7MnuliBH8reT7sTs0kF7wRh62zE8qcsJlWTpLQbRiFdwjsRVkx1JYSlClHwpCTdcIubljHHXV279/alymr2qA5V2EycZNhrFjY6qgVA5syJ3OfPjuOMzVU5/A3PWASuHB7IGDlVzgfqdJuzKRqzaqsRB+NVan+bKRE7WqZMN+cpm8AhIN0hy05K1gT6s22eSkfuK9X1guBhuRAs8rh4Xbl/Mc9SblLA0yNzdA3fezQ5bHI5KaFwXC5jTAzLaX8a7RkNzR6P6jQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pnk2vNCbmFvQC2Yk6rquuFeOYeGNAiBgZonJNhiYlTU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BKV5srrqU4aJKmt6AV59NwFHbAWJBqklrY4oB/Q99xsC5pHZzbSoDq4PDZkluwKRLfBm5S3GXz8n7uNRmMyAxzdU+ud/N13MkrfVwn9CUpREjuSoLuWTuE5eQSjO7iNqRD2oKD9MYl52xkgu68m5w/9bv+hDIW5B2jwn22E4L4xqGBA3GvUyWo24ATnooo8rmZnLoWJCgdFfQ1bcXyyxLmNF6qLWn3upY6lJ+7j2hI5UyNwSpuVETjt3VtQAO2AGJUCNA2St8+2+mmq/BcUQ3wZ298HXlG844OjN1iYFfPVdIlJCa2pdfAzGwPqnqEIwAiykCIYeYbtcnlgVqFEwwhhoKVgv4ta9ZkANu4dClZd8Im84RV0uaQIZYNPk9DNYjXuhWZm0rt37TzlM9heNvTwpQqctagyy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pnqf2qKgpv/kQcgScraBrTR5mz1VmrZnQVxoF9Dz4cQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ol7Vi1KPp6fFb3mqPEKeBw5GM1v3d4eZApTXP+uISO6BhCgSiPj0xPkEIyFxgBnXphOO1h//TSbU+rOAvY/EOmEdpfiyrXVnMNnCVsFPLytT4Ulp1jT1S8uXkLnr3gY4gbAVWF++El5H0EDT5yiTdzIdP4ykBeKzQXgKOLWKxtkoyPoRaxz6PPlFQUpNygeyhXZd2K23ue8nOiW4aUFIBJemsv26ylYcjzCnB0xV/T1F1E37YX4RyeMun7NRHLW1ifh03sVs5gfSdxN3X2rNUSyUY82NrVkgAaX9SkZQ1/M4A3WXRpY/RyK76vKMNlVZZjm5X+5LvfC0eLOKo3viFRkYvNdrcE3opetLEXiVVNyKu/XgK5TKlvovMyymAs38GZmvn131cnohQxJCf33LtlLrrKrbQ3ti", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pnx60E/1jmx5iFZ2hIrkFL1lDy26wUx+6cvYUfzmH2Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oEQxU1CjMPrs2WrpvabeMvZZPktbjZrauA7NbQVCY5YePPvjPsgApfmBX8iBtHkir8Tp87+ouZ9nIDdj5T+8CKn5pRk7Ako704UGmqGzDFthE93co8204g4AQQzbuyMxVwmTB93ZuU3vlNkAgfyehmXu8iFZHHCQwcBre9d16O2xY6TC2GWE18lRayhOwYCwfJ/T8Hm6YLeKchw8UjyQHcbjnDWVbEf1I9YSM48TwxoNFd/eGMrzdvdA6CaXtwXOoLQJDRoxxRD0/fvH+QWSwXQLjkuauvv26D+zUEABwbGNiwmRRcSAFVs4mkWgrGnRS3NbD2X1qeLFm/ENtBbS1UsUzrMe2n7xgprrxhtUlNmApbiK9Mct0H2Ns8ZjBzWK/pPRSKPIuXtPNW6+lvYc7bvczV6kV4Dx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pp9egREYH0+D6TCKg5MWMQmUU9VxuOVCqEcALQ/c1UA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Nx16GRfSevqDxmTsd0Rht2gKtq230OdkIs/5CGz9ju9MJZSwe3VQE1POdp4BcVB22hS8M4N1+96iEDkFq53WAxRcovXzAPmcapsJdAFMxS3YroqZ4D120r0ZSU72cN08uTuweNW3vKJFmR4qxXiFVSXiJfi+GmvixKPmIkEHMYQBkzUNn9CfkfPhOSGJhTgjP86GnQD+cM2IAnBHxx6q1rDt7y3jLQTX9SyOSPrbu1hI4PLqxTPaYzktqPpnQISdUH2nnWO9USXfI/cwetUFimsiJhxw8jCHEWzdu8ce4GQMQdeTyIaeYC7FI1g+Nd1X24ob46r7wTuUmOqVvvXWceeqUDI9WuWbBvS0EUplkhEcrZvChDkInRQ+u7qQXDs4ocVYf2n2eZc7ZVjsLveO3+s7JsPbqK5j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ppvHjhacFjFGGW02rvTQG3HmizYkc1KktjSzLvx1oyA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WIfjnuDtYJzQuCnEjQ9LGzEX8YhCmHyUxDvBd/qvBHk+Qj5fgrRJxX3F4GLdm00INZSXFUK98sz4ut/TzgbbXprvsYD4oNyw+qSiMySaIcTE6LLoElEH5zGSbdas/AslhrcUUnKJw0JZVChgnXaAGcAI++4E5L5lL0ykqqHi9yUIvrsDFYNBhgO3ENMmgzsmKQtfGtnmtWfbTbo8ALpoJ1Nx5oSNpELVXtI0Mb893WFoaN0pEQm2pjcqlZuQ7zYpBH5OI3y9gXA515ZPMjJ5kDrdeiUK8GAjUSr1r91HTNXoHXFl/pVAu0EPGzlIfW1GFNUf1c+XbOhj+MQlzxgWsHF+fHjq+/0PUOr/NEeMvh8IE2RecMcZWjhWYz6Ros/2xVGCz7oRVRLuYlpUfOt1QqYJxJEcnpnX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "prVaHZVyU5NclmLXF+aQtAOGYqaQYjdIOPf9gYfF76M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NGttR6FUyuA02rDJ0O9QWTQ/x7bOnN8EnVKSR9qo+Leb/LCVW0csC1TQLOAbYR9ijACSzzmz279CEMXnk9Hh8sqdRp62GNm16cVl5omxyB1df5VuVnWJNEMvGA+hohlC8RqRpWTaqF6SxiWDEBvAvNQF6zMBuxQ9cV56oF5Zr+AzpF4rjUP43XWTVrWCawoUrqnMzdTECEy+4Ix/yuLFJeRQm4Sv1X+57Ga8NCn4Fz1B9yeybGdzpcEM09VRTOxidNHs6bLjwXiRs40Y696JmBMTr8FqJ2wEdfcZO65EBTZ5kAr6AiAR2De4CRMsyFV5Kz0lm+5jLc2UPjQEGCEQ7/T0BKdk5ksdgG0riTO2rlsqGpqIUJ0ylqKEr/81jjogi4VZQqE+WoT398slOKtIJVQMfUjneLWB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ps/0bRPqTn6BUsUj38PO8s5LSkhdBpqIIdWIPxaEb6E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "l1vvz15HBQCjhTkL80oqW5AC+sVUGUl52YZLMGFyLLqkG9q1ep3G5G1T4pvYipICFOFAhQHuYjcA4rFHYdxyATrPvaqte0H+1VetR/t6uRiqlzHyv9yjJgekijcxCv9Vi4Nq2LMxB4/Sss3QVGpDBnNRohfoPtacbn0MbvWDTVoGD75zeURIwuejvq4d9cbr7xICAr6fUt4X5db5/ZrCOeut1t/dfN0JY+faYlp1Bm0nWLQBz/keOsegPGJoepV98XMTrGpWGtwVXxNO6CqZ6Chq9A4bsEuVH50JlOW1D5geO4sbKfJU+0O8gLjiApjaGH8ohgrM7cNUsHbpm3bZwIRbJXceVsVtBenUJXXoROJyZgLzRzcNiA5D7gXhCYptYp76gfdZMwJpYekTk7frwTPPATBA8+k6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ptVEzc9DNJ2gup557y8DS8xRAb1BMs4qrIuilb0L0O4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kr4YenjUwFhYYGs0RwSjw/YIz8cWLDrqCHz7NmQC+B4ZA5rwYRtC7sSYo+36r/Nj/9BLU0UoxNqyjkz+leyDr1PvnLv7u8Nk6iH486Wj3x4K2LTO07WRicOfgYS3Fpjls8bdkOyIIKo404SrwSASTsc0hPXv5SBQ2sy/stTR+9n5Kd9eb+TIiCYiZ+69e2s6LYdF169Fboar3rhchPVRPQvP5gyNZdqiOTobed7NnfvyCKOewt5Gpr5izhCWctD48j9RL1D7b/SWXdWbeizFZiovcbHDlzEm4B04hLhO1TtmaEvhKtdBwGhCf7IxlRnWgGf+6cvjG1MH0QpwRs73o+qpmtgs2AUPyqIJDvJQDeNKVxv1PYRxUBlJxXTJH4Lu6IUzVLwS95J9t0fAoHAcgMQWh16Lqsy+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "puU9x5boSFvuHAREWpaXsT970ozmK37oHRX5NauHgaI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F6TYloKHb8BxnU4wVAe6H++xBaBarLGj5zL6f36vKsTGtK860eO/cFDuH1iE6cYBaEkLJ10+X8LuBsghuO7xqKIHN4QPy7nH5SGFFbS3KN4Bg9ESvtG1b6qGS7wQoeAa5FRYoQ/gdbA/q5bU4kXXzFAyBv3us1BY2d2ZqYiR1b4b/GP9Rfb+W7da3mNzfBEXD/d7t8m48+yyuGOQouaA0DNsskIzQ8VU6ULQ68ZNxjfM3RvMral3QLSskeA33nJkSu1eEr/Xkgqo4L0o+zEySSx2romI+ph+mKrN/lzDdHacNw+PPszywhgJUQ6VbyG0wsv3USHBxVKyuCsiYHd0ys64sAj6y58rVnhqQnAUuY+uzo3MIm5RN+9Yxhv3gajIMZAfnfuV6hPime3iBu1q9fuIi+RpVY/D", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pvaW7KrDGDD532csahDtY5mSYUCWtaH9n+pAp8dYq+E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mePFucGHppWktJ5HQqoMpbVRK5zOoMFTBEvIX3WCxz3wmGGj0mAs2dr++cH02au/q49J/D5QC7WK1YJaFp6HSnXClJp4dlJkEmFjhV38MNYKZzT5n9NkN2qCfniOPTWk+e+katokf/zUgD5mZ1h7JPbDT7pMH0W3tl3mtHdQ/F0rKWjVVMwKJ1+nQKFSuopZQnDr0eYI1EfEr2PUJrcXoEALBghNj08BZ1mNFQjhVdi7lYyadMQoyhm7bsNYwTuxpQcOnHxyDWJZDQkZ5rJKoh3aH3vGR8Gl6++qjp+MGDBt5TPeWNKLslSjInZmENxDBHNNsH6ivE3uu000f/sCOalISYkW1b9ryT443LOQU31bkqoDk5fie4KF/sFq8o2tUv4ohhy3BsXv00Eqv6djXd7YYPXyHDh1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pwMdbpZZzsyjSTAcrLxQuDfqyiyyM3WjZvPzBqohF8I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pjqO7bMlw9NSB+T5D47eoYC+0ec0V7bQnMf80Wu7T0jFIWwPtvZHH+J23vsN9CtZ//9eKMUprAtGTTkgNyQA8SJlAdch/K/mXUXNtTTavPjeknUIlPlpsGRxOsnvLNVgz4DXvhICh/GUrdIaCo9bebwCCIhxlTmwpeuP1mtG5JcE5QMsWz9T8ernM/s5RG1tBcz1i6y8Au4qnFJwFE9r8lmkcwwI6XHJZ9VlY/uRlENys5NW4tN1mRV+B0NrI2oou8z0xQyjx0Qt9T1iIS26Zrd30HvO7dz4ruGJgYlhL0D6OZCZeaaOHCYQsd85jjobH9cX7Q1bFvMxy3Aykzz2UzjA2t4z/D82J5HyoGv3oK7PREEvUoNPoEKf4fuLtkANM6Hhj9aa4Nzxt2EPhObXirJSwq7cbPO6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "px/KnHj66f8wtDl+dH78MrNcNTJW3a8gtba8pIMbYuc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rOVkaX6WxjdQGQ9oA8VeIO0JJPsoGrlus1dWCA3zjNo9AQhSZ5JWYlEtaKXQu7zyJNX1ZlM8DQUjxWJNng/IEsH5WaFXpSH8ojDpz9jaFJDKIgDC3FbFCQJA0jYXnkNQA1RUfO0YYfYse62xD6Rdh3oRccUEuT91UHjVFC0TSxqsXfcjWQ/YdfXORsUQvh3zDeLSK4i/0Sm7eo+f93f5Fb9iCGDVQdO10em5EVXEWVJ2Mz5e5xYQM557EqKgghKtmZ4vv59h4RaKCcWU+9NtV5rGbulcvoJVf2AWEyEUCl+fZ7II/P2S0L4v20ymx0f5Q+rwFTfoZpgeEhKq4o6D3kj46bok0c7O4jJSGQusUbPQiP/Fxjbp2BdvgFJ19beixwGUXBV9IubO4I5EUFpgNlKFXrp28CUV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pxjaMrBE5Y5+iaSx/wosfRoxvZfSYj16/9/o6mnTYHU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SmDN/ubR/P1qpnSHTApBED8Y1d4MxPS1dyQFhELmx8guIDXrr6AtTY8AAFd41Inog+Qk7uHyV3vKncK14dRcdaXUjBZFrfjfFP16qLb/4+fLKUj/0D/Un4CR3szpbNVjYOz/aBr4PNZ4aOv8mxmOQ7+y28NZUWLzTtDTyHpgLvYFk1dCjY/52AiRJeo9E83K9ILYN8yx00evzuKU9ThUjRihsxJABQyqq7LAHyIbRiVuVGN8KAXqF7AjdJRCvWihufUpj5u3MKKkaK1PAA50xpFfawuUj5I1doBGoqImcCqkvuzo8xXOUdLIbmdfq0TBFYr76n7nV/6ap21MuF9lgi6zqn2F/laEWuwMi4nEumJgM/nkvcnosqXuj1ulKQtr5bfMCPry+sMxZx2NLqwYRlgmOzjfSFfM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pyJNxltJFd0XAtmkN6m8IelfwnOaMpkfh5vRKTqzSzE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7CjL9wFfg+FzKMwndnu/WW6JSahySIyyBqb8Z4y0FDHCIrEMcHn3spnDr4bgdUHhMpQ4itVJsX9u7XhYzQ6b5tBkNheKOJCbyO8+sPHOnThoDPbyco3CBdRIZ05EXZmxjx4BPjKW+Qph+aRR1d3VxEb4vk3B+bXTGE+12CGGzOCkQy8AgcWZTenL3hSkMopy4pZH01sIZI2oewSufB77KYp4hOp/Sa7QARRSaq1wVVMA4IpY4laringDKhM2HnLXa/Wk3pb8ypL7clgS7RIPWe3sGLjEnyxRxmATMSTxSVEaDk+XidlhRdFgfJF2NoWy2KVnh60ctSguOSwl/sjcTBq/DGcwZ7onfaw12NWCBe5D9AnFNyCnzuxi4Wg9LCbbpKnOWnj1V42voCh/b3UzvWFh2HWTAISY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "pznxpr8d5/0G9nNU8+JmAZHfkLO8aHTr+PinAoERDpo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2TRxs/+MIQktCM9nW7hW3DbmZAy/q5diU8/LTUlMkVxsrqwrsWFRmccIU8lF3ApsuEDN9zK7/EobNCubAMZY7clUG05KRGljw0Xn9NbOAUjZsohMPogzqlQDag3B/81QXojJpFXjCIn88GMpRB49p0Pp7Ilwi6WsBrbQTK+xWtgZiil3KU0qJq+OSM1VLUn6S+3bS01i2mdOY46a3s8apX3cvfzBG9Kw4r3LVQ9L9ZusWhJUPOUit3NqMEe98pl5UPRYHVMx2L1W6ou0lGo1KtbwpioG1S/Q7BzzjUL3gO5hDt5tKERV9BiJDWroZtoLq9Oby+bt9i0FkZJ0tMjvg244s1sLZQ06CsnSZRFmcjctLus0WQyIflMb/55bjJKjY2TfUAVnuVZBA3Qb0MdgkidqJZjXc7Ua", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q+8wU1zJ+JAuBKb4eXgj+pM4/Ei1+q5IoX2e26tIQLw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DJsyayeA9XhSgZS7nMkPR0dK/MOCPd9oJZuK9FBB6e0yN9ZXsx1uHymoaJgHL3TsqNjtVbyohhJKDxIsYLhZ95RJYk/HbBSL9Es2FGxrC98BotVQqw0UwMkGnFBQ6aj9Z7F9/ZUuVIvJfeySc2UPEBOZpa6GJCj1cMDNXZMh/7tDnZJ36cEwEtmrQQqQsPStDj+CdhLayUe7hk77iZt1HGATWE+/F86t/eKKxnCngxCsByKndcS4Oz5/Crgsq/otlG2pRFI0feGBrn9J3LiucMjOqhlyN2AdK/4d2zRi9kA5OGd2pQWYNQvRJJIchuXH+i9l+PkD0UR997G3dCU3NggCLrNCsbbgdVHrT7mYQR0+MswJUoWssFbVgg+ExJ2PLxQBHrw5KFLbOyGgkQVmothANKl2J1UC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q+MN6GnQ/KgoKJJBbuwaVugwPAvI8FGv2dAE+N0sfkk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V9uWxfppptOxNi15mIb/+Z1K6Fi+NuoNm+MDd0PQCXF86tL6GEkpabfmpLIPuFM4RxXXDvL0fJLsu7McBwjpLbvJsVfAaUUCdGTbUDqFLTwuTAN3ZLPJqqorVYD4hh1l+e+Ngjsp0++lSko5mOIeAWvL34O8RQvm+K5Q4pyLfg2y2J+Z2CgxJTceFXd/QFoxmTOggxRbIQGe1J3pZSiayNbfuSpYvWe66nUkR0hwZ5FRS0wwfnqBUQQ7xYPgq9n7uoyT6eX9jOQwZTU9HubCi6YaO1S7vS4mZl+iIa0vPoAK1c5RQAuEjr4pGjnuAWQcYn2fadBrRWY7n30SNRlDO9XgAwLSGkWLdyB3GAciiZ+6sWda51lVAxLa6ZMsDlTj6Tk8dcqYY/Vc3/W+c03sZSFcXWdgafuF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q/a2dSiOCQULr5YP/Il7zsyXt2Y/hF6Kj5tlPPbmVgM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CikQhao5WxLNHuj1kdvHtyIu/DAwXCGcrW9RGQruGxU0GpaicZ+KQPXQFrt7MF6qDsacyrDw2mpHqxbQBf2eLDMsfUMer0GmHDhtuPSSLcBV9k/dzEFolj4UNoe+rwSJc2/FmDE8duBLZ4GnLwQPu9xlM4w3uAd7iPN7EmGuHgTVy+1+cwZsYSpZI4twjPWzT/SQd/OgoJXdy3k8E2WQD68DBHqFqcEEfjI5f09szKhQmKz05k/cwL0BTKSXIdMleskHHxha3HgL5nlDr0MFWD7CtrWUQequsLus1K1Zq8Ossc5rFFnxXDdbWPgp9BmAL0RQH3n8UD/232bP0sEb/iNNLJAG8Xu+8aB2EnWlFZaANfpAIFzFXsDO+wZYSJV8TetpheK7f4tdhmj7mHtQOzwTG+oQAhWI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q1VSPgAqS4wbXxGMpeD5wPMu6rC98QoYfOPKVlFO2cI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L1VZ3S13sQtCL8jIeIAMvX8Djls9Oo7AVUIHzkOPDLYIX0U1HqROZMxyautOvoZdCKzNakpdhQXi56snDCLHEZhMpxXYS3nKnjO/gn2MMK/p/2w095rs5R1W82t7eZIiKrWPx+blTELpbZz87taKutnHPy2wXuMlprK7v3xUlnGTlAMiwe0zfMcO5MLV6oPh60j7cqEi75AlA7ERPPYIC8tJRGDcUC6LvLlMIlShzuLDnPGVdSnYzF80ip1tgUhJuwqJZ0lR6gOIOcfcyOWBtniIjMFmRfcvI1KjNU6Is4rQb9ltHmyGEbVuMqB5lGq6YfP6HxaF9gKYqMMfHomYhQiAsUTLAA5uOUCQC5nk7tl4yjj5okAaVl9SEFhLRJOzI+zD+NoTD5cLfsWhTR7WG5jAKYI9J6Kx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q2KkAOyesB5RKBBTxo43aRYvdlEtJ+StKPBTNAkL/uc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "15D/+EoeN+ILMeTZji/0X1jGEZm0W3VN93iGndB++JsfiaxQGeJJxm+oOic7ykD7hQzIwMOUIthaiOlSWRDieRzgrJIP5CCqegp5TNtua+32Osdv7AStOYmCFFpAzLXbtdj1FoR8fAD3ToIQ34fxUNZBtpocQPNonJw+55tLrbTIoOk99V4w+xA5UhA4Ev13PJ8sRWmW3fnKbx9rBf+nruP2dSUp9o14Q3iQWqPsWgbCHbVczxaWOJT4esRAIyYcrPnxRs0ZADxpP5jpRgmKF6gpsTFCgIQmsk6m2OeuYOy/dRpBKniw35MvKYUTVknarBLdlb9xSp7WVKibXT0F8mWfCiK65gWYuyXTYoV22QjoUazN8+GG3HW70Zd7VLGNoL0EO8Abi7IZyv90uzmZ6iuLmAclqYDP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q3h0pSsagwOP0N94c9gvmMMXt3eebUlVohnlAzAW2uc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sn3nWtHHSyqzvwcOvH2kkc1XgE22dXb/j1+UO6dDKl2dULoCUeASnlUw1Nx4D/JbfH01KyMl1E8GsfdCl7S46kCyJNVcT8V9Dm+wUM5Y3DdGL5b+EA9oNMALG1jShWCtcgOdb5DFN3SIAWrPfGxsXltiMYHzl07rH5AmZVgoA48ixs0l0X1CcK2meUl2tbrPVSfRYc37sJbaYUjNvdF4LSr52n7KSxr2HTh+c7QVKTsjxwg0jmOCL1kXPBXSOC2AMMSn7Ar3HuzafnVXM5VqdklMFCyKvFF5LY5cRjG5kgC9HT+8Oroq2P6Y5otfM8LkvMzw4/a3TB4JDUZ2b2EDFK0cesEpJnTrdyOZkqrVo7zvdTU977uK4emt4kfJdl272gEzElYn5NoBNmhhSp578Gclj7qpKubU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q3m2ptAgu/sdWIBsarAq2nUQ6tgpbgUiC8waKraatqU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VTlAfs7FZyJIC9HkK3aLmj9aQ3W2bfc+xtzZtF0l5zuk2dgUYtZKp8LaCTqkiDf41jXwvGjoNDCowT3tLp72GT/ZfCwDQS9ZTUXPGgE5TrBVT7QZYSv6JLUOpFB2P3Zxs1Kch6r4oc5A7w1O+95srzny12UIW1CsOR+lqnIXT/KWy9K0q2MEO3Tsxd2VrljujyL2Xiv9z4lV33dvU0bb4zJ6VOwmgpRiEVZMAv+0u9vWYAXBecdoGleFDwArs2FrViq/HUvp4qm7TgHm/lnpcr+sQGK0Exj9jY3wvy58GyYrI4PLOlpuvNtlnZ8uOJHQ9OWeoEONSP54tjugLr+ay+8mS22Qpz1TQpKlqgBf4y769UxFF8r9wRrnvx9Xm8u7+ruPUmmvcGpPMH60cP89j6nWpAFW1AID", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q5Fq6GjB8pB0oXf46z046GUgAkUr1Rx8pcmXf5lFIqc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r7Xa4UMhkpmkCvD5RITZCtsRy/f8yQL7lZaPm0B5mDGP3EWgL2q1EsSSsnxw02yAP3LrRZrwZMu53cukIeAA3DvRjtvwdJqkFBdmmOL3PWm9J3kjRU18Nt5HPMJWxZJvdeQqxxLUxlNPE2MjbP0eBqc+ulCf4GDEdt2wBDfl2lucloS6X0OB/K5hnIWPMVJwG7/8hogsmu5QakCw1et6+iG4tAr7RdhNZV9BdoygZ/wJwQsfhlmdTCcb/+2PNLJi5flUf1VyeICTdumUpNgfCgBiGLlRiMLEQOhRu8YuIFaV1y8KexQ/lZahwelv7VKxzud/KutfarpR7jONaXrLP7VY65qmdT5X8vP05zviGly5M9Eit38zn2HeZs91+L4HR3wvPSWBcCforkje2BTtnMvFbnXLYspI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q5MQyA65Baz110Icg85N8F1+bXrEmIzGWdqoyAWIL00", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0f14Sy20aW0dDwjy119M0anHsKuzIeYpJNRx3Oh5rcjfwfoUmRu/hMFgt+3MZGfXFJTj+Di5n/O5psUeic8RqNywRrKiHdA7b2yQIlU9qXUp09ZQTSuLWii1Cq3KrcR35QUJspi6mMeM2RGrb5+J2XKP4leD0oOLtlkbO79SmI/AnwpoNMh6oYEluzwvPk5DGs7Y0VrCMg5yUOXZVI2mRbzdNX7anMQxBsCEwQdeSyZzgaLQzK/6C2y9BRnmWIazbGZK6evVNN2WkrFhDZIK1xmY/scgc3BbxEJ5BGEkwCVtdNwuK5GZYetp6zqgyFkhq1d6lWfLkN114aBBK5U3qNAU/Z6rmFSjng3BXkCFuEja2fF/ml7bLLcbuflYGUKG245Eg5PoI9DipH3SIZfd9iBMkDsMLkGa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q5jg3edQxK3QWvEeU+Iv6EdxOpgmp4KJ8nSs6nyBVc8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yyCIyaSz5ZawisLrfcAfHK0chvLW8kDoWmk5hJljIKHvs9KFqbPvpkdM1RmbF6ZqQ9MwxsjOoMRvaK0QArLaS6GCRvXQS5sk0+orSRcB5Tpdl+mWNACwwFhaJkSDz4OsrlwrX0yakHyUBwzzrwSrbLzJP9lfpC8jI8IOmwer0a0xT9OZW7tmvTVVsF8G6zSmDBuZQqJet3RXaG3JpsVq3R34gOCigwOA9sdLaR791xGAf1JlmikNLiirjGm61J26N5rFM441LMjl8zPFYHR3/SXjGer0WvwfVqc7XPqiNiNRDC7wnYlRJLFFOBNDyFMI6Tpu2szBf5u5y/hhX8Kts0ISjQNkrx8V8V3vBpqJmXc6CB1rzQN8sff18OlkM+lgyl0xSiZkQt5H/T+QriNQcPwF8O85GyoO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q7MojP84CYfpqTZvyXY4b6s88BmXSrsguC/xc1qxr7I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iUoHqNgE6osQlRmH0t9TkeSWsYuvENHz3SJUlhUM47Q5+2AJ/bhU74rhAcloKImkm3uYkwzVWSyaFnE1dCztTTNmy8RGANDOlme5Jh7zbe16j2zPCJQ5xPcF9MlcNPpDwmFEqJCn/DeZDuEBQtOKYrZl2K514ArjGXaEKB+44js1YNv1P2ooEX1+7I7x3TYSFPgOje3EGwaX/S+oO4dyrb30eiIvmU8Ji7oYWSqmSi0aqh8ETqnuBGhWHBg48H0QtKSuwypOQ5MzWF2LwVoUqcoAvQoAbfGplGwpsRrVtj65pvuVngyOQ8qxrd9+AUNzN4jkajM4CvpvU9dxMOGbKpedKdlo8NUlOzElmdmxyKFY5jlLlQJXdCR1tjV9xyIb8UAamY86bFo7UL0SL/v6D3OctRNfeXc5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q7wqT5KPDEj6En38bDn+BSZsNT77FA8DDC2T5x7z4gY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o9m4EY6tI4emlvQ2m/6Zfqxtd7tpofgLOHH8+Ey/0+RotWAsbJ3rGrKYnReX6/g6XXDboykAtoygY1judx5hqQLn6XjVjPJhMoOdd5HP6lUg/kzZH8pcXQaW3jFkrX2G2EN4CToRwdOmzxnfBjjlg1yZiemVh2sKXeqoHVi1e18iA9h1vVDPBX6Jt9TC3JTGvNrw3LVnOOBDhuJvHh9urPqjcklxINNe815IAXsYcsWtooRPtqVt5Z+Mj7Lx9o5rF00EZM+qXNRt7KWS0NrAbAM2Me+Kj7L5diOrv9R4Qj/P+WEHvEtiD+7sJddqxAbMKphwNKtMo1DUyHwCbmWiHfK9wUNryjfgOAAgTqmjtgs6DajBzSBUVJL1CRBrsEcCckkzbv1x4vkhnFSgX8AdAIGJbrzrKRGC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "q8ko9qrjhiPyGMTPk/7WJtHJFO7Ddj+Kh2mrEbGfji8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sOH7aCkVBtH1CLfxhqbxdgX6xUgbQd1fodVvjOF1anBeUHFA/zyBxt6VHYaeZHAKByCQEnbDPcK3zEhCRuXmU+AvU7zhJMU9dolUdGi6QfGKNjcSsBE+zhRoogYelnxCxrWzSgKAlylO0KOCC4tkgOVKIzPhr23FgrfodBd5WeD55BAuHjMadrTwZb/Lh6wTP2ZGp5HvMIuvyw9P5MqwQ+Gw6cTiI4ZToKn8ae7UzfRqi0R22viNHiNp6BlFIj4fbua5+6nqyDrKfE9f4eGf+a2u5PeY8hMRQopQm6+RMUmLbrvBXsNpdDF/jNHOhw2ByFasIjhtwNw97XO69mceWk3JB5JqF+EAx/xy/i/qrWpxckyMf1D/XdK2Isf410D6YptxDL1ecUJupRu/0KgtSPJSEEF9wuqU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qAHgddQHQi0kuglwSAcqHwhcMTAv7GRcElCJiDrHhgI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Hx7+oKszM+E6pjujLZD5PePmlC/8gfrX9Iku4r7EsnnsLreXEwPIH+z/a2JHWF8qxkmiA/h2P+uEvMXSIKHgGBLYzW+GAvHOMbNQRIn0fuD9cvIJmDQRYnXXoGI9tRJtz0MyR6h0aa640f8fXwRnNIx7VSRHukH9HsKpgHKJBeRuDL5TcPpFCf4fgnpTvoPC9xbmiaKUcWazqV42ZGLNmxIwuWigG/Sh3A7ESmP8d5Flx811Mg3LdpGJFQnCtnCtpOsvkmB6A/djuSQaCeMwzVCb0DgfLJJZvIGvG+Ig1i6A/fjSX44QRyPainxShBYCbbvA6XpKoluFAerZP+03r1v94gL4wyr8O1srG9xuL7uIUXTO159QnWqDYJA/QM+ceoDjIYdnyDny73gY+Isrvl0b5+cEfEfB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qAKkFRL8IDAdCFQGsMIjZz3Z1hQ8xAS0aP9Q1yUYN5k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8Mu2435XDWH2PL2jm1DWHV2xPE6zDjgElEUQUjEGoLbBRe6h9RVCKnO9Q1LZ5Sevo4p4nqMgJZVnor5gB02ffOcARmdUiVQo/uuQvUvX49sGvqFwKjcV8tudI3KXexbX8X8xaBMqD0EZKRVcNvFoNsE+96e0uHAtgfI8MuZZKZ4/kiEz/1Y3GVJign1ffkeZx7gFItLD1ZD0MPOy5oD4UgAmsCDuwByeTZGVsuI607LPgtmryBhbb6XmiwcmpL9htsRYhIoTYjuOLnOHMxHDPHObb4yxiPBIUmB155DHOJzcWjNvR2xzX7X8jnnajRS2MxjEGrhYX257zczCXqft9j0HwwndBi9eLMpL+eTV4t6PqcHqDwJ0L9VNavQD1jsjbpV33Lv/1+FaZDq4xasO0at5J5bws6dC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qAOeNVsAJoZIwl6Xc5PglohHWcUFwZ1+2ccQLX2aODc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nz6o8fNvQv4kQr6m9Mnzgld6no7Icx1BpyBI7jmlJ5vg227DTzziTAl2sIUw1HlvaPFeFvgScUS7FngRJONZl4x8ynYvePDk/J27hF30Zo6Of1UqZRxhE5IYKSR/Psx4v5HhxEhmevP2nfDx2Ly8oDzLbFIo+J29chEa/t1b8Ov/vy3agsNSbNz2rIPcEbSgTjQxVGVeKtpfgXNkX7ZUypKWANDtJli9BE6+ymq3Zw2TmSIQC8flVS4jXxCwwLg/Reb+JOpcYm62OEiU6482s/eFETD5kxsUlGlLnn7nkt0nF9i1EjwrY53/W/snGfvGd2Wnpv2dSRtCsZViIcbvahy99R88KQ8GX2DQbThCjkIAXE3Q2fjaJ86fc92kN4V/vELODJIv+jP2ulOiJTc9RdRGz9ym4Oww", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qBCbLUubWHlrpdypCkn+I0q0pZGlksSPgDcYf2xThvg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dHZWvhcwHm8TUI5/Z4ZbjkECmWT9JjZ5wAG9DUFS9+vd+OUilzzfskIgNPsA1GckvovpckgHFgm2RnDc9ziT8sPdTYXhSUkZ8bUv5HrMXzZf2Whm12vmZbyx/OIdoGpRySAxepS515mvVwjpoRgBexBSDUHzesw6hIinvQl10vHxBMaGDwuN/RlwtnYcV5UhjC9pain8wL3a0G0jTG7orC8oj0NDPZ4s3yAnucDco+lGk7qywZF9QPVWbQ/yDTyMR6Rm0PxXqqgDo/XyRds7314vt1Jl0fMXL+TlWuTQFRul4C3d7941R8p19/4/dOQxo7tn74Fy/yxzAp/WtbDmjKuDaZDCJd17y4lUQGVCcQWgZxdtTBxJIXqsGajJsziOhEyfibkjhAVOSnw+hi7/gYYm2gcPVWxM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qBYaco2nXke5UjoMkbYdwQHMQx9K3zX16k0Kl02iW38", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Vu1lK3yGHZt1RldtxrCoVDnbkHqgWCX3UWD44+/ZBv91G9yEamlm7MXsZuW/1Os9lESZo2eUpJnEqBsSBp24NJztfrzmbfq/iCXWUu5+t5txsAnNs0M+szsvwweF8IGJ9bdGQX/srjGo57lzJdXQCTeskz9c7AxybBc+qsEmv3GLam6dxsXi4bHvmuO97o6WgrhkUBHR0Qnix/cnvQIe4xFeXe5yKs6BKbnJF2PLRwNEo9c1UJXhBAfHKDByZqytxungGlasilowMiOMpHy1Qoc+0StkbbAPShTt3QgX9o8KoGXMoozsUnE3pwkbIPCwxf53SvQC8CIRQYVK2uwRHzmqnPv5nf4all0UaQDxOXltkjM5K0Cq03UtF1+53Kjv79H+MSdIcEIL4BzSheAgn7EPeWi0ygil", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qC8pzkUriGtJa3YdZ2IWBEGF/tXr3j3usJbA7FUYu5E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B6C9KBrRGHVA7XuD67lg1RRYQIqNteD5rCn0ujjeDo1FcpBoyvjiTlmGF0+cgyRo0lyxrLQ9iexjgUOIPiUNWgoesqUeMVTNx/GWO+3+2bsSj6JrQrmNs3IVcMi+QDhnPCrxx5xjf/TtQ5DheKpQJE9EZLqJLGwtA5QUC/bIf9rw70hLP79jFBZq12B55qlc2mjgHkB8osMq/H2WCLhoqeyNKHHG5P51igzxT1NXqQHL7wkfHPsbU/KFxUupVIk4qPaD6KBt8lcXGXR9gx5eGvN3Yv8f02qGdLbiYaJJtMXD2qrMgVL97+Pk5yMvCIYyaxz0yuSNL2kuokewwgF98zULOpiTWfsjDzHWHRgYW9fgywTLtj6D/KI/U1jutBX/AkczuBy6qLU+hkzj/0eK3oLgClmEsPhp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qDE41I5v11VdLwL2RWdPtPkQxeC0a1i4EXUzrm6V/K8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NYIAkbqiVb2Al/quCGB6Q4dnhfQPxYlDUZ2LquM6dT5GuWMVdn9+IDc4A+9fP6Ksh+9afJlndNQlXq19XrbqQGBogtWCGjRYQz7R/iD4esaC9zAZMu2lGkPWgvRQpMvHnhWtGZy4cRx+ZPGbcZVD/PI9e8oxXWmjEwU4LLE+M62Al889cVE2Wu7rwW6M+x38q1Fj0ykvTcsZHHUW0WGKgjS/rlMIboi31dIC7OaILJzYZUH1/vWcwftbQMUYfxvFFJwFknvCh1vLmPtXFDsVMGkQVZv1Qt6VbxFgPLXNu/BnThbZwqM9Cl6obCvoA9n9CmGnT4UHtSZTODw+wrnh5n5BPMjvY/iRMFm7ix9bBbKUi3HzH0j4QQsTXjSCuHNB4XHy0vvc4LVa3k6RoUspyOSsKXihxgh4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qDyQemKXSJP1jOWPFKhadEhsYWN9Vq+mIbjXn0rThXo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lE+64xrDJySAICNk+uG8cp+mLlIiINc5qmv5yI5aHp3KRpXmVloHY5fHmGQqLJXw13U5GeSNA651u/eFr9FQGptb4nKAk8j3ABP73TfK9RU0Up5Tu5Ey+3e8RaGO4jL8u5p0zHIhiSdOe9r1/IV5NPrzDs7lfndpcPUDtQ8N5R+ASf1ZyFDuD0XjPOP3oQYHfg/nvmFjaMkfGeyhM80BBa5uWVL3kfYWSht81XbNEmMw/LjUuEWHvKaEP8r+chXoO8mmTn1pvy2Ew5fDsWW/0NqUfeI7viaKpI/5/PV90xLJFMgR7umisB6m0kKlQnkfEIroc1hqUa1x9oSGwrNIj7iM0+wkolhMyz1Pz+VFBVapYRk2OiWiFnt8cZ+wb6Mg7dWGL9LIPtdhQZpVfnGSkWTMlam/cNaz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qEQL0yeIM5TdlfWcPFntn10clnjNVIqFuOYS5EMXV9Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nhf5jZaokK5MTxgiXtLWy3KGZqItZhJPaz1GwSEeT2R6icw/wi4Bvte41NWzBUBqhPbFAHb2hgC0da/PLi8WF6uIEgttbA5khst0JogBEUO5PhVqMRy9TTFTt3aTYtWp3EuGOAKV4pDn5N6aSauAE9Q2IIRLL4r3W/UEQctZ9HtrGZP5GBq+Xx6iqd48GU12gEG3MStExpcusBOyhR2niJRoUrbwozF7dizXZYX0+ln9EgTzpKSD4fha6hqh1f3VZLmuzjyGojEMbNTQq/sgKffYUFWX8fmwMpK1Z9m9XZYImY4J3kJmiRlB8WjWiUqn0P7b1HAd9gcUbUofUyuIJ6Xe5yDJ8Qi8QiZDlyH+t6xNOXp+V5aON54jrCcLIZsqqiqrQWi4XgFaxIqcXRfjsZj5gWfeZ9WQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qEaF12JQ3YO9gUZbb28349CcBSmYPSCc0b4SMTIsxBo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vf+7AzUMQVxc30GuEMXIeYqfZzQsOlSlim/piHjJ3FXduUBxe6m2cQ3uYRFfiEUt5me382n3Qz07mopyVER30QH+9+UoDNvC91GN6LLUWwKwfCv00iqJnRdyyuvxxjo3qTst8Zs2MwKK4YMhglt91Y1pMZiG7kOpaWGXR235kTH+dy28GpNdA+MNR7WXFQttguaTDZ/C8U0oPcBPBu0dpZfvKVDnpccgvTfqCapvDJl+sJeEfqpKYnvSJtS3tuaYvwLLSgFr1fLx5cOBXjx/QKNZgYWYb08fjaSRl3DuEjBmHVW3dz8h6GaPTOcKRciXK55inBQAPoWL3qH2OYFG/gLVF8jLrjAUP3HdumiS12tbX0WbIp9H7HX8V6B4uMl5IpE6cNck8ITW3pwVvD94niyLyXhlo4Iy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qFF+odUheHaidJt+aGWD3qFTmiuePpcModffWIe/LX8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P0h5/2l+YdEIxr4sblUIXwVw6Q6/n3AIlAGaCCw7Q6899tJMnADAWBnYj8f5Zi+mcB1N3PM96G9wa+sGDvQQGQb4e/wcMia/8WbPgqyzYgtBiQQZBuLGlb1l7AjZpzMN2n+v+5JyZQ4+BjhkUgsUdJAZciMmpuOLgFjaVzuuPFfJeOGBKmY2aoFpXPpUpo8Nvb22hdyS/sZVFu02wEXK3lloceVG+zRbRCkWbaZbTb2M9ayG8GSclc0WJ5toWK6L1oxl0zcZ72XQQSJU6Hu0roZlCPfbqBdkf8kD1wSdmmToRSWvAXP3EIxnjnWWniAKILw+sx60dUFYVj2pf1fF4dk5Kt1tnLHGqr0lYTbRG5TPyRtC6D3M5I/mYMI96CgyzlIXCbct+EU0LKPs6x+VvXxFqHPmK2l+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qFF0wBAtAYg0MB5JsnifDOhCMfS9khHp/GH3KLwDPjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Qex25s/ywbs2VjNuVmUkhpawQOZ2JggzeykxJsXLmcL3BwyJvqrvaja3xLLBSx+VWltkYWtr/Q9cTMAOfC20XQaD88QY7GL+14GD7QrWS/Rb7ZV9wANFZnohWh/5V5QfN0gkKouTBGQDqCzM54aydv7+17llpveg9EsSP56xXxI1TXqj+e/FV0nxuOdrjCmDXRvrzCnq2INTyqGeKoIS2t/Lw/JC1B+SWIx9RJMabwUuiYldGYrjBGM5GvuyJIlNctZvVXk1VcKSAIlzO6kBsH+QImwoYSU/tlqif/wEZordatI1k7QQTbzPf2nYEoQxM+oMpklalOI17enXw+42gFMzKgDb7XJvhSJ7JIwRpksvub/kT9Tzo0EERzl2xHflVSLaXGYKO1yfXlQJNckx3HkK4PQg5tHM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qGKEVtPX3burSGfgSM+/bBC1xz1e/N62uJHch0liSKg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AmAgA6PdEQoARwwC/BsIJJCPH+znust1nV7GVTzYsmXEZlrFc8f+MmifUdasgb3bpavBPJwwj2G09OzFXq2PprWbBliAPVi7inwhHDfKtTIEhYeFF6cCoK4cPLIaMy/khE5TtuGzs0IlJJm/rt+ZcM4CPTiugeAy8qyyf5alhGOw2jYFRXgutGnq0Nh1HMjXrCjYDQ4hAxOJTgSHWb2Lg20/9Al7hRA+sinIQ0ecOcwXXxrH5RnjFdYUlwfIeDYgoXrvpe7NjzDpYVkvU+mOqpnnIkjhJT0M4cT6WC2E0/Zvz6v7oHPvTPx8NHCjDZdzYCezz4R/3JDV2p/nwVnWbAGVml0Fxu2jHTnRRrC2VDjvFBVYom2DrFnFGeYB0fG12CcCqkNaHBUL2l8cvmtn35UJ5vS214wo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qI2IWuKISvNq6tXR79GV7rF43/zwlIQ5P+9HzwMZ3II", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zJiDI4o9uefHPeub7YxHIuSrigf6AMkm/Vw0/VD1m0m4YfCgwFqEU0VBXbDhHIN/6Tu5MsV9gKaGTy5cELOe51CzBCdCU331oSS3PTjLzpjS87DGllAS2nEaxOSfJe92DU12NTHt7sLgEZFScE01N2QFErcWZArXwqqNpZSbXIwmNOM7Nrx3EnbZ96WVPmFrbq3QdPdbP+CWfufbryc1YvamB63A8Nt7xWuWDWsmux4591hb+stbX7lJ6+jR6Y89t4bFawYE0qZ8t/U+BumNsmbEtGBrHdpiT+j1eazPaGYJS70hjy8nAqDPq3YcK0BLK0WKYMe4R3e7Nd/jhr0wKGc/PXuHcYpWeLzVRZkOj4tt3QTtiWKJTGMD4BFnEaR2iWiWcljo8N/BLS/2pPZsEXU1ysgTRkko", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qKJLadKFxT8b9/Dcov1JkJkN3cPHm3g/nzxhYfL+rVg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9DwGQUY32ny8tIVHw4cDUrD0drwDjdYTvuCT1368AmRTAkMBBUi9cPGc1sILuf17qSOUulU/vQlxJdk+lXlPNOM9Bf5JfC+jgktavrit60D/kbZoaa4aV2cdYrMhrUPEU6rU7w1+7ejWDbNzg3BWn96Rf6ivYwB0VziKYVhyxZcEMzBSRA4HSwICpzTBb1w4LZQJ4of0bwI8Lu58X3eJhmKbNrAzgrAEE2PoCnZ+VxiXSGD5gUc7mIiRiCFDpICYUTpdmgCeakimWoAa5l3ZV/3lTjVGG4glJ9M/JJfnxFw9WCrnkUXyVLStmOU/kv3ulDNa8FVufurRrP6xqea/rAjk1bLhjzBKKqKzneSa6dE4YyhSU8G5/qBgT3+U4wXV4WTqgK4Us6u7lgEINm3CmADWCB5vzyi4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qKX/i/YW2JvIfpoDiNhbrqxWC0PdYrX1ibdOyNX0Pgs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4+z6eAKfVLZ/rtv93gIhgUIfYvyZbptSSzCATFPdBnZVAmLpLtgS5qbL+rC/yXr2w93JhZ6dCy+OnF4uWgr+cqY1CSaQq/KDS9Px52JvcIlKsr2xOQ23OA5SVHNENpuUbWNzf7NpfR08DouCY2/owMkljWEglw6YhEr6sKRJDrIfTlgPgstiKX4MGIZv5B9qykQqQVexVklPs77fwdd4rONSgw6P6q8oBK7EO0VVDJjyIbM4c88bkNDkLzz5XcxpL594pF81O2dvKgmTJp0uQd+8cKgKhqNHTEcZDMtkEbyOTB73xkTuFCfQexTqjWdswgm5bS6sDmMkC2k55yvTjCN7ctgLb6Ny6OzeTogvWqR3GZFPz/EAt0JLiTmBvDJgrpQFcB6EvYFvuf9jkmEekT+YRhwG3F9O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qLZAXsrWx1JHdgFsXnbciaNJvL/Zv/JXXxU8B3bbkVc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HvnxeHG8ioaI84kbfpxG5QK0skRl0Ddqs3OdUE54fqCqGJwx2qsJOcyEZUA/TT/N5JrarAJIo0FCbd+uyCtjR30H3GS0L/4uz+FzwImNxXgRBiU7pSCL1VBx3bfM9CC2mmMr3+yxkFpKgofPhWyiEoK8sSX+7OqreV0RpA/jdMQ3Eq05QXajzAdr88Xiis1OTfEK7N6iI6shlb9dthCO3HrWcZBF+GhogKMDHPxs9EkzyOMx4go8/mIcUBCBA6Ho6Uz/YKqlRSRCjflCB3E7j19W9LlqFbL5JoSW0p6uf43gqr7519BZI0VIqsxIEtntVom3m24g36QTTSDnjEvKisLyQntoTGVKrJGc890B/KAq4jVbQWkYZ9lyIDn7uHwpeUJAZJo3d/b8ToQ7ikIt1oXpd/j78DoB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qLyThctheXaAWQzYHW2CbDxdAvEqB2S5MA8g99+Xz4A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YqDq8XseLWHdh8w8l51xHfhHeohfh3AOFkQdXpPPC4D4aD1hXhRhxY7xrWsmKjYARgkrXeScV6ZhQImtX9B5mLktE+dTRtt+R+3hS3iSgErXicAt9LiIm1+YyCK7KF6XfKUrWG6CS0jDnhzHCil5A06sQVzSZDBTs93Cu5sK0xv01mOzUOE5MVnH5nHHtq3VQW4YG5ZxCWFCBjQt86+qyzk1Tp/QLdxZk/EKLcYvRZUi8zFyBpwakfqdQ+I41f6ZaOhKwXPeRu0ObAaJY81xU2Af1GKrKf9npaS7KVD3PkEGMDQ8AGwzwS/ZyHRR9mlwmtR/xMBV74HCSCOca031NRvEziFbZfOrDj8FZ5SrZZRTJrSZr2nVti1iDSPOdTfI53btNjuLpZGsIa1fbaax9SXrC4dNk55i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qMq6qVbZEsuwI4VbMUd5hMbP7MTx/pkHArJS3vuebDg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ocNidXarKQbi6rG1V6BctSWb9boNRxR2D2x0gRJycHvWg2FtEIl7IIIjiKxmFyi0RhBOWPSF0hg4h1V/jp9riWmqBHt4O+6CnGUiAaZQ3haxj6QaPNKfBmbifnUFcZ/bUM4pAD+SluEZSNHRMkL8Zcg6MNS9OuELEgZXQ5SNJnL72tGZN9byRKL3FjjaKSsNdH9soAwFROl1MnqE9zzBA1O3TJoLPq4gUCfpGD6baZKSon60z01HeEt8yboNZXYAMBTuTedAOz55aI7kv93xBkwahRXErWESiaBhXrm8cQuFASPOMpou7KzhNNvw6RNCxNRtsJDgDSZPBsVvA/wiYT6laILwGcuY0HzpanB742KlrlJim/lzE7oU0GIZJsWRouCmLjMfW5O25vJM6C4XIxsz97jlN+Dy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qNV4PbsNOv+xji0SYaCrwgEQN5S6oNIZBKePUccNf8Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V42XqWo3lYgSgsksKfA6eBZhugraV4qJZw6nuCM5mCsMkCJvRIctHe6Pk54x4yVCg0V8DFvVq1CnSCmVrH0SazIwXSGggczXvAstxvg7SHy424LuWbRRkadFD1vISdIE2Qr9qgdQ7MMk1ggkBTJwSgHhMiFpX65FvVjRxplM7hvzMgcSuPJdPqWD5r3KBURvH3hnco5HYB+STpjNWU9EDktYK6A/p8MHXTEvyXBAO8lOPR5Lhq4RCCZHmxyMM8JPO2RebP1ao/oRAn/theM0xij1FBTyiW54xlvD6Q9A8hDguHtDdM354gC2cNxXWa6GNYG6RqJnNLfPWLcY7goTRYTe1qX5+ofTar5nefszq0MFWzRlPbnqLsgtBwaePNmoVJyZQwaJUT0wIQuI6Ry46ob6y7ypHEsR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qPCRLTtWvlrafST7kxNbF5gjBD6CZFBuZVtHT3EFq1Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r1/PQA2lbABURLqWA3i6BC/+XAflmD+ut7wi3ixuD67AnZrRLceUkjmhh7T0Sq4xjPP6/wbLB9kF0OUIZqhJhG0b1Hsp/pVCsSuF2dHhejSmp7Hri9t4wkcQwZOBwNFOy/wktR5EivBx67lzqrgFtJZa7/Oeqg+WKwM/hQg/sF2yNIg9/D+GTM9eudpFbfcIeWygtN2r2+KMakYKLKNpFY0mUmx2YtYr2D3ccgx+8zg+6HxN7LLkO0QaRAT3eNO+8MOcLfRWCWQ7x0a5UheqVSX3hUB5eCAUxPlXDsLeNtnsTYUZVwRzHWuhOu/klumByUdwdbRBo1p6ZhxaNk9mRpbE/5D7W4kqRg0O22ycaJ+k6hrk9YogYhP1rGwGPlW7G75vyOSsY1g2MKCLnSPwRpI9AqUDXmrY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qPKL9eaYVpWngfwNhsDwfnsNs20DpHISyRJmtY6jPfs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VcaGgmc0VZSJ8cc6f2jRwlTQvluSDYsfJzwbMzc/q9aKUcTKsf+vAQqWU/Ps5ge1qs6kfGgaml8fqQKbw9spUnNK5KykyAHdAoBiQWew9lKajubOKzXkATjg23T55LyGpksfwK0MTp7ogvKasiMRly3Hwo/46aHqRaEafhyJ56ugOvXep7OnkNFQtcTB5nByzdBnTuVFpR2UZccDboT4opjBjjYzo6FgW5uCEgQyPGq/tEe5UylAZlMFqBMdkQ6JdnDZnes4KiWzleqUcEHmdoxAv4U3AtpgwrqsCD17P/Ft7oupXLpfSVQEb1lDKGqStuqAcIahu8ZlUhy3sPpYp8znNS6oBsb75Xiu1fMTeS1SrYlFjLF55fXFph45MOUnsXRUjT3E5CSi7ajgEWQP3V2p7gDUzjTx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qQ5gy1eI809lWW0kOJLZXcfkOOFawWtrazSZa0aAS+w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m7JkcJLU0FpzjE3xFZe/6xY9PikrKtwEI/8ox5XHKMyTyNAtF9yK5DIDsE7BSn6AjTtv2Vg5uli19aVwNwI0I4zMII+U5K9GSfOnrod6v+rA4aOtcxzDwsXsDiiq5X50LPEpbeh2KwG5oHdF1WfKFpWNLk4jenhoNEDf9AgoCc1UWKy6AiDirONZk34Rzn/Umi2BceUaABzs3B/TZItD2IHUlblt/VdOqK3FPGgoXH75wpX3pdzlNPWC+fG1n33cVcS9PiG2wGNS562ItX7fFzH6hEXZoHUyoNGRI4NRseZvipM9HGSLxWik3ixUpw9VQlmHB2Ta8RdpDwHSsID5rbnlkrxvgF4EV+Ku/lGEt1AR7EMfNBSJDeetdMCDUQ6xtaIVxh7T1cXoNyRGakShHGFPQPsT6Jtz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qQYtOus9K2z+9CVxK48i4SzuGAquvY1FrLcyhYRbveU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oVDnq1RIMgm3ClYITMhr9bbHGFcukykRUwQZQhbjVaopPvQC7JCpMsgpvZiK02B5B2SKZ5Xj//t+pAxNCtDgm4mnDulo+amTwGxdXCvgab3p/j+KvEohY/gOIhBrZ9L4zpsnt1SotdceZ2ikeWWP/W4Armmr/xBzuK+6QfJZytIOkbP8+QhkQHEmXjw9/kBpTI/fJCi4H3X4IeurM+IGGs8tKaAybNiwqSrYB0qRoWuRh8TEQzV9MduxQ9e9yZdfAdnTVHj354Q2AbvAL/Pr9zuoJsL6X0ue/g+uaNbkPuYOz1D9iY8hIpenYTQwy+9smOFWkpBZgZf0J6d5iecoQTitrgn8zJBCWkivjSoLKC0iSugFrN9Y9d0iEMlpvrhyPj4lIBPQ7bFsZpwfJIbXyg2Ub0MU6VtG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qQmI7TJ7gECOUaaNt9y1HPBhFBHbjBObjLQhJ2iZx3g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YNyU7zroa2oG7XmMN9EzGcbjDwM0oPDI30O2R1tJTpDQ494SZ/DjAwyCX+0S6VovQ5i5Lv6jY6WI7Jjbwej9awjKHDbnH6fgvBHrbUFNYlJsT4VUlsKVWuGCpD7qLgCf8d0x4TCK0w39g6o4nsgvTjJXNA09LLGV7frVXgzk1BrxQ9kT1E+3gdkY87jxf64SZuyM/JNn3RyYXtsI5i9yCN8Uj1SzZ773cwaIQXlxvcSm/l/HLEiXPZOJEnZFGvQmxzc7bnOV37SmTGAuzKd4KDfWMn8IjCzfygUA4+fQ5qamdfRf68GPAh9hrdjUP1VJNNT+cN7BQ0jQZPFcA+8Bv6UETuctu40Ymcuj42Ve9VeoY6A6nCr2iLMqVEW77mVkpqtlqfo81IYybNzhMRiyQW0PYYK/iJwn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qR0Uoo4F2BWI50DOKCQuiXSx1COqYuPc0NNCK8C/YB0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nO/TubUyESsA1N3vOcGn64kfutKAhv9+isP8gCEvo86t1L+AXmbTNFyQ/YyLCamMDvbAMggljgdWPG+m4MCEvrROKz5nSr4aIa5ftmPRuNfCZTFg+u8V0ICD7A9iU/yow4GhROryMJwMiMonnd9a097VtAbKczKu4IpBYuc8PC7bT/0Y1HxSUeBwgTIXMci+GuuJyPeK3nyIXpKpZSGbR9smb05QgEs8/XV1JTvYKWFQwCAiH5Tr/tWVSvjdfGkYvHFAvGc3I0B25DIaxChTMvdEnMYfSvWLJhnQYYSzc6CphVp+iuwCu52gp1eQV78su85jVjYcsqtM0pX8AV+nDm7Nrq1JyyMGHWdTfMSRc0vPlX2XCwx0tY0D7d7CxKyCg8oKN+iwi9gdHHYNzxF30z4UpNdYZoqA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qRH9NRumpu5bI+FZIazl8DtCyLpthsHUyuIcKdOoQkI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8iw/tV3qzYfaXJ4CcWlwX0/wcuL6ytjjepq2HeQcD+r3n41PnCW0vXsVvx38YyAnA4ZYRxSX65ddx/P7GQ++1ws52/oFe0u83bn8zxzztB09+tmgUlxELwVeLJmNZwS+i4HHtAnEBAnjtDLBdz2e3D6QUih8nlsGExU9KwPR2PHshx9I6tCpZHjp1FCGj005g04ASeBqPva1z/Fg6rwN1XXroPo+PL1qiE8Fzw72RFFqvy7ymEzq1JOBIPZh0QnmN1OU/rAhxqsFTwcyFFtVtS4tSTNpcd4UgzeftwxcFjGve8unADWXwJIQsG/G5R2Deshy6wy5EnKBbQb6ndFP1Izpfwyx13ZLF+wCbw/+XbbxrGl7xd0nNMgwTeqOy2srApcT+QaqQlOIuDP9pNdaNS973qJlO+rG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qSKLS3Zk5IDDbV6HhR33YlbTZhprsnnxbF30n7Pjt20", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lMcDuJN8OoCS0uO05YEKB1SsAlT3S0j5wvvyT5GKyEmAhLTqVxBO++CuidKmfHDKuTthDbzL7XWEdUkmfW4jJcC8cbK2138t9Faa8ZiK0feA5GCh5JzG72yB8zY3E5kuuEOsQAZpJRUC6ixn+cLdMlo03jdeTnEL+TZm/tn8Ngmwp1J/BXJUgZAw0ka4mYSaOwZmiCAf9jLOS/z5fMluHLB6mJFbVlfjTw9qfniIDQu2MkjnmDBrWOBCRcC2bjjaBRkQX4EHGEWLbSpiNoFvCQnJq1rMpeVT/cU7KKqQXOpeetAZy77sCvs1Uk9q2Fvo371e6HSma8MMQ4ObnVzxEj337q2s8dMjo3Ftin3z8WkxLppu4JoHUb0kTf3RXpURm8XaFU8MDFs3pLU2bc1jJlo+7b59EC1N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qVKxUACvekM6FOfqXLg5XvAhL1i9YzolhoV3QRWnDGw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8XSzc66RaDW4VE1l9r3tp9iXiri5FeI9XbUvSYjhaxea1HXigljWZOBC4lG7APBH/TAhKH+sVUk7tAPDtHMCi+9EzFn0j//+v3S4M9O8CqGT6Ps4ChPoLRy3ENgiugzMm+CTiVJWvjHr8nyhOOy3LYTLrfjNQLef4x0vR6Q4SFNAFYU30eZnEDEwnhGZymO+afTXEFueutPcA4RP6WgNpeGlibon+n0sYdNeDcdKONTp1cktXKa78ktrXvHTz8L5OAYBb1Ay40eZDOosQf7myCDU+Hk/dpOYRQcBHRA3ALQPnpitOEariucpWV5oOznYBNs3iLnb8pxxST2t9cahavTft0oicRNRHRVId8nKpcngwLpNhviaHm0Tx1jJ0oKs9yJlINqhGffq8iupGf/Y5tY7c1gsnJiv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qVShjOBpIyVEPEPA528xP0M15emKuZzJGMnIA3vxCWw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "doc7/pcUobiMm5zC0OGlVTWqP4NfKWJG5eXNBQLwf7QZD+yqI+hE9TWf+ULQt112xbIOI5lRwVLkK/fGyjbIuXNRjkSj4uGRIsv449ESFeHUWo2MO02vRqbD2MqORi/X/AzZmvmy1OzWrHA0H/e58K0y58X7QT/+1ewC6qFB8V9ooMh5dDHLUIWkD14RIlhe+JZ/2kcQ6qOxKVyqlEjkIGr7oz1RBHgHLjk/cnfHZUYR5i8e+DuGyYw6+ghDEDyFWO9HES8nLQpCdQZCgTbwjjw6rSlSbDLTmYQH38xfi2zu8EkH1dhHVVYyHZ5gVzsBYilrygJKOffPI1ykejDFzUrnI+3HbeQjhLpUgCNlNW7hGf9d95C/DV26k78flwPLwNbHdXL43faGxgY4zKIxrcqBM30Oqk6w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qWKi23wZkN3JYPcPLv63gCqLj2xE5hNSLP9BNjlwoDw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zfzDCd5suH53cVnUCOZ0xZK2riNa/wEtiNwYTnrPFcmKPg15EwOIg4MlzwbAlQKpkFAn6UO5uyYwSVtYOP9Mh+jrdWAAbfAbhhC2+kxC08C5NL+p68Qyrg+0qTGIODPPcczdNw2s4pFoVuOBB0SkoDWEZq/LOBCophYHNTIbYfO8AtiboWMzU/mWy3BqL3BVX5+3e9Bf08C0xkynjmtqsC4huiRTrzPG45K+saIbXKSGZq+4ODORaYTtJldeOLWZJB1xpsGAGMLcOn47UGhPyQwGb+66PY8h5Iqyg94raez1ISWuW1To5dGpNv45XcFlszuXlJ4MPT92zMzUpiBYbQNr59ONN0JvitmQcTiz40O1PHBaa9COoN9jquKJ/1ZTy8CEHN/+qtWFOmWhDovM2ZCkQZB8u2ab", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qXOnbxibzduCWj6IlbGPCe1epKbSyAYGXRALdfO6jdw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xM8vyOzppWmKshFCSuQa4101I5mazo087VGKTkNDpziRFSm2JbGrzu/JfZaQykrFb611cxcWSshtaiqcZ0Ze1htQ/dTnCKoDUg4hlpNixnENGdPGGAH0ufGgRt4sNIhWEV3sNrfrfphZZB4DjzE4adImAl9fY2QrugVQ1aAbEfMtpgJapi+QRftYXdW/ntjWK3qKFS4I0B3sMZcrr/f44GhQMw7/8ezUowcA9xrU9HnXAEXZ/9iYTN2TL4cAuTxkAn+eW6HZSlMdS+4DxVDjyAMQjzxMUI++mOS8lFluN9W6SC2S2yVkcLlBWxCdB2/DMDV+1t63F5yFYH5rNXVLeQRDiUhZTvSEtncijO54Z1SpbG1nFAVLdhJcDGk16g0/IQlPkmcK1Ss5ejBajHrtYJBjz3teHoUG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qZOVQURJUcS51NAtrYe/gXzR+gIUlBxUp3o3nb+twPE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "597FFV+7WFwp0LzA86zNcR1ZBjCQ5Kkbh0x7Fbn5dgvChCIPmWkDdy9KoTkFLv/voDBYHfKSeQ2FH/nJrk6OXgow2QUSDzcyrKYf0IlLfcbuEuDp1BSpuL7UDQFPuhZigO3iZf7J9khdDhva4b+ZPK+oQNVt25SNTIvbAXsCrFrT9YoZcPHibUt0WajFYbXl6Y8fpMV+5/sEFbblPj0H8Y90ju6inbDqmnvgEGIxKfEx4PV8VX2EHvPXakJLcm2aCf9pf5I2Aa4vLBBkxX0IbxHo++kjzm/uNZ2KQvyREy1AOLxMIfuV7Jj/zJP3Sf7/T06Wr2MBtDtD4VtzcV49WpZL7aze6mZAkqS2NUZFrbr8DxU3HlqM7xhbFqxhc4hH9UXHDwqXBlKsLqyG4BRSkxRPpX0WuXAn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qaGi8zgRziSfmv4iDsVmqPh5IKgXalmqLUaww+gN7iA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QkV0kgRr2LDHWe0tarw3dn9XB5aixftOGpGTp66fTsQxOhIX1QMBY+qC5hCNIpM8GccrdSPuSjMhv4GydbqsEYpNMRSasQWoXlOiofn4+GlyYmc9Fc05pGzQNvO3Dt5cCBZnlPibohWBQu4biWxX5aktC982JGpTe4HjoUCihzaIQvRBYp4c/j6TCeo13UOu1KC9tb6p2bUDodEYViC1qyqxqXIsp5eP7hpMf5BWbFZwgwUWiUvHn/bnFMvaifOn53wZxusyMWL7gwBqLe1/XK8UVTSNCGB46izaRLHHUR5vcsghQn6ueOWQzxvw2BFRqZw6sOwktf/EE3BawgUxYgO2dDy3Z/T6cw6hQzEYvvJ0NT2TNNVcsoGxCOCCQZ4z9t0awrtXci6VqHTgFob+Dm7oZem4CoYT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qaV0V3ZUG6QrcxJ/XYmJfpqIRjbQnh/aYPxgO5bY9FI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0VHKtz0cL2YkAnIxdxnivkBfdRGTM3HKIu/A7ZNgC1t2Ql4pZb/TxJf6RsTfa0Nv8YB22llxkP9PD3xcIC+41lGy3pRum8jSPdrGBOH3LOQbl9QQgOwNRCnsvjjFJqSG8enhyzKcU3kqefabUVcw6vDX3CZXMfDeyEGoJEhJX1mGvIKequW8Ctwdy3BZCmiRJJkLTG8M6KUID6edl+fm9VO53INxreDBWTn/T0CavrGZivHB1xzcoJj6K6WLbseoPv+xYgJE45ni0WFGyzrAuHjlFYBXymBZ8I0HDEd8kt9A1vjHZGzcW+1XSzenlqfsquCR16WBfX6htRWgn1R4jPjG99B2gNMMKbx5jI7hreP1lfWJvtgDieBLZSIomgiUodldUaS+uq+/qukVcyqDwepphwZdSyCw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qd5dmjNbyilCF+oWcNZdo0gSfNUKsBLOrZ540jNBJ6k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hB41ThWheYRd+WoOy3gKZexmOxd2WPGp+paq43fKzHE8rf4RFn8/IbpapiDMYLkAvoeh7ZKlBEvkseOvrpvBZ+wuLoU1XPw1VqVStIv2Jc3k4Drlic8sOyXpv5uDhieF48N6xcNUu2jk708SfjfNRdZqTUy+x/bjeIc4p67YS2JAfAOYwPfYGVVSqD5xCLdxp+nr/kLQJU6R5EipVf/PSIPpqUq+abfpiWFKjWd+Qm5jEScBYxNvU1s+OCxgWaMPiGmXTNCUQap9BcpMLN3ddN6BBTTIOOe65bipbZzpuMlcQtXPg2tgUMFcE9BeWCO/f5CiRObg9Y850VPm6MezggwAFNuNm1lkpT02j/w1kwWmehnb9A0dISbFq0daxHEIclrYsXnmxN13xVn+i5TKWWBwX6yf75B6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qdc1lu4GGWcnBQOODwmAiTsWJKpbFVZHPnMoqlNjlsI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FzwoXj/WMltgKWZNN1EGQ9aVtjGLeHOUzuFn6eZ13R7d+eBY6d7kYtcmNlfBLCm3o0PyrDEwTHtyqyChGDmFMYnC1Jug/n5YGW3l2sKwaCYVgbyvz5Z6pjVagDDkiOUnrm+xia6kss3qNBe1HLIkvsDHEEJ+WXZ51mJc2ArY5gP6Fsvvzu6g0uF70QUxnFr2d2/5qgKSxBy/RxhmbhBMIDO2NSw6VO8p4hEG2b3pbgsuNSpA53FAIZxTSmP8Fj8GPa4+FdnNniwuDGjNzvi5C5QGJMeoxB2hC2zCKlLtUQ7i2UCOqILR21dfyMcrLFQ59AkreePU7Ck2gj6J5T6oTu4XG9veGXyxHuDI4qxgp3nr/1xtNlluuK0/Th6w2WOqMV5WCZqcE1NBQjIxyzcf9kq4gEtoSFWn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qdp86e0FGmZ/0boubI/5Vrihgn/niZR8ZcP8nC1ymto", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "h2CGDZHOw052QMmS9jrZbD4fhzG6huOX8CBHGGC0LXQ30+1O5QuHTdeFoRJ5XP7SpuRVxVT1gkKB1CcKfYROIXnOvHaaHMm+lNIR4BdQmr/nPJ2qNeyBrcsVNz4gZ4AFvCgqqW7cnht0oL0WKcnWTFXfkF+fNVO4qAQby2Ga28iNUqHkGKkCQlNiAlPpAZ8JR2Y8qmIDG4DrwePec7quvGwDp6z3FB57XeQDOMaJ+va+c3+DTESZnhhKCPFKlLWmA5KPrkcJuHZq5f9IECQod9xsU8NE7tR2RR/BIR0y7AN9jzQd0/AX7LPfG5spIxev4ABquF/cCM0+wjAj6+xCm9xx911nmcSUthfFEonHV1bMsqPXcfN8x+yxehwIcIYNdXMsWDdIxFPLe24L/rfJGDub/LXNj5l7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qe3mo4Iu3psoCfL6qjztoCa0wmf98eNMWVlkxdglkug", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TKyaWhZCBPRWjbmgcJkP0kog+jKLSxEgkCZQ3hiPdOiSogr4D8yzpD9EkVXtF1LSWY0aj6GTvl71SH7T9kwozWqLoJU5iqKsho/IryHvWCPT1ocnAOkU3HC+F5vZNUBl+Dm4Gbe1aE/mwN+V01MElgk+QMqVG/FvGigU+HILg4T2o0e5O96OVkLloJ370dLnYHKyOa1NtBSXvnpy10smMEFW3/hCWCVEF56l5XufuSdIBQKrzMr4fPFWMme3XMko7FAITlywpMPE73c8LDsHIE8NncymgFKnOg5Vr14/KrbRo6e3jFdZPGyv/grJOrxwXZskjz1SUB1u4iPHLTG1hqexzkkFUvS8MsHaYO9qHUGA++z7k8Xlmi1bXsoZwDz0xWj0dyxGV72bvSPpZvp2uLDw3PwLHfRM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qe8XMEJgpNRyxVjhhLdf4jotlBTt6Wk2O3EV8LOFyFM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nPEs5dMtCgN3jSm2xDPucoZPP73JspCoGg3K/WUV63dA6X1Gvp5eu2vNwutH4+ODtkoM42Ihjed3b41+g9rVZ2BUG+U6PXIiwHfKGLPppguYwKs+Di2HZZpGosOBKRpl42thrAFuveSL/OLpW2ar1k0HSigWd2X5ymLiOkNOnt6zc8AH/DwmTWY11YM1oXy3sv66HNHHaNnUcbVHt1HzCLZXgjOcWmq1HQY59ouTYGJVbZwVED2xRFld0JcrCWJ6fWdVA8hNPmqQsADr8UUaPubIIv+5IcIwQPR8eV6eOdbaEprnJcZoN+8pweP+mAam98QtlpVkCSShLgiQPCo8yaZSdCXbsOng+Nu1G8MepKM8r/mzuvyVSApHfC3VG8lXQ/TjuHS6XUBHnh5JqTEnfcWHf3kIUzE8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qjaCQny5G9jGvcKHBRZrsmqDsu+TLdsZiFAtJ+Kwiiw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wgi36z7vhlwUXpxcYci00Qlh3GPwimkRRZh1PHWKmyyDB1mmOZLFBMZeBi4ZS17cDGwWgw21RkQRqpjQdACznwO+qYkTuUl7VXfR0nV8lFzf9VwiAdS/sSskvcjbNeOCosX5kgR0aXaTTq7Clt0E1sxH3IEaCBPpZXOPh9K30BoT9o/MXFelVWrOL/key8gJXCLkuzIr8LtyO+TmcLUluI7v+zuS+SjKupllPuPp1JigmMmspOJ4NPTl0lPPg1elLpJa5DXSbkDA17smFPBbwmb6yQKDHenZXJBlF0/dhivpUkLNm/RbDah7aWCh/zM//TyHyd794j0Ih2E60T7w9zxgmMgPC/JrEWIqS1X44N0JIty6mBAparA9GFiCVO3wSc2i/HtI55RogFiPnGGj9GsK7r0rf6FW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qkZWj2moc4WsQulBSgzEIKslhtYlmRUJdiaIWIuPaE8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7i6LMzwBKqo8T+FuCjnNMywKcw+ODJfgDp9RlwJ5LA2Zht12uLq8vMuPVvsmmOToanYCPThwWF7LkA0s2bAbc3f7yIz+I0qMpOqc9i0y1dIVYkOLyUuBnnsA97BPB7RXyJuqETer/i+r67zajMIZA4wB72rRcfkdxc9u5ehXNrSurqsTakdv9OlmtcORdPk/fuEAVB5T1pZyYGNkjVf/XqNmRGjIVALkavEObYc9TtSbVmPueUHdG53rHDRzUkFew5mQhE4McVb7i6sQ6drSUPVRdPTjM/v1T4XENGei7uHg/jburlnC6rxy76YHf2eUInALah2s6Uo9MV+Gg2/tZ/ZGFEZ5bnoYFa52i45y/z812WcfWx3ejBDMtvZL9ykSwdCa9f9K/Ef4lHjhFIGq/jr4imTW72qV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ql8cMTj5yWtuVbi9DuIdEZR6ZJ1r3ttriY/pG4Th3bw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XfOeh1wJWYzNJJQJYzkmHwjb/fOa1Z2lpb53nWiIcElk2yUGRlDjhnzhtv+Op+J6GNlIOghA7FDi6reMMk2P9lOGeAaDYKHHwodHJmbtKKGFz+XUIhMhH5OHHcV6IAK8ulQzHhMLSnoGmiuaOwpI2mNyUx3iNm6Pm/Q6zJ7BSclIeiIeZfJ65+8wlTQDmyuHDeHMzZgeUycHcKAawqz9zLo2120Tnkh/Uop3xt1xoRnFtykPPiRwctZyDEDNYiexYrkFEcipkMeCIcKgu24kCR8BfWP38db/ZxekCs0h5jNLB4/Ua2hvVpBMrtMoRn7FtYfX29SexsxmXjh9XLHpdCGwRQ4rRYFMcq+Hf6Ohcti8d5MePfTHULbUKTopeyO9RYkkmPmBJgZqSIlpQusQZdVcteyHv1k0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qlsgczvn8WtJOoSvHgqOEyso4SQFq8LJxYPgjdhZdPM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FcaHgeb8Eh0RCkhLO56KzeAATHKBb5vuGw0JyTop2OivAXGGl6CSmXUaKsqM7+xwPFlGS/NhreM/i80emijI6lqGdGkKhOateG64RGlTzqtumrJmsZj/ZhLexRDHG81zmWnpBNMl8DLQ5RCb3H8g5OPNiN8y+RAIOQcCo0t3lWFaqZSSXMBMhA9rIOJzwzIiJp3O/RDMR+7PGh9NgdyGG5g+ts5IN413fRRju7l1pMHd+C5Vg0j1wCcnolBYtzpS6QNeqkYlDeA77wkLl9DOzhp3JcuqDk6QojE+qQZCFC3eHwP2x1MlVXIwSEGLUsEt/HDd2w3d0Gw9A5NwFKACKQl4vOyGB1/xNSjaPbhIh7egP55CD91bkfIpcayaLCWvFGJxTVyR+L/ZwdcJLLjSFPB+awh56JXs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qm9DsukQL4l+Bu7yz6MfvWlL8v0m/O6qL3ahOORLm/U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KeA6dLGrE5k7txici5/S+ThfyQ4YMdcBGWH/yuNSRh9BTgJ5/Hrpyeif0JBRIGD5Tg7RBur6xsUqHoDmg5e51ODnRc1MaLn+uKhYk/+nAvB8HG8tVisO98cqp73iFd5vSKhPz6gjlAPw2XjxV5LG00rFexapQsxdn613ti2XFdl7B1n1KxrzrTm1ymZa3YmJ+eN/BuQSZ/6x7khMTieIXpCvKBHGcjRIKejizoYm3THTy+QfN0zjYQAqrChPE5ZRXztUOFdXAssGqPzZq73zLYNwShCYfEoLJrzlZL7xrbsR8nXM8435YqbYuF17WIKnej8O1wtcpo0jmMNiERN4XIRxj1qlxrtmAIAScf9dnkbMc2Am7cYzJvU2toOa3ISPDXI/aax8sP3uqqLojW1inFb7+LLGoSyo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qmP7DLq39xkaRiguB0g9th0fH/SxIGA48X3wWC4yp9w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5STBsM7tTfW3fxj9cRFx4SD1EUj8qy6T1/mn/MX9riOOXq+OIRQkmjW+3cp3Yt7XcOss5hJ4kPe36gPxBrcuEaA84pdQZTnw0sh9hHcyJcgBgNd2NftggyAuqJ9kfe9yuJ6fDoptCgObOrA5Em8bfPHhBl08zLyQ40ui3bLYDPYMDos7sy1zI6VQbUzniKTpjH5Xfw4y6DvSfgZmV8LleQta7fawXUR1w90p9FKi49gSRXo20IkT2GQwIMdLuqKzGF64Mpo/+H0m2QKNC+CSEmvbYFqdnAgwtF1bBtMMPJW2vAw6fx+uDPbsx30RavrUxx0jvvx6c4nfBwVS61nUTj9pjVEIfD5vCvuNEq35FkKMjOEmcIMeXl7/yqzOUvoCoV0zc+Mi0W85jZhCLtxA8wbyTyCdPP3i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qo57QRCqLRLNYoMYG+QgdLBq79YJzfalaaXSglYhGWU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ipoos4o5R2tkRNSUzRahEN0cbT7vRcj+zCpnSCQj8dFE9DxCZrElW2fujGnwIsya+T3pjsI9QVWx2VUQ40KLcOJ1LW8emtuvGpml5hBTSl808LsqPk2HK5PkQmOia8tN+Dx8SdKFlrB22nAIU6OFDADGJfdeN6pdoF0/ux9/AbzV/XV2MzFg8T4Fi0YPbaHBVAiXWVg8t3fyp17mOs11QbINPjS7MFbhAgAGodafVejtdVaFJNFb8kKBUNQ1OWisqBWxWO4XVXu+AQBYUYIKu055d7J9tMzUJkAtA5ivcj/q3/EPmvT4BKkS080MzAkSSHe48rhOyxOmGh+eGhABel/Co/VYrAX4RVax2J7Fb3vf7q9dqaBetVgsJrDAayzgtMXNNN9c6C9hQo63d0cc1kzDIjjCYUkO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qonCzPzSBfHJDVMcqa6TwK8UGLgbkdDPvX7Bos4skmA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QQhZhBbEauzqAuc/4IzbX8PGEgi+tQwazs8Mo+frVLg9chbqSVfbPH7LMWczZ91Fvp7ZDWCDZlmakzEa4ttvikwhTWFAAfq78hRglKJV93CUg8T+oLuuV/CN8hNat65MFeCUcAC/HEoWHzL1qY0ajx+142Q4vpL2QsH59r0gumolgp2lRG7gxW8cYWcy65bmlV6g6ydwbUUZ1UvtsMwLWUr9GyOCnK3AxrVz7in76wjSKVCOxzkUaMoJaCshFDGYymTje5MYTpPDrsYGNgApj6a1DKUJGBkV2coi+YOEiFUBS8j/Hw3wpdX7H3Qyjyffx0IfgxO7Eyb93ukzUbOWaDKDuxjAvSnDRhaIpPYqwsQzRq3RNfcWX3Hq2yWTJa4itDykhUelB/izBYTQXT9SZc2Jg8W3ZHMA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qq86hZSkcTA7SzU3sgYRM9bQ5DP15RLCfsiNQXgUJgc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "utqoPSTCpiTTl6A5b/XE1upj7PS2N1ARNOQxDiUnWE+d70Fm5l9f80j3l5km8nh9QDz4oEb9h2f5sH6kUXRsQTJjGYcdql9nzvAYVpgGC6BI39tIPzX4KpbseS6OTUnN7uGifVy6J5vcCkmSN6edoLiN60TCXMFrjPPqfyYD+icd4UedQgtbcstlwQN0v2MmcKC9hI7FJz7wHljfi37D76zMnrIRshbWXaolVGviqt8VtGoZq7XChQF4GK6BchXgjI7PCVMUix42nYE2Y0P+8YR6BedMpvR8c2ejM6mi7QtoPz24eBknSYXMfJQYsllrfT2BzY6MEwk+ati4+X3PYVLYJibg0k+ngEs5sRb1dIFdsKW9cb3VJgDKCCSdBbEB7Q+TjjqBeQcHTqdx44IY6iIdwAIri3Ve", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qrk79hc/j8MOdq0BZ03+ZMghPgmU6hFh3WqhlcykHwA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SFsrP8zMXXT8ZlfM07xxS5PcUPltCm/NqjSBDg2HjZqRFRcXfopc/7YHx8XHw992KhH8c7emQO7DIU2AT7WaRt/o9RiusIJJMR20yawlUzgpMzbxzgoG5w/RduDRnKhDnwZNsaoyA5npQ+WgysKjkePGc/7DnrI/OYGUeVDByZbaeFVGprnr1x/lYBIHV83lqh3jAw1j6Osv2dMFMXI2MC1WS0GU2mI0kPbi71+4DQpx3gKz34fZlyp0lvwzNoCWbkZBQdynPqxytRns890ELiP0hsIi5BoDk34oRd4zbggszUEGGfOvMfauIr41xabhquTq31H72VWCp390NE10gHU98090ZVOdANadRjBlQaS/4OaGFZ9mYTXBAxVXCRqXvXeAW3NwUcxfBRtv0iviq29jZ3FDu17y", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qsBorz84Ga+2RH1DhM5ZUqoZFREcCszfVZxdMrMLpmw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zZ5SPwS0sPM+fwFlrLY8yUigbqG5v+uehcYD/IHSxbSw+uj8MpFdFpO1E1NCdxuyFcorR+Cx7rxRc1MSKCYkXgLuQF6gzRxtgkeA4ewOOgkn3NIBiauQw7AeR1C/D/tyJg23CIIz2cpKSHY8SUuYsRn9/6PtlvYhmwSyt7rOhHz4zBgDjfgGYafJAXfufVNhKJpmiQ5o6nAPzK8eFufqwma7LUsffFToMA2gmh775LWTpPCUgV6tuXLkzE7a0rbvI5g3cUkaI3TS3/9vveEMHVMR6GQwC6Ef+LHACcL4wJngIxegY8lElTPSSOYIclNrltUnswfbE++hKyLIK+jaPXiGaB7VJ7vWrMzb1FqQ2jSncX/dCfyXxKJxITJIqTMvQHEpUPjLhtsp9iGy0If3xi+zyi3eS0CU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qtxzq/sgd5DpvYzgqit2gGBOEpTA7BpWQC13GwtysiE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1NbWfOo7yaEy5l16oIcX0jUB5SXZImxHCx4/xTL77erFffQRF6eADojr4E2sbuuvkpqL7IMKla9OFAZqTPGU6pJJP8yugE17X77JrlFeIpD9pGY/6WMjzV8M8mlKTPCaC7CKOp8Hx8ohFZgCo9brMyf1ExrlQmPxwovWr692FUGFPg77uPwnq7GEgGgmOuGpzLZM4GgCfsL3Jsqh16oqZ5WPa9PFJ7pM/QxWG3m+TwMZnrfpQ5FDpA//+VdifkLXaBJ4TbWrSIo+WXgpVSURptFeoHO5rveb6b/nDuOFSI6F/s8/AxOeRBLP9uWX94qIZ3FGsZIsHBZpB/PpuRb6eAFupAscDDgTtXDoompLYH8aXMUyOeQXGinkQcPd2NgK9i9XcDDKAmNmErryQ+BIMru1KSGVqr1u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qu6ivOQX/3p2AqLk5BqPkS5NG6kzB9eG3ZMiYPiS1g0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gWB4hThRj1QqxQ1BIX+dnb3MxF8znRPDZtAbl4fXH2IIAXUnKW+EHfmLdYAZ4Ccup6iqDFE/VaWEMQvlV6geXvZIWh1xv10iqnv2KiIBWXzQTdSxe62zH4mEWzdJiIqOf4dZ9q+3JdZi9bwQNmD1EI0UTcd5IF/gdtWL0o7bQJSKBOWuLgQOyZnTF7Ehk3rHN1tWYkWoaVNcC6webv1izVtYodVb11YpTYeXxkS2viC8ziWEieGhs5LTO7s19fFoQ/lpI36vVuGIvzB/F1Lchd+XKkYeuhkdGjCz9A/FawZVOBXqY/Hb9E1yd7oP3KaxK7hPwkiyqqo8x5aaJJhvcPZUmphJodKCj9prjodn497czEgCCS62GfvN7Cl6OpvUW05zyvr6/Aa7lCjhy3UVFnFJUnMKycwX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "quLqXuwcI1YMwaQoJFr/TpPl5MGq6UC4ODxe8xNJplA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VSuzQMac7eC9ePeZmjuaRZCiASXDjzbw2OHZ+0pnm8MN15SAu/otd1O40JEaRYWlXe4jtqgXEQ1GBF0itU25qIeMoKx1yQMgreaUDHcCntOWeEtVFOsQyYRAkuxIq4nS5jJZFfBqytyNHBaaS8zCmuyWspSS5SmDVgrMBf3XxPrb9LAwa1gkXmJM9/wWvL56ECAQvbQuPeFDrkJlYZyYp+W4zNeCxbYwkmfvQJ4AscOUi1Tr+oYMLWgOJkKpiPEhipYZlqXj2AaYwYs6RFyNTbwH3hf3LnSd7F+52VSdVAFsJazlmhTLpGkg3aGtBmDvzJ3Gx7tqlIULHtv0m2NBAb39EcIJJhCcZ6kfXDrJBSCcD4GJSERulLmbtuzpovyxd86K5q6OXaBWkavJTTJo9t7yOI7sKTPp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "quqqb1/urowAPGUQgSfw9Avr2EKDNfcBRPiPpOg2tew", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zrmigWUTL9IDXYtx6SLHCWqEKcLqKyrmXtNkdkpoTnCvlDka3HD9HEGX03pQY01B2UpXUNRua1daTC02OVz5pclrhd4P65QYaqg5GRrKwZXmK8c8t8TT4qaFlIuy5JvnQdMUlbQ+iJJcG3CLccAVsO7dKlKLJYtAw0ubO6thX8khSe9HK/NLufigAiO4JJv5NeK4mF50AxsghkZ5XMaNpilE6sifo73J1bJo3hSCD+elY8Wi+oRVINZt9vxYig8KQzqu02GNVJGYJ4I2mAkXdvQkzYZ23WaoywOLUGHX4oNLsPebsIIEQpe4V0G3e/YITvJQmFYOkDj21xKrafnS5ZY3TAipnfg5abmgyvlTb3OPEBiXWl1A079ahcazM41UN6X8+LIFKxcO0UKMirZseq8XXjMEaRbi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qvaulqI1Wvy7qao1HgiQdkEFo9t0KP5S7POnxybtxO4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zRIdIUtgbN7L7z9rbg6Mvl3D4n8cQOUrWw5j/MEUIJ2BYYZqYUXCuHA+M9oWDG5TnjDZUO0QDcnid3mNtAi60748GqwytaIgKun+N5TnljrW6PWydNZv8PrTlh/1lBuggS9MMJCH9hO6+Nyw99HZdJYT4Cf/pN6kGmbTD9W52jP+CcWGkWvNg/RD+EOOke6OlVRGdLNBQ2H7deqlHIdXA8waU+v2D9GcXVTSX2rQ7ZZL2PSJZLIlEtEXHUHgk96yvRuvr8UnrWZHxpaACDqR94nUUwRKDsIDQCJMkpRM6BTiK7NJ6zJ4hdz/E0qIh/h21z7SJieOa2cRxU3YHqhI+bHaYGn7/MwNSd2ysSmjlegEA9/xJ+I2JGv5IIdpAZ8BfKkPUxryLWU1Qpkv1iipLkO9FQ9goN1a", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qxi3hL4ZCGafeWjaX4YKxRfQKknZiSzbcDbbu3d3ngU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qa7SprV5g6m9lxPwnNweR9s8iQAIHhDDGDCssKIeWMFwqn6rQHMRVP5byoXgSrwn4TKdU0qMHHJ9F2SPa/XDdoDtOBGKJTxbITLs9sLdhaCAw9/znFWCvrEqPme1naeOmmvmUduKXZ82PSh6sKI91YLD4lJWFocTmcWXmGxIhtCLt7VTtTOo3Sc8p68/YKjBkM0UGtJgOOSNgjql/SPRFO/7YGbXqaTW7dyDxOah0PYrKzqLCAnBUCge/CNF+v+mSFKg/F8zS2GWGIsofLJDNKZelN1vpcQBqTqXstb7ZtWfiNJozZLlLQSaP5qfHmG7k3qQXjYJNqnNb25EMJBQyfZVVwFwVmgk0yh4RQuvwgMskJv98t/MtfPGltNBsxmgakPKPQS3M/gfaldKlnYrtj+ztwFVKsCo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qyd8atXSI7oBQk9H9AKMXLh4M0nZeabg2rkj+8nJVVw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7YLjvhb2TSMcYHA5D+DBTopkpCrzOPXwC/S8vqzgvdGT49loXS9dPPUoXLYhJ9cW2zZmk493UPgQ4HAHyrGaMK7uRRRyjnTsT4xwsPyN9cIs7131wT8NoEyZ+hb7hVOkB06hw8vDZA4giBDrc/GMrroMsVAN1Y+Oegyf3zxgVPAFWDSOZbr8iHMh3ZAGXRJ6qeUfNAvrljwM8VD/9mr9zh9TLhFcPWl6tOK/rJx+Yf/uTkc2Uljp6dkgug+YUZflJthQQhkFBD+uVo0taJSCrs3yZoIx8DOZzGAgkl8OKhFQezYcb4RlJwCFMQLlyDt0sCAoGMqo80c4f7Tdq+axmOZiTlccYEpZyadmmzdkBKt2+emLRBKMibaqctqKEqK7RQXjT1w7Zz+zmTk5O4D/EHztkwNZ7QVx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "qyylbANirw3qqogj0cNzE9PLxnC2UQ4NqrCVidOKJQo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EWxSoFxDcu279qNevqlZ5rRInEjTxel21KnExZH+R7mOBK8wmciQVG03FwM1LL/TsEhNVko1AcQBB1JIeR8VUI3xUlE8fjHapDO9W9WGEqob3YTUcbRQBReHUaXs9MFvmiDXiTclRRtmdO5/zg3nCG3fpRJpkddJ1kn9azLezADb8nS9MIlfo26v7gKO7HMChRPqyjsX0AHh5j4eb8q2ci2gTIDpx/4jDeOYltFc9r3pm8J7uvk0oqkGiWd1otKtxSfXKrKTBfU1NMuAa7bZFweJYae1utgUVLlecYx+gNyYxtQyH3fQg7ZjdVyzgKa6ZjFXOVc12wNF/u56asF3RY7SXjKqqs0psmkmunwpM5N1JMBGQK9KGpR3DXki7mYPTZEXnW5A1hWQa1V4tlXwdj15lzc3DSo0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r+TSSERLs2TkSK77WLoe++QRreYc3EkQa8xxCcJUkV8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jXETBX4SIt4P/Q9z8sQ3PmaeaIrnsoK+0lum+9qDmdg8yfJYl43RIwJiF2hvqqChlSusHozkbLlrfbkkbpVug9BS3yqTl5JXKcBSF1tziYbCIXy9ZlEGIzwak0qTiK1kNXIi1yjZ7njEOfPV338laQTtdJ4/SmaVihGfzYgjqq/bxudd/COlVlEuUnT3EhuNmv6u0YvPQoltpDBhnY6Ta9Bxs6fS7ABop5azYGygURmbsLb3DcRnRaEHVjL42QWeKyvYUK9HfbLyJwz3k0pvVZKV1GOZ7snJGI5mVhu/kJJfH4f/NGP044OJs8inNpZuZFu+gwHNoct0Gm7Dsk2dgrcKGPkbKDAoUPbn9zIpXnUDCl0yd1e0Yi6tlsp74Ctuz5cwrqv0eE7hB1sNuagEp3+FjrXBf+I4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r/90fbkY9Yv52uDewGzF/Ujtzxwp3VLFM2o7FzElYKs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V1ge3+3xdesylUL9FkZyw5nj5mcpV7/h1KsxT+FptIm3HjooetMGUpt70NhzgqiCFQWXLkpS4oKrlAtZGytKYWsV3TSouTnhS0t6nwgq66zGO81rx8hh9COAtVyxbeM6dQaZiyxuhh2tRx10obS2WmAutS5LFoOtuLgzYXiqPQN8xb7fDrfSW/t59VzjEParliz1bi4475B3BRqsaFh9jOPGKueujz5Sk3KZNLsMsrOtXlScFI1U9l3ms7UpsrbOSgGZSVZ2+Hb570p+Ate72L4oeFy5H/Jm/QdNZWJerbxDGT9sDzI85pfEeVSyl3qHtZX316mt7dMWNCvxAgaQQR5k4K6L9FI2bi5viDjJYLnbizKYlXBS1f9hvvpG/jQeSXaGj2I+xfUnRbuouTddbI2S2ScUuxek", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r/yxBfF8qSFvojc2806587+XBpb9P4lpkvwYSojPmoQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CF3Jrpo3j8kS/KfVr98ZPz7R0Qi0TmkXUncrSIw2PQBAFaMrAA97IsMK2o0V+HS533TA6fM52OVSBr1Gl71HOtnBk4MdLO7fy60vmtSkbZIyGh2CBPiIY6rsAjwWG+/WVHL1sx3q6xCyg/YsyN3FoWS06oTi2wNQ9Bu2AQ8Nq8lS644A0RSS6nNBlDdzpT5i0Iq2ofnmpgnK5hEJS5zgFRkPFMCTjW7y8k96vk1fuDvLVX/VT4nnzk9IdturlasnbbyNH/wvZbphUgTTuzppJ6oXtvZPeWhdpyBXGEwHxDQS5O2yRkGgTVa+j9j+xHwNAFoSr527qFgXMdA8BigyW04tQhAhsA0WLmbDHYKpyaGJos5bePS+L5/bv8a75x6RURVb91s3bCzeJN+T8HgQoanhsIT9WXaP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r3/T6otNsEdPB5MrxQ2p/u73NjPqU16dllyCtBBSXNY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MwGEzviYmSqpGj4EhotATLH0ioAibjf0fUDj+mRZtcPIAPNemS87Vcye01a++CefbNlF+704BucIOW2bkUUogonEdUGyGtUdL+LK6zBwTDSFnvvr6rfEs+GSKYIAoGUJuSbNX1uXjMV39wPdwOjZdHEx3pRQbgxG/2IPkrzi6KM4QB9zqYvSGyrlfU3iYNme5dseqWoDNZPDFNC+EieVgIKSr6/9EBj2+Kdxm7GwawsqAQPuG9wNBJeM6Zx5FAupIczTz0UGvSsLjJSfJOlh1VWbI/oDNa+VUHA5shuk7fGurobEAnqCGWlCBUchLCksG9J6RaDYCVLFVjB6500gGSfr7/jtNynL3KhGCwo9ZJDX+AO0pBV4Uy067qK4e1oTzrBh5sh2XmRbbOZ/4JT+WPM3Ln0/W0hT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r3gFRNtiZ4nHx2CUBaBA+x9Vmb5EJZLzYWPMYTaX4s8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ytb4nrWX65zmaVnsBsp0iYw7ttUfX3bnAIzlf+Q6CGUr8NnFtbdi1OfGj9Cq06RUoOtQ/j3egth9tsQMwppOc7wfQwW4gUVQUq3hcFMyVCRY7XBf2UYuWNgPq/ZhDMEowl7MbknksUCKWRh+ppEDwIQeYMb2DE0FfHx1n2ByH8lrKdJ5rjTXWInIcd4n9KdZlJ7CFmjIYm5Ka/kWPvcwvTjO7Ql4JJPkqmlAvsG8ZkU+oQzCaHiGlOxHIcWe6TeL/0JMQU533rQwJR6z2Ac8phIhbBmMaxWDajUA71PXYMn3sqUiUHXGfnrP0H3u081GxeBLWIsvXIcg2fRdPSG3BgVUgJfIhaY1Ry0v6jphHw3JutIq25gLMfdXEp635oT4NnyiLInZY006eszyMPjCnG8RQsv/jz3o", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r4IiJwbAdO2uEJ/VNJy2RBaKNLVJucRQFuWDe33afQk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tv8Vze2DUIbBwHfoVMYnEmlX1W+jDZUAtW2QixsHbddyf6FXQgrW5r50jAtcA/CR/msaVVCVEVxrcIDt0ydmOeoK67sgf/OAEB3hS4VubJDqeAZg/BWI7gzaFhpjC13GnONcSAH1Ln3JmESYr0z4oyzVr6fRI2p/4bXddbhhlJsMLCty9mosmR/6Px2uQoHK1STgCtnEQZT8qy48TrMqZIoBJoBevsMkCMreycl7+UXuIC4V44QQtwETRrqoI9O4mLN0ksE/uhjr1TBYW0jd7Zk4FtWDWccrnv513TtO++3uLeHTAfMbygs+s68hWIvKegS3LrzWS1Y/IWgE5NmqWhcISyuH5jgWGww/68Pb+GZ9yHrJX+uFyH+VRi2aTGc142oblKo/vRqJ0mYvszCuTH0Gz34rq0rV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r5VgZL+WeJLpdCosy87Oe29XJhe86E8FQf0KduTyTqQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "K44tnP1JRAq1Oj8mhaXKKCe7DFpe8TGHMmI7jLEM2dTjt0qWEsC3mbIVXj37VW8LDThz8Y9Hkd+XKBkaH1Eg+zfOqGOG3LEkMeqXn9kbVLB0lSHcxEBofaR+TYN84/c8J7gwboJFOqkdUlPP5tyoeEh0rwBuyj7FdqB2Rf2YKUqBSctiE2XgrvGoxgJkRGfRNsqSDwAKnnGBlBStUmLoRteH40jaHTvqaooTcWDE01LoMEf8pJhrgWR+RGVben7bYZWKYm5w5kvg3OYR/NrHIoAFmOexIoGOmqen3FpfFRJOVUg7zwaA2mwBfmpZJjI+an5vztv4tFUfPriqMsUsmcZpgPFlRHbwJ504JwS2yl6YHR7tYiInIhH1KDGQx0+UvzWa3ElB1GyY/SOuIb4xW8rHY2k3wuvi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r6P0kkMIFvCB9YXO0R7qIruTQMCMmltaLeBRD0SqAbk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w0z6jJxCGK80ZZpgHzz4tXH7x2z/5pHv/+GUHVx7EArSUaTwaEqb45NPjsKTnY+IhYmx4GU/GrZIEUiVxamJRRP6/kNss2AnQ5OmFe6JcEngSFm596CJsTZli1eyXnmpnkNgrncpeiwWU7xwt5L4kkrbbEUEEln6Q13A/DBAtTuXtxTJwBB6C1YSkwi7rG+jVMUGfauFyv7YcPRLoToYJjYYRAump/i33vqT+K/N16x0umiSm1KVihrtmQ9o/1tM4AETRzlO8Kpfr2c7us/aOFGlTe65ycTxalsyz0P+eOKqxzFgqQsPOgYRNtoMH7rcDxUQr7muz58yRPfi93AP26oJXrW58bI38/gxlCfIm+zPwU2fy5pvUDVIbtwym25yS9gZ9x/dzz60zUbM2i+Fs2DqfReM7xxp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r7i56z9yzmZ5oFVoVOKuSW0CvAhDVzM0FEH9yBn+X/8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MuDN5I9Suy2irQ+0wn6oiXiW5T5xLj7ZQAOSFdTUZNVnwulmgDG3m82hZzsPI90FyEVEdLEveSrK9Obn8G9//3l1aEPXhqpjpgCD8RlXLyu8fe3lk86h9cmAaOH/QKZ866jnxd/nmeStd22ovJNL+lxTTubCOf4TgvTU0TPV5g5zKF+8zMszX6AteSK08CQWuBfJZZGoY1g7c2atJRA0Rrb5lXiebypM3Qwivd4POq/rf1N9b7aeONnxLQA8UMGfJsXN11s6s49df93bCFi0LFxjwDl8k/Vbu9YA8GZ5jSQyGgSJrgvD93H6LjBQ0OnaedO+WHxo/WM0RFgm93E9t4Pidm0knI9V7n+X/o0R7ucoKdVJnghjWjNHh3+H3YZrxP26ENUlS/7JUP7GR7xr040PvEoNpE94", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r7n6q9OmJA1DYTlg9o0Rdy2ZSHi1vwsMv3vH5kd7xVg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Glsreou/MvyA7uqn6DCTePzcEL1+aInoThXNeWN3qKP8T5/ak73Yb+b0qY9VQrDBMaBjD+7RgO4j2k6oLr5twAzWH24lQ2P73cR6EQe1Q5mMkg8nMUhzwqf7zMJ1v2tVM0OBuoNwrEqzlWBiU49jdpRDxBp17oAse1pTFQUt8Xok7CrEEzIVCCCnw7q5hFP2e+PS/cpwWwN3GNcXQgBY8E7pp9rmArQXAcrjeHm8QTwjukRRPfzls4ngv/LFhhlTHoACxRJYJf0Ngv2kgMKujDIZg+33sLAaJkVe8ysLBkgJX6Iyjp1d+rybJiW6U45rjml1cgThTGjt1hRo8LrnPIcOVWSGWHgM8qtKBw0bf41czqgHVXRfcLoDdUVnroQS7ayErG9NA6KuzVv3LVX6CdIRju+92LzY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r9HzGlvCH1HocN/kcrTt8fmlyLpfLdoubZGsZmfdU28", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SyEdFJ0RJ3NodUWqWznQyeCy1MrDvr36WpdoZgxpcCMTrlr1gjVSy7NPaymohpKhupV5Na9toA7UQNDpNJvQ2iUFJ5WszPvHdK383MKGz1afAGJDAf68bM126EdGzpBONJtJ1rMplnIHber8GSt0WOuGGU4kmoX/BLfqNzLQ8N8dZQNO6Ij8vd2KpkhmSbpRZ9MWi8l0eBol1LHemeAwc/YgDNunz3M1NLuwb9ARLuC0fkVB2owPgOzaBzU+hTDu0adr1LMqlDjTF5vy3PmLVPfblVWvzi9V5xPDO2yI66aZrtbKW2LWZPVSmgXKCDh92DnnmNEUylATh5vGL5bP6c7O4ihFxQoijSuqIoq4Lf+jexj3lTSPW1BjVZHJctp6/GlRF822CoTN85VEVvrZ185IPLFEgMNS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "r9n8dbbug2mz1TbGyN8i76rhNz2yDsumDe4Jkv4R7Ds", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "75ErRo3zQFObsHJnQo4uLv3astBJ27zZ0BxvLZTXryo+gSX331BqZReo6Oem5LZcija53wfNCL36j6dYI3frrizwGIdAfF0md8waMZCfT7xVZU3qNFy2Jj1WhtX5aQTg0eB/NuGbpLB1XTRYC8bo/uRyFbDjHTTGFtJVAqcYnqLTHLIr8yJoMur3Jr0y4p7a9ezicIcp8MrwknI8zM2FkS4DhHBuNFM1dSQ4RezTupzCV4vPvPJT1mtNNsr6mtuDjkWXMFJBrFWxvqO2DfklV3+b6dWKW2/SzhLWi6AIldAdpgMJxf+r59ZjgavSFsiPmGbxcj9qyCmIfidAzWO5jJhOVS64l4dXTDDLjtTWONs57QideN4SwJcoKndkHFE2S3ogev0oZlvoIZLMlvJQprFCgPcWSoV5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rBRt1w4k+k5ICHvRz/w0kQHeCvlZZ3+s6gMCJWIezr0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BxBV9aBPUiEBakCMrOxKB0Iss3Fx0IkJ1NVRe4ht6dUtsvMAkhhEXEcUEkc8M8BjsoBfSumY8uBJ2Q+8fvUsGInT5WjC/lLppJJFR9leNWPLlmaKYIVQzCdjh1pvALso7ZT2cc2DSIvpuEy/i8VgkxbkMXu52d5mnUC0Z/BruaH7DPFsfmggOTt9yPkTaoXWkI6UVs1f17Y6zBvAiVFEFS0fp35jfLjiw6oHFaEi8PP+dr86WYUQ10guR/s+yngJd9l/5/aBpRwVGT5Q6YfH1d/s1XaDOn1a8r5jNgft6/CMK7HAVm1K2JTDqjKEPBU7Cfrtc22URWFzrSwbPwcBIu2+C1ZTTMcjxb4OrJ+hc0M8dKnSbrZ+vaHSrU7Hjk1MGuhYsdL+kg9pYAmWEf03wvhdVI6Jtbr/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rDns5X8sDHXJokGN+sssW7X/taARTLMUGB6vr32OQ6s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JS2nlwKiuXMaipDc+Ff6RZ09K9V5VulIjjuDUc4bhnzPsyUcnLTZkjvlbzflBNOD7TKTL4ekAc5WYsktYdF/0DnehOvAErURszL8nbMcMqeiPqE+Guxn22fy+OEetfyQbZJuYYK8uCNcXcn3nUQoo18YEiT3p5XqkdqYV2ZHU6iGAbxm3l7uyJgOVOGzzwkQMGIjZ9MEt+sYviKy7/Ib7eImyccXjzwzAUvCFy9yW/wGsMitlYZlOn7FRCdB7hHftnlLyf6zyHU2vL/cmm+UmC23d1Mf3i4yahawlL6VZpZ/rJklJrnMcH6UXtnaAT/x4o6seo+7t7K7RjZzQF1DJy7ZpM8pPh7LrEyGcQUUjn+AtMj773CLZa1hvRj40C49bpv59E1aL2xmSQ9Ev4xqBQ/BmElb1uIr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rER4A6iDZcrUjeyfwX7ASFMm1jiM2cSqvr96SEQBOGg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lOu53rAqypA0kwoU1dSZc9laUU5GcRtFuqgxmgGNhwxwIN+hhGQZAfiX9dgKz/Sl/megZix3yRaiw4ym2Z/5wftpBH/02hKw01e4dcVOv22izZNUD+61UUv9hS3cOCUWZQaHKyse2urI/5XtQfgtQNZ0H0k8BRAXUpBvoZo7WSdKCyZSDtod3ZaKOaTLHbysOgkVrE5WEhqk0MQGluX09XxRWDsOiFQGf+Kk4LdPIK1fax+pxCFpd2zNYKJU2P/DJpA+baMBedHSyPKlYbU96Td6n6ueIFrDdQWsB/Eoke2wFN3iXDOzNkNV7+QnI8zDy6iXFSz+xHxu7BFTj1FpOTsUsplB6xWfKYZ3Kn0Cd2k1Qn1YAiDga0m4Ug4ywPqE6If9SHH/3cIeVfggZiOwQF5+exP3eIoo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rFePKD5rmbpLb6SpTZJJT8Vp8CFOLEoLiipyCpiLLK4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IrVCGT13IILiArSqs7mCW36VVqbuKqSJd1JCIo14pQ3KJrLyd7M0GwLNuO3JfY8YwjkWTr93HX08U6JspsjmqKqLIDwm2/J00KAY2XfhgUYwtWt7FWIcQh50YXCGTfAiUYG9k2h6R//OAXOiuX2unwzBwa826o+HzAooZy0DImd+MhgCexD4pxFiQaJkLm4cE/VQn6q+7C1649nZOO0aGSecAB91xggT+7aCap5i3Hy3bLVpYemVQfV8VU/1b2VE0y4AHZG/9XkYEmRzeEeI1P0M+UrhnZ4jVADJZJdXVIe4GpFscCOJaR75UCCXcpMoWsthf9XaifHKYhwx9mX3WdalkDfC7VCRDCDHgJeHukvM31XMBzuYhelOl9Ge9hvrjaemoIFkj7WoCRUf4vXKyJPB0vQL8nRy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rGSZvc+OnSB/JKmXdaMh/bh2Y8jZpqqC4RoxFGXxGQU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7zc5nMNoT2pNZ/4Lkpz1zfgs0zP38NBBzoywIyG+x6UMKI7Xj65qhfPGomodPDDAPW4pcr6VZKBOZ6xgaiE/dPdovowKNYnYZtVDt34wgUkeM6PBuMMG2klP78H+vQjiS2dDNSQmaa0l3e7ev4ERfdSY+pCbKQ11TKJf+Z+I9//bavsfU/+mGZ7SarTczBwC2CR7aMUUXggsHaWewQ17tz98sDygp4t8K6sbQaJ0C6OTy370r4Zy4XkqKSdTpyGYqYRz1JoQz8KFgU9j7dJuuA01ZanLmlrWAJOQADXlgHcT3WyB6sjFyMN/MvXx00q2+FhpG4vtIRtwfyMDqFNyVLlRYOocDIKZ5ebYKFJjvRfpXDQ6nYLARxb4vwVMRHiIdxzlzxz/vavjBBl3P+DI2uCvBmmpC1U/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rJuziMgQJStv34Jknn4aQBrf3xyYyhNdbwtgYjLvq18", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "r8OpORAsi4py63Jj1oZh0UKkr5HMNHcWj6GizWY23AeIBc6/jqBMw787d3NjeNtS3/Pc/Vz33/1hlj0trQOM1G5+kjF3i1EqirKgih4JGZrTQ1ZWpOEa32rsVJ0p59Nq9zIiGSrKehor8BIIhRPFFC7iSBWlww3aB0/+7prwkEdfMMAqIev3EkxeSSzE62FjFVD9DGDI7wX9f25Ovmowsj9Df3MdsSX0MC8XwhifxtCGBiaqfDtCXCBJKPO+DDVCGY2gUA6SjyRzYow+u2BAZ4EdUZhUHA9w4jtL/SDAs+Am5fSZFWS4Nm+QdJxLiBsQT7JzGZztsneHjS4sKmMyq/GKbOWOOT9Zm3B+Ez8j7I9GwLnc3vF8ihXSEwHpgxqOASWz0tgIB3jbT/3duQ6qwTzxDloecqdJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rKCMJNkfL42dPR5++Izod49nKKh1wROXA3MeVFzPkJQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qkZUvg8RNWluv7OY4vm+wOFzXv3lO/hun98KcSGZO35vlJCWAxBSRq21msg+9s00bUgJQCZwbM3Wc6eypbRWnMq5X1jBxPgdUuv5XnkWUPeufvP3YgXvZ5n/wCYpLRmnzSY23Ls7cb1w8BpeL4vnp/ntuKM7sY/XWFcZhnxhnY5ebCb0aUUyXcHEq01hi2AnlKtuSYrbcz4GnV9rUVP7L5yBWLCUgmwJYTHYMYyPAK7Mi11vfGw+ROIrMu5XBYiU3OVxtQnjlLYYEfdU1fIG62yZoohR9wVCUnDobKDKsEim6Jt9Hf2gG7gsQSU5L4xaY2yuc19f6VturljyXMQkf18t7YytVCzkl7ZjKDWqK0HEmcaF1hMI33lFWYBhyotV8BtQRlmkU+78WSfAERo8Vz88hC/GmqDs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rLe71GhBP3imqJuGFn8mARRaYAnxcx9tUAp24JLeYHA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+83FRvDEj4rgfAC7F6HXbLZPNX+smm/ke0HGKhMIVhQ4pKE+Bwcq0BTCRImVvhlyQqBeAPczm1Te3T29UqSAmy2Zg04G8JR0o2Rl0TuVl5t1/NXuO+7ZO2VbfDWbx0SVE/lCfvn0injp/kQv85LWNAgTZ8DWDIBh7/NNkYRXz9AWFrbK4Dc+E8+oOWKnEqa4zZdUkrABJODz63vbz+CTGPP+Q7iPnf/s7YRmBG5GHau97s9fQfoibv4a7PLSFmQpjKAexwbL+xsM9IMmzykCmyDz3iRQdGwB5kUJz7yplWAm7WDyJUYI+jkLsrj3HGiYbDo6HJkaGMJNl4hvufr8PJkg3fHtO38ZtGO+6z5OxmoLIVGrsQJ1brySvsn05qACq8FliFUNFE9meKdhNegHNZM4qlYJXy6J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rMJ4v3PSTJaNOhbSyh71goRrWqqHKS7Nn4uPgzSXpy8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hEZFwWRObGMolzB1nVtsgjf+I6pFk4rvDjlW05YISJp81NJTP/nkLUyg16Kk/MkL0DIkvciomDT9FQHllxatYCXuxJQ5EW4FE0sKVNv3kZMukRVyYxbGi74Bz2Y+sUyySKmBLpuVTfa3i9TLX24f5D2SbZU/TeskVNbvkY0cP3MEYoBd15ISzyu+4HeLZzuAzhnbhDu5LQTxWOpKJu0S02ho5Bv4gFSTVb397Qz+0fq0h8YexorYLv9xg9irQ8BHDnsbL7YU5KBcQBXzQ0AQGk/ftN4m59ulxcSPyrcXpqqITkQAC4yqY5i7Sb1zATV2wsZLN/bjF5vOaqKcqJDDLB2vkAzrGfr+zopPI0aeWLkLtyD0KeOi44jnDx/W9QNqcJ80/7OwN1DRTOetaXyGXOGfoVO5DV3s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rMU8t06qQ5uvLbXFNbEFm5d89d6JW//UT5mffIOrJRc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/xOd7xFd/OSDN52QZzZdBDMXWdNGS0wwqQHVE0WuPtkTaoowWTHWW7zkTmY/Om0dopt3tGIDPV6tN8JYYqtv1RtDEbqH1xzu0HnNiXuujtzAsr5WW3HYe1X84Tgpepsm/zB2RRlsnBH0mqNvUGlRGKnm/923xFRSXRm1rJ8PfwiHFPtrt7OAIvC5WLazyQDZF4TJJVt/pHeBNvepK0j/OYzdD2gLeGEr/3iLvfg5FOVJp/UwkTdeXRjlEVT+vGKkyJ1+CD1hwQtlv/K9jq78k82E/SS+V5OyPe0jHMtFRiwHOf6Pci6s8S5o/We1Yx/yWxC21Db3yppjXEQN6ZoEw7muPsIidfamXQletmmelJYRvWHRAgovhd8MfpOzN6crWgDDRQzJn1T91USOS+d6zRRhPtg8Tr6V", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rMhZIQ9RaZFhk9i18l+EYbytUxX/Y2wiMaewdWndJHQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SQJP1Xokc+fe/FZTxsr+QlCX/TZBAr+Z7ozmdOoLKdnc40QZ8Lcw/vpsxLO7iqI0JgUXlzUSl3gQQR8wPeRinDsNYKXOk7Xnc2KMHYSzvER0EI07h1fGbyzaN9641UvxjwkSO+iQnLsawgNav1oy02m8YTHw363tcSzeEJSCy4iHCiGVg23bXNFMVQquAb7Fyq2YLMA2b5I8usglV272WSlVyTtF+pWW7VYzNxTigYfPX2edzSasG9s0mjQh5uEIDI2UKb3EpZ+5cNku2w95ij+olB6Wx/ZjcW2uWA0yykfyPUuYqo2pDqlDrMqbnGey0HF6hXN3WSyH4PHjwrE9pT5IaeIRlAEyNJhrKIxQ1L73mWUTtkYZrasLGVmdbK3EkF95veNKwazT+VIvh9+9QJBjoKLAHuVh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rNMzm9Y1LuTbpu4x3XP+XA3C56CnemHbeL2SI7Z4k5M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KXPi/CEFQkLcyDU6sNX5B+Q8WbZi+bd4Kl7whDg5k4V1+jGcyNIqBvGLJxxtUKWF+9M2JuuYahY2r+qHUrgXggBMHRsAuuP8zuBncmB1Mf6bXBeZf1gAcPXGguw6gDfpgx/IRgMdXcLCfSmnekG0OqgzgzwDaM+QH/8n/Zz32q+RiNgbpWwEFDYu12sX6KXr/iTpspqQMcXrftetSIFiwWD9sg9/zRde6YV5DxkwJa0Ly3yj6CucstV7WQ+JoD6CnLcgJ3PPgBmb5Uzmi2opk8v0wdPwgL9IRRuMhhRxmifmUUYq7tmhwTIdvMHmuIAqpnlACcyFll8O6XwCfHkNbBXs9F4pH1yR1AXwrrmrlbGOQ0TlR8b/TN2+7BMmAwLuXobNdPNboPNNJ8op+9HaPVFRiSxqC+6u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rOGWS5IxVQ5K8aa4TTUx04zd4qP+o+xBp/MY5R6RaWg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "silN5/Fd1vJjJmXXoDBXtzbEVeLnXQ+tuqQFIg5oPOtmoi4N6+KIaoF8CGARyWcjseERZ+wY5Yg/XdP7AvJk2you05qU+2ud0sLo/3+Dm/0g0jzy0AVWkFneQJg47UJiF7jlODKcr6fYHX0lys8dDxkMsYvJAeUOmrJziXud7HFZMHGZCipdd8x1CfIxg9fxEZuT8BqBJbEuEhElqT3H1OIQH8an6d90YnfxuvESLH9hjHvXNFcAtPfukEBbclHsgOniBw0ak/cI1FkBjA/v8/9to6ZO3N01AfReT7SSaCGen+6arlttvMjTQShRkzadFmIMX8Oa0hPUDYGkckCWWYFnRHh2jAiRqB+AlLYxdUdXKtTlubwXOjbAR2fGcIwoMa9otmnmqJf5FwlmmROwMrAYoIekM6iD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rOe67uqrk0TzkcC9OVa4Xlaijt/ZCyDyyU5EUgfDib8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "z3h1OfBLzDGwhLIs8PjQUQauwwic0iVqahpRVzm3fjvLiDM0JSrckAmSZTUMzbqdZvBw203uCZqUSnycL78495a8dSmxyFoX5vk2Jw9VshATAicww36yOzAF0ZwY5k3TDJaXaR/TiAlRTzVjHS/V8jCTLPbYR5/IgHzhnLT0ccE1SKtXs7QKJyjg7uDuGwPVeNr+WPuRArvrJxJLgQ7y1E7UCIRqqJjYvR3b0JMUpW3IADZ7FB12Hzb2pyq2IiwXOzE4N7m4lYM/qdKHKkq8FJmGF6BpZcI5rtFOfxBkVGOUc51ykNRmDTFKhNQy+YH2+MzVUcVqTcffQGUSQgacDsuLD1YKoBw3ksKedfIcaBAvqvPCh1KytyZkeG52AjS0LBRzaNTkyvn0NKAzYz5ZQvuY1xnXstBU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rQD4KLMhVhFCtE3m+Pg7bmsBoYjWRr3Rzc9+B1rH/DI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cR9zBrGtCWiBhzre51pC6vxhtYQtlck4ieT4kmPomqUtZYJ8yNQzMPgMyMVwr1JEmLlylYYZliYh8mX+lWj8EkKi0bxeFAuhW9+eGR5MeYwKDK47ASZJzIvEPt+ia+J7nbbrBE6j+SXCpZM0N/wQy7yHkvY31HBW6iicrpdMyBq1AuAHBuEbMPdfQQLg3NknWuWiQyBJpNiwBun5vJEJnkVTwseacpl8ydUn30TmcbpFohUcQ3VNslqfu6P7v+e4V0tW5HYiqkFZVf6kcuedlQPr3IUIDO3Andv7LB0jM8oI8XNhHKhfsqA1SwGcnRQYfTJV7V3OsGU9kDoKiGAWmAQDA+Tf4Kv8vcuZLgMPWKASKdfJ72cNb07Ge8QOwVBQXb5yWsmUYXDIe1oJlcE1PaCdOQS+EABg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rQHAj1Tb85kFmatrmanrSpPhfWCA1Lo4tXih9hK7yjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GSXNbyW0zxDkE5VzvMvnkPvasn+ROnx9cEP9c9ZyOV4h/JTH7kuMQjW5OBFsxicOcnzMZNkRqJL78XDJofyGMpU7WvBoT99HTFJ5d7lE9koto7+EpiXgc6oenA8eJoMVRqMXxVVuOziEDEe/XMxHPftrV0OeFKenTlAM2o6nKlJ63NVMqqciPZk67tRmCopfS9gbubi1eTudbNm9NV7e95ZMMXYMXCvKcUVyc5RfbKU1Dji2CETLwUhEEpcuEnj8MCEWcAocop1HJNaQ6BcmkAmCkxdezVwxgqW5ILqY/QAIG1+u3pNEPgglFfu01yEAA9Y2pfjMl++QWX/ZzAiSo2wZu7mNgFbC+FKjH5xxk0jmmYc/To5ElJx0RyK6gXHwP7b+NjraepV+04K0CXYBFaXd5+fsvA7z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rRFPZhKWtKPG0RGZgRGBjXinwJjibeolLbWvuz5UlT8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YIHxKPDavgg2uRYrtyUzAhJT5Xf+psaOQmhBOt3pIssNufE9UEk6VJZVk53bfh4KN7/ovUQ9lbc2KsMbhVLdA8UtVOqkVjL6D/rQa79OuH+9HYTiv3UiGd3YzZ6wf9vn4c4BGil3nOQzHa7qI+DZ7oaOD8bOsvFHXOBzfJH+Wqjt7uxCkcygmszfpw6LnNyK7xViySsmXoY3A6+x31rWp4jSHJkZJ0J6368ttxSMsR8wY9lKUjCweOQtPx/u/tsA/mndh0YZkAAtsh4t+DMLs4J6WlIJSwRXfFb8pXWFJYj+7ZPXPkyoy5YN95HZpuFffLHosJ5NgK4wxHbQPi92zDQIoVxRZCJnuj3BYZeMs4kQRITsnaKzcWA0KiITdneiY3/yAAWXyrUxWpL4dN4gOvnnvom+f8dW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rSxyUcsgE1rC3tFRQtbR29x7G89untQooEgb8hwDjTs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5fHsAB1pg2XK4P5MopiaEAl7JjYgpHdBjBy28TI6U3+aEtKFTGrg6qgi8nVQvVLdGkmsPBX/MyK28KFY3aL2PNexk3FjUDePR4XtiPeJqF+W5cmD+nOmmT8Fv1ATlUWGRgdsxD+1Wwavhy22+Su6KPod1SBzO/t5JbSPe/uA1Sex0TUC5enhovCEWUjEu1WylbVT0TcLp4Dg+edhgh6GkL/fJ9PenWbA8IhCzwMMbwyzqaISqyqWiOvv4H0n8TpqDR/HR8OHIXlbU39jXFSpLHyuIA0s/ya9i+J0+gQfkBysb9w8tqS58TNiiPub5QrhitP0AeEw0aRhXGEYCFIAsnVxvGZ6tJUHhsg2CKqGK1/XldkrmONsJOkbz3+zS4KpREmmQwJrN4lAwF+LyCIplMzyt2mWUOO4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rT6QQGaZvG3yJcyWAGylzqiFDbs0U+4U0Jh5W33mSWo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pFgpQIUGp8NUiKd0GaKm7qX4vvTxlbuOrYX5VK9qiXZW4ekmgYsgBGIQr2cPH5meBzNA9C6mRolJKktZE6+1xDK5lxGY43GeVTM4+rBnFjkkB7ENETR+YH9UG0XwcEw2o70rc0YYJ5CjgHieAJDqKNVXHXgJbqG+P6lSI4QoIduHWVZ4DgOweQSQnA0XOvRBzrdFlnOtISi0UE3BJO6FbZ+nkOni2AetBx3/g6FdSsoSn9aCxT2lXGF+VCoiAQeEgrHtGkqnKCTlMqDK/iDSOMB6ao9Ji2E+xWCYXHMqTtZWWiUMDIc9MONWg5kFuN5KlcWpMyjs3rQa03OwcqsXGeIMSVsE1Tmv5ARIlFTdMrMAVkS/wODnDwxfBo8vmpQlxUBB2FvfrNZd1PUsuuAk9fgS7CWIBIGy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rTONsZLtxY1SAYeoJWMxKZ+Rp4wqIN2G54vB6bOXb40", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "U9L1/wn+C39UEnnXFlH+HeSYlC0Hah3LgD/vYlBRknbpTG1AD3gfsp+fbIbRP9LfjAoM6qBxYG2gIN4plAVssBG1HZ9Jr/6sqqhUqJzNXuZNYvqM6hr5TE6st8kVIzRdxLUbQqRBmQAkxhnYhmXlhOWyDnJ+Qp6CLgV7ON8Nwiox/veH9zi8dKSB2H4sfZgDUYUBcCY+zTOao+3PARXZCyfXWOJ5GKtqNd15I/x/2JjrQfYs55/ytt+wWH5/X35iFN9fmiDTj4y7+lNPesRwf70sx4Mm/BNuSuKddulOmoEHeE93TxpTybwNyKNixA4St7GcsRizaqZMKM9vjawLtXXB4woIbjJfyh2YUIHkMzf6abb/opit/hLw6JR+6WBkjedO8SzXaYTM1w4CudcOE2qeAAg9dqqP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rU2vyeFRYprVhqCM7K4iUmmxpCq9bcxmaon8jzKqMEY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lH9QO7dLdofewWM9Ndb7hicLZJ09JLmHwZNIQ0+rtj8TxcGXCbNzxFVyozxZ/T7fupIrGI56KolPgtYeSyZ2vAhud5eODkjv82leK/fblM5zEpRhgEzC18KTIs06zkawoJUe/VyZKsW8PT2atm8K+byfU3kDz/56b+94R/dQl56cyLZlhzuHV+jSqIhfH2NMU/SpgiQbnep6Yx2pIyZDLOsbfkoHPU498bUHeU1/zS/V4yXIfPQuEBJ7vmbKghpVfBRIUk3xdMyQVsgeZXm0E66+xE02KemQYzhT7N7YH7islAvO4RUIoCOFmKYLUye4+hj9/ia3yw51xCfUU6ivlFsHPZsWMZIPwbDjYOsstpZa/KyV63A2M8vvl7DxO/C12nm6E87e/J1TAKRuZi29YmuxwQgGJcH/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rUBGAyTU7g3w1l5V97jcgIRmfmjfA8hXh7/mm3Gi/HM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uhvWaaYdEuf9suXhsNdJ9NpzFEeo3zpU6QKcTyt815f01vE/ShioxvPG2/KHrb77D19e6R8LaJLEMwBC02m2gF4scibgrOL/MtO00H8taXN4OqVOumBnN3SKiJbX3DsTQvEdXxj3WUG2etIAB9/Hwt9tQo2rD99FqBCEz01pdL4y/9Mf9KqXIMkRV2VoN8vGBVUrnxBhG+wLHtmJjAGNPl6uZS/hmr5zVEDUw7xPFNZifG4ntHzfAlB0J+pjyNXFF1DR72QjQzha02xqD/RQmx1840rEPNw6q/oqkkj2xLAxY9lgxx+MYEKs8/FjihKMzQ4zNKmzEqsK4C/x3WN9sm2+8UIRBnUMR7WHPgI9n+bKFi2s+eFH0x6JMCWowpDjX42LGuGnTrZJ1k6lxgs+Kq8ty9UOHmjm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rWHCodNRqZ5ngo8iqn2VLTUUG277Ca9cLgOJmsXeFj8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iG+SAQyxknVIunAeQuZLq8JHmfLIdla8++AMC1t5AvnG1KCZymn1B0irVG8CBQGhiT/W/jiZg4OHJuMFMs5h/AK2I6tO2N249WYQcT+WR+twednPy0+qSGrvps3B8+BwfsNsVAnqBc4xhJXWzPpMETY+d9SNx5lg7W0xuTAEPRvtxWsShEMf/t+hQS2/LLziwmO6Rz8gK94RZ/yEkR/VoVJFoXEb/9CEb1p1X4pB+tVRZDwwFBnNm3sFHgmhUwyhQBKkRqH1KvPGZz+Qpt7iISDqXeflYrWRLWurvn1W30HlMxHIqQaUSa3yCmzgMTm/Pdc58+69yR+hSaCL1LXd/e71Vg0t/H5IF5X0VZczzrWvygDov+3fGrKXEB7IVxKYlM0mdst1x416C9gBpIbm40vymyZMCmFX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rYN5s3fJ/S9E84dksH/kAPxadmnpHazQG04KXh/pCqU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kH2HleOTQxFpB12oh+fq6qfLRHT3IQhpb1W/DXmIVv1m3BeQOymxb6YIlDIYLyX3IZeOyGQg0PVb9QffltS0zxZFpspnwCqTAHt+YNc0whB0n6dhIrufZdQAFaBY2IWbJnig5oekXbweKavZwR30FQbTEPxoUCKGCEDbVwNcthV+obDgFT95iLAyHi+NhL1LHUvPfDah/3XZnEjtJ876xKIxEN8cT/eZ5vY5jVDgx4b3HPOfbxRMotHjO0zykNxGA9vs0GJL0BAhJub/gkYSJJJ1hTSaM/Y424ZGaT/hjuRJwxNM0ZZIbJdgam007O/Ay3XcLI+QGY9ze3oMZ20SQ2wM2eCgEQdu3pCSawKuFEpU72ubg4ugjAMdT3zF4v+byMWhmiO7Ht3OyeONIXRqW+Q8l3pFp3M0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rYjnZj8wcuT4mKydvqyiMUJ9b4uIevVcnzXujmHrhKo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LPrSiLx+SNmTi5iIasYjHJP2pLi1U8HdDAwrKucVSrFkQpR9fvvM7o95JKponHP3QluOieHjd+W9q9HP8hjbCUgM/18cLVPx78W2MDGuXGZbUKtWQc3uWCovfAFutr0WUqm4tPyft3x16OFkUeEUXJdZQmtaOefN2wsBGA7HQGScpDpjV5sFYc21i/Cf3z6E7aFdvDhnyYqDqWiTqu6huU1UOKx67LKN3tWTq/56tkOhf9OKcJJ+8kXn4ESV5W0isbexqWlr5VimSCTtyp+1Bb4sBu5p/u03z9+tbSirf2TBsqL+vgBtaDpL6jpeX18onB+/79HtK1VBP9BMCTh2AtuIc1tPnnUXqTu24wsgFlcnYtcJun/aKJx6X333lheXyvz9gyBGJXzsY9KZ3wrqtISZxySnDlZN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ra3MP8qznEkmkyjW26PLj1/96SpOfnXYa3/O2/qV9eQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cBFWywkSV8YhWQY48BaxVgk4HL7xFUklfgg03kRJlYjspnUxuzFiWBe+EgBiVxKJ1FRU/4cJNuZt0TlMwSxAbYmw+tUiQop83J3kRzuPLM3UdylxUm5VKqraffJMR9LrK3kzs/6Fa8M42jg04NSZPDUr5RGsqy9xImHHxd7/n1zfyjlz0OeL5ySYXyKlPqYRl3rjQWSLPyx+txKwJicV7efPrvuXNWkhvybXGzMJq+cVv16gkogTJV4JvuTZxtq/KdPMOTxFx6F7gowdEFXsbWfUQ6X8hd2prObQ+f9zHqvCevh4oFIRYw02KCbVa02Qfj0pHxCMia8JIZCE0Sjj/1KLjY+AzuxIiHHLnCAMjMAsCNQsdfw419rjRkD+YuiqSwgnA/drpfSm307CP50n1it2h5yXvtXd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rc4QaO8MDOFH+14HnouFgFFcvMGYh1EXSJMYExU/LOA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5U6PS0jj6x0FVSPWPtjGQPUgetahJOUMV04Q1led389LRhZ0D9D/NrGjuxky/yQQtSxWtQhVmgVkiZFetRmk9JQli7AON1CtfSiAepGyOdsdcxmGu0Y0gV/0vxE58/CIIeDUD+nC+4jyxMZH4YNrYKWJT7ZJgvn4IjGZBqeBsfYZo63YTbiZchBhjdKGIVBJcUugJl+/oASVdHjIB1XkCCYc6WQftXxkYMH2jjY7Uvwrov41jVy3sq0eD9MA4+BR62wnjuAOo0+7i0Nc+AuEg5T+n3+G/S0pkeCcSfJgMJoW9ZDkTWJ8xwMLAqgs0w+t5xEgFpZeIeKcLoAHoP182aET9Kb1ZiwaNtTLsbxonQC/dq4C9pAFSM5LQEUP7TL9GfDPk8lGUN94ljdZF8FeHBDtLNO3tWEr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rcQ9Pt/ylpSGklI5EuNw5rk5RaMGFQ0O7hst1ogOvbY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9OtBXe8Vg0zUeoyKK1ilEcXOUhgPiGQgb41tazk4VBa+YGN81LG3L4i6M75pauj0/hggq5HVxvLAve2ifd3jvD3bnF/Avfzm16AyKhfI3DL/YiO4ONZa7HRv5RiGH+gaO5ebkbbhFoTIEcPUl/YIWn1sbt9nRGxD6GA4GZBLeRZSxYCzOiVL7JodpWcUZeUwcDNTwLaj9aQ5jg6ortbEfd9fzKiSkZyCljq+B5c9tcRdExgOs5RXDKcE3Kjs6C9G00/xE4CxsarvlDzl5n23PHOzJ0CRVgsY2zzCC4GO8mNkndaijw1I6QqdGS8qcLZlbXb09Xk0wwSnfYKEW149GXa9EBhWT/gKl6Jc8HzR3p9iTOfIAtobKEpddNd5WhM3S0NmcaIENZrw1pJUWpZMzyccHESq3zO3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rcVXTsmrgraKpmQIWu3J9OezYtm7GLTqQ5dyEml0Sg8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s9F9xrCfcTRucCcwc//gAJ9Mk0BCddntMvLt7ZXV9YQeUiiKtpFVvHoWKNOr1F7Eg++NV7rqqTImaX/dVu2a8kypX1YPaZB5WJclizlhYR7DBnUE9BSfDrUlYtiWwl7KtqGoDDvpHqEn68GqFnnHAN2fQmOQyGN3bomoft0BKgHe8nqOTdatNXrFA/SyMs9PZlnhcBKBBsFrvPvaqHgpe2VhCHjSFm4+XXv7TEiEtBTcHhZj6UeNwFRx65x30ImScUK+SMoOmve2HSPUTXO6Lt33jR7nWSufuAJeGOd8jTjKVzPxPRjyjjRd2INVHY60Tb19u9iCSkGOR3AdBC//wIjgtzErjF+4YQCGap4T3+4BxLSNGxtsgIiWEKgVk16v+cxOY/BE3U0R2Zl/UxXHp0C2bN0QY3rg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rcz6xI8wZoJDGcmKqRoxEo1o+Xr2KK3KEJ3K11ftaxQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2REfRqSQCp/oCLBtVFiStOj+8WfIGVIlhHu6F9GCjSRFd5OGd0ye/vk4vbsaWtTjcWDSRFmRdRYMv55cZssdDyIjr0x0dAtX9Mzx+37iEKVZYu5RsEWYB6nkgiC8hFZBw4ve4MkiEcJOL3YRdSFODp4qx+72zwm3QefRSSZNO/CZ/Ye174F0ahurS2fPzOc9MsW7oqulEnkv0+vkhLIDMfvT7wPA2Wk3OOqm1Chks4NXM4gyzTCbsloN0v0cO8+IvomesnwM2DDgRuyWbbs3Zc3v1wDcqU+DoMa8knot+FbtcqhHIcVwnd4EvM17v6vHT1zoLyNMFzbGmxALT4RgHmiMBPvDv40gnKNWvc3GvXWLoxnXi7xE9ifjEyJm6jReHYRPoHlcosbXQRp0qAe1w/eNrEQLGIBF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "re4lUYSVOpNn/0VJshznE+mIgAhXlJSGs8XI8Kh55uo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yv/NDl8hYdkHcr0bxhPbby/0agr8HFf1YyCQF2YKGpYJXcK7TWgUVculpZ381uxDLCgP4tBfXaonYE1DnlKRf5YHh+Y0e6yinNi54cMCWCkDsB6/VUwONe3C3s9aIMEY9TBJOdvqNbGD04ru8zz0RswvnuNKIDrSTKOW1Y6nplOgSatHZJJgx/FsJJ4syZoOJmdgBWsQgFCLjbTsPI3txTVl1qb6f2s5OiKSC0ocPG5PLaLn7ImkZcbyBgb1+0TjgP2PpgEsWc2yTlGypx/9+cV8bChgwKEwOCQpbpwiMkSj7Btll2rsdEFwivCQpgUWXIiHRfjD+NmD4X3KFdggVnQqkE98OuAhauQOjIqeteIWwd6xym40K3iBdxewzj43aB7QNlkYp7ZWDX2Le9PF92ukLZKDmpgR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "reMYfgHW/kMN5QdtaK4LrN3dz7PP61bfYq8qZ7XKv/k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sB+TtwqB/1bmu9wCaqwl5WO5ejFHD1SP46pX2Y5/xVYuH406kWcoThJScc84KZn/7O+uLVmToStkZ4CVnK3RckafsBBI5h7iwVDll4BZ73OJOmnhnq01DUU3KV34k2g8/OGItqhPIk2auI4RN+PifpG8uECeLI+mLZ7fpHktRrzu2rIPKvvxn+Lsl66ba/NWeqKHwHbnZn90EOWN/y7cF5n/h54OKu1USCWL8ng6hZrU/G5X+phUUJ8dAPT4YExBl4vmYOdV2phYzd8IfDu5cBh3o2tTyHPo6L509/d+kbCxuTQxURLHPRASmrdP/oP2LWy5xoE60HmINKifagZA+TADBvjNDz8qRPPhIEdEPpEhpGCMyqGD+72WfQ6yfDFg3TeTzcQ6XdeSRyPTb2nlLjSA+uoUCoLF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rfbywkSUe8zUw2vpmLwIwnpwiizKrj0+7bPP8s6kT/E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u4NN9/X2gxQvFLca2a+VA9BG6NCR3v7rhg1zu7C6Mw+OlsdmfxnNSII4qn1JqiGKfqxcJ2rixvayz3T4xKs7AFZTlUXcC2eAXXS+ienWNETsQO+N4BW4mMlRzhbDpqFgCw/3UTAMshJHCpP+b6+1hIA/tRyk4V3DDWLSm44Zs4OGdydJU9lPnEKJB+1A101RNJeItU08f4ltisz8OLi9hsNwfnv+YVFDQ8GDjQSeHLWl4PureBg7Oyb5i1q1wCGAWiiFskJllig8T+wa3WbFMkQvAGQieEUpUwb2xgQTsjr0kyHNgIOnXPQdpbA7RLnF3GPs9SewoDtdmLzGJiCoUladHE+OIeVdL5g/QyCq+qzwNuQszQTj0S8lsswEDSWA8T+YS33jrb6TVHDjraToJxEJdjwmOTMU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rgH2UHdHEW9l2quuZ4Mvfy8n/K4pHleUAKHiGYih9g8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7frnREX1tX6spM+qUgeyK+PSjarGXkCKT+06XxURFxYR3PNOEM8kO3gK3hgAfhfXIwuR7iaZEjJIC/S69an2Dyx5z9Gi6jaVvdtiWUYSEST3vaCxZjPcAPBGmtpkA5/FDkhLs/SjE5rsv1nOJ7EW0IhytIMH3lwCj9yyGt4WOgZHi8iaaWM5ffcqlzsYe1OiuIhJq/ZJ1cogC3/q4WIdvH936n9rpTI4t9rN5q6bFxlpj+SQC7t9N7xpvl1b8YXRsad1Uhd5L3uXnQpEpUdjbcmjDLZ6VT7AUeiRSZx2ZEEp7ZQ6E1PXQ6A7d7qA4d0UMak8Zxx0rV9o2pGhqa/LQ7RiWnUOI56c5Onm6kBMPkG02YworPOHM+ohLeXZqbmA5SftzCu/Td/K/fShGmk0JBpJa3+Ys+wS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rgdKcGsP8VAEQTP9ALTx1xlBZyzAtd885z1YLOoFZcE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bxvVERdIGnCld+mv2uVTGyaxoXw+mTrJl5jqljjhTZ6kPNjX867kcU39XjnKzbtYF98drwF2K1BxbAoqXbeCJjWO3jhelDTECq5rBe33rmQvmhF1nr9oQNDe3G1rIR+7lZJs04+PU2M3qB54LT4llLB9h12Q22et1gBidNUdvOjSJKnnvkquNERdjBq2lUsohqfzlqIqjrfYTMa0vuHJb2GOpQ1/GMXFjgyRlTbXS+ScCWRDUQ3egQc0qiqoSMJ7kNpcorM1dMhghUQ+Xb/oCcc6JhKehWqcPHXUxWjv5VUxtuyNYHkbJNi7D9eCR5bAvQwQMH4t4jZ9gtT7uKt+pl8UGWQJUFBKPnSzndj6zcSEqXr7wXDfmz0DgVZKb1Url7Zyza5pH/gJUyFYN4CDMVnkDbLaCP2n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rj0pbGuM+E3K9GEs0HSFuiS4H8U6VHGuAvmgqC0JFOk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JVz3H0KFnVP2T6CeXmyL8PV65bZzX/BoDLmkzWm7sx8uCl39UJ5ALOF0xa6SxcTJCaY3NpcF1eYBH+LT+xx/BKfWcfoahAsg2NhnYQV8mVv1U8WjOpDHmdxXraruUFGWT1gc3h1dBe47R+Dc3z07RaQC7jN7hueLrTpylcwdtYgAhCjV0YMQwPH53DwRg1cE/o31A8noAYJAgwR5Pa02Ng88QDMpCEXHGVO3IfhX8468zs4IOv1D8dzhvTWT/tGJFJEUenepEhtoLE8PxkttAOma6OQjzEjhJ3+lEJIH3pIDymOnv9TrpALNJRP1TtOZElBRMHmP8xIsjzNgps+Ed0UYrYkjiYIBpPemhGUSwc6fvJ9Qtg4w59F0aGjzGwbShZ0U0YgbirRWok21zH1kwsMXBTmkl9LT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rkTePCvj52paXL4AQAdKJjRkMaoC84yGZ6vff9Q/JGc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T1QWaLduZW7Bmk7DorEINquSmcYqRWVvP1czAFmANXqFXq49boHnjyPfV2EqH4QYDWSpV68x3YjX6a3gKTJOKckkMWeMcngI8JRStoFn2akgC0xpbnYhIzOkb/I6t58NGuLnIfC5MT1+PV67I/V1Imgol9nCwfOrXytJbjSv44Z7O/h9TbfPSHt9iR0YuHkqnME/+tTbd/FR1WkGQzvl1EIhNtOyTQgoDmMkYsYOmP192Y7zI6GK9pYPusB5Xo7Q36GAgiXS72olAX4sMd7lH8Zp/M6EtyMQp7RZvUFZ4lUZ9vTlLJBWUcsShSG7gOYdERzJVGIvjs4DaudU3aQ6vAiW2808MEuXaws9CyDtm6eWlFH/4U1bewdyR498SLGm5+l6tlDda0JTzsgpDml7GkXOo0bgkkZa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rkp2q7CGPNXeSRix9JBZh92tmG8/rSX7hdP6XtHfXu0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gNOxSY5MagqSfdu1CI/kpMjTsMnPFqXmy3cnyrngGffVvwem9sxdouYyOGEESxWuA4WEViZ+nytk7+6kvlxOO5l96QtsvgC6jOlTLeWylRCcOxX7NjI6djcJsCK2zGkvsafewlmh/ZT+pygvv70IiuFrB0Rq//Ix9Jsx2tpzYRb7Gv0LPG+Tt/J0m3tIAuJAlnNbzIEjjSfR363MHmKdS2zg0dKcRSK9zHcKclcxQUBEpd1QAwyw/IWn24ZVp5ErZbnnqxHzDJBK4rkKrkrD3m3RMxGK4U+CDdZAhK1lQzFkZsSyFVrVMQ8WydzF5ZrE6kdZKwclsEoVXIHBBi2ouYxB5zDcvrmTBewmANDnWMLNDePtdipPUf4ZOgfewEHJFeMbs24fOiY2Gm7qNGaVKOheaHU9vXJg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rkpGlYugrr8TlFY3ugmGXYijbqVorZbtbXwEfhpLiKI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/baORcZ14NPe3fOVlGRNUmU3yzDD3BK4B2AjQvggGrtmPdsK3db3D57u1RrWt+T9ZJPFPgGlw0YeQOKbHJB3MVEdY6nth2J66eYUKcb2tTiTmECee8Cpor19Ep8IQzouelXf0VNa+YgnAh9tpPkQSJJ3R+mumwvLLjywQlyiFZO1fxPeT+jp/T7kTLXzXtup3PlSPPPb+fgqptAajdyf0KCAH1xE+mFdk7QL2JUqmR84FHJZyzvZOvGvKPfvP3nO8bzVR1RlqkUAubuj/LUVUYVAHfTRgoazWpaonrKX7KaZh29gqPjfrUimUfQuc4w00OKncTby02mOoG4vHpLCJDiop98Tr+rovXgEL5LJ5YRsDaEZStGG6ZWtlCqMRKATZiLEUoVGr9Vs3jKLqioyg1fd6z8/l+8q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rkz4MNwHjAHQueo4G1PLXUYseFiPkMmzRXXSCvWGZGI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jitUeVOIHNs4DYeTvfu1bxCpvGucd4i6/sg7wfk/vGmfZKomSfE+Mkwf93WdSIq7yd45oJgO87Ngj2tBLIsLoXb/l4Vna8yuqSsEJMiIo2hRvsbH5scALxTaXYgGFJfMZiSpz1EQ4LH5QVN15hzP1BtI1CRXqE8FAWTLVjIiBzHPg5g62USo+w/B8tqlCHBjhXuUB9Eow33n9yPS5Eq/Ns0q1152GqzjmqI1U0AtTohEwDwwzbGXQaSa1p7wNnLqFCcdiA67fwdpa42dfUCV+EyzpNLyJejdn7VNTrIcJBUsVP9CHX/HzxAjFJ4lhZWWK9bGm63DFUIzBgvLshymksEgiwCq/dSThx+JCRWKj1YUPUQm/1+OctDN6Lwka13tb74Nie824l+bk4hYu1wcsw2kPnqiy+4J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rnE/32oPRO59+IF+nRMiuFfPMat9RY48fyI8E6s9NBA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cyVEryZ8x7ImQ0+pSi6wwNBwxTkmTX4yFpjmJSfCEJwnfXN8VVnmi7FxJsPPwWcUIBw76WcZZMiZPuOGAFViyEC9cvFeT54yFGPBmhGCDjBGXXqXR3v8Hc4WAAOreaJ30TiwaVm7cX//3p51xEytgri0JXWHAwVYgcMCn1nV2Qxr+k6SUGR3LUEVppobNujfxXkpXwHlqIwzTcM1mpO5rVFA2PqmMVZIWIkmAKzHqEwVSMhGqMrYc6j2VNs0bH4ZXSSBsI1IGuk/+FuclNFNXkyG0wlfq9AN42O5ZIziadskBmDwwd/oYGLjGt9oASz3YQAz+My4Em6V9di4cQ3PqdZK8gQnKqDsv6jspmyHeySjkaW7PaynsSXBRsSOijTsBtfsz/OlYl+9TmTvAUimU01RaAJR8mgM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rnZ/6V+Jynyl8YpABULV7SczN8JdVjLl9Sin+oettbM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XEPJBGVVqT2Oy4FnPn2PRY+Y/rTPx2DVpCg2nxcUsKJ6MXsOsIJAgGpDZwbiRIeQl/XU+LR1td/mYfIwdPGnkztjOwE+NWkAsEl4JtWtl/6Ncy+jym2egvWzBforDmx7mmLeptZiT8qBnlSJvRrgQOTwPNzjiEOuZA4qbUKNgZMtIDSBzLfsxA5B5gvn1WmsyKoNqocNYp6CAq1pdhGAdbmWvDrK+DyBkEpKFFysc5BwLvBd1Q31ojeBFbXF6kOb0v6XVDbTU5IFvTRm/d/W2mjpuzj8f8GGls16hTh1cxMD4ddOZcLo3kN8J5mp8lMX+6C/+mxwFvy96VGej6dM5sy0Bsyd+7/64NQzF15vajTMXhmF5pCNYkkghqfDgh5zJ0k8poHSdNN/q6USIdtK9RhAqD5BI/vJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rnasMZPeWSC9Gs4hmXcTcT/1QxZ8xwGG7KVzIwAXsBQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5sn+lMLHbLC+lPxhiSDFG8D5sET8rmXwhcK9W610N4TlthNxmiOxeBH3vBKbbKCu5oaZXyzrOcSoN4Q2REX3Bn4mUGJ/wKaqwX7vwJBZguw8alz9rIm/AJ/1uSCcY+S8AZks4YWJamIFFivDgMJ18KZowIp46swReSupC9xEDSgTGzZh6NrPlyxt+T6JRYQ+jXPNqKQsiLQzD2AfEmApNsT749IDqz7mIawYkeAuZVZjQmqwR8Asvq+nJydpISFQUxulYIMeL9jpJfw3jWyylsHkFRZMApJK12VPbdLSGYePPELNDGmZIQWSGbo7IBgD1RZe7c1CtZ4VMStDXS4gbrARjrKJlQdDANVFAdWc9rn0eXdZzDEW6hBXdHC5D//q5YILwjKUKO5llJcO4MgWlRG56Zx6yVV0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rngVLhd71d85oA+h8f/M15T7Cx6kW7pTBOJOgt4fp70", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WrBVpfNkmbhzpPCLABKldYYKz0xmW1stAcE7GrOwLBS+OipD0DmvUe7x7up6+LYnCWfjP0BU9/OgXQBdrJ6yWeOxF2Eq+f4ZXKoAOsODWJ9jp9vTvCfzrpva1edvvE9PBWCD2OjtWsf8zGyhZauRv14lE0ZCzUNG18CQCQyX+fi5UULhqSm8xo39ZSH53naulhSQqiAvpZfaK7nIp4nsiy7QZRpix0tOjMw0k2cIXNGYbXXGC230+xetkVSPRjN/tHpkkQ6J4VuwHffY3/cs9L7/49Inx7wB56izr9cqsWRZ48ZyvKVjpRwif93hm3eur05zX3+REoWmSt732WdNnrZ80RwqNrsHqJuHCy3fkI/s8zxgYILNo3Z7AT+Ia+O+5SPVQx+3yvEzgS02A8adSX/NnLwXFmq/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ro7nCuy60B2OXpqB14cJ5Uo5eciJyFj3X2VV9scb7GM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9VQVONUnYfkjobJp6y692FXcGOvGP6vFNTN6mIwXgzf9Vi5QQd4cudT7ki5Cur+9mGgXJQ61/4LY33Jv43uPmgsnevGIdlAQ/RZzEAbqF/xVlmEiOzMtCHcEpgnNhW7Qk5r1GWKRIAYU0LqLenWWdUTHIH3gVHymd/OAhrjyIbgSc2nm3QlrQHmHMiH5YzYS1mV29fgpdb2iB5BReo8jN/5jA37N9MxCj6DAxZBuDcKoA6x9w1XZQxYlvh/FeHWIRuvsuYCMgk5R/YtEugmPXMwBwxswTOJmXCCp6TjLn4l8Lui7gH88EVJEasnt9WXuMcA4XI04rm3fPRaucqGXyJULpwkerfXPhsKTHJHXmKd+3kY55aI4OTQX1Fbud3bpF+enfjRI0VM0tZlCIev/xizta9U0TiXr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "roX/Cfalt5Nz6I5ecbD5nV8oyIJ93H/gqnHgbybBlr8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "R8UvFrkPITObQQhQ5XhPYL43lcSMpTnQBReZ2+g6Dk6/NiqM1UahehDy775pysFqde5c6zYYsMhM+329Y6sdrlK/tzs8qSXCpu458GSBR/MW8Ktt5sNTgrE43FR6gD2ztcxLxpiQsDktO9/u6PDcaFUL6mP3QLCF7lB25dtsLx0GyfFuEMXVyLDlWt/2pUkq24hdYMyLyZIuorsxILwD/Y0KZ4c+6pw4bRyTADjO1yxRRs8mv8mHIWoP7fc006Poa2S+c2fBV+HXtvVXOc57DpXzjodsaPEPq7G5WXcbxj8uZMsTuZJ1OjRbxtKD/pYkcO3u2QBzPnwszZbfGLkHuQ7l6MBLMf5SLtkRm4vSez44r5x0o+cSq0BXgAENXl40qbe21/8OooaQorqY+PH6R1ZW2yrFuSGZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rp8qAbnEFL7PVUl08o2nYeq8U9tp41rsea9OUdWR+oQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FknAhgxeDAgSYcuG4vgGCECb+wkMT1DELnI3tqAe9CFNhVDOifu1sYtsbIoFh4Q1SbKEwiHAdfWj9Ck9JdP3QrXDuBrm1ishBjI++VVTiuH3iotUlRvyTBkk60EDTBaRgw2Ap7Af9aBpPbN9DhMSk2GgZOxqqqMEY0ZXvFOFXmIlgZpOGAnSuz5JKF+XFyU/xNwepKQPapnyjS4RQaCpVyPbc3RGVsgqX1blG9vFff5LmthjlscWZcKFhDL/yeeoLAP2bOMT8CeG0MfpGIXgWZVTEw86DGQh0fktvvuKXXR59f9OAgZIvXHCEHUDxYR8TvVd7EqL6xpDutwBCzmmwqMOxV6naPFHdVe+TCkjjHeI+OTiNux39Lfn3xrEA4g5DOTjaLcM6/ClNUSIYwbRsxq2CLqMipJ/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rqQUqI14+tX6cjQXYokJe6jy0MtZd8dSmEUw9hwV50E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Wvhgr7SQfYyjz4g2ZlXaExlmQNL6/wol1DqpffupaJyAQ1eLxx491p3XQIN64Upyif2EhbDRUqZchF+HBe8WAm4TpHJIe9suTzQnwGXADlDPkE5KWYlhpHsvSs4xPi37yEFeqKCCE3ALAks+Y5R2cONW5mXdGp/JRChwdP7E0csl+DweKI+/Ej6mRxhrQ6orYoMGuwCNhlbkP+cqzSWoiEFK5hIX7HHvNMmVl5FROHMuSC3rgxRVPs90jXHgijUyimDxchbwQJm60gVbluAId0puTPtDYntCRZwjaweNIFp6hUdJ+QCKIZD8GknScEYhBL+GBlI/Vrs4Ty4gHd7ih1FzyiiZwXEUbbFIjGHanZdsPgL6k3EkEjg22G+xeUOlNfwZe8vQCjDD/wZLiLzDV/q0NBkpR5Nr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rqrfExv7Isk1eM7C/+8k5s63eaoI/TszuhVaV/vkWy8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o55vhHw3CY2z910VS45h6FUavbueJHGbE4khOytKV833YPwdlHKuJuZYQ69jvckNXAvFMbKmHniRYhY5aU3GiJQisCFbm2mpRE6IlCJp/jUPkAM4w+Eyf8AePSiOpEiF4LKJi8p5/OWnWGT+NQA8tAp1hFZbAndpj/eIj1BxKLdp3LyxEL5ruA26bLh5BRW8FcPDdMHgcPpE/9xHXrgtev8kJTdZgoSImawmJg+rHWnqQO5rYNVdBxODOzGo4Iyqd2wcAK6G96AmWVS/v/4987/B5OZiLJwWBmb89+DXl8YGzMNYG5I0gyMD2FbKY54QcvnCqYx3WGIXmbY4RrUet2JtILueNwX9E6LMAI2+zpsuaW60BBMMzRshF6aShQRS8XRxVYDaDO7fdYu5E4hXeJAmE/iDsZ63", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rriwvxeBYAMulo1onxVG/n8Qq2kSjSLuTv0Ow24I8T0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ExYq7jFgCbjJLAh+rXgGh5+yUl/JiS9VECNqxEQ+ZA0c7ygUY15yyGjwbnhMSvAfzusoSl3vkZgZwPdJxOAyG9Co4HIc9JyINJ7vuy+ZQ9VefBufh1e6kRe+GQ9uLTTPmOhkN+e++DHFHT41rwIpwYCXGyEcQZ2fa2eZZHeRIe+dmsiEEOs28F1DCx77fnYZsSE4k4xINd7NLZ+nip1F9kh0dAfGqVk5yxH2mAAB9AYGw3fgGtguWIPfzeDKFA1T8sUqUzTyWt89KIG7x49sYFi1f44+moyerTEDrXrVkOOOiVP0YHPPfPMHiMKTvHDu7v8ZEf2TUnRF6vNYRIXPesmVeyreiUD0MwpZQTD2uDqHrDmgL6yZj6D0epRijPsEj3kEYqa0lOhydgH3EskQtsxMPB9r+RkH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rrpUKynmN/b5P64TZgqxL9G0+qZaxFV8I7EEKHUrno0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EO6dwXpwFWllEMc/UqgpzXilpDT8blJrpLcmuj7ZI0zbT7BhUQ2aDMqb8oT3UYoT7HzoA5jgiBpNBVeM2RPh/DNM0UXUAYSp4LyYnBxrsSSX2bkdzZelaNo23vXrRRx5FI7tdNXhjNfQIm2eSbe5OMMg5wMl4kg7do1nf3GaE3hLN69PcJ/3b36Fu84mYnPRomXXoPAeZ/TqC8xERN5oXbsmAuMS2ArvB8CMt9jrgeHH+xP9wglem5UCHvzVOBj1IksBv2d3PpR9xh8YrJcDGGxAEWzaIUZoZde3tuSNbTjytgaT62aAnoM1TMGiOah29Y2iKlaap6LZ+o1FHeBaKHhiUQiyRb/h0jhq9dyLtWze51DxIvHwzFWcIAOuMHxcTLEmKmVehqAWrWZfiTXsd8ANW6rQ6T8C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rrvCYqN2xV2M6bFWXl00c5eQ34kyVC4gIVv4roMaYKo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OLdIavAcEbHseZiSlgbG+9z7KgRFsbBgN/LEL/vw0nVuEf46JiYE6tLnmnAhfV38XnsGJuM+XPHss2rDLS6IiY5ZmjHNJoUibN6cqP6xUGkhGE2Kyq771aN5/1W9hFyd9RsFTUtBBG/ArYSt0ogru/a3KALjwkQ3tU/t0BsjFnTIG9aOsVErcA6otFRcXAC0HH6LN8YZgIyRmjU+t0rGHK8m6tkTsJjY5cAIlj+B+8trK6Zat8o4kZlfhZa2vw5xlHaStZQxApZ+gcNINJktkKVwCFCZBw6n44c55KuAAqVml6QOvxBzecHKvk4s+8H5WJ/vEaFeXCC8nZJ3PuM7UrWUfZEnUeVJtglTuzeM3MqD3FJAN4RUt+6++Mid5z7HVhSH9TCNVWxi4NHAO9RzasZ95/sNYuNa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rrx4Rvh/nA4ZP37VPByNc+cnKnKV11mjwn0VcGe/a2A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jZCGcHcZSpjkPs+pghfCSUUv0PuRhCWln1ASHLnBQ44je+LR+j9Yg99Kqt85JBfKZX97Rm6hZsub0ubw5+PdXyuVONYuKsNBvjVzVYSwZrFvkoWbfv5pKwEJWKz5/7XrepPnecowsikPiWT5nSGu9yFDx8p4i5QGXFPvlXhQiJ83Mn0lYc8l0GOWl8qznItb/W67Uo2+0JzpguDW6Y+oy0YG+oBqFXWsod0Yv29VVYgrdqtoflmY/uiRc/OCwTkE5uL/0TqyYl8rM9EO/zdSqxD3I78QVHldFljsfT4eYUhcF/eCIBWAbSzYVGAPahzOHoBWtRD5ICZcj6onMkkys0hCPluHy/QAX4h/6e0AL84eGvJp/JtEPLlGwhDgX6o52MrLU+z9rAoS8wQC7xWYjM6gHqb1gxHk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rtASff/s3FU+RjOFB21QVGS2V1vBu+fF3C0JejH8GVE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "poZMWavt+PXMHjJL8sERoye9wgJGkwh6fGfdZbvouXmzQAfAuPrUM14GkTwNIJVTsMLefPlUKThEKT+ZOktfplI2/ERTJxcv34n3yo6GoHKSHgukQsAbtL6CYaFBQ/qnt1WjnK5/zHvC+2rLH7yH2txOuIGSVfQvYcYfXWAS5oV/FuDMmp7byksAyH/Wg+SLetzhK+9IxgcGbcpAQfkOVJaqNb5SJx3wprk5n6EF18i8OYRwluCzlAcQlRVHFGOLG+JySo12I2bRnb1C9F1XQA6ErUeI0ctFsMs0XF28ptZF3pF1QIMRd/+LJb5Dxf7BX307cPS4/tMs0nj4rtmU8Q6LqpDUL0lbrse063YRNinjFmd9Lwj4hrkUGuknl7gMSoFnKaeo4XgBJ88OCyAR258SUUC16+9q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rtdSHXoGomg4ebmHmL4WrMst06+uRCPng6XXAhmAkAI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "APNxxg4BWwRmIppIpIk6rhI1qYu2jHyxZA4evk03Hz4qWwmapGMRxXA0p35ZZRkhiW5Xl1wMtb3qH38cRMUigWMBKpizj87wqT5fMKmOnZnCNVX273AnnQyjKmX0YqfGnJZR8EYMH16pL+kNWxN51A6QdwZWCgNLBNO1AlqSLuJddTTAw5iiQI8UVA0n7nZd0aGOjqzOXFP0zbOMuckOyqun7c56oU/WzmAv1iC1QyMPNOmqRQcWC1kDQsBamvn5UNAWQbz+SCnqic7a7CbdhynZ13ovKTSpI3r9soGE8Znbr4A4xyho8MuN54sFAJnY00rLelCorDykhgjD6nh/7xoVmTgcNZQOqWv4zsheewL4iPk7G1+f9SHtxwZp6jeptwUPreVVSWH98EWip666RezI6PMs4fbB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ru8p4txbFDonIO9ZiEPT+/Sg+pukt21yRYihKxM51PI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "juW3BRXXLM6RHQrgvZWr0hr79jDrV9sQrfY59F2EH0n++snq9RcuBQOAWyAdbjwlmpMNQ0rpfTKoMno6ZGy6kbNuZErkuuxasCq8SeOxEHRDc5ltg5/Y0l+kaq4B0cmWhjVCplcxsEtii32N8yaVuAcsNXX1rk0/89jWae3ZSZf/gTuLsoUiQoSmHnP5VeWQ0FRtw4Nrdg3G9soiImeiv8TEmtivuO4ZEWV9UC5JFJ4s5ys/e3BTM6XdpfLY5s5ovZ0KnbbDh9/sohF63KoAY0U5ve8oM2CTys+zn+sPa8HC/DHaFZOX0dfR1N3PnYFdXKte7CcH7UrqAM1eyBlAfzrRn1zgZNLvqY2UqUOZhYQ6s1ZNBWaFBTZJLenlWmkEgJnsYrHhLEu4rTv5IzBvA5SLXzkLrzq1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ruWvECMMsaX+ZKis4Ca767FDvqRmLwzLHHE/TtSqss4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0NzeyppExZsRkVRApkO1EpgcNIMmGQKk2Hn4w4z086xWLV7jpK4+fsGlSFFW08YPs0PYvkARUOHCSGOPFPys5s2bD1JxFUFsD1xH2UTDYOJw37kQbooRIVbZ6efLNiVJRt0tnC+V/iT6GSpSvhPmpQwB6Ux+c5VFqHjELH30QIo+eSoxRMO08zaYyRc2Y60mnPJJbWqQl4n4zRUpD31KgzlbYbKQ2es4NE9t9GHqZT2QGpb4c/ZOL3FDXaaY0sfBLOyVm8HEvQ4/g93rd8z0BfSrXwqHY3VJ6qIdddwuYx+gdwn+34VP2lULMunDyl6xMTkskk48K0j+ygjB8nx0SfwTCR5epOmvgEDLkA4aZJvz0iK4GKZMVJs/h4Qk/UbwxnCe+Uh5wm6iYH8kJ7oeN1QcTl+1jdOO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rwIZUUdUhWNmslZTMxWYAmhZmVCq0+kfR13xq9DN454", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fkVz9OoU4HpdKYu35TMtQovsrMmWz0K9HzHvrtwMhm2hFXgFFq2buYwr3/hGtaLkbVPdKvx3g1pdEyfy2sxRH0bOcFHLwTy2V3/KMkMbb2+Noarjnztw9DaXVmXxA0XD6cmO6pOU8h6luRnRa4nu0yIhD0wvBu8dGH8iXxjuupzpVr28euQDyH+5qQ8ohLFTyJR6/I4GAXtIgJbPx2/mFLE9PCQ0oy8maQiQtP+8qEQuUGYSO9V9xTHZR/N+UGg5Of5LjcZ9A7No8qs9ZIBN8yKJjRzRCNUBIp2+6kqjlZm1VhjikVblm35uLpQbgBm1xZbNbyv1cJ1Xe0rkcGXmQFTjL28vZ5pVW7oSBTGEivXB5JUUnQQ9pAErQfd2UaF0VLTojGDnAmRKM4u9MoA/HwEHfPouJJHh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rwVSvBGdGWgqd87lazu3Hte7osGMhLvWizqVvpe/DHc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "66Kf5jAE1TshuNUb1mUoNLxuM2Hl09vqhM6kqkHq+jnZY9XWDo7OhzIMerwRSI6JqOzCUOybwuAuh/OeCRW00rqd0jQ6qLmSYgjp3gWTCDjhWfnWUuWZp71mTKJgj4WubPjHxGOJ9NOvV6G5H+VfM8WWkJoas0aiwCUd6PNcLaZtr7AHZ+DHVNnOgg7+MKsAbhh+QPW5hTCqdsKkfUzPdleFvW3fPNXQibOoRMbZsZtGzDOi74oIlgRYoLiPPnuPWh6OImjonCNO6Q111xiG8c7D/moBLaWjgWzYDPV3lFhNCh9Z9wewTuCn3/PEHsHfvR1ETAvePNLa/XI81a3kuc33jgkE0Zph89DdmNzCaj8sx/agyZcn65bhdHSDMTPk+Iz6AU6gv4PPCgP+hvmvnQmEF/t9MNb3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rwi6JcrsnfANtW6sLCrZ6xQhamDSWuBFh4K76BVU5z4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oUoNau6v1QZSXlb5Ae9zoOoDW9k4B+u52pRiN2ZKKDY0xZO6GTeyyL86U8usSAe3I8U83a+4OeAlniwXTVjM6G1SkHsbHMk1mm+f2TlyQ1xQ8wHL66JHfShghnE7X8xHWvs1gFdeaIINI0EVJGb9YgazHhVIZlW+RGNb64KxEO4b2GIy1Nak9Jg6RkN/5IFeNmrZV8sErAwBaas6qP9oFIxhlenniDRQvih1HqE0Sssw2knFVArkkO2XeyA65lFgtFuqPON8uIONsnjmLyM5OTRpWDPbxEFshzg1kaSm7Fl372bFC4QeWtBrHjhBSKpyV9GDzYQzgxoZ7FVfVGMlm8qvPtzwqzNVnrkPEPRlgLDX3Zjt3BgiSPp6viovRhJgWMatNxnB/nWWGpl/+0J52JTJIvDLnD5x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rxCjTsTEJ7vwHgT78Qs9gXqQbzmrpUAzxjpV9F1t/LY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9LdGqcgGUFzMvg3zeLLnFGdlMQ2tl4gqTLeIfP/KQsC55I5MdCQkPjVBnSWLR9j8ObZ0D2hbJ14YKj7qjQfJtnF4/YHYIph5HmGSiTtpZJstyP7lQRZo2LmVKRtGyDJcnLorfzC+qjAmchlk0RVo3hgDCkJm+PajZNHroiT/z9E8Q7nZ1LL5HPglG7k0CBABNl1SAwG8TBWTmvOoB6TV+SBc6ripiY3iHY171b3g+eGhX7yqPkqS2AySypGTKH8wczntybbPs05KduFoDEFeY0UdeXyaLrhh024lnNFASL0GlJWRcXDAdMpy3mH9wdozmEvttYTRGY7gTGPx4IWcwHerXkKpRR1VG1aEgG/yhFUzomEsOU9h5wD17upHSuZdGI7gpbjIWQH7HUXzbXdv8FfPKM9x/Bsj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rxUK/FzhsQ3PiBodl58HG9VhZIh/YQ9xAL0I6byWFYw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P+YIMj8kLKoGYX+41PL2GujnymSrPmKH9pfYGic68cNZba6hmyRIZB4f6wi6+vT4FB3iHO2/GQrUr4Ya+8N3WmjHa5zjEmW1yHndxWgzLP7dgbI2XWcNRwH/wNAYddVwBynoJrXV/vbOqTGprMTUS1PiMLOm37k47gqh9BWxdQZHj5WttYTQNGJ/q9rmtyYWYHYPGmmwQe8RvXiN+J7nke96dldxSfyQmCwgcJppYR5rpWKRC58ACMQQGOn71xV/Y1Dw7pw5RCYioJBgrexrdut0FPegDHWa/Y9VKI7PuQIgvUUbHQXchBdUDN67Enu6n6QX5bFYfBwBAVU2hNEtpoq95NtUCRMs6sEN6UBgxFKhajSaSREnWO2ZsWnRBuj/wtpB92hIbSIgftYlwNY5Xk/4d+7imAW/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ryKvtrlRo1MOeJeHi5LBQuZDn/+HhsFvq8wvhYzoDTw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pRP60g/paWMON0DtjNEr+D0Y1DpfoDRmewHV4Et1UkyDsIve2Rxu2zpIgf94GEF/PzKVkqDiJgVI9ftp2m5r0r2lg/BoI4lc4qZWC/J8LVQWdCNO0sdg4Ncup+vQZxjHSQ2sCygOaPFuN6rvJL7LDWNDD0FduEdFzxxcICpBmyxtxLyw1UGbr52dzlQZISC+JoBC1nf2wP7GWAD4jl7+xXUBpBOL6ilYKdB3wvjPgmjHPhdofNfP3ijMz9NmF6eDzdNu2IXBWLEsf6JtAsuXooO87EezN1KZeXzc1F6GS1gaFE8z2ptHnNw5KZgYa//GA/d4BXJs2K/vq51+uJD4mVesKVb5WSG0yALQLUy2K5EHTzPXHpc4yYsOLGLN0vL4y+3vsNbKoPQ4c1mkuelM5m1trwVOO/z8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ryRXDZ/LlfsqeYlwRLbjhWmusfDk25ud1zvjzq0nesU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "55oP6cWOPE56/+O9EmziWQxyr4yseAroa2JCUU8roc0iIihJRHa2dMThjfYkpucZVtIAWS99jnU3xFnkc4S0yft6+LTymfdVGvLAjgYjGc53BDtwwHgZfxI+HzuQ2l8Jcn73LEYCQcGN/M6Fha+ncZdlxGc2T4x8cGkjK8k2sqbXeMvd+SPRGFlR6tamJw2JJViZjsdoHkaLsOAlBWw/uByhU/oBaBm59kReY6IEijdGF+FKTBCxc6knptT4gj2QvM005Bi7k6xc/MkLzvRU3RZwUXtmz3+jSpGw934DyoZ8DrUm56AJYzL79sdsR5JJFHBQHZ3zIEyiDz9ss0oeOw+1H/vhv4pr6fxeAj4ThgGflGy6MVTbGTLl5CND6BmMAMAwWruZ49iMwvt5CQeKfb2lfbDbU79O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rzb1eL/WXlQAku9tXTvlhtmAiMllkUrX+2GCmlOMmlQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lJvbDHqp7D8tEKxEiy3ac4/KxxWezwc1wmIsIflUgQhUBQBbgC36cVyqRYYdr49O4njCW2yB2m+0rwpMQerg2HmlDFZk+d82oU4hjz/1QDRVNxcmpGXiUoCCXIy8APfCgkRrYYLdMe+/oINC2SamWl8BCqu1LFInQv9KI5/jtaOoWEqGGfSdjoVS0oe8F8bAV50+Ribyc/sCrid+gRAqIeOAlcRrcwi7qhccTIU2Uf2wyCgc19iMpMMHRM/MH1cqf/+K6tREN2BYkqbCZZeMoPL9IqK7Veh+y2xbAOXJG0aAPILLrKW5Hzou5E69NDADFGHJZpNQ21Ih9WZzXPsltPZ33PtAjrgfLZQVQBqIKkAP2awhtOGRKm58Qae3/2jI8lKpDMwzkT79qGkvkuQBnsJcJs+HLLkV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "rzgO3SAk3VEMQgZp/z2nMJt9dlO/u6umThR5as0Lvm8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VWzQd3dE/gglxgpgbcWHhgpQbyyhAvR4F7h8iQIwmNSP5y7ZupFDwt6kYESuPDqs2bNJ4pEwZyexMG9ddsQunNO3IZHxpdgeVWHw6PSiU4RrYqUxKsDLtInkyHQM+xUUvlzsu46CfBoJQoSW3w0xR26683PAoc7EwW7vhAvX0igQRt8GYinR2PLoOYfTkcU+aMMTAtGlT+eCp+H7+TNGRX0VAN9xwI/nu5CF8VIDbDQEz0XGLZybDVqek/hvVf7oV1vtRviEvse7muB+JrCX1KV8gX8YwNEhwi6SMuDlyZsPQVtZjYrXdyzotCcfnGh+GF10dJlID/EttZZExrQ5O1THgHrCWHL6gbo4wtH4ZOms3EeupTw/C5ILks12PiOUDoy9USm1/4Vq7wSa/Hf91v21i8w9l5Zm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "s+JGW76DQKbq6jVyEKznZF+J9TTTsJ5cQvdSrAmNh1Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iLL2SJRm4L3HQcKNltHGCt9Ywu1iAB57OmkPnXCdge3wa7gnGnqMFZAT9LR9lGRv6D5bzY9RHyvXYBdJof6MkQMO3dUBCmHwNXUl5x+Y1PXhlmZLKvoYwawSRJjORp4/xYAq17hsW3ZSZARfcIj/qCD+3sBTTXZEhJF7FRLidjyrmobDEwPXPiZ5dwAwfClTHFJ127jFfVBiZxRMrG704av8+5sVy1GexT/LBPB/IpcP5iscbLYJrqw1Ms+z2hOlNuSQs5ScqhAJ+Xdz0T1gBakG/vZ9kiI/XzEXnUNRGa9oO4AGN7MfPsE0CzZH0qZhrDiP+hzYhA//To3R1j2sRYTvGMCi32u065vUdX3g4SvQlaLxW6KBC+1EUQjDebaBNDivyHzK421OEGnLztSJHSh7hWzobNdK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "s/q83ASUKzaL8TrMc5uVJdCB5rn1Rq1kMh268Cgx98w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NgHJ3O1LE5BuIPKj5qRNPEdqLSUfUrT0HtrymJ0ciwn2hcbf8QaBsJdDptYW43B9k249zazqtMfcho6g+Pzif4M1wbBx0+LE2WiEA8P6P0Eh+mwGgPc8uWyt4T7dmVO7OOszsC8RAYEgjMj0Y01nvrkgXENbnM8E4SNSwfyMjew+HlAb4TT2w3wdF6VAG750Ojod7Ag0HEPYl53vv8L3iADwgIdHjWVoKnchKt5xJ4HN2/j1W5YNvdQt5WBfb9XDQER7nVcfiIv1Udzx7xZGcXCOjdn/RYmyS21YvtBMKA30PFTXGyf76Wgt8TKWWxahJrVbNdBm1eVLeENLbB4fh0/yViOxzeCZMsmec1JsUtB/Cr5vVOCZh5AkW75JYbG8abkNlLPORjF62ieDsFXli1tEJB2HbfEx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "s0EgN/81051xMKSxWAMDiDjco5xVuw4fNURCSrhGO6w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WXEIWQYRl2irG9hyonBS1qoNILLKvxjLLeCmf+xqTalQb2pzsSiWNe72wxGDweAFWJN3kdB9AM3k1dNZ0ChnB925C2ggC4KpJD2ZCkCHcCviPW7sTo/4Zq0s0j0yQSXhXpBWDs/0Mo0AWF9/B9YgufHCgcWeBfUM1NT41tBIo0XPfcSYJGIZPDsdBzYyOyWok/LD2MdNa8UeIg+lzxg9HcMnKL3KJTH2ik/7SZokM52GU7BzYXnRQWLYGjipPmuds+qBBxiPVbYZh/tin/ptAw46i0bBD/0DToQhgNy4jCB73VZAK7d4CnFSySbyYn5izjUPBZCTWl2MEfL2oND4drLrOLfqzYpNXi3ayoc3fiQawCOhfTps+x7/N/VwWr3J80oJJtpw+xL/We63HUTOjHGp//bOT8iC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "s0ZhOSYyUJ+wwucQMveK6wI4RJ3QJXjGedo/KNoWMzU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BXZos25XFc7zP8hgogN7Fm4Hg284tGR3x3bdTGomAV2LQEZQQkb7Q8grlb8rj4SB6kGTLFJfFqY9DUJC5ok1ZymwQlswJBgT95kWsO1QTOw+2Y7ghcwipTOg6xETzliK5sy+BfxBtQPjdKsq4P4dqkI1aKtEGr2dN91bKAPwxpn/44NLQ0z1bAufF7rxMPIil1vb5rzfUDRfp4MwdKaIWrqsjW0FSbXxDPiaiem/5IQ6YBXK1znlBw/X40nU3jCG94PraoUVpaX/dThBCCdxkvSgpXgqZbeFyHBjZTMeA8NN2A9kpYuv+bEyRJk2w3HvR1ksD5rXfvg9dPceKIvfJAEmVLhGOWjvoAB6qzTQXjnsvYnEcYkU9j35tZ4W3xYD/Ef9S5uK3kzB2jdPR14nonuSTIxNPub8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "s3a4Wg+yYJgOHpMWWcvBRMPRie/zF1urwRvCnei5tUA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/DCCQxVe31DZ/Y9NtflcvObe3TeVVOU2Q7nmgI1ZdaHYP3TPzxYaUhzFbXCt6Azo65ZABpF50vWAsnsw+Lsts5Zsx3qDt1KR6khVTTiBSPxYsUKljvyVBEh8gfvgzGbUOUGpN/Mq/hwp4FE58kbbBh3GPjlE6YZAa4XAryoEuNLeL5aMfN2Fy8iRKkV+dL3G2fQO8zz1Cn2RBl+5xNn/KQA0J/mssSiXtUZK2GuMWLt+f7qR8c7HJviCB4qmGF77/iOWeYEeaMofINzF7phv1rXa6h/4lvxGlScYq2nhUDiIlE17HZhFXn+HGVxGzGZkQYxh7AZAiesYfYpzAtksxgjTvq20X9QXDcSqagSXLi/MayzrffsC4Gbxqj2Bq4tbZVdVJ7drBTVW1/tJFSsW5V5QI2Rur/YN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "s4GON6s14h6w8lphcESeRdUsXXqOPhh12WjVlE92iOA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "17c/C0zkxhDcNeVCg0pr7bWbYZMUKCCAtL/laBcxr/rdhg8O58kD6YJ3nSusDH3whWc4dXf/vb8JWZWCc8JW92+vhl8V+dL3FSVTG1zlN+79h3Z426BzI1Uf69YN9VlPMdLe2wwsdts1de1BJvNo1ibzkGPK6A0bMrHYIxMWL1xg+ftGg5TEv2JOX5T97iOyzeQ1TjWS1CH6XSuW5RjDShVDGVcVZe8VzbLnydKRIrFg4U6ICaTKuc/dcRUD4K3G6EZQWRI9tiXQRJQNGGcbL0y7QsUMdES45knDj2DyvKR36Y7hLkVP7iDLf2Mg26zaYh+qAMOyV2OkDmgN2Utu6aFOYUrY324YBLJFL/6NzWO9r+ipDTZohLPjX7HnCdlj/GiGNHMTxmgvmV98yH66porsyqpyBHwz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "s6hutxu21fmI0QcJqICJiOalzhKHu04B7uw/WMTIRvI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JJIgJ4DqSUB29zq1BO/Wl6Nf9Qeq5Q5Svufq4/qDUhgytP6LldW4MaL6hB4sV0BNOVp6K903ocYvc+jvwaNEstyXy/IWmQGxslhf8YalyTPUKTN0bHmH//q8AorchB/ndj1kQuDxR+kAGEnOKQEwErrWnG1cqY8mR4hSwWUTu3oFPvq72iMjTbPVedBYHjYSD1go+UCuF7qv3Xr3PMEV+mGrGoF8b4xvE22EM+z2uhC+6DQdxx7llXZ80YSOJQPCUSUDeyu0HBJhhQagbLKJewBHEXByR9ZujyIR1evljuWkC7tFtN3K5TUFQmoWTqZpZoaLcjNDQqG+q6fud/vDIRi3RtjBrdtL1hKkVAhGA0JOKWC/9bK2gM0CsOm3ADqpyIuCQwUgKhRlCeJ1P9doY5YGL0M/DaBK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "s6oakfYmlslMApn7/6rO2+1pSVN3fGa6m8SygJaSATI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8JosC+hMu7f8laUy7q+n+OZ0Tat41MGqDvXg0tLgQn4tpr/bxRqPSjSq7Wucc4Hsn6itg378fZtRjYezYEnYnsUa4qpKUDc680CTpKisO/kBiBQPhVOBk9/Krc3bNg3Jytgx22nlfdbNcKDpkFaDNwBGWa8CmWYOzS8j9Huopk27OnjL8uop2F69ObLeWlNuEVFYpH2VjMKhIBiLQutkM9P7pK2oPncb9FBeqq2OcIly6e9GHnk7NOLDetQoeI/LxSvb775C1buUdBoyK5dU3wWGlr6Z9RxUZgjxM198tS6/Oohdus3K2X6aeV7oXiHqeWaTHQSPEG1gS4OmR6u9QNB2t1LDPrQ9A5ju/j0ABjp7oB9O/ma8caxUt0IEZvBaym1CXDO6Rol6uQOvcTRUMCKWY7TUrsUf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "s7E/5xnsNCzV5A4YBduFs6BvWps/CvUtjC+5SzCZhnc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YuBYkCzvfB0rhg+Lmx9pRT2QffrqLMV6FEhpTYl4tg/qyaR4J8kDW+OfVOpvYoNo96/6S4fgwUKmq1zzn5ftquTL1x4wZb811OO0xHwhMUb+11gA32nETDdCEE9K3IfMEBvfJyVRF6w9MIRSEza/TD1mK0odKTIq/+Ery0hh3Sf3UvukLt40QM4SFlxUdEKSdo2CCNclroOuYxqHcHwoyUnhrHd0RVjtBxvJYsM7f/ULnB2amRSJTI/djEFQDFqfHMKdOd3Sy6iWF77lRIzCKfL9ntwTkWBBjCPZAm1dikVFQrc8vtc6imQpHxmwrchAOKETVOo91HCN+IOFZlQR8EZDRldl4oZWjOfCMCd7aS2PCFF04QI9ztm4rfHuKwz2157URof9Y0N+Xy2IdiZnmG8FJpxoPVmy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "s8dmTV+uMGZMQR0aR6klF+3sonok/ZZtrWhrbGU6lkk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CUmptmPw1XxxEDbIjriTy9bri35yeBvOVkdMm1Z0Pi/wE7bas8+YrnQps2D1vjI9C1WslN/6IAEm59Jyl/swMZJN6s9aa5v0nuOAwByHL4tK/ecS9ctrRGwRjk8iMBeO5o5NozOQ7tZx80mWToMld9dgli1FvQK4UzWiza577QvwMqRmfR1qvkjj2qpG/JxF6DcmdwHaqxbLPFkzmuQjObSDv8/J81mO4b2wOq17j33DKECz3k+wetdSWyRi9z6Rkr7wnoSLD/FawsEba4p7JftTwiz4fnMd9lYh4SNkuvU7n8tFQWM9SIiaawSfKc2lgKypqC77hMVd9K+sapaztQNqzuyvLBS52ZHyZDUWadz43poiSgGp3RlBAA1iXLzQI339+HY6fQuWW42kSB5KrstJ/j7UEvo5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "s8e1poTz1r6yCbH0UxiWXwjn/0t5uLktrGfX2TyIEr4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7wJVs8QottO8dtcDtY0VxA9DuIeXPXZq26Ts+N52M21hNlqWAOgJphUKEv3Vlnep9Yc0mZd5aTEyVb0ja2E1glgwM8HDBvOg1NN5wHfHDFAwZgzrQkDZb98/7moCA+piwf/7eFNBW0e5I9b3FNkMQ2li0PIg+KL1fG/h/WRviyTU19aW2Qzn9HNjAcOGUo3zdL7En1NxucPLf93jZ10VMGW+JTATu1PLNZDaefZyWLBcATe/hE/jtxw71F1ehP9CqSNQkRyVYoWhEfjsXJFqTTE2EnnbeKmQAR/5QRJ4MqBIBF7V9UUmQYJjgfZSHXc24N2t22wbJbeJAlArKBJ5Cn4RytaT+e7eDNRf7gZfTvDyc1APJK0Li0J3BiSIOE7N7k1uhStMcR3KThjvckUYbdF+cBzbtfGo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sA7x/1DuqL2e14enUg8xF7ukLzg/ab16VJI3tA3iDA8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "t/1s/GfYvTQCsva2mV4UszIc7N3E1Do/h56s+cDjsXBPz2klxISQEv9DVSUWfBsuue67bHjcnwkv6FU25qfiboZPo1921oF6yQm8Jt48CrFemRhmUxKtxnnTVw2op8iXRQbho/4rTPNSqm1exvQrR0raA9b/3bBTFrqFouHDjFL5iJHDAOwR9PH6QmSHXYujhKuz9y58uvT6iWfUrCf1NNL0pkFesNGKuROWXRPMNSmG7iy1pYpNhez4WSsT3i35wqpPeNDEApa9bBSORGgw7nCZ0Y10mMolXGSde0RR//YbENkFDqWV4Ry+b/yOIQzYjyOPrGDTdLfCqkqSJ2eYNtkPmsoIhAQL8vUKpIAIw6WMZfTp5/qwbz5/K6YX+JCLQxbLorNLVj6X4FxeRqqGKqivLm4HlKp3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sCftyKa1IiiErLgav9JO6FQpDg9gNeyKxtzmIz24Ouk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uWqEv7O41ZFHC9a+3ujSZLs0byy8v4xCNInQgXdnaxQHCH7gzn8oyJv6AmP+TGPdXR40eiIfr+ZH9D3CkJE1JN66a9PHULpw4b7sygKwb7SGGe6FJG29SsB1x9eBnBq5+Rr5BIqKXfeTAIWr7xOAOsv1jEWZCPvN10IPbjNtRYGNhpiuJs7V7LL9yOmAJaHmQTJcLtCuyPu5f//lWScTi5a2Jkc9hnnLwMYSZdB6HB3GVzUTGeubXIyJv/5MmPkrmadE6hZRPadXtD+WLDzepBmQymr9UyHEyXEGIPxmDhuvU9UHWKyBCaJ5FHZEEDOTqd53n4bgDI8ygXxCAzjjwOLM2lwsCPRtyuX+4YQxnUmioKUTDp6MkxabNxGG3OyPaKreTf7Uasuef2Z8TL4f+Woxw5D2oFGO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sDmAf9v1fAGA7VJ1Giet6WRh5MX1RoxLGcSbcWu5DJ4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tgw+eEz52e7dYwsvK1YfTlEXMpwpNH+jrZDYBs8gzAcyUjndo8TGhH2FBqpo/8yJ2JcDQKVhWSU4c7S3fXBGEMaATYkPf6dhFIPVJFgNY3EBX5lcLDDahUIUFWg/QKQXST6JDPKbEHnzYDbUxqoUFhDvZ+JRsSQ4w2GOOwXLp4XlDtbByrTFaqFkSIcWrSt/Uen7J/A52kgrgT1wqzTh7AZlKnHBagiE3kCDWRnxbDRNnYxryhP3wAeom+/Uq7rTtMrPYXFx/tLQgi7VR8dHS15/vujwmJqY89XdaN/HiovNGIxH6OY1Cir4Sejl8pndIHFyVro2/nY7SCr7Z+GJelprMEPmOXw5IRLHUDjtjJhV1GpeJNwryh/dV75S27ZWfqxrU26aFTCR10MbgPMbL6amdwJ3n2VP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sE71KVDPMC6pYWKD6nFwPGkV4IiYBL/xl46QQnIWcBo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sSOKn6uMSa+A3V3agY/f9pHrJrwo9GDoLkdG1mAoUdtxxdpXGS3fRAjM3NMGMD90SSMux7K/JhSZOYQfwNjrOaVCjcC8cRD2PGfTpa2Ff2327oiXRLGltNMSw8TMrV+HpzFZXDMwK6SUvg+br53nJ96Sy/uJo87hIlP4BVZrUWA4DoLljzAMRH+UrlY0ykc4Ps7x9LcOCUM+htsi5zT5nfUCENHncUQKKerYerdvrgw47zaLcrCcurqDiPkH/jl4bO55vSXm0uNoNUw58k8r7CwDcCoc1Sl4ecxMBFW4ebbEvTKGliGIA7VfNXAADqmuKgMHSEhn1z1VoMaVOXUj9nH0PgFynGVubj0xneLxu7Y9QbhqYH11HNnAzdapYqU4KKZf/I1vlL8UQTlujgg+gziSI03F5aLG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sFHkrEqkLtj94zuRr53ksa5gHZFcb+kWkafu9fJCedU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PbAO1+iBxyk0ZCIOAo4k6Rk07Kbed3YTkBQkofRdfHAPAzgCWDm0btCpPf0T+rElCWpB6lpHIfNUV6SWu45f2WB98ZUyCJWf24RMFNELwRT+TX41io8ppPzoxvBrNmuQWHd0ivBLB/08rLZ3ms7BiQ79G1ymJruQupo4tr/jDPqpF6z4d4v8zWDtCs6wijpRZsrOiNhsFc1EFh2eXf6kMbQmKWyZ16k4GVr8TjzoXkLYXtG5tQZmDGX+wi1K8J5RYtUXKnwng5lW/P+xfsp0Wmev4kwppfb7L4qce4OM7k4X2FnUKVoL7YG/1j4PpIEsibIaqG2TlwWLKoh7mxYkCpbgk/JiXhk8OhXXkI7ZqPZKAKbLvn5OojYBTnaa/Cs/lqZzFPNHVR8h5ZkJiBdmXq4fDvU6lv2g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sGDof8R//BRS8PHmv550zlWf749cYiAMabTk0QmxiSw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yjylSBAs0twSIgs+/CDj8d4PfDO25vqpDi4bUg77nwi7iazcLg7HA51g6tm4HutefewOI4PizZTKFCzhyu+N/sLgvcra9ZWRXG18x58iVWUbZoQaQT5amveBMDcfBA979iTTWmbhHDN5Rc7aUSTHPWn8gNNAjoHdGN7NkD4tiKMmcQ5cY+geGVt2rH6eJIWMQamasDKwHOph3KKBJidUFbf6pZnekap/sbtHkY50U/jVM+UxWYTyOlQg5Ma2z4L7kcRMBqSIfIPNsU/eWYYDorsiy5v3FqaZmm0ySLBwNiMhZ00TlnIm7ChX4R5syO5U8wxaWUiQ8CZdBDxSHt79nTFsehCCgPFG8dibL77LHdJn135WtT2XyhCGnZ27u8l9vxfynl4I7QQEyO9dwUUFVP5Th3jcqOGh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sGl5i1kF14MhYIzjujHJzmk8mlsskmXRwgJtrfp9lKc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "z7CWtVk5tYMYvkPh/+OPOcvfadg9mit6LbRwmSc+nUKIybKHk9qjgWqnpdzBZNn1OwwRP7tnUpNhhhDTiMU0b4Ut7zRoZqK9tut4J93rvSk1PohOCZW0ijqsdMgpMsIxyE2O/8Cnc7lFrU5JuqlCHJXwWqzJ71pQEH0zpgZV8zTVzG7olMg1PDG3xHI+AAsvgeuQforQiF/RjAw1t1qS+J6vPmDmOOzoEsg1/Dn+okbO+S9qioSFpeNQs4NgOjOuDcMwKwlNJD04+tzoUEMJ7LlHtSlhYmejr/PRB/I6OqYRtPOYh0YIzRXYDp+P3UVS8fsh5E2HdIdtojiXUTNUY3v0mN5XIKPtgnOC72w7JXQdsxTcrHW9r6EqDKLHkQ+CZw1VO9PFwc+2AZ+gFM+IrTi7/yOTKirK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sGngu5EmyiyIuHnf+hCtWCIYGeLRUXCb4YJ2V59bkbw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xnx19X2qwhRrvLarhm1wves4sI33T1XqxVssNa3ZDd1+kXr6k+fF4nbvQsryPcmB8Kx27iVxBS/4jXcwnSuZ+ulTNKPgc1Abw7Pwrzrvmi6NRL3TfIOWsITmspUog2dBOKowX+7pNajZFHlcjibUUlwqzUgdgaYRg2AeQGYbUh3TX0Yp+Ml5HRU/QJG5kSMHHXzIILddUtVvzt6l+O8fB+iqMXm4noqcBJrb1iR6lkuOGJBNavED7E64ee4Z4hGXeQY3EX/76x8qqfOH8+ic2ShKWlYwat04cyI5o3zDu2oj/huabezh4leTHMkVuSQryvGrkHR1F1G5oZXGrcOb9wqqlPQhNX93Vd54lOo+RPxFxZDNPxrT5cFbN/jrzPe5QFT5kSNEuIUbKmgYGU5LsRVHDPzz8lq7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sHpSh6KRA9UjMnfyF5y1p8QcaANv100DMPZExO4ELDM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vxwU9T9+lti95RNUwUg9uN8rglsmbdwji37XDifrWk3Jhwrc9il/oaiWPXQ6pzNlpxog0Z6ZSPXXruV8Z5b0F1xOBbfPM4xdZ0Pmvmk1IwOFDpJnOW99AlHUlbkBkhwh2maSTUKtknfSmOb8lv2G/QgMOLr6IQlPgPAv/WfNHeCCasUvWeCQyjB3cyNs7/tVmml/eEbYTV2IJfBkiZojCG37pHffET16TFMBoBxpKzBelACgYfA1PYbaDhFOvw65iIN2OXeCvSGYMU7ApEK7195H8EGryEDuODO8S4B3boL2liRxeAD9SAQr6bkDhQiJlmvguoXcsIF4rPJEdLse8MohJ65TIbj6LRoocQIwvsJSLmifaTtjlDezJy5/HexFQZUaAk/IdPUNJnu2KS7rtVGX+XhMC2DX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sI7moJg+WqET8T3849fE1+DL4+AU6JLVEgaZFHo6Gno", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lJt8k4ce6sNMaAah2WoxGS1/WlvLUmoIq1719ZUq9dWy600f0XiER9+vJDkLex2biItBBKkY6/YRpAz1P+ezm4nIypfx4TxOV+hN2n6CT2FBu2dSTBniqUYwxfRfXs0J/0xec1xudx2lLzmAoD9Iu4PTSR6VIQmlFcAt0MN2ZzT5K+PA0/N1XBZsE7F+NjPDt2BZQjhChDz4csJHhaexlVKA5N7kydg2Ufc3BVOKbcnZ3Y3wgK3vIIVZBkYllKLnfvMlOSUY1U3+IGRqrfFhyROaxUK/fJg9DyAl8rRxuo8esH54Pp134nXSEJBWaXlbvFsUU+rgovlbeUPBiZNzw00qwiDfVeZ4tk/mnWpAKOKgz6rvn11xF6e4GrGTgMYINDCnpWrSODRJ8kQ3blbdZpQrcjTFu+fn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sJCxi286S+0XahATmb23bjRYz15bvsTBQpYKe0cWrCQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eBZqkqfBiGc2hoX+A65JKRJigDCAcdpUzDBS5m9vwd1c/+Oooa7PdhY4p1rcZhTiHnyeNq8dExYeUuZnPKoTbH0R6ChJuGlyZRYf99cEfNDk/l/4BhUv0hlarUY6O4a2K7as5yOzoPm1Ra9C4mFoA+fDEq9ILRg0ARrPJYj2DyokWjBDzb4xf/2mewt71yd7Z/lcFRGxL7yc8VSkEcl3d4hzYLjWKzHiMRA6SBfg4iw231Y56hZMBl8/KJdkhgwpTZa8fZwj2Zo6eAqqdEZQb4N3B8HSmR0fqgoKvwUcjdhRNhSYEUQiYZYHIWj2YNIGuufxzg60DnfwAp+7WBjHARM1TMoEk17EGhFWzeJTrKtKYpbm6uqvGamUImc6fdA/rKQjxkfyYQbr03/tCjLIxs5hJCzrva+z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sKSKv9bxde1NgvkAV3p1acIIgM6LES2HSrc8YthXM9U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iogbCuIamuyGPIDe39O8Nl2SgJmT5ohqVKEjzA1rw0khgn9ifU4m2jJ4PukC6zn4nqM1TFFBAlCDRrbloyYuHMm4nMFFg2vKprMMfccCWcL/DG/oUWuENoaZj/6TAYMvWXD7/t4d2klu1FUoGPJr7P1x0kZxRGFy2iEGYtZVVzphEkSqO+FzRDGC5DyCf8Z6X/LVJV7yvJjxoCIqBw51jGzC7CCu6Ccq5ZJVyCm6TrhFCbuTCPY3B4Xit6slneCPWZEvtU+0vqpi9UQsFRLAYaHF3SqSJtxixCiBetYeaDSIpFP5zLxe/IswPWRsq8XIMkePJqLkKbzlfwzKmZakEzuvUcgAOsSr86ITOoz5MSVTM9mfEfQ0XPLNvQ/SeeGvAg90Xvt35rN/XYuLedJxJQ19VLpAPjkL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sLmkIAxxlcEdc4BryaMKIRrxrdVZln4kqnl527jdKTM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AP3oy9vlgo9Vzh970u00fs9o5hU+Qy9ofI9PDY9ZYZQTLi0/MOyW3vyBAg19rYMz7rsDcUdHDjH0b1K66u5e2XtO5QTZfgfdzQ0a24lPzNe0QcUG6nsyiy1yA0U+gQXjBw1HS8321eSzr0ACDB/iQ8O1Tgg5nP4IRcn9xvQLjUwAi1r0qzoYXOZjN1a/8dtHXaPfl1Fx083ZIez4kT1Gr+X/LiNlhDuWiPLPEcZa1G7wLj4gXdZaL79xGBF/IDTjj+NrtOSURoAfMK/Z8czlmxn4xPqj31VVSxzhaQR6YcAMpVpr44Mgg4GbOxjKa+d41jN/DfXKCz1+SL+GTAce3S6ZIo4IX5iI2/p6K11Ez2K6GVZqzOcnwQbuAJoZfd1KNhXAwGepbSE93GdHtZU9xHgSbKx3cmbQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sLpsck/6T10KgQFeqd8+HWunHrO6CHUCr9bznP+tDnA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oKhervnlG5dizP1bO/fWGNfWoBXo7h4wtjcdEEd0TrlOW8iTCGPN3AjGzCW+gTNxZ0T8fBkYwS0mjljUBIk7KyM2iOjPP/5dhc5rjE+B+A0Ew5qOSb3HpviAht14doBMjsu6SWup4ZXkPeJg7hzC7UIhJTHBTozk0lHVMsuAgqWSW3t4fZkHECBYuCnomZd8/LLMumrPKZlKzfRUZu45DVhFgsR14rv4MvpKijrk3idBzYwQOhmJEF6TLCwcvW53JN3f25aMryHlDn2Gv+jotmwz2My5YkZ3o2CuLtv+kaXFxd0Wfyd+2i6PKGxp89n9+m3mA+v5CQb/EZmG8ZwHwpgPCd35KciqA+z1I+f3dDHzECQiKtaqsX/Loc/jKKfryM5pWztIJUCwNTCsJ9r4OEFWk3qoFCJK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sLu5TFJmJo9UIkGScbiNJLiCVXSCZ1h+zIrla+nUNyU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T9qUOL10/xMCecVbS9TAVaG8XcqL566DIMZ7BsisZR4RqYP8B7YMa1L1Yr4uRpO5fxhOAnHx3kt/iiJNC8as9Yc6X9KncVYLX+SRMLYu13A6cYLNQRWu8/j4uW08N6DBfnJxY5niHbex+PaNlpOCZ7DyomObdZdZiM1w2NqJgVUaRHs2vajqW0I6cUuOfH8xvqKSmBz6S6yod9yrAfYWTC5r/4RZJC1Jr/+AsJpYj4axpHCb2DIDUKowOZpiP0um2bzwI5+tXJ68Qb1xt8oKPBOOghHoUHKLkQvhUL/aAaalLNJXRzCtZ3KJv6nR37NSBLafPI1D9tpDXxX86pMhNvv4uK4Z8+3EIc4vKz2c5VJknBRjl6sb5SU6Z4HDf4S89na+Jl9hOXcl0AzD0AaUCQxruMV52taE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sMD28Nk4LB1UU3EHvI/LG61CJVEY1LW8f006dJjnhnA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tFu3n/9ifg6eAKiCU2TgVDHdcFN4RD7EfAjcNKKp8Jvl4UgfWSA4Q4DzYuY+/qfwUtifHPQjuCPfObBfNWK52J1q+YREm0QBRes3nRu1AXZWdE78I2yirzn7wljiSD4fPQwYPwte5Ue0MC2kMPv4IT/nkKdq3S4P3NdFRZEqscZk3g/pJm7QFBwU3J23sikp3CyCHWru/MDEb5yGbCpueOJM5XW6OoERxaUg9iW7mI4/VqUZRPQqUK6NR9eBXyxBmU4y34evF8Asb7Dj2hKR8Yt+H3PVtTsEoj8Sf5qDUv80Tl3HZql6wHLpdAayBqFi3XMtaqA5oCJtlH3foczXqh90S5wYlwF8cTUJNUGvQfC4t19lqGVHVkfkAUC2u12uTZ4dhEK08z5xF2TBG03YWZ/VD2Vg20YP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sNX1Fl8csTacVJWmAYa+LGVYmAPbCDiaerH3fFXAVVU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/dOJ35L5lIYtNAkT/i09YbisCKesMNHpx8rpghC+2nyNtlI/ovIT1jlKiSoB7JrK43KAjh1PocAYxo/N5av1y5lmLckAZwJfq8bM8QUMeZM8xaUBVT1AU2B4mvFluQdgXfTFBHZ4XFpWmDjQZrT4GYqlEjpyk2oYqNOi4Zxb9p8P4s9zelNsvA+tleWZTbFd7PqmUaVfqnJa5cdYG5eqYtnHWxI2Mc9KyWx7a43Cm1qmDOCDayeePWl0RpjXBrdY8SRqFq9m2RseFTiF7z467tFiOip3Lt7AuJSfepwqg3bG9N/yXQagjWrWCkLkf8PBlqq3FnlQfBSBzulsZYUFcY6BC1GehrGWxTVradPy5FFJvcKAHXp8ZUU7SdQvPe4wCdve19iwmqK0LXJ0JbirsxfmU16Atn3s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sOlhBhnbOqeYZmbN5ePNGneSbp4amMjSItvVzth0LPI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3VlpaLc3s0QIVTqfriRoGX3vFEGT4j7tGo5SC6xtsDMwmhVw4p6vHJOLRgQv3Lbb9Jsy207abtec94Mp5SUUuwpGoX9u/lp+ijNvF/7E/KMsFDS03qHPui5nCGuC4eom8kjjBm/PATVO64DMSIg8T9wCXgxh8Ik08mXUjoFOI0IHj0Ohr+S0Tp7yH70nQLaxQkZjPatxumT2M5cAMbDCbDj9vm4Z2VkPJ9CPDxrXgPX2JCiRK4mez72E5hNUfK7bYEBrzKbxHqdJ7qbX57M2KhcWbwPwfolzvKMqO4LNfBJCTCZ4YMk8byK8vIxKuoQszXHdkVFLlexVPi7DcYhnwRQQnKFo5JNNkN4FtgYGTzol5qhbXTOabzAuK0YcRgJmNOKaAdOsxy/b98iSkg3HaP9cezriUA5u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sQ7e8z4VwBMMTk5KFuKxhmL+6dOMghYfGzuACkwUSnQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cXeoErgFEaciLChsNxEfuhhTfPmJuzxyUyEp9M2swaN3Qf0gIbKeNzz7sst9uZE2RH38I1SG6IxaxRvf3hid+ByNKN9U9Ts/xFtHGjgvfFfYV0UpSvqYKenPkjqlBEVPxZTP+phmQXGDoaSLxmFKhs21P+l59xBP5UXJc2F3v3+i7LqAUpIUxzvXxBKFCjornsF582cOcUnArrYpkXQ1YZzlyYkFh7vPAqwkWeGrW6dSutM4EV2I7UIB6C1DQKz1bFskEfaRd3RyqQZI41O+cz0ZkZ33R+K+gB+B7teWC2oJEfRJTMqQ+f6N0effBrxPk7I6L1z1i1EplFIBE1+19tEJ5L1BOqWNdtJa4jFkLLpce5PKBrjLthSV/OTgwXMSyiIjHiuG2VJRYxhrIDAlIHmfdDyB8Q6M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sR1I/ncrdjYW5DKfPWvp2S0YL315MjX/i9XEyaIOVdk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vqPvbloT2XlyKdaIvDW5IBhj+eSkpqvsklUT1uen8aXf6b3SrszGf65wGp2CaRsq+PB5WftJf1/2lAsh8O1RTqck+QvJD++VZzbL7sVKRQ5odXoOZMVcG/S7FjKLJk/UYjcx7VQZL+4XCzq+xjv8W1CE86kH+xJUhMwgxClfeDzlA2uwjeishXRa08fuTG6qvtabEgPQtXAs/a/AxqOp5MmCvpNAdW8HBYcrhk41onUvi/dPBY1bCeD35MaJxymoaX9HJctB/i9EDw8NVWAPCPjrZns/DuwTeLzTV2VKHsyu27zaSJXdRS/ZsRhdoLRULfq/GPOVodDG8FKPXKfNGQY6MR/d4H5ufNS7LqUj3Ary7u+CnqmTzlC3ncLhsCPZxSAjwN44yXg5oBtXIEAXlH8i1CrQSZcf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sRfZFauNnKizGhPUO3rG/cRyI/Wvp4851p/tD1VIUaA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rx4gwSjjeGAyZMYTKgR1kLzqMjnfNcU/KgfrPs7u4fvXDLnbIRKfZ4KpGFwpZmEjuDl2+OJoIAE3ygB9uSkh5pAOeuDHXeOG52lEOCvYCNkV14eTPi3UaWomCStREdCYWSEyyVo7HTO26c1atxvamrxp3b7dkKlIB9bsBFsIPllt6btmW7kFDCdMghn9QfDEWF3/G8vDS20FgE8IARQ2Sl4uwpslTUg+7O9JaZMoXB7de925pvnbZKP5LRLF4DeqVaNa4ntxPOQPWp9MP2ohCPT663ue9WWm0krFPwhUwomK5CTQaP+bG1613E6S5zAmHFjpZMcjA3SBeWEfTGIC9cqYmrNnF6PFYlc7SkPTINmeBOtSM3JP2KMjupF4FSLH7DYsJl7d5hzdwekhkh9GJsXGGLWs7yjU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sRmS55/etLUdxzfXEdzIs+d6Bs3A3IjLogy9PY/ddng", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j2xNeztbBLslWCSeoVkxoeL+Rj2fL5q4sQLLc1epXNfPwuY9zSEWfFe05cvN3ZagBL01pCC3WevHsdRJeITFVJbWfWZ8b5HI0/PROmezYLSehz/wOC1NL8LH4AHyf06xUOfnJDHXQjopaaiJqnO/1LadkaV+6biTSp7d3YWji0FVRRcda7R4bpsNAxjnT4oUoJRuTFA3dovhFXie57SLdvZe5BIEoAY0CaCAEfAEXG1hH2UPF6RqoYF2bIk/KQNaYRa8OWgSK5yRKKtmGvgemlmzyLNGmfhOFUHu7AxWQEpB1W+Qgm2XkpenOBxJ4jL7GELp6FyUXhdoFZimTnEkuv9we0iLUl4p+tv5xtTdLHdHeq9+3T4ino8FuCKpZOEiICrYw5JDOT6zhrlwG0Jr37x5TkynLRRq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sRxpgl4tYXFk/nd0ynMssK5WKT5FE0DCrXWn/aNA3MM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tbtV+j2Fxjw7217tCrIOAw1aDQh8SrB3wlZ3veJkB/VbTHeUpz5UstPn2HFPmWpFBoWN38yyT+Wj/5mwk3386HeJ7XHbN52zmSJmztHOendTSnoGk7YAXuUcSgLV1binpjVOxKX4E22PCEz1nLWiJO5L7Md2cjcLkWz+dYG/63H0FTnEdh2zO7DSzhJ4IJyAYFV+HGH9qOY/DczMymWnWMLXpQaf+uKvR6hoUAMcElyEn/VvdZPPzUxcquMkJa3r7rwjZ9r5LYR1YDMeGW6zLQ0gqs0enOYbEcdJkhTt8f29WxXz7OybXFS6A+BBSwOkx0SJrrS9wapUFNJwX/N1W/OVu38XERtzHAHeNLgy1wS0nEgygIQT4gcux722+QdxSQDdZW91j53c8RT8yAlEG4OTj794q04+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sS9lBMUV/L9qbv+CoAWHHhQJbMOaiBo1atI0QLqCjgc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QYkvZkKo9UWSWZh4Fb+9YtY7tXqWHsBBrr8JqNLD+2gB5tpjChiHAEJ1jD/MDfm1en069VPDWxVKPOL5NaumXn2XuoJSsjepE/TwyNQ8lmpxT6U4zno4KUwA43Lps4CyzoIK+RkwL4abugc5b9GnfDfEhg4hXTU+mawjovs2NssufnnAi817KNFwj/KD8C16j7BPb3CgES7vwrxlB5y0XaWr2+xrQO7vF5Vd36QtlK8DXo6E9fiLpwuC+nW5xpe8xxndDt6RTmvLB2oLgWVup+kXi5P8cRv4fzYt6ZXQnJbKwQqhDH4JP84TMgWiJyXQuZnnCuh1mYy5zEC/dJtSTV+uEWo6d8d842Pb1usEDsm/coksa+AOsxGjVevW1QEZXx61Dx3WVH6r8LJeQArYs2bDVro4uuvL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sSITNBt0DAn9NVnWLhm9EE7hVLM1VG/glF9k7W8YGJo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AHiq+2z2O9Z3ESJMGuz1g9nnnCjM4oym/w4KA27X7+jidMaPjKWT7UivhwfhUaJi8EFYkIrG4+u4YnfZuvPpHRMkf8Gu3hezNV2RKK68OpXUTFivRD61Kc0XVuK53+rqybllV2stefnnPoeKyJ5nlIwSd7BDTje3LoFPNwoSHUTcAJoP6Bw3+bZPw/MC4wSYvLx9k2wITL7BYPeByHoRH5J741w1+bp4VvDTba7d6VKYBY+RLRG1LvSLu6ktiAemdgiDgv/LJuOH5rH97I8DJaZbspIKdfSo65El7sHQQec5oTEyqsPe+rDE14kQPAdmM5bxLGm1ODPEPWGv/DTwKoNxWhxftdw57XtDN92VD1M8uw82jOolDOhWnKCgxpUABSdwDFCq+2kYEihUcTQ8hVainXnPeEp+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sTB+5QhsTOnZj4wDK2OitYbGn88ufcb6Ft73k0yRY3o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "H1UlzIruyVwps1+ZrqpNerQO3AzRCRcf0UYjTjYT9nEA+7hG4nHKdE4np7zb2tCuXmJB+BgM2GKfOlQeJS9ikWB6EeJa5DN1Xe+BZury/qG+W86TgucCvNnORJTCuMyPqnDfMhjDiV758HeTjcxCXEcgpDsrR2dI0f6FMgmBp1rbmK5IHqf26rndEVGg6d1Y0NBUEXZQO7QZSdHFl2K7DigKCVWa+mq7gYyhiI6AXmUTYffXTQeQXNzaHgxUonSuZDZ3B5kAtfzkGvAdudQEqVQcRJ1kr5kgeh12O2xvUglAlsQg2W88Ek0Aet+94Xh7ftj8AU9nIyVzUuIbV8JPmaC2KSLzhIjd2iCEJkfVhlRDj255corp8XF9Mn+Mbsf9oYvNzKFaUtbbnztK9xkr8MGoa/6RqM8J", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sTPcDJKjE16cClRAgW1qXLG1iuBlCumhE9XXUXvkqjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ejlf1drPwZvyEwY0E3rMuxrFvhdG/ljw6iFqgrQAxUCxVvNMwAv8B7Kjb6ntqtnM+NXP+QEje/omcsVIckgOZ8BtwX0Lu9X0DJhrbJ+bvNDcMqANpYRcLo+vp01G2pDi08ZWb6aCxPzjDn0mdLw9XreUVtcqUoHTRpAu1hhjK8At9dSJlwKJqK/uYXSng4kSCes4pFxaz7yN9T1Z2rC/GbwPmZeD7gjrETz7uNQsOJ2LLqvQ+BGUGfLDhm9Wdyf/krsoOPEpKHrzT8I1GAVeJCZu6ITlDFkkoT2axG4W8X2kZxuBTNmwgAj0Txv8jApkA7rKNccxWhJz3tt2x2pHg8axLJ3mwJgBRyUJmHj6P8o3+9JeomF+rywpytp9sub5pGgTEgYwva+NtVk1TtphuhzkVay6DQ6W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sUjRuhMvI+Bp92YYQe9E78GnxonBY2ATr2sDswQJd+M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nxGEC8RfH4x0WiYk512Sx7cVyKiwvID91RQaUGPtzarttJIAY8btxCJZOuEogJ6V+AtBwNQSK7iwNGVznOjpRMJrsh8ShVm2xap4Jd4DLxZoi3ikSWYw75BPzeo8NgyiUIr4cASfdgQl4T76wUdIf04cwIyaHb8CCcdJeZ84u+jQkYflBHBEVueJCPRON9u0ibGYgd/vqqB90zFsqifYVhay2okxJfRzdDWSlIuMJI8WYokKgleLVdUAeVnYSAlciKLskImK96mw5p203zYscFhCED1tk6HrYWOHne1Eaje1aU9bzwwxvKsIDy5B7TTOkdpjZI6JDCgeFhe7p/bnJbpgseMRLDBaBjaFEoNN+/hOjCP7T2qwOfiQ2nktXYPUPI/uOsnrNEd/X7w08uFn/m4yoBeeEaob", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sY6EMHZbudCB+i4sSP2A8UGo3oHXvVo04RUqwGyM+gk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dzGl0NNgxwKsDu24kCBTzfVKvRROWfxlrElTBYT+SL6f+FEwg4x672IHV59fTFT9g5Dx1tuSaihnCUhNiE0ok4+QphNSr3aq8mqXST30xl91TFTriqP6cH9a3zR2w5z/5zNb5GHucmmlbuDmkHMzqvHQZQYusvyX7+1yXfejjNTkuCzmPTjKjQH2mvGOc/BSixd362gkBQ4VZ5fopRIRqd13bGiHD+D+zsaWzDuVgEjpzP7EUasuVIEwWVY8NHz53DSBgmRq52Iihsj27CfUKYDfSHxl7/QBoOlkFbSuX0KLyWMdami4+T8zKeJW6MAbaOL+kXRPBDYSCZ6464pUwQbU0z4WpuH093us/zpfb+5tMnjHQkhALt8um/w5O13Ccp4Cutu0fe2XKi7ut68sl6EAPs3Sfp2q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sY9hEtaXDxyPPGkwQdHl/ZgP/32CBCe+YdxOwxWMzqc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HUAiprv0eTHwjJBR4S/IcnFvAIj8y2Dtg3j442IxIufx02A3WNNDU6Ptqi3nTNLyPs1o1n+r8HCN0YCz+UXci998gwH31GL94dRpPwyoeNMy8Mv0MAt7LVErwTSL7ZC/1Pa3inqIhhWfX8immViTbinWVtYYdZH42K8ifPTZQHvpiVPJ5MKjO+kllkUFwhgZkagpeNJpGZKUPYor/ZHiWONy2aSiv71LTVTFuA4qBD+TTpW9NRMjFMOJ2EjPwSV/nLpAeJKWj+r8EHHNNQPCAHLObGLvFs2JHTbMBAhMtkjId20WTZ4peQqtVgzy+6muOuoV8skrM8/2vKr44Dxub0Gk90wx0T2o5uD1fXPFH2JW5nC13mwYMNPjms1A3JdACRY7GRYuAROmd8z2GTxCI5L4+BaC0DDZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sYe+3Q+zvyTU5Vtshu0bnP8h9Ocs6HO3WinsN+Z6KSw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vok1hXeO+yJbknE+i55hBxCNCXFoqKsgv31zSjD8Ora/ry0kR6h1S61z4QOcirWtysA0/ek/Qrz/6FSndiS08L5e4Ek1FrmhU5nO3f/vDaE9IAzVYiVmytlbAkzJnNdRvxyiAm6JIgtCl7tGRcc6gjzR6Ztd8KGcUv2pzHTdX0LwWK86a5waakmKWyWO4llRRAa6KhG6rlgttswfG2vG/Ous9YkYYwB9G0/086/qDKHYzafuQG73Sls7A5ctmYd7lFXQTas56efT+gn+nFLsiTTW1Ejv1N/nNSLELbp0bb/K3wEBZpAuIe77xN/1AFh/wNLe+X14DcMJXURpVaqajWNBhQDhMb5zCQyaQD59PTHMdRnyJcT4+2BI9eNlYTzMSx65s1VDhzRu0Sn2o7APadXgzQ+xco4z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sZAqd+oChc8W3aG2kSw6sxkJ1VvR1ZwKX4qhowXXc6o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MCxsDSMMFoRg6jn7GjRWMjkDHoPoHUechIeFXCrpH5iq4B6Fj3Pd57rK8nU/o9gHxHjvXFWGdpa35OqM/2bci5elsMNT3IVezC/7S0lOdFvIrjov9X8ENcdz36/BihSj3DSdfMpsBTOyptkwhb7U7dD77w8m/Znt0uHVc1VTEHdN81nDVMQe7lUCUtsYbxTTE6hBJhUnD6diccdk1oMLT5X5MNrmupQ07NSrgq5LXpPoC6H8fHT6WclCsqpNcuq2hi9WRT6QhgWwXq8XLsS3onJweMdhAPKDrjh8xR66EqNZdtRKdUsEHGh0hTeuYW4QlVeu38APoCYCntr7zk2wSJdGhAMom5y48ms7AE8X9+99H1lTp+DDgSNj71/F/Cwv1pXnWhd2PMZRxBjUtQWYFNzqL7OUZ9Ha", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sanhsjZQk4EJCxgEuuKxlV6fG4yZ6qTAPxf2btQzHeI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "szv9XvjLvWUz6T7x+i1wBGBhl+wD4q8iVg+9pLs9vp0y4P3ZI2BinECoIL0WrmBtB9+nqloHoPYqgEt6TodsbLQkMoXvljLARYAoMeKD8PlsL9XCRBQMOcXmPttFb1CfT2ZJMbeYrsi0dtc1/ufxR8S0frRV1kZlvoR4rbuEns4qUy5XASnAmHMc9Dyo1Xq/J23C8QCy/k2CxS9tbe0Wr6yYp6TsUx5CdM4Vr1PIoU3ejIeqBZwOvH8WeCI6LgTuMIVpnhZYz9t9NbFLKBMzKMHlD2IImtnxzinsMgUStc/FcMGFVs5/Wo/2gysK4CkcMXGhoKSjcFrBZPW9rFXQKSzZ1nDMRSdJuRcJqhFfJhegssbo4k/1a8j98RsTMyxzbPQfk8h6kGWtdbU0g06pi1i1VQ/+RLQi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sbAeEo7wxHCa5hAVo1GuaGoB1U+a1ceSv1JtqO41m3E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Fd2W96WvihbEHJYmgIFkQ2kfDrxQwv3612UOMDsHGlZESH20wjENvLd8MddJiY1WNH4f4XIQFD6y8gqfmx9cofJLvcAHn7udW4LSu0MIkCwrkzgouVrLwM+8YigwBR8IvvrM0A2ZaYeYKUDYlXqDjW4th/fF+7xwd2j54hSKcVUnpYZu0xymLg1APQiTZb/qSTXMMj7EAqjCWisbt24HQCrBiU7sZe4qkmJ7yDUurWSxwE/xKlIgs51J5pqYDe1tI6Ye5SGERhqV0Cshu0PTxRRMDHYmuapnz7y1u1nyRZKSARsY2913TbwQLHp6MxOt6aHsEQubdpzx0z+w6u5wO+TowjQWXt/SzjsuDA125MpT60IqLvoLg60cPUEBs+TRfELXEnBikBN8l6kAPU7DLukyxzH66XlP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sblcOMmtT+J3+bSZ3Sm0FbOQcDqy49d4eZM3ADbtlDE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gVUmo7WSo86WKXIoBN5I4QPYwlA4QvSgRu5QH9P3lyxjsM9T2PFH3eHrM97QZPezhYvO8fBWOMfZeAMNJOSA86jBHm4QBcU8GnK9xHABEmhQUWa7QiQaUf1VsytX2iIRP+XoRr4ho3mBOztF+9UHbVvlzd0Eo91mAN7/dv9MQeVxhOC5nlcdxVo6jLjT1bt8U8+bqyQ+GNiEAMOAm9OVzuRYE3fzQ27X+9oZEWpRS/6IgmMw2mnPu+p+8r2BoxxTFLAzNHznl9Xv4Nx5bZYi6a9HoQUiu+2sJJYf+mwjutHFRTGCzNCWEBb3gxeoD8iSOfqPXGuXG+e/QiVLFmZ0cB4cyr4EjDR+3dK5y+UxU328PNTtKttOA9h9vMHApKES77pZtoxadsoIdmtRcuOfMoKJrhBc21Lf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sbnyNniaG8ny2Tc6cJY64DRH/b+kFeZDetaiu12Wpq4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NVYxWdOnFL2uchYJvmfcBhSRlM/+WPYn3HkbIm7DBQ+OMN1M42Nfax0NT7/VNjOmeXn0jTzRivmdK+HssKQc1dX42Ycj3Yo6xUwgju6hWNrQHsn+KfcJEdkmlhgXqvK6iZ+oTgmhUUIC8WmmQIKTHz36JtnZj/h8mUrh2O2eQzEkf4qzSrfTWjdiDKNjyIcIdI2tlRE38zMH8IfUtIQk0eg1rnPlI5Dsx4BHXEwCyUFaBf/3bS/wg7fhU8Gw1GOoDzRp2vuJ+0RuTuFWRDyqV3zCMXX35HqhvRp8Htx0pXYGkQvKDHdGpRO/TtCakRyztTVAeGZaed0mdw4ss8MdndzfGwpr+F51cYhFn2MTADwynOJlF0cWCuWiNq9UdXk86p9QhYq8e2zxbULSmmqy73XGTZ67mgXJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sc6VeJGiWYYvF1Kh+9Qbe4+X2fWx0ZGsb/XeavdYc/U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q/mIGCNDMbdIElsImyzqT/XQLhjRFjhNA9w+Cz2t/cSQ5VHmrxmPijI+UYwYlrfjKPrCW7y2ggvJ7rhWaySF01H64Hftrmeo2DfxxUMmgDKggFspAGB0AVwzxLCanAsg+wTe+GPyaR3lrILUvwaNGNqUKem6q+eWUa5yJni0McFG4sKerxAdSHGf2keMM7lgHLLnyBkguoPY499390wRnLWHqlNGY8B1dVFwRSB4j5gSrSAZ3JtS2GChydBhxB3CshIIEfuqtPcEGiGQoquGQrPrIk7SfrpXaa7XSJG0+udYxaIy8AwQCFmJAm+5bvWXvbVM+ahBv/1IfNuxWwT1naMaxGOvNobuAxXz9QIcTtapzxhwlnnEzNG4ysZsfq4xfXlhcoRJsGZmjhpbsMZABYpEw13s/8yA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "scnMjJ6woNfZx4NGEyVhCunVgQa2/0uzy8eNhIYHnKU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Vl53/PVWwzjStOlUNzFuvSX3AGcy+j/UdoTpL20PRn7Pg6ZcFlUvS5kwy0POmSydpBKdeS+pWyRQQ7EzJjSdMe5euPjZ57caHqItkxGUq8LuPGr3MwmhKDiWw7Xik/b3+dhDBL+H3LLw1ZJcxJZ3QOMONiks50p2UsWjT6bJ6ws4Hv6FsCuJLXNLMWC7kcb+YzxspnBvVHGRrg0cIoOq2A6Yl0ouVCffPbtZ7553YULjg79zY+3G3ccJENcfLOap5Ojmb9iAl21TjuvWkSScw+b3Bwd2lJ9wz3LwdNA5QqWoiUyucwS+OJC418ggH7+vml2uRaOkL3xoP2Q6TkSF2l8fUW8Vdm+UUX8c9ziJ29kTVRAZbLVB/7bb59oxteDkX7YKirDVDOvcU7w3Jxi3lE+Cg0RU+cMa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sdsbkpqUGDOPXZHAdZ6MbNnRZnoOu5OD8X5TQYHQPJE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sQjztVquk18cc5099ZKxnboks0sHU5OaPwkPJnb64MlDaP0xdQbNdp8Cj2r82cce3PaUacBoROh2572osOAosDfazK5ZdnEocRZOUNp7OVJqQV+cXITDXCjJhnr4r4HTQkajzv42HGvmAfZKIa8oWUzj7tuQIFtJ9DqFGaqM+TIDnjU3l0oTmSktHcxH6jLYW+KiDoP8ZVeiLapQi1+eQXYaOGq5NPznthuZbeRil8PzOzCFE6yE7Zk+p0WQSOlXDyUKuVIFhf6LDj1TszCigEBIbz9agQuo/BoAamJXumFanjaqXGfNlMgyRd/UzBy5ndMxLqUFJZ85un4PrOnH5PWySYKKZo2FqisqgxsyDzBErvyDfzBTHXdG87IlgBQ9UdpHyBXXSZBn7y9yeeAXiBU3ZG1MsEWU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "se+Jag2qJi9VG3HdQdMhPcay3mCF5uRlPTjIef9QRFU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TcEEytnFLwMZPV1l05PjC27Mf99oN5f55PRMwzFIjJv3izGcfZRD6TG87eh9OOvyszKy8FFNr5gn/EWodmkfnoD3ipcNQLKQy7uy410PnW+te1KkS6QCoharImCKeEHl6YvRXIqqP9oN2AZgbZTxl/CB47OV26pFvYs1g8Z50A0TKgMfqTHSKt7KzrANLEtPCOIZxEyieE+OSJXU7D96M0RUT0sPi89ivJLHLKcuXHklZS34l4vdzUencrOmulr4G4dPvNYYk7jMvYpZfzAw12Dl9khJKjSrCv8tQbbp6sESlNYStfvbOT9zguDL9Gx6aGL5NTJbKiwiaUqFBJdHjdHPXyxvXBHG563aIKhJr5sRbeovAw+IuQOJQ+Z8nnz2dW9nzOG66oZCKUu0Jngt0Igpp21szlNU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "seRzBcWEseofR0LFX/9eEmas6cowMJhOIG/9/78UfS4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5xdyZ2YFIylk76GiDPtSjJFGSLk191WS6ZUt9p9+lzwjohoMzm2lb34Drv3AMwU4RHIW90/090FI3WK60jLu+8ssuEDXEU2WGQdr08j1QMq9QtbzDuR7Sk16eV9F60A4+uiOJF9PL1bk10bNtYDsIKGpwZnzXNk+FkRejCI5V1QXRxBleGkje+OxM3f8e/353unsymdyTKli04ylws3lM7BzhVWVRmd9yjWORke80WwHW7dlDzrfkPNQQCOMWqOdN6GBGFaGd46BL30e1WgUR3IqoWCbsqkXNa4G6ePkX4hnBZqGS/WleIAFd4++Fnssb4nwH+Kt1GM+FoxCTQDRe+w/eTjqNr71I3UpEUhVe5/NQJeG51uParxM8/rNccRnNCCSqXxhY34luHVdLUGQcKEzZhSGWDGp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "seSIy9rwDOnJ73qUjdeXST0FL04aodkjyHE/vH3i/fM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JYC131W833ye5aSRvyZHffUNcT74SQFcfPtlxcF3J38g0E/j3x+bxN9uCRQ8O6suyd7V43HIp6+g1sk0Bfi9KDEWNVwWkQybSmpl7YIemtXvvSNDPC7wh3H0+Z1rWTnqA56srrSjwS7t4fcEP1Kn0wF3DOhOeIwmzyoXQk1K2KKHUQ8JhpLn9EVUY7t9m8radUlo1bggvgLSoboAZV0sklfNSTwLdUIkOY212VCG+WK1XfaK/V1e/8ap26gc6YkZdGDytFDfqTGvcQpt7a4EyOmLYzdRiNUdJ3AbmZ1iAff0dR8QMyBNSq0/ws+5VgoclcKA77tEiQbP+xVRNMl71AJ3XHk8OSTOS3giawCts1kGr4VUBbYTfP0dlKuM9fKL1DxkoEN8WRTARALaTLOOozOxLtG61Upq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "seY2+WYDV4Nzy8t3D8/G5meNAeASZjux75IOzO3JoaM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a8kPrK5tMJdewAnKsK+i9fuDBjf8SBsH/h5erIQf7pqnD2rIPs5USlQXlR0pOkgJyEJkEvYLUnre+Qe0nPUntkiyY6fHjWLOTfPgl3rpeGtz+8gArLw1IiID/xRf7YriafM01lKZJjNwWZpbB8J4W+nsIvLqGfs+Qi8p40ihmWRjzNChzAD6zIX0QRc4k6Sk/u4TNlsAORELH29pHZdSWkVQHckg//KL8gJnnI6qTypW4OR2oB6WVNGimy/mFtX02EKCFKN0djnij5iawt1oN0kgVZ371DZKN7q8tsmbJKogq5dMJopOIvekVSjA2ZjwKzTEg1NkjJUWMG8Al+9OeKAaX1j12vZjmD3+0EJZdcXY7zhGfS+n8IP9hb/we0hKVaBttj1eVAvwR+potbScJWsj2uvsUDJe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sela4PByBg/ZBlLnkdcJgMxsTQXO/CCj/xoMHATXSyw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ywEVVIywgYFItVSrbTyj5rrbMu+ugu36Bl/U3Brq0Y0w/8A5AUpVyG4t6sm19cy1MH2zWGMHlzFHNvoLN/+oL2zPolY4FBJMoSMYTavjTGAlGCvWUduZ8zy203AGqEBIcux56Qki9fNwyJ6jRDOmW8WSjRc7brs6UJ/21k4GvUXgQWx2PPiuw+PXClhTquazoCnvCwsGDFbai8u54qnvzIuSnFk2rl8mNYg/tID47NLsOvoRvIPOi1/8S4hzfariB1X9xsXF99iI6jz5GztpjjrSQPOzJdEhKEaez2PQbn9L7Mrq3j5mdbYNFeDEKR40x5BFn1V9JsJxfo1WL65BxhlmSLE5u5wb6on7H+mal56KbLhgXHhyLuL4mwW7xuY5aQEXUu+aEuFR1GmCXb8mf5AfkJzzB0ZB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "seyLoY4mO9oDdhEISnb7/nYJLqKDNDZatxuhyMwyvo4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ra6J9AVOZPYqu178DfVqpduM5qCvL06Zs7zO6ZIOwGuUqM+SUYBWsqrVVg7urSOjRw7Z5Vw0l2rCtxQrMsfdWKLqS30USIQKehmZxcBYjRZPtQMPmrT05wd0QpSWr+OM6Yio6QueuzduHtqjM6oBY4Nc2VzrqI+XISXINiZPNCFT6v5ZC++HPrg+Bd5t8MP6Lb2qQVsLvcmfhC3njrU8NkCqr0WO/heUxuEWmydtaCYUjQ46D8lpIeqn3P0hDLQc545KdVLkgKAb7HxQwmePimUeDGunjeI6roZ4v742n11BsTStFXGrvQ/zJvQgHuG0f+5yAl8YA+M7gwsNbVIqUZBpjiLg7Ys2TulqkPe71V/8ZAQ9tZxVADnWfCo80PjPlJlbQalRLpDu3m74OpwwGbHCyGt4sbKT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sf/fn+rhZhInptnU5OFtyaoB2Z6P2zG/0i3JSTbE8ks", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W2yb+1ZJ7VsQ6Ydq8yE81UhVUMuSoGMKfesS1JBA3IzPE6DkQW6YUeiiv17idzmVU8LDO8mkcLpCsyn11+IzGgO44dCTQngnmru3nvXpSxfbv9uiDK9ZQddYzSZy8YvuS3AMV1V5ulqd0f6kys5ZH2scWFFtYYH2ugDW2HWNuIvlraSoNRRKPcQWzeSep6ei20rAR9TOMW17MZchjyZPUAOU8G2q7CgFLLkYHyEo7f8RsTPD7a1uh+W4G8lD6vx4DaJySYNfTfShx6ojPjm8sV0Oab97piXMXHb8ylZjaEn9CtILFqS77eIcj2lv7rzvsK/tHvUwbOs8oXGHJVc6Q5SepnCXM/CxgJjom54aYGYIXb3hkFXrtw9lOpuL6ySSmJzL7eWJ+9WmAcq6OEbfwJzOK/7US50/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sfOAjpSr59WcLbLfM5YOvDtsFJFlKmVvGcT2mba5GOw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P+PpW0ZpMli2UxbFbpNJZHSLAHJruQF9hIHG7W1QlkPQ+nogD65P5sRFwtQ24OriPtsP4DP/Lgfrf4nGGQmxXKlrNE0IF4Zzm9gGCFxhc5knFf/LfUkobX1rMxWswUucsx8I0FLv6Nwy0NHWfaDyX2yp/+Kc94HBzhHxsO4C8xYxVR/jW0BobBgoLcqctd0dY3CAHQFhVgJgmsAbQ1SErHZutgLHpVn4aHP0CXxhHOOENqvP7RFxnQwpK64o+JAB2eM7wnq5iiWfLl7bmV2NmR7NhBC/oLKe7PkE54PrtIvauDkxS1RcJsHWXtOMIrRqMattL8XecGkoFOcG+UYLfbssykeNl1sRJdtU1BbRrfnnPFh0yMIOjEq9GuEYEpNdl7YGIZfAsX44hSjC/Mhn5KXADNcbLKlq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sfdEvbXRXZG7F8uxhUJMNlKuOu7z1aSB+GMW+XM8kkM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Gqpf+qpF04zAEug0uNEb2ViZvB7Obs+ZsF/gtcstsPux7marJsbJKA1rTgxJYRCf9csq04gGlEsGBrxe1rtBHjZIEoN4HpEjrM2mOCWsH9VbYkxsVpsUCkKQ9itIPU2qu2Os79aU9WMsnwv3x8ePQhD+5NXm4jN4Opv3670qBozQDJt6lwvzJjrBzBeE3z9s/P0n8KrzBX+Vlgj75TBEKGcql/9WTYSLRsdjb+LiGUVGprEHgyTOmN56j1Q8MkRpnjYpmP3+3kT94N6S9RDSeq+AvKzrgwqNjiHAw84hOHTiKZ/3x2FlauGEpFVVERbUGnPWHuit59KabGUsE1JWmVQsxjF7dEOb/6O10j2SUo7HMtKPGWW5S222g8DOvb06PfRlGtwgcC10XKefZCYjdM9cAnHDxCoU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sg2GSxGv6VvJwwKv64XhbOecGD/NNkJJvueVCuWPmRg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M/VehCW0ingO//wlGd6XQaBBMQvkV9k4KedjMuUmN29sqnZ1Jv81btJm9K7QIQFMzVFdyPQKiSE0KSAJMqdM/b8M5rnkAoSqewXF1zr6nR4rFhSSW6FZg9NXrOob8KN0JhElolrB2R39Ro2pU454RFVdlkHmFqhCZBbmKHhuFCEBrb3CddNSZp/UPqilCfLzfkw8MmnK1c1lqaRytqp8gbhqiiIiLmEMTNZoU4Qz3RZkQXshIynqRcuvdWtdFGE3WpAKVRLDAoCouPuKoyM5ktRKe+/VwmHV6/0kusFXpaXYBTTp6uOrGewro+qgUVD4UMhnFVPAvmurTCGs04+UxWXcIAoFFzNHUSj2lU3a8Xeabf1LXS+ABcu2MmteRZHf1CBiPCJ6MgWaRxgYSAfRKGOLN3uo7cup", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sgOEk+xK1+wqTkcwE2VORla16qDBTNeXU5GalMEoCWE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "084VsJvS3MZ0GZOE0Mtm0uvI6mpB9t9S410k+48+QUMyLGCKRcM3UHmIY8s/0o8nY/Q3nQpTy4N3tjoGJLIeyrTVoq7YgfhXHGk2XP4IgH0FbuLcDl5jTsM0/MWBkzF9ilwrtpIdwKGFmOofZm4aeXDCWlHVsMk0TshXL/weTUV5TQj+OlNM4xa+ChcntUgcU5Kr6d3rOUqPfeUpn/JGWammcf9Q3dDD7wyGaaGcy+7F9TVjXzwjdXFiXqC+2gxXdsIvLMyFbhtFW2+jX19U5zR3935VnC/LlmAtDFf3cziAqt8Hh+FQVq2TIJYI3WH+p0t9Hc46DCezr4oNJMtCCuPWsci0Tburlt6SHva56lflWHPH0EeEs0XTtR4n/tjDOYPPMUMCbHytT/QCqbBWb+sBQC7Cy8p6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sgvvHfft/SwcQb6/ZyYsySFQCfAHpp3KiOPkqVGsL10", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tqZ5VUo3NPb5in2fCvHnvNwnkT2K2dXy8/fIwlE3/mLWJW/ZPfRHO8bvBCRSyeCWv8QBVhyUwkMzqp3/+bysnX9xfvRq4UcwwpC2qT7R3O7fscFLtrGbKJfET9/aLzJ5VQMb4FFzUiFSnBL8libFJ9dlKf8ZrquagKVGxGVo3FJi8CVnnw7QtiY67J5XQWMXPfaCkbg/xepuCyR+vNZhYsmnL67m2wJsHuSZhz9uNSGvuzUn5OpXBjtnyHF2D0r+Zq7h200vJBEw6eaTT/TqMDrPBQIVdSJFO/Cm6rsTymeal1bEkG/vzWxZ2vjnE8qoYusRHqYUR+wGw+1xzeugh6MTz23DHjXDSN63GmKAyxB0jsiAK/yPOy8U7gaTdzvG9+QUC2SJzo/vkHvcY9KghI1eN13c+7g1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sh7sDXVBVAkQ8bvCS/t6JLyobqxxTTiVGqe6NDouwz8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lIVOXDrR1SdltvZJWBIFRsNWzVypVq9h/oZM5fswcApd2jjxmitzmPX4XzOWoHuUrf+jL+diwCPfZIGizDb5G5qAQDd2/SGVlI4WgMSft2PVK1uL5A0l1VeqiBRNmUiFceqH/dDG8RDDUwoduxPwhIgQXI8Qs/cgUE8aV689JdWMVppUCymkd98IzqEssclg/GGB7/qSMQVNs6l9tNSE4US/3pbvcwC3OgOAT/bdTpfDoWj6NzOV+JnRLy2V9M8HMi1BNr4E67D4K28DqbzIJ9XsxNIrgD0FZaTl8MEHunuqdpkh/fE+VMHCunkLqGuOq9ym3HQDg4J+xm+YtA3nGHADxWnW3U9+i+7sjxkAp2lUBPykzDApbHEmIOeZaaD4YjImq6uasiYNjzen+zsAvWB+P35bA6H7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "shXkwZI/N/BpMXTZJfwmTtT8zuTqUKU8glBZMVIyQ50", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iRmRXmOHe+VWPNkKRRHASOb7b8qaZP/XokfLtxkqWvelpAf6MufYtOz6gbEbo0Gu0aD6zrsRjzDP4JcGU5mSn8mffB0evU35N7LNMZ7iBdZMJsFqDbOLzh72wDLOP8NU7ichi8PR72MEXew2UeySqB0SqKSHyLPedC+t8XRuCG1h364gQJhKgR7BVKd2i+v6BKBzxj+P0RiLvUjOZ3n+/kfdCrlpEAonE9PdPM6fZzdQ5Wccs1/LZ4Fe4CGajmMHaiJq75DYKj6MfXsM5IEavIWV/1BAPJD922mg8HSzoeeF8E+tZHFwX06bywmfsBxrHaBOLmEqLi9b4y1UxWPORANa9BkqSTyOH18pKiRnLdB/sMFkWbTbHyag1hEsed8+u9XwzE+U0NU2JsHQl1ibwDZzZGxNUwtO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "shbZTaFMFO/0fDxi6U90RwPvIWYAomp5cdP1GFQF0bc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LWgQV44pREDo0lVeeqUtG19UT4McH7u9MRLp4YS1uEwiUoIF7PHnGqdZg4zrG0xGjetvjUyBdA4ZveCBVjzef6qmfbKvcJFf87s3rj4oxMh+ZyGLak07dTVxXcDSVJAxjeriDfdfoja1BUmgi1LSrupH3fJBTopvkIOsplbVFM2yxeP7mdVfZAf44BnQZtWcDbasFkIC6qPwWo0UlbtbTCf3TimewLcaJTlECRU9iEeG21CLEZJuu9LtX/WH6UAjo/QaQz7yGoXH8rGzZWpe2XPF+fM4KB1T3IUBmZoiPvkv0xFyy4+Metqf6c8GUfhm+lzoCFDdL+To1TqbGk0yVXrSrjGyoL4QF5KFjiQrkKOfz89IOSPKU+dSftRpNKKCbfK5fRZHe69cYFE/vZ+M8hrbwiY22htX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "shn/d09hKpqK4X0tnx34SRx89rM/WvmKvgfRHTTNqCc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B+AkwN++dO88vATaEp8quBvLmWjuWyZRFPSjyAkiHKn+XUhJKrTcbQcTULGo3vNDILUOj6HhhenWLVK29mffMamtK3IesUCA/x6Ho5DbN3L71ly9wlTAewCOHqZINgkymoBjo8MdcmA/4AZO8JntAumpDgkUm6dO7etY3+ndMMYwEZfmqnZ32ATzuUSbV0zWM0X/sG86+2zbyNe5d+E4IJdCRLcMqy04RY563yaxYaJw/VDWhXeeInwolqoRIxb+0EkmqO3rfEYmKryA2uZrcACEXs3aOh+p9jNyXs7B7AchkNKW83Dynvy4XTLxiFfnMB5KdYYUo61+XFEA/L/7aIyc1pZQrTOfzCLsyd+NXWqL9lrwPoOfS8IIuPNrn9FRvRFUmGEKOf+FGTq1/5z8FFe4r527fcf0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "si8AESKhVQjyS1S2axI9nNprKY+wy7vholvKIRavQH8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LZqnXO23gJrbQGv01ktroGPSYM9bz8KhRcYr4v4MAm5BjlwZCTwd2ze9WBEyS5X9fzKfJ+04cuR0MImXI9/HT6NGl0AmBdILS10kK7WFqbL3kgm7tPkCE/CYyIcMN6plAd7w88ZgHumM8IsBTHjotOU9GUIegQ1wDa9sJrYQsTPkrcuUzg/aLZ1azbdjUJ56bs7vMBqTbYxmcuolgYi1y2h5D9qqtB8AZtB5b24yIMoD8TfGGhATLh7WjfabDS8/twZmOK0VQ1Tfw8hejWCqBcOAOsHeYUeNPf+yYmvvCr22eYLHt+HkODfyN5zlBX8+q8J19WlNIQdySJPp86nrgMBnthE71v3vxwKQmhP7eVy0F1NdgdTBK/ciu0yYo/3EOdDY42LNWIk0yf9N2QYYekMvdCwugL1A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sk6uAhLpabDFrzeNjiIB9BX/gRjiyX9hA6zKiip5/64", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f/k6zIxsB0HLg3rgojBLqLepnV6ZOCLiu9P16yIYWU0pDdz0OCvw3d73yPn7aR+L92x4mp0mitn5M758ERSHYjqT5CrDyrUXAfeFqcIVP2UJQVeoYv+Xd6CLEQutZKd85nWZRuAP5z20csSeCN1Vi0M3UYgyrI5esFPubTHrjF6kgtYzdzHL1Z2zqXLHht/W4AzBjpFF6metcFmR3hibg7ssKw9hpsSBHBEPRhzE0oZoDdck8fgJcLX4zJJIVZvIEymx6dVD+pUh1qCSQtYTo5S1x5qAn/lbFcuriQ8Psyx+U7FBR/TtalcNK86HpApe5zhTPMvRoKkSRX1S+IRiqhrdCpDkzkwZeJA7RSTWBt1XyevvV0Jumpmf08PsP+4h0OOU1Ho9StieKKg/OJGLLRTf6dkeFdhE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "skDxvyGz3388/NHWrFpCH1f1Y1PfyCgz1cBdJdhJR4I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OHkYrEtZ3DJV59SydM5qeV9MB9WAebpSNo14MWiep+lXcZOWfipi2OX26eMK86iC9alo9HKhCpxElxru5HHpMTlL+dXibfxQgwV6xoR+Xt09rPd0Ari8CW1BhBJ+T24PTDtfuuq590+Y2llSzZE7GzC9ONL9rxqCl5EHtl2c5A1jKZIriYbE6CKqUHKrJeJsDpQBYSp8N7gISc/quMpwsrBiw2wE9ROswaCw+s0CPy88rUmnRK2xbU+ud4gdYMnmH7mq2PkevVnLaovU90fHmOwt3jry0ArSIBTGjXriSyuWvCPjm7TIAA8SHaI0uqoNj7s9fYwXi4o+vuYEcUartFrLKz1/v+RYILEqX3tZTukxyfTFqwRUZBii0KLt+7nRfRfWMOUPdsYhqeH3ppxnxiv9B4NWUySy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "skIGkFlEFXt9AjifYYAYu3NvUF6mf4Iv3NssKdIKuD8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aMODYeRRFosNWAH8IlN+rglzjgaygZuo9TN5By5+OOy1yO8Ayc4BVIiXbPfSEBtjJy7qNrO6HsgqDC1SG+VzQH5jV75DMKoUK8gpTVPx8JGsbiqBg5nvZiUfCtY8GxYs9fpdzQwjUr6JyNh433lDPm6xvilcsDgz6U59ovvqgvgeKXXZ7H687dXJHem4rpQJVUYEDMwS1y8U9lpyyGOOFCnt0BiL166MLNfopnsbArGIpexE5h1HIzOyHCUXSqY1N/8xM7rn8wuPGebGWyhaWXOjJ3Mzpd3AgSLUAU+Xpef5hmbiqAvXr4VawDyn7XnXyVXuUxmX6nauQTMnWgHT3y3V/rBdCVqrvwcktO0KFkmS/xQl0hA9I8L1umcAzvwrUNFWsUk5erzvuYclb/QC1ridbtPPrYUK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "skIgtlpziszfMPb4+DuISwWaxPgmdv7vJwWvVIndYos", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XRCBz6CvzWluiZCB5lhUuQoxn+UIfUOCqbIIcOBzlz0eKwpWasEcyFjUtp02mF3QqKzhjA9K35/IUUaAtkDttemsIjaHGH+sI0zU8kAKvwP0DqXicPfMr5eKmqZXZaF1lyjEl4C+nE6vCnxFx8ZmAv3mg3inbHNcjgiE1j3liLfgUDSdIkjr8AUzn3qiP0qrgZCID+8wZLpTIFoORr0D34IwoycgNB9G+Ii3qmWXUcZT57G0gsmHJKLFZrRmXJdnJ1rho+sOgX22F9MoALBFJXxSv6OLddluPizRhupV8CNY58mxpKGqxo4RhMZVj9uqm1aUE0vkeFhO4abso8KyQDmxvEaol9tysOtBUdKgpSKp9qO+VMsRSQqmL+TeVhJSIkrod4UAJBlX3BzrqzmCcOBXU7Rk8FFi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "skLGCvZPM6aPY8FfEoK9r4P9BMxfl93wG+x03S1isa8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "p+THSXvEG7wLz2qQ1nChjOG5rgE+pKm+kkxiaZz42s+G5SFITKvPqiWfqtOUPRRgUVAh5IEE4xzBxnzrbHRvRm+5Z6n7nf1EbFG28n2s7XD5LWSA8dpwu2ufX2NoaaUgl+cdYC8H7AsXSBO41OGGSTrW6qywhDOBNTitg59JwPxyinlubzBQKYes4W+EntCafVyAvbgU/AzXZHMAMn0mfojphTGXlmj1zJCt+nP+0CqiPVm7wB0e/YIpbJTEaMjpdyQ4D6XYI2ijwCbIjCwmtp9OuChvTFHCspPyhq7wm3bP7ACWdk0SLBS/dJtdGZYgSPRSNEJVzGJ9yUkxzWZE0QeON7nVluKgdRLgiGkVzgBGRIBwKa5tv5oVHHr//CC3BE6X2OJ5iLNZbpi6fZcnDLXVMBtmZUd2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sl8imVTIc8EZL3NjldMHtS5yUrl5UyChry6F9eBvmyk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aoHWWFFz7WmNVAUBkNWqDl5bW9pWQ+S0Ak0k9PI9vzdhPsM7QcyqONk9+Xt0xkEP+PykQzMR3TxODwRyIm0O51AI2oRmzgFvi9KIptn7Pc4l+WkPfEln35hsU5iLR65fvdNtCceFdTrMWT4rZqzphEZrjz3yNYk7w3LxCvQIL14ZwFwS10/WVPWhouFtNSwsHCYb1T3YpBF8DP9C2iavwiCfTQ020MKQgsmt/yA+dL7p2W9mWoDIwtOTe2eYqw7CjlH0pywzD101rS0V27TNs7lwtTgsbitIoKszjz8WgesoYLtG3BEN+uVnnqtmFF61i99S1Z1nXmnvXAmRvlf2kPOergvQafBeJOjlNc34oUfaTAtQubzGSKc2MCqylcGxtHmxwEjz4rr6w3lL78HLnwHMT8jWrg47", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "smmYnXGB5WC7kmbAKRqUqjKrfdP3eYK+guUxgs36WpQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QwQuYOqcejBB3EdwFtt41HSudDn800Gw5pkLXvB3nQWapiMIb1DKffdCZUbFCyMc45SWdHOyuyzRcBbx9+XDajI15Iwr6otulzH5q1ZOzAlGycJQ3kZq9p09kNprBi+69EZcTSR8HwGTEEx92xH0+NhCOVDXCNS2RBh9qThVCTQcQw2tOQQlVQA5VxQhi87umJPnPVbdDuPqHINGXClHA1HNrcV6plsZDjgXgYQBvUk05Ue4Bq8vuud+Mx0HQ0IN6fEBlE90cujxza1+kxOjiIT/0seRB3bX8oROmQab5E4b3mXgIJUIcObKjUKDgMec4xHRwrJ4uDcjamPh6atzl5hPYSWqBn3Klr3xMez9OnfyhP1P0jEtf8Csc3ynI92SE9An8ChDgZCPNTNU2WTgGys/F6hFQkkG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sp6yhbT6Kryf4zRT9I2/11OGQ7tl/PZwbJeXN7x7yfA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3+3N3QCjWKWJH+7fFSYg8CTmlJVdlY2So6i94Fkg0uL6jtS5ozk31Wfq1EIj+Np8Ohuz6/gDAZ8CFUrlTGcxy14q9v/ZZN/WSyCEJJCKB/vHG5knzA8ylqa5oM3syzblplHYIDWAoVD2fWI9W7yU1UB+TRcNsJelHm6YgZHxw0A9ceBXREyTBJ7M5XObnSR8AnTvBoDUZE2pOLEY4XaSV+oOptOgH4uB0PfOPUPcHzftBbs0MDqlyCkBi/BGe26w1s9/Tbw51S+e87+4zcFZVwIU4EMxRk5xxDY8XFzLg+WjDgO9ptY33DmIPIh7/HAkyQo05Q6wV73RI5fiYzYY8fi2ekvGHQcb9kAsJEjml22BA9s/ddc8GAP1Gy4Zuhvq0asz9GvhKqUSZ51p6+UU0TRYegCQ6NqS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sqWRDV+FIy/yBWQ2TqUJB3DX8KbvftRULe+VWpqYAj0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zZ1sydnkk/2owwG5CXsgM46B2V5LgahDvjg2y1jHeA7rGZaqOeup2nvz6tThSnx08hSNsVyzvXVEVO/s5a933Z/bG/M1rb9RqvdtC7YgK7l7TKmwnc1N7H1HYLFfe8eaJj4NahN088HSA+ClyTlJ6gPw36u4HiKnfAEAIQBpGzHClBh8hTNstgChMMYVP0eMvW5PygkOjvESg6u7dUgfBHfHyVaULsLsqs9arIKFYnRoCBcT3Qppv71nAr2EtFcCO9VhzButc+6ifqPdVQu6XFh481Jjcc8deXvkxS2F+h2/lBOq739MGJSfvJuJrLbztcN0k5UBdNEUAYe0DOtMeD+dj5aPRdvLqGpqB6ir5gUS5A7XQ59xz1P9+RS7uJqfHqQEZRvkQrFVuwkIKXDPJMoOYoNAe06B", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sqsyZGjVFE3Z1GChoMWQsjs0ars29+UFgheR8DaRLsE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "INqjqATUeCisQa3rHLtG1MDEQQl1jKpKJVyme9m1HbHnjLbvR9wv+j1XRdiGRN8iS8Fm7QV/MyWPrAbi7EyLilPDAJLPyUZnux8hN8n91eYd0hyYQ3olDSjex9kvZbrWn/HLt+mqghfj717G3Bp3JOhD1NDmOx5hvPIWHvL8IDG/2bNb18rEZeZe0S6RH0bxAaxPvDG+kYQ0iZEhU52GfG4YO10QqF7JwxpkyqfrP/mOoUptqCcbNM+AF2Eu3Xevl0SHnCeXWUUU3c372dl2Mth8FpVr6EewHwzSlNdpGlJTto6kcIOvlrPxVyey0TlibJ7EWQ5tdkwrSzXe3INNhGTeesMDiSxP1RzGiosrOV7Cxby/Z+pR2Fiq4n8h12moLxYfhAWA6qEHJe9/2TqWFHHW/ESl1jHH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "srH3hwQfVRUzqXcltVSDWB4BkXC6PyreRotF4m8XG9U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xvmlyNkqdKdfbYyYt4eLofEyFvsXuVZUhYMvUjiCk4sGrYz7Vir7DluOwJK5BCqZ9UOx82MGyTdHCC+Iq55+et3tlvCTLznpJBO7PecIG8A3M55xHX0U/0HttXQK6cIyagG1CqtXQZNtplpgSfPGnVB3zbyeE3klBs8wodbFLFnwPXSzP+w6Wospl6LAqi0fDLFbAxxPL/H391rvX4J1idcgluc+owwfRX1CBSa5u2bs37kWPIgOFWshzhtd7/KFsrmgQuYKYjN1tsAR8SvDzkPId7beZFg9dgLD9f6b5uK4rmlDXpG3KoA0P8jNcXcsau9pNC7uAFlpyaYMITeY+Zgst6+6JHbmZFTdxqvUP0wp3/eXqB6c/Ks3QOWOj99qC2RbRGwY41Pb0g/vxf9rRZzF7HXZDb3h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "srrLh847wrT9y4kqHE75dG9qcrxjzUVfRsiDHWIAUmc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yLPR9sM041y4RG5NhvWlHHVtOqXLzTw0TW/8jnla1yP4Fil4StQcKHT8FjkY10CsfIZ7QsQ1yMrk4MhQxHYmPCPoONNywrZzOAs2r1NyrJy+c7vCh4tcF5xn3JmbEH/lwWyijYiAs7NPe+2SlfmMLBKfpgC2Wl7h9YmofTV6NHNiTyKBw2Dc/0U0ILoRU0MM5K5nrQoxHFaH1hJCEa2ReRKDSPcDDCu8W/OnFZTLXQ8YRBMdhR1KmCDQFq6aqWuhGy/BM330wWWUxBRIizecRVj4WdXj8aV6ZUdjemkx3bnAFpf0H/hSC72tR3iFX3rRids+FJmsMhSB1PrKoVZ0yqybxavQnwW8nb4w+PkVqoIpCLp76bpzPx6NPR3x44RG75c9yWAdtlt3Eke9FP7sHMy32Ec/NMkm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sseON6KvV8AkIfDUWtjKO82oqjPG8J9zfOn61P+0M8o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "U+IjHxiL7eqy/Bgej8e4zotrd5yHpjBgmpu6DtW2sw2SnO9WQJUoWVu52riLupHD7BJk7g4oIuRJWasJWu8H74nW/2SYz/UC0LH93wilnf2FSiyHNbrlwl4G9xDE6xO3vDsVaQSe7c9SoOU/k6K8ji5LM3hT5M6IU2bfLOILHizoXNac515MbdZRaZwTuIvVYNfDy6hDcxRDSUQSUUuzvBy35KvagDAxKF38N2eF/XljY1QUw9IUe5xmiBflBgG+IViiqwSmUi1pJa5lpvuLC1ulnJU+gviy1BJMVDPdBnVbUjEDp7Au3zAOeJYodNrMhEuan4kz1Qob1ItYMbEKP635OnpWRQ8EEg5iBSz4N1yhPY0OVFPCjz1GRsWSNL7ROT/jiMAPvd80BDgtTdR7XV8vG9jTuRfr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "stCpOl2T5/4k9rDLP/XfjGkFoj9Tow6pwjV5k8DwUl4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P85jgMQ7CE/CTxm8enVC+rByUiuULgBi6li7aYK8ZqePh9QPrZJYNzel83QNMO4XSvHsAlZI09xD5s50M/5OtE8MfQ2XVFDvbp9WqpoqndVNzMlyr/Ub9Q/s6EV+VBVefTttKBjyx9qnYEIc/q6fmAFTUkBEfxIV9XDa2GCJ8EzCezvUT/Uf9COsCbpw1qv7Fq2GF2LeDQ2mMYYEfMSTKIr10LS6mimwUrcmeOD+TXoYZT2/BtTOGQOvq+kBdsj4ergf6xQZe6uDq0Rfs5MiymQxNrsKz4BidMxWNXNfzYedfiPgegT8GC/tSUxBqzqCgPDAVs6dGJNoyFS0+lE65ptiz0qy2HZ1KUFJXkJ0JMEeuspLKqx8+Yz14B2mgO9zUIGsY9McRtNwXmS6LmJ+FkZTEHKD9/rW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "svGBnd7ySG1oScjDMfRrroEdFi2XmWSEzdODlnajMQw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aVo/LTj4b3cixfepRZMdeTAF+gRFib7GveynCdAVKF1ugv94fpKChryv4SECLqnd8Vq7HAiQgQ6I6n7ftwEmdUbDueQcvM6qjUC2SDIlc7+AF29nOsytL+Srz8XXaFIM0+YHuOQ/npSQJ/hEBo0gxeoybmUJxK67KUeSbi+oT4a5h3hsKmThFv0EwgUt6VXV/W/Zsd7HQCHaCqCybsQvMkFujK9Tzef/m8RViF1R8Sr9l9OLeKySCj1Huq7e6J1Eaa1TOvRPENIA79FqLuaidzxtIGQpI3KghOMVMG0LAuLPp1RFI9ZU5a/iUlPRH5H5e6/6H7ipGV3D9HVnJRWKck7Cot3Q9RWUGi7ldbxjmFPGYt/02OiHVEykqV0RjIL5y0YusxfDgI7xxjsBfqetEfpaqjN65zDV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "swezENB5gHcClVOE1sG+imhRbsmERz8ujYwODefLrhA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jI55uUmOwLTozh2i+eVQgwJ1UzliSd20fBpo3PmUPqTwxSA58reP0tENY36RDnce90v/JY0z27jnlrTfDAptJ5FTpbZ0G+gFU5eCpiLmhWjEbb2nTnAwWuVEb2SNlmA9xgS/pT7CfROjXeqwb2y43JbZAQJm9sO1WkWJYse4FRLUjX4vusgpj0bM7RyPwoB2uq9NAg5v3pWTLeGkW/+1hLQbEY0XhSEwZp1ZFHG8HsY7CGV3AAmvzfWKnNPe1hbYvjqM4cNo/WpyviJwXjxXJHoVnYuoATdDpiJDLmCQGc+WQHAbAxKuC6D3LoPEbTLEv01xo9NMFMS80Y1muNfpIdZ3t1P6GOV8kjpF0OX4b0r4SbQMGfZlagXTdLzrsKfXI5Yolin7Qf52rSfvKW6YMeHBiI/sWPNz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "swgk/m4so5M8dTrRpxRD2kT0nSDGUz9EOZx2t180fXs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aPOvdIG5jEiCWEITV+plgrCPJ6Q2hybpqkn3PlmfEMrS/tLEken31HNfJH6JvXFWMTDs9YYZNQeY8+RdNpadqKY2faVITwidBtFEKqTuzJIqDftvt9OfmDjJ6TN5eHq16DnXkiIaGrlxsiAuCA7qNlBz0qYYu/JphFfsWqUTlM1rpcaRdYbdpEI5rzHMEclFB+uCiKlRxh0M6KvEJPZt0hbS0/B7u9b4vQnD+fAzncJAsd7LPRT6/3tDcKF3XmTDIBJpcM7g3hOIKdSKfU5FcAzhfCNUO9b+hbhoJT0ZLsieSyh5s5OK/zaiTPsx3N3NAsjq+LNnBEvDHoT1Fr20PG1L/6vuDqQkxbbFEpk7mUY2/vHHZcgeydnWCm78uNisU6w+YV2iuXm7KTfflMVDR1bdiTzXwvN6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "swiAl0HvYmSvAITO9jSLtu1i/wM7FQyTUkhFgp4E+p4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BYcpuufNrpBmjRBpnNlMgZhabFjsusCH7w0Fsm4s4ci0gJ2yFWuWik5/docPbV8NnUhiDVKPAH+46IDWpv91Qj1PheSiwFvqybVecmcgrqBTBj1qMeokt0alThIRg9HnCr2Va9x7jkn9ku6S60vmZYdVz9dN2ITfM1nqVBwQ3iX1v3H3BOzq6fv6I5HtPClC1oC7+qVUo7zmtqYv8+QJBa+aKn8Ue07Z8SQY7jMvpSWpm4ZTaS+m3/cY4Ri9KHPanaL/VZ1BSY3jrnBKJQObK2ich6yvoLNcIqmcCtJl0siKz+FU+wI869F4PIZ+JjvAISA2UmvZhsubQ0e6rKNwvjIfNpzMf0236MV8z13N4eu0y4V6NF43hWtDySh1EE572q7r9noUy/RQ8iA5e/dVTS+iCBR+7r57", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sxCnKJEzdRnZe1CkF+YfmmYpBKN1hHlCyhWFOlDAAj4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rLoIlxPzwpYiG3VekkRg17JLJEvf8WrdZcYma9ci9+MSMMcqwSAkN0fcpZ9H8uOoF3WdrcO7XkYFW3fN47D5FVPWHv9qioNbWz3QXAIQ9I7LjxjFBc/hTW1wI8Bkv5YZXiS+DDI3EFDejnh2GyJIW/2f6ZmYI/yng0zix9zNyvtfYQYCdxqoZjBESXVF+varxjww8vy0KrivIAPcVGsecCEltW4HxDf+B/y3ENuKiH9AX5eCAyVDwxwX/RsOCREGmK4YiuhahL2zVeOwh2CilGElE5eck+IigZil9lTP3a6a37rXVQrc6uMZkwT1fKqfI7IUvKGbdAi/IqamX7Y4YtEXJn0k9SFdB9hEc3nzwKJFX1HEdfWjHuUpbSyqwPkbmZcKVWIN913hYk8flUY9zPQzXXgvKLIr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "sxjENRARCwo1ZjVBGIUUnkqE8PSdWhiWwgRooldIHrQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xhnChL9NS0hrWxZaBaLfHBUomFuG6asjunNQGnIAGf30Yx1JRLRCWTg3812ZAeW3UpkOgktysNDHnMobNw1uJs3ZCCWLq02yt3vqnvoYw3MTp2+Hk/Z7EyWshn4ry4QDDVbs5hFHxT+mCSFjIU4RBLQ88qeV51ox9R12LOdegJ2tAZ9AnabLjjQ3om4ojcs+Jt2YI2WMJ0qBp+LH3Q9qW52yjRY8tZK2cbFUEJTCjMFncptClAunCHAq2Cj87o8UIKUnRvGbvc23E6wrakBCXRpZQ4V5zAF0SgKgyXrI1yeZ4aamrGbuWceAsnKlGAqZwgmsh6kQbkUNqmIvRBqcztR21yqHnL40ceY4HKQKMi5nvEVLERgYY4xMPsnGfNtLF+x73ZK7y3jA1fPo1O7yJue/+i7A2VuF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t+n3Ezkwtw19gXfTnXNu+iig4ZWJ+asqEYqhEuz/B6g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QWt5gilAWYt5LJzV3P//26QjjsigKc1aQQeOYP8XLuu/tyhgmwm/1gtlR4HW1b5qBsthy20HVIx1UwemXNjiLOBZdmtqrZflAR+oWFAtTngk67grcqn9ghm19XPOIOu/dlMGIeCc1pO2RzcpDdy6GNalB8GnqJDBlJESxs6fJAbP45OCjEpm4JFs5rp/ndOkaEb4rZM0hgh5H3QMnB3xQx2pdgSwmKLE+WwfZ2KAG2Vb4ETS6af4TQujstZpVWffxTT84g2wJuXjQkUDCmkuvVbsEopvHpZx0Yhml6ill/+6KTWY+BQ6sHq11HQr7Fq6QGlYe0oKX3yI7htipRZVlujwih07fH586qYaJeXX8/HP9Tb4eSlJY+51grN/YWWGmlA4By6OzJxPLKmALc9Xw9Uu+A21ZBb3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t/pWfA4SnvsGeLGSBjWubLoxHOAi2sv1Doy5Zgyybv4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T5QjkBLT1RANUbsei3iWzfzgUSayQJ0P5ZWjtVEnh37eLzEqRKuZhKgHYQZhfXuGi+buQIMf0+Lql4bMV09fkgjG+W+A+2aZdyaZGuKouBNd97D+J/5JI43Ht1AdsJ7rsJygtFOW99Lpiw+/Nqr/H88Jlhv0nyFWjIwz9RdL/VU4mj9Ld38s7HUt24Zy1D1W/kPVv1Xd85t5n1tXrtCdMj0BRpleJLogaHQkPHlXxNNdQajm7glwbFQBaRtj2LFkk0AZHLoopU7f5xQBYZ+sDPs7YiW7hdGXeI8SK8id+9qal0GRBS703Z5hwEcqoG662oOyqPf4u0PtUVKWBeIYYOnwSTbrRYH4f/aydavX+21lQsateyhzrjINa2xg730U3aO1K3kPMdv3Zk33uAEiLWnviP/x7XaK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t29bTJhRFxfocf+XS/vaMB22pD6k0lzxlVH06nrGJ9w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lxKuR6Th8U/zNy+J4h/j+vGH0ZVEw+Av9U2oV9uBGH2izVHZl0Cz0ty6NLcmgG7CL/BWnmpt2UvZf2CZ4zP9PRgyh2izpSQOqF4OG7CkyzuUjA1K5AXS2cDkeSYA5Sr15TjtjezH3Oh837FkocV5/s0SegrDBin0tT0hkK4qqTuw9qE2be/0ID9Udtqt7SjoV/2almgPaadTE67n4z5sMsYw4+fguuq1ZnTAi4T1R/+jBqA8OwId/6x3p45Hq4f00/KUZQj6cMav3s8RzQYtBZQpJj5B3+LuO5NKzEX5+SZ7l4EkSN4yAZLV4mQuVnZefolLU9xxCGtIxCkHLVGjeUGVETdQHWUlwdm10YmrA/zxy2HFIOBzjm5ncUEdhWiHnUdI/H9jvvtj7Im6fa0d/q2f0H5f1rvF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t2qQLwwDFHOOOehFPIJQErm96L6JM13OUtRC3qhzhwI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5VdptT+tD5eGyWIsrbj8fcumrJS83SFtsiNOtmjJ3OEyN5L4zeQvRjh1Ht6cEDQxW/ydSngf3LFJgr/BfmWHH3ltD+SsdqRwwBdCCNWb5Q1mcV5nEaDBxHQqyS6yH/lYUFnCRDYVwZl+hxVZyy6NeDMbBLl0Rb8vbxFFB6KjC0qpoDWGWBTT/QHuRTwzHWfdYTmkM8NchLZeZLqWfWuv2wvcYnJzrR4+wI/cs5R6DNS9YJmWHq5UjE78LW/j5DP/Uwd4l0QcpGoPMgCAyE5qOVXEBkZto/GjXcdtTOc3SBHaiBlZeAWLg4lsZP0Bd0VNkNCYajxR1VJTy7PKpmxn/9UP44RZhdS7ZDLgo6c7/IGxs1woMz1WyYN/rmOsSZ7TRTqNdcDqlyhtMCSRfuHdiiWW8tWUCn5U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t3adFIFaPUa4/m8fOxc4eiPPjXRY4EKr2wJZfUx7POM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ncnYsGNVtyLArxL9cjTqAdxzuTQUAU+Hvu0lgp+fWwolnsuFkUhU3EgOUZZx+NavlC2b9FIWqaDU20S4feCtzXmUE+mpBpx1yj/3fcMTE3I1ism27J1d47Zrf6ujwLkAoXDQP3oea2CTYvxF3hBnOLsXqfQS9Lrcm2vH146ex4zzI1gACohImvvJK63bMVb9hmBePUcYrB5QuonwLgeJX8QkK4ka9ze0vylXfomA99GphDs8c9rQMjFNR4xT6uIkK5ST7T2r4JfFJMQFDUEh/fi/yqdVtfpZnON0K50nBaQZO09lla5tGiYUJklQhgvl6RoHVY91kpKMxdjTwSo3lBEc6KvbeSXQCLRP5uWKp8zcz6Nt2nqYDYTdT0JtwcSOxUgq1/IYxLYJ9NYL2kcz0qJxNlhUncGO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t46KWPN59XKyLyhaNTW8FaogdCXJC16jDfnOfOdcUxE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uY2qAU/v5YIaa4k6ei53dDyFvFsmR8GJ3M3mpvbW6lHPE5AWIKSdFPHHhjX7mGln0OrDFYm2TfFJ4ddMPHay1HKRefrOyXxt40dI6BiOZ+6zuPRE3rAKP3A2pQMfsBuVekeyyTfBCVMA5DV0fjVFlxVSp4teGReTBZltDAKd2Far+7YnDaDz29t0mjGUirdKpzwGWuMahG8n38VTB2pMOcriVr5idOgOlh+htfR0xoglClGwitkHJvtKoFf+966PEBjBmYFBHqQqJ/N1XkBwUAyl/ssg1657FBAYfSGBej9ru8T/xCM9ce0o7Z3ifbUpVulpaISZYUgqD8JGWmP+lBkSBD2x18dwhCfmqyB7bN+sZESKVRH+g1Kcnav0lpsEI+o2imxIF+Cr/XhzyX9ClAbRYvL6idV+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t4mGil/NkTIS5pXQdxDl8PazrAOOkjYjbZ8rCQlrqoY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LWla9tdO2gHks1rQpOGRJaCGbL1UJE62gjsjDr38BUTVpklKURSZ4E8tJdtF0Pba474sfRk0NZAMOY5I8GPdTwBUAFO/iqJoEN1dTzCzW6CB7qD4Tq7SmnfyPP3I7tXVsYKHpY4hYznM6wU0bMnRbswoIPRdJw0pY+PxS9Ydhh1JlXvusKlQT1PztDWfCHLlJrakTSmO9rM/dCem1kte4A04zcanCPqQJvoV2lDeeObNT7TUY+vCRRLAF9Y3m17uz7tdbdvrfi/SuSpm+wi/utnQtabbAywU8FKZOD8bXEcKHo8ssS5kxptb27p9JqUA8NuxZSzQoOe17ZmhEDt25/1wq6gsZvSjgH83XH0mUz8Vax4Zv0+/xB2aJ6OBLdPj4jr6C2o9RUJoPsWXbu/ByvUjfIegsHay", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t4p26Cot7Xfp7D3M/lMQu8V76ibqNiMJ2xillPg9B8Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N3KV2Fuc0hgLAKdrADsh+Ymd9w+fVjEe0sAFwvaoPV3dR4cbcyWCRj1FjgwF5LcqX7teNSKuT6qbaOAleHd01VajS1hiWksmEJ0emnhfsFYJh0d/KPGH2cr8AjY+UGk/JOADudABpOI/tbiZW34sXkOeTVzdzg9DQPWNtQt1s6g2gwVBZGrubQ8YcK8M57tuwi0buy39T4Ims9mNN1jmbDW751FB94+RlqrR38PazFrwn0mjRN5e+I03W24l/A3IHGVfm2cYRGeNABNr9BCFpQCp/HmXnTnFMhY6V6pO68Ovr7cp1waXQBgnPplPRZadQu0VRVl8rNfYUa2oW94viMFauUlSGXe2xcGCZUifX0VB0XMdFsRJb0abzZcANYjBI8ZbSBgPGoT2GT+BrgwVzmWvl78SJ0Or", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t6w08Gcbh6JwAsDzg5EiBvsTgztY4l9oMF2wzq/qOH0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ho+rnyTYasLk7eWQgJtvRzsdy9Lp0WlLaMa4UGUrw7snGwmsUVpukn8d3S3tElScnbkiMcbkgURlwzT1emBZ59UFRoEGy6Byk2o3x+KsOOKlhbpxZAlEHJKE/McNXl42mtkFrNF7MxOg98StqUH6VgoFpKBIYcjfl3OktQjTSwpNhWJjT7IvFi3+fvTtfjyQIgo/JOQkZ0T07uvzP/IWpp/Qub82gR7rIHoPQRonSLvzd9RGTZnRptsGq/fK2e+YYZtMHv2DuulV7f3sAISQzke+rYVlun7+vl2AhH/3CASiNDshmwfHY0FgSJpl93LgXO2Vt8d87i/hDv1zaPuArpozxE7ePJ6953vgT9idlyagsxkbrTFdXyK+0RvtKkOkzjcGJjFomCWCSZjtuAiIBGzoK3Dzrshr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t72o/tdVk6mOB1w0X+fz2S+cFEnDfn1RdQP4/eX8+ZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kB6O6EOpGWmS3XBMoqzwrI5nBAtci7oMrw5C98ScM9u4FTTyrEAKPOWtOZEAryOP3QGfeHkTTlz/jzdGSq3uD7KVSuZS1GFhy/WgsHdgcyXmYDdFwCktEbNhLgulCCRIYbZgteyRQnlJ0sZ6K7xFaKLMFG0hPd/ApXhT5R63BpPOKHGjUiQ0Bnx3emryf1TMQb+0OLkZC9kWnYNUpa9HZOaY6NiTp3MIu0YDc69svCBZwoBMDXM9HdeEyoyhwa7mPxgB909RqgnOPqSRwiHZ7X4ZqCdUVBpHKp4bOJyo1Mpx+uRjTUwEzXwwnERfoptDHY3GFT37mwnIuN2e8LvRHBVitkdR2KYAQM7EPf7yDCuz5C/BEmHza3mYhuGNHjkbKgsnAMz5qZe97bpwF2AhiqfWZZsiQ27u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t7DhsfKab8NrrY87K6CfVlX8XFN/jQyI6yD8tzkkm+I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/TNxH5UdpX/+PRjBa06WSTOC6uOY9k+x5eYl6GlohN71rnrn6bBmIqyRHzdoiJQK+ZrYVib0dFIeo9L9YvynzMrccqapD2Bfj5aFmm0lUHPMxo485vmUanELbyCApRxrt5n2HIG37Gx461HYA5rBbFcnDnZdfubi5TRBpL35yge+nldERbQ6MQtfrYsFHJsapwmdqoE6xEEiFMP/9KXdt4rhYH5wTHpDP439JLIoG5pccFWYsanJWyt2sU+gd+eCTzsmzzOmPZsGUnNKfaLUdEBZEpGSWf/MHpMyQqBMUh3GwTLNjdrXIUCvxzgIXLZLstnldy0UlqoC+9SCO3iAvClCWz/DSJHZR3DpaWg0Jz+rqaeYnNB+is5tN4ItV3kq0AO7fMymLOWSrGd2KqlhNwtSmTiCkJgG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t7EIWyUpZwmlKgIgkc9JxDvo8j6FPNACrphLiKMxS24", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/s/EGmw48dJGgw0ykmAECKzNhPknDGO2xpgFlL0mP/dqGIMcOcXGoluFCWbP8f/WYV5GG0NeTLDhlWlwijzzSo78ei8unPNyLEVDMgl81yfl0MyFVLqfElIsgHbXwv0q43kWPslhCbcBT7nGLfwRE6glmtm2YIWC2NJrueVmGHXxHy6G6pGgieU4QS4kWUzNIg9YQq+QiUoww4qK5sM/9BkUlxm+ss36pDHMHiRgUUuHoa1CeAEeF0iWUCHkBzHe3H18A7Q++2U/ZnMf3yLMGvxAyeH4m/w9LTcqqle8CI2OY+aw7jaUZz8yP5lSugGKi1IwySj8BDC9Kg0Cz4omzr1d8QEH9t81lmOFQ8BG0h13i4RTZ4HKe/dkW1ljMYI08VDWr7LD+h2c+aK5PVmZTQSsP2C80nLQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "t9YQmCazE4GfIfewvflH9GxF35NFpQSM4qz/QrRCyR4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0Lq+pmRodOMYgwh2tA9pxcPFhPiHahMW0ln2mKH90ZoM9yoiGIWMbScS2VvjY1IrpzCNYxWf99mjw7ii1uoaBVBG00k6Fzyhbcv/boPJhvmYLwm7zLQshOIQgB+Gfu8PcTNSd7a3x9j6P22lBRMmSsGMn4V2/3Cqx/j5OG5MOFe8QgOG+4TJC1LRa1DaLus9LKqDjPywIBm+3cBgbm8rRB0vuSjioMP0ZcaJdM4KQQfkSEngFlp/aOg5Zo5mZdycb+4+O1/XEmB5OALYCyHNW4YqpqblVhiC57sg5WBsG9x2Bxe9KEXmAyDvSSnDBS7i4/HnQeKgv7qHro7Smb9NCMy7kk856NU4zO4q+je6DNmjxYnBukhVrhQO9JElFKqquQDSxks9grXgO83TBZg+gncHsazJvbTw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tAbpR1wKWV12fOMt851UgfGpXRHgC5f0O5r09/fbed0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9EuguMC4sbYwvwS6ThY/s/wY5XtjMJ0nvqpPI4wVxiFiw9ICHwAxoyOodCHP5jm94/D4nxMw9rNloh5a9kNJmL62fI1CNGNYEeqlOujbDTEIv2BahcZ0/TIcmLj3ZOnBlVHXLEz+Y6tJNTdfWUO56BQaEd5pY8+QdURfKivkKFaS0BshYYDvh+YkKH9AA/U+vWHx45xtfY8iYuuLoJwE4Yz3PY5HyoaDx+jT0RGUotjiSZJlItOOgLaK19Ypr116p8RvGArhRkxjsxFS4LYKPekZ9PDXnzamzS5887o++Qh447B+T2FncDHHa9cBaFarm3PiGl/ZAyAosISANi3L2jW+mvS7rO60VzUDJgmHo7VGIMvwUZcNe+eD6nJb8/Ej4wf3/6amKdmjheqBrYRwqAAibl9+b7eY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tBhSHSsjNJjl3kfU7zISH0xdgiuTZ9WlCBMp8Vingpo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "G/NC4rEAdwJvpJKK/Yz3WY0A58nX0E5BVcKzTKWEjvPcjY2I3hNkiIGvNRVvQPRsCV0yIDMn6DyFqIoNpOD4fhUOvlJUDyVTp7mA7H5ZpE9VEjnEy2jTPBBcKEi4Qwy7xb1iDH/btETVRl2mkzyN5Nx7GVqK44Oamg13qfTU2y9UQFLaVKB10fdgYxF6ZnXNfokiTzQnMecT/ClJwjjIIjqi7DpEhcchKniC1pT7BM9E9RK4GO3zuTTkrFR4Zq8HdYIU4Qu1JAixAsb4c82nUMjQRvLTGnnj+xWsX2voI2bgb97+zGLvhSAvUIsTvo8KirfLBtKJKxMjRbvuQ3Ug5J5g0TP/7ILRaN/cagVGXOubdthftWCL4lavms5MR45Y6Wglxzh4D9LhC+OQPwG9FpCQa/08BHNi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tD817KKcDG4wAFUfR+B6Z4CXOimdVqo+WYGTRBqZk84", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wS/i7vsAbQBbJ4HvIWKdazDBIuKm9LTY4VPq6Q5nBXkrCYecunDJZFGTpMdphe22FQYisksRuJ2pvHT+wbccxuUdZVSPgxnYeEgD4Jc/yNONodAqMFbEqYejp42NOh49yIITj6XYD7T2ETurZkvIVSBnTb4Gz/skyrCJPaCN1Mh3Imatxo2wlB8NiX1IoASIbZus7SkM/5Tpn30zfSD3teWEsDqaB5bTFkavRTr0AtyCQEQTe10mHl815dKhhruo+mRMNBx8VnXnkgxe+7RzlQeEL4keDpbf+YheEdcmlIx8nc2QACRvAsusGXSBsgicLs82RevyBcbw9TOLzdS2FuJz99MI6Vz26WpWnj2WBwlYVtX4hM5CWYpxeQydlKFhYGSepA/CijG2Bbg/qsOTxZvzx6Jks/bY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tDGNqUuhc76j7v9GHhSvO1ZSHWhlzOShkH8Hx3rMuVA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W3C0sx1ZKbzVY5W7p6jVyYxHTT4hb8/EeqQXP8aDkMMEiGnfMfIyrawwzgb1D6DkL5tqkXz7XzvB1NG6QF4Ke4fkLN6xSrK37J/TTVm0GDNMMB/8G7OOqYPnPsMYnw4lkydLNy7VfCQDvYO0reBssuumEtxb1KgW9dQnhJXGoG2TUGVCiv+Ul+RwU814hHR900fqA/4UNzER0zLYv8dC5PTtxk6SpziyNCi75F4nYbgXMtHBdXysRcJb4FEAx3DUbJRPXA0JKt1QauzxSjhbAOU+FLnHM6zlXrUZBHkDxIAKda02t9PLAfnNBeF0wPfB6H4c+1VggnjAg7kiPsN0X/dh8CTeQqwLooijCkAPXNHyuw3Y7JrTKbA8h2/Do91MC5jQPCq7kMWnV+oCnMkwmLGd+QkrhN0M", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tEsoLGGw88SYxIn4db/DtgDuU61ekUXKADplZlpQgaQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9GioJnMW6dMKKHltDG56duwFp73bo4tyW83HPG+dksmBwYd32qqe5R5p7z7hqqav+OK1R5gwL60vhCtH8Nv/xL9j61DZkEyE+EHyLO7C9REFhCp0wTC4NXgJlxfXYImcSuglNkKUuOj8D/UpYcygZ0X9BU6Plswe9K75BMedzy0UIMVHLw6h1dwWo33uLKcwGmMEJ1j+DNoY5t6TWBZYiJ6dtacVOfX7gmRoe2hhWyNp3LJO9Kg9JneV3E9jHbIbKB8cTeo/LxchbWWAmrjhn7RRFK04yeaTJYWnoNblYklYswvz8mRV2meL/4L+ydrqzdMrs6/6t73kVE8OX7VzZMzz8LKGshtNOcPGkAzPhZ3UL6GTd5zzmmKRjzb4nDSqyiKVwSY0b75fPgMHdcKsJaQvfGo+jDOU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tG07/GlGbucjjlF0zrx6q+h/V6hKyq4AitwJgMycf04", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hVLZ8wKsCtxnbN/yBB4VzGvX+bBigHvH8wh0Cewp3lD5R83f8kqq147onoX2jUOcWaakNc+yxB1VV9J3uSPXU9etvl1S4lDCGZeKfwxR8yqpaA/LahHO3X6J8GwvwZ8ww3xgfaxk2nCrG/n6vcg5+wbMMnb+LnKT6bDQ37TeRLuz93JVCDBEfHhiDQ3uWk75+p+WPNjgG5fA8VTYHhRHXlwdox/vERRlEZAQ3SAzk9Ki58gbJm9xX+/3Pht0EJwuoEgUz48AcZKTHsqmUDPlo2Ih+3ggPleFJnE7nkn8S070OT0SF99FD+RodBfo9Wzfvq7HQ+SK2C5CR0qiyLzaOmNWCdQWuL5rBHKM7VOniFITdneQTsL0mMFSZEXS/46MfDgAR+VnqphSRCPJHT+PQxAUU+jEZMeS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tH8vHaGjXT0HunN8vbuBmPqmTBu76dkssPF1aiVJAig", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ESGWH6fNUlUcgGFL53XbAcXrLaIybvkiUFx2fsnatwf5lmghTomCtgJnU42r/YvkeqwxxOnQvgdZpItnn0EOGenOqY72fYj11nmjhJ1gu79y63WxXiCE+2uGFSJXan2MFjlImhKvnpIaVOpFx58Qa8GGaA/DELn7Xs1p+7u602ta76I0xxcMFysQaSrJq+t/ZNofdC9K9AZFhybMfgMt2PPeVpSYIsOO3t06eC7R3Qmy7EEdwgV0WRQqx+U15zNxiw/f1lWNh6ZRnU8IcjaOHkzY74E1tunR82xz5T/RBbAZRPonu3PKP+H4i67RtwW0nXoWE8NeYWKaOdrx3fxeL1TkURqF7p/5PwMoYRVgGZeYTeeLk+gyn3EvkoInXsMYkHDdxJ4h/niemrhmC5PuFLNtur0OGDby", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tHdu8htRn6UV8BL8umjJYt+TaAqsSjDPn5mUUrqqjBM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PEn1/KxQQYqtm6vKb5ii+8Wl8GcEHah0Fk9Z+Lm9Jpoz1gDJa6KNLYEKbmjcdtR9XxL2pTMMLbQlNeQ2Yoonp8l/0RZ9weRdlT9NAX5OzHeFOAOmqtgXl2/aJ4us6fLTHk7U2vgUqQ3a+dTXlSHyO3Nn/QQ6PJbuWUZEITeCFeQQbwGdvSqtHjkhLjRSz/0IqqdqKomnj0WDHFs0TpmVL/PzFaPQsWQVxJsP677uDYlaW+DaHpPk79IXoHUr2QTYf0QsKSLv74/316v7DaJ/V9Za6qOlFKPwLBAYfUlERTBNwEYQ59WgVlaOV6UtwYg9ywDyTIEaK3CgHXxrKnWiy4SAqin2F9yNI7XALBjzMxblKvnUO2hqPprqhs7UZQdjF1n57EV1hOlx2y5pDhCWitNxFzxF1Jcz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tHto203PLsL9qQj/MwQcOuyGruIHGcehEzh0s8aTMts", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0G6eiKuGDFzbCGjdgwc3a6V1wVtsLAY1brhvk/yH2i3cf8r8M+XDy5R6JOQa5OIMpNI0icp5U3i+xc2COEPO5IoLqYGLeSXitA4mJ6T2pikFfplAGAgVfJZ+I/odvG15VNWOnpXkYgCda2LucuXaS2Kj7bawizibDJyZin44giVs9RgtgEGyBP6D01iONDWaOjaBB7lj25ja3OqOa9vnQlWQFSFd82b4f9ETlT9byNnvHdmn23481MbRvtiZUNUWAWtoPa8l9ZlNz37p4FtPClv1iBoGupYvgZeh9C+99ghQe4iwja0Qxa/P1xoMYE7jUCS5eerZxrJA1vgec2rrde+PUz9iEvZ5b6HqzPHHcN2iEbZ4Ck2v9yahJnYQFSztY1kfsKcTXj1oLfQizqOa4ELALJdxCBAu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tJvM3qo6zefuV4m4+76rIZ405zG2e1QvIueb++4Z+Nw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bHNR52FLuDoKckWOKczjThulsRiq6qfDcCzzzsxEdLBQrtXJBMvuILcvDwBpFsYpKESz6P755ioLj/luFFmHXm78dkP4zRUmofaFV68pHGkRm5tkFcy96WxokeZ3T2a1Sm3SFFbO18+bshOFoD5nJ3H132FQmUIwk29KIreWXWXFmnmtzjILbxxCi6EDll9vTrKikQ9Qc4c3Tc8wUo6w9DT6hzYLBbsb3Cqd9uiz0dVdwPiIYtW1K2N6A6sTrSZ0PIRy+6ZiAA74/pr1oqLrb4wPoOfu0AN4ai5jOF9HmxHZu38Q1c1VmEMZX0fiXPgHIbC/hTkn11G1YPHoXg5nbUfWFqUuAC1hkaV/2Un1IQseDxBoVQKKNQHP8unaf22ai7j1XaEu2w6Voue0ayQy3fu3ww/16Au6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tKSL+wvbYW7dwW88Wb4p2+xEd4R6auI/zUVGqaOmatg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7cMsFOP7t+gsMYeqmjNB2O/UytDBLYz1fj2JoxTxA0Q3M/E/2qkQa+nDDiwS1wf2wM9dbLPulZrzkQzO493NkX5uTZ/9gTrqmrlPSuS6ePgB52YIpImGitP1Ka748z8KmvFlry0VLgDq9RT/lYCZi/uhP+MHwtkyL0U9ZOFQQkPcT8gEIFqm8q7MNO5BuIC0EY92cyHsHSfVsXDh33hZJJQkhxN2N/kNjL6KlJ4XtAjjCnpp83xarXT/9wCznYkycju1vzVwkF25O/CfwZy0o9rp8XOOehNHD4iIRjqjArkGlmE64A0uuMfmmMeTjcB7t49JiZx2HVHWF9etW6Q/WE8Vkp+t6sbLfDsFbomAgwauFmMQ+j9fyx15f/R4Lf6IPRQT5hi9XtN+zNO6cCFmUi4Nnr4QDWVK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tKoRo3uWRyNlEMjGVsbo2eQDJdPNZm5/9iG/MPqJ6yA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Xx/90+HEGqqd71db/cyBLqCCh1bkF8F3dYEQ9OceybVggQqLRAu6RIN9z9ZExXamzs7SAD9sc5Nh3yLzhLZ44F2SL1XiklqJRvBD4XzIk/v3dCEj4AjS/7Zr4FIM/b7/idzOlbrQtsQIJeRb1W8R4yi/sy0IqSSYXaAHfOkGd1kdOH7pVfnaxXKE9nAlKX6SsQEsHVTGGpF7rqrLhT1MV+btFGAURxdVkepZ2M8gfgIV5rcdhIYRiwI8XZUPTZqSJ1uAaLKuwORjg2MGmMAbRWlaeSZz3OvvAxADDRATimDXq4WO9IUF2l2eIhuOM+TSzoq4LrCuCyFq3mOjomQABI0ko0b5JMDY08PMfZT9XdBq5Arget5W/0VV5g0hYNUhu22AJeuVVnhCNDLHarwBm5o70V9m9VzV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tKprEVR+hcm+gpVQaJOZ3j9dqchQRQqE9vrjE1GBQ5Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Iu815zKZsJ3yvoWNGR2+guWppt72sDM9jG7s44Q+8CxJ8WB9sOJqLMDLuMHryLjAbam3YB6lay0D/FAaPY4owP8Zep4wnZwj+PuTHwOX7r5ZTs8Gd5uw0AyETN74cky8PPkAWYMidcqtfHjbncpwAkFso6PpgExu7DlwafGuLHOHsG7YvYKKLPEV2BbV6bcnu/+4PM+OKM9cFQELJMK1g2vqOCtthixzXQXNHUNzcENzClPOUDmovbbht9EfmQQuOVaBvak5kEycWPZ8PfpkJ4MHTsWPSZdv7tC2JtoYLqujDG3O/WL9ItCid8uySmv7wglUPvJuLeq+6+Z4X9Ojqt6JUHqYTHGZKBujw8/6DcU4R/WsmJPm7sgLyhtcvTVDMUyA+hV/c7nCtGCHCBZ5i6r9wDDEMDGF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tMQ1AJIEARehT0l9BLaibJ3oUCTC0Zd8tCe/Fr0YQ6Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5UrjIl2y0oQ5rvPtmML5EQdfG8wlD2EteyPT5tNk0J0o+SenUAIcrTiZvQYRFnKzEV7hvvaGGX6Epzk4I4L7ISVspIFdSq2wD8tcDMBCJ9+9UgmiSoRbvYs40Er1r5knrxKutPTxSvTGLJ7jroaTRULxT+R4GQXr+fyJVLWS1BK78ECChlDdHBbvvX8VPgfxJFXuRsJg6xmwXpnpRZdfHkbGOE2ppZh2JmSSLb48xaGgDrpr7uHubVfR/DSiHAcstzHg2JAoWbHj6ElBqEKfOntiNURKpumqBFkWCPT20g6eMnmihyeRdDUtIRVhMFq2kDkcJyYYyR3Sx4PenF0ioJCNhoBanGJgrs/qvOgPsHYQ55oc2MbAOHdO++tiNy7XsSOYKZjRU9ba83pwcNEq89AguC5erC6D", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tO0Up/HMyFYm2rCh4VDp75jLJoCCS2GG5jX874fB5iQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fWLACn4JcOTx9HZ8SQkFXNWKtyE6jXPuTjZQSeXnPclKX3LL4iwAJ2GHpZPMmNv7SU0vz0w2A6vRmaR6mnyi3JgNeZkV22iYqzeVTKBa8Y+Ai/ZQ7yKWQa7wVFu6ssne/JpWclnKJvh7Zh037UE6JfHs091MfhFl5gONVcO5KyzvBam2b0GyIgRZFUe+LEvX2UkjkfWFn3oevqh7CaUoeIBZsywLU9Pz+PjdhUBq/lHWgSByA8TinJfAyB7t4rVR4BCal+GS/8T11EJMHXhOcH/0HEdtoauvY2cTN4sTunhaaFco2c2+LxtPmrqwVuz6Sja3LktnqSdZ0OvNG0kwBt1Kqiej4S+wSFmOeockntseg9c/tY8TiOXhvuZDKvGFqGgqv1h7IF71EkvpSxfpkx0704Kx9ybW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tO9zDn1ODI7ExB1Yej+wsSYgcl6umK5AFGa5jdSLK2s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2ZXCm9km2KG75vKU2LwKjAjiQeYyfwrXTzmi5vhUPa4KQ2W0RSpTb/9joczCYV30GbvsdgWpaOn7bcd7Bmx8W9Hm71qvcRH5UJu4MPp/hUzDLLESmU4GkrMow7VEMmp3U2hw/eIsJ9FLTmS76Qy1TetZWScNI8SM9jZaUBw/RPTtd0251tXUdUjKTCvQqQxQJCTWBbCzf7fqa2Pz9QFG//iksNvDcs3hgqe1c4xsgr3zRzQUGLOzsKtuQS3wduUKJmgFs60evNJTe1L0Ih32ZMizkUcEj1rnD4pc8rfI3gubvvFVS0JpXeoysnMMF6f0BDbdIgIquOO2FEztH0wR0NCrQaB+xinpbUNbud8osMotEeEzSgKmg8uNVaSkpTr7opaM5T3UYnZVtRVGisXMpKayemYQJh/r", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tODUX1NhCu1Z6WPtQP224fSB+Beyj0YsNwSfyr7SlMA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QZFUN3YiCVXXXC3PCBxPJmoZw0/k7fGA/sfJ2e9WLrfRuV+1nRNXHfTXjmYaiNTexzxfYBeGfDDvN6PH1L2uvHDmTejinMgiucJot4vbzHembrgtvkZ7RfRzO+QBUnutxx4JKVIhp7yb9gmfQm03ZMd3y3LX7jFA6GxecJs9XuNX63JYXI/yDPny2TjIjeYj/9wddNJGAxpDV+72DeZge1hJ1aRqBWI3om71610C9uejNcUwapmLGEqu1YwmWcWWdlVnxRCexz3hi7OO1kkEpLc5lvqbhF5K34WiqOg/s5Ra/iUxlGoMAfK7awv1cc/lZq91/70uo5A611as3924eTIq4Map/mziZp9GNkUU11bmxrPueT2uKZtSFoKBeZjGmDllG8ddD/uzA0eMRS9xANA8/oW/uxs/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tP/veuTYv5OUFdHYBl4WaFR3QFKmRRqQU/rJovP3GVk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CFviXmnyedP3zGvoqE+DRSQZu7CwKalTIie/F1ac1iSQAXTu6h1+djsyw3p/hrLBaODGn9VJirdnnFEo22P/yQ+PGravXZF91Qnt1w50OuTLvgzqfN20bOnKAMT5wZxvShjkYI33wL0rKsqE0TTo+oanVnJZMs/tGEpTPGXomutFD/Ii3pNIUd2x77ipwhm/pxYZcx4yfqRcycBbP3TK1M40BmZlDQi0vtA9GriArK2nEQprRJIk4Ei72j53v/EAd8d6N2syrlal6xbAETAtb8rMrHNzbE/u2Jr0URumXt0TUlwRDhfGLnrzBy63QuUhJ51aeeOboAI3w933bgafQFm1LAz6tT+DtKLaxQkH16BX5tXyL1Q40ytVwP/rFEfw8U/fVutsy0pZg7EjJ+7fevkGoWpZDasW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tP6vBDJxnV1LeRJ+z37m/x5cjWKpT5wjDXqymB5xzDg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iTPJY2gj+QR6NrFDR3VwbvlhjJqMggmufjHQCsHBoMgv7TVW5+mU0CNmEsb6S7rOZwTDo3zjoTCk9bytPM4lh06Ql07clur2JnA5uMyvnFlwPm2/VrwKoMKiNzZg6aRFXUcjc0gN+EEqkVadipO4Bg8RPXc+3tGHZqKBznqAbYIh7CuBoa50eMB0GaMAf1T0Y6rLNuIGjADiFFcWmEub3gRW90419wUXFYaA/jm02wDqzF1sRvM/RlYQJoQVoJJ2NsbSF8G2PLydW8Iyt/vSZfwjDBcpxl50s9ceBYUc8W2BwoPMeWeKImcpjmOW0oBkuA59HK5R7OkqjRQxeBxu7G5trZjmitIXN4HrZvzR1LSt8vAeUBdLj09DvWJVX+fPfOAIful5ZEmr4KpcCttCIEPtLlPqAiuf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tPXwbTttACym0XyslJHcjQk2OTYmN1az8FLsW9ypTEg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uOgrT1ae858ypBplphORVVIg5exsO1GHAl/gqQKvkB9ZLRHcT+VWDqR41W13CE4FI+M+1MqdXKRRSJXXIpNRCLz/Pn+/HlVfruASp9Zi6rDHiCxNxo2j7DmweKFsqb0C5H8S8tmHuxIFRq5QIWzcxTRcXgZoHhd33M6c/G+rwFsqkCXg+YgdR63YlPgG+87BeAHEF7c5x8p6/y0fpJSta+U/vQt1xQgVzWES5gSjrcmCO9V6xG/02qkTzJNeCjvrqSswuXpQ5Fz9mOaSqfhNXi2obMxY8uSzPGioiEbeTnMM1oVATzBBDeoe5s9jBIeIQDxrN+uCPPi9Ul0krKFAlO42BQuPPdh/LtWoCILeoMtbG0rwV6xK2GKiWgjKMDqsXfhPYcdo4HV7+wgEjk2i5lYju2M/XMQn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tQ617eHiVzLFhKVq/A8k1gzwqZy2xzjPbLSDErXtuKU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hk5G+HQa89x+YHjGcgNZk36fbMAw8YVLy1dKYTb8Z1SNqqKQCrGXr314hL6NhTsOfq1H+FPLHYUfOdcKLRE49dy5wfzJl/E8Frt4Ovg6c4DdCFmrrZJ57zIocGGebXqk4rtEW8VT5u544vF/6HIZyJXoLz/munqZVTezZ28/2AqtPGzGIZpJHIlAXnbbjzkTChzsgb8BKg8aeilk6nU7s+k9bvDyX5X0xQcQsDdNR8E0BHGWlHe6bSpFHH76vKXXp9l0Yolm3YuOorIzx0EoTkDWm957GMQ88D6KF4+5Xufxc7LEjdrbr9xnFPox3dBBVDINadbXO73pxxzM+qWMsEO4A4sMm5eLa73JFY5n6On1NL4s4y/gI+1pFHqOShlsq+8yAw/HcMIedbCUlpQkx3lVKY9ThBL2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tQE3oIxdmMPA/Pval9z8chsgtoSZu9tEFsz2q7BakEI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RhaUwf1EU8LAEWTpLvSEC4ytCBZtzmSIieW0HljJEYJQK4HtJ+AvvYPI60G+ew2NLFCWnA0FEuDXpQYtjUOH934koaLOxoxKIyVNIzYpqiVMv6envR9cVyhuS9/3AdtYBw/ETzYvY4JQHnlqn81uXd/BYVwq5IAKupXMh7OsjRuz9MR+78jWk3PeOGcuyhy+635GQAisFfBHVmemRqSbgIeZH9t/+clqX+h7W3302bCJyZfKaxBxfAiG97D8fdAo4vD69h+COy9j4BRaSRS1/FH/EOjsFbzgricTACkx1nTTQ4vr1lO96YeY50PLt8Vggaglg7FaMXnp9GCqbM1wOL3jP7gbOemiCjtrjXY/8LDTowSDbZYRJy8XlkLXL/mJaQCC+C5UjCBXwAdClJOTz1SJEjkgyElg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tRztY/VVIMNWNYTy2qcsMyrqUFz6Iadlhjdw2DBtSuc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cNmyU39/VEwWWiij2haGsdzkE+ODyQOa8kEED9bFjRJys3DS7NW6Aycp74voSX3Ihp0w2TVPYFr1gz8mga4u3k1M4YUjqhbZF6x6RQjWnfjCx6re3qxleMdD4yecZYqwQeB3XIHTVP/hnPZwM9YTt5xvSCjT+sGmmWDg5waFrx2sxiiIEM+G7Y3n6gbbZi8OGtZ7YtDFuzw7mj2NivKdBJKg5tk88RCihqMpj4fxyyYCqXBxFvpDdGiCW+og8GsENs0W0Bnu+cawjYo73bU7MfkSLrY7pqH8ePOTv6NQw+rRPnZ6dPF+fWgi12fmn3wT9qCJCao2/bsxQlYLKH5RhGd9RX7XQpqQj8NaLQtuQm5lXtvUF/uDKGhFoh071bPYrIaZn5h0iPqpYFwgcATbBMjb9+J7NJVe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tSnExADGTEWy5w5yx8ihJvtTIElASG8u75702vJCyPE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UN+unmHQ+dsC0l1N/XyMhefvdkijEVQoWnVB/tWgSj0d9HrVaEiNZxaRxGaBfzyojSLPBlM3HP+xlpL3LRWkRJd43PCYsUhdD82IPVWsznV4HPUjFZtli0Y2rHej35C+XslCl+NX8A6SH2Coo+mNN/QBfwiX2je65mfxpoL1JzhVgO1Rt8WSHBSGARekMzjqXopvDp1dcBzYW934Dz2ptqPKtwQY4pO+QWz7GBzRc4cryEpz3DPpXskff2kIARrd0a/LW7c+D01hZEhrZAbgf+UL5a1HSCsB8U0tJ2JZhMIMJroRYSji48ZhX97jEtrnoACBlZZ6KBSX3JRurhLMmoFnPzem7Q4zTrddHdE5+H1gXm49k7vcX1kc7tEzQ0Y4bpgozRw7rb54FHomWPkzT6iIvHKCRF8G", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tW3NIjMhUQPp0B9fxSiGa7fkxBIdQXMrEocMjWzSiNU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "caje+czcO2vVA1qHInnhpZddItFRs8G/rV8A85zGUrQL3YVAuHFCwLWD+41pnLaA7VpNKXwpvh3QRmweqT7ksqmKjESB6+eheI0w50pH/s/wCnjBl3LjK0WBDNwDIYJaLcWoA8zMPwu9skDeIBkEJG6659/ViIxOM6NwYds6waV8YMPbJEqClLYIUvIZXlWZcqnv18Vb7LjhdyMH9SF74HnB5srt29Q2PTz6GZm9NTHQj2FJ+MgDXC0Tj30fPd0ay65yRAM/bjs/oN7NZ9vgwBSeolNYhkMqlBPbvsQh0wtZpyLZQ5z9qdpfZIEt3/1QhnDmVYJ2t0nipCY7rYx+mAASS8uepeo8bzW6/8f+Ae5XuhO9Oa4/8kmJ/amqX7xPIOUDW6nYZ8+2BgRZq2UCPYU1zhtlvYMJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tZkwV2J66jQq9wUeL6drvRYFbXJEIIlmZvuoHdSz4Ig", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Oiw2o0uVWSoGC5dMbGceVr8xAO4YU82SRQIPhOO0eaWJhbndJ6moD7SECUccLZXkL2upW5k9sFR0tqtiu3MQP2AODsTGzsNtgX/rr6XOFCDHySyKALRS+0y7lYONwrUL9mS5WqyrJuULJi/Jqp5I60N55AIIOUvX3tlGKFIAHlvH1V8vQBF17QNadz6ixii2gzEGGuLZAmjbEBdJxPDUa41ISx+4RSov/ov45ZO76R0X3qcJPWYhO1khDXEhlzy4OA79mN8Sb1npmMNYaHP+8NSV4bvc/1nHg4uq/GBrmhsFZIhDZ50OhA6RD1WxikrK2ThFjQeciqGt46BG8+nZOIe0GBbywlkSQnHNdGZb7dLYbncxjBsLDuorNyy7PUxZCLuLPw8EF6JYeBczq1xVLew/ltFmo6zM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tbroMz+SuRDKGVjret0H3BPxyBSWBrRArtQ9uEAmarA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PuJmKZapiJys0FQuOu6h+pFe/Sb4VlVYCaRMbtwMGuxpWd5e/oVV73hu9lZ1qAd225+vBV93vZg9LDC0+gbC5uyZuzV7FA0V8gKT1A0UPmL8C2LtNE8JMo4qWrqVAcEMEjLNYNWja3nHZTQglK/8jGNfRp0ih9ClGNz4f+F8u1oAk13zAmsicQvDCMNeoRaD1nYlbkbZafLAmqmc3qEkD4MV0fB5retYy7rYmbqg0cmSUMhuxmMLpdgtAy3mdYj3r11LlV4MOVvTWduerrtx4ieNWP3y6Ew5aQ2PH/EhYgYQl00qcrDONJrlgOTUzI/1xrkqsGgg7ibK1W1ta3LkrXm5RiKcd/rl4XG7GJLeFKKgJMZEeuv6oOlbFiGpz3fdpKMaClD4iBL2GKyarJt5bXqwC+gatB19", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tczirhfOSFD8d/e5t1pTq6PQTgoosK2WCJB70iD13qQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "euQeQG4+kEjs+i+qCoy6tpUsm8KM5xre3YvVsVcPZl+3nwmr1/Wq2ffxMzpd8onwohJ+OVU3tHhqOnFFuoqtYpFC0FKQaevkWZ+kuAP4M1gw2ETTSVVxnfVPsX7gZeLNWp4OQD9vUSmRLGBuamDDcPJ+92OSjXSIlvGXeqUSzurnMpD7tlcGi7MqueJqtC7yF/tpF/OFXOYeB2jQBeAeJWhEzqTMW+WmIMBoHXKU0ReMPKQ/Ml67eKN3sH5w1zO486h3gC2ttIqrC9x/E3q0OBFsat9JgVm41lwyVz/97aFYbXYIXu55sLcHiv6w821B/lvYJALV5Tp/WWtggqCEeslfdNDLLSVuVvEa4be+hnnoyxaqTDqdiWoMy47pATPf2DbfI603Uw9WCT4y8kQRTnofCGoboq3a", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tdyM5/axiFAy3b8GucYiNfrsiRQ3m063+PLGJinADJA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kwaDa3Gy8ADXA1iikc8MgYMKn2m2KeE33pmeZssbmP4eLTF7OZubJsb7PJYDxEyKa5lrAQSkbjiZBFdlxniQ+HT6qVFvBUIyCEqxa8na2kpmvt79FeH2mZxMOUDTeczxoxI1bq2EAaAJc1IMkjRTw8LKVL9Z7Fr4eiTCquoYQ//TrYhPT3Bz9pCw+mY260adgDVrAlYsl/vUD3vSUNOvXYbAeuhf5LUICAfqnuiAKngauCbv0VeUQA8R1lTj+5uhGpfuAGmXmKo2U6zZEafG/7c7GMQqc1J1GBaCy0cgGr+cHAIdpXp7rpJzEJ0uax8+qsMHabcFNpqyxxzMkuL83D6ouzReFlSvOnsDFqZzDRPdOp4iAAwUNo+7oRu6viCk1W4cLnUvq+mvEcKUrRJ8bY73XRq5S0ud", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tf/vU5WBiCsD8sp2T15IyqhHTl6oS/E1/IbPKNHgumc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gkZPvYv7cGtRj65hyag39zj/1ufIoK6APVTI4arRi3sCx6ZK7BRwIIR2ZO758pqaxhympDERk2mZkAUVGrC33hAK7vmJxNikqB3MoeJAY4HVM5kKVuQGQFwyJ59cAgtrREBeZwj+4L8MnzAJHd3M3RmcCo3P73vB5ccAQ5gVCpQXUoLpserf2tyVUfVeEG05d2QKtLaKobO2jkfZGto+ps/K03DDjaMbwkNWoP6qGO3QTgR2TtoArtM3zR6GiyX8gShnEGbVO3M3py89lsD8oPh/dxCzQIaw958Fxt2zAWzg2X/Sjed0HJk4msKeFVmIn1oS0Ig74OJc/ChSuKKGiWnbQH5scSmG/Mip1pzH3c+IBL5ESbbi4K0A+dXh+wt9Rm4cpbmORUgb6GSaTBG/Bb6VXklP9pDs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tgkquRgZOYzkdkVVMyFacQkNboXYblqNzs+bMaTKqEo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tQCBtIALy+RPJjMVJPqJpb6fi0pP0HPmczcUgk9S7BdASuQDTWzVHXghPz7oL5cmKuC9Xx484z44tNaiLQgzuV+XtJMmbEfhaX1FoFR7Je4YlNZFb/hRO2nxVz34n1LcLdB21T54Z/QO/EtSOhTGuxb9gmnTlqHb1wWFXlOFF9uTbFwGIQfHLE3/7poWYszU9oRY+LLgIOBHYDbmBjNzlnmuuuXYFs/GlFZ5ZSDO/H0uuflhddzi58sjfqZkdL7/tex1SHJqmKEIc5wf6TKCQTKoPBS2g21kkYOH5eJWibLgW3rN7p1El9I0BHxY2Oup3s2hF3D755wUzqiEdksAeMT6DI2c+14/3lRI14jvLGSiYW4F7wzlgn31qPgdJ2Jui1+FExIsxlySuMSfwLnk1hXexCgPJO8O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tigQhRKh9PUMpUJn62ULXrSUvdUHv/dUGp/EPSKSSGg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+y/X+BKF1SETwKH+BEW2nx3H1X4LuY6XP1+XYasQsuOMb39AM3KABC/iifhdyCPHtn1BX5OrXisgIcOOLApBBkSLSADiCy7zQOV5B7JAYVjAajgRfzsenxvGAjTGWhN142oc7XZynC4RMvbxzHRYsDM9QTsXnLqCHrNwccmeKhz2Km9Dpl8nYP34UTZgsVFiIwhk3GHc5+lLFmtqHoUgyMa2+XHXS8MKd3A9hv3Ts0VAHY6yPt/qG4jgEZ1aliTaERiNDJg6fR1zKnxEZL3/yKPNMzVIHp9lYSwcxWOLs6ZLRliCh0vNoC2i23ZYaCVwl8cUHAEhL/jQ2D9Li2yC+mPfNKUysSLpMZ/b3dkjVdSTHBAMeGJpsTFN3Oyd/mDS/gvuCEIQDnf+229IyZq7nsSQJ5OKpd8k", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tjH4fZi7B/0ud2LvWvGr1Mub+ISYDk4+vGyUGNIHXhg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "x8FqilEzIuECaHUo7aVcGO97xF/vPXywnpnYsulXP6SwC45WupOvVbOycYhpg1fBVzfb4BfRytX15ZIb0C9yAx7B9owyqxFZTCSvqBtVKs2mte4rs3IfMuBbhlFZqHtuFTGInbFn9Ryz0vP7VW4Wy58X7a9clj70dKPUsc7QN1h8SzoFHRQEzIRkKEkLpX8KQN3ct3vxGObDntRvF8NI7Dw4i6IF8HT7LtWhWzBnYcYQB7BBUokX7XSrVsLRQgofCPNtZb0SgNKQaB+xRKaFCKAiHs2oLfMpeV/51pu+ipmJB8w37DUrb65azllCgbzYDp1wrb823Sk6nyChcNlPNtHVcP7Q9w6pObyAKbP/6cb6nAE8B2a3gvWsZRpXZbEgseVfMlDW5bv7a/0F4WoqK2JfFpjwY02Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tk8B4R5YtppmzAMQxHhwbR8dei+kBwFOzWbNv08nQY4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oKpTa463My4Ib6JXCQ9AyQPC4Xi8lFr4cnm49VnAH+kV2IehWMTGqq0HH81aOz0JkP1wQdOPrOuB1haTGTcAb2j4DSfkUkfi+Ivxeg2Lx/0TQjQkqoQw8jRr/HVxMW1jtUQLavt7+K1N0ojRuCRCPbwcChJbTqx7CGjAzsF17YrlG04CokDYBO6v9B6ZJQMfqzDedkQh9DUGxS5a346dG2P7gStbVkF5NKfLAC8qdEEL8MOyxIyGugx/7c2vZiuPHHun+rX8Y9mvctdkUbDa8RmHpaMt1hBIZ6DAv3kJnBX/nEdC9z8TCoftZV7WgWmanZM9RA6J75LVJo7dVBh0dUDpsAx6oK1NSnjerfJimnW5IyUNHCEQPYF0Y6s66Vdmp8F8KlAqEaqFEdvr8rL9JbfpuwYc54Dm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tlnjMvIqbfz3sWjesDplTBOEYWlue2bzbZbfEy95LsE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ftQh3P89VqgYPsYrLh8OLERfKdvM1zg14llLdZFgvS9NKRLlYLAsPVS2Wl0vgrjd1i/8aUh1WaafPXgbPzTl7pUWNTpQPMmpLlh5S5bF8QeBFTKtyHf91g7xJsJ5+mwmYrHhDIbIE++54uSyi1cYhOmjbNOf71c3z01FPIY4yG6ri3ypyWZP/CNuojfpUeDaMCr8omDy2IDDnI58hwmapQwG8QubmOqNytV/nfKaFtzXfQkYjDFfYuEHTuTI5Ic6TBBBuOabil7SN8rj/AFv5vG9ZKxKBbn+cegTWNgFb5R4capvEyBFhs+DiaFZSZpNCVYzbFggkUy+zTnyu7xcItqrjcyjdItIN/BwCEwTP0OqzUQTeplx6+BpgVS2ACGJhl23iIi9VL+tcPEbmG25gOy8c+ndsvLR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tpDJR5/JT780ULU8vngk+hWhI28X8PPejGfdnFz8tO0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ouy8IvTc36z2ziWGr2HCheE7lP9MeC7nd1UeispdFY0Q0y8RE4cMVX/FDPD8qB3uSQk6/T+YjvXgV4/+8MOfcH8SfsPnVFiapfmL6IP0W+y6Ag7ec4k5mftzYSFWEPcdEZ8wgiWC8KjklgXztaKCHRkPaQngcmfEbAnPJP5hQ/ZAybrhzP5IiOB5o+PKIu+XyACrFqgz/OPLjcOd2waZdcU0Xn0I2h/5KlYSg8BFJQ9338vLjekN4q9Qg49cxSgUxQjj9dm9L0NkXRQFCi+1498DtMkGQVMs2oFyoxNGYQN726dgau/88EvjxnIdqR3H2nPLjy0yK1/mzGo8Gk6DevdAvuGRmeqVuB6migF1Dq1p8eQ7Qgw7iALJdAsBZLnHf9C1K4Q92fPwvYumXHfaQIKW6C9Cg+AR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tpE7tGKzM25ktXncqEFsfRzirMP/5kzhuxhnSvxits4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kZ0qe/0gneHJInYWBTkaU6U1o0ll+xxbsLsbTn7fLin6soWULgIhkuKshxx5pd2e1AFrHewz9Obm2PE//+it1pPRvCWj/RPklqIGVXP/zkmvAG6XAkxcZ4LD3G1buX7vg8Zpwzqk/z/9KAROv6VjUxUOmU0C1uO6f7tHaeCmvX3CbKwun33qj0WStuUYARRUCnMTPqW4Z85wMLHEl8n2LtYbM5TzpdhpIklsqvDXQ8FG7szlZNOFj4RxHnU4cN+1cSyP0oq3Irtkze2z3PBFGjyufZtFZXirZwuRXZs6N24tSQp2KQAN+VV6h21o2H9Vdx7/IL0CcmQTcka9Yj8rOX0K2jBqtwBfiSAO1VL5YdXNNHdxa352FuasenRGLBzLMrs2FQQsf0hJlBMoY4atPGyi4vJJHsDR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tqfdJ/evNEGW0+q/7GeLgz/hvd0ldvTuhhBxFgE5fcA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yeb2XO7tNEgvYdDDeKfQ/KfU/oCS6i/MyIduvGUlyqrLJv/lxw6Aox4SxV2RDrV/AFs9ek0UclYPCiJT+YUtbgcGlYnkWM186rXR/v1lh2deOYJ0B0ADD1ssZxs8EhLqqh7UUYIrewA4Gk2noAEXoJY8h6BXxIsNZG8Rv4yKgiy7ivdWzjltR0PDgRC+S29H6hgsBvyLn5IP7pEFuvhh2v/xpkhL5EIFqDeC17clE3kGx25DAXN/88qNiZbq0s4aBrWK5NureTAgFkJ9LB1UVvXREnLHBLCB7P3cjl8M5bT/RZA1WgZ7PvPI8IN7ohNxEyNe/qbl9aCiIP8dMuih+MLBudhk+31O6RxyF1pjfcobd1h2zUt4OCmlEMnKPaYIhw7VpOQeonIYb6po2Is4ESdp3PIfPgm/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tsR6UxdhHfsen1HRzKLHCob8xr3i7CdT3nKiTSpgQ0I", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UKmssindco/f6wk+7m7Mwfx4iGXdn9UNSKejTCMjjS0Jrga5dJ0ie+SI7Xn0hQrxryz83IU6ALbJMj6N8GyknMzOdwOpCZ/mHQG845nx9I4xsfE5OFmzcTMojIXvrf856HUlUxC3OL8XHyEtRg5DrWkWymL4r7BEtCdGp1GWFJdqIy0KVTHKsIaxgUNCUoxhGEbRa/411L1tz6nh0YZ6ePcGbwzEOl7+6eErhSC8lkSSc2abQh+wkEK2iMLSwdlKE8wCCWh9n34Rp7lVvPqjlaY7EVVxDYRcxBemA2oOLGM0vhfgaN0WGYMvYZW2OsguUxOmRfsRmiV1UurXmSizWlV3wV+UYFoSRfP3JUfQ3BEq7ngG8uvXX4BZjiGY0mF+oQP243x4sG/CDluwB224rzeLQfoeO5zv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tswbUk4mdHOjZssLPQuFcQei5Bf7dmidJfgYpBKjZmA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gGWqN+5BCPVk+D29olELAzzZvimI5rGF8Sqj11JTarl4GiArwSWrhIpGaGqDdgYw4zdwR8X99IcPyJUO3cD5RaNXB123SfGcBgJYk3ek7vJqDToBEfnjUgzDp0gma7cmNu+f/EXiHh7QhM9pIFkq+VzJIuHKCRJfMqCdAgDzvHRPLBFKIFSxYMlUK8ntV3VssBrCYvz7ZLPaJmQBGoQX3awSUpRLDOAVY/eqymbPt1e/nMMa1okIBu/v8R0HnHqrhS1PO0eIpjpCystFWdA+rtc1zruLdb7R339EODTHnHz/OENOhiTR78WRYSYkzLfg1yiWgOSXvhwYqf2DG3zz4zqu7VYswqznU3CWMHXj/yHc7TnPMeGjZC3ZiGKgoGWC9/fwP6Rtak9wsNWsSVX7Vt8jn3VTB2P7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ttC7L/LmmA+3X4A7thISe41vX6YkveZVe2Cr2tkvcyc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gIYy/RiJdmcQuPtaPDxe15sGhGoj+DSETG7z5/lbiyH1JWoh70SqiGDhi+8CP13AvdlBw1ocb0Brsee1TdRajpT00V2lkbURk9DY+62aXw12lDOJAMOcr+VDun3DwkLY0glI2+FFqj7/Hd/1y95X+8XbMBxXhGKCrWClcAAFi4JrFjZ9dxBHsUMRnMQ2aToDvhkiAeWJLHZk3YlcDfrBPRhfoWJUdeCRLqWCEojxiD55tXY/bvnjlKs6Ki5on9kjtLqNgnT1vv32A9SqSE6rv0LOkRwHUpBEAenaNuUOPqtnvs0ghDvXMN0HN9fSleTYljrsZNmdkNle8aLHlbVjOYDzzS4W6ude0BmVZdCU9nKIvTkIEOLM2H4EJsjegErFClA13iSZPJix43lZducRm5LhrVDxVEnv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tuDZzsnwib0uMvFnd6CyBb21d+z7EBE1jEISZzIeBEE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m5fvUIho3+tsGU0DzBzi7cCDN2b1hZpxnqtbfSDEoYKxtxqVN7RxxSHzyR7a6MZpVSM92j9hAB8BtjdPbjPmUTbyzbOtc5hAQtpgaoDoZuj2bbE1PbRjFhtxlNAIFJ1ZpC/FwGEK1NtH78INwQh3os8DgImrtwXuBASsEF9xyabwYPESJKzt6nj39Z0NtGCPEE9FYwUk4sVFi9wABtoRyFSFrdwunxD1Mtg2DR/ArU6wGL9JTP+Gl0Zssfl67bQh9OHfkOxSqEwNzkLoQT1I9zBn/5i5DEb6NELxPeCAbktZd2RLBUoFAL7CptOoUW8X/TrX0QCrQNBwjb60KBK5mZ10ZGvRR0E9EyhZyNwf3R1M42OttXbH/6aoD1JMjhELSjSO35jASUMhBvkajZjrV6fd5ofMmc42", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tubp6eb9TBZchgF7ues3vrAq2dCGiAhi9A1S1ULwhy4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eJqd2jucjhyAJeM7ot+O0u2wr7Lvvb+zTQHZ9xov+35bRZXE+C4n6tf4qSBrEpcgSML9PJchuj23hmOX2fAZsDnA9fpCDT5peygClrvksqXrPodbVMGpiemtrOqjtF324xZqTQdie3S8JbBcSkjaTneBLzTDQqxmP99Uw8Bcper0ro1zID3a0NgxJwxIt1++Y0jcC0zoHWtE2xI9WmOCGZuPFVxbU+Wwk4ZQhy0M/Ydj8k1Nr7kcaC5WRmc+g7blyA6Id/dNpGSWBAvTV26NqyRkl5AhTtaByVGfFCVDEGFWmJzFCKRZccy7tAkQtoqN2F2RqorVcazTuUeCr3Bf7VqVzX22qdHGY8yVhCMuf5koA3oUXbSdw/J0O+vPeyV+nFPWouDZBhI045lk9BGA2EmC50kYxcSN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tw+k+3BbGulCLTbqoS8YNp3N3m5BBjHde61sbO2F7P0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1I4IArkAUrx1bC3kN6Zq+BgNtuc2Be/B/tqHtUXuyeHd+KHwEQLffL42JfnaplfjWpFrKezFjjj/HDObzBR6Sqx423/rD4dW1EAMmHOslclTMY4oGNGWnTAUqibA3PmaFjHWiWW8an5au5CH6QtOYdS6pySBfD10MadMgeXxQjB1ArcwLtP/4uugL0khU/EbwkINtnYoCGTCysRq40HBlu92n5elJ1MegrVNCjV0ae+fw4dg4znL3BzfHYChogAISfnqMxI+YpyiIdwnQnmtBEg3I3+fXJbvsByNM6cvR7v6jXDdR0Z2NmW3UbmCA3D9FuDehj0+roGMAr1elsmvjicn1Qoz3wTKO59DDFp6ZYG6U4jtbWrpCkLmoQynP1YLWNWVhY0jASij4FKpjD1fDpFw79qTJem3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "twHA4ydd7vDHRM4re1l9nwBS5SMGAzq/rPlGJsBKXgI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AU+3pdmjV/A7D3/sMzRUqtw95cY8FsKt7QOWBEGNSMe7icvsMxS3M7YBrPPdQDIhJkANpSsSXWYKSqQDKHC3b60zesPNpru6YYY6iSf8Ib9mshHAt48JGq2PYpEtIageTrW3VXxe9+ZBpb/XMRbzZZr5iV1HTlFwj67aoqIYs8245FKAYwLWewh7gqJzljMFjZ5jPZTEeMotJS8eRTdPH0vdkBqUd3zDlFlqzplMf/tnyJNxgG0EWZNMPA6DesWqqCKeDy8g8VGeO6QfNBfeO5ZdciVqHZxBb2Rr0K4PmYXPmF5XUEVEfkLwNtxN/AOuq2Fe3anwLgO2XlY7XYTqoaq0Y/TJvXchkLpa5Jk6bWkQeQhzxR/ijF5ix59gEa3nLutco7iC8a9iAYNDY+Bu/Oh6a946OGAj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tx+oG9n+ldcURW+idliu6Vi6sc+dP1Dx9kWRSjbgOv4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "K2wV3htgPS2IGz4ixFUl1LseEYMBbjEwGZuS0D8t1eE8LCPsQO47gSfM2NPppkh0iBJPZHYoBzLiIKq5HvM4pxonpKqaEbWWetAyVKIEQpYjS7vX4/SAw8DlR2GNb5gubFW4Dv8V3RM3AGkHQSiUjponM+aDERopOE2PtNfX55X6z4qNXOYTjZDLnSyr6AMtPJ3dCKNKM1v2k0kASlPxkxkFNOg9Xzo6cHeRn+3DW0M60t/IClQT5iCKf1r05XHzpW+FreR06wI5ZlFq8Sif8SZiiVQaYp7eDDpin7PZfDrJ09URJUzrFyMuyu7kIYIS2ilaXPkn9wpE7mOl2VwH1/GQ4kgkfw2e7EGH78Hk3KkgU7CyQzlIKea9lh/a9ryBB9SUsSVimKWd+NpCagrduelRW8lK6NfR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tyxFrNgUAYz5j322MfRbL2yCIx5PGZGw/yKPwpQzix0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PAtSl1R+bJwXZrCH4gmYG/BA9Tb1P7yc87zSDqIEC1Iwl36HOQ3zUWAIAizDmhmYZ8IU3zk5v/uFTE7BaA8gA+M19jxEKXf5sgQsdW3GSNvyXTwldWwTf+j07KQzk2R4MW6a7tXfx0r+UMSNMAH6fLEspkg4k299pH0PBDKqgtdRdq8z1n4Wit+SGVyjkwpzsBsM69DMVEoH3NWndikG3NOpkQkWuiQ5opQ8/snWD+88pvNIl845ZDB2XxsGh1GWG3W1nLEM0JEKnSWXuJEovMbVWAjtT2O8eJX5lZd/9SwNGQeFziN7zBLR0lH5qzAbqq6RorIpu6I75/AtoJxVkA+h1nfW5ajdjnOV+AsP4Wf+AEKO/DCko/lFxZCwg9JTagUVf6T04xqDqKg/Q6YCTqrROb3Cqzu/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tzAtKfZ5ylGYsKVVsta2GqhzqOLNGESesOCqGLUiH0Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+IDzTzqhjoEJwp6fQO7becGQYD5/F/+oQlCfnEwnox4V71YZTbRq3NkGc8faAMsFqOJjX8V654W1P4dEEVzFsbc7YMycNzaFU6GQQQz30w5iuXRQatCn89d/IZsq3UhV2vXMVRJb0Cx3+2NGCPy3Dkk6HEvTf1pae8XW2xkyGlDJk0b5l6qWCl1RYBB+lNHgKlEAFrucXTWxwOs/RQ29zaZmbObjzLE7ncRTtoF54OzDWlApMz9NUgisYbZdrBV5UBuk9FCHzuN3OJXw5cb6vVJ8zDWPHb45Pdw0yy76gsyB0Mlj8ntAeVdeeSJkK9gF/tPKZahXJcqcB2aP2mhj1nTG2AbZTLfkQKJbxtM1cWn0QhuI7gSVVY4ueNWLoGMywulUb4Ts+XycKLcWMKnFYTq1OAtRdO6/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "tzb4cUmaEln67RBB8EoDl/sEs/FPMO48Ev0PyBiFfEI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Z+0hy9GqljrIVV5gTNXC8pRqmKB7sJfABPJqcCQFldji8K6YWkGkt0Jtl6QMNl+dOaPgCNOmlL27UGL4bGSp2MS71lzJYKR3km80dqm37KfbPGt4ox+9f0cK81aOV53Z3q8YKKIanl+gFdigmO7nqb0FdKO/R6/PXGEQCtxwTkIypVRp5NIQaBZvXJbKxISPaYbSDAXixHuVZfCi1TduN2UypXL2VkWJNaxQmYNAi0ZcKj0N5x+bRZb/2JdbDgnlLJSdB+yY/T9vXUk6BNO/lIFuXdYh9diLhq5KfT1Nln2tiJ7pjm/xrplQnYaw7J2WD0XgBPKWZousFr3+dbMnrg86XhvSl/9q4kqs7PTW/Y62sAWlgpxhIiSn56fscKJFfjZ2egkTZXEt4B/Cd3AXtUw6ThK8rjTJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "u/VY+YHtozrrKkldlQTII0Q7yjXHNE4xe/yFkPqepPA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AEGWKldeMkOaW343STPjYCPXDJzgsd8xzR7wnwdXgdX93JCvHv5CkDED22W+Rf/xPFU0oEJyuEzwdMDIG3rocaVHSmrpQHzKcRVawg98J4D0YeF4Nk7N19R0TYK2limlY0htCMO6AyDHS7NvCcm0gp0E5ngmbnuxnVP/NHQW2jPu+r0/IY5Y8hChaeiHk4A5b5ZG6gjybjDJYyPuFe7mz32m6A3jn13dg6aqFRdBkZwwqHJZPQ1EqgtIzd7V4humi8KqaBpwXwlNYMCvPlmXceUq5kjCkvaeC1J68b2mKVB9oOboVXLqLpZSRvEHtYMffumNzCuShcn6XXlJlELk8AqXgXpQkCNP1vPm3fdEhKVKyDM+6GWAjgo/cfvuFjqEUGpyxKhpoLNlZKFYcK6TGIs5sPTIF2qx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "u09ltKkaL/acq6F+p3pqON7m4kx/tLh+tSgt4bQCD38", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BAcJLrXiv98HRwcNveFWqiEQSzG3cy+hySVofVdUh/DfXQ1n556+tjZiQnnPuIBLjQJ/hAdWUS7cxfuiPxIH8o30MwEYsBxlozvlWAqitvgPMAuzjmQCkuYWccqpbt5PTfLjBwjhH+nVgztJfsag8Gej8moSUfpZvrlmwa1fvXIgNEDh9Tq93OHyyFF6oTKJ/Ri9XIDnsF2upi70bO3UEzt5Qnv441K61fft+mzvDqlIkP23JOQ1Kr8R8LE88oCfM3RausmXAivu19baPnCXffbpRtW2z6GJmbuMO3YWuIxWQJkFBaG92/l5L0AHswG/EZN431iunAnXyVjApkolR9TCU8u5u7b4LG442QhEqz/3SS9ipnbYHJGFSzqACqUNZF0ul+XditBYSebYUL/d3vcBBhyBYA/P", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "u0tpwskZnrwzbTAiyBXXFiY+AzU1Nz1gROpkWfWCWJc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bzCJrEvskLbpS9vzsy5O5oOBft8aAgV7SoA62q3I6pv6lRsv1OgxFD5JD8ipsdL6vcm+hJ91sXkYwn40NeDHGyOTP0+XYcOz+EEm37o7U0ZkRWAlXFjcJYdPT8b3y/tYdb4FaIIwVr6bSZYVBREBY+gbI60tQIY6crkMQ7rO7zQL7Akhknpb3WcN9HVd9I4XoYy7h1Iv7wr/wEs7cyxKoK3ExJU9BK14VMSOlKXMJpzWfZNhW7I22Tgr0c96zuVjPfuEvaD/+DIfgfJmX5tCHEh9y9HeYCpBt4pAT2Z1/sy2dUNjz8MP80zHyrkn6dS+P0gB2evS5ENrbkMBWFoEum1fAb9WaVASCRlsl85J7SZjJJ0XjHwYPjetpJ7d0wbE6+4EOs99ODDDSOYDsL0vSSmbl2N/esol", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "u188w8nkffQNEofCHR+4cvwO2VpLsgcEYhC6zHttYEs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hRy6GLiVGibvsn6JHI+J28XRSFFpBv+NI6k7oturKytMwgQBMMMNk9GD8bMN+fnqZIN78sjdTZkX8mvXPRM1Am7El1oyc8bd/7vQdCKYOXLu6NHu0l5nDUwkV5vinxJjHhT2QZOJj71MWy247d3wDqjvTF2FEzmNagZYZB4l0iI9/cuh9pYp6yY5utk0bG4tMvKzEPdCn82v3Pcxag0FmUS38vBU9LQSw9S2xL/GSqK+6HhRuVyC83hqNEtVsL9g9ihEttFQYlF4CkCPegRwyB+TaIsSRi2K3V7onQBSXP52SxNQ3oJPNFOHTSle05DqH46SuDcjv4LeI7iWWTsTl2KTrrsKh7iVTwSFt23BFGQcQOaVPMPojMPnYRikh8y67vq9iZ0W1E+7gxcYWdjaG8gq8jsY+I/H", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "u1WYkrToayTLdHp/WRIsRxtNMg2XBZc6LpNizf4dHm4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+2gT8+JFFlUpt6XzLSTYIczfGOKL2eflvQaLNUoeVGzmGtqwpagPOrVMff99rm7vT1igEgK+WhL1s85EAr/jKgomUdIbajW2/R8eM9Xbpiz0sBrWcYFe1QlBlmKpiPKv/3rEejVVvcYDPDo1psaEj2Ar9eeQ21J2JDUEbHUwtt9K/2EToUaGYETnYxI21kLSlTHABk5RVrghehNJJJmqsNxQ7YSxzWjyb6kvHkIF374iNKNL8HHXHRKzUXFIQDZhXda7neGWqNcn29cTJyKLFrglbk1CRL0bTxj6D1oIeSukYAnaPdsLpMG5Bb2YCHiSpfwJ4PRZyUNu3sBfugbdjRiv0nO9XRdZAB/i64T2PLTdRlyd+3qrSdrOskOy+hLw/QSFptgKLNYJ+X8SMNAdvm8gDJ94hdxf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "u1mKCgIa1erCbPg+UNGSmIKc/9dTD/UFjzRbFYJR34U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VeFXE7my4L70mgpE379kn9e7r5fq5MuaQAHiwt35w8FWx83hiuk9FO6JSoV2bU/LkbR7514f4nY6CeUvwJQL+arKwiHFTmhE3IThOgaSnHbfQpAEXdUUJ4PgIsmpCZPVuTbGOl1C1zZ6sWHAx8w+v+LgTvdzP6dSOuoq94gVQW4y6aOSCF7N6EZqzqXUkOnxtRTu+BpQRLvavHE9kL3q8XQ+BTyJDysbosjh/Ea6p9gzYFw7RYqapyEGm3c7/Z+S5d+EeEXIf6//079aHrSxWEa8vcr5UoyLk6CpVI3hjqUI03T7QBeL4vbfkIW46IwM5CTouzKWpQcYQIA+tu0B4bNz6rbv8W1GGyasYe9iq88+rZoBc01g8uJFl5DYmgNw3XjE/UKkY9zE3N3M3qMuEG3e5DPRjc7i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "u3TpqSy7ziW2Z1UEPRHDTKC+kpyLEWWgoFPfgJ7JbuY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QaV1N/0ic9nu9r8SYvTgP8B6crL7+ALf1wpipFh4pMJB3a0El5T+1h+j/01JxWOpRaLLgQ6hkmo6N70IF17NV2mSx/RqdqKW2IkQWvYQ2ftE0jKROYxV4nlay3mByZPiGyrNiOYW0PEwirPXn2JV40XBT1AhlVl4tbS8C92vQatWGjODPvAkTaDst+Cvf3y4GXdeBmimuLeY8FSRnrgngruTai0WFdffISwN2FfZDUNumqTE9zXqIDkL4Zbaxq33jA13iwiz6TxkkJ8IaJ0RlfaI6Bqls9dO+Stnhq/3gDofc54dv41h/V/fxusf5b20Rb1Oa4lCBTEb9wFuTbq/uXZFWZvV6+efUF0aHjH8WQZusdZ0ZWYvdgLpAr43OOLa9wjLwAS9JePyUWsSmPOlX+FhVB8eD6DD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "u4a/A8yoE7RGVVMDyKjsMzgEJt5YjVRa5GqmnuZSsyw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zB7aqCj18/0fsjW3cDP4JhIpCIJPCNUMBI1k3NjHm78vndiqmLMeAbteZViWzDJ1SqgosweGpXNzmGzHDl6ibNdI5WL26DAYOJSPsbHoK1+meXM2iGSsLuCMX4lEMkW2Dod3k0N8zlHoRlw6cVJ6RI2WdvzC6R7gWFBn917mWEVEhXVjQ2GvbS3xGumWKg2xd6PP0k7BsIWQWVWq/u2jvqWWPWjIUeK98n5TtVLgETO/a8GEsStNMrDoAH2qH2xUY4VZsmyeV+O4cmlsKZbQe2vjKJkt66YRDjZixPz5KCVEWwSXTzKPlDTkCVgZe2PT43waHB/HY7sj8KgxPILTMR0T7a2sRSetYswzumCQ170jAijVlroxI9dTqt7C2FbBVnEGgxL5sAYl7OX0gLQHtZRrs/LmMyF0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "u4g7CrDMSD194cHbDdEK6vjEiv+EMUOCpyDahlrsCBg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XBWV+crvrTaafxM54y+0jBdsBMMCzsyjFRVGJt32Ue+HGuWbwO+Yrd7F332ca26NU62AgxEBJde6CZhDJ1Xb4NhHP/LKzmqqnOavywgIM8LBAt+7lg/i1J26fuOnKrlDrDHxZN+Y9Q+Kds5Li3T5j1scVv5iV4KBTmev/86xMRPB0rK0CmmEInyaqDdw6qqGIGUsKtvuv1B9RB6CwseF9j0oJwau4g1SAqzlUC20vTqRFk/QgqfbcJNTOIh5VSdgzmWiCHEp1FFmeX9s0xVGnmgbaIcuSRNe1wThkL8psq2tgk4J3ruT+2wCuLx3azoLDhhDbUGvyL4eHENiO0jpVlZQ9zpZ5SIk4DMtooQXKCi9yiZvE3q4hZA7sx12NvAv/wcYxUuwb2bD9HH4JjJBawDi/sFuPpQd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "u7SFzvIroULVFuYBsj+Nr/6OR+umE1hVekbvH+Q91+g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o7rqPFlsIbv+Lxl7n2BXofBOEjujCux1+BxHxiZh2UYiDonJu9/6y6cMP22Gunf8tb+TOhTDpa4m/WYKifNZu02Tv+AXfKg6HmNDJp+wFQkE7Cc9jM4wiNDrLhF5kRw5Y7dC25fH2ankpcrh/PS7u0j6hy2ddzClPjg+u+nCVoW24vuOX5kbAR+pep43jVkXpeSaElCR6SDznwWqH0ux1B2wCA6h1DlWRZ5Aue+BVA9V4ocEkQUDtnp+SQWbzTE5WdfY0l4I5lXe5zEq+Ax7jc8k9rhA/g7Ng4t1kQIh8BsC+7yRNM/bPXZrqu71En8OLprm8xbpleNQi8zt3YB0x1Wf71WhMh1krg0hADWGdXEVaHUKcTDwUuZenSKKgmKQTwv1myh16nNvCi2wxhsKuw8Wiqo0orv5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "u7knhHD/IuSdUqCCsKOs2cQ02WbVmepkYqUP/65YQHY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Fp9qMLZVXcVReONDJTOXA5CKlODJ6RUfAV6r98tzP0vEt/CT4ObBUAUj+7FyvoYxIJXvwHHy2IMEoy2htx9V0yWb60zzJqhgrdRYG/hTnB+aQdnfX55by8BsdOBwWDCW5IOEdQk+CITolI8oh8wB331for1ZL8IxwP3+7iVy0uU+nWHnfH4xpqeWL6i4jU6xjFHSK2db6AzIDgYFur/s7ld3maG8lgnIP20B6Ggd6W9COXHbgw1K1Negxc8e/RT1kE5dbKM6752FCd2/J+C7NopyMw6gJAm4FVgohKju+aWH/54w3TbWvSuAmNuGbfhoeIyN9QIZs8WlV85VULKoxURBTc4NRO/YIn6PCYMhmfMxkZLn5eTgMSR3kQVFerBHyCgUz9unXcrc/SjIHsvBKoKSa/jImqVA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uAckjj5zK5UbFpWzlOcD8Jm1BuaK6bN3SoltlU3BXnQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BeC2mAVhCrXMtK0yhz+Ky+wLxYHnKnP7J7GSo415fipLeKHZmwtcw6Lup8inY2eC0ygpaO+Th9Lus9NbXQySK/kC41c7ttGeTFpc+KRHgClk15NQY/A2cWa0K8Ly760WJJYxu3NBjcSnJQMCuuF8ai0FF7Mh4WPozTUtd7xvWjuMIRDZsXOIkjLh6Fw0ZxkXo7yezZLa22zqxlcrnltuKBgdtjLN+COt6SOkWj2IVoiRSQPOhl+2ggw1y5QwNYWkJxI7V1R9RvygcugfBJGysyiMC+di3JoRXeLT1sGOoosI0rDRE2CywT+ZuPcKchrr/WBW1d3HBbJyZQzHUnWogFNQUcXNNnBL0WJ/OhJmY6J5187aUFSUdbtjSEz1SiLJTBGBSSpINNUdzVrc+Vb4FDZ2hegY5cy4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uBuH93qEnzqlTh/MBYcMxULsznGq8B8efRTgU/fh0xI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HQglWcga6gnDWmWVyzFXFh0FX1G9C86phINFLlexMn99e3n248epOl+GC8LD3eltbkP1dcXI+8JV1RJxQiN1GQRZeTdIO8Eo9OJ/Nko3fXmI5r7bBRWoVhlhDcfTKD7U5XmhXV1jWsNMl4YkVEqfpPXBQZzCgOAkFcj4h+HAKVvLMChxJuREegwBbA9p6iI4ewM2SMqMI5coZ1ByMQSynX10wIUN6Ml56CkUX8Lax8cB7FWkJkQfOJLJQp3TI4i6M4qQ6mR3yGY93Shlg346FP/eHME4Db0k9cM5xkSOJo65ozVry5A4eg0mhey6NVLVnfhA3Drkdcgk+ngOamGZXAm/Q8hi14sqrlCjRaP9L1GMX5BYZotmgKdExTayxG1ZnHCZkkhEDqrtQC9FJgv9Dqzaa8EzQ5P5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uCBqPLFfdHgqrIZM55kfVsp06oSY159vV6R/V7C9a1g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u5cSmb+kBVIaLeE0BpkrF3krq2pTwpjz16RNQ47VOnrAjlDTXU2H405rz8zwkU+ll4PHsMzS26v389xmfspytgZy9httGv4CsoivF+5lJcV2CS8Zz+f9bgV4jrK5CsH6XuS/EWRzkLzDXZyxJPHQ3StMnXT98alYfvcP05t5PY8pJLVYPR9sCLBlxNMd5p5qZ7n+bwIdOOLobs1l+VNTuYDIc3/0vNM1EHe+pUvWfKO9wjM1aw9XxOaq4RzNpjlrOXhIuA5iWdsIyx43smrzzFfqnB7liFNXRPX6ZDTXuQP3JWQBW2BQE68C0lmfVsRh1sbp4IOMN1jy23zCatqGob577TJVGDWgj8+d91wnA7N0WOBqrS0SbimW2NcRgziF5MBIoU1ZEKcG4xPCDBPJ1xN7ygxvrrhc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uDDlcaMMd+GR4opEXaBsb2aSqbwnX3ul0rm6mdV0FyM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jG78XXbUerZ1fw9cxnGIi+bzyqwhJrQiWw7V7M9Tqi0yCKJjqHRDI88615OnfTK3BINT85tHGdrmHkd6taxtd/P7pDEUcxIETXMwcjwMjaqfyaNMr20O3VW8jqg7OIacHn0blephKqYMIKIH99abdgpJPqfkz2zZphW7Rq6ObA9xQn/0EDvmlpK24HFHGpmjzDZNX7C2K70MI1R607pZ83bSxMFYRU61jZvMRcqMnpef1Sb8VqlnmqkPhGcV2ubAD+SHA4gOtZKec6lR4cSx6U75IE5fpA9rScbZU/k6dhE+aU3gi47bKiTNRpbD1jWyrlH6H8BtkLYfzJxYq92In+92UHXxdqTOmr72vuDLQcB2nW7T+QDPk6xP7DgWNIHtN5eTIzqdehtwVzWmHI0nDfN6b++MqvrM", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uF9Qdj1FmVk+UD5JG5YsCvmUsK56oozOAWAgUf7uJuA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Wdr9Rk3fOUalyRjSx1q5FUsgZnS/KyKRaouqcA3NvlWvIOX9c/hcGu4jR52jxdVKh7t7l7ciIe6HnbsAwugS3XE3oRNEN/EdplS3X+SZCIwQc/ZfUusm7bqJanXABOuBUqmWG5L74e7t623JBNuV/amIeY4nXLWDKRKB/8ktDDz0TWu0A21v/IxtAeI8yCAxp8zCJZGyls8X+1jIrM/HjwYbMEhCtyhSU1oJ+iwYL9tZEhp+tUFLqq/OGI4X4dhfwMNE1HWusEgt4Lv/vzRniR3GxrfAcrkbDC0O5vPIZqblaLSowF/YLC90dy4qDRZ0afUQwMikZO+1EHXf8Js4kC87FISnv7KJZH3+hKSPk9Z5Ey2qyypgZoLgqOXTmIUQuR8HQTC/GiEKGfna7nkCV3nUJO9KQWhN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uFKDtjkNGVPkC8KA+P4To5DV7Wn4DfvlGq/VouN6leg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "12kx2WzolOOf+TJYAEtpFrFq1ErzeefNkdISlh/iDwiKYqUKyYM9trYOPOqHjRTLpA1LYyqwXlptFnKv+6V+EiuvpGULO0yjP9tQnh2zOzrTmz+Wi+7LwvNF9sd2cLUXT9eHb9etDFZ6PhhiWy4y35c3Hze6nI/Ldjqp7jWj5ZDkV6kPXLl0pg/UCIu2xOgFtWeOg1Qv4fjrpiZdIS0DcnHvqx9poc6U6Y2g69JjqA5SRTD9FH/+OwUNfApD0NZ8H3kVS55xg7AEOcGcl8URIJvLndtmczfZw4YsInrrMdy2BKJTPCdR44xgExg7Emel6F74GqDqkUnH9npvTnVljuOvfogG2OfQJGqpUli5ZsnE2T3EQAEKDx3t1W6JRO7FbSD28hO2DY9v+PwTKqEoRpJV52Mr7ttZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uGIcF8Pdeg5hbYVhY8K1hrg7UVAogenrkyngEulkwNs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3nr1S4wk2+OiVL3kbT8keRQZgVuKEs8U7r7JlrGM1Iwmw4T8/j8jiziOo6MLaKNw0pOhm92dm9c7aNdcxY6KPwcVCz+c/GtsCNDfoXS4iKVashCCNaLQINRDwxtKeHo2ZHCtTdDr0B401HcuNThhI1oV+i+VVdU4CSkMQ4EXJIBC7nYM1byKPUISRv0QWa+/Xm6sdLLVNpnDKkJjEj0SCJpVZUgVLZsyTZquFXwn2HvvQu2E9kdCWWYBVUCAIu0U3VLFNrrAXWGkYljMrGljhadv0PGTjmt0/rzkgMEj3WIHcvpty6eq9gT5cXxyUQkdHxQpKy6cYD3Ge34fzsfOBKf4+RAghi62ZkAEdpuS9fHD9pHr4oG+sC4AQrU9r545BxmJmUaLhFwTojb0HTKqQfcjNKeYNuxB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uHaLbldaoyTDVsto0KBmxHp2rlHsZo2AHEGYTeLraP0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jbFVjbLkWlp0bdogUUuYHZecS/J9BfqmVS+8XaZSqx9+6nG0Ele8ZTibxQYUReJRFwj81ph1uE/XlOs4CHaH5VP3mMYdUvaz6S96eabDLaPQa/Z98WZz2T2WYYcpjSyRnEcfytELwI/F2PRS+Ei219kXGVehGGn1QOWb7bfbLyS6G9kwg6QKNuGafTaX9+WBt7oGqwu4k9RjTxFFmYKYuhvHyLLAegGSJWs1nzKNcuWs1fNqu0NKrBHQrCafj+T4Ko+sU1h6ThfJYRBfMgCsRsCo7wfdjIQ8bWGqSDsen0tlimh3OEeVnDG7JHbAmlCJZAGZ68MOhRnp2fHvhjoclQEUJIiGeHjd5PK69jeKKk+Mq+aqj5R2T3lwJVHSiRrI9rrBd/VSNaAIJzeeSkqs0a6eFmouOHB3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uHjl03QEB7FVgeFRH1AXlzycH2StALRXxVTCkHEf8v8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bb24q5Ft2xLKHa6/QLIAALZZ+BY6Tj3lasR/AxqXbO8D7eRw3hKawRJF8MggDOPBpvjTSyFq1bZvFsunQXI8gFD6VWsyPYa/cfac0lyVNo+Y8ibQes6g06woK7BCc/XFC59bQWH8qnkcPLu0Y1M+Rs2c0oNARM87OoFj+y7iCnOrhxxa7pPSZzKT/5WILPbfS4VeNtJtcT2oXOmrdZX+MGBPDxnAPfZxhoEcDGzUNcBA7e76H3IA+MZpi+AG6rEmWvhfAuqcTQ/Vt/7d6JlYUTP/cAX34QrZlU4W40lHbvlGYPsNatkE02hnD9cAZqXeu18ga+aAbJN3VXU4lg75O18RlkquCoONl9pYSN4le4S2AA1bm5EodBYiXtfWMLXRFrkEemubJoYRK5rkqfkmiAWlCULA1yV2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uIcL9G3Uy6dgZm9SjOjEnf5ZHdXK9lcx9rrCUVgB7K4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0wJxajJedsFZva8cMlUjqL/iYw9w8j+4L4QAWEJkbMu9VjGZcAveTXX1D/yDl1cTRBkzmIA0/BAamOStqqd/BrnAf5w7+zuc5/W8/8GvTdh9bvUDRLOTLG/k+hqdt5TRH8CibSZYfJIkMmahypEwW2v8NJ8y9DMwhEThvtCnWJTYG2Xr2JlrXl4NOqkGxEbbpkmStkQwelCr33lzvKUrhtFEzdBkeK85//MlOZ/7m7L+3YSIL4TwZcV2la6cMtn2UG/MP7KLVXlG6FKPO/JXHwuxPNMWKqYD5cdwYwWgF3w+8FSjahZVWRSVA+nii3LQQymE0+GZ/qcTk99w+xkSKf27fScKqo64XwRU0KX2lcs3ETQ0MKQ6I3Ck2grk7wJWGdlljAwm+xc7ufFk9qJSgOMT2ApnDdyK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uJBc2I244pwrrPnHKRZIxGTCShIurrxwLQAjUfZQL8U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8pGBCs/YjUsueu+L+j8a/yAW+eqELm8Xyk3I9NG42M0d0hCxag/BU4Txzy+XGA25XzZZ3zp2GPmB2prTxb1EZ6ABZqpKxe3041qrltJww7F3K7CV65KrwMfvrDt0c5UmVpxdWw2Mghq/rNqNKqHwHJ2qR0JK5VvSX789zGHGtOZWJRTm7mc7i+EvSu2SpM3nvkGoN3M1QlGBIG2+Yca/T7tKKRZi64/ZmQt0m4f3VL9bXmyr/6FULkt32Ak2u9H4aA9/1BriLxaMNDFgwJmAGjoI8W8WWCQK6fgevUbtwaGP/5QDnQQKzVutTTM+BcX7nfIZ18D0RMryTglYy+js3QmTtPz0bghr6RZSkQ7epI+T0ZxPjLNoYZT9rNUsld/ceLGCj/mEJ2KBv6jouiVXflWQ8Zu3w80r", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uJETRfH+HiLYNULL+gs/UwH5JtKUphGZjsZmBpsETSY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mGwKBMK9RTXzehtFeVKlYFMHbmsfuEiVPfK+R90IjZowrODB/yh72UxyWOufMp4OsaCSlPJhqL2e/E7cw6owS5wzuIKOr3EQef4Mv8Gy+HPQKxXrnMeLPSgI3zUfinqwTXd35C4jxCQm9nUMNM6+pf6IgabgkKntHeAO5pTzyAiUm9XVL9G/V45HQ0+2UvfmofsfrhjR/Hyq3jdmbZJStgknHHncQlJ0amh57cjwobHoeh5MIbZ6qgLeLxwtHJ/hdTOy608gM36dZdAq3lKYhrOwqGbmzxS7axWcMMrUEfX8wXEWNEDg6xWwSrE3Qy3x9xDVh/IhNngjzYq04mQ3HV+2IdWuocFH1cn0Fw6vsdnUg7w2zmL7uQKBDJo75Uj4S4X+Ejt7swM3XG9PYhJlXL6eSAEXoveD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uJXt1NMEww8HLOZRmEzYEZLs4BVtsLK/sjo+jqutL4s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3uh6xro+9td95HMM/UAFr4Pv8va2YGR6IYgyfaP735oPQF9L324ulgcDfSeDS/ytkfRrjZ66V+vLuLQWxaUtLbjEoA5RQ1ukQUOTfDI704gf2iji8tRfMH6CaFov7OlrLSAFt2RRiBbfFmsMGewhZrKSKqeJDSkepXsRfmPra18QkAWtD8y+Fu612Z7QJ+gwKBtrwfpxS4LkMZmMCpiik+vDD78CmeofeALR7QY4o1zsrtHIvpRZOSNpGerY4B25+qeA4SZ1wSLOwBKYk/LIYvNbcF/EhlW6M0R67FBBoau6oY43Ep2Wb+MTTesYtecXqgrVLTuO/DZXHegiwLwTn3WH/0jNjuSvh8YuYxtBvce74No0j9QBVMrPWjIdEgWIVRR30iaWh2Pt+bFRfwHeZxI9FhouA25/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uJlcOoYo0iiqVEobHwvNER9uVrYPuSDJEOg2N0MKTbo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/pOKOIdqGijYsGi7K4RrkN3H+gltjLmLTwxk/nTvNezFt6h1DbYyPoaBF/2fh9sW0cHzhrqaGiwXAEVueIKcdVtUgtTm7lWT8b15gv7jj7gRk34qp7fDAFTLwXkjJ3afq5lzAJMdxrf2+iDrnXeXM5cJ/wZe/hNUyDdsXhu6lj/Wf9k8mDQoQ931MePoX8IRlaUOoq7NUaSsGxP2S9Ugp+IJpneMnul1mbDmnh9YG0/4r3DQwrDZsdx7M02mGVWOu2er2fj8t89DioTwFBVFx/esQAhTDHqdbvL8opHsoYYbgdvuPmQsj4Voh8xMvd1fftfdpBwxp30NkpzBkWYULAiLN81QsAxs7hKtke8z9Cs2WxabnE5TsRPAhD3lp2ACvjzRnQQhe7WmwcX84BmxQHR611CHQz1I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uKPtdiTa3zuuJgxgLHOKQlDjA1d7JNDEuQxUQr6sBOs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FzA3siJefXL/mAJZgdmmRYeEfrgxOFULTJT4qB1t8VerMuAFp9c0z0JchZrMYRAcZm0oBIjbcOO33TIy539NX/RW2cijDzzL1uFwwdUizD0PFQ9kqtc9GqM3rEXKpLHDm0Us5Lw0F3Ac1MBfWibfxhiMh4hK6CH1zWwit4KAyXqHmjF+9ErXDGCskDf9+7NzV5NYHCHyEmsxAxjxGipNrzmKTADguhJmaepetz0vKhSoy/bXy4k/xLV8IuGdHPGDOMB+6NicywfX4OIgIe0acGhzbmTwPE6mPCLmz8rtyWQKTJLBqByEcErGX/MStHGZvqtlUV17bT4HtHwCkWtRssDs2irBT74z91ORDM6CiHrbCcP4gncUp0EuqkxgKiBcXzz/YvO5oEw6EjxXJQVg+TyxHKTFfqtR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uKir+W3dDGUhmC+GNgBzv0klAmSxBgpbwJ6bZE96kPI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ndn4GHe4DoWGGxOt+Lh7v9W+WtT0NImQK3twnp6fW250AkMvztlBFKD1FS8dxSKsDIYdysZOe9M7cpo7RYW39zfiNW8a36vkLZE984ZPHCXIgt6ZlkXN+p0PnNK0VLqm6D4zLcixJcOVJU6uF+WXZYS03fTWuOqobf6S6ObrLGUrcG/EJrrjNewFJ6IaMjBWQZMjLNkizfc4fcT10MZNNLoi42pOk9hPAUziYCfI3QB74Kxu91EUPx/Cs0hiOdjFkTT1FN/7ypfZ3vq2eJKLhyAgJH5J520GVrSerEki0rpnjjF7Le9Kbi7YJfaqtpxfvuryGiv0Jxpi1/MtBHT+5sTJoevbW5WWR8BQE1zLUl+h9P/lPPK81WktCsJ5JkK0G8dfL76P+Iw7XBPzM+udLnzuJzdhY5OK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uLzF0jffFofECVLIlwITOzYxJIZUAxFMxvtACg8c2gg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YYq/dWCOWdjmLYApP3LcC8ygNq/648X/9h9Lv8NarvRdKSEYdUxeqHvsvCM8Eu0Q/OUtbZ0aH6x3PiiMhTXm0mlCFTfJ4rpHBq5zeGN89KrQH5JZlV5FCJ3V8VK3GWfY9F5cjg3Wtuer8tQ3j/o+SlnQILHPGlbGUcvgT7neWBAsRaoHxBZRU1wlolf/g+f1vlCw17DJCenQdcaMJ7nDLCT+Xh+4EQtCjDEQq+Xk1u+PUalD4VdDSFdnhh+PTl+tkUx5JZZ7yb1ioyUHem5AnVrBK4/wUvXtC8WMvTjYBBUncDHN0tjH4PhHNAT5Vta5kvcPgKUYhleT2SSnqcCsKGeiv2beBqtL6lXPv664Rbf8kHr6Forph3PZPg4BSE16XNn00vyxX2VLVB35kTxL5GeXUZv7AW2/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uMe8HfznCRMZAziVG49pAaUItfViuwfZBj6bGXZHRxI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M9zk2Kfu8y49awDCYuTWx0MND8nFo56G1Xaf2Mt5zmQsBx+CMsMs8SW7bqv/SYGXhPQP0ROkKbWkNe5o5nx+JoaQhQY/Do5NT3rklups4K4EcYqhQHG2npgHTVwohHaD8wmfAhIwZqToyoaXFGtdSW5mpUTRoVCDUTpbYeAeAONfU2jZPBJM21fg9fCEIvTvKuo+u8oUqzEeZq8b2Ltw2n11Tajn2j20tHNADa5Ns3/Eu4t1NhCQ1S9dSnfb+kgPwcV28MoNZja0lE1Qx7oXcSlz+JhajuyaCies9DCT/G42rvLxkTZcirnGoOym1U1nCVNWHF8hYNa6uSkhSkQBY66W9MDgu3KEJiWDJeSEO8X3AjODyqhi5hVlZMiKDglVvg10v7G2o5hKAsVK05rrvZx0zqoOqjJf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uMhMjOq4V+9J3498jQqv3UpavyxLMuhBWqqooFJrUTk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ppJsnl0R9XPd//xQmwrpu7MJor6MgsKU+/W2E+tk26W49kolPLAmapuz4hCdJnsNjjsvYnJkVpUK/u8WCRDpgUnCSISC2XOyt1yNmt8xNac9BaMjvC8UdvyIWVo9q1vNlcO/XklHhogMj0p/5qwfR3mYv0Vi32FQMBV15jsa5qIIlAbdAMhFygrBARk+mz2GtJb1G5izRA5xYFaG6ZCWSgdOpVQgtu8RccAsWy4bgwSBThqRruzd2wLQAk/uVE4Mm00YJzAkL/3w2u79FAB9/dCZ2VzM2+8RzUXUNi2UaWIXhWnG1IjhuXibVdTCnnC2zw7xCVwe8FF4tEhE5M3LB5MNYoInrQMpsg/x3jCRcq9GEeVTlYzmGg6wJZW7ocIoLTs2i8WZ4NtHEJ57VFqMgMFRvn+NuMLs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uN+SVrkMqwIdpZRnrbAUTzsLjGOz1/2nyvoM94aIT8E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jitWZAvX0yxhCXHxs1atCwwJjngZ9+S9AxCNb5Mvlq3eeUaP1yZGfPqihSh4PfEDvdwTn+w6y7BQ5SMGcGc1KDJPXTK0/Z4WEHWue2+AGRVswyqsOIIB4hXeStFkLDfDc3a7z3tJZ6r+DcJCZ/G8PYBP+2CPiDUQi9vgqS9w0Wz8qvEFLxjEOLanbP59hg81HwydzqcgcF3IfQEkXN5klW+dhObEBhs0dq2BjN5xaCe/FcnmgPwMMQUzKxP3Pcvt7ZuMxg/q8/Zz0FUg1Jz1YzPn8JzPu+CGNV/XdJrpiPbHb55FnCX3lgVjN9vbC0kfleaPYdMh2o+Vs1OQyqZUySADIavYL6pimZXyEPZj2lHcPBv8yn+dxPI1ezQxsNmqIgyAeFciAtSbnfBNHz3M3IDFgnwUW43i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uPuezFqPyzi6B/vH0tPxT9dKC+6QRJ5znGAjLv/yb8w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1y9OCdSyQy9suNEFO9dr0g/9WaU3mhs6MWS49SObFpzJ69R2GjRA0/mRTXCE/T7N18DWLQ/WYwHhnRioW7IWzCCWIHw/N0CEEYznDL/SAxwsMPV6dZqPre9yVr1auZS/APksje3Ci0xTGHe1rC9P5oIphAtkRfUk5pWmiFtMf2jmj/Pih3XBwcgm+ZqyfiJwqTvWZUVMSjfekKRpooMhXJEDkogzzWnAlVjKKbHLcLUrQYr4ISSMx7O/6wl0tmTuO/A1TdeY2RhqHaQ0eb7436R/G7l8Q8ZCRxOOldiIXocDESISUoRj02LfXawUZDdiKAPXWEcepLf1+u10tUU2qH4YK4Mzi+5Rx3dqyhb7lCMLn0+b//nGAlGOyobNlcuVTvtbdm4vpxHtp10sUFvps+z77TM4wQAF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uRbosby0+JNAMgXkr3+cuC2WCjxxC6ZCOarusqU/2mc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sRpTnIA65NrAmkdCNmaC8kiSpQqPBrWO+tlJsnGxMvzSOzQBWm5uJBLFH10i6/GdRINuFVtvp7/yyFX2V9Su3TQEG6s1hs0VhK9sZW1x9c1X5sDLZD1CdoyOV7qFJJ8sd+uNwDCX3yT4P4RkODN7kWq6kF/5/m/uRVXQYs0gc2Z4GU10Nf1P49Q8T1i2Trl8nO0FInsApbh0ZQjcRYRt7Chf2yHhjwaPjYQp1NVqPAIMaYgW7F2JN62mJ+bdptBefzVXvkLN5VXRrh1leh6JXnJvUqJoRoSloxy42rgbXZRktoYINZA3kZuHqhhd2yh4EfJF7TFgNOmXN1q9lr04NIkK4XFKhGnmMnzV4WYsJKKjOsDTLR3/ieevtXwJd58OpT1iz9G7H57Yf+WA+4VXV0fyexXWVR1L", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uSlOJFuVVH1w9cGeWoaJta7V3/sJpsnzw2QCLVRHp+Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iNgO3C18c9286Nbi32Ej5bsAslI5iNKMcvwI38TTouKOmKnXr5LpyUlrsA9VQrnxQPex2K+S87O3Lo3nuS0H+G2sV2OR6r19xh8Pu+42sHNCUaJysNtycBjqKfD9bcDi/EkpPriFYubSgEV5oEksi4okvexaeOCYDsLQP9sxcCZJLbknDWjvITRshIG8cGwy6ZMICV0DtjK2nPWy2AQVcLpUSVaeE4WRKpguk4NnsN6Pr9Y/mcbLn7hsv2JtHDAIus+CzoM0nO8SZpqyseyuqQpF+8+pYBQwh2x5KAkeqXhlFAw+r1+MLKmugEQR1T1h9M7qvzTUmT5vNPQFyfJeZHG37hwG1ZqeIyxMhEY9/d7930iSNN8tTFD9kiPmGkPK2nAofuHIlOa29sOn/NSsmaGBX4WWeZqJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uT+qrYkQYvOurJMtxG7n8ics3JpBqvEhjii6/DDarOw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SSobqvE6dgzBH9MYJslw8f8MuNb+2T1qSQ1MqgbhOL+YAwFk3W1/yKwWWW10yK6HOYFrgx4Hlczs0+dbSu2QZkyLoSRffaWAaefMOC10DtlZ0DshEe6YYYGNUhoCF3hLPCsNLWZoN+Ocf9Xq9ZU3LeCbI8sV/5+3zs62EYkKPLXpjUdLD9wjTRFt7qXPei5MNS5xZV5k/xveJ5xzrfAdJ6Jw12XnxzMTOoqkvv69/qNGcc67drXd7X1CC/zygR7Wr/UxzhcnLDqSR2pdgkIWFL+ZwcqhoRH6o5yUwxTpMbQfrDJNYatzb3jF87uXb84wIr+h6NyNjqZaGY3lPEi7BZxC9jK61fWWvTinrKaqlO9xME4Rhz2u2JkLAVboIDcqqnJK/eq9D2CMjUGegzcZq35ZKVMme6a/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uUfuGjsD0y0s8EWgGdQRBTfj42FmwQWTIyyT3ln8oYA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HDSzvunjJT+2fwGYQdPheFe6yzXos7WBrJHvANHH4T21sTcEp7AfE+H5cluFBuAG2wpEfEKSQ1QSTns9PdaCS5C2omFDMYFdwdDw5MTaaaBLa62QteduqMDyumCtVrRHAeYWINOvGSwSAuEqZehF9tFbLsv8uAP/WJI1vnLNpra+EuT3xoEbHkUqZ3MTv8FtnHxHdXwsLvGTF7sG4JB6F7Ctfe/ndCPf7PqSHXn7IfbeKkmsH2AiFZ7GycelBbUqbAAqVoZ1ITXP3UN+U5BzyvyzicrMliZsr9zwsExWYYC1nN9VCsMxWWlIZjTyZW7e9KQBaOkq7aYEdkrwgcOsZ52vPlY7DihNvWpF0RIuQunIqsPAbCi5eWzy732XM7FTaz0lHxi7tsLZlbUeEt+SqnUuEGsADS5h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uVZG0NmesuNLReAjPP7zZf9I9NWXY4q2qnX0e5HbmTQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4CWXVZrG2o8oszHdTkZ+Fu6W11o5ioB8RXavtBIt/CAPl/wRuokzKrb34Hm3gm8R1fCoxtkN2xnUqqolIXdjlF86w6vqmg3txf0E10LoiUWVZlioGACZPPr+1OSg3BZjrcrCTOPsnxIWDwbRfEN17FwBf6jM6l13cyIrBAlDu5tqw2TcQuCE4qR55r93/R/y3gBi5f0GgWudar6yefuUgOQOslGsuWoLz9EmmlDg4FNrrI4wYs464plf7WduCKd0MlEqr1g/nfEXZD1xD7VeXd6FKJ1fNPlNexDI55HaW5xyEhG7ofhuWbEI/S+AWgXAdWCK2YPFqnFX6z0EKrioekOpL7VZbWWL7gRiRQzfk9T8aa4XCl73WysOF8fK5RR7DAxlp8kmYPB5S61+HD4hK9HwImLNfqFj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uWe9KJIVNW35aTL4MejQzh5lKIuCHuFIOw4qoXRcsdE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RTXV/0hRoHoK5FTQYroDbV16QqmYxW3+FWxejzGzpKjg9X0JEtom7nHGrJNcVDdGXPaY6ZuVo+aTuJOuquVtnV1AItLfSxKb+lVm5YM8nddvHoDl5JmLBYQw9EkewFcliiXw5d6CZ1CP00Aaz/QY53MNXuG6WsQNj9t05Sa28g5Eir2sZj2Ir030glGQxcmnd1Mq3SozqA3OCJdFCiSeebgayM3nt7SiJYd4wTz/kkHNDIh5vjOJMwsW+cGXBECo3n5vkaK01enkxnznuhH+8tKOMf7R8hSJSso9YYDd2Ph3C9oe/p9ZWfGOr1859dW+SD7jRQHL7jlqUNXfHc5SUF/vS3n7YAIbU8Ik0Dpmj6Z+Y30PTLyXMk7MvXDr52lAjEyVPtyiekGMc8xuBfRj0aIvfZSlTyQv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uX3yGBhdp6pll+g85tws2qHbaiJLbl/NYcwhmcCIUn0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lioCMu3KBUc4dyUe7LwGdBarOBR+L2zGQMLZ2iDx+WihYN5VSW+UG8gxoa/bx/JZvUxmmWjsG+6uyo+v8whNnz5Cspr4Zo09m4J12AopghqkwJduUwCr8DuCrnvs6LW8yGoSGYg7D5qbLaUnQ14e4tdPDg9Y+vSh0z32fnHcqGWgVH9C5w94sRISGHcxnN2VRNI1lOFC3wIdNZmk0/qNlyxqATVBHsUE9rNp05JguSfv1jKhIo6N3YSuEt7bjllWhpnksEFyGqE4BLQzUN4v9xAgo6+h+4Lc8Nk/KM4DGIzh/T2EGWN/VtaHqLBs5XmgLS/fo456MIef1VQPUtkohlk7iJaV1+ud+aDGfn2RqDEFD3Jt/BxSoCE9zXTMu8j9ZL/5Qx4RRlcpcmrxjw/imKKEPurhL3j3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uX8sS/Uvdi7yFBx3tk5K/sHWqtLnXAPR4dkbGV2Ow7s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tpw8onmDKsDsu6gS78FqFlLQmpxuT1lFPj1yTSBltI5S3bRoJI+kcd5PR8+TLaOJYhtABk4aqSyzFfsqdLv3RHZaxl29zx6IDQrr+oJrGkB1IVh6EGCGeQ1ocEH22qfRgJgipA2OG6Fzjyzw4yQVsSAWxOXGgbzszHVgJkDPwYTcJx3W/k6PNI9+yzUsk2ff0P55GrS6Ji9V/CTD5OHaICc9sA3qMt3XjBEaSkACnjiysrdMGS5APF4YOVIfmwZ5+u+EBHuGJ6yfdgu2CThiLhDSP3RJyFV0qDEUm9FtMvUt8nhTx7t8LuJnt/q0g5KoOOhgwNBiM7nviCXZizJ3YtMeZaEGDsXuHvuEMAE3Ng9x5y6VbhGLePbgIz+fkf53dPDnM4/AuhZcKuQBSHdNrXtVJxpSWJN1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uXnmFWN25lGKn19Gw8aYkof2siGQaX1U2nEcNDsNQGI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PBn81mXVFcMRoLk/nsbhjWJiVct06a0EHUAH3YDXL4YnCmbV4oWLRwEW33hPWGfE/s1LfMzZS/5k5M023U3sW5wxB2i6T4Cr4aV2BBJk7YEwdjZeMSfDqF7T6MMfJPxMsV4OqKx/dgTitHiEkqEBUkmWz19M0CR7+KmVE6rbJDNqRk8sQFREYDt3hGPqXmYNKlyEu80KXleD3DXc+xjVbfuldwpvkcxyMfmrKQ6Wal4SNJWqBCUxBiQCZiC9NwqAVaWUXLQhwqjIfNIGZGLkfw1q3JRIiEgW3iQ5jUAFMwhbJ0059lLL1s77SWqDXx/WmFipUSvL3psRpbt2Ss5NnoCgBeDj0+Pv6LbKJQU7R2Le/yqaFuS+lPtzyGkT9krFofy72uSTw09QEOCAL6lGY1OYeOSm9Tjv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ubJbPnf6woMWvDGNYwGvW7RTsKEUIvzGw8fBTiKlbgk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MVBJtEpji+Up6dxpwhOpsaU3873TnjUUbSDAyAud2KGUwrL8NrtUxXlKgEojOjNPjaDwE3CB0LAYOcZ+SHCQaeDFyNvjsaI1YvVPm2z2GMczKCDTjTSIVUslM24VwWmkBJAdbfCcRKrpTAMKU4e6aYJLrn/DCcMzoMZ3ByW1s1S+/Bj2bh0S86ec3oUqyknTk8mBeWiHLQ+VJcAE8guMo/Wr2esndYwBcrtrFE0tI8FORJHZ2gWVA0Bmoke6J7p2HAXrMcBfrjnvh8fEMUuMdldVptXrTiVLyQrkuWjKicwzkcsjKBp/Dfx9qmaT05JbgUYGPFDz6MMltiFBZbOumVZc+U/K6VjVEKlWl9Mf/qOSpMVvl+Czn9Zu5mWGUQyyuxLZozlpjTKuWjiF87pUlrscCrXHUeR5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uc3xODBhtHgC531EUme//d68dORZsyRNmG2eEwgOYx4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6WdWJELWGINRKXLjY2pHuT+0qSD7AmoCGC5+imzorqos2TyB+MFgSUjo6RxZkpaX2bjEQCV+kjQt1ghbkUu3dxgHyde4GEp0V/3iX24W3mY1BcN0a3W1brZ7A/h6RKKS6zZHhFIiprbOHDdMOuL241EBazf912xqqfyzcuiFRPTuiao6l3eeYBVKbDXzXt0FrhK7uwnrgs2X10g3L7W6zRBkTpExSvJ1jAQlZ7xDQzg3xjbIcJbjdx3LODpd3xRMKq9kzWohGYyaSeEnhf8vcfaYA/Ct0f4Njw7SqdHrDvYquclJUatS3Ss8gcWQwqmZ9zJ5Ppv8uUybYETE7VK7ihhIArVLWzX9u0Z0YuR4f1CBqCkgn2BoHNOv/7bJihqo5qSoB07uhOWGcLuGa/oz5rRlL4YmeCAP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ucPgjI9WdonTBTz8YM7h864oly/UV/ETxHSTnRhKBuU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YMHb7yduXKuEuTbJZmLWeE0z4TozS8lgd9vKJnA/aoJDevY9z9HNfLEOSAaMPFEOjtNuvk6DrvPj9JuwPw5pAM2dFaole4ZDQV8LpQ1F6/dlGzXyo4lJjwLg1JGC8/185t9trqbgujmISKWljIUx/e03+dX7iN7dB5R7SYwPqcuscBr1kQSNNjNegqKIXnZPHkKWV0hPqwBMnUOXDXIwyzrULXfDp9UxlE/sNYYENet1Ubw4cFTh87Qh2bGKHzMzO4qGJHh1PqsRAOur6PpVALV0usKcUFDLyxqyQJ7mKiFxQMlZ//gPKH1X1n6oykI9WRo03AgNtOvE8+jluZX3sCQB7KLUseK8nFTrwtBRsAwvVklTVPU9UZbgJHYeJ3U33mX8dYTq0orcrdtoA1UBfMPuKfwQZAsn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ucmFnUvo4V54HfTq9PYSOeb8tLfTkK3KTBPMvt7Xzic", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "b8V++E+H3YV4p8Td9/J/4rCKb6s6maWe2kb03XOELhw1yldLomoGIjdyBx35sppCnidmp6G0uPnXkuVNNoADgX5xmRg07ddVIi96Xm8lZRiFZlXdkdb1v1c0SPkOoyGV5Vz1S9QhJMo4hG5xIHPNCcAAhvtu1FOWGeOtY4EEwale2K2e9qoI6rIbpv/873/eJu0iZKR/ck7vzrMn6wcm0S93MSbA8TBBtIfoQDFpmVwK3EjzMz4rZrLbgK35JSQp9gbY7NGCOgnCVG0txNByhUTx0miO/qLbo+LB61UjVow9h9Yz4iFr8WsaZ4it1ySU603YQOatSHo1kFogu8f2nbnZZ/VBaWaQ/QF19LtMqkbKGuiG2G+WfgkMMZc7jlxz3gE8Ca0oCATjT/jXpgGUVk3e1DYOzFM/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ucvmkdVN+162h05sysgjfULykG/QB6SIZaRaJ20ssB0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aZPGRYq5//5uPdNNBMy0I3QPYqWJMF60+gWl/95Bf0h1Uke8G/L+s+/A/z5R4v4Uy9ouVSBBjAuG5NrcvRnIM6NhgJuC84hs+zIn6yH69Vuu6XvuoeblAFx/Gqq5L6QdzTpL7OLOofOugXdquXCa2i4mWNrv9tXqV+NhF/0Wve5pIXWVEhoiSpS6pS9Gt5fi7ZzrLSlmEQo/A3mQ84mg9CH7aumtLG9h1+sq5iYI62eX3snXxpLApL5T1ow0rbq6n6WoXLvv9ws8sRWaVDTU6v7/rZBzbiHDbTtqlTajtGoxTmymW7ZuZJkWeV3Ou/NUM1j7G2eBbRTgYn8ZhvKrIpzGtObxEzw0TWfD0aTvNOGokA1UP/olat7S+NVuJb0laIX0wUcIGThBsiR6ghw7a0hX2SHXnzC6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ufgA+yQOxvA6xCnELDWInkGLYuILSsjV95W7Qlb+VX4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ySTkdWy90ZJyjYCBff4tfVq8hkNJELV2wO6afmj9TF4zs1cDheku4VwTO0/JxUed1HTlHfL5LeIau7MammgBhxqp4MSqqE8AHYq+tFbACIB9sFMIG6dF73H7MbMVMMLCPu8yv6VmrhOmws5HS34XFQR2TOdg/axsMMNdzh0z5yCRmkvnADxakasM26UUncWdG9EaAOFASGWaGe0Qn1QYEOckY21/4hM74dxAT8r8HUWvWv/z1BP/gN7eYiB/kRcbiNbdxkZ/EGsMnfrfGym8NiuUoQ84mte5ToGg4yJc3BMyqfHpfcqDjIrKF068+5s0pnHQWN8vRSeAEZscuQxgF+zFviRRuclKrqV34Stz8iz9uF3WGd5qSoUoep9GKf2itw55RRsyjhBTaBWt69r4wPqot6XP43Lw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uhOWmyNUx0jvmgeSjToLYDMrPM6rNUgbXFFSAlbSfZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Tsab6e3/Epk+870KNh/VwEucXUL826xtYNkl0F46JHQ1VEdmp+fAmIF8ES+fjYeyQkC8UCNVGGGcSY5M9hL9b7fMP1GMbcqvKIgsPo+7huppq5qR3RK4bibgGoE9kEnTODGdE2Z9YjFKvQ7wmimEbsxrI8v4xtjyyFu7WkqQjyx+0VUOBwbexh523y0y+iBfKku46qQpX6by9w0Jwb+DztUaZGKKDH+McSqHHpBmO+NB/yNJwSrphpe7/a/QAfIQsfHIwKIDwUraC98oxMak9+PPhuF5usxdW7t8Gl9Nh2s/gxY9UJy/EUZy9KAq0eMulCKoOlaMw6gDrN8HQr5DEdWnwKqKBNadnBSH5RRzW/r2tf5tPzDHDbzU6qcgeHEGL6UjQVH9Cu+QO1qUTIqaq/wYuLknCoyo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uhXYUMZqdhqD7Ug7/dB9uqg7QcHmdIuQLnHZVZsSlPo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s+qgfetjbelGu093jLBS9FyjB/UZz9EYirukiaaBC5SuIHnBE5cQpUKUkXvo/8emzQiTgHtUMOP/M9DzIyZ/iyU4t2VMHuRH3nQ4P799bMq7bMb74kUUmqdX958dLBzzqDJDunl4DXcSh8AhQogO9Lr6L2cTkT8PWqI7E2UTZFSquJxK2tsDEMqoPAo6Q/5l/gkJNDbsBf7ad9R8A6CR0qMfH88qAW68dzQ8UD/ykJOVIIWr3Vmk0fpqvjLo+XalOxhd4ERKwKnu3pTO9YotsE92XpuML508SKKt1XWD7yjHXMWnq+SYPQxqo8RVJvVzmv37eu6OSrlh0IHKKFV88QA5ZKoivjd5qgwDW4r/4rP8Ix/G9BjQj0mly+weNmXhT6V9wR05ls1CeEcHZTW5sjFFAriK+ndN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ujCfFLZCB/fWEoEau3XuK5rKNN/SwHYDoAbDG9I8ttw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8Dkm3I05ZmCmdFd+F0E1Xs1aEfKsjYlgcMJxgAqgZ0f76BoxlPgtLSTHD8jJjHcg6snhKjAEY3jJMY3wmEezj5Em+3+Q1YUDKGNL7AasTUn6n2kq6J+x3gg0gKEhPHvzlf9HSvJtaMXaCReks8FZ+l7ocMIqY985Us4plZU7mWgGjKu2+/8RbX0Zk44xPyCr5CPSBTO6TeTIspEpkYmmm56ul7DEgt/QgIylv9pu3GDBy/x+2efr4EYLYSnf/MXkAAoVxwR4v8TXbMpqRO98M/PhhDgZogdF2L8rJaUctNkeCcOoSsdhpO/QmsYCP2gHF4fHHW5wq++FHGlpKHrUuBz0utKq4f1pYc1mg2YaUhfSBRE3AJaEiXOmLkwCiouYvtI6rEtUusJMKv0HVyCAAidb0Y/DDgkv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "umFC3XUREb1AaWRs5BvQ09e3fxBhVp+ixcMqJT9d1QQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M8uqf/CxAo808VF22fIxO6zSvMyiFBC6aWCfKuOrQHWFekhi0jpjgUQ9yTJp5V7XyM6bS7vCe7BUJa3V7qzBE/RyWZ+IinE1iLpV+QQjUAgORU3m8OeBhsUgjlWelDBzn5f4amBLyVJCcg5MqI+TlU1/+LCNR/GOrFcYdJsZP2Cl2ckn2ZCdcXG6O7ZyPajc5m2lo8SmGwJw9dEy3BksJo253VCOq4yQrrtjJDwT9ZPWd+qh0xDw5KLRsmaMeZdQG0oxVzsA9jfLfcO6WpB+TMLWH8QSDmrGfDSIUoOftKwjVqwzZVCvd3b9xVMJRd3efrT5fgVvd11Qr3WFDcFiaNdYq6M8Z3TlR2D7jiBZWYexe4UeOLxxxdroVS01YC0fDjDj5x5Eu+T/4053UBnD8uXkGlw//Qqp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "umJ16SLvaoIsaRMduvSavjsmo8Dz1hBXnFp/Kk/eJKU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cWwf0+3AhEeXOoXq1Cr9Eiy4LULQDMZ8cKprp5N71DA4BSP+XJ+VsM8A1NTiq+Jj0Wz0Uj/84rYNRn4uTlkqlLlcabyzEwy5lUv4CEEkkMRk5axRxyXoGQCC0RYQlcm0SG+oRVDZCX9HeCbz/SbhUOxU0A5+SEhRKd629AICs59QNcn55iqv+wvoO5dJohQ7x98JjtRgGcE2/EyL3BhIoIkCECK1sl46omk577d3OnRJWKEfsJwhPrYIQB+jwhumVqfGLr0q6Ql6A3fzaeiueDQ2OSbqpPthG6tEVx/LJL9Iac0sVy4Ze8xrOIR+jdeOZfp1aDnk7fmfwtpRZ+A0mDWdSL35DegDy5Ocz+Lh6XHZtgG9jUrhVlTOuC35DMdV2203PhcaIVHE72C9tipPJvt7nJSJerGD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uoUukojItciVX2ofLHMBAOJtuU9lcpWvnV8VB3Woc28", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DfKU1d7WG5NjZ+zFwVXgjpeJcIizt34ymSBNqbH+MxnRJtHgHKc1oIUqGgOpgFQ1vx5zsorshOVO4ovsE4qbKCAyk9E0nkJpy1ZGil0Boh5ebcR0l1ak9XkKp5CPB2YZkigvxg4jj4F1cYSuFNczKQRNLPyzKbwTMuTObja7HcvcRUI4tr94nDUGgP7Add/qS9tNy+LU6AuALpUUkGmeQAW+V67/0bcBTDliAKG1X9pyPNM6k2fhS5PzalSWTW7iOVEbwbOjos0cOlLjFE4JN1XUoHYiMSGov9zx8oP7mVhrAJW6ROE3d3IXpvjPZAYZQ7gJNFpMPf9JcReE0ahvgo6v+nbE0nxkUADG9McquHi1STzTqSR7fHRiPDNCZazlwGAn4wsCgYWjN/XhnpQSrPhnOn3RnCfl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uodrlA8iFW7YXDmmASRRI0mHUyWikRcK2n7N8zmzRdI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZI9nuL3qwBQkx5BRV98+C6PXPuSKzuUPUvTrSrd0u+rD5sSW2pprNF4zpzw/Hf0yBQRUr01j/hDvLuBwfFxJwDPvsmx3hwBFGlHOiuE7bzfeF29IEx2QTQH6BYnYis68hB7rE/3lWl3mbFmA2l79utm/mji5sKvvjyVOsUd69gl7PftfOGqPMs21PGMc7tjIeOSciJEb1J6XsUchAVDHdloOUYLrIMXCL8y/F/3m9Wvm8mwQDdzPaJyE5C+HIXuJn2xFOp8lWp4U05+zz6MO9QQxAaJHoilDYXqc4o+EJt7YtyJNw+qKdDsgeFq0Wut4KaBgtTaXWDjqdxcHU7d19QWfp+WJsHh2d+3eQ/aVbapO3255mB5oOYBwU0rA6FdMQi6Cwfyd2pSJ+i/ozmhRIZf/r6C96Kp8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uow9NRlj5k+nA4eP0AxKlnffnHQhInJhTbJJcka2n/o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LnCtN+t4CgupbuUuVVnaFgVqIWHLll4CQD+HZQNv9Gr5CrdeoGsupVCMA835SKEJXLd7WmnrKGkUU5zdZR7X0a2nw2vY85G05AG/u+2taaT7lnLaTsKvkkTwhDuFj/8Y/M5nGgyPyOCA/upTUA4ji0qZogN4/1OOsooCWE2qK3Xb48/UKFn3b88BVU5N/BGGqTg6r+KwiGxWwrz/ZSRrD6zelceTFpH1sgdTRAaDB7LWNolyt/FCvHGqzsDVPCbZjtRwrXYXv5F/icEBjvRug8zulNix2JuwMzB4MCNf/Kn9jFKGNsvBDnoEFtTx+1iqfkhvefM/qVGKMRPCniz0mpDnWgmw1i8YfbWjzH2q7t4g9cQy60ta2YW90MmapRQptsM5qWdoVDS1F9mU3TSgyamMbazjCXAN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "up0D31XtX+ozAWGL+oA1FwuXUEkNgr590GnJQngRdLo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IDXRZ299DfA59C3MemOfOuTit7zibMfbVjzkA3Rn6fN3Q21Uczz2763gGxKujX0y3IzKy2HfHydmRmhy7eGaPvfHcKy2XwiQAvJvyLGo+B7lAz02pbNrCCYiKf/BTpHPfzMLtS/YZVeL5zjYXHTl6Tid8VTeDZR/mCMgUk4VaKJZLhudsCg6+CADUXzAUlhaPK4rvj74JXNDt1HzCBRJesNo4gBn8jXL+77ejTYRJ0uPRXb6j+ISVSK8Al8EWvZ8Rvd6BMf10LslPy6qWyg6XR0V6P3CEeGXPSROiaBGRRhZ809rGHOmvRSg1jK+yCVvU4dXoK9NVvhLaqCi4BTcbHTS6HXmeU/C2E2BR13YTugJOaDoOy3k43Fu+KirEVlpgGcFX0O4Ll7qXw8XSQlUfNC0aN2BvG54", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "upQqz1pcYWkqjt/xoHr+tSa8UwA2iP5h8tzWqnqKVo8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nSrZeBorNCC+kLETss2iVV0h1l1+jKGU9F/eoI8KYQsJ7Rq2kMC7BZgSL7hwQcgEASXyOCaNMLQlWCUIp6aGT84ybTxi1HYdvhpzeJ8eUnlWs03zhkt1CvjQM+pwE+dPQO+8Z9RmoQTc62Tpkwk1EGUhfrFLR3cYo8joa+Evh7SUt0ODKK3vLmuMtHOHXz4W/M2RW0VrVmmKR4uy0WsGBHvORKwdxqmpopwHasovB9Qf7rX2OUQBLhd2PUss94of+ru086AqzJziW/zlUCuKg9upNnyWM1DHY0R9rKac6VSokY9uH9sSPP3S4WfejUXCAHhht++9RxOmIa8wAFqaY7BX5/k6OV1hopAuSR0sogQXsFwxbdKjy8Ngyqc+O8Y/ECCsuJHzcFFbktYdUPtjfqBXkq0hXP/U", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uqOHs+E7C/+rNwYu2UtmAglPX2bZg0KPB811yY9scIg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "stQQil/xHys/xCimB6h5cYqdA8BC6BEF9yXxY3A7Hw5tUVyJnX+idRIpfilHBZ5L8sIWZMduapdcS2sO2XyEBmphvU0sz5xWzQUStpd8jXx7syg/ZubLLSi9Zw2B8XajGq7Ok0USg0+ZLyUnitc2KiA8aOTpUYxKbEsEoeEbJBrHNtyopeH6Jy6gjtAG7wT8OtmKxctfcQhS4J6/v1p+UFy1aWOV1r0pCqeI2ltet90kk0rfStAd9Lx4kBpFcDopcgqBO3kgIc3+pljf60XCUnX9u3SuzKDfODqd6CgZsKnfePO3Qp5SOKNabvr+3B3JiHbLbV3e1/FQ3Z2ouz98Vh/5moN3V/CuJ186hfq2fqa3UTCjJ1dY7HYSB4+MMGCQhkz1YF/6vCPCfm5fCLmGa7cHfbCqhi/C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "urcumHpb9msTJcHmf7cg6gDMF8O5tMTVhGTQ/SDY698", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rxM2Y4xL8BmrM3+uAPG3LZHToXyLnt/3RTevLC0wh14VDuYfTA+2irmBllyEGvbYcRy2a+k5az2XM7t982uy9dgce6cAieaTLqpcN8iydu03Tx9DdjImoR7huepR9OhDdXvjjKQAEimbPOBnng3cvfX20jalMQa8oyupft0H1vY/9fDpwgJuJiiW+LXr8h/r0+ll/HZq8j1KDgq55rHVe0g0Qr0S6HX/NaWSvyQbbwx6AU0bMsuL2JpeEyaPYAGGqaH40YbSoEuYPBLh8QiIh/9E3ULunowyKCSgCfGVPvwvTIgJsFPeoDCjOS39nokHvfA9hDFIAkxzz3Nzaxk3GRhiyw7om9mzuiwcxOg6eXPfcbojHXX1kMfTTFGIP6xku5Ttff0JW5musNbPDPeCmZAA7MmRqypp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uvayx/lOHPIEuSufya6fkrBCKbma0GephkUdfHaumjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "C03NfxkAA7eMW7O6Ti5+sCOm63oLIYfEW50tgl8Lj6VCWgambpqHeMNS+BTiLan3M2BFAQ7RFCAQhvEBEaB0OMrY3fvwdS3hkN9i41OuZOQrb/rVRvy0/NVAlIEG4OBBldJG1fUmDZGsUfEZx2GAX7D1DhAIyxxTsV29Y3tIQDRQiKP9YNUq3Zo5HkLXkQfuGBRvckDc08iHL8mjxZiudfo4mMdUebDv415X4MWJHAzSqAFyYXPNAdl2xjOsIKfL182OHIVLTBZl3p5gmwaxpsFBk3i04dArSrdULEfrL4g32OkAMpHh155FoYJfG8bX7kN2kpHNBfJyxsYymULWsnXlakR0Dlc61VtA//5gSM/9cWEUOzZNn/zoAYlpyH9le8aMfSjvpfT+Esgk6hX3/iC6NbBZ/gLm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uvuqekXRxM7QTT+cdy4+OY1O7JDEE5FDNX/mnMG/0FI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FiHzJnij1rPo+xc02a2El28Bm7DTpC7Ow4ofpUpn5fjYfBxZbg7zbAsw5vythqvMura1dYm17NCRAeFr5Ye3n0wAAk3YHO2NeL/CdJ5Jgf421epyp7PFSBRueNFkwN+qkMb3QVYiCrKnqAFZFY2ThjzrKVGwUTXw1gtmUfV6xavRbEc9BTgdKshK803yj1s2ukw71YGM3LAkxgszc7IMdkQleHQTfiWw83A230+cgtf0Zzw86zbB4L00Q/m0UxUrsCNEPEj3bwmzJVrznIr7EittuW261TxaxuRDJKqAnP3no3TUBvbnM+VtqS8MA/1wyzPf0f/OCPAe28fWj4tRA0cU3A5gFbS+4iO0ffj1J74DKyZKFSIu23JyvZ1xxVmL39ZK/iL22F3FEUNzzapsQUSodD/+MXb+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uy+3iXWmd9WAlTLIL7naccGqcE2skZVFNueUejOnTZw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Nt2o/2UtwwdrqJPHrg4z5lX9SDMFY/1+q8JmDt78KXQChCY3SDRopQZhMpukGvc/+81UENQCHOuXx3IzKZz+K3Hj5XcrQR/tT6RDF8md8LL1Jqnp+kF0bJUXmq2v/oTmWfgqLQsrPX2G1+xKDP9E9dM/t7pN3Utpo1a9PMShX/FNwJUsac/Pp+lUrTW1XRsdNO5Hew97iZORvUnO8Hw1AA9wnzoMSs5wKAb4JJsH+PwO2hOrdZEMVZ5YlczqoZLEAQPfHDRkQTcdRn5arr+rXyOLTzLmI/CUh0OQsPl3P8Z8It8/LDD1bdN6xtPwXx94h1w8UV4msm5dVQBxw1DSEfCVPr3OM/v2gY82QToWOmTx3VQd1QVQWOSCM++XyXlo96AFjFGMxPkFMAHhaKITggxUi7C6d41Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uyWE6zkjU/fC7etgAz9ZMM6LGVdSiOj5APvGnZazFEo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OSX96aF4Pr5jF9F3TAgn/WTKsTtbIlzbCTXW9NNiJqIWgogu40n4tHWwpimj3ROKP7GJAgL83SiL8FXozMGzdYa01ksZIFi7teBzGp1X9lB6aOgpB2aoMJTzKXD8jiDfbrRdGcSahcXzxXiL56ylB9/SK6904lNnUfUf6xlQk96XwrXbGfXQ/f1yROhdm7F197NZzdw60aKePPFm3xiqVej4jEAOu5R2ylhWKaGHMVrV7MFbk2tQyVdXj9uY0pvwcbiVBcj5QoPsCwVkGsVyon+qVbcUPaqeSlUWauxcLebzpRQyElZyzwSRXgAlvvOSom+JCcbYTknslrXLD3mFHBtoqnstUaDFeIJs227PaYWEMOh8F5d68hFR3mizhekKYsCyUa7zw6RTTfFMApfnM4uocevka6Za", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "uzdw0wEzYJRcq54dcTJJEV9gh/5DjNgcwStQt7uqCqo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "O8m7GdAulClXoOYF2hjs2mXRQODyoaFMAFOwDr8qnBtdpEPbJHJXO/64ZYWqP+SWeRPHgQqpjRwTHLlr4tkgVlaTLOg7wLQec+v3AqUezTbaOab7GJyu9xgcRQh2jM78J03KOsXO8Nzs+tB+wgqZHAAsoGR4jlXG4w7/icjV/6ejnp3r1ygHyPvzSF2qJSQt8Myl/r5PR4BLv5Smk32F2g2rKjB3bzt57kUT16EwpNz9AN95a/iVWF87uC05VXlxJB3Ezzdb/hN0G89J4EORHHBZ4m8c1+2FNPqRoHWfL3AGBYUXL0p8xDCzU1vhpmwJJHEM7GfeTohdTsaasQiWyqH2obvygo/usSa6ojIBTu5YAgz+MSFvcWbjqNR3qBssAcZFIQHCwqqy4qepMCCGFfb7giZnoT/+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "v+iJnDiRgez76L6lWe0yQQT5j/Q28ICNUYyhHwdF8Bo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TeUPtIFTyTgfXy6Y0IovCWhqD7FZ7DbROjLLqpR6BrA7TyB0oRQtGAIbvThbTMHprnoIFsTZKRzqpvuaVKIHujYmS/F7CeFnyCYswfZqt21dSapPuFuz43KZiqIaXTO/MP74oGRmrAkWfPpsV2ZlzVxWlS/Gq9f/IhdFtzXM/YD04g1GYd6mAiymyG8DP9Du5bWKvAjROrSK7G0lIoCUXRY3LRXx/lVORwliMBWqCXQ0UO/jTxmoQn/NWHirV3XF7zdty9aP+api1ZqK5/EvhOfybzGgF4UpwCUrEBAIm9u6ftY5ysUMsCzKfiWUlcJ3vVUOd0N6IdNsNrrxT8K8wHZS/5Hdo/HaL2Yaz98PoB3QHuLkaGglWD9ONlnCL9DfeqqAbR7EfpWkHuTV6TUWAI0oKRk6Yn0R", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "v+pSGhg/1KHQ/AorJ7CxTuMy6T//WK34TfxkTYlbp24", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6ybvKWP9FzudHFOKSJr4pIeN9nF60+5MdL9ldrHRFujO5NW4ycOYfbSRyy7dLpIET57QEEp3ACTXSbQmHSZ75/AK/SJ0LC0FwzsKa6NlY9B+7ukqqbdY7LU/RkWiNiCD5J5Gp7fblCH8NoUshfDAFKHPewfjV4nQucu4fjHG+omlru03F0jLYDbZHIUbcYra5G9HcXmWtNshMHcPlaPS8/AKrytO08GU4y/2WWOe8hQJrBU666X7JLzUGPjVocou21zQNB5dHo49fmf7MpVzWBFP0j+GiR4OW/qyrjle72KwMKOGJZ73bTES0r5Eelkm8FKFsGwcgGeZ5PieOkJkbwljQTHdAQ20/T5rCOo+cT2rehr/gpvqa9TfywURnqKKfuEv1C13DLoW2A9r4vme3QaOgAIfzPOH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "v+xcLi/bRroYSBCGFj2n+3lMggOD65Xort9zwyfpvDI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dgGu/MwmXB/Be7Wt1gD2Yo0cpQ5ja7K4+w9amh45dvw1CmagI/dWHm8Tlu8SZXtICVNOPv3hbwWZDfDgQs0eVhuf85u4ZdfIJgI9sOQXIbn5vz+9lQbgVVqH2h+uhiqM2sGp0OVZtXI+GILqLSzVC0rJDfJiQcNobEXHJKEGitPjinipXodhV6mQhzRGpKkPlgFTKc8bOyPBHsoKlIZ7C1dCtMt7r2iMSGU9lKBBpIit2ip67CpvhtWegySa55HoQtZSJtRsSZo1KnYLkYqNLnQVdWmD0SVIHStvuuWz/+xdlwJTwl8J8wRWOmnVwBc1Li917nDuHyS56XGuC9fTCBwF3C+D+zaOKwkmLlvpnWNFwsHne40BvNOUWzzSjHdCjBvvvt8EJhSI9ZNaUZDicTjWQRDxP176", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "v0YDk7yWcZjmU5I+CXGQzX+lC/rmYkXp7GnObxZS194", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gVbYoGKillA3kLJeLwfOwUoxSQ/liJ3fxVy7QZM9fW6PbrC1F0eJkgluJZU9z7NwRvIeBqzHUg7CGdLARyJa9uDpeS7orEyCbcXADCgxwx+Vf8L2FSZinBYbf0USomf9TsF5+EYiG85PIjHabGdxsST4EGzHO5ujj9ftApRLqVz1jxaJ5SAFeLEWQ9Ia7e9KeT7+DJU05aYovQw8MRmy6ODK0f0No1E8TbTZCIrzdrgTMtYzBY1LtRL3wvWv3LFxnPmus06fNgea/8miu1WsxSP9ELp/9ito0gt/48PL2uhC6cHTzi16ZXq+yeHuTKGyL7bDXfFZvFxfaKF60NQUFsY8BLcpw/XSU61Ktvp8r/HH+IR8EwI2jP+wJsITnX5iZ4p+53gVVIoO8zxDOud3d0XvttoHPlmv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "v0x7rsnyT2u1s+KGP8cbMUFnmj0fyzdmXS7LMXRRJCE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RLbGu9gSF2d/GKldFElvw6DHi+6MAL32QMQ7yfiDlWs5E/YgypbTF1Udnp8zer0//eKBOYgZ68MHr5y//QGPDw4Hg8YjzcB2rm7aaxQ9dIpRkv8tqaAhnCLvgxoUhTD41JdCO6P6t0Kf+kFYMCkJLn/es2cCm2lB4bqbYhTUoacHMKy30c2xBVTkxLN6XUmgkiQVWNTx8lYat2cLNcMoFYjwa45ZQXDv/74uMn9icI10jR88ZbL58LcGwVa1Usf9gWhrt1FniYeI9zNfHWWYpKTnTQOS0m30YXf30LoxvQ1Z4gP4SjH4nIHJ+gMZvGBSMSAbhyBYp1gGkfK0BtkHUCvpKYrCV1af+Ad5/zixKS9XGKYw4UIn8HM+JE1DucFRaA6sBmfCT6yH3E+Mt1j0EhLLhstS3xVC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "v18vCOQjxDJGN+ivol1DKMfKf/4+ZtRzQx64Tk80Gls", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9TRUFpJeCK4iSSCcUl/ezG1oLQKskWZ5zpItaxkyAYd/zNIltVgqq9UW9fdITx/SWamNEhrAxzdSPjSHTYg/rVEjWHgLcgRVqOSfv5/50KNJhGfCQVYCDf8sfjybWi9rfWzQMjRcehtpau33yrOY7n3nnrhfdmxHr4kFrvT/8J1Kp5OQCMOOQrZWA8dumpBIYO7pcAgv70HhF0lK2yT5co7eWr/YUsXMsrPiWI2mLx21wlv+8Yluu/wRP2RLY772Jt0nRIC2hd7i3JZIEO4ANG3CzLvDxj4Ya+UEhKRAAVWwdRayz9vXEIDJhayfy940SQ/5gw9hp1LV3YW6c46DAfcOuraMuvNP8SEkU+nPaBRTkdkk5E4nCGrpk5xH6j9qG+miIFVffGI13aGBzu3svz7ibImiyOuV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "v2J0eEsjjVKCppo7dFhSw3BcEKnqvzx3EPtROBZlEvY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "b7wkPN6HvkMEsHS89HJhC3mNl6C2KwM8WQakZALTcMgFXbpbqnlAqWL/aMvAddXyA0ilW8Bg0OgHZaPbzR4VrzUvsAMnt1k+DrrZPj4rsRtvgsVEsYvnFQ/RckWee6qKwVPjN2wUcobYjlxlDhrb+H0Z4tpl/2j5hBzWFCwfEBnTKzO6s0X12/1Ce/EHsdQnc/I4+IHhVIZ/x26GHcwwgV71FB42klVI7+4pYvv+20919A8jtuIuZS7WGZFwTkyMDi2PD4S2flupGzpWbaRHN9QiOXhA28Wjgzuzi8Lg2GbYg/mdxqwTQCtL2HO3bzYVZwQUuKjc7H5RVUtgYNT+mFM9Yuy0waoOJa8S8Kq+qG9f00ouLnNS503cDDqmT8diiEDHAhb6updLTRvWn99VLIc+I5XAMry2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "v6Zruy6Mr+TaCF7bm7W0nzOILQCeCnsiOUVSJ/SWmbA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Yr+KaTfjhvyfTUavzfE3aAnFDtUoorRW7TnLC8JvCOOb0bLNE+jJ5pVKbg/Od6KP5afSJ/xHDYbxfoecsHC9VLDVKsufBkV21nFxNAWrE4tSezZ/u7uY4fG8RBzwq89dQGXlqD4J/m2Pu3iK29bai9B9qmqg1iHJRfyTBGsRAO2ga0KEeRc1D4JM8Pial+oXAiS0BYi2FpjhuYqCx1PCmyYyVibh3B0/3PrsSuAIakTIAAWOa/BL29VOz/iHAXGSDsghDfD4KnxZirVA6Ey+linLNfJ94RTi3/mCb7Rp4QAf0ckVHTUg4dgHpqhckS62xMMO3qU575rDlGTL8M3YE/tcT21C+Xg8X/oHyPzz6dMqLEZcgJZ+Y7Y+aHd+QXJ1laxMH21csn4KKrV/cl0poil2ofjKChme", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "v6v4ADA0H7pQGPRXAuxnqXqq6f8YAb94ofWowvvQZq8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6vQeUI53HkBp0QLq7ICs/WLpyR/mj40dcyBLvL3txr4LNe+ivcYDjq1imnwtgOfEG7zip4AEhG7M+6LAE3Myz6LKDEsURwHU76iIj7MhuSu7f8NcZEwHatdQFesftCev+sdd9gNZORCV8bNCV58wS0wdgCUtp9alwL0LiI+4NfoLZ+dRVzpurtSGyJnabjFTnyxrbhDd7lPugj0Em+ZoG2DQVw4ToZ+5cG079xS/1gxRMpLfXk2DhN8t52zy12XK+BEKcQHFS1FHU1SqGRbfngU6W3uz9Xflt7urAQcmffWEJWp5eZtU1Vz+jQuWMnCIlQp+Z9oax2vyCkEFJTW3TSBQENjehx6T+Gm3ILrl10G3gb0WTgLxFnP8go/PebVo6ZBQS+Pp7dclmW8eNZq9LFtLxPaZDwMS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "v7JcesKxF4l2Hu+NlXwzf7IR/JQ+U9YdDwagRvHS0Ws", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m6PjtueEZPsW5W/Qz9wwrWJD68S9NoOxwfggPP5ISUmWYREGDXpgiXK1B5QIMF9TnkH9dF338ZDgz1VxWpHfpQHbTggR7SmhafxUdFguJ3S3CJnJVW51c3buQZAHLk5805AzZ/2MvtrG4mrvPa0ATUQ32rR9eTsFNw6pn2JwTOhqRqikLiXtOBna4ds1m52DyInkW7txbs4Teqcv2wdLeMsRUKLMhZlnBetb6+QjEiwv+tYd6n3BZI2DXS1j6SGHM+yeu4U1jmXrdQrksxKC+MTZurbneZmr6t3gSB5iZWDjGezNkAXhVY3nOMyT05JxJ9kIdD8KXZ5eAc8Mr2GqJuyoKQCjRPQ2fG9m5ALD6jQ6u4sN6gG4qCUfbNYCbVAyOrFJd20tgP56Zn2YhZSg3x5xUwG6fjUB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vCAZxYGIrd4vyHkWqVpMqklM6XFFxVlv7737n9RTav0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L7789axwWmDpLy/Ifdp1MmzBtw8AKNCyA1kxmlKtN8d1+2MF7X8y77ExjtuBynXwPxXS3sZ0h6cMYHU276uKRpy8LHQEvXh09zNc9JN8XyQztfZcpKUkj0iyO5NDYRiqa9sfcWpbQrBElyp0JVqUFgsVnhr88+ta7B/av0Yc34IYzyEenwYa9l6dvDkON9ZuqCkuLj3BZpssw/7loGTdAiggV7Rp9pitMtiLlDiQMGxL8m+/n9i7WfvFmXySQEgQasr+VOhyhPKFnwb7Gin1NQCsOU3lIyfPsEhfm3W+wxveXwDhBcWmkN7f8jlQX6WsdMAXRTrcFzGe+cIKfV+hatY41rnmhBL0HJQLzr25g818WLtX8NRDQXXOBtahbtIpGcjPQ9NYmR/dWfHDXKXxWYpHGDdhSuBp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vD5WFzQQkFlWrES6OIqZNWIG0If0IuLYc5+ef4eokCc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PFlmIIeG1Dc5KSQp7htc4JMlbPlpCke6VDeOJYETPSsz32C/SiNQIdkrDpqZNhNbUeKI12SjVuvL87x6OHOZVU9MYulU4ME8ltouiQeUV4IS5dRp9KfVrNNH7R+rdk1cklGfSJVN5x8Bx7rx7V1o4Hp1B5EFXuIEPqwn96dgJ91dKfv0YeDmDPrA50D1p5y27Xt5mTNw9SX2o/FeLpaZ3HWsl4l9LN3C2J62t8dJ6PNGN8Irf2xy8mxTt8TnznClVqJ8IaHR15jbD6Yrmp9blapzbnaD+vH0yk2u8/UFl8zKoFv2TOMLUGCTVyXdElFBj0o4ZEYwjkqRnH3vxKPlwQOTcE7/p1aPR+BIy8q80Z6sC0XRoUQf5UwkJl1dBmgkh0zmN8g87eDyF0w2O1xLGtl8qIqRKRZa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vEpdl2EkNryZ/3J/M4gJ/81m6zwq85fSR60bvogYF3E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uU9k5bJwcVSXLwpkgK92fsKSUiglNPCTnTS3BvegQYDOMhIpoV/Tqbchvk/T+XcR6ey6wYPo6BQ4HOxRELKdxIYuqhLcmSn2SPgrXVqr4dnqyi68mYZ153jSeAZFZYtixqQ2FWB95Sr4B/QwloLU4wjHo5FdukCpkG/DAUoZ0VaRGarD5O8bPn1evBpd3bvlrOSqb0wM0tJdaW/wkhCB2TWzW//mY+E7X8gsqFQctLa8z0o/+na24XKrqRcxq4PyezrhbIBGCBcLsS2dYWhIkqZEHjnErZ1XX9hAyCSxNxQIHBN+OWyubAw1o1jXWG5SSQfXfiOs1OzxfjORigrJLXcz0sRLPTYEsuaf//TMdIJdBJPcAWlpRqNNQa0FpRfhL06Bdwfy0Hpg2TfKV4gqECFECuhlpSXw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vFqLfSwzikLA8TuO8nuZEtLaVdcgXjoN57YKycM701A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "G8Xlsq89cV+hdSxna3JBjxE4iWOzLaZH9AiJLynBsrJOfGnQyJuGvOKj31TyGix9uh8TXdE05uI8ioNotP62nXXlOQ6zIa3bnodaoglm1FHRbcO5FVhQz8dIe78wCTWaE1F5f+TIqFZAn953lA11VEj3z/6zaNXzyvnRxXWw2UkZ6FlheavyNoIQnvJFvjeREWSNP1nT9a259493YOkxV5+2pX3JqzqRpKMAgj2H/rJ/67LEx0ViG1wltMz5dJ63m8G8lfDrwbPOLdYeyMpwM82DSrKeRS/k0V4Sjgvxh8hqSCCtPSbZmwueEo6DOahrli7KDBklGAC+zYplv+vYLU4ZVIexdMBpnhIGiqa07jO+IABz1xgyIrLF1AAbkNQFor8s8axGtd7EkxuvfH0q7p4OEgwplWEY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vFzvwQDBkFztoQc3wW4Vt9UlPllJ2603wIgjZfgfcn0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DL/pFGL7EcVaWoeclG8lesCtVvjRkv4VcsXtTk5VfeKC1eQMmAgYg0DAcO6fxCuXmzGm7Q3SVIuJmRvweH94iUZWfOTyCN5ewLPSTKSZ4cdz1MmsqzlkhyJT+FYBPfUKlyyHYMNHnB+R8DD1I6nKWOqqOUVMcboUETl5OlptP0yARgnJgvQs4ifEHhYnAIGPbicDksofIwu0ZLS9HAbSTJl1v+UB56C+uFYAZdqPMVI9WkkgwYsy1MXMMe1qWJww2xnhwQiIWW8WLWXvGmESwJ1CDYlE1XpXbNTj+8F3/bcf5BQydZ5qMXDEuz6KD/BSyvj3iQgM7b7BmrxHk8cv7yv09lHZZ8XV0JLQ1t1UjF9Aqxvx+ZrJuvn0boKHjE7jhAYTS7FxgQwdT1h2pAL4rmVHzbpDQsnR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vGwM933sRFLA50byCID7Y2L5IV62yymnAJ2vylneITc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MN75mskxzipY8yjaw3rkUVoZEZKFzwoIo/D04TEir9mXXFCljevKj3x+RpYK6pk1NyERnbSVe06gvP57hggEkWwbeZ2Dww0y1ZKO8rys5I5LnGIG08WunQsaSR5y50UAHEmfmAtGM71QlilZ9ZyPLb0eUhgLhqZNH5lKdyx7fZoTzehplzwhJ6i6f4fM5oGLDv1NGq7JokpF1FkBFv9EozoSsTkSGRJjf9xQx+PAwkX19u2zS5aKnNrU8c3KjVO0uKjY95d0PI0Cpk/UP7pxvMoa218AUFXcGaIL++qeFNgA/63hoKtRcEzEbXXPJJNClIIS7JQTCRpdZ0cl/vE9PrAz4YABP0WvHYNwvutMPnq3zSI+lxcRvo7iteMLaVSlRcuAZ20B42jAVKzUHEM8xjxG/eNYzACE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vHOTOPSMHRo1yPd++KmQW49YLVGGINFI78YP1zkWxOw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MbghHHIKI32NwbeThQP7cf+eUZl/BFCko8N2px9hnemAF69/EQQf3jO1UHlhXVHRi3Cnfy81RNEV5tiCCTD0Edrc0OIXAar2zJ8N0xl6IdSWPi4XBYTUeKaAElItb57NlFGZt0NYSoXXneCtvIOuKn2NtE6CeDvp7SEZEFA+YOB1CnYit2w84yoITVSaDoA+oqhLZUmA3SWz0chRqWcynz0FS99/+5upnkP28mdv3MKQv8qLkBRT+MNV8NEsmgUVig11v2OEN4R+9BtD2nz9OeHxIkaKHxKr9MvYg1AsO4MkvbNVzJai+E88zpH58o1xlZs3kosfeR1IAS9GcbTa85EJ463aId2BWUNWa2UPpmGsiZ8nGSO/fQOIuOECPXs07jRYrYLmzLeMmF6wXQ1KVPC6JLquvGuc", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vI//YOaG9c4M8nT3jvVZfaKNB3wSoPOTTNfynk7idBw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "yFY8l6SjTjJD+D9dwufJxCwoiPURDFlTV1PJWU+IP++nBREn2QZrHGFMO9wIC6qsfhJGEMgvHhBAHwmrL2AwRFAyLubXF3YTa+TzPDk/ASnIGYA/eU/BflXN9q+ALTeqBsbOvM3jDaVICrnNcNF+vmqP4uSUcuNY9IVAVr6hTO3NXSthUHKiabd88And5KnGcB06cISU25URgks/vzrbEZyMEMPbAZc8jg7Jg/AN0Eg1oEcJ+GdjnbFiMS3JRJjgRsyA3FEKbGP3Pn6x1eFhRnhM2yKhoXK3mJViKR4cGnN9eVryVbSmlTRvm/1erB3ggUnfDSWvCzhjmJ0DVE8CBiWB+EiXq60NFBmbBQ7Qea1wACOiQdMniatpDJe07ILqvpd4Yx/9c2uu9k2r0/+q14MFmureA0w9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vIeLYXXjLZtaherJZvEVEQvoS8E00rK+PAS1KN8DJh0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VLZ2/5Yak70NeF14/o+MWp5uE2Dwweob3EzrdV9xa/yY6vORAAexZ7O4blntMTlGg8qS3tDw6h0FiPRXncTwayz7wNbOdFyYDuqo4v0tUNXP/Rk2DYABNF2JfYWCZZ9CGU2iuwIe+ClGROfgNPZ8Z08JMyuiW10mQBkTELSQxmxLFKDKit0ARM+gQGoqqwnrOEWyj58VmapgQAoeOds03Omslb9HGJYtHjBd6NYMjrnzscy0qe8xIitcvxUlM0nykHJqrb6ijR0smtKgR87LOFPTyyq7uVYBlXXzUX/PAgbGWwij+AZ88lTQ9HrO7n6iN0nV2x2f7LltNXuUikUlR401d+j2MjZ5F5Q7KVKLUEgy0BD+zlSMp2Vxvzti15u0mdb2+YscFo25d+qA4wk+kUjGEh3k0pKo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vIkhycwfh+aOkVTU1XHVMdVs0GJYdQgd2+HUcAvq2ek", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zz5i3Oyw+k07dGiCrdbF38Lgikb80rA2gZcWriMx4drsYOkUWzH8q6IsoXE4lEdtLYhJprsYXg+P7FxH3did3Y+SWC4lgxanNIjzNlKWXhT07BE/ExsRurh5Qde8jQ6NMiz1tuFsEysnjwHGvMd/QwyDtZXhkAEGgdOmjBnUNUoBvDDbu1JWyvwbVEQZTtqSnT2gVVgeQiwA0UPEzJeAfHy+au00w8HNeIDmWJPWc1EYHWzVTLcQ9eyZnx6p0uqnlDeC4rKYLvEEyZb2L00ZdcHe2zsxBassIecEXEmAvHD1AUEC7xQXoqdXkm41uCNAXLX3+SUsWAHf41Ires1zmnFZwwMLvMWHg85Y2Eo/y/Wb3ZAjHDr1U0InDQ2zSWUanqC+F4QeLuzgj8qJrp0WLDFqyWvqwmev", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vJd0FYtQKGJ/Fdu6mzYD7XFpzYl+wbBE/peWNFge328", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cJ4gMP/HzllNWfk91WwsvHh3kokyOwBm6ba3Qa2Q9PZ5XVYjIJn9xup+IMYEg1CWOTyLSYHibSm/TjJqRsMfJFM6rY0MLbEhoBJ2NO5hXs8vXp6xKVINIFHeuyyVa1mW8OUbsnScuXwesYjgC0XO3DFc39W/A3/mHSNLaI5iPuEi5NPneMtflhi+LeOVEVsAy0RCZuCw3zLZqIIYsVWeUzQe2VKHboxRWSKVvBUW+GzuzUs63kEj09eww8Xpw6nPnH33V7lUon/qj10/kOo1cyduNi1TUmmCkXkNt9nQtcN885zsNg/dOLp+YWK+9uN3LO4KMbz8aJDVmVkyyrSN6ZF+RTBoeaEqHSBV07I+DHEmDWTU6pnrxfOljDlsWZHXlUA/WacdMK3m2gyocO/zmxHMWfifvQXz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vJvc4IfGm2cTGapQHacqTsJqr4bTjqnU+A0qdnapYpI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CSYAwt/N0GHH8FvABOD6blHPl3clUfrDPPpFej+m1NdsCAGGQASkpuNruvWGQkHxn9fG7okGi6euI86AeU8ZbTcp/8qHQ09kBH2q/LbIjeT2Ts1mVEwOEZqVD7s4dSn06X4g1UhZfLX4C6yEDZt56BuEFMuVsHcimhbl74Jxwn0+KU+fUVXgPltau2QK4Nm/kAs15S73JbGstFJqvAgyM/9x1VEB7K6jdVUbRZmo9gf9pq7pnX5Q/75pBwC9A9//7MVh/cVUG2KbgV2m1c1BO35D/jBRttbmpXNunhdXdxnz48TjobcZ2wq/BAb1fxHf3429c6XUWvKW3Re0lGgGaiJ9WL7HELdO78SdwxMs/eXFz8mso14ZWr8MyZ/cNGpoJfBGoswYjQJfTs7Lweanj3P048Tuh1Hf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vK9P+MuPXwC7SIm6bEgbTh+jwVM6lrHkaYa10TJjdkA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Jfj3ZqLthMtLWTkfs1mbbBNAJI5DPQ8BB7acsAXMzKyZawD/XghcfwlzekZCDxAa7i7nPhxYr1hlRvemJKXjRfwcXk9amFKzMoEuXWEt7X6g+608xuBM1nGldC+dqczgCjGsb5N3Z/ozVV1C/jx5nvWJcmiQi344mufcz7wroeaL7y2/SI6jeW93dNoMsV5sWVO+NcFr0amrffQwFRvJS/rKDhnYRPUwdlzWMwPzW7/SgeZ2st/4CLa3EeEbxZyWCepli9QaNnLZcal5W+xQIVzleKe26mre7pUH0g9nJd5CE775MpVHpMF8lqWl/CFF8JeAd/xk/3Jq2vwE7xG7U+r0tnOSHJNbpZIleGlFxf3UB1cLlH+UoP3Bb8Aew2LQu5nFmEby0VfS8LTZEZ/WI/wpEtIPtkDJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vLf6uFrPc7WrLbYJEiki55JEypaywn8h4qdiC0svfvk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4o6gCLe46cvu+Kss6fxOjreTUBgEqCGU1uCyVwtFFEKo1Yf+iDcShAfEMgRRjPLX4BNJ63lX68tnNRWQtl/nCpku2/nlfDEQl5zi1+aQKlNtBh1rRStbRsc/1IK+lIDCw9RQp/qfwB+hL2C96FTiBh0rLJurEa7PWc61K1OMwfFZBsICA0qeptr3xzsMSE8qjIMbkWuweU44RQq5ZQ6HIMGzYuzFJTc8xuw3yShANaOLz+dJPAKT2jS7e1KII9hxZS68lIAli13TET1x/MFfNcpwZTIMaENskppwS1z4uiqbxggQLMloZ2fNsdhiflQcakssl2BQ4dwCZe0IHSBGqYw6eFrlyMP7TSrkoFDQVIVZAjzH93TpVUysVUGteEDqDNIrme5QY/sdSOsLM4Jczmv3I1cFDqLQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vMyFC/ysabd5ve3/Ju2kb/8o/I9oFj0xYFfaX3RKtqw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GI+QAZGxBkxvU1eLuaG08o6PRbCpWOTm4rHxlFWYlfxwRIOxh08bayQ26onvYy2nDjOaRsS/KykKj5gRGcauYyGQxNSB2OMbVxcxpCkA9zlUArOyl/Q90FpTtQKkfxo6+sra1vlyZTH3vRBbtMXOQIqMC/A0ejCfwaG7zslz4t/2akLSlFBQlqvCsbeqlgyDV+nn65cP1OZPIQZDVpmNZjinGxbcyJSArVuvOioSNKgYMQ+DeMdz2sQMtWFr110hU6/JXIGORxpLHMkWANMOVD5UMhXlX8LNNRyX+CtlMyasqlJNyGu/O7ItnctqkWTcKSOyDuMFCX3+4dxaH6keiYhhe7mzFSVAInYAsxV3Nq4sdJkuENtlpFRc//HursPX2wmAQKBoxm9xnILMyPzth8tf31/GdNDm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vN7YC8F5NrvbfRftMNfSocrRQX/7TGcyxjFTRPof4NY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XV+NNbIIySvsZTyPa0cghVV5eRYmFKVZfT/OdBWYWaJ0oMZHqvArhWj0Kqg80EWtrEYW8zl6zaHBG6wNHR85qdUVZGCakhdySJxfyavPOlem/utN8MzApGQDHs1NxRRlIEhEBkJ8z1Db9gyTd+cgUZnLfLPYr/zNcYsheyD9/thMJ0bcX7GJtBACcMaTDyw+AJznoWwERsEQaefYiuS82wJQgElGo+0cwCTNqRa8lhqzXdHAB7gDQcfsjCsOVozsEk/J+LPUnbBODIfqHGnnaaBqptK08PCUjcNmlw0ieqFSqndARkG/9sjXVD1ZL2zTe02kULKoW3IM1trLUZnkWDFJcZ2sbuds0voKWh/w7frzk8epepDbqJZracRclmFmgkMvGhKthdYj12e2BrKVWLcjI6634wBd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vO7b1FNdO+2hu4/nfKYupZxb082uMDe0t/KP143mWZ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SsQC/gOUfuviFgxpYzMo+npjP44aY1Iqs2kCOibgos+ASwqSyCa3vwmYltEsZFo4Jtv04CWDR7cTwzoQleT7B6OABlIo2usyK6Q5TwJFRANDiI+tdYeBS3XtHsrFMsWFkDXNKf7eEOcJcvKXHn3TwbItyrKT2mmhcpIeKze2XBHbvT/QeOqKxdCK4JS1Jt0lkL4hzrXqf+sJgzYr4jp5CQQQOUFuCgo7G0BIGJxT0HxYsknXE9TvqVHr07nAb5p5kG8mmHokhVu+x9nWJSlAJW4crTIAZymSGq4CC0gePUxhE1Z9i9Ey8LNosIXF27a7AWSPl6tbLNcmnG9Savt50Cv/EH5nWwYPeHXFHVmSyLdtcWnNv6QLg53No14u4czK/e4egWjW/ORKzNoXZg/i9eYZmvtYgHJv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vOnwfL+IG6Au60V9fhkVY/uo93nrCWCmEckcieXpTYU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "GI6nTUvbgJBg50vQl0x0mV4cV34dPntRolafkNU1PbushZgf7IW1kFcsSFdDTt6szRbZWibhrgKPLU1FsHy/pYfyQhnGxzKjTzigCRJQrS1yQ+jFlXk5h+aHy40OekRjgA/0wpH6JsnzEcKsHslieYDf+3UZPIiYSPB60J+yTsimeKQvlC9jj5tfIiezz4xtkguYFmZJNOrRQ6tpm9UH3GoHLHsTtPKTz9KpRPMRpTG7F0OK6JYM5v+b7rrwn5gTWfR7+y13VXh+C5NHYA3PwRkXmiviBeQXo48YTsAp/M3hVPjs/B34T4vemrS98nqi14Z3m6Jp4pSNEBXWN8rLqiNOTH+XVPdeAsBsOVQYLsFys1tabBt7erLnjmubSWUtVnzb/+CegLgw4crDVLYkS99tHfZ+y/+X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vPRmmh9VuYTfdddTn/+/nS9hE1+AZzKoVp5UF/Rhbu8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pCJCv5nkWHbDXdH+SsQ6VbFCMuh3Npohcotr0FnbK9z1A5yd9TpjIplmlsmnIyscMuwwcxdNIC+hdZvunbsnhmpP7rpcigkWrlchFJzn6wCnT8lElmCr8HFHdPdLYGGGLzYpBo5Cvk3AyDRC2H/R1jCCZB9lGBtCOUeYiUu5oLiv2Jv6bUYnAnNb5sbP9WpU61IUFXfxPg3wTYV83w7KS1erqh1X2NMCNKDi2iDOIElpyS7F2fvYD5wDeypI3UEGtu5oMbmjfe9EAKRcB9igNaz4sl9A3hSxxC6lpqleiyrgTiq93Ym2p9UnroDP7Fjd0JMxNdzHnyGfaC2p1i0fC0OKmEqiLdmMa65Kcft1agLCb4Vegt2JUsVVg/3PqItTJPwTFonpFzDF8zxvUyXBtBeLNV3o0ESY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vPd9nnF18GAtyRmsu9sTkuOutk/hB/LkrmWDYmBQXf4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "g8IumfVV0b+j2XCabTsxKlDlHFa6AcB2O+y1I9Br+pIBi73y+/VZgh0KFkke7t0CDWvt9GR5ZkBFsCYwTMdT0e4tq1x91464+OnbnKJFAMco58Ex1NCr4EpjQvZeqJuy7cZd2/9td2Al1heo5L/UxggC1R6KsP8kGoEXSUsM0bGw5gssA5VPhhCc/n2P3uqKf3vqNlr24TyNpUxBi14J5aKTiFMKyEV8CsAxroQG0ZGeeXAnMDu2UeJFLW5G26w24lqwi2nR787ExBt57rwbiP+wrAiaeEyr7nd4eCAslWCQ0L6xpeLzzxxR+7kaRTLQjUBoD4rLe1oVcmi0FJyaV9L/qFen1cQqXIJDeWRtXgdagCgaP/1pOqxemvFsNe2trkXXAEKNcprHY7XivNsB8gCU6/QywYfw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vQkJU53w7aAlOdl5J2y6UBSioEKAkqyh38rPGbzrl18", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "D0oi3c5GQpRK2gddPxezK74rh15I+SoJBZgNVjdeX2uK+lASqdKyVMbZm26tgXIqi9hdU1XVtF/bLDCV9AjTas/Ufvv5IvMQPr79lpoi+g2WbsEOEqJFIBd3GayOpXLL1QV+NF9ZzPQBVGhHpmIHCeDi7NeCH7VFwyxS8OWyXSIcKZzvJb42IEOm0dAETa0sHd4xYNQHrXuWT95Z64JYY2dNuLrBUcXCgHmGtx7D/eVH5EdGqcZkpU3V+vMfl25i0nPtY4Ux8tdaHspIBXwioX+xpLdsSaauGkryg6sfg8ZccCByaZAOa0TSgLNKSwUEMuE49/C1hrkMfngPA6yyEzki8xzkgVlHUb163do89luS76NEPqIGrPHdJrl01aglzNUrjlKUYTXI42e38wC2NZVirnnXgQnq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vRbId1F6P9g+Cp4yRGTjvLc6WRv+hBd7Bz47uqyN8Lg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "P+yYlxp3LQxE4fS8U3BLciFkgF+dWEhXd1IcaTfpc5IfP9OBwH1mvulaAM+tIUb2fWq6KB9fPhdNxU5bkAxMXoTW2OTSQ0yc1+5UZyGfHFjjMtWvnJZtb0osc0F/HipOkKPGZMoq2IuXQgFxIlxKhpomNtLaVi2aox9hOtg+nd2Slixs0Aa1g1fzTUCoSMTIVRe80gEDRRnGoAeTttgNMg3JEmnqmp29nS9AVwKersIGDD5ybv7j5UgjZpmr261E2ZR5yRZUcbVNX9XiBDoi3/cUpZNCH2Sc3wFcn047LigD45YqAZ/l/JHHpgUZAEDvMQJ1DJ61hj2zLITOKbxgh1HWqNFXyHuvESEiDlMeAX1mffwLEE+I5vVQMFX/3+dEBXj2EL05tLdYSDpKiT+RRhmYUnyHUhc7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vRzBNdjZ5COZ/l3dnrOwQcGfra+ikrvCkOZnqTIog64", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c+rDELZObye1JDiQE7+CTzN/GAIgWCtJXM0x39EBOHL5Sd4C+svv9NwEiW9phN1HGilCH0sHRKVFq1TwJZITBp3VogphnnC8rf33bX/NmAsyHLEA6OLpmKKxA2sEcfVZ4RErXQiD8S5KLwuC9rppzjo5xULCnbAhqrM6JjUUop6gUX81oAw5CSGuw8mvT5mBPiYn0lLThMtUwBABvV9Pw/QckiMgHUY1xCCQdLivQH6DQqWrFdKeFhQyJire1u+jTmNLzg9OlZmpOpn22Gjz2WNJcQ2XcFrOLrKB69MenOaS0MnA4THpMTiZjSzFE3jlxFNQMRHmgwZ8Crg/059xMDOva1Hib0WxU+o+ybmNHxbjiifJ00ivzTKqetcQotEPUGKwre6vLeDlS2k0jx1IepKPShTjJE37", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vSQQ3/m+Cu+jk4ukcOgig3WYBMaj3C01ptF36vpVhSo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hWmVXZ4IWnIXZiZ79Gpd0pFKI7MQ4Er7r8wyAsJcOiEoi20ist4QsegrUrYCL2WexDSuQ6ehI1wvALQaPHnvV9y1+8BCN3XxeShwuvi1lI0JhKjFqwfcRoDxMiWV66Unr17VaoTodzfCPtkNCl344j/WCdOeAHXlr0bSj0IDRp4pmpBgi3uZsSN8fMG3/8x4DU/gDE73iqU0d01eEQG/cQJ60sW5lJu6VqCaxElJH8nyEP/mTYjUmlo5chH+NNU3e0Mp+a7U7z+m8F9xKD5W7Hayb0qY82oOoFLI9myKvxngTgEMCa6I7HJxtmqNVFb/LnUbiyTkIZKbZAgl6pQZz0JITXoplBXOZvuI5UaI/sh2RmSRKt3cYNgHAZJL5h2Tb8fD3L0ttfsTMrfUWVcz9qcDvgtR7F4O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vTBVFaWt+46MV2jfBv6crD9UtJ1PqTHdgKhnOxrFEcM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/i99jKW+nlAjjoUPpbKsDIrlatkii3BAh+fRsPeH4oMeDQh8zEnKLqbtgfL8+8jhOA+ZaDNnXgKcRKk5tDsrri6kex+LqCsirQLSKlqSZIJQ+eLUBf06GJa+Kfd0PP40ZFnPmQ9ki4jh5vmVDnAQAjZDHYCUVIZtBO51fHllV9QCaXhdCDl3l+tzkDf6yNG4I3uykJglLXAyG9UQ7oUdHGHMyhGmFl7R30UnHr9ujQzNg1rUObP5gkpko1ssTOrWklXmdmd2mf6Ov0dQb19Wh2jDKFdv4qEWvZe2rZoYl8y5/I/bzemIai8hFTdR5h0cZKU7KI2vnPNAjuMwKF3Ht1ItA5BtznwoSm5yNCcOOGE7vrMpWezTWJSmYdwyCb0oH6vHZodrpB7xyL61FCwGAy+d+tWs3T/b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vTkIyVw0if6j9zcgH0tDOZTo+BYXDdMQZw2AgVCYhAk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gvhBCr2s5xWWhMfjSeLInboHD2HRS3TXn+Gf1pvIax9Lc6+6EwfKE2QoVdK5/jy6vgK3YHj16WluS26qYZ3/Uo5rxVGO84sUyg4yHBg/XWPftgY6+QOdjKEd0lEPIukAoJ7tVqBvCP6CmGp7IC3wn11t9lWpHw90azjeexYxievK38hNWxh4lR55ear1Z5JFNkbOHbprr08kMSeAS6ZoAy9BvGc4G5OMur9MEVPxrvGTJIiKEHRNEVINPcNi7YgVfkuAaiWWd/39Sro4i1nMbTy9jdBWFm3foOvYJbko94wT33brR4W1dUQSWHBgORh2o39t2oV0vlBgOEmDmWmo76VBZeMc2xzDuPyOxtRjIsDyVL3jox7wFP5Ch72cS4EzbK5ZwcqEd1AetxGQDn+wKe4BX4G9fcTm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vVyukjLOa13kt8wGKKpSO7GqaLPx07fCgERqd68z+jo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZD7ROQuqJSw4EZ2afGpFQiPbJcJ12pFgaGuPBMomdFDDYuCcFor95jTLaTa+jJvw5ZJnt1N4V33BIIdjibaym6HDdpcck3kxWkTglQA7H2K0fzCRWTRFelqi39HrfniQywPqAyQjGpsGgcZ20HLhQKRPDVcWnRnot+TaD91wCs8tWrsjEJyEL+1gSc7zM/IR/xtFmRs1FhEV4NW2UwNCMmNhk7UubuHWhmpSoAaMKvuuZJJ97i7t/MlO1TmSeCz6DpB+/LcOhGY9QgtNyTeb6o1LllRE/L+Hoshi/7BUP+TbzyzJPfRiPQt2oUynER4vcpkNGfF8S4ovyVMYbr8ZiLCxNlLg1ELrLQT5tCosdJpfUJP0WKM/k9KuDWicpFpp+dEvWcmnPZwLWdiymzLAkUTdDDpU9oeS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vXmxEOfSeYmoTkru+YGEsNdZgEF4PLJxI/yVwPAbbqA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rCrqyMEcW2VTeyk/S4FUOFoOvEuC2SKicbNtxLeb1eS5ZkZ4qvH0F94ExETfFxqxxkt6b1qpHURzblVGEvcC5JvQphkUNrYjgX3nv7WRlFtIb5+XF8V0D3iqMTcZ8XdsS7wCmqlx1dgUEOshrV8Os6ZHelCaKOY0e5KbkBeI1QUZ7LCKPIQytYbj7FcqnXN+5Ne/ilw5FLbBR7p3IfwtkCfr1AYo+rCaQKrchn1tOQaP0Mc/oxkD/TB+djPD3Lr/dXKDzbgYRM8/Tsz7Gvzm/do+N5bQMgI0C9BNHyRQfqQWn/AEId6NyYrJwqeU62Ybh5xnndGkfWEBpktCtWgIkOkm4RVwZkIz44iUCZoO0/KPuiiRTebH8H25VoycKAcn3wX7N7fdAcTXpqIAUj5rLIQfULQs14Wy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vYtWzCqnAL2xdbn1aUjU+YV/ikyjNNLA29z8usxGDHE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xVrkZ76ETK6Y4owSCwMHgXZMNA++EWidteRbw+rGJj6oh3HWkFZanvHetuPWJopxWeXv/owqV5Ydv+kc9WXPb/SMyio4Tv2W/zCCcVoUiW4PHCXTuBOO1vH66ZGu0xF6xej1Ty3JYGXyMYC2wWChG79jFMed9/shb16kYp1sZAQ/R9Twiqsqc9YAEVO0FLoG05guuaHCAtKJr6pBkAb549Rn6VTg8Bv2UAxLiIvLXpv6wCSiZvWKOPU2197D7ITa2UOSHisvY/WJxAaYClvPQG2mvUWMEWU2QVlZqFGN+QxvaUt32MwLzJ5+hhSLPrT+EGjA5fDGgMepe/CwM8TCMMNWgF0v173GqoHhmlfZ/aXKJto6FRRluUoxiupLkW0WYWCtita+oVh//NWdmWqugVYxqf120+PG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vZLNvkBF2u1tIkP8qffvtjbXQA0TBACqixz8q55ps9s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DpjFeQ22fr22t1sg4ViIu4+QoLiJYjoj0RsF2sU5h0YWJtChFSFaxpx7yT/bQgHSLMlwhu0fjGKswWIysyjmrsfKzeyeRtxxlsrLrxu562fwHffwOB0TTQwrSAtfda2MZCDKHg3jfJfNP0OD9x2JJ+vheghPve5dbqm6ucDEsHLTeJhHtYKcU34sP9maJx1Z1IZJeB6A+iXxYQ2HKPM9aeDkUQ/PFrpZtnvpimBrnyHDgCUL5Fss6tuPKkP882FRVU1NGv/QqIZGBrd918kS4T69zvHjrZWe+2IE9Pc2HgXVafE+lzAxfK118YRfrU6rkDnrbhzMv7jf1KCkuli6jRUMM0qbm3j3ITGXdm5gDgtpnP6pAaOQoZ8vUyCP137XKNKTohyAxuxI81CQ+iDkS/fuj0oOswCO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vZPWjigsDOdjDvUPsT47caSkgaGXi4P4juqYaYrvVyY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OSFSanZm1Ta/WsRxeZvMk92bkgcPMn8+HHHvqAW2oQkXTywfLHVssC3e5Ii5rczdQFGD6fJp4NAq2WTEmRo4lqFzcEDfM1ZJNXiv6xKRkJaflZdIX13d+U1UNaTq5Rohkq9Wv1a8U/+XvV0mnyy5mQW6hh2Iy37fl7f91KJ847UfpTqthDmM1tKwpE1W9SnRNy5jUFdM8VFxOGGTB5VsZUDN/tCMK7D8Y2Qar3TN5AvoOQwM+Dpc/yitcJB7fdSBbS8bwU8aAsUSOpo2qmKqu0tI0eSfNfT8Xyy5DXsRlUtrmTjlu/+5QUIb1X0knff0YB1IwUsPSelsVrXJeZWD1KBhn6qCmOz7ltZRwA43tHaWaFNlZ5VYYVWBf1i4M+N2VUqw/JIfXoNhez7YdNQvagC4u8Zrubs7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vbXiRTL+XsYAZnVnWR6D/l2GRM8gpkKlnHewSdqGraA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "032BGUPvrXewvHL86WOg98IxC1fDeZ3B3eLJU+I9udzHWxxjuVt6MNfV535BmWzXtS6fqpI2C71DbbczCYj0esY+X1xdCqIofWGvsuFSvXOGT3r6Cm6b47B5S1kzR+72dJ2TG74+6czPGhQihi29NB7/aiU+U4o10VWmA527UIEZ2M9hV3yld95vGJvytYmFw67XBLqXNT8DBH9ya0PTURfa6x338jsxyoWj6ax9lRYA7HzbM01iHblJESTXEFxu3dCS6j8rODCMPs3QMur99hKHmbXoyEOy9KCpazaKABJBaoERqt0EUxOxtVc+SUL456H6kb3D5RL2LTucvlZLxn+oZKUjtMYaT0lbQYREVPSoD/PGDvGgeySPjoNJD3CTDPnqFt9YMyBLLcDGH1B2vbpPN5Hoh+GF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vbZ8n20T0HEUHW+eE3zM25HoPIZSZWNwMb+ucrQePZ4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w5EXuIMBYT2i/TzkFWN94l+Rw3RmmlXqb2ev3T9FQiG8jkHIeBA6NYGda6l5yinr3MXNUBmoCgg+4GaV04nH17OkWfOL0UtUDi6fQeFXo96ccQNtYxhTAgzqEVIlzzvQYO4fyJ0a4SY0ey8wTyupG6EDQuAxlr0O7DCp2+ozKRXEAAo7KLpY9ODgNP4fx2o2ddDK1f7NVrhIhM4EeMrsfSHZWum15VnqO4cpqKC7SvO1XopDtANsw+Z1/QCssNXxWlC5AzP/8FTRbAFcRHEiOwYmYXZnpet+EiD3qefzX5soIUgYuSnlBLCs4d+dl75zcDFW16+SfbFmSI2H/CnwSkDUainUCGk4e3Xm00vdt8WQCJbyQt0dFZNeg3c39zmj66ijg7fU04tZcyiKKpnGMig18etCcCUg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vgY3XWuGwxsTGVedcLjkY9ZA7paHXKOYnmWPByr14j0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iRXTqchUuJVQhJe0RZyQlaRqzcbSbIRFXmFKqrLH8ot2+T0gvngkuXF2EW5cn4ydKpkS7sI5sr73vVTY6eWzruyDReaN7a2X2cVjelVCx5oCGe5ADS8FTCTv9N6rRe4wGup8U4w4ZZ2FmJ707bcNm9HjYMsGvAW/UvwTo47pcvNlapTPLtiKHQnuWOtmMQEzqMs+XO2CcvyUYfxz3HJPLFhLEgMFaF+P4OGzkbpN59HDfBpak32Z5igUJMMKrOzyaKeY2gnrN1aP4wtHVDr/sFVzk6YSazRgyOaxvUGAxD7wWOSp7LOjVN24Fb7juFp3mAuqWl6BewSnjdoQpvxeUIcVGhu2sAVB76/PpEtihyMM8KicsLkJsIlNv4Czz4ZDFFq1ipDoKE1xDPmmAzfVgc7Tl9urRZ+d", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vglBaB1gR692rENK37CkxXHz3HVl5zzF0UnnLqa4cbk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7Uft/NqHSDeWwdf+/9dQzBoqC00In93Z4MMpnZ2s75xpRRGZt1ELGNxmOauHlLlERp8s+rv06aNyQEfKRjkwT+m41v5ePfyQWShM0triC3ugyKENb6dl2VTDWu5vTkj7Wm6p4+CfGh/i3gHCKmSPQOgeFF5l/MY2IpSfY3V3oZXM9GT1ygAbP3sCfJQbkx7DucLRPfAGYWoxsmh+R8VdW0RTrRYCd61vsgdL8hZoHPaIFRSlClTPN69Ufm1wu+n4NOCKZLGyXATLtY1s2bc2hFmpV1CAg46U4yiE6HUhSPTatNXVNO3b7FBnk8AiTx3dWPtu3k9yGK+K7OIrHgJM9L2fJuU6NabEG+gtAl2UeikcoErNM4YGNCNKxgHFSC0VdM4fDDkscihnYImf6gMRe3UiiHet0mOA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vgywUQRFcZI9r7rkbI3slevvIq9VoKeSv7n1fwMc6lA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Fi1wk27W83xcGcFXjLyHi3XLxOIThT5pAjbUVrDOBoaB3pGWza4Xk9S8ZppdRE6djViOLB5Jr+X+o3N/VOjcV88rXr4ky4/ma8QXpMQjRD/r+DV5HOhB0tFz/hcH6TkDai2Qdq5f8morimD7l2/8F2z0zgG46Gxdy91Nd6UVrBsuBqhhHzcmHL52YWUKeeVqgeUmJtYcRn3+8i8/4dVloWCQm9pnS+mgHVcwMdgCFzoMWMaun9woX6oeVFANQIHRts1Ozz4Yg9oyj5TmEDDR9yyuBGuTeO+YFnBeZzKQJt+wIOxWuO5SHV3N9qInK+1oKS7OP9pLUJYMkut+M5Ripsa4OKGyr4+5htms4h5PPnhY992hHjAt9rkXDnwGgowjY1vH1x4AzOYmAZKEqhiT9NiDNJjXB3MI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vk3vTAVQl+QAAlmttq4Eb9DVPSaB+74ghz5jr/4h0no", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RRPPWDyZPqrPuZVY1YagrnggfJVJxjsoaAh5pa5lXY990+XctLhcZ2zHvHlpxuJufz3cz4YbtY3pV/xy5WTCHZpQ3Yp0EFFuq5eFO/bf0s6cpG0OyY97OdoXfMysZSctd+M3EfhHiiUeuUsGGQgkrhk7YtNXRZwfqsMkybfU7NQch3rccDIcKHT5YXve5Ku6BsTxm27BYlNL0d5ZVWlkEeutNXXXAtCfVFsD6qazO5Lq+lltMaOjqP7q1f88J12ErX/s3RD6iPwQMYQJS63y8CHgkGmw05yJu2EhUZUKhm+qyfVzwlgCUklihdPJa5LONU6T4LoEA7LI4MUXYKVOLnID4bPiNxaKyiXqr2MvkBRhUbAVAkMfYtUXytZU5PPp283O2XDpz98Xg/HkM2WN5qewpflLkdW9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vkwnU2tM27anEMrPEJaRxzhGahhfI95Zomtm/rFwkIM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o5wPHH7SP6JQzJj5LjlW3pEItmUBEhY0V6NrFirrJt4xCgawBIdwo9dHH5PVEC1AdwuTLX0B53F4xTeTi4T7tjA1O6YhHFrmMtMtRM8NKGGxrXL/nObPN3NBzLIUxfQxJyhg8zVGWb6Erqn+hocM8xv+uUwXrUXzX8XGmltxrUwUhth0gdESfPu2qUtp+FFY8kRcvVmb8YPs7gOpglSld3ck3bgbRu7qnM37SoHb1PELopQcmkrOKexX4oaV7VKl2mLQHjqC0ePkcqsltQ5c2cmEv976i+zrzsoONHtmTuTz1DDC+b7K1i3Dr76T++4VhWxkuiICejWYaUJEsBCHctp5fNy3BSHcm1GI+UxTVwB+BXFcMYUgLCT0H+YpPtKqeYtp9MoDWAn0TjNfCzQWsiDtPWHskiPY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vl/fLU7VVTeaCEl6JkJkbvL0I5TOvqxQhjn0NR/wzqk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9oPf6sY0h0j+NFQhG1hkQbDYqohb8fyBXr2bRX6ZuWYd80io5lM0egvmm6euRkqpP4GuVDPLV+1FCzsTUl4ZT8Iuc1N11c+yxR8QpAMHhD2xl+U1kaFTdEOObATqKmJFqbTttXyIoNBdzSa6q5o/ZKH0nHFqrRF8peu50LDXK36FT0A6t9RmtPlN7xf1E7iXUsYLyJE4XFi27n7x3Q5NM0CexFF87e3kfXyc+DxZdbLoxXhLDGtg5Dqg92W8NzsYNsv/DgPl/TQgxHj7QPqQZ2A8N10e4Cw5ltu3Fumxb09tWYFOf8MQH0jOicPC64BOS5JZLM0K6CasNQZ0oDokLfmS7eNFfIrXrtW3PE5czS0NHhCU6HvsklsoZcwz4dT+U//SJvkb7L19IHGw0khw26SiZIuuwm3A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vlW5FQEJa0wHUmi/lFBMSZ9cO3ATIlAEmk1fUUTq8qg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ul7WTXPwST8RFoCokpeZvZ5meKWrsKldrDSjjVUajHNExKCLc4wQk/zCCO6iV7UjGEDxOPOdwZG70YbHIjtl1DhSnOCiC/KEUfc64ouoVyNaR1pWevOnrQWrREeqIJk21k1x5jwQoGhT4H19vpKKdPltw81uFOD8fmTAq/fZvwx9G+SfyAjAhsJsOfHGMqzYMuznD6q/Y9p/kMuVbTh+aUqx6Hc+EZiDLmqapar/iHPHRQ9m0ueqPkWpuDbruw0wRAQyYWFNelDbfOg0qZlLEy55p/eqRAyYO+chHRCQlsb6ivCdzCy965r176IlVEud+I3SN/+2hkFXXmwZOV5bQ8WqdisSHFmYM5UK3J64vIHRtQ6oIB4IAw9qoANIRmDB+2KfELG/up+S7wgE11zz4NCpfAZfMoiW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vm5zz/6G3GH78ADjQG6D7RJOatwDKKGCkLS2bbRQQOg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VXM57xLMLLbHdDNfPSUICtLX+GJ7YD8fiRGb1mWI7Cny+CjIg3BfA8iQrVz3ZHRIFHmE2iAzM0sGUru9wxzHF+rrq6d62AAatpq4G1D674nW9ytHf6vIFljx24y2f4aWsHkXD0VnCp2T8xkapLpQP5QKNJLCl8ggqtDVt10T/h5v/zbg63YDbKhdBhRXTJ3vrGKRfRzekEG5yVqZLeaoUwBTmRDqMhWNYhOu6f6pRhXQqzzSeMXUnbbJLOkw1OyHUZq+A0k5YZ5jOS2z4OV1XbnIXOrBiMMPYwhcbMRlncSvqpXCkE6Ap2PWEMjXTx+vVJ62Y1HF6nQkHFvRldS5Q/P6dlnulJanPaA/3i8fLDQv7LfCovOKyJYoE61oQPnFHXUvhFi87qjyYJU0TyGZrSd9w3u8+y+j", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vm6YagHVs+Lvi6ceKznLRbJuLaK7Jc30NPWUfuQBZVY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1eTb/hHjEZ6w3VHX9G681ePMjPpkX7yvgikq2GsSnHUQn476JuiV+YfAvEQ39cJNd5nw34VqW/R5cDQa/myiuFd/AD3B2nOA1sjCoVk6VWQE+gcM3CnAbeTkKLzNj8w9pQ8jrIb191j8KP/nqXgoTnMBUuj0Gsaboh7MSvsddZjMRba2spEDJhFHhcspg86ibD4fOdFo7oTJGoKLBCg0Y+V7GSdgMPsB0oKTtdRXY+nFTyyqg4LhFU01yZlOk8bH+nXwy5APuWbwWNGXrgcMgLBSiVCzreQF8FanGJ6KV6l0ZBnSEE77VXMkY2Jv10ywsSXAIEG2HU2/XJ97AiK+QhfBK796CbXbwfAUdv/YSTyyKXMac2N/qV/OxrDKKSxtNti8+1Tibh7M47vxgkRK/uH1U6OhvrkE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vmEiqGvpkN3hS4zuI8gpZVCOOD+DxnV6qfPzw2p206k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5Aw8H3G3aVcv26Kcfpl0shjO9squ09Cp9HZkPYKSAOVqVjGaWCura30I7SmPmZ+4dZ0dbQYJmmU9obZOvRi4IpbjwBk8j9k/6Xcfnc21NoL2rBuz9v2PkR4p5PgeuUeeJi7/d8wJPc4W5hEskg5ZEjbmwagMSBbH4r2aLo/gG2LueCowpcXYBKNRvPWtfhhtaxMHEvD4EWGk94vtYoAA0yLHm4DMqZOAR4jgZceRUnYkdSUkY1YIrd6tslDjD3iTMgky5rXrDTYCrB4eC3XxFXxZLB9JtImWUaNZxv/Hxgve5hYHoYTExwOqWNq5Ce4LheQRnA1JPK7VliNsQjEZAYo+ZHbZlmXy0MzyAsMs031DY7izmuON/+LFtMHh1yQSR6VwbiUOmVAJCTIrI84inlT0CuuIg8Vo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vnm57r4/ISsEvAyXBi4Tqyzz9k7nUNus/bHRVQ0gWTU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hIfd9uOT0km6N//WmAYtVG8kFcUfapaxmtscdDUneUn7w0kgVtdhVrWs5JOjIXkB41rOdUnED4KXdDwrCE5w61BgZJHN5mSKEqR87V5UkZK6+NnlPMsechDmTetlr35TXDLfdZRQk3MDNtvMLOMLumPrzWEHkbIWwmiS5J1TUnfdRfQtGHgHbB6+M8iPKVu6bUFF2zWqFbf+jZxNiKK9xVIxqLKUBrRmxt3toVpmCermk2pjAcgeLnAMbMv514At1OwYLc5HpzzETt7/zs1BgP5SIGG97oiyjOtIjGqxeaO1VUfjlBlEwekbiDKdtrBfQkSCHy7urgwm/y6GzdQ5SzI6J9aYHTco/8QT5VktDUFxgjPsOvSFfGNdA9av8gwN2l1C0ENIIpXU5JHb2uTIUskIj8mQAx2x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vnu3hl1nvtoYAiAUbI0mtYyM/WeO+sJ6kgfB0coIR18", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xjzl9PHOGI2NKrEiY0P5lZo0m1HcDoBjO/GLckuugQSZtgnaueiQ4CUUm8KWEBW175ievCKruMU38nftwKPn+Oad/honzmkK6MfaWHuVR9VdVxpv4h6zVjEXgruQPwxLYEKDrq4TkQTlAgSHtNOFwejKeoR+5lilzHe0OloFwqlDXWVCpiqvHgRpqKxNZI4RGl1QmTsiGGfEuc0hDbAVILQ3ZBtjAoLgvAdiBpp88x+40hCZ0z8+kbrydL5mgCS1Jb+yY8BcdYLiRsTkbWBbe/1FIkw+ktKDQY0Adhx+9//j4LV1/o/+U/IiI7atzUZ/qZ7KynqFmjD80+QzHhodQulX/vMV1vJ5waL+dpN+Wc9h6oN6D+bhEtf202FiJaVN7MFR2KOVc7x3ZL3XPUXy63pm/fs3tfrE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vo9sMgKkwR68KtUGRIy4QzVbHIUWkgFktkp5KHaAMFs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Kly20AgYDzRaOF4KmDxtwd1dGRCwXLcemgGJ273rl3tPhjABbVz7yuyyFi7WECbTbETTDyauOZKgPyGcxvYdtZdaWOE16c4hBTPqL3n+uXQI7C4jueEQxYcHz8AWHE+n1pqpZcnGsBPWQoYYZio/rQ7oLJ0G6aw6lor+VWprHs4f6YmgXHPC2qZk5Cjbt5WT+KkP1TQqJtMPRiDUnvG0P5IOVCpxMklvbmaf66gj841qoHexYOrmMphlkRvSQJauxMzd6bVo8hZFlDDHgW3FW4SQereyoxiEGJf8Qz9kTe/se2u++JIgVLc+XiTA7yGWOJ7/ZgWKISp5qqqMWdBUIN93AKsJwatDExNWeJfnUf44euwYngovK/cIwwfGECHyCVmy8NH+EprFycUv9zuGL8irZxHgv5y1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vpvltQcJpBUst5XsTEUICuniRraY4+wFdmAY5Ex/Z7Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nHPcq1nH85jJWfLqn2mh4L3sCIWdF4rbpmItAEXD1EKmvzw4nd+tB/1xyzCYCKNKKzQRwXzZsG51WZYq1XsXdJXJqfTrJ4/pXTv5Hs0tlxr0bzj//9ByklKvKKhLF3v9Ouwi7GoFF0zeqG18t75OQvyEjQZ8xUDabVXrTcvLHwEiWxJ7feSO12v+q7/Q9fM2JBS6F9i8fQJy+eY14LYAKwUJ5dBJ3QHbnwBI+9CxJGyThyUZnRQBBzG1XhGvs5DZpuci4vX2LrWPT3iYe77u1kWuxeRqXh7HT6AlF+Gh5B3gg4eXNj2p9HCrtUOVgBfxebusvU90xU5KPcJ0v3CnDscxhfde7i5V2e/e9AkcH4oADJ3zgxKl+cu3jWZZewA+UR/E1bmFwQB74dYug3+TqVr8nk+rs7qb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vpyIWwmXnC6Mw3Gotv7vkN8HCrg1TP+6x7oqmkIgai4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uL0kzVsaFS2yyrpHUOTJBBSoq4bfNmojM1xifSVkJspddmXB5DudisoGlZGjrjLrratdrCbG4pvlgC5bUj+mljj+SWzNTCW5wzb2+L3xa8LUYQym468QyUczK/4l3SO7STDDjqEvF1wkEL6ViHnuG+pCk2K8Bknvdcwfte+wVmeWneI9VnTv8koleQtLr47YNGdh7mB3YGO/ZezpGoyTGQXzg3JlZ7c3J+WwNuFfMXNv0xYNMTPy4YdsOb0ntLmN8fMCy0FenILdSIA43O0aUbRgCIyXNG3Ps4/7OgudxFlEQNKoinKXeWDws/PTQAeRKf2VdQoeB06K9SbT6KpTt4zgudOKTqDsUNwy8sa0lEiJ//dfnJ4aZ/4XCkMIMvGWXT3mSR2MWawCQ7Ffu55uA5MzLTgZfrU+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vpzCJlwfbTKS09RpVYcu8pw10PnKWA+f93yiXFGCRYs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xvvTXK6A1SPMApq5S8l1fX+L+sZRJnrGdGl/ei+RcRyGhDg30Wb+5CLLQhhFUBC/Qtp3iOHCa9KrIiuEvKcsR09dQdbZex8othr+RMxFp7vRcmdx/KD1Jf8kJTfVdzFxabQBSJQoNRkW4kdr0An+/1TiLM++gN37wYS1QAAUkHwDWt40OU/kxmDEtbJBlYZGTr/1zUgcEzIuFGc/87uAgMkMR+Ir81AB49MaOgQFuJxyXEbe9bocBKJwNe0HBHW3YhFK53wccfXWeAypdx5oGMaq7hjrAv+MsKy+re7ZVNWfgBvAEmGmcrQJN7e1hKqa8Hc6RExVWe1oHkiSwug/H/+y6gneyc6VbZ5EwqAi5wdGWYf8G0SVzvzSDErEerMcOWlO3h+Iv7LIjXJ56TYXsr0LqRP0Wvxq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vpzOUIw5kxavXYbyNXVYBRREtY8cUaqyi1SfR+ZddXk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mVIZ9uOf6Fv8doSLJ/qY42thO6tHhkjm2veiO2AJE8FoAzYIzVL09b61UWRQmQi0CypYX4/oEOP0XyeZMrsnI3Mab6cWibpbDcz8Z8eGrU+mp34fjsj+c/KivAfJaVGdb4kctaqYP2FY1ty7tkMlYcJTpkzV0qdPLvD7ZqtFeqwVGj2j4k8Gzr7xzbgxX0AXyY0uzvyU6ex+wBF3hDw7cqnrZioP5d3rqSLophZIMI6TcNB3IO+KaUl/+Br8jbQhn1LYzu+/Mw0l5g9UYQsYce5nmGowd5DTKFMXn7SuOK/Oz6TKxTR1EKltYk3MmlL74Fm8vyOtf5kJyQtGC0DrgeWALkTUBwBEQoRAco8e1UuSD+bbyA0taRYtVATDIXTEtCG5wLOZ86D/RwY2MTgRP0AktyAE1nPC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vqCpuMSVxS6trcxfSJ5U0lj3McIhGmFP+b/V+qQ4wWM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lYNf2s/a8bz/McmJRjQngqLRRXD0FB2nB+F3wY3cxJBoBhuxHgTn1czbjFv5EILiLfq20mdYvQzAwUJxCVGiuWP1hJ7M/rZgmoogMv/5syACvK9SOrB981+2U/B6CmWVDZibCACzy22fRpEbcTFIEu8jqlWC3KW0SaoQ8gUBaa3NHubIuu5Ro9ReL4WlDvI/EOCkFynWnzE39GfkvXrqtdUKZ0bTL8BESqv9YabbjUpyqNv6eiOBy8oCAnp0M9ATK56boRTzw+G84GsSzr3ZQ41ZlwRztzmK+zQW7Jsb9kOnIpq9swsXcVVBBGrVR627a2xxdKB7wnVan6OwZKNm9bsSMBWfX2IdZK/ix8MW4CcaK5b7U1RmUePM1bMuuyhpGIgeW9EgKmUM3U9gN7DkI0PnIxpUkrEg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vqF5AAbRAcBma6l7+XQlqZ+8Z6bcEsSSzDo9idYOUjM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZzHJm2mqrP4eQyFoNOO7rMBuhe2VjkwcEPkkn0QDxsH2gbbakaHRWqttEAwELs2fcPIYEmG24HonKQwXzmINElm7HiGoU3cU+6aTiT1KPzweBcHfwDc4Uf1fYRy2T6Ya9yQ67VdikGXTIiDDz9vxrwKP4CydwcT0bJklUDwhQ0GWyv1Vs8WIMcmayPix1RdSZT1guouyBUCpuOSBdLt8qBwcPE1p82GJvSZMUijNzGM99BEgFuQmjl9s6ZpTEAA75VFiDMXXDz6B9CcYJ9zl3XSy9uVxHWOF5vjL+xjwPc0TrAxiCBk1GhjHLAx0mf4p8XtOYyxb7E5Nzqd381ZDGjGpeOgV9++kXc4+tCZN8y+h62T+L0EcCwXzvv06SqP5H9x76BT+aGxIKLWnWzOfmbC3CJNlaYdN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vr5EOLeeRh+vIWl52nVmLVj/j+IFO1wut5ITCbxobQ4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QWJR8Du7twR7NF9iW8YKMunR7Y/z+mLdJfwH5bloW2sAEnW9nbp6mIayaLQP1lU8629rcBW5648rJoRkaH06abv83AefXRgaNI/RAcXGYK9QtkQbq8sKXkXGxHldVLeY5MNfU9dL8zWwkFEbpY5XqobZQVSIoFRt3QtTLFF6yr1T3mCFKHt4wD2msqwFASEL2ZZfhTfdhd9+0ybBxErt+6seYl67fWlGBhXPb3NXg3h2fH1UzBcwHEvajsug3GRVPDfFu463v6C8RHVbGHJO1VM+oBrXXu+w6vR2UPdlOQ+AV4zw0hGpcbyDZuyP4CpkfvHAuHhvZ7UkyJvrWg7kKrOdnVbgpNHdcaTPKqIlvZTOOx5dnirGfNWdduBYmnquY3vLwwNF1TVGWSWglwZDe9wt42mAmvx+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vrH7AAvXxYX/6I12GBnLfn8IylFwT7tnPhvwAYLP7CU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/LFT105o65+NnLk+rG+aVSXysZJ2FCXgbn5drQnCMKm1KyfmnRb0Walx2vUvboIk8dcdBIfgKdcjPC8aKQ1hhCv4RWzYZ+Vrnt8corr7kftn2JjgWDRf06KdjpwquIPZUiuc8lm1xrjkRcgU57DSdElBg7G3G/TlZTVeYGa7sUiwh6ywtFQd6Eebr2ZJz6e7ImlKnw5JfSB98d2ncm5+Vo3IRV4IroK4FfHusbZE6T4J2NnZXXp6l8XTBBhh/Rc26vQvi7MQ9CJ8I4oesR/36FvHTN/6ohu0MuThyymXbSd4ROF6dML2Npfq3PRxjL5rXnGILAQSCLnTVhTjK4nEg4Lz0PZSvKLAD/iPXXFH/0s33BS8nmGjIoQWV07O5v2AP9vtN8ev09qM5LgZbxeuSZUCGiypQjPS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vsZZGKDdXJTKs2AjrgO8eBbWHiQs5p/wtOVY6p/aAzU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CdNzgG66aIe1vunnYI3menefEI4ywFyQzod1Uo95iA3/m7aohZw0PUXosKoBBCpT1aSgfnp3nTJXt98alrbFOs6XhwrtmwQ/yBQhR3jwEMwhO8GE+0WclFdsPF3ZT2EfQD/m714Y+00hA7cnfV6h527pGAlIdFR0m6Sop7nJUo2pyX3iF1Be4bBeVZ5umKfu1342kt7oBIRYH1E7Z9lMbsoi1AMLH9SGuv8eQ8BnD3TxJXO0rc9AN6mKqLMreMJ+is97oocAvvRe7EtdPs6SQUytIiPdRPeTVHxdDvVnFKWatlBl8+lej65r2rn4xfFqETyhxicpKzE4GOyJwWTe8WRpkriAKVLWNg3wFEMBHtJ5k4n1ox8XH2gT5YrXugYmqw6dxBTr0wYkyWAf8wphTYnUBTxmrwSo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vt2fMFEckWLIe7Su01kvkZR+rRegTqG02jFW/2DxEIM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "E0AuozAAI8Gy6xbSRJOt25515f8mbcfVINjrqTCdt2zzUr4C78SFYq/Vzulbt+ky9S94XNwG4buOBytYa8SZ+tLAzIQWyOA67j/lVbmEURKGMTeosdC68gvpUrIes40LhHISIA2ogeJ3zEYzNaq9ywq3rdYlu5f24MbAZa6Gfdczmq8/T97SriSVGQM3so6KOKy4gz+3E2kuEQWB9nCc0CzhYph0QFXrWEk8iRDUi4MSONuN22a3h52r6P5otmc3W9BaXzvoc9K86MdP4VfRtXgBx58yKsBIgV0NMQ9p8iLsEwhIt0x0wuV2o5aPtQZP4nyydxK3YI+zIHQG74bbknnuAv/tdIq6YTHmtFceoav+Vy33qDpyfnfGblTbmABkmqe/uRFFlf5TGu35MRVLmrw9U9Mu/ACs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vttn/malHsLpB9EVzPq2qCw0NJfncUbFQg2d5mokwP8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KDUO4ddT0vYvgEH4T0uaJsXyJ1+WY0wvpEdlaAZ/y4T6+3ZBT6tn4/o6X9lEvdsmjdVpsL8VQsUPAEMlE7G7+evZ6Rhuos/SD8aU3+7Y8e5WXseIfJjyWo9/mEBsPpd81kp2fb5xE1Rkw/mzM5WR4609ps18xLCaEUkWRSDiBQZ4uFlAHaDlxtOF/WdxzcEWycGuIG6oSzlQ+26ASk4FEmBK47Ifjrv15LHzc4MFYHoNhYXJf4J3PDI7y3u7E/1XvtznXj0ji/7M32InWVmV8KjHB1rO1Xi4JVHISZoOGk1Vz0jQjovHATuPhVm0uxPsQFdILoZrNnejBaqc0dpd+d3Sk+2dYHOwuWAknv7D7gxF2azfoMHIm0eGpAfRBIXmqLQY2jxk11RlToVUxLOf7QC6lbI6p4tC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vul5yn2OZgn0n2v/U3Zt6jqQKaML/kq5Vqs9C1hCAHY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L98+Ezo1ycyjdUDER3Aol4WRox+EFCEU64m62MOTuaxqFZ0c91lo/osd2ETGkuRiN7CTfZkhfbiSSKEh/CvS/A/AYWEVaEmZSMkS2jWXlMLhpA/NKDzNaRrbSybBQKB0WPQdldI4p+gHzQ7/O3oHeMlT6A1nb21q7fbxj+aCPQ7YSAdl5OsiI5QSK1DGcy3cVQ+vXn7zdWcfdLZ1UB8T3LIauqqCmCVIo3y3bhUCnJgQlAGqunCRPeoqpjoZRLi2rIkBAE1XhLd9B0uY7qWR7mB5JnlRxFDKfcRs3QqEUj344axsQfGJqjLoFkVKhavoq87vpqRkznyN7Y6G6tX+nLukyHcubU4PCy2JfsnLcbtMO/Jd4z4al1JO/VuFFVLiGEFFyxISin8zaUbZCbn8UepBhBXDprMD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vvLrZditqGH/M/wiKjxGyjU6h7aTaCbMWthSNb/FtcI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ap2f1nrnkhL7iln6B1HExIPiy8eHwD6JZBtjE2V6tjxIyZ8KWjs2zZRJ8GeV6p7Z6lHLO1PqNLYKfixZZ3L+QNS8Knnkjcu44Ve8G3vw9xw56aSqHYCTw4KPsb+VuEbXH8HcRoPbrrh5vFvYe56mUBVk6YnxYCAYrh4y1+9YzU37q58y+RPMeDNmLQe5cek2FkLdKAG+NZJB7hWBIeTpQcx55UPyvrbX+FNzGtvats8Ce7DuHP9qEVRDAUfF86SdjK+TblobsaNr7mcmD9lViNAhHe2R5CnwwWNOeR+ZAwecaxi5QFzPg5IGsWMk0L6rVgnO2SPRfoObe09KRR1HAQ+kT3g3oqjxNeXncUMFTk16qPFHT8k/fmuKLpvM1xJTrvjKfa3RK7Lj9Qg32SNEIousLqL0HpvS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vvh3G8fdJn3TJJpofSIzwbgPy2eFp/USO1hNI6X4mng", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "14oKmmlh6SSnmdkDP0VnMmRHUtHVhT7tuZEk6QT2Fk+qlpv4mJ32lFa2za4sQV9Pe4xSVlXPPwk5E0ZKtDikGxn3Vp8fZWJ5Pwj2Vq/hM0qb3yLDglzDZmpJDy0PnEux9Hb6t6LdXq7NDkj1eDwNSmmPPdgVJ3cGXtxnsXanG+QpXYMKZ/AdGFTq0xZd3q243REqcGV/sefdPvo1Z2xgcxPBXW2FgFXzSD3W+Dk7NECLVFuKoOuRJWWxn6g08/lzpJBbR3jAGm7XOhkW8WSOCod++411n9NOyGvHTRjQt/55Tqm/oYwIWbrOJ71lIsb9d0sVTlD60mVsm04ce/gMh++qscF10gI9DNiaWYPdZRyPUFAS3GUMirKF1vJwOluPs0BnbkJ2e8mYE6oYzwnS0c4Z/cC76VaO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vwBmVPuMWy7ykmidcAL/sF2zgagrJRzBC7hd/HdIWj4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "leqaEz92SntXdmxBbvoqwWxgEG8qRBpYfyjSHuh8wCoPLAgAfr15ib3F6iDsGAA2ueWOoS5IKbBAKysJR1Qmr9ZtYt1RHJ7xv8KKNyL4AYzgStroO46klIVVb3e1k+CgGsNC157QZYaprJdGLxis284xORBzjRD+ticnHt8x8+sh7pr/3UKobUjGx3WO6ZV/wOdtOS2UDG+AQ4V0/lpsyCAGgMTIW0HDSYenGB0wjE42V7Q33/0INO5nIxY97Xb8A/p0vr4stIytRcLRAqXvY206qstQcYFYymXxV3s9n3XXtQIvKuiqsiL/QVTCeW4mSezIJMj1zA65nRLuTaw/DJyn/zaVD/+/sdf9X1ecehDtieu26mS3bKHSTDVfuwR5ONr53Km+AgEvkPGNdApblEZ3BuoBa3s6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vxiKD5QQ2c5ebeM8tA2rVuj21ctR84KAou4LxohAg2U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "a5MxhMP1GoxZ0NEs3+5pFzUbbp9OxZpwufPYZkeT7Y1Tf2SbONWkDbCrlbKlAWqItpXiwAZpl1hSS9tenOrcugtt44TKEHp/tpXzu2ooX1ykUpT7I4xJHMIS7Yr12Yc6w/CRbEH16icyzZbfMJjTWJSA0AS4LTUA+wDkwdzrPfbOjMJSpEv9NoHbdwnyQK1LbYIL77dKDPGbkU3rwIRSTlN0SnnYHUQRQprRi9mvs21lzjZmLxW3zuBYmWgyK3N/ibEZn30+QYKPI+TgpwRtDY461fh1Q8hXSVk81DCW9hVul1FAAJZ++z464uiUgzav9NKLem6fRkDx9IVqLKYrmnGXXLklye8/5oLF1cAjFLvk/43QEOdPcj4ioGCNei/6RXtl3S/zJBKLbrVHpkKRSPu8pxCTku3g", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vydUWDp3kpa9CTCWrhFL1H+KfHrhXYv6CVxGEDcSofU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oxQG96qUgfrPRC5Sb3FLILefHbKXmbjeRuiVeCjlaONxTbRFvufKl9RZlmoJX+m8thoFzm4pi3WO9h1C4Tr5SpSShEXrkAZUBbvR3ycfNf3m8XI9w0RuYRUMbI1dFHKdjCZLo8ZAeJiSilTl4PjQT7gKIry3Fef37ajU4fX/10UMiIvyQfbLNrY4XQMAORa2GH3PNL+FI8EqmwHBdFWJ9z9qVsrrWhkSTUji84wPS5cDYqM3AlZkeylkrWd6iHxrBRCmoCecRWtqKDVLLK76rUHtEC0uhj8Dy3RlcL9QNQmwx8B/8r50I9pTcCShCeAa/nD1rn+FGDhQBRpsFJobKVFqcddhVKeSlnykLJD7T6c0RIHsWQvIQosaC4765mprhpJtNasIJc6EbjX10fAh50h/I+dCKjGO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vywOLcaKSP4CJpDy2X9hB/id3qKKD+vHdk/Iam7OljI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ReJU0J7nhEACXRBAm9Et9W4vZ8jw8mkCt/7B36ovsAHQKo9GsUJ/4CbRSFET39ACKrkXcpGKwtiODb3G1HRovOi0p10Abx7QOCZuYjaZZIGoQBXyXtUrajTrW/WFubsznJxi30gjJ3WDe1J3r+MIElLdgp3vOy3fo6XXTDFq1gdO0OMMekxW165UYh5h17k0JpRPjTKzuZXnxXzExi4okEWoMnmiJ7egRhCfnfRXT2jBNVUTudDC4PJ3JhNM+aNeSFTxs7Y5qu9DKVw7djJnClzLqg7KB9vr6ND24k2qTaCglROrSFe/lbVPlyOlEO+HFnEceqcFTOlY4Eillo97ll07wo/NibEMXx61klLlLN8BFjfUqV8tCJeO2g+hUoI3ih/iq4p/b7bDboFwCLJeJnhPo6ODxhvf", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vz+gIQFGtsbsQrFiLMnpn6FL1MNxFrSkzrh365ID7Gw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YvsbE9ExYvpHegLnTQgOB+mGrmqudawZmqgkuYCPdit/trINIkhGV5IAXDiuDJb7Q8GzryIb82H2/cw/Y+uIFnZtVsvKnj0Z/I52cgBXpM9Co+3czblFaP1jvB+YaMWr4p79Trbq25VF+7e7TJsUX3+0+n5A2FwEnIOZU+BNULeaGH4GEdkWB2fMQ+6GAYSuhac7CNkTarMDRAKkXmB32jxN8Hhn7gppcwt1y4SDnDQQ9kdrhmZaIACIq4BQkaJnYHArFukAmVOhD5Ex+CJBB0bvDpuYwYPc5Y/cm8di1PKYGfwnYmZ/72kxKBYKFV3oJmJDovraOOolyoZuE+/KL08rPPDpSPP7v4aZKHkbx4634WrpgYqGBSEvI8vw+89y1ezuXLKQ5tQPOdZWkVfDl13NZ5NaWzP8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "vz9/fewkqSawA5vYmJfOzap38REZl4IdmjCwnIXiqqY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Cuq9A14c2JkGIv+XSZNWsA6cd1FCYSR0LcOTy/af7SoHBu63uejLIjaD6orARuOMW0O1CnlYgGdjRtKc5ya3JKscThsutWum40CGI0jPYdVYuL/O2dqbCgAZcOxHmaAkwbQ9Pgq9rnbd1Fr7ljtt+K6M96mM3tOWnRpBb98g8ANBlpsRJFVRAUmyIu2D0Dcwfa/VJ043cAZrob47Lv9iTvaLROmHCqcyqdSE0/t2YUqjQ5P+B3HYWmbWIVAmHFVGi09xJ6e9iZghsZvfEyV1diMo9lBotKGCv6yGSDC1DgfMqJbC8N1sSM3v++skl/P1sglN4TvG2Z3FSO6LkbbKKcthgojQpwv1yntZuNSmo+0M1ZZKipmcPPefWp8rQsDC6iN7HZOce6bbDos9W6RtankSnSnsidZi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w+K2BZBYAjSezgmsSbBjVuKoL4/azctxVF5+n+o4D/A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LlhZV+f/8EwRY3nvzuFLzArpG9DiXpasI/qPztmqICB5oaM1Gysn4HIfPXaQlkpBZe31frK1uBy5mNHGZPxam3VY4KPBi0UsYnXlUJOW0k9ICDCCDto39931Fm0mOc4thwhbnVDtzB1LKto1ePwSMua/3Z7L/fsa3YvxqbVr8PQyhcdxWIXxkpRI1IuTiEfWEWYASvi6Q296LvZRn+bLqFxc0V9AwF/0W98Ozfgf2UHJ9zUIJeAjWbC1ZhBygdUzW48qKq3IwMT2JbT8TpZyU989fGTva67RzzizQYx2AYYMQj/r98yV+Yb7OdwM2p6Bff7/vQa7VqVelLD+mnHCpPV5NkETRKD6nlHBPECjjxFVxEfKk8jUbnehwcEy/r+XRb/EIBSLER5taWjABFO/UaXUDLYUmkji", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w0hOMCUuo97j5/H/oTKvqlPppw+6ZLPUlCq+oTq0E1U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N/VtaNbjWcBmkQ3PNdI+Kn/p1+m6ag080SiqrAFXGzqpx0N+CqhcP+VVCYkbX0ARCez7truoh/pmhH/W9QuDe7ouDUKV0ewzl8J7ipN/ydwkrlOSEnikvXC/pPYbZMMY8XC1BA6HRASAlq+Ti4B7zhzaeJ+HcXwpXoMBnavr6MJH4/xAjqDmv7LWFdgDqCYKiJDdNWWjOOMzPhv+8KghFrbO8uTlZ3ADkiF4irycOyiiywva3txoSS9If3Xs90UWhU0H3YYcq4QxAbEo9DXE7OHFyosBJ1Mwd6JYddTAuD1mKaPgMyrnkgmncWJwtxbGHvuvHUPSreQSHWA0E6zOiN29G/qHz9r+oEKQQ0O/AfWdFkux8cia1+S2/1jdn4J92SMB4zjQpY1QyH+yK5KoG0bCxbXqGESr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w1QR/I+0WdR2UMwA9bsZwsKqSH0ChIWda1km0gPBDwQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6Bsoou49igLPBmEvqvByQ4YYUAru9T+B6qCPGR8Gpg5cNARzd6UtjWZLf88lkkYNx01wKZOiKGwI2v1XVl1RcUgnieNXvoSyJvCN73dGSNI9V8+MKo16DNeYv/IL1EBxM7WDzgOaWNHv7xhabA6LYRw/ueT46CA2yugw+rpTj4TcQ9BzxweE5NprBHsrv4N/hlcYDyxiTmtSufsdF4aqoh+Q86hm/5jp0Sfj4P8rYPjIzFhzHd7jdo56RgStIs7hNUWnDf21B/7kPhqqpSCZkADcnZFPByEqLk9M5HEbC6doeOePwaO0rA9poNvXezJ1rWunQyvA6VOpvDCfHhQjDA++sGvcwmQbzrJP6SC+sOjxj2uadYi3wtPVSymzA2Xr2z2OGDgXJVjsc+0Nxb3eFVg+CJRlHDqF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w32G+eNEvjpTWUCnX4R6eMOm5tdt01re7LtVQTQ4daw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lu6G2J0Csf3uEQnqG3UbI1fAsCwIDodFYylm0h3P/xAch31Or+AA1HyU79f+lz93pWsymvWhIAhH5S2g2evk4Uj5e4HML2sqRhfxQI167qyaeTxJNKjXLxJ6WPbEZVFmLadzXkK/qCw8IuBJWVOD13bOedszQdThPsuo/xeYJFX1uE//aFwNz0q5P3hIExQHXMSFpd3ca16i3qbTMxEe07HkX2c+F9KcjLAlZAPOcdTWecVavigJi70tJXBmXRjkP8NUAmaQP4VfZWY2bwB8H5Cb74HfPKDaQBrCB8KM//svuXhFXW+4BgB1GtEZSkZpYk4KH4clNeBAE3Hk4QjjlDtGoes3p/aropJi0G54cKH4TpiKVZIgcDKpdTDr5oXd5FIK9ZcY89VI7grz5TysQSwgRLxlXt+C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w3wRpKLwPqaqpiKYIQe7GNe0EafN14O60q3OSEWfgKw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nTRkPFRJiViKvcgwVzASZdn0jYUh4ZNA/KFKH5lPjN42xhkl3QmZoCH5wJI/rsJgqo8DQ0OiAulCmiBhJKLzWEmdXDe8EBG7B672HolvT+5ygg0lYMYh0pWWJ6oIxqBWVHtlwf1ePFuA14Rh0q27pGdS+4rG3/IhcY4iZybL3iRZ9CwslYHzCqk6GGnNKHA62qo4K9gifibHhCtzFpEn+NzK3HZ2w463nJUghCSYjFiyYCcfng3wLv0u2pjNr2UdjmElcewwqGY4rnLdGP8yTT0AhZ6UDhxQIT0M343352Fr7d6gruhWLbUCLMVbZs43bOiJBJ+o4oy9G0DpR74qFt8hM0BxH2qkNm+rKzuAOOPIJnVQdEqEOGeIx/x5Zk0ca+GFpzddAdOxzMBg8S5CXCrIGXTNCEqp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w4XHDGIsLRYkY1evLnU3wVGkzeL37NkXd4Ygdb7dPqI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kUMyoEiUdWipm7Ja+qQ++6jNez9wM+LgWt6cdKlaCsbyZM6O1zWJIbEq6OA9os6b/xsMy1uTV1mwKudPGxY+w2WpMwye4ZzNTFJuh7Al1G4FNq3NxsdboQRGQmv08k5yRIqSPAHgdNH31FEoD5DAD78/EAI5aGCKqqX7aPWwGBFOi2vksy3O/innm3HRMJSf21kitQ+j7Pl4duUs7ciCj4C7Fsg7PitdJBaS01Jc5dWkYq8dys+uU/0A5lBqC+vbindBk7AgD+B2vSy4j97rMU7M5yIuJyHqwDeSBhh8OnpiP0tQanyWjkvm+gMtRp6RkATkFPkfKiT6PVWpATQDHscTA9QogQa7K3byG4mMFUNYM1gcqGXDkLIfu1Pt50jaoQth912VjeWFTBCbkGdd9WieAT+zotSb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w5XOarLasf+CaOvzwIrJUxHyO5YpiZJpyjtS8i4CP34", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bSl0B3ZEivWVC7hRGV+0Z7scPTZ/e/dtSBMBXLso1MqN5xXiVMaFe4nPizuya+KmQcXQk2BxmcYYUQMunOkiciK3eWS1EzvyX/TpniffSH9u79c4tIWQQ61Vr8w6wJ0xhsf2nEtsqT8pl3TJf17zlcZaKF2J+9x+vblEceeKhovosL+DymoYUEKnBIY4dX6FLTGBxrvHtwbAD5dYE16SJ+B4JctVH6riWchIppW8QLv18tHIANrO9pXltZNVpRiZk6wBsePbkxhYl1G7v5X0TpzMatA9e9wpH8bBQHc7PAlVLc32aHO+o1zr9r83kcAaZPvDgboCwW9Nz3VH7MHRd7OGtzFkrkH/iYvaoX8Aj0qe0A5RIMDxotWgIfVCX4OwALWWevgS52SPUpneYSdiyK548c40K7k0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w5y85EXxhFFb6TGxbWP3mBhHavz1JB0jT5U9hnUP9GU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6XC2VQvKbJzMZeI76jcQJyN5GVjQAqssvW5MlsSkIfifjDZAOZHgfO2M11qazEhV7BkYQx0j4y4K0P9speBI6/MbwyBxoH9v+iVGvWfFSOxzfWox3pjFlV+NFd62ZQTtgwoTXOe5QJbJYkyHcwWUw4GYwgvn+RShdRK9qaNC1TNMLHz9iPUoycBkRiJEavYjPvgEaur/mpNp+CTfgwKxGzERgGUssd5R6C6BrOg/9Lk+CGRfaIT7mZ9bQpyqTAaSeW+p+FxZzhN8Si4tLmKh1mLB1A4CePLZdRgjtQES6f2wdvUiptu/+AIq1fEGTIzYrVTe8CYYktkt4RhWcRVDdjfUnCJ88W6q0324d8n4F3Lu3SP2Hdbwu3jukTnGhKDSvwSJh4wJFMyV1fjvRUdC14ubYOTYkFX5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w6Dv8Qq1E4Mj8XIV4DUuGMFJg4Ug3/KHmO/8qVRgVYA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tFa3dH0kkYeVjWlukosRFncWpFqDMWDsKOBCX3R1EjICy/nAgCjA+ups/xaeDbhISLgZqO5JzzsCAZh8Y9Dmy7RGzbzRmcoVNUZDk0UjE8Ln6NbbvKNrTaO4mrTdrzd+Qub86mFWOueBqXO1SSanY8UF7+I5kmtHvwO1pUnU11vV04AzeUHyfaforGLt2ZKUNpZQexzMhX1ksxlTITRApDtAsNwOfMrFRsJydj7oOudvYHcuODgeBstrlpwa7bvBFamjBPYrOCehXodfy/MLvuT0F9cuj81Nr2XMNzJCcrf4fnNvKw/NOTmJazC7IkZL1QOjTQ5tPCEZzhsUhXXyzm6EclbBVjVEvvnYwnWBoMuz1vjCPabiX5098FilGcMqC6yqSkreED3/yswSy9Gt5QILYK7ln4/l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w6U52/NhxovnbBO5ArVGZ1pIJ4EKLGD8G854df6L00Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B4Kqi4Ikwq7AdLzUqgRztMJd+7cdllnFhGsJ5e2D4sIa0qwgtVdxIVtbZJ3Q4JE2gpV1wWFAmOwu0NQkBk1TYPUhdXNzWqsE0A7mWIgYP1ih/YLrpaMqJfO1RWiirQn7KIDXHja8nzcNn75/7VvXJnRfScAPeWlIX49Xan5fknk1Jsu5++GsLmSSRPGWrOq65Y8PfQ/WEsNRHTjL5H6p+0eOKh6JZg9EWOpgbmOxIgn6CLcQoMrOtKozAXs/BP3uyaImE6GH/BzyK9LLxAUXLoc0aVEmmVaoj5DqW+ujHMktd2t+mdmIFPvTjNGY0CWHSiQeKSYDx6e5dqUJ2uV/Ay+AFLzjGcKyMCJdWGcuhT99sDDGz4delUV2uJ6m0taQDxSyeHCQNMSbf0HXwaANALKjWIqI5S0/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w7PzEhB3Eyz5nlFAWjmMUrRMCprk1AYzQunuC213vto", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FIvO90FXknxNdAHEAPLOkQNcVTO5R41YfB8SUUgTZj+SBvNi9kr2Efb1JMFsximcWMnuCZw6M7FOUKdUK2OEDk5xc74gV45riHJo8lkdC8KCsybbwGAZDiHM96iVVU09P/qgy6oDMST1MLqIKjQxyNC2LwF4P0oYVtquOVY++rPi0oddjRr7d7Y7aDsw9NuIpw1YwqdCkGLe/ik6SbVnlFW6kYXvkXMxQCuc9NV8y/PKZjGHeSEmQys52Hr5M37oFkZuzlYLj+zuhTDR772gemgCADXNiubqxk+MxqKgV/JVBvOsIcZarAC+rag9Il2p9OybzGouw21/CwJx2rgtAf+COnK+eEcSy73ZPG86pfV61u0fng9IQFoBu9zqYGn3J/T5nXzvXA8uHtHetA5oRtFJ4oa35BmJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "w8jfzy+6dlIKyuscFOY35hgVhU3g7xMhLeEErlXYmWM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s51DH4junUZD0W+jbCaXz0HU30Qsm6AxwDxTKuUbj858a/VviDHKmRPE+vTjppgpDRm5WtFuiz/liUjPB54oYcEfDRDoPrOjSz3yliENs6rJZEnAz/+VmIpKSQvLYXwvspGRCDL7cM7GWqs3WXRE/Sl0NilqDGQKDabEXOog731Nf7r3cmDIIiJv6YQcBDj6JdPF31v8v7UO7ZhOVUNj/4K1fBrXkvwr/V/YxVElJa1/1Q3RMQdtgJ/RP78+t0ntxzfxiUvnpBo/nYZk6K7WpcVwa5EkHmV4Ht/CWLkDT+nCKsbRq+CDEsz4LBRVl1blv/irwVMTlEYPDOnnz84CiEn5xPCiFOiL8g96/eZU6RB5j1qH8dvUsu7BW7tSRmAFkk+/kaGdI9sPw24N5im38Kv27aPLyd5Q", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wBZ9vKl6AMf/grm6Qi/pIMbsYMhX+c8DsPgktir+vZk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0WS0v5cVSZ+b/u7ajrNsP7lxvMMg/TvtHHD9S0J7wYi6GDvgw2yAl6919LbEbavbxtpfAOpEw4OJ+CpluII8dbVeTueBIjQfX8leCsGWMe7LEQBWTBKoSexlQJpuxYszIftPb7a30WHFyagfIJK4G0rA8FFD0UR23WMiTb9siemqGOwCOKMUa6CmF1/6wQhewy8h/vY9t6TF4CrNMgGdqi9wKnt0arEXlm5h/q5qEEE/vH6HnFCPQKlMIjt8V4JxTEl2zhzHdz505iWZw25gc/rvC5eIwnPjhvsDSAKNNGsXq8t0B0coIngXHBnE3Q0RSZCRnXy2EYdvtHUsPXWjWZHE5l+3WAGQTzJZmnoaPUvVVXTIHYajXoJJzc29gRQQUUfy/vsan6ESuXt/DG0R5wP712ctgkZN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wE+AnF/uS1c1fl1/137g9NMA3vaRd2anUwM1h0rxiIo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JigRdLOtagv22H/EdC3sg4cvccnXykPDfE8z6aXQalxw3ltT1wPgL0x7Boyi+ER9H51KehqlOlwsEx2c/mKIvXip1ygj2zXthaVQPQQmC9+F4rre2io6mEG0VXHcs7Hw99F0zwJA2qx9zqbxTrwBIweWq8U2AdWOsugZaqBBITB5HgbXTXl6T3H6OzVoByFqYJUzJVZusBt/49DKVcxNV97MU+2YwtUK7bRq2EV9SEd/huBZktSdA+DhbGOlkdX+RUBKljHRtgyzlxCGeeK8OtzishnkiuOyXkvkn9xPpW9TxeuygGBqexuJ6HPKIYOylQjTTACREWTCSkMqm78zud33pxefEIr7FYKzj9hueZndLQhtDlf3wrDm6c1+2Srs9/S018uDTcAp6NjVRjL83Y70X6XETJM8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wE58SdpfTNcFc9yhxeh1ZhYtIGJ45neScj3eY6SVUjc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jnhdYT4IRWerDtJ7+VGSy5WUXgdSAQFqTCXRhACGM8XYQB/Qs9dAIXhJu5gSmVzHwMhW4rCdxqgZH/jNCtt9gI0OQdqWYhEFsh+kpFmBkgMZ8FcZSKVX76kU5szZt4QSIIrZiRhjlMyQOo1iSlMt/SmIuPAJlETZmcMgh3QmueEn41+6/LslqG63W836kvYTI2r9eXJ5A4saXa3VedFQHDvIen4INCQCqudfnHUj8EBfLUZ9WuQBD/IwrrNOBG59X3rU/xAjtbsbkBF73uxW6btObKCWpMVZ1gPN3VqxsSeM0VQttY2P7KOuwCSBT4/TjgI+orwR9pLJvyrAKQXOKxQLULgRu4ZFX/KykLUGR6tVzPTuH63nENNCShCAzqD5/ZMO/qDVlLSsKiXHe5oEHwmO3ucb7bPZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wEKNEoYM2/zqFOiQ2rVI7BehdZRBNjkQ+4/O7p4n1xE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gVfObLmeZdf5dZa92a2O1fdcOdPRg/vaPOyMsbD/EFkWmcUmoQIWL/CQZ4Q99yT9n7Sp/5JjwAPAwt+TXkhVtlgJtIIjUun/VTU+AP9g8hB+iL4UOeUnZ02UmdcXXZDcSZwANvPNomgF2jtaAasFTCZJlh3JSP2bVayiIFUguDOzeGj5DXhS4JwEH/tKyFN3A6YZDi6T6dbbhI5f8jAhtkYM21hmLM1kNShPYsPKzhIx87JHbJjwqcowGVRwQvsClggwtJNjQGGYdKYT1xU7OGs9fCUZK7LqtACgkqseCtsY2F/3IGb6tLmrLcWvKvmHcCc+DSHKV+H7rvJRpVBsO77Rz+peE3YyREeDB0GdwPtYppybK+m9FJUqFCNauuGScj4aTeQrQVenPLQ2QcnoLq4Qe1A97Nds", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wEfNI2K2wbX+Rx2PZL70u/07DEi0z4iBTPAJAD+68v8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vF0ob6ATuasRE6p4eqSflrdane+7bfgtRYjJWL/rwzl4U2gjnyQ7Gtb29qnp5rSlPP9d5pb0ADu5YBMBSSU6Z5J7wqQoI6v15Z9VFormaz3kurzSWLjhSvjGqAMKUEes0qWw5Ghi8rHYSacTyXlw1LSqvLyRESaMyr9U8zyr8yb6gNkTtRxyapRolB2+Lr9kITEMQZoivSU5IVSRldpBur7YQXJB9P4W9bg/itMzxdvAmLtg3ELzLxbtjjR4LCWNIdfvv+G27l+WcrRZukbtlr/83dkRhfWELccAz8sGKBnIvj897e9GSJfapY+5nlAOMjmu9OxIW52zGuch93h5Js/svot2Ahp5SyYNZ0UlVAQyupTVqmfNw77ESrTlL2Ir8YyrLpHBzN6F0c2F7wpkqq8nCtlnfglP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wFbEeA+/RQl98DO+RcsgAF3KcvE70c/cFbs2H4WhJKE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WA0rC8YgzaHfB5scDbossWer6yMcKa508GYK0410z6K8fFJgKgCxHEx8VVokDaxcQxjAcQ7qTk+PS2nxmOtRrhKDpoRHbvjBr9iiDDUvA9dYp0NHNH714yh7t8dWM9sm70xtIEdi2HXT3QRhoPIrf7fhxuSAdFWVjMiqB4xnIHjKVA+tBgMCTTEODMBFavH4FWehax0E65Ezu9oYvBC5si5688kV8FeyvlL1Mcxzb0CNXL9M31E2QiLmi7ycXFlEeiVwWXskVZZIQnsil+0ndhu+voNyVo3GeJ5bZHLi0ty215Rab1ymTyqo9kZZvZ6vj+sLfwpYp5NUOp/z4wZq2kpdnV6nzKpJ527WSYHkBcpEPjWrLKF8nyibuC2mmWEfuBuy1LzJkL+oNxBsuDp6okoTtkNZlArt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wFlfosHpyEKTklNDGiJyhkhTmpb9VluyrkBM0upEt6A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "inwEdAY1wPX77qNF9tzj31T4fCXvez0iQ4j6MBKhrxmUQdZxB27m/7QwPx+NgGnprA3iVUM17bXFHwOdmUlVEV9b6cnr/MnwK3a/FLLBSq+5KoutJm7gbxbMnUHOZYnZIgCvBHQjqeY0WyrY88OIC5anvXkj1Jv08W30JdhSmHvAf2H+KLu98kk9RbCnujIrkC+K1Wr+lSP2GNU+VUK1ZiPibAovEivuRH4CXxIC/sWsAj3dEINC5pRE+syCEixs3alUSL6wUKOb2muO7tzP/Z6S26d2p7EzQ/tiIeRib7c4HMTN9bjkbTf3O9HiuaHDEBaSisMzVyDFRvvEFhLJQz9w72FuMqMBuCvqq2VInX5K+aZHJziFIGrBY7sLLF2Q1K4CuNogIoRAs0pIa7ap+P30ZTQw3NMm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wH0JWTfz6S5tdqAuRu48hyM3adxyiBIRbr5aXqNwlkY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m38HURLlZB1OT4IXCcUfvoOE7hfORYTvI2oGpTrtx6kgz46p7RTHBWjzfWz53sWrfHSyjH9nQPutO77JfrVBxJ3XGsUkioUXxIxN+BPxcHqwZoOq5HWx4VVvCMkmm723tiGdDP2e2GcImfCT4nNBEybphwuHOKAtIBw9xOysG2RwnSoqDd4upCJ1BfdpVAlKWf63ojHhdh+9+COgdDgNpWIQogHbl4AEvpOhV94+q2n9jk3xOkLXWiADh1zsKsE1AVscNfOlKHitQHR00QecyjpkVT3jRvX8gd9DPbqSdHQ7F/GPChz0Qe/faNmPk5V6Kom8UIY0V6DsHbKtEcwnT/HFDFrllwOh1uTkXLmFGUajzEGu/P9o7wb02Q/FlHgtnXVoapjLIWBl8u3PzNm8kY9PXpBLZkT0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wIivBYyCO6mXAkkHftsOs7oeLbis26VihwddZ+kZM2Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QZdRb9RyOcxvrAqP443ImbzCs2Gv1qzdbXUkChbBEBOLMn0D5mxXOM0vj0jSP4ubk3SsdVj/qr5a/HS0o7FtHnFXMJ2OMb3+gnF5G8Vob4KEJG9E3CyhdRwWdrWNbLcWF1Yi4p0+Q/Gj38dzLLVvfwnWU0sA1+hvC0gCjFxuz0F9nq/aluoLlyhBH5nkVCHlcGfN5AAlKpBFjRr4uyArxaEcPqOZzLWRcjLmGe3xtw9NFci6VOmjgtLPVWJypPmIMcdXxFZ6HoVdBt6dz4/T0r5JI8Cz9ezc/RSdz+1CMiLy6cuLLPrDNOKenhR2iSaphqy4aVF9L9LDAbiehw7kWn6+hqPnzyMxKACVsOEfE7D7UQOR0MfxpErmTDW+yWmzV6b0eUY/vaL5cEs2SsVPVJa69BpGbOZN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wKHLFLwWZasw1Qvbkmc0BUVo54iQPLCo1XKb0cORW0M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WHgojUFeodY72WRw7iIDFJiAkyULpYEBtjceEuK8w+5Ii6FkWlmc68zp9MUTveOdE/gc2c5fCjb1lEoNZ5UJcKV0pAz/zHhzoHEynGSkLNoa4Kp1MDuvb9QQSoEDHlRD/qOoVoSeUjDPHvz9XIspZb6v6KKPKJNBpleCxX9KDjSIn8BXBHLIF7rH8N/sf3ok56oCoFVCQIuSkFreY2s744SJJF97VD7vz/bIpAUCxbjehxmU2oltdhCZ++WdJEfAz/dRYPr/pA3L5ZbnmO8mI5R4v4yhoDRZTXFoYruSiNoiNKLipPjHU1WZlWvpk/AlSEKtGDaq08MlaMxa3XqZi91oitRe4dGmBfPwFJHkfcXmSpkhM0JYaa2aVxbKuzz2xfTFdi4ymaiCy6IXV0eDy5tgZiwxcbjP", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wM3btfyR+Wssf/6a/weJmkAI9xedtZUiO3FaxlyAA+0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SoPIOBUFfHJ7UbTvl1OqKJUy4krC8Wfgd2S7atet7zeTqfV6o3lRTHLaUGR9G36AV4IwW0roOZO7P3ZFYbZAN1BcP2iEQExV6EB8eZ1WIG5k0+dsS+PMc7uG2Fpcjrs35YqvzpY/tkHCCJ3MbrIgmwr+rhlWyYDuLCRUySQzgQ31R0ObV/yCVlK3pign8mwGDBb69PzbIt6KxZXCshSeRmOYZ8UkiXlfIPqv9JhEZCIbzFqAfHyfqYu/C5p1Zrw7zIYEfqy3KkTTIueP2JjYdqpiSGu1IGzmmDfrwKJ8Tul3gEBwlFklsJsIN2vm04jUbhZBJ5TkWQjlDYHwQFPHWdLBmsGcnQqaY3tV4vxksxIbY5bQkrgT7Nx3rnhjbWUKEOY4AK6b18ntgGPZMTORkreiMpmN5fXE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wMqrawBfTCjjBGSXJXuLzx7OH59PydODym66uVL+pxE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xYnfBvZBBXNmjVtl3DHnVZ/QXatvPg7Xh9/VPE2znBBdtLmcXr4iZ/Y68mUVB7tpo2/zrJ7nRwLHDZ1Uu0PL57Tr95+kTlMzxPJXzJc/yEAQNb6ALKjprRe1bjjqeixGPFOvgcDnckkAad+X7oBblQR58GNRk0qXQPlDEf5dFj2CCyCZFSi2Kny+SRH8pwvBY7mp0vxFv3h57xwjY96On6DjonZSwHDxlVT5HGNUt9aK2wpgUK+do9cJ5YzhsrEldgck8YJdDW+gcpyAQ0Mjzv0IKMUghbFkt9xufhmW/LlCnmFC+EqRg4NNzAQyt5OU6ltErdPYuH/2bV0X6xqO0jcEamK9g+QDPM+dLonYeO3Mu+mO/NZwuwFjfMqbgGYaf+uUenHMcWoFIfwbtB9Ybd1UjESJJGvV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wQgKo9BmVGt48FzKLo4MjOqBWRXPBIOtWWOSfvZfyfQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8kuOmHgrIzxNC3uQdJwZ5jdy9ZplX3qOXFfWXNODtcENNCGh/8lZQqvlCAsM0s1Ny3vlRt2VkMfmIssFxtoVDF9tSI6v5GApERrBDQ27RP4/IUdb4bL8pr7wotdbI6WzHndVH/apLxRSETfSzd9e61XdcFaW/dn+1HgUtuTZzD+Ep5MVRlfIl65YGcwsAflPqbmDbCF8wSnJ6ZjJzzfp2mK8CIe6m8u0dpEfsJ4UGHmQdS9RB8C9LpQ4FhMvNHy3zG0482x24sBFCDAHHxsZcCBu8SwXXI8nSeO8Lw2VT/+eAFQXdHEEBQofqHcTPiG/TMMiWaXZMjZ71eEDHSjXJtbfUg9pPzWbqSh0COwfvack1b3YbKeXs5oOEPaE4RepgKxzVX/cfCDC6nledIF+oe9qurO1H9t9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wRIS+Ui1njx1OZY9hBWEddjHplH4bDJyQ4u2F8q/yhY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zd4eAmOxYmnAFHcqEsXkzneGby5+qKL/1UQ8lMZFjeym3qTIypEYfGAad6Rl0h6fr3I+RSK4GaXrBQtUblm/q9NCxrvf5LHLbj7iQNO1vSz+UXRGWrXkAm0ZbnEcsyE1ABMiS66tlggInVTpqKg/Iqjwpgaoxxg0l0ajy9LdKqKNC1+Z4HZCcd45WYP4nqKUVOY0C01nL/unB+E16vggIuECav9vRZEXjenA92cTPbj5uuf5NxpYe0BSIKNIxcAKHRXI05ReadONNNo4ekNhnmMUh6ikua4hG4xGntPVsulTRtohMEiDzQi6pkuOxeL6Uma+Tsm0AqJZlrrWz0HBNQGtkNvpv0CCmwvLHnuxHj1pYLlNjzGf889p9JQ57OrclaF36TUS7JMDPlpBHxUrrkX1RDck70vl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wTs/9vcbl4OPd0UNiQ0vIcg6AbpRZEqGnExpUH6T/OU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6H2GROxNnK6u3ORTEtc1+9n6jziZnDdWoK2/GUVZepfruoUCgvIfjSNbE3jlOqir5hPtW6bY7ERGkDMIIArESrecJvr5weq9LE9MX7Ach8xD4a+D+TQaTyvoR2ZWM6Bo/EfQtINb/Nx3bGK2RlMiK4agYWxeFRDEGeztgYicQE6PULSNsAI7cdiZwebMiA0Vr+k09E5FTtCwoRSrG+xCobDF4iOrpENs1viUIWnihCaj1IwIJiBs0R5LLTC1dX5JBm7+uoH1bCza9N2a6WOwCu8i3Yn6GuBzW3bYt7y69Vx7hllq7oAtq0WHRYelLCbdGu0NTXUUa2Z2q43T/vYQ0LDp+R+QbYalzxp0pgkqBWC9sG+DX2jJwI8bsgpPHuUK7AZZPCl5kgc0k4L4t9byoxE9YBcDANvg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wTyvgBeR2Vz0h39rVoQOSFRTMuze1dgcJLn/Q7TusKo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KiE69V8Z8qDnwpLGyqUs0dCu95f1HF+6+c5DsZjprgexiZE4HJyGH+ETOIjljFtsDFxFpV8RWXFaNff79xyuXxlarba+vYqe4zFKJqaQs73mJ4Y2CmSxg0wvDGuXe7bvwd0f6IUN11dDDYUxWazZOuwS+l8XhR3Utjyu5M3fZjgrQ8mGLO21Mci7dF/vdu9N/GFcLmrGS87Sehe84LkofWlIefFr7IS9/d40/LyxAYFqoalc+8pVsLFv98AGEC0K92kLWc0FYCpeCsFcgG1LBpBOIexHW5wx6NF7yS/pywAJs3rYkX42CPQlVut0Ons12YXF1Unj28V/1ni7bB8vP3FpD0G10xOZmyU+UPvsIcchJWqq5LaXmjLPa5zEdmMIa3HPVIFEAIgmw/yFjpsExpI0tMhRiuY5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wUpHl9G5f4g7cLTHDpRaTt096cJTBbF8EpRIspcGPkE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NAmpnaD4xNA3EhbkR14KwhehMmqLaNSIBzKzDTULsoBQwMCT8YSW67/hGT7wADySuPMV0hX+qlof0I5vMh/iqgthe7D/41gs1/3vphzjGFXAIQDHVkF9gEvfskuI+53pmeuezoRACELSW1ClmvGjK3XzCfLxzDUshGzROY8xrsMhS2Mdk2Yzc8At9OGJMNcXv0/qqp/ZVNf7S0lY84U4SJbWP2lYZ0uf7GWQ4qXWM6kpxM8IaI1Ktp0wxcVLZhuguKyAtYSOJ8Mm6lxMt/yr5zBSRLUtT+Af20lHfb+c4D746myCDaDJquqPo/i8pZKDmkzINWQtGiviq26Y0nCh/SYGhBoMuwbTAeiK48pvRhWQHO8hv1Yzxb6vepXkse5nQ47pgfwzztczWNLCXJvR1EPDA/Or4obn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wV3LB93tGpsNUTEEIenMlhomRjR9zBaTEQ2PIuJo+Ok", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Tk8679DUhzGxn8fLAU6rOuncCMfG3HlrDnpnikZD1UpPi9eXmBKw/wHzygVuQqMRRdYsV1ZiJAvdKTEmRVsWUnt6Ugbg880C39jjUYHyXWib+jAlPDqViBkdVVm9NRYAYx4YE/VQMQdUo+Z9pQVr4f/NN4NY4yjAaacCBcqZeMbhKGXK5rc8Zm4EG4I+gHIGcfAGV0NYx5aFCq7rhEqaF7OjjzY3s/BkGebTNcbcsw1K3DXSH9FdXmGnNLZASVlMqWfIQd6Zcu3uDvmex0dPWOl96iJ4qQvXIvFOmE3arx3SjgSyfOQnFUIrvE4v3ci5oAJcZNWKcfuie869JTSGXih2Gdau8OEvfGYp12WZHkkBsp6W3T3rKj6naL7xe3SX4+7QxrGTfnuh0sjYNkKzoYPxk1qMFBuS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wVFMPEFF9B43elV8dbM7+oU7Uq56WmQGS6KryhAdbeE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0lul7Q6QKbAIqtSEw6qkRsV2Rf2Bpfis4P64dpo9mlwJ+DX2X7Vkp7lcp+8wAYIkQl5PCcW6Pt3mWI0fjMF4S/A0kqYad0aUEPgXxQ8A5ahdYzYzNwqOom9uBD9VMe//6gvMDY6kLRBvykn+JnSkpnh8G4nSZkSsH0G+/YWwqezHJYxwOHym2PPAgdc5nxwwYc0FnYC839uIwKP0N6XoQ+Pt+izCe4DGRvOnvvhUaG+priuw3AEUXPBQAQspIexuliO5vCsZl+onhIjeD6iVQFFh6mdL7q1wUdaKY/BDJ1GtaZyc9pqBy/xRNK755Dpc3L1ypVBUUc9WO7uElO7GMu/KG/sU5IuqCKfj1Ek027ZR+hNCj4f4ucsvPL7MAQUQclPzfKIZaDx0dyTwNGUdSYKQDcPMvS2d", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wVRQ24Vnnfd4rOz97g7k1s+NlITYPzaK4cvEc7CPs3w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ncymotCGXF4JVxCImz3q7UZx70H7RbAmwbNfn+MU14VKbwXtsoxNrBsXDoZfWqxnu/1Udr1AUutCC14javvY5NAmUM21qaAtUK5LQ3JrWQ3Lglvu/CpGuUyAjRqI28skAk7bz/v5T6ZL0/RVUdzmPwkrtPboin09IkjPnibJ5q74rWbB7MiDIX/xYiXSChJ/hXO3QvbaQXeBBThoHzFOX3tQsvGIKnlQ1tRhXFhU4VCzYJw26SMqFX2fw2hRUy9UuaypHZhA2n9BoDuofA9cVaOfFj5UYT9RLgc+fnpuLeOkjbLLeCwgKrvohan8V01/9b662rOldYgRCwCSDn/YcCBU/NM4B5Gz+nIDHZTohI8tP3tAWnAhfPTxPNVsvF1UwQEus5NNGLizz00rgtXX2hIyLglyokTe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wVX0rMDIcawtRfnZ4YJXJeW6GxtSi5lq9JAvFrNCrSg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9QgeKrGOTniDOXZO24x4D7s24It0+qOIA0hYVSaw6FagfdH9pNRCPfPz9+nD7t88VkA4qhrxy5B5sVR0Te4D6YuBz6aXmYYjVFYfBKGjN/Y2f7LH8Hy8ocVv+OSVoB/AbxWEDo5rKUh9twBwVqaxYm8Y/rmgtKo6N4l5ZQJXkcvHKsnun2V5Ygi+lNb0ga1PQ+o7wuHpEvcXzToUba7/g0vDzAHUjCWHWiu6ZDY8G+5VMGomuA4PYj2psA25WTtjrnVK3XYWqlWP3j2A7Q0S1tMKiLjcUqyDsV2rmL1t/rJixYZ3FRw+qyh08Vj5IJCIGK99myRQKsmBfNH/LodRpByN1dQmGWa++clOrC2PHs14H+HhxFabVwYuP68XeNtI8M5u+G/+ehI8k8P1sYUpe6sc1LZ0r5IH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wXN8ch4nq9Q8w7axVE3PUhVyoPtsK/eat9v0IkKISGA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "USZLud49EvCTnp2hKVpx6xY2FwMRZwu1YWnGDr3F2XAcOozvDNTPmGn9Yi+RP2f2I/b1lbMmflvkMmUrG0EOzu/CFdfBcm3W39jSGFcSgA4sfsIvobr8ryCfeGZQkOij85OOUrPXuTauxtQp8vnHuvQNInqGd2lm2ZxjLX7BDj59/jNGot/jD2wcpOgqdwX5p85hIw5oiL491wCKyw13DKYUlEiBtidvvjuX+oTFqgZeQlO0Om/ygRubpYW6eZkZpUK/x5CNGA559OM9dDD47RF4ZJNpy9MhbcHi449LQwKHvvQzS45EKYcSnWDY6WTlUOc6fa2/TXh2deWPJUqB1ITXM9J7aGUvmxFbdbPeD2Cfv98D6GnA0NZc/Zuthnk5DdyWCpV82Aa7Rv4MwQ3A8juiOrAM1U+S", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wZ/moN4YTz/niwsJwuxP/CF16XvqnKhQPpguJOUlIdg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dhCkioe6ALYAAo2H+7rz7x4XwbsIpQp1majiwh4dHFivSy6Vfscyu8tPw9ta7mlwqn7dkWbpth1T2l30l1PHcp1tnKK9Qd8DmVN4yWtSnhPNGY0Zp4j306YIFB/i9NkZEFWJScHPv/m0B6exOFAMm7NN+krmft3CD6+Uj2msMCfmozo4t9R0PU/QhC390B1jomO0SHVru3+oTtvrrjKCwCF0r3cwEI6+OIB8xSrZ7Jdqp5RTnZDjc/fGf/nKbxMb/w3a3OGRk2kIll63Vz48bfUOTy/1lNXaqBP6L24vsgpjtr4bRBHXL/SjLmGcI9asgZRQpwdIemd3Lb/qOO26HLtuFNZo4m3M2wG+vcdj04Wjtzgs7qmi9aSrswdGUr9BTfetnD7D3p9TVF9QSdSHwM9V08HhaTRQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wZEBSEcK67E3JPtY7AFzetCE1lMbTOwaSiirkcE1Y64", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YuE16rSOhVTPEi7oWERXNVioyzDo3tDhaJkAU8ihlIZL8xDc7EcX6KTgAq9pKSpK/d3FHcjTvRgpGwQoWS9EPgZsVb/OX+TOh4SaBN5Jb5ekjiI9mgnPPJfr5UGSRslGicGcxG8oVXOPAtuj/HQpz7PRxYY2MY5fexyg0tS4VkBW5Hyg7UfTtets3irybz73F47BOHDYG7JxMx6zuNAxPsGUOrwAGgnFoe2NHp30Jt/viTb1r3p28AJVaWJpPMG98cg3oy75QsFa872tIqM5xAiabkUHDu21VlSvYYAXY+0G4pDbAjrXf+GzH0e3Tyhq85l2TelFa5DWQSiYTNuK8pJIdo29i72eqyTX/Yw4lG3lw4w/y+px6F6I6OeRNkRsu4SSxzvzA02ofwCbg1AXdXBf/pEvboyi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "waJXYJam3w2BoVIrCDehKyqZt+XBdvjEY382DR4C2Fg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "N46SSTzy968etXBEeMVUgfJqvOJuY1b2E+s2PQGcBarW1/QoIxfzD7ldMRxQ2KP2YofKx7iu5gePb7/jorESewMsP+HchLUeimEIobZDRvHX08IZmL54Rm4nz2F3PEWtI0sheruv5MkIO9OFdVZltTPBQ4yJpMY4DQ9yJdMLNx6avKnDikT4V4ZlTwaGlGrASacxHA6mfg+yJC40WtO7N9HycLERhyFaGXbdfcDAzk6rq+PAY/Qlbzc8IXe9Q/Vo87z/tOBD5z8CUCCv/7ed9gwoji4XOw2iE+L2PF3LGDCpdK9LW0X1pSzg+MQWPGdXNjT3vroqc7EKG5doXlXj4T9OQAv5dEM/hjTiYyiQLfyk3UyTphgPyknAEtcMpcSTOHXJv+73PjgnfRmM9n+gyr41t7tRnF1a", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "waLSpwanbxx3r6ynu4LvFwW+XWQFGYwJNjw8rELe7Gs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "d5gkgl3XSPcTzufN9r06/uCgqvecT81Q/LEfErxbm2qeYhW2z3eMLbaSqgrR4f8SFxU6UzT4LGFFT9nApxZwVD+BYUvfrZxMD2LaRprIU4LqpZGw9oBFqXT6ufoXAlHd0Eg8AqTruyd2oin7k6gqTHPyXDWG8U3zAsmlB/zIBIjpy1INSclem2Sparyp4N90ZOmzsZQEeRqHW6G6+JofAd+ke2PpmYnXhR2ynfGNGuDPfG+nrnOlHCD0ISslZyGt3Zp7LwXfsPbiiD1Ccpd137Y6HprHNpa7+M28tonciypncH70gxJ6lmYQPWUilo5gNuQ9OAI3adihdS2IJ8EdI/BBpDFww3zxTiOSwwMm+L9K3AkC9m3/HVEj0ppK/XfKDFyL3xd5Td63HsZfUgGH1n7pG+HBo/rR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wbBxvy/gve0pD6WIEqmBMqfVoWLXMEt+6XrAseBrK2Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B09oRMv0l2vQtF3EIjk5Oy0U3T0S5fDSXxtR1uOJarXHCA/M5KKc8DBDvQ3DuWieDfGxkDXx4d4sB+uUR2fya99eRPer5Z9IN6LcksHOFNx76+xU4BZtcIrNQ0mgQqQNAm+n9YGkcQMdB9Xw7L4MScGQ2K4mEqcHW+b77Ip776k5Q7ZXtqDDHl0qf4tDPBXBWL397otfTBdeFzICn5Z19iAivB0FrCFrmgnYJVWDSKOaWGRiN8sZqNEhTlPkJ8fpO6GvyJzMbuMDWeNw6WZkUhzLx8WCfCuyoLjsBX+JS1fqeJNSLLWMHtbL5qEsaTnmWNTpqz+eyf8yMaT4HieB8dfENCjhLdRROn3fbSPry3eo8DlkbhtFb6XCZ4is1NLoiiHVsMErMVhckQLN5MMxEzrjJTrf+d8i", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wbmvXpFeaQwAAzbcejVOvh2wVOq6Z8HRXriz/SLJaVc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ruwk4vjD3gQpJenN1TgiGG394nlVcO4lu8rk4dEi8Mqs2Ue8bMO0ELSwVKmtch/0+EZTioq/6yJTLXGq/liqK6zw1nTzxbN8jA5brFv7lrUfRbs+ikat3LSHe9a6yQuIl+D2Zojo1pAx74qMvrRUjvmhjI1Z5RGhRJuL5OZee+2dvPjR2pSiFTAfs5FOGlKbWrddsoGyEA1N+E0C3HOqHPu2ERAfwV2RvoYCahp8D4e0qqBx58zWHa1lKyegLSSIMXjEbNXKKHxs3sRVb8os1zzUprV93VyersZEvW4i8Sj1hiyHODkXrhJBuCwRYo97q7IQHQjNkn+S5LjX/pUENDCa9d6JDgY7UM4TQkU4yr/apGoXWn67WVx9RZHy/AdVwIk2CIeYi+/fP8o7Hg6g5DeuoEZQnOL+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wbr+9XpDyplSlIpcuRkRwoaIRVYqpCahs2QaKP6QKso", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7NoM2DT865CvuHxjBtq7La9NFFn8dun0GS+aP6eN5zrVKuO8MWe6ZIPqj8RZgjy+PAvhrGLqCmgfhAATmnN3xLeL8F+ClUpCSLKilHx83BOqeLFPf+RAFPIJQdOB2zF9OatX0vwrREfOOj7kw0pwm7iLoEuJ+lzqlMN+DHlMH3I+pqBC0o3WLGUHLGvAQDK7/NqpghY8a5qCOe22uSB/gGhSJbOq5957/Ds38Hba4xmKrXIge6Gnnh6VMGb/j5a1A4n+lhv76Cl2QuIuUD0RkMkcVc76yMg1jn2qA++LwMpeD2CPVbgmCAzrV9Adh8qF3INksgeePrjXpctbISDCINxUOEuIoRDlXfsRLi2p1FHf7CYcNXMhJLsAqILdkvXEUPjBKcDmdEcoU94JNP594cGeGlV6v/GI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wc+LQuF2kIzj2eMbiw1SjjNZioosr2Qx4nIWcd4cObQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Lrxq0KnJUi/GMLKESAWopc39j5OkUtEYGNhA4dLjIlWsymwT3sxG/zDPL6hdd+GJa/QcnvGv+gMw3gOonEMuNUJFXFFuh4eYiBT1RHkqp3+AamVPosTfn7xw80f+Q46vG78dJLv5qUX1+CVxU20Q3cRKAlGUGyRlQ6z8hOeqTmPLxhYeWNwp4zwnTlCaLdrvYf6jHvbNT7RkTner5lvKe/dhPaa93uK4QsHNKGqZagfxwLcEPzSVKX77IKg/qzEXjK1/PyGuS1ACqkQknIfe0F3IA79hIFsGk8L7FhxzpygSL4c5S+lie24vEXtli8skV8msWCHFfPgwdseD/2npaHejFWY4ZAsb1cNsbOFKm0xz3kFW9ZOqqufi8ERAzMS4Bei+JwsWcIq5vesjnMr/AlZAr4bnIqag", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wdoio+JPHgbhh1IQrafbdlEYZkSdbJUZ2nf7Az+SZno", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f1AJEgFTitwSBWoSYqHLz+nxsFK+Rf4BfjBowBNjM54zaR4YrcEuo540cyrMHSXUPRkFX5lAy8mzK7LMRDNgO9e2YgTuyROUB3E1AXRZ3aizKFXPJZUr3+VKruvRK0y+WCejaAfnH8XX+Xcfv4Qy9kmbgbRXV9opXFv74LoRy3ZDJe6sWsuNEo/1ORBHqYYhAf6iRHlFJFfcV/3tE+PnyiqKTe/sB8Wv842LtC/t8U/RelZg2aiZKnF46G+I2V6Usx5Yu9fdnz+QGa3ZO7fFIKiLnAxCdXVI+dXwr+NsLGp8WgKKjUFxQjQdWz3hyZ5QexOcxCLwPsEyPAq9IZrNB9GgnEYzb2RvUP+zH6hwAGTmcon1Q+kRz5Gl4+C+bwEImfeYnDwO47794ukWUSVayVo4ITPW7MWD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wesg+O7qN8R3CAOaMyG4wV6ubgS9fsWEf01NkIWJLlc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CdX2FBXlTXYqYyRE1/IBvrB/19Ad3FyKsuPwqPDlYx5Vav7otaanpasF/nh5ltgFZKItvL+nq7rdQUJehL8cBytYSbsWWhxb0Bd0xGKCVfZYFSxeK7rI0NsyEOiSlxbJPc4AMt9pd0gwxPBtrpBxY+iXeqn+gSGdkS070vlzJu2zrMLlm45WIkuiZtoUQuEqeeODvhViA+MUSMdOeJGvJNdbzwBKdftZJXGeujBTZPZSm5NpSGJ+6fmt8BitF7dRagONBmHMwlFyeu9OGZ57jMavSDOY2kTFQ0Udo26VfoGmUmhHW+DizUo7EwrfL9cnS6ecWkWQN9uByh9IEhoMJVgAybS4zezEojQTbiNe7tWwsxrSFRe99CsUQSuc2gmA1NQqrUABGsB0oCSo03ibor7isTTN2Cwb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wfCtMcrLKFX0V9urP0Ym+rJ/CHbAwATA9Tr/30heQnU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0bzsVbhV9Eue+AeLHqGDc84aPZyunKFQU1pLJomzJIyBJwVCjAwgf25tg5HSBBdkp86NPL6AkRX9YXY0b/1oCXqVJrFo1+k0gxtIcIlGos5FnwrMr+3xeDCXAXMenHFLNDh6EWSEaGF6buWVWp734ADUF3RQl4ZsfykVR7XXGcvl5UVoTZoq7oXY/pjO4QvXRkTH1RmbyktyiOnqjfPwjrRwiPtNgOihz5qE4o0ta9ZoBvk3D6rf8t4d5Zall3Pf04z1Q4ydni2Nk6Id4Fmhlnh8mLC+qA3MNhgu9yLUuEkNp8KXyFmDcGBqaF8flPGPWS/+b2jgi9g1rKUykLRY8IkkeyEZXKCZrTU41Sh42ma/vcx/39Ukm80KLLly+HyvFDly4nBYZzEFgjFYcMHESDE6+nOC3bzg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wgOSoGFAOecu4d+kAXBThExWTLpYYB9JzqpukzCrECs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hqxxdZL1NnfdXEP2x9JtkC1xuAo1jbZI8ajjNfRwW/s6u5RDnYNKdgRRkzoqsd04HvOH8gK0g/9uLv7JPWfOqTcY3Xw5Jg28wIydGlGTxSxelOY7oZlp8reGe9+IzFcWPYgc3joK9Dw7Dq6wroKMRvkRzk7vBgNEdYTe81FzNVqDoWmNmO/7Jhr+os3vZBESPpG60biY4oypt8ZWPGA+W+MBEKuN3S1RqIj54uXvw7D5FSuJdv8bVmgVI2j2fSo50KiHz+Rp1bX5fBSZCXONySN5RLH2SFJUEMz1icWHZQtdHVr+xd1DrN0NLDeFEZ6NyQpKwnBPKrIX8s8uHJ8ezkLOPNHLjM6S+QZQzWXM0l818TMm19xm6S3BNZfpiGjcFd6h08PxbNAaA+L5B8KQuyBxvC9Boxlp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wgWhtUIe7sGo6eWPAF2tVIiXjXBHPbszFTsIig1vOxc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VmQARg0vYNZeH2ONUmRAt1CeE9C9EPZG6W1JLojPSyW3WRjBGTISwglRsqBD1lHlPzisV6nAcWKpcC4SkKcf8xfAsPUeLiPKrBwUOF2DToAsoeDMhYC0u3hIcVBOn2AXvi+ITDwnnyrv4DlEoU+/5kkqGmWY6955tMRPo6oF0J19PSDNi1T//XKoy+BEMCtPX2enZmUR0nd9ZBtAg01QlhtLE7fjSR6n/hTW4Js50rEQ/60p/wlE/Cp8V1cw5NnX2k+BAuvay64uWsUIY4TVral8dVBbJd0Tb+npOOito5PYERknWOjPl+46JsYxuYsvGc9SprxpAihaC8EcdCgLDaENDRZu4/N1ED8XZUgNuiq45o7zX06akQJtnMwVT1pwIkd/uMPRSVph1XWOj0JIsTP3StITO/NB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wgk0YbnJrr7xjv63rf8Ikw+pzvCkKQt54xzAs1MRIYk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FALy+6nDnGUyiBtp+W6Il5rCTGRE8BZfb2F07JVhDhsOol1iNdj11YtYbbChB06uzf/EycRqqh/HV5A1eihr4c61dbmUOp36nlaeYxJTXE/PSAcmIJXN/KBssH3M91J8AFPrJZdMzHWTffT8yNIXIOstYjAAMwLk8fycrLXIzf+6FEELWyUuD8pUYBj1PUajNCynYYqDW0exi61TirFTCOWq0VT1vFotbtjVG+H0/OyIFUalKOAjpCuCn1f2uxEV+2oedfDUIQUuFh++1QYHn+hzXKnTGXMiBUGwiHNud0yKRxfXIP9BcK5OpIw4PM2TnmvgNtRyjRfTDNB0S3oYr8YYH+AuQ+SOK0+rchS6SoK5krN4AuhlZdFLFXY5xiJPtQSDy+vIT1PftGHCBdDz2dUpEXkd36fw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "whFZbwLfpDP6cwwwwjxpmSLmZ1508+OKd4zDIXhLo58", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mf7p6JQr/XblHpWNyz1v0uF6e4fB/ceyu03CjZqTe0t0K1cz/WCVgbqJBZLucCDqA3aDzXA3ddZ3zFT1b9qu1jl483u1AQf6o9F4En6yUhabAyMxshGHRdsW1z2mJe29VZe3i5pqUDPSoTlMqx2rsqHo2sORAcqp6CXxqUknTba3Pt5qbZgiYxkmb4U8WaXGSok/IOoscEhzmPPi90ydVieTwHqrHFmWl4V7Ni7EV3+ntc8zjM7KnaqmwrgWfIYNgWEKHgTQirTS6/X35qm3/LLZilWHhOfU8ACVe2wq5TUaEJ/L7pIfk02RXFDaDC2ogN2T15ZrsgIK8LrS3eQlw+b2//Mt3C9K+BWBwJ+GvixT10W9u2rWOVb28Lx7xoyr25t9Y5r30b9DrH0gvaU6dn8I5eH4yhx6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "whWvN5FaqNRdAGvE7g+RFBFLtijlOqgiUoCllqDPX5c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zBRVXR3QbpZrD3JK0Qwem8K1Oj1ilzQFfV3QPQTaH8ksk8dtzjOgXtRsp/X29n6bKfKtDiRLMJb8PqhKKaJnEMhsXN5xNcrmAzGEB1EQPY7B7RDMlT/2Upe/FKgbpHS+8X0E4j+N8b1w1KXppOt4OZBvfFjiFX0kgfR5XBob0ag3n3tWlpBffoyEe6Pq2FsM8lNd7bi3rErIH6q0ieWrOBEwhTWaD02FNQdqkycOXPjZrKIcjTOLkgerZw2bjhN1xb0MTk8qTdVVTiVruYj00H2khZjx/57utbQpwk28iBYFe4uhCWqTY3+7/yjGPmY967tb33A4nRJGxMk5RaVKjOOHpYNfc9JH4kt7fb6O51lfp8yTXLJt29T8irgGyIAFElP2Dtn1KqIYmspMAwPlsRjuOL4/2n0I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "whXNMXvFUPkelE1X80GEFtjKlR8fA/p23rd6eMeejko", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+L0crRnuXB+iA6O1il2aXIVLOGaTtjo3uhElcmk6ljx+cfRDkxNDtAiqSbCE4UD6QnA2Xv6SiDhw0t5aiVa9ExM6y1jXwprdTukgvZIvIHUB36HEosAJ8eTc1s94IkAifrX9HKZYcjq3Uoz1iYIG8hL9xswQ6JTZ3gxsUIJEgy5aDgtWLfu0ttNhtKRhe6+0CydIymRdHuddsXPa11WwlbH7dQlSBVHH0xhkpRQ7F9+zrrBE9Zsq773fZi3DvsudftV2tFJODBnkquLqXX8NZt7on+CuUcIZUMDuM1x8P9cwVuExU1uGZ5PYnSf3ekENf3jfWKdGJGrxXi/u/AIv3aJFphsFWwjPfGBKVmEbD5q/WGwkQjICGfL+CZsmCZVf9zSfxKVDQjKehiSAOsVYHmlG5xrfRsj4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "whkLYLHJsmCC6+QXptfYdlb2++IkVQXl4UoS8UBU3Dw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k5TY4a4x3S4mU+2j3YtVzVgSVVb8oe07x1FWxNM+DXXzlQuHCFWCrCOrEzbKyzVAhTLzKNPUuj+6owToSOSfI19VZiTPMDfRvpM4i2yEnl1ps+I+KT+Wc6zMCtOINY8JliHkBboU0MmbyTsMJM2nlUq9XiMYfLK+IhOUrI6jAW7zDZQzpG8aCQAm7wxERL1T0HluCRx0eNVStataz6jyt5zYQQh2SRkG18IzNJqpcF43yC3RudNkBlVQF6sj/D9ux3EymVgusoLcFn+ScRD/BlfSj4DtkMp+wuHB9w1QLqIpHmNcl9cOlLgpnM7GolrQ7mGPlW5gEB9gMQZWxHQz/tUxW2hgdNegmZlADMp3pVXxDyc3diDjTGrOVvObCA7f5UNi/cHjsFYtvX1uOkj/lW8T2jfGb/p6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wiMt3oIRyucONL02+HyXZBsN/MEmvBNaJ1OByZem9hU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "53ETZ9kDJdNvK3x1RgdcQ2sEGh1j6sL4hfxS8zjZv2oDOBwxM5dOvbwWpaUtDcvPgl7+ISr+CYQ4cKPJyyOySdKAarvBOvjBdwkLb3ge1zf6HbGCdf6wTIziC/E2J3erjwF6aeJcvgFlxP0KMK5IyIR4WFgmeaeZyWNd6w9OAhWAiCY8VkS+EbJSzr86TdItfPDuKdj9KEAIdGFcdotxvzGypUh3zt83ovSuPYyldmF/GcAYzbb0yGz4HfAwcYwh1BlWehcjfy2bN+HcI2591PWRhXzlEwrOUJI9H2qlwIeHUGDQH0wXwJT0ejTocQ6t0zLq5seuUHLdYBMNHKqkMtX8NgrsAFIkaDOKioBifFH4Cj3ARkSUaTehOwoRejoSAGvkwnRxYtTsfaNP1hg4yHVKnFY2tRMu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wifvkiyxpwGmbOFPjzsYW3XPqlKiebESAwAvY9EBBQc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wJf3qP8k63+zbjMCqdshTGJmL6EJZ5DrsuHcTbMKSzCZlcdVlIRiI4lCW7YHWHP9Q4Zn1dqgHA1RwHHbIl59dLpC/MpCvvUH6aADQ1D+8HF3GVTczHSWJS/HERSLRpHqWC4nox64bVEHXqDShbs3NtiosF3gacLnE1wofN7vOrZD6MTz/Dr2JyAIUm2/v2Y13m3EfYceVyuUVyv1rT3/fVFcwCvZ/DuEjr9s8gsrALaqTNMtnTll5GXaw0n/bR7lt5Z7MsS9CVwqXzCwVseWPkdIuF80UU8jFSBpZSLddRHS22i/L69+xmdK1QgrK4pwIR6CNWsahLodHKPV5fC4ZPiN++BwYBQ43BQQssyOu9ijCcLqEmhmBWzg+Yu8n9Mdmay/iazlBLXpZeZv8OHSMBIwvT7l4kDI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "witRG5jAz5fcPg+RI4RDe9J1BIm0N80tmKQQNEODivM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HUstgUc5MpmhWveVIoxHiicN0L7eQFDgTMrElO9fnw+kDEGCyAYCNo3mjFwH1O+HjcC3xQ4pSkWXPPOXBgN8ndmyx5fApV+u48/jNtD99/WUqTdSiFJhIUSQUXoJjjjpVqI6o0mO/9VKiKIcPB7GZxelTtfl/ZQNvUDPPTCYMhs2eo5ZoVSIhafJrG8DKqT5P3YGiVWFg/+U35hNGQSjIX4WjIWn4jOlFuyZUh3ECpqk5n6cz4oIXxTGoDXTiqXYcPluejvqXEz0I21Tk4i/zfN8zK2GLcdeX6QlLdd2lfqqPO6y9ZdETyVvsxAV2zZ9cQSfUs4RReu2O/xcJ/xcvHiBH8ABALuBGhe+sZhfIfvHFAuko/XsDJE+cQZ7cnl8j6YKsd/SgoZMRLqpr3ma+iz3x649k14/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wjKuLqdl0Z6d49LuSa0ZTnSWLOu3/nwRzuXLKW9s6SA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2kRBpTVr5433O77arrb6wp+BSSacbHBxtxvcTBvaNEUDJL5nqwSmx+5M7m/Y0JipxFP6L85uJ11XCVcuujB3D//E1F7m3oRbTpah7BIi2MiN/E+vw62JZjBpjBkzZo/aXhSWOpOsdhD7+hkgvikzGuy6r8f5Of8Tvli3WUk6//g2ljuuTZru1AHK80k/Y62WoHmN02IzUgNB2LRsVX9Bfd8ExlcfPwFRKb/WAGUcL/Cfw5ImY1xaoyE86oeKY/B52PWd0H/aWmbHZEadt5kyWt8hZyCoeifI795aEQuYFuAy7Z2WYmrFasojt5nDDY1a1IeE6wWJX+ZF6i+mJH+dULFK04bEs+VlLD5LoFbwbUTmkkCbwRZxpOMubM7kSP7e8ilSnQVqLGnnEJ5twOsxqPX7u4lnG2IS", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wlNdeLscL5Sng+6j3YQQ6y6iEoBFa8Ix8KaIg6/M2jA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SQEVi/Lr8zHNrYzFmRSPurQffsAacxsbEJGpm9qCYE/1LJDCrq6tSEzkU0sDkUlPIxdBG4zugt0QEX9sVKCKcXchPr3LEVfRBI4WowlhHAxnSq1QnRYRc5Y/FD86olZ1Dw2KYrZBGicB+Uet7CDjrCs8c+chThpv7+IH+Gm7x3S20gLs/tsaOaS8qzOkDWYoR7hqu7DkhCCzRhNinUz6q3u6x0wAH8f3M3dgHOZsI7pWvsuos/Kh6DkBBug/r3SQIpEO30hQKX4B+ikqjuT5d1WC+PSIU6pB7shHy5kUKgFErvEsN8WKZbw7//AkF2zdjAn9ndS9xcda/rWKruXLiX8vgmIZrsJfGkBuluvsDzjGb/ajk8D3Rutv3ZAhcwCUq8XP+uGimfTZDeNqsNxMYzM3sfq2nd/z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wluJh2GURxx4aU9Vs/0BGBzkDF/v1PF6uu0LothK3ww", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mw37Trgmj61/Z5N96QEeM7wQMnKtdnr1PGHpyVeOckybwfUxtC1MnwR0emSWPRWaTnASugBPpdcW10+iRoCbTxOOiLEDF+ovfcBGIXe/GyFtpr+WtVdjYg56pSsATL+zSCjoxedw5jigFpK7Ies1w1BjAK5zPikI/hvXraYevvmbkZp8hze2nbTQnMrLT7MxS/FMglm5nOpteWnXYcyypjHhAnUmb1pNGPbM3xNEmnd+zfBDCQ+RF7qjo+8b8qNyReyXiLBbvlJCxwDwtaVl+fdoX643MAYRA92L/+UDghfse5R2TjRpW7ejz5eVitT7fVtZSmtAGxTP+/ZP7XpNhBN+N2Uz5P7UK2FSd4w16a/DtW/O5o6wHzotBH5ej3TA5e6NOOO3DAIW47ve+yvUbGRRNkQrkJK0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wn+pHIt2tDh6QlcNmrYXubNj3sjknd4WVQ6IjlEi0Ic", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XGhYXIik2G349UeqxG+n5I0euow0hs1ycvdv1HTiNXeEBoDWiamTCaUH6fet8MoLVoK8T2wzwDg1NTBGjikoURUNs/k/RR6PJhsh67W2xSvrMQNlk88iJCtxHC8x+XSKoDBZN9F5MZkvbv6Q3WsrYaI9esdrdGQjfsc0lvQC7YqUQiqpjp9vQOazgIbJZgTpnTGnwnLf5alYiCE3lO4C9MnxAEwNkgsgYIBcmvV30I2d+8Z/VLmC6H+7io7jVDQH0l30u94J5ECo+kMoIpUMieIg3vGxrR8K7LEHsuXmOoBGs4LmhW4C5R3nPSBH7Qrql7rfkZKMvKI9l67V3odzUeNTJXncZbs/lQR/jH5RoU1xxsgZ8EO/FoyRiqXQ7S6GLC+RdbdNnO6mZcrvvj+NfSzApsEJMFpe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wnmZPTJixgxOdfUDOU2onHaqVFaskiZR8Bq2wzkTMjw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "llcuNVejGGhpBQezWWc8taIEezCnpE1YzpZvf/VORFnph5Q717idIJXsPFFP9TzrvNUm88HEjrt34xDXQTfzhCeV8BDGZ2WQ525GQYHP9U8RwGNp2UZlOlw2NvEdWFTFO/3dNUDvuZJyQ1AJG9NF2YjyXhtBPtfBxmbxA6tqgi+dBpr8ll6cq5XpZxEC4RbKA/0aMERyXt/lH66+RlzfvnI++zRalCWp/Dof7yKLWb/GLPWBc16m5uzIzHzPa0jJkQ28rrPHnimVyxqNIw0BYkPdVPcgpHglcv8NcVNj9gVOykAQg9ape8mdsrP+lXU1MFa4/WmGSs1wg+OJLSVG/utYkteIhmNBfbQdPmdVTlaW3a4KnLrcanw0K0uKDcA8tjOP9S5rPaE8mpCggo6EKLOKeq6LyVD5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wpLn2nRC/+bzsPTinxangF2mCQN7f9kZtTwH3OmoEOI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QEqgLhxZ+M8lCIL8WVfLI2jb4o7QoHtR1ERKwQB5cAwXXs6dNbGOmzgmXlJ6DrCE0QuIFKfEgZEJoPXUn65BgKgFWgqSzFYPoagsG2I70Y11nye4PVJL33EUJp3hCXIIflmXeIwbA6xnK8MYM5vMvnyNtOMHbC3mUv9Lb0OlpXhqb0pYmcAoz9XlGYoStTv2xTWZYckESgKjJ9ou/Lf2s9/Ano7iljC0F+XCSWZNep7XwhhhMWBjNOiKnXdFhyJnGiwIpgdTJK66XGUVRf3Bv0/NM3rwLyQbRnQpkg5ulOgtCkaw3Fh5dOoG4namYgQ+lxQcHA6rWAJwHgSmzkQYJIbtP0zZbbV/3aQVgU7uPkZ9TFsfrtNBPFfzYg1ife33ePKsx9rS66sQ6K8JugFdr/hTGazCuH5D", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wpcE6BIwxA50Bz6bH3INOpP41fPPJZMtbwe/sxLZrek", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uKtXpK2hEw6NvaPmut+pg9NOO9+gUBM2nTr+b1JwPMEiSmUVAUGiPA9glNtxod96ktu0oPq3F4MnTRtOOMIqjJ9xvBjLwFqHe99RBp/HV+NYTZyD24nk0BdLb5SRrVvg6iUjWQyzuIbCb6RXY0N47RvGoH8qzX5kGgWJ8ZRq5OSNGAldyjALmYtEtdW0rB4uzZ6tzC2Iey/8MCRZrDdPSEBZNIwp/bGZXNcpZPNWCLixJjU0cZ/TPOLNXOToAbl0rQhrc+u18y56AMertNMJC3MNwFdMBjGPZkxjMBHC9XUF+8dWEIPzHku8p6WmibUuBocVLsoOYac2XY7avS1nivl+Ms9aZkmN6sFqZoAFfwiZuxma2vpW4I8k4gJxD0K0XE0EqafnirjAjXTL/nviMXjApKc+HaQq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wpiRNlGhayKEH2/HjNk7qDTNei/pVkrtRXC6h18u/W8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YpddD6iVQAvftwYE8sdQIUk2j0hwD7VHIZhWGycgW+tzx98sonh53onz6Yl8v+D5hI7Bh49LqC66Xsh/wMd0VE4lRtxTYSYnmAZTRR/HUI4wJdf+tr/YDrNzy7hrQazf8TKbjECPFnkaSlEIiL1ZOvZ2hApsxwl+vdT/DmeVRyh1XPUrg5BY0UM6BSQgNLZe2LDNX22r+tvOGmqyZZnbx2KY2BtyYdqNsgJOC63W28PVVvmPLJma8giXcTGgFoWVuMPnPaBwacZIZBmxK1LSzAdXuq2bRVYKo3DssOmJ6HpjGGgHq2rkJprmyDssaMLode7EEa/JBAtmHVhswtcOqcK9dX9imb0i900K9Eon6hSE3H//frvQhAUAw/3pPKvCAQ8jC8G98YjybX4FagUWV1ntIllV6iWJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wqbKdeeQulKIzoo2vUPnZVcF543E366W6gYqVjC2pkA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5GguHhMTCASZ2WIqL5x13/ohTmxW13+ryTD1nA54oRaoRQLlboHn0vkNsEZzEy+GPVgWEQHW1+p026Js19cjSJl4gTc8gxNNb82Lt0kgua8ockYjK/CWInDJFeoGVGJ1ffAskr4JIqMVh/kwcmgvm641ttKdBS3HfquGVH8WiRRYzQj1zPCzFQtrdXA6K4gTsN3EJy4XaK8CBn8Cz+mLUiHqk3E0CO2FmmWE9mmjKXNfai78WF91fiHvh7ioZQ/zH7uyz1vaC1Qib1M3rePg/juK1idQTkqEUnX83NVNnT3Gb+rZ7CTbZBOGRVYjNAk4fypvym8XVOHXjr1RvAh4OOoW4fMsoOaLkSvw0qNS8rBvfpBVVZOPR5pNkhCbAycUmlH+bFAB63qyISOPdLfMcU758/bTAPIa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wrAdq6fv8E0IJPS5Th1ZQ1fAGbAPgsNhAx/YK9v3RZM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ID1SRhhwId5gKHpAQxdhHrBOPNfVym5wXe6XKZ5ONVsxXM2p4bt6RNZLEHiY/hzY0w7npheh7/xZaGIw2+XCxOW+AHrk/oyQvsYWa+uJ6cVVLRZXaVMA7hhinEC3CuKB8T6N2zkT+wnH3TdrnxTwkiiYVBheuo6C3PFB+nkoRHK0Ypgd6LWkK1co4jVJ07WThT8EA2RUL7YNRRXZGl2qKG8peIdMk14QObR0yLk2Ddzlw6vUGDq0BhpDZUrEQP1N7TQ/KyDCXaa6JoQL7gIcjzMOUooouWpEwkFS1jRBRH0OhGrV2WUH3NvEL/bi2pm0WNwhQXK5WZ3UFScAF/BaQEiR3/l5aHMBFXG7AG20W0LzRBr5h9D7CC/adCaB/Zfc7bvCUBkkjTTN0rDCHhAxrl7w1TbKyfgD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wsGchS8cmH+c3RU8aQKHC6ZDR86KWMj9BaCDWo6IjgM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cGAB1Ww9X21CmWzEKGYGgtcwHKNPcz0VBvuiyFEOLWKuWkUePVdARLdyJgRxNKHip3GbZ/0wv+TYFx6sfscX4FobfTv2ULcrEuLf/gXuq3o5GoQTO38R0KBdA/Cv0x6isZNE55r4cyBRw1lgj/fzkWNhdv74iVs5gYV/IRrAEsW3Gy4OHAjET9IKUdfQqn273G6fX2trr1s5lPmaMjNXkI3mB6tPntm6XyY/7WnJfSPOLRG4l9Mvg2wEO59NYSbafcM+u3wBN8Qt51nQaDPxtcUCTAZqE62tgDtsnUr6LdiQ+a2Sahgl6YENoydf900ZwnmPeTNkcWeydJ3gUjFAsvCM6ocHRdKbIJqh2QlIRXb00necJx4so1srqEv8/MCxx6IGGLofj2/V+koysaPvcHABZ2BOwJrZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wsLZTV0M/4hL/nmuTH4Q6aOo7FRKtOz8zhmvn3Cc/jE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4TOgiYjI+2BLu4A9Ms8gpu+K9/6F7O5eipujIk4OtPhwwFA5MMxmOrC7JL8lX/Bf2C6eYKK9hH4ngQf9O9SgRmDXmUBCuHaCtuDsMGMSMSEHLQwgNARFWjUDTyMrNhHiecG15FT/bfCqEMjJIy3mf5ja32JbGSP49+OfIkylFq0s9M6y/49+VZxKCEdFSojQtdmtlIUTJiv9dthG3eDHbr7W2SCCcy6jQ7tC5FdW27IlwgLfRP1qbJpJvP5J5iCsBt6aLlAHHGg8/xw4r2Ulxrb0ggVBYH7m82EdPq23ibADxpDkSHFTxO8zCu5GU/btMBrJpfbbH4jsV++u6Vz4nt3kqXrKZG6mq/PsYrnVZAPP3QTka+/lj5wiQdWT3FGFCMNnhmGk4cnzqhiIjtR2QxmufsAMUinw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wt3Y1Z0rq5EaTzFRUVEG2AACECVlimu69/1EMbPn7ug", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "65LlJoRQowazl2XOg36zwJNqCwBJhVWGYYOqjiP+RYM66sbxuus8EQrwdGTplEaZVy7q83qSFX7wlngD07JZRlgIoRsFE61tRsuuv9ALg+8jPicVA82bf3KiHKlnV0C6PHBZ63H+HRvaE2ikPng2211izNonK7R8CasXAc0JqWsk7z0Gwx7KsVkEbeCZeMbowgeTcm4ezdzL3GzV6xIRQSnQGmXAMMWzg8KN6TMgIQRv3kNgZFfViZjBeDwsM+iFgi72DJlzD6ThntBwR8aVnry4LqffqTjnXPp0KlH3NUBz9aFbHay0jvqNdpmEMYJ8vf1pfGMFIBhDgFFbFL3D+EK4knFFi095F73G87Hxey07Q3uMeGrNHwoP9VOModU9Q2OnljWcR2la1uy4UILk5TWH7AlqD7w1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wv+ghFtt7IN6CqcdK76axD3LqsCOcwjlQpCWxOrX0ZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kQypzdjdU18qiUSjfb84mrOEe3q342+BjWiVm3C1jEAnfAZfbHa++4vfOlyS9nKG8poL/TXtalcRgU591nUaIJsIOAwMeew1r4Hp2LFqKR0RBSIepD6tbQDbr+u5EwedDcwqifrKblWhMZhO2bITk+VakT07XVuP9bIZ5K1wErRa8myDHoklp0FHAmNqJRHuFJ6cHXG0Yeu1eR77SrDn0HL6S5UgPuYeVhlLa+qtgr5oLoSCf0v1CO2OQaWRuSd8JrFHZhrsZtQYJROpzXrymlmQRNlnjCfunsHZIoDQlJ5yoPDh6km2YHwCWopGp8AzjcvR5ckz/izpSZm2hTmT6hb/6JzGCpKEzLc1l/FQ68FQzyyHVnyIbtfJpD9jhWD56R+MhMsu/5x2M7wbNhixByN4t7QxoNOI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wvQ0QQ6ZKq5lFCPlQDVNs11dQneHxJrOE61+/tulFCw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZlDE7pv8wSv9ewPAIWMEw6N2JidiCXGYbfg2TAQJh/GTdeMHCHsuKBgA9aHNw4ukAAuV7uaOFiZ/Hryx2aFB6oegv+/860MfLNvcmEKtksXfHEiitO9YmK1UtiX2YLt2U6wNxBIVHFZv/O3RcGkeKtdzWHQNHPz9WYNmwQ9+xltkaGiwkqnUd9gchgNvSgzUUJD/hLzESucdR2/ijVA0mJ+2w8/1ERXWgqqghFTVbvWpoDkiAAZDqzJBRZhS2rbskKJ6jSdbuns5hs/fWVbTS/kevh1oqcf+vXLCWSw/L4r7oGzwU7HK27sDQvNEotCd/tZSCwtHWNc0U52jSgCf/aqZC5vLtZpbg1cne0V3LAMu5mdiGrRLji6bv5YkHGWmqWpF6i3cIk/yr1htGgjAgboH+O9C0bMu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ww49ySlILSYHeU1wVgkkHsHAGzQG+jNf/HT/N2T5OIU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w6LGecrqC4/oNRTJ69Zs1c+OwC8Cebc9J/3mewB77NWcLu+onQobpGABt4lcGZtAE4lid7eRHc2I8uv2dLDcDkrPaqhllYODz7grnanLN/4x54G4COZL4fkb/8xEYrrtsED+R9mCLCmDpv3Nhv0SQ4v6h7jSJiIRaZGgF8/DHdDcADhoWB5ogGvd1hBGJkfSMUP/ugi8C613I0AA2JexJdt6SOD3yNe/PYpFBiFPbyDa3+8wjRYAPCKCEoEomXErvhzaWLSzWtIUeanyZoDyGrtYm2TirABWhvzs8xv0+PVb7wOrHa12KqtFyXsWzhKpvQBtxuoOlC3elzIaN9aWNTd2fWi7IjbyzSTAAwb3ZW7DyOBAXXn9v3HwY+b1yvbavSB5cI+tz1/cmgPmzl55U1HjHL/xmmP2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wwO/Voc3eerhdksYusWIvkdURmtr7XzDd9VEvtEW3fc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NFP3BIwWwKifDScsvHUhoFlvT4n1yZJcOO6DGvcJAGl6ELt0+VgAAEdgGj0htHmHt59Z+Xd/0hANBH8j3HKvxzZx/wRuRunpEi/De85Ta9qBryXA/yfOsVngjOV1SWUImbWmVZEOTD00AdOifKfMRidaKSneO/DIrhI76JvnB+ghLCnlLCQK36BkHx7uMA7O2WHbJfWt9VHDrniiylbbz5m0ih04DO6fiu3wmV1voYlFGkXVRFX5TtcwbzTOtZVXd12ObVRgPCxPIQ5mB+PziMrtzjyqQTC1ifwrR52uPToO/eVv76oW/l9Umu/ZP1B712tRYsv6luwdhj7+n+9xGVsIq8LFtwvdQRU+ufaLUkg4aDwnKuq/QThq5aCZR+LUweB//eEf460DLjizdhFbDslr2wEQDqPt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wwjOyTVbz6G9S6wJ1+Zg8ympJJDQTARgV3Ymmq3QKvg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QHuDwWWuh6klH/j+dxOgc5c45yDeIIyJzdn7/AcdBHGrBf45oBioutUBCdLy94iuxiSUIK8Bynaci6eqNXidZN5JlrwlHVbjq6uIiTbUjaj6gye4JV6HHG6oJ2ehOZLbEkWbbodLJ9cGJPpTMM/t+cy+AGug1ZvLrYM8j57flzKsgE3aHQCxqTV6MiT+6dPeydgW9Jx+EBD01DuCmPkAm/h3zbCemHTXveX5ZGRlmo+2hp/aMN2f6e590f3F4S4eDxlN0PGXwbPRgDbUiJGYaVkxHRAd7Rip/O3w7Hj1Z9OPJEU2G18iLZ9iUMULWCLmKe246BBYuIV63h+xIVlXZSQxhrnBunMzkpzyurvSQEB4+QqLnYR2ehOdnS6YRxYaFHvoktb38UAG7lL+U6lUzsNZXZ4kv8Oh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wxGlAfw00x2cowYUkmq0EYt4n+ef6FRYNFhvoRC6ChY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PLsGVjr/krv0+g3e8RaUSIV2aXZMLfmpsZwEU8kuRs7uxK4N+BdU5GW+Nm6iEhMuSi3TKOMcLXvWHXAEKlH7/XIy14ImrDXI9z2+ynSQhYMMUXR+5rvgaqwpxHY1eOy420A8VVb4Tsq/Z0M1U5RDnmDz5ybz8XeT7/NoNDEESmFP2tCbdmWvDfuaWcygzSzZjME7v9xGowWo+cE2QFBnHuDdDeo2DVT1OhEhK1rXsIdFkVCXN8YvNFcuqEUE5s8IvoBHl7tZgKFypNqRMJGGtzOZx6zuwrQ2KK7inclTXIlflMLMJ358o84LQcyp/xl/lZ5kCaDrXOIqqjB46dbmLNNk4zybMC8PgFNM6KloBhQQUGavO3Q1qJJGiS2GYhIrrVj1Nf9UvraRZXhTXX95oNfVihOxZGT4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wxQnCg4xe+j6efn53eah7dzW7aJV8xjKZ0L10lnTScM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RogNvNg+YQOEPZEBguVdT0fqJk7r6W+X+/P5UFZ6E0H7U0O+Mq9wVwp7c6/rQtEr9eFnVD7CihTmTpzcskevc6hTNAh9ZbEL15onsZlgOUsxVHM0rUZBIVCdoO9Zdyo6L7ya5Q8yIoRD6rYPLhCvTs+o9JXOFbQ4qLyxbnUkmmgBu+dd5EpNmwDW2KcqIsRo3eg1kEG9qj93WIlVHiJBO00J44I1HwLn6UhJb88sTywVRnJE2N/VwCiUbY/yuJhwf/KWSCOSsxxDpWIoXkJSlemLjPxJa0VBvtzKwGjHmBixUh3dzDOnDQUB+CNcj3r6VfsJSMwkzF+Hl1gLToPIo6tbvjSYX6Ko2Scezob1xP8THknu43Fp3MoyuLguaW0L0KYyUj5jwI1G4AiRQtN7aqT3Xn8hs0Us", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wxu1lYs+8yjfmAj1+xHivzxg133hZUaWxJ57v4dPz08", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CDzmfkcWN1ilFrIRk04GtYkVWLppyAnhXviTgXLSi0kGCs2l8Ku1SXuS8if4hEpPYYBoFQukl5U6UmkmAeAsw1larHs7N/ZPVVgjL31svg/m7TfUSRnhhKN9DdcrzAhG4oWljpnVy6szKZbH1ELdDZzCZ9LiNrWqC3dFUZhduNiOCQcu8z9RYVsZp2/q+o5F43Fx01ixs/0ZbT5qk+wew0zq0Je3oz5iKC7gamH/ApUUVynU15BqxfOBsXjpxdYbMGCSVvjIXd9kJW/SkQ4Q4GwjtC4ZmM6jOuaSuVWuFGr/+aKJf5H6Ghtzk1g+wEa1EXTA7wpAeQgERfgP3lAOoqqEvW/YIffH6FWVWAxj6YUTqg7xPl59w8RMDpemhAZnTZimQtaBEaRm1rAsfo1Tr+mcsrMImArj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wybwHzewzURwFS3iC73UucbppByz25AOyD49bmmtsFM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zKJQlTmWPtzgFKDj+Rr/07ZHakTTslajvRlRVv81JIKyDI38VxWWBBNIqKITGJCRGYV1WAZtbgGxjxh7PtUb+RqEug1l0fTklTMQp1QYLsMMKnfI0tseCUUv+NA2ytCvWPiVu4ZQ/t2c2YfuzmTTglXbm3ZMdYVpqsaCoVw/pbhiYaIikWVf+xh8jF+K9NwU/D/l7olRx1ME++CZgTuIkSjfyVyXZv7dAoUZK1ocO0x+fvZqWSQnDY/cGatvg26/V+QDCl1g63dF44fxLN+HBVwfpEd2EObjNmEoIxGPpEetvwqGqcKlwkBlPfa6lGKs/2GvemWBKQGIdfvYn0SEN6hjHrG7Jrw3TEbS4NUE23g2mWrvWtWuYAHnw/WbTVeHkwFve4ZNJ9iPiNv90Q2JUFETXuutqNLK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wzSnlQAkzXxPSFScViN0yARwe3Mdj7/j61a6J9pxz+0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "JuNFvaVEPT6NbGPn/ki3aG7Zj4TyCdBIpcwjjBecWS1vsc5paXb7HJOBZSMVZmd3C73pb+4cYsOtPqiLpoBevIxLkDGbCTCfjGMfVJQUUgj8/lF+31ONL0DJe3kyP9lq/SdmnTsWshJxU041i5PxxYl6TzN+7l9BF80itxqfbNvxvRoAlpQyjE2HZ4XqI2hQg5B6I+eUqnlXRPPl2YP2DGLyNoEaM17aUZsszlkcgPk6lVZxIZtQJ997z07iZU4eKx8H/yi5x/YcmMseWdVDB0U0GIMqN5JtSsRHsX6KGJlhGYtHEyZgC+3Hgi4k5hjw+QMwio2cwWL7rMLwEwesKuFwgiTKkmKMWnwyyu6sJbB0ka9PHnl4xm/s/lgUOjmxkpW7BBJYSlsejheDdlBpHNYAmfe5zR15", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wzqxRNWlGE5pnLLjL7MebHqpPJ+eCKbzxS4VZhWvpQM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZdQDHhJ4dNbL7mMeyt3I3OQ4+Un/7VsLWSCuNZQGl2rZUZ6mFefjuluxp9c2Llyadk8fkozF/PiQYPNzCg+nW8eXOY/3YtQbv8FFycmq43N285H7Vh7HkwJcOvZwR8yFL6beWis8IfijsXvrybw2nc3IEi0plTFUN+SG/gzwMD0PHmlsvLSwR6HYMQU5WDrL5g5A+ugyrW2fRdWek6EMWLELlqKZmO1w7jixhzaMY1grnVL1KYEM3UwvuqzMeqIZRkXgFDk+8s4MgyaWtE8Ak1fDSH4ShqyJENlOIfTGj2SKJgrlumJM1+77oifsXBPOzB7LJxNjfZMLl6TxlkfKHS78ISb/JZzr2LVigtKeycQ7Qxi/cRLEJPspxwfvE8EmgoP1IVELHcU55R49avlyaImv/84GrUqG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "wztlAG6oaAhtCQ1Ue5IRMjoDufF/PYCV7qwYWbzm8lw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RW6KKq7a+7xAJYGhW/1P/t13bOZF9H53i52iRNPpp7kH4xEV9UGN51JIrUecaILFVG+NgWFE+2tKNcXA748LUBLDYjBjiykdWLDs1xsTAOiEpLK/d4/hpjrbmldv3UXINDoBiVwFnMASSgaXFRQO5BSEfKYBn5aTSfk2o9LIAk4pBCfAkfAsbuBX6Bp9l+F7lg04SRWYjxkXe4ONka4aY3qC6tAHLtSeeBL5fnuH69yk+ACkl1N9J9UEV9oHwDDb29LlhJIGKXOI7NMBzS5uqqhbWE+DoxYQGlblh8Igbi0UwqMo0E/1w3Q1/upRWKkq2xIg7UPiqKfBYmLhrmN8AcgFNldAvyFhJdg4bpG4J9pnPg73bGQSaPl67lad8Gler5fcboy0j5rxIl0TdgHsR1zgpjSWPGMB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x+8wnxOGAx2dkXXaf7VHfRbh6GzT09FQE650joKoOYg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hAVNSFuW3RWySlyF21urZUn3yz7RYIKRtVbgdh1mlbc4L/qhuTZyidUZrJUtHL0UUDOUHpxOOjcvoIig0wArX261lTX0JGXvesYLJcg03PZoYvTQ2SZG950PSXKit4mD07EtWdMppwLjzkgbuf0FTQ9UrMIpdF3iOTLxey6GNWt/A8BAfTx8ucno2cpW39i31s/VSnYbj8ofmdwtclGpMUT0o/mg1GEIIqk6Y0Cxace1Kb3s5OFvlGLFub+aRuGkz2cpK+nWqQeH1YEF6TVfTUdf6RS25I8WNieLyDdrk0Oo/P1zSaSoP+mmEkqlVjCw/ODZ33AO0GLC6k8W3zfNboPqixpbZLko3QI9TKFwWvQDSEJPJmn70HuvfbMDRhrVCLqYkmsBRfXTZOu6fmn61EBFbEE9JVXz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x0stoSIr3IJtDxCbpevnqxoMVnd9kpDn2OLWQpeBgjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qqUiUjdEbsNHpTuf5JeJLwuHiZZTAJlQcydlA2ByHjAReHaIsCdqBYOo5Lco+0EMj7sMvOFGbgHlo4MKiBh3VZ7qlseEXi8kdNfwgQTRiOuB2n5JlGgBSIba3+WKA8E3/yyPRUwiprxtuo03jyxNilWqVUOq7bObDYfA3U/m3SJHF94TDPthsWvLLjtC0jGGHXwt57RzAvJgfNxmXXCeuT41pWnbOv7GZ2LLKjBN3TWSL99PeVX+zT1N0sQe+EC0XzRq+l9jhE/70b1KAXUjdW32D4ZkaK+Y/lzDYN65L6EPcw7R4w6yb1ljhQbMFrMKwG6G7gZHchuGjWO/TvXdvAY6sKHocxDZQ142hurEFwkOfwtYDRoWi94LyEC3s7iP4eXbmbfVy2qUBjFLEEgNqCWJusggOLz4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x0xdNowNyjsmK1DUJjH7nn/mv7vh9IC3TY1VF0QirRg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m+P/WL0SEJL/OYjPrFdDS/3L1/jRJwr1L0CGZoHktMOS13wIS4S+LK0ucHs68pjKM7C/22uYC2EqZwU14ZGBQFV9CTwW0EP6pFVizjcEkfHQyD5bn4EqE9FavxvU8A+TJP/T0Ny889NTGjOJshqCCe5wIXnBnWKxXa3tdSRTvdkj6Q1Mpuo55KQw5u7kCSdjQTNf/IQnTHH7Slc/J9elQ1L2OKJujKs3blYwxzD1jJE6w9E3GzliJY3OH7+wz3mhtMfXhLnPYJCjiVAEtmfv/oXW5+/tCYBug+jLXukm2GbviChTBT4vXsnLGktyBo2nq5kzAxpZ/AlD9wFddXOYz910oARf1irH0I2T9yO1LPlXEk0QPyq0sQH0bsl8tfcupoza0GP0mGSDojHRoy8tdvvq8aQqq+xJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x1HSW7v0d7HpmWUmG4nTLNEcieTDKka+tWMYC9O/OIk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8ztzcwNbViQNU3m61o/XLXPN0wImrX08XuQhN86yndFZSGYBMF8SoEEPkcJaeYfVg4CZkVNidQUJBuF0+AR5E49dsuH2mwZ5iBPnT2XHYUkBzsUhr0qrOJZMzICDlr9uVB7ew/heuZcmp72QM+qTpNdfJmsnBH3gAiK4rD3bPPGdBDo1Mo7w5VV+FetfByrSkx4lfYNbJqqP+0K6qs9d/ecgGsdptMHxoA6Js9BT0LKO9GZ/rLf1cVq1NGOvYGEwGdEdKubIpAhwMwPzL/hQli5+ScV8HqGJqZAyHOkwPuwrZvUlSJ1hDzJ3e+3zT9rszYhzPM4eX5fWb1jjLL/6WlzOOcSvMOCKZnhBLyfZ+IGfVUg/+JTHUvJY8qJMYKAyjxGMCh8CqTZfd6D9WucjJbZIOqr9BFIq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x1Y23ij6d9Ws2+x8aOQaM/B6svYvOAC66DoVQk9yMSc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8xoCbEfoCe7JlLWe/U60vobPCJEGXtVz28cr8KN3rYvdjmgyRLrK1In4aBEv/MQwtos1ljLgE7S6elFtyN66MyGZkXP7wXii67DqXCtfW+ilUD53pwSLdGyygd69r8mpCA83YsdSoY+sTRuRub8J/A4kxoKsaDunZN6fZHqaOP4POA1xUAQygBH20V1/Yf9MzGdGOoWeSoYoX57+VfrAF4vvNnEog8GMsb/kyzN1m/J540zY68ATNvbmOa1VH+ptiTWybvOZQn2qXLgIVwi3fec2xqES9omeWy1fXMn2A9Ee+5nWBHOlVhRSn6Zm/VHxi8VelikTeSpW7V/VkGheggcSmJ/jZxHHD4dZ5CGbFm1TDCof+u2AG+dhlILPogq2n3KjlxY6K0i05sA26KmOVEh1uRgxgipE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x1arTyY9CnTtmJDhW++Wco8ywq93Vk8N2IHzRD9wny4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "W2xmn5PSdhecl8J5pdkGs9MKj2elbhlz3OnIUx3sDKGxdnu88cjjuela1vjvRSSM0zHuZt4D87VJ5AVRPqft7+tEeg4kJ0x+F598n4mXU+DSf6oD3Qm67RCm1DbYk+sQbmqb11JrBA2hXECKFQ34yoZKZ+v53FRQsYSDmq56s9KcSmc6sKNwCaU725jpOngkS8afpUeAKt/zheIGAYTdadrehjRC5/MoRRI7DcZe/n9Gz7yGiirv9I0ZVx2rS2xo4ZS5Q1a0cZdlP/gKM0+yDoJqfCOJjfTpq5mCnuKGoOusy0IOF/tK4QdrgpMigqvnxlM1MMAuKmhBHIiP11iQJ1YcCWWO3nC54GUpcPFRdRTiaQxBUcqFj8itGz3eVWSiRRVL8xvDdt5e8/rNms/UQOCoGUOuvB2N", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x1eBWcV5qnbZEgf1bFGJAo/ieC9hATyH0wFNrqgXm0c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HIQAjzRT+O/o9RUZ2AB2TIqCblWndkZ0ifuuE18ypPp7g3TeDOHYZs3weFQXYwvhnx6CwPL8A2B5ip4Wwg0nAP+CYfTu9r0yzJDq8OboXfj7XFcShLI9KXhuiwZyLMyIck+EeP1iIH/vyxL1eZfhysFsJu+nAz57lCNjzT+Xp4fOJhhvAoD/AuTGA4L3g97wyOG+6jW/z9REASBZ8hW5C7nwVVTtcpRMSCWPnb8fYNthnKibupr2Aby4+2Cwz8vXSd/KLCzIc6O1396VKIEf+u4nbTPqhsmb1RMhB1iJADxlEswrxr1J14Sx2NotphQGhT9bYMc5CxoGYYwQOdLU5lehmT+heXat5+tBBKaZHo4Lb7PEmb37rdm6ZhmyewInEgZIM0xZ4ospsPCIJgDQ64CxPG/J/STF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x32RvuFldv0G8J93+XGPe4zsZ9YX5N9y+UR14UhoVGc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "6ikIHGRuC9nPOSGOPhxAgnokQWw2tjK9u7IGSBQXBUC+3eMghvn2hs0vmgYspSYRIom90/FGofW0/TC8Qp8NS8D0Eyrq4IQvl6lRW0xcwAnPmGWrFfhT0jkQlWu9MKa9FYQM9mH1b8RqvaT4ZNK0YkLfc7Z3AOw4qNKZSS/VSSuxljVPRceXuwDMPx5NZbTHXD9qiiH3JMlOQ1bCk213G4WTGLkvrA+e7GAjPRpZIWBMgcFtOxof6vU5wtuLt7MG2kicBdRheiTfkTGvTdcxjSm3dc0VQ/qKm30AQnHSM80GhJKq2YKNgxuu/H+OfUmWZe0zp0FkX2rpzCGrXXi7LFqzLGKc7iVCdr/c9uZ46B42iLkytK4LGKn/Sm+Ur6ybI6HpJtdzUaiYoE1EJg6IdnKyImI/CiCi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x4MEmNGhs2lHlv0x1FSsFQdBs01hcVntvj2dDsmg15E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+BytCcuUYP6R/VHy0zCQs5zqoG3SGN6C3YdmhIsc6RMTavsQYdxDkAZKG4PvbuKGeAgK7tORVhLgViLSy/OpzgkppdPuj3VsX0ObOcXAoude53ATIoa/1y8SqRzyO6h1guegUeIScEHOfKO6dMPn6FI2dlk3okJu5DqnYP+ULT9rIdwTqowLVUeNrJwzajPC7HLvs2IMwFjzQZPPt5MfZ+xw1G+cKNZ4+aW69CSssPV9RABjq4MHaRaROKG/MdXlmHmPZEZMcQgKQqQ9qcvlXBcr4n5PDELX7/huVIius52njS2OngndA46DluFZ8ucbVQb9Ys+bzHY+45OPgIa1hAzuXiCBpRKKCf5YRGeqm+wRChsQVsHN192si/x4+vw9YEVPuar/vMIyFkdRRWeYnqkW7ApFTvpK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x56J0GJ4x50NUvu5Rzdo2OfbCX2IEmQoQbg8EPvIuko", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0HKTWFEZs5Rp10TCtAH371f2WoGtCQ3CD7h/vKFTjBdY2/9qoDiQm2awTTk1X1cOew8dOK9njDrRhObLGIdDmqWsp7oCjbnoP08FnXBShMMgKt47QM4xquZSoxw32gnaMD89GNkFnCvaB4p0QD35BreTiwgDPP51mABpYUK+KfZWU5NmQo49uuHgy2DSBUm+vV58cq78cL37Q4ulKnNxxp+3nqZfsevNMQBU0WP8uzlImAvxS5xqMwQOn1YVxPaB98nYmPS1PKosanxngr3x4YST/sNt1afAjM1ZjvTH1UsvfVPRw4SXtCNqZygGRaRbsrAOstOziaZ/GmkZhgxvXr0WY6EMpUVM/gYGmJa93Joyoh0b08gf/iUSBbjvqDWxi+np7p3dP8ViJx8hLbSUESHpIVFSIbTk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x577Gya6OBEQmFynFnNVR/RAUtGZvA+6Hks/kIHEgGA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Q2PlexY300yPtBXkX3ElAueUq4R4xH3+E3rH2gvkYDlWvs5/zPjAs3GNqDXowfBBNbZi8jryoZb5oyh1dE9A/W1w8StLS8u77DU6CnfLbbpgFKFK7yLX0WPFHLCcf8yyXG67x1/mSX9+jXzXMI6x8lpPSGFQJxy2/guXmmUmdvGkpGWXG+N6+iIy+M/MKZVbDD3510/V3JqMzNl11r+fAFWBk8IqeB/LKJtzzW3d3rqwj47+jQbZX6oQLM+s+lq048Fcp5c20EXSuvd5KabjGnjnrD22TtMOXbZADUpuXUhEK4z+u9tzaJQaCmCZXqN5VEhD/psINf4+XFtrGSwkOJBEfkCIlssj/4GmQND0AEHahVAJmoT0k5tqNexC5/Zp8iHlPo4kndoiie5vN6cGqv682GcAWNNw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "x6IHEjLLylsiopq/waMwhI2ROBap/oNheA9jinVI/94", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fjJdDMnpfzTZv6aWsY8IL8LY2BS996KKn94v2dIHPZheQLOF5Tqgjfc9ohx6rS4PhHPojHSUwYfJ0ludyqdGTnzRjtu8olmqnL7vbNw8iNGRa5KDd9XN11q81TFZ8urlCQUbd7jgNakPvb02pTOrKXmaSjasipq9PTSTkAZOsrOYN9+vnX7gVhN6A3VC5dWydpRcKzDHQoV3aA9THxWHjcPoLLVKFqAdIXFJyqdoXH8T0bZHvpa7fMaDM9szVQArsBzrQ1gHubtgwMreS5suhdbQsnon667vmfx4+tQQD+4kPF5pTsswJFxB7eceNuLQNH+P7W9t6X0paHD1WZsvBohrwcPk5KzEiNYUNUUxUUt/nEyYmKxozeWeqFXr8v6k/jfpX5sWV8nw+7EhywrAO27UDUD+NxGV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xAUvl8yefJsNfIJZXusMKLOzjaRLICr+xaFp9Rh0J50", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/E4/JXsHcJ0pE08Vu5DAvs+Wy4WJPr80uqn8G5X65MPqFug9UGHlNoPtTntQ6xjKBInq0ZR/cBovZMtJZHHyUTCB/ixgRYvcnnSrUMn7L3Cx22oSMDP2/uCijr5VuJxgcb+PVm4nlEPbN1+APqTes734hpFQ+Z1j6FoYY93FRW4g1IYmvn1mvXdCVBiC0pmcADvq02GwZE/cZKKDxchISF0G2cBb3S4HFwmIxIKxRKx7cgMDfy4WkAlIoaHlWaLSAYyp3dV3uRDZvp/kbpEt3t4ZralvnO0pri6pwoQqfuTRZv38jWSD2OTx6FO8llnImNwtkHuGl+/mZbJjpQhzSe7N9hTY+VoBEjJABBBqtRsVu7KLaJkPUuUxsiND5wyiPwpn/kkWMLuCk+uEknppG0A83OCo5gJ6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xB3hAHLvzl++UatFPKgmaBizJVA+B8eTUI7lYqkRUko", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ttSpm6khEjzYEYabDU8ByB/q6lmClmvhCV9gIyx9DN021H7PwxteDgv0sef3gLxH8Swn+TaUHLPsFYjXjdXTC7cYa4bwL9CsHuYEx1f/Mv9XU9ByqOn/yd+A9sHQ2i9SVf7jG/8i/Knksr5xAuFilnEcye1LpOqRtiDPV+GV0T41GnJ5xdQQVDf6WMLuZIuxhnH6hSzp+tIoPb4o+p8fLIfVRmaTdCK3XQcpvNh1KB/C+W6xa5Ef2NGP0+5ZmP3WNam2OaW8yDII0gm/B1Mxft2B2IW8yKWaE6SLSIIOdP24kfDwT7pZtf3UPxZgpd7Kv3jKcbqWqifmjNZkmNR/Hs7w0WP0NXbLuLQSk/QM3HVFHlMzag8ro9LPIADMpsvbrhJh0cJmWUUzaG8QYzuFgKW+NFXpybK9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xBZ+c43nY7EWKR/s14XxnKHuBryrYC3komQC+vrK6dg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HHyUeQNnL8e7qDqCBXivAXnxn08cs1fUeCuMOgBZLi9SEUChpY1HjeGtgn+WuW2Md+bhD0EY5lVJkfTdMHBl4qFANVQ6KJRAiPno25fUYfCNWwwIaHgc+l1j8L1zKE48q0wIepOpQR8o7a4Q/m002aaNuqkPBVADadNhtZnNczllhDWSUaMEavWCORzY5hIUmKzZaPoO9sPBjZOtbs8ryclHB9jhWxVhGZpFD3yLrv3NDZkm+eM0kzrSACtN4rC70KE4ta9Tbm97yU7oKROwxI4jDKc6c3Sp6OkE/5xoQnIaiwQlKwXXYTpNLPtPU8mUE5004CnD7/h4nek5BAlWz34NuRTF6f3KiZWW71SeGtHHtSh2mBTKvEwHv7oKvSpCgWICyI3Mt5eMKQNAYjdIVpRkDpZYgvY4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xBb1dzCjKVcU75BRxauzf9NSy10bTm5I+Dtj5VixM6g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "J3E2ke7EXXSg4N3rkRy8LNpyXPcNGDYasq9g+zUn9HZlZpi490SV/VgiIP4iSPuPqn/bn+/vvAFXxDCeBY+/+gJwkhSlGfmdNoWfUhVI9yrHRvXgpAJUn5oP9/xKh+uz2+D3gzd80IDo8d9YputYlUg/mwigSZ6AtPKGbCi2gbsjgbyIcZQ5Cbox1Bh+7oSTZD3jyIYLCvLVrCm4hJupdO0PbBu3jWfjU9sP0LHn/3q1r404ZJ8jSF6+bdownv6UNtHhc4m+0/5vz2nFfMpwxWzHivcrmPGKf1dgz7yowvvzLwNsstacWhQU6ymW8sKiIKswwJFsZw+Sex1qeIo6LP2SsrIJnogYoBmbzw+KZO28QLWzElRCzv5Q7bhYebBh2oX3wGBzppRRnkhdkCQsoWDK4tuft2Mr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xCIV8ktEyJSMJcOkmNRBVSyYKFyWT7FOsomQJo6SnDk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8/Uucoe4bkxNgqOsL48tMPpRmcOOGGwW0+5EfZ5wFz0Pk194mfgi2OuksbLSlQnoxodsrxvQYxHZ7+Vu6QtsN8UG1scv+JGaQrN3iJAW0wmA4G9/0Wc+muSKO68DO6zaJWnBYB3yWHHEuGCETMOzmlJZy/1+yFtkNdJmFvDfnEnydIxfMPt7I+f+R45LIKtsnPuxCotaN2BoKn5xRxjIXTCqF1oefJtrJhBg+M4mUsks1D6KtY4u7QPow/qbHayGGCkUwPNWGWblkUwavchCSVJeE2V1gWzpO9jEsH0PIB+Wbkr1EuyEqhZoj6Uzkq4I1Mc5j1JwliU+m5nPORHAgvxAUil1wmf+SzcKTRV+IOf/hRg+NRON4C7y6YuVq8NXl7p/QQZJuubRHIEIak4ymRgoeghUamMA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xDYLnBSfUCgizKSB920/r5zht71r3IQQm0sUkDwd25g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ZkR0m6wz0bvg9OLQxNJ6suyRwHUTnd9BwmBAL/VQQwRTVnWEefDuCBNtl2NQTDYqW8dMT/MP7w+paqd2BRkFvFO05VCtXDhSycVkCAQNG4p82SwwAug1U6YvqjCbin8m8/J/TuQfvlcPN9VpbLOX9HkJjJySWITzEzKVA3jU8b5ZO59m62/TOShK8yMzHnEKf3kaGC/2dHHJvte9kBWwXo6KK5nPn/afrub8WEzXimN4Nfq3Ut+PZT7+9tJqwdOpgRnuMMYpsH2lVhmVvoDtEjl2hUD183TPTP7jgIGsGIbnHlXOKLoufSV0bk5PnROKLFZD2F+jCunJMKHmSjxuiFEONC0UHHwAI20VV6k96s9zwbPUEuljqp6i5CeITURDYsZHz1bxwjMRNLQ0v/CbpXOf7oCCiZ+W", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xFcnpcSsR6ojv/D/fcFD6P5CZBw/IwuONgw+rrPxpUg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "try6saqKnBtLOTUws5ro6XHkQOZsg6lqtVXtxn7F9Ef3jc3pdbWZD/Dnvpktvcvo4qXS3sum0fSeiADqkFm2YES9kCJjp+z3SPzbGqaiU6dEgKoBWvfOum0PufY28RjWPfPuc1pgChZk6jUi7voju0qL6Y4HUq/lRk00z0Myr1f7CDX08g1BI5zDgdvxotEyIjqLL0RsRw/zyjHdCLy7n5LpqDN6VLAVDuIR5u2DKrTKJdM4+TK5FujuAt8xO+7LIlW2soivUxfcve0LNnk9mpxcuZ9cUVcn7Fs9E1Ch/1+9OBvgae8ZuABP6J4lSZ0Hi1NBQ/qCYqLfzSRfMD6pzH9qLvW9VnU1Ld+R4r9dOT66+Rt87fny+7XoBgb3ZDGMuJqZnB5m3VXlkN46EkjB13EBJnFCyqhX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xG0XCemlr/NAliBz76OcRYh8wZl6wD+ixiRPP+AqTm4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fhKxjDEI8p2/Rc54Uz+s6CGpnj5qdYnhHhiSf6lfLCk570UkesbqZ9fWMWR8IxIOgFXb5ARFNYzOOlH0Ry+4mRMp7p/nwaVi8HL0RO415K6Cj1Hv1PW8HJKdYBexFVYEHl+fLBFYMoMst+b3xE92zldMO2FsAdkSSIuKG6mj7/sVV0qvH0jqAaMr/Q9WSods98jXF+Bxqdo5ea3AV/7mJ0mr2B6JOhbLe744FjJ21IPhBUqhQ6/IV/Ki/9IUItcUfHfIXpCilJLKCCOY38Vq3HeFc22NCkiQTkaiccJLbK9iQ+yRWBTyzBFIrvcIWepnnx5DP+pzxG9eOkRxcroY7kKc2YcADI2g+3dXpX+OiOYy6EQiO0XRVOdqx5RyHvQGsPEML13sYNBHL7AzzJ2J8HdEkuCYvmJd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xGOidleASy9OOI5t6sWHSy5FQ5GmtLYn/SBTvOklQ9U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1oWtYeHzMW9AqVKw5xL8UR2itnf28XqeaHUEOqD/G4ljc7/awdibO5YpAQSzd8Z8Kkt+XoUZsSrlSOQ4Nm9lR/lEjamoDZSabp+7chq8E8mRRSDw7tCDBx+Mehm2EpzcyZHrnLOpnvwHb8tnbizU9ic5Jc1fVYNTUyEXSeSMj3vSOGzRc+zLKUXbuvZ60LhV0HmlEBdyLJmoasxX6aCcuE0KMvxJPHIF8cazAEICkeQvZHZyKmFB5QrxiY3T9K8IBLzMo+emTsGfpDPuU2ugtJnS1sP37lDXRlFN6E9yyqu6EcwBkW75P4N2rjG1V7TBs8eefKamXKkJjCvpupjSg8IYOpITgdrxCQgl1N39xvUQsUPw3T8Woml/grMI13aksuCIslNqIsPztL30TrY7/YwTHWZMqqAD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xGodoKArMqpvOvf45yMWqwTJLl3i/3T1El9K+mxh6t4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fRyfnBdK1xLHMhUI+cXXv+keASIrSSA0ykPbhfH/l7Pi6QHWaZdwPmJQvia/pDpbAKyNvSpqlOoX8ev8UONskXVNrdBGCMME3QkPZI1jugGQcvBeNLI5I6sMDzkjDpJVDSgmBwrqSHes3XqqX1LfxBgTvXyrVw1mRBgRBfXdf/yV0a2tjhWYGek/VT2rPz+ImihtrC1itn/6c7aS68Hsn+EnMeSaB7Yavf1QitHZIeVzCbnxQfg5fSFeiAhEx7O2fiwqJpD8GYcEtSSXwQrcCexmYtc4uAvb1syJKVlu770Qjvsoc1gAkMlt/KeEyytQU/YZEZlq58T1f0vgaSn7nlRSoT39vUaXVjgef0XiCcHCNyamvIGTMzS63GRwHIIBs1bxrw39P1+QXZ6dLbDEyt/ebF5enJ9e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xGpLJKi3kRnAx4nsYtB/MyC2TjEfJ/1pQ7RZ/K3R8I8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OljyA3hH49JYaL+W9kHhexYOZ01cdUmrh+2ly1te81lSgFrJxiYwqwIQzUUblBYFL4lgu6P+4kaWmzup7m2H+55abkkrXad7ijnx4ssKihgt1GgUve/FYRcbz9ZKztwo79W8be7B99CZvSws7/z5U+ahbO4B9+iu8wYkJ3225Ra4sQz44c8xBNDiYoDn7n5fBrUpfkWHWtdECpceRQW1oMZHBcbqaRkNHz9J2DjtMKWyoZWCIWWX2VPLWeySkj5J5dFq6/53NxH2VUPUHK3qO0+x+uFDcHAGsMvUYnerbnzI4wYtZKySZvN69I3YVqPqkL0HISQjjWsKlMOWYNdRzrB4xHwhDxSKbUyqOSmdFZ/j9ALBsboihzkikaMfZ0Nx+VZZT7SXKXQVIt/4bemC1apVaLBmeVVH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xI6PRLEyYLynV2Oj7qeLAt5od/KPh0QZxvBn2qiOxlg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lsEeLbAemGW3Lxaiedf5//YejPigsNYtMeL2phC2noWDMN8G9/eoSnZtxaFdpe9bQLFkc8y8r1W8r1wixKhZDE4uP9OR9QAS99g+JFmwh+rrDMRkmnlwwUQQ01AZC017IEXz97uOX/5+dBg3g+8OnvOQC6uJU2dZRBjbIzo6ZPtxUhLaDDIYAgXEKOcpJ/t1SU4aK0chk2o7qjub+wzEhqXe2kQgn1orCyCcpid+0kGXkLRC2kjkhIRtNngbgGtO9XyDzvGOrjqN1FJ3ERK3in5sKa+Ob/VmQxLHW8sLmpkRm0JgOp6/oZ0NDKgmOGP08VoEbHMpNgSIOva0c2yJIKRQWZZ9+l3MrV+JR4LLLYbqSF8lYNGxBSWY5pF64wWRTOJ9Wtx2bTYukg8dBgtmxLMMa+oEEglX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xJ44VdxGrvXjlJ5SMRNqlRZQvnGUaIAEHeRzobaZPTk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "265l5jwWETaMCQ9aT3OHecyja1U9RJCWjk4m8+uQvIpAfcvi4K+P/aPJdpCSinoauJx1bJjuJA+8jbTqgVTFfHzvfFTB9pzA+K2FVr1z/9yzL0QYhuhtfXvb/vUvewAbNGjLjcvFh1MCbuEcJIWaTZBRutXPeBqRCvZmcML9kuCzVv3zbbbD5CFxFAofLCcNRn6cLIZiBx8gJK9knxjhLFG1+KXwNCBwEtq7yWxOSEh/p/cfo1733bvfGTgDu83wVjEkIgcTyC+346dpj9wrCvz1svXuzc6K3gVu54KR5l5pCmvHYcNSy/NkMeOKq/EtMm08IhFKHXUfJJpVdLI8V7th0Ovk1Cn3WtVcNYTF9T9LVKnGwnfDkbVXltSPnFW9qmvUisrkuYbQPXu6aAtNLRV0ixahSl3/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xJc+xfydgMyB7QDK1NYXDMAzCmTuGFmfu1Tg/ZEAGXQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TIP8lwy7OZvzAefSLExZD1r+aEVnLglELPP3Xv79H1vK4hhn3znp9WNbD/7Qdquxr9h2TIj3TVQm4bVCX2iI6O5kwSTaJvcHrBT1Ll13t2Q0UccQhiadFQVFBFPPO+72OVWS3Qx0J5fwVs7V0gMHA5xNYW3HIhZnfRUlSf8n9Oam7KC9kvpWbpknNRN7xVQd6yriEwXDbK4Q+OEnXzyQZGWcrGMWVhYyg2+qdVirowzbawV1WK557Lq8T7L/hnttes0+IPla+oWYgLY8iQTIEwSz3b/6T5J2/F37b9lvUixTPa5/JeJ2sEDRjBv7ISaCw/uNp9rWsZxdoyAqGqfMMZ8j5WEP3rXqMxUH81Tq95EFCnVVZaIx3BIo5N37HAlNP/sBqQgeY2WzDmvdY8/+VgJhb1Fr21mX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xJrdiT8ngd0zdnBo1pE/a1FuwEimFiwnzeDKXG7s42c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mJ2Mrn07y4xl2CB+/2YTvkEfgqbdFso25yT3V2cC75LsUgd0fjarY1KB7NtQwghLg1qBb5UVbL4ZLmwCrsn+7MVg8ZfGG2R94pliwkBQH+ADHyCFFPlwLVCL1z70UnfWcmLmOGUvvkLX7QgJm+RzyloBARfmDmtUCyzUP/fUlgMKEyir+jdytwevpNyGv/JyDZr1OeE2CO/SdkIhOHRdekUMdeUHcHZWq6527QVuVZJj4Q+AhTgmObmA9l8gaAFKDG4LIQxPT/RAfPfm2XC3liQKqVXPqn6hB2BNOBLYKvhZqZncVl9gAbrcGDCKXC8LlnYg6NRU8NT/eGJLad1A/wUpJKzCkckMaO8movzBJY3QOL6Hk712O1SwUf8RJug2kfP8lfN2RCyAGTzxklvddQ4xzZGch49e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xMJ9r07cP4pYLGfecpK8719glgDJAJj9ZpJwlk+ueno", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KxHVA1p5Ebu+ILuWNuEHp2HAKV58jTaM+MqH9a4cjb3Hkakd6jaao6Z/jqeC/30p75Hwnm73atVixvZFYtwI/pRdd2DmrKQR/6fhfjOF+B6oyQILpM09jIxT5HqQeYofWj4MRl96LSpPtyWWsOs8WcCwM2TpsAO22emoOi8DiXGXiBzA+ItCBxbwS7UvftQZfqGklaXfWiwEAw66OyPIMuECEi4MyuJsuU8ud7C7FUsyrTRWIwsOIBJ0Yts+Y9da3FjIIuVrIAgZEO4hxWNiNAedYDyXdt+2CzVVitvhn6XxliLEk7YEXe7OQg+5idwipAHp0o8vK+HQjAIqLfw6aBnrJ24ihlZroP1e2/R3/Ova+F+UdKKVCdbOsI9h+rZN5WdbC4wjfsJfZvR/1ldSrPFJFJlGNMSH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xMxdq6RJNXv+3cipkaFjREX47WCJzP+wvxmQfuL/tBM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rTFxMPX2kLsTaauJ7iEO8SuwjztZiwGhkZfS7JWW0EDHdTxCUhFdmjiA/VXHIgK8o3MouWG91AsGhWU24wN6GE1IN4SfXiljxanGErlWwMAw5IqWGPjK3MlykhHwLItSYYcEQXTCeG37GY5qxJxq49FeVm5LWKVg4wX8QktJs6luRKtUe50HJJdDWFCE7hAk+1WWxDaHJVoga5g5OShOiFr3W7zKsUhXEgPGLAKP35DkYmF5pNSiAAXGvceBVdW4jhS8VASvF5fhJVImnuDu+e39laonfVByj7leu5lVbI9HvjUWJEHZb0cSLWnIkSJKKXAVySn9deUWutQMNcIjcJL2aMbxeqUH6fsFl+4NBYTkavk3T1TCrDqWhGQVRtub+zsWFv+xdrT/G/xGhhEkE/62Cj+s8g29", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xNTBw2A8Ybndt11FZkMEplJGEahasm5Mqh1456YQ+so", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "s+XoUTYSQJrk0eNZH7n7MsXol+vlzF7tP5yRSC3m0c895Lvp4DoIvYjS2OEDvuomDSRxbQ64gsRfhLShL1UGYpGAtzk1AlhaHcVO4HqqRjFMFweVzRU3UY7QDaEM2O1a3aAuxVPFX4YBXBOBqVh0gffmRxmf0XGJxJjPs1jfoGq0WHb6jyPQqBaFaOkVDL4NBYG+Nat4MnqO6URP97j7S9QQvlczk61N0YoIS398d8c24K5XKAFDVD/lfqGypF9vQrCgjXYEA7gkNCvFBCAFuPg53dEUCCNQ8bt0dGII1BAhdjbQd+pVy3qCahWqLSDNR/7LbYiDOM4eT7RWFKIgvGCjHyo1n6N7spQa4EVYiZ5mJ15MWd/MIaTvgj/ayRjNm2Hn4rSDLr8CST1c3jDufXvZJETVGJO8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xODUzRSCiw6uwvk4yAvOuj+ZNAx4YdfE5Mn5e5YVROY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OPk0yVLrMY/6iYqn0LNKkWrhqDceNzwESKeBycH9Fs1j88VhxzpVirLm1W/bdSI0js3rqs+Mw+1WMp/ayTsYfLqONwiF16gB3fSYK0+hmmfRQm+ky/zXpFyjD9LKZ7t9cscUnuFqkXIY4nVnmsJXizOpLZcyq4ujBkiFrA7nws0TXGpdghnBunZIN35j9KtiWLMWiD9wV+Ht+CO6Sv7Sjrpk33FUlLbaHON1nGPGNo31JXMqTP1gOC+55QbIiaAE6fCHItcWs7T7UwM2FVYKwfkrUFcOPnTegm+OIfWgNip3lboWUaoxcbhfmZNO1KgAHabEyDUY5eyeQaJlE6UneiGQWv/Px79Cojij5xFTqu7ruPilQphWn846nxUIhN+ttfHyIPGlF0dUHD1ag7Ac0qDu5mgAcTmq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xQ7E2gE4o9ovZfNnPVp2091L7YUC3BraE1y5DaDdFcE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PVLEPgOaV7sj+XJE6S8VXQpngHpRw1vtNNqnkxmoNPukY3Lpcio3Y7s6AcER7cYTUED64EI+Flt9+Y78g6+Y+yNEpWDAGzlfEvBt614G9rhGnC7rkpo1FwlIRQ4yffzwTBwL/ik0rhNnAuEFvz/5ypbtygXlsC8oPKoIoP+FP5nh5MMF/xOkBkEIiriSlatBjk1fSWdnpWLJx771jyhbVoIQs0vu3rG0H9xI3FAWPjiXVXDe4Maqjj7vIQjwv4vQbXyhkAtuVzBSbx63UgiPY8gKbpZ2CaYWzyLPV1KwzjPCCN0uiTihSomwPgZpIXrOqvF+S6d1GfugA3EjMWHppfM6jlpA6VZDF0+rMS3brxKGY+hdzBqopRmbBSh6B64mz6H2rawO4VgIooJC+ppzPYpwRuk0LUnU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xS4yrsVLt6OmTrRLJdZwX2ScMSlcZYt0QyBhXg91Ckw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QZFEokgG+TpVDLijN3ger11HChlnXTinziGgbDzXrh8DMaGx1C4NppqWpeHN4c0C9uo2QqU+1qd53w+DBKBorRG1WlxefC7Clk1RQsTP0glw213pzIKvonnV/yBjkNlYXP9tzKEzKmE1Osie9Ul/WNyIJIe293CpXUuEGABSm9oqALYFaiA/xkGlXV3BtR2p+fZN3pveZxYsDjENkxs4H/pa19DWLQZ/3W1AGErTHmGQLlx6zUP0m4pDRyQyuVW73yzK9KUPV6dHTChtXZrfKf5aaMgxvDesjGlRu4zvuQUJ6abVK9Cf0PLuwEu+GjjIK2Uf93qH7WGyxVXmtKUhXj7kswzNS/O59kTK5eIRhAGerPvH8fXIFSKH8jJjbjBhTo+9zyie9So0eDw1wUCvM7nlUR2x9cRW", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xUuatKAC3wSezveRLqVrOJglzYkR6evS4DmiHVxwa6k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tiov4n9xdsJf7vf7ms+6cgQGQ949lMZFRUrIVlhDK9bUBocADCmOmSCsSeqZp3u07Nuh69iwlKHhmX449gamR/AQwClit1aJgY9z4vMSo1gH8EucD3cJCIgYmpmC1RTjwhvYMk+TOPeoKFP9blQqy2gD1jIuAaQr+izBHuUIwLSLKbSglksedH+TckcPooGHYOmVDFK4rr0kGjYCpPvgEknPEyC6rmF6p6pxkGPEXUvNm2qsGYOMg5c1iN2zIZUQGk7rAYZcTnFHbhnk91+gNmkocoiAaEu92ev0eVJQxCFq8+CfTuEIDKG4UkRjntTY8bbvu4R/NB/xXr1hP1q7A+MUM+ny9ORKuLozLo/znFKnBj0MXxEdSdBBPjZ9paxhbr2c7+pBPvF7CdN54G2ys2uusjUTW4m7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xVO2CrMd26Zej2phHD4CF3zL9NoyOFZAjl+FL6DNubI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KSBswmLmT2PCjbqAJvHgidV4vcPKoOr6Y7nHfQAlNJw+WQSA4L9iVl0ifrn71AN0YGtEpYIq/enU2HYUTjBgbxTqD41msvsx46/c7pgENj9IVgm6zsPwClxIU1XefRDGkN+DRhUhZhJqa5z5kThM4bbk0rt4/qzdpfV/PgNMQAeNOWUc3+Noyx/tuVfkR7irPtWRUcBNKWbqlcKhj2uxlqxspFDY6h4Zlwd3bb27snXu5tKvkN3lsJKA0miSMlkKqfH2cvLsQ/Qr95VC70HraKWNTMDk0vrq/JUZNdVeUnIbfqX0em7eQ+NrLoOXTzVsRbbimF+EB0Ju5CTX2LbfmeOFwGijBj8zG+c+PPsgcWlOQoFwu4NqQmIpdAk7BGVPYDlbddz8UwAEloXSx3l92lyoDl+1Mspi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xWJa93qgGbXk1X+AgSKHexzR8WRxXUAKkPJ3fmZevdI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DZuHoy3QSkVI0cKR7LDjeB+y4szf5AbDQICgwXRSi5rKfqyScNXgXZOJVQ8C04UH8AEjTibGRcpVS0xjEBEh9iuIfCr2z+R0s5ZEjwfhx6kZOsnjSp/5y8+edW2EoVlpc6JM3n1vDJVgvchSt5dyU0RFWu6cyUA7eUj8Zw4hzdvFO7IvERj17jIkcvT/k7bxxUFzm60crdGBW2qFGOGg8f8d/OxixjSzFUsSkyIQMl2OsYnDSLpfKnFZO+y7IgfGYGuQGDVMZ9SdI2rmq8nqvfetH1ZdR78gYwUmSmYbX9EUsUPcMFDL0MK39nvh93QvA1nt0PXPufsNNnsV0iJWstg7o0XoYl9NDlKu9GBzgZ1AC3NmBmcN9BpMALjhRWuPdm0ygN0CT3UQhpUOKoqp1rp0okoW4B0l", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xWclPCgv1x+MD8dRVc2nM2UrL1cCCozHgNJmjxTXgGw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c8iIi8kLXUOOBT2erIfCei+UcO5a9qcQDAxhRULYv6z0H9Sknthu77XLjJOf8KTqlhBgpvaKyW9r7Ws+0wqVvy8hBJijxY2jpocYKwccHf+TBcAZtvFyI5uzjnqSWUtZXO2ovj46Coqt7cyJhfM51qzeGsghObzWCvtm3ac12pr5upDNOAetFtskki4sO1Z43bGS1NF8CQWhDxWv5XdKsWdhcebedTGdXy+8xZDuZrt8eEYfn/nhAY8Wl8zBBxlSmylpem4J6KTUZx18+gIwYJxE/tea2RLGcPMnwg80+k/MrthopjbkRwvFUgYqZb6V3M946NNI0/CkovleY7wfDErgjr5uyvOabqtsH2LZ/DqVy6AUpjhOyQELDq1KoNolil9zwCi9ZsYd9lp7hixGUxdgCWvZSXCh", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xYg6/kqRDycw8/NuWlLiq4LIalfSEvuyz7Z/+NCXcj4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BR2n4SpMkUPdz84kG1snTIfbQrqLA3+y/Iz/L4KrewlFNbhmYpoVuMapLwzIDioIj40N8PO/RLrP5GBcMTI9fH1jrI8b9tUv95LhCOMBtTzaSrfVkS16IOzXFRF1gZkXPhiHUJa2NE5hImb6SFoHVJpXvG7joINvaS+blIxzJqKA+QPR1qDcQb+0bRhA2MKhHu6Jl9UwgxUS89PofD90hmUoYhlBGcZYke7XHKEionTlxtHaJiWTafE+9kVJR0HphxlrpR/yil+ZKwj4CLD3GOZ4VMtrHfia0Flo73bPDp640zqVVDz0/fjm12PStzy/YPLM0cmP+AFkru8VSL9V9F0sICbuZC1tv6QzK0oJTz75Us2DDy0n1SjNOLGnbn5+UWamAA6pFqRexGQSYd2upGLigaFZX6zO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xZAO74JdomWQWEwHd9ZZVaO5o2i5mhb+NKcKPHsb5Kc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YDxdNz94d4IuTcO8MbgRnjiFm58sHRwHM32dLOduLC0LsDLXZPDZvHzOkXwLSIhS8XoPAq4a3zxlhAminHjv2X6iZALAW2ACneuBF1W/09DHl2xzkh1tBmQHG6I5HonS8fV/2TRPhxO5P9sJ9ELzqLp6H3+w29hAJfsnPC2IHyjp2Wf5Pd8rWp0/0z2K+PxlUr2IjdkEytnjsDcHSISbWnixlNgOjDcyy0eKHXAhIOZUElY6D65ExEa4SR5zVmGgEvGLvAO+yMqu5ZnAFrJ3gVzLWd/SjNfZyKmOWUJFgvpRKHtMWUb9stTKRAERoAAlDwWLfi+Ifu2aEOMUUxv6cMSIshjw3EwwFA4eWyqh9ZjMlHqYtEGBluCM1Xg8pTlafZ+lIx1gCOUWPR0790NkR8Bw46z+WtRq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xa6Tjl0fGXExyHLBwBQ1YJ6sXr/0blLu3OhyCcn1bWE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "C8+0V9SNdlfvQPOuqNdl2ax5+7o4QDt3iwAmIJ9B+D35S31x5hi0WjDFVeg+V0ga6uUoTv2xjHmlq0H5c+VV4oZ5e2WRFg2rNetHXrgGadOEicNukfaNlSWFs9oS+2J8r+sLFMc/9UiLtOeXRqUS86fIsII5CcRYyZzx2B3HelMsK5yK/x5Cwa8/ChYIQ/UlKs4UciHt92n8LgkMh7L85cNgkiOn3bpv6xsVk72J5Pg4bTRz74SYzce8nfp8Clfn66KCUxVCN501XVfHCCKdu1mgIprHWYaMnvEiVyiWX5X7yKRWP9mz8zTGD0i6ObT4kO8Hv0yl0ouOoRmmS5K+lgZFwEGU5OHuI7VddiVeLPpwtXBIuuGhf9XdGXbQ6drD4IPz/uSiTxgfPmNiIHfus7q09Uy8hqs9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xaDifx78TjU+qjB5G+Vzg2rCAE9iONbUAaYf0MFpudA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7wwNcG0cCWW8Oi5jjLKpkAHVl0lA9xISRmX9GHjDWIA4JLqDeSDzBZiSwqPi9z64AGBepB6En6sA4LGl8QnLyjTqsTHiJ0Cr/Uq9yqjoAV9ozrmczpek0s3XzHTqW4CaON6VHkOLfbf96xqTZKQvsUTRodtfpC79Y6jXLuR/ZYTHfYIM1fA4JSodd8qtihcPiqANNVLg0qrOw+nNdqRqizBc40TMFLqrOWww3lnCJFuR5QjnXCs29SyyOI0w93PUtoj25ztw9hO9JX7slo9YJyq/1qA9KwniVchPX3/sOQK8qzrbrRtEUCeBurbtC8D8J00ewAc3sKwSAiIQgBh6TToAZr1vIWsh4NWN1PoQ364lRkkTgtspfEcBMuSvuzXD02kUV8H6jSa45uIq8YWMajuw2s6//Io8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xboS2trmHE++VcnVE8UyVhb/6NjvKEm+QEdtQH03npg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kQ4OPYHmgyQYsg3j2Ljip2ziUpEtVxwywUFZ59/alyPmRDDZ27i5TZwl4hjNwzmzavk2iVAGUSLfqryIcrchoIfUStLaZfzIibb9ExLuna9PkKoQDBALvakKCMWxSY202iLnLICWVlKpjrbGOZYiO4Fww7Ki7COvRJqQqC5ZqDse5x/akl7qK2mrnLzMqb+UnMhvuCPjsfMbOVHMwYWsNtuPbRkg39/19Xd49TFpJfS7dpb2tL2F9qWgpNfiij6NOJSQnCVJEDo3z/9o82e4bHdVG/+wgp9AjtI1K3D5TafG8jpxPpuN+2geaqk81+1mreAwN09eZv4NaQey3xKmaVESqMlJuIc/z0iz/e6GDNcT4Y40aZOlvMrrAdQXkuVvtOaumpH0dMbk8sNg/zOiiy+R2i6ZjT0/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xc8W78W+dO7PSNYLm/DurkVlGVcfG4eO+8xquIx1kik", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hRYdYEr0pQY8yVdo7iuR4eP2mW+IqecXKXs8n1lpcuo71FGYSM1LA8hOznrUgtwUAxA2+o1pWHC02sLv7nFCWnymTULZenyglwTSwoeqrJq8xDgAFYuEgOD08CvY5w99T7EXPjV6Q9v4uiTmNCG0oXi2M0LAj7/Liy+e15NCEMeeuNmvbu/+X81v8NINsB+k1PERGb47JXy5dLkkTTYIaoUkyuBUAsCoc0UfRJET0idFKq3nym/JGIilM/baxK3snBIUQT2M8mEyO4kfBZmpgGHxu+YqduPhvrRx1Fa4ibH2H3DyNEzLdfFakQQuph480Z+bSzQ8QgHKhtQG5vKmmQWr6wpadD1VP0gujMUjz/9Exba+fNcKN7ULOxuLaQsqstGT4H/HmTle7a84mibrUoFsjPl5FgSs", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xdwYtz9HW1+oCd5K+93s1ecd0kP4JVBpa26D+ExTDTk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "uhWNSI/6gNomtYt18Ilms0QfWpTv0TkQVWFG/dH0OuqheqRCCg0qmX8qr06Pz+lQSLFL22UCora7CDjnmuNyePiwWXvVMLr3QqSEC8A4vyAXPhZ+1WD3wwKxgX/2tMX0OXWzbFcocYSVaAQ01pPIKZw7OZ0mpfHHx9jO0eYlcWTMOdi/X6dXJsvMpoiaVT/999xv+aP0vMm3BvSXiOzba5ewzqd1wHYZx/e+M/fQeaDwexqEHFyNRXnMcmfOcwr0l9OnSg/Ne3aLvbeKalzdF0OCOd+8lgzBY2K1OM6SVDxXwehqR095HGMQjOrpwOt2LH5HK6QPky/EWTbMfinSV0WdDyV092ICI777ajwrGpNmpS8kOirjNX9LiCHBOCB+Ko63w/YXS6jEJ49q0nqGQwL9Ni05K+HY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xfNarmAX/JrfxkZYCP72bT9ZzYPY/GT1/um4KWwYfiM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UjBv82XMAAS/dtu0IFPGcc+jchxruuQzriZjdzlc1fglmD9TXQxL6m1u4Egh9qDNw3QIM13AKin2PrTZ3znG9cIZRpQXJntYAsD4Exjs//TrKJzW3/CsOMFn/Hc2PjXnRWpyv9UV5f9L8j5aAnS3Gj1wt5dEDAo9ztHP+hewbP/r6dUt8jA1fithCaBbBEXcYl9vdtmF6OOMITdzoP5RCkZ7c3IvG+BlGRtveMr+PAnbepCGcF3YExbE60NpkrW5jsjfIzCJRZTDk4V6Bmbe/VVyxtRtm7IpmKhYGKw8k7ld7oktpfAynzLEwggBDrlPRMw36jeSpCFWwFAwXInv1/3PDx+9HzJuWA2nvGTHMmPVP896Ud+GWIte5r1cqe5ulTIt08IMW2MjvzKMUAHiBL9ZXYy1Tcci", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xg93MX6kcbMvh9bC3Q1Wlv73XddkJeHoAIdmOEccPfg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "e05rjJIrWNxFEG+6vx4H4M2W6MJwssJjhtB+cMpO/kIbZfhb+WllYH8/EYTUe4U5ZPEl0pDOav7KiHbQeHHfO6PmkERau/S8TdODNJD/gWsqQFxTv/ocRpjDIdgc4iXYXF9gipDTBpW8WqNkrQg7zns/AAfYqyCM/HdReYuY/wezqjeSJlyT1vvDjzJYeyNLTav7JqtT7186VyF0aCvKwF0ZOVY/txhj6djPbAjaibjLGGuIJG1TXyp3xC+PU9L9MrrXsAgvJ7Y31xszkzNy+qFFU2TOnxdmG69A1j9Xi3qXwjHpxuGLrZPkr7csL0s4uh/zlst0FiouiX59rsPYTlP50dOHpIknbs+ytGQJOLE780av2SVfQXja4MR4DSV5bGSIQxdGJ3+UXjS2iPAAkIj1C9u9SqH7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xgci4EZIOqpXVEA2rN83a5psTdz/rcxipJkVXghxLn8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xjudMrQ1qqdqiLDvMp1rJlzQGjnk8kvvLtwcNWqm665azni6CeJf2sQ44To6OI4A2IugVTjEGXRJGXy4f1vcmRd5LSNhASP4782P46b85fgMfMZzK9CEO1MKtuasK1r5U6robMW1c7OvavdzyL2BmT/nBTh6q/I6KKcz56fOhch7xfj50ebmycRyZTEuWN8MGDQ+bxo5r+IZPvt3wV4v2kUW55+Z2vMnOAbkn7ABM9jvdW88TqpMtUJ6L+JjIlKL5p49Cah6YNN1Bf0NxIS3AG0Y1Q3UwIps6Vo6h4E16RkmkwAD+vacjNrAhoGzvjp5YgoE1Qy2rMZXWAYUN7pJWRAnWBiK/laGgFzJDA52umFlNh3zXqagqZkVrRwIS4L8YKb3kon1XMchGEXbh3QHZ4bYxh8rhPPN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xgpOSvcMUlH5lha8utcFG2pQVgZqB/3i7/DYeIq3NdY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "c6KzfRI89w+i5JwrNk3i2HKDTz+K+zCevtQefKAQkhdy1z5JyeCE5MIjkI5GqBdtOH1rJGY2FpFLdXeH/Yponq7PkuHAs5dSUHrJayR3xstSBoUVaMta0eEc2bhaxzgVTS9QKF1q+NPC+cQpGKXzPydWdcevH6I+rShNXRe+qYreljw2jXjkuxXv5tpW/8xbFyl9E8LOQA6IQi7az2oSDoK5/+C5KPTlzEZTh8bRtS2vP35bEDg3N1SZIqpM+jD0yhdOTIgQ1kscx7NjZokMQ4QZrh+2H0MznOnMjElUJ2pv3pBVkFuqiyXLrCduPQ2IKbH4hvnG0e2txDSxZqFjW56AxxrFPI7FdvzJmjfy9fjaF1h1eUJTbMtJYYEENI09gTum4x5aFJsiim8Lj6Mlpwfi3Hue8hSK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xjFG3eMsfn0owuk2AkRbk3lmPkoF9sGRVjieo4uxKtU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mAt2q/IZehf8jZwg4YCSyyLM1B/Kc7RGtE2ao0nG8m1F78T5BgG3R/gMhZlzigJzVdxuiRX/kieWH+smcmMt2kmfOtS+8kFUKXozZGbhzDtTvrWnVyMzxvNaAMFKtSRgJb1AMyr+vb4VkrhRINLlo2OoMjyHBtQi9RpfFWCML/YL/msSmkFlReGmqhU/Ukmo5SiC2FZwCKzDzGkSiTaic6tWzJGPxaoff8V9Ol/5RkFUFdrM0DbE3vylygGip1ZDZhZiDJZsQwVS3PEXSTnAV+gd+OarjnZBtjd6CWhXX5mO0i/kvoSfxi0u+1ZUyPehDvVvJqayu/p945mozLZUcpJngvUUBMx4+MLMOw5XG41ikR8JcJLSYT9+u+CyB9cul/2K48c9I5X0tu/eFvZtSPl5FE0tESAt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xjIoPce6sg3c0A+B5nGZi381QFmej52dLHtDtG4D47w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DPIj71l1LuTrgn8PMsXFdLDIzOwCBW/22vZbkRd4c4fy1tSSk5XNqp3LbGBM/AKcRoHL5WCKiudntBs++AC3uWSIzwvQwKUeiXsd2R1jvhJs5tr2Kw8/Y4tJrgLzug0hIvOSFBPA8910JEJCJnbgSrrWF066MGuTdXsUBnHb3i7kLyp3BtAlDJw9HlNEj4EqPv4KZYALIcoEJZw8H9od/NLWsTC7qFg8aNfNxcEBfQe9Vy6Ji3BSCLKox2chFqh+wnREUuqk3RObzD/nTcWnAsPvxRzw2clwiCB30nUMsWfb9ZPAIrBCR8iuzAa+JiX73v1Qdi+n6zjmQrfN2EOlX97hgyT1ksxQZ1aXGfv9T/yjp7CfX7lra2PVTLtMJbE+cngqTaJJb71G7HT0GIQDtCpsO8YW92d1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xjkW86DwmIczIgxPkVtqua2d4gFtaLje0q+WEMcotiY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AdMdFVfNjLVPOKt4LV59X2IyDGLfQ1fDImciIhhKAzgjYecod9SpoBQoiLBSCOiyqJH0AuD0qKDOK/hHOyU7jbCcD7hIrbCnCAudjlK7VAo6QHuezAlp+AxTgdkCivgXbXpF2s0feroD7fOnrn6p4N+ZvARBI/5plwO5gYsbkc4ZpChaDIRICCFPuFP7dL8d0JXHI8ONFjgC9WGKQE58fgNpPxLabn2XBW6lL5LMv4L7ymlqful0Woy71IM5eqSTYVYVhq4aU1OghfwLjsUxG+bXSagTaT7csLy2LtB843HMgyjdHsfjZYTR+Bnly+FY3+JlRyhodO49787bL4HoHDfy5bB5+wFxtqwXdFcFBKyqJ69ATGuET+Td4S1zFKkBtYnoZ5+nZzZxXOtok/40XW53mUL2z0Kt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xjmwMw3SBzqE8X/42X7vl5koiDb704VTRhrVbDvp3Qk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "D7Agk9LkCjmewWVszads/S2AJX2+HHg9QmjySCboL6C8uHlVnZScQko4LLXM3N2M6mMjxDLT8Opw5ezvRH899l+59Sg7v4IiPVu0WhpFxuc+e3k50gmcV9364cTRYN0IS33J/LBd3aLGVWIBLLzRbtrkCj9/QRWXKfBrXb9uJo0ypjS9yKoAYwZNTZQI1r2T7j3LUqvlaL0ddZO9AtS2zbpCuQzOEeO9DTjj34e5YlwKmUM+yAbKY1ZENseBBbZ7vbgAgtuy6vfOB2f48XDJtPvyWg5z0pWI47a1eamUb0I2qx4E/5PWic0Tdm2V4JV4tCPJpPch3jlflnKlgj3Gr2mOIpzB+zbt2VYb4d7x7a9A0bjFbu+eGjnAXzmHLsHFjpNWYDSSFRBQSqNHljLU6E9EgzGum6wH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xkN5rdUn5c+lc4y6v30YSDVKTi2GWv4feG8YY6l6cjE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Nd7Eva1rbEwTTAt2xE9qxZB5VRz682KnltZ1P+lP8BSlfb4wDUyeGl4tbXih6LhtnNimd622ax2vZF8xxIhmFy+Nj7a7iZCatUl07JglrTxYnHEMd13ULFKpV6FU6InPW7AL7NmT1X7IWHOGveD7Nzjfg6SGQToVKGepEYzuNkoEW4WeoY2XyQ0V8kTyhH6FqbOKZ4WZI91FgPHCZKpauQ+fqy8ENxVOzAajbGf30TIrWF5QudUq6+EumGSG4BP1Uf1ETG9RLxVAE84ceXkd5keP0vlB90VOmvGQ4k70kTCHD6jRdzRAHmwKZdSjXZfLzl1u/uP3eyBmx6KR/tHNBAVleeqkNtfDPAwoaxPy+pyJyN8/lJT0mZDZQUU0wVsxofIDTcbxiKeTqeQhtr1e1B3cMvpR0046", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xmz5tV5VAmFe5X6FPUafOTGkMuFz+ZPL/8wlYn8wF2Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qnRuVFQIq96p1KTuYsFB48GFHf4GDQBgTMGbpOgv9xgS4ggmYqmMQh9wEJLiF1Y1WhSL92b1Ksv3IRUYYDqlw1G2pAAz+HW+E1AXFTgwZcVycYpz3fAmnOlYyekb86U3AWTDotvxGYwao/BYEwTza8PJvpL4g34Jz/0xWSd0j3XJJPFzHkled+0vIXRPrqrn/A2j8DgSz95Q4HE21W+JlPFeGVueEOiLO42a+B2D/X+w7elN9hOF6wc4P5JyUEncNjwJ1TZP9NNkYyXx1I8CSwhjVsG2VjC/vm+V9vPD6OI2mSpmagYqBEGNW76tQgn0FTT9Ski9CwvarBxLrMvQX0xtTT9c+UClNTCMlLCaLEp5xbSQQSVzQaqpiXQVw50Nz4gbpyGgKACWuSAFCotWHgwMp6mhjOPi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xnVtUQae2yxJ12CwwMFbpOsIQ0/08wGHQRYu4nosKwc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DReVs1r2HztvDPpdWGrWRlgCc0cWKGFhie6KyFN2ZDL1FWtdRpXEGtuBLkUgLEuR6sWTRU0gTpd6RbyoxDZeyT6W4WBUuIOfK0OeamShtoKecQXG2XHiObFoCzLn2xq91qH42OMK8etQTlgryoguHd/M9YR08P/RutRcZ0m+dzxPjwVOE5jZVG+ySyv0R1DmT6BQrB2FXwaJm6739N14VWES9c9EqQRoCeD6GNQMPobwHQqP+H0/NTULlBAMLSGrgsWUm9Lh8WveJOlYG6zLygSfi49PVi4YlZYXzEFTalZjN1VPEGFRlEOHdvVzedZ/RRaY+YjCRfPSrQG/6XA0GmGNYtqZ920hnM0w1juvH6ssGmKn57k+RvbxtQk/GGGs5m/NHmR7f+pwITNLVp/Ozh7b7GO/z75V", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xodrkd4DiN6FqKGUjvekUvAidSY3W95xd9TNI2kDgw0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/FqgPMN5y5ojNqedSiAMxjPhJrzgLRnWO7lNTB9z29hgqYXjgtxlkAd1LpgRf/wD9QjdaYUd/eZOxlmm22o+gDM5DnMJi/mgHdiDcJxm2L46uewgRkTFfmq4KE3eMJoigkDlkYKm26e9z5u2hC+aMa8HS2is1XNRcD26p5d4MU0PLwaPziLSm6Iy01RZWZhs8Y6QBah9fJeEJhQGnmSwKkLsroQ9kOD+UWn0kip4DZ5QQ56KS/hgn9QKbzE118Okcbin9g7twt/bKHog4of34m2oP45WxwTPHHUZOc5ILYui2CC+8eqMTww9GP7gR0FF/e0EqiBrNE7vg653eJ1zxmsSgDXc8bvb8BBxXCzzG9esEUdAeHUrNkgSfp5XaS6fKshcC1oHuhWdB92aJdK8u5AV3zPDIzD+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xpq2UXGtoa0U1magionKQmWysysbQKiVpbbKfJe56Qo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VXMtVoyZEILTAut1mw0BlV5xvP2UreEWbGJqachuyfNz4NBgIdgJSk0kl3hIWwpPlXpdT4ds5P7KDaZZxGnL1gaBQqNbygEWvY5ceDeFw4d9s/vkM/5x6uZpgkuVGHVn3OzCbDatGvFc8gQ91ad+p3857xub4NXwLNFOcF8RQ0xoFrcTcB7qB0GpOkPK4ndgFJJohH8eJNujEF9Ng7CzJ0lCRgD0MOlIiFv6IdWFlU4zQaE3S+6COy8uYrXuPbioIt50BoHF7EFYqH+vxcc0zDWByN5PaGRWBsCyVfnharCST28kiZon0q8T7zS1fPc5bQvvtreky4CBegmGh+3d3PUcZcG0blyTAyq9nPDG9faCtqIpuluNvmj8vEBGMG10maMUAK5puqhNirkSeOa5bme3g+1vaueV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xrAhRDaEoFIByd3zzRv0J8QECI7GIW8KtuMt4W81gQg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "M1HE0AhkKpS5LwryiTWlz9zSjhjYWNboFdoW1iF8D5tOnSfXjom5v9HsSrfsd35USnM7Gha9iP4S6oD6sSdguKcVhR+zWxU0FmeBA5pgTqTXqztN5hQ7tEItyHhbBqtqd6Cs4S3UkHNejf1mvfufJWMETubFED6XBVb76IQCmNcHDLg0yWZxPSqR+TRTThv/USsMmDuniRXKtKcDHbEWUe5s9dr8uh2DBZ656TAxr/7cqCRY4iUNsOeQXo5dC6HrE9HdKwFCf+vE9Ajtqib/2+eUAhhCJh/TgdnX1zPlEHk8d/qN8j+ppOwIxEHShVlJzZBgGkWIFPHWARiEyS/mqS4m24NoaZo4SAXEakA1yntmBK9/Ib2LwOatfcII892lhcWiS8lUqTU3EDkJIhxd7Xw/qBZuSWGX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xrI/5lWiOY0ivHvzEgdGKGB44QBpDMur/hrZ0G95Bgo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SmNsr6v0CNxCWi3o0W8ykCQxG0tKn8H8txaQu2peE1ITBSjsLPcE6BdM5RbhXI/Ue8d84OX/jx6Ecu8+Qp6nMVUiiBFsMQEJP26FYyW9dbl+3X+ILjnLHiB9aNl9GcgTeKVgUjzU6FB6FnwvHdq3gs0qOtu14OpccGWdWl44jdgGsXoLuw0qhXwnWs+sUiWjeVGvNrmFEO2f88A1UVYzH5iB7OnPaBdAOPM9xAJ6JYMV/jbCmiJTaOGnJqSxhAv6jcvk0MhK6Zq0m37yQxOsEhZPp5aZuHI6Pb+iGQvkabc7reRT+ulqyUu9QOyRszTdo2RTRuAMYMGEuBjOJXbzcdn/ehZe5w7elTH5/Ij174k3Hkhyywc7JUQc3hYfRSEe6ImrQQ28j1nb/Qd9dnnbp2clM1892e1u", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xruyrNwExKTF4uL2qkiM2JaSpof+6UOkNc/nC9PPyEU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+Jo2GYZbwA74vy7XPgjhYZqd27VVqjuybfr7QUAOMn3AgkV+vJFnOJEQLn+nE/nryM7wV3HUOlTP75XFUFwaXl95rlnthuS3fedqcU55XHhusqfFn3b4+Jp4RAORd5cG/FxSSF8kseQZR9V51XFpuvFH12iMcWdvD/B35UWZRbBrKnGmwQ93cqXkYw3RKAPlUsGduVcVGmTP6csIv5bVAUZL91+l0lXIEcahX8pYuuUR5ALlwy8ssavYl+MaNu75UAvjkDUtqbIM2QP7CvDNwIAYwc0f4X7LLHvFzzDa9iYoqy3PaKRbqLkZF4UL05v05f5JrF1b5jr00mTknnPA0yQdZNqybRDDs8K1d3UktEEBbueF5BryPjK/WbhiWOEUBRTfNYZzO5jiwVaFB+dHrAvv6PeHwAaA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xtEwt+F2xuTGlo+yes9lclzT4F6Z6YZr5SK7ET7KHTU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qtq/AdlxbdxdmJRERXWTq/5BxN0Y98yJ8GB/KxXXmJFxhFKfMg7zK5bhlI5AmTTCPQ1DpcnStYgH68+jzsFgJkO93xuu/bK1cPq/wLZRpld7fcn7GYoO2GynD9FOQn8UJi3z8HsHRGVLTkzPzcTtoi+3HuR33CLriGNAyEOHQXEGe2rPwqIjrGfzv+m4M+SxC3QHyoLgDiGcqgC1/9AIE88LqDbQOnaVRVtuVMP769zSBl7Q5p7nCfkkSr9/rmOUuidXE3sOK0VExOoG5ZvoSjKMGFXWY6OdU2TxULMoIcgtDc2Dyb4arE8+9SGppzsxyf28TOsXZhlOXuPrhg+xt9Y3jtpiBJ8NcutKZ+hrH8rbHx90DKb/cgBchMfB9SdMC4i6ItQpMaYdixiHFCOesCjk5kqP7Il+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xuBfyCcm0frknlgPcnkwoJc9i1IyOFWDzS+z3t/hxao", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1dezJYybJAS+eaxAgSnqU4S2vFqKhLD5oyN+dzRNyfKPXwN1xnSEm4uIMKuaWb8E8iS/i2OweRoaCv51NR+fzclmxZqMbcCjmgSIJMkC7iKVo8gsRzINvrq9BNzLAa3jjfKKopKwQ2biNTXqr82UcKzQTnABASI07XER/WRrU94msn+WXjollG+y11QoeMKvBt0qmR6J9JULRjBisXReYc2gsplzjymFqN/IU54P7jVdf5eyrkNLnPs/Nsi6B07qDS6mzBTjOLObpUQFVFuFHz/ST7foqkG7BoLASmyodyeGozehSFau+UAT38r+6VF1PUW9YAWVhbbYPYJ+k+rvDyozbeLF0MaBv3m9xTjS62kdld4zZBaHBaBohvCgZ1O5jy8AifgXlUPhMgMXqjWi71xzkJ+slLvb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xudwOVPA7mnzmfQZ3qoHvGx3kLpnYXCUG8uWyyUAMGM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "OYxJGCIhEMSF3njUtnsXTQw1hcROf8lpvIt1jxOETVVlkuUD8bt5ag1AiXWJUL5aetCV+lI24KBnDpT0VTfc7VHvrgVW9a5D8HkkdrPZ5nkARil2vcnU9JGitMi6IFmK33MeDHswrWcYegNFh7jtkOdWJEjzALV4cwt2/lPXyP2fTcaXAfJzhGlvP6p5Ez3Z19rjO/CeHtMuLLA8+CwAYB8GL85uaj6goFWCl0GF+VH8Ya5udQEG/i4CITlnwlZxcF6PaaZZwlxiLdMZsiAkdc9cmpYf5FB05JI1jI74fgVAhfbubcHFBM9qeNAB+65yTGk/spSljuGP4I43sMWJ1AE6qRwOINiZk00U8xMUNygnXK9gGdok2CMU2ChgzckYAut2Uk3vR+jH2tCN15PJbLVA5WHlz/DB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xutLmUA4iXzO41KIfsiwGhDHy48sgwKq5G4TphNAYyg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tXW3yh5zxztWqsTimkHJDhoT9K4XiUmVF8Ce4CN8FS9FNeUGLoKE0QV5pEX1UWuY8fL4axKbNmRFZt7MUHWBcaIOLYbAkVAZimkYuASgBbgI/iW3A0aje9CDzvQ6sLZNmnU589O4WUhbyIYZGP2cYaBJF8i3MW1ckAWkPxJeS072FWxaN0WYoUIR/W0zH0Kv3p1clQPkLLJZdV3Y+8ABYjamnCxLfBjDBjfJVJ8LJNRBYoJq9kToRSJyeDF9cEr7P+XD8S4UTek1RKbQ5PriuX9c/hDD9I0U7SSIqZaPyhiyHALm+eiNr848h88B/uJVcEsfqgiHJ9IvvGp0yiBg0uBT95mX+wTKiGkPwbuIMwUp06FVdZ4r4hWEou8mGWgKtQrErpfRSSeg4KJ/hrRcNRG1Y1jf0Lg+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xvyTLPdJpNeRCTVULrc6LlxiQOGAuALMQFLY+Tx6R6w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9ZFqBkj9N6leqFBJzuRwOSoiSldQ9UKH5knGTPyZyhfY3mcsrb7Lzs1Q+XliulmfvBDW4C26gYYuH/+rri06HshqYMFiuPnzX3JMwtyvPSCSYJ1ajOk3my0i9mu9RgvSasTuDcH436xt8yQ4g0I9DUZOGh3B6SYEIBloqG5pkQn47uSI+aRcluNATLl118/ys5FC4c1dA8l6GHB5ZjkAjPy8sYW8ohjXlBlhJS4673RgfG7xxUnF0E++QEIjbvKU0kehdNrlLfRzinh7zrZH6CKHx3c8NReGpXqknnXgtKQA20iX9c0OysB9BKG0CCLWnyX7bnnIWkok2fn8rR/l4OaRuiJ89c9T0RrwYN9JBCCGoq8cpTY+v4TuKSvcTzD6SR4v3ujYKUdlYUedadvQNWl7ULNMnt0O", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xxWxDX1Ne3HZXqHcE3aYxl22fdnYzUhrD12k8lC0VGs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hs4G6P6Xgg7h726jedidyeRCAqxhoxt5U6hDV0dXAkAUn6l9FkmU3ApV/5fV+2I7xScmspXz6h1k23H7X1yzy++5krrFO46+sgZ6CDuGjEj7t5i7+CXzRJEyW1MIK7m/GKLMe9eO1sy9SyYrHMw8kHSF7NNiI7gNWVpAMkoYoOH4wM9XzKADGelfA6suQIYPXq3FdHJLPxOkSiILQNbHN7i0x1Sl/RxY+gyTjju6TGVlyw26nfINoybrZ5Mlq0TrUvvMSJG76ijlo2iBoC5ICiajXFxEGpbs+mmJkhU36/wVP+UenOuqI80idigl4sxagzZfPvYIyta4ol5EUUVeEFJvAysboPGqwqytrYv3JORYRuP4ZS6AlbG69ORkpdzp7m5PaxrDRFFV7UYgtN9LwkOmQIK/FsPw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xz3M4F5nQOIKfQjN8qVg5ct9yQKBhOGmUDK3r75dE3M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "iZlZKRHIGb4uItULiJfnzJJnng8C10N1V4fenDV33+b6FcMdzideTPYgO7EoNBMGETSfzmnPZq2TgU7An4xaIpc6WAx9muQlNI1rL0zbNkXLAO4Ql6k0ChHXPdl06q0U374gQMSMuc+nKCwnM+NqGjK3LP+bgXB2c4B0x7J1p1EuVFGMifZWlROVU+4ZdP9JYqlb1LjsmlSMrU4UqYH3pG1c/1vogX9CCZas9WlPxfSUV5wYY+rfCds97L3nBgZWWbGyLSiu7lN3VLRkkjR5/ATUOaWVsLMhlkGmgBN/D7SZQreJQlJ2jqRRtqmfCRl+X2+CPSz436J30RUF9nqfZlENk0ij+cM8f1b0SfzGEQndBnm3M3/usMRbpx+H3CKpSZMqCwmHi7Mtd8YGMhP4OD3mI4CTd2mU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "xzRAez2V0dwohhCY+pP8kT4yS16bInhoDYVHeWJYk+4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "QTvOs/12hBVfzC5anfwNunpmOjOR+Ef1Vw8opIeg8w43xw/5XgSBe+nNYKEUI8kPTmEy0ACrjZ946czDM3n/d+8XgrjVU08Pd8pz5JPVqD10P1X9HD5z7Vt7yHoUCK4DV/r6lXVR6PYc6aickvlWORM9uRH9XG7PPc+hmRWKOK3kCItnNvsJ653+YlywDIKU+xgP/4FZQL7CFWD0HyQo9gKGdA9j5LdUW6yG0uGe7mCuoX4TJ3i1cCwxCUdrshmOezOgEpnsVgyV7P4JQM/tJ35ULH3umndDwcFKkwCe4zN1QrC+/E8KU2KXg/WK60p3sui+oBXKOrlY0ki/fA+YwiQrZou/wSyFJXlXL5Jb76+akNkdkP48tbl/vCIiRVC8bxJ+Wt2OsRU1Mxxx94domOrXmSgiAP16", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y+M3T0cOVAGtV8oqnvTzkh/QYMyyVJ6LMnLY0tCOY1c", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BDbDT/qwXvfhIuSjrbYMXSqYzUzQi6m0WGkTIc5hNQz7NBZYILwZzItVrJ7JHqaU9btqMyH1VTIATaWBNkSHJHnNYnm0YesWmZBbEkJNrd5z4Cr+RrGNFAFA0G1ApayGl2ExVwKzZvA1pJ9sUMajHL4Ad63oKdUJ9V9jTDUOousi4Kl/YUboaacfAuVWHdBMC/Ona5j7rZT9/e4Z9H/LWLnKZvVdr9Y6PwbvsI1RATvT179c54S8SDj8i8+tnzt7lGsbE6HmMkU1fX5s3AyIqTTFJJV5fGgKtOWIKWgFTkBSngAbDKZJCFPAuzY/yF6jdC1LKJ9kBRN+FSP7E3OMxTQs+T6Lr+ul0Wuyqlelo49eAe//0qRenEpd0NBEUDY6rdHJ+H9F+4G4SX1/7EAlyGbTQG+o7Vlv", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y+NyAEFz5eF470idWpLjSixUuJBGrQ6fYbrmar1oIuM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TBsqfeFC6MNR2ZmfMWdu1XI6flwmD+xfXybY8t8ImeFNVC5dPsYFJdiEOBwODvNNPZ37SwkdJ+Qyi1ByHENcYILoZaUAAfTPIAATRCEHCZBYsa0AtfCALBrUpFoW9svBvRaKzMbE3u1MpPWm44zJMQPm3gjFqMGTbSo+do5Yqe8vePLKjoZxLZvPqQOmPD76+D0kJq3uoU6cph+6nio0qrvancAUvPBAnkbis64iwd68iheIXmmHuk04U9GfGdq/RuHymdEByDa3GnQmvrqqlXMn13D8xxdS8k8brnWMlP+CM6QwpZgt4canqT90KG4Ka/8k/2/yyIhZiEbz1ce7qcVoky3JD3DGovhnTJmCCJJeIbeoRskT0kAqbYx8x/hirv8DyoHmaVEd2r4au2mp7GjZpZ2MAZwa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y+VzgZC49ArSgf9HvdWM9iuu6yQmFU7tSogkUPNLeG8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rYQEL4vDmZ/iGvz4Wq2ekf14CzER61I1aZ1i2VtF3IZxSIyRMQY3hrON7rb/CHSJXXEa2scAvc0Akgd9bWFcAr2ajWiVrld7B0daA1djkD6w/khmyIWFZRIOdjDRTfOt04mK7eXd5jR38YC1SMy6ltM09RQ9/Lf8mAvxFZzsR+ZB8syL8aqcnealIqzi34jL8imee80VpBO5zx6a41Hop99K5PgfaNfqxgsE1pjQIKBmCxS7O23dGhffOiT86GGrzk3I7tANcae8UwTCzWzpjgr6rayvlTTYj8kUsLBW1DlpAkHpeGrv+IztWzhd3tuITh718Lle95IOkKEYuvGVEt+hQ3TMj1+5t4H3sCHm1BRDxNFtToo5F/FCxCDp/8a/o5N79NWLDg6p3QTxqntLsz8CGy14zme0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y+h1xX66zV2pxveIe4+VUW+SgpoSaFlRi9vbOA0KH+0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "jatoqLiA7D0LkAgryr/cregT5IutxopfhOQp2UXWOESfYN7RSsDEiGd95a+OIJ4kkifdJS3vl9kS0fsPckG0GBBrI1+BmZhAfyyywmnN2uBOJhfU8rFg1d0i7K9Ej/uVcxgvsFGgS4HqqjWPaiI8gJ5mmM41tjnYgCVvMUhWSiGVW/Dx0ewoK0DzkklJZr/VPZMHWZil43g8Egk8MepBy14KSTaLPW4tGmY+9dtgP9ilX4S0O2rHpIUGFax19ElWF4hnxBRF4bx2W1AeFZRw/mvMc4/WQOKJhq3DkqT980kiJy6a8RdPHSTG5KoyLpGpEvQsVSwiiwgNCyQBgr7EkuLddDinXV1R8xMdqOktn6Y8hFN9RLtpkDWXcOhg/WcXxcIXHaD1QFnK8NJbb1A7P8CQSKiA7tA0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y/6cYN7XT9OiWLeVO1g1XWNGijh38WETaBlGjh6gYlE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "lPPaTgyBlqy3GclHHEyjFgfIfLmaiwu4V7t0lxi+yq/kqyIu7V1Z8gAJMSGKRQySmv7NHbgQwADUcWELirmTSegHSF3Ab9YkoRvXwxwp/j78XLui5E7HKUxltdYlJd9xO+dznjTo4vs11To3XA93lI5Md6EpljUEH8k1/RVnGp721zapLDUHeX+opvDJkYORh9qoA9MRnxZpf1erdwQrAfuKzckMgo/jVmquA3HMa4JY7pYLx6GVPWZ1leTouvMLLTQUvGrVFuRSGk+2Gtesq3bneh9ygq1p33wVsqsyxLKh33qN5pCzBrRJdpvt6HLwhgsLjLQsOKln/k8jEnGhhCqI3jL9BozlT5ZAQ/1+QvIhNB/ixkz0+7esXSge4o4oFX3NJPHFUeuewUKdjDmPFJQ4KOTiiH2E", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y/Gkhmrhrk563EsSMqgsog/ahgg19vILZgh5AN+OBVQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TW4rlMMcjbEJ33quR++CnP13SEFmutn8my8MHKCl9hlrjRrxLch/UEWWqUmruHkOKQcDq9U8XzEblxbKholYq2bGYveF+V9Zme/Lm9aFZF/lSOPaX4bHwdUR+gYJQ13BbE7CIJ2vu8cKtyEf8dpzIzDXhMQp7yj35zljoNKPLSl2fAGcdbVonpVCudQ4z801YiwaSUZUwLCibW9/ZJ53wxB6rqawZ+LrEEZ9t8E5HMUZodlv2Mmmqe339jDULxCI7Ay0DpMFa00dt1yqx6+QCMgwBm5ryEu2W3l/qpzZ8PdKj3Dw5Q5OloPTpf/dJJl2noVHlbF5fWyPd9N7NqC6jJphdTLzkJCr9FDC0zGK9u3IzIrOYKrj4yGKMJ1KOqV2guO1dXZs5C+nhjn32TCpch6NIVuZN3W4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y/IQqOGABkMicKNPWa9KUAFto0t+kxTrIaDpPPezT3Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "NB4cuTvAcly7HmRwJHXWDci9AHGLAQ5RGuNO3ZzZZOwJSzTYDuQ+N+Xr2DB8ZcFI3dS0g9Frg10iLy7RX8U3HtlJnf1hsgZv8mgGKbrNwsyk+zSWQbbkwLE6NUorkndcMHWRAtNU+M/WlROUTutpbFWYfw23NAAEpug7zzQXsXyTQjECeOadkPOglQJYBxOzWvYBHN8eXHjsiYbYWoeNIszTn9QgKRl1b8SwQSJhW0xJePbFH1vAuE1du0HYD2P68cCNt7m9a0GtWVulGidn9y5mBW61v6SMwVE/YmlGEUkx6RBYmk16SxeeOImEQTpSwClfkXhrI09e6D7dZ4AAnv7KAjTerLZn2dN35RL4fyqGpIsMJQhimxrKhGy8BzOehlZ2n6XBdGGo1io1dOz7C+sR97f1JWFX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y/tMEy2WbJm38oUKXUzin+zjWO5bfMRJYs1BdQpMLAc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8B9yJZZ0TdurKDLa2JYI7QzDLTB6TCMMBoywd/imrsN+eKp05tAjrTLlqxXibLvA6ws21C83NNpU+X4ZN0U7sxdwoscLHADG33+U8Sx6/MqwICMq5P5raeh2yxcdhjXyjsGzGiz1mGx3ykPSI60vPzPfkekQepYmELEzrAu0n9Xvr+QMxQJqHfCUFEyhvJaAWI2v8cHnKYfyUY5YyDbCOnSPYb23KY1r8IEFlrVuGBERgLDPToAgR5TNf66HuznTtDCmAeqOnu1w9OoBFV2M0R8x6hsEDRTjFXauvBadbk+uqYVv21sJJA47M1Is/Qfiw6sTNIpHp4aEuc7q9fsmDqeFPuNK3IbbYiBQWKQXXwvADJRpcW3HJLHq14rGUNrILXIytqKz/ocj/TYxMWoquenDwHIL9D6A", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y/z0uVc1GcnhsVm+isFXfeBJqiaBPBX6t1ldyUdgWsM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CeCMF1qqS/EpNvEcKTbsCY6va9fJs9fDzkfjUl7Zf34ciEln8qzSMjUfP4G7UIxuENQvW+JAumz6K/uytpGNd3JgwDZq6KsaOW9Auvwv8qkhFw+PB7qG9Vc0+GHSoPfoGAz55Xe+dSO+rZ4daePqxwfotblof6/4Yu5h01RFVbP1poGHGqXvB6b9MGdNnIgkp/RSpqztRzP1ogeeFhYECifU2hlyCLtltDb9bLXu7BUvXiyDz6LVoK6TPoRrnBesARfkN02j6Z3UdbrAVqXoB9+0BsIRXs1r91LrM0nhN8cLrIDHTHwBAgNmBKfH2979+11vjx1tViG2i+94pK3OJd37MGnrBGe5ofphuMQ0yqGAPX7ErwZ1kE+xPxwU0Lkomssxi16WNb9kPc+XuS2tE05sD5DyFL+X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y0XIb+s0d6qEQdLo1/rssd/0b2nrCf7Z+KpCQt6slpY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Buta4ZT9oQ+YiyqfHTUU7/J1yWWPAqk+5bqNC4qBYQAd0pjJKTV6PiwVRyNXK64/jC017lSKRVKToj8Z1LQm5bx8MCHR0ROOw43b+DdQ4lwWON+KSz0f9ODHsxVyTfF9cq/RDWKXzonMqLc/WaKh49M8fXL+XtrCHUKt4D4ThfN4UgEi/7IJlo/OH3oFAGHE4ueObp5Q/URn0b3Z/UbdTVgQg3pu/gDVFB8Yr645CUKEth/OLAJ4ArI/PD5mVfBnZwloqFIpW1uQPRTDySbA9vrKyDP2J2oSCk311hI9q3/lxRCbSDy+AzwKtu5v1La99051TVAPJYWfwcLho0HEbIfQ+mKpKb2AMeqCNoIsKkcqbL7LaXkUp7/BpODZwn2y7hR5wZTdw3nDAQaEemNlkBXiCKFjSJNY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y2FKsw7tWeuzStXWlBV8EdZ9oj/gEfGtbjCQft0EAfg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vfA6bxVfDNo+ICLIkmxQ+N1EurilTDmOZq3ft4NrQllVR+XjvCtwjqmft5Nx+JqKCNQr+XmYnE/TNolfFJERfiDF46kJ1HG3Pi66i69uqeW5fbQDq5bcJMaslu4JSiDtud+UlI1bTbhm/GeoPnJ5KiR9dXiUxAa516QBLDX3C1SKFhrnzYmDOCyAPlRd02ZyU73wpm5F3DxU+Cle2gTkuBh0xXliJiswfs3FTNbS2rRTEQ9XGKNpy24KSWIY5xrgyMhrBCnGQddJIygRnFxiSBZF8Klg0iDUENL7AdkRcmtUtPcKsDLILxZdJqgrrqvqWCl7nSxYtpwIAyz9P2a8rgEq0bllgPKghqVWPUpPJJq+yavqH6xgsylsj5o3Jc1a/+pbBC77npoc3/6FEXXTvESrhE+MWykp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y4Bc6nIsKh/UIz3WeQ7LYswUOqzFwFUDKno5IvXN0ok", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "geGkwgM+WMdkyO5+Cl4vOEk9l33i40R7Ll/GUt+8fzXJ+J9LcPsZhu5yHj2Nk3aCjWq4hybaWlLtKJdkn38UDb7pkpHlAewwEMnXn2rHV067So8sP3bygPxqV3rFo9cTQUkmoeLnZLrr25zvK6c+h0TnLzh0eUva7ZwHh9DI6jYxBX9tQ7pMxK18bv7n1kWKu3tm08Qs2SC0fffgNU+kR3JNPcrlLDqMR613Irnq2VbTD08SBG41ZeJlxETAloQeJ/99mWApkOT0BOub4i5crwOJVOcj1yedAoZMgoEUxCKHAVQWV413MNDPX8AakZ6BrLTw94xUAP/HMQaCJcdzvHilVTvR75kRafpHhrgl1iwGkiybMb3+5U9dXz9EttIy4Dm3jSlL09L8hbjC36zCFrWpaxH1QXy7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y7F5TDZVaA3WIXfjwvYn8NtAQFTbx8/d5mFzSS+LJsg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rXnh7dW1Hy3JDXWjASdByNZPNnzbf9RWMw1bBlQI5eshGr+ICUc6/Fh9mK4g/Rz7z8uSPKfBK5GX4iFPoFCondZWRF1aLY/e0FJnvb8UiXdOJQMjkRjfjYfKEPTXCMx18t9U5tAFdazW1lWKAM1+mB1PGexHLs3TpuhqX8Xrbgdenzx73ZR+6X9w3K6pqwRHkWQm2fxGBDwtwaanCvydIFQRU89Cb2hbkv7tbbi8tuslSJqPxPJFodK9vc//bpEw0OvI6MPmj9yIaH2NNH2LsNVEW/TrCqgZF/23iB6QEIyAhc998mpyZ0Rvo4yzZ10N5XwtcFolTeqT5m5uoUQZl64QqrS7uuPxDyiA02cSson81Xnwf4svWt3WjxnFeCdO4wP/ZY160OTDHfVmofaYUUmhueKtpIss", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y7jD8Cra04WzC/Q2vEMJb1kEpkrmAnE1nJ50EBRlf2M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ujwm7zO6trxFFDBkbnZFgv8f6VIjur+B4oaNKBjhJpP2woeh8U4lmmCdB2Yy8/jM9/Gi6gwOKB5q2EllL+84BV5KPs0GSdkg6hK9G3JTbzNo6GAahEuRFdBvCLAdsPYdr8omplqXPPAig3pTvhTxnBkarWhESCesOv4tXqlzaTnMiCkFgSWa5wPTCQaH1O4KX88FqoELsNlhysXjUnHF9s5Tu1o0b2EPO2KvsuyHTzYwr/Iutz+fuqisSiPFxKcjMULDVB0m2L0kGmAXiLFT4peyDwemJlWjfZosmT3s/2VdiLjA2TjE7p4c/5t4shnoUydpcXQ7JPxQCg02OVn0FG3ou+DS6/mNsjQerTR6hkVS8z9eF/BcKqEnxpINZ+Uv7BbgTSFQzOTPlOJLSZs2rXoRJpCCX7aL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y8+zVjNSIw6ExGzQutVlkgut1nNDO3/Gx8T9e98Ykoo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PViOpdXrTIk7piz95uQCko5gHO3QhZs0KT5gFiX+X4VM5cFNIIMobpKGbrUfrNxCixOzUsd9jLWmVpLPVdHrLecOv/igt4Y/XIqHKHds0/N+C00d0s9+/tMR/UUq7W+ZlMvsyrmmCl3/fiWg2fbWjxjoIUhU7cgA9L7sGokH54sayPchcVPUvA3ULr4HnjvRxfHohfwctgCvhJtQ8qFmuwz5G8st9rM0Nge+2O+U7ZyaJJij6wmJHmfE6ufGGjTHlOTE6HRpKeO1f2LwBdWJSSgeTv8e6aEPY9mH2XNKQcRkptKgHW+2Pwvn9Ag5f1aIYyXdw7y2rA7n9j8DKiDWknXdELCWcRNDIaxFrQykmSdJ/eComMHc+QsSUGhhawDJH5HsBje2JK+qfdlvhMqjbBDuqMM+52i2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "y8lY5C3PbYWAchhE4Wt+b/XIliJGbCuiFVtuX4S5X0k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aGDug/KAuPY4wn9zolTBlI7zWpA6GKW5YeuNhcWnYUjZEjSnJ8NXU3Zmm0l8lUrIMY8k4NijOxrKcn+E10glF5QZLsvRWjf/Y6ezySiCeChpN0p1Ltflp1xdyPvW/0UCEkeQ/obnXQLnN9niMfn5IsHqaXCiiypb1FxiXZM0eJKGFv2f2sgfe9yme923XSuUQk5r4R1Wk6/Zrwft+ymXytW0hRMvSCdVWPjlXRWNUgAlIJo7iI+Ithz3fxDNntW89Ho5t00bzQMns+WsWBvcke54+xsy6yABFlm1KMmUFgYdGWsaEuU7cczP65cDw1D4tK4MWGCSgdc/BgjQFtwkrQqy/VxBxfC1XNdg4dpErpZ+KOr6N1yNPHpbtSliFf7HjS2cmQRZGNKVxRS57fLh+KSSuZm1c0qp", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yAL7dCAzgzB5o6Gz9p+vyh2sP0P9E5XizaEVR8rux2M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PfxHdja2Qu3xMN/M2nQL6Cu2cEHRTM17hC76ryWx4Dsp8xMqKzgjLjBRr4y0HMugw9iTuXB13y7O1KW85Iq53eo4icfa8zrGne8JSGSJuFPPs0Zl6BYufDFtlLbCa7WejG6qYpT7o/Ygy4QOFfkiUMG/9LoeTAGR/694plijzZzUtaxVn7eLgtUyz3be7oNkKDRiEpUtRr2ql5jpc466NAG9HLfoeGQtUcVwSYoao1cC8Idr9CBJTFQkY7npKXNjSH6CsMB/sjqOUf3dOJOSwkYNk1PCvvDv00cXmJe9tjhrmCdbiUY265IzMktD6fLeKSKjpGHMgBqn8RqSOSkG50ONxpDku2XfS8n6oyNTTr+E57bb6K+uv4mIOeXrATjYn/9Hk/tI5+RJcMUmneQo3p0DmayQaZct", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yB2/y4i0Gw9og6ZUeV0CPYcYaPKc0M+oAq1hfVhgD58", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CpDC8T9bsWhL4RwUgirUAAdP3l5hwMlxuHVEAyXz2IgB3zZsvGvU3gkerFTaKihfQQIFssd8fSt7Qe1S98zzH5S5Y01toD+H+Iv6Rxk55J8JiKPPm0Q4yRx/FLKs/cFSnkIhMugbKxAZTUwobxBV+aYfUqmorBNuAHq2tBNJKt3EMUyNbziIQuRZ+7Lw8bxHYVMl3EMjEqZea7YMi6RMmuJr+apDPGSPs9IAG34BqR7iZ+UrAuVkpjuvAj8xPB//XSI9LFnsoya2B5I5jtb6y5Vh5Idq9vQ1mnRbkJls3cRUNpSg3ogn8GREw49NsdKpZVXEtjgGiZJ2XCyv6Vs+r1tBJfZoUp9E8rgT+6wWP59LW7QLUSi28qPdK7/GgVXIkq32Xd1t2V6vLQadYnu5Flzjbvq4Ak2X", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yBNRntrMXCeXfCIenvbv9yddxurMlDk8G9hjZP11B84", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kbcU7gEHeWnOavT9/S80g8Vp1uV9TmZnMDd7mPqaLC2HuWDIcCzUNGOTIViHugy3kHfxrVU3jQgYdh1JOovhKPLpIFu7f8i3xwaq2wlJQZI2mA061nHzmSSO2BR39ApvzaH3i0xVFkryCZoR7e/o0wMjoD7CJpwwSKufqwiPzmxM8RSHb51235A6tc8Jnus+g48xcq+N/v0HsjCtEiXC+cFV2xEUfYakTrEe8/101ZjyMpJXauuCoyUJArpf92e3iLERbXCjHHnPUVGaVzGSPkbIKnOiYaP9JOFcuVkvXR6CFpXUVGfrkAEWq0tq240ll9tAg2BNn3h/Z+UFAIhlnOq8yNPd5R6ToaMjsuD1dykOO5Ls19XMKrKxLoRAJZuWCEAPfbeDsllB4gFGlnEvTnK/pUB7qyU7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yBZ1Fv8VztOutwpI03jPL1WWjp/wC6oz5v9FkfeGqtI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "m2UDxSbOvYVeIzbApPB1OXDQ1t6xEVt4S5Ig24+0ZpE/7IfyQ/++RjQlYIaY4O9C2pWgrSh2LVmsyRnMfGvLPrdChwXHz18lohz0d6KLELYdurFPn8Dei6B+u1SW9zkCoXrW7wrVK3Vsov/bY0269kLNNvMC5rU7OLGLDD3/I9OX5D5Ha0H1WcPArK7okfMUNLs1Vf0TKuYg3nA9xBJpzDMpRcWErTtK+sWAXacNF0/o/JAQiGmTM+yuVDNH25W+iXkYmNbzU684PK8xCI3db0JnQ9k71Ch5GKraB88qdw+YvcOmjmDvMsTPOHIEscDAY3wBfEoueAJocLihA8kFhtbcwZwW1ZbOr4B4C/aepFQWQc7mbS46QX3CvY37t+BuNKSEvEC0JxHpFWQMQJbOBCs8B5oEg+Br", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yC0qBG1wZpCt61NvlvUh6MgDxnugVp7wAp8t0xJyE5s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "esEJVW6WkQV1eygUkiQ1Obw/DZyerhIosrXp39EIT+hdq1iQQyxTdtKjTNObu9mHEwbE7J/uL9NSybXUvnHBciYCa+4vHVqTCVFIlBFlLozbV5Lq4TAdyqEzvC4bDXSjYB7EgF2ATYx0WL0NfDi3yLRWIDqcK+Gtg/t+yZkQVC4O4dMOusSKniaFmPX+ToJ1c3d6KALdSx5xHcpXOf1m8ulywQGTP7OY8Q0/ymRs1ev8lpsfikrqNOsNK4oMQsyB3d1BDHRP6jvGjnv+P4zCNgZBoZnfflSgVTKv9aI7g+n0DD6rNH/89A+rUmUdjrAx8W37gYujXDy98n/P822S33K0tey2CfD7JJi1zAgxMprQrTEpABg0feEEnSvg7eaquV9wstF4HF/JILBWF9r+UEm/xwS5DzEA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yCIXhESWPHJVJ3Hs63Uxr0CI2m1SdlXLsEvtG+lFNK8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UAhVvGd0K+SKpba8S7ddntT4oWZuqBZpz+ShPSlaIkSsr4B00YVgUmhC+nZIwtCxPIhPyrboutkBjv3jmGLKpNKcZ/RtLhOgoN6M4Qzt6HgcE/o+xjRNVLzwOdZYtTNFqnEEd7ZZlMChUaSZMOmvFwkTM0RhiPlB675oxSLmU0dBS/8mx0cWx981DQsbuvZkz43gdYb0MSEVAxohA50BwbbmgZrk/8C0hdE8sjl07hKA/h87LjG8vkAS2cQH4RG8SKYRgx5nXEH6/FNney6XHgQdYSDkHiy9dYhYMhTT47LfsgtuQ5UPcT7xCv1Aogd8GnxsLaFpf19sV0CRRZCSHVIg6qFNvNAskVztRErXf4GQgQgnb4dOpicpveSx2HO5Fefk794w+AeZEf15g80gde2sNRi0X16B", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yDcAG3Y9nQiC98uqsRfAmiiy6/308k4jy8yGgu6+X9k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "SlRY/jkhgbTi+1skOd8AUV+34PWc51XEs2wLNbO19yPVhF9ELE2dScH2j5v3TrkWC55ms5O/pD0fEZpihEuWu1TuF5Eo7ZXsD9OzwuN1qFbhORkTWkr883YH/cQWAwwxfSxlzXOw8YQf8RUUxu91ez5h6xCkLnfCOGbLpabKX3fuVe6Ev6SlmLKVyc+5/MTNbLEFRypfn8tQCrQxNvdXY1XGWbOwFa6oRooQnhMBLYwEc6XFw7ZR8nLv3fWmph9tjVwnxOQ1J95ZI9Z+kXUnn7s2Y2g4V6eXD2PZY3jJ0yPmpSYMbM3qfSVb25Nk/wKuPXvOrr+AWS3ajHS9XjieLN0jhVhJLTmXy7umutKvz8fMRKVZF9+z/U0/V3EPxZCBlxoZLpTjFuZehn591e8VVPxMIvhNbixw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yDdhqwd2Km1tQplaWHg1Ri6Wemr8MA8MzjwZDgFc4lY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aVcmi8m7qedwsGO7nP7FMwupI0Acu8KDoCjcHNFZCh4D1iHfmz105bIOs2XygiGhRrxmt0yaCGvCmKeV7BlZaIo+kzWCuMFiFtpgkEvaU+j08K23MAA76edBi6wDefWK3RBSKuoUWPetz4WC+oFAy/ZpWo4AvEIKybNn9VFOX/ZmAjUhhXaAeHRaaWsu/A+SP3k4n2ktR7FVTvYiNuAsgw+GG8J7SBLTZmUYZIo44FXq9gv9YaNvve1YSjtoQjDpYJjsywBoXRVMWilXzaz3aEHwCcCMyHRSOarEUk4znjFBke0w8urXGK1VlFPblw9l1ucUDqgO0m7Mby/ZwJ5MFiju1gGL5ki0YZC/oXv6VLDCYwHONvNleOV6IqeDgpNOrhtoC5FvxUsqj3b8ENnkxmJ+sfq3LZmK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yEAFTGhW3Gh7d90rr2qJkffPKHH/jF1wSrzNV5pFmgo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IWSAPFVZxcXpY+omf1fQpxY5T+GJkmLsWgPsaX+9dacxBEOGjCgA859wrLOcJDgBUVWp6qEzYLP5rAtkz10DfkTQM9h6OFv26vD3H1ICFNIdjuCI+KDy4mTmrIkv5c9Noz04qyL+zzDLWEemTwg94SNreutwfwNsQTw/zXnF4TDhzbAIEZM02BFIu15VP9AElUar07nBt1K23NuIsHTnOgbpg2MgXO82TP7JPAJUszYoU2HicDtT2BHMmuwkFWqj6a2Kq4cMY79Ht4LZeH6D73l92QzNL8b+A+e2frYvIY8bWC8b6aNFOi9UEZAfCbTrt0zN2kQFcYn4YmIKMwtze3GG0abaCTNloPMoNcsrv5m58dgTuhu4mahNmwAAR+F4k1sgdgbSgQMOETz9AbhqBlFaH3PxEowl", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yJtqXxIUV6UtK8vG+hM4Z073cUGm1zbLmJ+A+jRhO8M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "p0U3I0XMnxvMId7nnw5d+ObBGo4MJN2UEkjDv4Jr4CM0U3YaSxEIbcnfxZ+62ehudYsEudN1vUXwPYUMiff+shDOFh6s3mpfsQ2pl4OqZU/e6Jc1V8UwVgJdP8ZUUw/Ku+pA+A8lfd+YzHUssbUnCcqTzpRQnQCLcaYNBSCDoGm5batVddNKHkbChH/7uBwN+SyfaYd7oqJ+ZktLZE58QTw5mpn2iGSPiumJE9Sv2CIAJmCJvgEZ8qw+cq3iy4gV5akkCIb/j0UE0WaZAeU4TwvP+DlwggajSaj2Op25NzPwHzYQvelyuJWMheeRD4qVArFxUK0GxNUGTSpWJJA6Rzp9abjJ1pcLYjLNjSNS/0g7Kyb/i/JFDjYD1wzwo5Ll/s0OCPRqaRU/0eB+p10Jf1DINrniaPFC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yLdgef3V06KC0Qlkk0up+Gyj2oK7MKA7kUmAl/VM42w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Mk2ZH503U0NN/uc5tV6WfPpIyl0R15dkdHsmsntUn/L101eMA3s6Vi29TX6he9tq2Nt5CxxbRR7GALMz7bipWBh+TuIq2Y5P17xsW2pJ8DdF5WvCewWRlOktzCg4biECy5qWZDtVnJeYn2Z2NN66sjWyP8G6e6WjwwRjWZpqxXS4sSpsR7Ue/bSid2P3PLy/ynBpoQRN0jSdrp+rH3sTzNsxnFYlGa8JRC2ppybqgy7cyKu3Bs8DF7A9BCHk2RiiirPwEzQxxWNTshTw4i3L9DCVaEQ2avxFtwbhkF/feoa5uJxFgLP203FMxitK4pQDTiD6xTppE5RPJBxMjUiL2P8cJlFGm2bhXVA8glqoPTxzJZNhDciA2QwsvxNojMB89De0K+Gk/yN8qVm68hcm0J9W/Y7TrDxF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yLuJifOigMxy/QpV6b2Pv8GV9RgPwNh/kmzeEh5/GPo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "XK57iNbxJ4bMWeXtb8s7dYZcXQ1GeuBTndabPfO0COCidIVxA0swPXIBLtKbNsT4VtOWlhRuhyBoaQRWz/mWsOk83mnk0ncvMUOl67RfZinIj94vepEupZftUgxmNN99xXcnoT4fYi9G08/fq+rw/MyW44FTSqx2zQi7xCEyjWeyTRAaa0BEbxftC7ern1HNJeBJvqFgwI/Jdhz/AnSQNpQ8JVGzP/95TdB2GHrVdtKXPxZatR9t/lSzpbP3jqihFJJw6fwxgDGMhUGvFY4JJuazv4lzZ5txdib2XyBWyUy53y6bXB/WN3kqfMC4FlyQgVHDU6Wa0XQUWn9Z2CGcqjjFXAK9p1uS4CK4xprNBXbwVCelHkTMECfgWbIjqe7TjqmUiPqcnKdWhQa+Zjrup5561Dkm+hOZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yPEEsep3K9pUy7b4ftJYtSEYm1PyauHOZuPcHYEx7V4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0b4nLM5nlcgBZVbj5aulFCYKW/P3CkIRiP+6c2ghCutjotaa/gTkifDg/refaIEn80pMGZLNRJrUlzbR0YW8g9UTSyiqJsnuwWchCtpXWEz2nGU3f7WgT/76/jJdD93/eXVdwW3haZG6CbZgbOgx+NMGvnw1QX0dHuDSL0a6Qg2hOPWGMAq36j+xHfXAEFXSI5yd+ecw45cVHwdc81WoeY9mcpe83lMxCbw2so+GIifNvGFlN9p1a9ZYCPg7ROs4CPb/d9hGDeQ6sMfET4t+ddXu/2UnMQQnmUMgeQphlF2lB7YfjKRSFZIz86blUAaWE+WBEqrM7V4qtR4O/Io9tkHDsnmx3KI4x/DKOiXYiwFAZ5vZg93DFEsMR1258pla7n8hDlX8RcE3VYX+zG2yEA+oDPTAS8ZR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yQfXOZvNnrT5XxRlX7JloexMv6TzX2yOXEZRZJsqDdI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "o9qvmfp7mGHqsfttxkE/n5/ZmWt2a/R/yRXEZgQt6PMN2HbJHyrjdfmcVmEsHzIKPpX7JHw5eK6WZJBabEse6VwZiUFl/5iyRBd6AlyNZQKKda8XDm1a+jHIg/YaBh4Cxs8zb+dBlOdt2xynN5VqOnYLW96oFrW+5BCEer+sxNu2IRN7wKN4Uw/vYkYmt52YvDPi5/RkIgfjOhBP5l6Yh6EBFaT30ksJL1b7pzFypi2B5tjp1towResQFyQeUSl/Uf4JoiWNIjkSKXl6Mqs2JdWIGbiewULqNer6kbO4JRuE5FlJ1W1KdUUOddtQ1e8Nn4va7jfROT0a2ycFnoNBoFcm9eHHKpGdqgWC1KEyWE68FBhSd9bGRdaaXYw9POcbZGrMak9wEOIBakc8QlfD4qFbr0jkCaj4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ySUY4kFk7tWqIXQriM2ISHvDfuxrVYfHrqcl6EIJIE0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PeVPb2uMThAmQXQESA6c/aHrG4EvKDFuxB831p8L3CrPw7o4uDT0NEmIV7PMtUHnFBNLW8EzxQcACyNoleHWqJvlChaSQZzNlX35p0de9pVoHlS09VpBkR0+XAP8BIXlQWxOYnuU8soSzdWLJ+il5JD5RzL+1ej/05iAsUGddPKGw0T06kHp7TASbMoqbKDJl8cV9FkwULgJbjAwB84ap1frlgQwsYdl09d2VeJDDzO2ZSeaSuXODcCsYoAWTeeLubCh6ji7zWvmiUZG0PknD6NvSMsFa2c6ZVmpKzGgzYYiKfE/N1iujRXj6tLjkpZEyxi/iZHgvQ9IMY3T6KTWSRwFiAqJYawQTp8AFaSK97UYpJ9S+EZCP4OgOYpnJCY371rvq/WwkkOU7sLj/a50e9lCwu+bxh0S", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ySqUpOvxA7GLxqyOV5cZZQO+ybuCJr75xt/Hj+03y28", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A0J7vWh51BkfwQG894mRp1T9YkFL0fcVgq6w5ZW6m1wZRz3XCZoUDDk4vZ3YIvSxXCoFjsHwn59mdh0Sf1L3hevyRwW4pxI1CqxCaEuFQvIxqXGkEFAEs9kG7JOd1XbFL80ACwXacSiTl/h1X6s84xuXxPgwWmUL0/w00LOx1VnrHlIiImGx0ADXpx72Zuq5GM0/O5UJGRsajLj5VtMqy4sNE+2RECHAEBitGlDsg4pbhuWpdQ+aub6UFGcSRz9B32mNm6wqwD2vCkUgT3fkYxhwfAZ6Loam2N0S5ixbI6Uw1roQ4KEG2rRhG8f+sOJHVocs2XNWGqjzcJmP/GTqmgnHIKZTGInxArFv+X9PzU3+p6V+o6Yy0xDNRhb1T4+8tzzxwUFYsgpVh6Jb/kCFLpJYdYplPd0C", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yTHwt81HDBAfmOwRE4YeImdy3P9G8F9WeoAg1kSbKn8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "8u4RMGS1YSjizVJVsZ+o3nulbqjDWvFkE6ADsQk1EwcXsbCJz27N44vECB7fBz/W95IfgGXEmaBv+4OUtJ+XonUcBH7PfNqHmiJ6V4Qeu4uFE2LUtc7/EcfFMQrYrd7JUAJxgqYMiv8c9Yh+RsqhXAledjrMx9aCyXzVZPzRiZDYt2QNZLiDzV5ymiUeeR2dyTCvI1lIbupqIRXg4WlMc+cCslg9yszrFQf1mz72efifcehdp3kR+EufUJe01S29r67EYYSfQMAYLrLoJDshNy4uSHOFuOcQAIQB4OPBo9pV+s7ynMjU2djW4nGVRXTG7lKq5jQ6FVOKj2oNeNKBFdXYi3/1RuK4sN40YZWdA1sbu7KRwjDuZWfzeytWn8kY/yg1sihqscGZwRaENr808qvDkIZ1eeMA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yTR7RVC6pDiLItQ0P3zj2FXzRj2ot99cYcyB+QuSwro", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "rciBjTiJP4ur/fUgK5ONXVo/nf4L0PZklJ215aQGURdYi8XZMqpkXfuQ2KXBJdK0Wz7xYKPQQQ6nDhOJKGbtXOo4aNWS4cDKbobM1XbwWg1MkqvBlWkgNJlM6eBgGICjYJ6K2ec+0uG8YznPWZaz0QKJxdlcTDR6cxXFo+SOwBeWqw/Qfvx7HsTJNQwpn6DHEOsHZPExcDYJKuqMKllftQEHecPgOTP5/F2ywPaOASEJSpylo9wPJ67gJTFaEZbLXTcMsUWGz6u0tNCZVFTcKEe2kJPv3qsNTUtASJGucCGPlkAHdpU3ZkMLP8/A8RXqGpYcxTT67C+J9L5F8owwkokyEUW93EPhY66bQ7lilciXZ6Qqkch8FvmH02h/o2F7hn7LY+XogxHd55qZkgz3H0IynSeRR6TL", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yTy/AtnvHEL9qVCIj/B/9xS3HQrsHxk0hnZ2/DNAas4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HXD+P3iyrtNAszi1VD3Wb/Rqgc5GhJZwHcBm2BdZa6VL36eJzdx1m8w9wMpwIlhWx/ZwpQ7rbo7aCki46Hb3wpD5h4il7ZaI3ru68b8sESE4BaAEtO6Jc/xhwOgdAaebsizx5mmOUJWkkKFjyfZE+3PCDpmh4J321wGJzIUj8hN0NR1cL9hNvkn6494eeinBH9DKqxPRw4uG1JpTMFia9dcVw3UaeP5/VCroTY9aNbVkaVhnkshnG0+YTkcKU16GsQVKnqg6/6glb9Fch9P4R1oIbvA7of6Wm5SrxUTQVeceBnPinsi+Y3IuBnIXv6Mlm5cDcBLVcLhxKAFwR8mP4e/TU56ZUrAqj6GryB2FACSPOtpiBY65OCbhXHB6o/4/6HCA9xXDX1EFHrzXMGz4B/oFLcc0Yrg1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yXWdE9PCC70y+3jAK/uCprdq1ib5k24Se4D3+ofj9oc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/JEJL1SEDwAcAp0fXk/jA+T42jDrBlPAYUv0NE6GwaJ1PjcIoVIK0FJFOBpSeKN8cTgLCUK1XIL+qVAbqRJ9z7V70JMBZAcVUDwqRnToQsXrFkfEPOvunfG5qTFexbS8WByj++hlXfwiuiEjWs3eh3VWQODEmkPa3hzQaJhvI6fAPZeAUFEogERma1L2BRmWwHFSbNyQZDEaYgU6qYWt0LGDIlhMp71NhyuGCBVefa8BHEC9uGgk8nbwLPZ4y9aul/zGJl5xRBH0hzsMxL2MQAqxDWzLVeuKE/NYFIpPMli8Xgvw+tvJyWEVSeh3BZFV17da+ZtNcsU06uwtWfoQhKNvWkglcMETAqDtAQpDrw1GjBAW29hPNViMSi3Znr50JSEtFKQwShBu7q9CjiMDD5QRqUqWpbOj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yZV9wmcSqarK/hPftIj5qUie0EMpJ5vRP0niFsMShyg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A/Lvo1US1uWwRWhvej8hMfWDVnIhNgFkSHOJrD1QBmyjI7M5x5pRfRxdN3VIux6SVtDADt0tHaLXDdEmPTXTr3Y0bpHc4JZi18W5TAxvNdn+Xx+iJ3Feak5LqO1Zv2vzJ8rm8XF3ViMvIfV7vE9Yhg9CjxZWvffmMjDU1lff0EyKha7kNCtHdjgR679HnojSItW1GhrlvHn/rE6Ub1AdOx3fF4QjYn/IlXr5ivL5YPRB4WZGU531hn7E7B0elJdhXYo54fipZ1RAZaNLp0Qu2PPspiKfXHRI8Q0T7kyf8NYPFrDiQdW0J47vu7xTdpCkjg7UFFvt2tKKnG8O4sPmEZSCM2ZdxhCsj0q8DQEIsqp/mjW8b6AjUHaVgb54FAmDIFytmH8ZuGDxXQzjR1DLc0UpQYiF29r+", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ybWbOTymjhWjMAliQFZbOTJVN2Kt450+WMM7XjQsqmM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "0gFoRcUChM4djwF8513XvTwHKGKuPHD1pwDX67wdv8puXN//goFEqNdbLA5yHMfc7gi3vMiQlukABTrbDCA5VvApxMIjvoXqj2Ek/g3/587orHoGcdFiCAwczqU1XDluL7ohpkccmY9qQLLDKGCGlVOAoYu1Kyo2UiIPdXRju7QAD1wxPjxMOrUcgOrIHAW2od550HQoiVk7HE/URDloF+Jf+MxXrfeuU0GgDIMiqy7n9VIRPyLeqAnQMaq9waTDTQb3tCyDfXEnM+h6/AE+nP3egqVfl57LKyw0h85CCu+T3B5l6RSJPBioWiX8j2sZiuIXgyBlAxUjkR7nZR07jqdk44S5V4Gkt0BxVVjynYi8RP1B9w737xM57TmDXS+OV7H2Uu0XzYLhh020mVUdPSeYVFGY9AEg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ycz52G2lVv8SqZ1013JfrpIYGKojt2GJulL1sXZxZVw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Kckdi9g/Q9ZnEvj4/TWrTBXNH0bnodqwlzH4mROqSvme/GcmA6t4+QG/xlmsZVXAg6wHDr+W1Xo5zscFieEGVkzmU2yjF/SMuAyJxdqzmZVX4wptAvne92nR+sdBDyAX86s3xgWTcyrEZbj9PsPMGqA9WCe1xefIkAmyGozssqf2DHDK/P9ErJaF8BR10aaOCk82itmLAHBNWZ8rYWo8uz5B6rI4ztykA157Nf0qgYlhUankw8dHJ3LqKYsmseEKMQiEL1dqK9+ciacHfuE4S3DvUpVbLIVYNVj6a8l75eLGTXL0ZktZK88KexX9nvSDM39zrOuPtoCEmU7QXBPB76Rnhm3lue+5cDWYVGHRAkOwitNU+qDqDcJFjhI+K6QBqqKF6jJc+kDWkgWl/ijT+dfqvd6nRWC1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ydJ55fpWHRv3c1GJQW1oDwDnu4SuJ49rp3t+6buEW2s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Nb++4uI8XIFATt7+y1dpJWCc7KY1+WR7+7kDHFUzymjNTdhZ4h9ibjIeSQ2SDRM+ZxjAc5tvezarmVhHW7S4KbmTTYfsbdVbZ3G6+IzwFEas5k8rhYJ4/cR6sr0TvQpYMXxtzFRK69nP1tLE72VM3Rc2Pv97jtbPK6//TkpIkqpmoUGFxyplgpYEbSqTArcTz3WJuvy1cS53s389iAq+98tYxJxLgilrplJVXXTXdWCnBK4oUyYLtCIMPBDmBNQLv3EwZvtB8D1Twg3V5Vdz/ECV8NRAZFkyUXoYVj+4xXstWzY9YMOehvRYlmpaEtexJDd6XFocxeGLIlgNj8DFWzd6wciR8ickkB2jcQgcmTxsf6o1jf6B/OD4kFvc+1s7pXgCWuN39ezZDA3WNsluOuMdduSr9ZHE", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ydQe/4EoPFW9b2rFikM6fGk3bKtplmm5a9vPUOmD9cg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YFvSZ5BuoTP83Zw1HvCHvIPnHg7lRU7VgQ4OzlCFgMEBC1NQMpgQjhc83jZbwqyw08E00pC/ey4GY12oSy7eCzN8Y+MNWp+5oG8FjJUG84yXvD85K0XPHEkun41ZrUttwpSF9p0hPPp2Tj9nvjVkX9GHDfGn+2a0zRyKUdsWV6A1AiCQVSUXce2EPfI+I3lLu0kATr7dGXwLlu3cKC6ARwPNPZOH2S16IbVmdBUQp4Yx/4cifCkvFM/708vPeBgGliO8r7Cg77LquuJnN//w6jUSENlDZhlKreejdTDRWcmgl/WR7o65ZYiXjNhsTHQ2C57jGY1fGXvQ8EVg6K+93S8tyV+85brIlC7io4NqPXC6fRzIs3P4/6tCfs2obq5edb6XbpKoXHMbrvNiGRuuQWHksbPWrX4n", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ye/QO6nZ+Y/uldUtd9uHKcBTRCFXcpgdxRexg8DzOps", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ajIWRg34rlwlMnd2uJBmL+LbGxW0MNLz+WgSqT0OLXwney4Ms/LYynVwMBwgAdg3BzBFQSzKLq5STcF2f6Te9HawGgJ0FPQPsrFGc+hDLuf6sJBbN+z264FY7xCGjaxriGzPRTSwLujH9z/9plNkK6jDljlVErsCNSyKexbaLNS+90vJXqAKefAI1BhJsnoo5KlDOfBQebltfbdqSDGl3LgpzqqHtiQXwKWXRinOC7AFqm+mEcIzxsejigi0rwtuQPKPsM0ahHLoqIAAUzEd0iceJivhTo/0wmWopZaGAwnVyeXw317kwo9fW0eXBHsm2JVFrEK6dq1TDhIro1Bb7TSicyYbzhm/EpKCALnB1wNcI4s2b56m+eQWzVOiviE5AJnmBNjjY4K5q78kxxR0AhzhuXPbgaTT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yeJaD7EdC8BXFlitzkhskq7uHd0sY9K0okVJUxUuneQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Agt9Rm0TJYXXMm6w2/XAMS/SurkFloXJCJxstJ0xD12HIHQr0JxEc79Y+QERbPnD8dzt/rSwfrSV8hsp4adFfh1Rsn6/MdNeNc5bRinKna9pu0h5OgFK9CfuP4k1TCAa4bMUq28jf6CZMVKihIoWusUENJ/RKpTJAa2za7gvYpgHYeNHNc5JVCLk57Hz0v0UTe274jg0kZeJIe71Db3dOrgpnvCiomcQ/hshiGKk0kqzlgbXJt0/6+F4gvkOOO1FD7NqgJrIktgzBVd9X8B88Yp8fzo+f6EWtyQdEM6pSHi1B6mSuwWk1tOINkgordwYuKVIhNLVlQCEDgUelmVB1NmHVumXfNUIeiAK0ZlqY2eQtdcn7LBWn7kzZBCnMDl2E5fS7Rwsym6cmpZbePiQ71yPZFMpg2jz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yg8H/xheEciha8s87rDZJ/Lgs0rGuqBzQXCTXnpRbRk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "k/ivhyPxgCm/kcPz/h3XMMTsnGL6EpQ3Cy4ra05AU3HUf7b+4Q0f4zegTZMZUtIC3Mf4mPsjRLuAcCE+K+utNdm7yrOxLkmuylEt59YwvdGo+Fhw9Zpxxc8wI0BfMRm9tbNE/zAzXWG9/u9wMxmBgla2oB5DLE/NBmCSWZrwVxVGKUQEKOmuy/D3hglgVNgDMYKMVn3hWm4fiu5urH0oJnI3HOo/RHBxMrc5jq05J24ZNj9pqW1C5QRRLmDFrbl9QesQ//d6B9SG7kin7iiJt22YnmTfQp14U47hzF3s0Hg4AQ+Yg9ysy7Dz2I6TPvdKU51gGPs+uvnavfBnOkEdM7YBbhSDpa/al0Pgu5m/05+UDHD7+3s0EE28u3fMgp3ICgLBNWOQTVbZdcgz0tQKuDJuuXapmzMV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ygaM8UYf+uqLrLg27ny1pqK16RTP329Gt6l7YeNblbE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "i8NEQjmVpOrLGfhGmjn0RDrnXSDP6DTjwnuIfdjWE6OpjxRWzwYINump/uyKVHF3hPNCGoKaAbYLknDxTsHOGMVHc3lTbMaxgefM0Ly4SsLw0eTOBOuj/m7bWwlH87lvH9+dXPiPD8Hp6M/TrUkGmfBYmM47vcRHQ5gWnls7FlBIwE0S/YPEr8rjDYqbUXO4D5b+7JXw4TxPVXULcFdkeG1JGa7AkW9OTkoAyhhc8Oqdc9IcVxzNOfhHit1gmitGHhvhyDUhWHYVOOTw2EBa4M97Jgp1+/mg23ZD3veCTdMOG0sqgcSvvPZdGioq9sOlfNVObYVvVtaUD8Tr6Az3CTcrCVGFpNvCEZt5vmxZ5SCpMgAWXfCwKvYsPKBvXZxtx3pH3DZJn8nqOqSG/8p+bYbU6SycJea5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yguK0pLcZQgopHvWJqtmShgxkAJC8UD4e8P/myCyooE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ageZfE1oWP7pt1fo/0yKZ3Adsgy7IhZhVBjwPDaRU8QAjeSO3zgR/04ftdiwtPC9yV5r5YGix8vKHbVhIUsAfVTNlgikZ4Jdl/BKMUzMRRNdzL9wku4GjdzsnEiuCFTkW7iRkLPy2crdC0MkazclnOlKIdvFGT+vjyhnzGeZ6nL+p461bZA7RDwFOlxjjIVQYfjIUnRECH9BJa8hExRYfHQk28Td0upszBP6eoviVvJVxSwiPDqF0k6GMeSSMpiKD/Oc+iZyHldLm5tK3QbMXvbMyhLVCF6oA/SIHmoyL8XNR+OleHuPu6CyJ3S/FDbebrpMJsKW3d9EmMyMkg9GKpl9hFpMTr9iwVUYxfTYq/6vGaS8b0KiNiu6gnos+A+wsgcC5Z04wFM9/fxdOrQ04+9y/+2NL3w4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yhADnp9tjhgemumCmR/YzfxK1AfodTPxSg5qZtiFXwE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DoRnP4khAIPQvsOKaBVEmO1FIcF8ql9qZO+EkkWoVci5iJVLzMFcpUo8+ncLtcGwE6HLqnmx2A/yndOCHg/dbqpwwVRxO875jJnX8afFbGEeYkd05J0kTOX5JFr8G94qqLVerG3LkE7VANepABU5T6r60eTziCagi2TqEdMQ8ZvzaDzQHuOYML/in0TRITadT6tz/69D90ePVbfSSGdQIxgQyK/JWybf6UIYNM3UABnRtr0SJD8qeCj1eh2DXjGOzVQTIcknHLmdrzPKIgRp+YGx4I1P0tVqIRhQITZxbV4Pb3DFwgkl+MK2QF8oRcdqgUNaFLOnLvSLIEXNKFoZ4uYHkGk3UfQuwRMJOWCydNjGoDxUo33vN33uJ2MuH0Alm/RmXko6rJuBybgXNwwTCwjSNtoj6ZHa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yhZ7k2LPU+6NlvZNg9nh3NErfyX7PyQcM6+AyQcBnmc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "exQwQdf2ZCRynGM5FDPaQ2rsd5N3mFa0uSmfyI1GikRNtkR9rgsTk/5dLatNFLULKKyQYcg+KXjnuCFqrZmLmu+aTrfhNdDLP+ggO3GIAgpsZ2h26UsAZHoeu2RdHRiCKsB2vdNc71A+oHQIov/EeGX9Sb2XcM0mFzEzMi3PL01p6UouDnuuV5hzHEojFE11zhVIOaijdtfC3pJHwgORwiSyqT127qV2rDf8p2FQwAyQs0uIvgr20m0v+wC98TJ2AToWl6MQLiDMrt/kh45LiSIkd7HwMYOuWPtylXCKjhDz09zCPEIFkeeZammuekDRUstlTWTd0ix6R3uigjkf8qJE6Xmbp2Vz57Gs54FIfkc6nrATC6MaJvn5VDwdAm/oxcdQcX1g/2PeE3Uo5uMwpO8zjdptpR89", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yiB+lRtuRWCB1i6Wjxuz7LXy8zYG27JlC1pkkRyI47g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "HicwOlzX9iSLWKBTB2VUOaRVb0/QqEo8rRCLgfvabe5Ay31pcHlzOhYYnz2YXNbjJBS4GrLLmlUOhS28njws3GdTL34MPHOot08qM07Yb6N3AAynZc7B9qKyNAQFD2/uZGtcLWx0hMJqK0/dMv4FPNpjBuYzDmmLWeFAu020hY+fQFVjbjbypoZwq9NY/qVAZehGnXMR5o+268z8MICZtf5A7ZdGjYevhZxzwJeAHwDqn+glOGYGj6demS7kXpLgkKrL016B0wOodL5FZzzXDdvoxAE1sCuDvxTk76gH9nJzJZtqZrkyRmYZzZQCPwTLGTaT9GwskFpxWWxuDF2AyhbS/b1QphycnPZBFFeYlr0OsajyPeknpepW79Q0ES6UKL/xkO7WomUP4hzc8JQatprHn8lR2xeO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yizsbNSAWnHWlGGALpxZw7/aI5MNkouHubVdYHUwn18", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eOFIvLtrh062e9fEXeAB1+On1NvqKkYCGNWT2v/LRSBXbWV4Nj9xpQiGw/S4sqS2jXVIEJRBvbTAVZkCEgiHjXxsffuGo5JymWCb/CvmbaJAAYiwB8mtD1b/AQBeIVABoX3SRoh+YQmkDa2lJj5btGEDBoxNaGJXQNF59ZwzjnSkMqagTecE3PTLs4caMY5deMXQc5zfwZOuX4ujTpCstvvKhQV1Vpv/36OCvRXOh8eOQanj03FaK42/pvMsRLk5Mij4XhqOs4W/sGHedw5+tW5N/faOq1/lZ4TrXVVZNaXbNzgcYwKBDMNxFs/bNaw7yK7jwi661v7CJWEnLWwdWwWDrB7OKsyk4bGHIqe7qPYVpV8t7B3wphQe01MwPrY3oV4PxOPinMIfe7ejUVo4hQdAhmTFZ5z0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yjSvcuH/bHhzmnoCzjIrDJdiDMgTj2qtBXU3e3vNXgc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "oywS9aDh6JOtnoKxpTuDdn5g/X4DfOxHClNkejFGYCb+kOlcjIaOMDnEQX1rijgjchxyCUmbndJF4MCY2tjPXLEBaV5FmDo0j23Tjs3ujqdPYAcfCa5EN+Bz3FhtGcpmqlLsd3qQ57igZIH7+5vGSgtJIP5EmPkecPQfNTYOvM9KynFcR341TDbxHaaC9oxM5YVI+SV4fvX+nAuFe/37t/D4xb0Epaygd/UGocP4Tlip7AUYDPEDwbD64TpoOfG6xm5CKuRARzvlpCsrdpx1dv9ObvAvcAauVXo61oRDqghv6H3RFwSeVJCw9Wh+3PabW1aGKlzeF52MtjNeQ2+nxiHoCkokosbEZYi8JD6lBBUydjmEctcChBlptuxNdap3He/F9XUT7bYI3ypjiho6cmgyWwtOOqwe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ykAeC/6lPXacT48Tzdr+JJIJktZgKF0StuQUC8tEp/0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qIx8tyzFtcnUjCvTtQR1GaZ7CHdvKGthuu5tSMZvHtfjoPgIEtuer7GxbdPpcPhzed/DRLES2bTr8LMMa/d/HkC8cFIQK2ywqiCOMMadPSIH3cNbuyHehw9QaLtSf0gCv66/Nhncfvx+4/WiZCAU8Zy4auuRQSytaXS+gNEe64lpFgMKZDAtVcVg5+Huvojx6JFzmv7D5GlMc97SMq+P9xhm7HZMQwQ2jTfYMwqu09CunrntCmETrOYoePGtB8UXf8e3crjUDl7qUWdWE9MbHl/KSWv+AwAmmGA0KrbsEOmdRFW0Utzj9Q06RE32X+gAWc6B3tkISL5aYVSDXsIiz35zVgeU3DSqC6jJ6IWof4c00msE6cdKFTcszDhfdE+iujYTI6Hdy227h2+Tyh6K8J7ZPmGxYO8I", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ykPtxl7ZnDzfMBp74VsXcRiEaX4xbs/wOWD5AGrC4Eo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "q47DVMzbZbZPGWVoYubS7mCWAIKgTw9cRPYt6/dE+VtyKhiVJBQcxdo/GCkZ3NI/oB4FLjSLeigsGKwLss+Jlj9jOTxdeTfVKZSEMHB4rgGdtOSAtYgxjMKxZ3c9/19x/L+SGmVLkfv7U2hK/UhJlJnp/nJK993sErd/lXVM4kKdE7C2c9Cpkj5C/kXoggvjUs9vvlg76Q7+S7Q2NwlgCZQbEF200Lss44yMr/SAFP/JYMc6UCY274BA3xYMiC60K9frveJEGB5iaUWc1bc39tUD7HzKQOr1liDymd7aqFdTIK40EFlyqm8rFOBKqiiJI2wx5gR4oqRAEsIJ8rzwX+myNlsDijYSM/N3M/0wumo0jrmGJkLcaAMZ3fN8R2sFGhifRixT/eu9fk+vXOfkDzG8KD9iAQn3", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ykbIk+R0DHUyy1L1XkzUvngAtAbTyQIP6EdBb03xPdg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "91F7CDGS0tA20HUkzh9mplpdGyoumKYJ9/wzq8T/IN8akfl4n/jpUSGHLZlyxBXl7nGNQCqE0yean8uUhKF4v7YRieuIRtCEJehVC/b8NDMlOUvk+wZ3D0ak6s290Sak5FbYLlZ+B4Z4guCmXT9U0snH4k4ZLPoh4BlL5MQzgAmsmAN3RJJ0WBENX6x3HAvmoPGEjbIxp2LC9dzFq0Yc2FMRpJtAaV/8Z3690lr3HMRHQrIwmQfgLs7qWpOhP9nCZ59pQvBAIFXN1LqU+u7iCTVtQ4eRVMPbrK8LJlTA2+YI8DPqckaT7Eb9JwjvqdfO4dcu8AfsBUnhb//KY4LbclFuJeohM0lyOCFmZ7qI7HJ4GPG1kLy5CjtlTFEddazgv/+/17LxRAOGA+j2Sw+amIqg0OWRUTqT", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ykt1UVhP5LEhVIJknhwn+wYvaj2LcUsHYIautW0UPd4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "F0bsCRdw7Ho0Bd1snAN76oAvZl1jiE4O5NCn/BmlsMCBcBenDUzxMGnvRERzhvzfi3gGAjQzpjteMwyLIVQt4boSwr/yO+Mf3nNYNn3zHUaCHC5Kgt9hQl2xLEZViCExeHMjTLDGARC5DlirUaXN006mGCvQlGpIkawhirqPzYpPXS2VQQ+PWdmGip7N2rTZsD6bKqI16z641X0IU4YVhViHNEp22meAYvTNKGg3jeqtJVlMxy/ddOWAaTIDlLh6qWrlgLPZmr2mEpgy/JYKSWgyEdj+l1gVf5LWX5bKXbhbQglQei/pnYC1tvHmTB/XBu6W1/Tdq1EyZEN2gaUavEHd8ZOPDj70eoZPzza2DOZc7MH3qVul6DxW8sGEl/bdcMM6Ec5um91C6u9G3eXRdeBghd+2zxRd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yktGRiJPZSwWGddTArhq1xE3uR7K97p4jV3TWVE3d5w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Rd1mMXh6gtP91tHWj1FJ4f58yPml0d98z13irJPQ7D9wTQM4G8Rpfa/RruaXmfj4hGOiDtVYtXHK3T6mHIjRD6k87FQpV4BaWciQjfx6FD7oPdjeqTisT4geJUmHMNpaCxRAFUzENAjqIcAjY/CQ+Jr/hcXVj1wWgJYKN9XerHmp1ZRrb9zzzSB5500KMyiU+tAglCj24K2cwo1u4Ocs2N2YosLMjsMspBwqjCOJ+h48A4i2JWeXgljQ7Kx5GhXrkUfE5xDUApyYW02Aw7x3MvuwX9dNR0T0fjM/x7e6w/JUNpL+kVmRBDs3DwHJor3nAaXtbVJcN9QjMOWvTbrFBp1LwYfEroitO/lWolsiInuKg4dfAV26F8XxVmPe4srRdzV2lCRMctFa2Z3w1TlZuprJKm33fEHF", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ypOF0DHIKd1aEc5AYO/Ba1b03eMOpzuHCWI4JhqKFYw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CuT6ZzS290Q0B+ONxmLtnK8hLCD2m+v2YpA4a+KTykUTPHNfzR+TREXytEvD84WFs4PVX4FUCvdeUloMd1sVxD2JcEdqpo6ie+lnKjDmKgGEWIPEOI5JTcY+UzZ20fST4PpGig1ljif0KUL3tGlyS5l5BM83nF9D0VXOuhDOw2jKpsUOjMo+0X307w3IxmKmmg5L28x60/k0P1tEQlZwbw1HyvDiPJkHQLHsAvv4Oh8pBCwhIoxrF4ea7Flif1hrlkiGa5OAns6GDB77chHsgEnJaEXJI23THp/MkfGKSAu/0I052g/6AT3JN3LkFGzB+OKo3Bvljdf5zFVGVfzKc0LWrR672V3DTQqaiWK8ottNLf+J6cufkDFP/nM3umIP6Eem/NCF7czvjPCkOkxHw9MGSnw5jd6h", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yqJghMSyZl/ZJxKfYdw9/3qTkA7OKP2ykk+eYAZ682s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sTN9CubqUEJNxeQdhL5UfuDvuHdsR174spo7jHZ6JVM5rSwHSBdmqzuNYuA+jKA32u1yh85Q+yVTsd/ZjAI4zBnPqxDYQNySdl3OO23Jlmr8JfwiP1n2v3OH/+fRDP/MX1C5SzJu+LT6WdY2m+LHFCROa4nVq9Mtvm8LyssW6soCbLfH7da7ZyoksXn+Gm7cfr2jf+epUBcZjgOi3lYAyDsvG3loySm2YY+6N8qOgi1orsbHjz572pCvZ+t3RIa15sromg1LWwEpnBrIFRMu4g/pTiOs9D54g4KJlYn0Svi47GFboRlGfXh2hfpdSTHUUI9yG2qdsDBPaVnejvfUjyBUJLeKVn3HlxcioMG7HB3d6CyHzz5nHd/FyPdp8O2+6uf5dS5yhrd+IeoXquWmd6xlbPW83BvJ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yr5z23tApO0sjps2Z1hsadLl408c3DNDbnw3itosWqU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "eNVjXZN4XNp63ZW7HFAhFIzjFO6+87cWP/uZg/bmf2zZeG4BbD3eOa5PFccFMXpYZ5RQfmBmVxdNaqreQjnV4nMF8mFGK+t89nbYhTq4C9wRzYAsj5llfn4F5A2YNH7hwbL0UJUR/rMES+T6ZFfUXFtMXXWMvAqKYS49dbo5OIBm8ZcMYc+6sd/jdXIrRqa4D4fFYBeB7fQVeFNDwzx2sW+gL0jq6p8bJyC5P8ZYG3VjFeJ8NutJsI7xJ4mMTPLnTJutsdPAFKWcqodOykbYFRIAUN+ytK6LBZ1eNvAGIYEXFBhDwnFPQhm55PC/P2i2A9kcKqk/d4riKSuiGPbtweg9vwh6AA7uyLYmtqdnT/OdVswE6J4FJSPIHceeqiGb4QlvA9JDO5TYQrAP86BjGbRetMUJrh+v", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ysycI43O12Gn4h+yMRtH7pjbJKF+ZFU5i09om8KIp+k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tQd7EoTeqMTb4f6u4tUY1Gz84BrCdxd/v+A46Az7uJu2GuVX+LNmgSZQNSEBgxNb1GaCwrpJsV6G8QJvkyrOFoPZw2GtNdEoIvMHccBI0AAmpMFWNJpnsdBhG2+PPQ36AH97/jKjTQyUNoMPhzYmAivC2XEBN2Y6oBiU/9F7iDRl+Q91pzteqI5GZOetDBG+eIneDVErAFglqx8YH9jHWWkccUI6Jtu2n8K+JsQAcz6TqWNxeO814tThyJBjqSQvqjwWxdpXCxuG7RrZnGVYNju7RhWdhRQFQt65Ps5fKQBLRJRvc6Mj6zGeKXArkMXjSeqG/xciLeYWKN/aPc/m9NRGm+vlGSc+0puTqvNnDzS28ENaKGvfzsIctAqeizCl+ItVg2E6e3Y7z2QW2i6Rx5/G43iKH9qa", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ytBKsGiSxzBbNg2VyfsgjqF9ArqCGZizlK16f1jJu2M", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "dtlwck3XxCWyFI6sOpdnuFLrQ2tt2rkMCTWkZoWh1Qtj6sLaaPScQZScrTzK8vNjdlbzk9WRys8aTG6Ii0PKu0SqoH1atiHRadg+cxcU9bqrSSnY8Jl3E+cd3aQIhWGEMF0i06/15Tel6b48/tksrox5A6M8sHmKHAY+r5VNNYLutuqSK9FWjth1ly3eY/iz2IqAUZhJZM3nN/KXFuXl4yjGSnJUl+8Aj7hKqY9imhhgfU8p5H23myTlVA34UwHi9VkhmI4mD5nyv5mx4JS1qJsHsKWqNP9EcXEBtnMOsswWT15ZprtC1D6eSvwdY5qUMuwlHRwmwg06HvlJZdqxts6pmvybZekbNiU0j+7OOe1ievkWq16m1P/mg7AtE3d7TjxLtl42xMzEdVUnsdkoN5dOalBSxaob", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ytJapTOWg13aYcmHNSKiVdzT55H3AkGcvpZF1ZW3uMc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "AugPRviaMGtH8MBj3FflZwtPOiCpJURCxS+6MSGD/wwej7XwZvR9UO+bvuVHYqPoTBbiwr8Mq4ijoHDsd9r/KhOVSLykiULlt/StR2xhHnUSBEFbOxLbb5DafloZjXy0mejPDwcWQ/+Jxjt9ZAm9S2UbeV3klRW+5o1m8PH8aMFv54R0/pQF0ydPbht/u7A2nVeAAN3Kbs+GsePbYZD7FBRe4ocz1ZEnObXxbgbrXf/Xol7ho52vsj4i74zzR5FXCX1aN0ioaZjijisddo98q7KGzGHG7wzWcAlyfm1FOoupfUhyOiYkintwBQiog866wDftGGH41SWpTDnK5vIPtw8PzrKsPKqXtcDOvAtOMQa5aINpJ+6yblZLPnxsJshQruecLO/NuTB6Q5P1kiZtRKBCkQ3+035f", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ytM7/2D2fBiGLeFqSOqYTdOcPq3SG+NUW+QcDPH8t8k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "vXcae1kKOpmDyQP6B1rAr48DFHnG4i9xPxLo4uJXPDldX5sY9wtMhI7JBMxQFPb6K9oOkWrPomAZDO4AaKjCeW73WW086MMpLCmfdIwlZT5EWZcx8E17y0F3zDK9S4gHsmVRvhDQ7v+xEvpZjOyaw8gik9Y+p/7N2QCFC323PGkH4fg29KUHCW6aHJ3HIULUfcdIo8dkkX+w5+gsm14IrWuOkIifNvc0FFDZH6HIV94sA/LnRxu7R0JNq7OmmGbciekAyuEYCTYwSFp0u5/5wbNMRzk0uxovW9H+M6TVwg6SUJHfxKt9chEjo8fp2op0jG1rPMpgIueF4i9uBLJr/gaBUDRnKkFnr/i9MzYgXgji005c6HcKKjxtqwWhfTuKC+noZJTNHSAM6/Yov+jWev3D4Rw2/bYg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yttRHpDzuhcxMmGty4Ew47taCJ2G2sb/U9DFHLq1KwA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "gFfexDMxLPYt8pANNfAJBERGF5UdDRqzoD3DWa32fImxxD1Z9+cRH40mcnj6e/lbpkQ8aGjEzdy7lhN7VqJ+aebR5uhPwS8XlmuS6nMtl/bdiPb5ZrcoGAasRJKGhdBcwzpXoldn/5ahFKu6Gt/D+GkkE3f9+Y2HGP8TZDnGp0NJ9pXa3D+NUBL3K22XJ3oQgq5Uwm7kEeTg3jXo3AbG+yLvfoxMCFkSMox8lPk5GEnqYUcXHmYx8ReiNlZ0BUzsipY/eirk9B5qsrnAVVO0nmSpSweIE2hV+WbDFopeEXqK4GV0uePRDxqtub2jOEnpqRMYmiA72RDZN5hn5RPenkCQG1837ItK97SPTMT1aVlwhN9Bm2dTP+NdfcJiHuSHwZoEjgExg/BglW4pdu6sSw/UoaIQSERY", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yuzDY+BR05pfofG38ZfDIvrEZc7kBE5M9wYbmNeFXkQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TmvfKSt7Y5xgR/RSfgRFJGcuUDhsIfxZT48/kn7A5r/ig/CPgNyZ2A2MaxOrP2ZyA7w6IZ1MQa2LYe5ZSnVTP+OLNhB1pOrLCd71UCAWTW5zFkdY3m5U9jxelDbUeN101bLQ8Nmk3KK+DwfT/8JKTW7Q7Bigk0lUCnKoMJrZcGxpc6ncukl0YYtHoWOletZnX8VtTgKDSgJJlwsISBb8OmsS8mAR64pjSQkU1sBRYarphxxe1VaJBRjnU7VfmMXne1bSRjOcuXV5MpNZhvQSufEZn9tHkhmCUxcHyUgxA2eeMudmlNrweDIK14Q9P0U14yxw5KTBj5eWjMD1stDLdbrI8OoSOcV+KZssPpkehEXq1cHyvqjN4cDWKzzRjrcJvkjSRnrtdw+0ijG49S287HT/V/2yfZNq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yvWt0JeveKHYBM0wXF0paONZGTwlpKMNlaF3anTwzIA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9t7q/mSGLEIuw6lGMJwiUEf6ohhXi71jZo1tI34WPR9lngpVNJZNtzWia7UEr1RMKLWOh7/nGyHmrTKsoOktTZs/CcJNt/kv8JSjKA3RzqYSZtRBP4n+FLM4lkrzLiHRFPf2z7OHww9opaSqGNCCTn06ecWY6WR+5MSabQemxxy4U5kvepM6nlHObkuC7qoHHXdhY3QHzpBzWJvRNDohi5fUzkWZbwjplP81qp8aTwtY85pRiC0wk+iEYCLgNbNT+3UlkBKsonvF1tFfyhx0w87QbvCu2Ejr3jdYYLggWh4CndzwY8fqoAhtWYyHFiH4iVz3IvdZ61W+0QmWrNnlNyBw5iJGIegV1zm2AUIRt4lM+HKDIWdxTFtCViI4fovpWSTTFo0LOrbKQnRkzRdfntQiUN0Kys6x", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ywKNwRCTuIEHQljXpAw9sSjm5EqWwjivuWy/ebgXPOI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "PTHrSMMOKJNgXf1wlbDdbO1ZsV47su0yN+ZHjWaYZaCQOHn8ulURzfIm1nwVb7ZF45Fd2yPzeJ4PBG5IeT1d8mfx60J/vy6XuhtcycYFAOb8wT9afVgEpm1XaTpjQKeKHEn2VS0tha8xspLTpfqGUjhzJ43NpMnU/yNhERpEJ4j7YFXfa1NvaJwkVPmDjxTBpfNWtbE5NVrxAd5pDaJRIIzJixDRuIQRVFwrG4ggVbzdHYz3qYWH66yYLSKSAVLjl7ishNmgU/oktAutrPPIJXaCALarvJqUPbHF/b75mhodTdP9f6SsTMo5kj/ux1BE8EWK/TkxwVkQc4ms79pwRhZIU59wUMXBovv0Znbi0logzXGQ+Djb8hEsTcBvLhIQArc1BdfL/nh3+ETC30CSeNTIn19WoH7Z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yxyAbD0Nc3kfaup1FZ6xAKF2L/5pL9WpsEx16jvRYw0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Wl8pB5xTTV1yqOnLVqCBGecW91ST6yXKahZQAbX0apkB9YCjpKSizwe63IBd0o7zwqT64ORzmnRYo8wAR+leIWYHE2ijD1+b1TH6u3nCLsFpQF3eYqLL5CQXIMk7SlpF6FiPraHeMSwUgelxAC8TTbFjzzSVzXI2CXCbRz56kyqv7H+CwIs+y3ENaYwajCNTrExVWGamZbd/eCjorzfZlaRFtQSfX5YgZYUVcYrEEwPqlwmqyIcnRrLJp7QnAJuBB+btkb6U298ndkKYGOHTff/yclJrLVKNJ7CVSFSbYhhNBdnhLIpNYJBloKkWJu8638pyPjx84cgrcgTPexec4g4qo1be+YJXMKlqfzfat3jIxsc4tANRzbgFq0RE0pdfgus+bogWq6SbAGLXMj2ylF5ekanA87xe", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yz4ltKooDusAFeQztPRPF1yPx5soCOf7VpSmFIdaf5A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "agdMrr5lY9TpL8dw5+Gs08l71DeCAyEOJyf+ToVP4QWWFbANTvQ/FWMXMEf4TrcA3QGUtuwcm2LBqJqliOty29H+qi/omxYa2dmetGD1ZHVu1NrOBJG6e1iqeS5QrMMDaDdbqFNfWa7MgRlHVs+hedKFBYCiPcJVMcAKN/RaAaHem53kLnMQ+fwCZAC4/MUu2g/tQE4qtdEBAtNIVMS7aYEOGzc+7Ymy4n9p6fFWwZdjHIJjamSnErOM9kOR0e/HfkFqBzRJXKiBUcQx7oRT/gStEYtt0LTGQoyrA9eP8/dGH6NnZmiEiR9KMttSzYF/pDut0q52LzbfEzI6FtQvhCrPqkEq3KftEhZjW2sXMdOtqPuhMV2DzUyLu+JizdIqPxLSSDObQbDEuUb4hkP7UggcP+QNrYmd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "yzOzOjKBTaoSnPXDQA7ntUIuzYGYYRx1cukrMyc3yes", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mf/P4wB3OAtCZMoOW49MUy/zyv6scXiCKqj8Rb9F43iGLXCIagrAJGtN3aEBlfjQaPCgXnwRKgVlaevEv/94CKMXFFoeMOgb5Omyi8AoLHJgx5RFqSotzp62cH3DPzGM17jDPWOFSCeaRtjyZtHskXgUXlZUjHHFj5Qxrf8Z9TqV/M3G7ISlh7khwUxe5vGAAsFBBCagFKNHZm+BqO9nZMci8lQc+mAUMumlqjxxkyzG015utb7t5HpJ2kGGXfrI4AMzP4ddauvK1v0orjcaQJepvd8gPUPtQqRCC+bUI75iLsY5fdrx9bY8tAf6NOBxV7chW6r/uucVepGC6VGoU760AIsULYnslobqMiJVdvxc8BcOKD2nuP5HgxXWNMEwTYFhnHRiULWQXXaC28lctIbA2ATcHnov", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z+2spylxD5yb7tpkN9zyAkogy0X/886vgx2DvQF5nSM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V9r+Q2a+rscnLkjfrt73RCU3JwzSPCyUCcwJhCGNe8ZvAg76BEgNQFM1rQ42MS53XXs0mNKllz5GVZSLueOZaf73H57D/KC27EtmDT3c31CtoOssx/6rgP0APncPefoZ4kZQ5k2EnYE6ISQ9smApq2QfjqfBxIB8cBHu4ggKi4lP9dpHM6UqU+2sJo43eR1UMDFpbOr17xmNXjSKek3pxl7aP+FL4iMzMKkwJeJhmZVLvQnZJRpghyuyYksfdKIu0zETtzeV8G/Fzwo4/oXZkMA6RfbnaZvEYO7HnOkkFLQbSF3ekhxk6B+SF/MuTHm8jfjSgKGbnvxLbbZOWj8HzrDmLfkCVwZtlr5GXxgh3XD1+yYe2qIa/k0rUzGIHbHSlB2t0QP2yI9NJxPmoMaqdY8vnPuoFEjd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z+HqX2P/tVzRsv0vYSodIjvDXoSShRBEWECurRyIatY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "EgDWoP32qYIbTYbTgrTPwhyGaMTgwiGNLNp4JeHScULqAg5fi6WT3+52pda9G2vwgdIyOZPp0UNH3JS5nHGfb0GbmXLNPeaWcEf2tjbAkVge1/8RY3YbmhPmdwSflIOuQypUpaiLSNCb61TdjX8xDAKEpo2s9v7w3M35J7f17wLED+AOzICT7ilAJatvwVm0G3V3CGsJM0sGBjiHdPgFYYnL/1OveRbQ2l5FOWsvGKYGB42fm3hs9xP12PZDjDD66EeqY6ZhaHhSY9lpiTtaQ+tr3USaEGSm/SLAcgP40dheP2MdIeDkyVMor8Zl0EJ2aOzSy7qEJv1HXesiesWWX8tO97jOGGuzyo8bBwiQKM3kkSPLP7kkXQEixnUFrF3pwAgi4aYNoHYT2cTgRPQcC9EItTOE1Zu9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z+LCrlIIzTz0BA0FAvd5vD9Q+B9tOTdDbPeMNx50/ps", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "54kA393dTQ2rwbmjgFZPaydToP28uQ4bJLGlKhvZQ3voN+vXFGvDv/Dg5GpRSaaieh2p+smW0cd0ZhhsmYvkJQsxW8oqAGq+GXzrsTNxqNXvnicaRPK1/dkGEXuCzfvz7+esyvcT2AVNWTz5FGslLQOzj0J/ZvY5naLS13rbmD9lxK0iv1ytQ+xVYt0g/IK6IQGW+vul5HJBFMz215prF9I+iRtJzhqCh+F4Zv6+0NNd3Fg++7u7r0Nbb825dzIDF7U5UIs1aLiFx3/jZaY9qxIDGW5QaZY6fjWDng7Vz780/TAPAgi2yCB+5AYiHQyHwnnGYfEj97SDiGAl0IZH22wVH6FLwWD3u2p9IL1Bfdk8auMgyLnt2H+IHmtarDapG+84yOG08u+xUAL9c0s4sMvEJs6CiMCX", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z/PeM8CqVDBJdBvcW1TlyXn/E3KIr60LikuJZ77fifg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/i6ssGKei+2+vOucEcTalzXQOG9G/cBNNpJOWni5xM5Ui52xMEUbsJEaL63sslq0krCreA7Wg3w2Vw+NZmLxc9iUw1IxFiH6jxNLcouYMDG4JUev4v44pk1yQ55xwzD3aaR5GLe37IEuCp7ZqlgbH/YGfpj9UHB7u88qWlZinP/3obkh2fvUxE+H6gsjXtdbAWn+XV9njP0S5hlmIuXjHb7b/2FH/yW5Iiy47/oOqcggj91/iZIVpNPMFsIqycoClQWB6mpTQUxs69xv0856nae/8t8cOriKKwx54vMFeLMj8f55sUAwvMG0BoRAl/dId5GWy9dloh18+RUq/wh36KS4cOkrcP4aAmVR2SWtWsyXrnfvDzMrTAnf4o2a/D5ot7nIUQ9NaA39WTYgCJjSEVNHY47bPQJV", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z/Va/6nbbw3tWMQ/j0p3N2P4Q6hZZn3C9CN8T5dqzlQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "V4+lTtsZanlKRlyhgra+0Kc4oTlHF3qY8xjvE5MqtSEamaGrL878XjHGTiu4ksR77V6QVImXwknUhuGpayh5c3C2pJw+byx4fY+5YndzCoNDg6bRPn+VUtdUAU4bNUnfD75o8zu4hGNx1CtNN/04UuOk/sG4igstQut4hhT20R8xPdeUuzxaDtrqgOdFj2xdfSf4bkFXCePC1uuwpJb/ygUXFnSfHdqq+RVKH+RVRmDYTv9bCkhQt3Ib3Z/6GbRyurDz6BkSm8JkFLsKiAyZ6EgRlLigScxVnkZTir7z+5oLPfh/3rP+znXFrX/ZUZ2eIWoA7160Ug1QtFaEhW10hQt4qyE2EuGjdnHKxYeVqZKn1JOJV+bGY0jfbX+4XIe9tMqATVowXfEatJjE0zu1nIQTXlx/d3N4", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z0PHdxC0gEol86e9pkvoj5GNlI7gMiw5IhukeDfDyS4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hWyE1P293prAb8g1l4xFT0N9ikmMqMPiJ5iOyE1xnNE176jlWEBVb579AbDlnmhswZhH8bZus214ZN03Q0C6bxcmrRIVu4vdmpMYCRd9fw2sYpqm6iq5AecteF4yOZZfp/OBa1MgR9mZqoe0kNhiXHf9ZnSHkexrfaXq/sgdB7HMdkuo22RTQany8inVObFSH11l/ZQcB7ZjM0wYha+Ld0yEMWuPB4j0Die3kq1sWVjcoC9HcKyYw8/lLxuY04W04GzUANHTuAKRIzk4AMgG0qsdAgbEEgjN8+HDexLx1CfEKdfRUIVeL95vExbl5h2DDySoMD7P4V+pYBxqS+5l99b2OOw8s/cKF/ONZ3N+CVyeZUrP1ZTnRGWZCvrs5aQ0jmZxApZd9OBQvNnMm3e1vk+4K0A9ZpVq", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z0b/mgAxJpcUoaoezX8uBwFAVu5eDMz7Qijp1bA/eIw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qRw9VamLGZB/YA58t4VJOvkQ+qyH4828nAlL9RXFpeESxj7CnNwATFY9NWOF8M8srIkMbCjR1l8+Mw2+J3UrBcx9gDqq49cNfTnsVMwk7YzTPeEfCsqgqb2XMx1SllIGlB/rE6MTvklf4uMGkQ+AlroQh0BE9W5xyRutZP0YnKcyHin9SK3gDAowHeYf4+Z+tGmAe7EUZjh9pSHmKEqJjC77yyq5EKM5eiSwHmmzZP0rQhScS6JuDgno3QAC70/Qq7nmG94dOeFlrAHP4fR04rlveJdslOKlPhOrmr7Es3WWWVnZwLT3wVHN6PCbiIAkmdEj9IrcsmZG29jZj1Gpoh5jk83vwfd0kFzTNX9m324cnzXnq/p6FJLmLfRPEps5hDjso0Cb5/r0DCGbSKSVkT+vrkhyEyW6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z0ifKb9AcUCYUSjEMnSIPejZU1ikZaNAgywXNHYgk5o", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "T3fZBZnS5fH3XS7Ia401VDPzPBWJU2Sm8fP7LOCZVBtygChIJJRelaOYtcx2z+bstKbdDUPSsIVd+t7ERxQplqerZB0519VheFmKuUoeNVXHDvQNCjAt8h05ugs9tAcGqyj46b5anE6snaNaHnnxojfCFqO0o4QuQka83u7RX6XyRra5GoovMW8g8r2MS+J64+t3UoEm6XSZiHtS6dEhKVVdvnpd58T+7CyCwD9IGjgdyIkqhaa45wuAncOyp2hRgIn7YEJSi+jN+tLHBcweICA4wPR/Dcb2i5atjgeAmDb7cr/eIE7tqWyHyuFDYxEOsx8hB8GtiA2c87sIAjfEHlq+83kl6a9UhRH39UP09oXgvL0CGSx2UUa5XLb4tACAELRBOq68h1ZNYqV0D4S6vvru6Nll4Ksn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z1LJAuWaU4XQl2WV9ARzp5qJvQWpUsVmAcM84TDXSiE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7Agy5d7JVZsLnw07h1FPxZHARMc4ZQCq1RrQIH5TTdeUZz2RbRE3xQj9pi/hzHUuHghOB7xJlihJxg3IxXp2Uy4wqo+7VcFLFoemLkHimpg+0Q/Os+24CdUvAg7FbxKxsofI29zp3+E2cBXf9tTukGpUVihiqAhH1xCTtRfXVvTSEc24qTBwOQC0t+PdyT9oRDWOPn64tqrswPS+Ki1EbU689c1QIo+jWnMHvg/FWH/X+cJbAzst0Nbj8ANGZnmIOfow44AnTzTHrLfbFqBhzoAiSvfBK2yPCeEItVtjsbvFzoK5Yky8di94GMn6tGjFFOaOLruR7vhTbOFC/lL7RaAsx6Ui40KlKwOq0sQuiZW5h0b0iVQ25hTKgEeLPFtng+E5/O+hs/VOKnA6tuJUNx3w+K41wkcC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z1wLqNRh9cnsHAuPWBk5FJ3Sm27c1gGsLrgTU3jDJrY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "BgvJZNwntBuG+lEaHK9fWikvWm5S56CvD+KwMlrDU7+cfgS5pFQnYQudM2jRYl79XShJeW+4yLUhKUMQeBnhawhjm9DvBteJohF8C5DwwRHU0ktX8MJdr28qG1Np7JkocVquMehYGg92dHUOdF/qbV1JMiVKgkXvLnlDPUiiFd35UjXTOMb/sD5nDT2SpoVbNqsYT/a/QZzY1qjX0YibY76j6rcHIPuygQW+t9FuKQ/+cCIRFuJGif1r1y22DG7xeTR9SWEVSeVFq3vs9BiCGSOrxmf7POuGkeYOaRfuorlRR7+otaMAC0EsPImjtXIvTtvQumXktJ7MHgzdxuM67OeqbeiMYByUUeEKt/LQ9tfCJ4iLp1X6dZ7HzXke1yD+IVdvyVLvQvZfWnlEmieyWy35XQ61EHCG", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z279ImOJ+2338oQofLqk4qE2bh5YBwnwyXcJraexbfU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1kq/uBslR76F3B/g30oY/nt/nU5jY9+IiBZDM8e43hwVdeuW9GVONd2QVFEX6RNoRd19xIQRa14zDRNHX7gPX3dtcaSGo++/b0QfYScDSdbNmrdCz+L48vHZfjcFgKWz60LSVZ80nCs7F3plzaTEy/N7xoDHEL7ZmpxBFhi5ewfwpePxFD/89CugnSQU90nGEm8QxtXYq8IR9DMcH0hblNJrFiGA6xhmR/oxKDqto2w0iWwKtpFV07eqpxSDeeVR5OGFo3432zcfsPI9AyhuFtdSIaFea9qD59V7Ev1E/97G5xJ2Q5IL2SNgYjSEGHrPGnmImbEUqGZPPo/PHrG+BzkJC6zouO52PkKjgKMMgghHFWCwYzREw7d/IJXctq2AGTWMpeC1ezss6R0vUJQfO6JgoyosYxzi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z2T7gg3dASQD2jnlJLebmdd8EHlL4lpb5jQUwu/lJE8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "WYIzWwQbmJvMwqTbpHdZF8/yQfFOH0HJgqtiMvzN2ouSJUn1z1f0FRFzPTLo36j6laxSHA/boYUNUs8ohho4zSOTa2I4+pz8pFjVErlsl5owgpK/FG/9q7SyJimjBwnqhf3galqEBYL0xl5+YYH5VZqLG9gF+3B+pn897AH9c4Q7LZAxBCpGyEgZJEwiWwyJHyK6amImh05P/T4hM9PzqIbsMGuN/+p7T05fcopYRiafpb2cpEsR4HqBT3KmjVLRQzqLSZvAeu18+bjXdfSKfmcpwdOrCNLCt1v6rC55kS+jVkfqszcF5hm3CudBLTxaVIXbdM2JIdTVKkffysarqIW5Ks905u9aNSi2Pd84GAvU32NUMrhWs7nJZFXZT123jv9r7oZPApCQ1qAVm9wsklhTewYxh3jy", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z3si02pOHsv1jib8kI5o8Id63hoZoTS6M20A7XcUEVo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "L5sfDoShdj+Wd3+jozS3viz2TueHvXLw77/ekAhyZ17jGOmv6y7xkqdNMbbgn2nJAi2urrDtdkzq2pLzByJUJl3DNBTeVECtul8/PlrjYFvCCm9b2o1KqyEWnyJJ4MqxSpxAPXNwMrhYcZnONB2nTMO1dSEnus7zvDgLmQmx/SrKH+caa+FCPYPDxgkT4ROI/G3FA885pzrhhMHkF5/AcNbr1Y9QqF178VgViSenGm5cUYmHJgdqvG7trwo7+mCnOQ1jaYAjzenUHcDRZiq/twr7c/F31/JWe5IexGBVgww09cauYTdY/7GtIiQtBzrAWkiw3miUCehQ+6NfjLHBCig0XRtqRUSHcueJxKadXLhLE9mFNMGuLSKTc2iCakfUytfdcyHiSFSzi+5Vx2/D7Lc68W4VqGK7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z4DbKUuy3XC/6bW+NR6SpEHUJ9M13KX9QNSo7cBYsg8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "w+U09NOQEw8B+3rR1tS9IXKPXViKefKutVj8qZaLpQuwUGzRiGxyihGRM56Vm04p60XiNgpChWizctkifYE5Qs80gXoczNtGB2K+Gr9F1/KEZCrG92kNoK0E5fmQTy6U2I91LCJltwlSkgQpkZj4+iX+0fG4hkPXq9nrb0qx2mGp7TL9CLB2klkQJf0pbAF4irD/w8KM/VE532XdAcit0HmauVzrsy1wBjXutcGoQuaQnoICnZ27aStWpY1xCTYbX8rmkmLYOi9MzMO2lcX6iewcVm23VPAi4fvMd+xpnKLILZTAhIcPEZf4EyvPGmdEBP52j2YcHzKBSi73wMPg7nmewlRO7j+SLzm/E+GvA/aWrv43Q3GWmV01pXTc8fZJ3Ek1noW83g5OeiB57FCV2bL+x/371U15", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z4aOZ4JJeckZX9lkXqdhL2BN5UyC1q6ud2/6Zqfaczc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IYXLeOYpFWbO1g7V26syoNSt2ldxb9a/HFbbeUr9VPzNFQ+RL53v+6Sl1kWFUOnQy3oh+cv+p3TAWhcrG6y7wMurgpi/T+7Zo5P5fWXllDDbqUoizCzsGmu5wB8m7qGNrTDXD54Sr2hugo9EgR/G/LPR0vYXvtcFO23uzp87ZWrqHVK4DKyk2IB17/EpvTSBOCm1HB42EYrmUJ2OXqVBbY0aLD0rOX/yTdi9ncRJnbo+UUH/6FRP4LRwyza2TuyLs9oXt1eLQu7Z2SpKr5ktuLT01yQXDOeS/vs9NBddDs2L1400MVEJwJz79x2xtRGjq61mPX8N2d9hla5fEq9HECr8t+di3vxaaA4X8m46ji6yZ/MHDVEAUuYjOs/9oi6OxGCJsjCSZx2rNJW1lgS1pHdCROANEo0o", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z4c3BiN89njb5FDQ36+jBBV85xzF4iN+HcDzrkgK2W0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "UrjqViU3JkhBx1wqwQNqkptBfyAVTNDSrwjQLVkUZt8g8EqMlr8LbOVg7fsS/RmPfKjZp4g15qExwHEM0ojiwuW/WN8n5cHc0imCt4rBA6kxZwmJPXpHWlBJ9DU46QPyDSKUJ40r5YDAEE2JkZsbuX/CINfmIuo/bixm4MtC884dvqR0uHXLIafUuxmDnSFF9eD0lj2bYkssyifzOu76H/tIY8IGqd0e3oDnhy7PtIwOWvgVhGVvGbnFHGauSpzUGfInZXSlNnEdWGayxkZL/KTaU9q1A2unTl19JwiXNcKAHacFJib9StmN05vyq0vOjRoRDbyTdFGU4AWa9ALSOKYyaVtLDvaasXMwBgncrDg2NQ09VIKV8fCnTumhif0NdTc/JyePpmk3sRepKvkA6wLnsDDaOgxH", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z4j1dXxnDUxcoFNfg6CqaseseUsXRIA7DI1J0sfDikU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KiMtFqYyhzK4EGd5t1ZY6ejND4/IWly9nljVGWCysQz7KQUIGKtgdIryPm1Qhdou0r5Fm5PhHxYgZP7Lp2jMR64uikZd77uCoD5pIUv2RJ4yc+l6mkdiNJ599p8G+hvj8VqdOXviCwlOk5bGkMWR5ej693Vd9IIMu6QcX29EEUYZKVgYOCDE694Xsre7a1IgzEn/nAwtectZp7IyOYJdwwGk77cAVZoz2JE5WioNOqXjYKe5YZM9+EYFnLnldSY9rvpWVUgmGzWrTrp+v2Z08tfsm4yq1/xRBtkH00oJdcnils6oL4oBuWDenQcqb6DztjWjdSufpn/XKqMGE1XbmN80xOLO96GX74pGDLRPxonQky+VEZqhk4L8UVWNAfzZAjo3ROQlWuftgcMFDSzIqviYfLgDxf+G", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z5RcGFzC+arkLyS1cV4/PacTARDjqdAJxxPAzdZTiGE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cMts59AsdaidS9xDUE9eLkrwiGvMb6elP6rHGaJH31DkeZnQ+3EGD/5uBuBxbnKfehY6bfrFPmMbP+w4TAWunEWm6wLIRUEn5qeSW9KqVc14fPAIYyWR3Okvtrt62bz+e7dBsOObbv0zi6aWEgCc6HV1hjqS4BxIVh7GaqUj3V4oaLB/hdXeWJdfiC/2rxjhKgpfl0nSpoebPE6J4OCWoeRWiXSFU3VRyoM1tcp/T2AoZ3fvJdvsHbV2OM3wFusjVpfwSm05HbbPya5tVjRaFBGUWyeYVK7u3tDO37LcRVlnUoUjEHNscNvl0mf3wBDqSyv49EnRaXfxl8dbFmgJEcG4fE8ztR1SOfRYnBEhxTkmqXd2hHuHTOEuJGf85/0GF2m54vQR6Jl43MMoyLBz6Qk8ep5V6Ejw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z5Z8naF5tVh50WZHmsoQb0GZ/s0KQyRnmb8JnV0tVk0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sNibYQhskTF/bagsSCgjgZwd5vLMUWFpCtttNDxjzG0HtjAvoRHe0hhs0ozmk4DvHivBTtlDPZGwSwEZAWrJ9oyETEX7hE9FVxXCYP/JJB7XMgYJDgWB15E337oTFrIYpC57bPvYGXxgi5I6BktnQwHgO3t4GWMMhC26RfFekLOgm4dgB6LI6ecKeI5XZJoYr+2jxRlDISCNTzRJxcGjZNYpBKz4EQ7slvzSaCINTvyYyP0XTNl6TLeNZ/bhVtmpYNbqDlxZddOWhCHf3KIe0a9rSOLMHQmuBzrpC/47m7EzC7qOWfDcgBIFLgCDjUZzojGsCyD5ztc4NCIaYJG6AIh5xR3ojuu5bMMNG8WXH3iekqo1FB1IITK4SHwwvoBTIs5aYu+RhK6LkSAXx2OpSJmPIktHkPig", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z6GPmvOT/sUalTd3WfOVjQYs1mhn3kzqnErgQuNCLII", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "cx+OiR7Qi7biIojNVLhrlCtCO4CWY7T47yWTYk3fVu8eIag4EFHhqp07JhHilE/uBMn95P7hmkFNN5E4V4pkYFAD9On8LOMPh3ITNdZq7keTmtnG0AGStgrpK5mwN+MsN/GVcZcef0un/dB9uBDTlhQQ4MW18NBmaAySr8/63YHdVgWR3FppxjUzZjNxnkPbwFolU+XofhP5AKOiAySq/dSqIee5DIJqJav1czl2El7ozT8gxA1OExX5SL7ZXaOK22TPs2VVF2b+3WGyBSVxK5xUVte99IvvnXqy8rlsh7nqfmlRNrhf8mqDBjmofwwS7HFKAsotEmPyHWo8ysxSlEsjStaZnDZoldgZXwboTYcWoXYR6E0tYFPgnR9wtRUd6QGmn/E+GV/EvD4B0EzDsbPB1uuGwdMi", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z6NwmoLt1XOPLZkxLmvjrW/TsJSMoIoUrix9egrDVus", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "4uEwlcFTcMOYISPoUGnwHHgcKvWGPA9tTkkyq1XxrAlVjIpxfjPP8MPOUAlgKIwxdj/CN6X0KvWWvncxTwgNGgJ6kRHwwerHiUc4aXYT04vv8jKCotmCBOuMG35Aozhp09oMgb18gZUhlh102X7Ey+ptTxr/adIUBvqEURB4ozq5X56E8Ma4w0hFVoBhIme/EibrJ6V0j5q7O8yOBngHA0bDeAqm66r/saTvwSreCFpRR25ZPItd8VSgsshJ9PLIPK76iRejfktDWJRdBl3xlhK+YvvKdAaQFl3KkaY6OocEHKM0FobycKx/zv62ACoNYl2zB98I/jI29ocQOmy1tbM9y2dg+gptmng314E3IRz9tjOWfprOuB00mQZMHcmCpht4W2LQwIj69tAPNF52fa5LRqPGGaem", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z75Awk+/1lJg7hyFIfVAD8HYneZpt9/pS3JYC04lLa4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5qqZLvLAHUX635c3CD2JFE+ZMTNHiqjnbyjXs42lpJfaRD0PkZE4VYMPcVvUQsAnYiW373jAxna3v47bwCoGHwkGuAx+LNNNdcifc0MckSeUq/AVZg1AdZAIiWYHzhQ8djU+/8+4PsS8xGKZZ70W0JzmiOzbF4XV/CG/02mF5UbUqPPvh5LdrWXnVE1HbUOrBtzwaObOdg0/Pp6u0l3QuvzbHyjOfaAazraAvDjyGUELqAjnXXdUz7BI0Wkh5DegFqmLKu3/PJDtHc/uBwl6ITLk6G0SATy1sa53uLaEnIS8AKAtTLM8Y4aEx0UPU4+asjkgFgRfiUayAbrGNp7S47AodUFH5ml0zthQvLGmdFby1htAHh3obqbZbus6eDfiHLhjQGNefJcCgfyYjiYem6B0nty0kr/b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z7BVlZ91F9ctPE/HYO5LazuSIKX/YSbx2slk7RGj+so", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pElGmvkVexufPN+iFxFFxZka09QSSeIrvhddC9GmvkBnLFXrwyaThOCwTOOduMjfMtKchKAGevyEh612naNR44RHsF37+WeCOhK+RirBI68ALxBw5VqloYnxHMWw54JCJcM1poPWwFlY6Np5ypIwGlxCPo9hOIH3zRx2vEgFKLWp33+uP/Qy6p5qlfOHyQ/Qw1wkvpqKMselL2/zABe8Y/bgSWT4E0NdYZ5qqCJuJPYhLQ/K6w94RuVgw9MmF7RMAKc9FegPSI8ep+DHaJfFCEi8Hn6m94Kyc1LdhpZcYJwqoNpRNDv4GsmOS8UHYieGE20iiC8r3p/Lnd05g71Szow28OXMvnEkfSrgf94/3TMP5am82lfCR0fI4qyJ3Gjbkyt/fW5tdAarnYhsyWBIBU9o2/gzdbSk", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z7xWq/D4LVXhxQHGw58hmn9x9hnHb+9uPMIVuqSNm2U", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IBp31rsaD43FwNMz+zQh2dlm+22v5xffUd8tJw+0WcQP0/ehdfi2USBqOv+vmko5yaY1yJKx7d4RCWkFZO3EVjxD1q+dj1VWjJ6K/cpEGxLlTdB6J2z+50uENOU9b0f71/z7a2gFyu56rZhRDKo3t275zVAqtnDf5ymKQVYSJzQS2Wd0X2Vy9xpA+3rpEEAM4CvaXgXdHejrfpaJyhghp+SpF0tMggayNBpxZ2lMcIxCXNeC2h49tcUEmH7JLMlN97LuDRPToj1k567oW+SVCm0uMBHBYKbr3RisE3zbaQZEWdTKIb527fQdZFkWGhMEmMJjlYbRL5KYf6BzS1SMtPWyOVuIT6yh/VB6AsyOvcbggPU17Kq7UPtENaGuQTSFam5li1s5rcSczvG3pSffJ2SH7mVNeXsn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z86RmxOnrNI9v3COBj1Sg5PEtUNwi104IdWqGTe6hNs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "FRTlCigf5lajol2wtEgP6rnU2iIpTSTOGC/ksd5u2omBZgHOZQAUysYpBLj7sGK/HFLGQlf3nJPavWqe01FfKxwBmIGH7HB7EcLu++/0DK51vJ5qn31QjvrMiMov/APsxeoWJo/zGOIEQCe/EGvifyyAHX5175/7nD5v7j1aL5s9eGtDNadqHSbUpiVTYqjK2oF3Tu4R7D9xmDwaTeN7xKJB6Z579F35QP6OIbKXvF2zoL1A+vv/tgON4WRGda2zaA2EDc98wPySAoS7bK+xmuIIlR7HByvI2vVRZdSxifOHbGDODO7o5E9TvHO3aD49QRFBie0Y6IIRidZDgtMNtHyr/oR3CgBDT/hl3pPjpl1xv8daA6dIOrctECaQBa9mBiJE3ftRQ6Zo5ejfoY3+HxG0TSWXs3K7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z8g7GLwLItrae3GSfsShkP9ayKgvuYBTEAHc+GIbn+k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "wH8Gt4gyB+ftAUrgwfPViKSthbztZLlv0qHh46DPZkR5C/hcgpFUiHDHQETA7w7kyYi22mV6ADcG4mnTOQeGpTjoD/SXumouM0SD5iSJss1+wO0DCmW+ZwiZ8cY6YgquWRUYElH6Y3GSsydSoYw0aCFoipOK88m30FOmb1pPETF4P/UuLfC+tP+GZMsa/pAiBN8JPzHd8CQ5bt2vAT9428vALjZuB/SHt2d5mM+wMkmSNqSYAiLyLY4a1WDb8hYLVOvqyHD6Xh0Fk3AOfI7dTYmy8/s6OmyJsNrPBll+BkQJg2IUtPbx3iHnFsaasYyt4EX4lbgGydlDdrgBmTMSTG7iO+3V2gI/IQalNE8/wgBigv4qgWt8xLq/8/l5fb7dxrNjxcVik7Zh6Q5reOmd+hEfh7Gf1iQn", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z9YAzJm0IU2c37fq+cSngFiOyNSzaOoa+W1/oh+LVeY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fxokhQaa9tzQ8v/D2Vc/mk1kMtkdAanpsljzq5dh4KL2EYb02e+8fpbasiO21/lHylTWCeqH4dHTbSfltN6s/grqx1bWxbWrx5rkjrU8mmFp/70KnxkwWsDzHQHcEoeY1K9KHqNLQolHuSGL0Vs21Ey5e5BfKALfav2ASwGXuW0vGvEJ759O7nh37knAAWgn1xV9NFXNISJK3+WHFaR3o4ktaBZaKnlZQc5qANtI5xGcfrtPCOrA1Iz/o0wCzZnLwN92Ua2TB7loWKJv95ifv10QuSyK5wM/hRQqgsuiOr2yU0G4dRhenexJz0NY/EfpIbi7Nkr92dTUFxcB8ETZVQxZ8J61mrW+Uw+FUZXMLn1n6YAyRwgz54spOf7sJig6kGhj1ZOaC7WEpewCuSNdlCQpdjpXNAIK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z9bq5VY7K4SgYEwChsH7lJM9QbtEYPHMwoVRI2CkJck", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "nBVZd4sUoBiXsGs1CmLgwb5y1lZckcCCOfv+8P1QGBYhUrhkdDy05PSZ/bzi0feE65AbIEbUXqFeJkho7D9uYvS1UASkUeOAQUysvZT40nuNehTbrTceQFZMLXHRBRSdbtMVZqsS3rO8zcCddLZhLkHbRmTLrmSOCJRABlujBCCCRben4n8wGs8dnO5oPMnbhR4tk6Xm0t6WcXAsXpB+TY/xniNc/Oft5AHJ2S2Kf6J2FEbWFZeUpvQwgKY9DhTbqF4GJZgSoAXpU3CkLjdn3gYvaoiYWXqdiq+gpZaXeSpkrrNpPKiBkPNsStS3dBIVywqhVLInIW7iHKS8GlEIKgvP/79aq+rddgCn8LZjrYUrCjWCNqitA0OyC6Eyv7XkUrXzH7/bzR8W8QXuUSuYLmaJcOnXQE7R", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z9l5F1emkZ29FGiPEXiiweSXBDWVOQO9S1dq7uaeqPI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sjvDDowHKpEGs+YxJGUdb37R+yJOTuORgU8VwS9L1lJnOVDxmtRlJP5C3smnjZ+Xt2fOvbWi93aKL+4uduS3VZp4mU9IH2xqBU4uw/f2CjnQ3p/jCiTndUxxt7taekMi8arkLSxeMReZ/fJxG0rBOkMx0/vxZr/1j+jko9g921z8vf6tJMYQFsJT4p4i6aNhPTzxHB1iHt8Zb+Gnp1LNlDTrC8eBi0Zt9+AVU2ob/jT4zzAkT9qjYYbFZ7kFZ9Z/L6pG3cjmmQgHE931LjlZqttPuyVOJ5G8nr+RrCUeQ29TIcGE8K4iI8gY7t4qzFJE7ERI1NxxnmRusPBgxsGsDVlZYrOMrjgpcUDjDsKAQYKNGagf02TdNDVjCBw9skF7RWniRPQ1Prv2OPWsGl9Bw2Mv97LHPsHt", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z9teInpwt9eEuKBUtNeOV/s40wgdUiNF3Fo6b2J8/zQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "u69PEGm1WYIlbSKAhdHfoRyEczLxYldSAdYj6+FJb46g6qgNRHhHSABUfRWrv9RKYcmwl3gEaB0q1kU9UrL/wVK/5hW98LLG2tWsRh/QmcaN98M6rIKQpxrvzpSUkk+4U8x2q4lUGXRE4MdV+mhbFu+egaXEjeWsFVqrb2ZcYKY+JEBiIE9Q1/WzYbb+a5hLYr2WnvSPsWhIulipoSqpU6SMFGY955d7/eOxmW2aT9Y2RIVwQrN5jrTEqaTpSIXS9pXqrZKCfxEd6zZwR9/QecJZgQlhqYoR13tZ2Malug9QL9s+mRpwx+U7oDqWjI6Ij+BfsjlNbiFTm2Tdfb+tM5kmxzDdO1nfFedbRWgodKOqHcncV11XXx4bR2mpLd6E49XVxo63+bHFDy9mElCAH3Ugb0OosngB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "z9v/9jfCY1qnfS9hfjXINp7Pay2bBgTTxsQjmPz257w", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "stIYMwqP8Oe7XgowsN1iiueWcZcPa3cfutGu47s3lLx4jAgoRzn5V66wlBhRTf76QynZNjFW64xkdf7XGqFO+5V0IqUH5kaZPckaKTA/N5AsJC3/NQB5VxQFcU5gaj5wWw68CUXEQL4L3/7d9wAG+j3IuDJJA911KJS94U+glkO+NxvbJf1UtlEUcSBY41yZBU3UezGQYhEOreSlJW3to52mvNy2hlT41LKP+12p2iba7nuMZXmoSQi2P5R3+tpuoHG8MehNxTjETGT5G9Wsha7AwfiIqlEcbYpl4NfsCYxr32a0jseHmzfpzJG1O4tFdTGdyC+D7umbQ69pXIiVb7Qj3tz+gxenJvUUUes/LveLqu7O9DHjQyLIaitqEtlJEoqIuy9X4DBUIJe5AS/uXNZrqbBYavq5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zA1+IG/t5vpq+S7fFQI6Io/IXycRFe5vTZQO38JzVe0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "qv14QWYrmUIwzdVDWgSDb3WaBQdiZPfF5GByF7bKXTN115oMyAMkc7H5uDPK8wO2BzcdVRcgnxZNdNBY50rb4aUbmAE1sHRFiGvJjxi1Obc0JvCb9+sc5v9t6j7tkpQOhkqeSDTzQNpIIaiPHZ+u8l3hDGKWrdY5vawt7qD9Cv99+3qlj9J/qrFyAtpge312BLnHn68L77L+EhPtLu/Y4bTNcJ22I7jeDAq7FQsujkOApVheVsM0GenSBAQGtdV15ZTnBBjR9q26AqHHqm9g4AY3aHYpSEtB3iL+etns+mH0dhp1q9s7HEMV3MvIm+16h9dssneTu64X+ik/6yESVnyaN2c592eM2bzvi8cWOMbBKT1rPgEstC0sFky7/rYombChZ/R+KgNdtvL0VbcV6evg3b0YsyRR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zAfeSblwzF6dgM8o+ypflWGvvCSr7rALaz345V7D35s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ywu8nBcH+j/J/mjYkGabcvmNxHMbI8HIERsicaEhaVdvl6zdsHNltnS56+maNGDFb5NJPM7UzQ+yCODO4E2l7I1VIjVN+iGjXMOF3QB78+JXL1tFuKyszNNI4J8onMthgqFml6LdedID6ndfymMOe9tuE39NBwnZPN0t+0p2S1DJDmDL8k4U/jnjKqoYA3wYEqKmrNIEKIBn+NNQsxEr8cgAp4rfyAY/BJMFMCtthR6afq3e0Hj9mwDBvXpss5vDJPaDYkFLRtlJJl7YtOS5m1IgAZ9yUphEHS0JwB7sSl2pej/TojwrDvDiao6mgopQ4Kgvz/wNqriaMkrWdrmy4sCt0tWvybW+dABLz5ksFAiS624xZY5/aYJDq983CM6PFvk2jcXQurMrZzrMd3qhCLn6voiCbs49", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zAr0xyKHfl74dvgTs0fxdUoazjQl0ZFcl5oLP8nfRZ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kmVofjnRQucgb72oopBH48qXITi/V9FfxO2hjJrFyDzV7SaC7ojNpeOOCfy2p4BOd2PkYmYC1Xpm2WL+mMlbDJW3V00tDRImneSXnisVjbjePpHlA7W87rrDFgpkIeJITAHvBQibIo29BEvj8mptZ+HfjvpPi7hJQ+Yf944+baifd8k+Hfc6hDGT1uDLoIuG7g2jZMloQPVs2Es220cMlbTGnxIDOhZOo/meXqF6zvTA+wICjB/Hpp4qePtoSTIC7DDLB6K/n1U+kI4XMP3y65MeDcFJ4vr9NwNZWgWvSfX02JdNhe1Y5Q23dTBHfiTHQ7dtftK/51uF+diBfasVVT07qJJFdTtE4+bmxkEm7XbUh3vq9lb1hYqv+Sojb2aWIMs77tEfiY855sHhY7Cv5Dc9XfYot6t8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zCjwyMrFMMTv7HA5Ip2GgMjsnPC7nufdw6alaO5/+60", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9/mR3RW6aUs8tKpMYFabxoLXy84cVfX7u253tUcV6+9djsqXtLk9VU3xIW9S/uwrB1MYIax57jXWoDtVehoi2QjI+5M5iaRvzVMo2QV8r68T5qnNT2AvmIzaI0Edupj7JFrikvlZT/zmuFDsC0TLeBaXIBJ5I0Chrovidus+QyJ6AYONmQ7i0rTcM7/jbk+O9jNF8d05JR1tgtqvyl9WZYGFD5Qgaf0OeHfDUGsamoi4m6SiDt/e9GbUWel16ZGHtXiYqlVZoHRmzVman26zjWsi24KheIXJ9mkSoMueeLTq9Kvy+a169s16b10TMly5WjeVrT/bCiB3GXnjk5IimjTWMvQozwi/Ixx1qJEV+xownOxbd69i9DfLw8Q5ko5IRLORiNjODnuRU0oYHgjQ3due0/Gdaoij", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zDIAxCjRHmExxKdaVTWQPvL8VhOi1P6n14iVwht0gSo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3lqfkBMbyKBV06ajnqUqpu0tC03WxTOqpQ4rTaXdUo+v+MxOyzcC83k1+Z48qWn0wcEAcbeOhs2TMnSDEkNy/hqWDCA8rwOUBr9LHVAfcPjYJQDQUktnIE58KpdK6XZOuXmDVVZsegz7BBZXx61uvRLrDPVJDoikBVXLMDXweDhRA1GFIjQaMowVXucpy937BVQQ0ET82vljdJ8QBYjDfWRpCb76XiDp+ETDqxmvnZliksfZ6E8h8tCE+p4t9dSJOFhGTW0GYwSvfA/t0cwCOJpqVgH8LVmQJ7pvyjdNhljqSfIITnYhzYW1NIHHewYFSEwFPItQnQg58ssTUN0PZ+CxgQ+ki/7x7jl2UrijcgCnja1fyekuCpXE1Z/6MyvDPp4RGGMYMCQvZtuBaRKpY81u6D80ueAB", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zEO5vJhbNMapGC3hEWFLRkiPUUGzHWucVhNjfQCUSZY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9v1ozke/0qIKnUFxZYP5Dw0mV4e60h7EGt/EbaoJJvQoQDpDz5rpZ1uztm5MIbmzdy7ND70ZpArGLi0hXkSjWG1WztBUf5d3FQTcW68egwoSxMGvfeeNaC9jQ/9KiQGTLSQJES2OwzaJgM3bAulLhU0i+//1OVqPWuHj8sqYZXNHbjEFbOmS5abzorSpqFzPR7OefeTQxch+0FPayX17nIfD0RHFiIedLTGGWHI9YIt20dE6E2dRRWfWJWmtGxijazfIJdlS+gl4VZ41df9jHC+Lm/ZFMzObP4mPGIBNkd841DIY4lywf5ejVUzgGwrdjJU7oLsVgx5c7fwPxZKbRCHBHI4zUwXkmKnw519HqTgjRS9YXEU5jM5/B6MocKXda1GJnYv6xf/da08Wz427UHlVAhHmZl5p", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zEhV6xzX2VAXc14OS4E6RPVR5honI2+Gu0MedkM94pI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sx1hhklLfH7EdMMedY/jjqgrZWaMF/xltFOUh1tYne9/6TXBYKW21Jqn2Jg9GAiktEw1Q9VQdfElcH04R6dQmqglZbOMdyOZ8GkESU9v8U5omIiaBdESxq4GJy9qJpjxDWFM6zbA8DArT1409FsyozUAN7S96O35su79NVduUDwYywC/taU/MGloYaIev+U1+oBZLSZLzriobJcKN2Ln9LdT05n08frFcKas+fXW1wWu01FGJCR4VBrAFETanKfDpzNCU2EpuLY4Zio4iHmfnCogBBrx1qu9WXwP1ppCt+r0JIuFAvng65LDxM8k5vSZdNyBMOnNwtQn0fDfQ5xo0Zx1ZoFnaOM3LZ0YzeSYxNG6U8dIbfC3qxqIcAmTO1ARL5suUAhUwL/s+G1TZVAQRCc7Be2DcylZ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zEzAh7BYjsgpU9DE9+7w1C4ZHSQX6MTamlK5NhT0zQ0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Cn8IPVSSh50jI1J9/l7ebgafmsjFtR+WhAqjnNXTmZXlxbarh7PHzRfLGG0AQFKEn32kwWlPOeplO1Tjz/b4/epwia8k3DN9J675LEm/nZAHm03ExfknAMpGtol6nJaJj2meC0BjqlEdov8NvOK8L+6Y6rG8Jkax2OdX9or002kny7PWe78TEv75+5R40TukzRPv4uG+eyxMjOUy9P0xtHiZ1nbTaV0yRep16yDimIDd82q+smYuqPu5DxOHfZm1/IwmArDPYKhsjZMu+5Hzh6uaiA1sE9msTi3S+sGJNIYXtKYa10sRPcnOZQDedXNiLh+l2KZFrGasIt+nSxdR2S63C7ae4rRhprUj95POhnkPpfVuVNXNJ1xK+UwsZp2DMLO7C+Z6AFzEQRuQHqvQHpCfxmzTPrUI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zFOFa2rpQmb2wQJa1DUwh6rnlLuHOYMC4VZB2n1TRXE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/nA8bhjYI/xz/ZDleIjOrQFbDzklL17tWWozk+OSu9rj2U69vrVq8pylhacKb0z7WyI1b/l0wOs0Hv3AqnYuZrvPJO3qz4Hy554WUfsONiTpl/xu73UhiiBDxj6XrtwLcZWhaaHvYghLy951g2Hv7z2UZDc+XvCES88QcmvfOl/ua9OTcjyL1g2a7IhmBxl6PNBy8S2WlA8+e4OlZOe+ZxtYKk4UQ0UlsgGfQrebeizD+SDNj2UGZyeCQSJbPz8koZG6mv8gFPnECOlcQeKdydmMHL5cHy/+x4U537kCn3UoxvNZJw5TGU3EJassOipGsd8hM8PLjhA+pkFSWLXSZMiw9ygKKKKNY+nNguvk8GXj9KSY+5CxzmkUBzW7q0tx/Y9BoDrFtZdhe6RJZJXJBaR42dv/q7Tg", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zHz6t57vZhMA6ufRUp/f8oeltJnhebuamhxfqt5a5vk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "YBn9l7/ScdI+XYzTx01W8wde4NNQtyCrJ9Wb51VlW7saOo2QgKEWjkfwWKFqjKUSQM+SppFTRoeq3IPag2H3O8lVQhWlDa6J4UXhXMy0t0GGy6tmHitFvBlbkZ2JFnxR/oO7LtslJ9PJ9jO9XSQP349qu1SRrAr/9KP/fNNOvpZZv2QhwyZpokIOr15rKaCno3iBZPOIyE0FE0SykLqGopouwsNt5EefE6UiW9Cdh4XwcROxOWjd4/5ArS/rxjkoikQT0SRJFOwcBYRIrk8IBs2lv9xoEMboMq0vZ5m1EhKJtRYoLdMnM8tqObLpYEi300QfmyVjcdCQECIn9qHz1/HzFD/mCyJQITvzX5AnhEGZY85liQEdhejHHtX1SVs+FHE+R/v11Bvdt8e96QuEpZ3vYSVA/r4z", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zI6EuVbfE2O2SPmSrsIcNJFAOdnJ+klgCyQnZuiBbmA", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "VFXc9j4OXAhVWOrmnRdw5QMBz35xBv6utZKgqs50r3qL2mLvvtuwj8USPZQJI33F6+/cmiMERN9lNcQGHNs8zPCLHFpkGkVKGrwLDCg2Bt+ZjL+Sv9g6V82xH1jqUyJ+yuW/3H8X43XeqXhzBcRqvFvysG4zHlr9BkVuWHqo8nFXzrjh4wDtGaU706cVyPchHZWJ5vNpTMF1HBJ4QqDdKcp+g/35J2ZcIrsdlk5S9BZLmX6icqEWnsg/x6f82MeBCGlaqEWdWwojS8BV4VPGuhWrgEnvbmOPZ4fVuTFpMDJciK9dzlGzA2YK4oVbut9oE89rQCQs9/jPxuQYCIxBIAyzZ1p3pYgN6LxKePmtyHFHgN3GH72gG/UtFv58HEkv2WV43veyJN13W9ddXvVVEdej4ogpDvB2", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zI6lknD3HggKSvWweL/OyvLhsjQbL1Psg73G7J0I1s0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "2o8fnCtq1HBDBYT4C8hp3YrEVGAZJCC5wzV8GMOElNywmWdCku9SwfCMYSLyUKHsev4d28nJBKWkkxuKDN2mvYVgbakzAmBw1hmzZg5vlr3p9ZsjGDJgSF/mUTrxMJ43oNRlRTYkeR4MdtJ0BIeJLdpQlsMsfTsK4Wf8leF38NP3qlXrl82DX/2pBKjvg16wpd+jrzFALvRiPJAzU9YJvSDIFKOR+udxpa5pv/5YGmdvc6tCJznxG0kr3H3ZadLCzWzOXCceIHsp6yI3cf905qJAgbova2P3Ndt+/7HWgGqW3HFI3mrw39e3d76aYz5HfoB+zNxwNw6gL2CRGse8pQAfYtSYhnFdRJmKqNcF7uhx0Bvy22aQff+3LZE9u3KKBY9FVwnwEhop4FEZRxDsrKPZq2JXkQFm", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zKCcWdQYT3Z2vzp+EOZIYzMXAseNYEZ6/YWo+RpjLgI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KZ8LzYQs3vvUj6MG2uMl2hJyYbklmgidnSKomGg2CXysoKzi9DmQz5WiVXrIXUM+s36Cre3T30XvVcMHbnvphtn+ZvxSncqL4HOjOjkQDi2GS1xpTYw+ubRJW3hrIv1Bccx4Ar9Cevag5JKzZQSlDECf8heHouVVioFQH/hoMGgjREmz9lP96BmCF4HFR5m9NZACRXteJ8FyXQdxgNmxnW7M519hqOSDLUc0zGlH5ye8XEw9aFi3RluPkPPvP0f4DzYJKzot45NwuSz26koALLp5fvljBotMwF5QvEbGciM332YgWs6je5qBaVUClnUPAkXnznxhWLPnxPJqPJPccnvwUjuZFb4wpPuWlkRJhKAyiUbZ0+6bnEbDgWM6mUfDOGSCQvIvkUPST8cEJ375YneV3yRHh1O6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zPPrj6mUfi7VD3uIsuGvWF2Y5JS4Z5jCtDCTgFUlqwk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "hxktb3PEhl7+woRvRxtb0IMvksj+ryhqAlh698qCxX/Lf0FOHKCRIkVQbIOdJa78GPUkHyusIq5T+PrDSF1QwClCOckH3FP5RFJtnHUX9jbtTFiiiVOeHCTfey0IzDKCkH1Ogalhxk/UVRcTE2npYAUecdGPCgnA+N31Dw3yFhk1NiCpWusSWbIiiqgkPEQqeZf8Iw7Y0yhnUplMK+vBaPos8NdktMe0h1QBga4E0DK449ORfGNVD/RfYRaDwYG/LtMDYe/xVDkiebnQqEArfVqM38nVDDLiSGwU8g9rjYzMaORi6faqorLQY2trvm/TDSrHtgIjq2yaoGTY5akyg0Ry/iRiPIMWnRxEsr85Wv/MwxxCEeqzYG+RlV0xQlFXQMRSl9XGo+KXmNQfYV574eREDySGATet", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zPrNOKKVNP9ICf5iYjGgT87u7EitEmzWwHtFJbYoqXg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "B9rXRuSE0z8kumFw/uEGe7JB6VB9j75O+u2ktV+OtLPdBx0R3yQAdj4LdMDgWjTKMUgR5zldnFN8yGyGNl+Hr+HKx6t1l8YJ0NQvorU2oxP996+xUhyZqnFpMBIQTAiqK9KprrLP7wF0AXWweVGbHEzO43o3DsJepdsXf9KFDna4Ev+YBocf0l3y0PK5JKSQGNasbUKz+FunDe9rg8Ca3b/uLYWBCQXkvExKQI+GaQShWTqaYj9M+GMk+o+0+ep0P7jqQgov4141uQjYLHx0miwpSUAIq8QY0KV4L+xsuwfg0WwUXVe01QW+1MtAzj2dQkf8H97hmw5kiINIUdyFwhreFhqZIvc5xI0cfn7da030rMaqbk4hyds0d9rvq7Z6jP2Y4ADPlNCXA/clTa2OocJf6q7hf5zu", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zQ4gGBuSX+K8X0R4hckW1GbVsHagfagB4zKi5N6nz5Y", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "9eiVsZmqc50lsDVLjdLtViS2cfpzo7rQdV8Z5cVJyIrk7EQlkZM4YR8roNBj4E8Wjina1aqOHKYT4rikTBOX53EXt4bi9W31sIwiPN4RLOIfXxQU/ZV6o6E9KaMBTzkena8rYjBiu5UejHnhtrGbbLjJ2BrgQI/knWJ2DO9PFAmufLy2vXP49AcBg17yjGX9EN7fEN3M2jjYtIGkpSiUhhys1MJHf8521tAeRcfR4aIsmGkyZVwJVdblGjnfE1GI3/XY+NrU1sMQ6WgIw7y2GleI3s+B0KHNIS4kWloHLdRgtoecZfmYJnz80MCp7o/pFqCSjGig/FWPD1hpQz/qajCJmZnBB7FX9/U2RdlALOwi6NWk08l+oPHcAj92GzrwTOTxWthfWrPLY2K3tdOKK+Ye+g/+L16w", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zQpwtDvADM70ZD5LA0fUt9vZahNXrrqlKhUH52IJQTs", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "j1X87zWsaSZMNt2DHf4Ubk2yBZcPhPTIpZdOGNE26rQaylCtxqhXSPNrC7Zno1NjJMQZMq8VENHwXpFjy9xH+8TO9/ABRms2bj0+95zEDs6PaxRaxbcndBr8QhTen8WR5oHcTvT7vtZehnuQHdl2P/AhDIb3pB6tEfJuFDP4Dm/EYIqY7ukft1BYTvk/LQBi+1bcdZafImktkBn3tV60Cgln2cDTLy9jGAfJxJj2uPeqaodrRiIlKRHfUTt9JsDYqCj5qKSWRw9ewJHPoFvHg0yNrU06eErTAVy/BktwIfGlqaIAIM9W03FmUx4ghpdh9rXB+8/Lqg/boKZBb51MIhDOc/T1jFsMIaFOj+vf12z58oGFdhVXJbb2ZIdiW8n5KvBgf3tfXE0HpG+p8EPTirBet0cY4AT0", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zRMTfwaw/WEfBWdIIVusyUmHpAA5DDJQ7eaK8M7gn28", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "KsBmBROjsmbp+63DfsH5HhZMuQQL6qPx/OQK1il5tEB4cTmZtAmg6T/OBDtIIRNyLP7nWC1wZjdfEB8j4cZmsJetOEyvMF8z8qugGFdW36KHnAdq24r5ZrCuBWXmZzllLE50AOWT/PZnVV4NROlqhCEkeWb+4fjpxnkMzajO4fX7psJNyiGsRoYOtoZzpNWFQ1Jgv6k1lQwTXLPe9PcsjrSBjC35hdTOAFQ7XAsvGznnUdpAOtEfQQarITRuKhiDEyGc6c5C+Alcf8u0HSAiMtdO/Dbvua72lEEBBTsq5N11LhPJfNhPGafDzbuDBwdJ/oCM3otqOMy1eMhION09fDoezZZJhUyK3thPmdI7WhI+rcY7tQgEsrgAijygBrS8VThN5c7eng8TRY4WCJ9A0kRFAdXGQfKQ", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zRNyKIMw5Q2J1uxIzjmbYqGV0oQMX/hn+rXgNmvbuTw", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "3QGH7O9SoO7WjC/tebXu8nr9jH8D0CgOk7r1t4kiis/cJJZ+CbGfJETtMqfLYhVAJRKDUhNDW5x9LxE2C8WzpDPyvdDZGUdRaM8ClEBQyjPb8/O48AOzyAIFiIau81gb/iN0R0XkczcO8z2v4KvvXNQzx6dWs8bwvBL4gqu9vF2Ez11c78q7PsWnDYPgYN2wXc9a5PFNwKn4eC/Fj/dcB15vtFqhP/375S7ejHDWJOajindw+2Iwx0xYQFQ2pfLRRmjNLHjRw6Lk+PHXOlmsNcs44+bzpGHktuk1sEPT3YjFw5RhLMnbXilKuEATgd34xYmZsBVTxLTZLdpG9EpwANzr4TcRp8i9dyMrplZ5uwRV9nAX5AUHezEOt/qnMqhycMKkmBG/K2BO7iVM7A8K11rwA+Lm3pNN", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zSAtehqECC/uE7pv4TbHEqiC0+0FW+35eUZWzeshSIE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "kDOCDH+wAlW42chPTEui5ZXKL09mk9cArr8qd+m93LiW4xGqOYVj+0o5HuqwRHHxOZJLQNTwMhuNgVOhKywJRo6VYiFSy6doXZCmyvTy7znmPWSPY+8O8DMkaUeoZbXF/Z8GNWL69ylT7q048wnMGXbVhMGxzCQcr+FVIAm4f9f9mkJ0QvM7QZmSrPVkxnbdr/E+soJqyzxy0ITJCP3dgUyb9RbeMA+kKHlUslJwWNEPkT9N5OX0KO1Ae08rUz+ndDssrzEFtAAn8qUIjVgvlXg+YTIvTcG/Z3SOEbxAt6UHO9i0rgOexNIwy3Kn5T/RWSetVPEJXBqRfbBpM+Wl+JIEVtt41CV6yCgMbeinOfN96aRAyf1y1nRMqRAfEUMfusvl9B7qi3V6vVDMXIrthCdIuqYetdx/", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zT8S3jJLLD+dSodwpfOsDg7jV+JhruOMOaNfULvyI4g", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7AYK7Jke/E5CRcUS5lNZgyV0dBGojPjnsEMde9zaaY0F12uxRpU0xFGR+CpFokBG5AB94TjKH1h0jd2lf3YeFcHMSenfKDg3H97LD5240E6FwLYNmpvQhc2uY9aoEaz/H+8RnKTYLb+VE3VukdUn5r3sK2FyiS7c0r0zvmJyXuwEQFFUYmIlVINrgHLUCbhXIq/FvGby23J+6EdbAyFYUxtKr9KCF65XgkGCB88AFHo4lAKyHCoYdkhJKMOVQ59H7/1iIrMyRK1DcVKTKUv97/+RpapycdROnl/nUSwnQE8aSj4X7gFhhCR57Orvk5wUMDIeakEIvOqb2zKFnJJI9oOYU5dHZ9imR5nlzTTo1AW/mwlWL5aZY+bS/Eyzd9lM4ToAdnRCTGj8gMcfbC8ICuL54xtBcw/b", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zTgZM9ubqgkTKU4dUp5ZjIq/303CEMq65o0WI16XPzo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zD7RKc/HRMnBh1zPn8aQk27ztL6VMGQaRDUlEvkjrKsBsOsBMGfnG/8vpvD3vD0O2Hw8ZdUU3UFcwAEOTKf0dWY9fDJZPw7TrsrbcvGKvOwqjlm8/Mm+m3KSCl+op7Cr9MgY/wRgeY2gVpCPdRsq+4CCKa8jpO6m/2XNBQhOhfocKeGHHHJU5Gqw9TlmNO/Dpe/ptnUEW7GU0m+DqZchFRKQsCHpey4oVbt9549ZI55E1qAIDeoVR3PD6f0xTVDZsyAR+2kP45q0Mkf1opMSlXoNSmSjxhBUAm0a39vjoOvULg5rEMun5H8k0GIUyisqgFJPM458la16jjsO4wJhtCmR+8bdHsh+g7tN0y4V6LDoOToOxrVmG108TPCTqUblNoVmU1MaWeoZn8xb1G8OgBawuHjfHkKo", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zUT7iY++U/hOr7VVWDGDP8BLtEY68BtcenRyGlkfh3s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "08HVeySGBN964xTNzLw26FYNaMms7DbpUaYgOAaOiV1ziF74Wc8MNOfLUs6av66xvz0tP2jx0EBihdHieuZn2gEGjwU+kMw4dL77eL3xmgkRXd2SBADZnXvRPStqklaSl7wd5YG0WVd15+QtQZ0OCUPW9rRBrT/YLFyfzsAikwFk7AukM28puiNkZ4fcYfpAppT+qN54JB9X2xCbhWKa+hsfK5PTykkDTPDjb78y6MB9V6rL2ek3BcTh8VZH/2dx9f8wiYPNqzy7e5iiaEYC4G22a30/QhlinPbglOtltpnEavnV07xYTxsiuFmc4q3mSFgrLUf/znwepFk6hj2J/Q8ByghSf0i9IOw/ViG5ksNrzq33+/9oliY/+5lu94r8eze4nmC277Y4BwCuFYH3KR0ggcN1R6uj", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zV+xKkaiYpVt26J4KzYmegItA4VYUG19ZGcea00w05k", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "bDEff6/eCy+LFDPczUTPmIGNsObGXmbu8k/ffZuiTTu5iEmr6b4ZK5BSMJSj8Is16i6zx4nELJvgergJQMtaHXwRtxjvpBb0qQKmU7b395AfHqbA2p5PpXoBcXad8lP+QCTD3FF2O3/uB8ZdtxKDDjx0ohbTfM7qea+GizIwaQcKhM2HRXr7LQGlBjtGKxNgNsa/2YAWx3bzVBLP52b48gbJNAsXGw46/FA8MtUSclccSwegjUgSPI+p9i5U166T5At1Sdh5/UsDBfDJqKbgtxgsoDJaUxDu3bCJjfEX837H68uf5IgW0RyLg4wot9vW8f7PoASLdNRjdEr/hHJmCMp+zf/se96fODB3yrD7sQYSbbT0Ll0bB1tFZ98hvVIIlrqP0anu60xSenoPphSq3oN4rT0XSsgz", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zV2ytcUITSPKl8dPpcK/30duuny1t+o4EmSTdkqTpQk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A8CNyuYR1cSH7AS2bR6ON1uSAhZUrzNrhfeavF6wjNW8K2u9WgC6DeiYVyhJGJBEltRHG7cs8Gg91znmR3uSMGjAUjkFv9GwuiZb9m+8tBDIwlsbyibSEA8c3fOJuL/IHOVScL4/WPsegxlb/04bWX7PT8jwUjppLve5nI9NNy60hsZmXaLjfcpX85Ipzhw0jibD+OF30TH6GHxAVyDjhi3Zwrm56/UDoTMzJaZruB3WuSHxysW/Lyf8yjj/1+nVmxM4W2Z1+EpTyJpdOkOmJuzaTLjlayJjjfSStMl5InKR1cA3MYt0kbnfPFdS46cexD8TF5XUlBSG3G00Xuy5DdNGT/BtoiYmhsAoGbnBCHyFJrCqZqa5IacaCVsTntEFyLZnYWYs8Qt/qARJFSh3LbldlhFJbOEb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zVOtdMKjt33F5sOYvScy/lZdv7puzeHqU27BT6yWsAc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "mniCAK5NXuom8JHyxRmofGuawiU7c71MGN/0PXaIxj0gxco8+OVLgiY58ttBxcyogqhKl15RvhCUJzIoEp1C6Dne3YZw0JoJqA4E1CDwuHDtgmZjNsfq8yFqRXDtLf9ClD+ouBG0NXA7tseYQAJBzv2RzoM7QmXVkJKFih6PqzItmx/YYETKupiu6o0buHlnCQxG4NIp0aquQiuGxSHq/mM9rf7deBqu6EObwC7i3umMInDorwE8pDt+cRQhttit4UTKBfHp3VBBNHw9CjtpbwCNnzAmwUozwAN4c2CMpSfVHw5ehbnHwpv0Xh1dcqszi/j1g7L0qzuRcFIF42EvqL5VtH2x/2+VSHJtvKNEZelL6uXP9YqNTjCHd9LFz0zDNeBOvjYumGj1gYWF/TDstPAOh+4AdPL5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zWGUjgRke7RwOSLYSIjfvAU6Hxg/V+v/G5jDxf+3TR8", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "IPr+L9f0AMPisNt9cwkjxFYxGjKVlGLgSM2MxTD0DFUYDYi31BY0zfUFjRsSU3DErEJuqbcfJBegIyLFpUy3W6lPNZTbCzdoQOxsnWRqx6tdENsqxv0kJqIE1xlnnKLkG4MKXMGtwcc8IoxI5nWQfrjIeX+qsMTcawBQXpBZ6R6FYJABKznERd+G+pFfrmkGokxRo27MQ3aH6VaNA5im4hW84TyW9UrkTf3OF0exAernbmY+8DIvOuQWwR6PlyxNPPmFzo5ryUFZBgjTmpL093ctZOWgf8FMa1nWU/5UcYhDUz729MoqSKPXioAedHwZ7ehGt+r22m+Lux4OYUXqSKz/t6HnWhL7DmjSRvT0aRdX3gC5b7eBODYplTkAlZ3/G60Mpk/RLvCtnR2FJEZGqPyD1S9ZIOeC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zWaHFkBhiO4vBk0PBPY3JwPWdADHYpLn5ejhA7TKXLU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ieczmTym6azhN17BSzxY3tkPEpkaSivNrbse3uJdVB8FMpY0r69L8ee7fsDOvstgxoylb11zFRRmrvGFAXxGvS+L8h3vvc+fAdJaHozFk4jcdKACaoywZUZjUgCI0S2yCVXUfmiy0sO6mjEcu98zAZB8+S/rfBdPcILR3cWql4m9oYYlSdzSYYxptVcJ9UEVCNqfdqmpjT8BPZPvYU3CTxVJmEacYg6dPyYwSCb6gnhnJAMo7yRvQ3QUqacsSCjI0LjYem1NEEHzm1/2uf71Z6s2zMONIZ00mJPqlxoqOYrePVsagvdD7F1gBZhrgI7N9FV+sgQXijWtaQwnmB8KTLc47X/M9AXXk9Qy8oRKXagcnUr0aXjxTbdvpvru4rOcSqmd+mMS6rMHyjJlH3/kTkJrHD1fdLx9", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zWosS9aXlNWykuiegdOq5Pnb5xNK8Cm7+nKWlNlovJE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7dquWlEJusf200T3HEaXOoVtXWC/2wL7I6NzDLnUKJewYvao6QzL+lQOSb4unyH0Efzd/RVmojOw0ZPURZ31K/HgHF3/qnKkI0Rg4akajGH+w89a4gGYARCg1PIrBgAhPDsaupoKzNZbUglx9xO5Y464AJ9mza8cIpX69lXluWI93NMTvQTLubPqHVLOo5OKa8TRzBBnub6oiu3j4B+KFLL+OSJNeoK5BvbKZ9M+/Jc0tHt8a7xShpdBYWoh5RbE2TOHh+AOLnVrossgfcdTGUDRTr7Yk9/vJb9Sh6ewYn4d5wyys20929I9f770PItV8fqEybvJtAS7VfM/n+3GNoxhNMtKoU2yvOd+VJxZQUyGiGCGTI0ePltAO3K88m8gqhdxOSYrr+v2gc63bghBW8Y8K9QUXNH1", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zZLdIuWRkfhcdqMS0A0IL5oek2FkoES5B2TFEHsICtg", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Gn1mFtw/XWN86V7Mhl4xi5kBP/Rlh1EgCWw4sw+4WjFIbFjSxkY1WGBlT3G1EUH+UpjBKC9G/A8Msyn2JIo1JRuC+r4ZYOUqjvBpB9fSG3zADPfxp8bpEE1osLRFz+i022GhTiZCYk4lHD0v4hVsolvjjAOz86zv7BMQ3ofObLH1isZYCbMVq/cUeXUfdorLYZwi4l6PJV3sPuU8aWY1oH/h6/lrewZr9mA0SEou2Q7RzikUbCDXYWkTUMM+HQOGUOqRmsayBDuj/lxussQGGaasegzT2xu6X3QHww5Rnq8RPysjFybDPOAHH+7mmYCPKfFDfrXNUWks/SduaAzbnfD8YHu8alkv5Lc+MubZzDVKc64L/nRGBlFAhIu8sgvdyQ/kHgcvK8rU8hgyoyRzUiTVKghvdZdb", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zbqDyaNv9vb9a3emY+6QZah+u+H0u0HHzv155x7DxjQ", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "Ikx+9Ej5NnBz3dOnFI3afZ5fJ43+t31qVtleC7rJnU/jk2BrfRIeQ93qzitjwS7GsJ2tygrSnApZk4stZyXjFLKLqA/3MszWakSx/Ramp4ytRgjMjluSJq2ZU8IFLqu0RrLDG2CjkmWMB7ai6PGuUAPawaOee5SJuw71rG1iV6UGaQu2BrkGEukFX5QUDmd0an74gv+Pyl4rPNLCVByle2CMfQF+XCHZxwCqHp1jkRMafFgMJBNxU2XaPrnQBiMNQA0GGbTwtw2zIUgKApK8RSngAskQQLyKCwym/txxCfDmCC+LCQn1C8i/5ZiWFqong2KTbPGeqip+vR4XHdj0KVYgMeRuJdD/AWuiseDx1Q3UwHQMLNglYoAV6vX266U67vP0R+5svzemnUHq57WwoRMsjFEKgiD8", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zcO8mroOfmU6jyzdnqbjJDHnA/xcpu3LJWcwla9uNn4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fgVyQTyb+H/63rQ89BSQKtIpZb2U3S5n8Xz07EjrBjL3Q2nDadzNFqqvMcirEXOS8QYuwnjspthx+zhBT/N3xSyy5XEEV84HiSu9dDP15NSWXBIKzd2kRGete2+Bdlflgk+l3neHgsFsmdb+ihK201o5BVy+8q6aNL0ROAUzgHA2MwZvVdhZyLzxWKwR5zxw6QnaYY0CDJF/dxlz5kfa2KGWvQyamw1EAU34V1qyhF1e4IjdrUgbzWXqGo5KsZQSU+XK9AYXn6pRbjxUaLBONOKeZiWr8RVpVowKUi6T7t/EXpqV9s9rX/k6WfOo60uOl6GFREXwT9l6gQq0oxewrEcIYYCsoj7wRyhbAv+IWYlnbZm+zkVAxJrslDicKdjii87mnYrf2ZXm++spIO5jkTg9YKGH6hz6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zcXd+/1koGGB3NmGxxMbvWhBD7ipa2toIBoBZm23JW0", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "TB4q7D7ZIMaifSp/IK1S6i26svtl3OZ0qttZhuwLq9YjTrS8HH7TUKmUTz912R+0IV7+8r1EXhHtY7fBwrtgc5QZjSYC0Dk1jUTUC43X5WsgDnbPosJ3DXe4KLKLhPePnMoJAplBVmvlRfHBQJEOBqDLUR4J62Sw1TDkm/gtKSoTJgQpXhDmJmtdSrcpv4Ct6mgXbzKZrB94lbIcXNvNZaOniV3amaum9VOYXL9bkypk2W59y+jLEEWhOUF+vf7Qijn3/gKZQT3g15g5HMIlzMRSD2xQTV1U8B+u2lNErrPFYAmX1fdm6gKvP7P2d2aZ40eLNY7LU7B7Bmk/O+JYxRW51ePg72peyv2rALZvLpGFyOt5uMtDZuRIaSXZrIW+L0O/0k0JWAG2LnZ5a9rVrkjsq745RwrR", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zcoi3Hcc7m9bwVbkA1wDz54p8DddRpinpOB2lWVHQmM", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "xQkJCgDrLjfyKtGOICnkbqii4kPNS4I33SJEqH5Ab4PPsMTLkxp5eiz5z4nSlGbJx2b4204baC6PjWf7Bgu8CUuIK/CRUQuu0YvuoHzF0781NKswjr+LiM1PyLvqJhnQv0n83LxjW7D7HBgsC0OuaL3XwvaCboTUA3vN2TxNQ3wvwFaKIdnxM5hCgBHzz82QQArjiLY0JwjICTF3UlfEkoClsSMCzYnQq1nEcan+UwZa/UkIOP6K6KqdGdanZ4gUpAtJnsl8L6PpOhuHva7gUgLhcmZpkAko6fA+FoY9DGKEJ6KBD6VMQeHylvyJ6fOGAglzSoqP8oaKMxRCRgNo4406CJ7er8ANqrY/CmZ0USji8vWjmacUOxo+iDGUR7CaLyDTbr9r/hPy2Dv6EpQyLNGI0KIdvR3s", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zctv+CrpdmhuThZEuSE/Ggqe7ne/LNhcCEP30XskssI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "MRHsiq4I5OJGPxB5CLpzarrHFWqY9/pmeXgameW5VNGK/MvTSZC5hzvm6w15owVK1270KpTyhqDRAVCf7vOVjFibnrauqGYGeNK9vDrng1xbgLOoAxkUUPSjSPjRz6BJONqqjh+PKngEO805JIH/ZLZyV9QDYnrXEz8MMX0mvyHza3KNULGZ0ZVN1VEbQm0g7K+Azu3ExeZgXwxugP9+0pYNYzDQuj3iU5VUiNNVugTwTxBsz3dxZPQ9A7QydEzm38WragGXKNZDbCAJe2PPniKyMJb/4/MQA1yRcaX2YS7+6+Ixm9s2/hESlUmeyHBtzEw/mrkHmN5gC0hus+Pg5t6MArL6Jwy7NXfpKLW1FGFs67CPykf3Djkrx3GWX4nzoP5wDoXwriymZf/cv4QaHeZfYOKR4Fw6", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zeOwG08tkdcIEJpAc7fW1UgLym4o/Kd22VezpoCkRlc", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "+V89j6JGXJAVP2r4tOJVYw8d7XiV9HDd4HqNtgUR3jFgzt6Q9+nr1rcOFQ1FdfyEQJWnKAW5MK6RKAE6ZKOZENJWC4cHt08YqFbRDm9HkQ+qUujcJAc7avmzae7wRZ25Nk+kos7veC/8lqgkC+Th/2O2EPS7uEfEoki9sfz2aa2/ur4nEGROrInbd9fpeXdTkYqcQU+Ec6Yku8mlzBUlydg+4DDUTIqL+hSJ/PJB+6Z//w7tPuwsc/XouSCRC3GrUs981YAd+ZySnEfpt9eEk5D3vytOxRXdnf5wJtxrDXg8OkIkH9gTKhk855EzRut8BTSSL645R2bMgf2Eknp9Q3wTUM+LMwD7L8hpAcwpsWNPLE5UWR4oq7O2pOy//SjbpsuuCY33BAdkKR1vEejn8jfkZ0JKGuwD", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zeroXFfgTSZWCSKj4rTs81G8xQ/QcwvIRFjSP+U+r0E", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "1HUQbMNmN4SQmukBQwhex24hdjzIpZ9CVXLoxEmNhHHOstptbOy3wewF4TYgjKt7e9Be1lfL9XOxADSJDrKXv+lI3xoOTfmpdZ7clo8X2MeSHg0Y4qXP0c2C4O4DaEvqOot4rVyq/ltpI6Z3RIEpSyH/YqXqQB4+wcMpmHZ2Ysp2W8/jcnSmu9guw3/QO8+8DyPVLgtdTGwj7emztFAmznuS7jJhVnQHJ66KOW60QHm07rsr8EzMqiwZMLc8rxnNRTgyMyub8wTgiqVQ0K05aboTLMt5gBYEXmBh8HIdeUajQZsv/LbO5fgP7XzTIn59WmYuZA8cRBIIwHZ+V1xC+ARxF8twmnuqDYgt16yoi7U3WxrVKvWTI1tsBdWstOxjvlIis4IGL2MS2yjzmrp4nNtbVgGx96Mr", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zeua5wxMGF/eVkOGIG9KNgAmJbj35ZBlabbuCBaHX50", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "fkxhNeowwu65G8G/uSGWWFDAQp7FOz88veQcXKcD0f5vArCEChPH191q62tdeaMTEhJYnW/YCbuha6xP8tmOOMO+2eFaVLlvVVlk5T/uGMbrCiq25Xo912lDdhaI8FW/baH2nb510PfIYCwmAwrdA0tHm8p6gLW3wj2Jz5rfzxLHmGBphZ1CbayaMECu8lJAI+dieO9B9oR26VQF7fVaTiDg9Ge2OD5iEhr/VEOVCZiPQE0fTiyuzg40QUIoydvT+ws3cWY+d1zh73lRDFQL17QKkZlCE5WLyC32TF9GDExJ/aX3TXlyj/lbNgv9/aE45oLRxxkRw/vLuG1gODSbv4BX5IHQOmps/H9NMXUMyTLGgSUQPQV3lkmn5NdnEy3VxwALiUp/Eb/SsdSvTuGD5m3crlba/MZd", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zgmJQb3rF+vZhGzeqG+a8iTU4Rmxb3bIdSKxtUuti9A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5F/t7hHJ7cORKcarNHEjnADIQUprQxqQ/CkJDN/o2KMu2wxR8EN6S14sPE9c+F3bzgq6BSnBEayQXc5HtH01J05zObTm8phnbNu0P72RWZYni72IougbTy9rs4LNuDkMjGVGpNCVVG9gVMhlX0KGuwU/nWXJd91+t1uv3MExsHHB+06uvN+prRm+rgiI9aOri61HBaMdZQf25aGah9GY4x8CnTQn/9Lmhe2Ul/cr7r/VH5bDJvu9QXmTNdjWfTPDouPiAHnkX4Tev/0LcZdUt6no3TuJD92vZVyGqu80hxDwEe2MmqRP8x788ED6HfDIaBJh7oWMVLwPq0PtzoFEvP4f05nF0eHbIy+POT9+PglZot60Bc17FhDygpNYE24vRxx6IikX+QbXMLISoSn5llb6f2E3WBIU", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "znBcXN+Nmt+DB+eZ9KNPavsIHudsX2qSiMRODb3jblk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "f04WKiOF1BZ6TSfx2g+WFC3xz9lJx+rxJyvHkOLlKn/FcbM6JX1cv2/hZPhUGbH70c//qolHD+yT3PNUGgkPmDGYAB6ARR9MlBiC1noQEwd4j0ssqg6Xmw27Qx/M1YabriT3eOhYF3VM5BahLhk6NjpKEyXc3wX4kn06rOPLwnLdtEEURExcgGTa+RZqC3yDgO05b7ece4XlSH1aupxGajrivra8wAbjSC5GNIIxL7Ow1/NruYLTcj05RwwXRw9LYWQ+mptUJq8K6btMFDXbxEv8ym5fQ0rsbAuKw7lgd6UEmGZ42gBQz3+RzDZH9J//iLjVxV+G1OQbFLNRLEtwt1ki+SlVY67By9HfERHCLmVhfQP7HlKr1pt1TeOcw0JjU551LLRFPN/wtngWxINMmgYS+pmDnWag", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zndOVdLYUX5HWH40A1XcxPU9EXGoriFeGE+urpWuzZk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "95y7idPczPibX1sgpvPjn2tlYFRX9SlzLnKDHJjDf/Ef2Zf0yjC/RKLMPhBC6kPUDpqxKYapKB0BT8uXDHoOvqVKPD7YDdiuaiyl8/L7IJb+WJ+LykbyitFV7AEUfLFhuaqgFr3Ud621a0+waNtl9y0p/klJ4fDmP6QhLGZguGcUBFIvNyA+wNYyYoBnEKBCH58IajoqgOTx+eMTb5+kulYgiFISkXI+hQOwqCEvADhAv/0tezG4Z5li6sAyfQw1AKSmNGvsgIPg4oUFHu//O/3bFXnEcl3DWw4AOIYusRcK/QB9w2mBWcbcV0j6eWvhg3iLspbQTdNPSdUSQYWJZvUTidGyoqJ5keuA0WQ5RRojnA9ttLwX+ye0DxCQfzqbwCSkSC9FlFJpMFqYWUiH1IHahfLr0EbO", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zoQ1QM9z34bWE86j285x7mqJ4y7jsk+OQuGkqHJks+4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7di4gdbetG+aAAjVp4X9h6EtnjxHAQk2xAfr7XXPokOztyRAeJCGnSYl0pwyd3Dlo06BWzap2AT13tMDLphJ6TzIEaXqKgGY4hwhWZrShsoU/TuJXID0SmovAT38jldlNTWSWi2MUxSe8iGPV4Z9+/FnSsQSC9wdddpZGB7r4h6jhuNxCtADsqEieFijzaUsKrkuH8tL0QTvX4Ws1nrFj+P6QtUL5Zs0+FgHY5ycpQe0/OKOodFAnBxfxtNZqgENKlg7xT9GVRZLdUcCD0ybRp0in6zScxCUMfUMro3atH8zoZ4RNkVdoHCoHJ+W1BjOAhMLHqeoCyLD7agUD35ibiuNy+oPNxmUc+xhpekIhNiintwdvKJUxuGCJiXJUtx5XVqyj2afpfYU2/lJ/YhUU3hsVdm8cDZw", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ztIWOGHTio3Dw78fDBxBVtIpy5UebWN2h6ESgj9UAnI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "RmrVbl7sIucVXZPWYGatLqh8Q25D2hEk9eMfGQPZwvQl/27vpQ4Q8q85yQFNPhahdbUSAg1WrlZk2DuuqpKjfRsGLfd5SZWttOXXzCAbzlVBgXMmODAyMlCK9buxIHy3YBnhxUjG2RcjgbLYjWVbA1FDHg+MmDBah2eoknJB04jerptdCsNcYgQMzNxJla9UlG1vZzsVMAFfzPKL7fUqu4m6avmrZkUR9lRWQwBoIdUlh9PjCrl3RL41MRKc/LEDgGfHURYvbFGz1kfPEgxrGGCg4sFG9BvC3wxnom+OAHV1CxsRPUWENBVEJzEpi2W30FAPeED6GRE8kPLSGSVXMdnmsXy0yw8GTzhn9rOLkQwjrtn51jmW+65bpv/5f06dCN5V6Bpm8JNPP8vEiQtgGBlOneGAoN4e", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ztQKxf47zTlqlwyqiyA4OErk/Lp9e+Zjt7zqpY7YxnE", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "aeHZ1FzVjopRH+VN3wJM31eNCqMBfnRmhCIqzQP25E7kHvLUlmwI4q3zoNXtFLd3XvO40DrqNdF3jsyrpbM27XLx1Qzz8kCcS/WoTtXlAXXF3BtM+lDgWcGlrJwFl6fk6wJ7DR0CnLFiaa4TVVsGNDWQO4ipnBwbzHo/slxBhqLS4LleBwOk7QM+fqn7MdxcPlzZjpzyhIVKN4yZ9WELO+zZ5s7rCy+k7OWsxQF2bba4oGxLujqyjRTVlI7qznLFXqdXLyrP5Ein0skvUrqBhspVEG3a/LF01x8QFOu1vYrJiTsxQi1r8OBCnOULAPxLkDqfEuupsfgfaHT9UYerVgYdTHbeFDwU8oLwnZvFU0p9qlUMgSZYKdQR/5TZw+tdcmFH+M8vkqKzh+AGxeBqpFDb+qMJ5d6S", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "ztUA95PMGAas3dW0X6D1a/mHZyzZxFkh4AY5oF5ua1A", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "7VsmcTzwPjm9hcSXE0i9ew6GyKDRcNypt5pW3ExxsOrXgpDh5NKmI7/6cwM+ltgXDsJJ7797orc/1IgvIkVhxOYheQNeR3RZrsDek4cvtqLgz0o7XfJEP2l1Go8aRirMIoVzm3bulMuQnJ/iWqTNQzxecgzqq6Dyb0jxO5wzu1gI8NTKwKo4oXAIW91J/9HDD3hGbYHu9ZlKF7nT4oMLtJIHC2kKNu4XbnfD5UsPf6r+YxrASNefhrgqVRiBH4A3LbqhmZLIV49CQY+m3okGWSfV4Rbh3ZthUPk9lPFfOekbH9fpr5ALJ6zUMKT01Y6SrheqtYnccpTMqxZ0L+RANIRxUssKnSqFdStVmzuikYeK/aY24QD33T2X3rXrOQ0MtNMk7eiYTm+Nu6n95aLSXVrTF68KR9MI", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zw3NDARkmQ0hNZz7bdzdffozs9pM2fcWqieb+oA0O+Q", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "A8u7Fp/2Wji50sdDRIaPs6fvju95xTOI3r2JHmvSvu088nujFuXWBR+glQv3dcQO+LHNwt4OOZwXEJvK3eeNq3UW95bM0yNUrtUWHeC1aS0NQBIfTGbb8G1qsr/+WGTeD8ir9s1pRuuzoqW+d9gzSGpSbSvY//kMbo9j0F9luJP+58li3o8ms7+1CAuDxT1AV/zNIcUffxHGegdd8zslMTwMwnjGO/fFj/8tIsPGHj8hhWCiLA/IKu18QsMDTrvmMVuIijodrBux5AJoRjnaJ1uByCnSrSaIMy5Tf9UnAdXo0XFwuLkrBujFOLJYTebhs7JZqzhYgiD1xPp/nr09P80khWHDMt2+Haa/9W2jayrPP2klSPhx7hGlLTc/aaKWnbdD+ukXd6rL+5fSEL0ZdeuRabjW2Wut", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zwLtSTM3GscgHN5+M8/LI1ottLHu2FonYVSC+rQwWeY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "CrUvVIy63kVwlyeNbGkZ8KhNKEdScLDXSbDjs0sjj3LXju7SHKYHPcs/KiCzfJQjGlIhDyIz6uJUAXd2oKGb0BBstQ7h0Y9J5CVH5KtrqzfUDPlyt1SscLEswHdvZz3sTuCuma3FuDsyvCw5HkxwWo7zpn+tTDgH4svavSR75ky/zuYNUIEO4DJJgaAXtPNodRgGfLlVafLv4si4CgVlek+25HMnmu8zOmfqSsFXzGvAs+Q6sW/K2jd7AXqo9huzbFqJ+2soU8Mxk2Yvv61M2C0lgUrvN2cCARJOMoxRLdofWNj1mXJtLrwF4T2AL0J/R8NUMCgFsgxiChEZIYwevfQ+C85BV2S58ZfZBXd1H0wG1nR0qVVBX3gD+C2n53gxw/jUqturLxMS7mo+szFSMBdYBOYUktVx", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zwf/e2PIu+CItrPEV3RUnZZc7I1JS8LmXbXqfkH4fe4", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "sMamnz5ST4ph6z+KxRTOvLW/aJQVVPO92I+zqXlBziK/oZcqAEMZGxtGMftG5Y6VHOS5vQZXaao+eGmDzomhnyXv6Bps9tFwoHrIPd1cprfxG5xH4Ww2TTkUUeJKOjrEarr3RFRDlnVDmqPoXMq7HMTDy9O1TvSn9uug0o84ylMv66lr2Lwk4ns1TMVBw/scOBIPxQMoCQjAwLgX0XoTZcizZ80pXP+5TfnuTz+nia3V4A4nYRzwLXT5AQi4YhsLn7GLHma8J5np54XvLFRAsgnBb8rxqX78dWlyW31x1vGq2VFnPNqhW/qI7TMOYf1M113k13ki+SEEhh0z2///7pC0r2UgA8Ia1X5DpUM/33QWUshgIO90mvjoXKGRgqXR+rdxlFHbnSgIMbPRnVLsjjq/kO+e4NC5", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zwkQUEXjoPAkpxhCqXj5RE1Vxa4PphJM/5Dq4WST8FI", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "/GhqsQ3WrdAjczQ3JMgqlxnWzhIZQWYSjQJWHidAc01I10GyXfQsPI5aS5UDwanfvExxY62lIAhlsH9CFnox39FF/Mj2CCz/+56ujFxjxa5fBqxveb/cSw5RuFpr6CWEbnhjbLXKSD/oCwJjSwuaJJ1dHEC4KbuyzDi3u2uvAr2TM43sH7JgMyDD1xwetNz1V76o0twYA9uY/hLyiqGAt2T2E8wWIpsAXSsFQKSHNXlhaDYW/bJFpk8Wa8jmY91A3G8VVWiKQ2sCYDEDFeIlXQ3s4xWAhXuKhBdJlt498l5U6Rc0K0fy+xXDBoTMtqe/Wx91S/GfKskrmdL0aTwR5LKWCdF/W642PCLS/WtE4E7UeuOI0QIwIuJtH4AyTIa/avynzQrs9S+w1Vfd2GnzVFaJ1VSFfinA", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zx4M2uUkJBtp37JzA8c5mNuWw1U2ri5JlrfqopwoghY", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "5oR0iTWJgeOoCrrF/t79Tpn7SFXDtsHdrm/ddmyqbCd9OSfaRUyIzbCU/m4cu4tbdJnuxlG9hHN8CoPwuDUWTbfQoQzwu/QkDDvCGXGGXvJZoSXX7rZJX3hDo9LMET0dLSWFq8E2o928KI5nIsdyqoaPVeQ8PPqCs10upADHMICF/LzHihLZWPmkiwXivWV42KQA05C2wiRRG2yIQewflzZau6sMe1Rxmnw7d84hHcDOqENlKo30fSi4KjSd70qjlW1WiceHOrZXwd2FTn9PuOEORsqcRSnadbzV5VSEVivRQP7WrscWytNx7MW96jDa0/TqDhfsy/a0Wj8wVWCD35aqkPh9Lv328hBCO6m4lU5S36WtlwI1u/lpUq4IPdGL0UXjBzzu0hbYTc+/wsVHh9xM5zVKcGOC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zy9dJg3469LEKY2r3gnP03SG6wZ00I0scgin60KxOXk", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "ulUTRhAK8ZSoE3mnIcrBHxFxC1kCpaqIOAYNVrJPTY4winTPPeEy11vsU16Gi2w49bStxjwGB4R6Jb0ay0XQGjh2WhRjhba2knT3evBIFNmAs9MwzqM+OEIS3MwdccrPqqs/OpHYDCUcK/5O3gUSzz/KLjWtGGXaYviqBm+R6LnvcakM9pzFnnVYJlj5DH8SmCceJOlQ8yFxzppPBdv8v7UyS8BAnfZTQHNd0/MBtcUbNpQknVuPbqMLP7+2DD/2dkebdrhMIrs0CBC81LzcXoYStIjAc7NOZSFJhZyN8LbGe+MFa7QbVTSve0vBzGgDtY9V2Ta8QX8ebTFVmz6CgYwduUBdmVdFfggcw2nJ9YZCrQjvRggz23hip9c+8iBmkwRSByvUvQwOc0kU6tJnrrF8d+U695qC", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zzNrL3wuZMBfztv9+/9xsfBScYGcBXvmqIcYhl0PQ9s", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "pZdINQTy9bIznAr465cSYDZ0Smew3vKcCb6vLJqCmzO5egw8G7FrdYETeuqRR4L77raM0vyh4zs3X8V5/Y59eid6mDwpFzdES/68yceK2tkECPQPIJasj8L1arFY6TuWDeo2xAm1odWy94bh6Lv8oQwvDuYB4FUGzT/5RiqphvHNud2HV7Tba3zv6okdMfJRN/yHHlxB8Os4WHTAgRju/KUoQRlzzruubCM/aonoM9d88j4/6Z6koZ5NAtlnjPo+BY5oRoQPmxzx7kR6JZu5RBcF+rcFvJYp1NvWaDb1VA4nCUkoSjN84VD3feqS6gp6A+QUrfNssBAPKM5g06ui6VqBb/IndZjiI2mSkCs1uAj3jHxjke8Yu1z3oHXjhOiC3jNqAf9MWeD3xjFQbmp6Qo0jfUNoEmG7", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "zzd/Zmto4FTMwjX62UzW4r+yEBci+dkJ5NusOVnr7Lo", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "tskiBwVTM1SQNogHS0dDC0AwMRpz2RVg25VafA1/n4pDnikMRlfufTE/c1JFy1fVKD6sCpUakP+tFlGbeqVq0WAnCj059bfpj/BP/f1J8HF629ATZYxWV3PYscnUM31zfqgzH6cWhypYj7Ld9mV59Eoeyr8NlDExdbFlVCoXvLMyOJ/6nxvAjtbJU9ugiQpcOnDa67dlutr+CSCsernP/dkLGxaNE7ltoedA7k0Vt7RVH1GfGyUJhjAdyriu5nWqmQVg/aPS/1v0ABMj8E8ayEerUPvZ7PC5CoXlp3y4YUiMhTJP321RgQpbdaK4ZfPWa29zUYad/j46HWnaCyTs5TT334NXx0tqcj32GJBPAV1A6yg9VEfcZXBnK/ywWwMDGpSmj4a2IADaa2vfOHrdkaXzoe1sTkpK", - "keysClaimed": { - "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "BRje0HJXy/o6LLFW6ZxgSJYnOOZLgXsxMoa9+rh9wDI", - "sessionId": "KwfNdf040zawmijxACEaLyXbwDwbiElJeF7TcheLoPY", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "GZNx7qTBgL4LXck0EaFa3TR+UYIsEJQ3R0uV830kn8pWoaOkrC3z4EMxT+7eKT80fVklvMh3TdRzcAlOvKkbtEYSnjIzjErUGCusPHJr2lRjy/h19BXkJbkK1MhH5eDrrlXAzNk3bOisIg8rE94fIoTlOM9XfWRgUv8XmvWS3hWQMru/AcnbjXr1aarpk78Fumt1/QikVGxMH9r4Ra0nnvUSpiNDBi3kagNklNmUfryQHGhtB11KAjOL8HbnLPdrFsKDOvXcJr5PXSxyakQ/6FckimJDzd2RsRvQBGCNde4UN89aHimF74KoZ6jJxtJffpHNULTrFnheF29w/YM2EJxEeFWOyXk/HaJrgjjs9AICcxWlmyOo2pN9ci1E5vtzXZtCAUOXhkv3sFlQVOiXmOQdnuUnOW7r", - "keysClaimed": { - "ed25519": "DzuiReAXp2QGkfIPqvGd6cQ9lyjvjkg8u1cfBSELz+0" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "BRje0HJXy/o6LLFW6ZxgSJYnOOZLgXsxMoa9+rh9wDI", - "sessionId": "nmZe047TUv3L6ce+1FsLIDq6DxJUX0eSH/OEqU7bdsg", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "QmUC9OMjOaTVoMYsZ6erlg64GKt/6q4sq3oo0PX29k6TIIVyVpRSn/+f/lqi/+jLh/5N17xuNJcEBy+EM2/cqh+zVseiI+wpzA/EYtOaPGkrzqXOqbBVVXg9b5NdqOQqO8j/Mvhf0FlyklHWpx4EU56QOOxHH1YF3P7QX+7NI/DaroFdBY7ptn0BaL9ocjdcZoNtVLUdJJnQibGeW99orBjEdFLg58LfKZAM64lvNRkvvi777quz+JxKGvSPTa0KwS2zYlAxCCPWj33fKN34gtprOYVWC3uEkYPE6NMEnnt8LPXcKIJRLefquFNfs7Rxboox/MoYHvaej/axaRXfXcNL0nM+we1h5AVz5jWja3f60F8udU1uJ4Fi9byAlKL48cuvn3oHmJyWq0GyegxuBOIAuhmRBuT/", - "keysClaimed": { - "ed25519": "DzuiReAXp2QGkfIPqvGd6cQ9lyjvjkg8u1cfBSELz+0" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ICXPtcBcycUazdhM0BM7VmcbInN9Te7dashv8id5nVI", - "sessionId": "FaUOxIUhj9BLw7GgJxAShVnKxS6/V7kmty1APIhKPrw", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "mQ6sb4IkC3gwG5F3fwusJJQqSXztCUrRQADifUSCndwixvx9DIpwcUXfVJIBVcGhS3vbKRI6IO9MxiVAgEG5OHNLzpBChhGAnsS5Ff6ARbWKP8bQfcHJreUHGkEmKk+b12H5dxm2CMIFgierBN8R1cT0M6DYGkTcA/Ja4775iPIyF3oxXA/Ctwigi1d21l7j9q06G6hnhRpwBMqZ83Wbc8XKgbYvltg94qX0ks/eSPF6wRi1/wcwd13i+qR+/mRYVD1/k+yEmODM0Pponu5P6iaVosKggd3+Smo9DClJLF3HadUlA3g0x3CwKv7/gCwFhYkFbGo5zqY+pOLA0Lxpr0jzYvhE/sEfhdHSFdNpmS4BqF33tTBSwuoA5zzkOVKKNV3V3VgeeLVaqzVqU7RzcgX2fcNsWoMS", - "keysClaimed": { - "ed25519": "x8bwWPIPArbTRKmGXf6r8wfzaxnJ63foaglgazbZojA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ICXPtcBcycUazdhM0BM7VmcbInN9Te7dashv8id5nVI", - "sessionId": "KR+RdxNLI7QqSX9xANiaoOVe7KTHvCKS6mWOCk/FMPs", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "BzQS1H2wILq9pVEMGMAyJeV5gsTPgWkOn9YHumCkK5wxMzSfpJ2m0zSfL4WF8p8iuYQZaOUefiWUnIXUK7PYz3pMnbfkXAFZ/7b5cq4inHZDzh1IgAGxNUahXfm8MJkCgLnIEQq+wTLxm6GdpzJxSlwwNSP5hf5gCF7GlRKt5m4jzpBfnE4CzPpyAZq4PxGHHk4zk9S1MVzLFBJBCqHlLIdmdlrDdeX8CeFAcv2S6rof2PUP9H/Dj6UiIXGyVy+9zC+LgVBNIB/02rA0vJgME4gQpK49p3UgQeEf0TnuNXsJiVhkzoCBKUu5rH9kv811lZbdkuErKJweiDupMrYN/S+uSXOv0dHfIBrjYsDYZrFDzJ4GXMqv8Zy5QoVM40zIGLddqus0vpTUNokLfzf6EqrYqIGGSm7d", - "keysClaimed": { - "ed25519": "x8bwWPIPArbTRKmGXf6r8wfzaxnJ63foaglgazbZojA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "K6pUAb6OgssyGzLqYcZQlskIxdwNTZu0xkb1lp2ysQA", - "sessionId": "TqxaEJSIHu/GJsL9cdPomIYZkzrO3UqO/e0H/N9b3Q8", - "session": { - "sharedHistory": true, - "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", - "session": "yaMXAeAihvduMpjhvsZBy37hFE7QF4vwAW91J8iy8YI/Icf/sXhQAsKcgaLnSjkJcRF6qrHi/jOfp8/8wuRFirkR96GKDNlcCU5UXePJAIhdacYkLvK8UNQXa4pUZSZHYm1zT4z18oS1JHhmo+z7NPyZDTKrod+BUrHAdujdyTYrvgNOT5Vs01EMJOhTop7xohuCpZqp9HAaetXpwxJmqgMVdFJJ4fKcX6bAK8/T1HZ72To+NpG3ADL59F7WF44h72WdX7TzM6RBvOQg7NlBJCX3QPBmSDTm6PMjzUIHlQedeAs6rc8xTz/B6ECISaNTcXwXdHazBZYd9bQMKOyDImiOof5ShiH0PBy5pO/PVj3IhcmdZtTzT45n4FkdV7Q+Kfo3beB5wJvUsv0zl3hWEN4G03cdF0X7", - "keysClaimed": { - "ed25519": "zXXpRQLyQ3rm17A/XGthYo3zvIpiBpJLNVEJG7l13bk" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "Kb+P4tSZMhmd9Ms7N0aKSBWvRvBQrEuoYmpsFsEkjRM", - "sessionId": "XpBEx6bpDo/IApJgDz5JCYzGV4Xrc9Q2O7+CIG+yXEs", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "Ja2satXk2GWXgWyPCAUux/bNZWE11PfuTbFr0rjsiAXmTQfVdb2xtGS6Y88nq+PCQOZinuLCXMOx8G7HBub+TQTdfv5jPQXg4c41CDrgX+7EMJbCNtumL3M7H1KPrWAxFsR34OJ4zPJhnWvUTdC39oQfXnJdkrOO7YpeHUKalaTEeCExCIkr/znr5Ru5qsxU9X4szwaZ/AgrT1bUEGQyVXcgzDXj1GrZPI24Jv4AOPUqX0hHRcxwBlF5XD/vZ/3D0vm0Gmc9zVl/tRpMj72pZ3EWD3pEx3LFYspldtCfk2lVKxjwDL+2JCJAJADwOCMDkJjWNtI08B36GUeiA1ha3/gsbKBOP7LgNn0EjGwQqLceovJcNCCRAk/MWkg5qWy72d2pps8PcLhF+cZuR+XHkdT0u1caNZ3m", - "keysClaimed": { - "ed25519": "AUv1hm03/OIT5v2SF4602W+M47tmNoV3fHG2HCBFBig" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "Kb+P4tSZMhmd9Ms7N0aKSBWvRvBQrEuoYmpsFsEkjRM", - "sessionId": "i+CmvoeTaY7+XYmbXiLPNwsGGWlkaMYoe1aSBwvL9CM", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "xNjmYlDiAE2aS164OEk/8cYLnWtJeJ8f0o3/SM3RyVIGfVkQqjNnq57TsThU+0tTh5w5Nk1XddE7ExD2m/CrpX5JmXIEHyzwMlMmLNT44Hos56aM+VH5MEkx0AGP0UKwO/L6pCjq2V1dF5OIP3YsnGxt4DqsfieAVtdYtLYI1elhdx7UfyiKwoWsFRvXnkEcYDezuojQr+mjjbbBjLUiTLEPDkZvEIpxW18kVEeKO+X9oww5lZJFahR3wRcZUUyfCeJOEILuZm45Yo5F5xZvHHCdSV64OTZS+j1NRcUx0Ow3BcpBgjTroruFdsgNpgBAVFg2wkz8wTmmmXXYqKMB6maWAeOfUTqb+Mc/POnEyEdbta7XrPsBtAdJ/4Lie7LubrfTmgleyOYtAvLVBtfg+Tl/yeFtRoLt", - "keysClaimed": { - "ed25519": "AUv1hm03/OIT5v2SF4602W+M47tmNoV3fHG2HCBFBig" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "KgTYJ86haurjTf1uKseV+HIxQBJvbyyrS1BMUv6dpyU", - "sessionId": "RM9OXT8/sv6n2VBSIcUxyNHOtADhQS31/K/+QI0Iji0", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "y5KWExBfay4wAjaAlBFnVny4qoHqb8G5ized+eL9VTyd7u1R5objAnG1iLOmC6xacO4cKsTHx6k1OkBIb5K8c4cqrWYY+TkzpvYdOiMJQvH3jM0lvpcwZ1umLeWj9LsygDIumOyYSRdoWapx83YTIwNXbIr5txSre1CeMhN7nKTLM3MFgmXYzWg0jRg5UyA/1uzUPjz8D6xoCUsuTU5tV77XUOyQww/mZHsu92aLAj7Q+KZ2+lVukj13PiGu3KoCSJRbKCOIQoKB0Ij87V1q7XYjYuaCTb0mUmx9WEybFW9uxWJarMFCitWj9cbtyVd2MBYFH1WbWTCMMT6jOcgTdYUTwh3IZP991PZPPvwvCh6p+jRz2pyUogWjPsF9dKE+r616QOxbJuER8HU1AB0grndgnS7TTvkw", - "keysClaimed": { - "ed25519": "VYE3Mxz10Gdwc7q0avPklfYxkntP3syolJL7YGZ70Ks" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "KgTYJ86haurjTf1uKseV+HIxQBJvbyyrS1BMUv6dpyU", - "sessionId": "gzMO/oocwh6jrAS+JNUbkaGzPi7rJTwlDLKGT00FOrg", - "session": { - "room_id": "!gTsdSPqtENAVbnchjE:matrix.org", - "session": "Tr/nJzMt2qg5Jxvz3n4CQmd/JD513r6mb/vkFF3TM3sozmvoD6IuEkpVoA/mtWergIsYsD6qiugn9kUKtf7LsWHG1ZvkoQZUCy/1liubEPmBzmCPNsfsjtyD4vOkmlxFhI/MmXZ59yAif4kqD+sXuW75QFb/eZ9eKfCF+p9P4RelAELwfeJ/VYXTR2w5M6I6VB+5OPEdh5eQq4LBID7oIFlaLWGaq3gZPIaxxM0xCDp9/r/sPsseDvnOftJWaJjb1mf6StWMyodR6Eep0G6mAOITMMPQLgRmuSgX44xWb5MeIW/uA8NzcQYSvVYx3m5Hbk+HrzLM1+KrCnCjcXIBF+5IQ3oJw7P2BdPPutmqb94U+ygt7Ofcw/ecpBgRAojPhPA1hP8F7OIAOpDEaQ27Xlds8eCGKj6n", - "keysClaimed": { - "ed25519": "VYE3Mxz10Gdwc7q0avPklfYxkntP3syolJL7YGZ70Ks" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "KgTYJ86haurjTf1uKseV+HIxQBJvbyyrS1BMUv6dpyU", - "sessionId": "sGUSOKA8RkJeoxhhsqvlZ6Uzj8gqkdARBmzbdpzC9vU", - "session": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "O/Jl0hzkQQVivwZnBhCjRAynePr/Rgf0+Yfa3fe1h1N2xEed6WGteBqp90QqguutflU+9hqxm+X4CRnBTY+56BvkXMTz0Vpb3alSDYaPA9ec5jGrKJKzRycuilMy34atQ8MDL9Or2KKGgMwkwi0QXX7nXnQxiquGIqtRe4ebJIpDp43/TJOnyh0wSdp+ZmtRj+2XBx6b3pjMcJ87jW4zSKNTnjQEUZNz7pEMYw3hL+7s4XKmgZS4sXiAkr798C/G7pwOMGLBlu7dW9/jjcRIRUUDiXfQqwWI5yOFzzCmEAUHCZBznImcQWRR80TofuGDieC5xqlDJoVIPzdJhwdU2sa/RFXQvZxtGm4rBQDNYBSLPYjX4OYozAieCFoStpHGyosCXdohHe50Qp7XGUO9nfgjcxvBPc4Q", - "keysClaimed": { - "ed25519": "VYE3Mxz10Gdwc7q0avPklfYxkntP3syolJL7YGZ70Ks" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "KgTYJ86haurjTf1uKseV+HIxQBJvbyyrS1BMUv6dpyU", - "sessionId": "xFvK1ieMwf9MzqlZbQivrQNGUL5dmWo1fWZZgEEL4q0", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "DCV8G7L+N5pmdId7lpe+SYfANKlxENOVfe9XvLsNkM41aioqVCD2RbX1WOI6rnSIzLXkLX13eaK3xqcal42YiedU50lcBdqxHx/s3AAa1x44C2R9doU1bsLxsDLg6yHSARRyC+0t0x05j4G1E3uITHxoJGNj3ATCeEHM8PDrspmksiRMc2VyQl5cIfh28R/qSOyR6sPEaa4T8kV5qm4V/Anlf7/ZQkYKctGPM7D71md2rD1OpsGlDv2zkpBZpma12/yeiSJ3Q6veLUaw9tlPmHgdYNEMVnVPjt/GqOhIbgRVPbVfgy7bXr3GIRla521J+xEeAb/Yb5gjWUe3cNZsI1Wy6oHVksfSREG42DBPspflNFGRmOCcUVaZWy16CAbsodLJfDBBJiJmXJfpU7Gwgy7GPv+b9Ttm", - "keysClaimed": { - "ed25519": "VYE3Mxz10Gdwc7q0avPklfYxkntP3syolJL7YGZ70Ks" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "Ks7CRbiszRE6r1qParXb921kuyb7rXgsofAzdERquzU", - "sessionId": "LbSd7Y14GjMYRH+2KgwAs4KBsT2XaLpZL6gq5KZp684", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "Z3jKDglt6dAEZo/7F3YSSaMkPy5N3nd353Cf025r8R7zuDl87m6TE6qgxegcwZ7LO64H/LYISkcaHW522ecHcARu//3Y6aHH1plnxL00uFbck2tOymtfEzs1WnBWAXqeiYo381renJARNPi6PrPfHdB7xBZBdazYOkJhLhZB0VdOEpl2KMVMBfPhEos04s1cVKTpPhlnRNwGkc7I6hFem1NQOjZ1UmXVRAw+tHCCyA8qIRXzyjuIQIqnZHGZcHW3G1HRUykAy3k+R6+BLQwP8ZkBCu20sGPz9Ag9CcyV+pqQTc5OacTKRm8Xok9oZjg4Vzj6JlAJwUQGQ2R213LP2gbvkPv0OhnBo9NuTWHFsbH/7eW3smy+OWUpOIQbSGDYoyE2DilppDP7EUF1D9zDhm/TAtE2O/bW", - "keysClaimed": { - "ed25519": "OjzNRhpSGZKw/Qp2/ao3PzHdt6ZhNI8o5Y2SyrQ6idc" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "P+hMAaz3lio3uS4rv/7TfA+DPUVgxzkwoEz9Z9Ojzj4", - "sessionId": "8krOIN5Yj3SN4uy4FiPL0dq9uJrixFCE1jbLN+a5Fyg", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "ViQQRbysPTZsfVmLG2dYcQuAucu+LOWW/rlCoJeW4nPc+SbNr0HSHh5jc2V6psGXlU+Siqf/YlYpjzh4UoL5JqI9wSj9yHEIQ0Xf0AI02k96i2wPHG7cTYvVk4IbJUTH0QDLCNNXsi+4jn41Y5lyOq0o7f/OWVy4Bi6qOzJoQwflQvo7mwpnSzIQGsDJHVP/sVEKTQ7unLRDoQmGgXNCccuQ7VmcAWIywl+yjV6vRe9GKCwiNFzahS+OqjOpCsLE67449X9e16bvEdhJ3eBQUrE4sfe2GBjVTTrWv1qzevgMSwZqaumafv3e4xd7xC+otjMlIsoIDwXdWldBp3TP7rIm+RyjZDXODmJ+hTtwrTAytMpAnqUJcGeEt425rDf0LQAZOrw/IpVp5Q/WcTky7LJ37hPugwYe", - "keysClaimed": { - "ed25519": "6+9jhcSgseAmMbqRvbkkkRaRtSqXqKHHXS8fMw5R4sU" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "Pi9DRxi10cl7wyDpOJ03iYhpDuH828/O8yrYErbPW14", - "sessionId": "sUDST5s07c6ldpIqQX/TbvQ03146R1+3AYk2V8mAvwM", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "uPW5PDbHxV89N8VUomGN08Qu8XrqluOb8/P15IBACAxiUvFq0b6Yzk3K7jFaZVs5Bh6yrttukFzuH0aobANLvJfiyLkD3rUYEcOicNIqrTb9Lfy65h2gEW5VwxKlyjghNTetyPO7kxskTsFx0vuzaihmSur8K9YmXFAyMDtjMtG11n2Zv9jnFhP4i9dfN/F2sGAG7zCxHjmCscEpVqvmewy615WrlBsSpGZT1ln3k2qwR/1Hr1NBQdJDPb1fj3dIKFMhE3+sPPshiG+TqQ3oS1PzmXsJRuqzKLfKAKJl74LWpOaN4b73LzZul2Q9fx9GlgB8R2mGkibh8QPQH98rgc1TDkZOMMnhfoh7b+ueTiHWSmFrF3g0p5YiZ2QaVa8tgpAI+Jp52QYEwjWLoGUZGdY0sDM4tSY1", - "keysClaimed": { - "ed25519": "oweHPeUqqcnMR5UsMKj2kThmt+cB8861ViMy8pB8oZw" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "Pog36kjaHKsGaXJP4IRSCOGco1WHId4xBLKUqzVMVi8", - "sessionId": "2KOzDSzwYFY1LRbzqPPAHKwFUgXe5hoCxHSvsXUwnZ8", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "D92Czu3XnsGhdTNXHT+XFt3DiU+xXwQYOf5YIzxfnUKif4V7NN/fBHCtEEX0HxfpJ9AevzQycFuVhkeBmze+8Ef8ZWYg2PoDkqQyjtdoiCnfzL7uaCBkE5L7F9jUaWgHIV9PNtj4llHqkiV17f7R4jp1CPUPsJ4JqGuK9kng+ZYPmYV6CpVD/xRjlK8JLoZ2l9b+SGYkz9gcJwuLYwkvZAPlJPo4/SDj0h9CEnlmrsnX4oBjrJvuy7DRgc3t63JgdzB013zDKrYfCJmqhG+k2S/rqGr+8JLeyEKnexuz6sTwrba3a+pQCehm08KsMxBaVL1rf7XACDzlJtm++5WWJG6W8FVKenRoJTFn5TOzFXVI1e0NXVYgbX8beQAuJXZ+b5ix6Dky2m/9x0HUNy4t8K84T+AOdqdG", - "keysClaimed": { - "ed25519": "R4FeYr1jNYn2w64HDnZ6a3FoaHy2Cgl69yi12Xhxi/M" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "RhqbMrR2qmjyDPGh42dsZCenEHZXQdGjeHZXO8kHc1E", - "sessionId": "VrlN7nfo7xi/tReWE89ZarEUt04aEeHuZonIP03gyus", - "session": { - "sharedHistory": true, - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "zRIsSvfbxmpJ2FUpS2BiJMWFEU+6m0RXUN+RW235MBTs7hzYnylepItdInBLNPW0hdzMfQ4Ap0anwaISkji95XBJZWu6Tt7qm8e4U2mCU1tc6xuo5U2bpjmKZ/ZBQTBHa0lFWDEik0S1lyhVhEZlLi1TKAPApCzAdTLyUbnEd9+7KfpQiBjbh5YcARuUYX5H+rjY+0X1vFSs6YVSOzPxGA2BPIJz3j+3zoIz1R21aWSk4l0w7H0Usuukz1oY85Fgy0Gm+rsigGMkKScZpEwssdgh4ZuWYfCbRHFjm8/IxNbF3PqeKJzTQyFYMs3JjjtyhcJag4KK7+LiS60tImjtuP7qWv8XWeD6lyYi6OZ2qzQ8S687T/kP5F4XuwcSabg/iAATYHpOZxcgG3AmRiZkKiBuLRangU4x", - "keysClaimed": { - "ed25519": "Oh2/2fIdVloUUV3gYMP1RdXziWuqXuvK+5ZaoeCb2pQ" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "SKowG52ZsxqztGJts32ulwwQB5+lC0FU2RsPRX0RUj0", - "sessionId": "ZmOmYaTkWIq7JOWgVERA1x4nvX6SpgXbKECm7gK8ceY", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "feUC7yVOCGhLES1SXLDJhVPxNKITPFiC4BI1CumGn0MYcaaH7EZX1qMzlSgafDxOwyDNQcIN///CSXFUi0iqlk/pY2FABpUUqCj1qsQiAFgfcNv2oek6EadUxE1hRNCt56k54Ppx13fdGs12iPI/6yOiaotEIfeX5lP5zM17/he/vH4tppqsgZyptfU49NpoRuCjqbnb9a2+0T/emrQ/e5Y70UsYlM6DvzfuVuvptuOo6GBMP2KtL7DQmSLvt6zO5z5EaIsuSlspEgDW7QYuU8LVNtNmgGzU96FAJcPoBCixmiXjSjUmuXvx0FbqH93n02bKJ2SwKObFYoF4w9A1SnJw1vF980jg4CUUGJ7sAJfC1d28dd3wr9rJK+hVRa7KDMMvoHxzZAR0tPo70AmGP2Ds7EviFJRb", - "keysClaimed": { - "ed25519": "lp8hKwsJAfJcd80CpcQBbAP21z7OnfwgeWeSyRUiPDU" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "SKowG52ZsxqztGJts32ulwwQB5+lC0FU2RsPRX0RUj0", - "sessionId": "h9VjeuxpeB/O1oFMsOpfOSXbJXoBiBrTBaBuoumwhVc", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "TbUMnqJl/4s9dPH7hVNnR/ZTWkBGBfcHHbUbOvKmtB4PVdSzOqFmWZP63NtCFe6d0ZLxfWJIX/BzAPXDR7DTWIHhQ+iHcYiszJRtkfrmvmdFGc2bFsKNbxFQ0OnJyBqco/IzCWdlqvGCU+acckboXS9P3N9R5sbhU+RZ1EBZGp9AVoMtjcJIQ+zyMYChaXKPc1DcVpefhbshgXKFCCJd6u45SIvPFW/H7ZoMhA59Y3Fxwuv1GAUBpayI0WT2HQsEwZKb64VNvLDrD5wa65FvoLIePoGYiKAMiTUubk/caVtjOyNqO9Wta/5KiKphRcX4p8gtWvezDwKdQJpkpOfjKSw5xwP2eZy5jSoOKuPtSkWMRe1fY4pbTgZ3p5K91xuECFKY8RnSWk2kIe0kF1FPx88kNBD8FcNq", - "keysClaimed": { - "ed25519": "lp8hKwsJAfJcd80CpcQBbAP21z7OnfwgeWeSyRUiPDU" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "WAkJI6B+oYDZmhCOdiQAH2xUOJZFesDuNskPRt+ZHnY", - "sessionId": "BUtaoXhtoGX19x0xX3uXALKDv1A7AwoxIso7JW8WLkg", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "h5kR9HiEgFadLp1M8dmkrf2k1pPwMgUKCLH1pEemc3ePPaN6gOkgdk20cGpJVqoZSbMsB04rM3IoR0GLD2Q19q1z66m6Csh5tgRtXj7Ef+2J3EuycL85kRMVQCU28pgqO2UpDHFgZKzVb8M/XSG2uWQrytYlCNqxlRu6nW7iNXB2/nghp1NblD2qUfAQN2xwqBHArD8dZyb6F9gpAz6unrs18xavlT8z8s0L4oO8UHEhcZFiH7Mk+q9VOvVzvqREdtq+hIhOEnSZneE3HAvjAh3Il1ePSzNWlLJcBQiXSX8tKoZiATNL+f5ylWlffezcqh7N1qpUwjqJGYrum4teU6m7z53K9yEmvd8cVX1lztfohOCLPURvVc+cJ9y91Sux9KCIQOoI3KKlAdY/a1mstIr62cxWA/QX", - "keysClaimed": { - "ed25519": "tA5l8PGDGXz2I63BKd5KikXpGttLc7jTkHFm2RjDMvg" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "WAkJI6B+oYDZmhCOdiQAH2xUOJZFesDuNskPRt+ZHnY", - "sessionId": "oB9zC8I/b6I9i10GrUOQVp4N1t05FNr4dmSkrEs9Ldg", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "bfoIOBZL0006HXy54ik520Ntrd+4phbVfCztiV0r51Ywn9KSwHZxGll1xwkAwRrVbNF1ufjc/zuxa8yn4hl13G42N/sBYTRt0JtwMUnIlExcg/2FH4RTnfV5q7rnHL3n121Fd+bhhT0xJjZSWNNvSkElkp5XwQVg4H6vf9RKAoBmSagRvcakANEak5tJQzw6br5kRMHe8kOBRfYHmfaWUx4PFUuw972s5cqvLK9HEKBZ2qGtdCxU8eN9Rdeotpk46dJZ/NokCEJrvzQgiGxVl36forKAcCyTek3iIkAI00G+38A10w+V2zzBRxuRO5LvHe28KJJ4P62R8CPfIOGDbVT5g8u1cA+t+nDt4+g1I8Xf/oufZbvMpa5kHeMSvoSGIsAxUHCgu0tjdWyvYJgZlOhTs7j1yVDv", - "keysClaimed": { - "ed25519": "tA5l8PGDGXz2I63BKd5KikXpGttLc7jTkHFm2RjDMvg" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "WrX63a2ye7tfBJv0Flq9DU2RA18L5G9S2pdHPi4FLEE", - "sessionId": "TlhSJ/Z2nj6NI232QfzPdxdZcgtilBxzA/ZNzLkbv6s", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "YQi2w27BZdUobKmh1hlxAlLiEv0B5yB/uzHvnoQ1KX5KVdfNOe8dhd1MFHURKm8fVFcDmWy3EbjL0tonOrZhIbK3U7hpT78WzuEzWW6lN2ZB9Y0Lh96QXN3KFf6KgkFvboCpXbwt3C05M/YRk5C3RaAQevmVUwqtQlJ/zQqcpiHZm8680m11MGVmMwAgBZraHGNZ1UQKMFVbFtsT/lR3HUcmlN7ijS+j/zVf7X+1RffJvfji4y7KNLuwLgV1NRNHGoThhLmbpDHixcNTrGI1hZjU7j5t5ODFG2l/4XTmwFv/VVS2BlZo1PI8Fvblp8CbNGzmgUaV6GQPjZzN9kh1nqhTUtfLMGRbEAwK4bKS5osaLVHqW4hwNcZ+tR1w+VtFrsCRCa4zKYWca5Y+256b/by8ZzUb/BVS", - "keysClaimed": { - "ed25519": "QsVkW5NpuD5mS0R1cJqYUXYbXBqCpxtKTRc1rRhMJeQ" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "X78CTT0Nk8RDlC7snNGfRRkM7wCE5/XkVtqESnpFgEM", - "sessionId": "7KdhG9y04GM33WunByggRkCAzv8UwEI85pFMPqthpK8", - "session": { - "untrusted": true, - "sharedHistory": true, - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "LvcKbyu8hD7KfaU0E2rk5rON8CUIZFSfwBHa7yayRyf5JAwHiGlM83EmiGSejWr2u/f5W/N5pg2dTNanNeXXj3fOx1khQIfhAfNWWx2hg/Y9SWPSCX+XWNN3CODkquezRTcwrGyfNLmhZ/DhfjL4WMUOgO2e6EnfHYo8Q9dPE6DlXA9oNRCsGVyll4YLZcCLR5FJFWWHk/pyjWbbhBeJlOrEcRQnH1PwfwyqDLXLrmuoWj7gBLWxfJa9j+hXsIZ36QI+LVtyyidjILM9aXRU1nmcx06Q6D2q/9SSFLp3zRbG7mnufK15FrRR+pXuWR6rLh5/l34ErEZ2W18PpQwT428pI1TQaQvB1KosWYH233fnsbe7+DQZFf+IQhcuXRurNgps4lCYJa4T72BFvYMZCa7kmUdje6Ea", - "keysClaimed": { - "ed25519": "1p3f8DrrAMDMzxo2Jq5XCQAwAZWuecUz11fA8PKW+Ts" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "Yv8Lmx8CfXr43oNX1Z37gf0GiCLG6nqEC/5jgzQP42g", - "sessionId": "0r3uF0IasTQj4CiPf2OX0aGH6jvAcDkmrEeWe1VBafU", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "g9GQ0hFYb5S2Okm0SU0a7oMHRr9OPfZmrfhi/zqXutvxrgGJyUUWIBKPOuzRVLrLdAj5BlFOS/0mn1uv7aoAsfXr1BM+aqjhZ2L1gwY0eVQV653aAUQ42BfKNCc+qGbb9CClUXGcE2lU3CIAhZl4e12FsPcJrDIActkzEUJuvXYgrSY7V3YpeKPBkTcuuT7ruKMr7kddT9BFyjMpR8UZ18Zr/Zt2Rpn0JEFCZDdnfbGff5bAD9vQcZW186Eq2R2POgc/EAwWHfzNsS3Mw90wqxgFEmwoqZcLaGU5EBFNo0tWaQXtO1V0z9pZ91gzOsPFUGJUTO90hrBMFFAV6G4D0SGFBtwjOarjRCyMs1vE7Jyku09fMPzEyFDyP0f/MPtGZ7hUuKXkGTAFQMUsNuzwKWFsWT/FS3Ty", - "keysClaimed": { - "ed25519": "ekVFZw8P9QpIoF5mroTcprhCDGXrbBwsdGel4FRZjqo" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "072NPVaB/XqfhHQNiqkVCsf7/K6litKN/CSLY3mjUAE", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "pge4x3QgiKOtyj58TKE1TzDh4HeDAoA7zQMdspEQ+TjqrlJ5z8UF2v6sfZ3v2AZs9h1jCBL+p40FWbxfgNEh7i+M5ZT6Z6haseB9rsBTRe03Jt6LFlzfyvj7F3E5i66ZrS9s+RJFSyNR6ZrgHeIYPd59NxDye/oz9i7Pls4n/z+lOvXCqbfxl8cU0IVqXzQptVebdE6NddV8fkI85aN+4SZFUcav99+zb3ZVvUci4FGelP2BQX+NJU7vOm6KjxMMB/P/gMUi0CrycXkeDlT55RXNnjt3nV3LJxwswVOdlKk3Mkka2DGuBkfRYEXKjnGS/q9Gl8tlr3WbfLD45TxoNAcQnfA42iNFwr2uomjTOFIeS9vDkOMT+N+/Xjoxy1QHOhy8meQ2isP3VVyBCspfk1rf+VS0SZxC", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "3h2UME/BN+VTTTf+DoDzT/bDnPT1/mfhAlvUSUFXfkM", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "cLuSIrzjjpZKSwPVwPCDKb2+a2PFjmxRNSGd4ogOmI4Wfuk+wIJabQY93hCGr5GQJz6QE2RBpeoULdVZzldOBGSmERmxeb9iNi6wxizCUgkPcu8e9FEuL6iKnpjMpbvZE3ti0TDGt/ixaFbAVsnGDekF7ATDz0UDSutw58v0RMDXZeppxI4nO+iVK+ByWvHxCiVuTTfwXkjoStc4nHUkP3ajSZ2eS9JQkLutYpxuSWDOEydPjUmOrw9ACjkYFZ4yiIDPFje8HxDj/lkn2YnAXgLmHftYRyhAli6gPv/jcliyi7+dnuNcElwDs5QVZxIBecSSBAZkk/VQwkoTSEKgyQpMrK9bO3Ob7+l19hty3PmLTKG3XtGaHNhJzR/rsh3a7/5mS9SEkv9h8hgAl5Lg22W7Q33SmXob", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "Fgrf+3+uUqbmlab5Vh1q9TTn8kjvDlSwGVlgbvRHS0k", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "q4kPuIDLYg8YXeiWw/RGqMOTkdzJvt9mZw7AwdQiANBV8oMfw7bP6Fcboa1s5TEl+0AfsE3b6TdoBxyAKmJZ7OZ1vmvLCnmZQtQfw21KmKoIvLl9MGDHVaapbZM2fCyvs2NqPb9CaU2zbg4nVI0RpPL8XbOVZuV8ggur96Iui/IrtnFZI81/OUK9dXiTwpvBwc5fk22mRuHkxqPimfYHWB9rZZ2IrJ4guQau94YdAmLjBoNmr6iEIVU7P56ZMawDOzwkpyGO5vBOBvkdEF/pAUBzrglxQgPcqeDNzsnMX99iv+wJ79laY6Z9AaUsu5DRhaEgiTvrOhJKrtt6RXzdh17KLPncOxnsy1vrh3H2hp78oXsDKG9qqeT7atz1NfA6jLJtDink3GzF2fTq6ILLXAFbWRZmwCMy", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "J0gATOup92xuwoF+1KjaywWvEF/vtym/ezYg8cD43NI", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "+tzFdXSsvcB/vmHBznbUFAz+nFvlNpQ43zLEGHBcDkr4gwZAPtIV09SGpeUIf7wv21t776WdyJOL7O84bjHSwYprSgKtEyDUHdAS4tFcAH1hfwOUDRrcWKHDjT6vW8Kgkd+SwgzmuZGKmP6ykhb05iL9GnrmPv4J0zO2IizJHQwZFZeeNbJGbC7e/5juYprXtNqD/dQXazaJbyHbyFLmnk0qgAie9CzD2pN48pvZ4TQjzB2Thaqs7ZRnmzu115JeyjYhD/mIuvh4ARj3Rk8uvIS2WpAyIMOoA0u6IBuer0iCXX7lVcRZCB1YycbGnSEa4QvJKlu7tIJ6eBRhRd68fRkCUhbQDugaHRmBLzrdMzgT4IDRCFYLEzgOC9I7J7/he6EW0Q2UpbGkP/CoRGR2XejtROCVOOQd", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "W7cEodAkt5Vj7SSFuM/T2nYL7X19ZpU9FlUxADaLCKQ", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "fWWGFpxysJOOzYEU1hYS7abBKTdhIB5doHfqtFnarLsf35HcIPb633DUOpRdRmkk5bqvcIJ48FDyvFjAZr+N8517ajIUJSKFNdBCFQngvPjCv8W9VMlBHeOPJkt9ns3n+m9VRU9vDXJlOho4suwkNGaE3VTEu59YI1vNXPRsCMdRShjoCtmrE0W4BIZWQOt/3M4qYYv/njFgMuLLcwCPD0vvW3q4ivVuHG4pMz0ZasW3B5doX2B19Shgw80RaJXRAkUrexB3B7nxpUziVXsINNaiwOBHsQkaav3NZX+/so0l5QE8PLB+r82cayxU1hTz4D8c1z2j6Z0saUAJds0JDdo/6Uuqf3YhpuPU03bIeyBJuiCDwdVNIlWkrbtNSmOCIVj4ZF0rRJljiYPiK2gfFy4zs5Eni7tq", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "dH1sMzuIW3We8UnLRti2b+txfSK9z/IBuQ67hr6GyK4", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "wG9lQnmtpQxJRn3BO3Ro0u0zQ91SkxtU88w2K3tZTMH5gCyFV13UQgSISB0qUJ2wjpEQcVuIkD+vX6IYH7IqWxmWPOhhiO+4p8v+779sEcZbgid1sdxG1JYGbRYPyuAc8aV4hTYf9O+71NB7+IYxB8uj6jDRZ3xwUUnwcQKwYNL+msop3Hk1kXu+ooz+Qw7Tiw7RB9l/Drn9180wJ8cphatqNsNYrlVcWE+vfYqcdAiOZjo6fkG8m89onWbdZ3nyNZPyou7J++sjS+8cRiLaY/hFpgdEzaaw2faia4wv/+usYN8rj1VbsOGUoHosAC7KgVVPoPZwZq6+18DgfXkOSxFDVNskfbVYBJ2W6NPUmlccFEsDFJ5CTs6wL+HcuIrjrMA2tFY5qb1R87o1gY9U5aQvqJYj5Q4M", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "k9h2IXjZyr4tFKOVd3ZRs1N9gwsDuF8glUk2q6c9laM", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "71A56C6crXrMJOwK25+PGlYkb3y5pUO2fwacje/lC1zE/+X/0eoaoa8JL/ljMfySRIjU9aY6qKLZWYXUkkUN1qKPnvobiWYG3R00Uk1d1xfsDuKyKQe64kMjc0W1bAkEoHppttmApiZxsRLxS1WhzLy8reJQ+q7WAoNz/2U3S2euUPBsaHE/mQb3O42nO5tX8rZckUQY1Wpi8VBRw1V6n+a/l+VqmyXfGuhunYngOvZ8Z0y8mmQlSCmDJus2dAKnffKh3pNw2E/+8a56XEx61vzDJDb6S2fTY0QhIR1V1yL6zd7li1tYbBU+JqsS1x8hV6UCZky0l+EW8C947hXPSpGMCso2E9I/IAi8BTO/nMQGFKfYaMDPst61t7WLTdwVlwSXs6ceX76b5enYFZl0GGitzlnbwvku", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "n+14rmsrdNIunXxUzwE1ndoMJWP0L2saiaQp4y269qg", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "+3JLawtztTGduI6BD8WM4nnzDcn/Wa4cMEgnRkOuuNl6m9S01CMr05fon0b7f4dmiM08B5hMUqu/NUDK9VBVfzkiBlJt2ug+pjDwSzVbaPOPqZZHaqJxEl507a28Pv8swYoxkL/PQDhIqjQbyX1DInuB4+wgaB5z+kUbwS1YmLrLTGzcfb1sEdrW6Q/RzBtpStzxuR2BHwDU6RfDQzS3PLb7lUHAcjRptnq0upKOVglixtLP8gXYhcMU2n9CLft01P4JlMW1atcQYSyuz22JHRmvBZWPNSO0o/P3moW6Ac7rPNF8fJzblidsDgJuAMfmqYz1BNlIU48OucvnqzCZ4xIenpE2kQfZh7FNkcKrw0PpzMdZKdDade0PbVIqICdikLs7B2xka/8MqaP/wjHhFaQYVCN0Ww+Z", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "q9N5p4obxOl7CtSKaZd+4SPWBWloRTpZh5JJXgNegjM", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "D7G9I+MNilpDGzHgLV6Ax7E9cydfabK243WLyV1wj/JqhXNlTdlWuR0lCka547fo49XX8/7okkR+WvinQOzjbYTx/a/3K+maLkSYSaDiy3ecj9HBBrchIf7TnH48R077JcxsZ+7Sw0NUD+JLgc9Q4PRFliJF3z2/a6PBms5oArCmI3Pg9OqbuuZ7sSd7SmSlLv16rdX4yeGkpvKRcPBAZ4J9l3XhkozuIWSImWMOIN2HOXV4P+aFlbzAfSRTfE94S+5mAuHaLVg9CEnLKs+gf+NdHlKn2a9Vdl9G5/3nvBpc8cvVr+U0dUGt1erEGHgsAEgmwWNIswqnlekVZMiiHOm4sDEcejmEMc/0x3yr9/FSRTP62IUZTAB30K0tnt5zKumUNg5v7hjAx9/ybcuHGlty6LeUO55P", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "rUq7aqv+OwxXmABf11UmHUpm4Ha/lHtjSeoL8QrN4BI", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "tofjSrkDNSS51Emb2GMGgrUCme2CPeHvWTB6wuGSpU7b1YDVsLyJIGUep+KQs87jazoYsBeCWF+1MB+PWPgDmziUCS6HgbtajNccsHKIoSxTsYPiCF5RVpQXeBIv6HatEZ3SMnxbKNUevDmrdTs7s3AgJoyz5E27/x1Q8qTmTIBw7uzMF1KlGHBxtj38e3StCW1ORzeEADahUN1WUm4WuNNQ4BvimTLY+MgYgu50kgU7FBm7dHdB2B2J5I0GR164oq+glw1wnHVD3ziaF+3ccn//3Na08VxkMgoa2woYNqhxns3X2HPtlvZhLNaMVOaI3zd7erjaZ9mFabpahmg5inLwIGXJUmJb1dhkSqDS9nLA+FiNyCMKaKzQLMIPD/324bWgjyWrbCm57JZrAfsxfsNyY/EzUHwB", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "thR+oaCpzqBNodOuGjht82xUWRcT/PzKw3kK74iAr5o", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "m8rYvz70h0R0M2mKApPOcbYpSX9MvAD+1IaDtg/Ez+p1i6Wjcoby1eehrlcm0ro05zxwZ0eN2awz8rpfqQBuop1X13RtETzvt/g6fbhgxt2IttPSLi1UUEr9yPXPKzKxzqOARIsRm8qiRQr5FUw95x0SutApz32HOvzvwGPX/dtBVPSIb8RtMCUGHv5Wlfm6s9VJLnjzVlsXM1/Q6E9w2uXAbu22GUVQ7xI0D9LYlaFmdB/pjN128JFUiHNi4Uju5aGz8x+vOjx+E5HaqGMgiXL33fddVhaIFQfxZifgJE+WveAPDRwGQvBiSHA0JOn1pJ1RRQ3UxccNCPhMrziVHfzCamyTM4b8sPReeNndICyPNLhPOKSmCa9M88L9QfHmIx67u7WP0wvVPv45mvIDowFnlOe7ejry", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "w8A5GVuiLujV24V57eXMS9psLDZ+wFRAOd6qtKQhcNM", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "EjDDn0HI6jz4ZaJ4GTS0xfeoi63mjnEv88YwOv7DPd1+N0UurZ/sVN4pOmB78sKSp5Jh794Tqgqqikp62QXiLSyTNRrZvgupegFwvDfWEJ4IA7BkmBVP6j+vItz9JFH4C15QYdYFNIcyelA716W/sIaXpwegFG9LI1sHbBep3me8FM6UZ1Q0h17unHGJ1ZduwCiBhc2R+exhlZzqb/ssZiH7ZOmq90fU7+GyixHJTSCgWwsxFAYYKuzT3EVS3hE0qk1kQTIpxGhhzboDEhCBFY6Lrg9cae96zuNZhFlsrVVlCScwcfjRkG6quMVU4zvAp8XrYCyYTT0xttux9bc7Jg3VfRYgCBqbAemZzNgBn5FkyUeu3EBHfftmXkNhGm7cLhDvNymt7ck6y948FceSUns/z3J0fZx3", - "keysClaimed": { - "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "b8g1RzK+ilI8h7N2amMpbWZfJj3OW6Jzxo3xojCTsVE", - "sessionId": "M2iAtHD3b6090r3/jMSLesHGXjIkaPyI82UbF6Dzvdg", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "jx0MKAZdIOBGgZcuO2FvVhzxnIUqeTl77T2NhEAUdCI6UAhy52z3C6OJZKZXNVEECRWj26g3e0S8mlY3I4Lmw1alsXwqhnOJLKNCNLIzU0HKblWFO/pxbH4Fc5vWVNUKzbSlgwk9o++/9upj3rRRz5P/ZMKqIyvbiYFYYGHQwdMrLKZAzcD6hjT+3eu1pgmCsQk9qGDD6f3LWsm2TKUgX3OpbLUrdKScL8/hu7uA24K9q6L7rcEfz6F8J1swQzI8aqSi1w1f5N2FIMEy/C3O7udCzwFG6Rv5I87J0GdzGQxh1HLtgbQYwZlQ5+FNXU2JZtUzuTW3SjtYGNxHN4jG/ZUmwBGBT3GYQ30BvPj3DbdSyTNrX7LnjQVDkH/dll962dgkd4JjhXqF1muGcUnI6QFVty1fqDKa", - "keysClaimed": { - "ed25519": "zf2qt124LIBYzVhB4WgAkmcJg8bqM7K3o4NeISk8sE4" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "dl4ygF4NbLpDkVOZZBGYz1Bwj7JHk7GVatDT7qavo0s", - "sessionId": "cUgvJ6wHzqRHL0+ze6UlWZDG6XkP45ZCXEoiXTua+NU", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "rwuG56MZIuM0XQw751BrvIEckrg78dn6kQ8sDSsAZffqRwGVSeaCeSqwSem8xbXKEgqECYegzb+GluXNjp5pTTTvqpU8k7/51Y31dywqsFjJasPzkCmR8t2Py+FiKgZwO/9y3xHamQNiltaQbMhda5yQvfKrlQ4k6iLyBeD8PhMpE1ILVwAElanto244JaH3EdSXw/0ZQ2uMYZo3ru8HQexGxN8jMN9pKBBeO7MqgGcdRsXh73oUrv0t8RXftdT1xY6MN+m8My/PHhXAT7jRXrTmlTZo0VRdYeXlISSEblyEEU2mdkDhkTXXBbDukEjmOlY48A5iklFpu5zHDH3/Ct+UN+6nr7gON857gqGFF7lLWwaEkL7UVJ9XAP7nH2sU9b5JSDgrMZHDi9dWo5G8YzPN0u/9/c0d", - "keysClaimed": { - "ed25519": "3Mk3r+gQEPfGonrj/i/6UfDbBtK5WgLVI15lh3vdhIU" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "eMBHGCpDlTlosCIb0g/BZf/WzXjIlQQO+NuWgjTOh3I", - "sessionId": "mZQxzXwBl7854eWnPYZe3C3j581XCVMvO6RmFDx51Go", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "uHikmhxgqeh9eIRAKl4rtSH0JuV0AIxVc3EbXetht5Fr3+C0IzkgPLlkst5WBb2ozYCpwype5H7jFVrLUDZLlcirdEq1bq6L9WftaFQPeIsAeiiV7j9JUx+PqqjaDXOv/MN/2tKSKMtRcLY84V3CyNn8sD+DJGtRX/WLlCLynDPlyC7lgoDHgJv+CJA7aw5kxcq6FA8RCUPxtduqxdx7cok5KjObWWBEGgeKe0LYkS2upIfO5mU6JMVjv/yMdl3PXB8Bk0jZYsg4zqReZT234s9HnE3/YHS4yRZt/FEC1OaKWsE1YTddtxAATVkYWQzcr4aDkKufk3S9tqdXPs/MS/8nitam8RwtGu/RM0BKQBcuOuValo9u5gyXRSVSqctCvzdA2yUAeePk4+riFHEHi05Odab4VhIK", - "keysClaimed": { - "ed25519": "Pgyz8RHB+PClySPXtgIFROZK/1+ZL3vp6QiftewWuFQ" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", - "sessionId": "KKY/ByTbXoGeSXZaIEbrYbT/5BTdza02i1zy5ToYA2w", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "mf4aARUqxpZ2GA+yx05Ve+lz6UygSfFt6AIIIH4spELlFtCisioSgbZ2Ww13gpgLNurQQ93/NeJYSyIFux/ZZqdeDfh1pboJ76DEd1kv9CQEGGjB6UIT+1lxtAdfZPSPg5zYulS/wY1fj0zYA3HcBPhqpdJdtZF3aDRQmHE62o+9qpKdfniGLvpYT1MFFmgZrr/O2qpWP7+3uGZHDCupJ8pJelsPHbqYcD8bCW9ycvno5OY5LzsISAlkfoAYDHk/15h9fYXnABqXP2FRoEbsv/jIsHeHzSiB/7O+LsTZyKCExH1VWv9ItfANui5x6TfZ3vxhDKXnxTd37GI/rGOlDi9G+JqmJV+cFG9xnv/LS9iC4HpWy2x4MWt6Hxu2Dzqthuf7ggWAQzhSSKCZOnGET9qLMTHZ1/OW", - "keysClaimed": { - "ed25519": "6el4gtbDZ8r1gQKZxo5LghQg8ktMVGXrDg6DOO0KKr4" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", - "sessionId": "WQyMCNTIFO9X3gmbTYTsjGwDzTAcLtFQqdv2t0nZTgU", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "J9Pfr9qb+azYqPUXysiCbaFH0fN9FBFW/KyrXmwo8eyYtIhn4zzjt0/KHWtYINHFEcOLxeco3bJjyyIyfuqXaJzc0ebnI8j7/pqbvQob1CrsKEJpgI/4onTGgy/6EX5o4PHFKunbC8/2OESGm2OBRe8aI2wJOrRP2k+IJX7SJqzWmQ+lfuecU+9jprOIOkbGnZMUGE0iN/+CV1LwbYtia63aSR85WKBzDiTcx+l589OM0Lq3RbnkyN8YmuHWvmNFo/pZQ3LiacVme/rX6zMc35/t1xJ4fLGdDWn+FiAofc9lExni09D1htbjfJtYV6MeoT1RPeHMc7AKfAEI4XvySW07HPNu4IUl3h2gH9CDxHgkSd8MeohjJxP8Qi5QHuDAcV4x9cKtREf5Sb13jJJGp0c326Bnqrb+", - "keysClaimed": { - "ed25519": "6el4gtbDZ8r1gQKZxo5LghQg8ktMVGXrDg6DOO0KKr4" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", - "sessionId": "hRI86U6AAtInzovrA/icjFkvMVxR4j5K9W26twB20MY", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "zjQ8VAOjcSk3ZWy/R1Hkw407369OHSe1OzWxAXRY2y8Q4bkoKCvGguZhMdvOVhKHxmjgJ3dvxQBpsJap22xC0D9wX8Jejre2EFTEJMrq+A/Y9lPXJbxOJTLFlaW59qgoTeIcVnfPcWP3dmbOk6UESy5C6ZPxhWYTsxiTP/Ezj+arRIBFh522IZLHooAMDOUb6QlSDCJ6jQVc8H41OF/nKgMVRAUBNkAr1Nygpt6tzGTVBzzysF4opJi5GlA1XCWBdFQZLvsmgsrDaN9ZkOUCJdOMz1fiTpPc1tjjXvcNFyVLhgjKre3R2qqMJZ36OBHs+j8PIyRhymz9fwfqTql8Bi2TzPYwhWkSbptPMhOeVSZqvBOwQs88SJzbqBi4uedD/MmyCo2izJ/ooLI17izgmwc/5oUGplFI", - "keysClaimed": { - "ed25519": "6el4gtbDZ8r1gQKZxo5LghQg8ktMVGXrDg6DOO0KKr4" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", - "sessionId": "+eu5+VjommeMK5XP/zZFJ04F4Po93YLVAUDkuYuscBQ", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "/EMzIAB9W1ym74i+Flb/+XE6ZhZpTru+vGeRl81ABOMJNIGk4zdYYb1qz1zUrOwEfFMzFgRNqMTBf6G7ZcJnYZUIxzZquvMzNWJVuI7d/qjDAVVIvDubPTGk9gRDXMGrpZKgCeS9PUknjPO8mDjV6HedDZjM1oIEzmJ+tL/HyjKK8XYr8ff+PYYlQX5IgSwpmHK48xYmpTT59q1CS85RMoOhGo4b8Crg8oaIOQKbGnDy2YVSu0JEHUB3fMmLkS1Sb0JEpSDbGm9lJQ0J0BRL2soPs0awUFnsVKiy2WcWdN8emrNIN8JHSDCqGx49gkn8PP27vcXmFEchFsGfexGnM7XU/mOtHXw6C10MMoxIf7jxH5wbb0uU6RvhF5oK2XpJyZug0hPy0EyDGITVg+zucKxi9bOOknpb", - "keysClaimed": { - "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", - "sessionId": "7hJLrZWYBqKXUdAEVZlCZMBmPQN4gtz+Seq8mU6xsGk", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "CYc7OLXF7eSERiDtiJOyYQ4MTTOlvrcyIC+6/Sv3hRCF3KPhx4L1nDtMowCw5NJBG6+qNn1o94efuANJio6ijrXKtEdlOmRK8SCjNxTQZq3bq7LzDuN8kfB+/wHhUYhKp/kYTGPONzn/bQC694UEIC5Ybzzzh642fwk15snMZugbUxv+2KiOJOKCyAqKEyCZcbv8M8lXhvNX+rPkYXVThY/xqNiENvhGvX7kmHXtbNkL38hSvyZ8T4HrJl0Z0lf0JVh7vuzzoNaPE2q5jdurNQ/WYq34oUzxuc7jzKVS+iPaC+Bs3j71sHrh9kX/A96IIns384EyXd+CT2bT0O3TUXhhV6EOdv1iwCp91YmiLnNkJUA8PR1be5gdCgbqBts25EvG9idAKIKZMsNxHxvZfMXXyBN+1WJ3", - "keysClaimed": { - "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", - "sessionId": "GZWMEBEJDxKzoagEC+wQekBTj7vrwQYXLlptQY8SH9g", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "1OVEC3x0+h3lJD3g0ouHJ57ZiEpmrlqmg9xUHqzWkaQ2+/rdNoeQtbwX/wA6YSur9TJrYWQXQHUqXDrBacyK82xvLDMQ5YqFqFc6QnfKbN9u3aGdji1+Hd2g4jZ4UDMzJ2tTyaTIGbwxznTu9F2rRzRwtZWjbLCOOaK3t04i0Q58dXOctQZs2NcW2mbYaMUESaaI1EH7onX+Vi4n130pz508zTySAjPHfAZUm0ZRhyQClSilfXQlfMqkxy0CEGy+2FoNqYoHfbzCMVGrxD9fbiYGosRExRwzL8iSMriyzMTjoNkqghv7GQRdI2IiWhM3OHid/PE8/SUcOXR2AFMVWjWpZAjp9AUypLnymzSco5P+vt/Prbyv/IXIbHonDKVNeemqTZT5IclLjuUdroPtfiH75RhEdKqq", - "keysClaimed": { - "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", - "sessionId": "IPzVJB/H36VGitFtMT71prYijrFLAKJF21ZceYLQWxY", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "yqEJTsf3BkpNcoLnooLnKz1UVKUAMBirU7X1KOyUySMOYPhhemX1E8tba3O6K3ka7naYzOmFREMzwYvzvlTUtDfPTOM5vUE7tS1VA68rO7F6sqTmlDRSgPku+3UUQmRUof+G0y4o2YlrkngrIh957GTGlAHSv22JewMuxyHqP1uRWu9b3TLjH+J9/L4iieLbdyVjKWYG3XplK8N9WY1fUGOZo+j0fex1ARxdjl2W/A6Q8QSItpijXITIhirhadUqQzeWIblQy4Ua0IzL/mToRV6kQ7Kg8WSx0ADHdvZHpc83QhbVtkktndoO2L8kQaj64JF8NzihLFI1SWvv+gCoVBXXWU/+V2O43FDgLqnRG8KlotPT0Ff0xdb5ibHROFpBmFllGl6ih6eKttszBtEvK4ygyqC0sRyH", - "keysClaimed": { - "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", - "sessionId": "QJhyg2beo0esI7ez3pvffF4GFc73Wj3OdvgPSr++FOs", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "11IaTbF0iuLSHpsuaW3MJiWMJuCS0uXsxnNA0CGljpBKlB3LmyIfPVbudf48zNacHL4iuQQl80gwJQLlDzEXIkIvniOVJ1yaVmMcSL/B1ez93IraqEJle4rZnVretIsim7VoqbagRmFcw0i1g9IVaiyYK051BheNIt5IlSmzcfqVnkXOCqnEHYE9OPxbyeuSK6hbDfaKdGiiCFK4CODkmeZLkGl86kLm7eKHhJXdm9cJrvtaZFVe0vUUUTXGvc611N8e7oEOY8gKOdYPIeKjzotTk12frCtA5YnRrL0p5WpMT+S6gvZj5CNOcKWWEBVqCmUjSJE+D4JVf36W+BVQpOgfGadWun4J9sa7MGLpJEYtr8/KTLth/NQZqU6E023n28jAXK63zuzmnhwsRRpfO3kywYpA8B6J", - "keysClaimed": { - "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", - "sessionId": "SPG6ScQWA7KplMGtU3w5k7HIZfF/lSNmhPPlyXgp9Qs", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "mPPHPNQUqS1OZfyzqNPEf7ckm51fplJaOT1LeR4kARlovVknV0Wij0xMV+fxYp4NIOoYzprzaCpoi0l4Cbf4sq4ZwHN6XrKOJCQ+FetBAFVLixVN5Y2Losc05rqBzTIXpuS0UxrkQe6ji1gCfd/RiYmXuBFMKu1A1OwV/3ALnwnn32iMChdt9Sh/9qve/PPyjtCwAodgjKGL67Xi5wYK/RKbxsBP9v/HtBuf5rVx8oyeWUWLtCalAlVKBmRFMdIzjrZgzOYNRXwYU35jRov929N8Ts/TloQFzZu8xkT6n7fk5EAFxIQ6JPWZw2hcCUct1UttmsG1eTN50nIylqKXAN4xdUltE/5BX7IPtlBDRLDzAt5N1PPL1iZO7/L1uljtDlx3G1W648XTLI5L+lmghLz/e09aYmdj", - "keysClaimed": { - "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "r5ri9JjKE7uoPUgs6aCRbiiQ7uzyyV6Eeo7P8FIMGQs", - "sessionId": "XcOTYdw6ODSRDRVOBCNL/7kmxPP6/MOlZWgWjo43Tqs", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "00PiC1xiU2CeXqJk9vtsINL5VyaOVIJr6ZlkIq1wj13UP+wmTryQhUV/XomJD5o4b2+yIXA17phXd3HszH4gGc0cMIPrQhFvCgxjU2u4sVNmwSD0n0eCyH8JxWxmhTCazzsTEdZAG0w0o3hG0Og7xOkVGh3aCgtr025GAQZTYcVJ2Rbd4AwX8G4qaAXqBqrSFpAgrW4DqUumfVq59PWoxUMPC3DQ67GN2zY/n1Ly3Tygb91bXGxCgXK3ze/IVsWCnO8ax4znImk3Blzoz5X+0r4S/zhuO7khKmgvTkRb+M13YGXJMrT5o2+KGaziqWOp2VEq0M+9OWPobc+zVFcgiB+0eaWbNUIqHeThQmBiQtI6s25IxrZYjzwcOmeoZRI/cJoWiaoyUPziJz9e/W24fXV9czZjlGL1", - "keysClaimed": { - "ed25519": "mCnKe06C9Pt8oD8z/FlWMb1TquVJdfkcOaTOK1w0CZM" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", - "sessionId": "5fUniWedXn7Lfx6C6cF2CNLBHEr0Cfscb85GFz4zBE8", - "session": { - "untrusted": true, - "sharedHistory": true, - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "session": "vp45LW81+7HMNLU9K2r24Qv/vl8YQGJZvwhSkQj0090vkqyngfNyNXPhsLeBhhQWwlEEluXc74jMrh4p9mIi9mrZnsGDLgAp39+qmOVJToU4Jr+duMf2gezRX6xMsF0tUsT46+J8wYCFTB8ZvJLkgt5mbuLyP4Nw+1o9ahggaNT98hxoBZC+v4KxraydJZPt0DPcz3ZlaVJWeAUtR0khwX1zujXcg3Xcx2CB5mtjq5O/q3vShAHAztPg2Sx9XpGTYlzc7oGHro8s1p7A0v69Pj7h/4+aR/K9H0r0jpGcoDrcvjaPq81/kg7gV8KIz1tFE03Y5N/NqZiaQQ5NCXFX30jWoW1qAP4vh93fHjwNw6rQVbSg55myAHHWT1aSH8XcV9pcpfwYwLsaxpgJYkhmXncRxDRDsM4G", - "keysClaimed": { - "ed25519": "vuQnIuMlpfrw2cRKZ/Uda7WBnPNk2w9XqP9Nf+wR1MI" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", - "sessionId": "i0UHnfpJA9YyYFPPreQGINIt+f+aFf9fTFQhx/yVvTY", - "session": { - "untrusted": true, - "sharedHistory": true, - "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", - "session": "HiecKA9v6b3BY4Tjflu+ZSs5yzZtPQautV2mUo8NpNtXiNeHW3xOpd7b7OfxS1nhck83BU2+R0UnvE7ySJuKMEqeGldqmGURmzcj+ox4mX1e4+B3C2r26mOSgaetkzC7OsJcXMwAOjK78PTAob0Y568s5/JVqfcQHSWH16gtvy9gjfEHDevg6Bj55lsNmTc0pTx6Tr+1g+PAssu88ZNXuhvsD4ZYtfu3z9dqqb4ckbOX7gg2lxQvHCCWvQ8RD+D9pSoUHxn/5QxpY6ZzFKtxrxWJKQnkN7FhSNpSj+k20BxuBvvftVUQjZzj/JAWn/QbImvt0eRQwAOfUZLMFheURkecendDAMQGEhFgYKffCfDad0g0RSBfLD/scHL4cAOxBXcuSZmcy9vtuKSjLp9iIHJvep1EvOA6", - "keysClaimed": { - "ed25519": "vuQnIuMlpfrw2cRKZ/Uda7WBnPNk2w9XqP9Nf+wR1MI" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", - "sessionId": "vw58QEIQwoWyJvCtBuCmPI0edHqulndrxnv1gNhOvCY", - "session": { - "untrusted": true, - "sharedHistory": true, - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "session": "DriK8YwlQmEsCx6U9bBWPphxMrHAj5DIa3Td00TLBgnZHm0ScfqhqMiPZ/fI/vuAqhz7FPAVSXdDz3T02lMmVm2cWDDHQxh5ps+kvb9OSCDJjbpH9l0F4c+JkXnxQnYMs+jTlhGQBcUy8QruYmofXWhQsGoNmgobTG74XbFZiqMWvzPzU1c+M2yEvqj2XuyRVbyNf4snlkWwQDWoJ/X4m+JssVvW+E7nLPqBQf7pCcbi5A56NOiLu5/H6b9w48qvFdeTr9tLfQ4G9wjT/fXBzlGco7BOdx1ZOGygAYGhX3AfyfUIMxz/JuIctAsC52dwkmjAp6lAM04OGwcWkluRkGuqDMDKMcEFhhzfx7j7S9ChDtRlN8R1g6NhU5nT5gNiuKlsNmIg7JYmfKRS/VMSuKeXSCe97k42", - "keysClaimed": { - "ed25519": "vuQnIuMlpfrw2cRKZ/Uda7WBnPNk2w9XqP9Nf+wR1MI" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", - "sessionId": "XOYD9nN6eEuh6rwBLHJGhlKr3j8GZPUSVr0Roo3eFXI", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "hhaj+eCcv0F43SYiegufaFqvgSWCep7E0bI9uYRZj0AJJibXmlLtIfppVjL12jIvvzIwjhook5BU0XG+wJnnVejr9Bvdd3a5puwxXy2YBQuwyG/5FDLCa9GXfdsbhrShb7u2AiWoOfhB9DTugOkkJoalyqlfGgbDfaTG5Wkb5RArRjoGHywjh3aZBcbbWPx1dMz4GYHakdt/OxaIDkkiJLpwBHkKMss1lTcKwCBa627Wm4CvMXFyZo5QRf44mLqpHjV8Fq/mS2K08rlyr5nx7RSoNKHfhLntrgXYwyf7RFmvxFR6CkgIUrJEZdeyadcldRtMVgboThsDWhhJUS9ua8wfdkef9HOQnfCMJzQP7xNU591b8k6S6BcZXlsk2sYyjhfUzfeQzFRTzGTP9Z/rKdhxJ2BLkjYJ", - "keysClaimed": { - "ed25519": "Nh9+zpTW7guPM6cgyxr4h764VT2JJmyCuFlczgLbHU8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", - "sessionId": "ep3My5F8VWivPx1eA+MGfBXeRFq2Ryw1BnaXPBm8ln0", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "2jUHtlf1bz6MIK5UJRB42EnoupLify3Q5wGKd4ZHRvmLpx1X92VO7aGbP62w35NfIUgvgo++CuCTwYrnowfuU00BUwVVFAUDSbFvreHcRVlepB/zhL/1rapu7f7+keE429hfJ8ntxSinju3MXSZ9ypVT7HGPK39bgf4IFRVfpGeaw5qXmO76wSlK3fO/zFK3mr9hIKDQnhs9VO9IlY3/pggJx/KL0T6GCqVFkhrBLw99auYAngaxI+7RXJeeLnlyRsDAx8smmS/dyy4QSHeBMsSX2pHKOz8y7eCTsxG6qwRGPzQcnwLlPwAnLpeHh4Bk4fYfAyqonTcxkQVc43jNaLLmGrlVlp6AaIVt24pIQU4qT/KGCJHvEjtBIvOh2pyTr5XzWw+FvEAToSRySipSg0xek8+OXb6F", - "keysClaimed": { - "ed25519": "Nh9+zpTW7guPM6cgyxr4h764VT2JJmyCuFlczgLbHU8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "sessionId": "QcQ+0QZiq0HlllazlEudzMEF/Cl2aBlIGpqgiLm0CiA", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "qf8eq57Ow0We695lw7iDhpgtthmI/jU/RjJtVoucI6IZn0+C5FLg6bcdmVMcXwPwQJqhBQV4OUChqtRBovGC9Dg5o/iUCM9HjizD8Pncuo7cKJ62WW+XgQwi3jjMLYNZhZDk+HbAqO5gxw2DaymX66skNsbeiarJls5MMLAwud5PNd8oComA16+DcTgYLcDUlI7rzFuH2Az+TclQ0t9hg5t9Q0//uVwz5UXGEHgap0q7yX0DlDf9OExH3mrhsRX+YP3ojZO3bsHPDCX/hpnvuHdjHXLZcZd3XIJbNbSiYrQkvKKV4LCOJyxR653j3e9Z6fxM3fcggcXGPAR/cjARFlzZfnGlkCv+TE6ywwJ7C8rwkLEKKxIs3ogV3CRCTfHaENEwHoM4ozdQxL7KrFB0ZiiyuBDvTCiu", - "keysClaimed": { - "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "sessionId": "SRZvhQMLmQ7Ol0GnEZZZeFxxwnBh4xdKTgnKU7P8X1E", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "aMnGmptBPb9Aw5DOwqYuCJGXYtojeFfdbfVlkFFAPUki4s9F+Wn/OgIanuDqVh4Aha8UZXrU9S6H5PtYFuLWpfXLOQUwL757KFutW3LQ4GblSoZQ9W8RMWqVWgdswldEemB28bxUjMhRECy+zczzc1N+mJd3M3PKlE08SO06Kwyr/0SlPzkmw4XE6nGQ2hO2qUZK3jY6JYiS8K8mdQVOC3zcJcljX7YMA0K/3lQOFHzNkQoaslXw/b1dtVi54YrJQI89tnByP2eg5yZdTxcWOekJ+VYtOU40g9ecxfAf2g0YS1YljbwXQXpo5AuEQuDky93oc5Dh2O/UZQnyGfOMngdH1F0VBzEUTHgowWh4BuJM48u3BQ3dGPp5EfWxREI9wahUzIDcWji2SwP+fwdzVePdoZXthqEe", - "keysClaimed": { - "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "sessionId": "dr5vZIuTMSrzA8jvfoQo6RQaQtNj2x509f63KFVyySs", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "UAWwtpqv0xbMdPQ/tTBDYg/EUt0qfWdoX99s9E3HXth+g5qoFUkQvw5MHekeXhBYT+548G4GLfBZFK15nledlH2Zeov3sAtvLiPbqN4itYjC2VNHJ+I6SdQTz+JlS2w7+JHgVyLvJFRaFH/gdwO0slbMErTB/btQhNINjlcYHjiKMDBQ0IpwPqYOvhZHXaQd6KXz7Bb8TptIC2059k+bVzNImfKj42G6xXahN7KUfuJOHH3AO38NFbAlsqByPBkCTJw2XRzGzTqUeTWywZZB2YN5U/bYz8SeZv3D0MHFKLuZhTqfVpBYuICkZ6cEUqnDqPikJxLgzj/dMXhd8vnaJ+hDC5Lqj6LXq8iucEt8TyLVYk2unxZd74DoJwOqQLe4BJa1WsGIsjtZoy9rd+DLkYhz5i1+115o", - "keysClaimed": { - "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "sessionId": "fUZiYlANfUexd5sJ/2W2H4Ki6H6B5uC9qu4nhBtcvdM", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "tm+izLAqRAE6sXS8H08ui6pm1ueMVElMTwd5lY02yIdCSXzgePHhg2QrE9Hlu7nuOxoTLb9hFZ8/5/BgZNF77mQWR9yVIUF0y02PParW5nqvXIC9/yvs9yo2n+Gp5akGHZJgM1QMGKKyZyhvsdz+XwWVlS7Uf6Ro5zRlUJ4VNE4csb30bVcPOJMPFdfQH4cPtKFGCHudgRaoONDRBIH+hEG9IaFDEpyRmOsnDMXFmQgnRdwR16WUKmKDdUkKEijfoSvV8sUv0k/20OUYL04i7cbQrWL//qlViyoFeke+ezQztyujkAr9akBhNOgCvVpBXTWU51exKj0lLxaaAcbuaAXMig+Zy9//Z6SkUTtg7o8J6+xrOD/XFtprq/iQ9s7wbHqoE/8GhK+QMpBsCqSa+/wpRs1P9WBP", - "keysClaimed": { - "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "sessionId": "kg61q8b9FXWVCkKNlloGydzX0z4UukiiaitMw87guok", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "Rgm47Eo+HN2lq5x+KXDr/5SRJuSXmpgoYNFK8vL7povU2Gz1t/qyBt1S+f1OvP4Cr8ikf2C4j+syfkqirmytJ0KUk6pShuZaTlPskSxIE8L1O+ROcPlVahJQFCSOCEDZDu9v3dYqRFxvANNqw7l9cKp1OtZKpO/VzycaE9VvQmnkqsCZ7Z79r3OEuCHl1qUhFLloSmdeERfCthzxfWp8gBVc6uHg7BK7HaHoOnQ9oczwSCYIp+qs7boeY3qrgGgf181ZoX4s2IDx2t9Oer+ZZDFda6yowFbYFbtfZbfgUNaUcapJNUdBFWS/Pq8GRd3bPsWCepGVZgWZRZUVpwl84knaRQHmwB73DlvyHnMKfOYiGo++IjoFneJ6CQJRMVeo3aJyeImqpYQR3Y2TvYkz4AagtJ6DXJsB", - "keysClaimed": { - "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "sessionId": "l6KvDCrknpGY2cZNOxoiA7u6xRBHdf7TfctasaNObnU", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "bLAxyaPUXCQTa1wZj9ouBLcKY21/8f2/VwKBTQH1YvtF9Wdbx663h5bFBABJ6zMeAfbaDSrNJG/HtrD33EkUk/tZBL+GRnA9KI7tuvd0Xti5z2VVnYD3iT4mhkGbhBSMVbUYXeqBKVjOWFcGrDvzc1gKR11HywBwpgynV1JR4fPpYd4sH5vfamtb+m1hc7yUe0Jj6mW4zR/XHaTsJp5pK55TlFxdywvZMOUhtFKEndAJV2YPOuzxnhdVDEaoo+IidLIzhEknGNA3isPM8pmhGYljARrKpv/7ZOr45fKYgzK3Q97xKZe1CXRugp6YM5y6m6RDRT0TRevVAL4Y9bOXeRXkIC0BP/x2W5wQ/3NNORDWRcdxo44fyVbgzPTFLyNyiXyrQOx8V/O31bqnZIH9uN6zteJhSIG5", - "keysClaimed": { - "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", - "sessionId": "uYucqRCzvkptky+GdqPRqPFQq8tVvOQhYQ7hpgvcLuw", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "Vo8j3QRs00kaHrAVH+q9s/3xLuVLTH7mvoP50CnIKWthPZCMYQVGnilf+NyYM8r3GBf38y0ZA2YS0JkGIlnQvTLVgu/49CY32g62XBNo9DV48GIO7nyoF/YC9WfTMdAMpIE2RZGQEvfXFUtW06SU2hXjHdwKjlgTufKOEEWi0m9Ll8OyWbE4d41ZOQF0FpkWASsNPPryFR/2NwJ74T6Z8CXkQNWv3HNB8CpDyBMHz5pOi3M6PxKd14dQBg+w1leb8q928JAVv8DyRtphW8ox7SRNzLiN1dsQolyqaRuCvlHaFvgwUObRRS01GFqjIQG7h+syg0BlrodTi3DCwsnZvuUqOVt1V/ivaMGkBw9hcr3KYttyOslpYBmm5fV1YPlW5KfPkQbkTIuP0BkWbcAb4Yrh3vXRKqKX", - "keysClaimed": { - "ed25519": "qGVxOT77mWwNVaAaigqCJcsm8OmGQn6yjgF9MtpZPIE" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", - "sessionId": "Lg1i5AEOuyY5tY8OLvn2HMCUOBM9W/NNjftpw5Sw7g4", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "2glaDve9wXUbK/imMGss3fFOVcM7POWNzCogycS50oXn4u6NIHELD1S1qSakHGjxjeqojndRvuUHLANJzc6NieYjpKD6j6i+XFk/scCmQ5Yh7USNMX12ApDgKe9MyMLCdY5FQFvrAdpyTyQqirOj6d3cuNtNHouPcCQYHuSwwy6mJXL1w5zE/gs4m5oTcgzh5wb/94BaATB5oYRvHlXNJ8AuNvkMGtkFPUPTeUTEmbq/SopkAkMzcuOW+Y7kAmqU1Oif7vrLFn6zQ+AqhajBhJwHP0gYhftOTy1YVeY6pe0C3E0Ad8o1TWn3/Ydf7o2g+t06zDDD9Kcz2JcNhJMoZzeI1kMZTOBab9wl1031Evns1HmSvySFPuDGIGxsflsHfpaleSt0nCpg1oavIY2NgrfxxyV9Yu5v", - "keysClaimed": { - "ed25519": "w+Ez8ZL8p12i5w0BiNJfcnvg6rda08up+jLp23nYhq4" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", - "sessionId": "rs1GlF3Mb5BGdo2ptP+tP9rOZNuHxmFQt077CUsUaHk", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "3m8VOjhVkeJF0q9RYlFKmGCA3Yet7q2awYuMqhoX0IwLAVUcj9gbNVnq1tD1Xrkg/JcU7iWMYA7MNGypGjj611HP3WIh5/0kCeP50Ng8BcTEQJd5jjhAUCJdB/bgzaoo62jcddeGFjMH73zBOAXPvqFuTJlIg3/JlRbI1Xm2FjlxQl78Ycp+B7CA58MQlThcd2K482XmM+ADLzmdb8ZlvutxUDfEt9QvhU3NuGWsXD4OcUPEOev65K+KDz4KhgGjFgCwNtV4en8spsxxdbQZry0RFaRFsTBLPiaoXF/RvXzGuqTGQ9aqVqiPYeZA1AEgV74R9MO5ggstaEC+hpRt199oG4hnR3fH3s5OYkEPoyQShd1tPFIfpar78X4nzkHmhHPkll0FHGhjnxlVg6rnUxiVgJSM5zps", - "keysClaimed": { - "ed25519": "w+Ez8ZL8p12i5w0BiNJfcnvg6rda08up+jLp23nYhq4" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "xw5fcGw+fsi0KmCNa43551+z0a2+1w6L9tbVwOkWui8", - "sessionId": "y8LE0ur1rsX/7OVpC91jWSHfGiPUq/NrOGM651RwFlg", - "session": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "hYO4bUVUyJu+qQPqk4wg+kmnvjVm93WNKQlEIdgMuY9C/B946hXdyTgilHt+OaG9BBmwvHp2OC8UkWVqczqN6Ptcj95g6deSO9LYeCLQUxOvQJdWTVpmfNrbS9bgZi5C+Y6vepKyvgTiIcWTft52kJltfNVwQUYrZ5IAJryTKeglT6CY4xwpU2U39ICF0d5pgZv8wND9RFFP2thOq1JnY5nAHtljJ8ZKQSmpgevmU153DeKZvlgwqxpM/A2YU3qZWy/1exFQPmW7fgFTbgnBT4+/XWswOgWRdCsQgJIUz2vbdhfNLCzcEBRKvyf45jreOXdF+tm0G4YCBB53HEbBYGIS1kV1BpNsvxwvQhhpLWbZA7Y75dkyxoYNb0qC7km+ewVBousYlSIhbDdLpIsmgSAodr4omQKF", - "keysClaimed": { - "ed25519": "01QCfmIo7tw4N2EFguQ/1y0UlPAXrBeKsYI0+N2nLWc" - }, - "forwardingCurve25519KeyChain": [] - } - } - }, - { - "value": { - "senderCurve25519Key": "yUwl8YCTPL7kEb58FQRAVf19I2wAVt2o2Ftg/VOG2m4", - "sessionId": "hF5Lv4Ag15/+PDvRa8DKRucRM0I06kWZ0zOlUjqs2KE", - "session": { - "sharedHistory": true, - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "session": "ptZaUnlkN313dQ0Z8V6BdXaEJSIoHoE9S1c+S9jgH4+MyLv2SGtidCIoP7uB9J+EmJSIV1z9CkHdvTIIie/vPzovFhTgF3ViEI61Kw4DgDxghvSbrRlmcHurH1v9HFMaFy3q/7qPXjCdLaNPjcVxNe0xPHls4hJKRf6PehiaZ69WfjV927LXRV0ZczUrhxl6isRcT4WnSolbKefVb0+icZDJcS6kpcluc4WINAslV946u/OP/DBbRcbmTt9A3bgX+xCypmNmT1qAZO94PVN3Ju6A/hVPPMONuMxv/jMVRsJJzO/GVCTz2Q9jEB5BTAz70vr4w/M8KlPTIKMFKZ89X2nlV5iElZNUeO5T7u7wREoe2UW2QU6CNo6ce7S9CunmAISFQod3BwGO8DTbQA/8bqe7StLCfe7q", - "keysClaimed": { - "ed25519": "ESSIjAwQ56hakZSsE6m/NZaQMZaWCvyzaIGP6koAz2c" - }, - "forwardingCurve25519KeyChain": [] - } - } - } - ], - "inbound_group_sessions_withheld": [], - "notified_error_devices": [], - "outgoingRoomKeyRequests": [ - { - "value": { - "requestBody": { - "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "heFBT+4ZfCNAQg9+5Uxzs1KpHqbUyIGHQnz3vB1I/Wg", - "session_id": "sp+ikvq6Q6CAPYeTQm5IGYDjIVj0MXg/bejokZTyyc8" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645448.0", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "6OxBF9bU+HH+BHh3PO9N9oeKToACX3LtupUg59ZgdxU", - "session_id": "mpjr24Z36gOyzJjWuhapK340tPZzHTedm3cZOzRTToQ" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645454.1", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", - "session_id": "vw58QEIQwoWyJvCtBuCmPI0edHqulndrxnv1gNhOvCY" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645462.2", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "X78CTT0Nk8RDlC7snNGfRRkM7wCE5/XkVtqESnpFgEM", - "session_id": "7KdhG9y04GM33WunByggRkCAzv8UwEI85pFMPqthpK8" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645471.3", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "K6pUAb6OgssyGzLqYcZQlskIxdwNTZu0xkb1lp2ysQA", - "session_id": "dsS5NET3Rl2hstxH0q39p+5zND9o5lVLrI6C3d1nwDE" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645472.4", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!gTsdSPqtENAVbnchjE:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "EFeS1tQU9GSHOr9NNI3HVNf6n2Mzs6/+7YSUvJiaTm4", - "session_id": "2mOI+YkPOm06IoR2xBR8nrY533egoMjIATv9/n/9Rck" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645475.5", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!gTsdSPqtENAVbnchjE:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "EFeS1tQU9GSHOr9NNI3HVNf6n2Mzs6/+7YSUvJiaTm4", - "session_id": "pf1CZDkjWgXF4irG3GA14jJDvlGDxdrAAtxq/KIK1xQ" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645475.6", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "heFBT+4ZfCNAQg9+5Uxzs1KpHqbUyIGHQnz3vB1I/Wg", - "session_id": "T8NSyD3+ISc8/mQQ6ct3Pjf+nPEPUZY7jf8Wn+fJEV0" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645478.7", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", - "session_id": "eTu6sNYK81XvnYXltWYwg9OJoPPSnwUxjY15b6CWyXs" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645478.8", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "KPKx5ckuyjJC0pFDqxTTn137gREpIbGe0QCdLPI55lY", - "session_id": "bAk6m9xKh9kQGblUqOTUWUIBCugV5wEXa0giFKwfdUA" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645479.10", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", - "session_id": "5fUniWedXn7Lfx6C6cF2CNLBHEr0Cfscb85GFz4zBE8" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645479.9", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "nLGWKDuN+ud83xz3cD/ZKkdY/gipERPlGKy7d54MkC8", - "session_id": "0YAjnyOpK6Fqhgcur9IoryjCoBheI3IPygxDg07B4sc" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645480.11", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "Qbsd5nxCvmmWYgHVUNDy4vNlC0dvUpvsb/wVlmTkqFE", - "session_id": "mXAOYsKpylmZFPkex115glgfQZjMbi0/TdhbjyCAmv8" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645481.12", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "pMJ8MX35Vgz6wocYqMysNuw9EeSGfJ7qH1lGLR5fsxE", - "session_id": "YDJ4j6aYTc6YDZRZgW64YTEDyVU+5JerhV2GkA8gjBg" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645481.13", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "CTyFO6qrSoNe2HWZXiVaHyGSXhY99XokuXtU9RWsZGk", - "session_id": "Ad8t7tmq4BcFgwtiIwEz+jI0JzrViGMZIqP2zrml9Vg" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645481.14", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "heFBT+4ZfCNAQg9+5Uxzs1KpHqbUyIGHQnz3vB1I/Wg", - "session_id": "8+J8uvJp4d/KeW2JPFgHBp4cj3/bya70oNYzFndbFy0" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645483.15", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", - "session_id": "pwhr7MQPCOzlO97vjaSFjAPVCvo7wGTpbaEwJ8kOsOg" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645483.16", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", - "session_id": "kDtwWhYG2NU7WqlRvs02TruBY5b8MnZzpbrNL5RPrco" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645484.17", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", - "session_id": "iF30hujs2t84j4ZVgaYiqMB8U+jA8NCvXlBgPyzywBo" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645486.18", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", - "session_id": "7mlVkXXOuK6v01OLocQ6G0+RzhPA2t66eX8yc7tbe4Y" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645489.19", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "a1S+xfPfFBbrCteVaIDMtsIfU7bpzS7s/lLYFMIR3R4", - "session_id": "qeLUvTqpKf/MpqS5utmh8ufQUBho2vAr7ud0GF6mD80" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645490.20", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", - "session_id": "N1NGffyPxckO0iqkWA5s0FYXfzf7qqIr3/Aktd9Wb9o" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645493.21", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!gTsdSPqtENAVbnchjE:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "EFeS1tQU9GSHOr9NNI3HVNf6n2Mzs6/+7YSUvJiaTm4", - "session_id": "i9kQLKJIT+/6OexDQclHSl80m3oUZ9LXSBlIZCTXvTw" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645494.22", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!gTsdSPqtENAVbnchjE:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "EFeS1tQU9GSHOr9NNI3HVNf6n2Mzs6/+7YSUvJiaTm4", - "session_id": "ubktiZnOBNGK35taZarOAC2H3xPICBPiVbJ3niGvjoo" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645501.23", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!qzuuzZxqLjsmaxoxeM:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "6OxBF9bU+HH+BHh3PO9N9oeKToACX3LtupUg59ZgdxU", - "session_id": "ikiaH/1xqegjNr+c2tbgrpGP1xkx5hdi++kSPGM8CAo" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645728.24", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!qzuuzZxqLjsmaxoxeM:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "6OxBF9bU+HH+BHh3PO9N9oeKToACX3LtupUg59ZgdxU", - "session_id": "z9lBLL3YRTb+gHEbh9vEnT/cucCKBGgfCSuxSkkGHQc" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645750.25", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "EFeS1tQU9GSHOr9NNI3HVNf6n2Mzs6/+7YSUvJiaTm4", - "session_id": "Tf8lBCOdDaffrgKaVo5cY6GHBpUUt9r2Q1DbkkRngvI" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645774.26", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "LqkBzWLi6AcThnecUFi+F2O36Ie3yoEYmQ255/Q7KHM", - "session_id": "NtynOhHxvmjsaZGtX1Excow362GHY9i9/KoYtkBkJPc" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645782.27", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!wcorgnJpnmLLJnrqNT:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "iAb5Z4AlWWzY5vj3bwX45euC7XxX64dLN+PdmGhzXVI", - "session_id": "C2P3ByAVrQQCnEvCJj6EWN1wqkMSa0rpoYlSHSi+0ks" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645798.28", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!qzuuzZxqLjsmaxoxeM:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "6OxBF9bU+HH+BHh3PO9N9oeKToACX3LtupUg59ZgdxU", - "session_id": "BoT0+SSnOmvnc/UanffFB/Rg/xiOKRMgYcdA9SQWzwg" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645798.29", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "plb/YHuI4r0OLNkaOrsYjA73s4gR00Ajo4CrW5q31Dg", - "session_id": "/NhRAmnXnkhVbkeVCSaYTCXVEIMx6ZGE8I6Xc0/Wwdk" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645812.30", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "6OxBF9bU+HH+BHh3PO9N9oeKToACX3LtupUg59ZgdxU", - "session_id": "aBFuS5qNr3vmcElvOiTuPqoHvEO1ncaYtZaBgwxFnBg" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645813.31", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "plb/YHuI4r0OLNkaOrsYjA73s4gR00Ajo4CrW5q31Dg", - "session_id": "32pq9zHJcxl9aGLCzK5kU+MOXZpW/bmKNGfCLVx/N/g" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645816.32", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "LqkBzWLi6AcThnecUFi+F2O36Ie3yoEYmQ255/Q7KHM", - "session_id": "4RUELmj24bRvB9Ww2m1PRT3TUYx6qzo4mwFzk0XYa5k" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1695903645829.33", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "session_id": "H181lyCV4T8uJVoyXWb7O4KASvRud3Xfafqjf6Tgjm0" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703780328568.0", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "IiMDb65O1yXf5NojRUcuFqo46z5HR+9sUo85AvgLzRw", - "session_id": "e7QKtyAgtIv/pV8Wj9LW1SNA29HW21BWUCZSM2ya/iw" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703780328880.1", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "session_id": "TEte05lfzGZ4bx9kL6DOqKH76pA6WWO092xx2WWgYXc" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703780329058.2", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", - "session_id": "JqADR+P6ZGGDQg+sqyw9s5kxG8TE1oxesbmNO7f1Gmw" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703780329284.3", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "YQu2YF0z3M0fo1BssO3S4R/xKgiab6EpcziBVpSVNk4", - "session_id": "s8FBf01QRTaEhcPQOhbl4WYKlSiU7DN9ywq5gf/8v5k" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703780329505.4", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", - "session_id": "OUJAYLRJH3nsa9wpEnLXRXDamIAV/Feb+NvmZp9GfRs" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703780329531.5", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "SKowG52ZsxqztGJts32ulwwQB5+lC0FU2RsPRX0RUj0", - "session_id": "h9VjeuxpeB/O1oFMsOpfOSXbJXoBiBrTBaBuoumwhVc" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703780329531.6", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "Ucrw30k/IX2gghuMtS273duDe+64MuD00LfInOGpXBk", - "session_id": "CnfXpU+E44bENt8dVpZSI5H31ThKhonnYHnS9vpOdMg" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703780329557.7", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "H5UCVlyu6CQ61RYfV6w+4DxVuTdwWEttQjzouFNyNmw", - "session_id": "bq+IrH0Bo2qXi4BQYTJuw9m4BrEpmfFzkGWVtptzVQ4" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703780329708.10", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", - "session_id": "aVoXbvcehG3GPOuvw4oLjpxIUySvYxS5+L5guiaq8eA" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703780329708.9", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!lfeeJrGldjNZsqCPak:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "xw5fcGw+fsi0KmCNa43551+z0a2+1w6L9tbVwOkWui8", - "session_id": "iDa+jgbsEzvU4wBu8afvl53bUDXF0S97hiOwwUL1JSs" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703790536229.11", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!lfeeJrGldjNZsqCPak:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "XIHKG94x3Ht82rKysAQTltL41jxqGqiKT+rw4BtYWx4", - "session_id": "vYERX3+wYot1J9xVFy4BYFGp1QBLQ2uJSG+GRIZyjDs" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703790536240.12", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!lfeeJrGldjNZsqCPak:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "session_id": "Lg+rMEvgRfigyCbj+1H6MkhERU0L08wcxJphsozl9HQ" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703790536240.13", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!lfeeJrGldjNZsqCPak:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "session_id": "LC7RXMmBl91nvd/Cq0MuFIXl7exQWngos8XmPLPJuUU" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703790536253.14", - "state": 1 - } - }, - { - "value": { - "requestBody": { - "room_id": "!lfeeJrGldjNZsqCPak:matrix.org", - "algorithm": "m.megolm.v1.aes-sha2", - "sender_key": "a1S+xfPfFBbrCteVaIDMtsIfU7bpzS7s/lLYFMIR3R4", - "session_id": "guI+q47guhEaVl6Jq7jiM/Fpg81Gb3TuRJa2QFEmVYY" - }, - "recipients": [ - { - "userId": "@vdhtest200713:matrix.org", - "deviceId": "*" - } - ], - "requestId": "m1703790536261.16", - "state": 1 - } - } - ], - "parked_shared_history": [], - "rooms": [ - { - "value": { - "algorithm": "m.megolm.v1.aes-sha2" - }, - "key": "!CWLUCoEWXSFyTCOtfL:matrix.org" - }, - { - "value": { - "algorithm": "m.megolm.v1.aes-sha2" - }, - "key": "!NvODNaNaQbJWulVEDV:matrix.org" - }, - { - "value": { - "algorithm": "m.megolm.v1.aes-sha2" - }, - "key": "!WXNLpHIsCohXpXsbUk:matrix.org" - }, - { - "value": { - "algorithm": "m.megolm.v1.aes-sha2" - }, - "key": "!gTsdSPqtENAVbnchjE:matrix.org" - }, - { - "value": { - "algorithm": "m.megolm.v1.aes-sha2" - }, - "key": "!hDqiQUQdicjAXAOEUQ:matrix.org" - }, - { - "value": { - "algorithm": "m.megolm.v1.aes-sha2" - }, - "key": "!kOjcnTaPnmhygqFtBD:matrix.org" - }, - { - "value": { - "algorithm": "m.megolm.v1.aes-sha2", - "rotation_period_msgs": 50 - }, - "key": "!lfeeJrGldjNZsqCPak:matrix.org" - }, - { - "value": { - "algorithm": "m.megolm.v1.aes-sha2" - }, - "key": "!pZtgreTWWrwvzJWfvI:matrix.org" - }, - { - "value": { - "algorithm": "m.megolm.v1.aes-sha2" - }, - "key": "!qzuuzZxqLjsmaxoxeM:matrix.org" - }, - { - "value": { - "algorithm": "m.megolm.v1.aes-sha2" - }, - "key": "!rqNZhmGvHENVXTtcOn:matrix.org" - }, - { - "value": { - "algorithm": "m.megolm.v1.aes-sha2" - }, - "key": "!wcorgnJpnmLLJnrqNT:matrix.org" - } - ], - "session_problems": [ - { - "value": { - "deviceKey": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "type": "no_olm", - "fixed": true, - "time": 1703693125289 - } - }, - { - "value": { - "deviceKey": "IiMDb65O1yXf5NojRUcuFqo46z5HR+9sUo85AvgLzRw", - "type": "no_olm", - "fixed": false, - "time": 1703693125278 - } - }, - { - "value": { - "deviceKey": "u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", - "type": "no_olm", - "fixed": true, - "time": 1703693124981 - } - } - ], - "sessions": [ - { - "value": { - "deviceKey": "+XWeVnwsM53WJKyc9YlK1DthttT9KgQAvUG/zmr0WRE", - "sessionId": "8sK87VY+bwmAXifISaX2Xg9RS/WkxXtkVdei/oDgu+s", - "session": "98r1axZxZme5C3D1DCEktDym6a5qGGaFqcYMQGfpqZRMGKv8IepZNv3syDU1mJBfoqBDhfGy7Seg/BNkPb+CfiQIsaDwz+RvTSc0v/2cjp0OxP0OlKuh1AjfcVExjo14BgEw4Vir6Pm8Hp0TzxCYeja00Q3W4S6iqhJ6QvYRn3y0XHiQI9o3WY5LkcC+t+zo8/0o2M+rNTsmQKkvFyQVJnGkoOl183JQaPGS5Xliy/jxCtoCRW6KjUh/JYo/8bx6g+2LrrMU3jNZ7Q0vIPP63RRTz3dnjohm05EPzrm/Ny37JTiSblbXtA", - "lastReceivedMessageTs": 1703693125384 - } - }, - { - "value": { - "deviceKey": "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", - "sessionId": "TE8dwDqdE6WEYtZOiqqpIgQmYTAR9B7C4HsmoXJgkyk", - "session": "h+Kh7Wr1ghx/jJqQfxh2uDav3wzLzRakqTGcGUF4Oxa3kc1pZpaTia6H/hbLXXg5sfT47RGMphX2sFpRcVFQk/QXgDv5z24Di9krPKcDRbHCVu2ZdlgpHYVJOMXcxPYDsdRvE1281SOTCpwamjWr+4oUIGMNzSaEpZvzgGEBChlE3TxDPvmYguJYA9PK12mgyTOwTNwoj4CGvYlcYHzGliXT4p6z/yfxM7hCmTTuOJqDCkRUYMSf/Yc8wOztZ9TdM6Wmy8okC1+eGRGRM0xeW9LXjpvAUeqoJzMCvkaEwmQPo8o3qSevBQ", - "lastReceivedMessageTs": 1703763072134 - } - }, - { - "value": { - "deviceKey": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", - "sessionId": "UXXhR205e3LHfxTF2K4HsX62gDFQU5jZoxFecsWrL1I", - "session": "F2tPtegrPKM0c+8Gtw0yyPoQeJn7opKITs/SzFS0QH0uVT8aOTK52/N3p+ATQdWlN2BAsa8MGRXjPPUG+c5s9u/HeZKmpwSiqxgZ9DdbcFYuIy9wiOe4oV68Hu03Yr/vqb9LWPQMTDgSFi2z0u0OMoDCDPB417vztR6fzTE4rwE5HUHgWU1s/7tXcF26nMzeYHuhR8KmpAYgs2/Xt/hcSdsRsyjIVxg4II32gM7XhgYcmQBQewmKasChtmX4V3ihxW6zwib9VwcN+q7XAg01QJyQY4+KSh6YYDSC5j+0on/jhcrpIC4i95i4fFc2Wv5EAVBPB//6TsXsu0s49mkp/H0ZshSeuf/J8Ip9NWI09kl9NM6pNPlalVQQoimFF/FWOovJ8iGQmRpCMmTeJa5CpELZPGXNAPec/eSFqLnSTjyYBFHroaJu9Q", - "lastReceivedMessageTs": 1703693124932 - } - }, - { - "value": { - "deviceKey": "2QbxGOXsk4Q5R8gTgrTX8OFg+oQr3WbXM9wqVo+6Fzs", - "sessionId": "AUx9o1dajsn9aQdnOmQ2ADFv6SDz3L8Yvx1RiCQ5y5M", - "session": "S8lTzMeojsGp+XDCc7C/qPIT0iOCxx3+j9PWHhMLHQA4YAwIMEyiE8gBqH+mhhEFFg1gNVu0Ud0My7uCmZFIsTbM0Obu67pBMrTebqG30Sc1vyQqIxh1Vh2OI8FWSdsVw7+204CpZ0FhisHe4hyFLlH1I6IQRNpIzeAC4dLAgb8I0PX6xwT5TX36OzTDVuAsB3OpR9mT3LF1gDZa4U4ZgrTCJiHmA6a8Y3KIdG+y346Sjaw1IHpAqpLjUALCXfYqysE5Coe7cj4LTXp7FneCl6fGXDjSMmWRYkINo2sAYpYRdc+QltTqSQ", - "lastReceivedMessageTs": 1703693125360 - } - }, - { - "value": { - "deviceKey": "31cIbE9brvZuCKXcCItx55JU+Fva+Bq0ezSIrCFkGgQ", - "sessionId": "IUrS8PEsXQJUxLDfp5RRT6/q7VKXCv2eNRaNGYTGVYk", - "session": "4EEyLouJphenzGuc1y2grDrjUXelTkySnzjQNlPLkwdR2VRSHhYh+8085fIEDTdEUcokRHK2ICo6H29T1oFP0lMqIMxf7Be/ItyrHPITrYr77MsxhXu7QdP1YgPDM+Bfn74wjWDtIZUN50zo4KOr6jS/DrPfa7UJOAfmrkBUxUEZHKVz9ET5EWhZiB0CJCMh2xiKwAY369JiH1m/ZrH9zVrM33vDd49zixla7EaaEzbu9Pwy83CNoEk7avD0LkbzCiHLeQnCVPMOZcF5nCf0MyoqXPiQEB0tv441HWLCyAyAAQ/zY1u9Ow", - "lastReceivedMessageTs": 1703693124927 - } - }, - { - "value": { - "deviceKey": "44ztwj0hZV84CSONm6SKLlTPYyt1euwda1wR1BlxSlY", - "sessionId": "RpOrsL+92MNAH9j3ac/LL7OUrsNxM5kM4byJY20e9eM", - "session": "HcjcZ2de52MUcI/8b0DlP+CuaIGwrhOHs7mgXFrGb1QVV7p/0Je4Sup9CBAgh8egHE+UQ7STHsMRFDGM8uk/s6xLZpPieKa+btA3svOpwB0xubA+5m/ZxFdeefGBtTkVQroi7fcn/qi4OjOONQWWk/qmTKk0HJyrEfOk+VqnLCOEBpGvFQBNGDPs66DEoH4Zl3MDyBFGIJ1Zyy8g50VAsVIbDeoLc1m/z4V75j2zu4ma/3a9zElpwGY/GaPge/QCjZDuL9XHsYaT/ls/QcHXGoKgtDFLIqEUHp3BUFJfviU5paKvhritCQ", - "lastReceivedMessageTs": 1703693125398 - } - }, - { - "value": { - "deviceKey": "4o7UZbNLHEb6zYyXSJYuEIxilsaAlhEl07j6yzpTQ3M", - "sessionId": "o7DzxHjKKpFxomjS1wNVMNUFvBvcjNdJvORxu8prL+g", - "session": "ZfzumbBfzSmviZaOPO84vDldwap4YhJ1fxxYYJyN37NKlGeuAulKHpWUF3UVJtMcK9OLiSYxbApgL2kPYc0A+GGtr9BBmT1TwBXnOa433m3NV6rDv8YEREtlg0ifWycp7AB9PhVe/L6uhPincvqk608pCikQpLQmDpadSMODNhPKtcos5VvBVGTnT4Hiq2R7PsazS0Pd9rxSU1NnGUiMxKDn7YsviV9/UmPJz2D0Z2TAVTp43M2NW7BtYT8aHrUVLG3ee98yw+6s31i6XzHjrfeXodtQps5D0LYB+MV1ofKRkeDSJ1FjeA", - "lastReceivedMessageTs": 1703764371817 - } - }, - { - "value": { - "deviceKey": "63T7anu0SxzQJRFnvmHXuQuSW63plQdt00phE4lT5HM", - "sessionId": "jwccLeV5emqQMBLuy5DfmjBSbBcTnAIumIIkOUvSPrs", - "session": "c619GTuOZW3yRDgCFAX3SR/QRrp13Uzk752BCjFgF342nAoJ0zdd6tE9+Xn6XjCeRrgzXJQnXtjoWw5b6p0ttFrFq04W0z4H3ikOHSyQSoM3JDgIIRQhuMtMdM2auQsajozBJv17j82npClAVhwwgMuHy/xs87A/qiRUj3ZZKxZQIjUEhvVhzkxT99U/UTESj6spBp2iNIzrO8pFM1U0zjr3wnPLcHW+/7A2fbJ9aNfF/KH/nuqsw9rypAa2awh0KDNNnIdQEhSUKaLml598ItGNq666z4fAS5bzaWqsgZyV6H0v/YFL2w", - "lastReceivedMessageTs": 1695935986094 - } - }, - { - "value": { - "deviceKey": "76YwqK0pg4oc9XnCnyVeHV9YVJ6GmQNHwWoGWb/4Uxk", - "sessionId": "UIavm73Jemh5K1fFe04ID3Y3wpCFW7qQsu5OaP+/9pg", - "session": "0EZeK3OpdrDLzsw8NWbh4ZuG/0g1H56VMqt+ve2C/AHj5ZZzV2doZpl7IvUDo3dijN7FbdsZnGZS8ulSbxVZoNTeCsn+wckR7v7jg2Jvqx1SCeBTVGYc3rO/memGgaPjbg5tNsRJ1+IQK5cINhJqHPnolMQHOku9LYU0teu4Ary5La2LkcCpmPLg7kpAxVM33Q3575rCjhnKoFp9ejgRDslTPM4nPRztnnTGaltmxYFxvXZhaSVNyZ7jjaI/6CswzBwI83r2CJy0Aa9J556LEfePR3ppfFq32gea63uNbK0ntUCJl57QJA", - "lastReceivedMessageTs": 1703693125389 - } - }, - { - "value": { - "deviceKey": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", - "sessionId": "SBOpfw4xX592qiRRC87rM4cFmL6igiS97Bb4vKXbF7s", - "session": "Drm7c0xZHlI8EMZrgy+SXhDInpYZQ5b1J59SUbWDl60ytV10IwMBBKe6fc8TkVnkx80AUCA6Eeej3hnl5jROOXQU5nmx5QDOVsytzSEG8aGo/j47zDeyM8mXKoXdHdlJeiDLWGDUzrog2aDFVDrUmgnHoCRV+a0lzy9xH/ce/RjmRsTOhoWCDl9UDa0OrkMRQe853P/iCKoDyoiPgaUeD18tD5T6hJd9TRkzYbao5QUM05a+H2oqlpM7W6glM7G+2kc3FClf/sZXEY9W/eFgO6eiSXQQbBZTnGbNWm6iG4fx5mWHy34TsVq6kyDRoSSiLkv6mcz324JAVRg+OU++pL8po8vhZH6BenvMSzbN4BNh/qhio298RE/9kvjCkoQ5lAlmJkThfYI", - "lastReceivedMessageTs": 1703842342024 - } - }, - { - "value": { - "deviceKey": "BRje0HJXy/o6LLFW6ZxgSJYnOOZLgXsxMoa9+rh9wDI", - "sessionId": "eMH7SXJ4jB1qASFiGey/pfNNobjKRdacTJzOLRntSi4", - "session": "pyxnt5pqDmYqtdSXCtWGpEVW2wjQf8pxN+uHcfokYxjiTqtSsFC4msyankAWk+FD0ndIQsba0paLvd30bmu+ee7ag/22j8H3YrcWPpQRtqwgtDESF8APQqLb0YWwkVwCw637GVniiGJEqnvoVtk7uGrw8k0MOgQqba7XVN+VhH93IhdKgbUvzVYIUMeIGPMQNZpq4a5CUJqVsz27hqhtqOw2j5nYLa660d2aVnUGudDsmeDtKBj/wN2/rBkddQQOuVVDz2lrkdGShPk3hUE47Lyo5JfAfFA+8jVW2/gm2gQE9JXZyAYu4Q", - "lastReceivedMessageTs": 1703693124940 - } - }, - { - "value": { - "deviceKey": "ICXPtcBcycUazdhM0BM7VmcbInN9Te7dashv8id5nVI", - "sessionId": "Hi3rhcksCQOiexN7wM0uBpYnSc10XSLk+IJu0k29Phc", - "session": "4aWktRXVNm/z3GNjOUtN+goIG8RSuJZ2xSmwc4mDXsMuAIVU8jJy1Di2PmRcwxJDxhDmrZB6Y/WT8TWQr6rqZWnOhJrbtb2SqdlnSmM9pSb0Ss90jLkS/Qg2vVdwBDnemtQSRTiVUB10hKLG3/mmUE3CNiuoLY975ceNkb5DgQ534hFm0sBslzJ+0azyq9fpmcv3ZZzBEonvG4kMhSwg+NBaymyQxs03V12V6VaCsJi/3drS2A5PC+4moPPAzLUI9AY+qdcKPJWWR79A43ar5TdRPebpdRbKxxyW2J9uYtp0avvg0E3QPw", - "lastReceivedMessageTs": 1703693125365 - } - }, - { - "value": { - "deviceKey": "K6pUAb6OgssyGzLqYcZQlskIxdwNTZu0xkb1lp2ysQA", - "sessionId": "Pb61qNOx11Qtk6BzcnIC6FR9kdwrJ7uGcJ4d4XuGrLw", - "session": "9FurFRPa2iCORpm7j/ZFHlZID4Gfj5C8jwkARvXuihx0AKT0yPcP5UKk40MBq5LjLkuk2GBKMHGqy3+2+msiGw5ZiuaEICb4KoHaC5eBMLAAfXAFBMaGuFLaNJpA1P1k1J2C1dKLcmHpM1r/T14B+sMMo5Qxi/A06YwYi9prEglgUSuqNT8Ch53+s/liODX5ZHPFVMKBBBQLTwMv0SBiNiABTVuH04KV5l0ubuROrrA2dERZt+6hm5Zn1CWGWuk3u7whs4YEmhZDA/LKolniLWWhhDNvcFLhluluMDLqRm5L4DTIJ5Eq3w", - "lastReceivedMessageTs": 1695935949222 - } - }, - { - "value": { - "deviceKey": "Kb+P4tSZMhmd9Ms7N0aKSBWvRvBQrEuoYmpsFsEkjRM", - "sessionId": "7jiGW2hTPlYxx2ODUxJIrW5s0L5vBdOR1kaP1iJIExs", - "session": "oAmUvYpSxYfxu9BzRM1tEzGiQ4R5s2rgyvakrQKx2gS+nKftjlqar4fjtYy/11UC99RK98MRUQ3VUuztdx8lOcF2jlqt6cH30mYLf5yVluH9f8G8IuKisaumJMWof/DKJ9AT9kgVqNxu5BTEa7Bn2RvqsurBOCx4jwQjhpePkytoAyjxBD26EERcxfr8uXFpaGOI096klyPKFaxF32/zwB3VBwpnGYY/J2mMa/Z1Z9uxjzw0doqrnKeFDaIgz3kEqJela5ucbvw9F1QSZVxmEYtKBt5jmtY0o+LYyP7pd1ZBuqfk4dEtsw", - "lastReceivedMessageTs": 1703693125334 - } - }, - { - "value": { - "deviceKey": "KgTYJ86haurjTf1uKseV+HIxQBJvbyyrS1BMUv6dpyU", - "sessionId": "SrCZCTfKDt3+VomCfz5DnEMvoQffWC8v9htDkh/sCIY", - "session": "LPUT4BEI+wn9pvZOck3qjVyqpLcoqvc6D8HQ/8NLKFNExzkRXELsSt87tLtxjgg1WwUoOlD4EUNx+JkN/pZrQNCAFW9HfHgmtGzIX73qdAkV0IV3UvZ3UsY8/qDKTCNBQkYVt9QK6g4kIw3mWi0FAU25aJEYla4FG/BTc8CuuQtHNZ/zLKsJ79n/ptp4lTn0SDPBtKAdB98c4M84d5lxWCkHos/JSW8TXncASfQaldM+mMATvzaKpursETb9gzEJQBsRNTK4AqY/0gy34bMzuzW9S7guw/GR4tdDg/L0JfMOLs8TFssJR8lgPqJ3lAmbUZiqXvAoL5jw99dJzJsKINhVHrrVDgRqoA6d3vcgu5fREQj4jHaGe4E+tItc61AYWXtuIVOM2boUWGYkJMVI+cD2W3nj7ax6GCBlscnZ84HLX5J3Yg8afA", - "lastReceivedMessageTs": 1703693124890 - } - }, - { - "value": { - "deviceKey": "Ks7CRbiszRE6r1qParXb921kuyb7rXgsofAzdERquzU", - "sessionId": "+2LnCHZ5HwyIzA4dZdUsRnhtus+4NUJT2aSsq7setNU", - "session": "86c1Ax7Pm/DqyhpRdTC2ldVRDLTg5Y7PVeMrV26P3AGi1i9lmDs27BHBD/AUR19dK+ZDstTjPPCC/PZGFpPdYCg7FRmmSkSYprWiU/HQDDb5Qyn6j0Y1PFPVXP0uJ3ZDpZmECw1B25VB+tZGw21lgIwoGOl10yt/vWEO+IkoSZX6WcKo2xwkHLBZZIwVhxtWXpQtiXiHeGDeNkzUrlFIC11q1iPHbZm7kBrqdysTedE/0JTgK7L4j/Lzl+AS52cnyxjEYxTmNpedDdxTPy/qOnEwEnMRET46ZoSX27GwrMu9QzWdnrwS9g", - "lastReceivedMessageTs": 1703693124917 - } - }, - { - "value": { - "deviceKey": "P+hMAaz3lio3uS4rv/7TfA+DPUVgxzkwoEz9Z9Ojzj4", - "sessionId": "ODZVoYifRxMNr5rwKJEyXYfAxmnal/jGhwI4gO+bkus", - "session": "DORdJ6t4CWWNajsx+IYaZjFexA6VRX2w0tbxkoYFUXDqiliN51NHMoes1WL/yVZr73hpJNnCAFlXNuStJnXMVOHGgswCizc7OcAiNloMRNa2Hj4Sx+VzcFWqUZjlVdB+0yN4s5+TJqVOpCZ+OELOLVcugw1tfV+o6RhxZFVuCe74kdbjDnA9VgZWiyNoxy5D/R+VBjWrrqs7/62UMDoHEUF7ez8+AcZiDRYTYjxXfUZf+5AMmjtyqldij/BooH7BEkIKOVXofC3pVl3N1vsdWf1BmPR5OvYn167vpBe6/bXEz2Zraz9cqg", - "lastReceivedMessageTs": 1703693125387 - } - }, - { - "value": { - "deviceKey": "Pi9DRxi10cl7wyDpOJ03iYhpDuH828/O8yrYErbPW14", - "sessionId": "atEU4Y2ePZb5iMTtGmXEm/q1COulHqi4QYYcegBbnFE", - "session": "HO+ROpgYP+7WBepZNSQeVLbALm1q9z5WbnE8VBaN7QBH3VOdCAhBjLRBXHFTt0jjTb2KOXpzAdAlmUqV7YkxXtOZ2KplEXXJiumG9YjIV5HUJMaUpUv1SdgOGXQhRwDIuAgZAXVH1cxfeqq5zSVAmaEy9TCUluF4doblFRLp4FzmMkl90LFRPjfLN7IXyOPu7pLfz4O1SoulvLVPEpMIExObz6mo1IRUVDWXB2pGh+q7FWtp4ZgDn0QwiSwqDopuVTMbthk30+Mp/rq2L1YAXAARsKwp1vdWqOb5okjAdtGRydeAv4tZlQ", - "lastReceivedMessageTs": 1703693124933 - } - }, - { - "value": { - "deviceKey": "Pog36kjaHKsGaXJP4IRSCOGco1WHId4xBLKUqzVMVi8", - "sessionId": "fFHxCNqb9lONeEEfIeIxQnYfz/VEtlaulYIFWmcpRNw", - "session": "hyaNhdDgI2Cedgb3LTfEHPO2d4rYqaP6xhFIbsF3upE08vCWNL/TEcf0bSuvPfjnDRU0qLAQP1qv+MFvyTDhPGY5StbuicKYl1vusWk3cvBdUApvNtLQZmyansVlqgLKTw2OzPtJRAzGLcf3xQ+lTtjk988zHtTB/X1Q6Nd89mtrDMMT/LkWfX+AKhKhcMagmYSlYkx8H9FRPv9Ugk88P+xwn3LiVnBOTxUMMs+2xMs/y0DSlgpfgAMB/ZkySogQTJO9GwMuSSpaI3G6wrKj5KGTYB68Q2pSM5lNeny4sK2/G5I1PWDI4Q", - "lastReceivedMessageTs": 1703693125401 - } - }, - { - "value": { - "deviceKey": "RhqbMrR2qmjyDPGh42dsZCenEHZXQdGjeHZXO8kHc1E", - "sessionId": "Ej2wXNX4y4aDE2f747ZczinETzvB96LwQ7BU1Bc6BtE", - "session": "Rg+wrijukNBdLIPb3+z2mrKq8sNGVkBjlAs4ueddMD97K//nTo4PTghpDqFadV5n35xF1OZlxqc6qTWDzKJFfiWJpXgDgdgJXm1OkJeBBibt9wCs8eYsppSH8nUPkH0x50uNwbkDXJ84Mtx5a4LqvjxjcdVSN6MC3CyTq7OdT3VXHHfGs97P41DmDFWSaLQ065XXpVtewGE521w7MPIFKk7txj6w7jdGXPF22bqi4dPVa1/p/up4GwEqYdDphMLSqQd15gcKZl7/7iaiPPpwN1pUKNVUCkVFJ/vPIicP4Z27aB2HH6qutg", - "lastReceivedMessageTs": 1703693124847 - } - }, - { - "value": { - "deviceKey": "SKowG52ZsxqztGJts32ulwwQB5+lC0FU2RsPRX0RUj0", - "sessionId": "D9gS+qJBPSpMFaxDsP4AapVTB5JNeymghYP2XyhP/+I", - "session": "URQakcmMc1kX5yWCwHTnv/GAP95ApqtWDzR0R7gveRAnsiE47ACjpWdTCStkib0X8LxtpU4G5XmV0Ebw18ATR6Pi5jvHbUvrYZU3hdtUsJAnW23x8ETJHsOe0f+IS70eiIgmJGkRo1pwz8e14rfJbMkT8eMkpegcsvV+fZokw6wfYO4/a5YVgsbkEK5H56xAgmqK/WbMEdGV6WrcbXEBQubEWu29Pe2GweQl9EZ0SYpLLf1EN9redlcFZ54qasv54dBPLrSSQUtrOV8zX6POLumtN626Nq2cVc3lrvrIXTf6B7H8EdwGkw", - "lastReceivedMessageTs": 1703693124898 - } - }, - { - "value": { - "deviceKey": "WAkJI6B+oYDZmhCOdiQAH2xUOJZFesDuNskPRt+ZHnY", - "sessionId": "tJY2W7ueaoYtzI+JK6EirzVfDryOMDhjB6anLPy3NAk", - "session": "TTkyJC48ZFahtZUcGyC7zSlrRUQDYvvXlDinor+DoorO92ncD6y3VqtPJzFy74iTdWxmFtOwSPffDhOW52cR3j/jPok93BTviX1k3HaSQKinO01csGeVOS9dy2ZB3VDWpCpumpmpFwqs6+RL7MUcQ2LcxKk4X0jwzjEAewlVUWoiiIvx38AOewYY3hlNhd2f+0NasRZR5UFf5LHIeL6fyWEUxV1Fhq8Wow2TsAZUG1wghtvLJT+OWdzha40nXX7LJN5WGGzhrh9f0/10ekwe+V3rrUhjMtfHG+8ybEjyuOCbhGdnsQr/TA", - "lastReceivedMessageTs": 1703693125391 - } - }, - { - "value": { - "deviceKey": "WrX63a2ye7tfBJv0Flq9DU2RA18L5G9S2pdHPi4FLEE", - "sessionId": "PgYkNaqLxVUaXEu/63HO9HtnjboU+/KObvIkMo5xFyY", - "session": "xHfAzSMAukQzdjA4geSyUmw0cyKOS/aAjzRM+bv8MD2FlkTcqqeC4p9JZsJ9FfXsT2i4q5ZPijngqJHKja5BoK8ZNCYKTAj7g++OkOqxCXVX7UxmR7Y8SzT1yH3leVL92ogJbGftpEUS79znKLZ4oQBe5svCNuGaVLCKaNNP8HCqEVZEhXslIm4DGBddUU9I+NkONFS/DhaoFYUS5io1mp56Tn8usOTzmnr49Ca8dKp3fxNUcrR5RFTHFIa+PGQwutey9mXm1EBPN6shaYWm4UySAPy1tcxC8N3xn+WJxkdxocwXfaM/kw", - "lastReceivedMessageTs": 1703693125396 - } - }, - { - "value": { - "deviceKey": "Yv8Lmx8CfXr43oNX1Z37gf0GiCLG6nqEC/5jgzQP42g", - "sessionId": "Q/pY+HPsJez4cnLTHyzmB4J/yUjeAcLUGT8cgPG4w9Q", - "session": "4u1QY6Nl6SnapO367wSEK/qOXbg6dMVMtjKX4bGUqNJMM+EOG8nMrcSJkRNrUzxIS0xtVWxLCd7p1qpjwHTIPmVLIMbMNOBsX5GSXECklVR5ItWQ74dgAd2wgPoUwTVVx4SGQJ7YQh8GBIW/AfX+g09RTLBPB6QBmkPeTHOMtIXNlrWwsVO8ES4H69qIVmJjK2LolQbnPJBcFFj1GUo6xez3TrA7c2MJuFPkPgb4F7HDA+lXw2WlEzTbfMyh/VpxUTDMBlYbUmkTHhm2toPXpHMYDthX6k61Q9AiKjiw+drKLzeC5RNL2w", - "lastReceivedMessageTs": 1703693125394 - } - }, - { - "value": { - "deviceKey": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", - "sessionId": "yPADrq9Ykd9oR60uYubmWUIjhjm/dGikYeM6y1UrMvw", - "session": "qG76i5GUIDLan8wYlFqwTuNjRlKkor7FK1tCP7wyk4qYEn7wcM7n7IlNCXDW94tS2v41zBGQAaJI/rABwUi+o+XkQGfajQU7Rgt/fW7+cEHELyyZXUT9JFF4zWtsuKBik/DoGL1fgLOeQFhQaKQgJzZC9VjALtoYXD/v6qJaGjRmTQmm4ZL+m/bUixFNMBHTqtKtTMUhDX8Z+tBTW8C8Q0U9xFxzHRMAVJ+VsoEOQ3lKWuXymP0bgrvJVI7+ogky5oQbV1Qcavgz/PH1qEDYtAbzdnDZHFFAAEORfC9qlgW7b8LCvNnX4w", - "lastReceivedMessageTs": 1703693125326 - } - }, - { - "value": { - "deviceKey": "b8g1RzK+ilI8h7N2amMpbWZfJj3OW6Jzxo3xojCTsVE", - "sessionId": "QMxkK4rHSiflv+qv3QTXQTX8L3FAD9v5hLlFQrNEuVM", - "session": "e8lzvmrajeWqzDl9sff+moONb8amnen5boz4vu73rmTOTMeVu+UcSylAbke8qJ+npcG2BXiBmZ5etrnM1owaq3KapMaSqNaPHCLPWQaUk+ax0H2rf0i0OO9Ph6YVqu4HX0PlPyzaJlOHzd2gyTu3pNjDuGaa25JJO6CZ1a+dv+doBxF3TAfEtbdjJz1ch7kpQtOvdVoMTiIoSHxQURwEOiyZ8LfUdrBRxGs9/6LQji/RNaeGL6GQMUevQnzrVSkOCt6yJTxcgqEnF059YBF7N3rFcqOrVfe2zMZelepwKYOPa5pTgkMGhA", - "lastReceivedMessageTs": 1703693125399 - } - }, - { - "value": { - "deviceKey": "dl4ygF4NbLpDkVOZZBGYz1Bwj7JHk7GVatDT7qavo0s", - "sessionId": "JyX98mlARYKgZXtVV9wOGk+8N8okvON1l80gUICnrsk", - "session": "YaZm5VUqyURFUlTSWfUTVB85ldx1IXR+/xIXraa6PIgGeUsR2JM0HAn1hBlQYmjngmDG1sfwLIoj400cKyy5MxDbuglkpev8I/mv7XfOekGQyAbxfBYBP5iCto7jv2clYFPPStH8jKal5S1tZ8bDNYVAqjMHE2M8jDiIIpe/wp0KaVvhWHfxttofRiU8E2cPTIrhhd2VkXD57TJr6beiKJvKOhKLBkajFgu3n3fYixO4sJEazoo35YBaIOU/PuNxKDMAigQSi5wg6avefI44tBvzsBYwrsfaOv8bIXhIR67UV94N4yZgaQ", - "lastReceivedMessageTs": 1703721420811 - } - }, - { - "value": { - "deviceKey": "eMBHGCpDlTlosCIb0g/BZf/WzXjIlQQO+NuWgjTOh3I", - "sessionId": "zJrY7kkDe4TCZwhSmtViMznU+FAeX3gw9Q8q+mgBn3U", - "session": "cXt8EVLU0N9XaI465c0RUShI2HPdrE2ehleXuGKySSkXc3IMqPZ/UFw+ow7/eCfb/C9yzywI4NtO4ovtfcqn1m9M12dJnqRLNCVcXKu6ys7gXomDkVwa0OhS7Bb283AL9wiu8nLvozS0tT3s/alodel1jsaPo2Y1Uj1xlKkrCoGCQcTQfMLVJo65ljQvi9XdwP5P7eBQq9wl/DMHj1bx9NEfZe0nZDxp1a1fay2Z1cd5sSqmSoqxhxfYNnn/hrwx3R9GAaTlWpJkIxElq+noH/RI8HcLoUSrQyaxc9IGuyyATVZNZMEVng", - "lastReceivedMessageTs": 1703693124894 - } - }, - { - "value": { - "deviceKey": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", - "sessionId": "BuZ5wSD6NZQ4SLmATeQnaoX+Xv5MrtYwk4PyZPK4Sz4", - "session": "JTLjo+nSakUIjLphO2LNUHGCynDDMS/Jj5O9uKKsOOIfojmQRLIDoXIhhQDknykqw7SEOUxJFMvHI0oqS3F/Xo6XokJELoClgirfNuTZt+mEGBPT18iwFkkqGxSJJ1KaDu5G42FxQz3cxfutXz5xYSK+eEqjnIum2LbvP2GZOQChCAxEdzD8Z3E0ePXr24DmRIu4VuuiRVgcsI+J3WuWWZHXAOtA9/q2aXKwPfeAZk3TTuwV0lqyjC8AMH67BDR/saPtQZ3hEsmq/3MjdFB/XVPz07xVLznLi/quE0cfcmWNlQr5rwCsVK4mCxgeIjMw6haiIn6wq23OscKDgrWN7JpDU9wbirzYELj3b2QQPtPIqtihhhpKDimMxJP8mLm2XlFcWoJSoUtxYVe0TmnbACOzMqaaAkFuMr7Y+76QOf45kyZN9xwKLItVfFpWiDj5Xf9MuYHiI+4KZl6otyFbUOZxU1rf//2V", - "lastReceivedMessageTs": 1703693124916 - } - }, - { - "value": { - "deviceKey": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", - "sessionId": "NaTVUfCYiUtxfgcQQAIx21rmjwFmrql+owAN2WwLuQU", - "session": "vg663UTIFCSjdF8z/hEc3rc14B4ZLVhsBtbVDAkCBoTCtYQoOmexWC+qbwBhrplzJtloP+95YYdkUdEtyZabArJKXlLFCiVZbV+QTX8++ys2twfkBi8B/d8namnArqEO3cYAIiDqtrdmy1uV5JQ8LS978oValmYH4e4JJI5W0s6Jg+obdO+zwsU4koTo2POmS28j87y862QLg3bf9kZhcaAv98u6zHB0EBvTaprJc/i7S1bFoz432zWjRUI865gPAizF551kyq92WrTiJunPXKBqLuo781eC9MM9uQq6eVHZG9/foKi/LA", - "lastReceivedMessageTs": 1703693125378 - } - }, - { - "value": { - "deviceKey": "r5ri9JjKE7uoPUgs6aCRbiiQ7uzyyV6Eeo7P8FIMGQs", - "sessionId": "45sB+Cc2TGGzKB7KJZUQqmrWsutj/DukMPpSe6xGFsg", - "session": "Y4J/bb9WQ469U54dhxQau/ph4wiHJF4dwLcUQ9TML040RAaevcGoS5z9DwmH5hVSNvVZBeOGD/ifVTkyvuN0BHRRV2+CcVh259bJN8EYP+vxQWECB1oRD6vhPpcjpPTGRTrt15Pc4gZxdXbH1gaJCcOhPP7xxjqdSxX01xcmjXDZVpcivWhkTm26YMmc7Ee/hAMcHxvd5Sf6UEBGrXMf2u3zkoudVIqXTHRl7iAyKW948Aej1rbxkZ/eQvxVttaa6TgEjq0NG8FmceSC43b02So5QiS1qv80P+g4G5shb5AXQYOvrhfcqA", - "lastReceivedMessageTs": 1703693125404 - } - }, - { - "value": { - "deviceKey": "s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", - "sessionId": "uHTg/GQH/qTy9YYmzEcoC8qGYsTxfQX+59m0cDsFQ6w", - "session": "ijeVVh4vyto5hXXPNcqwSQqh2+Oq9QBeSOTnncAji2nAAix/ihbky/iXw8Mjnm1mFKeWz53lP9gwDVKnZsGbzxcjsaZ0b8J4BaKpMLoJb/kEFA1KkNHng+MtLkgCpDerD7YpsNvan6nramTbvUSCNtdJlu0/hjOC0d3mGDpiVuSs5les9n5xyUhdy7cV8zZbVwCUaGZtgcj79QuIIpHfUsPXN/1TVcddBl9C2p8Srd7Y6bqz7HIZowdISaDDLqUsm1Wm1rx3cpq/3fKcY6EWiQlCTr+IYapogOb5jBX6dw5viGIOZff4wA", - "lastReceivedMessageTs": 1703693125383 - } - }, - { - "value": { - "deviceKey": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "sessionId": "E3dAmLgD3/dDPTDMtPBWcDsCmExbHb/h3pZW5B7NsT4", - "session": "glL6OFN3Q7F3KlWO+klzoKEN0bWUVIIjrUaTJ3UwHQFku7MmDIeJGYP9yfoKotiukm6QhmXqrqmlc+PVH+oNP5zEMi/z796wDO4m2HXV2ZHHZhSdEaSQYld2tFhvlT/EwovX6lhdGzn9kz+CXzHjlUOwQ9e1XovzbnZK4PiJbYw39eXpaeCUU3TqxFaQO7h56a3F3Hz1urg/Qib5k39+Gtaj2IUH4MWqt800I9tknLUNRw0qLVJbi+mWcq0YTwSk0NSetF5A1bgNuja5tOY8JPdhvfkb5l+Udfb/91VtTjRUEfihzbkgLw", - "lastReceivedMessageTs": 1703693125395 - } - }, - { - "value": { - "deviceKey": "u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", - "sessionId": "TDlQcXGlcW3FCTLqy3dASIa5cvaRw/UmfwacOLhGlzc", - "session": "dTwoIn4dzD1hPfqaMr0qefkkgOcWPsTgqF9b0J6uhE8Z1kepRg6UUh4F9Fg8MCRLo24L1oWlHfvhzzBBzNfwht9AAxg1EJ6gQ9OsTQ4VomrJvJ8dweZ3CLuFW210N/sSIHG2p3HuQsKeiP2atIAGkFowqsYu89xHSr/tJt9RWCfhbRLblg0FB2f9e8UbWGfQnsDjRBbZCfQbxyW6XoMpyDAU8Vz0wy6b1CmGB/BqMUCPE4fCeY3lihv5A3vxXpn4266EE2DWZdQHWfEbX3HsFEssq3NbIFZMA6M/cNwkSSwRnBz2ZL6At19um91X96/16IS4FXqZPod7UXyf9upR3rCmjPcCj3WfNzrt7Gj7yAz2XMFcuvULfaPKo9Hy0YHG9BjWb5UwO1HF9zVNdG3nJVRLroP1UjjgD5yfCT8ZVjjFag0XhGSucg", - "lastReceivedMessageTs": 1703693124909 - } - }, - { - "value": { - "deviceKey": "wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", - "sessionId": "GhzvTFQyN34zU8XN2vcoPKvwiM5Z4oCE29iv2PrMHSY", - "session": "a56nzF50cLL+OhFxTAkgU1vEpZDibOIMawxq7Jop54H+q/q/6AdpnGKPrO4aRDu3qTZilCF5dg3UGKjFp+2zXb+brrU6jNwlpfy5bnW1CC11JOHHqP1Wm/57GWHTDIeVUjcSifQHCIvcp21btOGRiszHprR0SsnkUfAJHHbM0sduZR3eCx89ilFtK/rWxPVm+w3H+Sl/o1wKnxoHmQkcr6JAXML8FdYp3Uk4O2oY8JkrVBnn7mwKNXJ/0KzKrWGXibHOwVnkFgAT3nowTkP+oo7t6DsPgt/3wtDmhD/qQANCJaZ0M2HCBA", - "lastReceivedMessageTs": 1703693125381 - } - }, - { - "value": { - "deviceKey": "xw5fcGw+fsi0KmCNa43551+z0a2+1w6L9tbVwOkWui8", - "sessionId": "ZPQfyO51o8BJ8DBhNtJnoDZXTX5yCrt+Z0GizCRyYcY", - "session": "uOrohIpjvUKa2BWD10hsU2PT48j29XMP+AUNDXw/Lw3wmtYUEZxxZ0b8r1LBUaYud5WleKPYyUpiFrsxEs1RYQgVuLd3MtzsCsQyj+obx6x3YNvMsMavHMeegqGTWO4/dNa8XUFzh2QpMb6MyMN9y8DT2q4dL/GGPiWtueXJj9Q+GvcX9j1MYfBfgODQeJyJ+XsFy2JoMZ1crOOpWQvD5ekHS4t+u1NeRl8aZgOG0+QmYGxxp/NB3AxJNfKkhlj47Gh8omBfArGfI5eF8V33pzW0H0MvehZ2MoiHX/Huw1S29+J3YEe/PQ", - "lastReceivedMessageTs": 1703693124896 - } - }, - { - "value": { - "deviceKey": "yUwl8YCTPL7kEb58FQRAVf19I2wAVt2o2Ftg/VOG2m4", - "sessionId": "VSSLTgca5TYSxpTUoMLHx5GKdt2joiy4WbKlFbfa2j0", - "session": "X9nICG2kPYydWRUs9fpnMW93R6SSu5DpoOIn3NElxHAJUptQjFKz3suvhVrL4OyNDgCj7UxC76RRpCqeJtNUIaYPArTAhVqXhE0D+lHn7O7YfNzqzCPVeLFRMPre/zqG5PnA04cLMzaFlyD4IMIMYhA+LZKQi+dWl4h4oBfxxgQ8uQefXpvakKMq0Wx0IyzXVv4eBDG9wH1dRzPAOZgubquG8lMpCBkZmf5175mAi407nteWMt4mhzcQDEe1HgLaYXS3dC29VyJQPxR47b38r3qf5Sfiv/SVYCXM52Fg9PE6PfYBGx0zdw", - "lastReceivedMessageTs": 1703693124903 - } - } - ], - "sessions_needing_backup": [], - "shared_history_inbound_group_sessions": [ - { - "value": { - "roomId": "!CWLUCoEWXSFyTCOtfL:matrix.org", - "sessions": [ - [ - "yUwl8YCTPL7kEb58FQRAVf19I2wAVt2o2Ftg/VOG2m4", - "hF5Lv4Ag15/+PDvRa8DKRucRM0I06kWZ0zOlUjqs2KE" - ], - [ - "u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", - "uYucqRCzvkptky+GdqPRqPFQq8tVvOQhYQ7hpgvcLuw" - ], - [ - "31cIbE9brvZuCKXcCItx55JU+Fva+Bq0ezSIrCFkGgQ", - "cMdqJC0pehitCVEE0j+MXV9RU9WWi5cM728bdBM/Q4U" - ], - [ - "ICXPtcBcycUazdhM0BM7VmcbInN9Te7dashv8id5nVI", - "KR+RdxNLI7QqSX9xANiaoOVe7KTHvCKS6mWOCk/FMPs" - ], - [ - "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", - "WQyMCNTIFO9X3gmbTYTsjGwDzTAcLtFQqdv2t0nZTgU" - ], - [ - "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", - "KKY/ByTbXoGeSXZaIEbrYbT/5BTdza02i1zy5ToYA2w" - ], - [ - "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", - "hRI86U6AAtInzovrA/icjFkvMVxR4j5K9W26twB20MY" - ], - [ - "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "kg61q8b9FXWVCkKNlloGydzX0z4UukiiaitMw87guok" - ], - [ - "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "l6KvDCrknpGY2cZNOxoiA7u6xRBHdf7TfctasaNObnU" - ], - [ - "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "fUZiYlANfUexd5sJ/2W2H4Ki6H6B5uC9qu4nhBtcvdM" - ], - [ - "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "SRZvhQMLmQ7Ol0GnEZZZeFxxwnBh4xdKTgnKU7P8X1E" - ], - [ - "eMBHGCpDlTlosCIb0g/BZf/WzXjIlQQO+NuWgjTOh3I", - "mZQxzXwBl7854eWnPYZe3C3j581XCVMvO6RmFDx51Go" - ], - [ - "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", - "sxbBTS0E4jlv6V7S//BDFBIZJE5sRod9l6/hHhZO++w" - ], - [ - "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "QcQ+0QZiq0HlllazlEudzMEF/Cl2aBlIGpqgiLm0CiA" - ], - [ - "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", - "dr5vZIuTMSrzA8jvfoQo6RQaQtNj2x509f63KFVyySs" - ], - [ - "ICXPtcBcycUazdhM0BM7VmcbInN9Te7dashv8id5nVI", - "FaUOxIUhj9BLw7GgJxAShVnKxS6/V7kmty1APIhKPrw" - ], - [ - "s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", - "ep3My5F8VWivPx1eA+MGfBXeRFq2Ryw1BnaXPBm8ln0" - ], - [ - "s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", - "XOYD9nN6eEuh6rwBLHJGhlKr3j8GZPUSVr0Roo3eFXI" - ], - [ - "wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", - "Lg1i5AEOuyY5tY8OLvn2HMCUOBM9W/NNjftpw5Sw7g4" - ], - [ - "wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", - "rs1GlF3Mb5BGdo2ptP+tP9rOZNuHxmFQt077CUsUaHk" - ], - [ - "+XWeVnwsM53WJKyc9YlK1DthttT9KgQAvUG/zmr0WRE", - "q9pR1wJGS4UlelrAZhNXUcTlS5Qwgnf9ZQRYlAIJehc" - ], - [ - "P+hMAaz3lio3uS4rv/7TfA+DPUVgxzkwoEz9Z9Ojzj4", - "8krOIN5Yj3SN4uy4FiPL0dq9uJrixFCE1jbLN+a5Fyg" - ], - [ - "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", - "mQhAC0sVS/Wm/VMfHhmJH5N74KGDfJpLevVg9SHf/zY" - ], - [ - "dl4ygF4NbLpDkVOZZBGYz1Bwj7JHk7GVatDT7qavo0s", - "cUgvJ6wHzqRHL0+ze6UlWZDG6XkP45ZCXEoiXTua+NU" - ], - [ - "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", - "L4SCwTtAwCYbhH7nwaj6q5DhToqDuP3LIe04Wx4YBi0" - ] - ] - } - }, - { - "value": { - "roomId": "!NvODNaNaQbJWulVEDV:matrix.org", - "sessions": [ - [ - "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", - "i0UHnfpJA9YyYFPPreQGINIt+f+aFf9fTFQhx/yVvTY" - ] - ] - } - }, - { - "value": { - "roomId": "!WXNLpHIsCohXpXsbUk:matrix.org", - "sessions": [ - [ - "K6pUAb6OgssyGzLqYcZQlskIxdwNTZu0xkb1lp2ysQA", - "TqxaEJSIHu/GJsL9cdPomIYZkzrO3UqO/e0H/N9b3Q8" - ], - [ - "63T7anu0SxzQJRFnvmHXuQuSW63plQdt00phE4lT5HM", - "cR2Mi5hcIiaH+XIANBknJq4dgBbSaopTyeduoJMMkSY" - ] - ] - } - }, - { - "value": { - "roomId": "!hDqiQUQdicjAXAOEUQ:matrix.org", - "sessions": [ - [ - "X78CTT0Nk8RDlC7snNGfRRkM7wCE5/XkVtqESnpFgEM", - "7KdhG9y04GM33WunByggRkCAzv8UwEI85pFMPqthpK8" - ], - [ - "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", - "vw58QEIQwoWyJvCtBuCmPI0edHqulndrxnv1gNhOvCY" - ], - [ - "RhqbMrR2qmjyDPGh42dsZCenEHZXQdGjeHZXO8kHc1E", - "VrlN7nfo7xi/tReWE89ZarEUt04aEeHuZonIP03gyus" - ] - ] - } - }, - { - "value": { - "roomId": "!kOjcnTaPnmhygqFtBD:matrix.org", - "sessions": [ - [ - "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", - "5fUniWedXn7Lfx6C6cF2CNLBHEr0Cfscb85GFz4zBE8" - ] - ] - } - } - ] -} \ No newline at end of file diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/README.md b/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/README.md new file mode 100644 index 00000000000..bd2593457a2 --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/README.md @@ -0,0 +1,4 @@ +## Dump of a libolm indexeddb cryptostore to test migration of a full account + +A dump of an account containing a complete set of data to migrate. +The data set is substantial enough to allow for testing of chunking mechanisms and progress reporting during the migration process. diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/dump.json b/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/dump.json new file mode 100644 index 00000000000..0cb6f94bb4e --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/dump.json @@ -0,0 +1,71038 @@ +{ + "account": [ + { + "value": "YzQqTsZZbgf9ih9oGIhkaJ86OqwI08XAEgWxmcXCY/m4A8xNeYXyL7AbXMr8OS28vjgu+fnL0lknwtZvgADLMikOzWykLqimk0VxvckV3hm29fWg4UrbnF7K9hoVIXznkGZfK79sZo9JyRvBGZLCng9ZV29zgGr2OSnANjQ6L87S00mytA2O2TBoy/1Dt3FEkySqE1VKzoQB7M+UJbdaJNiuNtZTSWqvFyTUx3WZMDqdrsXtBoEq3CBFTxfkTrSmLi45Xmvsu/G4YrlE4hjhxJA2KfbuY+60+scWgri2hmf4SHynZFB5/0yWaQCs9ZUZvq3CHtX/GpTSJoSHDWJXzc4Ds0vXgJXhsNDB2m1tm+gF8elWCi64BXYriRmNRgOX/Qbxeffvd6T7ogZZGXtL5zkDicUsGPOt1973Y9PkKMI1ch9sGChxtGqpMx8YnkMJJsI1Ix0z6ZYN1yc1BIkyNn1qSvU7PvzhWjbCSojAX18KXN9kO3cNnhNg0A4mUuDf09BsjmcUMXL5B6InfKLHPFchtF5s9cD1gEi4OqrYor6IFp2bgV+5HAI40go1KOMawy78GJj7TgConULYFuKQNMYRArbrhPo3RSk9djzicQI2J/CA6ztIGDDTU9kCxa23N+m+gDJABWn3UlDjV2lhM2+I8W6m3kXJTJDn7y9BMqhrit5s2TVoXxa+YhpUofCC0t9SC0TdpMoFPjqkQ3uvPdIuusvydbS/mMI801fQ+N0hcG5QSAPm0h6QiIWWP0q1PqAWHvQwXktkhHeiM3+DlITkRQ6pRxNDp5hHzTBIYkC86ll12vHRMx7jvRVDttL08K0byDIi/eamSkm1j/2I7s3irJjhnw+Z6X2IixJSoEzFT1mUjN2NL2Pha6oABpelUWu9ZkeSW+InMwzO7gloDGqcI4sm84Ye+XZqxzG5KRbo/hl6zEarlJ6d0qMGs9HzUhsaNcIy18glppe5JXObPFR437ruqte5wEWNYzxqk/DdgtYckWUlBCuct2dzw2p+l7xoO8Ah1Wn4cCY66l/7eglWnM/qtOHWChIZutH+GiYQjiAT9QswDwnZ/r/WFLFeVeLork558URMTStanNY2WhsEOh+2wY+s89p9iIsIhhrM/UmVF/BMBYZ5B5L/MceWxoF+I92b9A2n/pE9iBWQPk+iyb11PWSA4PTWE/htKcTxcWqL/KGgfOIm21OYqXTKPnuWlQcyeL2stqlFNdAs3RaezdHFb6kglQBCuUwTqOKVE5ysV1i9hjbstFffx33lyYb1OyrfDKTFjwoWaUB2uAqc7IKR/d9hyGwE0Rrq0E9vhy9KjWPfBsKsZMjJri+vIAEeDQmG1kf7Nfu7jDfhGDWwrBNwrB3IVRW9/bydOsME9T2a8/u40+o1vEcWMsKL3oqNQCnWFBGeevmdD+laC7wIqJPwXM9CGoVyk2skVyunkwGt2spyUT7CGGdkbDuVCEp3LEY0Ll+LwlaPQBcLthYulEcPGMhE1cGDwgz8nhJb+k36LJ1DsihijL8YEblEBhNKESmzIQv/kWE6577ZuLk8ynRkPpKc+iazvpYODOywsCiLpxKcDVc1zMTq/Uox/oRMAG0TXMaD4Na+lnXHA6ZPyvtU6kH0/ou/mGNiZu9rdsPd2WHNkikHz/bdzGCji+LkJgCuyS/wJJcT1T0EzreygRUsaZ7JaOMKAwP1KTgLJO+GsWTL1K4bFc8sxILVrKT9t7cFIh+ihg72zq6Gx12arJYp/H/A+BDsc5ZIlZkG5oal8+f+AyQ34vT+R1sAl2PE5qA1Tq/MbNkRPp1cY9phm7KIfdKmfg4i0WEsnK3vjic0VaGlrqE02Obzx+SVWjCa8Q47H8n5Zro3LjsPWliuXuDCEhvvDoDJMc5CouEjXqER5dpStf98V9q/+yj2t5qfuXfPS+0e8LARDSsLNge+cU/3I/tx5wnEO//SwlHti688rNp8/MIVvfKaVRLA+FXB0fJkydlK3gdEywNpUrOca7yR593auD3+o+GOsn6hXbgds0JDrFNcKukST5XpUCJI3A5Zj+NXv9cJR54u4sMSHiGVFyZkIXD0iTXluhnUQjTocRNgzuhOLi7YRF/1WMtnJlzn8vAMJmX2VS4+Mt6SAeDkLKMhAV0VyR1zx7U3iSIEuBz1UL+qcWfdwXJ5vvDINWrCMh0Tr7lPD/EDbEO7I3bgCL0zEWBXCq6VMP4Zb/l0MJBgqIqzzw/FyEUJNSLwpmj3k8DvPkXjO6O2b2TeRg8Tqqq7indhAViFBKFCuUjAxlpex3dtwlsQN6oyx+Pqa0GpLjgptlo2gI3Qy9cBg9JYZQH1oJ6J/OLX65Ni79cclBaLDrSfS3zdz2kXKrR+mWaMsFvR9Wh50p5k0it1UUEgA2XRLJGl1pdels7h/jfncAQHui8DPwZqCgee7DTj1g3l97x7mTg8GoTY+A+p/xlDpB4hcnQa2qpaW4DUgYlyIXw9DuHCGj4z5aRx4dZsDqIZPQAFKAWy1j5lS/ykibnTEpnOQypy1Idz6u2f0URRVwqlgjUHzWNoxAInf1J2mgbPtaIxfv6e9OLrJzfZYtCKkAJSclqbLNfG6G/07LeKkW7LkkXRjFw6b4yqrrZJlE8htTCWieHm+Jx3QhOQvNDYxD4bfBRKOot0MrovMvuMsk/yRnbkySsXWhdlIrifNPPq5z5wXXPjnVtUzySnoZiT9fl9Awxe3vhBkP1sgH1VH47Op7f02W12bK9Lhik0NmMNoIDHb0Q2kz6SuqENj8sw2t+UO23zbJn/gBNSy3gIfVgGW/1offiGUmkF07BCmzDUsLduJFOXVPJltv5ZNXC+1JD2z9OYF6z+Nf7V061zbQSs/t07uMyo3+dVmrCPQF+8M6PDy/h/uvVOsei8Go8CKJwXrfog2DxU0BSkQQHE0kSQ8+qocCuggeqnJ5AXVHpmC+Xj0cNXCxw+uHExISfzRNqkvfo3bcptv0ovYaPmLoiRCJY3mL5U8DRhlUl6SMgTv3DMlB3UwKCIx7HHePmEEOSPhw8tTfzaHOBGJ5L/C+kKD1DN38o2V+ZBZSK+O59A4u5GLMgamMtQt9e+x8HqeSJY4P/+Ot7AoTlWVepAhY4khHPHwpSxo5Mi8F4RRJfF7gxXlg4EWuk89tNQdN7F4CJTNEY7vm8W4zMDBYdcqEBte4ptCxd2xe9Ik+I1VhJiE0D7lZBza8cjb+4TDu/36dgozwXJ3bZmpp04Du/FAwsiqmQ2C7eFboo9xS/MZ2cdVlbioRfUaxu9BzZnZEA0G9J6JYj+nlabcXdGMHE6BG2E7pY7pmahF3GvR7vff2sRJWQmJk9KyDNzBh/XhdUGy255fwMa56ji9qyxhGONo9+A2unjxUcrgC2HsXuKrPUWQaPGt5swHnj8c7n75YepWnCX4e+Tza8+8Lu92ONRMog4I6Nb4gBDheLCz+OTSe/AyM9FqsKGW1Z1bOsEPaMAjF63GIrofHgObyzb883Gq+4n7lf8eXUEaF/C5rhRJwox9vBPoWQko7idd1hQJ+qC75xlUEK/IY9r6sRUSmgPcRtee9aO+BJK3sUeOLnPn5atTmACsDwrkFbxgwjrPAKwdHbp7GH9YiwKjx4ATV8NTQ3P7GHRWZyOx/4hedrSBUjNl0zYJ3DIiG8MB1/NGIz3mz0YRW9s7Zobh13meBULvPKZyyC4iRe5zSc5eL/mJnKumKUZir9K6wHGsh6hOout0ZBVMp4ACHTf07E2uv0pviq8Fg2bo3GWysdpFOWyPGK3QCD26EpHpX66IK+7PqDe83fu/YmKnktbgwtcxWtmSLiv+qrLVMruQKIAhC5nNup2ACBVfT7MLZDkTX4FE7WhkfzwMXm940MOkblW/BaNizWXncdiJipOg2v9eQG8/7k7wDg0w+H0EwdGpvADY2GB7knuJ6IZZQLAQpXZCEajJrWQoOMIGoUqbkng8J5wJUzhoutt8qWPpZvWbjqVpcCiCHf7l/dKcbP7vATvi0ZeaksDX7b7RpAgL95DihdaNoa2KC9gQksHSijMuH7S0VSFzirolfDEaXrDJK6Zxms/v4dFuYMVI+0BaqB20FYbo/fB9pN114HTALGJYE4/SoJInWiS1Hdp0v7RqtJNV9p7c8R2kPgrDqFYjtfIgC2Fvz9s/+jo6yZSPMigCLAOXTeJlwkp5GqS7H9i4TN+0WT9jsB+f0MXv3XbX6fYtGUrbEfYcmUJcPY4aTHcdw1rMskKPAOdR0zCH6lygTbyRmzZf7U0lcoKwF0bX8GtN6q2hTWuZwTGOYhINeP/IFSYpylDB0L2DNX75B3tv2FaDRGxZX36Tya789KNukRILqWRGNltv6nJmP4CFQVjN7TWQvluUE+YHVPZTl7y7CMM89GRBisAV6oq+i1w6I47yHLzfTBaJx6W5o07hudd9LypFPT9iOqkuOVbd3oUbfLQ9pRiDdUuIq8F4Mh56pqMxea1IRQJlmNNThGjEXQh3aECLUXy3uirEYyFLr1ZwUXUlsA0HZ1W6Y1CHRkUgYzGcN442QYmNgqZpAF9Q1EPPFClj5J+ie9rp3FMCyVP3CwT0CKAgb/ktKFFDOhqDKByb+mMQbvX6eDafJPkVWzuAZ2rEr8lUQwbtArRQB+b2tALNWW/wqjKk1HFnu59yfdmV2YfmyK+LKlbFlzWWuXpjCdolOeW2zi7Ig5w9vh/gYhlDoqe1UNotg/ewye6y+TtStnEqy+wKqALkxNxRSvOaM+ZYB10Uycdst0vm4LmalH3id9x/5MgzohiqcKK3HUAo+uzn0qN2hXkME4AyGyb5n+Dswn67vEm4//K03f2/uuNJJKiitPjnM5Y9vLfUTGQJtwf/HuyLZLwqjqXcnqn+vExdUJQf7tWTyXdOUYA3c9VupRXxr0Fzv51iiE1IBvwuPzXPoKhSxlsHM3gBGbppv+HBXPM+wm2B/IgL3wtAcm+qh9p62BkU99eCeXd1NZ3UYMjxqQu9kM+c44YUAes+GcACf73etN9DgDUtqmXVRKWg43vcPa+gZtH6mKR/dfIZS7b8whnB+vC1ubj2vXAFCyFH4VIbhf7+QqKvX6YyuLU7dQh3Va1eNFLkdPRznsGNbBC44IjFeIvA8XzofbmrIxY+Txu1TSQHTHY8oj7x2N3F4OulNJ4d8rx1Ve+z98uOTVCHrLFfTMrwg80XAiJx6UxTAVd63DJUFfAZ1+SAfyWfzKX67Ln3vNEPSTzTh3JvYxCJwf5FEWaU7E4xEDWGmLROBtVvvnmfz3OiC+VTEEPCcbIOGq/6627c9FouifKcvCKTQWrfO1Ex0KnqYwWCEb1LRXSs0JmHZrHkupuQ1k4tnkXgw0yKIkWQ6YfdFVw7H5O5lDPIAsbe2YWwzo4Wx65D5cM98ryGUOUqMsvxYbSNMvZEoIhO7Mm/o8zf1+m596uI0yVamLvq2UkdNsNLz0DCBU77UgPR/1SPquIwKwETw6urwKdHiQXXqW0Z7g8h+LKQQ4CjgWN5gSCC7PW1ycD3uvUrNkDvYopu1ozVza6SGYk3r5kyYnBPBDhcEKT4SYylysSz+m35bmTYzgJ7w/R8rb32JcqtjWNOn/GyDUpVySOmeO1OSvdoMb7ilbXqm7/gnKL/TH9ulSyBZeO7Dm3I+cSohO9mPlfAR8kqoXW2e3tyqQoBgA87b8KBSDy1tbcyWbeXjWBLzyTOxH312llFPTgXVUYX5XHbRQXwtLwNYwTwjqpGtAy5ty8SN/YzTzF/sb9ynuBXwJHfNgMMtDsNyaxlUAnGMe8BsyUjnV+LkCK3zzvCBALYKahAwJULZjqushImRtz/bkoWyJNvgiPgp5gOXbIaBsTK8xTblOZxG7ZxnxzkOljLt+Cl3d4qWs3+3ZcEgNyQcUK8Q2omkmRgT1GAw6qrfWOsbxlVthQZ+XTLv1zlcz/kb7Jcz55USiUJeRoA5s", + "key": "-" + }, + { + "value": { + "master": { + "user_id": "@vdhtest200713:matrix.org", + "usage": ["master"], + "keys": { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI" + }, + "signatures": { + "@vdhtest200713:matrix.org": { + "ed25519:MWOGVUTXZN": "stOu1aHbhsWB/Aj5M/HqBR83QzME+682C995Uc8JxSmmyrlWmgG8QrnoUDG2OFR1t6zNQ+QLEilU4WNEOV73DQ" + } + } + }, + "self_signing": { + "user_id": "@vdhtest200713:matrix.org", + "usage": ["self_signing"], + "keys": { + "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": "lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k" + }, + "signatures": { + "@vdhtest200713:matrix.org": { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "HKTC7NoBhAkfJtmemmkn/HvCCgBQViWZ0uH7aGPRaWMDFgD8T7Q+y1j3FKZv4mhSopR85Fq3FRyXsG8OVvGeBA" + } + } + }, + "user_signing": { + "user_id": "@vdhtest200713:matrix.org", + "usage": ["user_signing"], + "keys": { + "ed25519:YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8": "YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8" + }, + "signatures": { + "@vdhtest200713:matrix.org": { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "u8VOi4IaeRJwDgy2ftK02NJQPdBijy8f/0+WnHGG72yfOvMthwWzEw8SrRSNG8glBNrfHinKwCyJJzAJwyepCQ" + } + } + } + }, + "key": "crossSigningKeys" + }, + { + "value": { + "iv": "Ix3XDdAq1O0APJEv2dqM+A==", + "ciphertext": "69xWWKeZOf10wjBmFqK8/QBOe0lQ4p/ZBSssg6HRZp6hkN0aIKCOG1CzJpo=", + "mac": "K1Vg43wCF/aHlHxgPEA24e76PTOdPVHdtX8VCIgsOOc=" + }, + "key": "ssss_cache:m.megolm_backup.v1" + }, + { + "value": { + "iv": "EPH4n1t4vxhAyQNUswqhYQ==", + "ciphertext": "et5PuSlJmhS33/47zWfpillGIz9IsPtN6par0OQmeLDDdMN5pk4mI/2RlOo=", + "mac": "0mUh6v+BwSjXBc2tQW0EXK9sdG9B3aAHe/ejdrc0WmU=" + }, + "key": "ssss_cache:master" + }, + { + "value": { + "iv": "+sllp+3ICStKK/stl2h0Zg==", + "ciphertext": "k4j6scjtWtAM7O40nWcR/XzBDMV79sKQ71V9Ekwk56cN3Rttyjq6k199QSE=", + "mac": "+f+odGQCsiA+0qVjuSPdsLgLiPzDy6aEO88VOhTSeMc=" + }, + "key": "ssss_cache:self_signing" + }, + { + "value": { + "iv": "f33xnM/E04xmTXJW/CArFA==", + "ciphertext": "VOwHoadpnq6MfxH6QLSrcMTA87GWH8apULKWodhqU2EjrEPB4KHyBM0Urs0=", + "mac": "LGCzvJvF8ZfppvDVjzEfWL4Urfi0b4a4+PrdgJyJG4o=" + }, + "key": "ssss_cache:user_signing" + } + ], + "device_data": [ + { + "value": { + "devices": { + "@vdhtest200713:matrix.org": { + "KMFSTJSMLB": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:KMFSTJSMLB": "LKv0bKbc0EC4h0jknbemv3QalEkeYvuNeUXVRgVVTTU", + "ed25519:KMFSTJSMLB": "qK70DEqIXq7T+UU3v/al47Ab4JkMEBLpNrTBMbS5rrw" + }, + "verified": 1, + "known": true, + "unsigned": { + "device_display_name": "app.element.io: Firefox on Linux" + }, + "signatures": { + "@vdhtest200713:matrix.org": { + "ed25519:KMFSTJSMLB": "aE+PdxLAdwQ/xfJwLmqebvt/lrT97fZas2SQFFrM+dPmHxQtjyS8csm88BLfGRjJKK1B/vWev3AaKqQZwLTUAw", + "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": "lCd4SA/JT1nnxsgN9yQaLJQhH5hkLMVVx6ba5JAjL1wpWVqyPxzMJHImX6vTztk6S8rybcdfYkea5W/Ii+4HCQ" + } + } + } + }, + "@richvdh:sw1v.org": { + "EOZDSWJVGZ": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:EOZDSWJVGZ": "a1S+xfPfFBbrCteVaIDMtsIfU7bpzS7s/lLYFMIR3R4", + "ed25519:EOZDSWJVGZ": "ALUi8/AXqzob9EnRZQhY+o+dRIhyBTDsBvPcEAFocZY" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:EOZDSWJVGZ": "g3qebgITI2DgrIIjhw3I0oqDVEKZfBIyrELVCTP6k7jEt+n/sTp5JDB1kGnXnBoTaDXiM+Wun1re1gQtcyXCDw", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "VZnsWQNe7fGMs+VmcTR0H5j+EC4MhDoF3hTa+wRVDBP6jyYa2tEEVHv+TEGi1T9YF1KC2s7LNR8buBhTYRp4Ag" + } + } + }, + "HKJDOCYFVC": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:HKJDOCYFVC": "63T7anu0SxzQJRFnvmHXuQuSW63plQdt00phE4lT5HM", + "ed25519:HKJDOCYFVC": "fWPPk81MUp3kofc5SR+yEg8c99XXt49pQH+iSefcbJ0" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:HKJDOCYFVC": "e0ihV63QUZASHlhlQGdOpzmpl7J8YGpyzShbFaW/1QIDcFMB+BAB6lBfQG8y2wm/OTYTD5h1I86LBGOn5rlLCQ", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "x8eaYJl5U9lOII0G6WRfcvuzxBN0Gfld5aBTjKdw0FYIqj8GXQxGwYtSwOvHf53qHMi9KTKsUPy5lpHRiK8zDA" + } + } + }, + "HSTVHNERPD": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:HSTVHNERPD": "cEclEvdd10LF2nGoGk/cLca3JF/xOLAdOI9JwPnIymo", + "ed25519:HSTVHNERPD": "voqnZuAvbvspPMNsKBpsuir6X50ZLIe+n0mVIABaSIc" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:HSTVHNERPD": "J0olfuCA5HU5mdhAuzGE82OfQPw6+8vVP0UusNcYYmxA0LfglbKTsUibeg2fkZ2GqteE67lvtas/jZLp84QeAA", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "dcZD4ednHsFT5U2KY8Eqi87PoSWAlgYlfw4C2MKwyF/JVn/osxS0sVfJ/Ic515yyNptkJUwg8ncDpwC4bJBmCw" + } + } + }, + "ZGCLWKIWBA": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:ZGCLWKIWBA": "OTxw0aeaAVJpVZEfQsP7e4W8Bm8NDbAHvqWaPSiLlGM", + "ed25519:ZGCLWKIWBA": "Q01BBDzr0n99CBtdTbXFs6f7oMQyY9TM6zGenzSu4ZA" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:ZGCLWKIWBA": "XdGYAGCR23aL+MBCAbRCndtr3wzk0FybzAq3Lv0ij5lVC8FQ+uAjEpk2PK0eK07EPZkcF/al/wp5Gb3mJOjNBg", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "sYggSZ7JCRafecX8zjik2CVmYSn6o2EyYER7+fos+kc5nKmVDsehas+b27Lp2POEB6Fm8u52R/nd+k8xMmNJCg" + } + } + }, + "JAVDMNZYHJ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:JAVDMNZYHJ": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "ed25519:JAVDMNZYHJ": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:JAVDMNZYHJ": "9/eqxKLW6805L2AxynXpb1wAyoKUZB41Ta627YgT4E50wRKS/cJhGCpZlVbJDpzo3CBia77WDZe+nvkcBVOZDQ", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "8jVzaScenLBCrx+vklOWqRDsVBMbOUDfBXgIQXmFK5ho4iUwSjN/BtqOFHi8TctYHXoC3tKMhbU8TEwzWDkOAA" + } + } + }, + "JXLNGINONL": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:JXLNGINONL": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", + "ed25519:JXLNGINONL": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:JXLNGINONL": "1Ni2rxiCPIqdGcKWltvKXxBrONGBSAN3RQ9NEslmY0aGUYrda7yBi8QYlHYKlOnf3LO89dv3GMpYXuwaDkTsDg", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "OzqDMQxGp3e/ZEOura/ZPM1Nm8fNokLkYSGgQ8VeL8Q6i3KeO2xETptA92r1nJifqJlF4d2f2RvFsklDn6xqAA" + } + } + }, + "MEDYIJGLJH": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:MEDYIJGLJH": "kOqO+nKK696yoFusqIupLPLCcQismoui0Kwp2BeO2VE", + "ed25519:MEDYIJGLJH": "ipHrYNhYeOfPzKnhTWLG3QFlwe3JvQwZZQHfOPEwGHc" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:MEDYIJGLJH": "3uJGFIIqUUmHMSWIhhT60kKbZDFpDevhU9WCqN0KcjIlexyf2uZ4cFFhpP0neaTA1EUIRGYF8s91q6X5NViVDw", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "CNC9aEaHTyJTb99A3DYdH7W8ldNgNQ4bRYf6YxPJ6OqwROfl1RPW311U95KaR1Ev5Z1QGFzc2Nxg5eMu0zuGAQ" + } + } + }, + "NNJKPTXZQE": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:NNJKPTXZQE": "esTA6k1rTbinwz26SkeepaP3ew2sVr0YlvUALNdB4RI", + "ed25519:NNJKPTXZQE": "SbsHgQBWBZjJH8BP9QDU91yfhkQlsubxFt/FCctgrEI" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:NNJKPTXZQE": "UqMAJOnJN8kLKZ52Ic2OfHuN6cb87L+hJcppKNFL7j5kWAr9m4QRDVZran3hSnmUeRZEN6jGVwMKBdechK82Cw", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "ncJIvsvE6vNVtSEzp/1wdZpPo13uGeYQ+iv0ty9hEuQ73hLQCKBtBxJcag63RHH0lXFlT3UAglVy3KWk17omBQ" + } + } + }, + "SBXXDQMSKE": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:SBXXDQMSKE": "2GFw3YEwtKsm+5YNyqJpNnlScmgj1B2LYfLlTLhua3s", + "ed25519:SBXXDQMSKE": "KhjSd9W2zyMXigq3rItkudQBzJoUvBvwwYFZJFX+4YY" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:SBXXDQMSKE": "H46XIQjL8o8t/OPumZkKYv+QBq4QaNa9J8odEXVZU/DiZfFo/eK7m2AYversySI2NYz0zIcFg/DbZl+I9qA5Cw", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "Ru49Yrw3WKxmrcZ3RbgNIaq2zmc6R+5nRFFRtp7XDlbA96elpjjh7U8gWXYH4mZTDb/UlskaZkWluZcmkZB/Dw" + } + } + }, + "SRWBXKXIBH": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:SRWBXKXIBH": "SMi31Hip6j9FNLPdwvUWdfUYV271wkiOXhPJJdTu1Cc", + "ed25519:SRWBXKXIBH": "ZI6E3CHgJ4aKrVURICaF3TsEQeavbTXxRHnd+wsAGfY" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:SRWBXKXIBH": "ux0NsvHtUehQPHq6wFikXXVPTlppIQwhzQNWFe6U4+fwuEXEgR//R79Ph5fVT+ZuT0OpQy5NwPdFTxxfWfQPBg", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "O775OO/Uh813BmrYUOeOvjEE6IvjGDI2DuALzmTVobXzmzNHeaaEIRP0ZYb8B+50T1mb5vGLvuXyoTt+JcRNDg" + } + } + }, + "UHORXRUAQH": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:UHORXRUAQH": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "ed25519:UHORXRUAQH": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:UHORXRUAQH": "/mMxIifj4lAC376SP+xja2kdmm6tKnIn8eANqV2PGkYFNbJWtcSS8sqRN+BZZALmy38y79AqtIlBM/lWHqIiDA", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "r9WWevjG18SY/A6SGbqyFR/bZ7PCw9AvIzMw0Ns/BpdBLUcFmm16higRS2EeURUHlNdMqTH9org/JnZ2cY/zBg" + } + } + }, + "ZOIGEATOIP": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:ZOIGEATOIP": "xw5fcGw+fsi0KmCNa43551+z0a2+1w6L9tbVwOkWui8", + "ed25519:ZOIGEATOIP": "01QCfmIo7tw4N2EFguQ/1y0UlPAXrBeKsYI0+N2nLWc" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:ZOIGEATOIP": "fMYS8b05UGXa+dByy97PzJ2ML35AQjPkHMqzFDwbTIt/kRY8mvnlSfhuOLpNHGmW+9wJUyTiBy2sO1T0exBwAw", + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "kf1WY42PfkjLuf5PBrTvImkU1ZoG9X7OX3joKqu5nlKfDbyWxHWS353vhbzeH7H7rhm+kUzm3IYqftx4rTruBA" + } + } + } + }, + "@kurt:roeckx.be": { + "HBTICASNWZ": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:HBTICASNWZ": "SKC+PqwhwJ/B73L5FzPw88VYBgBK3dFlEE7YDYvwyVE", + "ed25519:HBTICASNWZ": "6Q3ORIk5Q6t7caIXb055SsTtInRcV1IzWiOs1DPcMfk" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@kurt:roeckx.be": { + "ed25519:HBTICASNWZ": "Z3k2dFBPrbgY7ADkxHUr6z5MkMAEgBPJexLwL6oDNK7kbZ3B4DxEr4OChVkbtV1PVTMqjAaPAXiu9vf920SECg", + "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "cVGK6oZ2OKDfn0hJ2Eo77lKOv9Um6OOuLfYZ68iLN+agDzvk8zHbmV51lTB6JOzfwVapRke8sk603aM7TW/JCQ" + } + } + }, + "JLMHRLSSDZ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:JLMHRLSSDZ": "31cIbE9brvZuCKXcCItx55JU+Fva+Bq0ezSIrCFkGgQ", + "ed25519:JLMHRLSSDZ": "Ctmg3Gdrew+Az3RqmZ8t+IQoJ+eBIZI3QT30MeRUM2E" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@kurt:roeckx.be": { + "ed25519:JLMHRLSSDZ": "wN8f2z1etfqrc837+B+aTGcEbQgxJiaHWSOO3pDO24aYQWFEE4k/1prJbaV2kUvNFXsi8FZY3GkxYS1Hw1AvDg", + "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "z0PJpHDdKvrp94UtJYtyxgXe8rdYI0Hc0m+gjfTA29/zaVAVQCvY2Za4g8OSJeuDDB5INxdkBe572OPiOetyBA" + } + } + }, + "LUBZRYLJHP": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:LUBZRYLJHP": "yUwl8YCTPL7kEb58FQRAVf19I2wAVt2o2Ftg/VOG2m4", + "ed25519:LUBZRYLJHP": "ESSIjAwQ56hakZSsE6m/NZaQMZaWCvyzaIGP6koAz2c" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@kurt:roeckx.be": { + "ed25519:LUBZRYLJHP": "ApTLHserwZdXE1neGipMP13RRPJKf8rpLyqWxePAbbnRPFdO5n8r7J/lIxttctdxAkD5V7c04Y3yecJniW/YAw", + "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "eQthoQ6XzPY6ZxTswuCJArutssWllfUoZsEy8c0UE1wz7WBBUtG7wzcHAw33kNaZnT1DHS0rIMKtE4MU5/cHBg" + } + } + }, + "NFHJBQMYZZ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:NFHJBQMYZZ": "aiBpIJ72fpeX+WSGcvCnw1HEy9TIzCKzBg0NO3EDrTI", + "ed25519:NFHJBQMYZZ": "YbHpC5YeG6eiBY1p1W9DHfKZgC3U7jxKqnsbSgkvukk" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@kurt:roeckx.be": { + "ed25519:NFHJBQMYZZ": "JjcSm7jgC8MLGZbtTrPh6SnaKf+zyUJSFwqeeVMq+jtw4jTgQ/UOwG4sSX4c20DBT0i4QunlrYsujK09eOrKBA", + "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "UBETq8ou+hZx+Ua2YosP4jR0M4RKTlh2HeBvNcaPooiKtDjrwdvC1f6AIUiCrOqZuJVG841yCIGmUpMJ7gYDDA" + } + } + }, + "PIYMYYVJDV": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:PIYMYYVJDV": "u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", + "ed25519:PIYMYYVJDV": "qGVxOT77mWwNVaAaigqCJcsm8OmGQn6yjgF9MtpZPIE" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@kurt:roeckx.be": { + "ed25519:PIYMYYVJDV": "rzxBVmEC72ifRWrHk2mfA6IwxZgRAZZ2fFhItwlpbC8sy7Pbqpf7N7WZt2i1Ajo2VvgjBclHzwO1UHNf55scAg", + "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "e3TItoMON048PFPWfhxKiKH/uNq66gPEtt45FVL1RcQJiXrJzHRtF4p+nXDYw60ixyVWIDzFiY6jPsnjq5QqBg" + } + } + }, + "UJLGHZHMQF": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:UJLGHZHMQF": "Q7HO59/5Dybtc4UnRDXPTuwmNq4RG4V3zQzgMja8OEA", + "ed25519:UJLGHZHMQF": "qRFmsnrnW+JeeN/HaTbSJiZQJeo/p4KzCjy192g0eVs" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@kurt:roeckx.be": { + "ed25519:UJLGHZHMQF": "XVBte90QuLcuzlVqLtDOol6i7vxoeipikjAMsO1BIG8M83MIlwzT4vD3kCFgfAfe7BQYfEWTm4EX1lgZx6l3Cw", + "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "nedV+9gxGRnAcgvNw6dILpjczAx2IVZ6LiDAEtgkg1Zp20sMrXrHTjTHuA7OsiNoCURQiH3v41X9R8VUHIY6DQ" + } + } + }, + "YBCADHSHKU": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:YBCADHSHKU": "Hw+JwDi9Y3Th4XYEsZpMzjZC/RphOIahFUfovkZwoxI", + "ed25519:YBCADHSHKU": "kMPjHs2rsAPUEP2lBHeIY18rZfiV5+2q4mN2D/bFHFY" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@kurt:roeckx.be": { + "ed25519:YBCADHSHKU": "Ys0y3q4r2bc9VlOzhFEitFx0KgvmgDBZK7oBk3zez9u3xZLHS5lqu04Clt/wHYexjZRYV6whSXiz83oDIg4wCA", + "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "Ls3V/azCz5XIkQR9Aip7MUWrrx4qS3WwrTQUJKOfSjnboVgTc/wQ0veYdyDZHYloIkPxLQ2tXNCjeXmHyrA2Cw" + } + } + } + }, + "@grin:grin.hu": { + "FQVUFXKDDS": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:FQVUFXKDDS": "i/6zN+24Z8NE9l6Dt+3i/if5b3qLkxHR7df+VBfqcjk", + "ed25519:FQVUFXKDDS": "csd+adMV6C8HMhI8CW521s0pGnVgzE4fxRbiyVN/JDg" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@grin:grin.hu": { + "ed25519:FQVUFXKDDS": "PpUXupVbs17muD67veqOJyOadOq8vfvmKPPGFzlzJF62U/RfwjqXZwWVhW+a6v2OuJgScnXcuyXdewdFph8QDg", + "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "AHK3iLgkYY5ZCPY6o+5fC38Defoz944cCrGj+Lp0X7GifMKrtAL0NYIBuIMNN9NfDM/gcAxtbo9GAJmVVrgtCg" + } + } + }, + "GLQTEMWDOS": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:GLQTEMWDOS": "hTNj4wZVPbfGW/IiK/uZEm19LcbdTDADDkK1THCHAAc", + "ed25519:GLQTEMWDOS": "M7JTE5JfX2n/ec4Es8eA0gTTyv9yZzfW8zBYA2djmLc" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@grin:grin.hu": { + "ed25519:GLQTEMWDOS": "yYEb1eIPs1EWFZb/g0HeneXM/hYNHFqXeBk7ti4L/Pe8B7mDc4Q53wxbjOFkluw3QHbY5OFayabR9t0p03dEAA", + "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "8Q4v++FwfguYHSMkg1NsNpBTyJY6FH4zmN9z+e+z/UfQBhVa5veovZtGOepNwHraKBKDDtv26Ot7VBXwv7TeCA" + } + } + }, + "MGRMVIODGX": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:MGRMVIODGX": "bNSDqNZpKz/8PJ1mIJ0vycmcdv06HcS+nVVkE+JbZQY", + "ed25519:MGRMVIODGX": "IgwRH4lkJDuitcPotjr5bzJHTPU7ArvHv64Clvk1RUg" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@grin:grin.hu": { + "ed25519:MGRMVIODGX": "ZQYcAjZ4KffqmpjVtlwFrkIKL0BbNIl5BcwjusNjSWxsOOUwq7Qfowsry3MVhW2TvHj8oXgyxdmlXomecbm8CA", + "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "1T2xMWOz6qVkdYAo3eRnJRww9Gotq4wZxMcX7yPS2h2egvIV1ZtZiFEGp53lm7VPTgmcSTMVZFdxwDh6QgbCCA" + } + } + }, + "VAHPFTQLFI": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:VAHPFTQLFI": "XdMAC6x1bTWAoonh/rxlE5hxtNGQA9nffqBjc6CA6xo", + "ed25519:VAHPFTQLFI": "g2mVdgA2oF+6aiVGfARJVfRz9k0MBk7NEljM4Y5GSQk" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@grin:grin.hu": { + "ed25519:VAHPFTQLFI": "RaBdv9YjwTsF0p4+8NKU7bYFXpjo6UrsNWZfunifL9BX72Z8qbth19CNeBmG+yPyvNnULJreR2wyiBHn8aYCBA", + "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "h8FL6V5jn/7OjKK56oh6dqjSgQ/z1OVqbDHV0+MuIoNPGe3XdJt9iKiuOvsMLmmDF3/o2oT/NolTkJp292bBAg" + } + } + }, + "WJITQMODKQ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:WJITQMODKQ": "O9cLpLqDVe2kdgEY13aPcpEq98bfP7yrTK8scdE/+VM", + "ed25519:WJITQMODKQ": "0GijFTGrgCJRczVyuj+rHZVr2YT34ujg/ES3CThVzJU" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@grin:grin.hu": { + "ed25519:WJITQMODKQ": "IyofXUPxsEG3WL0J0sLUNj2kEW3YlnCx2ttiESWeyf1dWWIO99WM2NrYvyB/kZDX9bYgU4r5XXaYpH7D7E5LBg", + "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "+hD99HY4t+fZWM52ftFi/HtRDdoUuZ78QY93Y8z/oNYrD3uFWWlqWNrx1ahBwJL9ByxDgaa9DDO5D6zzhIA6DA" + } + } + }, + "ZTGTHRMTKE": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:ZTGTHRMTKE": "Dtw6xVfnsttwQNuuQqg0Rd9h2zHaChwTCXdKDJlT7DU", + "ed25519:ZTGTHRMTKE": "16HfSvPaoO90mggKF1nE7EaxQgNHKoRMv/Rphkgcm+8" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@grin:grin.hu": { + "ed25519:ZTGTHRMTKE": "3QL/NJnyJw5346DYUdym5i3TNO2kczmd7V/bb1EP5vrTVaB1inzVsASPp8f3gF2jARewbksi+YDgKUwU71VuBg", + "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "F9+UXRrw4OfkSEX+dk52kCC2timBjXPYsCL4M486cEPxcR8P6sighWairT/OIZS87qDezkJqWLKbrXE8T88dAg" + } + } + }, + "ZXKIUGCHXT": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:ZXKIUGCHXT": "HFE/YY8dUWPlXO8oqcpmDpE/MZqOjgt1juLqLwIjCV8", + "ed25519:ZXKIUGCHXT": "EPHcm4PzAZZTPeLfP8HtGm75QMDG7ZSJCk30nPJJmWs" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@grin:grin.hu": { + "ed25519:ZXKIUGCHXT": "oOE7kD7mXbBhaWHSG+FoHndRB/38W9ewqRxrsw6msM+AD22E3AmJa+T5jdJ6sVGQZecUTe4UPpdnCmrGCZf0Ag", + "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "/xagEwoZfJZw0tU0lC7Vxv9nPnS8mTNIft7ND9n8hLioODuvuhyDN01KUNzbMITw9mJZFdIkq26PjDpz+8bFDw" + } + } + } + }, + "@vdhtest220101:matrix.org": { + "DJMGUYPXBK": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:DJMGUYPXBK": "ECgp0f5GsDLuIxasAAUmi26pdVISMMGLdUcEXF14LzQ", + "ed25519:DJMGUYPXBK": "9Gi19lQ07x5a8sQZgWtcuKzcSbB//wP/4As121dhPYw" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "localhost:8080: Firefox on Linux" + }, + "signatures": { + "@vdhtest220101:matrix.org": { + "ed25519:DJMGUYPXBK": "bp5Xu6TqJ+c4Fb6aNMABVgEwnmynQ62YSNklI1QFm10GnJdJsH0TDx1pwMYiMfm143UnnjSprmPAzS1iEkxiAg" + } + } + }, + "NNIAEHUCUQ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:NNIAEHUCUQ": "RhqbMrR2qmjyDPGh42dsZCenEHZXQdGjeHZXO8kHc1E", + "ed25519:NNIAEHUCUQ": "Oh2/2fIdVloUUV3gYMP1RdXziWuqXuvK+5ZaoeCb2pQ" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "pr11752--matrix-react-sdk.netlify.app: Firefox on Linux" + }, + "signatures": { + "@vdhtest220101:matrix.org": { + "ed25519:NNIAEHUCUQ": "Qspk8xMW/INlNdF3ldTeYtAdWwimT20fZJ+NXLjTzciMOzNCv8MBbGS+QEaGTs1QBLjgHM5r3iXlNxTW1VvCAg" + } + } + }, + "WDQVYFDXXH": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:WDQVYFDXXH": "rcKrhE/eYja+xeDVyFeZNCHIUZKZxAHx7nDbGGnhGCM", + "ed25519:WDQVYFDXXH": "jJ/E1YpTdFlM/Eg4LtjSeHxQL73o5klPyMZfVPK744Y" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Android" + }, + "signatures": { + "@vdhtest220101:matrix.org": { + "ed25519:WDQVYFDXXH": "gT9C7oExi5lHHNFzvN3qx9huaP1ZIUGsUY8a0sJmnZUmQYA42YGECJUhyC7zdgtYeXfz7up0+k6SM1p7VSXlDw", + "ed25519:9h9S5ytahsFQpB+HrRcXSgbKx2qVXUpcDSezvGGDSCY": "8mV2wAxGvTs9XOoOJmclialDnje6ksM0mBuzvEOBuJVQm3KxXGqgWhEWr/RIhbHhX16DCPrf+vSyvsd695dGCw", + "ed25519:FQXyq0tkvx7MHMwaUPSCdNfxFHRo+Nkv6zII+nw0UMY": "OMGUG1uA6CQp5hNX0LjOmlfxMVPtoM8uZvfa+nyoLH0UchxfGWwnLbyJBc8Ns7ANR3PoCh/DqYwTW27Nxi4gBQ" + } + } + }, + "WGLUNWZYJA": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:WGLUNWZYJA": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "ed25519:WGLUNWZYJA": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "develop.element.io: Firefox on Linux" + }, + "signatures": { + "@vdhtest220101:matrix.org": { + "ed25519:WGLUNWZYJA": "B+NL84FaUixtK2sRgtdsjNaExMkgJhDwqtZ/3kPg1w14F1upNAhI7zCFFQjYAVE6Bco2CZjsdOrMWp9gjxHjAA", + "ed25519:9h9S5ytahsFQpB+HrRcXSgbKx2qVXUpcDSezvGGDSCY": "65gx/I0XqNgtQci++wfQRxbi6RQ+IXv1EZ1v831M2NgOfH9uBaL6qdMUfcC5i/M26FrChM2FPppJM94DNYelDg" + } + } + } + }, + "@bkil:grin.hu": { + "JAFFMRMJLK": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:JAFFMRMJLK": "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", + "ed25519:JAFFMRMJLK": "60YYjbRcIyRTvhEBmcT3i8siOhWoM/KVn1ZXqY2GdqA" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@bkil:grin.hu": { + "ed25519:JAFFMRMJLK": "UoDSd30s/8TTPjIFxZRC0HDRDsKjfJBXKnDashEezd8PB1hRoYAkEWiz/U7eCJKnfRtajoOBZxm1d4Hg6dQTAg", + "ed25519:7rHXNHtnx2nZN4Ht66GlpoHlcHCor4/uunfcp9zh+k8": "jY7M/LQ9hp5uY8BGySXOx6CwFE+2Ub/zkRCt39c2inC6JBYXvewSJigZc2NsAtSGWM1aXnZ/GFdSLf7S+u1/Dw" + } + } + }, + "MQJYCGHWBU": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:MQJYCGHWBU": "61NYXyvpaIegPDzGtBz1U+O6j+ui4xLLBpQuCYyzijQ", + "ed25519:MQJYCGHWBU": "oojLgiBSmG+Fu2tkSjNOFfq8NpFE7I96p3A9so8BzJI" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@bkil:grin.hu": { + "ed25519:MQJYCGHWBU": "TIawlflDiFLrSyuhxQSuN/QZNNU4VbLZhg6oIgPLCOfe1xTtuY45l5lw40U5+MUPhGu6cgjm3Nm9qYgbaHiZAQ" + } + } + }, + "YHXSLMOJGE": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:YHXSLMOJGE": "EjaGBFBdpBEc9Z5Lv03BUjeGJc0mm82JOnWuH/Vy6CQ", + "ed25519:YHXSLMOJGE": "0m6/2GjxZTZzTOxmwnfnpVnuHacUDKD5SdfebBu8S4k" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@bkil:grin.hu": { + "ed25519:YHXSLMOJGE": "xxNxrctdu0e8BhimxaEoSfDVboEXDIYtUQFzPoNxnfHx/xh3K1qK8vXOQZy1WUcvyAWNxOFfzGY3pmZgOT5EAQ" + } + } + } + }, + "@bkil:matrix.org": { + "CKFZOJCFXL": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:CKFZOJCFXL": "PVKmrZhh8EE2Hw1k5OqoVKb48QBBPKWCl76toPdStnI", + "ed25519:CKFZOJCFXL": "qbez61YpS0GC1yEsaiwcylAMECsR0d09oi7rkCIYprc" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "app.element.io: Chrome on Linux" + }, + "signatures": { + "@bkil:matrix.org": { + "ed25519:CKFZOJCFXL": "2OlmkvSj8/iHWbHSFIqxDx+sALY/c5Sz48JeBHBIooRY2PEt3ivvVxy9vwEmKuYvmenWbKOd9S5y4gg+1SRJDQ", + "ed25519:4KSe44PGKzgM0B4tNU37PRMPk/5vWm/wCjZzBFFu/KY": "ck7o5EDp2Cky6U1E+R2tn6W8wX/H8UMKTH3vvAS66gf4MXQXT/AGAD9nkg8+xSzG8ekIo+AWuD1U9TqOKNl2BA" + } + } + }, + "ZVQXYQXRGX": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:ZVQXYQXRGX": "Pog36kjaHKsGaXJP4IRSCOGco1WHId4xBLKUqzVMVi8", + "ed25519:ZVQXYQXRGX": "R4FeYr1jNYn2w64HDnZ6a3FoaHy2Cgl69yi12Xhxi/M" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Hydrogen" + }, + "signatures": { + "@bkil:matrix.org": { + "ed25519:ZVQXYQXRGX": "iurxXpyYI7lNdo4pqBOJgSHvOj3xozCuCU/6VDo4pa0899y1ebFa43I1XEUSxpVdGds9o1R25soQFNYKjz2KCw" + } + } + }, + "NKEBWJAMMJ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:NKEBWJAMMJ": "COhfP7j/5ewEf8ymxSgU5+3zOs1Y0vchnuskjEk5ehw", + "ed25519:NKEBWJAMMJ": "2TsXurAEzrR7yPk9e1Ms4Bga73RWVmPC0WYnxZQoFMw" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Dehydrated device" + }, + "signatures": { + "@bkil:matrix.org": { + "ed25519:NKEBWJAMMJ": "QnJ+/LALkJ+d+nd+YS++yN6jMBTi/k9qIZhxNhI239fgeZxKlX476i5FuEiaNVwiVX6utWPPeHjC+yJD6THYBQ" + } + } + } + }, + "@benoit.marty:matrix.org": { + "FQEUHKYYFX": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:FQEUHKYYFX": "VFOPdJuRNIy2Oo6X00TDvSdAL0GQNSWMXCaqGPogxVA", + "ed25519:FQEUHKYYFX": "0GHkiqZh4XzNFa2E1fCSQ8xNuUfOJuW2kwc5wPM/A4g" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element X Android" + }, + "signatures": { + "@benoit.marty:matrix.org": { + "ed25519:FQEUHKYYFX": "ycjA4pD+LgmBXCc42BRo5+JWSpzTHyuE8lVpmp2E6XCmh1BUhzYbqfFBM47pfggnKRH4mYZC+LT42nd9wnznDw", + "ed25519:C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE": "QCloiZ/bioxQzf0NGxx05GhzTutkUWvFZepYtifJiH6Y1Mi8xAPr0s/JCKXNpQJ39myvyMenlb4ONXl4h6b7Bw" + } + } + }, + "ALWMCXSCUP": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:ALWMCXSCUP": "q7byH74PUhDnNSiEIvka+5dbZ3vdowYCex9TbSyiASs", + "ed25519:ALWMCXSCUP": "kdpo116SEUlCGTk3sB4wJ70RVqtC7q7DsagU4HBU5g0" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Android" + }, + "signatures": { + "@benoit.marty:matrix.org": { + "ed25519:ALWMCXSCUP": "qW0ZvPr4mpcKPy3pwrMEaxt44nT+Afz9vf/+TyPfGJXp33azwKCKh06Bm6ZcEIGVMUjJp/lAsjoJjZQpk+G+DQ", + "ed25519:C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE": "sdPiGvepaDkwgbFcwZfnXUSesco5eKWM8IKGk2yiwmU8InC2Vk39gkGOrSa6ROlOcgcczl0g412RT/04+PJCDA" + } + } + }, + "KEKRFBLWLR": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:KEKRFBLWLR": "eMBHGCpDlTlosCIb0g/BZf/WzXjIlQQO+NuWgjTOh3I", + "ed25519:KEKRFBLWLR": "Pgyz8RHB+PClySPXtgIFROZK/1+ZL3vp6QiftewWuFQ" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "develop.element.io M1" + }, + "signatures": { + "@benoit.marty:matrix.org": { + "ed25519:KEKRFBLWLR": "AB1Ekxpv4B8+A3O153qUMAK+bTxSWAE89fBLztptS2K7n/Uv0Uox4iEbSwsvcSrG3sBTrEThB7RYUl0rTy/2Cw", + "ed25519:C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE": "avz3Qys3GyiP8KUY6mz7yeHQ2ku/iQJlCOrOTLJdaTzktITaro50cSmqm3FyErO0UokKrdDOvALli1Pp/JJSDg" + } + } + }, + "YJWPEFEPUK": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:YJWPEFEPUK": "YMLzH002QTAUvHZ8VTr4oZfpOkaZaIY1Sj5Z+BHAxHQ", + "ed25519:YJWPEFEPUK": "oEfhGrAKNAD9lqr6sjdRNLE4Va7aC4MJR6wzUsqMotU" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element X Android" + }, + "signatures": { + "@benoit.marty:matrix.org": { + "ed25519:YJWPEFEPUK": "yyxDOXvgWFmvuTmCoQM4bTfCYSiDK5hiEIXH4IyHs6N6YPyE7eRog903w34ARfR9XtWvUqXoLhorEZ8a+86kAQ", + "ed25519:C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE": "FfviD24NOE3AST6pkdIAyNHEHwtC2SoPvTiQoSBn4f6qj2DUfkmsXizAvR8ZVHwv5/Z2iVI9scQocFZaL0yyCg" + } + } + } + }, + "@hubert:uhoreg.ca": { + "EJNFAJXXAM": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:EJNFAJXXAM": "lmQleELp0WeEe4O0/miXwC8Gl6kFeqC+MZeSrzEMABQ", + "ed25519:EJNFAJXXAM": "zhTy7UXE2qJcScBy86CAJ0sltzhJ0dIoJ0IGDNvCMP4" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@hubert:uhoreg.ca": { + "ed25519:EJNFAJXXAM": "/4qmJzt/C93riCrO0a0K4kF2fnSjOtpoPVyfsVWNhkkLh4czVFgDd8kOiBr5hco9+w1qwJ8Hq33DbTEyrYq/Aw", + "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "aC4sRJe3FXZOAxzdLvWROOJW3f+B3h1muUoYpV4vKUgwkB6YBN83T73osGXf2XOwp0UpuMqyMnvwIM6bvsFxCA" + } + } + }, + "EVOZJYSYVJ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:EVOZJYSYVJ": "WAkJI6B+oYDZmhCOdiQAH2xUOJZFesDuNskPRt+ZHnY", + "ed25519:EVOZJYSYVJ": "tA5l8PGDGXz2I63BKd5KikXpGttLc7jTkHFm2RjDMvg" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@hubert:uhoreg.ca": { + "ed25519:EVOZJYSYVJ": "uvNkd/ZB5ewviUJF7nU++XCDs60EruBYBChVbies2PlCAzI03D59N+mPlJRhATMBuFUMIgkmUodiJyNmUPe8AQ", + "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "aUWqaXIfcoDGrM8rbcLJri4L3a7l4TMI3yzxm6mFlXu7duZWefVrugptvXDiUHaNGxu0We3goPj5kgv16PGMBw" + } + } + }, + "HCSVJWOCYC": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:HCSVJWOCYC": "k3UGaAV6/mkV/kCbFU3zNJtq3GpnHi0VezqW5UH1WTU", + "ed25519:HCSVJWOCYC": "5aTGH4yLMV6ykHfcFoqPqYNzTHbzzeHJzMN23gS0mOg" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@hubert:uhoreg.ca": { + "ed25519:HCSVJWOCYC": "p5KhydhPJikB9OMOTchzvDpncdVTPEmWlEyNgXWFWRLA0jw0RE8VdVS41AIbFQrJxgl9LA9//MULT2BKmkbCAw", + "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "xAdmbR4TemvJXsL9DNthWP7THRkG6RsmCT6Gx+j+D6J1f58VOpO2OO6n+WPWgruHfp1H/ZS8P2hP2Bske4mPAg" + } + } + }, + "KQWTWCJCOX": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:KQWTWCJCOX": "EB9SC4jVAydKhM6/GcwMc9biKwVNywqW3TerNTrtb1M", + "ed25519:KQWTWCJCOX": "1NXa5GyJ+p2ruAClEque+TL1VktrBzMW4dZFNfNGrvc" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@hubert:uhoreg.ca": { + "ed25519:KQWTWCJCOX": "r+8nw5EBQvjfDNt/XC/MmAookb3AwtcKqBxCg8OEmTOvm2jB847UuAfpmk0zKCfS22aGajfk5Mzvg2vQnbK6Bw", + "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "kO7UTQaZjLygXJDc+uU3wKgAxwA0pwBc517eZC8JUiQgeY+rPwZHRuzLF+ECakfyVrztOrSv2PKIZvUMf5djBw" + } + } + }, + "SNDUAPQZYS": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:SNDUAPQZYS": "kxIrDQg4rEN9OuoqKk+3xaq4HQ+3pwUy+qck48dF/08", + "ed25519:SNDUAPQZYS": "ox7tCJDstNWJ1t7T7gMcSTf1qAVRVoF+Bfd/xB7k9T4" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@hubert:uhoreg.ca": { + "ed25519:SNDUAPQZYS": "+4uO6e4Hf9PTr1krnP9er9XGn+D1MmrgHT9Hr2IjHn8h32cIl9jEkhwm7sQlRtViC8CcndomWgIZfbE5L2fjAA", + "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "T4vHqSogLOpNjA/3M6FCrIu7PXWn7jIjRSJqcipwijjwxsbViVuaMKigIp7dMHAPe2Ggpg5KKlYn36FPnH/vBg" + } + } + }, + "UDNVLTIHWF": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:UDNVLTIHWF": "0SqHzEVQBVmp04MW3Mk6xXERCR9simqbtAd3CBC/2Xg", + "ed25519:UDNVLTIHWF": "5HRIBP3OcKMGePzFyeWv/YUVpvlxmY8YouVb5SgM+9g" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@hubert:uhoreg.ca": { + "ed25519:UDNVLTIHWF": "qFDv1qaW7VnMNLBc2LZ03Z+XR97UaxzsDIXtDVYlbO47txxLkM+I4F0fZp0QL2HjHHqS/VA9SSl2ZlETWYi6DA", + "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "rmMnU7o2UVdtEC/2xNK8DYs0VyOV2AwGJQfEOYbNPJeM4BMV9uagGUlR6LBmmJ221IJFsECnS81tdhEJyhWOBQ" + } + } + }, + "ZHPDFCWGSS": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:ZHPDFCWGSS": "J3jQIxmbVFwHocJlPHQa+9EegouWDtl6MJRS2N3aQD0", + "ed25519:ZHPDFCWGSS": "Cl2xsAFKXLDEHnGFbIfxIRki3LtBTQC8xsvSxqs8pw8" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@hubert:uhoreg.ca": { + "ed25519:ZHPDFCWGSS": "vMme2fPjCCVQc0mE1LbYHSW8SKRy6BCc25z/jKKbLSwx3rJYZELRqVhUtyivVmJDHXNDzB+gotK3wyYAig07Dg", + "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "m/4ZrcxZO27r8zVuPsBZ66z6tJbN9JEDA+vEt0VxqbmbX4fjNOTNR0xpM+I8FjWYj85OWWL0O3CHy6WPOGwWBw" + } + } + } + }, + "@eg:envs.net": { + "WAFVWHVFMS": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:WAFVWHVFMS": "RnTPosIPlQLfJ/LtCkt0hzgJPmJlgAGSwK5mUnaz3zI", + "ed25519:WAFVWHVFMS": "f7R8spUylHLlF+yLvm/KX0ATC5jb8X6hG7Q9GX+GyV4" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@eg:envs.net": { + "ed25519:WAFVWHVFMS": "vjR4hfPdBqbm4XxOyWw+C/sYq3fPfA1B1NAyI3tIuYZVsS5ySz8isQ7h98tWZiSjfou1JUsWVotjo3M0ZCxIBQ", + "ed25519:J2GzPDvJnFEMfKkjqnpYRrm72XIgjTJujIYYCnxqtns": "nq5a7lVJm2NuDQDORSxYltvNeHrK6Xnm352s4b1W6dzDHsjqL1MTUpinEr/sRrYbzK9k34tKvFcKZC9oy6UtAw" + } + } + } + }, + "@jassu:kumma.juttu.asia": { + "Lw3PcHxH": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:Lw3PcHxH": "A5O9GLU6kkgTEbo/f3WRj8wdblR5BlwZmXlAVWMCcks", + "ed25519:Lw3PcHxH": "0gPSIRLkaE/w5RSy0I4oVugQ6MFxM9TertMQkDY2zSs" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@jassu:kumma.juttu.asia": { + "ed25519:Lw3PcHxH": "BrIK+OL6p9Zx8T0bnoU+m88wMjrlTSPc6eUD99nvKl8a5T3iS19i6vbZx4C/b87yooqIPgV4OWeT72yKGYAqDw" + } + } + }, + "MYbvL2Mv": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:MYbvL2Mv": "q9vwRlZFqIG527ORBDbIrcgrwkW7MV17Mp6x8HItvgo", + "ed25519:MYbvL2Mv": "0kpDq2lbSN7dWZU+WXPkLnqXxAwvNL4AVG/uHNU8FHk" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@jassu:kumma.juttu.asia": { + "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "uuW8g6VMmYCXXcC6zV8jBwjNW6xc5c98WDDD3GEaWhK7l8SvTuKM32IpmFjvhAIIMdsyDedko/KvfXVdpByWDA", + "ed25519:MYbvL2Mv": "g24Cj6AkTtF+VEFN5LMhzveSiav2jPKldu/ditLBhpzZe4h/PTVgiCSKymS1aeTFtTO6w707mtMQv9JLFEuFAA" + } + } + }, + "Thk9IqBO": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:Thk9IqBO": "2u3BFm4eTG1uZXQwzTBYlzCaMuonXShktYlklbtUDmw", + "ed25519:Thk9IqBO": "L3Ui4y1MfdP7UPCl/iK5qtOAOVTUvV0w6H7dxlx0CD4" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@jassu:kumma.juttu.asia": { + "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "JIfrgXfsrADyhIG3fUiJWCO24a9B2m/zO9GKPjKQMU6vsqHN/Gricylz708YQC3/b4jt6g3txbOvuzRGfDFoBQ", + "ed25519:Thk9IqBO": "BA+NDHIU/8mwtIk8liyDh1Jl6gSya6mPTyuhF7B1KqA3LkoWdRuPu5zw3JUO8+TaGY6K5N7AvwrYPDo7nXlsBg" + } + } + }, + "_4ZHVs2g": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:_4ZHVs2g": "76YwqK0pg4oc9XnCnyVeHV9YVJ6GmQNHwWoGWb/4Uxk", + "ed25519:_4ZHVs2g": "36ijsZ1h5220MO3mcK5s8j1g+6iUawqhEu15z+fflb4" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@jassu:kumma.juttu.asia": { + "ed25519:_4ZHVs2g": "hZpeL5vtdMj9ypYYiYxArMDQ8vBo+1H4+SLBdmBxog71hMVzt93C/mIt9Pvh8eIDPr+LK8aS3UCV4hNgFXDyBw" + } + } + }, + "bpJI-TYy": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:bpJI-TYy": "Jrobm5FEU/EFiLr7s5Px0PJx5N75NzPzBXwN9oCU+kA", + "ed25519:bpJI-TYy": "BcBV1C5e3HTxqviCKiGsEstD9kWr5bzga7tDkRfDiSg" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@jassu:kumma.juttu.asia": { + "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "Yd2VcV9QJYvp/VaDkTyhQXM7jiO1YE4oRGpnUAoV7+qbRHrYUhxDNTDehmkigjlqMPCtIKnHn1aXfuZXl/RdDw", + "ed25519:bpJI-TYy": "QIcWb1BqFnTokCN5ownN4Zj8wog3VyiENEqetN8f4qENvgDmglHrZ2jR2A8Myo76jPDbGI1JsGRNg8LVucfMAw" + } + } + }, + "eD9QFI4N": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:eD9QFI4N": "/zymlmCuduTj51Y6F9P7rcsxkvfVM1J9qkqFyFODcGo", + "ed25519:eD9QFI4N": "5oGRH7NIMUdL1QMs5oT4o85rE63ggSMvaCkuU0WDWco" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@jassu:kumma.juttu.asia": { + "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "LGlcjzvwz/uB3QuXccK6u/eXr/RGEwGkKaVtNws3GzTRbI/YXTGhJCzre/s7F0C0sZLfowhzAwoACVpTyXtiDw", + "ed25519:eD9QFI4N": "MxFot6ANdmaF04gRWvNtN3LA5HwaPO/rsz3yTTl7P4F43sLqWHz9qBOcrkfhV0jr5yVdRbFbJtl9C/EzIUszDQ" + } + } + }, + "fbRToZsQ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:fbRToZsQ": "z2vQRWxNzR0f1D5skXhU8yRAN/qQu68hr2ILa9SBM3U", + "ed25519:fbRToZsQ": "qK6e/xFs6qtJDrFjLWCK54z4+pS1CnzEh3mfm8kez6Y" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@jassu:kumma.juttu.asia": { + "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "NBD6GVWVstuKggnhcntiGfX+aqvMg/go1b6VX0ip/HaHsPnWMmDYYSQX7eH58aJj4uT+AgpvXRm7RpMdHbBiCQ", + "ed25519:fbRToZsQ": "W2t0K2e2eh9ZqG7LTCiFfwmrb3SLyj0y3C721z2XlaUKYek/ctaRUs63K5D8sNnJluPs0RggPeik/QvBP8v1AA" + } + } + }, + "hw_pQeMn": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:hw_pQeMn": "Pi9DRxi10cl7wyDpOJ03iYhpDuH828/O8yrYErbPW14", + "ed25519:hw_pQeMn": "oweHPeUqqcnMR5UsMKj2kThmt+cB8861ViMy8pB8oZw" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@jassu:kumma.juttu.asia": { + "ed25519:hw_pQeMn": "bK3+6q0kdixj/Y6KV6dvu6yoRvbNpgwE1X/23aL9nPAXSqWV9Covf67idFtSdxVDbfuY1E6xzg8zAymMW9Z6Dw" + } + } + } + }, + "@JoKe:shareknot.de": { + "BLUJECRXBO": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:BLUJECRXBO": "4o7UZbNLHEb6zYyXSJYuEIxilsaAlhEl07j6yzpTQ3M", + "ed25519:BLUJECRXBO": "f+CQpoUQIoPSep4OvB30vIBB76Dv4KmYgMxzz9MprkM" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@JoKe:shareknot.de": { + "ed25519:BLUJECRXBO": "rIEl0cgraREygjZKnMI7p+oq3w0N1iPKmM1RFdWd+/Fh1oTDjpukwtMX1Wst8GO42o2tfq53+8nikmL3cSGiCA", + "ed25519:KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY": "7ffSasHeaJJOgsOUWKH7r+8BYinAmSwaCwMQAFBlIG6rQi2vpiKv5eLZOpXleceQVSKtCzPCPCDm8gkQQlXjAA" + } + } + }, + "HZINWDWOZC": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:HZINWDWOZC": "c0q9HafjAHOoN1g1idvowXiQ2LIq6rAYUf7IBN82emg", + "ed25519:HZINWDWOZC": "NVPyaVnBD+Gb1kojwB6ggQqZMM6NGt3ec2LCtBGf2E4" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@JoKe:shareknot.de": { + "ed25519:HZINWDWOZC": "qVFZayc2KLzRinWKnC2+wlkTYFfX9jjhElevwcfgz3uFrfp5ctBfGLOfwyUv6rPEKhJqJ/AcY94WDRoXEGFbDw", + "ed25519:QaOnnd68s1P53KWfSN7l0xrAUeuR/pp4R9WjY/oTDxo": "rCAlddt6Vi+hH8LrhuuVg02gnWxkxpD6d1eh4qMrTa6ROh3phTDRLuNOhT8mrXTMWtxhLl8O0kq2S+dGA8bLCw", + "ed25519:KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY": "OtOsG8rnA7QFpxrUaifqdI9roM1MrRmY3lY1x3op04a4BkToOmZjndlAdZtA3cGPE0VRt0BllxqMDhElg+n+Dg" + } + } + }, + "PVNHPLYEFH": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:PVNHPLYEFH": "a02UIe4Jl+T0iqj1ORs4AIEVkdoyI1HUwgK51ZqX8nY", + "ed25519:PVNHPLYEFH": "9uzcKVyCYyefgTIrMklqvI+m9hYBfzYthCiudosXEb4" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@JoKe:shareknot.de": { + "ed25519:PVNHPLYEFH": "83gA7tHT/fbCkVEGiurkmjVzSeAhNRvwQc4/vKtgirfFzmXR3Yl6aLaywOSmbRWZ/lp3n0naQw/Opqr4LxTiCA", + "ed25519:QaOnnd68s1P53KWfSN7l0xrAUeuR/pp4R9WjY/oTDxo": "5fo8+S6zD9aXzmzjsiDpmqJG4e3hFJdEjo1OqhuPXov7NDUI7xVsFAaZQU8d2hIQqjWziy+lbfJy3wombvB1Cw", + "ed25519:KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY": "+3tRNugbCIuqJ/mykD43BoqxwLVVfmugDpdqX1xBADYSp7dlNZm8MsrhLm4ubCzhcM02AbLpYmIfElFpNgrqBw" + } + } + }, + "RLRURBCDIO": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:RLRURBCDIO": "QQBXOg9vZrdiTBViTbH5KAdZr5+bkz9X5l2btbKDnD8", + "ed25519:RLRURBCDIO": "PmHiHQA84zpkdl4onsJEXEksMakarV5T2jtnuolGncU" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@JoKe:shareknot.de": { + "ed25519:RLRURBCDIO": "LflbOp89kVrxEkhZ2BIGzrj4w9BUgTpM7y+j6rodvcIpcWfZZACgdIX15Lc3aIhioqmZPklEYsdi+41wAqw6BQ", + "ed25519:KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY": "dVUEMsJxR5F7Ru2dYmUgBnBbfGLS0LKoUwZTbSuYpO2+XVY4mAZbbOjLcyh3LAlIgdeEBZwvWpizXJ6fASPmDg" + } + } + } + }, + "@matthew:matrix.org": { + "DLTUSUERIP": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:DLTUSUERIP": "iaPkNDav0ZQlg/B5aKjj0LJOOXbhcjlPswIplp9dB0c", + "ed25519:DLTUSUERIP": "QWX4rctII/9Mh7f1tcIrTnZ6MwuiXSNkJvUbG0Hvor0" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Nightly Desktop (macOS)" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:DLTUSUERIP": "ZB0qhd4eUhOly8cYyhszT6RoAwO+bRl994BweDcZ1rIjjaikepcTCQ3C1ggqgSIx+tU1ll7eBn+BwL/fYBMFDA", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "APjY6encb2NhFdkN/W+qzfy6y85IBa6bfrrsGn4Q5cPZNoQwNq0J9JsaX2MhFEKU3GwNVIX3LDfLS9yX49j/Bg" + } + } + }, + "KZEPAAPTAJ": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:KZEPAAPTAJ": "NIHFiCK3jF+zgETUCgnTn1dMGgFNQFzn9XIpOOhu3Gc", + "ed25519:KZEPAAPTAJ": "ADZCroZgQ9Oo3BfSpjrZfs0xSFSz1O/9aRnidCuvU2I" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Android" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:KZEPAAPTAJ": "N6TzeqHmzmOJVq41XJoR7GzYFpEAxvLUAMvwJY+LfXF7WnS/JuhhK4ml1h3TuuEin+Zuk4/FbXYyb6NFgSG4CA", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "09oIMySOfkry/dPnGpZa9GUKCY7UF369xGdpN2G7w5VXL2uGI+Q3yETRq7l3UyBIH/8O1kCC0/hHZBgWf4OQCw" + } + } + }, + "OPEDGUYPOP": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:OPEDGUYPOP": "T6bIngLF8cXYeFapgRF2EBw72CwKmk67B5Wh9pChVmg", + "ed25519:OPEDGUYPOP": "xHKcCznE4foP5hRNRL+lrT2msznWSOWTeEoab5lYBLw" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "pr9256--matrix-react-sdk.netlify.app (Chrome, macOS)" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:OPEDGUYPOP": "Flp/RRB+VtkKzRAisdHzsHpRu8qjUo2ggz26I9Uuwz0HjQidGf7Ct5igLlJFAVuKkQ6eDT4acRv4jyV8v6qIBg", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "9LkXjz4uqQBhQ+Eu6seMyBcUat6KauRx7q3bgKdy9w9ro6ly8573U3/uX7zmx/sqOAYUVa3mFVDWKi/H93AaDw" + } + } + }, + "JHCQOENUMD": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:JHCQOENUMD": "3wxKDTlcA5IkHDkvXTpYTQQVGPeI7Ss8flJbiROfZCo", + "ed25519:JHCQOENUMD": "DEAkpOjBqU/Cn5i6lJF1F9J9fS3OTy3hTFyKW4lbDvc" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element iOS" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:JHCQOENUMD": "A0uap1oRSWAJJPyzB3JPM20/ob4r7chTVdiu0z1tu3UFx6DoAMuklgkOrF1zwIpb3GVI1SeFanW9BA5PPB9OBQ", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "Tm+02RZaHe8gX80uIPd9bwYV4iikH4QQeqMt3Er4I/M+/BMAr4VbiTLv8HfEO1wBsTDt80NkF1c1LO1ZCIFvCQ" + } + } + }, + "LRNWIEXWZW": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:LRNWIEXWZW": "N7VaM2LonLb0Iv4Db3OWjZFMMwmO4qE6w2a9YU+F2Wc", + "ed25519:LRNWIEXWZW": "GDyUpO4nFQKi+WqXDOg+uzs24rBxartZhY+RGd4H9aA" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element X Android" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:LRNWIEXWZW": "KETUUXS/9KWUBd+UYsHwk+GQlVD6AScNxcHyFr0oGwyY2isUy9q8dCprmMbc0vcf02DiqOvEyoGQiA2k7baKCw", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "UEN/VCtFTaivjewq/IPn1DrTSQ8uTG+Ek5FG2REd9qWOoQWaL5pZzhEm4hDAAe3648Xf4y8WfyrmCHmh6L9+Cw" + } + } + }, + "GOSFZYRIEG": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:GOSFZYRIEG": "dDzGIsdDzjt2uWgLDg0U05v2s0NAdjiqYpYjryPa7To", + "ed25519:GOSFZYRIEG": "PZ8yFTGto0JCDh/gzG9WX8j8fNgCcelQJp+5bS9ntM0" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Nightly Desktop: macOS" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:GOSFZYRIEG": "0EDd2ZjEtllDYakVEUQbOLKlJdUwiIBSrOVr/1+9l3wFM5+XWSsPcEQlKYcUUGcap5F5qXvo8dfPbELZfBvNDw", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "9N3Jg97PnK0tw1TF/St6CXPuqSLGfvWQWB3GCg/PQ+xXN2ubB+D6qMTUO3cOFnOpUWwCtFA+5uUo3K1XR6WcCQ" + } + } + }, + "RABPQDXCOF": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:RABPQDXCOF": "eky3Ig0/5aJmQ6yez2DVjrOO3CQA2fY3JERm+vo0zio", + "ed25519:RABPQDXCOF": "I7Wmh+8DB074SyoMpv9AxnTOdf43z5m0K8ufI6+TLMo" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "develop.element.io: Chrome on macOS" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:RABPQDXCOF": "LFYgPm5dUNNiI4eTRWFTirrbtUXwRm2VTmRC0nfAHUobjumrGtK6FhzIC4y97vRj1eyJ5qGYu4TSJ3tBq6cMCQ", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "AOd9puBjHDcSrgSMrXlhqWCA9LngH60ULqOCzASo1CiMqQ7sgsC7amtIEw9MVpbewJ57k4rcm4FCYN+YKENfBQ" + } + } + }, + "WZHEPXLFMZ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:WZHEPXLFMZ": "ey9pb7ZFbtIa1/NKEtuwSB6InOBJkjJZuun93VmqIXk", + "ed25519:WZHEPXLFMZ": "pTRmjBmY3tVlS+Gn5OQqrgqIHqY1gRqGfC9PHh6UvuE" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "pr10080--matrix-react-sdk.netlify.app: Chrome on macOS" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:WZHEPXLFMZ": "JTNt+VzsdXHY6PoSvnn4FefWrsspRvz4dQPJ7Yk1VqrHpEqAfVmo6wfjr6hwOVyECN+FYDN4l7Dq7EWhyVLqBA", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "29fvxHmpTJKQZYgcVrJTo6dzMrhO4bCA8CH2lxWjKoT+j3OIvkZbTcn1JcWEma1PUbuM0WsYfZQXV2lAZaVvAA" + } + } + }, + "MZFGDMEZGJ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:MZFGDMEZGJ": "NRTGMk0PiweE2HYUKH2d0o4+cbMnH52lo5l6iRdcpBc", + "ed25519:MZFGDMEZGJ": "Ex4tMAq/2DEa09V1EBK3TiNGIkpObTFaLYiWNkeoV5k" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element X iOS" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:MZFGDMEZGJ": "S5p28/nkY56pPOyfMbMNwa7j0im6waLWiaNjN+InZffp5xZ9uktJbRIDc7ZVtORDOcfYV7XLoj/If4y5ogsmBA", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "EPhoUs5zDRtU0RM7IqqLeRn7SzVRUZF2yPs937UZs2ZcfCu9jkUrM6ZojhvnNajDUo8LkGx6peEIEWU66AKECA" + } + } + }, + "DIVAIDEHAE": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:DIVAIDEHAE": "z0zFtn/Z4GALb/lLZTUpEmF5k0JS7j3nOQ1jeGhupFA", + "ed25519:DIVAIDEHAE": "/n02Ykn/9Ya0fWhuaQe+dm/OvpJ2a9CJWpjEwNPPK6E" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Hydrogen" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:DIVAIDEHAE": "M8dkG1U2QZFQ2W2u77Ut4tyn/ARwkUH+3p1Mjc6hptX/8bLjIyJ1Bvqtpgs7YtM/7n3FP8mXgfzC9mKgBnvmDw", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "LaCgOpOXN0xjyYCHdVS4aYxfu9K2SgrnRSdK//E/nhe7IMiAnE8EzfNjDv9o6u2M4xlEdrO3uyMmA/mgY0IwCw" + } + } + }, + "DMFWVQTGZJ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:DMFWVQTGZJ": "HqtD2/HhHUqb36XmSlmhxTbo0Z2drwKuUsLUZvPsK1U", + "ed25519:DMFWVQTGZJ": "DS4PvGoqT78mPiF6Bzn1mTho4/QyL8a9j7zNUTF/zI8" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Nightly Desktop: macOS" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:DMFWVQTGZJ": "JZaC4wzYUUxm98FowoIwmhkO/hnczXpRzUMVKg0WlY4NX5W6vb0d8lvTiGjS8/HwmsBrFenREPM3LCfhj6LzAg", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "LsF/8eP4Akg9yb3sZjKEYQMg0a48+/S/sT5nf8biB8DOemYAUF7zbQ1do/JAk9m6KMDO1mxKxiy81NUPPP0WDg" + } + } + }, + "UDLNJSGAJY": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:UDLNJSGAJY": "74mkEb0CXv/l34cGsSvuODR2bOQ/E3aVKzdX+rlKfmQ", + "ed25519:UDLNJSGAJY": "fhmV+gOftT4tWim9ZTbMjTDmJr5aBZ5cicd3wTE/afY" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element X iOS" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:UDLNJSGAJY": "zQmQtksoluTaOaSEh1IfcTyd0z+Ira9+da18jtbTKcdFkRfWyOTBqBNVHtHt/XGobVy6nCGDZVrwi1VRnZcOBA", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "LHHTXpYxgMOoJNpqmFo7P7uQRgiw35SXDN5OCdjAmsKM2dOYsoMljuEXZqO3XLTUm2lOtc3wZZb73//FtBFLAQ" + } + } + }, + "PKXBWWUUJS": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:PKXBWWUUJS": "Kb+P4tSZMhmd9Ms7N0aKSBWvRvBQrEuoYmpsFsEkjRM", + "ed25519:PKXBWWUUJS": "AUv1hm03/OIT5v2SF4602W+M47tmNoV3fHG2HCBFBig" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Nightly Desktop: macOS" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:PKXBWWUUJS": "JRULfp3Fgei4ln3ZBCHfx+Sia2uKR7t2r5XChVSnHRdZdQPhw2Q3MjWj7fHmNQFDa3QOGQNCGWQXgwFzkmpuAg", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "PVmu+i1CMZQhEPZX3FvG0DtpKCJuyH72tY+HierRy9VTTx66ioUjHVBJ+eLLI7kTEahJYvzwajFt21pH2Tc+Cg" + } + } + }, + "QUMJEECHJG": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:QUMJEECHJG": "piMnXF3RUpX87nyYgbzKOs7+WvGyAw6mPjXlaThTs04", + "ed25519:QUMJEECHJG": "EFQ0uBWj2xbjVEGitgwuyVbC3JtQZUQNs4lEIUsE3J0" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element X iOS" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:QUMJEECHJG": "ZT8BDZ+3aJOP7rjVVE0bV4QZ2mkuDvsFJMeABsLM6kExUkl9eSbadStDksNKdIoSQKYtWWEEz+kampl6X0UdCg", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "mYKsWxU49BMEN21NynUjR3ZnbYEQbmIViIGI/tGPvb17J0jbw3Kk2ZZrXPxRUHM9tJ/RIqDQ9Ek93C3A49x3Ag" + } + } + }, + "UQPAUDSUCS": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:UQPAUDSUCS": "2kKbTnitSwwVrcT+5PI7dbrlZkgn5Vg6U4OzsAQ+9DE", + "ed25519:UQPAUDSUCS": "o/ZuRX9WkshhV2VqUMxkzlbK8caWK6oY2ponBM/4jdU" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element X iOS" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:UQPAUDSUCS": "U68v0lweE24f179b1eYTCryZTe1awKVDCPp4a85hMZ7MFn8BZmzS9YETaeeJRFYQtzn76fM3CcIHgrH8lJlwBA", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "r8AeoN9ujre71ywcH4d1qHMmBwkA9vHpVVlWlZu4F7oCB5qO0GmwpmiVAJ8Mnlip7O9L8OiNlxi7inmGBDrODA" + } + } + }, + "LMMQYUJDNI": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:LMMQYUJDNI": "NfRITek27IsUqPyXx5BK6kn7J3sp7pqDv+dKmxK4smg", + "ed25519:LMMQYUJDNI": "jAp+jM4FTxR9VYIn8grr0XC3H6MHQoiWqxyzr+5aeDI" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "develop.element.io: Chrome on macOS" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:LMMQYUJDNI": "HOYBTxr7zRxNqkM0Eoe+6I2iA9/lY11urmWEShzHD+bWS+98BqYTO0FPr/SW5OvsNRY/UWInLMQnDfOVuuBGDw", + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "G/iY2NTpqGQyIGRZ/OLef9hbU3NAbsCm5UMQPzgULstXUUubY9T4fAT0sXkPorrdXgDJnxAM6cDjWBvhqCUNDg" + } + } + } + }, + "@saces:c-base.org": { + "JQYUVQLSDJ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:JQYUVQLSDJ": "s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", + "ed25519:JQYUVQLSDJ": "Nh9+zpTW7guPM6cgyxr4h764VT2JJmyCuFlczgLbHU8" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@saces:c-base.org": { + "ed25519:JQYUVQLSDJ": "NYpqCVv9+NJSebjhp9thKQjbPzc7X7b/qXX3YQrAtVHvGoAwvF18jEAT1VfjhdWXLoVcpG/2RjN/UY1p30IACQ", + "ed25519:zEDr2sVNTpqH2c6nTqm8f5doFl54qgBcEggkmhQGMts": "Pz8rhqXA0oZ+Jccn2Kly+yx1/t5PP1rbUa37/5fO33j0eA1epWNXb1CSjuBoczFsW4brdXl9tirb7HjCXS11Bg" + } + } + }, + "UERFYHQFHQ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:UERFYHQFHQ": "WIQo3TFDrpOj8PzdHiaiftqOu0PomITds9wUSNZv9Bk", + "ed25519:UERFYHQFHQ": "939/voYWh25DHvPgjeZL0HaPqdZtavlgbJwUa5K2/dU" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@saces:c-base.org": { + "ed25519:UERFYHQFHQ": "wdyNzy6AUidNev1mN1jYv0l88vqRWF0XgsRhjld7bMVOT8WznIgn56lvCBWpOVYz5rXSqo0DLb1JHknPrnn2Dw", + "ed25519:zEDr2sVNTpqH2c6nTqm8f5doFl54qgBcEggkmhQGMts": "4so2aWS4Qum0DnsDk2SmeuMDgDE93O6tdnT+C1w8bRZNKYlicC0MOMeKjFzCU6HfvBkm/dNBRXwjnCxvF0JkCw" + } + } + } + }, + "@/dev/saces:saces.de": { + "CJVNEMQDYE": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:CJVNEMQDYE": "SxbsKj7xah3vNGMR+GbwL2EdgTXB1sPFOgvRkSKvBmA", + "ed25519:CJVNEMQDYE": "iybei638MgUUfm73EjyuW5pkQq9EOBd6iKkpbRxkoPs" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@/dev/saces:saces.de": { + "ed25519:CJVNEMQDYE": "psMjtKllHPpe2tQwDDXqKwS7YYvyH+h08913OC//wJfo6qInBBFNTkocxdqEvIIPEFN67PRnoPIgSMCle8nMDg", + "ed25519:01Mra0lDap17amp7otuk4ag/1hLZ5woZ6mMZg6Lbr8A": "r7Z4rwuMe6gEL0en6JFiw2kJVM+O7aYH9vsuX5FY9aiADKgSxI3LmMJvjTHTY/rfxaNgGLBS/iyP7HEHLETdBQ" + } + } + }, + "KWITBBVNXJ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:KWITBBVNXJ": "Y+wjKOrQcTs4+VvElq9alK5qj5WVooOLuBUj+WxeUB8", + "ed25519:KWITBBVNXJ": "5ts8P4rArj6faWpVs+t9dJA0npiMQFGyNn4bY+x8x5U" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@/dev/saces:saces.de": { + "ed25519:KWITBBVNXJ": "EdhHA0vLeAyIxmDzXdPWGNvEBozqbOWXfXNcyO1KUPIlfjtA3U0UH0trxbH2eQlfpAbWsEo6ikWFFmz+VbmcDQ", + "ed25519:01Mra0lDap17amp7otuk4ag/1hLZ5woZ6mMZg6Lbr8A": "jCsYCeuk0sldbFe16DfKPOrsfmlDbhZpSy7GuSAdlBkEvqQoRf11PShOZt/z0O6khXdAke+jeemn4FWtTEHtBw" + } + } + }, + "LDLNLBYNSJ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:LDLNLBYNSJ": "wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", + "ed25519:LDLNLBYNSJ": "w+Ez8ZL8p12i5w0BiNJfcnvg6rda08up+jLp23nYhq4" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@/dev/saces:saces.de": { + "ed25519:LDLNLBYNSJ": "1j+9aK1pm5I0/olXOihyS//J/j3zHu7huRabBdQhCjV+VtPW1k1fqacVSIXIdm58y64ktDSNbhEim7VhoZQbCg", + "ed25519:01Mra0lDap17amp7otuk4ag/1hLZ5woZ6mMZg6Lbr8A": "LJg/ugnYnwMf0CPwSUlmWlhA+3PpBaMRFw7CThfLxVGuXy1TrFQ3JiFrCBkqLrhcprgZ1EYvAB5qtY7SC73ZDA" + } + } + } + }, + "@creme:envs.net": { + "BWZEDJMICJ": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:BWZEDJMICJ": "clDKNRuM+9/eGJ8f6hCy4mSUdqrbyIxct7cwT0h7aDI", + "ed25519:BWZEDJMICJ": "xe1SwDVaZ+vFUBzstAb5a7NFFb4ibj4X2C/RyyvQPv8" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@creme:envs.net": { + "ed25519:BWZEDJMICJ": "gD989XWt6B+buaf24CaLEoK7BBEzmU7GZFe5xgYwSwsXXCt4Wa2/XrcNNvITC+Q6G+s3uMpDKLLn8UbwOvcfAw", + "ed25519:Fb/q1QbuEttVhEhYcMdAXStKvUzTHwUvebBiraz+RY0": "091rMkKOuOHmyi3ek0B4Hisa6NJ36jQ1E8LF2T2IOzaw3wolaoSaZBDf+X2D5+ZpZb09+9kX0o5138kDh499AQ", + "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "sUHwgnW84BblhRde5K0cVtwYUDrn/anvWHrIh7XLBoFU1RBrSekJQ4FXdfR47FjUyV0RS2+t3gvVpv0MnV6nCA" + } + } + }, + "DROXHLSCBG": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:DROXHLSCBG": "P94LZE7rA7vuxxv/crSebhxTRdUsq4OYSbzud+NN5go", + "ed25519:DROXHLSCBG": "23fXt8XVjTzhb/5QOfGQxXZEmNIPiKmKpbnJ089Y3a0" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@creme:envs.net": { + "ed25519:DROXHLSCBG": "WJ7lhVvKu/c/w0PpT5L0Vlh18Fvo5bK3dLLZzeIZEoriwvooXb01N07lW0V3QXhxp75lQ3T9vPuj2smT6d7QAQ", + "ed25519:Fb/q1QbuEttVhEhYcMdAXStKvUzTHwUvebBiraz+RY0": "RH6BCFQdTmmqN62tnd8xlsV7Pwxuej67NTPk62pof7AiHjdsKoJmrrve+lYYdWBstbj62M7ZItMCQMUewYX/Cg", + "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "pDXZ8yteYgLuILqfilIwtK9hjlTb08hG9Dl+gSvY7Rs2+CHcLCvJo5wzCNqb+cOUmP8Br+hbP45vysMgbd1BAA" + } + } + }, + "ETCLTCVNHG": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:ETCLTCVNHG": "a7XdZvWdCNZkS1TN0UmsIihxOqUk4txrN7kwLWAxsR4", + "ed25519:ETCLTCVNHG": "RrzFjg6f8VKnnJ7gVw/GOsv7RW1BSrD7jxv66jN8Zbc" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@creme:envs.net": { + "ed25519:ETCLTCVNHG": "Kh/jYjR9Q325Lofn5UBVyNN0mHb0W/88nC2vpQG1JmtnWm14oXKtjmTVwIyzHya6wzgxoKc1u6fhJGFg7va2CA", + "ed25519:Fb/q1QbuEttVhEhYcMdAXStKvUzTHwUvebBiraz+RY0": "s77WWjqXCUgVYsJQ3MonpzFBzwl/rXJw1O/U5+otjJxgqwYMLsWG1/0rNe6i2n4KPo45hAi9zkS4YIUnuwIJCQ", + "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "SXaAnDlmNKONm34fkd1vF7z5v25ZOLXSynAhvvPUpNk6SnlHLqTT5EHII/bF0xvHyMp5kC8HF4YEpzu3kREVDA" + } + } + }, + "GDFVECNBXL": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:GDFVECNBXL": "8aiY4KhNDuoPf7GQ6iomWjq7Bg14/rrqkr9HQtuOuXM", + "ed25519:GDFVECNBXL": "onDdCuoOfhT2by8zxDoBeJfDAZjmKTr+vpIkDDYHDoA" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@creme:envs.net": { + "ed25519:GDFVECNBXL": "2wz1Wq5oTfTOFJG+Z+gujNmVBJ+MLoGwwg8mkDqBITljsunKceMgTBfS/QPXn6mEejtbR+8cv3jmrFOFFSncCQ", + "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "A+amQ/2th9TBJTKaW/M/3+Oh1J88am0wKN2fIiheR2y/3a4YoimuAwiggrCavr4o/drKZ1Phi9MZeT/ih4KrCw" + } + } + }, + "GDVPZHUDFS": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:GDVPZHUDFS": "+LG5J/gLL4IKm8mVxbzh9HtybokyYh4+qRrztPwatiY", + "ed25519:GDVPZHUDFS": "pLJxLAez/G2x/GiXPtGsZ4HgkJ53eK21a5K/sRQJo04" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@creme:envs.net": { + "ed25519:GDVPZHUDFS": "pBkN4MiEHY+sZ65gJuamydFr3/CgZgQbL2Re9mCFVHKmYDZKGVUIkcFU28hV5UppPrucGgEUUZi7Sv83Ypf6Cg", + "ed25519:Fb/q1QbuEttVhEhYcMdAXStKvUzTHwUvebBiraz+RY0": "MDU8DLzNSuHr+W+o5HoxDeazRDkBJir45Bnlc0LbeQwla1PE+YiS5k2Fe0xClubDrLARKVkjv19oVQ9M71wJBg", + "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "djKXSLKtoYCQz1I/tShLbmFNrnbAnqjaxCFT3efWai+C/A9QKOviVNsBe+DtiQR8M6tdCEIKwjW8poeRrUwZAw" + } + } + }, + "NXQFGIYYXF": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:NXQFGIYYXF": "+XWeVnwsM53WJKyc9YlK1DthttT9KgQAvUG/zmr0WRE", + "ed25519:NXQFGIYYXF": "cLJclNV+jNflR4/YMu7NmtVNzU9E2ztEuB+h1i/bX54" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@creme:envs.net": { + "ed25519:NXQFGIYYXF": "WtULWX7WeV79gUCTmEUrGUhFyWZtVUqTOqJdtLuEWSIOwWfjYnwquV0ncHmNoWusicBGxDU1am2sMI7XEy3PAA", + "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "O5nU277PPc8LrRDUlX4SHps+mmIaKkkapMSrCte9Hq48iAusShDpYOFht4fTBTwg4kLFZaYIda0IQPbBzy0lAw" + } + } + }, + "PQODMINEFK": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:PQODMINEFK": "pTKsvTm/kq8bdntjlMl+rAtoq+CY8zfwBYUWuIF8kWk", + "ed25519:PQODMINEFK": "OS2u3nbUrqhZXG7nfwm8Yf082wmaAqpS4Q6xFjhNg/Q" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@creme:envs.net": { + "ed25519:PQODMINEFK": "fwira1uWH7AhNUDR9xRepTPAkU39ZDi2Bc0CPJe4w5O4wg1GH8KjNMsig+4vwLXQDD1D0sfN3YeK+y4n4vneAQ", + "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "7k/Epf1Lt8q/pUJVBQPBCmVtaMIY25MyGRRN3XV1viWmyNGInrq65WErA0kBliKBlMT+5kk+K53wIZeN+uN3Bg" + } + } + }, + "SPPKKUDJCR": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:SPPKKUDJCR": "z5N1JkhyXry0m8y4UNzNCW5XUpqGKsoAzXHshwNkwzY", + "ed25519:SPPKKUDJCR": "wURH60658pMDZzv4s5mTJJAmxZlhdZnE69/TRhBhcSU" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@creme:envs.net": { + "ed25519:SPPKKUDJCR": "/REEJPhFK2XB9Vce68wrMFk6paxOBwwl0GJ1MZ29xPGwJ8S3RZb+jOO2gGuQaVklDe8qTvI/EG6OB0pe4wleBw", + "ed25519:Fb/q1QbuEttVhEhYcMdAXStKvUzTHwUvebBiraz+RY0": "vUXwqMRkelHG1RK2Cjn7p49sJr5Kj9CunKD3nPwezN6QIEapkMtA5+VsdSQQHOA+utk6pO8StnXTVLABnTtyDw", + "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "6IkACgjXpS7U2juWWF46oSO+8uXfpGpJqd3zUBn/pubrYQmcSk44PenXqjpAgTszL+xvfN0gsX+zS1JoPa/9Bw" + } + } + }, + "XVRGUZLAIP": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:XVRGUZLAIP": "WYEuQQBN+LEKaVOKtZ2C2hCa6UdwZeYB3R8EhAJcBjU", + "ed25519:XVRGUZLAIP": "+jGgZOsRzqGMntHy5iUqL6HS7XqtUd7FVt7LHf1zAUE" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@creme:envs.net": { + "ed25519:XVRGUZLAIP": "/Um6Y7VT5YleTjZz2wU5UW4wCEmtQcMOEtDULnORCAbhAd39oKSAsxBgLMgXveZInfC4k1+xERfG9AgVxLyVDA", + "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "SO8C4f8AOzuZ9mB7nd+h7fvP/ysU9Ct3KfQ4bVj8jwq+1GWFmnJeU2AYvTTLEG++wiLO6wGL0AYZzCBya92wCg" + } + } + }, + "YMIFZYDIUW": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:YMIFZYDIUW": "FK7fPzFsmjkQPOg6rkOtM31YCWmGntmxDnW6mgAcaRE", + "ed25519:YMIFZYDIUW": "U6rEoav+B5Gj4iq9A9YBeDbb8VnBl8p6ULzv4htqZiw" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@creme:envs.net": { + "ed25519:YMIFZYDIUW": "UHVM37ZGiKuyF3pk/EB2DJEbBtos6cCgz9xqMlLSLJIAKvFTPfLm/34LdYJCn7nYwhyryurhO6OcqVjmz2HRDg", + "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "yRyeUPsoDR3lfheDMYG515lMLLFjNXT+s6voYKLb0qu+rAEliy7y5/0cETHrn+ScLq7ZPHVtHk+z7hQ0RhNFAQ" + } + } + } + }, + "@erkinalp:matrix.org": { + "VUKXYOCWOM": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:VUKXYOCWOM": "8Ud2Gt6WwD1n0pGrWy8PMQakJntfMkTratWBAUgrI00", + "ed25519:VUKXYOCWOM": "2ARyg+5geBG/7sObPfSVEruN783qBaOw/o6qrIQJfAA" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "app.element.io (Firefox, Ubuntu)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:VUKXYOCWOM": "3au9Y7gF2Ky+vqDO/dQIUe8TrNI5sLgDdJqTRwvYYWalVyAsph/oX5s2SR1pyMaw+zZd/hGMxChHF4in1WRzBQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "SEGwDQjA6EXYUYQn5wn6wq5Cmxk4pvnGRwdl6hr3wWJnm/U1yt5Xp7HKXy9VEk+1a6JTNk50Vfy13YwqlOYkAg" + } + } + }, + "ZCIAAKCCFI": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:ZCIAAKCCFI": "u2IuG7EY+OckqB/adUXgiyl8NQuKsttOxCw8jpBwGgc", + "ed25519:ZCIAAKCCFI": "bUrIM7UTKSCPZKL2AviW3yhW3vo3BMNxcYU0x152uX8" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Android" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:ZCIAAKCCFI": "WaSGIV13r1vBzbIZhtVnGORgtoCYYn1+ArJzNXK7PNDs0z4ynXfS9D/pDhKMQtwnW8OHah6k4b+4ksNMHQrsBw", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "RZ69dUIcojpoEcg2eFDRQMI2l3EmW7CHM7lYUkH300m+C6y+qrX5s+zlPMhq+N3hGIoUgJn6g+ThedYF7z7gCw" + } + } + }, + "VRWKUUYFCW": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:VRWKUUYFCW": "unnDVEycK78zPgMSD1/589SHj83mEMasfBlueyYPwXo", + "ed25519:VRWKUUYFCW": "qIHlrmqdbKp8BVXhxpGbCZ0AU9OB9i4OUjTh08h0svc" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop (Linux)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:VRWKUUYFCW": "PBS5Uq5f4WvSwFzMgAMBEUmxhzW1Y2SmlR9cx+a7UrV5urh27Y2qcMqL7Ew1vhy2VqgzY6D5PfR+9sNhvOdAAw", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "IUrmzJafAdBbuqankX41TdnrcMF9UxKzsYcHxtUM4ep7/9DMrEe5MbdzrAFpOPgUCZBKwWeW4f6/3SvOMKX8Cw" + } + } + }, + "XACGRKNEET": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:XACGRKNEET": "InokQFnKmaJOm9FH0Hrtd4lh6uQ0g1mu6DGBkWJBuQk", + "ed25519:XACGRKNEET": "3rrxGA5JPxYyxQux4x5w5YQDZ1aVuSzk8rpW+IkzKfw" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Masaüstü (Linux)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:XACGRKNEET": "MStBEl5954tJ2Yq+qfhx7TanZNpS4ZcQWMJ5j9GPjPmEJwnLXD1nbsFb84JkA/+SbbCd/R/Q4//fErTStaZZCQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "B1gxe5TbG7pj2sojbSizY4rW1Y7S1oawsnp44YK2y2ZpgUruK+0J0oGx1gH2LCTzn3kYLiOkGwHSClecgSpdBw" + } + } + }, + "SYZNRJXHBC": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:SYZNRJXHBC": "/w8als+hI+ELK7mFpHbEHsn2aJPtFKL7FZAGWkxMEHA", + "ed25519:SYZNRJXHBC": "4zxJXPGNzlRRuCOjLczYXtbZUilJl/tTiAUrK5rfIqE" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Masaüstü (Linux)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:SYZNRJXHBC": "EpOZwPrkzuPqzOM3hxOL21AXhsqm6mFDFHDiKVML78aaG0hbYB0SVto+JCcmEZH8PudvRh7BWbj4ogIEVQOCAQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "0/gRrFMFx8nQovX/JCzT6KXglQGdY7K13f0g/oY1gdRQNIaomc2ajG068d0cMrHC3jKYQ8Ejtqa69bqCVpxnBQ" + } + } + }, + "ZSRYCQAANB": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:ZSRYCQAANB": "MoUhq6fl8u8bp3Nw91QZh8X2cCKVAgDZWBvZnROnbi0", + "ed25519:ZSRYCQAANB": "tkrzxxBqP2LkX+rtLlsga+1Pykh6aeTCYYjo2zcztXs" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Masaüstü (Linux)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:ZSRYCQAANB": "SdesdASlrEAT4Tb8laOjnjkZPe12nGxSdjwXcgQbBztbVmblu/Roreomc7gbns1nB4m1sCXE9L6du8BtMniyDg", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "4L9opoN8sUI32OMj0bQUJWpsUcdRdIS6dYtC3kiDsUeBeb888jtlTMA93kEo2mJ9pf65kOVUpplWlsuIbdeFBw" + } + } + }, + "FYVZRHXWCQ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:FYVZRHXWCQ": "sT4oe571p4mutcx0+c3JaweWBbqeJe2T+YcF0fU7Eyg", + "ed25519:FYVZRHXWCQ": "BVASUPx47kZJp/R2SBzCjNyxL67XJ3wbtUb9MCUdW9o" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Masaüstü (Linux)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:FYVZRHXWCQ": "b+VjK1XKU6XTYfbqWxzLcL1gNwtM+LQ3N4t3B8LDOzKu/eZ9JrKG7vaCZK0HmXZ1BRY8jz1fKjShf/ArlfM1CQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "w4qPNO8KWXJIwWOi+Znax4FFdixtV4kwa3OK2xuWqKvJEpm1oi4XwgII/yIBny+uP4jjgeMw/sdU8DPD6lSjBQ" + } + } + }, + "OAGVZFXWVH": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:OAGVZFXWVH": "mOqs4AxIxpkk6z8HaB2uDpKaoh7xfyESxjtSmoI1Yyo", + "ed25519:OAGVZFXWVH": "tjVY2jMxjeECLVz3qlAO/b0V++ml7GYJfwnAQcr0niw" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Masaüstü (Linux)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:OAGVZFXWVH": "udAEjko5I1B4pbhUfJtRhTPH78v4cPm0C3txppazLvvT6JpTFIS65COJO7rxaOyNkjw44KRYhxRaSUbOowNtCQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "3g4U52XQVJG0JF+qR2VkBdTbgkKHHJt9uGyPUE4wjU/XayiQWTdUeRb+y7GVfBofII8KP3w3f2FpUtOw8ToSAQ" + } + } + }, + "TLJZQJNOZB": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:TLJZQJNOZB": "KMVDNeM5PEEWhIGNQUd2Q8u24xPjxJuabsFQ4hxGvmQ", + "ed25519:TLJZQJNOZB": "HXoJLpEz/nbacx0lko9er8ccF8Ac6kA7fbRI3N9R5n0" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Masaüstü (Linux)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:TLJZQJNOZB": "0jPuObpaXfIRSUIo3C9eMwnDmga8C1HXQWOtthMNq9o5FN/qvmGw4ZnoDS1owBaXW1SWZYz67fJNLUcYh7hEBA", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "2RSsz2ThOHB8J2n9xFmZNlwfO4TMWqEqkLEyN325CMzl7G4j5d16gWF8MxGBRJxGK8FH2Q4gMNFkYI7z/JLxBA" + } + } + }, + "NEWSNXGSHW": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:NEWSNXGSHW": "DGZYQnTBEuzYrt1o3kK3OKw0uqVr3MXRRafX7molW1c", + "ed25519:NEWSNXGSHW": "3LmjzSqAJpb7a8eRQIZKXXMdQ5nklNKWTd+t7ApmkgQ" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Masaüstü (Linux)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:NEWSNXGSHW": "1QykBZdfQEOzEldpmQdbma5fbaSgRTwbNblBFjCxCAxOW62Odcfw1tWLUdZkltxCipsQL7buj7XjgLx+dRMgCA", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "7kvoH7k0slP6JpEOuxJFai5N8hCDMOU4P0pjTUR1NkWGQeeZ5ExGbNY+IB4DUioD6QQUYQBXcuv3Rjn6g0JJBg" + } + } + }, + "FLLZKHZXZZ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:FLLZKHZXZZ": "NyVGIUQVlgA5dSivf88wPzzAWOyQjXxNAwbT0Bo1w1U", + "ed25519:FLLZKHZXZZ": "n8CoYbYcjbPjSQ7bfEoGbwMxcG941SmtaNIb5HzO49Q" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Masaüstü (Linux)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:FLLZKHZXZZ": "VUfx5m9ZY5IVSTbtsl7yY7d/ifxML7AWAPgM4Hx1grpnQE6DDmms/XiHOuk3NRpSjGbYNX9sxvdnLabj/cjoCg", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "KFupGRaaCcZeIqxDYuTWZYJIorWvVpmHDSq+usBOdLMljN2DnVXsOc/3aaorq1yQZMNup+cH2qOyf0UueE9BAg" + } + } + }, + "XZMQXYHAHE": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:XZMQXYHAHE": "VFjp+T7+bEnxjQ78hUec5YsXqpuYtplBNUh4B/upvDg", + "ed25519:XZMQXYHAHE": "o5iRUo7satt5eFgOgBknY88g+cIkM719pH64lgfVjAw" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Tohchter aus Elysium" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:XZMQXYHAHE": "+3gyovCKFweSz1tXI5dI+QfldobL00PjGRX9UUh+DXIpmBMQ46+tfVL5jwOsIo1zQZbeXpHMHbDq2nNPf3DqBg", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "XVyvYHIDI4oj9fYJjB2yb5p3iYI86Lj0eEKA2N1HWJP0cO4VekXtiG0g4jInQ+629fzvg8CZYCcbOx43opDIAg" + } + } + }, + "JIQSHIPSUJ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:JIQSHIPSUJ": "69+vgdn/05sWcvr4SYryUIF7heJ/jUQAPU+9F/QnAzQ", + "ed25519:JIQSHIPSUJ": "hmy9kuYW89v/G0dxmQW3vGIxYT4oNBg7uJK0rHxWG1Q" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:JIQSHIPSUJ": "D/3HiPBTRU0T+4LlwWZcojOOJRFtlihPV07lqzvC4PXLOx3xb8uPDDUpLumPcRGg12aj4MkfvjhMTgQ/R8WNCw", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "Z4D5vpNvq+EOW6fP3N5AiJmKd+Wil3EnwWk0eKoXrLlHTbhcfb2y4YzxHh5fqngtZ+ms6P30gs6uZ41qaxk/CQ" + } + } + }, + "KSHMFEECTD": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:KSHMFEECTD": "SoO7rn0yfuxlotQw8/L78QDT+CQXLujrNXk3UV2rPFA", + "ed25519:KSHMFEECTD": "qcMlNBi9YNxxFXxzaI60m5DgAkJDB2uXPnWdTYVy5IA" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:KSHMFEECTD": "ep7c1NprsfPmJg6O9hL6wtxnMooepNosRtEqpQTmhYT5rxxW0RB1cFb6yyh0Iqrp6eToxafvOIAFu+AfnaHFBw", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "HPgMsub53B+eg9vnl3tssmwPIvIceDZQ6++/rX8YSB3/BF6aOBxiVzmzeGW/l8RJAKqMu/g2HyBQEvxROoJECA" + } + } + }, + "MURPHYJBCK": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:MURPHYJBCK": "6EJnhMdoyXYj/YWEGuHJ6xvBu3LRufRqMO6FSUW/b1k", + "ed25519:MURPHYJBCK": "TsIyzyuvlwLLqBM9lW/je7emCG8g1UHEZhqVwB5msr8" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Masaüstü (Linux)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:MURPHYJBCK": "51d0bnShiT6IcVyCw9MxZchnwOYIn8zUkxi27p3Y9gQwqpzhwqZhYGmNGOpq6zIscLvg8uf3OMNoaa/2JieECQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "mTHTfNSaPd6TarEHq+2Q6WsFHEKMLfDN+YuQehYGtN70W/ikraS+sj0WG16haB2AFPEnhxNSCDsoA3agEy4KBw" + } + } + }, + "UFPKUKGABI": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:UFPKUKGABI": "P66O9g8U2dYew/4R3HfIS5ghOfHeV5YfGgZkvWsHDzE", + "ed25519:UFPKUKGABI": "uBblSEz6NvvBdPrmjgHMVRaH1eeOU9exuJJx5eXCHrk" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:UFPKUKGABI": "EeFgpWqP9eHcooWy+Bf4zy0kOZqj8VwBlGKvtU4WTu7mGzQmMZfJkQysKfEB/jvoQLESNhXH/Zuq5/a5n16fBg", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "DiRcEGocPOmKQSgyG+QdF5DRGCYrIzLH1g3zAko/HU6IhwPZbDIiriquUV9cZbPdVMEFwe0u07OZTgzCUF6YBg" + } + } + }, + "TRILRNVWOE": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:TRILRNVWOE": "zfMJhBWK4JFn0YRwleN7nevMYfpJVtchtYDt09jQHnI", + "ed25519:TRILRNVWOE": "29mmVU+StraWSJC5Qsd/dAH+ozaaNm97ZrBlzV8LiaM" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Masaüstü (Linux)" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:TRILRNVWOE": "UPopQFh0U+/X/B75doN3fbdVIlrKoC4nZdaP89stjmP5R5iH8k1Z1sU9DjGlKjdwxQLVLh0XXPvZN4MbhuV/BQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "3lDXCEbE4ubberDiRWlfwAjhw6uOkLHO1nNeW53EUw4JxMqtEW6Yvt+aLqJ2cBn12IqMuTKbw5TAx0prjm33BQ" + } + } + }, + "VCSGYJFPIA": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:VCSGYJFPIA": "0aTuLvrfZpMMBEIsv/9NJDkDGxyuqIKeTJDjn6stYSw", + "ed25519:VCSGYJFPIA": "U+kTz5vEZPHqcnO1pXxj1Xkl8BDRS32O0x3Na/EVgl4" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Mozilla" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:VCSGYJFPIA": "Xqie5hEyZ1I8Zull5iwCOKtvGXGa5GLcmvEo+AXGYr8uroNuVal/8U1oNvk/CKkxJBmve7Nh7PmlbuhFzCTODQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "fbbpaNLXeO8ODjg4CHK+c/51Qwokydxd2OYTgumFRv8AOt8WQW9neZ3ZP4nAr9a+6sLDBX8f6VsV50rvGVpCDA" + } + } + }, + "ODYEOSBWTR": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:ODYEOSBWTR": "mbEwXkY3wR8xXHo1381JxYKUwFyahyKotGmwy7mCv3U", + "ed25519:ODYEOSBWTR": "n/sXwZQgUr/d1EmSivKszb2799ajqlAc+LET02BSBOw" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:ODYEOSBWTR": "Oyv65y7/JrFyXglPu95QA42G/mR8YXc7sgxyvCNi89pqL2lXcFfyJXOsv86w2h7rfwJi5XgC59lq7FwHU/h5Dw", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "i8ciQgOzLMVBOg1GKfyOvppNgY029fJOmfWVJYnD9oAWQhqCHq8osYk8+m03eyf8dlQ18omYvlb9mDlbmBrxBw" + } + } + }, + "MBHVVXJQUR": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:MBHVVXJQUR": "APL9dU6ncvpJsO5SxHbRZgOGigh4+iVQUy+teZ2i1CU", + "ed25519:MBHVVXJQUR": "AYCcflzt53W8+iTheiqcwWB1aDg7oBIGS6TI/795eaI" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:MBHVVXJQUR": "eA3rSxZk3Nr+LhFPpX2MSDb/9HwIBlBS0ig+pRZYNkSH1HCydPJ6v+tVLtCrvUb2ygDM7mkdwzO8nU9nhQ0lAA", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "CukM0QAPmxnyeoOtF1iVKL4/btVv76DgafmhLW20g7GFiia0TVGvcsXHPMaseGGiDF6okh/4rmtiiGwwf8ezCQ" + } + } + }, + "DDFDUUFZNG": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:DDFDUUFZNG": "u02Q47VF3D8lIh2MEFLXKVAp+yZgDPzbdifmtlLNrw0", + "ed25519:DDFDUUFZNG": "CJQOGMGHxqWliLHpWmUH8dYcH/OcBMx1L/IHiEk1Psc" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:DDFDUUFZNG": "IYGzFd96JnFceBKKeK+y/jCrz4a1yZjioqlOIQPVzFj4dJ6z7PPj5AUhO+i64p4CCgEJpEQ+ZBjbRjJZBHQzCQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "dtvpeZ5reaUM5CyznyonzVHn7Kfy6UKD+4GTrTTnfjrqEbcLg/lklIL5eEqrO/306lDcAFLyKHMQxSghGaeEAw" + } + } + }, + "OKSGBOUZXZ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:OKSGBOUZXZ": "PDxxvwLtxlRr9ZzyQbFJQnsH1mFmRxbWd0q7BtuaYTI", + "ed25519:OKSGBOUZXZ": "PdTQk+sPIb0JsKEuuEQAQYIGSi/nDQURD8EwaDcRiIA" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "5950x" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:OKSGBOUZXZ": "ARRiSmiSXj24OsVEHOHqOpEw2qHVVRfy1SXpJpDLuWDG1CkM07f++Nj0yNomdxR5nXW6NmMaK+am69Z1YdQSAw", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "HSUpGTY8POWC0cOTfGO7uQNrj4CIMFvx0yGQ6dBPpAxlOoe7uqdi935dS8ovaRvwkN2illy89g7KyNaqdHUeCQ" + } + } + }, + "PXBWOTFZKG": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:PXBWOTFZKG": "xkNeAIWJakKTLG5dAcl5jTF7YW082VGsYn1YUOayhzA", + "ed25519:PXBWOTFZKG": "WbwatPS5mzyyorLYQmSmuHoJT/2q+xnmDTkoqytkn68" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Freude schöner Götterfunken" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:PXBWOTFZKG": "eQHlTfyaygnV0GkVE3slxDQ69SekxfkOFPXkpugaY54Hw/aAiD/mmtUXoPjVpHKyElTp8k61e4b/ET3ZBxh8BA", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "NqiTLhJ7d/D2pOkdrG6voL6fmpm/hj++djoYcJzaww/ejvRiDJqaZUET+/v1uAliCWAOfzECzpwlGowvF1kpAA" + } + } + }, + "YMXLKANXBF": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:YMXLKANXBF": "E/RkNef/8EcDAmfOLCCX8mLM9k3ET1P8RVUvpfA1SnA", + "ed25519:YMXLKANXBF": "miI7ZNb9FwaFxKCDA0W5xhP2VIQv+X/LRMgGkPLZi2I" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:YMXLKANXBF": "hXEj6+SWYg+xcJC4I1pfDMW3svItMAzfDigl3m6ccBVQSj2pp1ejIPchQxRSF58X01aClfFe3Pqx+sZ2DVV1AA", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "3LgbofSBJup78qyil9sRelLDKZ2b+JUl/9tkmXAzjQmCi4EDbDsYV9s8QtCwfliwo7KjSQ6cxOJiGp2WQjh4AQ" + } + } + }, + "QXCOSPSJEJ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:QXCOSPSJEJ": "wWcb8+7g8iIuLXjyhNFpF2ifBrCqp8HJ3pT0rpJ2JQA", + "ed25519:QXCOSPSJEJ": "JM5zmxKnGdDUUvlSyiMoNgwfcgYhAMMDh9qeUHF2tqM" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:QXCOSPSJEJ": "PQUMYZEFeyDXuT0vGvRjx6+BQbvFBTK+GmHJQqamQxRUuAfJcY5g0+UWS6/NPdOH0qhYhaqhte9Sc/MOVlooBg", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "1j1OMyoyuYRBfskRa5f4WYZWh0LmnRYCmUAFSa3EwdUr+1kt+7sRWIud9ZmyyjNjx/LKvFab0i0putzdFnOdDA" + } + } + }, + "RWBRQMKGDS": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:RWBRQMKGDS": "glEuPNw2DQW6W2ZEitUnOGfI8k7dqDdx1ylYkrRzcg0", + "ed25519:RWBRQMKGDS": "4b/tEcZtxieKiDBtLGOV8m6sJLxkMa1Naev/S/v6ATo" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:RWBRQMKGDS": "ENdVBhE5L7ZRxHicJ1BR5Z4o/YEisUEfIiwO6naSOoNFtBjSu6MdZRfJf0BoEZM6iMGjrG7lwOXF3jgjYCcSBg", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "9lXBKzJeoDUpyaaWTFXHGMyMj8ifr/xDQkCN+gvVBpm/z0JgsKoQNzQJ+PXQ2OSO0+IvinUXoeGwE5ZjPIJDCQ" + } + } + }, + "KUQQTRQQHF": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:KUQQTRQQHF": "9F2LCrbtDYSBfllwfWOVos4ss1Krq6RYzy3apVsc2DA", + "ed25519:KUQQTRQQHF": "jPZDPu7Iy8l0+loHcMPC/ekMw1bRyyPWzwZE1m7tZrk" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:KUQQTRQQHF": "bYa23azSBBxgBvL8TcMLPhdYSULgfiRxuefq/Rs1Yb+NKtdvbqBTfFJk2i9T/pX3qhdlPkGV0x+duPuqLMd4CQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "o5Jhqs5K/dtxChQunFQjdrtauzomKxo+flPbmV7ZjInlJWWM9tBrZY9ZzVtD9EYJjCqAwljzu+T7eDPMgGrcCw" + } + } + }, + "UFUGIDMJDT": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:UFUGIDMJDT": "qTi1w/KX37+kkVg11stanbPVIxnXGPDOMexTWQK0fDk", + "ed25519:UFUGIDMJDT": "y4Qqx+G3NWIKWVUBKLkN2v/wPqOTYedM+w3EWhHUIuw" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:UFUGIDMJDT": "zp7xXMGqaAi+k5HEFGKS4/chxQ8LDHzFAQ4i04PVc5y/fbmbd84xwD4Us+g6TodcfmC/2GOimNKAFpnpGd7YBw", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "obVEd6VEWp54pIbGlnNQlsmOVVrctttduZh1javUeKq7at7ACr9ZaBy+YR+tiXr/6XpFHTFH09W6m4Odhs35Aw" + } + } + }, + "EECYPNVQSQ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:EECYPNVQSQ": "CXiE0o2HyT5dBLti55HWg2sBYdL97QAHMPByI5SZozk", + "ed25519:EECYPNVQSQ": "2rXZI9ccsCd9twjZHqQ4PT7Z0N33x2OCS3f27nLg4mw" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:EECYPNVQSQ": "Bm+ihyYwa/FiZ/cIg2dC//489qPovUMIpSmH/6QnOQq0DyIsuosZrwt4QrG+JFbevx5ZFuiO85mlNdvawwcOAA", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "xNFJkDsLBCUiS1enufNPm2o43IM4ZM3K1o+RN3DN8SLGKPcHJGc/9jMH/1pOv+X5gOf7MnlitGHvE3gqFwoBDg" + } + } + }, + "HVATOHBKNH": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:HVATOHBKNH": "QAybL/jIElfU0oyfV1Z6xoQosD6PXOEEBiwiiQWqPGs", + "ed25519:HVATOHBKNH": "y//q6umycEYD42L8OidwM9asVC0XINIpp98y8l2pHBg" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:HVATOHBKNH": "L4yaDfWwWpuZIb2bXMx2b1pvJr3JbrTB9OUGNWQ+urNrBs2r7xBFjWdooQbBSARFrlObzIPsVLhxkTmMvl57DQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "jSaPGvL+0iVSuuzWleb+Y9QnU/FrYoGmua2YD6cPgTmP1qvDLLMPHgRoJnnjfpefUe771oGUEPcWMCC9p0RUBA" + } + } + }, + "FQXXZWQZVP": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:FQXXZWQZVP": "fjjFVSKKs8VNYKmwvU83S8W8q+mGcXcOtRMqX7oS2Ck", + "ed25519:FQXXZWQZVP": "ghpLZVbafs3hy+Ng2TZvroQXJcA/FPRlAhJ8NvNvbO0" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:FQXXZWQZVP": "arVgAiy14nUYrz1uyEN8hL5Ja0fuek0HHHkDUVXEa3BeQJ8zgy1cbN/0oL3g8uebdZXCnRUGIbHLxSRQcITSCw", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "LUjLkfPSQng2Y8EcKmp3eQUdAytmRgMlossIXCjKtRcqP/EA5zCeAZMv5iz+RQHg9N6/gSIC7KIW8kGziug9BA" + } + } + }, + "CEDQEUYKPH": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:CEDQEUYKPH": "l9rzhMltufrK6IawXSgblredG9BCbILHS6XIVc8KZUs", + "ed25519:CEDQEUYKPH": "N1fUadFeckDNJ+DfoL3sJjElJriJzYsFtVVuB4qURTI" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Android" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:CEDQEUYKPH": "ZaE5TxRuXRueSJ9uU95v7FqJplhW0ycBhQTmbAbw+qo2bSa9QQc2wBerKIDyG0RhIvQo+Ciku6L5Fr/YUQ/vBQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "kLQOYRBgIxDWunYi6+x/m0ItCqd0pVXiZUFWY1roPNYEiqW/47iZUXszzoCcD3WB3CbGt13ZZvi6UWHx5hefCQ" + } + } + }, + "RVMGEKWPUB": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:RVMGEKWPUB": "QHDRs516PqvMtTr7m5tZWn+nuh7PX965yuKtiPeaSSw", + "ed25519:RVMGEKWPUB": "+KOnFnSfm5ueob0bgzMX0dzLF5Y3AQLlCKxT0Z1Cz7s" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:RVMGEKWPUB": "aT8aJygzBq1Ru1tbayvB4SJn3Cyqn2enx68rj0ztrdWi/Usmf1y2dqNVrXUAppRrrmCryMCygT0B4fR9P6ZbAw", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "f/eQzUTvbUdtoKojVLodIPH2Oz2BNEaBSTSdvMGo0bz99sxGTLxz4CTQyOPJUSgNao40Pd0wROUpvZAVw/8nBQ" + } + } + }, + "FITYJXZPWD": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:FITYJXZPWD": "XgBCVyzq8JlbGWo39M/YJErE65pAxezahQH+crcO+QQ", + "ed25519:FITYJXZPWD": "u2BQLtO9Mg1HlI0wqHRiABEJom902w4+tmMLrglkEno" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:FITYJXZPWD": "zrfLgbTTXvZUCa5Q9i+frWN0cU/EhcG1GKwPtxEaYK1nWU9U1dSolOSbf+pdwLNOhOb7zAdQgesR0TV1LIFaBQ", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "SfByfINpqvlgGGfhPTN3rwKA4Mg6uBaqxukkOkuMT5s1yKIXkoGMIEfDMyezZ2eWLztnyFglWXqsJbE2g3zBDw" + } + } + }, + "RFLDRYHHFM": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:RFLDRYHHFM": "T5UGMtNtk9pIn8IeHyoyHU9S4WM9547XAKoO1n1VkAA", + "ed25519:RFLDRYHHFM": "MZn3M/GwyfnJe9Upy/clKKA75vOdKTgK9cSVWkwo0qE" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:RFLDRYHHFM": "11D4vcECY4Nzm/XU7J/XS6EXxqA0CUT0kYe5CJC1CSN88bhfpXIC+1W9K/g97vNMPWPkfn76NsUAOcmReCmuCw", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "sb2Myh6/+NeAaHmQfcEy81uhJJbJ/vmPlWIyZCLRekhvP9G35AtIgD7DZT6re7mbR06Ut2afsR7gy5biYD4tCg" + } + } + }, + "UWWFCCXVAB": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:UWWFCCXVAB": "P+hMAaz3lio3uS4rv/7TfA+DPUVgxzkwoEz9Z9Ojzj4", + "ed25519:UWWFCCXVAB": "6+9jhcSgseAmMbqRvbkkkRaRtSqXqKHHXS8fMw5R4sU" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Desktop: Linux" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:UWWFCCXVAB": "D+prV4rDV2a80N0s/FOXQBayG8mPCqx1CyhA0/EBarpb+V+u663pkK5R3fydvFJH59yi+syhBHestyAnqdGoDg", + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "omAwztHMpK4p7pUnlZOXfjQ5jYFUFUVS4km66j1QCIX6eSs6GTpOAEvIefavUlJQXKwOU0Z1l7dMbjEIEeeeDg" + } + } + } + }, + "@valere35:matrix.org": { + "HNTBRCSUZG": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:HNTBRCSUZG": "z5apjHg54MJL3Tgp8f2JsBl6g2nOQ/dlDIQcvKfl5U0", + "ed25519:HNTBRCSUZG": "iXWJBWEbNtMf3hNauOV7rhb2EtrF75KRs69lmpSeiss" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Mobile" + }, + "signatures": { + "@valere35:matrix.org": { + "ed25519:HNTBRCSUZG": "gwfnDwW8ZLjWL8F6qdMyP5Q06b+jTJGA4Dz7PSDKHsQleLQn288QxO2jHUQV7mTN3m50JM8r5f5dbN1vBFZ8BQ", + "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "cyKgpGUSjbyShg9J9MQ3MlgfbHh2PmNBlmdR4oQrvjHyXQ/+XuuUDgb2QES864hCLWyakd8B7Cr4Ugv9rMCKCA" + } + } + }, + "OVEFLOLOMB": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:OVEFLOLOMB": "5WlPFqhzsObznutZlEVkVOvXeu8J0fkX2q1Zg8fgu30", + "ed25519:OVEFLOLOMB": "R3G2iKCPN0wlwLDivGz+o+dB30WMZHrJFV8SHhNpJgk" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "develop.element.io : Firefox pour macOS" + }, + "signatures": { + "@valere35:matrix.org": { + "ed25519:OVEFLOLOMB": "D3gVdIUr7fe+Z/TnDpKysm0uI3BnRabqP/ODFqg469+/AHrEx3x2yHD6PcFACg5uCRLjWsSLbkGmcTNoWnUnBA", + "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "WujpKvgphnN4+3IMrDdf7NQ13ayuiNG0hX9EacbOGBSQ0URKC4fPYCNQQxv+c0DSaL65M4brt/gz2+ySLrM8Dg" + } + } + }, + "VFWIEEOYDC": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:VFWIEEOYDC": "mKzDEB40QgdCV+Eqh6r/neYShY+xHsjXVfKo4AL93T8", + "ed25519:VFWIEEOYDC": "6T3fYcHsxVdHXpUflXYTNWklrn8OVww2BV/ws+f8yqs" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "develop.element.io (Firefox, macOS)" + }, + "signatures": { + "@valere35:matrix.org": { + "ed25519:VFWIEEOYDC": "/qa36l9zlpclztP83hpXs64cO2cZlaPoftywzbo8GHZT+OM/btZaoWb6VbhRdO1OlLL4cYO2Krn8KB3ytVngAg", + "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "igzfPgivUJgHv/4y9cBgIWuw0G8NfHACOmXXGM3U0FziczQfmnjwhzFydtolLR0BrAyBceqZH5/QezcavSuRAA" + } + } + }, + "TTIMKYGTHL": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:TTIMKYGTHL": "AFLbAuQ/SbGNXK7UTyaAGIY1/dTtyFokr8w5cIW6V00", + "ed25519:TTIMKYGTHL": "RWEM5ahPUrv9fTBjfLuQdl/j6q5T93tfq46wN9pwBDk" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Android" + }, + "signatures": { + "@valere35:matrix.org": { + "ed25519:TTIMKYGTHL": "2lvun4MtZWW/C0df/EBEyS4kAPdHk4IRItSzXSaDembedGQisVXLDf0tOWVre9G1YDz6y1nYtQ+upnQs1NxSAg", + "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "0Gy2haj8MiJFtHK3fDQdyhICy8os5sRVrT1Js1uu41JFQMO7Zpw2nCjm3ISV9tphbsmyyIusTinnRXreM77xBw" + } + } + }, + "NTUTBPVWOO": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:NTUTBPVWOO": "NglEm4lVqx+7EXvQGdSOpbZeyl0n6peMEb6j0KnrXxA", + "ed25519:NTUTBPVWOO": "RXeYWVZFVQlQzS4X+TazbwLLM4EOJWK5divj9ZPu7Jk" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element Android" + }, + "signatures": { + "@valere35:matrix.org": { + "ed25519:NTUTBPVWOO": "8XWVlOf6kp3tZdaWfffmx7bFa5SjF4edqd/0VwoI2IxhRmLMn8aiy7YmF1CLE8F0OVwE+NRXQ0HaWOQyJCZ4AA", + "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "A+qoi21V4nGKDqD9jn0iJOj812658iXtj75o+MJCM4lmK2mVpXoTYS191Az1DwG/s0O4y/xT8RpQmbEXjBn+Ag" + } + } + }, + "QMTMLMXPNZ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:QMTMLMXPNZ": "rZ9e67vd97LrsWS0UrkPwlQ5Vo0Oh4Y+/ZvSbgmQTQc", + "ed25519:QMTMLMXPNZ": "RDrbQ2yhNcSGI0Km2pfCS8LaR6eOSvYdhzLfJ8Xsno8" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "ElementX Android" + }, + "signatures": { + "@valere35:matrix.org": { + "ed25519:QMTMLMXPNZ": "xAWuJB5vin7SmciOB6Yo+Ti0/q/wGNELdCSJS43LzJjKC2d+y+t1cOuDpJdgiBlvbGTX4M3MG86JdhLl6kcgDQ", + "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "E0j77t//ZnFbwO2C++hp1mp9OUvKYFxvtH6MJnUMo504tyvOoBH+/lu1NY6VFsXvZbJeV5wz+wt+8T/yZyOCCw" + } + } + }, + "ZEKOJXJSTH": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:ZEKOJXJSTH": "s41xFeKe3NKtqbwog30++kfOvfD+kbJciTvdA7m9Jj4", + "ed25519:ZEKOJXJSTH": "qiagVCMwimpeidMVClQKIW1NmkM+foCTy8xc1o1vECM" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element X iOS" + }, + "signatures": { + "@valere35:matrix.org": { + "ed25519:ZEKOJXJSTH": "g2hEJj/redAI/YRjw7X3NOt7sAn1vITX9WMvnaOs2vUpAiwPbnehfvApQLyl217FNpbsu2V/7WDLrfo8D3YtAQ", + "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "J3NKeyYxDoCvSnkwfRrcL95T604y/hCTMW4iqUcpI0A/5fNiVsIgB47neGoWTtra+H50Q0ulcnh/6QsW0ctzAw" + } + } + }, + "WEFRZHKIQS": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:WEFRZHKIQS": "Y6FfL8ap5ezZBSOx0J6k32shoEqo+SxjdfFCUIqZulg", + "ed25519:WEFRZHKIQS": "BPiMvubk+axJmcushqtoM3MO0giGNR5ejQPlXzRItYM" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "develop.element.io : Firefox pour macOS" + }, + "signatures": { + "@valere35:matrix.org": { + "ed25519:WEFRZHKIQS": "ZHoFsiHNNgos1Px3yTMMD/HHIs/y+86uwmeYeFWjd6Ofr8muRqADcwCPcL8Chd0mMJHKwH92IZvptlIA/kbICg", + "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "RwLH0EnZy/A8jCU0WuMmKl03IgMXU3v8FMQxKi/KMKVAfOtEY4n8Fj7NHDhqp2ZeB+M1AY+vHxN86rFrhSB1Bw" + } + } + } + }, + "@valou35:matrix.org": { + "DNMWBXKPMP": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:DNMWBXKPMP": "6842aI/O/ma6+IshHxq7mm5p2WOKbMjeP6omOPOgCjk", + "ed25519:DNMWBXKPMP": "cPWAGNiRHuACjhb2ca0bgTZqg7LLnpUajDAXIIV5ZhQ" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "develop.element.io: Chrome on macOS" + }, + "signatures": { + "@valou35:matrix.org": { + "ed25519:DNMWBXKPMP": "ZtfydeP9fzJSSsCTZMcCjgPGOQwkyfDBPmyM9wVACqff6m9lyx7a1tmjneahTI5hFaXa3NHaiq2bMJ2vILgNBA", + "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "JndS8hFve3LfSqmJbM2NQKJ9LlTSGbsCeoOXTmGYlnA3oE0V5FJE+rKdDDKzp+PH/JlgKUdKBypEygsR5LGbBw" + } + } + }, + "UQOMVNNGKO": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:UQOMVNNGKO": "USI7cG9J/fdfBBkAw27JJawVP9AyNuGLsSOFdbQpPSE", + "ed25519:UQOMVNNGKO": "sXHAYdjzVeONrcCVpfopJ8P1VgKfliaxQlsHZGYgZAY" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "app.element.io: Chrome on macOS" + }, + "signatures": { + "@valou35:matrix.org": { + "ed25519:UQOMVNNGKO": "DrMWZKxpveM/6FFDlJLnLHFMQ2Pfiuga6Gqk8DUXLob/EYfa/+pADDNTllzyHSP8zUK9mkx8G/SRkXnNO3F8CA", + "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "X9td1kd76LdIEZTf1OexHFbPAFnQ/zf6UCN3SVEjIpoDzBUYohc3+HADdS7e2SuAzBnrqvB5se03KqL55HpWAQ" + } + } + }, + "NZEUKRXQMC": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:NZEUKRXQMC": "7GG0xijodo4mbL9IfMpPqYna4SE1Dxym9zJgqfnHeSI", + "ed25519:NZEUKRXQMC": "atyjWbWoU1a3gThRfUG6ZN4cQSiU+t6pknBLm2vZh+4" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "develop.element.io: Chrome on macOS" + }, + "signatures": { + "@valou35:matrix.org": { + "ed25519:NZEUKRXQMC": "Q6xvAbiUOZCotE5mhNJQXsoxKn5LKQpG7HKjBgg7ZQVwvyCgVOl+CZ6/urFhPUvuA6ZRwskYSTWobW5V8vP3Dg", + "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "UK5IE95hf+26e1mSbop2DL2c2zyASrHNVxVmDnpM1MktJ/JxTenW8CrhMKybf72x1qXlGSKWmmHtI1u3wT3DBQ" + } + } + }, + "KJQRGVJYFM": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:KJQRGVJYFM": "oddJJKY2QmwhoM6kyBVDUyjoDceco2LaknWavSBWjCo", + "ed25519:KJQRGVJYFM": "rlKVGw0h6wCQcFgWHnvNcjxC+0XEVrrVO0006ajeFfI" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element - dbg Android" + }, + "signatures": { + "@valou35:matrix.org": { + "ed25519:KJQRGVJYFM": "YYO3sWEwUUXohWN02cdkfW0IKPbjtn6X5ImGlthimEli2ZCnkKLXD0hd5gChq7jwWP78dZzI84ilcfbGpGrDCA", + "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "+XALgC1AV2QkF0goNhoAcoj7P6nf32mTvjSexI025+YVN+ZYzrptIO0+lAoETKzxVTKYX0jQPYSf85bmkqfuCg" + } + } + }, + "VARLEULJHW": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:VARLEULJHW": "WTEctJ3c5nTP+KLS/XtZRXOB5dslpljvOSG1mujGJgE", + "ed25519:VARLEULJHW": "3qnPW4dpPBQVTmlRkHg3luWhfvMs01OKmRg1iqLV8HE" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "pr10080--matrix-react-sdk.netlify.app: Chrome on macOS" + }, + "signatures": { + "@valou35:matrix.org": { + "ed25519:VARLEULJHW": "wVCbKAofTQQ64qzXPdEBByqsqduBRCKYZXqJcLvpR12m42j4OgqN21l6DUDdLrjHGRSlf6Mmj/8YUEF0LkXQDw", + "ed25519:YC6EIJpSJM1qC1B7Q7HMLSE6SiBxN4jxSOnxrhVCgQA": "NmeAAabHnHjSsycQ8Fn85B3GOYLRBB4QvGO9dtXzi/mvxp0qMifCL4tgXeFHXFuFNnIiE9F/3eLoILXgoZFqBw" + } + } + }, + "CVLOWPCSUX": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:CVLOWPCSUX": "jq/Xl9TNixlI7IMejX0RU1YdE1nlDj2nU6bKuOWriQA", + "ed25519:CVLOWPCSUX": "tV2mHKPsRI3cdmnFiH7ojeO8Xe+BEwEype138CUVRLI" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element - dbg Android" + }, + "signatures": { + "@valou35:matrix.org": { + "ed25519:CVLOWPCSUX": "zllIAItZvyTTodG8W0siq/g/fLivi1veEIGk7BoaITUeSzVNxMslJqd94nUg2pzlHy3R8QSI/3ahaicvGd8rDQ", + "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "jO60Ho0cRdftIBA33kN9UVIlX1AgmzTOMbKlZHW6LS7G/FLbAPbLpBaduo5Wpq3QIJi/FQOI3FU9jGyS753EBQ" + } + } + }, + "JLGHKOMWZB": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:JLGHKOMWZB": "yhRw2EorPzpqzTT7RPIEy6nOLfZyu5lwVJhQwYH7JGo", + "ed25519:JLGHKOMWZB": "jVVuln2ZwL8jLMnm0YGq2OkOUyFZTN+Pf5BFH2+LL3s" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "Element iOS" + }, + "signatures": { + "@valou35:matrix.org": { + "ed25519:JLGHKOMWZB": "n2VwWk5tLe3LH4YQcnVWpFGR9RW5MkZ4DBTSTKYouQnMrpZnQJ4ES/bEAHpR1zlzJxX+bQY48HCE3QCI51eOBg", + "ed25519:S/mXefzErTisv9ORx3exK9KOUo3NDexwXuhI6pUdwFw": "D/Q6hzMocoFIh91ILl7JIue3JtQ6qJtzQ76DQjVnRgrEj0qPtgRi1BUA6dFySRjs9JrdGTQKdq1uUck2XB3kBQ" + } + } + } + }, + "@blade:darkness.services": { + "FWPPKQYTBI": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:FWPPKQYTBI": "mpDdYm329H6lL3xCmkG49dmEE/QtpYuN7oEdg7btMhU", + "ed25519:FWPPKQYTBI": "1WXoADUnYzPzzkx4C1IatFsMcggU9ZRcMJKZdMMeK9U" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@blade:darkness.services": { + "ed25519:FWPPKQYTBI": "9cbTum1vaSPTNYwx00Wdsrtu4ybw0GI0Zjlo4CPiJOsxDudrRqbxwTeB9h+eUNtS2kTFTQGII9garjVt3KpKBA", + "ed25519:SDq5Mf0nmheZU+rNyApv+CqfofE/AMXbFXPwO7zzssI": "OIdkskHLkKgQCSekzrjpVBbCFUXmc+3450o5KBxoTRV9k5v+XnTBl4Jw0ctkdkEtkNwzp6pRMdTltATO6u3+Dw" + } + } + }, + "GWVYMPGDDK": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:GWVYMPGDDK": "fCdJuty52TzRWKOb/JXCq10mkBSwaG1QWA/ERmE5miU", + "ed25519:GWVYMPGDDK": "IbRy/oDeM4FcK3H5g4QA7+4xQFY1fd0v1D7OwkdMGnQ" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@blade:darkness.services": { + "ed25519:GWVYMPGDDK": "xRihEAOaaMwiR3bcgBPc7nRYTuH9AwjLz7+3YlyY5ObBU7ato3QaGvQ4BB0pO5KS8biT40AssfpeFh6pPdzFDw", + "ed25519:SDq5Mf0nmheZU+rNyApv+CqfofE/AMXbFXPwO7zzssI": "aL79vAsgB17qxiKRkcGSo2fKT1qfvYRcBEx6rwQdcwN9L5zO1bQrIrlA8xSZSIx2WYE06Uh/YiNtd2Ml/tBsAA" + } + } + }, + "KZZFYVCTWS": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:KZZFYVCTWS": "dQ6Lh4Ayv9fx54z9u0m9DbfrF0zFUcy10tO66+yBPxw", + "ed25519:KZZFYVCTWS": "A0LNF5drgES8owV+zeo6XrXjbyZ4RrH7hZGRmFrlX+Y" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@blade:darkness.services": { + "ed25519:KZZFYVCTWS": "QjTKQHkM5GZMfqDU5shYySC/6+OngW1TbRSQtmS7vieVkGkUDEUtEFTPWxwXOn0VArYq38t37oksau+2+0qjCA", + "ed25519:SDq5Mf0nmheZU+rNyApv+CqfofE/AMXbFXPwO7zzssI": "5bkRrJpzecJRQTOrvRoLEI3uObKwvnkPh1CZZwZ/GFSROKHNNgxfDbZvRtF/LBGVMIJkOun3Qjkg0C7mPWuwDQ" + } + } + } + }, + "@thenamelesswonderer:thesilentlink.org": { + "DYMTLNUQNH": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:DYMTLNUQNH": "EoOIGrUF65hqzPrYPDrdnp4o4cfiDA9qqZbdrUb8N04", + "ed25519:DYMTLNUQNH": "fBrOZPuVuZ1t2eMBY+nHDPegH2+LY7TmkJ9+d6LDB/Y" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@thenamelesswonderer:thesilentlink.org": { + "ed25519:DYMTLNUQNH": "7AFzDjj/WXKdomiJ4ENfG1eDpN6AAL4qK3NisHiowmwXXVV+RlQhmO1uVtnLo+qNAkx1DCd8WWy6DOweu7HgDg", + "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "Qqo+Ehja3D+EHhOhp2RshNGZTFjcfVMEpuXox+my+u4rZTB6zK7/rQ2YxxVGRRPFfW4BK1eZ8AS03/JvxAhcCw" + } + } + }, + "FNQTZBHLII": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:FNQTZBHLII": "W/9ikoZ+QsflawTtxPq4HJ0kIlcjZusacQdoMp9T/FU", + "ed25519:FNQTZBHLII": "mMKUane9dhsDHCHoaAN/zUymyVl6XCltEl5wE68PGvM" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@thenamelesswonderer:thesilentlink.org": { + "ed25519:FNQTZBHLII": "eIlyWfI/Sa2NvV1X1+3IrvBki1pdUbncbEJrQPpXjabfFzKwJ3r208nEnycPc66euEnerbcaG/7GD3ZqgSm2AA", + "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "63+8f9p1BRpg46W99pp6zcpmQuV9YDLTi2MOY1dWN/bCbNN2t4hYIVaGjMeLA2LiU6+avdBDP6QpsoDS8wr0Ag" + } + } + }, + "GFWEGLLTGR": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:GFWEGLLTGR": "r5ri9JjKE7uoPUgs6aCRbiiQ7uzyyV6Eeo7P8FIMGQs", + "ed25519:GFWEGLLTGR": "mCnKe06C9Pt8oD8z/FlWMb1TquVJdfkcOaTOK1w0CZM" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@thenamelesswonderer:thesilentlink.org": { + "ed25519:GFWEGLLTGR": "5XMgKmKDFx/dn6PR/iHRY0ObodTlolw9C6JHeN5rAX8tQm2veYrkHzJcZHiVlr619V2Ib+2a7jr/Rpzk1CurAA", + "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "72fFG+ernhwR3xXzwegcwxCUXT+fP7J2F5nWtsPh/wEhAV/amYV+upsnzRNzMUWxBXO8/vufN1cvhnoQSeTZCg" + } + } + }, + "GTQOJITBXU": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:GTQOJITBXU": "HaKznFaTBGGOsQ4bIZlOjPJaMiCXU41QPiK5UhTOMVw", + "ed25519:GTQOJITBXU": "lkQfYto+GXfREbzLzX7U8pqYLoVTTgR8/BiLBoBBbL8" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@thenamelesswonderer:thesilentlink.org": { + "ed25519:GTQOJITBXU": "y7LmYSeEx7sMMPlia7O9GdmPItJjws20x0FUyVAD8tqnPMAw0nLucVOij4TsCHnPeUnWg/DFABhvM2RShMXwAA", + "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "Pe6fQWnBFO9G4YlS1pu7BExZHxkLhOwrbIpHgUeT3qc7TMuN09iE8L+M6jecE/CtD/KxvGrzcwZg732or3aiDg" + } + } + }, + "USFIMNFBGP": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:USFIMNFBGP": "cUtDm+vxw8pv16E0gCILzGq7xGotuLDgrXVt/NzpUgU", + "ed25519:USFIMNFBGP": "SErkQxsVNUMSTwiHU8zg0+TurwCC/hApoX4+8M58qzk" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@thenamelesswonderer:thesilentlink.org": { + "ed25519:USFIMNFBGP": "HgP4Bu/QoB7bzY6dhnN+4Hsch6SSH6tU+PzUBFxPaC7sRf17+srfUkBM4nqcWFzVP3fgSMxF/9T1hPat6nTjDg", + "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "sY6hstMGh+jP0PBomFwiAo5tvQ4bxqtaltgeNqo/RB2CMRt/S8EFequMEPxN0o28joTYBLHdJOPn2AgyxpIvAw" + } + } + }, + "VTLPDNYGGT": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:VTLPDNYGGT": "Je2Yu7uMmvRe3sExUnopq5qm9iVBet30qseZ/dBelz4", + "ed25519:VTLPDNYGGT": "iPEA4BHFBNfFHt/rSOz9LOb/LRfPxaGimE1ddk+OUT0" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@thenamelesswonderer:thesilentlink.org": { + "ed25519:VTLPDNYGGT": "5telU5b8xTUblSdFvkjqbrErogr+JWPTkiAXKAqjDQ6QW9Q4M9s8n0WUavmm2kSSU/gQ0vcmw1CxNZ3Oo9ioBg", + "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "jihdy5Mlr63sK/rQyu5CgHmrWDiDXlBgpAGSzZDfn9O8IAbocTJIe5jpv/QPLx6a/+GlDtWsz/2r5QzQDKbTCw" + } + } + }, + "WGBVKPIVBX": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:WGBVKPIVBX": "BwPFLr/woDgpjlkSdmobeXfbvEk0xuThQdiiDdXXvn4", + "ed25519:WGBVKPIVBX": "zsntONDO82J4ZrSwI621wRijdcJ4YOguVhjWjQOfcrs" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@thenamelesswonderer:thesilentlink.org": { + "ed25519:WGBVKPIVBX": "epDqy5rZBJWM00eslCVLab28UL6SOGS1K51JaX4Po7jWJC19rvuh3wnY2NI6o0MGuxpRNsY+1IH17cfHTQUECg", + "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "mXjgR30WA769KQY34dmvbjAPlAjf3oIcPvYAuDFDZ4yNw0DJaDl8chMf4G9wSvW+sLBAfDKCIbCPdLjSDmNIDw" + } + } + } + }, + "@mugli:grin.hu": { + "DVSDJHUENU": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:DVSDJHUENU": "JzPcaigdu8X9V4cQrD9kUtkLilW9xUxqDyaZYfYAiEY", + "ed25519:DVSDJHUENU": "9b5Z++2MMhie8QcGR1482S3xnTaRviDOze4jNVVIPXI" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@mugli:grin.hu": { + "ed25519:DVSDJHUENU": "ovA2IrQ+wHEYu491YgzSFaKVUEoIMQvJorTww6cH62CFPqLxkebvXNa1fmQivRUwdgto/mECyLrAhwMjasijCg" + } + } + }, + "DZLSPKNQRC": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:DZLSPKNQRC": "5Et60qTTdS8ooYDAAn6n1GTxLofUff6bO7Zl/JMZC1I", + "ed25519:DZLSPKNQRC": "6Mt6qgcuPG5sxNAScRzVeP2QBH6KuTzyJh2ofNPkyfA" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@mugli:grin.hu": { + "ed25519:DZLSPKNQRC": "UvR4C1+mkuYiY/0VUqgFiANSVn6nG9Sts3Td6nsFfii4R42/LMBN+9HV72m14mWcpRM1w7LY/Chr2F0nru7fDg" + } + } + }, + "IPSXHGGYWH": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:IPSXHGGYWH": "X+bZZ3aB5gX5i1EBn2UafVINUYW4k9tBKujR0cHY8xw", + "ed25519:IPSXHGGYWH": "LU/lRshKi0hnV9E8qSTUKDlwmM/DFKG0AszFofmzeO8" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@mugli:grin.hu": { + "ed25519:IPSXHGGYWH": "DhsKFbCWbdIsJvTBElNlf9GsUwwUY65G6V3OZep9bcAXCSAYVVnfRTDybchlGmvraICAgZ9KoWtswJrw/5pKBg" + } + } + }, + "IRFMWEWBTD": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:IRFMWEWBTD": "nUnyWbVhLwH1cDBigQZTGG3Cwojv28iNGikim/0RnV8", + "ed25519:IRFMWEWBTD": "1AzVNGlbaZfATAD/mMO0Bu2MrHHmfrUld6Bn2RCVZ/Y" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@mugli:grin.hu": { + "ed25519:IRFMWEWBTD": "6R19n/253WSh8bJDUujnY+UeeMfZpyYcxn9hvwPhyh7nyoApsanRw098Ft4PD1iz9FDIPul/tK014lEpJjBFBQ" + } + } + }, + "KABUNGDKWQ": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:KABUNGDKWQ": "dl4ygF4NbLpDkVOZZBGYz1Bwj7JHk7GVatDT7qavo0s", + "ed25519:KABUNGDKWQ": "3Mk3r+gQEPfGonrj/i/6UfDbBtK5WgLVI15lh3vdhIU" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@mugli:grin.hu": { + "ed25519:KABUNGDKWQ": "MclYgShLAr2NXIC4W3eRqIkWUSgsK5bjVoaQ8iZJ3+kSMdsloHt91/oz5tHuSAuDqNwhc24EO7OWJSxL/SDLAA" + } + } + }, + "KGDDMIBMUO": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:KGDDMIBMUO": "i9t/8NRaPNoz47332pw3kpG1NogbRz/wPHoeWcKd23M", + "ed25519:KGDDMIBMUO": "ihZ3n68rHCj5yKMlDhINN3J2H8uP3q8tfCFBSDXwRzc" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@mugli:grin.hu": { + "ed25519:KGDDMIBMUO": "zzDk5Pz9FVb7yGCpnx6nJhRjwbu6IPJ0Pbx4Eekf81EVn3DeOzq8XjLmtfDf6SeKsaZ9RIW4Je/mjqwzyolGCg" + } + } + }, + "KMCYCEQCMK": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:KMCYCEQCMK": "yjRmuOthQhxU8v1pDNbBNY3tI/AQUKnxyxkLAbs9ei4", + "ed25519:KMCYCEQCMK": "zm2P5V6e4osJB9X2Qf76IewUCayBo13wS0sqRA/y1DE" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@mugli:grin.hu": { + "ed25519:KMCYCEQCMK": "b60o73GSIOHs1bJ9ewhg3SS3k0tiMKg9+0bYGZnwzc/3gqbxeOcb7YF/AcJCRoIToi8fiBjTtW+1IVLhrUQVAQ" + } + } + }, + "PMUAJADLAL": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:PMUAJADLAL": "s/hFuk8MJX3pT4ROc4WohFyk6w0cZiamERhkyjx3YGE", + "ed25519:PMUAJADLAL": "snjEd/96Sh6sI8wTmDW++gxZDbNUfKqDTco2w4B8Jv4" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@mugli:grin.hu": { + "ed25519:PMUAJADLAL": "qsWHkSm6miBW183h5sFGTMXVI0OuASfgqqRGTTpbhczbS/xIJyMNmk3ixm9OvVPbwyD0NuiBFqG/RKxyN4jLBQ" + } + } + }, + "RRBHEJDHWT": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:RRBHEJDHWT": "0e6EEjrAoxIw/DZKERXUDLWEsoA5peBFB0s4/Lld4iQ", + "ed25519:RRBHEJDHWT": "DFCAjviK/j1NUL58rqfgIh0XqEDSwCOH90WDEr9TygA" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@mugli:grin.hu": { + "ed25519:RRBHEJDHWT": "x7QSFl+3QgPHJhTe1VB94VnXTWhJNe5mJ+1kPfA2poXrqQ676a6EjpbkKC+NJ0mWVSYAH/ZVApKqDfV8VVpMCA" + } + } + }, + "VQREGALMLU": { + "algorithms": ["m.megolm.v1.aes-sha2", "m.olm.v1.curve25519-aes-sha2"], + "keys": { + "curve25519:VQREGALMLU": "0NwRhYAFYprVgLHUFPTQa2sSg4f9o2CKggc+Mm4BtVc", + "ed25519:VQREGALMLU": "cfZplvgtQwUA01jQwuDOUexh8kn9ZB+bjfzShOEYqWI" + }, + "verified": 0, + "known": false, + "unsigned": {}, + "signatures": { + "@mugli:grin.hu": { + "ed25519:VQREGALMLU": "qR9qrimso40BP3zT5CLlepznuetUBtSMTndir7hW2jadmFn5wFwre+0FDHJqwXKNcu/VK+s/O6iykCdVzDRsCg" + } + } + } + }, + "@richvdh:matrix.org": { + "IUYUDKWEMN": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:IUYUDKWEMN": "XIHKG94x3Ht82rKysAQTltL41jxqGqiKT+rw4BtYWx4", + "ed25519:IUYUDKWEMN": "3NW5D16quKE7QO/RBBR1JynIHrgP4Mqg5JvP5cQfCh4" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "develop.element.io: Firefox on Linux" + }, + "signatures": { + "@richvdh:matrix.org": { + "ed25519:IUYUDKWEMN": "4/ZACkzKheqOREM8rsvsMoVVkzbVPlLpWHARp/RWR3Qy91BhVz3pbDmzgenSCvrF0CRQPD1OHpg6cXHZEHDkDg", + "ed25519:GrYuWJGHBHNSpUyeejbkZLhm0Iz3prCuXb5q9IZYT9Q": "uPnDwHA/9Tv9IBN5F+khBVgpAnAey+tstEwnrkkrxK/aAb/MDZadxuAS+g+VgGJjZ2Ph8uM4U4hIhEy0VFxFBw" + } + } + }, + "NPACWYDFUF": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:NPACWYDFUF": "oxnPOPHpTlTRRK8N/WgTpsRlSVws9H2LAJLXk5KNmGw", + "ed25519:NPACWYDFUF": "VajcwGFNChT/umqdFl1D2CZ40rnoB82J1HcspUBxbbs" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "app.element.io: Firefox on Linux" + }, + "signatures": { + "@richvdh:matrix.org": { + "ed25519:NPACWYDFUF": "WB78DTtzIyMsZnJnZKIJh3ZZ07l44aZXmLL6UlVibyo19awsVh9lv2kXanMmMGW1/Ss4QLGGtD+qDiHJE18mDg", + "ed25519:GrYuWJGHBHNSpUyeejbkZLhm0Iz3prCuXb5q9IZYT9Q": "r/ZEyRAoeMjmZLvKXE9U4hpa56gnNAIyo/cIfocSYZ9Ar4OAVt11t/uGdDmIgB1CCBlHp3LcJE5H6Z3x9/EpDA" + } + } + }, + "QBMZUNYVJB": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:QBMZUNYVJB": "pxMU24GwRGJRCRCU4FhjQmIdwnbeGcmBnW/koM4VMmI", + "ed25519:QBMZUNYVJB": "09gboVqN845h1Y/X+Y3nz0oxfURx8WveHTXYM4jubBc" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "localhost:8080: Firefox on Linux" + }, + "signatures": { + "@richvdh:matrix.org": { + "ed25519:QBMZUNYVJB": "1sNS0sVt73NkHHlLgN3l1kTbnnaLIIWmiaPUYBKn8i3l3TM3isrnvERWxQHxRhna+JUgWnIl448RNxBduKXXDQ", + "ed25519:GrYuWJGHBHNSpUyeejbkZLhm0Iz3prCuXb5q9IZYT9Q": "Jr++q1kcIy6jgAz39R236s5PyedxdnnQejlQc77sErZ5OyrsDR4wEdOhCarG2tLoxGmVmwbJmyXJP9WvrI60Ag" + } + } + } + } + }, + "crossSigningInfo": { + "@vdhtest200713:matrix.org": { + "keys": { + "master": { + "user_id": "@vdhtest200713:matrix.org", + "usage": ["master"], + "keys": { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI" + }, + "signatures": { + "@vdhtest200713:matrix.org": { + "ed25519:MWOGVUTXZN": "stOu1aHbhsWB/Aj5M/HqBR83QzME+682C995Uc8JxSmmyrlWmgG8QrnoUDG2OFR1t6zNQ+QLEilU4WNEOV73DQ" + } + } + }, + "self_signing": { + "user_id": "@vdhtest200713:matrix.org", + "usage": ["self_signing"], + "keys": { + "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": "lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k" + }, + "signatures": { + "@vdhtest200713:matrix.org": { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "HKTC7NoBhAkfJtmemmkn/HvCCgBQViWZ0uH7aGPRaWMDFgD8T7Q+y1j3FKZv4mhSopR85Fq3FRyXsG8OVvGeBA" + } + } + }, + "user_signing": { + "user_id": "@vdhtest200713:matrix.org", + "usage": ["user_signing"], + "keys": { + "ed25519:YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8": "YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8" + }, + "signatures": { + "@vdhtest200713:matrix.org": { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "u8VOi4IaeRJwDgy2ftK02NJQPdBijy8f/0+WnHGG72yfOvMthwWzEw8SrRSNG8glBNrfHinKwCyJJzAJwyepCQ" + } + } + } + }, + "firstUse": false, + "crossSigningVerifiedBefore": false + }, + "@richvdh:sw1v.org": { + "keys": { + "master": { + "keys": { + "ed25519:93fB6y9SJ3183h6zpYjImjRE8om8X01O7Xjl7UkcHeo": "93fB6y9SJ3183h6zpYjImjRE8om8X01O7Xjl7UkcHeo" + }, + "user_id": "@richvdh:sw1v.org", + "usage": ["master"], + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:OHWCKPNXUI": "R6Q/vJ5JgRWpgdLLlglKnLbsyvuM8YZT/2juwlf3eCOqoVgN0qbOfidPvesjG458hulKDMQBbLliq1H5DOmEBA", + "ed25519:CTTIZIIKBG": "J0NkdUHIElFPHmlKw/nWIFQe+I4aw6Gm4LbyCQjX40SUf9x2kX/sYtOwph0yQCbrFa72liyXLAhoLTBYUjPWBg", + "ed25519:UNNTRAUEWU": "oQglrJggeWQB00qOqa/J8MhZ9NxZsoqK0oV7rwm2qO4d1lwL3+yrG7DNeGbWadSGT2iAwSlG38I/+yKib84OAQ", + "ed25519:AYWXINGEPH": "20hJYcmWElAsG74HgUggg61pcraBUk3W5XQvjWGhTIjXOnNKB+tp02ztqD6QySYea93YVnin09thd4o4ZTIuAA", + "ed25519:IOTGPIJVCQ": "dlgiXcYZywBy43N5Si9pUQKISfAlcy58XygG5iNS0usepf2xcOPaNcKgJ0vSyyJD0hbeskCopJqS4TZYXfrLBQ", + "ed25519:XXIUTXPYAZ": "wa2qhdKO+9/QnoGMKIFNsz4R+/4Azx1EnEgU1TzN6ziI9BDittt4UTnYhREQ+sNKGDpkMKk+DpaBmVprE3DUBQ", + "ed25519:YVAIKEOEIW": "PFP4O3aZc7EMc3sGrd1dMa8OOilySoSIYiqfecwkOFicsqr0xum/lbDdmp5j0beGnyyeYeOK8mmp2l9E964RDg", + "ed25519:PGFUUTFKQZ": "PKF/JpHFl/VVTHiwmkS2r3mpzvD7xT5iVuLkENPBGvxU575c2vZ63MqCbWzdo7Jc25sWpd62D7H6UxKl3AmkAQ", + "ed25519:FXPDLIQYHN": "dQapHPmhdwFAGAlQmd2Aoh5WzkO7/TLPjfj4Dbupmfm1EL42yMbSOD8kTqSa3GmnliIQy+Sgi2rhQ3SlIMsMAA", + "ed25519:BSTGPAQPJI": "wWVHIziZvWK9+bpStZ5ou33AVewil6IAvkNr9ZLUL24iYuP/DEr1WWJ56njoYAQMSzqnSeaeee7YpGAyxV2ABA", + "ed25519:SBXXDQMSKE": "LP29vksZ3kT4th27LxLJR1zJMOy/MjNg1QjFtIkWtKJPkHB4T29YuSVQwPtUHcq4FDEdJGQZprZRRY9TwWwoAg", + "ed25519:NNJKPTXZQE": "8jQOZg5nGO2bQ4HLvVwX5daOYV/2e+Qe60uJaURosEgLE+bSzskRzA16Mjk0JMK5LE9Yfjq4nnpYyBEKeSBfAA" + }, + "@vdhtest200713:matrix.org": { + "ed25519:YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8": "a5MI25r1eAA+JCFoIGdplPNLHsWLQ0f8fEqb1cS6flngk9DUzHpcQrJ/Twbz+xhh5s1SNAtS8cqslLPb1QIvBw" + } + } + }, + "self_signing": { + "keys": { + "ed25519:4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo": "4CDFPgvgQryGrOAGLlscaauGQPLTLmlYKP/8VgLHzEo" + }, + "user_id": "@richvdh:sw1v.org", + "usage": ["self_signing"], + "signatures": { + "@richvdh:sw1v.org": { + "ed25519:93fB6y9SJ3183h6zpYjImjRE8om8X01O7Xjl7UkcHeo": "c+SOp1E3TPNWP4HChK/yhK0yUc/AfrPtDLT3II3i5PXjj0SqSk5Mg8ZDv6zZrDkxvvcLazXTdvbaaiiaXxHwCA" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": true + }, + "@kurt:roeckx.be": { + "keys": { + "master": { + "user_id": "@kurt:roeckx.be", + "usage": ["master"], + "keys": { + "ed25519:6rK7GvZPdU/g+1yAgEzgUlqe/vQsTzAFflaD3DeRQTc": "6rK7GvZPdU/g+1yAgEzgUlqe/vQsTzAFflaD3DeRQTc" + }, + "signatures": { + "@kurt:roeckx.be": { + "ed25519:AVMYMXYMJA": "5OFmHiuklmmNo+mI/Cwsk7v5Q4JdnbI0yLN79LKKxyP/Lxp0Gel8NySgvXB8QdCT+Ucn+nXRUax0Jc79gYURAg", + "ed25519:JAYRAJMNFC": "FnXxrN2pCS0nKl88GO504koPQZQyaBlsZUPAGVxRk+BY1f/MaEn0RI3qCOB8GlyLeYHohSr59R2T7EnZi7FCCw", + "ed25519:LUBZRYLJHP": "/elAzpP4zl0iClbrqU3qfJggodJ2KVNTEwy7dlnGGf4nfeBfJK1xxP4rzKtn344/jo1DO6dxAiuURBeaNHHyDg" + } + } + }, + "self_signing": { + "user_id": "@kurt:roeckx.be", + "usage": ["self_signing"], + "keys": { + "ed25519:i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4": "i/sBKRn1S+rBP3B4sLoNwgyjVxAGp8aP3kSVoixecZ4" + }, + "signatures": { + "@kurt:roeckx.be": { + "ed25519:6rK7GvZPdU/g+1yAgEzgUlqe/vQsTzAFflaD3DeRQTc": "eISkB9G5tXwrzGuam6koQHHlXelj9O7D3ZgLxC3ua989Vv5TMTFRUoLnpYnyOzhiiLFjmZlb8FhgLlYqRdovBg" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@grin:grin.hu": { + "keys": { + "master": { + "keys": { + "ed25519:NigCTp5SaPdyHPLHWhdH6muh9cJFaWFvyvnl9MKbuTw": "NigCTp5SaPdyHPLHWhdH6muh9cJFaWFvyvnl9MKbuTw" + }, + "signatures": { + "@grin:grin.hu": { + "ed25519:ZTGTHRMTKE": "VM0G//dXrAJjZquveNR7mj3N5CPgdpcmf5jwVLcZfMVvEu89XdsDqSI9YMvcAxW0lg0X7kFH1n35tV2FIs7BCg" + } + }, + "usage": ["master"], + "user_id": "@grin:grin.hu" + }, + "self_signing": { + "user_id": "@grin:grin.hu", + "usage": ["self_signing"], + "keys": { + "ed25519:WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY": "WwLn3d4iKdE0gCD+XzXdPWpyhgvA2muzpVjIcvGs0gY" + }, + "signatures": { + "@grin:grin.hu": { + "ed25519:NigCTp5SaPdyHPLHWhdH6muh9cJFaWFvyvnl9MKbuTw": "dFTzuTgti+ISSxYE+loKqMbsPbMO5qpSOKXM60Wv5OlODuwdp7eSuOOyEFofiY3fEzy+ZZhfwISA/uY1AdooAw" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@vdhtest220101:matrix.org": { + "keys": { + "master": { + "keys": { + "ed25519:GO0FuPHgncRvcRRQSYlgKsyd+nmNi7tmNyvu51FAlIc": "GO0FuPHgncRvcRRQSYlgKsyd+nmNi7tmNyvu51FAlIc" + }, + "signatures": { + "@vdhtest220101:matrix.org": { + "ed25519:DMGVHFMRYP": "DLnHpNSm6SXSKRieOAXLbowY4cZ9Llp7+7SVXWAUvp1PNMhBbXMBWuMWutnft83hIaC/ipKN3nvX7lpW6GywCA", + "ed25519:GO0FuPHgncRvcRRQSYlgKsyd+nmNi7tmNyvu51FAlIc": "P1Y79SQ/5TT4Ne8op54Ez/IWNtEew3BZT1lCmGoIt0U8TW1eWyOXoMfGxP5R9SjrglJu/Vu3ZGvUUmq+Poi6DA" + } + }, + "usage": ["master"], + "user_id": "@vdhtest220101:matrix.org" + }, + "self_signing": { + "keys": { + "ed25519:9h9S5ytahsFQpB+HrRcXSgbKx2qVXUpcDSezvGGDSCY": "9h9S5ytahsFQpB+HrRcXSgbKx2qVXUpcDSezvGGDSCY" + }, + "usage": ["self_signing"], + "user_id": "@vdhtest220101:matrix.org", + "signatures": { + "@vdhtest220101:matrix.org": { + "ed25519:GO0FuPHgncRvcRRQSYlgKsyd+nmNi7tmNyvu51FAlIc": "uO46geoeb/4MWZC4UzSBhN8LBS3Pbmu4cp3+6P8qxbYfd8T46tuLKTVU0iTGRMNXZPmGKSt9X5QQJ+hc5KekAQ" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@bkil:grin.hu": { + "keys": { + "master": { + "user_id": "@bkil:grin.hu", + "usage": ["master"], + "keys": { + "ed25519:dheuCIkQnx2uc0pG4tn4AVQfg4pEKv+zMUfaLzx4dQU": "dheuCIkQnx2uc0pG4tn4AVQfg4pEKv+zMUfaLzx4dQU" + }, + "signatures": { + "@bkil:grin.hu": { + "ed25519:RXMPIMAMLL": "MpfqSwJiru4qbhvNH8n1idfk9oCgcsQlURRDs2HhgpKQo6Cvwp39UH25b33ziviyck7bF3vFBhWRDwfOS+XVBQ" + } + } + }, + "self_signing": { + "user_id": "@bkil:grin.hu", + "usage": ["self_signing"], + "keys": { + "ed25519:7rHXNHtnx2nZN4Ht66GlpoHlcHCor4/uunfcp9zh+k8": "7rHXNHtnx2nZN4Ht66GlpoHlcHCor4/uunfcp9zh+k8" + }, + "signatures": { + "@bkil:grin.hu": { + "ed25519:dheuCIkQnx2uc0pG4tn4AVQfg4pEKv+zMUfaLzx4dQU": "dlRgYoR7cAensU2bYm8PnntAcdLYua79lmPIYR0+v9aBOFrEWhYizO13gSTjAtnx5pcuehGAp8Fp3EQJ9/8/CQ" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@bkil:matrix.org": { + "keys": { + "master": { + "user_id": "@bkil:matrix.org", + "usage": ["master"], + "keys": { + "ed25519:8ujMrE9IRhpxl/d64CDhsA1PIajyavbe4x6JIy+TyCw": "8ujMrE9IRhpxl/d64CDhsA1PIajyavbe4x6JIy+TyCw" + }, + "signatures": { + "@bkil:matrix.org": { + "ed25519:ESIYCHQOWX": "Wn/edP6F3d6HqZWDnUlo6yTF/1PYs05Ioe41Ikr75sACi6xjaO3Qw3pJ6JhAxj7vg+E+3DOHrXmVKz+z63w3Cw" + } + } + }, + "self_signing": { + "user_id": "@bkil:matrix.org", + "usage": ["self_signing"], + "keys": { + "ed25519:4KSe44PGKzgM0B4tNU37PRMPk/5vWm/wCjZzBFFu/KY": "4KSe44PGKzgM0B4tNU37PRMPk/5vWm/wCjZzBFFu/KY" + }, + "signatures": { + "@bkil:matrix.org": { + "ed25519:8ujMrE9IRhpxl/d64CDhsA1PIajyavbe4x6JIy+TyCw": "BKqVvVh+BKE+q1Z5EH/94n0sybyxUEEcdp9TlJHI/yjhUCoy82WCll/mbvt86wkvq2ecPejXC1mR2u5XURJCBA" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@benoit.marty:matrix.org": { + "keys": { + "master": { + "user_id": "@benoit.marty:matrix.org", + "usage": ["master"], + "keys": { + "ed25519:KALhTMibUWZnAZ5YlKaNtEv9B/CVZjpiBsgq3rBl+XI": "KALhTMibUWZnAZ5YlKaNtEv9B/CVZjpiBsgq3rBl+XI" + }, + "signatures": { + "@benoit.marty:matrix.org": { + "ed25519:PXLGRRCHMD": "TZ1FRfUHgkiFvMZNujV8gEpBK2tzcfhaI8TADpfnglDtJWdSDuGsZVU+zy9Mpw7OZ/7wEgszL84CmeLFR7n0Bg" + } + } + }, + "self_signing": { + "user_id": "@benoit.marty:matrix.org", + "usage": ["self_signing"], + "keys": { + "ed25519:C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE": "C2k79dBejHY780Gbd4WE1L1lrxdpG6+T4ZWToeetWIE" + }, + "signatures": { + "@benoit.marty:matrix.org": { + "ed25519:KALhTMibUWZnAZ5YlKaNtEv9B/CVZjpiBsgq3rBl+XI": "/XN6pngJLQs5/OqZVvVMlosur96OQetEM/1eAfbN1iuu0hOu/tvasNPg0Fo4c7IAsgQeVkhamVwHAdGwZq0fAg" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@hubert:uhoreg.ca": { + "keys": { + "master": { + "user_id": "@hubert:uhoreg.ca", + "usage": ["master"], + "keys": { + "ed25519:uJGMY5IuWGET5SGXssF7ZinVF7L9piB1HOw+JSNhQ3A": "uJGMY5IuWGET5SGXssF7ZinVF7L9piB1HOw+JSNhQ3A" + }, + "signatures": { + "@hubert:uhoreg.ca": { + "ed25519:JBJCWWOEIU": "d6FqWUllTp+r4MYZRPcPNMZ1bGL9pYj2n3ejuOBnfZsTmq6pmRAgRZBaO16A6HoqbKkjVIgZWFB3Zf/1C39UBw", + "ed25519:TWAPMCMRRX": "TWF9I7IoATkfyXr1iMgAEh7A5P6PJvk3S7PtCQbBGy1DqpCjR/nFkdExqBKd2kVQdAoeQzdr+ImpcjaoydWzBA", + "ed25519:HCSVJWOCYC": "niRYCISa5AGBPScvAtaVToWTK1DyqrC7SGw2twsjh/nzlJtGzGbj8XG9B57+ML0csyZB8sOVKRmJR2SWohuTCQ" + } + } + }, + "self_signing": { + "keys": { + "ed25519:1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A": "1OkIdgJoBlsybOL2WJEhE/ON1hS8OkDQE6WUHqLr31A" + }, + "usage": ["self_signing"], + "user_id": "@hubert:uhoreg.ca", + "signatures": { + "@hubert:uhoreg.ca": { + "ed25519:uJGMY5IuWGET5SGXssF7ZinVF7L9piB1HOw+JSNhQ3A": "J5ufmnuO0eXqm45znAN7zWqHpOlM8ftIKMmbSdNcT5kJggIsDDCcUub5x/8cQtDrRda60iKJWrCepbFv+19IAw" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@eg:envs.net": { + "keys": { + "master": { + "user_id": "@eg:envs.net", + "usage": ["master"], + "keys": { + "ed25519:YgRaTrY4IgVNtHc2K4O9rzuZxoZAY/VLn0pRa/R1UJg": "YgRaTrY4IgVNtHc2K4O9rzuZxoZAY/VLn0pRa/R1UJg" + }, + "signatures": { + "@eg:envs.net": { + "ed25519:WEXXMGTXJL": "V439MqK3NueaHG5qHseF393ZgavAflWdT58de3FW1Fjt+JffCGfFyXiuvpg0DmVeKXDnOMMPdV7rl8QN2C3vBA" + } + } + }, + "self_signing": { + "keys": { + "ed25519:J2GzPDvJnFEMfKkjqnpYRrm72XIgjTJujIYYCnxqtns": "J2GzPDvJnFEMfKkjqnpYRrm72XIgjTJujIYYCnxqtns" + }, + "usage": ["self_signing"], + "user_id": "@eg:envs.net", + "signatures": { + "@eg:envs.net": { + "ed25519:YgRaTrY4IgVNtHc2K4O9rzuZxoZAY/VLn0pRa/R1UJg": "umf96/A7RkYj2R2StGV+oSy8xbCHwnkl73NoLxJzkfduKQYihvv2cDM4QUKWoRKY+1arKe8HvT96WMPxgI+cBA" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@jassu:kumma.juttu.asia": { + "keys": { + "master": { + "keys": { + "ed25519:LOMVWLcBcSHs7Xb3xhhjWMNIhWw4wqoIAPlGy8GaXTw": "LOMVWLcBcSHs7Xb3xhhjWMNIhWw4wqoIAPlGy8GaXTw" + }, + "signatures": { + "@jassu:kumma.juttu.asia": { + "ed25519:Thk9IqBO": "2Ha9tYxFyYlJ8Nq0BNOq21AfMMrLuvpwV4dcfNx02vErdW/JAYMbtB3YQxiYP+R1pgymA/10Jim+I+Mds27jBA" + } + }, + "usage": ["master"], + "user_id": "@jassu:kumma.juttu.asia" + }, + "self_signing": { + "keys": { + "ed25519:1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o": "1/E7p83LFx0NBDzCzhTiC+mznQ8w70cy3ICxfCwxw1o" + }, + "usage": ["self_signing"], + "user_id": "@jassu:kumma.juttu.asia", + "signatures": { + "@jassu:kumma.juttu.asia": { + "ed25519:LOMVWLcBcSHs7Xb3xhhjWMNIhWw4wqoIAPlGy8GaXTw": "FOVY4LagpmnqXobxujI6+Rou8tGA2nsCJVbaPQ3grzwEs/qlslAcj3fVsHyV+1Cx2aTU5N/P2yTNecCPFpYnDw" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@JoKe:shareknot.de": { + "keys": { + "master": { + "user_id": "@JoKe:shareknot.de", + "usage": ["master"], + "keys": { + "ed25519:YAhabobkMb2WaEoq5LaMVBf/wVsIK6Snb9StWMQpL+U": "YAhabobkMb2WaEoq5LaMVBf/wVsIK6Snb9StWMQpL+U" + }, + "signatures": { + "@JoKe:shareknot.de": { + "ed25519:HZINWDWOZC": "cuJ9C2qjd9DlqIQUnxgyJWUnpQCWWvYaMOUC1LGmab2x+Fxb2qNDB05sFXxiU6Afl6H7oOtOG5shvS2qTqnABg" + } + } + }, + "self_signing": { + "user_id": "@JoKe:shareknot.de", + "usage": ["self_signing"], + "keys": { + "ed25519:KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY": "KWNP+lRDE8BKWgdKzUKuCiPdPv+NIpNaqwlNRNJClFY" + }, + "signatures": { + "@JoKe:shareknot.de": { + "ed25519:YAhabobkMb2WaEoq5LaMVBf/wVsIK6Snb9StWMQpL+U": "G5TKHCwINNE0j6d2NN8RC2/amvK8cQFnqHKXEA9OjY9Zq8pTgMxq3skE95H/qji9+YlBdnny0TXL+P/2dp9CCw" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@matthew:matrix.org": { + "keys": { + "master": { + "user_id": "@matthew:matrix.org", + "usage": ["master"], + "keys": { + "ed25519:6JQLt/Z4wb6gkcTDJ/o5aRRtMbP69Yx/AJz0V0h+3y4": "6JQLt/Z4wb6gkcTDJ/o5aRRtMbP69Yx/AJz0V0h+3y4" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:RQRQBRNDOP": "jjkJBXNwtFn3DDl1g3aR4vI5PTHgTgUYubsThmk5KF48HNp9aczRfP7wV2L8vVRue9YYgF5HEtKeva3/Ih0KDQ", + "ed25519:QQZQXQKYTN": "PHnLoSC0IYoA9m/cvCzjEmNasbH7OiEoV5p31R1OBQx1PMuMLHe0R3z7zMcSDE4z9rCH6lE7xT9tRojOEYOcBQ", + "ed25519:GOSFZYRIEG": "l90u69xIvvXlICHIQyyLpe819jawQR514xmHz99+PSXC3ahQZq0lAb58QIGafC+nACawOisYk91Cv8joP5jMAw", + "ed25519:JHCQOENUMD": "vxXo9sGdY3yuo5y1fW7jJYEX3K3a1p472p5y6t9DKdYHPPMosPb4lz6AX0jckmfof6xpLMgCRloVTDAi8s85CQ", + "ed25519:BSVWPNOIDU": "rzP/tb1D7JV9/liibq8lqeCNocuRLhGmODtNPq30B5M8edPLJT2oNEosCJj2pK2/OAArOpHcodJBv4li3qQJCQ", + "ed25519:RVZCLWSLUV": "gNv4OClgvCdT0pBWM4JtPYM+cPmMLoPAXw8f8/5FFJSknC4Zvl5MtHcG4WsCffzO69l03Lcnj1Hk8/7mm4oSCQ", + "ed25519:OPEDGUYPOP": "4/QefS+rzSK96x+ybCGZjp6Wfsk5NJXmSJuqQt5Ut6bfY3Oi3N2ZsURp4lerZRULziaTGxiv9cXe+VloW8W+BQ", + "ed25519:OPCPOBPADJ": "83JVeduvLYCVxfGN0GCiLGvU1M37GyZEfBt5RUx5rAn7d4eJl+JcaUy1scXqBsXbsJr7x0/H3DzMBN+Xh/j8AQ", + "ed25519:ZLTZYUHALU": "57n+r/cCLxuherOAyWjVtExYghdNZdsugl+N1Ksw118LA2codYHvUH08YfwaQCQDwUT9kXvog14gwO5MUWMBAg", + "ed25519:PWKLFNYFVQ": "j3C01/2OSvlqF6QwQTnnpZMo4mUu24XzcqDzNN+AJiJ1d3SmfS3C0aL9yZeUnNk+I/oa3wMannikAmqR0tu9Aw", + "ed25519:NECBHVYYRL": "Q+oH+qHOKe/+po1M8GfKpDedESfbWoyqfb5TKWOxqIm34R197kaOz8p5IpNZ0mz6s733/rKcGMerX3s1XBtUCg", + "ed25519:OXRRXLGRAD": "/fmLLOMf3Rifj+2hOZu3YieBiZQxK7PdzPqhJ7hL/w+ngTHsu70bY50SMTyKa2SIEEfTyJzSnuiDp4hmUWbdDw", + "ed25519:CVXFJQPNBO": "FZKKPklwljHHtd0acmpsZCMp9KSKFDWyJHoL+GkMzyxAYTwyq5cHsHnhlQnMMLBJzsjsa+rOePY+ieiEZARjDg", + "ed25519:ADSHQENKWR": "azF4vRaUvjLmjvBHF2t/p1xmsQQOAVamDFgHoJlqLWUr6fJHyzbuOriDBFQQ4KTj8TGVoyrF7AXnogNAsZLsDg", + "ed25519:LALDIXKIIV": "GSUvJUeoT5cSWeeh7Avez3H2Wvn4qOEnILAL5FbWUrDRVKAZH4tSkWjwSfPeibiJAuCpU3KzajJ/+3ezmhjfBQ", + "ed25519:WIELRUHNOQ": "kVePiujIgLh0t+MKHovUDbYzykEUm2Ilr3BeL9T0kTRnmtkWQj1lnPXFYz5vX58jve1BScFwldfRBcuAs9hVCQ", + "ed25519:YTCPNBBJPA": "141+b9TzAlvH4EbEwrkHEwwD/6LjV03Yx07Vx6BT9tybHEOs1eDiGp2FE7HlyYf3VvauyPrGHQnOuIcjkJNVDw", + "ed25519:LKUHXDQGED": "E5DM7/pyAmLNxPzMIwyU0AG/XFZSTDAeqZVUMdZ0NcH2GftEtqdtp9tK30E4CPGC5mNPOvT09ZZiybBQ3PEpDw", + "ed25519:VVZPPPGBFB": "ATrCVjRASgPUML/pQ24CZG1ePUjvR6vn/U4pFojZjnZ4O3OpPsh282dZg+Nx345Yp19Bb8T0JgLOvZy9y5lhBA", + "ed25519:PAZFRTFNQF": "DrKSbk7Ea5IAJUUf6idzstJYKkb5gAwT5R/seqhkfnqJiQPOg7tzxaPwec6RbFEezR0mr3u9dmiwCMMezREVBA", + "ed25519:LAPPOPSHCC": "jwPZbWNYd0PfYfl83Ubk6/c4o6HkaDD96cIZbSKa0nTM5qMD/ZLMVuEWG9W85LQyZJWo3JnpAwsqItW+xcOlDw", + "ed25519:ZASTVNEFUV": "5wUFqBMUSIHEn5gGqF8oLjK3jFElP2lSqoXKpeDkqpFpjWGmCjyCUCgm0uYATrbx65pBrh7jV1bTiGmrFOYHBg", + "ed25519:OYJGELEMJD": "vh1kyis+V+BOzkRKXmgvj8+/EveTt6R+NFZwY/PtPNw8ZrfNruU5KdfbO2BS7eolUwxMRbzkgui8Yd5Vp0Y7Bg", + "ed25519:UKLFNVDKDU": "t5LvgSGS9EZY7zNfaZecji4FL1kRuPeBXB9zC1/15PG5TZf0pSdrk6eAzVL/Vi+BtOwNn0QY4zQvn/l1SmxfDA", + "ed25519:QFEBOYLAQY": "KqG4ZjCSkIJnAXBfCzwHdPV8gXe/V0jbmQxpjymG4NMdXrpSod9RXHPjgwZl69TGSM4HKCLFs1O7o7bUCKzuBA" + } + } + }, + "self_signing": { + "user_id": "@matthew:matrix.org", + "usage": ["self_signing"], + "keys": { + "ed25519:eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY": "eWP1oaSoj+t0QK00o8GX/Uhd8Xs/hE0f71YsFsnmCdY" + }, + "signatures": { + "@matthew:matrix.org": { + "ed25519:6JQLt/Z4wb6gkcTDJ/o5aRRtMbP69Yx/AJz0V0h+3y4": "eBGoAUsbEJGUoRx3MpmE3N/xXEi/YNEG+6DM1i6JjOObCvJ360uPqb/stK6OCdwKwZg0fX1ADo58E0gwdoBLBg" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@saces:c-base.org": { + "keys": { + "master": { + "user_id": "@saces:c-base.org", + "usage": ["master"], + "keys": { + "ed25519:kTOS4T9DcZ5XSUi0SNyOA2HdExIu1/eQ/rBNeMk+fu0": "kTOS4T9DcZ5XSUi0SNyOA2HdExIu1/eQ/rBNeMk+fu0" + }, + "signatures": {} + }, + "self_signing": { + "user_id": "@saces:c-base.org", + "usage": ["self_signing"], + "keys": { + "ed25519:zEDr2sVNTpqH2c6nTqm8f5doFl54qgBcEggkmhQGMts": "zEDr2sVNTpqH2c6nTqm8f5doFl54qgBcEggkmhQGMts" + }, + "signatures": { + "@saces:c-base.org": { + "ed25519:kTOS4T9DcZ5XSUi0SNyOA2HdExIu1/eQ/rBNeMk+fu0": "LOT3+zkJJgBcpnMw3Hj4oXupXD4E5jnLdDe0weIekeKzCflxiJrWDgbY4ucCuznlqu50jjfOHZ8vwUb83+CXBA" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@/dev/saces:saces.de": { + "keys": { + "master": { + "user_id": "@/dev/saces:saces.de", + "usage": ["master"], + "keys": { + "ed25519:8JtPA1G9UDpZcLp8gg97Zj6zudnSZSy+o+9RfWO2pFw": "8JtPA1G9UDpZcLp8gg97Zj6zudnSZSy+o+9RfWO2pFw" + }, + "signatures": { + "@/dev/saces:saces.de": { + "ed25519:QQKZMUKLJC": "4L0ATGtxXkTxYu9Cfi7mP6Ahsnq4RaNuPX1UD0APQqWwbpHbOeC7Bhakbaj+vYspotvKoZaSecjx7wMxagASDQ", + "ed25519:KWITBBVNXJ": "c/YtSHHAwVOmZDYHeznnSy7gMWhMxdyDSHguidtJhQ/HytGRb4uZtRB9K628T4eVJLt3i04wP37Ig089Bk7lDg" + } + } + }, + "self_signing": { + "keys": { + "ed25519:01Mra0lDap17amp7otuk4ag/1hLZ5woZ6mMZg6Lbr8A": "01Mra0lDap17amp7otuk4ag/1hLZ5woZ6mMZg6Lbr8A" + }, + "usage": ["self_signing"], + "user_id": "@/dev/saces:saces.de", + "signatures": { + "@/dev/saces:saces.de": { + "ed25519:8JtPA1G9UDpZcLp8gg97Zj6zudnSZSy+o+9RfWO2pFw": "4WWaKlpCyVioB0m4jNIat7eogr0S8ew5i5cHYqOcEZzVL9FBh1JimLkZJi2ysws2+SqUilbTqI0UhtJWd8LlDQ" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@creme:envs.net": { + "keys": { + "master": { + "user_id": "@creme:envs.net", + "usage": ["master"], + "keys": { + "ed25519:EjITGlHWQ2cbtDL/3bAFPCBmO5xg6ECm55PArnMtRT8": "EjITGlHWQ2cbtDL/3bAFPCBmO5xg6ECm55PArnMtRT8" + }, + "signatures": { + "@creme:envs.net": { + "ed25519:HGZGEJFQJJ": "dkG2YLdy1mOdq0gxKNOB8vGA63VRpj0QIU8tcSnxKRe32AObCeoVA7RNa+X0HjvsAdDHj2Gy+hI9bKqXMrb/BA", + "ed25519:GDFVECNBXL": "vFtkEr7dlJfM/EGf3mB1Lnlj1VqqLCgV5PYNUCJDUGGAQIolILMWxlzpfs4ROc0Joaob3O6VrdDfDazzBCIXDw", + "ed25519:UDVCAZTPJT": "2K9FicNgpebXk2aCVMghtKGof6CSxGv8uwP52ew90dOaB5sYRnvlXa2MdxJenNDi3PX4ddEQRR4KUMxOdlDuAg", + "ed25519:NXQFGIYYXF": "iZ7nKoX4O/aVmt7uyCGj/9QBezRqpX6xwzUdV5DsVhV1NDWl5Kc5EGjCTtLqnIn3WHNHznOSvEXw3jtlxRyyDg", + "ed25519:XVRGUZLAIP": "gjcrVC/4CDqPTkydqLzC5t09Oxw6f67WVugERTsrRuXDRbpjYcJXYtcimwQzHhjlSbHc9xlbVdbLX63MqOseBQ", + "ed25519:YMIFZYDIUW": "VUWVNkTAugFYLRg9uXaDHUpl1ELsEE8pzE1EOB6YR2H4DwG8rUrtCHaHit7wIC62oXzivKgccp5w7VC2pSX1CQ" + } + } + }, + "self_signing": { + "keys": { + "ed25519:+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0": "+qh6CBI9n7v43RFh7/RaRazxhQc4FINP7iNnqOYz8a0" + }, + "usage": ["self_signing"], + "user_id": "@creme:envs.net", + "signatures": { + "@creme:envs.net": { + "ed25519:EjITGlHWQ2cbtDL/3bAFPCBmO5xg6ECm55PArnMtRT8": "19zTVEgwRRCg5LJiLjbisZynTv4SyEz9lEHnwzD4L88K8W2o8LOwbqkNGjOD6Q53vaeMpacKWG9DcE8/NFlLAw" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@erkinalp:matrix.org": { + "keys": { + "master": { + "user_id": "@erkinalp:matrix.org", + "usage": ["master"], + "keys": { + "ed25519:069WHFrqZxhNBSYi1NOMCuqPhXvWFIgr5qnyeYzRQiM": "069WHFrqZxhNBSYi1NOMCuqPhXvWFIgr5qnyeYzRQiM" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:VUKXYOCWOM": "ufAcrsW+SU22Mi3zD//5fsLKAwjO6/aXYGA2M67G772Bz+shHRnWeH7ES1mm28V7oeowUBjO0alXkaruYkEUBw" + } + } + }, + "self_signing": { + "user_id": "@erkinalp:matrix.org", + "usage": ["self_signing"], + "keys": { + "ed25519:gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU": "gUKXkRU1YtFxc7AkYpUuFRTgblQZcbMhJPd8DlnChSU" + }, + "signatures": { + "@erkinalp:matrix.org": { + "ed25519:069WHFrqZxhNBSYi1NOMCuqPhXvWFIgr5qnyeYzRQiM": "zJuQglpIp2aUGLnkUXuSZywNRkQn3ZycpM/qdKdgQRONDKZzSYfW7ngBum2BsFRojnnEHBWCJcxuYLUi1cVBAQ" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@valere35:matrix.org": { + "keys": { + "master": { + "user_id": "@valere35:matrix.org", + "usage": ["master"], + "keys": { + "ed25519:mwYvN8S39rSkTSgc67Xj22DKtHzgCl/yQGl7OzMVxZo": "mwYvN8S39rSkTSgc67Xj22DKtHzgCl/yQGl7OzMVxZo" + }, + "signatures": {} + }, + "self_signing": { + "user_id": "@valere35:matrix.org", + "usage": ["self_signing"], + "keys": { + "ed25519:7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU": "7Km4ES6LNW+10GgNL8svY62cRD1uxHoK4X0QPl4tYeU" + }, + "signatures": { + "@valere35:matrix.org": { + "ed25519:mwYvN8S39rSkTSgc67Xj22DKtHzgCl/yQGl7OzMVxZo": "IWYmosldgguYv/aqgesKvKK9Knn5Z4onO9z5Qygca5xt+Pg8asLtYgg1FdB50nyTTF5WYMpFXJHoGD4XlTR5DA" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@valou35:matrix.org": { + "keys": { + "master": { + "keys": { + "ed25519:JwZiicF589Aevdf2dLitKbGfka4r9aP/02QAuN2wbQM": "JwZiicF589Aevdf2dLitKbGfka4r9aP/02QAuN2wbQM" + }, + "signatures": { + "@valou35:matrix.org": { + "ed25519:JwZiicF589Aevdf2dLitKbGfka4r9aP/02QAuN2wbQM": "0xrqt/yeQdlxzK6Ni3NnDkuJBUyEjDg2+9GdDWnTF3u8gMjo0IOmIVDEiy+nWK4De9G6xmwLRfCwRzT9FcuwBw", + "ed25519:SHHHFDNJHS": "nEQpe9rMAT2cRoXSjJrcF8Miufg05qkW6TET1MxUu+lcmZeihTP8/iJ4DESfaJAepGi+eTu3lInYM71cB3/LBA" + } + }, + "usage": ["master"], + "user_id": "@valou35:matrix.org" + }, + "self_signing": { + "keys": { + "ed25519:mubeul2+H5jir/aBj0+kfsyd+UijC5mfou+uIz8aOWI": "mubeul2+H5jir/aBj0+kfsyd+UijC5mfou+uIz8aOWI" + }, + "usage": ["self_signing"], + "user_id": "@valou35:matrix.org", + "signatures": { + "@valou35:matrix.org": { + "ed25519:JwZiicF589Aevdf2dLitKbGfka4r9aP/02QAuN2wbQM": "HgAo4Mz+L3xhqkfKA+1Ayvtfv1NXASKIA06ATWPNdcRPmXlfN7XClxv5bMJkIauHaHxQwejxDOUMStxfJQ5kDw" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@blade:darkness.services": { + "keys": { + "master": { + "keys": { + "ed25519:LJ7oehpts4bcNuFc29hcPNgN0l3JNadoqSuyHkYeCxg": "LJ7oehpts4bcNuFc29hcPNgN0l3JNadoqSuyHkYeCxg" + }, + "signatures": { + "@blade:darkness.services": { + "ed25519:GWVYMPGDDK": "1u3f5qhu2WE6c/qFLFuLAAGQJGJesLOE7lt51wn/6mdbAaaS3zcWv7LWQUls5gdDPTONoJ8X1cXCitH5fIl6Bg", + "ed25519:KZZFYVCTWS": "q13uuzAJHxM3aVNMF5z4ctH2AYCIEP1P5Qjrd7SeR3yER0s9FYIAeb9xSxKbvSIA3gYyurG5wnTjZt+a8+NABg", + "ed25519:LJ7oehpts4bcNuFc29hcPNgN0l3JNadoqSuyHkYeCxg": "hqSzAip5r1jLNEmLIQ5kVgxLml5p/OrxbYAV8ptT+qZgZoGtl5qeF4atOUZh9i1Af7DNQIzkXYyLQVjHhM/zDw", + "ed25519:ONNZHRNFYD": "P0JjEWttDnVJXUlOSVoT1nD46hTMpmAcjWTFe/Bxc2hMevq4MfvXLsbuUcgMV6JlUbHYgycRSyyYYA0rBrlABw", + "ed25519:VAWYTHBGBB": "LQVnsD+NBDTYayxJJk/qPsswgLBBNcNY3gUHkDkeRHh397eybJ2l8fljftBeh/HNuzZcMtHvA6DkY7W1va2NDA" + } + }, + "usage": ["master"], + "user_id": "@blade:darkness.services" + }, + "self_signing": { + "keys": { + "ed25519:SDq5Mf0nmheZU+rNyApv+CqfofE/AMXbFXPwO7zzssI": "SDq5Mf0nmheZU+rNyApv+CqfofE/AMXbFXPwO7zzssI" + }, + "usage": ["self_signing"], + "user_id": "@blade:darkness.services", + "signatures": { + "@blade:darkness.services": { + "ed25519:LJ7oehpts4bcNuFc29hcPNgN0l3JNadoqSuyHkYeCxg": "dYoFqH3tYHbVhYeLrruzxX9gdcA0pljXw3iHp/SJgMTZbnNIwTZSWJUWqlo0/Wzo2ckkPlTkHXKHOnBn7nXACw" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@thenamelesswonderer:thesilentlink.org": { + "keys": { + "master": { + "keys": { + "ed25519:QoE3IwxF7RAjF4L+Cgk7E+ktjFlTxkpUEAjeRpAnic8": "QoE3IwxF7RAjF4L+Cgk7E+ktjFlTxkpUEAjeRpAnic8" + }, + "signatures": { + "@thenamelesswonderer:thesilentlink.org": { + "ed25519:DYMTLNUQNH": "QzMraE2lUF1R/L9pLHXaWAWbmwX95I9a/iiY0m1NXgUA/5nl5R0tvs1VpMFmyoQ6uQmb+NFBReQo4B1guM7lAA", + "ed25519:EVSIWHJLAC": "nNXHkkbz6NqiJxBi9VfB1hCScYZM1MO1EStDQRIBIEL7zON+9f2DTb63MAHtcYdVgWOfAHmiBGByjHKeUkzhBA", + "ed25519:FNQTZBHLII": "fHBChd2n4C8BeErjq5TC8rmbJnMTJjBGjmNnE5ifFvl+/fng92UdKCxlQZJ9AhReanZE6sK5DGliaDCLE/NCDA", + "ed25519:GJEICVDJJE": "iJoNv0n53C62rlkiI1fXdSOO9bRcXi5E7rFocJL2LcMyBY5UW/QTNwcr3p8MmZkwKxHcjdK8gNqKM7cw58o6Ag", + "ed25519:GTQOJITBXU": "1YzL3u2BMy1JiHH6Hk4XNmZfq2gz5HKJG84u9gXuhsM9WseiNiz9GYH4WDoJEp3mfeYrSFgyIIeWeJuQXjSXBA", + "ed25519:SIHNXJTDXJ": "C1lWe7dpGkzJhWBNr/yqqei62UIqVbmMbPApH7uzkob/swGyMpCeXqiAmDciRl2WAxeJWyIb32TsIxiOhP+sBQ", + "ed25519:UDOHCFQEDC": "NYTynKtMEg4Lg6eSBvTuZr8Bo5MqjZ3r/y18vP4ew/m4xwcRUEqj9XP8Ff6CLIzofBLr6rhEFrxfi8wYgdU/Cw", + "ed25519:VTLPDNYGGT": "YjLNh3oxCGP7vQ2ssK3kX+TzpzpOUZhthBbphH4RmjE78oq7KWKHRWKNy93x+WPNBksc5ohthV/oY9tYVq0OAQ", + "ed25519:VZNFWGFEZN": "I/P+oSt1jryV2aiY1W+gaKFd83dxCUcVnaizHJQj3fDJMadnDHghzvWK5f92dPNJcCPs664YHfxbyxmfllZKCw", + "ed25519:XKXAFSTNOR": "LmB/5vYGtEVMgReXoyvdfArd/sUFYliwYhV7veQtOhhS+NwQY6D5g/Tb6bTn7WHsf4tIo+TzxeZCEB+BSgk4Ag" + } + }, + "usage": ["master"], + "user_id": "@thenamelesswonderer:thesilentlink.org" + }, + "self_signing": { + "user_id": "@thenamelesswonderer:thesilentlink.org", + "usage": ["self_signing"], + "keys": { + "ed25519:EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw": "EOxMapODdtffAK24bZv8W0FoOYWg3FQ4h5KrjX2wXFw" + }, + "signatures": { + "@thenamelesswonderer:thesilentlink.org": { + "ed25519:QoE3IwxF7RAjF4L+Cgk7E+ktjFlTxkpUEAjeRpAnic8": "JseOR/JCcSEfleU4wqJJzX2s0vZorw83w9fzBJ0mclhyCrnSPR8s8+bQd0H+G3p8R9cPVyRZMn02m0FN+UWiDQ" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@mugli:grin.hu": { + "keys": { + "master": { + "user_id": "@mugli:grin.hu", + "usage": ["master"], + "keys": { + "ed25519:WLlamC7fq+pwDBPUJhnVjTr3tXxcRzRD0YZJZ9nK2Po": "WLlamC7fq+pwDBPUJhnVjTr3tXxcRzRD0YZJZ9nK2Po" + }, + "signatures": { + "@mugli:grin.hu": { + "ed25519:QDPXBABMMT": "iKgJbGQaMSImnKdftbDcUUoaMcHSWAiXTfgX2AcndU4BJkDwV9fKmHv/qpuyJvpDa3I6KwStTvBCpBJtxxspCw" + } + } + }, + "self_signing": { + "user_id": "@mugli:grin.hu", + "usage": ["self_signing"], + "keys": { + "ed25519:0QvfwbwidCQIbfvISZTeCus+QTJTCqtB25Sfc1gdeNA": "0QvfwbwidCQIbfvISZTeCus+QTJTCqtB25Sfc1gdeNA" + }, + "signatures": { + "@mugli:grin.hu": { + "ed25519:WLlamC7fq+pwDBPUJhnVjTr3tXxcRzRD0YZJZ9nK2Po": "lU0Je2zYLKsW+yGZ9rxCx3hibT52NOqzxuSGe7n9d8lsX1voMFexLj/iXgiKRsgwp55O59HYkqG6IVRPVW+fBA" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + }, + "@richvdh:matrix.org": { + "keys": { + "master": { + "user_id": "@richvdh:matrix.org", + "usage": ["master"], + "keys": { + "ed25519:ztcf3w+OW6MvAqbb7/ojWF7VQDUWe/flpq4EGOq2nmI": "ztcf3w+OW6MvAqbb7/ojWF7VQDUWe/flpq4EGOq2nmI" + }, + "signatures": { + "@richvdh:matrix.org": { + "ed25519:DNPNKSQNLX": "gcQsljy8H89nqx+wNFi1EIltHs2wfKMclkNpV+EeHcyCBZcZMn6VEn3DWCF59W8Z5jO4RpRFwh1gZRE9qqFwAg" + } + } + }, + "self_signing": { + "user_id": "@richvdh:matrix.org", + "usage": ["self_signing"], + "keys": { + "ed25519:GrYuWJGHBHNSpUyeejbkZLhm0Iz3prCuXb5q9IZYT9Q": "GrYuWJGHBHNSpUyeejbkZLhm0Iz3prCuXb5q9IZYT9Q" + }, + "signatures": { + "@richvdh:matrix.org": { + "ed25519:ztcf3w+OW6MvAqbb7/ojWF7VQDUWe/flpq4EGOq2nmI": "oAIgDVMvLRqSj4708kMdFDKRBBvbYi/K/BXWiueQRN2cEwK5/G8IW3dFauiErcpT/2uj8Zxim+RLhEkbFj5JBw" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + } + }, + "trackingStatus": { + "@vdhtest200713:matrix.org": 3, + "@richvdh:sw1v.org": 3, + "@richvdh:matrix.org": 3 + }, + "syncToken": "s4577843948_757284974_63883963_2550287327_2708147027_5123316_1159385744_9352228915_0_218966" + }, + "key": "-" + } + ], + "inbound_group_sessions": [ + { + "value": { + "senderCurve25519Key": "+XWeVnwsM53WJKyc9YlK1DthttT9KgQAvUG/zmr0WRE", + "sessionId": "q9pR1wJGS4UlelrAZhNXUcTlS5Qwgnf9ZQRYlAIJehc", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "zEiKUDYW6AWxhx94G3+et8BlwO9iTWI4kkTj/Qaiuu5+E505n6thRcayLqGURRs840HT8FQrQ7XKGhSnSp8ebptluZEFgmFhD3sjC3PqBSkm7zd0QFTN4DvxfRW/TQ7+J4W7GnP1OzHuMPReAlEwkg/cKGfocx+1/F/ocDYTpo14VQevRNzWkvlIuE4IVcI8U2eCYwahrHPA/QVKWDkcRbowXGRcW1M/1Fe9xs6MUWsWl2yqxjdbKkiKOs/hhZB3dDaxFSWrKLqKzcVAt5suEVKLNqHwltmFA2pnuAA/Hoz1bKG7wL4F0U5W0BLcO1Q2jFQyqo/raflfUTC7kmjkSApLLR/R6qLWcXElG+kxETQUk91aplRRLeFwB7KcnhQZNwZn/OoLCI/UCWYd7MJZiPAIdEkvySw/", + "keysClaimed": { + "ed25519": "cLJclNV+jNflR4/YMu7NmtVNzU9E2ztEuB+h1i/bX54" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", + "sessionId": "L4SCwTtAwCYbhH7nwaj6q5DhToqDuP3LIe04Wx4YBi0", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "vHH24svZmHdZT/up5xxfCU9RQXMlhluwrarhs6I0MtDKkLwjCvlLTtp+R/wcSrfNweaoeeRu0CctxjpE415z3JpoV0oOQN6rQ6UXNfSWZQt+DT0fcBV4dA6kKVb0SM7gkGqyt78WynCFpLkG1lv5wyJQ1SxGAvXEOiPPhpWM1yVb+RavssbnfOg76pPmZLyk+QpgtudEfqISQ5ka2tmfSWigWAfFYL30YaepWwdqmk88QVRE2qMMeZ6+ZJ0xsCHayyTGpaFs99c4k/hU7ZUpMFbfjTDKaOPuvKo4HXXip77OlrCJitOyJsiWl46diZsUr2R5kQSU9906mxjDTy+8i+QiXsjMBAXS/rpIF8295STsdbi9sA50qagbdpn1WW9gufR58MPmKNHC/rc4tasLwIVgZVWxmtRC", + "keysClaimed": { + "ed25519": "60YYjbRcIyRTvhEBmcT3i8siOhWoM/KVn1ZXqY2GdqA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", + "sessionId": "mQhAC0sVS/Wm/VMfHhmJH5N74KGDfJpLevVg9SHf/zY", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "MR9v04bvM7KVvSboQH9WUvAybISCGsHTp9201jByLi7AMloVCED3K2D7Xaxy857ALOx/Faj2VCm8ZrbSKjuM5rWGQj83mGrlRjYPRU4Voo01wbf2WORojG5nHs1Y/STD4oAggKnqsctR176lfUm6QOWNU1blsUXW11tYyyahJACcZjyrVQXb2LVRlsWE1hyV5Ol4erUB9y5Q1VWQtZOBro6nUE3jEzghgA2rIqAOz3GD0iyRuzMyII/zj3OD1lDuVbyEutV2eyDUPhx1TlQv1a0IbM9gDneOmdOHQ7AsM0D9cOAbhXkmJDCkiE0sA3Qzczam22+zKmzvfzosCOMnPkXe2txWlvwgl9GJtUkZ7++6M2FVRyRkJoWw3H39dNEWyKBzLWOZgFGkRnj1bHveMiWOOdMIPeOC", + "keysClaimed": { + "ed25519": "60YYjbRcIyRTvhEBmcT3i8siOhWoM/KVn1ZXqY2GdqA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", + "sessionId": "sxbBTS0E4jlv6V7S//BDFBIZJE5sRod9l6/hHhZO++w", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "7QFidfvaqU3F2zxOJDD67PB5CGnf9G7n2KdC2YLtAl32hw6re9y6CeesdJXwSdi+U119yU6/h7kkwUhhlZcOguEPu74oiEVpDrOv7JiD8I6nkI0Tm2ADbHGkLtmGew0T5AkMVS66PKGYhuBfMtYEwHwYlPDAQTmhaUpWdrHf4M8FZMWQMCJCU2m2gl8T9wm0cpyPAz0Pi/Co6TntIa3adq85H0UxUkZBHhyMJ0Kd6ZTdElfF/S6w89pXyVLQ0DUWO51BDKVjwRyUTCUBiXYGWLsQc+UgqOltl14+4Emjnfxl0gKbqvls5RqlwVuwA/5MO7Fa0ecwyYOTBtV733lhEgoWuCQCJyihLX/vk9XjAlPg31nFRqBG53RRn3IRVPO063L0BxWIf2e7qaMnHMjtTQeewJpKGXhz", + "keysClaimed": { + "ed25519": "60YYjbRcIyRTvhEBmcT3i8siOhWoM/KVn1ZXqY2GdqA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "sessionId": "3bv2JF5zktSHTQC0Z8Ia70IA1It9HDrUoM2sHRPd2FU", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "ZZdPE7+7bN12JAGXaEF5q94iRihOgMThT0tfjLG/CETDTA6Ca37+hz/7NHshd2zf3ZfvI/3pt0Psyqi5lrWX3vPOq2YNrV/72RyJe7hdkfMv4ImKMEhRhyqxrs1G1d2CHXvDrZbroVYKIPMlsUqFj94Y5pkK0HVxBak4a/423NTwZEPxbCZHfU+alvuULgl6l+3ICiNOM7MhsSMfbpuH9Pl9T7XkefAKJufD7TbGSWmuoHBvYFWnmj8ABnE7rmI4TlGUk0u663cIMGyjsOX3s7FjmFkL9sLn+81KgxKLDU2bFng2ziPwVoFG3HH4nEunshQ+vbM75Ullg310Akq46hgcOpjCEPHB1v2qThyK71m1YZubftD2ZuQXtw06aM5UDxH31eom8iiuEyj8WKo82FxWjEUPPTGI", + "keysClaimed": { + "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "sessionId": "H181lyCV4T8uJVoyXWb7O4KASvRud3Xfafqjf6Tgjm0", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "p9EzqVI41TT6U/agQ2Igq7Cku21E/9AwHTupjBjtYZ/bu2iax6zvUlDry410N9U1LvK369e4P7iqFZxTotkhNVnEma8QsF9eEldj+2dmw9Bx7ogKVi7co1Isywaj/t9LA5iRxprbVuZkwNaL5/FpCOBiLEwcLxSf5+6iKx2/6EwsJcivvxzWHqQcmIijyyxmXCeEh3JnSCGdMnDC0kunkXyJFekDuLIK21fosahP8Xhh4J13FLgubf/ElR1KOSf4dU3cDp5VK0eQDTlGrhW0BHGPcR6THAlq09euw6qn3WiIM/BWIJhN51BykK+NIqZWpxRvoawWAY97Ki0LrZ7zdsvd8qTLpHljeINv1MUkdyrlfvSHYmIGtm2xTmakyvx+Bmm3NE33VGhf4Yt2h3/DZEF1Nh1Cp0Tl", + "keysClaimed": { + "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "sessionId": "JQzqXLEzCh+rZM246wc8GT0SxFyDv1VpsrpcX15nRvM", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "Th3BPuRVYf4asi/CjEFXq3WWA3lF+MhCdnoapOPvIXWKGKz0is30CuL/Eau9hcwk3yL7+9UApJGJ+OeDHrVVgNbdpXjUY1vlCqAC9tBkWVY9nKDjBSRgqLPJotiCBqgDxFXsCdRXCqLKEES5bbFWxYgKJzcMHeL5Mox7O6Ntgh9X84W/Nv2DZ0OAQylK5AWXuJaJukBJmerdCoO3ltQuC7Pa/AJh4sZxMMqz27MsSvwtfTJFf4lvYOtAFlRoTEN6yi/CwU4oMIP3KTQJmcRQ2ZoZkzlEV6U9MHVdhjJtqeRrBOhGMK6EaRqhajCGUEGEd7dHVeWlW1FO+sg+vCe6fm1gcHUa5wQD7OSAf5NPaGJYxKBT5I8CFuOAvQI4C3T3SDchHF7IoaY9dd4D4dy6ftF8/ojecpdf", + "keysClaimed": { + "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "sessionId": "KcNR1qhTwyH+qtHJH4urK969oAu5bBBu+aEpcX0IDQU", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "V9djhlIH5rqFe/CuJkDdAYn36IDA2eOgtsfTaPDURfkI14iqlnjCkrEVanJKb13qRxx93rV9tVwVeGd8UOSHczioIxnlGItbutg9YKM9kLNx46sRaUj08yJb8oxTkbiddmcwzpu2fEfwX6wvV8i2LVr6Q7Bc1LgFHvXtcKLH0Rcg2O058yuJ+11j6BxUc62C3ouZfuhQEnadycHxwLQMMlczXGkKrWnu7VL82naudWPG4qKpoGpMOebYyuVCfb6H3cH3eq2RzweIlEEG5EiI1g1WUOaQ2V5eVtfOFPkPt0+glfqNzsWu3gLmKHktdjfImEK8uVYF9yxh7wUaFAFXzPHZnWcI2XEtoZDqFGDojdFf+z1YFTx/V3FrqNTSo05XWSw+oQ9VLyBpbTvvguo+yNhLhwiVPkXV", + "keysClaimed": { + "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "sessionId": "Q/r4XaAaVhYrzmQS/9n3TmQEDtd8yVC8Jol9YoAkaOg", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "FnDfo7uakUgJv0UxR+X7jMriG+M2b6gXyDcOk1K+YNnezDfxDzkptQ0dzi7kvzv1QFYpKs/O4RDpRRkt0ZjXfGRvihOhv+T0+yO82n0JnL5Xvfx1gQmDg4tMmG/PaDRC1aF4AuLa32k/drWS07nXr59ZeKMl2Z7d9Z7h0j1UGXYis2/IQuoRVyKlR8iZ9ElAl1HEeQO9HnrUVlJth1Pirrwl/DcGEfukA3ZGqXWGGjoAcRUCpI0EpGppZV7f6Je2gz5NrkIiSiypAARIi3iBlyMGY+xkBh3+UEgEKl+cGk/J3zSMJzppCd0CnXzwK8/tJIiZNtYaW2pPc9ixrJkppt6Fu0cMph9gYtDiO1A/HPUVGHvrxVo0ULnP9+cnp7UplMcmWa+7jeXU+X3muYhkk5VckK1FJqb1", + "keysClaimed": { + "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "sessionId": "aBPgMgRToW0uOFuXsnWJ4imUBwhfQ1Ki+V4mFHk7x6Y", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "PKlmRyvwuMzTZnO/7reSexNv1y/lNJcvJiEc0cmmKnDOlDH+YVmyPDUBSwL4QPIKKgLJVCUVR8eDK1tGDjR2dk9W3HnTFFWj64V+ZBHlXGojJV1pljMvjGZKOftBVhE4r5X9zMGpDq6IkuJIqW2aoiHO19WGR+KOB4+5LeGgskzLyrzDVi5rO1aHcT3FRGFkmTzQvHboSd8YuekD8EXDU0MyJ/JTjXuUwWSKvDfhgDOkX7jB3vAlY2DpRv5aLyyqEdjWtMYLhS5Ux4jmQmgj9j5bxl+RrjrTmwt3TUjQTQHMUfsWGfkjNDuuJaNLplzRXOhfboRB5FouglSZyUQ7c++LQ7V2BZOKZSR/HJJ5P+z48KhHkwr4D+5Doi+rrj1ZRLfRuFMZsqwP6+4kF0xVcI1U5qB4oaE7", + "keysClaimed": { + "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "sessionId": "dyrM7/IIwirOh2na2/DrASo+qbiC7nQNzdd/xwbIi+8", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "JIRBUYf1YVon/YbvCmev9hgJMaf5riUh9ykZqH/ppJgV19qWgVfEQ8qSmuz1p4JdYBfbs1HujnvA5XtjqnXwg/fY/0Drf/IVUnpHC6IXjnnAg8QazXiulHtJhs/4H7u07mJRjKwBayl4scZMYVB+O1H+5kontm4Oa2AF1XXr9hogiqKtwdn/hWX31Oj4dh8wQ7kZPESI8hmmli7Pyk47AVZwYh5h0HtJQhx/Owizea6nV2CK482WKJETzW66FyOWDHs8AjdxOW2oVRx+jO9HXJdBnAirlTMlnfF+fH3IM6Cs90dVRTCSNv+Z8Lm/XyNSJIeHrT3pw954btEOshJaUaUONzW/JkxpWt8tp1206ylaLTJ2hdaA3jg0pLy0lPAQtBqzaYPV8/C5XlXJUpfw5S+hBqVq1wPV", + "keysClaimed": { + "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "sessionId": "nrY8SbxDtREj5AZ/DBAxGMTLm9RWLpJ8oWjO46/kXCY", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "v3guysvWRd9S+5DNz88basuZva75+9RtmBDhbPcJ2nf5e/JLWGG44NXQJQ2zp5B3dYM9OCbf/ToUH76s66iUZZSUDtKdn3Ubqrut+gr2XMJApIblNGhbmsqjX7uMNEqj9sz1dUJ4O53q2zbxz6WSC7aYpiAwfy3fF4twmoEub1ekuUhM8KCGjXB9OiZk5uO7hv9j5ZZUAlykGFK1E3ywujtfMQufPmlvkiKgm43JGYI1c4p5iyfHjOoNM5aZmjnUPHoRIxS9yDzS2HSQD6QmKSRo51i/i3QJ6aOXt1v+D44VclPnF5gfojKdPU7xMynF+j7ZqZyyVF9TsyrSB1ppO7OstbBZbVAtFSPdBMxx5MWCMO4Z9M2svlO/mInNc5QP2br9J4NYu1RVKpxAEEQr3gbfSAODhsnG", + "keysClaimed": { + "ed25519": "LOMYgmYOogOuQotXIxRqRKhUqaeXg2+aRUFG5SHjVb0" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "2QbxGOXsk4Q5R8gTgrTX8OFg+oQr3WbXM9wqVo+6Fzs", + "sessionId": "Ti9Xik0anAjD+HY+C7c3BY3S+x4yMY093qw+d6USYuw", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "maHmoADGNJcJSC4seC3E3/m3vqB1+5qYwbKA7xbbWJSheWgrZaJVjqrgy1YWGbOGmykgIYUeFs6r5jD2+aK1FuGDoRooGK3b+d7Jm55XKvdRXxgL+mRiqOf8ilb+7RseXpbPsjVh5OTsoXb3u6HDjC3KQlTZ3yRuVoAvq7dCbFM5ZBEw7HG9lWZu/+UcY+UBC/3qWf+vkvC5RPqW9l23DoXvw6hpOjMN+b9QU0dZeqVoERVqTBJcRW826pSV+miwRvQWtUjeEcoF3trtxWw7ZLj4XUgePtURRdt3MPtdFsM/STCwVzwDp/kkDHUfm5N6q1ErRZLA95a8IqN9dSqqoismuPwesQKB6WRZXQBUDIU38ZECj93AXhX92/8rsbJWy/fYGObu1TNRnnELpM1sEh3bXUultO5K", + "keysClaimed": { + "ed25519": "0OLyRB9WaiKhW9CPx45mHEfVw2YEH4lllubTm3LhI7w" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "2QbxGOXsk4Q5R8gTgrTX8OFg+oQr3WbXM9wqVo+6Fzs", + "sessionId": "amwgq+pwtaGVt/vUbEwpRF3FZ21bs699FMXShYDVqJQ", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "ZiMO68hMek2rT2kLH/9Wdf2ogP7tUIR5064S133uLRT6MxR9qyFkjigVFZjTIN3QU1fS9VDIYKSBAcX7JATDMvvMoD4H7aPhjPE2AZYt9ZHY8NwTuLeYJPa1ic1KYeMav93+5LLwoQdSa7A8U/jT/QVG2mrgQo6iUVTFUcPdbPtTvQnnqJOxYQswC6f6ckHMvfDrBQg5KKzqhq4F7UooUr1pzenbjPOTbQKyo+DWENKY9+Pp2OjjAD56ECEvXUwa9tCbsG/gMZBK9TJdgDRWhAY6uG9Bc5+bvKEYZijXftHSW8KCcrOTNrQ8+C8pn40py6rn6xeOVF8DasBv725mEhMDegfRMQ3qORXTAq6O30A4my3nuGWA9P1UrvsWfaPgK1c96t3pfvPijh4Wq8jIqI8t23OKoLWv", + "keysClaimed": { + "ed25519": "0OLyRB9WaiKhW9CPx45mHEfVw2YEH4lllubTm3LhI7w" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "31cIbE9brvZuCKXcCItx55JU+Fva+Bq0ezSIrCFkGgQ", + "sessionId": "cMdqJC0pehitCVEE0j+MXV9RU9WWi5cM728bdBM/Q4U", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "wHaOA9i1AWv0S7MORPVyvGcgVJ01SKgzY1CSRQP4wk1HUwPr9qovX5O63u4ax5ZhqsaBPhfEhoXi/HEdj/IwyWRPHtveSmxN8IXI3hOC43PeZdF39gFzsY6VZ3db7r7NXX1uA0SdHQ7lfjNGVJEEnxCtoER8Eww/9htImzjsWvMRmO7Qkk4rp74jK0bWwVia08ZHJAzBL5jynn/hPqx3lg/azVN7MoUlSl1vWHOLA1dA0pTjuUA5Fxc3B0nzpSykaBsIfP6jTMTkGQhHWh2Jy8ZYczMb+jNy0I+9Xn2bxcr7iU7+EzwJqOmG4QzIt9vG6n6OuTLRqnb7APJke+Ms5aj/O3AqqD06keYknwvDoe0owTrFaY6x6ib9WVpNOFGasWyTaPRNWLU9VmDdfxUvjg3a40izokf8", + "keysClaimed": { + "ed25519": "Ctmg3Gdrew+Az3RqmZ8t+IQoJ+eBIZI3QT30MeRUM2E" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "44ztwj0hZV84CSONm6SKLlTPYyt1euwda1wR1BlxSlY", + "sessionId": "7uNrLsIAUi9cTPXzowkZq+QIMzOcB+mjY2LFwjnSAN8", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "vLLk1IkkPSThKwf+KHQD9ZewA7WHLF8e0P9dmsYaFIyvMyQiVb0YNmrstPj/u+vCqQCs4uNjx5JA4S5jsg4XtFgwmlygZuxxGGFEoQKov8FzU0JFdb+xBrr6a3hwlST0y1OOQTgGimmUPCWDjWLYJE96hzRsaMGnbr9roX4kTxO7MkLwW+Slzz5M45mBPKMotwJMhc6FytDpNNLKR517KbRSmRGikU6oCCoO06aOAtVxAKtog90ikOZovhNbHqrzeSlEPaFqEg9YqK76BT1axZIGUCUF9iqbeQu46F8fMKfv3yLvVdqqSIPEkscPsyhqdEKHEXS3DlKwaQgaoKPJ3Csf3OJ/vjx9O9J+gNvXO/L46oFjQg7ENRl29sEXn3xgAnR/VrkQR9CWpxhEqvqst5U7pXPBJhOy", + "keysClaimed": { + "ed25519": "vhPGsHTbwwwkWANivBzWkXivx1Yre/zhhlVletKXAzE" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "4o7UZbNLHEb6zYyXSJYuEIxilsaAlhEl07j6yzpTQ3M", + "sessionId": "/scdHnyj4zaM9dSDKtavG399oXnd6WShjmdS215h2W8", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "ccRKmEmi6uT4sp3/QTNR8KwZP7CY0XvDNN1zBK5TdGzAez/i57rbzQ7ezhp0uIE+8RNBLjOCgvoZHqdC26Uh2J3aqJ2lrABAzjrfBwsp8gmLzYHaNX0Ad56dC+WNQ6/RpTPIwUyNJaNVlPHZcotqcdBXnMp6/w3KL2tfSmFj2R2z/oT0gAveOyS0mptO5dXNsnzant2e/foGO0ZGEMdyQNy+T+2fGr8KrXZ/WbGeYWm2YYzrq0RNiHM9nf/eB4OuhBlkJscsISOkBJoA0qY7nwv9AAd0prARQzn/y2SMlfmoRz4RouMvKYJ7fPGaLZjAaygzFcPKWLRKhuViUhsR8bCILV63Vxud52DuM32r5W8eEPCaAcEkn+pI5w5VQxIsZbCA/n/x5sJ7uwPZOGm2oUAaLR8OBxLZ", + "keysClaimed": { + "ed25519": "f+CQpoUQIoPSep4OvB30vIBB76Dv4KmYgMxzz9MprkM" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "4o7UZbNLHEb6zYyXSJYuEIxilsaAlhEl07j6yzpTQ3M", + "sessionId": "Ui3a/yO8itJoooY2qMTRRvNgoZ95+aLv3OfuFAFD7LU", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "Oo4nRksKu12yZx/1RgJxG8eiaPWnuKl/gzoh0p/PXAcDtQaCLucGQ1GyKPwPoORPAin0KBC7euRXVWXOJ1bpQFV7VQ+yb1xaqGOufpIUYc0x9jlRhMYWT8zcGTKJqNLBgOrcX3kmMaoMWwbMjflOlKhQI0Hg/UHtWIiIvJ2C/hYN42zRDkxSG7Q3AGgPlAo3hNdIEMjzCXkJvU7kDklvl7zAUc2SvpASaiRIjJhDLnWiyW4GkyK8oB8DxjZv9aYp25JBfFdQNxDUsvCdY8QT323hBvvmQayZD7bhkqnamMQWX8AVXqBBY/qzZV4BX6aKQDvs2DdPM/ZvUg2MTN+Z41c5CUuVBAfpA3peFIe+uDZryQMDl+issllarW0PaFvNXtP12zJ1tsoZROMK8P3ikKm8ysFYgL41", + "keysClaimed": { + "ed25519": "f+CQpoUQIoPSep4OvB30vIBB76Dv4KmYgMxzz9MprkM" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "4o7UZbNLHEb6zYyXSJYuEIxilsaAlhEl07j6yzpTQ3M", + "sessionId": "mzhLyAG7YVw7mFAl6PPbOvqZ92Hf38UYrtBoUsSB/4E", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "TDaX4/1hVz3RdtQFwPauipP0m0BdKj06VJPSTxWNnUEfHBmvrXjbslc6mBcbZSazeWkkapsRaGOKlUIyRORa3E5taqn/u7JcI7bRxmMn4n36A2i3KIW8WXdUi5ZPOhgB4x9V8MIWPIT+6vwVzoYP3xwvX3zD9n6NEF4dXvogVyPUJZ2El+MJpAlScAxsGCwM8vKFuKK3bdqiFo3TJKnA+GvzJKl/MGd2DebSz2YbNQicGslmCXvvDfbBL/QVRBiCmor9znD93IdLx555229DEZp685g8FcpwYNlKfctjm52X/vvNxgNd3sXukJzkoFvTeXFO8deJtCFR/qn1O42THC3FB8WpzdGpPP3gx6zlW6Xik9bghYz6U5wU8qh5PxEyxHSPZQXZoQjw13cyAHiwdvZ3+a+jJxYd", + "keysClaimed": { + "ed25519": "f+CQpoUQIoPSep4OvB30vIBB76Dv4KmYgMxzz9MprkM" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "63T7anu0SxzQJRFnvmHXuQuSW63plQdt00phE4lT5HM", + "sessionId": "cR2Mi5hcIiaH+XIANBknJq4dgBbSaopTyeduoJMMkSY", + "session": { + "sharedHistory": true, + "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", + "session": "Ss3W17Lsp6AhgJ0tpZBdLXbqdM8rtd8mTxfVbkQDjL+JDU1hmlxFuHfweOZ2EMK/p7+VEGUogeQ34jfz/vxg4a3qrK7b3Ocq3zbk+Jgt3+sw2G8g4bgdUsS8iOXd5s2I7Jq3lxsQzJQ1Gz3JlF4vgf2kiiSxxkkfz9F+Dth5A0neZHYS9/GbK1WKN4GbvYE0jwkLGStFyMcGybzlS6Qffz8Gr+lR7vZR2Xv29tlfMwj7rOcngsELGocnx/tQRNyQSaFxRn8cuc/WkxXBFGRNU0Nun9ZJ7zugLo8G9KxByRHmwWZqRC0uPENNmoky9QDCy8vhtTRvC2fWS9cAAXaYrtOSPi4CtVuED4/PVOvRt4PB7AQNsSM2hxvtyDaG0Cr3fypuOAeQ1jm1S73iQNtYGpZtdPx0yLLm", + "keysClaimed": { + "ed25519": "fWPPk81MUp3kofc5SR+yEg8c99XXt49pQH+iSefcbJ0" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "76YwqK0pg4oc9XnCnyVeHV9YVJ6GmQNHwWoGWb/4Uxk", + "sessionId": "lXTomQfAqZOBFISZxvKPwQODNojDo5dQWftalCLv1Ys", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "SZ206hujvaN6zPo/92wBijaz11yxrkInTi9ADYzjt7JKZ+lx4SILBFr6I7tPCFleiaG/wEKdzYXytA+M1tcovp92Zq98tJ8T+Z6x1tObrFSgHxiCBg1QfgK77/qqqvwaINOpaABcBDG3NneDwYKlkBRDOznBN70CiRsKqVQuZjdgiYeCQDG8agSDIoz5/9+Z4VNJiCMj2PuuXVXOpAjnQj+Kb/S+XYvuyw85/r4YRjchHTKzKrj7ArD+VEhCQHBpHisYS7Ro1AgnbyWCqETExYtFCI83Zye4A65eecVEy4f1mRCkp3/tkXpHzbfUoaLUf95daf8t2ZwXqeUPD1uAZBztZPxPyqD7nm+UpN+C/jzSkQuOGch37HGP2LWQ+I1qfypV+9s4c9z1c9yt8ecau8DDTXYlDA25", + "keysClaimed": { + "ed25519": "36ijsZ1h5220MO3mcK5s8j1g+6iUawqhEu15z+fflb4" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "76YwqK0pg4oc9XnCnyVeHV9YVJ6GmQNHwWoGWb/4Uxk", + "sessionId": "rmHcdter5BUz1xAUV9Pu1+JPx7baZ3eX2O/Fv2SMk98", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "kjJqhmyOXH8EjmorLjuLDQy4and9X24Z+S21a2lq/cqFLD7VBZk83gMCd9sjJfytvdLhRoZXmgGjCP3qpiRP2ZtBkMQFy/ZhaLX4b7pQXJtFIHCUa1msRfFWjOj6vvCn6/FE4G+7KHgMhC/DYkEsSagERQXeWiYiv9MVM8JTknysFz3YJTt0yxS6UUAA00bV4bhQrbPEV2ZL1stDqJ/mVUOV4AIfV8tvOiz0XYZHsaPr8Tot4+fkgqJ3PQM7yzYyFjTtIdWO6rJgwAZRuA4O7xedQjlCXw1U2haf5uiXwgvESiB/9J1Rl72vwiaiHbVUQWHY8z4wcSrl2bNI3/oxK5OUs9RYWI69nlRGdlslSD+tCs6QNurjqHibUcgnwNoPM2jIhXbQmEqnaK34gstG9fOg8L60eSlN", + "keysClaimed": { + "ed25519": "36ijsZ1h5220MO3mcK5s8j1g+6iUawqhEu15z+fflb4" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "++3YBt8NiOnH9IfbFc0kWyPbV86j1LeaoSYpOsNSft8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WRbOtNBOS4rpYpxgW0b+TDPYtgZ+S9o6GpwknaAvbflsQd/bm9+METoCl8JUgVFJyOQtdeAyLvDthmCq61riS5TJThYMyQrGkkp3gckBMJx/pHUa23EI6ol4Awu0TVcxF9S2lxlT1O4jRLiw3kItn5GiZZoo5u5wJYSUD6oRaLTQSX9ApCoDTZhEgNg367ySTlZWo/XNJxhvzwTwYq5H1eQuPvx5SiD1jJBubB5yLe0OFbE6bBtfRljfI+LnCRYRAPfl4Iq+y8m7CQWAsZBxBSNw0aZWU7uyngmKQ5gYRWGz0VINzObm+BZMwM3ffBafbYmKchvh5LEpwwH5C926FqEHTJkuJx3PQEGDDkE3FRuPAfj2BUHJ5vDpKKwJm8nmU/Zgb3RXz4BMTMXg9yA8YfGThvF9Ib5Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+/XWSeRq+NN6MyW3zGGCYLbzm1+OW3By9SX6UGipKy8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QVx/dJaCEkx9/37OMuMU+T4KsUrrqUT1fKf5FxkXcr2dbmH4kMS1j7JzTJ5VW5yUOrdA9q1pK9+4X83k75Zuz6MvBl+SQQJFwTeGYVBS7W0nmrvcrU4Fu3uuSzt4kAALeU4eIoU/dtsGO9fp86Y1s2yqiquVoiFrai53RzuzcKpQYyqKAxz+aWWh9QfA7kz45lhAi74b69edyWYxlAW1Nj0oFC66UmKAVXxPhNQ9OjCUa9ukToiKOYe6Yas6c3BpQqZG2aQV5yBdrZP0v+3gZXQAIgg6qfT+b4jEVX2kgdb9wgWaDq75kqBn2M9XAnt8a4Ou76dWoa5bBoAYZMfgTBO79FiybThvWyqJ/rffb4S0oTWWl9ZsyUr9pjvhuLbypp1ZBsYNVRSu/j3hPZ/Xc8/HqTsbXMDb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+/hHMy3lDphV7vnWWNEqcrGbdcx6UEoUyU+DvuFC1oI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c53PnDhg2OSP33ixh3ginxsK2Nt+460nLqlt6YLEA4x+KnrqFnQE5+kWBqNcZBXsOYDz3i8UEfFkBUN+bP86g/3ZOBnUmJBRu5n4OA63DchwNVckhxi2rP+cWvl3cFJpSugTzU89k9N3W5wLW8kclvOWM+PlNTXJCmFtmbKUHsgab22Nm3CFnoH2PD2W/We6Q5DBgacG8oGqmlsTcJ8T24j18PGHP1hB3s3bWbdw19+g9gostejJz1eEXWqNnCokP4bWEJLU/vSz+5P9arweaOirlsg85Y6DVasibpkgu5Lj+QLVrJQdgcXAIrs2Eb1m+TgT2kOz90hjzrIjPmaMOWdvDV7Nr1kFiB4FdxgkO+mlH1gS/JtFTUW+v9/6z3KfDe85OO+OK5D/GRZA08DpI8B8upDmfNLd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+/n5XnC0FEuFsvF7cQA/abXK1zi+3woXj3dCseUfAnE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xExIPv64G0dVL6HnLCe2idjjP4KfrgN71F5gouZho+hbT2b6u8uSxjBnDmPNn1Xt+Cm32lqO5oU2hYaL4OuZB4tybRbKX/jc9TRlU+JhuYBBUKqn5YbH+D+FLtk4Z6sJR6dADoNcllP+W0l1W0h6EG7Rc/xlqDHQXLF1xORhgx+fPFOlTpqCH42v//KFFykNRxb6SbUMKtgzS3jo3GcQ1LMicQHswwpSPpciTHbrG5UttWsXs6JIGNnVNRyzZxUdj1nCpBLB+Ra1rCxuQFynpU9M79GAO6Z0H2ZGv2tkDmyqSzzXEchoy3ezrBqG1DxMk80MNmIHfDtAAAtxFnil7WMm4oUy43J74MXct+EM8GvzwTQR8NDGl2V1FDb1Pl7pvt69nXFbz3AsSdGGvBj021MpGRu28IJY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+1sAB3f4bU8FkinbZAEd661Xem+o6G24608rx0NkCSQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+tfu2JSbTIq3/uvF0CgbH2Puugi5CPkvGOINiU2fZdowA23Jyvd0Kqwz19iDrqDrwiURDkGcfbF7TpJcqi4xljDArR5i4suR0+ToufQ/ZmLl0DLzQnFOFHH7G3Uhc2zszSIhrkNVY8p/TRR0EVdbn+kU30SrZXGOzeahXGpvX26EvbH/EKd3A1a8gLkmD0DY2zxNCe//2SbcFLyWSMK1bnb7cK3FxoEx77TYk5aiYnFU/LCwLhKtJEEb59ar+pGPHgrGAE2R6ZQZUrWt9LTEPgpMAp8w7OLo9TLA5TuKoppvrJMm8g36YRYM2i6njPhAi4ydLh0x5iG89m8TqmXL9+blyBh3uKhJBk/3nAboFjaT6LU7XSDo9RPLTIARBiBqxXh2tyXzRgS7b6UUwZsMGC006KS2VbZg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+25SFBSYSyDXOQk8lYe/Yx2e2A5ezYQKp8xpqSdo508", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zVm7CA/09HhnX+E//zOHDhBmjLyzikhucw4VFB3nXkpbivJGOfgVEK3eMt+1vHEwYCSkli4gRFL5fPMAph9avzsoj0Ib6cMvEAIAw37BE4rwbATqpVaCdSkAgKJ1FWCslSK35PErTqOXfJ+3ojccaMwNcYnYSv/xmFsI0qIxETXp2egGcC1Z4N24QcjRnAQZY/Xx8pltuuHev5mdP3Vt6UO+1gvW+W8O1OTVtG6UEqKH/GIQRHkfP2fcRiP254OUmIkYunQAjZQhLyymmfD4ADzQ/TyZOjjhtXDf+sj5HazXPZFa3yEmcmT25dPLTeZefUiKobMLgE7T/rhAAxkdlWcXVWs3yZ52gW+KRCVgrMC5oC2fTdjaRrZt72r+6PuwF8vFluG57zHAVGuE1mjAmO/QCUWW9PLq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+2AZOxqWy8bmTuLhpSvnFQtPLYJ442zdDv5yy61i4xA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6vFF2oiSfacOt59YdDcr/4mkFi6jdHfeC3sfCdu1I+J/hNdaOh+YjD/hciE5neGDzpzcfMTbOnafB2iCiMSZXq6NWyBUvhTOvcGj4Uy6KRIiwQGelXFTmArKQgRSOESBStZQDA0GZtxKPlQXCmAx/7qF1+hCMtnGydsuEk83/DjTVLBCoOHJ+g6vRnbexOKy2ymQaRTJsqJ1x1syKY5TNMsqHTtFJYj62f3Qzyjf+ozecyne8T8QxRctukxVzovyEj8l1WUvQ+CvwDzxkvYZBw16Y7xkqHMQUR0nZZwIWuU2j5A1kjX95Vumw8Z7mF2ZdX55QcPXnbip8mgFRuwi3IdJ0cmKOFrXg6tatxLJ7LWN46f6OSKFxZgWphu7ANFk5zlmQKtrMgef67N2lMYKiQIWqlM0rfRq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+3PTe5GmxV6z8vBgIvVLga+jUdTtG65L2eMpq/7ikxg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dHJgsIROWr4VfYtZTgwhl9O30ylZ9lfTcWnsaJAJUMCo5Gx0bhiNOQA/JKCTC15vJYRCzrfM/ZIF0EZyRT8XL+FhPu88cC6NPAmcKhoev5G8pLs2hrHMerkTDKS02TVYz5dCffkqXL6lEOVFhGW/jj1L9qff1dD/G4S/GspOrF/0L7lPOzxjTvzcunOjinfWM2uuYIT9puCx0eX2LtzFPI0g/0dO7R0z4VbDRDlXQAtNwRrRSp2nIBW9wyGAGroItN9FxWUHhtxWjhJWJQeXDN3FV/A0eh09WKltiQOYE6w1UTr7rpy5RJSOQr1Qipm/jAKEEP23e5qF6YKSfIM6g/uxLAAOQjuzTwyOh3UIDcjBK3ParoY/VgGiXS3/SM+JXmvAiJeU7gMiK+jj2Mfuwmh1Q8bH3B/X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+3U7dI0Slhz7Cf9ZIXShjv/UPQppvZf0dMJ+s78KX8I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XjuLvZ+3WaueUXmylPflvnybdb9J2dPwSS9J8n91yi9LLxDXEgUWPyeAKHvBEYDZpoX0i7q21dls+Z44hhujcJRiUpLqnLSFR2gndSn4KOI0DW6qdIo3a3+dQtvBU8xKSf/ZqDSQtbKRnuuye/etrsDTwCXC9AZ2dfQ+jtPH62eKaYp6FUcLdPdau6Lol+NqbVlLjzuMCA7Re3iKozMMW1KFXuLA9hOLuoqKmSLbN88d3TyceJfv5BQu5WjeYyOqIcaty+PNbx3UmMnjVMjDvdKZ6brHHuopRfo/LkWAvat06Jt+HjwWXa7RvgmpuAXWJz8cCUQZ6i3d/O4gq5z7391sT5Bj/7NsmQkhb26v1OZDjnm//OmCNXP/vSA+YVN5dOAD0j7yvEjQCjyeF0IMJBmPqvTyQBD7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+8cLwA6bUI2+R/oq85JgyztMmjdthfcYzW/A3jbjK5U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cJK7hmnHQlQRMbSjFxaRZ1GpI79exPcdzsarjmH9vYunDPsBbesS7m5iPPHfdgtQ6iUv8NZF7us+207fmnKN93ke9uOY0Nzy0FGjVaR9JmqW7j9ERQgm3R+9xPqhnsPtksCjRdlbgcDEG7RP46hOcUJMNiPzAMqyZYBnq9Dt+V/PlxLYKg0sJUOevKZJSRyzX4GuNN1sH1z0IjWOn3hoc1YZMZTPbAT39EcpQrXFw92p1o3hR3UpZjtdha7OZzT05C2+iTtJE3X+JLbYiFIdKEKqHM585y0wVdy1Io4FAoTt/10nd/HqA0TyCgV1QVSqHA5DyGuktfbaNOwoiLrSCkOOgoCFG3ijeb3qXG1HO9r3KWdDHSpvXrlvov3oLqicnjB0eZc7ECaojk6N5J7XyrxsJ0j3Jw0Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+908ytZeAR1wp2Zq9DeoSVD7r3jafMvXJ9Lmkr1eX80", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Zpvu1WhF21B51t2wPKUhaPN7WiVhwg0HIjJsw3PBPW4YN5qjUB1ZCtYCAmPWQGcCQCa7a8GiacAuYECcyqCY9qOZ/YvkGZP1BDk59qVHnFeQHoppBLz7k8vUFPvEyVF7IrYV6nTt89jvFtQ9shibJv7jJ0KoCVkj7BDgr4Ld08C6iiCu0FhQBio/xgc2OaB684qEAC2vPYP0GUKCtn3VcA4Ijvkx1TB9HsrIwtgDTYR2GnH7fW3FFuIGR1lPlfYpuhVjXa/7a8kgwI1CJn/IkFQP5Wkz7jBXPE5+Pa4Tmh1fS4LuOCj5aXzfI6ca31Kb2av+xyBvJL64qwDkldtxqam73dFMfsWPzOvUXPHsSN5bdPoS9ZdHkvO2xiO2ML/1gi1apsjgMlqr3+F5O1ysNt7njyn/bbZS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+9N/GYStj4t3VrrwQPZWruGR9rDG5VMWQRIhyOQakwg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8tm5MlBo82FhIrGnaKnVAVmFufUA3kz645/zLGXwTbabYp2GOxMzTbjxHJZo+16zuiCsm0WDWS03if84XqWQ2883I6jC1ComvdbLRJzJnfFYQ2Ne4zvemDp66ABCcaFCUVeszaLM8Em/X/XpGEoydIErDfN4JS5FnuPO1Krx7++1ro7fVJKEiIzXf3diRU44kVp60M+z08s4TUCvp30MYwo2uS41XlaZ6w2K4A4klc+QN0eT1PCrhuNU4HbzqzTEXOsPZQEqHlesm+VP7eM//Z2O6o/ILw8/R9d3lWOrtsFaZZ06ATZHTc15Z4YiB3Esnq9JyhPkWz/RTv0clk2CHTYyz/5tTwx39PRHnhaIeRPaMQyGMZ0OKaBTf3Gzm4Jg4sAIioP21mocOTp2Jtbyxq4ERST7CjFO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+AFbaa2aKz81mlQy/8Y4HXtPA08EuFG7mDo780hSFYM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "454dgOdBdLdUKBPDGQK4fU6JK9741JpzMHpBSKQ/imNNunJ51ilxkUgW4YzR1/DPYh46V/GnO9ijjduTiw1i8JslzEqo7T/pioB1Bojdbvl9hNrGXRAjOSGlwaZl+JkaChtQbAPYccFdk2I3jtaGYncV93/dweiynZiUtBjzGk2kPRIt4uiy1NXPBJBEMt3C5YK7YkpPs1MXDRs9USNEsF+vGVzY6iHOuDZLpuJkACvqniwv6EGCeo9AJCVzMqVAB1D6qwu8LWxqjVb+7WIE4mpJvwXNbpKxcoUpEPYT8/sOQXjZtjZ83oIsAVMnmdSj5NH663WAFtAbTihSn9RZgljpLCluCUQB+zzzh53hlAbuveKZPrOlYleLBKJQDRMN1b+ts3g/CKZa5T7TIyREBK72ReWq5gzA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+ASKGxERbVhphiH7invqKjpBC3PCc9jbY73NpzyWWB4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DZFH76IV0M5JLz+PAnt2WGlQuwJ3DgYqUitFWh4E6MxbdpU60rnCj8CCy4Ky+5n8OKqNK2vPV7sOtoQ9C33sDwh8JrZtLn4xEo76xfHQKIzOgBwnvDponJXZo7aZdbsLNiPIgtEzkp+sLw7VnC4pydKoFVXYEcn0w+pf8G5xzo+TxtPFsTCVgYRbznHXODJHOIbRR5yQ8Yzoz1ygfDsDYt7aq4BCbMluGTMWAluqDxxYSaba1rMuHW5rRw3clnlTGb2UXwnNGRE5jnP3OuoY91lnGRyebvvgutzFG+hxPrleRKUqyxorHKBd3tefYoqcDl3Rvd3oNcOpRaVlVDUr6YDhZ1F3/U1nTQiU/hv/4xkyF3Vi3geaNbvqjsFG2NWykqHKS6d6dq60HD4SxQGDqX/O4NllpXR9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+AVqEei8VvOUrYYRYM74DvfIXylKy/qYz95t2IMg84g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+WQDye5ohH2pXpU8/hKI1Oo//GIg5HpINL+Gv1GkSMe2QAf2/YMwehjK2Vo+Kvllmdu0sBNBP8VJIsoHRHl7OXDXw1hn0PS7PVZWf+E2DGcSJYh/pe8v9xITffx49Zo3ycfB73pigJoYwrBeZvhDRig+UzCP4iBT5wl10sSFPV7DZdKw0O12C/Gy8W3w116qV/Gyj01tzVKdLJyzyxb6lO+olj/C+EoCAy4tZDupaLbLSTuXfHok+mGTG4/g1Ur7SfiM7P7KmXa4NkVdVmoSc3KprSDeSPPB8VUbRUV4GPVYFab54b5TVkLh44GuXrSnmH43QVabcns3QS3Ib7Tn9kHHTviB5gTDZilP4FvxjCLqt3C7mKmRQe2L7O5N/kC5QbBK8xMu8CgCWR8a35iBdtX2sw46Zzx+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+Bnjl1keDPk+hE2rCynzL1b+Eu9K+DGs3j6Fa7O2YBc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qVz3yTmqfk6lxSGVqtKINhr5zbQh6n/JUA67YEbaZKjy67o390/7ZjY6O3jBJ7Rh3g9YujYg3lSn7Jig82zEu5Cdn2xSYQ0kiyK5xe0hZjFkJEvWM4sxa1NfbES5DbGrc6VZdGW9YwJgQKKT3TKRbne/LIc7wYslKJnnTDSbFnNUy7N+AcOb3Plx8xdG4Sx723Eyc5YL0XdU1gcjn17Ac+puq7d03QthBrjGPVA+tjirxRTTT++CXwU9UwQzL88lojcJhhOgOxAXaxtCMRYAvJjyey2en08QgiGw3S1D7/bWIkLb4g6dXO1vv0/NwltTodZ9N4mmXBgNNgFqcOPeb7NfIz3pTwbizAk102bLnco33p44N2D8aAdiPUFSIDa6oIPseBVPO+qTzqa4+HZLlpFpwpqKutrc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+EOT7fF5XdCYHfWbRioou09t7ZU7vRTe4djnfiJswYo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Fnh9z22Vii3hw8jyfnWKNU3dgS6DoQP4F1mKFB1wjuvByQhM3+TcU0Lon1Y5vxNhvjTZhIVhhAc6sYuhlDQh5X4v6SvZxnid0Qu+dLuhdzM2osIgtfFu+sgy/MIjePpuCTFiaiCV2PhB2L2ymV95grvxUBoNTOC7W6vK84STKROCHw+ElFxsz6aEYWNZLDbb/vW17sBNlwXZLOZzRDw+K/CnNLTa2PFJ18UYB8dWa1djBsfCojGjv0Jc2wBD2wB53yfSRJwIWXE7AhOA2iEb3ToUuYZhTEHwHs3bi/LAuc6WL+NrYwGdqkJBYHluuSy5vuEAqks0z4p/Ve3Lkd4nDfK8xdS+iLwfUtcyxWtBhzi23AJl8yZfsGxmxoDggpQd/0lH+SCIVvmVnavkkNqcElVRRISGCpmc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+EVi9LvGU9gHgvuSkIO3bvD2wYSS3V8rCc9y8Le39Cs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lFGtJwq16f1xXUwcbRljD44J1qm//26oC5LiLmYWB9tVk1GCGg1eCJe4QssgiWLCZKoCMHGX8p2R5NvO2ICySDvSk/qQ2aKDb9lAFtvj7vI3WrwLrlORAPjzjRZ2K+jyGxlWilJ91Zj5PxJ0Z4MBgnJRBsbP1Rbt6xzGv+5k2iJAMhMka6lpvMomuMAItDYCVQJ5+MmO/Z8SV+JWXQrQzYLiIAOpEOa5M+atEkwsbYT+nHa2S38yRKW7dEkQ+z1S14bR216Mw8LdDAs+DueLhyACNQXE5MdO5C5oa53ZbxatWhPpvzUmxuQZv4N8e5U1UUK0UyNq/cNLC48fxRWLvVeV1mrLwVpTv7sRWtsF49upw6q34zJGRy2k61YOXNNhT+0nLKLdu8KHxdeRFGsHVfJRhkktHJ4f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+Hbpx6AyxCOZodCND6EgcJk+Un+L6efqn7RMKMobnKo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RyNY3CNvSLgg8JC3ukmSuswmiT8m1tvZITe3IoTT/M20S5lKTIoFU0L+YjY/yo1lQHs9VR5Jji4TBmiXeXCZ23x4XobjkFRnUqYsoBDkyJ4HMPwLMn2JuDhnHvpRMJCqGYEbzupQgJbOxgfl/LllJLyrsGhTK69B2yfBItXwUq/1M67ZxdRhrwKLtSG/sLiKvWCIEig/9EmwqubUq5WStrZR2qGj0mmLvmZPexunSml0qBtsq4OIr0Im04xUEbE0p3uzyLCIqxB4EBvCX36XbQ8XFJc4DF9UhSsEHC8mh/cFdY6c63Hg1XXmBtVjXAlcqxVc6h94a21KtQvMYkuWybWW9qLRjpB+OOQamCRQgRm2i6T/tMqoLv8m2idBqDS8NzJop5VPsi+0BY5x2OHAWWp/6OAd+4Yn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+I5/SgmeHXQS9FS67QDXc9Ve2YRnwUEp0Xos1E9JUfw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A39w72rDatkRiob2/dLyPgXY2VzRXVaQr0JCv6/9af6wBozGcq6BxiXRIyvnxHE2NHxJMeerkpHYEifhpoRf0AarS5KXcmHx/DHdkrknLZRIACvNs/FTUED/OFGskwFAkPGmeUM1RP9EwUMrIdEB8WoD6slo8BU1ak1NXOTJ4+rjdGVMbpqF2OLX9NfIAH1rlP22IQL1nzUqQtXDyBBkKcUKih9GEimlHNGdCl9jeo4eyA9uj6X/GzRagLCVNwFuE7N9+GRm/1ToohIWA0xtgDrtvdF250a/RZ0rac+cLMlh1qrTZG0Skt1qRg8FNx1UeeYNhgBtCoxqQxZ2vuehpIczwz46Sf1RvjdzpQsHrwZvliNdmc4AIkSDaL2FeYoyKIxRmjEFg2DwJ/NKx5/Q/ZubQMz9iM9b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+KQJjXDJC9CDOIb9iYuV1dHHvPpphg9PN1w4BA0+y6s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8KnVsOa98G8BDILNuk8rbaKlxNIg0cFO1/Y0i6RPMAh+T76i7O3KQj5UJbmoYaSlOZPI/n5tWMlaIFsC7GvjabQZkJ1Q6D0dvOIxNmwPslcn073Hxj6U2FkK66R2FcGowyknUyFU9qezIH6gDxYq91Y2QDVgZhvYT/mL8pXUAutfoAxgJului7IPrum1bVOviCwgFOp+L38CV9sYBOUbeqzrht7IukzOwtSTrCmh5ecOt4Qz9v88RpwYxYX30ALBs/PMi2L8ZWdea0YSn+XSdW2icpB6Ue4FCQBUHYZVTT/XTi8JaTLyya+XiJvypLreNLdFEc6cFzH4ncq1hYDK9mko+0yohLO8t1EL8TYROzv8L/TlIj1hQzk0bQzNoiQHos3aamWnkuVtMrHwvmh6bR31fkVBCjrI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+KgSrZUo41mj/BIQ5DZpudOkz0a9Pu8/jDa+/hnGTyo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wSkfTsWxr/C13VmL44U4WEb2/0eTaQWFVybWDRb6wCMzTxgTklH2zO2fXCLG3PwZI/4Fr33xbcIEUkhao1KbWSrVgpPymCn5leUucv9qBo3vGf9ga0LeyYUeYpVrU/B7QhKa78wzI/1FEyQBcBJm+LsLmojUKsSmC+0xDjhlUCTWRrUWhVXsatFVNuRk+aAMaewsCInwWpv3plEVKwaGnz1fpBigh8XzNntMsiadoYt1Ou9E0Gjn09yXVQiGmlvrfyIwl/pFlt6l5TBTenO1cRAuPHKs0lv0pMKWJxokJINA1eQJ49c9FoViLV04Uaprx1eDsh/YQQUfLtOxxIF1h3hWC2RuCWkOoMRosmZNOuBMOexISoUdPKTX5mUtCcKVmHKGP0OfVg/+MEdZO9ni7h23944mBcBI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+L+Qpea7gyvUHmHarK/uVzqDphtp10IKVV389JIbLyk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i23m869zsJZE57NqjHKqtUZQSboUFZh/BQFT9sDhYZFZSDbN9cBSkpw8XknU2p4AS8zpCFF2XFuSdCW690jyEX7MW1NA1Ikp0jQWsHWVhpIdrEIjaVdPcTtmBBHT3ACUREwzqRgYXGk2Xg6GSeJPkZfAL9r9SvqlUD5VYwiwq7R4FEwZ+tWbASHGLzxJPyFhOhCGWixORBNR2yTpGgj5qVr5dlnJO4oScZgACrwXvlztUZTi4IurX5G5ivN7K/TyP+VCqL0je47dZAUODIw3jaggJmwbDmEzvCxUPDQWcd2qONAPsU0azuGKM/uOcfPNkhDhwJUcXE7Vle0Qmpk8cyOgGy+bNFLo0YTDP1IUxG124mvJy6u6I+NwDsKGF6HVUzDCkb/itagiho5wrViJLYAAIC+POlMz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+MHcNXG81Ucys3ag4Nopgifx45FEwwSi4elX++lFW9Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rLCom9m0y05fIIlS4IFL6vcPxlcXGIxMDJSugXHGCUrgluN44qJrVt6CC5IJRibDBrQ/RtUvJyY81cpCs9nNWJhH/pPJ+/3PaRa51T6qjlW0dc45Te/oKuyldGQL1dasrcFN1YvNuG4IFeLCtspi94vrE3FD/+bJTJBb1yAa/GSntyArGq0YPEGfVkFkJ6/BXdcX4y+xCS3b4yt3juch/UfB5NE+lEgoj5ho+KyiZtZiVNYibo3qUX6FbdQVk5FU2ddG4uINijxCmp9vLvapIbQCLVnFK3PZhTnUD9w5nFfVo3KzZBNqq4yND3LVASu8skkT1OaFsVTUDHey1MqiNZLdn8Q8vr5EHZ0iQwOKEbA2cr9DXOdIqgYaBkl5JtNNH3NyWG/Zr19G/VxA2SxaEiTXI7jcae08", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+MUg3TwdZfglB8lGXYFuuBAH4wevWryojubgwhgFmfE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7IMuZ2rd++Fh2UNCZek8aplE2ClzKthRWyJrRzuIyRY/YFOW/8Kbd1ubH3lToFgJM1ImBjN+qVAhy0EHG415nPjWezu18ZuMofsbEbPQkdFSG/Cr2dLX6J0KRi50Pm2bm/PG14axkkK7f7OJXvaLD9ENZCVP4K1xgapt+RtswXbOhb4uUhao9+/8UkIMUQTlqXUdX1idTx1aqBNnS7+8yVVlyS51ruBabIeOLXTC4orL6PZQpQN8tON1PvPb8IRvKsUJd+1Dfa7h1Zr7jbNspcKPYZaWEz/4PnmtdPJCWPh3WXyswXsYMHKpvDpeAzqRuSi+w7U/9erdKvXe2zlK7SXRWdpT8F3tsPsOTWdYagn714epQPMcKATXwd4E3lN+TP3X1n/EuJuShMc6t983uZGo9Ausxx6n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+MUnp0MEzT6JgFrIQMpDXNydz2LRaRYk+uzMkXDjTO8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gYCVO9sSv6tdLSF0VnUXTOa6NCJysrBlcDrOdWzOmo2E329zSBKaMgqyHJdvOFULk1LLMhZ2d8HU0ssNRITXEUD7fAU6G+zB7JwoCPsF6zRf1Ootp4Db+erilnlNwrkRNVEkd/ZW6vvXn/jFrkRXsCFm0OX7riBkapLtk+g36L9uZCJt03gYPO1vNBJUTG5LtSheuutle+Y1SgFBZFH3/TmKgqsrqKoMKJ6KVFfXW4vLFtFsLGdt1FVrYXrvGrbJqiJzg6PYt2gSjIrAOdLqRFrbBv3Ip7a/6Te9pZJ2Ncc1D425hFPlm2ng0rcLi9pqqetVXU+PKjrqQKGsI7cu7inKwMjo8xr64ZpIDex2fOc1JrjluuAWJUZgRy15/7+D7iX4SNSOk5Pz4p/Asv3ueS1B1qQSdydN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+MeaQGw+sw+ObqGbDfh2K7Hc31JKQiQCxXfqydGm43I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CnJjL420Xhe5MNiWs4IJwAYOnxocfZdUMGEZ9tzcD9xBbren/O2piABvlMA4gdn2oD0HwN3tC0l69ecfcAZxmgCIZYWVU1TZQ3iiBUwvyvdl+Eo+9Hu/+tqQMK5LNCixvU3nGZ3ryTyl0CmfRivKySilJoIzNMKjo6idWvzzua5LSupKLob3u7iVOFVjmQexi1qCmerGkPyR+DF+zgr7nMPVhfpyG1VHi4SSkmwOxOgH2bhJw4BqLPhqMA1E0gqZ5URwz0b2haAiEM91sMRnnN2ELZBGbOm1IWuAxrOntP0gjp0/4oDoB/uHG0MetEpkm+YygpopX1hTqB6py4LUC1m3MhIqEZ2D43uhK2jsR/0gR/Ysc114gmEvy7lTwrIG6wLAjaus4CGQkaiwux2eZ5OPDCU3Bbzs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+O8m3Ne7lD3rGAT0NUs9J/xQb+SmcnDSw/pQFaz0HXE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MfiL3a3ypBdp5bvYnkkChdz5QnwaK73z/R4JhfR7zFjCYCMKYFTovTI14+1GMOonmGz+JiOwVyzSXdS0BvFkSDPLqOKNBQNlupgnvfCQ6rl+H5tBxBsOZ1SuvGkszKuPVG/jpC3wuDHeNBEFyxUghS0peJ3SAnbzNKWvGQQBwBVdLkJ+2kjwBX/3iaLswhp9N0Z7t3biBLw9B29I6DA5m103A/u+jHrqGqHwkXv5E+vZQP3fJgK/fxUQMFoG3IeUfpluSdZRsZuTb9MFRG3pVYFn8zzaiGdH/8gt81u+phJKBdZFLfnH2Q5OT3Qf4TEDWB4BvX/09dL2UVDUKQSNvdBlOSe8BV9ejjT+py4cssg9eATfXdY0R8KFLrTsax+0RqX2ypnoiabFXNoBG9Q+49ZJc9AiRK39", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+PDHCeqWVHaKhvNma4D+nZ/zJAAQwtDyznM6xj0Qf4A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+5TKn1yl+SsAG6uzHAKs/xIyAcIMqwvlOPVxzsbVnjRBeAKMdA+jqvb5rlKX5l30iQlQqhEUsG3EOd2WgvD7OavWrtgcigfDHA3IpxGW+JK6MfnRSe1gX+LyHLmXu9Z3jJAsojgPrw2B3WHD0mjlQAKByMSpOSbvNrOun6sBkv6D+QzLDe+iW6F+734enF9j89tY2Rfyo+0RM4sm2qQ8bFQkk0vEgBgIglb4PADyo+FhTMa/wjZ9bqjbyAeq/ptmsGIYUvwBPHN95W4gtqvAiK93ZSJOzexRUa28/6DtlOl54i9bSjoGafI+5V1dhY35nNdUHRgfxw/eEDHjDvN7wXxONZ5KdcUqM1D437OBTv2WTqPGyRV1GQ1BtfnhJug/zp4zrlNq6DMmH/HyOvR5X9gHGJG69XZ1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+Pr3vIpifd3y3nNXSFyZCXj1qQLOUci5nakxUQcxJxs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Y9nVBGFK7LlcgJ54CxLmCf3yfGN+qBtZclAWhOmaJAro/lyleeAZ0XTLGRNVP+7uk8xbpWXW0PpDig2syEz/cAv+RT50rnkrlcU4je92XGS7QP1Ir6zH16PxMYGJzp52KKJCFyAIWHduWJHh1DMBEQIsHcXzyne8tpVcnAtuQdQQ9JBxe3EuXGoJrw4Y8yhf5oxrFp9LDZmUKR8qPSJpwIdOZp9LZ2XceBTEx5q5nq/3AyXXdKpks8idrk/rMR9vlysaF6Vb6lU5CxoKVlD0I1m9tFDmnxTt0SsLkIV1wPw95Vno/lcpRtOmzsZwF6UZ7Nt9eNbPGAoKPHrY9hB/azhMIYYQEkS8FtCT5+ZhdZbMGbklYlsXoDN7z6sdTqE/tALgtfU1gRbVqFFaIh7lLIz5bWsfAuHV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+Pv9m6FTyvyj2k/X1IduKwWap8mmExk+qH5fQPA2uB0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lgRuEfbXccLOIA89pBwT8KpiTpd4KQ35URD1gbMm3L3elSccDqVoWISdsIy7CzS4oyYBIIOhkc1Ku8jvT30XIvDWOuLuIhVz/AgmNpe1p22cUiEymSQFBi+HN/D2HITPIUjJuZqrUFKlxhLs1l09G1WZYTDajA9iNpyz2YRDTmuc+bzaXJWk6dD3eG+MTDZP3ufCnCcvuerd5hE/5dMNW1J13+7LwL/TjT58ZjebUbExPAesT1rIODhfeIoWA+B+Iasa8JS4gOYqMLDgM8NPj6sZFXnS0JP+AHY4N0m6Uiw4tn7LMtXa6UqQedyKXnFobQsI+40CF51sUg8CAzofAPAnX64atns2kbk92Qdh8QN76HUNJouuavyTmL9z6LcLXE1q/XXBbSSAfHN8W3dnbCG00B49e/cx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+QmMGLvxaU3MLr2ktGi5E6nFo5CXzO5N5GEqURW7X+k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2f8KCEFf3rpshkOMRS6DLZcaHHQ4gVLhJStsnjMZILD8QghDcRY7o5CW/kF6IQAolBRKJe8I9ZfN5BQJ7lOJtdOMcbyN4oXyih2N9b+qgUw8mjSDD2MkH8Y+niUGheIInp6v9yfrgWBmaQeNXrLFEbheLsPnwm/wxgD6tqxvWA4E80dQjMOykbZR3g49olpEyBpxiGKdSqxIXfW7NqPcRH9vbbvbsVsIX4R1mi18DJGWjZ8yGYpwOqsVd3bbZXpaiNuQauaHv7gvCoSguDEiA8vfkixsawV4VXPoFzF+xIn34MH1KF3hcehfy8ALmFCoLQNbm6UKsOVF2gftsKH3rUUFHQKfjatBSrLaKCcGuqtrbVownhWUc98JynW9bxpkCzdoRZGyxNmdAVmSBxZdeu+ddnPSYBTi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+Qz/mLGusTutB2taxPshWc/07tBKzDtZe2dWF5+ibcI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nR8sM+/Y82Na9K4CLLi1+T+n+zTTbJHkj+0hjW5gYRVIKN+VbrGW6pF6s4NZajmlKhtRMKjVa/Y0ykpN6x/l099+vXRmLHCZvC6OnJ/luoM0QKndAH+hOpDpzitZbJlMP2K/1FKhM6mM0qgKB5pirvpkrFGzl8hUV7ia7k0QiMtK63/sYYPMYVtsttSmlixHBtzVa1NWzxDT/qu2qJDJlbmITAfCXI22quO+7OPdtubPUXwriKI3bvbjtBqxJzGdy2JvlsJ/QylzBqE2f1L+anm6Bo36k4D3SgGkW8qXrwnhLrR+cte4WDzghf6Eev4pUjW9arFHneEjuOwQgwi1H0d6gHkolqtrErFRXsK47v2wiFiWmANSDILKeGArEp7Pia3JyVVY8UcYOPy8eLeIMMGKpPHL6ue/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+RjG0xOEP0PeUJ+/5zuR1z2oCMcuqvZTQ2NSywk+Ruk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m+kRHgOUheIQujEAvlnS8uEr7ei1VtrXwYukt57F6NTng8b3tsFW7FplrwO0MXjsbnPPsVwMd5ORLQ483Co4XLD3GhsNUBImHYSfrYIyiAKMCTYCVb1jirOhrjd73/u6QO0uKH4igav6hNQ3LbbGrSuCu5nAwfOyrr243hpN8j9ARHYrsFX6s96QlKJr7R78kg+n2Vn7KZJxGXQBI4qHc3JvMRWZLPfe6rC3e1petB4XCVBMUtWFzsY6YsRlqw6UPcMHHDXwkCRghAAZdVSTLjQmf6ZKNvMHlKH70GhvwT+H0j3easmtKH37pHumZpFm2lQ+jhpxocwoBf65UZ5qyzT5oswjfuAG8Gk5wUnoYPEVl4Ye55YxvrZIgOMbEpBnKIDrmJlz9xYTjVLKvwuGXek0Y56eaERq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+S37z3m8damwFhV7cLE0IIhdelhK/YYmX8cj+NgGhRM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4fNS8zQx/AlSVk5NJTDWbPkG2QNI8S9uF40C6PrAHQ+14NPDO5Lblhb5ywEsB1kkmWWRcTGrt1l4Le7yM0Nt6tMYg/vC71aVLrwLRZFtyQJjQblKzDxndMnhlPvhwqBSVgB0Evp5BKawoj9MAXN6JQTFGkiYjxMl8QMD0SUsySZi7mMT4tkDdHzslAsye3EZHmiUXe/EDYwRxJeCDR3RsHufyyvC2xoYS2pYmfkT6bfVGgcqItDb/xY74trIiE9nPrVfSQRlTz4XOV12YfFVRuAwKQgyFnWP30zxCH0Tlofxbfepd1W5mNi/2UCnyflSDbanohwqOcZQGXRd5dpdIUrVOHFxZ13LFKSDEB4wE8eg0uGqfpBqrqo5k5v0ne3yH7JnPXi3nd27TlEaqpH/2ooH/lSN/Mt5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+S5xg41cH+Jird9QCViuHGRe9VNA8nRy236dpk3Ktyg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+uHVVCGCovLCLtPpDt+baN9vpeLkwjVqdrCzhw052cUxcJ3KbdHzJjF8lQ7KOTNqYwE/7XqrOzY4RxAGtdJ2Z+IRUUSk2f6LIzC3FSRfkLLA6HIxcGHcED+TG0OIOWmpzIGEI8/aBylkwI2ZN0BvXLvvFsmxrsvnIOoKJrBuq/Yg9PV6SNChkJ3laHu2+EP03dxkOFL1S87O5AHCuou9/AUaIuxf47ehg3GcO4o6ynQ9dG5cRP/ugMooJnNAafgUTMhIVoQGeqA+o/qKW4gYuu0qOQD+oKt3t/znBEf/F8VmP6AOJaE9+wfVrPk5u/F1WtmDCdx0fgyMMxni50Abqc1ZgofoThibgqfxNUEMJOkk8F7/50p2xycPt6CAzxuuco021WxH2KsCBIlu2tz2xkTCzF8RTGaC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+T1zpYxGB/q34T0H8vDOMriOMhrnvUku+8CtoRKcIzw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YK1GG8yuIT7rENLiVFfNMocNjerfzYe8F5alPGgAXtGaExfqjOP3ZNxzdg1bRRflD9q+YA4GWAdp7hrh9WxALExqBRvHOTqKGGga3ZWjag5kFF0W0XsBGgIPpRMuNI8PDiQc6XTxnwBYq64Oiuz4br+UWtzlzYaM1gXLcI/0wYROVFsXaRVb4MIb2PP2OC7Nev+4kj25tVjSgL5FMFrolJosyWfW4nPXEh93OXajL1Aov5qZRMG47t52bdvp9i0/V74S9bhLT8BL2PYwb82+DsGFtEhbimZBm+zozg8mYoAxcCd1z0rbZCl6tW4NvjcNob4+P9T7zAkuH8t9APue8J1cWsagINyKaJIJDASyezeD4vwV7dUppCXr/uHituEawp05iPUvwSaXZ4zikiBxUgXHA8vyg/1S", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+TxxqTvPTZom0ozbVwcGjKlLKMbJRIfY2yrmrM7/JuQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tAGDc0kHkQfKQTS8uOvDExmgEvfg9rw+QV7PMyM2l0gcetBVBWfv5VqUtTeV76mv1oNjC2YwcUIaHBvkz2pCUaW1tWWqhlt2dTGuqZAZTchXpIzYjfoKmptw9kWwvZMh+9roNPgKjl84gCSfAYehnBHOoOrSg3tr37w+mV+I9COAoXbTl5kS8lIZig0uuecQlG7e2zLkmxr2B4lcjSD0nyPGwAf/HHLfcG9ls1MP2DkBcd6HflIseQzyyHWW0aTca47YVThP0Z7sye351vXazF3FYKj1nGkpMgBBHnBP3DqnzR6QTeJNNUECtBd+zYFJEjgvearDSofHEJ5wFNloi1DJUF0DqdVd7PnewkTCzoJ2wi7fuTX12pof4MBoJWifRmClIDhWpe8DqBW1X/ciHGiUYkwu1ynJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+UYhbMFOCbpbIidqWPwgmkr1YhYFL3qjJi3ixlW23PA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "b2/FWmm1uyH0lX/QweQL0vu8pKGXnlTxA2Owe4F81eXXyexPHYsFHI4yGqqtQq7MyxAqkEMQ5H1qKe6d38GUTDtxHafEM1g9qO4MHCj+uHztv0yDyjHP234YsrbdQ9JUMNaMAsWSE/Q1+Xf8eEEBaiBjR9R8rKQ4I/gC1SDvytS5Z8VPo2CuRlhtE42toDS4LEUAdKLLSRnHxFoNFPHt+K9Fn/ouf+ivgUPOvLOFKPye21qvgSHtimBZKTdpbTo21HPniFYyYfnGPoAWWek3HqWF89AZZSEmZ+M9SuPkmI0SSRNNcmdW68uApokK9wkzkp+tqEhp4/L86T8ya5nBXsDS4PK4kTR01AODsTdmBEh1NFR07RFotrT1NYHK33p2xw2fFO2uzCHejzbBGcEtwgeQxRrif0jl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+Ua8bWtDSQbrdjwPp49XH+VhylsEoIypZxoyW03pOVs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eD8Ytx9bYlHtY9Ad8qqgo6byF8vX/CRqAQQDByZKHLY+OzbAKC/k/g52bvlmd10kWwtu+M4E8Lcu4Lk5jGnXGsrZl8evPRpzLv0Gk8mAWxRpViN8s6m8EYFuItSGHxYy40PWurQHHdLGwVhqWNC+JVhuGdcJGP+fU03JUO7ISCo71wF6tmOyhW4KMOVhN+zG8zKEbhG573ANKhm2TuS/8ROQV7j8hbsPgvHORgXwXL60VBirZfaid7HZv6mU6wXeQ0QAXpmf7S7pq0zzmWvEdYTq0kskLnZyK61eESfaMzSKoo7iXyE7eK/DpUdN6b2Pz34rUKIc4ps/Iy+Cwsv0tYV3/vIfjpy1qEWMuQT+9QdnQoL9xUP4mZaGLRK7IQCif2XepMDP9HnLiuPH2npWTV+KRStHsDye", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+VCoVM6QuGyGDqv+qJvAPOCe0r+SvX7QCtCBt5RTmGA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cBRMEaCZg7saDLmmPGKOaOn1DUkEuNUIOXb+VxuNy3zG9bTiihpZddhphhlBwM8TQQ3KXj5727K5Lfc0xfSxc4wJx2Vn3cU4uEtLRS7Qjg6edUcRSsm9+jZIeBk1ErbBFafM0QgBwQCjdczXPL21H3vN5km3UUMZ/IZnslBuil8SIHc0ElJrsvRiIgerAhF/ggJFmbPqvnsSkL33ffurmPH5ADxof1ZVS+1hkmw/Zy8uVBUvDBa9U7pukU7AEyP3Ebmly/GNuIs1MKySZibUJid8kBaRhmupCkFd/jth3q6tFG8RKqvsKfFtUVGZxzljHmQyYdAcPOcoaE8UFBoufwxoLAR59O5jL2pbBtcCSC+KlKkQkQBd7eKA0EjqY8E88hy3oE84jSj8INE7aKPIZ9NmSHyFKlQ6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+W2yey28DGgsqefqY8T0y/LdEB0ykdfMp/Que+bMhb0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DrsH32+adRhxJUsBjoSxLT30RnU6btEBAtwI31Y9fHsbXGRjDCD8V4RgZ4anmn3ZDPaw+/TFPgf45n1ByDwloBhH5/bjO+A7PT9/7nh/sTrBNGrchs54O45mHrlx0tzNVIg9kRLzGGzUFhlno4LOcDNcILtZ0AC5BXusHmFOs+8l8WJkjsslHCYcDgRZRwenVdmyStPQw/62lkLrtNCCHqQkWbo3f2xk4ON3WjFZPkxzVHz0xVLzuSYMp6YL4ZXDqCJtQeVuLua2+INqX43LCs8/NOvtRu2RXiRnAS1N+bEjO8gPDM+8ZkuQ56VEu1w/jVfvVTQXYSZ4MjmfkIuKWjD2SybhBT354LXdY2KGVKfdreoxlOB+4c63QaqBeX9bvNqjI4IrzLN3XgioqR0vkIoWDUmFsrtX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+WEk2BmU4srAfm4yht272N5rXGNFdgg+SK2hqf4g1FQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Jpp0R4FrA7NhyqvpOtAxvRrBWGiHJ8CaxUX4tT1L44YdmpwlCQkXEyIl43fmUjUIsTP9DGs9hxPkFC9wbfltb2Ks7J5MeYgjVVqK02FTV+bwfUxwph/oxmA31lgv8V21F5obtnMRbb4q4y94n0yLtYS+EGzaU/9nKy4GIXoJiD6474PgfZr2gIW+WizRI9I0TnH5mRtz67QSanZkLm6f2ZP6Flvvi877xrrm75UEHmJpOE0S71u9ZcLn2TLbCdWsGVNiecdGlgRi0reHgLNQCt2EhRGQjdNTUGx5SOfdEbnsV7vLutL09JO2VvDr5qwSl5KazhGtcJxMSBYDeWRvpGRsp76ODuWxhFEAMWId+GylFhnJv6EzT/Ps/MOS/kGhVK2caz6JFMN7qEo23RW3x42lxgGFvbP+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+WiE5eNzOFUi6eBxJoMA/AjeGQdGePgLUtSV7Q0zrpA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "R7YhjHOLZpj5j8yX6oPu3o3wtR9tYbJJTUq2RRYTfIEqFld+m3FLqkPzkUvHs7UszbWuqA1dZNYvo+x63b3KGe/XPFXbu/eBZ4y4+FUXmvRERjGN6msznf1tsGq7wjXI1MjBkIdvaVNxk3r0LeLkQjxG+xViAvHHWCtahvT+TDrXgetoXYgY8uBKOGBKvWo3voyO8nZeveIO8HKDTeQdONsaVVPTklJiIPRj1ruJSuuXooXdez4y/ejPWKYD3fOkptf3SSjaTbM+l5U0M+i0Li+NaDy1yR4vn9/uizna0SYec/Le0tXeogK0KzCftI49HjjT70Mcfv8kjLmmu5oRK5/vTPbgN/DNZ7H9jr/+UF4MXSpk6mSql94Eq/Gb6nrmbptwavd2QKZZx+4hT5t4WDbmYZHyWrkc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+WmAuuECGuOsPduEKINQdZREaJKDeuPBnpzQjKhni5M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tG6P6hIcGRnZVsfAOx1JsBIguSgcNH/QjkfaSasZsKc6mvaNsPv49EVOd8s5avd4SoxmU5plUBKvt4j83XI1kJEaBHt1vmIPeX5E89I989kyyJwd0LUhTxK+d6tv+FP56iHJ0dx5Ra7YtaRI8XsR5nYuaWJ1NciaSID5cDCjuU4nzLejj1EFV8+5bWxkJ6niulJ/RyS3y8PQoE50cou7utcljEc+d5UtwRVKDXIOFVkPTPM40UOA+OEgP9+dnXE/tPAFbaKHO0hNAzk6jnCtZ7G4UOos80blXlTEi3Z9xD6sCY7CxYlP409jgLU637PKAEUK0k7IVkNNK2a3tkYZHiZiE40Tgk0a7z+/UaE5Wjz2w1bo5eKv8ggEwj/XUSod2zQbjCEyxTZ4rZrgwPeJQAgtVuDvSuhK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+X5ZTdPvwYZWFsTGWO910+jjFO38xagF/vezfUp/+ms", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rhSjjie5dxSBqv2DRflQSNzmOx4MRBTZBOr0dyFdNDDkLs/TtSXQnyzH6JZFmsZIC6FZL+7m/J6mCNphYxPBmqkIKj17npxmAI+XaXe/xH8z86RdGJxFPxnAUH+m+OE3WcBun66+S5OcUSaIQQ6KqstCL1aMIk6uTIQM68r2bu3tmb/cqFqCOmldI1ob9LnECU09y+S+zyqPr3CiUkx40nscNsMQIZBssyvwFj/UNpuYrhvGqFGBfqu2j6KuVQQ7dup3vs5xBXWyzlSw8deHuY8V8alhwHX1tV+S475e/owCOEKJ7gSLm3pnkIeMvtE5LhV0F6mnw4aAXuW1745FqZFCy7/Zh1HWux9vi8KmQEFdqx/9coywQU+kiCucMR0Mx5u/brIJyHoF9GyqoP41p4X5ndlqz5Zk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+XM95xtSopcBEmOYfpN3Pa2id4z1lV0qTS09lzMWD9E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uSBJh1s7SCSIEoK7M22vi9jr2QrIJAyn49dqNN4oSSeZxQjzP5n+T9Fbu5br4N8fAYnZ8Yo2eVZg4h3aCf7wNfKSnTWlX8C43s/t8qdLjsOr3b9HN8ESz7m+eCYczdKwQBXssdgJNwuPZTTfPkklq6Bua+EaQJZIltB5PPlGRL3zcjhiTlqlzhs3071biAtdRsh0J4oizpm084Jsp3Jpx5ws2GcQlSQRX1IIvDdXJij5Gzzqt7Jz0uxBwcJecEsJ0gvriMMULy6qs+2MpHBqGmgQ7KxSzrNGy1l8mh+hpXkUqaWJfwzjE0KF1W/u6ofq4pMxXnisCZRfb3xPZvrA518BeBIB3ogVTTMLv66HkDVWSIM2M72/HRSm07O+OF7VtgH7+f7u9clCV1dj9w317/GXSo4PlagX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+Xhu8fozTm9fLbIgjClCdVh4R/XG8MnphepRgk1ynO4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tjHRr5gtYOGUY0K2TcVGGUHWdELYCFuDbiLS4c/kis1sjq+pnlxi62N+3yYJpORZHQ+fUxyhp39KcdyBgbs8MMBsooPO/UtNzCGifRBZdHdpdXYKVwm87T0olokY5ui0T4vntinReJ0QrupuPMqLMyWrEqvmQny9oKdeyVU+886XAVReRI/jAfylkXjP2UYF/vqfOkKsRWcagXE+2QeYxcmLj7eNTpkJdtMgoOri87SMKV8qLy/yaOkRWo7BW7yAZARAqot+aa3HKc2+fAhmPHlobTIScpQDw9ngK7wmY2usRJ680yamw2oIj4PBhN7OOT/Hdl1a+FGqpRxHa7lt3I+lshEY3doeNCP3FxIPyTNwLXzLoJagmCQAH33m95MQthbLNIcRSF6jCMIjZyXdWlEKBxOQy0uU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+Xi2MIYM4nGaJNpuowdGPJqADzi/GiiM4nH68cJzqJM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "n44/n1LJ/2SHK1gp0v7KyY/RjqJ/bNQzbrsYaDOwRyR/xq/VnHJWL0uf40ywj29r0W1uWM1XlwpMW4BQZi+E+GgawVCu+XfBjtTrRyWL2e+oJHuovnV2zHotQ2Uuj/bA6DdCfUF4hPAF5yhM8eTUPX2uMM6eMzbkojD8DROdfy5Dw/MqkrT0K69gg22xdLWxN4YjwfWrr970kBR6w4GfpZEHLqCBhz0T4pb0cq7RqPHjSkvaLISfKi1XF+YpZv0Du5C0l7YBfIvfsgVWd8vzniApKrVcrhBhPvKw1QPKQSEU/gO6m2JxDcjusAnX+THLuRUGcgmlyGPBMoCeyZzQPrCzXJG5nbMRkCv7nIxMLPgF6nsctumKTrqcfaRduISHJWlTDEo4hBP+6onF/VmcN0KSuk5uJMN+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+Xo444hbB5LVTutrCgzALWYU9+PjZhLBqMP8jMyZQA4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ehkQADoXeROoDdwr+02yprTNF2yVush3t31BrGnscZqzqbE5Y9ytf20QVn3oqeOBct1lYr7dI3HkWhFZUfz873+tF6YyCU/Ln3mHUQn+Y/ttecM+CCM8N5NigIcsXSW3EHhVmiMT0RiHF+w+9fbEROg8SK8jlwUqNX3BeVJ93Rd5zwfh2Gl8G482GYaGVHoHVfmNwB2r5IPfHRoft0kqRp0cX+2OSC0vuu+qPr45JHQ0V81HXzGCHWpeDQ5sLr45ysevjbzdKZz6DizRWiauA0AGRy+0wzO2+ehwzOyd2Z7da0+4NL0mj5EIcLtQqa4dbn+FoXBpJGmqbenYkKI3BM1P8XB44hx3g+CAr4oIaL6o/TKwkxh1aFIyPqzs7xrc2rRY0Lm7mZGNz4rXRvidDWlWj6XRKRqw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+YCpSoChKj62Mos+OFCWXOjMk9e9x4oOR7dR2C4KJJ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NmQ3dgYRYVnsvBBz9dYYZzaQq+ljffQfbzxK/eX0FXAMg/YXfKvDZlYh0GTic8XxZK3NY5xrdxuAQfnjak/m0Zp85svop8Vjxj1q/mZpF5xTT96/UbZMdyZCGnof7LEWAHCCJDY9UFK6OO/rQpN/cr0SvO3nWHmNQDmN2HFmfSOQY9F0Li3L45yZoIgpXp0fKmkqi36omQ2w5SsdaDXbnWlaU//VFDRjcDiaxh7tserEKz3BhRf8VgF164hCByiOJPIvdjaj75bBp7ncaD+W368ioPy6Fko+rDi9SLasAQs6Qt334ShBN9GcLoo9ei7NTHwWdUlGMuo3SPFrRNZJ+suWV2ZAPY4IodHWi3NhBXgahBElJEyilasM0nhLeG+Rm/QynKlvlr3MmDfFhrP+P2sppfaihywe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+YklCe7KdDtK1wTcc8KPHkUA0mruR2X9Ui7W63GwtIM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i7kzgaV/KnuwYakifZEhVphHtSRtgkSXdv9vXAZrnRq67pjcS54C7t0hiTpOCFuRb2ZgV5OQgWDq9SN4+/SD1ZwnWvqAbgFNFnHtlDNaXh4JyjHf0qCPC7LqMe6ZkCDbIcypEi6EoaHlFQuS3WShSvdgmgQFDoLn3MKoJ9INjsPryRtt9GTMEUVdlCtJ2SWVYxS/WwXBqDdItAL7jqMzJkSz3CeS5jI7kqNvdub+4A/wfnJTlH1xM5m2454c/OfAcH0PJk8y9CobN5KRRPNH0x3OiXH1eg9IYIiXpfOecRJwQGvgoz0fMIgKvWLNkBwxxHbArmMeFb8Jvy3AzfCsCfVGK7swW6PNKjXfY9fpaCds6ktKg5fPPGHpplwrpc3FhNpfGglPGntD/eyAv3OKfQPnETV5pHO2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+Z4+UBUfJL+nWwLMfRnTPxUZTtAI123hGbWUhdSCOXw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "D3zw93JhwzEaoaghAmPinyo8a2gaP25alRp+w3dFoWMuC9eOxquBUALOvaDV6SHTmPF7I5vw5dghXLR9OH8sjFvkpCjPwmc77UizYHJQeapHI6quDETPwRLWwCostjujsUB1J5JdFVvu5O16VSaQjIxenkgoPwr3fvmV/sF95aEfWA49DCyXbXSMvm0oCbw2S0un1f93XE7Rlf/bg9iKEAsx1AhL/sHzPQOxhQYXOiifv3rsVvBVpLIGCaw8adodXiQ/9Ryaskz7pO8BSWSMufO9pOtW9J9sWdadbdbLjwhYC1fSx40rEscFq9YGkOQpsl5inP/nyPEVKQHP3wNfkU47atjXxdHVP98y7YBumR/Fz1hSO5BWeF+NBWRYOJkfNF33AUS3jS/AY2XDhaQ2+9BlcgQbojXw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+Znk91ZuRNGIXltP6EkgLFVtyKqFn5YU+6aqdQj9mp4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aHvYlCZlLuo3CUaudBATct/5TEzk/+9+rCcraCEVyc5IKcPP2X87zs/Dl4oTlzjUqOKKuUb9JCTYwTSJH3vHgBHpx+aksfeRTh8cro8qBsCEcrTEl2qxcM20rhYM3dG4LOAOFm5KtcpkdYnVWj2oVaimomNCdfuaWX4zr4QFQRymiUwfaYOx4e/X72F3JtyYI8QOwY4+CwjFjrp5u8fvCmkdIM8xVrM7XWMHazspaHs61787QIzEDzVeBGL5rZC4srwbCOM0jd3bkuFLG4Fws1EkDKshLRemLsd+w/dStEIocR8ez0hCGasKw7mTpkB7dCRl16pmz896dEimvFtURsn9rSD0TqZCL/giDMui1nAjMgs+XMZARgtOhYJyB8DQUgT0fGFkH5ty9cna2s4xnOaukG+Ma2b0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+aRPF9BOSfiCTGHwdSwRuWA56Eo8H/EcltgjCQgIhpg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Lq/xD3GQ3OPpb7jFKpZyl+rIZ0caPqqcraEZrlX3Vfofeqto9/gidIHk1xRSbQUwV+qmVxxJMJ080WPnys348p/Z8vVVxcGfZtZp71L4ca8CmzRLiFyJoHGy6jpVB31G0kDyY+E9/T8pfrgkVipLdcoKbxDfFsYLA/8AeEdtfHuNmCrOG3kOU8EnQddVBaJdwNJytSM5BTq2FNpUVbPXjEs8S9V02jltzy3LLUiYgC/aQNkysa/4pVUd7jSrjTvo480KTzlcrbs9QexmMGMsl8rwA/2X6iXIO3MMwT/F4eOj+6C3sQnAPe2q1WbBEZ/rrJWRCTwX6TiGSTvN244LmRYwmD6BWArkmZhlrLezHl0ElQDzSk8mJWGDVK2FOUfYFht7IhZWnuQnM2231GLuy0CUg53EjnPR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+c4otHMsfW848ng+ppc385aehXTKfu0D4SCrW27Ltxs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W3NJJ8Pmv5+zR2XT7YgE91DQgdd1QuZFop0i0uX1Nevvs3oHFyZof6PW2jFLhvQa87o22wlSH0DRsnO0iYb111amE9JWFDWVOyotdzMJGVRgR/YvfExAZ57i+A9I8gmcLslJSvoO99fHQpAMn9Izw9ezR+nUdP764QHnXja/BlPBriZlDvKibGQAHVL23F4J9iWGuJvb99iyrsnLcjcxmzjjEcLRwHc30GRIkQi52LssSqeEbhwaOlJfMHhl3Ewlq6ZBgt0vYf0J32KAHUS8Ym73N7JvtKMRVbnGmBrFDTPGPfvExKm4vqL8XLjHQMOQEEW616YRHOx2WP6ORQs5sAThGNXFJJ+K2n2Bot2w26yEpQs0zb+/GV2kXIGJw9q7lsLlElNsM4/qbQRML+T4QofkDDUZe9/B", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+c8+az81+H0P66y/vDrZsmK8wKkzED4oFrWZKOtnC9g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t4dLbIjFE0bwLrlPDbah0Fcb7JeBWgjZcDDlh66KdkmnejK5WAIwUOSb1UQV6luA4lDedoywKrz7L1Bdk/bZMWpF3WM2l7zOZqIEDN2/psgskHwVXlsxQ79J9V9F4LKB3zgqr0Guv/bOjSUVIC1QyIgxjF3/YbJuP0kHjZjAgRBApYVOKh1KmfCDXH/KvGEWmImvSDyM7VK9wC5jnizEStw75BUkGRyos/Bp0fQKsO9138fPWRRPx9g21sguTVtahkWIDmLhLOzIRhzqgQ3MPTph2ls0paSWZS8rRzt2VU99+qy0axj37wRxXyTlb+mMz1GgmsrHsV+YSpAOFsy0Z0iiCSBw0e5LnelQnsG0WCoAweieW/EqW9aMH1DVm3w7NOrDwO4O96SsGICLPBtq/0dPcmvNev4U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+cAazkUDawLp80asUCMkF9Dto45Px+GC7OasiaJCeIY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cG4CVODrG3vvmjawApbsSoBoJlPngYw+XGe9KHpBkSdOjuplG1pwF2IRFSyEhoAoj+0IQccpL9CVzEowvprzEQs+rioaTbjhhBtZHpPDBAeTBxMR+2/SoRfhuRju/dQamTNd7KDwNh2gTkh2X9eujy0updxzsXUsVk3gJJLBAc+pTBWTxUcfN5GIC/0f2HbXqe9t3cxj6wlnAHzD6/y46yeKfN8fiNcW47Fq/5kURCBLzndydnGhX0U3rrtCg8YlPAuQp/IMEd3KHSWZnqZtRfyitfbb7elZxA19RfBtuHBlI/o4N5sSMFoq7iagucxL4FlxULTaqQMZfN3K/68fyXYGqf/p+XKF1WqNEwmYFRdqJ7RUXy/eqb/JjH7rIaGufI6vroHELf96lSVuEKgY3zenOPPtAScy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+cfaqMD7b2dYZoc98vqbMkfGXRxCZThciAKEZDNCKEg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u9Yk8mVZZOyBY9WAB01Z+Uj08CkkvdN1iPV/ejsSBRoW+fx2SMAvwcCYHRBJ98K+ENyXzstOnBCcceDhG53mt8m/NmUfWIOQVZLlXP87uqNzSpu3UsIx6oWIFiE9kIB0ManlqlY5LfirMgFqE/wvTUI6kXawJ6gZC22KBNINgmB1a8NBZ+0YmlM+qDpBGqXArHOAMqHQSvZCxFWEj23NLxYIOfHUGk81w+HBmoaagVzFhT7e+N47+93tkdnKbijtrFCpjW5rpJcIHAfXtUz2S8Cig94syVtgz7iVpPgS9V9+DnbP1b3ag88u+GdHzQhHybYowdzIN6fdW7k4JO4uXxaI+3i8oZvhkXx9AkYWm2wDtk/Vzgi0vMjLY2ghjeAq0KCnUcTPAODqROkHQYjktU+t8IVFRMqG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+fTbedkpgmyFMAEMYEsaO21h2kddg+6YoZtrlyUyJWY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q8VHCjQw5ZdKzgygPT25fYoE85gWuZczLnivW1fscPj6/WFIVRhH1vJGu1UabkriMHw9d36Dd88gFQIfqSvMMHcwEK+8IniGMH1v4JdjNc5iJma6s7CvXi1OoYo+Oy9pEoL1wKlo1kLLSQRVC627pY1c8iU/u4EMLpmxCQl7MF9X+p4FTOlsouhgvxcuLuTvMWji1ZTLTXpXuN2mmJYSr/4dqpaM1fQluDBFKlxt59PMwGF2XN/rLMU7/Qp1uc1E0JWDhy1AINFGYZiLWQn9znsYkuW8wjRuHN4EOOFHwWht5rHDJvRb18c6TVNYcoV46MD220/TFMxs3zNmerRwCHwoIixcs64/BEaZHSVJNM9P8/Q4xehK/0ZGstWWWzkBgzIcqL4ueUMXOrIR6xEEAEpAUFgvkZ/r", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+fcO9svjvEmnGswZ/iWCzYMqM0z8z1lvvq+zRnqC46M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5EVJStaiNHmGshgvIXX9sW6vgYAoteFcX2BLFxzsXvIcxUqUEnNH1sS0C9YVMxK6bwYnEe4wRgP9EeLvkKwCcyl1iHZrnnXVR7VPo9R5greny1mysd101wKVIdaD3tIsGWD0o2zEO3eClhCa+0594xXg+nw8vCIEzBlJEAlaDWYIcxEQJiHiZlpJma7pAL6fwmQWw40XtVErD9kVd6LZ8EHG5APhhxzvPAmNNaz73vhRhNst3b9GTppOqTYY6BQu3WLjYA5DZQirNbFWhcXj2cFx+odtFSHsipV1zdCLDOyX06CxDU3clNRyVjotn2kG64z8rQyQPbrM7zJT++HxNa1L7Qkj3R15iYJGvCsn9CrWfOlkB4E8VW31gAJdxRncuag1J13054qRW5n1EXv79r7tlcBlwukS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+fxnCt5uuY/86mUUzZgUul5/epV5Z0f2z/ddTYUlH18", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fCXOiMxNqsQmBsgx8JKevKixGsIJNufZh+G3uH+pi4MU8M46lwDpo3PM8lu1FWVRFgJzzVMVSQxTH5IM08bp2pB/TmrOgjJB5rLbVn8ysph8PXDXHDaC36psNX/o+o5nBZINiEuf+KFQavFN8ZcVb65xTDBNtMRfVYeCInVzl1qlKU+kmYUUS8DO8/R2LsT9iLfztDbLeWq0LUOIfVrEL4UgA3UHvjL7NdQ2L7ii/OLC49mIXlv1Hhl6itpFBNYGRjX9NJHv/M47hqOCJQh4e/3wVMtrmsvwXOIWuSZ3mbO/MRz28eW8u6lCXnXTRam58itidZ1rzMH+O1ETD2Zrl6zB1yDOqT0cPKeyO0uaaoogWQSn5bb5IKVcXo8+Y71xgNkw3/e9Tf0uFL5orhxF7UJC9vS3Y25U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+hUYnmk6PLyxuEEen3E3XWWX2oIq6XR6T7879HaQhfU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fw1VCvWm2vSQJ1V3XDoeOjVBip0y2lReM/jMIeBpaONmpeUPzct0cgPqJOgbNiRlTTNJpi4qmjgo9kiLNIzdgrhTZK8QfLCK/XmekmWjmrEQ5jeKmnA/F3ISiZHcg8BG1LjKayD89IT3BXm5kHRcetJz71Gq8dCs1pjqVcBDzsjZm6ZcuWHSZ+gDzy5VD3puV8/hRVK7lSLhUef9/KYN2WsVoQWmFwWjF5kLumy8ylabwYpROFXNykUpQiDQJtwi5vL4OA+KDDEDRC8WEcys0KJVyKW5QNvaGh+rLQrYfHWpWaEKErNE17V/ceL2viYppjoHzEFmldylSef7A894h7lPXK8TzJ7XLNsN+7jj7ncLKhIeElDzqRF7KsFUmFOP7TexTKxhwchA1OdKuU9xVgmBY7NRErR3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+k/hXCPVeXzAAPevK0ENKM2JlxSWlMXsXVwbL2urQSk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bU37gSzqLyLLeohfPE9YG3ZCBjX7gQyh6+DYYfxESbnKkK7luBcJtfxEAy2DLwW/DEBliLOtFSqJjZBbRTxu1Bhtklv6TriToW8I2DVxC2CUQ37kG4LNBhe/UrBvjFMnZTnJhFiH8oc/OZRU2KIqMIEp63uW/7Km4MCKIwnkwLypylYUWWdKQ61hF1t6RWjL4K1Hw3Wbv3t/E+rol5f1C1EzgG/70Gk6x16MvqjfA0cxDYuQYUng8erz1dQaRvlmr9IYY109wHwN80rWk7fcInaTC42z/AWdOralt2VK9GnNDAsq3xaJJBXSfJeYLyD4Z/JDqOwlf0UidBpm0cmCi86MNoeLu0tKUrJcKlYi8/2LAD3PGBDWMnyWyL0VOPJc+16ea6I/mqi60qFCbe+Z6w79qGggOYUZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+kKa31TtvPZo3MFeqACIr5AY4yYW2C3S8O8bElwG1Io", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BF1W5SlNUHmc8Xf3LNLmfipElnZVIiJxAYX60CV8dglRwTjwPumpovQyI1OHK8UsR94abBs89rHGBlyrvUyGDJFMGY7isCG13rAwv2tvdfCq/v6gn+rn+EhOa/Qs1L8EPo2gUZZDxqGNeC+ifKhsoBRmkIn3fm9djThRjrfiUtsjmvkvTqfmDfrEN69ABodtJZjhsp6qWdQjHpqFQOzE0L16do1U8BwVAjvIN2HMab4mJlfayx9LsadjUheVrur209snZfeRHXJVTbojG48oF0ydBJLhT7Q5eiomukzkNB5hIDPIX/B7kxTtsHTwfeyQjb6pKJhvE/6fZIwkWZe8G7nb4jH/2569YeDVt1MeBw8MGhgyNeZiQhO3SGZvn+iiiHIbmoA46l0/bpJV7uqoYu13aTGN7X06", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+kX7zEB2mPcWm75+FkOVjKBOLbNqPMt0Xkx/CC+HTKM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DWf30bMylNAmRHhAmKhUcGb846fCSF8iAFRbB03v+QkL4JPt+MSbxuWOyoZkN7GrYtIwh3YBLvcPZKZaO49e2LXvGK+ElFaDKAnO2Fe3MKvhq2zQR/zMNaWfTygj9IF5aWZU1Q8d0EvenCnrtHqfW0bKLCUdj7sqaziBa+AQpjopGLrhLqdOaKdoNGuA2P0G/MBR4c7rYBcuKYINTezMc3Di1Y8yyrC4lPVlNlqpSQfMhKxidGCVztVcP4Yd7xGEz0Y/eJkLHSoJNVAcLfII6Q4iLGR5FDPZY7RH9Yn4HxPRNJt0y/nC/76zblf3dm+L/YVd9rkf6IopozSRYkffZYpG7Rpirn5U3/Ikhf2zyHvTroHrnqtzazNY/asZR2XAUrAOTIW9ua0N/mJM9oVEBt9mOHEmAMBX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+leFSkvPwBiPLfePFCgNa3OUcYS1LIIuXGfV2w0yvtU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6c0NKFS2/QvJSGlzGZTG0OaqLQy+Hn+8w1MDpqfw6Dew/ht3XgJ9phjMFKjR+jbqgsr//B3Kk0NYAC78NXn6Guj151Lbd8g/u2IRWinvu+1lfreeVB/MWSRF4U2BvQDIZXYa8Uqm0ueYxzXLDoItFg0KvU1WMtVxPDJFDfGvF8hH3xtbQ7RPOw6PVwv4Pu4UrUihk1iHHlnfyzCPoFmmMPGRVCNmibw24hwXeWk+g/CAcvPCX4F5T/2Zr3ZS410GdVCeFt94IIAxdMgUIoLXEgNdxOv5LFfiKUw6mQw0qLzU7L+p5S337QcTObktDnxNUh1nyuKPQAzzrPFebloG5UcqdzTJgyLR4/C9oYh5XVow+CTPUdcFxm7I6/dwaEuKI2mb9GQVUw5RRnL375aqS59IwkMyZzBk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+mYVv/+zfbFVcndDTl11imQnUjnhNS2urM+Ydukkz34", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9ntaS+sWOMi1os3Zl7Rr2RhJfaeQV8yWVDzwx6EEvJaL2nz7iG6Fx5YV5gptezpJcX+oPXlKRENb5z4PTWcWjcL3Lw9s00TeLqMPH4b2yv4nqZcdu3zpoFUbpMTPi7h3y5R2KxUecs3HjLfxXGJZZef+JHytrf8yN1mfFTsePZCHweg7lFUYh0WP26k4rspDaCps/MrDVw2RAR3qpwWpVZLUhYISzGJK5AUtlivcUa9Io5eZWiqxLl6qALuEnzC5WJ5s+zSA6E4Yn7vsgWlEtworFgg9MJAlaCvA3bXoWHBcHxVtQI4v2e2b/n4ciJOv3TjBbLV8o2cC2AK3+0W5vww30McwIVRaPs5RP+e6NhsoXqqaLFj6UGMNgxj0kyqP/djcE1/OrlwvV/rHgCRh3ORSz1HuLTFY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+n6aJQ3oCZwaEWf1BsPyVsuURdOQVn9Plzgp8e7TA3Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L8+pzzoZbHggTGisdMpr25SEfLtnhplagZ5ya4U6nr8lVSD7OezLyeRjVminRvoh+LuqOeGZOLUth0xV0Z7D8m/TUosInB2rs/QSSTbpiA6jOCsH+g2U9lKOm53QYZXNZrpK6E/Bxo8aeChRuDn91N34c7oFA5FyA+11U2IUAK0g2MZ6c3rTVp2H6aeAI2U7mUaC9MPj+yUEmul3IdVn0Td6zJ6R2on/l6FsrnI7TPed27dMFQQlsl98sV/PntXsvDg85XLAY0no8uhzgT5KVcXFThVmwCrX6qv4JOvfbqmqNZePN13n+P7SgiSN3LL7G/0hHJGDUY3dyenbCXYiJDYYUmlR+L9YXTYkjF4bENKm4gWeM99cwyD6zw9LV28s9XD3KgaODN+1VUCuXvE+N5dMMwNzCaoR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+nNCd77jXPFSv1NdVwCatvcjxL9LQHS0EhFGtT0wkFY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+twB9e2bRbaJ4aDx5Vbpi0D1aHeBM+t1nRWNTUXASt6BSfvdlyf2qHAE6CiPKrfmCINsLRdNz+HzKUY5Jx2CfE6jdwoDi57mrK4QWUW4wmRFen1hcpCUdHHSFDkm7I/CZjKiHojeD7f5vfcHWCtXEnf70MwEF6bPRra14gey82rXFiJY0qM9+2MiJhMIYabJqF/elIC+ffYZrEZMp3pqjRsABjJY5uk3L0Yj+l+Usaq9oopAIYeNAhy9NW31maSBqJ008VaeMri3EkwxsQ1KrDnfN3usbDGEEDqJCQqHvzM7Mt4k5lfct/pdT/OygfhgZmCEPvUa/UhyYewjV655Jm/wCEmFOtJQ/v8DCYtMSDdQG5ICSKz9ka0qJgFcsy3IqTel+Lul70tvvroZKtYjR0e3REJJ55Na", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+nXvknlvkKf/z2vX8xYk4Ni6tEVo2CYS9dTBvg5OqCU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9NGdQYZgEBdytrOXM1gh22CgMqMVS8KeZxX7/Ckzcs3ADiRHPJetlwtEfsOAeVgn5PI4lUdQVS7PA9BqIDoTkq25CA8KJEe7PhAaoexeKRP1HYqo0NACjixetMQpfTY2TtQloECknV6x4x64PaC1JBZb0vEoR44T3nt1Lf/77+xLipSwqC3MJjfDQuo9FbvDgnO18kBcxUnYPKa7Mblq1ndav4qeaVY0CWSmMNf2pdIEIBLzC/W73YL3GDbuWm/LEo1Tv9XSc940LoSyVIdeM4H9z5Opcri/EkAywlSEWzpuy7QZ/SqJ/Eltg78uciyl/Xa8QgIzoP0CBjD0Xc3KyqWQWk83ki9q8wLX5aW8KQ3GUX7oE1PQ0DV5JT++WFPTzg9VPLA0sg/6W+CUD2N6ZEcrgE/oWfMO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+obqzmsp3BbcUFqE0cbeQ8opmBtIjsqQeDCnhKEFZ5E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X75N/XUuESj+qEzyprDsD9HL/+Z2x0v5YfjloAT8aVDQG+Fkr1PcA2MU9lsRiM21dGGcueQmnfFAxEcPUCOGD6z6K8Bsh8QVrVi+DEf0kHwxbRDiAEe2HlLXk5LPUkiazBnELFg6xN5+imKo4M2r7zuTrHaP5zXVBERzuz718BQRNpL/Tcie21L/dhf9/hq3WkEH/57ewHp6HBHBPxY3qr11uEISu2DzwA3P54wjhWeE+KHYQX4pxx74KVXJSZ0dHvwNYliy/0T6Da6SpK3JfCp1sF4oqdhY2Djv2Lq+8tc8NhdR9KyYIDtoH8CnLzje1jRq/31q4msTHNzmwrkEYKsKLWMFcueBUEv7bJhOncplmyVeqedJw08EMQBtkZM2XFKwEHyibQIZUsESUpO383vqLpELxtR0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+sF8W76GgOA1VUNuHhavifuy+56rVt4bfE8H9ItLmtM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vOjTFP858nOzcOG7rjRbAuVNcuYLVJw3vqxaNvJhzgR35XfPSgqZkbP23kLaQjyY+fV53d0Vhf2xoOTvF+rXtD8aR3xnpDQPJ+4XYlm5urHg1UPPJtRjwG+a+yNSNGlsWs/3oZ8DbhDkYQHrswgeu9h7j9sWRryxDdZ9Rekowmo9fZ/c7cSps/cU2bjt5cTwkVPa29Oiwe+MvNc9gEqsY4rkDkAwl+8vmOMoZxc3UdP7q3uQOVYSoj8L5WiZ9HIfgus5fWkdwgyoDeO8EDhTM4VAcmow6tTJ3rkQlkIBP0yvgVXzEU2HzUuvAEwxRNPce+NGoCxBGZdczOcrxZ0t21JKzzgi+LUTRaB8gqhANos0Q5Zzawy3GoG+TQNbQ+HFpbvIT4XogQas5y4bB2H1U9pThIarGwvS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+sjk+/1KCRRPSidjs9H0BJjczrLkuPDFcT8Mv/E66Gk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ld8YnMN8easVmgTZUf9OGNoHPNXJcrHR6r8l8rhUFHBkhJdV+Ke6VfvGEXSgYbZ8/by4Woj5J0BWMETS/BuUbe2nuh11rduuYREYNWAyeOZinRV9WLZUULsMaGXQT519AxH2AXCqYGgIARSHh7JRf5QX4BMq06quirk+H7uxOCdEdQRE8MCAavkmJgBhowhZDxLV1wrxKhvYSaVFJLnePMbWk8BQUuBaNs5FQy6/NwmaC41bE6WyyEyxyfjsFUxV7Y3x/fzezi+dE5t/x4hbX96MLqN+3fhBy3mJM7pp4qgooQCp4fGEOo21Cl33+ihzsdSYHD4d5nfmOfKAW+FsCOwiSvDjDziinYwxdpzNHIeb834knF9OY418e8RNqD1HPIfcy7Q6OJtbqKITzW9ffYhQKvFATU6Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+uW1UfyyvRIYiHgkCyQE4BamhcA2IQQnzjH5NKeMUQ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bFPo+Oic44Za8qmPsS5RYLzDCmOBUQI0w3+9L+wINGk8HZyc/4V/CHXNk6pWwzlCQyYLmcXPqmAqeqDTS+d48bjVF4vrYpRHyqkHHcWXC1s4iAdNKs4FDsNQUrTaWG5FjTvU0VgDzjD6nxACMwOsAhZMKJKhqeLz8eyJ1eRXvdgperJYv13cChUYZfGznb3jiBDw/ymEljT1ECc/uvQGzSyLkQ/d5Q9hC3eZ7M8oyJcJHXKqFVeo0J7Jnw8kQ2e866+9GL+FYPt7/3Xon2inC2JhbLE9UzZZjpz6qX0cGkZaQUm6z8I5qz9EIgvTZ2cHTlwmsX3eaPU0IESq5WF+82nRuGerQYMUUpll6YdeeVjRoWSnuiEBwgzU6Tpmau/Ko8OhNiZ6DLrb9Mwof6WaDHaq/gIAGkvU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+vnu+ljGeHVDXHoF7w9qC+yOkrAA9wxgKTjs5axuqeI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s8THkRZ74lCo2aYfcp4qhwakhcvvQqp7aMRw6T73/Fr/HuLhROv2shRb4Dj7NLi6qdCxKN0DKwqXBz4RPlfkM+4KQKKLKvjr+J4SQiJ4Or0zDfFDFXj+oc8+SedNBlb7Tqv+2Lw2hETz/Wj9NVTZwM8ihGAs+feR3w5pg3tXAyojsSIeHLVVB0uvylwTJ+CkTu/QbFwhIKA2G+tUYDdVF0wOjP6quVUCZx6YSpKdwiOsEFQzAG7BA2FQ+h645GP0blTp1vNL7Igxzz0fFnQKLUoe6uFUjg/xdqH+hP/G2fbswrRonhpKaEZFIjyE+g+ttmal8gzXA8iQw356/JG2mwAC8yD2JwqUzLJhEkhWNPNPdF0eLcJNDfau8621robDvNYckUSjvmcUQRXaG70prkVnb3Ku5tWL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "+yJc7m9rl4qj43YBgoMOGlsitHqjnUS74pPZ+Duaxn4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zrwO25frmWSlR3f9FuTpKB1+qWAQeJyFNmP6+2bBQgMO33dZqKvtEU1ufBJKtXlB1iQKTXnwhM7kgfyHoUv1ugUJcJ4WkuoyeV8HDcIQAaEVGEVGpt4gT9eVJE7v0lSM+We+ApmURusbtmOOZHHxm4q508ovVTxGEqGa8rR9pT+bRl4Di0TJXHSulOt1byfl2pKGfmHVaGsacPWbvSKs9vcTD/eEF6/qxBcUyGN14BerAw74/6Q1kLjfd5340Ha+T4n5VGCdunE0m0jqizHusmCWgmOujIvBPzrqJKCK+2aFyWfa3/+Fm2YUU8CG+1zlmpnyd+c1gTwWIvhRVKNY6vy7azzV/q8Lusa+J3Dvc1SJOL9T9Z3KC6HovXurG1FXmPwOZ6XN5iEniNDjyXZ4QVJGsJjbBm3S", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/+aXcDbITqBwDqfg2VEhAP9Ut+59OubX3LlPE4zwQBg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tcAVPUtD2L993jA6jfJNEkuHOwvy2UQ68aH4MXzOqT0hIUueKFReBafaB4UW89pnXYApC2LaqIYlHP5c7IwfoCnrPhnG+sRsaaSjpU/MTZ8bW4tH2G1ifYiPapvqNOB2irzEA8gjRVEyjf/VPxMM5p/pBwJo6wIuYMElk240vD1GtU5gLCi8mgopnq3lxhgTMVr562l5tvQvMN1DRprh/wm/zfd4MRjllOPHPwgPSj+0iU3wynl3gfEQXBCOMZug9Ql8+ubWj/Xg5CDQtQftia5sRWKIBoK4+hzeTh6JzAHOE1OnjW5MDBRpLmNt+JP37gcPJa3daWXsf0nq7ui7S1oRkmsCZIJZqGjwmQ8ruBf5eJLgevJ2m0KIv/IRRf9wq2VuQOuAsi8qwBYbmAarH7SQ8ZPtlmYL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/+vy45mJnAOS7JLdV9+cmvtZ133UtgF8KxgsewleCb4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NUmM9xNu1inDau+/14FGjlxz4HrR38r0ypY2ZdHyzycrutOJ+KM7w/WJvz9+mk8pseFoCHpRIuvvNUX/k/Ov9/HRrzap8H+ge6OAsM2q1WZnwGAchbLtStlVh+QSiGSEIYzbhiSZI2qtDSl0XnIF1wshUj+ALYe8m/gbwepIzNaAIDp9CYKWVMJ8tZjd6mIVMwEzsQBNoDcGcSXVsPf/KJJTFaGo1ZUt7aChuKYDK2RB+pTdx6zCJz5d9xv50gnLyQ4IgysjSrSZIa9aexbCUR3mvW8qVlHWUzWlCJCW+mumZ06gMcOcyw0fTMqmnDOLbU+sD/+yiBy2djP3u+5dgNzYmDIV2C7HQ6qKVFsHFtD4pr5XFFavcWD9JcDwZQOkD9K/XwH3JXFViylzFHaNZzkH7kUp48WP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/1IhQyqNpR1pIG312dwm+FRPkSaGoDFJuwAypPDACio", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fqIj4GLeibYyfENK2Jkw7gp4b/kWsH8uu+ACcSzvtQNLViL2v/MylzSgxtVhI+mZ5kNtBnITUB9IIit6tGLpgtqPTMye+/QCtrIR6K7v1sDWhEx0nyGEwIiRFNOVaoc3awViVrRlDWEVRvKUX1xSahr4q/HMTllACCyvciBnTLHJxvyvuCUcElIc8vl9J9abFD2foXtkairtyU0wyvllzmSUkBP5X9Hyx2Rj+/RBRz/dUmucc2TNKVSHQykiwAw9bB/AzdT+874nVGaO+9bqw+qORYhACYoki3KcR5qY4PJJK/FViTZu7MbwCbDwsQ94+PscIjxcbpxaTP5mS8yEF7DFpAoDD99LY9U+a1CWQMLNKDXbXdK9OvulSJpgbF6OsEE/z7ELnKFA11+KMCx3SBBIFKAGJIj9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/1Qq1spg0xYXbiWLWLyXgmZgu3s+/KHWYjOrer1ha8g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZoSG4Pw4+U/dCDGxU53Cb9tltiEXFSPn6XkxrF0tY/EazD6Br98v3vnEZ/DicGpMbLZgVeXBWzKwNGIJllJ3lJKO/HXvmgpUEVttPuF4FB2GyUhQMS6xsjYpu3ATfZz7BMjyLGFEyRsf6gMqorx9zQSfl8KpoHtbxxnBm1tD7xcwf6qY3+Cc0Lbb70zqf17G7r4iJSR12hnUSYkY58EZR3X7wrKCiw3q+mZhNsq1ZWvuUDRKVcl9xK6Kpy93aIlr7yCyQRHRemp4p+fOLZxUzfzuAYTrEhIz1wsnkXYnqyEmnlNPVKcKG/t8hgucYxC6B31xFZKoOjSJWgLqGSQuHGlDW/TCD5X20Z3guxBi0PecCVLGoPKZQphAhJFxwq59stbOF9brDX17vB06Our8N6Fr3Dzo5BG7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/2RodSprExAzwf66jeXeEV1rezd+gGLlgYjQb0/WH+M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ge1oH5i5WO8KS9jD410gpNGDCuJZfCu3ejgykKVfgBNbdZKrZ6PXruLoGu3i8ptK0S6f97BA0lU7kCliLLgf+5atWvKrN2xdHnPMi9DLt/Tl4q62/+6Xqh08lRfWuAEQNyEiEHuTuyrHgvqySY8lbOXRhtlUpiYi75Yt3N9FE7u6BGsayWZ2t3U+uwmwuArOU1rUTCbpWAiUSvA4dVFQIOwYNTUpXWHJggm4tZuNCtia6ctMSMQIzs+GQ421OM2S6p06jfJNahHHp8kqyX8gDhJh+g30ci3ZMOrntdz5C+HDsTS6dgRn4ObBPIRSgbqN6arZ3PrzkUNzaY5Fu7PcHZ5tE1c3dJFYcL8S155LYD5iLyj5J3+v1Qn5z+3G4n4LoRaBkP9PHpU/rk+yM9T5YS5XHLy4dFeD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/3uZID91ZKnAhXyywmfZWDQp3vJ+mTyJzaoRKVZAWXM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YWEfgpUBD8btF4/x4hJQ0E1xtK0nP8NImEL2AObAQ68h0bcuYFCVdSsATs4IVaknfF3hOPEG1dyTzTv5D0AWH2JbiSOhluPHLkG+HCVxX7h3ubTR/UgBTRL+XqCJ+umBVyQhaCehgyVFodO1PdEAwgY06d6qsbgvrKIwi+XDA102VBbqGl5R4PvgN5uagpppGULcp8e56JhsQaXQiPhUzwpJ9GwNd1GHuC/w4muZ5buHzTYy+QQPPyrpSuQj1u21L/QYMKH4V7HlkF0d9LqV20WulBc3TcVks3/c4FJgP6tebDx35dwjVelu5DIBE+AXBL0mqSFJ8opLFZjWM+jYnkfSmlR49D2S2swedaZoh2Oq7bYEdWZuogueIOQlOn+8KVO7dGS6vGkH7im9DSZEtWqC2DKOb1UH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/42i233t0tkZF9L3/+cWaZ5CH/bBm+5UEhtajLLEBkk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VnD8uFhWInWywPKIW3Ui6oZ8atZJP4nPaMB5gvPzoHSI6Ho0Ix9Xj7KyKEnoeHZqz4SrIcDrXP9K9Tdn1e3pq+1MBxOg08zuMA1pj1cgywp/J9sWZzJwrpSNUXOButNoS1WbYx/SCmK+BGfWH0c2Y1uwzAIB14NQfR5LIc77rMtwEe6dC++lpuVXSl8KkFOQmIVG+W4RytEt9gqY5CWpj5t/1j2zoofzVHHmvNmiFO68QPjOjdmdUp0cdwdGtRK7WaZqx6H49oS5/JTsH8F73qwVrSMuj33+LeGQMaJ5GRI5PdHcmmIJ2EUCoYDu/yhrXITaLsK152Z3fn74MXBRkUiNprHLw9abqZ99smJaRnyPb+YCGgrAIRsBnQUZyb0eCLdRvBirJdGFy4mTw8Z1v1aANtd7G04T", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/4L68FQuQ0eyuygnNAeKiAJ+432H0NyaLsG5V5EAUnY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i6tmUQDqVEQYZ2ZQ0hCmD1dvo3sKaJrhN2gfIFeR47Sdu8LSPNtZ5SYg233IhXjAc4SYjP1IzyzijsDowbsJnUnW/OOxsBoQFYPkDfgq8kF4nxD6Mqrut2cgBFt7jFfjLzhY1cS3p9v+FPMVytMy+cbaTjrOkPFBa5M0kCSnkcC/GxVDsxiHzAo8lBzf59WUSCa+lSf10go9WFI7MuI0rDa5tLs3Np34hi0sR2wNmjMB3xZXwwirrzewY4oeAhhBYVfu0s/qxLioTbkx3nhCbjAfF8oz0aUooGsL1v28QdSagE4rcMIN6sbVN1YZ6KiAyhxm3+j2RC1IX1W0F6/u94N57WLym11DC5acADqwnkq/OoTQoBOkaKVNEr5E2WufTsPDJUUQX53G/bV6PAALdPgc6o+FSg2e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/4LE9trkWp8dCkQG3jLCDNX+XW7XjkVdAL/f6yW0+Is", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TZ4ls1sUYTPE6wvuw/o4GNmNRPM0Z3klwQTJ9mOpjvBxAI0hEMp2rw21MH1GA5fDOGg7L90KXtsB45zkh1pF3l7rlxKzlL2xto1yhRZ+66+jyyj6aO/HtDrrXZNdAD68nl8hH044+L6um6oLixRhjBa3MpjhM+Q11npuueXmKqlNOxjNz8j56IXpfxjUlMmp+Vm1I7e6oOKjwBLLp4eFMc8KmPXQUhAVyKB1urBr3u1SQjxDh//8Sb09tHO1PIiyU5vmQbl7wzfpHZphJSKxrTRsFbzm61cxj/thQvnE8eMmsgUeShWP03bVQcG0Q80AQ4lMrHwzgZmAz0KlZAP5Zl+sRtooPYm3vsht46tE2cLIaO5uh/WyPNgakF5O9L1kJce94EwmKxeTZFL4K51oPgcUd4lPB/me", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/515LHhht+D466VaBgsX15a7DJ7Hr+Slhl/NqyaKtS4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2OoT0vyMjWR8Gg+4OJ49kyY0OGz15I/tfuZamFBaW3KhADBzu1eennMyVVz8wY5wkN7K3R49iUndgyGrF5nSAKBJ73MpKsAUmk41l1N7f5bxdMgObFPplIgcFTGYilx/zx22xyj5Mfu8lcWY/hotuK55+dgKj/pt3v0EXXRjSR+zy/JNYyJ5CiYfsOt+ReO5ZmXxNaKQfJuGNsMyXWtAJ54oMEHqax4zS/Is+adBzkUMCzYSn968Yaata4As/ozhZQCFw6ncskXTUKvozcYUgLixl6sKBPt/RmhwD9xLAI/a99R/Sd3NWpBXiUXeeDiXVmgbkmi4z6h8fTTBu/c9iYA5KsRkKoDyIrq1UA/Z6+jX3AukVGeyKmhXOtMPoFCc/FCN9W/R8HgkNBXxIHTPorkfqYpoZCqe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/5NK71s/gwUqdfnhgY+oiFErTHRftzxdtRhQsGOw49g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M/5Jbap+PX6png6GaVnJEvdxNNuYNG55lj3ZMZG4W4QcnQB1/8mSPp8Fqjfp0yuh3R8+S62s0SAyVB4y9CV/BMdlPn3J8IE6NMRxPrR28wgAARXn7QclXEzBdpvDNzz263ku0YAmy56NaN/Q3dOFs3P+GfWF/W9xxf8uLkaasdKDxSfHqjONaoOL9/vgmjW6qSnUMj5sb6FLc8KB0xeG80fThkp4vvFf7AWzAntRb2U7F9pwoC9yzrcZSiBBX+QhCaHL94xR4XDR6g0N7iO+sR5mZzFF9weSghsoP8cjNvMmE2UDR3rBv1WpD+nxvCX5Ffy0BjaHizxbjS3g5PLnVYmofJkyZLFwh+/DDvwWiBD0fMunEFg1bCYTy9BetpnD22YeTtHIAWRV4HTRaICGXehUpFx471mQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/5OwRehhaz/v8yVe6fXoowkVde7oIdEC+QOvP5jwM5k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+tHOOqolxNOTfpXweRZtA3xIhSFEmSW7QOtRR3eb7xL0ZrrSWdP7pbCIu2hT4CfVX9b3pKTtxmdoXSHcENmERlOtLbYAw+E68SgBWYAsNoPkWsuqiZaav73DeTI7xqXNECFijVBjvOujAui9kvnvF5bqKvJx0mUGLLBgjgD32uXkR38q3mFmM0dLc9cesuC75NN6Kvtz1qZGmJHBkMLJzNW0w/THVGU0MSIEDfk2ykMzS5NhrgPAQYGLaPYuQJmDXKva76MOQs3ft3y3KtszkIEIVTYsSR/xevReEcIhHXybP7wIevLr9jud0KCnOKMs2Abp8vToDjhvUhwHcn0samzUK6ABw6TLaq/yBlpi8mzYA75R7JEZzAKbNdCoJcC2SNV7HvSB3pA62WIJ64xROqZokCmyQDO6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/8xyZYLZ9Kmsmo9I8qMu7G00dib9tPxGGgrzzC4LtVw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kgMpvboW1TPEy+I8OyadgyWmm049E31oCrA5Kqub3SryyBwg0LavOtSrkVz0d/+XaCJmaqzKQHEgO8IBEbS67y7X2AjpIlKHBePQcgD49/vsKGRNZrvl0Y7e2KHHiaiMEZ2QetTazUu3c8YednB1xdUiPleLMWDA/TGDrWxKWKCMZePtPbGjvFnKmIgSalbspJocwXxPCKHjw7QuKtgsJxMeB01BflJQNdGqTBkSzWh75CZX9xeSMXNYiMEquj7LOHILpkIr9iRiIitjK6R8jw7xEhtW0DplkI24GgN0bbiKm35qsaUW3TrdBeCMS4CEK4pKjFCrVskrezq7i+J2onzWV4AbhVR/fe9xGhuyr5ps4by092IwvFbx/Dmpt7dcTEHdgfIf16EYogAFcn82xWiRmI0/+848", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/9aBHo/fjBiiBldZDF8lC7ym8ktR822xgsiGage0ogU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wHYiH7jANBYdrN+g0q+EEuFAYFojSEsM6YPFkRBR5u9L9Khd7Q8XJdCuwBm+flPAu6U6yxvWT5bPWpDVmmZUAtPtPaF4Zk2BsxI05CYen3mkb5mECib0FMETIfy9wwfhtUroiXJ9XHmyZHXsBQ1UCGilbf57j0Tc0G/xIS3jwX1BJo7djmqA+uvBk167QshdM/2gYrmBMnFDwOhjOfCJJdncAbsvDhlQ1X6ua3/emlC0r8je5GXzKWB5o97bYMnzH3K+8CT5PSfo/4wEOh16tBCV61cM3L/B4YZ3H7mC8BUOXkJqKzLedB1vPuwDTLqGdoxMtAKTHad6S0wuZ5O7J5Pvq1Ts73qd0M5Jfgnu6cGCHxen7ScM5WFqXxNnM7LSci2trXbkk1+j1+686AZ+dXn0qrahvBv/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/A91X6YzpTa9mjRyH5IVA31l9KMgzZ8ii8uXsFMLRaU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Vb3J76RKdOD+E88UknJ48x4AQkbiNZb3Ao95SKU6Bu3x8C5ExYi6TCx8QFLd7Eygg6/BnlOwiA4RES3tjUFA2n05dZoOKqxTFcmf1Ev2MZ6T76/TJdmjDJqyxTmtvgWlA0A3oFqbW0fRFbyXnMjmVtfhAsFb32JgJjvMEPkRQ7YlduZTu/45MXBVrTxheIgAkpy29Z0OKYw/wBjJMXgqXnrkMQnAuUetaqjGe0EgfkbtE6DN7bjGOF/IgDDHftulBwc3DOjB0Wb5MsmGaWG42eO/7mGKmlkz5dMi/WjEuSZP9Rc1BSSrSrqVdjzx4bZZVHz/OSwi+vmk4k7l4je6TNu12xVkY4DipDsG7EJGbuUKJfBC0rSbW5/fgB6or7X2V9/RdwO2IRZOO80R9EOP8aaygdbyNb+i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/AhTl85+31foBICajBR0rmWXSZYkl623FQPNXym2m44", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TdoF0SVbVC0V5Z1+THBkBLyZflhgdXw9mgT7+cpWTZS2Yd3S1v1sy9/5Oistqd9PrUq513E/nzTh+hY/kk+YFCCly3gD2CS8fN2BfWUPqmJNWoLiUGvcU1JyjSRH92lHZD02LgoagcD0g+150b2hTrTq8Xhy4sbQEyhzu0lR9XWPgq9d6UIya9SUkMEhDFEhdsuk0q598A0mhquYV2xBX2VEV7xhwatT+nKdD6gLXXjsFq1p2p44mPHEQDgfHxce3mB6RV/OHl5Os73Dp5SyQecl33nVkwi+jW13kVdXV0xg5hd8RQBjORUn+iPjgI4xC/uHehE6q9a756ScunlsDCVAii0yaKSHe5K/VjpsWuqlAQZJFrvhkoIZykc4iR+D2Natm2irHlYgqIEhYoFH5IqKD7fZ8LVX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/CDLRHUOVI00mH05OTNjAYqWuoawb3SGMVw12+LWtvQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OWHeHMRano0MU8KJZW1jC9vb+UH9k0gvSq6jhGn6l9S2eolFFcxMEOTD3Rwu/Lk3PI9pPilAizModfz4OzuE5Iclvo2pN2w+j25LQZ6B2A9ZekBHMzrFR4tfa7Q56Z95QoDJVYaRRUthNOrN7I8ns8dR8MgPykdTsCgXZTZbs0hhqwqp4tiaV2oOgcO29BVFdyB8+4rjX+4XZj2Zt+se7GzKbnY9A+WBgoJpJKc3gORDdI7T6DP2sFm4NQ0tF6TSXAy7k7LQY3J1UGXRjNQsb2vRxB+TtO8AaYIoBRrUBMttSKUV70OBcqZ/Yalaxn49ol7s1vkHVpySe4DsWFtyeL+/CQsHBXTb1mqqVYjAYvo7OiljkXp96e7lDKzMzkACaLjBlKdyqru25+VLLc0POnQzNajgvSZ4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/CMxTRtXPNQoBLD/vaBauNwonLYNS2/lSGyY2oxfCzM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mdgnxpN/t9MljgeM6qbUdScbGVtjRShYN/J3f4wXfiMG3vHdaSYN7OvufKSQqQ1djfqw//Nw126NZ5tRh71R3A/UaP/4dtpP3rqdzcLSvqKmqbKI5l8YIgsoWAdQ105Yk1WYjvgmROEXoolIayYBJxwcAMVZ8OMf/FrCP/awfd4jWpI4M0gsgyaYWX8toWOckQn0SLKEBAGcKpFpounpAfV63umFNrJ1H1DwGfe1mTS2hDafw42a4B4q8jLhshPgOe4xihZ2TsjY22T1DpdxVu/SAlFpoQ1Awsoq+8juDb/L+Z5sjNAwD8WmB+lLv7p5StOVNif6y9owneEaXuJT/Vwca7LfDEvJ3iD+oEe3bHRYvG/LcSDymD73VTWt4lea98lKZjFg1pidSeHKlcd1tj6z85m7G3PS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/DD4NXpCWr02pjVZAjNDjGz9P+Dcl2YTteey/eTyWuU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LEkhQeoxXcKr82YabxmhEGe5NXyFGPTLAMYCX9893jnEghzMzNc+SViy2XDHHA1bIk3S3HZ4Qto+AXoBJLGPHGseSKyZF/85BBLXU2t9X0VpJNyzlrwtsngZH6WFqp20ml1zPenOWaCMg+IViFd9R5NazmknNipiSXSp71KFQU308gcS6ilDEM1uGHZcDAmLec20aCMBcSg0/a3h8w/v2I1TPfznM0vSyoReOaTfC7dRteQAiiKLiCExKOf3qy9g5yxFmFbXMwRdT+QodIB2I9i8Vm+19r9chqy4MYqH9bPMTEURbBuFFMK+DSrmyrKgiR0Df8MLZ2NUyd0Sgc8zt8oTv3MXvhAgiTg5ZGBVN+DloHq4lJhuWlZxZziW4CwY3zQGn5wS17++Rt0Wb7eJdZwsCyXVatZY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/E1IKVKDyuGffiDHd0ym9FAhfhHUlnhuWTTeMXmyha0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Wiazx/N4irxpC/MVZHXF5Ao+9/ga8enI6TAMOxpjb+QOZCf9gA8lyrYa/fA06Ws+HlTXGw/2AYiU+i3FZe+dLcL2hWKF0554ng2EAXvP4EgAJ25u8RsBg+7Oi41tYHcnj4Wkvo1o/+VGVeSoE8iWVO4HJSsNei8zB6+Cc2uiIN6OjudC1w+8CNtwEni6hebOCH+A2EEn8jjkkwWEUhDF1CWiiFHQ5BsKRboGs+YHc/SWK8vMECr2vgF1wbKBMgdVbfd9Tq+gfxqmhFWSBPVxryiHnR7/o4fDhUceNqicw3zDZJGBFOulkokWcGIiH9PNnre2qMxS8b6wRv6NTL3Qlk2nMv+JNnZdsnxZrhG3Ww0o6wx8HLdAo6G470p2cLU9cTyFKA3sZ+AWcs5EKVdQu1la1FVxcw/r", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/EkV12BM4wUwfXthr/kdJr02bFbsen3CbC+3nErqbnc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LI/Gg8toy13mcll6Vz3o6tzFBYvWDwVItbxbvRw2SRZwNzcftXtViAv1hllWAwSkQy7ZYgD0GSzUnUygSpIRtwT0qSo7hc3PgwWFX6OtX/x2TKUE5kDmy3q+s1syhZOGl7KLjoXLcjwyuT4Tuc1y8NdaDa1BRZ+BESlpqVhtjRBE7wB/oTrkF2ZhxPzD8JQfz1dcRjguooWkd/Mnz8JEq+v7WjyEk7qrDLMMHY88UadnCyj3lTnZeeMfFyHRP5ldvmjVJM3eI50M8gJ8ZgLZRJ+KqPrsRbWOhiLYi0HTbV5gIxnpDX+1/QQ5aoFLxyRk3D3XhV13lVyzXFm5jkhWzQSXJNNHZjSpAqT1L+jtja0iazZ+RsFuBIrWIcJ1P7HdTQ6W1PVmwMDhLni+thAeOe4QAq9p5TLZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/FrhzZLZsWvxQd7J/Q9EsKHCYJTaIdOOOu+yekuECDQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "79ij+F+7SXhDJfrillHKrleVdJIL6/0PRw/fvz8zLzG4o9z1RffHS7Ybr97DJxEMQeCZYPMm9dIDSycfewICHNMoHaHNA/EegEiMIb2QaO5/54rk/0FpRuB9ybi7UjTe3rhYzdMf7RAt9SCSTv22sImWji0liSsoG9Gxt8M/lsDd7QW/ZxflY+D4hbzG6s9hWY7EvukqF1kGybdM7rxVAI71cpD3G4IBlWsrTy9bY6is1vOualzDBlJ8oAkXLJ5nk42Ar2v5KSo8Gp+ArdmWRG5Kyqp2DRZmwpVsQeB8nJC+yRDtgj7CTYdWSUbuBJVMVU5MV3dnYCdkeysr6IioFzO5fRYr1I49r4asQ2IIrFNdEZn0xdYLL7oBBdRAvAb7U0iAU1VrZTRtsZIWgt40y144UkUVkBLw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/G73x4Yo2KfufUeiAfzOCzzTNsUIbSqjH6lSb5uoxR0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AXg+sHL3abTfuOC0+ONtUKGun+n3AxxS4PTCFUMZQS6odJ038KzoHH/76+5m7ZlV9usY9t/9EG6lWPOVwXhLVWxH7LnQxHjq5+r/uby6ZqiOUNC7KLxDEmOzcfiFxMGSEiNkPduhtexKytno+rtJ3CUphCT9jStIITt0H0R/LuXZOyk7LOYu0yMPSUYlGUEpVBQWQFTUMB/cZ3pH1Yq5C0AptwQrObcIQ6sk7PyVNFia7MXjr4JPJusMtXHWWzkPZSSXFrGgQ1tiVD8vd8NU1hGuvEvOt9RTrrQzaKWIVEkA9e43XORvN/eUYIlAmFxviE3TYtXG11ZZsSennMVDHP2Bh7zJFbrEZIG0rN/5AjUsTTl7mqL6ZeMx/lBRraDiQFryHoxEbuM5VFw/PB6PO+p5bTHJ/hdN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/GYYLURZ/Oir9iN+OD8SETtSTc4mbOzveichftAHahg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Eh7puluA6CP0LquZ4TAcRP/S4f9rhwa0DuxmMSuhqr9+2WvPLD4eEn7qHYNx2P0/B4ChJelre6+bu2WifXOIyznHC+fba/MubyJavFnVlZmTA0t0FA08ZxXIAm7zY26Z7OQ4AVbxeJ8nXdJEpj8bg4DCnCmwlhIZwEOA49T56G+I80hyk8iAGJfEjGAQ0d88Xrhrzy5mvD1HCLvCyjAN1LL5IinE5Bsf27ybjDGrC+f1KTRZSIztDQqDYt2fAskDCZXegx0RIgXpnNOSRkl1YRxjeDzFcetLTrD2KaFR3TB6wFY+GRwYAbm5MMT2h6cXDHuYTwaDPUqGvsU2XC5ueRvRLqf4Y2FxmgbwlMzlX6vY64t0Oi9QGP7aA4X2Xq4sHNS5RU70J0kzYjsOaRf7Iirnz6mmZpXX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/HTl42JA5BZxC/etyCi8p0/Y7F0dZkErSXjcx9xZOLE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tYiwsTB68jCgd3khvvmkp3NRB/CB4V2BZWo5vwzkGlmlbAf7YWMLUCQzKNE/vFOsjjv6AB6agCvTPhvxIWQQQSXTlf6YMQ6oDuJX3+9P3fMkFaG2iR+b7duhlbxnXk4ozw36g/davWJtkqJe7JTE9kOiOC6tqug1NkOHjZZbc2R5nKf08J6oxzo7avM4WqXV5RIaDzOHLhyZq8ZGyxGByVQfwBw8YvMN8D5HoGs0BJJmiPM3NxVZUEahw59hgkVcjSnGI3G97/fvLgOrGKso3O1Pa4GOiYk5an28lhinyW8Fdjbb17t2uSPUIH90gxtvoe+ilinwltAl4Noet+DqAxz+GUF077mFaGGgsA2RbiWeX6oqIILiZjc4gHzQUyRTF9h0lHC9KoNQDmmWznElc6360H2/DonY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/MOSIg0El0+qLiT2c0pIGBHcgIZNPk/orZvE1ca5dus", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AvCcQcn7aEcp0/lhiwXn361S3G4mvPej425dFK53Atv7Y3UzIBsD7hIPfrcwxmAJLJZX407lzgRYRvgnEJGGColITwE4IdkdfvXC9J4T3wkg70f8WkAK8etqo1u8P7oW4zBMAVhbh+wL4D7mqnJbivGuQP9BSZw014WBiUUgC7EhUOIVjFkN5f3IXp/5RllgI/KQILaqOgs5f4bMq4irR4958sQkZmNIkeA8rUD8olS9N8Sip461jp++cFhcBptJ5+rv8rEuSfFJnp9c4SsmEPf2D4yAL2GD2SCJZENHRcFbjCq6aIJ02cnUe9gXjf/jAVhut2GsSfRvCPthj9gWGi9lm+YojvG6Gac+mlDDvgS8VmVY/LoVBfw1OoE62rx6+4kWjMTtPKBzEyn2jAqnb0t2siwYqoGt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/MmT2UQPXDm5TYmmAexJ/n3z80e6iIxr1S9zSrh4+Fo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "J6LInmIiZJd8SQjqmM14GsKOIj0jbJBe1bz/xIy6P3d3o6u0L0wzqSC21pxte78UA5ZQ2ZAtw5OQ3RvwmhhihYI20ufBqrT0QL5Ur5ssEGxuAw/bq6JJdSeGTe/d76k2iSYYUJqV4A04wqW+4i/h4yqU3sex8pRrTwgEX/hPKZN/QoM0LqVa8SV0Gi7K9CUK2jsklYML8XCzqf8Xb2nB9Y42inMNSTRKJ+GRtqcDnZOwzaCZq0M9QPXRlYY/AEKrcE6Xo7spxXQ9BT+7glHN55nb+6ng8Ycn4RkEPtTPwO3B57kZOho6lCvM5QbCYzIZZ5qbOzKj1D6+eTkDTuDdmGpVVYt83NtvaHPE5APsKznGPmlNbdVrryL+9pM6ZxtbWOjSysyLkMgNQ9OInvKot+vOQgIZbg8r", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/NAnxbSbKVTpvPykQ/q4sXRw9oPCwrWzwzggQTyE5zY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iXBTHWkVsxvkGT3YPkk1KGUH4GS9292z6AMYWTzWzxFEw7VoK8hbvhIqrH4AP1jJFfKEF/z+83D/woQofLvSJVdF/9R20kBvFHipySgI3cX88/G21Ye7WRbE/r3rxSufXIFpWeea9L6TajCqNV41mYnqflB9IAiukkCxVN5Tr8Jw6mRX9dBjZ2nN9rUI2OuCO3bJ5YiOwAU8X8O+uXuty5bJsSRk/UGPLmB0zLFErkZdWaZLi57BIr1cSvIpfZRYLrzUFaNny9W5TQQzwMBlXzYbVh4xtoND9pMhtJU34qVGi4SmhGFKLMNH9Q98+bcsDNp4Z9LfQ4a1pWgKZLUdi7pnIyDlL7CgSFTJu23HYUoRzRPXiH285NQUXOb9XWFUpoDzjp8E5okCFPs59uA7YxrA86fHflQj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/Nj5aDWFPodxPyJfGrHg6XNTjOvX3xT49uqTXpWfwkg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YuHsDo9dS3kR2dqtCnPK8kZ9M8m0qeIqNhqFOzDwM1ueytp0lsmcPG4cJnfjtYgf+hysSppTq0c82NnQKWFZhtM30g/Igq2PAXY1fYhS4RipCaCbFZWxJVO947grSfEMen3pTJLA/CSh1/I6eddGncvi5Z4ingeOed8yuMpeJOS/bsWxpBigXqgWS+PI+04sWAdybILnN7DAR38KFDWZ9pXRPmD82GQYyAlG/sgf/hfFrABzdLkmNtLxkuruxeGSCoLDzgiV/AgZL8kzhUG3vYh3we8HtIFW2QF+80k1kHLywFIE6nlmnpPYpsnePwFtTK2RtyVfsloZvxydaZq0FUBgjvRytBvLlW6v6EDdEe6ewE6YG4VuHeXUzgAW+6hDQ/uuhzn/W4XRIXO79ZGUyihOIzYcPHY7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/OJnPKWCYiTrB8wncuURZ4ooGswonuv8OSJ6qteazBc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mJwOTGo5DudJ8kZ3rRjq8mr1YYi84XREfnTgq4GpeAUaaFmLgm4s5wptI51U/x7WHd05dgQxw27gcpI0ZIZVirN7Up8cCZk/eGFe23Jk1B0WlQD77YbeHDZc1hkPrRRJAnee2Ram32UmNATYNSUjFVerZnIzzDzqAiqaYAKclXJnuEDDM0IEsWe1Hpy4rDu34KgLhbMcqOADNqjUIL0KNX8L5jzpy5iZGXY3T2uft/QoJzL2rDUNSB9nqz18XvsPpyb4R8+hRwRZkPHX7b3n3RKzO2sLvhmCQ4ayF2ZEcGLmJX9oRJQ29d3iAyc299cnMuMQs0XYcpID0bOcF4Z4u5o4Me2FqG3xOSisfJwcX2ozEN/1J9qm/nOe3EkSDN6rKFcy0wEYkPM4kYYBHQdOM0eIMcAv1555", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/Q08yfq4Fa0a8gN8zGwmn18Nk6kNijpdvrMyHHAkAe4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qJc9PLaf6TTc0inbntJAvfE9v8Dvmvrtiz57be6BUjDE6LJcs6+OZzBag8fBy4YYsel7yKAQV5AwaomPl9paihiQFoLZUZMIWi/34CjMVfKyVrHVlQnfK1Vr5cnXpSIAzkzA+/6wSD28XcIGJ+3fPwYvBEaO3RBm3UsxyV6OqAS4173niwv/exL/jDG6pgChTlINaKUmILrynJve0C0dAsakswJ5Tm0Mzg2OZCrL+T3hklrVH9IxUVGg5clwxtL0EDXZ/UrmoGHXZW+HId/rxKKrtVrrCY1cZ3hBte3ge2zkExrGek7RB8b59+afiu4202nt1FmTzs9tTwFT7OOAGm1tsmvDCjQg9BaJQyqk3qls3pxBKKqIOCfguElw3Ogu3abh9haiLV5Vr0PRS5oE0Dflh1+WJAWT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/Q1RC76q84N1PRyTaGOke/lYhA+9NDEmQXA0hJC6ugk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MOXFSa+qTxgT7iEVsS3SZ5qJjcP7LhzDS6zEQn3KgpZXgoFTlO4vxOv45tiTIY5Uf5MejgKWSgTy2C8kUPMaRrHgQxwwRE1ToTvmcuhFe/NIAYXXkas2cH/HhUjL9fN+C1InMwpbC9XWV2rK4PLOanC09ESRm6DSGG7RxNl9SHUerKtBGARbppG7Q5QRZSdmH6p7WgHie5RPT8ryz+3qnnTHnWSysK5drIJr3M05eFvez+gfVamxbXryV3J3s1cDVnacFvhi31RsWaa7Vvw03bkLbFBIAKSjDCppJTnpuczlwZiJLJM7ETJSqyRzp2XEoNKaCxqAKMUFThFGKuhB86brTYMo9uUzySA+y9DBpYsi1XkHDk3kD0iBqk7bYMT9kHU7YQlS66uHEDIwc6vj1e3JT7ZUSr6x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/QZ3aNFsWEWvNujSYFxKDhssDNmlZ4FFFMCvD4hi/go", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mNrITVUgSg31bMevhKTXfETSYnxeJnW528B9JsZzi6wXacE+6II9oo8D4uyEoSsMyJ6FIa+NZfbTEOXUA55GOsi867ahTdYYY/aE2oVkUGJvk6Bmu5dHNIoTLI/8Hs4T16YbYtSTlDlyIYSGVmBIz5G/ou4mVtu7GUWz2W4kp8xpIfj7tlDuyVdw3FQlWCey3kXHJLZWXgC5EkO+aY4q3cDab4VRXUxOU9uUyNFOPrXMj0TqRBZE0pNF9rbqiLXiGx4vzBj0+K15v8/2GJhkNoEdyiK5fkvg/+lxAmtvZNMVTBJWxAVAD2Ig0ZnROxM8bo3ZyLn4Y7qVIQfHc9ErA4Vf/yezFpBRt6j49uflzT/WxEkqjzZ97BlyJde7SrlpT4QapihYxDJ0kTer3CxUB9TUsts/Mr9X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/RvzJdd7xAFBxFl/zzH/C60GRKAXJdvXEOwCyRmGx/0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M3NMRdDNUsf3J+Ugk/IdzjQ3l1iwFdnkTwYpmOfLIUtcp5vDCgsb4cACDTxXWzydzED7pnhhjMwzENf5VFenxgjAoSV3HJHgjHG0LsLdjnKt4Q3W8qJjdE+9u/KJyF2iVTqs3pftonTNZ9AEVoKGA6/mkLhEAgnBh6ipupiyASh1eYyo5W/Q7rX9ZKEDRKW9Dg6L/Igui/I4+rtbum5P2yJs9Cj8KSvLF4nmDIRH6WR5sYCt//ePp3DP+oJuV0jO1lXIS7e0S17V7W8HszijKJJspmb14xD6syet79bbwSm2zTJtmFo83k6HFkuZcWzPjRhZbKGx2FE6W3Zy/+k48colNMb14CDwAerQ+aOA1kDfYV2Rss9USHzx1dqjgSx42NO1SGct8VujF+2tlrNBSEqFU+Bgp+ql", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/SUzKtayKpwWDVJOnPR46YDB2SHAeAgU5leCYQUqcoU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qh3997bylcaCeTLz16o0iekilH3rV2rdKpNu0vIQB8J/B6bU0rp7g8nZszovKebRUDqqaUzYeYRblmwV/167RxqSIF5sEBx9tRnfNG1THkXi8+n2i44OoGUzmnM1W9argbjoHbNJZyvg7UdM8jPEoJIxC46IfpFt36qZ7G4zbK2Xu3MqdJSgfvM5lxREh+2FPtF/6FvM+2ejeHbd3ZxGqNnqj7jrGv5ELK/p7+ztswTJ1yedcV9mENKqkn/3OsOftMmJsF4cGrSGw/x/kLv19k73SoLp8rBiNYIn6ksgJGdfbiFw9ipjDtiHoN5rL1+cadWix8LwQ4tFw5KiJR58g57KCcIuR1kNkmLG8xNkroZi/1xvmgsXAxvKMBbumLV6zlJrlZtMJ/e9gCG+Dz66ZTWTNJd2FyqW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/WUZBQQ5SwUN+EPDRPTg1ajS2TzmxnWEccvluP+Tdcs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rF3nVyaZieTumjNiZSPkryoChOh+ibB/2vOxhsIC41/0EHgfcx7ujGQ0/rlIMoH9JQ/Yz/eXohP1A+LCeW7FP27Qstdmaq4ojkgMjOx5eAB/0CDihZGc2ipLHGX7D+DIIGF5scEeevuehr8y9V3E2Iar763HXqK7zonA/vgU4UhLF5kmPiWBRGAQCb6MJPbrNQyAU4JE2wW5oMLoLEIyLBo2s0Sh+2nkQSiw3QFGm05dBeno+pgURnq5UHMIupGSMLwgPgtPuKnb6jpwaUl3a3Kd6C887T8CNyx6lubxbJtG0I9d37hJ6pTfWlAOo5R9co4CKWVoMeImYCOaH1FTBpp4HpLNWEuyrJfubmdDss5qUoQfOi3kLqpCKX2maZIGFHoH5hbwo+IWPIXxF8lYLd3RsMJ3a/at", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/WygYNyFDDkYDbb+w9UlSpM8wKd2FM0z5yEYNonUPJI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TjXD7cMCQR3FKBNOwd9ZhT+JWp/5GED/2wNb1+JRyuR1GmA8wJSklpRGR8M7oyH6826hN2keo5RnxazRWdPHLCetfke4i2j7nTtAGAsjx+5sThtdzjW8nOOrq/zSG9lQiWNIVf490w9MsdQZeqqTkkWItaYnM4e18QO0CUxhLjVTEJDDRZgyRbi57Fkkl9WSdYN2ASbTgFQReVjVpMMbxUI/muBFgCF+xhcper8zfZO4rnxJWu9wHTOZ7QRjGQNI2jNv0Kq46oUGeOhcTas8ZWya8wLO5REEoPvXEGWwTD2u3vCk32/UzsVgNhpuz4xKp8pvmyb7kes5lkvyPCfE3RHOwe/67AfRp2E7pyAxwahuDMbLq86j4kvaO7C6fk2Nn6XxNvL1i4jdNCcYbjzA73pAF7SV9UCi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/Y/caRbTtYbeNMMDbgvc8EwyB2aZmf9jx+yb9JTnJtQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0tB6CYdfaXDTP88wbdl3ajJAM1t6isgcYXBaneFP6W0zXAo47QJje1+XB/UQADCWLX7V4llmy0mUYbCUsZrXpGVrliZcbT03wi5R/flagDr2kjYrs1lKj2kyrgfJrAyQphbmggXDcHUILGfuknhpwrsHoS+IwO2rtwrr9xjzRuuOHOHv4Gay4ygOeurVZLLaEJVCZBb61TGC8sWkfQqYumfg+MIQB19nNcatp+tfdEimnqQe7/6fWlvPrCXZrswde4GxX5/GMAxBqJlTyU0/mxGjOOecKIAnoqHPbwRcYkFzVpY4XbFydhliAHFenkb/GOIrpF+BCTZNBr7hgJsJ73xcTYQIfjm8gHsltw3qrvlCPPvEOY1Ih9ztberdfotD1r68g3mLQvf2Y6dwqOgQsmq6iB+jsTN+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/ZWDgEI4Afl8lfkVhmwpQ3sg2h2xhnx32gCaibw9a2U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OPRl2+2BlUh8oy2E/7w6sH/UEFMIxmtaLx6C/dk6YViukPuX8tnU2MD+0trtPSzYWebs6x8/pkkInDDhXn3YXbTjT25ycQCcrBdqX7vtyq/sKuHlTNgPw+MnYdV1h7AcEfDj9WXnsZvpV+xlQz8uoH0Ys7MMPfV0FBhqHRyfymOQlnEWXv1vdaO/vPDwvGR7TjBcOUAf1A6UZ81LZ9tfB3E0gNuHEdyDZNoHyjfk0t4eXIv4F5rKM/tl5+7gVDPgRRY/02xI4yw8t61aD7cfiFTMG6JhG51mNOIfLj9bSVYrZVqxn+wFt4Eg1JZzUyHMP513ybRHTOGPyLijb0U/FH1Bb88obGSQ02gthQQHGkchMpumXWkvz5xVyiwoDLZITwSq2Z/jKSfSFEjU1IRiXSydEa28Ruk9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/b2wpwMM2t5mXE4dj6A70AM1t8o5nWZ1KZWpcGXEhXA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "J3I7aOMCQgY1UT8nODBul/SFGUIjSPMqPj3PcK8bnHr+/4zcD4stcvFLpiT3YWjDZScNZLIDdGq1O4qSpCXF/Iw9FVWeph4teZE1HgYWuU2caX5Fbewv//ee44D1tlaLZrg9XLXggPoV2xFS/8H1MP8/K2xv/Az++kyhBA07zH+W0w4PMu13oBhZOUwIdRW7oK8zwIdh862cUOjtUx/eL+n09Np7JkQ8uGuWKHSy+B2CpTmt3HHyVf06m0IHMJ6C3P94YNsLjMz8ExLuss0bHMvZoTzy2ANEF1DcZXFiKfogAKO08KZSK+3VqhR0xPFoF5IuZRQZONW6AXRaGnUD4ufbR2D3dp1QlYTS3RpzYqUiIgacHZxh+z5kelL/YxMC4EzChhdTZ4D3UHQ5rq2OgUDycOMmNlpJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/bO1OKL8fGUkZDEeFW0+ILQQlJbeYaGncpuRtm51n9c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Dl8vwWQ+3FmE9t1mJ5+w8BJxbMm209dyzBNa+AKo7PHNy+7lvBWFtmo8udLAihvuN2m7tM3vd6TFRaYwGgNzgZZvedhvO97fwF2vz59+qMfHyMTsc/fRS1vvbfUmbi0Xt2wN+ukoAf9WCahReBmsZfZPXAe9Cw3uoSPO2Jq1Az2lF5e1EGUp8Ec4hLTcpZS2uKt6h8X+6x/WBFaUlxTmOfSjR1zTZe+wD/dI7qQ2VcNaY8q68fqi3/XsQjZYLJ3fV2U7hG6Bwool0/ONebBIyFucc//UDZri+Vnc4bwkY3x2dPDsspn7FfK+CFt3Qek8/CAPNtM3hHIvjgOQ5fusNoxBOWhb/sGeDG5R1vXI2c9p6ay5PEUU6F/55G2uF/JmxZeyLw2JKt52N9nki3ghF9yaMDuaKF5P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/cxcvE1Uai5gKwbkcFwm/O1U4Y2A2LqJlde7GBU23eQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wrzs5TtRvP9s7yHwOzxb9/G429JvIPcQlknOc/GpwZPv1shE43nOO+mqwg+R6oNc8BMN25p1VTSvkLIKp/V9JgQzbi735MOpX5hwiHcTd28Yd/M5mBxxb+YG+b1RX4H4TJoWJtLig8A1QOfhxMPLun+jFw71IDCmUpxEimUjEyMG9Co3NhEA+HvKjORl9MtGC+c0SrKy7vjsYreI25w0Zp/hUF3OTPn76f5JSJAg1iCggTY+nGoF3g0UjPXQcyQs+4FgfIvwrk7Fx7wEpfuGE3gZSmFmhwtHMK2BPFIGRh73iEq14B1TRizKhDdukO6qLMT/bWq+EgzPnY/qJDS/5+dyUXA+f3R5BCqRwa14ZdXbi+lNs3xjSnItUeurj/CDC00YcIHvEMXv7wYQ0tCNele1yu69qhUN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/d2JjT4F08vnFcixBJgfyHmhZWF1183Tj3pjno8uWKM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0s6F9t/Ec3CMJcjz/kg20Sz4Qz4jrwOmWQVVs0ZB1WQ4HNv4p9R6vS4keGsqYCZ9f16Fb1TaTTHnlA6MZTnl/EoTYBQvEiJJsoPGhI0I62oLIc+CyQ0htY2xKbhsXCsYmiW+r367i94bTVbKzqwpER4t1iGvd/SwdI1ak6oMYqpH6Efzx+2UifZ0+O8wQDqRPiEWFwm0a+TO5bmb2fcBYMd4aj2fJtBuFmwOWLjcG/4r1+g7n1F9Yv1n4GhfOiAR2BZET4gQvsFw+281daDVYnAv+IzxwZot9I7ByyB9LXogqV2nkPRxtgpryXZzt5YdZkWlZgPrKPtXGiDbbx7IIe0xivvzQkFNlFfIUeUkMU5TjNXqNwv0u/9Ken9J+5Pc55UJTfA0P9+9EMMF0OfDg3B+gT9z39oV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/egTChLm09bJQQx1gHQ5CcOZKzhWh00bajxkCtENKPQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XX/G5SBVQkla+nn4X3wCwewUOWYWRVr8XekZ8AxwjbiVCER5Io6y2ZIAEBd9fLhl4vlGFF9RWUkd/rxQbNkECiw0M8vJM5uFEif2cvIAxTCELTQGrcnUNjDtYg2gHWtGQFXJbf0ntyPCNNwqZxx3ZtG/ktzg5w5qZHsjcqEWSKzVbIGNsehuxOwriKEBKREhzTBVAHA/iUoTplspdnMV5UnuUANR3DbHu/uzJzSWTuboJvaBV1n0NmwlFgUv1docxzqDFjibD9enXUTXnXrYXvvUwIR3kuW62GQFAuNSdiGZd+mMHEibIAloeHFSg/PoKpO0cQjNyMJ/uld3ZcWbHQ3IZvgzOWTzcekWtHdjpPdQm5X5bjVgPPOLGlVAVo0DgtndbdwzfbkvDTUXXlJviCdPp6ibqXAw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/gXIDJ3t5lw+jgKyLhwwh6ihzZjV1pGq45UiK6mdDPk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NhWsqhLRUcnsHjdoxfEGgQloTB5P+cr6ciFUOC5WQGIWvZ2x9c2m0nCjSuXY1zNazzXc3ayJGvEfqdcAh6N/tIuMujan9vqM0hxP0zqA2A5Z+OMfWEqdq9wWo+peKUi8ggfhCyG4wQ1pYtHfiyxpA1yKCGia13KJqvUJI1CRt1R+yeIhhFwFsFF+i/6TygYwMO9bR9hlpnyikeFxODdc4y8rcBWhxCqRlD4m/qy9l5gjsxDfbpgxLveD/wsC0uf5Ym19gKKCcJcsdPbZNfqwpVuDZ4V/lUFCYu0z3wD/AAzi5eSTfMmjqS2JuGO58n+3BVONoQG1PIKF4PpcAZlC4VOqICgXMPyWnvlDuxMSJtuqqCQV0QdqjxyFngdqyUHXP0cgsKDYbNLCSV0BMfLmhcynpD63f88V", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/hZTytdZJBraXBEUCNyH/Nh8+7Q17guSI1L7FkF6Xl0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Z+tgVSgp0YpBVs78x7yYXJiXPVsz8huZ7FQPjoslayCdxVl83ZQkAPY9lZB9UuLcKsPC8L7a4m7rz9jBHDCS+rW8c3q/Wl8JR2n0WXhygKGI5iqiUkV9CilfJOpF9f983cS+JpS2zUxb2s+RBT9zrfKdvMxOmAEYA1qNdP050kgRRhTWcxeK9IcXcL9gFEX3sMoEKm3yNJBOK14XJt5u1/2zLc+1N39/2G1sQ7tObBDedXSqHKx9Tgq6C+xa6cmFF9f9dFFLXhgiiOBCIqXOX850YpPrxGj5K6AYIjjPsCka8grffArVRgmkQJcL1bLnYhsmb5y5Q0RltyhTS1q183T0PwjRMO0rkJJdpFpA9z8YSvAaQPouXd3yw8v3j0QE+SDio94wz8Gt8+bxJbkySX/bPs0iV9Ai", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/ihlT+IBpk2jE9l31NIaym+yn1+YrTqIq4cHGDX/he0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ntwm5bxgqq9zUM7XD1QCFYZGvH90j2/yONPX8nHnf1DhQyolp+CaBIfBMk9QZGDbdasetW64vqS81gYSxoFGvyCoTP3fFIx9ir8pHRbFA10fgWD3s5fvDRbA275lIVjcTv8L8BS+xweLnvH9KPsjqAS/l8ZQCOiLXI1+GAPO7KsdFwglLcxiJy5wS8r6ceK5xt8kOvMSxTnGSVJQkhLTvagu9ndmtW9Snb2yORBQH2t9VBLK7Pxxg07rqcrCpMS+kVEkXo5tHcs/2Y2+QfbBezx1uxyYSEUziKwdsClcyv1KROf/zCBj1PCOomhL2pcNGaBU6Tjvy0jtM2brvRwbJUjAXnULaLdD50yqI4PjcNFjdWb99Pm/AKYgEN9rP6vYtAr0Bqb3mfd/19ht7XDaSRDq6amLN2AE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/jHFCG7itGOmeXu5ALhKsLsaO2R41LdY3nrcXSM0q8s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ug7MN0MTwOR/R1HY/BYGFIrTE9e5WaKUAGz4uryclhj0N1yfvyYjqakbYi8G0Se5PqL04lwWP376PRx9lWNK/qlG+hJ1KUC2NnxqI3UH7F7ewrGir4I7xn/ElPIEnO3rq7zvM+6SJk791HlhxeVEO4nNTK3x5ny4tyZ4BQhOY09r7dFtqw/YiKO8tm7ETpLb5JtaHXTmHlVUpAXvBrWcvYZIZ6MuB5LN+Mpjasz7PoTDvTK61uJicvGUIDW9GrAttMCsQPje2aKDofGgoFjT+9v5UyZjn5oXHi1eFR2ir+jrO+6oNEypZirsmnQgQNX40VSvEwKqETvdgMTyImTaQKJO9eiAWvgHpXZ3Y/25Syfh2/9+O3cAQ9NaD0/PRcgvEHF58rbDYPGDkjV9h7bIv450zZ9pdX1B", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/jcNvM+ycJYeQcpCsv63Tc1fvBiubr3t3IGDQQPQTRY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3xH/upu8a2P74a/T3U3XNyteUfYxoZ3xW3pV+pW4yTvR4iEEyLY1Ex/nj/oBMKu3jGf7nZok7+/qdgb6mCJl7whk6cYNxVgSHpdD8yk1Kqg7PP1G9NehjefXQLes44ERKVxRukg1ofks+P3xv2LB1Rd8DM9CZSRnnr9E3fT/PYjK8ELvxEE+/+XDPFVbPNfwZ+1tS40LT7kKQjtO2pT9HYhIfx7y7EFijMeneNIw1Hn4u3sNTFout59d+G3krTsFnxstvMiGtbulJVILJkYoMiMugu0xF3hiRER/ABTzQEr7FG3m6r3vD0Gupigqaw4sNlIgf7cot7DhsJo2WWT6dnr5TyhMIJuByDeMxQUE885UHBZ+dVDC7fBtCKaJS71CGvrBx9VLhwWVDTmYwPfTEMBj7BOOgp3A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/mEobpm1X8mUZmAlY0HrEE3xV13END6XK+Kbl0syN9U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GZblcdrPaWqo7qxB9J2fXi1HZLloy3xAFC/yyXDiJZzflECiO1QHyHfEOf0bpdqnoV6o4g29kzEEZP1ZCUwfsONru3BSVZ3P0QntuorPE8/Od0Vf54PeNf4FzR7um3gH1SZqyMGS+3MQncGuD/LsBIDSuA0ktDtKe0M+ZcnFbdT8T7XQwa05QOKEqNifLH8sAiB1YSv/cC2rMRnqnN3zJ8nhoivm/Ld62GrCJrni+mWLQm3zEoXrR2UUSuWwkHZSFVMXsDQ8rYHI3+aw7wLjbebKWLOALP4zDfZoLuF6YiMw/3w5kslwhih7MqZFabuuZ3CThP5nBXyzJht7nTe7fqQtcrlujeRW229zqWX11G18eoQcG7mSbRzfEUdn7mI9WRx7eoEGA+Y5fhEKu5rO76WIU1o9lwSM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/mXxnewks2ApOPoHY2PRJAmLvC0SHc13K+/9TkARGdY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fFmC3TGA+Fyl57zJixLoSbtK+226cls9+Nt9m8xME6vM38P4l975t93MgPJjmTvWt+SjDswYHn3+PaaVJoN/cjPj9YABWux7McRHvBzoKxg67GckA+VI/9hZxZdTIvTmyEhZpI3m1uhKLocw9i6TK0mqgrlq7yGZSC8Z8aJX2ukwr/MyEU8vx2vK+UMDIqXN9WYqy6mZxP/DrAfj65JAloFh16JOQkNXcQLx4gVJPWczoaDs2XSasmjpwzp2HDlaIWARwmnZL8rqjlhno0itvGV5Cmh2Dy73gXFSLsknwQU3vTxsZ33paQ52TEyThBSLB6FS7GomlE8jPW/+8WM+9ipklhbEzxnpxc3mm8cZB6G18RbVoMH9HcOmGTR/ppjGQZX/Jn4VGsIQCpWBYhy8i5c9rwgiP88D", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/mbsOHFE91Qka5/sz97pUupEwBf5+DfNb4not2ctuoA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ohw6XtUV7hMGxcCX/UwVS/Wnc/T7c90/kc5v8Ml64jV/20+816Jdpk8NpIqNYDxV51f0Z37I/Po0xIli7/TMG7ziSW2Zr4hH9P25K/CC94XJLOGkAPus+E8LUKLbgUpLIOB1dI33liokVN6i50x1sJlJDlDrijzKnzqe7e3r8YcwC6gFGUaLnrRPmKSZ/ZCGP3bGd1tz7tZ3pBi+A2LQOOAxVfejs2/QWmcrtZ95wppFpMWmwGRq2GcvgpG+Q6z4nGYf4XXoHr546cIqriBMWdRYlP5QgouqmvDqTi7N7EEgW7py8FKbOU6ny5m+gd6fSSGAVVLeh6AlO40bUrhaips6QC3fOrIAwq2xbmizgmlwCSLUw8lBg8GwzC6jhlz7oZH69Up/KyN4o53pHZsX8I7UzHARb1ur", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/nwZsRdF6IjAld0T1Y6+eMz08tr9ALmb6Krtsd8gabQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "emQq2UKZ4OOO0Bv7wn9tETJM5cWI560ji4v6ZdJH/qsQMNP/2T/lkvho+3emD2v2G154VETGqBrURkFfubtDol2p17B1yKGjf9BAJw3teBC0Q2L++0N9kEU17SdFY1d21nTS6JpJuMsoNU/GUoXfH0Isy71vaNsFwqq7rVqdrPRr4uExTZIhfvBPVnybgizH62qCFJ7hSuhv537Lz2cW21dkHEN4zETJDGjYQ4fo408sKVR0/ypzCg4vLjkIBcAHmUyVfWPwDhKrwyytP6P0a1fK7lkQpAqca9ErRvGA/oW/4AdopHbsULxWVutzfRWCQIwv+lIucEsp57AWpvCo8AxtpFSCwfShrnHr5/YB0I/BRioFG/HvtKyM4+C1JwiNTDrwqjfLIQUmRKQ/vWvNZwzgiZUQI6LU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/opf4qi6DXSOZvRtODHTGlJY9iPnf+EE5RJ9qR3jSIg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VDObgYPed1UNQ0LXNl3+ez0qpFW94TJvVC4kuc24bD9uKUn7x0hCQ0y/gThiNFwp/tvGx7DxGbYl6fCK0FdUBKjqdiRK2Z3g/ptnYFh2VM5aCSRG5WzSHK9WYjznoFLWnHm/m8Dl412e/HTuqVuAY/SimS6jbfeyrwZGiBfScodE73JQmxEe3M9YjJWbLEg/N0VLH6+GB9t45bWIFanPILC9Pxpf8q2XO7dpuVmDcuY9CQfAnx0FmwocpL7XBF+E+PflBXIPj0kbiEDiyq1GhTXZU+KJvQLDDb8mICmyIi01KYkQbjGbQm0LmktkgjtrwqVIwSslZP+ejfS2z1N4v8lGgxHbXx63lFpP7AOmP6MAKP3MwrJbXwf/vbuj5hvbLH2pfMGEjvuclDGBvD6t3L+nSFp/77lz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/p2RsSh+Kuz4BZ0CkNVjnAKuuxgJtbH/vrLdXY8cSrc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9ES8ychyhOJ6GnoCWT16BuLv3+4GwPdbtSKg1HOJKVsqxQ12JCZ4eMUO59uun00rqFOznZbhwQt4ETkDvLL3XOqSjQnVXGWtzR2lyZi1OICSoU3PorZtHOEkH3t44hfMyuAoYW1crf7ZFgC/rlxp7IkePQ04vn73z82u86uolyAvHhbw5i+xVxIkpU988OwUk5oGb0Dm4KIKaTrkENAwufHOWsySEkfj/4BNuoc5zqHjeA9LL4F8n3Bz0nxy1Q00nywJ+rKB014HdEltPiSJNHdh9czl+uNX9KPh8FCtHZiV6M3ulJBaToMr+cW4iBup/zpM5zKTZZ4AL3C1ferWnmowxi0w5s9LWJJprAqhJ2mlki5hmH+2PdT3OxWfrx1hEgd0magdrrPoDc7utk3BFFAt3ZomC8IX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/poZXKYkEHnYwFL55Elv86z3u6Mx5olLU2o6OZudX64", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yfdZp3/CDoBMMcGPixHSJmB81BY7s68zGJ8de5LEcSWjUKh/n+9LxBSYDLOzQLoB7rbywX4je+SqpTtzaArFHs/hGwey9U1CvWNmGCNxUEFz+ThVY/Bjg+mqCP8fp5QPFxeHvmeU7WgHMuH6FepZDi7Hjw/YnDODiI6CloLp/bmGbS2X9G8eX/K7olTOMenxjcg+daUa1InsKb9LEe8Wm9vf3BIpDInuERqn9sadNdv5Gmyv29N0sSGYeApq2lTFnbO4u4U9J3MhxdDQ3nROHXEXknESmGyBrInck+b0v+jGWxrlHflhWtKcFv3Ihkfd1xmI19tm1IzUYwy/HXYsg3aJ0uMfvPJ/hQxUoz8zrNUNZ1LfjksRsGB55e85dpFyUt1C3T8L/0q3xgBDVWweUAGcZV7aek9x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/qT8ZYh+xyokBIofnfJX1Z7lBnUaBl42eCpUwFt6v2A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YPweve6mDpAGyx8cUhIX8OS9sqiUmy8b79nJgH9sOFtJkj9E/egqSuHXxEfCxZeyIEqNffsKPqC48QIMhTjDrIrQZJcsbazAReUfWLdDm6AGzA4rvRLSKYk0kVktPToUGihv5xvR9GV9lI3XeMrkAo9ZwRwsiJhswmqD8eRA3DV0WHGPjLkU6Nzpg7YJGFp+EQiEjH/ijwhbWSuZgO2uT55MvRtkV3BZuPseboMCx/E4ckSrEvs/7J6KWSagmaA2uT3042el4Xb6PJ1cOR47gAA53bga2/OaiYOwVGhtycz6GIHhIPS5ADYo+ahwV8e46Rg8xnAnthL4/x64ik5hfG5lwRilI/N2PAi+9gD03Bb4uUBKEMvvRbE9SmIkXOhQjyAdaW/fPYHVcTQgcZZnfNmpwxJUwrr6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/rfLPyeBAz3RMwlaUey86fTlGNJgqw/Jap+2n1D1nVA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sku29sFYmnPlem3PBZhEj/3s210r84Pq5rJlN2nIRDUllCX55OdKbjoqc+z5CVYik/ZYTaZoGpBd1Bf78zaH70TGnktWyvoWprEMgddky9OQXjQnJ5sBMfS2VvnK5fSQ1OZBfUY60IHEJscP9FUU2GQklaU4jRthfC4kHUEKx6vPRfAMScyDq26BSRbKHV3C0rLjNUzeV8TtiBfCuD0hnv5wcZbGknZ63BclGcoMLyD5n8Fe5n7wakizVD50KKbAn4S+fmap8WyX42o9UyVoKNHEfFkb2fB37HqZQjaJ82QiU2FFHpabH6JTB4nEe4KHUbiBCI9XdnwVHqVA1kD7f97VTcK9uBPGIgAACaGyu3VI25Ujs0ejBkokRyt6lHGPajFPX/gGGLuQ7CK1WxKg4kspkfz16dIw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/sWTWxfJmXhF9QzDpnYmeSszJPAkC8zmA2EnKmAnHy4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f0ZD99w3ParlAUyQx2b0fr2mtN/N9P823P1sr5EWEI24rAIs8o7n7h0IHhKf5BCwl7BYFssGAgha9ezpSWtf19fVoQdRjn4ZpQCgyPzjphRmiptBi9P4MNSdjIJjoclAKyqx6DWWmWXBIQ1qUc+1Gk1+vSwYLdwgAxzdSsD0k11h1NYbGv9B4Kv2e2kBxO1xhOqXwqeDNDSAUX0iCfQag0oczfLS3SENQfLBaGccD4wJutXysX6Kg21Iy4wXg0rYX6LT0Q07I/PWPn2O35rN3eR4RAyP+uje05pBbR405vsJv1XNNipx0oAR+L+W5Jdfcu3eXXLMPpXac+w9UIVsm1+4Yvt2F4S2W9XWwmsMe3OoDqG+5sXIeZh+1u86S3atMkXE/C9CYuHVDIdslB6Aodj3TZxcGm+9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/sgsPpDA1Q528gt9JN60aukhq/4wTg/JyrfA4YGuZno", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ig1UE59Qb0FQYlwWxGQSWxGWhV2Pg3yYHbA45oUyvdXB60QjbbE5puJ6DFTYk8CvPKKH3Pvr9VQHK0pMXGaehNm1bkQ4033LVa4SKTrUC9GiHqTPI5d3K1MsWVICciRls8vAl05ivnorxBHVToBlbcDSQeNTzumSG5UE6CwGmp/jRqhaaf/Ed89pVHdZ68thbJOlRg945q3I93wpHBEG9moHa59neyNgGB2aeRpq03OFwBsLsUy/+6qLkUZ3v6OCvW5PM0F7FahPYgwcQkciXeujcgt4hNyLIp+z8l/lSOkfp1UVcAly8RZcCDo+ZeYN9IBI16sbaJzFsu1ZXjW21JUQIQtPUKbfe0pQSFCTzeWa82JcFsYmfGmtUCoOKH0JN+F/x1lrtWV7PMo0okG7W8WnfKz2Tgbf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/svRVqFrFDdpPIa26choDAl4mbIgTp+IX5J720GTyXY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Hi9Vx4ymD6+/tkgs91lbfKQtnlZtjcpcAZ+gwy2EAQsx8p2ZgOaz2gXb46imzpAQwhVy8ft9iHHlDTZgULi18gZp3qRISoWw7dMgLp4H3uiLejmqZfMVUBluAnZQVRfObQ7VLQQTJhw9p00l0EYIcsHGdmM52RJnWWR0XFefoQE+BSlTdifHrd/I0+Em4PiQIobuaixASzFe7mfVn5QEbJxdSTICqyOR9ZWWiopK67qhzTHzkUN1l0vfioP+jZCtXnsxod4+doI3NSRB7XU7gWl77vjhJi+1M8St0tykzHb6rvxa9xzEHFEek+/bS+qZFi8RIGQahn5BKdw8pDIZFZJupVU5kkKpPO4f4qSgUrdqnRxHOrXYZZnUjbXHqlzbZnZ0R2ndoEZHXHmHRV+Q5/awD1iyDvD0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/tYK228LawvThyzoAlSfOpW/CJJYbDMDmyU1CUbIXKc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o/ob5ZZ6K0sK3bkzfP5N/iPymVz024bBESgDx8K/ty0AgyKyT+0ZhRTxx9PLDa6hT3d83hEkgD5Hhxfhc1uZEIRkE4diuBWmJmdA0qT3lJL0sIpUnV6VPD5sSR94z4guC2gjmywahhDmlwjp/O6NtxSBhUEPy+xw26LTvPiezUIUbUoGzPZTIBkO0SwyJ+0PuhI5SdSNuScLLIfxQxwn5T5xQYRub2leZCbhhbFIUCrAxm9KG6pgL7XBKNbrsypVEJjmqI/lPZn7LuAl0d1jBz681lKVMKHlckdJedwEh4qVbeYlSNV5aDoCjIeHrLV6lx2B8q7/w07ZLqEXBxl0hHkGHRwAPM/eaNeQ+0YrkGlfbQmcF5z5LRCvzjLWqcYyd9Wj5YI46jXAth6JeCr7WckU8mjTVtrC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/wueTMzXPJgCo3GzLWncogC9vnPf3lqYsLwSmas9FQo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vEqBBHei7emELHLBO2Ioj6gdERZhNDTskQHqsGh2IJ6cn/YcGL6Kgf/Jsz2gUF/oas2n5QQ4SVnOGU64NqZ9Z2En0BAyhUl6ZHwpXRspk6hg6RebbeO6H8gr/Gqid85+D5irmgRmT6SKwVu1ebLAKCNXpbNYgJfChrC95C0CASSKOB2pnTaUmj5KgF74V5h+/i9zQvUurbYitIRAV4GpeBPDVHFq0wit+sA2xFMoStbz1GSaEvENXH0EHwW2o926MSnuS8TKmow8Iy7jTff4i17chOwYxdElG6tdZfMmOF8AF1cxeuvXX3cWxgmaJZ7m9hQoKeBCXu4xkSCCHW80xaj+QZABMzm9JoAzaRI0vm2mo+LrWDYT5V+hAQEi2YNufoJrtL7rYEFMo2BVovLOPCnkXr40xLaz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "/ydmX3DKa2gfd+Yl//X6yTMd6mb6XL1mZHjoAu4X5DE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "baewJH6F/SzhyWkjJM1b1rpkDtJIeWBxrgihGG4BAjdPUakrlCObWotbymsMFeczS7x7g9hJ7JxNFuF5hFp7IddcSBnug1f76+aqlWqXbJUijHpGJV9twXwn3hTk7tIm8eR30z3N5XdyJKXsemtuVS5GryKUafVx9oY81YFsWP01hBwx3qK8r5/wYX6kbZSS57subSDDIufdpT4YISc1ja2Z13VcCih/LI/kojsZAMxP5SWpJxicTre4Biqh6ONjKFN8Wb2zKawEUWkHLx3GvMdEDohHP18+FbtKCBpkx673s4JxkdUyUNtaKceqhnfmrn9VhYWuyIAhkeqXr5ErADYaYoqfAkk9Ohhjq0++Oal+ie8PQIlRN6kdES4penk+sv+1R82DMn3evsQcD/Z6d82lfzgz7vvC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0+Syrw4b02gRtudtON9SwkkSrK0TOelwEmNXMMDYGd0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aitbBDB+krE6JLZe4uOdAPDo68CR5OcE2+Aw4IqqwTxXcJTOzqm5gvtum1J6IGXPd9hmU4uMi/Y4meZsDb8cQsQJepkL6MGCMWrT0HElmCKUvcZuciEEx9uJxGIHVoOzGSHkQxzd0C1k0+hFPiMOVk6lrTiAo+Wg+cMsgXogzrsC1M9QTBK4+PC+/1FGvQ6ipyIPd7cqPAL6Zp2qkmauUWxkVkRAltr2F1ABRmmCDTqidcHijrRaZ2Mzdy45HfL7ZS+U6ocNSnH6RFZDVl/jeDBmr6rYNLAbqX4MPrlDkPjTV1OJCMR49TY9HsueGBN/0yf56BagQzKqibIbpZ18X2C4j35ViBwuNuDV05TEHaueF8D27Dh0CLtBmOKXECRBWZFjFTMwO3DQd4fuHNy2R7PltORnyBbj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "01QLFpf2J+QrMFR9+6cA2gDtp2wVV0l3sgBqN9VY1Qo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tWq4wymAO7pDnJhN79G3+Q6JogoBj4dsxwPcjGEVRoY5cQBKOKJWy/4IVQv4E7gRNVmq08FwMHPtHiZONvLgt9t4dYKaJq1ETtS0UWwgF6NGTZrs3/pBZAl7Axv09kRelxi63cWGqGI5McUDioJ5B4C9g/Q2tBN8uZPQ5CJS4FZXe9tiP7MIpi0YuLSbDhz3HEwOu7nZ8kreP2iTRNn8eKCnO4Ax/QpggMuhpwlKwhNBgJZ9xSrbS+Pml5B+3B2LuPoa6lOQ0VIet7UcZniQ4ndjLdlhChX/uMTqLMrC9wbQms2hGhuunKEbmaLfJVLoMW9tK98NcqTcZVPVnaOO1Cl0jZJakn1nARJylujnOQM0vSMoRaX7i2Xbu0zbkYXd7a+rftT4Oy6DPFvjjz1gXh0Xq/gOtCev", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "01yS/XRFwFX34w4Gl5LMVKiIbDuPus1PoqxQg/7eoBg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1iejRIqpeicvuzqkgnqzlLjo9hctzPv3D9IHqjFZT+IKG+u8JTHwxKAjigDEjXktiDpUBz2nt8gfylAXjocNrW6jtKhGn5o3ag3hO90d2B0NFP+XgHuNhGY8k7JnTLDG3EUL7WMzgNCJy8qpdxwIyzmsZB5A7r1uVYxSOdqNUQDBAnhdRg9nldH7jQ764oD07jkPk0hVoqisnhfMRlQmMbjHQuYNpGa/jclti/CWbNHOVjizVrpTSg5c1JWOiB4pyfHZLJ6D+G4Oyq+l3SHYIuLrMft3OKCJgmXg+18jWElzt4n3FIp2MqeZ4EZavtr1KT/6Uhqd0PWwn7Aub/lfOf2jLFTW7Y/ieGrWja8xjkwcrYDqDH94UlgdXRPz0jYDqhuewyqnl1TnuqoRXjDFLyD0gfCfe5Kf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "03VQsmNmkIqAgfDiN2DLmq3Xf6J4vu+euWAiA1vCxQE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Rjj5yztzmAH2Qh/c4u3Eg7JkjuGaSU8IxEJucM7OGzDz2z+cqYRlW3Yc3IIBXVXZ6I6W7g05mkorNGspEco7/1faLGu7YVfTRrWQgrQzJxwHbscwfeoUYyQoORZ6wMFmHb4trvOnzf65bkoknh6Z0fpjwkBEKmBf2/86RFsij67334QsuBMjDdQ0lL7A6L4fiBGQpRD9ovPrnFMzVx+gag4TQDJ96iBqPyOS3kAgrMs71wj3SP1sNqSX2wiRgzkiNQr4+upBTShZUuv45wuV9X92W9piPAGIzljMjScs6TBj0ltH+6xa8PiqWmVHiOD1XPgnfqYwaIvF0pMcay30H7yWSWRQmtvwcbR0YEUAd1+gLBC9KtoMs5r1kFlgur+DH/JEoE5J6yzX7X4JsOX3YUwSRFNwxAa/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "03WWkltBCWepqE1/lRLojEtIzqsV+3h2JEfIwaR/+iw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6IMirO25mW+Mz0NK4F630CbnNox/BDTJv8Zzoae7S2cHftWaGaqZZGljhIdeeMq6m7/81XAOpH+DEVBrXV7P3ZkizMAOufJHGQrHandGvDybnFcJSTOVoDKHEKrWUNHrj10K0jRzlN68PxzuhTDUni25ZGXebuhOd0oYQgnMxe0Pb1hVbILNG4GP9VHTnJPwqPo/d6nebfXcL04Oro4MoHEBY0draflgCMq+Vitg6BPfo84asV5YzLJP/x7MhCh3fuNVaJLbmWZ9sk+B8TvvGarOSiM4CU2D+hwaqPXwV4RlO2TReAqe4z4Vn3E9b+ERDuo1bOfXoqU0mn/OCBYJNYAy83VOSpetMV0j4zZtQ2sxX6cv538mo66RzUGTO984lIMBaDO8Desyo2cdPmrhrLxigG5wIhM9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "03XCo4h7YR/0O7ziUh+OrJBYRB9dDiw5+bv0jr2QOFY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f0a1ugpFqbuGcOt0GT4m2nMaNOqN3qXG6Gz1us88m8Y6MLPjCWOB4AW9IM3l3OljBhfbVH+00NUJIx6mEyPwFnXJSXwntb/D87kLvmJ7dltqchjD3oUjsPWAPY19t+6WtvYQUccCj9bPhMsdIfR8cceTggZlnjqWkCWX9CoGSY1ba54dXLXAXsrH388xgy4gM77wqVq5p1vjFruwK+PRJc18SihyQhKM/2TVn4IVtf9RMvxlbavWS2F6MRFGyCv8rME3Te6j3EL3HBgYeH+O4rZ/AMkhS6Ca4kDVipGrVongAr4NfAJzS5k1rUJyqWudmzDZ3lOCwIZeVH0Up/1S35pDQySmOROZded3SoFeYJ9KwC8tJZMvxyj9Mdc3UztlpgU8ozK+rY/4H8nW0rK0k8feWkc+jxo2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "06A3T5gnL8fKXnRL4QR26VM24hp6245uAykSfvE3t7s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mKbfbZ2OA3+dZKf/dvHGBgT/bfCkgyzv1GOZYi3/P40R+w2zhWZOxY1daXdF3rkFFPYmdnFjqNAA6QXKzUZlXLAiJpKFBpDSlPl9MvZXa3g6qGuer+uXPRc5EdBv89LNkdcMfrsl4oowfjC7SBcpZJO3VWWBe+lwBbeiD3a0u7iq+GZ3z5FmonPLk5v6EyOgSGeYJVgFi0EHoJpIIZ3DINXMCcwW20gXHkdvobarJIVjx4bTpecxQ29E9zxwuRkt3lBN2mOmJwBwLTfpBDDAJGNuuXOvqkPmc1o2m4uqtzS/8oaQMFmbiB5pIbLoIS9wTj/I6GVaa9/Li7zZpwY95J/W8Hu/fYF853A5vJgBVR8xaaKldqodVP/MjNoD7WL6SHhnx50fpCadED2svhk+CD/2m+qHV2z0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "06u1JqZCkxB2Qrkgr7kUXjWY9VWEpbNLLvm31G8n3Fg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2teFLZX6Bzx3Zg1WwACYWsG/kXSMcqOHKciZm2IUmMDHXRiGiIvq7k/ylhBSmPuL1UjvKW2d54URUcqNLGK6dfPNSz1lsZSLCB0qkWekPTed7UtSiiy4jhxils/HzY1s9IUX+MM4qR/t8WQdf5XuduBHXZ2ySFyDKecfGJz6HOs1oggMFaLcbGtB7RmKW/KpLiFSzERjH71KvtLsYVSJU/w/f3cfh0AuGa6HehMg3dxFiECsJ1AUh6YSz43lb6bfA6JcpXALKGlotVlQeG0+GViKSMY937Kf+olInJ4UcTgeaFASa1B9yOweabUWB3vO17n9GHvYQOwrF3Gy7XAqsP/9k5Y6aFbBYvShYU3AUP6GE9fisQZBjK0jqMmWggh5XkEC4UvgKLcXeGBTJvDRTsQg9+qJGAMv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "08wG0JDe1Jjju/ETCFheAMjTUkthZdSxjbboAbzRGFM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mida118XVTsTkIoFfXgpF2uH1OaGZPeQD0hYXhli6LfpjVFjnHKnY1+FZuwiZ/QmxrmnjZF7mVlxehZCSGFF+1dUU7JCokMb0mInAJ3iuyjVGhJyZOeA6Mxs6ubhE6ksTNpYk9dHRVgsbv/fCoW5sHJZAUZ14VALP94FN2Kf0nSLXBvvf5TY3IxJXWamlf7LEwFRXNVZKP+s2djmHVJyiRtR4ESFYUxcBgmzDzfT2qgSsyNSIq2NBdmcgc/GLxVvQTF5gH6PyJ9+Lgm0I9pYU0BkuORVFItg3j7JBO/M3q1jEkVU1P00kI+agarzfOIPEuwQ2WfY4Y8ewU+bVeWJvwMQVA+C5HsS2ERacpSVoxQ8YjqdxLXczQjYq6VKJ92wJkDFQS4m8SMMGBNCh+gnY6bBkRpqO2Wx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "097IFHV67XOb6tV45d9rdTwdqFRe2IMl2/u87rhefAc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8tcO1Q83Nlk7tyckpQy3yslOGFJSQS9W85BQwyk7gTo99wqSVWvpKQjqxLZ7Vj8e8ofQRtrFFneOeYrJvP0qRUqCcWhsrgmnN/HIGSzdfSBRz7kpnhYmk+aQtGMTAJU1gIkz6XgIiqnoUc2sLK96Vce0an+K9Ej7t7mAdUHXh2TYuD7BVdG6rTq3Kqddcyjus6+mmQEyBHk3laEWlsz2CnSaER4aCtWGsk4AyMsmEceI2bbKzuW/wg/EXbIKhWnNK91Ln6cWGthCchok6oH0uLxKaRNSEjl5vHy+0T40fFFrCC5APSbEjDSikV5QU77CPGF2xYLiWTfV7Y3ApwZKMXiokDGZmay9AmD6i41+RbUoDLVfa9pGKz6NlanUCT1y3VuaBW9uhovpefmDbkvoqYP3aBlApDKf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "09Fm19017D1VDGFsv/PrYTzl9VKiEw5eBR/uIkMHIgY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o6h31Ua0zoE4hG0d2fiirpx5XwqpT3eAAxTOSBVXhBif+bfIGX79oHb/rcDKLuKm5gSdktCb8YZXesJqt2w3Rb7mc8YiCGY51SR1tBbgKAvusZcRxlkfTWeOXdVk0U/DbXkTcSvqK8NO29MKjb/UEISQXlS1jFNzv5sAa3WfHlpdqI7ABt4pOuk+w/jvL2+hB2+P6h6TR+CSE7yd5WqAoDdnXMRqvv/Rs6mY5BpRhUm3kLepyP1jCeyd7SUUXSNd24gislqowkuMCJPjKfj6BXGbDGbWuFd3U+PB88D8vI0tJ7H0AHd/RGHdmCuJw2d4Y9rfSHm18+6nLCnWgzsKRdzRmUEkyV+Yx4kOf2Uh8E8SRkkkXHrUPbywspwdVzM/48v3ts+IXJRkrlzs1uHNWNQW7GWbG+2c", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "09IvJp+qRkhgJYrNNqx0n3wJzbndiju6Dsp7rsc87UU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k3i/B3zgStcFg3K3TT/z/4RfWSI01dv7bpcMJUod3AXMyP7EzXMak/Dok0y2TychnD2mbdyjFlicr1E0iD10x5ffrh88q5UZV3ocRQE9RfXH5J7wV8CQT0SVVb6XXUOyyGJNahjKQVdqlM4LQscDsgmpkr5icMZ5bXBN0v5Wxp3Yu6u6KY/rt7toGr6VMmYeXG+k/uj4OFMdiajjN7UY8w6m5OC9Eu/9bA61Tp/9tVEWZEJJqIq3jGWRqfzmjtVwuKJ/PGHMsa41n10ZQ55fNOsyzyCXW8ITCHpr93DiLcczuikvFFEf/S6ykNG8r9rUrRlfhUljb5oZweQdZDRKAnNMFMqRvUoWXRIh43yQSrKJ/8XYnssvAOOkpRZA1NEDu0jLoYN+bFdSFgMWnr94OSvrn+vAB5SC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0AEPtTmX7AOGAw1NvrFdd5+rpsZe9qLSZ3qyA5P7afc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kLvJJCjolZKWmr4qV2oSAwHiY1nQKwAFveR+VsLbn5n0cVvCNrqO+NHkA3octfn+9GB0a0etmLa13d+AUccUsyAighHQP4PfINmAdBGfpRe1Eeo/cvW6bVIMx2KakM4qIfVpDRB4wxf+pFkadaI+Xgyo76U0HtTRTf23+xzxlzpRHW8fd0h55nAvlrDTr/lLrrP764k1gB483BA/18zmCKcd5Ock9DBHmxQgYdWIiW7nbvxPsdIH3OnqtBsFDhogAug4BXxkuYQzZ56SrsGx8g2+hS4PrGMuo4UTnftPaeyjt8O9jh1TC5deuy+63SzIi/3LcDGupFLDfoXme11CmpttYfMQANV0grT1tk0TlhIfa5OLtAcckgVghm9xh/5C9Xn+vLCn9xqOOqV+j3dx0ki19FXkmPix", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0FsKIigduq+UM0ZLJM2JCGDDY92CCbxWwpwtgpTd7rw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nykeKBXnSuG6ny0hd/zow+mCSmTGgnOwlGgoYfhio/umz2AfOUOES9JEBfFIayfp8OHLjxjb5Zz5XCFYnQiPgnpPLvLo4JZCOSxW0/7LNSLDurNw0oFbHr0sQnTG9EyLYx1C6NN9Xi5x22uRJ2a/WaY+hg1URjpsCVIM8MwLOKgRbLO180frXGCKWqpVv6pghFg89RzBlI7a5e3h7/OHY3TOuXkT2A3NI2AgZMwxOVV4vx5c++JpE7hIVgA0AWimFh/KkFLMJRsLfvZY0P7TkHFDxzNwARHzJALKvzde5CBKJjW/4gwJKccGOT/9Ue4T9E3ksc7xpMQx05J4rZlkI68pgN94dm4hhNhl+FSYCG5shoqvyzV4DyVePRgtaT2VElAtKbY6ZRQnF2ADMbpc+L5yKLf7wYRo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0GQ0utIMDjLeo81luY8sHt2qul3JxhYbd3crLGealgE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "b+9z+SkwoxJ7naG0Z1RASu0hoirMJ9o4JWJf8Uj94eMHxq9yIZU8mc3kYqEsAgLQEod4b+6aiwdZgfylAwhR1EZjVlBV0S+R4E+nyLxNby1NHk5X8EsLaTViELspTqbZdTSUBUKsqzPcJ9/o9FrRkk7V1Ms2zIk9nVFwS1cF9tgEH04GKKzWiLBrr5AxDWpsNyvG5MZNe4/NfuVJQm+EsVhX5pOxExDxdQwXO8PwTxZ7jCSbcS42HtvEaOcH159BuK2KnG9pOnVTLRVCMxdGXLYhCMfmcGnHqQaUJYatP3X49wBHj8Dr/FlKAlKkqmnBxwnwDcLUT2HTd3s+q+hy8HobOFqwg5y020YmG/OnlryyXbRrX86IjN+74ItytnzoQdO2zgVnd84Dt6XEgj1/jleYpaQ46Rz9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0HT4QAtoIWygNks24/mUbKme3SfIMRYkijJ5RWxz7ZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TSAO/fFxaoQseHmfDuOVkRJ2NyWA8m1Dcy9svgaaJYLFi+AkYz2WLH0VcWDv4wNKaVAkAR7rHnVRCEQ9nlAZvZ2DHEpNahkdar7M53FCVPXwhbV6akw6MIpVR2wT28wMbmzdJJNgjMDO9g1FbnVTpff7vJJaVAqbpjUHU446bnGEH4Fo8ezdbY9w/Sj0dza//1kTl6OXBfHeSgZ1YDm9N6F3M06VGeKL0oK/TF3IJMit1ADC/jfSh370HyWtjTRW5Q98Qm8PHAIY8MLIEG3MI9LsYvPd69LN6bpnoUup/6okM+Mz4nKjIQJeyixbuihVoasM4eHGes6Si2rhkxMnsvk/6Lx0CKMckeTxiWtqyqdvqV6PigI0oLkoqVn0SwwPDMo+Tb9y9QNV4bRCiYvufwB+Al+ocb0s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0J2Uul4hR2OSORUKv31LnFOP0YfygtBdNK1bGbrny88", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+IxTZDRMqxPkS4tPqAudvJ66G1/e2gZbtD/w8gzNGl51sI55vTs3ac8URqdY3II647q1XMmfzonK7y7Xuc1TqZuls5DaAjljVhgxcpZP9ASJK+pHYujG4GutHmqzclZX/dsI8/muozs+B+qarlo3A5GWA71QgCvRmiCb14zntSgfPTaKDlxxsHqp8808C7yE0jwxmm8MP6HtkOATdnzC7sFWBQnZfHW9sccZ3Ohz2KZM5MBAoDZ6KWHTAjs2ZIHxerIEskIkSq2usMBCjS9qrkDIHZ/c0FKtrP3zeRCv/W6MrWKPtZGshCbxt1hXtNzy7R/0xBqIL3bXp0GtlmCeXiUZGiuZSrm1QwYAKLxq+D5HL6GrFrqaEptFI/Ta2KDLl+erzUkLpNq62r7FzzPkLSalu83Bth2H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0JMt59ftNM8eOjmk5imJgwyPYE+GQAR4oGS2L9gO/Zk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "67GxSKP2HSzDyGB4qlxYI2r2c+kMdgRf5MhsyRLS0BTR8055XowhggIxMFP+U5etjW6dquUacHT91jqVeFZkpd0Gbmp9+f19VK9x30l4S8yvYyu0uiBOsDPKKSvsdB06EnufY3h8zLhlEN8R11cDC3+rJTjYf0lE1/PB3UqeimxlY+FT7v1JhNrqg3bRdX7kq5nGZxRKg1Rcwn/mfmQQFAe/aByVbS34RMQxdcbB8WPwXx2trLbN7U2YhZfl9PCtBsFNRtD3Ckyuh4Wk7GeRoaBHxec5H5/zdy69uhADeFfwrOW+asiLNsFanpa6OioAmXO+7ySzv7rbkpjd66aHlpSL6IdxojJRDOOmnYV1O2BTQLAx6U9eokfFv8kVZ4aRWFOqKG4TP1HGZx+RiAlW6SZAtKfYPIA1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0KcxqSab4tM0tdl3yA5Z6/sNCZ28Dz4Il0bbuCzRDvI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5PHGyvULczn/s/cK520fG0Di3eIOYQwu0DlDcJqcmcxR2txHjnIB2Pfz72w25gYY0eNeoMcknbLdpy/pi1ccKXHXJS0/nR2dfDgo/X5U+mh9Z9cpq0sP9tgab8cv9UgjUWfXPGAW/A0hZxT0igL1ov2aYCR3ywHVVWHzN9DIwb61nFwwRgC4tFfJbrJlJOwwiq2CJXlfOSEe65e5Eu6u9kNmiEkDjIfXL3nBC4hAKbXot4kV1/FB0FnA+glZNJxiqK9vwngp4pYz85DzgyyWROxkmki9kAUx90Reo/ocqeKTL/ERU20Et9i3B9RlXByALi3WUJSEuqE38e7Ko05+kwIVAh0+w7Q+8UQTg3nuaEQEPz9mRb4BBlA2t40a6xB+/Wb2jamLUW5atqfPgf8TSJFO51lOzghA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0LiJ2kyG8+943zxlRAerFYoUmhRatV+USBBKENNy1Q4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qWPDiP4T0Q1jhAvQWbNGlWRrX/9ibAExDvnkMDh1TA6g/qfzD8ir+E/kSUO3G+8I4slWYYGyTtCSC/xhDrmLURz0yBMPR7VZhL0bkLias63DQJMAOdhtR8Se5ugEJI0bFl2JR5zCmGmtY04tA7Lf6QE4b8/AD5K8JGFYVQw6xic8lHEzerDjVNuQ1V+5JmBM98vfmzYbW9EMt7sXC6iomFYJDg93RUfIwWewwk2BSYzLJWC0MNR6uEWyvXFJ/vB2HL9MVa0H5HbILymvI0ManYcjQEP8600Sw+TVwgjTibLsjwmjSmz2tMEPwYouOI6j8sX07ZnaRJIaDnlhPo4tnVsv03+tOM0AOss0F9bfSTsd1N8wnaoJW59Om2Bp++D7qp/+MuZFAbyQrk0XJxUZDJCeWZcB7aS3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0Mf1WuRUG1TRJVdPn0DPIYy2DPvDQK7N1ngGdMCRMYE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oHujd0CcqI9e6hJOJs1FOxTe3okudSDVTKNjlHQaqS82HfPXZwwcZV6fSRVrNfpaIHh5E+mWPuTCK7LHa6UGIdyjlPEMg9uggepLm5PTwulHut8QWkUe7ZnQtWDbui6amRJpGlgbDJ2/z/XDZhPtX9nJuWnI+0U4Nxi1yLWQw5FaVbTdJzWLito+NifazCGKzzhu4lDCDtpESMhodOVVlVhK79hFJcmo03C2RqqM8UD3rBySu0YuaUigjxnZCDPebJtGn3kWndsfvOErQKUMr13f61+VT1VZTeqT8pMEntbGfjw4XcramxG/BEM6m0ofDhKrPWJWvdKT3r8kUh/CoGk29bztpJVaYCBgFFsdXQjGOgmhrjc3tKoKxDMUKOMWx7Azpo6GwGl+yfjYOjp1w8VADAm+GMsv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0N+xU11meiP3ppDv37Dl1bOmrVtp/nw+WCvtm/z2JXE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bGoGgswIyvAb+/DwSPhB15UsrIGA9VUVqGR+dPhX6PfDNP7JM0ZRr6jEuIa6lKMa8O1Lae9hqpFxWou67mKXoWVxRvzXp+G6M7B7pLwYvcJN8hkmVqRnSlW1oTQhIRQWbgXzL1PvXs8nAzPD2bWot/qCCnqOVwh45yDuMslv62belIIv7gQ1NsdopV4lVyIPOuh1ca+yJWhmZ7QlZojHJNS//UcnyvLVIqL+YOkZoYM0H2GcyPCpt1pmNmOTVrVJ2KtCa4kgm8iS26rCur9rF0K9qvmwAE+50d0IdKCfexKze1kTECtJek54B8xoJx72Tokv1Ufsm082HqTULMAhhSf/JummjynRcOAByU5N1KkBdXpPMgujMjsUEtNwMVv2ikSulNhj8u5DEaZieWlX+XEBZprnePnU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0P/HgTcSKv2RRwFpXlAl2z0CDzXe44xA7Nyl5HtIrRg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bEnA8Mn5ZqfhegdtNcnZHoXD9/B2yR2QHpAGXdijEub1rhdpunBMIBz56eX+Uy+qIfIfGv3iRMIbZQGtLJtCgwdZa//S2hzu76JbfIXTykJrm9Pkp7svwsJbUJtCI6D99aWL3hnhhaYV+qrV+HpcgRbi/lr5JCLT45xrWE7MD7NHExuruKE2YgbHI7xz+Xs60toXxc9+t49s0+O/LRfYRpUL/n9Gi2K1A/kq1P60WFLfkRtvDBfUQ843qIQb5WvbVP9hhw5Sr5HKVvJnSM/WHepZTyRPmHJFWlvte5Guyc3MqXjIYZx0nW5udhRyCucznoj+i2gXYlNLQBRrsTs5NOlvrukEUs8lkgbfqMl6J9KBNN9ndK+PV/XnxMW/ctXeWZloFXTNpSwNKZOHB3ThNSL0IBMe755P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0PRj04aTHaV7t9zaZUyQ0hwdVKP0pcMJHemSe3DfuC0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eFE2gSBBhvY+LrJXBnKSN7vDJHV27zrARSgFkItx1oPnBCEBmRNCJchlBOZ5C2q7aHLe8lXKn064UQNwVtCFi0HpYn2SEMbHcWPfY88m2dYrZFhUGG14FilE2YoqZdwjad3tMkYnd/SMeK3qN6aFLlXMx687WzS9thKbW8CLxiDQ0Go7YUbg9jbMRKHraIOt7Ayz8gs1zlXws6ovIaqvcdCzQ98kogrimnzZW31KmgrA8jxB0zh04lb1foAJlh3jhQwEGRukjTrF62RUXi5cYtzdAIZzzzbAR15ZxGxxi7Q40NBwbMygdnONPBm8SOgWKYU/OlEN/zkCLHqQ2UpdzQ29lTGk2Ft9Rye9l1LzcwLVCfWG7OrpJ/qNzZngKWbjC3A0yJjm093EvgJio/cF+e4GGZmkR8Gc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0QI53x9aJYgrDhcfQMsE+VhDOHlYBg642YsOxoezmNc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0zRE0yZbiCQW3U/BtdnHVZjpuMYhXTuBjY6EYK87YSMa8PAtvHHJD/pMvyF6rsoE0KAI4mLOUeyjzyLcQi9vvIeePVihbB4HUGzfkFaGdnI0NkQrJ4Ugosk093ivLcW7BBVzly7Og49xSu57Eyhztoq6G47yYHJoPdV2ZyFq7Yv89S+af9MfbDRlomBTx9lyZWkq94RnRxFFBZShcGFg2u5Hvb1D2C+TBCBjt6eUTvR7+Y69OFRzlIn1KXw8chQqdZrWMU+zNsMb/Im3NicdqoRs+On9ev4njUFLOfpyIyvhG9ap5wRpEgt/7X1dPHxyPWsKgHz/i9it8qkfvWWPLMSgDa5+eKq1yaPQNuzwq3iHSBuYmPYc32jBNpdZDaJcptRDwDmJdO9/rLAaKgIXDRA9/56VQpVO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0QcxYJWJot8b5RAB5veqoRsi+JElYVJd1MysRpqXulk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "szt5lJaJQxGquMvogiGuetSlQJ55mFZZwsv06Mf0RBaP5p6uKrfHNOYhqYOVcgKFWBLqCavHbhzbwMu71yT02Qwxswe2nn0IRNgshs4tDmGZpU22Qhsk28bihk9JN+i9oVYSGoEB8caEZ59uDbxl5PXQvv+usNScYqA3C86n/xs5brN+q8+fvj2sTVQDyQpP3HuiQT2Cpi7LyITlSczqnfB0mBK6FQlT/NUcb09N725d8izG+uCA8j6616bZ2vXjIVG/IxbSaVaHyttKDxYVSFKfyvUd/nYnjOYk2QZgrgDhx9K6hdchoXFDmnxxejdwZHjOnYcExOu7W2uUptvDKnySWJW6MhaJiig2vOZ4QWI7cNWK7+tXi8SyTTm6mEUbLdmfQrwg3Ra2FEzHfRFojZ/3Jg/ZCaed", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0QphOQbn1f6kYUS0F+n6Qt9Wzq7mSbxXxO6jxJYI1qY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uEtB2NneYhyBHvkOvsQ5QYllel5zZbdJ7U1NUYoU2OpZM9V5a8+vB4MTnBEeoNhuJwuvYCCuuhwTCgwZGdvbume9m2hbfIBDyzdT37JO2MM6GQle/ZrLiS/lBCUum1ql+3pYmPKr113OmkrJ8FP5BN8hLYHI3q2FRxpXAgVAcXNWU79Z5izw21yxPTJTG0t8781z06tlWK4tU/ZQy27pYbTTnEpujO1pmQj+nYuJ1eonBM8AyK8Yao1e9mvqa9siewntdFfr8ozxcVYw1jD0aRtudsObqIeiQ4an4Pk+/EsVJYD9Pr05P07FUG9so79XBAFMmFuamdfWfNFi83n0rOWHV8SnYhGj/RKfIdEawMdqOx5Bb+Q9HfPXIk1IL6sI1qdhFyvNw4tOHf2pcaAQQulzZmdjt4K7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0RtOvbmEkv15Q0OPzWflqTsnK7QXPHY65l6sDKF24Xc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f0OGQ76wvm6VYhm1/WgK5d4alyW7xQv2E8M6ym5HeKCVFkeaDhlzLgfzcAoFypfddb5y7rYdp4yoL9pAND6kGFwMsfNna7Sd1YOL8pyGhUoJzgnOr7o/H44x7MyT5omijX9Zg/uZcR5Vb/zzr3jUwWeTYYbrN1mLin+gpQpNzLIVQfxAol6QxYhQgklmtBHRStgI4ALJ/A3oojMEx2mb649g+Gm1x0CSUGFVdEz31LbmtqbU4oYaSjx/n+CZeWp2ym+HafNT0SbiJYDpBaGMzIutqev+Y4g1+DbFJhvq5JEJ28+5UNN1cN5QG1wpvYSCuKFP+PPz2NEviKhmEV1def3S469c88A3GKaaLn+kXgHlbGI02Z8HBkg3nokP/eLnngz6v8tviI+trwSe48do1wKdEr4nMoZw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0SaUMTbqxmox29Co5J3hv8uLad5RNpgNpwqFnn1PTAo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XJZCvpa49HC9mdd4zAfcrRBWsXYBBDMQxiMIpwtGObouxCNLql6SA/23pK6JikMw6T+5fzScqAeYFUHc7fFefQZtkp2EXw1EIiGksY95rcibCjKC/dY75NHA62hGqyX2jBZYU3dyO+ZNTr8r61TEfL4OCYRCCkxcjgIEJZlb1b4cKLhB52w4bLWb2QPDqIYlQLeW9UE4cyYDvtTp452b6PgDm4nZay5P6G3/VF/RynVcTOJM2YU7m0dd8i/5ujabaIUb8rrz7cRoAPSPlMDps+rEEPH1lGg0L/+w6qrrK1X8bbWOS85IZCM4PWZEYd5mPxzOcUq9Bnh90Ti0ApmuqprUy6IqhRjy35bRRjes5iDxNd5lVZCz+X9zK6uOlNXSYmLkP6Orqhfqke6cPZAytTC0UeqwYjKQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0SfI6fOlC822lEzcjnfGHah5vXL08m2nlF0pZWLu7Ms", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YSuksH8tK2svNwERVDNhxMC3FxurUAjPTOGQEAFKxce2mdGe5NU+OsMn20FNwMotjYiFWHzLnNJ8dg9MA43Qi/+NKcq25krfZ0QIyPfm88qGrEMyQUdOeJYG2cLiRoHb7eUVDPVjXCF75dIN2la0hzUIV9uRIvmx4DjuGbjRcEQ6puYjy1wLRmFNsH6FjYdbXqsQzr/3asMDjAW79mnmdUiq+uFl4pT7ZzxnLZmmevgjwJj8i0jQH0K6u2+6wTHcEdlt6H1MA6x8z7nPKlQSWX3qb8YO6ofeH83y/k5xuMDLopvcBOiqCht4ePQHdwRI47HlppRiQabwTqA6YFgi3wNRRzranIp11Joe3Ugj51uxsmP/cSKFrFc7CmyPZS5KOJCTEknPIk7huFI7NOQGrPiCCgQHsvvK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0SnQRiUr9yFC2gFMKUJf3IIQUMlwGfkut7qrTU/xlgw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3FAHvJgj24mqZ1nzabE6+QU0mILgFRnFWlGj50iQKkV73JiDHja3Dpai0IghM9ifNau6YorNcFktJpLMEY7ibdJgxaGQrsL/Y9CY0GLgsxtPH/ENBln96JbhaVp5QUkX+O/EGZI58g9vvMa2Td/706lSU8w7nu/2THZ4Id/R06NVSWnDU9ThsQeILPuKE88aosbjtiMl9OwEzbbsG54a6zKOGBn47KEzF2VBHSL1EWG8xC9obOl2r2HS1CEaUTYCvaIaXCIVauIDQiay6B6n7Tfe+Vx3iCNcM5CDO757/5ZhwEKTaDDjGgnBSYt/AcL97JXcAYaeG3hcMtXyB0xXRGVdmOckKA5WvDUZvly8Ctc4Pxsbj1EJC6ENpzhSyuj4CJTpi61bH6FaO8KuMrLV9rFp/y8HI26Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0THXrxITcZO5lSNQEja8e9Jy+/FQm3xBnGAsTSYyxAQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TGJpthGc1s2G4o6rvwQqg1NrO9K9eiG+GChaa9BdevlXZmbV5oe+ispye26xBO5lmTZ1swlEAmWnXWggMjNkzWhj82WeqZVD+7JIHxaP4Zit7841CgbDiJPSkIlAguwuBS3HfRTLYy6YxXT1XyVQNcArUSpnKNpq/Pst+3YNpTXhw2trefXXpYNr0rAP8Yhs6d01yR+W8vb/DufvTAjrrAn6cd8O/l7DXPyyhbs+UL5fKbNS1Dv2ETsRSbCsjUGsogSzp7bqe5EO0ZBQpYroeHIhBLDcVZqzhXltauryzGqI4BV+7fnqForRkrgMQ4DeytAXgyNTzuat1dopKFDk55KOnJhUTbOXmQvZDQ7rydfCN1ArNRwt4uq6kA+kwWFI77rvCkSlpX+AkafIiuj2XU5CJTxTKCWD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0V+6xqO5C7Q+DjSTRC9oU7QAZbfEQO+IJakAxKoY5dE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qIs0ImVy9oNRefmPKCJbrWG7oqH3EnzXHZiK5VRvYnXD6dssl0/8hlcILr+//RFOCZv/y6iIx5OCNGdle6TfyXi1JJM9FXtPuqild7YXvMJ8/CUg6id9DZJHqupsqvHt0Z3okElMLqidXx4V6/J7XT1LOGlnD1bLaGtYfcO9oBB/CFcCHsoYvAfj7O/IEH7KxPuD0ahzmSFHCQ6EUexephXW86wIRjag1lbwoEVVsYQGE58tpADDJBp7eC50ztZJPNpzn77JGvpH+rdmrQvQqVaiqSUmpzXbiykFh4Gob9Wg/tEvjh5pPwvpeECtN3yT/DN9Qr4TfrPKz/d6f10eYsOwmlW/T7XxhAvrFz3TAZFh99BDsBAuPDcmOemlz22vsHruOKtpuY9+Dj5mvzMIKGnRlhsdjkUi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0VCsphBOrraf1tRULyKz8CGdjO1XXaas+gpU7qZM03g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Kc8vNYhEHpCvEMsRNFOmTS2PMb43m9k2LWTCpXaFKg3vZ54aguAZAm7HJJFpREVgYMqCAUqhcua0I+77TLg6wAshFGOISDfkSoDFi32mHF4gle4t6sMLUXIboc4moID00R8mBhDVTHpCinOBOlUjhci4cGq4CAgdY0v7/ABUQYJdsq66xuL0DuycFx5m+A0c0UIJiipDEbUYGIooEYbF1R0yNOjholFEkl+tV8y7y44HhZImzkSk7KRNNb1inOiJa1i4nHfnAdmcVWDhN6YS0cdHN/70BeId30MUrbpyO3HAr7fBEnqjfJGv97KZ/pHOl8Ss/CovOMRIzt6g5H6yEvM69zlo/n6mfLaqp8YTo2w3dgER/g7QsBcGCU6LEsl3JGEaQ+3WIfByx6cfFp8O0d6y6zvzTZhC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0WP4AUddF2MOP3LAGZ0vLSg8vROf2NSQ5c6yFvqhyys", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CoYESCJcVqGqXKbJmEaWXo/mO+AJL3FilN5LY+LsGc+2Pf31EfkIkCAn2wz0+8DWRobMoj4N6FlGP3qdxQSSxzE+Rc+in+X6/ncvyF0pAlyaFJ2bla2c7/COEuQaZD7MJ5zuE1OwIaSR/ehbDlYoHeUZ0acLV63l1zZEpoU90cjRUmOrQPuZGJRiuME83mvwk+9Z5DtZUZu549GesAd4ObGB/6eYf/CMS/Z/ol1EDcYx7ttdYSaeajiFPvaoBogrxTXf3SM5zt+14PMESuObGDWYg260vrusvuGR1P/aOKONB5ZwXy8uid4ZoDyECGmej/g+7DD4qoE/TAd7+qo2blYP8/jD3fV5CLuj10s4pepStYjRGtM4wc8veppfYr03THAI1ns8mUhMYmxEQgezn9wE7alAO7QS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0YQN9YLJhYCNCHtAypOJ7TeV2fQoCC83FPzgeb5ET+E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0r9QjIpWKEAW51be4fzTpE12lcaB/ANveknOyIF6MQqJycSXKS8+Mu3AapdgHDpI91509LtG9ySNkZCaekIR0Ez92ELcIi9viN1dEKYRB6jyXNiK7OS4f/Ju9g1YKRP9setnkhqEGtxL+/8jmTz5yxd6cRMGvVWgtwv2O6BMI6kZ0FRSh6vNMBaYE84tZ8hmtRhcvVm+01FhafrTae8EvXIsfijIqfzPGWeHl5BdzMyDd7qv7JReevsJ1bLYbJwm3sA6ngiNUTZ/ltZ4JT2AIclevwxneVzcEuvIb7MKsRFg4fYaAy4qCMRsxIuQHU9BRdSLSmV7PHeS3dU0F/xnr897heX05Px8tpy0qjVhOtLT8sXF+3Nlt7qbiXmHgwAQ3Rpg6X6+H4IquNUpCvegOWCj7bc+9RxJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0YXOGQXhjCWh0yDFySb8bn9GrBlyARc5VhyBDu5DNJg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/LkVk1qwmwqvRKFDkiaCTFYJIIkgFwb3he6LDp8QJ63AYE4Gj3WgUgnRyNhTG+swOHG4TUNwRURD36HDynL4F72nDgFKE91Lf/klFc608+cVeDgrjhB1Leo1dKv0kfWRbnSduK87rYDCEMPEZjD+SYYj27RFOP3JuerRjssIZEl1RWBTYgwMR/DdI7/KwiW9cjfcvw1gdEy8MgyZb8Ou/B6C1a2VEDOmB4c5X7XBCKSBerGt6ZloZJNCggJc8sjB4zy9kqComLPeDvB6w5TndQl/l2mhImDWE8J98f8IEOhEdwsN1rFmBgLlhydqPh44UAfTvmpxJoCrTfwAnWzYIyv64odD+vaLvMPjnQRqVZNh9QxXYzUSCkuusxDAmgD8QVIsQjmFvWKAXob/Iqn0zULwe4bqN5co", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0aRfCZqQN2lrdV0yP2AnlLwMEoQXE9IquXxoTGuGSqw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ev/nJ3T2FA7KXxwVCJf1WiwJykvrTTBnV33L/Q+DLuobaLKMrkYZFzx8V+vhjmLcTePiXss38Z1kL//ZSHG7N0uVXxmr++EZEX0M4lV4L/jvjXj1C+h+Hnh7msuR51asXKv43H+uAmGFUGO81RHI7s0cf2E6ahqOStzqd+7FhbB982vcHjPJh98M2IBh1HyExnCbbNIvI/m0DBy/WYktW0L/Kp/Wr2q9ZbCyX5GjwAKIzRcqUaDfTGZEOyssEHGPyrDzyD73wfsHdnjBGSe7ghBEmN+relGmUWjNucT5o1YANPh77pg9xf2q6uUFYVJv71YR7lYIuO5jSMMZaDFElCp9KDHsQiIpaT14g4qZFdAOmEJV6Icl9O3Sb3Eizrccfc9aGwY7gQVwXyRxsChrtm14JztqG3DY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0atcum0i4QNtLACAsw0FVBIpuWF1ECziyzL7ZSb0jaI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i+6zb6Dcosj99PCk8TS3wPgskDXI2zt9g25SbgyYrIPMmIPdn8gmeQWPOmz2C89haEsXaa08keDJ+2FhGvcr6wcjwQ1N/tVn+NYD3/BoNk9HEAgMvSWGQ/+xxyBUtxbtvWCkIRxD4zV6qIbbsIb5GQKaOW6Y+9qIHhBPq/3w9EzImHusxE32jIGg3rHbK3tiqtwREuseQCHWDLJ0Y9Gg3Uv9j3IkeHXYsI969CmN4iYo4H8COMxqsF82HHddjeewosChY+FO8SJkpqwEK/nziXcRo+Y0rxOZ3WP8Sms6tNlppGlm9oEdgIYbDVhN7cpBZQI2+Te4MwI/rzwUJ8/4bO2gFdYpyYRiL3Hmlewaq4qYNcBlEhBvaHFieMER/WjaF8sL50JAYbwI79YENm971y2hS+4meHKh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0bYx+1x7Nv/dmT324EO3JRLWEMO72BxIiojXgCeSN5Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8a6XV5TuM6p4ULlITLKd2WEy5TaHdn37A87qvhWhwu+A8z8AtBdkPXmzTwUk8W2PPlL6hqkESyf4Dj79y+tuxcKrSk89SaWcSWDJcIKMTBwpW0U1+aDx+AlTjII+2Qa8YdZee6DEaoMRL7hGoE/ldGEnk8dvLC/ySTJJSaHLmthWxhzWOQ8+DYvrJCyjWJf/coWrmUvhEfyJZpxWQQL1wFKtu5oxKC3C3Du7mEBeeaOCo9iMy3He1hNAybQ+exM592nD1zOsIpeXLo7UqF2a+rZpt2Je+lGd4hwfbEzA7Qwi00Cmiq9lHdvQbmb/1Z+bOQ79OmMppnMJaNUVO93D2p8DaBRMEo+Dg62qyCkl5OR1d5Q4FmWtB4sztk1rxy6paX7wiGqsRnde/FMPcCltWZszX9PIhG5m", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0dHa7Qf0ADJt54wGxt5k6Qq3t+PGIfMLiP+d44+nXmA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aHYn69TPF+X+7B/b1iu1iBqCNXfLidfG2aHIm7BRzpi07SLcTnIbrUvXsSChiMWD4nclHV/ATAiSCYlTR+NtMO/uTkkbvCWBeeyOwCHsnZaKFZJ/I3HJHS1r7YEtg8mQ5V7V7K5djPxantTYfxD/0JXNc3ANpDbRP9oO9e1LfQ1nEcSC8RMnz1W7wyR7TtYmAU4ecVNiLanjd2bLAGCdRNmNk34H/xYTfFsvu6N/MzP/MvSSpi1STWeNdeTxFQV34bIvgiSsTVLHhozI6XadRS/vBXEJm7F7WB1/jgYjshJQ4UUm7n5475Ik4ow2VkP9KxXRFb1MGOobVkRJohr8f/AeIn8jZIDb7IyL++/mohiPWbnyg+wtfvGLsdm4jh9HdNIs+75RoAqsZhL43TA2FS/jVu9PGqvf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0dVPkkGFs6hVl5MRDTIorBHp+sakwBKWxToagSEwfSU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bXo7uw0XK6mc+/uZWm7Aip7qKFJEfOCZ7T+TBcut/ySg9PDpT0lWLSoFIeloCigdfqXZzJ5NS1A59wOGtEuWwx4KBHBzIynTATmSwo3ZhuZs2jLVQa4o0eR6P3reL+Hb2Ets+ypiy6oa09FgimUki1QuyGRUvEDdPM8Fcb6ORjKlduKjuYoII1Ud0M3SUDVjcBsnIs/HV8rO74vtVOrc34tOmMSiZ1Ah4TWQQyqToTEA4UCenhSU6QMud5Xh+4NIqLdVhwYJ1l9ijqq8ir9p/NnjGOFPCjQ5I8FtVtBxy3N3UAzrFBfty2OvrzN4UC9Pt/aQq24mkATmvln7gezxiKIdmL/P9qjlHqiu793vlZ2M1lMCtzSvxXCPjIZoSnMBCRPcp1VjTkQ0xexD1x2t45z1AlN4oN4U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0df/yyHTfFBufJskZlB1N79gD8JMfgl2Zhyo+qBeZB0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UbHuYoVvaEbVtSObHr+uxcvkblnZ2bhxSyT0x91bFkeD6ueR2TJplzpWb32MkuBUZeAYqJSR+F2++CEsReld4id+N/mf7uyG/SRvX1BSGke8mAjNh20RUJzVnLksaO7YmWuz81tf76XcdVugBEACFRMmV9+QL8siyouauDlb0ezBjzkOUTunUkWQIVMMsCw00XmyVliZwswbp1tYjx+LOItqkR8sZ/9i97zRnER86SY3jmAN0sVn6KlmMRQ0zwaZHbUpsx7QTa4at9hg+tNu9I459swz03tXeTD7FvS2KWPDNGu8NXexUb6B6MWi5FfgbRjeA1YvZvfDevnKsJbdY2G8IbFsoc6fqJcCEz4N7K0xSbdMpuJXc+hZSeAM1SnfBM2h2XmIm1yw0QoPLoQtdg2Zbc9Ku2MS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0drOJlzYqPExxDUx7iMvuH11jm6qVkRWfMOgSO/NWSs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qNcF4ZkWmcp9dWRASH9CAZ1eE9ichWfTZoIN1wcDHUI+EWvzYo+2yBQiZpo/itYN8aRtQNHdW6zIHh+l6ki8aFtAtBQG9I9jZO3y5PiVbrAfkn8BRfA/I51bnomBodytoWt5qyyPSMkpGonFFIgHmFAJ2cm9lE+y3yFNIgaaFLjqabdC2I05KTzDibdp7X/2EQhGs11JPblWT/SuBZ50AYFkI37RXIDK6pEXVJ5D5JUTwd4jgFFKL31Fe0HPHf7YMSmelxsh07uGZRV19ZfwNvedbIz2rSXtFMULiH0rrTbvEbD7ltCyHIacjzLhmaRuSjli4iVPsVy/RMJbAl6LJJNvkf/ikYRCSToKjPojEMwYaSAcNOYN6IgIOutVKud7iU6ZfV1hfPp+rQpIrLO5VofVABXeHeIV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0e1cBu+FWWqRdI0fEmmbbb02bO8rwb9ZWUYEoCgTtzg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bYkwJOy/Wm1Ydqv+aiyOuq/nKysyHT7g1QzYWUc9jQ1nt9etK7i3U9o0xtUmirNcA+4dQMf6QBjy/g1Af2bOjQeTKxeHYkSh4Co1YPuzZfHRwW/6vJ/pgaLyGg7FkjOc7KKjhWcucbIHmCe8WDtDa+sumRlBH0VoVlxBbvh2hhvERJPyg89M/cxKLXA0gxxEIGat6MjqHhH4H9759ktAHF3GPiy1qgfMyj9TywhJdCLvqYkZlRSC/BkppiEEGK6+EbsSlcFY8xUFiqVxjCCB01Y0HnSHEEAusNOMGPstjdzsgQqOyWkww5ZalteG3Ucm0fRj7sKqpm9D+xrJKXTeCcWBbJB5CluiUqE1Th6hNQS5XEGcOwNJgFkHul8hWA0/OHLVeDoj0eDfTza+MpPWl9Vra4hjYaGy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0eWbD8p0OCjoSNb+yJsseLY0jttxIKh5+0HWa71KeAs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WAo3ucIn+TEUAILUN663La73co8mVRdqWN3lUibVteEV7At7Qaalopxqx6Jo0qNUTxLUndlRPq8koqSXgR9KbokRkBox2K2hnM9O6wVjs4uCNFbg5M8e1688mLZJzzYxf1GLNDfi7wN2sqKYEtgvcD0B4SsAksdo7fgSTKS3eU46F8vrLwrr+6xPHvj9Ge67iwUgLM+VQOJE5/ks+CsnnMMI9UIZI1U6pn5zkX4MRLXx18SUlwA88Z7j/rSICa8mcS6WydNfEDmCIiN3Qs8us5LrI9DWriCbAzxlE3+hMNb8nhKyNvM2rAhSTykB4lbtZk0oiFbt6hQl0fe8Z/2dwKaqDCWm7ZMaEpNotYI3DcMphO1NHu8nLR5JYNwsJtuLEPkYBQ4m9RAiKUmUX5hZCFkphg1tUyoY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0fbUMdUxg8AgpfL659qHcuoF0ekOVogIw4VYGvsSKt4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eqVDzZ9qGCn2+/bme43btujqP40T/k0iaWJ5T4JcikW/doab0zVKc5Acwcyvg58KE8KVom+YyRetZIgi3LFQ+iJcNuqq9n3P8gAElVyJUdsWpyvBuOiJMY+q0hruqXE7ZdP/ZXVK9xEXvEovltfHaoWA99IcbJXApcXkdEamOld38wH5AV/2VV3OfWGKTYALwNjhcq9ncVdEC0qcO5yuB+amDeFDqLiCpE3XYNMX69/J8jYX23R29XfxlgBTAkrX/AXmppm7ZwTF1sVScnki6d/1shXiZ5UQ+8Y+m1dLWldclSBbBy2/P5ncd1Y7dE8XUAzx6goJGJ5LkQvvXFiFBUByodBJCOxA7S0nNudPWsArrlKGsv/jijVeqLwk8GRdyiqhUZj7z3Eaj+LG6IkPt0TyDUqCxWjj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0gjIt4unMR2RC55DWfL9NfNc75oWPKnZn/IYRX1MkFQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rExyEVxtOH/c8SSilzb5Dg4mV/4cQCXN+7Yb8X+apJGGdIO51nZxnTpxq2P9I1uyiDqUpDZSsBjw/dr0pXADLRgm5KgJLKNMCW+0HKVBp5aELQAhYwuRuvLustx/z4hapD6NzZOQbjicI4Bg2wgt4sFakwXxazcHYG7grf7JiileOaXaqSqk2QBpgm0Me/FfvjQ3IGH0RsTX6am2nhiN6ceAEM5rQqvaNSgyirdc89DvemCV2MYbuPyPXKmnpFVm5XVhnbaJQkPxnQjX74/eUddw1juJnevPLalFDe4f5ewGPjtNaHkHJ1as2hnJI+HTt9a3cXbySkz3mltNsbkT6t4xDnosKSNCA2+826s7f/QvkEQGyyhOnWxBJJaXegxhlEM0zLuB/TzZskinLq2n5s6q3m1nbpc9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0gjKUqoHc4Xr6mLEDbbXWe1HusezDVbf+Ng7qUDgEok", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6W7l8gvh3+W8X2LtH5pn9FHWZmQp6zWCWiTmqichvIT69A8DBdd3Ltgey9bcz8olTnBQWD6VjN03n8QdBd3g9I4/QNDSVmwrF43UF96UmDmBOGcQ+0BCSm51jcFN4LLzlkwyVIuqY7H6Q7B28bXXOZqTQfbju3I0QUsM3s/V+aazogEnDb8sgbJgEKGNzL5/MgaWIMvPAv7D9Ij4CovEdG6ZTtjwcyOvgg/5iTwplrFwT0cj7HnqkUhAUOl1j9ghrw3UaoCwrO/V/dsVmgb5iNufz0zFctv21BF12uOHqz3HgSxV+9w4iKIEFuG4fDkQ0Va5acHci2ae5g4Y4iHcX108pbG3pLkBR8cFHf/cFUv++box9SqMDeuwyErRSx1yj6nBGkX4FNzgy7vaP6BGW9dvY7QSQNv3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0iow3A239tw1HuilDNObA6uTUTEiVaf16+Bk4vqTn7E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UqoPzNiaM0rofx2uVBIF/sbE6J2ojX9aL5sDjAcse68KGpiA/aGA5p009h0qqms1RRw49Xtog1RrAgR9B3e0GwjhF0VQ+vAU+Hu1LlUokAlYNCLZ0EQMo8y32SAbzIa4QudInvISVK0ybGBUXvKAY8kWjSp+yjuBBC7COBuH8hQln1kxUYOSK51IQfphuaubHDC10DKm/i+N7Zypf3Y2QSm1SJr8ieVqTFC71goj6gXNUUczzC4m9aOhoeQyfzAzMn/2WgS3kyPP7eKSVE853q3TG3bjEVeZ0znVCmThPCGehhMDaHKYeqREEh0SU86l7SLbz1fntXvlHQGhiOJ/F7t7TH7BdbvWW1JlVhNF4OcpLJ3e2I9p+mWkYZe7vJ9q5fG9m0sj0GQ5egSbk7uBHDjzCzkBODcl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0k0ueq4sH2LbsrGnk8ENam6uHVYDRWzGUTWqa7/t7WI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NHuE7SWuvR14q5/mOjZ6J2TfSOAppvKgy6X01uLumQ3xRbpWG58Z3p6fTyvmuOnJe+J2JKk5yOWA6dgp268b3RFi/OG6TEZS3pd7CdWgZU5eGTSTVm5h5t8OfHj2fon/SnLvRYO1uXupixIddK4fdHyUISb9ZF9rGKDas26/b+ktAGgC7jXODDSMRtfY6BmFwxkG1gBZEr6+nmE2VVcPn/IZo3NBHxgJJwLRVSV6h2d9V5SIi7r/iPZTzYe7F8t0o9DSXdESE8Zuq/9xlXIpujFsO4FgQh+H/vlFAb1NBzNx/aqCnqmyqz06LTAujOxgm4d3dGlmWAfyx9jy5L6aEYaBq6Wtnadl6ln0N5D9mPRe9csJ0mQx9F3PmRdsSAgILBB8lxmg6DCJ7Nl1rlE8+9DIT5y9MBSC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0lfxqLUVHMzybAaWKPZXAfzyjoOFoylk9aQC6puJnLM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wTCVYqbpRdLGE6QMJYuOsTecFrI4HkP8uIsgezV0Tsi7W91kqxAzTrxvw5voRg2oUv3A1mhayZidzbIu5mHb/sGFqyJsSqlfNN+s4alQPL4hTeOhdGFzCKlC1gJ8kiqQbQgixSQ+mp6GU606+9LGna+/VOlriyXbkr+YK8Gvj5S6IvCeXrXdPbFR+itmWPuO1cNElJ1LFkWTg9oYGw1PJNlJlHsC9bxLQSQX0jKmii3V6USaZgQHBkElZw8HGtnyas1zad98SEOgaomygyFSHWrLTU90iTW+1xj0belG0+xurEIZQ+7vOjlyTAY1JM7/Ir2ZzRBvoh/hvToy0vMnQ+l8LGDiWud3WBrEYI8hsXE/kfnS0gQFRTUqDZ+17cVJ0X7KRFOyEwQC8Uqwtrjs5/fePZlLuO94", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0mC/0gyGLLHqgnftkLLONuqo89N2NOw5zHlwWNZ8PlU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X1rCXXVcXoE6ncYjgdt3VfKyb7eipKKTCIdS3Ua9OdFpuIKXB5QWcTYPiZ9FZHlS9Csh5dz9MRFyijvFqzcJcJbipNmwAjU9k8C1vbRJ3MeFzg/sFV4R05vtjUXcQOyQ/kAzUwlcaFs8zMHCkiKD+9IkdbVmDYyoP8BsMd1xp4YZQxlxnO0NqHQMEtTant8mWB27Is2uyNu2VZ23GAjXhEg+0WURd1n1XaMiaf8lh9r+ccWj2pCyOq/eifj951/9oADb1N31fcXxiYAtDKi9rzuNtW2mPNg2aHA1jGsCExDYAJX+LDgauYdatmIm8l+ZwJKnIQ+ld/u9cpuE6/BsfkKqxPD9J9gnhGUhTHnZh4v1npZ2vhLaz+CAxNjxCnOZBFghQku7AiZrrBXqCS9oaLZ3LnCA/oeZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0mSEdkhznufp2ol1ux8DoPVFDFgijdOQXpVjZWDrqQI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S94g52jDgdZ5EqOBKeglvfXa7KdhwmOb0YerW/lP7Oq8rvdxbo/BmuEeKJoUd/2AecIKbjauIoWPjpdnfx1PH/Bu8ecz+ecc9PmlkKAKUn1rvmgGHLtEN2FKrRxF5szQ9/UXv5GOLQ6lWMoXBwUCfpNwOenpCY6y9GeE+4mnDpF6P+5AhAE7yh3S+uOiyrOhnf/FKfRZAcvN1Hh7AIUXGJnsGU3GUwUo+dMUBKZi5ZCdD4aD03gIX7/SKoSoMy0H5amBI3AFNXQfH2HNBTOIw9nqBki6AfJrGa2vbW0RPgqAT4kfKa4SBAyRsOKP2WS5j9otLTmvIUB4Vv+wSLilW0xU5gDQMcaJ8NdH1zyXJ2FiYG3Q2nMELkBv9PYWRZNyUAeALV4eHOMr9IttA/CcSoDNT7lTHA/X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0osmX7mGYMSZSt+Tsevcuh5OKlg//GPdEwQgx0eQFC8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e1YWl8P1ndySQgHYtJ/YyOiBSrtCXPeUtvaZZ0g/Avhh2HeM/bFPfR1ho0a9NNG9mTlhh+G2TSkfjAixSRyGpyeXFjc1Y+PQ/+t62o95TFymcrGs0CiUL3JdWXrSgan7hI9Iw6a4EIHnDc/c0QtLDytcvN+2iaeZJziMxptcm+9557SpA9jvunDWAF2LSOFXPXJqbp51KC1Ml2YUhYOs75Eb+rqRfqmrGh00r+MIFZ9m74WGURGVy0beYbcXjEGfWkQEy4pUFScMVLnT1+AkL1+2ChlAF+RZ1funK+q7GlhoF8buUqZZT0i6KekZpyRD0A1CX1MEMgTr29xJTx9bwXI4j2GpJd0e0tVj64dVEPwewBEaJWL2ntBhhPJYpAlPRb6gksMiiKPWrWbFD0YMWrR1Uvl+yxQK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0pqXKq1q2+OrlU2ikVkuKz+ayN+TUyrmd6LTG06GZjg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DrQnPyBzMEZdO/TgNe8S+c+dXoUR54iKoxnC2j48WniuyWpWKxy+8l/zZd4cf8PxL40LDeZ/Z4q5mpN3DOMit3PWrbeCWhZvYC48adYzTisM63upuCRveXwog67ZdV+XXUGeRn2WO7PnAM8/wREwKvzGbSXGj2nL09s+29dOk5oAZgA/z3YptmkWnRQaZxgYiXequ1cFtK2tyeXhevklxWS4/MigYhPJZl2/QKM5cufJgdaofAhnTIcVDvzA2baIrZAkyOlEhgtlM+OzkSmATzfzZhPindA9rPTQPv/Bsh4FkZzxNmGZg4B1RfNlbynPhJY+3vC7r0k67IKr/4NxvXpayhnJybOJ4QqwXn5WuGtPJ8+UpHFo5+Sf2EF1QBI/nnfIW9PTIpjfwaVHnxCm8XeQUz71RX5g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0psebSNbHHImQKkmYCaoXJ9IvjWS2PwkMxR/FJ7smtc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4I50lXjInQw3/dRRa1SYzcQdMGi6ee604hUnugNuv2oJS3NoH85UYOBRzmatfa/JD4NkXQFo0aR1/miyWSfabJAijckHO+AdoGWTlFbYQZEGEcFS3gyDYRvB5wuGbkc7nID0cgcWT0BUx4uKh66xpi7eXqYZQGltouhh7sOhhGZFoTjqSBmgtCjLcTIekSE6vHYFPPKkJM6bpFmdTg+/jgSt4/l/d+NECkWUvZUgu6sAl21rdDTwWMBH7iegX3Y0b1f6D1paNPxI76mCVyVQvvNsGafMPbUMnG4nrdZwAn4Bvi5P2HY9hcwFSY78V7vN9WblzBG7eo9vSnhuKTTZfclVrASKLXQPbZYKw/jqd6ZMvjjClllUoAmVZZZZC8F6MQ6LmWq61zVHd8ms4z3VP6a+jFHLTKra", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0rQ2ZWZnDNf52y3AQBykoDSFewi4S8YQ2TJyPTIK+S8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A/6ewFH5Z4ub5ytPACOoVMynOc8qr30xzn2qImvZKJl1z++MZPpznUdXfuOy9Qx68tVyExZ9SO6cHmydkHynUg6dNILVU4PfAWjVzcEXLnJWRO3r5f/7bSNwsuVycAznl4gLbvVNeiVU1Xle6b1d3SqSAhYnCzREdUum0YtfiVZytUz8p6icR/UY1E8ZVOvuQXgT35aeU5YBisTBra4wyQNgYbzIqaGavwAZhHiyTccbV5a1FDhoGN1fzMj5CaHsgdOBBBP3h7YWUTpJZXlUdiqRLdVe6O9YFpuOfKuhklOc52VwrSNsbv9fIzHt5WxByg3SDakIq5A/rBrew4hXep36YEYWONZoXhDDZe9MxW5KmKT3AtD6HXvtK+1mhh08u8hDXmJCiQfb8eI1YOtk821lmr+AfUl/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0rtUZvhkZCKtKFARKsdOSpPjl3VHvFSFJ5tc/5Lm0J0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0EhPnpB1dWJUD27yezPuB/jkP3f8QzRhalN11UzJy272fg5vVm17o8YaI0Awt90kJ2SYKfoqN5+ZdBJx0wJkFz9MpswqNB0LTYvKqbsyQSOGGER9rw77SOXnt+IYKmv0v4CN9PeJ1L3+Gtz1MXJEaqDzOg19IjoLJtN8N5mpMl0Ptld9LbeC8b6WABoP1EbnesInLhBMnauAJhpiWGOWmGEx+xQrQHCHk+wqbuOpTJhIre6ytuDNABk9RwpWXaZ73k1F6zqPW/cmQhCndS8h9DMJQ1QcWk2rpvNT4OvF7DLoAbBgxlgfMxLtJGZK/i2QxZu0K8DYBNokgOUdvNVVaMPtO3771PdlFGDPmkXB2OGrbUr6y9a6mtnhsnZtOwK8xg0LocdCD4FLoJPOnGwsg97S68SFj6g6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0s1FW0eNkVxZH48rl2cb/5JGV8XIrUXXbnKuVR6cXpg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o6e9maSZ9/0awnDEVqs+c2nMscfOXerMA6VNxgevjG+Q44Cp1kMzJBq6PXwH5U2/iKcCboOTMkqjzGIjPRRMWRDQs6GFbSjzbOfKsqeMFPuF9/A3oWGfDjaffXxgSET8syJUgYcT+HzFAFOKO21HE2PRAtkTNpGrvlGbgSbw0sdAmLmZPG7F/FYzGCRsxcoPeCcWLyaJaKGWX8knqKtM0cZ/NyIa3GBj76tvDtZQ7oD+ntv9jSFasUF75qxboKf8SM2LH76Xmg1P3+SMrG7l5zj+GhXr1IWLxsQoTe8JMEqA1CBABKu9kcQX3dwHvfOAVk/mlo5oTdth55No5+J5HCfY5IgFovDiML9vivpMb0N+TaemN4g4tzKkDA0+rSSGMKbULlpm2GT6AddY3BMPjhf/wA3mPRKV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0sN0JfYn7QpxtZVWRzZFDLCqs/0oRK0W76PuTJuJ1lo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mSdxfGlebD6QIuoN0Ldsb8hqhMy7erUF68zNkYTbdOqgWbrQcSJzTk+CUgBlgJSq72XgW0+c+CKod91vCyL3XlvLKLXOG0bdwouJ/6bO9MELg9UzfJgGgLo75uUqZndKJ+7gcAA4nB1FhA27dkDyrZF35JSSWT4mAvS+2tZygewAmy1px3KmWKq3Tc9jnoubPwxJs21FgeuxFt2VHCbJbhEkO46RJ/xlYlQIK8YasRkKjf+RUNKoe/MsjU8NJOtc1wPPpKOjhFJJNNA8EDMjXiYXoCsOxzwR4neaZpeVNu3zN91NSLag5JNObh9sEgXD22JcyDEM13UgJyQQn35gms4MsYWvSPmL31LLxRrtToZxGSXLDicQhiWIK56r+l4wr8dVl9jwkf4tIxS0HdHZpuDM4fLJCq5M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0tIR5im3wkOi+rj11XeSWyt2PjBsfL25lJq4V0x0ZLY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6BWeJvLtmTf3tclGJ6XShrvze9Eb25qWVEUrJl5bKpwbiGpwc4UBLys7f2PbIZFD9gf7hgzEDZMkmGQBpxDFmnEExDeYjYHmPF/Z8U5MVt+oucijPj/K+FJu20a6EKIuXG5++V7iEBsD+GZsrqOv7hrkzEysHjGEInsCxyEdDlrKlb1ZfSreTP5npz6PS3a6XMwj/srUfPxgHydCdrI3uuaphsrvu72tvkcxdNarSeffGyjN9hFY6/sCBetyFw6KFtDiqlOlYZDFDMUInv8MbeECQVWy5zEcOIV+AV7at6GB0C8Pw9z1ncWZn0TGMBKpATk2gdd3ObusZf+R57AXJYIs46cwosjd+4iqDXerEhDMWR3MX+TuQBEv2PVLEZRAqN3/haj5TwvkQwEec8lCn3WJVH0ayOJi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0uqGZ8ClZzsC5eoMVF8aiJHmqsOzi4G2ODVCT+7MaSE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fy7kD2Tf3r9GFk0Ab5X99nRLhQfIVmCdwxQKPSLmX6bm7uCO1Nu2Ih+wym9VZOWXPw7in7Is4F4jgmfdAPOJJe/A+bxmaYys0txtIhhJU4tVCYKpA6buzXOy+MeZjWZz4Bg86rvv2onnUPM3h3wfCsbXoca+qIpTLI0KhEOXD2U21MFJIZCJIKN2/STpN/FcknNwTajLGkBY1yMgKUG1oLlRbO25DNkn7oj6yF5ka8QuvOgnqeaMbaFBDiiVTiJvMNwIi1FN4b+9FM8JuBGIwN2cnd1XhXVlDpOs3os9RDlsDy+gt//vgN30O3HWUqO4RTfOxCxursG5RzRqmediB4ryGClHBXG777geBJ0CPwOxPy7uXIJEmjRoNm3Nerpi5ycmMnZ0NHfaSQbX77BCS3pWEpicnlgm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0urLHFz8dJrUqRGOhKK7uMgEGIgQchqJS6tSVABIJwM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TTG3yo8sP5AVvshpAloTVNalz3NIfJrW7s/Ub31JgLWqgzEn6ngEzdlnROqCdj5nRi65u8yWFNsd6WfGopRtNYJ0qeqVrkmhV+PDXX2HJqy0avdFCzRrtpVyK6txnWYjtetSGmfgZJcF2qwlI/ffXn8ZBuZ0L9L6J8Mb59eiXwdwMZoWNDu+Yw+izIYwxtmluD69KZ8sl77FseryQNPDDRWuW/M9g50iSO8QzYZI/KopSwC08Tft1RoHFyOSd7sVgjMICtoC952vTp923K4tY3iGZH2koRvjmqf52P38qn17xROgxtAJqlRrGDeizp3DlbSyv1Kc9kScLrimpmRRzEgX+M6RhWtko21vlxKVDcvCbqqjM8Aty6I6Yhyz39RAdjyosht80SUboFKHlpgHqr+n8jVsls9P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0wwEZJFyLW+89JYG2o18DrMUXEbc1usnaLETVSG7u5k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "csyMOof4o4OLeRa7+jXFWRCl8s1pwnpiOMWHhCdO10DWyZW6Z/TKDvWbs0v/W3Uza0pokxv4SdrpdzC1EFN/55qelmpMFlk2K99wEjJCB1vKeyI3p4x/WA/2+NhGC4NaQsOlLPBCJe6w4KRRtfQ4h6cpWyhn4gS7qwHoK1SmUB87iVgfEGJS9afTEZ/koIBlzhLJaTUno+v6ojCSwajp48KbByk3cJjZ1TWABA/HWayNvJac/0Xvmx39A29YKIJk9Z5lA9azlpUIs7UCeEq5/hgX/SFt1X87D8Jrlw8XDE1hMrmBpbzYX8d1CirMQdiCqgJs3H3M1iHp59Q1QSaP8WMLGeR4k1OTiV4wCYTBdPAIln8KHLMMJgbCqX1EBc12gZQJwWn9/+bCzPPUT916NNfecx6JJupx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0zSnkidLnaSc+6FG84XhdeCLUgrqlvK3KQYyKWTYcAU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ko1jYIAvgKeeSmkE/w2C9/nqET9w5N/3beASeYU3TcgjKC7vbPl47M3VRr6V0Wr0wJYq/vbWCQIstGDxQYmsfOg6zDA8ShuXXXQ9tmdeBDtC4skHaWICCcRGTsVfiY5dsMzdS/gcbrheT83p5t6mBw0v1iCuXw8m3C5lbMNp1EWSM7MQHjhdoC4k/eyrmnSWvNx8A56cUIgTr+hnB97uf/58HaWwWO4feoRFdwz0T9OZQXo07FA2Jq1vi3lQ1oGaJy8+qQJHNXfQokfV/o/LRYJAfk0PTKJknLp/SqF4dZJ1c4zv2IV7DI9Tuy/qfr7tc2uw5+hfoHmAJezK0+daDCjz+f+B7of24LGiCfplN5C0b8v/9ymZMRm3AMT0basofYo6S1t6wFkmPnXIs/q0RwICJTQYv8U6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "0zq6MNN23WSRCJkpTDj3KgiwxgCqcwokUSnXdCM0ibI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sUPLBmvQwif+tYkIaF8ZBSCUep6ht5IdUBnjQa9nSrDOcD7eeybJPRs/JyFlRuvt20iVonDO87yYR3ArQiWZfwPWjLlF5ttInaVt41cJccS1AaWt/Zq2zBWhuYvhhvxfwIJAwd9neAXIxa3zhbUn6EunqI1lXdnTmYKseEUt63S0MxddM0xDLHFLSH59X+UuGTY9B/FbqGhVznZuZG1+kxLHGGa9IecblPxwARMM8uFG3vMPjBwM2QdI2IoL/wlvBNMjSMKNdkuPKnuE7PhasP0YYt8MxBNckpFDiLEATpYAWbu9A65cailF3Wyn15XL3DAOjioaLPUMNJ2s622JxMey0g0gCLbfznf2geVK6XPWY/zkLlNeNo6oz73M2BTwFxCyxB/dHVATpY86hT65BndBPY3ZmC7K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1+MoaIwBHsBpp6TZxik4oHH7HrgoFAZH7K2PqZKEfSI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZE8bUAWQv1WE9Xm5F+18H+Zx9EV/ZrKr44lBCeZGlbAHD6TxZFGPSKL04muAmgZ0Me5cbhEGf7vN/tAK2ZjrHaZUrIcM+nMQh3sAUocgdIj/eMOwlbh+WXAkoelWIaHeQzz0zIoz36fCpT7o0ozK5UOSuhwnOQWYbGzFzaPZKc6S5id1ZAk3wQwaS4lsg9sKMxBHcaUS8IMDnL8LMveaETGh/qZGwsgzhzS6ILuRq5qNNlmo/gVHWwjJBOSBpVgYWBJJfmH8cmhqWGYFg1pPklKzM7AefI9XJSdnDfjzpagLDyRS6uU4Ymy7RlVeK8PndLMnGxRT0N0DZRSbplThXGJQJWk9BNR7zXAJyBQhgE7fj4hEYO0UCWfU3PMdm44k3MhHpuirQsdcIZygtiRJ8foG4J2TKEs9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1+iPY1V3hk41U2V5QwI9yPIyKpxnFwkC/WvcAticj6w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OxCknulD1BQXY9zP0Z8Qc+C2LTxxPvd5zPHQ021VzlGvJf7RoOmYEav6r1Vm/31FdXV/AOlhhezuRGo8O9HDczvtrW1LXdvRzAApZAZAtQkP6GtQYDGYHCCZN5mhs5yRLSxbwrkD8kfMFPNUGdSkiKdhdyo8PUvqZtNPelpJw5KN68knfGdNz5ES4bUnDfYUgVl1Y+cgbEtq7P3yWfsoOi4ln/hH2c/+PPvbyAaPVVZD441s7DyHCyIaF7oskaLvIA5rUtiJpSNbxjlnmWvH71aQhTIMRZzirq76QxfBPpKm63zfmKHOYEFrCrZ8Oh+09g1oeHbE4JUFg20F/I4yqu/Q7TapDKkao5cD9xXYl9SkKUp3BDT6dHl8el1/zxWLpzZhyJFfWJ0QUBol6MbAVOroW+SGAgnG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1+uzqI8BR580/PqpltWXmb1/TYUZdQgqFI3h1OrG6ZA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OCRew43Bd61xKpJmd6MqdL3F2q5aHNkdF8O0jgBIVuxeTjtv3JwOxOWBn5bEKFjY8h1p1yfvdOdPLwqnieTJIFflpiVtrl4ppF41GbcO3zvs9UhP4zTdgj9YWY+tj9qCKBWWmcUh8EmFGOX1Ag2Waez8bVexPKylyTDKw3Ay1Nu3Q4Gf+ySHTtaPBSRotE9SSz93jwHOhF+xMt71/yi/nuMuVWEwly/ogYtNuZVAHEaRaKJ+T9U55+k+faIjqAQryqrTDa1LgpzwWIrhd88Y7Bj6tZjhW/dMMAnSADNMyCg+9NfPi6nt/4lIQxmyLnR8RknfyJE7eE9Wao6xFd6luhf+ysTmIIrTz7yKxWCGnmcivf5o51/5BTObj6Qs2m1JzkuWS2NNyG0qn7bKHp5zFPgxU5WSL0uR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1/+XkeezN1uqc2JDfMRqck788fWopiVGmBJXx7HpToU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v7dvi+eZ6T2pFYsLgTPUJf7Oh/1blAGH+xLuI9ThP3+BozDJ33aAT0dY4YWZwCcuoejQRLesOX6tqVmZDdtLR64pacfIv+P2+NqUdZHLNYynjAIQpK5XLaCMxbxxQphxJH9iV3M21tPxQb/AW17dGymjY9Pga2hxpt54usPGe3fsM3XGRoWnEnd9JlgJuxEbRg5pQAWxhkGDm2NXazWd6AooqJAlRRGXQlQX6IcCjM/y2HXgcJrbKBKsa3yCCntBtKzvyeaWKD0ChDqNazUc9Nm5GuoBQpK/ST0+U9tT3CeTItaK0hx43AbyQ5yuIKfLNxMsEyEE0dCpFaCMKSpm/KrsyVfnyArwty5gS9GcNkIYa6IKXPmot5N/33Dk3zlK2jtSQ9/MzOZz7PnaHDssAj6J4pvZo5Ca", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1/I71PKtHPY0WzmFO1KeHkCjC85ubr+Ihorhr0DL//o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T8+CrEam6k8qpxJhF+24N7/07D6mU9/huv8Cx6lKdate0+pG7XI7O7rh8I1/HhA6tgCi/FAKqWnndEzkZRqgf+z2Uq1I9vtNpAJKUnMgDLfYew8chKOlFLA19bJZPCxh/a6ewcLI1gDN4Rxx6ZhwaYicv4mEwrCjlMqmXS9IW/2F3bCnqyhTKHHLRIKiYMDEzEyPdM5paKWsRDmG7xYe56CHK0NDhZw9Dhs6GFgi2uRG8CdMN1I3C4w/ZYpYdRz7BML7kSCUdnywFilKRpcpwJERWN8eiVOfqk8WDqcyCGVkCr4vzXU5RanF02zZsTBMQHJ4flK/3kPrU0HJVwMuZnsC8vkgOii2mOnnFQw9z/WifJNkVzszT9yT+lZIz2SjrNGTO7Ft7ZP7jB2NsiaMHmBLHj8cgFDl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1/m4TlNI7FM9xQ5BdJ+qYAX04pY/jztogqQRAmqT2zA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QDOJeoR9KiPzil8UuADY0eZgijoRBnwtDwdUFWEabDhyqZt1igAgtlo3Nj8Ju6zpUd704dtxqMzVfUbJc0ftQe+LTci2KjjlFsndiIW+FbPr9EOb2iD6fyDiDl8X/klSX7+cbJcb9EdAcBbAUgttDsSK7RcA69JYRtDAYR5AgGSSdVhiLiY/5YzCr0Tn1ZhPOJxbh6pIuxkf2n1AA09WZRFmqON3iWCwXvzgkEpKD/YttIaauE5zQOj0n60iVt8EDVTeoy9cXdmPi3rPBMR1IM4soZ6SwUwtQbkcwJxS6rVchQdAWD0Eq6TIGBtsGfjzTQ97cVZ0vf1zYKcSSCO9VTrvEZI6HOjPxjTweij3IWeGjRWJCg4JSsN2uJmrv4wzexgnu/sJjzOQTAKMptQ332VYkYY6vP/T", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "11MS0Y8U/iDshKwhXa+9Qpo7Kvf7SbXsOw5ooq2Cafg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ReKJIDHMIcBMmy2Rip6L7ufEkErtug+z6OcZirPJGSg7TnP52QwjX8+5B+fZkHYJXJ+2FdBZ6p9ZRonCl9nVnAtGW0siV3bObS6kMBRYb2FdzPp7ChAoMQzRaP+sZ/2kEuFd3X+nLCv8bpJ97cn3rT4Leioem8vcY9owcss8wF8xkZUzhEoG2wMWVOLCqfQP5j8KOo1d77kAclPWKZSGYg2f50V+BdGUCXwh0yjCGSpGPsEMmHTumzfzYjJC2SOBu94CdpqVIegocGgYt+im2C9EEvutNVu7/Ml3ZJMx0p1MIMyUsDMdlmqQim13t1dWmEP8WC07VLLruUbNzgmFJ9AXMUDNmnbhTFNsFWUa9hhP1Xj8AhSljCkAuUeqzk4G1LWLiRRdCRTLHaoSllY9POA2QwWvCdnT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "11eDNbT+OdxepqJjqjXv2D2chY8rwwkbmc1W2J3HBl8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0q61nDwCSsWaJHgzqtyESBlrWDbCuNoZbFCls9ChE/V6MXCTyUE8n774SHi65OR6XrnbkGbXAlxYkm2COnU2lV0Q8uZqaipdtxXr4OedyF4j8UefCxZJh31Wk9BivcCFIQtNz+IjJR1wm4OH0tJIoBplgpGqsQowdEXnOgirHkl/4B7S5rJeVXm1Vl4N5jswLTqqDvq0UHS68q06+50xU9/DztiKUYlIJ1CyIy0O89E8B93p6vlYR/2hL3MBkmcbNv41mymCggdPxjAAwI1a167W7/bnFxGRs4WtM6eNu/MHrwTlXzpPBc0iyV3WXfoiJOK2+Vwyiu58FighCoyk2XLFyCxZ1L0IpIfcCwxGpp+9nB0AVcxv6vpqR428ojb5+bf1SdVrc6u/VToOCQsCm9LKK/Iyi3uS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "12UU2+hnC6lQZmfe5igmJ0YkcXouSA0UdA9gYOvIsEQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5j58RvUXforF31QIIautotMv0amoHpMVJTEKdGJ/z9m36zDUnlzKUYjewjxeNeZt7ntSElfyqO9uWb9z+EhGeSXoiIOoUrGWXgn99/QFC+D4optb6319FG8Q2HU34JikbSCZBiKL6HSYAx37FQ6dMiQVYXpd5zbU54P/lBEE1vhBjF3o+L/Iy403Nvo2yxEV4M2Sv4YiXY2TP3TeMsFi/8vvc4ph7Zpb/UKWMW+AMmycTWw7DW2Hj1yrWVbQsXeQgHNh7T0Un/eA2HTWA75bLGN+F1cmWIcqlhQs/qxAwnWlXva98liqK2RY6BYA7vhcKR5CO9e9d2E35U51JGlz9QWAaWoTMJ6ODXBpzxRavJ2Md3j/9cPLHhCYkt1sw65+jbM0eR9sAJAoyT1gcnB8ffsePmvOvGBw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "12VNyX1tzJGceRz5WfI1nJrNNWUQToCFFLSdpbtuyAs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lWLXIAWas3tzZ7NqZlIfU4NH0KHcL5LgMalEKchyd59ighDHLCq1MKizd1fIM3Hylvqy6/smwcdUVZ+YKDfrYv3UOkqCwjivBfBiLuBFTqd23DWoXyZdA1z9UZx7a9sBrMfmSQurAEQlwHISaXLx+mr0wqCzLxn01DP4Q5E4VgJBdrH4pD88zGyvuGzGkYX18bbPqBrWH/MDj1GSNwAMC2ohEhPhCfILlwuuy0myof5Xnyz0W6AuNvSHRZZ40k14b9PM6PidYCb3kTrdW34cyAWtUdxXCo7pQmeJpOZ0gzIIhMbHXW0Txo2Vz+08REjC6+L14n3Ei7rjOLV20BlzqAylPeLzN6WId2fjaaREbgdPQ8VIDqyuuAVZ325E9m2WLPpWBkjVmQfkinVl7O87hKDgE1HVLIHj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "12bEl5TAFvCOsm3+Xv3fbjQnC2PreAie6OxLQ4KRvI0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v+ZJyu2Xs7bSlF5QY2AgnAYGOjjBuqctv3p6BCEwCsc2u6PYXlFSHU2I2MxJiJHbdUDR2xT65vxZFgsZ30BEf0eflKAmjJ0jV269Iyn2BYlnCNsU2Vk8oePB9hd61cgMA7Kye0PzyT17q998TuvUZFfS4AYXtN9F6D0bs/jpbKq7siqjV/9iFi0pSE73MNsXPLK3tchdnA9Z4KKLmfI1tSVCJrc8KeVaro8C8ah+RbgfrMCIBEacXDFHJm8QpDoY2xG6+iJciSP1AbuR5ki1s9GsBl4WGWZHaEdf+cCyPJAFwUKNlTtiDYbTvH465LYu0tqjt1vO76edrjsTyf+c4OOeyC0JfgzjWl1Zk8kDc+RcJz9g1W97vmjGe0dP/evCedjgNZp6z/2B9MkchIeD+9TubOsuCN6v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "12u5HTA6wNTtrbooH/LfuJnj+33H8Zfk2SjkgYrnc6o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r9wKm6T4qlX4AhoMvdjJ+jTL8VMRkvkvmp8zfgayvre6FINZpGcR/nhUC03klWur/G94/h3xdRefUqHY1xFKW4+BZAMJZ3TZG0cpU5L65na0jcAqp5mbHBzxZJw9UJm1RyVZd4eabZn8xOq4t7OIdiSXTqC2LkRVp98U1RddDW95iL28FGpr+PqaFRChD/wOcwMO9jsuyvFrF+qxhP1MSu7GDekIxLPoNfzxfL1UHyFM0MOwMo2X7BQ80/jwC8RABBPKKHl+1UsiRb5spLiO92kl1ayQJ9EArpzvGBhwi750aPVoEm94WqkuozeZUkaGpNwLukTVv2JHvBWt4dGWD5YmnFy6lVWInce20gH3OWSOR0oPiEqCQ1Kr4OvI9i8DHQ7YchzR6z9cPiGUY+wv6C6nIZUnQeQW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "12uC8FQbK23i01RCUnlxkAPvzmbYNk12BHhMXwmEDY4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WVClbC81ebE/tlfStTenEiF4FkGnF0je05gqafWdN5rMjFde00MKJUnnUkeTqTZlJE0rRBuvSfZOVTnC6aiUzuUvfqO9SUvvgC7yhd5xAfcGn03DFIRBGSwkuU5HOzuADgrXg9LTH43mlfhfTVnQfZESTOw/LgHkZwBD75UiinbRHWqgtIpn0Nzzf9oDIkztPkNX86D5ZtWPyexsWj5REdL8BRHFJGweaaczsL9UnQukBTsV4xsAYcdVvKf8jjdd1za3Oqf9yWT2v8XFP6qdEtYV7xid/RgNuCo1sMaXJTTGbvg93Om6JTK1kkvAAX42Roedhs59k7f/qtKAUU9DKnrGbpXNSkfYkxz9HTiir2hkdORmf0oy64Y6evVEk5B6tPQ5SG5TW1Tovtei8zSqYIb6Ew/rDVNY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1576k3rX7hVORGK2T85f2dR5fTOe0qcERKg5igp0Khg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LSHixc8c0NQNpJgympVuKNfzgoJxVEot4EMzxgfxj7tApH3lfXUf6GHekJ4XcB4wb/1YMEz/VYuH6C9JMPS6+ZlTNpKXq3ifyXPuaW4TTNUiqm7A1ZFGEgvUoqhce+9kmo0nJcxTYJ2S14gk4Jv3EOGs6wxqEqYnVCk4mVb/QYuD+821eJitatDo5Lusyi4jP7DHlPlgBc8VkKD3gBh1YiKsKRstXORZnP2ikXj4zMf+pGGyR1VrLuNhhBdny59uk4iDjc5itaiH0E+mFA8fMcVxsKLDim8qVoZquhQCWWL/yqtU5lptx8W0PjHfIX+7zmpL1JqnqmIW+Josu7VDwh5jNWWsGX+D6ZVf3i1eMmlnlV2bVHJ1r9LGtKmCXiNYr7tfbOg0KSE0DgVsempMya7RHRtkYszU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "15CZBOq0KcAqTuit1CvZRBcdLl5o3/Olc4NCQkvm3QA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NsVLkXlw6Smg6Aij9tTO/6RtLIg9gx05ZhRTJo3F+cqvVJu2w5oN2DspALUWB02Md8DQcWDF07qR90bSCeN9DBSIZCSFTAWzfIN5gE6uQk7QdHdK0hp4L0t+Rhv8hyrngPKxiB+uE9Cv1vgkIok6kESiKzp+mArpfKYAtyWY2bF0e8mSUYMESieZkmZu6X19+A7KPvERH9TtB7rhqlCmpcVtI5MIBkeI+5lw2cd2DigmRy7cJLPqNnvDxpHdw07mh2/AkpHyMjqkCL9UXrxiPbeIO7lTOM//y+It1v9PXC3tetAgt2A5mrek1kmt5QKwJLVS/iu/PgdL8LBLxOaTzrCW5G8j9JJ/Hz7aBtdWUEq/AGMzUj46FwUH6GL4nB4pln6dV4zt42dOjca548flj3wA7F8PhlQ7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "163DdF0sXBknMFCDtYigZQU1Dcv0l3PdI7A18j/KpAw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jt+YUYdi5D9YJc8jvGQGyMgddtgQgX+iXKZu1LS52aEZsXp3mK+XwVP5sSbWfluKeh4KFzzVbWAUzXFvlKILC4luysTVET4njRn9ej7+zaen57yjsLtAhM0I9ruGro+1IuJ83pPQRVUq6RBuTs50rqxHPlukm3gD0ewlbJO4v9gcOHwGgeVvrFkM5M/qTa+GdldMHi+fYylp6Lf6yqnPA3CGIC6YuA+0Qo44GWJ0FwkVeKTKeSaYPH2AJKiO2Jc8H8ZsTjeMZ1TxPXXgdIB6RnF6I8mw8nRUf0rwSZQpSpD7ouR03JLdZB7C/XHstbNRRk3vmsdvxs8xDTBUGvqq7DlyfsA7T3ENRl5ci1P1jIedeq2bR+8XnCgzJg1XdP1VFMDaX5i8jYtJKiwOtp2XtBThS8f+6ZYL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "16hHddu5SL5Bac24WpCcn+aHpe6+IQ7Otn/VAgiu7/k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XS6j7GgsdlmuuVpedwtd3+z0Y+9UyxUGQ9OFany4awBytP9FXeBFp2HQcsyuj9yS7IcEwql7WDMLlCQrbr+d9bt3v7xFVMl0DEQZB6WHw5Xc4aAHPlmi/ZEu7amLa0KvPC22oBdFrIF9LgWxZ3w+AZniL+KLSwLYOY7wOsPT33MhmbmRoLY1XVW6GymaZsm0qoBHlbof018nh/MGEaleYrQ4pB21Om79wbdwLJpHx+hpRN63fwWBJgBKu61yb58uCR0xiU96C+22gf6dCZK5ODDPcGFKlIJmSo4O/zwuNbsTMzeBEYz5fumw7DsA5TuOmQo9zt6wP3NNi8sOpFU5spngUGF/8CvIYFrIcAkgoM7Cpa9IHfNfWnqib2f0BOaXqe2B6LdeGxilztcU5MzvoHVMnIHJHoHB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1AWjEvgQvEFmTJZdkX1VIDCYTbWIVfDR3rlEf0Knm4c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vmJiTATVXph/ot2eGFAZHgyNnsL/wJUOZgkvrDYdxfu9KzC8E33YjsBm0Iyi7zXDVNORoKLR0NlhbNzMLLj7ysl4OsijWaeeHkFg28U2wLLNupwBV95set6pDaCDt2SPOiZ1FgNKkVe3Z0Yaczta8zOtYyXki7ZBxxte1y8ThTnw0stjL6l7pZ+BYcNRYlwwNkEKVnUBdbfI1W6RGEKrXnp1H3bxTY5WxXWBOADqBssl3zmlZ6/G6Uo3w4CavURORPx+ZPVaQBrzaPkzMw8jKvXA4M65cSLxVGyRTjuM4M0sDP18PXo+yZKchcQWHQmz70dcvR3AJ+ZBRrZ5gN8QQ/hMqOx0SJ1d72qu5pPz5B9b3mR3tHYoI06X4vTH2mtt+q04vYud0oAD+iy14q29bt5FRKJJiXRp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1ChRVYCxa6iFQJnsWbH6x52Z6ULZR4ow/u11+Ay/Fdc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jcLYo4PKCbGUYJCOmrtkeAOzSE8thHkuM6/6uGJNthYQTdaUbI58Ph/xSRdBBM40PxTvXQnCRJ5Ygtm9DVIaDu9/0755cDHKSJ9ZUA2KInPVjon5UtYr6djS30spB1gAYV+kAOAujDPjXW+OsBALi7U/1XyVikjYLzG58iU3C1i6TCnnpTh0TROAfjY4h+jX0Nchj7yCw/hAtMgWAHMBuPZj6gdzTVBE23QlRkp901LkbdpcRqPdOwwjsqh5SaYdbSUTpBdW93CciW5q3EwEZr+N9y7yVz8QJQyHVNJJRb9I7R/2L3cWNCTVs9Oy8OCZr7hi3jBGO707eb4XWUN68bw4yAEkDzLXqGL1dhfsRSc95r3Ew4CgtmoJpd3KncLblmOOcfFE3Mq+fpO6b/2O4iQ2JZRqQPjq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1CqXu2RiwBpU0P/ZevLdRjxmjKlCOgDAEkZzpOiE0Ds", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iAjJc6KMOTQwF/vWxODYSSE3JcWSPLB0QJi8BkNf/NnHVhzpDmRD24F9GvZQ3cj2UMYnyIvIb3nwNX6duWW3ujpJYjYvThwUJ8+PNuBPIPVFQYHgFK1ZNktEj3CQIP1QsSJf46V7qB/ESd5n2cxbsRSnIjoQZYIBfaWIKwANBg/97kaSSEFBMPWJV9MZni5aAjLn3PLPclK7jDLtHpxyefuSZ83w+mY69GOdkfsQhQDcGd7LtbI4ZHk7JsDA4SkGo8W/939+ZjI6QYH6CW+OS5dVLOt3ANKCKwY+IEoFGvVaCvw3fNmVt8kaUzJOXJWyL6lWqhhFKtJtyUGi/V337t3DK5f0USDSQ4kX7Z0/gAdAQNzCH5TewhnKLMXEmJ//q35EXnoRIGG2YhfhBX3mcaImkg02oS9H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1Fz4uf77n0jPR2kIjWEv2FPSKDmYaVZF/8dN4+ne9oU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+Cvp2NR1OUkPAhDYrIvgiByT8ekGB8/lXbkh6o2S4w6cp25nBvboxO1CK0EJugsPW40lQSlJWbWldsWm+VwGtwNpvSm039kyrJVlOV9S3MBWZdHB/taEnx4woAlv2c0fo5hA6sc4r1PXsIO0rfNZSCJ9wZA6znW/rvFL4s/Iky67/g+hfO9H66P6T4F+8uhUVGDPCEqNSeuYmrKkdu8U71eisDddfBeAqVQ973fmlevH1dKg1JgNSXaYqUV7ZzIvSQikU7JlVCSLtL8BnRVJbwiiUOCjbh0IPue6x9y1LG0VWq7g3iIR4gpCnMguakKVTosmW4+zOLUk5VGiISSGpTCOECMtfbtJWolpXvpeGPcFhgLhpv4HvqPo9EwhBPtvGlA6i1ghFMxrgN7YHszw6rEuobBVmES9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1G76LDbrlVsGCu0O1bmc64qfhgK8WY5cnw64T9F0xeE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VIRcQ5arsymOUnDZBDuQbCCcKqOcxGNXZ+CktQVs98idqfUvzQ1RXw1LBCWtUlrKYYOr9uS7OfAiVQFgJAK5F8Id3FxZOQfYXXhMDloVVZJSjooSv2IeYgXep6hEH9zebYnFh61msx9JLXyjcV9b2CupBBZC5mCATzCNGgYm6Iu6ANxRiOGd0OSde4Le8rJSmDz4m2KQ4HtchwU+tpsaIfGicmeemF0CkZfyVcu/q96m1sRqdxjWIRtBUl+HgSPDeTitcAQLgujusgOcAi4jirthZzlbzZbQ/22oHDhJEp6pM5pKsUCcdEx04y5Ff91w7Cgz6erp4Q0d7wdkf0t7OwSrWlzNa7Pm7sKSpTCP3G/LFhSZo/+66yLVZRxX5J8Q8A0HkRK4L7NpVX6iMHKsfxrt9dwr3PX9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1IOew37UtHuVq4shr5OkCPvBFDiHuK4vUWxjRo1f+c0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TiW7oa8ZtJmklr8az5CQDedwx+8JRyGL7i/0IelQ4RD4HHEUDzF1SSC/XiyRZaxl/Uk7+qI6enFo1d06Al8YrKZThl/Ti14gWgvSNMjAg32+6fcTjwp/YjVUn1YiPyP/2iDQx5i48FkQLccb9aJRgUR16vrXc37JuhNwjKfVrjD8vYkLurP/6tW7x9T2sVjv+kvec2Tgj1GUxlBpc9TQG+kilsyzTQY+fCFDxaD3Tuc6aGPlXYkRVntFGHEYTm6kIijW+vHY2rC2j1WV0pCKLzQoRRHiENnK8bQ38rJXDdYx20RY+H+6AmHxomKBStT297eav4c5Rrj59dFVVA+9QUafnoZtuTSo3oJ5S5p0JfdFE2SguQYg4X2wK8JwqjFnqWiyE8Er6llIuZZZ75HzR4ph+PK8mzGs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1ISYoda5Rz3uVUvsOvSxLVAzIFcZcTuF6nIg5kWsaAA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vIomVC2XxmojfhQOhKeMJzIN3qTYFJ94kdxtv4vikgcjPOJf2NKqzLUEV1H0sI/kGqCerUS70vDEh1Sq8Sa+wwZC/5Cp2byvIPk85zZ7VDq2ZbkaxiS/JqYWdRNob+tjYw5mbkQgWspZOeT5bcrva9D9V6he+WJIZpwTorK4e2FeYP2NUjqFQn9ZFSGIi82uw1Bodfsn06SzCp22UbZj55rW17pj9c7MzmND/1WwKRs5ZuV4yyceV6vAelzX8mzmZbF6mh7Gn5UIlfPgCEZOr57g+3eifWgScBeMQjmgd3nyWiF1MlJ3grskzAYgEe9Bu9By4ICi/n6wow8tBi9YsbSSVmHsM9C0a/Q16dxxMWKtIlm262u6n1e3X1dQoiFp6VRiCkuKB/GXhKSWIR3IhcA2P5GzsCLG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1KaXnexr+l4VCBl0FhlyYGjfUIc1YIzCxKmEscKMgeA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Jp1LvH2g6hPsHxkE9zq5Li7bRzloN6wQiLCGGHnVpNd9IIvtQH3oNj8cP651P992h2loKf5F1A9Cp0Jzg9SgM2anIxvBRmpyaH9x4XXvwCaByA1Rp6TUtYgUjU49WUGEes1U2XzLSn6CSuUdeIfiX0oz5pkHJqj/COKRc4VYp3OKU2/nShbZG+0JipekRxEE6z8oKK2nDMP7n7nd0XaRzQaTLgYYj/e2Hypi3J378+GpUfcAWvY9riTldtw9NqOCRMPbfRU+8jtNTlQ8Y70qSEUA4MFbOcI9ELl3HOp07RubWsp9zIAZWW6LFTsoYan6uuHPAD3R5NdPK88yDRoVvNykhlvWYJIjBm0McIyTFJKWsv6HBMD7+Iq4j1C2AAInY3S2ARCtUJSRFVa6GbqDM9W7k/k6EExu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1Kfz+89bOlPScLISP+ibHFmxX98wxvD0+IGDnjhlWwE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5ZYkC3wz6g9HNqQd5qRrXZAY7jKPZOj6aozXK8OabFTlYwPP+KbdvgvYlp8kohlSkOihoG+3MDk2oRtPgChucTJTkpPzQQD3Htk2FPIrZoJ+Qd6OEAX2blrajEg29HQQS3cghQU0uLKiTJXUuaUZ8du+sffJVW7riktkoW8cvpQuZlhCC08L09oidClzex8zFjFL6pqAefCF/4I84Gj/XXAK18AnBnZJvi8PeSs/UjPBSXg+QJjzioR+f5CM9Op3MRpOoprGkQnhHZv1aUt+NdeSkL/I2nj43LP9c63hoKlHhzDS6O91+IOPvqmKXt29J/xwCizKOoFt4L7eM7ENEDwYGPQYoS9lHL1DxcKNcwOmYyQcos6gRYdJBxwKXl0Y49Pis2+t0OBtDo7GxO6QOqA+wQDLFRB6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1L58f/PZ5wDcF7WyJDlYndwRcGYgGaFt6GSZyTKbuqw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IlEAZJdDyvgwY3NNmB/pSeOaNhoSMAKdE2/XNpucTJyH0Cy0AULXrCUInlKtsERdIwtT5RD51O49EPM48a3h0CfdrcbEjaLSIfqLLvTF9Ar61YW8+lSBwuZoYXZjQlHn1pdcTuRL1xe49N7wn4pOs8ooEADXTgNFII8MTGz5yAnlpYvsGocsXJoR11xMTmh3v6UlLXK46Pjn/A89M/Wr7iHfjAR3y59j6HZA73aSZIVQ1r8WAgx/jqNMSNYNSH5Lool8MZ2mchFYHVNZl6YVgg3rpFT8xsPsdnpxFWdLZYZ9/8FcfSW4BJ6USBl3FOsawtpEofgPaRuYYy+vNfGWVa/1IJD/aUUtPLlXmhIeaXwQf0O3Du062z1QEEVrxoF9uGGOpuhNsfbzo8AI0UDjfNbzVL9gaT1b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1LbOEHFklIucvAErkLSAk5hcYUtazysFEiLfHtuTSUk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jnLfOSvTFb2JATuqhG7vIqp3EF3UoxeKaBZquOnA6JjG4jPhxMMKAencwMdcCrYqOmgr2ywXvQmSaZvlHTa+FUoXjGU73oJXmELO4DS2N/+PmpVGn7ZfX2GBLlDLxcONoczbuTQ0IPHR3SDdR8oc+oClesJptivw3nRPK3IoAylein2pEbl56lXAHFXqorqL8mx4XE+2hEof7H9xrdKv46kB/39ukUbw/nUEQP+gbmIEM8kF+fywsCFIoFP1YHz6yM7l+tDYPO3DZ28JvZ/1agZC8SToAjuRgAbs418dxlxjQuaie6MZ4uxQrNLRSXZF8oDrtbDBO2mz8QuGkbkLHdLMwc7ftZ+p5yz8zWoNduZcuY0VsJoBQcDvDaG1wrrBdHxibRURi4ZTgVeCoqG4BxKczSciw8vp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1LxE7CBIWUhybh2vhn7GrOhztQerLXrbBImuYnXUElQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XWJVn9LvrVdilsz7GPi2evKxSedwTh7Wl4THkfGEMrh0mWR8UAkcT3UDzIQFdoZx4G5rAe9ldNGQ0mIT8ZVjx91PVv+zvz1fwyJfADJudWh9X+XMwyMDL+dlGKlFlzDBB7bJ+WtTZ8bpHFjk45cLsBNn3l8O2bMI87iZ5PGRu3HOzopqpethAJYDeqEcTlRxWC4azDxqr9MrFooGxVjE27PxsqkmluT+VWAMyql8gFwxHx84zxhRpy8jt00GLKk1dPNMHnzOMITUFcxHJ/Mq6Wj/KVPW1wMARFBx1txjwlXqQ6BCfizaKWK7eJoSDqUrmtLGaNHhgS24lVhspc9T7VBGaPM0bBucFL7SUk7mPxQieQaarkwhN7/kY/ilJQRL1wOJtXnQIJPl2xrOzEpylFkT+VbVfCX/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1MdrjHaF+njMgkRYjHUjrz7PmnYIpfmxQP7s09+iVOU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CTSKxnmjn+KG4BcelOOhQyTaOkigSgTliUl1IT7LdoHW327QnFTfHYU6CSzBsQe/YrZsJN/A2Ftk+AI7NfaM3l60RqNxX5rC5QpxBbO1aLXsp+4mQbe9I+T5FDz/GgM0MAp85dVjOLCS+JF4UF3w0DbHonMR4P6EpWwuT2kTZ1p11oJ1MkxAvAmYNoh59PhmSRBx4o01b5AZ5JPtxrtSKy9k1xiPhfNCfu98MZimENHANaLOo3A4rMFLoHCD80QI+2KDFUwG41jTkaJYR3Nq5EXZK7bL6WiM1mf0ieVPJTySSb2rB3MLHukdYus9mz4an4nu57Hpxxy/OjLGmytjUlYNVJgNkPQHwzPE9+T8x2riXsznUSOjhY4aoaB4rB5SAltYcV/8EMxLglZk3qHphIRyE69MXtDD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1NP33zfuSznAg4OZiutV5ykN3AuxjtS9iujb67BqqLI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MVRo8qEYOkUUUN/N2Mp/3eP3SQFG0c6o7lCIxFDdRAQgZS6HN7lQnDBnLsSo4wRqo9U8C1XCWIf8VnJPnGoQVYMLwjzZgfphbDFmMQXZ1+fUkSiHEc5hKTptctyy+ID2minTX8xpvakksFvHqiPl/xcMNxnq3GnjS0wIIPkM4qEwBitteUj66V1ZOv8sezJ9sTDjB+ZYWmcMgEvtXmtCNEJU9Y0XgR2DbKVMncEXLHASsWqR3GaSE1hsNk+cVLFdiLkMWmA+1kqrfHG7Gii9xhL0OztSVcJse7hhW7Ig+fyaUXAsTW8EXnVreRaTwsa3Z1eSLbzjEZ8QoqHQB0iX1zwhfGtNn487mkO9XOulBGOuvVqUtfstqaT/OXYdvAEQc2L6tHAf7OxZSHQiV/wTfQHUWAkPy/mq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1O9Rg2Lpzgyzli4Adk28m3t5Lzd8qqRsjK0TmdhTVO8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l9gzkSkGVXAqtVoQiNkmnBxYcu+Uci2wMiA5DGBaV+QgHZVMGpgyU+sqO9baNt9pQrxsFpEV1c4HvXe68A05JLgtfRqBL5O+CAvrThUnZIXAT3hLyL95GfhmikU9xu/1QEnE5yzxi6Wk5fcHg4BVJfxDVjbyetgw5DDrK7FRGFrZpD64fOXf1BhkXafoDku4GLjGgXn0hNF2s+Safu6qUaetEVk9N84XmDYhKLCqTe+XBZ+/3J89tZpwvnmu5Rvh4pOuNDnrXVvkeBelqVyUDDetrY4B8yxCnGAz4yRUBSKgggwqSixanqmv5FClwVHC2f6yQtcq4JGb3IfRZdxyy6r5G5fpRb9c20qFwm9Xrd2a24HrQ5OOjqDoaIOqPuTfKIn/Fwc2hADamTTJggJeZO2YnfbnHz/C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1Qp3xePeqR0xA/4qm5AHK41o8rzTJSmgDonoGMu7xJU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8zvDDnW+vzEb7ogPctlYa+l8Eb6OlYopp0Co3Avkj3yinvEiUvXHoM04VmGo5grF/ibDfUEglBe+rFSdGw659y1SSyrFTHX4spRWk9IOK7U3IXtrt/X8dj21stlerqI0n9kVVPUS9XL7uzx4Pw/Y2E5NJIgNFY0eedX6jl9ZnMrqNmwHccV64irhfyUuWY9aUTB5zVR/oO5y6ESaqTsAqNf8mJsvLfMac0dNpMtdwnf5heAoD+djKGY9UVdOylp7979uOn15+Ffs0YhwDtFNKQzOPaFog6zHwL3xorZqkg202eWJJYbKn5AeJn0ANAwEHj/XHObqkov9ueUzZMM+e8A7/UtONMLr6Rbu65evw/0SGZVoK+fAE2XXdLGWdiQaR/bD32t1uWm85ggRtsZYe2mqYXt7rna0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1TMIM9w/doL/Z+FLBdv5cOjOSLwy3Bv3QLvTQmB9cg0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GV8uiG/e4jnZ7XKRAlq7UCRXXaLztjcMNzZrqLL4SvbY2arkVcDxMnmZtHgdFRdPZS2AKWCqi6yjSUPyc2UU3hIQ0c0cqEn1dU4TvQpRYQPlsUhIUyajiGnlHpaXOzd13ej7c91l6LuO9dFsHUFdDow5iS3lLDnUnWry/V9sMZKmFuot+Uacl+O7WWB3nNs1XO2wzDvdTE7uqWOrlP4cfZC9lbnOMgu9NS00lKiG0MwkavGEj4mUWHwOWGIo5z1Q56sHygld/MXQY20lMYhga2bl0q5+AnWXXn2MIdraVeg4xc2X+aF22XG6V/XOSQu47qVyKq9NAPIHEPwjGIaMTEma3MdiWImkU5gs+/FM050oys3JRXlU8CG1UQIc4cJhs778eBgsi9Lf6rpKAT6aWlnYnGEyxl2s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1UNKiFOGldnfjDdvqXy9S5tVBzr+p0GgwEK+bx0NOZQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KvV4+awkVHPrMHEf6oiTbXEH5uMBa9IB7//dVUkeGMaHybL6U0pHKI+/CHeMjKZyg0OoBpgRWOfmXqlkxvTLK53IvMJQ5jEI3ZkIBI7wi3LXFgEgP+U006QIbi2FNw8ZxjnZLoLn3Z76B1L33LuZhto0uFDYXELP7+yiauzxXMXjwzk1sFXQB76SehdEK6ntsBfdfyhbSrKCknhb4x7OCJtj7PsnudGGOz8tBSW0CcRNNflWAwL1Q2EREyUnCvtrHiDH/mtl+WLd8e5xl3r2Kz2tBDe0b5Ef0VN17IiDgW00uv42J43G1llk7229BWDpNZolMDhG7s2ycxJlyYST7PCwwflI+/ToUrnz/F4Aaup7WxSXJ0CRvgwKXR72WHlybB/JN3IBzYHk0eIoTWYCjyj3ck2/nWoh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1Uh5JOtuiVjDE5soDIXFf7aw1MxKNnVY/V7jAH9O0B8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lPSXNtaJfYbX0C/BaAWN0IijINFNn28VmyBUlNbOCAcSzjTKAYMadzkNr6HnELoXn8lVJDG433Bn5eeq+EkALPbFIA4YvtRX10yNuMJUwTj1JKUrtXAOu8BN1j2je7Q12Hhv31E6eppTJq7PFFGCTLyfHPXVOZVH2imqpF3yXWMpmGLGnzq6IDYlZ0RpSvOYcXceJG5E6uxxaXzfhrnSS7Q/ah6VGdAUgTDWV+DDFUIWg/q06mTsYomFw67x0qbj2lrxOwdIrRioNA0QCYs7DF9+dLOU6RrBzIMGlCp4kuA/D9UQCgP0Tu7m/pUHQ2bRRrkPywqlXcg3kb7YAozwi4AJ1GrFhJcfwfohVy6GDSkCBSmmGadc4YWzzBv/yWp7+1LJHfb6mPO4cc2Ia5OAo+ix+YgbpT+d", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1UtjdauXlw7fslxCoJfokZ/6FQ7VGSCbb1Is6Ipw+Uc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iYN344IwTFQegZHm8T2FtYEy+iVLmkF6sOYBg8oBLuBFSMuRiIXndYGG/NdYjr6Db5A2kTivIk2VpPklQ+xGwejLA2aH7Pxnj1ybx+VLjw2KlWNfCVmOCnUTgQmJUVkV7kHUVjc8wTfk1+WrUzveMkvWyXJhnJ2tDVfkdkjZ6BvAS3DIZ/r21uYaW7vgFSqjqg+VEYCxu2XRjFTh2IpZxjo9QsTjfN9Gp0vdHxv90XJPOQIOQa9Nzzgwhnq72pCPzcnU1q7gKn35kGTJi+A3COthcR4p/x5+1kwr9HJMed30fHTdRA1CD55xkF7FLfM230Zop5OVchmZkv1y6vGqtRlS5r4nFg5HQZstyuwc2fmaVrIwiwcyQnHq1VGDDFCRqdMfQo5RPRGfE4CmTv4d7Z/G8kRgmZXy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1V+UxpQrPxI/A6H/m513UX+Rdm3yOx0UT/ZruI5bhVo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fAN5q1FAuhn3V6hm9oPsVLSMAdM6L6kKqRP9g1AFXbOuBE+S0qv8ppxm5JyydBlc1oW80cHx2Xc7uxkiJdqL37pkfDt71VX7PecASrnATWsP581W/Wet6gScBfmlS0grJYaGYWDzH6PPXTkFQ3FXNQBWUNBdpPSncWSvWiaiFPV01fJyc04RaMZPi23pwCE3LEQDMJPZHcq3WSWjPRBK229nVUZ50cilmLM+H0g1g+yY409EHRVilQCpDN1NtiSMPKqgQf7HRd6OjNTkQLvUZkcTiU4ixIrvynooTu/uzTQdLSZ48L2UIN5u73WJqtxi86ttMfWSbzDe/56nYLp6SNdCL/P2EfiIOigX8Y6hMaDi5aGY1KGLFj14vmjAeWrvVQVjriiImvQlJw2gpEGKlFV9nnVakcs9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1V4OAZWrcAhyN7dUgziH1VL+1Vfrg2wD5G0SxLoLnTM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RLInxaa1wE0E0Mxx6mf7Vh0cFm6fU3FulwHVZsp761Iz183Ge8SGHf+05ZFB082mD/aWlry7mt3tqi7o8zP+kPXdmEWRVtPKz/vNJczMZffwIl4Y79ffWqGsrn2D3d5Nv7qzD9quaMXpuD92vQRPBqU8PRMiz2WWREgo7BJSG7ljeTOtj1grCi8b+63s6Mrqt1iM7IELz16oIAakybn9FfvEikJQdcYdgahcChIpCsfJNGf6C7KEN8+dwjtDcWn7L0rslvm+nD4XoAAwc+srkb+0H4ru+e45Bcn2702aP08YJCniShPA9TRtc2zl5jVUCsdv+1mB4VJkgF3vrjTXnrODwE0aqGkpLpxmKVdTXltOxB071FvUNJ9Qma9ZnlNv5GH1zeQy8G9byYXOTnj0h00mnvMdzDtR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1W7Vi6IguOmPvV6jnl8OFBqFLgM3FtAiMeKw3d8nubo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fI1F6dxCER75wmXpocsplDFu/4KRimn9pcPvt+OU7A0kcXO5WiHXAx+5A+DqvXRKkw2wXxdHVKRpC8W5v+/Kk6pgjXnk3o2DLofmlx/4HUTu5G7IJBHOn/7UjiB8CoEXxN80ByerTSCXrhyuK2TdG6RwW7D1Ttn+xynznRITY4xRtUPC7vzgNeC4ifkMD1SBQHBymQiK58KZPrEYlSDEcSkrp/BnYF48qvsH6nXHhwEwDnsRRry8H76y5M2QhtLzSSxpjS5QTmSebV9t4zDQoXXXY68JndDqRYwR03dJ/gyleXmT14s1z/isGx97nCo67Re8J4BLprHLVTkH9GLZ9JCgbf9YV8Wcjx11HmoZSEa3BpfQefcmahLtrML/tXdOBDOIp+CbD0WtjkyWH2LV311GCN9TcR1k", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1WkZMf15EbAkJu7ANZ14BHik6Piw8W6cqU8EwVRGhLg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/bVIB8aGREXRnP9d0TD7TMOgDrhU0eK0D0HldZH8YTpcQfX7kGlnI0XJ34YrwJt1TxM73EfumWL0RC5iLH2WgPvGPeEKJUjC5EKl2ND0V4z24xMxfINbiaKXhNG5hA+AXKF6dWBMBnN2fZHgPK/bvD70OnzCVVTSayDLRoJxzSCPsNzFN8Xqors+faSC6ab7jfmhBPMROhjj8yJBE29TXJyKKpsT1ttjUswZJ2fj5i2SwUbQZWhQFKRBC0DMqGAgSKLml9LxXIS0njlyZQ4Sce7DnM3/hkvETat9yEkE4/xzhI/lVQNf/mVDQbnbBBGSGpfHBW9GaGKoHSAkiT0+6ot1LPV4C3tVnRj4gnJHv4e3NHFyjMPp8Av65H+yduQ5NuK8Em3m04BRuSRqZ8ULxhU3zTbceb9E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1WneiD4rWGX5qRg4dq1rbUk7x9wZY0v5S6AmEHOnDT4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DbGHEk3fLz8JIMoQSFs7LJkGwpQtyKewA3LSl3/g/oI3m+Z3pGUQZda9gV7gxXfkVVoN6TtjegocDnWvMb4G+yVmPa1cU8ow54XghgQMBBLhZx7E6u6k3pRg2AytF4fQ377hiTz9hLPH+ANyxG6b1R0IY/1Y4abGvqj0ytoKnxPGVMNbkkkpuLpgZflMnH6czfX3XlUiD5K/I47fcyUzDUMGMxvQ7LsXYKsLmXQucGKLnEocVsTntpLTjnuGa8lhG5/mJz5eZTykVLL5yMp861F2QIvFL376YIwPsYWTylQ4q9FhPo1dWEYdcfFT66mifdtJ+5KeuXmq1dsZA6uEmLAp3ddmkNMwbhQSvjPNEHJA/+ndHX5f2t00DB4i4FH3Fwpc2XWjRDGHZUzSIVIeE8KFuSmEV1t0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1XgNAZ88QBImrbzagP2ImjnzyoobV5YCLfmt5m6n1FQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wqEKMog4ALcyqyhaI3gMq6Orq4RA76MDa7Nh6F4MszlAz00jYPVIui4OxXi4sHRajAA5mBNiSMEGEqUq/RmL12dA2wwSSoPYuv+EwDE9XeuNrJbjiTJJCIwjN8+/C98h6KUuuopnJ7v2NrQf0RzyoJZ4iTWGE62bKXYaiFI30ZHdNgEFfcYg+2xqWhg55Nd7mFWUZk0PvtIEBWG+gv8cwuSho0qUj6Qgialnx8N7Cnz4WZacaABI6Yoy5VW0t70aa83mJRRN6NED337ldtdqxBEuGLfT6sBIhKjDgT+G3skAey5Zpi5ZniUp2H8z2P5bGexWDFJY+PzirBT/UKKeJi/96b9E8jWpHUt11C/cq3LTbykuroL2RwAMhA98sbBdN5XnYK981Iwbuvq6OwVQJP/BRLytGkT0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1XhfOY4oTH6nL1kBD4sMYbERRigz4DnEq3fT+vrHA9Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FvVXrVe0q4ucaHLz+AT9w7mSjnEUzwJfUQyuK60wT4RmusSU9Dpakp0zw/wr1ion3BJI+jjS0+frOB5oJW0oqlteItgqw7X9eMObPlGCA0/LxMJzNV6WK0jTc6npDUIf8IFTiWhv4f7b2F25JIhRi0WukG7dnlWDD3/TgDDeRqh/ctvXmPe3BpY37xrsskIXJ8RKqYSTvd0V++SvOGHIWoq1Scav0bpnrnbSZ0vZ2EWNpKBZI0q6qyNJH2uakx3eO9AL6la9ruGk+82aRqYHXu9umBQ+F5bYueehsEjXQxl2ZbPwRTiFcpzR6M2ce9VlIHJVNzrDBKSAHd1qXegdGKvHp3FVvEGQD3v/LKMStdUcbp+ayPI8QfuEkHj69Ui0S60JswPfFykar/4ztw7dwR/qM3HZnY/Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1Z4lWfDd8XSP2jMQflC/57g97SfxpqW8uzsi2tuuqBQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UJsRuFXZmWzJ8r7HaPhao9wbMO+6sWh/6ipeEYIwFckqEkbN0RyTvtMuMc1x45DJClkePHapaj08/M9v2cE98RJjK5ih9ZMMJYEqDspBtGQUafJMnIM6/l81sTsX2TJsJ54wscQ5//wD5n4xRrlHWWtdhTXDRWD4mjJXyKm7/tH5MovLR6zT8gbx1Qe6sRH9w+wcdwemU3diRxP5rFEoZRAI1YrQeDFBxze46Mkrvi/28OePl3lFMUXm22vSFjKkeoTq3EzKAK3HkfQrXvbO4at8Uz0HwXcBpnHMDncxN3561g5s0uvKaT6d6XnXEXVKOFCv1jihrBqWeYVv6yWdH153FXliZ8bw96sEWQYSy1W7KDgQRZ+EWyr9+EYYGgwYJB8n+5W1Yp5p92suqlAdWLnM6oZji688", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1Z8i5+IY7PBeoeicARVX6FFH6BYqcAwiZFAhSfawG98", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vuibQjGBzer3k6QwlapEG5L5SpgufpIzRoh26nNvio0Gddx+k6NWjUzKR3uZl/D9n0GsL0Ewua73EA8Vc1RS15KMKJbNJvFVuBUt0SMNcpPHIaaZkW6oNc5lUykoop+dGlsCygyHqKvm3NP2XI/aZhULp2uYak3Ce7qVlhTAEJXuhTXhyS2JFLG7srLb07B5VcI2b5xbbXu6G23xlWtUVchkKwgfwY9gCjj9ChBT94KE0DvDwqov5HOTNIEz15tjJqzUXdXI8woNfXWsogfFymnO5lr5EWJQ0Cwec8BR4jWeK5xVYzHkr0es+VnoUOZEyzlgPqhTNvIxY8pIoF4GwXDpulUFX0uxDbOKWs1DRwbPUxqlAjYeM1CC+CsEV5WuffMdPOapdSuJHxMTomQXOMiIK41Euprz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1ZxCRVOYYh+1xB6YkZ9ya2CpsaLAEl+I79xT3zZCgvY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VSHEgck7ibRgD6GlzkylZc/3B9q7CcZOLwjOKSSXHe6p7CEJl8K1l2BzSUsy8r2I60ANnpSuUt1lwiE0lTubbVcusE2ik5tlV0uKs74mdB8b3TOVEUMGeWbZmQ71dPF6RrPXcCeV5P25NOCdgiWclfA3UGVFD4fH1Q2Vns41VNnCTDl99buPB16kWLVQzTLxFxleNoOVIc7a2kBpa+AXPQGuxoOUTfh9B5qehvABGR9YFodOh6H+mNUZm1DY1ipi44PXx6B+1KISrSx0PBfJlmds5oeSSdhB5TICfyqsQmu/uZa4EaN8Qxtss68Q3NbVI3smqfsSdV+xYlt3DwNzt2nSLqXVv/+F2lQA3ePFgmfaoD5ip4itpI1FpsX7bhlLWqdw4Rxg0gpys6QXdpbMwq5YrH0NLGex", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1bFPiJ+fSp5OFLzRQSCqhN941J/hsbAe9qNb7/eg9og", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7qgSuy8c/hNUlX4pYBZ59AzHeyh4/q0Em0n6O6KAZ2wHtepkGlowTrvUYgpPbBUO79BHUjPc1uL93VvtDo6HQiFZAZ/5n25cwxSZ7tUVKdpHOhc0cswUJW22l0rVJfMM911tibUuNmS64i2/wMmwmZ8hvnzBIxneY9AD6g8Ep+cNYYVO40GiFX0HDh+0Sl3/aLalGKOEWup1+zIW39zyKIp2pMCMEQDeHj6/NxxxbnKfeBTQ2GlUddXZ1YA4sz8rqBQMf8o14Mt0DizE7MC0AwWzRIfFuoibeX/mj6h1PQJVNGtHv/1ymJzN/464DzAvwERAPBFQFhszjpa9pFZRViBCQaIXT+D+p56Lv9lyzp4+J0Ho+8uT7F31YNcnjJ+KD1fabQUmSG7ETgYHQpzTcElGUij3EzMW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1bVSNoej9GmX5QwQ1cTJt8vRLSm8OmmmdryyaHEntY8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OO7TXyz3Q7z8x4t3jAzY4gdwCwM+02/46VscojDxYwsGRXMn6/6D7n9jv60M7VxVtT1fUHyVgg+ItcUmIp21bQwcUwogHGwmzdnNWtNz9dpoKDxOkJCK2pw7KeljdL7g7VfMzTSnKKVqUVRKk4XZwmGmn/5KsdAEm2j1UbUzI4qgxjjSCmo5mDdf/ZM5JT0nhtgvGQKr/QbhuDG4r7/5hgXmHXiXmUnUYtgnK80RQBCYo8XXqu0FPNeOiMXhgclIKOeSKw+9T84R1Qqf9vdwal9o5COxFlEIoX7A6F47UMaioX/CMsT9PtvNsHBmzhSZH3slT/E1jTobrV/7PVNd2rYWZli9iqg5NkHzJ3qeko0Z9UYW71sbKvW/K5ibX/85GRh6ZCemc9OgPIhXFMiVePSIpFXFMdCr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1dO6LtwGJkOx2BOuIS5G9O4JNBxfXALdNk/+Fqxishw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qlhVBD7GCsNe09elLt85euKSaoqNJmleOr63j07mQvIstDZ7nP+OLF33HVw1juCawcmhtozKQ5nF+fV19LlHDcI5YQcooNwyqAV4YzXSljdD2cPu2h+rgIT/R2Iuktwh5av36rUlrs8t7pi62aATuQZ52QfHsIKTThDcp0kSDl2qwID1x0zwfBKAsRLGrLodlHGoOE9sXZqas3ZzRIKW3Doc5Fx4VlxmqReStYKa4AYdVoC76DLnXdUBijpWHBhu6iGUMV+j3mBifyGuyeuOzxx5P56bpkB6nIBcN8zImZnlFbfLB/JcEoTiDcdvEkB5c20KoqZ6dgJLR90fm1A5yB4Z8EFcznkbOgdi9uBNYIjBDiQ9B7TIB+SttuTJNWLBWe/LwFKX3mfVqIjN5F352X43+QQdn3el", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1dgtdrrhpHB0t59yVAWUlb0ePreBMZlQavOQ9WPOwGY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N8gIlU1KA9fZ6pmEvtBiVkG94VGjn7X9DK70Y5qTl/0uC+q7ywetLw6bE6KwwJblMyF7qhqwHvraGrXpJQX+BJG0kmagucXUnrPjNN56Jcxh+gEgvIK97aDKUnB3Cdb3newJBuoCiSoKr+gumTK5BBoscg5iBySR7/n5ZwSqYkUDAyMSyyW6u94ktHhWst+3VE06DH9cLNgnWZspdYhjE+D4lAiQ68uw96+/A2CNw4Z68xdjiHQ9UR9iMknaUWk6FfWul4z5X8INAD2dNGHzaaRrJ6p5mkNefMjapJvxxnKyF++0WfB5XMunBlpxJEiPf6N1IHHgszPg89Cck4y0wzu+f7rFumwfTzVPAzmNfUNzrsTYevde193wntSIoGrzq6D2xfo/ZooLDjAK1rQhsrrjAP1x0P3y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1eAdAb8piehsh2KAQmYhuzIA7lazsXliTvghf+s9fH8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XwaQfnhfm0gJaC1I4XhZUyQAR4+D92Rd7+htswfOd8QGkm71BuLlEhkFk4Bt845m7v1EfbpRhwGKadYhED1n6CuOfnfRYvjbS+MS4soEVXzYcZaouH82l31d+9RwEpLwW15QfX1cwdJrhnT/CitLpMWxABww+5c3CRpV2Ktpcn6Wp/0IiHdOerRRogMD+qZkNpWlL5/rDr2t9xx1pCeUxjxTeQg04/aFLTYBM2YKqbtugA1rM1NabXOdKnKYWRnIAwKeve1hCuCbZ9cS6CJjEoHQVswuSByieLgrTXeBVCnv6DvM2zZzxV8kvHdGx0Mloej4fz9J0oHrcpu01j9lFq59TuHcoJEPZ8qUZ7r2tTrtkhcNFQFyOwB9voSCumjD8uixmlGA88EfvMul1S1R8D06rXwjh+zx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1etieII7ka7m0fuoSaAphbffi7pEIx35RDzEb3zL60E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x3/r8w7C9HiKR+Uuo+Myz3ncsBroo7CpkbHPnZ1pB5hZU0hAzF9cwIiaaS3By6rm6RcSRUtyB8870JkcQ1WUukqtarqbMkcCVquZvwmjFtrUDuWmX0lz7UT/txPuwtblzzo9A7LEk8GnLn2qgk9MvArDbXIvQQlz9N2hC1+YU27y5VtE5Vie7Y86yNP4CF9YpLAhBb17DVy9a6ab80OPk5iXXjk2Pp9PLqOhZx5ebYNaLJWF4w912HZHmOmr+BZ/63y38B6x7T7w6KVWtA49ibXhaG86iT2gDQxIdd8GPsGHKbE6QfmJLcZ1P3N/lkquriJLUj/wHa1+Rg8ZwgVzraZJhfvZ5Z5vXRaqIWTWjh8UrX5cEjuJoVH/E4XRoOKQmfFIIOEtfdg4ewKPXT8peaUyjjRtstjM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1ey8BIlzI9zN6dfm5ZhBoG92BVAbRcSZCBKgRdHaGF8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uOXWeqTzSU58Ab4lBt9OxOgrS9noybao85T5p9WeGF56sGkyY08Jnm1aEPnsTzEcHUFI2HZUl29wVxASOUHVsAdZhXGHHLFHBYJJypc7NGmHhlhg0ML9A3GRVwLp7dv+nVBY1U0f8/DkaE729qKlLe88BAKKEjK4H1zsIhtjH6jJi0tlR/0m8oQl1S8D/gcGgxkNcANEpkCsueIqsmqfvgeDOidWVfo1hDMWsi1xQ6OvEF6q0+dwg1C5RkjDQ6aBKgIHvnmk1wauh5Ugh7hmhOBfoeVOZpdS+/lQ/3v+OhXPFHuLfc7n9V0zF5E8nvRBp3Vdz970mQ9cgHGc12xitZavFrPzUH8g492YUf/dHE3tV+PvBZaeNVIdYPlZ8HJLMiJ7Sb+iaSbs9VT7Pi5MMDbhuid9Cf5Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1gpkbrqhoeLKuqsanXYw7eZb95cTZCGLXKLLTXzwoXw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3be++8eKxji2ntXnftJWH4oW2Jx/FQ0zk/9gy/CEON0GL9bEEaCOjGZfdoPgWM8wnFB820/6uhhpre+I3X7jUY6PMKaD9F2tJLz9Xir0G1SRSBfZWCwUeFHMhfnomunJQJZ+Tr85acgBsP0VIykmqj6YSh4EcdLT4G/GORiZslewutkhuDQ5sGdqNJT7VCBjeEu35tADLKUpM5IS1VHkNeeQj1jvapZG6D31F1LyBDzHNdi8SE9ujh951K/pHteyaubqjTqtFbnZrX+GAw4x/EVyOob9RFRFJu6txwDIv2tKTUDd2EdIQbpx6cSw3BIDZhW/F/nNcotjLjCOC04rQS0/tX32AWLQYKIsY3PwGkmVhrVu7xuJSBxz/JPYd9bTgXXNOIa/i8DcOnxpVq/61Am2f1OY1swY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1grItXHC2uHjUxcufAaI9zctP5t93p/4A7woid8qla4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HZYaqyJb6FaMlB5PlG1H/VqfV+kAeDBqOfwuokQovmDeF2OSkc6YUtquUwkWotqqq1TtkEO74B9yCuYWKlspPYXLuFSQyaly9TK0RvdfMNSU06bZ9LxoqT929j4pc0wTHoIiN5SMyb0WDqh8WKWlGfIwL6qkRTbu0QwSrDUEKJlx/21gLlTIJwmGc8vtxpLZKDD6cElO1k2Q2M6Mo1R73tT7oVUFcoXPfu7B+NzBcT/45nEX+8W5CI/Ih3Av9CoE/evMXayXu92BTqctYMI4KHB4V1XEBBSuWgw6Dc046RToOUTwjjszMr0tZyV6SQ0S9oznnz6rX891u+G6W4N3vwRjv9OccFaO1yKV++HxLU5Q1KdylMVlNRiH0Z4V8D8mmsTXzQV8yLxS5qW9XkwSN2bF3ugQEdbg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1hQOziD6C8bufPUHCNtq1twasOpZlzLQZ+GGPYhULZc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "D7SuoQGLFZskKXMBKtl/dQ458R/tEVUvLMloeCgejyjyrAt4pxXu1j32vYkB3BEqmJxhbLH/LXLwUOJI3PBGND+gAgvFdYxrxM9MDvVdJm4OM2YzSQtfsh+2uS0c19t2ItP6E6YBB1ihOCtYKN0TfA0/3ue0YN1aiOSQZKK3wor++0oxIbPhFRrflDWYN1xm5cBsq+P3GfTZ+9qWHsbAXojseX+OCa4dY5/1t8iuXPbOo/jhkXA1fj5gMrM6+TumcfD379FVJoJnzw7yUCaHnC0fBQdrEFED5mycxHzz7PkNEB4EYWb4d98Uyg+iqTbrddg+i3v/P6IUd9rKrCIR8BXWZB43xJckw2Y11sLVJU1NxK5zBLkKIW+JfNlkHhP0Ic7FgO+OeLLy+WbAkhi6nVvJPwEkGcOE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1iy7YCYzLkmJUeb94ver6YAIsbEVNvDY0KAhoBxFOnA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ft4o7cs78GcCZ9+I5D/Po1/u0bfTqx/iG8FaAc5PUtFXykxOux2bHcrCFJvGmAtlqa6RQ+v5NaAxXWUZxowK1e4IRzkTkS/kyOaRTanETTm0gye28hzEfEpx9bFKPFLMjbzASyohoRpwAPggAbpu3zg8WCie5kRlFxWIxKGxNTJ8BiaAOxWeVyxrEbz/k8AONgScwjkDgt9qmB966TW04cJkzdsz7RndDGpWcC+EbeDVbeGhBRoYNK+JSrHjqKNmLztbyKSHKIXcOvvcUAbSxu8RmWbFHdwmK7BGOEeJqFHsCtTyL3JkHsNrVKAm8JbbPNVJbPE+3liQy+imuW22d+oJz2a3eivgmcuaC0t1RGXBu9uIijqGoLylvryN7JqJGucO3EPNAAghNDV90luZoYqpUfR4jyDk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1kRPzE0kX8QHOOkv9FhspB0pg7u8ixFdfYtVWG7yQrk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v3baJhIeSCxqJh+eR8fj3+3ZMr3UbGOvdnrH9aiIOJtypdp51nGD+lbUwSMH7HSa4dHK1C+ABGp8hvwIFOX3nYx98kTHjhb+BoxVK3b2ryDhNqpZOMSkEzqhTXMGaVvmz2IhER9UwEkffvJgxkhwC8DMuNFd4BjKn/ZFLMYEj+z5ZcwAkcwdFgONeUz0+bp6ehm1uFyyQSF5IIdWtHgDzg6bgjKjrSiZriqpWa9pdrey2buja1B2/bruSuTPdhxq9RlmFCR2ylaqbXobgUwz26pY/gi/f0ZhPTX8zX/l56cqO+l/bFDE9TvAM6HFWNVGJOeHIbfO3miVLqmDOC3SFC3663JOfmypdJ1BPm3QZKQJs8gv3zCPf7ISEd9utaxse99ZjeoE5L6BKhNIqvGPktD+vogoAZX0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1kxKwqoUZUQq8hqs7NM6PZ8Ah5oSyyuV9HB7hELqA+Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u7x0z3D/8/xpKCn20Hq/DFukelmjhQKkGofK1twpqEbTjp6zx0RABF/3whoNcm9ZLTwYoeeqmQgWeOMUL6lrj1zxPgLnMkbqUYYqgSxz2KGrkYlBNKbp3pp3EJw0OYXoh3YZskxpO9c0tk8m6/GLS2ItneDJc6vOJrOmgNCSNHgRCifo5JIkc/VdwE+4vNQBwI1jzO3UR4SSEYkVrp2CH6zzuOzfJHoSz0AoL5UfGfeLHsFRIFet+AayhA69xvjstlm3B+lJN1BWhDrB583b+13keA3QfDX2gLAI8RK4GBuDDM39/ozniHSEbR7UOd+e6uXxnIhK9RCbrZDl2hlVWkeeXVTm0yY6xCSZCnknyvWnN1xyE/Vx4gQpbOCSnqtecreDMxsyw1wMiQbzzIpaDU4HUFWmjEpi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1l1vXiEKI7OviOfrLBkqoSspNf+UyF7e6jRJd6RiWeI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y+eqxU/B7Icj61JSg/43kw1asL42n4qp0G+3WRQc366HYKnkRKZ7jCAukLQmcXl8v9vkS05EAwnU9V46l5stR5ZtenFPJyul9QXllKKcvkBJk42qPltykzIY1Pdl5sHF4hj5yypiPSt5/AHF+ZwrGbKGfTaf6Jm4f7X8+Kqjz77reiFqEfBkTUWe2nYVZOyCVNpiYEC0CfngjGuAzVKpqT9aqMVx2ChSgrlok7CVS4YJzdJbww2bEENYlbvqwZmm6ZkpqAHS85UTuhOUQHjOeFQr0n9abNkpXTedzyyHDF1el3tNbvGd09SgWuAdqxB5wL842OJ4fwgvRZAMrtaJwEX1JnxTXuwlvrFWwXvZiLb/SBf6d8gy3pM2u0akU7qBpnwGhVetKSCM6RjfHKT58R+BnQ7yp6hX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1ofkAPuk4KpyBlVCgzOqmLAcxf0H1LZIdTs5IlriMXA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sayqrMdKE3zj1ekbLcyW7Gk/3in0Skal4uTZwUwLZSfeGkzTpvXZOmBO1A/d0BpafwC/id7ZX+/ATYhFMQEjHvtqytsaaRKawcKFEaAVNYfEe0Gb/l4fWml7hVRbpIRBtK3GTryP68PYuRRRmW9ktVsCdjMjL5t6/H5H9cgg99i1DK0G1JpcvaY0XhWloFvRMLOPBxPtcTKQaeoIUoqpTR3Ut65V5izcdBKlEN9+MorS290gkDMl3zuUf6WGNWjLFauI9JflDBDsv7if9PyKAlCG13v5Hq6AELlgoifJO/iMzpJhimk4yfubj2Ns5OZJdEEMvajFtmlx8c4gt9hyUeM6nKCwP5n3EcsMqiTZI92QNwVGkk14534UdDDXM7sVDD0uVUwTB7V48zeTf+JmYm0HA2o7RGE7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1rNCEiTv3R8USbn/MQmoMd77f3I8OIMxH6yVpGtIUic", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JWvKclXzBWsDBrxAmFG3CFNbTj+k41NN7VCDCxdLAvmcHA00lFHctfLkSmgK4WUxGxrSLjR1XeqhGZ+PQt6fI15lo8+xS9yOwUVwT1BiD7cvGoaKwQ4yJiyK+SnhPQillJVmfhkNQ6svAui5aMCiJKrqcoP4dJyzsj4JouQhnc07UreGihCksrsCUUymI7yEfHC3wU8oNEdYFVMm2WzHfqsJKhQ3KXCdmRFI41zajPis8lliB4bpwA1w3uJTNUU9K8/yjnhYFLISFeKmtOUmhasS4DVCJiC7x51C6ZsIK6CURetrt/DRCwJ6f6qoKn4lEiRP1rh0jhL/h8eYmq1WWkczLPo47JwMUy1n5uugRLYdrk3QjUoJcYFiVJjWV/gepgt9Hy+3SX61mIwNYwGufl8AZWWDuoA7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1tZ+9aYTkokWct7cwLo2l6+U2p3sOJWjqAkn4iHYOmY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ILvIRHUoAoKW1Wxl/RF7fq1+D5Fi6BAQfdNU6wzXV1ylAU5a+cv3LNndQmYlMId3F+t0YH40StGKvP80tBo/xDtIWNyDdbKHnfP4i5vLIZdHIcJE9ooDmKDJMJixU3noroQx3suoQBK+OQBDEe371yC6ufrqk6IMDWRVuFAGQkXHjjkDhLk02sHQo6Ml5WHcKz7XMmDtyvoFvwGZHWL7WPgrHm07cS4LbKAd3DYIrPWLpw0n2YrEk3R3QAuPJZkgj6I2RdGjXWQJqF4nQeEe7kO0jJyuSpPJY3iwR7A0/yso+H9nyt1KrYdBh3a6AIrySPBnJ5DOcb8P1lBSMhD2nWPXXNUocFdULOM4VBTtlTY3HjE+DJapHHjEB80cn38gSFxpi0kRxlu0SS9gSWY2ZHPJNbDolMng", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1uSD1IcCzEZk9QUBL5w2BXQn+s1jNi0frcKJDtnTlkM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pI6Fc2jGVuw4gA917M8WS6/nZweYqNZXbS5kEenoRBDwgUZo1m1DOsMwjIGsZh9dyOOQKRr6fOLd6cjCz/Y/fhJv9FZb78OSZyevpQ8Lr1l5LUUkd5zHokFfj9K9U2lT6G3RQEv+4MXLh+BDkjdnTM57R8CiRLjOv5KaGhqHM2pg3bBunXgKNmm8HP4PGsWhizpGZ6JvQASn+cvBcFsYK6wWCgUPWqN+sWA3xw3GP3R6aUw+oevdQGAk7XWQ44afNOLL4eV08+LNLA/xiBRLQcPqvF45ePnYtIt5T7wAIr+zzD9+zTs7gAc0V7cwsqckcNSvLYG2oYWX7uYa2I52MyI61P5XhY8Yk4kOp/iQ9nkJXrH7c7+oS1BPARoJS8FucEwCbEYb0n6uWIjZ8+1QnUjgzel7aFxX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1w4i/i2YRPxXXUA5qYkXlvAaQYakNb/ZZeMOBfrA/A0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X5qhSHhEbV8k2RhY2N7Z6cTtHxfrOdW3SS0IVfW+dCirDlRZU2iXohBsON3uqxgZwPkc0vI4B7n5UFUjPY+3aALoOmWs+0nzq6+qEKzqZbrOhnKtvxEBEsVTuuAjeG8lgdh0rN0Hbn9UEsS/8gz6WFr5CdV/qAzb+QUJ2dT8yggds4SdlzK/VpCuRRvdn4xljNq4j/AVmrJgkiyjATxDFRNSnm34Fx1OhhY2A3WNcLFaL7J9aAp2GrTyQilh6eWlFLZG44JSVkTyywQz6VVCXPyXL7Mn2qPqV8GWBgodZmkxFTW1wLWJI1gnEmHeViXvmSB8Q4ssbl8x24Z871+pEMjEFwAWMVh03F60wWg57T4vkbnp192Mzq5x0S+LnlMqpp7S8oWNY6Hl8aLAy0YVMT2cIAw1yRpE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1xBKXuVNb6vopOX3tSih077815qL+X7y4DmflCMRszk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LGBNyD4RzJZx54SGEfh0EjZ0zASBk++Cg74vI4D3HHvXfS1aOZknpA49QGSH3MUbTWsZx4khpSGuMqTYkz4Fo/7B18VOTEhmyE3mAJGh9yDHQYVvXLKVRze4CXAgayr4akIROA9WG5tS9DjPjBhFmoUvMiFCdvvyU1po8KdphDeCkiq4E4EjWlykdKf8rDyeHK7QgVESxSpBzgP3Zq6+AQm+k/o8HWK4vrvIRJSyjrmXo8YweE0TIQ6lEJvUjWE3rDwZh7P4qPTAf2hY9VhU5CRwnHpv2Crp12SoncMxl4NX9+OsfkfZ61cUWtwF/ncZxISpe5h3ZwGrD7iYAqf4haJx2ocrXxdfVRrTc1IQWNz/V4DOMo+axyk6juDJIiOj86WBR80bvashJXutFZvqL3rrficdlMzQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1xIva35hawW4yqoxWYCOB7epXoaZnEUuR+5gKzE1VOU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "p5yyEryLsYSBahDodh7LreYAVe5QNfqecPY0g49FAQXPMdpUFyqbwJvSUvhbjk0O44HwBwjio0Ca+ZrAxtbJf0he28xPu4NqsFBvVhRUWo3aS+1rQyB2CvkdvYKqde9KzFknjD0ctpkEbPTjaNS7+j9rzzrgT4VJDxXrgYnUCOaKkh2rdGBoHtgSXUaQHGYrAg3MdfDcx2pVIRGWeriKKZfF+IWLnq3VLlNvJnIV9sJq/tnsId1O27dexGWng5bmT7suUtkqn+ZR6C901mymPBWaBqcU6dlclRovLNcqOWGQJfJPqdxwafr09clsNcEUQAhyt1xfXKzA2Lz4rV+6kmVydtgkfvdBcLcjUptVd2qcTq520+zodExGGvFz4V/3R7darDiOIt/i+bUq4pBEg2G6Csw78sPd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "1xLXvvhAT0cKucsXpWfGuS2bQrfleaaILveLX75np38", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "srTGW1kbuNKPrzFA/FX0AhEtOG9eYqt7Dna+t8wiShy+2ytrtm97u0wvrEUbiZlYl+zH0hRjn/esHOM2DU20oF3P2LKLTDGuYYtK7Ns3vu9TuQh+9+o3E3UXGLcGbDjMs1KX/+7ay99XdUcJZKPl2HlV3D9K+YdAfmQKxVeANqA7KuZvegXbfbw0LUhVe1FYFjC06r8OCJZ3msnz/u1gZO5E5P5zYU8oaqgbT4vlSsH85p5w1UVyvObZf1xRI5aOvsGzQsda2Hw6Yi6nNzMGjHZovLi2TavP3ZkdIOr/PTEyHH8YeZZX3ID5s6inE/r0kdOIdYMxCEoL9hjBp4AwILxuaXxIfYHA3ze7jQEv2o/hTaQtBcufr/x9GM6vwjef8NG3ftWTYOWobJ8DxcWQQD3IS7SwFdT/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "21tWZ3ekuEelGRD2+DZvH+nbZ6XpV4ll/0RraUf0CN4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4Z1bjvz7myws5+cUF2CkISsfldyAsiFQWNwhtWWExFMW3zx7zt/88wS0uksAiVIzaGCvOrg7AxOCbWaqyzERL1S3liavWBVtlCrwvNK4S3bFepQAeA7UeJLX4UsvptpxVVdf4P8t3pxzd3GQa0ZR3n4RSEz25D1Nplnm0gK2RUtWlBN8sFId0uBvCyNxDWLuPR9kQWl/DwvCaSxmdAdXLiTE3XEjiKzxOA4bWTh0QYpsMg16Lknn8aXv4j3X+d6rUYEYQKeFJGATnpsgDRunTXXWCSq33SuIjmuMtkWsb3hDQpm/ytEcRPFRk36tmTX+V91qNhwsIYGm3x8RAXZLR4lP/9mFMiif3daVoTufyJlXvi8S4QSyixg79GQBMHvRvp8AwEyR2anXbV/koJL07eQYU2h69/It", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "21y1cB8ThZ2sQCMNcvr3Dq71kzbU/Wu260o7/Uz/7Bo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JC7oiNWS/9XQ8NWhD8kOduqm5z9j5oNREGIembUvvY0I0YEJqoo+q5/7jdJ3M6QR546lYpCJBFqGif7B5pkOfLOlUFzzsIh04xzgnOjrU7V2JQc6Kovr9bDkAxhcXIuAz/IXITHC4JoicLXk2ViDsTo7b9rXi3D4YBLsKRs26NZnlsMvIMcX+23YAtayi777fbT7d1McJ9dKLZeqYZkU+BoN+8Iz4syjQLv+4e/gp0dOzLt67QZ4swovtMjpxMmoYGPEOojDX5d3nVyBCXvIvds9KfbHskZ5ZoPflL0V+GPgMSZ8TIERpG993RyR23PtigvgYnkC8OJxPkV6by6AnF2d/kloWXFaEv8U+2nmJs/O38o+/QI/gj73PuGGt/5XHplY0VHLnD1mp9U4zALJXOaY/Ej27xFD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "23titVzGqIR9nvptrB9udXKGvXaR2xjRyzRt4Be8KLY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZRJD+VBbWHfj4AW6qEIwgZ2Co6FE1+8EjQbl9ko1BkO8qEcU+XeRrH8nVzyidye7lfe54JVDGX8j+LFfgYAAGb4jjUeGKTOPxbiWNPfCDzR4kgHvv+qooOqPU1bQhrML0kA7A6zSvDMWIqRRjeX0695iZ2wUO4eVggRAT0IZ3Xdf+yjs3OrCHbgalikb4QU7YSB6GXsQIKn6h20CtvY/2N43rx34AcqUcpw9dGsEudzu3HTG5bDBaiUvX6pME094jAP8YkBXORyAPZCvu1v7NZ/YpLMS6OI6HOfsy3/3LnMK2m1cGIh4QfcfpXRUbSZYeMv/Ae9Bo0iXml0KyBUsGwdwM9WmzTK6D8O98GktRFf60ba2n3VcgD5XM5jQ7wGP6ycbeSTBivhmdQc8kXBJdejNYghYdDZK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "24Li44WOEKhqVubz7wuCkQWHR2nxoz4mcNaWOycpWcI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "n+6shUTwko1ddsJzQhyLOUPiQSIFR3sM+O8XAlKJ9WS0o8v6e5ClfFKep1rxn2qXDn6aWCx66rqtZOwtA8QYC2ls68nWFJEsfj8lbXcj65cwOytu635h5IDsDWZgPH6a6nd6lmY3A+oCBlQMwudvnbrNeMWFUqAc1VWvrbp5ERXMXAb9d3RQ5pkiixgL0/5ZixpOH9OI4V1SeFn0CLhZqy77R/tqguhAsi3K2q/SvYTO9ROctuMflr5mrN6Ipkm1LCATPRl5+YCWMANj/6h6MS1lnr/viNDHt6w8Qt5LeTkLEj4rHBZZnotPFcugjFcQ7Qjt/Tu6acYY7aB/7AXJKIH/Bk5qU82kYvBYIWxu10ppQMgMC2sw35YudkZptanSO0uCTiPXYtHEOdO91LX1EgQMstLw2g/3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "24gEX+qypKsHTRXTFWVBF86sXHpgQDjoi4MhPQLrrA4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0YlJhS/Q+wwnIwe1YbnnxBB3U2fob+1dG/IEBNbW/zQfFfJjU+1VUv9FKEVi2a0H1xGrwqDHJmOF+0BMiRbqh4SN5pgb/uiH3PzpboljhgllOBnKpeu3oAkMWqL38e46FJNGhHbGvJlYzMmGqqx+LyEuDPVEF9l8s49u9TTKD4vr68LGd/RQ0YLl15XAXyJJyS3sFtASr0rDqx+hGsjVoHGyIlPsSQhJF9Oo5qaxAkEpoHeTSN9Gakmfa3mBHHirhO64s5mqX+CIKKA6ud/QSbKp/oh5kSgEcOKuPMPwhR/NW+eFkoK/nHZAO9x34sSLtZqCz7oMffJmtlydNbwB/ORQckcRRv8wVqTKpESNatrnYS7sJnnsZ7FSIFvn1grdtYQVNTB32QtkGwppEL5ZOw7gI87Mgsud", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "25tQjhIgBXD08TrskODmcmCXxBwacPRivUpwvpev3x4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ILBG5Wf3TjN+jw7fQx2/kEOcrHSaFhX4LhlyQvaBF5W0yBcoB451RRLWoWYOxvd7yaDY9JZQ+Qfm6Jn51NFNZ08LrlBB2rjDPB7Ik2G4rkw+hnYISNXhzf/FpzQnlFTsRe/wBdLmCS2+Q2slKTMZOusddGciLAaB49p9iuG9NC1fEbAe1ehI0JUOyGlujUO0ZJzbdhLQdNZ1w4bnmiCWjhHCphDrgtw95wPUvlhHiuYCRHrDdf2y53oPG9aPLcP9RULMUXw/diFz2ZQWvpfH97ruSuI828LiHcGKP78HPjSnxl9vvGncKfu+LtFIMGOH0aYYDLiKJvbRLegrbhC2uieBUNnOXO6fmKaS1+bqxF2oG16+lXxmBGklXGTYKd3eTSAU9a7FEGLzgCxBLhTXS7I+cx+LivLR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2666vgpeE0lPvg6So6VrbRrJ3SVh0gdXR1NaeEZY2Qg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6wxPJQcrWtckB7+jLCSepnvyAOpEw0QUQqz4iRG3l+Yu9hjRhr2HiCm4rr1FMCpwUP7kCevg9clSSNkkKOmtUrEHA1IEIqcaq5mbUHUwjB3elo5E037lwSyqH/5sx+XYbEP4gFx1C9pQh/XdQaJ6raCi8KGhF6qz3Xs1Qae3l7SHDOErlG5FW6FxZCw4w8b7jtf6syx5j1IQipEdJ+yCtPYGH5+9b+7YRxoNhwEHUcoNhJWngNrTuHC9a0HrZ08HIezNqlJdQHUS5cxbWRIDCdGfCvvTKRpXIkHpTLrfeXUogayYhZ+50i0dgAj46nkO9fNTUprW0EQQ90fKoqycijGePNVIkY5fPTsmJO1nDlf4GkdOglNvekmFMKi2MYceBnASRjnR7geZNcizmJqy53RJLzXr5mOO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "26QzOWaYIQgHXpsxcAtxnaw5JXPL8NGWlqfe52XUCj4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NN4CSijsLEPsDX7CUUxtUz0ALe9QIlSGq0jXlFqaPwXD4pElS232lf9+etY/cuE8PK2zp2dlBv7UPD4aC5HbehBS+eawnzbABlAQd+Qr+GfdKou0XZ8OnlNUL6WRB14RWt/Od3ENvkLk+dS1g16zpmvyiIBPvKtve1HbA5yhq6zHVExAjrSDMJruS2N7OAwpMXb+qepsj/2kt2+833WXT1We7TMpv+UXz7oiwPHFQTd3lbnjYMR0UNRi5Q4rGm/iRXRffEUhgevsfgmCiykx1BY/K3+VhjDiw7OAxCJlf8U7uHsi26BTW/JfQ0r/WQCcu2D42C0c3sp8vbIxawpxDun7IhT5pNExykIOVCCJLQco6KWMqujlYAgGibuJTYsrIjyYqlaOudPKjPXkljbJVuGgKPxzWiRU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "27Fy/KurN1UOHwcKPVhWwLRLuH5r6sxtMw/HTiJs8+g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m19unJ+UVJOgeDmVFzWAYMBOuJDCfhS1ax6PbHrvP3K3e5eogMVXjelpvOMpveoBzDXG0ZsxcxeUSrgr0tEVwJcmZ8jcVKrNV8184kg7yBZTZiSHmXeLYdAD6KBBdT79LKWQEeL2vwLHxFBDoqikMFlBIgu67mpe83e0kif+xN91nDkKUVb2nqNWve3YnZULHqIka0SndTP9kTgzRujhhOJLPDRzDRyxGw6RvUs09qNs+4zhUNaO/s4QpDqXVBYlUbKACsn3pg6DnCtVcPREzyUU1MKV7NA9xPAzyRV+ScnOngjdl2SAZ2gkCiJiw462svkUbe/3oK3pE16rUQpuzRogOtmD52nnRIOTj0V39Xi4M8KAN79vYqP++IzqTdrkzOdWgkRsGON9PC4usLYZtQVADKVGAMV2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "28sZVcC0+kWTy5MA49Omy8dQgXn1onZdtCqK3CS444k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CkeFZTLNTYXQCJEDRbPrIMy5cPRNkjy30ADiahyODRoUL+6yhwU6n6HdrbwuCdqzS7hOTt0xqrRZUd9OWfYC7VhN2C5SKz/zboeoQjlsYPT26+seLeCt46dWfnxkS33DSm34kvNDHtoAhfBJyRilCrX+HFsB8p+LXRjeyTn6rrfLBzIzcUnbWOGDkG/RjwdkC0S/5x5aVpYmxYKlxqAutl1/emoZBzfpO58qWQA6tNJWEOJ33FjLTI0OYFCCpQi2COIPYbHmhLlWm+YuEZubU2+1liofbsusty9bb8XZFqyRGX9zTWrBFc3NSmxIiGcx/e55xUWH/mL+wEAmNb2RjWPg+VhqovMggbAsQi07AZpaaSYkpk7m02PQ+LLvKu4qB1TH0UJMA8d7HPuIJBb4J+Pk8+iJeWjj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2BESEdjK/7VEUMI+55SsUG6uo1WUKbY2myc4d1UyeQM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QmykHrHArkcnWylyBn8Z/aoMLVX9hCoZJyXg3IUx2ZjEKfmbXRaQ043PRatF3pAHH2rExHZBnCiHt0pCBk+PSksVkznytiOef7NRnbZpUtZp03X6zO2m7RaPcqqYkJd2GQSOUMOcr01sIec/smUQjkWnk0Xzq67Wbx9vk1bIs725/o1VDRAiWJrCYiIvY2EkOPgW/tsuRt4vLl36ChpNtps5kZQv2uN47cAWPXXPqxoY1DhHELRHijZo3wJ5RLRVzGLWS5DB/sUkCS7r9m/kVthySm+Pl1toPHLo+0c4uE4YnoqtYhL+cDM8P4Pg+Vq98IG9PCKCqTYTeHndRQawgPoJXiHb7bRYzETveCjEE8wqMz5k4VZqUnZRa24DqFZG0Q1lh8BU5fuDgxm0gYka/VYkp9MwELXa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2CG8HLgT7s75JVCw6a3SAj+usL+hFoFnkxRs8Kl7A+M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "45P8SnRVKnlJhawo4xop92Gyc3LVnZkOvH4lMpgrBKxBv8UDb9+xG4VcFMZiv90y/6K1Eqreda9q/mrAb3QUs9S7AY2dmr5B/C16pHPItLBncuSTCWjsO0cHo/NZ4BKaDB/HOTJ/DsCpjaB1YVk6NXjLDxG4mv1HziTZq6sa6Xp9GuH0csEEIQKotqzkcYwUh79QxG2R2CVRL/bNg8YZXxRG3SvH0tgGWgmNJakGKA3rJatQ8bqKcABwndWFJaIh+Nzl5LwOc6egCCYtMH37p+xl27FVmZ8Y7v1u+IxEd0ZfcpRbxSUiCu49/RXuaQvmzYPyu6STpHPlKQemi4wnHasCsYt64kbwncQro53TjHwo6GdeK+scGNkbt3cWv8IZ8cmTvCzRI5hupppX/HMfEHIYz0QOHb4e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2Drtw7ffyyTGRXX88jvYQ8Qg1jC0Kg+xr+u7I7D1JLM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1z1n+6Ae+kC8Ofxwff3LDVk9Ksosuzb+CD+mMvrBKiRXllzt7mI/GOR8ATGkqtBxFufCEv+Rai7nABKKpqlHF/ikXDo/EfdSigitAxOLZ89ouFocViM7EGbgb5pk/sxR7qJpB6lDHBwRRAeKFiWVxBWFI5i3fJYk1hsncVT9CJWza2fiUj3TDWOxSLJcbdGSf/58nz7VWvuSvAdXig0Ly8knSOuflyg20oYpI7R0Lowp2kL3Kko/on/wiVeUMFQB1xu1WKPVRF2v7dgicOTA+bWCxUOE1VivgcEo2L/rXjUCEGNCElDU/vBQw+eWBxQoXEKDSxB6Z/9f2XZwvDWW/oDdj3qsShXp1vf5qLQbtWx/rFSWlMghOitlaCBdWLF414/JM1PGI3LvqyVqrgGtUn2aNT/55EgZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2E515r1U0Wr11HvNft30fl5XpGrGVT1zDIka8q2oals", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v6VSW6WzUo1KoOVT1/XZOtnmHmemyro72l1Wr5bP+XwS99nxWDBZbS4Fg2DKctxVF55hDpbeBlfER5aBPG7KVuAPZtM0y2RBHbjWA8KtDx9sMo6t/TimYbJ1wezlSXNLY4lHaavrtZ8QYJwnszBOHXr2eR8w065y5wh2i25HCjiCnQAfEr5jteyncO1j+4Og3OvUbOrMgvDGepoVeE9574zh/SR7cq+JUJNz85FpenFgh2ah6sglDJakoUIk15BX4qITUAQHQo5znRbXxZXKGIwtch6nIqI00eUIX24oYfbJsha9ZyrnRsMS0HVX3jkcey9kqctFB5gXXbgvAtdzn1jXHLpDeIdmKIkutnUgAo/AlbUA6nZmdjt0S6N7XZmmTOATUb6kvb4Kj9AgQceX0UrUEkrEKljU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2E63hShu866gVyjMOSJ/uGCRa2prV2/3gVXT3Hb7vHk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SFqYn8MhHFHO299vY48KfpPS1f4gwEZc6JW1fL4lIVOvi9ylSmy1TYkOGRE/P3/Hg9wdWbtJfeZ4GziJMMq4CVbUS+NyRSMsbbPpHrj89ldltd0DzbTHD70cE0B+HXkRim3eS4qOQLgS8b8lu3V03jPVHONWAHUOG8Wb5QSmQDBCfBmyt1NhVKlEs3oq0mAXC8oyOoPMWFdS5wetOZH3lILGtq2+4f3a6Pkeokj1Y0q1sv232TrKAE5dKyvWPnhLKcDidVwZKvFU1/K6ALWsxZppvPgLDCJhwMgT/vAoqaJp2mHHBuyWbC4oL8MibVrvv8oEbw230ZJzs3avMQ2o0sNAhYJfGL6k1kw/o1vkvBuNL+hAcndASObDBOQsF451GdQ4OYp153So87EL3lsdTNgSnhZ3dSgc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2F1nv5L9fGizrl2CbmAe2Of9m8EG1/5mRvtuYQ53CAY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bEiosuCM/L9Cb3ZffwqPK9okNjixhZJKL6hX9PdrMmQfCEzh1w4wO1AssuoBV1drKs1MiOJ7cheU9Eqil6WBJ7PfA5xytIjbU8CllAZsRhFPJDCCBCVE0QQXQFVSh0U+3BeiEIKld1cwQJ90bddn7/xpqCT5t1iuV80hBxPPLnTedweWIXK+zAhfjGHKpTXzxl0/MMwz4FWdr9+anCNxCX9Weo1EMS5hoBScc+VKcdX0ArIALZ58vexEzj6VIODT25NchsYLKw0IP1a7WaxSI4LLgP9oIGYD+JDW3vfjJdkPT0CiMOek4fJj0m4Siicb0xF6t37U2QIJsp2U8iHKNOUYthN9WaYueNmv33Jil01gMXvO3D9sRkfhJqxXVFCejdPaxPItzKgoIEADC3kxmtE/2AH7mTTU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2FcGnlcYm1UOgJkp51GeSKlj1GrjckhECQYFFf5MQ/c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TE0ETg0omWGJnaFM6nlSbXj+dgFjfkabgayCPJrMw5PM30wC4uYcdeXqFCdd2NLmTeRJw+yEjSP9fznHQ/UG+ue0PYhYwq+Ov2fCsDIlAJkFaitZCKe931B/+vRF+Skn39vIBgm7TKEwLS5HoHniy7mUc8E1GPrZmzhf03L8I86FxtUy2ARjr7l0Eifj5/Lik2/TfP3IQIxPsafSZGN5PY+GzxQk05As+NtO1LM4GrO3ebZKkkJiVdA/7sqAB2i84t0Tjeqi5JBZPtWYKeqPEBBKBX5Ujy8zY5M+Kk1KbsYZ+2FiOE9D2GZDttZFWnpwv3M+MJtjRpSusc4jfCWptd99aF382nTpdqvxZh/hH6hTv28yD/N1+T6nRvyxF0EIvbILsY2YwEHUcQHja49zobTCKldmiIB/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2IOOlsD9wb6yPUhyFLplCC8Ja/h/46SBWXqQP1cK1hc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q/l+oPUJf0ZMEWwjHYhq92YVsk68n0kcVBv1Jx6elVeGdjI49axkToW1hfZERUZmP/jOB/cqHuDacMjs9lWGyuzRJrkbqxLaJK0EXbQza5dRIb4I7W4BEUYKYFPdgMdQHeABeoE1Og0YDIx+IpIpf0rhfpSpWD2Ke44zroBCq6oq6xMOu7+rcQbmqgL3d69Sq0jonTOHabUJTk9H/AGnhWEwDTRYBglm4PNk5ss+jqoGUDVPJ5uGi39mrF/fqZ32q0UCoE0kk5PebfAG3rx3OcVSXxIBqP2TzjLbbPK0UrpGtQhqdKBbNeHZVOfcYTVn2F0LxYmd5bipi+LEViHcTbhjE5M/+U57saYODlw5pu/CJvm5K7fXn9eYVAvW2BjeTIid/NAMj8ZlxcZ0s8zGFo2nu7CDm5hZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2IvLzDNNNnWz/S6duP6eP2wwIdybbVpJp8E7ZpG5WNI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OeEwrBGFE0grIhniWi0VQoaCf55LjC7jqEz0TNypZ1Aph5g5UjAsM6UOyEUZf0CJ8Muva10+m+DOy8wlW8VZgehfhPwJuMSd8m5nNnHVqhld2/K7lhhjXzJp3Ggfaj6pUSWQlfG2ctRpBAmBQPbza+UmVttTw/YSiMF/WPZLm9lheRgFm2mXU5lnMi/boTHEFuOfjxlgYPHtki49vc0mT1aQWCwGsYcM2UrtBSHfSl2kV49fzXkZvgJZfPbpYYIA9CienWtMoH8ib0IA4KJAj+bldnkHWJ+lsT1/MIBdFcEGcndEkMVouz1XWhV9aK5F4lRd59ExvP6jaxDLeYCUVZxSz5WfTy7m/MgXkuCyQ3u4cNY6lk3McNrE+xEernOBan/dZ+O5665yFfVQjjRGSLZ2rD3VueJE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2JNVfWXEI/kaLdWRDVb2hXmfW88Mx8wMYbLYnM6qj9o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A7NL0weACfM6GVHGq6GgCbBf7VImgCxtUNeHLR8iBnqIJqA3BQjsOQwUMEBfMriVhopWQHVJzNS1+CV7xe/CkblagrJczffN6tFLojjfNooZags58fuyD3NX7qiG66n8YdsJKZ1MmInA48/GcnpdA+x7wPKCgHuG5usXm+pweQJoLGVL9bVyASCi9Rv9nEAqd7C+h7pB9FmAMzYmp1ovDWE+CcB4rAdbMCAMsJgw7LKEFRot1w6Ep7HUO7TSMUgIJyMlJL4q0z0WFCtN1+YpEjdie2LJHgHhrLBm4QLLn2fIdcaQ0xzsLfT1kM0X+EJ/WYQNXdGPiIJhORc90rFy5dHheDT9Vi0TEl6hqaZBO1UZHIvhIArgjuZJVJUvD75Nuiu+u9U/uxPecEHgeI7rd1wZ36SkDxY2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2JYUlmY/9Tn32ELV9ZcpQjcOscl/OgsNTxCyew5j0Wo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qrj7qK6AGjGmMKxJYV+Iw7ebjlsyxNdkyD428c7NQZjiE6TIReqVwhHVXtsMqek9hI98dg9OAJjfK8sId3wUzyuFV8bpPNpJpp1f0pV3AzIlqx3T7SiLRrNPw3qxtd+vE0rFzvgcKsSiw5mWlzxSZiWXGtD9YtSJ/gEQ8HNtzg7En8BM/+9QqSCIIbgiV2Tu+Xok3Ea8PUF+ZSvvneyZvCLSxbiBCTs43LSiVToU4BEEFJz0mAJlNsqaWh8qG6jB0O9wf6KFj1X8u9eqfx7u8fnx6whgqIQ4ml6Iq+KxbX4LJRqc+YL9/Dr3VBCmD6skijUZqR1WsQtKnx/UR/ZJryeG+e7/5GzIKXiyLQnBfi/z2T8w3Jgty538kKKivWvUIBrPUFn661EAJbx8Wz7ooXQVxQq2gEVz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2K1iEsuw1KT7LUGYT063/TNZInEDz15n/DYl4z5wdCE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qxFUX1PyKSCkhNlnJqphiQtggnLT8qIAKQoZf/mHuarN0FzkCX3TqVXgVRe5qtRbTlDHQZCHlvWvaMnKqa5uw6DlRmJCQbfeRWUaVRemySbvlORVoQ3GoVzOd6Hj8LVReIirmTVjfDS9AqAhBtQURljna/AAO8F7YVQtTeArqsySmO/FT/IA6AIYIfVFacwVBeSqCVMa5nwyY7ongxVQLcSneq+v3LlwXHXiNUp+QI6jwPSXsrcfAxcPZyaZAuOBpPle2YyHYysKbNHWyMbiWhSCONyguL5ObR58K3x1onh23/eVItZtinAGCLqE467MXRHZ951pqhBsr+s+wI/NtoiW7pmLeoNpo2Z7xQ5sqiy6ERQ8cuwyl6q4AnYzaDKUbALmudQTtXX79aD5sypGyYEQ1utVTFeV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2KA19OObaanRGP7SP1Vg5TZBXCDgPBFKNHBI4RwUoeU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZnzhVwpb0E0GwQ+15PuAeUjByR9jLdIbMdS4H8l3kiW1IpzEyiMd9KJ9NQa2tslVl6TE8UCDPc7lUR8WvM5GajxMgvCelervPdTU52KSGG/QZR8of439GuIMhsFGxIcD1pLyJx0tz1y983LhdoLFuEkLuofsM2WKmfqjJ0XJV+JOGEiC/rjHJlO7HWyHVAlSfj/3noJDY1GZmFbkT7iikFIHtpc30bnQMHhyJ/s5kWzzU5WHkmkkfkXJdkP40WCud7DEQtWK/y449A4la8HgccvCQlM8OWP78zukJEeZpssDPfLjYyos1+7IiK12yFhJFznccbucS6+OkJb7ItU6OdtLWDayhVQN8ZftquX583orgMGSTIvSpJsVN2Y50FLKGfam1Crvw0rzE5NxqEf7l0Gq1ZKcT7N8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2ML2dzATowJ1gvVPSjY/nyyw5t7fVJtwDihJkifGV/0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vuuBPWxxwBbxb4SQCUJnQ200Bx9hdtsOQvQd504vTGHzA76Cb+Vx1oFvOsPgBL5rTsSvYx4wdDd/3SvJ65aqqKPH6sI56ZrLsqmMS+bB/T+RiH47iNdYQhhD53us4QvUf4yHLXgqM70ryAGbg86fci4Tc5WVIhLk427Z1v4xDpCXyPS3ba0XVVb2/PMxjK1No+pcjEvJTR9KLuOaG0D57P3zW2ykhMOdIB4PE5qfOtQoxgWplnACTp9viM0O+ksrnuREoC+FcZ0MjwQaMt0mL+6xkUSn9kMITB5QOfDSBZhGgLrUO0O5aTbacUWR1C9oZWsuuV7hlsp6iSVgUf9Vb24ltvj8OSrXBGKdjruTbBIwLrqeR8QiDJwAxe53/9JFz1vCVHGl581q/KLmY0xftfD3jXeSwLTR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2NoAagklJ2FQ6fM5XOMR+VnQ1chQU0UTn+7mxLaZQDA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oUp0ZmbLHyOrvo0m4AiJz25HPBoKsANwRhRYcerKwpgQACweBClK1AnAj7w7VmJseJXeytSh8vGVMZYVcMrUlTA5vb2stVi/koExW7iKgLqhCBcyTiBLkGDtIIEyqNxLiTiAbSgcz+QaCxibMck9t9fjyR7btUnl+89ApUZ+0NIz8NZ7vgb86Q2tctAEZSJpxxLZJA6sbWJALYEyyywPXAddv/rsLojlmZ8To5X3LUZz/Pn9fiCgHCB/aVoKe4LO2xDbn16oje8wpGc4mz/CYTfm5x0H44SI5retCP2uHQOWhCQUuiRfW/jltXD2bq+PBI+6b9YDL5J0E6Rpjbihx+DftK5ECmqj63hrQ6aPgwuuQrBhzJhy11xXPy8j2b2kFUmW/6C+WRKmZovi5hbdEh8/8NggxRtu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2O3cUQ+hIjx+Wsr9SRjVPxa5JH/LAwTkIMmtUCOurTs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SYGnUzZ8WiF7HG2TXyxdJ3DU1uQ13lyT4bnWbw1vxsl6R53CYCkOP0p5y+u9iB/DwtohpIk/r3tTmjpqxV7exDdUy5HpPDsx0LuFroriL/pW5AAnp0rx0/T/TebrkaIBhISy1BKAOjyKhSMy8f+2IDyHr8lxwHJOeKP/PWpl+wSYfYkA6dQpD+t5STFQr0zZDtq2Wnl0hGISOnPxXOdZtR0O6zw3cH7WU62FWGfJUGATdLC+Rr31NmNuWS4FHhfOPd+gzeZMXqIpdfy8pW+uj0NXpos/Iiuaat2jWH4ttMwVgPpXLfdStKMJWLch8NNp+1IHg8slIsOm7gBAC6lq8tIvmCcETpktXEx/SwCxRBj74dMjBuZQF+7Hf6zKI7e1BcLzKsM7gEWaNj5qDyar6LpdHE3F5nlP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2OeUu5MCTZ/d9i/s+Ut9wuHqm6a37ldBujSXJDBX1G4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zxYWt3C3Z7jY5wMyol6AmoItRsd74delNVRC82czRyruxg/Sv427qWdhcVsSq1CNv/+8aKEIgB6nBeSzFoeBURYyG9zZz85o78w7CqD0wA29yV9C/9oQq8V6C+OTMcphYXrVnhsWLFhqjjBM6eZdV0GQJgP41KmHPtL8vD+H2eh0f2bXgZl18ajcS+SVXoKOK6zW5C7LAEAnsANoVUoFQqqheiGgkTSW+woMMs8ZODI7o2zgCX2sW9jIY7Dzm0j+Y2MMNxVUyc0gefhzM6U+ZoTM0FO2HyNlOC3H8+nGXkxax6sMQahU1ffxs911/Q4KWX3V4cC6fROacY8T/z8WexuW6NTixrPQAmdNI46MVG7GQNMFha1f1AGIhPVEMybMHq9rgeoCC6luMerlT1eWp50yOT5XAUnp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2OjzzoKNqc5sr0hKQIJqfLmH1Kp78T2bukbtqoOO6S0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s5s3YCGqSlGt9m+49I4y0ZgRgEFcaVujp5SCAwSK1H4yBWOvXGg2F+u1wnNJg7dhHMngSr+z+2g3TpQ3i2vYpskEpyJ9mfGLZy3pDna1GvuAWwFe+qVhzDrq0qHnKI/1uKsjFpLiEYgvfhc2GcWHjCspTnQOph+/pSn9f3W94QXD05WL+wGgStvIafoM34YiE7x/iEr9LraN46e8sGKF8rKPrTuMrHZNDQ+NIoh5MwNQ5rVaLXfrGqm3BCTjfc1F9GaCCUJPCFxdsLpX8ELj1r/0qXA1N6GflqCKGB6u0G73D92BkQcrvxDtK8uNWmtpgme+GxmSSej0rI4pOg1ajE8aEIKniS8r1EBJrmam9TscPf12td1PFm3st3ty2uUlmCXErNs0/d2gZNPhPF2da7CYMnz9gphw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2PhuvCkZfwH4t/MWxjKNo/GqsT2DuADVJVj0wS9Btyw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JHaMNN5pg29y+hG1/rW4YwhI9HKh6buZAP/ynh7uzBtJyKh5aj2xyUb4ev7nbUg9o66ZBFtuCQp+W2R/P3WoYXBbs4ovbusg/NqZc3k9ZQUO+sa6O6YXqYNW2o689FnkpNXIZsZ1tZOCg7MTOk4smaW0+GWjfmrvJkGpv6fyVnhjoSyqRpCyDm9jGtNjJpU9p/EpB3rnsQKATACx4fC9I7o+W6VpVy2AfMinK4JtrvB58qOVRaqNNB+inXiXITugbMFthS7boLRuFvWuQ6q/4mZVgYD6sKdW5nHW9hKIX//wpiUzs222b7GxTGK7pkNpXFGgTyJrTcq+O0iefdeBCcvYLlwFLk2wrFGfSA/M9U5kdGLUhUHByMHfKmO2p8INt7gia62b5MH00XHNdE8G5713AW0aX7FL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2QS0EadhYbZgj6PfK/T2mSxBkUHkjzTNNOd7t1UZpE4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eR0y8OLg995Z1D8mjAuTzkwYHC/JYFhtxYjbb4QYTCV2TPSlp+kS/p1Sf7IUgfyiTVSVEMfu1lTMXBq03tdjxSVFwgGOkkQhIFMUQZJ6lwBKrM9l6+mUgioNRYI1bx71y80zpMvYRtVzqYKaGw7LEhocHE7jMXOFjG7i5faNvZTVV/diiMDpUvNkbZosrcK2X6SisgQFjMZigIUPRDS4/wB7Z+24wOxRXIRc4MfmcOaW+hAlPHYe4Seav+RIKZkJUS3xycPlybP/TgPuAeSJV70DYQcgiqz4555tbMyVMn2y+V0kVcnh4U1EsQPryuYA9zMKZhfOUQc0SXdfJDMp6Z7YCkEZiUf6F19h13nC+r9WMkmZ8vNNz2wHVeOlQ+BX2yb2eDyBC8TVTeo4k1RiA3pNiwmyIDN2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2R2ALkONdDVDiR63m7xPdGl7h9dZj7U2uVzFO6gFOec", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1WQq3bVFavvDe/U6/t6nQ0WHvBeTtH4waORvQS/HqpL51PJlUIfGby0TkrilajSYek5/+wsL+Q+sg62tMWT7h0pt2J8G73E8YrZGjs57rSMwrVV6ptPgR1bJStq3D7cWc+itobsn3PJzXVeDAHr9Q9RTKVPogRQLlTJiW8aLgmoSeuDiVDTw/XO5wmXcjNTJ4QADp9k5KGzbWWdZx2f8ADFyuKHQ8alTjOHIuuoPnJ0PFRu7NRsjD2MXK0LEO0Y2z6+TnewfFMosSnmGNYtY010A+ebZU1auYrTWcNtw6McR61kIyoROzk61hSP51+SwzmvyqAdT/BTSWKKjR+W4VlKo4Lv3Jtl2Fas/u6D8a0aiC6aSfCoWiIhe0Oyx/WVEKFAOc8X4XmLbAflpoukPPW5IsEa/4G6A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2RaLxH93c0ZK9khpjy9EhXyoyRgRFMktbly9QD3kheU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lnH0FLqxFpQ3LUgVmYx7+aqfJ1GuCCZbqEiGaUTf8z2Mb6SOQsfZOk0hXGLmXUNkphtLXZIXuxmfz4ymYpMuICKOUH7o1PRpeSu5YKdB6c/zgGPd26foEnF+sPps6zxp2bmn5XjB5Jp0ea5LO1B7+KAXPabX+py6P2ra4qhKzzxf/YUpFSOr7AjgucL2qmTGemEOVU3In1GkSVUL9s/lh1FGXwX4vUWMKqmmtVN7DntBBsh0QRNkZZRutkEaj+oCU9gmQrmFao9xgCGlJjw+h/4jYwNmkBILj4cZ4M0wZknlhG3Abo7C7Gx1XkoKxjcj+jNaB2lq5BXjMWLyFh1S4f8P7xaoD3hqYgCqeVuobptuqqnGg+uJi+JsIssT6a1hSNLqbyT71cTQoNo1LzMN/8PA47JK8FXd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2TdpdyDhobKByARu91cHcxDZk8QRZkl8BZ7taIBpfB0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "10plDGSPiDc1ajWx7cbvFgYED0ngiEqVr0essAIYRb4/y9Gq87APyo5dYeJiYDDtPS9AKSZ1lBMDD2ShHP0Kl6Gha/lSc48B0NYMVbhkyzQOmMITOKvDh/a1zh0UM/S+lQGNATDo9TG86oidYcqtmyk6PPVtXgkuQ9vUT6XVmQVClHDbn/s5E7xltYZneU+IBl9+pLByZhT4V34X+RCDFbXAyNQ8vr9ayCojVMZBvL41UP7YoB4LMIzULXPdaiva2hkRKgs8MwVpudy7Ih6R851g8Uw3RPsgCAlYsSvcNpKiVpeZ11yD+Ho/JiS6IgwhSkf0BWyTi+HyTk0eSSJI3xI3AS6U1Gm/6/Q7MeXaH6bZFtXQ+gJ8MWtSSevbHeBEtkT2Kioe15CT1Q65i8HZ098FbaKU4D3v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2UGgLu5xmry4RNVGccW7fY2Fwtm9G6hhWHgaCN4Oj9E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CJjTDgqExvCc9dKys+quYiimQf+cUPE3dvoEbj76YGSPAVgKRGY/riqgHRHCleCuDDJEFpFW5kUz/lPiSwu4U6atWP9/t0HX2uGVwEU5a6RVCv3yz16Xb4gFZhtbd99mDlVse4rJesaeP5S20kP9CWPzsautAnF4sNxw53gRZ3N7bDXZO+Wa4QK7VhGueZLWKeGr2mxpsB28rHwiiWR2tzT7Ic/gcmz+jRAe22j0buIkFCicalE1lG9I2Q8ahZDEVCSTeIKEJpBca/F6h6geV371i7/Nd+ue6mr/K4PlBAaJ7fq0/mY0hqQhybx9d19mrYb+kz9qQPG4SOlKzbAk7d8pK5J/otVpRkdNZqMdVn21k/3Bx0sHCgHlkR8I1vg5AslCG4W1mt1aEcKUg6k4im/HAKiRaOmQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2UQxGEFxgY0JUiSkBGyg4dud+4peDKr5gdyD9Zyrar0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PW2OguJ1ZnIey3i614L/l7ZiLA1sJewkQ5wRbUuOtEKbpBjoJTgDn0Fj21MW0QP427ZlX3sTsQRsjjkO4ZLQEVCwCnS12gpnvBgk+UUIIrq6fMSKSiaZf7FYkNyx1l6nKk3cQPGmRCfhofc2BJzSvNSGT3ymCPJVc1boN+pYsMg3YR4zHLvSFGP+ktxBeu4It8BbVRlh1UC98gw/4P1yRPtl1Z4I2YC+vYQfPUUg0o4/Ei9+GJWfdq0tkufS2+Vfnu3RARPNwviIWtlQyiLXV3u4ddmVIzoQnVBuuECTE3lKbukraDrqcI2l+5rqZlW7WcUlq8UXZACPocJAWH3jzKOfRakvWHrV4hTHd/rF+rUDSGFB1T6LjzSt/ogk5MJIB2g7xMi2t2JUCFbWBcO0U3+Noj8bMU1p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2VUxMhKMHK1igJXkg0G0CM6LOPjjzh8UphDQbLLRfQg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uNCaCt1Uk2RN4MAOYYbwg5piKv47SbhKWQB//vmrg6q/yNcRI2igqxqjfS6UQF17exwNnu8lMS+wUAMZV5tmmn41sh5emjAMUevC/ctwO5f+oP1+g2rDricqJxs6MbMtIF4KAGq7V+PXPCuuG8kSQun7GE5N5QlyTkX3UolIGVNcKvWUkmAhEzd54cJZ+IQXeTN5YFCWIbNYX5FMr/sMrJIH8tzUOH2KMOMXRBkh4XQ3UdhEDZKswxVBytjvCDHh2vIKMrXotPqM6HoDa8lBQf9Ksvf9YxMp92DZ4b1D1mzF0S4h1tfgy/s6qyRZjmlN4DgpMAcZPvXAGk7UsFHEOGil9fm6obbeae5Dq4RL2GSCIY/SbcP9mFLqKV1ZwnYMfocuNaL3ktWMUCFKUeiiaTuRy+o2WXc8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2Vfys0+qKeqU92kmrqLn6/ZPe8BuVw20iHnceT/EiG4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ygjUecWMj2xjIPNQaywdZWlVsxvv2a/uFLMaqLq0me9tX66xgOjZ7YjTsl6zWvG3f3PLjDWFCnf9hdaMvlIfE9ff3BRwnQGVd0O7tdSCMQBmL5lqgb7MJ9/2RLct0mZWnWV3iFZJzosYfxhV6n+6pvwjog0ga1T3uDxh1mdUMwN9IgSZvj9n6+5u/i8a2QbQFACsLWse5woWRruhCgdVdNkPYEqjyWQRm/6sCE3HBQbJ47V2akrEzLHsZxZ9MOaPyHtoWkw5SeyM3J3AHQqBy/a7I8sotN3hFzkHV9qjD/mAbUad/wv/hkHeahQ55HsEhJLbTftipJU3EkWEQVMO2aHEx5v7/N5r80iaGCTF5bX4Md8Jmfe6LdIn1Y7qJDugKRbYU3W65KpTGjzQxwz7NNHKqOqPMrwh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2X4eMN7g6QyUMZb0eYxcYls9nCT4yZNeJv6eZjZ/7RU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9Tzxm5TVpZzvAjw2/ZsDruRg4jACaC5Cvi7PmC6K3Rc8hiQDoihvW8XK0yh9f0VW/AXqg2SZbpjycRkA22E57x6r52oSb+I5s2KZ+P3lYz+PDhK1NOtsN9/rN3Nva6w8F6gSnAGLZ+r8hUFAxXirkpsczn5XjTmySdq8Irh3LSIkV41e8WAxJL0SPec7V3Vom6wHKCAHlOQJyWu5TUSqlV8Eftmg/DJTxEJKHAGJcX+L0Pfld5k6/LbJYPE/DLOFYNw0XpBvjQxBnhq4Ogjlh9UdZsEJdG3hBQE3amleCw/JgpHKCsCj+DU0XrER4sEpp5tEAXrdZG07xoY2hv4kPh47nFpgL4hUx7/w9/VSBNw3nCcuaFMtVQqLJx1dt1LhoGncIMEdgJps3VVdNF5g+e5IBVo9fHHg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2a+1N+uaZvTVxKGrCY7XnfpsAyn1TtwVuT31mtugirg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8LPASGdEmXFaEaRDL/A4VpobyTQQP2kHM71iURQEHHcIMAxED6FTkEqj7zP8o/AzvZ7Pa4CwNvyXYbaKLk3r1Q3qF9YKIGion2g+pNGM6q4+rqrJNc2TonIsJZkjWg3q20dUtmJMLBryeOVBpjsSSFwVNLdFPaqJQYj4ziJnaoSWbDTxyi8L+nOrDKypv1Nokn4QN7pCCdxhnpd9baxXxjRaSFmSVlEyuk/p5FSsWXrvppx+HQhD8dp88/bi+66co2eUnXQerWellUWNDKOaQ+qHgPC5X9HMwPvXsxKo5ArxZjonJOZGWEcWcsOWcM2bgjyJdDrcNYiGQqNg440eAz+d0ks+w6i0JhGY4pcL+QrubjjbIQXUzqfHAWua1udOBcwhguyhmXkgIqdmLWX+IbduUckGY0Ci", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2ai2kxF6pJ7aIfbvQtLYthdlL4N6EMKfbDKAk7cFSY0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Pk5IRi8eTO6sZOjMcPHsp8cKeqoRHbITDNOFclsJUhCbpkfBk3uKMAfllzGaqdXmeVFfGGr928pT8Z1HYDSyZ8FhkZei5LBQQ83OFCcfsO8Ow8KexlhVfaMw+DyD/3XugaFC5kZePIGCQGV5gVNwq9rtQGvD/Q/ZOWtWVB9xMlcC71blPHM1m/GcvEvP+Cr2N4qhT2Qwe/XcQwKe93OoAbEAhO0xD0OMBhy3+Dw+LYJmgCa04H9M1HuaWsE0Na/aQR51EWDYbVwdELi9EvyfaRgr76nmilcbiDYd93ToJoIMSs/kv6nPx6XYsPTS2aNfNAqgCME/FuNWfZvI67zeneWuzJrsnueuHKhO7zfCi8iOAFn7kn8hSgrpaxN6GuaDSNVH9SIDluqotic6toRk/bkY7vSYwpIz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2b/zD57GC7et2KFgWmfS0LRNsMEgfLTK8wpv1+d68b0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q9XCwT8ZTR6/5Pj7P1IJRgHmjH1iCBdFFUP5FYYfAnL7milJuUzHusRV41hymrU/yHMhI0wD54wKu+779ii7KQvfCsX7wHJ3iC9wD8M2HyvbDHPaE5rz2Vo9uSM5tLEDpFTT2WA4DQo0i5Dh3aWmCCerpctj2KcNHLwLgFf+eGW1K1P/AeSYl9xIw3uHPkL8kef4F1cujrJSHW380mayqhlNYGZNtf8LDoPJ5p35SVzhTTq1cIEPciVojASA/k7IApcuRjxVY2bdK3i44hF7Pa705fasZO4yVPheIGwRPQBrDe3YCByW4Sg8XaMXDla9DzjNm6fJSIgaKADOD27i3Rvrrjy/UtfFQujer1VdN2OARo0uLK3j5dfGzoIeTFnv2sYgrQKeH4MWzAvf6mwopn9v9KlJ52gR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2bQik2DiTvdZnuYL+fkYG6gcGt/wO6TGdcBvfI+ZCkQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bop05OlntLNmTXJH8ifo8hq6b8rHoKDTWcKbUJ9jkatIUjoP8PiuPTWj6UMe5P+HF5syhPZJMg3DEdyjxMxn2V8dBW0Ea+Gws83rQsOvA7L6Xj3g3jg33YdAEJrw3FY7bPwyLxqq0/hSUqPycD8MHSorQ74wDCtB+1Vf+hQirBbJLlQMM+t2W+8zUDsw+KrnWxFAk9g5tYzbRa6KdFk4TThMLOOZ2FT7/Su/gHNZgMAj2DTu8xH3iWtA+L6zgsHDA8/kNnIclhka0tzv8Ysgpb0P04gxrZ/7BBoHpHt2CbB0NkoyJZ1Gj42eYXmIwhlCG3Qrj/KDD0sgVSiQOz/GYfMvqiuResoy7JfjKioPrfuPsyxGN/7+fIEiI5wWWsVm9FLbqN6t5bXR8sRJ2sgcpm5CZEt93QTZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2befYJbHxmvrlK+p7eCKd5aSMyAuRooiDHyJgQeuU4g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/kcAU4/W5TXM6Jwfn6XOr0d7NOH2+H4fDIPvh7KkVcsFR8RXfph5tetUgrkZeLjN4vHwdYxhyIyLIHar6ylc9k8To3oi4MlkcOP7KDcfHMbbZlNX9Nab/64g/bzDdlL61S7BWnwyqAnp9OjjWOceHF4T/xgjl7nbC5KQmgihTlqfmQrl4Mo5Lc//FcJkaaKtIRM7pIejDDr3cVUr/u2aCvaAB/VtWSJEUUGFqBeW0dizu43MZMXH97BaducjEtYVBLebsKeSDDOWLhO49EVwTqp4GK6Euer3Y9ThrpgAQawjFJfde9UIXRrUq4VIG/ULqjzSKicaklvwtopUOdQksQ9qYg5nltVHtXUqdu+puhYvVntzdiEwWRo6FArIbqjuHetHt2EQIuL0Js8g5vVmf6LR29rxYnFQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2buNMd7nzKZRxJOOjj/rW6uJ7K1HBCIOMsGJXcsBt7I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ETpgGanCsZv8R4hmbuhv5PqTeo2lnqeQzELOLL2tQw8A0TeDfMfTYzjq8ScCl5l6+vnIfCYvWrEA/u0UdY0RCqCZMd4KE7FpHOaSoUu36IEyU6+08SdkrhSAKof7lyrg4PxLOjF6Nmyau2s+7sTUm3H+iaydNlr5GiROni2ILeMFvjGLetgEyZ172Vhgob3P5DJ/KWhZRj6Y6rggq/LmShMmvXDD/GzQQSIG1Pfga0VxERatvECoiywN6LSFLb+jKk+nM1IOi2ovPIzi9smWmbNN2vMMECH7fm3prqxrBBIrMjm3gL0/XxfjRpgtubx5zS0kw/41W6a5dij7rvC1DzAD2d9QG461XNb0XbWylxQ71Hb9b1rHL30CMy/smeeMz4sYdunW8oOnHkoo8Ynjk1reFy7FwIRq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2cGYG76qYFgDo98O0Kr3OnHV+Qwj7Y/T9TTcCuVlnTY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "H4pjXbERLUOhySHwMoFOpQz2UmgUWHsuMLg1Uyc0/eTufCAWLFcRrv6z5zapZXyj0SjiOj2RqTfTWyOIVeeeBppNiNGags+94K/pkqHLRU3YzwK9qzYPD8teFK1xh/uZ0TJMlOOgeVBmXtnRElr6thtn9zsLlbrhlzxM14/S/5p1BUXkAzPsykO6nkq15UE4lgv7NRYzApVQRkT3iwBNn+cDsAWRvy0qHMVItmDBSIBrIiqEokvKcyaQA9pZhz5RTGQX96A0OsMoTjdkjkKOpNGaCcLlclKrRSQIQn1te4xYiZNslw6TuLrjfrmdAmquKnVYsp5EI1oC/wIJmffGcIuVpToANTRoeZW80iDFAkYaTjRdGYxu8xT6FK3baL6qsdTSfHUEJShEJlIpgEwTTgJ7rT8o8yLp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2cTFxKFmn+vkLqkKX9iH24P/wGgDHS4rRbIb5OTafts", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wZVmjWOQOIt+NZA9P+lPpZI5oS7p/+dBJeNkWRYrrQjy+LlinGnUIcWD0uJ+YoxJJlUP3z3T4N+Sn3L787YA8jn9kO/Eh7LS9QKtQwStbHD0h44OPUHLoEKIjpWb/xbTBkiyg7UezxTGPWjQRFvIEJ4+QDU/6oVSwMLkd+EOaIVeOsfjDH0myRj1lQDazOiD4T18egI3oqAb9iRDNPNjiX1d9/Dxq4aI/chaC5m+X7rePgMW2vvETYVHFkfCpgNXl00JDsjlbcWMwKslbFAC9Ze3jXWBvj7lkk89/qZZFOoMN3/GPcr93F7/k+nSwpVE13sqiYe/ht1Ch7jpm8N68Z0lJD77A5ew3DjwDDYx2VvYmac1bksuAm/qSGtvQxc0N27B+t9D8En5nc8jIYDPykQnukVZoZsa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2clqWK/RXsI7UEYzNmCd679uIrrQPYcjr9PXwAMTOr4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aNGNAvsiTDOXuTW1dYxeoKSy84W7XMudtNF9PLccjfbkX/hCU6t3KAKfkXmTXOOBiuHGq7SDdZg4nF22UCKlCLHsl2E8gogADzZv/v/fQqeXwPNAPNJQ84JVxQocQLM0FseDdmpHxSHWTvINoyhwlc4bU5uUHxGje/D8gVQkpg8hUEnlZ82UeKB3sfy7PUu00l8CAUxgrPEkNYc+N0zkA9gbv8oc9xOMfqhLzUhuK8A2aSlvSjGgCoHiCBFQChP8UlovksUIfmRUJoYEZmKiY2jcj6Zqfe0YKBktuzCZMv8ZQ2VqkhM1JF1S3CTrWTmGeuOtdKDDESNs4+3RNdATht3xrjbIYiXNR/j/RaOwMsBl17/5tBvKFSU/yP+GVnvVtaAep3mIIN5H4L85aczJHt2qCKlfH98P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2dRdD0NSnvN7NfnVrE9BX9G3/x2u5vxXD8SFN52dMww", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e6MjXHxD70erEEQBwYMh+s6JjAle0+8jCXNHhwX5L5NTADWW7+dbU2gqbcaeqF2I1LTnt51hTtKvxIu0w6w3U0Y+GjlSQF5a9SDN60ya1D8s00uJsyZvmmnysVq81OVEaUEngKImJzmKzT4wS/ThCf0fhun3TddVl/4xbSjIDCR+oOyQMJ/Fp5D3a/O5fguWiDEV5ulzP63rghzz1iVDMrzVt1dE2hMfBx/9s62AhcrRdl8L8/wdHq5F7KYXRvdPCQarXlFxFhM72uXL3vkACvNYxhWWP6m2PbFI3/5viDKpc6HXrsfyAsBuREzqVE8sHhNKwsUwSp6Dqnp9CFWXVDXsnuFzEqzHVDIlr7sbbGRR8g5pftsSVWfizlxmtT8+c8N9WJcDUDE0aLWxYJnxQQimzcbUG9QU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2doj1u8z52RVLz7CPgWDdwThyzSDdClTI/3MEgw5ZQo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+JRu+GtMXzPCO17FSiYwhWuSKPmAUt7RUbgdfxZsGEGm0eze9e27rTjrDklYm+7bdOB55EEum51907VzDxiEVFjd00fXpCCKSt7yqRCDOIB2k+fCJlpXCr9rZHDwhhSR+uM9cVV97NE5bZZuKC/GuC3ewjDz3uWIwRtYafd6kaTVBbTfqBkHAOFU1YBHQWpWJkZ8F7SG10EgGx3CJYwecHsWdiXi6rvXPwTo04nEvfdnUwLS4JWApvBCMn8BVd6LjkN/6OrR0MiQlS9g4brkIMWDFxGyOXGmmdb2M4lPMoT3+bSKdewC69pBn5iDwuSRhKTNHeZE+3Ocf51LKDGmem6ZDcTAwSpbfb3ctiIM9zqcP8lJau7MKRM6A3UTwEEwiaHalcDYFR2OCgInC9L0buFLyqWSw/Zn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2fAK7Zx7lCaVYQk5qAcE2eS5dp8ka+ooYHvkbEFRDFU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8H6IQz/YI06qEC9PsLwvkvaWKJmBZiq7GAA+PhkL3BOG7WqSf8EKsBH0hMZRQizubz9DGbCa254Xor7ryd2cUyikYdYP3Nu0Z/OlEw4RFO0NuJBmSN4hNOw43xGL3PL0DFb5xanuo4ZwF0GrgmUZ60GymKenE5kkC9GW4Vom+LrrtwYLXKeOJe5s5VEWofO2wE6zqWNccEqULk+3/uD2R1qzh4z4a5vVBft3vNdUJl2nqETJI5zZqmg39OHHSVO03FPstzIHcOtVj5lAF5F2bR6PjPkTq1j6buV1UA5nUvl0mYw/VUAByyHyjbnVcMthhec5XqjUPJ94TqqEcaznt52eDEDkUZzvzWdunWtpSxw5dhOm05lJ0Kq2KqYszsurISwWLOeuz2EZCE8QG8881UBc2KQNUCiG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2fiSnNC01KN8FAUx/oq2A8YEJaZg3QjG2i8ZpBEpseA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NgbzRsD8jngpP1N4z+pRLsm54hPnEQHGdiOWeg8ld3wryE/anmL5dKauUdqRfszRhympyt9cyqJ9k3lLhLdZ5f1SGOB2kGZZTzLZNSxHkiAWRnnJED5xVDpjs8gILg0349Djo4rA9YxadiqdmtR3AKQjE5NXYz91GFR5XF0gsEX8jkPBYqYZdW3NZnGJR7ZHobMopKKe6T5VZzxDIT7DXVBFWhahUFxb8UConWSbk3aEIDD3QZNSX1UQVe18jVTZDvYVHiJNtFnepfYbeD2bm1ximm4InydTbA/fOeXvXOTeUQw9tG5pLpvGDSgmQl3A2c4d41YN69+GCEqGRMJh8x9padVxjjqlGmjP0v/vtsagm4AsPrCYoQvqwB3Ln6Hdhlj0lytIjiZneQAYJ/9yYds7f2mBggUr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2fuTlqqKmoin3Uy9LmdRqfPnAfJCgbBkPJHKm6xepcY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3G5Lr3PmG+h/0FdmqyDaENh3Ee619cIUsA+daGIhf/mVDwbCgsGth1CzDo4hYZn1dnTItb57s1XN52XAQyZjuBgdtyD8QdM7oCkY+4eGDn3WHdSC2myQhvz0h3ElQToDz+OCTO9L/63aZFGmoUQgSnr3/woUbLBstUSw10YtH4JNNOSNC4dQWkRba1deJEbCLfkXr7InpMBC60pK+a4ZxqLlm0yqXRWeJrQ22CRroFmQDa6unhLNG/4ffeAkpAZTUmyK8ro27tWpA2WuhSenH4uInZRLHfWpT8YWjKBWzErXm9CwEFVhonNrXIGhp1RaRJe0lJ4bIxXIA1G10PhtpG+vNlDOb2CgYk/OkcuKSarEnHqh3/OlvDczmd3AV4E5geRh3s+crccQtAMdp0ssxWNaWxvEOdGk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2gvu0s/ARR4FjxtvvWyp/vYO2lnMnxU/dli0kp6fbeU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2u8i0A8sAC6bqBMrMb7K2U3mEEGkdHXa/0dEzVi52rlZ86Zc7TnBpb64p+gm2Hvo2FWtVzY5lLrQQ8uif11WBTXI9FLBYRZo/hyQOytJVz6uIecogk50ztWsGZu7nVXziEt+6+/oZkKXDKptk1xkf1AB+jzjD9dxe+PmnmNR9cAlOdjHv2bjuH4KYoRuVk75J+UMv0loSzxl/1BqCuqHcuH85dw3SfLzWX8nN+xQHEEd4+wkrWfQ/3+OI+K9GwMa1W3us9LcKF+WlitLxOj1mFvJ8QD+YdCDtU41CcUKSc05Xt0qjGRrblJYG1eQuEG12nh9gwG+0CZluxxUy4fxndCnXifS5iY/MXZVTA4UowcUYFSnD8GdaZdZ9L5FK11cnsVX2pKwli+VGUWKXV4SfYfW9PHwSjfb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2h0KSwst+S7nljpQmrVE0892cJg0C6hMQyxoSBTp+Vw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HcbzvzkuhBo4JgYayEgC/FO1pWWTHFVPCphEM6c6XcqAJW87GucY7011SqZNJVfoBIzA0viRcLBixUFgRqiFSQQzK1aJC4RG8XuKsa5r8M0mPWyDS3B3G31lJ9Jhj5Y7VeStv6AO+yw1RBYB1eQ0ifv1NFWzK9oSTM+DHPftn4a0BXXYxjrj+wXEU4DuinjHVRxWvwH8JrMlr+G00/IL0zSocfBXfuKucYlsExzHc7DqmP4E3Xhfm2RpvcBAOonUi9pCZGw/Aj4W418JrWKGUkDLgGS7ONhltFemRI8SyoeZUaClwpySbfGwHEfu/HtK+NI1qvyl1womrTJwzcH4MOpNI2h7mgkay467fDOIR5WOth07yxn/SYk0NjkVSUY+LV0Nqzip1d5uyrTEkFLhpdkD6S8BVNg5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2jYx8f26k0+dtdv10VVvS8/uV53wH6UaN6D9SiY9Gfg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Xmt8ZOqZEnHzBHrZ2s3B9WcBGs74pDXm47kd6/pTx/paDsAY1hxz5Oxm+LdBcv8XaaK0bAkpMH0MyiR/qltlo7/WjAAqclx6X721e45hrEHXIE7K/sMM+fcIoSItmxJ8UXTxZZE0wHZ93WHpZ1VIgc1mFjP7U6rGwShIUngp/G0HquGi6sETL72Z76n0Roy+Ha0esVyb/36QrZWlgxPxKjIz/LnPF0y3EE0oHpKAC//sjuPWKtvX5SmJloAJHRBNXgDpIZz+uF881aNPtfmMT42w8wu41grelxmjxZvAC1HZCNxfQx5ZUlCF0KGIzNYYl8cEdyhkVqfWSbFBNS1lQSBDPa9zdVhYqccBxpImMZfjgcOiNrkE8EcFdT4swMwJX0yc+F9lEPZz/PVn7MJdHNW8GXFpM/W3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2kzB9Tal/OlKCpSGVrOJVe/q8JB75pA/zcP4dV9qvRM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mled0LJfcJJ0eA+YUDRJp8xkENHifPQBcrjLOoHIyWlcrNYwlyGi91nNiH5/h7lEb0EdxX2rfW667/V0vcaT2wsWRmX118z8CINmIr1ig3jWYnmh+UTIhAgx8CwOS38cqmOv29hmqwsB55g+atQnbpBfQOFQz9LZ1mQq1ut66uc87BnSyWWaZumCK5X978oBa8xYPu5hzyK3fF2N7gcrWJBP1fwn3s38S26AAYTdZD60zCYgZzDKVpqZVoTLJSm66THmtMU9sGiFuv/R234x7O6QvWIm5JNozAURCxMtSe/v13BMUs/wZvR0smL35bq9JNA4P0HRVO1ha/FW9nRirwm3M4oqOdywkL9pOBb1qlBrWGoQQDJ/dqcSho4Fl0f/cwKlZwZ8mRttTa3u251tMIXIK1k1KcHS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2mA74S+yZJN+bkhNmgg0e2fxsIYQh2/IFmkbujaFx1s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RiyB4WanYFcd1nc62aP4uCaN7GR0O/xh8zdOTOmCfo96Twdpu7W5vYNdx3tyM9g0rs3zgg/JBazGcAMPioJzGXF3J2UecqGkrBkCwikLgmlH1l7cyD9Cm0NIBmTFUguuP6oQDNCJmrivkuq3BDma2+m3vep3mQ0fQYjG+idbyjNCt5MachZ021xwNNxrFC8V67e2JCYGITNB41WdqpsZxZ/rvOA+72vfny131drA0zdgVm71ij/w5ln4YBLiOcGwWDV7+wtMkYPpE3ebBowUnWv4pVTFfWniv32Tu4zowcCzA4lHJ7oURUR5vr7p+K8hcEOdAa0XvvyxaMDtmVjzNNxy8Yn930jGlfq4hOuOBXrly/yjROT+4YR6BzS/7nY6zJnkoUZ+7Ii28VoZKsmeAKiOB8MYeKC7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2mh6/k6jqHHzDL1brrG1wYbl7/VsiUuiuh8VV6Vzdz8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S0EHhjG/NQVbwytX+sC98l3ABJgj+lzqR51WpBFngwkUPSEtOkLZ4FOpGaSk5YXrisotEyEyt+HQgdys/1Gik7Vm8pEDTpJEGi+Jl+V53PMNFGAZRb4TlsUe8dirf/e10lfmW/Imaxptnz9anszxnNF77BpkcTEuVYNq1G3r++eyJEwAsY6gu6v8Yw1WZCeLwnN8kl08f5GMixK8Bp1S8d9MVeaJKOJYKcEB21N6eBQnTwr7fu0E+2BxfH+kx6+nj06PffrEC7BvN50SkPBV1POrVvtm0jVbrbOTkjdZOmjSoFDR+o/vBwuDMNkVZH1LhCzjU6tbjgxnq0H3/0RUqQgqbfJcfQkX6P4C7nW9SvTr/e3+AIfFlZNnUhmLueyBaZ32p4jIgiGx3WolBcdizHRqN0/Jrmwf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2mhyrA+ib4CP1Wt6BCSchYILGOCcPm7ci/GU1dZParg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hU5Fa3eyBiO2Oz176ogtl6hcpARvcAMF/xwu//fVU/YDfKSoubOJz7FHq0jSHW/jYQil3x5zcB4mB6FHAUv1/50NIFxvPb61MmYC4q3PZs3QMDfdQRkJGF3l41s6SDRu7SdSE8mAtu4ZqenHp9omjrbzIvdHqs5lp2aTT997BfUnqwJAHgudS0mJEyTDuAeRAkBS7bSNqqkIGJA3CMC/n8jJFxeiE5OM3TIWQwMx43gIkbJ/rXNERS+/T/KFrdMPf2wlUCH9FVuuCYJOMftrNcTwUGIbxy+gBbjHiPCmYptOje1tqMc5tSssfrdAaPzqO3u6b5VBJWqSXmC8Phsoq3jdiptgw1tb9xOW7pgix6b53defPQT6M55oVPPjH55vNl2idjBPFQELbPOYVBHMeh1so7aa8Svv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2mr+mq04H3ufCGN38ctshC5LrNwSI7D39VugTPxpMxU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XoDU0HVTD2Iv2p8z4t8Xagxe5FaOd6kQ+Qnxn8iqPKMYFt/2kTCmvmp6cEdiH/YQsGdoBod2cgfefluwnZ22qRmOs/KhStMLeZ4F7glGOf7eb5BHkEBz7eZ2zIjDcE+DhjtuwGSQS+GMhhhLaAmY69MZvFzxbw+R55s8gNWAfT8LBbZo6hXDVarxxw7BBfsfA8cGB6kY+h6qPQaMsigzxhCoukh8lUXld9jQ5MlGZfTABim/f1xpeGGHtgduxAIV8iq3A6FJG5JRmiSR04UT2sulFpZpbB0Qmw9+CGd7ZY369jVT0/83J7wsV51RRGNu+vBmSZ9HGVrZQKAmvByCdpryDlW52VTombnVEtEUriDTzNcF2vNGuD1qksaSSt6R1LuiDks9gejqVdyZPsH4wvEpfCvDhAAs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2n/agBNKOd+X8XKv3Yy7s1ouzxpMASsX3B5H0lkYUdg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EoS/RYC/5vIbJ6ZJTHbZwz+KoJqgJZYSeipLXsizMWHQXtDY8vIiUhKtv+P1turMr7xCAH8EeU2ixkifRYk+2+06rxUr9m0hd2XY08thOzyXCMZOXpM0Lszdh8wxgKgi15QqoAb0fAq9zyCnYRyJ+X+QQ+c5SPq+wg2cVtOc4tbMmAnCKhLdpsnjmul3NitmKqVjTdkXZkxtApLDyKCaSOe3Z9/3p1i4IlspRaKazM/u1/9GwwfmXBtgXR2sGy3kXiYyF3dePHamD/BCB7rrqiaIX4NIfbVPSJPfV2eYdSJJw66DpaDXZzrfFhThk6YwMk4Z3jN7scH5dpCq6A8V4HqH+Johb5xQAQRmkT78yg8XUOGS8g0BDhyREoIAlYewWZHX0aLGzGrvcwC0fvOFjWZhR8Lolnzc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2omZVbjDMct2egwBaUBO7SL6wcGXp5t94Abdh0/3Yxs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OO91U3BcU4CY5JHaBYTmG7z3BgX7B/3IZBY+ss5E6pv/J9lg9CBA/8MpAZeBrifYLGwmqcOiMbG7GM8uVbtjMOv39KeXRdAsVV88ZqwBjEz/A3X2WPK6qmdBUp966gwuiQlL/V9KQndFywZqzxhYFiY3BneySt4nLW+OayThIcYygAkhQ22URyBXmiD/A+rNwf7mxwmnwPGrN/KzrxwNMv42W3kml2g1DQkuvboORKQuhVAPYsitotjs8NzJoh00YRXml5eyGhIecIZvLOYEjdGYV9kOz2zqInjpA/AwtqS3mGLm3kkvATAUaZoR0Nb41zuNMZ7bTOzxn3+6xc7sOa5I08QRQ+uZCDecOziCNqftmfs0q0eWivkRobpw1QbhYaoma4i7MPoJPr+86zC0HUGDAJYDT/BT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2pow2sbrkhFDtOnP1fUUiWniHAUAoSxYFSZiAUI+Nl8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rKp2N5M79hSkbq+DcJ6k9lRTIxbBoQyOuDpxnV5t3U/myx1nXEvstgqJEhyS6GZ4QOTywJbncwXrfl4sibXNVU6GQpQfzbjl6TZ9G2EV+C9TQchuuuowxpGvWjgCyIypbXkOu0gyoscCn7NVmr9O3f1t4VxHejZYLgVm/rv4jaBecFvWeimjS1AotbkQX2XABPYl7aXdFNbE/W6RJm18GoM3d4RSZ44xDoi7OZGmf7ozlA1pm/EQLl/kMnSVhhYScGawzUyuF9S76krP0xXOlgVEG1UM/7ujh0LA53eiCT9j+X/NZf9uHFYrwypxdEcKCrre4gBL6brvLwCVAI0mkGoo0kQBs0k81Vyd6SJStCLcaasfBfYoKZ7C7rRoGZmpDTqjnrLspkOroystCd0xYE9S6s1YPv2+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2qW+oWrx0ZfP8xserrZtZ0Td8HLi9ll9GVy8pRsUcQc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VCCgADntCWOQdg3d+Q7cL0VbplTJ+9Gi31AT9AWJ/aB7W0o9vijjrySWpT/x+vuJkL+2G4jiPSfBkXl12BvnIAZYgBMyICkXSRu/Mub7JxUu1Pei1s03lrrRSYE6bkBh1AbrocQ2P9UYrD7UrZqz8IlWkm6Ej82iJBIm4DLz15GjY82NYk6ofnzDX3Ue21jXvX2krPjaqD3gTD1R7dysGqwRYtIVX+YXZ766tVoDSM+C6s0tJ4c1cosFQm6MDfpTpRCnoJrBnP9tpLEopuTsaHk3iTHdwkyh/eoWKivTJnplEp3LwVFDwf65DgxMCjv5CGbBn/mGtX7IDVCoLCIeZ6/DUTNfDP68y7JDsVny4wuZe3CJThrmn66dI2TgpoIFAnaFyP9U+Y1yXkM3va9An5w5cUPT4XpE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2sjgMrci6ti1ssqnYtFMZjkCUp1NSMa8unoGdZZqIRE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M4dky+94oT4cR6iekqRSS/Zd9KU79VI0bjA4Rho58qy4rMjOVc2C6ToXDSbCHTtEwU7DCdriJZsbBMFxBPGr6oyW+2ZyiPnUulK0tT74bYJBgZgN3XoNY/ss8YBYAtjJddta8JisEHb/GaQkTb4IjtD4QbgCXWNUO8BTuGMPm+Lhl7coXFB/B6nx5ptW0Ou7UuvdvbH2qORb+HIGFad5SJo4nM3xwssdbxK9L7M8AdsukZ0G1r3hac7MdXoYpdsNFdsyGhTvFi36pMLCKMbhGjKqIfaiijK89Aqj2K1ocYX3fjwXAbfljYq4NeIulkDzpO5SOlix2Bxb0LeK0vkPK1rynXGWxstkum3dqNCNVkv0hJQHrr+6OzlR731N1yapjYQvhMvop8yn1q4g3WL8lRcb5bik571y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2t5dBjBNjqUwKGz8+VA43ucZzLOjwwrYMApScuS3vaw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gRHGrQGhX4v252XjzG+XBNF3tuz1buEhPBpEw8cLlUPMuovAH2yklKojOdiG1y3K2eaN28U6lsubRxxEQ1tHM2g1V65bGO6vTuXphIiBz5ax74mJKd3vMRd6TkJzg05yCCxZFBA/KaSXHFqnvxdmzR52ZmGxEDMfFZ8ecRv7ZCnLC1WQvioR5mBkG8GscZMOGJ8WeUNODP+M6AhdI3xu9298ThJRVcQBomDX22mYY46Jfd7DGcX97fsEfWH7Ye4X88IRnoaZcMJJCIxCAg7WloiI+Yv8vdo4yha+JpY8FPl8jgAkVerFsna0ObYVIlZjMcu3mHCDiIw5vOz+iMyhK60iGejmVvtQoP6OsMeTcxwmfSIhAvdVeQwWWwJD1HMpWoneqW9zdot1XiLs5zfhjOwlckHcrin8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2u/jvNO7UIBNifq5Vg/xb5EncojBIZu6XrFPT4TSkZg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xrnZ8GH4eWpd1vRnV/wjC6E5EyHSYNFbR8RsGKWzUNvPNW4y0AHew+2ak6RQm913COp1yYLAks4GgIFBiwOA8l/V0mwNIVVhyB3vGsWy+rnHd5lbsHND820I9M1LXNhvkJkWtMKne7Uj6BYyIoM5eC/6lFkhIzLyjYkMYo1OowtSI3f8fPHmDZR+9Ll7BrWeoxgp423OWUBvJYIaEsajXAvUa75W+fcXCPl7YJVX4ZZrZyfmAzlqTSoIyHCw7Ily2oZ4hh8MDRGMruUF9k3iryq2IYGo5AomGnp8IOudzFAINH/2Di2klA480DOmyE6X8A4ZDU4Fm4PI+i1c2ldgPfBZKuMmsXknNEmFrKhBWIpgulU6BjRQH5Mo/yCp98QU8FdGKrTxOeKpl2vQNoPM4Y4RFYj5z/o4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2uF8STyZr93hjDAIwe7H63SllU74R+3BrolV6aie8OU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j23ZrGoywPnnzUf6DoU5JclppSRraiXaUX+WDuViXqgTqPWmPM4g7ocXe6T63MzgQrUWaTM36Zi4lK7NqH/BdlgNNHIKbFyO94prLzrzDd8DcqtLc39ATLMf+lFIcELaQYCxLQqsgDo0ILitgRHTmSTsEu/Nf3h6WG6u0h5sj7lsX12TCPka2Wza9m9D+LHTxyUgrwwWW+Co0bW1Grlnh5yH2CplX74QYkYvhTz4Klk5F4T6x7NeCy1OC4gyuE3uFZeUx5ajbFAaHoDVWNKbWkwp0G/MQojyjv4SQ3RIOY8akCUkM1LpRzWDJEOpu2m7r7ymkuiqJLC5HPRcZZwj2Egq0z53Fj5WWSL6EIjV60EVphHjp91UESSseGd4HIvbTsf3ZzPkq6n659pk1lDhT8qtpEwX9q0V", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2v2+uCpopsN4OVHox5PX/FS0p31cVSik8++mPt9AnYs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FK70jsEO0ZKS4YsrYZcWpNNcTMD6Fz2murCiF2e9HlCqHX/MrFTgAc4F9dZV86p92rCJ9gDQrKrXmqOxrKeq9hvZd3UN7beacKcdj+rfLDtmiop2VEAs6CDmF1swRVi6RsW2vvKM3NtIkpYK3Pj8PKaCl5Bky9DHkre/79+PLm8AJC5EfO31F74KF992GMmMK3IEI+xVcvBsDl1m2ExydeETrW/+h9brjq1s0A8viZmn235IPADWXizikFycK4EdRW8IgApnHGSCA3iji7zW4+RqcKJb3c0xwEvD+nNiHSduWnNe34RIut3VsFiTYRnpZSvxuHPtSg9paSbt0y7YvKcznOn0+bZt2pQSVoNJYcMYHMzwXPBUnt7WvC9EZyJxba3pNbAW8cCbVdJ9PwmRP12i7qhIZhvD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2wEzWqQuoJaxoOFePojjXZ0D/sawstJQTyvAmsJy3NU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cYaHL47Au9wu1XqsvvsBhY/uD7z0kaTuKo6Hsgp8O3KY7tGwV6F2b65N26UkpkbQwkwF+Ev+oJX9qkbIoRwzGsSnREJj7kjuzBfzcpkniUQ+uSTKk2jVdCYQB7vkgYIvudKjPZJzeLyRJ7ZrOVZ6F6uCnyMm1yXZTN+wuIQszSCb+9a1YHfnrgcMYgtXI/KaqVuiX5nBu5T1sny2UHWRRwFzOgspwkbmfmiy/euuRvefTMeCFvWZqTzT9fj6f7FPrzqmonAYUjJQaHXDWqUH2sFQw2MQjjW6IvRHakT5CYuzbTMOEtAnm99lou42DQtZuTv6swQb3/YGhqfiSEZawaH2kD9X1t4wh49mApTZa+gGOXjuGDNLcg5AvXDpthb/7xkjlM3eT7emcN7CidlWKoq4HgYAleGc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2wodZpIny+RNEJNDRE4707HNP7B/ustnEASO8+esk6Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qingceFuytLPaVGLZUTxPq6rRmahR8o5ka/VR8ieGILhXZ++knlaiabjoG32SVVU1qOj3F/swmlEXt//kzJImpdEfJ9Cdv85TWfOQ0Yhk9ZFfs+LAHe9PxIKzk3V5CyArFZPJc0tFm+D+j6eud+PPDsFJCJgyV7flHa5P+JebTN87gg+kLv2q6CALDKBkbu9vj8vWAMGS6AnW4M375/fYIQkt6isZ4BwJogNAOaY5Ed14fkVgrK9L0aQJO+VQDAFv3wn7mHaCASdjVs/jtPtDw93+TpnQhyR2d4ei5iFUB/5nMvqmgY2/h1QH1xiFVoWZmfLhb6xJFD4/qvMQVLwZMR1JRAggVNMCy76doJMEL7liATmj1rJEcKO8FFDb15bODbWgkEvvKCfScO4nmyrNUedJrzGfA94", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2xKOAFX2TGaO2yna2jcFN2V4R7mcMWghWHv7C9UsNxM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9KkBrKeG7m9+sAAWMVxNgVREZLHPH8VTrCNKNb0sbaFFIekN0fR27TQwRbI2JYK8TIapxIFJ2NDn0P02cBBPRBp+hXXuDa5FQIzm73I5t/m9AlUJQC8iFS77L7vS7VcqxiC0ccdE0PkP/JB+yPAibL9TMVdlmAwX9uE1XUHcX/MeH4lWWxVe9wLNLqd+PrG88GgWygpToeP/d+g4Edl91tR+Ih/61vQCNE61G+7JgRg8YsNXQz23DkAqnA+iY7WYQgM2WGlO0VUaSnhbcwC8mFJSq07dyaJJon0HsH37g2JjUV4C9t+AopS+y9vhTaa7YJ69kj4GEUMXD+70D3eJuF+cpTa4xVeJaLR5NVmbw2CIBahYlVro+609gxFR0Vdu1gAkodT4Il8QxhY2fwcKqn9nblQAEo5/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2yc35CJQpxCTjE3DZKKf6Oq26U69ocfVykCErJ4PXGw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QSHYPv+O7CyWNci9aiSb5LrXK+ah05yyuI+HraITsFLqV05qn+2Y5DvJajBlq1lrAQEuDVS7bakwZTX2rki0y6MrBeeFmPGsbpL9KEt0vvQZRhvSPueMTOJiAofnGWCO/65B5lpjgB65gnPgTAjNDQVJDf8uYZcWHQyqrwYKgWrqKNou6SkQnlhhiBFVIYDlrZyqRqTNQakC1HDMOOZW7/06ZVD3z0881PV16TMFM1btO3/gJFeXRA5fTV7CY9MDwVR09zAdZ60B1I5WtArYqUw3boM1ar7JPFRYnhGYcfVRae3bDO2nJFJkwNiF8xBsnH9fO5v9RXkdw+0GOEBidaPuq2Z0efT8HrxtqwbmuYecuVih2cLNhRBZ5p5MLPJav7zwtJF7Esh3xGI9BsoCFT1oE+4J/XMb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "2z7b2RZrOJKs6GM7nk/6AsDTsREMbdUKfVCLAJsFXzk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eImhHOt0QdHezlNtKQgH2vpFoWYhPXCXPALMiSn3AqjIwhHnQHT2y1ogBO91XB6Mb8YWZzrJZd8lWkg9mJRKvDUdvrgm5BAbgCu86r3td4uZB1IH1bLjj+ffwEvc2IxSPf4ugdldMtI32cJbNf8oSeMCN5CHHc1vdfibhoDEAVINr3/LK55gFrJxXvfcOTh22aPWzbiCiZGTvTfu/lYe6H1By+wPs3jwYH/c6yJeHbTpwaW4S7YWcKoHwl78xCJPOnX2EIkT3HDdhzG4CbZdqQ08bobmUnqL5ibKsfiVNEVAis5o1Wuy27MBzBPrw2LQCKWfP1uMgcytyqoMOcwB+91vfxfNFzWQkNYZTwu/aVE6hJ97Q7ZCoaIldzyShiD6/3HghnaElTXpo531y1pvVB8CvcJRq3Wm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "30uG9m/apK3i7D2v1YlfYUbLPAGqyKRMX+Jbpx2x45M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1QMGoiaBQsKGaWBrNDKDLSNVN0cu3r8mRVpRNtBUhNT1Y6PFok1VDJmUokVntxqKieOeI4akPgksy9WvH2kwwbJEzilfzHKs8XtZAoVdos4F24tLM3l/RLvzETRhSNJENZ65e3s5QNfBv2CDvzkdEwEK5qNsZgH/22ORdum78+I/T//7tLEO071DGQAezwKxqN/rwG1yrjZQB0M4bwbmk2JN9B50L7fZBP8hRhbIFcAmEDD+aJBdwe5kRjTvcxyKrRRPMtQqQwhqGDWDPbFdLmF72yPz+FbdqzR7c3LNu637cvTKz6sh7eM0A1Re80GPg7ZltU+hexiy0fE9Yf5FQqatFxW7PEyKFKL3Kj72f2ZuyXs6DuQ/zbpDaP06do6i0U7g0IAQ5tQ84yVjDA9Vw3TSgjIT0hgW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "31C++WtBIK78por8XiJ8KjCqLVh90sS53iVCwNpWlO0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BSyCOM7Nsd3tX3tEkmI9r3akDxsIQWNe+nkA3mP5FJUC2KnnQcRt0jJym659Sv+Bj8r+DnS6qgqFk2uQo9gsR+x/chYdMHpahsRPwIghTqJ4JO+YD/preJbpjRSUNf6COYmQfYUJK1iz46VJhRKZD7PwCd1vg9SeZn+R2nwMTpihYA05PyffcjGqu1UTFYX37NQ0G7xHvkbMKVEx15YQ/7JYTigQ9WxVuEhOgHlYb0uTo9zg+r6VHM8RBgIbqt+1nfmMgudZPyEeV4SuMdLNpno8lX9pHQ4XwHaQTF6KZnBtDJCtOnexK5IF1b2YFo/k+lZ6Vzv7Klau/Cb2MVSiUWVtlYDm0x1jkLv1CH+F7AGjsErEDBsHqyvPeg0oNPzlN57muH99+I68Pvw1n5xCRnJqbTfifVid", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "31h3RcDDjvhEGDiSqyTHyX94yqvjhAzSLZWURmFx0UI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2beVQA/oMXQaQ6ItgNugg1E/9HChsRvzcoSuZiPEWC14MPEASBcD7Dro/AXbgFIu4ORab1RjSIsJXhQ1KvFvuQGCmVLNRI0T9Zuac9zu9q8mvPiAilVTnTR/yVMzReXMuJcaBblIp1Ea5nzz1g80BSYrMxb9xn0ClDUfASfwOaXdmebmP7NBBE9lfCDvJDz6Zq9CTtumyv3G47Ca5iYLW32gyBIiima79QWfD/SjG7GlbXqBob7VXlWBpXmV6zEDaAT772HWPaiB2A0x3tuTH1ICiF6zKENUoViWCjqvke9tgIHgSWdc7S5E+PvjdmUN7CO5cn455Mhgb2j4g1xAl6d6aWWMCc9o4QwW7kbqItOjz0yGYxLRg2XeY4RtwG1Bv6ObEP8CDCDR1LlxGXUXAaqH03+Wjk0K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "31pOtClrm1UUHD182apvb3xr+Z2SRJzMBLULRkleAEc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tUHYOHgvsJMJ5O7lzJJwusWJxslO39x59bRaURTBxp2O7aRe61bro70xMzKO0PmtKy+LsjDoBigrhs1sp0AnuifsB2wu3axRoJAIKWyGiNmSSkznR8Dtpp5iaLm11BeaccXUgcR+zMw3JWV96q82DsOix+fE+2IDBTWUNHkHc+LhVbIiTGUa1e1Q5B+MXJGTEAvGH8/W/s1nwasCcdGHyhpr4t2pPJCtaVuZoV+jV3r5lz9fd3Cimrd7EkXZ0tnjX2r2LfOkOvpepoxiJM6ZQvkYrDCD4hpJRZqWK1yad2lmmu0608epWAAwqxEfwIzqGICLEeyJsrBgjfabM6JMdJa822dSpXuINCnXwsplrGGhYgwF6XO68ubZFVIe14Du2S7QfkQvHYI5OyQ9wxhlYPRwheSqsDom", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "32dRjf24gU8iOzdjiz6J1mb07dM7t0OkLBOGg6oO9Ak", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xTAIDMgpKeX3XSNuGQKYHZ++AAe7R0iolrAV8Co5Up7mqdwKHT1WIEZ6HixDtLe1XZH8g/lISiQQsdozlCWfLqk6asZGO0V8ijmEpQRVPfVn3zAAb+QgN0BbBDhW5j3ozqj/Pn9NObgWCeHb1M6zZkv4yH48qFWXMm63arhDYsYDTqAqyynOqK9vC/ouEzs6MC0duP+6e8EsIo1B0O3VR4t3E3zH8JjqLTqAeB51SnMp1LMiKdeJfsV/fa5wNJwCQdiiCfic73Ng9R69d6ooMw5TQi7rJvdr9Tv+jayOromI9YlpALIEcHfevDaPc8ib8mDt3dDtkLAUXdzDrg3WfOYbhli0WMQX9ut2NnPMuz8RnnPQ7lBkkeqpzhO4Thmas23Honzj9DeyaUgzeMC2fRnpzruUsxwP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "33IP1sPvDcqqiyoj/L/rT9D7sQ7FiUH7rVcv+pBIrGY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kTJIFKyOMPb9xMB+D1iXY5F16pAS/79Hq+OqBqDFWYbaq9yEfLLZkDOGVeXKO6XM9AV8AmhHl4IW4J4N+sZotf82FftgXMW+IKYlnc+gNgE/30eKrMIREYOc8VjNsY5ehTV1mE6pEFhbUOAc/AA8S+O0pFFIvqpKFfEuk0k5TxSPjR6aAFFHTxk8xIZUZq16M7xWnUlUSCwnK5cTbTCIyysnkXMtFoW1OGF6KuHkOic1V98aLDLzVMb3HfMDQuPhquoY1JRQ01LM+ML4Chupx1f+CYI8IpKMkN7+9aNeG+5YpLNQQdwzqy5646vHxrDgMxH6ZAgUNtIJ6ByH3l/g2CoZE15SZkMNYJdeMFkcxfRsBpcMw4D3h+uxV4HLWHYG64WdYXsi/NfxBbpaQHoE37zfys33MEZr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "341o7cLzc+5zHgWqbp4Ml2VXateOO3Tl0eFj39s1PYU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tGG4bvli4BurUWdUD0w+JJfU54R/mnNX/zxFdks2mKzCQi03oeBXWw1iy72iEFzhMLBkqX41KIrPSQxUu1LFk0sVoC13o4E7+AEYlXB6xILiTbhtDqwTXl8mu9x/97pUY21ryMlz5aZr6xB98TAktpq8YYBCB6sEWITbObo1AMVHId/3zmSkrg7WRQQd/xofRnq+6NhL2VPbm6zd62a/T1GIqP3H37O/y+N2vdbUfGRFTWQ5NweEg0wIOspHVlkhem1gFZ63PuBcTjW4QdQX49MW2FzNIWggVlxkLYEa7AFcu/ruqijOypmdGJwQDUjHgON/+0YguLqkfooo0izYdHvj0+m7Hq0tlgE/UBh6goAPWJtIh/L1yZhQQCe7S5mSxOOxtigDP98hOTaHusJtP8YbeE3ZpVia", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "34Vx+q5Ck7S2V8ZpcupjULVrvy9ervtHxVJx1Z+QBpc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OU9+6fcIbWQDaAE76xZ3r65LKzOOoGXRlLWPr7GOV/35gmbufuBuml1k90hU9zYH68IIckYt01FYyAvVjpGFwYfHTCvrUMaiiqSwwQ7lQDINHRME1lRv9Yh2geOrpxEwiAleq9V8PancklDu3BVVAqRxTaHgBWvWBsXL9cS9GiIrMYcbDCrnCP5Wy8kvmF1XvdFME51OR5tZq6SatGpzI5QG7YzPs6+gAYnTgZV9YcKh8jSvOnrLpjFK5Z13HYTfISI3XTBcM0Cj5GLrwYC2y9fO0Biynhxsp607P+b6fCJp6zJsSlChX9Qy9ZhWjW8JtK8o/015S0UWNI5IbcvjNKWY6w+05AIVQxDxEtFs80qi28A370rFaQY1651PoIskMnmFFU/j7eZGoXHqst7RfPs1o50zNB8P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "35o3qpIydxuke5muVwUkUgNODUC3dfCemlDjVndbXms", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ullCiUAydE8GSDqHw5pcOiyc3H3QO+/BDc2644VkYvWyI+j1Dk4tbymaicG3mKxyl5gtyKFAR1nUKhuwmYVpOujQvS+wC+h/TdV/6tpfKy0yQrUjR9o1vpxbmz5jTxLsieIK3bsvOlDAmL73NaTC3xtos3VPmYl5IbpFE3eh2I3u2RNTy5HlQXtfpLwHwLrpclB59Ufle73JAR4DHqbCwvoD2cfSZPeuKetahcbeuUhN3MCPdn3bxfZrNld7FV9RtFTd0CE94pTIvzF26cHco6z/pl8qBDj3xKZ/diLrkecYlCcY786j/pVeTlaSZpan38eHMDg/Bu3IMQtbHl8EpOIZQa7RVp0rGmPGaBJaXS6dkMdFohPo3vpt5xmgF9ifdgNDNkvsORVGzJA14fw4qWd3UMBKSeiZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "361HrCfkYJYFK8wEKqAlR7FpbmpF3V14yovSm7VuFbc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fLR5b16cxF5vTMFvabOQwjKjTdNYVw5ZRF/CcHcCKjU7vwMsoNgIeWllnxmYvqo1duyGACQJnL8OprSESAtAbNb0hSbaknqZ20rBO9MqRD+PBt6cnYAqLsuPXl9GHxB1d07rRug5/oP97y97kl750y8fzshRBoHGsv6s8YqeHr2o/d0yAgTM3PNthSMMormsoBbs2RVC97OJjupsBR067QOmzKzH0hSJSp9ndWzvbx5N09OhgEXdDM9JplzAyQJMBjGllFiCvLoEwZGJN2V3k+6WJO0wZK8kOfNPtnEVhICoi0eGNS8zjCfam3SBvvAAVa9nfbl1qxQAXgNBe6PULy7UAjLTjuBCo8H9nShEURVaWbBuR2rw6H5sw7Cd3+qzjghlvYV0eDAeaLWtbM0Vffwd8LS+vlpW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3851XRgazei6EQ9uQ95CxowzpnJesvSgeaCgluy39js", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0mgsht0jpfAnkJSYc1q8w7kgNaBStUPZv0B85S4G92HFP9Gdus0yetmrcAo03BRdBwvnOjc8ik30yzRx3JPHdF2G5gmYiRv0NqAfxDPfiLAsXDbaiUD7AYugopYwIPsyU8IHCFYl9lOY1fzzgFdoiQhcreAOQ1+xktDU72JxTCC09YTNVl80Y/KFlrxvoD7nl2HZ570MzQPdDnTntpAkZ3Pft80MnKgl7c/h8i965sURkbrGFul1NjnWOudDC25tjSlmnlXwufnqx8drFi9CnY75ljGXrpTNa8U7Iwg9n4Czeiy8ebcS8/k/odUcTF8F5aFAVveDyQdti9ijCz1aLDDZb905BlHAtmbTiVYGrS9ZozG/XWHxR/zUTqu67O96u1gvKNT9tiaXgtV3Od7V6ueNN7IdGikH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "38GRNPjY2wmWvT8FBH6GX4Ha3oxlz2uqjGNNaiISYPo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NKPhBYgGCQf7KCgs1LqpCx6CuISeCQJnVfdi0WvuJpLuM+3nmhQGJXGvF2HH6foxgIOwW/gp78CAdIPfhmTmTmXPo60HBzDW49fFJ//zTaECZuQftzkEIkjrVffL1JCN/xEgMLdFVVC2o0hqfkwFMh46tFmk4tSKU0jhCDjU0ONyhLe795ZHod47dPHezW/Wt3L7obOZfrIqb5a0vOFlO7N4L9jB9hiu3MIlU26SgOU9VrOt16m1gvrKbVAW4W+JZ1uxCLWjCbna4JLWc0JDzmqciKcjKUCRo2smU5126AjKmpCSPcAeG8Qt2AikAAPrB5ZsvTCV6GOfTk1RL49WOevdj/yF4EUr/CftvFAKo8OjAy+pxbjc4Ai+6iUGlf7+OZyu8TsA5BrtmDXthGJPaG5T0Wyh6OGF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "38uU3zGUJl5PbyZC452iTaP4MN1mMFH88JInllhKj0U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iXzkOktpN0Nft8Poj0Kn4ieebeAKPmihPVYz1XW5+erKCrJlKOyydLxTNBvQ9VgxdPNhJD8s3Qhk6+Buwi1W5bnrzP67F7T2lpWJ9Er3ETuwxnDwS4yp0+dMmPkp1ox6ckS/nwZeAVYKIHYHYq3uhhZ5bqJr4LmO7FxGDX3Ho48qeSUdS+H1gbZjEyu4a7bxySfoANZx0als9xKT3RlLHSzYfq+XE2oWZDK5VOdS4ImKqIZoisTzLaxMARQ7HpVggYx/khpwy7PxINW6vIzzHWvo83oCPqapD/z/VmRgUFjZ/7/qyOOWjkieGVftjWUeBrRPWhfGmnmuKCQSO+X3F1IZjhRPeMj0GTZ8nPoIj2RSAyPePmHWhBQzkJK322xkQRBR68P1uKY9wRXOZbYqkqLduoXB1932", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "39J0aImYA1tjS+m5QHE/n6hNXB6bN/5dQvyUB5iSwzw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Sjnmfn0lhU10lFF2njgU04Q279CNQWtVcFpbUlmgkI/+etUegnAaMcggRgvI0WZ7soLv3TzQsh/ZxldTfpU4J3rDNe872RKwcNRlauNqeWSMNmHtcd79GvjNbLZQ6xePqdspnV6K9eF+j+8V/NzgO4PWnsOTdC5q5FZvp6pgnnOOAciPqOsvomdt8CAuQqEzcHzx+jpZSqR+j7MKxDdI9kNptK8fBTWzmPDRPLLB0j6u5qMGTIIoUK3ZswrDsJua0UdKUa+u7mZH+uiEBGedigYw1ajXNezFXBiad5XEGC5I8pPpnsK1Co30uodFBGox9UZ83cSYHs7dPR7cDKRN+QTmzKKLeh3VkuEMkvcyM2NXFyg44YXMYNum1LV4kOpFjrvG+Esj0M4/ps7yfGgGMDqImrpW9VEl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "39OMtoCqD+qo+yO95wrG1evuDeVkdMRTsHk0PY0BVxM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AMEu0W6Z5XtQK7GS+gq4/X/5r7QYsxVhEZM0q2Tr4Fmw47/Fv/h+e4Jc1cbMfCzmUOIKnYrCqBpvGJVJhyrRpqDytJTgsKCmygaLEVbHrU5mlGsxQCN3dz+G0zUOBvv1Y0C8Rljf3jew65GOEFCkYuZOTQmajAaQZ4kpY85PPG48SReZylG+TytmhoRc+hnuariDZbTeiXladXryxqn9Z4S6z3VbyGOw/8l1cRmz7DjbOChGBFcc1Ab5ngd4/PCP94KFZYbHpVzMvt399Xbq1PZiSCLMgGMgPL3ByhceOChPeCGATRChCVTK7M3nrjm4Q4GQTqy1TmWbbNYbuk6EVMv3KMWEAcwnSojpgE4zMli+XcwtbloQHcUHOP88BP1DXH6BAOqp+/KVHouhfnkNYQnyDoVi6vWo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "39h+NIopeHAVIMgQ6nIHfrhB5+ZVf53PBkPaey35JBM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tZYbxPSWEuXTZu0XJOPSHA8pmiaHHlCle7YUJLMZ0bUcoWC5XTTLonYBxmu4Lm4o0pzaN62t9w4lwOCUAe4Lrm2EGBvewSRwgFraSgG5IJgItc1b3zcCjmYTpYBr6Ij6AyCuYFGN91kPTUfDOddv5VQ+FFygiAUqRHcsgMtrpDOvDQHNszvaObF1s/Hzrf7nYL9n/QsilpN2FIQrPGZ8vupV1ITbnEBm/c/NOh1Z6uLlwmyCypjJ+7mju7VIbYRo9ZZD1xwF1eW+6A92gryl3v99RKXjDMWLdOa7bLFU4wpnLtH1NSdR8ydEvjKGeUCBf2hIQM4thkM5X9cbrYhNIsa+B9WqORTr041UAwcuLuLB+sKPRwA05G29hcCOqyohXe1c4juS5i9G6gr2PMuGLMp3n+93Ng6j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3A7FfBBDy4g4AN/Vt6jlBmHetJHQkp7qCHfJ7n2BqnE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Gx2iM15J47d/a+YtTvfZO/uBqw8MMCVoIvQCpebYqRxUYSqPcuriSC5MgJnqUcxumCxQaCGP4/uGhuOEZQxHF20LtBCFnzL8ezQ7BhOJr6MrllcRx8fVBkJ1OICVVkA8kTYaAVCERN56AItavKX7LJmFXOJj8LAyN66T7/QJftU5r8N2JfL9fb7ebbuEGosq9YWC8+BdchKAZ+yUk5XBpodxRjpkk9mflp902ko9PRP2n2fDQ6o5GZFhcXhLxgI4NRHnSB7bzPw8q/gsI6wXEIY8OrgQCpxefDO5kQMkB33GNn2SDKxwNAD1y25kefaKah/Hn2uRI2o5oUguBnX7hO+GCSttZhcVDzixlpewM5Hg3x/j/xJYQRks3ITDRJgOE8leIV9CjMnw9AJGDqcqT0aD4j61+y75", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3Br26T8lD/qfke4bFOsBgOmjeIEfFDsAEIST6jZV3I0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eJCU+UcWQvpaoIQgZJ51ogtrBgHF4eSpykxpk1gPJEPehBKLnCtG7LKsH6jGS401cp3psibLo9yG6g7pP2JNvGgQp4mTjPzw2I31f2ZfaePB5gcIGsQzX1oJyftXuAjO/tygc+4obWXtF0+JSAob4ET6pu/H+Sy8vhMTlY4nFCRtG0RJf7pXy8SnpItoFsj/hvErJToCTOuLS3KLBKgcb7lv/5DUd8FNWOxHj4Pm2pMnbG+yd48IdGWDI5dgWoKqiTE8bF8e/bDUa8QWN1HyplZ11gEZrnmrr1VFTqbT+kq25r7KAH5ZoIPS1vFxfkEui1JBRJ4n+rLgJmTw3V5zwZ6tN/avkfXJnPv1emERcJ6+PonG0paZiKWKuLlyM6R+nfkloWuJPhiGOn2xQsOP/JbJLndy9YXp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3FvK31UF+QIU0V3Us0gad7d/0B7j5cHS6mpK67nTFUk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jj7PFOA1HGJssJ1TnJvu9R2DU/q6oXYvheF9MVFuBnbO53IRgiR2BcZVP3udC6XUFf4gBRjLvoUvmq01c1XfYDqPZ2YN1SqNQbT8ixXlFeqx/Z02ERA1G5AurY3qIERNsoUDZ0CXWqGarT71gXaw7oTNBjFETbwNjm2c1Fq3GXLQxiiiiYOfRo3ttx/b9WTFtgyrW2QBAwlO6hZDD9EfecEELC6P2nDie/++G4K1zKhH69790B1MT/oP1IrTIVt7VPfmwGI1OhHd2pBoJj5AFwg4+Qv0XfEs8ZB1DDtwv0DOpbp3U9SDNOrenY/qe/WfHyCjv3bD4SNSHYkm+bMghOme1x3sVQWnXfGbOjbt7DmlacDt/ZCUC+/5DVs4oqu+8/VcoHZ0sxRrVYCU3jl4eRyDtapWlUfB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3GLQMvmvzFd4WG/orW31up2ckyblNVQaEfhLGv2FTU8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CImoeESpHJOELhmG9yQaLWipZfTZXvdqbwPajvZynG5kkIXbRQhg8Y8QVkihRpEtNeRug+ODg1HazaciWqUg/PX4Ey+m1aJ99tiaDldgkQQ5WtrTdmwfCIwJFMIg+I7QhJE5+QjJfteYo+GRvqWf3YmXxpM0/XJuu4wFlpI5hLufhmSaHmA9xSiby0O/dcmCpvyC3lwoGkDeT3CH11eL6PHNHbOofsiFQ2j7rMevEEAsbgwEg/nq1rjcImGeUoGm+RLkdimEg0UbdeU9+oVr5h6fhoPqn8a+5RPIuupeSPaW44r3ciCzUDJpKnF+gqGz1kWwRNi4toFymAHH/MbvyfO7gDS7J1NOslX+fXV3Tha1kwy077m2nE4C+qXX/3izVoPWionTPdgHRI5oVZwqZyJIk4RSg1jB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3JEM37xjNAvPIQ8M6GklgNauOOfxlaZdQukhxIwKeAE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r9UKelUKyTrcwHmWFKv5EVEwNmjhCxngFbaN3p70+62gKQQ2YIOG6yj4HsMYX9vZh5KbQLk7v7oPVcOBr0182RP4pURC2KAB8AH1KZAHdo1Z08rJYHA+PN1701dT7AIWWs7wfaogHiloHRBkNzYypvf7ABUBe+AVGGZezfTe42K0XHzXVt9aYmG/9MI/xI8M9OEfsu7a55DoZXHB4Xm8OTx3SXmhuhdE/UlsRMD/ZRO1yH0kvehkKaGGKt4hDtLHLukBly9xVQT3xzBhcpzKSyFyO/idRVBqjOR04CfGnUupchMNfQ3v3LrE7Y46W1uR0BWA7X/fUf6uuf61IwL0cegCtpamtwRHNGezYsdb2SHdaW2oSuBGsZUHLuziRx6JkRpsaUUodlyNwtBCr9cPPPelBVhwsxZK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3MbzBaerYfQDps2JNE5WZhlUXYFLLr4m95MvE+fllRU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6J0416TvBotlX3mmY6n9DOfYCKiEnSoiqKoVpdfm4nyLWQYUi12bIfSgV884UZyvPFeJoJs0rf+YiRTQyMqdefcm2UVZiCt37j4s8eUr5WrGEh3LLKtScodZY9T0POyrdH4anUU2JYK4rOAItHWyedqsRtUs5T4xjOxRM3T8TYfqPHYwvvC0dMviZ18AkDQsQmyeWVi4ctzfucD/OgqKpf54aJXw5rrnDZutDoRx1i6+qo258IvTVgJwKnaVRoTak4xrfxT5HZu/SvGUWP+aZ3vJNUev5VA8276wSD77RZDBpKl5nR0BXL4HQZuPL+/mH232rNVd+fboVxh6mzPacGAi04mt15c4ZOYPHlUzJb8cuFvmh7mpYn5hk7cNftu4CjMbcS4bknkszbx+0CzQrdWTWVuExo1F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3NzYP1lWkkraCAHjuDi0yjp+5o9qSw/doSf4auBxyNk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F+xLOvB8S7kIkDmB+t0v9mr2AprzyLlsRLzeAYoCk7S4XnfbPeyNNQ21MEMj5wAAaAogTN8FCRYR2jQt3U04cKvvQP4L2IwEb8HrsDa/fikZ9yPQeZHGmeVlDx44QanH5GMxzPZMXV+cIr3QZHcHuaKiwdUjvxvbmnXF0cP3NpKlWIEjXaSO/8FXYFfnWoUa961ZWiJlyNhlM3DDlpgjnnMqB2yG89vokLI/2pvEpJu7zAGiBpMJduYXRCxa5eWfO4JhlnlA1IjWp4ByE14MouZ40FeobOVmUZVXUE5AlJpBmENpw5PdGNC1l8Ek4xO29m71gbG7unhaaLj7kOXfIatCn9aTwYuFSLQ9Ws1BpUuLGIS+F0QJcoW4IG34uaf2KyNkHzy3DiXHll705jdxJkON3ShUkh4o", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3QMuiJVZQUx2Yfv61Fz+/YlmjY41wU9TqKvsIOo8jjY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ok7ylwikW/Ln8zmu7I0iHvaooa+Iu3y1GiQ1wxSIa3W/gee5bBJC8tRGDoCEGNVLyVDHLXyLMI+6x2fGtPp08tgD20JcfV09vXTEdAWhgBl9gPyJNYEv+5RmqBYR/bStYt/92vZe9XvQdezv9OOdOHyBFrPmA1hKA7icECReMqyjQufOr1jk6e3EGVa4ENWQ1iJRI0870bvWPH3dKzED/k75oYBuvvhcC9aN6UXJzDmVemKMksU7662Or3ETIoKzIEWCGu/QAwFDUzrFtvHFNG09oDn7n/dPEsLxhFDVXjwncxOHJVnTbB18ASOojMgw/YVi31qxa5za34Gbv1VKYCrt/zmUzhKM4E3suRNLfJcoF5EqqQQ3Ndj5JI4Fb0vYwoXLJaM7ecdR72nUF3iaLUBV7KlDwyv7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3QhXuBcX/l6wHxzRHuM90amy3Zjzh1Mf2ePHwyvPHXk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9GSLXeUFL65caEr5o7iD3y+KHs/8Eq9kviOtxpJVW12smD0gppX7SjNUphxr7qaS2uo5FJoWK92ViRp2VAMEjpFfVw80a2MssqwHsTfUpSb/KC3ve9DvfIxZHuS9jeN7RJT48J3cFcAGa12aU5SdNFusLmIdFvx9PGO5QhoGY44K+uO7ELxIkNMax1ndBcsHt0xE9a1/jeP2MyvENrSF50aVQlVjCXsZ3CYMsu4OQ/y8F+JxOQzQNhN88chNhf/amqdRV10L+FAtI1bjAHK66mvbki4SckzK5ksg6wtrYgdDUoQqhZbmYXLPy9kiuSTkFlEZUXdRFyQgLQIk6oJl8HMaB7kRFKE7ZYw0nq9GWmF1Im7YQGX3NlNUnUkQqSGWMscZEpx6kPxRECYHedVYTK0mtrXjlxgI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3Qq7/LhV/32LcWq1hZVSqSmH/PI3K9oXp8D+JohGiLo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dkhm7MnNPv1+Rgks6R3U2soUpUUpgQB/nLkBU5koE1QPSLI4LjKlTlLs7zwlYCVPy02hnGdHq2CNxid/jcAYyxdE77cK3055Rcmx4hiKibu+gEF8eWj8Qi+H2m9bV3QiuxH6rOcBab0ZBf9Y0cAmm5i9wVTgce31WqDYDA6NHEdwInsm8INhbQqyM4JTvUnKdT2UmEoNSZEmGlOBt5yZCmIivti5eKPKbrLIuA+cpsO75cfDLQKAV1AAf4OMpORl0rNxZKkhD/3EOos7xTKaU74lIk8DhXUtaOWRI7HLhMtwDDy/6/nlpLeYabZGydk8S4DvXsNWBGbPmdfEO3XKpxMIEMS6CLIKJ1NZRnFIMqgO/1mfqFVUZhhGr/BChPNGnpueaghr4/IXSka/lCC8QNOLOSwdGMxO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3T6X9OFfzGTORWcDPMCLzPEOiBXRq9uYCQwvOKaQwaE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zj7dY1JNqpfPR1UfVthXGM3+BbB3XyLylKqHey4l2Vq2pA+SBgjppw6D5Cj90u7qblv+M+58jH9Asy3vLoaSRv6xJvv2R3uGIv2pJIzj535Fl8myh+gD50rf77jsqhFVG6ijChdIx5RAKBsnxye6SIWfmRKyx9T7N/iIbFxIGs7uCmpxBfJ4CEoemnBRpAhKpzCn1+SATUWzoXYgg9fLNwYZ0cocdwJhlhIF7d737+omWOxj78kdHeKBKDMVVhM73rrvU9S9QKSUo4q9u0F/hR1k/VU18k2jXsjmXbnuQRQCLl71Wn/OSazdzI97pUlW/Ht2C7wv82ZzWDfXppyvvPiwJ+wX/nkcekFiljEuM+NmIx3WTJQHY0vlvC+zFWuB4i59G5sy5mdPw1sV+fYBtqxrP1RBbcIC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3UAzVFqWAxW3vA1C3iVjeSSkiZv4TOdwBrhBVyqEL1c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XiH7PviVlUKStSwhYT6BjOqWwWwZI4usSBH1Gvk+zYp4KamoMn6FG41cLN3u7WBgRwjN8gczZjxHJZB79ctcNSDLps/sy2EWxRgWnYP5sv9ryluKR5obqOpF3BlJYifHyo6ImoTb+MFquzpk90vcViP10JrdsQ7XX59UuQyVRqn9CF60bgAzmlvtKPClJ5THJ86XfxGTA1pLmhMIiUGTeaNjQglv7hMT1COfzQao+weqhLPNwmI4xcedn6hq/a2MHtIgg1y8Z/yHuBqqwTSoprQHUPOSJELUvCcp7qHhxKaEIFaQYhV0hREtw8UDC+4Z6zMkEbJ2C6IfgZ4C/NtIPdXa/q66mYY2ItItlGOxfq6HbcleMQamanIGfPwgFjCs+6rqWiHgaKqU8Ma8nW6+BP0bMVc8F0n2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3UHuWmaFZDePQOu1aA2LAYrzBKUI7HqjcUmvZS4aRRM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S/prEcWBFt2DpigkYDllL38kpu6iY/w27XazWozjoWCdPaviKysF7Y7BwR3JczHLfFFZK66ffmAekgQDEUWHPZtRzVEVlu2TWHJWEE9sqcyU5GMf6uQhTkYfOVi6X/0i4ef2oHX16fE5GnVgK8TRpdpBRBnqWozj9kvXtCCIHXz+yiggTx9Er+N9qJ2KGtlsslwh9/pkMjwWFJViDhBf6TpfEjA0HZ9KGDPLa6MDQtHtsA2sBukCZCwVdYiGFFg3bFnFe3kyMfBAPWKZw2I7Ksaobk3bm3jtXGjhX7UBMrcc2QQAu587pYf8Ixz6gcg73rvaWwdltCd3Y/5ddSQOGS9irlKOnsC+TD//LNFXNos6BHzQ8fwuExAhnmFedaxA1VboH79/NbmGzWVMUr80b4nHJSMBT3PC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3VAqrewQiayWLtFswGN5izJw/hC/B2UOOCq6VrluUeo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gN7wR7yEH5BiybpPoGhPOnCLFLBxNbiTUOFf8K+OF0f4jLvQ/zHmn2sGUfXVbIH7Q+xk2cKKLz3LUo1ZBYqa5HI0oQNrXEibDbTJZmJIcSD5GuoslFRK0e49W3F/C3f1pyIDR4pNwUMn/OY7JizIUDBHAuSUvJ4Ph3nUdx4vHmrUm37iq+Y2riEPAKZCaDTFQIZMSFW66PdnOGpJxnmqOtV44CD8SpuoToGRAiNRVE/7w/zSPZNadzQdGSAEe6ZX2+qe/iDhLMOeXT81ke88BsZCqGsLAkpBhfVc4K/ur8XdE4K6gEYlEkOeEtr4babRAthExGiBC7owLJolE9fyAFzC/Mps60jddU5WBe4GOOKJbZYIy8uEZnC9jz/qQA1UGPnnd9aPUgoKOqZEvnfGgGHoyPU/typR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3WNfjH+WeMna70jFO3bFfYnupO81MoTWqrJIr74npIw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l00z3xFaatvE3QVZLBpCvflwpE8pFixbzkxx3n/sXfYYiKgZNEh61DakqV6JqG9N7JsoYkPTHpB4aV8g5xIWCbBE6zlk2OwRG/H4zkAhRv7isOBNnwlhAjDglQtYjf4EBSgWN3suIDNSblU2UmQGJoO2eXEC4oa+9mQs2VDYCtozyX7q005fchucALzj0IFVSHNRx6RMK+42eLJ69V6jZl5SB4B8uI099dLpiIftNkbB4fRloIOLEls7/iXDgR9jr8XcEc55g2h63nQZSaQtFzQi2Gi0fRfSw7S7ZF820GT9Y8ziHEwafg4h2KKCTk5+KKmWH1KtYzYwGlxszhxKvB6DivnrX3JqkXopDGWeYZD+SGHJyHwrs44Ki8wuZMlyoVu71MBBI94JmrGU9g7Wl74aM/lQg42c", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3YE5bNTaXYBtMGyrmPERgjeIt25LjdOoJfwp6mTh/6k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "StWe2wggewcwz1IiTjnlp3GmzXN4hcSIxkkBY+cE2KXke+OgajCsKdUxs9recFGPweuhRZo40fBWFvnE3B3ldXHww62GWdld8oxtBaZujRxLeDx66wGCZ09I6ObxfIfdsfqu3c33tMQWbRgPEagWZ9KZ2iT3U/gF0Xn47kYmfesNSPACOana98LyIoOvcCgOcBGrqdSTBQydhdgI68nM5jZ8ivC2di9zP/xcb8o9PZ+9H8ommyyzWtg9LIIh6apqwI56FMJB55euAi8Ze3tuema7ADS1CTb/3cf57k0vryGfXBhnLnw/WuRDIeFP8Ae1zQScLcELlLE/XccFJMbrJ2NQ2+XMzD9AqONGCFh57qnnMhZzQEWevHLkKH9GDi8OgLShiPo1KrZ3vXsZY1u4eyEvROU1ktFl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3YTf6NdDLPBaUAWwxd0UOiEnMsuRzzkXwjYz6us+vJc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FeSw1GgT+RUut3/8HsoxeoCeG4FpHCWKDZ29+Y8Q+kGgMHyDIpc5hfvGTEzokRWlUUN/oW0ZccFMSoPP1+xdgjgv+MTfDO//MXNLu1goYPPI7tWypGgIjVZxN5/EOTZSQQ+G21/jFlro46VCISO1q+aol4sk/h7VUD+2RaoAPAyHkGqk2z6XqNHKkszE9SSCHruDdLk+95GTiLtRZs6o3XrfJ5jJ7TAJIfpV4qsQFztKC8A6KOxigaDJVNtXoaLvX9T01IC53WxTrs9zZPCfyNgTFCPDaiWeXE72BSqLlDTM3xl7XIE3SidjEWRU6sUzHW2e/SR11NFVUBGTxtMiUkmhrKQ9KJMH3z6hbK23DMZ1kgwUkTMA6mUMF1SKwj+S7/eivQ8QMqPONm1cFthxN393r7xZw9fz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3Ycf1HqmBr+ja2nXU9IG/H/D9dqut+i4RshuZx5LRKU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ASyoW6omZw9ttPorNqHKu2MTjRhdq1MzywKK4Evb5fPynCrSwwuxHOOsD594UZTpR2sQDe5zlc8YXl3qDx41AUSi5TIh4G9ejk+kiwcoBIEeExwkVr44NPxqOjDNHXEHDMQ4RLzBL/IfxXUHNHhN7ZfSM6e5h9txI9Zk9/Vpoz1aF70Osb1Kpr1uBKCFV34OtH0Hap7z+2uousgA2yBwPUUfHHQNJxBxbuXaiIF8LrJZBvb52ZeELJr+dxUbRWNXwcdAQaCbqbzPPqubw3Y9tjSNN2eDLRu1iIMRUSwTEuYPlN+Cwi4y7bCDvZcKttrcwRm5SZ31Sq/bIYhYYP+FbCJVmtdSZ54b7FnMtz4u46+tNveL8I/FABUKcYWE6cQt7BBuOnlAoPGVev8rpItf3BJun33DHZH5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3YmYjU0QYkM6k3EclAY3IWv7pQ+A8lVJuKRBVEImWnc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rMTbz616aNA//exiYK4CrmICaucZhoUq9X4pBdH9R0krqTGdiN2AMTvayLZy4Fmux3sAyLJwI8sl1KMi7f0PmTJ+4FWRBZ3DstjDoS0fgP/6LqEuTXeT16BgVcY5lVlYM/VOGOg/Bv1STpYGdddDdrRsaG7lMQSUpHT33aB8gQ+nROWgZRSIXfYzQCnwLA/2adDTqaV2oJlKj7Uo+bcr7CM3ml1/UzsT9eiZ2JLMUmiXcQW40EcAi4KafqBNL3fRBrTUnbmcJpdrV/zsyd3iPUCINLc/ZpAh7CRZsqP3bHASlPKM0jUwSvN5tiVikA8WueTXS3dIR3qgDT5y9FOcweSEnHNuSVyoHKQkHoxCTQr5przY9C6NpeIv6dBsQHzBJ72Ymti+ooAzVw7Cpb3mXNAr4fOlbTyV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3YsIC7FX7iheEZTmpZBjSiaHR18uhgz4Wz4rN+MkjFo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oDTnWBI1BlUlsaFHl1oYdSheLRXkEFtZzgl4/DI4Jt7bVoRUQlbn9A4C+H4ElkvFEbQoHIXm+v+7c61QTSJzOfm/meVOxSu973Ig//AGFPyPCKMyYPArPt10Bn6nvqHfniRPB8QdTuuxa4vcKUenn2zQnrq4mCulSwK8Doktlpb4OZxJuuQZs11DZOVA2xuUIJRsBbGMmC9fEztv3qgQ2mZdNBk5bQ2WCj5hZwOHSdZukcr/9bnuZLhbjyvAbDEkza7PMYHX+PxGY/fPW4ytRV8EhNS6sv0BeHrJsQh8NKdn98OuZrsjYPzWKgzi91Th+5nMSz/+75QjvRSQRkBqHHrlNNw9ndXCRVPcB5lU+lfixMkcNeqWMm71aqIRkom0FwlmEk2T3rg79cmrekaIJIhS8m21OLbu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3ZkBRBmcaMrH0PAdZtEvc0ai/u+X0Nto999FY/AqJMY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o4OSvyc6eD8+Yl/lmtqnLPQgciJzm1YCIzbIQ2R2A9wuyA9SfsBP0TQXp7lCM1Prh61OaYHmJbg9txg2ZhQsClI9JHHKcY6Vge9Nwi3XsRxnUZ8LxbL2579D3D48fMVSudZDzX3thjF4418mZ7Qf0YQubL4SfvlzGK4ZuyJdYX27OQFrCtIAhLvQAm6wrMlv1ojLiV1aNgBg2wSFP5QE64yjj7PSz4zjQ5rsAasM/P8dC2maq4/FvcwX+TeyL/WjBrGZip2zFMrhRDxG52weylzmov79Ua1YbbpT6Ru3mVgPhdL1PiilWl7JHV0A4SEbzFG3Mba8EljDeXvd0exTbG3RSx1ce9Eza4Q1iq97Ks5HfmKqXBmpW8Zy0lt8MfDbJT+ug9PQvFcGmiKK2B/U1D3+z7D4R+4O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3aKzdpPM8g7vyACPmTEKYv8LuqueU1pCVGXf+KeA+H8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "12i+eR2wudw1j7qTygWnX1OLqYiU7UlYWSkZLj6riaCo3B/Ateysd4UhGhUMfERS+qscQ9O4I7PfcOeA4DP2M/1mc84W+2emQN0UU4r3tQka42b+A5Z77nSG30br5PX3vceRyMaGIDcVkCjYvPhoEt/5B/iAKglJFRew/2OVoMf+HoXOWJym0ptI3cif30a+GRJzelTQrzfDplbF+4Dl3BwA6dDO1GWKlJz5rdqL3ssJw4eGZ8OlYErMSudPV17lOlhWr5aMmu2Js3HUs9lB8S6GxIurYQ9ZWXX3mAphEB8x9uBABTCH1Z0LJKQe/C3w9yKwGl6eiki1/sjMfV4AeUYjAecd68DjYoSJjeILNynNDalrTQ0oGfkWvac/czsg0LdZyMAXBq8UIxRYVX+MwtY/WGL3TYDv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3c12kl9OyyYBEdEtbRWh1BTm2DpI847Cqg+YP6xayf4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MoTT/NTEI2vH3z7avSHRuKcHPQnStiu/pap/I28Y52em5TiHoOY8iViNcTxgYjpKHkMI1XAmNmG3y0m72176bssKcLGskk7fLKuu+0emR6IzpwU9RhDKdGoLsAw3gE/n8h1D00hYr/e47eGevueH9Rp2pkC83jBIQzIkliH8+jnw1tww+KgG8NXTDe1M9ie/rG/kdA8xNyhEWjBnTtDUSihRitMamuzdSqj0vpjfOIJ7xzXHj/kxHgQCOKFhj1YjiUYo60EDhK8WKEYUooZWBRPPKHJvFV8L5ntd5OgmfaW7eGhfMyomDW4sFOI9TDuURgxDp1AAEZ95vl0mrPDhVQyzgco76vuG2Qtl2JQNnFj3+VSfGOYPeKLH0b2E43aLFPBt9PzRe9lqr4bdo9NvPjOa8c5hpbCU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3cQESpvGNLgXwdhcwj5g+/lIa+8VkpMFSz57uKqAGnk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IMvcAY5sjtYoZdUY0DW82IF1qc9dauFqZvvv6HAkE/PDxGzV0QmyEos6U2Hb7Ddllwe2fGKgs2G/evSG1y7LQaBpX5PimKiXigQ37hMybaEYcXFWzR8tPrPrl+9Douz3CdHYnv0txFcK0KhOJFKrzTmDY0/7BO1p/IX4CKVSSDtAZNv78wx1Ostv2FFhHY9v0LjOjPZx4yN/o1FK47qVA+YqVgI1nLYJDEgYS3oUa0vT0uoPStDQvqWF5zRIURt5n4+Y0ihjjj0Xwtx05vuOnidOmydU80WzAAGAjsoEOOyDu2OW/ikdJdnf1+rlwERHxE+APeuacY/PO+9HdtGrNxkKd9GBPvJCRjbCfv8WXUkpzgGUXiAZfIdJsfiHnkrVqrdC1s7kezuQzxygJ4uI7no/zDV8w13l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3eM0t7T0+/2RdbAPGW6+cVK/71oG6D99frUwsky2yBk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zYhSzTu9Wk8SckVgnt4Mmwyb02Y2Aeu+zFt1XGScDPTxP8CXRpDDx1J4Qhxq4ALYQ6T2WXY5GuyAjFaXp1K7HjorLILyrU/2N7OaPXrt0gH9/GjO3mQ8Czka8B4OGIQez4LBt0/CjOFRDjEO8R47p/yHKp47i+xjn/vxs7K8tZ366HKUou2jad15QJEEVRrBXMqs+EzouRiNuIX50ktRXuhk7jRRZlQPG4P6xM7f5xsj7WQHjsi0KWa42RNwVOnENIoT1+ufKi5m5oY1uzG5Ba2TbPGczi584/sH6HlVIsyRE2/2+RfQJ9mtvZJhbuqKUIiT/FcgdKRFrDQeWASURw98JFOh62JWQbhYmuEWFADxNR+Yans6DveaLiobrctGBF5LJLGuGjmzt6+IbRTlBy0PVh/StV71", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3km3KtHnHS15bK5yFOOZibIDyQHCWCEkhS0lbo1e0rw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a79BL30cO3mxMNe6E5S2GfN12LukooXWkWwO9kg9c+lxZYNq4JHGsBGVPWV52SUDGu5VwTWXLPxMsQ0AAwa8kWRDJaMKNQnEPdWlaxBsTyVLfO8EG9G5PjBsNHLTf/p9WsH2QobFeZLwAsFWWtqe0w19WKSFk9yoFMylt0F6nMyvBY4paDkRNwzbYt7Y/Lp+ftdYK76fILqqrpJqVT4T+NZ36pMTAGGL7n8gOfPL/ZW3DfEvwp0pICONhf1LAYm9bXwKKGG1Hk0BH5duWol2EYeRrr6EexhGl0oaZNi4EmCi5uoSmRVrcImTNd6IIN3MwvMYIo/V080M3RbrXWp6hf4xyb/nsKHf/oa+WaSM6hJKSouJ8y1kl6eVAzdYT1mcs1ADmRdbyqpmMJPW1hI+tG2fGaJoNOVN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3mIRqIZ8IwUy/L9pg+08IPWYoVuOo2BpnPZTbEIYx38", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t8ZS/KJyLMZD2KVh8hx7ar55set6YUqPbUj3dTFr7+/UK95TPNzklyTd3Ru+W8bn0jTnJ2uIMeHX0f9XenRagUMvnrdA96svGjlFL/WlEzwRXDpD8dKCDCSczhk93TprHDaIkAozHBcEWtK3ce0XCNEMKw4dzXzNLkvxdH1LZ83LO3BL6n9K4CDpAZbzSHTuwhM0FtH0tUZwC1b7xd1hG3BhViJlJv0+ik3BYR1Mtse4iBgqdD5jsV4dfxw7ald+RbeC42ANV/dpySyq/0v39DQwp4k2xSkXuRB3Fg0d/j1lE+W2vMLWkdQTju8LN+dM5aGrdj4kGJ3GSL7NtPDBIqVUe0rUifvuQM3HZt+jix4C7t3buWe2+k19ogcl01laOqQ/1ck2X5w1qUr8xjC/I/VTEhSEPAOm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3mdq6av6QFDKgnOd0+o2MH4REtNYCelzfV2ZLVTt1U0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XR2X9jjGD2abvfsZsgdkDWMOaiY1CCPwlUBwAPbbuTvJz++0Iu9Ip8HmMAykPOEI8xy9gL15f+k0wUb2JIMjk3MzMXrV67HT0ZLKmmTm6crjyaIAIak3MSty/AJwReLA86jCi/JhjFFeE1w1NCKLWSpAhmJfFYt5KvIllZ3gtuzMwewkx2tYwS/CvXlgNYDdYB2VUd96PZeqwP67/HFqz+0ogDtozBVyBfBcZwBW0qHz2k+b7dWGOOgAHZD0BBdBunqWlZU+r2SymfR7Au8Ba285Ak14lR7c2J9N7tQv09adG26lraOL9fcmY6j4Ay7Hd9d8VSfMQ7l7M/yhi74wHVyEWOPkfpxgmoC6WTTNBw0GJO3lmzBI6XuCRrCiEcF/ibbjPjwcpu0Zc3X9Dk+bOAKRI2EeT89f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3mmNPpcIu3HS56RQhth0/VdKWhClyRReZkup8ebyi4Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wLqi6mXB0qvi7tGUNsQMGNWpCA8Xlq1utYxhR0EyI1cgQ+sXP9IE02mfEefTdR2HJC0DPizbNie4EBwQN/yZzSDpGDqALFi/Os9QFebhL8BR+dYJMHlWx8p9geGd5n4VAF9nzgvvjAXaCDZgm9Sd6z8jAgwyub0EKvFM+DAcxCrs3XsUwk4DDOIi0wiTpFnFgg+GVQH2WD/VzqXenHmPV/QDLvMWMQV8S7Do7EC9toKNMULpuXv4/xpkRGW+W6wAvl2/TVq1G7ScZWquIXrLOasSF7gSrQioq4DH0HZgm/RTc0I9bFAO7CixpVdl1VKilx8w17G3TzUxj9L1OVKuIN/mz90AodUB4SECX3ctadsbSrqFPr2ULpvz9+FaHv8a6tEvQh9VntGk2PvDa3jv16rkWI7s2T1N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3nJvdyyBzToUklcMAT3/tMqOYQQWeJAz+AGtEQAEA/E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JkNK9DvgCKuXlKwRkqO/82O3fumOMuIxWX3/X7phtBM8JU3FqRA0mT4XOU4pAxT9AeUGsQSwv65GBlogxd+AuAwbHk0bkCWUKL8D5LS99x0ZBbi3wEf7xbw68O1yPbObXmK0cd54rrW/r3O4W6ryV7zI3a601R5Tq8FNChYyiDuo0mMymAfY0NJ16Dy7+GsX7hneJ1JY4c4RubjLDuaj6q9rAfELnOwpaBoyu7xX6BXjhfq+GYH1hbXIyWNK+DCyVvWmIGHJ83fVmoMVSLKKP8eqrE7Guto37omzExHvEBWy0vAtgQE/ZyyLdsQA5+oemSCA8xf2IAEJRWDIozxjB3+BEfF2YPHATFvnp1cvxCgLOZq6Igs+K1hrrY4boK9F4mey0wXtuapC7bR7oBzjf3lv9EcdSHvn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3o7H75HtImzpile6dV2CWiD9uOWh6Kz8r8BngHAKlOo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oqFzB3JUMtV10J2pzltdyaZLvhVhpi3VhoqBQsA6LX4uagr2xaCqahBRmg63f3tPvjlvup4991OzgG3wIQLQwXJ5aShbqsFGr4vFjjqKfkLf+DC1ef/PjMHSDcndtgmqBFmfw5uNCXnrykHEDH2+JRhKzq2vVcAd1D4w1l1Yrp/+Ppq4OEHC5i7CFS+iMxuaXYDIMuT+JuY0Efjk+kdLit0sSPPiZt12ZhI4JlwRgTDLoAz6M4/ozbHmWQO3H9FVB9de4WNpMj48SPljzwtAw23ASyhpQVaHvOsTSuLriiTtlwadwQ+EOQ7IXZUrg9MbPtdMamu9lZhbzETSUh92oNdykl30F5rBWP3coTMUo87cRyb30Z+ejK0bCKLiTLo/0neqTQVPipJDb03i5jndrhTZLWP6mzmU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3oJWv/FmJUWC2pKeMydHrFE/hcOT8U91uihQWl2Mb6Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "THE9AYLavSy/BMoZhQuSA4ghMY/4FF90BF3STwwf6jMb7Q4owpFG4E3gp8kwGGSN0C3WCPCweADhsVeuB0z1Y8yniPzTBKElb/XNEuIDeaTwUvPb6kNK76Xw/eV76QjKfQx1LbWeO0uqVpMnB4+Qpyv4e8BTBpBz1006paxpk9BaIYdzbXJxr8kYR0RWtk8acHp+jzUokDKwl6A/C2v3hfJI9F4uR9ZMfun++qPPsjgvpaUDIhTSk0PVIdhNXul5vftv3Pj4qf+JxKxYScocz66RjdyMcVMgkenhg1MN6WHKl4oEVgGommHAj9ROhKUnyLdete83kZMal6xsxQH305eMG7C7M1TkwMYroByzhY+HsaCyKjuev8sVqeNq/KqVDSDGxwmGMCrdNxNXxXCZ1fazdx43SPh3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3oz9AlkBFs/ej9T2wbcYK415sMAbHlox9hWb7iiyyxY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oVV21t7mKvWHLYlILmqJNDS4Fs0iTmQ14aQYlAfUy1McVrEGipcFn016lBGAIyj3RGNcBB26Ku4Ida7ff1588nyIvyo4bBIcZwlD5nl8RfaO9I6V26QaVUUrx/6h1wMBBsdhyKRFXH6IDuFKeMD5rvf3g4o2QfQVQ25mZZar4AM3twN1OzHNJwum3b1L5TbfM6bjyKCNmXR/hM5rDJE5sJqVbR3F8E9Ob7AWy/7F8ons+0N7zR56iTJ3rvC/7d5zndB5I5NEohFdVBVx72XtbnQbaxxBtKmG3Qwl+ng2D3HeG2j7Fce6dlhuWlvX5ajyeyDqWjVXVUEDz0skhJ2H/OQkW+WepUb64IiYlnkKrJ/xEXaXhXuQOm1rE35JOPL+tfye6662WGImNNn8Ah5hZo3Y7XqCegH1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3pZjXGPL79NgS6TWKkBPp30Gldu16Ah+yemd+fgM1w0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LCRZigytohVBO4cYMm3XaelEnGUOpe9lW3E1CPzaZMYc1tk7DGsEJiPf5bc/2B/rNYNUg8DRrVITO71uXFZsi/jlgx9OZmwAB/QbUuunk0w3+vdKyOn3wbcYSN/yPorUYgbg3Qt0QlsvCMtfGOamlYIU0R/l3Yyj0rezfUNc0gvY0p96fMBzsst4TSkaPieyWHdJGbNi5n2UEgLmZbgZnHLmqllVCj4gGTKmOP4zz6LTIkuGcz4XadlGAn+VE0ahHXMyUSGnNXSQKYR8YxYv24IgcunqNgTpiuDwfsAVYt0bIzJ8llKWI8ZXUf2Tp4FonrW/Bwy1HkZrEmQi7sROMaeAnOG+j/D02NSdMG+fW26LYva6qakZrquX9LiITUWLAEFVuXv+5joA2XKH+v2Kw5PD4N8lEVlD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3pvbJIkjCXDs7u3W1Zgie5ykYVTWF7oM8jG281XJwj0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jryLI0sxGSMB3S2kag7//t94+xN8mY012kN+M4RGTC/qEUQkmJyGk8ArT6sxG+0EJy3K6bFU5xSTVuXWfgN3THKk95SACHsf+N5I8Fz87oXwEhwSGMrCvzo2xPI7FddUZPK+Cnn5cWgcGgnR6r+WFIX4k6M3r/GeIQDbN48iLop7Nq+iQR1UbJ1T9xnWVqHfXlRgFoFdxFXmUZ2c+wFpfIZm+S8ltLNzkkusN58ns2N/q7WbP8Z4DCvh9XE7KXBSWJ7t6Y+uc90moXW5qdniQYf6gyKSGlluDIIiBqSsUYGG6BPZ0h0tnRkZF6aJQpC+6pWFBUwurJhHTjIy6SQ8VBQHe2+sEnQ5PQ8RjR50+mfq+HeVRDbDBsTyfVG7knqQBIhMyPqQHVhKYmItFeQ/97trOz5mjuFo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3s/YURibAcWKPxO5HK/C63L4LBym+ajLNA67oACGvR8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "I3hgLfmWvtKMv8pcyX5wmIKwAjdnn9TAI4EUsLPuH1Mu2GNNn11WMkX/6mY1ohA0DfjvJs/HnOxErWZQtAR8Wbom/QWCJ3D8iIAbepSEfoMqGmlC+jRlQsw42WqFOf78P+OKOryYJ8krBCWfgfu/VDRObTIxhFbqxjesmb4ZsGVTFpXuGBG25CsVdL9VHHRQV1o/QSpwfDROasRFO45oPF7oGMhfuiTtW3ENvoIwm0F7DadOp/jlNeS+L/zUk30nbMg4LxD1N7lkr7dPUu+0olsi+1mc8HgP5JMBABb2Q+gT28FCeV3lw7uwA9nZuqatHcDfiXvMInxaeVJFGRtyGuSa2I/M6Qmb4T4y5qDiNKCmDMQ6w/xez2TFPqAJ8rOnMgsTMyQECeHcIzpDpWyndkj6S/sgg6wc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3sN02LStmd6DGze2SCr0T4OI6m7R+48wzxNt44brwRs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T4rcQ23aOAWNPkUy++XDZw4Riy9FvYDSyKVCkW6UHoaf/p/fClsW2VeIWM+qGDhMMSy01gb0zI1UF/EwAMMAGceVs+rQrKmjJK5/x0sLWXcN56KpLVdwACNFtwqnCqIrZM4vK8sINyPevVYiUlzwc8YRtQK8ZkqUFwHLVkK/4rM0zeb7+tMvFeEweZj1oWRuK+qS+5U5B2OlGQSLLzI1XUl8nm11r8rItRLEw4KndU+rY+O1g9fwJ+0/tYGx80ORlPtC4qQxjNumrG9cHys2fxxMwdIJo7dmTcJr6zDy1lAf8/WKlKr4gejP58bEbYUkZj9R+1RRwcCJpwUcuRPDMiIZQ9Dq7fGk5m5tD0+BLsnYCT79pH3PQZb3Sp/sZArtES+kOvjJm6wkDeXFe82pb3wZlZemivlO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3sip5nqE3HXIuPswmvcCXUVKjcVIg0WIzpAQ82g5jLI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TNrC1SpfJx5xtGwiwyRJxYm7dKmaTlidEGwUd+3TY/BLMd7HYteuijvqJJZX56MXUWSZXzSOWb7iz5Eyhy9ao1lxOG1yFqH/FLPL70STuDYMzs1VdUvpwPni84O/7Tbt3ZTtYnQoUbx9lWfTvumKrRLDgoqIvcESRRTmNcj1uWGlZT/CUm6sSN7pzXen9sWqf1zfVRKzVWO0n+PmLC+q9jfXXDFA3j3jC7D59RPanHgvcBtuFLmf2MVdrnlY/vNIgwolcEpVXKGgeuMp2k8HtBhV8fqQMD2YxRFOTvfDWvSDNpMK46d86cu8cXPjeSxx7cDMrohYsSAdzNMVZt0zm65wZpf04PoaL4kFXlZ7qga5AvG5UPiOBcdG384eIykXsVOdOFL0kTUuHfkavdMlsyKICdUTL3Kk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3tI4f5eZIcVS4oByCus5Y8kkRe8/VUPSbIbPO5vvSLI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MO/pzKMQcnjWnJHjNCEaDo58bFzyTQCQ+UR7r3mUFdI3A4scaIHQbwGV/PGHNtNQA9hKebPda8R0b1O0v61teI8sJdoAhR5Y/8BU6KeqQRgNKUoiqHohoWp4Vj/2/ijpgQiN2/ZKEfig43d1UD09A33jib64LQUIYgAFiWbC4kyXeCjelwRUVo2hVwoXBzORoCMpM4O7HSFE7o3zAukNynfCdNR6BKl7vetYqCOC9td6sMo4ZGKCo01zdoKNMs6XyzQQ1xVFEqc34XFGGb/DYHilByW6FmRQMSPjaghhNi9d72Zhu5xPOXFLlvgTA5PtAyN8RKV/+Rl5Fd030ZbT3hnIZU3CrICatST3ICHWp2jlR/bQCL4BEY2eHccRS5ucb/gBpSHUy/aBQBruYYVTrMZw4WsVvp/g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3tvdb6ouLnResq0KaOqtDZl5MkNRGoAkW3k5MBTHOCk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PZ6AeV0pTRyiGtPCVJhZ+r9lpNqpa1vQVtVh9VRLu5KE+qV6q0dHi7xwMVwAthHTFAJww2DNtPSqmOi90mLSJBxdFoJw5P6mxJTHqpcds5p9I/JNSqCvhcoOgecSWWrjskmCol00ZGNE+hlSThXS6ZzQcblVlDPzjTnkETR99UALgAMya8fiAoJaH0fuo6A/9o/8kHl3kViEHxE790rGW/aeobDT0VAB6AafoiXbhj0/XH5JT90pmoA5c/JxeBAgczfozrroscxbfThjw8CkDWgvy/qOt3b9cxTSGKP6oNQ7PLJhmLDyif6JW7L3F7GS9Ctjdk4HYny9lPE7WBckKvHgC7Ot0ij8TyCgqniMQdjKdAtmQ83H1xR9dFpgM+BGZ62Z2Mq325nX3/avcmLQie8vI5uCbTEV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3uJzjpozjQeKQFSk5jeeekAj1ZZfyZxW00oZ2w5OOas", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1dnzVOnZSfiMDa8wLly7FCCIjCJNMHZ+2qpTfsVwSazDnBG4Eqg9g4686RsZfKwNUuZE9VqDcD+INillFr0SmGbF9p5fgCQ54G034bqmi6NxPGbPoQkZSTpmdQv5ynS3rG3zm5ZNWdivwO2uvsyPXwU/T/WfKoWHWozzBtcjDYAeJQaUHZXtisz5+0sgkk+iDTchaFYCjdeOIVe+XUw+K0YsrvSydT4GK0n8WmxH6cAjxh5UtP0OS8rdq3FFXSB/TLTPNJlxXwMTSfrBidBFQmZwoqn227kUpt82DtluOWsXqERkfiiNSqXHp/gifcy00o9wJy8L0w67oYkLWoBZPATsxin0LAJGPnut2YupLPgeDX5KMvose+g1kdxy6OQlMwtaNeMeZN3+f71tZq9PiyZRTSCTGo1N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3vGBwUYvePYHWBizVsrVDW5JcaL1w9OIboxz5han8gE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B3nDH34wTG125jRGLVWqwcNpDuvg/jl2z8vkHxilSyvKrAKtyR0m2L0BuOwcYpR7JyPYbXtmOlIX/GopEYKi+OJbgBPRXL1uTmCl27bNECbusNX9wNj299umqevxWfEHOl9USzE8yQfVX0QenR34xSu9DZAJz12oP+zUZacP7FovuE2uqaPFgTuKvvY/WcQhn/27XADXjZKh9PzRXEji/kAdwPGqVm2Gvq1wIzeSdKNwPOiPzmON1fpTfPo9kC1hgiDrvOLrUVuPWjqWaxC4prFGLq4OE7L0yOE7q43aHXaRf3nn+ouWwgy3RKfxs/+sn8mo0vokJZIoSx+5CQeAEUIZYXCmCcG8QfEriTsFN0Dr4+RKKFUG16J6dTIraBZodIBk60yGCaxjUqzIPOY6GLRiETRfCbcA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3whAlO9smk7xZZxoIL40Pq8cA+N97JmkTQ4+JoyH8cY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0lZgbC9TwuVa24Ue7/1IxOQkuL8tkPTTIOCnxpjAXvOTfX23ef/2tBSdYtaHrEtvC/4NmY6FhHOvlygxSLOEK/XR37vFHaMLdEUcURJh8dxzLVfw4H3tCNcJ4tqBdw8Lgw7A2C2F0GF0pz0OFjlU/JZJ6oxgBvAD47TL6Yq48Dh9ShZjRltBTD8VckW2g6ipZwhJUH3fm6GmkK2PBo3jHL3DH87oh3ankKbr+3+gQy1Ok6UFr9qfQuGsY7rQ/N9eAFAM8EJs9i2tz8sNUC+cEMuaahZ866uqJ0IR2QwDYdv/QlZiqWtUWBwtgm7iuo3dnW+yD0vXEaL35tBNg0ZZa3aGHcyYdj+87Ph7lKG2Qule+LGBh45r5/TruV+tc8PqKlFfzEhZcIMj/OQ1Iq21pLYm2N54psuo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3xAKaLIvQWrzDjUr2bTyD2DT2i16o9HzE0KQbMHxr5I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hjoY48qHxOjM62VSjGj4iVUDTEC389MtoQY2ODnAhM/VyOLtaGVHlzKVkSOpTwvH10nkhTfu7lct93ksngxL3a+8OTfgbwcl1n9hTSAEv0rV9aYXHQ0kn3K83tWKW+h24CW0v1I8qi4MK2GWLeXD2KVarv9WPIA/XeaA/D/9ZZ/ea7nB3iOM4T7ulxNIoF/gdl75GsJGqNa4YUoW0yozkEh3XpRbFERSpqoDDbHVyjTu8kYGqRlej2dBXnh4fQMZnjuaXuF0YXeq6XBnEZxIL7ROQVEG9pJ1YT3lCX2aJOHgGZ/qZX1WBTA0Hd8ZvE3+Ise7VKj9gd24sqnXLyuG8qIjGpKfNSfgeAb5tdw817rQNBN4rdpKL8sgDljZh2NBSJRwDniHarAalCzMqlXWjOfdfPNyv7Nk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3y8uanebGjqCqVzGf+stPvvkZVqUQEArW3HJtEWN13k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OUYpvmcKhjvUc0FANSiVMxuhLgY61G8pWKGOtq+JhdulgXYV8M6rxqCERyJXGo0IoEpfLCMTe4hzK9QxBgVBy54iVBgoz8CejSG1hMtdKXpgz7lsQRZMALBsxG2f31aAYkub6zwWTg4GZAHYf+oRFwbJsXQvFpfU3fpwIJpTiKFouH49ZSpXD8oaBk0i0E9exzCLdrAn2HBP8AkbmyEdJTMS0XwagyuA+mpDm7sv9zgecQyQggcZFkiYIlzeWu2ESj8fVpw/Dgnf6tuO/EHVAxG8vlA3//NFO+JY5GSlzLMK0oYuR/emfQvQRCITzQU+EUmBawA8Qp7BMhkeb6I8EDjgixOLSM37Q1oBkIufL4tZbysvDex+usm+OgQc+fivxo7cMB+qhE+NhvTeB7qzm2An0VjLpqmh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3yjYweitU2bLJ2e8m5be7fOdFW4MECUtXpD2pn1FQOM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IpMNR8w7ai5RriHAxDAS15bh/jRLXzLEPldPuyNinhghQivPD+IHK3fyCzqpcN+n5bxbzDVwXaKjy8XP82RE0vxbpGfnCQl7mBlMByBJHb0VzmTRkkJj+NcdUpylm3bn7gRzNFPjx/SlBBxPqxRh0jUZY7nvsysdlcgA9PbgffuTxv3vbz2UwxbVXAG+pBQORms5dvhbYt1/zHxDA/qYpcusii78khUHwo8GL2xPg72uQBQCTfJuSHfLCQ/fgfHdD3WgXHXlyPtiQm89B+Of8AK/91YU5AkFPpzebd6AxfRjvM2K6zx8aSPA5nn3BOzmUTIO970IksZCDnLfI0MY/iCNSi+NuJfHgH5yEG07q3RPHO39EURfHcIuaLsXrVCgbNQGD+IZoOheY4RmYsP52cdW5znAkcDK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "3zpkRmqG3qFKPpMi9+M67B7F2z75tO+8gXHWurKDQcc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SGjrvFOjnlz625817Gz4tvogdShpRnW+WlEEArgHwuVY57+y1RTqgYesCIokdtU58s/gaO5UCwxW/KApBC+dBnXXBPDaU8d7PHggT0ak+4sGKqVpRKZcslRm7G/bQq9K2FOkjgLN9e28zOzYkVMBdPlK4++nv/8feDtKweP17Wng57Kc74LtUv3SnjhwAxHMlGbP0Q8j49x/f8Qvexq0qxifOP+M/01HbzeErpzdGwT5xTqDAI4YNA8Hn6vn6tUHGz156HBOF0OTVrQIJ9REgcB4f3Cr5twNT1QaWYoO3C+n9Pz2nd22g2uS4bFP0xNGWSFreFP3KM7E5hEmFFURgD+GuZmIbnOPqqeFSBgcKqDM3yT4PCavtKyz2IuVx5aL9dTmkaGOP4z+AJdo8W6UkPUgwZduYzeC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4+09oajVNCiyA8pH4Gn94z0Hvwe70g3evUnah1cDDX8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OyazNUNKZ71/t4xUUaHohtX6KvE9deqZ+P66Uakaw+E13/XPaxAUwQnXX92EwjeyGONy+LFSuJd7+Eb1JntDc9RPdkBcngCYWoMCrEXksFkaTJapUQggNPuyothUOMwRobZpDErUc2OSMmuMWztHRC4XZEzHHlqdat/RUFMJ+Vog3rh4rxS6dhe/RvZlimiNqh+Bh40ppI+O0p3c6b4TZZcB565HW5dpYeht5gM10771ACwlt3WPU/jTqp61qOO917qD5Oy/a9EarECR2uFqQeHlFvtel7FxcfX2FyyzQ4YO6tqmVNb9AhjaUHwvxQDa9W3i0cp+SkRKi4EYzsEK0nHjpNLC5uOG+yLOwPIol6iPhIa0jkaXe1bGITzbR6c/KnrbIqrqX9Fn0YHHgGiTMYtY0YYmipru", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4+2mX+D0FK5f7+1S0O2A/Fiaj0aorEEWP80KZV9NbxI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "76PG12fT2Rf8uMJ/b53kywp4dBq+HJizCXKvhgQ9No3idAClb6qVa/bQXhdRGICjo0bRAxwO1Cw6hPrxs6VXLRWkSc3bgZV5aN6iGy81YhWwCXqAB8iF2xptlfJngr1jh8V5DtEkjrCVwoxf4FC6cAJgOhtfI+twmSIIRoRnN5XmDkY7OveguoaKz+dOdiLNDs5w6p68uI9hswhHthtuMIhP7m9e5sxbPxyvAK8tmSuRrGb4OJJEtfTxCyAZkYB8v2PXsKv5xc1Y5hxrrPV8pJ2PIt/v9JmRxIsMB5yffXfa4EddJbmfyZfXmA/7XMN53DU/lTxhrhS0AHVKRB2yC+cEW1x5gBQsPszFvos3OI6qnWDsovq/zuBZ14j9E5RXn4WkUxoH/hjAHVa54Kql8NkGGsLtmNs2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4+Tpn08OC84zUrMkPKz1lztCpjHmc/rf8GFgE/dvg3I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oV/qbqwE5rYgXz4SSXBD4zN11wveCvOKqK2bneLlj2n3vsQjIrEyyAeEeVU8tddIcNhDts/RZSklDtaiwkMRmQNjHXE+hXrI52MBjTR6B0TApRvZ3VsfnLaKaDEllzcqjcOi6WYC5MZ9zWJf/v4qp+d686gVR4MyFTKSdPLVdUh53ByKCzM4lEmrsJAqPpfYpQnUtz/6LN36ALSndVoA2a9P3jNkw2+3v3yf5JXULlug4nucIzjJf4tQxyXfpNOol2FqTUAwNt1TAACPovKXMQ0nRyd/l44CL00wjxhoGkGr3r+7h6oygoixpps41IY79nLvolfl7OE3fWxyRqecSRlqSb/pTYdhWrbZ0dA7uwraabMj0uviVhbZj8qA1klRTEbaWmrS3BTiUM3q5YgqUGC34S7wS7Jf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4/0+p1VPsFyPV1VMP+FgoL2VVB4MSt18RBkW7hXrtnw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eMsoauYAotqJ+/3UZ2Hdl6Fj8Or+h6gDIwJxIobzMwI6cGaZaLfjiKWWwURJioZx7gKA/CgSHxM2mS7AFZWF2xjVp4YxhnT4ie48WmTsIVzdMB0DoE2A938h5qxAtVn2QQEn53E1PYi/e8fHcYCgCHGjkgapo0ka/TfDGmodAIBX8i4YtEFRPa1S+qKZashOMFZamsz1tDrWIaq8Csi0h2IuHLnTRveoBylE6sKUwZK94NLPxwZz0H7KtBBgGqemdnPGL4g8X9CtI3pwbSBowk8sMDcy7olLJs+5xiD/lhiotF3CI3cIxguy4gPrTUg47SMrTO00u9EReZ33ClWLqQ2iqgQRW+T/Kgj1WDBAlxTlOHJin14SVHygCwyuOPGHP55/wXcXx5NiuwIVpvNHuq45e9krDcAa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4/BGH+As2LXW+e5il8+gOego8920Y+acfybSTWdFzqc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q6HSE/wmkpGv2NC40RQPcnWwRC0iVdVrbAxfnqLHPEwrHctOivJkXvSQ7+aqVLhLnKN/tiXIc/rAhBOdbC3Mbj8UvAmbXiBuIXHHlue9cS6fEj7wAGztU0i5zK5TQgF+ndmQ5cySkMkkSqaaRztcCb3gXConLckaKoSj3j0bBhXxsfn+jkPHpk4JHgOIAoW/mkmFoBog9N+oKPhlChqSbEF0nlub6AXqJ97kT4q0gPOeaXxurLCgy3CDWJbKM5q1E9DkYbynRLvtkkg66Wauuv2vAhdtNYiUO84IQX+MiFgCcEx9fmUtVXnxSVyeJGEzLtSB7a3CguqgNFRxhzGU8accpv0Rh4L7P14PqX2UMR9D0SKujJxZUrl552YvLaWLochngs7ARHmzCWppqMnp1g16XZTo6dXN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4/dHxr0ZfisHgV4jmK4bJFyzDP9zmOMIm6D+XTTDZzE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mRrFaGUcNJ3sJH30OzXOn/LqRKy0XIROp9xukIjx5/NvZJSMIP1QU7W2vVVZPhvoYonIM74OThkkIDS6Z65VfbSI/MDvHFPxTSNaVV18GuiqgBCi1f0rm+h3zAIqSDIGYF5NQMVgmaDBmjnsBp3LOsYduSDMmrfzpyFKr08gm6sTAbw9HMbdwcYK5VHWLRj/fiY6kTAMORBlP+v7Ow48rhqz++hfithTrCsrON3ElJv9TQm0IeRMAplZQpN7KmST4C2y5Ti5v7pFZwDO93uoctciNIfLEzy5j7Th8+o+5X/u+JIgj3g4Cm59hhGej0pYxJsvD/Fost7QXMAllQg1OhjFth0ozVX4Wgp/hvhPEJAhDiPOQMj+zplxtauxib6t/R5wXCO1YhrPYVxFSEejC01l2k9SbB2N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "40AoW6DoiNmNmuI5xdWbWIIv1ZbNzdFTR6xIyLEbgEA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kzJFrS/nl5HXMWeotgxau6pYEqPpZBtjohYWXYgkdqdQK5aT2wgg6g7ieTCUlPawubSbIqGYXPsY0XTpNZVrO0UH16QI1x/vA7l77v/oicE+QGlh0TG2YFsvzEuYqzh01cQAap59q5Zm6W+ZmSsZ+afUBBCqJnlXv04Md8pETBDBjUwRopSTUl7z2rIUKRu6yqhM1q68P2x4AEHovoTnKLVowRFuMGN9yaGLm6SQjPIcYxV5FJBd9I+qvzFDH1ogVqvpabYUez4lOAOMHI8Tyf3eLpi+//YWBtjNb6fMkJTAsbQqOfjC7y4bp7l5lw0XnzZwqE65MP7YQ8T6hbO/qJmbnFwQ08f9m9oyCYirMgbK9EMP5b8X+/Q+aDx9Oxxx8qQl7JenGnPP7wpdsbbtsFjX+x2lq3QA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "41h7f1iQjvMhjPN/H5CV9/CRoy1rG4/cWlQnF/afnZU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MIuuoRVj966In+F/aTfX6jJEWOEVSmmwjGPEWY5wsZq4uKOnQj8vvd/CLriPB24Lz5SKpAiScZkidr77hn+uPubQa+GYZOf804q7YPr92Gqhn1d4+JrN+7sA63XzSkNaoIi+BcQ1+QX1QT1VX/b3BBCTY6N39JB5fcSOpcrk1XaIEiWhr0Z+lPjXy3Siou6pZKWWTApFXBvY6GynSIP5YYL5otNlRCxMaIhKvBiXkrETm9hD+L3Gnx/sFhKavOMzej2SU70hS9MvSamGbe+QB67kaeoa5euwj2Sy/aiwWdYHXX87/Jz7MfZ0KgKf9Wq5cvFDquG7sexd/TnxOM65zHqCXVHmtMDFwgjUWSrwIWEfKYCWbXwwSDZYsVWJttui5yBHvcuujNDRjzo4arOJ/rUQWl9XcAwd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "43Sh8hk+zMBIhv6y71ugj7Jhfk18Hv95y0MVZigy09w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8ehu/6NHaqDBXT81Cx2HVHFKdfRQoT5f2+HFmYqiA+nM+ugtZW+5sP+gMeUIeirfLWpUECWW2fyspZf18X4hqIv0UiQ9RQRMLZ5UpyAp7DYnlF0z7MZYlCLtTVCsrU7xwHzHWPi+tO0SO0ePAbDvZX1bHeDdRw2cZaXq1OvTsfKWLmz9aP3vgnFdhgF/3ROxvM834JiJ7DpdsIvbbILmvEfNnh5SmzYJ2vHjn9tPjwuKg/bTedBueF7SNBrQIckj7njWX9481e8q3iN8ysTavvd/vFQSAmaz2ODjovDGSMcVHzLU2SmOuUE3cW0+Df/Ecp5vQbXvmgPmHBXPLKTOFnQ6jb4r9ZrXuZft6g2A8mnYBlRYTAbI+iw9P5ExxWJ7GJO6L9DLTjYE81hma9bdN+7IVUs4R9EW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "478uY+hD64i2XOXe4eJ5lxJ31ix1HcZKrPQVkNdr3sU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4SmK/anVzsapF+UiTG6eyui6uM7De0E+a+bPILKNGhL/rnIintIzMF4i5/ynDm7qqK4okI3hVnHtcA4e4QQmADsTKY1JiUBanw6STihv0DgetitVu58sc3//bFrDOGBG9opHbGN9xE1soBKsWB76AGLYtW/JhP3D8lwyrnlSw5scELwiosAIkrI/niVsG8JDahOvewE1USuShO7wY1po8iY4lfp0xH/Xoxqm8NKL214rtmh/MYqmbNXPrFa+FsHreMlhg2OqNulCsgLPiqWCiZaSuWARzc0LERMo2e44VZaKr6aygKaqNepQWkmbOfcgnEnPERVp485HQJ9hHpegnJLuhQBkM0+hD6o0edG4vXuLDz+m9hFXibiEfnQeIXLykiqZyvx0VskRH+zViNLMKpFuDWIk+5r8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "48EqyRtfcv6YFwrhuiacSFfVBsG54SP1mhLeJeGHAgU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bk5JFe1HOWSsKmPUf1LH5ZLohSMT/m3+fwGOwMoYzppXUGAve8EQNXb6qZl+kV7fPV9tM+1WZN6GUAg4I78eCCTLHdniURzRHyuKcMFund9Bk2zj7OW+hob2FC8tcXmXJyrjOQm3Ybut2V/kGwRvbzTecDtW2tvZCXqPldpuz5xPJ2W/PEhwZhbyMo6TUlvGSoNQoC+bATYrQykCExUU4AgatQtmXIWeFvkGPVV60GR1UsGwVf+GlANWmc0kE0FVeiikia5n8u0rrktk34ZahMN79r1GNlKBHnqd8hc7hEJMu6KkLold7CiR0TKql8fwhgX3ljGmFOHPVCmFHHmWAM6uCVoK5dFvqGEYJO8Cx48U6K6kF0Nw9c8k0AkUIU8knZySgx+49nGUemS3V+PeqACuQFPp0UZW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "49MReRfvOfAmo916xCrNEXIBXFMnV28oLlIsPoWG/Rw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BUW2/ut0lKmbrAl3C8vFsHk3DwOe5XuCME57JwstIvCfuJ2xpE01ML5OgI9dcT8YEI0axyc+/sB7YbKOatgl+jGQtoRipTOXm4u6J7GsQuZDwVfDFo2sTJ+L33wjHZHkEGZ98ioPTyn0G02FNd+XD8a3MH4Olcw/m7yvtts5Yzd0oUErvIXuINnK1CWr5JqLL+S1ieuHq9Y8+qM/s7JdCpTu7TGH5hLDEskJtDwyYPJW4J/84UL7dM3T1MufWnx1r3Wemj0+bRzBWwrn2LAiTzg18OlKzxhJZK/FDKhHceoBD3yU27RxP3F4yLLAVUJIv+xcE08z9Egx8b/sCAhDaYUhw40WPRrYKAVdLqiwtv91H0If9l0VAd43pESlHBp6FpMt0dB2AE5o8QBnboFg8P6A9RQsdRpb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4AqCayVJGd6qt5FwjtT0TY45KL3iV07Qh4cXtBTfkX8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "98IyF1w6hKoLkhQ2i2Xr/BXmuBYXYnJQyfU9Q66lsJekOiOl2d3Gp6l16NKsB5b3B67Sa/nFuYB1rF16JT5q/ri9xwclMCcfFf1KfM98DnXSbkmdpEBpAMby7aBmHRqTgJlnIhD3vgdwCiH7Vc8Q+ea6nCpKcpnar9rABqkWFrBHGL5el3Nsciruhou2Ek3Pf5kMMTWRSYyg1WFp+ZhRSDKbSryzoWNJTnN5NuZpHId1wxfa5u7SNGKa/6eW0aft05DN7KPRU42hzKmo3eoq7RbuIKYYUwbdJ7j3SmYlbGoUqfGRcJWcSj8+SvPKvw/6HVj9yX3pJngybHOvr18FV94A0RBNJpu12MpGHYk5Keos4KWcfi4dKv1IMMzbmxRaPl2hfIwR4HFnaPH0XzmXn+i0mLRZxSgb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4BMV5JzyJ/QPWm4sMmMZRbk0DhSYA0bGelNtyP80DnA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TLRGqtXvYmiO4iMolC4UkTjPKjbr7BBATp5t3hkec+r+xx9z5OnoX4Dgq/lGEuLM7VmfZRV3tVboto3HKyjOFdoHiegP8krymQFjumNaN6/p6cjCRjWrZjntWIjbCdiPUGMP+NQitNal0GuDYAOMkjH55nk+Nr9QTUV0NAmlSxvVw2orrL/JQS0+MvvvNmmUUqoanNAhShIihz+o+9ufWla95P+kNZv9lCw6WZO+t+PESXJvoiVq6jbQV41o9ceEeARmaH42MjW4bSbuWlldVBdm0Slp/qtlpwqD++sRX8rwXQB+ZgNI4ERygl7/JQ0fC0ltK+J27GbE4bVxUGC1J8aq8fkxnPC7ERKLzqud76E137BMpYYpCC4nRPMmD7t1occIgfrA4STMp6IbT8EjDgDoceXN9n0W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4BbVbLNQB1ouHfuq1sVezkdML5IQ18MIGz1vo26K8o8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uhpzMy1rHNUs/y6925WFUnli5xZB4CXWyF3At86kpq4B8B7SYV4OEKmW6mILCa/CfmYNy/mAJbtB+Jw7eXC5VeUAB+FWKHghCEKoGh0WfiA8wT+kDocn02Ci7Ym/eOrNO7BndWyzzpDWA3WgXiZ/DMZZojRV8kFqm9KoFwjcnDcrmn6tUt2HumFQ3SHxrLvB+tDTSQUGfVPT5h9zALj3oFB2MqfSaU9OluEh2gYAsjcnExZ9ADkivijaJ+GVdxtHBiND7dj/NX+ZGsnzFDXcbXmg+G585Yv/RwW5rfpwQohUuSkb0jFwFW6JOk3g6l+StqR+ZEzgP0/8VJI7/hYSJH8+vBx09l/SReP3FeVbCpmzqj72THdBpKVrGJqwI1AuDfZa/uS1l0b15tijib3Zijg6pbWTxcru", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4CT6iTyYy9pnuxxwgTQ7Sx0zFUSn1TR1q2ytvSiHqAw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tWZ4E2/gGDhvi9zPxFp2uxqbjKXaqvDK/nyd5MZinOBFOyGOmVPnEFHZtO9cOkPr3v00pg4CtnkqGRHsyhVlu+YV/219MyBtqyqrszgVz7O7F52TNbnKy9iONzURaw1kJRpy9Z9ex+DAAKSf/sQ5NfyZ5dOJMN1y5ubx4wVuSwdxnEW9OX8yVKaPtS3GmD8yYpQiJ3DGimvTeNk49VQhr99sWVhuylKfnZthetYR+Jw3Iy+lV9HNoOoI/d7f7Zwnv1Mh4yQJHyhlPFjrg6YGGDlPzeopEK1IoLNF/ard+qYBCKwleQogLwNE8STKXnENE6RfHKEVPKx1jIHNb8e5RTjsCidnonhwk8A3rNSSPxC1sGjR5kmW/6jhd1ZirzsrkMv5Qyu5Y9yAjf97172L/p/5/xwia3wj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4Eiu8kA0PEbr2W/o6N7WTqC9dCU1jCS2oEZDIrSWHpE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YuO33aMiNvBvvXcxGVEzF9PDkHi5nF3EHRtZIDh3TX22m3n2ok9abfpXDFwa3vaGC5tXh3aC9IzIQ38adX6MkwI3nXFug7AKXJGmyCG+HjB0XW13s7lsAVoAzBEBLQNSfSdo1hjPRMQ3OU9QzJoVhujROE+mWkzgCMMVqaNtvHnkCD8ZyPMauNDip8FO87ZzzakT+PdQhWsGOnvZqZ6dgI0VK8/hJ06GJ7+bv/HjMsfEYpnagWtcO4zNjyjgziUSGZIGCe/V39tLdJY2Oa/b4YCUDotF925QtoHcCa5hYg2+YuaRzIC3oFoFKTnc2rrd3jNPRodV1jdRnbH6oBfVceTzZ77bxN/TMPgxpCPkHX/Z80KZYrbirQP8+CqmJ1m9/hrtcDVP0/0poQevnG/AkTas1Ei3Vycp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4G5sROv3J+GWT/O+dyTD5Q0KdhR/nTsjg/fK+nT2oB4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tWM6ShhwhVyM9yYaysh82NaDYr36zfM7cWRUzf5jt+I1n2RxtDsUFRFkJDQdV4Pb3OcbYzZaoJqcCtLwcXjZLwuDq38P3Kq78wLlv/HNaYOABEUgiZ4ztiCpeUscWe2wxnZnIsBWh1VthycgnUxESfvyHFpG3lGqnsd0VL6hQEnbDTq7J6UqByRzXvJepvQ2WBfAHZGSlQ/1ckBz/sYousmpAUzAVcL6uBDre9PuMYPzOgnWT7mPlHEUzRBVtwuC9hmpFLui3cqaWVs3IvjiV0BN8gZK5y6l2DLN2siSzPhlw/mTku8f7DG/mCOXiJXn+hYtXLB20kgzT/bDTSdegCvDZZGNLCxvvF3J8IIn4q0hAHLtG3qQMa8oGRD/3r9wuoZP2D51uQOyxAAqnNdDpSBJneN/lMDF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4IsMddF7pusS0PDzQAJhGb4vsb+cWGaqA9m5WPNLmDc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "b5C/j0f0PSHQkAf+6t4zqlYdbBeIYOT0k0916T8CM+0PbpKrH40/QLrlAnmIcZbMGC4qmFU/stBo3Z5LyYALvJ/apODtuoAnw5ZxpFFSLWzonW95QSqrP+QLc4fR5gtPxwfp+lJJM2GZG/HqjMW8iuySQIOO8JxR6CnbSgBCBz9QlXZYAQXf1o/TVIJYn6WKD+9sOS+mN15sLmgRXDRpeuM932uJZh8z0jZH/rya8veFbB2nrvVOcJ2iUpXOiiJAXgVoyDo37kYJLfBgrkorVxIjwxOP0bQ4GU2Tv7sgmNZBYg/RtnovX51uNgWwFSt1t6VV/O1zj+FGg6mIH1huFoqT8uJ/1Hl/2m26dyUDkk9a+hELqDbEHN5Lsab/bFM3JvHWOUChBcUZH0xXGHBwY9d3v4nBMurN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4JctmIM8fb/QAMtKae0kmjCileOpgRsTCqfY7G057Qs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+MBr6yXCKmOsRFd2SWjx64w9AoFmAjbKeWDyFOxY8IIpUpghJrszmKD57B92hylRHTIYuLzKczBsrEZ8DQ8PMYIA3U5wAj0VTo74Dca20ZMrkFJu7nXf4mHThNIB/dRpWG59/odflS32u/qjBneov1c1jYdfiZRJoXdwgxUeDW9uffAVo2tfOZ42CtASqs2KiMEz8qPNfWbnM85p1FjKW7cgIIMapETiikId1BN/vb0P1ZkrJ/vaMuxC94Cz0kPv65PsHRyeQPc4yMW8nWpvqP+/QgkIf24gTQYjHKMGwBSKfe3NWxXAsef0C9UH6zng49RwHSl60v34dWjbUqVOcSmN3OIvLc3BheFrWJ8O3P+FTqEkEldVUI+EiUCLVGplJyGqZM6uX9UJ4UTQruf6S+RzIKy4jd5u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4KJjHk45Xo6jIDS4dB1kkBX/lwa2bMyi2xvEqYjcBAU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aGT/byyEfuoZ8mIBniCeDN+/ji9095i1xmleGHmzHawv87AYWtrc8v0k2HJZOf8QAd7166p3+ZezjUlvTm1k5U6iNcFEQmxhqqo9WlU++9KLjqvX7PI7LSr9cEqJpeNm7X27xHt6c9f1J9eARWgiGTOmECoputA56q/Dl8HFW/DVqXLlzN16hbhleoOUMWw3eZVyklLNK+c5q/VPvJDazIJi8oFZOJnAUXHcyp6R/uSKTjHeJZFhulgj4SoQynvpaqg5wZ2lEtK0D5Q6d5/itVC8WBrZxR3zb5+H4ZNic/3rTU7OVbSEES2Zyhta+Bp4PTPQgq+QLbv2yR+6+gT4Jk+gP7GsS0sPlj0jk2f1csEqXXfUIeLdf15+HifK+TmYqc+lcbcWJ/Zk0lqpo/H4iN0zFcZVDbm7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4LJluHPqQKxrwSl7Y20B6cCyTYCfihYZridC1YUc40A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iMltzB93hfCB5zsJO0VEyxFgIANQf90z603gCEsFTCWl2GiVjH8a5ZPFoYkBDyK2ypJx8RWeLm42kvKTdbE7iKNYUB4ANSGOkIcGQ9w1Twqmmg1Qy2EkTVS8ESxZJJrkmKWvZJZk2uK86o8TdY0KggJagj8NIOZgPfH1UNTeT+Av5iYu9WxCkQdz4GoSPVhbvpev5I5axhSvjJIYVPsHqZ1by/XM6m7G8JhYDAqZjhb92xCuNttr7fHhgovZROgCeJHJpEgZc70zCAgFWv60Y483Hpz1pYXFU3P53peEeW0fpWLOKwwC5XYRqcH7KM6qx0tFSeA5EBScj4FL3kgoBcDP6iWu1/iwwWumoYH+cHwJa7NohLqtmFY5Opqb9WGiWxclw7sTdT7EfkFOA4X4t/o4tgz4bQaI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4N4iJ4Vs+Z5/FT1+fw0djBnJEfRfedj15fKr+EIDdcw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c4Kp5REoVokpYDExwcKE8RmxnbLyeRh8MWUxrdGdLaAoiYm3j80K2+nwbQnBmY/nSN81qdkTi6H1Csk7q6F7EwcA10BPoQFrzSnP/L+b9ejl5ydywjRMns/ClOL8xRkMiG/Z3bfpxxKltgPe88jOJBGE1NVaEzYrja6tyVEvCQl+2tPiECxqX40Cy54gvXqts3J2f8W+VVxFnWuM+YW/UJM51TloDFJb5cJrcPydI0p06RG++XnVQ0vaP74JYBt2ciTBBbOisUbgde5VkRxpzUZCDMRKUSxQowV3Ksj/CmJV/VtcUT63hPG+ONmde6LX29NmR4+gLfQwhVZre12FCq768UyaImJAQh0ZVUxaobgNI65U+dpnoElQ3Rkydrb/6rEGsFy+0pGCWJ80em6plrqp5DilwZUj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4OugeNniqEfdlcUbbYh1C608B85iLZGdH0E1Jl79hK0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7Vg/n5evuLx4atQ7/Ci0v3uqM4aTTSmvVkSlArjErPyNUBaSTZGyF+N4BZ7pFxLM2U/0Gp5W0dwlF6RCkYkONYykX4jzqL9W8yDXeRa3duU0f1SphzB03KRO0ngQfqin2KAgt8g/bY97KJwsKK03d51JV/cU4777+NtPCvJ3+dtkYJMVpX7FaLBaUwXoV16v8m3b47JVtFBDc6XVBd2AqazOJrXGEQxBvHEWM0bHAMxTU+tTYihYaHuCepjogHfhw35AbaJy+xUXdcw3kC/WSSWo1tyyBcFGB4ed+/3M9uBqLrObJQzWDTXetmu/J7GVUyj+qXzhXqsMcIkW6KjcAloZjJDQ1mUiwn3q4nQF/fQOuJ19WqzZ/5W0KIeBbZNXAvT2cFqBMVcDVavpoG3Z+Aaedd+YIpMl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4PavnKUGePSGjRHOJ+C7tfHciBCa0XzjAl7uU55o6LI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2UtFWkib4RIWSpwuXYCr44wi6E4m/kR7Y3jORtSS2Uu8hMZxX8kzZvAaGJ+UZel1N767rWaGZg6X1KgKxPO63sZew0bACWIBszpVRQQfNyxsNnFqYiVwZOXbnYasirox6yUK0/I+L72hm4Kd36lfVQI64nGLbAtWc2vJFdo5DkSRk6qXbUT5WYAlJ+W0VUj193oQIp2aaOif19Y3INsjeuI9RWaJPA6/Ib5Vgm01iSTXMSOIvf6LiKVdI+BHXeCdMLI+82qMaUDaGRdEkGFzOh6mSe/JGnvnpKiNpjBGdGUNG18DSpIGurH4vW1GMosg+QoKKRwbQyOVgnSA6C0ym/6bXYqNXwKk/mX2YZithf3p/lQZ4cBZOu+2JJRxr6U23e53WnGq2Os0bmy/RbmqhdjKJLEjWoBh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4QJymHrENtARFyGFMk7UaQhPTrNHAAy9f+eMJtoJ+RM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pxVV9Llf5kOisfJKOtAVJI+Q3RDpjgQ6ozAqJoK7ifFJDhrQr/H5OU0KhHalKBke3rE2kU4NdLwvghLJBEypNr62oWHFYzXYkWieA0bOgUlEajlxpuv8hXwFT2fFxIJbtU+o7vV38rv94LCNZQDLwIRot4uQBYNBk+mW/aqAs7/409+uJJ2uAcTT/qr2KBw/EpnOtGYUot+qgy9hXGYLwIQIjyDl/3nY3yrPObI1oi0o3cbDJdXWJFxIlLCPEpWxqSTRempU+YhHMf4ZotO8Xu2rlDqqMTtByVD5xctIOUvTKHsVVj9uM5aOI9NcEOiuygUZk3OSOaDitH0G46Al9UM/Iw2YWPC4z4YdA2s0VefQhDBI7tw2lkY2/7cgztrICXL3xm5tk5GzqNnXdqSzrUvlk+e9h0SE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4QQg1sLfoBXyqJG35yzCqrC+SgpCzy8rIMfKB3iNLoY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bbQWby8jXKE6sK0KXwiPMMUE/3XAyf5reb8SPIvaLRrONcIi37hwtGekN5escWuR9qjxxEeF6Cn4k44LSszmqoSB3WpuN9E5r6fzwMhHdYELtRfY0KIwPGbh394FkvdZh5U+Z/Zhv1/HpmdqoXERRfjwcqXQ6+8Q4wz77Dr38f0xchTDn4ljYHwiv2naoNhFMJBqos/GKsg274gPJhY2DKAOrKfkSXdX6Zne2axK8r3Cn2nLI7rsDWraGSmEswLm6y0CuDTovXkXCP1BP0XjWD8FBuf45RkloreKtTEaOobLj0EoGC73bwY5UAwBu2tNawA6UZlVYS2V9UWr4z5GCEzwr9MKK61bzsUcvs41+MwRCTHkybPile3PvLvLmMx9/L0xecLUDQC4cvN3YaBtIP68UvzcdTpT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4QffATm2y6Yn+isYyee+9s1YwNpmWXfjj+aULwZ99PI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ptwZfMtQopbNB72A2JD9wuJ3EEH7daIea/KYzR2vDhjZlcc9PEQbxwyzQcpDcijeQwWUts7W4OSYChS3Fz4sx/bhsLNgI0CVAXyYhWxtEkB/kMGcnJT5LWsEwWWgtR43vq2EQvs7j7W0fHFcp7NXhgJI4cgvwcJhl7dK2BCu3gPa6lJGBRSWzjNvIVPfIzE7NGixZKgvn/nNiMrr1RIZ02zZqdnx8Q6m0V7f1Qex/msBMzvSnKyLoixGzvfpZeGrss550qiUmGv6wKu2hQ2xKQmIHK+JeGFX/IBPjdHR7+Rk/P3yBxQXA+e4FXZu0UqNAf3eamaT27l0MfAR+c6jHLRtqkO9Cb1YYNh3JiXC+A0HYkrVRghT9MLdX9oiOe0NIVjLq+ABUNL20qUKF7Rco2UA7H0ynAJi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4QmdMSfE7RDlvE4ay1Hwgr2FEN8794438L7nKUu/k3A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1zLD893WRq7zHIarwaXxHPZOO0vIdkXZqLBCJdgJFYSl2FcywWLj4oK7dI9MQfp5XxJyaCkAIjmlg62MMwsCVhmvO964HWTMeSqInJzgh7PHEQjnJt7pVawDgG+kA1TmFGWaxARy3kw+xMUUi6fRj7kSdUmAH54jsOJn9faSyQuH03FzcfpNaiNzpgOA6z94QrNHws+AzlVqZI9Y2TycYp0EYqewpc+ibG4+poVjewo3M1ngJtLfv2w/hAJuQc8/TtCaIBOr/9JMa9nV5lLnqRLu6xZMZx/haAtWlTpfufp078ILfQMl5RaFeiJiZZ8L88eko5eXUUxX4zdFsJBr5HYuStJd+1Judc3KlVZ0rMV+8A/yXNA4CLdcPrk2bEoaQUkathgPg4i9gbdJuFZspQoXhMWFtUA6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4SXEma8N+DaJmtDpsG+cAVMRySYaskTyosOA9jePIsQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CQuB6UEOBrufdv2gx55Jdye56q0DPA4vwJaYzxHi5RPjM67l/zhUsp+eduIn56W8EZ5KyiyQSVgq7C7gcsZmYInb8Ckp9VAl5SozdxK8wbA1QYuM4sPHIbDLyJ5iIfOlswgcgo5ZeGix/M+qJPvF7G6U24wOlKDUp88rAmwpSb98IBrbT3ItWmN3AwqnKq2xMsY7f3aU5NGXhU1U4/jnB3NoORXvZ7U3QoL0JF8kGbN5g6Op08pJTaGIF3a6cPh4VgxE442YMWIvLZMafOWkucQWXgE2JtD0E3TZBjjXrOgBCimsUHq+KJWJven/m22xHd3wIKTYPerIopM+Bh5PEHsTVvkUnYqUh5QL3hgnRIsXaSLl0K7DEgoe0bwejE+S9Q32CJJBrbjMXjubnjC+IweQyfuBF5L4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4U0JHcbiKxL5CVFDvs1VxjjAw1l7XMykF03QZEj3zuM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ux24hG2nmltChxs7NdgwDO4KUypElV/i6Wzx7WSf/K6A3SbQIaWG6hWb0fHr9TU+WMnVMYDKcZtqlO5u6vTqFkMebRQVO5d++DbwPdW3yfr40i2peF7p9E0ffPFxz80d66ICWKaxENSu04nyOpZ23D4gkhuOcaeMTJnwbjuIiAqUKNKpAxU3K/WB8WmTLabQdtyuTAyFrMOsryfrcoRBM/NsYnTNio+G8bMY3goG0l0RXA4cW9u2XeEfOZKJnJTwqNa9p79y9sqcKeFxG2sfha/TTJ4XZ95FoTvqedRpFM0mjJhuPo5pWcmFhRlfNJSlZMESPNOv1I5KGW8zuN72XMbLw/NfFBdYe3gC3/Ky6r0QmjIkXLTSf3G/5dt/y4uwPe6W0VeDbT2JU74a54/httQOvnl36qQ+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4U8T3ixw+s/CTxDIRbrjwEdFMOBlQKu/qPKuxZlICZM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EczmRWROqeaYONZtpOtS5d+KzJEj99I1oRZrdj6q3vUKE45c33g3EYgdAf05T8zYQiibC1RaAOfAMBuzX3AGAMJU+pKZc6ICAN7qJfo5KL6emz0NKpMK30XmOAu8KnzzTewJre+d89WNmug1t1ORuGcvzZjZnuBd0xx2t9hD50828MujjoA4AvDGQ3q5BVfQ/j15vb1O79LNzG+MDAQUXbz2uoDn8ax3ic9yiOBLYl2BW3CS2WjMJYXUHk56MUlDQSQZdSpLr07BwATjSsN1pOvKm9o1I3nXkjuMNtdX26tE4Uwz+6qxjSK4x1pB2eLoJfdaB0rO1FG+wxm7EtDf+jiUsE7jb5dj19I/G/rKH97nGKc8pa9Fjydaf6nVd5812Ty3n4gYtp9NSKYviIx+ptmrOAFEUrzt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4Uub5dkgi1EBsUrUTXsQL/+THPUUUGWoDhz2XcdlkTM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Yjr2yOwQBKrctHNOHF25KTtMFERq2WvA+4/PXIqPRFARiuHIziokQtURmXMyFDR57iDYVOwie3viSr/nGmmUvZBtkm2Mie0mRPxWg8HUkgkWcEQl7vFel6Rnm0oQkhOWaRuFn2+F7QAIYcJf9HzlBnG4XK8PQ4EkoaVE3MZz/6/Izy+93yjHTKNj2gwyo1PqemcYONawczAMGdsUtL0BNUFaEBYZSFIekKednAKe5wgEDrUoqGdS0vshwY8+mYneGXjdibRc1W8zSw8LNnPrWb2BA4Upvo7j2urGyS0DLUZ4nJcoMz7UgqBIE5ZWuHs0uHae7jbOG2lp046aRpyPrGPocrbbbY+z0PgKd1yC5gD1Xq5ZTf3MTkZYN8THTAx2dpYW+VoCn32spwtmIkNMTktsLuTQ5/gP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4Vm4vv0n8+pdnQoIPMZo2tkIgvwWNImDtBLJn9Uu80c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hAxROr/dheYjnEsfM1q3iqTD4eMtkfoGrQ5BNym5kyMwCKGLlos8qkKPVeOEDQn2z7SWvagB1O5Ucka36Y5pJ4xsJR5py+cRzFV6urcPLgP6Zd+W5X6J6n4BKWZNRL8gvf1nXOR7Q6NeK+uogHazgLzacDn7TEaAyeYYJ28hGwmSvhIV3cVkOhcAqEII84wxXZTvlUF7TkwzrhPWHeAS67RmVEa5mkiCfen+FsxaGiKYUdDzS/D02TRMANlnIgbK5XnNyZaMiW38Nqw/JTS3p0jBxwRxLB2p7VMDBBbbXVJt23zpRnUM0Wnm+vtp6xvWTUbJwoHae0UkdQQ8piLz9s7nwY5NH5BIMr7uuHTtyqGim2xQ0yrKkZnmskD0VAbru1xpPfE+A5blPAFVZI8aAbZsny6C1QOn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4XGC79pmX/WeDNugjj75XeIVIh894iN8HCnt+Ugw6dI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LHOiIRQpBr2wtipq3rFNwqQVziIikj4WvpvXMBrc8yuY6oa7F9ejvkjfo/MjKZPUvBbci6en4qAddtZKeAVfw4TeMMgKAi1ddsM2+b7B6whIrvT2lmPv2QeQQu6vA2R/elxLnXSzCtk6deVgjvKET6A+y0HBbVEf7W6lGqvLCn6PAACLD9UuBFe8uguTe0h/ynnrw6AqyD3pPz4B8M5cByzTOwYUBFG4p5+9/R2PQYpy5SltKeKPClFteEZN2YNk7bI68tFqVkaOhzITJ+kqvZpup3XuJPNdn7i7gjnYQAUeFaAkZGKz85ENkTJg0GiK8vjnQsgyZqJCZLQE6ZDDgr6RMvIVhnYR5c4tASKLYXsWuORXbiMrVLMCSnx4iXxDs3SObUhYI9sWLcgaGx9NO6UKW8FsJzi9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4XiJ5Wtkg5p08d61AX64FVCtlowM0asZs/kgq76h8kA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e/JMETYUgiI9g5IzX8eMMDdAy0s+5u1I51pETLWwVK151rFe2o131dJ7+khOw97GWZotgb9gWJ5wwXx9wD5q4wrXoPx9ajj+Y4VpkbibHvXAPF8QHNWaKo2UYfXk6Ba2SXsl+dyhlA6s1KrinzCDH902ahdijnNaECfPTv4mp8nW01dcRT6Pxep+lRF2coRSYTWfhyqwlvk//QuRZRZ+Y56eokL3B4Izr7XjV4dG5J094wX9XMRHds19J3JqnILyqcY9VAyFY5JNYB7ArOP9t6EQzxsbVEUwS5t9UeOxGKJd1stIMMbDRhwsA++nTEaBM+4K7nqKB5Ay4zZBbjXhvlikEaReCRi0QK2pmNrXMDeRbklUUrPjxXHdIpn0Mv94t40bTDFviVWIsJ3yr2Sui9mRlOdLvLzx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4XiS+3GV8rxM03c8An6vs8OgMeS+zey7B6Hxnv77AF0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rp7FnGQGexNBiXTX9cp86ewGulFgIa+3b+V2lANTk+DDJy/mlHePX1T48f+RrfR+yRIFSeOK9k89MPLscKs5RSprZ/GJjMBdDF0ncOKw/n9xb9TN5PwlcDb0+2NZdsZy6eT09voCTvsQuOYcdMMAXBj5i9PN3uXMt0ghx56PImmhwAjWdhvSmJifhF248tXehA61wKhm3rN/sOmZEIOjQ10aS+7+BTyd3RxK3UOV9rFl+v4N4hqZ1DkOnXF10zBR+WGd2k08IJ0Z2FL/0kAscWuB6KgMu+DdogGz1PosEwRCDViIhpmAe0CSPjm7/bcrrswtc9Z/vPIOeNbX7hnyjo3slmXaRw6oVxqC/ccOtYREM9IDqxeTfIXINX+YkSHhmiDGGfXtjc2YMdNiNk0CJ8ijB71GU2//", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4XxKUyTCPQlpGH0Q9bFz/Z+BaYA6Xdmbw7IBCklCqyE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kspDPl4Uh4UhNiQE8D2KPUVOKh09OZBKWWOjTQEh+GR4V1LYNVFow+nD0ryKtoi/kVeQr4QgtwaDyM/uU0t9y3uicUg718vVDodInzkD5fUdRqiPCqxuKGm6ZhZzcCM0zDmxIjxuqI6Prwzx/PUOUKYwM6xrYdEjx1FbZkg5cgIt626x7J/4w3RUs9Wb2QceO2RAhloUVuFHJtd3qy92MnmjLchNZ6Yn1siIJqIwiyXXJA3za7/e6iNEltg6pZKKltbhLsY1MuG0kqMoFVBs0TwPlHPzbDkkur6wzf05Kdy6kiA+mbww5NSxuTwY2Rj0+09+5R53Bu19JoJ6R2yZ/sl1HRsKpf4F+3sq8ie08OvhbUgkQ7AjbUjWnj3520fkO8LnkqowCL+GdnDisNy+YV5TIMYcz2ky", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4Yoc+Wogon/qzI5b5lZVgkhyOB7bUAhnE0X4Mph7tKE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+282OLmoLu+z50XFVhrr4Pb8cPBpWa5XY77el/X1nhKMLmZVJmFhEmEgwCHR0YR6Zoz4qH1ptAz81h3ojAi5lBGXJ6cakhUvadPcgL0nr0yeN5RZNphPTA43MVdFVLGuTJCbaHpsykm5GsfPhYqVL6jMHvTVbQcei5dUK5Or0Wx2VnMC75bmMPXCqLwgSkwmLgz7+D/K+OgyN4ZPrtLAwDCjbNaQm8scpcBO+1yChGS5PnZxCrxvVgMtrv9Yqai3VoVUqmWM40rETBxla2FA+PJb0lOUMjUmTn1BeZhRdT9IwSaQXRmhbAvq/oepMk3FtDXAVbJW4WnWVxqaUY5sZZH3s93WLLJk+XCHQXOn/ug44mbQvppKFx7kwRfpN1WuRmDnnMzcptTsffN1RkevkvJwmnZODu+t", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4Ys2N8shJQLEyTRMKxPuvO0Kr4qZ3euXqf4P3c+GeSo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PW3B4k1KiNfWBDcPBVuPloMymMSpknCWBm0DALClJTb40XCa7W2WI/VN27li5wziJloR6xFHews4FVkGnXyBkHe1Hz4AcEO9BH/EM8yTjeI8hC9LTrIPxFHPiVqiRltpaJprxrM1b3YfC+/ANDAVUffBeBME3TZlbQHvhJ4q/E+mCMIXomrxYzq1Y/Lp2tLEaB0n8db9MpxTVON+INORbJ/F24Sqs0QWqqafKE7IPGQ7bn6U6SB3REVahLujXcgnMfQTUA//nZI5hSsqp1cviIu4OSJIZXcK0thGHvhgpVShMDUBD6bE78vu94oqvj+IWyTPii0lFRjkcsr2Uk/xW5P+6d5GMwxgxFhG6vyPZVkLF810z2fB9r1tHVVLjc0at95Jkj//JrQrTzi6UMEkPs8Xj/O0uWnB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4Z0kl1dlrP5E7g9fyK+Yi5hi/XCKFv9V+SrsS3P5MR4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "woX85uJSp4as0zlrPsxSbPaniCmdaRfa3PVi3CWlfKziF30iqpXdcYxmw7GW9BCPJNLcVfYUcB7Stk/4ucgKkrozDSRk49ktyh3hlVs3Wz1mBQn4Db0khXH1FKo57gfBpjMn9Ef684jGJXIcLnE1Fe3teetTfH+MA3zcM+0TrCouyOuyPjIQXQwO9S+Xs8h2hdMmW23RHViS9WV0Qcoue1o86q4SmM/LlRml2xw4VH7S2o8Z1xXfkYKPC/4N7CdZQJ2F7hl6wgPLxi8is2xjJ4b7mwiSZxKhpPPkQ7oIPlJq2jiZTu22x07o8rLQGbBmpV+hyHFGvjBI2JWEl30zFAreaj2Gd+5ql89Vb2fGILQpaDX5zV0NCHNwvtmuHi7O3umj2nX2485aqS+It/bJs25ir9b9JpCz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4ZByrfT5SgvWTeYsinl7fO47Nyhu2/MafEfGhYrC24s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Y2CbadqyOq39OFssTtLSmyQohUqiDhCv0JbogVU13L++i37XNb3ENDiFwpW1bdL92/w4vWiaYavtdKSbfFTH3EyECo2jLhmqu7XkgXiBibZylUUO8+ftrZZdoQsvQiMNUbmbijWKjHIoF6lfs5uPKSu8+a4F+nXKfGLHneATClSOwKmMAXUk37C/+haHG6TXls+kGna2o+ESoY1ZsHJOt/OcxqJFScII3qEdqZyaDXcmpDB+Z6dNloFAQNBo+PazY+Slp0pAIA4TvqlDHzCDQolnmTG/5EwrBITJgL0JyNVclg8FOfhPHu+WV8IXG9MAr8Fa5y5lUXgac2N219Mc0iUu2rDHMz3Q/BPhKLsazezVpLYJqQeIg+Y8P5sRXgMfignO78ODWFOzqHy1Kd8HsIDCdWMHWWRp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4aK1GSKWI1q3L0W0DUGPLJQhG0560W91Nhf1gprV4a8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "blkE5n6EUo+RmoiF0afS878Zcpm4MEh6ly7FWEthZoQZ0l7pXLGzp7uPuD8XDaaXZEGU4BQmzI/HdM87uBLBjtyrfRTFV0tO0hfIM6ta+Ckdlq3Ow8AH3E6gE8m03KTtWgfkGslqRWu2RtiG3Qj/FmJcmD+WhlnSj7c0EjijEfkQ8LYaiNHjiN//SpHM/QdRrV9zOl+D9KQIXzvmpD93JrN5wb0z9P+/0V0/BGnu5IMzN/zz5CN/p3O2zX/ZjV611AmgTBDz9wCIcVyVDfO/vAKdoiMLj/5cMimq70bqX845SEnch+sT/ltUCzoj8JuNx2jwtgNmR5Jkw7m2C9vO/jQ7h5E+Dy3ul7RFd47By9PcKz+idJqGb1ZLsvbBL+tUTAgkciwPpXR5GFlohfpeL1UiEAql3dMh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4aK23bm6NnBdATe9dvVJY0EDCnxHACM+GU4LcbcehQY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bx78uLAvYUuGYB8H4oVG65gE2u3TXyjCqzWTuhnS/7UdSZopSB3VRhh4HzIua/3TehY5uvLoaObTL0FWmAM+wDngqHOrGcYgwNbXz3mCvrlcH81hphz+SJyPFvDu0PwiEivYWfSXk3a+3RmGGaB2zziqDPwK7kfizJwJlGjjuBx777dWWW6NsXcJyA2C6rWxjFUqAbSllCUnKO3FP6sYAsVIY3MP2Vfosmc5OY3C7ldZ8rUktiqOi4/zI4FzTQt2e9CFJOcBemmsy3uKnvFIYzInXi2Vk8A3lbNqpT3O83VRMiKVc5p9S3uaVGG/eWFD+4BAk2b2JGYSC21Ryx1fQUnrT24OOy5OKsstRWPJB2/PZ2pNYKyP5oyLo9Z7XZYqXBJhuMU6I7Wch8NNmf2Da7c8/j6TZLVt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4bYSw8uNermrILgxH5duv+cTerrAh4o24nXQjtRq4BA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DY8r4SQregq0iwu/mi+yonlPRG+HVfnaRJFjCcuHg66EWV5RrTabHxjveyniCF+IQa1uZKHE5gIhPyQzk38A0EECmyq3INtQzf4sWrI6ANsU2jn76/kMvLzDqAefE7u8O3ZiWjBgypokRVU1hX1oS7bsPyXFyLHk48JPYdvC0SnbZ0r8TAvs3ltTZpjZ/Ahh5qhJuElN8fQtQg9UUWtfsh1QM8CCbgXr03vT76p1ss4GvkyLmvr/uqFhLcpkP5JBE6zKMnkRLvpQqqmCYPmSatUMolMYP2klKjbBIT4yGf0niBXvO6jH97g6ULtd0OIuLvB/MaNg4UPUEK9LtM2reLx21m8BNW7ygRDrWc2pZU0rhaso/atewlLg5/lWlC2LxdlgL8F6UIcDdbfGrFJ5IrmCyWnp+/kv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4dDL6VaWawGlGNpUiy8pfJ0uXPjMyl0suvPHU3B267E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nxWiAVLuhSZzAwQEJOBa82y6ssP86EbQI7pUPmSASfoKM5yd1fwi6Pth2pf+BHhR7LzJvPZANbtQLJ1eTBR63K7gnHbErY8uQ4ulcUIuxnl6F1Vv8daPqTkMwt6osg9igv2uKKkjeX/TpsJL2yrKnHO1Yfa7oQ5ba9ksJI6niD4ZHUVkPaMF3y6hxRdVfKdj1ybTaAc7w/eoyPzx8/brpGcl1knOlHs0DGGLtbQiFneCo5VwlKaXqO7N903pqzVfhZi7C/ZV+WahM12ok6Qvu2U0yTGOCOaAHd7y6HHRxVCRs4UlWD8FZMO6juyFQ7IINe0cwm5UFZlzXctki3iNMzUt9L8PMISkKBk4kB0GMDlAR8UnMUR3bIk3AcaSK49USZdLwEkE87mQKsQPBbhrTPCyWAFa8ZJN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4dEf1COc+T//uk/qEU1dVuIysuOQsCvNxpKUxh+iKMA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "72pX8UqiIy2GuQYIBUb+NWySc/8cGfV4GzdMEF+GBfQQcz42iaV00EBXxQjPgaWlXFKtmjrNJ/DAmcIqH15l78/CrbEbwR8rkDQS8OAy0onoLxNIkyiPYLPPQr6em0q4gdIewi49RL9Qps2th8aQf1NXesXs4JHBt0DgQfdphx/6AvZtkq5zxP8qfNfXQvzFaAw6KDXP7QOzsgcAM1DATZ9cxSIIbsmhqcq994AUmIiUudNe3GAba7IcYHeH6IzeKwxdsrplTzZz1yLhf+WyHF91r9oUkapguqfkrUGwKREZqHCPPK+NhH1t2u7tgBBt1wfR7ypz/1iTTiO97sdjevynL346GXinFrglWDUGLRBX3d2dnSa7Ux+izFQknjxJqZ9UWQLrJGXZws9Bi4mo6IBIetEpBHSs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4dHNg+X56+2Jc7Fd5LGcVqu52lmYyTqF8zpP0FddzHg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FPl7dLtX5oA8429BON74AWJ7atitWAlLZaD2YJr8+SfPwQE+NNsUAck++DGYK0v3dsE1JhbwgmaihspxPrYpx/CRhcnlRvNN8UqFGzIw5zVTdAUCBWkA2P8ujcZ/Hxcimp0GnYFVZpTFCkedlv4FGdiHZdELk9R7aucJCRrulfyEn4Op+bACMAfH+xcFzzPCezwyTzso/yyFs68ABmslONgQo81bxZLFYgbQjFY4bJSIdNQg+Cq67/gV7rO2/b7FaVYbksy5MTlpIT8uWVEgQbs3BxL9rkh3Cl8IzK45Rkruw+29Py+uVKohYcqvMKCIA5WW4D/TzwYfw9a263dRZjPBpyaccoFyhc36r+IXAx4VvnogvBWmscPNnOJqJUxEq7C+hrVMIjenQqUdx0f0zosIBkeAwEtQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4dKzjKlANFETP/lrGlT7tgvQ6KVQyUMhgQrBwCZ0dY4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gbYdUhGyuvtNDlf7wUaPeRGYTEBNL+LaVoK93icszU6nzaLsIPWZhKKYU8qfqJshSSFzQrHuvqYuM3tG3utiFOwjlXohVAYINL3ZeVKALfRe+Y09Khv53yRHhELlH2RXe9lRh8f0sNOcZteEInNt0HFr40fNd0a8jw1etFvtTDVIF2jXrjBnbD9f6o+FYDfaNvY/ASXTy4Fv4sWWuX2Gl2l2BEzl7HGBewXJr7KhNNNOZ37YL/V0tva5+wQmDvMBCcjW24hFR8ojxx26R5Vb+8IHDwM/FUrJvl7yCtm1Il2CAh2byGJ5rKfRpTuSIMGpBnp3x5W0JI3nzBp+HFsGF3HmtIYZGtzrDp6+fjZ/1GH/i0J9O7b7aznNHPemU5tuks7F4ggksJasXi/0jJSMyvhGJAT3S9jJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4f65fLGjK0In9wL265Jnzo10gXETLrRzgfHqTB3WlL0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E1JTsH05wS/fm+znlvNgT5LDzgnhu4wzACTIsyRaaIavEZVFyXDX/voGjqk2/trziLLG7uVNXZN9Vj+Gznry3o4HGCA3dBinewQRoq22vhTmFhZe4uMI/kBaCvmMeV3QIen17e0QzOFIOmRVLq2HtuKb2dYc09R5iQc0YQjx3OPoA9rSXuq2hMEQDH38BiMVv/U5luIRcX9LBc7N/046zEciDBQ8aplvVsyBqN13+/I+hbmZL6IORLACyjYKl/rlAny6RzPJx9/fbGBek7avYtzOMb8PbPlqNcltuQym2K/4LIN6mmFBK376bKJEe02FU9M04gYExAvBBQI1zf8kqvynsddF6lGCdn2pef9vQmUlI2OaMM80/q5ZbQ2FZf43IcTGh8kfF3LqLLhlFTSWJyAJ1xsIO6jT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4f9GH6s1cZ9mU81o0QcwNZdygfMjBps1o6eQGc0Mni4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aG2pw9oB8MmXuBAQSsPI2zmKwDpM7HR5E3CjYi6HgIdSEBvDAzo3qvImV+hSsxHEok64ItKhE15RQ2Z74n7nyDHKi6135zYLMuuSZWTGB0aq+8aF7F2vQm8Ho4mOz3x77SuKQ3QCpnQ+sErwrFXVZNWJw/SUDYCjNbgASb3iEC79zAiPgxi9gE0sfFt138t1k4X1t3F+iGXRUaaxzxcStZXyKinHrnGig+9HlRr5xjkUIqGgPma2N/LmK7oQfbHMk4gOh0+0qnsxg+LcJecLFniyooELth94J7rELFhS/llM9IQOb4pIl4a7heyuVAGGmoUBHWVHrsvkj/9EyNNQCYdmVv4RvRHJ8VK5Eezbl5r1nMzqtssG/AAaHNsuTgVxpS/l6LwP/WgTLIx7PxYOYYcqkJGYDD9P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4fHMtjOlJyC+Gg73cbGeyoXdcyeiB8NTiM6PftwGZro", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4vOK2FaD3nfZdmzjWp+aTiXS8QtoHWdzslag9Gu9UWYCtYn/t5NFaKmuiZ0BDb/ZBOEvkViKsC8pi2bF6msvIY24tpRGOze6E5cyxpU1OyTtEEyk6o+/d4Al0W61QgKEG5R+dq9DoMnWQTLJ9LXq6d2BHP/mACZ4vT/HmSESguGXv9N0fusVXvJohiZLzp2hxucl3mz1+WEdE9LgXrOIzKmIkMFXV+KngZnOw2E4sVUnEcX77onlAw4cY6BrhtIwRbxpo4zM7b8aDgA4EiL5kscNZkRAIduLXwVgU7CgKj/evjxmT35VWVrXrp0q+SORUiT5SG+/UtzJvl4oWfqu/huMl9RhKIloGZ+mldVzPiSK7LoSkBnCCQkddLv4Ymbvyicj3zsfguswbsyNHC8DHAbzMv5ibkMn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4gabc6OUJLP5beq7b5KBETOxwyQ8EAwhrODWx1CB/pQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8LBGke9vhY4Y9I9lnJE8CXZUuDpTbcxM6Doz3YvzfSk7vVjfsGw8iC2SSQGSq56rSCzKyy6v2PSQxKXhPmWHmXcygWiJOi4yIQw9Nmdy+69Rxwq9bYYBDv6MM8l4otEuBP/rfaZ2WZPuj/DU5XnQF/MjF558zXZf7JbzFf5fRaLmBbva8cOUBl1y3ZnZ94B8djHH3zfb5p2wnjZTR48VtN0ij5clyZAlKd3YX2knyrzfr9Hr7ABpGx63Jxcl4mqrpNcSJHBqVqXSuT9ab6j+8Tub7slhQdeBJT/q+IubvT/jc/MS/K/jB4h+TEgMRMaK7f1rDHRT8dd95LB1B+ARBA4gSjP9fxgRCMxLEMUYNGtSrvGheu0GSGZzacUQ+YUDJ6YvsBlDDYNlqzfETlffNLmaC5fKE/tQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4h/rv7kiojaRipgCPnrG5p9QNNyPAYfu1Giv3lrQrLk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dWbRuocUCsbrNbHcYwgPmbUBsloqpCmTmwYFz86mrcWIvOZPr+Ncpur+2ql/fvsyq1RzD++pYbXRWIH77tx064i0qEKrajQEHxK+W+Drtxe+YW3NZqD1Fjezk2P/VWtVI1KUqJpjksQjfUr21d0cWuBo3q41HJVm8ktAtk39sz7FeGJBoxbuMi8YwH5oOSz6cicO275xpg7ctbzwrLjSqxLrqZyjJZFzo+UUXG2gUKcMxbwXdJCOG1Xx2uvfLa5aX3oqzrVWub2hmOlap7mMqnDi7MmbGFqW3HOoS5Zr02Vs5R8Tg6lDjsfSSAMIQUYBAmB3y0Xs3wXGv5tH1wQfBQmh23I9fo81mIRj7CQZ2htpHwMQonIrTwFy2QFZ8L95CKc7mWoMngCumbsgl7ff8hgILXEfnFHd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4hBHyL/8p2tO2HP0zaszMHLhOwtS2HqrwqtuVdsN7+A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GC3+bGIaTLHPWzT9qfJ9kPS+l3rtBQSmN7F7NZx3lHK0T6M/iX5CucRPzSs7SH/SfHQBn3Tj/SbTMzBASIk9tgvncwJSblve+ImlCTZ+pd5+X/RC2sgX8nazYOK3VWzaiDgo9Li4gy+R+o1qw1ibbna/9VbQPszmIVOg0kunkGOqCYHjl3XWKYLQXPWzZCnFDL6RNDR3Je7SvI2EzBz3ei8rPt6Rlp9qWN+5t5HWPLUJOW3UvqifmwF9qNhjUdNqMf5MZQCpP8UcXHogdqV93z43jK8ZdS9yR9x7XaR3y9LF6XDDWIDWDsyCU9IDB23oS+vui1jr0OCRnjlJkg+YOOiPNdIwL8CAXSsuMqGWu+eWSU4UCwgo0GLao6Uh5TgWPshFXKyjD64oTMm6A1CWuHFa8bcOLGDX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4hIclqc9/Hm60BYjmingjrTdMkNnztjD9xlDVuVzvZI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Hp9v997/XMHWaY8YxmIl+XpOZkBVKQwUahys55FNb5EdQE9/EOkPPlweiXAWCHbzewWPjDWHpM41lZRSM9+O5wL2S+Lqn2TcZqBJSmoXPu42So7w/8HGJzdJl9QHY8Ln/1J4nzLaNDEGs3awb4a+zhsOBynvM3eg1rl7j8P38sCd+nncIMrHEsBoJfngkh4ppSOlTynSxhssyNfgE13WHbUCutGbLke+suupi4E29kVVVZjcvmGV/BbXeIGiP5B2gI0L49+XTmETR7pi9v+BdU1OOrP0BATigv0FX6UUwCISLCWeGiL1Jtotg0LzHKWR8w941dHGgprrLf2Z2tP9JCbsXF+7vHa01E+Ef+1Q66eZBMNRmr36Fc48M0Nbm+f+O1auMhx2FRluXICl9qny5e0poGhUmYE2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4hL+Nae7Vm3/VJQRK25aKGMCm9wzh7wtiqLKuZa1Ivg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bciAG26bRCV8bo8SpEOL8dcUNaKVnwHgd8ZEYxKkl5y+TpthLRgxOu7L9C2+cJRCP+pFGjeZbL+COOwToKXdq624yPJnTobciedosq3beBtdW2Wghudx2wdZUsxKNQobN7mqL79vO5IUIqt7iffvhoBC1iWK3+ah+2DLKT2BTgPjtD0hBe4v985kaL86k8tLK9pFdafjrWqCwPYGsA0txNr+632iPWM6arP5n04CG3pExiHVN4WH0YLOXmVKnInPxoVKo3/lC2MJC30uUvxR9Ydsv4E4BN2htvx0mbIfi9i97jA6ZZ1L1jokS9sFIMKoCQqr1CNaBtyO1Y4tcQSmLc2tawXx1lpuAOLQKuVTkwcyJj9O1dzHt/PrOVkFer7D4PETcJT1KhKvszMynRhyD2VXuXKBCwfM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4iF7fDBp60ZBu+fgxT7dIkSfM6HJwGzvZ9+XJWLYTQU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8W/6uVwUIcuvKXbjW9I8m7aoz+42B6msZTYwKzCxg59mK8k9P7JBw1CHhuvx9ZzPJSNGSaib/hM2OBLbd49B4f6kqW67b95AHPXYYq7WQnlaCrmB7n/WGdlMZfZ/cCSvPdw3P45sRpH7nrn7m9ZGSjR7ms6FIxWRs+PLb2ZzV0zM7scgp7FkspIIMvnskPBLjRahqJJBzx9ZrmCIkBQ1w5rWE8rLa1ZdBg4UyMb6OQ9WtJnwgqBxMks69We+KSBuZZ8ZMnm++BdTMV5cULSBAdu568RW7V3pVmq1kE5/xofoKObXm0xisejE1jwVpjkIsT35ZbgQ6qkl08Mnni3E3UUt0Xvs5Nb61sUsuMWRfKmDdIbql3ijSikn9PKlQYO7Rm/jg4rgOYLAelufStyjJX4GtuoaR1Hl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4j0W5oOGrlrOUGpJqf8THcAjUhpfCLZy+XO/7NQXVV4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KkDBxvr+NKYAyzXDBaWU7LDDCK05eTO+YW6RzApDmQsIxAJNeKgULa35nyyo0PvfbAypJMQN4Zap+bNwbLcOB6wWJOdgogDb2S8RFwk3Eat7Mu5F+0eCNKC0mQv1UY2UyGxtGhpTWkyhmL5xV+c395kcQbWochzzdqadjqB77wJwXk2OaGuDucYnuDOVQyX1o1RGKP5BA2atRRS3CtqpW9hQtm0J0vDhTcO4AQXgtrY4/QLKO8Bvo2SNV3+H6H+P6xoXyz7Sg4VVKmlbD/bmwWrIo6aUpZNVyo0fwv1zz3PO6OcVjgjJ6zlKMPGqWhviQkmZNLPjlvKyL8SD8beU5j6/3yK2/KPrJN4vISD8n+I+w1kifl9ON2BvpzgK6DUTbwcfSUPLQ90L0Pm3mLl4MfE7RYJYVC6M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4j4Y2Q1sGp0/dP6BZQBK6fMCLRRXrsAdMu9E6McSZlw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Jdp0tqh3zgwdqQ/DMfuUkMvPRR9z3fN3ScswU/a2pTsjH8NmJ5GzjLQQuYhp+IEjnrc1e9zNWDkZ8AwwDbasDOwbW603/TDWNuz0gVEpCsDC8FMaldjGrk7YBzs9NW8S6KiXjwayLzRINGxudu4QRCMCybZk1Vj7pPP8xheakKFDTCwd1D3R0WZBhy70aU+/ALOPCS6ufP/P96KV50k9x64jN1YhdtjaFqNYoTgiEMXSIYZ7+Mz2zdNYLKVpVwHPS9fDFVGShwNdwKRb1Xlsq9/IPV2R55qcfD+gsyBxsYF/89PUm906NAaZUc7YxfErG3c0mZF4giXp3jwAUP2JlJxf2yZzV16Nv75cejv4uF9fP9KnD3Vp+9WuFM+nFWNWJomifBQ165p49n2qd2StG+FCX0WOaUDf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4m1Vp5dLwyMl7eSQ3NsPEJTKc3+ds0cTZ/iOwMfBl/s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/euZ6T1gLPXcEOF1X9JSmOo+ruktHVc8hm6ykyZOhAOqQY6mf/3M/PQMVNcQJMjGPn279PzHntdK+tBHkrRUpvs8/DJbx4zV+yOKrlWdAt9/kzOF2+8UuWsBZ8xXyHZ23k+fsQiJ+QLoh5owwan/8wJ1zA7ouevmYDhAvKLkWTgfaqmM92DCGYPdA1IDv4j8UnrK07pNTSny0e2/qUihzrMp9wO66U9J02o+dOT0G5sq8/Ebdvy9D07ltOtOwJ0v7kF1vjdO6zyFtSvKuEWa9YaYcq2Z0OPa5bFdkmMMfQIcunBr3DW8bmpfl45xxDr9pMQATFFGEKPXOwkunxvGMk4ri/uwlxc/hcugpXLUKFvmP3QChwZPPuMtZhRgZriXG78DHVarlzOXIohsGMk8lLpxUSZTku9f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4p6udWcPLAafl3/A2xSryICLlvelcfrloORj5/8Lr/0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lfIAzvMVvJN7h1ctfqN909Uk5hTH+cnTG8xrSuaEUj8f9BwRC2/lA5bacahUtVokLexzfT5PpbIPa3pQjk9vn4yfsjeujHnPTjtYn//0uxqGO/PlyV1kHQon38vBaMk23PSHU4POMwWL/gv0dNbVqQANyXgchnvvzTntFqlySqTw7JtNxMzO6qAtIAgG4YTKqJAD9c4v7gjf6oWrGvRciS/pJxqenqRz2AZDMXfMKaxpxLGPutbhR+Bgdh0ckg5EZ5/oCvKkt1vLsP8B05D9FdrzybRNT0NR6Xdzjla2QS8p85Psjw+CKsDeA/9dHYZnBgh7J5K2Rfee9SZijzOOpE+kc0jsQN783V9JZ8TBOT2+s0vlY/Bl8W7YYGIsxTYC7zPaJ7UjQiyy8gDpb0Gm6bmQr+X6Y/ra", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4pMePJluVlRtlk21Yzx4fIAvMK+9jtlQO/o7TLJD+ZA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4L2VAcjlhgoOCldAGMnZ79Jm92ZOEoVTWNw+0i8ARsAHhouY4M6ceJnHIfUqDmUhZx3mQBpozR8g7hCTSUlgK9GZUc2MQyq0W+yghG+V1vqLqUapBgWobqcDL/fyaFiqiWANKYL8jtgBq31uk45+YX6uvu4arrSPTpFmGuEtbm7X15HaGFeUrI48xObk1ZAGmaqk47ovYHPIVXeUv9t+BTT4hZIcVIw21anM+ggic1SRencso8KS+rs6b2LQtsVTKj2pprX2mByulws7kYIPkUUU3jHa1Rr/2c8DZk3hVWMwLPatz2orUBDwbOHhaZMWLTFXOPTkILV8BqTNZjnI4o8y1oAcgGC+nM2wD1cKkeMEq1f2CySB9ull0LZwWVonMBNTjDTCRztc+SphGAnHT48doScVROL1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4rQbUsjG26DuZm/FddW9YuWdtQ9qO1fFX3RY9ff+2X8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CGL/ngeQGFb65Rc5tqTyLN0AtNIUvun+oCwlYeDPHjQLj8Nj7LoyblogsRe4nEsjEpP4jfJ1lUxtIE0putgGkhikdQ+cu85wcN39hU+BiwooHNotzusfNDBdZhELN6z5uaMM54xH4ilXhCvqH96ioRjbAw0sFCDWgDWOnwRi7gDaxEFdSOEdNKqwlFvK7i8ZLvjTYanszhaGzW5t5/Qbdx6WI5ftusJAMbtgq2VoaFNxdosB0F9/xJLSfTbXNyKWrYfdZjIqryqpiuhkih80cpVq7sGtzMgm8e+aafSB+MQbdPSiTqARV6x7BMWpvu0CdA16b4yVoll6rlWuGkt5B2nA9RcLF6AnnFQj7oob8jJHu6euSRYgi5EOFxirhj+4gzUTuMr5eZw0gddwr5325txZtkdOD73i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4rWoMow/SfbweEECIGQL5MAcgr8uJtGKnk5SV5jlwO0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j9Z/KSL2TjJv/TP5iiSm4dPUsJ9h6lC5xSuFRaukI4VhDhNVSPBV68JUYFV63fSlHCL7xmZhKigbD06KeRFC8gHtEgXinqau69XFau5GhLEADzUSEiK4cksWSLd+0Dxs/FeFhxkndrUACyevOsxrfmpFI484hjTWmgv4KqX4u2GnSbkVUFjXO0tomZO0Cyoke7LsF5UhJWrt4Bf5/oPXPQMy2QpdGmy/iGCdFSkR3mazLucah9y347MwM1zUBIhn41thMPqqQH1ZbAmRvHcAFxuCHT2tD9ZqnHKbNLxp9VU9QNzcvHQ1MyffRPT0d/0lDvQDS0lJfXzqXU4tvhAs017/+K53dqqqKNXapUm3+VJpeARrYWbIEv43RJCBJaZX8PaK0bTCmocDy1keEOfU5YpVC80h8uxQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4s2tOs9kp13eoBpXL8vPkomRMZbcO5ymMkNqQt7fKZ8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VA7R3hWxmD+aL59dCifBc15j2UNjl6ohQNk7BLo6RCCJ+90SLohLYCSqeQFUOMDp86k31sHlnOCc0oD22/5oKQKqXNmCaInGpHNOV668rW44ZatCUpoer0UYthNfCk2+fvYCAsRheUFlBrK1dGKvUHGWn2ODpeLBInyhGs+Jk4hWO4kGkaWXA/yu9+Akg3+gT39gwB/cBQzKjvRNcwwCyoQwvmAhyRkQdE1ADvSMHcs+DQuyUmbuZ/R9LJwbE05lM0OqfKPZPMfcfGv0LhsYt8w9rXuDQOP55R/2WClD3N+siQcoF5R/8U8/oRNNgckoUpCs2+IOgUDBxklq+kO8HTB5+fM1iE1+N0ZRNccf5h1HiuI4mIkmKQmaGlSTQB9fgVJFKRaz0OfVQ6FNgRlIHxxpfcC502t7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4sODAebYmRl5pPN5r//Pw9W8E4cZ0lC8m89M5JerG1k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "R2DopRsI3oUin5vzch8FXZv5YWvnN69NjVW0A9beOpVjcTk1ELOdSUhINn1WQl0DSPVS6yejKpO2dNBLbsgV9kExl3BDV8DcbFhe35QZ67rbBamXO1Dhg6bs/R2s5FxAe1m5n6Z/D1W+yiWFYfCCQJKFO7Gph55l0xbwXmowbM1dlSyq13kSBG0QiXoQ0dz4IAk2N07EzvWp9QzApTtWmz0Qp2yTcZYFAw6aehcErqW6gSf98RdIPJDHNWjYT3sI2bd8aIolACJpzz3VnPguEnzZ6zDAb9GAWT4zVcd0CFLQka+u4HLbRfpQbEZiETxfJzdpkLQjjc8QSjH+Hr1/m333407/AJc3ZuZI7CPBC2AQFJREuvw+GqMnPNgTuOfLBokOsJeYyQEG9ZdT7+G0/yLfsrlElZi2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4sV8c1SykBvCixrA+DAYdoADqPRmQq55SBAUBmT6Ddc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "reaNRflnuXdfOh9g7U6fPg6Mmkdh0YJyIOV9rMJVNzWAVNr9TKmZMv4N8O5mzn76/tcfHfB4z7Irya4xtrPiRnl4Iowo3SxY56NbH5/AJnZ04dBGmfjlVEim8Q7SObKRWR72IkN55vgn+my6p191qhpNi8fizdcd6Dm56Oevpp+15CnwJe0FibGV1eKbbeX+iAsJQE+adTERt0oq5cyG8CKCV26LH12zVDbi5w/nIbtW7LwVsa1K1gu6UxCcSHau0+Svutp3PuPs8BXkXCV6+mvFJkzGoBW/rAOmPGLW4IwTD0jE84uFmCB72NcYTR23xc2NyaiHX2/ziRlPFYERIyh8Pu9Tbu51o9j46ILKM63zNvt8gBR6rX/N63QUAY86FALJdNQEoXJlmEWEqw2K04T2UY8CzHRj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4stigvgdd8QDVnnMa3FQOevvAiQqtN1fDbD1820ydIY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fkldwLzEg33Q5fR6z3NlUvSroX/PrS4HDryIy9NUpkpt9ggDreAPbLVvwQPNjg49eXwxnx3m4Ja8tiw4SXGIYGmdYtDW3nsYMFVw6ICfvmWsBzBv0Fx1m5/nDU1PQGatFNs7C1Qe9g+vsb31tWdVTp0Z+ZjqcKEvfKsF4fKUrBW9WkvMs8DQ9UwCpHUddDg1XWxGbMLtrYWSBxKHm6fKt8NL+O8rFob0djXmRdN73nenI1bxP27PDPMwt3TuWe/6+TrN/goeHcXF/GWMrfUba2sxpjSpXzukgM3QVVETMgBbwsEQ9rsUt6FD5+jAQiEsEdHkTSb/qAtGb3A3PDZJsi9881YQhE5zLcVVOye0KSGUesbLBebWRi9tqqFX7oR85g8m4VsJ5L70RBsBUcp5MqtCrUijoSfL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4t6HLLrIAYfg67aSJdxrR7guBYsWk5+eo8U1yJWnGaU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j2MeOvOPk8p/5fQ/Cxjpk/9TjZ7uYQ1zz+F0RIkUUMCmT+GNZWLzLDqGpT9iQIHGSMXUCugB0ICkxN5EXHIjIITujVeEH/VFqlJ0nQL3+DMqPRHK/5M7A9Op6IYn5yPX3deHGex5LMNw0k9GGHkaqX0NmHdC1kRlhdz6TKAzZrOc0O2xOxwDonW2uR17OkJF/5lMqXK2TEbG5nj6yjcj2LrQY9P3+wn7cCNutpimru9XUXWo2eeYOylsMpNWZMMlsStBxhfMvgZD8pTbi+Q0ytmuLMNTdu7XhBTf4gAjzl/E6z2sfAWN9z5xUddrtA7BPFfvbmyVDTiWwreW8oYvKEL5ZO6rEMEyZ7n9YLGSAGrR68XHzZz62JhCsNbD8SDL1ZCRKl52kVQ/OKCGkY+XLHd9PYO56W6H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4wG3gErzRqin21zHaihlmm118Zy9DeemkVnjV/XRpng", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "874XXK9o+C7aHSMFhMx4JR69tynGvEWNeunezBMgHF0iqldpbFIc/i/LQiaZvzoWHOfyEQ+M+iPMBIA/sb9gJqE2kX0S+lqXfYNMXakQZQXBPChkGd5oFpMfAksaccBQ/KufrL6FE8704AJGPk98kWQJ5b8Vs3HL98X1UZXW+4l9Nl5y9zYob6eTMB3cUgyJnMac6uvKOWMfPb4+idf/G3BYgXTqEo635YdzfbgjJf+SC2F6Q0hVehRbnLyzZZhG2NfrRD1Pv5Jd2fp89oaTEy0wNYlcOGgqFleA1kpvvEL64KPf+LvwJ7/h8t8VXhwoP4rsy0pHKdNg95x+r7npC0+pQZYjrGVnLBMNHJvKQwbBlXpSpTdmjz3Ttrhc90OQ8D7M6Ks3HWEEMGpArNI2r/mMVPRBGwl7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4wRUqBZZoXys1MtVZRUYS7ACiPi2uaUbXy8DX1dheBo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yNp1HW9ZCChRzx/LpB3s9SemNbMY3dYAvhJ2F/6iynd/pC/dZG6CeVWGK1DzQUxvd5Hj8Gv/Uplz6b0gM3JIZ9U4AavfB4MChoiwoxKOaTyb4bZM3y46WZApY7oYoMYkkSzqY8kU+du419S1niHOw5v0MWYMkvI1pgQgbajhrR90jsmyAc2yAQb/wtM/y82ol+oTHfWZ7rXcnpRxKrQVLTjdytAUPBUE5iYXJ20hzWdw0J/TvG1zSM7GDZWHzS6fpoZdbkfM4kh8n6jtA4cqqbhSWweudo9r9kce6oWEE14QCOw+l3HBfhQkK3kGBL+7WkBCU+9VBcNJo+D5MS95b24DMbSrvnye8WJAd9ehAxu16f/rqvzA93O5bIMDLUyjeSpEpFRfpyLLQ9lERvn1Bvg0aGenX330", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4wo65FTVy4G/m1SlAw7KmwNoQ/KUi32RyY6mfWc6mos", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N2Ti3XJ7KVkoEPkJwlbrfp9QtlR6dBoJ0BH04Q9EgmldO1TzzQ+6wlQb9dxG1jVjbUHtmadwJGdIeDnn1zTYnu54j5PAEQR2PGLJOyYOK1aUt97JEqOpTAMEluLwzgH9rLUV8/I3I3dx7GjlcQP6H1PP5XpZIlS3xzwrQVT8xiC8qsFhl5JjCtlvloNsTfN0xBMq0kn8OqLojS57BYBnb9oRHxyDuRBMNrYO+lShQjSq3qobt+m4KuWbM0m9R4K91q8Lh6x0m7IBwtZ/TYJmfDyBHnGo5jJN9KF2lUXyU5o4wQJSjc8NMvEL07yiiHn/XDJGOnV/rxlLkHTWaDGKLUwhDIRXZ1+hbOWR1M6a70N6Ce0ltCu4OF/QuSCk01RltrSeN1jHsj6w2CFLMoq2z0PkYEquaHWM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4wspM1X7E9uLSwgB3z+c7+iQgjxz6c7GNLFEFumwiZ8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4cWC8NjwV8AjmZo6qG+k/7IqHV4MwWprYL6tu5SoRyNTESIqx3xQ+k4O+kHVUdAAiXQeXPQzQC7HnGMC6o+zSobVMFmKfq47RQ1BCGH430myKrptWGNufQ5N5YHpX0v4SjGuGwPJIV8+bhHxCpEPJineDdUTq9z44lcjWjWG+ndXyROxYCyGcu/UNUjTO5MYuzo/9Spw+kxGK4cxEGQF1lY8dp6oYu6P0sJ5v9gK7ZHA7aMb1YzmBMWpTecSd+XjyN6ZUqkMtIxmr8ZuRwejtNNNPVa1JE1Pn12f6hCERpzmA29zY6BDx2SS4UZIdYjd1HgJKzi4eYbdTd/8hlpQahT7BZDlUvPQElomRQGx/dmR+LDz5Ck4DYmRxk5xT4giCGNWPBKhabUclRp62PMt7AweLG2l+puv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4x8W/b3lOEUjSOpTl+hqt0VmjPPf4sWWk6Yhc/Zgs98", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MRODT+PZY7rQSrKNOSYSfbeHHN5J7bWeqf9QaGDrrO1SmMwI3MIu896C175BkOCZoNLd22U0SvRhjteIzmH3Eb2Piiv6tF/+cxuiVKz2SNYXPfKVctida7rklOZaKieh637EHQ43E7zoPcy3fI6iV5bHiYWhhZaf4EK8B6lN18iQGCROvN6pWp768zufVKzFD+17onpbdQdHqNQ3rvYd1Tyb6JFMAYwcY9FOFihCbkWKq+BfcjWaxqB6K667b3r2bhv7dXjfHj7eaksZbNHXkdjp/IWT9yiv4cff4sIPf/THIsRYJ7gU0Wx7pyJWIeqOMcqD/kghiA870E56ItFIlz60y2GW/xJ78Jk9rEvbdwranlC7IXIIGTGGcBzM+JSzZr6c720/1S3djQ+JCCVG58wrP/lXv+4w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4xhIgr29LPM7YTsbdxiYCBTpg6mUm0hfqY9qxG6GC+c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iZVckDYbBgwYJs80ctiOExk3y+wMl5UKbAl4F4JTrtodaPPBjaC02K4aHdZcyxBeoIY7IgDQF1gb5Got+Na1uvUYg0lf98lQR53s3kHu0BvX4QlOGCAyggutSKHOSuy+57Q53YHuurB5L0mXneiLDDRQit9/vI55TeplG6ue+QfAx2PCBREkYmBYoH0GbjMz4IDwijFvbDeeLdDKhs5hvH35WThbvlc93l5gGJxIxjDmIf61xqonwNd06xjJ4QpIZnZM1xv0LoBsMZ+5jz+Q53ZZf3XmSX8zEpzdS5ua4CkUjKPY0lAmubabaHCA/GPczv7ocBFgEK9Y8H3yv1nhpAZgK/EPhrBy4TRn2A27SfsCbJ5pwO5YBY/wmVKjgxC9kNcOha6IqviJdEqSj6RI3SAp2Kbv8KUa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "4zPazPNJyPen5e0db6lr2+Y2RILyWIDZlktry/nHLwE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ki3OGoMAc/khjBd4PX9z/Ad26IMTnOOSTiRmrEgtF43MBsoNMxlpC8cWYfyGITXVLQsyfpXdw88sNY4Vt3+cdVyDjwvzUJgSIo3gyNod74u7cYi05H4ooIhRidhXVbB7Cn73rn2cSUpjNRask5ulpszryiOHC8w1ROzifLwG9Tvntd5Wb6KRB204eA1xXwxCHORGn6bFyMMn4oz8yPf09tXpMx22B+tCLZEKMgX15Eyc3B9ifpyJMmnsBo3CxKJ7bbjXheL+lCv2KBI02I9TrU8ZWA9ddwfPu/iWtP3rIKc0e/t1he0Rx1AlHva9pDkxXq784ClvAOU6xLNUmnnQo9Ntsd6MGciYMVOXt+358bhrJi8kFXo7Rb6ePrTiFbQ0wpRzibmgG73CPGgWFnu35aoUaLOBStx2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5+1pVb6PCj5TJfKU/LbRaXX8PguE4U7/KjzUsNGdpSw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uXVkk5iTxaR4V3ioZZpVaGvREKtX+VqJs4arR/R2XZ0Af4yI3UNnOX/CNf8f7L6jj7ou/4feD1yPYtm4yx2/7LVhEcbJxZZdoecH8upT65By4fxkLOq/sPx6TRgKd5KNqOmZPb2N5Gi5yHYoXQlRcj9pvA3xNxQhj/TEzg3U1pMaDUTUUrWqgzOiRnmsp9hiujCHxkFhbMGSS4iZuAISrkWmAVGlgIZyK9r0lBw4khb80McFZLYZPyfmqNr7LQTlmD3CR0MRZRi4l+jBWUQPbvXtNijvOJktjfssXNoxPm5RAbNA/nBkHLqEELc3/8NeF3LcVezIk3b/mu51ZS8NQ3xeBXNbvPPnCL3ol+K3BLW6Bi/rCubIlL+7ONfFJgnp7x/xAN2SW/FgVYnSgbXlM+vNYf296uE8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5/+aVlxkaIkRO/n5k/z9pM2XEOaXI1QGTZ7SfWptCCs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Lh2DeDP+rcb8/mB4yC50fZULgZHtaWb8vUfKvCe5VJKl1DVddYRzm/vN8eukZCUDEBdC07JLIrfCHqTzOrOeW3GqaILkTeIIniplvovKH55IrCLBQnl/zOBN2qiuY0xAlDqYnN3mHICfeVHE+Try1bCYAc8L+G4aE+hwhrF2Rc93W6/J47nRp4Wdht8XTGP9exE0m/Kwrm7gigmV+nWCLIcKdNohwiYJ6ZpaSZ4xP1Ml+Xh1rZPNJBlvObE+8QDEnD/LcJLh3mViHKzpiWsWOqon/vKQJmui7iM623/JP8O7VO+ARQdyU49iTixk+UWQWgA1bkt3nbNJfumRmuylyH9nKtYb5UC3Wu+YILdm2SP4IusLXk/zj7qNDlsN4L1yW7pDFOMRHJVlWGSzvhaXauCk2ogrB3FO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5/7ER09jjDmNc8Piu1dcWT73iE8DRmhOvxYMAg4Y7Ok", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "suLHyCvs0a2yzDsMmNJHVLZ/+EPAaKnvhqCHvfLaOtO9JV/V6Tpfivm8z05070H/MjacriQg0vDsnmaw/Phv5guIJZFgH8/0SmwcqHvpLI9MYrZ4uHtQku4URPWo+1VVgCdoJgub6yOPf4Ieoq4k7CMYFe9ttKJlZE374uIKUiGGLw3VuVxxsFUfNQpkQhicWzZed9tl3GIor+Jv6n+wl0qCu333itBWmwSuY/N84sYn6rfvROERC6uUg56KUMwtraWbj80CO3FveXlqV2Rdze52i7GcrglAlrw7LlkIEozv7hEsP8iBpFnZhzJffaiQ8R0Xe5mLjB8EqA4v0LGZ7Yr1cQBsyvFTkY3cmdvleydsaFfo6GP8IvchHSita14B3p1eqfLHU/zyxh9zxKlfeQpmq+5Wt9o1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5/LoLrFvppNs/rtLSKG/oUNtvmYPXVIMn5mExRUw1dU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aeFJjyifhhpdP4e0IlWvgAalAUwxpCpFT6fnx3l6wHXLbTyq1du5w0y3E1PmSOgw0hq0qIITCMft/ORJevdI24M5dxacffxrixJkcL3uQpj9jNUz+SRqg9blR7kCixpmFT6df2WKFvoKy6TNI02FtUOrqPwyfCRZnr22lokpqMbuSVM2en4lkx81lLbSBchfryDU5NwjMYBais4CVj1clhg0R0Xu9hJjgzHGjZmALK5vv5Td53CR/5+/rLboHepkitMf3605qn+Z6fz+q2cGk7ecBE5ku4+8vNNZIUZ46NHrC8Iq58/b2sWa1R06KbGskCcoVAJURbrcZQ/mzPuZekE9ugeAMrFpmsI4DrAtVZb0uTtl2BVjLO+JAiaZLmw+j/leNbkfMqcLqPkvUlk4i1hEsrO57wQ0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "50CSSV/cm4qSB/qd58YLP4qQ8sVzmOzV7fAyg4DjOlk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EXmAezSHyjnAliSmWkDj4DKo75/Y+1tIlAUmbObQGsRcR7gs+VOiLJ12NjXwNMvTDIe5CXRCCBs4un6rDEJxkV3KUHrpbb7Q+sRHNsLGqjNE684Jycnq1BOzmRN3OHVf2weasp8B6TnFTgFUH4s6W29qnV2cRhq6YCTnYw5wNTdOT+ukP9MOJWx1nYRBLoaknvFsdB+c3n06R7mQlLxm65aTHlhsydFWEFnGgPaoHqUqJiliskDNRLO4uO3ooTBv7qsXCKficQDEGFZ1ll9Maay84kVox7FEd44BdwFs1SzMyPjUzaTyBNBrIvoQd2iKAHtQB67QY9KRdIafHhqXXgHMUsA1pyXF8yKNegF5U2kBYlEOeLFZO1DZ371vzz+kRTvM5vY5u19QGzMr7I9R77ajQTFZqJ/F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "50n1RUn61ypUwf7DbsSqClelL6k2VDX4NsqkSVKNLE4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xcmS4O93lnn+35M0DlamrRQB1ooKxcycKNstC3l+bUcy6/aucNBifrp+86TyVIvEtAsB0xJAtYUJw+aSfgXeAVJDq2Zktwpj/a9OOFaHDmC4zG3OIruL1YeGGNy/IQHE3LaPWXee/Abet2imMskgFodP9dI5FSINQniJKE0Ij2US1kI7T2wkmgALcaURp5VGDh+gU4Trm+LQf7LKSN978luQ7CKQxk79O5yk3xjbRzQp7MgLfH05p1MAaNZ4LQdib+emLi3ttPYoG5pwVnVftMo9El9xwNOkn5j7xlYf6fOdF5/BjYB/djn5GOXjC5AuvSEKjDqISEmTJyoK7hcetJarL3mais+PcdIvlkvscrB8xPA7/RAudyzA70+VEjmDaY0Zkpbc4DnzZ3bK12zRiUkBTZPhUjrD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "52LHSsMqh05UFUe42W+VBzOjjYGJ3r6KxsXyhyhuDJI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bX9eOyUEaZp8Pu9fzBOh+0/BXYH+Cb7hYAvf6WO9uCJm7HZPuBuG5TvOpGE4qPv0RRYqQf6hD5xOGE2Evp6s6qy3W8GDnCOX8Kh7cNyKb3MUwW3nS7AVksLDwpgxK0z0Vt/UT7QtnslDjGiCFwo4Q88ooBUdrxHVxWagYQYlMJBL1UeIoMFhj/xVZat2Zsbe8g96CZLrsVF2YN2/iFJHnPdyWBLSBz1Hl29t0QpspCnxst+Uz/+DTYFDo3iGzUuqy2wglByzROVhyg4AtMeKUueFeqtMdIqdlad4Yp6ifC/8GBy3gpqgFX7MgScE3R77Cgz4jLyTBX3ZfQqMNl9DZHTi5eCPoT7qksKjrX/UOtjMQoCMRUHJHsK3JM3U+N9lj9zDYUoBA8eqFpF7RoQoEtReQtJhuplD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "53e1/IqAjja5HVKBVTGm6IPlGHlMxggLM9x88gtbCPs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VW8wTt3O2rPTZDaD06Xdtta45JCgJt3QwMIEjEHUb2S6H7fBSMfOQliCmZvPQi7vXJ4sh7ln06MFqCnIYLq10wsW76YW8fv81FVkJ7kEo9ypGbkQ3cmmoEx/HDax0bAVY1K5JsBmiUd7WTdXH2hQK5se/WW2pSQ8EUMQyUIUxhhZbjzCIUk7IPQzzVHbKgrhPTr3p58ScnMGNLzyz90/9PJwky9lxr/VMVrPyRRqSVm7hseSN8wI8WnIFm4YynM3GLybi+5m7901nPUfWAbieWVNKPcdq4GJBJ3xKrEGcLlL1wUSOBjADejnOdFOVdeyavVfVhkDudrc82GoqQLnR4/e1EmDgtW5f7C3f8qWvBTgCRYyyxqwgd4iG6WZ09A+LWhoE64ZeQ+q2I8X2v3bAiXm/nzFf4ZX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "54Da0I2yPvXoW5kqzquhbYKts8fJlYYS2cLwzrmtbKo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UU4YfHaQ4pNj6CDYKMD9pTa/tegJ5gmukskMpZd9A2YND3UeDPfjAqoX34+yCPC80Ue9KV9ZEZ8S0hexu0530t5XF7rQNmRVfO3GW0vKkAXB0LSmd5mdnNr2QcEXh5IZpYDlcYnUUAeJx5vYIduu3kgPRtInZMfi7lc6EPKS6wjqk8KEIC2aFHXwtSmSY4QwNwwK1FZ1HhT0nXL7ntTODu/P3XLE7J7duRxEHzQQ/HqMmUMIpqD5fAGW2h/XwcogKdLeo4YOE4F2PRuJWDA/yTqb2pnYYedxAMUzGgeAPCiiybkVMGd7DTqBxo1piR1ydhJ9ZdbZyegQXb1St1UIr473WMhkmVTZDxoKAa+7t3Wd+nXYA/jb8MuJU4LFk2WbqxxRqthB12tzdSUF//kJzHFlO/OUhwMI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "555t0f5kXNm0Qz4fd9MYJEW052oGiOhGYyEh9PdfIVY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4ZuGcitMetwdcYK2e4LIPpKdVDNN12RDXEdAk2N4z50V+iQ7V2weN6+zmFk7Sc4j2pBOzuaQThcFxX0fOZKZSjTfTeoj2SRXTCOGQXCJbogsNgIUyXtlDDTQ3AeZ4XboLU1MCJ7H/ndzmmWrFDF2KxYJREsfGCNUi+0hKBP6PTOUb9RI+ScOZRmOBLZdVplDNp8Gy7LOBzkBoMwWv28R44dI8qtXfQNJgqWgkVaP7WyBLobDjpyw/ALlO1hxBwlFk2v40VGgR5eGb2f9h5vj3Wlun9mQjq21nB+dUj20Tcba1LFe+PU6PqVjjci6JNsEjAv/C3kXNhq2dw7f2hmmuxCsIzjImHydLVwgDFYf/0WyDlG8+J6dpmBdh6sxrEfzClLKmei85eq8BEcX4izUwTcFMoJna6sf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "55l3yBwyCuC4pgoWYWueIYp4x1UWxmSdd5o/UdRIjt8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GIcYfor5XOO9nsOJj2EuF6yVqaP8eXQwQxFiTp0KYZmmL7WldmAxCfDUzn6MDgPovKgDdDgkdPGHoLosVFSjA190AmS06qTnBMPmi+F+/wd6X1xLXu4Rac5gJQb5e+rihpORMIG2nWwQY9iJAQCmyiPnvFtxJf31EbXFwx7t7HP1uztVSH/yoPXwMUAcp8wXubqrZJjrbYO6nhCsqJCRvR6JQrSRVZ1Fa+Ywr5lUkHpDfht+KonUANT8ErCeBZsfeqRWOYr9XYcYICaLu56LMDV41rUkuTizORG7FeIbsQaU6oPNm1/omIiEWhZYKmkOBj9bDbyVvSDpuebrV4t601nOjZOiDXJ/o042eCtS9/YQzwa0dNOLTeb6zpKy+Z1X7OD0rZQuUBg5vlUEloi0ls03RE33SyT7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "57Iyyg6/VW6w/ZWwPP2QmSgYFS0Cx452xcbd0kpQpXA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NvH9yvfW7xcoT0mRAhOtCtwx4g/99R/oUbaxz+sTuOwcWcPaQTAMT8moSX0VSyodqMI39QTRNUd0AE2UIoMASfs9tJnu/vHgWpiP4WZYIh4wbTVzJRpgLogg6KZdiwoyC3IAEfiOytJmQgSSYIUePcqN84jXmyMz7WtuEmiqDAUC3XKlPGUOo40iMdPvzaklZad62bVZdDcYUt+KQ5ThoNSZ7sgs/7USbFwiWV25U5bSWP5jLwdvTmoRZ8EknS/M5sTvjULCwKw0kMOwYNNpvoq0OGdguTkdrAtiEZ7Z9W3sPU1CefyjFUqHa2r5Z9HEtXMJnQ/Y2rOkgX42FuQAPdmL+IZWCmq4iOAMDpJ+06WlfymbOJvuT14VngUWVLtd2H7xvAcNgRlCJXBZi6//iYk37T2Xazfk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "57ej2ZB31kAFmMaLxFTiHxZvIlu7b9/V0scaPU7HIw0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0nMmay1UpHYBPeMgvDIQZPeMmaW6FYJ5x5ONaSpyRI42VzbUPueV6rUU6HsXCjp6W2cMURJXDIwP3Xll5ee0z/cdW1Rmpy2Y+BYXFgE/uudBRQp/hQsoRKEcHbBAKq7Za/FURH7SHg/EhRotS1i2hYB/N3r8m8H9B9e/lI0I55r20aE/NPptXbNmGGKOvuY0+BBEmWQQCCX4VRwKh9WM9vI/PGOlJWV+GpqvHXs6GsRWX72VquB7RmNesWSUNi+xGRhh0WmmGMTeTRHeIEvD9dboVsRM1V0ITKHuGngp0QV2NBwfcrHBT5OJ7wnXJ9a98TyYFK8bikvLtiDudHuanTLOFOKDFhMogrCBCr43rbSyQNtA+ySrPbFSsJRpn85lIzUqsSyqZkqjZ+jFyUX9ddvOSbpcZTC1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "57kG6MPhsPAGI4+8urYVsXzT84axzD6tJefAywKwOtk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Kb79Gto/aeyrMT808QfPZYJSaFLZ5rFvV2icIbDHgu1bgXXPN9EOYwidthXWdxYwm84N4V0hVgz9bKw0tHKcl4IAhU7pyidQR8iDRQkQx6n6B85NEf3VwtXA8JyqtaJDV6eAfbPo3GzqYFeqVr8FnedhFbtwLAzqbmRlWdBK7l23BJlBfFzFmaqpqYwqtK+//CbyI+s+6GRk7GR77oqnmAc1+n5p+XtpHc+w1t06ftDurHUhUUZydnu3AwvDOrMmToUsdZU8aLds8At4HO9ADhMqnOeGdX8fLYykJSwfqiWaGfNPDmRLhQih+5wVbk94CEbABkdgyJrky1XUEYpFY4Bo1jMgL8FqhM4T3M8JLsYLiCqdZFMlzUuBTrQ+KpxTUps7hBH2RmuEPnBuiDtnfJW1C2HMk4aD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "57wDaahWDLEJX/LKRV/TK/kL3mJvHj157t9cSzhErV8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Bb+oir+uwsaN43dtf6Buo6d1caxq0VjyG+8FtMJ3Ebq55VCER66EKUEepGgvS3bJJ7f55MmJDdCcV0ueHWTa91hGsxDFyvjzqkrBxyFF74Y9kyKUO4+0fsJjPNMJQWuv6uqtD66k8Q4+xsdV4nq/0WPBCuVNOajZiX8BzUFw7D1zF3dNhi/jEd8t4TFDkjIL+OkvJHQcrPGAMYhqau2d5h5ZeDKgqrExkHnfiaHnsZL1tMC50RMuAS6oZXtTHN22Dzug2J0GyZt615L/6rtCOkJGNmCEdJAdMUfuJsTsJGu2hWkn5N0ZZM6ySgwuYIYA2bvf6y+LrG+Y/IimcHp3WbPkmCypcBiyU4ccBv6MQ9oCogdX9TKhJK7mPc28cjfk5tWg5lD59KtiGsbyB2ArQh4Vy4oQMwiN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "59QNkinhRiUdA4TYeqHTMaXg2VmPxfhsWyvWTGJJ4ck", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FPocoryHXjINScxA5LwXXr/lRzYjYLPDIGGENAV+8lBfcspiXTE4IVAH8LTa5cLjcLyZgwVjB+/g9D/PVVGnKTSUi+I9HhotDZ6WJLAs/4lOXzmruNak5n7RrqVTOlmlHipX/ByjcwvltCYIMY90CXIJUMrefuttNl9+T6nA437egrUSXlkfzaaOvdR7bFAF6DpSzqZGNDrRtjN9+HSp5sj9Ay0z5NEWV/aKtfAlDwAXEWjWQt1qy/THWywvuYkA8nqHwklRpYf1Q8nDU/YFma3+jmnuzPDMeqM0Ku/SzIlt38xXk12nSFv7zqbCSM2zKkZKrZLoykG44l1KiVvbxMnujfKu4EWXTshFg3J15LvSRoa1ZmM9Bdc5fjhCNjV19+jxoLzgM/lGv4f6XtiWW1E1mI4ER5x6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5BnBH8cFVvNRn2Ef9K10wG4FGWuZ3ZbrO/PxUnQQy2Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5PvCdae5wkPzzzKGsTT9Fmo4B0D9EtUk9jC5RwEV80utLnBxqsKR0wedJt7J36DMjg48pgTB1d84aaURW+Nk25UkwnZyN8ncZle5aAbytcm9wouY5VpikuDqu5K0rAkSMBPTbPAPVReLABiZtdnEvsryRRa0kxF6AWQEidBrp7E/HepORIn2BwapcoxnwmRkC7OoVqNSPF4lNQWLLNYnNTWkXIpHl8uhdN7iv+IO8XBAvTn6Hlsa18/gSGBj+B2rBxO7tNEIhbcCxO7XAsfznRBSNo/u/ecXKiyD2I+88Ch3eIHKhS61zWQ5/BrkuzISvVH/Asr9J0fimxUEjEnOjSK4+5x/D8yVrA59svS3Iy2m2BN74z0D1451CLEf03ruaCPGr4YUYChUSx15nS739lTIJEzdmUlx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5CUUGs3GvIFH69vziJwi63hdBgzm8rALuHShoQTr7rQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V3vJYAuXytHm2WecmJDgoX220VDT9tTjOk9ZpMf3MBzaV/1hLcxseeOCIGG3AriDgt/fmjAN6xzuuGUa30lrQ5M0lAzWmqYSe+RsWezbD4kuCqg1AieHNlwoyaT4WnMXt7CqBA7L36tltUK6SMC79loqE5ha/OeuqcCwmbYuy5a3R4+ZnR7OhUyOnSxIc3YCHdXgmUBqoevMgmnNZu9gjFWxDpi4E4BHW+N0K+ZZdPUF2ULYG5EZKi9VjixGDro/x9JgDjNVNx5UnLXfeD0txqVaaA4ZDYwe1DqQsglcogf/Fjp27vhx+FzTD1nAbndjvNDDNuGbcnKHsLEFvtHjy/Rk9nyqem6hkmgF3UBsgi6M0a3tskMdhciD2rOkVHiviYeY9YKRgursh7NRmp1oN2CInfwL80Jp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5D5h+dE+qS4kV/5xA3V8BXn92SvtMuIrJj4KyPGK+n4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VdxkzsAxe2ytuiHNtCE0bVvW1oTXAWwnAs1aOwzCrz4g2YhnOV+90+B+Xor731AWog69mYcqOIJcZGtA77MLOJkLunmcn+LioyxXq9tdgFATBxmk3vniiLHyo9UR/E9g7M2GH8namFC9cmOdGmPK/j0AbrS2qySskQCHD/E8FEkS1yZPB+tekWTZvXh3fPuTPubg+g5InFM22F+iF7C7ckXCdanVza82xi4Fv/qQAWJKYNWsqEh1bzp385KHGpmUw6/T7W08BG+rGEVkCEkOUN8AuNMMRYMft3zPv0fM8IvoCs70xvpcMbkbC6/QHcT6N2j1XwIrNR6+vKqhW4yYUWpI+jliu9WccheFn2PqmaTTl4Apco2mBMvb1G9He53avsOSdgN/VSeg1WGhGka2Z/YPnSYv20wE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5DTQDSZ1BDgaoMwHghsVcqjuT6D/fG6BGrgwGxX+FIE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QKsS9aXbWyLkE3YrdGf0+otndv61+HRUfr3xj8fdIVPovUqiECBQ/cbT1+5N1SomC1ws4GtFS9HXgevWo18GarIEgw6zQ/6i/+6GbFwEC7YPtv51wa3k/mrrnoM/jWb51z0h0FiEsA7bsniEdC8MLu5rAD/oVDv4VUEPhnwTODn8eFfP+Qsm1w+aRHAaV/GGuOVWOxiYw/TLku+jL4LdQphVQVWl3lsVLjy/oAljaq00e/MA8aPqwGXkbu+sARwqamRMnSQHj/l5C4/60Isl8lGnvXOKQ/prC+3eupaBiJY/GUuL8GWaLT492vpLN9AL37OSm9tP0xoNk3mgHj57WT7fbTXNea0fg4X9wjVByFvj5gzx6TlhbkHtY4J3Qw4+WVse0nwBajhnpt0g2o30ICTj0AhRhrVb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5DtlWEq2Y0Kuj1pueIDNY+vLfSixBMAPydV+3Ev0V8Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "D5o2OzJiGlmoPNU8iHfYs0B+vgM6rh9jwabpdSAfpORvA72igcBNgP6cFzXiz8XjXz/WCJC6vZrzJ9O+6wy6OYQQmKpqW36Cay0XWDeIqF1lcC0KzA/fEzLynoITZroQP2SpE0baTBRE4KZYGRCSTfDMEF2cuavv455+fGSfW5EjWse0ls1W8Ccw7mWp8GqLM+4r2P4uaF161OaCWKlGXq9iIBa6Jyjuu4L4eN/WUbIZrH13P+lYEjACjEAdNZepRn5QxfhEycYjYOja2rtg1SDtv842mU1HJGuJTXOHYgswrSALKFcjnpwejFfXYKS/jNZrvL+h5PhAzLqv7NUtXG5S2ySW1QYjTd3Xvsq/rIYw3jdH1WgcHJnVZftujq0Ri1J8fdfUCIrfg5gozHaXaCqBIhP7IAnQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5ESknLChe7KnGIbJi+eWtoAsnRpkBSioQCfg+3N8ME8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k4LGSEu/pT7nOeMKEHsL2k23hAvmKz7ZVaQWfy0fz/0QVtDt3Hi0mfTXgFO6Cy0WVQE4JxhWg3Yu7YPBUAPYwzOvuue47XrPzHwZeRQ6xnWTTMqHQyRJR1sWJJO7FMTOXf+jP8/HSvNLCHT1UGRQDzzONT5qidtuMYGUvNdGLIrqfGakW96btPbIGHxKoaDhx5aNHbtw0VgBCpUGX9LCF5ZKi9OnH/MZziJBCiWw6r8p8BRbS3SCxhwi3XX3pxfuGGfrZN9A4s15s/ra3VSrxyrj3vITNX0X9QPXDJnCCD32iUZY2dgNHIDdBKhhDOtMqDUKMO2lwLRq2HQtbRrIag6GArTnSdyWUztVwijUPdLcSPRaGRE1CA6HChIYJzyM+umv9Jzp7scJPI2VsdaEcwalfwkXi6IF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5EULz2WLPBzhSXSFWF/0SdhZ1YNf4iG9trMVDBWz7R4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UN95gU/5WMNMipNmQ3TEUO4kybmJt/vv1i5IkzyFveSgKG2t1MdWvgZQ8ILT9oiLns3bpwYByGEDVcjL7ylVeFDzJpicHECwH/S5rYvzCZ8u9It6QiCFrmJVzYbdoc0gdhY9Kg8XUXXa9u0wpdfo6d3rLUGp0K5FaaJ5WkLtD2AU8C4ZtN29T7rjEsU9+OFGuQa3VW9mWXsfrhywEtUvcrbbx2aAibZ12JxSXZ0tzg7bf/m3rCU4dO3tb1kSn0CHJBkcAYz26hdz8EUlhWLeV9S6fM7zmgMnP9jbhTCA7rREQls2MIh7V0UXffM5Ce/ApBUabp3g3bl2K4I7/r7QtolkBDd8gmGSMcK98H0v3J5OwXmZJWXqHF577TYkmO/Df8bzW+mCCGaPu0a2VoHtePoH9hVjYJvn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5EnLJTk5PO8Yv1hAN1lBfTNEAOlERMWfpY3l2AsiiT4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BfH5H4JFrlNoYzFbkg8VY0JJhwvXiXhnPRTfnjKKx4siWKu58NAyZ7jf4hRALzSINWOH3HZlR5W1sAVG8v2M7ishuPAFXlMewDu2TxGJSIKD2IYYg/fiMxwT1x9mnjGIqQOWBTN4pQITZl+lx6bt+PIQObHeoiKsuFVRfvZif9lNlSRU9ZJKwRIRC4Ys72IZpnzCM84zr4fFca0c1RWWCNCZSGaU9uXJ00qiYzbxGcj/QsKF3zKawSLDG+HuWm2ABtQSkjIP1+0HNGCAbqpeogA/evao66hTcWZ93GVkE/77Gu4P3nQlRKY5PJrk0n2bPRuV6YxUbZKHp0N3D97ToxdzK4OLvabtxjSo8b/tcEOqpkVVsWlg5GLevdHaUKwepSFTC/gW4Om117OXcCI1RZYSeNX6QIvV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5EsKzThv9c2NwgqVNzVEKNmBoAIs6Dwv3y1eUVXtFNw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AOlU0vrbxeWER81maJRCqTCICQp2bkXz+VLZ0JTYfIZV6Q5FMvocI9ns5EWgoRl6w9H2oaLii+Ls2y4gdyb2bpG034fzXClKIcs09FjSle6/gMhaH1s+LZMnEwRuFT8A0B4lIAbWTLTUxdvCWrVeYAFkcno2PVwHaSvFn3jCyeEutQVSiuYum/PVwr3WmDEte4NYMD5ScCAX/4zHKju/rdZMu1tgFNQs5Qsk+PgE7A4RaxBXHy8vtKrKZKz6aafiRw3g9y4Az0NbZOcqbHwnygEfHQbWhoJMsXOLM7AcLfRyeq84KbbRcrrj1/5cc+Ot8F7KXvPG1L9GkhC+lJYDWpJQ/ute4fDrWK7S4n8TDtxUUwpLxpv6sWsfXi4333atXa6Q4WUJAPvSrNZBto4HgUAFwfp23dty", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5FGATO4Dtu0PUeZC8fe7eMApZYaniKIuPvY6pK7EX0c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GIYcUxGiLOJ9GPP0nA6TMQMNKHYD8mcN1ifACfQXWI297U7fMKSCOv8xlLzxiLa73GpeE6U1b/eLjz825Xmh5uwBazutbhDBEo/cyQbT4tWFWn15hRW1N9UsKuze+g8dnoFvkD0wb03vZMhPdSlhwK1/UmzdSQ/UNCuLWNtShkAv+Dz04oE4WClybj+nTMK1+1X7zNPtA3ICLmMm365UugyE7rue40Yv1SIz9RamUpQA8wBISj5cRLe7h5zPJHoG2xBVi2ExSeWP/Vc9n8L7FXHZnx4toy+KT+uPla9Bny+cfJvsSBaiADVHIggKGXrJAVNZ6rSi6+fNpmTQDqlbTpGUw6GUtM7tuJglie2u1+/ae1vANDpDZZuR1o/LYJ49Xsv6xdKXE85pKBFNTMGxQjIWNL0INz4Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5FHETM/n7y31rOjPVsHwdtymD97Z5s59lHOaEvjxq+o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4nuXi6tIUUASeRPgPomq3x2YkN16iG3XR1h9zTw+wcdB1vHvk+tLer/4U/0jCkaghOkBvZVObPW1cz2qxzSiXDyDmb6Q+d04QSMVlJfqpBYd0nSoAhI8Fb6KdVDrH2PpECO5rWrt21cbQrbWd0gWvYcAdYT+UDfN1b3Xd8NZXsu4y8/PTXECBZmhjInn4EGxbtZFJFDCVQ92Im27eo5v7aQlNdNqpLZS55pleVcraezAQo4eIIR5/d+KN47aXt22yd6jVX1m+94d1sMWwQMk6V5e3rAWPGVY6nndeAkWq7iSRNnqutVo8mjoZ5d4gbG7FLKc36MvxhFlS2HMurDeuRkCCDB0FLl93knFkPfdoVzIUP9ZI4Fgt7MgXOLUTA4O2R9L/2WVvdwdITb9V7jcSGutkmwL2sDu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5FKsGh+1ZZoZgUTmBpFUoXD0o3P9MAcxQrtLM9FgfJI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ETlf3qKNqjohmygUAg9n22HZ2nYzORrXbIHKZoI2AxncAOPjAiJk8vdaxJ69UMhi7yNEHMprI4sjvjt+ZzoMKZoPfh+6jimuBjpadNbOSDAlBNPdI/0y+ru5cO2VOJgdqkAF7Fr1ukMHDIegm2SpLU+WERyngs/gboHGXmUxqm23mU7bABiAUKxUbvTHIU0BPVTdtN3Va/hfjR+Z7lsSI9sqOTUAZ1tSdfOBaLygBl1Du/jQ+d+7eSewr3y5dvUNjsG4Kz49nvvben/eomsmg+S4ciYSPOddAnwWz+6a0KbUDRx7BJgcj8DpFNZZeQi8QDtDD0U9dE5n45ejfJsYzGTPCOLtkFWCA3RCQUkw93wvJhhtL15R36pEcJUxfG59Ea+N6Rxq/agYbjgpuKsk09kSxr2RKPdv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5FMjKg38EWuQpddaZzuZUOZBQ8PgYk+RlCBjAEwKQaA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xO16w3wF0+iq6UT2R0HZ+5i4KZG19ExiZwkYZ4EUG/IfzLdZI3zOs7IgG0sJI7LP0kXFucvMjSy2Ku+v43/+Gu6JUpsbUF91v63+ctLQIwb6aDvG9m/Y0QIgvO9LIW6bmY6a/VSo8MhFC+PYyPTRtNm33o1C5u81tuUpXlRGG5UDB1Sg73z+RVh7v78e9U3QA4ZNFIxIVvrE48zQRQmlHHDuVsaZsUCAMLTcRQ0sApjpdcU+NNc0ldSdlWx99G87K/Jk+J6UZ4Z2yt2oYX2FLKAcX/21NulCMLf5j0/ijrpIY9THZmthUWqQgyjtFkMiR+2xOERmp4x1QC9cNUIh1vsmq5WkyzdjTiuQjUn70ZxBIlMaQp/58QXlt7MLQ7VKyxbEjPXgR8/FkfH8azECtCVEQwiU6EN0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5FtwByXT9IxJRz4UGW4ezHiklV8RY0w0ltTjWMmSkSA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dVw7fDgpqTuBfjec91pYRfXpZwSi7+hsNHTGwg9x7bjLgCD0XlqrV9VEupvlpUt35PxwuI0Ks5TSJu+mHeETkwKNiIwuFr6rt8JaH4toPkeZI3x6oUdBdSBwx5w3eFDln6IuEhGNMbI1zVVRqzmeaTykh1n5icbs02mlarSFbs9dtcrOi8X/0CU6pSi3MpF4yNUBNh6/zaNl5Kf/knoekHVdlU7xqWjLXWgXib9udNLoY7Y4CoAJBHfR5Nch1viDjdFddzYPB4Z3uWG7c6B8za+4urVqiFI6YhIdUx5REkC7TtPi6702O9x+emRDNlWb83oVT71MGBZPo8xC+HW7BTH9YqDWZwciXksauKMVXbOI4C6Jyg25bGRAe45pXBRFljBJTWCb+f5YYsU4wF6R3TYnLMbnGqvY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5GWjU/x1vDtPuaHkQmbgwBxFT/BJ2PJWXoIW4b6OIHY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JxH4QeT9cZ1ebh4ajn8ZtANQr49avFGI0Qn/piIqD1opxprlkw+R+2r0qFU2MjzuDvyWL7D+j3xFPmTPWHxUZSGxHGHlwHcDJHKNR35ZCd9ARjrWwaJsUBxq8QN5z/n+qg8614rxsNV1yGzM3Qe0wQguuXXsvLnzzdfRmOKWuo5apk7QZSOUgvZr1s1KbTjMt0gOsViFHFJlzQkCoM6SaFHTrLZJUIRHzabzWZ9TdjFZReKzlitX0Drpip/WatyE92+/CnZWmuc3okW7r1JC4ZANgOTp3YJIL9UABG1mrcBk8vKEzl0UzR354yfLm/SmjMso82QISv6St0AZU2fl2uojHI44UkrnI65KDnud8KVwUtG0em8dK3xgtmhr3ZPTPq3PVtFsCnaN5t5W76FNPwo9idjiUIRD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5J56ocLSNXN+30fGFIRdbh4gANbUrbqPh98ooVAf2v4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BwHRmojCGrD0mXlFYNWAmpCz0p4cqi7h8xduno9pLiNsMGbFP420ZQG9WH9+ROOCjL08TsZrP2iRXN1gcPyteZ3rjqFbcBTr1d8cCzdITHmcHDdEUYz2enkIaMdvXio4W+6HFqrNjrfddne3L/bh311Amef9wdYtzImX7AMS6u5OAyBnlEw+4QRfV7npyMW7aPgiJkx4+KpcYUM4kc0+qEoVizBiZ04i5k7Ycub81jBwJ1Xy9YAeNl2ry/a/B/CzH28WtSLzXsGnngTvyWCsqRnwfxmpi6HLD+asiDgDaJpWRCWijXO9e+T55ox0rck0mbAqaOOKlyjgnrzpdBf1NbKKUQZOQoMoLuneUdLj59X3g052rypEFZM4MgJq+e6f6CBzAkdM63vo+UFupJ8qx9dQtMDs4P/N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5NIz65bO2ZZTgYwijX9Db8/0MzWmassLnV0/yeG7O6Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LSPhMj0DgIjdIN36xBRFopNroJYmn8dButQrqWAWUlxzVgoZaUwyb1k17SvmLNSMRdCf59oOI1ebyMZtiMwthiMNeDeB6Zu6YhotCgI95Uwnb5AFXvLQhz6ZVER6FhZzqUnQ30mWpbjvP1K+/yX2JThVNz1xD/ah3/sefFOufSHfQRbTfZcu+MMeeGX+qy6N3E66u/tjL4e3J3H02O76rDD9v/jq1S2jYTcw6ZSt5w9wqCQf3BnFLvsoP/5aQ8oiGo/FmDKeIK7Zm/d8S3ut0KFU2usDG6R8+HirCxPp/YJMuUnB3/QseYQPRF0ORxS949p8iakBd0K7im16t5iXQO/2A42E/EB/XnW1G3t/1k24Dud1zKASdm2Edthu+WukvHbscn4HVeIHttuMy4DcJgRMo7F0zGYe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5O2duOZvT+17N/2/dqHKcMDIZ6xJArtrmrIeAT7Ba0U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ACydmKvVzu4SV8isrtW5MZ469gJZARVNs0ojKFADOBMdhZ4VGLxmUPbUrG2bPT3hWcgiqyfijBhxm9a4VXVtnj8/TO0iDceZ/DaeQ/EjtbD9IfWUL6bnTrmaY8tC2AKJFE20OGBQ8QBs38l5pk0rjnABR7GKPN91Vi04i6s6+9tPvlvbzEhjNawZeW07jA0govYJQhQ2N7gqIAqTn51CZO0LVZC1Qr2y7H9aEKRO0M787N6O4t3jXyttgAsk05uZDe0BuokSO5z1dy38IfW4wpf3X0gOsIOEciligXtUHcx5pnUmv8rbkf0Ill+CGwx6FUern6BKECADt5yhoT0KB/f21oAodxqcHOjYXbGhTUJ3K+hO1CF5ubUoG01c+Ii8nVwWgun0DmCreXx99essYiL/zk7cMiuo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5O62nZkhX7GqUt2deVER9awhttifMUKgRhWlBusMj0I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2A1lwHLW++tpWF2asTGZzR+A6aYtYOk14O3v12EaPY95Py0dnXJU/GBM3PU6a18iYZRfEsTj5HiOR7zOQHBtcZYoscYyB8FiXggvZEdXEP3TFWUbhm0G9TUlJkCiabWnW/UBQOc4h6kHbDjy609+kbv+U8GypUVZh81tcv+JfWFfNJiA/S/rdRbmKEXm31UwzxTx8/d9kKVlPQ/xx+B6yKWrpqV7PZmGc3rJNxyMYJRQi7YdUOHSScNt27w+AxqZ/u6x6+PkwdlPlq9jigUgBo5Gzq4jeQvlTFEWlBxDgrVkj9/LKwt2/hOB/tGpg56BqucQWcjplJN2GHUpiBitshdg2TrAxV03VaGlxADq1SeBM9nLo/gd9q7xHlsPjN1MUTWoPGyBkL8T3nqfAI0SmXRqxSVEmnMr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5ORTKd3DdVUT56KqWThnK6AW2X8l1BlbxidVMikXSO8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y5jRm3lbcJfekVs6loR7lCoqeBnjz0UYPaMVN0ikEpXFt8WopLzPmWF9uos1XmyX7oBT9e1pxTTxha7kbWTWOjvBfbVx2wC7tnrWGstOa2lRUTPOsWLZlXUkgXme6a33Ax9Dq8XxZgBuLi6KGVEw15IGPJCSx4jJDO5l924aIKxs+3YG5+/8N3AYjtGuZJ8FZ3AdZSUIBb2gwXGdzh9mzG+KWyQQgLFqYGRDAxWmGCREgRqlHWWFPDBfsNdZ8vRZrU7EvbxAqgbAWKrx6WjN/nRS2HwVWmtCfVQiBZeyVhbDjJNqYLCgsMUxuEDwg6Nb1J9khpffmeU2TG1jPpUXgW0qZ+8H4VFVXxfnzwf5BSxP6tHrcjT9Vtlpl76b/prrOKB1XtrFl9smBm4jOWkO7Urd77P2XSrW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5PA8ZJs7UKHpmlxxCsTAQVxr+41+2MKzDplweTDONME", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rYIig/kKvhf5VI5VB43rCbFshcXdRwu0JK4Y6O5YSXVQbfKXSgsz23ICv2UzP3mYdU5aAL06jbR0msUciGbsLed2hnozTe23+LeM85YfVx42tEBXFZBPLFortlIjvCn8+ly+P3T8Ser8bF0tBUIbakAokHTrlCT7Yu0VhqgRXorpyAKBcb1IIaoUpV3R9t/iSPk0EmcaJ+SpFiYbNQ4cuGKFvZFTBen38LRq1VAQCtnYyEytfjsVuyQW0ZDT5PfwwI75VtykBf5hZJbeMoKzDsZHztoaDTxDg2N3lxwQ/2c7a2rtUMyjiiJbADmCMAcUJpSYB4avYUuZo7ybaMR7mzFjpJgL7sTK3Pz0Nf/A0wTrO+0nP5qK4JbSptngIXW86M9gLaYG0+TvpgsUax692V+FVVLtaFz/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5PMldHINzmDyf8/T+OXtGTGsr1rpXUjgrssNg3uDlh8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ni8o7KubDe5trjpzgjtAvC8FFoVNJs92xqlvTfcJDTiE0hIsLOZrnWqoYuuwE1ho49x/BOg0oGDgX2NmFXqLZNyWjyjKv5lTV45L9u4DNoZRnTIYsli7Qp/sduYQaydW/SF5gkYfN4dAHY4PXGsCsXAuxxwiUbBGCMEDV7zpD7Y6XRR6/EuO5r25N0ukW7Xr43dMrlX1PxXCRavz/pN43MEXj21M0zFH9H55LS/K39GSLbMkCT9iQbyEPYerNs6kZtda/7/ewtJ95ORwkOvfhlOOMQ8Pg3NN2CPyDGX/mu4gpV+cJ2LbNmR6YnoflUC7GdvdKUTs5XIJNoXuDjWgBOLfEfqfdEHXnQ+0q56HDibcUre2WiAnR8A4UkdzufivbC9Rrj/dCDDZnrq34b/Y6TdzpMVeIIUK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5QK0sytilimAQpYoWwL9e2xcJGj+bCXPodn5k9EVqwA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5DXAdSoRSQQLAGuAnrU3VPudjfTXRfeMUQpKqN/IkytaWQuAOU6RCV7zzevxwpNEC70y8luQdn+x/boTAU2BalYVo6Fx7KdqZEky8g+HtHFQGVlh4zHVGvDG9xLrE9r8C/hXCXmFtnXYWNn1NwEGpcnPOsnvRcpn8Km2s2jkl2KC+dR3Vs2hFbQjjPQwCX3+6dXQpeZ6KVNN1q1z0PyVt1HcGlLeovXfNdQ3pePitfE4xWGE7cFZ1a8bsv3AwvbEmms7226j+q/5ukiblFCmfMxb2eTdxFxU0z0X8/iNoaa7p17lijafaeODkWww70KykbzOP4VpJIYXa3LrAx22fGS6Nd6fUryRMiMOPoWTS/eCZ2Qbj+8IaQOnkuDNygsYa57N2Dc10uaNREoQh+SX5dDG3Za3UP+Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5Rn9iUFqRm4ahaXuUWQBcpvk20cx9kOhoRhmps9z/gM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "irHfIxKpUWs/ZTx0LjeAoI58ydXTBeUvtrOVvJJSH555nKXqgX1RiBUW9sUOlTXofq2iJHBTH+w/ygLIOkTUYLa1e7lwgs2BaVJqb8zQfJZewfLxSgUXdTgwhzPFqd+K3cflLntZLj1XC2jqGrcg8c06G3FxZNPtmI5RtT0pPRSOPl8rvRZvj+DhrjrtlFoJzc3zRUMF2cqUvzc+Ryauw20O9pLMZTzG0uT5oZAoq/Zkh52AqSBMWu04qQgAbbc3NxO3IFy/zh+2QHlut4ow2HJDlPOqvGY/DS7rVw120xhpPQXubZD5Kf27cwYWwPDqaOfEBDlie7K/HCW49LbZTQliF2bryQT9pFy989AtQ7YM2eMz9W80tDfDr5hP2jn7ud+aRRPuqS0sbf8G3+EUNVocQeLQDnKV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5SVnW59Oax5btL9uMISFQrq0pEDYsQaT4Nwiu91nCVs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qFN6Tz/NTKA7csStg/SXn9wekJn0a2xD18WBzPxjl6xh4rKkZoLP+2rqE0kv2C4S0UOxLcUtNH+Lsi1hYccIpbypwXWP5rmHOGz2aTqONllDUM6xdnGqXdtO6kyMoiHaLgw9+R7Owu03/biJ3lE/YEZWdUgv48MMl8Q5RUS55dGEUdpHru0N+Ve2j9dUcYDx57peO0xHHUxAPrSyycYBKSSr7w6JRdEMMCDuHXRchhuFOOQT+PwQCeo7C4LRoyVBvZ8e0edKRilby80y1Z6Y/NW5ut4GAg0ugALSpJaiTQeCsyE4ENCsv5hCRe4RI+/W8pAQXWCcSFo1KNxaGH7i68nsOb/IWZDhv2VlS1JVdXY9sI7cYxf1sFXwPZMLSMBGP7FdELYMc5AdN0wtjaCj4m5D7Pgf3bcr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5ScrFsOuyGppe4D94d+J6qtVImlpWbxBQwpoae4Eodg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2Yd8VEp6EqUR4TMmZXow1t5OpT5MgxiZWKQs/5a+eJSFzJhfQ1CZFPSyxBS8QH8MxyNqla0AeKUOJYY24Uli6aQ9YCMfednmIAQivAeYB2dWdfLgqqbjDv6T8XJTHcXdsQP6Kspp5o3tWrVDZFxgKSwTQXpMi/gQTW2JkDe4UC18VkodOACDKK95PSO3Rgqr93Stfhmo7Eccxaxsy+qiXhghUml8FovBU/0H7N9Q6RUmTZBqUNpJridBO4BVlfdctyoi8fyyBkagEi5ljRZWcMgLDlZvub48sTng7mT1OOL0i25FH3hvdE9dY758iSaUWos+6b/7F381pG02SyVBDj2aFuR7MITFUOFW854l4jnvI40qajL5zA9RVcyybmEAjMXrRK6QtSrty2vm8S+QVddT8szzLwzd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5ThUraPJK/WpjtwR27GjfCG3I50DxnBUQfPytGBgWw8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rVvFOqNnTSM/R/LXW8fUkeF/1POaACJiwCekgQz1QWjlJz1ilAUgsQvbQo0J8/B/spHxqjfN6XlQjmSg+dlMJKL478Dta7eFGDHYx+wdyNO3U7KH2tLWzOxliDYeJIHSo9by+sj1PdkDnPJwG/gxg0bVOKQX/tEvUFqNJQovSFjlBP/UOQ9gu6PQ5DaWtajVqp3DPp0ukk6cs1yzMn24Nc9g5ChzeUHWdEbas7qsYZJJ0x8M/MUe2ueNWCut1VuHNH41ESeF9PV+hrmQxVJfBzgnpq2HSWsEaPRyPA5pklylXLvI6xPSD2fa1IDUf1xy/oPmhtuhJVC7HPF7sy9mSSFq+n2WKWVJGX5f2Lc4x2F630nBOCOMxdHghsQq04HvkKWm1xur1GhWeyOQX1ZqapOwtkOyEvHg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5UlEWKgwTnVTYMDJLsHU5Qx4sAxI4Sz4/GcE93faiOA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TcAyrYeyEuX3nkLCgQWyhiM7m1jpUJMzaOBn6Qi7wnVfCjXq0QPY95yUISdL1xnsDuOmaLR8vvZPRAkro7AvUSX6rb1qNjG/iDrVtPU/Me5aHm6Bvlv0zh2iOmedNRDV4/tOKPHau0LoYX/f/pWRZ9VyorMJ3hAW89bntLAmms5lN9lkp9reyQzsKtILaHCCrsx6qOEVdHxOAe+Ceqc8HTX3cpy2G63AxWkSYFHzvBL4/g/GENcrpATpjR+6TY5y+s5MnzsQl2vS17vs+fezF5t/y2czRO+U5tGzrsGoDe7G0PhtTg+FAdza8vpVnLt32eCvhcoZIfeh68C4b3x8zQlDN++x1efMUb6C2TqUgD/Mujd2bNReXwahJzrMNNz0WezbAkhPRTOjYGT4jUvKymbGWF4ZFgga", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5VXPbiU2AB3o2gaXwtkw5rTTxEhcZR3WmbZBTJu2qpo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yP7WLL8kSl3+//xm4M5bZx/rf3e9c63BjdQp7ZLH/RpmTkh2omFPxr97TWayj2cH1cnQ2MUQnurnDPvGXMsY6zfzAsn5du+TvHPVRAO7YGw8Yo6V7UruHjSQ2HhlgXpe+xxQYlNGn3wLhTikV36mOabsJzp1qo5voLryYW3NT5bCaTmcqcqHxzyC7UmauYYcV0kPkJ3Bh+bT/qLAWF/CmR8kcbeUmufNjRJXoUMj0Tq6LbJ2YnoYmAPIjIyq3l9M+13v8jUleO7OPwEZqIlHuJw5o3vmzq5msYUNpyzRxPGrZEpyi2VES+AXCeapFMO4cYwZRKq0Xq9rSMea63hTcdnI5NOKJ9rtbyBtXP/MLTDZb3nPzHPQW9WRPJVJjQpwFwuOr8PwwNepih3pcRPkqbh2Cl7tQPUk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5W2YYUIvoDEWEzEywFT5zJVQwMpvDRwU/OAz5iYpKA4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e4wZLqYoROe8sTxN8SkP5WTEci5axunPN5Vh5QxxxLyCy3oMv+ywTHALPbD+z68nzzeND+m/I24bZ/CuKAzFC/mHsIAR5OUq9itPaXh1OkqaRG6AZdXYnTVep14DpTgb8x1ouu1eDZmI5Tx7esJ5RQQ5aqqmMe9q3wrtbywD2R4hCr4GH9QJZgsrgtlhAaN4/4AGZfH1SJdHLoNSgEDyDIGc6W+7TJfucdrYwwE8nd5N96neV7dwImLBDddxKxELtE1rundokpVbmQm9fDLHdTDn9xp1WfiLyW+71H0bMTRm15v6xj8H2/xvJ7ZAxHY0xxP6dfy30kc0ZmFEYGjraogiUhEAprX+4edGbbhYcA0+eyAvyP86HuYC6/YKQ8nFgKyx1sXwC4PdwS8QVuQ8INNYDpdBYW1u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5WUhA/Ugr80/jhoh4aypyM7nZLDwqFs177BbljVvxAU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QaAwao6Yvu2OPWFaW0+aZE+bsyPwGtjdHA6hcj72JB3myv4xpn6KpZbL+5ziaWZS/dzGz+Yo11QsDwNyR1mMUTz5jv2igHR9Xz48FGtZ/63sCgmUCYDHWw+GyBva8rbd/Ia4TtYI+BEM3TUQ1GjMF5WWKtjeunoqMMe8EuUUQ1H/AbM688/UJW1RhfVpd9Vn5PUMzPuue/NQigs3kG5TzZ9szewBrIQuSwaGtQHsKfsWuvCGbAJUrFAELuIhJZZbxD8cgx+/lKTrWOKoLE/iCi2qrhYqh0SvqTJbCgTZn1KcQtG7KG3ALSjmtH3/P5kqqMX9euIrFMo4pyn8TXzfdCJnVXf8J2sXzYTbFEdJIrnFKHOlUjk3Z8cM4pwvMsga8uH6LTcyKrs3/8kqUaxG8iD7cenZavkh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5WZuzY8NUlBSmat5V1Pfs5K0A1UqYK43Zh2LBzFNnD8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4p1y6Annq3itb/KiW1623m3PIckHdWLN09JsAtR3sx/evlB5MyilsTYxBtq/ZkUfKSaxvgVLzfijX8jicyBwYrvDuBw4vGw2IzztBuk1AobJguZuS8ooOWG0zUy4euny2c5APno84UY6F4I6IilB6MFTgIQWGdA8BPZU4AiWdD9hpYShQWQGD6QM6r4Xr3fHmdJWYw0pU2gssR0Q63nnzqtXBe3KDHX3r4UhWoZkkkRIT+/++JmLZ6KNyq4I/O7WysGQIpDO2hcxDSs4Be/e0B1frmycZ9trum2iY9TwUfuUNC8VEGpmzMRi/khFqqaTQ214X9+rMdZOXCzSj7BWRwpe1Ev9sluCO5ZK83Et+kYwjz2JeNr4h4yH6SrOWxB8YJknaqtOIWwR8KTP7yKMdKViRKqh9qw4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5X9gO8ZW1u9cGzkiW34jecXjY6wpMIAODIYJ5osTUj8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cfMZsZELsk6JiNwaD6JqdTMBLKjPhn1ql1GhZBGAPhACTe1p92d/d0Ai90lVSuA2v0ROGkNjp2EM5WLRU9YkBIb3RR+48Obc8sHRJoBwbDmSNuZYBbrKEz3TpRNIOKR3MGRXxePxBGZVrQqsuWa/7QBDlvGQEOyZ7f8SIyFRbaLXrR8msV1kDssv9v5FQSuqioswSOoz37U0ZYVfa7QkHZUX+uX9Q9LB4H5zgfUWmfgCnvFJ+gtgFyabW7aOsbxCrBDqtMejsszKKTjFagszwVhiiRuUiaE28kV7u4lZ+AjNYyW6yJkfnyphQ7XPIwXdWKXCX3uZCzQtCc3z+l7f6gVTxjDDOABJMqOVtnGGz+BqmpM73vrE4c/rO3LVmn5iD8CG6mRef9IDgHvZTVQDHRjCDJ1QDw6/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5XTk3JXYWwLuuxaCYp+m/R1MMEziOoImY+4nwv7XLEU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LXCt/NKyHwdNTB6uu6JE9mKzAQFWOauIUK7sAjV8ADu97Zi6pusX6YN4+DRIwbyXVIgZ7jIYmwXdHSLcJdn7V5SCQnOLk4UhQSfBaBdw8pW/8IrNoPn7k2nQkAoRV4mSMP0/5nMEQpw2jdMtG6YmI8CcXpqpejAeBnyaCJSBVQxCztY9ma6QIQEfVXx9kMFqlG1rQFkEwu/nCsR9QA10OOUwp5xNlEkduFWebcLbxLePQfO5muJ4Pxf5vC8qZn2IZ/vhcFbAN2BIQJRqErYzv80T/p082uphl/pFGBMGoVuW3q8B6b5OyngYMmoN2R2duEXe40sy/2RVrgnVZiZq6WNR3EGCgcTyvDTfL++IlhgNUI+OFi9/8fCmEhdjtO3TPGYXHOiaQavHcKOqApeDl9aqUfjJarJx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5Xvoig+Sq5cy7i2rO2y+4KLMnJ3ru3VTmLG2+rcrddw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o7Zw33w3mpiNJO/OdrH7PSFHzPXzF75O3MIGT65kXc/rDEhoo+4JrehvLXb1jecl8NqSEeeRDGMAHd4vj+s7s7AMil1ZSGkPNkia70us8+CNmbEXCd7VgkE4Wi+S5OA8qunGUfQ1CVFKg5K7t/QGgX1tLO1bTD6Bve7CILMFNJWp2BuLwYa/s0mdObgQ5qwA53P5hFFM2RBJY6I4gAhhKR10J52n4Ys9hFteCPhx3BMME4U6Hj2QLGb2H5cNGciSzokmTdOn45kkBO4rhZo6r8ZYlRgr2JgVeLFdBY8huSGXVKQcpDKxBLcGdHhBym34MyTrfDqCW8bUUDHrStbdVauwLzsbrlpIPo5JJapH8ly2z4aZzwuaOptsLMjZhVR41trVgJo1wPXekq9Xa1amd0r5syKP5VUq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5Z8e9dzMq1YXFkNIMOmz3vy1CyLNUHi0vnnytQJ0pgI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CBIBGR9zCPhPuMoakoww9ttT2buADQ7yoEp0O66dnnxQjLGqBIBQRWsY7VeeCRIKHDc16pbkl1US7gEwR3BcHmFQOIvfZQHHisHjK7FLZ5KgWgboOxF0XEKgYJURFbCXXLZDTx9pTGAtKQWn5Q9Ypf1pQEoaBbqawVhHSNXTLV+RWHWTpG3LCLNDlzQDQI31zkIQrn8zSZmptFAgPOgT9X3LLjxBAuEvnYZQItkTLqHXc0c+lc3Y0u/cjKtJLnniUSP5yJqfPW6YGJ+7ec3KnyjE5YHOIX+Cg2whp1rjm79vsHaROmcuz7C0A679eoC/t1hbsAS/C35SBPOh20jRCTyDyRVJh+PZhYHU4/+IQCGo98eYOX7Y0lWXHfr+bKJwfkad2lepuOF2wAWIP3pMy2g274iW+O9D", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5a+QjRrvDSBb7DyMEpqFdDOvThIwoRkEaSOXlD2aN6w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZbBHH0Uch8juFzuHM07XCuoXiVnNSsJiKoqwrq+DRbMgIkPKXDatDaKkPmAylxzKJ1zXeCmJxXbdnC81USzlnfwsaApGEjWmRno46DuKuG7MLSRymLHElnUUrSaOwNzoFdpVWNYc3ruDzapYEnpnK8LvY9giZODHzTy/nmRaTon19/jhQ3RYcwcRSZWjGnO4EKsQR1l0qx0ilEJCguW2HCSRZ1PUwbRXMVMwo0CKYtAzQ7ZhlzOkKg2b/K1peSV4HP4BchDun1DzwsAZhwoqRERC4Qxqve5PSUGOpVD2OWGxXf7dKeiLJpD7Bvu2I+k4XXc6H05rawqAu7tdXZOAOYo6v8tGI5W/H5e4Te+qxOB08BM9SBTgX3Xl5QgmV0cZXgexx7LU4Z7akhvfClGpGyLbMLCbw87/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5byPRnDcd0ORSp4K66/8JgFoxBdZRxJP7Ryt0kNEAiw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hAvVhFtOM2EptbQ5rze22nZcW+iZAa6VNA43Nd8SlnakHtHxG+BwwGVeA/9ZsfF9ZnfH2JPH0EheDMOKBnnVniL2ffhUUJMFIYpnpRWTpUpM2Ko33joqgZE2b8Rmj/O4rJfzu6pcwud5GTUXdgO3aCQ/2Aw2t0M7VXBpfH5LW/I6RtXnK4RGZVevpbYND/jH1jMEv9GScqgeNLdnF6iTJE9yRaEomUQL29vnCl0I4mTPFKKps9CmoGndc09mPgvtmYoLvHLv1vK3umpu6xyf3VJIE8BZGgyTUbzuXMUx2ieq+a5/e/oKnUDu0d6gWc7tvI6tVNzQXYxXJVv+Bbkg8wOTVkiN3YF+l9JnO296wjDyDMi+SEeRvnCJ+gH0TCkxjAESir0fRJE8Oz406a5eVk5748vH9ve4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5ce31uJ+DcFjceUEXyOqF8CBWSkcVMREW8c9NjWtd0g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "O0jexrhBSGrKl66hcS4yeLCut1ZctIgYTXFmc2jumVZX8HAdulyyxjcoo+CfRLd3px4R/f15iYg/1LVWDst2hOu/rm6uk5cKrT5e5G6CTWeiSkqCvJwtRV+W/Ds/RSqKzgt3+m1he7+gNPKIuVKDxFkmetuAHgC3i/EPXi4WY65u2OIzZ88hIoN/ENJBUBZmeyKFYvNimWXh0SHU2ObBt17f6vTIbkTAClslfCDgS1sGVSRHx2gHRD7B5poGEK+Yk9xNgtI6UB3jwOkK/gdC36KGMU88D1A+fOhs0BzkvUXIZCt8vTMXaRFhX4HOT1QDjVVEZOdHdTC9kBMkapFRGdS2ripktwfU05McOVJUWvsILWrMPFxz+ML0cd8vV1ig/2u5h8zUrn1EtzZIdQHCQbg1GeZCzk6M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5diXRii3SsRXxU2zT8pJZAdAUbL6IgsleOrHKTXbOlg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0BDFjbcTecvuDl4WKp4iVdGxObS/Ffnz6LOsgwaUwGWSmNjyvN433x03R0DOop2jjcjMLN30uUP9rsg61GUVU2Tuzgh+p57Pil8tu6kRk+m4rlrjObbc1/ByIHH0XVKSazWtaYwxP32lSQctLK2kZXdK0Ne6CFLI7YBnh8BPvfQwijIm+JtUuKP8tSOuPjNF2eK/uQcd6+9y38m3NhEUTrYLDSN9IGJQrnf+AGKGEUVOkhbyohElBmJwNz1Z59rXz6IHDE6CaYAp6aMDZfmJ0mat9v0RQZl8F89vc8xvX1yT7tVqPDcAjol4KGQU36eT3p/vQg1SaFvkUmmw5uki8ywvjmVWROq7etnViNDEP7ONNEO9SdGL40glekNXX8+0QOermxF4UulpgRKyfcU+AHOcF7bPLaA8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5eU1fhqISXL/Svx1z2fw8SjEFT7zmSevybWaDIA1Fkk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1YiONGytR7WFVFPZyj8U5fXx/l8KRO0lDUwfyTwO6eiy6lTCkzhhWlBQT76wkvkQuq5MzXe5PdzhfkIlvQjUfWmkeNSGN7jgIlGhQf2dVWmKMsjzVk0yMXw0J2WI0AOaAaPkowhH7nkKbQobBLg8fOzkE46kuUyhiqemtBpuvcOeZCUbQOsOR1PLQ3vZwXeO4msS6mtchi6puzwhnHBU9f/XAJOoy0QbxEaKX2xnPAmJNdf0OxJUKwXUfcO/AmWZ/CMH+FJO4dsfg6Iy6jcKHBB+pSTI6ycrCG1lWHmA8AfeDhfnNjwm1ooWq6Yyzb385LDEWfBJRZk1erCfcHISfv+g3UlpBj34N5pxfX050wY/CUnMPZt1CCehwxvhNz1+biYcMdUc1ADyFiMNrcDMDAhktOwCg3AZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5eoyktlnpGszPkv6uCgmFRIghAX6fg/24Ylc+6dB4qA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sNt2vGgXafMODe0hP0UVcHfdEDPL2CSaDaSNhdQVeo1PtScZ1XRivkiJWBR2pjniFH1r1sthKV5R36Cpw8I8NpolR/81mlmdzheq2KMJpwFhmIe9375KHC4NAYBtzA1R0UQ0EV5vM1Xq50AwzAW6DXw3ZFh9nEkbqoB7Y/qs0b7Y9hrN5+nWWRSgVNlBa8fbsaK7ST8gkSqFPR+hs8RVCb3lbq1mcKfvHgxJVNPretGyR70oegR9s2LcNwhiGbMWoVaaE0lV5fNnNUgyugl5rj1Vl/aJ8JIbJEGrAtFT7Vg0T3/DyAalYcW6REGmnGCzhw04MXYstAgOPJwRU0NUJvJqIQ1A1zOfzYDjCfYmZ4lxd2/Nf706g9DsEQucZR7vA9Zo9jd2PJrHuyTYS9ZZt6PvaHOHL2Yv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5ez5w9Y1uFQ730hab45dIUzdJ6bdSy+JUP7NvOPL90g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9+/azEtrh1Qs23LRWv7ejbvWrIf3yS2zrpsR/t/CONpWS0/SVTWTg14XE1JBFEl9tdyYvcDJKImTA9j7Bcp0Yd37FH+NLtonPlaVF3oMWj0L2cVKckqHj2yz/mlEDS5rfT0MncbfTlT5Meo+RJUNNAnEsuxuVbvy8FHXAkB6rxvfs3cTBzyZ+X5xesCfow8V6NNvieYytDhXqT52MhRTPt+V8TCLP4TCmjUq0RKwxT7BTTb7Ot05LRWLQhUzT6S2ZWbXVxMmsD3nfgiJ98TS9fEC/9c+HRkkl3LUZRi27E46Cfrt8jYcPwbHOA0Sd9IWGuBEMnoa+TZ6t6lGUjCF/518FvbDF760rUKaB+RyTBT5ToJnDml5VYuSn2MLtviyKy+48tb89R8nS08dS5xs+BXOZl/31tBS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5hs6PQL9C9BbuuBDlKoY1gQ2vGy20CXL9a+QL8K5+0Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "H+HJAjvT0/s85svHpsW/FNAB8T+mo3oVKcbpMNV3aNogi9Q4N/ADOlW2OFHw2NbDaeygQOFMMlM2czWspyDbDwDdNuSzeg+mTzQH8VsKLpuyZ80bef1GcAtmx9D8Ier+kApJAx/LIyonS7kA857ZvfDjwfFB2H2ZYhMT97HAFzEeyjGcBobtei6+fB408dd4kxchzSHlREZn7LwtbidAZ8LYGvyDN1PNrZn1/Vlad3vV2Jci6OD0pjLUrmwVToECii/d2soBkM+GaRlERKIJKNo4zpVRjr6bvd1VtWSdm4B2lyW/DA8egXnm78bpG03Wr6vMYk47FSACSqa3K3P/4DBPyXEjBhwRoJlRtKhc9r2EuSQbieCPy65Lq6V23W14BGfGJzKpmx8rdvzdn7Oz7b9w++jsO87c", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5hu9q95pvMThEfvJpwX2cXjSUjHH2UsosMqafi4GqBw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "I2PQu2htTZ8j/YexNq6C5/lg7I+ujJQBSqUVrbQFYUy/QOyWggy2ip++d/sgpQLqJX8BjzRaMB3WEgY2n/uIsuDDvKPOEDgKdg+VuMAOfmyHwo8sWRWstrRnzxObmyGFK28XoNSdNH1VVxE0+I22wlL0qwFsKijxVAH6Yr90RLWmveQxhx8uwHdFPHAxBFLp9QY1sLtxb1dxajV7XGdJhYX09DXkPirHhBGE30dzul2236qWwdiSUytgxW/ZKBf9reF8pwQT0Z39j/nPCfnKMdtbYAZmwz438STEpjigQ67v0suSCI+k68XNHNeK5F4RO0uUmkhpEUl/01ymLLZ/BUX6Em2Dc1cXlnr+WQBC1t4fp9i6/UzBFl+TCgF535dMc6Yt2yuIPeT7g6Y5JFk7FH28fpn2mrl7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5iR1AU9rUcySnRFvyv5lgVwX+dnabnR/1wX1zEvpahw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "n6VMLmuXLRfnGfyUBYeWUsWlFZxMxo72GYhkpfe3eW/l4tLFmyc494E99YA0IWEfLbfcCyYdHuwaTDn8cR1n67w6Pidz8a/2YxKzUe+Dn/E18YLzHuMWbt9VZuG15oUpNiv5YH406KFVxeVDw84032ZRRQkB0oc0ihYG5BM+Mx0R5vI/vVH6MS0oiIf0kP8SUMT4L2BELeAjRpi6D/tmR7eUYI29rvkj7NajZsrok6K9/mMkxXo/6OE/4HJSZ1hKoWybZlLjcvzUlTdInZlehpgAG4+kcZbZqlqKnN8V+4nA7h0d8EROpAJ7djx+j445/YM/EIVejYylhdSe1Gp5lRJKcAG5hYKjd6cE3Ppe6u7alMwIDlMWkvkKRzx/Wr9Nbyn4/yIc1rHR5aylOqcUW2BPBl3VsEkC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5kEfFfoFWIYxJUXmg+Ep+2yZkNcxA78MHfdwnQQtG+0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bEH76Z0gutown3zUnFOjblR9IFa8GlBCH99fLe5A8afX5nvW3iIubeVjIOcpzkoZQh03E9VA+bc6tB0wSskvw2cO2Y1Hxw/zAAjOXMPxkbngVdUiodrxekC3375oPsHdPTXmkklLHFG5kFkKw7rIuo2nhd3DjBQIauqI5kpsKBgcYzLpTTDADvJiMTSqUSPFahG7f5nGby480aIH7/z/rhFPuveF948Tz7G1X6+zDsRQKT7X1ENBo0ab6sieYh6RTo+oNwcmap/W4QzqsZ10PaOUclXe4+Ug4gnMB8L91jd17CtRp19lHx1a/jA5Of336rc3XxPgZPXeVqIpxC0INXnC5f5p73O8YPvQr3+nSRLeEhUz31axCBoyAgVNdbYCatyXSgr+H22GjK9AOSaHOB59KF1Ebh3r", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5kEyysmKzwKdUaIFlI9JXcM8/qcbpK1hW1q0VTA7C+0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r9JaeZXE8LeF2fJzd763y4UeUURdpPY8TjGJaoW1rUMMHR2WXywvSz75t/fnpIyh3sEWQGJQ6/G98FHDVMb1MRBVmkZTw4y5W1Zu7baj2mSNplxS/jQX0nJv8HNn8KhpdZJVxcYg6RzSUyu46Pl3IaYXJ+VzYeNVXoFbJw42yVcj+e6ckGY8JKW72bMM0mkKmbJSwOJQvZOebKmToyLKXGJJMVFVC1TwJqIobtp/8Z0xz50JGtWNJn+NxtDkcxR5NT64fs3PhzgeGFrbID9yuGxRhdEfBCo2EecaaZtdsn2zXtDUbMd3pyIXTQG8Jdz3wBl/I59sVTjzk7CwNi7u3pwSRx4kwDUu5mS3tzQh9QNX49OKPEQgnW0G0BB3AXIR0rqeguyzeP0AtN/df64tN7o843KaLoxO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5kjFQzTM5BhAN6GF3qTV0YM4oCSW68ZJj8kdkmmFvzg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TtpsYdCafDCekuhhnrydHbxu+b6vraKk4uBnLp1cs3ayl8xtcNV1H8gkVuXYFqXR253ThoU6NeTRxoRK2C8QE5V2ALIwdzXW/egP9AXUZWHVBtMCkRgDce7srUq16Dg9EgybEL8AUi/JZNwT77KuWW4+K7wBxpK8olM7S7A/C6UR5Yc3iwphvHqZ0WrCS4tG1cvYBecUPap0Lh0U/UX2CiqOVdc0U/UZftmIRrqFq8tjr1Hl9P8VMwStoyjQH0ALK6FtMMNzyuqfW7WWzP2RxOMsefFZDDuD7z63TYrogfDOmzs5uy1CCuMYFGR5dENGu7Ng0YyfiLMUS5kHsqFihwbrUFNra+3KZRk88h6BJxclt/JzmmmSUmfwNxV4NyJTzBNrwps17bghnRv2v6A7bvecPb9S+WwJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5l7x246IrDSq/D9j9CcEg0LcS7oRiforA/nSbyHLThY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iXqTAyKf65Rz1Hm89lyyTveaPeVnwQdV/h7BK1uAv+Z4eduR5ZRLCr5s1EEPOuTfpSNG+iA5QCR8d41qzVzPpMOTo/FOmReUNv2oR5CW66w3Ry0fbKDb5Zj22LFDOPTCWXs9jDEFXihtEl1pcicdgly05dpOnjqEyHhF1EKqfWV4vFXTa0jGI0Ta2Ry0mXOzWRj9FA5/uKaD6bcG0vaeDsMd61jVdC2idx0ERLyN1EmmC3JQwxCpmT8hSqKaYIG6kVjRrJpTlhF8kg9jrDnayrJQet65d9jDr+CPGcbjk3RqoN//HiaguWnzw8shFFB3+bVPFKJGXtsBP6ZfvpNjI6e12SLJGwvn25+bpwNcaoBEh7DtaLGQRG9Tux2U27U7Y5lvVUACir+Zcp7fNN6TzTAuKk/Vw0+P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5mOwKsrko5WijZqQZsYDvdvxlgLr+FzSMFp5Hoevku4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LX/o+WF0lX1mPyvz6HoQdRpIsgmX8wasdLVNcv8LKIw7P3a09nvkAHn5mFLSHDAO7cl+IFXXt75WWfBKXn1Wx6T7P4fvXzAZCtuqDYCxkFivqnOrlRXHM/w34Y344qHaXKKGgxXBEpOZM3Oieq3YreutNyZW784qns4w0YjTMQww9p7OBhaFCPQ8HKim5z7NFHCDbBO7f5uZuc63+b3ivlEf/Jqnt6nuFbNhHhm/okspNPbOtO8vI6mkVRC2KK3HK3Q+2W1XRN2zUX9VH3fG3tR41Z1gsvCnn4BQb/+/esRHpXh7MeLM+UzsBit3D/x+TBbFLJdtIpwC0I/QtazWovKViyyEd/f7ifJKrI3JyI6qKmgL2F6LBKmhOlvS9bVJ0dBgAMqaVkSN1ZnEPgEc3QOJlbHo46RC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5mefSAXPsd5zSDHd9TP0Q1oQPyFvbxNUy4r42YZDR2o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "K6amn4p8X8dN6mVphvIXXZ/eox1uJeJZuxv0WprDnMJwU2yKaDyyqWxv3VDTmQR1003+hiy5L/7wRiUBxP0WAZbneBtKZXSykApAYaGceWaOJHUGT3iFmryGaQj2roI2KW2vvLTOQl/N/d7CRoocmnxdFU7T3CEnln7g/6A5tYyZjBQaZCLoLUcFO+35QOqizDNbkhCptfcdus4ZH/G4fXWRG21jDtRGSX6jowXzY8R+KQyDtTVLKjt1bMnsiNHe3ucDQcR309M1FWKdaceG/LzBRL8HnodEiUZS+bA4LkJOt78R1wY+KaVuhKwFLzRQual90CldBdcBHE7GtPFVOVAQOFrsKi+Iuv9DwIEwsuq2hjHbqNHrXaHNhZhFn2lXQm4s4M4xQtZwKo7lW0jHcXKiieIvH7Jf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5n9et0u0m0PS7vYfvTIuBA+3GB5f7nAGn/xxOI8de4s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UrtjABsZOS/TjCjzK3DT3E2aexGc78OhC5uyJ9DXfneuG+5kR63P6mManfb0rxVBa8f9Dtd5EwVn4qtP+i700EDISVKKr5J0y2RPEQWLgPR60pHUnRbdm3c8+SZcBYfsVX6Ua1uN9RfL4kmoTk7VZUUe5Ny62tMwQeoqRx8zkVbP5AHXP/b4gKF083STX3VC/0pKMPsMf27hoJfxQ2uzp7YnvQ4dJ+IIxD82VvKjMRfuqk6yMgoVVBXnxFiFqogIx5EpflIy7d/MzCZfkAAfM3m4bTeUvRnttmpeaTHf2Gpyl3zMEVbsC7ghEl1pn3hj3+6BqhWgxc8H2pDm4GxhyefqzgL8yXUbFRh3YEfT+HwdAp0KrCUXGjZB5XZa8q2isuKOZmUUzxzu9XlmvLhoeKL5ZCA2yqc0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5ou0HnEESLFKKk20jlq+lsrt9i/f9y4uOYpG3n2WCKA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NLlNqJ8rI+i5ax4+05Gr1tjrveBT3El7VxChr7xeafEUkNFfO9knz5ZjJak8m0UUFSi88dOHCMs0QuD0AxCLw74yed4nGRHAFdg8y6HLGOjMPrZQSh9lp2XRv/nP1D++sww/9zLoHGIJz3WVYrTOwr6B0wNQzcKefNJDrfqQJ8tNe7v3IOogjNR0ZMJRX0YMpejxeKkUDTwCyH4F0A2JKeA2GZM9aZL82ApuyUf56Icjl3mJxzq8GIowNS/hLMHRh6Z7Vq5NnQTAk+vXhJ17hXN7k+wPvpe6lIi9AgnUtpN1BrhUpVLSjJCwxX5UX54ArOOiBiwd+RwjsPhJ1zX2A9D4FCrWNSf+CpPzt2VEzjtkx22Oaxu9+otib58896jK4FXdTR8/m2usIzB4FHpzbNxEjpzkbtEK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5psbFXS2OUJrz2gPGbCs+7EeqQnbKzDrpeiaCYeklDQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nh7vbanV1KNnfSrTYUNTuGuAJuOy2rYE+yITX8njDsGKj7IpO+RbtoQSbMBY4lzrja9+7PuRjyAC/jG+fE1RPHSdVLx26gdg98WRHlfIRSfIhdZF5civo6DPuLkxAE6AjkJ5gIa9kty3CG5jPQvmuL7sklDf7omII/M0fi9A5Eu3HPjGa4RPMfPcjUBMzR0xUIdimrbaXmlX/t9TzGe8uEFI2kzdncAV/FAfVRe1RP5d9OehIiOywcBIpI4Rof/BDA8Fb7PYBhCo8fbgtF5xKU0MJCOMwcyxd5KdH7JA4umrXZfWFKx9dRmXnDPbKqCk9jfPh+SEs+Zncv/j9Il0DCoducXuYB2+9BUsDjsPUniKglfyuactEOApseVyhZoGvWaB0eMuBXa9r8G5QoIS/z0SDU2AUI9V", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5rFkVx2CF2E1Lom3USk6yt5MfN+Efb1eAhaoxDXm4bk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RC9f2gNvft/GLmzgfPjmQT9VVCo0+jsiEcszhwTXZvdvgDHMICVSrBH/Rq5AFyruQkATLt+9vG0fqguviXPqkK/jeu/ZCNubEpsYAyo/5swBx/cCreahtUS9HrL762OlcqBSOi7ZTJCpbfxFS8JcOZJ9HWWmQfOhXGzzbH2aclHsV88mjgIHNN4zHcmzS/XiprZd4g6PMQqGBvBGyD8fb0w6koh00jl8vnKuS9X2t1HJclwoWBdZImEsjLHSXRNgLomrJtHrHR6nVu4oh4Tyn9K/G45MI57la1uanU1mrFZEh4L4ixAnjrEniFfbMndgbBaLKBXFQvVM/YJACrin4hnTjeEiIkS5ajZeUNN0IzdmdkS5vmjQjGJTThp5PxIh8cQN8nTujRfqhynWdUHrI+K2CinXj0P3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5rvcnONWxgr4PPNNhxijSUD2USRBTj64NCxjh39ZjUI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v/DS/7XIRU0qsHw+iSuLP2cqMdTjHMSMm5VOGSuOQGjC65bs/tt+7aLuDIX8z3Bf14rzUKqtSWJF+1zBSX+LbIJ5jC9TKv7pj38IyUpWWII5rIfuIh77hhTHlhHoLQa3YgjxB82Z1I2W1Hj9CiN/NmHldDe/TAr0IQBOK1l5AkkM2fHIxAacbcjok0Y9avbbXC07n4UukeFnTcuHg4ViE7FU51jQchekKiSDTWRnQkdqSwHjmSrmYSp5elzHGxpB1AfSv/O7/mGxr0MG919rrqJalOD1X5UJ6C3gcFD82u1VoCCSxSOZPPtOnqo0ju4O9Xulr0BelP0ydf9VzRgGSAwdD8atU4UGfNkKQz94X4uc/1HCe0WNVGgTbQpbG396spLl8Ho+Auysv4ew8GkDiIxCtn+4DmEl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5s/qVCzc95t6yFJnJ2TsBC/1X+9y+v9bdoewdLVi+DQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3LAGj0dQ/jflgp2Quqge5uTNR+BeXMUaRl8xooxS6/2oPqmNcoh2PT6gme2Xu6gHlrVmOcwyyRIW4KpFxWG28Trqv0kNckLEncueSzlwOtEGNnUhW7+tTQEXg7cErdV9ZRSjcmJJsCmsbhROSc/q87s8Dnxp/Sl7MFASlZ4g/woJ227yu6vna36iAzM+5YyV2cx3C/H92M9AAQurwnUvC6VNzuZ1XLJL/hkvtDDmEOC/u0dsxFo4dpPb0UDqYe/YiUDRZcgHLe7DB0NvUxe5IyiTn1b0pAaZ0oeFcFtzpzIPxL2v3buJf7BcArCEYg9USNps9Aj73uqGdK0BLNsEV+W1HhmY0P4n/84rKQuKt0kp96pRpnqyO1L4OF/n8+oNamORw9efdQbEKPDw/PcwcLUrqINogSus", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5t1mOnKkHc1QhDvCIgtteQICcZsvfv2WMHw9KEagmfk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wYzxVe1VjC57/dA8gV0O/pbHHQjThF3PmjE03Pah56ApBr7t9+/eV4gzNDNKRLbZ0uZxvunEUY7jV1oCvFXedeQkXar+uGx/zX3f4Djlzb95OQJg9BUBbaUQxDUETENTo/9hpuGEQwGTEsXOkeFIrCN/1hPjKM0eyvYcdLE1z0C+hMWqsFGb5Pk+x/KkcHePcR+eSYBq9d3FS+qriI6A1BHFDKCg/dRL/buQ3DEvil+HG/OstwcjJEBkElTCSGytKQTzaeMyRvoKLb/Pk+nEAjRjIHMgw9l8fuUebHcZW+K6KFmwu2jWKrbuQ/5D5T+x9aQ3cHXPrLC69yyiLZD7Eojyi4l70cf7xO2+J0Ca8ifw0b3bgJV1NxNUJE2yo5A3QMJNSTBSzeJIgUciBljZyvn0ows25UP+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5xjx766hXyvKo2me/evJ2nGZ9l7DKwRgAje4ZZ07Rls", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yC422IKQ9r95hYDTJj5wDRZEobexE6glHLQbM9K0NeZbIkOeN5ubgRt/v4JLIrIFdNhelkXCg3Ub8ITAC8arC+n6nWDRFIOmzuWv75IqSdg+UkApd5fUaSEN+4DYcalOJdwgt5qcqqpWxSKiQCIK15kfrapvROzPC+8CzqvZ5F0ZOgwfBEA5csLdgwYCCdj7gh7IWmx7KSShSyNqvtvhCv+hg18xamM9PG0WyhrF7GKnBnfxMqrIav3NzfKi7r2CEVC2mcR76T7BVMYgPjP66HAItRAptUPsgO7/OKzjOpSREkhsTo6JcpRuJeF46yEIO+OlSk0+RmhEqTaqrtcOG3eCd/4y7gtzZruQRn1omtCgZhMM6j6Y1HomO/AGpcAkA3ktGICfvRSlNql1S7V7B0SWqg0li4Il", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "5zJLY0G2KvIAGH0DruDx/3r6xEwOhPcsrWIdQq9Twhs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NcMlincCC+VQ+ajEqHHb390QqcoXeUDs5Jm33ABMi9+1vU2Fd76lMm68M1q5z/5t0Td1xebRtVNoiVxsP6qrjyevCUsleBTFcH4/buVT6JUvv+QFxCUQWPns2521b//1UYNQlVwY1joBhUDN/VP1SyNRKpYfbX0nfJ5Q56w8kqBvK99VSWnPnlNrOnEHQXpQtr9seXmfjwDFVan3Cva/WDx8pRIDu5Z0G7A5uXxDqxBS3+yE1CNZBRUlyay3TBVi+9gBQ/J6X0fARWr4L/uO3t2EVB25KaVnhas45Ec6paVEyPAME8VoI1J+xeW7vJt/ETqpIFOSr1tN7yY/+XKXDi6nT/NHx+SRwGEPGiZ7DkKU0Mtsv2N/ulHEJoa7BbkYx1IY8wc7TSHcktupDl+un82sa+pH7kD1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6+BM6+V3aP/k4j35aj9CCUeuMjL8p+R7YNg9pXM3PX4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yaDjnM5l2QT3KzVYd4f1aGPmM+vaGiky21MYDSwrk4I911Ox0eM9ys5xopd5aSdflcArUsPkyaCrI5KxQ9QDdQwD/FCdh4JdIWl288F9KQTpQJ/T09v3vDZLYNTOCNEDLDD4vS2YQ6/EcfbjAmuR5n5akO7en3gzvpNJ2yY63tWRcbw91YHaATSbQGJREq1pOUnNhNdsePsgtfIqpnTff8nPPl34T64qPck65eVHfmLYeamy1i0PyrecRdywNrI5zkYEam922eehHDyCl2bbjLtLU3Bj7P08c6uE4QLs1oIeqCJzI+CrstvyZ428tmmhlCrhx42qxHAOkSmongWI2NM3oungQYTzGVgfsqtwKv3qwFFsOTx4lF6m76p9DmoPL8uEVkW8SwUUoQfL8S2k3HoH0XTjDbZ1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6+pebylgjzkVPUBz5k44/1HMtLpqHR5SAIB2Pxn/IVc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ijwYoXRv3a69b5irbgImMi030cnn8XfPhVO6pbRfSnNggU5PV7dV7q23cpEHxRiRWykRf/jpyxSfAF35tWeNNUdXT4Srlgc8oW5en4rhAt9y4+inuRICd4kGo7kNCsQgxvE8DLIPSUq/ss98y0KnaAMHdBOblsVZaPdxrwiAXGijCG81LhtdqMmTo10+DDh4rEuwR1pOE9CY9b8tHTZd9Kc5L/UcmdGsdf6sL94zGNbtksYJj133mYVT172FxXxILyOvS0dvOwRD5SNsgdhbbCf0G1tGA5mTpQe8SgAOgtLVGjDlDWXyfqH6EGpQtQ3Xr8ZngWb2aXXOoAzHt1bintsD43QR3p75tVXBe58HS5D07pnzhBDilgKA1ID4lwYp8ldN6+tVdYyhU80/zzi8yie8vf6yUCJ+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6//vA7GTT/a4QYQaTxmjFaB6jdu1xFgflLEyWgb9yhI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "I5HCCv/vRpfA1+op+sfIlzep6+4qgqGGFQ134zBUXbdO/o8fiWCvgSTOUh2qbbA34cl4kTgIjWbGmods9lfiYRBIAMo0dGJWnNOt87oETWSRV6hvH2nYlkB2gGJg/wH+o1adrfTegnnGtnSaezaXCrbsjRoza6WTaQ5aHvdBHbqlmz64v+X2dRS3NbDn0zkYEzlAnRaDwngLZPn6AT05c+cOpYYWhUA/+vwm2Esi/OQEkCa3sHJdb04v3c0UsKkEn3s3n0y1EyyoSxhSiSfa825my5TV4kUXott7HV2JI5lcJyCB2by3vY/IBeNQ0HrJopGwzqcqwDSFOoKyxail2n169xK1uD2YzZpUWFLJJqOfrm/POWSD2HBlvimMPHAFNDd/CbVdbdby9SGIgQZlCkQ7DgWHhb2W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6/ycXzAWyfJDv+5OrUfLf+ztC/x8gGdyK5BSgCOMo1k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1zutUkACL2vxBn/FqUVFLkk2tbHfKD9+SIKUdx5QFD2anDn+C/98Vq/ZH/2R3mNk2v1W6/pg2T7GVJfBsD2zSTpNU61WDflE2odjFQ8RbbZGNqYhVYMfTLwJZ4gtftmYSi6HZAZuh9vcCHD55OnJtShPrB9SnllRuXpEB0ELr9bK5phWq3zov49BS70J+bJIaHiTIrnpqiZxq7bH/4sFjCiODEVgFzGMIZTcuwDqBwBc1Xp1qR4cHxI+0kS+PuXUhu2pWJSVcVMxwXhp5XrU5dQ9yrp/ds0dIKcSggdShfHlOmFB9h+/FwICaIDNIPpX9Gbehhc/YGwbFF0IGfUgMztH5UBAv54su/AWBWRPD9u1fypgT3MxMLqonV0qBB/HYPJJeqi0dDD85j9Zy5E/qy9Ttbz37ENK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "60CYjNUkUhl3GI5jqrQH+32/4dO18S3XYLH3TX14IPs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UHoZpa/ofvGami9Wg/pUh4DjsCzbnPMPBlRXxYpyyyWJMCoF7rwsROfiEnCv4YRniHdhDVGr4WbODQUX+7x8oRTm/xLusS4SGn6yX/JDP6K9+2UUb1Ok5AHb7yCkoydmhguqkXx+JiQXdPkGrJ7iQvLYe+8lsDKVaPp7GiOIymniPn/ToypW6V/VrTytgdfZzBcuWdbC1+la3Xu1FerQnMFV7DwNnJI+hveZyztzXbxH5siVnBXPhBzI8tzklSWgIOZ/1EQusZwTv5s5+F2oazSsw4qLRrOp8AQPclGVFRuWofpaeh23pi0rF+/H9UjHv5cELUjXAQVNaQzE4DFsvIXk+ynDHeWFU5UE8uD/AinSKmJ6dsVfFFYq7kn5mWzQCkOPt9xHVfo3MYAKKeTH4FFsV1CsWZCr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "60aboEomshE2wDjwGwQP3+3KLNdlxtNQ0qm/i5qJ2FE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EbPjjlzINYJ0q87Y0bOXO2R3+UJPPbR57EZwQLA2eEj2UT0rX31VUc+DZgyX8yBk7slxIJtJMnBimUvWvYbJoyOtksT4xXdvz5EYvRIuM/hDTnEGr+a1C/CIUy+1B1gdXfnsgQvxJYI64SZbxA9LcOqKoJ6C9nva8TUTktT8n8zhAVms+v/n8l+T6qA7xsCv0r8pTIedTLp6EvN0KX+x2IJ7O4a0XayXuO0LdD9T0MWwxApww/g52MKlvl85k4JodyRIo0HbtOZXQbxAek6HQYWRbKhcobhjU8gGyZbw+IBXmh7s14qHxtlA1uGqODU06anS72aecR8qxAO5F2kGou63DPr+yfQL12ZPbiBUL3o961SUSy6dEBZ+VBAwFZoDHMv11plE0B8emS1wMTb8QCWaQCJws4OP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "60jysZmB+PrMYrTXeRA75Wf40TEL7Soi4UlVYKeIIrM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PhUMNTJP/9rlSHwvu2QeimQNVkrwp85ZV/uXzwD7NgcxxYAlQYNxFtwRxW99uAHeH//NHNWJs0p7nfuQcMMiS+psIejqKwKTj4Lw/M/uEoeHfMQk+Ucr36v4SD0OCuZ8QmkqxX7JodL2kxnNVAaTSzB3HJiyQsQbfxqgcLuJ83csJcl8z3OTJxZEYnvwHKAOEqsEu56DH0zoiiPXBHUbj/uVUw9JfOdVBWlierPgnXWS5eHAGiaucjPIPeQfCGYavamhOT2PAmvjTnc2C9uFM+kLfES/yIcQfk6xVKTZLT4RpUHaNlILjTwB3aSOi75yUmjLlWAWGnmJAwV2m2qp32FXBs8QwoQzgviixK8QyQ19U4e069dPMj7XryGpV0c1V2ROdO+BBRXngxD0zq5J8ajnWBbVHovO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "60l1RvEJh0TvgZmN2kxrkxVVVO+Oh5TMNelEL38rse8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AhuNdkAlo65/jCGiMITcRpuBHtcTnHD+R6HymmnvQleYoYc6H+zV6EM/NCeUoeSz8uwHIV3BYFoTUZNawpagxTq33u38l6WLdUY5Rza2RIfc+L9twljWwAl2U/jG1GGqhZ13Kkja1PijAC1nRUDJRUiAzAAWgRdx1LXf0hcjfhfhXpzF9Gd8hKfdMkzCjJdkMql2EZBkCEhn33RNQYocZkaIMavIuaTte+iYf2mJ4wUPTBJQRBaHOZ1Rs4w3arafud1Vl/YQzPDA8l0jaO92HEz6mKiCtGzGACDxZFiToDmpgWckJ8qBKhVq6/NObtIIw6SWLs0WQmEM92783c1DF1ApkUFgDVCxfCls3z0hCLvdXKbTA5HZHItgUAGN4cEVg9PRFXHoVvLdmpBw3mgwe8R7FNcqo2OL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "62Kp48+o1hjgSvN8OBW63u1XjOY/b2QBbtucdvW5wTY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lz+Q1CwRGfrtjBkQkvvBftvivjAb/bDZbobP0qn9DbBYKocAehVYx5Dp90+ZkYXHDKQo/gHrWw3XPzHpmTplLuYSFubx7pTGKvm7YveS/RHKhQbAgm4vWfmkc26wY01Lpy9AtYwF3ayI0cXW9ZZzLPGpauG8KfflQhsAKvzvgsiRQb7uJ9f4a0K8X7tMvS9yLLXsON7K2zQxz9ddplt4nROS57GM7FxSKqlCIRngFrpBTw4KMB+fJ46sNhAyxXpXrW/2MAqX8cdlLkl0/axNiAB4YVk08d0jjZtHtK178nULKEQpyUMZt4Y7LmW8UMJeQ1E8oFak+NJWI7+2pE4bweQSOP/PqYqpmO0UitB4BYW/pyDvAFsSBbxOC/OPfFhOAZko+lhjPJdyfchx6SRDNOuhYBzp/qwY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "64pDcNPMk2uIcVqFZJHVDoirdkLGuKRmXc3xh7yn/x4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "h28V6sx1bRigN0G4C6Q5FWVXVIUTdI/e/j7CMt24CoV31IiZ1EJM/lbZKNJiezGNDSNE1kQ8DzdHwlwxFjbbLc1+oBkrae8llSvcbbJay8xSPUSFjHLYBXDWVk1g4H8gQkw0nleE2gFEX1I6cLoDAQSUWaKebNWXQLccUmVX69wDDzXgDmUjr3QoQKxrSf9VcGdr2Y45kMOtQrLaOx4tBq5QQo38OGzUMdMjjRl6qvrkSlul64YOUyAWd0J/sg27/pAV936qVrvnRfbaGkF90O2I64XcJlkIQEhuFxmyBY7L60U37woAHzu2Fj/BVqE/Mc8+jOFU0Ako6kio5GvL7qtYJRhUQStk77V1zWs5yHLz6QR+EyKTHqRFf0etT2qN2AkvgHDC7TESuk1V9QvUq/pl1hiJ/kRQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "68CgT+3Z7p8VZGZ/V9fMF4nW44iAepOoBo9nch2oYVI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/2SqyfR3m85HhT2xjZZwrkvCsAGrP8e9SrXcSBMGJmGqlv8WI/U/OFMGGDvSIhdgf/CEmqhCmoqQRMiLrtEyt3Re0QoDgg1lSf9kxgW1aTHl6fX6wBxRjkE2LdxauLFYlYqgUySbdroy2HOMqstX5v4YU5+lCg9WpA1mw8TY9pWGXRJ0DmvBsAhXaEl44y9/iXIzQD8iqtwddOOAqGTNNQQzI5S2ycxzA0qX9ZsTblp3RLvEcDo+j8HdJoAXVfNPO07/sF5oJS10Wi+tfCR9+g/43nlWw+xWTetU2aogsZURyw/Ga1L7zVYYYnIp1LJEbHvVkksVGCtf1Cnjv8d77Sg7MDg7xPz/dvhgNhYdp33lCC0gh+1z9N2R2q4YqhOSZWEJ5EHXb0UxbmgHPm72XdxYNI4dTiOy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "68jRU+h2PjiIMqk0+dlkGUMx1aStw1WxBU0m2sozMYs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Qn4iTfF06MJFCsOqrfkrdYbRXvdZ5/5Jg1j6JM1Qd5DmKq1TjKT3NfMyV3BeYL8NdF4FYc/1Kui1Uu4Ddxe47pVEat2ykdbIgafsmJBX0I440rLzSfl0dlJGEULih24J7fplQAGs6zcTAffZtoB785TPVDSB8AJJJnYqv+MIs7+PCMr/p6PBVIOI0zZw62pJjfT2/G0VzbwK+osf3zVAH7ux75P2hgF4CoDKc66ENDxreNPTZRQusVRE+ITDBYoI8lFCJrdXbdv9z3tXiIsAW6WJOcGPasvKb8U/P0KTNPJIueYAL+SjTlk2E+EHTxj/caGd3q+omywLglqIlE/AnbdQoMYXuntzjw3aTG6ViJf7dDIMUrPE/Ypjw2aWTOAVVBmhSGZDxPAVBXC9CEbOEPIK5X7QLYB1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "69+NZtbOhJa/zD1/MiKo+Q8duZkvZy8RFy1/K3kg+Zw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yWhldJ6lSpIw31hNUPwiDqoc1+1SDWZELu16rfjAjj9vEMtOB88YbRsIU/1EmCvIRKVDJ62cKoFhEPpnV2r6MByrNW7XpHoTY4HiWBtuT+P6O6dDisItF+/td6eqT6CrRfOnZwhp/SDmVaNJguCtBMSfvbuxYw0rFhs1FWrwIQ03aFEG59vnOlwA2TnEbGknsf3S61HNUKnBlVsQ45edvyYNkW3lY/MP3of7wLyrYGSBCNCXJQNB4TAtYV9cT352M90U/RuCCve+ookgsZdJEgNQi4qBQLSeuwkzP/ulL4VKzBFQEthCTpnGDqWC/cfd+z11NHX2O2ckxdBAQwBqvwOv7HWE+BXzeo/tYBXbuH6J830EwHfRGlWbKZkgX7ktWTerJKLdGgQWBBpXSJpVSpqRcJWz2Y+h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "69dI0Sgev7HKW/YJedWU3xSS8xHyyxMG6/XyjmPkGJA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Rb8OvhWfpIlVVB7V6adzPSiOp2WxHvHEM9RJgin7+ESVowfPhfIhySLQRo4qOCA5pczFGx1ZSLUFKwHM9TqmfdDpbEIQg45HbawMYJPjKP90RXAIWXlRdpnnQXjOLmLqGXfhDSn02l5Vu4c2wB1NQPaWiKXDBgDkpiPQlIr9wZdeRYx2Q/OCCEF4+GHaYiBcWT1aldt0Wxu+3gkqYoZGCYgu+KlctxfF6EJdixCEQ1Fif9NxomAN+TpP4f8Isn44qQm8iQUydvQguZe8PPi/k1LbNLYZIYBKVE+7CoTcyC+K9A5Ojzr7c2sGribrVfVwXUN2SxgUUuA4pBm/89k4r7jNlnbTB5BnP3zjy+bJOuBn+M7YbK8tUdSwSvkRYv03Ai7tNHdspR6LOKtJsRSAuqkU/pb+0WZY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6AjbXYw6JCaR+IcUfubaMiiQtlkSfGVqLR4wIH4ZPF8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ODBr/XQ9p+A+i5yQCtFZ6aqpCd4aORrMO2JlvtFFHL2h7KlzzbVPB8fujL6rBtn+tYmShp311tZ4H4DGcqiNeY+Z+VPlTOLJSgIrrv6hsgdhHw/MF8WlK5g8jDdP3XXSXc2L/QtdZX2CXSnXsLhSuVr2YHt6ixW4pc2OSxxxyyfHzufXuGJG73x7YzEzpswGCA80QSkMWcWK4aFwJEQh9NFk6VzSnrTtGNbD4c6aTLkg3bz2Vp4r5Z86W4RoRxe30IWLRVwGP/wOMTx8iEB4WqqXIcbEAQWT6zx2hH5eODNI8vtBO5+9rLOjyCd7iNPvnlCroeBw2L9gwdqQR/SWYpjgwgHrY3swDGnnRtKXzIblztRp63Mod4lka9RATWCpJwMXqFret/IkTVvWW0mRNZ9LAF/5JC3S", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6CZo7Ujbk8Rgx9hIgzhvP+s2ZWNqGY/lhUBljt6/3g8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4nDuT60nPuZvfCYSyyafz3z0cm3MeXatdeQuISQC/1D2p9xkFjOSgFggLBDaKQadf1RDGa04H7K8JUt3YJn9OkOHMsVYbkpDqrk+ELSRaqeZ8PZWsHoIyezG5/fUJOWlsAqvX7mLmrDb0c+LM0Mj/DAkUhmTzS9qh8UZaJXzYuAgVgsyXVoKDl4Yb7fVhKUqMRDGpJnvp05aQbzTPkua2ra8krt0BagG0Dp3YPYro0pPKORRJVk3vXi0Yjj+Nv4DjO/GT7XE5Ld5Sz2BBs8xaWT3gVvE63a9cYA6jcT62KJ8xVfqCgcNOFhJtANMCMKNXl36dVYS98W1CZNDtBbnwoVmdE5lTPE2lV6H+9LoL8TljAxK5fh4HPbTiaZP9m8t0sWRmO5GhQ1wfl/R4kEEuWk6PAWQPygE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6DI2qkNUA3O+K34KRQMCZdU/JggXcZm0c0Yf8nmQ23Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ho/VC+8ZYpv6ehhnTgVYTlwJM6fkPtl51cEZV/+6WFU+/b4PiPsOadC01ZmnaIO7EbHhX++jH4chmbgpqA7vGtLIHTAcqo0uH1GaaA4pevlHt3dMhUoDFMzcJ58lBwBsz1NonTD5Xbz3wSInw1mAHcT2qQYYBvwqiP3Qn7lhI/WYYjt7Yfs4KJFGpcIVF7nKOzrK9K8ZCZrR8XlVJDat9j14eNcVfpKck59+vYf7P1RDj8pX3GuJLMm8Ai/uziPRX7Il7FTE0XsxTsU0eMHhE1GuTUQqMmfSHvkfh0Q/F4sN5wMdmdaLxemOPtFfKOrCjSya8d0oSymmCwkKFJZ7i1w95+yZw2Gvct2c7UrcXx/L/ETcZZSA/9TUHSP71RXbasZjpqV8fYw7pb/6JahDZWMLFHj5wevb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6DYk6HKVucLASQCWOxU88s8KM6nyjMbq37WZYWy7Zno", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Lp4MD/x62+t6KHZApLwpIg9OrnxLyMUqRqi/qMT/vqgwOmZahXmBMwqhnGkKbJrA3dwTqxBls+YCnSf+Rpt20I9Avz9/h0nmAtOGJN4KoAroWVcGBkGicGSajOfmhBIODBiktM8WjPepPlj0uPI2EfoEGmJSU2MNmWU30BaQc5qd2G/BVX6IUQIcB02Mwc7tvj+SKAPoQunUO5X2OZ84GNhKPDHBjrmAbE1jSuf1B5/+qkYTTwnSADop0CtHCRdCB1OOlTPamewu0xBdy12YkMNkxTXs7u7NdKyoOPHBkpX+57jraHsOW4WlxE4Vo27gmj55ITRSXGhie8GMNkyvGyPT/x5TRcQwx83+Q6LyznmBcOWikxotzYsMB0UIwUotNp6vekGiAaTHf6V0o7kW6B4l53loQrbB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6EkJTbkFlcCq+SXGanVDQX7jJ/RvpwWb2JvmyOSKy8A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "g40DC/jwVDGnlQrJ0qsWsl1NMo+dacYcSKSjLBWh50kKXMWt3iolnxMypfRXThkJj+Jlh2bavp8sqbUKs1mMwTcHekwWI21pul6NI10YBLtIhyiyq8QfD3BvyYIhM7LnoQL8e0l5+STwVK5XZbJQFcPmJ5SmPr8bGT/e3h2pZAKHMrm0RkhuiYqYXjv8/TxwWgS90xV97IqBTT5xtLRcU13EyhBfGIht+XlJmODPnFXFRcBQRCle0+auyAIjbi7yAe3Kvdk1TTGyrwIAjbpP8o1T6fapaaD5a9K7ldB8LzyF/s4yGszRtHIx8QMYQWtJBDvc8pwjuWX1XEsn8ha2qUMgkW6grjd6HmeY7FMnO/UUVNCoYmg4GIItPd5/3RAI0Scv2qBicvFFROpkh1Q/lo+yE2GeO+gn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6GqvWutXIxcmpfkcZFHRfMOy1oTjkIp8I1caa0kn82Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "O4SapRgfrsf+7TUJ2LlliCI/WESHkCwXGU1C0Je88mstpIWv95naLI1t3ydsDCD3ExeD6XCctWzxPQOQ/olBIJzpBI3+coHeHG+JDYTZDM+2wPiSl2S12Djz21hkzjoTBmKkPqTpB2VlDr1orRKirmImo9cd5GBPAgvyUX7uyNBywII8FmqUUfkgix3bZbVlF5cyB0zJ0oxXL/qGqRqVoQl+v/ECSklp4UdXbLXQV3lbqauSIKFQOks7cPKCW2rnqKbSY48BLJSU7KcxBaqJ3nXhucALt7r43atnZi2qaHRcdNm+lOqtLBLaqhUbVJZAK+m9izY7Rwazyg28RVW1EGU7FdyfJEhZPmzaUrr6U3hO/5VtiAmnh5eZJ7FTXP3dFYYRRZbC8vYmRpufs5Q/KrPSuuHh0PXt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6KbDkFh/iVH3c8ytrAAWgppJGzRVyFnY1djXMmVtpZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IjpWSWFS5tCQlu0YEIoh9hM655yPvShfBoWkn15WQ9e419Ap6XImQuUQ+GPtqR7QcdXFoWBmRAyM3ViBqwkKax1P00D2bhoFqdF8Y1wukYraRo2ruhB88yKYlxrXXYHrdb7pPAdmlV8HdkGIPVnV3X2gOgy8QAtRTMwZKjYAnSbhrnebkg4fEYQpfoaV7EZqvDBGbf1B0BvrBr55lhJemOQVBFzLskw0PthMQhQJayxtT45TcIgxbsSOmMEPr2aXKFUsWbUT+uViKu9jqsMXiavQmh/rdtMrtaN+/CV9NDMrS/yMe7c/xXEKlyY5//A0ieL8wsc/G1dnrmyC7o/0vQ/a/0udOp3CjRnxCU6NxdCAIMK0VlB3dShyD6aAleh1VUU2wlbzcrCjYAVxQteUV2Skg0tJn08N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6LNcnDk6Sc7+HQ48NBCzk/1qaG4OspfOMrxXh2B82cw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "h7+QOmdkvn4BVX8Tp1gcRWsIfCjETzytOtznuHt/19qwkaOkgJW5w6GDoS7rL2/UcupjexKjkhdHcSbF2ke0Oc2eK6KveNC9arzGNrvu9WmiaidKNCNbBv0SYnybFs3PeRkZGwlDu+51eK9bB/FQ39p+F9mqKh6wh3+L1MBSIv4UAy/OVSvU5ltWdQBMcG4tmCfyxVxI8MmFvtaPgrOy1zS5S1OULCsXEwwJqJiem7HPNBEvl4+UrK3zhJxLxQK2GprGRk2EXnLHXbkxuKd/xhum2AhePqoO4juo4h/4YbdVQVUT5/5HHAuSA3NZqcr26SpNFzZnjgms++HLIAk/0slfR5eG89xVRqYXxt+C1E5/uWO6N+m5qGf3Tu1WYSlKXnPHwJA9STbdFWE59oqF7/imSqMMLwMQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6MRNx1wgRjQeKqQhpZ+Fk+u/aMMeaqkbis3wKLu06IQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rElKNw/m/r4ORzdDxc+ptckfg/sgWo/QUB1aCl/Bp6bHhiSRGVjqY5Uve7uB3aSAMYd6xzlggLAyh4bDn4F2C2cakri///1gvdNRWVejZDN+298ytqY8s4egd4FxfWo3P0oEMHHs0waDFzV49H3y8r0kx02yaMjKAJcWEhLAEsoJSZHQtVb0EMncpChNXMxlWrLI9P4+BKWuNBmL3fRUJl7UtQ1D0ODy1XPjcUDmt6UNfJeAlVpgr02jLFNdnLCDLfk0W/nmHlW99G79+daOV/PIMPrBb6RkXAt0UBH3rRzT5NGOrmRpOkSENoqB5sB6nd8UrN5vwieYg3bULdm2O/LCGyugXhk7jhvT8GZTJTHYWjaiPgHixG2VjKPbrzrKhoYdPz+HkaVtdlc6k4eLLCFiqBuR4WdU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6O/6ZdYmUsEY4ZVa4Z5btqCiAdjuRv+raoBLAa14NGE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wefhfXA/3JlGrZSvkylEmWreLb4foxb494DIUYyAG9a/MLmnoTL4nkEbWzEV35A1dMdM72B7rTg8+DjCnnPgtk4IH05/4vBaCw2C+1e++mtCzX+pDtEz3N0VoySHouiAff1XbRCPr4v2ySOiX/4Umx5IiruAq4KNXpSyxLQDLWmxHqokVY1kbbZaIhbQ53WEzIcGxUs++17V4fvv6Gfvwok9CjsekVXiiRNThYfsLglXHcT8I/AyxgnsuA0ZUOCV3kuxdt6Yks3Sacs/cVYgbsoywn0Wu71T2ntZtqcXCijZx9fMijbHl/9esLkxHPOndKQGObWAT+xdOwb9hv9CjD4+MmSy3SEwmiJsjnlVnGAVhQHKlsp2cDq9Xcm3iIhuBOPRk9l6KwFzzWIMTtB8EuhZcy72UROP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6ODKcwoh3wFhdOChCNDrdFSe1iqCIfgDkpfsR94pSCY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "26KAN+9l1CrE2AiIzT9pIBZLCEG2xPO4l3HGX84FZ+L6tzGaSllnVktEi09eh8K4qdrzbdi7Euuws/0otRK444Wl0qYNJwG6GGSyNmQ5ioHx4/uk3THOWQklE0apacl0bodzPQRZnnEzpdsa1AJsqfxYELy8G9S2snekp1/5+36w7zjt3i1EEoN9G76lgJ45wv4Un4PYyyYoEL5AX50nv5i0QDlFIRCV7KIqjL5RULt3NUiu56PoUKKooZfzOmLFJUqyN7Z4FyPQSNcdq6iAV70Gb1mtTMdUaw64Emk1E6aBzkMutDnE/IxwlNMNiCUgNVVhfQANNOKEaO5+m6e1XnJojZwpd2XbxZxgNW7bvck3A7ZJHKgJvETKyigbQ0BmGCl2BrwuygMiB0OMYfAbDka6EL7b9EgF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6OPgYKywdbCoU1yoTL5x9daBoexZijjSEYgsLWsNNs0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XCGq0dF/UADi5rTlSIEptLQCWc+0gRc1g9ZVCaV6WjCTyucXMoufrXsNhOe4T3lKw36yOBtI0uPHpNCoGLKM+1OnI1hF5xsILqIU+2OKVS6Ozad8wKd7ZzeA/ScmyxMlIWyp+bnyv50LjzoK2aLbhdpHzs7sLjz+0JljqIeTYeR3quPz1USu9PkpssuHhk2YC+r6YiDEPWa2MD4d2s4zm07w+QyhtH1fyvhVbjnN96AwDTjXytkaxya7eLNVklKpkpqHzQ9lcsfYGTP2KtbI3JsN8xEypif412H4qk01qZzYcSO5jEx4TTSliDjoEGyBRivzT1I0Mkfams5uOausEmgI1P5N1ambjnkDF6soBYth6VCLSqqWj/YJzc57VcwCCSfZckPgbemdDjjH/FrNF6rrNoxViRRK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6OVgdrOlabxJlfG/QrAOmVHUceVlWPr+u6ecBVBQ6s8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ndi7YNXBNRsb92Crp9kphjR2RxfUOf8T1sEG1IFvDVE8jeRvZOC1d5TrVyp0IB0tykA9kIdLgyHoCVUpcYTquPYWNHWIjN5rkXbglcGwj/6N/T6fz6T1kMIoHqlcb9KNUOSDK/8Yi9UPW66HXje7r1Qt+9NOhHdvj485OkWpDkIe/n+JwjCNkMXtPhuZNYjBQ3T9HJ3VvAKbyB+41pqUeULCrgB1XMzsDMKRGt100Gz7Qan2pkyN7LktpMS6Bk6z4eF9KqOZ4mdXkOIc4XbEg97oMcQiROCgzUe3905rSMa9I7623U7QmwryCY/kBkKmzjND/dJwnOL1qI3MCCQ5dvq3ujtu34avkFxrNZsgOwz4NrVJkLTIasCOmhqJJmqN94Kl7TH9qx3hUzDmtM3zn3kYz2uapq9J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6PNTz2YtbsQG8HuP3giRnYwTzM9x9WXRB7oD3dVmh18", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7TEP1eA5RilgJ2uWOgrotTdrrgeEkPPgNUGn58ceeqiQQMGEoLubYk7ZWXlgKsq9w8O2ffxUH81Kl8j/9s5EUugYLOrcxPHz5nnyTnfNJrVSPqGgf1X+MU9a+0inlB7yV+lCbXU40ZYynf1Akkuxg4feT0t0wa5iTjNnTiz71HGVsz/5Rvr4V/MYJbM9MZs/6ZtQV/WHuUziuxvkRAioaObhVd5oneJiHEXhRVXFS1eLSMZG9x1WyNPAiL4u2KNmnT57QUtdswshbZLVUjafwGbTLhGV5PPpaD8ruws++itULV4Kpji48+bF1ZNYYCO0p0PZQVwRYDO1V5lg0CfsqyXo3P9RySu2OT2rBWNIrADIJhidZmyOPNRr0cKUjcf78y63gl6iF/ZzVByAf63bgfA5wwr0N0C7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6QNeTULiwP6zZOlJ3Il0dZINd5RHA8KbZmLZ9qve6ao", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gnz7+680ResaNxt4wm7MRFt+aiWFVz+po5vZwymCSL1hoSod+tIro8lj8s+9bnzXD71xuKCv6ObT3bGI6ikvVZhHyiUbuNwDwF9pKox/b+jjS1WxgnPJjWZ9zOte1A2ez+z6TOg2wwqCIYF+qZPKBISfl3yjV040GFKkOueP6P9vljDHORS2NG2/rAhWRNvQjobLNg8OBZzKcPIXlz6f0y2OilAk2q54h0QrdBDf03E7bMKbO40BM4pxKglN9NAR1Rc05LWHzO6yqYoazxthehdygLm0Y0OF6otnBZdcNUW+0rPSD47lb0lYOqSJVOPKH1xZXh8dvzOR5ZGv5yQX6Dhlz/OC96lbgiV8ApoPld/bKCuwYmQ6xs7+UblEYpi+Y13B+MoWkE/nECEa+jVMcDmTAR1lzN6m", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6RPChUalES5wFsvFZO8Rv3Ejiy5VgyqOQ9KNAGSmc2Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0uvtxlqeiUhB4IYgVLKpp6MTbQAbqG7DGwYGWMeQHTF96IGFnXOSMsnDzcohZNGc8T6iEpGPlImCEMVL6PHhKfS9HAUwkaCXIySIU9VtU/7LqvA+aYaPkyrO9TzBFw39DVFaAi7w3M9Wf0J5awq/N38Sd3a0U9bKhOYfu97eVF8ZPGRbPIlo2q/RG0hrr/Varj1LCURqGhAKYFioyuut6MQ85elHgNTXis6A5sqnX00gV1XjkfAtIXFl3pHvqN05RgMg8UF1Hpz4XI/jHh0fSlxdvtFX6WGThAomwgYYENapYS6TmHaCal+eXaetCs3s2IIxyONIA/ypCCOtXCg58JOXRkllR5sbU6ate9huCASN1RlEFFcTqQl344Z/0uABE+EAXa2mfZJh1J5Ufr/27v1O/MatsJ2R", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6SZ+iMW6Onn32Guk2jEmf0j3uiq6DJseTSYV6oWwT7o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DdAoAgOy4z01NQkoNCyjy5L6bIxIp26We1kVDA4ouc8A0V7eQchdP78wRWbqT3m802NAeXUgbtFf/5TW7BwEbbvcKBgI65D+u9UGOuB5GzIrH79Z2RaP+DEb2XEP8+NRV3nRpb+DModJ6TZkLSmENbWR/sukA36GBCfXyfRbynPThg5ATQL6JrbJaDQ7md64Du316sWAfqncBNUQpwwLFugc2o5SqG1tllkvP6Bhqxv++QtU3AHvmO8A3ln1ta3QOqYuLjkGJJ0YFUbxEm7SnihJ8Nfqip+jjV1cSFYtLyFdAk7AmdHrYbV7ra+Tm1yhIQ084SmnQ3N7MXAF5Ob7LskpL0DnKJCMiSku4XlAjqzCt9iKL/zS/WvItJx1xrIMu7UI+ufub9BFLwA7SThsbrQmH1tSKYOd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6TODv6V3YbMxf8yKvbBTgvZV+p4YtfUOm2lpsn8w7gM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gKvP8+t9HYC+myhRAgPup+VYPCL1Qv3I5TQeFtDIwFpXVV4Ug7kJbsOdZEjMNaAO/XKMJi2rIo/IYUy/+Qk40z1QY11dZ0WXkLYAmInxcObymvesapmnEuYS+JHLKAEeLjaaXt/M5Wse8yEnfoEM92fZGWx53Cihs8BpGipsvYqw4yXuq3PFtO5Mb4J6uOG3rzdV3UAKi0XuIRi/0WDKn697Upa8j3z7qcGtqNVeNFWxosFxKsVyO9cATXvm8Yr3MER/JDSG+Zjv9RA9zqtikLOqucx03JgBEWlqcHVe6JrgIP3BY77/b1xZurVBLy1s53LucLfoCzmXW9SbBs6s2eeK9f/HEsZlhTO41kRUNMrB3+wLG9eZvt8YuIqdQCOfNXhRKOI6OSAcilF8ZZJ/T5R65ZbA8hco", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6UCtZ+tF/fOV702FHp9FY0liGqs3QQ/IEqGWyUxPpWk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aybwC26Vg/6Ar16pZrJeqRxtGtbwbik6DuWTAYk//4eu/G5YUO6Xq+5eaK9SKPuJpbUqL5PQ1JaQm3wSzIOKXfMu8mTP/hyq/D5R+eEHxmBmDtsCw8ZioH6TyhdqVn7vq3r/wDIj/uBw0LOm504iJOp0ykJ36ufwR213xCxMwfNI8Xz5OB9Z5DB/L2G9/qxC4gKmyzyOvS2sC7Ex8uvsSYq46P/oenIw+tB6Fc8DgFIaFLv7BCLpJJaja2x3IAEBma0Om2Jtr/JWllH49kyUHuLZE3K2NMv8DZGw4hgavAZ6rKO7zfZGp7m4HAP2oPwpEDqd0Wx+miVScKn8fLO7N0A8w/X7gVNbovtuvBKFhH9zn7+myoy+rJMqyR9qzsng4BMS2v8tSwUdvWqe+y/bcc7M1I4Wmy/B", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6VHwVixsWaY/MXErbK5pSvbHJn7awXuQvF0zypKM2U8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PDFtyXWM2bkIjETa750XulSjHIhVqNDsRiDdJZyD6z+cKbZQcREbk4ldkvCNfM6UYFtBdfS6ecZo2gVb4lM8L/wcrW9ngZfLsl9QusMkRfq8s9303ijz7vuihNfx4XCFp0l75uOiTV61IMuOGtISZ2Ugt/8PpZV1gIiVK4bieSqdQICK4pAXs14uze1GJa+U+SZUGw11pOdKZmnD2csYEoOQhYTmWFqU20VHj/JQ1kfYIjlXPZXG9qxlYMLJbJ8AX0ZBJF0up/uX4gQfbvg/1sde41YYhw1Qi3W99WnWzcFsdIvYDRSrRGDytHP0CUfmejlJrhA6tKbgTGv2/yBTZkbuDl3U6RiIkrTqyUoM9oaRHUZIUCRRO0TFjb84dY4uFT4g7wpQVLa5yIvh91frWhH1Dt9rrHwC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6WgriZat1s+pZISbXrhH66tW/DtZE1YkdF/QLIfb/Sc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iD0rh/sRxemAXqIanF2KGYonhRLHUSa3UaUThbJpqfvkpYeIIjtsXF6br51hzEVxoeO6m007t9p0L4yl1qLAXId6f84parYP6KjrVB8hUjxfNciQAHVfhNNcMNRKQMx/xCkix6R+fonbXsbt5lEdy2Gl8riz/x2aRE1/3MOh2EyJxB1fNwDe+2hLKHz/07HfLYIGe4S+nX67qjlzqRrkkD8h1b2AQtEGMtwnZU1tJSeEyfUq9WL4hIdl7e2dHqatabfvIt4iRwmxy0QGMnXFTUK3nGCwFD2JQ3bjz0491fCniX/w2jQ88+E8/v5C0aBxSUEqf5zUAxziNy6XEaw1fE1Z6TgYQWKZblTcHqQXrBfGFafhm/zx28PnlII8Z7vsyKkVcj/i2K1Btosw8NWfj+D1nl2o6uQu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6WtdtPCRCoVrwYcuI1au8+vmDJathJ+gz3kgxr0hLaY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EXbgKpRWW2PBdNZKsXNpr3Hk/uX08CTJep4tPC/7aSoKaR1tu9cZQwO6ynq7xXpHTRDuFHnigsjyW0t14mn7HiSQ7YX0hDfqAFYsdrzuXm/62eorLR0x9Qxz3lsXfG8cAZmUpkfib8Co1IvaMyZFimqij+Dff0QO3R7Khn0OFoAOefC8DnNEe3EY81EE8Hob8CvG438W9D1KOP6n4A37j2wysG3Rv2oaA3JSqjlBCa+taojoePP6YjIP1f3Ip+BiTyE36DX4UJuPGeTvcTMCt/pi/dpw/6W6PwAb+K/aJPpDa1oF9HlAle9fFxvyMrdoHYT4yC1sIr/LwF9zdYzUGRQVQA3F1RMBltIJciq+45pmGDTP6ysdJdZWPOTnqIsrPxhubSofXNmYNRQ2fOGFR97ceKLquwp4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6Wuf+8W/3XOBJsnNETWaeg0yNPsWysdfE1vLvPKh85Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KOuVz+b03vjGza7VQqdox2AtoBpxDNWz8FnW6EnucCdblq7smiox5dV3gZrDLLTGBJF9h249kOo9CefboGMvl1lAiI3w3WqR4KfOnqwDbB4lOaWJQcMqmWYfCgsx7D0gNOUJi6vM3S/ZJsfxcaU7HMziM6drbaFlHh5pzSNbx0MfwbcE3K4uI/GhJAl99j2g/hgw1TeiauoP+Io/RSUQIwtkYrLeo/PFRgeaHERL4+ZQAgpBI/3zjPilEpgcQt2B9I7MUaYPB+bZAwv3bbmo7m7j5Wy04foXRJuhv7+0JWKCaKLZZDID/JIH5lyy93Yi2Gq9rtvTnYaVfpkH4OQHAJPr/3wNI5i4bTheju9b/bktHb4pPupH+sldSLfMtKoVMOm0Rx3bKxRzXSect83F9RF6UuvWgd5o", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6XWsRMSEBpc7NJx4dqCRMKZ4rjCngcgcsrQA5a+8BWQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dAwkwa3KotLpbGumPAPZPyxfCNP6R9fKhE0ib80xIcpwYHMVdbC/UPwA5Sjb5ijk2XADutpzyI1C0ZNM7zlvcy72ZdD1NagY3o7Ifb2FwJb7CnR1iPEexS1evtIoGN2ZC2FNacG9P3VVGwiuRlrCMPCMEoXsdtASVltcWc+mwxcCHTFCnBl/HnMYOvzt4Ak3k1LUSykGgP/8F0Ac1i7fd7uo9yQaWGTgvroCcIoJQMJPK/tnMS+nHZYGwFU2DVSK2oRzVYLyLL8IHw5kMt+/cK+P1DU6DyE0LI848dTvCrlneMkyOoGMh6L/WawtWl4ieM2RPUSobg/IVBJvZ/iwzeq5CVfUgmVa783iYVDNoLsuoQLTAF1KHCEgDRkmuGX0qs0HVAo60J5L2B3jPzSkNZd2StqmV1Js", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6XlBa6F03P1rjmCz50bBlzpTqW1qZ0X2MtzdvGL5xrE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T5e04QSrFF7Y8AxhKQGF52wil9B4Scrgvwe5gQrqlPlIetSk+5bFfHnz0hlT1oKuyUz7wDujNkSRMdbWotMiF7yPZFDX/svnRm1kp6hJumW93jj2BG0QyJpYtG8CErs6OFfxUUp0WqntwjB4/WOxQ3XLwdnBQn9nuKkOAl2pvvfllwCNkx11wkPwvmb4YU3Ko7hkxPH8tt5pg2tKa9tfGUynOYtYzMks8ZJLdBtlHeLuRMP5b1ZRYnpXe6Ofo8/h9AHWmpkVh/TI+7EVApxPzuRjrY1Y4cnE24G8k4q8BeyzxfFwLdkJtf/D3fUonyccjE8hk2anQER9VwT7uw34mcCEBno7r+BKzTYREJhhQj68g9WHokM9nvx5V9L4cPITqlWIHTeX3vKuh335VkoWp3OxWXhqk/1u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6ZLuCnRxZG18GhypYodW9xqhhfxB66//GVAX0ISZoF8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LDGVAM020lDo8IACm8SFWKHpswLDLnEmTpI1rmtV2sVObsm9mHoVqEA/m6Jon6K/r2qtUhNibkfx7lz3VXlL9Vm97h90Q86IDbj0/KUDE7255o0q6Mj4JB1ic1rp+y/LBrdCtNvDoHEsc+DN1T1lQETycUyLORITogthxd+bQomhi/uBQ9+GJP/MedOKkzz2x4BCvwlmZ08XO5Y7PLWGOKBnXPcVZZwHh/nDzzJHtvVxPa6QY5BwuTyFwl1XJcwWXiYtz8Sye8ENMlhNeuLW6joj+4BljvRlYKeqsxKrjxIT8uaUSoL45j9m5MCWTJWc4WD3vhcw56MuFP8r4V+DfodAlj+CG9bXEPKGA/Aw3bJsqnIEjT51DuZEBDuNWcj8kfCuEIHcRVnN73iw8nnB5Uft2TwZcV3j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6ZPQ3tVGfSlXmQS0GbjFsNSy6XUC2Hb+81B6pKZfIaE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wCdYif+00w7ikFsZGd3vuHFddR7EWwZbyZWS1SxZItakErIdWY7iIqaUOHDh0zkC3racGd++7dFCMVQ5cbTjpahCeBaw3+SIOlYs5KvzVi/NhndvMXfq2yuj8UcxOeI6rtfvoFEnX6yqiSRhJ3Zeu5s6alS7OAfXYY94EB09rXMcOl4NPlknJWvPwpBuwmzZjCDKRshtSGLKJqRUi+plUNC0QjVWwqXmMEumjZT3DirLjdgv882SWyhCHgsdGVSXOo55xYCTQ77Ll8G4LBMGLKnjW+JOU66aKQF65nCMWMs4dLa8lKe9MXnuhLBi+uVxIe3GFpw3CsxoQ6bLqdQUgmZCLYVU04Yr48kAFsJ3BvnEZu2AKMgZKdrPC7TheaYjKlU8rFepdRQcnmcVxUAiSzGVnx7uC505", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6bAq7VAeEmlBLHGGgLB140Z2plKjG2MUQ82bAy0PTNM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ca5oR889ITdrv+DDpO/3PO1ETHPX+5GBpx75K2iC+7C2bagiiGb2wvWCpJrXqIgEa+IKzqPdfNmXjuxzuzaUL3XpA0ltDaTelXM5AopMraiJpBnMa3UNcEmQWi6k2jznukqjMwEBzoTvhj4rnHrRrpVWhH3w/E2XT5qbBpfQ5ZuOWgZqM4KjyNlKWM3s4cFzUXhVsLJP/PlPer5O1Mpu3B/jPsvw5TPGrTfOgVFeo2zyHwt64wrluAjJcqGyfXpTwVBpJxPhFDa2/nM3jwd96affO9VaLpVOxdQJR/brPIvZffy65ue3fVZEUo+iYC8y1tM4SGHtFpG6Ht/iuNVOijBqNP5Cs7iV5PQIPkxSdyzo58MXOScuE6EvbGXJwtLkyGwiPkwedENpOTBcuunyAf/zZIey081v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6c1HOqw9FLju6eSyK+c5LOcDmgUdMrFssQhs1PKwdks", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zkL7uRTP8KEWak/UC+vhQi6xBuZUmmzg3/O8IoisloigKml7emCE+XQ5NumRpRL3GQLvU0lWAUxPrHVZmUkPY+pvnjOuUPDRRRqgiVpG6MJoWivHqi+MduuaJFz/jKDDOCu3Cp9dgI3MhLFxtYuexL3RaF8iYDaGzd/hAw/WhxIzw5882VbQ99Ea1+wbrT/qTttR3HFAb+zNGScePQ/EpxEThvm1EOlGfCEp+BRsRQ6I43xu3A2Bzg59HRW/KAw11J9mJayAzV4ieSvRQSWR59vP2AOB3VKysogPWmuele76wPbbe6+d3GnWLuVbaaRlGxkOP8F0v+aZYINAt0t8pUrlrh0+raMvhc4kcH5ctdO4BG6AQxMdgdU/lo/cbCtDTGXiFbpj6YWbVVjh8YrNn4KpakWdagxA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6dXRaVMGUQkZYtScMQWppDhnSkwF4ExWHahEWCsmQkI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S4t4Ufksrp6KXhP/nvMctXftzXxFsCRWCle6p7y3s/K8j8J7ddH/Uhr9I8GRMofg1H5IRGlaM5Bautd8/AYXJBK6hpzFG7Mn1MnEqC2wuq6brNRWzpsjMeV8ZrIlmqDP/Qv4SQdY8oxVGs8w7xaHTe5hrD40MMYhyBfdSCvusujsTFFKMWi5z0yDXyBlOiaQZylxTol/BFDFJBoPI6LrkX0uM+bmmhEhlr6thgJiHesv17qMS02ivN2pXdByEIn/q/6PNmO1BP4CkZMK1l5lbUpIP8gkIpEJVu2QatuA0HbJlDJGznIT7nKJpcxr2eS6PiK7BBDc/0WIYot9kmJIwyxmKflg4n6sgv2rc/v3M2PPsflitU78F0hvE+16NJWJToWJrhRidp3fJcKsfbyYTsqum23Qapvx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6eDooI3aiv/2kTJIJ6Inc77j4Ez+Ig4ggvhUAbwk/Ts", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c4erUR1Yk/v01A9cXAbLcs97mm/BPCq+idN0yAHsZ6aErn8gahKn+74AeVAnchm0BzLV13XFzcw5p+g6K7qPQBmLJ3nKYHbQiZdfGY1ZEgj0J5A8AgmdMvni3uHiW30TskuUklxjKN/W9Urd/rXHPcAT4zV8pPKmgcqLKe+l4K7m4gs1JE4RybIkhforf5nBdAjT06rWtdQiUXde1pvDfCPRlzQABb5583OEPVQ7MP12uZE3wjFDU9U1YyuKYTE/gS3Vvryf05xUfj0hpjtlhnBFve+ROPJ+YstIVRsis7IvApr5vEoe83fua0HeoQrviLwqitnwZ6004Bow8NXQWn2GGVXtXtDcAS8GYSzYYk3Q0koHpshnfcUU9HyV9lbedTPzrJEYha12Wx3N8SWDj6FzAl9rrxnT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6fEEJFM1mrcw/gQA1q6yIh3XHGroTQhEQ+NNgOcb6aA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LxQjR93ZW9aFlIJtBB6l60L1k3fhcVMtcJhO4IBHRYNlW3l7pBQQF36GIZMmd4TJhy9H65r9aYsR+iOZp2PehslY1tpGx55QNDR3vE1nCxEM9SayVU4C9yyYMr+rVS54A2qi4Yb+9QeaCIBTsDGlqBkB8NNWBM5dgEm6Wz5wfTVGyZmiGQDnzHL/iW3HrrdYzaAD9dRuniCnmJRAgR7oNaq3ZjACNLO81lCTVd21F2le2R5O0+xK1UJg1YU9APTvThenpY6R6GWzh0cgpvp7KVYHio/v+zi+m82qRj7FeR0NH7UqGbwmtPQvnNf92rj3k45mepRQmPwmOQZbSnGx/K0G9CRI495PpzEMqLDJnXkeJMII9u39J0ZIRTcu0hDr/oVFwItkCe5M5vWS8l0FaGgTuOhpPucY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6fv6KT2fD0QPEpDM55H8ZC7oRfqdgZjRHZxuY4t2xB4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SoM5qJJno/tgk5vZbC8FaE6K57ZhIXW1TtDQ8g2mtV0UJNMDb+vxVWk0gMuxL8L6eJB9dG49XjdjS97/FLHm7tidhHAECvt+JTY++z+Fq0k0eIqdskjcTntCgJ86X0DuNraLNOf7a4lWIpbOhgHvso2/dze0M7MDqeCTuOLDiy7GnadV+CxjK8rS8klV858qR80JhmvYHAGMCwsNx0aGpnd7nwSqHWdlUa/UsWa1GpjdZXjNSjclBVlyHuHFnqKtsAOWlGxMPQJcoRO/nEk4uysNg1y7MqvbWnHcFXxyfX0O7QyaTN0sxl4pJBNgOks9Hyc28tKtuI3mbfW9H56lE1b6Ld27rSbYHY15cCvRVby3DM28bNqCGYfOtR9RvBdCglXuvfPYfvea4XfFqnnNvPJw/I6z9XeA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6gw1njgARG8iWAkP3krDdOaIHiXa3xGiQ0F11Rj8/9Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JftPOnDP+Nbla8EARBWrgmnqgThNhJtF7kLpGBAHz3SaO8lAauq9ZNIz88r7IFIOVliumT9U7sqwyQsCF8pYC0EST1ERZI1MrNFIUDKjTOhlu42ebLzlCVeYYwHQ5Npbi7K6aunzEomoFn1fMxsfiQFDIhwZDlei6AG+EOVW1f43WFHPpURQwd1+xQmba6ZdWNh93BqqGXce98uBFYS/UTYClfWWe6bzA24dwfQ7NRklsDUVhPmVAUfj84Dx1HS6TrzEZatjz9u/Rg8KNpOCIyAtywHgShMrvqh4vIJJRW3ycbMh9ccBaU4x91VU3KeWZFQdclKkC+JZwxPF3X6QHAOdke1BhLZdQZGcYHMxpYB8NGo5+a4lq6rct6esSRPsd/XAxMjiRLS8d8V/2qvABnEdkX2J2ACb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6hmkREPUUO6D5Wkh6Vt1MQCJIkYIB/8YfrCg5qIONQI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ftR+B4XLAsozoa4MS3RbCN5Mm5HlHbAfahUAdMEeWQqJbOMi4wdrKucCmIrwHUtTx2L0opkS5DOLJEK8k3bNHTjneN6HK74+ssD241uN0rhU+i+61euWLlbd1g2R2dUtOuOd/5J/3lVUVQWSUTKOFCrQFzsaRI4rV8DhZYuZ7G20uRNwDxIOjZtWrnpew7BTjf7vAze/Vf9of7gc39PH7505Y6THOtNrfW1xs6a11MNh7BTWakSYSSLSPh+8NsGCk85P2kbKi1RMQ0JrHVL1wwVEA+8hMgoqAojkaHmc2nlN/TQW3xyLpzIf+KYa55+4DJssXVYN+U1IiLxsOJEo/LmHZFgn2VYru3W5wV6Ul92dyxnOsoOFYCJ0P4kE7GxXFO50MMkOlKII05KguyTodCEq/JBWmM3i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6lQHDLwf82I+2wwD+xVgFDVAduFRdpRhX5nqVtUwlO0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pKcWwcZGsGJVGG1EMWdSynUpjFnTpeXPAAGoDSrGypOqUfuhAzVz4/GBbMwfyxm9agrKnlnV67cZlVOBteQ+hku+jP3BNkF3uoig6R2XUw2Mrs3gwHiEInABbFfnqVrzB37NLqbd2JK9uA3SiqtdV+wSbQrqbJdtb2OS+N9yOROlF895gHjMlNt7XEBkSJa5GHm6wtEYFAimxeqnTkpkIvdwFzg4q2gwbLj49O2wPa5lbYv5qU2DrXJmTHjHCyB71Qa3A5fC/9ajWHExQzS7oihB0KQGqP6pkEUaOKg7fYiKlIbT2mOaEB0mRv+cwIBI6MNluVbhTUfvrtRXeBtAmWC+vatCBb9AH8s+lOwLHz7Oo6jjszRW0FWfddPrF+Y2keCPr3lBHhnZGZ0CJC+uR2l//k2jX3RT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6mcPIEF8XrpFS8wW/PDU0H5bFs0ORI9uPup1uJ/lL/g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2m7GRyXvpXnoxxbz03mSbdBBf1nqiZObbnkldVBt6PX+C4r8yZOYFxTZNNRLZj4ClM9k7TpD6FyYg36aLNOllbmCHR90VU3f3N6uzz63Io3mHUMqm/GnXQKrpkaajfswyxp0q7l5jqnOz8QFaV4mlcTQFfsGAZfY9YRVz76wQTGsicJUfOpeDuacexqTvA0rS8BcPONCPTusswCaPXK0p8MLXFZqWLOok8Mj3Lgrea8gIOV/MG4+IUCpvJTyBxvKxs9aKTjbOA8+x27VtI0jr5JJd+Ksh5oI9iVmCnVlYFBKozXXeATovENmcnkB04+q0okX/n4AcXYbA0RJWTOe7WBNq8HAXCX7bYDIJdEB1NaWhak6QKbk9LSey0jM9ZplPU0DGsqgc72q087Ajdc9TNjrD8GpyuqN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6n37ajDSQyMeU//ojkl9/KKaFXA0SVuL8Sm6O8JwBKQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Go40CjweB5t9JrQv73E8n3Jr95ZH4+f3KaB2MPS0XxLPd6swLX7tK0RDX2m8FROx6qAAYDcQCBqZ7gliXThd2qKoMbXnO8p8iEtK8GwmNtQckqiVQnCqgEwhwB6fkG7HKOPEpDL75HI71XA+hIiBu2OfWDkYGZgicpFPxBz3+lkiDXc+5VM2eOKlwXyGEUO4g7t+OIpeLul0JIMjknrbWjmrIooE+lmYSUu8MbsUsi4DrgyoUANgn7bvlu9cu1jhUz+A2lA8fHxlhSVobJKXvj66/lgrC1ooodswYMgkFzpw7hEtShdZ91IaujWvtvk7bymwUdu69pyy/lBi9wTcCPWjsqmiqvx+RVPTQzPdPFS+R3DMTyGF7ufVT05eYOXfuRu0Re5ItgrsH976ro+boFoIesJbwFa2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6n5WzcasdWsQZ233sTkjn+q0gwHiOtMvJPkImA/rjzg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Yn6ImAPk6aoDxEK2e9IhPVFHByv2o5cbtjfnK375bPRXp2TV6P3ObDdcD6qDdh+6E3i/dib8JsDVr/5ArFI9Ux4o+49yPjkpouF//7EtWyIfLmBvuJRx7IAe06I6B1T4srtJPy5dEOimB2WYloU+az/EydI97iwFCFQGU2jioFdHJrv+BaXwrLj55FEmNQ1nyKEbqVM8O9290Q/IMllGML92F5UKYzfdaWh9S4iNfYZkN1EwG33n5I8sVAulunyxhmyNk+DPSkNGA1HtY5UPQbpQkMidoPfglPe34Ju+139JJeVSurXdLxTTkscOnjTtC2y0mWGJiw/3TffAP9sCoh4zWLfSWh855JU6ZPG13JJ/goDHAlhBru2wNDdW1wiayA/Q2mwQpB0DZVMrWPZExXWwvtycLXAz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6nkTqdWLzrC254ipzh0J51V/ZPDN0SWT46RoHbwzhkM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dFekiH6cYWzi0PSJl2LooA4Ms2VQuQJAlYWWMsBoMSIyPpLriB897ZriSHXkPbkCV/ocdIJdJGgvkoxiOjqiSvgEBruB6bn46UQcaaK20YVj2BFBE1GFs0YZ4kDhGkXiT6rARyQHQAXHXIkNXQo7rGJz0wIrhaDjvKt1tQP+A9/NmirrRHj5PYXhGPrDXs1GuCyH3wbQPFYuLeTEsv43Tzgb5GG0OyPB/FOfsVUosxfeBV+hrfcHExZHJzcv5fZbcAlyVnClScO9FlPQ8H24Mr59mrrrKqSzWHE6xA98nqnaA5/GxGkNJez37L7lO2NyjEeXSZQCNWziKID19f3MEIT20ouGSAUO/wIuzzgpbNF4Wf6zK2Gx1pjIRpg/HDmEp5cNlOXxhjtanCT6E4c902Wlpkt+7hoV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6p9WcxsUwMjYAsYTIlj9lFu1Bva5Q6k1e85ZFHk9fao", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DfQUYppBKO3Smddu7ZZA9PwarJG1s4sSy0OyLCJyU7nlVPa4hJxq9clA0aQN7S1QfE4MoBrEUNil9nw8EFbp+qODbYrZ98fHzI+l4D0jRll4kuublYngOVKUYTFyj6tZxS3lyigE1xpiZu1tKhzQLMiVMnL7mVcgw9kIqf7Vc3Qdc45fTtM/bjLJc79CaTSeRiakVSCeIsOgOycA9b/WsHLT1pNtaJUSS65iWoA6IKguAdkibA9CZDuM87lpfxgoLZ2aBioCNLPbrrc4GaLxiOcQo4/cLxlcGb/Jtl7mo5ogU6kXrrk32wa9/mCYVO2r/aTlL8WFFXShJuywY++sTrCPjtjbAkr/tY6GTvhT3ioF9Qcw1vyX44Z+Iwj/KEP/3qT6fZlrBKZDROVCHvOk4c7R63MxTKBk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6ps8YPVRSqQnq6pp3Liw/Qsmghvy9tqPY5NCm8n8CYQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "At3bfkMm/07QRGSQtGpIJxx0Cud9LlTLTvpocaHw4sNKmjHY3wtRo0XhRvPwGc78nKuJAR9e5U9BOPANK4aZFkZDWmmNamSjIWfSlJnAu+kif84JS9JRGJCVFrxCrfgMFaZ86lRdxexRP9iiNNBnzBwVIHTKAZSnyU2t4x392pFlA1YpaoxIhj7ysWgDEuOosLdCAwj3UGmr7+6WDQ/NN7asFg+mxIFHGza0CaZl7DI9KHXTEU7Ui5uHj9VgesPPV/3lInfTk0SFLhPN5jofJNsQ1KIJxKB07yel1ZpvjjZjbC4QAw0YJcRR0azG/z/FmJPgmM/JQWcG31XQ9HFYi7EyYgumeEeHmBE2pwEmcbSdQrn+f6q6++Yi6Uym5VDA9Y4Rctz3PWSy4ORoxq09EKsIj+RBuC5G", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6qcLnbdwa6LgaA+P3yD2Rv+tJnI0SHWlGUxQKbwkjbY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OLH9WwqisYPzLiL0RSYnb5yK01sadKO0DOKsYM7AnYPls6U44D6ObHYiVhENie9ztAnUiaCbI6z6r72VaIfzOOlFV31RKpIp1zTZXRJLK2Rkfcdc5BiE7Hjvo+6GQbVBjnbW2xryIq1DONTI/YR5XIpDfyfBqmVMaMmzT9j9Zs9e6UJgYaIO8divU8CYCj2br7/Gny/v1HscbbiSQDy7rIQpokhLRGktr3XvJvFxT+d6UrsmM/BCQV8mR93adRooO3pFLqck31rkUz0c6b9kq9WXOUdrNo73/HCYR0hBNVGmKqOnvxfvhaEz/nvQ3xWIOBMt4y4Yt2twGS/X9qvMP7YjZXlF8yz0oMlOKf2+qa1ftXBNLzMYWqW77SwtNpNF31GwnZbU0eUWxNBgKULgylVbSPved9vU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6rI278i861RFSKc4vjpdokm4PgJQBlUMhvh8GM90HEk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2z3gZGIFJsDQQ7igaK+/CY0IZGyKTDoksWDwlzn6t9+E3t4flX+Ua0nIN35uOij/4Sm0IbYcn/8M1Fqz0EymZiKcQii+T6KSQSo9NBs31qYLYPmV2nuqqb3ZzCUhTcUq9R6zExLqgnjc3JasF+HCXGwWz6M++c7yc7XkJxbmiGnLU+DL525cTjxMVp/jTyzV3/yE/TRWr4R1WgITBMRKr2d1S+DyvpiSlbcm139LQnfmGGDzVSBwG/kHOZIFkfo3FyW4i5j+o1yFBqJ9tAA9h8IOuTHyGnDqhhkrhrj5XCpuhf0oxbXhq5gHx4cWR8LbBNbqnydsziEp33wY409rKNlxHs3erADHGT0XvXPB4C5CE9f6HmD4HPXgnbc3bpo53IzW7amrP9lT1BqScfUO/00jTzKOrwdJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6svwj48LJvzu0TASFbLfd6cflF+TqXE9/zXipLVLIyQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vZMxLJyBM65ekzW8+PX3LtxZ+9Sm7/VtDsE7TG3l2xkuBH6pbShLbE72/u4hIA3bT0GoruqMXcaoyMeC644RMem99DD+/hWNN9UkE1530wMoWh7fY9wi6ulreA1cRmuDGyXWqRBUb4kjof9Zapn8fzUnuSp21N2Z64OgVvZ7ItGaCrX1QFR9YFuQG9Ivpu2xUfJR/da8VzoHh4tedBsJxewCcBKb7r9Eh29cRn+lYFKVN8m3nRO9cCsEt+lA0OHCpFTY63Z9PMZ+7kBeGQ4vO3oFMxbndShS2xHjlz/OXAJz4aeSeZlSE118TOKU9dhPz5geobC1QlVchDqNx/bDzRssCGNtIcNqgcZ1va04s2XqnX+8P5l4AqTRVTzJawL8PhTX60FmPHexrydLphR0smfX1clr5m+3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6u4WAaoKA6+vwN6nt10emCatiHitqTh4YCOS+yKmHW4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "U3vLwKlZmusUVEZ10GTVtdsRBHcmB9H08rAPNEl/dcv/wV4b60wpP0LGeD8e3w2sUobzS8kF1FalHnfO7LuU+TOnbYiM/1EpLkXhFKBAUJHDyp5Lf1nz9CxwYuX7seE3pMwydCm+VV6HPZJP6l97DDNNiU6k3/7ecUjnHAywCpMrIurquXZxRivE28mPFjvq8PkefqPlbgfLIjic2RPB7mQCpgypiDVQrfhu94U90Ca6DE3DowoWMpdYhdD0GAdu4v81QnIHnj81RioA9/8H20hCK1s62nTJH2wkw2sdtcdF4txTpgtlyED4yZYHLdu9YzEE4w7T5srzR6jvLTDj8cwIlogIPxjBmigS49b0QOzUURBVGyw+jTXtpeIQklimKM0TE7x7nBATpj3EbW8EFQlNvnZgl1W0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "6zrbweRonhOwKYkDH9SADOvXExkdEEsyfs1P3IlgYaM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qGMIxK9iZLuGsSrEnxkfksc6j8/jNTiJrQ+/WrPx+/8VdF5zQgZiAjqrlUvvqLDX5Sl0XihvtyCWmwYeoudCa/VUBiMFy3QwtTfi1mGJ+adWCMy74N64gm9j/ytNzPStMl/nrlnoIJgXZ3OKk0DH+XPMnW7vQhUnEAOpf02TCloBMgXDLmY67pxqmH28uCVWVjTFpn59WUj5KO3xKmNMdx52F3v1qel0aWFoHZLJrCCSTlCqYG6Mj9i7A/b/E3IgLoZx7BIjVoVTGk/dmnRW6oXkDEuGY1hN2LhvdU4f9tKRmVxiYQ/ci28FElBkF6muhXXx/mbwspMgTByDTLcrmxXgUvErPxM4jCqOoeRwopn7f+boJoBdqv5oS7gy77zGcR+qqW71QnMK/hOP8V5IKBKCkOjQk94B", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7+OsATOc4z67lKbVHox+EdqmoCjU2Hl4J012nK6IelM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nuG8NYXlYmUJhHJM1esrbafKUaK3yaXP6vkDTqJdpxH9W9+4amy+QO8BrWJvYNUm8m96J8I4/O/gvz8+A94PjNNBV/igWGA/R94BgXem8NUBbeU+aYX8NeeAN4cxdyjQ8stwdFNqrqfahlY/eCOFDZfYdAM2DnuJ0IR86jMjI7Tlnk7JHzuTx2Lg7wcqjshy/2ftGNal136aGsayCyO6bmpHB/Dw1Rx/Uo96q+5JlfYp+a3M41uQY7qr8+1uLnc4Bx8OziQVyxtRQVB5GrurnLZyc94xGUtep3xU4ssje2QvWuTY50VoL6/09k9/RLmZ95ePQUmUwhmGNcQ1zAuOksvtLCjr2pMTHa7Y5TAIidCPZjsHeZDPEXP1whlV5PAR4dWzna+cAAie6d3lfBrzqOmZxWcKYWyZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7+eASUlFmln7IKIJbn83aJdP+vvtAcaYwdrZy6m9f38", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w3Lh69nP2go12dzIpbqllwRQ9VTiQQszQ1sZbdfUG1F4QBLWkyXrxEHJMRha32IjJWE0uLiYwVwmxyt2+XJ/mCHs54RpgNMEFl/WccmkHZg2CxDXv1HpDndNccxkYUu49stB6T1/xX8K67bRXGloU5KIScZAKxMfOeKsKcHZyaIubkDDl0MXKqbqAicCKT4Q5l+2WQuzYkKn0j7UKDXD/2AsLWX8PNZayO+19bpGP150R7haTh7V+4ALqvA4Pkk6N+z0MfRwxvQDg6TEsmgLm3fL4lZlbCmu7qQAQJZSF106JwUYplmb6qEq2p5O7el80impr7fan4zOHhipO0hEw75qRJfEbaTufM9OptRjZGTyBY4+LcpIwNkFmGZ8yoC9vHe3O5Bex4pM8B+lGYKFNzyieeDfLkR4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7+slAhzBtvR3y5wThhebk7xQu54Vgawf8NbBg8zylXU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NEW0agx3PP2OWEwMmQuvGYueCfVb7VpZsO6kMkM25Y8VSf3VggJ9ucZ/TMp7OsdK8ELK5TkNSbtlKmLvq2olGuz2TtF6jaunC+le++pEliF7fPr2QLp6CinjtgXJGntQoItQFQo+xHVJb1kExXWhIIR6c6nxNeluWGlqkVtbVs7j0QZMYWOpU3bDIzKcSJQfjlk6YLLv8TqMr4lEp9y73APKBYJnkRPYS3VAEn4rSoRECzYSaBwxLbKP71Lw6ZQkpY4ALBvY+5iAe3vyDkowfr8RAEnc+aXN926BNfUMS9rwmUQ+T86ovcMDALXtH9nwGUvTvl5u5Hi7WWWTQYC6wH1E/GdxWDe34SMtR6vEu/vTRovuN50r35xn3G1MNsU+KgJoiJhmoNWpYGxUpLR1/MzOVpTv43r4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7/UVY4VE38MyWbgox/v8SY0n4jFSiRaIpBQjmoCIfbg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PIaCHB6KgArxA6aMofzvMgS8nS7cJz8No/74r072t3816UL6KsvPgLUXhnwgOs4UI+R/6A6xDeGzu9/rVaHl9dYKujpIrenZ9secaMncu9WB0iN2UVTm4qh11XichWIyhUR/7iBNEtCTtWgyX+hO9CCQen5X4UvnSVVFpDANCdzbwUyDlfCxE20WhrbOJHSkPvc5G7b/nm8bdvTiqRpsbOR5n1i0VNsZhWeJXB2VQZUB/HUgs008ndWEp4FX0EKzExQj9qkhST6zjGPxF5qm0zh0XFRXPvCJqk3shJZwxW/6hJ5wRzll6IzbZ0Y0erAVVY2aLd8gjl796LLqF3+n2B7R2OvGQOerl9HxqLj1IQamxKsG7nzf6uw8G3w2tOYQjUynvUj4Noy4pnt31l26bgNg8A9whMIv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "701TMwWw8cFHXs1ZNKl6iLktYWAF8+RPEACn7FesaJ4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WwkfIVxpNUdZunRM98U7F/nwpd+o7ZTuVa++z04+NqA24N1sPk2OpmHDf+WwxR58tEs9tVrP9cESaz6mRM5T0XzcZ6X3bmJZzetYLIpxAj6keCnBGWvPlWOrsEdCcJ7L+AXmMgyQvI35Y3aepgB+9Kkox3R2Jrm1UCWdOnLUSClbPK6J+uQZO8vkAYI2oO8mpxabPvUYLz5pB7dsWpIJC8o302F5+R1TlQLXXjhWDFfthYyPox8OX/MUS4mG9Zp3hL84+VsLuUGwT4WkZmv7s+rTuwWsJzD0EdCTAJwi6wTQWP45LqPGw+KBXGc5TExZ0ZcmG0OHpn56YjK7NopAGaC+R6yJOtw1JqIYCmMQbDQruwF1NbSlUJKS2yoLwQzWb7J6rHyO2aiL8KG04AsNsAZE04emHC01", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "71KnhSz3ENZ7rPsjOJIYhtICBZ68PGRsC+5m0KMTqHc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BIlSvKmWQBmEVVyBEJraE4n5hRTCcc12WtH3zXrqqanGwX6wMeaKAO9qgwNELxEIZE/xDjv+X5xY7dQgkx4tGx5eqmiFVcpNKFqKmy84LGoVjW0P5sjC5sIqwEyYKeDU5dmLpjtwcEavU5VyMH8arwJfJujvB5UIeko2KJdSepU1jKTNbw5r1iAaXr7IiMk9K7sy+KGBQsubf4mt0nrtdJeUXwYPGq4RjaqG1J5nwz1jvLkqP9Ow4jlVx0UUMT2YoQ5LUgedEjzf0o9FE3tgzLVd7APELTN6k140gr6in3L+nBSg5049Np9tOCsfN1zffPPKQePVFYs/k2OUxPcjc9dPGxb/hOwT1mMhsTWOmjMl0Fsv3NHbhJqKeqAry8o+YRBwbQgCwsZx/fffXAnSpyGkGkzWbZVD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "72NeUO0mQ5pAhs2VCSwBevGBECGX0DIe3JEUU7gm4Rw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0ARHZ93a9mc/Qb+TgW+lEuQrF8Ynn/hm5i2nEHFIuDdSKnzX69ybAa2vNe11W/Sh4AhL4feQ+wkmu01rXxLTsBMKewWEcC0SgTVfpHp7i1rUxa9nUv1kOTS0wfXwhhYwPzWpRm5Bj+2C9TVpBOtF6Bn98COCaIV5SBg/NTgok43vM2JhQFv+96TBFQoOp0YKWz4eGKL6JrRAXAJHN7qNyqlkIsYWmGLKz3Uer59Nh8jksNW0B9U3to2Sd93Rod3ojCOl2sLUposHMwVXkNJ70xQi/rfKMlX1MGuWGI/NEhMTsizfOc4mA5jFUEfgceGRPn/9KOUW4EiOQr8XFE9dIj4zRE0olsORpzp2TC5/SAdXUhQQIOJ4mnNtrKNzD66lHralkodflUax5y6ZRXTk+zfdeeXWRNpW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "74ZPsWu++L7193d7/1hWYEDTeTB5qH6Ew0/zjxW05SQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BN/2dw44UEfcMjwcariVHsERYHu05ZtHEZjgBbhix4gyk8wi5BJKBzJYj1kKCmwWSzhTTtGb+TL/p5TaDwP81TUhE26++je1DOu5+upVH9tOPjcuJSxGz7sqytubtz5pmOcqZPt4GkXH0mgL7mJNssM/C4lR+DtWmtU9JLnAhxCQ6bCMqpiIdplOsUFwOzq71JOOyMGaUZKpTxnZMqcF1meyDnCk3RLC1P7QRxGhW9ADJDsjpyG6g4nXM/f9z4VLE63GBXdLAHlBiG/s6CgGa+kwD+vq0ZtHnmd6zis0+rBlk6ToST7Y+R26Eldk6ansktce+bdvL8M/jZ01e4m/yUAzVX1ocsVsFNHyqr+Glfaz9FWpHV2HxcKSD9brHiEwIYeAE+QmQj8KW8q2gIIG8YCCXEkJ0EvS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "74xindyC+Riy+0VmQFrOcL4O5yCFKy13iymPpq+R2wk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+0nWs/k3dEW3ORpaJl/CfMYbVz0hFAc9vALxJy89HvzahO5b7hlNDySG1Cgjmkin7uDKmJ336jBU3vngUlKwF+8CAM0fecwi78w2a/xLW3XcjDPq6oU/NhD+AIKipSXhhKAbcd+/7RRnMmgeYMhYPmJSE9VHiI9xVGm1eskgWPvrhVEmY69d+17eX2bF6V7e0oj57Y+wjab+4MdNmSTEKzzXqqa5xcUQHDDF4BgZ+L2ozsgQP1ECaOVTFTjT/iaChITGwZpYboAMWCFRkozEW4nkBLN9eenFXLrx2Y2YFCQm+awdPn8IwOSz5BiII7aknpEHxOq4ZIh9/1p8mkx1a1NYa//sfGYcrDFPKEyGcswpJ76djuPFQutqSe0Xm0cTWIJZ5EGnCYkDQdp7BAcagCgzHV9Z9l0P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "75NASfxSnT1etqnZWcSvikxWfC4kUwdrdOyKrcDhQ6I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rfGq+89sy/IRY/TmY8eRfF42LkIlfZaBuk2nMFxOf/rTqlvV3bthowRkdYBeXhpCrHPWHrfNroGvcwwJbCQTVzaoSOidGFNI/P/dk04NFuPyFyK1x2tKaBArYxTdN0Tm6ulfqZUmYCxAsyR5uOvcIQosk4Lg0wKCHFq8Gk5vrvt0ntw/aUnHvrxRkyrlILD/pcGGmXxs9sG39VuASKzW+y7e8WkQafUd6Al4fXDdddnCJJMNW/B0CGUyqMhzDafOxDUXvbqt8/qY+3JPQSRtQIKaEF1NkU3nBfoexPkroUpo0kBfA7ZE3/9wmu5VRR7z6qvXP4nXkh4/TOcg9m2L2D0izH6wFhJDA1zoJxkfXh4CLm17cQo4RwJ4LOQSkJpgnlh5g8/loZugaga1t3z9fUepxY6bgSxa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "76WZ30aJpiR+xOdvd7Da5SAafh+v4h/dkf1eMRwbUuY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TOdcEUwG0kVqGN5EY0dgqh1u4JngYpqPyEKe7oX+pbluOaqhNcxQBPHIs6mA2hzs57SaNVgWrQ8qimwJL4+yGFmOHKCNExNOw/L10PoCQa0qhkvXehJ4lcwbq4vuQP5BzxDUi1VIe1zfOdWJ6DdzYmzcpqt4DAGeTPEALLi1a1zAu0TTUTwgBpIAiR/gExAK0W462rPfd5d64Fs3lAyfBUcS2RZ3iCruBOXpERIVXkqce2SoX2zKAVbyAFV5o+vkW3ggLy/rI+HYMYvIYbDPUBZY0b7DmI0Imy5H/i8vPFL6U3bgHn7BoYTSRlPzkCP4q1ELzn7qKkoA/8N9apHahsBJKwnnS5JGyKF5/NszixYQMrLPsxJ02iDJh4ULhNst2F3H1EO60ksMWXcEddsduEWqkaI+zt9+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "76jpP7pC+3LR0jH9IlrIRcNtx/n0aiVWLdiUNlXcCgQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LY3/ASXfJ0owiHJtCoQAnKy2gAvMmzbcJ3bvAtmVeIyFf6XCxHm/xQ3sBPGVDukgxL76UWo9oIvMRhRTO7v0Z01p11sDoI5lj9bSeNUprrFc6OjJxr8ggbUhmVyEIVBSPrn+vG5frFtr9Fk0jeAze0+qC8z7lBoAaNfPo/YNhWC1DSFpB3qj9uyY5DM3d3bi7yHFk/3cHHU1+nbjNUyV1wGp8/rgExEDe1HLMye1+SH5FCy5zlFBnh7AvnrgucaTAxt+m91WtAMT8dtIC0bdVJ63i9Pkggf1sdgdDwpdLZstDpoAzQC+nP7mCItKj0KrP5t7LQNNRHChb82qrcrWoYlUkefFcFBx1YR5oDODL1kIpI6PBeGvsdDQvuH5sdHtElP3JzOoots5gv8MFyU+Z8blvB5xt01/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "76oztPMCHOati6tanppPw2Ga1KlNPVvtSxRQqt/njY0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Xtbi+0FnOjQCiniaVtKMwHfztzbJTUoFtvTA7IavHr16OYks7A7cAFLbVqI8jumHMWKSPlNs8vBebAcPcU4p7xEynE5S1LAA430XXGF6UMqxL9peFD4sr+6Pu3Px5PfkFJSttvJuDR9EMCjQ1Nt4S18bf+nsrAruwG8ebmBfiLeJIUK9jBrs0LqK7QDB01lJlO/aGMMWirP1hXT9WR8ZJ7JlAY0qFpfqpwITsHid+HiPLK3iaSZ2F9MEUGC4nJvinI1tqeTjccS8iMXNEar/UQWrG/7FLllu+8aJvGJvYoaWweXDMoPrIzH1tejhAPNEkHEnJHMGqOu4mvrNJq12S7JNcwRPoHWdDEZwzOc86VI9fuc2hE0lH/evlZObvnOX/fWkNwlHOMbBGc5Esk0dHDHql5g37E0y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "77CmQz6shAh/Thq3hj7PYLd50JmwhEF/9ZOtfHnhjfU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bxwsSzHwnbuAnXzu7EivH3M4BfRMy9FmppeI1Hy7HjtjQqexGIT0y+wLCC2zH7VrwkQf4S0x6wvP7wAh9rJBroqQSK4oTwGVRBqNcKC3syVO9ydsoTRQjewM39t72MM3AB2YmkUvH2R4MSpwECyEsZ4UBdAEchyF8saqN4OOv4Uf+PvXsXdLpukPTO/44iT09IQYuAvdh3pDjqpGRWdov+hlUrBvO0PtUBDO6nQAbIuyNEbCmXYZseTR9WI6ZKtP4CzgzTexgu/npFgAHjFXWrHdaDXUbPLBeoNDrFdVw9ZkXsofcOSJzvvG+y6dZBav0DMOCIHC6HVyQsjpGf2i6UJphufdT3VC9pzV0nt6bg/LB1kuRQYmfe5SDICew9k1jvXIgNK/Rk5IbHtYnZiggrADEi3yrGJF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "77PbSMmz8dx9CVaD+Y+WdcGVAWmV9DVnO+mbEfdgUNM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WMX+kGpmaTSOYs+FbBsdFYbHn2yOeDIXahv5eVI0EP+quz8xEKCXbdCOjwgOUw9pGiLWPPYFdG1kHa4wLoLsMZo/JnhUrMDI0IIlSngI16PAkY5KqM8ThVPvo/YL6fFNYML79t64Pj+93Ai2SDzc+osWnPAelGpbtHoaSzQqhR6UAZo0lGe2p4b3NuQgiZDCu6spwf0kdjYlwq1DD7Op/STrkxJl5WwNXBvZ6naYSFFv1zjC/DgWAsx5HhFOsitlsuo9tuGcJEeaVhWfaHYvyBrNn9J5HTQtEQhYIfKlSHwravODXpVf3Q8R7+y+z2LacXTbKDE2rYOSI6kNlOe+DWKbQI556NVq/HeXNtgFNDAze2ssoYny9Y35Nfd22F5MNOHq33cd/iwLih48WaB8GqJsxqLDQ93x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "78It5gj0LZexI8adJ+zK6uYaM1U9W/9ilS4oZeo4aRI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FUxeqDuxbaH71ADw6nHZowh5isRyQcKIAbf+wt9A5y4veQ9r2pt1WYAq8zwAhZWW3EHSfC2MonDDEhmNUjWtqO7P3c8+2lV18Ql5AO6O8cGo55uIbHMAIRXtlXP865fvtRXITFsnwWN8PlxjldlG8fJGnp/r0pP9piP+9M1TGRiX7uAI3XftFGQIVEVDlQWDBMZi2R0S4dwSvwQcxNPDNzeH4bfwFXZYuQrx/hXQYzuVqaYB1y0uqoPyOorrxKf19PgG9sz2wqwvcVaVXO6vaMe2h6GoWEpn6aoaMaHD0LIRWczS9kfRrljwh68rd6SfUjTC0iUiGh+Bw9l0nx8362t8GKmn5+fpJ9nIfCQfzHDhNyUNkrsFXudxUWk22uqpKwjiCWxhbq0IRyRPDLekxjAaLIjLlC8M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "79KaX8IQoaI98t+/pqeJkqseQnaX8Cflr36EuTSNjRo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F4OaZ5+3xTOWMQeLcAPIMq6OndC1H9uk50mfbPnPi6i45Ak2Txsd/jbu04R8iL6EckY7CBi26HbvGgWrt1BYjUfGEohEBPuDj+68WaU9PPqFeqQBb5P3e6vrpx89T4KH9TO7xj2KsVUEpvDgH1mWdoFZ9dJzjv+tMHZ2VmHwM7UfDmSZb7/HDdrcen5BG5qVvqrAzeAd9XkTC/XZodGYL+mG7L517kwQBcwyUPoQzNRqXQIRbL6H2RxET0K32eho/UrzMdkvuRaU+M79OPqjgxWQYd9CMLcXhUfnC+AgtrfMRg7M96Q9jGFBxVbrmTOpG946nXYC0IWx/wcTCOg9EdlxU9jtfXTMwpBGEp8YpyNumksc0RoCWWnVolcb41+fOj1RwUIi5sxWUFDQ/W8r9JmWTvpvq1g4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7AkLy6FxFyN8mYYViLphl8G87+FZFRv9Wb5bTAP1G3Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "D1ijIGPJP8M65jhowSR1qBPHKgBhAR7bX+AeSw9LwFaPrVAmE0Snil9hF1Wz49Z7K9zDJbUgvb+nx994f9pFqkU4EZbl3/6sR6AHWYd4R0pncp415q24eePLpoxDUR27PpCdtf8rvaXWhZldk/xmCwz+1uTI5/iaPI5nsqYRMKT9oi7/RfzHY//21269kuLdplQkhlo36i0vxt+uPzTi10jEWtclodFju6Q0XUv+1YrgMn0EKODmWiOwsmHifcCPP4Mcv3Q9UchrXrUEfl99GJT2ho5K3qQTDaU+IAYMYSuMPH0TY7aN5otgs+rGD82B2SOzQxJocY11WD1dbbiZB7L6w5T8GLWpylKYMXkg/bmiUcQyPqsS7pPnzNkaehDe8NcnKBvw3Z5jr7gKLYzkHldHPqgJyJ0M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7C5MUv0bA3Ss3IUrgasWwOdaM5f6BA90/M+Iai6vmDY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WcWR0/dgIQU0Tw8Ow4SB9CkLeGJ2p8iY8OVWJiaus5w/qNNunXjzcPlhLI9eFgejC0GGUnNiV4qnMNtolewny27PXMgq86r9FC461CEAGKSGDNbTqwzxGpYy14dO7gFOHBQAugASD4bxbMTxVGoZRN2XiE2x75OeUBFvk0eAIj9n0Si2I3wYGxt1softA4WGERfEOBmaLE2qEbJTQg1m64jYIipBIi5xmC+gl19zKS0Zz7LIr1+HVfzonw53XcaKTSuH0zAq5RQuTFOtByvYY1ohX0qoBiCAaTqk0L/IA1JMfJQxfAYbgj4jmpXBVBHkNUHtwhpQcEjrwSvWN7fXOKXJxjl0uPG0NWe6oxpeEQQYeR88ELVSj4eVriPZSfDnq+S8nXGye1N6SHl2/oPO8Kz0u8SWr6/t", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7D4QJyHgSNrx0UkNBufJ57ao3kq45EhfWJHXo8PM9VU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/VO8wVcxa3uoy5vJfCWQRnzvVZ74zK8nfKuJMEyuB8gD2BaFehOFvcjjMGEDxRHvf61z+CBvMtZP/7t0kmdRUrw6vTil6FHBpszEYYcUURT9pgCYHvZRs2s0lh2IFloO8axLt0jdMrIVBYBX7gRUN3UdRsN1cTQHYreeD4xdLp7cSvUwq7o8KOgrg27wgXESQ/sKnFLUXxswsGXIHxxKWx40dgZS2rL/Z0hp/W/sFnXygbS0ZHa/2tzNLKbAblnuifYaoNYaYbHh2UyIsyvwv3Y77ac93VgHyWAIOpxj+o21nn4TymGJ7XBEGozw/HyvGseZH/HVjeoxlHEbaLL8hTCpuT4VQjWU/WWIc0jrZltmi7rnCmrRG1wKHYuN8a6MoQ7YDfE6bDwSLi0GJAPlp8JBCpUlNxSH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7D8KItljuAyQt6y30RoWFcaj+uCvwE8pxpmAZVjcsOA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TbzGUP3YgK6CT3w8tVfev5Wr3Rg6ojPZAjBU3qmZUmoACo++rbnHoD2WHxwX6qUEMKwzVwA4BQE6+Ez1awvtHAV8DjEA51F5hqpzOW8SwzWbtUzoJLWRdyx6SuVgzLZHKfxIWZHitKnG+uTv01l1jQAvDfwtyC/iBCaMInCmNnJ/GUkl8kHBpZx1bsaDpZ/nmsBVAXgs/r7/G5RUliYc+1iQjKT0miQRzVxHbIb2xOJbDIID6zTumaejqOBxj9phCNhn8f6Ruh4HZ6AMzNa/rVvI51YSTWS9sbeJE2ZhsUX1eeR9/iSEyDnGr0Dxgk9c40/b19U+DuanbUJ0OuuIGrgxlTYF9dN4pYPbF8EO1IOlrM9mUEZR6/jpWGGhG/m1EamAm9aHWINa8rKuxp0DDBTdx4SoprCF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7DaYWAzPA+HLAIuWDxgufu/4Aga8BvxdHdhZpmhkAgg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V0Zm1bhJJ2Ple6pe1vwaM2dPMO2EagMBYbdmxhR2M3qEkHN3/DE9y2trKusS/X5mwNRa31s2g8Gmnqx4TBXLI8W80yNwmySNRfrXGf+kT/owHsX8uFxMDqujK36HxPd2cLddooTUVJObanQV9Z2A6xoHUaCuEVFV9qLZc5LZjzvwD50D0APoeJp6WNQPMUyoIxssAnJMEyX1bJZqnOsvmHyDgNIyPd6UQGjUsVSz2gso8ZidhyCWkKgvBRQxzFwsWstcDe33nrGv/iha4CV0ftTiVuWCBtC7y5c6XnR0NuOn8LdJSLic/LA0W4Yej7sd4ktCqyWqP+nH9cRe4lWVwp1r2TTA8XodPwXCW7MGL7LvVTvrghfzdBfcI0GCwS0yaAtNTqwbsdhXY8EVHNoJHPZZav6r1Hpl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7DoVtZiC0xGwDZlu6u8Zvo3u4o0uCM75tdNhOZ0hrJ8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Zzvf6680H6Ujno5Jxv6xT/iE+elz3ZOFaKCUXBtUUKoMZTN7O4EJ5P3vZ+JLmnjD6v04vFrxo75FNKmYCvftPjde29ZVVuzMNteCXCq9FhQe4/6LhrF3mSGtQ+fpGYcpsz+sd4TU4qdlgYy3qpCIy7TmsoT4+9Q2v68i6yDAT+bQ6NtrK3L7YV+7pc/1cpl5gnR6XzK1ZaSnbCo7cVku8S3f4f29IivubmzT9/dtd6VGNoJrnPTZEVbifkoMVHwJUq6u1odZNaoaksAJTKRM7MGLLpNABGz7d1uq+e44SRWQ89dVPTGB2mUS4YlrhuxzhqGyDqN4UsPvGCsOPKaxz+a82RFehJO7b2DyLkaKAiMHGJ+3jP++oQ+XML3pjgFQJwU8w+Ur1FOhk/R1cGQe5F0btMQMngTz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7E2ZYK9hkpAdU726VEbVSLyxPRRpcd8bnc2ftijnOmQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0IhceszDAUo+jJ4xpqA/SA/a4mHW0KiuJnQb0UNGL5tC8aKJO6RZR/+8LiS6A2VRGgkz5gMAAaMlOZZgCHipODKiWJ7LX9EWqn/ENib2/IBOq+M5/1C9SeahRfTsKBZt/i/ypgXdDtFLlck4NI8isNt/R+dcxtjqeuXkLshJ8x33nxdGqRoa9bhIuJfkGzG2frrLYYbye5LUEfs4jxbM+dMLHOSQK+qZcgtnyXfSL+AKxS1NrDHBXo0iZ7kxbmi/uZ7OiXpA10ZWnPdlMvvsMkmqbIRWff1e3pKP93ySTUu8T1MyqJi5FVivRNKL7BvkorHL0O5whwCioPMItwpP4xZL07DLxjrnt36YmAnceEMqRZGLMFZZ7+kJvLpjcD5F5ySqgGe38YtgBRO3SICERLD9rI4ILSuH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7Ec5EoEtrP08un93w6f8j2XofVsyl64GFyI48P0WsUw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r+gxZ/advD16Zq+s2gDJAJFMWKQnEPgZoepzwE/7SjjxGidiX2R7MyFjzBS1/ls2WtLPagwGeWqZfzrykIZDINu+NQpR9vovx2NHgjjFN8uurYsGCnjooKwoWX6RqW3eMi3q0hMahXpy9VzRPCo636OnXG0EFILrltYVkpkYhln5cSrak6WofgyftEwmwh9U85IznvUKe7XKtD7MMoRP+JtMYsJPaHs6ccpSCs0U5TLTPDPYJs9GaChkSNbIn+iYGsBHHPSDWrDbJkmtx2I599XLGYCixBGWBF/Qa21b2BKHTlPjhT4kDNK+2rZS2HUJG6we9Hrdu0vDHhYz3tS5UwuwSEnZkLQaT/Lc0n4mQlZ8n1AKeXcafnxuwLMnIeXuthxx1YeqgyIwnjjjL30HHLXOn5jAGfAz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7EnQjgf1f0EvriOtayGN51YeEa9rDRz4gXtUqaFicrs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kQIHUHRHOflJJL9FftVTv7GXrce/DXLyesXYP4O3dLHVkqv12LUgmkDcVhd1qyY5D9CoQDv46ntTLCNvncHOALaG7HZzjLKd+7nsz1ERUdOWfcoStOpWQEX5TZiZ610d89/mUtMGdG0Jn/mGKtJC38eAAscsp1b+vhjxr3eD0kt2ntVMjOZiZfnlZ4kQAC347W25aqRFfskRTKUdCjEI1vq6I8obPxZKT6m4JtZWJQSc6prHNN4BQ0fKnFOZXzpDC+WdZHYiJiloZMQWbHfPnK2TNu85CYk0FMP+gRzRJ8wlqGdjM9Cua0Nydg7du6Kanp02Fo4vhTK1WbpYuJySGs5ZX36OzNmyGeuJMceEzEDFhBIrHkPski24Oq2tq0/3vWcIUEwBgUz/S1zIFbznNj0XxWKdhpsG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7F6U28/J/9mmMBvu+jfZ283s95DFuXwNhe9i1lP9Wfs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Rl4/KZ/PNCvntYyWZuib0D6haHxLS4Awg8c5kmySVMDJjxL4MKfWaKZK2DgggPLPum9P5+tWTSfR8l3uBSbqNAeMcsAdz/SvwFy+bJiQzkz2N85rGXSzphcM1zrPLjl9JY4HNPddpbfH6uJ+fCiWVFTtksgDUcmNTB0BV7Kex+Bzfh2Q3xFZ+KZrxpp7oJyjPonN+SIABc4oGWwZivmb5Q7DnDC1XyUCRMF9Uq0mmyA17S1vO4O0YIMJqgmk+3+vbhoO+CWEKitaVcvEyGmUBCDWFx/VkZgexeWqyCp0zKmh4I74bxKQlhxJ2fhclXCFOva0RGQ9UOdIa4EwJEgBnzstaW+AD0GuTX0w0tYy5QmH7L4iHT/qaCqTVg8psEdISME6H77d6CzzUWep0GlSsKId0W29UI1r", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7Fb46M0ppXlxhA5s3SeYhrZgeNbwYYIcdx2wzvmZDAo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NGUFsVvKZ7ZJ6W12ycO8nXqK9UKR1XGFTHY+pm0dyastU1zIfvqJBSY6dE8eKkZjAnp2yTGF9Tlv8biqK1W6BuECDMqbgx7cUj53G8J++/emBCE5aPX9DXmcRxVQAxWBi7DvUpaHvGTF+Pey/5H4YHTTg442IQaqPylUxa5XWi0iU+Lh8XurCcg2W2SxyDrQ3csPUTb++CMkUIqPbcAIqTK/do6ni5rcR6opZ4xYgRY5zgEFboLD9r44fJ6VVldjN9FBxZcnHK7wMxk2P8TpFsmDCnuCLIGdeIrGFNZmMxqxLpwHlyeaiRzP3ZO1Illu4aH8lb6zDo3Io5yOao+cl2V06vmbVYwk1d68wFrq9xWPqrR48o2mvomPXiPU55/5R+ZfaSD9N8koHS1wgqaBkKxsvo1PQrLq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7Gtv0ltLAtkjl924tL6V1bZQz6T4OqfOOnEWdE3ZoZs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Drpk19KtcMqIbJctTERcsJdvJs2tF4s0fiLm7di0QX9yLxIJ2oAMMjgsXBRIgXDbE/kUr5JsH7wI7rxxmoYB6rE2iO1G7iNY2CG63rW2JKZwxJBhQFpkMpUT2hhiVLSPERoXhrn2slfop3e2kn+Tg8+fmURmRwQ900vyRhj3rIVW/rmLWYf51pKS6ovHfg6yLkurZPAxK2l0zRoTdFEVGaVLrwFBAPTXvJ0BodmJbbeR6hdMfIR0lOcGnwn3XQWDczg6t1o9jZvMAPGYeYjQclA0z9cZf4TawUQbVGc+exsV1584z1wppvdjK3txMLKmP9AXxGDjePD+WlkyT9a51+98Bt3yAtN2uU9DaW2Ua3o1HoG2bbzpRU2Cr0zrSByXu2smY85NLkDRYoSKlPRw455Z43dESR6/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7GwgEjjSBTj/R3VDLTxmx+tXS25scfbiY5pbG/VQZ+8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YCdyeH3frAurae7v+8B78kM4CqeEQ9PkcdputUeyypSMm/aBZ8tMvvLAvo+XwsqxUOjLQfidTFNGNyZjpJi/piJhVoI5QIanbx3RpNyNM3UzptoYJPZmgwEPx6C+oVmz4kJz/YrYp7V9TttMD+aF4+4FKzI2IWkhdl0q3811G+nrzxmhFzmY1o7iSHkyUvB4zHkMDoEzHTz29Br2rYz5Hccclp+AYsPUunJ7SofW47DziUK8qmstsED9mWy/lyuc1zDB1FBf5e99f4EVmsaFjkMhyJoU6a3eyTUJnFTFGnhtvLYbwCSGR9XrqJC7hBGDW+RvPIDCCf3qxsplKopS4e2elQzoyTlyzZTVi4lFjVKnsVl492sUEfriWFQS+Je8CDT3VlPpunHcBCAweEub1B/g/aATWHMC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7Ii6IrNjJhvd5gRFzniKKfk1TINPs4RQq2P6dDxwf+o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9Jdq42h2XIQXJy+Duv9l0qQdG33XXSOV2gI/dOO04BBvi2acHm9Gl6f6pTszf8sKnCWw0RIy6Y0GefxNXWYEeT0yUDGw+Qp6QyBIJARa2NFq13RVWfhMfGXc2K97Yh6HkUta23Q8Y221zYMFYwXwxMxoD+8uu449K1q8mBfYb0vTBydO/trnYfFiUFv1hMkmQjw37Q/UEoM5F7XgF4+Voif9idp1cm1sPIAEH0/q01X541XNsamId0d5xt33UWzLoM3OV62wi8VspHcuwT7LMclF48rnoLQj2Smq6xE+QUhTUjd4tOT+sz8bkq/PYSGK74PiJWLDr9mlLSY2fuojkpTA2vfJOoaRKASTHKbt84Mce9ex3C2nqGgzJmAUHRXsG+xCYCl9//7ceo1kamoS6PtpKSNBFpjo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7IzpWBZgVi1M3NTZVKoF/edFrEbLSMvD154r0qalLkc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MJ6OX1BE8NyoPIe5+vgF07Y3RXrWqp/oYmnNdl8XWencqLZDyw3DySTR2sdzreJ/xIZVLkuQkUSAC1Li3lh2EQoT83O5QQ9MSiiPhmhcHTIqcW+1NIXYSYcDWRbtR97cJSpokZnFxiz5unZUmf8BaLe8vvYASUNX98XAwby/khorx+bd6TsbernKRhhw3CMBm/usWth7jL/Nyenc1i45zwLHQ6uJd0m1i8kbUXX2gzen1pbVTpIwoUbguJOZ5f6zKBBjfvMEBfzYvmjMSCq/orm2KqtfPBKF40TyEogXXmqwhxeiGICwUv0JJL0lYS9pIgpvEKAtz25GZ9lyPCrL8BSwsafI+OdyQywK8PkyfuzFD5YazdgVOWxUil8INV2C4WIGQN5dUM8P4Hc2xCZc2dioL7r8U2wR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7JCyy5pdz8st0DkDRvC7aLA5Bhfv8nYf6D7f8zEsqoE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XTbmA1DW4Pcli/Egv5L/1UaJZXF/6JbtZMibXl9j0me0WAaqw8zB5HYd75nUj3xgT8OPxa3+FDl4cF8NS1R1OzSKZS8+rF1G1uT1Be6XzX4v9H8EyFgrEh/0L76uHQZTSycJv69OFr+fAqABk9UE28ZTUgFbu0vtb0HPFcFcH4XyQX7OTt9IrZywEcKs5kWU9BbJLKO9RNgQtYBsdOVvEaz0YXUNxpmtPOEYpaqUuwvlHilv86l7kAMJ9nT+QMlGJWwvQ0d/an1yu3iZ2pc2KUK7cXgXNKYBMerZWpLl+xL0QpHGeY292eS4lMh88WgytE+Dp912SjiL+75jxrnUn5oReG4iTj8wfgPaPYGCr3V1MNrrJUFDWczL0KvTi1aWKPsczgYkYCGdti6UQ4mbhlf6XfjmGxzg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7JLjNNQDr0Fut0YOkQ/iP6AjilssADCPfObLZumCSM4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OZVzCBHpq7T/NT3N/p37QpbZ8qET1AuxoxvCyTIvqzK5yrL6qD1KvNujUV3WmeBZJPY2S0200wiHW2MAe/LKkBpRU/vy3hIQvr8T19x9Cf0uZW4VxlbmMzcUw32BAeg7b48x6g34M/hcuI68AsEFKL+HXHTrEzLim60jOkBknc8Ag/qzYIoCevl7DTLz2qBix6rJSPNZfFuiGyoBAiShXyTsOuo5DRvA18LKBQcwzbb+7rASV0oBvilAt2BBwT7eaKxQrtZYW/96+ut1E+HVpftNx2RLTgdOVvpZTs29vG9RVE0fTrBvu6g37QVxYueyN0AiYJnLdaYiPYuTv0KT49oJVFdw0vRl0P6eolXqfx/NokmPsdP+ewCxulkw2OYM0q9U/+M5xt1xds5nMYgQHCJC56ZUkUg2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7MBgM60O9w651B590n6K82WDYfm6FMhH2if1+oGo9Jc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4AASwjcWLwcyENliPiFQ4zEQlpD6O42lhpHcNv5vXpQSHGvolTCj1VFgY1MWj3jEecbz+7sNe7JmsAiz8/EWl0XPznreIFjOFpJYESLl6gBvx8GcAAYz2qoRoSNNaA3dvk26grDvdCMHLNmYlb81Mg/y2It3m+NiG1uZ1Vlmi55qQUvVotsIwIuyKWHUXfr671uLamDeqeE/8GJADS4tli1OcgNwppAUhp8ruHBjfWbrmKLdRtagx+t1aZj816ZHrJvmlFeJhJxbdHFEVsciIa1N/oKieuI5ZwcCPi7y1HVylTjHkVqXmDfzthja2esKF+AIkI1+d9rBONYOD5mNWQidD3+v5O+5fzguYGKe1JA7j7/5oGn6iVdoweR0cAoKcypbUKzGr3GiKdw4DqGeImEWBap66Uon", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7NVqZmINz+nicC+arDJTB/Cg0gGT2zksFydD7TiIy6w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZuU8UAywuJ0nz8Q3LdVUUOUoO2sH+oUz6GUe494LXPt31rVgOMTiOTUvnFvzX1uInSuAjp6Y8k3uL3HhwOGkJuECx8jU74nvSGKjdMQMF7Ijfrz8CT1YSYsCwizmsouIRrcGQcpTAWrJ5QB/x9LuzYLLu4t0q/MlaYIw2WB83Z2twrXD+ZOBQadzAYO3qXYwVS/C5iwlfv2eFp9WABEEWWPdF8AZqRKHpPmgHChv55tz0NWrfQhMIFcnIoBgh3+s5TR65ZFMDb9LnFyzQNp9Vka9X39siT8iw5+SJvoHnLLoReThouea8JiG4BGj+VRguOdnvR1ypbhmjJEeT9ajILzaKn3pZW7ZBi+D5yaUJYGfvB1rvzicBzqDzoGDzS44xCEg3PxCORj9K9jOWH9r5iZJrI5Oq3Jx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7P/tvFEbyp/eM27hiYqr7drCsSSHLkMewUnXbvvnRFk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RyvxFdGPY9QggM7b+vvoJkJEDl9ojK3JhANFxbit6R/wGRFTM2ziLjAViFi6ftn/jjHRGqMPUPYFInIbffA6R/Q2BZ6HyukfdN+ddxczGX0RcjwMR2D228LkAfnqq8ZDkaVzZ7x4rZntH/JBZhrj1rNENrWmteStP7YCZhr60TBY2mg9GmthA03SawIFPQe7cYFA4xgfutwKIj+od+fFJKLMn25NsBJk2XwXMlal78eKtk6eR8db0nd95oLaCXJqvhFRts+zLyHdBpCqSii6HzeubjqLMqrZgna2NF4ivau/KYRld6NoMZeBPnpuj/ljTHnkOFQJHhBOPZmJV556Rvv4vsyE9OLNBRoJZ6BiwCs1sFRDEremueEY1YH2mcikECIohqKHnzRcJWkOB5ZFn17d0mgyHiUS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7PK0oBFeRhu0RCbQXD76Y3ir21mpETXx2PL3hC21t1I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FkguFgpjd2qGlAy4r42NnKzi7Qxo//U61yjgFacGaX+yxONzxduANEkYDFKIzbaHv8gnCQeLEp/7W2bS2gUZP8GPDYaAtKfvXp4r04ZgE/PsgUh6kAeRgwnP+1G6SNJJeYXmPah3/cMzPZ/oK+u4QZeYGBC+2M608VIs79ArY9mjvjDm/BcD8UFhop95PqClaUbfKYr5pR/fbwA5kXp9aX3bRtKXJlB4kKOjpQ2Q/qa4imCbXgX1vH50raxqIJdcprzYQBfLe3uvkN6oY9fRBdH8O+VwFBx8r+BYg001Jxda/352gcBeIZBkuNsK0SedWW8A89U0DKMc2tQHgx2YMH1EXYwkMRLR3u+J2yjxyQmpl90na4uKtb2N+xc3T/XIdhYPFJINJ67mRm7tdC1xD2hzmrevz6Su", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7Q3XApk1OTGHHqjP6C6Vhk26nSfkD+ivmmTFAyTSiw0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ETIAOJliEtNCxs5ihBTxxf29xKcfq1Kbu+px9aM4z1IbEoo5iYRMc6VjeygIxY5a8/MpLaQSY5drnSYhEVGRLKCT0MhyEFOlHTvCEtzO4EvfMIXIWih0xv4J9T10k7MB4bvYT5ty8Gl42wPIqqVe+7kldH7jHHLoHV29PdP8U3+DJh/cdIdBrmBozYKbJba4HUJFtyw2bHMdOE3sOAcvPfJKufs9Gk39fLG+j95y4Yvvrhf5jcYhSvefaUUEE20FxXRoLSEN7RSTWFI1Lp1xlNhVc1AbRFTqbShtw+L2sslko7B/DwXHv9h+mdtrUH+A58sH6rBTOIiRyBCMNr86AUxmp1f7/ENCVfn8/Q0f0OWhxCpvBZIX/dR5k1VQ2JrHMZ7CEwlzjMvaC0HAIl/VOMp/6GrfO8th", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7RK587kJOrIdegPEmS/co47oI9JcjX/1R8x1RB2ODMg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YY57cw3fxfjX4quZPcz6PGnwC+RJZy1kgsfGPFsCb1FwXuvkB/F6fJqgAh9IPsmg0rvGPRUY0ImJlhdXH0MocaPD3ZCMAywtydIEbYLMNe8VA5iDcy/5ieePj5XQCmPvg+k2e6ctUNB8VTwU47PJH65L7itVf6sZDReiT+gntOPpiIjXLzX/SsmjcJU+ThL4dopRss8rsgCqDtl0Mv55SnniMxVdcX7YypBUxGdXwRypYsUyYE3MDypzzALE6C5W5jvMDyXwEGM77KEXPuHKko9cvOo254JgU0p5fpQ4XvoVyDiu3d9j/j1ZG/s6+ryPHbwKZHXEArJ9mIYoWvjUq3dAlImqiTa2ZLGXWnwGAXrsGKoH5UnGL/6FAi5B4qCqv4YzwXQVQgoGb3EXoLQb6IM16+eO4FSJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7RhODa+0NXv3SCl6GsmIsPazb7aoRrCTWOyo11q38wQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jnSbzXwzi0DI6vdGeC4HWmsGxWgw9VWz3c9a0KxmDJijAMfyu+4WMb0AnFLWvWj5E5YjX+lbCrYbYGNodbuu70OX73V09lpLL+5uWs4tliz/KokYS8QEU3quSxM1BulkhfeNY/45HDb1VzHyNUvSaq3L207Hbr9lqu2YkOZ9i1sOH4c4BJqU6DAqEHs+fj4LMXXOI50XZxara+LYxwNxv0PzEaV3OwK380GeRBsBhbl0Xe35SGiyLLOzNM9aOQS3ZzyoGbMHISeBI4Mpm3qAtvbphYsAL1ZBC+N8+E/oKoGNdJZCIJ52gakfLxyKtjyWAd8Kj+fZ0RThvqDUEZDvxfEes0tKKHw7n3LW57g4cwygCP7lrsKZBQgcdVzU1VRXfbhlOeZf34PeCdbI/QPFTx6Poek96tGH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7RzIBTBcG11nmqB/nLnkY/XUQDvEaZh+eddmu83pRj8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UKIMzha5OBZmOqoIvgMcWhwg8fzBxy6Sb0mXllUJ7PT+CF6/MYy3QmcZU6gwyGQmPeLi1dJ3AyUPcpzY4HT0s4VvyWHC93p7bFPnph7WW9AfH0MWW6QuAWjuZp0JWhTAjHCbRBd9DBmrQ8lso9O9ky7qpfAx9zYWcheDK/8bdf6aPaTQIokzkW/wPjbdqkm9ECp1b0XNAZUQcMF2BQYvHvsDL1jCyOlC0OqFzTQcOpW9U05iPG+AMO5vV5+l8s7TPRykoUMyIZMgKfyqLj6o+r7SPo9wJH5JGZj/w6QRr4+WeH/Q1FyJgqS9cohnTpb6LKyfWwMvRYjWkXum+/H+GUynXAINXpCykAKrqj9MY18mflrfzg2VsB2kJ8NJL5n6mbYisLAsBeqmaFPpxRmz9qitO402CzIJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7SoBiLMGzkX18GYx0JnrNFYuyv4cx5woHcYZ7uvJbFM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fLowxwzCZG0MHCRiHxoK3ains2e1aBZm0nnozGstPvWRn5sUT3/wR5dlgVIQPlazNCWAcxNJiz0S93PdmhZMUqI26jLMgi3N44te0f6msO8D3rxES2zNakZGv8b+tkee7R+Nj10lfT5sR0R4byM1x7b8eJZiSzbEGGCRVB7epYsN1sxX5dUAYQxa7AWQLlB/FMjM2/FTJvRu7f1KGZ6XBXGJO27ARli876X4CsiLkc8QBdcBrvoo8tsOyJWwLvVRmIW2Kkq11JibF9Fh303LVMJ13tTqAU9cXutiOfiJSFArZstQKOTPk2IIgj9ugQeZi2ptrb7/IrbiAxAoIrjHTICdPNJp67vKxnVwrsWiM8a5TkSKfI8+nfOTFDFYK3TsnHisb5z+D5U47bpmACNKzs426XQkHmNH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7TJUoAGPhAHMhiRTE8c2yg8onaSXYcpvpX3axlSBbn0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HEROqwu/MoxIE3yIgZmEc/oqQtcX/x23lr3aMSsLAj7jaR18rIID14syIGEpzZ93idg+X9Qm7OeC9A6eWQLcwqdkNnzm7YygAq1OI9s8r76zDaVGnGmuM7ABpwPLOnWFSmw51ZIzqjBa17reiJ9qbWcrQ2uL/ZMzZK+J+S9RyChpWa3dn/LsFdXGLUJaOff6ftVNCeMtRypjMDSgGD3di02I6N9mZNIHJBka7V8XxRCba8uIw02p5dthX2skFR6EoyChAEh/7QN3vH5WUZPx0m0dr0PdcuzyvGeFAquSa4CAK7faLjrpHon23Hb78sG44HtzyGn8FK0Vc3Uq30gEGgYAoybeveB6DCLy4SGUbP324Q8QenECCuKiofboYvOT8wMsE02MrM2+tRK7ekKQb3YLnP3+ryBg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7TyOVPS7W7bWQhJ+wb2CLchkZUDBYuIVD9PH9G3EiW4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P9KFfjb8OArd16G2tr1nGSa7nsvtYFAWwDtj/1vxx9pOVRaEAt8RGhCDFIAFUOohnFRn9QsmqsKY0wSj/cCZ3bC4+UCNWq/BllDUM5olXUiJ1EcZbdTQE3bxZNDbZGP0iMoKl0FeVYOkemSExhCRjtN8hpNjDN0y2blLAhTke6jZj6PpKP8CgTEKeXoNuaz8KMzV6f/8XfZGEPjrQa6yJafdG5F++8d0/D1JubFLfemOArpfrPY+MSbMyES8OsQ2WFxRKKLb71e33fiE44Rwy1rHs2/+W3JkKis1pJIBwh9nw0LzGDu3yogmQtOBDvZPV94N0XGoBih2hW2OaXc/CjsdFUVoFXlqduerZ6TdmWgnHpVgJPXctUP1ALnp0fcvmrNYofjafkIsTOGmeNWKYWQX40/BOnLr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7VQ7gTHZIo53PpCWdwIraiEsuFkb+/LxeeJ564N0Zgs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ajXF/l1nJrYZiQoP5zqJC/ZgmC2ylHGSSnsc24G9nUB9WuvX4TC4wbm8Khkp70WwquHpEpYALloBWHa513yei/6/L67R4+5Px2S3ylgkqM+E/JQHKXyn70ErZ23dGab6Z9ycRVikci8fV/6AuV2NQDtDE84WyEW5ygF7BMBVgNMQ0nGOW4/R5R0vV6yVZKVB5fpkHYsOh0DV+XR1vvKBYWY79nqucoVFerlIzFLrbLIeT9DluUSMvezdp9W61p0OPCGGrwaKrh7qcxptHwVxF066Ntl6NY2FimpG5/Dt3sVH6BbT7JLGFg3WTZiJIefxjoqR//0798CIeLbHmaPCYAwzQ5PxM/TOlmxiEbXvHNbX8bMmTDOU+WHpn3ZHmrYele5rGs7I/iPN898UXzYgYaRrI8hyWzVX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7Yt3fr/oc1Go/pCmNIMPWp8IT1b9u5Rc7YRUKOAZEGM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9XlnCm0oBrcudCf8uCU/x66Nl+FNAWaPrLsijeFL9iwBrmyq/dW5wz7T08sL5fLroiWfn6P9tFRD1w+bAnqSBBQekoY3TqxM+OmEZUw2bcOT88HypVbH1AGeKVNyJuysqZaRXC/U5qZfRoD5S0n+PDF/Gx3Mkqh+MOSK79xEyIJyn5xpIXayA5w/r74Gau+B5l09pYk5IWhxrHoE2z4gSHcy7nFSME0dL88I8RS64/ryVfy0wVLZMPxgBXR0btyFCt2Mb3sSu1qZdEMA0R/PXmzhWh9g9gTdPw9y2jhIcN0mfEzlQXrCNQkPkPj4PPKbzPc+1XlC0TxeVmnsS1icL5z+mgMxBxKfWH3JcQg+RUpPQYTF877kfPNeACj9FdldkNxDTPeGXJVTN3YnwxUTldJCQkAnrWk6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7Z+CMlsff4wA40vLBuJywK1QZOcK3hkO+v8+2HQqjmc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F3QowBWvJZV9FcucqjPCoOpcoyL5VML+5Awy/zzppfr7Col1VD+X0NFHfWRkh0pThDyhL3OmNSGl2hL9hgogqa2Js1fJKssJWLAUNN4cNlmaeN4QRTBb/UDSVhsO67HGtYecdnqhJitlnQAEG6Pvc2ZYgAPFpwGIaBj1qC/dH28yJIwEg6sN89rH8m89HrbEts0SFvJNVzAeQLJHQRW9gmci3A7sgvVhjTVEzm2BqshDnUYEBbhTYWbEPeEC6Boihq0ZM9WzLFiEauFhLx9l/w1fA3+8T4fhq0rnd/CfeQZvL8mlwZAzR7B1gDR3HtCnTNzlld1VnyLQUSl47J/s/VU/Wk9eHBhFD+3PaMUyBHVscO2hOmFmtwzKPYu/chHAYnEenEHi+C+8gFq0QKHqy+Ebb+3qvdfg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7ZEMDJdBEm061Cj6/GTJxk7Jvxnk+N/j4haqVwGBr44", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Tqnkkgb7omZZsj3dvrUtmw+yWeMjnL0jxY13kL5BrQWtgCJujQet3zEe9X1ZTYkMsS3xKM5hZ8i2y5xGBmmAg2dfq3t5Cf7nFN7ADLnaqnYuepoCMzYjugOboPRimKYntnlZQDSdUfQAOBIcIWqWRgbDr4obaPm0KiYMET6ZCbSKUUInXhrUsCJnsCklyFbqFJpAbeL8M4mBpy/0eGMLHDW+Qj37YOJL9o+kEPbKah+ZKGqMyZe3pBF1knq0wO8KEO4rEWJXBL5pVP4XfBaiCoWLvKg5YIJtH1pSGeDdNmCAx939FbqyisOKslAcO1rW1x3FjcJHCmirauJEbRZpFRXXEKAY7apxmGYCzJGpGMO9QaW9/rF1goYsXrxjvl28DhzcFlugmXq+gvicWWeZm/G2svj2S21h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7ZOkMd4Tgbp/bzg+ZmbdFFvj9TUrExRcz65yXDqLza8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hBwxz4ImIcuqRi1/Od3WUaMLuwSuPePMcMPqaWKv2UeGEEGddMY271dQiZXP707+EsmM7jvrgTmtCt9zBaOeDtXE3zrNj0dK7e82xAYIS75ZsciHCZDLYaUq9+8RoywfSIqzk5JhvXxjAnskkbXJ9bFqW6YK3u0JdR9ChWzCCkw/F0SZ0zDSuozcDUip3d0d1FG6xVDevyEDjjLvmLxkmhvcJbwdcyKeGlmAvHLcuHp8A6O89UZpKiV7sS03MwYcWY/PYQDlP/pi8AlWRLLrSM3VcmhqQ2CVZSnqF3AurRz1yV/1KHZMxjoxVmtw29bpoFtESzcS4qPv0/xVgbixEvd4UFGYsbW+cABJEuUNYB1xfXvcLDof922NtQe4g6BwMdzq3+cWeSCFPS3o+0LJFWNuGz9eyS9/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7ZebrytwwgxSzNdUrt6F03DgHPmalMK7mjGwPpPbx/Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LLNMBOejMWPWchu34JdBxKnbKJNrepFTVhph1cIqrapgfL2pUxIoPatg/DCFZ+5z9Eh0wPSx7eYd194JvSz4cP6vpKiUP7X5jmQDYc0P28JBub2wtOg7X8sw05gNap1RRZV7cE3XfBnnadTFQsL5/zgSSeuKeUPllV6xjpKJLrpDP8zT4hkrLpt6Pl8m6eH1gCvcDiHtNlgcF4Rg0rZSBTy1P+pxaxNerWZIMnVeDzUAeY6Iv0od0ZdwXQf7JEgoau8zis1tEGaW2DWlVlkfJrLhm8nCiam/crnTg6wJLN/qC8J38sVwZGwukzTWMUOUhHqCFKbglq/Y50v4u+dAHXkwl5SYacZQGqbUh5UJRNNgHeFJ+5B4CNc0o+ZitJ2FcZLr24VQ/wjRgL9RafNxkTy1x3llu63S", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7aCuJ5mDbHNsctXdTyfFWiyscsCaLM+E1nqvfmLzs3M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aViWpCmmmo+EqQt6OIy+HnxLOe3zzqRli1hN7svQNtxSDl435Azq+L94V4CsuT5hRM+oCoRgyIDHVtbJdRC/uo3dZK4ElehoGjeDqDihIacfYWNbjsDuDluMFXn8xeKs6IrO1mM40m2yKFn1iS8s5jlsKXXtl69FIy0evphFPVEXrEQKhriAAicD3GaZAcRr5W2YFlRdFWPQNrJmhKT+3INOBCpBBdqDdky9GFIoTIEkZ+NVXzJ5+0PTsEIt4olMq986ZBIDjS6Fw22f2/cdXnknGcbbM0m3vMu1NVBUWcQHD258UagIlrPnM6rUbd6TYmZYz27vVjdlkSURLGj87XSanUl4HmGvl4z3psxMwrxraGZVAAWPOX7f+FCiHivLv71MFpa/mbHztMLrb38KWLoCY4EDnIxB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7aSml36tM34CtctmqdWCPw2b7L3T84xAsc3cTa87oZU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bCMM20GSO/dc5o3SKhD8z9lENrVXGD9frc2C3vZe3EsC5dvLNnH04eb667NBpyxg6b0SxusTyficlXM8cAlvcYzC7WOS6QnSnJUyCnLGca/3y50IPN2yyLugPsQPgOfnM56yIB4SwEv5RomVLLtmpy9H0pcfg0FSXSyo9hFeAcrwEpAqRL0BX2ohHtdDMijkAo9Z/eS5qQyy6j/9D8jWmIdrxWMME0xZ+v6k+ygaSaAMPvkBWRXWZkurp2cKpgEA+hmBAatlsiojBbISbXKS+LBYtE2/74fY8/reAwUCCbEtz2DvpWcJuTEZu3HhpgwWxfjkeJvAWG9g1RHe9UeAtKIRiaDyksrYxsExoD3WDj1ekLNlSR8bHAEeA8eyedkJ4iIullL0mC248Gvu3siiErZu7bdqkX9J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7c9bBKolrS8WKZX5BSftIEO5kzgUYne3rG4MCzmLMng", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GSUmHXWmfHk5Fx1UDFchGJKz2jX6hhGVQ0gdWzHMpyPYkV+HbD4nnR5fMiPHT48XwvqYLYoDCJsa7tLV6btCt9k34vnhlaIBp2qnSRosi/d9X1oXGqbxvJcK3UTwo7/oY7+OFjncDspg36h8yKOOgcyFtzQHmoqSniwXVBvn6DVwVqHbs6msVLYDKYBBMPUlqy82jyCST7DydfPDuSFsRPCML4nMVGaQsPbZg9i3j0wgmOUDo6YxLE69j+wstnfVkwZ0ieY+NOsC3BYvvelRD7/mvGtA2lg9iVk9IE+2cJsnU87rJQ5iflNv7trxmPzk/IMkeMleFg/PF0ZgaD3T6EDPNRL0YOx+EcOSuKcm4zfvYOmxkpFVQj1tfI1mEz73jW4XiGxUagta5Jndn5NbTOwP6vn91KfA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7cmLajBJcJresK/kkpZWSypa6PguLuvuocvMi8FuVNQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VcNQsl3h5BJ3UsJZCmyczIq7yebgYv2/jeFkBVVu7k/TzJknOZvDWNu2fl/1vjc/Ttw05VtOhI3LzvxORISTgow7rIwEZHikt14TJiGgCH1oNZhfPTLvKiuRZBjHknzpsPWZDv+gxzq4aLq6WHHBUTJgxJ2/rVTVIhZ/IEyeJZECEiWaslXbt2raw7ai9XRD1i1bS2W3asFkRcuUODlf2VykY7x7y4uSLmUTB4aitpAX9bKFkcYuw+bd7A06KSkUCT5BUSZTG3FwkLzSU3AgWOpC7zRZqWEhZbYXMvkIm6KNez4JmOgCCdMYzcZNH3Y38UdlbqxaRShLgB9fX8dK2eThO+TRRJ3OjhvTuBXzGfTXdQ22FHRarS8qJvmifmtLBQnYQzki+f8Vo3oNzLK+B2icktTQu6Vu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7e53XGhLTiIAwkxTnn/zWGa1V1HfH4kqq95W/KZFrRk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gB+28Empq2vYVJy3BR/C5u+G3p8hmhCgJ1ciXHimPVX2Zmx4mXIeGm48iI4HiDD3VA0qBpPNNYJxSA6+fkuL813buULnRJMZedfV6iaRgWNceTCZuqixExkCDdty+eRfS6eYeolpGwEVaaJNcN4u+6/48sCx/MpzfBF0DbTqlEY+EBB3cH9TVBC4Yp6cEOjDtm4ozHVM+iUbKIuojhqzTHu+16QAc/oy1ZG8L/dSAL0YN2+GG4W3mqLS+iHR/Ls2ze8N5e9laXBfM65HtEOWEPfaHjH3FQe5GYdMvniRcsrZ4EfenJRHq7j7OEu9M2VAsGQ6CxfvOqTPzIBPsGfw1t+Eo1qf6hjCMywwd+5y8Lroj+mgPW6E/h7scS+tSGOx54O3133os+28pt0hDksE/p7KnTzKQp5a", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7eabRDHLw27j9pfn7hY4qlNbOt8iIimIP2HlYoyEA9E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LFCSu0DM4T5fIsR1yYA9Tvs0WPm/xtBor1Abnnfuyux1kzaot1Yj3E19oJOBH5bS+8iVRXvasLUrfybyAFsBHgosiBWHqMHl8jxXU6WTv9hTJpK0Vuyq2SdLvrbp3s7gt9xlBA7V29WlPiLkg3fO1u3TPjIrgbZ+7i8iI9GRHNbCSOEyYLQk2kMXBtwQgSjt/0N+gVWEA/uI6ONn1wAtmX/cXhFH4diGCnpWrwbEL3uPXZdsBp9Bd0Lqkq/qkgiTvfHHbwd2czLI5NV/NrDhZJwlKAdQZXP9VqGWmqUt0Gi+EveSy97C/qT6cS9EnPFcfbdOBNa/uttdblng3jj1ZrW+5GX/fa5Y1M+8G58FRo4vdrsAkCHGjBmCZK7UOc6FmXhbVGps6aLvx/XHu8l+4NuQ9j0K1uCe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7eqexMa9u3Q5sOYlawzHc8y3ZrUp5EB6XWOWYLSW3uc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FE9/tBnRcnSvUweTaTCk3tosYHWd4RhIJJPE+Yv/RNXvXdT3NtycwTkrf5Rkei4WZuPkcPLykwgUHwzW3lgCQ439jhxgtZhPexkIss5la6TuutUtm6ftiehN3q3H8ceWkg79FxLT7y3Aej4eodDhaUeOYDFQsRcivZXYM16BKOGra3BF0t3TLl1qMHkzN3Opsfdic+lSx4L0vDlTP7K8Ycyk8sZbUhriiHSypnBDvfb2EqpXz9x3SyXqaqdX+Yo10YAVN/gWjeBMAQNVrRIcKgD+TZxbKvAdBt6/JzFDAgE9YMH6bTlwEXN1JRVo805VsV2c5Q5LShioftl5a/n8hHCyb4lIP+osCSD3zK2YcjAkfvc1hv1ecK3ykf5T55Bjl8qvxwPtS/pI8RuRzZhSHbkPxeoZczue", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7eu334eW6YO9QrH8xbujB/Y17+lxIuqzuC7uH1YZbM4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NHNyfoAuzruQWy8GnqbIFcxyUxWHRbH7lchqovYFGPVJQ26Y6XJNrLHnmqMHpkIYYXC5rX/c6UxMD4YLl3dUV1sBOZ2/orsFxpWHsztHUs9b1GnfnEcVHfGr278W2c9cKjL4/ZqFjquWpU6YGxDp4M11rxbaKaaZ0IsyudLPIOC8zWQPv+zO0p2cbn10ZUHK74Sc0C+5d7yA74T2qw714AguXH6+kTQENsba2+9Rq4IUq01pyZy+5sERUTiE6RwEdjiG+2HLBVK+H6iFN/SsxRAdh3cFCdwrTYCGiQfBU6jNIG8Nwk62rXnVRP2voevn8X6Su41tjgudFyjHgqcTqrw4Ik1hCEADd5pR+TWEPwvsNg/0v7Q2yxNlLQJaOIrhFMjuE5lMsqEt9PNY2Dn+rnyyjzfNB9sw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7f+dN3VVeyyrGgJtEgagjsIs7a9KaoKpbcRR789oQO8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zcVedItK0gHt7uHNXDkCpiFxX7BFwt9/b7zfonvOMuWvY6lYMT5knbuSwuqPnum5/iOH0+8BP73Xrl2BebTVtRlYACK9hw1b7v70A849+QKsR6P/wuAM+TCW3t9jIjQlhWC3IHISjpl6+I4sBILO1PKr+LDyzyL4eBkRYh1ZC+Ql2JLC2JQw/NTEvGoXFc5LDzUDJSE8NyRQ5i5y0mDYvu5FvpugFL6SJ4WnmUxuMPdnHEqMVJm2Mi/E6yEfYkE4FXtqL4n+JCdE2gjAIPrczQWh2i8hzNqtbifw4OEJGXcAoU9wRzR3Yuqci06Mb4pEpzRJIQMRzuRs76SJr1EE8Qu0BebdOUHW8FHO4bncXxoYVNUsEgdZbVYubz0XsTYF9NgU7yj5NwCR0RKJdpUriZQXs6mPRUxW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7f8kUexa0C0elmgwqofzeZNFXoM+dUw8a1oS0dOYXiM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eflqfp5IBfvQcJHfFVVmbzjQT7fF+nNBhrGwd9LqCHnVgFdK+mfv0J7hK4dkIGo/aGShk5i0/Fe3Yv7IyPT1/NkSyGkWBnqit0arB/IWvlYUdkF4957i7FZQemAMDlabIn49/tcF2CxFhXtUYOhQzj89bUJW35v2520eDaEpxKlapwc/JQpf+jdzJdAQSUYX4RLYDIpsVn7N4iw2HmJp74G/h7NYJA+vDRnqfD917OkzklyPMfqfJvihk5jO334xbeIXpJWlSkeRtNqm90PszBR7S4+HVtSMVSdg/zKpKtoQxLMuBjE+aJJ9kYNzsdUFcUMiP8Gm4UGw8NC2lDIGDfs7Xq52oZmICOegM4fBtHEx2pNjvuKo0T4Hh5K7bP2Uqb0dKh+/Z8DwK0zfD6mA4Bzf4nRhu8Wd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7fnS16sC4aPJxPyw44szRVx2fp9zj8wlrYIKq0F4umU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Rro7UQI/rHCZCbu7sX3zWKQZDTRbNxq0uV2LK6iLvLTMQBX0JOuHJ1nAAVpuEwcGcpM+6ChlTZP5GbX9ozKUQIz4GGCPOix9VTp1DMvT9HPRX5ye0jNVxaVV5BqkQvIR3uqCiH5J8E259jWkc147jYOWo/I2gA7DS6vpaQattV6i2KJ4/aDaFn7ZYC5s/0yzkHjIu9m7ym7IM8cRDXgSv9iIS3KMjFei4tF5uVPFuE2WGkq0mkhrlnJfncQJTizLSh1JDqavk5Ck8D827/OAK8OUnMM1XQgBJnLq1ck4BSz+J54Vby76Oa5WZgWoHroM5gIQDnGexaVlnBkMy2c89W8OZsLMRYLvc4QZxPm1Njd7monwM2uJWQJAryIhrXEAno/sXO29AK6mOCUUFY/CMTLQIeibojhA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7hsJWeJ1VZFKH7lUlM6bbVfghtRqIo89zpHhPNACwIo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QX1ON0sfFsZTN+8KdIeUlBoHoIyuCssSN7w08XUOEIxzKqFvv+2KBYyilD3No00jfD9Ir3r8nylufzKho6VzjpIOJCiu5HAO7VQUBIbtrpLhl2Sx5c1X5bS7OS/GdkdmCF4PloGvf0LTEZqBBgvA4OPpjhHiDcBduW6/R1EfHYdkKzLez72Oo3dvJzQSjdFMbT/Is8E7wejf3VACqzpoWJgNaRW9aO0TdDoh3zZ+BP2hjUrVrtBUaDpEoWq3+dQrL/LGTllApD3HAvq1BWTcOHbhMnnsnK6Ed6gZDURxot//vIvTVMpB+f50zwN+8vD+dUnBPRrYf4QbqcwA8LCNvCAj0Il0Lwid4bduhyTbztsuiWDtrtYIny5AHq6x+kG3jczZzoLzqYBnC3B2aYmeXb5Ap34iDY1p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7ilwvaoQRvwQEy41AhoOMO2RKpS96WsMqwzpbgkXC2M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6IMxS4+2vM3aOTjGOy3b6XvT7E7O4pftFTSg7vlfBvfZ6vtE1YG2Y+4dnx9VT5U3ZeoFxrOCTW78ofBCaJ/T54D9p3sEU7Cc7S2NOeUfC6KhhhKAx1/i28nO5fsekf6iz1VJ6d8Ekzz01jiOcPzaz5wDNU0YxXByCmWyiHKdhwDW8XoFIWXTS+NwI9U5gcD6liEIdDkaIqiikIoRLx7F/WdqRF3jLGecKQFto+2c1excD8ooVQ0vgyNclHtN+l/gHbBKbo22/+bOxKl+FTc2Raxt2iQxENjSu1CqayKnqLs3zFnx1vzgny0MtxLIdfO/646mD1eUNFVUXioKYzJZPQN1tPSDB/eFk2huSXCjf3Nx9hyY+u9bhaje0cHyY1aNCpRHgu4kMKWVDn+C/Ggqi2tn1w4t5sOs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7mtPBury8aZkQy0T+85G9z6ZmHtBSf8ErtEvdSKtgc4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N8ZCog1KrVdtmQ/6ZobMgyR+ii7TdiRX1pOSYqy//R7VCgb626qCn0NG86STK2cXyhUyNpP9Emq1QmQoCDihNoFhiD02WEOMKaSc7Sj/B6ezjL2RWf1gtZen+vJha4tDUaafEdZvaiF3VeLqv9s/aKYF5eW4NRmA1HlWzvssYXJKGNQtQGPCbV0DIT7TSBLtgEwRGxAVIIf0fAob5ejGnJ2Wne4W/ZbtRTI/RAB34aOPSnKGonJtI1KxekEkvw1uRJAnZ9SwftcE3yD3HgLPHvmxCR4i4CYgDoUFn9dxvWvb48epMDoXF3TW0klmv5/7ty2fiJvukxLjhGh67nfPVBDoBjx4S3Rbcd5KWUVszD+DN/LGq1MocnEQeobf7UU28DWUR9AnHfW3otCUTczh6BL6AjH5ZXs9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7nhrGtBZqVHMnI0TxawptCTHYmau5XvNZ4CNRP5x4Bg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "63NIhDVRqpAjq3a+Cmu/GS4chd1ayxIMcX4D0wIGRV4VpnzenXlkHWem20QKVPEc7ZRlgN/ArZVAKmdJzTqEEHrfjez2ovOcbzkR5zq4J81cLeHyRKWpt/UHxq5SfKvw6AYrIqd02XQWDOG/kQV5DieDr8FIl2YnwAMOoxIGv77FHG7Jt5drTmk0Gg7zd4d2DI9qIpRv6BPzRbYGZZ4K+d1HzKGw8y2VyMoP+k1R5H5Gw5tFODpyRmgrvWRVk6mdyyEO7Cwcru+laJa05V0PPpm+RP4khCGUwEoU/ce2L1ubCw95tTmsww8U8s6ghaSPtsKhhfQmG9h29YJFhdOpzXvy1daT92e44RdnmcLPAL5th3ayb+lgY7JTIVcXGiOPhWQnye5DQ/ZEuUoTNkBgapuBG6539J/p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7of48RXH0zqUeq8VK5cF5EdS1AkjzI0zqexi9iTsE9w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fMSOUZqsBntVcNtMMmbEkJe1+Umm8J6BIsiUxcPW+GzTxd0j4GRNdYxhy2+Ih/T6xEe3+Xm0XYK4rFJKSZJY4OzEmWxB5c77wBqAkKSYXMmvwq6bzuGVgwh+J27rDJAVkfsqs5KfAiDUEdSHgh7H/HIhoInwHpRPnCRNb/ojh7GWt4uY9tG9K6kVTayPCoyhFYFJbBP2gdvJAz0DIaVXgpSLH0NYX0cQqB72sNOx3GKBvNvC5xEGG9Y8zidYvIkuj8k+L+mImBx3zlTqLnleCBOAls/Tm28efgdmp8XhsW6dyfOqV8kb4szWYb0+8uwYpi8MkY8JgW1ozr+t+R/ku3TndegTaUVLfVGc2+xGjX0FTWhOn1xScpAdaUbD3LluurHA7sfaxVjhwmKvwUict+iv4UjKyowm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7qW7HCSBQBVTKjzrP3mTRm4ipY01z8S9PIbb7usvESU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yuV0NzmDaugIeBf1hqfY4D5sMHe9JMgjw7frFtqwVqJx/IU6IKXPVW5SqZ/8D/H1Zb41tiVACmZjqrcbBB9pi4hr9UNhSnppLzKhrNritbpkW6EoRtq8fRNK5m7xgA41hb/QwHcLERmIGqEPjftObkbBAGmyOyDp+LOK6yPM9L0T1k08+EqzmJwkkWf4bx/3zw1trFDLsk8G++201ZEfnz1x4zlH0R6OZXRP19LJJppeafIF3DOFOMP3nRjjTRkD3aejOK6mBcss1cFT9aK8Kjw/KaIkS6NLCMefJOpKc1DeE8ZlsN1ME/0eWtCKxGXoigFWweXTtkN9ziHiNhqxjtbwQVHBonL7k51TxnvzWuEirotmXwrufslpvjXHemKAyXVaq30sloXAWmRg3wMsOu4+8vDuozAM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7qpK17J8YChR5FcLZbMZKt8p4uE2Dlb9cQVCkyKbTwU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vC67fqizCnLXu4CvgiY5cnDyxClBkutQMCMgirwq3VUBDT5vcoI3VWkOmpkfZovOyONCJTd3BfYztzppSyujPcmEj2gqg+oIIrkYUh4j1Fkt8WB3nBnktZjMcPfTTzc6gc22HulZ1sGmCOa4puCgGyFUBesocIt5DgQ9TyhbJjSoZcJRNu6ycGZirwOvgGGIm3iPHGvuFQYOXzA7m0MaP7y+LPZlNUvefcsyklkFKI+sE0ZG3LAZyYoHb0RgWwSB9XiJZ23P5Hcd3RFF9/Ximx8S8Z/qg1RHqjxcASK6H6MwaDp2/BVPXJKy2xk78jQYPg7dr1lQK5772qpd/HKyzi9ZqOWdNeUqiKknzcX5h+qJYlrKLkOEq0c3cjsqpr1cOUMCYAbV/8oGtbyibHNJdDlO2Fyl1xBC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7rop7eMp1imYSaBsf8oGz+2XxR/SH8WKUOm7Jo9Txu8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1VFI2saajcYrFI/G9P6bokNwnzq+IYPn96H0ZvoSDmmeb6NSdq1BZmSPCIK2BLRNhl/y8k9kXQmopcRb6rA8qkAJvEBXgu/Eqj2GxSZsqrYPDTN7QBSbx3YyIlyniecg5Zi9+upJ5ryM2jhqIYXKdf2Fi3b1Eutr+TgnqB0zgC55f8pqJBQ+DwGLDaYlrcGJWWxGxta2BEtDdyR+uQvo8JMdtWbMh/w2/vvLT/8ZM1DQuPmt03JD2ZK55reATEvkwCzdkg+DPlX/nkZbcpK/wlSarWNN1yS+TABtvf+Izs4IHO+ogHtkMC3p2mFZA+gj0XDhXBMK/ZgC5lO2mVijDJaKp1zvshodlwb0QfuMLGhjzx7DJdzggTytTsZpF5t4yInQWu1F4H5RNDDOwoG+AOq/Rkjdfadn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7u0z2WtREvAE8t5Dtl+i7xUL9aQHCWS9Qi53vA7S3EY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ugGP63yMUlaAlze2jDe6r/Ef3Os1u5FKqkL8R9nk22fqtifT5y/K6V/+/bcz0u2P+Hm+jL1urSSKm8E6X6C38x4gC5Qg9LUDf4RC3ba9r2YYYbO8J67sAPR/Q2wz7GGMmQN88izxiCCoI9VvZ49HAE+83T+cymJYorFftp+in2u2RcP28UnaastrFelbI3rejcFEDEjhmg5MakVTab2fmMMAKSKkUPOOZpQyxszEPPBlrF0Ocnvbt/rmNI7RMwDpM+hW/7Z01gck4KXdHOIqziwEasyNNwtP6SgkTt5piXZxpbMbl4UbP0UhqlfjLy1a8LHORhpPMsOlCFj3Ni0A7yuhte5TfiqFu1XmUxiVjvMmnWy8Dq1np3GtZaLzEdShBr9aMzESEY6uP4Fj9EM78/bis5A542m5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7uDczuRqqPg7yM0j6VVvlQ/NY3higZrFInHpnI3h+ZM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pdZ88kk+mmvshxdNploFeuh694QOfUcRpmt4g8tMOwDggIEHQTZgqj+QtHEUd0JSGMD5VDmLpbjTDgjouJidqiH3ePFSN9BgC1nJc/prC36vr1geLmgOrzxgqLGwEg50EzkrxK8IDJx46ByRXZaOQ3p9M9yNwbHJPguzf237lbRUjNh+HH+jpSvIAuu008B6u/y64wRNnlyX60GX+RxyS9UIXRyrsstJGpd+eLglXqem1/QWMFvGCiCzmTOyfII6nrvZl1krtDvfmnonQOWL5WJ3baT6KPuVvmita/10wrCQiUrw+gvf4bXBTB4SdX6S+Kpe8mqD4SMwZnqYQMKf/9dAsWC5UCCn8Jk2VG0uTDszhFVKk531q10lgWHeYluKz4M17GjVzxhDi8LHpJFBkzSXXrl3jQS9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7uxwinqz1vdAkdRQJxEoYOwcQV0Yz+M/S8uq1rYk7aY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aD/UqWMhHhGokdPf1qRb+tL4EguTUhAvmsRgzD+25UQALKk3RZzpmeihyQ1M8j1Lwfb8aKdVDwYGeBUYAQ4vMDY0Ts1xNKvS11r4LTwn4IYaXCe5TyrWBf833blXNCKvVHoOHVU0/xJW2GS5Il7E7p2u86pHTpYYecIfQV5q4f1QkR7faEs5HAFMUigCP1n58b2StwzTp8QY+BddjR7qcpjiUN1sGPbsmnHzL9m6WCx58fX8I91/en4ULdZACuMWInLzNl7uEZKqYhcfCuQ+CbnXjfrNlqcHDWIt3yh17dKfHZfzDt6Xyugwso8dXgjjgOgrkbKLPsB0RlcJHTqEzjIOjMkCvXJjq8dK9Fg/rAH4KOabkgjuOgqtQaFI9k99OKawyENSeJ51ksXZw5HsuiYu/VIa+wq6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7vIkGpPgdhzoiCAvfe4/UjXwfhZNShMsEVE/tc9hNtg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Id/NbUZspMJYg8NuBO1lf0YTg8mn8fUhXbV4B5ZbYraqROR+ErkSsvPFRKYTSmOncDKdkxdZ6jVW1jvygf8hA1VUDcRvHWZ9Fvd3kTM+zGCrCURelRmkSkgPxZjeUc2NgQSK5My9y7dRhpx3mBwHcPYdEsYZXNtpdPRZtIcCK8NjncjLCt0cel+MhuN1FHgsygcP8E4doa3xgk7S0H2L9vX5fMBwQVWIg/nnvC/ZjNILnHWEueJiatOePTRnPlI0zInnt6/iKAPmY4W+OIW6jXMzujY/jcXJBRbTVcO0I2Jl7CcsrIyx5/nhtPA8iU7j1HPxMPl/qUxdHx6eeV1fDkmBgj8eihyY5/97ihA6pCFOamDOKwfnWW7wRpA+Qlnoj0n8fOrLBcHpEstL+frmY3EvAv0vdDqb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7yj2SsEESDx+NGQeN5h9XJzu77wS1HkoFwJGxyrVJ/c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YVfbA0JSk7pItZe8WoFR6mvTeYmPdGEjZaa4ZEe1G68pwM7q82tV7x1Rt2nBk+/aSfdKn9rbVNlMpz4pg9rrwLoNiHnRBkqPa9jqGlVA9lK4QQ49BJISSGZv1gdp2hIO3TNV9KkH+inFA5CX3TecLNS6HrC8m8eMexzGnDBLl2kSePDNat+4sItmwNq4gYWGz3xS0BnpN7DYKJfyqWGGAzX+LWC8BU57kKKvasei4RAUqlKS4sUC5rF6jlWBACUwAqhr6LTX0IGc2eo653GEV0R8v2QR6PLbm1sH1hOeA86aD3LXJ/a1O7m7FrUYfWJzUdvBzkdv5nSvF/jfhI8WRQyz7oTr7gWT4qkVYrVydEz/ZGaselk47mOfuqaYbVzC9+YP09wL4aoooXZX48NSJ9eE8FlIP4rN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "7zb+a8+Q5JrS3Pe9y09ADPuupNfnuvDBYiQ+O14sYO0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+6q2NTb4Xi+NCRh2RgCMsX02zVujHStt9fIuI/cu4uN7IavCYKMxIYnT6sDcPReqOuSJXhUjsMQGr4R3lJW7+a2YWUCNVEbIDnEfIF8QxyYaRV/2vOQJlyZ/AvTjPz8HVudrilVVPTUxl5AxUso258orkhcddbnU+skQu0pT0xpCzzj4sxWgkZE/QDnzhzV/PUHxPLDGTbL9bj0d75rDvtFW+WzT7YKgRwApfVzYU9Vmrs0uHz3KnxMIluHEAOeSK4r1q5mlmxzIDrWolH5RFO0jS9dRcIGQotk5EZTlhUm6JR9EeH430yxmMEo8OVXNduEzY+taBG2ClO3JF/Lwmd+Yx9R7ykBQrArRQYoQdC01l3sWHU9tBCO/O7j3cGPBIZkE6DMk4hnDfNv6cjr36XflAnvdYjG0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8/b2CqShVl9RyweNR2avWkoTqekt2Rp01CiTfeAICvk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UCCQ2ji6bzTabPxhStTUD/G8Elx2KU8W4hCv4aOBDlIqNaRxjOC97ddJD8UjR8mbBBeipTVldj/WVcfcCHsdBmWbIW8l3qDI65Yv/tfuiBugL4YkNaRQoJmPTBbFIypEaxzLhuKax0Y9m4HT6m9uoC1Y106aY3I3+LIV5z0bTfgmA3n7pTDfP2v4BAUTlvvF2aHXoQnzsnfhKbonSVfV62uyODScKnDVzBMBnMvF5K0PV6r4VLuoQ8RFcFSsHPY/l1dz5xUFG2/Lt3qmRfw7DjROLSyYES7fYlabOuH5jbCGTjnISnjy8wUo4/PkJGPz33s5lrNGkpp/huQbm6MSJKbetu13HmNnTgyn+ivtk5d0qkHm/uTrpvv0s83Wk2kEeoOp63znImc7mpz3WACkG6T4iznf6TSL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "81UR3MUlf4a+lX4COOcqJNdkZ0/ZTpEyXg//ysefR6U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SF8iJ3stYMtfpibPbBHD6FcqG1fxQ7TtxtqSI3j01kZJsH2tXIQ97X0zhRUDknMsNVdpaLjKeQ0dh6oIiuIcYjex1G0vqczV+rvTDG7fzCEd3H+JXMm54C8e8W9cRkW1jcmX+9LwlTMLPM0OdCnzQLyXSW2fICdAv3dJWpTbLrTrmlT2JL44zKryfQZjM0/G8jQoJZu20f6Br2dUM9srMpwnAKYrx5SDSM3J5EkRzO5omE2P+qx9C8ihtupvqTgQrLYvI93gxkJRBKLPemJKHu6jVyQ0dlYAploaOsO3ZA9lD8B+RQYi15JzVCDVUJTZ60bQrkW0Ub5beIIKGfQB5dPtZQW72xmyL6K87A4E3QDSL4REhsei6RSUTeClpxnE8WiC/Z6lwDZK5pJYszxdQRAlLFTRm7eZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "83PondS9NgOTtl3XVQpn/08b8GQtqZ52G6OPARd4n9k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TN3IXcvJI9pFW3mTYsyjCjq0lziZ033inaAv3HDo1DM2PcJ+P5Amvhy0x5biJkoVtll2brGftVj9C5AZhmM5lEmOwbsK7ZfgptmpHDfkyXTAl5COfBiPX9ukZMJw3nF3W5t0kXrPpY7Hkc0uIZuwa3TKJ7mBTqML84mWHaWMETzxqJyncS3VzrMMThAk3xwZ588USIIefazuaPqL+lOBEM2aLe4YCBvzqgZe/kx3ot6vS5+JL/p2wV7CxIrmt3crk2xaH9QVEUFeyjG4CvotMsTKiFZCFAXyi4uEgI6zd5RNY8UmyU6F3B9OEDlwq5k2QEaQIsSReDfqHf4eQcnJSLFFLtGi+4N56+meF4eVVdG/bBahpHtEgsaz+0O3qg7NUsjDkJtCQ1+arbBFLOf7uLJ2bFDWrJZF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "83RCjRRumylPAvDexdVreb9ROMLxbyy/HDA+Do3YoCs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cMHNl5v61WmMVi+BVY8WpVmq1nlOzfH7L3lO1tUKEzycfX7dlS106TN9itlaSpNA9HSYO8TaIDXpCxOx3lYuybVjlEdNgz2OK9bQB49xL8f7gtEB1EOFVO4sd82XBGaOppEWVwNsVU2uGbWfViqR4BATTvdpnnbscu7psO6wjpnhl5CULqf8MN9P1I02+VvQbswgbLbx0VgkqsW5l/QXPmzAzjQ4x9ZTIn2mg6OzCnxfNnNnIw8T+Vr7d3xwkA8C6WvFgNsryEmJa5+Nxk26haMXdKGXn+ydl9lrvbMCu4aI3uvCkDF0wn3etaIZE1HPepODNoc9Y++Exl/K9pyu7aEs/tcPu3RILDItumg3jStwpjZML/zogOQ0M7NAkZV4dVi27AfRj0Qu7lH+3lHDok+KQ1AL4ut6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "83YwGbtl68NncKhi45BH0vWX96QVFOpYzBjTEuDcr7E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oBl7unmMKH3aKnDbIBS2YBotYxC27/oFcGHiwTM9d+Biqi/VR54BmW6PnBFlVNYesgiZ7L+mJecMAvdksfH54vqC4wh5M4rh9Stwisqd6EN0EaY6gEAfPO9rWOIU4jrxWGTU9LolBzwyQ5NU4rVj7csZfFJYfIEdms5j+FLT+tNvOc5GHuwVohytL6nMYmVb5rNRtakGlEofstVg8XcXlmw8q6opAaDmLcOGynFZsF1YplcEy0X3Y13w2fFYgBamTxnho+bWI7kH/IKrmC90W38U+lMbQKwJ/sATPK2FBbUb0TmZfqPY970ASB4Sp0B7Ad/ySXmxu31oRPAG3/hBtTwCp2zlg1lIYwXMcpdeGnvcegngh/jH2r6TUdEteHk3SvjYUSXurL2Vfz/vXVzIcH+SWkB6B546", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "84nUi6cKOxytaXiHttuxhuXcRZlpQGDs35GcZARKzdQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "svBtyVAyCIOHIKAE/9gc0F+4wowfk8+ICrH0RZyHoHo0Gyi77Kpu3XBKrVqurw6mGqzF94Ff86LA0jck5H/CNsIVlKq1SRs6/bJ/M4iI3yOkBi43li24lnu8m4t+BKeTBX/cV1LDGm6xjRmg26epzzjNnocbbdCrKDrUQw4qjhhLIN7E9aO8VW/e90OwUTrImQJCQuJKAW8qSODVJ8tjX1mhQoVHdbEHJyteG5AYtjzkqVbc0TVKXzkDOFJhgDKrNaGjSflalGaYxRolvwTZ/cXNLd/UZX4IJr0mMqNE/La4Ou48AhuFb18xbRlpaJAn0OfYyfBYFNvcbSdg8tcoPtfw38lsc643bodGQz2M7dMwSKcr8IZvLY/F/PS6s6CXD0uePF7tqCIxICf+FiE0tCvr43mt0iX9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "858USEHMl/rrt8gerXjN47+xqUv9U14BSimVN6FzfXU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6+XYo4w/Urbz0Z6mdD0D2/MV71n4xcdJBcsSTGEA47pTBYcwZoU0Pgf9LMxiL6Hvo0bZBL5WCwSmS87k94Nt6tcz1PjNoXum+bGEqRzNU8tFcycncymC71vkJjbvgNmkSpZKUgzqFpNjkT7snOwL1UTlj9JXgmQEKqLH+Cu++CEyZNGOpFkCCmiVSYDjQzS0EzkGLOqXuAxFzceE194jnu3dyoZuYD1PeXGd17lbAG1GTtKWxQolvtjK1eI+gf/dCCRZLQyktIHnT4g/K6doH5urCzu3FdjQ8bjRxoEk/sGhUXL9azrDNKLtgkrVMIzycyWUqJZ7HdvGwJmHmRpz5/fbRtI1iq8Tjoy9aS2nwjYC2cpZ37W35QhG0HQMqyzEDTcOLoJASm83OUz6kiWZ1E20FMWyVERv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "85hb61NE49c1apN55A/yZSIkOAS/GXJAAhGXdWZ7Wbk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "obJ/l38Y9DrlYWUFnP3WFkPweore+nVYiSrqEAW34CjmkBtM4HjDykzV4Gv2wl29xq/yZOkhKfKv+oqLF0O+yf948zaUknCQhey6TLz+Db/s4cM2FmD/h0qpKFXXsszNx7dYcLuQ7WUxJrd88EHFZxqrTTD4UreaRGm7qcV69bGvJnJjkYizYtXSwVrI3wN7yf+BEluWAH5NmOKi+h3VS6IUycckjCgls/ugzqUC3yfMovOYIkMtf6HRGe5DLnX1/tEBZZnJMAVRp4xY9+pumcPduUF+4pL3hHPZnUnBJkKxEHXFhJsNrCpAbatewCE7zLfgV0VqQPCwXHW/Rwz7QdnVE3JxWuwoVU7N3A5NrSqC29OORvGbmPM6CNb9SgaloXmHOhklOzloS+QpozusOngaXYuWIagu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "866bcAKI1Bs7TrHbPc6YzcZLK7k8Im8MA1gIWSHrQSM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "waWQLidpPJAe7WHrKI370lxdG96D+PDYpV4HKa/WWXGSJ7QkeWhPNh6xG3JwZ2TcjoDB2Sl7ntvMTPwS0PLsIBaVQHxBFPbP4x5t4LU3HvHDwHvbpFsYvh5Vt5lXu2gLZetXjWxRfLLviSL3eAbkMnVN16uyQReowooEbZLzij7yNhYiB5H/YUVRRXYLddoyDJjDZfgjmriHprjoOzSZYAcQ5OW/p5w1p6ybhHSESRPKkTcEUaHU7VQKiNgnYIyQOmfadshYSSG0Ka9OIHMN2fNv32m1VghGu8uT/+b1XtL2tjsNRczBwSzMd9uS3whENsAaNNSaa8o1pZAdFKPGbtF84kw8+JI5UGAmReMnFUUj6l0Xft+zwoZIJ9EcdrPXqh67KO/+FKrT8gWlteubP22JDF3SmA73", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "86bNgWq3YsJBe8PBIh8fWyPn5+VzeKVJxkG1ksQyANM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "z1y7Pue9d40VKucGzPNgFVIf6f+GS4delVPby8WEHlbH8oSMcRm82tP799ZfdRGebii9qEiav21YiheFB50GjRfUJO3C5oGPWfDgVyJgzSl97BuJJmUweG0+9nbItWqKl3szE9J6vo9jvvzrB2hXit7n7TTFPK9AiqvNv9+XW1FF7z9QobKMXKu8X1JHLdVP/3x9UfbRmSAdAO0s1TiFqUhLw0NnxQsAQkPA/Hi4UveVkcN+dR3C9PBF8J1A29c4Nh7pb8wLNArv+C7oPKH6d3vJ4gJe4L09i8Bmh1tDGdcYoDFSKQH/nKV0cAPm4dBZ6PEzOrDTTIt92IUKTiiPRR85zCjtTdMoenaygXhyCAFLK+BBdwc0CvTN7UouFu11hOz264bquEsPd3pIH2enpvJmocuYtkW5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "87K2pBWrwG0CjeU/votegdrAMgLCwjZHmudnoroNgcA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4Jh6b6BLO7PBbuleE8+l0IyRhC9ipynPXi+oAslOwqVCGYr9z9UWinw8wfxjEKoiH2Jy+Zz+7V89wkekW10qKgztiBBhdJRGF8MokNwoYjeGv1a5PB+ZpKc1Wk7zuDbIbp/uYWVSwYbqB4lC+rpHAOHcB5GdbpJQvKDzH9kBWwtkFYj0oVVSMf/1VE3cHwvR2KJjuNqKvf29Iq7iA94bTUpoFbZgEK+efT6C7FB3PaX06XuWHIUIQ8SZtFu9SSaTjQnlylOhAObTCylwzdVBHvPm2c0aBPgmVxMep0Wmej2xRHT/Dh8lBhbpgE1sjcwRVDVZDfpaK7siyjSB/X3PtCwzJWcfIQXm6kpdou7RmnPV05V7D+veqM5c7+JQKF+OR4IvE1vT/paLZQgDSqqHen61prDz+TDU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "88cSU1jZWvE/Uw4X9kkPbmBfbGV6ESCOYw0CHVMGWzY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9pRC1+eNdIojA/+rWp4teWlJtZNtRPdCR9Jb5mk9Xw/vfgDRUCtB9rftYW3wz7uUM2i/X7Wqx2WswjpfnLMLzQsJfUICPFX14nDJLWx52zIM5pctX6EAlPJziU3LScJEbo4DmCod/4Zgz10Q7vpT/ai6JL71buMdavUmROaqZxfVB//vi/jWTfkG6veD72QLiRCq5ObkT8+Xos0N8QdmFvJC8ZkrnmwzCLWzCukoavOzn5ClFqmAV6/11+btZeJ/4buktG6S5Ec2r1FVRblKbp3O5I9DWwIGpVXUrgyuwfbQmpB/CjOxuflAURMP9sMTmisYsyXQV+iflXyb1sUiOrBySqTS2bZq0GeA3dO8twgpjBXgYFzL9SEy6FbaA0DuCA40EbX6N4Emh3NSoMweA2BwwJVFJjq8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "89EPeq6fnf02CFUO8Hu8wwCrGXXL5tjyuBwpMQT04p8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/913rtBaGp7m9tr0/G+1M14/73uA99I82lVmDHpfZ2QR2EoWkBA9FRJQnT7WN4WrzyLYaF2SbfiWytG3Uba0RfzXNyBMVS1GbjMJ3lbsSjdw995ru5JGnVgwA1NYE3UsGdvfl4AMAktw7IzWWileZvWlQy5pm7EfcdH7ehGSrmVV3gFYWht1kGUAmWqnQLLFPucYtu3CDhmjTv11Rre5g2WSX6yauNKRZi8URUxVFHAEiNAWNXTpPtiA46psoxR54NrQtekqh6eFLvfDeytEgiqit9eZbefU6NIU4OrthWvV97SuMwl/qcpeLngCwaysMwHzDQzyRxVGsbgoA42kZ8e6leWCCYlY3yQGnt/jyyRIeU5MkJkN2ehTA0mtWZ+P3pY0amWUck8SpN/bIuOmA8x3TRCEJlCI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8B7eZ2Rxu0e0MZKJf4u0F2/2D7fO8O7VmEN3/NVWhuI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "osYnN7A+dpHdLlO6KeJyjSim9m7Kf4XyNt35R8sBHi7hxo6EbdmQT0MOgByzFsZFhvOY5GaK3N/rbUHfpl05Doe8hszegsHngVVv2c9Tj8esFqxCZHoJwZPQmzbL9QbO/Eu219+Scpz916EAyHYYUYPrJdP7qygJHMaaF5DFjkciod+CyGiVODccfQtHUCKiY4Dyc5qPwjwhPAhtmEyCvqO21iAOQqgyVU6bP47kxghCAShQ4tb1wTxweqR2hPvBTjqkBjRc0p3maNI14jrTMEqvbtUsJh8n3q3M1gwE7AA46xCd30KQV+47SZFKJMnOc0RAd5yJ8/NdlZP3uG+8stFuSdEeCemKw8DcJUQVdJ1NCZMtQ9ysgOKFii2C/3TUANvQIunV6ktR6qE/16Xilgi8aBH+h1JJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8Bt8ORv0NOvSCY3vZwtMJfY76shVupHUKLm4O2XRuyI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "777IXGv2BHdI2EJaF1JX6mQ5emmSd5PPCIxOPn/9e9WkkECY5vBNfdB1tUhWzIz7nW2bp4LZv0AtrzTq+e+6679vxRBXFjYhEuts1ToAxnfOHTuwwrm2gbb0T3l5UFY07OoUi0+WuED9CK1Dp4oI/Dr06LdTj/TK4JfcoaJ996yVKrCjO2TEp/tTLVziQqZe+I3vRiCtW3ST8T9bZhsuI5h7Pi1CD+Nh/WmjDtslk6YBxx4ELuPfQCrJeRgfwzTM9fJPrW0nmDiPzQeW5Y/7SS5yiklCaaYUGkwH+ECv5yUjL0SCTFiimxXgJlCqxGsWVbnKCb/jJdxIXQM2fUJCfvNwwQ/n1dzPdi3q22UUjMPlTYQ3uYLS4n3ujmGtgnjq09crAu8XGPPtU9umWh8zvOOV0+UU/wqA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8C/HrAQry0ks2NlLdAI+BaA4LWFWQbKl2l+xqAomUyk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pWzWGiMmO6vZE30QCJeIXq+6BOXg9EwiN2xw/kkLGYTQTiiZ5r95zCcCcHzngviU+HkNZUla+PzAJ/Nj2fB5dc2cRYOXPw7prKZ8NBX3xZc+KENmPh/RCUrvMr7EqzfLc9J273mMxz1urdfGRixcSrPfpirHQsZ9A4egSviQCCg4kLvu88XTXQjrwPOBRjeWv05FfaTPPmBT/4h5oqj0w7+rQaF8qH4PM3PNppE6rsMGpKRuzEGtNIah0FNBDK04iKHMAgGz8zejAtcgyKVaxLa+X0yWndlA022QWVoyaoMC0LZAAWI2QcshhXGb2FUxy7gsAgjAR4GbD5x0v/J1M247JNwphdPLlkmNaA/2D9gGrchuZxpKCDoMGOwW0vyVRJL77PQf6DqXCn6u0IvJ6yEK+AZxyTiA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8CKaahqYK+Y+SNgVCNV65jhfsa/rrORFzDsPN6sMaig", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Az/5iLd7kpsZEx9oiUN3vUOr4Vo8bkkp1cUDxnJiw0KIgsk7Hd+oa9rxyVdcYpkycmY6crSsyI7b4K4SD6HYkvNoCr23p4jKh1WTBKnbSvu34XiE+rGwJyUraAP3/ioTezT/7i3adLb48FNcQz9iP95iLMmk+vnodipwUCxTn6grgMYlzDSbzFcJ5++C5FDSj5Yggyg1KlQ52gJqxhYY3M1zAbttEkrEGf2c418DCxNdYYHdA9ZkIAcRIaJ3PaVnAtZxNZwmRoYTDuD3/btpvUrPIObBJevM0s6dgoI1dpgaYy4B2wZa8F5WoQ1h16reMDMqe8t1Dh+HHNKc/pF32WoaDuwZ/G3zplvgK4xJGJzEtTa3UrmE91ktsYJjwZk4jTroIIiCUrQBJnLM/6vE6MSdBheeSRDd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8E9VFVFiyz8l8wYpM+rKmJBBlQQ2W1o1p0HCaNb4Hmo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "woFttmTIplF641BH3Uwpe1neqShqcp8j4DvzI7lp7SXHa6PxgaXws9HAwrnIlunn92ULq7BzrZfc7l26lBeXer13mA1JUok5PnkXAy/7Jwew/pX+MCBke6/feO0JLkR7gOJyhpHe1I2LZ/n3PfYGUOYYXQPIXSuC+uHE/aVSslu0HIGnJVSlrqKDEo39TYJ6Aw0N7Qxn5G0hNWGfNFUGExpykpKNs0iuus4KRSKtuSCwkA/0U0o0egAOQ/3Oe8Mw/eidWXJHjWELKA/ULpr0hF+EkFEFhZ5WaCYFNO/5W+4DlI++BsKNzRfyvn4vZsFFcf0lbd17w1cHOvC3I73f5IbzNHsTHCFxRDC4pM5TUm2MVmQalM+DyseAd66YZEyhCxpEU3iI90+GFHNQkYt82LRUqteMNO27", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8ED1/IwJXVuCDWA0pbeQ4xCoEk+q/EKlBU479XvfJ+U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X9d4y7Ky8roUFEquDEHxm03ssl72WHxALX3f7/HkYil+so7S4Rq18IHjfQm5j4F8QTlAEToIC29EnA4ESfoxJYP9xCu/uFG2hqQRNuniR5UiNyeSJRSGzRI/Pg7BlKo8mb9Ot4QwXg2OXmxLSnSJP/P5Pdad+aFilLxdZKmiZe2OTXarZBCfWNmSp5UT5PpMOElUVAvHFnqqW5z+/gaFIaX6eBy2Vi1d54hYf6quPfngZdBKoycinov57OuKb8QWadKlPRtvsbwUuLtJnXj9prn3f9E9NromJdGSb+oeCTAPUP4gqHKYYlBIwi2ep8lc7vXDv9uH4mPu5/4iOLrejSgBB5Q+igzcppexvTHm3weY6v0XetapH9PL3cjjAnDstXyjyb/Ai7JNj1q3tXBdr+3yOoZnzHHM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8EpByTtpSkus1zsnMfNwfMEcL7A3LQ2a6IvlOEM8mi0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VH0Kx9MO4s6p/FknxM6F89you3IRZts7ZmqBbYX18nct/+wTLIIvJWjzB8Xy6hR6aZbPGDWlNatEKBqnCKjaCE5/dR5mJb9ZKDAwjohdmCncOsh/XuRaOIFWfjUPlvRZse3yc6KaZRqAbK16NN7fIzHcvJT5DXccnP36cWva1I+KFS+KPgzxhjVgqZOr4fTi6RMLWr6CpbZ9bV+s1sFHcvHlR1G7LNQRJ//uPb19YjA6pFAnLYlCJkUJuVXuqO9D4iAxmGZQKfXbwDBUItOm5FpRE51F5mNrblNVFj0eiVZPtSNlT0e9iLdWUS/dvSAzluRuOCKQ75hkinJqBR4z57ceAGPNszErMpiBuSZtZk1Jh90l5/64kFSVohMO57yZe/hPIen74rhRafGBAzQZZ3FCgMR8w/Ic", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8F1FCOiMCNL0pifcpOF9xsGXnVqEt40TgFBvulgg0kk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MWqG7znPmmDx5275mfgNVMHN/ajig8bw6S1KZ1ZSmEbUjcMn57cslZ/LBd2ZeJJPC0iKnv4AYSmEuVyQ+5mrMv4il/PhPAyPhFbVInJZy1cnagAuQLfYQ3UiXs5AhLuXQigIbzzsjHCLIlqC+fBdTXkX3xWdGwibgBf1+wZBAXodOU83/Tdb2+Y8huulZoB2nBDbg9sPh1I4/Fg9fXjsq5VAiMaJTuPVt0aCLZXYeC2iNpUaWFHZ7n5mDLac4rFJ732kP0ytbHCkz2S3sM9d7IB7VWY3c3sS3B9eDqpPEB+WeAlrDMo42+4yyEFOGdlQdsPCNTEBGkbwp1M/xglnTS1OegExPqFrIHBTkLJSa9E07xQ5/XJW8iI5+Iqwcr/WyEyHXj45g1/UiSQXOEVZb26ZB9nI0A3/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8IYfc9KZ2XqaU+5kkedl2C5a8jY9GupdVQobPzFX8ok", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8I713k3SLYroDCZDgFzR4Rcsq80zbmNwp34TXOjunoSRKIJYZthQGbbD1mUZPRbuO9YApOSydrkQVEH38fTiH7lsEz/+BLuc30v7d9UfYJ9wsqFWanww1CaSr4kVJWqlQd2seJoNcU11cn8dY9AhoSV0LUZbEdnuuVeC6XJ1Ib1hPfPDR6C0Bmc75hKL4ypGn6mHCACbg4wxUw9Jq8gP8vAWp2WR0855zhuD8EwaPD69l9Qx6EJWLZYhDNPIYbHHSihFtRpFfgPMcpHl9dDzt0DVmjpOgPiVyR1l3Uu/fsEtEEwWYonQfZrn3GhLaDHOtnAhLJGD6mu6SCQysHohQij0C9tgYy1xRxlcRi/RSwJ1H4Z30IVXxMmwzIkCevS1tUkBDE2j7I1EIC+cRtBvCxr4OBzf7aTC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8IyoKDwOE6YS1VlxZ11GzGeebqX22aaFVA2VVNWJAfA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j9xGjkMmZ8iQR5J5lESbBmF6zCZw2aY/6HFlh6BK8Wkyu6ZkV0J+LRimZ58UHpAs0QlzCj5IgVEVKBrT4APsl+uOh5rzzEpbXrSWsIxHyBxjiha7RlRvH1vnsBuJnY19P1nu68xxXn4D1Z3RBiR0puzqmEm5z6DBgfV/S4tv+cXtALcoMeGXaD+oxJqYKVuUBs3uJNnD6BOpBluueMAdIys4v+DLCWlp3fmJM9R7McHOIwhm5Ahpx+GETY1+ibtSQ3AqZOfeAAk6IjBylEFmLpZ/H1d3Ta95FZLXx3uYVNeTVstFI/y+KV7AbpLvfdx4POclELvhch5D0R4o4/nIJIM76Rqk8hlTbYesf8Pxl4GnA5xsPqS5yqWXkNSMpJonOqcy6UCSwJqXmyJfelGH2AI/T6da6gOE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8Jo9+TWyMXw+yL6Bd0+GjDGJf/UHV/OYFykqs+4U7KY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "899rs8tnprhECmbCiOeI2psu5NQ+8aQwiXmp9NRiUXvOOBTFPU3Ov11VAX3SrQuH8EaUaBoZWmL0S4tER5LCElZ7fKgGOIS19A+8Js91tI4KqLyJRJnx0E31Wc/r/yoI/fbhIyluPhLrdfQmQHrkeqSdIerHc5TAHZiLjhC/8hDVDLyIE8A0GyJscBZKVjs7funCrdbM5YhzTU4KPPTgZW+pgldYjrBpKGKfbqnJUxP4ryt0FYXDgP9kSaYKnNhNtBuIBWYO68ZIGkgu6/bU28WxeW9UJv/qvWYrAW3uZ5tWWqJUD20eNZpftv9wWdwQBGDOG6TMOCrx/NabkX3iwDknu+/PUuXam0qwcQOaedT2Y27mfqaTdxRNbhIZ+BCDe0ibxRQ/3ldkVEs9YdJEJ7Y5OYdOiZFa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8KEioi+g/m6QkFfdUh5uHXt+G50aTomkIK95vduG0/I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "H7GPdQ6fQeeS/sEmrqxraKkZHrKniEEPgcPEpdDhTZ9/h1rWWe32flKIJhd1LoBFXWSBIO+9yMTqJAp62ZI2qJK1xMJQixv24iNIEFbnge2XsFjObdGzLfM/OAV9BBz34NqmKTr06Jt8NbBnzUNQxG4H8FeQlsI1sFeJ6imwD9cby6dprPtMv9PEP4Gvb2xWHxms3ta0Wh9pn4CrYe8QZQgJOCKzdGVIAOHDogFEScA9np5RMvY15TU3le2rhYRiuHsuGXTC9wa/K08XnbI5S9TUshA3TZGd23GfXTvYLmAiey7izTmbTF1UB8hY7W2iGbSQD63U/N1P1WslQCdFjzMiIMrYduC0snfmPlMlbB8+LXORkSe5SM9YSuzNbY7Y/DnUaZtaVKE21BgW+H4ewOXJAQ0j1teR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8KpCh262Pj9b7DpfzdUB+B95xpgLAnuMPUfWTWV+xok", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YFWQY2DQEdaef6W30UFKJx118avhHJEFdsuo6IIAbUnoJYgiVa9PU/WiMMeTUrqobhwHihDXBpbb5FJrpRXdwWXMAHxg6JAiDTEdAj24nJocb5ail8JtwzGl8JJ7/qH2Dq1LLF6ffXtee7ov0fRRo+jS7THj8gwz9XkyPgFcOvkflkyEZOWBe6IxKYbLHiZAdEkVxFUVPfaT8o7wpWIfgmMi+phR0+a0+9eaMcPHcGt7ZLBZbSGzJB/3+0P33suVqAIIGhgunaKVFFkSEe5qXU5nX+QPPsCIuKm7L32HkHZJmOSqh2VHLf6p6Ym+kAgzcS8fJUxV63a0e+CC/K2u+ouzV12cEvthSzIKu2899GA90Pibh7GtZMdTJ59HJnjinh269RWTJVO3t5BDr1MO2eUzqpvnJdND", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8LNizKuAK5ZF72AJQCTHQraG66trNAjQqLheXkKOGQg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IM8lJ9Co1Onicudlt7M+2oNaAMMcolEhHomK2bMkIGXM/sp1B3kbsbotoMbpuTKpUkWhXj89Dn0WoakIRar4mpbAdi9Mx2pqQ6V7WepQbJFVK+3s7wKVKj6T64u5SzkxYr05nDCs9j/afn5s0AOt+SOBMViLX16WPqkt2vnKZ0u4SrO+nk92c5LGKHG4gt1GBGJupWtfwITEncd7LiAx6MQuCqp5ExQa9EO5cbi8s7E9uAytxwGEesSPyMM0fTE5qnH8wVmUgJ3OLxMiSYnsx4EJZU/Y0ZvkkEOgaLReKfqOezPfzzUxSAbeijHE66lLCYk+VQZlcsr+0LG09bzHvbqgYFO2OqF0gxsrWFziONAvAQPDNi6EgSsznXWEys+Tos5LPUdKhFMHgB7+OwY/dbeKYVpr3O/1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8LYemNMTtXgqLavzQLk3xgPS9l217epfd+aiW4X/ExI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NIyRuKqR12w0kIO+aGHK500tIFtwuGcl/c2l1o9lIBgpT+Tkpv0IoQgdrERc/NoMzHu8eN6vnWKTvvZilb3x0l3kzo0SVRYoK2JL+BRWNFEM+00VQDOC8ecCZ1WbZlEOSYSCc3SyZ+QN5tbpqMnwX+jpCiBUKeF2Q0F5BECMxJe0nOK14hqfRclQISOOm2KArrUGPG9IO+6xJFtmqF3h+Z9zMssmqiYKssA1h+Qhz4OT7ncdJgFNqKJPpO4YZtqlbw2n+2vxyl+8mAQW277G26Mx4wGKVYYXbHoOIOMvvXpNwH48Xq++GhsO7kZSiM5CUA5x5QWTP1c7ThGPozBgF/kVPHW5SP0oeBquWWL5VvTuJPL5u0bNfJqpP/t08gAU2IlkSXUz5mWuqq2sV6PA7IjVRidCmI0w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8Lc5qALwra7CQhAHVSUpqfbRyPGvyAA9gA6yMBNvOS0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3G8hxRNcIHHeYhVTpDZgbgzpWtBiMU15A4Ew/GtTZFa57Y5/g3bD0mEAmXGPdrHv2tO3MGiEtQTSn/ZVlE4M+OtncAz2wHC+8PhcbRdLY3jgdJhNd7oAuv9+ukg7Cr8s36Eut4Ixr8oIJWr7q4Q27U/kREJiKfgTzB+SQHnocB+yjKvilqCFIuXf9QK6GwoDdbV9tyImJBduxs5G9QDh0y99ORFb/w5kupNiX37RP27FuYbwxoYxLdts3ks3E2LrTntbvRiFF1eCmmZZi0hqTk5PgaAjXAboYYAJnfWqrzuIuAsCWR/G+v0nvOcU88yT/3KiK8vNEXb1Iadd3mg0D563L6bGoPLPXIsTVHtDKfAMrjUJVtrr9Br0Q/h7Ml6+nXmovZ7PviaKM0vjleMMF0UdqhVtS88E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8MAMdsvlKMvoQtNsO4im6poBGUSwKjOT6sYmiCUimHE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+FR+n9pfIF+oszeRcOYTScTKJSCxP4DpVkqhss8Dtf6+2GRgK6Ve4Uvdd7Ucupp56m58X2bfMP7SaVq0HMF/BqlVjH7lPk/At2qx27OODBDuWdHaBLCNX507Lyy4C4exfRcD5/mp/Gx8YNfnW6L02S8BoNfv6cbSu2VoTdJVLOnrHCFbzFY/VqJjC2VVC7ONqc0RwgnA7dDyviF7F2vSt4SPOtsEyEltg2XYcofNXys+XyBwhSxTQofAzxHuroMBt7hJR+d+Ev6DaxlZeb14I30j4fJwDTUTH6x0nJeyRw67/WdE6pHLKgT+Z6guLGGH7C5IkU2pvG/UjqTby4ctIiV6hq/DYbFz7l+UNecGEaxLr6ehCs3anC78TzPAFlxKcIZkFWOCeA/6z/vuroBb3Kyx0vPE+8xk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8N7PIo4DHkZZMdqJcQReI88Xk7J7L+aXu7qLtmdl5Ms", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yKvTgX3TBQe1Ny2Ljlq8bOZKmjXG1lVGrsifE32l0LvFnVHd6MGTlQGRXj1IswsB0fVGGv5p91+vl9/tbuusscIVCcjYktK6mW7gD3+GvVmKZ8kPo1tNufZt2dG/madAtfls86Z/iCsHHMnXYj9ti2JFBecvlZgzUBRV/lI3QHg3/WRsKO7kDSYstUbK+hk1ruTL7E3bE6+Ux4VPqVJ0pFfZaGONsY/aDC+1WpicN0ZzVG4EKFcMbmxEOqEa0BOv7Z/Wm0cpNog1K0FLCyKMziFE8WFiSYyCm5CAre1GrF5IQC7H9SrUopjiThLs1lFYTlzRqUUIw2oXhfQBQMkV6G8eNPvDvUOc5xhC0bz7PRSg7GcR951YU1O+8lgaIrFQv4NCJXMOCHLey57N4nMaP1cOYzuk7sJr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8NySxHSgLHbzxp2y7oNmM8D/zzwai3oi/9KIRYStsGI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kYFC8xD0OYNOicmHTtx9TNLh8WLDAGo7T8SdW4HIy3tJPRr/eQv7igr0Oe9sUIs7iqW7XAk5noB3E5e9YFDQnUowSpvASKbKrcWFnH79qf7PEOStwNbWAlQ44Mrm9EFvAegJApwA+W3Q+EKWDxO8PzBZm2fSH/vA2FOb/7wi+tBiCh5UqcOru75p92WlqKCT7LWTkY5UAcTyZ/ut36AjhNndsPniJt6nsgWh43OVHzyJRaCH8uPTBVBV+LfJ2fP72hTJI6CosUQvjsKghssllr8fElcG5MWhNrK8hpAl7gtw6itcYBeQBRUmhmQBlBnYUGxmMUJEqI09lSB0hirE67h2c32HM2QxxiZT125slfw7yNQGJIrYuPJtlBgtEkH4Hg03Yns25qrICQAupeS4fSbUSCyGNbYo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8Ordt9N/mFOIniYLj6LeCBG0qaQh++HGq1zp4F13Y04", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YHetQrpdaMxH1nroXAoCqTN+mBAdUXSOX0pJVVEn4maO2qS1uoQjEFT6BztWDPmVSYCdw4T4Ogx6zplaAdgMgYAhOm/bmFthcpwHT96Vi/a9rztRrfqAO0c9RxKgNZh5/UjLMYN7jUh+z3IYYm0VtXf68TqnRSrCE4vez3ZMP+htDN14X6+cJO3KIGVOU6/jm64dljDC5j0DYRWhFfXMEf6CygrhFFcutnTgdEQv1UUkUbzEZnPhoTWISzkEH/cvdpvL6mWVEQxlYqjAcfAUaSp5jtbMpfcQCXQh7SiZ7jqCWn/2ikXxDXAs/pL75Fqx0BUOp+/aFOWroiI+zB/Vi/bIoHeDHC++ZNsiHuMIulWw81nSWISCnGFDkxFbuOdOA9KswsTdJpJpoSeqFrbgfqWr8l1mLaTW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8PhCYwt21io9KLXMYkbrZOUriUb35X/GixZJCaH/kzQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LRao97f8oA7eH2QRsWcMmwxCFuXdcwdIUJpaO4WoGjji30bJsEIl3vrS059jCJP9s9wBYzH6SRnIEQYm8BRrrk+h0EeJGxuQtFnzpy0PqRP8vVKZ7yEaZ6bs1lYPICn/pqR0zUS0RzqQ+SyLNVqRP8ET0vYOVhIMAS6C0Nj1FeQzHweqgH/Xs+q2YPdU11tn0ylCM7vdbL+DHNFRfJAhSDwXByBe3cPTHiYjDG6ANkFHrukanZX03FqV9iQTgxhaHD+l97fdRAVl9FHfushv2nNte2hNuD/tLhi683GQ1L2JihTHpDkIFLgGznkTF5La4wlsl/Ug7djzOzXbiLk6E8vI3VTmUPD1m9CY83XsgYu+vPztZE2v8vLc6m21pJ4DAFU3HPVgT/balRVLCOttHO+mZSZAAekf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8Q/C8+6A4xLimdaQOOe3jjrp65fbGS4AY9zq9cqpZ/c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pPtToeMYIuMOFBj2xbhnK9DX82jzCwNdQsWUoyGLPZX1+gkZcvM4MKPNuIWdKwpVXIgghJE9TFcyJDm2lPisOHuVfEbS6bHQXKmzajOs58+MAcOfKXJz+5T+4m4iqhDd5rCl+2qkp6ZHevw4VFBI5ZwHAtKhMsfLOwtA9ozsEJX33q0eRG9UsWsOjFTCAeqmTY5ePKbCXeYosxN815Nah35FUu2BcyrbX5M6tj3lgzBQFuwhPeOg1c0IuABAO9YSdsel25zaoEkcFXHFAncl+h7MBIgHM8Zxdj4J6paERXs7/lZl161F22ztPBUUBbtn6+cHAi6A3XL7imiAJLs5sb0/JtGu6+XkuVfrb5roTqLll3n8uE3FiC3CRMK2wwTyQGkGA7euY/77ZDqhG8Hx2noRBe3XxERr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8Q2GlS7/EBes+iMxz3UKvPowDe2gZ3LLGppfj7A33CA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a2a8My4y3jpJEm76caGU6O5R5jrD0wJEsWsvWnTKNMb7dx+KpPWr2xN9CJFctD/YgusP4WVcD8GtUYoPwfVnxTS6YoLtrNtqA25nFChe79ROf2g87Q5pq+uFvo+dzGnu79LUOLmaWxSYn0jJmgYbsVNleWMYnoeINglGsM/Q/Bld63H1/2/geaaVXTG/1feMLY54iPcTNy4+dsHSt5ZV90YDq1CdzLaZSZeHWjJ8Ehf5Bi4I8/SvgO4ni0i5dkJqAGwgCrh5xa751GLxMy2lnedpBvlHSyHOtP1d5osAIB81X+4e2EECzjl7Fn0McsH8rqDaZwQSjnyHFdyMO+sq31rj4zLzYSICf6nZGZnZMJeBIRqSwkZzoDPsaaPAaaluZadVjg/JmbwSGWWXxAcM36Rz0ie04cEA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8QzMk9suoOa0+Utq3z2EFbOPwZeTtut2rN4cNtYN6xc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dOcLpFkMaFYnQ81MmgLN7Dk8xRcxj9JXFa2vJ4Aw6RFwKHaPs2IU4h1RjFf5tXQbwgF0cpEcEJScqg5CVf7a4weJqsiq+XavlMaMkawFmOhdDWDf4GAz/y2qCL6heeyvaqNa3vcD/74hMhkVXt0UNnXT9qSrjqf60oFeEBu19BZYgZPEFFhZIAkH97qcDFj/MP+HpIctrNq7rl2nyAw+VNDhIqnfaKY0bbqQMZ9FddW4nsMFg5jZQAtcRfSDQeq09iACqmdPSIC11gbjlPEfWeCNMtZ4U5ihZnD1PoKxiAGOxZx4l1WuWpFdBysxsZeOoMmTQWdblCqGthnynN30p8taMblITysua1ydfQiU3If3h3/EFqvIYlargFhRcbArt/mFJhEdbbRO/GKlHT2SqQ9gQDr5ZA15", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8Rq9bxuLp+qqxX+kVThwd4U3bETL2S284wVUoZz/6ik", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1mwMwx9BX4THgGdysrHe9VWUV0Gp9BSxvQbcMxGi8ZlXIAy2b1Zbg492LPhlAeF7FrdpgjZyeGP8p7JDJSw3FZvI+/Kz7QJgUmbGM+RibDybMjPD8uaaoop5fJYDOdTzsgpC6k/y5gi/LteEg0CDwIpKNDfEbve3Lh1dQmIHXvOH6EJUL9GQ8Nv5XcX7GDcQiX3+TIQ/0RvAoXAqTakDfjI2BRK+GII16r1ksPuRc8DNUJt1vHWfAyBKTWtfTW2foXXH0PKAeN5nGGnrrPsxZ9UTso25gneKLM+Xqa0uF1MrPsnJt1GhH9g7pRUvOkhDqk22nwYsRYNpdjY+q7CH+5RKqqEPBzuRebqurKALEtXE/WcsoLXnAtMDg6tWLfPnyKb6k+fxWirntgITLWRN+5NesX16M6vs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8Rue/GAZUpAIh+fmay5p/OO7KwJLMKaB7wQnY0VeskQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GVvDsgmbAPu444sBnJHaIbnrT0AFRSt6qqYasm2nbXmjpfa+Yx67BCd7SWP77R5v0Paky+TyqdV/FICQDIrg/bd+BBOHKQmiTABPNutbHONnpsnvX9HEeuwURZ2lsQyyai9vVWGI48fa5AhCn+EnMkKIagfmyHj1Fo8xe3ruekR9iMzaRlPNsYWTqnKV5MWbbb0M9w/iEDbEThKArfWlbUapRx6as1DP2zJxGk8W55gBTuUwtDhmVK4FZTywPkdbLpeISnnuAsQAu8ijo25oYIPH1nKDoEIViR65iZC9Rf/UjuRM/NKSZAbQmGYJ3NkZER/sBlSr2Kvm+kKbLpYfbzlMOHvPqM6i9q72Fw65s7VkC3wnVzpmevd4wnGE0/NXA77VdTv9zRT5D8hhT/+JNf+TlNS33XjL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8SjGUb0b8NWO8aZriuqo9+niIUT62BtfeQcyKyrS5o4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zJdGF5gw0aNUNcm4XUfuo6OfG2PAMS7/Gerpzp8aOzlr4ZrddjINUB6QoSz7SEBcqp56lgSz+Hq4trslASaE+cHds1XDOKkVxG34d9kJeMPTz+hjYHsWrxoXMLkZKj0DomUPSVO2dODxlXXUEdFARfsILTrBqdEsgrKosFIp5Wfhvy0dSE/LQQGRPnvsda1NmKJhuOxxGYLPQI5x/gW0et2cLwnISemU+tw4A8ShvrTQPqky8iaqsAQCMdutrPM/C7Mk8GOJm65v9RAImn3o5ff7iMYH0SbGZRGKbpW92/yjQwVfRrXjlYK9sr9igFM7EjY0sYGlXd+rU9b5OTR3UHCKX6zxU57RXAVFlcXfOfNj4d+4li1Rbkc9y+ZrIp8XhG4hxkuGfDIXlBWrRiFuvzcMA9OLbQ1U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8Sr03wpHFB1eYof0wG1LV7yKHAcr8bSswlv0RPdmC3U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DtrpkPPZLwP8vGv0hcVkMXu/5FXL7FQqJv42uR6Dnf8TJBo6ue87OpS1Kd+eXbIm9f3swjqbQ6xXB+/jNClL+VgYc3mCM7lQjHLDg7yh0n6JgsB0ZQOro82t+FORl1lYtjw5L97gtYGeVnUpPd4dPEenqsIsmMr8KaNnWUZyUhUSCKdnvCXzv1mzGHtOV9NfID7MIXOYLqjLfRSA5vwWwdN+NGHKw1DyOXR8w1SSFMmgb/RSZgmG2A07t3EV0DVOnq+0T6EDCEhqIqmLHV0UoLYSC0X8+HTProUrHvZH1apDNxDU35dAEZT21YdsSA/uXBwDOhYHe9Z5wtMlOw9BI+gAPdU1egkdqFi0O8g92o+HdtnKehn9SK6FXkxNqvAKoZjBYnkDYoQebnvCh4JxwMI04nI17K3Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8TM1VuWXWxO/Xkh5jdBKTkdnT2guYkg0w5aLaSokoI0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1cMaa4t+d8399tKy+IzDqoZFWntn0W+Shm5Ra5g8hatsWNZFTXDvBI5OjmWvFSxPXWUGdIVFvhV1j2xfqlMg259t3c/OWBSVaXZtEPK5dP7SiKqknP31MSYT0769Ak2yTpZcPdl9x0y4carbelIrxteCWWLlBgCBYOfGdGal13jiAGEYI3sBLOjeqalq9Mh1n04f6y3NF7stqlqfa29S5ZazHBKiA/Wc4SPplFgBU3u+dYXwkBtas+iorcX8VDYpgRc/vOZm1E9SxVmPtNg7p0yBRAxHyJyT7o7lB5a2bbwob5gXBXCQROndYKn5IKI4Esb98QwZ1VsHE/uHGi3okXVqI1Ds9vOnb7NGhCI2N03v4JvNb8Syk2B9+cmWK5rvb/RRbQIsg/hccBZLKmfr9oLI2X54Qp6M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8WDxO+pzgDOLJ90ua0j9BGjRGhLA72Rxsm6OhB5Ilxw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vI6jgvp8muRK6L0si+2PEFsoTRrfMzgOYio0kwbhf/ogRzVLmZmM7Ovc7tCPofukQ6HgzO6WYbJDICmIKdBvk9IKaH9jh/DlMBYO5WOHq1+HZnpsXsjKffRq9bjjelYsivKfZ64iNi6YcKj6iT8mZZAyy7lhAJ9hwbz6V2Lx7UC2lL2iQaE3FPB0sj1IogcYP7jUvypTl2xLLUlmsD96tuYNyiA9xJhylaNW2GA5pTyI5XuzAlplKn7T9sXHJRgghyt3th018pcSmGjAqqeHozSUBeubbbB2AVJvHFv+LcPIVUkN5hz5DK91QapRbliblCK5+ebJzjQ0ymhNKFC6E9Zx6In2GKCQ9c6mR2hul/PsUNuLDX26yKZsJA8Y2ziEiyUXAqD21r0SfSM/l7uf9M7n5+2E08yN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8WM2X/Q72cK1SiT0Z5nddQAQIADoCSJ6VO/sCw52X3Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AKHWT8ED2U3bfvU7Zx73Uy0+SM1iUQohhDFU7VDXNVh1EfpR+aeXFxmyEb0ukxHQz0xQmFJAR8CJmCFL01ZE7sRxo1b/+jmV+xzWVEB+AVBT2uMQOIkGe+xf3YPa2PcqdF5x+lHQazFoji4ZGsMaN1bo5bO+r6m24Pm2eVx9f+sO11XpRAoWG77Es3dLenjxEdj0RqIjw1oG3EFPu9TNGc//9KZj6vfdV20QTaKLH+S1foUd67O90xX5/S+gKI/ab+4xG5wV/Z0B7IasRaavh9/OwTucjSZYfUgZUNyYhYYV922lLW/YHJq+okofx/QagRLbXPGdafhoR3n6msgCGwyQ6kHLkY4AzzlcObIzTkiyKRjqc4VcT7z5YTCfC2DPPfVhdH0wVgCMDA29LmKrvCH/CT9/kV/K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8WvCj0FQq4QSDvM+21JlAz9bl1QpBcKYPASMDMZ1/3Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W7bNXgMo8ktB6qQ0pqx9qvyyQ0Ky/Z7hTjF82LkrBCegXgi8qQHktHMpikvkb2uvVA5vDqfnNrwGDP0Z6XJq4KycYVOjRND1+S6uMRi966s6Gmd7WJA+AHBRCjiZgv9aShPA+Gr21TcEmfwZi9XNh7bVHfBdWwYC7XfA68viJ0noICYoiWfd3aSR35bSwFaNveGwJ5ww3G0NygqBSyi4Wmy+hU4tQiMXsk6Br2z3jhowhe2coTQODGuH9X5SL1lsOHYmfuX6D+9RJHHEauaKAHvOB6VVa/INCaP8cbCPyxWEgvqkl05azT/c/AGPERAzXrLlfLJEO9tJVVf7zck5DDI9W+2vR5hNzxeLuKIbzuGVXldJW0RUZ7ysG19DYjStWwZwIAfpt6jx8PdUkvnGh3HrD+RCwxge", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8YEane7tt3f+QDAQNlBqhVNw3DR6qlcd1NuEVr6i9ws", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "64olEdqOWGZNWmSKWk34Mbyg4KkeI8LMxsldPrTkqbeL+iTj3ZE1UsbiTWMjQjPhnBvajMDj/KFWRnDaddnVOiB52I56+9wCLbOjRjZBAFsTzT4yt+meqTaYtHSCSWZ2HNrn/NKkxlLEcP0G3gtPUP0bNDnrtqS4Z77zh1y4yD5t/NwbzqQv3ewHDWxeCuxlFQaRtiLk9h076+ooabihMAlRaiVN6Z+gRz7ZKb7OARcL9q9NSRV9cOvp7k320MoLih5EVOgLeT5+iSZPke34Fc88gbfINalCwu+L5N+vbdeDnlZik/QauVTzBZyDAk/oUv/DXyQIxikz3XkktVQMKCS/GfODVBxsJL/wqyWxeRX2QiXk2qpQZHSmQB1IQQpJmaHf4FIm+14mJCju4OHrSUF0a6YSpFf/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8cJDMEv567e0lY51dRRMMaf/SdTwqouVx8Ts3X8/3I0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w8uDpFhxXowqZK7pfNp3+CKu5tShI8zA/aoFvO6nnCl2BxD760gCIu+CyPDdms120pbvfa2BV8zagFk/vHAfFxe7f7WbV5Bo8I3rzcNscAdjbLBhLYbY/3P7i8Q65riXY359oFZr6wTHXfCji3x7OGax9TqVhmB32NoGnCjlzA4vFvgWDlQs12NgsqLCXdX8DLE5GNFB8d5GvcRtBdIvCfK2WoxHuGIyF8brVhgPlznd5i8zCD72JCHYNPenC+R2RiosTAf7qPTtDv994pHXxmtep25B8el5nKJ1oYZbXd5Omiy5Zmq5huSG3ocITDFXFi0H7wyErGFHVAPvrrz1EP8rWplukAIFLWKQU5K8Rpe/CRAfDrslJZEtVe166D1FY4s/P327VTzSay1XY1sSbEv74FgAYQFF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8fWUmvXAWNfWP5qpJI1iUN6Gd6hnOHm3pWHiEvfx+7I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NZmIR3yjQBLWTPzEJq9GHKxZeBR77iRb2zwsi7qo+6VWxTtFq+7iZyXm6Gmq+YoLxSf4s5G0gT6McaxEsMN/EfGt8VwTR/pENuMj+67E8s9ExITU02Zuey9SndvHMZkWcdcTIrFiZ2Twt95vBTzz+ashFI3oEAmcgf9VcbLw1Z/OCt/KQPix6e4z8L7OsTSPwwNoPREhMTjfSaiitCYKoYe8zZvGJKrZjIjJlmdwYpAItZwVjeBOPjtI08QZCYo8heqwPyVX0cDYgNrLRxw7OswlW3CndJe30xFdk1MQAxIVcJzq45sScGDuQKmUTdIHClD6Fn3lZePkrz0qO3HQ5pavVEsjok1/Lb2CvYwuAjeQBsq5Xceefmnshw435YBE9uWZQ/grd/z2Mrhbl5nW1Jp68qOfXy17", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8g7JRCdc/VBvwnigdvxJa3nbQDWtINvQ0cqx+Ia56xM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "g4ykm7UXtuumdFBHSdAuQ+YtaO09qI+MUzuX5PSf3n6UrFJhiG283ESq5HXrejpth7e1Db2zQy6N9lCC1gF8snq8YSkD25d7qFHPxwPJgZl/qtZorCW79vaMHUx/LcWD6axFi991mvVCnLpoqhgZqfuVVuLfJCwQU2F+dLUywMFbVHUyLeyYjXr25mObkJ44YfXWf8bsUUfcfuK2UT6q07lyh5N33tjomio/Pw+eYZXQYJsJS8CmNjDsGSh5CCcsMfMz/gbqSYgqOiRA/lxjvsVBgA/7hpekC1SAIadkxt7cKabmRu4J43KH0GPn+1d5hcw4CVAMnrVC/GUsLpGAzUoseHzXRt4JjfRq01YYnmjjkBwsDpHKSYTgb4CiiESIvVip7ZygDEjx8inqJJ5cUFpY6GesoNer", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8gFUXqYQPXkhtOyszG8AGqiKLXC9go7bKKK0x0dIRDg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8xoZffTzY1n+IQBUA7rWdxV0EG9Tn1y73xq08a1gBVP9hhe0CbIwEvQTiPO3v4vkuWq2HF5IBzX8XUAJMcefCKMnUHyhvSh2I19RtFXBjgxL9HemmhyO5p5DeP+Z5MgvjAnZbZdc4Axj46EUhySUYGUQEYYwYq3yTj7uQa4ES+U74i9pQjWvrtt7zbZrZVPoOfnBQrRML0ZLDdBC8HGvjEaL6wwQOM99zJ7hv3pQuWHQNkVAKI6vAe20iaNWbJmBzzWS5jXqH1trSK33WnGtVBw1cP7RjvUFkx3HrBMve/AyxR/8+JJlNlLexI482Sav0lJ3y6vUhqa+q3USDgEr0iBUobNQihFDn1zjsjyMp6HQpnD3aZJboWce2N9KoCOlHaGEydkRtSwWtcpW9DZg9A3rR/c94+Lv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8iopVozja12rTL9qCL4fgmnD6jLNvnsW3xHZg7WW7L0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qTWSsak1gH+tmyfuIQJIE7DamebZjJCjxCCKRt/Sqsthbt6f5YaHZZbM15sxn2wh4fBUO26CL6rUojVmZajepY0tjNfEwLsB9bHG87I/9OKfLJPnEWdCPigypTWX2QE8QPUNLKQwnEciC6Vs0hC8o335nat2oi37rD0WlGk3pdsBa/9CuuefP+GtJKfNGy6uv+BFmZIUM4iPR92AOLDQln1wjIWChCezIqahrYepBCVcv7O7jLQmzqVrOWeQNP+5OQ3fl7c8K9GQhqttXgv8f6pnpdA0C0AOeqMxaVby9vb8VNWCdlggQHpHU80Zgr0L7/KEQvQdn6iXeZ+tMX/NhPmmdWFRY6PTUJpsP8/k2Xk5ydlfazg1cDUc7eUD8KAgMcbiH/BGQ4iU1YFKPCraSTa9SGrG3mC9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8j1hbZ9IwpZa0wpkC/nqHspzqd44spQHTjE2eQr4C4U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YFCbdD+365vX1MctPoi/PlV2KOIdOYrIjNxgMeYYimG/JyN/IOEEOxWa683nNl13v869fHNE9GsrNOFISdI+VHD4hRDICe24rKaPdn7sxxiI/cAOR9nuUcjvCEw+2sB9152KoJL1XsWfdNYQx2Qn+Ci0N9F5B4FXVgDLXSdZUK3aCHuZRe+cMzar0XlSLJinvfbrC+zUIT09tovSrQDMDouWvcTpLmCmBhxMs/d2GbaV8LEyDcVjBsWtPHXNrMu5sTgVX5ZCHWCLv2B5ERX4BmhtSBThwAii7r5z+TaNTIyGZ4/oU1JyUS8opJSdWY+EoZwOm7HTT7arWp6J3Amwhtw4Hf5Zu52cMhEu4CQ4QIp6TJ38zK/xle0LBMyqUvJxCbiP4X46sLyHWr1igz0IC0G4V7tJKE1i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8km4DK1SKIhxy0UE3hSoRqsAgqpcTxXXHhZWco2u7zg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "25RiBQ5n3ALylDg8akbJeQlHurRKweZwd7PKZS9GGsQ7INyXByhFGKvWRH2f7Vj4mht/eVy18Mr+tw4Y2bw6Ootcw0gF0cIVNVrqGpxjPLC06Qjl0x53uwpuqGjwSOKpeXBw4oPEuMYveLRTflcFTbWAoNhLGpkBeane9BzmEygd+T0fX8LOktupLP9Y+k9fwytsc8hAk67BtCdrFPiROFR2rj1W5RwABam6p3IUBtLmQ+mfO16Wv+/rQdC5TML/1fvsmufVw164L95c/Q1R3ky0msEnPQhY15ZNT9SDGXzOwXTjDAvoKjDsub+igVVloWuWLP38adGYWVC/HEWW1Pa7ZQ63G9mGu7jr7wca+gIGKF0fpCGnO+F7KXC6LkZmIsY7PoR6AeF+E0Fx7rSXfn3qbFIN8Fp/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8lfEVO1sUPMZSHTszg72THLOdGN8Z5/OGH3ok1QdMw0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JZ3OcuXNQY050XcjfwJYaKFK2LB2idvPYLyjwoFwU+PCS8ySZ4PYtTnwSCo5Z3xZ20hhd+fbBmrV9076XPiYATZZKJdKz/zIUKpEn1SaOGpfinDfi+pPlzBiAhj5+KGHKwL8TTgfkvRAKvZRPjTPtbB1lvOt6kKaRblt+9+jiRIPJjZPfDcYpO1XPzXqn1BhlmVMZBdLauV+XZ4K7RbYR37cH/s+Z/Nbw9ym6rR1IWfIx/kkXGsbnIlEcHhCgI5FIxa4SZmhiJnmGQX3U07EpJKaqz4lnV5al9EOt0HLGKRQwZAMKvfgWEy3XBZOrBsxpSp6jtyiZd0xPqlJiS/NlDN6W5fbucgDUOl56/rAWHPjSo9tT+3bBBYDWTNP2Efh0jZXwAuAlsPpU37mzv76nUN0tgU5vHUH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8my2Arp3apdzSZFa8tRU1y/S3TJ9nqBblsSGdDc4oUc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BEYCXx9UDjizlFqvLJCbPeHGM/QmcZju08qdUPbJZSAUDdtzZiGyp5x+viSUn0UG87EJrMAQcWEdndPv8n2G+PuW+bkR1UZ/0BQYMZSl1DTgFq8ifpqFsXsnk1JnVGdD59JWXF53H/3LP2MP4ZZzng0WrIlogtZ5c3YTnOr8z8iqXlszmcBTUEqKM1Rifpoc/h0pZhFgZeAt+rIiLr8bVF7YMsxsQNUhbZk3ydVBqYtR82RsxC2PafXnQ84aKwhO0960bTcix/KLiMkwMOtxRUkaa3mvXvMNKItLGGRU2A81HlhHdlaX866f0I3GIiaQ/HNb9AriY+fw1KAJqRmHK7CorDwrglAPHD+9BOwGt27x1Aqkaq0ULE8Q3sBFoDzgGAPHI0RppunN5pZLuMvAQTglLVilHFQF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8n1TZsSs7HmPwXNxOq7iUBASGx6kUKkiwxxShDmZGOs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FBxVcztbr/mTh8Ftj+s7xMAplbMLKLqFV/HhVWLZ/xxgoYCXExePnlieYsezelNiQPfmMa/+sA9NLSyuT4bWx74rc6Uq1gkVGVEbWdWIrhYKa5UoYuNfW7UoKOfA7MUOfIl6BxQQhmHUvQaw37NZmJghR6pGCe5/JaBqDtrhY3v/YBLRc44XYye2pCZX6mQF0tXhXmkh4RAi7Z4hUnp/ANUvedY2PPY0C7xtJflVyeZNi9DtiHf1QKHu8f2Ii/hDjDop6kq39huJigNpKI9Mdx8CjpDd6ehUPRNYhjs5/jzmjIyEcqwo4b9nabPbrARxOgEHsc37YF9dBVNqhZaGvwvdc5ADdopPSjBoDtOHXbcf6utix3BasthyRUb0UEm4MhrLvZz1JPE3FGotanVzAKMRue7Yy1In", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8nEvovUhr8O/UGlCoDC1cDOVJMgCBWZjhZzlB3wwHWg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DmZEKcySpzSVqHj+VSyI241kFXp+IOAod8B8f/Jw3DhqmQHlRTHvqAq5ZXKM71fRnRkPJR5k5iczTe7RVcUTmz5C+dzUoyqH6fdkOYaLEFgZ1XGzmcPrp+akUsGMM4JQjzkM6V55TG3TYBB0oYWoYASk9x++Jiuu3rkeARj2zgT7//P5Nw3Ao6ui8q4uYE40ggOYzv0chV7x1uOtcsBC37xdOqMu67Vlt0J3ZJJ2Zavm+//nnJXKPeGayGf2qBsT+TULfScplqG7wGViN5Zr75OHUNBb880rOdtr58ULJcq6NhaH0vh7SwrESbak5lzP7E51sktaQckfiac6MzuOF29hG0K/MTiaFt/6nKUvRyFx9DMwTXD5T3cPvmYzkgGMBVtJ2LVMbVjgK/MJ0XO3VsMQRGx3EIEI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8nP6WJxewxKeNW82n4M7f/zK1zDsNXJqtGtSeeXGOGA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6m+VDyHVzU9N2GNUsheths5EV8ZXPtTw45NevAk7N33Pj9ll+aO3y1/5/2l3zD98oq7EdECpnAEK7WTwsmEA10p7hPdY0b7O9Tb6ZuRoIN6mu2yQSpF6plFkJxpm2jsDZmfzW5uQN2/3IuXFXaaRrhZObcWLhXYVBTuc0xTDDJEV3LYpKHNkBBNyI+wzocHbnu0BGGPZjt5lq8KtaEgSRCruPQXNzvvNOCNRyRrzH88gFe5DxSa810ZX7rsdqUP0pBDtO8ltGwXKpg9guE1JBw2NZ+qpPt8cRCzbyUH6d6UKl7wqCC5z5DlqoO8snsBCPVLPBzN/lhSt9IxrI2gwOjF1LhP8joY0f6oxcJTjlKk4i9LXcpZ2t3ljyE2Zt8YfZC1L9JnfFP0JVeGeWXzc6GsJuThpB4R5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8o/GdoHSCZCpu+N1NJwa1c8lH2NsWzDd7f7F2kxAWRI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FibgYyfjOHGgTjUKQPtVMNXRju+rdo2T9uMIEGu1b+mjKpE9DiJRNCKU9OJJwKWsd/2G/zV1DrjzDyXbn9cnH9EBZp9fkQppOW1ABZ7J9I25bhD17so/bQqX8NpieQe+oV56zrD9BgifQM/HtL2ZLn8ysDSN4G98t6ZfGbkbAar2kw3c5v9zImdus4JuMJo3ku6f2SQJSiQOwTveL4X99/Z+mTv9KyvQ8SNd6EGNYIbKQ2gZwhYQYEw23+EZMpCjcmKp/zlfkT85CbU+CL3CrrvUjCIszFaj93jnLPGnCC19LiGNtbBVqnDwHVHGN8mchJs/ToPh4aDiy6YvzAbJsZRey/HJ697d/bYpnad4mIroo5E1FHV7rly+07MZ3Ro+D3yWqVd/HXogcnm/2d22nR2s0aYfC8Bi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8ok9jMgaVuEQp1IfRa2WZYrFVm8+2LLfIUmj06Sk2dQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ICaJx7xQS4BOdDClBfcJmB3BPU1yXz03E3EYG7IbzaqnyLEQ1ZOnFYCvy9kSZy99zLodrLC8EYEMxc+Gq6xHUpGjc6QT3efCC+rusmFxrs5LyDM3Y9FQRJ2QLJgWyC0VRUHR+5Et+0zDZgr3uyi7WSrvdL7pwhtaLvFQTfa99sZnaCGgPpzvsKcloQqCHZLk4ensm+k9t4U6haR4wIkdTzTWd/GJp8KisN5eMl1UpEeDcx53zJv9mRLdvZHwxKx7d2QvT99h+mMzNY1JAQzH0lgn2yPdobBjGy4H2cPWh50dD0g592qYaLIqM76HJP1IqZ64tg2tbcoKA+YPVU9kOEaw79POT147gbdamTEB1Y4ljcl7mS1XcEOOQr7rKGoINOFe9fOWd5s+ps3jON/yZ0QytlX2Exu5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8onab3q+PKzEelvZ4ABibXc/bf8xQp50fh/uDc0ktLg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EPJ+lwT5CYpNy/9YlzH2NEIm/VAqgfKR4GS/xGQJR5eczaXxhYZBESoYps64reTsYr6YrnrU3wWwHk/EkBsd9p2uKmq0Rw0yDmnVp1c+jaBScQIv81UH63BR0+mbXxmNnTDi8+wzg4auFr+DxxAS+oIg43y0GpAkXq/XiN7JkC0xzXjd9UDR5Fsqm0dQmxcPTPbvTAhdZPG2O154EYRY2vVM84Oc1C1adcdZNifyzNwWHgdcF5VHg3lj+w+gpPvbu1FB1tz0CAtJAPfuR8d6t6NHrLf2xwEwKxiY3m6h59WIOrxerIwIz/ZA8AHRFtFxwofacSrTaScj16AqIXrCgrfnwXIZ2oSLH6r9shVaylp948R10qQ98C201S+V70+G+pvsg9zdBl1wZ3w67YjlrBxnxkowIZMe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8pwNp2+AZcdUilZW888+K0NugnBIYPBumG3+0VXbQ6Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1PnuZ8IQ9gdukG0uJyLfpQFLiBdogw0W4cSXUYzFlrdZHqX8EQJiko8XHWJrNXUIqcTu3KZCSk6hipK0XwzG3Kmx68YrUgBCYeL3YcJ3Yesbah7EkYnmID5eKW0QWK6WLtn+DLcPFVollNsmzeNgoIbTeCmhPX2ZO3NfB/3q1lACuRpasm6kQcOZCGbpJkmmFTECmU+pJoH23b71l2geEqE/feUjjnn0cp9C7kN9H1V2UAHu0GRGX60FW5Aaujj1pII0SqMIaO92cKHUCKDSxWkQfG3TU5TWAEKb9lkhEaIlooK6uCmf7BmfbyJIVhDDpVUpARTkJOK8jpb7IrwMkAy0vyVViUEbxZXboX6XIFZTjfAAOgPnvdfI+C7IKE+MlI7kGJm5DYNt5H6GlOMUIMm7WY3tT3x9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8qP3+uQKnePm0giEVAcYN+VFNPTQbsNGxbmbMqTw5ss", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0FtE/wPwPS/uGll0fXK6tg2Z1Kgr3Ki7fd2zbeOwBBaRqWn3H6riSTSTYKsWWGe17ZQa9acCqBq8gi2vlVi3BSu3jcvOzPMQI0iCdxMfeFcyHX2Q5J542OvIWK0rMPqMvNIsE+77gmBizVHaNbc4TBf1boZhkjPszusg6rTnPfAJ5Hi1hiMVkZcc6KU/1l7txLcQpmVRE3yiMy5lrttSsM99bSYWXiYXzipOy5JX0M3In4mkjQLRYWcy/k16CyTUwUZiCuWv7G/x3vzNTmM6vQAvczJUaMs9uSRaG/wZ5XtDEYt5ouVU/MQWXmb+485nRd6YSU43l3bntHebjZUcv9PAfKkyO38YHuIJxq4gbIeTjaGiXHSxHO8lZMucbi+NQ5Yuy4qxgMedE6FV9RjJw6IBUJUPvKHe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8rAVEaqdLAcM0JG8KmsZZpwjrb4qFNJjPwzTLpFkRmc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rNK56gbr+R3Q65lw2s3fwQ3efR6Au36sveE0JZ7ymZAY3bJcCeEOVHd74ue9iul7cwDaE6XxEK9bYwnVf0tXwecCWg5HtnXIaEciffcJzMwWdtavoVEqsnMm4OYdmJvnHYpFUjcMU9clf07vTfWtr6wyWs+7hablcDlGNlGn5yTEmseZhXgcbvXUXi/JU8kvDM2sRcoUvUMCPEPSMARqzZ1TSdpRCUclmV8S5zAOeM56m0SfKUafyHnpzn/kK2xtp9SzjAimUFfsjPYgC4tYv9GU3dbJrNj5ZrVBihXhZhfx3ggKkH7yEeUdGKMn4dyePmeyarXhe/UiTCyvZNDTDmkj/KG+m4YxWRczL6Tiqf3Jxrfsnpx6FH7SWBuIuXYn0BE+mADY9f9sdEqCV+ywt05ht3/OI8cT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8rVEg1ZJ6qc5NePSDyIJ1zeIiUgWMZL0ZQGoQuW/6e0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lpXYOgR7R/S0TdjshVXmzXQyEG+OYKanTXvcclXm/geuziwQTIh/MLevL2o5uwmKC+QX6DBOigdY6fAK0kpmMX7IbHnVg9zFk4Z4oHY7Nb5I71H2J3RiixXlIady8+C4l5CKhEFb6jCilnJ38SsFtnn0VoY054i7x1snh0lioyrqwiVDUsB3+Xbp4T59SP7zYLg9gJ7nVidafGuBPD8X2NFX94EqWG88f1UIN8RK7URq0OTRKypqPySWIOVXte8Rii6tNacShPOecyMBkLaI8dwRRqVN9RK2Ezhe6kF4nHcEnmjLxYFQ99LmcVj+MVHjUFnh67upbs/uAwQNAFsz9RbOa5oaTTxJ5Kab26Dn01eVLyuJrhucwp3v0M21E2Ogmu4IkSdAusHZ93EUVwS6FelqjwZ5p0S1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8s902J80LrRcHuEAGu3LlDPbc/QiqWIakEDQY0Gc+vo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iaaPGBHxqJFlJnDpEsq3zVXMWMeFe6MAt2vxIxbVt4qjg989epFli0UQF3GqfHoUPrZa4sOVzdRnDjAHi4z2MsvO9RbnpCigomKF3q7rJhCIPHLyAVNXGwYKAUX0oa+PWaPJIgH2D5mNQhQEf8Vh/93+dZj7DzQ5NPfuyq0h3tz8qs4ht0cxC43k/VMGsvtLCJDzxyxUOzJT3T3Z7JV0CNCmkik1uR7JQHgVs335cYeV0sHF0E8WxvZhtIy8LR1GbcM9dqnFATSTH2oRxlTzRJJ1Y5JVSpnmyH95j73fdJb+RxaiP8IrJPfhL4nigeUTsKyMUxgzPLvORM4ZVQHRJFt5bLkOsM2CQZC4Q9KDt7In2/j4iSphRlFQOmC749uH8V6k4trEyw/Q8EVFImijeMQOv7ATdbPV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8schKBbjb7S4WHBMsBqleC730eghGUSXf/8hWIjWHuo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OKbsN7liVnNyivQbSXmnXifL2+VLLRaDwrIuRw6bWT3KznfxVXqOtwuSrmd5/OtR2bGTD0O3E1nhbnq6bgPh74TDwv6INBZmS9t5VzuWq+nbVAcxQyboThWczP+MP4qgkwS7n9hqRIHTK/opepXPNAmjHcaiodhjzhdvfxwo+Frhw/sDkWE4KWWMf6Qdfv6dC+xAn4J04za1wiLtRmDZbQS5OOV6b2om3dj7CSJCkFtOQAHtKzjVxP60V67nTvOWiKdn43VoQthyL0jcgxoD1Ehtys1+u460aIVt7hXwT8dSWDXUlqlOu0ZeawSSULByniMEocZ5550KK3TUQh51+qx6cWZY2FiZ4pZOZ1u3s44lpLugREUF47yFNjXzmIhNyyUDULC87AmqvEl3Ab7m0YUp93aqcOCM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8uWf+NPuqIv4ZnJUM3NW6WuTYcTjvA6oAUT04+zjUHc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q/kCU3slVDLje/FkefmtmtXoTOR+AlfjCKCRcAnLlUOqZ4IQ9KKLf9zEYRTQojVFUj1mnZN+4qn6LDwVaiQXmJTg20F0k9JBey7R5eyMU/JYlpiV+bFVL9RRGeuzGaHYi2a1ewcJYjkKeRfpzzvGATXMRsuIVWDJm1HmMKc5bIosMlrjsl8xnQq/OpfoxxVD35aNCbhwY91R7JKkoRYVzAZd874DNbPB8Eg56p/yGXjh+5IkAt7mzVDyocaWf7lff2W8Tz3Jd/ajqkD4QJBo2Zrnw+fIsJ9M/8nbXxOeO53KnmgXxnhrNtnFcWk44s3uUb/6fZ7GOQtS7h6wgfKIph9RVAzp9R0WX8jiJ4s3Y0mmi405R3xs0AGqKfTFFtVrZRgo3jhq5iIKMjfwMnPKIG05T7orOsw5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8ub4diYSWrXvp8f+vepNUphJFaVLIHiQttvrmV8pjUw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZyV4XpuETpuV8hfqLWtfvLNpnKkf7vbIHjXL635A27oJe7w2ACLzCRypzu6d98b/9fAj5lmXpBGPbYH38a13uOdCH+zCPjktCovNNJ2MSwJUWe6gC0q4qBQGXh7omMFXDRqcQ00aIGP2ExrtihJVPaHMsNUig696rTsZk5wMSNjWaHz8zPn2Hes68B3/dDmPlGYaTYD8+LQywJ0anw5Znsmq53qs0zSvMrbSUL6JB3SFymutN7WtymDM1QGcv0Q7LvCCznEt9xpPn6gDrEHSy2vo2fxbWvcANcF8tW9HfAqa8zcFH3BvvEglXPYyRj/3c2RHhoPSXEIesr1uzcjRIVb5dDHFfFxTj4WQ/NJe5/hQ/ILXsohX5c8OVVQnAtenpUUDJ23zIcd6oHQWh7kxoBYLI0c5MUC5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8uxi3o7+2YST3ouQVdXuKW/8yWxSk4aMwQHZX1YtBEo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ew04FkyhVZS4ZztulTeaApbFg/gTJ87lW9ObPf3AL3v5XuVmTlZsgNO2tYML5dbbBypeLK2i+I0jzJ8NFkXNftXQDwsCboKDlAD7GjNiceKPwHS0n36MDM/XRzYge0L1v1eP7yrZVWy+B7VM1pdrj2ALGO6whl0vxomp39IgGa6nW+/xgmFq+kDZToyS09CupbhrVPfsSTx77tw96QvT96TIlobfzLhrxDvfA2uvsRNs/AJSls53X19s6eUwNK/9fJkxI2j+Ymv9ZXPxi4bL56eWLmZc6h7XATGpIz8GNQIqyF7+TGPYunSutGg7yjLZS2DW9yGww+crAEJMCM66kKfVGrvc1zxpLzBpQ203R2k5ODi8the2O1k5XffGpYoZQa0rLveaeio9fzwgj7ZA5Gbf1He8e2yB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8vOlqI2TqlmHl1l5sDrhZlpyQ1IQDsmeF0A+HFRXnsk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bFCyh6epqB1zZcLIQBmDaWhJrh1oYWPxfbTfPLIf+8Z1zidbD15NHSN7OtpjxiTYgQAAqooopNb1STE527H6hntpbH0IJXDkbvpj3sIOhWiEc+ZbSrTbVDxwOOx2aTzooNCZ904vdVxy8a+zf++1x8qm2pytjjUng5myjH7mKQL+AGZiul7uGoeDwx5G/BKGP0MenZ1hocIWQllLYXpmffTAHbyKCe7CucWpb0RfkWpsdAD169P3MorrX2DKUIkzpIlNTJCuKL0o6EwlJtlSMgvb5jPe1jTenrtMNqXOLh9la8R8rRrdVT0ptg5RswHY10bCvSZ+xGnIcm0gHHRyUvcNSe/RdC/EzCkqPDPi5H/L3Gdqb8SzK7pH8G93R7NHQXDZSrtMjkNjRzRUkog/2HRHScy5OqCO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8vq1diAiZReeZHDqmI4U4za9exxDHC2HByxkGBMm8LY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gEbZX94oWOVaBmHjh+OSnXY/tbOe47LYrL6vxm4sVF4qP0Fn6edOFh8FsHtiWAT8j510qw4Yf/IF3aaenCubix+mllkOhzYhiaR2NLzbX3Xi3KvdzzcxoZYjp40vYFeQRK6fy4NmWwg/xzpRo2ZOoqKpxr1R0lwZaQ3kEXYoZsbs7065cw0Z6iAwL+q8bL+R6nkEu614DaIiZ8+EKj1fEXGWd7s6oav+o8tV/nezRkztfTm4TPOw/OVKJ4MHO3ZqpBls0wmdFAkOc62NAS5TnhSt9QlB+UDjZN6uwSajNHPvHkEkqKtpJq2mKfSYpPjs1IZtTFjfzMoGJEfca/5YZ+znZ4DaRVqjLgrHOXr+uRZQ2vSiR5ZTUDV4dRNqU6eB6mMFqVaj9sF1XW9xajovUZMajJtEMpJR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8yd344UsWttPCD1jDv3FDlaW5qe+QgjC79B+Js9Z+BQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "go3U0AFz/Ibmxh5S5ku5A41IgVpJ6f9oseoNULIxrhMQqnDNl8LsCym758hZ0/WJ8diedaD9Kg451s/n3hGhOOqa9QOFNoTAoA6Frj0zyfTKyJRlfMzqYaYfZE8VRpYHgEZ5+LcesFBkVP+fxApOPK9yNHwDGa+7u9j3W49ntc+rXPh963i5GhIYNmsS/LCWp2iIpXoYIn02B3EowOz/LjwB6nhwg2nCrGNc1qUFF0DAkS7l9GyJ/txSNH2bo5hUYJWoyiNu8fl6dYy/xiCZctUxF1js/lqFLg8PFAty6oajrmukjE+DZSBflCZaFB5ZK+rQ5vZwHxm+pcOtqUPVUQPrn2QuxvlU9mYJxj4CFMsF4YngM1XEr/MK8CPPJytEWfO8+yrtzkOMsAnL8gVhzVJN2hRgayKO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "8zSwMQt258xz61B33b2rYGLqpAtjcZChekDzw00Unjs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xOPJKBcr4fX9PrLuRvcJQZbLoKKZYCT419eeeitIpbIK7ckb1DkX+U929t4tyL1gQOPoFMueEpJmPRfF90yevsf47lToy36wEvyZTnpf9pUrx+m9VNU+lgCHWzMs5+ZJeyBQ1zb/wuCmc9BhRVtI2VnfiIsWcg/+Q5OgyNRlhMg1BWScy4nX8XbrySw4D5dvOViDUIov1bpVURi8N1iY+uileb50JokpC/Y68ZrUljY1iPm/P/WsF1uQWxXyjuuU8fSWAB5HGKNVuz4tCv0xHQrUeWQpTNMLghUQMlZacM6j1APfR4ug99ZimbmKPO1jXNPE39OZ+Ow2f/EXyxpdW3m91J6biu3xGCCIvlRTJV+37d8CnqaQG+29C7Fn94wyTA1396b9fCXi1fqy26Vs2hpB+KXzUefz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9+K+AUE6wHsDuLYzBKnr1Ws5CPfs5gZKvwSONJaeIhs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ioTpL2/ux7sUYxkyAg0gPm38ZSVaDoZYtRcu5Pv4dbkGFlJw+JxRa36yWwaSSk72PLqXeZCCy0R1ssvLh1UBGSyNh9+3+cDus2KGjn6xzEBDeZwEtZJgVjZsRg1xDhWHj34Rz7GV1SInl6qHrtyzO99OXynMlRI2dd8iwenSlOOXIZWg6qz7HSBMxxiIcuRndj/uFqhMzhYj3a5BQM6mRKA8WDAns9KdM6cF1G46ELcqzf+s7Xn7IFVP25eRpa4AXtA1PIdcrSm1hw8qYW9YLFtHTpzCQbfzYP8CN0IHwYYiRsuk+EGmzRC/z64qZyvb+mfFVtjTNCNfzr7aBQrauhGuxxcXLWFKMjCsC7oX/+YMqjt/UYAx+GjqsaUgAj99jcGRaSUkkE9P2XsA63aK6j0N20U+ajkY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "904a725rLqlb5ypQVbeK7QfH+4UXumYMfN4yMP85pN4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7ziZ37WA0VcthLIAQ54GIPdpIuKrSmWGd56eLYdahjhdomey+XNluawz/5Z9HQJgtYDwXQLt//r9FtVphZAyweHijHTAg5Rkkq1167NJ1Pxp16FyivPtfw1VHxK7HuFU8LknzB0QkObCDxczkjbqSeJco5x/kaad0DZ9lNGSRGc5KA2hLHpYonRJ7e50It3P+YC5iphu3W8gdyKPau6C2dJhuK6OiHgvTu9KDSd7RHtpAdlwwr3tOu4z7HqjzcM2IFEHYtXoMIvWnFFI2dAtIV7tzyJA+ljEtJbd/LWQrsWoBG5IU6kJxm2WWk2SozuGtAPQMz20bd3N7IkMsvGmkDf4MDOi/xcFSyPuUTiouthESGkhWZ7KE8bnokHTQZwxCsR66TtFEKJzszhoYrjR82IChEy3V6V9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "90aWEw3cXNk1lzWgrkilOXjrH5ye5dAuhT5ubynbdNE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "70OyJwEMqKYF5SG4XJEyQMgav/yNgl4nUHCkpDpbZQdQarCIiVp8dxT2tKEmJqtjPhBLvfebZcQPUC1hnWY2bMRhAIl4zhwIXaNoN4xbngJGqpRAThDwh3viFFbmgvyaAeBlTSpd8B+dbRzvQufoW/DNdVA36qnCusKsPs1QI7u5wchFYILE24ADItOnKkiGwX/xXEWiFL1nfkZHZHadmJmCXUB1+PUZsf2EXojTWHVsZ3cn4AkJAIIO5bsBdVG4l7jCtYidxyFGNWF2EtFu0507r3qZNuq5Gwgr2OhzRqtTeiYFbWW/GCRuZFjprrIGkflenc8nueaBkjCQeUkfy9RNBlDCdJx/+9h7odemutLaKmAzfcgxx545uJ59ygaYeFUxqSd8N8HzAEOkr3QZUjm5eJz4F+VG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "90mePlokbyVD98pOphzLjgZ3g8pJq0cooT4sqbLFR+A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7rDCULbRttqs0e7uuwhrHi8YgOptuO+6CL9LeyAbpWmYrwKqiNGcxzoQB/9iEUtIraZp7twXzlgOUi/WrxjFhp6VvEzxu45M+Iou2WIH2vrHbDeLGLNFl2bO9023itYkVXkT2ivkgQIzld2YgMaoqykK2WaaWWLoHPSijOcwZ+RRPa06n/8sRjspZ5fJt1mPrRJ70f2OnHR5vmU96cI8KlYO7SnnfyvZHEf7SWfmnQCB/4dhwLa3RXVqOcvn1A6sv5A/YcfrDygtfBjjSNUCgrsJcFRZpfjimaLfi11dRMp7BmbvhzbdRvUH1x98H9PgUDom6AtMN2Stanj2Z8woyfWPcn3WpudrzwdiDVZfFnXwOD1BSbgLM/t17mropLVc+444wLQ0deBmft454V0x7A4nN0FdNsfI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "920/Nz8XIpDg25VfAP/+s6pSQgTyUXhWAWxXhkH+83w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "onLErz/Ct+h7NiMzDVADUkCIn8WuscCg04oI7PbOT61PaNP+i/xuIcA2U7bTy10T4eBOCilPMny2NtXDOIhGv6y5oy6Ho8tHV6gnM+k4yaIr5vFG+VgsV0FCc3TzjQUPFTg1tvYTSS8MRXX3K0TphcrTmIVE0oZAafs6NLLpQpr1u9PZzorLAx7T7eHhz2uxzFrQBVju5D8IJh3K6aZRQXeuAvxVL7lgrf16OcbKOrCUqKHOmsDlbZUs2BtAjbFPnpnqlTKs+OqS+k3mpel/yGf+9C0KJHByNxrUI1fm3tzkzp5nVH8DscYmCztdZQ7Ku0C9w8fJMLxQ6m5TyBHxAmocZf6rFcgAmyirx0HIE4sijefu10YPDmfRBn19RRIv8Fc6Uv1wk+rMyjbi3rmrj228twOXpMXC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "956Q5QGcU5VAIb2EN1u/hKyCDvO1N3SXvgikGOnN+4w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wy18aVYzzTWD9dgSOWIT7j+4Lb2+hLIXvhf0xxfKFjZg2klY4Up94DFz/3Y5rrGr6fLnGnraqcozWWWJh0bKB5dFKQy9SQ9MML780fB1xJo4i66pgShqiPtyrmFpDaq/wuj29A2ILeDvJ9eI0hGF70Hr+K2LdTloIJhCk7UwFolOcxGdpT3R8WEuc/iVrN65NE4iEe+O0YkY4/qSqZkSIe0ZtXZvrHg6J3uBx9o67wBRiVhHGz6UrXIrVwVSTmeSq4ACjobUUfS+voPh49AUXGZqb7794bdX573NhZ98lLXTaKEPlm4ERsSRjwGux2L6QQGPs/2kUuke5vaaDyIiax5Ae6oAePLMEsjKCgH4iCINLVulsd857RobSpBI4dKKqCMDkO+utF5yIXKf6YUpUkbCGZPRwWwf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "96LTWQZ2n5N3mCglM7EysYnBznuJNQH+oDgyS7KFTvs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FFKbEUORnxAUng0R7XH4IrHM1T1XTjYIyPqAIFiYhyfBc6rgQ0YWjBBcuO9eaV0FBZJtEbMHzwuTYDaTMRRQCXlWXPN/7Ta1FbI/VZ+JkhjJ2H/5YfBZpp4DiuhlcvmPCJzilIkm3UlXiFNrzuBKgt1ztqDUxA4mSMQkusEjL3Bmi/tv0AI9tLUB88Mv16SBXW0ygS5DdJ22U6OUP02iH0L34x0+fz/u4V/LAk7283XFnvi8HUtiGUsebtd0SGWB28+UfXOLJu7QVjpmaf8MexUoAI95O0BroBXRq71X/4KiH05s4UBSKSV3CDWQLhI7X5KOKjB2UNQSeMlihysrsybHY1ZxfJdPNXFBtxLVoLFQkf0DSxO7iMDjFn7u/5VQx6d5olki1sYXNajASpT0oWTSBUHylBHB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "96XrbbGs61q6cOV1kspE1WfHH5GY8ZUhxplR5FUYgz4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SulN68Dm5YlNjY1b8MzSvkYbxXTXg3g4LiULtlVwuGkui80uOyl8xkA121EiZbONcoX+husKFee0+kRHi3cp1pIL2JzpCHggNEWb+TWdu5XzNjFcmXqABelNthgdqt31kRGgCRKnlz4NZt2jxUv4feObWt458LbQuZY/2dRUhE67BzcmHphM0okvkEjf7NdMb5ssWkjl69fA2JyNvES/1dXe77D1/US0XHvzQElF9MgXOQEdU4FnBuvciWJx4TvxWQVq2NA1C6T0nDAWIHyBLCoPhX3SOnpD8Y98OZOhjT6AeKLDOZnvMMUM1JX/Z8FlkR7+iD1ZfOZKAhkE5iPs6IXgbzKgwMfTjtF77Ep23r+grK6xUeiNhMPBq5/OnYoRb7xsLCYXfqmIk9bV10MosyprD7hndvkg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "977DijMQ66soffYGFKanthhgCdTcDCw2YyUK/Fu8Mx4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L+EJjTNe5ySzN0LoBKyCRngV+OyGNVz/Fmw+aN/WLA0PpO0QI5PN07CCospcIPNLZeqKqUD8bf/umpdQ6uyM9Kijz2BXOqt27TIpuYwK1+3v3ZjO13NU8iFtVF3YftVOrR0Wi7HUUrRepKhS1oHsFGXb71SyFJfa4cZuDijxJgsxM+fksfmQgGbExQUx9l8TLToNa6U75yjFyTsRycbo7FSHjfUUntNlgLO+tbYwftwYpCWl0M3iKLmetsPVwzNgvUX1OkWIpz6TMZrfE+1+xn3i4TvW6qKPmQfuT5ldAcMKGjeL1l80szYEVT7Cw9z76NZx3JmL1wEtYAGJlJe1IGwAWO4OcO9pe7VQ7wo1Li8z4cvMX6IQYqw1a7as6o1onG4rRT32FuuKH2HlOluyQM9M8+8Jifzs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "99EsM5drbPkmMLaCSS0cWrPsKXyx67r8lJYd0nvfLMs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GZzzXR7upXqyYcdL6wHEMRojT+oyML+CiSsSHRlHpdpExiR2v6L/X0wrzYH9qQ4PwpUUs4XgOrcygyO/ibVi65Tc6NoAOVa5/82FhhEcDWDgErv2YJQXkFSXV89uNZGnp4eRJN9ZOfTPPBQjxbYxby63RDq/UoGFoap2PygW6MwexyJVwKtf5Liepwqzv1Oqa4R8IW77Ljmes5NBZFFPRC0Pg8tfPDvUzAazM3AYDwun6B6JBLs6GulXEzKA5pHSaxVmWALNQvDcB8Ea/jfxbMtjV4Vde3srfDHXUX1Oekq8v4HTCUoqdTCt+wcc9qLLomvAT2i5iamqIU5v4r67sW5f49ITPgOQlTkJu8KqI8bVDLzRYO+v0uA8pWCDAeOUQdbZpT1UWmhkm9ypjYijK01QRbgF1tiF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "99zHBA6ZDmQaBJTtFEAEVTpWnrkgX9wLW6gPym1G0Zg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dChMlbZIpuyspqYSHvNTaH8MVb8+gf6eucwUSvYNdsq0bjOHwE7TZ1Y3gi+2/DpHqJ+gfW1+oOC2F2azxNlafO73/EgB1wnSmv9bHzppvqL8naNcxZophk/vmmVwwJSpEKzlvYRoTZohO7ymzlfoOiFxi/asg30CerJIC2EZI3vnCv2db4w/Z+wnyT8Xkafuqs7CIEtGFYR5DZ10obZWmBTTDj9dUdvNjSYmVhS0lWheSSpt7217D8jo8ZIdBkglU4XhzoJKLiaRnfN3Qiakx8BARQOvMOBqBDiqQtPS7Tb+FX2wDtLmxuDmptBqsID82YIbJRXVdGYY0TsWb4ku5Jt6cd0zU/BdL5psAW6F2qY0rkCt9i2P88UIHw0ZUK2PEeZsEFwQpqTpDCwxbRs55wy/wSXur14R", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9AqbN/eImn+HikqxLlcnx8r5V7hE2OoLvIcZDvU5QPM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w8eF5N6Otr5dvEDGS3xmdypN5pe+Cx7s9o97Oks0XZa0Po3ZDogVAsjL060mSXW6RYNCKnMKhm74cCaII61gVtQXJsHFyAc+u8YYgo9HkPX/mQhKnYtvE+UI0uCpCWL40SVY5rSf1r16q6oITuCqRjRnil5ba/GakdlPpjTfP7dKANb+zxwGUltLPEg405zEI7tp2NWT5UkOFAbQ3LMidoePcBgQBD4OSkCeJm1r92/mCZK67sNxGOvqQ/tvMVhKlQYfNkqUMzfZKRUXyzYlVqvCzLRBmbt742R6gNHywOvwQy8jp5QDxmNm3Sa7mJOJ/FBRkjIW+oU75UY+gTnRKN8IKpZvQv4uVs1tLd1IShToEr9uXGyMtSCrp0/TIE9clfO4rVUgq2+DsSF+frgyIWLIJRhf9fAn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9E8132d3umED3QodO8Kl6W2R2a1wvo0+bIo4wcR2/bg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Sg71xCsmz3Zkw0IsS8f4UfWbt3OiShMqHtOR9rJyxK5eD4uEdjxql3btBv/9NBiMfP5GhnudWqi0ibK/AeREXNVWIiHhMvNUvr74Xhco6qItWpaSjotJsE19//iJG8FBeY3Neo2kdgv94GaqXaTBEl4/38m7A1S9TASYR/6w0J14w0IgXkQY09ZOoNrXFpBi0iDuGqq2ak7rFV2XQONNXSk4P9q18w0WZohKzjjNDo2aZp5LJCti/gVaTxI1PSsWpMfN90gU2HgvPDxkmiCSEFk4LbXBT2YxU0LhTJUdyu4TuXfcw9qzW8TL8+CG+66dNGwm3Tj+vxjzocwQGZZmCy7Sh+jPC4f6OEHxWK62ytc2SjMIvZ8IMm0VSm+7UQI0Fsu9/NfTMzSQKbThU/6XzTy1imdi5vpZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9EDCzHCLd9LIoUgCecJGMnrh7RoyjJc6Wxghsun2xEY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rxqXpAZj7LbaeMtnZQqGZTckwXNWFnwWjxCzJnZKb3zEISiFLwJg2qTSA80Nl7pB46L2eariXumjArmKn8pCbO9C7SPILzDjaDFBkGFpdGUDlMpwas7wadv7dtk5omvGdKtTBQYAsCwYxv+i7xQgE4VURJmAAQLK6YaNE6Zy88U3KhDuEVRYrEigu9+WPUo4sfKtNSk6SIZ9frSIibyA9m2eAAmM+ochyPTTV3qC/M9BEioFOreD2cGlYc+qnOCtneAz2STaq7HUtDButu5mE+WoVL46cA3pMZ/l1IkL1F7SORd12D+cUDNBVN8hj+DKunfrz70TC1CWX7+BvO/PPY2eCig5n+RW4fI46C10WBb6Ga4mknQmi3TghhKlOyFB62fkSTsmbc0YpNLChQdIqpCAZ+JZdN/0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9EG/usFU/Z2SpcRz+DVno6wKd1MXqecwtIgTC1cSLvQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yLYQ4iOB9Cl1LJkgdDQljMlYPV37qXEoCqs0HAbe+3C38fVmwmYPK6o7x1Ql8iwjJutACgW4MfsFb0AJQAmMC0HA83T5mO/3oy0ba0fYyqQSOJB2hq2XncpeA0URdO9XsERFdMAIIY6dqvkWpAj5+Y5z2fc4voTVIfdn72d141nhQaPtw36e8v1s1WWwwoeracyeZ21bxj4T7Si+Hxw+Zp2k5ny7j7Tm7lusk3n6MT56M/3Htfl4tXgvQ6da607jlESVRJ4nChgWMJQRe7PgwtHNtDhIR2XTyXGE0D1BYNEBZm0Qe7sFaDd2TfH37ElG5H2iGhIpCAwIJfuBPwH5V/yp44hcRqJWpiBr+tLPiZ3Lfl5e3GQyFRbhxEqVvXQ1sCZ0PIoCK5TtXax/YIPoU+FR89DGv8fe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9EGv891kVrCzUlm1tbVxlV5jE6U7pIJpt9Ig2byODDo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dg6IqsuICDaHMxjUvCtic+zAHxvbdzYEaN7VSlvwc8momvW1uc4Q50fyVYMoGJ9gJrA8MC4sOiAAM7coQNX9LKq/FvKXKmme8KNe4aVdE7IzR4Sw/3bd4qhBnQC64zFFVJpHgBZr8O5FpvsizrYQzHQP8WaKLqZeuorNt+YEDMfqZHkOEzRHNS0p2AeB76msmK3QVIDhX1RsJsZZCoiIPEDrSvKGVahJUxZrciDNbHXrED7H6uOlzi+1HPLWk5DDhbWfrkp3b9yI7EJg7QOXtzh0Lihbm9f/HQ4lhejU1HTo+c+Kk05O06qfzf2/G197foYoRFKP3AKmi7JI2n9rTIDzW0X2w4Qt0IzOza5ovmkq9cbxdZIuAQQJ+W5JJpevQPDDkJCWAQwxrbkM5cS3aAdBkjLJp0h1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9EWD8DkQM2nL6lHTW79CmP5u4ktT+oV0fk4mbABx0Pg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fqxSSFYMuVmXT/d4cR/YzxhiOqTqPLJkqUHe51UkjHBA9vIK0lEmtWhMeoJBWtdC4dN5wB3lKpWRp+HxPr9vTsjqDrj/iIsrmBZDKWhc3HmjtWW8PI1vm/Uhmk2R1SOci0xbgQj0dJcKUdY0mvX8g3RMSnWpqszJeMKd0JfIfNWPMDmggXakERvsr82Ug1NII/WYg9g2V8BQhzUx8QBPRCOeDiPGEE8C+ucKhhj1uOAF42/G5VVVETZ3PyiiDC3XUw2zGB1POlXELZjLYEw3dklkEwnGBfsWV2qdyiZ7O2mKP32JRZ3mATU54r5SeGZti886e7Pra/D+H93+qIO9fn/XH/B6Q8EOTNaUEppM9JvVZ+pVDwd/0i+bgVnglymM4T5Evd+ELXieAeVnvnWS/x71yh8PF1Uz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9Ee6PhG/+9SL8ghc3iFzMIUmiUW5TkYdbvvx/SsqYL4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wn1Hmgmkpq/w14Nv8Kze0kwpOtTVRf9WrIN28QMZuLFnKvR0e5zM+MblSErpknEjVG9cQNanAUx+0FVCd3NxBidQC/oUr3MdVg4thm4s9a6BWjcosg8TaBOWtR/Lh+eIzv3Y9uELkXU317UNzvb84X3x2lEJOQLwcL+v4m6HW9nX43Pj2DAQi92mqt2O9blA5RE18ZnwbarH4QCOjx/xgbzq3C+EYbmD5A/NtLxWWbC0MVTdg/BbO254F4f6VKBilimN+Cv+BltYzCPQMfsh28h4lUxaWha87LkrWWF3hQI2nMKcILKYoIPP/6NsZzYp8S92QClfRSdfv6/wvWVdqo5Y/k4+ffU0yFGvPSkahARgC+3GavKTEsNho2dT8F4sulczcly829O8YL8+zEt6afQByTPnSTFe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9Eel0tj7CDCpXqqt0SXwNqbu5wWWo2OlPR7pmRkeStk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SPIeGesOB6dja2z6H3O1TfqXHcZCT/jPhh7Xd5A6fdiPTVxIaVna1Fdcp6K64oqDgrTg5EGiksj8B2AvkWPMHZcT72+mQDUWsR0O8dGbLvSMOnYhu89gcVlHY0mZqq68LnIKKYys2ApWI1GEZHCa0n21wzOBbeDN8bU0Sqsz0URidFxeYbvG7WInrMBrRzreHeesG+9zEHOtAEQIADAqIPwWRwkL+tmlgdMngnBYG6XSpboGpkS3mrB7SIJMmMqB330su38Q27SRUbnQZTfInQ6nb669id9iRaz4mTBqLyJHqDmB92kkz+HtIiUOc1xAgYDAXDMkbrkBGzwsq/WNxzGreJFkUZzF1YNfAiYuni0+MQshH1gDSS3d4QEpKaMU1UuhPKlKJN7Us2/y3uMIghfEjWinUnmx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9FWWd5GtV9gukJuoMGmeyYQ+dH2P14tiAG/g4RV9HNg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Iu3RlYFRC6mfmAd/69xvTjTQcBod+qZvEODz4HuDEXK9Mv1BUGt7CIgfhdhPa2VTyYVnJnp9A1qkXBOoGM1NcjJCTp7pxOJvvcxoK+gm8DVDAc3ZESYZa36NHuNvuAjgWWyh2y819ma5QQgrTf+Jw/c2BSK2bOkPq4zC9rBK8au6ZAcRfX45cD5QN4zoOFKeT/8SGj1n6DsWg/ldhBiz9SARmJaA/nE/W2Au/mBd1hwjUprz5b6j7nTHubzwaYqU+3dYW4XFzARQ7FuDPWaamrAnIEB1nZ+clI2ruDCN0Ufcelp4xJlS3t9PsEbhN41pBBxCQ0W/xFLM4CGMeiejWphnMN2gz1akkdzfgPnv26PDbQbjTH2Ivpk9Dc1vw7CQQ5j8GOSXVe0BuFw/udLW7YPM0DnyZ30N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9HjkCcMDK2ixf0QurQYgnVl8DKOYAp8/2baguK/sde4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KE8OhkE5t0nqRKILTIPDW5iI/kHayMOUU6Bmw8OyHpZO5/GpnaS6LZuqsf6cqcAwdU5ElutG3mf6uLWxW6npPWnjso0uJPh6YSPBdmskFwZ53yCB9roBuEr+xdxpTL6NwtToqoPE5Q1m9r+iXX8uXKy7LoaZ1AQlz/8uQ8ZVcLmt4iQICx6vih7hDbohj0nQ6JKVE552xQSiv5rnyw+EPzjuifgDXAqhGgpMPtDCHn321KfTRu5q2T9hNpKj2LQ3BWYHXGV++A9tKTHi17U5fy82xAo8J8U4JSyMx1MS+NCfN+i5snBr9K9WAR5e5yx0cbNCCnkKLZxkisxm7aW9g9YOMCiKrPT+5n6hNykjZMhPutc0r4OS/JzCjxeDMzRCg7GgJdOv2MBsqM3bX302RSEUxfYFMVmj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9IL1GssOGZYJPu93KW4nMXi9GK8S09hpSZu38Kh2BSo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PM/lbUciSiby95RPvOUFeicgkTmYM40BTDKyFhVMlbdg4+TICAZqKXUbnMKqV7J6I+KjER/hBBa4oKcdx58bVOHFxoXdXtismU5PHNjdCJkH3GNemC5qxQEsBqM7hlP4CONh1wVMdX1m1VYf9ElcFsl6sVGx+jxZl50zOOIR8nXgBZ/YWZNLi+CBOZF9ZqS09K7xE3yDzBm0Ro5I+xgRA+M0ELaJCobHrmppPC4ONXvPAMfiy/zCkie7TCq3Pao43AQ/LHAEUqfne3ITdiyBj9OXhj3wWio8kkh8307qHZK3U7MDfRN0gXdJI7eJdd+KUmuWmRMw39qDDBY4DB44tbopMsuA/89FLDfWPuzJ5FQignUfvfaXrPPjfXa3EMq1Y+Edf2x3H+IX9hN+4O0nkRw+v3RzlT90", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9IXLWP928vZviCWA+2TBYDoYuDLpHRfIQlhDLS+8h1o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "R588IazbknejWWaTno9wPFlwGSgKAqERpJCuPP9GOFG+JiK4VG/Ow4b5Gdsg+UCedUkWB3R21hLgvpw5s5m+KZco6jmGURH8FFP4FXFV9+hwbuw5Fe2Jxp97GcjSRlcHC8gvdK2OakzSOFnZqPtamMmbuD4qMMPNL6WhpWAfO9iBQQgLz2yn6K48sJ4qeXGgEO3wLaSs4+JHN3q9rVjhOXIDBM4zQ7kavKE0AmGbeSeW8TmwKksJWb5RLwWIZusOPMBz2xXL80klvc2l2ChfNlEmD6Xr1LnXZ376bzKZytPF/gd67NGSOn1D3seGW1e80UBx9qJBx4WhewuWY+RjnpkrnZRy7ddWHIi6s+Jw5mbiYZyxCi0joXBZYWHonxgjo4Uyr7VW7Bp1T0MEoIW/gMALuEUZDrys", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9IZSrpxHJTr0RFrg5BTwQKgqCCu2qIipnF1pHlptzms", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4cNBzNX12qVV0381TaMQQzprdFQqyanVgILnIOm+B/3x00/0cPjhQjUYxJq1SQhsXFmtprnNYio5Mnv6pCKByLYKzOMrm4nzSqQbbrL2v+7dOphe0SlDPCW4dmHW2SskWD8Zmrt+vJmT5Cu9OA1+iso8f7C77SWDjLks6fUmtuDIFUxhTRfCZcCxV2hW9EE51OzzZySCnypPWzX30dg3/hjbZt9ZIUYPykVsv1e3MxdlfpZq8mkKCrUZ2mLQapHjYKtQx4tKRLYhUO5tPYgYLhGCZFTfDmYzNI7nm/IFIXmV2KRc1CBsFojOUb6AI5OJq0UVFl3cxY8S4LzBBLBRq1WFa+evcUMSuk2PUeeNVy5Q+wBJrT1Zsu/H6v7945N6pYhYcmhmjW0f48WUYN3nzuXZoHiNusOL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9J+qyIgfAuZDXOT6MkSFtuV2A/ttbTjyYw8oxCapG/Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3XVrHROiEHiO/nORv4tXpgoWbmOx+MU1oUBU3QCJJMmN/EOBBCNr0cu12lfDnUQyjC/N8iEcIqXVMITKvTVhozUAi+BpzQObgEZFI3GYR1RuO7oEt86syoIJRfqyvDemYwhgup9xvi4cw3OXaHwR05WjlB7meBazW/lt8Ch/tujPaxDat/QfAoU12mK/dKtcFOAgTB6rzeopQ2zLpTONLpez2PuSJXqujHPosRnY7mm81vOuum6OBZ6Y6odLP1HE8jyYmzfHrixPjPCpuZ5r4qrpSH8QQH2ZnAvXHGiWiqmHgREH4bzs4lczH7j5s9NiQwpwmD3yUz1XBW/xQM6QUd7fCpreaKNvQn0mcsuyWI3Hf5O7jY4GKyoKLV3FvpX9H6AhddRCWz+62XH+qaIScr40DvyvcUge", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9Lr5s7BXhPMVgNK7Fo0GYdvDMuITDj1IvpXmimczj1k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7kJpDAvGm5O8jWBWstswLuiHGF63Gjc2QdBkdmDoYib2GP3G1DmodWcfzA4BVUY1UvXtXcjmZgjlBwPlkaAci+BSZ1GRs2vN/0Cg7ISX6tAifluzHY3DyvrY4E4AVLiDhWw+x6qqB/PfKq1xQ9DRDOZGyP6bhQHpHtHfLlloITKZDh6yUTrQL4oiLT0gIxfg3uCQ2YamGd/dMme/MOJMrn6q/F1+EpNMKLXCy03tmpS303UmxwfzgTFDKW7K/eu1F55vuNPNWb56yZX9jsV5J5tWtxITL+4VSWvzkPxAusN0oDXaDJhkpMI24+5Lr0+Rf/0C95X/P/xwcprohYoMhsDbkgmaPzaagUcRetwoG0bizr9k01ves/kb784UOOBnI1nEaCXL06srGZE5tCEfF8sKITrVFZmK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9NfMAnykPr6l6l/qKNDtM1bXXHL8bsUdD5/sqwcVkpU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kLHni/pwOuzAvw5YxZS6NyqJu5rqA6tIXK9dhLD1M8XWPBoTI7MnD1ITA+Y2/g/zmdS0pecpMtgEr6XkSV+ekJJ+/sstok7eb1r/Oq8ob+nu5Ig3EMfdoVyQAnH9C2sultny8D+6ZNy9DAIp2XGvurqM5Uo/yv97sAEflMrSlsX2JtcTTQlJGfuPuzkyCzyfUWtXEu3ENBQ6XPKJOU9Fm8mPpYS56fQkweFMp2oyvjz1j56Kno2NMGVi/uewSflCNugeC0B9Ne1bLRdIfuD9EF8w0/GBSXEHv2blYjejcGeFqcpW2OfZnqNwEqWLgWXZKj72kccsfN4gI2q8TW5+2iIL7FHi/XTd3OrwczTgFtkiy1paj7VJ2wUrrDs/cs+gq4oRquFAJpZKr7IPyvPr2bRvZN7z64Ef", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9P2DTc/z3BmohNhqhVTPPKqEV3zpzCOSAsgkqSNeolw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X3QyHGttNSRO64zpHFd3JYUTJEhPLNuuUA+Fu64N7uK8I6sgclRHyAiHg1RY3NpHpNOUteYft36PSItHGQZ4ypKJuiDCENZKdcsxgoDvfK5kyeSgibd1xyNvBaHYlfoK1GwabM+HYDygeyhnZHU5MPCkv30jaa2+gyTSINsB0P948x95QAG2FvHvzlHiffB+Zai9iNP2wAl8KAj2OtXiIhzsPhlfS0sOMfmKMW7xe5lv/aofAcnMIt3tGmfwYZTz50iQ9tFpqWV3R6yxMRel5ePpidRHBHLGwC39EVe6QqGz4bl9hgLRZWIJXKsmd1NUhENXt8OIGaJRW30BdflF1+mok2nOyjqnn9hYIo7MmQR4qLr10tUL5xPM4tJAJmIc3GNvtAHjmDR63HKpbcssMh4b6i+ijQ3S", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9PBYC6FpqoRLBIlEJ+5Eb1HxRkAzMTeJBpNOmSW/GJE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yB1ArH548p2JUGVusEnN4aQ+3sUBuKzskDAJT29UXVyxOUWvSsOUTvoNBaItJsAT5KvtUPqGgNHTR0FBmn5f92PHhRPnJxmxEEvZxmgkL2gUFQ15HFHlx60ed1BmmjzkNophrzKAexXD7kfc6poT4Qy5oWj8OmneM+rW+SbMD2xUm1JxTuZy28m8Kb5UJrfaXrWNH+DEUA2EyAHCgF2RoBI8i1yM9UL80AWVkcOSiaWeWy6CARFyIviepTb66JndJL0vpH7OrI9Xrtfno9uk6N3WcVjth2TMzbGfJqNOLSNPahP446Lm40wQv7QMm8DA8LuJPf3BMF34Yj6atzUgPHZviYez2Hqc4n+0bcSegANBjXqVfMxd6teHKO45ABSq0N6mNBiNn55+6ZvwDV2CvJsyaxLp6d5P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9PTsVf4nkeJ48yWt+HDyon9UAlt5CBKEpPuh75Y+KlY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "chm9IrMW3lxpikid/NrdDQXfsV9yti/Phs2nY87bxTituZ/23MaS6dd2PC7nAyhWxRmT3cVw896YGL2FR8y+tr3CcQumaXNpYpg3UrRasqulKaiKgZ05lSWadBXOXme9HEnfuQAnAXh/gH/wMA/NNyKi86dYVbb0IkzVhdM7lbBpJzx5lHBt+v+7NfbgJ1oVNxJC++xglI1eglvJVKB0212sCOSFbqOr92/exkg1XGaSQNreamg2XV3fDZcyINk2dpB3tK73l7fN74b1q/K5ZDjoEKI7QVuwr27DZsKTnYVBxtnPP8ZnSqR1Cdzi+vyxtTc0o65HWlrxMK0h3SjEymEzhzue91LYtbrHjRQHnKyFKT0Bd+aK52AO/Z0ax5US0vayBM+p0cYZmLEE/AEKrysnQVJZRl8E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9Pf7yV4MePInmZFjLFk5adaTHy/cx4ZMJc+Hx91uanY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LLLax7ol52JX42nFObmuy3YjRO/7up0fF/RK2HsAfzXxH+dte9z2R4cA/VOhyAbGnEdOtdjuz3UuEiI4QK3cA4hjVkCYz/BQNxJ9QCSV/GOnyd7+uxS7YCSEKtsrLXVNBVH8x1WCUMh5A1F0cP0GNwZA/A/puZAMt+53l5gp5ami4WiTMtABtuOXOd5X9K3uU5KJewGx6IPs92eSibEmgGqV49t6XMJwdcvHw/C8NHzfpEUsxCUxvFQ1tv2aFOfRkMODvc+jvJf7PMox3p1dFHqA7dNcN82Udnf9578GyZy8wQQvrmapAv4qDphs6YnOfopdni38eOrJyHZtgnASlqgNQT3B0+mHHwWs8IMap+myQyLD69p6yeY7xZnFdQvKQwxsb6ShzvWC0AWVQdmJU06pL7t9t0xf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9Pzu0jUDNl/L5UocPvFyYIt5rUzKYT9yxg8J4cPqqFI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "si97FaoGriebS7/Bi7dq5wX0mdrwSpcXjzqoYANLHi8ORtFF5eSMoYAPK43xlUc/3s+c4Il7VMYc+VoDVvbS2nIO+LwXb1faDH7BFEqR6T0pCB8k7yLSYihZfuk4S49DQFG1tJ28cE7fllA3ryKJGfS623n77yDCOCrhUMGo2tgLyAVhP6tgo/lnjh3rhaju3LoXANknH4yws/0xo41Nd+4UEmB4jxLJRcboT4cs12VZtDMpunBecENglSG3ptbpP+XssSbxranKgUhwYjSszLdShu1mkTXX1ejvv9VXEhJ8+k0p8pzdhSha1GJCBm+j1BnmuhnHvGTaKrnusrFZIFm5Qv5bHEEKOaiMRh1Hbjchu6WvJ8e8VuXtxO0ixs7tcSXfZ02Xmj/1tj5G+FEEaAUG2T/KYo0o", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9S2NZr5gkkmXU6jln0LCdtSB41C0rmz0h6phsXWFqak", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "usamy9EsC7y87P+Ir5tlcsxuqicImbPEjCrANQ9b+Fis2IeUtSZejPXNJeCrzng4dahUplfKkTahIjPHAKjuJ0w0eUrEaGrEnKMxGSgRv3lM0Vb11yD4LWgPJnm2vA29uuWZQw8Dpc94WK0msajt6uDr5GxZUniXvBwGv9bksB8tZXDijcXC93DyaxSGMT+yZ4JWUB5i2adx9kQlpouP+7oVl+2VppgGFspoEXhwjbV1cxg+qmRjP3GK0umZsfoYhAfLKGie4NDCwGGZIx5PluhW2lLabckVCFk8+Fgrkm5cx5M2yAOU7FB/4RVxPH9yytoMGbwg1jqdv3MGrEiKiIzxaQi2BBukTs+ftYs7JMRTNph406DZ26GmkrVjjsiOxp2Hqs0bn1dBDUyuChw1QEqBEXOm3jDJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9S5Ck3u3QqnXf3EttgGukyTAA0aG3cKiYlbXfLBVSIg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vtb9AQ8oSpsO/5ftPpA1w8fy2L9ob0oiXyX6e/+G5QyPKRdcGdcmu86z91MFtep/w5N8B5wxF1IFEI1nowgsYPmRwn8jQDpZ3se4k1MG4CXdJdPgqU8YZbImLmxFmmwXkOy8dHwu4OHaPjInaz1hS7pb+CTKscNk+GMtGIU42kqul3yjwTowDQK/1h/V/zvlv9KjxDFO0Ic7pz+ViEZKhrX8q6KFFXSwW4vr0H+GSPOZ+mVK3if5ulCNK0Qe+QDFD9bojHr9JtVAhwIXegUQmddADup6r7rMnM8iTgzoWv8L+hJPdPujNo+Sx0kXsD/LVzIyzpDcLSk9wC8D2H/ixpWJYcpkT7n7Qem1ffF6ZF6IcCXjOD+dcV8OOv6cSZZCURlR4iRZNQ6iqvR/yZQm1ATI+l+N9+SU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9SfjbwRtmoQ8nXRH3g9ktUBZWmS99DXFowFWtBlVTCE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dn6p9nCVWYrGPuyw92y9oQZ6gpIxjzb7ivvKsiITRy0b6rRTmZGba5tq4UY3gawOK9XCYvFvu1VyHncfqpmSBN88SRcDkFdCwECaaQAeqrJfbwSo2ZN77EAgfQqsn4QexErDS/eY/bTKYiZ1pNDYKlY4ScNeBXm7pmAu7hrq5p0lMgme83cv1CsO04OntjTCGbqhv5sGZu7a3ohzRaJ2e6dOZs29l9fVRMbusL+QZT4osGCyyqZoz2p05EA9rHSGDjqHvGnSQ3gb/5T4SQqSNH1x7PHme7DZOhGv2GtreWruGid05Gd051fvGeeNHCPuZ5AWebXN0UGn1l2kDOEfIzKdQpJRMy5bn21oqwF1hXMqCoVvtyrf3+J3jlAgjd8UxjDY+81upHH0aBnm+DQb8H8taRp92VXc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9UrhvnmRdiL5vZ/GjY6RVkTjh6RxjtrO475GxUw1ZSI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+vGocfSXF0ycJ7Rx/R+hiyGUWBHMkIhQNOtpjeJe7UTkOrs7fuysS8Zzr0eX7XX2xJsrLDalBR6iBRSWZDmIDkAmfAekoDpDwK+KzmrEoICJgYlVSQhCHbQ/BBhfpvdJesBJKjhch26hA4FmXN8L+lI2Ve6NkhiDx5nIrIi0rmogiqVNpVZS5Mi58LwL/sv7OlVE0Y3iLHzzz7xBZFwo6FVMvzWk2As2rVtVdy8KousdT5HjFJcelSUxm/9prfBg9QuRs7iQ4YCBkubbiL9C2sv+N/qbRigb29cA4YkbjjR4qSv1jLSW4+Kt72EwRkGrlvfzrHfMs6uM+TcCaFrYW4Df8Tz4XwN/0UpseSxtPypGyPbsN+jyMFiGHekOg872JdKiKNrjtnkIQh49t+f+QCPPCIOnvg+E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9VtnxwB1Pv1OpzJsSkjdE/Ih+FXKRu3b4eg1BCbBJ0I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WXnwUqdI18/b6blljWp8Ef4mNiFiDE+W9zB5/nEJA06k0X1Yht1GF24iR9ZX7qSmEWZjvjXiDx10IhKd1eNeOKpRc8VIQe/OHxiBO9MXHOCEFrFZSDqwuR5QXeNgK8Pum7nM1vf7RTGtyrLU8O7r5RwZwKqWbrPrurIgY4c2Ep7hHIu3jwqS9lCdtNlLcrnGgiWiWhq+ON1+ummveRTVOG2f6hWoYlxOG8aYHjcvy+tU6t1kIavOS6oOwnoZ33SP2LuDnDZ2P16WKSTbUylKnYsXVW7nyhOtGTcflpaS2K9SxBY0k2YHmEaawag9Juwk2w2Wl+JUa1iyPGap8fv4Z6vCJSEQn4IpUHJn7E5wBHEwjaWWnwUBnKOk+Df3H43uv09/9J58gF+vVBhvj2HMp5FA5wxe87Dp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9WBTgHEhPhzge7AXWDc+aLRZMa9ViXBD/F0ozX0D6+c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X58AU4MglXhKzWAkGbz8LJ+3ApMsYNCms9fg8zXSEg/PA2BojNdhmJBeNjG5m4MFL6uEdQgdjZ1KLbg9jeMX2zQ8Hwaig38/oPbveSuJJRyUoZPxxMKH2rrELFqiqx2msQ4jUIZYw/0yuRKJVfOU2OEIHwTrKlXoqIQTACiSd08N+4cILpGGAyAG0N0WJaRPLXEtyjPGwXTo3BMUU4l4LZ5H+wzzvdoT1UR+vGKDalQV4fZTNNyj3pA9zBadv3eE8/1pm7EEchOjlgpKgwyvnlr4K/Lur9PgKijPBMvugY8Xz7ZlW/pUVsPe2g8J0qAJZkpETFfeeBaoX8CzPkm5P6YEaq6DcjaAndCym3XKR6AtkG32anyCqU8QIEFEIDs3vUqxaS7pJs0TJ6z89MuSdGKGLMarD+/l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9WN2DzAIdsAco7vACf+oJ2JblrunRwzTR4zoaGdo6+8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0YoEtWF5tYiNSUU3Qg9d0nMTlSVcHXCNh5jluVKdmHd4lZDQf36nLlLukdygsN8dzS1kcZ2p/+qcR9FssdDAJ8coK8Wf2Jl4hxmcHnVIaG1vpX/LJ1co0wP5QpME6Y+2xuiQ4NoeoQ4K6ydzsoRsiWY9UGdRorLj00D1HWe0euMpuAAN1MAP61s0R6f4KTZQFv5dDb0dgkPDPbrYwCVpQv1f43ZgHvjrLvGIM/rK8N1yT/l4Am0Ppzo8p5O/lnznXff0AYg5eOxIu3fhPH+6jAZkzAMFZ+7sva3ku8GQdFZj3TWPPhT1DQ3eFfgm0dD8J46QfGsDNmjWGZKD2qdrNCu6qlzJTSF4CYixEAi6Ziel+YodZ7YRVgiwFT+mPZjYjurUOlMY2E62zXfhncz2mXd83rrd9AId", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9Wf/E2E4y9+fEm50b2L9WTVsODBA+BjDFV09WGbWzlk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gGXBYDtlLtY2qAXBCvaLd/HsUmU/1H+5sS4rvU/ceAmjRLjwrTNmxrXVrGPygoz1nYOYehEjy5al14VdKHLbMxyHGzAxbVK9gbUodqxuknnIQqunGGHWF2JByDkf78Ix6whnZ4F1DMtyaxkJWOqCBYClXPOWNkWArDGVMDCsaA1FeTYobN+wNWW0tNn6smNX6388JcqtTNx+CbVO8lihzzu43EIRp/oqXNRVMJDo42GHwIE+nh0+V2dX1qoxTJRvAjY1V8e0Xc43lVUyQRem9yzW9PK814ZXJQlfrpXJYSGxuMAe+i6MdbfHvfS4I/Bj1rlnIhuyJYIZeXB+9oCB68gCrp9ggMxAe18+zQkGNfA2kYnT3f5drxrFOANZ7oDcWjt1vMpuzOu5hMMWOmL/6ZaZlJD2JvY7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9WiV9AcLDFynwej1fhWiEAa357yXzC0WOr2oPhOSZr8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LUnaVm6FG3jUb49NWsUJEF27g05ztcWJB8oDK5POC4vP6Qsw0ZkA/HSRkyXRwVUgn4g7xIBZ/lIdmTFHYqK3XCq5M0is59piwh7T7zscmMuuzzO+kV98nclk9zfRgDwCwlGgrfnrBizHO8jUlMxGaIvEasg5Iyyx5igCLW1j4VH01RMJ3pnqvVpGRVvx8hb9JO1RqjOlwr+mlSi3cc+jG/CtXG55EqLyblC/ThEuleMvbGLcMF3Jx18a3G3ZDfqZZKbUfyswFD/RYnxgPkauqElOOGJneY+QmQBW5XyjpvBDNWts7UhfUgBIDCv5qLRLyztaTvpgB5oejHo38xVcQB3+hnNKQ1JU2q2XtEImq7DIRidgNxWCu7nkEWwHtoOTb9v4J4PP560LelrK+32/AlgZ5hMWlrbx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9XubY0Hy2GYRMkWKsuCBWiQXvJ+8BNxddlHZr46OjFA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KZYWwIIHaE5SC4DdkXFVs5ZhNm3XvJ483BU7kyNJZNC7zfQij4nJqEs6rSAwMElCQB7ZqMtzg5jPmt6mw0V4Wyrze746uv+3LWF2OogpAO7V9onAuTOkTF4IipT7xVm3gpnF2GzrcHvliLFyJYSeQ1utRehm8QFZ3nhy3MXPvQ59lGOJEufR118EcpZ/BMPQqa7E6CxZ3gBW9tKyE8PiEgytjcE9ulaecAoUdNzN/Ekf20wYwSVJCNqHu9Za7y+GO/dG23j6nsl12rfGydON1ugfO95KNdy/Gcz75Yr4QDfIxg/rhmAtUlOCwTwAfq4+vVo6aInnLMftBIcUgpNo9pqKIJElibg13H2buAA8GUW3b0+wTkRGg0n6f8Vv2BJYXHegthV2knL1cYKWc6xK+wXZPSI49J8p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9Y/jgn5Uwsx8w9OH8hEH4vR75UiIltcyCD/AN5HbHtM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1UFZJn8+vcPhvLLfWphhRIM97aD8L/+9Z6d5lh3ezzS1FkqD7h/GXYB6K6586eLZcT6lp5nzbXbhKN1AnfjFpE3z8OSPARpzFD8zhSQJ7t/fRfKPFKgKNcsS0NQpe9U3qsN1ToYb1zclYy2P/lTNRBuBftbrUkAZo14+qRWAk0OerbTmAH3AoGSr79PhDhv7wH4oapVXphwBIQvElN7x+pvC2y12U2KwALuL+NMfGOqlOqb+7Yf/X27qVJBWpJZqJo61C7LrItUJlt92yQF+D0oCF2ZVU5IPS9jfAhnsKuSX9gCiodrcseo1wxTqsucKyXMkMljCDJXUYG3TJhIgxDmKDKBufAtbYuXL4H2vwCoU721m70mQowkHj2xvTXIH0zW6Sgz00ioPcVVsczsTiXR2OLYiSPp/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9YKBtTgH4GQ/TWKSJM1ZvGD9Bu1Zve/GMp6OFxDXfV0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QYoSys103YEqsgZOlZtS8hlREl2G63aHa7lYzXeUxpcZsZ0iu3k8JEXzzL2DOF0XLhr5BxWA8GVtKqFrsY/eeJpcYWlc2g5sSy8Bq7rYtJLJXyO4rzZjLfp0jZNDiVJwedMFE1zdPShtyx5zZqx3rtURfGvLF0AvZd0PyE9veTthQ8TjJpQkyUFYSOX0eetHqs8pazLh82XRYHeantUdEWOBGj540ip3tSZdn3dJ7kT+zLSJNu0VMnz3fFpgEMQMpiD63UKwLDtAfexBySNax7U9Xm2RdcSLaU6L++oRBtfehFra4jziUp2LenT72XjVXrHQ3mgJ3ESVvZ/AVuNmv8CPXVdhRTZ0QE/p93Rord+mhgITIpJG0dpf+KK9nKVJ9M3PsNTBVqd3rvIhOSJZtnfs1zM0y7nu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9YcvxGSf9LrZkGjATfGSchHNZ8wycvQ6zcX6BST6GNs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Umj5lG2v336/6QMWOpRziQ+08LKpgkkJokqYZGDNCnhuHVsPUNS3qrVSIM3sJyRwolPwd5Oox+JnvTbvsyUiNSJgWCN6OPQdRgisHkIfaCHwAhqKKB/SmrITE6tfFxkikSYBTVFeU4ckWfiNLxZUbD4ldKdXLzkl2j/t+eJ9d0SM/3Kdve8A1EOzoQM+RLaphos2pHJes4YesUomumsh8384pWjfUetw/z3q5AmASTkOOCfognYMlQJgrFiBk+lGXOWhauzy4m9PWT9Wg8PiqYdbX4RX49MUepvf/PdLfT5SottP6HMB4XunAr9i5kJvMnwJNOT/UKhQ3vXZRs/IWz8vTSF8Dc+mqcT0Ez2KzMDiVLQtmiY2dkjvt44RhY1ti90EW3UTXlnGLsIsp8L9+mPEBblyMwYg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9Z10N2j2xv8MwIXXWzIZQYuz8NFnGC2SgbVH7V8jO7s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qfE7vZa/Ptnq4+/cVWRdKkbhP+RprkunSER6KEtREoWsuwCgrkUuLlaSqCvXK7xVcW0Jh1GqNPh9LXq5CGFXC+/UxPkxT6aUhGwxz1nGMGb2nrbCcLHCIMwshCfmSDSPNF0pLRbIvX7vx4DvEJqScvxXIBtXlHKSbJGBHwdQpSLczgSpBL8lgzUbblZro75u6Oimxxs7rX2rmYIXFjuMqJWAhYMKksj2jU4duKlWF5qL8ORGnPtaWXaUHk3cVUQnC55PgOEBo8/peGBPTD6utrrhnjmkVDw5AG4RaJd5S2GML+JVmYzYjL9zTy1Q7gCQJlkr9kbxdybsMEWr7UpDZa2+DbWGjzjIpWPSiPLpdS+WDtItwyMY+cwrazfnCZ5kOTTarP+xMQFJAGnC5uUWDG6x9W+b+DeG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9ZtHyISipXURE+beYHnirIoFw+BiiNpEW9c2EUw2xf4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dO8hh8bQIYe9qZ9TO4bmCzoVN+STWGTUdVq8NsguGNN86Eb75cEs45FGKHl8nyewZ4Mi1vVpEmcLPZtApu9R18vs9aTnhVEusTAa4OTuwE+yjRRWQuTrSGwY4ycvyzRN0Tc6Xgk8Ovgp3RbuyCNLOPNcMKAqM86Z2NBnmueEIvwX6a6jatkUmsp4jg87mZ2onb0MLw5N3wr3CPv/0CZjUi15vmGJQi/WivHVQHb4PkO8R6MADYozaXpU+ASXKxnVpR5jibbMNvUJ4skacRo2kM72LCKJLyO7L9T4NUmyKedhKJ0JRb9RkU8EmBThRRTCFw4QX97URmeBj/isg1KhjEsG0pJ/wJQBYV6ykOpOTgHFhuxZx1S8p/fLi3A0tgQ8qUe9KfpWs1WuA4vjFfQv/GahrRSSPg3u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9a1M5yJvMCkpuzbbI05ue8EghkzuoVBI4ThTQMxpkHg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZvXkk7YtNuaCeM/r3XDLXqNdIO8e4S8f6Wqp4bajmNGTKEmtAscS7D2umrBHhPNbovryLVD1CzLxAyoRbiqwwdEXlG/q17NT2n5EIDhzNoHs4t4/6hnQ4GL5jfGRgCRVEAfn3geRgMVFaSKyKTaMNb20q2sZHBj7ki2OZ47Wqctd4lmElRwvVp6WJ7hVLu5XSUwOzEjQxMJTqUinl85qA/p9gypzZgpTRYTq0OSSJ6jV1/6754Dy/GLYcgNyq5LXhuhxMryguSnkuPqbSJbyM5Tq+FmAYKKD+zZB8VtfogEFvPo+VoM1iaVqL42oKfWD+R/xGFmD39GGikVfaflpIKpTBjNaNStdTQ87nr5RQxWW31tsAZxFO6V+qtSd71qh8E8WzvkbNCfoBM4lh9EhxfRpRnfT2ZlU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9dGT/PA427D4V3IGLVoaTEdAXok33d9oA9AEXuAixJk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8EzAKzhtkCrI7yD1QpxXsx0yYCGuH9BPqEXjz/IUGCL/T4wy9KzWvDL02nsHudNr4rpl1whnV7Kj7veeRVPA7mhcrMN9q/atoBFaM8/9hu2Oz1GBv3dpxlHfWU/oU5ZwlLYfDN3WqMrP7aJFcDJ6GkDtR5f/Uf2SDWyWM66juwEbn9In/sbG56vVTkKAAVbrbwmLQvgw0RVrFVzOu8i8gwWxiW/cRpGvIDrDEPyt3WKffoScYD13kmEwVuVdou+frPPmWhm/1qpGUVwfEkWVVmVQUuUWfTpwJ2xb+8sCbfmSWAi63BmHXYgIjqFmhBvgZKPLojkY5nj5rHj0VBsBB7G2uCImsV0jUqKyl8WGEmucPCjuSn6xloUPJ4oNiGvMfCzGtfROppNJfSWScEjHg1kDpjEldGnJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9detDMH4Nc34iJ7e+dxc9WmOHjRhFwVSgiD74G6hIPk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dkdMoaW0qW8vv5vvafcCcIWnUG4Qq3xcf/vF0S61iHu0lxwC5+v5Zho6T3IGZL7aRuA2waxCD1lGjUbT3ch5Ef6hP1b/h3X+dcURDr0B2wWNJrID0rgvkXlEQr3nVpBqlNxbnrQH9OUlMDAq1I9kerxTIWsM9XZl5OLipBD9SD9K5cxRM+AOGE8JP9DboOl2GnWfXZN+yW7eMd1gxUnezRyr5/QwAaxtqVFDHZN0d/wAAv8xcLnyKrKVURjWjDYxvsTwleo6JlSxTsLlsNu85Iz1Ladftr0zOEUC0VWBbHKD1TZqI6Ozf3jBaVrNXr2vggYdB79nhTLuLGF2ZPN0XBx+ZJe8Lo5fmPZQgdPI40epxgHILqPI60hRiXmSkR15yA1KwIbO/f5DEYiCw/usVhW09LqM73Ex", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9eS9z2G85nysbqUJoOlsgkEp7pg0YPQVEgvt8eA32TM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JO5kHqn7OQXvj20q10DkzEpy6+dZbaiNVIo0FMzNalC5A+tZZc4sa0oQqAbzayMSFqRrxHzS3rT1WjEIQdcP677AMtLPP8s6+8vc+Ucn8ZQxH4WP2cLux/Atn4rH0TJDzpm3JOzAQyJn5IUswBLFqAQj2NbWTrNtTXeo68ACKrCt1diZKlBSG9VX+LU1rrOtDJ6yz6zso9yOYc7fau3rVuKWJqjcptqFDAghteudNzVovHQ/BLXFAba2pKxAnSl2hz0uo5o7dmGqJ5B74JA51DN1jaToTSi6aI6Od7348v7uGhSoBHqM5//Mw3yHt5ouFZFld7IzSSR8EcvWG0wvxlYur/TbEAlZcKhwhw0+7V2dsMpab3Elo0pDwUZvmUJva8CnNzYwCavYOEBTq1mq+fN1Tgn/qx6B", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9fZDHgQy0iOlXx/EP+r5FjhoCJ8MDxwnkgY6HaQMxnM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cItbqHZsclJbT2RQJgEsRUST8MZFp2SDYy41pMg4ooNrXXliIMU55b+0X1CWfceHhlQ1pVYO1GfrZYePCaPSeqUwnsCyKBv6tmol2NpymP8tDMvhrG5GezFLG1o2KQ60/5aojf/gUXRMPO7JKUsZZSSIEmOyuyjUWCZjo3aPmJEXjskgN0ZsRS3rq8izrhOjXxOSz2tDmJu26ywUjg15U4kd1B4NIKAcNcwH2etXNjWqsAWiEihv7RQgwCpspcsR+y+LlrAcQjjjK44BXp8aNN8WNfOiJ89x4u9BSWlsIcmtwp2QfkVf6fHVWc2bPx9dt9wJ15sSJJAAsWNiMl2SjVpLTF4LaaNkynzhpRp96AM+M5YMX23ave66bwicaV3B9ErFlZZyS02kIxUpq3vhX+II5aIorZQA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9kQQ6C8NPo7pfaAYC1txciNpNl8W9cTw6ZCoQuZVJ/0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7hnapQqv0QXxXXukHYT3lOFH5n8zJ5R/g6jVJENGzD/E8pX1/3TV3zi/s702XKKcD3GNKY9sksIfkQ7DbhCAHRLam1JJdwGCFUfJDPpnYLVyPL6u6HmaTljQoVCmXADA3qo/pldhr6jWchs4+4jaHcCtNZqppAYD8RYIoSmuVlTeW/7D5RpZqa8B4Yj4Kh1umvjOFKmTYOi5aWrjmg9NZMY43J9eWa03DtsHDcXeuc+cmFp5zkjOyXXN+0m8CqIT2BM06EFoAtWJozDzwVyVd3kFhwKhaBkFYJQ+bK7UuG7WfUzwOMXkQp/TVUHwkmr25GSjgNO7gYg3Nw8KFyRc7V3l2DYYKr+4jZXp0Rwe4rhovZF1MMQDS1oZutt+Zw020GYNIFglEOS5GYNestooBiHSlPRjdXSr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9nZpwccFtCiAyFVe/K4OiWfE2EM5Fk4Awb1KQtXnk44", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r/c4xibPvqj+AgazW4yLaG9QdxM0bSN8PmaJOVCWOPWXmDI60yYBmozonHGpYKThgjx7GapnlZkgtpAsgBpKhrV01l90mvA3gswPP1sgEQK7gcwt0t7d9ha942em3ohmSzVR8i9AJ5QVPsi6sG8eBbjyQy3aJ4X/eAIPFM0cX7hPfSPV764p8fi3C41qsbjikdWsDq8BpnxWJye0DzVCwP70nFPfFD7sxuBi8suYxkzcWauLmaGe4NvAIw7kRJGldyJcfQJnR9aspU09VJ8idtb8KYdO9XoCeKbxxOrYF+63ztEKSTeDIT8NQS8YnVh2Vbaa+788AVe1K0PCS49k9SKE/9cxPVsAIA5UJE0xjA2SREV7q6RWD/FfGDB6qP+1Ymz/9152XkrDzDc61D8OIIImm6WnzemK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9o+lMXps185tYiWZMfWXp9+lmMb4HPxBbQ/xyqdxK1M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OOUim10YnT14urX2o2Y0XiQ0lbHAcB2vA/uXODO+U9dlV5wldDyDy+W49rq7drwbWgjGeV2/un22XJsXPTZ8BcQo7pyJNLGl+o/mZBQ2wav5huARQYmqwh9jaH6w8mpj1tlD/mmSBqd6C27FQ43v2FidbNxQ2t8dPpZANQ9tIHXy9gXmEVYphJLwagRdwk5uccWZndNRhhGM8ks1NcidcTbaoLOZpuhIVXMm5Hc4B/ML1hmFeAsFUYcue65TFahLUc2Gx2bI+L9NrFKfU4nIb9b2ELPP2L+aJJ+Y5EgBFXTbjM9gNCR3jXPe0vxvQepNsHmXcFQfqz+/+f5g7+xrNbGYGISBK1tl22dsklAaoku1GDXDUqmyQ1Gk/O6yt09+1mb4Srr+EH6/slxle5LvL52tT8qD9zb9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9qPjML+G8DSC9hGTJ73SGIDn5txAAboknVVFFZHFv30", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4isP8cXY+qfAe1BOH0+nCvqBwdudJQ2KZlLmF/s8JwJRKvp2Yu8tPss1O8NEsVz4+8GrSJ3/5/0iE4PJRh/ohID/x3cQuECd3OVxxLdqvc/lQGPOg37aXBY+Sjccz3L4m0B7Dolj00IIfaHYeLelLaLfE8YB2pFF5+/jtQY3hKDhUmRLWJeAFxz29BIS/x2l+QXnbnbcabaazaEPIL4pca56kJHB4VtwucWwVw+7iIADxWpsKtYUsfl/D/BDaw4UiIxWE3zgk0Q687CtaYqTa6JDFn6DO+Uone4t4J06+xssBPbd1SCMy1cFOb+/gMhKnrl2L4qAP2R59V5XJqFt7Qxgnt4bFWlBPJzGuDeHUfeY7EuWXBO2E3zhKKNVVH0E489Q6LtOBnWt4CKsNJJkDjJkvO7XO3ya", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9qXyWUtcwTHYp/xFt9O+XiukwxKETM8ZdWWBQXk7PrI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LxbPmUdQLTV97gDV/TbDUR3txmqg8SIr/nqlQzJRKKyVr1rbUlhi9FjEASTwG2Ir/R2+OiFW19RL5uTVT/e/+f8wx1DgdhMEzw1A0xUIWn3jwNdYf1lX0ErnIJi6AMSlKZctz/czFpYE9dy7BU8QAdDPKfalvtTU/D4SldI4T/TI+mmcNtonOTP2hpgdRwbkI/d2BYeP7C0TT/QRgVfAlfe6/Y8mHFzItqz404RnlGfOYcHSxlR4JvmG2gVbcRpYz4qhwTQabERW5nII1yTMAcmNeQ1spcp/GorlcYUw3o7cB0n2IOm1cVS1YtAwmyQpacCnnIsMBDhriGehyJPDPpm3+o0exEFBg1sPs1NsrUynGv5qpRDYLTAiinHTtdoVCy908vMkGc/Fbng0wwqMmkO6FMnNKkeM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9qzfEgTKKtwUiXXExpBq5/CfPaO0QNBnmPJpZTnogg8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "C7dMkJaBBI9z/CK2MFEDsoR2gsPQCmPPhB2mBLxmWrophuV1v5Id/uByd4enSGPTbC1Epwg1e+L5nDN7rPaFzaey00iBRlnYkBgH186UA0HryjOQ/2Z0yNvhwQDmaV9DN635FcWKFsAXJF4KxTPKXZQYOR/d4To20qAyFKCqc60v1/UaXCL+QrzaY4X4zUKod+bas5sPdO5AvJRrKOAkW1kIP8hUreWRaw4zR22Wivhz4JW145ft4fCa5juLQC+/jLkJRl2XRaIwnAmCba7LzFIua2dIeI7DV2IwiktdU/ZCSEZze9nk8IkRAmkMxNrBveWIPMo/JCXDlLuuL0pFJ4dkNnVgZd1SIP1+dJrdlpfLpcFfNE1GwEUEz/Ieg1IRDMSz+PpfiTNkQYXiGA/8mZ7DTX54Q/kM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9rWeCXdXwIF9VWAiSa5VEt0zKdBECJkd2m7cJRyLXao", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tf6Ppsy63LT5B2s9w8Fi/PruSP75RdKt2cPk3xBEIDFBr7EQo3gsHUdUBuzXg3LITGoBrikmyuP2IQcwZ5HIIrnQ7/7T0OMgGjMS3/bLf4wLUTE4ESLGqm6pDcxxlsENmmwWydxonRlZGzqrtGBZqYYuC225mP4RbaNGkksln1kFe1gMjYimteE1VLtFmC8KZa9MYCntQj48tOEW1We/M4gaOZI9cx9QH67/1cf2bWZcfGz2C6nyrJi/vGAy27kO4u33mm59KabWpvzLN6JXmCuvcOceF6YOQxXW2pJv98ZJmvCYshyE39vLgz7Mpf08tjxTo6iDtFYaE1jsOwvLoxsNYrvGQG+cllNzhHca3Ihe+nux/4utGpfQiGY8eDePJRndonQi+HH450j09ypQdKvXhC9PJ5bi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9redbSoilOaiKPhf5mActBvuhfIh+B5THKIZJCMm2+k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YbHa7mHryXHH6VkhL7yS6o10YVUkryEr/jVdyzth7CpjT+MuxBwRd6C+DZ7odX8GhPu07vq02kUBBclG6CrXAUFxelVaEA8X5b66YGiGTM17KSiFu2xaZ5BWqE9iwqlGdgN4Xk3C0+9wxL625ueZ1DV+DQM2puZ7lZqEVq7zRk+f45zx26u8l03+TMJqCzZw3FSKx/PsoiVZ5OT3mFRam/TYxcoHJriCYDNd5H6BI4Kik/bKO9nTf/YFI7CBq94HIXfipst+OKJjo1Km6Rv3DAHoZcBcBgrMBt4vNw3JS7xN11M2vHFyBd0wZumpXrquggxBC/00TDl4qn6/vkQoC2vRrQYLl9jPvz5Y1RtI4zkzVpqCMT1WEcl7Qy7WPl3K/Nsv/dQitA1mH/gy34yHVl9XBjKeV2W8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9sSFQzb3oZFRflICqYG+ToxcKSWCPKVoYG5kUahXIDI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pfOUsgscLv5DMvGNMWZxlO17V6RWOztfNF6xzDmPEapnyGEW1rBGPqvFDkK1+ZO+w3MX4wopLefgTYU4eBfgh7CnNyyPhGeTUmwnxk0IEYlLmVt5kuWlCITyQ8VAfSQC/Y+abJb1FhK+rl341xCHuCHiNS26+V+2IjqDNM+AD5yyELixwQIj8+FSWW7z9ISlYo7qI5gflRGRXvem8lga9UjpY+7YT5Ntu/rA3g4SSrC4uBvYPex45+kVTySg+84/Zlgh0J7NZifyomhHidqgIcEfwV4rL3RrveOHC1jszVtNNwiHj/xVdVnwwWq5qnt+2G0ASUbkCeeNHX/EH18TAPmQEeUuQfq5ExgL49LHXv8cZLBKozJt2l+N/3i5vT8izaKrLjBVKnOnt3s0DARDdfH4VeW15PYX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9sXug94FRaIjldNVRSnpZof0AYU8QuZyGSe8OpUFlM0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mfInhDvPxtjHaCuh+t1VQrpGW7U1V/bU3w3LkHDQGnOFYZx8x9Y3hsTZ9/xzYTyWD+6dQVD9X31CLYRKcl1MqZUQgkSkiDJUXtkr9mjqkpbZS99YLGeMzwjaPUnrP45jCGtCqVKR880PZrKVi505el3ljmhbYd3VBAJkd1KhInr03QRfr8D7XbGEDnK3JDBMKWyE0YomBYUkdix9dS9vyGRf8UCH1n53eH4/tWEnwUg6xNuHXOQbz+AflzwvJkWoxwy/jaRcX14ge0D8sdZ98zChPunEkY5BMUAp6f8jyqxjvoouxq+Rp8srEzZPAbiV/oqpTJB3bxvRUqrar0nspCZibYp+45h7f+bQJMHhaMQ399Z0LgwBjIg2oxjzuRcczyNQBC2vMJG1PBsJLxew+EgRr2BTq38Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9swpcqIZSbj6UDDJNuaJ3O2kaWBOLQYk/9j/vHi50gE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/2BYhSxW4Z1cDYnFyMzQCBwF02EQvRl+Hm2k+TXdB9lC22W57I2e0OzRaFOGHfbmNrkTtuBobe+JPlYsVhQMmpsu9EmofV093Dq55ETSM+eTwcSh8dfmk3Cz7PmXtPcOX66nHvBBGHlCrvJWy8XqX95lglA8Chc9iUvO3Oq0fC98YLU/CNE9S9LeD6vzzqeAkNxkZWHRwqhupUTRVi+OFWE0lTNuSFFRvVQycwupa9eufWnqfO9MzkeHbtiHjr8jVQZN/uUv4PmKCHP//YMcWkblSY2rPYBALjBM0Je6/A9E4Z7peabtREFcsk47mFyHGy68SwFK5HS3j3HjP2mxpfHtwU5XP5e1NQi6wTjuJvC0jnThJwwhPpQX9F1+yGrMuLTCi0bcOzPCERr+Bjm4RbWLofyGGY3O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9tfLrVK1IvIU0PSYWypL8fuAWDyEkTGgrF800RNqx6w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/8vQyrE2OvuGyj4Kr9s6ifeE861ve5YzbPqf7c6jCr0iCsuOs2J9Izcoi6GgCKe/4xnbKLRk4syg+mTvGZH45KPzWLLQBSQJ5qNYuBdQdCqqu9+Woq+oQ0sc/Fx44KvX5IBmx529Px997lg2tdcP4eKDAnmR6TEelkWEwsiT3e5tNiiSRQXgPYc2KRI4934YShIBwPgKyJvac5nvw2/xoS1GeXHBl6VFOz6USNvoaxoD9HO0fAbigmb3i1tYcl72uNKWsj8gqLb0sh9nqwQCsUiHSfkKj6pJ4dggDbSISaJ1caHMeMsO4RDwpIPo3zkhSlxDbWMqI3aYbOp++gP7aXBP2IKpr8FcG017Xlg22DzDbAwsCLr54Hrs1S8GSf95XEWmE45xM/DeadoQqbjpmo5E/kFGVqPk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9uCo2KHL7yPGCfDa2WOyRxKMzFm/B8d0QNQpdX6t8fo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x3tlovuqDdJ03CAP1JHbZYOCeUTZQymUJK9WvWvnfxzxsMvUuBLFjRgSX3reqs9iZj9hsNHdzcfv11D/b3f/Dmskbfyipd/TXJracXYNnTIm0ibaS2oprC7iqL2d6x5za+E/YsLOESPDMO3B9ANw8qru3KQpXqMW8RheofAGB2acbZ0gjWFVQy7dpPoLsivelq5duYq6NyYQ3k/wTV5lImdhOQ5gYxojRMwqjBqQdUl9kuqmq1MzJEvfm1fv2eWyRnyFjWmnXUOXXyXHP4fmtxKKBTXfgl1Pfi64+dTph3HkypjMFyuAkg0u3tRu0r2DrxZdoL+bSkRi40S3DnZNjU7FROXQ0PIWh54MX6eTRYyPCoTbzJO5YvpmB3p+ngwuEWt89ikn1A6XfSlMR1LNLhG2M+Od1qkZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9v2d6EG6DsRZB5x9ULcxC6KYk3c7eLoMui7QtF9JErk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "K9U5PZFlj1JqjT7IDi6q7/0On+uhPe1/4VtPtQWKWKqkCrW9jbBshZEcb+QRJh8mUFBFt4TmEj53KFBS9MastJg4SHinRc9lklsXBHOROC9ENRwFa9zsM+aAUik7tLNRH3OhdH1g/PP/EZOpU8evJrQj8EpI4TOadpc9kNWuAlqdGInK6jZibCFlkVKfym1nJBvZHdUv5JKe51WKdZBTUsEIG3UtQLQa1c3XW+ScwaAMNpzd0WwRa2ztX2NyAJt/ztETmgZDXBDTwxKPT3vU4B43k7yNTyxNPYRmAmhu9GAcz6/02Ra4AfS5OYRGHedNaFPT+FYO4nEoL2tcwf0Mxje9UtxeZs2501qLv3Sh3/3/YvlFj3kH+dG1zjqf0uEImq20MucD0YdmIDJSlFw8yFKnJCl+O9hV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9wDQviiUPdKJfTzpWKKpuY5OEhuSZsqrZacD7tg6SU0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OAD8rhfZpyDDfduvvDE+C5fC4KRyC/3+k/8X0Jz4GA30KKGX02LHKuldeQmnV1pQImN1FCBg52K6BzFp30RtmGziwEMrodBNcTX7qcYpBYi/mLa04Wcby2Yk6HyActpKthFrA/m79nJ8kn/QTEGlgi7Yo2d77qo5m/znKpZyTIe88nRGQf4IZpSPR5o6B/okZ6G/9/MWmXeJ0uAxNAnyrGhTvBxpSMdJYj3015YQWa41JxK3eAu6lBUvuVAU73/4SzQvtMnhp/3jai3B9GPKsTIK2nTUohBx1jS3KGMQjDYkkcXzEoDXf8EbZ8SntfWZxzACXTavHhWPcddBQRn7pKsUnNTpmczqI1Mq5O4EzTzgqbSNBYVx5MM6g84lm2bf18zgUpEUZCQTDWRKhtvd2BRGtd3oFObX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9wWvtTGEAQhPLsRoIosbdA9i7vCx1rlW9JlINBteb7g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "br2DHZQ4QdcIOZ4jZ6X/z3C8ntClghX7wnmwiXsl3LkK58MYw7z0/S8LwHgAnXftHJg1tJ8JqeeDHhklUluTbAW6J7kr7UuPSPBUv9zbzf+O15JppG+qswzhvRcPAWxXeRfAtsyvrue9M2dzkoJaUM9V7C7XORTcPdYsF+KeJXTQkqZO4SeZoCPd2QxxB4mlH89mYL24j8PsPwj4PbEraFM2CMP3N7Jl1NpNlYLmMjlaSRLe+xoTILde+U3vq4XTc8aW9R3l0LcSQuHhPnJh/6kwZcvaC1L2N6w/4FenaiE48jlQhkIFBXWptGVH10ygjfQv2BUsvqk+MtFdPoATQFqsWJeD27g4XZKayiqJNoXZshm3M3K8hf4/jNtJb5TAQ5IIPuhcx7eN53qhbsqgwROPZFTb8HPp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9wXhJPmuyGNIbC/SF1vTQBbRZnG+MKK+t86go/dEfOw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NcBjQ3+QwCwtdyB1l624AwV2SARTK6yZ1ZoVODe+Q8VizlPKjWeB/C+v0CTFa8nav57p1a788bVuN/gX6/eGKDJtSClZdP77Aj7oinjaPy6eJGa57VXa1sZ8Yd/25WY8IAfKR79asceAHWZTv0R0JygY6WMl36MgxwQF8Bcdohr/s9DmY986hGeOQ01fmnHRd533KI6H/FYDh3HuZ/rrAJcTxDL8KI9EYsOkP96vkIsc5mzEB7Np4m6kTZBQ5jkW41vULC2EnmaHdrLBJnmtUylsDi5cf5q0xbo3Y02tku20f+E1bNNcK86/smEFYHrcA8APwmjumdRmHIBULu7Ig44NRPlc5rOIqEWVEKSLcSDzEtL8PrQBPjVsS++L/XfRi/bIt1mS738TQZlJbKhpeOtbyKiHzdNA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9xG1+tifPsS2W+h3Z2rZo3f/FY0T4Nhu0Ms2H0aW2Pg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mMM6fMylKHEeqM07sroXaAI/cZp40vhqochmyQkay1pPZOy7r4bU9k5erFfFpLm5RXB4eMI0fk+jyP/JoImaLGhN+LrdvvssWNoBitpG2J49S9OZxcJPdBfS4YEHG0K28ZsBO8O3RucazAq44pkTedcv7GBtqM8GCT41V1xAGWw2bBK/adK0At5/PuCAKNw/3Q6wunBD42IDRC01sDmZZvPGYB5qxWzDzzR0AxeAJApxPx+bZfnb+pJpYRjtKMwveSOpXsa3btCj0QJt6w8NnlNPwAHb/EWdGUGelQUlyxvqaujdppGDuBqt0Exi4crIPqmvqgqe5X7l3hcDC0nPx4eqNDd9csjSAiUonbIYsEoDZQqw+WT2IQ49LJM2zkp7e4sG1jPj9ZXpFBISzpvPtzL2WuujFSsM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9yRnR4u3v1nM/FeEk52X/C0+dwJFACHZk51t/G71nMQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Isep0clljnX+9tB/m1uCGKekQQ7btxrBk9iDWe5/R9FIhD57AQUsoG22qvf3Rt7LgTXPjpuVrcKWlW7tXHMgeiuzLyAGHMS3wh6Y5tMgrzDKYofFe2CebCKB+pVxoVwOD2ZIflhZlkZqSxGpxxiuxWrKdEzm0i3Q85reUYvzs4d3zSJDlxOEA0GRSstcxK7vN1GY038Zx4Z/YRxPMiJpiQtI3ujA1dn1rb3/lPEiuhlmEWXz7LM2Bd7tSEBYdQEkNytk78SZ6J6OJxNP643eZSloZ6GEnvaT2icvHPoDpgMNf5gkHyfF7QolF7LhACypKKzzYBZZ6tK8vQnzLTKc5LcFhZIF3Eh1OcbJbx0OCKuQ6240F1p/DEFI+lHlcUK4IPiWQ8fVjIqm9c2RG8X4QrUaF7X6QJ8I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "9zSjMz9PKmGES8yvZ1rOG53P+dKWco/70rnGzz8sW8g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tdyp5Whbps2xSItEDKrzPiDrRNlrnJAq5KbufptypNmZDt3ehjbyjbr0OAY8HUTANUQ0KWnthETug939b80n46a1Ga4OzH8ga6Dc4Xo+fdyoxBV4YtAEDvFfiEk7FqJiaeeGujClIy/BBG0GsT+QKSOUN7VzswVZGE6JAjQi9h/ib9Qh1OU6qw8gCWOG+nqYXoG4uQz3lDIxqbZhBBvCqYuPj/sYAwgRaj/TyNV9lJfjqgviLRKZRtWjrjsD+PS96DzAyXaVq4dE3qDZzxA/bF9QE7E9X3kyaY8dnel/PD8q4miAE2l/QlvQIWalWnXtGq2T/ub/YUwdhkN5cjkO/mtiyEqJhy1AhTCkPmvNUDn7QxR4PnkszNhonZmaBPIprFADsFfqHTwY23KsPpptC1RpJi4o+n9x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A+6rtIXVZpOtaxrJEb05GjgfymJ58Yoir/QDVNY0IrY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6F8Pc9ew2PkeThfWwPCLh86iqwr0PmFR+7J3mNATCNZdUZ3jGsk80wYYU2EHt+3xRteX5h4KS76XJD1zSgFwdcpEpQE56dr33Jyd3VB3SGRDvGdERn4goROfYafkQoFU1+HMgEJ3OMHAo6Pdbk/Fx2cCZhwWGY+ffHNdGFBSBmneHdTIQ5svROcfJROx9jBkpUMEIREmwCPkokCo07DJz8o5bkuM/FE/46Sc7sMmtq/jt8ZKP/qDH1JVh6ZUuECyeUGuNatLG6aSNILsPkC2pS9fZFWdUDgeAaNcgjH5ZF7k76OADeLhb1JcTMl0vVKssL5p1xRqLMX2AJsu8ZcP03zH9MsoIxjLLx1R+bcaF/yoM89PtGmBh0Ho/Ekc3KoFw1KjMPHLa8xUAn33S2niZL963NmHXUCx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A+rW0NceyY3LP28ZbRoiYfiKrnLH1lt2QgcAC5DZyVc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MfZb6CcJEnSk7SivFaafk+mk3GvN9TxtO1IqgMKzACdtQsJYS0d+3DnZ+CsZ8izBTDCObjOfA8NDBtvD+KSUwgSjd9swwrCRxEweFwWVN7UT5nFWcmbGnw2JONb4JSxzciW003KCkHvtG6EkHsC0JAZzowedsksBnZY/KwyzpCltZ2IbUdU5Du0yl2nMr3NH1sEYJ8HSnqm2r+y6BibP3iHygluA93smQwkj1MIAdsU41nSWfTDR6dm94KJed5YydslwJ0jdMSr1/CRxtXUW36l9j5tiDDMXZkoxHwjOEKM9/Yr85ywGEWVC+2hw0Z/S3Z88rcsTn3IingZMoXX1uMkQQXb8wvtXv57lmrKeLLSnvvUTrG1Sh/uwvxLXk8bcJJvjDMtY2WJfOrPKPhLvdw0WVHpRsbeL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A/BJTsdM06y9WB1+vi4M6HvnAw9V32VyMexACyAQ4bE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3mavd8DS0KOkP+ISytf9RVRHEoUvXEHPX3+qOiOxkgdT3Q+kB/c1GxCiG5PNvvetOcBjZPxxbweakabzSgRwYes6zv+LbxtFbrZpvbEiY6dDsHrIcWOQ1vGdzEqd5wa7qGiBS1ZUCoXzrYMwXcrGpvP7DMqONJgqUDzBIhUZT3R54h6kfyXrQ7HvFGj7FNDbT5I6rGLCUFiTW7X0+u7CdzaXSc+fgHs5jUSq/CSRX55WxMWprnw1deSGGNdEimqsmLy/OCSVgnrNCyD/Gqe/EIFvV4OO6Cy2gPApATg90BjN7NpcVb00n5Fak4C2WobvrZaEd1GlqYBoSAQeMKOVfCRLHmltSzWj+O47OBN1aTEtDViRxxVHx/f3mcAPh36DOlEjTQbKMCsQRrfXtcTg2grKnqrIwbLO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A1t5p0YpSToE5KvuHd1XkcWfuipO91AjxV7hQZz0zu4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZGbud8YZS6pjWJNdbNESs3FNweSXdsnuPvZzOO+374U28YoWRygkZv/6o4jIXJ0heFRyEoz0U7SoPvx3qbYel++0V4ox7P7Z/IE8vPjz65y/YKrE6q9QUmFG/STb5a5uNaO8W8mLR/QQlct2LCaxZ3PSXspPzakK0F084fdqiB/2umtk3sttZaUf6STmcPsF+bz0T4lJsflL9pm7TInMXizyk9x9QBmLX5NZNn8bwFvDUHwyRQUhU3WLXjKYqWNm497DlfC64U/1klHJY9WfVT8zhEidV9+CGnjQEe90d649o1/RRmT+jrpGrAmhE+py/9HuWEkBJWKtkZWm1lrHqoLUQWDHykDyKDa9zalixn7y671zDQ4RLIXk/EXaC5Toy/mZqB6fQ/xuDVc01983V4OxiaFkiEuH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A2HB1vyIfY2geS8vopVDeU9XhnmbJJayHoC7pnM3+8Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x8FYJzDsfTTu1r4/H4TTEDn73HustMijfzXvbpA9jwYpwVlr525dI9tWg9Zz1lm/aDBKOuCY0grVEaxAmmbt6ZUY5h33zxMhO4JH1biuKPmKI7B+ciZUZQ5su3lqUdon56+knDM+uOEHbMTF/I6MCwgABo8eZdV0ZfojHiIlFLdUMR2+Tl1ncms7z6Ci/vzyXqJjwQgtkn5ovfBSljhq9ggySCTwrbCg/t86dAn43C/Cwc6jOa9/uliPnlwF61jTi2UEYdUbvI0YPT02hwo4udToS+7VNwwOxmkgHQ9cNzdfXs/RrSkX4LUk6SEl2fMd17Tr/v+tsWO/zT9KYDmg8+gYJmYbI8tvSIwpk8nR96gN14xRUY4gasH16xl2sgliYALrP6IepffGpF/mVQ83hatxqECmk7oj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A2ZHrR6yMGmTVf2Q6dSUsv1q8UQoTY8sV231Eq5s44c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Phea5j/VPvO0QFTMLGgyObg0UfoiTruY9irz2dCOYmMAwgMRtSJomovaD12QFNQPL+Aq1iRWIkhN898EBz73SjIBhdsqfo36r18N7X73MZYHIo6nGDJr92//lc0UQzZOyVchHomftqTEhx1NnPbO1BBZaogzxcgeR9KuecKb9AwCmQtGGThBJHz59D4UGXq8BqMa0NCPcdTdt57uI24SQh2Mcm8An7+pI61CQnngAeK9TWONv3ceqLLzgKAfWBD1b91uP+4vEIn1MjL6ebmqnFcOfW9Uc20DugKcNqiHDWx91nlTolxPyusPya04xSBQkvwRM8sMFmFwyTHZVl4KuZ1uWksfM0fyOk7J0SP/T2xfLkdSo4TY6T/AETpzXaftcUQjTTBFIHPTGZU4g+40mzfVPGLPugxA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A2jN9kgy4V9zZa3FIfwUvU0kuUAWTzuFA3sNIe9Mcr0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5zN78ho34lrRP8LAC37TyRm44y8ujwIZEtKEAWLiT2sfWXBENIomQ7oCfZfWYgIZXXZ/v1FiYiFbxiNmk2H1MqUbNL36KrwNTjLMq90QFfCpwGpYxUdy9Fc6yOyhkL2iO9a7/W48hHCR3kHGWvN+JSSKIwkzfYdtxcNUszHxpnMvbmATm2AqGcZ3Wiw1vg33LXHUPtg4zEddLrjM3ysFUVyXjo1tgS/MfA1lZKB/63O6mIwDkpeP4ChBhLmp68uWKq1LPTNaHzKFRdxAEQlglA/2aBSIDQYUTnHGM98+OFgkcBN6xJMwCGbB8oEiCiJ7A/4kgcqGdz9nmAKAzxV0ml94mzzu+q1Lf1t9wT4EBk9LwP+cCBtclWF1tuzyfxM0LLVw2zzxv2mqnvQzTAfhUT0RKgd1jk38", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A3cnFFYEuLVqR221SIJreqeaXwwNzhmQWeIvNXkXM6k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EfUuKGn2M+62oGWyZQi6lXm0L0MblalREAZXytr0g+2Mw851WKCnBht9GeMHbToAoju81ZWxS6N87gOB+hrfrv4SRs4biABn/9I4xCSiCg0LMxBBA/tkRqtG4VvGU6l2L3IZTL4VKlBHSzzH9f59D3XX7iSlPk3Q4rbEqFrl7P/kKby4hvSHn19LPlbZH7td07bPxwrPDGMQFKAS6/H/KJRMuO5fq9axC7rCXFd+OW3C3grVhd3060b4lw3W4AacKqYqG/NgBH4cvYQJzzZpgLXgHPJQbP29bO3JNykWdJv6OLZ2cpEMJ8RL6XWGCnTNdhm9ueS5snGPCQTWGE5Pm26v4gAd3v+JdWba0g+1ABieCbroQYZxt3OnvY9xmRatUpW8xgf93EzEi+LN0gxu7npHwarTue3J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A3nQSIo/vbHAxD2im/XCBcSoSZHlZBdG/OMM3CHj0yg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mOlCGAzfI4XC1JSRVqfUBZq+i9ZqnEMu1jimcM0ALuYNfNtgfXXHajvcJiYSfQtqgPUANg++pVDvyXuJBDg00OUN5py7IgXe9S9YDjnPoHGOQOQ/HD76bg+tUrtk5r0rNrrlN+tp5bgk0NdW3bDabk5PPk88cBbHNPgVHmIak2oHCguwHGlxygRipNkJljtvKKdYjYHQfrCr3HgopkMxIKg2Ul++LWnPpcHEWOeRbvK8R/OobwTojyIq3XeauL97ESr//lDDXmQj4VeexuCAJwkv07mqNCJDvxOQXZaGPCP7+L6I7mQXTdWnoB1pWri/7iTsSDaL0ERk4BR0fpyuy0nxjYhC8vMWNvnSxCDk87vplXFeTsnDKjXZBNWP6v/Q5bHSeHfb4qsKatMMOy6Cb72iS+ognyvQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A4wOC0353brW9wjdg58O11DT4grXLlmzdMHWyqAKn60", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Jp+TbyARWV/9HqHaf2nbHEb+WntVIaU/yr/zRb5De9PH+A2bc5/5R4QyqSxDFd6pJIMZXOtwOlakbxoInmBLkGENDa0rpuXqtHT62tWatLgDWlWuYp56QYBkhz9OSe5iEbzqsauvGrhIQP8+D6h98AcEW3x+6LBgG4IkrQz+doxAupv/Kvo9fZ6ir/Wh35RrEUtMxYjh0U3Jr2WgxNlF9elu8iXEiqtMp3oLd8/79/jK54/63df+08Z9njXyVZWDZ2srrwaeEPPiIkjc3gWMqMWgkIqf+h1jjlV15EbynsM26IgzORoyF/v+fPQ8m7EI8CS62KOqdm78fJBxp1akVLrH9Ak3b4eeW8EQ3YVxPgWTYCZiU/mzBa995OhAS0ueBOXmiIoIJr1QG5eCKsIXw6HBLcDqO3Ua", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A7nytUXslz6ffzk7PzCBdjc3H71NHPDg6OYfp5P/8lQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dhcB5TqiceQTU8AGQj+kUX4B7ysxSJXmBlHxKKMxjMdsA7u7cxlfN0IuPrkaY5ClUFWzuV01H+p8TidS6xjbWow1WffOzVxogTz5v2u5SdNlwl2zGFU8HO2V+jIdL1iO6vAWxL/Mic1hD8KIVIZSzDsklZQAVyfs3tubdvXlp/JV4wudAAqYLX6PllMHjWZYFZxIUavFJSHMG166ZUfiEXyC242XRsr8PWMB505qgiKwVJ3vrZfe+nH+B30JQ4CxFBpo0lqK+hw2uiXbpM1c5Tw9yoBfch600pYPnTycSMlHSmV0pE4XFhpiICamqu/wOwnKbxgYZK0SuiRhrmW0L7bYTfAgGD5RvSnyDFPpG7smonZppQap3/dI6Kkn0vATiPcmPoKNbULWzGaa4N1VBnaoVJLaxpIS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A95Xw/ccBVkuZMLFJE9JPHQpgYTRm0gaD475G+RdBg4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sTOGDKBccoMnFjprFRm2Kgn6GpSCC8Jbl34KqAq3d2g4nkHJ9/UT8x/pjwSkV5T7+0LU9qSuC9GfcYAhY6FkZl1cflF198+LZW0iIkX3JxvKyYTLxVRgACcDSpX+F7kraUopFQXnqfiqMkZ3Km//hDbeNkm6dEFEbEZvk+e7wtVArckge2bfMDbHgp4HZeDhPV+3nbHVxzdu89Ok0xdOS3P9lJttlfd/KDus6o/YFv7GWEt+g4+9mPVym58PL3UmNIbI0x+QKpbtxFyERF9QeyN1PIk4zpsBPq1txDeFIZPvSj3esGJ2iuiJ+9/7xw0AgYNMviSRqluihujqJKa/16MYsn3oSFRTUDJ0/BwmR2txublnaE6NXi2Ld0HWfBIZDxZn+hnH6O+l8xRyfyXBK9uWUw5mAOP/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "A9X0N6KbYVRPKBYFRjXK8J/HqQefaXPpDSBty6icCpE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RXCsDXfpeZRbzZ1dgHWyVZ5J+x8bE/O6//tPaGYSQuQyCDu8GWCxDIUJM+bk5+EjMQkvDDeNWvjq/33hG3YhzUkFEb1MBn3+0VVORvR1vAhE2mRgYgNPWHyz1Jfd2VkYfu6ikEjuHc1TWjdySaLg6qBqLRd08U/lFGViiu4lxXpaqeRwYTDMOe8gtO/33WcqOF3woD2uTLw3nRKwQwQeyMXXQ/idHR7xA7byMESvyJJpGAnaUo28wJy6Nv1PiU07JnhGI76v9Re1Gl6x1I1NIM1CwHOgSIoi6H4Jg4RGOoyzybamdin9vCgzyQxsKV7ZLq+XiXdMgIbyTBd2CU6MpFNjoqvszjGJ6gSD/DEVuZlgKx/OFrmUiWAhXHi1aE5G2AAKLuvLOPoSIgTq0P0+e7Obj/qE5kuf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ACcb6oU9uBr59ac6f2nb6QNGkxiZ9xYfDUfR6QGNKsQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XiWRk+jwHmtQhi93zRe38L86c33VXRPanR3jCND1pNUjucXnBwpg+RW1Mt6WbIvf/HH9D0TtcwsGPiZHaVq0S3TjvAYTYRetSfwfRsSK5Z/fm+PN9BGO5zewvrip+vmweyS2wMaAbWpwrh/F7oZibYVdjKNIgFyrbrEBo8NEmgl8azuI6PXA9V9meuHOrurxEoo+/BDxJECyi+FKtKuLMNf9THV0Gy0bxRQ1pyNsfj6zaKEMBeGawhEvMttcw9vuhv5odFuxkmkGMaRKJOcPvBJkkjFOvCE4jSRkCk750SSvWtQe/wLGY1auP98xbbbvpj1US8VUHi0eCL1RtBeLZGdfi6ydvGJc55bUop4Fnn3vuzSJ7etNW7W4eApmiJyy5ACtZxcXGLf6el5QZsH3MyPCL7Fb99vV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ACdjzn9C8uJLFfJnTosPeViHTGLvtXbHatsRO8kCAJs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pkpcAwwG68YA8CVC7s/499HS00YeHyG5nJhyInuPJ4eUdROXJkfk0iMaMwtBMPElEg2wTWPHgFgwANhWApnwu0HC4/jUI8DUQ3KZ2+Ay/Q5EJMcBBHNc3SvYGNie70YO5f7kJapCRJIpN23nuzpnrc/Z/2lxB31ePgoX6iyYKHlHsynVwymrswjDeGqCxqs5N0EVzlyLzu28dHLK9/34iBmJ56hIE7PSLHNVeyguin2zzTKzc6AbcP/PkOQudHrL79vRcew7eKBPj5Fgt73b11nisPH/xugzQ/TGTsK5Gg1+uDkx4RuzZIOFCND1FgdrAB5cFailff2bgSOEOT+5i1QBBgvaAKI/hRPIo2k7krlSlE/6hgW8ph/Rn7zk/e0DBcvYOcJgMXrHcA5MoGXVrR8WXpznpUQp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ACn/wYliYusRLf12R+WqpyIpAcnUYw+OcwkptNi9rjs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nF+vleWfxoXI7xw/H7P2SUUdlCmyzz/uitkOjQPTiL/xJX/YabT+f/ByHbHhigOmwn1K+jCBDVHcJWCwh6iVZwIcITcwsUEfW87hPHOlXl7jBYjoVD2bRQzQMIb89HEkJxQ8aikmPzho2Lk40j8dcAooZemUEiScIJVgamH0wlNHRR1qdnryt5ePS0KHzDyYV5rTP2LSNkj5RNXS1PYY6Z8mRpgGz8s6nm0ZCdpcs73fZmjvVyUEcIM+9W1xFhyyp6B/+R2iqI+zHBkRoL/E7DO/AmTcV5Lt5oEMcZDpmQ78hFifxCizRjIVLvWbHqAEHofC8HvViD/5VVXmZ/D99IDIzTKyuoqJ7aKxNv1h0RYVluVz6OtbP1UKIuVPWmvyRikHt2kJr+sWUJSCE8h1u1gyXio28i/9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ACzeMeWQpukmyzyM13Wt5BTKYr7LMOCOwJdEmin/Frw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Sxoi1yz+dvOXbXIooYtaD1QDBSBe2jCx4v09JcTug5ogz3ijoP6E/FhV4ojwXWLQf3jGB9c7Y2BzrPxo4LnI3K5AflyxkqeqH+46tbz765kGyTmBuKGAfFOAgiXCSAdfZlvOu7+tGJkDWllVvOgYwHyBrjafdG7xklT6MVBinyOH+xPaUNRNWNufoEw6xMgdzscf1PDuDhM5PgHYcvqAxBbEm+a08QTOnyltwv9G3oGeCKvijhXnjuYCUPmtkEUFoGeqcKQkXgDBlT3cd4o/s+p541nYwXr5pdeQfcw/NY+HwmnlKkBaOYv13iiT3WTNBJbM/YtGx8N0J2TswjZLxTZcq011QomxswwNRfKpxHmMcjyiTVwOC1tTEn0bDF3d+AXK8wi/4MtlJizcQ2cjraH1qnLtN6Z0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ADbX2OkF0Z2B2Q5k1cPZHOV+vxwHbhjxfv0f0puZtmw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s0K1LYZ5NNhv9N5l1/6+Cm9pjfteQKLPGu3ExSBBWRAfeNI5qHnJO8CL6UnWavLEIYi1SvXgqzw85wDPKWzYZgv75gtUAEY10iGGpg5Af1nCHDnlrSqtApO1VXHPpKQ9c4ENKS+94PGGsBEXQq2+IxvXO7yZRoOuAhRyG1PA9OVT7HO4pbE+sT6Ja7hxezufHpH/YvGsbMlksFvolXUj21fnf+td0W3dDNvQNKxT1QMk9Qq80NQlX15grqgxCEG1LcoEomg3miyZWuWZIKNMOpgq5eL1cL5BxuNNJzxSyVqKyL+SCiyBxMkIVjVVfw0L8k98Ey1h5MVsESXH4/8Vd1U8Nfmpp7k4VJK5IeEzCD947icbjwrkF+k/LFcRbTgbH7bCuIMceBKlF1C97JXWj01umQUPJOBk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AHPaRXpGBb1mJ8VoK8vDSJm14IK/uMdx+mzmJ7zQyJ8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lm2NkF/TiER3WmFzvKIaYvOxZBwe1otBDTBNTIc/A/mnppROQgLb56winWVx3dsl14GLexjuoAfL57n+/TXG5RuoPysbFqhipCT+Y/rKEHWj+Fkz+UJblSkkmfG0nU2wFTeCjQzk/5lxHrCcqKBDizJSGceNcSmDPSAYFf6imGO+LTyUsR0jgO3VIySRdWdK300jVcWRVmb9R7H1rNHe+N7KTCrRxpe0L25F4+U9IBz9RPl9oaF7vMjeuT3kCnEhQiq7g40bBFZQJVTsG8zAPUMCbOO0yw7KCgMkPdRwwhwNRSWfpY8Fua8oshuPR70oe+zGyVWnMxezzts5zwYNS/cI/SubBTz4vFvNdcy1jVYk1C0cfWDevaI0MjJWoRFii/jKq8shC80D28B5Sl9rkrzSHkymdO9K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AHqsJBcdpgeBGjjcjj2C3vkK1o4uldg5idaO9KhAGGg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "G9YiqAVnsx6M9iVQkuAZj7L1V3dG/fkWWY27mO/0qyWEfwqiBVoAUttr4dO6EPoYZlj9C+eAE24VyKYuNgeIMIZmlk7U1ezW1OfSYXZMv47Hw7Z46mbhMKXoeFAFT0i+mEF8ClrvznVh69ps7RqQLcf5sTHDA/m/p8N1Ez8V32lIV725BndoKV2j+BcJZmOir0zm6Dp/QNVdAYflHZVZuNYpZ2DBCf8FGyyJ0ItT1krITK7CBxti2XcUhcuMwryoFYZNGtOYLsh8OkHPUN15M1wjnOSa4Gyb3D5R7tI72z1e7GuvIGXw+sanO8aKfsLdWIKmqhwdtk5pJTRWJpUb1EUCFm1UggCFGbOARPwELqo4w42QsYSyJ9ZzwovTxSekz1PDtuYvuYImup8JGWMJd1friAt37sgs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AI5Mz7nsSIu6cLeyhOWn8QJZDSVfoHuPjm6+MGoYvgk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pss0SfbUiR6iO+S3hlE7Q2nvPJhOKxG5YhKoNnGl2fOHKbhSU4RQ+6py82R6j8hjvlYc/O5uU2tONSXBuhB6sF6TDGz/9uhhzzm2/ygGn+YUssf9ItLyOBYNN9+c1iwY8BSsla15yKURUcMf2SHUJjOL+e01Ou8D8zIhfmJnAsGOZpl/txFbuNpKuzNaJAXuiVkbFeE+NwhGvG0yp03xW+5k4ob8DOPYp908ogRGD7c5jAwNa9K7iWbluxQg/ZflpPcR4ru17dOvgAEeoknh1AofvYku8RSSSufw3ZEJDacmHZE6TYviWIrHxpOHeCVgIE/XG8+J8PCsKl8Y9wq+93/I4JIfduS55D72kQLrJv0FP11t7E1nhkaAWxY/OijlmsLjwM7tOey2o5vHwlvWdI0E5O2vCilw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AId8zn9FkKx79UyCcwLoNUUxHwzC9Xzwe02fT840oCQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DkFzJ6Rq+7QFR715GmZV4I/FCs5vRYf/evnQiTeqG0ay4c2x5Y7ooqPU34nnceGY3iA+dwWb0PU91m37zsqCZXBFYu9oH/OKgDUe00nH1OzbgB4VSaYd7rr+ga8ahVdnxypzlPV3zY9Kudd6P+RKXsVDB0R1cyj6kjc/FP8zMhDqTL4TEQuidcjIic4Lx2jAZ2zRvuNuotDCAEqN5+5MrdC0EXYxKNGUOhI+D1bRg4co9tRlWITGKtVY5aO+DCAlZ9Xuzjhu4yvyUdLhrzV3BDN6LGC7JX6n1dyofKWqiZ1qKQn8PgUU0cV4IepLg2c4QE0iZuqW627ZgVp9b2VzptRnhSaVUgyM3+xksUb8pdCcQ2OeNm/+3E9uZ9Jjc43pzojx/WcgeEyLPwMHOs17OYmpjfCqVrDT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AJwK54xOXTuxOLvEcpbtpe1FHqkfxov5QHZNM+M8Rq4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5ApHSTK0V404LH6g/WALBBNNeogoq9Rx8sfJ42PKARdoDOHaHeEcJfszQhn8aH1E6AZRCQ7C1wAxgMagZTM6w1EvpTCiLtynEIFTgU/QJvcPZwNKZ4hMTooW+A0GbIKuDAXkEbUJ/gNUNvMpYS9AwaCTaXGrjeYe2JPtzJRbUwfpkCtO/C3BEud7UBNf5mclDZcB12/vwhfZTlGzDzGTz3hArNdc2CBAfIzX1+r5C8XMbx8962MI9I+NneLOQjuFQQKm6bgq8puOMFfPJbIN1Fup6XlzgAlB5wGeVeGWQT1GFRnyTiJM7d7BKgvfXHol23av0F6jEY8OwtTqtlfAIGHOuwloiDr3SMfy+Ht84BrKA0VmX3vnhHrWPuSKYqK6Lo8+dDJesnwY+eop/N9ANgRJ6fkx5Pv0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AKQFSwDzUy2W/vxfbdrfxuj6t6Ezr6L7XsuolgMel50", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wwKU7Y7VIKrpTHVGNwXc4QJhQvk24U9WNxQGYecr/qb2ImiUB85x+AIb63mPz6WsNncBhCCmKS930ILGdt/OYjSBMWxSo239laIVQm77/9dasuiOhA05emXJvlf1ySwhQYi8h/0lu7cDBkKNBvTl3TI/d5uAV08dRZ7wVBTWV6D5dixBI63oxPDe/9hvG21LpItfktlDYMUgyARSJLeUgx+d24pcZGS1D8oetMWOezd5Wp4TRINvXiSGZ9W7+XFDETdwqqVyST4RBefNX/4rnerBIL2FIKtEtLa6zQ/Z6z23nXOmw6viixP0zs6PhxLcFoPgEE9F1Jhy21HrGsf+f30hf1OqWLAWiyj6RY0KTbT43UEKParbV82UT/6A8cSU0+I+Dxp4TPWI0/AixWX5/cbnRAeiC7sj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AKgfCaFsrgdZbmR+k0QtNeAXh4IS4T7ggaJ3BZbYA6s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TsV32sl49UOqXI4+P5YQSgMejN2vxfuHQKU9+04Kk2rxe/7iE0Y0g9hYY8NnGPbezcIzghPBa9haujSQcLKgJpBXyeGymCyrQIxbmdGw2ExbTITS+r8H3MLWyjH9aYCYbthw2pITmBa4e73xa7jLLCGzIEqp+F27pk7c1fu5aT0tqf1SxHH4qOHsEwMN3tQPMW6G1cvKeSpiVGwdLymsjLDp7HTaEUuwVMc4Zvj/DObbT/ZGk345ncQFh3eRGzTBoQ82AWujfFRnXY1odapaff28Lv4inTLoEnOU0dCQdxHzBKR9dp6EueL2rfzWNtN9iAQkqdCtq05T/LmcOd+ekhRSgVpOztSwhkWlVx4bes/eEMKYJkAPCxVevQptQeZ+HMHBMpN/UTzvZ6ukLefi71psHT2Xp0fL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ALHGqBui7n5plgqNWMcsNxCsikPKm3uQI4XH4qi7NnA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UkA/0edhQp0HlixtwtBj96fId7QTFH48XFzNGYjWjZsL73U3v7NMTdU3VkzJAzKJPxMv3UsHCrFocojRvqzWcQaPenxT4nhlzgcZTihWzIJT6mrKD0vUQrZdeEjJLmPy9v3LCbrQG6uzJwY0fBfDGsUvoOSjyQyuNlXNP1YAyrwI7/9dqlmVD6zPP4BK6BLW0I1MLI4I2z4JWosJIHuciphhB4Gwpc/J1KObLp+nDmZAkruV/qO51ILEYQ1Cru6F9IB51jNp1al47IKm8ynyQvYCS0Fv5KH6Kokdgh6ISnWmoirxy2focjH+6xgl5X43vhc7jnxfR/AeQrPqx8Fwu5clN8HE02pMyzOo8c1nbZKYKN5oiqdUOg2yCO73q4m+fgNEbcVg75Pp+JvbkFcqRcuzyj0UEAp8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ANxuwe6Hl6a03758NRqYZ7AXDePMDCgk9pUSauXInJU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hB52LvebYDN6DOm3HQl0mvj8tHulfm9WrSE4g+6JtDS9HvDlci1Wz2iq8UBCowZ1qt5BDPZ+AzLrOEldGW3KhMR3G8COqQxNdyLzp/Svcunc8RtvrLkWD1H3lLTLIPhwVbz8LpAx1njd0K/OqoenGZgMsaePEIDprmtyf3te3HkMZesvjJzaUwXJFyl47Fu3egfXcYqUXkHsmthi64J4kKDJsqHfiwsqZCYxtZqbGZrlG97CQp+rMQ/uQEnDten/T5Jo9VQNPZrXBLOnQuBG43SORzFvmP+v5WBhSH7ygvG5oMZ6cZFGrWVuF8h3HcCH/HyW0NsujMwMdMxkynaOPauBsWmbJt9fbBfzlmm2CN7Q6VgzE+gV3wQiLOYmUZ/O9zB4PjgGWzdx3f3PSgD1HWa6ZTLeLpkA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AOYlJh6gSPpslNykqVbwW1pkSv++Y0vzDZxnn4wvLkI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t31qGrWo9d8sdyBl16VeTjQAT88xvy+70Q/++8q9N4JddfeAsjLwzENZwhfSWlGjVm+FTmg0dOkxXde27KZs52vuW040PYhfMAjONjqJ+t65Ba9wUBu4Bk1urBg0YnKuPia1IKEICgHsKMwuUnKAcLcb9kOwQ9IeIPwIS+rUd/iofiTFAHAvlDaiTEvfLi90HQ3XV2ekAy5ZgClSXi/4/mqOmacp8+YuxwfZq/cArk656fwLv3wgPOgWRye5r6pdYVRlLEJT9uQughYM5eK6JZIoQLsFFZzIY6sHzxHJwR0TF8bEYsSA67Kh0wsmHXcmd6pobqPe6/OPPXrO49mBxWWVdfmWgtbvMS0pmwwRHVLd2ElwACoqH9mrTiA1HDydQm2juVzXoMgZKQ+salgL1g/qmY0/bW47", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AOaqQr+uTmpaSwUOqNmGXzlW92d8iPeS28I25yJBiwU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0bC0jUhaTMK8nD1L0aE8EJ1UTpfQXklG9ibBwufOlJ/XnQWsgOc8yTalK2G68MyjKIvPy02mO+80S8oYB/vjI+4jzm2QB13ACPbw3/5DrSzhw6TOak7YU7auPCxnQar2PHXbzbacosOjKUildL6REpusTggp9ak+GBxSPBy+SP+MphxqJyS+fMncGsnimJIAEMgVM0lCquFB2zLGQj6brlHpsuS9bwrXwQumPZfSjYQpXjCqf+5uX+qd86UBbU7HrlFRxsEjQK/NVhgPN39r8sJ3r608q7lSYUTBiL8RnJlhZ0M+UVi1jqG/FwBZqB/WZq6IQqa9Bw8yTAJ8fsRp61QHs6HpUJBI8k7ZqVsYQEw7MquSonHvQgoc1H9LiR92poC30o7hCoU6lN5mzs/dvdnyj+rlHACL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AOi2EdF07vPbAWsKUdrwK0HhTb9QH0dxJQb+1vgu1go", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8kiJ6k3WvaO+Sp1LH4DRd3HQWdmk+Q7dYgeVzhkDBtH0A1IHiEe9NwFPYxtyiGRBHBobfekBtI8+UhAhkC+Z+7SVXE/VedmLd1aLu7/bkIcK0oMH9nK1RnThdWRW/UtTKSeO0UUQm1Ro65QDutlZ7gcSCfZbpXlmikL1mCfI+h7gz8vZQ+rXfE/AQT2W7BUvIfJNbX+otDLI3ka6tpGEdzTy+O45VabWKVkH4yYk06WhFplpi9d2HWG1bX4hv8p2RrjMQ4MwDPT5SoToUdI7XlIgov1Th+P9f8QMDHEfcj6e06FNOH2fPT+zl6IxX+cCHOaXHYvqQswaOBycMttLYTk4IBnhw1wb4FDzcuR+hoE35i5DxiTVG4GeYI291WaRqCmLPB4q8V0fEa2uAXwJP740kOodE9dp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "APXFzdsbHbRdXrDAmVKV/CyKPRMGWqKOoa+sqsUptQM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PzLhaaDSzuPM2pHDXadUyHu4/fgAXhw90Lbe8X8DyCEG6daIJnfWkf8rCnxHUe7XAO4g/JefNVCWfAyoDcx27H+pMNo0g2iz+m9TciJWP3KWmSufc5K0TAJgkyYYv4cVzESqtXNAneGY8k9fYqKJ7vVDcTYVLqFWaiF5UHCcMcSoa8IJRWPmjZB/bX+V1fALvL8+j7KPYN1USp5+o16cBvYPPygn6qiOpjFsdTaOdpPa6ga8vvUvigc0UnB2Ik+nGWDY8N2Dmt1Bj9f9M4X34TFwUGn3BuIGyThstMqxdEWVachCSOBQSKgFn4YENNRrU0rjAFP4nuXhe5HpgJZe739zLP65xYCpIEGmnyaKiJSvFFD6tTrYeEiY9vqo25Q8ajMwGbsIlzUuJ82LLeHZlKyTHBhbkcUc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ARY5n2Wqn5Bzn+LX1oP/ebsxF4B123lq/XsuWO9cp6g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hgGygeaiylIOhkyhhZlkigrB9jIgmugYomyhV+eJXKMMjDqtsQmDyRGQRiwD5YmQxfz8EnkGx1iWLNdxu5mt7I41qqj+wCBoRBndRwhexBNUMVGpTryqQQbQ/MmsliMNU1io53puc7eeB28Gx7LcIQx6H4QfoNF4R7SALpwtedjm5Xyp6sGsAEuZKjdytV9EmNkZtJxpMUQmCTPjnJi7kk+zpjPOFQC1FllBkDlENyB7f8lh3bPb54o4QlwsjrbjcaR/JHHPPIlc9EoX5q3CYDP34VK5lKTwxL+aCtIqm+v5q1cVcBGFU3SAOXNETBEzo1GMtei/2TLdvcgNcYd5y2jYIMV69MoMiEds5Nv+HXFQAuzzEmcwJoozth+P/DrZAK9rejg17Rw/zjoOd+Bb3tx6/xK3yImG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ATt4L0E9216pJ2weuMaAo6OWIHYbsyKyNNG5j6Ventk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4Hn1C+z1TqpASb8QoeQdWGxciHS4e+WfcQjYG1Sun/uzThVZxsX0cwDD+OxfFl1XMfdUOq0uHrn24oaSr6soIvhO+GYkER9oyYjxYJJf3p9HPDy9IyOpiObPy02PMvRcELE16MrSooeogV7ukD21zgnwiS6cRLaN1wI1/vPS+KbawouuOherFxFL6U5v9MLHgd0pP53jhzgSjUUwII3Qj8V8jApNjOaTf0w9n4eInc+WW7MfKyRONGRQSK12MXXjaZWwD2/XmgdqBcWB1AGCDTUPb/Lai8zwNQYxLFbYmBMz/wh7qO9A0SOn0nVs/WR1mDcAJkVKZNc5gqRVjjakywrpBXzJOWCB/R8iuSBunU84h1P7aem9bFjBOqrsIteG97NCEpR5w1JaSa+2sTz9OYRO4FAOfQ9h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AU0Vv6dohjz7lHY1sw1n3pJaBmCdLouIKGXGp97S/O8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c5ViLNXzvXz8+yCyVfEER340ObyzR5JZnxLZBYTA6uSnUvTshbBnwinUo2UW+5XYE3VoEFsvnbZfuTl8Ut4idknn2u/xTiwninN+fBCD2hnk02OrqE8hHwKAcBFMMit8Ras54XrvmrJkQwSJjQ9z34c+TgzzJ/9RbCqTE9JZSSZVPm8/XOoC20zQK8eFjr7Cn6owYn5MoXZG7qvyYr8/7QOAZqU8JJl8MYgBuZYBPhvdAQm6Oa6UJGAZXaXLvhAqcKjBEWOVzeSi49CGnIDHwoLTGuGZWkhRVWVPI6juDff+qrdW2tDFe+DJd4ILHzMba9pE8ihjdWJ/a3YRPZuMdKg8upWqvg8t7q/ZFWVwkA4dLEZuMCl393gzFn0wi6TeNPX+ncEjnr/hcuMiqCjO3VTx5DYHIeSD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AVDvQ7jBT4+ufBKLS1x7+AeIbzas7T6f3iE8Ris4atI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DujQBZuJkKMlEXDOskK56qZp0neDHhh2DPcIpEScWutT1E+PESoCWrPJ9HRFheqcN8/A4JxgKm4O7qBmk4ssOL8tvo5cAfqFg3PyT1BHwlcGPZ6z1fQeobdFP59ECcLz8QfSouownrLi2TNfRZvhyHReAsCgqD9+CtTTWgJKEO/bp1JGdGOOkGmP6/Nd5wn/Rtm1lbGNEjmqYOuUqhnvZbcr8EpNuiH2nqub4Ef8SPq7dvAmolzYT+hHAeTSn2K6hUb0StqqF1jfJkXY2lAVqGKPxgUIgTd3bC5fPE5/VbRzw2r+FWn5Pumzw/EOcbyhErz1q0+p/0ZpbLMEL6B8m79ApItdRcl7dDfKrEiBOVaOCfKBjv1NA9m46zdSGPk6VIWM5Z3T2R51OkTiFEG1y47iqtbVeiux", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AX5Kleqr/6P5c/2UF9p6zY1mGwsKmXv47V1dR6ZuEW4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UkRCQ1hxjrbz4VtBdiBdkqUuvXqGgd0vUhLRk+WCPFKRecDdLG9EFW54Mk7K0VBC23RKGESjpyXxKGjS7+9MenTZRd2w3O5hJLpMAd1RFYLQEZ+adp1QEAjs67dUoMz3ZRalBx6omAf7GV4qGI6kcQrCmsuxxzQn58KPJvKz7EYfiJLQBsgj55QSMJMlu5J2KZnb+8HZbpfEOcgA3pkhFHH9NPhLUUoiLz3Z6TJsu0C7hUajRceKjHv2ukaAwyouu2hvpaWvGseecV8mDIoK+pG18B79zLuZTw0bSYwgofk9jKium6ccDaTEyAd5yoikrQVuOzbC1RGqfI+U99o/GJgHlKa3F1GovCQ27N2FJuIwVL+S9vsiB7MH7FB/BOtnrjt1a377qq3bXCuuhG3wNwzN7h7H7n09", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AXIBYO9c9mCyRGIS+3GE4nkvmy/S86fWzKiX6L6dKx4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/LEAy/g7E/ikltNF8cVbXBLFoy8os40/6A/hK1HPQCQEbq0uDL3SeyqW/+/yeCLaCvPGNDeSvGhqDcceMQxSbONs27jK7Z65IEAsp2wx7cg8BkQM0l3jWeC26UWiRYGje/Dyf0njX2xIaTMz0NLiiZLA1FajC4xhTf7XhLu8zQWMolHgTWgbEK3zO0+y8/n1iaLerT57PI2EKT96pjBbvXu6Ym+2UzCAjC+G2L43HFHqwGjOH/QyLXltWxxOXZqWVe3QDKUVLIpEE0hU/W0LofzpMA4+ib2cSXPbwqqpg/WEM2DEc0J7M6MtZsi+V7soxt5wMMV6LTNZ644qcjzVVW1Oa9evUtQs0+NEm6iNJh5ETKZx/vUd3aYSpoNfdLAxk7sUxaN6Qq+qhzT7HvYRFqCNojld80Ay", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AZtd9V7qg9rwcgISybvqNRFEi8SBscchI68+POQuPfg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WKCN/hYDOGuitM7V/jZrkWUAe7VyFJ3SpBJ35iPoYbf8nqLKvM+4vL0P/pvIAXUuaY5AlaJGdZPmA6IoCZqHehTBDS96xZKplvNVn9z8OfkW1QJyIiFPXy89lYrp4xFUiyN1WZ28aAJu1fMA+OxLtOOAyOfWl1gmPQdjLDcnlojz9dvzS6DYBjOfJ/ph37pKhfIA77H31BRTacOo9GSm5eiEgKv1LRjFZsWWDf12FSRVp9lEeDa+y+n7lZdPB5snN78vGfalm1GSw2Pq86WS+onzmFH6XjSMFGUkijcgqkX1GjdIBJU+LewiPRrKOusqbjl9SczbkXgkvdLSOYZuRSUnC38KHYMJqQuxGLVeDEeFY4QsYpLaaH8RCWSBUVbRkbjG4voBCk7x/arzUQJ8MYW9x/HwQbjX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AZxI67ury403/6V4oQ9+F7+ofAZDJciKst2BeULIJDk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VKC8tTfX+FlxqRDSDgaozuHO5GTWfZp0IQKvWZQzEgki1pcWbIzHeeAMRENyhUjVqi05Wi2B8qXlnOgy3oMeLFp3hllWg22y9tK9sfZvKQ0lGna+iDZZeIsh4zityOdZh8sAkVTADyucTRjunv4zZElH6/r/55+Boz1PAxVLhBHapmH9iHhwqYn73CE9A3QVJnHzYiYox7VQy/NO89+mLnSo4L4klo2sZJrIjBxNOwOtR5wJH9yaX9RsmJKZZpFluGhwj6oPwcqSk86bOjPpzA/aWUzHxumE8vAGl1ix5D1nYlKSUSW94tzGvA9Y/KO2GOEsiI77RuxfEk1prTxL44hLEEQX6zRin1Y6/bphDc82hwfjem1w3DAUhl/uWXlhbqfGHpyVLooIgFFXpgKABQ6uHVt2csFF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AZySDjXMdXblthxgpF9a1oxPFAEXADZMbeMkQ0EYO+g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ei32lYBRqIXsQuJPxxo7FEW9egx39jVSNsLopRknI94z32HLRLbjaQUXNYXzJvjGtqKViCGN2kiFy0D5PjfmPLFwxJS7mCMTCyy87dZX7jpxEcfbiXNc9Y+vp1Aa02x+OGwHzafABqXCvuLLgYxcjRlCdvQ2IkacCo0s88/L58wkKkBC7Ln/3PGpCL48ZSqyTeXmbnBeB6GPQJYXZz3VilCA6P4kBVkNCBHRhtQ5t16zzeLUmZFFSipJ8zG9FRa/dhf/SbsehIwoKD5mAZ7KpUvJWLRG6ec0vf/puzPBbrdjSE0RxhhfetuuxQJuZ1zO9z4WNlaixOV2EQ6lpgsox/qMaSmJxTSbpRkYctucAlvooNGnUKvMN9z3fJ+J091yoqnc6CCrGnaIpTasRrdvJJfz6Fzbj8tv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AaKd6IKBvPdpmbIP/P2ohhi1tkcmCf7MlPGfwCtZWO8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0WRaf7uZiMwN0ETqZGPsT7Ps6SeJUgq/QYsmPNHB0axPGH1qJNtD/ZnwCsxwrsK8B7yfgbtjlwV6LAG09SQfOWWBn9f+ya8LF4rfBCjbfUe+G7l/kIfE0czLwQZ0Zl8GtJA1+yVLyrGxmzIRs5G3PFUmscw/cw852C4xgkoTnmIdpGrTtR79cG4qE60WULop4Img5XJSsOzTuyu/MlnDr4OubgaA9c+K36U8XPxZHe4OF4iZxV/NaxDrVCG4rDvOFylViaJgQE2ZkFthGrOjmZNdpXr670CIgxwAsGoOViKGEl5Ew+cjf8S2AD/E8c3wHbGvRITM3kKaUbFh3BAUbnV4UIOMkr3B0/HYEYZscZuCL6SaOV//2gQAetM89a15J4GCJ3mXUrj3EozPIATEifP5Ja1utlIM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AcRyLCQDQ9O2Dq7fxWNPZXRrdClxvEYXrROGqA97mLw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d5L912K/KGX8GrFl4rFMSSR65it+DADj7bf1cxnwwlkOujtI7HxaZV/OtgdVGX0+FiOyo6wWmdXrdzAkvELCKwstEBp1W0N8D3M4VlO5fQLswU3dKDu+TRFHhn545lmXdsuAmGvI9Lf4C3wb7ihYHU0aYF25u/01JZhCcJ/q3DGuZTaVoDE0IJtia77lW2k2B0cjp1gzqVC7i3m/HxWyo5Zpzh1lSBRo4hIS4EuR+jKMLDU2j4i86RQ8s7TBvmDC0tmu2uEZAAp2JL/uxRwcVj5jJXYcKgXV6AQ9YQE6OKGI0DN2HN0MKf27g9xy2SpUVZYvat2NPnHZqr9lCvRBniAr/k2amm94Ro6bp7EqAlaRbYD6FTE9qdmW6WvNd8tv1A8dI5KJfLDbTBiyh0NryDSNHK5eIvb6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AdZensUIabJTh3g2GcxtBrEPNtqAyPb5J7DDDR0hxAM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WbQnZXXUwwq8MZZm92KqWd7pxXlMjixSL6V+eMp9MW+9vPCeNWVWh2EPs+Xp89gTIf/c7wn8XEXSuzj400J1yS6GBwB9x5MqxxLMsM5ntSu9GBO35bnFYy+jcoDsMVry0NsaZ2EEpNEsrlbF3TaNQyvi5oMGeQFQisWnbSelEpXX+daY42bVI2VvsZfhAJKRY5ZZLL8exAsfGCGlOJyLVOLBaS89qQ5uwRpUONu5ivT15Ndlmd/uZRaW6iZo57i5wUFjiJlGRkOqXUCYWbrGSbVJqLtzkgDttIKDu+pJGQQloL56HwPbiLSJ+IiRls0haSgF/u55oFQgBl+BDplTOr+Ow/ZWsSuzZU+ooz1MF1tkj4KYeUXKgH6im48ibmzMUQ3cYQb6EG5IaNTPLcvvXSwKVZYIhKzn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ae7/3A9DiBlm3f53fJcnWx4qxlIvJekbrPXOwPwIu4s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UfNxDLPVx7kS++Wvlt6Bldh70m9bGmJVww+eSrbN862UNde26mzCxH42+d0YZeQ/oRrMGxv5y6M4VNLeCpIBRMoh3rMqSO7lamEIyJDBQeif4+Z7GSH5BrnHqhS1d/JMsGubk/CActnabbzOOx7DgGejQo0cU0GZ9KUkVHc/NPpwbp29EXODQkgRS5zhkeqwoXKTxQ1AZUt56Uom6DlJF3MwetA+6b34oRi4t49LdJcz9VgeVil048V4juwm+D2jKO/YnHEV6d3GoLea5VJtnyOggSHbBTtl6zvT04T96Ey/CUxSk8WhFb0Wn+aFEzl4ZLeJuJKmORVp/9TobFb+FGYlK/YeNxAXnfWuM8BiDT1V9gR89kSiZkTSMyL/2XQtIZZJ96wIskcAqtU9Bfj9G4RRhuirCHID", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Af7czux7rYGGU1X/x9f3WinkUDsdlHZAJov91zSIelQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RVdScXi0B95OiwXZAKOwfa023KSd17RPT0HoHgHjDtT0R/5LBw2qj4lAYLrf+wP2gNzEbw130xjVKOHf1nNEenuUY+RWuqD/p3v506BR8Z5HDGO5z6z6K9Ul8K6LcVxLC2hKV2IKhfInU1+5xpEMt69a4R+vssKPBxH2jHAEKwHNiB6RQTj2vaRdJYATN+9lS6Ye9js4NWHneNUfO85iEAaOgWWn+B3WPm080KtHf3+D+HEvasuOXQ9lhpjLHgJxVog7ryjniRsAS3l7nONOi8hT2fBbIeL1b2ogXxkFoSOTqGNvH39+1WqtCAGNZLzV3PA590hfQs58+8hxjGbtOwrNMrgwJLTavYODqBBNB/szIcgHxQFkwgaMWGNW6MG2KumWYBdUkVxju/mKwdfpIb7TarVhak8O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ag4B+FsuWxlsFircfn2dgQo2MwIynIQK6ojd8+ebBCw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CjpnUbw44heYq6alu1rENmbcjdUq5qRBl5gsy0Ew02RWb1OUaVq//mPWNygbQwUX93hsAlEt56z7ACiKC2ZELquNMUXCm9KiaCMYUWSKyAO+k3YZisLlM1Is39LgupaCMmyJ6mbdf7i9vV8aiQLtAs2GEEE04MVttbN3O+H5PAtzsByifnsZSRmeECQ7c863DsMBvjcp9HGYLGkKUw/pMcvVJJicRZOu6VatY4x42a87M/EAG/Ev3qEszj1nTGbbgajhARetD0LE8vdPfc9I1qzzzcmVDHmeSpqXFql+Ev4iZmQ/GrDLUuAwnHZrUEd30h+TPNzo1kcEgqggYqbjZZuMz14oiPoD98Sw6QmkECO66H5V1dOL4NHdr0wlcbnZcH8kymyu5VUAlzqMrX20xVnV+TCR4hL4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ag6OseihltNdg7+4ZB7Y2XSNsmmbncHcT1XGASwmXmQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vSN/fKK1CcEdaIEoxF4x53G7MEBBMHbQA+4QbP/IGPEctD7vi7lXKX/BKDgykXbwsRVI5pJzoLe98jfwD1d8NrY7E1pYBVItcwLSts4CPUqESRcOxk3cTdD2Sb3AhofBp5BFOTHJ1cVVC05qhhgEdOG/XrYLqxzjHlKdD4LaRRqs0RL1dJJOMv+pikHI34q7JzxahMYwKIfxQfNIXXJ4pLvshsDYooqEwhDeC6T8xE5hh7GsJaZBQfcdN7BpMugByqjWx33eyGTLsyhy1dVOcWiBagb89fBjIO7SzchkIxjQKdi/RQ0A7vWVAQ5btG2JKZywwlqgLcx0oddl8wvpYEyw74xBbWiiH2/kKXXG82uifa8Wn7ReIaubR/4Mj9LPBpZbUyA8KLxcfbu70fW7p/t56MxQ8dSq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AgvR+0eaOvtfOe7eF72XFSVWct03tuS1fSmLD1FMYnY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NiGYnCplJjkezbCqxivLjkTbfgAEhmXSTQNvOLoNA/Q6VhAsLvoZLlbkh2Af7edyo6OsYRMUs83tL08oh+EjrxxvZKeCGRPoQDMkp6qlvnB9+DeU2pODnN7dciKDmJNM3SC34gMYdSVlfnqGNfNAH0VvsSYPKPGM45MKVxJL9lKuW4AUzMVtb8XiDYYaQmVHNiYkLVAxmDULqmeUnqoFIGGTEVwhfrn3U6NC215GnyTwNV+6Hu310c7sVFfIve58oPIJSQmxuBR3Pq454Fp0LqVIfq09RL0SOBY/1ITPHCVpxE7UE9lUgzcOhmnu2Zm61Q0Z4PK3UO+kmthWcDvHL2+NuR06CMo8X8MqY0iy/NL+1cv1qrITzK7v9w+ejqgpYfluJWf+mF1H3auNai+saz4wAir3qtwC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AijVIZ68DDjJ/S9FnHioEM2Rn2S3r7bSrOKeUURssK8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aAVBUiqkVTHaqJLC3ieeKpzZa5gURHy7jwIsGBhVxPgQk4RYxxbaokZf19YXuOgkX1HgC1bRvVZ4CFyQgaM6+VhU69+HUqx30SS8mDcPpE9NajGVbIvvrPlGb0BnNL4OHRNUU86fAi4KwamY2gD5PC6LX+RFUgRKyXXNMxjPCD6VAMpeAO2s4+KiZHy4gGn/dRDrdvxAjkEHYT0+yZld23n1Wq4pcDlr+Uw8pQ2L+/JID8K6O+VcDxpvIPZPLT77rMpoKgwidrIisbpSLtnF7NrfuxMoReFZJX9QldNmEeLizPS2ltvbyu8DvpzJjdLOyoxj/NXZJcbaHgYt9cLuti3H6ZyjTKnsSNyXYN1E5zv+DDm2dUJi6gR7TC9Yy0W8BvaPHpfJgxcm4k/aZzGcSyK658L7ABP/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Aj8JEVUyT8Utxo1HCSLPtihKRqXnBj+Yk468Yf60h5U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QnfefVI8FdSSs4RwDeeBJGbFtOJRdXzPJvIVrFZ7jOC2KSIXEnouOyRWDwmj2N5Bnz3t8LAkD1i1uCz2P1wrOKRc1yBc/wdLn/sQGWrk3SfFfPqhJKymT5VWewnDduZJOK4CWa6zFtI8kYwO/ck0LkyImFpJ5ElJ7Cqto2AH9Zj/JD9ihhpGZmjXgiAqjRF4ljwilYrA6zr0+gQQkRerW6kBCowRXZblFJngpI2NZ3BYQonxzBA6F+68kh/p3A+NFKKtUBP2ZZgSdbun5Eqb4xskcepWGmIBOWGuNtPJpVZLCMlx3PFx0lpssgkQoCjC+5VTRREoVO8C+T/k1xkFOOYrVOJ5c5LHqojDaYyE3NiPnhWZJruC4/RfEqo0ZUDyBohqCc64UlZTVDdEl5PjjqYJf1ji25hc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AjFYvN2yMflC66ltlLRUAK4F+2ISUqMB41HiRlrJP/I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1oHdcuh/kpveRKhJgRKNyVKp7F2/KIbP7lsx/0+8m/o6+bpewjQtlyGgFRwxKDw6+S80+aaZAOedwPXvrOvE7E/oO28Gq0KEWJLLJ6HeouKJ99rrz7eqm17qmRizAXj4sDIVfWAsTdqiV6NGnmhkg+DKHicIhuI5bRThe5aLeupjDJ5rEpWtDMauNveHi8TCBzyXj8ypA3puwCu06ojv8ytLwGoNP2jus3Vkrid8ZQrj9oW2BsmdsmdX6KH4cWZsLqhm5y4ndiJYD3soNPk8SAZwYd6FqGAgoyKPFywfa1rW7h56r2Pv1bw+RFv/xkbIgB6TIqkTGQ8zIoOKfkACNR6oLhF6LTr12LMz0phjk+icsz0lYllcO+p3NTfLBVoxTyEmLkxv4CxVzRbSZqfDGkaDJqz1i0lK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AjgWveqQ+4C+GUYqC0xOiVP+Mi9D9I7WtA5DKrQvYwo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ks44/Vxdh7hdY16g/wLvfRACLLqJWw/uDosZx0k1SEWwT78heQXPpMzRk39J7ZNQnVkibaYw4d8+nQ7u1lJFvuVRkoq0mU+aPnO0RycU0MiCA4p6gmMUn6XiwpVg0GcLemzlkKlCTvit39RjUNI90IqStVIBHURulgvJ1jhRbCzxnyZZvTmZGFANmT/rdIlMEY0cwx5EeDt+aLiY7uyNk9vvrVeThVflCSfXdaIzUTnNPWZZcCYQa56B/TCC9KjP7gm8RqYERTVi+adZ3tJdNhoQ5+WhRa2OEkekMLeHV+qvVm+YbvvILbM73b2hSvVs3rvUaYqvcYH98hIpI2v4rNu8JqlY7aVvZx0bKpv2YPeRjzmeGLDaFv6Piv/tgu92nCbVZmEDCi232gthG6uUCTtAoJsmvILD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ak7zLBuzcBY5wrFZHe5uyK02KTGCr7X1XIXR67w+5yg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5vPUMlduIR1sFO8i+jBVEMvAHOreDT7qAyG626WncvYu1YTZXWrFzv2opeRj3+Hb719E0wVzRuq16Lpv4oRMst/wT+UiIPW1uQxXGU1gUOX9sn00VsqQBGmD+9V+GFhZkiw2Xq616QFUW1XBUsxDOFlpEJ/HZPDZxCF4D2AAbxfzMB3MswSVemz20ub9qwEbmCrRnt/F4QYEqwvZoO3xJb80w702FasQAEDI3mu0kl2O6r8RnRA4qgwhLO+RS37yW2HFfnbFVXte7HERIvKOcvqFs35aBO9Q+LYBDo/ZpTW0CV+e4NJSKCsVgCuulx7SS4ojpZwreBUeDNxIZJoUG4R+vZ1wuBkdx3me7mLpWZ9Ep+MssXy6eIRH80QAKWCT5f/8Y2hkV9CRjgjD6WAasw8BFsS8PbwF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Akw6TRSxhsu+pIfOEHNPlvRfmIK1CnZvtNtURfkw7fE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kA6QReMI0BKhyaI44sc44C3ASbLpKh7UQvp+eLeBpPT2GQ9lm350C2G59jB4tP843kQdKt6uftVYjB5XH2Q8/WGsl6EbjGeylquQlU1xktpmC47LPutkAt4NLwFFkFk7MAPuqChUoJTxGo80Jp51uZfsCNWIZCAlZnlNJes7xGOgQrMhiHtMSkDnAFXqz+jxQlOicj0kTJHYaBmQvnmYIfhskT0wS2HI+tHYYqBMBTSc97fREO2kTLNtzaJ5mrUKiUx4H4VBxD5UgIyuw1fs99kpQcAIfFeE375KQqoccSpmQoo8q65fknwgRasbLMf3Jj3j/aWExMhhrZcG9eBbkOOWXJHt4srvtEDelMkphDyMjY5KRGU6yvz+7hWrQyZCS3uIc9Q0I+aO72xiKOv//620vGJ9P6ne", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Al49JjcGXfha68Liyz7FTTC/VEXqIpy/FRYeYoFCeVI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IBeG73z5QxcbfPIAqh8Ci3jkp294HlxRtE+xKk5tCQ8AfmUmkgIcl/GpGdpCUzf9Mp6zt4j3SRQ0eqXadxmmnfRMBTEMBbAkRp9rB/JLhEQ1JEusjeQY77oAvlY19ko3+UKTChnlrFpZsomRrqrPCxynxAp0HNfsleg5v800cLysbAs09PY4nthxiXVSBt0j3TI8Vfsh/DYMXYI/N7KJf2d0cLRHAUTCbzfWYKMidFqAV4Z1oIt/wPetN9yNHJ95JAHiz00HQ1O4c0FqhkV28tz08eBG4CvkXoAXvCYk5E1lj2HplY0NjNE8QYjcDRQFDrdI4OcF93xw768C6LVcazEhTT3Fk1/GDM2uDpr+7w8zkbRRyCGZTzM2e50Eqvcg6vHYubo2t4bEqYrinSVztgOEK0Fcui/R", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AmC/tBrIW1p7VYjvcVd64UB6YBeeZqhBedwRC3CA8pg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VCjt7CVLMGZZAKNubOK+6z3pff4d6WTJPtvJ/g5T0fJQaw7WOtM+s19qLqiNP9rzht4CQgg8VnSv05338rcfvoq6Khj7VtreKlHlGjeIrTuxT92MED3/JVN9zEaR7zGWpHG3DUFc8nxWhufes0Z5Z4mscfJscJqWqycX6jwkAUENpDQUV+1cSEaY6tYcs3tJMuju6NzXHVv8UhmJJX3co6lb2VvmyjZBZ4rUWIjyOH5s6dW/HAX2+iBhtI9InSNHXHMBzn9fL2yjMW/H2aalFXhRTZUI1XZ3gaXxTSeXITnahyjJJ8D3RNrwLTw0mwek0A1bEBQF+LakuHJzIkX/maG2Lm0eq13hNdySn8nxb+pR4uD2we7xxlS/tXLHese1GGS1QkBRZi0LqnPMds+uZ5yIPuulh1A2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AmJbvZZl1La8CZjk0cZDJ9QH5VTqOv76TBk7EWff6n4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y1FVCPJLBV6A6yuPiLayJHAh/E+NDADnZGmFJQ41u7FqTgzkSM8jFSOiQVBraA6Gdcj/DyiVsIUqfh+J86IzAn//Cqo682AtR2JhU216to87anyFG+4vULDWErn4fVou/9HuEQaLJBxkt9cDcUwjs98lF24zc8GIR7jLkmz5JaIVtlHWZtJ0p9jjgRBZtRE7J/ImkjVjFo9DZ/MS/MECHSFu2MoxcGt1d+WH8yywqZCotlxUjDimNc4ui+Kj0CW+43ob0Sb8HVu6X2dRS5P2NKS+hK4NVrz+V2lH1bsbLzjxZVM50VKVpdxd+GCjBKwZ+/ZwzFpoUOdAA4kz0FsTsNEyNwFUSzeUTGVJAeqy6zBINByESzXP7qug3yHS82EltnJ2On4dkHi31NdD9oRjrR5xtVe8vcZ+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ant7NYMcOPtSL4RS6Mg2sDmtkh7ZBnRslolX61TX89Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kEyF0w/99um+JX9RMjdQ5d+oGkUu6CYWP6nmj6d3vLOHS2ZmxQK7WkWEmQT4i6m4f5j4Riaj+IxWcocZ+0PBG/D/nqlBimuOcUeRs0pyH3Bqt6Qasanf7J1kInMtWLVyd9XjhM9lib48Ce72yPpIJzf4/TxOHvM9L0rF6Q9ur6IBIGHSfMP9QFjL7idGlsgNHhYTOHnnil22ocR6xRCscsKnAKnC5sjZO9zUzwJe7vuj3WkaAns0zZSJK/hWO6dqhto77cow9V8FcwKhGComA9fd+8Y5LNku8FkDJGwQklxeJm4RGrdK/lzgKny0AHyFEVrZ25yptl25iYohltdyKQi3GNOJ81U85OYv3IrpT/fbvsqF4uA4aJBMqVuqnvIQlVjMvwJxF/Zh1CLbrqWbtlZO0fsAAoG0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AoJuZP2omTkmHWS2oQSvWJpJBK/BPPVwWYzRQGje5ww", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RfULuJFJvpvGQ+Xi6P55bnZK8GVRcSoi6fRHL1s+HaxRT22OhamsKr1dwy0EJcJDpR+klQ4J+eXD1FUYsdXt5u+FjvBDzNtcad0TJQiO+do8cdXxs0IOOGmrTlQW3K5amlKfdq47d4Wu8QqFLuRtVqxF60i4aD6yqVCLv5vw+uBT8QFrytC1X4hwYETR2vBgFEvbAjziyr1KkG1DkpqsHEjzfb94vGeZW39KuYs7Iq9rNbbv4ewVOcDjkBb0z3u8QscPATBwhruSjuW5slReg0R1z6J/b4wtHcpkS9HgFntIw32v/1pNN0qWBzGlCZNrRgmsu6ArsYCgXp5YKUlkXnwjNdp6sLVz3M129vRrEKqMeORfolwCb/MNzduSbU//XWwLT2VRdTVNeZJVkJJwNPQAo08R40H9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AphGNa17j8uGsWkAy1LUvxUzx8/zoKYeIXdhAK/pVyk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5FKUmG5mW9Zf+3HQRR9h5LCg18xiDeWedxj7fFAkXKopWCJTiygfxu5cksnaok6uSSe2Ah2dkw7xE6hFNjZVHObpyBpRhLaMpFe7BqWV1fFPyQGdcPO7VKsZw6WLGDT/JWRqs0P1SfknWa6FG/wZz2j6DNuICN3AuTPpg5z176+6FKrYT387yuxz2ra/XoF1ehkRekpi0ccgTIpNagtboEcbGReH/3IqWfuUxFdWmEcVe8ZXDyQcXi9HCQjYnpQUygr53lQW8wqQe4ltxZ9sxpzSNNnAawtq098emRy3DsGPxx8dHyeMgzDtSbs1BN6Lhe0lOueP/V1nD2Pln0zWJ0S/qOGY+520MVfWsU41ZJx5Ft3HWZ4J47BSPb2abpoq86ID+QmL+Z8JbZlBQaaFyd853erPP4vi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AqXg8wa05MZNYKR4TVD8OsWjuRJfjHfKajsIlhLVfso", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ykt86Lk6fGW8Z4HQ65nzgzUP/oKEexF+5wB3q8K3hoYblYdBzOPzkYfYhlkaD+hugzqgw0FzE+WKRSZ56HawaPILrE1QhkpuVl6D3xXlAzmEbuZptjt1ngbAJmzbhbMo6Mxos62DhH/8jkbAPILzZ5RlXolyjwcBJVnVEF9UZS794uL70is/GeqUhhEwArB3N/11Ut3kX2Gb6EYpz8bf3Fb3vQWp3Qobc/44o8/6IvJEFxspYZoOYVWA45THhz+fVHWZHAyK+mIMJCNN7eDNAuvBIpTkdOH5wXDVyFG283YQngRkjoCCv6iulmOh7x+RFDazNbe9qyFKnF8YsY1VFufy+vJMn20moI6Mf6TkW04DxarQH3puS/yX+obll107d6BtGAfBPIsmjOD/uVl/lrVPdQ0MBk6K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ar+DI6woOsZDrUXVExKQWfT7MoNNJwJYEy5kNjkjFVk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a56/ktyWLdMhLGr5s/0lVSUADly440FAhkz+dFUKll0sm2gVxJ5wlBVGYynY4xCH5yDi4gOb41P2c5RheubX3g7fjmt52YuTjB/u10xpUn4TtDLXv08rMvkKZHfNYAiYVm9Rx7NLKgaB2f0sS3WomLa4Cablu4nukzcy8fPJkJns1c7W49bpRqzl7/kVTT8ViQ96MON51v2F2/jJ3T6AoU++nkqr9G67cfylSy2bnkK1bwYgGXkI9lff/xYdWMMYeTzPj5UdeBIghfHIc8zgQWIi+3GbG5HqYR5JnWqOBQxPVoHllvEz+NCz5jjfLwp5c9I4eXCqaXkXyKulGQwv8hcj/Ack8H1t4MSfpPBcyBCiPcutuAzaYpPv7DPN53OXW1iDR+3hGib47LlFtxZYGWR6Mf+YfVo0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ar9CIFJWo8+d7c4qDs6GjRAuuu7wwAtk35YwkiK+2Z0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eESgmN+vUVOB1eR/ob3vqNmERddk9q4UnMozWPTohsH+HRsTdxVeS178rhLEMjMfu4tg3voc0/TtbcganW3sKyICg4aT4gmzqMUGLR6lIT2wNuwN+skh9/vr5YB0MzN4RRloGZVyVdMSf3ICg587FoM+w9kpJDwD7CdCEwSoVNaGmBcf960YWRRWNOkbkfL9mgPHLUSlHWy+pUxz+CPexchS8sx4cJEj/IafUIOjIubSSG/MTizpsLOYAJMwgjv3QcLspaW+VGeAF0IYP29gf684qrDPoD8NnyYFzOeogq98shBjW+Ne8unCR6Vicwg+46JvYqB6d2D476IJiH9YS8oz/Lo1YqTCpmesSizOlC/EwoICIz9aUD0fzrkuIxzdPotTowRxJ5cM8Y1evcO1e0PgofPKSXru", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AtKJcx/98vK8+CGtdUOwP8y3chu9lunSCVF6aNrresk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Pa/75C3bbpDNxu0be9MweoOBWDSJakx9CbRkXjFFACF6AZKY+fQHIHboX/aayJ8OH4kRrh1fI/ZwrDkNVllKUNbcsPS40+8Zclk9hhZGL+DEm4GHIGYfUDUh766ckx4VfH2hAJ09PAqzNgq6RWQ9ue5l7D2xaDoRCpU8OnZ+I51zCgXRMJEVS2FT6aHDymldzafS3AVSy1i45IqbeiSPattnaU+VENB2taG9yj5GmhLuMut3XzNKFJV+NX1PaOsv2ezfqhlpqEvjxUod5jJamzFriBlKaAjSc2fvK3wWd2RN3hn5O2kkKAVhUOAZMIBNIp7Df5Qi5npOFKh7P9D28jW3+rNiPmoWWSL3Xa3y37WfRk/BEwHC95FQ8Pdv2MlsLa0DJ7rCANKqvbIu9oRR7Y55uAC6oKv4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AuPxv7X0F7cjk1IaDdUNeGE/VuXmHFl0y2M7+mDWrOQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W86ivQiWCw8FOnWjns/FOLnQFwOZ5b8biIM6X2WY4e/EhiyTJXhqSUN+rId07rpbV1sh4Y7IXcBnlqSXhh9G7onPvOSlxzQ6NykECRWfns68fmR873FjUCdt0MDbmgFCL3ngjPLMJtltVT9xO6qnSsB2I6YedFBXZaUHE5Zsf8kQe3y1hRuR71dRLcjA0LAsRUR+4EJH/hDedeU4MQvTLQSCkeQDg+2hqfBCtBMWGbBEH4q35yX9gjelRU3xvU7S3EdRbbF7nxnQheEZBHIDEJtkAngRZUVTWqmSgXHAlpPp+6E5T24wjfbOfrllkpM4NMlsXN/1DKf1cJLRIND69lQ6Yjbz9FyYSZCQ9tpUwTxl+JWU80lkbwQI93/tNF2i7+DdRqZBgwnnM7JNBvlCk+BEusn+OqCN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Auc+u/zBJt5Q8023YP7y8Wh5VFnPQheMgQO9/aBaFy8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hPk++fwMM0wxWe7yKYO9vHtkEO9qmnGsrAwPPpfLQrSb61iLBhGlfYFFjD8ZbEGzuCi4uguNkdV6Gi3lWaJX16NYUgg3Mj5KfDfb5to/YOY1m0BrzMFSClifOvueBgVEOeBCPEEZcE2oeHTXMyBRMPQK6V2iH82RIRxcwKRnB+UZH3ZUxqTdgtebRH+idSmxIdzEzMU4gfivfuBP74m+R9Y81PWXAQMKDd+IzORjmSrRETmRN8yw9uIcyW2bQM57mOcX5rUzminLlqlhPfZjyuZPRKmrnbSwekX7R7/vQrVAoUaXuKjF0EghxRfAuAOQW+bwVUizdTRacHK6OhtF2eqRPMVn3l68EuFtRI2oN2jYrlo/rX7ZWt/G3ZS6FVPac9ngoMzI7LEYj2puwGlmJq4D9AM5v845", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AunnammS/2QaDvK+tL5ufplgYtJ7T9KDw0XMr30z0/g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XVFogv2uGWlIufRK8Y7bgbja+v72d1ycTg7PCOr5kFdtPUcnH6+m5kjldkiujT+oVpOrGaFif8mwhKfdquFss9/vs62V/wQVC78zb2z6sSY2puy10v6QUV64MhyZ3aB3DS/KtiPEWBAi/jnGwAtXmcQkkSRlvyxs5v+LLb64lkxQaZqbOaDI+iiCyjahrJAqhHnKWNdAf70spnv1umtndnvMtjKXjA3sq/5+N2c01lB/IT7s5ypuz1mHZ8jQpKht50hzSsgQZhKewdOHM/ijHMvMpLwJg1h6Cdq84Lyq/9nleMO7kdah1Xo0Yypk//chBi2fgsEsOaK3DomncGqaNUqh7cNcpxh/wOxSvIoIecdGZ3WTKBAdxn2AyY1hRCIFrf81Yf3tjMWhHBym30FCCM4FksGWO9z3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AvwozmFXsccUBDt8wpt5BQm4uOVZKrsgpZ3jnf/yhgw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t/mRAfcGv4/AFye4UPy7ocMLkyYoxc2AMIpyKVbLAUL6ck5rDy3pcILoZLK6RtVMbJWj2Pz1Ji74FY3Pvkx+Ql9vtBaRt93d8mT6kFTlpn48jie4uwYDItP4I4TroJseXtDSltr6qBV1eaSCt+XNEZbtLWHQ3v8lMutoAs5LSZxzaiosSnHuW4y7YYMO+2hYIhFJR4J1di/wLkFxqB1CKuT29U9tnc7qRB8NkzypToxRKQncO7qonDXLXMa9c+IjI/5WFrjmOE8PEkhztvab0hNAyI9sVrLC5c3jvXQZXmtrcO33vGV6ZPVkOoKB3TVchmQBTVaWZQI4KdFh0Z0TuIpyNRx/w/1ESx/eNITz/iGLb2RFfoS2ZiXY0qbJ/rPh+aVf2NH9AEUEq5oArNYw0p7ZtWmjoKRY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Aw0I1qevgrYXGVYBfK2tB2IqUyB662JrG2YIAGZJZcM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B+j+TkGmJL4cBl6DojpFbTK/yKE4nvQ2uQNKABScgQhW+alOPAvifeAzLwa74QbOF8XwZbBQpqpHVdTubEYRDraPQakzJ4Gyec82XlmPturXeo/ZoD2DqXDZJsaFRHwsmqvNYtDCb6vXGMQ4v1W75+znwttKhowCzTRWERGcpSj/OX1D3VUZzPL26u/H8ho6qO0CpJOF1e/nJk3LgRLleXXJ3qfrO12tCmWaxOc0CP/ll57JRd722WPRa/SpZriK5UdAAuwzcvarETAgCb7DYlbnG7vmORlGYtiyiNoLGI7sZdSdfMtcISHG1s+0c0OV/a2SjbxBqShPs/qUyVQzfNzKl/IiuKuMN2rO1MLoz1Hbw9irHm0uSC1cP4zHmPHbropQH4al6kmNdiACXLsoCkLyiqhn/1nJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Awtm7ta68293sT7oZDfoM40IsVPNAvMvde3ykq1VH1w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NRxH0NhJiiflEn0/Z9cTFT/VKXNPD8+yVP2PQRQOwAzjsZnNYYF2g8UpZr7BbHTwP3Ces10VXyZwBVwh74l7C/yZ2kXwhSzbpuN5xLrK3DjtQRmDu1Sz1dM5Z9HLuyIOfunQM+stHeU43nImk2UtKAwaAB8xPczvrKRZgauSYBdW2NZaY20nHMONf5pv6uKIRy6Mz/zNiGjSFKDRaiSk7cLXDrfDsurGETddfyDjaU/zsEK5P9lgSogmsQ9Y0yUNjJ6TpDE49qbyGY0iWW+KBgOLMKHz65LrZ3bqzHIodyJST/pYWPmgLGDwrixvNZbMB591WiKZaChCJvUlGsHKVFN8yZ0bQHcC76hHnQ2MMqi0bGvKyFEkbJnfD5ncBo20hsIVAIB8dG8xJO03wJwar6IKI/5/TX8K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AxVAa6WTg8oa6g8rgQiNID2hRolEuwMBjLEo5Hf+3zY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k7YkLIr6LEvo64r69ojuUe7BLWcTHKsCGtSRhSHybReRAGrz+YyUw1q+ZWyelvCaMEnbYILYqDwgr4/kcnzbbiAztwgHNxCymJbBYbI7SKaYEqH9AbMuh+/M9tCCJSR6fd4LHbuf6Rn6cMnSiVWEk8hH9FWzVgnfy5Btc3IbMJ+EaxmX21e/Bw+ARHgH4mjLWzz3W41jl1Wkj6BlNxfjcftDGtz7oOfqHb1orFE14GGz4jMOtYSKAL0HpzdE1VGBllOVbohpUrXMTpkfmrJmYKLqPhA6MRKDtS2bEJzRCF5RkAz4dlFeKYCpQ0uEDlFwc15yrZNeCp8odRrdkJuS+zm6TKPfbkWixBvaLJCk0miEqshIgLmz/JJmqne/LF21fBuY9W93/1dEXm0m4+RO8+c04mbgDIUe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AxwroOHvqrq5mrAPl70L9yLGeC7DY2dZAonBFfp0OWE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SyiMvGVUn3lmthBK/MoUyUlaZn0UM1Daq9wOfGzHbm+bDzlr0uMtbAwwzulnCdtEcKD7yG7yEivb8tSFhfygnUSCu3PVvX3eI6qitpwLCoEm4dB62/c/whOcBBGpjJBnmfAzqKG0ilbx+2BRKzccu46ylsqM1fM85rhHXFhA0wk0Z6v745qbNY/APljwdjufix5YO1yB1v0FAS4zGD8pWKXveX/hGx9AGRB/QxfQGucgZNh3ITsZds59pubhci+21DotQRCHd4m1fo5ggXU9lj4G8r0GUXUZfgnYyzh5t74XZn6hExg7CLmdf9QhXY4vnuChvYWteMAG5LUHkhPApimEIFwmZXImUx1CxRgyYRK54j9x3d2NiFtgxbnx6OI5ONnduahcRJmy/iJtHe5LPWE2DtaPFder", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "AzJTfD/6LvzHIT7A8ssh4ULgVTG9frZuyQaFiX+W77Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HykQ2u1Ruq7LjLfxMs8ebxyebIgIOCBfT6EMstvmddt6UWRty2VVOHWy9eEtphhqOMoOeXfgBaolKhgxIoPfwa7U6rGLKk5ESP0A8F4TwBmD5WikUdBKm+uKoX/M2KrpLtkEI7AyWdEvfhlCyGGZnw7A/57IguqgpxZiNKoDY0A3JGyqGxM34JVvPOwfRzy7HHJTD3Fc++T/e3/FltJCcEHAueRg/hRYc/al6wp9Z3A9upWlQjIujt9CZzhoIWJQvqImkS0Xm5ivwma/zSnbL53A/H/V8OQea93DSRzwU2kKVUeN1pR6QGs86NHAbZ6Gt2XxmfcPFBp6+vji1h9HmtNTh2vmLpNkG4vsXpaoxHREmMzFgNmEAx/FpXri3igUhrpeZq+pgdvNJYd0j0OTPgIG8Epuote1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B+CNygMFs0zqRbhb++Ep6MCqwPsLM1/nrM90Y1o9CD0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "02GZGpR4iUbwi1gNzArMU824DfbV+IYxe6SyrwNYFEoULOeOsDvg5aCRhBAZ8c2B5oa4W8UsMhW0MK0kpJaVkd4gCjfgPHs5Fv1skdgUhcmF/OGQsB9SxHPs/eUPh6cuL6bvAwASOCRxaR46s2u3wGQLcfb54XlZkYQntOaOi+yeTX/6W1eveLsHzsDqKsgq/fdIzymP60u8SkjpEhJSr+Z8WNwBrGjd8MVk5oxQYQic5occFnt3tAdaDg1oMW69r4eLJjZrvVFpWZIMhByx+hxfetr3gUlhohSW2Zz95Y4gLiEjIX95k9T5S3NcFLLJ1W7Z7sV6oqxfKUXVMlAfvowYeB/WSPUdqPxfHs8plgAliQhe7dyJdvJFyzYYYFLpNK82JYhKfotu4uwhY9D9q2CYnibC9JsG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B0S3LT002hdXROSug+yX0LUhAyVonHYxYPaWf9g0hEo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qT+zvKTTE9FunYYuZH8sw5Eggt0TskIzcWatVKNg9XmWHfYdiHjyihil89SAsEGPntkS0S7cNCXld3nWRZkenfMvqLUtDh48dM9GMg6pzCfp5hjAjsJKy4GtdUtUgIgdhxnK3I84FHJ0KSiD2xuAqbVwy2pqld4d6myaHc3ficDSikeu4NF/YtjG9cXFf8pXZ9otfXUuCHaKpjk726RcLH+obAVFx6o1pkkZHzgMZXnDRgR/zKdG3b0pff0h4EVLaE1z66CZcMbzxoZvxjtgZO6AquFq0KoehmUqwmpuzhU1busHZwAsPVa/g3a50YIaYESedkebwt6WAVzBqYHvFY0UMRvLrT1Xkjd9nJdkNFFZY1XTTVxcr0k/ATB33vUTi1k7cIkH3wIfVCf16NgZksfRMtx85y8C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B1HvI85ZXvdrrbw/IKiXUREMnnk0FRrMRGMHeJgjFF0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f2x6YXiTcJCNDuw/gw/YYzbirblXPsw6ZyDH09KydeTtP94PM7O2x8JbCBBNBUMSZpFdkIdLLgWGbLKmBFmmeNArZumyqxyaKwpswjVJqJZLF5BiORmQkTfyt+yNBUsLa5XbZ02BDGVHtovDLNlnODqWEZiAzl5o2xZsRZSZHL2Hd0GgUKTS2rxrqsBLsS2kJV4t5MBR36GuQZfTP2g+Zh6gJi+3SHix26sxR3AUK4pOIbORa9b7dln3eVxBIP68ZDjTmYuUEEPFRXFWuC/KG5m/fiwPvvFQWBHUfmEGRFagszIlHmPrrgBw2iuHn0DqgFssMLNXhOxw5PoJYQIXlTQuW73Ib0ByaEqdzGeBGLlV7A9TB8mngT8VN00IsOMbilkBdK2xq288btTnNbN5PFxAN9hTNh3A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B2aB3+2e3ZT0AT95vvVxbcpBZfYdBUYXeW8iBUPtYCo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gHaWdqSMJ41yApOsixC61d/9IX3KM83S37FB7qnJTNTnZyhryTKK3nHAKkgaoLQWrjWX9Hb1autW/UK+xrnBBk0DrjdSEU6LTpwteq7BhNttvdNgBSJEdfliK2/2Ki6HwvhDpFIS94BFq+7Nj5EzpSg3vmk+uiMB77j50n62bwTS+gHer4d9oLcuY9+ThCvWhbSDqRgFdVfGFizWqs+dQQ4cdfaR1dG5Hrb17UGKTvEQQj/Ht47tIQDR1JN16qw8XJbw1b0WZC1SRmvKTnlyaAT28jmY4+NveIuYCsse2xXYju85QsYcClY43dORVLjKaEcyfhj/oj7NSZD8ijdgOCW1rMbBC6Wu7/TMLmZDVSL9PD083C515mmad0v8FnzqEhGd3ECWVAbX+TfUyXYSsqw9bHqnSQWN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B3B4UoYb08Alh7LwJBDbosRoVFvGomY8YMLBVoHJC4o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pYRGdOvVpw3adyu5g/cMO0e/47qnGbfsEASFWeA3qIuo7YyCPKjsbO560UNPh6lY7p9kNm1bnSABiPoKV9Xs/hMxb7yQs2bfMEr4oC16B0OFDdkidzTFKSe0ZxzWyiu8ijyGkeQkW1cbxrtTgKSU+Uy14h+YcWR2CoR1/AkMwXPcMSknfdkeFdMBgJjKqN+tWWHlpv6jeddD3jf+D9btXeZ6mvzdgpy9vYliuDzbYgglrXP2zDgneG6RIabzrEI0UE2UvlKX/4d7fh0ClUgvR0qgq+ckLlrcj2DG2P0fycgFNL+H0nHNHAAxNA28Le4+XSISXSQB+eFHNLOtCuoMasMzvRNqS2OfWIX/syEN9K4Lr4O6LKoD8+HWZE8exr0ufv5q6qIXRO42pWYnUTl9rU/GmyIi4fI3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B3K49nTQyvxU30G88LnHYwXEqcCIlsnp7iSUaXPY21k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mdElgFYI2T6lCT2dUYmqc7fA63cLdCO+gVOL4TZyrsOdCc3/iQ1OmjbNsYL0e86uuNVp0U5KHwKicG8xGNvKJHxocKH6yEsYRbpQjSxzaDNGneBgZcs6otAY4vEsIOAuwb14MoaHma9tJgfLPKnbZqGOFoAMVMdlgE3lheKwKjXG8nDWXmDVXdqdaB3fQQW3Qbm0p9NgghwKEkLaSM6PWJ9OZ62jmlH7IEYeErvUfXxeFLgIY6Cqi4rFMZCi4nj/n2l9ruVfma+s8LnTxypU85MkIrUX7lwLzgZDV7K9JWaL/TlWQab9f5WHJzKp6MXj5/t6tVJ8twIZ90Mb6YQXRxcmzFkR6zAjyCge4wzCvRAwUHEPy4JGF4buSIdhX/m4hdhMXWLHwN4E5528u9by6NjUU4efn56p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B4KE0KQzSzn76Qwp8yNkcqrThxK2Quyxlf622wbJPT8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CYfD1w75JwQDAoD+AKczZN6ag7+8G0RySfpGiBuPWJ6QH/md3Y0880IGuzwRQQ6BPMLbo5bCYjadhR1gkaWyVmeeRv+9mN7eZIspN2CGFqnHMX0DKDBGMuPhv5u9gJ6T25brF4Uq8JjdG8N/omrC90r201fMBcnBsyg7l92Odj00mFwPtDa5d8TwQd9I6qAytK4IamcrtuOFQ0nntoy4IsI7g7hudBl0Yq2jKg9Wd+hvLjQkNA6RofimNfqGCaD8BVC5RVMyctcs8o+71skeIEU52U0gbrrVbZZbzrOZrrrE6TXIrdOM/IxhfnfR+f8IzTwXNADT/sbd3tAXZBsgk41WAP/jwXq6m8lYuhZhlnMBxB84uaoNu5bKYye6vz+JRhspAONYV4dG40muKIWW/vmFmoJNJyOc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B5VpYZ/LQ1QiwwjKPZ48ZfECFJC12JPnzJ7D9ebl2aM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yYnDQvkhnu/j4XjyBPhVZxfvxPJDX9VZuyP8rT3svGure+XO0uOm4VHOy7i/A4tgaFTSlI16yAEWf3KzHSqfdv26/Zf3GLlyNRDg0//xmEnGu806AET3Pw5gLXrroGcC1ND1msqniY1tv0dc94cLeUKdYWuM3+Y9nACAnS9dXJf6l3KfCpV4bn/tqWBoL03/65N7OxIhUj4X+OQ++IjWAsP9uKal0mq2D6I6bJ01YidLLlNVlpe4NWG+ptQk6lQS8G3jjxx8kElwFq0k05GtJ9HGzebEyfX4Vp2Y5dkmq3em0ImtNH0XCvaCTa5PlBzKCDGBdHlhZwjaPkU4nZcgV4/KS6H0dHMSh1/f4A4ZDFTrrSCJcOMwYp7xVWI32v2CLb/HtEb8L16v45xpK9H2xxhdD9g0hrnU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B5z52H7pbZBih7avxqAZXjc9jsaEpawH0BYnlj70Hec", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xqCTWbyzoGOSYnSKi8Op0lIqnahdBDJxjWrvrfRCiW8K1pexndZlRq9A0djDv5p+2ur/IfPVjAN2qj42fhLz7Y/fwqr1oq5JE4rW+bIwuHy1VQ0WXJnLxENB9soyhNuoELCLLre9Vv3Nn3G/AwhZIoGCQQow5DvUxEKpMXKu4hTlisgaoikrhqnCXCWeuSEiMQaRdVJZ38XmorpBPUXs2TSCuxQnPHyH4bqf9p92v8FxyRJnWEQHh3CkVGLYRwc/9eLD/wwhuqpf62uhEILKGVW6SSCvlT7nmWN6UdqzziwBuwA8eAem8xJYZJGUtVKs8OYMUQw0Abamb8222Cd5WfEYsBHVweVupGDIrDZiZ8hSIN9BAdBZn1IrZZZnrfDUlphnFjx0SLuRxEMS0YcYmJWhq2l1yw8t", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B69AVCN7vajz59TcVwiPS8XWc3GCemHvKU25Hrd2Bzo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nUUW4wDkSlMEPgDdCryPJOc5djP/f5N+/lpkdVzPBAxMdGlaFH81lVL/qnlV5I/bPSdQeAIJWiQtqqkf3CXFJyr/OLKSfFOR6X76lv2KPv42zOdzKV1yxCIWDb3tECReIn44iKhe090pJ5z7/tTi/pztM0mGkugh+OuDet/mZ16+PGDGcnXmu0Suu0OOaAxf78AJcjVcgiwnK+mX7kXq6J+sqQ6/D8Zd8JCEqYURY0wskSMOqafHuovh4Qp+Tj4BDRImMxbGzaUb+zZ2MeXfSse1ZVwAO+PG42dn0evynn0cX0F972GxyWLcKBOyLJBmHc6c9D0XKmJu8MUp167j/cc4tLuX/m7B5z6gfvnAbSA21TqmfB8av8dClUKFM+ig9ty66h/xbLRvS2XmuSxdIngOo3as7x8b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B6OqTuXnwHpU+k9gVA9DDQBC9XgwOpQ7MAOJCGaPLRE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Pvk6Bb5gL+lpnIKIsaMoJu/1F6sdclHj53k08dpKGC4W7De8uwfxVg1DPJCra42cVmVgW77Man95vOgt2fAHDGqrkWj5inKpdQFmfJbRsFWZXFavkQJaCMcF/zL8lA2hHSnp+H2PqgH+wlKWbh2R1rMQetnVWEdyS3HUIbk+vqZpLDiFiM4zLySSIgKz1Zj47PE+gBqybz4QtVoH30a5VIlah99GomgdVO91nd5y9yD/Hp21+3Aop5EJllieDLU/JIKvDZehGrlVgZjV9PT8NxAnk+xTuA7xoGICm+Yh20S8cFpOMuxXOhvrGbB+Zkc+m+CmcIhG//9bad60873soV8xtAi2b6hclM7FdX5zJ4uzbOqRXay3eYCGmCZNp+X1yrtoPYSDJkxhKl9T1Ly34gD/cGMav/Pv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B6pmAjdQM4uMnANoO0vyeS8cTCmghnw/Qy1iwpmze98", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lH+A7Cu2klrYpNGwCqiosvEc7CW6jqXw+tJXLXrX/pNVdHHCWBGE5uDmdijAe/cu4PkJsL8UbynDCLohmsiVmBstlL93qnNShfiRdtinXMsFoQMWS0qWDxrey8HqPfnEq0L6difwc4zJyB7xcEANRcTXVpf1uwDMHR22/FuQXJXKLYHri7RwyvkAOlOg7k0S6cNbE5Y5f2ZABzp1iMQrlS8UI9BQkmQEBvGxe/WU+oANSYiwmcYdMewwbik171Hl2wi87zkl7WMAPT3Mkr/lwduprDC3iFfJd0QKnp+dg3H8bObILShrbpEHlcStX1bVgiqIofEeF0R6QTqGhcMUTeC1b9izapq4LwoOt5+YvzK1hf5RD62/UKc9HwCgOr5hCP375pVnB5qRf2J0AVZRhzMor5mJ96Qw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B8tJ6ELWIKX/E2wgeTxH/YKAc6VjlC9YkwY751hW0oQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vxVwlTHVFGy5slgOOHkAukjxBopxyIllvyCU0HnBah8ugHMIBzPaqxIuP51MLp7nyjoopTAeTm4LJQYra/wietqpOe90UFsvT5jc+rANLcroGhc+M9SarMBjZlUn4Jkgiu474/gAgWDpZ2x945iOGj2rDg2j1zpIVA6qcrEHtSkNS+tzUrawiL8WvijpslNsnx92k6wUZhmbYjmfga1iY04aHfm6mmlekaCD/ju0hPZogiJV12Pp5rxCG+MyFkJysVZ8AuVyrHvMPAwlc5y2dS6DP5HIGP9vByKKDOkxupk4n60YjFlnRnMoiFjTjkA7rs6H7ToRzaLX6B+kt/qDCUFuCF4YGpTZMZwMawt5x4TqwOeWEAE4lEgBx/zP5AlI8/0bPelJP3GEZfDHD94XzdaX6laE1eZ1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B944LBHT6YIc3mka9Yoz95A9koYO3sBFTx79A3pkNtg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8pv+kpUHmdHMnAIf2Y8Rffvdk6Mdw1Y2YzWqlVwQNC88LbV/3Bf+rIxu0yukhtBmlWZci6AStemiVIlk9YPlBABB2NfgYOInOYyp/cjMAdGAJQYpQzXrQJo3+O42k5yuS0uk1Mc9YZVQez6o51pcC/BNa6AkXXAojJEwXeLbHNraGLZxnFEfEEEXJasnKX/tWWfRpsioAkhvOTpMgN7Knd4dAoCWd1m+BSAGfjX6G7k6ws49j6GWMCbEL+wINfHGwFML1jLvCrwaoyd4x2Fxqhami3SPGlPcXyUEb63TnNSD1ktxAfTJkZ7KsCdr7DTM5nCMF0x3AHjTGuH8Yd1OdBHc/KMzuxuRJqgr/yiAT7QI4e2zkDEAESD/x4GpmFLbXMiHy3Phq7NWg8rjzvlyNu7r9TzEp94E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B99NvjqMiZczqrGU9MdRJWxYjf14Py+5Ve8+eYSikrw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IkI1GHbE4YvYoyQ+Wnvu0TLJpNrRjwq7L+8HHt8YlmlbgkDmc+uKvGi1Tu23r+wtPCK9tOxoZUydufIMwufOomNURnKDmQasbW/bJ8ccqa8cSFlXyJfQgftKnDOvoMAWcAe5nYiMiIaqBFbqJf+2lv7Z6lU0ddT7oZsxdydr4ydjC+a3TfLphKUctAxguEK5VybOHnjvMkpGF50DJGEGnFz1XcG1ClWpjWfxlulxiYwcml8En1xRU1FutBHFjR1JDUJXkS/EWZneZzViCo8A8PtQEasIvprxDH4OntRB858PoI7f3IIMzDPZ0LGRumh88Tvv8pIq4t9zMW274aAcYsGDKCqG0SUpgXvtIOc41AE4T2OfoMWd6FO8idac3ujYOQ0RXdAamXU+BM8zl3ffCMNEKaNCJ5+5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B9EZFJyYrk9ffuin1mHJEerBf2g8rTkGiKhgMXd4shw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qJ7lTGppsrwYDsh1EakRuEt+AxBm4JSAI3xjOtQrarFjmZel3MO7H1FaUeafET6Kb0VGM5ahi1swX75lQgfKSpRn4P0NUBAKB5nVXLS6LFFlgLMlQYpf9hkpJL3VcL8sjcQHzwx8Dn9L0U1EZa2V3aFGPCgwHOwRW1nJ3KwdFSxmHaM319c98uVIf3XwnlNXXklQFrY6XeuD0P+maJzgVkhCGLJEwxqC8TNDlPQYw8H58UIqeLM+7GTByuz8qOsKwoZIsluKBbzsifiQ9tcY8EcvecdQd26BUKEcwr1+5bE+/E5X4AdZzz+tyG47yq+A7eMdSZELuVgkf9WpH0xXvXIrPhaTD27s3EF91f+m0aThZvUSlLgfC7Se13V1K95inede7IbC/SmqI3WJuFftshRPNII2ajq5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "B9QyCbAymCeuyuVMbdG82HmhdLMuS+jdlI2k+4BtVPU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kur4gBFImfoU+emka9NjOT9L3ltP3e6Ud/EezvSYKDyegUTaHduzBIMzIQvTqCw/HhFSfGBy/BSY6cW2oE3+TDwQstByo6lOlVj0ZNdDJj7fw3n1Y+2iCltgRlYA5uT2+SxCWHhQA+iP3czHvaLe6gOv02NlWOeIigFlKvBw71CcogveXX3FysT72r52qlf8mSHxSfewldNinw+NoTAl/adXFqH6+JX788dUueYmBz2tpfjEo/Fn5e7EF/RbxJ8CKvYg8eSZE81n55I7O1hF0DON6ki099wugTLCiy+6ASQZHf3ja8CmfqVZ63hpMFpMEltWK/8m93KnYp/o7Cpd40hDvYC2y/gz9OvWIdNxX85vELynve0IPl5nsUJHKNiFdMaif3TVLtK5BDsFFCgyZstVQicah9NH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BAwJSsZE8ZVdl0kyuK9VxqJb9h5aJ2PHUf3zho6m3Tg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "moW315B3MoyhJfAlQn6mCm6Jxyj4JfGvIMXDJaQQAd3mh19BaqKmectQi9eTA5230ifuX1FXT2OlMEz7hrDG7uxsEGihwUW1M1+TsoJ/0774h8fFdIxH28iFv2HP79tyFTSaikCuxHa8IEhMuORF41PSzN2TCWsEATrS25Or89w7GcJ0jMOAZfVDVLOqMcnV/YwOkCYgMVvh9KGcJMeyLPSLe23QUV3zwu0iA2QVC/mRuJIc5OxfPl48S3+XR+QxN6oHPf5UAEWRvdxCwHWv2i4hhkfQEiQQkDMONuopPlR2/lfhEYKd3+ev2ASy45+Fn6US4MhUbrGWWoJbU8zBL3qnKxktj5Ab20zeGsVMKNSrBdE0caIbMqR4vZJpjJJ5MbvgifGnWMCK1UIJuYg8+WYZjqlA0WUN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BBTJXfjOZL0YKglxK+/9l7zH76NLtbZO49miabJHJrc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r2Q2CbqqHiFJCRRrNRVF+EbCdGXqYqU6OG9Rfbt3n0G8fJDiFysrU7hsyMIOBPjzeSqQgyxaTdKkmuR+sDzFH8Gg2N1wbrLrtRGyimFvkwY8UUJO9rJD7b/f6qul9+0mv3IlN+G/eBgKOvFm17iinGTs10DxfWMuSlFvL4D5Vh/bN4tZ1c3mByU8ifehLpoTyROP9QVDVu4LWVUHt61QHd2gwDe/LazJLvwaHZcHlWU+UmCVZXv3cqtJ0NDMMI4iFle4GMaTMJBIabKqbwKukv6pwbHhW1Sn/HNWz3j3ZGOU1sPTiifx8YFFjy2WbNF+zoCOuyEGnrjzjXIbofwDzaxCu1hEjf4127TCbkw+Lvwl3vA4cQtuaUJk3emjR5PdoDJWnZBQ/0R12f89etHFe+14lfoz6wjA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BCaMCQsBk7wLoo5FrG+Y53oLKn5cwOsN2AbSEvwg8pQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OgqL8ZzH/u+XI/Qrcn7Z9BFwUCu25ov4TJUhtNT7qY1Az63hl+2oiveW+JrD411ju599MJ5hXZP6XHZq/SDsW2E/rZyC2sGjC/1ep0/BWSDg+zQaG+1JcZ+yzTG+SUI/SBOuXZrBQzgd9QeQxvhP8Zkc89VLGFLyCjIApkXDtpZwpUXr5YQ5Xle1Yu60eQpUPEUI+HbBzirKEZ3a4/mYazvedmlhLVh8MHwoLZdp25l3qseqwOA/6JWAK8k5p96byZ7QxVDr8VdXSXgFJB2t78Eepzgknnaa2iJebEOyue6Gue70Qrbj6sBvtMqAYo/OM69GHpUTqLUKfKmYXo6TJuM00qimv+QlTWWDpVJXQSUQGhyhTW3oZ0Vb3xJ2tlkHKFeB8RdaJvSpnAwnhngHHPxU6Iikzefx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BCcsXM/xq4gw/USii6LY4PexDi8fyVS5QF5X/aOPIWI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5CxbFh9AnlPawt128Mb/PaQ7RbDBZpaw9bokZN4TO7Y4iXw/DvVNQvoWVS//e0XyJMNn1/8us6n0rfxWu+a/jHd9SO8hCP6Y1ZtkVHax+pyflYu2w8+B4F9d90n5K+jE0hZdailfVFytFCBHbcJ5jnkJqFtRATYCUmHbDLiMzKEFq/s9BLjjrT9GSlklrUFXAcWKaTr+1t5y9T3U+TLtXpSQ4P9zU1vs+Yclt2wNvW1UOvC7sN4zx39XNTQsc9+hxUa7VKfrS6K2QeqFEnavsUeU1N5327kzHgQUKGLxpEynlAIa//N4E/0JF7ktUuSdrT/kKPvAlmCQ4uLVObWRTscNxoGGK6DqWsWDLx2EDq7Sup/6lGk4GAxmbrJ4LxKQRwpM/BFjjdMWaqEDQRxBOC9P4Mmkmd0X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BDfdBe7MQ4xE8DhZDskqbYaVgRLfhgmpezbxIpEafRk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LMzyKaowbPDYt4QTDVcuXUuWLOHMGmWhsMSutUUYceg8LE40LNob8ZjaynB4K5r3BlusmhjJLeVwvu7p0UIi0fBUL2wJtRSKPl7tzFhcDvo+CSSQKRKWrimmmna2+6K1q3ceYyZaNqkjCBcp52oW1YUzWNDELb2FVMB49LSAIgHSaCXlluNR+m95YMq3reZQTyNVne4+m52jdme5OkSvtuys1Wugx5/pYb+PMeLhkW6l/1eQg0gPnvDkI5D949UyJKV1qCbRanbHbUmg/9DfRPHY5RHJ/iPIcgdEZb4wZADBuaOml5fydJXeZX12jx4JB6wWxgXu1V9/hgPLCDmZGarIyZY6UTqUGVVluTwtuX0kit/HtYdSRoVZzTzVae63KtBEZYsRclRYpJA0p8srfhrWbIK1M0ok", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BE6ZDhwf0D/cT8OgHjcINj92zk4q21uJDl6+Ymgr8nM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "98BVMw2VQbKuVrdpe+esCe6M17Ck04P55fdFJ8LIlEC07mRX5DnRfTJZft4yOPJI9mcH/w98OdUg7KmrMswiPOyizkgt7R/snv35YoLvpkkeWecCc+xO4C3d4gQ/eNICk/bfdrE7J2czcoGLyGVA2e2UiZj86y8XOKu/TFbYSVdUTgh8aIKEgt55efMgYjllWHRYrZnSHx2WLFvBIjBho5cxt1b9kwYXeXZWy7bXqRSheHzxSdyqeX7lv7HeoMUt1scTDef+eRjv9yjrsfLW2sOlqSuR6ayHdYJIY+M2ygi4caTjRz6X0dFQl4woIS9st7zJLXxL6y6xwdaZbvqosSUZZj8v73meaFtPPcQ3QSJwPPCq5Yy4Mu2DiIO/PYxCx8FphG0FHWv4Xm/rR4mesdkdhG9A4ARh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BEynOIAsMULnn8Wcn4u6bxVo7IOxpBCyLpasafVPSQc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v7SoI2ye/z8vctzHmGZtOmQrqF084tjzecVQEbDjuGPvSR/OXw+Dy8ZrO251S6Zqsz1LK5QdUi28hgWEipfQwzDyCK335630GghfpviVE535H2O98tkWKNJbjxBF7XTSKI7emhKu0n6+XgHHdGWFMYp91xH18bJDJXvBXuGPX025v7NhW/7v5ZRU8OvDWADKIykQzotbw6mtwOknw04Tp1NgIEVAS1rC/5u7J7s/QZ+OU14zGDGAAK6cTHkPOGcsssy90aEjH5F3GneeVbfqdNaSXuP/VfUBQqz/n0/ZNC9ahOg9jyGG1+Jpi91pH91+dHTJOuWhwAxKCwAfKYVLcgI9kxlo0f2QyM4hTne84LC3PNZEdGW3A7yKIPNkee6M54dnK0Gu3kLx9unKqrr9FsHev+zyXJIS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BFbMzrCdpJuJmMGEAdZGbI5pafd1RakA57kkgM3Rd2Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gzB34DioVfgO7JXzbbdYR94zQdi8n6cLGqfq6Rz9HER8NHjeEO/Au7CtS0BHIJhibSBBC0/o9DkkZyuedECLeX6ow8lbv2i+TwQDwVSLusmHwFsDWa8HfW2d105Pb0vumGmkg5gQRcafD5//7mGi4fpKPrhUGERVMh7KJkc/WoKI/4ZCdZBCfee6Hb3Yy3KfPKZAj9yLd4ryBpFH4gZXEU5HOMWdLE+abhGaiHfmCfmza9C9KZoVh7JA50663AQiMlBA2UjThQizJou1NxdyBW8LvEU4TDaloHnbgahCDny/CaozJTHaZ8VWDFTh1mN4QT12xUtM4PmGDFv9B0B4oYoXt1PzGrqJWysGPA8ddIlAf6atQ7qOs/JeRLlzfr0h0ZMVu1SU1zFhA1NUEqfqA4k94uuMObqi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BFoRY1CeH4Z2qNmoS570BmfXwqh7bv18CeYskkozwrI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CxY5nqfWTvgJoarjgUkccEl+YQK3zaN7uTyFkq2wDrWDccePRJK198beDTIiTUNSvrOTsVxgiYuSZCE/AbNseJkRv5BaNMDFeDeCaKjaNnOdzC7hs5F/cQnfbqinNtKaf9nqYSiw86s1gEYeuc0ZzRlMyvup8u8PcdRxkToPAuCxVSeRc3VhDY2vvZz2LvOfEAAiPoLVLl8aYkiTgX4MFtQ9OetLR3ByUv+7ChWa7QLv+TxcxJL2OwdEcJAefkq566zBpn/leEj8gNY+E35zAhH6DhDh19GNasvs9KXxbznkelaJfb8+LItI9f3G8eVZYUzmqTpOxRpz2kdSZUHeLs5M30qloe3VwtosSzaCEJvYE29g8azVJ9B6Xyoh4FHNzt+I2vZEbt6d6DfzjesZoZ0xvl6x5iH/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BFwwSWF44tE1kgl3NAK6cSVoo4dDVj0ClBD7wHoP/U0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MAYL4DIn8xiei/BtHGiC0/huLiCOE4D/m22Ip2n2Gr0krpxCLz02jh9p+bARtRvlx5vPaIkWd0HWPLJic5O6FRpOpvBLCPNPmo8CO+DCc7kK28CJmRDknDhMhnisbdXXIexd5bA9kPfLFFK13fdYcv9BKrNO5+Oj5aMzLhqMXPjf1465fQAfjklojWXzpFjZdGsdgyjubX3Re/iNZxoYB0Z+2/nNyCCUegtPbX1nAo3Qou7Gz3WG3W65v3TZkdzBfO60Cryxwfv1MKXR8bxQcsRUg/R4syMuR1MShOvefPrsig5nsxOs2yNfGQCH9QwrK2T/70S8bJcWNlJKrtpId6rdvR9q1zqIepcGy68M4qQhcpCVBZqvJpM4e19Nr9uCr6vZRYT7T88Er72FpbpH5U27QwmYt7D5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BIyvaqA82tFzZZViRIMRDwVIvT3mfRtAEfCwqM4KlYI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Drt4BO6ZBVkEl0g9jw2ig/OpdcWQDxnL+DIfHFviHBwD4EVOkOrFa5JbVWJVXzEpax5TukEoVs4KOO15p2I4pnEnvtLzyszKO9YpRAIZodrZKJRlxH21vm3wQoeCaF/sFBeaB8hXYcvT+5mJ3PEa4n1zfsMs+4XUQzyPx2ynu2zPXqTfp7MM1fo/yPm9lyLGvAHmviE6Mn/FM9BouAQ+6Hfo17s5nsG7IqhkDjSeoCT0MjPQHx1/0MLNmQVQKiJ3CGjYwU4pReRJmWzrEgEvZisI8UgzoK0CW/ATJ7GoD766MosGwrZ2yhG5mmEEJoUcdo0IxHp+IWkpVfj33ny5oBAIP2haWjzGCkk1VTOgNG0gGHw2iSd8lUgFbMHGY7I8qC/K0b1JjvEvch7Cqkq0qUBSIP1TdX8f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BK1kJrqFMuQvXlTcl8oJmDmz+ZADgTc5+7ZvHVuWtKc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DQbm0Pq5ueKSWXKhjU4FOOgIDSkg1MXDhT5IeRfnwDP/v7hNG/rKla77X5Gy3yx0egALK7qCi/EROPPPW5PT3u8XB/3YCLdzDD7YslfZ0cveBLRK/RKjfC3uz8eEYmfWoRI0/5/4wg3fQP/sCJJTW1ndFB8jOyrJLqzj5RieSKN6Z5Cic2X9t1RNjuK6SFq9xluKC1wWK6LaKfxIhhLZA519kvmrOAcA3IqYuMuAmkWc5uWsiu3FxVyxzPVsdiJdWF1zqGteVJWcSldWXt/wcbuLC+GFTNmP066K0DCVKE2wJWHijKV+Cr5RSuxKoJC182PpkFFy9Qr1eqxxo8ASgkH5/pW6+5qrfD1dyBRICTrJjrb+egTkKCU1VR8fUUMtKCEsRRgLsqlmO6tzBv0C7feW6/ytMSPB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BKnqABgHT7GQmyRHtFP0n7Dg3txRN+A/Ox7r/GLhkog", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "O7hLV7UQwwD1y0WghpzmwiGTjHTPTYNWkfgum6DpgqjS34OFoh/kuoI01mLimCRCG7KSt0Lxjm7Yye95u16tSj6q4sR/JiCa/15JBjOB6CjxTFwyu5NjGUODqwYvoMYbhibkZxRCs0DV0FlvE6YsWTHrjAShqw0T5rDeU+6Vpva/C7UK1/IdNXQNx5pGf0towyY3Wa0ddLN0lZI2uv+588kCwpMb6+mfSpyMuK63qSeY7gOWy58Eq5jBkp4OVMvgYrnmNYxfOMSrjaVDS9dOUVI//y0DZ/7/33CQn11Jyqbsn1ZTmr2Yt5Q1fh9AN65NAWutQDLcjvwt1P54yu8t+rKD2fYytsnr78i+sX+2VL1V/tB0gPI9mPK1KJmUS6XTFUmarQYnFpkls4bSQ9VK3TLIuycIw1r5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BKuDFM1t0/njK3NPwKI/mFD84Y8sml7ekfN7OblFlx4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0wCZMFFdFjbXXAXUDG+oQSBakBO0+lZFl7qDmDCtsJj7PcnOw4O7a2fGqIZoXYM3z4yLFNr11EtjcZLDaE+hGuO+LZ2XJWDsVEWBeAcmZSVXuKosdOsEijYIqRqtnp4l3K0LW3hcmVTrMymGZzfSEMykugjd0XOL7/jEFRJAFLmkaJOXQxm+inbrWC9zajmrKwgXR88CNaiiurYaz+7JC6AkUOpSMvcxgEpQSjS/I9Unp26gEBmD9AeWHOg+DjGnlIns3V21s7JeJ/6cO8GPyuvPde3xlTIF7V3iasSxu+iNU6zT3pZgerT+skGMhg2T9JBUO9VhOJCuMeob6+3q4TMa5V1wGuCHIycTFy40reKeithjzjBATMR+YqUz5B5Xl0uk5YXiGQXKnmgVYmfaA/bDIlSrt4JA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BL53qEIgyQ3OhZshBVYmes82AKZeeIRsLR8U4bbmvBE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dl83qJqrgDhVwSw6xSR6LP3OLSiZ3TTZKzxlaHqlyUqZeBqaaokocFidm9r2rGnbQQn11OoSaXaOmp+pDS9fS6Qno6Gr6k0EVzC7C+p6pbfcs9m9QuaZRvPendNtu+BdCEfRZue+VHoBF8OTwNn1dCX7masz1i2CTKO4aFSLrdcnG7kwNrXkrLngNU6bKl6eWascSGXr2YHC8riN/F6aY7+2XfAITCl5FIIua9yCfi90tqnR+Px3PJnmAozG12QkhIZm77iSJt1M27xQuX7qsMW3Cj5HaZ96Msz6h/Xbin+PIy63fG8BwdMnfXmHRmnnsH2KFBJ43kqH7cRMLKymZYxiT+BFQSwzRuquEwKuaewWlIhKm/vPFbmIU6Q5X1aYEOQwrxT4H+mfogbtbSZJ9CRKhOPJKryp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BOrSF5m8FKlHUWxkox0YbpyiFuSQCKIpfA2cUaZAZBg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9Ncj/mVCFOPwvDnGftMWpnYpzYPIVajhSqK3IVctXlMWkxiEj0OxyycnnsgJ0bzt6s7ZRkPlFgLfwsoen4F/q3c1ZDYporjn+2nM5YkbKBOknmWOh6zLG/fG0XgiXKbq6H1Iqi7Cl5dLXnd+LkEbsF8pt6yyB+qaO/8LvRmSofAkanECXd0DK5sC9l6uGBI5yoVBty6ZAhHR5ZGZavjuzRPRoIRvsQgDLeZIW6cLlGDcQYAJhC5sKA0ZRsRSDiR5159QuEIitWspJaNSQhcSfm9ODU+5GouvBDXd3LP9aHwVjNqLw6x2W4K4EqhEbNKESLmKe5hfU1G1/XU1fOmWGywmWRe1G8DBxGueODsLcK1msZxwezYhMGRzWYdv33ITaUjBAvTFpeX5GbOqbCTOhoEuz9C3g9pj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BOzANp7lJ46btWu0HQiztkfpJX20YWI8QbYcWBbsYaQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hEYB6hNQPuZhs3yWRHcGqvzH5CxTVi6hflS7/zK0YfW85AnxwxAbHxof/QQx+cSETCrgn2KU4zLOQjjbdVDAetbNv8ewoSAKZR3vSlUgIxuqsWrkS0UGspicSxaD0p6FfRSKl5x5pyOpN1aVRy68AZ+Chmex6ls8Lq/vDNOXQV3cbW+pmShFJwOc1Mw3GH5YfP7nKZIztWPyenOvzelH9cJAHNW+D+ZACh5hu1gXHVWKAdVfZV//2YA2OGDrRYe6rt64xUYkzGbUlgxqIug7mM0gCXsVzS6Rmn63po0rynsdFVeNe7osUYwZHNGG3rkt0HrVjqaFT6v1oMaKbbbx/6VVNDyIHdvE40H8FVOU9zHUmlT37+8f5tqaMvlsolBIva2CSj1vyTNhCP/IFMoO6wrBajErFjRl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BP/bePI205LM1xkcxSASjnYipmBwI9IbmsqAVFm/Glw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "roFciIZaRPSepqHcmW8Wi6Qg02W/a0Eomj9JUgvOqxhMBsVpji8Ke0NwrmPFFnfDhr/8mb7YiIeRr7Gyak9YuaMnYtm0AhMPjwsc3mMZntFlujap1KXlTxY0rZjVgAOemkuoxVAfx2TzLMNLWhYFy0c3mVw3gU8XllQpcibnK+IbFY0Rt/nDRgGr/HbdMfZ1GIR1J4iTT9eDme8Fe0PWnZ30zYZ79iNc6cOvR2x6TVqiGdsT8iCKF8X9f9uq3OeA7OIy58mFWn7G4PIEGu0SiI/gXWe3wIN7fafTt++HmXya9+NU6uJlxb5UPEjWvNltQbIuGrptOzkEIFVNQPMX3VngjXAI0EYeCmkDgh1bI7tQqSZwoHRw+l3LgVYXbpy/EQp3l1fGFylRcmr1HUBfGAYTK+MCWwse", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BQlHQEiW303ESAfe47Unw7qjsKyo7jeSzWKvME2oo8g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tmTpmhieu3VOT7tnUwB/mYDIUkjjkD5JY7bKvoL/wphu03blu3wd+vkLJ1Qcj02fWS9WZwcBsDaKfIIb45ffFibM2zTLUIRkolEDtf0jyBpjcFeTMAbgi3qavdessuuUgnMnvs4sqvumsjRyYeMwY7wNPSYcMg7HQxDk7YZApYnBQ0zhJ3sKMuOrT7gbQWjekDQI442v8Z/5mtCb91lQaNVD574UTWPomTxvzK4eR8GogJ+ARryEGrXDwuSPOezrRSuTsqgtzAsUG+BOze1dsQXXt1bwoijeszzbmA2dQAh0sfCSEBhzxenZVei77QPUVY1N8sJGYNPsvEXCYONd3/jYSRvcXRNYpkrbdg1hwqjQ/F/Ufto196vHCMIdAKs4stHwAuvDlQZEST0MEImmv9gq/bVzWBj2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BSXaCku1Ur8Bmjimt3lKEU83w31Ovp23LQro/vCubt8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BB7QQctIa3wzV0BrnCWev/+3QBbWsTuVedjiNFZczAZ3aEH2mL6yGrruJsOGhfLh8nJ1m+SUkLJcUM0z6pqjJiS6vYIXDvQMuaHaNe6gvPgcFayHcUfApOpdSY6HayHOG96VdwZz49ZJ1oR2WQaDfVpVwU6jiMq3owapkhtBGyjmqPWEXdjEyZXw8I9FWn5UCPgLpPUppcYrXKILbb5L45RcALekh45sDK3B1lEmtaQ7/ccWcZkLXa+dafXPuIrGl4reuFhiYXBx4+nkHBu1skV6azMfLGrZo9tksXw2V5zlz6TgU6JJfB8we6F6HIlfOiVVU+lvP1J6JQ/JWYqS8zWgh31/pN/VOMvKL1onI7fmnCNqneDCcZNTwcK/hcq8fa+Pvj/t7jzRk/M2WnrtN9QnrCNcsnzM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BTCJSxDrZdJR94b6bEqkTjq9vUzdUlQglE/M+yA0sqw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QsOVvqZYxHUsV6NXNA6hTTIUmSS/Dv+hFGITBRQkno1ZE23F+Ic+QsGVDOOGrZ5eSljZYjDiyk/3jysuPiqJ0LWWMqJzihAVd5r2jJKgW2OsHfxK8dd0FDfXYqUbEPO2N2/MD0NEgL5s6tpJGS+3T+VYHu7HkbsyMIhS7AymTbomW4TuFTNtkG5fE8oOcGe5aMqVZz0BX2+ii7tVJ+YIbafraJRjKErE7xV5USoJJ/Ab/Jklr/sEvhT4Ulxe+f9smjd2pZWk1WYHV424mBSQCxAg93p0OPlwsMlhqIYRXwle7LCPAK7piT7fIb0jd6hxbdc/DuACgOZT7rUN3JbsYayj3KeZHr9lLB/M9sH+EB0opQjEHbyIKHW+MJlQqhDkHChAKJM5lEJT2gTXXZsscZ+Ct4tooB0b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BTOf81jc5eE8zWOW+PI6vJ0sctL5oDbvq5YHWAKaK/w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WgAhDnc0ZheXYzE7Zp86pVHJIAdee+dbK3AS58Kb5Vrhm1ch50PEFcIB4k405PV8A30nMtSWENVzKOGgHlupYkw2Bp69R/HZ3PcfXfI1xwYOJlUium2p8ShqWHJsO1CCKb3QN2Oa+OL6HqjshTUdlDJP94Ikc70OSUr2JI/4Eb5w3Rl+/qnrBeWC3RkT2enLfu/XNsxUfMv5altQwYLVXrRxRm+/unxIvv1tOOJ9bLU4asgzaNQCy0KCiJzb8RemlfQlBB2gdzjt1GJ7yPD0J7N+6mDrijTIDScYEwV3uEGiHCS0tLmdRHRWXJEk7BcrnN+mT35EEemIPGZugCpcfQbBmSXFY2Z7LHBsFg41vevck1HlcbKtCSU/2WYVGUZyxTfyFGNo9IwEY9mnQxVCdqbyDBHKYUSr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BV6tl6F5ctTGXi19lYAqFJuMSzGCGhuUoxW3jP4HZAY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "85GvLR1I2sUwo1X2jn2cTKBltjoCtfkj5MBVKWa4PT1uow5MVMysYhjB3Xa/JSiKsqWgqMnCzfhXizr8ZrL+sslyqSdZmo0k2ZI3hQestAKoIO5DSd/rdPp/3pdHoWWPuT0obP3qwpxqDDWxKXKgg2pX9ApJuXLlwe0FLxqMgvvOwMyY5bv22NdP65w+sROgFr6fL2qv7U63JzU2sP/UwrQ+YqMkhE/QkhZy8TDTaFX9ny5V5Nqr8Vwpbo9GPG6buPFc5X+vQ78lcoY0uUPugxmb9e0Xbu0azMPoQRc5LleyfQznxqyCeDsjqo6o5rL/fFIbjvgHzZjkudJL3XSR0uYbqB7CdNVwozFxWqfqOWaWhRPUsA9xGEpsxSlZlTWiIFnveHTHbm9799FBRBWgVTlXxzty3yEH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BV7RPLFAZIRKCzt7EdBqpydu6O+qiO+8D2jM0b86XsY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YTQfu5iGpzkNRLAq/084GACNuyDnRYQMq2wzha6v2nxFf3N0aim8xHn9XwOK5UAclRrUcD+emOqdwl7RRL1CctePFkdSJNFcWtlg87+sipQUCbwnoLJtMHMaByvpH9trylHZFEQ/bGUE5DpGz2EdHcP5DZy4DDbiH26U/rpAkoEPoJXbky4nSdNTdKNUxn98HybWiZOCSkpGrJ9F9nrvCBkA/ZC9BjRDTf1aipBsPS4Uel2lbVAkDnnGcJKKxLfH0mo8HVvoTSBSYKwzqW0Nsw7ZcIDsZ+ODB1Xwj7gK9+0nUmS3mMXP02HkSEN+8K9ARP8AKE9jKKmYlFXM04MulKLzK6s6q2dTQNq93bNRM2uFFzf+glC3ho3q4Jae9wdSq438wzDFhA2kT3jljLdIdpowJr7AqfvN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BVSq2OZO/oJZDmOD2H9z3mDoP6bzsOklLAPsb31XfVM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mCRRn6fP2exkTotBoLZ+0xeDoAMhuJetnDTAmwiLMaPcd97D0vS+5JkmlBIMkZBoH9vc6jIJZxPvacRrDZCH7qj2fXnuxcLqRFvBTwbi2uPHFa8GiHu8B5aZg/z4Fl1xVxSs72xqSiNGgH4dYIC7x6jV+WyfoTXuNCLSQ3Ne4sE0jgYrAKZjJVRcoMrTnaDVG66B99YJS5U5XKpcJBiuxYL53w8z+Na86VbNUm08flfJg9JNAQ3v414QtYPPskOhbCbxyPhjP8c3p5XCpQ8L1naIxjLrGS9QPDy6kbZIjMrwxWuvucTJEWMSqtECoILFITW6pscxqGQtGJzujocmfDVK2tHDPqd2nDoF0Y6Aigh+DeGZNwtZ0T9HqTij199CUSvVRrTQZI0gKjKzOgm7hi7lJWGtcvpf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BXPk0exAq2fv4zb/EWNet58Q7VrMlW5lP8e9jw8vJQM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "I9vh3kwCl7KndL5at0V/YlT6ClmaXfCBbVIqg5UI6JC1iY14mFbJfdlxGZE7NcGE+YngJneKmBevLGS3NsaENhhSQp5W3RHGpT8B7+OAs/Sb75XlPfZnWpynJ/hFBmuY2LJ1MPTU6X+2jAfbi+0jYdIpKqSRPQhdLD5+yPWtkIC3h/j0gY0lYXxss42gUIBjqgxha+aaYcqYGO0wW82x5nPD7MDlUpb4x5bFYz+sa0p9jOPgk+UgPEYsBJbTX358fIKhd3RpGFeLnn064hdq+clXFP4dDcfSN+76ZCr4v6Zb2KooMYV0p9HA9TGWjL30hfRmLGjJmDwNni24gTYhpkdB+rrW2dis6a+OUfOLR3O/LWYTEZ+62WMSBBS7F7+6MpOtroV0Iple0SYwhoU8QCipP7acvX3+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BXrQA22f+cBU3gc6z//auQdC68Bif1JoMM5jmmq7WJ4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7HBtuIf7ucVqfRV8ECPEVUU4hYCvQL0YZOURYEmhnrNoc5bLNSLQ11jSoJSsfQFUsWb1a0PhAZz0PzClNZIV42Tt3uTT3Lwngz/O/matmDJThRc99LcHAXpDDsolEHxLCj2mcuxO+1fkG5tW1xm5UFxf9T0dS6tuoeVBMjzawj/WkjilnuMSeOAS06DCCJhjTaJyq1zt8ZU8U3WHYST13Ddv54UU2kyJtE8FRapjN/67gUX59vfVQnurWjyK7bhQoIqooC1kZDZg6vMOBFdcxDIKuGE//axKbky6qmfWPj9YksHtn5KyHD8mCgzsHVUCjdv+MewcIL1ykxTDGJrpMSldKw80MmZrtHoSv5a9f9GGQA1RLk0jdbE7q+KT2I1d0Tt73O4kXxbF7eAjzPgLpGmM9d2uvp/C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BaW6dolB/YyW+JwgxKLarOldqt/k2MtJPqDFN/pPbx8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1Kmm4zWcw6lpf3yN3ud6ekeJYXJvUsRPW1wpTvA4IqmlvvtNENzKKlsWpNFLeyybQD4445gy7+DSbu5QHCfKBXSVvXHd7EAd67Rj5RseaJ7gA6XTgb4RMgbcqQOeopePj2yA2l9Xmh+1Cdjp9+3BIv3pFUlYQRsJMkbnlgLaj+DloSQZxsBLZXdac3mFXRMg0pRwMude9UcMq5rQ3PDS8gIlrLxAO2ISfuhWiJaUTzJU92VR/vboDRSbHxaqhbHiN4R+75b9Rlf4Gc1bd4bAv9qUBNXmwhcXtDht/gookODEWo2ZfHLu58UUb9suRpLSG2dgy8WbaUgCSsGRGwahLrl1aN+o+e3NyvPM2cOpFzkiSKXcM70fcZt1+ZCvrbiQ2KLYbfKAxT9jST5uLKa3cGPmkeDAi+DE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Bbnki8QmI7KddeAZtzDBdckSh5RvekouOrBQjklx76U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "97Fx4BOtTTRdJRSOL2KvamczSLKSuyMHp1+qo3BrVQbABfE2b3i7fjpEwWbaOWPKzGb183qDefaxo/rQ2pFF164TyGhZRxDhMYiKhfBwSCl9Fy1avXMuZUcA504JNu4DET+0BmRUVXjvi+J6IXuXVLxcXaF+btxYvh4gOV0RVBjAHHlj+zl2Ybw+wxPXwftmWdDRxW06hTOsZhs1w+ucms1IS6RZaj5nZozyUAGzVAq2TGklMuWVaPHvGr6IwXs78RQyVi7kzV0DhOdb3feHyiEtdWqrKEI9HR9XCpomC54ovbtRJlklGD/V7tf6QTskcb1OVDxEGdpVUD6zU20MtHepLmzRqcRFcnwGZLid5h5kLKYKjeJF93qFSdRYQ96PizqsecHRqRDQVP93w1Uy1tEoIEGZLRJM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Be74Yf35CuHh9L4JSIsCbNfUiEApkaRJMAgvTPXd5HU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3AgDVNzciB9yMpwp0EZGYMQIK47JzXi4mEWGbP1eHNApDQzRJSRjqebMhIRrtS5FnuTCCzJt6W/rMRZpv/5FuCiM5onDImtbP8sdrYxb5gwSMJPKiu0UkXOF+mmPOBLY+fpvVAsF7yl76olRylH8S3NBx3rMZCNPz5tfQj3pb9f86KWQCdCDkL0BIDsZmWlunEkV8yptXNcPJfjCDcvqdLPnis52wMSUXDXpreSdnMZ9TV5BrjR0zYTRoIXjC9XKr4e8Pn7c3JpzunZJk7QIFPHPYQ5f1ZJV+PqZPkuXiAJoc8nPviWGByZO++VCclB5oKhjI/AiH9SBH+vKRBZxLh6qbm67O0zlsb5+WI6+MFEk/SBF62YQPgyOauqLePodE2KnML56gAiIRbQESvQLcZg8ZWzX+7W/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BeiRc3vypR3gwEe2nd7UOTCDKoimq+xtWI1NXOuJnHE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jxwS0VsqlnsSJUD6tP9znTZkfct0BnaCG4K5ApC1+5B21dr+aubSXEH284fJkaAW5/t1XqQ/IxbPki6PkN9nvAdgejQKCKiaXHhszrFgIhmpWOKV+zrTJhsfIEE6Lz6Kve8kZuvKaVILWuQpiNRfEneHsfk0kpHC4CTXeSfpPepMeCLY3uSHzK0fARFzdyC28Y47UgtX0E+5xAZBNgs8tHeeN4kpzaPq2GBmQo4Mr5lKngJ0gcR5d5/HLsZ/WWVYUVTuSIYixE6ak7tzLusEC7P2H/DDGIVaBKCJQ+HRr//gCZK3zBemBNQ8V5naMZBFrLp1XVpW7XejSZh0ElU1r1rEmV2/m+15cFrrB6crt4sRA/dmsbwgg7/51936PAXexZyTKzXuBMlFj7JlGg99Lxcmo84or5yi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BfJGpY4AZDaqOdQmd/RuME6xPYbMJ46/x+PRFgzu7PE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l1ULSAUB7bx9LIZVH04JHbMsRVzyE3WH87hRxbWyK/udaX5wCs1QUChYah3IXP0lFjtTBQk5ZPR4SUqFR8XD0G2WsxBdmZBkx/OFlG5sbeccwq0ADtQfdJjT7O1WD1eKkR4MfR+yHDL+pPe4gPCulqNUz9Vi1UgJye/jiigbgcMEdyuE8P6TeJK+TqE6rNpghFUmBvrJHoxMySm7fPi8iutsHAwYlL6hDd6c7Aj8PEil2zWv6LXxLkCTANyQqt8+ohYewdrfcWf5naqCf3mLOyO4EIv6eeWv3Eek1TpVoHJJtVixSP92mAA/K3a1Vups251h5rj6zbPEa0D6ZGU0Z3vH9dkWMqtnt3nTZ7xp8VYggSjR0tWlgLe/odmlrddnjrWFpORuqA3GNTmxpG1RmiqINLOlFYa/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BgheiDoRz9uY5lhZvGwEkCKK0zHjaYKoBqVMWjXT7DE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qnRs0sCR3jpDiK46cMw7UX5IQ3xzM97teHUnZz5xiIxCh1sjNypIjstKbem09RX+Z45UDv3dkrgHZ/h4IQJBZSegvc+tFrMi3KJKTFqhGqOJvBbG/zMfFgnNUemJrHGxbd+9LxhP6z88G1f5Wm5Mnldxd+4xyHBbkL8oZf7uIGIhG+oja4mWWKiSJl1uLPNjXs/MiYGQwCE8LmIQoYSFBv4JeYTZN2kecbW25XGcnQBNdYNOxL+VPGmqNfpgmuw+7PengyARwSyvxclqSV2hzcMZqT0XhZ0SBLrHAilHVbAYKeXaPBmt2eMPh5QjHvAOAccqcGoS9/u+PwHXNQwGpIr0hKtUk1q85+7swSfktSo/qQTM5JYEoYUEoQkJdZn3UstvizidnUXLBpErN3REDyZJtoJ0XmJE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BhXQJLxYdXtwANGvP6bjStb8ZKqi9Gvm4egXEnUltmM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dl1ubQEMccGxtxSA5HMn6wB7bi0p4KF0tSKSjCZ9vOTBH0a8YgrDprV6eBrQTPCUmAMBvPbau9YkkHY8gECQqMwKBon7JNrGufJ+MI8Y6a30cO/priZOMFrl6QeSSkF1OOaetmwy5j2dpB5JGGVYH2CDfxkXzICq8F0wad6zjMeAXIzcq27PXUfwjmYYjmWfZPjy1R351KVguva4datlMMN074LAFMBM4A+gEFbZWS+2pLkUmstnwIidubTec6Sh8zfOKUB8nkycwhWJabQRtEosu56ibJjBrv4oK70bLER2QKK1qyK9eiYfjK5bCJ9zmV+cRPbSI+j3KDqXunD7CdPrvAU5nBXfynjHqiGMkZi6OsCfMjdmjDU7b/+TVK2xJV8Jz29YyREnnVzCluKK9VrolAtpwxTH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BhwCkZHp/ASMEtKRA7Rperf47bEeF9WOnTm8PVGKJGU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sjFpeEk0mbkfSZWMnu9jl2maLigtBpvGAQw7HS0ivEBqZC2+yPsumujWJ3A9HO4q3t8dALx5w8IQZERSbIJSJbFxZ0gFT/w70cxjmxI1vX2qm2rhpoO/xyHSmWoLwNk4beHArOLFbemK4bFESliVMqDXYinxzkEtX7gUKM1d76vKpnUxbK0T2UJ0lK7H/Dm+dCRJTIckbkd6HFQjKQBpEv5mCjs5EXU4DPHJcwhNBOdCDONGCVqOo+YW2sPUpQVlLcYlCjnFn7OmL0cmh/qDfAOhHDN+dM9bNjrJDWO5HaomolsI6B/lpzvMKzWhn3daXleVGeuedW4Cp6JfIuNoXnHqbVm1a8fXkTxurPVwxuXPwttDRLPHQfiVEZITuwD9zc2FZArnOOLCfoAg14vvsXK4QO5ygJZa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BjCf5sIXlLc6ZdHWQ2UjOmrmAUt2Voi6NzUPNEqIz2k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "J1ecyBKxTjL3qEDvpvlOoG2WPRVX73xK7OF6x1OgXmoSqf+e/tcBZ9uZQYHsO9JwwmJ9mgzjnTZrV+dg9NJM1fXR/mahvhEfv9H1hABUgsQ3Q3n6/lcpztgfJpO3DeWvm+8B2GkuulThwQlgHF3Rsr8truk3Hkv9kQyZFnKJ2+cxpRhUbqh0XKI+vMRb4vi640V7HD2z/E683VquQ6a6Wt5T1SRMnhJgt2woVAdJmBklbw2XWl2dsDNt7+RKi6creAqfGBneW0py21mkYxQb3zd0/SHVReXlqTvOsuLXNKqYEuPbB0L1x2OOQHQalYM415j6WnMQ+gh0XPgN0ueLZCHbBP8P7m2F6H3O94LElEifs7IS/BNz2gzka6192t+wKF7IFsJXfvBn7E66iql47w1354eNw2qP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BjrYrsnMUHnw+urXLBABYn9EPUozHuL/K9tD6uTguUs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AnfADgq8cEZtee+EUgqgYPL2vlf3eMUtuYu4vGISpGJgjUoHNDJgWcCiNdhHTov+kuTdAR5UxOq8v7AT1LzBJcyh0/MRdWFR/aFOGNeeVrVDHUQj/526+zM9+7ZXSQPjJjdviV9XxdlljngtGU9wPtYLcs2CckANOQmJVznYOlxJI1zTSph9pdLlxIYtxJaTUTG3HTRdSYhGrJyR12cRSGJzknbQtH46VmBxLNOpCQJwm8/2vI9IctkIPcKucwdwrvkeSln0Ldb/iP3u6a/nKHO6hSLYg2g5BPhzJ4qC7C0D6ENMNDyW5YKlGdLKZDxMqgSmq3Jr2STugAc6ZGqcDz6eQeRtdNRdGB5jnbhF3BZ2kZ+WUAzvGwZtawsPRpAg8JBw4SQpqT40tBOif9NO2/q6WzZojlhm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BkK3NOUpIBdYUoWhzjeFK8yJNUd3su6Ir7E6Zmx07CU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hJtHkA0ORkYA3L0t4F6/m3c4DvBNQa9s/ZnyDi2xiAUkrS3cYIkauDpBMCjcNm+kLFZCTmUh6G/nAvxfW8yEKChbE04/4yJozmKCdpDEXFMRYz7YeNMjuktYubVA1JNvZylCz3J+l+/DyPS1YVLAPaXl0yGagucXQ7q7JBfyozDzFCU0QUrfs21abp2xlAqiAoYWwMF/TzEGl8QupM2X6GQ9ClrRjUFeKNPnXnd2Awu0L9RLtWg4zwx0QALZQL+oFPQ5lcq99H/S40AFmo987AXH6MK3bYPfGVSRM69E6NRYS1ypcUJquohCqkhGaNWO33iXEU9Wm/sigyEKltirBFawVpKtcFkcHtt4XNPsan5CK/PviCQzEzSDwTNKb/MZI/7i+pKEfjkg6K/OFcPreNuVXHDWqIz1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BluawVxE71T/3oZq2NcP/zIMSZYyB4FOsFIukRp94MQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "C3kYXnyhNqda8bkFvGVN8vKc2Yq/IPD2IWdK4cjGK1rNSukBcXWSwE9xWgSjZLDnbJKVmH0X4cwlgTD1Eof4F9YuLWQ+QhNhHiRUHNBcbeqsWuuKWuosdPtn4MivISbiN7Nxez+D40ZkNfY3u2RSawktX+8DWsCIzywvfaPWC3nAPllbGATjAvf5y443uYCff7qg2bL2hnaZ+WWRDmCnpVIxxwVWiILugZZUaT4GxFJzwb8j+jKPbe6Bl/q/BinJEuOXcjNkjIHoF2GTq6eI02o+GLv4drnY5NIghOgA3GPTevIgTb9j8cxLmTD+wuMrpm2YAKyqjp1dgEjXb3LHCbrAZO/kVKkmxs/q8vq4Ly5+cTCDsDCfxcssq5u3dOiYX9NNsxWnCaFGrNd7Ijlwm5VLNTvOEl1p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BmgEz8o9VD4iMS8FqB4GwGT7mUcrzaEZwFrQveVHrfE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ohEtRZAUSV0WchDuJfKsQZZXO+arBntybnI64MGiOhyCZRXXZ03awDIOkpiL8EIovUjYyjG1rSsYHAPvTqrNzTuV3hkzOuzRE73/4vnOvMshkfFiyV3YjsbyLIK2fBe3WLeJBd4VknaEC6ZlYPIER38RwHY/WclAFfAFXNKr157nIYGsMkmUhdLOrMwdA/lQiNv+gzkArgu4fXxmsNxZZF5jaduTR0FxraPAy5pMPh0jXjIKquikfTYCBDvFKazOVUJRjHRLZtQUBWTt9G0TmupkeafPBYUbvzGNWMdsF3IelolcZICZurQSaWV6tNkYYlRVIvXd8JidtPAnu2EkC4db5XTF8a0e8EEqMxDfpjhMxvfFyqhPracuEj+W06MvTy+6Le3s7pXbZsTLGaJZp3Hdb5xqMJtc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BnS8n4GxM0HnHjzlR/TkSgLIuvEautqUUO8KEZuyenI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xKrNSDWyOh+VBtM81NDuwlh2qi89VNxw5XeMI8MChPjAOPtvM4c8kRKmXeFRs39SLV2Qw6GE1+E6zylDzlZrUZfF8hJNIc1FuR/QWDHW1tcCN4WNQMdKC/s+KKMO2Ntd4YgJLq2lwUfBqTRPD4iMfnp9JZCVHbCaZT6UjPFNFIhLwbeVOY4vY06Ni4NTp/Z3EhFO/J9mW1+bBXyglzmYUGjHlreviMDsSFUEDwyVwgJqAOThDuvAQ3xOU+jGNCFfh2xpsxWj6IX6YRtQN3V9j2mhuKtjACoVP4u58SMqfQZtMRtDqrc833/Iatj6w7RCfuQETLB3kxgiBTFNt+ZTpG5Cf3tf/W8go1eu0AMldwL48goICyz+K+/dnPNv7kZeToz7WSVJaHx5JdnFkpCsv/y07qHL2CIh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BnVDf+rQTHIza540oh2bUhpdFRnm3CIkFLJGwxOHCH0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IRva0pX2JoklVqBURJXQss52eKhiXjo6cJdH8gM/0BwXSyuEPWAw5znRW85lDTwH60/SZNm75yTZTjUXdSRmVkg7uq9QsuwTLkOF+54bY11H4A+FxNpQI9K6IqHXn/wqB/LnUmIS2xwnsJRKGM9DvO2kMgQtPcfbbD0LZ9uFUWG6EnneFLNMPyJLmDrOvvUD/1/zJLDGZBGfwCDMj2lNlQTLYTnYZwxFnpH4eGK4ImXWVTHzLFoeOnBVdq2qtV5G0YYOYbjRlDjW9dren5pYev6t3O8EKiVqTM2EZEuRVQn4sh3t+qU2sx+evr/XiFVmcKRlRpCDYpRTjj01qhF5N+ecR0O45rvkYOrBO8ljUWmz82ijREQcdBESZxRJhqQbDN6X/2B/ip7qiZVdLo25f3TZjthR96EO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BnjpiqZ3n2X3GVeQLE1PyAozA8ngmGDiv8N7/Tl5gcc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WcUZlPvKQ+xLtuV6i/vNoIM1WuJz7foO/ODAeONfglNwdvjdbky3x4OBNMt7OgGld9LKG89YCgF3iZFR2s74ygVMrM340whmo4i8fNGzxJIXoHusJ0kt14j/nJUKe2ClkO7UhuuHH71OGEcRlcb+6OChoCjcY2Zpok1PX+Z5yGhgn9SGQNkklLZ9uLPrfzhxzLLH8QwXJu4GzBD9p0Ae/jDKbYREpl+pdw2wSPNGEMXPTLdBF0lVh0rZamEbKKfrUt0VORdWFBsAdLSP4KDux9BSDyNsMGT/RRb27+rc5dlJMJohfMMm68oXXRd4KNYuhAukp87bFavOrzU1oWk187sg+96lHQISkuQP9FC38pNPizbV0+dqss2z8BzI2GXE6qmY4b4FbKkJ4QW1/JPLUwYUMzR8XHVT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BoAtwkT8FHDeCUJiKPr75NL2IjwlXFJp1QdHA9eP3kE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qzzANZRJU4vHjoqLYS6hCfjzF/8YWopi0mnkeaAdnHGU1y7lke15v8nHDaymo7oyUvIXVyTY++5qcwrZJq8jytHW2R00IsupziK6qQcwCTb82I3DXVRdkjrheY5Dz6PGrknrorsxTU7PGbFF/MOE4WGGjwAgqrB2sUVlDmj8VJWDKJ+ZZf7XYcSghxD6WoiljMlKIhy9axKXvS/rzueVHLezquUSbRO2eDKgQVi0nqp2RTl9Zazj4OMFK3uvfcWtga4h2fAm1y4gIVwMrIlhW+kMw9nWZK495T9VePOYmKmkEbyYtur2+xV7u9VeuviVqDSG/TUCZTagCqRCLB3X5feq0YeTB0RjU97zQaQI9PnBaL4hHYSN96+JD2jRmIqCLMkB2fuk6RG3PNDD5T2nwqSS8Dx1Sl00", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BqDIh7ErTC9D+F2tNJ7tbQS4qi/9mNAzMO3WOPR+wpQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c0sWcXiXoZ/jFy8qQi1hZjYHFFtdqXmXrX2r/+9CxZfbWaBsEZVV3eAojVvFIf5potM+7alX75G5EBcE39W/Xw2Utat8ThbfuPP8Ax1W6lh2/5eJ9lBSver0D4O4IJBeEp4sOtcCczJbUj74zT9PS7CwS2DvOFnasjrBrvl1oUevktlUGHAHGou4cLo05CsNfYHOpghB+6AzKJ4vTc4O2z6nhDcOs1akfpy3D3Q8nqJKdQfXG9Uv2UTtGV2TY+d8zNVkNVgf/7DVterC1UFt5JtP6yOy6xEKTGMi5Iw1TTzOU+AU52loQWgtc7CSxwkOb/4BgBYN4lTacs6zksQC9NZKuzPiwHnEbwXAjf5qox6VX6vBhz3DR9lWhvbhedrld0vIiR4SKlkbF/y3F6vZqlqGWbCXa7ZL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BrpNw0tv6Q+twi3mU+77iuE+1thXsrfGYyYrkvspYck", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tJZTvpDMuyFCOf7AkBtnqsxUoX7ojtXa+gJQiyXZr+4pCL0TpjbNfMRMEmMH96D3np6IPK+16P7BHZQCFTe9aPrsvebzTT9oz8SrL77bWarH4CIrRS9hK7KrfhFb4zlng1blUKkXdaFljhUvidWrDhxxdB0yUOI4LGUy30YNFAqbqv87TzURLF1K1aLIA06NmN3DZQGYGNybF1yoVrz6Txw0ci9S2AcCnVe2J9oxkvEH5Vn6CPmwHzgWp8JBrNlA2w7OH3qiyBR9lP8c80B5ugYTmoSiqWHXItbF8byvV+c8as1mSpXUK1xFpQg2y9RpMjieEZzBFKI4yTcosaUwwzlSYRASbIyAjTYsmL6zVKeoOr5AnswBBURKdl6yhZJjyLF/GgLvVQ6AtUvNAFVMQXxKdGwaxy44", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BtcdQTdvL8liXO8UZ1H1XLG7lAjfDwG2G8qMyH6OazU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZO6T5KRqECcggtg4pbv3OQ9pZjlboPWUrLo6bLfKcfmbgLnoH97l4vcGKhwYCu+xQ9HTfTLT2j3QSgelsbTHPXs3OmJ82VX4ijK8JshVJjQMD1QuP43W3Z7RyqY+nCJMXjLo3EyLgPPpcSCRRWJo/sOLIDJ7q3mbI43BCFvUa7qs+N/4Crr6FXlZlRYVfNDm8nvgvQk/iFyvxp4XPinEAcTfHU84JgG9aa+gwUE4Um+wC8ihBqgUVSO36TQEstpd51fZETrxjSOR8QwaADBH4DMekdEj/WG3aD/5Fvm+SRYJtZt9HZuR6+BAxCUZ0G1WoXk/4yjdGu9hH1baplMtslYh755kT5wAWilQgpIeiFOrvqFy1qmT8jQqdlLcXDpi9iyFn1F5dmjXzDwJHahtZLyPOKPJo3EO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BuY/+l7jSnihSTSKuaPaeQMyy9AZlCMv2w8QR1ywXas", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4hd1IfS4xwtO1VlVtdVcyDQKXxVcKgGfLgvbagUWbgZF8pNPwJANhjNnmEOCYGm1vhbddAdatR6aO/zOXTE6rBWzfA7MX0EJEV2uTDcg2jgQsD305oZpldarQjhqN8yxZ8z1TEPcRBtXWq1Fy4iVZMHarZ97nFIb3141mLb3hpFF6t+N/vpIuMNX3v5KVPALUUSnZed7G2H7uM2CN+F5Axg4Sao+CT2sokSUovzS6AH4y1Z84LGH1LScbpr/3QcoysBx62/rpthYrJUeUeLbdwae9YqDlVGmVx5oDmC3qyZ5YURBmJX8pI/Zt0pV6AEcgaeqBS1Dt0r318qeNf/CGDobZkMBUTI3pLa9GVIgq/h7OOaLUk+nPc0g7+dDUbb4KovNkqC7G3kf82kX+JwXEKSKZvt3BrK5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BvLshBz97auqecaqxQNXu11AE+RbIQWAYqTPBiHUNjk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "O6mdqyWq3xY9rkoKTOA3CqwV7rgc4QiOgcZwlDNhnHtcODvbOd/yNxgxH27n/qllC7FHtJpHTD1VzASJjuKRLgcRoclD2mECrO5Qhi6JoB1TZd6Vdlz3a+Gw81+9kcAHq/u0b7q6UYx3CfGnpjICMb6IRVy9HvZ5Ml5nE+s6zWMtj4SN6c5N3RBXeS1myvyXTOeyY0qR+p+3Or9UguCqB1gSQCVb1CyVB62hgqUj0Hd/vqiLRJvV9NQH4pZ6nRJc9GP8EUqwZradYoiImGCmuLwH2uNiEtic4R2AVbelfdrHnXqCYTJmA1zNEGel416JP40nV3Nps2tU8IVp7y8rl7sgBFqQF/bIBzR78cczvU4ivwvVRdj67THQCK2V8Vo2BesISSUhTkzWu/mkn/dnZbfmpy43jdBd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Bw0ClAMJEe74YODT2WEVX5mIzH85pYITSuKdEPOBQ/0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W0lSNC0YZn5PTIr9idX5FKhnC9i44eHFCdSLk601gSltGAkuhL+s7d6QpGFOedE0wNyLbmfBxdNS2W4X4Hjj7mx3RAqVBD4lIsjv4tkyojSXVSMkdBl/KhEg48CB28qJKeC8UjYRIiA8kh9fWT98HNr2vC2iWYjx/MyHQL/mFwhv7sIo/xZ8kuCpJwwtNDORmaitUpA7UgWBW+CpZFFZqTS9YWJ6SQM99sR774OtJ8BgfUqqLMQmZA3wQ7e1gf56seqNaXEImhC0COSElQJg8rCyPyPSfIpr83KtqmDkLP0oKAfK/55svZv2eXznnfcpUXgDlLRldIQrtWsyO5UPGKp/7Fvhaioda3m3YRelTCljbq+wSXvXv2EKxuKwrT35A9dHjlEp2phEItoYb/GIhPehl5mx3DMs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BwxJ6zLrpspG/N4U+9zzOvmT+tVQ+QthOBJoyJKicUg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Xx0EbDnuCcjpUhpfWAq1rzoTqDzDZTwZyvUdiB60Lx5PCv4TuzCcEKmEwhylT4yf49eyHjNA2bFh0p8btP35CN+YCsGf15io2twWFRoV8fWPsf8fOYwRvnEh+5fTaJuGaDI4e1U/4d08/49/7cQsl04GBbzTBlXIQOrC7CdpLCTPUyyYvisZvOqE0d8CM9LoGMRYs/fPY3POX0BEwr6cjlPHRlc95er2WvJJpeoBCH5e5mBKyJnTdSVdLhynsLJ9CRObF57umoysAYoqmJhaNsaRwhgUXwpekeMoD9iKz/6TldDK+OJ462PspXDqY0am+QuYo3/yvx2/E0bzWQZ+oxIklPE3lsuisO7JVQBoX9bZnfbEda+6pbzUbxqbk5BAMyF70sIFiw5XPvccBmw/dpgGh6pQqqfs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Bx0t4H8ANRSqXR1D3/EIgic44EN5g0mZADIihaDPcZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xBzPy31pMhtkDydKeatCcdOmKBU7uehlU5YHSQnO8jAoMQPcWOqlAORsIRaZBHf2pWQnvwnomjyJgJcdRwy1fmDGZFEUEL/IsnBdq/SK+GDMc5DetWiDyEhvIBFDU+n2jOjrVg3XdbbXZiKqM7HgVE1jcRuqcHtoW1takg4brmBA8AV1UFOqPoxu4/12EDL7TfLp9A7l2dI7/Ri1rmRG1wjRb1/2QStpxpPP/tghwfWy0lYc7epnzcTcxM5rIPu7o2+pWyWfG1h8/nChK1JCUOyRnCOJPtIG4BoVXxOzueZDAWulgw25lMyrGMMPLGrB9U21uwKmBv+Z1Oq/8lcjkYXUADNlzUnR4+hUFK5iJ0Rt9tgXtIkmTpjipsjUEx1Jk9l+6EDsI3/Ii/UEfZzewF4P3Gm/A8DF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BxnF/oP1mNFQ2pLZ0FlJ7wH/Y9AOof8gSrGYEthKP9M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "le0W2sMlewwFjiEhuQFwbTqmVzDTXrTi4jcRjsMvRVSPkxZyS8tRCcpYRURxQA959AUoyZCLxwtyu2106MsGeiuBaHq8DO7aBSMBPEC/9YnrlmoLUH/m3mwkQgTWnJeHcVp25cH4eqCfPuXOAVfUiwSwR889rFySoZg3+J6y/UpGwAwafXxQ0rctqq9t7fmSg3EaiMlLygPI9jOTRdx0sOMTPSQTfByWC5+0N3oqmBYnG1ykCMS4Mi8UK8d56WtEj5YQF1hmD5W64UE2bPMVHoyqoLA3nPEZHExH+3ibBllAfHFd7akWaH/DXt2YffCcK4rqAJs3gPbC+AiQHvVQ8eMG/hc3vliZTQgut/qOFBo/hi/h30lOzAdBFfd9O46Woe789BlMFnnBtMRo/cMcAFjoakqeUqrc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Bxq7UnQG3+GVMPXMh2dYNK61jlJ4StDFaQ9gEY6IFlw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Tw9J8aocIFaiHk0VYCB95l0qdDpoJ6y3Qus0t2NEVcPphsb9cqcELcbij8+PfyqNkJpn851DhvKsYD9VjVJVZUOsbRXUBxyaW90pRsU+YaKcCmzemn1MIlUvGrE91wwDmuSnPWuUKArWDqvnWHCrjbfnxKv89H0AiD2WQlA5w7mnJEtw66Ky54h9/ZqQ/fLLbJsg0PxSY/Xn0X2K3uHGWlawPIN/m+UZWZsgjA81aZPYlug5+DC/XCzLu/1p4BBryEKoJU1lKiStkH7ocaQwuU/3q9wdSIFEm3wluXCV6Y1eOFGxbQbilDGTn4ym0UU0wY/rTCohz8IrdFhXAReZF4Zq09UEN+10CwugRSqEr9tT3lQ1pSm7Y6X26qyYNXNYp7romb1dmHNrVJKNbc3o7Suo0QGfrqRQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ByZ9TOkWgoz8UpThh59XapuIAPhAiP9VezTw8JBkpY0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EOaPn6rdj9HT6fbKSfjdoZNRZiZ2KUfFwZ1JakH9WZb+2a4pxVb2HJgvmCc+gbz+jxhUz8djsEao9xsbBJ/gYh5rHck6sxN1aKo4Jwhqvaoqk9qWPDVZRbfRqAKgT/2mPHKaNs464l4oZQMi1mphl56B8nUIWMMR87KKFrDqcW57QiOMNgAmXzWgBJRvfqxmk4CkT/Siwp3BgfwcI5MRMThtgV/Qd00k0mieiSF4560DNccYy6NNG8TcH9CU8+Rpy9TFMOUL0CJYwOX8x7Muv+YZrsztIFzvvK8RDyW+oPVKj6brxOqgrR45STJXx4f2r/1T4lxQpiTB8qdzJwBvnf8z55/74BMlKqEB7zO/scRaqDRsqKrXCWQMN3V1D09oXNu7j6UA9ZwDUkLD8MfErbiI4UqsoFg0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Byo1hoMJkUkWMKDILAyYoyo967Vf1wpEmVL3yv570SI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "p4sjtUnhddhd7XI6W3/O1qiKe810ZZrV8QTv1KrWOYmat+FVp4d1VsraeHsY4OLLNdmW0EjPXg2kyfFsPDkyTPFKBgA32qcjuOW3U4hnMkhpGO0KV9bCaj7imyjIXGSnQh5Z9IdPb2eUcJj7RbafOvyBHenbKPeoZGAYPW5ecax7RdxBKXH5+LLbFvYm1+pl7NF69lpIGQBFvUFGQy7NgQh35jbcaGFI0uCofvIh6N9XOcL+R7+712dqtTYrd6rHgdB9pFnu4cleVkFir+gHETeTJwA6WlQonXgn0wn4gLXRw3dAh9DHjURLr4IKSFamvA1N4X+zsEH0/ZkoQq48wo0hpsV6Qw3sVN3kcDeso7HX3mgHx21ydN3MNcuAK0LArKRlv9Fd+4sGG1JgXNiTvvPSuL0nnaYN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ByzH8mXOjnJL5MMae64p1/22mSBP+gjCulmc3KSXeMQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2NW8y5rinIR4sL/mmNe+JGoryS1MBt50hvm41GPAdUIjMhHd4aWJO4R79YomjreXuxDzSVBi9zxRS5VLhZ0G1viWa6I8EZ+byZUrOXqfvE4ZVQnk5u6sXJic/YXDZzE8uIgicG1BNkz1njKjvbSn7vPxn1vu60B0s1DZ7PMKNGjk1cCpQ86+x4Sboon0IcxfunVHBgzKRzDQANzPozwN0XPICXkJjHlce8kj83uxPGG0v+zp3e5aDvMIArv5fvB0qfphjvptDDPKx70v+QkLBk0IvA8mckJQa4MLw6Uk4/HPUDkveywHhm22H1ah/TI2F3WhgPZt068XlHmqw0dTpE1DU4JeiPoAQrR6wSWT6xgjO4MiPGkzIlCaykcUj0hXSaS0VCTZTzqwXM5CvQrGUKqZKdds/qAk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BzHtvcanifFARtskjCdNWdukI5kwQ2UiNxKodmpEHA0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7i8cKshP0eLd1x+LT7QAbls2Vew10JWq+gjge6hR/6Rr/wKeuIpFcFYsG4USjdZGJ6igt7F4BcVGChOG5s6YOvt5mqsBmmvHijYTX2NmbvEKIuuPo7Oc5ZXcboHqAxmKBPegPx9BwGqnQorYgmASFdsmBV4k6r2uPf9qHxiBZZ+Ji5V1EIN6sBP1C7kuqqz5PjPNi4lDLZXrck8Xbc8qOafHDyK4f94DeHITS9vRV8i47WXwKWHdBx9fnLY4Cu1teUN++nLqhPrn0+VqEl3/ZLsh+Rt2Bp3IpQpurA31MQfKnpK8uWxjtezFb72S7YFMI99id1Ly/d7E0xjCNgtgNq2QglybpiV9+tI4ORJ6epjiBb8VeT7aaIlFJbHtfQQskVpcMYkFwmV2ap58FBa8XxG1aX0jhuN3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "BzakHQjJHNlwn+KjvhaFE3audmU5Hdulp7jIvFjoojY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "84539MR4mt2SGYTJtSjvxjigk7Xxa38N+O1iOgAhyivrRs1N5cRuDbjhc6V/RX4MKYtPKy4qEAE243DwfoCaTkA83yXplAY8IX++pX4GgaK5oqEYg3MGJ4op83ZO8CEVx7V8Z1d8S54rmrKyLcCYs1QcLwFzJcOKLRqiIrJsjgzG4vkium+D/xQ6YHgcGz0R5i5SDV1BYJeEpTPIN7aiZT5nufpaBfZToENO+Oe4W216eUXTh7kiL5AXi0R2Q9Yv30u9OIKpKiRz4thq4NWRw2r/pL2JthL5ze69Y1+YR1yxCjY5tNmeBq/jqsVCA7CjLUpQZxlfS3H96KpbD7rCm7Va8Asocb7BQBqI/Dn2BifueRlc0A17vhsoVqMTgmQp/n+yU3jdFyPocu6iORNaY6LPo439p3UD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C+zCeyvFM+UaJoNvRJjxISKfzn2JkzZA8yZpglG/m7I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pYivQFEvrdxztbYsvNZX/Fro3vrzF6Y7UrHqJiPw63E7AztGuDvZjPnrDUUaA7T5FttpNcAsyFXWKEadM7QbV+kVqEcGYqON2GOufB0KnkL7/zQGF0Mnu5JliS92e1TV/DeWT9czPNdqfxxRyxFaOcTUa0EvOXIoPcodFwJKY2qqXhW/z1TxWJAfYD2lMmfvIZxhvCSgtSVvQwQtr8+W5RlSOaNqeN2KEHMuFF3u5LUQCSyFC/8NmwLGWrAs0JhYwuixTMJGT2SEZADg2/bhO803/nET9psNHsrj0VkZr3nl0cD13VBRU/bkILrlDyprotJtsApkKjsTEbhAIsaxEzJuAjVgQ/a34aFos5WhECcJglhfpu/ugnFLRqNjxwF1XmXqQR4wbFUloMyGsK+GVI3091OOANu/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C/gjF0otbAdOyej9gSIC6vJDimcgljfJcBH+stnBwh0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Zsp6fW7SJV4lsX+EgTg3zhr9JSnUUs4SHqaYb8eOzQN2IpxqygMzlkg7jHiX6d09DjKd4LtMcQmYzMfikm60M79I/PJahDHl4v1/gCxEBeB269C88Q85u2zXlKZ4UZGJd/jnVQ2xDzv8MubZUBlGo2O4Hi3E2uqfEaNgYKKHW0YPC9Czi3ZRhqMvzkLkqw/eYhtcuVuYe45KIW2PEeyag2FFDccRfuD30RhSDgX0IwYMrjlVHW9/qkRJEjHfMlY75hlW5FJroAuo18XSTzyw9cKARv3g9zQJW+odBYT2rSPqX8dOFck1XLAf/J9YivpXFd7KUgjDRv0TreNbfYTyVNvMhHAKoa4EABoXEAi1Xj+uX6A74okyhGWnJQEhEjifCeui602q8IPZAVl9M/417GC4/EhU7Xdk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C0OLFDts+OPxD4w2uDcDeUD83vMT4Z3UNdTd/xkAzdA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kGAkgv1rHoqnf1s2JplNtHNnaiSKNOZI2s8tEhm5coMAFQcOOqw70PPsUvYmkdqkNZuQwzqGJEzvAI9RlnGhiE1LB4LKbav7ujavYGU7uiy5ZA06q8T+ApD3kcEX8Fk44ZHeQ/zuKnhtGqqcyvoe12Dm2CHzBHFdbPsfTHupyVVako5NNX2GOelvrtHFNkbZJdDoZXOnBMg2KiIBN4QHIKXucQNGCcjwtfE3U0FF0CBagnsrdDwAfYDF/njq4vUIlLqiHkdamsR8ytxNEKEc+PfSMTHMrejoKK6MFW0CD1JrEFIv019EF1dmcFXMA/FHn2il7DvTw2YCYOMWASJWcsSpPSFz3Ud5jTo4T8ZecBHyzdW0nHfNSDy6YxEEqNUozY246GBYU3wU9888qtliKWHfAMXtCyX2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C0s1KPSIORtvGBzRPoGgstqU3gq0SPfP3pvKbEuuREQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hhU86NgEV/GXieCDjaGUPtJWiafCDvebytzGYWq0sCFQ4CggGi+3xPPFhfZGl+/26A6iQv6PTqyZc5k1ncoyj/T3Z37UWnv0Rit9AjSFvLY4VbQnY1i3bTVwa5z09iSJoU7mZnSQTddZ7rxQr47LQcaXVlffyZ9t36+hNnVrFdvUNJw9ohAMYmCqu1i38C6qaZKJSv3rxd2HtUgIJQLnVnUW/SSFi+LGnNv8wPaeVEz3HHGAqfxvlWKcPW7Z6T3WMx4992Hu2pDY/+YaXAApDcL3+jwNAGWf0QNVUNSdjYnhH42zO8OuPBEd8/6VeDLVBzCIMnkgv3dhPwSb0hE1/dCa2r2pdNXcl9/5hbSZNb4U3hW6gITN8GGmvTItXiztzDF0wSpRzmYxqbIZzYh3aV6+IFRPwtqw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C3fGx1lRcgI5V+uzfM44iid1h6Jy6keB5TgK2ZZs9Iw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N2hr+Gm/LCqYjj5Aj5MejAPKQKpr/frl2QBBRI1b0GhvJBjbqVlT14/Zf6+NrRDGuYDwnKa47MYF+TfxmUFCKZPejHQTqV7Hvy+OZ45aw/o8SKVtQKaf9cSHsN2Mn4DlJN/My38DGj385KNNePMxPy66lZXpVONzWG0Qc2uy7WYkWx3ujtgGOXmGjz3YuXB7iltNCenULXSyhETFjB3cuKlD5dpJYW1bNtpd9OYhN0HEdepxBxcHNQjQyXNC4BDR64vE0icIkGVRrcpiFA3F8IhvCrCAhhdWZT1g4duAzUlHuKpxlqrv1WMGG1Fd6qxhe0C+zdOBuL+tXe6ps8MH7y6v8d7GKsMx2CcbOSGK4qVBXUdF2SyZtStYPwOs5ukYd6KXM6qED2uqbW3Q8rOFE0dqGkAKI0ju", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C3kpkPUmPFjTivsWLFIUjZOUlU2jS4sRz2Y9r1c4txo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "47jQIBZEsLdjxu0CIjvSCO39W9eUkiV6PgFDuCmuwicwAOulYP6fwQjDDhX7+ZL5s3gibWzWfWx9avfQosAueM9FBkmH657d/PhdP1PgX8R3U+4R9iTufyREcjwL0Ap0QS7XMCNMirQBAH63KOazQAfEJxseRgXYX89U5OqhTRgIt1RUCgAR88ETgBc+Az/c5M+asna/jb8EgL8HeFCBnpchXz2LbJDFk1k2E3DK9Zq+cxVE68QbefUB6Ygk7uqvfN4szZbTrW6kpa3z+lTOOq93OqB+nXUsMe7oMSDR6O/4gwSXnBwSK9smXyWfJ2Y2O9Nk3GYWwFIx01JEWIF3hfcBb7PjmXF0LeqS+1JbovyWlbTnpW3TBUO5q82MLhbZZvfYai5eD1nuZ8m4dPccJ/FqMnG4RgZX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C3oO0kRPo9UmDQrofgFsC+ODkVrVa2vphon2+K/YCHc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "C04dbauYcdbmzAakklv9q7fm1Sd6B76KRCcYVvJLtEupwofhQR04jJJ7wj3suEzOgMlqkXJyOIGByoPb/pb4IZAkInH7p9UDd7PaxC05qQKjyuAkGKZ8Jh48SMjE1e53IKvAhSOnzH2C55HpUP+5HGlYVilyg8/8HviyggZn/isASrhS/wZpaAScLJ6rHa4tOQqKA/I+0gWLQoRk9t10MUQZdDRIEM+UXU47cuzoKVmLuXVDUtKtrclbuk/lwoAoW2yx9676YAASNA5Mpel3ThATtoKBOnMOE8VWXIYie6YAkZWOBXf7q82MOLleqBP+N+6dapcv7amHC+DwlHBDCxr/+nX+3V2wAqzvARRVhHiOGLlkl6Mg2kZMEvjfHYssi0daFGI3q8SidW4a8dhvgRmhZJiMqwL5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C3zvHXKCgqTNpMWaT6SKL+tx2wKn3FCYrLkAnEp60Kg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XJuAQfUSOenYhSbZIQ1bHjn0EK/aSFfsoh9+LXPxRe/9ks6nekWMiBiiZt2etiYnfVgXptAaUicRyha9lThpGR/084utIGvVFO2K+3HW0OR8xf+Qv5xB3Qt4FPHrPDZdzQZDRnEyvwlbUl99Lhj/vO855r46D6c7d9VuMNDNmjBMRe8YGrMMLWaLH/SdF1RyNIMgP/6RQOoHt9qhi0iTjnOEEKRYbeA1qJyTI3FX6KmkgSwOed2HUPMj+ZhmsWbfV4EmlTtXHesFlkUaI6qJKgbCsM1B8mzuOyeYaCH3n1LsPxGau5x0aDXndq7/VuvaV3+xCvEbhUpXMOi+Nbd0SGKod65U2BuptYwDmLaNmcnID0IIdIV0VWEmh0H0SfhcGw8ajlb3WrG0ol6XpamIRblChK0zyaRQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C5Sdcn+ljQaZ5h0Z9U9/oJbYfdSHxBH9fBw0OIJ92Hk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uQAqaLO8t7Fvde6Nfju+KijaQCxAfcbjiJByeWnIv8uM51aTVSA6024mKx62X+BjRuPKG5P83M/xzS1uckUIxkDeZvRGR8YfYq5qfrTkgDHL7GYFYNS7SsFYI3SO4ZEBO6DDXhng2D8yxLkRviABjx6Y4svsYCcbCEnAvzd5fmIReUFjvm6M0v7XOyHvPU9S2lrzBAwz3IFJtzxYb9jNE0iaEZZ24WFR8omtaU1A5eNn+6kUnkgCaAX7KLwgsLM59usMt+ZDhFzWkUbTaPZlL79RRh1H4sgMEkXNsy2gwf/iWqoJXRmAHAgASb5xMfsR7TR6N6QlG0FTKBA6hdR7o2CW1ZtLqa51DLK4QUdzGJXOyU7ijuEMeh3grLwry/YasdV956C7vahk4YnGMoL/VMlKwBkq/DzE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C64wsAQBATH+ZUGHsEIC6WhvXKYEyKpNWi0apB8Yzh0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pCDbQ7tij1QYNpNkrb9MFbPpBsZzS7r0gAFaMwDe2EIOYN/rthkIHzt7iMnPHfUhucmatP0jR0Za7XVCmWx0UDjmYI0LH4WgVym7/ApQpCLSiJ4CODavX1x2rmvV91ycdWFd4siPmgtP8tVVBxBJ24NqdKqJG3FGB9zFE5upQGNlwJ6SCQzScBrTf9bfdfpKMCpDxdg3TkngJxp8GbR00T+nzQBZgNBvMimN0glVmP7T69znMZsxwCDVf1b0EeUCKcL30gjDadWS+ZykZFgecuhxc5ZmOOwP7dLF2N/jXK2nCor8NGQ8LNXbTmMJe683Tjm/V9eLmh86ZFwpLaUShVwS0rtABK0OYqH6YwWndFnRq2TRbOZ25Z/+6/MHMaImhGwLWGMy4knOWTPK0iZaXhvTJ5biZ8qI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C6fn+owdIiAPkkfO/r1HwoCGlcVYAkpnvJYQnW2+s4k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X3IfcBMBUZpJ5pGUeMl521EbQiiDTYHXcJgmu1aYGbo6o94nuYZy1O28Zmr4z65K7FaOOaZixGNM8T8HZAPBiKcZiiSqU+c5d/t4q4678UO1H2efserCV16Xrx1iDuc2AE85mgJnu/xGk4Gw/tijfVkz+We51TsMn3Uqa8Ifm+XHDOBtNN9uu7NRtPbVmrBH/ebFQn6xmg/uDPwiMkxC2l0ITiLmbUK3UswClTW453GSwfhu76vdlNUQ+7zoH4SMUANKe257QmUFaCW8WlktDuLDz2J6ze9+/V6KOgQMKU8QlUluoUqbSy2QjJ8q2HVyrbD+BqVtIh4qDezIXERfQO89qSZQJdo9U9qoulmEjI1ljE+ZQnQKiqkRSMjD/DQfiGrJHEttWPCn2eNfbu1NzEXpl52mb6nj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C6ivsg6PEaCj4uT1QFh+eKX1WoeVwyofiFtVXkQrnIk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/VlU7xA2fQtEqBYWdpsHu9y0QZBmCK6h4GkWrWKOoVsNKH5P7vnbkdFxsRcqkpnwZGBLFkP1RvX92BLnLVWFKN32WWz0m2ZHOIJYY/RKBFGdMjugOVfE1wEvsPDhKOJbOURRbA3INPAFzln0V1XyFLlcZOjW1hHOK/2mMkzSrOoQpS22JazFUuvIDHXG/oX/8Jr43+/J2FOgyY9d9aK4E3HDqp53kgIcgXK3ZlI1GNsd6fbmgSLHC3Fj0OgEXIFzEXKNkpkIjJ8vEEuX5TcY5eGG01QehNnziQEchc5l7hmhTjibPzWJKFgBGuBWQ07BRB3LbtHsNBiEvDp3kRhtj2g7MmdIKXf1CsinkdEQmxvGv7gaPmjAELxxQzxVcvQA54yDOdIjNsCDiWuhS/UTwEt0RiMCNwu5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "C8qS9LQCnA8P/ET6hMk4hDlnHdKpf9W7a647Q/85XuI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MnIpOKh4PKjLxnkKKultR7jUdmSs+hWmPJkKiQRF3k+mlUqI0bSvgzGr1zbb2scyclt1k3tWyzdJtYNb7WgUW7Bd0F2ZejnenOnH5/jt+NLZCSoAxQVQkoqMhgD6SKmxy7cATZOv+FvUhjnhoKbY73Tk91qmvMWlYqpX+MeoK7HCUwCsUgOPAFHsGkHIL7hEw1TAfnteX0RxMoxH13EJDxSVE9mQl1Fk5/SBlJ+x38EBWO337nkBM6eNxaUlxJQNlKVdf3VZC6NXs6kK1gqR5Nckg2/iqlowafMJhir2ZAla6aRhASS7+9YBt8RZ/EnAV1djtljpbd0AxEzQJE8hGcacXiA3NOXuSG2Fu9m66E5BXVSCbAW0SiXJoOs/lue6CGasa0WyB/m3b5/Sj192H19UCBSoafPn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CAaO6kiD+3kf+1Zn2yNqDQ7HqTo4FCfInXB+e4F4/ZQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ckrxGB5oGICucOSt5uqI81R2yAuwGjRvEXainOQjgiWMHKQcb8M/9zPvRbpH1YjV6D5l51cxDrRa8937G4z5E6vuFhc9YYBeKtQei1j0pSBGBSvZhWNRTJwUrligzd1WZM881xyblmQOfHEjwraZwjLz8G5M9nQd1NDYbPKaocaqGpYYJ5zoqsizt6fZH9KAgKAoEtLblXw/xJh4oksV7/kiSz1EEOFfhcMNt33Si+T1pV3yX6ODpcNisar+bw1VApP3ja5l+A52HuIzwwMJWsoB3bHfQC16RDPF6WrRloXtmLjdEiCS1BhtYqweJbmjKfCPpO5ab45yyLP3pdECoS+CZgUzih6J8Xo08t5n/Zj9i1mJerEENwc3e/NcVpNHERHbf2BBQvbUdRT6Speahpv7aHp6cJs1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CAq8/lXewLC6RvmUZATqBkqmc2ll7C1E4fdh5xVjVys", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LMJxN+1jLFJh9S50xVLvyLkqyjoN5Bt1jooL9Z+/St8wPJRxCJ59jpy5P+2xqmEE9zZzMqAkRCKRXTge9Ixg516Mbmxt5Chtdlv9MV7rlhely32joXmaPCK/Zr/31lv14uOPSZEaPPpwkgQyl9xkCNB2T2K/8oq9n9QJTTArhfNoBZkLRgyhvWOKDxrcNKucMiZd3pT0rSRAjpJKyvUUXKwG9C6/ho0bFV7Nff3QgW8PmlOQvb1v8DmlaQMQJH1h/3E8c5oNJz5z8mRY7C6XzbEIPjEvUk60VkBK0NI05oivqw5TfbcFIlUYI8A6YcrU/tO5nhkZxXPIL/pw2UKSXS054v80fCAFrYFvI08d4b03fr5Wqqsaa19es82rUVpRxEI5aNHD0HyTNx0V6MhpNkUlP9PSiw6+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CC+GyT3utzk3RmZnY8Q0fBqdv+TO26OM4doCNrglmdA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LhAuIbNZNW+FIg/pZ2LIctkbqH0cY15P+LsKgzaA8XzcL9tcmKNcqgE/MKrj4LlyC0o3dmfPmUbQmihJ/HQvF6CnYFO2Ub4BCP3qWkUBQBtlFxPLLeryYFAJ5FaZplj6gcM9/y/vG8IVKCXxJtPUcq2jgd69C5bAppNHsg5Rp+7DNEe+TvwKYdDLcPswNzRyZcbf8SZfAWc4N6h8llKXyYwFrogjzL6CMeUJtx5S5yr7nYkYFG240395pNSjbr1v1tv8QfiZwaUzPGaCvNRCwYvB5mjaDQO9rmhFeLTxL/0gLHbgblfeGYs7pHSWL4pTSXvYWJssRZHAt7y6tARH8TrpnauiU83QIZHN2lrW5sdCUKA5sFsAPHKaNRsgZD2elR8KP36uigmVj51hEqvfjX5Hm/gxE3x8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CC1QZWJonu9TTJse08JFLM4u0kRyVhGhe50XejskzTk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+y3Lf9+J2gA4rdvpNTBAP8aiNCRmsV/hrwzzg2gX5uofTHKl8hu5BcjHjhXhQLRlmjwzA+chOVrcXecKnY4K1tZjSbjCaO5ouQgt1GSFDnz9Ictv+Zo+o99vqw7FyZJ3Mdfgmek+JeW3MWj6AVnsbsthu3xct4Orgn97/N7Vmv/3t6R0FBQr6wSVT+tMSQ+1DBfu6o6HMACnKRyz06EOX6S+bwCmeAjrrrcG+afKqr9nc59fxgGbxvVLHepqWzKRRumOItk5b21L81dfbKSViZQZ31EDJwu4lCoHhbqbZdrb3yFvTXGZHOjaW2XaPjfdk7cRlOFXdn21SeqHwYt6SYES9L+xjvFVv2SAest5zV68YSUAifEsUGxbTiCgg+BZ0KVVb2tesyoT4tTeQ5gIFpajbLLiFDg/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CCBNIobLDGDtzsVBJs0Uncwb91GZaUhoOWcLInWAL7E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JEoABuB0l/zMmBNvfBhR7gUQKWG6ApHnT95uETrR3sEM+zi3+adYRkR0kt0acoIkOi7M8VnKpWOIfM1jQIPzn+AGtImQ3dBNmoWBjFre4Ktivi569+1TtukMRaJJJ5bnrj4i1DI12Avj7q5yfZ3o6BBxu5HXJ74W8GyA5frPc9KfFw+g7X4IDF4WxVNRAK+VV16eOgPxfK2j+DuffLEV08Mx77JO6al8XUqlVFr3+6aUh002tQMlFCdsdySM69DKG0P+rjufeawQHhnqLzTr5djmv/Cjz2J2/Aak0BFY6geSeSxkMUMekxDmKsbMrY0QVIFFRb8/1/9WHZ4SHDbSvM5J7tN597PTOJjJu/zrr0c+fa482v1ARiX+i1DZ/B78g4CTcXxphKoMWZjJcTfp4y79n4ooYk22", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CD7de0951Od+v23qN5Z5R8yRhmw7hNwBOwmSlhR9bPI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WVu9e0BChW9KbaUfFLzqvepYC9xQoEsZ6kW4wDnlJ8mmuRMJdduZhfR2qEJ9TTcw1a3BFfY5KSoF0HCEgc7pKaSEVMOTryWT5v8QDhdS3lp/aZMBySJDOgkEeg1MbPxy3hl0W89xmWygunXuG6UM17fT1CRSEfJCwHGEaRzsptUdULuB+dMRlYlSWlyI3zrnFtuQAzlRZUfV2SZig6IJkQ5Yd1mrd+8lwGjF305avCUnyuuo7qYMde5IRX5UFHfHMNeY5ev18HNHZsSHvJzuTdrc/fI0okvsJUhOeeV5OrdZKZi6A9hNOPyAKsTTHksmmF6GYwpcMucYktEY7O1y4NbFspzQVChs2Q2jnWw3lXemma93fHr1tbqgBKoV6nW3U5N+YQ+MK38ft+oH0p5hGeJRa58Xb9Nf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CFR0nyA3jCpzBRQTz8FZTY9Kx5QMO4CYc0tKv+kyDX0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k8SiRRGqjHApP6Oyn3Az668L5dDYyVDu5kCHNVQywLIaPVs81b0Zs++/WNOf2VLCVdKUWgV86u4nRwaISuThV/BZKMo5MvbG1H0AgPnLLqrBe8rw1Be4WmCs0sZen5HC5DngjOquXFpVeq+UuZBXIIYEht+Y6H1ATMvM706CZPenOLBN+3e9570f8eGFj55Nrg+TOKzyYQoqANKg/w3SPDYqjn9DhnmqddPMGOLlYO2ORBGUKwrUToYDMQgog3JGHoaCaf0ln6JSwf2purC0lCQ8/oS4lqXUVIRgpNwdvLm3z9eiM8KgC/RKQ2zW7A/9zGKHJv3077gTWN8Yn++fiuoMJsJ+9suW98Xmar1YWZyfUJUsx/SD9+cGArLpTVNFTjYvCcz8lluZ/lVXvpmKEL8BjOdmeyZg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CFs58VNHY1XQvtpwOFtniG82l84TG1wMhtE1fe90KG4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mb9OZArM9q8NgJ6X5FXBnpZYD2GrTMad5OlpKrmOjKJhc7cjOw/oKJ/+xjQ9IxjFODOVWK5QWghb5lQaIGcPy6Hpef941YQBEfgGKx+pNRC7m64a8aHWtx05mlJBoGmKXWgoYc94SRKcFY6XsvKgXz/+DOjFUc81NoNbt85GWWneKOyBWa4OVWxPtrJM/PwT5NEjVxIrU6l8/iF8z3q9q8R9fZOK9V6IRxIaw6FdLpJqnRgAPyqAOokPZ72gU6s4w6Kskzy/E4A0NvcC4RAwzjLJ93V115ECRv/Mpfq6Dr4GVMp2FFv/IJxj/0qtnpVDqOy1n57ljCbDvAgz7I2y39JUV7EtV2QnVbuC09gzFlhoZToO4/229N5y13MKabZzD+hRjvmuMkNAEUDrhq1LPh9O+pa9TAYE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CFu++uxJ1CAqsE1C9yWlLczFCph5KNsAzJWRGbcq/BM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wzyL9MP1ipeC2mN9gMEwax5MubYAMHWUt+vU0Ud7qe+Xl7gjuXOtXlx0Hyuj0+64UAKVqxcI8tlxadd5rgGMve0EOrv8WbT99lUC0X5+21RrKGOBl6FwHlu5/8uB20Rra6pYsmqUcm6MhPAPf2Wo1lROWSijiEMxv1YKfs+fdtfOW1resmiKtBqJevPS44SlObKb3A+nB57I1EV1k+3WYKDxntGx+QDfSxUwRVxxkTSiz7et72OOyoLk5Asr4ZtfXTfsonu9dLEkwLxrSru/h+EaE8pwYgRqBU4tE7ijOPsyF7pOoCFqNjwpuoX7LOEDsmrPxESyxQ1p20Uk4NiLxtjm5dKydMeUvMNjte5kMl0Vi/Bi3T7Q9VeB9Er4vJKsmtyzewuOMRpGe3MuwBnIBz7D/yIcYe9I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CG/2CFJNVFHX4QUiJfkDSsufxP6OTQtNcr0iHJMi7Cw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZnOKNBy6Psstxjx33fh7tbrLi+KxGAropC18+sMePbNNLjTVj5INNiKS1YUX3ZXQu/gZghHaTS9ePufhwykW/Z6yJkQizjOBMY86zwz+iCZxI6Gpx/r1WIy3pLfgaHsbJkI2S1awJ6gK6QTVLt0KgmrVFpJayuRNXFISDwkN8cI8hzo3R0f2HzPWfk5p4VngeyXdcYzIbMCoikl3K4Iwz9v7r5gmF9B8UvAQddfcQTPl6/cx8fJFm8hSp2hdPvhUdBIUFqa1Lsk8yQJ67qd6wvQqGNEl8VJV65U8tjkg0Uu12FE+2oKLkE4hvNn4YbJ1am40PeccqjUDhvzFs7GVP7MJBAxaxBLcetzjg7ofinMAmC0Tjniu6e98daE/Xvly80vsPdB63u6TIdzaGvHF3SiEnbO8wbJC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CH1w7b+q3ByrVIM/tvTyhMxuQjl5SH++ScNveW+bZ+M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8zErSatFXcuYQwHwAYgr0JN0l0JhYP1ts4BSiF4uI94RoLBtrz+WOFXRFQdUU7KTdYi913KKCcvJYuM+pe5t4AbvG4tl0HYd+ggNvRiLMOHDZxtfwCGeWXLeX+kE7YoJ50F9Y91U9yLq5a4QxeOkLGuEL8IbyAqyPs4kBCRZWbiqK8pLDaXg+7NV7QotmVCk7Eu38JmFDwxvSdaIOfzD+EqDmVE+h/ghGvDKzS68e7z3pLOJE4qmKuxke05rfVkdT16FO5PpYubPY0iR4UZ982WBcbfaHOXTYNKiACf2pfdHb7eMF8d1lasSEoS4yQjhPVNaVW4f86iNXWm6nMWnM2wz6xjtPrW2o1WKvw5MnF8QOyaxlRyaS4r7AMLMULenB855uP0NUsDxW6ct5NNfdDZFW5blgqN6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CHD2pfRwnUA8a2iCDj6Lh1pe9sP7hi6IB/xdZxk6ycs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ij/aBVncG9Tw4uBlRGNQYGOWs4ZFuK7PjUwvx6PU1L+4/nT8QfmUyQGkKYetZEWBne9hSUD2UtfMQNtcEqDKF8QF84dNcUrkc0Xe3QXzbfAAEgtbB5hHOO6Sjcfk3vPT5De91oHqWR2IhiLUPcNJrv3Vck8e4HhqHukS5stU1axT0+LNzIOj+aH4IxFrYqgQtU23MqCFrdVj8h8c8oRUh9rGV63BbZMpVuYUMdsxt51z4ZiHkkYPZRAsU8v8/KaLMBhyV0ZQuZvswTUanolLFdsJFtHlyMxkx2QCxZwsQHxIfVHZwC6a5JXLV03SV93VSG5OA5GGh5X/oqn3xgk0WITGWtaGLcJdENtZtwSHUiTdT7aq80fYchxJtE4uE4qwb2/ywdRHicvqFbIkL/RciuiFFW3QIc+Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CHGwe/NBa4MVIOg1KIbDzanKhDrLr/QQSJAn01ikwdc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rKaSMcy4bw1zXSpKFTKud6hT0J9hK3kZvPGMy9gISBYCc2xtN/+VBdWhOut54tAV68GncYd4277iqWQHqaIYKL062J/UCygtbsnMJoN4cs1XZ1+N51et+1hV9FKBdbPrwaThRm4M+GgKY0ZB2zwmBDIqjtfDd1prlPB4l5aXmEwl+fbfIkIAhKNwOEtOFvq7Rp+6tVCEQYabNIaI0LrRCHnXEKAd0dhvJkKrek0wKO9yD6ONkWpZHyb4mdMARidWqUBtrNK9j6IAEch5SqZ816LPLT1DykW8sy66+YGmyfZvzgGyMpwPjVAUYHXjrFF8fhyq6UiRVZRQ+M5FTOzaTc3qHY3gVKoHXvrHd/5gs0+vrkFjAzOAHihxg1l7NhkzXvcZ8yRjz598C3yHljtFZO/L322QoppK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CHSQC5+e3KUxjwK75/5M3vOFrPIY1LE3eGmkzJTaXHg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pLifZ0ikezf52/6QC8eQk2DvcpGl/GRobXpe3vHNVAa3VLr/DKNcspwtCrkpwnGyF3WU7GDo9cgLYw1Y+gyy12IOxcWtQV+RSx64ZCBrDMO8OBOO9Xt+mE5sxUDkFpXsr+sKoJ4fYQi/HN6v2Kwr1WikOH3yQsC8UNt6LoRSFm+7418YQvqC4mW45ie2jDg9eZ777euImrguzE4qzJZCA1Fppi4rvVmBU8QLgV4/BzlhkF2q0PockC4u5WSX0HHBwxZ0dxz+fJ2GAi8rZIQZkz5TultUIXmhS3zSzDU42dj2obf1XC6wvI2lLBHACQZsFP4j1oYZnoY8cxHrZlLmFzK/kTRjziF3/MLSwoqw+l/zeIiiA7bw4SeHwkaGJrSqEBla2Cf3uMYc/h7fteastQCLt8KMxSIh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CHVGJEpvT3ZtuZ1k5AnBu/YLJFxsbv/HgXt0V67LDEg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4sY+RCdWBxlHV84il54+dF4RPMCGFztlcNbPqtdLcrKdMjCN0CAz+fFqlRTofxJaf/5KX0nxqeas7uJTaXRERGdwD3uDisr14ovuKbnqSu3oEWmI+PnVXG4R+uNuHmW9pFTwTEOGagVKrQ1ti3jMJgWPOSBvfyN51XZX49q6uSc5sEO4M/bk3wFbFqVUmu4zvlKMp2grJu4pq8klSTwEeY4a1Veu+DYEFJaPnYY/jY+e6mzr3lfb9rUZ2760WeP/XgBdj0yhv/stYuw9AixM9hYXvXkfqXj/VQu5OjDVjYjdqamB37wHlDmyDgUE4yRY8dtKVFGbnUjsL/tGUsfmqfr3VeVTU012a7xHiB+gINJY17ouLloxiZZelSHgfx/Gpy5jXPDjjc88m6LMmeBoFQNkN407ZpDU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CJiDFA9w21L1rtuKgY2y+CcIfnkIrZaW1XwGqT92sGU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ORQ4DsSBGoOfxJ2Fpv6p/Mv6/DIsMKyXxX8MFtRB6VpHV/kFm/ile5TQGeazwqT8oy2iJP+HXSFoG0qbB4pljCkMePN7NflDy6Qfd8GAHubAekuURpJckaRSCCOTCDgsxQksfTLfuCjnRvWlL68t5Fu0yPSTmimrwEehDGEjUzXt8vj1ES2YDLfgzy/tltovmW52H6yR7Jt8iUSlQOypKN1WDxBScMdy13iDzRGEAWB57ff6FHLmyknm61Sq3SEU6bqf86gEfEJx1OZGA6g6n22NL+b05Q1dFJWhqYDtG0ltMDg2mkwaw9HFS4hS0Mp26p49LokVC7HrRnOq6EHss69hrZC7Mg3ZoZ6VnCVLB71ajC86Hsvq3Hf7rc1+DyNqw26myDeALwnD5o768yWfusm9fG0YzRYY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CKTfydx9g/MHvLZmivBgVuXSJ96DXtNJelitaVxNxS4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "budDSHER71QdMZG3nT2m2opVz6ylrUq0usC8LyUg7LnnubtvJ5eJJ0IDjEzs5jr/yshzX6d4yfW1faVpLD6xgW0P7mKaBAZFaQVrQFXM+hU2ssLC/cj583Tl8rRFtoxIux/PuCvZEdhip52pGp/5DXi6hSwl4qEsZYB/NFUAYFgJeXz2ZskcVHM6zj04p44dygBzi9pr6qo3bncw1CtiWGKwIB9Fgjmg9JV9GUbAH8HnvNiAS/srcKvVS9SZjPP1LCOFH+QuJ2Exn7OSpy2OPT757wPN3mrY344YqNUUh8SqBgUKaowgYy9j6QRbnX4FyWpPQ8FqyERlwx90Z8pM6NnyDiUGGcJBeGG66nronEZ6o7CtkzxHsXO85VVHqKq+RGHyv2cHExIx5wqJH2X0XVyZ8NwWYR7d", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CL0BxnOw38KJ2ppEwTSYrcjEQC5+aiq0Z4mRcI6Uqks", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mTMX6yO2pFnBcyHZhlQSN+kk5LYnd6yKeq+sF25SrcfqA6sk01rrMm/7MYiIb4Ee1YgFzGHiKXs8CtS5qXDun4qk+Gi2F/zWamayOZJWdjsfuAFqj6SSgXIMGmbH9h+lLdmhtjg1arRskX4IcEwCwh2ht+ebk3otgvDxWoHXz0trxDVnXZEig3W5UgkukFYA3aKWCoQnnFu/vUZfNs+zSMCTaarP21WQqaOA/Rf9oriaQwyg9NxXC3OjglcVoPfGgugkbI9QvAifsg0oZkDB5Jli/Jf6YN2wSZnf9e4dSTAeIsQv2VoIT9o+FBbfnobHcyxzJioSN7GnnAAZsBsxyhmXcRB6DMxcBexgBA8mpxPoREzeicdqgGTvPBUfu8JtAlpD7JOnHNOLFMjtJ+ruHCIokQPvmVCo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CLf/pK7d9oMvOjwYbdJH+hwjDTDF0XtvxJD7Wwz3C5U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tHcIuDvbT7Eyi+CHoOEEVbHHrNL8YBtLvOxAYBuuF56+7MoLSxSiM7X/tnnJnW9lv0qO//MxAVaw7wDlWUtHfm+eBuxy3tBlC4BQTZyw1v2DhMOtoZyAnDvzi5aa+i/9lgcqqCwYgwAra4JPgZMDtyUhgpEK+1fzXiIGGdEHBNe3ZyE/XVqZx8kzOk2+kHcrq6k0EloOHGsRJJsD0n1VgCJJTIhsKwDp6dZu8/fHfe2A3VqeYpFlcV9QN3iIlxg9qdRPc7J4GAjfVhej0qDNHfi53WJsKAxJ3uJw0oc6O9umcrKExJHK5VuDU1fY0tn8vg/MolIqBq0s86ExtorhcYW8l4bB2t6OwTKA3sclksWsg+UsUxMP7o+0vBvPYcRZlvbZrWZ/tu3er0ZB3p7T5t3P19CaUG9x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CLotkSmGQe8qVqCmHvXYA+gWXReAQJeio4YdFfVmYlE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bWzBS1nRajVaxUv8+tA3iVZyRTDlielxo2Hjfm5iUwm2dvrIw5KoHFCXNBrqF96uCmHh3f0Fm97rZsFe7G+dMtcBNuanm2bIw2gZfwBM8i2m3/iuhuT0cMpKu6IME4awEUf8bxVEPDKqOK8RQfEaAFb54IK+3OmP9rE0aFwSLvzpwlgtvd6TwsEhf3KUBVUdIcYIk7J5gktTUZRoQqBRMmpYjgBv/ioECSJg8M2Ki9zOnDWFTEiUEaVih0M7OxUHRT4x6EWqJ8V+tRNhPqC6g412vFE91cCqpctTkpPAS1w/nA1Z8imwvou4UGfuWVeKNItRJjfFQW/gS3DHuTiG0mRaw6/+ah9go5+0OejZtiX6ziZLTW0zPcP1qCjstHZ2PdVnKfZdt5iWEPOtNSC0gpTqn1HCQPrm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CNSoDtxPFGp3mVG7zAhjTEOBpUcHtoXaPd7BA2pqzXo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Qwq+LVCUOT/kZb/p8sdbb08QOeaBQ9QJOBLYqrqYCyDphBsAbGIC4o1XBn6+BY/s3tKH6/Xfw1cYr8Rsbu+2JVD9KtcZ0d+eduZPstDof9EBjELzlU2V6p1tRdYxUOQmS1lsErMJAUBtPEScEeSXAnM1caLzRccvKoC690gtvsawANIsqTeWCrF0wzrwkjIqZyG00DNr3ophSQVBIDyscrAIh+AZUuhud++G1koQNatMXOFZwb8AgjkV0Dr+1qUCSHSfDJK7aXzi5D0DfrmgVMu40IuJgcCs++OAyf9qo7A4QqJpo1hz/3yvO0vgzo6AQ27xA48FlCaCxo9kY263EZmk3EdjoDspKvTjQ/rJ+XrALmLfpXOwhDF5I5a4WCpiesaSZpBCsYYFTi+IwyG/9HCgz0+xFp4/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CObg5NAgrph/cWZpivfhwty9pUFx7Z3atwpspl1P8jY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4GGEouKB3KPfPYU3Fjx9SUr9XFmFJ2mbXHkE3mtcdEpwE7eLoG6lirc/VHRC95CKzDTwXeYNqdZMIJ81tNzFbAagSDaV7/oMesz+09/ieeLSmXXF3aOVBCDeVDnKNmS/yCACrp6ejPy12b21RfOQNxtSDIgkU+HOfuVv/Mz7i3p0l0RB5FNCZmZVdsAhB7yAIu5G+4kafBku+XNJVUhChX/IltEH+JPF/FaXzRSYcSYi0jFXnDvz/Ld4wezNRbfijbEdkRW/HWHCle7cS2n7FJU/sINqujIhOztve7G7ue070/iCvcbfSS5UAvH6hRLijsxk/oENgsl7fSxxzB4NEZsF/vlcxMdFwpqM0I9kXg2npz6Xdp5S9Gs0vNyy55g1WA/zM2fo55tN4Kc1MGJPN/QO0V97ii6H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "COpm78jvqYpVy3iZKOQZcJETkplhU1NF51aiwUZMYiA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+NGh5aiMbXgr0d2mkufUOnGR/khwimh7jePbzef6aZHkex/OSRtrkhC0fCGLrvGyeaymhCE58hdZgvV2XLvLbrxvxi5n2OMqwKwXDyXztDEf2N5KQZa//PH9Rpl3kEJ/gyJS15m561wqfN8HCfeLRc72WhDE1YAy7rhj27YJoym/3pRwuR2AeOZ6dswNjQHx33am5B4u0uj7Yz6u8MrRfODyJAxSLM064zz0IxQxMGFt4f5Mz/uiqA21/S9JmnMN7zkdjG030e1mut1wx2fPQeRlYPBsoL//yq/Nw4ym1lcfeFQqC2vlc8GVJZxFYRiKLAnaDZvmekdrFXvRRAoBx/SJXZ6QaiF+aECkz2cBlEg6igo5WVsAgugvuM5lg661hPbg/urzHiyreTqTs7f5UXkUM3g3AFFp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "COvmbSFnabTfumuISv7WaFf2dAmQpMVdkUcPst3DZVo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KnEAHhYlPkGGm2CJ+ddQa7sk57N9i/Iz14OS5ROM3jlFIZUU7a06/unZD9GSNTsvq1KUb/o8dUCJ+gS2oFmVGkaCf7h1kAdz1soX9xo4P+N22uIS/Yt84U6l2+aov0hMTeo9Z8qOJrttbz5YWAjDbs+DlD+Py/9xJsg8VaXKWHdueGzH4t5sdDiApe17z161cfLy9x0ZOhUZyLNi6vbTwjZYuYhi+QElOrDTKk/xc6bwrrZMk7CXgTn9TNOOsT9+SKdtQJIDcX2RJvAoCAJXJxucysFeJugne+SCiXETSnxKB0Y/ayZBWnzDqX+v9iLZLRJ7K8Rps4zX1QJTWFiOMqK8SoUN5krm2jGVGuBcQa0mFA5VWGbKIVAFPN3aHaBzaNJaprUNHM6ErcjsteSIAFaFUgD11ET9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CS65OeCMjTNYeabeXhBgF/rt5gVMjijyHsDe8RI51Gk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ip33rlbXbO38nr16fhmKyAbhqGKhwQsjktWCeQRgLMN235lHQzlHDnGAQQJWaXfrOazsFgDIG7e6Zms/1cylNe7yX58lWODeX2A0wQJd7uDBc6dZWvdi29r1o9WRRdl3of8xJNHeZW+P+y/W5qogdG/Lil7+Qcim+3CIqU/uZugLCrKiR0Nxwd2ImEJyuYnqpuzg7wxrzjWPVYVQoQHuIZUT0LNQGLKFWDlUXaVAwPugWvvmj62bOjlUJBhASNMebEM95SO+aqzycQ0yap8rZ5N415LfYCn2GdUJbEIqPKOUY0CL9n0AsREMV/vzuoPP8hS+lXrUz29p98SZiJCkERkXnujuS4Ifgjfdk18sLAmmUpEmUHJ6SpEL7F2tTUiZf9B6EkEsWkw8JRQ0bndbo5oQLteOQ7N3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CSQe3iS0dI5MA5D8o3i6ctF3hyYoLqrmeIWRJLHYZow", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fLxqxEy5620peAyfsg7Crrj84XY92NTKDMgwa3hOpIng6pqwsYeFhUm9P1sYGeRYp5I7X9ySdke1e6AJ1D3uk+YSB3Nosz45mawXQceUtrjBSA8aRCS4/ewsZiQ9SJW6LCDwcNZJFOzJxMEVZSwRRpiQBxetFFX0R39H4FNLR9ApmCgM9gl4zWmPCk2fhgmoFDmGSWghh2YetPmcvuDMKOQdyuY4izvgCxafvTXJ/bCbzr3Et03qr0IWBOhUW+jmPTJuy78I8wWOgc3XvTthVp9Bjlnw7oTMbnl7v2c1VUCojtO8zoww0coAHq/31sThmNwuKNmTlBvBTdal1fAu2zMVcDTX/H7Oh6E6skYttH8riKeyCzw2Ff7wJMPIyBYABRHxSltr7OdmGEbMPHFC+Zj3kF/TKZre", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CTo0Q1e9OXEfz86Jlh+2pcF2yPWhXJRlPQJEYxfC5eM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9VuxOK+jEkYeyMzxylW+PgE/JRQuCU9V/JC4xon7eJjvArVCjes1fkCY1YUPoKnkEJf9Z9589rhYfds4Gw6nZ6KFaOiirc1YkU5E0DczrbbJgcNDcD5IkwFZXiSF4k+1bek1CkphXDdPTltnE5eusSb6vUTMDe821GI0pFq16xFHkhZwGLYv1WAGlik3uIkVy/t2GTpXt43Nug7RVL7LLECZAjFUs8FgfPXpEwPdiBtLk1p82awNPwsxMKnZ7jam6oNb9kMANyfrUoWuRqKKsOHYzjvVwd1PIVYYj1yhmG2SrZ0awsPw3zYOR9ElAiyBy74r/PNJYZwmNHcHi0Bl+qJmnb/tQ+DitkHv/XkyXl4NgtI+Yb8QujD4uE3C8bv2U+UDnMv3pDEZMYcBgueMOmWnumtuPsoU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CWRDDqghPbIiu9kZgri6enLG3ORgmyqv7/tT5vxe+08", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0IXL6up42TeKAEnRil8L58YBjhHaluLP6tvESCKfScUfBuXGW4lYGJ7Sju2/XE5Zvyn9lA0r8ASO0FjCxcT+T3ZiM+cFvselYLtJYmPciiaYZVb4maENlyfeIwrg5C4yJ0YpVxgpq1ie8a1FNbm2e9ujli9woP/lHaffxhx195hph4CdBPOnma+tl0n+O+Ql/3/VBMhTDxVb31nbyE6pfTH6ktYmgIBi7nYW/EZ5VIIG2QOcDz823enNle8x5KVqy+XlNVDV/Mzw1rOFymQvWBTsB4d0g3pV9t0mjRn9yjqCwh5mo7BVQZUH76fVC1JNLzFE23nnj9iIw+zcJfyN5f6DlWkDjrQ1rZd01Wl9PTBqavDlcK3Acu4jgBW16lKeM6dNYKGKTKEZjVSSpX7hjUJo7hqtoMoP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CWSio0IjYO/4Avut3UkdbqIGZ5Detja12QQ1TH0yvDg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f3/8AaTUO0HTKjw/gnx6heAPtDuAnB4Ft+/0CivyRv7sM6VL5B3yOJQ50DfjM7N5N3XdQX7wCx9998q+9i6zLcr+658Csmu79nhrawEVFBeiGGFb5rBn0LGsc5seWHHzU1D2hVzo/Th8yPYzciHeVLr68nhotw0Xiaabd5mw/ekYY+CB2KyakHfuyo9ZEaGncfQIlu6lf0okJVZ3qmk85tqEt4cm+J7neLZEOMkMcnGal3EWf96+fL0qSz9vmR2sfoFRHHlY2WehvVPsnLM3ncT9/GmcAWAuDKl5LZU7Pn8OsyZ1UVK419whSWx8S9HgbmDPIQ7bCMEp4zuSSnSTW8fk/pmEQY2DZ49zhu1pXTkxXOGXIJ4xDxm1lfgEK55/ck11hZSXnRf/CJ9F+7wuyNDnkLWimLvu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CWWMWdOYYQp5f5g/5bHB5S2T+aW4XxAMrcRRj0CBKYg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "H5nEIiRIu4NpLrjj043qjmFOubacFHgj3MZzBVyNWWQLD/Qy+7YTuYRbnEAxa3FaNqQ2G2/Y1IuBh49bvmXvsGKp6E6uhRGyf9GcRn38Gp8xm/RnOHFMEIQuuiAPBoONJ/C4RpUm+9pGE1sC/HDK1QufWbpwFe/VK5QaQqGSAtAq9fs4PJ4WAxxdROnXxyMy0K/Az0zf6kHhNcStKpDUq0pHyiNIHhaDnu+D/Ek3yAG8alY3IFgC1rclGrLoHjBc02EPHr60P3mzF1A0Yr6/mkqJTXECjE/gUVgIBPBCTE2sJhVfbq4AMkR9G+f33CbzCH1l39AdS5yNSKDMZZnSDXWTJE4Lu5GMc4fN72SZWMzz+u2K121g/q6Pi1Dzr+TibMH3goQOrVP4r0og8qQAyc5D51Hm4d2N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CYBvrUCjlBHI75Tpolq8UuMif/gd1Axq7Fydnhn6u8k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zcSpK9/0KAurFcVbC8Ls1g+qhMJ99TystqR8lXfqj/s82GDVsx6pRX1DYTWTxLWZ09PUeU+vCuHM8mWz3W8MoIDBsjbz/Sdr/iy7MoNh+rCmJM8CJo0smKjAvt6SFW7xV5x/c5//kpix4+6OVPC8Wuexk/Ukq0kPQ/rIAuLRpuH7ZcbaVAC8n8A4N7VVDy+lVzZ7f09NdsL2CNEIfBnP8Sm2k+i4FDMPDVSSqfBnPZIDM6CtRXPbTlom87KqssifldlMwPUQkRVDMiUGqD/zGfdxJf40VKAcE/kgsTt2v7Lb4B7p1Tur/d8CV3AEWo+kq7hQmhgJPp/6nUcw3klf/dA9ClNfVAh6EUK6Fxv8erAH7BiUllksbTSwI69BF/6Pu9e0VM00sFGhVCK/dtUY0KXdYs6P7GpQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CYYkcwsNWCCkHRQXRTxuJ00kuzk+Lip8LJk2LfIpRj0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fSoDj67pIUQQAtLbTeoipXPETZd958r5oojRyjucMRX5ef22WTrzpLFmtP7D7WZfJyNP+GEQjHtcTFd1a239uBmBuXyPG51DlCXaXi0t0zaIjHhsevr6gIqzuCfFwyRjG1boxxZK25X7+KbHrdqgwEDEqj4PJwf3cJg2I81VXRB39CLbvM6iHlkVgz/Tw07Z8xa6zxiMYudq1y/h0Y85411U+3f9wm5k1eOBi8L4iCZ6MqU1ec5XVfu9PrDNwPyRVCbYjqoZGntDpouDsR8N4d0lZUH2EjQpDb0QS6fbGD2Klaghf8ol4x5GuQ3zYLUvksch2peSi9q/Ii/e/BUhDLQqLlpBOUIqfpwVdAa7nYQeauFYpRTAMvNVjiT4iqHIQzLJDvY5FxbpP7tboQd3v940B0a9/wHG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CaUNSzPS/hiK6ACE0rmmVpBJoVLgkmGS86yqWovmlJw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GYEt3FrS89Ja4D6JclQIVo+rmV0QVpsoXISH/kRD/DYYixUA0M41x3OJka/cXYoKf0casIgTh4OSz02egBDXMfFiFFRfzRBYBlMhQ+SobDyBW4FGdcXL79sR7C5srMW1Jp2rZOrK1wXRN3EI76giJe0uQAWOMV3BnYbtdR6PeMZB31yqV9UQQA7p5ied8PCnTT7GDhunr+std1HlC5y0BDLCSs4Ro56vMlP4T3LRmm2J4RACTRw3Asvetq2JBYsfyL567jnAmAaVGh1uNo680weLNTB4EIv1gak5rtcnp15RaKjj7K81Bcq13D4A8mGSgxPHw01kWbwdnl2+ospoTNrvLN/XbHJ8g7HqE1LxZ9zdZqDl02FIg6xpEGEnaUqX8i+E61n5/t9ZQujnyFO0iAikiyc/kVzR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Cao+bKJ1GWTMWo/3MVcFIQDGKuYKAVnc+szrjQzdmzA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CUiE3T4W2nNigYSd9s+4hGXSCpanoLdoCqr6RGXxqrErJWPNZ7qL7cLtEIBzS76anXbATpiLJAl5fAc85GOECgwVvXvwbgE3CJKo9AT4Rnq0926WSMVgjGxfOefg9w2jsuBN9AQH8HSNn916zGZxhl7TaU5BACWYpTJijMoadNpefc6YygutpDo3Y0P1Ry8rZsRb30P7cBXQ7TKs3nZrL9gKJN7EHWctg7uCnmdPgoFDUphW76yP7HM7bWd8YuBsIf/3g9v/wt2/MQ+6iRCHm5b1UODZNWoIQ+l2eh41A77Ft4x6kV2Q66P1aGeQqvnI5lH68P6zIAbmi9NPpe3skkob+raBJ6ijjIUn0u0pNht/svci5QNCROCS3+dE0xI5VIDaTQ17XKh8tFiajgptx+aypzYksg5w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CcDfYVE+1Nw5asNx32mEAMIMUkl14JdWwx5+A7HikdE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iqyfjumhd6uAJBAcp18VeQRKpOeF/psMoULHJ59Tk1LoNu4p3Sy+kibvEndo16uvsjnONmiBD1BhLVufZ5KK4aglpvOzYhrirhIhDawTDqBHdxVTE0dMQN2J6C/0N6vSyUaFi2uuAgEb+BCPkdP5LulT8zr5l8mS+ZcO0HROIue94EFU71nQfZgyzW3gDBFodYSrPtRiOQ5YKFFtWZNSPVOri9aEHCdcoXVNaY+gJ53T5OkAGcBi33knGLyHpu1uybs89EwurSGGe8gTl5eMaIzvyzrGRXUqmm7vFug7YSuJsFkQqrEuGFH8dG+y8m0xhj669F196Euq6flCp685b9pTcJeb35TVbHxjG556E2SnLo1ZC1JHoKUarathxi3QeJgAskppKEwo0YAwuNFTYe4RZk22zaaD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CdW8z0qdlRQVM3nNYdwVT7e9XchZJgHdbOxB9d9v+CE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rA6HiYkV0cMUtu4W+s4Zyy/Z4HJIreQlvDmcdLt5/nTj2peIS6xft2yk7EkdzTnSG2vo/velCEIkk2mwhckXP3Nc5lV8zdOW0c4s0DYraLBJcdhe4jYKgjdsSjbLALpV/KlHvBhBpFhNkaD6ayvq2hBCl/xXYqQDx7Z1qg+pzdhfpCqVRgiflJZ8HI7WWim2APn3sin2bvMbvmlKnuYZos+V0P7RiWN1wBa5DN/LyhFDIqe19fWeqnYXJp5vi2XsVGnUzvPN0zDH7c0H7GcQr8hyR7myr1hfZP7r+diFWUnyjOYdHdnWZW0VpQ7cbQ9+P4C2WRzUQy+nvRN4bo4ZDJoCTX6iCjX48MKgt4jN74R8lVq3Rp12odTRB7S9tYe7t6wH52DnPSr0RFn7ZFjS3D6mPNU4oiC5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Cdt6BrZlc9QQVQZ0sWU7gQJLHa0f96ryD2orCMra7Qs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HeD7GCBpaK8h7PDSVEnTuztN0DJJWlpj8Zd9KDh7rgi0viSExzfdDuSY0FfIA5MQCtCia+et6L0pnxCOV8MDlDfAW/Kv3eO1r2EXTYGNMYEMLRZat/dKODclidb7wcNVdgHI4vCKAzPog0ReIdCAtJG8Xl2C/fFhFcFVJkwj/62Hy4f1MGBfQ6dL4kd07hZkDwoD1HUIZoDAlXkOHNt68rNP5IhAMxJIBLF6ZOYJbltAREZ621nq7QTpeW4NbaC46wG4qZu1k0iVk8ZxAs3IIV3An1AtzMUeXYs30o0z9Q7/GmarYeiuRtfngtYYegZZ7V/B4aMU2QfTQlZN1EW/poD06f6Fve64FAQq2iOJwUoqLobz8yaq0q89eFJXnteLXBA2YD23O34HKQhV04j1+GM9nsgI5yea", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Cf9TfdSDIfZ98Uq7bPgdew3/XO6Bk5tk57CVV69cuPM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Tohz+uV+wx/vfuVexSj9N3Ty86P4BjReMbLP9KAHyQU5ygvLhP+kd4Da9KLhP0egVV+6VdHidmLQ/6oe8wOmKLXEujVMDE2Fn+F9Bel7rUyvaE8GQzJsei7E1XbUsxIVEE/nrHTR7XVusosTMi13sM4+xg1BE0QYNpFqxHeNvQK5Rd+lU6r0MSoC8z6moz4Z2WXTl9DermFisU1unMc7T9o6DgkcdoDInhLwGxbFXMh7MbmQhUYLgsZPiHEUm8vU1Smxb8eX4GxDFEdtTD2V1FS28+8ooBmZgUss5QjyQRqrlUfn6anjmNZQDrGKlfYRhSg/VO5oa5HfYf3lStqQVGk3GLTPdwQ82ji0PcC4P/jNkVL6FXrawU5FSYU44+ge3oLCAlZP3WEMFXML19cKymcEft4Oxx+P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CfdewX9OuG0Cij4m1dkWEBjpjb/GdZe0iYDxY1816gk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "64Y3CtKmaPG/7/TK66jfZ4geVAl89TpFEKHJjjeiWUnMkLfb0QqiKw05EA8az8KRjIyFk+8RCTc0alvQ7GjNwqBsBScOJmIQwFClSCqPS+dCS/BPCxDOeBbI7GsrlyGaegWcyzoRmcWcgVhOJo+zZQADenFsTBA2HdqShan/+ZuQ1bHfrUnkb4NWpf3TjqBCC1V8cnNj+flfTQEqmyBe8oOXdEHcV9NT6C7vi96qegeERlMG9kdCTVxBeBKD26i+N8pBWr6FHJSZkStK3WA/PX7nF8MKA2uWkPG3gdVosCUDiKP7VT8WwOBCyiKYbJgj3js0veU/LwSW0TP14UKBMwS9QQlP4W9OFNj2aO0QMB3NWnm7J2vF+CA1JEnoClFPGSD/oYql0BqKck7A338RKW+ttwEAoaPP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CgealvcHdDGafnM6/wHypxtlh5f4vJa1HGi9iKqaJMo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tdbzc+cX8qa8Ei8c4y+HJBdFTklZIr1aWD9ll74YC0Zfs//izcm7TRtXXoJpSz93l3yqzs78DKvtjZguk3A3AjcO3KhG/DVg88toc7YciRFA/1mOwN5aIn+j2FjjzlWnXKSoamdvXkjz2Jrv8g5C5QHuxzrx8GvpnWigHdC1KMrmv0C54Hl+qBPw/J68g2j7YmbQWNe/5JutKp7kWILDvoBifm8/0A7bmWGmrAXRfH3FZaLRw1vbG0ZW9oyZkdlooZPzccpcs7oz85/eqPt2/9I168CDgamUCK8HtG2kX+C+h+0Ont8nI+tv0x10lRVv+RDDNulYBAH21uZNvXuFmzJaiMdvKvzhOkLJE1JJUkYq+NT1NWZfm1yuLPXTJZFxoaNytUBJVr+0CdNDXaFN4qF1IBVCxkM/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CimfkyPym2Kl1Sh+2YXrFjf5u8lg3i6XvOeDZSfT77k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uIq+BVJX6/P0fsF/eOUlvPJHnk2h9ImTEKymPwdWGxDwtTGQksZufBAKc4JnAz/mta3K0QmT2vz/obcQfK2yAIPNrg/mV0wmsHB3FFe54dex8+kTiQad08D5o2Z22NPTSqzYJQZJuiDYvuG1uHLYfvc2eWxXuxGtNP6sgLkubOliZuDmduPhGNKbWDLvHZgJruf8pUNDPS9FiuEKiT5isOulQratnQC1vJVeYctIBqbhmR1eCcdmo7+U3vVZiLQ9+FFKI3dmaUmOLcwMPJBTIFYPigSQfTWcb815RkS1pWFpKulFKMhgAGBwm1C0m9wO1pqR0B9gNx9qg0Ig3xX3pmLRzyew54+BvT7a9zLAfmKeS6gY8jU8vLYE94QHvAK9MGaNP9gdPuuUlio1MMZ7vqgD+KDYh3eN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Cj9i9WKPtV0Bzvtaj390hc7IJ5UEnRYTbCKd2K+EpEo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2NS7d3JWVjnUD0XMGOIjFWjREfd6f94nFQq4WsDMtTlz/9ozYUdGRE21QzzDQzSAybpGbY2uvvIt5ervzy0Ehl1jdFtjh0gtrTdxWVkajjx6UHHHcSVJV4AttwSOib7bIMa5QeXOV9vNnPw6/9TZ83PtefPybneQwlk0OkSSEvcF+zmExbZy1IQXkBJooNDnRnEHWTRCVn6nwo9qQqvhwpVBbAA6iOrKgynW5lzOY2zRafBXfTgYKQuY0ziDM5SRhGTsnUBAC4ApsUq2SluXCfmz8qTporyQ2qZEN3NeaWPEzmzFi3+VB562vVA2l47h/qsyn5Rd1Uq6//0RJr5n+qqWRbSEUFL/mzTuFVy741MKqwjGbk4RULBwI76KVwOUTotMNqJjamJPwIzsiEwoARtfS7pC/asX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ck8BlmFXEpGSMaDUi/OcwKb8x0KwLtimupl3708RmNI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KfAVEiaCJipDCYnf4WZN/eJa/umGTplloB32riVhq/h9p+RoqCWi0UTlcvpAiVOPla0GFpM+oUZ3j7IFD0vNL3XINC9jYUpvxTH0flr1erc11LxuhzzxdYbP8cftLegZ5LIFyWMOIrSoIwznem5K69707vJB7nfvlywqehTh9w5I6qnk3ldYibShCWBu8cRTqHZ9Na0Vk+FYCMEiYeAp0IUxbfCOQvZBSI/iH+rYli5QDwPo4k0SxysI2IyzzuKZ8lY3zEbwAbUOVclu3KQ/Lwku7CbuKJqqFcoa79Cu1xxcvWJy+ydWJ48FlvI3mMpXn0gnKMbM6IxLPV4vYrjsWPgbIr4BAxf7kXdhRcD7MrW3L9+18knPvNIC/uRbwazurKXeT5BYW56dd82ox1l7Dmh51RJfxwwE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CkDGiAC72tJz+qu+oXMUqsqqs54T933C8f2gCz7+Cs8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VCejTSmXNz0uFwtJ8KRhvai6hSyhReJHjJuQb+C5ukG8SxMoIMgzT4SCeTEQmAb5Jg7n5O2yHv5mgcpMsMBSL84QyjvIPQV+blycpDDUhT+Vk0SvscGzU/k6eLW6XAvx1HdUEUb+YLxNdS7C2JRnM1HAch4wM/OvUOOoAGCc+unULtgLVA/El3Ju3NHTzvXTEi13MwV9Gy2j8iY6NE0Rxc1zDu1LPMeMoB2O08sotCxPVUaAPnWYY8SR7WpqminKKQ3h0z037quTKcr8nN0/Ea7NgS10sGT0VQcxNtKN/PR47bJ5JIlo35k4QX9lqSAmqdVTxI+uqudeankllUJzOHLhA6J+hj56Gi7iBxA8Fxua13SUzZdaihM01D+pOkrW4d9PKk5ENVH/pb7DR6HdAflBewLRwr1I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CkcNEO4wAG6UzclIMQaAabDcqtH/q2+feGpidHtB5Bk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yKPNzX7WAdS4Exc+HFWUoBSMdoZQjZz8SmNlq1pAU/6aFuZBuKD00Bkke+Ahjg3+O6LTKuVi4CLVgWQu1pd4bdARIwEhJX/ZpEHvRZBJDkDwRr/eXKldDHiBaOdMQKuwSHUN6N61VLlztVviGdcYk2pTOoHZT3lXWAVDzbmu77cwvdNwMnclgYkz4JeNjzE8p+6n13wc6nINb8Kds38SsBcKDtr/opwaU4KMSGhFuoIjIwhiKui3/r1ma+dOJBuLxiVdatzxumwWvNZd4ReZIFwSf2XbibrktHLT1Vwn99ZVFSJKX9oOqLmuaJ4kaNevorZBM8qzK/WJrLT/sU9ApnocAfJYtA1yripM0q5GHXzB7JsNIsyWu4qdt1agO3xrSR5P5NWO28NwzbwqfVrqEkZzGVBNbUte", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CkpEEX5hZ4JiGhJIAaUQTw1je9+nM3l1EnwU5Pz9on4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6D2XDakatsJfZgc7BRD0yAsjrh3GTeOZTG6z0kgq+/aswJHhkiTyHuVakzjI46nC21dUR8tf9Tjk+Sg9q+K2aOIno+txR2D4ZlhPHpNY4ACuzRVtK5PAeED4QLiCBopEzmvhvizeNG0JkNkg3oapClDFu6hC7u371hvezUf+fCOtIBnreQNdvlPvHO9gb1LwPQLrkI/H8qOiMH2ua7roMWYZAPhhRsH15B1YsjlfYhH48a+lYXsNjmrU5wwh2GBUOiAqDqxO1QsRKgn2C1PCw9jp0VXo9peJegjRZQbrUrGGgtcgoOOeBc1G7zdbV5b9oxc/n6RJvQXGlR/6ilvM4mQnnzXHjyF8LKY759llLJQ2T1zjut7nrvfbHDwHfadhZ12TPe2FHbbTaO1qu+jeiXJEziUMsj55", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Cly18Mfx4/H3iWwyyIBiBQiYvrxbaU2gypFmKNtv3fQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qYitDvN9R3uXC3Ymrosu8hSzU/kmyZWIoIZ3VkzUoWV6LFshgQq5wiFf2Q0eUT6GXSNYKngxljmf5B6LC8F+krTk4iz2mgurG/5eJ3nZhMwQZJ56Al3yGvsBn3Z6e4Mb9EGd/qh4F+ZrTwVDqdLUbINi/92JVVmapVx/k37QVCIz4ZaDMBeaps3865m1gtwDtnVHtT3toCmeHXUYj5MGXPYcdUBAEA1LR1FosiOHoej3l0E+ZOf8vWQUfkCZvwb0W9mG0mEgTEx4kB0ZkT5zddww+PB6HO5r7b093FrgM8SCSHyqRUzyeiSQVOSF14oMOvkoKl+H0AV8oNVqZcPB4lniGey/ltyrwCwV0+Pwdnj+90di5rbNpOYMhAr5OkPe8mXIfwaP0wCYXxnImLDd36SzdymOlb+U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CmLYX4+vgMz63bDrowQnKn1rzlIqF3Ch8rfPH7Oxwz8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IDWpM8i7+3fTK2Jd4QJRbX4Ke3sDW38YDECHB0G6Cw/quwDWgKEHpYg1MQmbRJW3bScd83cDolCRqUxLS9bLYOhxUbg/KiBYx24IAlVaDAzwyuSwtS2tKmoZbFmnrk4R1lmOoXrPFNQHtWExjtgnNuWiryZZpm0+wokfAUL0UboT7606pRvUn2P7AV4Rt24dMFCFK5dHBfd4FBynj5JyX4qdLAL0bpfRHGkwMnacCWdL/xj8K0VtnezwQnlZHzX1GPLf7LWMbGG0OYvLrEf3Ffyb/zKCRpkem1gw7P8PwdrXTm5b4/tD5CE+5mgKVE2TywUWR79aIf23A8sx5v+xJuKzHwEfCV3U8HThIXgYLAEzwu5nBc86h7hCaB/QV67GjHtDJ7d6VW5m3jxApgFR5EsbquoEveNf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CnHZp5va6SfqTG/RKR72g7rhLZgdQGU9XA1yClKVKew", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ftV3aApwiMQKeOaDKV2lxMUzj5JDOaCQlSsMSV8PrcXwqhW7R0A3SO1G78YBvaQkdPQWahM6GfdMXEnGnkl0YzgzSVXH88JUrmV0QsTGCb/nN/M0XKoLJxa5AV5PbXeH4o5xpSLa/owjOFSSsCaASqsTM+3CEpvaTuxXxXRgMTkEemTEcjFv+GOIIJfHIGdbVKmu0DuZgA6/zMMrOqcZoXORudGvpHDF2sE/IkV3xdbnDAwBOkhipt8h87vSVhvQpe5YM7oKQnrxIaohlTISBVPFNpC7vUHn2aCPYhPJ2YyrgZ4AomqrnjUPWwsyxdtawe6Z2bAupIkmbJgh662nLZLfH8p89Xlm8fEPOx1I+UY3UCJlsLSEAA3zYvoKlg/PWPvW/EkjqkHFSiOEWtmpM4FCekQTUPTG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CqzZFO4ip4iQiAZ4Zk/3QkZ+3KVvIPkEToQjpw+UwdQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nrRcsKS+XovlwQKxJf5WsZmiGnDiYS3sh1tay3Q2wfe5boGFmanEHnY7B89cwGAXrvqt4tAcyLvOV43SPEknZI+DQLMYBKJ3ladC4kOHR7FMUibktwvfvbrMijkZRcnka3WQr+vB32J2zjSW5xsQRbxeVH45UpEg/4ldjcMj8uM7Voh8ILinRWxTDmvdnoG/sQmHjN9s2pnvcAqYXVHIte/CAN0bz4F4/ZFC1f2wk5MbP41dYiQcUefYsUIgX8cX0EdxJDR1FF1VCW08fRQM3HaXQ5MCGCu8JZRbWxwozv2O/kQrpK5oWa6gDUWYyh9Bwhp+tyKKUd9PFHWogbbU6DpMV2/36uiHka5f9AFriF+1Lup9PqCo7TqeqkY4LXLP+safsPHGcDKG92PhQisIOsWOOSMsfo4j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Cr7mO8bkZogbsVSjEzOHlu5WELAV/szNUCFgFmlU7fI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M96XQOHHxEH07CTa6rNeNdzIMEWx1Q5Pvda44ux4L3PXEp0KWemoaZAYiLoympy4eqCLTGRcrc1G14ZOh94kmROeWcDP0yaJ1SM2RBmjPfQ6URis3+9QJ7cwV3qkmY3SU7hulM4DreYruc0yV00SDzfm+jK7Cch54eJorDOIluGiX4n20H/oPlqFAz6bY75JLLNSmeHRq2FN4i3Ep/WetaHjgkiDJ10kbpiiHj+wpZ42EPEHNyX600rMTf3Tgf2UApgjxLQn+e99f1fUcpHRBnqI+JHN7U67YxLRibA9zJs7XI8ax7CB7OGnZUYYdxSj4yJRY3qCRbXfc0qUqv/tjk0sd4/4U2bsi4QKK8LtB/3IM9vOfi/RH3iVaTRGeH8MxMKCabGa4e6+s3Yayr6CK4f+lfyxdkGQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CrKhOhkqJqqUzZk74O1XypH3bza14hWwMq2xcBhsdjs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kR0QKX5X4EAhkYWYdorC3PMWv1E0XvmqeJyS3GWX8V4ijin4UPfvsNyzKuRX/5dHnEzgN307UvbZSLyBmHmotkOcUpTTJHBuRptawUXjBQxnAA7ysGGkUcQ+il2SX6Q9Mq+aZRyw323kIXltzDKPvWQHWX9x8TAt4rGyakF+BIH+d9irBncwfJmKBsptoC0BpBAonv5/JgWAu5krkaz/AuUhdQOOY8ljiauPw9I3+CTNnbOyBjL1F3Huczq3QL+3q1mMTOvto6nehVWxTP79Inb3Y0wEO6+xuKJxTaApEF5PE/q7H7GFHcVgFDTbXfAT/osMM0lpkLZprBJ74pfdga1cN23+Mf01D/W1n7XcT5tPAqfRonHyJhcDHDJr2lKsxnNcnBhtAWKixrPqN34MiQ82gtE3LijK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CrrhK7EG3CiP12+a+sjw0Ohjz7jmplc8GHzQl6hYdLw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BJld6ccMrbeWiOjxN81lZV+Y6J3tjntWICF2I/PaVA0vJxzpjJma12W+ZKJBZJECk0JDWyk/49NGNYr/yYlZlZgMGss8IwWY6hH2xUhPiEy8DtHfkWkoqE+nyPsvQeuyIAZhHkXpDLes53lSJQwSXeIcudEdWQnvCLfQFArg8i28C+NqIhEFkqsUy0/YpCr1TNpC4DFZM18moa/slmgErkUXrrUf+yYG3loGep9n8iSJxCdvVNs5LQWMN1oyS2McmM90ZAATd4AAvL/9i3EmKPbg73nhzSg0iyygoZh5eLpG6U7HihD0Xzf17C1+YqYfztEDDTIJCI/E8kWNDFRlMAVz8DFXUvjwlPYd/E5ud2RIGYL9tLJ3Dd0FKk84Kt/rjqzj7FGgAtyYNeSq48SF/RTN2Fcswew9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CsuF7bsb79RPAsMNYK55hZsZLoWdn/Cd2CkLGMMm39o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Gzi/MUn1VpBZolVpYk7avIOuh9ijwPK9sAEdreHcw+4+tU9fUm/oBRg1BwGme+ln1idDmqWhlLb7qcH11MQDFYlW6xrTAcAQcDyfSKl4pmUwX7LUucZPefTWBwpopTlqdRfrnOWINDVII9X46YFSqZRocD44t+dvz+28cZTxtmnqrj0QmbFUy4RkokTjQfUSYqYDBBvjn3GjRKZzxv5YEu6PDQxG05at8GxqFEKI/orvT4fe9zWrh2u6GUAruBph6kanCREEfDLettJcjzpzuJMFnDhDm6rG5H2f2u4Vy99c63ZY7K4/dV7uBmw5DzUqplTsYDRAk8jxCLSSt2NttksuI9xinRz2kXJFptKeOO9CPCWzjNhY4e6o8ABqppsBuhmUiop9PT80lRGzc4SrpNAKQNVnC2K0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CtWkdOrads/yJJdp0La0EhvlVkhl+1kWX60DYkYGWfY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BS4IgZQLMFfErWchyHLfSfFGraNBSB3RwbEczQdNdy4I1u523ko5jgcKmlJHcUvQ0ie6YR703IvMCqkLqwWLK/ukRAyPMuWWCbU6NJS7FEuPQlV7PWnGhXsdwYo5e8ctR4aZVoKAvORo33aMn/9dQmjIYFAKcG9QhIhLE/L4dFVE+60lXu2Z3U9EkxbIrbe43YF1fkfFOa783kCA6TAQ8j7OwNNqn1jkGis3gJTf+Mh7Q2bEWsSjDWk3GXvzmwQ793yKj+L28SGfPzhnw4DV12YiY4YB89fHiOosI5/uNLN13p8JLPdAxrpp+RzNhZAWBN5wpa6KOgABUMmdlA7iNOJp19RftTIjbP5zm57r0qsOx5iRihuzVZkyxskyE8lt+CkT0Wh+a2CMXju2GQoz2owoXd+tx8gE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CvIa9EcJvDVCPfrpJ+6MFYKmv9usepsHn39sPIm6xE0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ap4QlDeNAYnb9qX1d3H5hLlPB/hSm8qtCUBMig146H+R2yvjpwAYtdDFbEvB0a0g9dAPOtQ/bVzTWFG20ypM8hU/VOzxGycIMUwr/JsSQPPX7gdJpCI9OkbltZnZa/+SFgHWhWImQst3kAMwuGXokCt4h124viUugPmowEroziPq/SGJG2VgWpMa5W/7AQfllR2w4Z+Ys8EuC+VUPNgzOM3Xm8/GYhzc7eqziBpfYhGnz123+GbEcimCqUEkCLX5uu/5+s0DTzXlCN461As3DBQIajgz9z2Y3yAhadWZkpTevpLqX0jxiiQfaH8F2cGgjnNvnaR76kB3KhmlSPywMeDVyabeSB9qgEnazQAV9NgEE7/cIEVoDoQzjQfjIhRvFqPfta9cD9Yc8/U4X4iNFH70rlxAfjMQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CvapUJiBdQuBaQf/tMC4jjIGvB1EusC4NT3zooPt280", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s0sbmyxqFcg36Vgn9OUeZBTZ0tp9MZ7qMBbJyMmP9uZpOBhCknECB/WWHxA31BOxHFyxhaV9w6a/7uW4Xsch4wMo3UmNPaONZCHCJmqiV+N5ZRc5Fkahisr27ZiG9HUKdqLWjH5zQiJv1mW2ueY9Cc3HyiTOu4i6c8HC2bBA16+DOrjBgQnP1l5sUEU3LovvCCHnw42S3A1pgJxmW4ERtJfYwMqstGxAtDYkDP2wqs6N7G3UYU2cK84JKU79FqEuCxch4pcDfaEmdOlEP/LLnxagM4arUcW+5aED3CZcBdJcchej40yIPrOiTEFZQml2/1A20B4CJ9+lL00tLzjMI9yItPcuq0Op08kpiZmWn7X75IQLRbxrXPxCG7tKKhATOzWQ695rkZiw+KH0/1Ma1yN5Y7Wvq7eR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Cvh0ZjFORKSyMwIzqcRPe/qJ9hsFFyKgfEmC2HOsrN4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M6DizSAt47c8ptlXzEnNBeto40HR1r6mH1Mj+/9CE0EOP/cLHustOQV0rW+6W8XTU8EglljITVLIh9Rp6dtvVHmI5JDTEwreArvKufOKcWIqeKaUFPsGp0PlyQ/zosywVvf2whZCDx1UZg8c5kl+YW/lJgzNeCusUrE6JVz5zALn/HvwLsLLpWL552bzGHCDMIeDRFRsTal3N9v6ugpDSuN/NH0byBePOdQ/F9sbCdFJVErKJ+lhpbX/PgIS4k0r1CYu0UdeA2oPv2sTKgW8JbPpH8NAeT9OQm9h/oeKBwPdsq+YQq6lx/EX+sARroVoghyfxj/wF7q0qyhrLqbp1lPBRyeLHKhpNRazMLN0MznaURnlYwKWfZZZdp2mZ0cNzUysycGCZ7z2ZVbWXGXlJSiH4S+Uwo4G", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Cvt3qzPECe9aWjBTZ+Uwcj+i9AozhYgYBubX8vywOto", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pDbglpOx4yN8WRxzN7g1HRapaWoGaWIZDmeHMsNJ2oIdnUpN8PMrQCTZDDpTxyPKl1rPFc0mlU1VNoKM1vv6lgxnGcSmAY7aXPP8bL08FFxmo01S6JERvEHoV25P78Nzr0NBZGofsVlNz5yXE1wD1KO8tAt/f0uM/uJTX4DkHvLYutk04/bYWcH2ckuepAUivyrqp3nvD+bbaEolXwDqfUq5uX2k+f4tWtZFaZXMG8AK+30+Kk90MZ+0ASY5OpXd1nOjWTukcQDGRjrVgFNeGzxWs7aLRtDj5+SVCxdXdfvmIVG/uv0yD8E8zc1amGXzmuf+i2lT7nDVs2/rkHkl0Wk5Cvfln2kYJKKnYf16RyaUjVrC7rw5Rv7YAoffhnU/rrwjVGuWYY2C4B3IeNlu9lMk+DLzQ7I5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Cwt57YSqbu/hwxUMKl0dgQfDCiGeP15xZQvFTduCvMA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4najUzh1wdaYOqtMo/bpgB52ol62HUBl6AvJ0LvZC+PaJa/MpDbXHa19nVw47fCYTAmIep/FZOWEvtDw0BUcgJqQsZxbLtAzk1SoBAtadT8LtOq+Vt5vMBsUQM/PFFCVrEgFQBQHPkSURCxXkACNkuZ5JCjHoEQmhs4hFXDL3CRwh71UxGmc07H3Me1G8KJJp2YchcripVC2oPFDW6/9rwmTHJOS1MRLuWQgxmSttCLK24X9XxbrhbJbWCMYu+PWVMSEdIJHzEgraLls2rpFykWHB9kAk6vT4Nqq3EeeAONFbRoi3+r+G9kN9GquddTOGEudGWh8lReq2PWVgWMtIMJM9Ae5jIshSOh3L9BSJMPDyTogtYGSZqqcNglofJs6UztQg6V5RK3oekZVnmKMU47OMZ6QFzjG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Cz3aY6KKUYRr3fWak1lkInCQlHGV2f8JhHj2pSNmtik", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "C/Lgmxplwbe/urYOFutSjjQ5ZvWpmCUoMRsbXFLQe6qvh79W8KhCLz1qZxvXIfdhp7pGHG5YnwNMPZ0SBRWp2IAJ+CX8+QFdXnaHvOH3LCkbS8ivKYnlkFlwQ/XGduh6eiVmqepxlcGpYOVUKfNkQFiHTsCLPeY3128iLRLF/kLpXBuyO9JlhfqE+hOShC9SNIephqnOBrRXmSBVuHbfMb3/8OkDK1f3sC4IiynTCjFp0YIJ9iDAhi/rY714bZOKEdDob9ccM/kAGOv7TzEpMGINvvvXfrHTkEIcff21pwZerrS3ioiZRWfDR6rYbTDtn1Gm48dTSCvUO5sTLP1zlTSSz+hTXVxk6+znC549Qe+w5CYkR7/NLgYmyZmBw/BVWkuVquEZTI5M8pimtJZXlZa5Tjb4iUED", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "CzKp5vqv1/kbDlvK2dqvMUR5N3nZ3BpqROjCA+ivLxI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ubk4SHKTh3ZgNFA8NKYw3/QCkSocQpim0+B1uDzXlS/AFzAQZHeA4YjLxp+xon1Otj9aMpoU0MJQKLzUoCBPe1LIeQ46XLwPgdcyWSv5aqaroKWEmiWPeZ3x02J6lY26cf81WLQy0Fzmsh1lM1KmuU8kFxrz7npXw4iiz3ExKBEcguPXmbKh62YNPzsPKUJF8Xo+js+JF990OvjAKKIuLt4KemkhXlB3QWo7YsboSgOnJyFIj55NSf50s+wWRHb/fLH7I5uswum8fgJqiUTPtwtyEQ2Wl1OUQgjrGnSiu1keKJUy83bKTRSDAFk1PkeUQ5iIZVWQNzKGe50w3d/uO0wbSVn6VAj0Ev4zZf4jCDGFkAByL/NIQ+MByV1adpYSTeywEJvU1V92dVeWzVivWvXX5BIiaHBl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "D+YyXk/nWwTeMq4NKtan97RfIjU7svNgrI2DD/AgiUk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GyDHSLgKa4KKAErdTl9zFQAbeBu7lhm/emeqVCV0ncKgLWA7s9aeLaHBsdA0lOo/KdoNhYzuCDwkjRhc55WYmeOiZqeIY6Wwb+aZfoogC+WgGLcKp0s62wpd6EMydE2OcScP0a6fAfGZMbPdGYraNUJPS12me6jN5KMbBa2sWHBS6WChg4giBCq/rJGolK+qXgqTWfwjlftf8HoZNjJLXzvFLE7KWj6E6/Kxk+3YXDES9c8fUSv/iyaNWNV3bl57B7vDcZPDXG01zK2LatWv7ZHNXW2vZbDy0x6zttmqj8kOZJD4bRtlZ+QX5hv33YPIPeUZ3dVpfRkvWGA5OqCp89KXm0iWzbeJgPOTbLbpz/V4gqpRat8uUa09Bn/QJ5JcYQRvTrwd1WwBZF6hTlokEBlXmo7rttjp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "D0gJhoGKRT6h1F7akgu7WLrKKpR/QB0xI+N1ay1LG8o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wS/IhKjceJRX7ueRoFz2cLA3uKgdyaZguTCJwvran8Okur7uvT244UCfhPB8X9skSQFaYnAG2iwbn5/vtY9kv5KnKZ6TLcHtIzQj3I2D+MrT1rj6GWFGJduwMZKdUfm/urQ+59eB+6MUCLekthJgjDhKr4oEh/pSPwvnFbWRjZm+M+X5UpXxiASrTABZfkISjaPbdjCeU4hGA8C+xAuVTKkJUTzCvNDtXoLc7MCr8MTG8RGXIgyAregd6NqyVUdAr6fRE2Was6TUIYnaG8tdvBgbW/31Eh3+BLV5DHFDh+0TH6F2ZSmUxF/gf3xFGL3pxBJM0JvOa555vGTviStrmL/DHXAQZm6ES8dkFU6O5wHHdz1CVZcAeIDri0183kXxEQuiPcMRRjZf8IatWTY98AX79SPdwkWu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "D2+Ru+UjxNmE0Xh0owUuj15w2CQ+9R0jKOmsILeZ8e4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YoFp0xoCE/6YrV8XIPLfyI62TI+nkSaLffGpUBhR70J1R4myXBxXDSe/gWaRndNmARhBABhVrcq3DEIFabLYnFaV8vcqARL9V3lPmsvwo5oisUL5k/5NAU/u/UnbCZdYiEeyOgW3SNdK80nholmpRr/+k7nA3GCITGZGVb0CK6dBrt2JMWPt844FrfkycLtYSJaR+0pUQgru1Jt6Ws5vjErj63+4ohFQKu17VTShE1gZOBDTlzshD3XpFyZ5KPQSB+RpvsJr/SLDhYCDaZi3PhVKcWmRJQaOzakgnoinbmFTU8UixTtfVtdr08NHzia3iM0jUl0n40gCe0kYhn/7AsYcCVJz6hY5nNDtr0+v0J9gnUNDAqhEOVI24WfuLUFeojLmKJH+XyFdv2Xo1cB5oY7WPay+Anpz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "D3Cjyqsw4RYo9pdiZIWHYK6q/x4yI1CtQAt6+BaRPb4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x5aJdTTWOmvGZX7VPWvxmG4KdCz5IBT0QWdYqYMjBY6hmx88mKhVODrSfuXlJwQRGYJk1Rp2wtQIsMlxHTWRRNM0V7hRMN2T5KPlfocNlFYNXk6a7mXDYQcfeY6ZIWb/XFqc0GVEk1cPPQsoGIE1RT3vsfpVXKNPG8SqX3FSkNf1OuhYWh5htP52HrXbi8dZuW/U2kPNbxKxOJi6Hkt37Vgqap4NUOvTYmLbNWdeZ5Vdo5bppBLRPumrIRKOJ5h/WlX4BVGtRVxvoP5Msx6F2qn+9+Q/g+mULNduA01nouKpgHQ3t4OEuzlUv0gFpfpx/B4uchO1JVgZgQdMH1fr8KWCpp8vCxdqI9v8eLp8LuzoxEBsrItBBt9FZV0llw2XIUHUR7xpe4kfLMxwbyxoBNQnL34nn5eL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "D5wkaiTqy+H0CBnBi81etQyd3UCItanU0BQEyT6YKLE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pJhNAop5IBtQA9twAfVVPDwveXGwOsha8WNZZVXGjCXjbMjHtDw5UFIybpVShuwDopBsPLIr4qKKzZaOSiuvUCgV9nP0LVNuxliWERgqRF9F7txRrtjtlTONbXRO//zPLn2XgfyM9g2p5xmSz/Bwqrwz5DXk2E7mKgHHj5ljsV9J63YYO7kGbGAUCzoeX78WEYaA/zQAKqwCcnj3Hynn/WrHtkot8YbL3Y4HpLAgsnQJLrA1Xqy8uosLKl2D6m15l8r8YWWro977wVrxw+A28+bpyXUHNx6SwWnlCDmS9iO5H52+s0IF3gZmBvuDeTn5Agvg2iG1q6/3pLQfahrdYvykuUVtIvQ3f8aObR0z4sH5b8ldJGueawQppzo/3e52K7h53dMLw5akf3ctX1+rrhnG36iaEr7A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "D8k45PF2LrzSEAvpWDkkptyCzLJrqZKlcXp+oaWThos", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q96IbCjEZC0IHapVtO3ZFu1/QVc5b4huSqbRQGPO3tt/P1M05Y0vKY1q8jB4eJak39Kq6x7FxZpKkV88X/I78DdqSZFr4u3Tk1ynKDlyBEjwiQDEPU4muIzalPbFzdLneaziDWpoihJVqHSgNFahYFQs7ReLFJJBsSIrcdLdJfhPlPUxReMUaSUont6OG82z8UTeWSAcF2nCmnWSgD2tdphmsJbprXzlUxLkw4vqJ+dhPRs3bWyumXytiqsgb1jt+IWGiJkxLLNpl8v2DnL64zlhwLriV0U1NRPGodCXGgN2842qk1pIMs1b4w47S/SgNEMtojPbknFu7IYfuBQQqwOpdJVutZ80swiL2ghlO7Vxz0YIGs9vfHPwQuv6HcobJhsgn99fxATYhzGX9SugQA1sWkDZb2XG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DAWG34MS2RCui9eDpQr4nBNudVctA3vV8/Acv1o27ng", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QcyRDtfHlzQ6Gr8UZDCB8TrgXQsb6lO61CbCIWNa5vXLnQ7bbzL5FJZn2PIcMTnQ1Hdi0kUBCxhGbkBmFjlfDrfJRWKoXB45x5A7hFGe7DHjVdEM269z4wXUYu1DlSmG2vuYAPJDEd3RPgTfMfBLE0/9L2SNvkjI2FFxil2KJ+AC2yK2yopwiMKaK1i58zN8+4eoYOuoKBENSkpoXtJzwDtHZZBtcOvY+Q7g1KiV7yRlFRqnalYAoBbpQG8ey99SU3XHKmOYB7rRjtzdmcyv5KY2bUQgfl3ZPZGhLZxMpCZsYP1fxCxLm46kd2gy/9Yh1+KuDzKhv1FKVMkWwOc+5OsNP3prx1WhQTax24L00ORFLp82ZONhMZrMgi1hZPpWkEZlBGet/ybWOEhDM59TZj+n4Z0kmlC1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DAZrh/Jm2VlvZYwThtu52f7aWHZt2G3sBZXtWx4QJwo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jQKSq48fyI3cs6PxzErzrGma+oGaka9Xdzv45GxMrQ+xTcdy90gX909dc8PlFjJnCvBMSXtVChhVv0Q/b2JHuiOX3oXmG84rk99KtCWi4STMwR7/t5ueNJvGINxyg0G9qxrHb4dR27mV7zuiLQ7Co1/rxo6A+hQ/5DWvLUe7fdVXzp4pP0yg2A9DXKKxWSPXby1Gi3Por2BpTznGMXyPXPTmF47eHG7M0QHGzqSO4IWQRAVMdRyuhfQThoUf8YxwCW4HcDxV/pZjtKmPTHuqyOxQqKaAkHnL1UvveyUz/LwN+bdGiaMOP0/HiBuzUQMocfyz4J4GuEdRjoytWX3mU6V3AvMuHDYZM3CaA1vjy953OICdpYp3L3wNTD74NAQDb8kBz5cqG6Tj1f6yNRZOV1WU8TZ6/qCg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DAhMtTtZuxcAxf9ngzxkpv7YNDA7t20cJ30OyFE8C2I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Eq8fspPM+BBKXhvX1fxCP6PKt6bridMorN5ei5fz/Tn8i9MIfgkYA/6kjZYLp+Dm57Fw/XNnq60weJ9BsruDwwjl9J983prsFJ14F9Pgj1xDpGsXx9Gj38vtSNtkrIX2wlqSfEvj1u0JQAsJJ/dMo3E9epku1RUOnWAaN+BDF1DPD7mixnByhhR1A4oaAJA4rY3qAJZOsMIWTMfE4XNm6CdhUvUM8R4VbKu61KTXbaoySMxhjhydwUrObYN47SwG3EcAgpqnUEe/B14LwHJFXPr/LB2q1AHjm440xguhkjeX+syqGW5/c5RygVj9c48fUjonnqHR/CIAtFjwawoQdGLZElC7yrXhMYpYF/83NGQSRwrS6uzqA44aW3hbpqCsyyybl9WCjqNZ1GNLBo/6LNyGJ8A88qiU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DBagvvx37PCezsdESwkebKw1qJLvY7JYNs5fKaFRmx0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KJb6Amwmd8NOmxxP9CGPj3uI2dUfKShPfAvf8jKxX/9x7n6gzH5DmUTJ1ucOT5lOaTwWxe6a7Cr3GZoLKTN+LAunp3o6nwP8AuPW/K0zooqKZRE3rN/QVgDoR9NlEdlnPrV4OhFRznjQO6IOdMHw52wPrhNUO4QIdbsQhRR1U7t/BGXJEdEeProMq5Q0f98awEnCdxeU3EwNNqdj38ejRHuX6qcyXRBplGTvF8jrCmk2PHHosURZW1pyBM0x4v27yPenKU3LXRyJ2iHcy5wysVNXGacQgQYxCwxYokcfx2kSlDpVlx5TC3EER5J1OPYDn+c6fvvBo8KsWXZwtBB9dI7dORfOW7J27rY3OWDgyTmElKCowlhJeT42BeteO/KjDjfrnIQl4JXVDOIFAh28w9t/INJUPfqg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DC13IL+epsQQckcv8Uwtrs3XocIjWJFY2YP6K0KYByA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yROMNEu3+99np1CSAZvoHhz6uWZ5V+dAuHo+9L0eimnPxQUvIpt6fAfWbclxZYjAT8Sw6FHwUfWeGbxToGgissQjfsch5o/ZQaga7pJUR7mjSFhcmzOigufwxEJ6EEVnYyiNW+vaZhPO1GXmtu2D1RaJOCm6H8ITRZMC/98+6829xHXcEK1RtZrTdph0/1qeQ9emyKdyWrbi4RSnn/AVLr7Aa4/tZPLKfVzZB4Jo5UfooeEkpCPBhb5+41mfC74jhEK1XkY9Pg3Mosa9a+RBA9+/49lz24pCWpxsOp21Ha30I2r0rLEsVJNYM0Di5f00MQipLWFQBg+zE7a6ojXurpTENFBYaU9qJwNBXw7MuGWXvIqVDJUYIcNfxMqY32aL/mPakqY3nOkBIoITK0lhG0iW/1kRdc9V", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DDkfqanLs2aiX4VHpXEtU8l1QZ5+UwatZifgK3QQppE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bdG5OhAGwKsVUKCZYvy7oYlTr9hVetAzMYz1RsLhPWft4tdd4122RE/85YjvPDujiGmoDTZHD48VMeFWVNJIwUw9LuTbLDu7YEc4xwRcxVEkjp2JbfPvTqDhE1xVE/O7HKWmnQS9nSfDyrVBWa2C4vem9EBpUdFXnjad7aI9iYQkEXZpjPtaKoIX2//xC71SrWrgiVEF1oIaWEn+MGJaOugs02cnK6Dokei5FW44H1cRtvEY6AIEpnZR/Ghwcekv0LPiciULXCWpBIro0AiglgjogM+R94BgnOWoZneVbi35kNEBpYAYXc6wgoYebrmYq2CMjxEKj2Zjll/2SfHb63ngMuGdRr2eO70sgYYOscwOejXACrYKN1JfcJWLSNiH1XXCeDanqfbNeDCFtoljYYLTx0AOhC4u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DFUrZtRSOzFKvtz8enYntiP2a8SXLxAyHoSHZ8DZdTg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oOnol4s4DC/rXcjIuvsn099dXSvatgNfajY5b3ixDqKZo2HJF2LFc5meVXq/8HJxz6R8mdih6yJdSYoViNzjVop/7PLCLAzbS5gG/0jS14/yesJ5vKTLJuFSCkijuSPKZL/nWP5Dunf6ggECUzv/TkPXsZ9J3FOZX7Cl0htoTwvlkFUNMa3NA04uinSzt9Y+JaDSJ7Iv6eGj5Y0/nP1n0RYlntD2rl1uKp4NH7V5twBL2ORmFR+dVDTFNAd5x8G3s4WXq0lHkUGh6GQDV+pU6pvN3+phjo/xrzj3S7Ug9QQ2EhilvtIfVC97fj69gNhlaET0drg/XFbPGY7Jqt5kcXn2mvGoNAczq74NDTgNg+YdkFu6ae/dYNgj/VNTI8s4UwQLWXSbmMAoycxF80pRzHmVlkNZAMSG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DFcfB78Qn3QNE/sjzLiRNqIY/DLLJ1e2kh2ni5pMX+U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l5GfESp6kIinDdqzWk4S0lvUOOY+SE0Pd6/1I2Na6CJTiL33jQPIh3EBQUODCqxhWeqed9NSQ27GoUBmLj1aEOZIDXPLPpuZeIT36NGJ4K9m09dAVZld2/IftacX21pbm1ZbYkQMj7jPw71ybrMCWRt6V37qVA9nS8LTzagGA/Lpbxae5C1YdWxvVG+2VhrMGOwP1AQ12ptn5qHYyxkvBH2iYDjFwut3zChGhPKCd7sbdkEUQP2RMHYodmWZPdqtiIygnfE/QT+5Uwx6hy/vvY1yI3HiBy7u4GwyJKFlTbD82ULX+CRNL2+GddxpXxYbnghNlOiwpaUAnPDKWNn29RUdL+UhVofB3Cx1HyPzyGW5ImNIOPaeKGr6W6Nsjdv1PIz+k61Xc02pznj8xUFkKDTijB4K98QM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DGDzNp31k3oPIBYm6CM7WYrnv4uXWiGVXvCmc90/UJU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bzCVlbwuBom1lDzXJExuZXjqYtWBHpvz37+Ce6gmCjikznuMeWGJcVtwnytFjfU3Ttl+IxqzKHqiBrv3sHuVXD9M+AwYP/iSiKsvQbnjshERNFBwmaG4l1EgD7Oz5o9NTngokO1P2sf0qeBA2zpkAcKL3HYZ9ztRyE9tqD5m+FwvhY28dtiy4tt8JcokjDT9ZOXGX2Xj0iWIUXO4LbmdCq/LXow00kfbQnLIT1Q7w6+tvH3yfSnigqXrV+GY4djUZvYnhVutYdNnK0fzWP1NicHj9vZ3kVkWXxrcyepTqZjR/cxfiJSCbe3QQiYuuEhTV7ZLds/49XdnWqXfrLAeGZjAErvGyrn2g42V8Ko1wOL9rXdjSjk4H4X4RABQ1fvc5SCVsboMO8WH2RZu6Jkdyx9kLS2AQDop", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DGhb66z+buNdxG0CxFamQSkec7VnlekjylF8QfvVCVs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nXUb9rimFAfVEdUYpPUhbu2kyxmYrLNOhxQAx5npjuRGjWfSkMg9MAamVocm4CwB0q4kym2k7Wchnq8d06LNM7Pl+u/0NsyjgbqT5o/4XaH7vZAK+UmYfSFY6XNzhm5MkyqMP8iD5TjJarzzlCj1gbNq84Jk6PPO0r5NanGXKpw4K1JgNth6PN5szdAsd9XJWSo2VmwgoCHv7a8ZStzqDQSQOCBRIMsRVAtdzOEMwFY8vOed5VvteH+dZvio2eIPE7cjEy3izEKCyphaIMq1PuIeXMWxyM4rei75buXzwWW99Ewwq5RW2yRLl7ojTDpQ88xZM1q55P/4Nx3j2GWdJgTevttqGYMaE5aQG+i7oscQymc15g29eTXSt0hZZpxFnWlAsfOLRx1DvP3FTtfLVsfEc8lHYIQk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DGiy9FdBaZ63SMwS+K08fkQSRGDRPcN8jFcAOGlKEv0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/Vg22/M0aBZvv7bthRb4CIvTvpQa3orl6wVa0gcUtTgRGokg6re21bifhz8PcqSbzFBsigVSr5wY6CxsY23udepwCSb2rYc+7NDirVab7V805Q5nKM+EE+PVuGUW18FayjSb+N3s6obOXVmTkBuJZAFzeyEHlt/p1EYQXRkWKLCssbHKgK6YFt+b7tFf3GR7w8XI39649H6UlDS3HN3EydDhmxSIwyS0KTJLiSrmfh94D8e5f3dKz6Keu4EKbPm82pCFeopEzddlkNp9Tavl5wLbdySZl0ay5dN57PnNaJsAcQcDuJXejhz7BC0KmveITQnAwoWuThGH8a/PhooxngratkmJ6BDUERXwYj8Cvd9oupvDl986fhQljKQHhL4ICLLd3cvNwrzMTQNyUaeIOrp82ZPGsXN9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DH+9kIgWRzJhIbhh1ipNJsxlkb3n1nfS6CPOsGodZr0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9kQnN7bZK0cDXbI066w8vfNWq3Ac1BR01n8437JFIiahXl14QSRuCD8NC4fT8Id8qgW9HCF6Bl079oO0Cz1vrO5SJyfj31Je/BatLl0NkdUQk132MkSMRwurLxcUnILUP9qmCvs/cFlWL+Fp3U5OI+jQlQ9B0q4vB1tqQLfSM/aO3e2fGtLZKZyxOqnw6FUSUfPaRdshN1ehYdEF4HPmbQsRZfzQgJ4J1CNwmd40sgVw8aT2QJJ+VtknjwdUp0uaClsTXA7AgRMWiyPZx9t0YrYd4gJtD/PSELFrRP554voIhcfRIjJBBClmimIZzEiBfgCIaNUO+G2tfxD30VsbJRkaHRgJ48TbO1Q1i1l8QWIdKS6NI7+BpZtNN4C5lwLrZas7CMzNTipHCDTn3ztNs30hauuq7mqw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DK8PZIDqdy4K9JEhYAJDjkgg5Dcf/EdUt6La//2nUnA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jwIzTiL39lSEndm7RcjucaWYlE33d1ANkWtR0Kjec3l0n44W81MOZcc6Fo3ff1AoDL+3a6+re7qdx7oH9SuZAZcLJ/2B1EFFI6B5LoEuDtbSuyeCZaul+iffjJrctn6FgsQ9OfvDTmBX/DV1eQN9jYSwohHzJoiOZWzmef/FeGDhmOF1gNcu5VcZuGc2c7gX/8PME9qJWlOlDnrnBHNLd7gzKE6rJFYxDB9byN0B1mmZBpO3nl530hcQjW4Rbpoq3HODNonxG5W+X/WNyi6vh2xLM9mqVO049pBub4FVHLG1lKhTdnUfobIQiPiTj+E3Ao2a3kl8+46bP5aTMJ46Ay/gbKvIdQ8f2Lj1XNTQ9CcCYyaySn76LAIPtSfJHfe/bjjvBWBFeV6rMqVRW1A3ZDdoGR0axqGs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DL8MISGntaK/uASBCiH4qbzr2B5CzmMsFasFHiojkLE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bTGesWO3JxmBq+LkAHNL9PyvV+3j97866/24pwQrJGHxBPSEIiO8AK9oALpFxyYCjbhR2w/kUC5bzoZH9bQIz34ZDfmWDwcTPZW/9FUfLtv6ANYtdSgL7+f+XUgi6XhcRnk6m09Cf6qb9a4o3kYTyHnJHA6lvnpWjWnOS5YVlw6K1bdQDbIqIoa8HuCUC0PpypIz5c04eIa0aYidtMUD13Pc1bQcvGk5ySPhBnRhjlItPatzMxNNOMwg44klM2TyomkznIq/m71cvdiNuinSlEKaNVaUumTijARwEkGaHHnsoUtvX9sTEjEsE2ziiHO+v2vTI4S1Oc8ibc3zdyCl6f2blHZg9QGI5jO6gAwNRXbXeQbCqR0dEiko4hdNCqNrHzHAMmSQA5H6fLWejnyR994yRHp1xMNE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DLNQKKTh4UQMbxpTYcaOQBlHsCm9yWSjdY4iYit+P9Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gYDCeHL388K2a0MG5zPI3Jo+9VYa3ic6ykn/OaGsfZsSH9d17AeBWmsidyOdmINXdO3RCwYKDbsjMvHHEInC1A4iLKqltSZfCXhKw0fFwsV3yZno93YLin6GRX1hbW3TDDcDEUc9XxB+CpG/zmpDpShPRZUv2RJqVhtC6HiCnl72zEIPVUet7ae6/im94nbRnVR0LdLfXSgPvOm6WhmunbcLOwEXdWiFLiltd9BBobeirG1bQqDjd3a+RWhT5m4r60/e67zIyVycJb47iH2n1NwMEEz0+MIdb9p72RWKpnZYeVNSr9h1nSlWy/CyQi5rM59gJCuT421WvUfJl+IHRsz6fNiPATDZaQ2NOV3/HGuZnQHcRPTrbhTjzDLWVy97ceOt5bTZRekJ0rsgScJWGe012y7BFIDB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DMj4/NhZ7eS3482PDK1kXHviZCK3dhMPq6jL9Gkvk7s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5k2YUsuvEXGuaQym+lgzo9QauIV3Yv0RI+Mg3eR1eXPzDUjQubLlZ/vD4w80BP4WnC4xkylKFwIAkYwnU5LP+ZHRN1xZLvPNwq5CIirnU4gYxPMmToyAns5BuFkHjSSRtD2OrFu+zI06t+pvuvA8VVJpqA9+6XASrljROAYvQl036ZCuU4gyBIueupqDwOzWUV9i2ediUVf9tNveRQy9Qlz16E68Nv+QAofCv9J7OFq4zPh0H1inZIBaglgqPBR+bks9Rm8Ip6buM0Ptd4iIgi2MT6EpcCX7LL9NYDtuhi+wGm+B1rWNV9EBfSU88aIqDnkGPYH0qDwbzYPFBG23ZnFGR0Urgrj13VU49BQfKgWs/b15yQ0p6DCFwiGM5SVX5vhQovRhITI6Y7yFfozWvx2+0O/qRbds", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DNlCfHh4zZvfxWInZhwE1Tvfaz51quwQIo3h1k22t/I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P9lIdnfQaffu4wos9eyoTc2wCyZmiLgbOIrQ8C7u6zlQxVaWqoIvcldHWTzMX3g2WVL/p2b1I93adiyEejKlk6rLUp/jrFrBcGup+vyvtKRnLGX7V7ao7L+RfYxN4BNOogolajVI4SoYxdaG1DwcuedqQ3I5NxBulTg8lWxJh8lhIdxnVtP3giwojo9lQzu0L0MstOZ3ti4UVJxRjeB1kVSfiRgEPvLwoI3kx5cuGG98lCyUboesIOAgP0HYjlDiNEm0lw7pfv4gcK1Gs+7qqrI8cdlQ6alpn1KhjFT4H6QmAdrTp3z2fi21tHUBd7TnD5yhGpf216RMunFm6iwNCOwuxx2Ee+E0UFQ54HzW9BlLsfSWp0Qf8XhhEWawr+A1/kP+pNNT33mgqAECoC8tye1RR1OO3a8d", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DObgt9L4Zkthq1DL2VSJ4mNNWymc0SjzBU7ah3LriZ4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Hb2yb5fXSkG4/huimLtHgrMuX+MjVyY7ZGDnc6QtsomrgagIwZ94bqhcgiN3p5JfhMA+xKrO66poQxQJZew4XyBK18Ff3xuYnTWuNsX6ji8rl7e6edDRS2Mc+XvVOY8vv2WXaXKsLqc0O9SlGjyYxDF56PZPqlggkffZ62FeFkybsBtUNWPTLlnZAhtGvBwVJ34/UarABWP+JJbWGis3tum0/ASh1HBBmO8i8lq3FYDlT8Tm3arClyES9BEcs6h0s+eWqgE4ikN3LUWueptXMfI6/29XLzAcIhh61eczXwgheG+eeszJWHGXzW/+OxLNn34Dot7P81u7YWWrIlHEbOvyLozXZoLkl7WLkO4uuL1syRD6uQUZLsncKvUf9Neg7EKwSpT5mf58INaHwhL5tDjQpar7nnuf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DP6vitNFAeFeI9qVcB2VD218J/H+lBY0pAMe/U/ZnEw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KEYgfmB0HYNuCf2yPgbQ88s8BPFThrCo1sNBONSeBr37xatavYsGLTDDP6gX3MKdzjKEYde9OMiRCGQ0Be/7UV8WWzcIDZqagmSpa3zVmk5K1HbPyMGkvVzVZSniKozw+ZZAQ9wXXRCkHzzeXrq1EB0CR2TPm/9TgM0naAfZUY0PRkMb1Wq+YotHkTEDPhuq+aHptMA6jT7Qi4n7zt1BSlXA9EfV+dvjDQXMXXAA4AAMFqhlwLLZWDQ0G3FEhkQbx/sSMloMiY3BUkYxDw5wjjPzPMXcB5Eeo52d+PKX+RAgpD2ZduAY3Ex0NzdvcEoHLoZT3U4nzLe0dhcnr6OnunM78SWvN6LcTmirVIa1vC/alKOBDgJuC9t7QCzjdrqQK9rHCLF+MjkP1AmReJN5reoO/KmqjysH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DPV+RBcNWKUaacXqLeA4U4YIe43s5l1r9ddkUupFrZk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B3/TtqqQEMLU2eAwjw1CSu9zjzwR9uwQtr0HvSRMeCUpiPaMv642a1NQX/Yo8r+8Aix6AmFum2CNHUTUcYuyxQFfxYrd3+TOrT3SmgGgy7dfthIxZ2MRV0LMausfPIUErySgo9BHZ7te8qKFZSCm0byH/wVn/0L/fG7AArpK1wVH7PPHPEEDyQP7A3AujO7idlsMn4tHrNMtiWxPVLahSmsibsPQkMrBBO9CLcuP3Fw9CFIiMJz9oZlnCX5MKIHy2h8xPO44BIvLkolt4EDCMSprHIVOHZ6JClcbhDPLTTaCUhTnhd8BeL/5NFVFcXiYe/KAzst/5vZ+P1fruzMMg+OdeQgXnyYn7p5751otJ2yzh38XSDOqeNqQqP4bv/yFDnR0rLRWhcM8VROQKiKO8Ez7vGrS3amE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DPynzN9kMqMuGVa+6xpYS9jvga8t1+dyIHDWAqd3iac", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4ht/+xP4U4FtlUBTlnJxJagw951zP2HR2sULVzXFp9EkqJraNj4uT4k7daqaVf5ajKc6uVIZQ6jrEX/4ov76EjN7VelvvkXkePFAXS9BFmw9Yi5MZu7CqsGGaailHjL8+kvURhpiwRYh2PKrCcgheh3g2Qx8p1xvqpYHbfiaytxcnoBzZ+/5kI5zu5wn7Ph6OqdDpluysp3XcwhcSjCvA9OnKns18RJYw/CqAm1m8qsN90afSmn7m4Tziv3V+xaM9jOoHeIEUvpFxmPT4Dz6f8d6TTSPDeUspmtrMaeXyu3XXRStcHpFfdubLRWxlC7TX5bjWoDzBbZqDDKozk1K1ggFWwkiFRuAt+69lQ35hk5D4RS5F96ESMTMK54ZMg4iY/5zxpCLsKq6yhVIDtUH5ZUPPKMb7ULI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DQharTwMBlT9U28Zu6Fnqa7xOWggDlkiF30blJj7MtY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P6nxHfo0Wsab7mwe8z+u3n43Xug8CmaHKRqgR2PKBB45S/GDBgL9jIJh2ccQuCuScSfOJAr8UDOq5t7Ywc0ckCElgp1o6eYMuE7NDQdMPXjib3du73qoYj6X0cUj41vY7OtGEJHmow5QnHvJGLaQGZQkUQ2D/UiFnimdVQBOSF1cF1dcisOUdgONzkVx6NN5FT9LSRkxhcJ8gX4T5X4/M88lR3U+eYxH5NbfB+Rx0yHHQURbLrYHjyEMK1qOkK3RRXP9zHLfFuNPHUbz4KKK57L+8oLtaPYnXddsswmM+o8Qw8/yBQI4x5iSa3PotDF9FOtHNdD+8GLDqtXrqPghwiWI3lIfJ5uunzLxCzKPRGMK63RJKr0cnCFwdYK/N8WPaZ5kvnLnfwp4TLrcjlTgQaPuGQzcp0vS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DQjHMyT84kj/u5DlJQTS0x3avfjbL5D/XKuXsZPSXYA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OCEJX++AD4UUMxDQCHXKt2SBX42a1nylYKtGzcTVaorP4gvSzEO/TwJfikCJ7R5R8hU+nYGS5G5iOOLHcGmCFSd8Z8OPRLUav/eje2IA52BvQ41wE5fgP1DGccE5fXvu318b93VvF73azggnM7GTpC7UvcR5Iqv7JKxhBaGIES/Vu92nKjFyKUi0J2RoSsEH6WzzwGewJI1AMZ/+TR6nMe1kuKH19b89R3ZD008Ov3mZOwPl+aY/CGT2G8382WdTEVQfo2df824fyA8VV4z+wLOjpd+1cguKnrTbCqTSHcI6Kz9/jrl1JZhP4QKqPMHELrCxualpJwPzSLAnfvBO7/NiufSMtbf7ND8vbSmTyYF1SNSXifcktR41VYosoZE9VgIbi+S76a32w/NTS/dys2HihiEPrHH6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DTJIGPbTkP50yAqSMuovR+4qmEHSv517nyINL8ZUU6s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yQjA0aiaeVcqI8u+AIZLl6R8HULpO+0GN1UAWusLor2KS0exeHxzc0LE6K/j/i3nBfIi+3WItOkgDMQUZsR3Ef3SLpWO9KolwvnjCcjyzvaItfR7M0pXVuN4+odOtohA1U7OxsHCUqtnR5KW4Fhu1CZLMbEi0h89UpTFMg349FzIUzFnKbHpK5KfgCwTd4q42HYB4BO+R6G55dDsUsGWkz/9Z7jYacKbkRfhRmqYaB6taMIzKMVa07FZrF6BADG5PQLqxDSh8ZAzl2FmpW4p5HSzcZ/+vEmg2qE4+UyjU8UMyYQ2+kycdxLFpDa1VRcrannobhg+FcQHGHwLiQ7oS0nHb2YTeA2RNc+jbbmxIvFSukXZzaSJDhvQFqby+MH17d/yor/KudhF6XnLo8eVSK7sTOI6Q8By", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DTMx+6f/Kr/ZaAOzT5r5SkX5ffMzfUMIqKsdWNIdU7o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W1BGOcSidMwpVsV80xSygc7nue0f1rfikJ9ZqtbF4lQcUlJWp8dIB6bUaY4GxATcvP8mk5QK5Hyp7ZeNuFRtPoHpuxwdmGyYMvLr6V4QNkXWmvd3NOHjwToxt3SToW5m3cpTnVxHhHgfCvlnIHP1AuARHLOccezsBA8Zq6ZoICsqA6yxX18O5c6zx5psUeiMsDN5gbyBpiITrDhvUPIeQLfvRBd1QiZsaj27+s5yNxqmImdmX5uDazl3CzHuqX+YARrNyHNpkFIGUfbdLSOTRuAXNMiknplDZK3jHKDW9XXJbxWnElxhYH9mlrwjviPEhma42llLvYbp4Yuh6lGg0y2ceQ/iH4/MY7nJjTEYIKN3J2THLfi7q1A0mkVYeAW1YAcNjSRTcFPcXV82lfRTnipZKRrcXuFe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DUUwV3LXAP9jsqwsJPGLNAca+jvyU7auH2KjuRdhlhk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4X94D697L2G0ZF+lWuMjZI/nDltFgttXhQLPImqfqW74O9oo0JFa9vqkQFi1KRhn/ohQv53C33MsRMU7mSLmkgkK7eVMju/RusIK2vuFwXqkVH45fAV6BVGekXQ9B+q6yotP8TpmkzTLZnq+odaoVnjhRkyIEiG1qpK+ni+VEm9zYG81z/n7VNKXTFXyrd6vs+ZWcGeiYHH8e6MUtxMpx47Ms8JrRFtfP2OsT36wwDxLAwLhaJHGuU0gtf7go+dY5Zie34V/1dhCoojbYgHEVL94LFYVeooARwLEDVgWB9L5DoGRD0D37cnb/yalbFfMr/FJbVnhxvkxMQdl2eSPY27wi2t7qAfqX+mjh8e5b2qfYdfXq3PK6r4U96ycc92+X++ddoo7geK365+nhmXAl0s/dwG9i+gI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DUVihJbK8QQmtYDUPIOONuf3L0QqY9sNpvaof36ZCW0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YKV4goruoOeVgPAsJZfxXslynOk/1GvWeEYBe7NNxZhScKtrO9tvbQLNepjb6Z7ORISapMvBkLo/JE9UFoKxpOa+HcE9FRoFqb+7D+wPirC54CursRR0/ZhQF+RtvHFVOFeTVCkQAIlo1OjduG0+EX4WaENhuagPbVBHimIAMWUHdu87Q+sUC5aDO1BP6m9hzaaVQbNRxegY/eSlVLmF46qNqymLovA4hBJxVeXWX0baSvT/9m8g3qx6TMjmeuXEmXB7WqvYwMh0iKMJ40Ad04NmpcgR9TMeur5irSyDnyzeb+WVXsYucYOFA/SWwvaP9eKYeNx1Td0y91nyko6UoHEYrdz3cAJpAx5fHa+MsiUbD2PABrxD4ga15NandAQH1uQy0NI2AcC/QK5bEffkzcYT+v/LBllc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DVE0i68XC/G8HKxf2lq8WuEgTk6BRscSCrAxxdNp1SQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "h8laNs4S9h95ti4V57Wcj6WN/CyGF0cpSEoXfNaHnOLV4d73o57CiOp3jRDkT7+f9n3XkLNZLMnaoLxvBbRoR8ycASphrY1MB1BYlc3Hvsct/coV8NycDn4FslKo9xsdzo66EGIE81jOUbp0gePG8AzT/EZtF9KTZaGeOEg9HyfIqI37UO9KRM+wU8zYUPESwL06OnCOsd7JGGCY3qO4qC76FgVCqQ+7hn6iSXRh8vPBZ8qa1XmoMm8m2CQ3RntgIymmbhXupbD9ZGbpDgiHGzMgTHPA9Tw4RYzxOA7SxZRyPFG5o76wEfwyurelEjLyQkzHjVTDlpkpiIklihsO7houDOfgM+Z9mNzgeBoN3rZuXNt56qs4RuWCaCh9awlO6/7Sd6t4iM3/KJSZR3zcrNl+4YYcErhw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DVfL8vp0rOc7Kt2j6XpTB1fb5H8jW5A3XBZpGEvYgNY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QivawMaF24j5EUXG+b71kSuvMLjNqJmgEBCVV4r3/CbwmQFCqTy099K0X3MFFxc8XfdY3/cwTewOSdnhzYEau79pkhIb6KdzR26LTXHTFQW8M226JEtZ8ot39FnveyG5TrW21R/CYCTL/zbTc6AeWop14RDR97ZQ1+H7LC77hkHDnq7YtEEMT8PwiVrGZYTADAbHk335gWO3LrrDMCjHlF0FH5caSGV7D519z6EQi/D+HGK6NN2e6l+6mOVrsn1GNXuUPfGUqhWM81GfWktNk1QGctw5InHMIBVvmf11d9LuM+fRoc1/7O1IGlXbojW/hWIUD/GH71dbJ3QUXVezde/n35VKleeTxJGvd1EGz87w4DmZ9Pm0JvVtjA/Ul1wlsAFRWmUpsLphyF3rllVKM0lsoDic8IeJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DW4m5ZpRaosot57FrN/zheCfhJFKJ9jUqWwkGHJB4cQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0N6w8k5GPgYYhw7r1qogjljbzRIOUH06bQwpnullWAled+wQg/zMZiE58HccXJNbvjo9l71DxS/H3IaZFkvtxp74d309xXsmbnM2/Z6eqmVrkKZiBOYqBTSij1EXigSnbSipnq84mdUpxV1CGnwoxD0lQLdQ3F0XtULVMqhtmiKohs6PQf9yC1nq6SaasTKAN2zQQ40aEVnu2Ea6cvry7cW4V+ougETHgK9gcquZG9IRQUVFwFTPhe/mJkCxFy4127N5wi4zDlahRV/s3PGn2I+f7HCThP0jJgVRDZ5NlL8DQDYtTVWY7qGOjd59wfNvQJ+TSq2JHICQu/6bjb72noly2JiXTSO7V0Yj1CNMeuEKFzlSvUbAfckA//SP6wQVsTnaxKdg6joJb/3+fvSVIojI1LniS33e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DWIpxZZ+IgP71wXgi7/h/I5adGE+Ydg/rvAG8rJ0szI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QNUqFwvmJ9z2lcfPGT3j8TF1BOxZQwsKx1QS91Wf63MLDogvIn4v0wZhY06/yCeImugx0+/CoxOoRKrE7ZtOv7IcTQJcKz2l+1u6AnXxs0mwYqKv25CnkFaLYzwHsOZ1A8EB4tx98c//Yr5tvKSG9Yz86eqp97bztKP0onmYgSnWpQBhcyr3dBuH8C/k0KNNyCjlGFnQwk587Fwp0IwPesW/DBf2J6kDHnTwXRzWmMeLkipuAXg4CeA+xSOlJ+B9IbSiDhequayLeNTunx5PmFVRrP6oMKrxjThkuM9yYA3/RPs+cCsRhudOEu9jNv9fzpBS1ujG+ng2ohkJx4OnWOj9/UD3+UUlgb/O4X+FZH7Q/8ZRz0DGAxPDh5G589QDnFM+Nm/EuYA9ZDQRsLDxMne0XgQXcvGp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DX/JgWYs/czrtuEoLvvXUBEvvmU/8xCoffPhARJ3R2o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w5gZoF6970YyZj1A5v1GU2KkYVv/f/9UNzHW3pugTG/qW4Vcl3KrYTvGnDZuBpH42d68R0t1fJ/6d+voyVhaLi1JobwMBQJjjCdB5UqxrIi6QvOjkAjqQM4ydFnmnrV3CQAaM4fI7IrlnKHKBMzSMHDhGSJqrk41GVS5u8vnnW5B1aY5igJQFv6YTEb0QeAEwG3jUsFcUycem5QcviLj0OIFVUtHu7oSw1TPc7BfUDrpsChzPjTjfllNs3YJEinOHtcKAJZOxUKh9bV5sg/bTGgVKSL//kOA+1LIjQcCxjsBYGYG8CLWTF3CpcQ4tvxjkrDMvMsyPS3a8wDIQ5pZsxEGIcZhD62zEL4gQvqSMufeIRA2X2a25mPc9FOFOzvCR0FMlqJZs2ZcLlzgVCWNRESCc6Wyudtf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DXf33SAtzMoGODm22j8NrNA4AAb/pl0HF5DI1TzPTOc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SEQDgSnojpmie5gDk6XUxVGzSWxhI84Yfp85haVplWg1S5V4Jjo/Pk420+O6/boQqcdO0n1nzgnrw61JXsDxbrJqjOhJPsXr0jIcSzv65fABmaSSib+sUh3obQeyi5rypGEg2/5pkSKqc9yDCntt2eUrXDRMVCcaUQ9vRK0DBxmKatvAygIdOeisTTy1PmopBmfCHHXRCoBjeZKZL25sSZVgXBngypFpvzVuE0pbyxCZ2f39C8sJoYsKGixbW7U2o7GsiW1xAb/4B8bH0lyTmj6wO9/WB535e3MgOeqvDMAT/yedFEHp8KmNDkQCfQ2Zt4gY0YQ1hW+QIphXsnj/kpzJN7QpBloPzj+sEKiXGKZ7Hax+wuJuLpvPJYD3ESCsjHQAqvdSXNnaMihwpf/Zir6T2IBTBqkV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DYEBvZRcEaSuNAuBC4qHIRplwnb2LRRQp/3RajJ1HnM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eY0TZcXmXcE746/a5u2uTs5cYmiaOg2ASfV/EnrerSrSj8PwmzpAlbU+c0FyCSUGSaPTzVSqYoQA9he2U6SCOyzhjOQ8aBa1RKhEJGtBvFSulGndky5ZIkf96SS1YwgOQRAH28AQI/bcRR9QvFKfjV8uGDUMp+eefHE9Sh4n7RBKoyUzapmpO3zPK9dcUfTTWs1y+ZAXXJAHLM4D/kUtupJQsO2i8k79VyAOBLmZhX3R1oKGLpZMkTxQXppD/VYa8hL4SItungdP3gJS0mKNY5Oe1oa6uL/2/NpQ2Crzwv3BUHYahYqJSIY6tm694zJj7UU0ALkzBceiBPIdhNRS9K0jiryMJPRLIB8o3bygKaERvs2TUVBkRb74r2MndHZpS11loyha75CGfFDjmQsarvMr6VRx9yB5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DYeVNsAR4As/HYO9jirYSncb66gzv3UXg7QLpZHyOZU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o3p1wIjPN1awojkgmnfA4g0AoiMrTub1ot1w1smOC7hkXprFBw9miTWZCO2w4BsJ0Q/xo6UUyM5KIhnDyYf8qOBopDBxQzLVAIIp66+hVnJvl5dJZdi38bI6FnaHmfpSbkQV5qoAxMqpSuhHYaT3YS2ornO+eceslFWWfJXSkSLtFCeIS96ElHIOgpcXf+cid8bjNBGC5RVEXTcOKUb8qxc1zswANr5giPxg/Af1TrVDaVcqZ81tfD7vPy5wegAelSD5iZgRlhtkFPKh+zXR/E+6jNKgSGDokq7uu+p83thGsM6fMynjQkvYknNHSPAnfmDJKr/j8kOwZz1tNQSKInp5qot+RlSeEGtZYG5v369JgVJaNo4koM0+34lDaGKdvIUK+eUYMCW+Hb8Ql9sxFyE4QPwnVl0l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DZGzu/mUDUsE5kerO1vfbDYR92gugVWPJWJy4afUPOc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eQkLKzgOG31+DNqCL1kcju5wgHDF185ed4Pddr6PK23Nf2DCYx+RwyWtJHQq8aEctrwizK65zfJcL7NSWBrhjBrKFdhY144L6rtgnxcqd1NNh22Mv6C4YhRMOE4JaQQw2Z+rSfI2vXJyQYQ6hc19LE4fGaZzooTahL0FfsyvyJbKqQTtOorVAm/TcYkKyujlo/NAHnqZ6CP7MhvVgyDSiyrMKYPMbUcR7wDYivmthvxU3+9aPKwAJMT4YuUNtsV0f55/fhY3ib+7PFyDHCc4/2KRY38182u++zCtcQZjSkI2ZNnR1us71Vnkx80G9tZunziOtLpjnLd2oiWKBwuiRErKItWdupMePbdxo9mxrOGUmc8rKTyCnR5yA6q6Kb/8ODfum4hE0nAEwSwqtjMFMZ0iD1nGydZ5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DZlitgdJCl92d5n7QyDI7CoCva/WZL24/v8hpgd2eAQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0MWacwgdARCSK6j98y+i4g912OKmoaVmah+ajH+/dCNu6Ul8BOlsCRQh821XtaWOTiqz72n5Xc/ji7OJ6JtWt96PGkDYQWPoUpSKc0kUis4ZmRBzESCzhrgDQVfRjvZ2MoevSkLN6/CPO43d5vucfRhN/xlEhArmFUVyiGTVjvm192p0VfwpCbrK32Vv8yzVoQrArmRApUxQvls+E30U6EJEw4Nw2BrJIBLvyTX+7CT+ExoDNXRQxADq9++ha+fkFocLWdCTZSFdQKZVXRFdWAyHG3JopqdJVnT6+W9OFwLDye2bOt6uP6dzAHURcDCnNHzsWU4ztnUJdp/nPQsPW6RiWgEdhEe+hvzmTBtWAfWiBDXSHIJqk+EBNfTmlY/rl/rnuknJq5S2e7TsJF3WCik69zFDJ7tB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DambLJIDzPzTcLKNMA82JmXdC3CLGOZW2N8YxbznozM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oS7DRw2L7YrP6L0zsQFEdE+TU3bMIFBCE6zEWdPepA5olHWJlwndN1UTz+NLVR5MFkxY7xkqqoVjBo0oxIVlMEcD7kF01ivjSIIgVWoI1FMuURT/H8AfIeqbymTLNUqX/ntZlvYwhyqxyRoHntExJ3vWSmwtxF8m7/mx7PdmbA0RgX2ZcgTBK1GRzaiHAN2dn1lMQBwVoLFFnv2zNoeeSbDHpAwPTEHZCMkl5fm/cRvKUmbD8hTJAqdif7ZxzvB9Un5GIeV+R60+rk3SXPkmG1h+HUvY+o6Zrwy4EzZaj/yPHQO/uHr3lMxKF8/SshKakYvnsk/v34KSDYNQIy/knBDKqsJm5mSTeuA2GxUPAJkN2Qu/7xLavjERo81VaLJhr+nrXoQfhrf8YYlsEJwivqbgDwvv+Pz2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Dc/YR7ubdsU8faCPXcpoPEUSU0vMGkVoZXCfMAv6M5c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f1VcRWSH2SuOHQBST5igSz691HdzYDdmXJgVQRq4E/Z5Nq/ofQafhxqqzB+UFbOD1tW3HZzi0DAX4YQHKLU1HD1BKJZcLb+Embpzfgh3AWMMvoI9InB8fWfh3Ca1RxPy+epu6QSZxdG7EtKkBosTC46aKYbhyJ4QnOlA+lD2wW5lN8Kn2BDC+k3BT+AGrztAwbYkPt3jlanqXHNke9r6/B0RqIyFudPMZKpmJLl0Bg3CGgAfQ9aEzYJUpG/uidOrDaH8JjptelZi26ubK4kgAimKH1rZyU/ymni8I526XrHYI6QcQWIM4U4dDZAQXd8gKjqjjEzRLLHiFTCqknuUMGQvzmEggbueaC6NwzNyx9OMb+TJz1rO+I+49sxyVILSIvp18jJ5M2Z5K9LXHX9s5z5Wd1PUDWSw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DcaJUZmqvIR8hbJIWYtiP0Uuv/1wGDzC19L1bTbtrvw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w2GGsIgeFmEvTlVPg43Xsdc323rfrTf36KhldKYyEG0xIi89NEhxtKGvSvNKaEIInqjMcV5qSH+kokTUqIc4aQq+Oo0sLYztvxNRuuA9aCKT1akSINykXf11bXnCrktRteEhzwqdthri6RHoAGRnup0mQxZ8w+wL0waVkCAqwnypQ000QnUbzD0beC257nemP25GUjBKEOV52ZObIogTxT0VJuzsdRSQWFBvj96lvuKDJ4bVvSv9FWSLyktFNAwjCxNTegcIWi6lH7G0G4lS0Vl0zSxPZOx9TwLd7LJugMCyrfke/pbNOFxpESeC++aZ0DcPD24tcgmQutHzMFQeuFqiT4LTPgkrXGSryKgvFGj0PtjcLTZNpyxc20WvpUNwdtxcwnU3bcNEI5omfU12ifjt5ISs4VLo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DcacYhTwMdcmxKilslSs8XCaRi9hnJUAemy++19i1/Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bxnkcaxMNfB8zCQfw1NWsqTWh2z2+CS18T3GZQ1fax+w5aFao7uRgfwwpVSMKtIJFWat/UwapDb2a1T6ZGURtRYSf6wHj8Uuwd329iUuZtT6GOGw0usuE5rYj84LC5HlqAXjFqjh9at5cUSWOnSwalem7vr/11/ZOwLPhpR1Vw6mA3pK3TcUL9UrtJmdsBYmEyBwiZCMCkyl8tQL5QjHb027mPrly9AIniNbrSJBYM+3gbq3egnp9qNA0uy8x7GLTRmtVTDy7vZc3+yaGHQKotFlV227dKrYuynyYzCjBG4L5uWyLExJPHf/cNu0tgq+J43fzxg5h89KcUuU0yVFzjPgbQ+xdKBKpbSL5G2i+2Se8JitM9Y+IctERez2cjKl3zB5GD4MEhDn0yP9n7TRQqJ/sqZFztSQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DgZdyFJG0upmic67jD6jUWbbezcdqSnOV5lrvxIYKAM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X3ez8czw1We7SZywhdNOGJe8hWWg4Q4p9cCWr5XP6qpWwnklE2S5BU1wFYewpXbApnDQ7AM79pXpjV+y46IO9eUPTqsgcZy4s2nkmzK81vgBNo2yU5TtyFHU8TODOwp73fv9meMuJWStfox//eLpCHWT17SXpNzYFIIVsrZrhSVkgbEzw5uV04FVelcHNyBuOnv8nQFFaK3FbzmyNgifyQma56uCcIpOJ+ryEM3bIXJyusTK7AxyhxsD9sy/e/ZRV8J8aZelQYyuNKkNW9STK0JE1PBhp2cY8JIb7tNkWxb+BckAH/2NesWp5KBdrWNeuWIYfLvc6oyxg1dbfMQkSoEcYtUHwi5PmuXpXi1cY7900egqNNUKBZqnZ8JhbfZcNYG+TqAqyxXrurFdvy+PNqb48vDMT2QG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DgwfZ8YMRGGbaR/jej4DGrm4WxvNi1yZ9Y2sE+BPAKE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QzcokSR9uprqBkajee54Yp9qV0gDSzfNP00nWmho2OTQmu2FCwgbJGUz1lYAexk7JojxVwbAkfHKnqojgHakMVZppj186i6os831s4wVx0fUGTmsT+AAiN3kLEaOUYn+8SrbAdR7l0ucwu6QP17wFk+3JAaegIJYTlE6ZQgUFGxa/+nPI6F8BrT6Hgzt1CBtXHheMeNYFeKHNeqwTW1EkOOiNKq7Y/WDJwwc3jls81MuRJMJZhshylZ7TKe6M69oZlwV7VQzfHRgCeeqpwOLzl5NBo4lQxrmpZTykCted/wqOFwwI2x3bU5pW4jEbCVFhQDLUGIiz1wzTKrTzwuivn7Vc2rF/eR8p7CxGFp7A/3A72B7kjEwlZ1DIt1DjDnI57ep8C0UywABunVABCYOEJBJmmunZ07t", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DhSq346QD9ex2gkXRklFJi0w0Fw6ssuvtk03wSKEGhA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BJbMUXmj6KvPK0d6aNda8NlZoZwiywiH52o3P9/chqIZDqlKYeEimqiLPSJEhhQR13pDcvu1lRnx4Cqitc4xzBsUyCtLl8g0wBD1D+ry0ql7XmGWiA8RnE+W/k2rpxHfwDemUUBQoFXhauvn5/Xt2Brx6gm0aJ9k8m1GgwueVmNXmoCJl2MbLcibXGIpf8Agiz2rizdpGk3ciQZ2gxbcizPUQIV49NlPeq3GddBgfH90rbbyRztr0hwNLr0rKRkT+MtA1fSa4nMx4uSZVQ3MGrpSmighuuIFlByxWfaw1Js1QrCh5AOZ86JV78C6hQWTUBWjKWKVsfnqakGi9OtWEUlO+RVmrm9mYb3XkZIkHrB8o2BPriMkZvWgoh252cWLmuyJe+QCU5eMZV6FY0+LJCT2RIbYmQbY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DhfuXMc83wfbo21ciAXIPuK5DVBdD0+mCdyOUhsL19w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d3OWMmoCGWkHpis+E8LKMVvPspLKG7pBySpAp0jXeNbQeWaM4qWMG6UuliIgr6dQTQZNQP6CZPoetHA8zSG/jljir+5qJKYoDVkiiK3BgRHuhlcDjyF/lowF6iV2ZmcKrPzeZLgj+iCKxz9MoURlFhwbKiFkwCrgPFmoMlP2gz5ORKA/K7fImFuzFHqyEwrAEOBoBoRvWO4AjSkbHWXOZ/gO2P6ydORaNZpaPE2n1ATo9BaiAG7CvEhklxCh2XA8e9rC2VXBtuPapSqQp89HFFg+OIeTuGOqmb18TDHidUDSfMiS/ucepDfXmL54Te7o3MOueYud1nUl35KVdgJhb0bs6yKTrXuxP44HBIvO6tY9WaN9Dt+Sk8pDczepSYwN4sKSQQAdzMckbxXuX+jQcW8GO6nFU6St", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Dih7EgXCfmpWzMJq0HyJ2lALEhoqgSprGB7CjHvipdE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LQUQhcXM3Dkju4bkihB+mzlMtuRhh8v3qcFkV7eoGoTXPTGgrMmwbhtX/Q2qs4/ALtr+hmwN/3R1x/Ov5jT0BJeA7kBytPYD80+b4iYA4iMfv1z89vY8IRfY76JnqwkJnW9VbGOjt/4QaqZrM0z5ORUw47QmLBY6eYJkkF07qsGwfDu6Pd0fB3KDAP0rHvOWPFswMjk1pxZ83DVThdkWqJYpRq4nKph98xAG6tnkmVb15L83KbDq0lYjWwngign/cDP77VradJo4zZlXJzXip4zcL9tgIIwkso1OjllhoApsUTn4ZOkT1VhXycFy++i6eFmu0mJaizRk6DM5GeLcXMvLdT+uIHAJ0AQO3R2EWxmwdinn1mlnasol47VRU12YDEc55Esj66Kn+sqNWQTWOYoBurOygJV5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Dmx70nRwh91ROxyfYN+xyRNtgZ+NTEQpxibsBeZqNNI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "n/F8zlo5I7oEOZ2D7w9zgkIPYtyltC2yuFEDooDbEbQwq9lw+O9a6wRIDybcw4TtbZaKaJ5Sc/uq1ZWdKLbbOJiYgl/MkhUciPq7ufZ7rDNzgA6PMcQvGdo9O7WWk89X8+7qAOTqKR7NDiYqVrl9Fkrndlrz78jSERJDQ0eCNoH/gQ8pWyjq0LRJqgRcyCHIhvfNz/71LrYmdmYlp5r0Ds8rnEMNPWwZfmL4TlQyK/e7MiO+M7FBKazLEKAlnt9WLMx+QFijS8Ae2aLU9e5dhOu+uo6UUc0fCYWJlJXgYTBgLBnkTBncgPhyj1JnRHxBVaRp+I8Uzdm4LKJa+8T9NG9JXi2uDxWgAHy1X3SAuqAex0rIwpLzuOR5Gf86bMwnq+nY9+hERD4MHM68x00kd/uPALl4tit5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DnFnkFahIMg8Xy0TiJNnR1KzeD+gWeyxt9nhY4/u2sw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/K/YjaZ9vuFCGIXrE3vyeD7G5D/sOynboztkZzSAypQn2WOhVy3r+w9SeDbsmjAiD28aLNiF7j2OD3/yDotHOgFlLfB2aXV7ufru7FjW3QlxWV9k1Ie65UYo8hqZsF3WuqvTG4S/sMZfxHu/OVnA+3NFbkmYvM8shhccC5DIelpUvJR7+ijc3++tsrCbsDSgvOkPav1qsiGETg8F9+alS10m2Ymyl1ujmwWQ9wTNa0yp8gFlnfd7QQBO8ATJkNpd4Q3PE7GRelwfrIH/pF/xMvvkNndv4Vu+OMunwXjhdrkDqGFugzgY8ozZNwLZ1SseYpC0bYPl0g8ZRLf8d9gECHlGn81PauTVreeX4ZaSQFVPGfRjGWFnp/OlkAzR+gQTE+1NmrEjJp3yoynca4ArcF1zBvg/+kaA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DohaPeJamU1jWrA8T60dA/HyANVv5kHYcbP7MkPOHLA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JqEIvA8BBbFWswv/1n761I8OHln3OPnwrJN7q4PTYBArfUTi47MH/gTToFgqRAf14eo7t6XwjeFI7+tcUmqd7aeo6ndfz2+giRDPdXqZMvM7E5Tr41N1MX3PnCMkcerUcyBn0RkpphO7x0c04DfaOEAlLqU6MW7tju3yP7ecmhPT8QUM8kcNY+chbo3IleDzr9INETDuQa9U9vqeTNx+xzdd05ANZe8nFkRzx7rcMg6DdCyizReBQ42812id2C4XJbN47UrLnniMjdEDOVqG4RXVw0G9+bpIdc/ajdX9tuYVK+qVyiFmw0yji4aqgVmdpjFXEbT2XT3f/oU5OplE3SuXb3KYU/J7aV/HJ/dVMXhiYraIVjC6e7Wda0Y+RKQZgA4pFjFDibO6EjRv6lzoSNWI65OUBzfN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Dp7sJMlfZK/79iFcYWVE6kVY2w0bzhKruu8lYW2frKM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tSLtvMCRvLEO9MHt/P7UBQMMUWSERJ9/Zsha+OMUzyBgLKszWFKws6zAGmK8ufVdl27h3f71hjLs5s2XDM9UAD31xvTAuYdgLLrjuPpmdMbyqRp290jbRm3t2gNhttUirI5vr7vXcxu7B01fqQn06K+zkw84gUeAqhUzwteZY3wPpUV0U8GLD7t6JR/Mki007f8IQXXkKBLYwGeSkgTmGMyecBMDdswcWzF3xz7+CLVevOJEr/QuNB6bjiaKYo3H13SO2jadJj4gz5un8RMtTIQLa6rVteX33syZ3ghwPTU092MaCot+wspQme/hj0OqP05DiYs1IL5XR2810n5LxCYWSjf3hQ1SvrEGoSGrBTGuweBhpvZ0zB304QoXVxcFrI7221GqvKLgxu1/wLfeWjM2dJrwqrao", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DqIy5JeXYTTjA4fReKRmSq8klo4QePbgYDHYiuvx8vg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wqloc88K5BMjQ6UbI0YFJIAQEDip4ZM4P8NNDo6AOtXlTaVUGwsYKqkxOnRnPFRS0jsxIDxqIzpIuutwGOpmS+iSl9XMWfP7O9QIop3YiIaA8ozBK06lZUBXAcviC9RVgC0MSD0iWK/36+bI+iUZ0P5nCBQF7C14ymZSZuYkeqntfn9lv11s48/d3XYBxGrENIajFIBVz56HSaJ3IliPf6MVf/uQLt14P+zBU0KttOIFQWoyVk5OVvqrSIaNCNhPbqtIJOMkL6Gqs96wvKxgbL+4HBGE7sIHigpBE1JyEjxDi71CnxQkSBT4k+BjN911zoGrW5v873bOKXEVCUkCLpuObzYxWOLtPaHa+Mn2pM3fmjs9/6B6b7+6A/2PDTExznfTVsBhklXoB2tWPherYIESRl0U4M0t", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DrG/D7PiquxZUxpZg0ff3CMbpzGmwhC2eBpQpJV5yhA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aMZqs7Wl5XQYr0hayHF3z0sLyt/aXqqToPDrcF10WBuLj9L9SVo6xGvrh6706xvT3GRuPjEpbAqY8FlDksgjhhMUtjCkJuJvm60ofSlDkEYQzehYNfKddMhrFBegIclRGs6k2THCs3Xdd/QGL35C2TTG4rCXiLcBNRUcoTK1D8S38z62IiNbCK+2iJCKW8eH8QKbCF/jW0DPfFlsTzPuJpbKfqFstIPUQkUh/Ga8qDDLRugHciycUPJihuxVfUsGM+tG9LH/vm7b+odn4MjpXbJQcV/eeRmHF54lXHDK0dTJldcixokPtPq6B38hATc4+2mcb7DQaywxx5sueEFqvgjHIQR7MiVhLxpiUwPZtl+sbduzG1+1w9xh+1o10zb2yhsPFzG/8sDreYdtbDXGmF0xJYpiu1DA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DtOuHn+eaBUezxEMIH91b7JlF6W57tmeeBcD5fDmC1E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8vuwrX2b49OApT95w3tJ5ZL9TK9CBtC/zvdzjTF1j0EsRTkypakH+GVMRvsguKOg82C0xctACoW/X0loqu5RwkjH2H2pifwsXVvXtZoFMXvUUPa85vwIjSTZ5rmYewqdH5Nlo5h/0i4Pg/O3Tul6gsZywiIwsm9b+uzdzBuNeJv/En8JNy4hWrdnGykAWSHduwKzY55VdXq6IyT4n6k7ITWllQbuRGR6nuqxf0VyeaMu0HeOc2ZWcoh+Uc4SOVfKjpG89acyJhsWJS9p261fpD5mWD4U+dfvJVzo9eeAbolvD1L5kgqjU5gCgDz6lMm5vIS9SqFKgeWwT5HbxmRj2/POiu5v7hUYfL1HIjK97MWZ6zYZS0LS+cDo7PVYgAv3xF1XUeeEQGKdgnVbDelA1wrshsr4VFTg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DtZJEts0o0dWnr9UsJBiNss3IzvM6HQxMYayY6wb+yM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A/rsMDEQDcv9CUM1MVU6XhZYWVgkAX51iIcIsBNQFAlwrCbmPvviRxsZitwXMFhdkrwldyL/0/T1GuV7AM0a8FM34VDX3TKPlqlZREpJFSakYTHzYepd4FjijteKB3WsyMXK5kA8orFwIV6Eo158+BH1f5/GIMCaCou1nvO/IICsLWW5NgGDym1IMid95eLNBTDakLpV7lvRyFosaYaVZMLxI3/bbe4XZfQqon7schDBSc8lnJ5BwHOO1fP1oPi6nosIo7UZiXRYfCd6z1U0cA207axuNwhMDyg21hADKLX/fCnUFWA0a8hVsMF2/GXqVTKdpwOuMySL5JDEZiuF5CMNE38lTxoa96aTJJuF0y/x9CGCgpei2+ufxH9imTEE4MHDDwFi2ptFkulT77Xk+i6IxF2EP5hb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DtZYfd0aOvF6z10ypWDZ5AvujXmxfDiE7sn3n4u8/RU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vpe/VcId9xvONwwNC3FzLnRIf/xA42CyWuPff329kGIbHMEXd9yoBcgRBXGCzCHgKR0b+alWTmY1HDysQlUmwVmJ5ZqQiTS4OQ6AqfLhMZUpmkkU4xqMRorfWpb3gbBwdwTGCKGh2jr6JBHwClutm8wtUKZXqgt5/O3hImSnVTdZ5VYm6vwpm2aQx0bKjN/3bKQZSDjpw08KGmWnr32b86/xFtLKhDkMbVJs04Ttf0qz/RkpzlptGsm2MZsujvAi7aD/2x0bKjj3LPkYfk9dD0TTODAGb5VY21rl6RxEJzqiU+3j0beGNUazNrixyy8I/pBXcw9yJB/sQs6emTY/bunSh+1KNaQ7FcPvhVZLpLEKBpCu282IhhcvSIxEjzX0QZE0tmd54ELkTlzX3M08MGqJpqAiHYt3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DtllfrvMxgr+SvtTf7EfjHgC/L6WgG6rlJjWX1wh3BY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AJRzV+f9TpequaQcVL8SPcKzVse6t493nZ6ik91gb25CyJxRluLBQrGU7hkrJ5rSj1S3NDGYL2qqVzzEgq38l4+4ls/4dSeeevwu4UJiy0j9XPjCby8SOSMGEuGuAImJZkiVhlUiDRciFpCPVSLK5b2V8QZJ7t+wbPwT808tpl8dzZqTGcSgMe7NaI0LQY/hVPc6uLtdg/G8lZIonmcx+xp1+Q0EnEfDhkScCyRA/N4CBc8zpe0Jkyk7qR18IG437lkcovERoeH31fLINeq0vj9zxlqTRt+ZTKnvJBeE5ovEdbe/iaazTnbFYlJM6QMwLfa1TxVf4F8yYltS15b9bpnvQGVghXkkrcO2GXqKusvh72x8sC70lpR9R7zzjCF1aFj2yg9HrlCc5BFrvplucYDAQIFcXg6J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DtxyVXB8AKVN/Yy9zQZkvU7ZUcLZGd8naoCNBPYFRe8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Tmzikz0wupq4dlX8ei/tBKvXAWqPc2B+QVVK1Fy/AOMY3FgNWKehiCXtYISnVk2P/sP2l6ia64H+Vt9I68OoSEXBf2pNbjKYQMaMTikddVn3sqAcg508gCiz+Kqoe4nJGQ1AQZaq189W3w6aXZk8gJfu21igJ9PtPbuUmLUUyKzSRm5fPXAb+N1yQYseiqmdaO/FlBgBochNcmK3Qg+2BcvMCnMYmSRZ+Td7DULubv7+1pzOX/DCuZ8bz8frjJmWoJA23O+tmJo/QFRmyF4wt7/RTEaN1A+BnQhZM/lfu4pxG6Yh6vlWwZDrqYbKYf9FCcHwBTrrOoabMcGGJW0JeRg93cxEjzH5qQD+F/Ps6UAZPB5exfDkzFDYzghrxRR2aRqCW3vNBdPJTwZlksBHFVnqbiqAzQVT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DuyOhfmfqXDcdVnqQaMn1Pv3H0f68h5OkmQv3Ar7S3c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vWLh2h6tWwhf+Opqg1q2XTsh1x5Dp1VDhNYfZ7FAAL5C9+uNmpqQMIxvtF30rVAIQeirFplYl/pYa66Jw3ag75pA/eSmK1MgSeIA2ewH4QZ3ciOJ4nmAGCB1IXBcjGlyP4IY7Q882oRD63xs6Tx/Ad+tGej0bfnqV04bb7MSAk+AFhk4frXCYEb8WkcYKzzUBZo2eldmWCwUYCgIkCPcPPtQYsOjx3unP2veRRH43lYjGFcWATWqUByrGXsP5o/u32jroUYzSSNQyw0gQmZ3nwqNFfrZO50emJ0YOEo4KmgtGyKDCtun5cmduZKZn5c+Fw0OygSfXSDXq82bKIezRWpQrRIy9+stfcdMiu+O7S0wndr8oz0KnII5xSx8EJrWE7kMa9vTd8vGXwOmQmlrCQz1Ria+nZdy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DvMJ2SbHkHnzkqJNwq+BdeASrRVzdJ5cJQPGl2phYXs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gW5HcIrgyjYyg2iATxuB7nJW50NKLdOMQh41m3ICrWEZYOVW6p5PAJDMrvALv+Gw4POPuYBsWcMSdYlLdGRRxG/xSVc51bSIgC+VIVUYTSKwElUUJ9vUSSz5f5HsQ3A4WVIADz2d6ldxNJOO6i6583mHHcTJ3dA4OYpGCWrEImWq7AaSIccA20GnS45QDU00Flq34TcUpsTz41BjQ4deAw+iVSUl1vtYe5k4SERjfTqB8iFD0Xp3sW40wRZlw+LAG1isNLGeVsEZSsygEGkO1YmX8FavE3bzWiLPomslTYqHHfCMSLxJLvQxO7/16hjtoBe+7vC4DVEssB+3EAWlxvY+H9sOTl6/MT+DqKk++L0QYWYyYUBrVKx/bW6i+Pw9BBDMdYf29CTPYKHqZ4Bgcx0XxuR3bc7M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DvNv9wSIuHMDQjLCD0M52LDadMzS5tgNNuyvj2tKbAQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uughPJ1o/OUKeKCHe0BCw4bD70TmrgI57qOUGxooYDblOThua1KUsbe1esw8M6PZiKlFeWcrKV+cRk9EFEtQXqkMjthU0VgEJfJiWVHC3ECUPVA6Fv5exlqua2j18loA4hZ6zlIN9oU++SYcCB6dnLdH6yJgblXgXhAHiS6ZXhqIcncvFqLtorYq6RGIA0d4PKqPZt8CxntRxtIq0L/tcQOixD3gOwhA37sa2gpeQoBUYKyxtfngqYfVvHVANcC/Op/UOQvE46pq+X1Ld8bqck1KL2+zccsOcoyIizqEZbUr4D9at7RUa7vm7DZ5NPgp8kiQwbRattzx3ZTV8SFe6ImbBsf+vdl7UCZCNL2TLBE4umEYsJ0NM3+Ziv6B/xGS/+30BINvcz2bLUz/DPwYdXWNl0qSI29J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Dw0nhvWTcRJuFMeEIqEPBvUhqNj0eIYH7kArU/cKQNg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xqvqaD9McCuUjZLCO7tvQMm9ucV1xi56kTcApALtSwqYqSBUvm2XmC6e4dCcnfqT06rbdnZ1eyTD1uz0aJaAwBsi6ScMa0pjIUHTuV843hNvaRMw4yyRYjfjPS6Lz3nE9n0/g74rAJdswIxGq3JkxyXi0RM4q8LZa227hFRkud4TnvnB6eUURvSbmHRYikB51B6Yd28aOZxzBxxJtjweaqDnczwcrPhK9tZFYQFzdW/uvRlNLkLwev0AwVJoxkExXRb7nDgDP8dZifdX6efe4byPT7GxGgw2QRYde/bxOZVa/pZOjJhhW5ChmmCTV7kAKQ64trgjO2gthY6qlAvnPNP4ml2/eEF84mPc+PPa6ZVPqx4bvPwoAEmdvNFrG1vHu+DLjqh1wiFNdCGcysA2ItSO21/vLAo1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DwYKEQMWH3d7HKnRLkYpVDPFZo93BOK7JSaI0W3vuTc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FwqubaIe/vqd4c6Ht/2lq1ptvozxySsKgaQSnLPIYVTAaIQWV+mfkslqAyuqhJyW+L8otaQ7HH/9erwtMUC3REgQVCXvcfIpwxt/UxghZSRV+AYf3zCFZG45VM3HujJIhvg7TiV/EGU12fHuYrH3r27XtrXBHeSMzRJynGWsTlDSMX4QkKT3NLMq+F2mz7c3Crsj7/te4MNxdGxUaHFOWN4O4uVVWGIz5OOjLWdQpDT7pmCR+O8fog5leTuCxEB7IIfOX8KpXAvF0a1hYVB3oI1d4z/TEIJodCHnkixG2V9wXF8mKs7zzB0L95+dRbn0A63UiW6ZeI9l+7/Q9HktKwIPkQIhOqGYdct+3wrD1my1DTZZwq3s9bfsdmNDxn0XARs5chc7HF9LHiWoLwXH3W8Qi2VquCPP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Dwa6SN4YwvX8C4ULj6VPzlk8936yJNg2F4b8THLu5kw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/m188tZUwsplsRqnbADTvy7J+y8v8yMVFiQ5mq3gl7McGxqhhZ24y8+9D1vfVEoIOsy2w54ndxHBa8O0G8q+U4yjlCkXoz0hgPJPRQluSTxlR4b7ULtT3wRmIVqYpM1LKkipS5JinLl7Pc/jlLFqbEPuiBF3N/b2m3kncmWJ7W/c7o331RBKGlpgOGZGbGZeDY0o6pCNF2urziPps9/9lRJKAxP9TtirdYBDC9iWhTD9c+ozshYQE31/jYGppadhTgTdktYsE9WClTcwKaOle6eM1/KnHGY9Nhgd8CUXf6oUGthTI7Ed9poEpJnAeDDyIkzX3e5v1998qqGnRaZ0gxDTlAZexu0BYattmrDQm0KXkm/MpPaEvsyersFRu8thAjsnvVfsd7uSBxBohzKI1NTtJvzbxn12", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Dygdnh2q5e41R5CR49eSdarb0kkMTQsmyIrM1Gndaow", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UN6yJP3dyMvVNc23fMtFpMZMunWSvu6BDGVfMgi2tnr4DvXYRwuvGieES82na37yU4cK+U344PFPdQ8nyaYSVBSANfeyWX3zkViJbqA3h4iGhxEyfzgORbXyDr9h31JetH4/TrIPk4lj4S+EXuo0xaDJvjWsa4NhN+hIlUtLa6rhsaHWxAxwgKI5pGEBcEDrRr46P0b7LhjBLG7HH2uAaSq7wAtlIgRr4mlV2OfPo5YKkSOIl8dXERPtVvLKltFLbhj0oti3n9V9EpbhMnpiZ6JnfCC5k6CPfwj7KAVSIDQ/0dVErrWpPvGx/Ug9wGZp+3ju9Hu6gQEkI01y9z3ddHC/0+PWw3+i1OSlATPggzv/SRCUTiMJt4TMC8z5AAqHOzKAAzD6/1+Lc1bRKs8Xhe/hFoWPWAte", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "DzXSDDbC947oDupBsbfvD8iOEK55weWMbdC/bwfkq9M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tNAW08rzZFT1lHZN4pEcmjgPK2X225FR/84cMEhfbNMdVlU0g9w7NTx7TkuvIt0dHM97zb31Q0/uumLe/Wd20dbP+/9j5E0h75H2GGsxa9Qks/LWiUr7f6hZmmbXlwFwizKSc0LokFoW0I0qSh/WEkYYgaREBL9J2NWyb3kfur4UDX9rGpPbAwXX+EDBZCicOKJoN8bvoMGWkk1Bw/Y9HP0frepNYNexGER+3HqdbrnkLbhEF23mWHRNVhziElqLLNZDOrosnoeo++vxsXInvwNZEVxNIhQaaASXfNiAs+2Iu6mFZoQ/ajGYFU5rpvwI7qTkwU7TN/2+NRddYBqFDomkMxPRtXrJT4Aka5ugc0nXhhPSHC7siNSxfN+jn10kkiQu+9zaoDpTDN5lHaprDKOmKLQJGmyA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E+HhcVcY2ynjN+eDlqVr7HNsGvKy+AZkkpzP0jcI6N0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cw9CAeYEoFNUxKnK1VOxu7fEmw/PGB209t/mpzHr+MH6EX1rpzjcwRkiVLXUlejt6tGbPZ2tKPJ+bRvC58Abqp3iZQEihXsCdYa38pBjEdL4B8eSUpN/4/PrPKpcwdzhMRGfQjJuYZP3Yi7z4G0J0ZCJ1aJWNWOsRXNd0zsmos7LKv7w3Xz8VqgDmRVNP4Ti6SJbFkusNAd0t8PwaEom+60ifhQyqPh389XwgCfDlHWzzOrmHmdCJq6Z/WR84MDY2lwDtGTQQNQw/Mt16diPwamBVdVw1i7KC8h7+0VSKMZ4ycZDZej4SWYUIGblXU1k/xVjg2wS6DpVJQCoTKOf82EktA1JdIJpS6GfFf2ThNpNfsMxT55QWKcDPOnkpA6pzT8dwgg43OWGiqQlxIrbntAb91WOI7GL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E+pMythGOA2Y+XfFKrXIRljaYfsegh5IurPfNdVwQDg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UV3obK3L0lmlI5/9VSw+WfJfNtDzSBwGhzZ3PNej9KyGmRmO6pKxcrIjsWHh/J0RYva4yDAx5cj2F3eCzcrT6xSWPZsCkyAZyWtfPTPohiYg/4Q4SW5dT2DnemmVjIUVw7wDmcZhY0/LJK2ThYM93CYljiSaUIMzs6TvrQOw56+XmyLTcwnIE8Ckvn2c1dLkDFlbTv53cXfjz5AUOkoSb7h68zb/5TuULrSgI+TgOc6BcAVe+w5OS0HcBzZ2zxLmotSziDeS85qJESdSsnyRdkCjFMJKESapXCDzaMZmSFBEL5XJyS1d/sn3Ta83+XlM+nOmw95wuGQMjVrO1AKmXKBCUllMXpAv25kA7IkK+cQDxENltYft3MvZgaYo9T8cpavPyg+e8MFhcsK7aKLPCYF5qI0+EUto", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E+xI1M2mykC8hhZER7UQHqyt6nqkSsnALzXXUmLFvnQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iEcBUS0tbr1GPHv4xIqM/fJzaeO/epRUfv89yDuqhOp3oDvuEVX6WyEsdDESdqz5JFOdDaK/J+1Hetshr1xypiXRosmp/QRc86oeTETH/pKF9d6GRzl2+nVesrr1IwoJ2vbg3rSNqfLvYhu69pUOgEL+5D6s0XPGySVH2y3D4IP66YSZbgXH1B9I3q5XBu+XLtE3mB1sKmlDbG+kQGYEkmFPzSvJ1zBH1hmxoYAAxztaJoJp623aPDxawMovx1ackxn0KUUFGMa4ms1M+v3IZ2Su6I2/sZrucRyI8opESCU5gbc91iPuQjbd0rgGwOBZRYHQ0a5w27sh5Rc97Oml25dzaDniNYapkhFt1SHREM97zPddr0wSce5tFTxG+OCHeCTf1X6pLKyIV8mhYnTejjBmonccF76h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E/iklxH9tU/yW5iS4VQ8ycqLPKyl5LOHywinBNCUo8o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FdeX+rNXG9AQuQtAbKG4TmCnGiNgir1eo3IxWh/re1XOX6c2bViZXvVwJgmOdFzjzD7d2Lg7S6fPV7kSvvoa3QfsAAXqmqgjNaSH4MUtmZxcsKox34K1JA+IllGTNxDu7THCmJj5rStWSGHEMC1pJGqxjX6hQrD+mGlrPMlaj0tPuDRr73ZKm6FSqaIQeVTD41E9P0qu8LC88KWBa3mF/b6iHwftlJwz5C+lVwZqeZ00kpptTedN1zgLY2V2AwEhvY0Sa9T4VWI/7hjATViHwd3dA81i/5RLkJ8Hzur2fRvbYBQddE50qR4+yrXwakD+oKaZTeTsSZmmVk8zliIZXYEXVoxwsERldJYKUQzR9Yfokh3UGls2ZFXoKJSGooBpcONpaS7z6rZAUTwtiiRvTy5x1KG4ItZE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E0A7zwq5pvUfmf4usOyRX7y0t+h/hyjhmwsXBsrCM2k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0/WUaK7FiVAi+/HLS0sKCdaPG6AkuOSVv8ZU2Oi6Tb+tRK6cMhQS+sALVgolZp8n41TGtz5bZkk9QZa3Y8yTbR0WrnnWR/ju6Dn/wHDd1mOHvInrLxCZH8YVpxQqEcjyfVyw6y9Gu4ul9IQA/NzHiCl5AT9xSIfp6HMeGNVg6hAui7unWHVlArBeMFrdh+n3xdYXG6igziA/JuRg0kOV0HIs4OZr86md8oXIPx9ekON8huSjp6TKm+9QKgWfbsqfVhZTmVXBEuWl3Ov7aOdu5ZAV7lUdDxGAtn3FNGBY2csIQ8yB79yG044XH23xVLVhciUfDMkCQCQ0K0lTSSG0DXR1bcrQ+8IU/twFyjNjfipKbdeWmj9ha/DQPQhhcc0diilNT2zQor/zWUcer4pOWYJS9kpkDQ0d", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E0GtIMyhkQ+LUntxRh6pq7cmZbfZ/4wftDjZZMp0Wu0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VdP8UVQvraWLvGeliP0W8sTHilz21RQhvtvb0IDjXXuzh3eRUgDQ9A8D377DAoUJfX6SJUy/H9ofpvqmGLlBEGDeIjWoqcozkE3LbONd38mEyJoZcHhegqpO0u8wXAOWzz9ze3vGBzvSMMIceIpv2bvkX8hDwh6LWj5hS4J7EUlS9eSqMVardoTVKAtAjHGolZiFvjmx0bJi+JdvpxPHCn/RZ7NIzYte4tuD0BVxr2ZQ7weLKnRwqlIYTZ/+09ARy71hHYblk4Z2kD6tFZkUu34fXObt9bFe6zPUvXJPIp2vsmGVEWEeMlPrxXHcoOTeR1h6/FKPx3oXw/boMnulL2bo8WHETcC2P79vZE3LIvtqvYyoCQcR7GTE3LN2SIOp5qmLM4IAiRQH9xxFjHQpd08tlg5gZfmy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E0HTwv4F1qxHvKvMXzlqXPOlKnIWQLHo73UrDAIKboY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L37401IsclNo25GokZvYSycFhDM9k0worcm09tFmi9c0GJauOK4mqAyXs08GLgZOi4dJX2LwBSVFslHI7RyXdM26T9DPJq7bXH33czi8cWHG2X1fkml1h+vVMR4nLYQY6c1b2kgwVHLc42HQcALy2e5bNMugbzEBOvzCZ9bT8A0nf1Wsbs6cbVscHTOBhmCR4W1nFqmfYPo++DEPahXnjf+uiExWwMMvEijL+CfKQ75LtHWXexKFHWPURyhQ5AV7Ou8brDRWgagkcDSR2Ctth+e4a2K1wN1Tgp237SYCd4z5fgz7vd8PPvSAKcYecp5/Ybf9kL0dS88bJBvY83oBFhjoPsIuRjHNloViM4xj/mBEbj1VgcQs6zqNHmV+aEmmyv5kAtPbEkhfmJ+7MVQScjjBSol2Bf/X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E0kIUG7dUO408Gej0ONjnHTH3YVCh0G3eZbh4ATM1Sg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AvCALNWSufbpUvpWHZ0khn1hUCsfPeXjnM+PC3+5IE91ALsBijn9LeTZIJSbzOtr0csLomwfVvv3Fzx1C2wY/sR5QR1GyHVX/lL97rWG2rk6vTcK94t3clV3+Phl17pJRAKIGPsggfl/bI5axuHJsW94Bu6zeIIwqVQqD5i/d6LVaSA41uWyrgHFFGX5c9otYFU15Barnfb+Z2aqzNZ432Oq4UWuwJtOxwFXtAsUujrdy3JD75ENFhTFAvPMg75ZLDl79Xs/Lsujp1Qm4PxEAqwgU0KTFjnordtvpgtP3YGZjRYKo82Ro5n8lt8Uqurm+HglVgH/3nLyVxf24h24KD9RtCYFgQ1pA6rkfB93dcIua00247GqpLA0UJT6jeOkCFpDoQkA76mQEq7U7mBPA9aizY59RcKS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E1TZoaaY5eA6itwg6C1SGXpeem6fKxcyFOZYK8HcrC8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KEKqqxbsMpF8FZIAotT/FMR1y7AaVTOzmZCeEHEeyGjheJah9XQXBSpre825u7W/rDXDiNnSEwqt00ZLqLI+vNUzidt2mxlJyus45/Y4TRz5D2wMcoIRydCjAC10kVRGM1UCFoPrk/+eqv6yc2vYQuSIti5r+8htL6ohatJZEcmFaHX1195NJajHbNceThWvrkgM/3rxtx6KLRMfAO6lmVaBTwmhuRofnzQfODpmF1tSrcwqrxNDCA3qsl/KBdfl6q+FvFI52WDQ2xzMR44eWdCw/ELbXOOKu5KB3+jQunKNYepY5jb62jr8Mnu0EdaTzgcDLBRVijyBM9R1x0OfCcqhMQVj5zaFttxbKNhUiC+VT/3EXOKqCQmd7V79XUs+hPdWdXWJOAxnDu6HFGpKjwDW5J+ZyuXM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E26X+pLLLIvTbKN4IVQenB/TeaH2WUKq1JidyVl9PGQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rXooIvmdVngPZvoAH7HH8CU2+BosQttVkRcWHV0vjDe4mUZn+7VgsIrYMLSwX8HHPN3yi9j7VvarW/MDODeDhPzGDfbs0lDBUuSV62a47TVm2gTdM0UERXPPr0BwEsMg3480TN0Qrrdaw2XObyhi2W8zrCwFlsUHEhOFGRHYlFm1W/H0fpBvruDmVdww3vOpnlCl7Kl/ZqlHz3yNMqMVcblQbI8RbCELe4NHIHk+/hLZGfTv2HPvx8HcA/u56sCkZxz8KP5ozmKUGXgYtYcdEbBsh4hyrlpvie+D/AitXlx/Qp8GoTJGYiWhMrhZCUgFe9E+fmldY7jHZo3hBDF0nxyjQlVtIPQOOPsjNQOONItY5kj8BGWKg23m/WCV2pAbVrMOrrkXC00CrYNjVzdn9ABwZzH+izsj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E31egJoiMiPcjQQYl/CrXuzTa/11WsOVkNn3rfxZGhE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ti2oPTKNeggksheuSJShGtP4srcTaqRX1rDw75rCgGHT5DGw998Gj2QDxavs+LtO5v+6V8lpHbIcOMa2QU38+pm1pWeoyK6mtraXBg2YQE2PoA6Iy9hCZ5Icm0T5/Tm9KQ9uBIXqYhK+pqw6I+Jb3vTuVtV1AsDPLc/7x/oWCUugvwGSogrrN+IcWwPNJmxPW8h4PeDPsIgzuiBLaRtG/oWmgTMGXv5RCTRPOMSqIM3XLN8c+FklEDyb1qirVCo1WPGO8CgNpjR58T39X6AIehkavGEA1xVqWfXR7YbogZzoQE1xU4qykURU+gidhx3TgE/LGUo/W6khpWwp2K2w9O92jQhfmWPDpNOZZ4PwIYazcwe/39T1JHGgGL2QXB7MN29MQ02jh+WTRf+JBusmiPwi3BDXWvxS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E3e/OTJki+WSWzP8U+QFfB5OQZ3feICzpseheF/Z4K4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qeKX1Z/vYaVjDb9gSV17sTQQOKjCFSKYp34+FlfxlsjeuZlkoNWA772UWlieQNWfBUli54fTdj0qhzdfRhDQfIJscWYZyHsjELXROZuNGJoTwRJNqLCSG/EVRY2p0HeEP1Phc1CyO8fD4MXpZVxX0QikHVzw5IALYlcx7pv6dCPznO4idRqzGcCCjhYaG7veXLZutYpEpLVh/YIlIRn4b2555RhA/cta8pQOIH6QpS76ZpruN4cFqx5N1qwjD+oJW5Iak7sEprErDerI4wJHYJfFok/SxXvhwSXE+zGTjuseMhYqsz8/n47FSq3SkAqY2WxOmLOIcYtTccuG7vtv3G/ARWjaKp1YIFeHJsZcu3ajZl9Ulh9CesfOLFfA45kb9ZpWPIjY50fsFbY64DqOllBUyC06h5/Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E42xU9uyphzVK0u8pd6l+vTD/JOCEiFckpIr91Z+j+8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rWIe3x4tQ9X5lFvLV+fsqyO1eWHLCb6idqlRqtz2A7RZZVcjKPNztxFw2TnovPY45e//FLfoaeUPVxrgaiRk08rOMOrBndHoWpX3EDeKdtewR4Q+nWImRC8P3pr03a/dvR6HjxqaxvDbdtFN+Ie7C8WuO2+VWmX+0tjqPDpQ5Do5e5UkuBGDetj1B8Kz17xOqxi1AyQtDQ+xtd5Ak9PhVOnQ1Dmlx+Qpj9slt8lZkVkLmvLhoFOKGlXqE6989wz8fdi+XSuI5p/QhnVuQIIf2F8TjFOYoiEVsqrKc8R+fiHnzvj4y8S1VBFuqDz9iSj+MWUOG2/KhMDllsuogmspoCEGu1I/jD0r/DPIdF+E/r+WdSVuJSsVgSMjMYFihwtlzL0ABUA1h1ErCnrwWrA43gRjX07VOnTr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E4TfEYIX6pQTk6GCdfyuraq01+ZC1BJYUtS3IFueR44", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "coXRILTucSTbjQ+/e+uDZQkpC1yrsJ1bUDaNHq4BJkEE+DkkqwTmjMGT2ml7AjOXyqz/NTXnw/nXdeM9zfJq7yqERG5w+EO/Up9ZBYsriCH/I5pBzBpI/d8amyawpiB/g93tMQla0VQPEvpgPOvWpiDZdBmlYkCIvBFsEfNblMyQ3vtE8np0NXKZGPa3anMatxs/6zvWO+++K5xnAys033JlZG0PsYWj3AouZtm06hss5He0v0zYUeESg5CvjvLsk2X7fPXcLIG9MaH6eyaDSFGw+CgKaKVvl42OzP9PN12N5JBf01tlBnrqXVTe0MFL2El0k8A2ibzHdPXmGfOL4aIU6D+z4HsmDt4xaY8uWZWvFDHILp6stgMiG4Po6f4qJaMRc17B/gyrxkmiauMgqimfxcwM2M6f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E4YIs9JsvVJUdUM8ltTB+nQlaAAygb8Ds79vAO/+Sso", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VynJUIw2rXIbUNR2ynXiJsOY/MNnUfsYHCLPGpyZ0+wFWY/3Np1AOpxJ1KAmZjTp1mfEPOeVM2bqgiIYB67wDyUSR+cbgXuBngJpmh5z4gzU7STPMwjIUuzDt9QEib/lgN8ngqLabyBGMq/0+GSEc827wFBc0pQdM4dq9oIeqNhdE6nr4XQGsuyq7iGT56vFOeC5DDVXarBwPZ+VfjZqsy/z9ipGVNlz0GvphMGf9ZcAdVhMyh3SV9KiZYlAPHDnCzMaNbn2yBjfej+XfS4poOCbtxvP6gu0rcRX/pmIOChGnLGuAU3S1w/e9GcTYyR07ANmeBpfGglMri/H7EKpWFSXyXKaxI76myEuAxLKLgfHZEGm/9GP2gj2lbOW46fhjLaDC2uDxcH/Uq1p6lhwtFuHZF23KeGY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E54eSf5KGob52soYRUl50LqG/4qNgiLGD7FcmfdZhes", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uzVyV5r3R7AXhDHRCWfijhPmJ8Ve8vcaYjn6iRoK6XPJppTNIP3SMVDibYa89gEBa2DtTYc+Fm5NslWs18yP/wgEAF0tX5nNMX+Buz/3wKcYT3rFMT6iTONKt8fUU4T+xkkvL4eMPm0TbtfxT8b0+rMN8wZQU3nYJaakrtzg39SIHL7E9Mf7PMBJ/JKdsKBpCNdZBP39o3d+0z9yL2tXfX6KCyqr0fw2dvFf9kowe+52dSDiSMkkSWSxI2609gEFHbEPdNBmBJnpPAWrJarrMP10DyXbzWMU5DAqedhqmLik1dmlQI3ve+PP/wgLM8sH1UlIi13c/sjgcs771nEtHdAU7Co3AFekSNCPUfjTckGO5drFHsmtdcztNdzpERUC+zK7/wEoF7iwFb+f0nfuuEAF21jK+04L", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E5eHZsc/lK303lcx5clqW13TPxbmZ05yNU6va6/rydQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7X2rN84dkYozmFGVwVmYN2uFYe++JWk6Wv3dEqmyyPaprgYjcSaEJXJwx3nQ7xq/+mTmtqtqY7oNWoIZNcE2J8Tg6rOFx/pPjVloFDieDSNWhP1LemLnZGv9jjQ9Lu4JDpUCQa74A9EZykZs7qy2rQ66zotUbCIthZIQdl3lHqpHaHajvgf0ksq9WZ4vuj+8FNhpLypn5v4G2JGasbTofLppNAtJKJqG+fSmQ9uzitVo/+B1NvaNf5WXKWZEGLfvL7NRkrzQRSQxlq3g+8o+627skY7CoL2kTy5qqip5ynvjMaS7vs1hRwPfxmCM4LQamvB0FxOfcgscdOUMleoQA5iAhkv6BX1klE7/Dnx3Fg3gjKrJDW0Zc/4CmXOgL1z5UkLvYhC6jOesTRa0g44EU/VD1btgdJSQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E5ivl4SnGj0Q1q1fAfbmQg1Eg4Fhd9oEYjnvfSquNeE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nA+Jq0bQN2DsmqMSmStlqOKITiJFKf8s8JpgJqNC1IAUVQgzdvg0WnjuYZT9XCqbuLunBnTbbhJw8YGHrwTyb3GS6u4ctfcK+lGNAkrG5TAwvW5HbMrPlzmoFUgasJn6pnbEJ159dAuoGd7c6A0iXAwIpfhKG6QVKG/7JR1SkN5dgFqSgA1TP0T5rItVM9m70ARU2ALzjFVra1BNg8AZna8mQ/pgURaTBAzJkBvy/aQQl2b5TjQBwD5fViCtz3wrVgUQ1Bk544cwzh7MA13CWCWCiNxbYEsBfOGDTeXUnMsTmCMdymrsCa7tZIlQTZipx57anHdW1/T7wzz7SyhxfC988hE3H2BgaRSyuqUlvqTk01myFUDijD7MPBa/rlZpMMB+tMBhVtN1vWPHH/eDzmNsseN8prn5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E6lbP3kJC3J79Ui1kmBdWaCaZYZ04RKmD0O3Emxf9P0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4CYRqJRVzkFg+p0ZkQfMWfLyz9vLW394c647XBATFt4nIgpegvJrv6Y8jvbhXPT7mkppklku4s9Pn6i+uE3L6PDhxBYZqqwvYHgVV1uEQstQtgHlqXw8ae5Ob3IryNtgbIDbUFF8ctlFulCuxPn200m2PbPWSt9Gq28ttjAmEpy6JywVt80eCC0S1T8KCbT7TAF7CJDutyJvSvrKbpucdO6rCXRzTcbawJxZh65K7ozCqImhqIepiHs+O74Tz6C35soAPjDIDSAmnO7JUNm/9N4i8MFLq5nwOyQ2HsZeS4gkUrMihbjeWEmVUiPDjoyzVrxqEW2+x2KujOaX0Cd5D6l2DObc1URxEGJzJIq2lgVARY5gxJd2WzLzzXlAgU3J9Qn/i+gA6o0J+8z71FpWRIeLrzRqvGyr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E7zFO4SCDQBktaORJNKnN8jsSErHfpmiLUzBk1hI1DQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pUAkFfSicIoYI0GKCkk4y5hLySj0kGCqK2GHijjD+8ipHNf4AMEap7HXN2pQf7qN4RUti/aQljJ2uFxazsTTqgbPPZnphzG/mZ7WsYbrqmJ8eWveGVkPnfX6vqhEtW+iom5jneVoU4Zfoyv2fgKvIY/WTPJOElMmncnGXXVGdll1xc/BpJdjKE8dbhltj4D1sfIUtpdxT516HrT8bJToRIv02YtAril6eGZLO52V0ZDRVnDLFrOpaD+x3KDkb7krF92P6C05KLjLDk/7mweGgIt/MzWXD8oFe76Rg2ggKeFQ8N10AeBqJ5cKGQJNBDcOFxlvqpiCbwoj04MZW63WkreyK/JHVZGn5OnE6zNj4QhaiI69UkGqzpVSKmaMdoWtBNVAbVKA+WOBQqoEHmrQsedfyLcOuY2G", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E8iiP2JUm46sVofnJaQLtUPaXqYH922NwzNG1VOEdKA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wxBF4vlKBg92SH0roVmhiVv3UkBVGZOpZ0vlmm4dKdRcR3iEn2mLqiK/A+NpMNf52IoIz66xX/qphxDxiWt1L/Ia81oHZVzPEZLGNXN9ZktQCBUhZIbkE+MFEDWuSwkaUHaXfOKIWOnge3z9QFKsC4pn2OCGF3YUUWqmbd9tkjfmnnIKgXp6H++e0QJqUaWvwOPvI7BbFX0V/OJtE4dSHM+YDgCvwsBXTCUOLJKCUcDgNCFyQ8pVtWiaxUjB0dVsPuKv47gp1ogwlJKPsBKBaOnxSpW/+80hdVcTtCnxjURBQd4Ena8NRGxjVxc4s/qbsqEFGJSbpnFVvEls1rnqcn2QfMpHERqTs/Vmiu+5JEe1rjHLfUw3KC0RbyA35G7L8wQ7BzU4bL+YsBv2VNzrrW1Zw5BLGAU2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "E92JDpsUaNfC42mU3L9KXIqKXcK64/j2L0z8yzNOXBg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+5Sr9NQlDubyG9qh9cS/StwDi0lvfDggDpmqXt1e9LhpEVKLQmFeHJ264uYzLg0qvNXtM1ASQNUgQmJLmy9SACi5maLcZqN0TwE0IVQCwBAdnioa1W9mUUR+AZPopedExSyLGWFNlm3p0EJFMS5C3OH4aQY32rAi44N85ENgCrlZo51xPSbQc5/PIk9sn2zndW9bwkj/U6Gax5x0C0kdD3szuBBvu9TnbO0e0BLNy5qNwLEhEYF3Dx78bEn/L+eW53XqbYLiOz0CrWZtqPPMa70LOwFUg3XLThMpj+Iy683WMTx/6MSmQqdsZ2d4iUzUDTTM6w/QAVktZsqQ2cYCrPkgPIL7uqR6hmPGfDa/cycNQmr8+DvzxWV8DtBcQJTKS5NYeCwz5T5pxuYWe+/JpDv3LUnbTgcy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EAXylIo1XNh+25D/bnlDUixKGMZPxBCwU89ynwskg3o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JTp6jRbITFLkquVODiIHA4HnNg1uMGFNMboEBWgBzHlrexOokuscJSqchU+BRdxk9WrSQxTZyJb4F/2c6BF4jZaDMuhw2t+NiemWn4S5zq+GvlW2mQQS4UKPv57nJU9YrAhWFXFsHDQsdEYzOJHD/Gm9D7UiAoD34itO8M7tQWTaTObv0n6zOCUPAKNxFbrwCG26H79c3revktQF4COl/gb9bFg41Bxn2bcBpUkA1/srDv+rAM+95g+wU0ljTxJ81RCFKL5feDs0/XQg9RzqwxjEomZ3ViAXUYsO6ZKtqJfHXj5W8pPS3fhbK7aj3LVU6TvCt6Ts/A21Nqpq+RiYy1VrYaQw+6AuwSwkBG35wXvYTsJVJ5pZgo8V4SF4SXhOgcUQPxjdB7yUDnGMlCTYzL0B9Vm/+caQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EAcAtdrkZTgW+AX5cpoSACgdGHYm9d3QMhOp0jmwDok", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WoQlwRJ98i2Bh5j2Y7Dv+3JpJRsxzk+iaM0ydTftstv3kjIyKKoNpcmyRyZu/0X0EgjEAGqDZWu2AEALTODg0sgrMk55ZRPP8fiPuarfUP2GblLWBicWyg7fhvvpPOCvUJxkU1YeMujFWJo7HzJU2ANeDRk4lYlNaIFl8Zg7YJmvVTzXnjx6fbUGZXntYVHKiOKatqBZZCUpJsUkvKLrrgATm/ptslSdpdBsfqtpFRohWpub4H2QWuihRPiE0we40VbNyDMVIqATE3p8T1tnh09GvzCgWsOoh81S8cO+HmJVxAfjZMMC/vvOEEY5knNQ0k7G3tPRSbc2dMTFzoopnkMXwnKoeGST5rrJvoTzv/HROkMFvOiWl5e0Z4gxaR5W+0nOy+R0FPatFjw3cfKa1SXsYklAGPB3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EAmrMlTmEDABWQMIsMh7ZmHjBMjb2t35MJpkeVM6/js", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M+AfWHDAjWXjaLB7QSZwxuKounO6YmOMEBY4KOOd4MFxtrAZaEDER8SavzBd9ZzonWgBW80Vgs8nbM8cftRU6Yp2jQ2zLbtd4AO4J3ViON5onOrLc/UKkZ1B4L73dUMs3yEJzdeceDwi04z5JB7qQQtlGLeTmg4XSTOpz9hey/3hg/y4G7ZFYt5liZgOt2kkPwKykrfbjE+OJgkLWR7zRKpKZsDybNJ+e8KPGkvKc2LTwL8BbFIlYuAWP+1du+70pBJ52eK1ynIGJsmHi4ivH1h3Nr8cq93yc0BmwckiGnzdM/xvDGlp3FkE1hWcy7xlQeoBuc9Slgw5OOkyYtA89v0ClS5YeOiOAvFOHtE3r1FbitXQsOau7fWMycCrcB0KkerJKHE+lFQbH00uA7/TevgFZrxawRRR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EBBDqb3O1ACFubyN1p4oWEfddqZQrNNn44icVSJ0Q/Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pFEKLLx7qrvjgJrlXzzqzLVWtO7OjwhE5tDRzMAaZq1Ks3Rk4BP85UVHoQpY0L7ytwiQFtA000EFeVcIHDmrIjkd0vB7GKTALdLSDKEcRsCIukirBXom2f4Sumrx1FqE++ScbPdMpfb4g+bI0LMEQQ1LOESVO/vhXhwo9/4RA7+QUMtg6sXGHr7tUSwmXADV7/z3O5txJHA1LaP9vE+vSqleUHGqwBiu+Q6DUCvM0qF6FY2lrV6hsmDeDIbnglR9ODAOF1QHXyejcNVmSx4ZiXKKsD0H1NM2BcWFXr9j2ra99bPyIg7Cz/hKY2akEK2zUfVcMk7goacEjBlsHuKq1ezV/UfIP4/ONkG4ebc3zSRZIrJ9qYm+FMOZAs70ZKKXIhu0rITroMcog7jUGunbnWWMQUQrh3U4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EBYz4wFqyg8GA2QfWI6HwmPl/JTSCihJlLdkWCFeY0c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "J+zqn+99iZSshcVz6duyilZhSu3OfYxCwkkXwrq18Xn/I5FCZt2CvIWwxW1nUsDbPYaTy6Xk7B6mnhUaisKJqX7cAm0JPHgEiGFB7ey1QIRCzfU2tb0TzuvgY1DUkfRUQDKUZiRNcQ6lcaRZH4mBSPc3kSmwUMJeXFF3mkhSoriQzmIvuQdcI95cn4yqJ1v1f0F/GhQXuOYZSWEwGLt2Z+5l6lYLnucC7AGJEzOonQnIVf/z9r55Tgokfkmh27HrwIiOapQUdn0fY5DqOlmMjXoxemRhPh5EHx77LBVm2qOLn++m5aCmNZI5BOrA8nkV4YrDUwb3MAdeZVRZh5XF/89E0zliQhB/fWFbjeCoCmlxLpvUj4DB7y4Zv7Nk4qOfXo+bf/YcrueYnU4JGCHDyqbYx1ZZ2aT4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ECG5B5TntZif13CWq2S/tI9lz8cBnMhhZWA5ybFmyKg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f87KyniL4Z88ZA7PHBoEBKevVc/vNqSuG0EasrMKrYCKO+GavtIHhxVMLxOk84eb+6tHVogF2LNubUG1xuzKKggd+fC+r9BGhdcJAQvrGiN7xkeFC1d0qozuVXSjPKoErj8ClpiPgybaWNzbSSyqUYxJ+EahPnZx2r9DjdlGW+788WdVuK7aCP/yEtVZ8UDbwa8l3WhBMSZavz+eY2N4agO0bk4Qihl62DUMaVCdvqcEOo8g5zjKteazcrEHVI5QHHacOYUgU+UaJqZ3StjGc6adoaQ40/vtH6UGgqQ+P4ioemRqeYzMJ2cmvOB99pKM4D/iZEO1XsO5Ma9fb6nmQqwOB8AEIALDx9j5/uy+AqZ7um6+I/7bJXJF9fPTSu1uPcGcIS8v4U7n1D1yKqaDDfeGyCORSGEF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EDV9Tu80SdBes72C8EjFzBdqUmJZKj15wmGgC1PxSLE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lMzyn8M1mcYeXuINRhxo0xlnhV0S+FjLN3NU+FY023r1FJ94fPLYWBDoAiysYR3h+wr8UmMArq96dMZQoK4L+yrT/NiVbbk+/gIE4ISo9mteInjqkdKJ2RWxUvRpD3kf/+PA033CmRO7cGHlXWNpXdoCILckgqTz1n9cIBxQyhSHUJn2NBLHyoP32Lsk6XMfvxzegfO6VQscp9HON/kyOS0tVs2dpnA3QfI48WHzljimHdMPMZ20njQjI8IkS1ytSR7i3LHfMQnfJYTGhkyN52TkI0n/X7Ax9N1gKNoxd2EvW4DLPyfrJifiecFRG5z/IcZB0QaIVDxvf9WICHxW+C+NlA7KmbQwtRMsSj80+tt6DFBe3urLwYvDAqbt9nngFq5g2Yy1Kb0bdbYxTLQOFey3PceWQOD/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EDvndSwxXZeDePGQdyR6k76eJfUS2cBbz6x4Q3QNZsE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7vymWG6XJzX7QFouGCkUXy7a7SpuLyfGHY4x3lUVL2vBjyJipacUPa9gZr1ozz1lLVbTvsYfY9fLGyghhs6eTc8VWj6jEjM/wwKXmoWxrkAa1Xp8um7oMzUTLcDkvZGpUdw4up8iDIc+2Jgp5mzQOOpwFsujE1e3AssthYntXo2GgHmn8seEJ7tDU2ZQSyDMYqkAUwC0raJMPopSG+jsFQ565WGAmykiF5WcLIk+pSTQKYlZ4Bf6c6gd0huVAGdYTmTUOr6nXYeO1aoBbK8aZi+xhOxpCMPXrlzBxuJhfMwxcY5z7aWuu8Gl+FDHA3lKW9c+Pumjm5lJlYC15Co585486q1/BWvWwJmKZvUOBE5DaEID256CMlIDx1fvu59+A6v0WdfFZ6yqN7x7bLUMaVFy2znQiFT1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EEYSCbkthaB46U9phZdZcCoPiJx34X6y/7Pnf2dKWug", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w+nV9Xrf2Sp+OUKvmKWFCUKGOJitfacUQfAawkJePuekxEW6lNqiBUfKOYt1d4+drcyAsWmxjm/q5bWV8cVYzZZVne4KShbDVOpm/7rupCCdy74Oj3De6fM/8oKZTkstfRsIIfDtne11IjMlMvmpGfv1QrXyHl0zOKnK426P0725qbyWe0WMuetSv2qmwDxREkBW7jNZk54Itzw+bOcBPxg+UFZlwK32f1VQ2pZTfXnL3ezTJ4jqmRQuGA1qZ4EZ4IpI2a8zEyWBz+mV3HjL6G5jYZ+NBj4A62IayPszJW/vPb/RJPvxJCtp4xIvi1HYZ3e+53eNd1+JF58N/KFp+5j+TZbTq/XkBH0T5dIeA8RyDclW1YEyb1kbjJH6r1JT7HgA/yF73/ztfSFP29VFWnl32dt9JTaV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EGWEQO7eqUiDXbPkJBQ6f4iGNPCJn+F43Ceo1boIlVc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eDcd2xEMJryY4dHKv+YskR4DSHkt2EDysSntZkrzQ7XHtpbB2oEotzCiLuBuKopHp7NRbz/0fMlJZyzrnQNDbK8SKolTPcBACJ276G3jNwppRqiIkcKQTKVWvndmI2ncZ1r0A6eeD1OqT50Ntd6OHWKOzf7/vN6SJ2HjLikAEYfKfSNGLvwbIEZT2EycXHU8pUkW38+srVX2fFHHCnln4bBpn/SKT7c7xbJIlDYv2YAZD64xCXrIttJ8NcUMS2wYA3wsno6QIDbfxWyI7vypDAw8FIaS5GU0qZNpfQhbEK3tB7UpiO5gegep/HKaGcDDPsK2++sQlQOWk04KHE0HYoNdR0hFsz50D0Vj78rW+LuWBh/8tW3wRnNZAJDuHjnk6bxA287VhkrNJbWnRVK2IgCiBsoWICLT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EGl1XSHFTr3nx2vIM5/KYYTSDMQHQIMOmnbql6N1c6k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nC+MDWAuipNulkDkIHco5XTmft7FPYgFGYxKpwsyGIDi1WM7Gk2ebsqsFsqwOMpAs6ycJ7BkdPm0pAWUeFM1eyXCMJr0q2gxdFyAl1C3ojFOMSsed/mPkUzwyRYvRFf0F9nJ5IhJ4ybkwexMLEGRBl+ERPIf/wEl4O0hK3mKb0yUbH3Qzt3XDL60lgNFAm+SItRHI/fxr+GphsGmz3eQaGyJkrSHXewiO9wvxhNaARfh3SdYCvvl1QxOL0DfuGfH8L6UzPL7+gFFOob76ENICLLb03RbIVcpXLfQ+nwur/zVv/+KRTFt5z0NQvmnE/GdaVtl2pdBDV8/6SpHWt/I1tmh8yrPTMBrufg5teAwqknrvLZS20D79TbJ5LjIV3zdjtDzSd8lv3TPQzGv6cQ4HhCXB6qGjyH0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EHZOJyizy58OuHh8JoaEQY3H1EnF/P/5OBVTeg7U8gQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0WAqw/AawEYWNP1zSu/qj4l11Aes7R7nD6TwUdb5bdKLP58n42+Pdem/8ke+eKicq5vrZ2Ai5hNA6lFpvQD5+pdDldJyBl6QtXEPLrRVABBJfFX+ENr4rBNDgUpH4+cC7WoscDBTJ6A04F/v3TPbNO48adEdv8gsdvaYXxNS6kt8fG6DUW2h/w+BKRCGxSf1NV7k5wgGKmEm9aBmjFMnIj7j8RHi/VDy+CDKuPRNsCotYzx7M/9cXhQTtY5tAbM/Ti0HZg7ng7htyC2C7isij5AiEwWL4wKIcqbCSlrL8DQACFS8x32f546awJg8dpbqFX2Xb/lLN6fyEroxwxh4xnxsOHiMf5G133MLWqYy9Uw2fGyMI25BI6h6BjrzpVf6yO35AtKDS2vHcp5AWLwtkFUf/y4XH+Lz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EIDVJ8v7Jyvhau8X4PLe78VqMh588jIV8nQdbUuXHwc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qNTiGoiUD+Px5Wg5gFfzkdBHeZm5YftVY4bbR4q+WfU01Ja1bheRvCKxwj9qsYi9X21iXSSbTTTef3HoSsln5nOXLHh1LO4ivOtPtit2L5OMhx9R+9Pvr/foayivoHw51YaXnsW9bfFL0BkIBXIaxtkVPNId0LHCckvCTdr26ibZyDDq8xxmo3/BRwr5j6ujMk93lKWaHLcDr3lq6zKWAwRweHRc/Aepr3GHhQLRBMHm+8yWZTsb7cX0pIw5V7etSzkLE2erOb52Pvw4/gqHsr/7OOUv3+uSDLbO2PkkvF85zqNwQfXUqjs5XmBF6XYvVWl6IEt6x8lTMULVRG+2upu27HjvhwNTzu74vazEX0VMM+J41CFy26Ugsi5Er5DLTSvUt/4FYe+q+HpxcxEp0BRWvNiBUMFr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EIm8I6t64RRdYBTshBMNLztLEpBGgBDcs/ntd1ZQq7A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "73Ps/Jnv1eSCV9jEWyhdtQ0R8WCSuU6KQJB2ftQBKxumgvE8Y17pC941vjx/g0yAib80LPU/+Yc+i4/nPs3Lhe+J1ke5rJ/Sb4UEpnpequ9xO3J1UcrO/WAZIsNi1DEgp9hBEYLIqjaNE7wtulzAPSmzoBcp4QWv0i+AZmOECVmCxpFg79bACEhWdLXskzWK1fw8PeR0QDDOyEE8Qww1lsk2uI9df36mQQW0Ls3gHNYoPhd+LA+Gid0Him1OgbgxZ11qnnryZOXpgPB2kP14qzB1t8uXsnUpLFn339wkTQHHwflrUKLKu+Wf7z7qOWrorqnelfRaFfwM+wBaEoz6RBt4FdOCSiOIyCYgFl5zhjnG0JevrmMtl4WL0Fl6s8raOk/pES/V3Xi33EIV7SH48bQxdBDu70hL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EK3au0FUked6Q7KCFuHplZwHYwzc8dGBdYnrrMZNrw0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/xdbYMkquaS+3B7h23oji6rLHXTdHHAJH2NpJrulN2VYu0FFsdJpFEYzgB5D9k7oQ9yljsJWXt2mkxKiUKN73k/MxVUIAspIL5uKyR0E6GUvEOGe+kbxYj+5BekOdrwtfggQVynqbTkDUIh22LKPC9uAf3pZjFHNkblnohXjyVABgkh7HI9K1s5WONjDa+KKyNgekIz/xPfiJ5P/I3ovFFFtFRviTxWBUTG9CTGXRIYhxlDx3sFCcAB9b8uHuYuBYdMWkfTM53llzOLkj41/hefFl0U1K3+xQjl5VlMtppXyjSvQ55Ck/kqNTifDDuWNkICD0c+2yctD98FxT+NeJfv9/lEo1aAxYGzhEEVfBCbdgY6XjnnSQC5rQ6luIctR9oxEpLXGXyUF7b3Bg9M8u9CrJVf3OpG4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ELpgUI/MbYUuEuP7X7ldImg+aYwd+EhX9B6BrKGps0c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5ZduzNzdj35RYG8DFcbG/e0QXw3wUkWIfWPsi/TDGL03uGvsAIpe10tN9PSEu3vSWAkptKq1c0mStArNQMkM9049Gk4G4ujQFjk3mxFyEsAldFCcuiUazCbkhqJPUrw7L+FzLHzaQSQ3h0Gotnm2ImuR+ayVEtDq0Kgw/fQ4eKdn3LXhv4gCcasbV6d04CgRwG/2ccwStOwH8SO4xM1WgNWaUU6Jl9NJKi5FQqPa/Cu2lZfi3kzhZ9/KPotbsc7s7IEiCtCZeAUJbSfaGZSEbymV/UujCQpucFCBFgskfhBa4xeSmkH8MLL4LeqLL+dNiacuPzc9UZRR4PpXGw3vZWsEIR5smyhpCpX69ItJQGNA3U2RQdI/TDjyPntDdnTXGLkWeGyzj9f8sxDSNUImTazx0i9wNh7Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EM5yhnL8Sw2frnxPjBIPF06ngIsFgczFJkLtvb8TvwI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6OakcFSCglhX3gNrqfMd+DXVg6kEcga9FeY28ZR5z/cONeVashsIZUyu2FMuY0QiSXa1qXmFejhB+wnZK+ag7xSvb6+8nvLdNJZYXkq0oQhRgUWyXk/LzgwSgA/3lYPDLxXZPojt91sXdvxAuMxhtlo0jWCY1itB2ivnvCBzAOSIfWJW5x6v87q52iI9nJt4YQKGht2EaOLR6LnZD7cN23XCczHYYXe5O0D92L/rKh97ExzA0PQxyLlJF6FP9qp2bChAqE87VdR3HTg/6alnOYPer/cDeGiC9/wh9DoXE96OqnBn5hmqmU1Y6VKlH6RTM/w9S8FSX+X3/g31tVe+4Tm77BNbnE39zi1TmpZwe94OVUh1hgVScGfjg1Y31d3L2armTusiRNE+5ugduWOjJ5hHFFrOkQvy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EN38V4SMAtixkL/bv8PhINuk+UG9+xHRde0KB59S3H8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EwKU6pSBee5FI97Ca3dnVKLleDYaKwt8x8+lDd4rlMNwADa5C1Jiiex860g6GJ3lAOYOU+WJIDedh6IkZ2SZelJT6w0LLE0v0rRKxAYMjVm5aJL4TGhTlEiiuSQDE1eplEvqPADN8hBWKQMqfsy2K2X2OiWozZ/1hqcfrIuO8El26xWFKOgIk8NL8+jw1JsSIC4QgpFTu3E7dzV+eXkM5G61vV51cThs0+5H/NUlg1rcRJTzdgKY92HuhAW707F9a/Tr1p8v6TPvcy4A+rjUgPwl6zAQl7B5d2n68DgkrB+W7I3CO6hwgnCRkbKZ5UvPxhtBfP/Q1GaDjgnYydoeJN8xdDvVPfCPR8F3698sbFoewRLaI8X1bFCmqe4WaK99XR6Cr6kg3q0JVB+fCnR75ZhHQ/CcbqQL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ESxDgwnsRcxRmHKIIApCGA67b15h6lK4BARxhg0bNQI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7FP+b7JLJnkkgoejNL3E2reS7FPpu2YuW/qdPVAGR/DSTv+vVQaZsaQN49vYcAgPVtuodDV9BUMLVm0Q5FfrdYLt7OcHShECo+nCwir+KbDWvBtsatArtZOPUmdfc4/1cg1fF40nhWtwSH/Vhxp7Aiy2kyiBSepF6Mtyozh0DX/EEA+VrARRVStHttBw5seibhYeNhHx71rj5Fkb4Dh4HjvYvFW7ZrD/MT8zgEKrdpKkDuRfkkgjQSDRJeQICxIYYXIn+zuc2jUs6IWdD9dhXWe6n7gym37mSBRRrMgg+QDI8f7/y1j6Ppn0opcFm2DA0gx5red7xBMMG1Sz5ur+Q1tRJBR3maKv4KIrYigh6GnDEkovo0T7+Kxv8s3pTBWI+154l9Tyxw5n0UbwjvE+3WYiknUyuoz8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EUQAK41T1K9HmsJf6KoreWWkE5z+IFMtevPe6Atp4HE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rCqea0X0gqBPpk3IAC7Bd6yrpQBI1PtgFNYiIN4sLezGlbTTy8PXuf2pzTA5NpDnq++a/JJnF6mSfG8p//NLTTGN2NDGzhHPUqL45gXv+Lj9d5hn76UVLby1iLwyce0Pv0UvuGKyNthsG5Xqy712622NB+Goewic9B0eCQHfOe8o9nPL2vrpEen/d4qHJ1NIS+zOiAYZxiO1YyIkrZHvoOPjIu5r6bahLoWbnmiDJmqj901UFnI17722J8HbKVy5LFB8fTi1Nr5pZgfa18Yy1Zc6S1QPX5KmjJ2yFGF0BYvhe1+HahvQzOGdCP8Bgwucdobj4C7US+l1ljJf+MI0g8HGcCEsCv24pv7LkDjLdslmcftec/agQkoH6Wk+JOvNSnrvrKt3RrMkmiEaThnraM5qPXrKO7cJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EX4/Vr6a3IySn8r0hf5PHtgzrbqNNjFMwjSSIK7Kgw8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BSgszTaHTn0zKQhuBUwM/VQx3OfWE4qX+dduLM8qianZ7kiH1ywkpVinbfGWMqvALCw9Nv87+tWYRS62ro9ZPo+7CIc99nMIXHdZGg59/gOc/p5uIl6Gtub5is3Q7IZFg4OQcKlw77Vee4VL5MCuWHyJ3BNx9spshA4LQKTT9V4gtBqDRLm2g9GplHNh6VXxCk60i3mAH553h33YRhbBbNa1TeoD58UGAA1EnDxzbIS8XfO65HcH6dafR0mpRJu/qGcr4kd1RCDjVU+wvqvf6U4KEXmkfCAmMtlxGsM4PyZQ9dxdu/hV8m5+uZn15/byeroihCIU1bXnsgXnTOOMAB8T17BHZ0HwAHAy32dkzlFCa+e8QHbBgEJg4IRTRsKsVgT5CHS0mtt3VWQsRiEx80Gd/hGC0OwE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EXJPuoPIDoKNWIJQm37uNfmUN1XYB6NUYw9jFsCr41M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F+CsICUdbcOkzul7BTswDFkYoEXCB4WQKKF/H7rgwwF71pqIbH8Sg/i32Q6m4YMjB5v3s+vJf26zTkH5fyX2G7uKpEu00KvLpeC/7ewj1kO+4q5RhCmnDYSjdZiPOY7DoEfDWb/SecTkxO90NW9wh2QazS+dwoBOp2Zy7eNlSr9+Gh2FTUdBvix9Spw8p3Nd+p9dGMtyzqP0JxxpBftuQC/MagNBQdjArOMVtTOgVVL1dVq2aRARtZhQT8u/g1EvTaVTlCGLMPBV4vq+JTvvaTWfKf6Cw9I+grzdyEWUQn42/BqG6e437uo8vJEudmQpK5UErrVozCppWCamw3/UNm0DAHptm5LhO1kJXBZvwztElnppJFA3xF+4CI25B5oLWPt42PbS7S8nqFF/PNnjoBWmH9akWT1z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EZeUf4U7y2KPJG+Og2YvvxRf0i4viGTOceB1jhZ3jpk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xJW+vLc8gPewdhdfLKXt9p9V8rlErxuH57FiHxNfvkYtzsA46XIA1h0G0Sl2r/wL6GC6OCebW6Qta0EX1oCskNJypQm+kxRVIAbWq5Pn+u3gYx/Jjt8paizalGVvpS3cWVdUD/lqZvoCLftOV280+kcPb8OFSQT5SXucvvI+0hVbPJaToSa1gK51KgWYIoozarP8YPTilYDCA5cxjajvoSeZe147VnZ+j+5uSBO0UPp4zHvLGEUe7UQjfSoFy8csZhIETpaB+a0wS7RTreORnwE/fbs3kjgGI00U9jTEQUnQ7iARPLKQqhvlHFYhE/AcvKNZHbZrov4NNpMePQS98HY1fKBOfEaWG4dhAsJnMjvH7EEvALjMjAgBh/stLsTkIFmf8VSiT2ndzo2RurkBhJHfdIoVhbrn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EaSFggHhQ3H6OZN4JzvN0NwtBEetH8ra1uE/GJtpCV4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BIEqlgj1Shk0KunDXICTkUe3FUBmJ7f6+RC78S36QOpxFDQFsHL1m4fi0pFU+KaXjoATtF4/vmgZ+lOGRd7ggob1lFbsjvZrVTLaMzAqN+6rnXqNiAF0GBDv0NxNKAk3DflfqD6oSyhjOIHAkuIfTky7nJzW2EXJWgHZgwhicHlhS60BnoySkI/i1PQvQZ2pXUS7wIKvVpJFjJWUd7WHQDOslYkaead5SvQ4x4CK59COeR8QVU++SK8/Q7MQOzZdaxqJIlB3NQRJL8bPMFkO47j8feXkbp8hF5d6NWPdHr2EucMv3n5FH/KhjfzmymOu0rUhRsbRyT3fofhAv1c2fy8kAUfaPIoQTGwd10peNK6aI0jtjc564EjLrQYXE4sbeJpceeX6SFkY2NIYQgqGJei0zco2oUt1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ef2+mZG7HMLNxDV/0xegBCcUWPSrgVEAxyVrZ2YVn84", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MkJZOt0qb+63eA/X3TqEeGNbcSDTl1Swf6pRR6hFJernPTcpc/eYb82zNTtNv1HdHcSgGgIa9qfwOP/rJM/jpghUtD7+DpA19ZlUdKHD+jfO9omBwYQB8u1YTu06fBz6k2mRgdrX71/gaVM74dme3hcg4/fElT6ovMa1vhfGhmgf1an8OdWgnwBHV2BHl6I6EhGMBDKwHTg1E6X0epz9wFkYfiX4KJec87QtaC2JaUXDgSgGMS9XXrUlqVbk5jntSiNkzKN8/bY6K5+HyRU4CsvcgXRoBXAHQpwc5Hp7hr93u9Hw7TdzRCISUIEQ6cwJXPP8BC9BucmbOtjSAp6ivRym6tB+k5K+dxx381aHc6T/sbW0U4fvLsstMjGohKeFGZbIRYVosAfMGiJx8CfAG2OEXMK4EqpS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EgIHbnSP0kPcxgUQ49Cl6cvqovjEp2TcOwZAXhxpauw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JRDCmI8sjcFKziuDNEAjWLfOJnw9oEooB94ep+KUSIZwpzv/P9VL7htW/WWoMOUJg9CkZRlDZwd0+z0LcdsWZrG+Gj2sSB9D9qS+RhC+pPF9AUs6+OgMZl6iqlr2hKLnGKocJ0t9avkeSs/zuh+NwVCXRnTyh0DsOOxUhsQ2WHWiLxCea0+XlE4fedm2YimYb+JveHhyVAKvkwjic0IbVlSs2KTElk2IplJtSnp6BKHvxfX/KCgfzCrcduBpjNOz5o7++/W+RNzbDe7jXB0/ClvJF/b7gl7PaTwSingK7Rr87VmiGRTFR1XCElHgy2zvW+jJYXJ42u0qFi2Rc3PdHo8bY6vkq/gY9aJ1Q9tBEHTPGwpZpKr6vbfSuLNHqu7kVI57q6TT2mZv7cDqTbsAesTmFQi3hRPp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EgPa4w69kY0qQl+/zlZHJZRq48EAhQo3VIwesIL8Kg4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fPUx9m++UGCQxbRuwPw/nZEfbhqP8et+Pzas89OcK8kgqlNBBJtt3sAvoFtxB3u8yR7fCSoiTcORgoZz1F/kZsgBae8ALNvXqDlHCEXkQ+demOwq4SAJUn17uhal3rU0M5mHNWm7QAhPIWWpzwg5NhprdkyoWUiLVzXWYGzkKliNxJOhwHU2AqIZN4qXwL7nPVc80K+qrpwQyFj1I72DarZvYu0Dy0CjT8J4Znt6cLo6oldrBUD1JZEBxrEjAHtw8rWK6FORh5n2P+9kPmhSBrBHyb6eEXOPkJCX2ncZ0EYJbBvpmjwrmVzPd5MXwbjIxcajPdR6yWj5HWQoqeSqTNSeJplFt8PWEXbB2WRIi4pM4SRsarHtViV7HI+RtvJM6qyZIIq78qeuf8WzyQBRlwYPE83SPZ3Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EhIYhN+S0RvttSW9ecb/O6yZDdvak8WUGKO+LrX1IEk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GqreEk4zkB4mi1gRAIo5Kb8wjh0lJyJwPciS/NrkiXrRcMspGJw5actpdhhX8s9Tzq2BXRVT1XkX5zbtQQFNHUS0YAQkFpIGQKJB3MHn7qUmCIk5LA2m3Oywwvizn1K3pXJ0LglWiPkB/93wyATxEoqPgjFCzjuluattenPnEQjjxAyODF0jwWtBj+ASNTGju7FMjlYX0AFmCmrrN15BiPcIdi5VbjG69OAPgH0pY5xpfaYgIo0ymfJ6PEmolme8HTRjzCindME6t/jyCyzxL5NvmQ/KyzvbCfo2BwAAxk4hc3e29OZtcCtOKD40XeGig9i5WMjXpERi/U7w/zRF5pXLKMJJcQ6nMiq/xFilzH374on95V1gV63fRZQldCHSQFe2W+ld2D2ive9hDySVSu7yVgch9l1N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EjN1c2FaSxaskkJllzav0HU2NbNaLM3rX4lHlEXUUIY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uSg6etODHupTotnkEyPE++W26zl9ua6sihJ0Or5a7ZAO2tQmlQjzMlVEfavi1wwff7JQ2lgrxxR623fUzSocb1byazMWSNGothgBMeZNNOjh41drpJRbph+SQKQvprHzheHDTzz0arBq6IH62sYEC1hqjsiEW47zwI9Te9wE14sJxUpspd3D5ZNjnMgf8Mft8ROI8Mpu+aOPfY9PaPdsK12UZlk11GkJHSrlWuxq3xEFcLOQ4nVvVHbiQjt+wEsskPOPdvADPU1ealb7Ib/ft9SQ1vVPUYwOov7naT+bexuhDwC27Xaxmw6vmTzcePqHwQkN9S4Qg4IFTUdQJhztOP1R7mZOjvWZPEKgmZ6KwZunW/Q1HpafI233w0OsMThorECB7JQIFC5AUtCT14FFDAwWD/FS5fwu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EjRJnPLaY7YvNk1uBwSzKMKPk5H/W9G05K1DFMTovgo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f7jFCZtCJ1XTi3jnCIeCseVyEiSA17mkDTe54Zp422DVg+wgLuyDENA6ONAkKiAqxfgOCnUP3q+wZsV77cGSHTnF12hUBZiEPAcISlAU1KopezE0vxDwVEe2/ObPNyNTxysGoyY/bx4dAsTsS4Pw9H77v7bhU3xq+cfUvW1Cr13ZzbhoyNN1xy4lQsGeslwkC4pjEAcSWonedSwEjTFYsYSEbkFHkt7yeGXz5NrviNaOOrlconSpP6qe/F/Vn+RWbs2z5rD75Pp2w2pfmtXuWsf45HBlrzXGqgfF/XQEBCdb+gMlS4rHE1xjqE/l9BDfRtzWc35WtSfOcOplwiEkHlIk9jtjKhLykX9hynruFl6rpQG7vcqm4BLSL1MWPCMOs5xF2qD2wxRKe2C11GBQqKhvYc4Iavkx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EjwIq1NVE9f0FyeDvBdaSIVPJHCalN5Zv1MdQWX7FBo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mNF5aUF9Kv2X9XfSc/dHD/v8EfgkQjJcVIK8zUhX4n6h13zgk0axTUGydF7IUL67TQ2/921kq5QBvhLrq2U0zUGSTYTE3rAXJ+NMa3o+F5TMw4g9LdpZASaG7lV6CfVaOi4Y5pwwhKBYk6Xsx8DZWkTTXmElx5mxa6L5yDHorDGE5mBg7EVOG1h3GMSrc0UnnVjJwI3aSZA9G2Ony5VTk7sd8ENmuxinVzIFmHni7QcLryK6YYPsMlfz6MJ4fmhoNJm+ev6VLaYii1lCYmsBwEzYhpvX3FydWu2TDCEVIKjNowGTwWOqGrm4BY1w2mjV2dtxIWnFGJvH+6mHkaWfiH2vxePph5sjlkCFHXz50KNjL3qYwXawt5aF9reR5aRXuuJo4ClXH35OgnBPMexxK3k2ncf+7ckD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EjzP3i0x1b851JaVnmLBoFNwBSfGqhqlmlzOciZ/Kgw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "p0HjfSRBBzyMTkHV3/NzVND3NSZ5SeHV8GVEUtvJhd9X9xpVtE+51P65aF2dZVi2+36iLCtpsxCumUWRpD2+9HhuFEe9XxYVzzgYioLdgbzGbzBzxPJ+aXEMAWx6kGX4z6QQkY++64QKy28J3sNGz0fDkmQL/M7knDBdVSwiVKwC0cd8dOGgMiP25Io6lnVGfm+hljyWiHFDOdyS53cPfVkJ09ONVFjjhPpAxAyTc/OKzz26h5vCwxBNfFlEB0Kv7nalxnIANipoWNGYZsFVKB0vzXzeGcumkLyNjymNg4cTpG3prPGktLLzEWO0Ei1tstulYS3GnBIbz+0lI1Hv+RFjC+XbpACcPto1uAXlIu11Sr/kCimIYc8SF5nKv0H89tRyKdfej6exgGXo1lD1jQlAqTEmHzKB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "El+tiO2otHhmvO7CeAr/CSqFzuVNJN96JQo+kbtVvEs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hUt/u3Gv0fH+iO0DCgxvGB+LIHwxbDUvT+9Rn1RneVxekvDhrkpBPJ3+3cAKs0WwJeMnO4Xpx7UR4A6yOgMO9USsRAPtZEJtNaY5Serbpbz6DrXmNdFyetQ7eKlOSl1Wot/O7Bg/1kkhjGVI1d59bdIIuphUnIaHCdbNOGbJCtX7Vgyf2O5Gk9SORWdMgbhxpCGM6BgzuTkp4f3plcpACQKYPwMux7ffJyLNHkUwcfLOHcl537uQZW/5UEH3gG3axNJG3m1xQLN5gFm7P6lW/zPhLaVciylC2vPn7kNyLdMjnmA18TQYkeFPfl2M0r1mFu7zoRF29CgbwZicmgYCDQjCbwvgt1qQWgBTmTPP8x3/SHtoQu4zVUnaTC0YN5JxtupYOBGY1XdzRVG5PmOvNeBtxkBWBTtS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ElNqPsRzjnU1nw1mvz+7dylOC95ceas+FpG98b0bVEk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BTWLCxXfaWEIW3VI2O/K5KkriDMa/butfOpQW2cgwSNLyIH6n30g4kHh0sxFllf7xKwnU9dCIGu1LzCQv3PqdAbaRUbe/ydLbwU0ogzDD2d80Ual7tehmQjtfT0nII+lof8vzfBJh87pBNh5RDU6XXCAdz16yWwB8yTAkVVFX/Ib/rHAcSGx27ukEbEIJuvQ4CDQD0Z8GWtlTLYXcPVkNLje/ZuHZAfiSql/CwP2Luw0/dpFFSD1bTHSYa4WYdNjFbaDgUzDZd5JgxFJuwzkDce6Hqfw+QFHAndj3nrRc72qoNsZVXbyCoN3O7JO9rv+aLTBgLKMJV0y8J22WVxlnzMpnL4/MHbU4Q9btdPE+76oyRlxARJAihPU0wU9Qa+lBAGnJTyZk9xo/T7S6ym/TpjZJ4tK1Lso", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Elg3a7ou1urU93lYw8SyBKS9LY0w4Efx6VKBwchbCvg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EAmMa4chBQBEEjNPbrw2zKWTWOnSSLg60dllSTqyK8sbUZoVLNrYJGYI4mzyN6Xqa/FTDLui+lU0HbnWsERInUmXltXeFggV4lEfxcVxnmJ+VI1sX8KsmNh92R0W6VOTO7D4Y85akecF4zNR16ZOSTZz/3A2RrmwiX4g+sXaeXsc0lQujcxhRkbgXUbTV+fMqCoJF70mG5bsqaD1QrQ2QsHLxba7JYt0b0CwvPMAKlFYjiGprb+QOgozCHJUtSV9K0emCUf1ho0AUZfS/pYG4X0+utBgzb5mORhMcYY9EUt3Oab8kpcT/rD97e/PO5nZQXQVGuVHIeXoRUhxA4f+Y/vrzXFbJWGBS5dkgTCbHBvYlHW5/wb8QEXxFP0KHPxeCXD7B0M6/G5nc3YDKUNnpyUXAMTUojV6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EnptsF8RagEoTUxZ2Pt9ZJ0vj9GbBIQK+glCW2zNYII", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9WBo8T134DoYG3+UgFHHgRnovnCE4h+99GqlIwNV6p3IX0ZJLlAf9xA9p615MYV5M8fB2QAhwseBKxf6NS8xdz7r6We7LFPaxoeyPmjUyUWt6FOhaoOyXyhgyWEvi6t7Hf0k8hX0Hk1kO10ZE+GxhVLT/HA3LlqVT+J2K51DB38DBLY8Xm+/QzaWKglCOK/UC1/6KKTjutxKEFEC+xjzDHYIPWXIjGDuwyoPCESAlGyaALnfQtXNGx0lEVIP4UzrsSeIMOfQAHbBPFHe1etQw1r0zAuSPpNOlU6P/fsXpyAbdiN1zDQGi53oFSEtvBHiOavvo665OfsH3+zvkR69WgOO+uiGCNGDPB5vakhT8jd6ze2GlP8W4xwvqF9AegoP4zKaI1EyH0jQqBJw6MD260GKKifPSWn6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ep0D7I/PU3RZVozS3cfsdoDe9RkntjiboToicXPFfEI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a3QiKyEWtlyzJPCFk6qPmGtGd5I2xyTBOEIv+E0PukiR/mpBD6U/xwrtGnEN6ii500dPBchH5B22OuNjXT3TK8t4KuWm4yjJkX85Eu7PgOad+aMyoehHmX4ZOuzQKyYkPzhRc11xQmUwgXGMsl2JecZFokPkFWyv0d4i4XX38KH4Pwm9Aex9yDUtlY9W+shJXG5un8xj35qxL8vvbz4rFkUVSlYX/MMwdzcAqT7gjalNkvYJOt1e/cuf/NM1sF0RscNrWTdoo9jYRNwrU9LUeJhFb7hi2tCC0s2gKFOBKVuGYXg7gY8P5CN41G8OM9gKQTgDugNdGY1Pa03HzfhTtDBpQSZzgc85a8rynw8aJTftCibV/8zoE0u7EBS1ijE4Bw5+H0U4EXGbqUyQ3veeEZXcW9WOi5Wl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EqBtjj6qFOvOPhDAe4OkWdU2ZRxzarRitOr3CMOjSW0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Spdd4ISHWdbZhQC1NJezXrUkyVq4rTca/AZR2Ay9a8Rhbsiy4Trrd/8ti2tH4epxkTiyIehcaC4o6TAZDVjZGnJBQKwSsyvaIEZ6az/PRexRcrNSibreDlVt2j//uI5HZw1byRWsHHOZDBYgQ2Ddv6EogtvLkL4ETH+XVQ1aef0NETfDz5+SMHfXWLAdO14gEmUmgeWYMUCFbX8k7Be9jAun6e8CCP/nLZww9Nv93lRh16rIPsCUGl2MGNgZqB6FJSt4lszwsCNXCMXt3V0/aJZYqslO+hebnw0Ced2B7NEY+RKwoTgUpRoYjGAzV0ONM5VQKZuZUEkyy/ApjV7od8WmHf+T+ekqccf1gO/3VN7W6PVAK6Apn7Oz5/WJCarclXA3AQOCpEoM+OeIvpTuw+fS/babOfFp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "EsUfHP23Kn6TnLMZ9YIoy3yc6coM+n1yci3XJzWmI/s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EBkNmrmKJm/UL50qsJO2oUiGVK+AlaZPxqGtdhs6jphO0BECsmwKXD04xP1PZ/pQG2hr3j+UHSBvoVhypYJnr76uC09Onh1nOBOgCIZni8cPCVISQuxsF6RPxdoOwlzu8S1JSj/QRycC0dJdhT5A1jeL99tpRyXaPMwmPVV84KUbTeCLEmS3d9m9Bkp/CuI7J1uFUAcdcAqCqmhNGTcCNe2ognRX3GcC3VM4qpRUJJuuWl+FoVfyuHaUH+T8MSPNV7FwmluTjIc8Nf9epx0wzKr5MyVh6aYPJRWmzqHRZqUbrBnAgJgKRx4z2w+lpI7ctGlQUNacQV4O4O8I4D0aIOd3IqoQ19Ld940fMj5XIgK1XhyZv4AZb7+UMGdYUbAqX4EGpQuHx6U0CqxZrpV874q9RBrnv+ZG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Et6q/mjtsHY4cDZ1KeRO/aNGDS2cc5WZrlqHby6wF+E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Z9eJdOrSnSGNTlrDmfcwWAzBgILiqP0SI1DjSGuqYQJDYNTtInaR39VeNDuXdN+vqT9ET0rJidt1IjdQn4TajGMLS37bg8yYcbS7f9M8NHBlhlY2W0q/yRrRO8pz3vrbr9opTX6zkZ9WGxuvNjDBD7RHxJERCI0eejM7XM4SrXthTj0ynBd2LCtv+sMYK0ixHpHPqp7Q55lu2suc+B9MYaW/oYeT9AvbgmECmHsyxNyevcl7dElqYyJgj1BU4Im4Cwy8/d8bpk0qoLWdAAd9w7y3P1m4hOSrYPd1Kyvr+yRNuQXyWG4PJ3wymm1hlL60zkl7rqNCBr0SicrHy31WOyH8jlvPW0WAG0vIeGoEGJbMq9aRLDSvavnirIv78PvKbJ22ZDH+h48hVovPzauehjIWq5hTZaS1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ewv8mKu13cjRI/IOJzi1QBhi6SjoSmTjVD2lmfnw6II", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0tHTcbyzzuwEY2/4q69o51TO660F0VZidKlYW7W1JI10SwQHWVJFLlKCbMsyWz685n7Vew5L4MfdItPNHEiQ2ztZq4bo/C0aqQ/uKO0TnVR0+vt2RIV6AJmSPaFkL+JWuRjhtrtpS76vEQJc46ocMVgH3hRWF2RQ0ohOLHcEVaxp+2quvDGzNVAoGx6HgU1WFi/pPBEKkkZtxEvPhPFY+cc7qifJ831g1XROP9KmjcyefwQvugF8FuOWRpLypbP4oEls9Zf010S8S0ye3kpp/3WkBPmb6ZJRvk0Dk9Qa6LadUwSJ4vHK34g5ICeb378iuAN9myyQj/wW2XFxoBs44DGqWy/BO4KrWfzcV19li0vNASGqxZrtN6rdOubufIl6iVNd19uq12aa9+BbtcxYN4OeVd2YnVz5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ExjlguxYa66AeB2Jjg7S3/tgWcnQSi4g5c8hBBhYs08", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yySQFkNSwgt7Vs+P4WWp55OBNslwowFyySfBV5Fd70BQtoFZjWEoXTwvkMawMqib+ttLE3gVAwLs7dvH2+zBVIBktMG7HLzvsokmvFK2/M42gH7xGM6ADcHLmKrYEsXRp7P8DlMP/iKFhYboSzzufau4jnv1gS2pdyY2FpA5H8T5T/wVvjHz7GyBHLCzUNe7KZnNIv8sXDk4DXFDUZxQmMIwJCs8ZrmCrhfD/HVxjUxb4njlp2YxNyv8uLjx9g/QMvACPLnrzsYulU6lHnwJTIpT9t+TUCnHOBNnINdBuEoiiSK3dW+XWKCIZDjLHl6aNTR39zHo4xxlKW1krLYyqCPcXgIJkWpuNsZAqBRRxY8I5f6my3UgjIJ72NbimDt0gMfzI0ZnjjwBj17T3TATNuczxdaqRhK0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F0dqX7g4wtvZhJq8Ff7hdye1YHxOANVni1U1Tl5l88A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YWR8+YNAqQmQW1axUPEYvABMHZmospFwTb/HbnYryljxqvmDpK85z+rPsyXveJKYemQr9pXFPAP7Ju+nEAPWOhYZngyOUIhSNZxJSoqVfv8y6f5BV7OqQ82OpAU5cdxIg1cSGPw9AdkILtyCluqcsczwlNCGr5jJB45LWbgFhn9JwGyZ9fbca5z+YP9ODc042js8VU9+8e2F7RJsjDHgY3mlV9Iiyz7UqHs5mevXAldL/2SLqS5/TAzs0fys9ZUNzRa0DCwl9Er6CinEoNtu5mRIJt+7Biv4sN/+k1hlMsyQItEjU1M6WsxwmkUYIVYysJQSfvMqGCqc1Gb8vuvlEqc5hpMN35o0Yr6HJKEHqnjo7roTXscuknZ/qQB7QZGXn9nl/PQPMV4dMecHYUx79fxteswd+cXv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F1kpujS0JevkOfC/KKZi5r6WeXqbcotyZHC4LO5b84I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rRXu0L69YUFUxbpvFM3ONNtq2YRxdadVFEgHvJTukav+0rIDfrXT7lSJEOb17P2xh71GYgrD6H9k1OTYNa5lgEmgKH/p2ojBYFV8cHFFVDortRshOROLG2EnvC/bta42Y6cXx9GKhOZdOQb4wl5BnZemFhqm7a8Pl+QYznyAtpOWnYTery8H6BTXtuFvr/Ez/LNnpAJs6E1Wa70o9g3t0v3PWWNh+JwsXL1Q9zq03UiBwGTAOt0mUoyVVpLTXULF2+zIVSfMBz0Ve8/8T/RYtVDRAjdT7yPrMuhAEKUbkunZt731uqsW2joRE36sPjUUGVjrrQzN5fZPyJ7nIJjRWXyHIc2qcfTJjU1TQe+s3VDTC+pXDEzcCdKJipsWbTW43qtStD1VVrvwZ/FsUn5STTKhk4Pjjr49", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F2IEBNO8WQm4E0iSDsd8/ctba3si73Or4N7C6JQgyQY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kDlJv2KPe2OUiYi3BtDxTZsjI7HJcT2aqKfMerym++P99k1WYcBwyS6YZWGAU4SbAuAb7AVdIYspTuMTBuA97rVgPtUictQqQdI61Jai0B/7GLMMOwEe5hQnJ04fLcC0l6w76GUzmW22SkNJEETC6PN1JB1kD4wkS0/Lw9VvzW3ri7BT1rm4Kc0uGpP2JjoQkEPj+PwA3dvUmgGFkjnPAliaXb337dzrnk7jE9g4Ia6dy9CWoAYM1BrGbKgYzjX6XtNN3gEhpPRqdquGcfo0ASIZeG2BYntwfTpKE4SRf1wGbHBFU9wMbOATB6o1x+jf9Fr5PdlPQUF63CN/8QX7g9qHkP6vxkb1zD/PdDbIwu7gz+O28fnbayu5pX5IHMrsVcYn9dgPpR/1iSRKJImjI9F1sdLmzVyg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F2yKsijuSKUT51UEo1ZnOsunM6CAoLlNMi6/410x+KM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nrvwA47VSmSzS64C4UrGvASNSIDU1XPvhxsg1aP/MNAkKgYVPxFp9r7sKqasIzuhbJ0EJw/DnAzcnPY1R9U5TwVJ5MyyD5NJRTIi5OR4tVWd28OKlen75Jfm8srK/YZOHvjp0DoXaYzdgeatm1RdlQt8ouzpjiPerff61kjlAf7qjE8bua0GUEhfhABAqQwV6fxSU6slZAXL09UCoCkjYFy+cr/+EFU6pCmnNXymMiWVF8Ww3+QJYN1TblSKbi76jLWwYTWAIqptwCVVCiTCeEmqmjOoAh1VJzOeIvQj5BPaIl7Rm575/PQgbAP7l60+QKXfSZnQDVnfzXiRRdIadz8H1HlSS4ZkABzhAAyZlzsOLheQElBkz8VZeeGPwwtxcIL6jKNZ3kNj8nOd8UieEUZ2BTWjMdIB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F3WqxsffrgSctoE2L8OMkMkmhhT22RsL1SkAaM74ZWo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r/Hr0qIh5/XAWpmd9Q5bgNYAyERKp5pXEmvOIypVYqvMpnVrZuBb7JO0XhsqEvnlMi7XppKSMyTM5FUECdspHynhX2lbd9RwZkHrWeaq/Mz0JLYuRZ8BF7WxkURx/3f1Sd6XuV58K43famXDmhUjvrN2iuMEqkLR4ouhePmWqo3fDPYQr5WAapEIqbBXcGjxjXUcsaHJTnS+ogXTlMTMNyysPB5asSde1fMq/SIGhtupJbTUt7NTTzjd2A/m98azDqk27bZwhWPczDFIYy1iQKVTUjHVtP8pbUv0t5TvQW6JSqRAIXKoJeT41IMk33IoCj4zcCEeMbs+cAVWVMV6nT5xB7sS3HZiF7rzim+WHsczZXg14t7LQRzVQgTJy9MFJRMYoRK7ZHtTNSxhlp7gfNQ3zofC32VI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F3ydSn/IWwBNwlo7najHPA/pXVY2XtgQL3QYB1/odTA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1oIFdcUERFkdRHHof7T/7aa0T69a4vS3s8NxQkC7QJV7WRRHY1kJGpG0r8hIq2cYvAUWtgJqpHN9ulCwbT+jocG1D3tyhmbYzmsMwkvjEZn+y5rpB1g3Wl1F8BTKIf+5t8FZc6khtC7vfi15+kz5QVgssvp83JxC6eAhfLEM2R3wA5Uaeis4EAViPeU9whCRZDSY7bmOpukgJTVaH+dVfNii7bbt8pmssK22Htn0IG1jQqrToGHQr7prbaxn0vwO9L+8IeWrRUzsE8YwuOn5yhzR1+E+g84W0sAyQDbAC9pCcV0QMHKLUe1uuDdyPJric7mcVH7WCLN6WEJLPpr7pugvN16FK8U82lXqtfq7G9aHwSHucM0jgHzTYfSIhVpVIL08vgNwVuD79YQg4cp5VfyNrL0CANkT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F4IVCUjZPaCnMV5im8aWNxZTyKYtTb2dIPd0iC1GjWQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NLFFxf8PE/+FvIdzIilB4LEea/snATc9b24BQXtrtWGtHGSgJjEZjjtXIUDdkfDVR9Jin7/GOcrbVWgJkL1FS0JdTOyf9eIglfmeTdCwl6hr5rY5gLTSjDF7ZK2e7ngDh+ky5Zbcs5Sx6TukAnfqe6Yr+wdVQqppxj+zKcppjOGiEyjkWVKPpwMjq8cQoRmUEklagtpsaSelXmyfn4saDgDcA22BDjwCIoWW8Eqj+TN2C51Lp+JTM2SjDOHfb0hUR8mcnUhgFKh6KNe2v+F74Azfj+3Wr8ASzQOP/rD8+UDv43EtKBMqAPrgyPJe4UT6Ex3oS+TVGqn1pTbAsihyfUZBIYqwere1cAn6fCRF/5AtrQymVivgTmMQU79Dut3U0svbirDfKS5gmEHYINVCHK8Jd1tiwXAG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F4TBvVvnhBjI4OfRh+eSzrSdRsF7sCHYnGhyM+MrCzA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/KxnFz2TSsqM6c58/ZLEMwlfsF8XSGf0XoUu45WeiV5qnkYRBKw9gOb3Y8IFQO73ek6kQjPp9RrQiRahAg1Z/RaThUoNe5tL5vER6WGPa9GYRDLogbk2fOtyP11EkK7rluUXfTh71R383Sj7OAnZUf3aFAUrcpMvmqSc+ol0mdd9D/bRRoDjKlbJhKNZxJdr8VC2dG3e8kMQQRn8/HfWIdvh1fPg265+GBY7o/+OfmPgMupFNET/c5USAw5VEFmbx2Cy3hbP3KPyMzIggeR3wfe9t5zs2jCL43Rib8UjWYO6asMDQOTgTHlrX8qYC7StSRMq0nlYeSk8TCiSYXXmRSbV7VKeCoxwaxDtEEqD0cBWx6IR5mojuDcDYb0YWkUOj6N7SWm46W+M1bKhp9IzO04K5f2TXDUW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F5SAWqK6sGYQml3p0hmBtk8GRqWXEyr8NO9fPuxWRSc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Aul08Y8TMlbmP45lDrPQmogaFDMzm/naC7HzovLR5dTrfdj7ZTr8NhniDP9MBlRdTMjsXdzMXFflCpZZvTv11r5YimkWVtSKRemQEuzd4tb3HTkP5bjeGLe4gS3jwTRZ9fYO0J50TxljkCHkBOLVabsbs6Is7qGTDnmv4X/vCsnQsFu5ubhZbK4ssp40HtBB/wCRLwyi7V+pbAxo4f/Pbh4s6x45mXiZxM5oBX0rZ58mitaPDbjYdMLqIRRT4hVvCveqlsiUQY6c99S6UN2aTDpM5INABog62R1nfT1FGDizTjGX0vpH5OO8e7Q4kyX+U/u87zwxPyt1xz5H8Bm0pyfZEgqETIf2zpvQW3IeFRpehcG5T5Op/skDMlHF87KV3gIb2TGWPchRNH8Haw1paEeQLm/wZQiY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F5rLbQW3jGChMqsh/qUC7BBQaDCJxZQmtV95zE8rL2c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WhFSXwgo8TjsnSzJsrNvAHb6sH37Pf9B4D3tVzsuhbF3B7M/vqBguEoA/yyJb01D0sZU2amsgqT33ZAmsEf+2ZJcu6qHGefup7UA8kskVDChWBSKLRImEW/Td5vXjqv6Bf9tipstNlJciD5wFjVNLsAzkJ4MocPgXs9o5LmiamExdoK/cXocnEz5/V8VturrO/yhoqhkjrs+JQdaofjMwup71zkIkGuWx+v8m7CZJ3CYG9Y7sZUoabkehIB3C/8RRs+WrV5JIEl9KoCHIjF2weCpdkYVkhZbXtk/qbEGeTEmmnKy/whLwf4RVZPLhyyhrLN54sQFu/CBy6efDV7mQjgmXopO2eb9ciL428yBune3Um1ORt4vh/qukADnAU3BvtT/fVxH5PtV4iDeRUukdBiaEm/6kdS2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F8OiKAmz31kNpblw2jBhlF/Ok1E+leAUZ/BSGEKPdQ4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2YCF26Qah74Ew1UnNQ9BsOogCswnvJyu5kQdTjsYUQkzXy/dNL8Gqh3fQ+kDVwDaMm3PsP4WHeq+3xr/I2fgI9DPlKB+bLGoitxNXaytLbwvausV4Wk55CzjoVWtDTVhBGinZ3LDoLFNkw0GBEXSu7RcuTWs+MpkWHajx0T/FoeEoffSIZGRzY8mvUotWD1Tf53WFK5R8M3zMYn/G/f3Kt+mYG1QGWHdQ/URxB45le/ylkpeCvXVK4i8z8lJABf/tUElhqshGLNAi0CackD5y2QTzhsrNoyUJo/O5MLmhygkonaQoma/W8DgI1kErCt5et45J3T/LXF0P6mLjswC2ayiavDSrFcnCQl0YNaX7iQtFv+E9B/qg9raGUohqtwTAXVn/JCotbz3vuE7mS6cC/sH5yrTO2cq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F9Fx4dWoaDTmttpe1nYnT3MnH7L4Aj7rlS5OVBZW4Ok", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VS9zc92NQu+cZiEju8jedHX8D7kyGxMS6oMP/ZnLi21oPDBzkWZnZrcd4kpssR8I2h7GVNLxFw1LWvYEDSOV/fsH35+AzQiV/NO+xD6mlmb/IsaNtfHoQW/07AtHzIs5Vg5FaPH5RPuGn9VoXUzvjcyV6BqrEFCvDUI4SF7iYpRuM5aAtjDKXgcUWk+59XkLZyhVMk6jLe5oEE6rIOfxoE4DKvolCFxNqVV7GlGdCyFkUeDkAdZu7hxMmeSRwQwjTsQyRMBWvf2IvW/0PCrotaAnwY7+TKGeSkSuEy+yRi1GXBmq9uTWdbBVNj7qvfhc3x5dVQpbU7tOxUBo+BfvziObODUz2r05NCAuIfkwBYMVkdXG0YXWUQ54BW1LyFdMbOflFjIuaYPJZWzT/Yy8QgPPVJ62Fqm1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "F9pvXBNM4xDFEOkOMaYMH56iM2mN2Ha9Htz6nnouO3Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uEsyqHm9T5Cpjt0F+QYfZCjFRJCgZprMJ0qxSd69cr8WbmcbR/OsGJDK4nIBZ9Xk/hmjmVC1MI386jlNusWIdzCPFmN08XTj1ugydaRhoOL9cRHMYasRC0Ekf6WvKHyRoa5K50PdBaxVbhzQBIYI0L1Q5a1XWoqit2I6N0Ef7KHWcVBgSXI0HhhMlpOby5W4yWarJeMLEfVBSqdIKPAphD7B9ojXojWmgO/GW7U0pXu5vHFDuyxXe3ktflK86ufX8d2lrM/sJroyhiZ6Ra9vLhVnXay2/mHVHRUIoNv2nDe/dKLrDQYLmYSIuF8HjQDFv0MHsg6l3RoKl930O5tpcwfeAcfwAzIFCVyvMu8eCzykAdvAkWT+Tr92GoQdzfJbuKlOmgzgqnshiv4lM0hIgrATWg6QVzgm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FAFlgfQOaX4vwxUTuYHYSi6dgJCvrIt5NH0yAjeLVIM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L+cP2iru9aO6sLQ3j15+iF8IO28Si3vVxjfmsel4gkcqFaJCRglf5boX2j1Ibvg/LvroT2HOp2OYe2ylD6fTDBBBQfV9sqFK7pSzEWbqNW27kG79ZnSndEtazARHWtYhBkfES/z4NWnVujiEM/CXfvO7NJkeZ4m0TQizlsYaCIOYa5JLXeIuZ06XwUCH7Er4cInn0EAfI4ACyWtz2uTPqVjkcVbftBNFNIUFoyqJXliojlXUOcxwbRwqL4e6i7UE29x3Q+t3/dIiakIzJ7+w8PhRu/3OtD2G4Rjqip397l3StU//3q0VnAYZlekVbMJuv/BlGSTiCaSitmux7G+rq3DWd0ZJCJl6m97EuCPmcU9zNgG/fXwnm426C+IawL1DUqYuGNf7qHIy1/g2z93IqDM/AQfo2FQH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FC8+xvJsTURDCtdlAYIcjGPufT0rTQTy8FbrILq5bik", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v5vammh28F9XYWsn2j6XWyz08Z61KkPHlutFvahwKampzT4qpCiIkEzo5OMXhgMdhDD8dR7cGExp6lvGaOYux2vI9bNXHawx24SwQ4dyXQjDJEu9ats41ggHlnjm5JlbLY7dMZYex4QvecaBwQpTCq0mAaZviOmMlgi9dFV7hK9TNH6Lz9AQxh0msyRgfaqg7p4+IclaPLNB/6DTTpr0BF/pGtQSsKnzYfIRuUKeN7e8yEe566JoC6707VNxJm9+QmTW2vUObjXYwPG7vV/9olES2E2pfL0Tq2OT6DIRDqD0nvYYxitde8U5QM8Ttj0kh89QVVJ33VE2ZjjtNQhgprBChyZ9uLiNszYFE66OsQKhlL9Aey4ghOysX0B1Pqihakfos8E98Tbe5eowC4nOTakQ0WPkLKh7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FE8+blSo8UDSECjooJPo65rbbRoAKxKkGPTSCa+loWw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WyFIj8yKrAqPNYrZho5HJ4DghJrnkxMb7KXKYztYWBmBS0s6Yn+v2fjxslPxxvyviBTb5hyjCj+WzsIVi5myTD9SyO0ebbm19mR6yBzdJapKw9fwzxdpepMQ0KqmXKwZG+v4QdIumYA52iFbcxiNSat9ALqTGAXE7nbcsO9+QrP/GV5iJUYjxNuHdlRoRfge72xfFlKb3PCVohQMrCtceTfHzE2MQGUmkDB/KncBr9PDItE5AJ+xPuoXi6ljsdWZnArfjDDCjlZLXVK0XTNZDIn3+vAvFDnQMOG57zEhkX6/aSsRJnsRBmTZpIDQmNtn4q2FvksVsIDA8dlbo1gvcn+STfYlBcDCRGM2w30ckazmRbT3XKIXoHX18fnCpyRb263/KEB7Zi9oNvjH2uu+UCUiCqxUWZZT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FED3AnAvFI9wma14GOJAtQQCXh6It3m9svTxCTQpSlI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hl9GzPoT8269SYlY32/pUzRtDSqm0Nv/dhPGFpTC05vQ0X1bMdL+ebnUucfDbMa3gqIBR8jZGzYt+bdq18dfKlhCJNc9Whvnp7Z+X2le/Xtgn10kXA8usDSCc/XEypPBvfp2mthJ3qqfltIeODgvE8lNmrgfYUX0dl7LIAMeqxIwfMUyz4XypgKWlgEA+SS5KeOkO2Z+bpirBFcDmpkQHJFXSEMdWdT05vaZwRyzlMNcpbObw5u4C0+K68VuO1BJhdIDWGr1Q3Pn/yyWgi3U3d8Hzw14q+LkJKUzwob7N2BB3vYRFZwHnjEoJ9y0G0KwJAv+d3ZFmOUQQYsHbB+og7RCEriqzAwwUU/GkYZ7VNq2/zKYBMhxWWiTsgUiQ1BAHdbFF/KTaq4QB9z/44hJZaKIMmHZ6HOU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FELCxGaQzgstq8rBRnF5Vbq9vxuWKSckYzJbo6gHh0M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+IvDw1kGA7wSzfLs1gTPcKDDw6b417AodBrrDLIyfNgM8+JxfqbRM+mRrHOL9fJV1NOFYckO+66RMUqCqcFeuRG1gxri9+ppDIUiLNIwEGAa/IHMQZy91zkFO2JDVvWFdMHw9dPiWBvMhJTLqYjQuVRJcN3uJ5AmjOdI+YC9Ztd2pAQUcjTUyTcPoFnmwQ4HgDBiwRs5lbU4UHKcQl29GrQDSJKQbXiIeLa537m5jjyeey05IuhUcgWUaQeV0ulTmD0fGjXs8VhXoLOaCmU1/8Qc7IT3TDbl1DDys0cRyAwIPavLzrIr8wKtuc9K/lw4lvT95PRBc5E+MGCSsdWtLpjpGKEC5MlLM/HaaHp7hm69D3R23WNeScASxdxSQM7hWXAZnkXkSwVwQ/4DF+rKfMwNNntU46hi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FEkMBtjVm0JkriGvI8YFMgSEP4++RzNrbutdfKlNCDM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sNkNo4BQrkfrPib7n4H2ztIIjJ96+WWkx1oyqKyCLRPe8NBNQ4nY9c7NoKNLVM6hc+ePVdQWK2R+8jB0dNfsu9Mj8jrh9hZniROmVpcFFAD2099ToYxKnXA196PJw96QCwNGfUc1uTZjfuLUNujHkl7UlIQTIzfj9Q+0DdjYCHTjBTrdTThqQGDhehBUGRJouBQjSFAYXgXwMdTFbW/1h8tkrELv+1H2mr+shPEsGunSeAg0jTWIYVPVY5634qV78QlLhRDMBWleCmMtmMwuNiVEL/kAJe6IXU0ihE40DPlkJypDe/llwI8RfyCBzIQ90GT4/s/D7NdAx7q0QOGyjhVHXTmCSr+DsZdD7GKifF7mKivC4mZjVLYh+t385wljHzezk3NrtHIQGGaKrzxtiJHMvSZLa7Uj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FF5ZCaVS3HivZdvFrCLwzi7rVCctRhvLgBmQFvOOAxI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k5Gq6Ijj1L++yEINwWTBPiTBMjNAPdmpjMMJfezGcII/QNJXbnLzQCpG3c1YE7KgTx4JgVuLe2xyggj0be+vCw5OIpuRe1yXqYuyXK06RStJerXcnAgmB9EYmj2hCYFLCYKAOLwcjGJ/9ukYNtosII/QoMVB+WpUOa35gc+UyrWqeYWVfK39d+bcY/fIG/7kp3+K9DikEbmuXgk6pOIszBGQqQKkyUP67PFeNiQ4y70Dhiq+oCYH9s+uMMNa6vuMroPMhb5pveIqVa3nXxoOkVHE/sf5whHGOh/cW4CrFk8VvIZQvD6aCYr21e5CHuDuE0h/FIpy2PG/QVVjPCdV56qpnpV/z9mYLm6oh0dP7G1ePPHajHM0pjXdf617rviw9cALbji+W/i6Hgbg7kigHvwotuLCiqLa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FFoTYLFPwyZl1LULvnlmcDwIfaCL/gV0eFAjIWG0lh8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZGiomZySqooOIMvoX2ASPo+UTLI9kq6J8M8CQ6ktSWWwqkJQjsRrFIEkuSMViDHw1upHY2MKwU36Ajjjc+McFYLa8es/6SqlQd+YaCL18GwJWoZm43+Qt80yUH4JV3Yr3GG5ri2ayAeSQ9/x4jTXfGnat1z6t81fao1bU3CkfYeHlqQteAKH+dJ2/XfP2jeTw9S5GmAEVwKDkc05SuyFrDyfdtd1fUM5VLOLgK9/JO/oHmL0U5J2xV+cFYCRDKty2VNrWBRJA0DpMegcwce5Xf0+Ce4zu25FYk5hcnw3r6yWzUH9BMSHzgkB6mVT13FCqlxCaoU2fVNBv0h7YeimdCGOfQ78zByY2enS22bnnVf4IKY6IgQWDNTs5LKNMMVITRE0zEw8CLO0vvTVaGRKrqxed7jgy/Rg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FGP2TlbXVMBxYhvAnVqERK/Xii4svW57ocVlawYfPB4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jpYwwhhcNgqQcMNGD09E+1Lh8YmKjFX0d4/cXuEh6LiEHcm9iVlSDtncngnJZ/zJiaAX/uQxu364lTK4fY7a+D7Z0LBa6fjz+7DfAB0GhPKBWkUdETtiXDkDgyQRg/bNeemHKnBG5Y1WDqPGd5WzuPZ3S5BsXdWK1QVmgv3MJ2CDJNYeOFK6zdtPGz7kfWSspfBQg41gnyBuqgX/S0g2X/RSac4pHdLtWyFVAi7ENdeV79CXYmJuQeqoOylui1adUeCOVnN4WajpYnMTL+8GCc57cmYLAavVz4ctmZySCiV3+ICEoQ9ekNtt1aQdG+uPzpC0R3/higNl6ahsTDPoQwUlo51JMYHqmqdHwnEGo/wXZrnaGlgUpSNlrKCaiXZ3YRcU4zpSzujJUtOtu76pg+Rt2zP/yTGl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FJ7v5moAch4g/7Jm38l+j9191sLkGUHPIiPrzLpJv7o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s809ixUashE0fkGX3zElQTJwd0zWD4xAq5qo2dNaaAopDdIuzWBfP+tBj3nf2szX2xRvuaccSNXL3FTcXo+diOPbd7uPTyHSgNFyBaE2Jxyh0alIGBL+4RGF/MvG2cK6wjy4QwOv9jV5cUrrLCnwHKTZEd5YuHCQGJ/6uXumbvU0SASQUWlQ+zlR2XSDC/N93vHCDMv32YsFf5auqZ5gmiMdiUFKd5+PyzqfqU6upz2erd6w9VK/0F2AU863jY07qxTiRXXGCxza/S3zsFiycwrVLUzJ+h1Awc9LuwBls/2FlCdJQAIKQCcezD1WmxAf594z9qAKZ+OG6ecaFCzI4QF3lMa8jKB03trJ9VOu3XehztS3vUI95ozCT5LuzENn8Y3Jay/c2r7G2aIA7u0UUWnkq9jQIFgq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FJemW+kEZhCBjT9Qo/z2ssgKGi4qUbl7ei7bjs7Fp/8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fNHAFWphgvO5PsKKPxAZ5jHfAS4r3KCfrRN2BDp5f+bCWiCYWgEJjYrSBT/4NGvZ5PslylWuB78xcu4WmHPuKW7SKla0O8o9EJo4uaw6VIQBSUOhmMJA5tM61zcRfyysEqWvVp1PUtXK6E620i3zihwH9r3ncpFfQyyWx03PPG+RF9qyeaypstEVWeFCxhAIFAEN9rpBIlKtmDC6/Nk+mlnK4coPu6Ev1A1uKoVgCylBR1LwAZY7pjhY8OXHGa4AYtTb6RmyFbieP83PUrY80LONAuYu8ucCm5QJDuRAJrahBmLEptrYvrSEzKUCWcvc+2oyypHvA4Lv5XMFgBadAI38FggbsR9m1frX20eY59Le1GkzesfQiTQ7QmF7unmz2+VZYH+mSTZo23rK6lal6EWkh3B/clJU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FKdPN6S4VXaaihYsGSqV5XfLZ1+7bbiexWh0tLRZRmY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ups4N/gtYPK8qeZmDdTo2SimaoHXb+W4KH1MW87iDE82MKXjELo3muhMAVRMBMO2tIS6S6QXNwg6v+Pf6naS7X4T32v1pGc6Y5d6FDh+F6NACELaNiMOnO1sPZuxF89vCZiM5LGBdX1ko/MLNuXgjA00mowwv5sCp/FczCQU0aGH1FI6ok/D0lrjIHrOgwCmE6uWfJp1bjaXMtJ3Owqv3rgDPNBZXrYBx98QTsp7M6dDtAgsoCySS3ZTmwjinMxMKHI1MLSUh3slczYbzJni9d7ZJZsfrZXsRtzfQ/qgpq7yC83ZHwE7GEGRlnXtSDkVEJgsu2kq8cq/0bPz1dp7QsflOfg0vB3jJuf/sz+zq+YV7bl81Yl5teTYc0szI/yglrS/TDApAGnj7AwWB6qLFBYOwbCXUiye", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FMNTt8gZ8EMwTWjjwCAvRl9fAAXkMUF0VACe6mY+ISQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EUHs2/8B5OlG4+9X0loIOBaFc/p9HoCfIWqivL9vrjpPX+GtVEpGCkg64/tSbfr5xBPFV8/ivFuXXS0uoloC4W8vzT5HG+WXtNw+3ux95rw4O10Sbiw6hCtTYfOTxPrPLpxOSyMztBtAp7kaJ91N/e4K7TmUhlmidZHGf/ADe/D8z83iCmd2gB4tdTkfcv/cNzr5Z2h9ZovaHCRDv6V1iRpbFNyj2sdi3WU/dEiyRJFQGd5iEAMmZV8t0FS4VwYbtgvymkodNJCYoMcYZCBwNCn8dph+rqaycHZg+QBz/ar7znJGfMi3G4fH/rcMnuulslvNKP2x8IIvTj5rNx9t/9ZjW+GH+CQPOcFohRAjUTgxwZJDqEeTqhzEVRy2+v7QMasAjsM+5AjFX/sDT4dm5RWM/TiGp7YU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FNvZMgKA3g/+oAnhOoeFH7cqmElvHT6ZIHhWdTfTgoM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vr3NbNyJEqwki/Rl/bRrsH3OzrWsg8I1mJr8eUFsav5+KQ7vDQvTS2IePSeJmVrBcxv1h/zItK5tGlaV+NF/M/Pd9W8Mn3mzXUP9A/vMEei27XO200o/YMFz1TjU+CiJMuPlyGPGKzPcbyhw3AbN0aeXwWBTmw9U1a+8TJygEiSANwwdPcCA8y6V07vs/nCZBURBH0qZqnnm63dyz6FKDqTtJteqpDxi3Estn1adGQmuPmJCTq/JhyLSdSQrefWtrEcPerdsAuRKlCpM4z8hnrjGyu7sCQvXa5VwWTILwPhIfKpWTX6g33bmcF8yvA+/kmbkf41BhUoHzKxRwxyVd70yYdu3qykgyIkhOVRylT/3je2xFkCV/m8IWlREfdFIf7RXuEgY0RliyFPdnFm8oIsdNIkWxqT+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FOa0uuYZy3JyqvVZQBXMhFKn35/Q/nIqNWDn8SzpRuk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qG16YCMK8MUrCfdqmA/FZK4lxUkSjz3tuQSFqpQeJc6EiFv3xtbOxukP3noYLaCKZhK8lgHIfTiZkXgto9zPI/pI01tKvY7LijWWTOydIa83zvNpgzqhHzSez3qHv7ikBw6JN1Y7mFIeqWjYAEiavQD77qJDzalL6/n88noojpC0GerkZA7fgN8z/AJ5H/U+dgErB9IuMhxA4k+X4smjm/i4T2ukdxVt8FdpPomoyMukJKwgbZgNsXDLd6GpUpJtddZkWTpG2ucnOnOs1BRH9XNfG5OgCQCfjJGhYyihfiHO2wJUiHoHMdrQxea6R7D9lrDS1IFtjmwM/B3a3VqjgEly8mVDLkT/23qvcCdzqv2m5sh15J6AcWwl4ahEWEgeU96CVaPv3/+j3GfItQkxUCfXrovoNjkR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FP3mcexwwrz8zYbGrYDS279cbBDy4T4grRgQJ7BkyXU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k44sJQQc3e96/FA1c8ZV9gF8PNvpx21Ff2mFPBAxiF+pymwfE8mOSg9Fp9y/bZ6bo3gcC1UQwpdZtUumKjHAVoTv6dJqVTz0ou16/cfAukvGGWMwPuU5ieZuY2z8FOnZ1B1wsuloRCLJdTo3yuqN2IgbIGdBkON3z8UxhdoK/4qohx/az894Oy+qp+Twlzp8hyTsDf/SW1ZB2nQi5yGSBYRX6QC5ziC6gn8A2Z512Fb0Ji9VTJlmh9EbUCPDeoDFvkXGh5U60/89l42qJS0gCOgHu+SQVpYjTwajsmDQAQnTaaaI7ec9K4QbXjeWyaVCi0+exACXicbGwVPycW3O8YFup9wFoYAgbTKwj6LoBOwNU/Gr5yAstYT8YQ+NjGLl2fgG7fLHh66BYaqJ07Ejj+LdQ0e2NQIx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FPYz7xuL8Cx1vOcjQ8F12H3RKQlKctAbLwFNqdQUzRo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8n0jwr278YxGc2SA4KbO6WCaLgOAgWWnHjAAO78gnjKRCTDge+FiF2645LXJb3uYFf2Hzbk/lzRbBpMnGyV/Zb/z7QUOOxKs4Yl8fP1RomF/+edUjh1caLWBF26yYRMXr4Fh+d118j0ufm9f94C/Zp80EqIqLJCA9ZGqqzwxQzjyVJyzacZdcoI4ZKd/MmpAxM4QKBpKmO04iFW5Z/1Xjzzwnq9iNJ1kmX4RXNvIKODxCe0gNPny71qiinKgs+KltQLXicYvf7j1eqw5Gr6u7/mhi7xC/kcdfLDY7h0abV7k94RIZVIrobJ24zV/4dkW7xP+5pb6DZouFHDlJxkSVHc4S/6q1bvAEriBnzFbzCACzoQzIuZVDE6nmKxf+a9Tddh4aznv0GBB1zAe4np5Jbbms5Siky9/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FQ5Es+mRzC2gwxl9IhrBLhlXrM8yZspbn70yQtmjG+g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BpfjcnJTPAxhjm6sgzYq9hSSKWL51NFgf8Gdn/u5Ct1HLJXIJMyds4TuUh5sEi0RYm/0ndi+PvnYWf8NUMPippuWiX2TUXZP+vjNTavyZpxzClJUn3bvTSuE5TnHOG2FPnANslZZUr7lCtOyYq9KrH8Rh9q/FhfYjx4iTWEXxno/1WWnH/auIy7sgX1JzzaDm+EvPqp8LLzrYET05PUz8i+6F8+H/a53E7kOalHYvMvby6noCa0zzfTzEPcgxaBNTwwsmkWN9t7PevM1Mq/2AAP9vSxWu1bnj1jXWTS8CcsPoIptpATbVtfaK6Gl1KOTN/lsrU46pKOLFaCYSjS0uXvmDaMLEEFiH1iSCtTvtCjXMJuqJUn+uTve3RcRBbpFHG4SgGxQTUXcG0PVxXYB3fioiLt9DcKN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FRyZIz4/3XKtmvmxy19iqqEtRaKtZmAWpoxu7RlLLb0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k/iG/QS3lSWMdW1cVYcgovd+CmyjP1SfQPTBjKGHo/QiJjvFBDk0r2RaHCvpKWOB3Fc0AG3z75lE81ez/GFk+3ZT5Z5A+iT8V/0xH5rs5So8WM8FZMh5Oi23lwhAoI/diT4jUyAxrPh1sUbwdpPxbVQXTZdaNNLhkeb5i4J4aUlrRZKGiGjQEsmZWPWZR8Sw3DK4SyUD8Si4ZQrHOFaaLvaUY1fL/pK6ZapOyJr4OKp+vqO1NBUUO4caF6LvHF9egCA1DKQO7XKOdi+xV51SKH17IaVpNe9WZuHADvz6/QXG8g7XVQDztaiAcoWjbSLaJLCUe5XsQxy0Bt1L7ZUd0fVfqr4KpDkg1tDN8n5/V70C1aEaK2tU+WtQavSZZgy2YXEc8guhvYD3ymcq6jIM2zdekHpj86tv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FVZ0CwgEWNZ/HZJ6epq5RsiCaBiTzmxgIN4e3dhuizk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5AumodYLNuxeEU1itZxrsF2tuxaEqrycUZLSGGJLO3K6dOSGUEc5300vxqLS4VaW4lX3KU4fiRofkyx8DsS4NAdumGvMIEJdhwpnV0bQFVaF4u1FvufGzYttDCKfSN8PPco5eVmdqEiJ5VP31Ym8MvNC2T77DFtjuBfBDROB6Fzcx/rGlD+QNR+KmKZiTnvTXxcBEh7SXu6K353iCXv8zD5waneikv1u8On7mQKZJr0JfDpGYxhg1LhMml8b1GB9ckCjDKZlMiS6q1fdgFeh+tvEQryfC+/sYZplI7PVGyoRcORZBZjgqr1SHrDW9HCKaoNzSYn+y9r127R2eHyAVz/GGR88/puk2avzW/lQ4CTyOhSojEpG1Jb+IIYqL8QwHjLdvHFVmqVI+9PNS+AUKWL4W3U37jWb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FWLRU2XMzHUtrn3U538CgmINTU7LHNm/J6ZxZoN9S90", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kspL83/VzTw/MyaB0ajsj+kMK+ayX/ipYEUPW37QEPBJ4C6awDWdwxD3oM28zCGR4m64PEf317dau2e2YE44FO02egunPQEUMsPcweZZBPuqxEoCq5sqlfbzxEX5hsh+k9UNpiInBI3qts8FuNqTvrFd5nEV3Ec8E/3rEJeH4U6vC9Xd4RuwqDdwLs37XIjIKKU87Ok7n/7V89upJeq36ReRrzUraz+Qeza4eWHdz8mHJyXcQ6EF61TcklgfkCan+A8E1NIOwDJ8F1J6wddv1qI8v23/k2n0z1RzDZL+ws/r9WrpEMPZ4vHaTjfg/ADZbW6wceKTwrmtF/wO8zXFGR1JjCHuySUb6FHepNJj8n8jyYoAruixkMukn8SYjkIIJUEOxlvOUgQyz+K76hF+MG4kuLjkBovn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FXgq9+JUmn4o0pIWHexpDGb6XwcYE+UpMxIoKocHoDY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3TohTFm4Q6TNWo3wz6uKksUV4Euj/JFLExOzPGdToI2NrQADBbxXBV16ERZkjz8o0/COCVfO5EFScnudy/RWJKmDWQyptx5aIrQ7PLqfCqgIjV8GkHQJeI1SxT0V0GBYaJzH5LCjCitLZHfSfx9Q2vEcnFsMOplhS1yBx6JWOrJZuN3eRfy8ISabAKkvOEdkg7+1SeMpj1TbYNGxxP/8+Ligh2OuJ0JIFQWxHIv3m57ngTxbbm3e3ZVOpjoNKmwiGYw/KXlq63pCaxcKgPjGMDSiQQUa6MLHY6mMStL9opolDzKY450I1SORxbFCuwlCvP9bZv5AcNHFU3d8p/CrVYV6H0BA9o1SrgPYjtdSqJfSZHh7zAHpIsTE4iMKzpAViLcr/zmdRfdB7VkJA2IUlGPBvtD2Qs4s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FYnmlFDJ2uyjbbEFNuDGWGC86CUzB85IDOYZfRUvdTY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dl2u+G1GE/U2vNfHf64RFGDAWLuXzfRt+788YUQjEqdn0Cy/vf2PNE0xg3AC+Nw6Lzj5ZzDU25G09NuS7ZjXafs8ufANiJiAGgWAqpvQXb0vtrnL7o3pfMKJnldnYvyhqZ/ie9zb1Ce8s1lJQAyka3/TKq8HPnueJfa6x7uGQE03SCLoNeEhSJw50iylOimfPNmWwC8+Ero5Tfa8z6sXi3RZvOewRLn9TdW9LRb8LuedSptZbytOpkFb1PN+CB5Lm+I62AhtZJkRhfgsLtSOEfWOfCyaiS3n6tgTbgtV7v3+CDG+l9/oURwTpunvFs2x6KjX+EdeWTSR6vfGGMtdf/LD6h1ov5L5OnjwTTwKDyTBbNTpEFMv93uYiulrLXn/ZbWj27/tN7PsZQFmeLsvqNrzrEt8BuBk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Fbuxtf+FlPDJNhFdGbjaEIxNf3NKNfcseNXivkTXfBE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YpocGqytVGnamcbQ07AGEGW41DyznzfWfIkQ652+cwUwnFXuePikU8FTcW93w85lg8USeUKFZ2W4EVaXMcIqzj/bz22kpFxeKM7JDrd6SNRcGXd4zB/ISbplgkiTV0bA11w/8a5PiTTGaSJurSRvSp9eUnlzaUsOMS09yDc8Yb4Tt0XUpmTaAdhAhu+2CCcxBuM3A4KCG3uAm6Elu+EEqKWgGkl8ERYHRev6n7T7PGHrlmz23TASeYlqoeqKiWvihObTlO/A3UIu7AuHzLabTKKTVebRX66xN6t93rKo3+ODNEUJYve2WS3ejSXbL6rvTjr5mgeK0FHYVsF+gYJUWgKtfo6jdiIuMcagVcisKmg7l9rZ0jp8N8q71mrHhTB++5uugaAFbEpGdKdusC1+C9ZiX9zWBZl6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Fc4Wf/8z38a1P4rcnfqWbAwyYzqb3/FgtflGxQMLMIA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pY0bqOoKMbeyWveKVWO04sY+3PyL+hmSF1xIQSvubyKu6S2G/EyMUrhJjH8nhquRy4zvdElpGjTshl5N72kdkBATuZD3lLIqWNROfXslaZIJqhD1HI3qSxLA6wmbZjj5daCimokXWE0ubuWtbeA1djQkuXshmmdCKzhRk6xWmaIaru65YvWBNeRz6KDlISDUhqrzuT6nN4H0DdJjW0Y5p9akQjqLQRDsEXwkOFJUGIdKoV29pSoYR0X0ALK/moO/jk/ME+HR3EwG6ka8LPf/Ha5Dg1ROQHySD3npNijnnIEKdKd5m8rZVN1zhXKTDwJdmr4bFDHZFMgVWex0oSXnn0fs/LjI0n4+gqaEmtEGZDOmQVGI20xE9BCwDXrIY4xNDrXhVobeYmPpRSlL6ETkr503eOmN49jh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Fd/oW6eDTN9ndFnVEyUSOTfo4HkNQ8flWtAR/PoT0no", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qiv6VbBUmsl8rrTjYJC20TUn6xQoATybM6xHTxTEByRG3w2VzXAikc1oOmUiXxRaZsUM15kf95nO9M+iq6UFhtwjjOjFdH5ReDHHjR5wOGeEWA/MddtW0csmEI0F+HLQiS/UmvY0SKFdP0xR9qwjgVGx4jSh2PxW1uh5KAO5x6DrDkJgxQKWNfoxtKtVIrWYWvSu+0EM5Kw6PMhzGBHLKkkZhQurEpOY1LqsfQFcv2aZ7nyPBspSTRJ/YN5vJsMpQ6y6f15VPiJDtv8j1KicG+4xr7jN5XmkcABk8oaWF7S6lVQZOUVtx/eSH+Pi7+CzAIYpbJg0/Uyr6qOGv0xv42nwPPhsUN6y2yu979sRvRJLkWvH52yzxYzKWbLoKnVh9CXGHNwQTbL4KXm67y54uEsHmcWg61gL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Fd8qDo6AwySSLC42G1b7e8L6pEbkoct+BBycKFVCLYU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xKP+bMDVqO0FKNwfu0osk0MfhsjZAtHNR/0aDszZICDX4zNpPzxOEbh/3SMc6I0hJfTKhO922lX1mgZqQzyGFAHVUC6dmcJ0fZZCBiCPiK0gdLcLG1OStp0kfHlEeNjnzShLYbakXFH0JH1giOJdSK+Yj/EKRYuqJk2pYHsegbvd8Ctiso5Jf7j2zx2dsEuFXyK9yOhkUH6zjwCiSl5EA189zCCD6tOiIdjNMr0JN2+ds638cU8JP1Oifmn1ctbk/Wg8WHv091Z6qwns+JU5d/044PB3x38W0svtFMzxMiZErRQQpmBAgR4qeGrY20+/n+BWdSNZ4pKMCQ1L0CBebH700/83y403F6BYCZijJyq9LDdloF4JTV3mcs9MGBOtsKgeDotAlm37/nJdEMJ+8P/MF3uTl1Q0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FdC/k9eIyViSfuDSZD3ELpAqCBW1wSFsHTaLDp7JH6U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RERTIIcTLe4hkcj+YwTei3CfB9N2D5qUr7GMRWjcw92F6zMNX1qSaGNIogvUYFZ/VCwGUEvNu4QnKt4KZtZ9UMUJMO8tyPL3lQqImeursj/7LGo+FTJxnhxidsci1pn0Y1//Xr6oXYNgHTOegszGenPGq6F/jrnSa+aIpAGH4vb2sq3n+AkHzIUut3VRpzdPKMxQL6dr6RZBmreyxlkmcx0siq44Oq2OeFoYbQkFUVqgrD6OByLWjoKLvzkRxehuwDOh3ZG8qg7oyO4M4xr9g8ZyErTWNQoxb/lCzvISwpUSbf5D5MSZF1/UEAKK5PdDhzhANs1DzSeSPKiWFXCfSfFnjAPmABsh3Zbs9hm0cReee6xa3U5X2MN0I2wrfaRhXJOevOXbI8PzMJZLhD4HGuiQ7ujxvyHS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FdKBrHZH/CGF8NdqbhwG5ljFxSOrExQxDaNqowRaNmo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qWOxtnDsPcShM6KzBLF+DChVqh/S1BAw+zYLSxf5b/zq0hG6N7TfgDxYNtVrVi21/i7wJbh/SkHB3zpXYQNGfg7v9WWQ3JWVgVeCAarYOA3BVBwTgzLrljQ4y0eCYrj398gdFHbst3arDcpSbSgfUnkWaJOYbrGKUp1i87yEWsjfoUlU7HuPSKaeDISfwWRpKgFWL9zDqgcGSPNR/WBP97tlybtQDjI8D1z8PRStNKmjruJhLGJUU8Cnj36ZKr7ra+VA2nvpIqUV+b8Q8Ck+j+l5kvFY0qXCqPw8MKvJp2EvGSnYrDhuZmPsx1yNZp0qhZRZyJnygkZpitI8+o08jdQgJD3lC+5zhwZEbIYfkRzT0F3NYu8wVrjQ/1AxkDiqIfILlTUOoXaGCpwCJCC/aQ1dvdzj1IGC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FfXFgPNNK5Q7cFAJxL+EJRhVGYfewFNmD4k2rT6qt4A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8dxyu9dSGmFvS7/LvTVlv9IIZkiUowMK/THR6t5tPDBMMNWLLIlRED77ealGUWFhTl2IsYTkYQVpAbP4Dh6yq8N3wNWzvKsacvgy1Hr3nN+QaPmtfcpgYJZh0voDg3Mh7ZeyB7zvPUiHqNAUvSgHw5Zi6mlocxOdQbL9TxR6x03cVb46XQt63JhhVfQPhmM3qH7OUPRDyObD+CvNl5xW6wI28tvnsS6Afmb6CI/uKulo6HhfzwzJXZCI3hDRotoYSH+PUW4Ddi+Gm++leRi/3kRDgEUSCHGfAQ3dxT6VfBs/eeNReKT3Z7RW6Vza4aIOWJ14G2Nho9IP3qZyxq38RSgHWj3Y5P7bSl/Ztmk6WD762FDAG+rFH7wnvN4m1epV+k83GGbkhpreL2TbP4a6ndChdOguDQ+z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ffb+EnAiEAr8B3+M0gtrO0UCe2e7O5vqOuAdVzh1OtA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RzwoGbwrwHUFyUUf868Br673XT6iUZ5oVl+bp67fpOI/HnHJS8eW8x/721+dOyL3FMLJP073l7rj+Prsh1oZSGs3t3zMnNSbhRnTk/7D1nn6tkCRk06FxWKnhC6d14OFZAbBxwS3z4HaywR0Kd8N7qYtcpIQf01axHtldtTebmAx54wdo6dEM1tpUSpH7/rtADkBIuhfYWGQ24Kk7XRZlK2tEA+2iLdQdi3MGNR6WcsfxIPku/e4U9JhneyPLJJr+XdXDUArIc9NAs8CgKCCVwuFsNMV2cuqnwxdAtPcMuAmRUgWjU6mR0n+By2vu1I7duSWagBV2xpSW69OjSo1XGGYR/z3fuKKXU6EP6G9Tru9mjJ7ASZNTSGw4VHogyb51HkFqKH8O4Jx98xMjNF+WqaIf5dbm6rO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FfxHyAVjrWtHX/Ecx49eD5llLY7msA8TTdtRvi+NTLg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DuVLL97ewJ9fG36nCsf6fgS1sIxSw1N6B0Vlq3/LQ8jbDQdZpgMEVSXDTjxjdTSO97ejjp4rS6c6zH9j548JKokmyIBBaQz/eG/3jhmQrl6WfHnfc0kAeOOHYRP6Bd3KPXSD2W5LFRK24IClpxyAhg92N94Jk1czHvtF75zTKegX8pUNo5R6NEB0lAarxPk/Zf13U2vN+NVUGEuyRchi5u0P5Z+JzAAwdUSTC+1stblgwhPi5o8TV3Xm78HEGKVmh9z1xc5midvpO1n04OxgPb2IvDWsnX6pCzf7FUIT720C3MPHWTqG3et5fYk7yp5iiZraKAx9Ykip1nNWZHrBYni8eZXThfiE364wZ+K6JicsOGGytDLEccRFlvZtXctrjC23YRv3F45QfeTcVYI4ZT/jRjwiXPWU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Fg7aYLVwrtB5MykC0Z4c101ZfK5jQkMyL9Jp9Dnu5uE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DFZKf36s92VizeBSFP7nW/U3D5E0inNRKSlVJfeIzJx8Yksyq+3QaOYRXsRP6hn/SHYPZQtoccP5Tr3n6hBEBhctSjJQL/qGwkfnTL63NJhumU3q9AUBSL3uKhpcNJEtWKleEMMV4Gwj4n7BJX3qnfHtcCQ/GUGJ37t0JJpYBB+82RTeCEHUOkU6k9MIVNL6KDAM2CTsQUFto2vTY5XdgJAt80I8i2g4fk0h1n8GOyE67shHjr2VZHpd/WesamBNRpuVg1hhtfEdAb+MmTSbuXKenbGFuYxHwlL9M30tr3FMmKDM5TYAVM4Cmh6qmIuLM+xWMTyL3wwAOrS0aSbZ4wUKMbwitDCV2kqeNnbYiLPejknUQqdeKIOixIITT7oDo8mh7JGL/2LrkmS8ELuOxNLoGeaEtrro", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FgAjsXdL84fJq6YGJVRsjXrBdxPhosNdLpIja0uXAe0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sYZuNEA/inij9EfxrQ2x67sp/9wa07URzrMHvS2EwyAMvsV0qJdKweXCi72fddqoi0Kjb33WLjSo8AmbTAxD0CwlnzMn1Q49l9L1HB3fZjpgmRmHJ5PtZW1/qu0YIHnAghvCsgtxkh7fwOfCNMzsC8kA9ZNxxtlsbQUo4jwOVTBLkRqWIMGp28UPOK3GaqdbfwsP63lY/e/v3gsDNDLvmyBL996uv5UjoXzSzr/AQ4AnM8vrlGRjs/FWU2pkR/KFCZ3p78h7bKnQS2/ubNwIkNAV/efr4dj8jaFM2E6J6aiE/Z0wWV+vclEc5Ydjo6CuLNzNs8M39QrXsUWnrYwCydNbMAea3kxA4+yyLBwD81b3FG4Jo5YyFt+6v7gU/e0giJED8CCc/vYRfllvhPJzn6dnhm9nFBEo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FgBENt8rwESPuD7RbVQGQmyUM5reE2f5p+t/tOcN8+g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gFVpUMCNg5fGHkYkseNrVJ4mVFnZeEkm8TekJGzfHRGVK4ZpNCUK+CAAftlwMzn2ExDRf8xck1/fq2zaDbOdvV3MLb0ouGl+wcwla0isI2xKtzVmnjg/c+CfJaLoQLel46JYHFuh2iBsQU1uVYq4IIzv/XV+LwbdRZ6HldagKsHYfZnxRS8EsUXSif8gUMx0G3+ZVyaazYrpKfPxASGBxPe0j77bnxJnuJVNJAzHNdfiI5C8FvOl8H6sRfEf8cqB0rovygALJGgPH2CXY6PyetY4W8m/wQWF3pnyIZZbBByK20y5oSCNeBWv4Q0i+XB4y5I5dVbREefVP5DaIulI1ytjDR01mu6SCTen4b/QCFpmjk1NaYAn7I1tmMk4q47MGDZ9xAz1kvRwAGLw26tOYfcVcUSWafNa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FliqmULO/P86L6/ukcUqQnwQuZGTetCjUGwnA18Jsuo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OmpPskyvLGrsrhDDY8SAyG7A9AliLfJQWldzGkw+LR/4QsRXwWkVcpUtffGmUZ0q7njG0sxSlQs7Y8F+YsxeFr3EASL1ClpnS/Iqk228WRmpYhgOzkrKAmCotO+GWuKC5zjK/qkanQSKOIUjumIB5iSX7L9A4cOAb14iIZYbKU2SltoQigv5IkDzPRAbl2M79/pLIM+y5MoQBnC06Bb/FkKi1SI0E8HZsFzuUrmERQWpQ8o+wfFo+cHKSgHzMS+4v5PvYpjqB6zM6V6n05eTwDexJ/UA02GCsOSS3U19RukBtPP8g+XaywT1hvdlw/IcEChTKZpFGRRoY7Jm7FJ/PogYOp41G+V65k67CvKxqJ+ItYpMdK3RTxOEDJ6i+UD6H4rvTfep1/LoL/Ts3jFyO+iZQS0M8N2v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Fm+DIzcYlEiZqOnkpOAzl3fzD72olmSDcDKXWNCQU0I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xO3buJ85u0WxsGuC/oLaBkCesm1en92q3kRtapGo6yjLWKodUGtZOHkq6cRlBXCYu3ZAfoDkaXbPQ3BUxP+T1Npj43Z2nLyLMc96Y5HAwzR7OLeUyA7el5//cWSv2hYikkUdKt8pHbFt+TCmChkSKY2aiKPKL0CDkXimXmFSRDu2gc5KF4PJvzPUyl4B6rMZV7HL8Lgk9QV5enHW++q1dnoihQZoH52wo9gIUQ9rhVRMhxjjqfoztDg272ESf9aySHqKR6TjehtZxCF0Hry7tCNh/YxOG4+EPcNnvY+X7xaUMZkUhMuxYY6GjTwRHm61D5cqWMOprMMejJCsIFgwcTONE6p0kJVMqqoGbypML4cqgLfqTgMiDL0/yD5ul/dei4xt/H4K9aN0+0pN9O6dfx5QZMFXQX3G", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FmGmsZB1V4IcGwadtUe7IdzuLIjpBGYGHSbmgnoYyL8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zaxpBQHNbxuRIELGgXCfH+5TreJ0WgDs/ShvnEwVAUZu6ZJhLfGwh4dy1uo5r6FEbxOaF2D6McCKlHkZo90jAVQYgeB54p5H4XQhlM/vepKSBD9/oV1MrXar7uypIwMyoGCJad5Rv2+1zcNJJ0Axt4/hxRgXtsP6R1iwDtLmgSF+QBGQXkhT/C08uPT1xZ/PemCi5V61iZqU+d7jYmPkvtn4ItXtF5W8zyPhap5FbUV3NKxwdN93mqW9qZakGf2mfaorVHlHWJUgRLpu4RGVNUqYLZAK3A8rp4c59bt7PdWdbMs7Phg2HsRDeGgAl6ktJnjrMJeOcYGPz5dNX5D+xv0vybTEzUYbAliyE3ZBVXThNAbop3VM8lN+lmoGKqIWCcmSqKzWUHFyxvXRsjsGxsQYK6/03Ljw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Fo0jbYaaRI+leXkeM1yiVigKxBj0t5M6gLGDjMBIvIA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "luJmOnSCKzgo5NmHtoSYryg/oNM9cTXQEvs0EI3XMIxrW2wMpW7vmGFa+LhhKwNhJPYu48uBUWlyJ8jdAHEJm6gLvo5EDU2JHvV7WByhQLih1qZSgB6cxkSM5A68gnT20I6ZkZrNXhWXImZo59Nh+1nTZRA50MlD9kDypBjzg70dYBEvr+/x33exWeygenRrmpl9Db1uYcjGLrmaRN11o2Y8LKohxm48tRlsw5tmCeo8C1/Bf6/P64imRNeksxVG6enZ52W1SS/dQ5cOTUzFbXwvZA9GrVChaOkU0ud+CwlrOg0iJhIDPlDDV4KFaA5Z+iaki8E3EpIL7FpjsB+Net0bYvabDxK++bcjAMNfQ3HfQh9cFQK3WmPmjA2P3WRyoH0YbzvU5aWQItPceHC4hupVlEeLPqA2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FoEslpAqrWKTe3vR25w55pcgrtebXZEfredi48Pfh58", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2gUp2pw79K3SJ9MxKN8Suf11yAwLu+XFkeQdphuoFpYvP9rIHfYvShtOJU28Z7SOU5ri3T4nbkgAZrcobo8Wzsv8JtLf9Jn0zO4YbBVVbifLiB4fap/iYcSDx8OYZAVqZfMiilVRbD7EUBFq604wRIZXkFdgt3VMRC/W1JN2GKXe1ImMaxOSt5lM14duB5OiJlSQvKoKgVq3tkIZql1/NoLw+JRRvDJ/vmlEmkMwMI/AKhyOJuwoH/sydFvc/m38/IVhkrjXveOC/UaVMyzgJnC4oAfxOVdz/l/5D3SYUm0d3gybfEnvNtUOnLLdnsbvbsHRvEhs0KSrfQ7HlsriYXTcpwuQwg36h9ptiQPyNTh9LvnS2L/Bl8a03OITxCVkWJ4h17+rp/ojeBi9GCIWzu9nO+YIOpNH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Fr/P9BbQ0OQKZp8uLPynY2z8Nf6cbRl9lVhdqPJixmg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NEZ9cyyULr9S+XYkZf83OMyYnWW1m4J3RqT9qNyQPoT9Znv87j5uJ+JHavJfRxvmqSp7lq8kwnuAIDrm0/3tQbvXrTbYjzntzbOPMM9bXTmdn3Fp0NH6KXXhcd/rnBbIAV1PQQ4GXxOblqzqTLsgW2m0DkPYM8pE2CNfkkWJVk2WAp2QLZx34B/1LeuPLPKgl/U7JYgYvoVSkcbfdTqXskYnH8U6qHp0ZIxjDjICwtcOAObPwtAkBGmNm101K8htOt1mPTLhnrBjzUnQK+s7Zmxs0tsBsI0bSJSe7IOCcT0ErSrje45rjY8uGNpxofRmy7hHby19e/w8S0TUulxpnpPJcriLGYOJO/M0RQnY9y0Q7rNZfth3wJ/Be7iTYiu7quOD5iW37OcEdR9L1WRbhQyEzCXO/WYC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FrzPAOrEomxyJ7JzrBILnjSuKqe2v5yYgZdx2AmsU3Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Hq/yzXIX5HfHBp4g4YJhjPp3HEF2yB1D0Jr70/SXe/8hW50lEczCZgLw9NgDC2wGAocWb1uGDUCoGq+bZowgqOiI7RIurtDXFZdv2YNloJnai9bVdY9K4mDXPnW4nm2hDevJbKBibCT8j9ulmocM1JRHWgtRxGTA1Ulc+OvbE2aAAUUZt4KZaSFsXoqytlBqgP0ljhbUI0X9gfpv8FV3AoVgwnOzLvgwDGVyx5VDLSIVQtZzXR0JIWJl6JHp9MacHOLymQINO2cd3Vxjs9LpemGKM81NTBm9iXo9Jo2AbIEUYCsRLnRK5bAot2uf8ePmIL0xOFuOg1touLMPN7wkYNeGGlhsyGFlnWd4E2yO0o+TyeTJXbSnW7kPsx2vkbMz88ujql7ngu4iDCdQBrSoo5RnrCOxjtQL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FsaNj69yTMLwqwXIeE3IMgil0ofi5IMFDmJJDKbxLqw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IDnnK10mHmy8HfBvonSTQ6J0BvbMO31dgGa3GEudtFSoUoAfmQTyq6Cv1eez+D41r0L8i4qpH3rFD4FCj+gC0eMN5WiIcLf/AazSG2AP7/eQOWjeDXaiEfcPwDmwa33Atk8q+FEMr1nX7TUG+PMqbCYNuRAhKQPXV+9SAt9iXBrA+MPqwIoUb3KlsVlDeRLB3RRJpldN/MUZv1DCrKOETbE4mF4f6sVIEkpz1OOsWqKVDUbcDmCbnmtVO731iYQzOm7GLITBsArSWNs4qwEMAJlY83+LUGvoYwguScEu+spXRTOKCjvcHDQU5OkwufR7lTRBtqsJj37nDVdgnP9WOCOBiBZLG6TvpGTogbRhJzjlFOkHH/9Qb2WYESXT+l0lYp967JeKaIryUx1M6wLdmzCo8190AJUz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FtIihwpcwAmMzersZWikggICAirk63GDqGJnx2Qv3Ho", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w++Rg1kWjObOuoHLX5neLUa401cttvcOEUjoWBY2Ruzbk7ohAkij1EJzsBjr2A+RSI9ziSAhRqATR/7o/1OL2YdVIqIvjY5Xk7Ugbf+EtbUn9zWql9lp530HKk+dua/ffvspS+7hFHcjX64zroxZGCJmbe7kX2KnfdpEv+7kbkj30Ym51udAeQO4MF8XrHdfcEfSoqKi6Xd8xHqak4B+EFzXk0v4OCgc7bA6SqBE6ehkkTDCSHvau1WEOFZqrkfzDBdhKqU9OJrHVpkWq49sQ9j0kBxKOGx3d6roH3FABGCFmmvawnOD3jMiXhPMWwJyfyE5RD4TXnmFC3Ei3Tlx0e62KL8xR5CMUa476bEDjgx3pVGflMqH5QU9LCJmdRv1E1MfhnwC9S7lnqsIA4LDIu8p8l2ZeE5a", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Fuc75XUxlA+K4gOXpq3jNm1eZWLXFKxg2FI/HXc+sDE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gTqVCXzmDRXpYhhuix0BWemm430nQ4uhBEdaQwHMxcF6v1MNETl9+3SwdSeKRtDH2gjKKPwYF6iQjccGM2ETQJ1l24qQ+itFR+WcOw5HOw/zE+YU2B3rE/AUNGVCE6wii7GfXpNpNRxHlryuM2zMEI48BlNTHu4drhHUTkx5BObxwObfGa6tV9YV8r7tYT2UUGtVlN+rsPgkKQ5/rtiACsfsTGnfDWU1EEweFHv+aVu2mX8WnmEdezgRppxTOS/TJXwtmh1IP1udFKz45fcau8klStZwBpm/gmYgJEjSlZQwDr6HgRNfkEitvI5jHN3VAv0qKbnCVEAbTwQKoVqca0S65jARzNApbiNAfm9FWhKYBpziZJorztV3lqsxqg+GDJYGP/M4CfbKjXnZsQybc1d0Y6g6EGsZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FuqBwOk4Cgbitw2Qn+MjR+X3JKYbsUJLx6SGVIZ586A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gA2U2mWhDXP3giCtNm4OSQD06w/nYSivU+ycp137iJgwJqW6e4X8YyF2TW7yRqRNTzB7Ng/bsW4ELklcuydJi7Qrxh/ZKIdEkoPqaj8FJXvQzwGmI0XImntMufLQkaSnhQcg+66AZ0pqyrM0pWgYmtbzvuFCFYld+5lgHXgPD7E1eOkwRu3TKFPzqUgyF3pHYc3lRcongUGc0H3/bqVyylw+daW2Uvucp+7GDghr2yo9MODdFtGB9rCrWcp4rqQooD9s3T4ii3onWq+woGwlicLfYTlCPEuYzAWJ2rmXDmg8whFB69+Gpl55ZrICY1/+e/3cFle6vf3vIxiAh6Bn+P4eAktD/Lc9Ad3aFYiFojv7pDA5nBUqpoi44jKhnJSqmZL9M1TAD4eYXn2ls9T01sY2tkivYy6H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FwULNKbw5slqb/Kec9T+MgyDTgD1OB6iCJY21qDLUFw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hJbVZxULH3CzXZu1Q6vKlAKXrXQ8Y5wLfUb1m1RCs9sk4ikBrqfo7z7ZDXrQWymEEv5NreXZytl64N1eOWqdmMMIHlhrT5n4qfgabtMDrHT5gK0zz1VqTqVNdeXaqXx6dGzKTVHXYs1PKsozJ2pdQqMlFP95ifXDeujY8mKL0IZXFmeWWBy/5CGuO+rMsnJxqDjw6e6TimANFqEy6xGBoXt41bSnXiyVaxaIptUA3qM7qxqfK9BZdcgd4PMd2J7ALcGwpSh+KzX94+8Dn2qAI1ca9Mm0oQE6OBPaXge7QfoaVUR9M8bZFjaWmRHtW8E6dKs14GRfwB3TJbJSjB6H0oK0QgwUHjR16RDzbwNX6IIBJfPEhPfMBDNs1Ql+3YUihYDjM2tXQP4yI2hJHod6aoFRCVK8wRw7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FxUSpoZ8ykSe/5vcGAeR3RLAEX49dXDzDbBm2YOneW8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a4qNkTVcnzdOZkdvvJ19dQ+IeklG5okrYzz4C/tudBC1ywwn/DCc4le8ZtWyMn3m+BfN42lmC8uKXCc7PZTSBGDlfXYDgrx8bWshtBdTei4JOQ+qeQgoCSYXrVcBmNzno77TSewn+sQL+LL4k/TFXNYRa1BhdC1q0Wm1bH4ZMH+UGSBzxpC7VmxKvEvfNVQ+hvvukW84pY7Rd353xoCWpY9BomPCvwntAulvcCL3n5tprwUwSkxyTc8lb5V4Mc3ndWrSJZFtlAE4NOCg0kikOolRP2dD6hwB5Me0P8nO8/OGZOIsOT8G+ku2TjrsEOCDKKaoqMfpy13KJkz9X/Ri5PP7lvoIlP24NSgpmVQFi7vdoyyAo1PhdWcytgsadq1rVkajltRFXOfb0M8KUdPL1H+KRJ2bOerI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Fy+aOkL2B1wI/QrisER9gir0CnhkwY0RiTf025tYgbQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bIqpG7Y1goA2trpe/JhvW61XQ6BWh07kQTOYGQhHGWRyCKDGWJqaeIZjkptYCJYOL8zZRu5JE8r6/i2ouconhpYc/bHx4S9TMKTMtd+ChG0RwunE4qX02EPUUf2CLdcEW0475Wq5Xntf8r5AyUI491R/Xk8ieG8B8W+Uw8zrbNFd0GUJ6r69b6sX8a7/orelX6oyBt13oOOqWk3jpptOow5j6xhUUs4G0bNcXGw8rK30QPtvuO0V0mY+GduieRA+i4UU0DFajoHn3PNnKRcQNL3iZfNfqahN/OwSL3hiE5vTiI7GQzmNNJIjk8LrZnLpOT0LXio5UAQCLCJpW9iduXPoktZ+CxWg2cjRfpoClNPKR9b6GCkigLpWqR6r+lq/Wg5YU17OdX4bz95TYF80bpLnIKw01Ldy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "FzWzi5PKLp7N33Ypu0F2oEn8hasqldIAOE/k62/aBYc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sGlB5hus0ZqQaj27eykmm9gr9J8BpLH2KX/LxtwDkrbrlqlsTlElBTroN1gVXooPgVR8+rLE67D3iEQ/rx8qWaQSsli+x5U9uvDWVjLECE1TuKJbG2LAAipPubUrSJlFp3VQwIW5gzrNU/GvwvzKEgSDIqGFZZPXUUGju2bPjo2ApzuY73gG2fxnjY7Z0Gkmwx0mvk54sDhXAwFOybcIv67sI+y9m1V9S81JDWcdZSY/Yi5sqSz3cfPjRHlumYW+EJWv/6cHyUQTATVsY5M0/JHwYdEz0rEl+FxzM9M1NoKVsIdqf8fMBo0zyZM4vwUok3OKaArkoXxdSADgGvjFH7f0PEJjl2d6w55uVT7P1aLTQCJewfrFo75EQz9fBIXtpcWaaMeMfsSztrXt6dLrfXkkYL0V5+vZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G+V9FmRqX/dFpJKXm/McSFFsSkNL4kZKZ3U7w68PZT8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i91m93sfD9i4cUc8kdqNi+7WMjZlzC8LmLOtClQdo0dzFHLmo/zR0oxT6mZ5LYjySfXPG6TNiAQgelXfjq4zpGBkRVv7rKMl6AwQXGk7+3bWFTMYGuloIlZjpxuXI9yjImP9/cvzm1R21bcwggI6IDlBMQRy/jfu+Kij+mw0S4hdnOZq3hwd09Zmg5ud9IsPCaI39W7H3KaDfa6K6o2HmYKJwEvIRBG1qfHek8legQj6SawEd11SPZCvg+kRwR2SpvxGymen1rjN5C8F4Y0Ggauv3i5YxtnQeDeJGTqYkd3NOppqQFyGQb0r3XlTg/dGvy1OhCS7NChXxOMeQPP6qJu5bQKcq4tzjL0sF7BIojWBu8aOKXRzB6Mtsm1FDUTG8hNLlde6u6QWneJkq3zpSxzYGlIoHdaA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G+ygXTPn/kUpFsQ4cHhORXwf14Nst+U0bPEIPDVhRHk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+fuhfI+C53AxwDzaUO/nMw+4xvgzCz03PDAQDVHuRQ5xOj8WYvYuOq0J0IOTunSdtOXIzZPkAtp4vacL3dRt0WSOmTS6nArBI0J+HLulC4IvzWLuLVLztyTN6B28cbwaQdWFHhw6ZufXunUrPbs+hRASOrnVn6b9gCj4vaemhV7NYXAr7aSsv/73CopAuARhAuWly7SHOvzJHd1OhGnZzH4fxtg1vlI0UeXrA2vyFWtI7GWMYahF4Pl7TX99RtCmYxvS+IatTEzRWkyqpKPnPpyvh/YbOpTp39kr86BNJr+yAezERnqnK6nEeyGLf8Q0gTDvHKDm/3bVAnTT7iFOeWa1bS5iFISe5Vi8Bo1glXi7k2sqouIaIOk9C4vQ8e3M9J0ps78FVy5Ove3jVW/L+UWPClT0Y5+q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G/owT9lN3YXNhHHXGEtGAFckmLb7RKKiMuBE+5cXVRY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YAc3+6U2Ib0yEbM8UaHcAAUB9GVjIp7nqCMqw/eMX65wrfKXDlkl4W7MaVJbVD1VlSXcGXtYzB+ebNnYVP7yWkA3DfHRTlLwN2Ij2horLIHXrE1T5TZUa6bmHn3BS7fpvsVkQ8JVF3EpISwDDxcJt3mGUgldmLyqBte24ydUMmQ4/TbiA3QoWr6zzfTYUPJxFuAi5s+ERD40zPtZfsI/50QhOc7En4HhOwSBlI1vULq57/6O40eGri12OCmOLJ4aNQD5zfHGppyNPIvtwkcARYqIjcsmqZ7uM81XMzz4E/j40NKixcUMlH7Ok6dgB9Z5Y7I9xuQsChxDOMrKVCcXuEXInpZzU2Xd9kd07w1/BVxdSZkESYcb2pdGD75Z2XkyOp7KkG4LwydgS8ytY0kEtjCSOpi5Vjth", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G0gS4xcIjyFgTnp1EZvin4p4b7/O/ozA51zI9+xFwiA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QeLqNYyYUuKoxgAdFaxB6yvkamnnw64eA0opXBrlXM0f9uEFW5TlB1k78dzI3vJRZn+7lrb2UEsGw3X/jJGT800IQQvZEv9ODly2jATORuU5A4u8EWaatUPFw/a5cN2aV7Y8d84wRIo7t9jFNZLKWfe0/r4mebCm/2QP3ifmWtqYET6pDCPjm5T7yL0jfdYXftVt0VXKe3fGGQk3weaGSSKrlbPoPNujkzcOK4g26Ebz0GHOfbeRKJDiT13awlFxnLTwuEfa6c9+NhH4HAfiv2ZrTV9Z98VIUUi/ukGXwv507IEc8B/wTTIsMi16F+7nj3SoMmVXGkOaRKsPySh/V/JQQmr4ormtBVwis5srTow0BOjBZOlFGWC/wau+ZNIwNeER0U4UnZ0oIT5JnBXIbLuFs3+lNQvr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G1yVmQ8k2j4KzXCbj2F14Kxj7b6NkGsd69ExPOzwoSw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZvYR/aOatKCFBM9c0bQMjPF6Jwmg4OVUmqCc7pSWX7Mc0KKJA2JQqYW4cMHz4USq2+5YNReZdH7J6bN63TMtg7p4nYN04iL8ILl8jx/84g5mFeI2b8IDliwMy+7jBLwiEATZzsGnyt4WemZT8f6fPgGNH+IFDo1Lm31Mcs7BN5lCyYyZ+SGUFO3jABVxT25X5a2k1hZjRJcHTZdT5SK2szjABKHedYRgso8w5vatutfE8Y+WRx4V1JK09q4Wd3Xk4Jf9a5nIwY32EU+pdsVZMERt3kaKZ9pzWrBtc2FxAauHclX90Al+4xK4ANg47jviCUvD+AB2UWa9O1dkWWC7NvFCFZcJMrP3XvNj561ejBnSpA+q/RLwjbaYGThJCQ8JNDqOY1b6ddIe3vexKu4oKhW4PnvYW/yy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G3CNYQFgKBobHkjsCWmpFKMb8sUfwpwfmbwqa+g5C/s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ti91aLqWRkOEWN+74p9l/sG+BlSY1o+LGmlK4oH3RGiwxUxBJzLG+uYOlLtUtO6tSzXx6jRYTEtf7Rvtpni7s4Kho1RCpM4TqClYSbx2ev7b0vglvA5fxBnEBgjIMwKJKQvgxcRds9WElfpp213fJwggtoeiHtevDJ4xulyFzkedJ7XyQIy4iMUOlmALJLa9ZPjsAdbsDA2qEgEYFiYF9ZJWb2VDIZXhbOk0IYxX+iDrc1WiltPyWBFn+1r4FXhfzDnF3qGbeSWOceWGBB+esjYzkK50UNDElqwKBjkP55HxVxj+LsqBo+ZihCGleL15dnblh5OJtC/pgXVENOlhvvZYX7VApRWLS/qpOo0c3wOwhlHUjkrxgJwd1aZuvaIxLbjLR9jHilFXZtNgnIkTwlGY7reEYmMj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G3YieGJ4FxMYDjhqoSkkLuTUu5t4D8VTW/hAf0zr+28", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k66CXryU7kovGDusYfnf+o1vnQO+ZV324W000KU7FI2n2ikSfTqYXKx/Ylym2kQTytniqAGRj+mkWTJ7p8kFnxQ+2SKnv6TvznItLUh6zmOTDISWZ6R54uB49ZJDlcBjuoPdnraMp+TYvpZ5eHAdchXJzcnT+5IyFLxPPYGg/Z/v+A2K1wSwxGeNfyKD5Y2pPb0kksxrbVajQj7FLI9AQ38JhyI8JUxVPUj4K0isj/nFWXK/bKzi7wyTVb/evP8pdaHvxu84h8yDW393wdMgnDDPw1a8B++Wqni3D7ctcDMMFlIcxCDVjDMUbtCGcv/xIIgTYfVpAcO+qIQF++3E8pO5T6hewXNmv+R/DCK7QHGi0yS48HO1D2aZiYhARQuwllgZiJfsbkOUITEadO2Qt4yM/c/vVOY+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G3trecC3SOb4e8JOBHKqP2ycxUpcVQYbwZaDn9JrABY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bAv2P1qXFl6uf76Yu94WFXoqBk5/u/VeYRbVkHCA1HhhFlz7abcI1ITA8qmIoFRtp2roc3wsIj2ayeDmRLCC68YCEvG/qgEZhkhWery7/Uw8+BT2423nt7Y1bqBTWqwWZ6LikwxNSIfJ1x/11xCamfCIIqBDHDnH9/lxCOyWz0SXlOTqCnbwG5LpmUCBOZ5ouwh+jPJZJiazLUFOa5WUw83T2oWGGEoTJovYqECK/Bgc82pYoa/e7kxBMmnrsrswbBsyOvTDOcprNpZhMgYOPTGBPSSoJ+7VYiplLctVKAg77IVWAQsbqy/08hFhL57TWtUu9niSe33UaXxht5OtTB2AJoclPNnh5+HjS6if+jHslr7Y2mQ2f+da82lMhgzGvJ9b0b6JkVO26+RznESX4ufZ6MG+Ls3D", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G4Mhae0kClY6w91QszpuNQ2ckF3o59/v9DuJXQs8xAI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YPMMq1+sxPusx+vkdsVj9T7ugfg6GtequXf/vo3niyVYhFSYgcmOJTuniKD0GCb0upIDETGklH0aNhUaqmFZICf35gwSxqV5uHGpUaARVg66OoR1LKlM74XbV6+eGQhALFkLNP+AANIk/o02ziooxyRmGu0nXsfVudE3j9/wcdkQAB0cylfrhdtIS0xtS+Cta+kLwKVf/ebFHu4c2r4sUFQfxJQt4KbzXIhaBUHqWLrAFoRKyvsqr4UzU2I7SXdw/u8kLyrxiZhhy0QuS8dgHSphsqI/vyPD66HkZvwR9fUkIa2JAsMMGohEzTz9t0kMViIlxdqcoa2LSdD+hozRJUJUsl3qOV/mYCcTuMQgcxSTPUzY56HmAr5hT38OhaMdqWfh36rnVSvF6or+EzHRHaa0c5FiXEvg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G6HJKyNtb5ZC2u2PW6KatQ+k6uReXBosWMogkP6RF20", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wiEvLbntyP78HdbsX1er8C+CiapAe3wb7OvtRFM+NSzXtmiOhp5RP6T6tGKWtx41H/eDr9uJLdFP7t0SCYix3FnU+kqUYvKIctGPXtJN05hLDxnDCfvq52JlK8vJKfJ/yv94gcejeMZusUFhsZhnOEzZ/ytp+uYijZQrswvItVnn8PD/mFjKfVKrglPNWXTek2S/C/pZvEtD6zjxqeW8Mn4s6kR5wSH30dYmquewDh5AQ3uBR+2HeBfSVW0s07PfHcUgRb0Cip2mOLU8W1dIAxc4nWFPhh7iyCVYNKyrBVCIBOK16zoJAKSFVMmEGndjBw/zZp6R8NsrWY73Hq5m8rgqyXPZJXCybrj1B9efCix2oGrIqXeZ3XZuKnFlnGc+FlQPCqwQOnw4WpDEI9H2RlIJuGVMsiRW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G6tuW5Vzvwaz7nMHG8R2GOXJ3rs5kjiM8/2H+oYVUVI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GypjB/ix2H5Vyc/ZQzJiHILGLBoIt2FFwLbe4jQTDWat2uMIeJ9I6ww/dXOCeXn/rlPk23I2kPJ8Oo5H7xppgQmMhCTIzLfUssNb7Zd+sJLOoLBG1oRrNgAQEl3EnjQRFBbAvXH2pUWQOzomrqi4yuJmSsF567Xo7hjhjnaplH3y71n8EpUwwh3rw+MuIu2wmjz2VNRX7b5vPlmFvxPQJhcd7BpnqGBlJNCgB0tdCH3Kw6cwJhzIMq9mHe8Lr9jQKakglE4FgT+0AjFQEW0kqfuRGU0/iEdVPsSV1rGjs94p9qWYsJUfN41Rpm0r6ezJikbSt/pTRRQTMhZlhTEsY15ftZU8UXRK4l34eknp7VPc6oEE6iCumv4tHN0wi8BKvQcUz1uMPouUXf4eHOX+okSmfHeZhbIT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G8/7qXRGydBFNmrrk45vh9S6kJFUyXVmzD8r8axpiD8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qjWgueDScWVOUsukfkimQvkPVpuxD6XkmC4cGibjAZ4RBb/RAnB1Wz7375R34X6g4VK4Ny5XqmE0jTtGoGXn+sVPFACw/CV4Ygrce9Ou1YHq8JjXbqe9yb4IKUtYI7XyWLUFf835tj7Er8HC55CRp76nrM7xp1LceC7fUgfVnhTc4013w6w41BHmqNLHFzCDEdtGq5XuGSjpcHAq6Hti9h9YnUxcX6XL5Ggw3UpU3QrgSYj87GQwd/cvd+JMGSFF1X3sfmyH/1yxUY+rzSMnCImbrDwbxclM67pfPW69xyZ8jEYB0a7eY4xXj417nUDsvHPG72w5g6WS1nripwCD4cWLSwRmTCItit2bsrUpqr8eAgTJUKz/+Dh8irgyG37PcPJU4k+hV5MXcuZEp4DPY/M0UQ13/KeQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G8a7UQLhjEZ2L/e5ToKTj+4UbpKZ7cILBJy19Luj5Zw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hh2vub7K4fwFfXfLusg9AJHxHDt7GnzTE6c8Rr8X0xGrvrmIKb63YqZo16UUpccYgFYnNgwaVnLDMUGM1HYhc6L9Ku2YJDDq+S3YOjkxqyCTVsDnJO/TWMGiHJ/z0AZXxA2DyUJrsWWk9xyH+o6cX9KXc6VNAbB7maV3uSSq6231DaBdb+9hMpxzPxh5YrSGxwpx7Zw7oQr9Ke3Se3vVZaWDhBM+fFUHLD3SGkn/blie1KLTp1aFUcgglDIjgeXeywHUFmY209idr7wAdjOqdT+MxZSNMKgqnPCi0Zaw/jdYNss6Odokfl4aso5Qg9unrc30+FKbURYc1scr/y5L36N/bP8VUJeCJVVfo1JnUXjY9hSfCUKYOf0zVtLx0wnjqp3PalEnOmByYqTaJ0j29RWkOU3S0v6J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "G9dA1YDy+TTkfSgnD+ZkZJbB7knR2S7P/okc/4JnKCI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GEyu2EpQfgzjv+FiIcuLAxYckPaFYkwmD+v35yN+T9B0Z+N74Wk4z2IXpuaDpl3JjtuSz9tzT1RdKmik0hR8kLCalWR6zYcicM/SWp+GV3m3pC44NO1vT2vcAQRDIF8Po+pykYyVBO7aZmaElzLGrpb4qS1CVREECUSQtjyV0uQ/uSjJqCOIPPDuiZ2dlOwi6DzFozDmUIIVccUKH9Hh4C6lgM52gxoXEqdN5uHYrDb4vQ2cooqY/MwF3V3Uf6mGXaoHgg1+2s9m+scrH4C9uG5NWnxIMg+xLJcjP0M9YHeGA1F2mTkHDhn2scF62GDUuW2aGxQ7s9r3FGJmE5Pz8AiPMn6hLCEx+EY7lpvpJKBSEC322Y16uRTjaaaXwpSHEDZlpTHdr5FudufSBscMnNt7jDy1b0r9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GA6Yti7EkmLdMz2P/I5pOaMuxF6Jpjf5/l8jacC2NTw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eGjld3BrmXTF4LhSLqTfdzdwLSgHl4SLvVoPTjKd6fyWPI7IXb2RFXIJpNxB0CiBgGAz/1YK1MFnSGbm7JwAul6UJIHQSLt5ruzsWkPTY12v+kmEwRcY+UoGz0I+2LxHzTTi+jLYIfFORIz3hIiYzj78ATSx/btHBgHu9P6wyQjt59UEZ+8dtOGNJDPCwc2e+V+DgyX73Iu1ZFj83WQHfGH92fjPzJoQNOk7jSi7m+Tc90i7GgT9sIQzBtq5uaMRjsTLL/aHXs75MByFRLCYQoFY06HIYhS8CAmYXBKZQeiPXhJvXiFl0uKCpfePkPGO8HMjbkK0dkcB4uo3U4YhR+lZ10FC8wiS7EKOkRl0ntuvTfLrWkMW9cZ4dYSCEVCADDIa5xfVhL1YLbzq60cUBUOrfuwf2HnQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GARIRBgHeI/f+rxeFslUsXEIkO2o5zWkvzHDg7YlMYI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mKP0uAtAYFLOv5NxXngbMRnD1g3xdFRuqFtTShzejdTWE/+92mbtQan0ra+WJeVzeGGXVGixHXkRkCX3TYnklmCzt0GCb/YSVyzo0PK3pKHSihDmh8UNwcQtaDnw/Di/PaQCbSfRfiaih1w3hq3mXTE7g+x494+4D7I+S+QYvn8f5tanGmRdL4x9Vhf4aot0kejD6wxSFKgbNoI+YTqlIZ8lj1cpw7ohtNTfIojX2luCgLUSmSzYdIgsKGLGcYWO5HBoxrJDHbKkGmn8/WKkjM+TEfgCjlqANirBs2mJ5xjO5GeDPVq6SFl7x/6Y8q5OdJZWrw/4ukuAyUy1DiNOg3GnKsFGX+zWgGQ3Y84+cCtdiE0sxtwkQIAKazKgVdeaCQ/iCbNemSqZkPo7BnwMqRTDXtR19ovO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GAydLIJWNjyFPDlGzIXzMGMtcRtnHrl7dN26GVLCauo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6R+GhxmeuP0ex9lQpQdySSMdMc09drCR2Twi/Zg4S6hCtkO++PqxkWg1Lo+NW1Dav2Fxau5LuwIW4eF7gpic7FQ9LkTPD+RXIdNJ+maM26iawNDXuoZmH9CuJI6eGZHNLs6iUTBUPUgIuTf77EuCzvgZu1R+ghgym/pN9IoX4l3f1ZzU5ITUUyiIiuIQ/Oce7IHA3UmgSyO0fiRiXl9lFzCLYf6RXpdu383eVx5+oH0IqtF2e89aA5tZ5Au+hOhN36gVjW1gmmcxZLvKzo8EJa6WcozDFnhmgZwshOope11dvdR44OW4Kff+S42ch1buzwnDeVTOLp1CQ9257BQYSgTtKELk6iPoc/0ojboO8x6so3XjlOI09T5LjRs2JNi+WmXqwFhsuh0ocQ3c5uBSURerwcKIp66g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GBBe36oAkUxz2Pq25ohTilFs2nF+rOHnQtcDjwXQxUU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PytM+pItZW6cLYhQFolcPPoEWIOwTRRKhZMLKWLL4BZ0/1U7BZ58qHm9hi7YDb8Frzd+X6+ETfLv2/4BCzPkXleyL97xO5RmIV7gnvpf8bc+GyNrVxM4KgBBki8jPFTFd9H2A+Ol63RViNm2izFN65QrO3Yob1Zj+2rnALMkDjsKtOHEbmL6dc+T/Yv2pzuTNzNS5Lw0udk280XpBoAMjTRl0ILk0O0F+wb1pBe0vG1853NAnRBBTWRlTI4hBENOp35iWRpmgqwDiBmvgbzRwh4dA3ZiOINUwPCAdE+il6jOxkEfbPWgv73Me+hVI1yNMZB3rJempwPREBMFqy+JDW0vTb9/+X0T17ytL2W2obbe0CAdGyOdbJcOTO6HUYYVCPqjcjwUKMKdz6/EVt6FFjMcP2tGl03T", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GBC1t1CUl05o52Zdy2bDheNmJkI+UI6q9p8CFJePCBs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KrxNomodv2q3KNtPEgmc3HqMKBJz7MVo9+B6qEJBssJit1s8JMMC6FU5Nfx0Qa9kvYT/y8zlhgetGAYluu9U7Y0lulEYDgEciRie9h7YpeEPAusNC/U0yutvdBnCCK9lps8FBoAC0dOc9e7/vVt2Z2t5GrL2KP1k1SzWpf0zC80q/MJRa0LKpOhEadsQOx3lg5eM1PBDdlyLGbI2F0NcxIFvHEpyi23iO7n031wctXwkRV4RTMUiiQcrDbZ13fr0gkxoVEqdVDqMm2AcUsZkhvjLJAQ3wYhjT4B3FSBT6Zk077FSJAXczUyGolt9nb5yqh/XJZHv5VrNQsi/5Zk0yHUK5cGRzEMmDph5PvFvQ86OdlIKY1Qr+UbzqZq31OyQO2sVVp7ufiz+88iRHWaWSVtmijAEMRAl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GBEHBhmpMjeHwlbw2Pi8TzIjZtXqbs/jmfdGhhY3Tjc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aNMIsRYwZsUKhjL0cq6xiF90JxWIZX0lIByWdLMca65aScN1BN4w5MEE/yX3PMC3jLyZIUqXCtPPBkNvvECQrtmi90kE3NQhtK9s7xKk3qmw6Xe3r+hwo+o3x6S6ZLMCEiz7xybbBrDlX2CBkoqijDdI7mM2TmhGi49VuIDSuePck2XfiS69ptHBQs5IqICgf5cSZxyLs7TL5ivTZCSctSKGNgKlcGQcH5vUkm1Xf4pplCWST9GtO85riSmOi/qN5nWtaEx2Ft6GoikvoexeTBF974VJOyUfcwKGiLecLcMsOSrA0vEBmZDzxxQk606JD68389BOnSFHFGW74TJivzcWNVS1CGp5UHOeDWBsl6zzgg3SqrB4C/P90lnOhMhvNmtiZD/ZEWXYV6Ui2sfzxCSmP9Jo+vZS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GCiWSSHnIB5wxiTaw6qMe9BmkNkt2aZj8QjaokNV5rc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/CjSyITsGshNoSxQ8F+Xydo+ivsinfkOB8zBrBW2uH8UJhtwTk9ehA/3pHjuCX107ZB8xoUdzdzZiJBo3wDQe3/zi9vxVfPSgP4eu2z/ZGItOUeZIzu2QbESjECkfr88EkBuD7AYj3v9LP/AoNLCSVD8an6AhjslNw5i8bBntBFjNGa8CoAUZ8Q3CxJjnvuZ+jbs6zX0mUEOKgxcBjs5FtHG12G5aOQVYf/jGcdQeqleYVAoEYN7Pd1uL3DdDIpIG9pGYcTNBddaIT5uSeeoP9A46BrIPitBmAYS02cc0LlB4Gb6tBy6gUtRSB8Xb4pnAXVsoSmiLoudxmozabx1boD+ngQiJKpnAzmnNW/7ywZREP/AxEdfzpdz7oOGxmnyg2bh1IO98rmhUUP02/2NqFCMW3Vo4Uua", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GDFvrVAo7tTlvEQG9HbvAduS4g8aw53EvYMgXdRCZSU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ba/WJwjZAJtG/HW+eKk7VJVN+990myAXvEG8GgErRkPmNbQYOvJbEZ3qfyw+QCBYVMMZOz9TWYCLYSOZ0tPl4LczwSnWmP/Nd3Gkl83tiOAa/OJfjzU2jh+rDX5Y7D9tXkTxrhUqFl7k5Ak9AU/5+CzrDBzs7DiYopWO/Sw4XAj2OXyOSmK+pr9M3rB1DGuQh8J429dNbJwHa5Nv/WN5/wf6A2hRbe2U3BGmCiDWZha77pyEsgbm2/mTechwgdy/RBveNmTUyIQ/JszU56nxbu3JFScHWn2tl2qPgOFjzqtZeU3n50+Q2AIDrR80uRLAgLnHl1HsxukKfcIRce7lcRSQQF1ExdmTd+uWa4aPeyZawhcZMG5sMrYBWHJhWScsn9+6S8m+XU+w95arv0QQNxxKdJCEOCD0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GEotr9rg1AgQantoVJLHhRKYEllFtQ8y0SnEnk4P3xg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P9jIM6/5POXZ7i4OfVK+wJYG8wMe/1gI//UZPF8R1oWdM8bIVJuHzdBdt8rIGQpE1JdCCxjIkI6rG12hMk0P7N/vM4oW8ROG0Aj9rVBOR1QT9yoo5WcfgjVZgtXiNMCNqM3li/TP28w+J6BhI6Hytmu2eXeoUu5fX3disRJAOMR8cwMdsSvHSHMCT46+dX5L1auSTksDhh34mKpnBzVobo0DtICOkxFUc8sUFn0vHIiURmmhpKAYrfYxk7XoxmkBcBb13YITzoKAdTjrhJpIOzXLB0Wfp3FtXCeg2iiNAJICEkNzifdFf7dWjGL3n9dqCTpUFmQFmC8pfr1YQBWWOrLQMU4PZKsGUz73+bkYT4Ivq2lxdiB8eSCiwmRtsrRTFs7qT3bSRlfqpThJ8Fx1/t0w040wf44k", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GF+iARIqgSO8vXKa7oNHFNROec6wFqr7rJYAbg/BJg8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4yXeqAaVaTOWICcxctZ4wcB4sUFNBXim6Lnz7bYURipA0NDRBKSMvDB8ghOgDrk0Xe/rWZxkotrJ4FcBgUYTpWb2oBq8gA1QlIU5i6lgGjinSON2vLxZiJEab/MAPUxjrbW2iAF48MaXJHxLf2BVAwRhGDF5r5+/nQ7KWBlTty/cowXOdJFXdxq97wsW57znLANbyW9ee4Q2SjkGVpSpxrSgDebm8yYpX2AwN+PsPG8LNbJKNfpqpYrAuFJCvzjfLiSpMmXMVqJlZuVmNFT7HeJzop6sb0DeCvqkFt35o6V1ll49HRyGjq3E3RCTe0kzAzXgWnItYYZ0V7mKBEMRnJ2KlBHHV0UC5AUFM7AJHjHxyD11Yx+x/1S7mxTnzJu41+2b3MR2IbZccIRI2riA+LQMafBEw5x1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GFAGaQpD6v0dLVWfiJqqO/d4ZZ47FsIklfCUXroXz14", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7vKnaH10ZPjNDN6Svoj0HMBK+ptf2RpqUBm8pnAf6oj3r3V8/OEJnR7RVOPCl1NrCrAl6IT75/Pt0hxKsJCrtBpqdLzxmWvRHr2ESS+5HC4UhBYsm91H+jlIzrxoahOnq+5PGN2czkUxuysCF5Y3YvkTXAsde7wneMTKgGGDYVzSyqWSwmipHa87r70loLzYIFkk6mVCqG6ThEFyf/xGn36C4C+7j0WJg1XJ9VS4QCXIjcp1eCXTyVFFiFWjtmVhLgN7yjJNb+MuCZF4V/Xa2t5/UfbBsMxpe0vhUxXb42W9QEVL9WtSdMkYZIrAY+ctqnxw8i7wF2EBFCszlR4Stpe/rUVQcZqF4LpihDnhLwoOOiOqJYPXw0pDWsQ9Z3En3L5geNJbLPoaGrC2cEcBq7/k1u8DWp29", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GFQ9ecPYVTQSkl4j78/iETFAu678SdMYOxXzmeIcZFA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BReqFea96kTRCy06w9qeNNtNGVFm8BjtOLGbXoaapzdr0vOkvAttvanGj8kPC+bqn5mHkhalUnVrghnLmaQIdNuUJ6n85Qo8FzX8NTLmRll5JOceLCMgpgEkvHKMZOrWHswdnkrLfOKfXZqgy6V2rXEIuhqtVARFy+9knm/PMB5dGWvh6SdYkbpYvzMt0IJ39zZus0B6tUPoa6EMHqClaGA0UQF7VaMLkFJr1UCgeDRvadif43p1ntmQtvzVUv8zlnZtmp9F4Co1SraazwdzA6n5l9NpcS7/9sl9S53xcISy/fxhbJIZJO0PRb5wyWl0hkmIl7vljm4OzZCuas3jDOgw2KeHUzkc0w8QQi7pVBNEmbyIoKofPFZ9qwhcjYHRmWI5ZRvAJATJmBmIQuJwqIa2cjOFNLgT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GFlEH/CMRn9YbZ7XGMdgG4tuIMji2R/mURB2cJuMHPw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LqYuQFKheWaHYbIP2ScpwgwB1TuhKMOJxLoIxx0k9kiM+tfr/ykj29U4ME4WNiQj+vtIW0d5GWpMglZ1Nln3c02Wv0yNFiN61/UIo8DcNQ23cKL7dYnOadh08WG42UvrMnrpVXNrS9SybXJuE3dBN2AazQP6aSacQOZ2h3ClUaz2DemNbrWqOKxkP+ZlWTDrTV9y536Azi+pFt4q1ARuuRNTUsYhDHj53jMQqthl2ErzFSXilkrx90fB0Hb6WsJjP5cFsguZnnMkJl1pjiqqq6kb5GO2bh5hNFyuHXxntTkHINbW56ZkYx/72x0ScBg5YuH9r+zpcqHHBEWf3Z1e87kH3FvoHBAHQE7sMDF5gnMWPfe4cjLUtJ/b4LqZqcwLiNpA4zJ5w+jp1gDFjma7NRa6LIYEMErZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GFnaZEj2Lv2OAW7WZcwOLRGfKMVucv6ZGbw4ibA5IH8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QUm5WITWkM/KJ71U+9AdMvz9E8FIqoaXR+btgif16WqyySJ6fAjE9YgTQwd8Uc8pF+2bz3E4PhJon+SqQmDaVCj4ojKK7SWDGn6z+v0wfx2TBs096NR9SODdLUHCQsZlYv8IpQrJufh6qskmwLg3cdAPV++AmJC1s+caiuGACeabpcz4KeSVpLRH8h5ZrCU/I+qumzAVQuFiW5lSCJ3Fk3uejN5QjWNIhJ9Jqu+GC+fW1O0vZRYw0G3ZxCQnohPiL0deoInfniXLS6XnlvdX5orthOBBt2Z8+oZbxxz4nj1rJTzVNIPuQaVELOqcL14qvgtUMJTa+lV3jpIHA5NsR8JPEkCTANt5DsFGnP4XtSjMTVYO8edD18+LrgiQ1S8BAcpDfHrnXFQRGodMEzlbJ1ZJgpOnLfd+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GFwfUazT7CU78r6DUGwlbr/pDEgLZKTTxGfP6NOxbkg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/PcGy6P0KxK3JZ8rqYH/t5X+M2ml4zqEBionD+VqWIw63q0IOwV+Uo9FD/XsNz06m+1V+XN/JiEbuhHRW5AL+FlfJE2slMfPdvJHJflR2udOjq8pzK++h7rRYwVN9WxiELIl+r3AcPojwS+pIusyhUOFUCXJ2oeb+gOnvVPqfNhoJ83thxzirpzop2c5FZDtyCcgwYdd9CX7oKs1VkZQjx7wNyae0uAvKYcn7vvh61bk14h1KGJ3jF5Ef4bN5X+N7j4+8sfe4uoK2sg2Qh4QBkXIxi6NcKrCsRoJiuEfUPqUUdbdN5gp2nS6wfEwxlA3IPrgn5oCBWVgVPKQW6j+WwOx0NQiwyLBFnvn4TfwGWgQkwfc8ZsOj/M2yiCLjOSXHQUXZYEYXNG4rMNUcN4+dvPa7jtLPEMF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GG3VnqaYG1RQ7jNsCiuhZiOLLd4QOYfBMWFqgWNOBbc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6YeRmtxzXIZbwTOgOSwpJ6PBcs4hEwyKDc/TlkvUvhG5ASS+09306MSHzHU8WmMIdVU22qC+GBH2isDx0X5gSJe+jaK3kawYVnjuWplRzaeWKx3wMJwM9iqScYKVn5vXwDjeibjY3bl5PynfPKa9pgfiVVOwNFP0arKUGyPatZ1AbU+xN8g6dSOhNR8mJdJoMPi366So1TxuMltOcbePuJC/QAoDon+64pf3Fijwxm1JshGxT37bx+h+7fCDXpzwyECmr7DNdSKH8XVMkle32RAXfRxCyUyrjCvRjZSPqOJarp9XFGftRmiaq/Z8y4ilVJmeksnOZ7MvVg5JjiN0q0yBaK1bsshULULYLoYcKQjb+wg//Fl1AsqTSP5kmdmxviqIAIXjyrmhKvfbVlHJeBXIu6URIMZB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GGn57bVKuUsk/DKUz7gNhoYp25vAXbb/kTANKzIVm04", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dVZhMMp/Pa0M/h/VQDMZwNAPYYLeiG8gGOUq0++fZn22/uI6A+K/zaHQmfI2PAgxd+q4hEzmwUEEG2TTNc9+nymwkUfk0SVeGSpwj5rqDfgc5UG6dFynPYSOdYrf7soFsJIWB/afM64sulMdPQ9ibUTVqxxzhr7t99nVt0/+PAJoZ/sOhwC742930sCXEbzNld7d3MTdutuyTMqhGh47ZVcP8I0wycfG9pKZLb1vkbgcVHJIWLnAQwDYNi6YX6Z0nSYRNtsSp62QAh6jnQgSUK/WuCB5pC4vGJ1K2mrwNFlwtfUPdEDsNFwlk55VOxiKJEsO0eJBNAy3Uf9pZExvuN7uA7QZ/GPhjUOeM2R2mrQErgRgmCxlNhv0/jb5LULYzwepBImJIzEf46s2b8+yHidfjX0nTJWp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GH+O2kEBQqdhEEAjryxoyXSMFgCrs7Awn0CK+1kdf7A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mOfSziTCRi5gvW4nnJQrsuzmiIeB7yKb+PIBlCrvhQb53I3VE9TkodWQmgon4Nh4/ghkKUWS0RKxcjHRl6RAKPoI5kQj8kng+WlF2Se25O46lCvovHRYR5JAyVuhjvI+EWBoF2naCeTytiH3ZWVrRDxqbYQPM5JaAhxPg1NdhFduUkG1RuHoQgpnvQRJ3BH3kD/D2WAkoesapkhPiC8DpRerDwqVq5YcGas6hlhsHS4EWeg8wDMZBnYY1y0rGYCXC2Q2TgZYMkyX0ru9uXIUsMoK9UaJaPAlQPw8C5hQ1y13ITnkXaHqM5SNqiixC1xpnuKZmEpy6O6M4VU7TySXz6P+xN0w8wjQFfClXVLOFOQ6hB4qd/I2hkfKYxJpnM9cFg662TWnI0cp6iT9hDI01i2XPKM6xZ35", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GHNXrCinSAmGl64Fv4swhIEZ0tYLogcRdvvHX21yaNs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KvaMXH5l436mao3c0KKTco1KnQPWkFmqWAzaAnToxpJiWtiyzHs72UMruqTteiPLvoxer3QDsVVPpA98yvRCLWpqCcFSwQUv2e8bOJ7MLp/eahHA2KwnuljXF5WDAaB3lEgyYSsdKIizi3yVis02eV3rjqSWLWNaaRq3N8cczZntppGdajftQAo12QJpRBpZTEIlpckQUUitzKl+6knURfNCRpA+zkW1ADGyrIr+tFVDQ60ccHHOBszj+7jP4+w/BLpezl1LYqO7W6rgUg4/wXBxfMN0LvIhzKAZZSOc54Coq4EskkghU89o9CM+XpI161UMYrbFcu009F3Gg2AuE1TGwrCUHh8RBDpmT9baCiYyFFp+pY0/7J+jcMhloSfbtA9HGodHHN8S5iYcC90BH3Rqqlt2fjtQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GHeUk8zPgr40Jwji/X4EPiNAmAIaXleuxebooGvasns", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AxYE+D3v+S2Oyd6qYz0NFvat24lLpgj1uCldRkN0G/bg682irKDQfNSIo0H1SxxmaKZpwXpzLqLlhHbq9RRlQD6X7fpt+oLEDyJpnq1xcrxgRQ1wd/hhk1UbEjPZMINRqY8OSTCfFpp11gJL5Z91dDcB4J1hUEigB7bcdlrRwqz0DDoebInPVn5O2b/M6qkmo8jhsW8uXxPPm5zB6PlhLms7QU3numfI1tD7XMXGnYgi6i1K3D8ENYXbXNK0myPMOgxMdZaxlJpyQTk8L2Tt6wCbqWhFgR9mdqxSL1lftYstAyjFQ8TS1QZ2OFcAObMv1EChhSyv4tKz5GNJciyYuYaAypnHvy1nXhUaPQI+MrL4QPB+VeXaizM1d+0yStGkZ1015YhXJpcEtQN48ICabDQyhu87D3q/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GHzruMHS+bfdm5Qa/kNhOARi+dZcfxZ1RMi9BhZAuTs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VFeO9uKo1IAUjG37LKDQxS15dLH2XkJjx2DLvaesFHEvyCjcegkHZl69UiUQPzuwRNjbi26N8anS1qPGgrT9GN1K5F7Z5bAFMO74yZuAqUSos/iPGixSN+lcG4GyFnbh8O1IkzM6s1S2cSpmeicT6IUT15EfZ2wnJmbu39XRAttD4zLwwMBlH5eCbrp/BfJrFEAMC3p2k4sMNWVX5us4KMCQ7GSRviA73eqIaMH2lkfONTWVT5t/UwOWOuwUKqT6l+01oEAZUzBeFjF3JvmDSOd+4rCRhT1E+qx2kAw8rk3ceqMtVPtQdsAY4wiNymhIv3u1tvJfXtnFMM4JlrwSFkqye9ffSCXaRObwyL6BeSLNLOWh6QalpufNniXBWBUPXxSCWY0RylUEWomZwyIoKmIV8WM8eM+j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GIC396uLOCASDDoHCbvVf5LQhLrI5sdgHT9Ds82SZ+0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GJTKi46NZaud2k0lDc3s6essEA1ZGN7+96eqZBDqH/1SpsIeKg74DwVPPjpNZnUhGd8CdbIxQegU/6bx9TlUL3YnSUsxdnAqHCslyWNO7N8hOUyErTh47wiT4GrZHwXoNykOkS4AUBfO6d5KwwRA6dIUl03w89J+IoSaAW1q3PbU6m6aTj2Wj7YY84OMMC7I+JaEoqw3/QaoZk9TdoW7rGIRhV7zU2N/MjZWBlhETXFGm3IVk5vA/lc639IKb6ArBfpJnhZyQ+JVtK88AemVnu4v+B1asG+JqfASPOSVYgxoYlZZTENQPUyqpXEPcOf3wVbRh+nOldfMQgiesXrogbmxyhCVET9hbNne0iCMkUqgooUvXyqsAbZMEcRSs/P+yanhIGm1l/CpD+0sc9s4AkbPUKQN3CQX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GIKoD5X6YhRLMgTHXsab65nUApjb8StqPSY8P1bgKTU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gkbJJr0NfQV3T/jO3Xs9mhzUNuy3wdVP7RFoMa3f3xmLiWNSwRD39p0G1GfCHZtkPqOUI5byB9qUGfjRdCt/2IhVJG50Yfs0QGz1UU09FurgxF06dcGq6YX49IxRa2ZJ/emkaRwoTAxnrXJltj1AiGzEm99ERzsdQMseOjKnMblABPVu061i/ThWsU+PO7vwM3ImXDgSwhfPJMK1YyiZ7t19/GpuHn/yll+H3YTTGhyhpltOox/kKbFPV8VaFmSv40zpEgwYL6n3u2PrEkSFUmfLwCTRYz+xqGkFsR2xWXwAu8ZuB2H9RKcAUwSyLwT+Cn6U2J/XHhe1G+IPkf3r2OfrEusAkI/nT3sA9y5E8bCIbD0FR/CGG336XxQNIMBPTriVcBnmSnMXAPY/Mg8u0hW4Y2qiXgOA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GIPzEgKM04QlV1Mf3NDSPB0fUTIDzueIRBBf8q5/Ddg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "savfK4w80aR0LKJ8wxfQE0jabN7wPOS4+DYITzD8rF0mDHgKC/siyjvhQ2L24RjX9z4vad80nFtF4JVmmTkU5xNGcDtT6p0xLwqSZ1gG7WCMQgaDgp/RD9GTxJH1HiubKpoAH+7cu3pFVYLeaTIL+FkzUVgpebZh7MluwdasB71uVadRJraBDllrrMwFC2LewyoHRkD8yZEb/uJJvrFI/KQXHulXvDJhdCSv2MpmEknszgCpykocN1Qmz6+en4fq9v6szRxxUDZDkXnLrcOfBrXEOjt9ca9enzukAiHFKTbGLYjDVVG2326BnsKdS/l79dnHfGzwjp2B3MBFkImjHQOGRMsuPDvZ+YfkjzVPZFMdZ3GBT5glFa4Oz48VwoNy7IF4i/qV8X4FxdJhZt7tHC83ggOuT8DQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GIWHLUvmUqJfnpaQP8SD9M/GgfhwhfkGs1B3zHIdNWo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "C5vr1pqO1FMYBsHQPCLMXxzbBejBIcYVXfZ5UdS4yqTqy4SRxxsD3d9lYUYEqbEsTu4eVBiDv5P0CEipGSTX0T27ho7QAfdbuPA/qCaFFV6GrMVquSbWrfq8LKCpho0df02kUH+1mNPu89H7GlDSupz3jdqbCHTKXLGS3BOvBJGidqBpqQ7pfD81KGwiK5NwsJwdXWCmeB3wktZ5uHHeuZviDSQV3k053RrgU+b+bIAa5j+WF2FQk1O5lwkVzUBziklNT1j27gJKiamTLi2sQAOTS4P7b6ECqbhPjkaB2oxXQVVIhHq3HpQCUQ9B05ecZeHS8CiaXorMqkasDa9Ahe7fj0fY68Too32aHMet2eXRaPA7KBeK1Wx7fHmXl7fuvp+GKcUcLC3SWQa3s7ggvt/GX9DiNcUr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GKmQKtIJT89/QX8wn5rrp70MCdSHVvGtrb6D0tX6Pe8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r8RxkVD/XYZg77jcR8oabx0W/hVksywdJUa/sYeCo1NATB+8CQAPGdBA1S5IRQwmOVcblCLHgRwpoqpNHsjO1B0aOAWWouVst/ZwGaJTKGDIsgnXCYu1SBV4rkJY5jKC/2jj9p13CugGmcSzk07VX+pwnCKuDYm6Ajib7ibu059LTfoivJXw3aFXh1Yv+cUI/yeCput9E2lGg5iMaKRZV0Bik5eB8MUe6TdKiNB910QoR1nQoo/z5HGmKxbIEGhuY3WGsBg0gPpIG1pqAipH043VZ1lZwvKkLMQ3/uZ9fn2X7SodDmcYWNo/G2JI7TEeyWOWLZ3Y1zM28JltoxzvaR7z2M1ny4kLozcQIa9u4DHtXdk9VMbNCkRsLpk1jtuoGSQwT5CxdmN0vMNGDLDE42/imjdByA8W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GMO8vRRadtFcnL4jb1c0HS1WQ8jlyUjLZshZ8J3XjjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ch2glbjPZB9oq+/Qrc4f4CdsLjO13GVQ8vQXpFnakdU+KqLvbXCPwG5ndNEl+r5NNPBXwWsXvIWki0xwJuUxbBK9j2Sl84riI8eYDyijedHdCc59SC0VUyv/CHeQ+IZdPQcA00C/xGhj7qNyjhS1dicCxg3/XG39ykGTKsmS8b6IRSt2tpUaWtWwNyeSlhlFYn0nABdi2XJ+qii7Rzq549brNIX/L01/AdIeTEUT3HTGXLsMBwfPsIi74vasg/CogZzukd8x56tAZQTDWT0qZPzkeJ5/KWkLFyHHk5OSqeH2ZZue3B5RGf6axZMnd6r+BHB7YG5EADz27XvO3VgfrwG4n9SBKIEvlmdyP8kMCpc4LNBbhqi+iS+5wFEt4DZiFErrdJ4Ap3EYVarCoSuWR0vWQgwPRoup", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GMvT7Sbpg2JrrMbL2URFpUUAxaHClr/aiLK6SY5Os44", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pb7c0v6kbufyA/nFaapjE7VDpuXfhOy5yTBERAAUknWACjEkkF/u0th7wPByv0qZTAES2+vwSlzCiNinnv0o16Jmcmb17pFSD1rLkJBP4XsHvh6Q+9VUEndWY0bHgzFPJPOosQjtdR9Jq177nFmBDV/rXRkGb4L1VD9FbvyrOqmpM1o8ANmR9EWfLc8UNwqC/BxuneZhBed/Ru1ihCq82ZXniz1m5sT+SQvFkqnyyEv7ex5SBeWs//WNwYky0rv22gvBJWWN2vZN8sFpBD2yMXZ38ERBVo/GLOr/2MIKZHEy5DIAyXEL+p2oN9C3y2iTQub1KParu6IY/fsL15RZic5EQXpMB+m84hDpVGPMGxKfG6q49SZ4wmFTMaP7sfeOOeZ38TDJPz7Sua/4+mUZ9XV3lAWJolM5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GQYbX4HcpDPXgdp+Y5KQzDgiBVD2xSVaMQWlrTjSOtw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ThWsuAR7QmgWYl4O1AvbA505OpoDvU+XOKw4d8ASnQceAS8J/GxvIqFtZp3k8V792QRW4YntZG13oJs4vABqVGoYjQHdjHoIrqq1Rhw3/rVbU/UXTeEXumP34VDyBoQ3nCfikFBwHiTajF81jxMwmW1+p8RSYnkNVKC08Bzevd0HOVaU0hjyrGSYySVRm0NJbNcLDfjYeFVLSqdkACrMc8G2AGu73LXx+SIJ+ZsYJT2yvyN7rOGmtFFILuN1aFfuVNmfBe+PD+xJUlYQebmG1r0HO6UP2NlaPgPUgfZhEEptPk475BDgvops/CXA0gw0loYZz/PeJKRFTJVB+yM1Qct3qI9/ftUhUgU1Bgb2UFhvAci+LJYyTEpvMCwrARNDSJek0BppVtk6Kq/kw3P739GWWge4X30E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GXRlaviqy+TslueIsxJ/S6EZelINfDwOqNE5dCR5478", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aUIT1xJ3HeO3+6ucSq6pHLKFGik5TOcCKeCxIiXqB+39vxvmhCzOGKYGz6XrWip5LoO52R5zrSo/9RPRiOuRy0BkfWGA2mL9l9BzcEaxeG6QpiV3pCpiv9MTqhq/M4H/JzZH6e2HpvbShDWnb4J2JOrnnNfspHmnadDxfeU1j6K6zZPSO/aUykUGH9knLV967hYqYc3/OUvH9Km/VyIbTnVSmbhb3LzpjfJJy8povukS6MfRoLizQpUAnn24yjZEtPKpy95gNE6zlPjrIThQhlYgOtotcjBdJbAc5ku5FD06V9/W4f/AgwWvJsDH13fb9HlTf33oJcG9oJsXr2OTRpSmQSkdk2U8/91lgxUbGDVWqXi07lDv5zJFgrKbwFucZQ9MhL9RKDaEN0Mx2UR927MWcLHs6aS4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GYf9J1uNOrxxT6/JmANT7O+IDGLigy/LVj5dT/vY5to", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S/SZaMbLvDAiLRG1LR/LnaStoDFFpao88NaspgDIpRN4gLLtafsYhs2lzE9IeNPJ9NkWhExQnHBOKUsJzRzjx2aNXB58bQT6w752VnTlHalVw74z5XJpJ0NHfpvjOKZ/M5HSg3S7lzODqBAvP3szZ/26FWuNUqdrLAaHpdJGojrXHMnBKrcZW+jeMqJOdtNEqXg1dj1h7QI1EPENYStguwEbQXWy85PnaQavNiSCiLDgh5RXkw25ULkjAmFgY+miuihnyUQPnEmMS2OTK6B+GAkvJcw960JmDXuo9RyoQPH82Z2cHuH1EfXlhZXUlsY79wGA+B8vor8tpmJqBofuMWkRkn6qAI354MJbTTYA8rDjA0yOh/2Z3BX5pzlILyvjam77XchTNWsJremOhSzyWA8M9zTYLlvY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GZEdhHjtZhhbW33Xmzs2bIQN6I7rjqk5JGd7csbs4cc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o9X6LUtQtJVUshxTYtdnD4PL4yvzcDFuEJLt0tTDpbhs9IAY4uH857tyu2OiqJmpwKHdJ5v9QWyxpKBbgq/h/Kyp+OndrDNeB9DrpwmgNaZ4oGT7zWK/O4or9ltmGAuEa3rM3lARXXWOWP0L2Kd4XPBKHG5MMqlCG1O1AlUHBfKk4jX8sfR7ntJ/pW1nqo8rSqsiZsXQRrUjOQmQkC2krMVm7JGjSeft3U/PsKm91V49kW2WJXKjXifNCpV5azXyi59HGNECLxP7SRFNmvEau7TcWWK/OE24UyrsYy9yspdSxJHY7pXNsstZhHRYfXcx/uShJsvVJd7dfCGhS5J5aHx3AD3yoGyG9BG19pP5BntG/wwKqIRMJnHiRCZ8sQLGAhA4WeG9vlIuGGWrzlTQCYD5xvM/GXV5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GZbzN3vsuePzRD9BZdHjNymm8OijFuOAjV8W4/WEabI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IYolW+g3TEnGDbB8asO1cWJdPdclcR3GkOl9ZYnLhN3v4v5/B8BDc5xfAnCirfX0jeQsyDhx8TPOIYXKjU/VJV5OI4xjdi58SdzYPOjGRw4Pfb6vi52Q+9iY4uBKnzaRrVsYcL440LRECloURmrtJs93b1S8B39Cgr1me+fb5cXpKoKiOFPzpdqZI1N4JHcuPIvuEWHqWueVSgnA6cUYzcFH0yHF+M07liT3Q0eAQyZEY0CLsuJvXyE4Hl495cRrzkKE18HWxmvkjgNAYzhvXq/I8QaNj2bG0KmP84lf964C9nnerAFkO5MtL3T/dgz/HdVw0ywhcUDJ14y/rI4jVazIZ8i3gklyoy8oxxf7e/h+1dEo0jNLSow4pNv+bzbbB0TAQ5DFOM8/KCYiFWuAS8Y7VOBNUclY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GZfV75ljdnJ/aENYSykVFlnEz3jpoEXFEOgIrJazEvc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4S82nJLcgT4T1VMCZcUutA/A0C6RYvBgNfDxQu2dbuY4iZnf69aClfvz7RYTTU8W/8Xu+nwUN6hDQcPB9mFbUzN6733EUH4bjupLJt8pfY2xD2WE2NSVLN4OjdLHVEW2yhwwEWhCdlhui/sqs5o+lfsTCvnqA17kLmS9GltPRvM7X/evM/fnl7m8VsIzUJwzw0iaM+Q67fCgnhRzuYCKqFtJiLaYwEgkuGqlSEWG4vieg2OC6XhixWtwwKSXcrE4huZ8Rou5LSUAD9O6qYaqx6KzIxuotmhu003erEURX2fBV3EXeNL4qs3hoOsrPaj28Q9SqRedj5mfnkTWtgjk570PW0aET5AL/PFZ6+WCKA/iH7eudFGjvHuPnvJo2KqKwmmQtKKaOc0UwcdyriH25m5W4elFVdCQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GZgG8R0QSX5Y1G00YbUAkQt4tlxe1Y4XlJzlOjEG9XU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "odRkOl8oSLnnLwyp3cXtJ/FIU6+RbzmRAjwDtJZXPyIzi9Bxs7+SQfuXg8IE+fKGYssBqF1fbV6jHdQ5LSDw7MHDFtH9QzxD2cMSzkdipGNOEmdR36L7ZSIwe0Km5HX+3ZkZjMBYMukgA+jhOXbZO+BZd5yvDwFkpWrc/SUXBDsPueCMv74U+eQ49EaVwV0a56rPQAMFKkTLPxkZbNJOjhe3AmdXc5bYSVzG7Oqzqruxu2khx5cUSbLFQ4msd5xVybfYW10M+1Jb9ZvqyNg33FcUigLy00pK+ykHHdHg9xcjFhFtMO3RFQqbvJHfU+UPpvLjimJzgFyzPsDBTwd6htU6QPx7uGE741S1KuiQ6o5f7vzn0XpQ7qM/mqxozTfs1uGCUn8/kc+7cnlesawYAwf5la514YMH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ga+1o0V5DCBxeR8Ysx6NBo6tHuCPSMKrvbxo8rbun/0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1CsMN0aukko4U6Y8NxMoUpUUFBdsaSttH9nYZXP938YahnWyWXnWTEGVU3Sb9rn4mpqGrK9kGYYyZedJ5jxqSfSnQnItpXsl/xuIcPtl79Evwh/7scWM3pO93ppuRGRg2hhJ31kwRCpqycGWL70YJNfDucSkXXMuwtjYu/j/C0CWCgi4kXYZULpd3oZgLAmpRIQ1K0nZK8P1JdhdbHdDZch4Pfw/qqy5xbLTaP1uQWLpmsZ6941oTus/ex7roSGaduiPc2YSxR63HEtrOi2TjK8UeP8YplfOADHE2m4NnKINOdDllhOPUCoins3jzm8xhAGTYg5lild59nJ8NFRkwTutV2ouFqGcoCgJjOLVetHIjTvd25yATM/Np+hx3FJH1sdpBvc4qE097Z9KuqZmkAkSPmcdtuJn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GaT0eJqqzqddl3qlWuhbFwVp1AzKsVjAnCcPj7aN9G0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5gO+RT3SIcbUDzTGJsmbR9V5MGrN1KHrYXI9O5eepOFc0p7vanP7Ytw0simZDukK6yiePASt+ZBV2YTge/EGBdPg/hbTYqwLjg2t08eY2OzpNeqrqH6wIHuBjrapmdxnjUugNqM5dp4oJWJOqEZlKCvWbm7QYRReqzmU0Sz9aiNvY6juD+POZ6uGWkJ1DYmNcyJ2Zt2isSrNBIz3V0jtNEJP1gDB/zlF0C4IE1HLh2jc7Asb69qQo0OILTg3Aj/ECT0cWT6kdsBVboeaef7Oqtqo0Fz5xTLwMBwo3S0gSGz/HiYOlYBJDqtoG5xkkNCpeC6KN2BpETVMFmu/TM5WueEdfcxQrRt0mbkYacO/C5L3mUkGqmTDF3XyinvVYBqejqk9xP6GlU5ZBqO/wAzhMkptFVa4P9J2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GcozrNz8KGNhcrAHnfNb5Vlm0mtC6XB94/i+eRszWWA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OANUQS0HNKfCtgSRT80iPHPX2iNMbU0xs58ILUQfmfA2VFG4iLhaKTJQOEd7jAGAWvYfDzegwYN1Fw9f1F0GKQ0F36Iv+biqAHAwGgORpp4wjxkbUVwBTdY/RKogTHpPT8pZeeE3M1cs1ebAJv16TFuLQEl6IURubWJuD3+lGtgKzxuLSc197asyLtP8Fz+zOt6yDed8aHLg5paXPoNpDQP4ROqbrao5BvLyvHXWCuvDFmOmXAXHpLVfqTmOGZSPo9ZiKMsnsi9tgRh+P0F4lZx7MbSuMXSwGVtIsGsHw61DspVlOX6shU+Q+khZ7CUtxsX+kDwcKDiX5rsUzMDGpkLuZTcOM69PmIWZSDlCIZMFuErXLnIW1wCURIYLKc4o+q7aU7IeZxA21r6H0mO0/vIKwjZHyPC3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GduSiKKUh/5w0PyyoYlFvyiUZTT9P5Li09/hetrx9P0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IBIj1/84SNmYR9wsSD/3I0VcqvD4iBE/Ox90el4gZAtWRaCLHUVlDHTvJ3ojphhTaUsBCNBX0QKjJjH8cDNBVN8iQYQy+nnnVb0XgP+Mt3WXXMcex9+zph57IKGZUkX3KutH+nvZjclSxALX0SY6GSFSr0V0ArBbl3DI++WJk5nLKpqC/PzNmOTQiXlu0LirHHAgGHRVQOt7RogW7rou96v95FZgL7rv4Z9i4piedLO+MRPc1KUaURxVnjlvhhBK2A/l5jc5lxeRjlFO3Tn+3ZtGHZ8JG85pXNMdly9z+rjLW0ptfdpEN53bIzr8B9wIqghIZRxcuCjQODzi2eaFY8w47CzGrE1I8n1ROk1e1JHnHJJ+jOJmLSNui+sVsl1/ZoCEbw5ZEpm/sDYuJ0xpcjHDFAjTXJkY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GgGlD6/GFYmPuY5PNyh5R0vXCen1vXHtN/XclERnleo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Uf45KeVJHdSGWHihkTFeVyEVaBgXQjjR72pQFS+NJPU/oIuPOahhHOTPl/XSBv1Ci9pvzGXIzLr9YxVQLu8ReM+i7CG4U6kAb6ncmD0Brc9f7ZGqc3lDSFZ05865uXRB7MTRfjEOemmCxrcxwSOELiqmFx2r9tMbAYd1H9YM+XQh6paG9wzv6U2cMVDVffUT/1HwFO2XXgABAs+5KGvuM5PkgovGpIZjrysEO7bJI5W+eDLOzIp+gGcmGM1IXeQBOff1v/ljsbIG5/giqsjPaUAjTCdrpMegDFHi+ZqfsyZfF4vj3ujkPtCYXqmXzr1v+GakOanjVfylxdVEWAY1cx9crsUtxRL3vB4pIZ4+z+2WsANj/ylha24f2X+RCTsL7y/9KuLcV+RqOYCcYwuZ3LPPL3hBzrCK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GguWHFta8QMvVPh//CJJLnjXIEn0tyrc9vBsYMJfWPg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q+WR6+Us/N0UC3ZtWj+pMwc5iGQzHFtdURJS4+q+l8+7hAdGLROR4KYNAzasKVgYYI90K1iBGdDsr356xVnWlAo9LlFK5tMG3bMT4eCA+GYqUqU2o5yhZMY2ZwLfbZE14//QAPx+WP6Y6PABzUJMghUy2DxkF6r7TIpG6b1WBigVIxqcdxSL8ICOr8MnApxM+dVH5CTVStdARgT+0xehBZgVwN02HveZAnLPrMaMyWmkPdPQfv6dvYWYc/w+R6ER5mrFZgDonv2Z0q6W3D9dsZ3Yc3N+qxw/GatBHA3OjLcxbcoWrsFkS6AUxF5siSf/iWz3B2SJwiw4VS6WdsYRq2tzrGfowYanod78Q6vu8m3ekMNcpXn2e0tQTHA/BZpGGFJI67KhIshikktwzZinpCs0Eq4RwwNk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Gh6ppkqa33f+xhCa+oeMJI3IL6Xd5TBQx/a+dj+ZmXw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ClTF1bJVUscWin58IUdnCjrDKEmOS1MW1i176hy3Xxi2RxTlF2m1T19TaN/ZSVg6B9pCZ6IrOvzAYQT8heMZPf4lxmXa9JF0SmnMGbwAkqa3w5BN/bmbarvja+JKzZyaLLe+WnnCfNod8Gz0Pwbxz+AnD71tBqyOmV2kWPeKc2DvWEEZ2O2vuXVx2Vtl91jTuTyFbT77qe6LsTyEXDwqV5MFKlQAWuhmaiDLR1b7F/7nQMsdsrByLwAUMsTj9+pbVV7RwJDPBHbARt0legZ/+aCriGnfCDHdnRfoCdIteahepW73YH/pnTK7XT4sZCJIBnEU2zjUXKoioYXkGoTAvmYm7HZpvqsnFwR1dB09HhS/LiEsHSU5ZxbpFDTB5sYRKbGuWNZ47uh15Fomg6+VDxcRkXdq8lzX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GiWjJetZRlvmESS6FcEX/JKCz032jAeNdN6oFsNztl8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "J8V9pj53tDgW/Op4Z3mX39z6gF8Xj1d9Uo4+azsgSXsHdsiq83nrhc2nHHHE65K3iZvQ7nIZ2YEA41WOYJwbBYwSyqP0Agk5OViUwPuLCf8l40Bvxy/i9aFE+3SG7+qK1rKtP+K4wlo5pUj1utafLHABR9Be8eno2Lg8quU7DxwLApPQ9uJ9YI1k+R6ADSvqVzHzs07QvPIDpsjG+4Ndvz3cI2cbppmQfVBi8VeADl1/nAaztiEeU9v0T6vYaQvVt8JEuBgfu747ieaVdR5AYES6b1OoltyYCsL2zZZn13Yu3JizWl3LRpvntbXKJZ2ehPNauTKUSKE/Ktga5vVGbJTab7lqKFEhy0/N7AnH9RHx8pOMHn9XX8nDeHQNuZ/oUqh4o/rz2rZJN3AW1JZnWG4em36fDYPp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GimHM9EVaq+uuXs1YpBiRvl032HDmRXVjDH4bT9BZSc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MrQtoy5ZQLplZOth/2QqZVlWQ7BEzGUy3SbBjKTRJ08+S2Fm4ukJt0689S5svctR4RSLvw+iCubqAVLHMEj7DNJS6tzV4nJsKNkTyocwdtEeZRe8mkPi+0ToEN7m4FuIf65DP7n+CaK1gZWFV3h+nuZKeXuN9GxByuHXNtlJJ9HROytvdLFJjZWmO9TX5ozWp+NbKDwO3JKHIYfuUTYLPRXI5Vtn689yXKL/0VDRDQmfuKfmZC+ZNr3L19esGIYloGv8OKUgzezrJmbwANd3C+y/18aRJTHvrEsofn3kvo66crji518voKRX/EAI/u4vA3wF9iSb7awUpv5GVu9oDN+O9idJumnrwlFuXam5Y8WANeSXV+afBhmTYOIFfJHHGV/zEu2lrQdSC4abqn2EfrOvaRt/xzJ+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Gjvt0ntRR4DQal6pyWqYWw5V9gAoXPTjtfzIl7TBYVE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VcLX+6AtDJDpWVZuC6VLd4yWOCvu4BDlX0lwM/8ibgGM4FIPr68BuYzbPNEaSFWMdqnWoNwtv1se16E139zw9b3yMRIVHeIc0YBDx+7yWGW3bt7uynnFqgZjlK6VdKaMw9mE/zpE94gTveSGfXPTsdQuBN7KkFllRnqSykFi9FvI9btD8n4PSWu/DpyIDiE2/Y94PNl8GFjcvJl3HQiWZgxrOTJIUW4njf/p7vg7Msj/AFWwoKAHzHfsPidXecuC3TC9ONi8Wj+HrFVWP3bqfKXBL/deHXUVY4sH6+fE79gM/GvzEEIHlLLtG91SFBoZWEy71IaAG6TSFc6No6XbIjD8LMVCmyFLsNoCmN1mTJMaiB4lutcdI6A5YXUjkgocP7F8Bn2m8Lq5DJymKs3aabsvoY9bMu42", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GkGn+vuvnODFdaDDW4x3xfQoKCvQJJj/sUUW5VXoEAw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qoWD1c9nJTyjgJoVIPK1zMEKAAry1wh95eOMeRadFoPCl2w/M1rirI8CT7q4Eh/R5+vtG6LNuyAOhvhDpNgpF9APAqQ6BFkL6++vXlqidAkAU7rV7ZOtgoeoR9OkskTVlhMZMfP5bEq/y9pW6J4SnhXr3U5Vfpsi/sn6nt8X3tb9XS6x0fztpGZIa2J9wswRftHMBX9ftPPz0Kv/Fd0Mf1ogldO9+hETOl+YAqygH+ddaV18bFZc6TAqrQvSL2qHfpEh7JcMQkubXzKqVUwhoiak4zyTwGdhdS5RslnNUTp0wuIfyAb5SpIolbuslYtWXm99LHWWLVNuM2092TEfjk5+IJHtmgVbwPl4XJC4QpGVphgaFtYYrJMrWxTCRQtSGXFrNaFI0QZTOhvydkY//3cY5n37X/zK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GlrS9bok1NR4OeNmCkZAjnb0PtafNf7CpBSroF3s3KI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BY5UX3bRgKxpxfqumhD0/1Ez2ZgJbt1IW0rY25JMHs08p7Y2xzrS4kPPwTd7rKpYLdKDe272QVcyi60DsuVJz15My25U/B1srTug9Ri6h4AhE0x/LpiE21tyTV5mR/TBModIBR65uZKPM+o1hMxCO0CxCI5JqCb9aV49ayWU0uWrqll3UX3NZ7y8U+wL8FNJkjMnJe2QiTdTbsihkKoivNhoozgOpv4XqiqJdSImxGQrYjcAEpfkbFwH2/OdBSCYdvyswnLpzPxrgTM9j7gMhIn87wOgsf+2jJWiFJzGlVuDtmVZfDLaqbraK+k3p11hrj0gq/28KiOqDQ4yy8gwQ1gRA+SSlMUJhJvZUYu/1uVXgzNMHBD+ejtJ+sL/fMNWVVSL6ihUjZpATcE6/rSynl+TXJbcC8O1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Gmflcppp9Odjx3XCa76n1dKEIWp0rS6DnhBWxFz4xLI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yt0x8GCIhJjTltxobSDw1EH3ZysF+8INjfpg06s5wyjbNIG8DjSJXtUyp+NunDIMQmzi5+XhW7UmtnrYNQLaBeugPnSM3BcajzNzFBBkQMOoxY1i16vn8zmhUGirSe8m1GApNCYaKfI/3yTIT0D13UlhdQzDTVpOxNAcWqRib9khHP+DqpecnNyBjgIzdxaKqF3BqEb2JroDPdjysYTvHvbfP7IEW48ocj4BN7RjREch67JDctYHsN7nOaVpmKcjuj7pqx8yn98HkrtVkYDjS6bl/7g2eKTiYkOSMkBP0SsXxUuwGEhoUC6h0TIGf2zn4kDlyiEZRUs9DV7dNQ5BGy8XsH45Ze3iK8oe4ZVhI52sg01tAv1RfvcxzB+67C+erdNeVzdIadvkIQHALZhpVS7bak56EihZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Gmxie0ximgbALEvPHBfFpmXyCXlGzbPW4vKJQCC7tzI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3gbVOtjQxUIBCG87VWB3nyxPklDIcaULfw48vv5wLPdCk1AbwIa1wYScWida/KpOMKnTg99fDBVDRRbo5oBc/IWpcSOsP9/LrJA90Zdvl+dVcbty7i4N9kX91IsbirTpdq9U+O+D99RzMBfFJ66nufZcECRViAp79Ei5eQvKlv+p5JqTNEMpR1SxHlOIsphsU3hE2OwUcSltB6peuxLay24/stSNqDqjx+sZl7l/vdwBOphCn4iZbU80mHYK0g1FZLbjzaNggvT5iqZrfGcBUcxPtswTDLOPxzmnz+45jTh7Om9OzO2j1AWFEZsfuHyacmgTP1Jt6JatYMHAAZ5UYlSfRe6zanPy+M1XYG5c4MMyYYXH3T8pGuWKIm25VpYg2JXG/6GUPfGQkmK1HlOZr1xFUCLOkRad", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Gn3BDjiC9kXXp3WoGiTzaj3DBN+ZaiN41IElr0RQ4yQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bMBW3X94TJmPZkM/W4n7VUWwdoV3MZVFpUklw6IrzOXbagztp/CeHR4JPWcg2Q4pQp3TW05+J6EH887dlkN20Ed+tGeEM2rkcqGfLHcR1J5qpJ9Vt2QSinaO1IxZCuLl0p9QpQujExXmPK1qgU/GNYmMkiKNUdoCMJORO3LDrDJZqZQ9xwxJKMv0qyejsKu6OasuyqqzZYgXSy1dKz/gHIQkXdSoVlv31blaGFLe7vb2XRB8CRteJr89+Q2+49TRbKopFDnSJ/eMlPMOL7DEKLL/KLVpOvpf0mWtvb0gJeGTsdVLc7uJRx/VwsISlOuUrIc8XGENV1O5EVJ6/H4ey0XYaObf9Oxw0RAZB+pZkrzRBF5UZruxa7/5ahW98ULGSnptjEHV6fHppCU/nJ1c5/T+qey7UOkA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GozSvTfNFaJbVASdvVOqXTfQzm8Gb5zXmiUVqDSuDtU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cp/XU4+LdCWdIzCHRNMZWdHS+ROkGiK4MRlNPNhuM5N4dk/1QEcsz+XbBr3b9eKBicNrOzYo9m9OQJHDXpj1lwkankAgJ2VYaerDcP5vUBmXjMl/Vhwtl41UwrS+wW4y8DoNpccletunASusg+sFXKWaEl57/A6RIoz5mePDUcZCARJoNeBcsfwz91EaqhrGPkaTYI3m9PfEcdOpWuNsxNEYpXyPYtHwi8WfNpARPLjxUVv1lSZ+pZFPyH2HsTTuBEojHoxCedojuEWto0Pekzcevg9qBRvk12OJlbrm8LOXtC8y9mRoHISGWN/yYfhBYhQM2BE9EXj9pN8Xd6RyC66VgzR3MQ31fGlIrAdYGuYm/DCs4RBC8hoe+Msy9rEcxEcODkbj6JkZhX0B3vgrqbSUZ2Cm/Zc9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GqUdNmkGtioDpQap3y8Vt/SW4NQt3CphNHlJsDuox+o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w6xR61j1sb5GbNrov1hvB44ZG+vUrbivlalhpbdIbsQwUUazuH5RT0e1R/pajZ6I6EkUFKon7UJ5PsmGx475R4TBINy9ZQNfRRZGz9FXEEP5k80wIEm2u3hzR2j0rHbxwIXKNijK6J8y8/0OyobF/w7soc6YftX//FnTHZdL/V8l+2Iz7XRjKskoNmIZu6eIfC0gQgeTnCmpszU5sEwJCO6YqdCaNO44bMg4ElUw3B1uuc5tKs6W+T+p29yB+CpJre9qNwBJeigwjqblAwfIW+oINWvb+ooyjMPd2YWRJc7gpH7FV0ChUSNpEkgNK2Oj/zgclbsEtWjcnMzdpvX1rCm2R8Gv2fCNRQNSFCH/vFcsIWtYozah6tqdY+XZbbKydXUogljMdB75b7RLJWFY/gwrr4QondYh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GrcUI1XQkQ6g83IZEpkpr9YLkaFC5SJUfHqamkZz7e4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dMveNxY241ekf0v2A4KSP9Rhw8+ZuINlxd6Hquk6X66UTm/2g6qXwfAXnT96+1u19RNdR1AWxusbJ/xAr4SYF8hGr9rEmCVNNxfBwGd7duWkoOPNoIL+RReFhbf44c038LFlEYBt1UrRLOXQriQf5dseE9pioP/LjMqWkIXxpNYu8HyyoXS7t8gCZXAluj6XP27VmnoJBCONU9AK+vT2GVMl7LMf+03bIyoxNxVV9927aHxAFQSvsV6cLd58a/rZa+t7FYiaAzrBKJhKRsergALl22oLVeOCURwL3Ufn2+PX2RvJjw1RVcvLvafYKHMZpqosidEwIIl2Tw/MCvMgx8gE1UougBmPbjf/Hc2tjZ0soj568d3Deia3qE77ZgGHOxIfxpkI97V7WKwqkUGhveJJog8SD9h6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GreiGlPZO/mJEN8/rmLrHsfm39gldLjURtEuedORq4E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5xXWqV8qv1JbVnwOFCznBlx+14kRC2OjopWl6ETj7lenOPP89923h8pszlD1wOe9TaS2mCTtmGFjlSktT8jvyOGR83Eze4v8bhX0O/f1+cT8C1Ey6fp0QcEinbColsvQER16ALeKZW8LH+yDr0SGEzleVeEB9NGjJYQvedCdHnVctA3XeHwJnTL2ktF8efn6bRf8uMkgMdwOjxwTGZZK+NDqaD7nK8ylu8mSX+w8CK2mg86+yM5MBsNFXIegRkcNeeUf6qgBBvY/PDMGxMmpkYAPUAiHAq19rom57BAJhnPLZ1THJHUTA7W3dTPt9XWB0tctnVP6XScGnm91OVwS65uA/zhIGsfaEvg6wWUJBuXam/506QpCT4B/cGXlnAHdtQmVvMOEvPK19RA4+oqtBA3IqPW7dGz/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GsJecJkYCX6TL4PEhHMEzJOfUabLg//C+SsMNNjLP7M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+8AdtRGMpdZTeqR97tVXSZvqoifDJjOfR8V+bctPqRDb1u3E/AwHOG2uQ2zgAZ7MDy4KXvc1o1B0NB4dp5hogvDOXd1cq2oRxqIbPf5PnRznOj9si4raQEPMI7L5XUOZ/e6imVIYTR21wC3b7DJbCWCIzMiu9odqddK9VgxocLgliI06hmc5NIY1LGP2qRRbtZoGFpFeiT/q8tLuyFZmlqgkdCIOhtTQ2fZlUxahyjrdykDwq0qb0HHM3tLz0WdPGPz3X9ej6JkataExo9aoKINEM4qa1zibG2oGGEFQS/NRsRhbXOf4iaqaajEF8hbjy6tTd4tNckZ2xiuq9wXLTdNCHBAcihOFEkcMXesQNHvXZ846ZUoqFJO0V1n5rCUOzLVlYk/gMNy0fs4ud6/2XQ3hiOswoXPb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GtZg0jBSh09HbxoinaVdc74HVgS6yw+aFBnBmOkf89I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QDkGiYRA78ZWR6Xf9qfS8lEaYKsJNk8cysxGou4sTjip9e6qF1J6mMXvDzdIhwFg8pj2vzbxg0nfF/0BTXKIIab8ytLs4LgOzIQIjx9nLvNqefmO8b+T2ipROHCApMlG+xeLTWba+ob2sH8MpLzAnAcwFmyE7vz82tYUEsC1sbTLtYp4yciogwRlTTIqcXEfNtq3c2wO/Snh1VmahgQlPXp1J8gm4JK6ICnvLc2GPJQJNccLqdE2XP3Ziw9nKT+ObJU5NocoHUyZIaWlPGUkK1x8vkuzAA13Rrl+xXE8nZToijG26tJRGTGReliDu5EfeN3UsOTkecyxnLZpH2ioeGH/Wgg9fLwzz6kRCTxQ07gDPYae6j4JP2G+CP8BsRXvbcozWiQrw8aVB/MuWcrUI60oxd1FzOY6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Gu33b1oUvwPhBN0hT36fGGwisrfaElMa5Nc+R2q6nlE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VBoNul8w1HSxbt7n9yEpfOJx6jgbB16l3YoC+44neT/dcaQSt5xUxX1Hir1Q1Yrosc+gtFgGLLZ6HUMmhECh8rkSEa1DPfc8sXRrN0yye6Gc4gZAwjELOI3pqQD9/imbtfoPNcRnkEwKwanVsybwVSlMwIdTgrfePFMTZJLl8hPzmx/P4FmcghS1PpWyGLTPsOoWxFJX5ygLEhwFohL90jNDE0W6FJlExa5eCC6IJSod35fblTIpeXTz18qWUsf7HMmNXH1SR+Bsjf969d1R2w0zSN5wrqd8R0kDVliKFSz/M4htC1sHtdYAtnR3dGQqxklAMVl7oJN1pSG2RPnxt/ulCswQJgyYDCgkTYHbNCfOO4RBJAip5WZlVUy/0q4XM9Hcp7hPGkHVZafVKrEkin+2z/Who8LF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GvjnTsDeacPeW2ge6tfhb+bkzjBpMAKY5VkOc9pcBDg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3T6pugFg9JU7BmJozEIx+aTfHpZu3ndmFZ401hTKVmYPLjq5SnYu8AWzPsKeihvpXG/4PGDGD7dO1jMhFs42udCoinYMR3kFkJ2fziONNEK7+xbULG9cOGaIcUmnV0+nr2OnjVnKj47AGnisMJ9qFZS6WS8Vl6F+XwQnPSshNw7labYxg487ci40t5mzw+SKcg2Xku0pEv+tu+rUnQ791FFcxF6iC1ENM4PfM92nf/acgXvcalltQ2g8phLVlYC1uJHNFVgjmCFF+Tx6JWY+M9uSKJmstNbZUz9xcVIPhjoSvvHNek+H1xrh1FK6718+D/5F5bSF0SsS4eMVhXE41AZ6LpVJEKdzkMVeQkwBzvPXSOZxxEwOY7ekMvUg0fevbTe/lOH7zibBoG0F6M7+uvz6WwHYDtAX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GvvN1VJjsyE0X/nNQgFloMGPete2eVNQi1SnAyH8B98", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "atumwMXYohijmJJYB/BlPGWnc43K8R82IvszONKYQ5QhxGwAlF/O20EE9jR/mfoRq8H3QoU1CEPDGxTEPm5UfCnJ6v+zGwpvUZI1qRL0VwcukxNW7rgkOWNrA0rHpA7jZmqKohOZs7wBIqUpbbySWVqRiiL3xihY8Aflq6O4qvH6416UJ5XTm24hiYr0dOB4AJfcGxN9KpiMfzvuK84llXZ0qaeW8Zqdfl876Lrcui64KImoGm9/5MGielZi+4arW91ptZuk+MHFDgGmCw/40jhsv/E89zeVclYQ/3DBng5euM+O3C/UTlmPTMc/s0J4VYXn196Kqh7Qep4050I8hsc3Mf98h31vEanYYsoBZSbtOhLXgZqvPEvMmRvN9p0iwn/LTdLd/10rBUTPK9n8i8nwKAdSGyeS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GxHkNGbMGi23jf9DS13NcPB1E8sUui0xcZn49QYjZVg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rt46PxwL2aewr/mWErNPGdCK9HCyOcxXqSi6+nBzF701KnHNwGdG10xz4uw5oBT4qjagOUWt9REmlwpVgzLY8rIpg66lYFssNHEYc32A/u/C18/VjGg67Ycv/DcFgvMOjhB4X1u75zz3U493VRfdtXxCid+AKH9deH1rV17kYmwdOom+t1f5J8j6az2Q4OdjzOHLrCcd2j4vjug8VXXjbGDEYh+Vm+iQs+pGaN1aoqryZdyXMVqf2mHZ28d/TaXkXJClelwI+OUavtlKnqxenb6jptx2LVh+wOCJf6qgUqDwHigo8szXSQAEPhTRZ7ru7O+u8IOEBUkRUl+x9+JGRkS2s/m2ezlKjg42/ov497sFeds2X7oK0O2crWWLzz8QAlRMCETbniXMeaDDYMPUPvp3F/ehYPDt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GxKpNZgxiFLo2rF2L8AiCu4vkqcSttSRzVMpGUAFyvk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y10oPxKRaNTM3U4iZ/9szyp4UpMHwVAWf5aO+K5n9iS99l4SiZSW8yNhiGV/VQnEjbo4FeXMzepLr7K4j6nVgarEFShJSxIwSQwLMCE0NPbKgwB88i5Ac6GUl1om0BV/Qkd7HQI9+tYRuJ3dpWcSOmLishKlNohBHF0ulBLfTal7BDOHGXzV8xVcRrQMbDmpJZmueQTJuMZzQ0D0oC/TIx171Osbf7BtNJ9FSvV0XsgEh1eKQTB/hCke3E92h/IkHcGSm+QpScTM+WARCD5YjlH4X8C4MhQLYafK0EFann9U/s/i08G2WuDfks2BtBLH+QEbczxW/LZAsBuxm6QO2Q3J6+U4g+mlfsGJQ88nwG3fFyo1L71DAdRkNauO6SFv4tEMeRBecclY1LU6XGtsVHhxVWjiRxup", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "GzYSBWuSmNormBmlx1HuDDl8Mku2wddFh0wOuJDxfgg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2vUWYuzINxOv91czeIq0M+sWmtWzuQ8Om9p0A/yV4kHbJf7AqdUtviuThyIcnguGxoTzAuPedk6FczxK7/PxJdjZYlnuKroI1z225eM92yfm+azVtVSrpvFB/vEjDDZcx4AAEluCotGP9i/tI04ZtEMKFQQz8bgQHQV5iV6B1xGRUpbms/K2etwk4wQgdMQ1rmtvecy3kO7Bf+9IYR15HZFQ9jhvFhZjIpfmHFVax/4v1r6OLnh/cMxYLc0OqCIJsaau+vNAz5CppmslrzeI0nwr0Xs2IjWgs/fMIxrrEsuoaVtCFv1uOtCWG1+aRXBT6fWJSiMUXQUBfJ6jKWgBc3KSgnazZHAL2ym8GLntdgYwAnnYWjzlxczLZdxbmMvGIs/Knt+xUUaHdwzjh1Teqam9LvN1VyMg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H+6cZFbPAlSdSn5JC5sQVoqeVcCTgr/NrGSqcrk1n6Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SA/jZ1COWby/HpqWFkjUs2TD+5luw9jMJ250hvV56aoNZLZfOmw3aMiiyxW4iJh2jLx2eQKO3bgOl8OA/6rEdLiSirwBi8PQv2HpcaKBYsUYv2GURyLYaYFg0Xd2bhsRrCC7KTK2HLc5x+pT+11/YqB/YgnzpfKaSF4xorGc7F+i4+fIIeYgDKdlQ1Jzi/89nSKQG7vZrGglsDEl6HWbXMwyOKGj+uKdCRGrTZqyToTaL/bXfoHhEwzfJzkrF8vaaS1WNGnNnTzYcVwYW87ufZ0ufZkLebmCCxd2nLoOudFX+x2ad2oJccdFJnVKlTw3IKXOMiIheKR8XSKo0HlQ1YirO9976UXtmAxjby8fMxwYv5HjZeyslVTRx3ROTxTI0tb3d898YarwfHw7EcpCjr6D/KnRgX4I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H+ir6Za+yc092a3Pclpwzqc2JpzSXke92oVVJHXCJV4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MmxSCcDWotgHSOzbGhh35uyuOGWdDlHgCkni0Lx1TusHa9Df78+Y3s8IbeytO4LqGlDa4eYvOI/WRXRd7KPsD22q4+P5VMeZAo7ynQQ32kLLezbWbM0OeBVWbj6CbKQWv2pmFZt5XjYSyPjGwdWj+gMWKCXZDdMJkqxBX3NUfUwArs8x/E410T55GNdsbnfovXtO9ThO2KYGJVvK4ik79sNKDdBCPs/QSw+DzRFb/d38t3aZruNXRSep32LmUNj2Xm7HnuhiRJWQNJeNrndh6T8ba1AlCfK+gxFkUBAPrhDNUlpd0ooyOITWftgLMyVzF1boKimb9xPS+KyL7bTTV/vpdI7v910P8NRTbfsTDFc2K7KZnJcuMMcaOFLuEnqCZo0b+VFHWalQKV7xvg/j2WxDRv2c/O1Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H1L3VSFf6QYK18zw3M/z6HpuDGe22pR/pQE5EupIHDY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EvZy1rrbCWChUs69Kq2T4PuvDY9XVYjK7wmzVXxEht+mEJ7vYCwEW0MU1lwp7EOJ5U7NRWbFmhirLaiMw5tiiSPhsZuXDvxYd8zoSLwrqENG6nAHxm8hvmDzTYxC1MZ7w9XpUPoCbKb1jHdPCgI27u+1W9+/xsFV0krIuSToHZPPN12BDREmUDc1xfIOrEHu6yzC2PLLecBwFE+knZ9zDdc4auyfvE7YOwahcLBvUgUcHOJ6B4dg+iA4EPI/Jgzw4YAwcg9ZOlthEB/qXiuqOjIpvT/eUBERaOle9SI3Cz8q210gmQ0suhMvtC1QUioMhCIRRb2V6/Dgx0eZNVtFbPM0MAEbMiuula8Zj8HvOXxGvYOC1OBFb91zXCIP+pTHFmRDF8aOfTxeFHWwxgf6goVxdJj0OTke", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H1Sc50MCIibKpQoYTYOrbqFNnQ6sEgiT2gW7r0esyvA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "G+wxcmlBIvagw5gmfqy57fBdik7RETQF0c2vA6Me9mG87tEWU9cc5hfQAFPtS90ea4YTwgYSeF/5taoQTmGewXs2iHHlAWjWyeCa+zYJjVclhGb8KcuishAvix1JRsIgijS5GDibYu2rNVB7SdAyeasm7a7ZkaBLeDRAZm5eVBapyUKhHQxILEl+supKBpBmFGUs/0NlBQHPgJQq3xx5ueTMe0nX5h876lZlXM6MGMZJ5Eog8eVVTo+VDR83bHoNN4FkzgrH9DYTDhKTvtqehR3P44MAclpNPQEnTD8IH54HFTyp1QdfCHqJmSC1jq4uwFGwI7yDQtvUj21SsKD/+JDB1iYBlnhq2e6QbmxxRo/pac5l2Cj/9RpZcU6hxlHxEV/7XouxzRuArcxmy3fZwIBGFxlremlA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H1mhqZ4iWKLhzETKeg0XM6omOv6pzEhg5rwomPLHZOw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ohUmJN4CH/N0ks6zT9ewqM7R7V6fVuFN3EBmkTDw9CF9qKZzEBmilUQ7R+qwVg/fPZyp8pgII55Uvnewoz4qEU210YfYW0HFfvgxbLntfTvbqfHMm0g4BnZmEObiCqOqGJsoIKeghKuMPgLOVc8PWka8loEfbxa3ciPfWKuBoqUxUCf0NlP/lQv0lKmpiszOOxwKYKVZ6ciywvqpRf1yUIz8ot6+UbmaUYyvqG6RIM3nCv18rG9Y65SBvn18KEfUESHicQwh2//4QYdYApn0S4aAVf2AAYPF3rJIsJ+yoKSpCATr1TBxa3/Fy0k01rd0PlQKaQZ3vtDuyTiAn5A8de1ZdunPrCPt48w71aMfN5p6DusSQYNhm+OppapIgk2fSVCCIGAe5ylbs2RcxK3XGKI4l/BH/5Id", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H2So2r6KGz82Ry20+LrnanfzuOaylRddRDkJFCgx6yE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5Dhh/TAR+AjQ1ysN4eLdxbPSwEcO4e0txQ0xEsKgbVnPM+w5UHRWUGTJO/4BVD4Jn4NAhJpifmrQTkMSkEpwZGGf0Fhmby4hmLOGd6RCznfPhTimjU4K7UcSyuhbXu2SqDANT8b9ZYLDJWGAVGtegPWtD55Ur0FsuVacdpndvyrVgHGYEg8eVMX00HptXr3PDXNJlcbl/s1Udh04sVzR41zZLtUrywusOF15deVOXaFJn2LilfCfwyTGe1sj2yL4ZSCnSGTH5g2KBuiMQOaaSZhN5TJuzykMK+ketiU5I+llTFy5xWF+haaqgwvg3rOgYxOvcin+VfsTC672SAZJpori4uPHDdrez0/JLbMSdenwg7FIAIhm1RUXJzt9Sc/OCfrzUqrC85eDE+iWssxRODOwDGSe79ZO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H4nGCSSj1gSTkqDV8u4gzCOxPij61DBtPkSpKFKOH8w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CRmVki8u0tYiScpcfPIKqTV19Ijg6yaLCWZNFY9QuswjKfWWi38V+YjTposQfdcQRC9JIQHZj83nxH1v2NwoiV5nHKQoKo/jquomOmXXuhqFM9pX459HIpi46TkBySK9Pmt6+Uj396iaaSjGuoGPPZ7vwZ1LPJ1vfwWutlvExPnwN4IeKPHgCnxfjhqL03BSjr9x/febAalw8Sc/Y15ruwwOF+8BOgeyczwXMa7upKpJQ9Lh4E8SOc3cvBeHCrAOGNiBAEjh3KOtU8Uzy/ZbCiFd+SBaCc6ioBcqmFf2Mp2+Lo8Iz7KvAy5bqJEaUWdXF25BWP2HjyPskqeqSWFKBEGiF0+C8daAB0SnjHZzh2WL4ueFWcwTKI28tixCWH/+ITKamUeNed2ESVXEI9Tm1yMjfo6WYTB5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H52Fg64MxNedZUQtKp7FtzQ/y4QK0OFB5v5fGQ78ux4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VnjvZzA/fwqCr0VNI6WVTivaBTChg01bAT8iLFn622duIn50oMG9xXuOE+zotjLKaIRFtoX08hgINdOmCOJ7VH3VK36qOA5M28mTcONw1x5wBk1WV/0dw9NCHIpZ1L+MYQquzpewqL+2URKGWl8iRYoFhEl/BlvOEyY9NacQ43VnudMehPebulSK8nl5CGmzk9siwYHrxh4uXhaDhCgPGPngau8OXLhp1f73tvoMdWpjcLHK3ZLnmFnJFWZdJLPYSYRgcQmRllPd/4+DpK/gI48pXVWuzNEm/pzsgTc+FUQUSOe5twkkjvoHe4D2RkJZVd0nCeq/o7Y81zpxie/KDTHryyiHY0ot1X0ylZKVBFykjHfqVEG1A/ixbL+o8yZugcFI4ErriVRClMLhUMVo4Ycm/nD5e5Xp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H5C+/CEQtxg9XQQB+5ohXvzYqGpgiDOdi7c/EcmA71g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ml20t154TGRGB5Ec4tC27f0MSfG+5w+4zBSvzy1AujaJfZU1yQVBEl79Acb9JjdEVvIANR+yFQ5mG3jesB4NT4n93SYXnlN5clL8ztD155g7v2GmYNbQs2gBtDfa/jeYsRSX0UBclSHkIg8b3jdLYlHfsZClRjMoVbLu4ktEsxeyyY26woA9wy9YJjN6YNHxQTS2TVeHUXVk2GGIftvhrFBBXAqp3ZDvnniYb1xVgTb3gEUpzcfspIOWVyFwbsKGbkwbRVCSQ1JgfiNHv5VIFDLWL1Ac0TvOMSiLuwZMWJdqsarEuGjqxEKR6OAYjHWmKnKmTy54JNcL/pMxmYpeMu1yBtBHEfl+YrzHB74wOhftHrwaYQAWyxBS71DxsQhiH18gMtV75xrioXY3hY1T4rCQJ2ezZn1r", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H5W0ErrQoPr7698kyDjvP0wORUI7LHUDIDBD8XwPwr4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MtcHQBNjfaEmtfzqeM+5q8xImxO6ifcmbEtHCiUietVJeG3dibL1LvOxbvOkZDZ0OyoYAXbOTW5MCcNY5XDUqav+N3r77yyDXvrlmLAmxXFPffmTGKiqkRQHqx6gk5skyjvjThuzTIpCm+lgq6BNzgtOa6FL+4TGt5JOpgTB1aYsWLiObBftmpt+TQlh82klWeJ+AioRH6IgG/zBPgnYhLX6DAynI3CjoYmcppWD1XAtHVTEDyN4EP1VMMJ782zcIpi9+2g1D8d+cmfwJZ5/xEyyDLFHrKhN6KVny3DF+KwdPvdG2aXgRwBtZTTwfOBazaGR12VGwvbXJ4c9IcgHcAMpuPZGCZ5LN+/FiZaxcEzTqOiuE8Sz5o5RHcMjFyA+QxraByGndLxRllES7N/t4ChvREYp6AjM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H7SgffbjMr+NBFUJzR/BvWRV+Uv2YJf5uisldwJAtgo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bQOFBSgyodkv6JSLTNoPLHfUP00WbhRf7KrQ3RBBguTwYOfFaNgXPED7ei0SaDfNC1w+hNurtnzqLHlDqdNTNDdS2fBRQH7K+DFyIP88Mh6sx13kcL8mCgk/fX+n9TjUj4/fCa6+/tyiAJ+zZW6p61/wOySQkBa86TUcedFIEmGRKY0W7f2zxXIM38lv4hpZfqS2CijLZ3C63ICOwhfRUzEiYUXnH/tdXUN1AhoLgJW/W4kMRX5jbd97Z7BOHCB3JNxT7NHbJ4zwfl+0OY8As2npWMXhbX6F2LIT+G0qfcU3ttqACOtrVpvsfC4+bnRhg0oc04mcfDUQzhcKcz9HOYxVxg89lcMtC9AeBbE6jDnJoAkKy7k+R0Hvl5UjyT9ZnqqINtKBggLVUrBdEDr7bxXPPkiK0B6v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H7WrSVWks4hSu9LkEFks9b1fMFw5B/Gn1z/KtG8dBkM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tFUAFzZO6kaSIUm9PPh2fRgFfq241+jm9l4dEQ43aSkOYRGf2HRKg/KH10UGnN5Dtzqq6PJno5jXY3MmZNY+ro+ObYwFnXDIRCk48RWtunSImqR4x2BNs1Jc3achu+knHHOpHc7rn8XviJhxhF5FoB5II20gMIyWVRvM1F39H/Iw+r4oWvXJU/tPjgycYrZesqeLTvVzHy/ma+/KIFqjY/F7V5tFxI4qWrkB6zy5qfDUXKePhJjiZO6FMXufdAH5XdGMD3mQM18ZRZQ3BtQyYFw3uXtSJ74Ol5DOOjNTYGeIx5e2MrSGx+CbNcthKhdjr2z1YUJv2KSESlQvtxDH2F3mNXSspH1SUPe9buw8D44kuzWByHqFxr9ejTB14kk/O8sj+GR2q8nvydi/KHwRojgHc9cVepZA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H7dx0FPRfhlZUOfvcT5qF0iUoeFbdELQC/YDtgBsbjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5i5KmTxdO1QacUkq67qKEPeLgkOnCidWncllZG78zgyX72unoPMQ7W9H6YXeVE/cCa+cp/Gnvu6zseAmk+g63gvdwxuf3cw0x9Pr3lCAdokM8HCX04gSKPXYnRrQZ4eWgH6ZcI4OCrhwjzIp9SsMYn2O/ZFq5zzA5ap0bu+cVFpblt/b9OdW3qMtQSZDd3nfehvIAb6OHO/3Ek8Nvrn4yKCokCTZNQuJl3ruw+DZyTFM/htRXhCfKNU6LP8rphi6hwZ2n6a7Lr2W37TQ99FA5IGqYfguokROd/AamQYq1FuuxLqzTvScxm+Pv4Sf9ZuY3tPgxXwwtGh4o5ffKcwM2zmQqhViFNJuT0bnP5QxD19LDvr0kP6A3SqQEbCmdqZSdu5mTjJAcuc8LeyvzwY4sm4kdpf16PXY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H85D5zN9V2uslUEg1ow/eINYlkfRtLfz66JHyPSVQLg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L55FquaLaNXvy2BzAqi11w1497bruRbQbb652p2ORGV2hoCSJZ1NBPBEX/XtPt8N8jntXnGKTLP4KC9ac7sYAyeWIetFCiEqAEPDZT5IQ+NNzgDMSNP8FQor/WcKoT0PA8DpIVXX0rLKwBF/KWHJ42FDTIdcfe+NdFCuVkyUsco8RodVrVL8axpt7wnRkxgc1Kdv9w2klug/S/FihI4cuD2nZWIwZQVcvKFdvWl+fLzEIa8twHpk0HYq2I0wT6jlmzbrIR+YZSdsNkmKu4A7TioDjbG26jN4GCAWPLrdXoE9EjjM+GLFCsWFkbZt59MXeiHKI95CwARyPl9WNvbi1avFVX8Y5C78qV003eRcU1O6FhhrENItaaVONTqpat3ssg85MUxEJXw8bzSX5V2lmzJYiUFa8iek", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H90FLvSW0lSMiKilvZHd5w1so0lPOf4g+K9wx6vXT3g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/5naysP7I/L6lk45W3uhWFoDTWScMnH5vbSfHIKV1jTlm2gEDD2CDZc5xsnZAqk2GgiT0+VCLoMOV8NgB6e3o6wfHfsT64DGAYugS6YR0vsBa68JFKGfjIZeTrzCFCUpgpUICI7qGZGi/+PnC7JoQzoi5MOEIQkY6fbnWL2lNvvSfgUwBxW2HK+Kk4Z8AdX57csypR1KyiFptRAXVwhwGTPn5miiKF+kzVMDShj2N1Po7k+Ad3yIWFkW0OD97NlqIcGxbHktH8ys1DgsG0eopmjPBJnwvjupbQ2AGlFU2u7l+18ibLFK8CpqDpF5g13s6EU1j3Z4h/hRcthXvGy4quIzue1dMapYwfpxPej7ClTBZ4rjP0z8n4nvKRWU5X4+1k1UKK3NlQRCAu5EHhwZ8EVYXfuAg7wU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "H93QF3BJt9W8o8ATomrGrZQgH8Um+j/R4b3xmg6ib9I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dEFTEGOL6S27l+d2EJnQZSeqwr+lJ0W4GHWZaqyqyVoot2tbsrBV4LNBJ6V1icMl0wMcqfbXCfKhHizUCxymXSMcXuKSx8atjrwt/lsUAMxsCVQEojHcct12T+hpj8E9bBFO6Ciw5SOWmDrpuW5WJBU0Fc30FMaWM8MRXy0g5dhaQwQeBnJqcoVFHKGAZCRzDsQEufTxLNCzBa6/YVnplKqNVEQuWa7qgRKbQiP5itRndEsun0nxjCtZmUAa7mmzAdsvjxbClsLdByheLrw4tuoIqRERP1RJ4wnGipKlIxPjSBa4PdT+qs/Jkua7SvUsYLTuFw9qeSMXw9lv3zIQub3iWa4yHn5uXBBEdvJtus1T9reYTvF0coC2V0H2/3RdpZFSC6pYYPNX/jeTFse1Oo43oZWPpfD+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HB6h7X4UFCcmcR3LzM3g3KT+v6ILdC8KrDpK3s+SrNQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dFdfa2xWQ9grWaxoEDLgVvtIS3PKYnUwsn2KXlJBDYuFaNV7A5BvmmiH4cwOuxhyHWFqUwdmd4cYsD7VKXs0qoVVptGTvMuuFxVTBW2d+rJ4sE1E0awIVzoBExEZnHYIME/v1oo0ULwQIngkHztVhp5kUTRT3mBlhN1/f14UKPmBCvLNe9qid2cntUYOTfPknE6xrY2O8R0b4ntrmSJKguQaVJzwN/42p/L/YnGoatLVzAuySjly19Eu4//Gk6Gdh+3byFftIfQgoTFk8q4CoNJ/uh1hwk1EUi/jbM43Gw3iD+1ErL3EeyX/cLhY8lQe7/tFBF+Kuc7Cqn6N83mkEKUJXDfZBep+UG9N96h9oIBNswspmBxMwlDpcPTUsArXVfOiz5P7MqOtk/wP6CG2XqSZ+6IyVBtl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HBlQ/+BW+7k6ZHuYTzr2c1KHQx00VcSvBSKQkkBC/UU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0PRQvPK8oVD0+32msAS3v/OWf93zxyEahLP2wQWyXogBCACSErr/IsVd6j68HsN47v6lcFDqncyKuQBiD2q3wObJjgI1+cmhROauEUjUrGgB9bgAkX8uLT62bJdoStfnB3lv5PifI7/YlwaM94/bJZbqD6N/aNJoynPSaMGsReJXFs3OaOsjL+PiJvJiRU4/T2DKHEliGLt9DaqvhXpvTBg6Id0gC80YvbuTCzXY+lpa6QM6odFfTpabMiC6+rkysGYK9r+YDH7sFGIM/lp8Be2dENlAx+3/90rB2/MKxYCHMgzJFUMrMaoqnhG0yAtp1T+OOpnPuDqFLMkztx7ISzdUXekxINiMiklmvemmm0JY0Iem6OoheElaPTh1pPRgIj4uFvbsaydzT/6I9RKJllr2cf2f78S7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HC5zKfgvneN4L4A4s2zhjtEU5qfaYqQjyBmqAjq2ysU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mgHEIBHJHL7LYHHjVaEeVw00HE/fAPzwCChFAczPU1IK/ta/ppRGrYmTUG7lNf4HKHqYeJFt/LeME0R1X8gqC4H6ECEUVwI1AbHbt/3vEdONO27r65lrVVrZmsnmb6kTJfEV3Vqn3qQWcckMYS0AIzrAcFdGObuOUn/X/6UkdoYRGX0WBYox3HxedfUM1g+9UCAVlBy7lfEME7pi/NWWSHVnlGRiii2NQfXQYSrHcjz7K2k4Jkk3HDIHXQDz0avn6KaaZCQzhOGuDfi61/PiPv+I06PSi8EyWA8V5iC90+oOOWU2D8kIJdMyN8XM68CdBQ8yIgPSHR7wbnV5HrQjAqTqVy/Il2oP9KFi2xHN/4v0G5Qvhya2MaFafXHpcjIfpx24e4BZl3L1E7RNh3CQN+KMXLWXkEk8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HCPuoFaexPUWy9eVXgI/b3ionPgr+X2pMdpC8IINcNg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+cIAyePq+fhohyWs74YkMsFYlVBdjwCmOu1xhZ3tTDlN7Du4pcavO2JRFN5jdxzg8P89bZuNTgiiyhhNan8kzvy/VyvL3OQjP7vHSZ/kP2N57S/loJAM97xRCcPoYbhoL1YMeR/8aPfEWO/BPRMeazaorXDLRsQrS4mVs+d9V4eKC0yt83sucbYd8MqKbvg1MP07jNZFiwoGbXsIBtM2Gy8tUwwOCzqKUEib5DC+p2Rd2DZXrW+1JHWWhI0TAVnPOH7J7kWVKC7levw6IunqZH5NurmVrZuX888SCut1F8F3qVJjgw5x6/dGFAsCuUmLXBNkld+Q0xPnodXJKkD/0qTtK1BA59gcDutkXhmxqjfX91O9RRGz6ZTDDgKFg0m1GZyjJ4++Afc0iVTHaiBRkWAYlDTBx/wt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HDXN2NQl8WB9UKBkY0bDirRGcGWOD6WN9PPOFhbpSNU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mZIxTOCM3REcktGeFgSMR88eaIr86VUJHUIhMWbSuKfvIpkmFfRrmaqXyQPmpkg9988/Y8x3uoVVXvDlBEiuTs7Zkz1Y3kgLH7wvh8DwTlg+PCyJOu3Xi2MstLuK35Lan4AqyhNIbUFDhnaFxRIKZTxDGDLWp6uALA1IcMYniId/HWV9THr+Xu22kjGRKQXydLYkICi0HDq2EXtoRpfqQIK3V4KRYecryySRuhtsOTDsDHurupI6XBEPrMvfVagDMg8sgSI5xMhRiJjq81oehu1oJQzWhObtPBJsa4eMJeSPeO1SHUelRcDCEMIiDWHH3mfo0cM9TInTXcbY898M+PpcVM2S3Py9i6royOOJtChl8tkkij/Z4N6+dtnqdEHLptRyAE88S3hj5pQljdMufwtzlkQ6JqE+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HE9XrGLIeIEzJv7N4EooyxAKnKEyaPqtdI3ZyXhez6Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M4z8LemeRcKXitkXh07YbiL/WGjfL9R+emeBGJq2UcTlUNKZoxASa27biPQqKZQdBuRPOFPuEGkdf8BQNr2Ewz1pimh4U7J5aG9aYZej3FJxiD4jPY6xPjMHJHFWP+2ej16b4X9SexN5ax3qZxCGxD3j/j0XyeWOzPP7CNGltLJhInNr5oobz2U00+ZkHOtioOhCKemYhGMU3U39n7aBrGHQK6wk7YrOatCXub5IVIrxBHzpOeWajJBwt/6jqH8FiAVqyN3OAHohUXj9d3n+3Q4LCdjntP/xY3huRaPYErAcxuVzITetP7xEpUyBrGEW81SkFd1wt1G1BH74n1hIG5Nk0ZrJSeSeZ+Pk8Clqv/0N16+qvruU8SEql6DBtahHd0Un0IvxQk9E0/73qllfYUG+p4jlRWwk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HEVbI0AxnFtOX6r5zMZgvRn0m/lt4QxlL7bhW0vjYR8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4hPyWo0BUKmMd7CI02DQyN00Qmlarvn92jieKqNGdq4ZnQZJzaSV1chUXyoRWuhm1FtwJ203ueqtSFuX8fFdftjtMwkzacMgyhpIIqkxyqBlWMjOwwWvncsKi60W0YcbHQ4hiJCa0UaNsxzKMaSVrfZGP8yWVp4PDy5osDpnY4hq47l8UMzZCgir1UYEmH0YZHIa9oJip3/Qtq5ZxTw2vRRWYKP9YIpwMSajrXTv8v+seuTxivN14rARxlPMOayNk/1CvObk/W74DOSs7IieqKPyQ5u4KBZZcVU1x+sZrUgkghz2FtWfeQorhmHe9KcCZvDhDd0dNkUnq5Rn73DVaty48EmIqGfVSwXFWHoPW7TM2Y9+H8avvic+16ata+sViaIe6jBsy9Ye6fgbgodPW5zPiccO58io", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HFIZ+5ELAxNeMvjaLPw2ClAeDrVR75L8XApDTkEW/q8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HlsqSej9EfH518n80+0svkF5/DOezGs2OveTpEBwSk3VWMs3rhAPEO40qOhUW4smkysp7lfHZ0Sf1C420e9+GNJeRi0mW4JH6K4zU29ImFF3zxGgyHKgq+D3m+TszB8D4xiX+jIyPXk0Ot0/IXxsucjLXsGXza9PbrLQQxQZQRwx0f04iECux099nvr7evfx0MOQayTGqONn7k7SNzefAjp7rwcdbcTwjYe49SlvaLruwWJJqRPpHlRRR791CT7jFKu7vdjSPultqogLNWe7at9dIbeGQa9TV+LmUSiItvkjKl/olFc5u2YugPvtDyOPRWnRDmFA8MfXnIjTF356s+rr6R5IRGCzfxrhBiTWswl7E9R5xT6dZkqp1ZkG4XRdO1gC2C3mYaU5547UQeGWMRVhZTcpdNUO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HFJ4jwxMSx4O0yyYyGno/yRlVTaceQRJiHOxbE34mks", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "I2+IhTmCiOBQf3x/mRszDHdMDePJEsJURes4Ft/E7gl4T/ZQm1WdAraqbxS+zVdB67uDdy8HaoSNGXT0ZvZqC5+V89Bq1HlfXw7t6rCTBNYvh2Thw6eB7RehQe1KdyUTGO21jRL3t/JtLIO3PU4A0vXz6suE6ah6OgsHiYEMvCKcgpRlrXBnuT8xxqQtpqslEOu8MCJR3XV+79lbi1i5GJCF/Sv+XcUUaDBU8DhBhbOAPlqR8iYE+AtxlfPabZLclbOrSG8Afw+ZmDI5qamdk8TjFy0srO/3KWs1dJzytlxShVyNNMP1NXGwWSuz+kJfZO6rjJF4sCaXcZdJpB6RgJrooF1DrQXY17vMlcXDyo9NZs+cgvqGqxYyZitNwo30q58PKRMb8sbd0VZ1F6xllLGxS4ZnL4De", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HFramPjLdmX1nEdkpkYo9jW7QRZrEcE6DzUgvaGxIjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RVGCHoOntfqmBG2CZpJCkPO4kN8jPxjOUFgNc/sDl/gnvP/1qImQuNxbpritNFFlqfFti1E3jMezb0po+8dpOcB2WYGvolU+V4GR6OWvkK3YS5zATS7RlbqBFYudcLEbFbJYszONzeRpj+L1fg9sLSmKiPG7DxQubcfiftS7GtU0/i5cDKpfij7Je7fifrwghWy9DGwh+D1pTyKCnBK2u//0bzT/YTXIMPyJco/FgIAcYkkRth3qB8xm5bovIxI3JPxoNSOkUNYu0GGnLF1I1u5XxVr8RtNtYVoL473UhgBuNQgFXnAZpqHvCd1h40tB6wzyFgJheN575ROBcHGiLLlyilczNo8eJgqM3D0S4aak4icbyTXp2berVsq3zC9272ua0tjTukKoXuu4VDmj74NmDrKR7g3q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HGaSUvau36/Pej/uRakn57GirkKuDCTCumvB7/LD63o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TzlIhaz6p3F7SvUsCkjvqf4SNrbcYHtmmG9+oR56yvVVAiP4QauUkzORqhX0gOwJjcTBm8iv+NrAz5i9gKqeoet4qxq9ZdYkpXE8H14Ib4mLSaTklD3CmHMWbbcEJYAQvl3fFkOF1Mj5hVfEwQ5vUWhPOvQvsNY3dIZPBcoOfntnVIiQOCBsblDoghy13KooOp+8s//AqvI8dY1e3Wv9xPyYhe4u/KbWuCKQC0fyJpQMxFquOe/y9tevD6LmSqzYEG/UwaP+8xQZ1qk3DzJLNydccMkhMSWSw9TA2C9sFoOp5SzIjVXSMaJ1+aiJmegEFz1tN48BZumtVy1AKE8yH9Q1R1TaO8ySlpSZ7UtspihLXtMuAfzSTMUbk7aMRN6JdoEAlnqs+N/EM3IaLFdwovvH7U2bh31A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HGfc0a+wH6FKMa0d36/7pwv6hBjxJn5ioXehy8UexmU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gyiECfcUiKYejXenPiQ+twmAxeCJMvIXy7uITV1IWSTED/yHm+34dciSasZgolvXAmhyJ1XWy2Geb/tLuoulTp9/PM7WIEpBodVTkCawPxmAQPSQwCWEuyM4ZPKZyrAFhNqRvey+e8zzKoBjJ6FQnLTzqBK38NmF2DAr0rp4cAvkRPTaiW80VDjoj7DOzbGbBLVnTx6JnlNGtl/7r9TRHWLAqL40RqLRm7FGWeY1FXbqf+1qhveHOTgKbrntCanOeSsKpwX+7x4HMOQkINR/2lYaBwrHIIm8+LZ/sfD00QdV5h7edWJr7IoMAsb0X3xbJAW0Lp4UrXYfYr2OyYR4LIZ/XdNhh5ZkPr73lZcRkBmQH6uNPtI4Hkx69wvpsXT23yN6rLmUl6L1CXMzGGNMTxD2lpjqRocR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HGg7s2zhteF+flMdb3kPMejlEoQornugmk3nhHx0wSw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+xUhEspXa7Ms2fB4qyIw9K8ikH44ENf4q53nyXyaE1c7rtq5NyhbPdfdiLlkwgc1WQPdltr1o8ReRNJd2wY0lD2M2ZEwzE0HhT/AEnYlh184ahgwjtUWvhGR5ehrV0xPXkduMJHPyeunPJfxpJ6uxRga/OSDqoKUKWib4RiyGbi+KVn6vXuE6mgSO2faWDPGQsTOX2scMUms6euKHJ7gLle2IiLWoLvGsnJO/T2zjutwUN66mpuuxEFNikvnPN4iNJwGsmyGX4HEa/ptC+V6eByI4adhGj8nRdtv1IhwYV77MaCw8GgFDVICX/AtYua8E23VnudKLIgg0m2iVQZ+tPLOHwlxd+zAQSN6rDBCNZt8HqoQZYdaZumfVmnahrM+BGPUTxz2IDGE1aWj0hfrZI8m/phfcIzD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HHCVJS4szsE4xALLW2oDcwlMiR7SYAm3ppgkdVpBEIg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ep21dI76TkTtyGUnEikv8CqDJhpxDyEtBnJp4UkytC6H64kS/2G6h8KkGzJ3TOQJiKsFOvv1rAL+3c65XomiexDI/o8CoeiQ+9RauKr+6CbmReOK24BBQA+YdsDxDMciXYdut6IG13MWDFi9ZosrMpI22itMUuMeBDEMozsULJejs/Jb/0+3g8BAaM4UvouYdn+mJoagkKMFKeySfBQ9EmO/pExZfGcQSTDn0PVgytupkpG69Cd7aUr1a6JitH+uZjd+n6om1tqW5N1Qed8oFgaNgSIYak3t8txyeun4paqGofOvvTuiD+pnhb/MP7ss1C0KA8uUbxbCpMS00VBgumGXESWCG5uhArII4DXpFERQGehWkcTFkqJtXcAUMJzvT0IB9WujLVz1BjGJwP8/+/x6RCefnZXQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HJPuh96JFzyfuRNk0EsnJVAJ79FhL9HltF3/9jBvsjk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a/Cp0urO9jR/mgY0VYd2tYX7WSiQBjVw37HKFTrLf9QqNh9qCW1JPbcn0U2sRIYIj3F7GP7kJ4btuiG4WzZfB/oHrzFW3y2ewJAWWE9eBLPBI3FpHQTUhLE0rI/IfCtZdVTdx7KjuX60arPjKImVMcHhl+RNYo/LqueOjXCL+T/Fyty3x9+aoDJdOsqXGp5S3t8aHKT6EKt6ZYfaMNcAlu8WfwzwDFINgq+aaA2ztKFp4ejrMoC9LKhSDAQHh273I5Buvu5yZSgtLcjsC9qOzWGCv2Wd0CzMFttDdG4wEYSZLORqGgfdCHSk3DVxjMmJoTx2BUbhXE75oAxPK/VgPBVr9M02UmiOah4stfFzbqKjlWzXYzQCKYht5ezedPI37dfyTedyLhvWmvcFPo61vc+fUAGPkQt0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HJRmtt7SLnj52rgMiFqmMxJCx/TAJdlAeTs5VCOTsmE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KPKPjdO94fh/aiqRHMCV4g+NzvtCCiVhuGGD+27mzMZMAN0xcPaKH7E+rZpg7km0Um8pxO3RG74c5GubLdPkh19Nrnrh091tPCfJLnTQ/rrfaPJ4fW2qyo1bLUUfUcKYcj4SHiB1HTAc7ave8kbrB9e+YxmUBULavEfJJYH8FhcMHuLiEx3smGh2h1CrZrRq4ZHVUQHm9wgyi/Wr8d3vIxGPM7Pc4Yw5+VHB30xIL/z1unDa4n79/C3EpDeuHUBJwtRz5gfAkEyUfsyI6NWb/GZP9neYZgwRJ6xb8DG3Ho8WvzQef0QEzH3vHfiHiuhaK6MpqOXNKoI3JV6qUxXmLxboRo/I01B6VpM2w54NutfwKjASkLVRx1i2v/JJ79jVAbUOxUaOlGEXYlqFxgzRIQGdPwaTq7ja", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HJvjFKvIHXNrMFguR88TNAGLAgpKHv76RNp63T/0BQ8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RxS4gcXMKTjINZzfLzURmR2Pmb34bBnLXQ2kGUozajDGm+hrq7yyRZI3o/ZyMHWopp8iUH/R3h9WmvnN1tNkBHnzNdCNFB4GjDHoK0YXndS8T0/O2fIHYy2ga3KddudlmywcRVlWTwhTht3IUP4Bqp66ue16JmcxhboPZNqpwl5QXszAv3y3bYhcIiEBinfLB9Tq9FzeBEHl+xs+DfgpzOncV/18BJVuCdeG+nxttA17L0AEuJfj/102/7fNkpR5vPuCznr/+ilY/+SZnnZIDhDrdFeVOrSDljPnKYWrrOpKMe0SI8FYR08ah6youKp506J6qm5ga4JQKIQTDUb3nQ5rwVkZe5NxzHLN8TBuPCdMc8Fgj+serhS4pHiW0lytOGD5SPcanwoEm+dhX3cm8tM+Dvy29im/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HKSuNEEK+y82rzVH0hdfWOZRZJxAJeQRY+p7QHHqaNI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+13QmaR9/b6tCWvKUt4OjijQQKJD5ya3U9lx0eoMKT8NCSn22t8pRLbAAyEaZyMf5POgdZVlhVcMhfLHKBEojgqh1sFGlwqP2fSCD7lzMyJaEAf9dMcC7NUl7imnFrIiFPydAKFbLAU/8WmDMXwro98YhCEiq+v3c/sHDEDNr3gXek7hmLBAbxCYZeTpzpprMPQCNB7Rcb8l3lnwHh47tz+8GtnuiHa7xAUSUxCgxitwKEKGwM/DNV9nYMCvmCWMqTRv0Vh2EHDIFuYvf2K++OqMiJNPSTAalTJf13k8Zq7vVV9QjOiO70U8qiZzXD9fbnrLfIrMZ2OlZDXSOSyTqT6nLPY895int0WyUiPiLsGmWY87ovCcQrD9ylNoESxhkhB7sLK3jetGQREU0LNjwNsmMkCtjBFN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HLfnAdjMl3LStecAAjIdfCFRJuy2oBjec42LzlE6S8w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aFd74ORFCEzwtkNIWfs4+oTHJy0hLN/S2lW+ebCBD4JYQTFcR8aQmBdzOZRiK3inXn/9X6KBcDjZJXspiDYjBfLTINLlk6HBZDr2RyENcEaItRLnt83Rz19CgRJF16Plp4o0y2CrU0UWdW6DKSnxOt1x3X7MVxeJMJ1CDgEoIECrpbBd34fqO+3h4uB7aBAy2BKkoH2Jj/bssEdPtY9s7m3ygooXUxo8inhhvC9UEcgv5kjkl9ZlI7nhBEHkEWpLm3dHAZDF9oZs4rvBIjMv0gbWDaTxm4JmW2dAeGvjGbmRsDinmV8GnUK/FrrRE0QPMhm2hIk0JyicXwVpvZLHqzvsDb/59+Vj97ZodhmMGb0bC/96u6XfY7eLtREvdHx7N0TOKjJpTMkLKfU2rV2nj2e18IS5Bj5G", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HMO0y1zZI6hI9fcx3u1TnZ+vcYj7Cz95fivzNo0KRhc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oZTGvGftclC4SnpH1/io1BFVF2s0Njzh72oyrzxgxommdiSHgv13O+6qijYnnPy77j+jsrgUv1EsJJ3p8bwk2T2tJ3Kr/cTeJsoTxKWv9Tt59GQcNZZgJTrZFj1D6/C2LJp1xRcmrORg5M9fCgLkC6cgWaDGrw+hmChN5LD9gaS4epcukjfPhxCWajT5yXdXjzJORGy2dgCapobhftW62Gv1gB9QsF4YEuBCVrM3S8dKLJ5rOkFt/wcohhfvrtSTHCpGqycMta+y5dFxjeP/UakJFyDN1/IVUDpllv4Cl1P5HuojqUhaXqeSteP3XeKDCy8emR2520s/fks5LcXENTVV4J0UxpJ132ZQDKvRb3VP5s+7DkrtfAj7LX61JrqZ/hCkxfZUUAFgQVwDy7mVfErTNvPbTJwd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HMaDvG6OX4rWMGdjoGyXbefo9IJwx7BqurbZOpKw7rI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oHQv/pyV98AVnFQtUtzBOjiodkJoAygLdXVgpLUEhn3fMQ4AkB/8E6cWVbVQp+3kUGu6raJTC3wJg0peY6sC7YJ6o199bkvwLMcoFc7C4g6jn1E9mYLphD6uI3f4uS/6I554mWr3rBR9NeffvE+V6AXCPqPHZ62kNfzucIC6vZhFJVi2iLMaqtGsxf773r5qSbuY2uESqeSqcfuBcGgl9K/82xGnhrQx1D3MOIBxQscqOUi8WRXuuIfVTx3adwf1gYcDkOvDXU6nvhzkKlxaZZZgehhyQ6UJHG8TbP8RSzLR4zMp5FWChz/vwm7UuM/pzDJsU8Nn4zFqHvrvQ+xnoXp0yQzHKWLzOTyGClJTuaI7xLUe2rN+OvVBmF65Qnn0jjWFt0NEz7VZPg6dTt+6rL1j87JANGBk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HNMJYrM9DpnmEs3aZGbdVzWX4cY/lOWWMvAtVOjEQS8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KwPb36Y9QJI/dopbjIkM3CnHotmW5qarhf1EmVBRFn579JknE0QaoVazkwdpxDWkaA/CRPLKBUXlA84A1qVCkzJOeOt47YIGYHUCf9O0L1zU4KFdyq+a+AIN3YwcPCG1837A8KH29QUSda+rwoEJNd1ib3YscagBQUKZK2ccPs5781kK0v8Rzv9mtzYFivEy8cm1CEn/JGj9trPJLiG6CufeA/IkSflHEj9dIvlYo2wWRcBBHhnIrV+HfCLeGDNwfMjUng57YzJsln7N94jwKpYLQhlCGTjrcx42AFTR68kt2zlMficGhRNeLCCxNVxsZx/y+u0Xtef6/VVlxS9Z2ppAHDQUL+JwuDpPh79uNCXS5exu+EF5UNSQZpkcub2w7VKu/XnyP+xGF24Z8b8JLFMYWgJBTbEU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HNcDGmrDcFRaE98R6GwODY0wK1uEh4HKGI5xM0cfSlc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZvT32i+q5pxwoHuQEL7WWCm/HtHhPdFgW1pvWiXXgS4CpDn6kwPifs7zv1/LZh2x3BqDG18i0QYubqsMGzKHHQ0jEV2mUrGXC9aBG+vRfqiY2EwlPrgZOsQ7YX2lWnoFlBc3uCLqZsLghdLqovBFynccBUTyp4jPyuA9J7N8W7dZfRGScl34BCusObiizIv50YEzXGtkEUNrRIt/1wiFE2yYp/T9rWKSYXVW/WTV8NVDoNgBrNsu+1IMBGOuVMp9zYSWYhVipBd9WXFVXWsRro+QcWzWjD5bBOH8PuY14PWUjUCj88WurAXuye1o0cwI5TVMaMqcDzD3f9a5UmJ8AX/GvgLqYJF135pQn1iHCD8+FBn6L/HH+uNIAYer/rPs8Z4O+ybIQe5S/SsyKQdgEqNJQrMLGUo5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HOl6NnhneC/OrdqO7J2FbMYUgdhfgymhDJvZPKErKZc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lOivVf1HMpti48Y6NlarGDht3HHeiPUxNYvq/EYopATagnZAnCBWZDgtMP99gRHzxlvaqZGJZtIt7p2wFchVjpwyhW0r0Ve/tg33fngkvgbo0fjw8crgAkwLFNSnnk3niZUVbVGZmRdOZxMKd/nTO5yOjKbnJ4RJFcv6G8POJasrSn4gnUjkwo9SMDiKK+R+ys3X3pnVbQwQBLKJrw4/Ho/kIAByxGDTTxVd8h5mTFplt/8eFytLDiI4QdO5vMnxqnSUhZ3AWsjj9QHxMXKj6sGdAUF8N1ul3hKbFxzQ8ypHO+uLJrEvllYaEBKmhY2PZCWr6mvazKZMh9Py5UdNFzidTvh7tQ7gYOvLnfqHknZBhKteBHD7dADIIajByCa/diqBCa0JM42sZT7vscDrMpOuSWgjFw0m", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HRzhBjziT3b2Lg777EADd2u62Vp8CSiuHbtYDSNXIqc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6k9WiT/cyyHFJQvQNJuDfawuGeR8wAutw2iCt1ZAR8DS9HS0Hp2N81ei6ROni6qYNr0OaeT0rQ+qcwy3kKOVezux2xj6447JcUe9kDV0/OpAcDlg9WOzgtMELbZarIr1rq8xhAd7Blo5Me2Yy+5D8mGROL0yQv6oFPBubqCx1U3ruQSKPX7T+K2CmkZYIy4rG3OcYcoy45Gi8KGu7iHkAHjb/30566qzB5oLJSuZoJJbhGoaaob6FbqSZym+gPdI0lhyHtyLG/5IPgBiIclSYJ8tFzVreUE33CLYKZvDzZ37tkO0qIIRmnkxjzGHTwJ9iiVQwZkFxbgOWXeOip0vlsp1BuMQr4wVH3YFoTu0CiRPFh0zmZXuKHJA6YIuiKxPL7DmFy4PZE6agtYZ8bC+gXSLo9JNmd4R", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HSZcy3GhBZtNCii3gakMmIzyUa/qc1pWPQnqXvIOd7k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3izPExOV3Zd3icJNQhsSXdqWD4/GLV8tHLsT4HuBtmcjXXS24Q9mmzWB3Bv0iGw2dESf9MNUiwe8PpebA4mgks03lKcwVgCvMwq4fZ/ZUgPWzAZH6YSsl5jj7Swnc7crgCekzl2T1a8kf6dAovZMTTpobqtQNdILg/4hbz3mUijCAwI5KKKYLnPDXaEzZoK3aNKZFm3Cs5Oo4e7BvwLebBsycLrJTF9XarnTIWri4xLf4OQ/gEgaNGi7U8mP0RGq9Iis7+Rto/R0UZUNKjGnPA2lU2Mn2grpLhtWzgZuMu4lX7lxizoh/XazEm69cGS9omOJSrM8mkgG4AvYllo2Cw2F7OqYpZ2bOGcHF6gV+1Mr8E5/z4+VmhrRczipKduFAPB4LuuvjRXdSCNQTNPrTrD64jX19o2R", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HT0Jl6fRWEDQoJ8ssybmFDprQfAplogzUKhyY1Bywvs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xBDYEHCu67Ru4c8x/XTKkvH1Ofh5p2ZZggY/KKGc1YZVWsdZO1g+gSq4g5jEBhwOJHwqpS+fmuzLQWMXouTs4zAaKyobAM8CGvRZR7i/fcNMylyX15lKDMRQFDqVnyVO0t0tSH0T905aJkfAb411N8waGhP/oJFLlvBX6RHEAQ8ZIagRUAEEHW8gvOYtFdKH+G7NyjLwVs9HfWht6UpROZyR9oDanklWxuZKnMX1ecmnBBcs+LLa/1I44uvhhCUHhg/pBJ6Bb4Oi8+BmjNPtLyo28Y8UI99NG6Nl+nGAzcIWF1UGGhKs8oEujqdFOrjDQ/WAvY1xfUGrjL0FWDmNUB4pEfxKHWu9cPqmVGJ+TLblmKz9k5wQk/S4XTR3JBYNdew1JHfWVyHkz7uQPyVrIcz+wcpCnd5l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HUzLtkCMzWO5GA8hemJDJMwuTnw1kcu0G4sEFEhqR1Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jRIiK4QGVW7T1Ffw7yljCUxY14k/XkDFxLj+bW2BdISUlJoy70l3XhpggvAfj2gAq2kN8ZnvaPQqy7CDc/Bi5CADJ1zr4Vw/ZBcEam69eJumDjb9tTVdYsk/jv7ACmacGTuvAuUphwUZmFNXyyDgQEMV08KI6t/F6lik2r0iufpVn+Nc9M3/ZU43s8pRK5FdP0MXebGrZwCylfQcPLXX5XnQIY6D0VXRezJm+w9ECtFqQQx5lNs/qvOu6Ct43+kUh7OEsScdqqQ+locyPhcMcG0HWJaky3o/ImDtog9UIUtqPeWd1WO3deXVB1ofZWOAVob1HauaTxYlSyQah0QprtI6nlYHcB1Iy0HmEQhwXFQEn7ZkQyy3nxROWqxRQZ5YqMetLafPuhd+n6t0nQDsOJNo6+xzh5VO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HVeSNxoiv6MUx3be6c+V2YfgPkcZ7otPnDCRGIM+rUg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j96f7JZDVF63uf4mQz3oauqKMmdi6sx5ZqrJEjzd/+XSrt+jcA2dsKvN3gKNytOUNo7tkwtYAGTwO37yInKNTY/37xQcTCAIoJJ21DqgzfDq7zfX4wiNaY22Tn4LwLx1XuZTnAVNXB1Nzf4Cwyt3iK2w8luJt0jzhPbRlej5H9tqxkAcjMgKbIsG1Oku+jfsbDifXSO4U+dTamXjTJ8guqcOOh6w12gvHuZwhYd/qurQN8yOXI/MSOvhHzqKIKcg7kdV2wvtSa5akn8JJuGhbLRKKoDlYJoZq+SVlT7M7B0OnR4xCcJFzNqQcqjxuaFJgY3fHtAjU89stMP7INMe+RMgsYAxI2/4tOFVa8Jhvk16lCFqHbeDeRkJysdRiLp28wM1KaznDNxfh10cT/S5nmk3JLWuQyve", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HVhkRZoOmZjJwSUvL8irT7v30VWOZ0IYD4KayFC9y74", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2lOosWurC6vYP2pSw0ZHBBctag4jsH6b8NPHq8lwmd6TSDW9fskRYXvZ/5ahF/vFJzbzN9zVQt0tQOD44IjvJt9c9qVVI0tIW4O5knTxDNPMoyl5Yu3pKjn3lI8YUVQ+A8WBWp9iW0UAK0ZQpxeEa1Hsfr0kG6O8PZ4+xgwwSlDxPM2mFQuz1gEx2yGMfuZQPqeQ4CCkB6F1NFsY9wj9bIgRqy0FXwYW4Hwa/Gxsh0QMyCqDwQ71AEIN37iHMox8fCEKuimU24ZaUI8eShm+oRfDPUgA3AvI0pqJOwWIcnnJuix0DwtzMM/Yti49HCL0sLcUR0Y0sYOk8e0PPKtrqwl1Bu7NJywogS+gDRKSmt9WECqgxKvBMTolyHJLrZzKICO+6/BslAltj9OjU36MYDAZmQzq8vF3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HW5ukohq9dmWUovv0EGxj1QvRuiDXj2qbEWfstS33i0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3vp6E1S31yo4e0iXekuYnSUDgO/wWtUO0W8iKE22Mvaf18QmJzR47hovrlV9dmYUtigSTlYCTI2hjNn3cAXtfgvTnlURfkb7F60LYhj5A7MPGuWBnjPSuEIiyts0/2giWgHfUmOS7u/PHLVl69yJh9jXpsa4d8RLtFiIPHaZOSx4AaP/1i7dyBX+9UgwEPSIRdB+S4fgMv4kRXchEp+kcYwoaRCnUiE/gpm9ZfCZFJuv5kAbbMsUwOY1RCC5/nXXszWKBypknQcVLH2/VBs0P7itqBCuI2vFC+nLqod1cdEQ+nCnswDO0HORiasvbk3n31HfXaPjDItVEEa7Kzc/1Ood69eNPUA6cz7i7WhlIBG9oVB+Zlxpp+gNdQJXKH6tGnWfDIBcTqJPRJ54JGfmWTe39tdhYGvd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HWI6BzioWcYjVqXChvxQoRmENZOxwORT4eV9Y0EVddg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RWzqVhvY7bKgqMsJzznyW1RJREsZCYr7KQZgq7iK3tFcBUHcVzdvng5Nl0hyldpD2loTVmw5+/YpIenHeiNh+bMftD+izDQrllNNH3stO5MbvIGFzcCxGrjfLpIDh8fZ1eD+gPoo5+X9pEQSKRY3bsIGAFVCOwD/KrEVQcySpDmhxAmo6JZ3UFNydkStaS/Keg2eZuBGPCAHOoKKvDvRu5cQmYAyQprFiNScWZ3twwl/MF3ScNmITwBI1Tm+AcScHpKeKxq8Kt+P+b7vFiSAV4sMKqXKqEEvkw6J8BOfnTCvre0BqpoBdr+FKBUOzOeQUqlFm1YRyeyLEXx5zkN74Xlo7l64O1rUMWRWmlrVvLnYPGtj912SSupS8KwdrE5DfrQC6rDeBtpTV+8kVTh4TtK4GPVOlu7T", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HWmOAgfmJ6rFslRRSFoeulZyvOpnC7dmAVZ4iWOMoDM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xp+Mjf57Dvz1m2+LINqxt8jrcH5pW9XkcATmHKfTwtl1ZTKTdqmkcFjRjNx7XV+SWdRFuB2Od7TVHpykKPyxsvQF6r+FDcJWe0/aY5tQieIcGhvFadG1wDM3qAqaES0BgtnK/W4VCXX43LWYlABN5I57z1+73fvTCglFGLm5kDVcBON2sK+LVDvEG21yFycMoz8xPWRrXKewUYuUMLqgaqwUa3/puEbGJXFBorHqw3jloBZOF/DvRO+AdJ8R6ga+g8KXWiLdZocQsBS8W91klc89bLuopl1FOLOgV+zYiSVAr/1qDwmVrtpDhMLmpUv3HsJPBakN5DG75mHfcOLKyPSkx+mk36V/lAUgyWbhjQBOXoDPrD5adLjai4P6QHMMIUjrfduqck1a07CKNeub8J6OA5X63yrQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HXBvMPoYtrwB8i9DQ3uL3vFB30Widym+/J0UzrnfGFU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bYNm+SDMvGd5d4jHR5puxNuvU6OuH2vcEUTGR1uZyIDYietukpzgxDgAy4zP2lAH307h7BG6NSc8GXAEVwCo1TpRPZOZcBhsREqIVatAiDgjlBCyYiaBm8Zes93D3h+Gb74mEhUcUTW+bBdnKwbK/VrVLzUHcHJKx8W7e08kmZWQN5nyN5CMVon08iHlVF048p+t9Gqzq+e1KAYVLh3sJmYzajpumrk5+FcH30iPLKpOLJANqeuL8U1THd5FQPWJlEm5U1n6KP1uCndyp9SUE3T9C/XHvuOlClfyblu2YH5N792fKVKoLCU5MT0V7+Ep7SWZi2+r9Z6yGjQp+09BvCqL/YMTxef4B9CguJFU4JgwoVgBeZnroXs7VA59v3fmdyDvWQKLLtyUJ0rI2bi3BG/xTuq1q0Ch", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HYUIQwHCAQXsPWaWEvnAHxYYeHWIrTZqNOnaWQD/7YA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oqAzj4cS7IgrJuEf184gmMTtrp9HQwB23kqrEP51a3kCSZTcPj6daqZagkZ0LU9e6k1UqgWar/unQ8DlLWE+LzD+gZXOpb8B7AdOLLAnvDeNaTwuJdpbznqKfRF0ESFUNM+hl/Fq8xVtv5kLuTZ+FIYwLrt0+5yDFJcbHADnFRVT3nFoXL9DlpVdyqy4sN/2V2epwnn+c5ckl1c5Ifx4J8Ay5t1J8rh4BbHKpGCBOR6yOcgLaIWSKxYtU9b4qHG0sMvcQSO583tUIJ60q1GE+rILxDd3xZxRrf1VPUp6ZONgiWA4sKm+T9WAxA8YkGLPxY6Krn+POtzPyQz7fDQ0iKPY3XTZ71akGMhEMB5FzM30U0XcqyLsPiKOyNjZ6+EHBQGKI43V010wgLx+HGX3Z6qL9fOOonVh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HZdq8UsdC9kRKSoPveFeVUrDZaGGdtFFuSeYtwo+qnc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "266pYE+0SvgJWL065npUUmwzheZBph6TVHEHQd7gIa2RwPIU4BQRD5WduH0Ov+815NE8Kv9O4IKqpL65IC+bYAVtX5mbGPbMvLMurf7GqqsJG1EXIBsZjw52UBrrls72RkllEZCazXNoKCFRpdH3Q0SSowKUN4kuPQ2YILWNUK6dwwAEaReLEX/dpAAfAxhjtsJRw8hkztB/E5Sj2zd3D3QrAtZ/WgKFTMTlsK4BHLqUq+3PTmPRL8YOKskTb0m6YuW7nXtsistgyYQpHQ/Orth7S3wwf4ibFrb/sn/ODb9ywXQxNKSiH3+e7cczzsFqG8hd2sntJcRhkDO0jaOa11hsTH5ffnXCZ5WXfs3/WoCMTzFfD2wyPdd5WTuu2jxCYkgvUYLW6gX19wLnoaN+yntKP5H+qkHS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ha+q45kVPJGZSLyfm8mBhGEb32CzFOqsOXxOvKVkJTk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XFB0USS2kPRFjqOkfSjBdnAwxe0XZCd+inN6y4SD3wDRPB5ZF+m2Tgm698cb+DKhKRupwbiNt5+1dHHGe1DOJp+LslHhjWgfby47iuil6N3YghHduJNZBuYacMEx+IS/VMZi1OysGyx3KkE6YulJdESky2fExLVhzvBwc9ZaTJgE0RA2OesYSuv9ANCNdLNB9sk9AupdNV62K1IFwSJQKDUnLZk3cT+Typidnk6YBOcqgJ2ud58nfHb+N+TpfX4WBKaFEW1M/gIkEGxoaVbZIg/5MOdIv2dzxDmKfonvCZScTo1ktmJYjViX/h8ngQwWmxNgVQTTL9iarZeXmkxfFBOupHfqOW6hX0tUbqndaQAjS73eny2icL/z6r7s8tqvXRQeofD/LGIlZKyesTqlDQtmwO/g1zgM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ha6+1EQ4/yOKkTHMVqRd2PNUMDVMIBF9RduOJoBxyqE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+/1HUAzfdqHG9fjmWC32kCDhAWdH2vA6XO5DNuXRb2a6HkBsBbuNkTQl+ZUPhiXy6chTeRA6pzJl37h3DMURqXPKJY+gnn30YANs4XIOSsfJGgCJyRj0URmXeCCCi5+GAGw7zwtzpyIRMHzAbKN1cRT3u5I25IaYI2BM7JzR6f223/2VnXuNCCJLCLEUTQHT5vHzC/Au3cxYMSbDqB6fufAUelWfMTj0CyBwqLQeTVJQM1s5Pps7Kv5MBsjBKj2AUwQmHSTi2dJZ1SvRE6xgYiNNPxCcAKFI7L4Wz0x5sXy1X5DaHT0pUeDcbwOUDWCpk7dsiWFJW+p6RE2U3s0XSCJ9qDdl5dYf9ZJ8GGoVJn9K2wcRTvWCdRrQ7xO0OPP0N4ok/QZ7YefJxX8pXlg+10aWnnWsD4hL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Hd+sJpupMU5A5IxILtmUydte+FClnLRx4RmRXygdqCM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/ZrCGEMN0Nmi1LQ1R/dO+NsUXQw3bccUXcE3+jFX6Ci7xwPG26swqZTHCdEOKapX8tbHIVr5mIyQXc7qQjshQFODVa13IWz+w+A5xDtUODaMLAPsgU6Wxfe6FjRkxWC341DN7oU7wi057OWa9coFIrcBIfR+HSes0HaEEntTPSnhHwfWPLRJC1BpLUolzuua60qZcFPqjyHUKrfNs9Qsa8icAGTJRH/LktTRcVX/eqqqpW5va0ZGvn5jkJuNrTZum5sT63MxyBwkvXKfOyP3s0kpUak4Cx7IyWwN6T02z4vgKf/BgG7gYoRPRA4Xs2H8B/UGENsHeelg6OR4iT1dPR2t/Ur/1O5YFn+e1YhMe1Ze3OitbX2T/IuOwyRRuoNQZ69nYhjWav6znDyDsKLtECYg0fdICpBg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HdDvgf6z+gzbVVefckhF9pa9tg0RqWTq/dAlsLIuifQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4I/1wg1olmlShraILSUKstg4DgA/T+2A9CjlgnumkZl65lrpz3zEainAtfaxDlXIBEj6xccEAwhNTyaDeNe3/Y9UOpRnNIXt9uu6K/mJ+LbmYAbWCLA4Xbr2X5V8h5XVUuWB3V4Vx9ZV7CQqFFrekfZuKnt1RSXplWHS8w43n8lsfsVINbCLBBJW6oKasPoOadDjk+M8kb1uZBIeWbRbBxArjQ8jyLC5Ues/YfXkyKCbIG8RWe4ChB+jDflhAn87myhT9Ft3k4rR/D0foq6hrjOyIeWG21Z/0wgwRSIfyQXCZLDttLRTC3PCj+eU3949ETTp4lEG2a5bT4oYgoe/IrqcFkJw57BUYdrPzLUQTkGG+kFLZbDBzuMEMi7M8TvzqYGYvMe0n7vp8AsuqUx5LUVr3rsDGrd1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HfvZBw3SmOsCxS7vcOogtR8Ve0O44N89gbIT/luUP1w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "80vpzph6//86rIfSfpv2PT3Xr+VpXCIvJn9rbVv/77PgEmap4LbrPVPZ52tW1r4Beyvg+c2kzf6Ig3D6Nq4gpszorKFGJENSNTTYIo7bqXOChK15ulGBQ+hIsmLmLPGux/w9/xF9WRmGnfk4096tutGY+tlzmGdDGV4Tr1d7lXM4h9AvNJqLAJLE5DCw3VVEbYPnqnqTSAaAHI33LcUtk4rmJwHrFdNC6PmqmMryONbeZZHEQt4lPUrFJjmC15e3G0fRCYveSwFlc6uYfppj6/KX25umUM3M6hk2K6P9h2nDGRR8IwHDXmN88C4VpKPIL58DFuztZjLrPZURcBasRt7c5dsYApDhbMZpbiHbBATIPO3wGSpcQBnB55xpadh4u+jPKsGPD4moJhWRHiAPYKxUcH5BHGUa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Hh3n+89TtYj+mId8KtC25lVSEN4qQAbz9Euopi3DmfE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JUX511d2aRgFGyqrahjx/Q4U/h38/8XlhOAk2ydQ40iayDnooBewJL0J1/EHnao6K0eEKtnih+5IfEgtQxAOy3yj1cNMWPq/fA9sdbuhg9Nm3cVV/b6UB78BUIYUF4zOMunfJqM9M4tmhfhWKh/uOE3/aLHwWweUsTiRnREXXZUFlijG6dSsaw3liJJfUPr+Otn2UddY8bT56uhDjwwup0n5iDMDOPeHHnmziBANloKyPa3KSjRhNCZ5vVEOF9Ys0mTlC59WWQTHw1O+CAqFcUxAcZqsq59jpD76dTF1pUnpCBhjSjrEqnMef8RG10bA77BtZB6ciI2g+4O7XNMCQ5e6VqWiiUrq1m/FWDF68kwUAlqEvw4do4cKfAwNvvuQc6YInBQ81iaGU155vmXujXds1n6tsI4L", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HiFQdixfhBiSj+zZZ6XeGD8+AcurlGEorkCmj0w1nw4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L/KpuIrl+La4TrOCKmEx9t56/JOOCpTjCtf7drhVrUWLZAbqBPYDvx2m1uzSfVRLzWF/EuBBYaEwhmZwDX9cKqWlv2mSLQAXKgK8kwNLIKcuMvci0QFzs3FwLKM9My3vKCzv7dZCMuuxRhY0lz/RKmSzIXVVmCj/D5Ii17KD7Qr3zhynAoAKSmdVjkK3BWhyZh2sQOCJ2ioJMUBu7OH8i9yxiCx6UVIBG0dM/eHA0Hm4JKat2axN26fturkvaopvEWhY/KosqjDxfcyEvdi0RPRWRKFpiVPc5Fo5r1fSxSAutIao2tXsNVWphf9Pnj7NAw3AG+XkDvgyMWuXqyVZ87zEJ/G5aV+po1fvVUgkyQJY4Xyo159I95iEtPCF7BCVInVQnmnKU57Cv6ArbLgAAY4YQZJCRgZN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Hj3PV+bn79gKkslvWAgKS/xIJlNJISRVPxmwCruXnXU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CQ9bDUMgAGe8VR2FOLhcPWs9cozEMF/7KhDHSFm0fWsQ6x5aEqCd4+vd8nBTTrYNX+F243ZCK3a1mhNQCr3C8PDoV0vAhMjXR3lrnYMTfJ7Z8LAvq6i5JzXfW5RhR302AQ/mzwt+rVp5LH9NFCWkp4t2t9M7YLU7Ad+Xc634yzvwKWQYS0mM6AvJ5uPXCWQi35MrdmMzV0DXgaEuitOr4sKE5PzESlRt1Xx8pWZeilumM6vuCDf6KPXyQlbjG+nUx0w/lQMqCaoYNLiQfLHIOWdqc3yarg72pF4zkwvpC+w++Ha7Ogjd5jORrSThvSrglQVN4s86RTEZ3ntTxJhmdTdfjK2Fw54aKDzI9vTckAEYNknwfzpQPmOp79AAy/iqlxv23ZTCvg6/wi2jH1drtAZ46Zo5TIt7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HjYrPpsgVFSvc9VOop70U1yYBm8AG3pH0auLeNlfgdw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q6CEhloRFkCEvdp1DwGabZpUi9znAPPPPc1XCoM+kRP1Km+wShvY+Wm2V6Efce6VuNiZ/EvDBBncR91/bq8dHzvIpEAJn2Pokp0YvUTV5kP2CaYSmu5Mz8anpd+v4YoQvoV/DLTdWP4J5l9N2g49aFCQZRWyJVL7mf1Zb6rXaiUQbjYKEKzylWoDSJD6ZbTlXO0/X5hp/OvwGv4pxYoS2dgtwFm+aqmJpsA6ioqB96U10AO40DOlbrkEfcfMXwuZscTs1sTUFoi8m4Xz069GY6LEQVT98IcrVnFspxjFoRQjDUASUhGAC82WioV7dY7JdZLsHQOrT8Sc7pdBciZqOkwAZ3XBAH4mHhTcTnTwWXj9XqLJ0SpI9y8sxU6/RuKkJcvyVSUCJmjeSgOAiGpETduAjXBaLAPc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HjoynD0CajX7seZr2VGG/TgIDBgecw1BnG7I7UpOxyE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "evL3gy5wBqIPqmSdALtKi73HIbGeMSvpo81IBgL9YpAvOZ0bk7VhQsrF7OWTXdzXl+GqpwSWjMuFLZXRktGvmgl/NGWZqViZEo369k1VI+HPObXI9OHgD6uQCbOsJYV3kLyE6xFzfhul2xYOLJJEGyEhzNxHOakxGkArhsHzuXydPmtUHwh+mKKVsyPfrggyY+hrBpgoROdeUIc4voy2O+yduGsEacyN20COzVsYIujpAgQdrkzFjpUpfbpkDwzMURxwMqRxSPSLDxLR9nClDL/X/a1BdnEhSbkg03QiPjpG6L4WYApOLeurxXm5uJvRH3ZrR3DIV3j1yPSSOEb2ByxOrdCKdXKf5t03HnXwAwKkNh8TmhQbqpOoB7xSTcacVLnKlqvvA2kwwo5m4Ai96kI8fzrQpnIM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HkWfOQayd3J+ag6qt7C/qMhFOIsJxFmZ4D4L0iyELg8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lzKn28oCtso1DM16ZygOrQaef21YHN4vTADn47BGxH+FX66tPnxOFEHuwFkfwQYvt9T171yXLYf5UeKYPNiB4xQegbfLBgEtdBB7lgC///CABVf1ZgYxkMkXgaeynAmw3jyfsYJC9Vn68Xg5tfb9mk62Z/Z2qN5LxmkbBz1s141NEV1yokA/q4sknNZzBwlWi6+wHmXcEjYktNkaDdHCjceOSVRNRjs90gyjvaMNvafenCf4OwKo6AHsrivIlLFUMRH1trL4qmfA7cQt5BYj42iOvE7Ny0e/FRoBJ7pJckMsKqdlFLMhZFk+GC4auEZoo4ETklkImovz2ohsyIYHmCrAdI+QVTQhEbwv68PH7lu8fg9GPQCRXJc1XtzBcBa8tklJMr7EMdJMnrP2iUpSUrNKLZ7uQbF9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HkvCX5qk+dmyLtfqv5K/vCPi+ZjYfmWh57YpATvuKIk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YHDIDs8G9RGcCD70gybs+mssr45nqRoLGmKkxG5A4rPFa3I8zwo/7LN6zwXbp20HIiUXiZzg06VIvb9lqkxwOa+NXGyzTnHrrXr1pra09f+fahmiVH+UWUvXqX5Q6MabqIjEpoLum9j1Nh9SDKf9d4U6EZ4W4XxBOyeZOS2AH88xGlSdKykJHFZDcrDt7ZD51NzW+H9lV0iYcKq9S8IzSQ2/OFv+MnWj3sK4p8eMc4+eSXvoViVHnuOGIos+qI4T4zIviuC6SEJ6Ym5BI3pJH2njLmEjy+klkAIrKQqKNC8lubcDruwSYlQ0hW7URz5X7+lCVl8WPwYLMpJVMuJU4hJODg5EyenFTyflVAEAmTVyN1IOuYVSJdhc9ZzVX0vCsTici1Z3tOc9R5UoSTBCfNQYM0RI8Xjk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Hm/Env1Z5tMDfoQIeXijxQCMG1ZZx6tLaK4gyaZmQt4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UZraFbeoLMOmNpVnguf0TSevCPKH/R9hfcL5iWEKPlWE/exbRxRlN+24nZaid1VMlAino8GZmvb+cpdXmgtt56VuLJz3SGsT/WP9Rs044VUpXcwlMJlHhdBmy5XxZ3RWYQsZl2/yoGl2vji+eeoNGacDmTXtn/TiWlXNcYWd9e59TMajeExUXRF+mvbpjjsP8wo/2LkzQUpUMHVcd0mMIx080vm8wJD4drJHQMpMAY9vajXeC88hN4uES+5a0DAJKK9p3MS400A5U8LRuweTby1jbb1dVlvqbbKUEHo0+5keivW4bx54qgDSVPCao9UCub5Bmd3Wzo5Cq2NcLiGJpy3dr11i3LtBk4syO+gVYZ47eUfjWa9u8heXhFYpPlcIChi+wXQ3tcF71eOZ1YlabaHDrGAbG0/i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Hm7Tec5/i2leU+j8qbO+aPpiir/g39Im5u4UOHwq6ic", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aTTSADMVaUfDe99SywlBNbXZQxJRaFpL8WHFsvEB/5c5UhpyVMDn3rLbq9ifHEVMBJuBXWR4kqtuzHknclnFB9A1ZoHGuRp23Hnn5rPTNba0gNBrIVptZap3Gw9l5d2dZRXj+5obQPRExDgWLBqrMJkuiKiRsNB3URiVJEXOqdzz9W2EwapHXUwBA8nsMMc8b4aiK6mWmycRZelKP8KT2nVwUV4bLnfw5aM1u3GEnTZjJQxC7OZAD7cyAjiHRD3XjKORoqW2SIKd03dp/zS+MlER1g+8uMgH1/eOe68Do3MCQ88Phkq1nBQ5N8G21n958u01V/udbGXyV6lZReNJSIdDzDPJvCaoKFHTSBm1VbewXUHGw7EYBtkF4Y8oh8fyPndrKcEGYa9i85AMmmZpTYZUvQaK1bz9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HnviO0a/i/RKpfHgwRd0kgrYFzZrMCLOwGS4aJP17fA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6CGGlsMMSJgalSmldnUL/wJdIPkVCTKlA3lzxFholp/ixXpvm9yqDSDcfBXT9XFO9FtfvYiL7XieBd5uedZRsGq7gh1PavAtIlULmN66SSFVFZk7JxokNLkKQg01Sy+LsHCfXrzQIi6huEG6qBcC7mt2fO5VT8+8S7vzcJAEoAY6maAFq6X7WQwRUyzh4MI29hq09bjDrbB0kuUxPiEDcVpeJKEo6NVEFto+c+WzzBBx9F8Rd4yhoB6kK1Qz7Sn8Qk17cP+O4Mq86TzppzIVk6hdnjEpMPHtnwjmttk39Q8tjIWk62OlhvaJ4q0LBT0gsceyMyz37KwHwZliVfZx0SbJUmBtF/NjjTsUbCLEl20siF0QXwmVIto7HiEdsjjkahn4QMwatkFtUpYVUkoPGUk0FmpTfWdA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HqHfOSs7zMBHoZav4SdAAREgp62QDkLJvBUYLN1Ofnk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F1SyaDQZQTbW0YUgCcuCAGRegSnChh80LZ0L40cFIr8SoHeDfdwDIj+w7WH8dsFoxIFvlroaKWnf6R3LDd81P73Cmkoq6skhSRXy1dEnjBAh1Xb0iYdV0D3wZrBE4bN0rdYIB7ZZaMXZSHczYb2xL/vx/lgDUG+Jr9zMuT70poDF+PDZjgTVfNMaJ3Mo40BpQSYA72jA1JCYTnjBXeFJq0CikemrtdpFavRJOZhAigqyGK/GaSxyhzgPqnrR3VrIjB6U9lLtB6YuPmg6uZHI3ppH+1AmxSj9W+t2siArfTEga/zneS5XD3K35//9ZQiG5XFRyb1iYxYVh9v2M69ksHoeTjww9oQ9CWFnBYIMz/Fn+5+ZCFu2xSgJW1BPsA7AXcxdOaPr3iYqmAUzEZYa6tN/02kPIxYN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HrHbw/9p8b56Jt5i3sZLhme0+0um2qJycy5dGp5Dqlg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ofEKgJVsfx620avPNHwKgeoCobTD2WhYdyqocgmwY7iKsAg7phsml5odRPeOffIn6EaLwCCFwVv5uYFc+f+cxcO5mBf1GFA8oi0qRwl+8LMu4RdLU74gyfCyMD/p/Y1kNaHWfvBksutETZ71yC+LBh/meiYV/Vyo50IFDmC99W+HWzS5NzmqTjTuAKat7TIvvLlGS8s919n9HjtJwbhAxeBj2y/smPZ51J/bvsxlMg4BDkmWS/5CXw0jyMsQGT+s8I/Pj6yW8cPe3Eo5KPNr/z4DsCWoEW9X2YXAej2iW26aEeKN6KcEdc90OzqPu9obC4HVEXomi3e2J8hgpo9HmWqiz+IOMbOS433fndoNHhxv7hYbl8FGoII4h+AmH4cOJJLaM3oXOZaXhAEupJaG6H0lWbEBPGr6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HsLYVFLmNpKDa75W7tcKmO83hnYuMAsGFVhEWzfR7kI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oFAzDnkBPjpMGgwhhOA7K7s02FBSznj0NDIonldtXcOWRd3uN227Wb6EXblUvfdfCskcRiaG8TrrS8bakfj9/Sce7kMXdqn4j+7zV/N8tCFnKFDAg9FQmGRDSqV0bfx+LA6Eiw/epj10BP4QIHa1LaT9s1OBU2n357jDMIZNLgkTae4VjRGSs9ldc+uTC1JCp9zk2sROdo1/SJgj6BD+P96joMH/Lye+sud41PHHMVNujwo2DBatxEs2fxBQrG3bW1ZDfvF/KiGSv5NA6Uz8OFwWmXz6nam0n+4M06+d3FpQGxzTDnsh/8j2oyLpuDS4+I7j84wqNmUOoOmv5WL94M6riud48MRyAWR14uEbg/uZK48LSgoE7S6R07wPW1Z+fseyrj/SyZM5F4WCKPLdNq9Jy+/9sy3j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HsW5wE2OIQFWd5HWL1PCIlNijc6nQmCeUG0LEN8Pr+M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ATCNDvHhAF6R7ojYMYhg6mgosdK9Bc3ruj5gw8Y0gPudPaIz/NnyfLzGKQKqsjHwluJ5XvNXJaFjGxJUcwNI8PHGzyoLIXjHhoxdnIizKM9gXO4h9dn3L1FAIPBLReYC0Kh7jmgDV8TT79mlvw1wA5Pwrk2tB3Decwu0/TNVp80BJdhfeZRZJpCDHPzHI3xNqaBjPXhCyihvYUMdptbJIXiUxKa/UiKYZ3tu9cXteQ73ag66Lr7jpXPZbTr5FX+SlO5mZ7tEdEyoWHwfekp0e8rg+nwgKXwBxpFMf1NYFD+uV1KDZ2Ai3l3lxbixc5LgVn2f5uDu3x6xA7aZOc7zVbAKeKKLuCAEKEUUxkiwvE0DkdSV7XfvZ6f3GHqIZjgR8Sr6UFlG9rP+0oGIiWJ8hdOGPzIWFCot", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HtThVaZLx0dxJAUoIIpB349zki2Kf37LpA/IcZobT6A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9k5zuRvj4DIEXbfpwtLO8GforyavBe01HTbrpYdwL+fODKms51nmGnxQBDafucmAZuhddK7eFrV5cSsdOr9UcVNf1yZdRHs/tVXVBLrumS5UH+1Z04vymJ/GBJkTtegSWJ+H/qmcEFoSZVK5x7UQZOryYKIWIechgefSKplKrxoVhPNdOIytoq8wfZNO+/F6CeHz3Kar1YieZ/krI4oMo6K9rpHfXl7YdoCe8LDHMN6OIGM7p3N8ncTBWnAMnlBHLKEEBZMrwov5Gym/qGTSDqSnVa/KEvf+q1ze52tV4mC8nvjnZZJxv0agQsqT/cv9gz6WFGnj3FI+f7jj/z9oFbHnjtl5hEQyj5Y/vjySiuImytIguyUOjU6wYuGtynuSJXb8qh7ahNycB8VlmeaM+KZLhO2oxd56", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HtUAIXNfQudgYHMaoMwTVr6tvBZkTi++vLHK9id/dWo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S9KVu+2bcYziWNXpLkP4LE72xM1VTBRfremHA2KgAUAbXu5M6HbHHwQgBuMgWDx5afCxRCmKgA4dehUvLH+E3I6SJU94zb+MU9oduiOeqmWChH4GjBPSXiBM9b+2pwrUawKVMHL+HnaqKml44wiuZu5atzVzrddEjpzFrV643OvF6aKB0gYWnUrfYs1QdQGh9lOIlHEMS+QuIs+aF2eiX9l/cI++qHG/7YJi1y9c9/DkR9EkhgdqCXR67vc2AvaYaAlIDUKc7+J6P1T7s/4mi6ovltUxoRGO1nBkEH+xgi8AaGmou1Dqah0MwF05JuQvu6SeMacXgE9wmKfJ/rqCSjy+ILKoQj/8LFo1Y05USGDpfyQI6VCUlEHVPmDbsAxvQ15hN5yKhDIQ1P9juIVzgz16LKPaQD1U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HwBJSmeY42lcY1GQwTD+Op0qRtMPxN1i46IEyiozHiI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u54fUFwUXfNKxe6GLtV3L2uKyLD4dTilrqNWsJrqRszQWrh9lwJSyY38WtJDpur0qhFoG2IVVwyqHA88fjsq43Dvj0K9xKOyJnCEgyJssF4KtxPYFblerooOCbbwgP5sau5kgjOwHjPSXjAr431ZW2ttUwCZ9qVbS142Z0xR3eYzNDtHv/5MZQGIsUHR4XFLWFBi1slfBlcUs02XFKL5YtpvtFYQmkuLagH5IDeZvxU/Cs+21n+OPWPuLtYZGAMm8BwDs4B5uoYPCNEi0Jtsx57Vk3iwDP8IXGBcSFT9x4bPJS/GPVLvCvtqnIdVe3uY4HF9m2bfnBlUrcVaROdIuBryXD6RF3jWxBz4Nt6ptMthymnmUshn+QMxfaqKfpye/Yiyu222U1q/ImihkLChj7r+JIbsA5f8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HyxCSvaYP95PfmEPuSLia6DcX9SfhnB9e5KjYN3C7UA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FWG+hYkWKb406iCaLH3UPJR5JDc6i+FCyE0WDONCPHk114DHkV+oQxGvEcjvIkqYjw+qOUUTHJ2j2y1ndzZDwz1IyVme/L5srAvxuZZgXKb+5OKq0DBgY2jgz8qwmijhULDHj9nbmLkTmpPMw7iD2sU1LqDHTIr6+DJEqNpOVb5Hp53FsEzGyMrgjTAW9kYXUELLaUZcqVK0OaIONIIny7I2iiKIraQRKXJlsCo/m4tsqylmOS8r9FMfhnxbM9pmxHEcGurj25WlB1STdOkLAzUQt7RYF1OnCofJ927PK7zdy9Cmnoc+6Z0+ZpiC0i3zooTIkT82nENfMhhRY3UbTXTfdDk2w7s7UFD7BX/siTO+NiD35/3XWErYIkYVCi5B/0ORxsjs0FeI57rD7OgRqsLeE+qmARkL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "HzJOnJ4JnGBPaHh1vy8QHk2nCvsxsuF4Bza6/PHLK+Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "igR1GKd5nElpdYuFcqp7W1Pj+ZEMnt7cav042ue1Q9WXUbJMVn+rv3K5FtWDM4yf5dvkMEzSqfwrxC4f29yvkbsu7B9Fr4X2jIfZPAvsS1e3ghWI4NzZkBi16+9kFQQvTNAQzS3UKAj9s+KlC/JbD8+0p7xs9Foq9hU8Om6zJ79nhBP/G6MgWzJwzEo3uoGvOXwlTiXB/NspXwbFMsMZhzG/uZvrASBGg1r020aCJt+yJXqx+t7ZPFd0FRiJCmb9PaMQZvIsd4ICzN8AJe9ICtrlJ0FjTkgH2aFZoZ2n8vDJakglkaaB80kBHC9v+qvhesURLFW/KjcvKlplgNjdXyprraMywK4ka91eWODo125vJdDp22ARgcS3CdaUsWMk4NbsuhZphQHDVZvt8dSNuNLbTl8kzpLG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Hzc5yYezorCbRJso5nbCGCIi+74ms9zVxtn8JYT1KW0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c6i2TcuVRmFe0tbwo+un+Zb4AqAlA9XcHx/+lG5czqDJawH2nJRX7+VXpWLQiLcZd3eQeix6UqekN9xWrzvic5sYLPWVuawTTJFyyPf2U4xkqhMPDf35cmrHIbiU9HgR8laRFeSgLvruisGl7RLwU/ydt+VGHnRsK8ozpL9nrBI+SQJsR0+TrAyiUkfa+zqX4UyUaNEJVx0a/yHJyC2snVtDLmPv3Vpilvv22tx/5Sl7d1DltBNO+j2fnr7fFnWmxV7KTX+bQF9vvgFf9Vv14Za1LkNi7cj3EsxLit/Ew3NZ9cAyZMO6vUQ9C3Z5lHY9VQEvpHY/7jDPuL7eJCq5wrHYUI8yo+nW/AZZdqbl1uq2nUrF0XgA+so5zq2ZECXbr74Siei25Zr5z7lVFbAwzR5R7Z5J0v8v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "I++D2pCbq0naLmhg8aqwlyU3oVXwmD3CqsT+boo3VdU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+LiL3xIBfj7lY45bgTBHaNUg6rMymWqb0iDmRxBanfDOuhSKi/eTgR9W8+FQ3iJu2NldxoBkgN0diYwErXMb/5gWvuF4YoiaZzgghjo2Tz6OvHXVdhBu6mIU9un83G/CqylykmtdVmn8xe6YwXVLffd88DJ+AKL7lQUD1uvU7oLbrhdzBmczb3f6GghtKknXdVMjFR6eojK5yNhO4wIDvyVmvrFY8EMdimSCQmNccSCzcFAQEeAp1yW7IRaiv57g21HXdZiKRevHy9EUVEWhQ1muBDKG4Epn6SU7rPziA4s8QjyVpW0psrRFybvIooVndn27IsfihMdHwQwg7Kffly4jlAkAflvdsts1cKxS45hKhy1XJuI5yjsiUlvQY8Zqu/2z3edrHW1XVonOJzPYJ6LLzeU9SoDn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "I/NrBLPAIr1fh3H9Wu3Wu3TKtguM/L5psmHOGDE+QPQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7Zr25LQk+onUbH26GCCtWPYbut3rOuXvBSI3tgqCN4fgEZg+Lf9aoZip+3hpOCIEC+wYYU7JE5vX8cZQHptHLe/CEdWf8gyUPdLEWkKAHYzy3NRDVEDl0d1lHA1qpz5FGiIyxmX7FI1hj6UQOyIqkISwhXGIiqodYw1ukGSeSJmiflb82bwOd8Dps2tCFCJoY8je9KlpS8tclbN6s4BUsRakgtCk0OwoiqevOQ+uSNrYGMdzEO4PAD517m41a5ezveCQxkL5ifp7SlzKkuRUMh2pRUhcZ/GQGAVWeSquXVuc1nK7VoqZPuB3dallB3yRpzTZ7FtU3ZaSGVRprrK99EDcfuYD+ZPQz0FLfCE7916U2uizkvuPpWlgfg6vpXeSxYhZTgWJYxcg1+DLpnumEP063UQ/drIP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "I041DebnbB6YGCmuJBw9RxfxrgOzNhOAq+EBMQabYZA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "to2k9V1tQWPcIpmLSmyF/G15ZTT4gr2rk8+A795KQICBVtUqm1oVXSApOIMWbxSUhMeFHmr/K/KklGoXQjPh2eGbzES/9MpqnYiNGJwtgdv+qE0xFq9Iomlkx5+iG6PcE9XY5QVP08CktP8AKGcI3eWJYgvnxm7v0SSVfO+Cp5t2sGR0+vFvCYHmO2ZHMMNyCZvcom55BmCO8iY/OL6DSKcouSpOyhmJAtWVzZ9nEucBp/Htazkp2VG41Gja/yaDM8nMEN6M2n69QpZFGL1H1KI9P7Ydq5vNWJkldgeg1uO8wh1JD6mZR7Sxn/k97bFR9MHwXMjN52Zx0eDr5nZ7jO7TpVjorsk04yqHi4+tYrHcRPGlPX2y6CDNiOWjsQ1wov6zzVZ+wY8uVFFz+joNCMMdaXNF7kx+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "I1Vm1rC7W0Olj81dH1PF3072ke/dJE7KIBhn5vnhtNo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Kf+WTdMGDr3ZhLfe0AErGpiqSaBbCByqY9mCJg8Js8zQ8kCGvJ0l+YYWM8iAUiG1juU2++8fnDshokWHTkypDX8zp8iPXC1rux60nevld2fBBz+7LakRKg824PphbQUOoT8xBeDa2T70hNL3g5rBNjXHLSJnTzu2jEF9Cf6LjXqh+5IZ0CLyUQr46JAStVq2XX6aax7IR3hUVbE0ZqUjidI+7TLGwZaNr36rEz+d+pWpx2NOA7iOW/HOZiOPh0TOKKGcr6L3nu8rKDzz8unfWyqVxuQZmXru0I9KCqyS1KqFM9mVfet0I5eD1SrVtNQuFD8vK2LiYy1JIoWPgUC/by2r9YiBLwIBrtTNFFrQJ+VgZfiArqPH0HiQ45yd3yg5Z99aj6089CRNYVDeny7OQF9BHvFUV/Q2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "I53z5gCZYVorjph1bhPkQJvnhlDAC0rEnU+8vHBjAc8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZCBkiZlphTluFMd/cUOMtQ5e+5chcmRSeQXqj9ZqMCYKGKiVpwr5x2CVqPNHMgHLikIxpnPLWDaK3MVyGYz3dZPkVm7G6AQr1puRkTVNwDltkCPJrN8cA7d1aYc//78vK6+6GW6uk6rbcm6MsulaWDxJj5HMkcQHjIS2Bo2AeisJvnfqIsKiT2GgtE2l5K83Zx67OYmuPVtGCSy06CDhLO7GrD9/30D3Iq0vbrp7q5c7GNQ84miCW9lczIxw1QSM0twWr7AprDlmQoPBmbfpOeVClE+sb35cUUP1UQq4NVvXsWG5EJ1M6z+uElQOF80C1Ymii6xWDcGnwRo7GRdyLnLx1YbFdl++xpJmBNcEnAbBuRtLjm0Jvl2aucz/3u7EWKoOx84gVREjIHwGe/y6oJjTQKuG0kJS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "I57+indyrNJ7c4qhyQufUZ7poj4FHUDqNZRnipWC+08", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pyMqBjNlRGKCvDjorFzsd8nt4Med/ExCpic5aAKVWSwlgPEZmkZ1pl4D7JhEiNvWxJAAEggDoYUT6CzBmF4sJmQsys1L/6vTGrHJXM49ty2braE4UvoHbASS6PMSt2u6pHtthe3+DxIZb9zqzINlIEOFtyUIEQDise/HuFBDqovemsAwRh6i0g21ezm9zeYeiOLiC9Pk6dK4mnY+GVCP/r9h2xs7mIeeLPx4bxMpI2j/t0bJZN9pp/HpzNibkcxCr1rBpqHPuOsM8jhGYuT7hTzPAkuCJb46jwL2XgIqcaFswXa96Lu1zkUHQ4QpwQ4Agff09+hP6CFqDcmkdO+gBOGx1QoOOQpDtlPHN12/+S+goGFgY9UnN70bNJuRrSygJ354l/dCqOMclfXfCn3JMVxHUvwqUHkC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "I587N+sTCujx3cVA7S5njFEjB8c6u0jwu4cbtIw4bqU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DA4/ccBKS1DYELEfTVBwtWTq8gqbvJ/fI1x/mK/n50DsU5Izu/Z1Q0yCKtLg3isgDY/Qi9AqTkAQmml1ASl7RVmHizE2k4mmhFJfyYS6+OlodHr9yXPRpPMjTyva3OxMOsYJVM0rDUXmff4/76jSdVmvYzrjZjfAx850pmo+sjyDSXtzpHfzHd7+9eMhfG2Dtr1ZlR+fx2ci5C9iU2/ekYrt+qxy8QXKnUNGec816hCLptUmlZDZ4o4p9tUmDF7jFWZo4d83XSixZA0lqoHIHV8gvP1ylJJR0S6mFf2BW5aqpdfupDxFlg7EhblGRJXVGrPt17acfb1pLHIp+nqFKXSd7lXE6lPtfos1+b9jjOAt8Pp69X/S5OUvYtmqlkoRtNgUM9D8lM9l1KAdnlSGM1t3HzuRz8pI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "I62UDycOmXXiKHy8zk4c68J/vLDV3C6tFGFeiHtxdqY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d+pFmzW1Q8H47OSsOtJoDHADHw8nuphLG0k2L55j3vlM20nXF5eaXrAeuxI8y6AYnE70U0XExljIilpJJPb1sFry9SD5Ds+A3vVoiE/vICs44ZgIHYKlezxBsQb/sTVN2XBCodIe9Ln6KfY0879R/n/5MD3k024KYUolmJpvCrfS3KMT5Qyx88zERfcFmaglVPaFGc2Wk+tgGkFdp1s3qrjGravQ9CY0JTB+4Y9s1dUTsl2b0iPsx0hB9mQzsXqz/zonqjwBGKQ0v1Bw3lOVIWSDPSUc5nOx8bYQ4L4D6Nlf3fqZ3tNeDsFDm9a85371iootZQR/Zl/3waXt+jrVDlihjZ1iUeXVfgCwjjqYfVVMxAEdTcY1iVYk7xNzCYjlIYtszC7QELbnY/fOImJ1JU4XhpxXPNKC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "I7D2s8NSx2wcAK0wSLN+PSP1xaVvxUiGHAFAWLL5Ki8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9v375UA2jNM4qTFBBhTDhZJvGIhT3inxCABi/tTSRpG1EflHVkAh1TkIPS8PuSfEXvaK1NuTq59z8OJuM8Xa0iJyPkIggRCXnb4zA8NMuiEcIK0GEjGp/WF60Iv887pErXcIjDYeBz6URuB28Uqyc3wf4w5Mo7lLYpaUR/OruagHZ3oO6dpsmFWF/KPhm2HvWFu77YN8vHlrAAmpq+3H6uOHAg1wHtR1YxaBI3LX6B7OfuhRL8T0am2rijjXQDU87YJFRPJv6oDAMrMBc9Mqgv64zsKCtiNTqotq5ijFJmkirpYXKDuOSetu8aUSFYbmxrZ7nGMRN5hLM2+T8sK+8HHpKYbO9BqUWiD0evO878aSQWHk/TVDOpknhjOEXmbqCPD44PkgjmajqmeGTjzyReBDH1OWeOXq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "I7wXR8ekha68gNWBbEDF2TIZkStTvSuuRVVA0WLv9ac", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/7Z5D+jCHx8bPfzh4OMHBYJSrIQLrtrzmSsfS9ki2LOtJrA6JA2vviqknv06ZGWoUQnp2TI5T4cjoBV0VJM6m1IDVRsGmHV1jACW7xJgYiswdC7vALqlLJEkYxHyEvTmDwvDFJawMPDMVQBg+Wp/TSLzXqFrWuUAlLXY1buPULgu9Q8qBN/YEUaqhBDajeoPSavQjooje9wXEsvro+xNYiznDCJUn9mmah+zSP+QHnHp5CAEYv1pDEMeltDFDXPI7MTwXxSic6S4bh5pmsG5Czsjdw+TTRwy2DAPbKA7+cbBAvlLDvgkxLYVzAEUHJ5pm58VPCcpumJCM0bdyZO3J2SQ4IFnIOns8SuJSRt/wZjSO5aJrk5h1X0hykF3SoFywzSrzwUW5ixqMFcs26fzWMEmMVwg9jaT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "I9IDPuR176SP1dKl5H8ElvPyxQ4XpIibkaELZldvKGY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QdH3n6WoGuIi2KgBGx7gT1Oj0Z4OkyLgpd9ZLyMvdYKNMDKY7uECy90QE7Ro3pcFKIioqGLxYfbLw8mhhf8K6nt153kwn3P1ueZdMlsC1ihlbEsjQTiled/rf+hXKokWXPZVXTWBDODTO6ypz6w60tmHYM7nS6EsPWJmVB9/XE09gTa1uvP5tHQ15CQYl/XpMoPGOcwODUenNUV55tTAQE3lt/TMBVU5/J/H8jgkgTmFejbkJc7D6JM5NBA3+zK20J/ZpIYq6r/9txlCwV7cbSqmsW/znMF9M3JW0Oh/KM3B+b4PPVLCuU14kiqS5OInF6Xf4Dt6bOWk9y0XmAtpZq0ZUTgMByBcp1ENCDMYVAbFLAd01YqMhAsL0BdfoGx5hnDSMXKLadDkK0KenSW/e5JBvXgRujJW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IA/S29TdwN4fXGW0irh9PX3YjJuic47Rl9YlWhLJ+tA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qqpXX5dwWPoLtHKadmTtH9DqhgS7PEdJDfsNhGztcT76hUxmnFQDaLbhIjqGH0Q6w3uXRvAmQn1xHKJW9Dg8EqAFLuHBq9gDuMhO+R9IwdU/soBy28EhQYxFbYM8fx/Bs8fiO7f1WKBs9DM8eFQCZ8J4hU027FF6VMfCu+K+UBAcuVWH2sEGpevQSywoP0NTJzczLLuhXD4TdKbNeyp7tez6IMkSFuoDyKQIwZaIpoUiQOQtTRw7zso2bzQr0uc46CjPH5CxYNMylQ4RWzDB2eWv9oJbGeVbn7ZPcN1rbt8IilpHpp19ETth2g82PoQ5WuPRa5qdoXL3oLgQ0XjPmGuywc8ZZxwhurpDYU3rAWXWt5lwgGSDUDA3KezGvmiflqqjfO0Ij9Y9zpc0EYlwJaLBdL5xkteJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IA11Abd+kMwP1Yv0WjSnEtf4bbWK9c+i2gPF4m2puHM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JsG9R+l5pQubnLIfspk6KG9zv/XC2ha+dZ5Uq+sDFjZ1P4kIbi1EiOO9Eesve/q/m18RSYGCeKEdgRwYx18mE49B55M3a6cEfl+Yo9Dr3FkJV/PJSWNb8IO59ZTDEnB3Fe/6bCCDJDKgKOPfzeHiuSxLHZLYdovs+WuhmI1tcXHzv5vfVDoudEsLLf8MV0306moKsJehpwTpOqi7bGlOTCRe3g4KNPlbbEwarAPnxAlYWUcgO/KLWOmGwbwt6qIJZxWBxLspeQbGexo+/Dfip5hv0W2iKEzEumHwbObIPIgVuS3HT3FywfCwBV6dZLkRn+mdAK6Tm1BIvk5iX1ETKskAzFdBuvatXcT5Ee3B0Pto2TU9ohs5hh0zvkVWH50Ka0eru/WCmcwyttLhp2/JbaCpWJausnHX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IATr1++7MQd7QQRMx2U50Ed1sJP4HMOiNgn9D76Uim4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LsCq6emrRJdUETWBg6pPZfY0n5swY/uHgXZh0yVcQTLBOiH5PLZSqKIL7sg5xlITCtei+DA1wAmCoE/pk8rDCxnNxwp0GxpmhLESxyJJMlXsiYruB1wOIzi7q3da2kpKgIdNmiclDpZRgZlASavXc4GITdXJuyPTe3i3alkzj6rJlnPEzwkGIyEC/TycjpmAQOj3ZVP8x4ZvnSe+tKPYdbBEEVgECBpowjG93y7/4ADOX17o4WyCSRaGGvN5kYmPoF4W4OfZ7V9N3v0naHnazFd54CQfiPwzoEp0SpQ4XIJb77VUWEBDA7Mbgc2r6w3D2VkBkJosgcyuD6sc1K9PorZ9hmeUzUwquqfW8p+EMso9aAZ5flMKp6cbhOjSQCLdMcBE2989p7j3F76yBOG5X/QBzF6q7R1w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IBCrB5tRKwGt1gdu/B1VkBwY4VOavxOXChvWJ9snAGY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bthV2B6IPCIpYAu70hB8+MfGtDPFzwV9WZVk4duPE1LEdJD5aH3YXJkHs6vzcxliA5oZmO2atYR9m1Z/BIDFWZHx7/dsRc5MAbtftkUxkuTNT4NK+UOVWsyKta6UvSTz1P6v/ft0epQyMOE31J0kX/vXOOKYbVMH1Bor5hURuqsHEcyu0fs/2jyWv7mBTmPV3jg6c7yoveIey8NHSXaRrnbsubiPgeG/1TKS+qYGRsyIu4XraiuUKdcnTG580G1jqX6dAuzLHJJa77qxWq9X7XImfzkSqAbWRbBpmrELFuoWNm5PfiSv8g1sWGYi6ypAM5VBvYloKLkuzFd7Rst+jON5T/m2RHEUdetQSXn+DdeoDfrd5y238SNnMe8xaSGNrDKr2a8hIokXOzVBkaQKH6TrxPRtqx50", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ICDW9n09NUJDenaMwbBHWZ6GIduDW+FIA4OscmH/e+Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ssXwgWZ8bCG2Zraf+e+FcMWQsi0Y3p+CJuNEz7YL/c5lEO4ricLWDokCSqgB5WK8pKGSC01J1T2ULBA3wIe6V/VYbpTlqr1JKQP4e9kFfSDCTxiDNH01QS/i1qYIANTP+O4cclTMo8hPFueWE2a6O+UDMQRF+GJDLLPGKqtKVpMC6cGf5ecDk/fpwd+KyZDBU87+G2VN5ne8SqZOeGTbVIdBNm6eiNGd3oY1Ye61RXQfIRnjix9ZxlZ+pCh9fc/f3fdkkMk+7xBh7g1+62Q5zQMrqsThWrukfTwlzPq1ZjzeoN48sFHulRT33pSaLf17xxE6EZGdubzIAJs/G0EvU0FbKiC5HIsOJ60oWBUcVUdt/p4i/AtNqRTuybvCFMhIaGFXKHQIkj6YO54xTwymJBvhD69oDqyB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ICRcGnP1JKVzXlQWUHBSduYvhfcvwj7HW+OEONVkQP4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NT9XSUoosyF7KIx/m3YHXOpIChJj+zglzZNL9AJDqQ9oX/F9MjxoFSPf9A6dqUm9vxaoQFGXCzcph5amwKGX3peBM+vXY7e87CNAoxT7pj6QG+SMniAl1cEQ5pf9dIT/UnfIkDkreUsM1qmk0Vd0t6T757cGgeq05py6G8cBJotGcRn3tglXP+W+uQVSS4/OZkkyB3n5WXJC4e3TfDjlVusWm2Nlp1GIO2Q3evh8J8P0M0l9YdlKCLIHAnj1y980SWyLMY0ZAEqPrtoX++GrHGEOkCl2m2ZKaOKVqMnh53rIPY+hik4zxvXUMqqrb+vAtWWBz5VNlQahTChIsnXACQgVGPp0sAz4UX7KE0nHOkdyqmTDfRnmHn5/fC4dg1KXCW6Ugdu4Hb1LlZPSM3Wg3rjLy8F5Mey/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IDEEj25G5JZoqzEwgh7v0cP7ZBMBgBjh9wKmgp9xjiA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/GhFmh9LMi5Vr9rJY6RWUFib0ABTBKfTxZgV3fr45F2RlY6yCSy417zUCAeUDRMc8l7RB8QiIMGYyvPrI7O+xviOrNnrxtuGt9MQM04xx3QyzXw67tVcXqsFN63oihWIGtjdzaiID0QmFQm1GzCF1V6OeXqTbtb+YdLf85VAUdQU7oT/dwqZzLGQQ/Y2eOC7EeNEg4LgU+5NXoH+dFpeXAanHY+U/byEMM/bHYCLqWjUZwFdMPySNoomfe2Liycp1qi8dQauXOFMlgQkRJtE6ZLaxT9CMZUWRgRDMgHr8zunZ1aPDtGNfXBZsScCwZVRHs3EUWBt+6C6fUKfKN1wx+0x3icHZLVTonVKtjKmMUiCPNv+vqBBT6IUCNYTL8dBHFwG7iR3qvdToQ4S7hsaxQahXywoAmM0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IDavS56jWfTIxZbuQWxtM2km/JfwRUht/EGfvslLxEo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mFvAVdplRBWxlnpqbBXhibGuobbbcblfarzN/Yxk3GZjS/Dd7OJxtoO8V2X91P6NHsuAlrkLTb3oINlMvQuFvvh5ocs/CnzxsYwvGSVlJgbMR7n1WAiKXBDGqUabzHacRo9HvIZRkISRTuLGxVBdPq1ojC7ySV9hzWzPkP+lX8nskV6gq3crePtfBh0gkr77+a2xB+8kedA39J2n5QEaF8zbF44FHaMcIFB2TsdMKiFTGvB+DQL+knfsFKWjbAt2xzA3nllaoCkgIS5yDmMmSJqkBWjo+FbiD1JrhXC487yS2oJkTIghyXClkbkdwovl+y1lnPhNYfxkgXfxacCYT/DCIQKhARIQyWaMHMWmtVg7CA9Y2dsT25YqJQwHjSn0i6ntwLQt8JfYwjzXu+oD99gMZ50w1u4A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IDdYAdHMts+qZciGlziT9tfkHACNVaGuPLytZC7V3/w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Xg6l4iDVyf0wkhperGnReBCQCt2ejtk5Cfo0PlYij/QXnjvDGiW8DNXiB9RyunzOHRkvmleHV9nYbF0kNjG3qTz7Tz9kfZOdX1G+9Wd37bacdFrPW3IQza0yKgeNiSWDY3OhqOpATir+6uxmKQ40x7Q64aGCrkICZORrPBmQglXPyJ2rlSie/+hZfGhyLDteshCmSurvh8P53lgx18Y+lq+jXBEgzKV5DGLYQ4tFiJPn7WVzICxhX8JYV5NoILho1GkYJslwJZ/Q0tO8GWQYtkBOfhwIrO3xyjDrvjfuUJSlv0dx0JJiJF/08L9PmI8di+s844Du6PJN0YTn1ap44jBjnpaCaczNG5dCpsBkYlowrvK9qd51wx7CB/lueqhKyLhBdbxvC2S+wD9g1G+gtpBidBisI/pT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IE3MFWm9cWe5NhSEZSP09AQczu7zcjXUxeFEALrsGeo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TJTJTJ6Nq7DzLwj65EjtF3D1+2prMNzEpR6HAkpvB/+9oJ1UqJAG+XEqEv8/wsGyKcd4GEqV5rmvSust6l7S5kuqhSVbhIzAvCgIUOPPB4pbPy6gLsXGcjM7ytwDCf0E7Re61qtoi3aJ3xeImij0u389Hbfr/BpeOo6yRAq8fPt/+58+9KOn21HfouTHyl0ujWBZkKn8HLYnkvwZ58UShF/9JLKdJWl/MQHNmzdeg3RusDhPs5hwwMuckUfe+QJAv2Pn8z/C/uvKHxocFPvjrMZDAZZzO86OVvDGB1gRaRQBVguH19k50eIDgsRkDaE+u71ok4EuTbeYQA4/1bHaz56mJ063Nqs5sydJsqGKxvksKSywa2E3+OMiMhAEc8rnLRPmt5VS8c/QrSLbjY1HKEqkNH9kxme6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IEeMvMxywEGZOrXenpadXfNKJxmWo/WBc9LD1Ej0vgo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XcKw/ebVJTuKS+yC/C3L8ytjN8whnUdoJOnsvxgP4RcF7nix5uuicw6mopphlOiufmwcVxmEjqWbymPOYuMh+8ucEAywuVjoTBYD/bxpZf43OIHjA2gVIZRznl6TaQ+FF4A3l9A0oTISxdyiGlS7XTt+UhRoWKKrPJ57dAXcvtPPEuX9QgwpAnpsXdsqAAXoEHaW07ZKsEph8w4JDXiBW+Ngd2araERlw2PHtHXMwID2ifMJcf/ngW2Nza74AEGHtupO8ygywHrsPcWCaXNhgIvrVMqqQDiOI5LonqLUGrBWcfZin2a2VQ2kLcmHrVINi7PSeCQgfGP95jLDnTTdOljeC3/4PfJrr8ISVRDM6TWYOXjkVdW+Fj7o4PCjRrdpvCxKQbx3GBJwL+6/Ovuke5BJqSpR6xIl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IEhUR49fWoBO3kmR16ov5YGOzf/Mbt1Pv+E4tA4mh6o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3nAI7MOtjTQpf7BLoEv61U0sfRm2HHHZjRFwQwEr5r8YnqG7BgL5K8xDYPNWAXthdxhR4t1/0aqHsINcUvGsRMByTI/siZnWAIQB/0e/HWMXtte8GL9WUFVSVWP0TCqR/dJMn6ThzJPh6FjGKLgTEkV2kv9VVK9ebWmk5BoA2DqIS6km0GVEDoI6QwRaCNxYO8SFKMoyleuDSEQnXx+YUDVUTols81FMHPQTpJ5CCbflWKirnnn7Tst5D+GtdKg0sKoApuOtnX9e3myE8y8cloe7bDBXuHGXAb4EsGhebVCMMruNFggG1NmtjFKGtACNazg5vo4UJf/4LuHTTiDkBUAqFJXKEmQztq3jThRIbj1Zh35/4HAWsFANE89FFv7Gic4DNcnNOitzWX09s6scMi64Q4ScgvlI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IFx+OgGG4h9z5FcaD2Elf+Pbu1Qnt10qt9UObGtEMaA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SE97qmr1vK3cb64ShXy28qDlhWYpaABwgHQvIdFm+GqpYm67NeLALH++Bo17TA1lNLWlPzQUaobUN7VwljrJQIFiNUNxWuYsIZ+MlZlCb9+gHTuq0v8fBxwlZo7wa9FIQC06fnoFrZa1jPOwnuVR+wMgkjKLXA/zuz542Xx/Vn6r2yQKyQleS+YUZ797skUDyOOksdiXg1ksMFdxnASGx9wKgV4LOEUX79H7M8+v+IL9je8fAAikzexyJ+Eq6KCrdDp8345zrrM5b2JO2d+csahY+cC7ScB4s232w8PAn/QYiETGGQkJvL4edD0xLwz7TkqUoRYKbcLcp1/muafvOIhcIcJehl986H8gCIxCYcbmS+8i08PC4sq0E1hAVJHi0jTUiUtB3oBeI7gReehgsHM35iLa7EQh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IJBVRUO1p9ZVNasKZHuU1xpOuPLsVkyRbm8J/brOa3o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BbNz338TEGumoQIaxj+QEXDzl3Q9OOWR1eZTCjAzbHLckm/z2+EZS3Bk+KNBzEEOnNM0FBje2X1Z/3rcZFDYFuo8GyL8Rnl4fMPdgf6I2drKxqZROC779dP4VGTUwZr28p5GytS8QUjirX5LNJFDTXc2a1x4ALoun/towPpn9eMWFHpLxqiqS/qNVSxi4F2QWr0hN+Q75qerrIDBLQdmBk7TNuuhmJeH3QDvaDHjT6EKRF3bemRraIpDCtOR3ufWpzbzfxHL9d+nQGhTY+3NWph3rwEb57+TuimzeMFaDv7b+oJbC2vzZVgcY69qxb4Dg3WzEtgsd8ZkFIkK9em4HE2LLJuOminwP+QQ3XeTYRHiUyMK7GeMc6x3eb1tOwehpxMuTNUZnCDQwEMQ4pPDFjM/1hQYUqkD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IJwFHu2JRZlsy0OIikM42Ofykwp+DqIqpjPvdcXJ9oA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OB4uaybqxTr0WpnEgupqPHTu0juFtF6qTPz9NvfSZWHykmzewyxuLhROoGTta7jmd3mGX2Bhscs1ChF1YDYkbkjLHeqE8HssgRY2PcivDERyKntI2LhUDO7LWecYVqZYavCr4UF46lt7ymnFiLB+7ZcSU+TyLTaiAvq+PmOu7iqXCBkG127btCe+G4fNsNv2saKuV/jhTpIP289x4xFvMk8VVjQufl5msTvZOcQFrt1zkjm2bshgY8jF/5HzWbagozm0ufvGvTNxgxeCDyIMNDjuUDaIDvC8P2qYZIEgtNTNs5c0elfe+6oognEu9zVhGrW7/1/xv2f4LmHFuvCt9OWNke8XvORGGUTeuz6XQz6akZA5OaraTvUKvVqjiM9KhIFATtgkrdTXlTT1LgC1rFbON5bgege1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IKRIdmf8i3A3jbYcHjE6hdOrD9aKKS7kErM/P1KS/o8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8WReTEU1pqjWe5NHEMFS/2dyD9HBELDVIGXgQMwBG/NHjXNHMYTBt/LHJX9AvjMhNS22WysGomVb3UxuORKUGTd53lqcSSmJmttMf1H9c5nbLyDSCBabYqYxQJGtsuyfNJP7A/wRsTCf+BIepXGiHlAIrBZ3zXITdnPEbPHu4Bj0eVv8hh+PcvQ5wWZxdKm8IWPhrQFBWCh/pugds73gje+t+zfg/UiEsJZE/vywFS9109uoRD7NSi91YZPrhSmCT3ksnXSoJ2lcL7vU4WX7YXvU7/fZG5atkeibsqewN4Pko0Rqec2sr3iTUqPOVaoSRs/xn2wIMoGWTojeQM1yUaTLV3thS6K2Mv6bogF/YGaEdbi7pi7ttEhSmJldTesg7D8t29eTsX5RmZ+Z9t2vo2k5R12szJGK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IMVnTBEtxLu4+jjGa9/0T3peTL8ht4EuOlF3Ec4VoXY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pRAg/hEQn4u1NduNgoTq7QuWb/sRiurCfNJGwes0bLSHkpsTHEWO9218sf0W+9rJ+ABjPFKUPUP5yIORJhoyiSsSGbLdLGQvO8mReMIP8fgL0HKc6TsQalH8sWZnlbx9pziwpqysWDJyND10SmyQh7SEhQrap8J9ACEfD2a36iZ57LTRH8Oc0KdCCP5ExMwyBAABxyWkbgwSIOqR7EVS7vQGWBRhqlmITi/gQ/imG76nfUdvihuxD5GPxffpY5CGA3rxFW+HACaKl7/uZi4Kdn2NHjhCQXN7usH+3pjBjA5DLxk9rX0YlyavhLofygnHQlvUbyOPr7eoj6CzUYswFwrbrzo3RLv4T9TC/2uPga0qhyvb4VkCr7tmuFjsyrMkVh7HsvnkWoQOJNCTwbK+lA7wK5IbhlBS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "INRGu/jOS0wrL+Of8dzbUig8GSuVxXDYUr4opkvoYsY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TjD10zCDP+w3X6mZoUnqOIZu4QGmJwLFQgeXoV3zHxiiRhYs33KpQEpPM2b3WGNwynym6yrraZQDuNJ7x1aU9bQh5sZI+BJoL18HAh4kC5KcDOSfiOiyeCaShBjLwxBFFxwvkrygjeQf1eYcw7rhIhiS9UGzSBV5Rw1g+ptqUEINw4DACWERfOvIWNIV8bRdGkFtIMdRmqnnbFrfB4soWLI5In70JhNtyG9kTplZJJtUPf3/Rs7diDO3CInKoaRGHJQY4RI7hFBtTCECX4GrcqTXzUc6c6d0lqa+K82WuLx19psqgYwYzOIlqga4XKgRrV2QdlO7kSqfRCo0V4vdlAB874anomlSJrEix9wYMJ9z5vGCY7WIrxSNpdjd1aDepFEQWG/UtjUIDvixhSoLRJjmxNXiOckG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IPQYr7aT+87+ezsP0o+Ilm9xx8MO1z9oreCsETV3T6g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RmvaPli8ux02/7aaRGVysgMYl4JvCaGqc+AwtgTFYL/47lZMNTgNXTn2gN6yzMZsE9rBxDzFByALqhzIIuEO8H+DS5hX4L/zmz0DzJj1EbYNwipG71diQOzZrAk0xwXx5WCnOuxq8FyhogmVzaOX8zK8SnooeHCgA2lE+2yLyDE2MYX0PSwOAOWdgQkQqb8BXWPVOHLvguW7a9EAmfiRojUbrhyyvV3v9Bs6flQiXvznu7dRilv7jAamvq41vK1F7rukm/nv4qCSH6n7zIDtoVmJhK2PEh+cF3qFtnpyCbtNmlQIAZlb+WUkO3c7F1fXp6rLONNEvF03BgacYJ+7AtF+YKWxHgb2fRdTUq0kXaiM8QjuNKYtQ6zMwi5IYSlnQ4FEBG+WBPPfLb/Z55zQog0llDlmO5tp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IRCwJ/Jii2rjgjVzVb4kqO3uebm7/Tz0MwoIzkHALQY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hR3T0s3mIKJSeZrpGZOfdlEUaMX6McaynNAx29zJayMOSLiR9NrLTaUA3kmzDQp0wn5KPtpJHufHxWAGgPmx4XRjvGrmFjZtV9oKM23lbPyYtp9uxDirgYODOa+50qpR2CK1cl2ss2yzwq4pcSV1siGysHwMh56OqL2mLwBH5M3leAjoAT64P4PaboNpS0FRwVgv5RcTp5nhTU+JUaWPAdDmXAa4Wc7rLICA/eawfDUwvzQ57DsmZZK4Be1sfKoMtPSc0AmzZ/JT81dysl7j3Zp5rxuCeCODPVkNtjN518toGWZNKtz/jewqApmtIhGi+5SjCs49eM8u49OO0jegh/KlOwxRpNh7icO7l4Ibaxl1oxIXJMhJPGhZYe5DYAZmE1JhG+NBf+c1v939RLFTRz68lhOmYomL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IRV1i6KOk1s4xwpRs4Ns6fFGc419zTUDXGbtIiUqUBM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vNGgUtboKHcNQM8GfMfw5CzB0MDahOCTCEM5kEvpDXz0UehE3BaGJhTVZ214dr9OnytpZUVUdV3rusBkzo2sMSv+2ZnNHewNqqp91GSZxirKBcgGgfE5liFYc6huZXhmqzzo+zLxnqEfTET9ArIJY3NOtrFGquT1elXrmk2XIAqh0AkazD5AEleFVQJvEDJbIYfEry+LJcCXG7YuiyEBcWK+6r0zaO/wtQ7RwaUBzPPrikmoF98CofXHhEh9/Ogy4f5AVFI/TLlT42Kv8tO1udIIFA4QmrOVBoXC29cHgGuT/msbq4K0hgLWlNHUCYIyuFzV0k6QfZvEJf82GVjGH2YJOsTxcv1Kjw10ErNGzPL9HcAfVJLWb62w3M8QL4QyALr8sWNTSTFYnAGEMsuF1YtzCAGuD73C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IRvEUCoF6Yh1Ztwynhfq+BL/9FRWPeYOYcwS7pYaw0E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YOUQnWn8eY9sCRADlHjXfBQg81ii4RCPR7YdaqKFSzIbw8TIz+yyHXxl6K0ptIVGXFOD1Px2ba/bmQRYsklCm+vFUOjSiHac4+W0NEeglPmmyiih8mg0UybHidadbdmaQBSlgnXFpzHgS8ZdDiyJqidJAg0syWdSr1WEGgUeVYN0F/G9/ekql/UJzUGVDRJqWky98u7Fcq9eBjLCxNXqAAy/ndGhxgrfzUS6eNBVO0zjuu16/SMenSTFiDNUvEkh9w79pkud6XvOmNpqw6qz5mjgXHvRz0KDDay8Xn16MoHs6rBgJN5MlpJLkTWKQodSW3fsVTpkwidoyAvuHyDVwUmWSiq6GfBDHxUIZZG4joKiFt8pVoaQHEI8kPNisTaDiNC93ZSQdDA8EaQ2CeBaPnKZyPWYVsN/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IS8S5Yb+G8qwzeGF94wiITiTibLOBeedkJPoD5SgS3o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KljRcDkcSEyDl6vhUx4ZtT/PMr3Ge2MgqnTOKPie1+i34McE2RDkWvRVSMKwLnj45JO8gt2qhXYBOcdZgD0MUJ637ZB2p+oDlhPF/1VmPUNU2pZK8Y5jmJQlHg/4vRDDDEostzwxPqk4BDw6tzNsaFrA1dwrJPJE1/yBNADIoYgl5hk4GVbEIzLLP7SmSscUOXaXut/O/IcS6nGAoKZUwI+5f521za1W1L8qM7eb7vjmWVg8FutN8iInJE44Cz/cz3xntEhVkcW2cdIc88weOUuwTO+D4ZTlaJG2ENKgRiZUYeyaxapiClqE23I/NNp1BuEj/XOMe9feV8yH6MfwIrOlkDGPqM8JnFvoMj/NuF2oEqVSAVN+N0sQwLMXzzIGB3nRBPzIaLsjeatZYVO7SZLkQynnJM9s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IVZB18KKYVSeRGIw+ozAyZZlCaWR8plb+ISd9qymHRM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k0Ln0sifD6gPAtrgBZyk2Gbg8gGczLBh1EfibRJmRpNZW0dvYB0aPnXR9Iz9LjEcf9AZBXpnxuSGGZi0m9xK6nI1wwXrXp7gyKSH47eeLqgMpAhTKfF4hLOOHOGeywsQO3oUbMtzy2EedL95vj3nbOzB5roKZF7/TN+REurpYMCpA++rGcQsT3XjOzfP5N7mfCi/0OeUbtdhYx4O17e6taPQF3i5IlDd7PaS+jrtce3HeEFPuH597CHQr/oozT6/7vYy2RRWHV/N4PBj0/V8CuPXU7S7luIVWoQSrpxgjHLb1A/7ZigBST9/K3b+VtpfJNbxpY0pFFBg79R/d9heNgCr9xAVK3/luoIvZZqrCtq97hdVg9BhQWlmv59ZN4zsaWzIC7+5CMcfqNxifygoHcGjKU7qleRJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IWqPOYnNCfUBDOPCkqY3U9DqKT0olb6OJKwnIcpeNQ8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "I5DCJrWbELVsrzM16dfFMIIq+r93qwCFiFv+rLGfjS0TTNLfwSTurodc1bDRwpqWwgqqQ983eh5buaNyYnNBlTOMIUspeJo8p7q5UDRkURyWoU4aT/XEuVKnPNedizICLzEi+xocDm/Yuw321aQ3Uxn0QPRgG2fWrj5aaYh3G7p5D9haaqJRc6NONzRIFBQAhxIqT8lKmc1ikd8M8fC0T0Zlvl62eg2mUaOXLwUNc4b/DkK2+zM0oxsU66XEK2muR3aXMRAcjrXMroaCjZUKiUsAlHLxPNb5ZlqyFlTYbYcXiuc2YOA78HXRLNsp8beyEY+s3dqMPgvLblTy/39bNbURj64ncTTO+jOaUxYlEYUUl8ju1TAm3V4Uy8lxgDEXXiQnKZV/SmS5jKuxwWaL09uIMewxpwDz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IXtnsnf0SQknCYwacBlsBxhcjua8jWa6e91yArbN8mU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kTQUeMIcry/3pvp1FGz1hCOuLBGWZMLNObK2nT00zrB2Lf8wFhFOoU3FZc9cg1UOR9D6iGhnrg+N7xgFjAZk/Hk+wCMwZRZmCE/1NmQyRVAJbRPN0MJootxUT0rmOqRtTaVbDUcN8/p015YE7HD+F9PaZsNPEZpPNrpa0+dockfhDSMlqPgNGjKPRaxh5cRsNehu7gvjHZ19XR6mH8+BUhqVnUAq0AVEBGi++y53g2sMa3iqLxiZnp+aMO9MZarg187GS5agQuXxEYTh2hjm6eElsY2cM1ma9eX30+rsxkz4epToGHvl72sdaDVDzfnUDLMrn04snUYr4WTBpN4MZWT3aaBaK4+j9e1lyrd5DJakMeDHTtApKrIX+hrwr7Nn07dS00c4N3q8uUnL0wL/d7p82yZAHARv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ia4g7WXzUuznnRGDgmV7uvZSIXFbrWgOy6uhdOeBG7Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Kt2brF+pL6IypmgI2Z+RbtNmtO0UcD566XLk9ulVpWItlkh4lKbZ3OfXio4NdD33io4YiyvQU8lkS7ZipY7YZKAwKHAAiAnPkj3zLxEnAyUJocKqJNdNV/+RSu5ew1bAtS6ODtQRCxHgWAAhspRGxEKuPpqGCdkZvlNu70PtghKF9IwFF82UdOdS2rPRN4kea7f1O7GWn4Hn+oVC397K3doVRmNjrAinjRLKLK4Yk46ldW37z6eriTAsRq6htapc5b9P+ZxyQGHrueO1GrqOuiFDnBaKuE+I+vQ94I3UKU1CCnQDIATZmeQeqeZUbkDDr93kXZGyEkfoVRHFlQdM2uizDywvIkkpTyYjar3lulIOwb/Vig80Kd1Utmi9RATNBW9jboPvzwSXI1gzQQNJISUky1WRmc/M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IbC1topX6G80dsal2dYMP52VW1Mt+TXWEK8wRx9oLZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "86UUu7R5iK5tjX7Z+LOq7fvurIY4aqVI4RbmMNHCBoGwTRMsbujoFIyJ3U9MiENaqjVT0FsfUG0Z6ibbR0PntAEJFr5AsUQtqW6oJ7os/RyELxu8ogvfj6YDF3eUrU9BsZws/MnDvr1iM9dV4V9wbp8mgvJW+srP+SkKz91OHC9eTm+noli6J0c1AjVj6AkrCHJHrZJbFAakp+Pv0OpjSmMMqj7uzPK5zD0sj96+anlT8UWm/Afjv84TcUimgsxAkqlUVK4B+AoXmgPrdcIZdSAoz2T6ECDY1/rwO4Yu3eoO99OhbcarIzLyH+Cn16OqDzxwBMQ4TmP3H/uBYHyTnm0XDBzRY5A/skiv4qAtilPWSiSAQF8fRuepA/vURFSJlmrcat98BjM4Jo+N2FXUeeSN4hWT0JXH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IbVi6v4ff1MUaGnKoxrZ71t79m7NM7M92POs3iU4iR4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Oi1sTB3zEcgjLOd+unFKf6IBVyFatWl2D2+vDDwCVUrQNWC8xfU3PLK7nweYyvDVUo9T5cPpJhm6G8R7KdwYozS0qO1OHFnSsRkCi1yrjlmrEnbcTdvPCCSXtglqLE6jnSc3Ia5/zs/qYSZDnh+IBaN81K9XVzUz++ps5aTsIYkMc3jL0u33DP6loqksFEkADJ44SzzHHadth3QYYZEeoIid/Ln99yRyTgBuo4lGYDE7snIxn1yrYi/OLYmLGX5+GEWEk9H6Zrk4l2TFkxWyfFYsm7cyvAGXmATGfGGHVFvzj+M2pK/5wvxdQleSsz3ncSSuBvZEF7jal6Cu9Kw10Ez9C7NINyepWo3ZbAeO5GmMLcBK3xOqMmW2RufRt0pNTwy8ia31ZYTleQEbXNP4lBNVw5D7RPzF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ic8BYYmGkEN1f5JHDoS1TUpNj/469O7qhv69ruF8GFQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "55SvmUQxcA17H2Q5E1Qd6v+ggiKPwDM0JOEGgHOiDV2Y7qXsXIyp8efsj4xzR6G4dbsUJZ0piTu7m/+F2rEFSt5q6T1pEerU2ziudUJcvGWceSSSYFv7BWeUX/ZZ8Qmi/jzKVxlq3OIvHOaSTXMR6g3SzAfCOU4MK9q6597vhRPR2gOKAlqZlt72cPyIM/Ip4sTSjNN2JK9KPFoIGxEoQwIHDyQibluct5FH2S2ed5sGoVO4FGK39Igl+wNrTJ7mhkRFwtxfyeOl/4KN7BVcotiW6XQenKE42lxJGUcydGIzOTOiNzihqArmIqUxkxuDjgfykgpehe0RSR/iGOLpjUIazQNGgQqXNnJ3/X4OhZI4gh5A0X7SXe/RoyHx1fPwhoEBRgp85uNmvFFAfPRqCHAp7czM/RE2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ic9sKfIsxxQJqTsS9InVC8MXdmh3/x1aGY0Wlg4Nlto", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sp+XWnFHJAOisiFA9L0ox1t7x61BHhfpuRAq7R4np4Vx7hZyuHRi4y08kk2VqD86Mk6d2U1e2tU3+SoqqVrJufBbXDba3ow5tI/rwepFq1iHpNTDrbMyAc4abb8PyuFioQUr2fCmAczxVVFmXJVNglT/gjt4fvQB/SnUCKHkNBWAJNVzDC7R4b7cG1me/h1XgcAqwTYLDqaVuidzDJ0bT6hWkHjx/BrBs362ZkfajXRi0OlJ9SmIqA1PKrS+8vfVdXPJFrCPJewUjWwkqRuPnZrSN7dCkbxad2nhfwIv60z3GDDV2KnpxmfgPyMkg3L3/1QTmT6Sw987tObTxu3fCyqrroI9O7Z2x3tpwNB89kj+nCxW3w8GtH1B4tvvA7viTKvjoK2qGxgxy3Abo52mDJ/1+omM7F/Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IclDhIHcoluyRNNLc14WYL7n+f4w/QEAv9EYRUMyE/A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kPOXNy5dG+52T7cQJhjXVP6kK7FepyLrarkj+wN1lHpPLeQL4MqWxw9rkDyofZXM+a11Kloozxc3t3eEUWqtqsjyGIEqvmxZyIY983kslEoUE/8GA0bwYKOg60ayO+/cdUDCt78bkTI5bmfeyXBvNheGYUjAWce0/OOd9opmCE0fgaXuSyu4x/UyVBuKXDQ9Vkseel5NFFhvuCeXiUoE8DXjOFomvQuZOTZu5Mdcgit/1B0yCUMWjovh+8aOjzejeUtq1MEuDDqCvFnxYPlUhJjElRc2IPDuWF2iEsb9wyJ1WWioIOdQontAtWX5asWjvRVdAUNm1ypcI8wq3fNo8s8PqKKwM8a8FQ9e4oOzoW3aAaH44/dHBmwL+RBCsAB2GVE+m1a6gG23nLevORaoPkbarSVjuTuW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IdRsDbZZ770HaWpAGbPmKi2tf+RfueTE8G/PyUvhe3Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/l1TPUPjywpxx6gAKUOlJR+9zpc5HzOaIyRPNAkdAQy/uEUeCwUDhhihHo0ChOxkCv1a/ObXGK9O2z8f0XuiejdSZ3gstvuJXIyw6y/KzK37tnZDfz5419nY4Qd9OSzCoxNR3cWnjZVJVLipQNrcyeP3pCPjWHreQ1l1qJhHd0EzQ77Hdwn+TGlV/K3NTqFs5wnNQ8MS1UDZFJEVl8dlbg8tIyql02TxULgzsRn4UFG6JwvgBVU8rK2g2bt/BOR/JtXrQYgIclIDt4wj0nEFbTcX+1HLa06zKZtN8v7WbLxhCIDcDF5FLoZ4t7kBZc+/+rNQ9ulV0BfX3OaOO2u/ecNbYJeebCXe5Ol592FCS4AO5DwXzL25PQC7UXwadr8kbg44rE7Z4lS54760YdSWM+HBEg0RrJe0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Iey88t888Ik0iAVVQlt4G5BCcs4VjVYqrpHd7W5qo8k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PNW3TLgoqKvQOv2J9XYTKVDWVEub33qLcOaNajF1fm9xKq7kfTQzz9t4R/HLRMij0zm+cXHtPuyTpahCy0NIyVOcem3+zWuijawggZzhilw4QiH9i5N1xCDcmhXkN6TFkoWA0oxnY7snnL8pmRx2lF9iPc01J4WWTFxy1PQFCWwSdTrRKXOg/MKjpcm4Qtru37qwow4YQZu5RzYPbVwkhSqxWjMkc5h4kUmBfSnSIPhLfHXG8Y3N2uDLkadFQGIgMhiJXKE5/ubyc9XQKW8SLeJedgiDQGo/lbhG1Ms6XlGobmyrSJf205N0eVjd/O7yBJ9jLWU0LkGtHrYOi+u0zCHIXYA029AucQ/NVKtA3A42h+iS2eV5AmnWueynUt2CWHNJtO3PXG5pTiR9SsSussZj/VLdUzmC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "If602FpwQyCDXpFfmjWgOIbslmTKIUGP+TzAfPI1yKs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HlLZRDMF3qiOl8SDRDD/nTzEYfL/3lBfW0IYlFcQRV4VrRJNyJDK6nKl9v0yLjfTQ8n6/xFU6mRtq/WeKgR0u6DhdwKQp+vpq6UrJ/DhmzQYVW3I4KW2k/vUcAWSj6PBeoJ7q41/b7InmQ5LuG5PZE2ft4hkbOeao9MYTr0zOnLLzDg7EjpM7khzNcAWbZPIQF6x1V7h10D6NzCt+wV0ePmhBlkAuno+bIXUHvYxe5wlwteBXRLbcyl9x4iB9XFwPGAod6TpUT0m0TNXEsWPwrRI4POHBMCl/8GHzpAdEi2y2l4sCpY4IJo7Gm/JmLfk+WYdDc8QDjiww90j2xuyX4cLghCB2Oe5NX9x8dvOuGDe3iWHyTHrf0365GsSdQLJSUsdABmzUj/4CDURfBN0IHMv14munEna", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IfaxPyL9+zCGFdMiGpM9Xh1DJ3ZSZZRL+Apj2ENJzYs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qmrMvACMimrZp2xvIGznYa64gQ27PVGzhLrXDmuqIcnJmoYGiXzbuhVrQeKZs/H7YmTsHocMN16QQgRcJN2So3gEpeOJ/cr96+vvD2XUJoVG5oH9oIj41LaSfgUljZwdOQnqHm6LoitaLkRQ0/G1PuRQTYqKgq11mzXg45BUVOeRMKLMmRXhXVWnYYMr/p+skWsM5wB3IGvMipRRjyarEdliAakAwAjBYXGS3RjM05naI4kdhZZM0Dh+DWbgpjurw/vHsjHFOgOdFyb8APJ9+qmaht5fIEWjYKZROmmQztWTjlXLptd7xOI0QJ4Ot+GOYjI/PUyUXW13RDDzb8uqxipyCF9reN8R2IrwL74SkaC41db583F6SwR0GaR9WFd+xzlUD5i4UyptV3VhES10sKYk8idLdJJW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IfvFPMN2U8la8FcGtexKj3Fcz9SUNGvTP2F64kq1K2Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zvmnVNDi9J6XlQzcZMUPTOMF5UZxhCZZ1YCnjKJik4X+X4+FQ/Xf4pv2P9h8BODw5g54D7xzi5fxRpbF+/QU031IyFrMrn1d4UuPy5MRLwBYURWafK7I+yGElqHUH9ICm5lM3FD3g+IkVcT2vWB4zfjlNoRZOOTbL6YVT4LTXtQY8xPvYjulKRz3m/E4lzWL35Ab16xgZD3tzU36DS2Y/HIv5rmqEOIJYdM8W3qi1azObXug+RpArToPXkctKB0tIYmKzEZ3TEqBmEbM4fXNs9xcYG8644hp2n4+f0tQo4aZ1UOyYM40vwoQVSkP3KGG9KpaiWVxmg5Fr40K6R47JwzOuz4S8HhUgUDY19PHEvrhmWzxVuM/Vh8QtLY5ojVDAPxrtO7Y/80RjaF3xRdI5IsS+/+sBhE1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IhK+OCPtAImLQH0eK7L079k1wZgJfapKJiU5A1ZWvZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SgVez+QNR2inMW2LOp4GPW/cFOLrtbaRTe2BerTIrt3YbIHd0VXYuu3gqnYq8u3a58xuTyTHikMdIAWj+2SCDQzxlPlk+Ne4yWNm5cjftk5/esfuSmdoHf4Gy5YSH/3YxGrHHBwUJ9QGLquwFlF10K6w6XNonxNO4UxGHouXxh/btvuE61ucA3SzJzeKQysgZuNcQoSmJo18jzUh9v3n4388DZ0qLtnjtBlf6mva2+P0q9zg/48dFUENHY/OXSNd9iYbgNfwyxcUR0zX++d+qJn3QvinG4J5CnH4gcereBlcAjsUOAXEBwH2SIS7m+i8P3k/ZgkEYRJiMykHPJzl8Jr2Qwirgqafj+Rsneu+6+z7ilnf61zwDKTHOdHdwqRmBrz8C5vpqN5yFAeNpL3joiEspmhz2GjM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IhOWQatOChAIWVt1mKQI4V05g9sfa6nxHVVb2Z0VjX8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m0aBpdu6Ulen36SnEMZP/a5vWkNJ4mC8gJhXH7EqVNT9SMmvkOrZELK+sZTtiPrqTnoX+GMZz16N/9QiBHna+MngLI2ZJQt8SnoWYr3bJJFcMrJqeywtFTE5gZeMAxF80kxz6KTzGj289h33nrLHoHeTAFNEl8w2VCcemtIuvZR9GU30udoOSrA+uE472shHFvlmlM7gaYIQUzMFJtcrNS74skGOEKWufNe7umlNV/qlGGFeB6KawBSEzjRLGv2aJ9KDabo/OweOLu8oAiiIM5adJy0MTgn4AVj/Rg1IxiY+ta3J/oQtwmt7r10IeIEx3tfZae5blKWouIX1l73oyWV4GbUJG+C9rO7ubkcKfKrbNC8D0YJdc11h+OTD5n1kNZHso6oasFjo1ciKBLhOw6R0yTFsZcYA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IhZbqXyoKIzQixLcSarGqvw5GXVGmMUpYgVdLL61CFs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kMYW/Ws3i1rTAA9fx62VQH7+10TjCJL6UJgNZcgCuGYhy6nn7GlR06t7pJa5eOHuLaeBRnjKN1+FWg+hcH1uEeN4fjNNvnkW3yw9l/u2PEu+02R0owksTkVcAVymjMbjS1pl9o/uXUGGM6vJEseccgq3yajnC8PaNZ7yCL2E7NmyG7ZnFHx71SY8hxChLZr+nly4WQxhS21ImW3PYyZGA2qQp9iKKy6r7Jwqw9OVLTNVC+n8d6E0MDGVwEhk0a0QnBgkjfEKFIs/SDvdZWVra5iMKWmxBwBBC4bGpK306PFyLQPplOiN5wIT7NHbFl+MrS84bYsZ3QdYey/dYMJj0TM0xjF2kX8O/2fflFwLsUZLZPkn7sdbelME5+GUXZJRZeCwjBue2+84GI8CiLzVwkLufp4Hofi1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IhnnYbK7hOuCaNsc28a6BwKEth4egYlxhLFnRUEV0x8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Znt1xx9mO0Lb59Za/aAxBkl3osTc33WGW3EW1aL/WhSZWnBe5iVV25RgcV/XcuUReQ+YJFsgh357HIXp6lbLTXLNeKXHlfEvj7HcLUZjTMdEWZi6wStfzDtPI95r5KrxWb+ibzkpiZfdnXYuCpnevRhNZmLvt8m97JYmUvcrdG14Pr+aXN9lqVsN9Kg6dbLvGrrkItwcmjJxH2tRiNOBgBDbihr/LqE8pge66RWBOpEwWhfNx6N0SKkzGem0Oq3ZPNwlpRE85gItp8zk4Ds0THbWF8qRgHq38xQXQnQwI2E76ff9+6seqTX98v+Iv7YH1Qb4tvJGsQGf/t59loPc3btEgOXhtD41QJCiBG51wpz5nNbf7zokSHWltBEj1MPoNYMGlqlK/klvqr7XEyIJmq2G841Jp0k/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IiQVuq5y4KRx99B0pvbI4CC68ma4bEbifT0o0sPzWWs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nzEvdnVjWkn8DgEWIwhYt1iQpqIsIwldOKt3zecjo5G9qUB+Xus8qGoVX6VbTkQjv8Hlcr4kQtMjBQe5/yoTES/MBVArGZabRiveE1vFt//ch4dNFd+QGB9qx91CcQOGqxx/wFBCv+gDOOzqE2ADDm8YRvEkz1/7Mg6mFr7A78poCOEh8/aEhE9HkcTZ/jnmNWfNlu5EOqOuZL8nd1ZX2B7r6mvHURh01FtgZP2N6mTv7G9ZbR25Zawojyr3QoNpqls4vpJvvwStymEzuLGxoKbNQR6a36exD/ci4p+DMw1VAmwxQKTN7yTKHWXqftUrozPYMDFtvfbhnPo8o6/9n7E+UdS5VfdbxCxDUygwnXTU/kloq1DIxH+XwhSPHVlqVj0ev1M4LLzO9UDnkO5kRMJmUq27VVxW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Iio6wrGc9hr067iWPrv/AJFzF/sVtGbzzWd9g48kusk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hyIIgkK809GkMzcPYss2ZhUnOOC0u5gN4nUMPh2tqkB/5kYGLVWpNT2ht0oosCpcquyM3rNYv/9IE1fCsIt1Ua9cl1jsVKVKKzSCnV70gwUUa9JGlbs/yoxxIrD/pBs7qhjRv/sKJ2prfLlDsN5JyUx3En74EKvASdpLh46rq39BYZXYlXqdCr3rnBF2yEXmbpNOWR7bA6dhM3Bk4c3Ou7Sop9wZJoae+X5FkhdULBjX/aR25hOvsNOasMG6etq4DSvmcS9yu0Tvulfm5LPcIWITAK9YFbK+99IlMi2kBb9UlBX5aifumbEsNQOV2pwjaQLUY78MvaBt+nW6INymC3wJcCzyWrXbSWfAwbkP5TawK5Y9WL5tgty4COOlRcfSD8ks6JCvO+AdSnPNoXrPmJ+q939OqOZ7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IkCkoa/d7kP2WGuzaou7MZv9QgQ4kGlYAP8aoY2nrdQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9e/hOIGIiyLh6mERH6MX26mdnnpmstF01uBrh6+4ifFnWHQ1QGj7pPyFWwZG2qgkNVbc00mcwxVl0k6gA/9uDmxzrvVnn02XjD+B7pVoWf+DpTo5OFIqw9Nf20VfEZtbF5oRmwqbN16dpH0UQoR1vUoj5iZBt7XcwR+ZZTNm0EI3OEjT+bg0RTp+Kdbt1+Zy3JxZzRnHsAykZuVUS9Mo88vk4Qj4ctBOBxbYXppVWI2vkvzaLvYy024ETLMq07EHRBa4YV873QaD3rgkzx5OC2LIxatodWOYDFQe5L8MIVcy1e41oTqYImztBUqCAewIMMidkzyJ7kIEfVDKXOKZCBINO8lmYjnKcheWFg4kx/ycSIacgskQWqm+UWIKb57y6Mw6PEv9duQooD32r2gX1aWWNVPAwwWn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IklPOJIK6vXltwbevmX7+bvkBnsrjrF/hj0ProLdnak", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hWOjsbpwbaEmJM8k9Xg2qNMiPG8L+gpGxlmmUxGLLw4bPZhZxfFUj/SBKKxIAl9WRLNLtr1lhcBGph+1+adtgZ2E+qao0Vd4YwyCT48Vvt7ZhoWIkQnyekWN4KaMMDlye/CMapDzG/odI1ZbzRsdUD8GSoVy45uKEavoPBuGlMr7FWHj7GG+PqFEAmMJWPo5nP/h7NlWfOSNj+PDeG9xuDFHgp0AfnnFt+SQcDOrruTkLmHiwC8Rao5xotoDNpJyKVJ/3HNgRo/ouwFT6ZQ90uQDHTeYh7QOSsJYftL11qWcrQD9Z7Ymu7KF35nrNZoKvgZF+MGkd7h3rtQOINYI20kQcqXmgjYwRn3Xua6E/SUziUtdhO9tcrzIERORNHGG5ugG9GXoe7k7YzOHRvD0qCIVIXptJuEY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Il1DL+2+TVsA3SkVSVl6HB3sxEQDviYFla5xjcqGis8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "I4UqZ8InRqwH/V2pI+te7GZr3/vjYH9Mwt4QB9qlZivieq+ow61BCtPKkH4B5J12BimwHk6q2c4j6TaY43FQ50by3lbiGjoabZqtIGsG8jMPK+Va3fMmHGMHWq7vXKn7T2oSl57FHiOy9CJGOO8H8QcDKc9yGyk4I9iXTT9WRkiBIGKef4Z0UBpxT7yKCXN+1cZj5oKnQD4ryQUKOjyyOpWd/MJReB5vuUED5fEAuv8tHyM0kHB+cS01LllPJpBtSQnXq94LiHEeNiXug68JJlOpB1Yrc7+rDthLeu/t9+Kd5qQblMH8OUp2T+ud8P0nPCGT71Jn1OAvF/jH6S/ePnM/qkj3G1v6bO3laP8HPr8PAFZr6WcqQ0xJOBGT3Mu/pwpZ9uQRK5iJVTu8nrfeZCyKxnNT/dp5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IlP70XCYYLwwxa8sUMdFy+h0meth+ngJrmTRbh+2eg8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ebonntVON/rsukg4+YkR2XvOMpeOz4QwAOO87AtO8Ka1t0h1CrmpZOwXTTCnnFXjizxo6zRRrEh46foE2zP7dKwjdIoEVK81+LYY7cqlrSW8O9rsIQGFckoE6I+LMOhuKzImq4sSMIS4DnEfmpbUnok78Kwz6y5udysMJtgqcY4+phOKeKErMmy1E2wKa+n4QV1tzNNfHiY/rcQorECG1SZ/Eupcuq17UvsUgJflWzq4L6e7dGyvDAZC/QyAmiDkQD2LeiHZmtNJAvQ0IGSXLAi2ZxbztyU8hu+Dyl4pYt5Q0RhAgXDHRkYdh6rLmjSlUM8uJSGnsTuZh2J78/8dL7zcKsosqfN1PZtLvRWEEpBEDcHuzbcVTiCn2XCm+8nHoaZn+ZJLrj0UIxcRpsQsj8xjLRpoxQM7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Im/qj6gJfdtu+b/mitxKoXp4IWiXcJKcZvi7OvdYILM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T0PukxVKC7p5rYj4f9Ll1kKhKJTXBJi6ilLW0homfeWwPx4HpbEwmhHj0Fs1cEOVLKODPX0PRDzKhuEw7nMPnRjjqwd/qGw4YN3tOHmg8/9XafKetStc2Fgw6isTvsOWamfhRiplXBcr7B7MtQWRlsUsmCrTZMs3ikve6mb08ucI5Lqe2eFZWi2O3pPxiLQGloFjOvTU6Ll2oO6TWsCh2A4dDRleReHPA1I2RH742ndmbHCbIk401r0nitPJb+HlRCP+zEk5XhzO7oUaQx2SaxTV/vdU292NLJZ+e8cXgdJS44UDHrwPmsgE8cHIKwUlqUEt4J9bhAeAanwtv29JK9AKeP3c1zIlXRdPbbAeiO+MrSbPHuP9iuhW6NWvF/ZprznXvRrOX8YwPhIK03tJhAYu3dXmVErg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Im5Ta5l8Cw06+gvmlRMyDS/6z0Jjb4nPHJmC51bqCHQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kntUDKmlGbbP3STeD/YNYptbKbcTVMSopvGEE9giw3zHvpXMr1Rn76XmzUTvsj0zyP5iXJN/xW/wSdzqhreU0xkBmQIFSPIzn+bAEm5ZYFN7bYPbPbmRM0zqHoHLRJRXEe0EKr0pFo42h1ZW9FKR3VH1w16Kzaw3u3s3gv3f+sgKbmyZE7ZQL1fb2Y81ocaMzh/tDdIJhJxJ5Q7swJEjyRpVv6+nlc1wJJ2MWsMHrTzSfyxmpGmeVUVdtjShW5Tg8a2GfxYIbJtNwD6VB4uQ9ZN38YQMM34NxrrWAmpfdHWytQTxZzCtQefNVnuS2k0+/LE7cuVvE7Pdz5DMu/ZGSTaU8a4ElyRY5tTBcBRFVN7p9/0g6ilBuDpNwu1szVNgt94ezGDfZxlJgDu0ryAfjs6VLSso3C7g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ImpDrMM9PJTOJ9R/DzoIckK1tAsRJqtAxIOM5O8cgK8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QkbHE7PHftY/SzUEdV7g6mHAFqXiBaXIaBKdhp1pYnozGLq80/83B4nGjSy1NdwycaYFgiQAuuKfPJpwNN/vlS4Ko0QvQCk0t7SbPIxCf3y1aZQLT8FVZ3Q2H+Eb1VT30dgOqudUC7f5c59tII6mAhrwYveELS+q3MMl0o7vlIs04vWtA6tlYzsiGupGRZVWo42FBy3qEMbn+TKKyIjTXZ724Pz1x8gg09trsyhmzQyVbgmvhtD4ubkM9SGS1fiQWRuD4CGu4iBEltej+PKB0HMOmFuU1WTT0UjSF5H+CvzmGMuoo8XiMCRc2F7s7Ha93K/ykA28iAPKfLjMwODWZcW2uzyNMjWR4O0ZHcFWsEKzNOWrem7deY7mjkIZG3pNn7ZhZ7P3EkrVXPK8nhBgM2kYgVxhFqAi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IneBNLQfLyQn8yWiH+jTfnwHFenIXhiBeuOShUvzVhE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1aHJB9Mss5p5Apc3zKitLKHrquWjso3MJs1ALBn5dH256Uo8WqTYjCeOOGzaQ6fgSPlUoNA/89dYCYM+G3i/6Ps+NYmTBQR/pKfGkX3VYtUigcfBC97AjalxDziCzpzke+xoLCwYRrKg7ubzvDCmIq1/OvXvMDLGNitrvNzeF+D0sk4x/bUgqKc6aORXF0a7MsHiBsNwWrGeW4sQhn7WNEazWFg6kluMAGQ1Zk1n3T3/6hUjVwPaNIDnyXJwHtgi2aApj/+7waUb7EDJXXWGXLTJO9c+j6BL9E5hnuZwkU9yrFL56DajKBExWB4rnB3XlgsXwb9I1atK1EKQwPap/P4aXzyHZLPzgxZcSUQ/C7ZU5+dfib7cCYh4DnhjBIwUx6QomUQC2ULstMr2jPh4PNK/Ce1LnNqd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IoszRX9g2D+h7Em7JRrEw24Z2WUnXFWwhZxBjbEb0Hg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "04QtTt3IXHpyf4C0dpgKLqsMLLaufX/pAQKGh3PnqRJzeIsLPc4AwbtrkCURmY51yhxwuCfTjGLFWOkBv8k+5cknNssSiEHXojRE87vt7lwKFcK67nEeM88VE98i9TFYfx9u7Y69lgfytJGnm4C4oReQiBvr/Tz6YV/J1HqVQz1S2njpcFIJbv76YOH0AS4dGXrhArjZpV09y6slFd6q9DIjiH+Q+xwNGL1I4bUk8Rno6cBv6BY3IIL58MqEojDyR7YnRPLfHypKp7NkQGmdNToVF7LSVZDXru+ht2EHPXG1N2FJsuwtT3c6jtMfEU0NmyaQU1m2se/CqoqN+VanCdXtnPPoRXvnZWivtkvlSp4dWYqZSKS50nK42sfywjx5qmCmwf/o+XgqU9s7D2Fv5uvAw6grC4LD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ip5CBxyfHp2y5SKxI1fxHBSxPvj9d3mGOjD34ZmQlBo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QIWX8ER2d+TojBXIyEVAGaQOUi8zQt9yL2TjjeYWSuVqm1oZhNFETPgmb/kJ9cCR4Rbp0OliRvWeqjvh1HqmXlAztJB36JG1sjjhZw+KCMaiS78hV35xpxAhJrirTGZ0JKa0DDCcQKXN40hBLfR5IWsWFcNp3wUVxgIzgawjxUdisxdzPIjkDrAuHCM3DPRFm27jV7I3pVZmYblLYR6zyhK2bMrb8AUB5hmCDuiQdel+cDnguW9YIwQtXK3dig+OXsXBW/05Q+VUBR6B7kvOB9p+5C3nnjc8BbIbdmElyfp5RYkgT1ORRQGJUg1MXc9hyOddLtXZEaFVf64fFloSPuGWhrRR2REf2k0q05cLlqC/mxfIyASQZbTZUDW9dvmeELobyTY0f5efC+NPAhAhhUZ25iFL0GSD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IpbBHCl3AEPew3GTVBrKvVYf2nk13Zj1WWl0xOdu4FE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iK1KdxGtbX276fth2aji0WNZsr4vhyElxxc+xyZXPFskFSvKWOkCgSguDrhqffA7Pgz2+0fNnqPn5cOj+zyavf9ITvC2ckm05PCXOdCZKKyrrkKwLQtRtc0EipCM3SxljJnffCdXgfXM3/MiP3zrcaCrFq5qMH0Fe5F0NTDym4MUq8VL0NRJS72TqDfxbG9Qn16xiz+yCrW9dQidapahXtyRnceHAMeW3cx686oi6+bGKwA8H7LkGfsYmXRjDi1pHRTkIwWO+HMyuuLBIvshZcfWCUp4mJKoxLPiu1ltD5dCc4uHLYx7QPjG21qhzHgqgy5VGX40FqxeNneBkf5vUgmI5XvPLCHLCnYBnp8hW4jwwI0jxFOOiw87JSd0P7+AEyMMFckrGM8OUyQpglFgCQHcD9R2rQKk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Iq8hF800piT2chNu+EcEShuWl/fMdrFeJuhVCXvnLwY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TE3cTBqLWDZeS3Ogb/5vUWxkwUqgtU50g/UoKAsD+sthssy+VaE9A+Uc20KIcbNJF8jH9ReildJdTF7rRNdyNiKgAONMQOdg7v4A7ZLQ+anmZXRlOAiz8PfvxxSu0LQayOAXiIZUIsitfKlAUNvbUYRxZc1Zqc/BxhxiLcqerMRDvXEK8bpeKUNc4Vr2PZxcQTp+OAukerJukE3QZFRETAdM5yeQkbFpZQUcp0wa0UQFFHDy+aG47Zz9ghnB36cgEAd//7e3b3ufK44iVJkeUA1UVH/Ka3ySWeb02vAUMq477d/2TxMA29TuT04yDEQgImQptwVo4pJsM+ZSItNPSXT+kAnDit8nMOnfy2IRuRwctJQJSulpnp84P+4QJ4uXwA+mleRKEbOIEFyUxbUI1LHsyAICFtq0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IqL1OiNfSmSlvK9zhHKN8N0jnj/Eo/lC03fpsCUh+RA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ub7gDkVAWjeTN7u2JtCwX5xbRBx5bQJTRRCcRaKSShNpl6s6FSUDit3UbpZE0dZylQML+XH/K+DFMude1Nm0rv7sCM2Fev/yTNhr8KeZZykcDYp1Ps/qiQ+8fNu4qgxIIuF6YAZwhrnloR35+qckAbLk1EZY6c/eBjfQktkeD9kSRdiQDqIiY1/3fb/4zXLB6NfmDFbhybv0L8FRYkXmf9SbyaxBpwmSfeTRkFT058rI2n0Jj38CHJzXHbJnXu58cw7XfsAmaRUnu7DuKVyeNw1Fauo33EkzX9dmWZarAeHU8YYiVAfIkRDKTfFDWm7l6VPXvfeZCh6DLDjBqQsGr2c+p+JypHxnciNZeADQS83pqIjexUkh2foxBnS62hmL8emAu/T6HODSnxgStkOcqFzu5qVBWSgs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Iqkz7VTLugfi2g5hlGp0Xc9l8I8lKcLYlgPJv6jO/hM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eusHj4FZIrGcLngzqQEMljUjOJZREs+7ByrznvIQ6KbnNjw12X8+HwYAhk6B/wZmVRtEu0LbiWJOxH6+hlaxbfW2AmHsJo8PqYjp2sB/qoz7JTjdt/H/31Z8fTJWP1srAImfA0zh4LQ/Qw52big4UO6zqd6W1qn/T+BK0o5e0GkqKTfxG75mNpRO5llJ3CjY9L0gkUq0fiDUauh48DOVpob4bAXlpAzdtW5Y9dO1mge2iGlGQQNMM2Xn1Xv4u1c0Auv91HVB2e+VeT0lgKpwTQUBpdcNILoUs9PAEhRZ2QrhHg3RJIxkBv4ziX4miJOjGx+gdcxAhPUYTAu3b/Yf7++l29ZYCZDQA3+Y8zngusrpdaxBPmNtzlUkmg8P+se1GxYH/2ZVh3dVajg2f/5NyWJYmkbw6Hat", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IqzFrpimvU5hraU4q05wyO4YAneCccYqupHr1b8wiAM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OuEaom2HM3GPjSt/DtdxgWaNnFP7/dzE2GE7ErsJv2na1ekP3OIB7mTpJb9Cgl07oQMPDaBcHAAxHe4BsrjKjsfFd+9YeE6ggFjN7L9yXTKhS4bbjksd5p1+ABmbkYTnGPSYEcFhtOqsEjSJT3ZbPqzCCgxxLTkabPAEk68tbJVFO3sPWCaDK1WC9mAPM/lVCyqhk+HDPj2vt+tmhwypC42RWgYsx9wwDuvlcQYh6U2bS5KBMWT+ijB4lSLKccI9+ByOuAuWJ3R2OXkdiFQdbQBvwMyyw+MQ0pSAISrfztQncviFayS6j+EGo1ImY1QHD7KfYnSLxg5hG3KeQCgIEX1+wZu/FMdJ2CatGn39myhojNPihMHvQQMz7i3RgKHZ0pMCun4rj2Rp4jTyc2tHySfAmBXa9jgv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IrYbvYAN2TEAXdtxGcSzfVpcwD+SfoRkSIR6S+J+5zo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xXETMpBw6THFUWFTi/I6iN/IwhQkbyjrkcRozP5DAd+AUnN3qNX5eG+WQdn5wO0AEhvld5ncW1TBWac3maKfgtKFI9orOPQf5C3hTMiifOkXavioeNaKtSqQPuZn11c+uKMLGg301bEAhKGKAiXEwQ9Tn814n0hoNjw9aUGo7cCwn2leBRVPhkLwsJF6K3pZ04YF5tirxsvq4HZ0jHGi6asYOosysvciPnCS9Bd9H8mprXSnL3MENZg6ZWf/FvA0+LmEUtsWMes0t7qm5X0s/91FjevUeb+R4itv7XLuqvi+M6wuTuBRGPbZKugcONgUQG08o9g0n0MMjOUJWqXLJm+Mc5dffmHAKTdqT7zaCxF7iE6VE+rsrerK4Y1uIjsd5nvbScmg4rw+6DRHYvXLtw4gCGbpiibF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Irj0zZHVCwpStqMbXzaY0q9thyEXcnX6RPtJLNwjU+k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "J88BcY8kX0Xp+g0fPgWWflDnzLOXplN7KOse5l8sdOXZ5cRExlyfKvrq7aVxrcjXyFfvBkH/nVA44ntexTzxAmREmFWj0LhVSE5randCLRaxv4gTuSzdnUygvi/Uc8x+bekW64J2Q4UQ2X9DsdGdr3SjD/szEUKhVOPLxbC80U/FdaT22Q98XelU/P+TZbDVya22ncHBGb+zqyA1IALYZzzfq7UakniiRN7YFYSqvSRl6g7m1j0Dw1lhcqiCp6GD6nNgkQiSzNlKOJgaK1vsYa+xFKudANfZP1m22uhc9ygroRGGvr93IjJu/PKDOgy/Hr0KI/nrF+X/xLZ9LELhW2/aReBo8YRaUjDw8FhR/ba8dJxQyWpikL2XDCiwZp2WSPXRu03jHnKlWgvvDhezAGXsSMqOK79F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "IsEFnzir5c4ERZPKNCg4iZajmI53HQIQrG9gStf85l0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tNuKmiRFT7alTuQoKFfdDAorkypdqkAj2CvniLrWUpfvIFSjjgISE0Oaf/GmISgr30nWyktQzyXOoVDWPfIa2T66vTW4Ef9OSgwpI3R4y8Re+NgMbZv3vvuYsFZOVe4THfRq6h/49yrs8r4sc42t/zERNPpeUQDaB7v93iO4Sgp30cp4FTjJ6RHi0Y0fezS9HnF7fMryUH6tQlWW83EpFJ9q3qCSAM9DOv4Z0f7Qw3KgMpV90r7Ns9BLDCfQH3ZPaQytPSzBWOuiJS8OuNodAf7mlY94FgI/dBhuGOkpl5N5xaXTe5Y2DnPph2T8B0xOWyzEQYU/wHLEZ9Fu/ey/vCCkHAZPNZDHPV7X369+34gzI+GWF4zm2QWk8eH0xUSDwtsMqGcl4TCoewP11rsYMjKLwOrbC7qj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ItI5FVUpBKSHSENtH5VFk/eYQ3FitC8NdDP+hKNWYLc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uWlWWM7GrAPzwUe7fLwqxKM76886fnw7O2S2jvSw4cuaWWjtMTYHCKRYpww5fvQcBk3eeDE1i5vWq7n0WaDWW/Q+iHlGA+9PPJOGsDNZOSKEfb/1tpOaw9U8Ph4VESaVnNK7o3dOM8GlNcwxLelYo/EcSXb0T1wzVYXjPkOB4O3utwQSY7sgtoaMekbDxzXkXbPlJ2VZZf98/q2zCyonCV8mBIGL6aDLUQ3nanRc41Dc1Jxa0bgsSl2gnSscSsE0AwIJuTJ3z8XxS53a2hWczavu+J7v86PuUlJZwCyQ6mzc/2Gpc6NayIPCQ8yb4k2sOh1gTSynzdDEoFeLVEgcDqs5+Fom2eln6M6LbxgNOyN+6L26m24zjWFGu3XvSJcGZ9oHYtf4werwtsXa+04dT0e1klTC+XG5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Itj7QGxS2038q9RNvs1l1eRMqmlU+VPYNSL5josdQhk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wsd1bDP0X9YhJ+QMFabZCjnNwrar/dCcdyrNS8M0Szcp5ZS5MqdzaSibu49PN7bkcw86q188fBNgbMzcUpuyUMpYiQjUsdq1SyLvYMrnRf7dKNoX0zGA1GpuFKz7ShKDZRHej1iilca9Q4G9tN+CZjNqRSXD71W56rzNqgdu0Lo2bXQrrhn7Gbx+XMp2Pn0rvtI8nYqRb1YBXBCJ0Mk0jYd/uivyiRTZkKY5hN7KN2COa6Urg/xQBwmbRRO/PlBSfCBIXOlRdN8044ftFtwmnaZs5Yr+5O4gZgu4wnirltSjAkMk4nfw96A+hrqXG2uaMefA03pEA2dcsZPaaqskKlvcF6bK3+dWowMigT4COWDYUlCsUT55+sBCYtsgHfB9xlRPCUj4IX9J+o0zzY0CID8d0IYCSdV9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Iu8weMpVz5O5EHs2rzc03UV9ZiBIpY6R0HZCvAQm5JA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TyNE+fexYj7upb6aYgXGvZ37Jm2TnZADBNmIsnGjUFkTTfJO7xrftcwB0sPLKPCCrcSdVu2gv28ebyRdbFsw0P89iwlrLWDNMBvJe9EBgCjoDjddTyv6gaiKH3TnsG4RIxn9SeKOVERUp8tlgs0Hx1KCnC7OJpbBI4bWmhFlH0VH9MfauyyPdb7ekFXPpWf7DyEbQ7yRxqyOKAtv6JymWoMC2NrlN3PYUx7sqCDDDHc2RZ62qrPCLm3u4FWNsZ96zixnug1scZHR8KnTRgDeu484I2qOAIRiPmJey/QAvUHVSw1MZT8gPRycnJfrWjxmotN9G0z8wah0KsB3OZ4YJAxJ4icMKyUoHpswZI8zarHoyuJIMRyaXsdApgU4proGxJ0dlKBxC//vbWMYMEUptL5QuHD61HIH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Iy67pIfaao/OPKcEB+JdZWlHqGyhf1vGyftSJAFPrbQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eUXO6imfbWVSpeefczsQzfRFTinwmfDTi1dPl21Fg2p+x0vfNynHOlknRfCvGSdj2TEk7exBZyerk7ryvKD4CbPeYNfii6FTEFjX/TJk3s0C9Y6Qb9xp3fXMPjC6IxTA92Lm2+LKJ2keZLwvCJChV3lZZ4KJRIVynVVTmf21Hmf3PE6avUfTaN4qvf+Mh/WT4eZKRnJ6qDfm2kM08IpDjfPD8QDhufmpADpSY+mz9gRP9cMZpE4uHlbHn/FD+lP8fAkDrP22GgI2loCdvGilLs3SVLUyXmUCbKbebGIT+ohBC1nDW6YaG8ExOFLWMmqQwo6oeXuzJBkbt0ajcySJhUXYc35RaWw/qFVZGRhmMmKKSxi0G6d8c8oiCSAGaecQv6HGct6O3diKvJ8+N/CGanV+b+GpNdco", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Iz+xaXufp4j11Fm2mTLwV2yRQ3B/5+gPTu0+O9o1vXo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Me4Y/V1cMA7f41tIk4T6ik8IJQLyVxpNqdNoIXQQ1hbnZAlpmkhoV5SCsLrLMPoIpRbc0VVABlG9jfzVedcSrbJSfnbH6A5T+AP4zyRXwUoTi6Ik9WeP5i0LBr8sYh+xlqah/wYtDmCtjmMz2hBzRvlYMQfhTJ8PdrU66anzsptKXsOxjXjAwj5bYzufzwwTTGRgorHPRgOimw8QYTT7l/FOEP/ZIUV9Qb3j4exQdbP1uuMfDFk2NGxArx/DrcsD8mnEqqp57Z9dyDjAD+ZMsXvtalfLxC3g3ih+RnjQX6giRaAoq2ZJZv7CEMiZaNNm6ULxJCNOFNwBrhNCaLuHsnSaVgoGm37Whx1cmfJAyrRL4lpIXWrWmIPpIqmE+SPAa2WatNUXRjRxDcj5AARtt2RMBoYMu4hr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "J1BXxzBLfLKpb0lVUcYItotxn4C9pkQmDm+VLZRN5Oo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "H+etOWmQzUJvBti7NA+gMYfs5pUSOm3T0f+6y0ACdEu+LRj5tvWxsRBLvLTbS95lrWo+l6PSv3iTfKVOOUQG6dNPb+uNh/YzTT4+PTr0ZmN8JFstZSFm+R/4x0TuO0B38ohZNWfRpCGTeUtyoDzrt/4JqI1gGrbEGGzroTGsstqo61DOxOVfuXEBDvhqfmldptNSyAf8MiDUB8rJpziCh+76LPI6Au/xWEImRM/ClNzDkfNLGX9SYbBseuEGfelcWlQ2FaPz5YFXmCzR75USrkkiaDWLMMY/B8tXgDO+sc+enj6YPQY4idInRtouCAjvWM8XLAo304gVY95p73DWSxpZ4ay2RE6yuXFkeHkWWOFBUPfilF4UtbDx6YhGgcPCijQ1mGeRCfgkUsAYl5Vzxgiy06PJX3j7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "J3fZycWjz6FNwqsMGHXtZw4fwXioocKBcmqFdq7RBSY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "K7rhV0fQSfRKT+8wprIpcp3srDqenI2nWgWcXPP9fIPa8V6vgtI5xiCZ0Dg1yYlFbYrQvA0kRmqIzLzlKM4c7tgUHEz6e/UGE7c8CYdhsG1hSFUxSeG+U4y/ihxsr4mBmkiUa79gevTadVU6qtL0/0rqyyFh00mLa4WBwqBBt/6eQtAddbq5EQb09lyDKVMUzjI16Yh9U1d8JhC+cf9FrCMD7jUxbqn6yxD42+brTK4eGYxQ1ltP7+odUaKaOURhJ7cMgqunRP+FRSfbSBM6n3cQRwIS6x0RvTYRDYWHDvdTSWsZkl+k+R/16IdlhT3jsIUIsj6qexJM3FZJlqLSFiiJQHgSdCH5KwOq39qz5VY2EZ6NvE56qHI5p+qb6hyvVkio9m3nPJu/k38dzMPBcUMK4Xo/W1Cl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "J4b4sRCj3aoy5FVSkSZZcL7sVdqV+lV5p7+rAYpXe6E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zSHZtuMyFHR07UYIyUNeDoq9LssvjJ97S4Xue7mILDZUoNXfUxaSK4ec0yH3UsiFWPFvk/oOIBLjldV5RgeQdJKdvP8uXzXOihJWyhLiTUZ0mQiCOUWOLLCxqQTvKF5n2JASOUf/xGfKlTWasFdwy87jLoo8YNjTcKXzHO6kV9rbmwmjIMJ0vDNkFT+RlsU9OHbRpFaSnEFzcNXakQhb5cS3lDLE5OmR8gEZuRk2uAgxmoKaT3mDpUROym99GpJGdEdqikiPaA8QoKLzLzIxSZkrSGgZVMgomCPpEO9OMBWxCqwcDtRaSM9VS/74nNGMCpYaeP2riUJfT1TR5iliOTk0HMdu6RE5O4zEwuPOy+ohW00Ptr1kyCvBcX3wAKq8iCC2alxvhTmOkH+jx7aarg73I2PvsRUw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "J7P34OsUwYXXPuhiX4BwCtD0Hbpf3OvuMrT1b4f016I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YakR5a93bbaw9/wXILnRJcxxkCusKTXSACm0UOCqeDzVzSdrEkLYkxB4xkoJgjm8mKBjW9xWoO40Vx9NHfLsC8knTyrP2WkpOe8CbyigiEwLOrOtQNAf2fhB1cJ2LgnBYE+TiwR7cIekhLzp8hEB3Pz/EapthvyDtGPzmVXTiG0rN+5H/Y5L5qEejRd0H2w/6bOsliirlyz+4wduryDMuV4pJfqc8zvzNQQlF4FzGj19IOLposWSpO5RLzjSiz08uk7I2MD4hDGDCONBhduoTMqDkltDyeRYLJVUYWYdrCj4KF6QvT5Nsg+sivHfhBkQFRrVNm2DxB39gjC8tT0/ag0IMGyRDij7mOlIwwsRVKpTc+p8zl1n8oOhZuhIkdbjPf93BfjRZqM6H4YlpTnzvjFMXMni16n3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "J7tokEWgwOO21x+8xfrkKuwAEFVgLx1Urfkxz0EZGkU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Za7gdtjZ0/+3AalTPqZkfMCUuuLO8IfBWI0s3S1pBu6uHrJt/pyprUyOLOV7dpz70SLvZzFMPx98okSIxFFJyMYjBSWELTeqX6dLLU1N3Qr2lYZIT9wrOKojiEe30mxusdEfpTKmd0EQsfkCjwBVLBYV75KB/6xyqjt1gn+uAVWD6/Rpzz++/A5mfFDMEV5QWYzajLb2B2zi8swyeQSRYGtrUo3YINbi3GFfqMYpFIH3BDKPkAxgxNYm5okMpmoYnwIWHqJ+HpEFBKwsyJqpIw4pDNFCBVKYoD0ueUtpmc4yzAeynvGAkg3TF/zui+JMUqTHpJ2QRm6ILDQkRw+FhjjVi7I5YRdlO7EGFBhXDcE9e6hNrKvUIQJyyOsRSX1w0rOzp9NWmWMcR+GJAB7wQ4nyChfv+mgf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JAn6L3wEokqY7cljQVII5ORMOdycBI0VkAJp+78SYl8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Z5nVtU6QUmDNgUPd1r0OFQHlFLa/Re/EU7MWnvUVPKZ2Bd+YpGGV4uOioMpO3aCcxcrQCvSh4qfsk/Ck7F5AyiQO9jjtF3YJ8+DjPWbl4QJloj08iZ2oY92rt4CYL9rwZZPfGbovfn8AlLDbd9ZZFBhnABOPxfGHebnDYgwBP/kcLkQbr+aTrHpVk6VCYA8ZaEOrq0E9fD4UAYopjvecjGwmBlXxU8TYsgHT7vagXVxncDrsEstSu3fxiguY1EIeaoyUGFA0+BQFvNY5hHdzJpTO5oKDkwT9VDSLbW1zp6PdXDVZn89SbcLrDYf1reMuYvdB21p76igGPsMD0zeFZkOvAFdKmxOC5cwhhM0zTbXkmls9aAgDuuCV/y8cXq61zbVTiHyqMXKFpBW73weFin5emETz3OvA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JBPNgHW+8dBWn0TslUZtWgXxriFsU3RZv0PrCU08+GI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5Ped0WcAoRnJ+1Mr/30eUeTAWDcXi71+YK4lxhgO6xkZ5173N1cCH+wSQUW50v7LoZgyDg/SZljF8hjyXlrKCND940fM0bQylxSPIoiw7hZjpUdkJ0wYRJd/UWQXfu6rd2kQ6fX3RiWNmfpRRwZXcmmzGG5fXqHjFlcZiEhzzkO740cP7XCbrFqb1S3VBoJdbriAzSCEoxef5FFfkbeJjeOlnxDWvkG6rEfPE79AO1GQh8jA04i66tN9LbPSSZgZg99hXTNePYRSe1xDheIlLHRmeX1tdkrJ8zeBGVn924U89ZAr6a0pVEYlrijuF4FbvlZM2LIukfn9/SxHrDfa/4C4hB60vy8HpvHjOMwCeKygwQs+hdLLyPrulmRp3eJG1JkyokYnytvSCzax4i7YeGUuhu9pz+TU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JC+Biyd2Z8L3fGBPlheiX6jK2UrOrWcQS7u49EidD2I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ang2PffixkbIZIFx+W/tD/waVd+bsL7RZ2ygouxcu5Bj/eMmIzgSjCLFRSAznLUjGTj4HXNxhxXpTdpQzG5MkDnhn0mFlFqs/AHzYi055ab5K4nlsZ43M3vCVox7pzP5oiXfUqdAN2pO4XlKaDdFhmG/0aD5jVbu8MooBefDVc+wfHqUXIIaboc3M/7rN7ZZW9FgPRyAI2akD/JDK68x8SejgCSWp1BA43USn379mtJFmcGh+uQMAeAfl9aqjoO/lb0wYtSpTMUDF9K7d6i3AQoSDg2oUknDPAHZw7KLdrAKJmreQJAOhg5/b8n6PYYdNgtVAWKjJo0BG5xSwxm0rl7w+FwvS4tluNIXP7VBrpsUcjItdwG8iM+nEPQUuFoBqCT92X5cqSeGAt3NZlAhHlBml49pCThS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JDnsIAz7e0/yzFiatWfKQzg+FUQeoTtCwIIRyTcZ1x4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nq8AJckMDE9v1VCAA1PWcJ0RuF4GtDeQ5OHnOYb8jG5wsSaznWI+tIaRdO5MewCWXbHG0seJNRFAiCX967XYum2IMY+1HXrC1CfvO0EqXN0uyCSgXUt4Jid+US99iSjsSI3wwT7NTsxIswYAMKOsPNO2rfTBUETbPJKgF0xnxC3HuUZxie9KCmQtMVcYgmlJynmpKh8BOZ/tm1XVKH7MvC4t1S+kPLlXC4I+x7cqo705lhcc7N/renHBlJk+IDmcbLQes2NAquZryNVpcsyq+Y9NIzt+2OuhUEyc2qeV8ZRMiHO7l1/1eFcJkP82eIFx01eFt3n+Yd/EX7D7wnHIWasMNOGUVCwCT0hYxpeLqQpERXVtwGg8c4BNt2kECV0bRUbV/SoA/I/9+lgY4/IKhI4g8CXYzWJk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JDzvpZLG9I9WmB0tGfR153LlQOsn2SSwXJuqo/RmT94", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iVxRbKBDj+M2/B/LW52Yczc96f22yi+m6wTxfXz/V7HXNbc90ujy/nqVrehllmC+4U2YIR28xJTdjeK1uot0pcNULi8hp6wQpVqtfLGw48yloXTNKjJOVLI9yvOtxe8xfa9IlNU2QPitZRVW8UWh8Gq8sm4qcoompaRjPL0TpdXvnltP2CcoT3bD2jTGkL8bKoSWwrFHI8yo6OVsl3tXmQRJSxH4H+/zRY3ic85YKG+fcipHrnvIvj42kDKSOB783DeW47uHCHqKozBXkpig2T33dkqUuJaAMCbitUKUK7IukKLXFfCmoknI+VwORW32YizoL58Wm/oLTZ8qRZZhOUMIm7TLKnZQVcHcud8XN0BfCMFmMgqeptnRUsVsJE6fNxHRgC6AxDwWEPhiydure5Z+KIj7oz9C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JGKBdrVI68VO5vkxASe9hIhHZFnF+kmSSGIURtkHnJI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8nKtNc2d3wEytGGbWjjg9gkt3CfgiibyxbqKc0QOW0htCpNX6f8JP//ElTjakqPrk++XBr/oe2q44/W4WGHvPjr1Ke3eGcvpcdv2zTBqAf/Zk2JvmRIfc9IC71ytpc6kCNroRhTdrZLumFOw0EjfWPI+n4BifyAsiiS50THeZpcSEt4j9nXa/YhK2RXHMjkM8kfNw+lxkAwirc3SYorDOOWKSE2MTMUJixNMWxeMVvxH6Q9yXZIRQu2F0Yj5rabEA3/5g0xv0lz5LN8ci+CACeJd35heK5AQtDfRkIxifFcBuYKe/9mMR97pbjR4+XzKyzmIPH6ZOb1VFJftFScJhFxED92TmPXNhZhrHzXOjV02aDow0bMVi1JhWpTkX7ExlK9RAVrQ6KKwsSoHdOtB88S2cXrR/Gwy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JGsyb7gZj6fvaCwTE6GpsOIS4qoyKvPTdRDdKctqWYU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hTvT6vdr6gAfQpKZrfdg2Gd8W+LKh8Mk+hwsk6F6C7nidX/kFtOnuj0mbKF2R7vi+Nrcy6UqS+KnckjzAuew99/1I/d+rmJJi13emWRhWRwfkXfE0IB8NrJLSJvnVOzMIHZYtQ7cXoguXwX6VG0y1g3+DN4N8ctXLkMh+1MRmQ+pkcC0oOGYF09SUEdGR2iGwhU9xRDHoRmdAhLui4ACha983111AWVHWZTAcsscU41IAFVwRnL8UatsK2kKOBe1fofJVCG1ZIEzRGGIn+8veGI35VXgqsxzU2sJhAUVMeUzwwKpZHkwjCogbiYyt/vitrhJeCRZxcBJoOw24hd6fWZ19gDHBKAHq4wF4PrkbnmKXzmxQL7Yft63CruUPHvMuz5N+utffur6xwEOVJWDYlDuyqkUSCgg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JHb/Qhzl++7p0FDhRxjMnVPARnHnp8i7f+kC+UYCrNU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qIuwmS2obg1ymnP0Gx3G9tJyPCxiumyrXw8UjIlCFJtAR6vAT2Xd5oXYA8zwvUz7INj0IHh0b6Vcj+kumcT2m5mnb45dMO5vW5t5jBk9qZJLTW8YOraomLbMYNbOcXnZtwd5tTYU5tGW7LzBtENQ4rehrort9Bo+XwOPT+kuMZZpjvBFs1NRzFHxM8HCq+qrUin2cc4y1oxMaFDIaEQ0+Ja8dh3AYrO4tk5RkwIsKQP+LUISZ3r1Iubzc7CtODPC4CNM0JgspMz2L2fEB39BUR/zHVY92vl+29RUBKNM47JUIAIAN0lO3Kiaaicp9Tfm2/73R8hxrs60InmMiPAw7xXQ/WzzXLa0lH/kW0BP4WFZovjNcfgYlBrVYfo34WqHotTXvz1ffxq1yuEF7t7/oJhrPaHF9g75", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JI2ToW8gqXKRMlOP1mSUzwbA4X9qRPv3/51bkD1GZdw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c3wKUx5cFxrfZ/orIH4RTtdDDPBeQBJQXwGUdFnH678a0lAJ1tX/WEJtYgsPn+cmAEsE24b4XIMMNC5fFOc4J86HgeAOL7mhh7lwkWSkli2LzuT9aq7w/C2x2t6mru+G3LGYv1Ok0rAG8s2Z+n5tLbAvsJYYClkuvV6s/yIhi44jPIBQ3uOHU8j3dySArvEmnfg7vhFSqoO1k915AGLqFrI1k2FotO+5uptHC91e2ZUvfQ3AIgthd4SGNg50KswKS9P3Ju4rS21WPqIG66MXWlLgfQzZhQqItVf+6lfAdvi03HXpk0kRyGfiXzWFYmJBM3ELq4rG9KiA7Mu8XOGbLZlno3bJ3BFdB+Xc1zIakyv83lhLNnHZXG0nOIshKiTUp4HK0MUlhhP04TZwwQ0I6/R/DCaodmg7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JI46arZjMxnAhfhWrafkrOJ4YD9ivYtBgiGjtnJKKCM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0D2fehg2VYHZMPQM1ZxIznCRwqGP+igwsNHvibt0800VfSeA6Kl+/AgaJMbrQQZp0ivBkCu9qUVYihBRy/VFIOQ4m2IOZnor+nI2lm9OGeF2UX5AeP/QO+9pJThpHm9EZNaRD3xSaO7hDE9LOq+bAB86ZPuss8dazM9oxlGJhDrTDwwtc9LooAPSx1UvMfhelYsR5KNW1YXLUfjAGx3dG1etiCl8dPxC7WO14/pqql28YA46sTiqC8xv2yf7lSKOibdTcBVeGis1WIoGC7aBDcEkj1tDXGEFwXUlLewNqpyLJ7RBYJ1ktC8KwP3Lxp2H0kLnWmxSXfKSNLF2jjxHN6NSmz5PX7x0KUcnjCfiNADgmlX2fPCVZMVwp8tpz7RIbpDLy5u9lWWIL3Rbuv1P4XZPRQIOT0QX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JJmaUf/NSqzPA3RwPLHtgZNQTj8JfvS2i2fANKZU6FU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eDazMHGaPada5mM+tXJ2mGwwPcVfmWrlreMfqD+aZU0waEXl1EKxjKZuyjKN/i35cBWADlZ0QMLy/Ytz1POOyPWTOr6O0mWRVafKg3GR5pOCgUHD6u70tldGfRthF4128zXko4Ja0qzW+XntKC9l1JeLQJJR7H9Nim9/WoqCqldcpCfJQbQ2lLYEdyV52foD3Ea2rLk1dsuEIZ6h5VWuHR6LN5wT4JStQrixRItlCXMAbkymzPXEIIAW5lI1ClTP9F328yybFO366bvvidAFGcL9LMOjF3OkZMjEl1OAZuwDx1DXNbi/Wlc/kH0WUQiXZmdoxPIP4HLLUPh5NgUD7Cx2aJXHN2Lzebs9yKezfS4ZrZCbbPMOEdLHFSDCjR39Nk7O7ReXE5byActEN1lIGMFr+S75jwe2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JJvp8/PsWDfAMzkilgSd2aVOtIQTtmQDP4NQ+JNi+Ww", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qmPXpIaTu/zu9qNzEgBEndy0Bd7Qr8Vx/2UDTtdva8HUBect94SCsnohZH8iUxcW+yczjwmSidbLxEoRXJpMzXfSCxo5s+Ye51BnmpyoLs1aAAv3lBZXAohWhsIIxxWufgpPGu0BahVn1pF+Kj0s3j+hQ2OluNww4S5BmQFEfl0x/UiEWcCzPAQCb9vbHUfTHohVAP/lHKTxP5+sr6tLmMjapqPKa7a+UYJuJe7uT7U7347IFsZFBOl+W56taTRrSjqvd1PNj+HmK4tuSKYM2SKAsyhm7v0VFrBb99AiK57LHRR3+40asLP2J25dSieRF1B/z9l18qe51qTdWGLr4P6pjkADjWpcDa0HCWXQiiggNdHxogJd2MumXsF9OCgjj9wpIcbi/iGUn0vHHVqlW6BHMrb0cxiC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JLYtX1iZTPfobOjrmUlN5HR9e8OPOgBzDqlUguGzzug", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GNLGRA3VNhu+1pUB3EjVYtyN2TGWWajYGuNlfd3h/TMjk5bjRiLlXQ/ZFsnDSUABhQXqUIXAchCyA41TQLebmwmoISowm7NskEXHulrbxyIEtm/D9y4ruWv6XgFU0Wf7jrc6xLqHTcTqpt9+607IufkzKgsl+kcguwrXR2WZBbAJOZay6YgxF70yrxcw7WuoDS1deiU4IP4jvqRDI3VNIEN/dVK381ErZFXKm/NS3mL4LgXCmUL9E9c3PuYGxH9R2r5t6aXHA3wDJdI72ZQ1EKMA403MQN7Ko7dtb2n1oWNF88c/ibXZ5E8AtAe4QsMj6yRu4dxDGJBagzLNV7guggLPQdBcREoAZ8rINjaeGX04PVqXn+v6hmFZHHfBymkkwWbwuoE4U7wHxAsO73cYh9DLeeng2mBb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JMrfD4j3xu6wyiOy/aCSN+wa9OLNTjNulqv7sLkwmIM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NouETa4p/UwkUDcshPRmxjlviokpAsu/kVX0Lq+BUj16EYKK3ZCZ3WMPixEysEQl6QQiyZvdMJ/EFebRvG8KvYixvKtWzfxwKLhcWIzH0WGWTV8ZoK0gCFoI6qe9WoQdkKMmV9A/msHHZPOp4ByAbN8h6mB5Ur2cGMUevNOT9UJFOgmaIbv59JzWyUf7c5YL54GpxLn/ThildPxkPQyS8LtjmHFVVzrwXUjK31XKnkHQfrr6lGca1x8DDBiygE/pkPPM/2Lj/APYR9qQLw2Lha1ZAIDJD7belhZsgLVFmn9iD07KEVC1WWfg7770wL12mVVKb1pl9YiQmd6j/qzfXX079RZDi/79SMWT/B8EuH0MZbpbwecjPm0v+47qORXdz/0pRqCkxQhfpnLupkXdoNqQEEzH02Wa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JN0jUs1LWwzFWKB2AvlcDyFQB6ZD0UJeufLpmuDVAhA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QzN191RiQ8tR7ld+jTw4y7hEeQz6czghBKebYfpe6fUjDm5GGkIxVAd44LxKtfvqNxWvCrBAdl0cqsPm7asq48DbNF1ZC6XAH8fhVTcJJeS0jAQ9F5APnknFYHProP0qEyICXoj/kJjvUS5XuZUWKa1IKjXYHPZVoh+eBPqSdFmfa+siGoYRPTe2kZtN8OMMBa00Oeuz5LXJda3lO0b0mG/xUc7kX3ZEtkBRnLuORuzSao68lmE0G0ErViENT9yaPZ2wYYjI3ClDKCVLxz2m7OraAHVcwMZ2Z2Cl/iPEdspDRG1eJNMZbIv4WtJZsbIbqSjEySq0PiEupH76KV8Q7xb97RpNuSP5jbOQpoI84fSMrVl4cRq1dv7tTC/hp2z7NWqy/5dLIXd/oQtnplQRZHCVYW76HKNd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JO+nGeQXAkFofKmS8yiAE4HrIhPxPf+JWBafgp1qtGo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SXTTEluhgBcZ8slPXCxT5tEdF1lR9XFd2VJnIuF7PZUQ8EvjM6JZurRMh7QwDtIaPwpk/cX0jYIV0qzuum2y0Itmfl6M6JA+uRmaMb87ljqjLuRCOihn/Euyii3mE6wlr3bSW8ZBs8XHE8WY10kN8p/BDRZG6bC2lN8Zdsj9dXxmmmWj28GOkbcJKxcoHZaHtcZYuwO2ukZUvD8K/yPJ8hlbLKJIIlmfG/X+18LJG2nJmFlPEKk1wLmduujy4vRhs0LqWHPB810MlrzJlGeDbS0D27/H0pZSk/qup9PlmKepGOu+cgElJ9nn2nFLigwBbzzy/b+a1vZrUQh5GISe83FF/qLC7YucTmN0Ly2tA7WcgiB67BtWb6USfGyjRFOJ9Kd5DievJ8GZRa4X3us+yXi0X8FOwbeO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JS2W8xTbKKdzmwxaBrZ5DHHjSXZQWtthplodUQ1snlY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m724Bg/WuZ+4PYDm5EGEs4HoWzYEPbnPSI5E/dpkbKPwbk3LiJfnfZZNY8l23KpDnrE7iRpJ8NqDZE4Q89gefQt3a8SL+b0LJzSiAMtPbNus+KxWx6oBKp4SoSQ+OwDBAdY5NMreyfUykmKzI8+4xUOVUeUjaKVylr+QYya0HzeAAz9EsrIf9ESbXLbCz6ImqZWq372ueGBds1jGeW1RphwNvU7IBlo3nnyUxmP37nJ9Zej3JP4LHieM+ScIysNfkVg8/U/t3lljjeIS8yyjr6h2IHj0poDEitkzJgUSSIdxrNPi1Yg7k9r2dZyfPLALwm2jw9YR879Bgjavf6Ll3I0zwkwIqhKu3AgVoKXQ5bjfu3Db8cfLP/d+80LAYw4NCuPm0jwoVdA9vXR596xeLtIAb5tCKeqB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JS61Xcav0ASq1pyAC5bW5/f1AIJS7g6L6jIYGGq2BZ4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "O0PftVT9STbLaZGE0X7XJvLXVTNQyg1t8mAiN8VGM6MVV//+zh0dwwGpoMhV5LhBZUFXMQzyelNV3y7RtW8iDE+NyuNz1IqMwHKEY0RrO8FSz6quz3SiTaYsZspMOZpoiobTVHQKMjOnvQke8GnJcXLHVrQCF/uy0Ylt4XGsUWRE6ZJqQ3aCgWYV2SPP1jbZTsrDLA9W4Ge/cDgW5Yuv82n34ZhjXqp4P9lu3D59NqkpXvxP2IkvagbwipgAUqcohoyqGS1Ho7liuuphi9GjwTdZqVS5T4HfI6HXfFq+tcxBHA03wiL/O7jsbTVPLdqw3T6MTt70hJD45+by6l+D+LgFm326Wx8gvWJi/EzEvpf55e8i0+xUkGrecpKYL3Oh0uq5CYGPf3u02TGY8UZiynUriceZ0f3M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JTTM6b83HI5+k80O9Obm+5WRStMBY65sLyrHADrOs7s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HLDkNZ6dPzarl3Nmb5L1rdx+omwGM+bQNVssUQ9QGtIhN2Mddyv6O5iYHESgmjEUz0xaSWqhVRjgQL/nGQ0w+YqdrCEHBcFNejXptAP8GgTzJ3n7AiuPGgSmC2BYAAsjcsUcafnmdDqI5LLIy8n7hqBGVQ9Vye9izAg6FU9huaqCE3a6s/0ihkVVLezOiX8GtgD1LC5vgVMogKGX2dwYlDcEdOafBlX3NXxMwtPnZ7mKj6lkErrC+8+EGkPxBTrNujlvkZqD2GIBt48jBnyS+UF19ii8hslrt6PHkvod8G72iRozytp2xw4YEv/okmBSxvXcyg3a4wPGb/CHPBx58Zkt1aZLOjy+kuT0DF9pKOZZZA21TTHPNJGsULPep1lxQ90sjSop4W/bUKODv7XinrJXcl9pF/3h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JTZ4vdiAqs3D/WpkyHbD6+CXNqOZ459585sbk4FUDBw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i0ZUO2GKIl/UUfsvqllcznqqpwloo1O070t03DlyjiR+WtJ9gEdz3NenoHVq693VM9y7GOw0sxjRkNJcrqgyDA+GiMncFKXGX4MqQDmImnmnF8WK3LA0EXq5mCvc7HfoIM2uub4aQePsTwcWjfXiM64kF0SgVOtkr7hGyLind538No6lKlqbc9jKN8pGkTMrajgypeVUJvaynFg7SznetsUX6OiQH587JMRay96uJu36tZJKe8YTcMYZnHoB0c/yD4AM5ADKdrhUAncu4vQHJIWmNtFARBk8OrEtI2s8qbwcPL3Wz6+/Tl/j2TbPcynauIB/Iav+NB/MQQi09LkolbeHMg7n/jlEFIm2XmbG0yYq0ctj0APjUaiXDhrHFV6UgaLuY8r4BqS1Ey1mlrjf8CPbhWTVi+z1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JThfJ34r1UrL3AyJSVIcnSCVNbjs2hp7KVXYo4SiLbc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Xfgiv0JV/7RnTRJ4fKUmQrKNCvkWjw5ThGx1QK0nvqhvpOWgUb7CDHfhK9oc7X/3ycn8nlVWg+CC/63Qjvtsvx0JNkTOfTv/MZJjAsn/4s/tIE6WDPhsnm0TZGhMW2bkiwsgIM3WV6r58eV8wUJRImf870h7WRnXf2qdplo1m2m1k17qkA7Moygi0xA6w5+CDsDELaxHT8aDqv/CinIhe0WjD0iMRED+B353GM/B+PlWFSpO9AlKbdhu/8GA56Uhx5cxs0gHBfaxU3Cj+4nImg452/w3flFXybb3m1y70qH5LsiQkcShln/Nh4vbtBLDEhBI9UasRcryCtFn+Z0hUFtJ7BBP7DVkrpP5Y/p18Hnfqmb5WGL6ltp062HdNHRmJx8juFjx0wOGYAPAFbd8P5VKHqj/Sfw5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JVNMDJLR/d9L5CmI9/5lNOY4yQN40wX0QibZe/shAIE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "G6rjucrhjNrWGoRoYYJun8EGB0ZZP3QAkdRRdiqti2TvrQ8ik7UwcQ1sYORpCPxtnfbrm8zb2tgF3pl3g493lJfLHcf7bLZVt+WSz1+xFHL9kORzmg0n3bNj5chxqrdGVRLfAs3P7ZZvcxybhMQxo9Efpl+xLQT9JPBU9T4tB8ECFNcHSwBKn9hdy8lA1NOcaWbHnc/AI6xKExFlvkOc9FQ74Yd/ez0jq+zhD6xa5Id4zhNfdF6tWwRc4NV8QQWZWcC5fS2U3EuY7dj7Li66n0EWIKoLB58BjS0xhMM37k1nYVI6m/M1G1uxH3J60I1X11+TqNLo+Nh8YEjyyMRoFSzSOmmoJvmxW0ZgBnXjDKJw7tIwjubeFQDuBdbAE8CX6I3+oKexNsIam0ShJtQZxda+vdLILPbu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JWc3PxrfE8Ri49TSmQEBHZi648Ziq0vOtY8oPo5GXGs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tHmTEmMyZlkoeFu3Bnjoi4qfLm5sAzmQa1XRE9i1f9baM7ehS6ZPt11y7FzSDrJAtLlf/iFdQCh/f0zP7dfOKPy49KqEuYD9Apf3L26itQTmgiu0rtkM9CiwfgjctbahLLifqUOH6k39nLAm0LvfnLHG0DOF67ZgkI2vo09BrM8fSt4ba+l2McK+Ca4cE7AqpI/GfKIWVD3mTcckXnMNoxFvtKb1Q3SQdvNlqawozOZpMsG2qtiGyU89RXMl8aEXlHmbTx0ZnJpqfzmekPUaVXnzdhKAI9sEZfGQq/vv95wfQw9xSHXlWY9dDWLmHTJcDb5/pSFlOwd3p/0WT/XPdVdeeU99yoyxdB0X/Cgoayk8HM7skqqtsLzyMduNND3rwv6kAfzWxfw1ukVRNRAbfb3ZmWRK+u/i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JWygJVHHTihqbuiioe4qz2KeLMjIwgCpRwDT25SX5cs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F3fP1yEyMKZILLysuRo8rPWOeoKDnqSPrMLiWxkhCR5rHstU3UheYqIDkP5mZi0WLYGKKmvHpd1wa//agGBIlD1PWVA7F2AhdlASrjuqkPd48NIqE2nWmo6HPyWVdoNORBaw11/VB+kUCvcxfRQ1O29IMGPhTEInpQN0ddmbzLZUvPLHtpiSSDJlGDVVWDKHA2NQAjzFM1AS6GDA54C9OOyzyGdMJ1YyUjK3pVO8iQlqhxJwtiXIbeAcR7NyiTnYg0Bx2ku/H8pEvM7tzQZurdsjrvLfeDM1UjJZHb6rIqNZmq6drJqvosIijZqgzVxtwNeDnBxY4CS6xZ6XifuuvLhJzBqZjqb3rcklyh4tvSkdmeLQdZ4LTjYVx4PAEU3f+wkCSkK9LsW+aNaJhbHREK4wLZv4nvrV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JYXsu+KTR3XEPdBRXtnaf3+bXzQDQAlo+a/5mmLWN5Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RGUqfIHmHZ442Jgxi+NGhNDmpPJjI5hJlt91EOS4ABTf7vo06XdnBWN5qKszoP5oRbkuoGOQSIR4QZ/g+FBG4uhBY4VO0AJuU/YYrvUGS45tij6BZucFxQPXgE9NLanQDhvMdNpxSdzAsdoMG5ucfRzX/tCHa7rY/WIzeG+cdt4Akh3tLuVwiuuPE2qgYf51JcfFdbtmbEs/mZv67+3yBgPtJxnpxboApNOu5Uh8O22Ts92pQCuT6fQnOctBKo8Iix7djl19f7B0x4d2OWursgMlONzqD0EVBkxwvjwqqICA6X7y4raNaPFMBej4I+skAPelehWxjBL1JzjgJtdE9o9yuFhzLcxcOe2JCj5Nwq5QfOFc1quyhpJ9UXxESZUhVGMzkGEBp4IEqoSoTiGfkrWsk8h24QfS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JZF9mozhi6HZ+Rqf530UX4uzS9Eo7PTqa5bzOp7MDLo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8NdSoP/l335YceoMjsLHmYrNJJ99I1/1SnxY0or9ko6yL2rKAsrX0HTToU98kAwwi6CnxPXDtx9KAsTZrsK02Cae2+oGecHTuVdYBkNlbR/ChE+rfj9efAhl7rJQ6VX1g/xBMcdMGela+QGwkrF+rqdcB8GDdsLaxFSJ++Yq4k127lhjaw3Gqi6pZP0jvEaPaDROno2N8FoWyUZ/OVyl1A0I3I8+zYyZwGWewjhv1epvZe8BY9VYMZxxIPorMeSmLVPu3t3ApxXySUMhp+f188LqOcfdtNIFQDMt6NinQKK12D7MU03oqshLRANMreMg4BIulO2bMOeW9ayu/4ATMINg7PqJk3aORbZTPR17YMdmL2dDJFkpt8mlFjg4x/IBhuulfjIO2elyfiYte2ZmY+31dedlw/c1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ja6iUAUvGoCNyZaP6AM0P0DXXTYI2QGZPWXZsYYIifk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Nx/4bNCGWNPI9/acuM31T0GArc4EauYhlEDvWZpaHdYzqpTtrbdqn6qqK3c9HnTOOQCS353RMvs8VZxvOQnHGRVd1HRpXGVkW8VUT20n0yDRItJD66Q31QQbaCY+YWI5o/XFln9xp/3yh0QVBTbMJlG4cvo5RmzsfrT6t8Wz4QZj0AUBdHKWA3/D0akWxhGaFDKS6A/LOhDDqgpOpX8FGHYDj74dlwJCaFn8EJVvkM16KOt0ypluElBRHo9M+DdisKMIjoE07gDYOFL28H+7j7Pb7/NuPoXJJdc2qzHb3UdpQ+AVNLwq03I/1246wGwHQZWk2VTwVhbLlHx+We+mqBdOODCT6V686yBbNcH6ZlGDY9jxBXdy3zBC9oIhrh/Xnqm7XS5qd4I0Qc7+wxMib45ymDdb5vnW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JacV7YxJGf/lEg599HKPEyrJladNzl07mvvk34spwsg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nCXiNJ2JhuQweD0QwOLvkuy8imayynmjzhq+xOvkxG+dXnqM+KdiSWT3IOcKZBdE6Az+T0FgFkDysA+5qKY+7e8SJR86O2HOtbNQoYlfh4qXdyi6TprsfCZcevqIH0o7v+YOHg/jKkGP6mW2ypeVhh/GqbjlTgdM5fmLmOMO1rBCgN0mFhd9qrWOs/AWdloty75CG6zFBCsBTlzvVNGcRK8pKeb7hatcagRoBiziHOS8hAxs58qc7MmhJn12LGtiztCEDoYbE3N/zXHleBaZ/9T86PmfMzDWRbuGNtZuqbPYnhE2+DeUTHVN0Llfu73Uze24Ue7YyRJmCbdUwbMtnoJIxfgChsRpmwNLi72xznjF3okJ9emmRUYFURueZgu0uLZSRTFcmcmnCSLlgUHCxU5JNZoeoU8t", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jb7wj7MUOq69tN5Y988bG3ZqZJfzA4w6oyXSj8XyPL4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xqEFiVFUOynliv5RLp1ddYLHOtLqBLSATzFwJF8MV+P/nAKTUttAqWBSchQ+F4W5SSA4T1OOnYiNiCkgfJt1/CCQ5BEmuVJ1dW6bIfX5qVYEqabyNpCzP8rN2sonC8TBqr1LKq5dJRDepEPotvFJdmlqCGl3rmLtcmIanvjdgSMQ67Nmc2I8YMS5pc1UJFT0OU2V7wGcAOM1iJbAiCYcJfdkTF/x4bub7fsgofKIbG7GUeB4qfWUT5ttKRKiSt7NRYIO4VAKYilOQDiltIXWnSrLl4/7lSiicz+3NboQ/a03//rl8CdUJ14bibGuzdAipJPpgljQeNAMSEN28obuhZScnlyQhBMqTaO06M9qy/Xt15honffyUhLVTvCK6v32wB3OmVp6ijTtmqbkQnrvEZEn98sQs+gt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jbr0EhlytGD5C73Lj9fJf+Xh8iOYkKI0rMINpiy4pD4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Hkw+Lp9BRbyKrG+522M+r5KMXWDphJjAp3xG3FYFTaQWOY408yXQfc+lBY1B18jn4CIEPnKOXHo3pkCS47c+MRU45A4ZA6NNhJBSOYykqBcl2E06zyfASkbGgY0bAsBc7xaZKMJHuAX4oE3NBc9EiXSImGXCB/qQY11BMFV6WiHusPbMSpc49ZWYKFdG+Ej937/EqiPcNi2eJWAaKvX58QEaGsMnaNtmtnMyPuXq2EHbHjijVpfBQF8iRSoaSKPRF6XVtvYCp4DfH50fW8pYwV+knr+RaFpF5VP/+dEXF3CcY8vwmjsqpeIuueEMBSDD7RMBPCSOPy9OFTphlMvKSWaio/p8WMKbwTNAEKeSXQrTx1QSzs8/w9X4nX+iT626G70EISOE+djrGqvGik/hKjZj0vTmutR6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jdf+JOfYwp7METoe/HWhqJvmCHMvPiboZiQBiAhZc+8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ou86Hh5oXw9vBBuT22Coad7ZT+Km9lsKr6jEqK9gY2qBG3/sd98pz3RwdMmhgaGuXfAuWyJTqKmW36efcFhsSurN9Kv7cklAMwUMYOksE8KOgmCk4tviuOr7Y2g8L8Tugxtnt5bgysi0LumZjbRqpZdm6YJTeNILgmQhzuMl203vgHPpA3SLcIHd5ZrAZajS2AgVNDMuC19LEPsl6ITP2GgG6eLfTh6gTRhgFe3LMbIT9X/ILe+MIKzNilvaC6ciZMnoSj13GjOxF6hBsp/ZHBthyOJA0J0fwtuz1DIQb9DW1imqyvaOBV+3bgSUvND9D2lH2k91SgxkssbqeptQXMYF7BYCMb4pkw/a8iynZ/ZYzdvvnOLy0LwHZAf+hZRwXNonVFDCv2J6/R9LdeONGQoUkJ0N8ZcC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JfRvTmSoi9n72yBx45MWAXDYaoNg2/G8heoXROId4Zs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "03/H4hQUcl6735Sg7u9fKEFRQ0ZksidewVfVbQzrIRC68ob8kXaLnccYQ1kOHhZr+cwAcUV0WZu+vqqJ1UPnNs86fJr5vJ7F+gKYPu5BslrD6GF4e0iKaiK+qxm0k+aozO963oDWyEV1VHTWCFsvOJI4jLkf969Ja/xbC37gtxG8Xxq2iAdPWMDKO7rFZyBxpr85xwnfeDejshSfE46ZGvRPpl18nqsa9pnnJhu9Y+wXEtWNH/Kuk+iDKdTYUxGhK2qhprgoT1IyUhqRISlN8BcdUrF0XXbB3El6irgzgvXl3kjUgTfYjxwnOj58RZS6Tw/KurJVxoW8dQoAvRRXDVLhBkT1XSxldfT6nCnVOFUJkqEIaLQPCm6FflBrNw/0/fURINKAjzwlUKRJtD0ZPMSTBzR8GrE8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JgGm2D2SFTnAPmJwQDIu+mS6gsQRdPAlUZWGPrX2zA4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Lh/aUcWfwWF/SWXZrbgicxuyUdJTCV7dWbcU+uyOK498mgk61kP0cJZhhp65HVAhTXdDvxYLNrVpkY38rEV5CW6GTUbMaKw9eVYmCAUDRDlJObRCbi+HXlauzqCSAX+Bep3jT/iJ7gEPdzHW+MFRsQ+sY2tmCB7uF6+63B1lFgo0sMWvMDArjFZdeMbaJfS+gDgrmocRNDufXB8tvQbKCv/JlydauAdqcOli4ckNfeYh2I1wSVAx0O+Syhanbzi7w/42YRPs8kWac1w7xZ8X4C+6YVAMb85h3s9Hdry6v58lV9VwpIAz9+HeadnXLBpEBuNGx5ySELn8yREaeVHErlToThhZ3KcV/mrU++X3HnR08zrQdc9tI19B9IsS4NWsBTDLdVnCCDnfo5KLTdWdQBdxYDbYO0+q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JjT/yXYSODjBnSrM8xaW+mSHmEgUayCWXk8IujYK7J4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "H5+CXmvrXTt+Z/m7VoWRYa3PAvZ+xEfh/tEJlw4iqa+NfeGplZ0NPkvWzoobeQyN8WCIpN3Nx//ZxDdH+mqU14V917KCUlZWtbHhj4p/JQDS8z5kJS+Yn2PWIEOQXURE4oUMQbFHiStjRx9jvmFSEwvBDORopiAXFzyAt0fkqVktYvW8YpRaWVG+I92FZPs+JKgVchyxMDM8aljz5uQyD71ZLACj3Te6Txlqk2lWFDGeZUfcCsawE+PPB8njg1CwcdKgUW+PYrxYV5+YdNUYRLiwcuCvzhrnL2PfHVQKHeGK88cFKszUSwLlhOVcbJhCKtHMHAA0q+MpSQV+BoL0Q7TcTIShyDautzr5/vEooHnijIEy278Jygh/kRe4TRMi6ES5fLqZOxSg/r5MtKDrDHS/8VmBOQvu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jk4IHXp80GIcvfqkTj7FUV7jp0p2syYoM3rSccwOAV8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lb7YKJP8UNxIkP6hdLwCaurb1kJ+SVdpgCx/Q7p4p983s4/wDhzzCVQ7W7qMhebGPLm/+qFBVBCCRwDlcaxTrJdBSpYL5GuMLH2UOESVGUcbBnrsbN9bwLHEceWhAw/jvdcpv4Pv0116URWHXuGElfJ+FuMAa5PiPgzemaCOgevkmE7GpuQDnbPLAeh3UthBO+gfY1rASbf32AklAH6JYoilqDnrJ7zWsKAkVuSWo8TV77No59FMjPoznS2oMBObnS91jmh8U2Hy5VHwe4uMpAiEA7FWf4+XDRCq5eOFqHxONxsO/decNq1p4VXulrx/LkaUl/G2wssJBSfveMhdlvUMWrB7OR/IMWcreViahQvN1NZaS32EfOBF7YxE0Dod3leIDjh0+1ihdjDWPagGRYwwBqVXLiKv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jl2NH6dLaQci4BGOWEoUdRlbAvh6HAnKJTMHEaF0sFs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zhVTViBzrULQ/nPL3tIbaSeEklQHQoJeI+FCI+TR5VqHYNP2HM/f3BkekTDEjgtoEAxDRrx16fDTMDpyu6x7CZ9jH65RGkkSdx0qefFCJOutLbye37UEt4jNZVKmr7FSgrpxutEwIauYdDoRQIs3vCD3VDrcc46scZYL2e++tqUX4/9QOmQ69Q5SsRC1Vu1OIfhJl6He6iCjJ62H5ftehaa9V0yfAUg05AOQ+DArnfy5Luhc+EMEvgMvjINFpbA1YnLP5L2H3FIiESiLgZjimOWlaP52cG9N8bkzVJfphxueGUeaEaRrJj29VmxhskYNeyTvwXUHEfhbgnJ4KtVkMqjLUA4P0yKbHkld+bFbaKwP/Fdr53ZwMKTpWPhJFHu8I2HUCmIPvuUR6xYPQPjnqLrqf4tREKpI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jl8PCJVVW74y16xX97fnNjhyMIHpOfA+DDZxgzUN7FA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pF5HZjlpKVSmkFhP8cq14vwCSYptBYadB2XphWRumuLgKqQ1smBvqYE3OKKhHgJBx85iQMcckXHLRgzHxiIGWKwS8mYrAX/pMSnAHEdNv+0DyqRiSqvaPgHPete8HgElQC/Ms0cM6LLXta6nRShRSreCKd6gX/MgboceaFBRJF7MU7qYuE9k2X8MafiOhy9u8c8ELhDYgZHi2Q2k5+cHo0g0ojWJZIl7G9iq6dgo7umcPdXPou1YBmfhbwFdGCGCiEx43qEYro9Uhfq261+/413l/EaQahs/2aazMCuaQWUxP5iSblNXYi7d82dO+4m3nL98WMhKOqRsBiYnQxbI6ZESiPNRsDYu3Mr5945fHkpgxsM9Wn1LFyBy7yz8+1JzuK8ZvEw84NAc9WUuiWG8nP3giZCY4so+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jmlr/PBq3C5dNglCxYZyZ30vAz8ZlrF3hWRQsFw8aRQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1bYgM98UVJwaMGyRQ8S/XJOuViVyc9/CiQkGKHpc2G7hSNTnGR3WfxcBP1OX8JrFrB/fQcWFB4XU7L+x+GC2dMEpOlJ6X5EilfdW2O1GQuW1eGTVehC708y7/+s5VmPZliAcaSBpCz7iURiQ1Mb7kRhtulpPdddFf0MY6skJF/vRmK8jMOC1qdEkKDg7Q+rBwErawPsiNMHa5siyT+lJOYsFXl3VXoW29tmnTlZ3T/CDCfJAwjfwA5AMaT+jryf8TfyAmFaB29w3GIfxIr2qfL3/16cvOaezJG7qABghysAoKNdP3f2j245HC8Yhz/PTRFGys5GJVHEb3vGsO2U3HXuynT/vKGiyHAWEmlxd9/ienb9HjzigcbBRgSCTjTje6tzOFHYYUQcL6bUipwTDzUPg23kOOHub", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jn8gf88qjfR/q8TsJbK6WVtzpSY/S0xI4SYndo2DrCY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1eC0K0kc3LYGXnTgUtvEWUC1WgOtUAiOhu8S/XuFbzgZq2LePT7Jb2uDJDXP+WcULcmg/f5omSLA/c6pkmm2lifugj5uGNdliNurrLYX7HYnFpEqO1aIpX+RUTo4mrozbSsfh6n1ukJ3f0+00oDtOXMw2w1JFqDdiUOqdVD98lzN6VNlspcG7IWsHcS1POCq6zSc+yvnr0bDoh97CXRCR/m49PibWf5++SIgweCtN5S/OeTA10NVERYzWukPFwiEX6HqZIyDunPDqe+W5jralHZoP00wmiSRJkIBIf3YlDQZ/3kvYhZnN4oyn4iv9iLewMMmrDa6bXBf2h0G9MrJlMaoQDJ7Q7JZU78YVbg5tzqF9ftuJi8PrWZPWGRsFqnSlhCkbgej0BBIm3N35zBvp6vCK9lmBYXV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JnchEVBQAV6qw+OxeJRlfz/taaDn+ReWg/LD2TLZWnM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ImuAmntdw0WXG8tHoCLJWnq8Ou882O0mEIQzU+H1YNAgaBxswxedQQtMi4f2BRLIaoAr/E9kGovp7CaLjRqOKDLmrdMzUbp4PuBqgTB3GMdvPdEjrbHkvbmRKVcrHk4nlhy80oPympzXLFtbX0gzOIeCz0dJ8fmD8oDByK6s6n8LZ1mpwIltnKQlC3Tgr0vsGnn4JFiDHpASzK5jdujPguqlTuAUkc3pfOoeD6gEmincuQTyMGB9kcb9Z430Q8PG4GKL1kJSYnr/6WJS7lMqwC2EfG+zvQfE3Y1iYHQMm0HTEIjb+wEgPHL/MiSqPCroSZDwzO/GtSD4MX445VkUtfQoAoiwt/iCOaWekHlIA2877MsBb4OVZmKxw/JKxdEph8xV87SJitlvRdTLg/bww6tV79P/si1r", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jo3YLv/bil6/nechVvPEw1tekhynXUJjowBFgsTJJ3I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mVKyzkoKKi4IK9MwGgvcSY0IGAw22pQCLktWJh2QGk+FzZYwilbdinap/ZprQg8XxL6Yj7gL6v7LirlUG5T/pNOM2mqrV8FhH0wFaefofuloqNJLUnhSz3OyIUgkOp3vj8adx9s/Wgwzt9V09bJ+BCBIJUfI58DxejL04EZsSl3PdbVfh8LsmR7IZet7ukw7wpv6McYx2DMi8QWyn1Hs9Jepy/nYMccK3iOc4sxXdnj/YOWjMrZS9JXdVagpStcCcBbMkwa26d3UD84tmzKO9BOuOA+oUgvMH9dBp+gir3pcn2wPodwgdl3/sBGys6A+6uNKtZ3l6qoXnuA31inY2DJ1Nbjd1BbQ3mw54JI58Uy2KoxZIz7z1CbfmqZN/Kgc02wTUCBwBYwr9lQULTm5TfKVSZ3QIEaB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JoiTuVA+qsLORo1/cNeJFV2Dp1m1VgNBh6rM/6A4vdA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KD9p+9aU3RtwiUkkPTYnkt6A499HIk2Uq3ivDCKq54tqXee4+6nYxitm77WRVpiWkQ/tnj005IBn3505ATXq39r8EVWhnh6xrSee4lE9rJGKoba10btB4mP3oHuQuuMvzP//RusY8kjebwGwmKqzhtBMjaB1jVsYdoXdiuEpMnfarlOxhqVTMT4c9Pvp1wa95tnQ8kdTNM6ol4TpVgAFwpzHD3inIVX6CnDXXx9M/4Cpa8NgcitqsYMrjoWfpB3t+40U0lzad5t+It5yq+Q+PJjJ4yr7liUgfXB6Ucu2xyN9tVataXEDLi04aTfZ/EcF7XeYB2YrvoMjwTSBwqbjOjCvrnm8xlZz3bybiszDzXxx4MF3YmQJTX3jfeW0Xo29CG4jlXFCYLuAT6c85Ii1uNFbdHL20Jq8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JoxyFjLSNH5yemPDon7Pm8QMBXL7e/zWOVZCte385MY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LuQv277nN8+lYBHStwT9y8vFhmRhWgVn+CHche4wKbgddXZ6At3SsCmWfL8K6UAuTYOsGgov8DBhS/E1cKt7nC2Vd4Gq1yoxn89D2ors42s4IVFqRbcTE5nMqcDNUO7pelwMtGE3MgeOZNbh/v/uDaxbdzSvJc7iFuAnU3ri3EqudLQoo/xgmKrbt9Jtp6Ww0Cz4WRnvLFvYJ/pg1karrucfbj/zu09wEOeXGJo/+kZyHHtRLpf3WlD2OkiUaIWwPSBvlWmfUmkI7mjDok9Fdbqfln+wvEA2r5qRYoUQ6V9qWLm1NJS36IcUsYu5xnT81GdcQYHxjTxQNbHRL5PnNUnQeeYrkbc2N5rqmJ51bCrjpOvfHicnpZbHH1CRpp91rLOE2V2F6dvSfFE44vpJz+7GzUNvxNGS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jqve+5M8hbAdUu5Q1gqUO05JDbs6ik7iDdqB58Nx0Qs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+h/RIgjoywDNKHO+GA9W+7WSM3AM2oiF4ytSV6c4nxzEw+sGPdGG0I1VzXc/kDr3z1vxax44w+8rtmC9iyKvceXhxMctMW2yGzIRjhFZEYAdk1AnyXJqFaihYKa1aTKnY70XJbOxc4DdCfNQBSrt69k26VpgoF/bdi+VGBFhQsxPT/TaPjF2kPbVAsy4ibxaf14j00W0nhqPpnSAH5ahH5GFlos9H3IRKV3Ig/FE7Y3+0kaHxXTiMzWraVPDak9QbkpgHGJkWQyCRrnUqwjgQGv5aQfqV0no9yNXTiTo7Mdnn/xbkmwx1hYfHkCTdZtgR84H7s894tauDq+1t2S9qje+yjxWWP8fWXo65UIkMCR48aORmoAfByoeKi7gZFyJuPVzzv6KEUb8hIFNAH9bQqyxUk5zn3Av", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Js20h817q/KEL5PYBASz9D+VvDGqbf5oaUWjapo4LfI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0tOmbvaKyOOLCxrdCEKLiRG5JKwdFkz+IYanQAtDIOdbEpN+/tRVyac2va8ztmyy/Vnk12hh8i27r2dn5PtL+5Zl0dA1PADwSEhT6laIWHoUpSi5yS9jSzm2yy+7Z2P/2qcMEGTZNJfrNKkNXnVZUNnMOwL41aNcHXoYkm5gx2Wt+LD3NwQh2hIpNoizk2UsO0Kppn7uiBs0E0lrBRD074iVp/U7ioyRf/DQ+0NJatfh21SWtx+Os1Q7vSfzlgp0cIMdU3UFWc/xZyTqNPF4MmVwx09y1qQRyrxnsSP70bdOxeGOOyD7sR2LcEY7jzKUrdZsVEg0MWV+nc2GkIsagjt8fCXZVR5k9Ttffs8qLqIWUChRiWWzDrM4vlHJl8XzvlU1ARACTuIA6DgRDjDAX1M5e0Cog6f8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JtGvLGTOXgqoXIZj/b/E8iaVbGCOs6jFS8sndsw0RMM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "81PYb5jjV984wIQhXpr/SFFzAHozsiIB/A8A524IquWCW9eEJXOtiBvRtRg6jeMi5gziBdQ5KJIhX2NeKi1Arb+XLC3t151alAqBmj6v36XCrWn4Zo6Rf3xEGAvF9GVNstDosX0IC5ttvCBxhmMRe7MprEl/xLxwb3GtWCk4iPhYTyrxP+bgf6mOo/2OFsyifJWyb24YTlmkFsz2j4qVS8KJYsx/XbX+XBrURAJmc6RDN1Y2Z1NQub7mAXHBzK3cMATGCPa0NLDTZYiQlaKQt39olVPxNA08SzO45Xa3+KDN1jclyC52KDPNie2azZCA+dgNs3wk6ITuWude2ImOwUWF91nrmeN1pijQ5PTAl/eTIaxjnQPJ6PYLDqVaMOcG2DpC+lt7YOCChinxFN/01xalKkLF79ag", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JtMWNO8q/9QloD1j1OD6NtPhyWyyJ66ls2SruV0nkzc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dZ1OqObLmbGVlDCKOCzLV+q6kxPbtnROgjL3eMSd67O/o5I13DXBMBbwk8w7scFV0H8hlv5T95IvTTCczeRFqzB7dHzQYxgh7GhkG4QFO3Jo8KQKZbqd4my3oaYqaCLHQjxMki2MbXzFmPs/GhIv/3NN9SShEW0uMXuzq1j/QIk3Qb9uePOg1tliGjL7BZWeNaLQoJlxMiRkySNitwShzTW1gZF76UKrVNviVu6s8qcx0tfnLWfDppJcLszEtGzOiqa+Gi3tzlhCvOJGD6VQAoYw8nmgVSerZK/NGgG61iDNgradJ5kDZkFWStlOjpDuyLvVZhuzMN2+5IkwzxN/pqgsv5DiPiJRc0NRdaFIMBbgeXooKizAgQZZs7s9YLz0tPHf65QxSuy66pD8sFipG0EFbljpKLqe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JwbW3zdk20UC0He7dGHeP27VeNVS4CezxkuPdpfxj7M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xTGiFDPmxq1G1AW/tPsz40rWIqzMFwp05bZU/KjiRA+qfAXNg/bDS1QiALslHjN2LQ16xMFv40qy+eunU1ipSPPwVmktQUSQrYd1lFDJvPnfP3R9JpEKppkoTsa+ZpYqU8W4c1aHJ/a3IKSsjwHDJkxrXI5dZDbKSzGUQVpOzZkPF2TpAOnb6sV1Hm30VaDxJ4axqnKNihYyIEzs469Nd/HcHSyR5TXBaKctVm5gyGHSwQMlXfcOXJhCUwH3YiHswvMBa0mg65G4DsjvxwYnYnEIyojxovFuutGCsE6rdqWDOF0n+4oS1PjMGKUfVfUe9DA4XKIKCssmSrQu8cun3O0Xx7/jqqzcyTS/mhypDTw0s40Q0rNurjSoUIm/Bhrjp34dSDdf1Lz7Tkae+hhmsk/BJi5Qay4/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JxVvvHuAZKtXo/he6Aj/AbaFz8relRFAPaN3jHFraW4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MKxgN27yKNJKFsSYifMGBrgdW/Czcc2Uex/PvxOArUjYbDDbC3bx87+0vjVZg58CBdVK7xwwOVVWuHqIsuCe8dFQMt04QwP2MITXXUgy7/f6JDxdcwG2aqER5RWT2AcLMXo2fB3G3rdP8TpjT8T5Fp0kKD/6QavGUAXqvnms8/GPtlJ1ISjdEa2t04v+ecyWkvpHwtLmM4FeZ21pfLK7AXdbix8q03vKVH6ku++z9o0rn/0HWKt+SQb+gUzI0lI5wigao/oqj6EmiS1llk2guAvX3GLjiAg+r6yGvf4iIxP920pjkr1U+xTQV7RZ7c52MVRIQpR0ANmXaAEGYkWPT5Jv8vJeuMjpwzdHVGYCNHUMp77WKgA8EsZ6c6BR6B/i1Z36yZxBAgvP5PXLSXXnOX54khAkNmfB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JxcWNwPGSV/cJoCF/tEvQMPjfJJsGE2hQjJz5KZd+cc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WzAj/V6AAT/TLo49BfUVsUvHCozAF9oL7+c0rHtoRCDDowQcJBpJHJvVi2EQOJska/gvTN/Jld3lue2edEN1ouw1oOD2mtp2yAK8L/7ZBcUVw80rrfQ4Xi3arexcxtENAGUeF+n5U8fY07jBn7s+Irexsq7/Zue52G2L7gVixy+7M6nR1oc++9ZzlHM4lnyvseUBkR50qxCUb9ezxDFMs1YahRIy+hwAbG9Iqx4KuLjUigulUxfV1Kee8K1KvySZjaNqBO9tLDMjt2XzTZmEDe1ZSB5GbG4PONwFODwQnYkIZukSiKscm+Znn+m+HNKpXgVYNIrsmKwXErgtkOMEshN90FVUjFIaa0KV00/DR2gUgk2U6z9+qanGHwAoSpJ55rJNZHPW1pvAQlH1fKiAY7aYNV2ndg8D", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jy4XfUVQT+U57m2sOwy8q8n5h7rt0RE/TlVPRwQLYWI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SmUntKq19Z0z3k8cnid4/QsP56F+nyFOeI+co/vH5ncJjMM8beppmK2JkNKmHnS8EQ14bzxBqqDDJSOvGYalKBg/dIFnCk1/uV0JgMhZp6KI50QKXNaiR3uBXe+ryXL3inI9eYTuFMJ0sp+Rjvza43jlOj1+LcZJrTWkuJMmJ2BaAe1z+vR+FnT4c3/7en5CBawenuBj+3r4oMhCODFGhD3JzB9zaQT4jUaqKkjwkUkOKPrk0bCtdSdO2+bSmchN9MkV/40h24zTU7+lbmnR3qpuhxYr/67JU4rMaiMIMaq2eEFBpFlF5iSpmzlslex0y3LcBLaRBkFOH0HzdPk+JJXIrTL8FC0+AnSOmBx6IM7gZsB1yGqsRbS+q73gqFNhgnwD/fiWjbwxz+Xbd+RlZG/aZOIwVuLJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JyOKLMSDr29t6ZPNAHNSx9kREUft6UDgA2wjVqdaKqI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "h47adCThMGmGTZ98+qfDSFhnrhKGyymqQ7Xc2gXw886fQYRuPK5yIxZkXcc8j9J1vXU/4zgNWIkUabSsGrqTtCI6iD7DtybPa5Y4hlRJ3Ddw4hTN0djwOrTPeMu126TsiEbdGMoMBUfwLANbOGN9hgpP0Wgy0EttDfvTGLwRNfbfBrfeN2rUbBwLaTNOqyk4/QBm7RcaMhButV7MXUmtSJh7Whrxl1IuN2bK8gZerpxUiRb7SRfyPTZB5/tXW3gO1JaJy/N0C4Q0CSsYp7m1VlRAgszD7NO0btPZTBXL+EseGBUs+5OhugTefBP+D/xTQMjsUgn3cOKP/GNyrgdeXgHsKLxAYMXtlmcY/7n1g2iNU4eBnUSrH6V4vMkVjG7qbzNeL7nu4aXLkLL+2c3ndN5/XwxHP7vw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "JyS5tccoinROHf0qM6UJTZksg7W4NxCKE7Is9k+KUJY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "plF38WIqwFwLFZyPbprL8kej3+VJVqe45i00a3KroZ9p5ljro7BVr+nJD51YGQbhYU6nqtTM8XvEc++vTNegnqjR03iOEFP8OnlGYHVC36eDjfdCNw83Rl90/aaMp8tWYnJl0r4MV31LcY8MFW3G3j8tFiAZEJzoVcgFUZGhO6ABjp/XD+Rx+P48Dta4XuWGUDX9D4ESQKJdP+T+DXwhclvYW8WLZKVt5mQyQmS/rBwTkBL3mdJtHuhwPRN1kWW83Sq5+OYTB/lHYz2sscqK86NIEw2/Gd38lrtNcKKddDXvs7UshqAPbngEXpY9U9TBWfWm2Ot1r1gyGPMzjrZZdV7gkGqACJfL9YO2k6I69B/jci6Ej8Gr/CDMDft8NR7G8+dXOHc/eSgoTmB3p10y3e8RireRCyVQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Jz1XtP3vXXavrpEyOsCKq5t1jv2o2iVixag9ECuVikE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pM6NE6KoUoduvr0/tCbBUIMIhQIDZ+VVZCdJsvZCLcXjCcCe1UtYYyO4OCWZis43JlE9Qv3kIcANkYwaxlx/I7h/3ENd7XNOAMcSdWjNp9MF9NA0XHOSdl6Hbi0C4W2w5ggq8kh5Ym/qBnbAqLKyZJY7RWxJM0Onup/J4eN/IfBLStcfX0pM9BRzJVLj0TgcsTSN43rJrtKT7GlJLDfsvNbpE06VaPMMIlHGKgu5ELNrF4FJ7udWRmjxVHeny+2tyzqFBALI8MYVQ5CNC62RfZWk32ydBwGjbbJcLDvxgccZ5mALiEXxxzebbiYfEclwPfC396JuZY6ZiNKfwFWfQl14Yi1F6BtrQEGbpf4UWDBfpdMMYBut8NLz9o98zAAcowjE1KgbOEfEK0Ia5KNiIKiCo/CMiTgS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K+vuDyXz3K58HHEKtF06GGd3TgaukTj52151gHXAe3Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pdfqWOIeGZvu/rsZQouVQd1keUts1seNPhVMZG+HtGCoXugmBKgMPCVN17xamaNaIViyNC93tzWXgTlHKLs+lb7JMcuj/dSwOx5zVbFyuV0brhYs1qkRseNCo0vlQdmbNFdBHgShsox9RSSNBDKxx4i2tl4lJlxgBej1+NsFW9Xvx+1TV8mYzwmuiUxRJxK/A5vrI6UTp5nE+HRYNAXy8fQRyDrQlitg/YeufzgsL74QoIP5ngV9nDaCDtP2jTk3Wd69zp4AG1Oif/RYRFtcON2faOdqPcUmkr7x19LvRjr0mc8r9h8iBgwBWTfeMYK8kckA06/tubbyAGHItrEARP3fUp8o3E0hIQ4HT+6v7upAB0Yf7q6OeniO31+4Z9JDzoRHl5mziS+WL37agUiKSecK56jSVSS/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K/Jo4OoUM6vyfZHEb5TeFrdAuAwrB7OsdhA88zie0rg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9GRqZqP1d4fj3SfDdTVfoIkMAvWynamtfj3kFAfCJMjt/dwqmrCtRo0thrP79ZQJMc7aVg1b4SYc5E/348ZmMAkpymZWCKTlOndc+ODXgGAKoywHvHj6tH3EzG1qazErxFB5ghQY8FV/SSU9Kh2OfS94LNuMzKSkuYY4bz+I5ox3IE6KbqiEXHk2N0kG4C9einHHU5x3ZmK/KBisFFrz98tsTAxaOIe0KWQuoJ/4Yt23xWXOoziwbHdnd43NVxsNmJtySvO7c/SgiTEcBMUG9MMui3pW+vRdkuaYfkQgWRdg0cUq73qyfXXnYoeJbGt3kK4B6/j1WnWMXB6spIiAzTnd5ieH67cfzj01PgEVJiu9t9w8GDVASgMvQX2TMeCXr7tvxF5qHjSNbOviEWeICwmUySO0snBH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K1Bk9vjyjY21TCKpJFXuTcRdVNSmPN9TX3kGfwi6H7o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OgaBXzkmKofhIuOZsxMvFLGiazTxdJXNjPLB+s54chUKRYGCSQ846wvwCPtXO0eVUSOmq80+VZ3UaWkSKpY1+Jo2VyWerRRBCweXFcoovHu9JSxlgmtC4vapf/oRwP+kdJzaS4ugUPaZhVL8NDk1RDgSTdigk/X45DrTkmttXJtW0PhYvErpDFUJExZKC6DMACABnXIWWxDQB8MHyKkRQWcQCXlBz8Co0BfP1b/rRZ+CzLVUau++zpJD34hR25ZW6TqGDIAMBZh4w19iB1NsIpTkq65vyzi5Vx99wqRcX4g3ChEVIawsCXASDg2yPPmqILt7FJHPee+T7HP+PuQpDSvwlLb/RigQTgxYwwsK37InMB2rjU+mnvpoXYm/mraYZXXvja8tjXA+gIxiW4f1SKiU3P9/4G2t", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K25F5OK0WeKIXVfpVz6RBCs/0hB4lviMc+/7whT18J4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Gs+BVfYMisEgsxdSC2ZxIr4MpRse+4bLs+rGle0aDRPNN2cbacB/MzsTrLtLppUegpXWXt24ThjWRLlm6EsGUXFAVsT8Ff+rQrWvnlQe61qvkofF/NqsHlAjsH44DWX2QlerRb56rENrBJ+ylzkmMmDKDrLkoTIQ9/ipKHkOqFXZCpQHC7ymhIJPxM7C6OA+afL3ubZ5mRQ+q2QMQzzpV4L00plz58eIogYNEdYla8cCP2ajx6zwh5zHqQEMU39gma7DhkgKbQkOsU/3r+cvGFIYyZ8Tc3id1mHIMY6cy85XNNizqBoqAy+LqM355diz5k+VSKlHqX8jD4vUVSrMBgfS59CTzyWd+cqU0MCFMMQDgKhsaAb12pfhrG3wuc4TO3/NbukJMRpImJNBqrX5UuSPqzgwFnb6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K48Ti1wyrC3dkEI+cQTzQu2KdsLq8WlA/LYxy+8f9P4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xRz9vUlj0V/21EFkapnj6XLm3MKZRgtDWYgL92MEv0CEaJMVkrNYHN9xEVS9JiX3Pb1KzN3XUvDx+3dm/uypYnoH7vlitzClhmmHXxYZ3QroX7cmJ8PH0Oaa2BiI1iCyuRnq/pQj/2higii6X1ZmaiMkJT3aOnPkREYZBQjz68BRHSvgDFTxRJA5VqUmc/0EFq7KTPqrwk2sTlqqpHjHiEXxtCp0Qw4LmyTadIL48U0ZqbeGu0nwzvp0nOYVBSGA5rbpmkBQzKfnAPwgfp8tKfr99DM3ehGn2jdBqZCTbsOG16b4GYbAZfl8b4xj70/RleUVtNgZsMQKF5uPd5gZzKk3aMQabkXZXlhzx62XD0HpexgP8axORnNkdDur7OMMiYRGFKeixDR3jLzYVVKLuTZYFX2kYXF3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K5zoHEewCcubzNl0FGvTpRTdTDUrWuAd+cDiiZqtl00", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "b4aUHICudzZg5c+N6h5YHkoBlcBzIYc9KXDb4S82DvM1wPNsAvvB5Fbx+cJdPxYysJpyawRqIF7/xP6vAeGJTu2H7BwH2/QLKx8ePS/xihRD/GVzNW1wiQ9fH81Fr4dUv34jd4633eRNo+4c4+FeKMW5p0slLvt5G4gaoxhzTpnkrolFG3lUkGYE3Hzj6AblQOLhT/TGLSvDW2VpGVt6Np/Lzs2QX7D32kHTT85w2Jg4W6/yEWuKDFCE0VZN1+i/JuWwHHjRMp0Az86iareQkOiOnP2Uf6rGtaQOMMlli69D9XfAC3xJJOXwZwDZzDcqNtvMRzd9Ch+5P6iqTyCM1DP/NycgDSXog+EQMPSAniWKffEWcR6F2tlV94rOogL7H8d97H4Z/EpD3+rpsjbgtgpsMsu3yta9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K64/H87AcXkS9W5Hgh3Bs3Pwcy6wjOBsvvVDoJsKsNY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9DlH7bEdN11BOFI8OFoWolzS4+Ou58nTXGyS3MHZTtM5aN/RYnW89bgjJrSWApKOFBdfSA4K6/1a2JaRdcjMpjTAhf+8LtzRRSktMM0cK/Ov7s0o2ZBEVld8F3M5E1/OnS02Wkiy1Fnpbi30G99fRqczds/W24gxrKCQ0vjquun1E/6iiLeA3NzzPFeBzG22dmj0l+zD8aEpfNgKy+L/RLKvwzAqqp2zYj7aER2war3v87gWslWjHiP74ZhDjGO/6855vr4mPsjGJnd0wA8VMTvB5OnLC5hyRCFhpFhe2EQVSPraXBZdyqodx57JCShkUgxnJ2kEf8g54YpoCbZa76PSs5NQvV463jipv307uYLmuSE530zYZNAycdJ3UbCnl07ltAmFulQmKF3VRQeaWbd7QI9Od4K6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K6Y3FnaR2vFNekv27HOhucxoQffHzNRUhmEH6atgDHM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "311Icryd9hLsRsm44WKqH4yyHuolSXa2B5qTOoqB+HI1rD3k8qIK/GnsemSQ2Ge1Yd3Aqq3/+FVFeVyXQsSNin26J3VkiHdoedbssMOsCQmQ/y0m3IGOK2cbxvMfYJ+bv7msj530uqjI3lRteZqBehR9Q6TW5SCJvRvzALGSB8ofyB8W4L9bUS6g888+CJn83g4D005hTUuf9DKaXrfLVeuSUVAjVPFreA7C7ssvl1J+Jgx/xN1N2Uh5yM7ZYzAJBKb8n/8v5u4QEZBN5Amfxyz6puh81OiNtR6O2ylJNxT9+8wBXoElm18GEBohzpvKWdxIuLtDpugGIQLObEpIVMKr0CowUO6MxQ8HNcaYRDqHB4juAWllRuvaK2K//Tj1UrnI9sWWF7TRlOZSo2MW2vjGABWJrmMB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K6s9mnZGISuvt1sRa1PwiLbse2at5XJv3XBmN3SnY+s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7InfGYOeGaNBz/nPClrCIFNtCN2yXph3Jw1tzFmHiR2OWz1dK+wlziN3A5OIvKBYC/nGKQPMEpCjIGM8t/thPVR7o0BnQ/kksQPXeFHnOXE3noiGr1CWpK/f9TnLTwZ65LWI+IQhfO4g6RXdTdEgPokKvTdFfPYUn+FUaDusOtWHkRS7iTVHlsv6X1HhXpf9biS4bDpTnhYNKCuXvYsus/I2bvsM3tBmlm4ub9cxh02tgc3C0BIcTDHeKqOrPuwLcGYz1YfjD5d8M5Yhbqrv7cceP9prs0YP8z4NRTHBMd1zpW9qnbK1H5dGbDeTeFGWMIHe1QFQ/fKNXskXEoLB8TjxkZYbWPZdtBFp1ghU3dwkjBcKpgZiE73VQHHN04dfON6+x0Ckd3Y9K9Tdtn8E9qzWBHXSaAo1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K6w1WN6qvsMbw7KY6UyoSvKDTtNeZfbZEgYIXjQ9A9g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7pOrhVN6JV0K5e6LqNqPc8LMjflCrEsJ4butnd4FyetUpbutQpsscQic64t/4tZXDShDGEn6XBX09Ql8jgBLrD5gjYOLmhYF/i8BvViwIZwQnBjcZf6M3rbsLTw9TedYk+HUYy4OuL8gmJ4hRbIiBlRMn5/pYB6Ae989BCg3TRkSWheXJ2ruSeORd9j39Jlw/cLpDdaCi+LQpEpPRcaQfIS4eqGey/vCTCfUUZtZLzlV+vYa4bMsiePejrHQiTfwaELMU0klasR1u6S4Ak7BC/+bO0jjV33xkBaSODF63382+slTPa9F8m9ihxj1UDxUO5Br1nfbeERiee3gIR2bFxXQgNEv9X7R6yFRb+oDB+zbNmdKby5AaYEybm8KK7GoJ04x4wCugixo7W5on4ojgrSNb2H7wQwj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K7wqkyp4flAZQA0zNXVZn5EBUcR/8FALo4UjrSgZlbc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "odkjgjlc7JuNwjhGxLx/rC+62vAxOVnNZveFCdYe+uZ6w/qWjnKYgiMlNevg11kpioHnABbSVtYYMzEuPQFgUneGKSR2Yn2AZhfqLK007VKdLnvFZVJ4a52Ly2bR8SaniJBAVavAkEPfiEEeJgrpl+SHgmoCeJg1DVbxBsfz29Gp2TvlGq9e+XgmctgCUJCKccxxyzS7lR6jMfh4F1P5n+XrjuE2ek7cYTt4LyJnn/0ibbFBS1F2dn+cBlxYh+3MoP9sY5j6gt441nPunLVvzQV9231NEt9Smjl5/HMLcOEycZYxukOY4SDvtFknXGa72fO85oOD0JsYx8DVob2jWh3pUOrRVPYTkxLxCIMlJdFqDcXfprGEmsBypnB3rblyFdU7sY0ARSOMOYiF4FwU4xenjY9Wi2Dy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K8hvwW9ZcrnoQDdcFq3NayMygK14jHwtxZSXtUh3m0s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q43+TV/SQMBEW3DUVHhWq/TOB8W6ovBqGaP+el0OreJU4DmvK+dAg4BJhu1kSX6F14LKRNM9j++8vp/mmLUySTRQmdgRl09zlvc9yeqD6JQHi5f8G8PP/rZGHVpbAX0NXcOGuhA79fogtuu1WDCUC8wMoLkhw4vOd1lDpAu7w2RyAfl7/Ci7PSEmWS1KJTm5qn2P+lNlaCjm7EUb6d9griyayrgN7U9u700BvFRSenASodiNY10yiPP4k7Mv/MkP8pHAMnwJjeufO3qIkax97HANaNjaxGyEW7OavRds2mJSWCXsWcQRAxqBRP6cKNaXlgfAliFTvdX61GrXehoc7s9pqTJ4YvCo6i9zGT/aYgx4HW5ZJlOcY8GnFniYR6D7MLjzkEwl3t8L6EFnGY8jZ6ejcPJONKpR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K8u8m9Arn00RrYybUGT1+/XTgS3OKAaNyK643pzfKHI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OtLndAKO4wd0UnogtvCyAi4cig2SiMmSQZmXyLm/inBctxq22KyXbMhk3SpGswC2FM25QpRTSVlKSRTUTQmUo9Jy0/pT6yMa71b2qFtQjctFYeo+yOI3MCi9fG5xq7gnf+FoonwYhraclr4+hzuScLbX/RKtgPo4Y9bPPGjyIP4LA7clqiNZgaMhPa8yEqgGFUG3t6hMtxeFOGw37TqhnFlnuPC3kwMbIKJkOGz2Mi1cRqNZ+pQNHwqLsPp5k1uqGtpYtzQnor5zQo+xhKgm6FvSjYI091Esb9i8Hv+te4VXB8iSbKEEg0iCHMVphN+UPGuMe0T6FlIV8HjewRyVpBXqWn7hKM+kGOthD8p75DxYPcf4AOe29cU+tcH/H48fqM+2HDhqgAnN0L5JJA/Cch1abvVg+2gw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "K9DlbKmwNAXy5fXwJdVJkA7gxiZk3Sb9JNWxXsyq7hA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y2nftDi6KHs3OZgWo0xqpbrd/TArh1bSfFnjhr/d0/CY6Zld/t/UJ3N83AMvCbejM4Uqrng7Diu1U2hxYLRbrNJj1p9hD783xbbEDDAeeA/BS0D5gjlJxDhhk+GsH9KQAZd01LCdPWe7FtKyHwKHtUxHRTtMd09R5xpN6DTKw9155pMkBqjvbuCbAF19MstM+JlAYGVKKz5ZDmAtwb9DyJYqBcwd8AOBRjmqnEqLYvpP6L5ZoS4h7aTLmOAGmhqnH9vdGsSqQRJVX61IIU60+22gIFKnWvQvggSb3BxkK6uNCzpUJ0yDpeGrnQwx01MfWHMSnn1Bq16r7sgj1NiAJ5JyxS0jwcwbVRnCcxOgRhN+FYH94soGWmmfHsVr9c01TyEYNepBJkZ8BC7pyRngaqp1Vq1uhxPZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KAlA7sSMAfDAyMfsFSbwNu6XP1zR7xpGoxbVEOmm4/w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "npaxII1zZ/MVNFYG2EL2jJpGB0GzJgRQNle7EBq8lWuPw5gQxYS7GJ5NfdleA5nq+iojkY/8PWyBRH1ghMo5FuXoC/bys32wbaN9kG947Mahkgm6mltcHJC9izqXwEmvEvrXk6oKdnxd0evAY4mElVUyB42/nzab7EmkGJqzd5iS8fblxEVna8hAUeXOg7XTb+2gIh2l3y0Ic3VzteuHcJrWnolg8Q4LrmTqEtWNnGJfRJqk3cseHIwWrgSiQ66RbVChXIfmHBbES9V4gOlgaO/qqO5QhOpu9dRMWR3/wgx5P6UomjBm38XaKaOvd6srFV8C25XaoOjfPA1o22ZL5ZsSgAJaKgAP7K+fqlO9hFnm7JpvI5nrlgbS4RR2seNGJ5qx88vG7pqjkHHe+kdNCpJk8IZiA/Bx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KCo+UiwNwmS3aRGxpfxjoNYWuHIC6gd1FO9Hw2NdXXI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o967ahIih6LUIIdBoYkDKwodABdCufPi+oABpi2HFYrUllYuTTfnHS6iDUE80VYnqsxsFEFclmedNEDzn2mK2C2WRjIH/JQ5c6nIr9J1ewjkAXVNNnfrylLL1O9dVqKK9I6dAo7LIBpfDhzwdD1eIsoe7qoS5pRHaB3NY95Zcs8k8WVMqMYHNb9ZwcBAT6+G4v6V7s51AUwp5PG7o3RQd/At1O/mKzfP8VgamPIXayZ8mYdgewm428tnjsjiQL4wfwxkNakpHpAT7Xg0nBzkCEuACZi3q/qW4VrMfQL6sT87iR02rpnQeogtcMi7qRuEyj2hHT0HlMgnLHlhuYwP8kbO3qI3nmLbtfQHi2YTTdovx5BZxV6Pw3yiURu/hCEbsF8wfhTVuVOaaa+UMVEQynLBZFWh1MEr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KEDrFC3lfU0j98xymWLs8jSkcmwAa5BCWLr4+LsZaec", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rTvV4bw+xtak2HeZVWa0r7xLfpeORWAVReHSlP1NtojlK7fvzL7wJx2wr/5l0Ys8oL1tolMliArYulRLKWh9wxlydb6yj7AaiqopJd1hs6s3LhD9HbAa9Slx8QEvFsoDheIqlE5eGKI85qJgSFREJQh0LeOsZSi9PeGF2enWpAItDXkEWnSk79aatLOX9r4tCyoZ4B6peO1Fjma09IVeG+YsDruQwS9Me+xtLASJCKYQDSOcxMNMOYU/EKXOXj1A2NyhW5GlNAJLH3j6L4cprpWtlO0kwXVxVxBaT/IuOjN5Dmg88lDVwwy270CCD/x+TgxJzb7Qa2+pr0gy6vCjGUV3jsENYYOSjDp7EJG7MoOmQiijBL2AuVCpKa1eB4putm3P+z1fBaTc731G4dkx7BHs5m9UZEh3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KIUGE7/slpbF7CRTQt2YGHSDgcm8zYHYmyyA+KgeBP8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ideLAwiE3VEFGF2FX3NGzV4D70kaSwcw55fPuO1Zg/Rijqy68xRYik4p23KNrVvS5XJf6PX4nqof+IbB4ODkW3TwEvJ0DqOUDeV+I65Fpo9UumeKN4dpnih7nXjBxJH1RD/rw1ts31/RgMmnOhaQFm/qI/LryFmDBilh4MlsO7QffzdhZdqPTNNIH1CjrfAjSwidJumkR3TZ1VZZ5rZzrdNJTtjTXUeP+K4AY19rxXs+0+uDOONw7xZ/PYLA/G7yfvQ4RykT6QAK3YhkJNHtTVhipcYLl5aDiD7M54uVRL1ktE9KS5TkjaR5/6ThLYUOrp21Zc+q59RhG5JvsyW5y9s6vXVkKdjqWZ/VrFpCW3GaKUOsnKe88Gg94Slzo7Ok3OaFGEbXgSKqx8V485gDYSTicI3euSfo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KJPdDSpffvy2FzNIn+oCY7c5uABLFj7vCCHQz/nlfUI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "p+ktm8XjiWJUn6LRfJRahCWd9rlUkIYOEOWycAdY3MpfZkP8TjhuOkBWmNXK+EGB4hAibpZerRkct00CizFrfW+Jwsd4SbfzJaLaWUZEJgovje1BW544VD/+NtncFkz6R/+C8uIN72lzUwqX0SVW29ONHx0SsuzuaT0MavsneqXQNYiGSDijAsiiOy2NmhzyHensO5Y8bJx/Z3bGVOcuMVNyBlWPly1m0pece8UnVw9dnr/PCjro/JS2wYs3ZaqfKM6kj+m22rryUZ0ukn0i/L9iAXA09HW8sWjxVTF6ASSbCF76df+5m6ayK92GegiTIvtvIOJ+kPkWt083SjuZ2NxF/H86mzV7fevhFIAtNEHh4zzgEZinYYkpKOGhm3ytA7+OdZZ7nVfVm9uMwh7bLo0y8t44pLzG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KJWyxshkGMsnaZm6VJhJDjvNvDfEIVCKng7P1ORLSCI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bVrUgfgPXLR7GGBRyEqlrz98W9vk8AYFWKgOSrAgq+r634+1fEhjZ9jQLfLfwpzov/FpgCHSUcP7ZAe4FiUuNAMC0FJOdfkfOTZnXZbE6PwS2S+dOTOUZsYaT273zo97QjgMsExVTwsaIcuJ6Qqdhcm1gg26BOK5BC97EZEr8X4xcqOM/tNC8YUE89RVuQnc7pDzFcpuadkYsqTTZRYIm5wLtPd3VI8UmeBSOcbK9+ZymxDSy5J2GeKFE5rk5Q2O+Mp1ozbPhCvcee9gBqDvoAmISZLWHy+hw1hWFwvU0W2XAcl8R2aPUcqvzBfR6NUIVsqg6MZAsx7jHxNcLT48LtRkVpjPu6eZDe/+4AWbM1OUqquc4vnbncemXgxEBzzNs8mvM98zUzk3CKdIYupa2g7fPn67+5qh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KK9wmNj4QVyiR1KUBDZtughDi4B4Bw3unRsYjKE0XE0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mbnh4hNMtjq58p6y0qepEyx94pkHfRaxeJWKT5z8Z+yoELOs4HtT8XwLGfDeiSHdXTCld8Jbr2gZbMDG0ncTIv6nFNh4Wj1Vyg3S6bWB+gCHIdq6EA/tdsSnWL5KRFhO61IsEyxH6d2Z1ScSKr1RbJ5sJU2E6zvWXbv9O/Fdu8g/b/deI1WgenfTwuY/lJyk76JaxGr9J2njL5aWmRfvkNn6TJdqLngQR19BlJZe6bq4dN4K+9llNiXVDxykcNYp57k1q9sBppP2qEpzzn6dXc1QOO5wgI8FhrDmUoRQ8bZ1q5L+GleZHLujZ/wIpqhYFJXa9cEqjW7nucd9QjWmqG0PSROsYDDM2da+jO6CB0hBO9XCUbhfI6kMms0AxtxUd6dvHfneiXY0P3ErMUN/hnJoQut28IO8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KN06c2wlTZE/0D0sfwxFAlJoPbc+sNdzDiqbE57ZM2Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RhMKC6ywOXWkAj6YXkZyzN9t/T2UErgT+Csl5tN79BDmXRoAarGz/rSZWu5mZXe2PPrUs0YpxU5s7EGtEuV8WfnGHeWYgA/iksFKtUJuEQ0S2eTlQErXsaUqHQD4nPhe8J12IGyYxRsyO3YXLrGVER1VIqD7KJ0j6f0vrdGCAC56Iskts9LW+QTmxLGOUgNbmZr+wmYUlLzApcZOZeuJ6QxjekETijSWDjWzI59ZQ6a5wG5OAdKmN/bv3AxJUJFo9c4wCoE1s6ySqYxVoQqRKfuLk3dwThOr6d1FzLY3Io9fYVGfDjCSszBJ+bHAODz2pOLaCdiTawNBmMnB3//h7p2Q8p3xuVRiBwcmW24XLRnS5eSNMz0qadmD95w0z8/YPOIgOGcrnDjK8AEKgRIpMn3PGwATa4lU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KP2w4H31suRjAs/uAWKnnb5nSqU24ny5IZ4oLKwihTs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i2eZq5PELyqJLiaWIPYXt4zAXLwf/OVT+jb4plYBzT7Jjt8IlOBJBjtLwSiDWLWzqtEyAocHC7DxOeb1fpB7S8Azrz/a6aU5pv4Gc+aH+mAShWQ45Je9fIsiRNvcjZH1AV0erakrZ5Pf2ytqaHQ4I0WBCJLhy7NdnmuhF2ErI2HcRzZY0kYqJDXMn4MjsbiooKjfndcVwfS91O/LQ3h0FnP3p7iqakL/75Nvw72O/r2wXRUiLzuWlWuSzySSSEpdlPfpWNZ2S429bIsUzA0VBp3uv0ensqjat1yltZy1ntQWzGU1mlYSmJ/uSA5qCpA0gERPdoOj0zi+FBN0kKG0X8EWJH7ZMMZlt8xGh9t1AwV1qeQBFp9+OeT4xvCamwKyILJYSC+lYph8jtA3qyvykfK9yTplFtEP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KPWdGCBVWeW12IF0UlXtn5QWuew7y8xYsgoCQ+m+GaU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lBC4OHmBZRkhIygrY3OV+f9eDOTJygoW3LDdlDh9iRRAoLqSkabCbENiFN03USrdwjhl2gahRWhaQV9XWcKMZfVwL1qhe10V8RKhKf5+OytiGajV3Xtx+fGo4h2GfIeVeldYbvlzlskT0U5FdvXtZwv0ZNtDiXg4yd2Y2a7VFNOF4ZJMV99fInm/3hW3ETsWC0VujbIEVzqGyDh7I7SiE8LQ7/x5aIVXRfBA/HUsWeDEHGnzrIp31SYFCmi7sMzysSsdV5Mgci54SRQw1xqe5fyp6jYy81FEOK4U98Bqa8JsKjvwhUMWXI9iN+0cEa1cl9M2l5cvLPG4R7ZWxIBRBwEzVYdqKK/pejO7hCBCoDxFB8RUEciJVLwKNq3IJOKwD7EI8Atd7FcjEcVMSwTTlBiVTYnrRNyZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KPkUEVhoLhd5yzuRTJDZCAhT+ebw3NNg5qJK73e1HGc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ISAHfVF5FUEARz87gTJqoY+uIrys2C+tSI/tDtLjEodRnvY1ZXen+XQTZ8MHzgf/5vLbKsOycD5QsQVDTqXf94ylP56er/QNrd80vI8nYwGvZBKnVe2JwtP+wMs5NM5RqyJ41TPPeRUGUWoU8qt+nIPOUFuAkM05mqtE8zvOWuFGfPEsKOS1fSxMSU3au3kZjKjMYcZDVn8LQ7vQZpLn4zQUuSZ2UYpUeDFXmGLrU0paNiZRCN5fq1+O9mfxnfU7UI0jd8P7RbydvK27U9/DQnBNm1KCMYoLJhOaqWfb6maSguA7Lw5+WgTKs988esJ+Q43n7EgORYIrIdpmSD5f4dzUpU0T13PoY2Ro5lu9jq4D+gWo9wjm9iZ7R6hEiSNiV94e5mfA7AdVX/9ySbtNxvqHPX8k3HXF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KQXh7d6mqk84YjI4EBdb0jF/TbEvQvTTQUJRaJXfwY4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mzUgzqhjW4r3a0U6IHcZa1O1KrQQnrZ9K2laSSr/RXhaVHYQs0lvcyz9iYOiotGyn7q8JBgFtLm9GKg5G2gO3cEFV5QNk2cadtDUkgAJxNwdoyBcv7gjm4dGNiv6JtFFUG/okzGTp8qObnJsja6J5nG2OiqgebguVPat53HmGYvKDtIo93VsiC2mQ0AXqPIYeaupcvqtJx15XS4KGRs70QBkUPer5/IQd9weVvOA9qVfI5YO1l02NnsCdy9bM9Hv8wSCOi6hEnYgC88042pU+m3aQOwlzLZuNOqMUBYflc5Kog1IvBUpaV/K0FYLTZyofukhze68UZXvgcLpb8v9tk31i7hJIbV03TOQSLREQ+QX+iWhMnppppPqLidQmGelg+dngNtKifBZvtGmLwBJCGrqATv7zmwX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KSag6R7cYKK5SXE1+FDerEIC/Z1MN3ixOTNiFuTqHYo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LSQeNT+FOdq2SAMbW1kyB/RzobAYYtzM6QuFQ3vPtvS0C3kBLBAJM/OE7J8h/vvkR/1J+q3QKniqC0oGt3I6k2D3UlvcymJ/p8CFFZEGz+N6Nuy3Ot5v9aPzca0bviv0CJbQUFSP013DZcVwaFbSXsGFW9dsaugBHbAMTmoyS02cd5w7ZeuSyJ/HMhLaLTQwsrLV/2Lcwaw1cgQGIt7Z4kjTwSW0R12g/fxkk101EgNdJc+1nWfMjOitAlKgtz07PUKsVsSzgyUuIWHNigGKpbtWudxAY2Gr+xog5baEYlKfDcl94jBVrCLuiTmCDTKJZye1Oee6D699dHBZpKK5JX1M14lc5X7VjmorqqSXSPqjFQyu4N37/GBxMDoQkzaJ9YtwddSD0Uly2s+wztNkrHjHJ0GKoDdR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KUALP0wgYR8l7gKuwFgUVZ7hSPdzBLDDjtaJ79o3KDU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/rA2mX1zSLRAhL5JDiMtuKW3DlAVMsKR56pErzFZ9YQ1+h8ZQRr2tP+laD0rMaRTMGIlmETjob/4W6a0cTdluX5U276o8IGw2KYKYStzepE3ql5Vt0EQMBxqiOhMyVcIrZZvCSGHSsGudWnbki1hK+z/diS0/mxALHtT/tB4G46v9xLuaLYOad+mfwnFGHNS2psXylaNyV4W6NONV3VHo6GXi2ipi/YmWetK8FSB9ONUp+6YyKywcGbZcFl7Xv82FLYXaugDTvT05FEkAtyUwYJvDZZLMjBBfP04LPNazr1VQsbpgv+89EGRVH/KOkwTCGrcvLnm1CbXQLabIDuKdcrMx5YMMNadOstacxUWF3UASok2yIVUATChOxyGn7APsjZbWkQ+E0343z/0tA30COzt8NdoGrqU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KVh4XZWp7Ik2VtAk6sQIwkMr0wwdts4YFZ+B6gHQTa8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a+jZoEoRNRpFQ8AaymcKIynFki/BGEPn+5C1+TQL3JTKDobZpMJoai5e7yjOiFmMVjQPUyAczy2Au7r5oBpux2YI1qVeb/IqOmQBWdawxTETjPw8Y/xzlrI4Z0EK6RkIuJkZUAEz6IMDfaWPJrL1P4BP1KsxnbnxSYadD/iU6ZyLl1HcI9uKbhQlCgLFdIJmbPj/FB+lJRviqq5Wq9YU2xylRSWjH+1jqq7esTgJ6fr1EZ9U6AU/FR0a0Lg/j9nxGGZyrdUYG/y5HPr2S/8x5IlY73iejSuUiReNVVSjtpDI5Ou8/xe8Egl8+Yp8dkRW8sX36rVdpal915LghaBP+qOhZmDLWltFfnwKwjjVqmewEpscvCwBFQflabyxOK0y/RmQeEm1C4/3yUlROhOXc+wUyzfWFDhT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KWsibqbBt4w9WP+4czRec4C127QAnAZHr3Ke6KLydSE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "es6NaLSPdYQGY5H7H83gM2Pe/ljCgBmESI4pjqA006hqREYWqPcs77vj1+j9sfGCtHcyWIKqbyDgd/VEDHrD+B6DP3j1oq/EqF89nr3uMtWCh5No1d5+FojkGRSTaSa/BSk8SzTIIZv1akAQMGADE7SbAK1ffJn8Sr8bU1zO0AlHKl/0Qp4TlllDsyqAYwK8AlIZ4dwK75eblpZDE1zuKcW7wvY7DT1XIGDOu/8f03hX9cFzfQoUd32xsN/p6lB+xANT5fbn6JEr59smCGYpGnSIt/pWZwkQrhSfdxV8/b8nutaq5OWbfy6XGn7dju7j+RwCz0T04+tDP/8jd2Rcl4lSm5XH5ReXJupCI7b4DTamgcoov52sQgpfp4FESeU0tLsN+WtELV8THrPScGsUvVSNSm/r70nd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KXtp+mZs8TYJLW9dDBYpEhtH912mjgcE1NoCFM1KNe4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rkcNveAP3IDY2bIHUUbuwGoSFcvY1C27Z0flzZIy4QLEQJ0Pp/Qi7eXAPswanDRiDUgUyBAXMrjf9CwnM4xgiRu3DJG0SeUpQMb/UM9fb9uX0Kj6KPmRu7bg5hk5pip4g5u9aub6xvs4DkhC3kN1xN+WP0l4pCMGpLqmoBOiLr0fDYTMWHDy6gXupaZb8bDyUJjMIU/641Mel9aIlGhBgb1/yOcg2J7b9Nc7GvbrTLJo7wSZdC1KPGp/IA/HPZ2DdGiihVHaGibsZIa1FVBX89nEHl9j0s5jxhWy57dEL8Xg2BVpGxCXffApxW+5WQ5AuUOOWFUuGpAb+MKRovGygy04sUY4KJF38IUUE4ywRGKoxFeVg2X/N3jYzq19zq82IX9rrbYtKo7BPNRV1Jnbdy4e5pWgs2mH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KZTgwGz9R74t56pA4SBe07dvqs/hhA5cXgUlrzjO770", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i3DB7OmuuHbLygZL0M5JJbooLktngN5GgBjcFX2kA8wLVrgq9gnNe1OaPw+PBYAoWsU/VBaniE3awobjaadhaw/AMm6lgZ3+vI31JCFsLF+fvHjJNKzQ4ECedkXruMaYnj5gdXrUpy02Gxn3to8hTUeNXiOkDl7vnbVDeVeS6p1e8E3ZukP8CIycRe4NShYNGQKCRdUky7/B8JPL7A8Vg6Brj6viWoHCFf172EvG9IzxTk6sp8mBC9Eb8eYEqrrPfnZmn7/hELJRcPELwG0LO64w/sPKfZEkelT/vmVzJu7oYL9vjjtFWygV26jOg9/6I1pEZsK2JF8+BrdAWPYGIELXz9CpGORiganKfOLwizUF8NhQafHebGqEHnaDlIh0bGFivk2aHEF1n2QOhsNDt4sEB99Gs7u1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Kau3Iv4gqEbY3FWTC9Uk5bao0O1EHsXYkkxFrcKOrME", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+QYgYCYZilTd8KMran6h5pGRFlIsLjOeFSh2yUQJELFQJ9faqNy2dOgQPZGVbDCflaSyyy03wjrwURTsPlDzFcbWmc2L4K+vSUutFiybDEzdMW3dGXGxLq0vQYC/B+tmr8qfi2dWFWEqrmfiFtMXCwhDLCnQC9I7HmlghjVVDjvioO/eM1wzQevXC7RjwmtoXOb4dEGsZSoXVrZWFnjQmJc+yqb7lguQGQtp2AbonO6+n2kUkMXZaXntVKEmpNCXaxn425W1bEG9R8J8hSXGaNlXLAmgm0p323GII+/4V9sKTPP7Br9YQIkqWhpZnu692ASxNWk8Q+0T+bc8vUOgLkPSQ4ZTJf+xudx2wjSpZ9zNlqHSDu6yMJ6Eez8XCMuTAOgj1uVghayIns/kohfqI9D8/9MrqxIb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KbQHjHPF3frY53LNbPvBNboeMIYU4Ey++RFl1jX8PPo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8ZxO2bnKDimB3zkjTCWt1Q4RCutBBU/0tpzJIILZkZXEML2uV+nMT7MSDKAawN6Z0LiPoOp43Rfzu3ImjPPhmGESaA6TBybbJPPVpjqKKrB1l6GaMssTXMJ8Lk1rQtRoVKlpdZOWEw/gmvzPX91j5afT69a1VkdGkdGfk6Yt9/hZM8Fz5Xr/Gxt3ZLcOylKXFnkWS3Dtb9bjTzIyqviYvt+qE25wUHPAl5UZLI+PE/X1of8am4fOrRSsA5+2c27/1xvbunnVyeKJ3IhfFaHuT1m9vojXqktnSews4yWbMPNarCI9M25w2bI0ccosZ5LKMgTxB9Ak/vO9r7t+CJpO72ISqBBC3yXXG5qFIfrpKys/bFKZ0m03Ko6vYvooDF2ln16v948rqbN0BSZJTHEdsJQi4Nu1dndq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KbrJ1mMhdUK+0Oy2vWqq/Guw+uvsZNKJYbUC6mQMBug", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ht4Xtbzb/Tk1k9yHVpu6Wv61DG9xm/0ZxY6wreCYWaD/GKbRDkj0y1QovBFdVNxcX8vlpgUBUI+xBst+2imUzMeyZKl7Zty1bqd49zaYDG+47qOvV38qEqI5VS+Ysf0oF03zxb/xdC7DQjz5HqY0qivHJyydhyfJaMxEe//r0xJJD2+x5qHWxVQ9jFt6qYrp3Xyp94kUNh4sBX1SLo6EYg567etfn54PXB6yf9tNpCviPUwX9g+yh65g6kE6f65BtEJ4If/omOIcega9aVNbizhbO25pZeS/ARTz3DUXqNIr2qcaKe41P9AiB1ki9rZsqqASRMyKL4sJhpLJDe3sOBPERHjAPX6LbNB8KhANuFAVFRWNACXJ+2/fCfrnnVdqF0mSxRA5DQCriL1Rle5Wx18mRAekSiuF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Kc+ikBM2h4qtkYTwZb+w2544WpodWFf+qaDu9MPrpBg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sWoVBdmmuVQL9YFIdEVtRz2WdmtQBeedhtTU6CEOIH5w8IXcNMW7KojhfASBqYzY6Ki03MrZIC5KOeUh5j3VJZ1FNfvM2sg04T1v2hbqaZtc25Y/9wLFTsGBWjI/eAKWlKcQ5pp4IbP5fzWvoG2Mlz48JMc532/xSFx4Rq8pFzmw/v8Cx9fMN0Kc9thw8ZmR0330vEPVKHPVLM0rm0XW+yaclbuXW0tn6C+JWvUPQZUGF4WzPRalFT+ZMVOdr3BRJ3c6hslE1DQj89s6TxZ5Sv43xrywBvRrM5CrWlLiBfl95ZewRtY5VO7zVsxcmPfM1qjRYU43s1RHi5hWLMIB1Tkk1zCigBLPB6inRvqeR28EWF3hBvp83JlQDC/hlEfq9+chZNwplid542zV77JD/bNC2Vle+fCL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Kd9y2psQ3KN2Kq3Z3b/in5cVN60ZsLSfxyLYGjl2AOA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zL/goS2tEDMjHo5LSc9WdGvHcGfXG9xmVaVcxqU99LGTScy9TR6YjgUtHrTbGHJcmvJdn8yTz2J3SKcV4VGVcvqh5m2pz6jGZQNbX4LHmRnEecTwLbU1A11Tujlwq5r3KKsQz25J9eTrs+HMWJOYvnp5tyDYEwQqbTWWaCgydI6k9Mui2Ga+q3U+WJt/4hypnw/iEgubo0NT/xvOYo+oqIH3aAz4gwcK6F7k9FpHMByAA4ZcxGuO3zX5Io+eHj5XBFcLA8uC38iz+rwY/I0e+hKSrI4MNzm/PiSrU1qNOySIyowyojo0SeSFeBryvQN7IX7Rsa8/WQHub2gqdLim2QfMj0mk734v9D4ZOvyXJQdK2Bxn8A850VHwTcVOaskaD0ZRSiH/ReEdVKOcCCXbK5PMOta6bxxX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Kg1ElWuw3tVPN/+5w4NPPZYgiQsclkbdw30DICUgcLM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TR8tr/3Sy4U1F8d39HIre6JYf1BXxyJ07Du7z3HupRzQvHTJnEAJqcFj301N/0bwkEenQOcF5xSmtrvwSsvQ3fduD9C+xCJTyjiVL89KLJse6OxPntR6vP4CkEuEaoSkM+mexlP8AUFrGK3wxhSssFWBQlxzgq0LPZpH1hhiGZdqNPzzRig0KYJXGTftaO5ITd3gXl2MDijjblQfGSDJu8uKb1HMzBuRdjdVayLLP3RUfi92Eq2Qt4kCgg12M7tUqaVStFOmXXDOiNIG5vxEcudp3NyMPlh0bSCTBYRt0yhdL5NRu4R06UUxrHfkPaSK0B2WvGRIUYWED1l8/t0OqfpdUS/KOk2MiGaxXDGOMJ9vIQ8PXJNvcqFLETQQ0O8EQRnloPvRhXlnldKUMv3ZHt1wcLu23PGh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KgMvn2VnQHDAt9JovvBBeBOomsGDh9g3z6/R/4kezTQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VOS3nBy/RlmQBdrQKrZXo69ZKTp2UP/r7UVpY6hFzww9NQi6PzL5oIwGHpCk3ud0eCt0v5kOe3HF8m5jliCyet59Ja/4JHYTH4wZ5KIbCe1TG+ANHQdlYPklK6PdO85yVzgne9PfGAK/iTO2MyAaSR2OYuAwZLD7/oYO7DKS0dLrEbFfdiCIX4HUaL1ZzOykBxSNXoS29c57Q/pEHroXC1YA0X8LlUPxRsE8HioOBH2bT37SPm4uYvNQhXENC4o38xD0ANFPBYvibJWFizYzptmxxEwigHyw2cEjN3via6xgro2+offNTaskF8xGvweZHXLH5xhWFFTIrcP4pAPdCrzA/565HM+eTmlDMR5IGlfZaTRSkFfJfxdWKNILgUfase5wTVnBZDnmxfKC6flzh1HHiqoPvafi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KhcF+pNjP/4cysedxOoYvHrsaNAfjjKJOtJEv4oUfDc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "274qZVH+oJUoQXD6ezbDoHMRkv1XsUlF2hq7E+2Kl94D9VnMJuDEWbhCpwvmnVxOU2Hi34fjueIyvDYmCYxq4bU9BBeyH2FrAi0U7TWt6EoTPrN7Wsk379A3HQW1MBq5aeQQaFJ1ginZuooOhGOvwhXNe9LCab06feWu4jZVyul0Pyppfa05LjAqImr8VanV14T0wplrAfFPJnA6HLO0Bi6YEHIf+AcHMRbj6Zick4bE7adUGF1L1eyCpYXUh9olgqy5V90pV64XPWSYXgtMuekahm4cgooGghUZbvqx1gdChVEuJ24YnaRnnVIh+yxLhlHf7K+49hg3kWEQ1qGzhYt6MVGRMvUF9499V6F3M4OUIjs7+8ZKkDwHZ/wjGSpUmxXHrn+HiFS5za7R0XtxkOUsLWs/sWO1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KiOUgPoCtTAwXnYe7Z0EHb6OjFIq8AmWwcVE4T5yAG0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Un+YX2hj8DWGy1vW3EYOEcFFImQ89lfntHn+LgiBh3o+ZC1dtn5tGxkNrMeNRPIlrUhv+bmZAYPpc91ZsLKg5I+fuE4C2W2O9cbNVVx9vJ31IdvmpcEm3ZJlV5tsiqDTFBmX8Z/OiP5m76O7KH/pLobHZoci1ZaHrSmaSZW24oKmcaJyILFsfAvlxfKMPdQy2s9HGP7PWR68bfEWA3S50ZvXx4Obj5LUYxjdDuqhmQ2KY+RHWkXVr08ER9Q9mOKQQ7w04fSu8hSiJuoIZyk7nSZKaWqUeVgghMJcaYmEA3Mlw9jaGpIfcE5YHiiFiZqCRK7hnEDKgkin3RmYBHyVzEcOaAXYDdPKc2DfggpaIe7gVuOh3KwZoh0uPxslY5Se91Zf5+Ks/oZzryqP/cSl0bks/GwfasMq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KjVL9OORWQ6YYsCju9SzPHW1/XvEM0+604b8BRQIhI4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AfXeM/NaZJ18hmLOU5RGvAyfdiiTZHXIhSE/6czrAUUjZatKmEAqEs11LdR3QdkD+ObEqgJIYbEVV9hy7AaWnuv1fMpM0nuhYaYptUmtBpcDTmsKw+lcUwbUqB6u1iRSNQ6cmlrvfT4pPA5GCeW2BydEBwcIAs7P354QMoiAEJHFr3st0e5j3jCzlhHyeHm9PBX9637bzUM5SSN3wDm+b51gd0Hf90H0NIqQMvLEkpjMvcIKfY5ygqvhHo7p7hvQz6nJDzpoM9brKePpl3Qj3FxjSrJ9tWZvNMeGSQ3fzL9drnJ/VMePedCA8BtFugeOrh8JttX+66o5feMTa77LUJGrTsbdjbMQRby8XYe8wbsDlfEkKU/0IhcgDTxp0uMcaAhPhBmNQkhDbpZnjBV5QgAMjkD873O+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KjaAa6KFB/HUXbyVtaNMn8HzcdDaQLOWRRdQxDLLFqY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ys+1GVqwZb1vTiDC8zIjoUeHyE1tq/Stm7YWtBhTkGn2T+hCoRhLAORfcVCp7t4OVPeIxlD8cOk9snUjfdoQHYCDTnfqgeM3SRG2bZxvslpQJaVbB6uDfqvf9dH74a27wt37hwOgNrOHjtLV69iUeRozsBBFfnhd1RPiLxiiSVCs5/O7RqK15plD8lE8jel90eYyU8okKk7xLYQ7OtG65VSI/yLXwrHMVhFd0n083ZqzKTuFMcPJzJmAMvwiMH1Eiz2K5n7l1Qsf+3BNcNcrlpNZqpMooryJ78hEMPUgFna63ZqRuqFAgpuy+Vdr248zKUteXKvweEl46vgPDAv5pjxHeJRIxz1cl349Xj+m89wIq7jXhtj0s3315Q+KBoP9krMDf7z/l01bekXJCK/X+bFLnoWDQzGj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KjnkCBYSJQuIINk5LWOI2rbFw33lqtzDUtt07jggMNU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VYp6intSDgsqC1xAvfusEA481L0SH1Np6IJ9OSkDV0mqhJZ2s7iLTkSE8AZcrX5OvvZwqkdmAIRh29SJMp8qRlf0DqkER0dlQuZ37m302AIrD+6S2ifHlysmxXmpWGGj1bssV0XourhEtkWuFmaMrRpGizQOg7HhD4xKIJg5vEqqSz9+qrUyTIWV1Qkb0mNmwvPrXwXKUmigVxob7IkdFH/SsSbptqebJUatF2Bfgndpya+yRuyws3GobSKhj7WK7F44uDaWzxwKUUapxaL/RWdElkR6udw5wzdwUngDUaPeJ0h+UokyNYSQdUggDtOyecAqNSl6OJR+mIbjmAOSSOOC/0vopqHAdcEkNNIoMRl0px0qfXWSAawk7yLLtMxfhaWmYnULnXMPGuRYFrsQILNf2SLlZHn3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Kk6AUlOQ/u+/iHI7NLc18yKAnk89TX4rvJ4AO5hTCzU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pmMwC7u5t3MIt6hSdXyHNh8YBi1lJBLTUDMIUNKEJHdcoP4jW8JqLCuAsDJejhTEb53whIAsc7ZbqcoN7RDZnqvyQXZJ5bgrnJsY7VjTLpTYM8R0olFAA+l1ZOwaPnSP7ptbcDlfYWog3UDWuQ22bLpghJPo37A1LRJQacSIr6BZXbuxgM6a/5VcG2f3pcKehlV/4UQ5mPqPU8RFWpOEdNTv4JnocXJwk4TPyDDLbMW704DF8UFvlVdw8VdvyJv/0oRpn09laj/9kp+YShfd/hNqniESJ7ju+inUcx3xNuw//j6g6Utj+cEkw7+xYHEvgr7lyU5/gEBcwPko9VgXW3tWSvvGSNW6bHom6e3bwNugAFAjsXO+5lPxZDye1a12dmoQVwDqF3CRD1FPJdbOYNmNkiqaJCWV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KlCV4Cela1i4Y4SF952wIpQxSaOHFbu6QlXWxmrPSOo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ojOVG9VsQa5/b2GaY9RWpAK9UX8Vx//Q7H6uXcIY8FAm1RN6b88AITzlwj4DeaKrWnA/2h/xk+7GF84jmBFCqjMq4IgFJIQH3l1N8VS70kZKJWQXxHVpm+WFnAfY+H3n01j660bXsVvM9DP6AdI8fiZ0c/1ipk4plL4Dex/oYbh6SIV/zvEl1VRYTXjI6F3MAdkSKwITEo1GVuQ4pqAK4Q9ihmuBLPcmI3uwcdWuoD+q/7vcHEXrp8lN4XpufHe+wHRPfUVIhJa3zxrm0m86vNea7XTytQMz9rzuQ/1YXgP5TdL3aHUh7QK/M7FpavU7arMdL8RY2hDtliHtuBNc9dYpZrTtGR/+6E+YKxk+WrMb6aJXreYsztF2kyhYERf+40owzsmAKMdgh6qctkIh/LrYSkwYtm4M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KlaRneDLWpc4wMGvlaVKgolsT5G5tOeYtr4DHVhupw0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1HoepEOE3pN/gVqQ5TEaWjfwSR+Iv3kRqCGriPjjspeOldjgVoJt01sWxYTJvyXOcXHBpDhu466M+pEyUp6FSoEA6GpG3M3Y0L8CU0tA8sj+fFw/o3LNGvwhax29zg7LtIs80QUnUnssbIiMc4EpjWsmrEkKNJ5V3JGf/SlDhPRhn3zcvvcgN2GpjMLYAzQbazaPn58U/M9j7mK1OVnIDrI+0T2xOaFSvdtnLltV4ltdAPwxeUIwB7czBVPPGhMMxdMtK86ddOnUI9OikatZlj81iBQ8jfonZavFHyJSShwEC+wZrea5B/r+dK8q/Zs3+JtOs+youCoDJfqGLDAEgXH2C5Tr5qC2WGh6xrukjvLjNgxo5ijxKYFYp1OqY9/vgSaQXkUHg4wNbLKcY1dAOynT0suqKTzJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Kpz0oowUmxPm8MYLFix67xnPQqfjYELz6dsxlC7iAXQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d1Ar5QZfikCCR17DuhQGeoVcQaWC+27/05D/6aH2iNyL2KAgEQb3koo1ityWYe2pSxqhOVMWk1GJFQTEA6RGvxdAVmCiSAz4GUG8zNQX6QWteQgLrSARRJ11NGVXmXyJkSFWubGSSo5nYQlQVDn7bUJRoB1uAm+RIfiGWp95T2+3yAu+PKvphNflGbaAmJB9wDB0rVhs0dTojQelneNn4pd+IRqcQgxq2BRibVmjZGPXMu6rO2eLmnPz8FEwJGlPwhSkP5HhtoZiho5MD1FBU1Cxjsx08uFKSpprU1aTnoTsOUX1i4lFUHWXG8tZl9L5tV2Rf+VR133Au7r5Y4ZLHgoe5myGryct1K0iuO8Lm97xUptdjrTIvnC0x9M+WeQHHawZsotGTgGfHAZ4h4jdsnJs+zWEa8p+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KqhYwOtnHsVjbYhQEimJBaac1YzMOO+z7Th0h/AnuXQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sVjJAyQ+jJs4wlvgBwwE/h0r+G+rcQQHM27u1KKZT8l/xP9XEwmw08I+zCuAfjhOmRNCxfCjVnFhYMdyKwLR1yCv0MbtsN/jg3q1i5qZCGZos0iG3AX8ovaLuEyiQR1nKzwy5j5tLEWxxHXHKKvFYfijuVyijxvLqqcb+N99fB+YvvuD496M8OXmt8hmgmTGUd/IE9LLYhhcjlNMuLnr94+h2ZtgnhQ+IiyK6f+HqyB3JPE3+8ZbVgiUrb8+St3oHoPHoHBtW+bkGcu0Qw0VclRooPRO/wi8Gudfrt1wcAtshtekgP2/4mbmCCwhMe261kC/L/geujVjn/UouwFN9p+WrPOo4rp0V6fzfLQhOiUou5LJT0CUvKOWxprs7BzDN+ul0wCAkZkixEp+V2/Cv64ZVKvc9Dxi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KqufGLazfUF++5uQGJbwVYr9kfe52P9Zr116by8Ecu4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TuAnigPbh+1P5yGecTfq9iEGvNV2D+YA0ShNHE7tJRl3etDD0BEVHvZaxctve3dasdk+6vRfk4LDuV3A/E3XayjAgqD2YSzJHESrEEE2vV65UYL4Re0THMw8440mZUJg4ZYg90lyfN4QN6gNWr8v2KLjeW02igB6I/A4BXjIvYdCjRmgIprKh7UG8yjAMaKEkiYm19AOlHhLNGiCcbOL7EvN5nIFixSZvbE5ILnNDa9RUjH/6vaSKad1p7WhdvC6iLlDHhjzYWUedp9LXAr0ci6u6qnG0+OgB/a8txsOKxtjRCa+/7lInOQf2bkgKGO+EntacX5u7/kqcXF/BMN3077o+1NdLlf3pp3gUEx4M5xTOIcKFcbRr5DIjbxafjrqqcJ9CA3pspjDdN06B6VkavvtpX3hw1gs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KrQHwMHlFGffEuuFUSxN2VgZq2pD+oCxv5HyY/qPaHE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VDMlOAqKb2GZsVXI5vsQpYHbGodnX7VBvmsm8e+5vqjA9CYwi09nYlVNARr8HDlHrOoEnvFXtfNOyOyKWzYxqDYkkXD+4jXntGFe7uFLv1/ZnmOjGGtMsb2dWtSRi+NxZv/5moezAbNTgK6FHAKJFlIUeBku9fUuMQEm1AHPPPYH4AXzoStvyzpAfnkrltoOwDgGrKafK6Ewu4NQmpZd4E+s3jaxKIK4DHUBJfFUBRSy9/w2hZe+/AmayfuG2c5WhZ4lcDCfYYv2SNp8n9+xuhhFymGOOX/17cEiuvXG1o8MD3r/xI/aLlxw6oRzE0Iv9i5leCMPDKbu9Q2FgnRtsy+Q09H62p8V/kCPJg0ZfVMAIjYa5tfWQ6XpUM1lxqvMZujm3JQ0nFW6hu17r5oFBwZ3f6O81nT+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KrSk9HrtnaVViCIOlMik5u50FDLJZvHCnsqzhbCkNaE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OezHyhE6HVvOK/fzLoph8H+ISyk9gy0rUErJLMyzubNxJf6Rh1sMZORGezV585wiWvnhcc8M5t1rTojPpheQ6wtzJVAhUwqIxIpZZY6WBHd2Oy5B/3Y4MYGCnFt5HkYgj1VaOADgIiA0ESbMghAuqv8lokctvavALlmqEe0PqwQ4OGOjj3eDbbrp9rfhcHo9Zw6GdVFX1AA+wzsdFWfvFp+d6kyxjluIdV581+SwXYBGrEyICdSMzDJHclJF7SR4yETQeJ0yvh54uHoMgDofr+CY9dxxOQXJPhpM7wHYr4vU2pGqBVJS75UIBRLKlKUvB055H5tvqqxNIL8KgUE05kBcVrnmorIWgRCg3LLxh9RFAz8dWjGgOO13ooj1SSx6G0XOdTUR6pqrcyFKraNMIKEPRqDlFUFK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Kra49fIDtZeHBDPoo1P+Dz4OvKeuuaU86/MkBXhr1/w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2Y4qO6VIdoMxLTBYhyb6Apq669GpEx9VP2V8pJzuh5N1odhelTYBosVrRg/P7gPCYiNiO+RIctlYpvKaSMSnrnnIT9bnDcCsnxIOb9Bj4yIYq2biw8TPmRuR9G39CHRfaIJRZ7GhoBXz5BfNCWB8qBivuL9AosQIK7viaCbPz9mZjZgq7Am/OkZXlHOX14bXS7yD29usdChG8UmxyZFHCJXjlIFtDatU1X3wyspT2lSHCUV0quxcan1I27E+ihLiQMaFaULvgdC2QwWILcSwtcY0NKBVVbXdXNNMAQ+umX3V4fjtOBerFnSRErYvpP1uc8XenO0XlufGaeUcEWtfq9jiRvM28+VzoZxnQR0VMDDvmFJz9MWfOnFGgwbBugZbyX/iNPEbMh3Qzq8ynend+VWUmbDfsi0R", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KsV7Sxc137Du+lLdi/bjRPAjk/UnRGsfr9BAchK1hR0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "To6M0qTrn2AK4HVYL44xCjX/bils+VSdnFWq39edNNmQMkfSp6eZzkKKPYghFaTnbtmKu11ZyRPsFlhouLITGJbtETvie4a8i++DwAQeh/hyc7BcoRYq1TfPrztPchIQj7q/zMnJ9I4ozvpzOhc1m313Ul+Oz8FN+6YzG12uSL7+SCvfa6Zrj5vczA+VWqpDifWJyB6aPWMoQOHfzCCdkoomt9Xi8t0Y88X93YyFXyebjjKXYIdnLzUzkLY1k18sWgAbeEW8kx/KjkXyoWhVJEZrfUMNFUREfP5cLlOvjJiRVV3HgR2LN4YQaxtdIK1g1NE95q5k+S6psAroZ0y2frFjx/3E8h0VmY+Bc6hj4lKa/3mLY86vR8XqBvgHt/74ZEsxJfg8GYnKjb4qLf/VVouRp+X0uAUf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Kt6ocOyDWfnAKWyG7N1ZcRhmdzBwR31pq3XwM6XhZ4o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4jG7KhnUxVnsEoRxNcgZufhafFnfqgdIywWBaH/VbMvlBSWqBxtgK7MTgYTbLuUUVVud9jbRrmr358kXomcsthTLI9ILH8noVaaU44mQv9QRH6RfIVriB4Su08qZIBmNFV/6Cu2+227XApHWED5IlzY2p35XmPwk2+lkK4ue5H7XnRPluxDc1IMa/d/LL4UKtaQbxSp81DWN7g9Qpwc+7OqQWhdC72c9sBx58Pi+Ifr4aqXVoewcptwjFTLUeoflksvsvDixtHNcEpHs/Czp169FzM0uLAlBj/I8GY59Rq8/Ht27b4wl+UlMmqqIPbNGd7VDPGD+L58r1LaqpNBJSijAmTJXVFM3TQoHkVlhindyrKthq33MXh5Xy3fmMbbzSdjjVsth0i1imDPVoBVCQKxJgqtfoFtf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KvO6oMCtmLn4FRXKm98VJE7XyszzTyL4USG4itoMxPY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UPKYgzGShmOXYHtXCHm8cgLEp+TexKlRk9jLvhvGIKY0/sWB+LxDU8Xp2Dn6lD1iOooZmRs/HSw7N/MZRWoOCoxu/dOJ8+LQk3Z+Ptm0VPgWSBatUdK53NCE7VJS7IiVMeOt5N20yjNAM/de3/ZLroPBt/NIMsoSFHOhDpDdC1ZOZH7CVOQ4aRGCYG2dl6IRwUuh6sF2rzaV7G2SquDRhBB48JaF5oX0yKwUmbQRfXfAOYJuGXfIY7WW6ugjJfZ/HsIKLhowO0gBvEoy1lZtASgCJZSqSxIs5xPy7+EulQEQT0daz8Rj1DiuOwzk+Kx2imKQB2e5/l4RsTye1lWJxZE14lDSN9UoHqY/0TtMfxQcw89wGmN9EcK1BeMQJ5vuoBJ0iCuu2ZgeovcD96f/+7HWJEKMHLqY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KwKfahFtPgG9C8fKDU/lX87zwHDYFKLByGVzV85ENBw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9OsgDL22oTIiunJdsFk4JDGBPliHOd9PQRLTUWWBq/YDK23aYKZaZFUf7zWwQLgxse4dBilfYSja3CcOMhXRsWfxkRXS6m56/qxG46tclWIif2d5YzoLLqUbSJ1g++nH1bX1yJ/ZfzoLvwoMl/1DlIBuenTWIUS5SenynYVQuvpFKuA4O0uG7q9TV9wa2Gjojqlgf9Qf8V7bm5S8DAndjWIPddtxFYz3IQO5Ib6zCmioVbUYd6QJTb1UEw+mZabdujYITnRczjetH8Ok6Id+myc73Q4Sk6f6AQJ5wvP3xO9UnaswfJ2Q4KzvOgOCIDi3NB41cbHSPtxJFjKKNFFAbB1IGh77H4SHPH1Z2omcn/zQs247ne9kEJknqY46/fD7jLQ3RIsTvUuKXHWLGN54IuvzXjobylSf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Kwvq0Z74iV0g5oaimUPGDZa5h3BgR0BIRKSFQz/PXpU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0UxKUksUBCFVOtDuCHn5WCex0xwSQSmLgoWoor9AJPRx+xNN7S5GX1ad+zvaEifOBFHRwso83shjXr6JUWcTIQgQsFePRFs9WJb9dUTm66m75XYivlFCpc02JWTmZav5V/jiTrlaCaJzo0QMQ2e0CzS6TTogdX9p8LtUwl/d/gFdTIpC4ApO6uokfb6zVTTTX7D8lEKLRSUHmXxtKSC+/NeiLi21kzpl7EHTJyzmU+joxJ0WSAGucdiebp3HFnvFI2BPxHb/cIe9tfwJX7zYRrYbpTqF2KhIMzMDop0ZIvhSCb4QQX1NI5I2f+skKgJ/+7CdDJJgKq5Knp88cUiZndWIH+nATd3qLH2RCBjRSQC0+cOTlrp4auw1OdRTqWbfsJJ+VUz4BhjpPxWavlAz9Q6jAWnD/QIn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KxCkGwJsDmPAYObQlUQhQw0KANRslSp7tbVyQ8kjCvo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NKokCK+pv2/RBeZREkQbqEo/DD4tz3zji1txP1/LleXwNavTmlxyO3OrzRCb7nnxXvImkHF45paRTCOvw8D3DnudbaC6ONIRz0xKT1RvoMpLs9ZobSJASY8bzmSDcobICpDeaR5dbNwO7QEwbkdRhQfWFNsaJ6qkus3JBNrK4e3O66dUPyzzrk40uYCWx/4akHkvR8Oa8T35PaQsUn7+nyqstXzkCdXv/EuCh/2XI+jvo5q13o/WGnRscMPRWcDvNSP5GfLxxy3ia1k7PiOJUc885eHPHnL66BJ5IMdtEEBq5G6p6VpPuYjSi6oBOUp9/qedTzmhgT01mjZiNKibe+VSB9JVU/7YU2kn7YxXRdvQ3L01YS65mMYsKX6W/53B61i0J1lpNOXjf+QPyawvIXhtoiZVS/0l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KxGzVE7Gym5p8+h7W6WtnsqNzUzuQSw0BmSrferKS7I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8lguarMxUprGxGoRNaYaDt9eWoyFUdjeoycr7K3ExHwmymtcfyJsozeCPaYH4JaKgh4PaEYcjpeW8n3HrskyWsZ5kMG6C8dEsarTS/WYNeSAfik286LV9NzmPQ492Xsg5zGSiZoSk0Rs4qGdwh5BFLgWNJ2KNXqvhILfa+M3X/cESOg6cpC3TK7JtQXyqJ4JNbB/DK3MA6/POk83d7lBkq98ZudfgL3NR2WwsIsqIpuGS7AZi7vkiEWG+VeZXrH/eIyy3DYY7jz7ijwTWDiKdRvCgz/vP+9ZCgK2EnyW2XdEUkBXJLCDZnYXwBubxhQtR7QnJtBZ8nI0K2C4lrdsBLGsukfMODrVYKhpARerzW9iYW8nzI+shpPpMc5mESqVyh0GoibNTf+Q+bPp3mLyE97etrK5xYVe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "KxUVUM/35Wf/ysoQmgntgcHKmj1s1izRHvHQJ2UMAe0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9Goj27f4P+28TBdP0VybLT0B560Lylc1KUGf+adGjwkT3l6cElQ7iiN0rwHn5gqkowsvwblTupGOVi9A9y1buk4+K5uJG7u3tmMgdLddNXaTi5sWBWoZKqgBTJyN+TqCoRtronWIRaG/9nnpzktvLX0ezdWELQZHCkJhO0n/QpSL9UpIMDD+FWfHd7YN7PpqBnfMLf85vflkwL5uJt7UIYr2ciCJwhDGkvctq8Nkt32X0PKJbLSWAzrnC45dmzpjBkPOjhnuTXKVOtAV4whTWHM0IjNi2Avb+6JGOfj3HRs5yr24ErSxcXChsqMerFudvWn3SOwTmPItnwu/YYwDQAQPDe54RKLQxyxQ7SKiXwOghBrhPNRHue5wPMVlkjbOsPxYTgXvgf9zoFYCzLzFLeuXEDnGv2dI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ky0tLjBcqJCd+VnMqvLm1KqP8qkMFX6vL//zdWq8bgw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CWghRooeomES5MNdgFLy9fNeK8c7uQEcZxu5z7mH4ilkn3IWgk8b1R0mGyfEl55mPLVaOYbIeotkwWRD+olxr0TEqw1q8dowZTvXmVjuaVjTe0W1gj2Hlt+NACqwyOb+H3snBttqC0hg79CGEDsI5ojRUA47XgClRd7Q2Z1fzN8Uv7+3hS+SafCRpHeoF79tgWpzRPKtkkY+r+5uYDB5fAgmQrAKzb5/sa5puZbuhDVwNkbS5uupWqCEhWm/9YhMxy5co6l9nzF7U49j5+kMWyLeUui32b828+fFPpRgXRFF72nJM+QyN12EoXpWNo+KinJDLWGLHjk9Tcv8sWqdF3vTAHwS9elP5Jgdplr1+LUiAYO1WYg8ieGSigjgj/r0aapZdweNuz6KBOEj+2tOt8cxLW95CX1n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L/MtJPlo0LziEEoR359ZjUqkBHRo0TDj+8eRQmqj3xE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0xxoUsnwzO9ebjj4pDkeL/WDNg2Ok6NFE62Wa0PcWsV4i9ZIqF25WnCZzEvm/D0eQeKrE0qEpQB4PiALhtn1oOWjX4O+tVOqgpC44S8JebASaxD+fEuSWUjvgGMmATFaA+cDaQfSVrGxFRFo38dw/Alnf1ft8DwoVhxma9NPTDkjYAQaPJ7O5aFCYWrn6FZ4tCvddPe8yduDctFV8HWOUsM6n5cBFxCMQJCXcSfo9sUInPKZXxMH1qBD6f9bANDgYVFBfqxTyfWd3FvXfyYkGcO0TQbEcAcrdGeXanqtaU2ooYRLUFjiKFABBIU9bvgYJm4ZGOKahqeIQ9pVXnPsR0H3JpoiI5YS2Sd4nx9RKiX8Aqlsb2oKAZDajKNaISne4Qw8NKt9SofYILitMpQSverDWOcweOhn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L/tw0s09A7MY62onniStnB/ngSbpnNV1U9AX4jPj2SY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IAkMzvk1LyWoWclfKu2iyK015oKtMXvvF5eKXTvpKDBXopA2lDgZ2TmXlJ4SAl8mXZ3XTHTex1KMyRFmaoyKbQDJNWxRgG2eLdS93SrI3BLXbF2uLnutgfw6kAQpLt3u0p5O26+eeaKRXHwzCYhv9vZNqZtHvF6XlAouNjJOGRQUkqKBNbzu8cccZNVTkDkGB/+2B3/60coPfkGunHeKcjqvC1ZKKKX0xqrpiIGKF+UY7Q+X+mJvCAr2eBD365KuCc5nj3+KPIxxoBrBTx+rmsHzkrVVmJsBlOfyWKImeZvFn0/VTCp0n5iM1sQyY06ssP2Uz76Yai6BGKk9LrF8ykkdcBSowu8Z9bQWR0AuiDCnAZ5CALpKRPOeRAVwYK+ZGxbP7ZnwK5V9r/+nfVqiaKP70ofpcvNG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L0tIxt4ch+wAq5ilrFNSDD4F5X8MrJPAHA+61/2yURM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NLKKWK9nNJL0eEZC3jBGmStgKOhxehKerIkrHB49460H/pjL33pupgabpEjBxl5QQoZKW93rlV5dNpP/LraOeW9qIwU/ns4bEAtv3XYNUyn/Ac03VZzkXRV8dcdBlb3Jcs23xxWqNrx8SPO+dNKEScb/jNWufk77sSsUitelnZD2zzxl+OaQubcQRzM/IJhmRW7o1+UHYtHYfM4f8xlGDpRgNUQdKyv1FOcwr0v+NycHHFMz7uOOPy3ZyNgRP2c3qkl18TRBEDRjo/8vJK2v1/csTFhx/10rwTpXJAg3HhdwaV8gXELv6jeliDmFz81tD8Gi8A3utplfHObcCb5G/Eug8FrEnmUpQB76f2ewoNqA2euMzhDcYi+JWPfNF3MV2lEPcXOMzPT6YNJfzd43NT0Gh/qV01G7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L1JKCG4Lm12dFl9MBcazmXZnm1jZaz00GHkIm0USpac", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JicALuHDFIwA4CILqTiBfam8rMyfM9cBg8/eI/WufKJq56XFtorxd8MK2DMsUxcSXr8//4fgtSBGZ3Vf2uP9cELUQ2ocH/NxUf9VD1U3KzZVHUmPCKV+yMXJmHGMmI7CCQuyAtvfusX5zt9yS5p+r36Hyc7pXvnZpVNp+hm/TJY1sQbp7bmaSvz6YQnhzbsBe3L0CprWa/vqDoaDrplLrjSrtY1Buuk3y6iPgw+Fcr/RqO3vFIjg9Tsp7ZrCSQgxflQqSE7mstvO4/sQgCDJdjG2DNpywUi37YebhXHCBEbIqEZKn0nZ3hsNnsXWMdO5pwqynvnx7BaiKbUhW9gY+d88+h7VVV24wJwtL6dObcy2zJPUnRN5+yJyp1ju0+uPSAXFm9CWe0w0NDBzLKwmGP1OmkoOznlD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L34Ji590MgRX8Anm+yEjD40ya2wLlEkdhrCi9m98h1w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sEAm12i+P+8eB+ZvRvSO+Hn2Ak4qYuXRrLifhiN07EbljM+U+DpVwZzdNkVw73WJuSDWdE6PjYlmFtbmFPLZqm866TNFuOVGBayrr/60wgq3KmuFrrhhO81dLuAxYN7JngeUMM93VakV+24VoffTgdG2GdgzoTG9wK5wWwJ+pxfEac9qT/R5kYyXe9ut7CPiiidfzQUO3dZBfsLvlfa6Mng80MVijazlkfilAXKkqgb0V0GPm8Zg33yEr4aVOwSxjf3PpkkikIzd4eld7XyWgusm9F1+fZaCm0hfUmd2YNYUID1slup4XciHhV1/ajYNzjrVWMXl0N8epRqA2mGReWI4XA0/Rvg/qQIEp9HLvYeIYR82i0l7JAbihDagaz2DvYfPIXKfYeCWjJLB7FjAGThyrq0NxZRC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L3txmyTNhaMWTidXsuo7CWT4MQWUFr6U4gLG3obRQLg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3dKon98TDJ3YgtT9KDSfyUgEwitvsnAibr+BNjWSUe94jIviWN26JXLJ6JtRV52TFFBZQK8YsfaSzy9HaciNwTH7XNBxQIoAXbVG6iMO1OFmPfaEGaYl64QEjRKYVLHPqi5aXgu+6m8qrVoQrQR8V3PuYep3g4GDW/Q0HdBzEAZRlpcO4j2AOqgispneKnjbP4guSix7uUGeJu38dVK/3wxHGLg5KQ0+pPI2nQi83nrw97ugqMyDNdM8EGCl9baN+k+17mE+PQgFRdWmAiWvgdGpVulI/b7LeDRlqjr9Sg8Cd+mDa2P5ONnW0I2+vhpSQUKfvZbnH+XtqhGcQP1n3MffDYxhTDqQRfKcFBvk1En0/DpbO6qAFBCD98Mv6BqNGjS/iQqhUJ3Vp3YBOdCWmRBlWcOeXLza", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L51MG50HgDYbBffS9rUdQ5cbS2gdaVJZuEKusihwUIo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8Vtzr9oLsqYEKMJOu3areVgIq8rx/d+Ca5u3OScREzx6/Ov4OI0htmyG03cIDMJRUGWM8Ph5kH12OWGa9KZmX0HgSrnAclchvlT7m/q2IboMd1vdZ8LLYFeVjE7Br5R6EVKdX7STH0+gG9uhXI4qn5pZjCU4eFBvM6ctk7nVvwX72k5pCDdRKMG4MTdBF9uNYFuPgPgPlXykClLs2dYMsI+nYNg4Jf7P2MVovq0zItFTb26lLhpp9HQ8XwAZQm1cPjAaxDnlFL4cUJfI9Yr+YHkHXOt/H9PS12cRlNhnDBnUYBFJI7KBMLkqsGwT3aj6JOo38TmwOUb41lcV17QwJqzj0e0XOUiwasAtjE2FFb7KUqAsEEE8ZqdOl/Adpqlko/eIdZ+V25VKlKTvauxhebStldIfHYPS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L5HQbBPv3lYnRKGz3hfODsI6RxhQnWwrEHS8mtNokfY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WdYNjdzkhVQ6usWNgRKvw5Cic9gk0rQ/OTmHXxQnxOpquNUfoPtLr5lAWryNr+JCIRO4EMwDqLvRhThfL2gv9raC5TGIwCej0JRP+92YW8n4Ab6u0hQ0MNvghg+J+qgGsoZIWSCqwYJf6JwsqxQe0381cDs9koQ+op6JI/jtMy74G0Gd/IteaV2vBSjLQFwDMHllX5Gpcm0RwTaG96bV/eiV0Y8pGVZf1/omMGPrHUJd4EKdeudR21I2nA/A3dvNkF63b9jPVB11yzctVNS31eJE4SPTHrPdwOFUhTVdEv3RHANbvre8qgl6fxK2IXaQAqs6RrdMEUOnVofKpFKtq1pE7UXsyvFrC8BVtiCQdPRUOnEulRU/BQM6uKsJeDMP1A/hMRSkLlKbxAy33bC+pUq6D/l81MrN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L68lFS3bqXgppw6XnV3grPvCeaL0ZZKRI3hE1YDQ2+g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MaAiVAtZ7QSUr7p5P+NH2VORmVezzji21jyA+r/w3NcANHT66l8gLvu/+VWb4Ar7E2CaBa2/VPk0Zo7LDUWYBe8RQjBkpOP+9spZHpU031Ptwrv5ZN6It8SSpEcvgIrOIRz3VVIDsXSF1stztnoInqzs1RAA4q6+jL9lYOPH2W21j7hzUC52zs864oiQftZM1/gEKUXvJLJSJXgnkYu2wMaz9eA3IwAp2hf4DRkmv1CmafuxDT1kIeQwbozlJvYGTWtf+NkqGBy2K1EHsRhqE0Nc29OpRS5pA2Bry6Jkueq7GAK4VOX5m9zfKS+AsCCdCPmIm+TNCd1XFJqxJH2QqXz2Rc56gONYdLmww8yniKaiSV7YHjeQaD4RZZgG93nGgQPoRu9af+FUnLnJw+Tl4QF37LXYkIc/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L7wOAuNUPT2mUt5A6pcDJpSjXvUHpMPAMQafAMO7+Fo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o2ZBk7E31b6uZ5jdfskdCx5zqwooEO1JjB/JfLUO1aPu+jCjK6+BDjEqHDDMp0ryacuBsAI8eiQGzc5ZhYGhKfdrjQBmq5yLjmjNFjSoNGaKrYOzYumbjt72ecuaXYdk+aNhOERQQnjKa5sTGepXYhx02QJ232l+qb0EaEq1r8NUHc9OgwudF6gFY0wJr7svNBSgQbbFHR3RyMEKGhRJi3ZItQRjfb/LpFAa3A0KN6KIk9vMgq/WDHBgRzgusobzxfxyP1EpiI21XtiKZZqsW+2EuKBSH5s7++b7Ko+u02We8KvvpNjvACoFDKIe/3fVww9Q/xAjR6jYoX+ww+3Wpq2haLU0yhkSN7RBoI97goNeECzmqcRshXmkwHA9Vz8JsrMDksKO2cQFyjgItVYeWsa+YhbHa/Vr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L8hb59rIy2uArR9f+zAhlZw6xG7JD/C06hSPee0D/Tk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TirsaIkXuhgTEB4pgHMOeIKkl1DUibtb44tdO7JSZ/VXbfOL1JT1T59tFX5dYHM/ofQBiUhvxPmCvCQJ16g0M7z5GM/q/wWLzgz/2bu5O1FfqtL2mcv0H9SchjpCgJKhF1sP+FGUlq8gS6RbNq8uHUBNoOmk37HTHiK6JXzC6kzMAk5YSijAkQLXGQA4TG4zEoD4p+f9F5PafwTpjbCXoSmdxSAVGk2/TZxZt2Fx6evPPWEGrlCrwJdo1Xd0LYKwVgmvq/WrEIe4Qn2vTUHDaXHfvrwKp7hJpYAmmE+i9JIRDhFsq4HdGS2bKE3MhhWGRXwEHgR13/Roh/bEnTb3skAOMumSSt6t+oIMkwTqLvJAefa2G3k1DR/WAVI/0nNCpavAONOB2eiTc8uK90qz6g0ZgPthBiKg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L9AUfUHkgbl4aTiOfs5OXuh0R3b41gpY/n/uMkwfWwQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "znrXs9WEb7ladB+hXjYGFjYWg8o1AhafYn284qIuecHL1WCmAsJNGl8NsvVDD8Zxg+6e0PAs69fOoCd4emdyVgqwulkBAM1kpYNqvWCBTyghHAgDwW1g/6khnplE5VIXXwprNBa+5hie/WSDLxhejbxD2lMKp1q3Gu3ya2RuHNK6sYayz/dSgSzj5riwNL3HruHjq7TNfFcKxKY3jjEOb8nJoaa6wh1WudLhGgOsB7wr3xkf97DH0ltH0eOO/tt+MIy74QiTRqn6MwltUGhm3gDXGsX4Zffb4Ph8kqKOAQK3p/SmHwJcuaC6qaKmQSu9zEVJkElOhlmDNNmqZAx+4af3E3ZivcLdRtZGCghRJ/icxosLYi7IfinLLv24XgRAWeCFXjH4GEcPlahWigE2U7XJrS5lW+eY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L9BqCEDasfVlJUpncqibr2ibl/pAOQ8DWpd/u4TcIzk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iJG9QDJ4HnbmGaZgNAsrmQQ6IxCgT/zbGEnkLszI8vhnTxKLypXjaja1G+n5Vy7bGlQaAXo9+IWiVqnmjC3IEZiH+NmQLI9wAzsL0OY72OlNLJeRfnBjysXUiOxkuler4GiP3KiU5cNxSYqUWh4DQacmY8oDsDfkOD3BW8djRpc9/ENtaNTWL0bF4vwrJ8iYg6QUSHd2pnIf0BpLoauiQ7US7SkPGYm626fUrm63JDJY+BjMV2ezUDjanTj7MOJI6xZ/WVjcQZR5Bg2w/qExn3vak0Qzx6x3v/vcbrSLaA/v9Y6j7ibOKDE9cwpDgkATFJFDBcUHf6G/rl8JkHs4pMdIl5BxO6licKnigFwVR6v6K8pm/MFcUITskiyYTShqxZCj02OlkXhEmXyB7/1cb+Rj0xnA1OUu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L9cTPJ+5AtXt4Y/fGDsMspXEIEQ1dIIc1wY23q++p0Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sNIyxcrLgd2TOSBGFJI06zHaSTJ9ZJ3D9uHvHk6YZCH453mQ7pLeFLoMDcr8RgwgBtBn3+2+jSmR4ZHnQ56RhyGTf43iBKlCPJWIK4AgZZksFhx4IGcygApFfILiwe/K2hNQlnlVNVRiyjxPi2ahz1glyzJcRWzZ/JCCKAhiQH6aHpTa2XsKawnh9gT9RRv0g4zL9UNQ7CVqLISMzKc7zstDjyb823xjdgQBnl3UXadUsLJpzDJ7KnHW3oeunetcDQ/VvnWPiTFBlign/kQzKMk76+G9ilD5pdENXAkleJo++41LjT8bPOOEBu4FihSdyHmpIYR5DTLa4wz+y+TPUcLp78KISD1LIlQ/5s97TbNCEh9LSQcqSo0iY/SaOybGPCXUqOawPgcXZZPR6oF3B+aHrX8VdG/Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "L9m3MB74g7F9/h3wdXkGKI8bAHkUSc8JWi8gA65rcCw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "D3Gj4xXhuQ4isDtNusGGxH9lhjJE5RsZ/6aeSWuqyLLDvUwXjwxH22GrJIaSu8dwwdzHVRb+mgzwjllnnNQjW/AaeY4MoLmX2SAOWOjgo+dK8R3I6ht56HrPjtZ8L+fn+nCEylwxebxQHTrFrjh6XKNx+t5IjVLmqptHzVeOLs8KS+kuCHuE10SjsjcnS0DBUiPTbd9sunO5X6E2Pc4Ii/k584V9ynhDvBVYAJQxhRp9AyvamZhG58AsP/6pcCTuan6//xeEyvgyd0XFrOrkr04j1IwiLqqWrRTPXwsMcvFgqcQNjjb4f480OnwiThBO/MsaL5UhJ9fw6t03H9J7ThM9h5c5svTqpddunD5epCWvzeSjz01yZ05cEdgazHblO9r0S+ooyHmYIy1fH0oO2JqveQHAauoZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LAC0/PjxICO6GdrndJXbG5l+YMw8dvTMVLrGsKjFi4k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uV/433099xYLEIJnnutMGwapAFaLQ0n5RKWHzAfIuDz7ySMrUc7YLv6UbjwDHscDMzFsF4SyAnZDwsKWLgEbrxRjZ1TwAxRd4xSWVLq0R5ccpacPjEP8+FIRxNHGPZAdtPiE1dM6cKyHdhOfBYhRtUC+Ep0HfO+BfJzNx4pl0S/hSDS7dF3EscI5WFi7+cMSqbsPBqLmcrt4I+x/no7vyg91FHgoSpTF4B0lZyKpa1XsffQYQUDFK6aqmS6kHoXtDyHGm360K5wS8m+voixlmA1OzIoFjuBnhcUtuKzWOWSlsGesni3NSW1hh8lMgMxUHbURNHXrMpGbK4fziSewQHcGnyzsFWD/QJ04fGc/+6gWd4I8k6hZUbv2NYLAxUVFUgnIN0S7lY7oHp+M12xsT/+dji8Ogg1Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LAfbRYU3r+JAHzkllXOyaSbv4mA3sLKbvdhIL7PtYkc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wUqwmcYdyZaOXJjswS66/pm087Y0IzZgNR8T/Wpvj+e7ShXRmphexAe+tULz1753FC2eAfNtOC8htsJ9ZBfwbPWPasPRuzmFtmk3srRF9gaylurn87XkuV6IQfXMH4zt987Pv49AKooPT+/v+c1Z9vmKp94tFXJdI44qX5HDpZQEDWJIV0BZahBeyatfLCaHe/Y+P8uv3KWs6VVZmlq+eY1Qcu+PNRebv3MgZNmvq2OsgwGmr5miUXDozKPcu4Z811AmF0UM5FtsarXx0u+TRiEQOKvetHnth8znq4kTqT4K3ZVXPp4kHMwKzG2rZ+5vZCK/FOGzOSsRlj+HfJg2McJxWD7TqlR9EsZMtxKMip7vr4Jap+ip93qMKG8l6RfXjqL7NJTbEFQPBzTDx4LticBZ4qYzXX/I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LAjOLvPRmKR9FOMijaXo1922H8PE2res90EaF+I+Pxg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZN5tc5O+utQh4Riq2sM7KJeXDTofBE7DO0K4rPHHMBDxuChTWh02gV4ZiVFeYcWsrQyiqDKYhuPjHh8I9BE1/YHoFw4nhxIjtKrM8i1PsS0b4xewQkyUjhReMHDV6l0BkLhq4sFuODyj4klR33Zr4HHDITp6oEqg/jvQR2vSe9aDVU0oiFa4anvTu/03+h7k805UmR5JyZEL3jJGSX9AWFBS6n20K0KVufSAk5aUSl4lRQe5WGNxl+aC/us4O1azMFRLzAYt4JBwxfO55HaoM2Stjkh76Nc1TeVxWm+SN1XDK9huvqEi9KK2Cf/CgqcPq8JraQI5EPOnwFsUILXtQhz3fM1SDn3vQ00b5YfB7EWcEKHsDwBJulFsv2VuJuOrB+o+9ngsWcETE2lLbUtw+QxR5DiH/why", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LBBfwfcf1AK4A11jc4EAcuO5APyxGYJQ84CWA05oTC0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "77nDKF0sHU8mXdb0IZPvNWmn7jazw3LV3U/2Wb2wrrYH3TyW3dHdp97cik5q/uik0hbT0Bwsm79v258tdrr+IagXk4ehYaJXujQYNNHPJNgw2E/zrVQ9wUFh5M5++z5pvjg2fvMtzmn5LiJr+2GOH3AqEFpENZ7eVSR/l7Of8rN7AUNIAMZ6j09tJvWL1F3vPQVnLTDC8+9ztEn9igsWvTTXpGbMYoBhmMeqmrvCwFXg+LGiyQdNEcSE4pDwZksU5azP5dwPC3eLYnSFD+MVfuUnxpuTQ/1ge4kZM6k0nUbE0iNgLrf6yPw/Ed4ywTys684B9lZOmq5AslCztMY2Mf9RTkFpS5gkNCrj4HY59CNcIoGug8QmzNg49nQxW8J54MuUqftadE6TbmYLI0sxWXjRo1s22oZl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LCGClky2gTNLKWI39XV0NGp5bTyiXvMzxpM8mecywV8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jGLtLbfUp0HR2Gdj8HLL7DF21OyhATbyKu6+X/JnBjvgpKSnhnH4S31RsoX/qL0Vj8JH8N2cn6Zo4Hr4gczxkkBSfgIN96n/F7VrVtWCIdikTSnPl+G01V+vcBdZSo9kN+Kgfn3tFo2ssIBSMBMn9ALXzVrUJPEgM0el9ElinCD9AIavv5o5muUAobcm0I8ZaVRJZYC3IYhzSvFrr4/eIkcchS2LPC+2hggPuisosmDXs3l1ekA2sZeuQSKs1QGuAR+N3tEc1W3ZhCd+b392FSRYWM4wOYpPtQ0Nq3iiz0w+IyA7yhn5fnODqMg/ynvAlh5iYxNggfOjAxTETrS4kAIodV24ZzxUait5hthiiYaha7jQ/hotknCqoLV3vCcg0oc47q1nmC9z7SrefTHXYl8YLecxdAin", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LCYlyoJfFHlQuYpcEAAKPJDaQAatS6+/nQI+FgL47Nw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aAlau2LlcQ6FbOnrhlIwZnmnsGCcwn1+/uVtCfQbjr+NsjUc0loeevh2+vy9Z90qC4CcOr7W4qASk9VPa+GlRX0ZTy9nk4xZh9NVg8wSMchMMCMi51mxaaXtH4IKlMIVZuFwySISeot9C1/mN52XBWLucIpI2ZcWQzwPIYh5GV2p8XB9gUu2BrUoCK6s6xYB8vSQU8FTMeP+17UliFK+FF3skZHQBiaK4yIBtIfapoFX05iHzcxmwIDl8rPi4FP3NykIC5RimdMTPi4V1XdpXC9Qg9Z9iAwzdWRjdIFVt1PrIXnzbQrFxXEvKmsVP0rPAvYMhPxTWUeVyE07CJRmv7/BE2ydi8hDFFA8x+cAeFOd7JomVzXtvcDbeKsh5mMJs6cbEhDRltvnsTTafshY/i790/gMlpdh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LD9uYXLt1Y4RIi+3HOwvJefYawx1qS3diOQL4SohNs8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+Byv0fdH+uQ4wPejdXoUou/HbgGNQattrH+zThD3Sgzo943X/m6BUhzwHsxhcuazKpLwdLcHuhlzPG9Y3Mjh9QDGsjFcG//MBMJ9iUyFwnMLisrpOSgzTSURKc5oBu/4OCqx8lVHzuBcgFh8mnSrlFMJVtybRfKtk+r5+LhNZzYXRDsMHrO3B52YIBpYRGPP98FXzUlqSQ1dodFWaGT7q7BoinhUFdK/CLgFSOSyj3SFmXBC48mixY4bbQlThfsNrsgRGscbtABQBvX4TrIAL68ZYcWZlDo76Ipe9R23Ar3sXxfH56XaTB3OjrVvdvKZ5ln02/8dEbJGHw0p/tCBCjklloMUR9bn4nl8HcPhKRItnppOXPpcKoa1suBF9LcYyFbYQV71R8/ufwG273zjqYG46eMMGQNA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LDWVljlE3qt6Y2bR42klgXlyHiCtdm6MdHGKFVmiSQ8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "httwlqTvcfnqzJIXHD42LYLg7vIxA6Rfk0zK/nje0zNKKMcDerBWKqrY/mr1sXrbxZtziknGC13PRe7vedGwaC3NVKWyha7m6p8U9sGQJmLSM7szBl1kfSKg8uw8qdSZqNRr8Yu9TDm3fEC/0rkhfwCvuiuGV7PVu9CpnbH9/lmOBMEYQgECFCltTPIvC2xefYuP/Xyh6O1QjdVRjklMrXuvXmAccmH1pcvxvN5k3UdKI7Zp76NnJHbCsBe5VPMk2vk6VHnx7kMbmngxD6L9M/QwHTd6OO8/m1QaFnQXuDZoO3XZPQ4BWncr3+e88hfcIWxIfM20SQARtdLbXdfe7ImLXIgh9hWux4ULmAs29Xmeh6lL3lCOLBt0PMWu7ELgqhfjYmLYzk4AXUN3mMiONzKUrSl1fgG4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LDfWuph8f/s8CGSuM2JQI7WnXQKWdNyL11HTveLMaVk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OSeNPuJKGzxXCOqdt+1YkA5M8ss0whrq8tv/Y+tuW6SIM6X0RgUDcfFP34jbqlZbNeLcxNQBIYqix5T/TCXfCLPNhOTd+SBcLl4+Zj5oZWf3Z8bTRE1MqPSkUjaVKvoOkIQaY+xwo620QXUrtTcEZgs52p6sJjs0yscwaiQql8a3LpvKrhgBP9pfK178xqB/tqLBKTI51LgrjAN1TIKw+KL59YowHI7SqZFcJhqYyKHCJ8DnixF4PcCQR3MuPgC9JTXYOFiSTowapXI9AeHlC8CwasveCYWeAJ1ke02uQA4ct6PEw8duExflV3S99YdgSUkT/OLsxQYNBkJwtQkMlD9+960RW9VPfDZmWuO08FneefY+waln9vPIapsvD31V+h7ylROniblui520WFxrhNG+B0zlNlbA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LETcWcNJ1SIET7Giwq5zGzwak7TI7d7wGANKbFEyxz4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dBYgY3PNckft/vyAj8UNkia7WQDjH/eASfWeAS0uvGZ/nwQGH8PlSKLG62esvzF8Rkp1dl+PO9SZ7XijnXueUWrIY+0MmWhKVOTPDuhUp2WuXMop/dkSG+3bmv84AT2lzgx2UmYLoFIhJmqJuVVMeM8hvaJvZ3Sk2UM09CXHVXxQSKULzZypHq8c5nTCrHahiAPTNUpeFejxiHQjTmdXmawCLIzVFPFr1Ff49yWRT4/n1QgPE/O6hMeU/h43eLt9UTPjd4kRE939TGfmA2C0OAkpwurzuGWI5Y1d1+YSZ2yjZ/G4id73lJBzWQfj/y4304yN+jUyXSA0npB9UVM5nN7OnnCvhMZedy3Bgs6wQLdOFX+UaI/+x8D9s3V8LvY23PKuybfxPf9qLcUVfpixSAwxeblaBT7B", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LEiP0vTji2WRZMVYqu6G+tsPqgd2R5uXnHb1Q267tUI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mOvZfS3a1jxtopOO/q/DpSoaUoSxy5S5v6w2vx1eRPyGFA0clMQZwPnDzoH0/HyS1tCWAv7lkXPz8k/mhUNPh8Th8Oduf0IGy3zwnJwp40hmULbmH6ahaObM+2l1pstkCqosrzLRedCzPp5yjYYQKNSDLCBTBPjt7/WpZJXSrsG5SVaIx8CpBQdR/TQVQgw5gUOxe2WfUkgNo5DdWQJIUKroPpMXEDbpyGU16P9EzYkUGVtxBCc8PtFmWiOBsdH5wJmlZhogfBSA0lSb4zqDDZPbEaHucnODUj6EqPHWUNR49h7dK7nHjMCURSeWBd/AIPeR/uToV1AQeYhMhTtuy5lA3SqPRhBFdot0nI+78df8LcjG/TM5HGf09NfByVDRsp2HTPkFx7oUJrEC/Ap2P/1Czd32SiAK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LErfxVF4RmYYbaa7j8KQr4jTMJJYffQXefhVhp2+748", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "I58VZOhA1witLxuP5HtNTpj3jp4Tdp52C4iC8GRraZV4JUFp9uT78NtPzzzVXj0wO2nd4PFg+n2YsKJFeMPfwWW+gukWkA+xnfCgmfYJLfPU6Bhsk++L3q/7Y9DEBgAL0Xpv9pg5tsvO+UvHH+GtODoGGH2+Avj3SJDnOaSIr1GQuYF1x5amPbsvJX/J4h6WFhvdvRxJThZqzslG5uAlu6kS+z76iT7Ez+/DrGHbUqQvZqWBAOkNHLm2suIMioffhnpKO4Httv9LdIlc/8TUf/E43z1PAk1bfY8oPjwvnZaif2Ns3sgf3qbSo0YyNY1i6I+qxbP5SOHfSV2/ijl9HkQmEeNe4GgSggD400Kmf5kr5r+2FUynbjaFbWDVCJ+7l4mA87+RE6PaX8bJo2TZHmpBsBtv9QZm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LG0qFlfkFWxLOKu8p726OMYIOzfGbENczVr4fXfaAdA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zT/1gLTDUJaFmMvEhVjzgI2yd2HKVZ30x5jqRxMf70lNVC+9iVBrQSsjARAuWWJuLVXxnLKpq89D7hTYNuY8UdMCgTwSgib+IPBleSdD/ckIb8iLiVJUuUNggOhNOch6waozphfCwJOJJwpCVyCEM/fkFD9B0okPo4qGPi3W3o0+3WbzAoqGv0WXiHq1+vyNtiyOt09ljWv2e72V4yLXltbOYwOf7l7xcePCf2Q2mIdl/1P76eOUFa+ec0SDpxjnR3B42PZSzEcGOdGZfdlHxL0TNsWPg+SW2wEyYY4f2mnxJXEYeJOmDoGKm/NVlMADByF9DgJdAGQvBsMHlsLZeadfK92E9z78ZCK0gxoPDxNz1Gr1Ivy9x/wyZXNonaMyEiTB0tobvyJs6VXE3Z17PrwrL/jM5ZM5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LGf8vj1QMryQG4a1aPVSdy6K38AP69u4RglHHJEg420", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E5M3SyD4BGqB+d/l+zDb0bpRKMBmZkH3sI7fInxQ+ns6W5xPD3PasReHO9xzDtOqciJx9h//KeE5SSb1hf2CFHr7bkq4vi1s7l6a9yC3Ung02jn2F7++49vLcQQxE1l97wf21bpWtCdNwIOmiA33Wo4b6M7NhPXrx/PGe4V2hX6P44ihBlXP6CA83ffC/JtDotuH0jP0/nBVimvb01iKCBN4ScFEm4BCHJE3G+N5Xz/g+rfXslwUTJ4V0vAi6fLOQSHqZDCOR9JwL09M1fnWBkz7P7J1FvdNVYIgJGoAYPIkjlUXkEduRFow3EBhpSzzcChQL1K2D/H70aVW9plreum1OTZMBTde4takYqOZywNn99i0HZpPfSC5c4ihz81H6Jndf1A+d67DUzdGXu7jM+zaW58mVHrn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LHm8mcjrIDPvJyCAbcGTYQHuzjcgdYvY7IIyKmgrnt4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ehqpc5EBCyX07IcMRXpfZqsR0B1I5pIQ3o9QdJgh3HKSpEusgIavEDuF37bND7BB5J5sT85ht8iaitN9rJGYvSbctfmn34FA+HX+FvQvFofJXEhN/mlCyBGL87B/ou8glOMOhB+63X4OKv3Ps7M9uH3GHS8OCoG+s3ho3iNdU/1PltlVkCYDJSY0CqUBqFYTy8M+eBt8vkg9z2GHp8rbIcZG05vRNwsmqtYC+e6XdLpzOyJNilkxactw085IbHSXd4BTigEivT0OEbZiHJqATqVeLv4T7XB2xWZsbq33IDJM81Lda74sjvnZdQxJPAJYwkFTa7VOSRqN56dopIKzrFSfiNLJSMAEiytOwiEuwBZTbw8GALyoxhpPyoTQ+3pP02sNw/hxXze+0eQaag1tGsBg4H3T6CPl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LIgtc1PYAn6bKXznVVejbsd2QtSwlnTPd9FnA5pGpVo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LzCmxWtTlU9jGpLmRFYoPDto2rwyJ1d+Vj70mObNGwfKKmGDMtcHKe9MS1zwjmR4LcljulJVPF7Yf3chjvzW1qgIlw85cJloRq+UyCRa1eHZ5v71McgfyeOeyZDrzfhAYOu/JINRgA0Daz414vsMYg413XZMAujXvNGQIoOyTFa7asfxQ/FL5oWHmmvRlA/SPQsp1ORtqcqQvLqpXzfEWkkWD+4rUPXoi2I4ep+P99TYNSotWsPG0/w2OwahEm961tj8wtA/O44+nwlUSgWjRaZwvuxSDJ20P+7CqbQ14vC5wKrUGnOMCV8yA/u8LpEMolOHt0kyUbqCHycBDgg0K+mPzbYT+jIJ8BHiOWUt61UPHWrJRVA/mHPXOJJpdW5wp4Mwam7GrRP8STPVAPZAnqG5g0VmuvMa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LLacjewzM6VtMwVIdUXa9u9Od4KiQ2WArF7kKAD0UME", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JSCIqrORGxIkEPGmjFxiEDCHWIcNx1baCKPEk9rznFbewOYQ9Nt84sbGrPY5Z4yntKc31ql+7PMhmZGR5qTfhzlkcm/nfTOUmoleIq8ZMu8oZVy/TG+ESUS75I8kUmDH+joyAGI8v6yjPt6jYAduWVa0gqGXQ4fhUvMnS87TpbYtDvZbKkXS1NFjVXZbxXI0fOAtSypbMrpRDCveALPWRrRDrp+3cZlURfkv9xXae47jCLiO3Nm/JtzyXUGMtQN8OYZ5ky91Z8+j3soZvJEf+/sMkqsnA53g1A9HO+6ftGap+pt+6jMKruUS9rvOthLtowBGLojwtWYLmwiX1KaET+OS+LKNQyyu+3tb3y123pMMsmx7TssjJEgYlhg71W3KW8nw2l2y+IFA1OGeN4EGShbKqZNJ4PoT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LMBZaq96PdJLWzrJAdreBI5RyQ74l0Wdy1weubjY388", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M0ELkmJG++LiaM7En9E1E6UEW5xLVskC/DNhPK/pwF22go+6VTaB1IZ4U4CFASOLOZSISFRz4w3YU6a5Z+gbzStZocgOoyRkwo7UJH4U1ih2aJ5GHB8iXjmlKAjAnHm0dSj5CuQOglXkohirsoEIdmLwp2SoeEJt/sjhenW8g+1iPZCX2RXI9mpp63T0sRO2wVkLCVoj6Mli+7w9YgaFT3omwWwQgzICOC3pLSmgoc/svAg11l+tYUZ346Nls1P79UC05f/WhoL8aRwCxU111GI96rhu0OOxDhchFSDaczE2g6h0jYlKdYBUC13az1mjtCRVPbUsi5M10c60BVQlMLZseiSLkIVak/p8ZCKmMoZ9KJ6tZP8iZnrX5tvMtBejQe9milyt6fnCLSQTv5fGF7NyqvMpBz20", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LNhPe7rvsAc0S6m6ywg7mBH97aVXSSuSg7S8H0r9IaM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ns1uPg64GCihC+YZh8RJ8/HHVTHCOCqU6pZ2FHauY1Jt5hIhx+Hkw8E3+znLzCt/jUjiQ2r2TA702xYHkIjEXotJBdwERyJpifoiSGf9l2ghnxURd3pV9DzuQBBv7RgZGhX65wqacY72QjERB4JR9lxlUHX6nH/tktr9+VgaYXhJpvwVXBsODXsMPDtG/aG9CYk/2h/12mMTcZea+oYTfRwW8tkygO/ZWLvy+c1AwFeognBxwfvSkRzpTZnE7iZ6zMAXyw83+A4sRB80JRNbxZiAezQXLRejTVhvMzNw5/RtYWPhSxCu2d0DGaVLujtxZag7xy9D+VYEaIDY78PNosE1CqEAN5mJKPkK3n8iHgNMmc2geg5bku6Gr/drNSBDkefFfXWUrdJ7UhY90ZYr6Goq6aEwknaM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LNrDTQ+O8Q/ykf5eLbeT7LhXWtkXv+ZK/6LMdYrsIkA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "D1YdWHNHImWRA7aPqOj3UxVH+3ot/65I/PUsgS3D8T6rtMK/D4PoHPEI6Wo6MsHwAP3j2t0IbJzldpKlRZoJeEYrnccyTSudFPKhUnX2rf1Z2XEnBl0Ta1dGyAHIqMoQyDRk9pT3aWm9d7iy+/tB7yZzWc3sAzHWdeqQkV+QTCCa+mxWReGLem2eSkrTpTFGtOCsPwHfK+E4+9LB2Pv9Nn7GigNJ93klmIB8zrxk5mWSR+JMJo78U0lwakTZebe4uUAQg+o622MIlfVPodP/CWAFRsV5KMLKWkZvtXGqatx9SP2XX82oe1zYH6yAbZTofyaxvki3+s3zQXrbLdYAg4PuCujGk7Qlu2XM4Kha+UO9VSZBVRe9dqNVLotFSUr61oCbYi6vu5VysGOl4cfEnPM0TMtOWWft", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LO0XpodZ35YaCfp8nbXNGFtUfPJxft7QByQfuFOn06c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i3i4AaDRFr06yWNfQhsDRoIP5TgSDf7+dvHyY1AmJVchzpDpFa7T4ui91j5QlBOZeYzeoz8lOky9BcD2dghmYfOE5SlpGqGDnZ95ZCDXpSnCK6wMdpQUkxouBQGJjIqamFu90QaXIKgbVEUZZuZzG8i4WS86bVgVA5P9Z3nO6fZF9mkSAkhJb/ShfnpGyk+2ckLnhWX8j4j6czhl/Z0bPGKsTRxNEqW+4bCJw6BvCfirXkIfvV4pa3puKhFiFgMOrlnb2+cVz418ve7T4yg9p4v9Gc44dcoEXk4rs7Vgzss3/eD5qVb5s2gmA8yK0ag4TABTZMs07uwrekm5lx24DddbJz0/1dAncuPkKPOY/BXffK1J+MH00oItuCJuZWsflWE9MGxRzOpMl99VCClZ0yq+8/VWdZZM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LO2cNESPGapHXjhbs+6/1mF0qnSNzNpYlliIWM42Rws", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r/W0aKKfvEnW5tZCHP6EXoOdWo/US7/SeYCD+rPrlrE1Yv2ehYwT63EsXV2mgY8nhjjMthZn7W5FQzv8tCAasofEW4Jgd1Pgd+5+9pLfKE4zZRxi1cjpMlU4ZZd/w0DgxsNww7fpSDnT4ulgT5pnfn4uOC7KuFUPGDhqHPywFzejLv7RsnBkEhfVwVKQR2HajMdWZj/vYhBwiX/9apFCon9vK12gO6jBZuNbGdPipLalTgi6CwmVdaNZ64cs2LNtzinGiymcbVPOwpUeg5GBPOgmK7LABmrJ+YOjS9O/y75jPnepw2UOKEZ906wTQg1hUUsW8YRuUWb5SrKAbSWUhIPYvw2XDniNaVnGTU6Unto+Pe3MXiFFehQxrVDOzxTnZabX13CnwvxWqoPjJXx/cVFggoQLYL8n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LOPzmwbNlX3um9FBbX05ZWCQpzvFOU3qqXgaHiZVIUw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a6PI9fQymD5bSa8NaMTYCQeNvULMIkJMd/TWb93dPyvaTPMArHfzf4joRZYqfRhoDdUnhqGHAJC4MfIymb26T/HU92MEpKL4Q88RxMhsiIs1NRI4ZTuWv1qh5QXwC81Q2uwyjZxCi7NE40Xg2I0TwdwH2Dp5uFwvQ8Go/FDVnGvqIKPTJFLdOFmM/T6GvTNnb6SOy1FuM/jsjDwRhrplYZXKD7tg1CX2Fcije1hM2StaDTyjxz1yJPzA1EbYTvTwjIAnSPxdTyaTA+h3GIRP3SEqv0ONMFbRr0pOe+ahAsBi3eqsyXVC6rycGYAdlkWCtwH2r8cfKM0TNonugYaJLhsiAmTwAN+ckNNmHrTxPg7xWEtP7zhrEhCUDRy20KhJzbsD3DJfVYfznoQ9PSLjd9KZ2gHUcacf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LPYWmnjadmjqw1bQLZIQ6/G/0tuyJIQtil0106EHysM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Y7a66QzKku8JkgEQLptbeFiYsx60lUNXXugT9hNue2wuyxK2baRMEwDqhGuWCC1xYTKPua9gNz5+eE97NmzGKA/W73LPM7TyvgL6k9k7LfBytCe4e1EJYjz3zwmEOeWpPdmH5P6jRj54QMg4967J7m/aKTyTLoEebOvQiFmbo2tlHVzXpnKj75RAczt7FY7UQqnP2V8317tBGqgaOKc/vsYkRuaT8+/dw3JxKxuNQgoQUOYlWRjjs1brYL/m7ilOTDk2Zty7zsXSzGLtjZ8o1mn5ZuhXOXuLhtIumoFonq6ISOLWk809sG0TBb/oNYjKXKuyS+e63GS8QZclAfOe2ntNISOZA0d+EjgkH7Derpq60kXTOtHWikemtirOIz/lqW57hRYy+tZCesCNEOFWEelumyqycwKh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LPjJ9pxeQLMPEinh4uBbM27zyylqp9NvGOqO4Ck9mwg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WJMSbajsS3+Othc/a5PhMDQv68UMIqcHokSj9vy4Z4IwrVRyOaSzIXZf6EmT7XgFqpPDceWIXx2FMzKnVUKZ7jOZpG3cuFSB4Ggonl3ek83u2G3RnAWXysmPuYx4WWQbgg6Ve94TvJLPdBREi+z4QiEpFntTKiWryTF9PfljPq/MlDdX/npt7Ws151vOWaPvtaGyNeUoLYayDEBAFcPY2x6cUUIxd/uOwQAeha7IjNR8DWAl6y0nc6WmxPhC1lFrGi2mgx9+UZ8QI2t6LJMARyAoZTDiirovyypjKR9Ng/gPrhGqfpoSJqWVY4a4ceG9IhH7Afh9U6fImRtW4R9+E1lL58Lnjy1EmlIWNFEfkP2NmMQ8n8PbMgf7nqRY9Bx8nBq4N8YuNRgMmGEk6AW7nIZMJlyG4Jvq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LR1snEIB/2kkFTvYIulWddO9nJVf3wJXVqUSEHlzeC0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r5i+O/vLuWKpGsYOAMltsbQf/crjWor2N6XGgmNDM+YWg2o3mXYycPU2XzFefnQyMymGlw+vbLLk6Yr2t0QdkIGLBedJDtDmIuZnqDPfKWqE4A+EvOjz3zyFjptMCbJgSoOXsGb9QASbrEc7thuUUebcANR4vhDFCK0dojECNVAa65XUm6LLAXQIE3p24hL1kSrqsWgJVJvpon5nYSe+w0DddhsyFav3damhL5kLqkcBumwgsjkztxmDrb1DORm2Q1EdRX6mcfBcNfdfHP4cPM99soeRQP717W0yubxVKKraGORdXbUpITEKfMDzCEOnSlPK64PEPeKxFx7UKd52J6Vzfn0tMyyoFYgIBhvCK5QXSQF8GjyFgN+uFOlvyivVSlCogZ8VhTf2QR4RYvQtxM876YqJI+W5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LS2N4moTlbR9AerY7NtTymiEZzcH/FNLXOCpIFMAkUE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yNnXBpBmMSgX9l0ccH6boAQxkDLIFQRKIcLyHIQVfNQauvUJpXDHcxDTD3Z7YnSSNPfZYR3j54uAN8foyl4DM+m8IANB/vmkaKc8iSzE8k3WT62NOcTwG2rnxxG3S0ou2YUX/v6R3TddhhlEVYNefvC6G6rboXxEFdPSXm678YtR+7uEj0/u7Osa5zcxIYHl7w4evBBrvYTNfEJIMt9KcO0mPOSnQIbCDTba3F6OM58/WiiqyXWR+LZttEB5pJJpfddpT6Qf+FebLTGW+bL++MfCnxc+o5rR7aBizoeBIRwaoXX8xPBAVekl9OXVcBhWNLBWwVLHIIGGqW4FQOtarkxE3jJUj7svlZ331fR+uJr9YGaOQMtz5PMWcK4WcwLC9n0xp+691FHe4w/T4JbRZQNbBrQ/AxTA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LSffKzhteNE8jWfdCiGRkK22x41bQTv2IEDA/Yv+yDQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Uz/SNDzoS7+rA8HnWtzpXPe7KqNnI4bBg9ekgmifNogmm+o5FgNP8WjDa3b5vNX1+Smkcjr9mPRCfZxaTkmSp+KiPJ9u/oNiQGWDV5yfwXnlAmyItosD8WrWkH8CN1D/EtlPHSw02BvXSP9gZ1TO/pnF+R5fVwsqLLnG4fd/QPMcTrHCzEuzGjVaEfZj+sAnpJG873CZgV879WwrX9SDPDTA+w6ovbpVKdgUqby7S4N3/lmD/n91fYvJ2XF0g9fWJOX7EnGrZSM65W29UnXHkA2/Z/xqUZVazzDbSFeWVzghONgfI062agmoi/K8d9Px5nceW8qynJUpm1anUof8CmhD6hlEjBbtfWVjT/mj8OlUDCLooZSsqpOKfJC5o1l3Hhf7tiANV2vQ0WktpcmF17eb8FM8aV7n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LTKjRHfgwcr4XJ6hFbm21yGxgzLJRNlV9WjDGE8p7oQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Dk2nihZnpLJfqra+0P+0AO0n9xLL7UvajRdx0EL20w7ZSbOrnRqBsA9FtpE6C+GmBoTLui4wmQ4hkWAvEm5F3Bofw9F1RwYnbtRkYrzdnY2rM8iTnGKluAjqwYe5qoE8ag1KSriM5YehUhvy11rOIo81Eyr9d9E7ppZXKY287NRDIMjOH1rEXwQDRAEXw7d47OxLUkv+EIKKe92PE3i1uBkbz3C8lMsb3AbznzRB8LeuW0yQr3qmiELNkfMwZSn2m+sUkk0mZwbK3BI2t3iO1MUYWiz+DO53zT3QlDUQF5pqMDQsBi6/my2LO4vQpvbXTr+rNACo4EqshuCpPfGERwxm6n1sHTL4FzzcaFumRFNjjAtJPHVBODQ9tjdLtwQbVLgWIyWLH7/rtjcdNnux68b++TY0WiC+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LTMdwmiwM9luwP/fuJ292NPU/hxovFCfgmOGBb1gPC0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UMnga4CElDpCedmS6wsrX1bvC9ceRM5iRiFJQ2tnVBQh9CBnLw5oI+Fk7HvWHSN8fdISX/qGlfIVJkIPO8e6QbQWb9ba02nceEMhJk07nhaQX/Cx+knIXsRGTvsCgUekut/TDikDDevCvk6xWpzGgaBoHnL+kQFizg/f0y3y+iVntsRXE8uxSMwcEDV4Low5r/fb86pDVyXz7E0ZJjRbC/noiw1rTZZyJyRxYCdni90Inybu4z55e/duW6xJpTNbjINfLRFXwgvE98FSZphesipGXKxgtnMyQwZbq1x/llMhaNQmrttcew2KgOuRah7K7Bk1hET9K0RZBtKMyvDT2Ufc06K/CD1yR/Zo7E6IUwltgQqS17PDnbJYxi3yY6Lbp0t2VCj53RCwSa+rH9ggjqutUsGH9JtI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LTS6DjnqHj3gJhX2yx0amlR9PXmFJZpl0Z/XXYgjGzA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L6q0ywBVBj1sit+eZbGJi3PihHAMG44byivilajAPffPAta0hyqNgzm4X1DT6ZIDzTCm4hzhDHcAozrK7Zss4YjRmJN/GbWaGqX8M4V18VMpjUOoxGjDSZY4fGkp+pVKCGd7+hkzgXJhMNnGALKKAwTnVxQUTZNu45WCv3Otj22dlFEs1/mSBBaTVzjGw97cx/bpAgbXDrThABtbe9KIoS/6EG4rFUoIYTowI3JA6KHooHv+MSNClRbjVvpDxG6+QwPZfpRQTMM7SWkHsouvoAi02+Gd45/syRD2a68Jp32VfTjR0i1FENJjVVW7zAF5m1yb8UvDIvTYgkneMM7X+bXRYwGY7GUZynEvN4ZpabpOse4lcmBoPffGj0c8P/LkcUKNjjSFbEDn4+krrH3sXtj/wmMO5YSM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LTWFGxRRnZXQWLta4VNNQEL58+macM+TZLMuFkZi874", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "86g8CRPoxvUxgazigGafBMyEX7TAi4F1nuXwizlBn0WmwBU+1lM/hRDkSkORnSRVTDw6fpVwjpzvt1H5A1BeFntbYM0eT/r7iR+Zjk9TsMZ+qFYAL/5fBTGT1n2ylVxikS7V/hecJfkdTwg/eLEFYJ+sqjKL3SrJZ43Z8JPee4KGhWdFwfhGXidsvOjdnc0HfrKuWk/3+Nz6kZyZevS0lAB1RaE5fra6QIi0QsG/77VSxYAvsFVdyKMFWLr2bwb/xA7M9OjbbZjOcv0TsWu4kw8s3UyJTGlXTX5szWr5lvksAYis/4PZRgGcyMMVtPUiCg7YpjFvXQDFeDVulIv9CX4EDhPDd4xeBg/fAE65SPQVK85dJoAJVveHmhEpILUsnhwQsCXDkrjDLaztThAjKKU7+idfiqt+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LV1U/4y1JjRKp2A2/yeYJaBqbSQH/WqiJDTb587Fr3I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3UpXlYMgrzhbe0X3xSz6/ioynnk8cubUMJ8ex3X8jEJA3PI+C/+erw26bhB7mV0kgA5bXU2xm23b2+gwXNsDs2fM8+h7dcMORTv4YWZNdA2mdgIOyaiD9HfUTwM0d13xw49e5gWpjPEt5vhNwTBvg/GpuiRLio578XCXG1jeaY7awpNk4uuy7PjlpGWwsJdmZ4l8tnEJpKxjMtCGASSr7UcfUcbtrAwEq8DpwrKEuCMDeGjEg02fuKsMblIv5mvwyLA34Q+/pME3EdNYnzERWbfiySX9ZyR2MW/8ecJdv0fq9lwIC8WxfYAM7RaS7bycZgBF33NAJQ6sKNvinUGDsMq4vDlnyFqhoK9u7XdP1ysccfPiFh8U0ukUunELtCqyfK3yEW+cl0Sm9rG4b6fFFCxjgQbt433J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LVFZOqIGnzPaYQE5pVwEoquA8+UFf8MIIHu+1ZQKgbA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GCDYfqWxrQS8VAQOZwbwp0WasP9+X2XC3ZBphmPP49W+b+G7t2ZEEEUUKQ0XDQTKtmp7fPkkF9OIPRo7bNnJxDZMAKQnlSohiJAXmHRw4Twfe6kr/Qc7CjQRtCIJiL6gtR/IpW9bvLGFMIDLb2hRLOiZMxmD3sySLCIp9DM0mjhKKSEZIu8T/PzoqrgVWLV3LqWZfDI8vDzYhiP5ahQehWcWVeNxmRJxck5hMgHbF+vOqIb7U7oWJ5bZsbvf/Tzx+aK2HNUUxR/da69vBjuMFlLQTw3QXZFFFOjv/rL5yvhAy6vSvQdLxSKmNthZZzmB2D2XhkvnBrvRzdkbxL3y1xYTVRWdksdpFuKg0BwLNsAaqA5fq4vb6qaFRiG8GqbQ8Ksz2FcxZ794kdyUGpruwx3JOegAYcrU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LVVG6lGDfWGPSxbF4GoLZyQ5z6Wv+ecEVNGiUCncpnE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pp8NhVPTp7rWgrwoAc4F3UMRvpXkwksx65lqAfc12bmtNEwu3i4idIyUP9URfY109aXZxXCwHlZJ/YLLMb2y9nL0w9rog3gxfS1ThoFGt5eKBmlTRfRzq+9VJ3hM2wSGQYW09+RTUHsVTw/kSDollMGluoJ4LSi6M5wQROP2KRXLBQhMgvsI2AFDBbiWO4x71V5TNXDZL5D5EjV0KGVdBDDlmtITnBAJn6RHRXwPDDoOUtZRWCOZXik39E2XG8knJr1r6FD3N5MfHpu7jraNDCeg03HUxBC4u1v6MwwkTjEdAx02lbyjAaMjDcI1ug7VvU/dy+8+DlT63TWAejKT4U9dH4sbMrftb8kdiEbIwezG1VJWAMLNEeL+LB3bBhuj3o36Zr2tK2JclGEX3rm+0aFZmkeyYECT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LW1EChsHYfWHe9cVyjJgNUw6MLbD8IWsVJdmn9kyMi0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dRYIlqT7KYzlkf0gChgt/bn9+H/YofRRoQ6KDEjJyydNQmdu+f70T7MVdrlNy4ZeO9pUYJzF7RJ7uB1L08XMV4LaZcNZmyWbY+Fy55ovxdIr5IesFcMziZcVA/AoWZwB5/YYiH4sZS2RGJzLJ9pqOiSNyzXGkdNcyIKnQgsWFWJgahMZRG1X4afHCyr3bX0d1sRTCc2qkhVY/I3Z3wUe0qFJEjdJbYGfQIT9tz7wkeaTQaFBXsqBq7w0oImrWnzGu8HRyQbg/vEzPJH2KTGAAcrdEKPYC+YuOZ5+oVVfM8Ztcvb/148IZEtaYplrfbp7+efaj2f2A4Kwht2UiGzfbA2fU/rfvQUBVgRpObLWjgOcVC3cTywHNL3DmdnsDG5cyUC6JvihpdnlcF0OcKkq2l7fsx5q6hbO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LWAsGD1YqfOCvgH4zF+kJL7sm5CKeCzpPtk6C4IDJGY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v7j0QO5WPj+0ikK7ZHC1T1DJ+z0waZCaAqYYhHHVd9GB6xsBIE/4AXGjWDzby2BkBbaLrnj0LpcLQrgoRYxIVjgY+ZoK+rreecEnHl8Q/ReGmjGPXnKxdSAXt4JIuDwZGGTgYblqBjmewRSDgcLckZ0qMKeL+7h8j8x0sVCU7jUA6oa/meQjo4WoFAIUC8Cs2J46CiSWaJjgEvf4+dR09G3nX0cpiz1xsYt7WcJUZoclxDgU+I8SeUx4QLoN347rzuc2d8uFaVG2gaQz89ZhVwM77LT6GL+WHplBZyKAwZHKHuV3QxihF29Vr4fCKLjxYfIKmwqwww+nBKYTTK2f5Shzdwt2qc7ywSP4PGH2OIWa4jLx2QVlL10pupziFEOgq9mjYitS69mS7ZFvEwoUkI7rC+msOxwZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LWR0EcaFADym/AbJFjfr0EP8t7GHSXr/bvpMxAEGFWo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+amW9jEkV4DSalVdEgFwllUhySLAO12eSS6jVIsJCSnL1L7y5y9NtYsmIb33sbaAggsn3SQhKndDV0yw6JX7FW7T6A8XywdM0j1U4imgF8bAOEI98g06qEGBZ6nDdTYzcbLmmQPc5my5U0Zr5zWNh1Kig0pR33CjB030V3ma81a0YDpx96PsncQvovnKd3hc/t1k3NFH3ofbghahCHF+/5SsE1KJk2h5Vn8CEsTwXd87gLDGDoMiIs2SFYJIdP839ZEJZJtjMtQpA3Dbw3YpPV3M2ij0p+iIkQy1MJojNcys+1aqjyO90R4suQoTTJRHD9vROGn3WB+FaZVroUeOEW5ndgpd+3TMydWjQQ/sNTSahodJ4THivBSCmzaP6UvviQ+T6hvYKuJWnfvytfNbRgr9hvdFx/Vg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LY025aMi90HmwhcVCvbkmx5XXrdIco4OR4oAgqC08Go", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r4tU2hO1Rg92ixeWznoqCOwyTv+wkeMghGsiWt/ImIjJhMcXOT2kPf4dXjCklOOUbYV/Ppm0bwDopCPOGXeRuqnpB+nf2hJ8x2t0Xj2082ZGFk0zX+fJ2RzEjg8H3HoaaNg+qSOtSyKZ+gcWjlAYxGbdL2aqn/CPskEFjP7FjZMnvpGHkwDtFCuEbIRnZ74jNBpMkaGS3SYNuS4ZbmZ+6H4cbNMuiDRSi2L7Yhm+QC9j8CXg8NCivawCXILTIakZpGk2vtA/ZSWYmimC1YLrkgIaOjeW92GWeoxjjtV8+tcLiA1mNyTZmTXL+nbrumwLNQ1Ls9kLgbXGziWTMj6W/SJcNZtLumIvFX4DZLUK39TQo9bpVPuijI7dFyylLMQd+YIkFFreSmxKSEAKU7/EgZUbDPISlG9y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LYM53mUJ/tgvwQKy0WfOEpidjFYeUbrg7ABu8C+eZ+w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4PDkZiePvrBiDHzcDlHimzukMO7whd0c7JvXszCSpOyDTlyJywutpnFIAAen0Z5gKQBmRtwi/Ifp7AQjQfs/am6036KYfFbt8ZAePM6qEVSAZkxAHQ6N5+t4VwtkcfILcllQxJebLxDgqfvVFJ5KQY1TQthQ/TOBqwoaLD9NJKcFCKrLZbGSf+cybpRcDIqoVcCZG/G5p0ZkxXZTdnV3R77bT8vKir5pXabWhtYs8CSOHPOdkIFmNeYSSbE//IMrfFQVyxcscS3ghMeQvfAUhL/UYEgKyIPffNmGuZBk4gsoW5IiNwtF1sB8wIcYVNf8TaJDoSsceb5teBpnsI7Vu8xCraBKxccj2BRJAz0bu/DQb/j6P3XBBjTy4+Cx+fbJ1w2+5aUOy+19cbNV0+sx89cuXjBYF88c", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LZDMtKNwmGPyIOez69HGIISPH8dPnlvWN6kGCXD1Bvg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pbReuGkOd4UKFtdo0LjEwbj7sb8Klqm1rhTohcycYhORywQBerCf80uasX/KQQWiugshzcwusMGdl2dgpoIsPh/kMcP6XZEk5EH0xvxFIXXMuqdiuaY90BrGnxmhrBd4rogstb+2kqOzLJicYJRRYt7bW3YxcvPpgxNavxt8TWvz28AR99ZjA0MNhvibUJ6ePKt6piqBCOSmC7LbNQ3A9ahv9rjVJ/jlBfoO5QCQiuP5p4G6RybJZghbJz4r8GWPLPSwduH43loBuZs9eINpCRGqYq9CYROnyXx3HtYUJnqLwIlzu1LBvmJCDJ51gVBKrnF/8s+YV3Eo9D6e8jdQ3MwRXPSwVkrLjOkXezfBnPW1ZqTfCESbnXwwUXC1Vg6u/Fw1dFE9GVlLaFHpVATqOZ0cxJHn46PW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Lb1nd+wiTw5vJcJ21tnkgfe8ix5JRZUjwDAMuXPNSl8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RyKXD/acmtO/6HnQBeoVQl/Pb2gPqjMo2Ao5kmX82yIgczFmEN+urk5pa0MKUwmiyNhJ0MZc2UonDg3q4nMRvlLTZi21fRRi0xD5/wisxuo/Q2XLZEy2cuxCrwIP3MNuvHwgF9StWg4Ig1uvvhqB0ag9DDYH/hLFsdEG3CRqLFGxZdFXXu8wqPBMRUfKn+xsuobqYtrAluEsFHJwnJ+Axkr076N3a2z0RmaT8UCBA52+m1+P2FTKt4ZCGKNU/62lsLrRlWMpiuZnqAJ1HLPlylpN/s+W3FxNpyskkJObQ2Kj/OLpDtJPUErY2vwKQiHD+tW4MCrZ9sTuZa5Cz14emPRxo43g9MfonNDQwjG6TSFrJiLQSb/202/CDYqVkm7OZSz7uowluZL+pq2qRGl49IuTHuYN+ICJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LcEj8oNsMY7eEG6vIIhStNnQHnTb+cHDmKvAFrV22/I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lun//OEtTkTEwasocv3rVZqTuQ3RcpS2aYelHfS4vnzzRaUkm5uEho/xnOEwtRkbMm7seWpZzD+w6fItv9nyTid/SXADs20t7QPM45ZSNC4NIgilg5UVhYs+8g29YPI4IwhTp2K3Ir9Cx5GkeRON9FEJZjcTMRnQVTVK4abvNi3E3/SxHFQaH85yLeU/ZtRSpz7swGuWjRQXKZ5n4QKNc+67je2jwO0VUQGgNRjRqrh7WoNsLjunIa2bB+UqjPxVcBC1pdTRU/AsgcZdsdy/AC/VIaBbuEIja6Jo3EWdqZvy2weGR7BPx5BaHsPX/WIEzewxhGJfwXAq44YT9GoM44Ke2HdqnFbiMDXPlq7opneYtjSnYXMMUEMOzNKDcnwNVQ7vrUuCURfZHoLlq3x+OiEW1ihaomjI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LcdNZwsRkPy6yqUiQToTpXOevat2GfcW/sxHr1BiB84", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QaWaHQz7rl+VoWgVo8/51o00pH8V5njU+OpTvSuOzlnNF5zfHz9A3bpem2GjnFR4kKUHwmwaoHeePn8zX0EOlqAAJcaId31Oo01MvDiW4dRgDvR7D4Ev8RZE+VCIdnCHsMijT450+iwAAYrqOec0OLWHlyNWzwfVpZKqQFxaUOwawuQbhxh0gIIClg9aV7wwf3YRkW1Zlsq7WFP+13U6itN/EqiFSPV+TFsBfW6pkf4RByRbiViq95pvIxNwKP2QXUZ3+iZ/4wPWldJjAaX+YPgCI67+WFiwzXnGvDOgFh+ky8s24IIjoFABQCh8L7hC9A0Wgm+MQD5spw7KEJYYk130VJBYY9nHMBBhlY8c8YQ0ytiDSp2W1scTUau954JvDCIAe74fm5TNK1ahK9eFEeYbg/DMg2f3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LcqPOmvLJz2k6NKr1vJWuTjap6uVXkFWexscB3wqboQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hnA8E+51l+C4IRFVAcqrn4vHF17FBuxjHpridBjey278jU7p8U3nochf++7NHrjomHDdpdSVrhy2tp8h6GroGaokWICbFGrYFAcd/H8qtfEbggrkSYlsfb5qjWkCx2Ek8vSb1b3Wtor8Ob0I2QFqg0GtZB7I+yeHSAfcTNPX3UpPOpCd99nKtFfkVCuQsupXUS2Hdup9VwiSBGPgmBCAtyYUJMfIVQFEs7KXpH/lat0Pdjh8E5e9EeN49BRm/nCCobcPnaM1zrxzzfV+1LyKtkbBSX1sb2P9oIBk/8Bh1sA4Pi3EJt+AjelOIn0AFxh7vCfdCQmcjmt2QpzD0DS+LjUbI9dcblCyrlapP7GO5t7k4FmSAudsYjneslWCowDq7qacLpgQkOay7+0Y7TBDuQvkkQ+75ynF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LdB7Q9qng7VRqAPThwverLumRKyZJSSvFFMLW3tnc00", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qtwQtdLWp92ORmqAd21DkzQw2eCMU/VJHuKSnaMeWsbUVzfef40At8RW1IHAICTkpYyb0AY18TMKOLFYTPLqpetlwE2RgW2/899bIfuW62iz+gK+LByXttIVWbVto84rDffMFvvGPnn5/Dm4omyIrQxV1Pl1RpSArhB6IMLnr7L8i4c+bAJjkxfb37aWgK+egJ22je3JkKZ+1gzG93eaUTmO8rflEmHjew4qxQdqTILjBu+Q+BB05Z3GkbN8RyFh3VYTgb6i+3ux3lj7zxBO7NePyB/PGeIqnDpaBOPjbIaSTJgBrYkkTYOf5eZRuYCv4RSirni6FLQbaL8bDSJjf/TUKEq8f7JHieww9X3idvLHKpaNaqOCL8qxxfY6HLNIxBoqmTSf5gTrBRl5XFkscbBNmEUQo20e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ldow5MFeqOwmMdlCSiYRmc+Ie/WaKdscYBQmJyISM68", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dV+CdHJpJh7lru+yRFkBtmtf/DAzJVoAQNuE7AT7/Y+dqBpDOQsc94iOFLcqIfF+fsFbkgqkZ9n+/pDglpTLA7+igybbcRZu6I7LMKFK/eifohmNu9IC9/vFaqxj/s9vXfETDaEBYkqI08TzvJDhyrGdlqksmNLC5Dlv9mUBNzQW/vDv+iWIC+mC3Y2A3ZzDya5Eimv0PB0uX1a+80iNBMQyjZr8ugoKSsUgDm2+AXx/B98cvdIPCVsQObG5ClwjVkgm+1K7xtyiu/03mQJeqem4dH9t/QMkSD1ssaBSxhKpm/857NJMiXJy9pAQCCQskkn5Ub5rSi42aRJZhkEGvdPqTDFRPFXO3yEw6V2ZufxPbVfbcqBZg5bPLcKEeZvidzyr1+w6sLN5FcXRiglN9mCyxhIhnmEV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Lf3sSSRF6b//TAotUBne9kIuaN5xbuIq1o0dAe7VSEM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "piODtWnkkfY99upf/0Vx1C1wKzaAhEg1Obo0ZVtf1Bi5+rJpnVSX0YgtU2COnCFfmy9sgAQpHGg0Pt7Zzluj6gDra42d6wE74etLd85qt2iP/JIN07V0xvMBcIWmlzz3VItujxpDQAeX/r8jr01BgM9anaXIME4UmIgWgutv+7jS3ntjtTEV4Tyq3udN3qHK3nHlY5YKfyOyiclOeiSTkPTNHDbht0iYj4PTcG/OcYZxxpdqFahk1OBQhnAyTdd/BX/DV/IkqOHZlYtArmZ+ZZRMTckgpRKH5uvMHscwGcRIg+zwoPkSnTX5KZnA/Sms5z1MYCYCuYXT2m/GXH3/7v/Qe5zx43U6aNlKBk6ppS9SxW9glIe7ocPA4USYDJR0OCihWDYJeDeyrn3LdeSKFeA/C+s4Hled", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LfxMb7RtGu8gMlAFswGic0if/P9O98U7/EmzJcHfZH4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7y4VcPDUGi+D/M+eaWif1fSS8359tnTliYz709UHnFGzFUdyIupCHHs/4t7xlyUt9K+8LMWhAYDid9vMQnoVGFFZ9XBz0Zth6UpKeYBCwlK+JuildYYTY1k0TLNWjlRX43IOygPMuZkpDZJyN1yUt9T6vwKIseVzzsMZPc8ZETkRPfhCfUiuWTcwzDF2anCp0VtIL87MT2qtTYSDFnmnglsiT/CEIRZ6lrWbwhtuH/VPZEL4Ey6Fi/2+o0CsLJ4ngJijlQPb7TaxxGKCkGqyaT/PvolFKA9DSh0GCVJEZtrgd23JT7M93ULo6wuA6K+SEuS+iwPLoX58eXsLbvdGveWQdTe0YQA0C8pzZOriHcTSdmIiJ5ebWAD9a7c9dQllPrQNzrUTb1rt76/QhTR5plJTpbB4BPju", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Lg1/T2SBUR4zgCpblimQLQ4O9I6XJYDHK7st4yCFKlY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GjqUThktg9za8NCmFlq7Bhi+0mI2ODHDo/wK49t+MzjOvEov8deO0TQpm+otRwbuYume4UCbLHro520chqLao2jKR8uBIt3XIx3igvzNXcQbmR5k5hNFXpTL8xF1dfhAXRetX2XoTWoxddjguqS2WiruM5ld5ZPLBjxDwVPrpzpvslgpYHehQt2FQ6GBa8FcfOYnIFgAqayfCEJmT73m4QX44DR03L0cYptDvYFGoLYXW+5JaNp4LIxcPmrPPBvPRqk8sgMeSoMR7XCzKAJNlMRd8nPsRAPYlUocDdKAQGZ5nHLOPZnT7gDnn1zfYpBSAhuw60O85Flt7fMvQb57BzsbJ3glYgit/SMtWgkl+np7sxM2milB4dXWyPCbyB1G03Gi5JiJvbp42TwHp+wBIiyw+RN4g3qt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LgS9ZYZDN7bG+tCcqQbdR71OxZPgyEXjYIAi2YKnI7E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DJ5+OSQ0Z2GyHNG4lTf9NwQE6w2hawgZHmTYyxEPJuEQseQYJfo9o1l8o+t7v6g4ro6jvjpJ0OFsOhMyROvV/sn+iTJDZQLwolD1NRW1YNyZXcoZlc/v3IyssXqH6paRrCjTTMmRE49s/+vW+K2LZqCJKeUdiBeVNJ6pScbTccMzm1pe8evpCvArxBUNvJQ74w/ln+kY6e/maWFCdbLEVcujvnnXo9Mo+QJ8yUMDh2joXT8d6Mx3UAeyFtYBfGYmT4KxIuiU3ysF26riu/y/5Mrrub9VIu/S9Vl0FKywFd3puIKz2F5br2Tcq38jpts1glCMU2L1PLLdJg7mDuLf2c65TUsgAVCGCDjdjA9in21Rwdhoesp05R4vAjhg9+M7aEChMa11S6jJ5WO4wtOQACqPmgtz27BG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LhmYPGw6+g0jxj+HaxRWGVy60f1TCK/5XNGc2tj4nfw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+XpzjnrO61IiyulCRAiUeC0tkPlA4Bx2MrPDEoApEoo3BzImt3a18fRT8rohdB1CcDKEcGiKT+FWZiJRb8/J/bhP2oycYeKTP2ho/cp6HuDSG3dgrvn6BI4lxAxf6FcC3/MDnexv48oOdWGEiE7I1VlAnUnmPF4V/NZM8Kmic831OhtKT8LS5GkLKZmaGkBOkUhQBYAV8AoyVYhWw3CTlcYrqROtZb4dk6JmiR1t0JguN5SZTmUq/44sxi4EiU4fHnLmtkPrrOoMaB2+D6EAPrWCbYsPOp6SWcNTcc5YHhTxbmT4UzCI4eXk5yk6tPmvQVOWB+skAbAk3oYv+mI1y6FEzxssL690K+1JcZ3zgk9hJiF1VQxD1nIz7VwsbvakqtWv2XRjhalA/on1qTsyvkKhLM2TGM53", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LiyePsKviqaECmZ/z3f5RWuTxw1ukNY14SNmQE5fBt0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BcRTb0URq1JgGdx2u1R/EwijoIrhJ+74eLrvbSklpmDjqoCt1fPjoIXdA4lTwZvgm/McAl7rFo1ivD5+uQhecxELJ5FN47xMZTQ3s/JLuZSAYbcDFAD/DkSVjsrz4qh5h7zHCGnW0NRq37FEMdWUowb1qDuT45WJA7OUEFeXgOevVK41WKmSPLqaqUzGDXZGO9bP1RoCQM5c4MT7rsN8fj9s5QW80X8lDNwozxq1+FONEkA4gWTQwm1LrWtVAxNPc5YAx0k2/Ca/hwUHF248U8KfVKwGI2q0DOxOzgOS2OogQPl9rnvKVRN3jbQAEj/mj5xmu9+i0Qe+XBXa1mlTvFgEHPnHy4gmmwEi3+sWMXTpBZ6YGOnA5pcJfnh4EASDaEZrNsiCusQylF3C4TJnCgajlFDDiR4J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LkpHyTheYbB8DdHqkU/FkjRbzC4ZT3mXRdEkoSTZN4o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NsMRdnRg/nt5vRADV7W9qEt0vsep3ViXo+0yLyB6sEunR7pEi4D/aTvd38492/eLjsyG3S0PNyZlq24JAcykrK3h+dSWmo8ykBHLgWF/HYgK3ioz0BHVxEBFqmP3/LxZRD6dS/MzNgAZGENO5Ffs4QDX2+nd0oH8rOwEdc6XkyVrO8+CX7WGt1xICo0KvJjGxGH1nIBXGnqoALl78uwWVOZq891jeOACF+S3VEeOWPD6B21/gDMr/E7yQXGVw1GgMCkpagwUTb7pe//j6s7jY8mAUeaoefSusFJeMwJuKb9poDN9JkXm4IOiURpXAHCD3ovzhsb9VcBOHwQbp7H49Of10OFyB+rr+6O6meRvZl+yyaRiaeIxfJmcSqFz4NxMR3qwY/s7FVacVh9RQZlE5pcr45Bjh9nU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LmyI//DORRUZC9E6BrCMQrh7xQM4Ajps9hvHo0wQ3yY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "epmLegE+hF/vf4L6u0oIDqxQhz8v6t8coc0bjS7H2XBpXZayDomSlys+lt2jvVxNPgpdzfANll75TbkLN8oSnylxAIb7UwHU8CN78btbi/k4cTa8mUBtnT3pkn4tZqdfcZV80PYsjrwQQ2EBhw6rbb0SnMpOlKQy2ckDc1QepJdOWiG34b5bS20xjQIi4tNrk3LNjM47oC5QC7v8CDTLiigyN8IwLjs5bWEjM5CTs7PE8FOd2/KY1O/Ui1y3td0iI7q5Om0dErpcVlw7dmiGzhBXXmFKrffda4wpmwU193vU4YZWFok1gcUkt7PsrW7HfNODH8oKu0iLUVCK41xB00WKR8RRJItToyY3spkq/czUAEdwHtjUxRMj2cYBrLvJcUjOEd+GNUo1IedkKg5mL6IWAPV0tTqi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LoDiCR0bLvA9kdN8E+GIniCrAjaDgLp1V2RqYELjOeE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AZ313r0lMiSq03G1fpiV6dXXoWGfa2HjXUgJG+x6B4EUb6WI/CzHSL7xND4N/cpu0azkdtPy0BVBo7KYzMw5LHUTHKNRP+5ed5ZzV6CCYkk6aK5YwFlpDP/i8Kvdq+2FZmiU51jQAGvkWvyzmJxVMdyFAeQqTKqlm4CXG2gCheUem8KK41j87HhRnJ5dUMsNkwTpUkh+LrCELLx/7MyiDM/xOMP/B97X+KR78GCAUyN75IA7C4vDyH0/swEVC4Eyyy2Gdyx9JVkpq/CbTVn8Qqq8qrq5FfqI2hAqmYRc8jGRY2uxaMSC0YuUjrd8aC/ByLyThkCMvQpuXXOf3CwV4Dl1hrEEPtdJallRDtu0DIUdTGqQCcwGmaIHQZqXv5r2enk/CLMFa5ouzTeu16XRi/E72KeZrdKw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LoqDXU5LMe4EK+V3tNghFYUWDf45yFPZA/Ph5RVPjKE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4dhmuVvQs1rbgTdKF81s089lO/es83P9kkzRMWa+mw7afpsv1slxbhV9ONyVe5LYRZwzMeXxj2YmcdH4+oVA53QGnoPlZO11nGpeG9K+pkjLVSDcAnKj4MHhl+v17huAUwGiBek5OrCzgwikXHsfR3jR1QrciYI0TdEM4urBfMiHOE8LDwgYwIQ/0+G3OtkoPYbuGQJeqi1ZmZho2oZBg5KYDJOCZYPhb332LxRO+awjISZV4H3Ltwh8jkX+45xasO+7CQzcKeJTIcXDqkzdt7o+IQbEcAva4HLpdl8OHLAED9NG5Z79tgelbk9lBwMtl2ncolYBBslX11pUOAy24ke9VelKvwcRwCmcD9f3bXReA1Do8RMEaFq5bU9FMIXXQgXXdyq4XTmgLy8C1Al9AH7SFWPjGu+K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Lou2c4V0mXsTMKv54TMlHSP6+WQ7fdd8SchPWo7srBc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tH7WfJbGQHtzazUqzLkRix474iYWvdY/U8utdz4HbPPf6b/W5QIbkB4UoKe/hAVbx3wXUnEttL0XMMlKF2Za5NNT6EoIarjIvk/mCLH9yF2FmBezhMSZUPRPqvOqkJcFh7sW1ObAb5GFk9J7VB+HEVWheYYIsYV+4oKccxyKwoDg77Y08KpS7Pce2u9IbMZUprzJLxzlXoyCyD7ZBf7xnaB6HV+RujPHJVEt8004iVXziuwzm4B2RjQAGM6x2PvZmLMcGgVaok4wiY19ZSKoodjRE5cDNHC/x5TZG396e7BVYTHNQ9lFlniJauqadcF4trcdHROTbTclidH7FH4G1qZlFF8JLC7jDkNZlNgEqWb/bf4QTXHaV/Kp3m66EAp8OTp9Eac6ebYGo9RZyr9AeMBB1hs7Hq7y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LqyVDPqzE1xmX00vfM22amOT1GEGpBaljhvPF+PfZuA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "muQLAWgWd5SPLj4dhqkdQoPjz9/0l7pDaf/E1OLOKo5EXfBmO6MxdDBSS97n9WdeavHpxNJL7B/bXwrBYATLMTgSHwHgeYn2fiukQq8zIYT2L+SIlEQqNlmntq8uhT5wr85i+I5ZDtpggTGskIm0zC0tNk0sGWAU26GuIYB+3utZe2PR/Mhvu2YaSJyTGlAs2MGdubqEvt0ygk30sgZ3dapSU71TaNGZWlXB7TWE2uNoArrzu2iKWQzaH4qYyaXS7/kLffYgm4WEQ5UzRse4OeIBeMkZPtu6mzhYDn39x6NqXf5B1zFFUuQauLmbUdTJS6Fxq5FXK0DzRpSuTSQYeSzP+EqI1VqUouwsP8y0dmPT5CC3Kx6kb9rgq/Smd6wQiwH23SidqzuKNKDf+K6BXBBCdmO6lZSk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ls2Jey0OLNBo4ZLR81o5RsvNcLMuKNivSn1sLZLt5es", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iQBa1dExBofJi+nmvcipyNuadLXhidrDfnVoqToMz3u3qVpde9vaMd9gtZrHTbNlewwjvJdylumzSsF0+ttTP09WBY714E8LEYWa6arrEMHcTX/wrUKUDor4ewPZyVjXHsIpnNgdGHkRNf3Dx5iuzsm+cu1h7BsE+SCLWm53ye4dM88rRAhq+QYGFjNg11+Ocpa2h2vBosw4uqTViiQOzxVEqlStrpcRilGjkL+YkY7efH651E64SZHHsy+JvIHdCcQcSe7E72bT4IwlFgiTyniKef8NvbbtyyUoqxyX5CNrUqeD2OzdDFRTnxyf8GAjs7/qR4LGU59mE6lzuxuNuBEyBZQ+1vvpuIlZf4p/owAw9XDDUY9vexM4FDRq7lawf2myz0q8YgATLU/caPdlSOY9SSKuygGK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LtDV0wBtBZV/SaUtQ02oOHeycIfoVE1Wg+2f60fFm6M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "21gKzEvpmVJXkB42Z+8Gxs2Y14ZXHhYbwbZa+P1fj6gI6AZwlQCJwJ/8CMtwALo4ilk/u7cMxPyLenjR4Ie5SqsJGmrYJzRV8Yiv09xo/94CfShs0So3CqhYkQECu4MhQbWq1DAyHIW+bsl5iygcfrpA3XhI4vZiMc8lMP7hUIuyLNXljcK5d/nTKWBM1hUjm+oF6+ryQl4LnGYAU/2vl8GkKQFwPXH2Z8EDb/2sOlESLanSqudRXvHuAMxv8Tq5tabwFS3CiK7maOFqcOgSVBKmFLYF1JlLFgZ66wB8JV69y/4uIjwY7A6/eE0IiXJGPgS+hee/2GQGAtjO6h6SDXTq4YsSWqaScVgUOS8F6ew8tRyl5JkEucPomidt8SjosGqhsO7Myfgs6Bc579Xu0yUhGBr6+Hb5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LwZU7j68m+lFMLZaH+NrWGfhnoABsSPE5iOKi6C5+aY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XLRBrzICXHxC69jn1277PNX1t/t7sN0ostlokuPwbHLcJRqtlPu+dx2Ext2dxrjCnmnKLrEqsD9QL30gYdsxfMDa8ciR4IQDm17w8RowPdxHcKt9hi3C4R4lEiZjMzk5PLDb4vdsqnesNrfH3tJt8m4Djoy/oW11ONLaiWx57HukzIUFvswQWaNHAFLatbMhsvuSqneXrjReaqfEAMHf7sHaeWUBP965C0NdOePCV0tzqRXfMxCYwLynIDFCtrDiKSukbVVdiCo5S7W4J+WJQdgeSvcNIuYYdYZD0MN98DgQOJMuHBOJNkAuL80yjcO/GTJWposSgXQSYI5w/oy/QwQI84MtFL25iJaj53FGXyQuhY/UF5qPFLvRszs12dV7h5abTmpD6xsCTjdr5xTonJ5ad3FEEzru", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LxUiVJ/iSlUpU0ZAAo7VSezdqxGKDQ/4hhFPz5ZHrwM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/I7+SsHYQZAlbRhuOF375wt2vYW8oXcdJ1194O3RUctagQDAoLyPbS8slwH5qjOEF4miiEcJ++dK0Y9AhkUUk8bzj5qJ/FccjxRoSQXOd/mtWsg8a4q6IzIsIr88i1xR9sf2slGZJNrcE5RBLCYsxpKtmkv93XnwIzoq2oTIVAJpHDQH3/4Jgbg4RSHkTc+9VdIR/jlDWmEbNY8fILJs+u0rO56JqcZ7RgO91ROfI96wGPYnmkWIyQ+q8rOMBDhhNA1umGH7NXpff1PYveTO9naSnehTuyTv5Uuo7fFDrgymikLM3u6bHUYOFpe/ZVDFTnP78aNpjdW1bjQ4kL6JUQZ0U3npFU845ZmGh1s9nW1hNJIyTXojcc4S9TOS5SqjN6QI93lg4JXxTOWgvNDmxK8/iJdropOR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LyZshaDdoFcSLrrjiVyznyV09HPnRtM0J/xFoG3N64w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sS71gD6y3XlQID0de4v9hgedynMpbUb0fKZazvwWRcTWmEMOAnCDi17UTY4GitI9JQxiUQyqSit1paybDcbyFcyRJtTsW2cxh9VM0qlH2Vf6q8qEPPuKKxAHskIQovT7z1KtTnUzq4GckI7e0TzQiHpNY5i6XrQhsN+7/qICfMaFMjXuC8EhDCn/hP+yZsUSFny3mYU8rlnVcWaPg00+riUboW4bsfqTOEodVTMnOeRLAys5yolu++I4eG/wBx6xY+K+qK2wUu9GmJQhywo2AvBFJdQa87BXhh1+NdQ5OG1R5qAOjbdHwaBXpkg13OqgQDaw1CCxYfT3+PPQN2Pb1apStZGzctqHx3OZ18Owo+jPlqD5TnlXLaCaH0RWzt/YZjPC8LgBqIWgy5e72dm7fpT8S53G90b9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "LzPA0aqJZ7JgDtRpe5PL1RNjXSoiISrb6im0TkbQ3Eg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XNcA20xcTazLo9whTsDlarMbKEOiS4Sb1vgIUCEtq+WICQlqO95g3fzUPHB8ued8nx4odkGFTOwdD/0r30ZZtd0i6jxSei39oJ5OjTtcZHxwshyICowobDzAqL2ier9zXLWyhlVMasVvQGZQ9+vEOGxCbZSjm1+n5krDlAamEFbCvu+f7OFq5/9W7+Sqdu9xDzVpQkXg5torFJEnjiPHaigXb8My14Q5W+iSfnmHILAnxcB0f97louEXql/8tChgzZHWCGknojgve/yjbwDSjK4FswHFc3Q8dPLNrwOE/M+M+FFnA+0c6elK/BT3+yDYhBih125rcL+YKJHnql3r6omH6raAUTId6AmmjzhGdQnP9dzHw/WTepMrWDygMWRpifdn8KnebVoi2v4dMBV1bNYhiyWM2Ydt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M+cRTAdBytMscLC7nAQV2sncCa6zQAnCsLJ24jtrEwU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lt1QOP03Heg/CzKJM1mRslERf0mLNi6SmTbmAEh+Q2iUHZyWal48+SrlFTZv5AoM1BJYZ7qlBZKIuo4xNd8Q/zszmLfb8xyaxIF3VtyW0RoynBO5PJV8xlxSNU9yeODzplkE1IFIm4BxMvSX2U6osOAH7DW0wOUAdLYqVdNVZwROKev44n4095Zjh/044soKu7bWINNhn8m9Gdj8aqFfbdUhQQ7ygC50RM0Oeitp8VQy8F4wbJLGi7t0PqRuivTArtxUIX+ero6h63NyB+VgRsX+E3r/82B6M1zC8USl3sBaSdqlNMaAhlaKDTNJF3QZFMTbbUDjFbVyDr6DsH1tAQCVVP6FAxA7rdN0pd6hFGUf7KbFlM+tclJP3+jX97SSIVo/en8KBm3Ve4mmBv9Dbveeo+YbnQa8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M/8AcbluaRJ3zgpCHKH3T4ku44F4MLbK55nH8ieS3gs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jfttCqge2liv1F2PaYtqdrXM45txKvPeH2AVDhbZPG/UXqBtMoL/TezUrSCe64znEU6nqQaUbA/Chi66OuDSIVvgLDCMQ/8EfX07uKFG+n2x/u8x6uR9tDJuMOC3J2tdJLO5KLnRTaHAy/8NCNdQ2bHCuyQ2bSZsoiJrCam9GpiXsWfxuMx46psjM4WyNXmtIZ4Z43TR1joDqgpzHR3mDBzLroi5ERu5mAQl9TKf+LAYsDobDvX/t5L1DAMnMSC6bgcOfHq9i/LGppVEwDNhgFEhv1Z1WrYEEIRDVEd4tH6BZkXdGr/I/WA1lpyrEfyJnbTAwcYV/cQ4yaHDQtfc45+KaJiDu3ZJNtN1QfS8TCa58Yi+yEfh9BNjNHyu5LfakhRfCRTeX3JbFH0r+SOjxt+aGJ9Hw2vH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M0LKXn//upJlekl5uVJ4OxMOLm1R2g+6i3UvVtsnPOw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0hbGR6reBhy9mFoN43U7s0dDDR7sTbRRrXdG9ONkKly5jpS4gJQq1WrWYRIHZ+KmaLi40pgYiXpZy9Nu83QgtLyztxVaQzKvGI7l9aVRa5oErlSxqT7yAAyQ+5ARXk9Ew7CPBNf306hyRYLRhe8AJ6XSVonjLU5M3+pCLDk6ZpBRwPnEOjI5nAKABouc0527QX12kOd/DX0yX9I3URGQWaX6chiEuud+PyviqlwQ/aOR97G+OxfcdRO6rtUMaQiv6BTTBfLajymgdgY2WJ1wK8yavU59pbXMyV5qPJZRcVzOX1G3o+/6xtn+9wGWVn2V84kNw3yQBT6DAYu4Mda7FkWhWRGw2DUhrqTNGc+ycqzO2SNGE2jqRxbS5z9t19hkmtHBRvbbAcJr/mynN1qBDrcLkpO3u4/v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M0VrsnTkU8vmOyxSWGWWQ6j1b5HEVU7fn47ssl2X72g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0HtiN0NvinEX0B/qy9Bs5+8awjge68sZQk23e2C1qmD+3aRQ06+h0Sxpnv/OWnDCvoHEVun38PfeykI6rItwcnatTQiHRC5BAK7ig1cUqt5iF+AW+5tZme2+quCXqxqTxYmYT1CV8ESKHrtbYQb//GtT84D48U6wTmDBKqrM3NPR+cwzXgAPkriYIvJKKg/n2AwIXWdQba4NkOQgcDtIeVg1jAfgRb0EFJYpAKMwRz0CNB2yon7lsbQbURxzvknj7MLLmTU7qS8B2ObXnK6CeSj+vOdXVt6R7DLC4ZTwra/Q1kk7EDBr7A2xfH/AZYzfMpV4u8nbuYqZoaqqkVy9qezH/drd6NJkl84sJEtk26LZ8XRCpGcVxsxcAKD5lScexhXTJEJS5Nbt5Ww9kNdqx5oep401kWLJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M1+KDoM5JdQAvGuqgTvRkXdQ6r1RxfTFNa7fZyZRVFU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JztF28eKMTlqOT/QHr2nOWlUIpVftMxIkwQp1fzbqFo23I7vrCZ/QumfNO7rAajuqEweWxUkwrt3xU+vD4d0BJrS1RJV2VyQBiVFhHvZzVbiXJlqK2JOsJvqsOtQRkQkcSg29X4/4Q1S4ddmbNzDJ66Mmw9bP2ugxT4bSvLgmFpc2RrH8JY3y/MjFFwdA2yw1YUc4VbNHHlWpo9c9xWM0r+GHbTcP/eY7BYwf691Jnl37uRd3tx25SKH0cVH1Qi24G/4wsfGEeALaSS+nLLFeS8IpxFOKlSoP7BpiRPr/C96BOmv8DMIcRcvE8CWDdlYEEjFa5802Wm98/Xbd1EOGdxDWIJzRszdfg+lbdjroBdAVdx5efkFTgCROYuCzawi8me8zrdzvZTn96y0nn691zmPTrnnzGuY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M1iYmkzSLhcDi+kZS/WtzwPEyDjMp+npvgwo48W+W8Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bcxUA8rtIWKvMnDaYIjJ4TDLv3v9u61hHHL52IadfzDBxX+haIc5C8C14vPAk1IsM01fQhhFrTS1igEMiTs9cnWWEeQhBGiesMfra2c2mLw387M2GG+b2VkCkaQAk9O9CAKSi2se63XUPV0W7IH+BjMa9KD1xk4epmaNqyXx1EJHMxZFTysSqRkuWC5nCTBofFB9IZg/lA5FKGGRsrl+DNjwFxpx2D0SsJ5lxmIJI54wD5g5jZsany8M5TYX2631+zVwAbxRxKzkdF75e437qvAct1h/wVj8XDUfDJSqb1dmOSWCnxAdcNgpWnDf69QWsrwWe/E+LTQZLGxSzHpOozcXBAK27FDikhiQISOmk3gjND7Ne0Zp0oq+EBFok6OtaIpRpuW7j6kEDRd4mhNg3jQifgh4ktfd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M1puJm5GboGy+wHCTR9FUKIKvmpJ1EWpPjXjAzAVhsE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "byPGyQBVPGqVAMcjTqT5bwpQ8fOAX9dFRTZ6HLGbHGOXGYdJqahkydJIwqypRKSQfxfHcn3t3Kbk97tu4mKwCBZnVgr54lppVKKsicVZ5PBl7mB5ym6QzdDMTBCVPZU1PDmDaxn/QcDmeCccXRVaoVmp03jQMdUfZsRtFQiLAyS5Y9Z1apUpz9Kz50Rb/UH9Pq9FP5eP3ACnJ5QtM/6HcPWwYpAaWbO/G2xKAOzhsC/TTAtoGb/hwb8hb0H8OOWfknxuBK7ZP74/ERRseQ6piEuyOw3i3T1BP8WuQN7oaYOf9W90GZ1WmUX6XSXdcqIcRZ0NImh+mhi3dbovLZ+2538mtiV0oHmk/1rVZLhZsv9ekByaG1bwVzx8HycqBj0vME2h1tRFnyFCrJrxnSiaCxAAg+cv7bsh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M5jtMZY78XMJKeL3yD/X7IErDvJCE/SGjdUviLWugTI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W4noUsz0OJijc0w9N8ZgvnxHzkIE2KTie8SvZm4sjWAPpd3QF/PbBJKFFYiBA6QT5AS44TlKvs8WAfu9yRMmwWD7ICPiAiC8zB3CfuwuK56gbw1olPtMUlooMagZfTInLGocfihfFbrUc8jUZU+OcEnulmrvCieT91qmQ53hNG6pt3Wn13Y+2riA/TKHqWcaUlO9Ribw+/K8PwzPBu4aAlKmK5mtUztf1kGejWrm8rNydTTs9A83wKZHPSeaH0u475EoVQfT5lyct0F/9lvqn7FyXMCGPEGBG3KCVbZosR15Ms/7al0Tf8qLK/ejCvFtW9Qew7T5RVUowRpmhunZOmRTXI1n8MyLHZhSsy20plIT6SFJwWxX/svj72lhu+m5ZPUwrIuD2tC+TqoetnCHunweSznnRKIv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M5wpwToi+SBgmAb7LHl+Ee+hxVmwIIvK/DTNefqy7dM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zBubE5kvj84nM/xYRuLVlu4Aa8HrN9c6D53zKFcs4LAANAlAHg6Q02cryJTGq7u/XBgaF/g6H3oPlHRsTq8BWuXP3Crqj84jPymeA2HNwfBk2EtNdoh3rEwumwbpH0JA+Hqpsd12qLkIgjy9lDHKoIxFeUj/eDa/oqAQ7OEM3VdCD0FHZH0g/b2rSZFcvSl9O+sm+n9tbb7QwTdX2MDOsMN6QOOnc1aupI/33p3PmlEHQE7nofPGuuFmlrkgF1Zk+klZGf9VZuDDsGtbAYiyPQsYp1hUFu9sZ7I0ziU/32gtuhSiRP/MKlsz044lmd5KmFwsUUoDgBcv9iqaWp1nZ7VwtN2gOPPcM3GlF5c+HdfRYVaGLgeTuuFFEctPGWz57ASJzX0OhTN/ZzJirBn2v0qHRje2HpoS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M6V/+TE5XusaEni844fIWLJuS5KChKB6jQW/xScWYdY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FOpTDk1qZQA/weaOXVWmzP5VwVAL1dthzhDHMqhJ+5+fJvKaCswgVRgI7WKlp+7sVLfIM9vTgGRgngf1bY4zoSDilipfdG4QXArOIJDctGruJX1Lgll2T8b2ncW3tNvLsstFtmIFwkW47QeLtCI6wxo86Il7Zoghx9pqTmAq+aXnkA+WcFDlhbCOCUByIRdq6vtVi8/FdHL0t7Up4avNWAjOV7qzX0twbzcaTqFNIJ6GreCykji2qTese/mu7NI4i1FWcQWNvL46BN0Y0scl0NPbI7Ox4gOJmf0f+PMK5m2D40irCJywOvn/hMv55E6TmFml+3QPLBj20ufoTRNti9URO/Gd7cHqsMWUZjYRS148udECgZ9XxqLiNXR2oN4i6KOcrfhlx4p+zPdzDlOXNqMlOZIqsDwp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M6nBIp6R7pXNbwUMeIAE6dAA4wdeLHmoxA5Rcf8bww8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "39280Hvwgb2Mo95fK4dsYblskNfhOIPL2Bqe1vcfGm0wL6+hnNzCFHx41sqOiKX688NLPn5OibCEGOo8W7VUrAtdySkvnRjm+oJpCYCRAj3HaTmkiRHWDCIeZhvt56MK7UGQSHJt+a5FvEOmbi9wnJgycutuD+aAdev9wvt1xz1ByLkEUGuSTutaFjP6uFc1QivObfn98dIPAkyXZ4GhxILouDr2lYWYx4bPuZgeEfWnsyGuYE075HRzS2S4goELJmfGoi9DZJkbeohoX+PBDgZWqn0hSSFp4aZeoHXU9MSa0HF4J1eUxmT2IRf5/kor8LgJP9KS0g4ziY1OWm/MMa6XZ7e9F8o1BFORHccXF3zaLRPV3hP9Fg4L9Ci9aMN2UiuO2FtsEGApN2X2xEV9ROhkgPVP3J3I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M7qqzl5Ud3uSrvcpg+w7pEv/X888RmY8tUxjYA7GK3A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "isGZ4JMszfWvyfkKQNLQhZivMcc5dWBkzFEV0ny0dHPE2zYZY60LN2YMqZccaRWSiV0joxQHvwYRxwCaL+LvDZn4XcQMBQIvoGtvzn/mW2N0kYI6Em/R1kLa3lbNQH5kWb20YH0LudBhEzHa1IDXw+4q6ZRBo3Lj8WB2mm275PP00hNY/uSsZZU1HJaITa2d+RdmO0L18l//6t9OKPjesYN6TX2K7cW3MIkBgBK16zOS0fUMBusiDpEWT9gMbJCtAc5+cKwJIE+MMzL1iVwsQNrxaGTKaDK8uA5ftsu4Jz+Oh8pdjY8hbgw7xfQgWInQdgE0L3AmS32ff5gSbwCthsb+PnTZtBCVJAf8I3IQ3nDuF3rehb0rJI9VcAMo3GhtqRxjx89dH24F5EvI9v7e2mAeMsGpxPFj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M8t07y1WqOHG/0FooXHxCrStQAv6xAB4Fq/hHkz5svs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wswFO1qVz23pVCVQ+cdtasE66eNMgxIdm8QMdSwiROvvSw4fFGGGQ7Om+RUNq+NtWM4VKONcq5IxrvzQwkSLpRi4bg4+/T8aGBC3oFMeh4jBD+UDBb6vUSU8hgk5IN0A9pO7P1tIRphLQTrcHry2kgyGDvW87s305hKv6NNd6jS68HYwa0fQPIO1j0VZPx4KNWh1btZ7bQTGVcX05fTML+gbXFsesYXinrzlRm76r+DYtrTHrmE45EFe+IMVD5yo+oGrEM9QBIUaJdrd/KgGvUNW8wvlm/a4//rJCX6/U7Esuqv6z4G//pkOrsWHnwKA1wohPS4ZquyUCFBDbJgwhbl3H8h0Q7VBWm1GUZIzEdpYO0XNQ1lcVD9YLjRNx2lS2sKO1/X8LhadN4jYCY3SsvA78GGqZ3Io", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M9GuyxgfXnQEZzEm72VADYnm9iTePy6Q5p0ac9mjGpo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ieEn51sqSv4pDyUdMgucuP+cOMMWzJbWvAE7QnErIZh4XuKywp1cs6Qyc3Azypzm9jLOE3h+g1+4hJrlo4eIrXGCd2v2NUo9/MXSpcm23BvyXJhubvb06NT8LbQ0VGOXWFT8OkG7MGwMO3CmkQHVbfFpUj8GHQn7V9bNyk3b+V5OPH9VWMeh7wiEMFyx1yCK4+cYqpNt93BU6bbEQUAnu9rCqbjnWty7tcbAmhdb6iBX0t8DF7flhbXKnqBEYKbxgDVoD0rfxwuu6bCJti93nGTsTGMSD4oiYNJJFM5pIs0/tpiawV66/EcX69XEnW+dgRCIEaCOyhdubjVTPrMsBaLb5lviT72Af7VOh1a+cj8ELO+HTh7NWSbal7yvli1Q36h6AIPqZlgOCh4PSLzaWJ+wfQSU0A5h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "M9pTCkM1nr7iHdryazHcM4isS4Q3FXegTTjmnWJiUXw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4aSqwLHCVXF9RrFA/2i8UBp3IeaKSnxwkcUI1T3eh/uh3cvh05cxJQHFls4ffCiFl2uX34ZHhjDWsPzJaAbVDW8+vjIhbFhde5rPTtbyaK1FDs14WxV0nR6cruk2OfU6KvDDSOCnSBLgSBlQe5CsVXkgLbSoVYU7deyb4/bG1rQP9eAlNEC27/HdelP2cVYLEHzqMxCGfTlMRjiLez1bL0p45B8dSwqMH46H0CP9JbXNSIdV+my/rEepQhy8icZgSvtY7Mdc9edrrPKsAEgLXF4Jistj9c89ikbzbit/zudZI7RwYpJtL6A3HXbOYK13LsP9pI0kq/mhpZIRQyMOjEAzuIjtivXxwQqx9PMCNo/vS3PXwGYAa7MImc2JADkC5mupP0aQ2DeIOQyeevC+tC9wR5Hs6L8O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MB/PAA3vuV43h6G4PI8NMUC5N/w+qLlH6a9WQ/PyZhY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "su9jC9/5+/IHbknPmbvuit4j0xl1fULlAaPBMQMZwpizpH2Xkotv2idA2M9dewOUdK8CF/4zOP7menAtAOROwS/56Jt5GQ8CEec2UITR+RYU6k6rptafbt/IvvbxznrCXm7ViOkJeucgWzzLqCJXvy5He2g7FdlXmrLE0iyHLwik/+h1aDdiuyY33Dn713MvRThKS6hhVVFeIS9iNpXmhxhhs+GDqNl/DAKu/sNFja/4LNGZis+Rx9LWFrc0XYqyl8NVcHrVK8z98aehZzumijRZh1ggrvBrdpVi4zRDxLFF1kfZWp9zilj8ZCspe6rqlufEdsAosmgfb/Hg7EF+EyNTAnv+IZHF2oGtCasZme6STa7KzNwNc7VDd8sgfCrTELohzbdDt4erumWviZ1iNSlfGR3G3zI6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MBGzgu1O71YmXYr8erHMNaoiKpAjZ7krqiHyl9a7D6A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CCconC+0mafOuxBZWZGVHSx4xPgFNLy9bZ6xwoUl9/UJqo4STr3cytatwgxoZDJwBbEv+9Ru3BEywiZJqaxll3wAGLKXjz/8ta2Yyn53CPxzrx6N6Q65o9xdQhdriZ+59E25ARFxjwGoxsK2zmWUMc+Tg5ltRDdGglAaIL6bJDxigSJRVGjwIq81xsSW2qbGdvqZg1plvhxCHw0+R8uW8DJbOgYbEwtBLSUd4DFAigeQffuKXplYNoNLru8vbArizB8DwypEH02mA7Lo1kyeT/WQX8zXpFxc6VKWXrAWp0ePKxgSDVf6jTMq4cZ+ypClRH2Y5ZiJt9HrYBZ6T8RahtxP4TnegPQITL+D+W7YDRmvAjHo9xmHoEshbQbm1hpdB7i2Sa03n6toLtcZzQHb8xuEBmBX0WX8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MCS1kfERYefMOAJT/PCWYUDhzlrN5ICvd0Bq7spS9Cc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7jFcJWMaFipwHXoXk7dNcoAu2EFrk7Ld6BB+x1r9s1ahoCy95go4u4cXi32ZtjT379r+slseEh6s/vJRqyx4YuvbrlSeopu5whd1w+eQZbFfT7o32eIVeO641yuFhP9Wis5bCHGbVO/8UMm1DJDv0py45jyAao/OlMBZ6C4nJxT7UnBOpkgQicquFOkzwsXY5ydw71EULtdUPKrkV1PpjjU59b9bau94XtTG5bO7Ax4nY2/UCUGDH14j6zSQTGhKuCYedVCUxxiWqVKRXPTF9ar8ag5AE4Jh3pl1ryunSqtjvhKUKC4TU2giKEdbw0L/TUYwQXF4QOwKtBpKr/v0VGFOU8eRfi7A2DGijGObNiqTfR0u25ObI/+3DgVQaa5/myo/0jM7Z9TFGJM/XysgBDh22bQZUZvf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MDE9Wgzmzc6z/uZ3l1tA9ptBWW00ifX/8khBqx6cKvw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hVBt2Xx9aObgNBqGDqWO6F6GMJ423aQMQr5xOo5NS62NbMle7CnvFq9eeT2Gv6cBu3K474CIPbs+EohCvEsiQkZht32mmxtsTb38tfSIAP/Rt3MAsSDbh0t2D5HvgmWBMjpJTCLKo3u/OWsqywgLQDPX2ndh66Udy6TFoQ0nw1+8WzR9lnN83GpQgOcb6gb4JAvb831F4xe2wqj09Tbja4gyW10aUnfFeVlVDCPBYSypbKcbZMrc8jMypbuXl9bSa+74HFkhhtsqN1eLcAtoFobm8197v3vlmKSZjCAfgZ4qNj6wRIigDdFlxI/rlFXHUEsimwor5zbMCc8gnk3jwDFiU9CuWtkoqWmt2OpYxDLXyklttBUqxUxuf/KYoXH4n02k+tTUAtjXsbzsUYGlvMAgrvyLR5Qn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MDMJ5TlMvWwSSCQC+0ss4j8wqQlLC2T5U8YJ8I/X86M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PPIlDIG6zvrVsnHVacYkKTBlYNuL8aFc3J5ydTv7Z8oyRHVi5J3S9A3fLTLF799JIWZoGsdT4cThkyIDZtZFNtNqbJ5AGmRN1huc8+O95rpJtJHeNYtJMWjIsJCqbNb2ukqblmGFZJB0NbePHnlstV65I4+PAe34gac1wmdbSn6quYMvJkeAfHj+obArP4YgKrPJYQgk84LWKEzOPt5TnRsxgm9xOExITP/nNgjhsuyqVWAmP0E4lejbvs3YRlqUUTb9oECKc0pd/XKTeCX4ZN7ibpK9f/aPLMt7M1kIMX8Q8kv81F8rv11wjzc+5QN0iA79qa7R3nuSW+TEkt8ihfpMPG3o9Mr86w7qv2A9lxZwfe0I9FKWLUy662+moLlUsszYU5FM+h6ekkUYV09U2zRc4FSPmn32", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MEOFlin9Ssru8ab6Mg2FQrxZc1pc7FaqkCoe73u8Vjs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yDhtpMSV3EZOGqZXzSDTcaxckIbs9NNaJ0Sp4xJumb6QKvemxY802WO1d3v5QzEm/K/8YdF/KFi2llfraQJYEREEzAKZGWYwoHhGUvY3wx8a8ld5rwAoQg0/X9p9ldFF5dctn/pTUr+SQHM5hFg8xhbMxJvFIM18EXhGxaKYBaSu1dplXQldeOmPKYJ7/a7U9pybYmY7V3Q5b0t8jVb+jHoIcgvqWTNIQ/tMruY4ednwWhwfmt5LAZhBqEDPwCGotnyrsvXEK4JtNFfdVu7H6IQbUfMuGaaAQltpP/EpT+00jUkE/75LJSWbfsvcqg6GGo7Bomv8zhirIMU3oNdD3omnPHG8mMd3wFFK50F4vsX57aSWF3QjJ6j/pnM9VDRzTTaQRk2j0/soeU/MDzwwiYuVAkelCWmT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MEd83/KNx3zClcqAYYs2Q/IN3NZUCDN5BbHxFp+VjHg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P8MU2f+VutSmsPMkzDTh7Fo+Ay1ApvPn2zrq+LdaS98GBTn6kRMT8/4WYbHBP15T4sv9bSa+wE6NwU1sP0WmJO5+rflV1BLigj+yqBU2OMAgsuVKizlncWiM34zojsy+uk96LfBxUiw1cJN+/By4oXwlTkK8FVLEl1oSXL24sxtLNYGkhMEWiiThtimMQCGK6wXGPDAxR7CrQ/yg4ZscQ+V9GtyZ3bF/p3AKCAT59jJO5ysI+Xm0HmS99t9xcYOG892kaDj5k89YvhnD9P00si+agjjtTI14yS6kunkxuj+8UFRb1MhxpvwPL77uSlwF/8jidyqFlIqVHyGnWkiLXa8lsv0mCxSvdoGZUGJaReFMaI5AVCvjzM9OXuUq8kpA4k53pJKHXqxbAbXMKjWsMU13OsjsJmtD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MGxmUnoaL7LU6rcYW9/4Hp0rbb3pFp3iUmY0JS9Szto", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tLeo8XbaDQShgz3hlj+NpS6UaT3oBlFjP9Nw+58E6DSxTl5/qGSo0/gr3ZMcsVJF9OPCq0CUMVZu/HA+nl+yTBLulWzBwte08gROdyFyNPathpDQ2zxYVVwTVnt+YwsDWgdHonCEn81mzsViq2kNz/ZEvIR1E2DgMKKfgczAFHOtX+k6CLVxcexl4T7FvjdvQZ6fWBHDXduHg5YMcbYFxJIBL9fgyR4OKGmOqixq4+SaUqsQoq72zl7dBICzta5kAIcR/OVXutUQu9iSNB/pp3tB7GrnvCWVSAHmcjFu/7JGMmWSlQby+FzA25Nx3+g3aJ6i/leVZee9AgBtgUe+ssElYMGDhrl0rI7W75buwl3HfLSz7SuljOzjM4O4x80BB+1Rw3xt+5Pi/mEeFivtMpwP9t37ByXV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MI+jCqo+sM0cKXfAr+IW9OSTC8KvR6HZljwjHMJO0OE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qUw4lCCILduaxLUUd12HOKYaJ7kcWcWkEa/Owel2vUI5NjA9jA7b/8yCjG6qN2QzT7cs4L3/IjtyeQ3kILTQLuwu/eDRxVwUFPOg/c5cMUN/tvIVaTo1W2+7HfSfwiyPr0QZB7XMmsDqPqtpRMLtkg+a9EfLk7nv3GgWayyE/NIq/WKRPaNMH7H5n1QED/kFYXyTiNjiv98G3HdM1TycQJRMJovxbP67YCYDUi18xAvDQbjI+LAN2eyZsogpjMmokphgNl1+Vrjm0ltfVCvH3TOe/qjHuZgl79BzsPKY/HdKQU6CpFG5GnLx+lpS5GG7/n1a7iuioxK5zFDydGPFtNXEKboHWE6eVwAQJkn2flNA7awpxIUT3F8iL7ZHz4Jxhap2W/iX9VX5vue4qm0mLwNsjmt9YpPV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MI99lAw4J5KRxcC/hkj41GgHlJSoOmM77T2oMyIr7+U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RAdDT4FhIUZQoXHNNAtr6AQVcSo22uD2dRp1wvvgblreoJ2koiaOa14hdcgMn1IfUTRkfz9rFEMOIJ2P5eNapPbOQjFTtwQBlKfjZoDZ785JG48WKBLr9NRA4HOD+7tXlXmaeKNa4ChYqF/kmk8k9ckAPzqVaMVzq+5uXfQJig8E1ITLmrEXqaoc8rVUvH31H3oBY+/1e/ySZ/EOKUr9ZElbi3hVSDNlsq8+R2lXaB7WYY3sp4Zb1u/E9op/uIqpD5S1UylBIGUWt1HLYcVZNYgKVIX0c457QNuMsck5q34Dy3pbZOrfxqHs0JdmBCwDBz5rih1htGLbxByWMujkdWsZb1DLxbYIUZBTy3oqSc4rBS6sNaWeWTkXQG6cfi2oZNtF6TI6olvKZKALm//vQN3r6nCDujAN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MITiTRvlj4LarxhTVQTGA7Yv9q8Hf2Lwy93bY07IPWs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KFX9NPxG1R1j7OCRmZYiWXH/MYP48duYIhwQdyGmDE3tO2YvJfiVK6ZH9ej3SfU6deLStZF9BDwXX0oJbuMmZKmF6cczcMBppbyFSxMH5u53c+q9Tnwo+tZhvD6FktcMxDne92WsDKapzRpszZOhzKZYW1qvsTMNGAzK0+ZggZ9+FLAW/8juQFT0vla36s6dJz8/pBFJ6RunNn9039jUl1MwDnfceyfh/5sCY9hxLXN1tlCQYs3C44dC9M0utlUa1BJ1csH2UWSc6HU1HVwrk3zAavII9/IpPqtHnw02FYrazGAEME8VbvpwJqdXNeOt5AyrvM+doimljZjP61oKieeLzdeHfzF01eRHrW5o5kU8auuzMrJ1elopAAk7+F/7Z8RgzB7uEwqqEblTYnZ4AmLz8uAebRTU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MJ0AI55t74AQiN85cqNA/RfJcv3Sl5RNZGhg1VdwlPw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "C6FgTtvcc5HIO6pvSTpjcr2KPG+yW5Uhwu1NfEDx3LxgxtVptlTN9RDrc4lqf4NnLRnviVsu3nO9svg3FOVoSpf09HVGTcqcmus0vHiueOH7e+BoyvpQVsoO7U6mXZzKiL5ncGqm3pAbiveHhbj04lXFmo0Nx8SrM0U3Q7/qTqMsGnl+rQjl7zb1++3v/Pt59N90lytX7UoD2f8bPuzbGCyb1nArlOhw0fGC+14FtzUp42nA5iAr5Q9XrRjFcSlYbJ08uvWvdVIZIvCo8C7yuP3nC5Bud3jienz7F8BmPaaJGCReTuRmYwfhNj4eqicggJvZf87TLZhm+gsp47r44+dUXEX42u7mkORTbv06lQaXfgA2QnMhd6/qH2bO1lKbIvAF32a9kPcRHlmRpE35SfK3dbGJxfyu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MJTHyDlqqZ6oyjMHZ1D/SqUpBLKW/k0Vm6CrhDPnAow", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j7zBUzgK/Nv69uYg9k1TQuV8Hvi/AEHLpKSXC8eAzZXjbPWk4JcudFoZ48H5Kxrt+cMscDV+jptP5qHC4Yd6mfm4u2rM23/QxN5Y9rJQwfFI9d3X2MEnfKXGxhklIMeDA8LC+sxAExNqtkETHQw1NYFtsgMX80TN092DNVESCMbpDyC+ZSrzsF01L1K6sF4dMjI0I3SRzeMGTblBoJ5OmtVlkjQLAki7HNrkizGGAGulxAGAx4/WC7SW+DLAy0grayz/s7dQCw+6MYK6KuBJzJ4KmQjReYqk92YjDJsmYin8SXXyOa3VV8cCPnQnpN9/dk3cjxpiVmTmYLUl5QLXEs/59uacC3mvzY9m91GGdAWb2dzCC1cuHlCJuIUgNNv3bq7aMKitnMv/55+v3ILG07DvIBRxmJgF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MJXiSiDpE3ECtod2UdjLkqiMyRHDelXgmDKfc1GBM9M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UoVU8yHJVMsSGIR52nY02U3jHsWrYHeLU9LhESR8qSH+jq84ArusN8tisu3TOT/UFS31Nu17VFmaINq7seDZQh3Ov2qhUrrf1PNgDj3oWUwW5HqeyzdSAw/F5T6mBKkB7ZNpdhRxlaIptO+c3VfXOx5CSWQyjmle2RznTZNqOd+VaMTupAH3QV0b+qzhpx8GOdhXuB2jpRb0HoDPSRWIOQ86hQs5t2xhcZEhsl0xNOu2sx/GPKF0DlgyZq+rzDWI+YnTDqcnu4lEiMDzebr/gyYaoY7zrv0m+AgUjv7thUv77yeKceEjE/Xp01D9x4K6mAKXOnBhaIRGRuVUiaTdP25z1rz4Kk6Ar83QfiQG6hAcyc+EMk60NqnHfEm6Gddcqbx7FBo5X1nmc9rttOERbznlPvUjRnaQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MJjifpkulmQVDACgGIRT3wNM/HpP89YsrQuwfyrZ6WI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F0jNpnWrhUnPqur8rxLB2bzJZ8m8/xitD3O8zkDUeyAnZpeHCF+iUSuhjBrMpfs3WixNYw0WbAORCkTPL/QqkP1sEeIwdTCNlO8CrOgVkY3mBjJWMyonnyaDggNPdsKk5zoMYiCtJ03FMhhe4j93ZXOXND9rcmMQ9bdDIm/AAMniOZEioTgMsPTCuZvUh8VTdw12+N0f49Z5N51caJn/tyUlqNMR/TOz4aC3N9F13mwmesxv5ZmjX+ioZOuLTagNDzDXRe09ne1jAYcT4zGBv4Dg29P8sJFYepcPIp/gAMtDoPyHWT+zVv4dPJyiFGroNdj8vxTm0Qk+kR+D2/JMLl9jDXB3wSojbD4vsYNt+QMOY+cnzeKcRKVsOnYzk69JRVUPd/GxG5QaXi4lnOuKo9KeKvGT0gE2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ML4nvSeBbrg8noTrFdtW82UjVVVCVy0H10hDqF+LVvY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9H8tBDIWYJaZ1krFYHpgWfXu5LUx5rX3+jjS659V0BUd6AZIbI8XiH2o5vLJInPIMNtV//kksMcWK2V7i9fkHTCYhrrvSL/JiTWz7+wxp+Llc0u2eX0Cu296uYY9THYKWpLlOXvqx1XQeScYRy3gxqdUfTTh092eB84gc0sYrsI+xTmfFMHBvEXai36+WnGCpMz6/pL7rTbE8/4pZp2WxkAdAtJSjzo8bzgSc1DaHt7jfgRi1w9WQFH1mIJSR4vJOFfUVwr4AgYfZRYOj+j8BQZJTH6vomcdib5b7sQ4n1D5P6xVy/5qo8tDYLIIAzniL6UIQgOgOmHj/kmLrnZ3ThNOc01iiYCuXfIoW/CGZRN3zX4F8SxqIersvWacq70aoEsYpCfBjFFPh5fgUFAWdNUYMaH/s6jF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ML8l3Mu3Wxla+BdpZxnWF+i8/BvbTSlH2fyQCVhqGEE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YjZ+/Mx5CGqHOF1mvSJL52xed1eBvrAwiQNowueFNj+igvkx6TPgYcm7rbZtpV60F7OOzA4MpVv61KFsjXPCj5SvA/+ZA327Kr4xquTYm0aaZIHGaGB0O9mcCNaa2fGE6LRV7kUShGB0DE82nmRdOkSxpt+8+VXHWJ9Tj8lYht6Fw0Awnf1teVEiqllOO+NSf9PBN7ojljH1WLgydNr2x6cXn5d4smCx1cfAm8j7+1cB/u0yp9LrZ39X2+XzZy0XQHNesnfN4IGV0Inu8E/TeNcY7qsgmhGw9FODquPPUIc/gHWaeLDro13qclw+UDVrB9pXNwALKBGoKorAooJ/nFl9s6Q6Y1X/dfDtqN0S0CQSvzEt4rmYRVdcn0Lw2PCpdN//NvKRscNmKVcBd7tUCl3sV58aegQT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MMs4pH8LEQJDWnw7Sj9+ITPU2u9t7WXuX/Q7rwL8Vkw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VWwT43yt72qLSRSg2M238tDcpnMNf/wYJHIRiMd9eIwUdOBZhKq0l0yzOIGszquyXAGAEnv0yqbCydp72577xXIgGdda+kH/rWOcU8wKw9v4TspyP4s6hyd4tPuvimWjkwYUXv2UGDSJhjUgM02aa6p/SltFgP3qOrVYZE+BXULTOSvevDXNLSsAIP0q+D4NKfyfWLcVBObkjQTFIn9B+Z4Ji5fnSQc3WEL3LGdDjC74AVoVpzXEWyz5UsG5FrE2hU+AuqCDwAZ/XmrhFpo36k/X2m4ikwcFfzBR+C9gggklHJCEo+aG6RCDyBfwkaWx6UXUV+YxRXAWmT2rNwvyOE9QF4W/Xq2ypqxX6GYQYNz35LTPr64HuDC6IFESdDy5qho+zLob9OMr3fbnO+7ksDntyc5ruP/k", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MMw4eEsRn1vkAZpVcreuEtRbl2uimrd9bHuXfRykFCM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ixUQxGiR/CngqCrZHr954MjsvpxGe/BGSY7xfXwvzaicIJSQud7FcTlpTMQ276Rt6spyqefqOkezIAgLpf4MjUeKO2IPZe4ibRyurGP7TolyFBQ8KJIHvFsHWelxqcTeoX+os1GoXNn2Mt9QWR9XutXlr/9pP80JIcIk4RgwqKW+Tph8JWepU/axq60DCJMNOydpC0wJfBZm+x2iT0RZmhULW7Z1ECmJTnNRMQDP2O21duAOVjyASoMzXvCwMTG6oMjoN1i5SdHKVeLy8/7JyEcvS+jXK3kLYtM0Yqjpjs315bM54mDoYa9KRHDw/+ceiQVKmIOb1xZ8JK/i1PUjdcaBrYBdj5Q7ApIGT4GzsAxnYIrmFQhYyj+zLjjtYJs2G/UGUQJoZWNCUVH2CHZfhSKXvo5SE2rg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MNEjO/GZb/15qS8NMO+TneDYnAvdx78aKgOrx+4hJgU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "54Puy8ceV9b/7GLLI63V/ZiA/YWjPAYoccYOvWJBndNALlEsCgP3pJYk/nramuxkqNC3gRhh1QykTVK3IUe0HOyuMTTR2JqndnLTAmPaPzaSymdDp3D2vrzobe/Yko8vPrCSZDI/JVXYWAo3FwC27Zsr6dTxtULHscZBnWa79ebVK86jh26RvLKUucLlczMVajS673lXI7BRDJzTeC4V19RVWQKQ1UGKMNpSdMIgZlOVYMeTi2yax2qcJKn/w4CgzrpoUFZWYq8Mhw6xuJIz5z350L0YicsA/RZL6u+Pkzsz0mrgFew9NhHfJM2+doYj62RkmSDi+K7S57P1rO0wBFaUknkaT84ZgOcEaLtgFIdTm5cLRih78A+6tPWo6bjTOZZNb/XIKLXfHEueYPWPzrcg6m6zrQEQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MP0unDmECGX1e8g+F4ow3zjnZnnaReeeglLH2D48VBk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m7HU6w6R4yYvXtuA6fVcWngf812U2B4EFkPVzA461f+rOXhxv+Cjfm/vaaY9CPYxOTYSQyQY+HkOyHDga9CbTooxsUKciSVb/gDWQWCLejbwtQZUi4V0TKf6EzMubAbiPjCnG9AYELIewiOyaVbf25IHKEJdwAgn9eOmcqL9DsodYf7mNdUJ/iNL6wzwlTJxly/2fntvDI7UTOnaZAWxNiB0b9DZ7svNKPC7ogABLFjFUkC+L5hXzICQX8IAZ7J4s2lliyjBKota5B+Uk/HCCdLTUYcFbnnKVpp2aTZ+taJ1TN3nLmg4Es6c25OU89FmS3/ThPKy2yrWYOUmPy9o6CMAGIQgC1YAWIGWYcngXH7msv0dCl+nWaT9MkDKCtXPd1K/r0RaFosB3HaW46OwH7mU1p2xM2EW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MSYh7EmgZduGAmZlHSGDRo64X4GBMs7B+a7hz5qQhoI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "386JEsvJ4UoXRZOtWfAMP1zQszugFBZWDcx1VinFd5iipamBB/AdwEsGLprawhfKC8Gl2kbHFqApzGiMQU9uduRwSjRIp/KH1fXDMiR88sblXb+yhNtKjlcArewhvRko7lJM9fDS5QuCz3GcOeSkQhVJvwmJgBXfCgN3a8tn4qQbuBHonm/ANqWX6pLayTy4jn1KMDudzeuFqFaRglyB3hsvxNlWRz6sWWb6hF2pe3gN7kld4GXPLe1sMGaoKpE1I8UNZeETeR/r/8uzUruf0RRCq4upmqLJqSwW884PJyd6QlG6eRgG5/ID2ouRUyaK2GpJV6VqDAikTpI7PY0cNmP3we3h+fRMStQFc1kMxp8tubsNuyg8Hitk0/henf7Jtew7evkyhng9zsNrIhotEdGgsb/xMual", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MSzrL8I0vlhtjkAfkUUZoF5c7R6wqmCMwbwM+ggxELI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r5oddrXtY6SSDhOEpMEntQIxgsBgxohrasp0LQzg/v0lP5M5ZRojaDtpA2dV0LAyEeYfTyzYjbRcOvM0VrMCFlkTPSmBpeUs3XVOkjRt5MsGG4vuU2UoOzJKpkFZ+AceG78zX0MH1EpciMo7ypPifZ2N6wussj8aqG8fMRTTXKicI756bnOWzOTI65qqAnIMjfDNDciUbuFckR3RK3oA80a1xYmwwbPvChMZ1mK8e7fzHaTGtT7DNHrdmOSVpDu3D3cgUriJIHzMlHvohQqBtX6sF/jnXeZANj+O9zZKqYPFT0TUmb7NEnUv3IiVzwA03YiqMeC1DUmehLKweue+X5sJ0K0QGnbuhn5g794pDaMZfYjTwBpkXqyr+vqEI/+NMGBfdIJ0+7KG8Z+oVTUGbGhP3lMOgyr6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MWWHYHIFnGAliegByrScrfCk7dr7uz76tosVIFXm6js", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Umt2DAcLjLEbkwetuujlIxVZ3v06Bgu0RMmCJ7DjmUxsyA2aeFEsMVgxO1tbzSvKGTl2giJyl0I4zizcEkgqD8U2etKvWexaM2sXjqJ1hgo2C3y3lJ+j01o6PHIfNeZuaXgfPI0C//6Qbg42gdwD0hGPVd6U3lqbPRfpGyMbGg1N7zn9mhSOyq8JIRihHzZnH9mKUR5GGreq7N4gW93uMqNlUchv5qPy6nDBuG4mDUL6V+4sH/Fn3+9N3UDpe2/G8yXAd5+VPcRulJ7xUIyErC/XErNRlD5pTwopqsRwIqVaLtPCZ2vk+w6U8U/BEOyu6ER7TDuNgfICZ2zJLRmM1TCUb0Fw09RawymnoW/gNegDm7YbvC+qCkPsWxR68VpvbEx85uPdfz9h9zZnXt+1dyAkSGM7Fy39", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MWaC4IxRgTSwvtz2WtoLgoO7RGn7G6iFOsOLlI9qO/E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Vt24c7qSQLUHxesqh1WwhXCY0ljHChVp7ZUo8/+ffO5ZDuZH3yadp0wVHD9qMMxgCjKK+dcTCpmAOwzO4UVipZ6GDvVCg7DOUw9JS5lMUfLpUUFbmcXs8FO8YT7oh86HcUuTorwLFiQ1O0OAyPjMqwzvMPSW+uMqTtopitfNFqgymnpXoatJvkeIgoGra1DQ7YupXrezBTXYyFRmKtLh04hQscNu97v0Rk6a/vjBez8pdY5Xw+N/J9sC49IWg5nv9DIWpKPGmzPl/PBEbsavucPekn3xcrhVtYgRCxggeCY8ngo3vBtHh6X9yODujL8uGhQKKFHHYdouA0ZQs4K7MNc+A33ZZJhbUmpkliNTBcuv5nnAIgTHdkzzBnPfI2fWh1WnsxIpAp1Q2Nm+W4vg27Tcx6OzmQHy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MYgxf6yJmGTZxYwULyWnx8/k358WXQncrYUIL0g+bk8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F3hutoTke5sJKxouFkI3GpYhkL7GO3XU3sjij8LnG3Q7xtihmQjcU+BxtlWG9REQDj5cNugU+Mx4FDjkzDuD5mDVQD/HSJH4vyZDxig2q9pNi81SGlki1N5ErofCZxd9ieyS1E0QIQr2G1BJxRxD/AtQVEjFuTNuyXkJzCAKQ3Ajo7WMHi22dHQ4qY33xig20VzYJvC4gWNW5e1lalZ05OcS2lOZHS2svXbxjj8cszKzv9tUiHcZoYEz2UFtoUOlYjx2EVxnMGwoFom1H++4cyvFN3xWJ8QzV4Y3tEGsNMu0k4NohmD6Mwyt3MguxlN4I7tVFCzvQN2pTmIoOyyAn2sV0PwfSU8L+MqK/HzGWJK0Wv9quGQH5UpEZKdVawZFGGTifuzXNhEO9RtySzf9GWTyUztmOsdt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MYrdC3RMOzJFIu670+i06HvAoFiMvW4GXhG2VmHmh3U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "14blUyTp2jLw2gFUveJexNF+2ZuBBh6q3tGv7SLFYIUlHhcxaCtYtOxJyc+nG64RNLM5NhxuRAX43rRpJefyhaHINP65S3jcijbi0pgB1R4aA/+ePN/IcdKttSrwg7FZW4hISafij+FseTTTTBUpKlcc9pnlmoCLORf+qsJ6Wl39bwiGv0WQgKRFOAj9yTiOfQ8bY6gnO/Spg/kg/twia6qSO4GrP4spKirKVJ4ld2oRzJ+boRQJKtpUppGu7H31NFCYdrAMWtr/NAV0kzgI9GGzaCEyCLKIOH5xJKDe+tozcu9mkxO3oXvvc76R/BWPAaKLwy1rCsk05J7jEKyDe6hI74US1paa8cPCjpwbJ/AAxZiNwZEvPeBd3AxkUj6fSof6f5cnM8v0bWOUJkYp2V4Hof3fHG9a", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MZK26lz0b2pxuiRaAJ703Wlk+iBOAJlKljoV4t0RN5I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CSTn/7xDCPM4wgyNQmvD3n4RELRL8AU47mVSN9W6Mvc/gTny7j8AJIzYCzD1PcVDX8jNcBoH5FHnMqu2kVJz1db2VQ85Jw/P2judwCC926pj57WDvftuRWrBzJs2SzvEz2Smxs7exo1fBroFuuK5aRz7kkX7jvOyFMRdVuu/ma5yFfJ5fzjaSHveGlpm03+fRWDI0T3TMnV48+En4XtsRMMXv27oOhQCoZUm9854SPcQuDzxmxQKmRri7kcTWdamzi2tdiscQrVyglfF2BZYyMbY6NYEIm2l042aV4F/baXK0JWp4+RKQH1lr+erSr90ov2a9sonutcnLvISpHxRPBPu3LCv7iWX1k/KcbAwdoBfUIPAfbAqlLbOCj5foyzHBbqQECOuea2zjevDDtAVcm0vd0Bm+kvE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MZqhyW+ULoFpaUS04B3gcyIMs/PP/QEqiOUk7Uc8Nvw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wYkMi3o/TDKtvjJ/QprbEV2sXcCZ5uG9UlAmZKvJ/pgmNE+S8h+WBwWmmm1jSO91QDtjLqmHe/l5coQQqjBNoDTqW5wTxbLc1zn19iBnx8HrsJnYZVt51tEd0AQ7kk9pEghe1FmysqEUStUJleuf7/DbDn7vdTfRDi3KUV8yibAZIXeUXLPctKzmoj7yEsqdCu1T9R4WUr0WMY3wNQ3dvtokuZgLi3kNCQEZA7kviMkcaiaR4/gJ9+mPqKt/0J3U/bW7oVNHucH8w64BLdIJGzyhtOr/HxC6TAaKxC3Qp5h2bgnrdOM2RbmOqpaUP0BFGJVfOIBplvwBs4a5p9P9AZcbaYmRiyoFPGjsZU22KLxCuvbGWcKhLKvznregKORFGd4WU3DArR8K6LtXOAv8g6qG8K503OAb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MZvtansevMLC/912GUm5EZswxGd65r2XsWdZOrTi3hM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iEygRyPQUEA2H0eanQrBmcu2/IXw3/9R7O7dnetrWiSyY1cifeJaUMBcfC1LHbDx4HBOn4Ixem9TURpaOCdnk+26Fq6K03ahtvcynuqSGCQ1e/2t2tfDfCz6Y2g7EdIKpX9U770wc0WgXnLFMOpPOOVpiGW4zSe2GyDPyvcLDfffMSsFkbYL/K34AwPQt5Hyq+X+q+56Mb5DehHvdfOyjHJmvQJMJgHHkxKG7VhCNfjmfFvwxos9EM3BQbErWeNcbLrwAt8QoE4ThBgz8oK0DEDvocPDIEgwZRL3mhDHy/Y9TM4q44X5rWI63jXdYHHDUW1O24rwOa2gYvhpXgRK2Pe+B2+WwCm6LunsYj+6e49ewOClXyTR8JXPFca3otca1HjG2TaUQVwLZBv3qeotkBm/CcNvNOLH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MaaxU2Ms9QJ6vtbEWKwlLlhmM8j+ZCzgcnskwIFHwYM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jBNbdRi2joexmAI00rjkDph0brVz3d3AktnYt0IwxBtVUGh2YHyhTTPPWRKimLmRsM8DXiUCqRRnJPa3lSFWnMKLmXr3c1ELAzolehIjRuT1AV5S9A3Ms4814EGZYdnIrHfFEmPuAQdPyyCX/u8jF/6ioHhUVs4NnKkYYMSjSjSYQYblAvWzKaGCxyUNB4wyULJ3eSmXDiYIvwMj5Thk9NtqKCqWfhdZYbJ8+QBNO4MkjxCnvwYNzjYF4kToweTVT+ZEcRC93ppShuoZODMk/1jfj+ta7P0UBue8jqKVS1AIu6xQ+E5JJ90Z84adJ4ALhXMTOQUmasotIV71l3513MRjiI+gKMtktBOeaChbB4iFk/ODrtQVw9+FE7eKyE9XkcYHIKSP29ybSXHiWGbnDbvAejeadL1F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MayX/RNIykTtUYDEaqcAHOSdVVYvxr6jTDaw2lbMuM0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9noGa0IqcQbb02+xgw1shJ8UCREoJbhZGHTd+ZJi4SB/mjGUBhUiGBH+cCpHIUF+4tzZOQH+EbfrHg7WfRpXp1bZmmESmz8wpR3aaXZFSnEkoYBomEmTOol9KqtxwiwIdw6jbQAVDMmhrvjvNHvYzFBYlUuWRT6jyRnmRqp8t/mMbTfwVR5uC5v4jfOSld5DLraad3V9On91O5a+hY0VvOKktFGR5Cf1p4V2QMWb9Xfw6AXBBZqTFlZdTpdXgyMwjIjuRciry2jER+7RyZbP4QyRTVojaK2Wn2M+SNq0VSwrPGHeIgxYoZdI+OasCZefdoJEEbKGVEZmJ3dRrtFeraNzkiQ+IIE9VBU2tAhILGASfHZv5mNhhxk5cVhHjcNI1qCwdr6k5A33C8P+dV1cgjcDhL2izYY/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MbX8k1TN3HOVP/fPBQ8L5IanTreset6riSX1Vn9d0YU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/4oj8GUwMZ6kNU88IRqw2gsBobXn7fBvC0KzPks9KddjdOeNDrhksjtL2szAJ3XaGGtfEgIaGf7eVw+nuQPNATDbQ3fdaVP+HvTcBG83VhRO4RVPdU/4RnqrrOQi9lQYOf+4BJq5BLZ91481lsHtIeN2l5/LP7sZ/HR4OZll6ZQN7GGls6I4MgKC0NSM4O4zx8ahhZDyw/Mf+OLGZJk3GYU/SkrBoVON27gb5U1p3QuCoqIMNGYlclfOCDGRtXvjsiCkcYdzlZInjbaWfKg152Is3fq8wF+5+JNCDmJWssz88stM3tTvYBnswNG7X3snMJXxra9+VvMD+zJ1ShFle5LUUZPp07YI2sBL7rQh4Wvq7Q58tz0r1wuxIkjKqFgAKPIFZ3cSOdxS3Y74nt741fNyBTVl1/cO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MdQG2ofUVUNJcbSTifXlqfw3oMqNx2RHhzB2+cpTCeU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uYBqnKvPYje8UJoW8fBqWQsUHPjirKWyjEISn7wpM8BOHWEAmaWGUi12gxQKc6dDtuOrV4GgLGqnubYRY7EgW4A331oWZdMH8+fmjfLPIE63H/nEbaTo/cGDtzFBfQAc7T+3zihUmilGVDRet9bu38VprGi2m2N+IXwp8Spbif2Ocbu1i/mhwqYZEUNWAVNqSCBv3zZhB2c3mYZfqQLiRqTBQfZd1AyULk92gxlgDDDp79GIr1Di/PKj6gS0lQfpYnDo/PRs8HV85oipdZJgiDIYF7EKnJkGbCO05ZyVYcAq5gaa0d1mfJFEYkMvu/VXjZwcxTGx0A9qy4bGl5gxrom6gCa/TSc7aHV2+9S6otDnkhKCpB4ubZhH5iWwduyHl1dieg2ov6hd2C6398wJY1DwkNV6uICE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Mf3lfY2xyLRh2fzOc3RQQi0KWsk30xf5UEM1RqCeGeA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gMlwkIwJWs4O392HormBbwGySpyw1ieLqyFQFQakwA7OGtjeefeWfbI0FkSHICDmIg6ahUe8ljs6MgOH2WHnncn+EAjps4ZiHQggAaJj8PWElmtZcZDDxd2ECc2u2j0fZWYtFMZnPn/X3JgAdPeKGA4Q9bZxdrBEsokawVXEgARlUw1N44Vea2gsrO3qLGrF+6YXhlTnhZdtDJM1EIcfkVYtY8AZqyTjWfNZ2QSXFUfceKL/1x62y2tFe0a03IvW0VHAfJWmTqpY7PlAWa7Xyk+R/HAPOZoQx4TovD9gcz9MeYGddC1IBY08/ReuOAuISe2DqcKONa1cMzazzWOkZPn0FIk7xN2yM25asex/eoR5Yh8uVzf2y+BfvaWWLSW4To2QfprwmEbW5KoUfPXyutWN/ROlnVOM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Mg14ZwT8AA2xIzp+b65tASu4/ycN7kEOxzfBIQcBbEk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/mKsvOaFZPa1jPBLvYAhhBgsqc/4PnAiWq7wJA069JyofZj8vMn0yRgBz1WNyOfaGzscIfimnijVG+7N29SbmYG/7PWMInJ34ect4q212Uo1yqLktr0CitNIToohOY/7pfEdo0GUD8RS6JBGHlQnf7Js+yKv9qqsZ+4DDdZBChgasV3gGpfIwZZ7alWC7L6L8rwpITSdoMG0bFecTp4S08ZeQoHGv+KUQAhFETBwSm60Y691YBBCzleAUs8J4ibMd/DvffsCnHWOQegavQDNHT0yh/nJWfI+ijKs1G1TgeQvEq59YrS3WNRwFviC24Ts0UmadfpRRVEQ9hPff+xy9HJyoeIzCuJ3wrJ9RdHpu3f1k8X0yBlLl9tZCvZ+bxZ5Y8gCHAxxq0yxiU6rJCf6ztyyl7PQ1hoy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MgLkji+y8mofaAfXHW3O6qvl4jnLapLTMyJq05QXclw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KOVo/1s6r1T/G6WPSGCpivkYI32xF2oJvXKraGd9UhFjuGj9ggxaDkiLMaWYXyyPu2T5ehbk/L5MrxBh0OqA0oCwO+3+YMUydTAuUUDOeklbz3/uy66FU6MrrbPIQLxb2UQJ9OEnPnYLonF4BgSelPIUpsYiY0n62Hq0LEOWCcZx1f9GlEY6M02Fy3Amdvz1MqjUUkHT/NSGVotvTzqzFQMto7JZrZnv9/HYmvsJH7o7HSxZzGuSm62pAfq0e+BBLNTy3323lS1mbfwC6h3jVYiDoGx1X6dyPq1lu+bx83j9MJvZYsR0/Nzzuy0p1OqUlHGp6IFH3A+rFllSwZ5HUqFeF9f9occ+q8eeTKWpNok9YWV6Cx9NCF/wS6bwfm55JK9YdIqvHjq4GQQAhKNDVprZ9Y4Z6Kyx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MhkLDoHoblWMAbSbSPWC6yrRA+++RGb3zxZMb8ujjMg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+rspfni9mQwSRW8LVBrC2rY5yAj0heukMpUtIM9eRrJ7pIkGisjrj9v4lJVRRPcwa8EyWvwcYkU3qPuFQv5QmsaJjybfMxfdPfMx9MQGpMj3pSqF5B3uC26hhU9mZwuasn2wh6aHigB/2TlJU2mrS6reokC22Zjld42xWKu2MNAJHe8tdzYHdZjjuCxApj7nMtGIBEHE3Rdwt07jKkIsWYGpjjAlCXrhAOIyXM3e07gy+ptWjIWwtHYb6UdQJSPG86J/ngfUgg3vuLqOqq9m75A5u7n7Dnapu6/13mGfjSsDMt/tbSreVnafjTxXWQTreDp8ONcyUvX9wzd8ozndwE44+71PFQM+dHkQGZXmkL2kNmS880aFGH6kg2kn+XxQKU9rERRDKRHoXbiDF8q5r7Q1WYIqzqQy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MhmViy7ykJqGjGt5QVjeN4xnek5RacYlmVLcr9VHWD4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LjyBYUfydShS4x8ZBLEu2GYCpVPM53aA7T8QRfSyRIvWBhw4mN+ZedQJ4jn773TEL7to62quswduqUihdJKbj6EpGDse/sGNFAiF3TXQOvV1BPMCiHvbGDSJhjVZCblhgfl6f8fmrfPFuX3AJ0k4ZtB+5DXEiTQ/ZFIJfrqQdqMj6fKNYGBgVIRP4HaqvZDxpOTp5KxDVFlAYq8Gk+DT+hHBy5VChrMzZGZneGd/1obtwMr1fIgMp4StB/RIss267xnPpx9Y0EFtBXfgkTmCN9Jug8229+4Y3DNF1+zog4epqr85JVayeB13hQqNlCMyXdxJdz+TVK9+7Tx5g8OsHLk8JA2wOFiPQUqJcT5xgNqsh1FVeWEZlJ4xROce+tG+D9G7ZKasotgYncTEo48rzfiPDvZRioSN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Mi/asCHs851rBrbcHXBg8U5JV5VRSkTjrfeJwH2GRLc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZqfNPbI9oXBEWKEr98q5uCLsfNgpfkEYjPEf23YPh6IEwRIz+o9C27N0WgvL4YE5qqImYVM6602StvQikeDC5PT6vjwJihTZyJ2DBRSBXmYSX3xymZqoD0kjiYlDvdOBufADVaGCKdnTetQklFVwona2FdQLAmHmqo+UfmCMb2DJ0v+bLIMtMT6uKN7rRsT1gslfv4ewaANFvv4kiAJfJfDPNKSd1Fh55OhSsMM1IL2Id67yyHA3ddmdmjJf730LE+mbffO9OPqZrLoHPmBh4kSIWNDTFmlti1T9TC4tWa+WwebECU8DAr4cSq7wtKvelQS9bmYKh681LPvOU9Tp7d2oYC/3SUoqJ/SHi7o1q3RaBqFm96yQNyeLTOR2o5cPmubWuNDG0npIQZffcUFMkTkXS8ic70Ps", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MirRDt5py2+h2X+VHZKEjieqyYtTXFkplaEpotXfaHI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bke/D9OMaBJqmczWqrPOabesoOUDthK6ExHUqkyucfmuYpR6DsXRwv8yJG6CI6t2oCecrrf6PpZAb2sMhwuAWtOkdNLxCOf4WiBrWHV72DfiiOk+0f9U5ML/EVoZPsArGlgBgi3HUPjp90aTpV9xaD/aCbG3/o0JAccBviEbYuhYvrsW7s3y7vDOSuVmukAfGtfk241I2NJGtwuUujyJPoIfE0DJp3d6AzGhY6Yf3q4xTsMZjpeVW1cxUyOgE1I2uIMEi1xmhr3W0TcKknxcyDxcYQAQYft0UXWaqt8dTM5kt0rJcR9xS+F+wDOh2Yltk2W6Z2ew1tb+8H4wR07iF+OpXwXciaVh8J84+Tsm30Gm4fFdQ9f9S1Ni/74mSeGL/bSwtZ0G0eL4BMigKxztw733LpjsDRNs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MjBFaxdEexRzyFfvtrtcaWYsm7UBoRmsDETSUEbQ6/c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Xs3pUz9dWQDRBr6DilUKAOvjpYyFXHJTEq8bKKauvilvq/5AGROW4sw8EaTxnGNxvFOkXeT46Pwq5gtVJXl8aOYq4joudVkIZ8XzMqp7UB250gyaW/nRqIgj3rxCRSue1UYnMPMWyfFUvReRQjPKoD3hWzHy9D6ErbHMOzX0OHWlIstTpYwnBtCcuj28JQtJ5rLnuYf/UmjHm82DSQ4E3ouFPsTRWRr71/Kvr2kHKH2oY6RkjxunqzJtl1znEUZtBURvehgSoZw/tRFEzfKHliyKeVFVJkKxD7gJODNTNDBIt7vKpyEHS9DnYgcbe059l1JPVe5FBmseRmZj9+K6+4CPN+eFxhTEpXDlgaDKZhdyuWg9j1sCNP02mVfgHMe7Kj4ruCnet3ziMgWBono1HNaTAlbRHYbj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MjHvs9V80co/AyO9DYchqj2mlYnutSxupU0icefKdj8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "upMo9XMKK9uiAkYvw5Xeb9cqu2aQAzQ54QU5JDE465Igys8dFjN6XPGEiDhS330WdWTEPP5nxBg1Y3ozy1yELbdZcMH/2S8KG8gY7xc091dbiGTUnFrBH62GZCgqHuZzj/XVL5WUfzObvkTSinLzLTowwxvrypU/DvwtEqi1RQixGwWaxpuByihAm0C0GkjO/VoFe91oHSGQuANjntLLJb4gDrf1dHfg/7h0FSQZbpeJiqnnJ5OWf1/+qBtmsB3sIFNnyIPNNgaS/2BqN5NQ1u82+JP1pn8a7TLzD46tGC40e6rCJtwhUdEqLofJiXBlJS6uYfheKUBwEon7vLwVM/pZ4JfdDmL4cUf6ovb7clhW36wj03TNbNUUGIagxxd7mB4pTz7noGCZaNvFcfBffbluNd+m8Jys", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MjQhCN0Evt/JoYwY9qjGqojm9PqsVZ7ARp+CAKPMyT8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uASCKVJpO7rEW0+WU/FtMJlgxi2UDJYliSeUYT08jKbfpt/9vTHgdUMxzOwhwd97wuXnhKcsykjuuVF34B6oTzoUtKjxNJRX/NCYbPgcQfmYSmEjIHPkNm7mBBAsPMGmXiNSnDPsp8goXlcL+H3ZR/yr2ImIwGNGeJKvK7C8WS34PnykZC1huO0Gzewx8U2/Yn4AcJtJg54kkPrjoQWozm03BSO14x/2Cn4lYolIBuMRyOCxcB/nH6FJ9thKK7mFMXxpdcJCiSfD4s4XKFRg1IoLi7FsmTENS3CNu6pwDwpiF9CganxNmtlHw2glOy+9Un5Hajlc0nRa54kMWLJhcImq1Vv7xku+6zqbq15m43ejymwq0f4QemdrP4+ySUnZmHh9b6BBJrSqb5O+mkCijPurJ6HoB3Zi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MjctXJQTg/tvyKG+92BQ0dXgOqI78TLtb3uef+25ukY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P6xFE++ehDeM7sUczMqEpWfEQR9OF9zHB149N4fDUcKyQwQkhrlxGdoxFLcPbXhk5IgZdRekvSJNZEs72rlh7n7mXweRlejC1xGEuAsCicCtkCa4Umt6oHIiaOnBtCWOFUthpJZQ+3eb8xQoEkj4hVZ/zku5kg6NuQjGLMlhCJiE4ycxyz23Ti69WHm2bwkdMU9n6MfNIb0JltJA59muLrxVXMk9FTwlKdhI+FPyyb+1nYuOZjt2Y73wspje8IEQR7GLxzNc4xnOyTvh95ioY37gEiptUOgnbEblk5RVtm/hSYiWP3T4XM04ViyZlQJX2moxxNTUOevdp06DTJWGod/1bZOGBYt4FoyLtgQC62/dRcZRNRCzVh9mSBRL3YxTU6qhccyS6v2Ti8nxrwS3uF9q06AF/CCI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Mjsn/2LSjClXMspbATlhcP6KBzOxIcuEXbvq6/n8paw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aA0K5JG3Vve/QoChQVB1dveq1bxzEoWjuGov9Cwxb374qvxSot5g43wyALhd7YFUEQNVfR0tZA2QfvCHOfgYSPTGG/gaQD4GoxHFEfAjQUu2qtfoGPikYOftKx2Q1LDW52Vael1TKRByyE+zqXkxQIRSmNbAj7JOrYu6Pu6L2zi+c60o5R/HAFm7s4h7hi/zx8Ul9IADPnWN97t72yVMSPU7DMWqOgTuqrkLt+F0lkiZY4AXyxRtqyr+XXndbSR4TNSuqVWTeVIz66ntEj70Q0+3e3XlXzLuiatQXgK/p0p7MnoHKvbhoCWfMjIgemm0tNJOh9B72YsROQBH2I+OIT9bLLsjXPDfOo2UX6rE6fj1eNcvXYee9IL31DuyP1QV5N9yiNKpAuk35JaIULlnZVkaayVyKMvp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Mkk8EUqgmfuGjLb6vnGOyWmYhy1TdyT8moe3teB2LnY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dirfzvjgw2bMjoXd/tV612qHjcoT+JKJXU+VQTfhXS1Z2z+YtAxSYmbrTE6zeulccWi9iXHUesiHYoYqi1jsHdIFuiUj18g20NGJ9RoLwb3TS16YtG3N/9RaMxXImjehCk2Vo6eGXadqABjocgt30lRR93jQrtFBHripQS2xpqlxK/Yreu4Lqh/V/S8HSxJLDZKOMZgHkbpxUKWU2sVOlx5GgEgXfFLIrFsJph9xCfesdkvgXQCCtZXwOx9vvfxlabWvYM97M7HLkkcDcmRtpldDW1nkJqPjwerywHcR8u9kr/So99lUBUlvNukCQwJuTR4GYHlWwYLfJQXuoV0CGWgu9m/7LVrreHbtuCph7H0HCCa5EjPinyOU9lHzRWaM34r4ABD1uyZiPWDcIiArFAgZ7ZGawJmH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MnF8mL96Ik1ZoQSN3PK0Mm7NkgspiYT+4FofBxbLrCg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B6G+8ISod0DUp3tbrRTaOdSpc5k19iFZQPADQxSYrdbkJYQ3iyUt118cjmBHQ6hYSKSGKixZ5K8T4Zy8A1PhsutvjDDM3XPh1QBUfvPXfQEc4VdsMemwlCu4J14ag2mDUkIKXsSKU7hhQ2GoV9TZ79NNGcj5RQm4hOxXnwBZ5xcTVhIvaJB0t3XVqz+A0x4wmLIP+05s/w0Vneqm8fTS4vrSKb3KrgLP6/mMuuKLDkt0KXjXNJFO40sCrO3fS5RUKXlVQ5yokmGWcNfKcG996xWnQ1k1uKryG5V6iXquHY0z7PKE/FO8Wc8b7FihwnRkVGBeqO3sFxXEAEHSIDaMyvPV4xn4N3PkfCocQfekS27qb4f75fHq2GwuMLe1D5aUEWTxMA2qTtVlpkBdwlh88ROtMEwsUGG+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Mnt0dQ7gj+WB7Zuj3tnN0Fdjp2HqbrY7nHJXuTdWlq8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EkXMoBuPX6iT2slY85m5rhNFVs/cncuCuDgujmzMNpWgrI9iT8n1vZvLF7A/bD1BtYldGQTwSADBIePyjseeaGNx0VXq0jJhxARZ3tSGV26xNs5jxb1EPt0dr1waFEmvOeWNpps8QZNeugh2sEaIDWD9PG+sARdeaUMyRmlkV8nLv5v+Kl5vgbQWf5uqYq/cRN1wSPeLhFk+8GPyKjeYak7dV8x+ZcFH8bv9MUN+qThXXpGUS2WzzhSfYy4WvnVn83SNxj2KMskNAnsozPJE+0kh9EYZqeF13yVEofMVYDmZTsYW1d+gkXTSAVVghfAdMWmdaMmJE5IebVeZHuZWA3QfG5SmHxQLZSPmRXC6g2ET0ft5VsX8hqXEwgUi/Iu0Lv/TNcu7ybOtM5PhVo86VhprkTBPdpRA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MoFMLeH8KyP2Tg/0LV2S+ZH5e+o22owc0JPaJ3ybS6s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "82vvbUz7DgdU+VU2H8S0IkRAgFFafhcatspCwvDIh/qRJRzUOUS1tfJrLeC+2bmebdqOrGuC0CZ8Ktn79dPnMKD5HLw+P/TuRvfalwM3MmNlgu6MhFdwuUnlV/HKscRKBJlYmZONkV+z4LXWjb01IU+mN0p+9Z647maK1kgL8c8Y1c/PpNG3n700b2Bia0/W0uobzsW3Yqz9xj9yF+3fnM4/7CL9O3UGOU9AzR/UAKEvdcmyS9iEevbQVd/W1TTKJDGyGx9JKOcA5VCj+4kfj6YqFVP7+7WVSxWycbVoNmyr5GtkqSGscok8gJDHLPYyMcUUI9Q+bbQ+HIdztp+ArWbXdXx6bxjCWRv6meXfVYRl7GqpGEdgmxrsNBkL+FovmYlHdiyFk1O3nHQbxNImC0pxnSYrgibT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Mp2oOp4V/lfeRzHGzRUkYJ3g9jGqsKJSrz1MREfyK0E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KKy5NXtonJwOiDbmXLdqBdFgqpTIbp7ViE92n9VgcxNSyT7bvfkaY2dp38UYyllVobJlTQ829T4aeeGlUm4VZQJ8tDNuHKWjQaOjLuC23CxKPWgdqZWHl4LjChO6RbcvhSKF1HX1rmpwvKC6UUfX6AUxOni8ndIkBtqWOZK4GbAZ3cVWF7nF/romTjBX7f0RfwpG3OUxsjLkR7F+hXDo3DbN4v+n7q1AjqMU9yES4lpNUOgXp4/Twv8IlWeuqFOrBBvdCt9SWJw2OWxwolSHNJ/dYD8DomEwl1lQAFk6LuVspZRgYmGSMiSDueiE7WQbDnoRpURE2fV4r4lOxLh4DSJt5qgrMa7j4IDhOXqm3lqDn2979xBqUfNeDUZFRmn9NcGTyGyiXJM8WXcAKMhvayEqnUXIy5Iy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MpWD/3wQJByKdBXQotRpHkrUpNgCB+ZmFt4Flu8liQA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hBjMepdSMmemmoq673bP6xwKElA0km/QYX5rLcb5s8SkNyMjfqg7hbsgoSQhCsK9pf6my/bVfXVUmkajCyPcEOgWWBl/8hfXdW5KtEvyDXTEmtdbF/yWzg7xMmPCaCUI2/wNbclULgqgdIiAvC+X79+veLKymic7GLy5n3ypjeC5MGgoQF3wOkiFUFFX5dRB/GwOg/TVJEyUk9W4jtjG0d0UHlVEgezjXqLzyRMlXJJ7xr3oona+3F57dnBF+1TsomuB1H8w42WkaLTc63GL142bwgOXwC74KFcP+KA+XlKBowQh0q09qRM3nJXOt/tgHevhaYCpkAlmh1jbyUPCM6fpRzgBxiLdZcvk1Q7aKF19RN77ndj54b5hT/oT1OgLKaRX1JUZPNBeXT3X79u1beHhwHslHvDC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Mtetd1v0EqCosWk9dp8Hb9bZEE4yx43iqJVlRqSm5lo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kBgMtGiuL+xA4or485dmCnaCPoXB0mbSfHVKJMe0PQg96cbKl1GZR9AiG0UR+hU4sgEocQLrTpvO+R+RimrTBAoPxPKkFhrBdK+VEiRnW+2XovxRo6Gfr1EcKlEjGs5PRPKX47KHEk8ppAIB9OMpoFC5Dke8XNkDmld7oVasiTrDiPcl6xM8YHR3+h0+fUWmy+QzeBlAejUrrk5ES37L6OFD62PBC8F3trnzDnSWDjsXWZ2KzqeqUBCwofqB3rUvslJMKvUixQPR/tyCwUUb96FMfqEDhRqc9t3yOdoMx0NjTlwHgJOUREFeRMvAk7P9bTB4TvxvMrknskgfDOWWpAy8Jfbakxe9sXSNH0bR33fpm8KJhBFLmWiHktY+6ViAY0/5ll7gPgiv9kcoh8TDh+m1/W/ziLB3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Mtndgu+SJsL2Gd0FWPv7g57eYbG6uVhO/k46gRaNnLI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zEDGuVELNRVzZSqe6os7jCSbTqisL01i5f/bEneF71gJGpIFu5qP4qVbYx3Pof3TVTMa/dem2PSaM63yZ6lJMFl7b1N29bhTyIhVZVz+8Uvq1f2V6dXHJ3UVPZAk+D4J9r/m++8dhiHRQJMXgMvnbmRZgfpbEtvQ6VKEEVn8oJiJ7X8/GoyjYZPr++cMD+ERcOmIxZHEVx+D0y5qb3q78Suup9VqRBmhgGHNPG9ih0ZrRPmNiNKwZA4Gk8ikCxNYtWSD+8l8McMcHLKZc+NPepFlxuVK6MXKc4DYzYLq+SogPF9ugEcCPKUxfXO0o4m9EwPmSbyHwaaQFhKb+PuIubGYNIh2rBRyaBYUbH4pzl3pdN8B2sn7tDznUlx5Bi9xWr0RrV5veaAsWMaBrQU3Otk0FPntyY0Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Mug819pObxU/AVSfwqJR8nvLJQdxl5cmdrlYpGTwwDs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vN8roo09wrWT1ig+TCd6ATWi0oRwGBf77kNYxsDAnZUbEy7QTmLWhXVbzxyoFf4pBA6ouzqe80j/H8CjECoFlFH3wsiiWY834IGRKwR6MaNltu6QJU+gKT2QFYgHyZz/YJHwXh+uaVcJLhTDlam01P6wdpvCimFSIWi/VXrFBJmVYF+lh0TEZwEPrQqLJVg/pWfs9Ab0ijQB/ttyMaj/alqSxYpAkx/iH0NkCRJCjWj2yvLYtNc2p9W8hfmfl6Y6jV1gtHR2pjPdHLVXEcfBIi9iC5Xf/lsavSsIkXTBOtnmIxbj22FnLwf2tfhwR6gMMAfdebS3OZp03dO2N7Mhs6Xh1GNJfm7kpkRsbl/ikwlFASx0lNI0q1CbPur2d4fC4V6rSkkhYRdnoPGEUQJzolDVf39vIXD7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Mw6+K/N3ZaxZiReAlVrYFyVXDsO40BsqGh5i2IwB4IA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2X/AagdXK7ofPmhZzmDrumP/MUjXzC4xevRe64h6D5+4iSMO41it1Bb4PupOIEhmAQNfiBG1Q9RfwcYO8qnan3ir2lkczQc1d52PDTy1BwUF+C0WJVrHPfw60dk59hvslTFQgrAQbQAeORHmPhQs1Ftv9udf9Fil7+lsgNJuC6NZgtHdmJ3PgfHTYqTno+GRnp3KFTQJ5sahyvNnH57cQ3TAQYj/qc5sALAA5iD8jKxQIymmRkNaHBayTf8pplnR3Ek6eLXygm0zJJx65bxvNWIAp0uloYAScw4aGT9cI+3hQcVKqWxPEgvc7KipPGTyb7dksONZcf6ASewz0DArizQnu15KWOFegijL0cRpPX/4bvAwmDD0U5ru9OArXhFDRu3QhsXjpXMRHeA8IT9T+wMSgBL5bsVP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MwZ5qlamF1w+Yw7xjVZmMjerzxyzeV30xxApBLQ30hg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B9UyWcyW6qcPHpvMagGrciaTBH+aTYMHWE6yP2HfO5Q2g9fJG88ZSXK4nz/vCt2hem06YpTc6yQREePlVg3OIcAH8B8Z7G3GM/ha6tAaMPUdWyoCLlnR4GRdOmz6pvjmfIgWu9MVVKB+u0Zlef587Ng1T0vleMs/fcIGaQhglYpKK9gkufUT/3yO23Va5Rgxyjvyo/wDdBw+sxoQw+mlCSfb67ydgam1WYZSUs+ppiyghnmTh/3kWepd9c262nF+w945bEa28DDjaQbY01M2g42aKoVJ2gctKLEwuP/xsO6lnCiTEhtfxGy+9+yaUU6KxSklACVCcyc4RxC9xj68/jWfKz4VldPAGXqRAq5huXyqRkPmCi3eIr7E+eg6YXaOpSAd8aN2dO57LW5HT26Y/8Hd49S1w7Wd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MwzRIkREBuYq+qtKkxSPlSlnCN4otlGJ79c6EdXvKCk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ofg2CIP9znEk7RbiqZ2yLAcDhfZjrjBERMSDuNNqBeNXRqWlud5hMW/WLs07gd6kio6QCyObshJ5KhMbSxZgL9zzX7su/Bic6QgKRClPLIL8s1vTkiGscP2ukGVR7c2QO/hzrDozPKCWiCBbtMH8Z2SiKpAzXmS0XeSeHJPf9/NGV6uQJRHkCfuHovjAZGgu/fWlgEh0y3vYyj8asoKn4ild8k+gXTCeKd7TdIIE+IoZa1wQZLGIzPZb2Z9wC0LGQnqo5kx7R3ZBL5tI5KO3UgfvaSs+DHnkotIYmjA//l/lYkGU9Q/OqJKZxJgiXy4PUuWWq562a1BP1hrFUzb2PRHuG5Txy+Ku2kxwG0jvIwTV+wk0Z3OKR4/njS26HO6zHqNFCJ/032Nydc+9FbImrNPncMrgFzZz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MxTV6SJUMLoaj+Nq9YQkTW8Kqkzqsyt4EOXjquH+B4k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JZcZlIMpMRcuk5uO8GZ5aok0fvU8YsZKnP+CwMV4ylqnExx+fTTR+quFkIgNFTSN2z543M1UvvrrhQQFi9JlgzKItt9puo4tkAXakLfVW+vfioaDZY8i1b/RSCiBD/zrAUJ2BmyOOK8TnR0lLc+IUIGPKyacUs5riXCWs/WDFypjkIUxtCHT9GTZXUe9hkZ3sQHCz77vK332WiGqzGgiUOBFiTuP8WEpBBMbv0I1HhvlgrIL1Qgwa1lj9imqzUgaqhwh1yNhhOwCzyk7Hq7uTKAyQrFp3hqX0NjYYL/+W/XguTn8UV0WG2hBYVpRVVaTep7sn7fsWI9wAk5SWI3r9QZloao/rDlHEenIkQubb+wkguTKDBbf4oTZqKlqj8KTRBc9AFIQRUqz/2upAfn6qVDajP31ANg3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "MxtHbMJPgZgIcM3eJwVP1SCzXd+fMFL0ik3y70EN+us", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qUYE+cq7lPTjNbt9qg4Z2uslFySH1Dsftm1L3uFOr47IdhY6L3G6GAr7d0lT4Aa1bLlsNvj9LlTA1cV9XKKDVz8rW6MR0xaONxYCGzKPK/Iz7GItfR41fXnZPJOdbJNsCCeHPHbh7CjxN7fikRGNinh0Ea386xRdulDz+f4CZruxji80mFV0axbHqFJ2ymnGfdOHMuXLHhr61XiVh9YOVlrfMh9RK3lo75+BIH8j/RoJLs2xQrVORiJNPYwfAaiRh+N7nZgKs8E+B5ANl5cBUfgVSMnmOVlfqe/RJAkIQYRQLWVJG/37HG9cN921BpFVE72Mm/RocXINJuTgqNiBxqx060DW6/nt8etWx+SKm6TKnSk+91KZdEAXm5pMe/awCdZs9Tbn9WWyX5BNvPcP4tBgVeqDvB/n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "N+Bvt8sd5RuZ3VsFysNyEAIabh4r2cOnTV5JLwWt08M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BIyAZImyb7rzvYaE4pogX5CW/c0nmkntgVSZYJBNukvJi9iOE8UQPUq2hPxNE+hoq7pG1bIycOxa0m3ZOwqCpTq15D3VfnFsu09vPOcpLfOXxIKEvxFSe+oz3BYZYWf9u7yN2eSKwyJS/yfoVavvrTf8SAMU+k3ErPTikjax8u7fiuPm5REHj9KYlCNGguo5RJPGQMWdvt5DL86WcGhNCKyCCcW4Ad/JCrdM6aQv6UYRB6DFQnYU3eoKfrXRmOLsah0wlnEUxqc5ML0p68QLDG24KChSZ54lCwsz4jgQIAxeiWVHdxM0ZfLgqIydMYbBlDnLgBLRe0GjAQ3EKdwiIpg3/1jPSa1XmNVISRhESK8FFDatFUhpSuHlWacLF0Zvv81Ph74Pxb4w3TRZ9LdBm1Lsg09TAQ/H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "N+K3tzPUdL6VQdN0lQozIxAR2V2V7r7j34BRGWx9mVk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MQ3wOpohNIyk3IwQHtvSkxVa9hqmnJjdvtSGQjojCk1GZBgdF/FrZuphz4AHRq45AWgQelvfeg/b/Pw1r3dSa060k1Bu+RQ6xuSioYXMW/YEn678AFvQgS6yzRc+BbncNHoXB2KwDfQmBcdhz9d0jEABi2AUv+aDOWovU83uWFSRmklL9IoUl3z/en8xClTclkOmb/H+sRSJAQXNutRFkA4GFKHv7voaXJdy1LnrLDYYb4drFggdb7J2y2azyqndlM3x7d2M5Yycpfx2NQ9F/fKi+xxEJ9wd+aDnHb88Vs0FLBqYLSx4ibyd+pxAgYy97N9RIeN1TiWovJgomQ/EeLptLUC0L67uwFn1mWIq/ioBkVi5+YHn90x8+pDnXRRVGgZwhybtEv+dlCdtHJEmYh/njcAvGZVm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "N/YcjKHmG5Anj5gV3+kWJ7LbkdoxtfnbisTzY6wuWHQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "owmaeZnp+xFgSpoDdawh+D82GGGlZxA9B152+cR1y5L4pSsfXeEt94jnT7t9EFd7Dxy5SRIz6LPMKnLFYM23aNoir4YqtRuls1Hi1NA91AFQB3mg5ovY5AVCDF+5nDAFbc/dflK9kzxoPL5896K0YuEwlD8g9+lBAQVNZ2JeG0U98KfoE8qzloB5uvjnXkH9sdEfsucVTip8nR3TKzK4Kui5U7zMXGcqQvCtph/c34gX+BVp7lXna9aTVVSIhQjbjzhUI2Z/uQOhyGLiQ3Mr08iFaVIZGoJxNDHUOmXL9vw/Zd0f80aT3w40LRUcAByQfNUCHDPr4vNxoU7QltJkJ+PZm8E76HW71nvBePYWcdfX+UBOq6MabnhQSygfUtek5DYOMVHqboMVKPDHBk3nQoqsb+mNs0Ph", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "N0PvkaREhLDPl30ZijV3f5EFHN6uMYd9XLNwWJLXjtU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eDulxWZMC2s4dO65dwvEEEdMfxpySfqoqprlDGZjh5BXyGRLHcgCEy6FpB91Qw4qb8TqX8k2FYYJXvFBWCGOBLsS7HVdoGFb+5Njv8OlNybdKwVMaExHkxOJQW7At0EnJ279jgr3rBljQKM89OXkZ69Ob8hKsvLm2QxZ3D1dSmcRSM18cr0NtsMVUXhYkt/5+d2s/uNF9l4l4vGtKHF/1DGcbFZVkRxtlNyPKrz2MDjFdhwfjjEil966eFXoLX84tRvBuk526voaP4vsMeQx4vBl4oc0A1q1jqo1ZiaZ4ojpBpEG4ZxDgsm2TjlDyso31VqOqj9YIOfqwa422BRBwfTpOSZdQStgOcPC27d8j1hw6RJ/jPW5UA024mRLRH8Y1X2TcZqeFh4ur2w+C+tdxujE2igk3F6+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "N12xqWVKXbHyeZWVfXrgXN0buq783+ovz7IDcZh6T0s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nCfEt7FLpChSuumUVvgNfE56I60Gy1OXtwj10YEI3RJ66912hMRDJHjBULDOnpt5oJkBE2kucznWMAY1YzoEhYrqZfufobRmSR146aotHPuBzLxHOeTSvxLpvJ/dF2ZaXM3/rq9JKnrf+mjlx/GgxOHmdKUQYCds8hpbLIr1C6VQhGRWEF6hiKS0xTyLfDYTbQp9eaFaWS+BHaUUiCBuf5fHbg2wRSofTb/STkeNiBdv8uRb0knJmqKfRT/vm5eTFrJCyllETGaEcOevm5KGbPSNnc/ebUwGa2FX/jNn0wROy0rJeBQcBKe/yGlPpTBkYaEJNL3+hNpQ1Dv1rf5/zVqVq2x/8HIA8lwdh0N9laOPLZWwqdovndOhyPsDiaPs+bcI6vuBFgVHKfV4ToFXqGJHGR17llnX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "N15f0QhnBuHb0/MoZ6m/C3xsWZT4HwyeWzc8aSp3ARI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WVHYImfIDQ4WbnFMBtr1Z4a1rCyrRTp9tfbV/7/QjuwbBzH2Hc57DlxqzcTE4KwoO3DOkOQcmnlHhPJclwnEBYMeMWct6y8p/LI0hEj9nenZjWKEHK1d5q87izCeGYlMxXD+GFIZ/B7OsyIxtB+S7lXKFb73fyPj+20jGf6kFPQLWOwJ83Z/7o6ld4JXD1afL1RR9ITq++CO3VG3KnGJLlsA5WskCS5uHC/H3on1R6SNd12L/v+40Hjwnb1P9cAWVkiIzjAU0i2v2O1W5z0x4W2sOH7rfQIMWgaUApZZipry/9wyuWE82rtPCU09xy1jUOmO4B0sP7mafiQOPfhMZaKhgAal0TMQYnzqDpiutv5BIQbkRag5XipmVblqUPZZRinvccH9H9BF63TRY33HOJjx/u1lvM9Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "N4BTu7AA5yGH/mFlRg25McjPP3D5FQG6JwCawG8FnuI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m6yMeK9EoEnfDMXF/y6tK3HePF9seM/gmz7nLV4EuM8x/37CMv1MBX4Ks1zAQr3dd0dRUkCiwMLu6SAd5HglfRZ6/ocRMotxYuJoxfkhuYdLJR47qXgp48V1q/DxtWOvAddVnXugsPKrgSSMQ9Y0AcGDJEFyYMMNClGMWYzlkxDyT60Cbawf+qmQAnZomEUhaVoq2v9xIkxrVjMvv2xtsqMR2I4LutM/xVWk8pZM4Lj9/GxNGV1pyMs/sM+Z6Pqz2ceQYh1PMIDW1QuZSt6PxZsY2W3Lj7NEmuTl8LRlopfFMD2oOCst6iAl6fCtndL6ZduA3Lx0IOKY527Wdlp7sFstSnrRHke8delGCSjtJVgM70P/xc/MoNPDIV96rrTxQbRsV71wQPN1ovYW2FZSUsnUJKvkiTVb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "N5JLc7Hzhe/CqVOPSUZiXJMu3/k5m5Q3W3E+Sb8wvzs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KH2PzMCOcYBpha60zgVOG6I000SA5mxWmu2FjGOj8TAvyDetcSNNKuAxXE2op+f4OeAAjABmUpStCYVwnfrThn7aimm/8AocDi26Cndr8RcNG5jOMyPSuUoYtJUfkgvBFKtwBxKZAMfMuk4Xd1cWjlWC770rZk0L8NQ5sAhkV9S3gzCz3yKCtMl1WBfXOtnHtho8aVG5AjdNCO/Tbgpo4K6MzYs3dry3UT/Wk04P6P6EKL2SyQP2WF2HyZmgsLGY2KXQ6nwVOa0QQGtXhya8YYIz7B+HtNHlxjtslvpQO1LaXyfrENtz9F2BGVxZOjDBCV5Up9TSyr81Ym+3O/WXrpJhqtDOMV+Nw1sPWznsfoQTMHuI/YC/mQl+A+mtmXU0kGxGQ8QJ+A3GGYeInpmNGvKY/0tMHYIy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "N7mV9q6D7vVLF5esWJMxf7W+ZFCqHqm8BHGeEK5dcso", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HrXDMmThYj+qgtPs8kzyLZ9kBrhaKe7hYq+uxt5qneFFpWC5dkNJAd7jwvIMXQERBUNYl+G5N2xSFVFLUSYdKkjJ4NUUV36D1P9nTLHMks6xRW7X/VMG3ffrZnHkaLJoqGg3UOFVtl0s+9blgGfs4M/Rt/MHzYpVLygAJnxUhznyBu1jUi+eO21Yb9om+8J/EFMkvw9l9jwO8b7fe4biGVe08uEbAbDbnO3qGUS6k82oToIPBsC7/aX5+OTrNW60RU5Ms1YB0IP4UPeqh0fbo/nBYreRcHMVVF1NxnMmtP7pl1ZYqrg0o4mVAYvemruCcfYQ+LCPdA4eX8uTZYptNkHSnlls8DCrquBFa2b6xqzvi6AHgw7zXBBij89UJefYrRHpUCLin6ORdMItPNXLN/IdKkgthHRC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "N9sRTOxuYxUbFf2X+oJwGVgTVk9jz/ISsrCzwUGYE/I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Lv5o7OlPrpG+tH/8CW/LDmOCxzkV173d9B1Njs9gj5PmSZasDFiK/tJvXAimqN64BZpMBSXjEUla6uDE1WfO1B+yOj5Ak3Vjde9SQyRwi4ISIRAcg4w+l+1elkj8Bp452D9q7fehhZr7ha8JTnrrhazI+PlKeSpgHF3TbwnwR864XjiK14AQssSIT/n/rKcPnBEFqa8jt+bSemF4LeOF6KVFb2wPRnQIkU3g/84865bhtgGTUkVVnXLdbO+gItequYLfMqw2tOO7TIEu2PMY3SNHQhHY24f/f4RILT8E5HMDOrIJU2XPdmPeuRnWRqnpgFcFo5qeyv/nko77e0U7KXc+0KoHBjVElyj7h7/LVjZSZzyy6iAzao84LTiezLUxm2IhOasr36K6tQBjnLJljMtc05ZiS61t", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NA1ojmjEiq3TsIIA3wOuofytycz9QdC2rcrrIt7SUs8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mz/kAAI+7W3Hmwox/nHsoc3wSryORxuJtWUx5tQaRfSGpjy82zOPKPeEeDVPyx27pfVBzSEW04t5rnbV1UIyD0b2RnretPf60zO67ZovgxSBcghzKg4rJ0XxOgengl8dVDZckePVAHcC0MUIb1T7nYwiI+zOxlIfiQay5LyasUaw6R2dmgHmkBKwKoETbIuBiC0ogx03EP/I/oY7rR0UDoASpRigaLpfQQQ/48OHB1wWgJtJmoJSN/bBrhy+Kn5BrYE9IVIFc1p5JPLYoXYyEKEftLokR6uDTr/SpxSSjbv9+nCNR57EdWkhkuxf1TYnySPh2uDUJ1YTTCDEm6swi2XZnd9CUsxiU2tQxaeXUL0oFlDAUHqP9J3qoRQVxX2yv+tNHdfuf9d/1MEXQ0M6hc8KuOHd0HIY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NBTjk+u3YC37rcHIc4r4opKBqaO4KWP+kVE7/gutgO8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lISBu+ecShg71Dr0TiRs5JCnXI+3immof8Q5qdaqKQIp2NNA47QemLbdCpl5zD21gJF+Uf55fozsh9ZtZGSIu7PLQA8sjSCeV4fbuY6+//IfRbwH1xOzJiMALPE3IcFykWww87QnxI9r8DkmMEgFlQp5Gqh2Ip7PRlLhPx//2N4T2GXnQYElpZ6M/B4AEH3PiHbE3YPxs/0bYVTcNbJlBZw6momN5D2wXW8Hht3C31E3WRuvpPhuQ/4L0h3uTwtk9T/DGTbsABQ+BbKcWw/vdBIwR6TjRN7NezbrSaO+VJKDFWJqVDd6DFqL7PhX6JAtbzh4OyEYV53MD2A80Itt25nTTiT89vLn5j6+VWaOcjRdJC/hJMqLwok+d6PPFHC0KyZFouAyjpeXnUU4SYag93r1/uqOeTVb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NCkHe3ONBLj+QMs1hxg3xHlZ6GFjrFsLm7HnY+c+vg8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vXQxgWHSKoV9E2rHMngn7Jv8Nerg4XleXNfaf2RYZu4oqXMmuJRPmnfcZSBYPB3AbzukDf+1VPaqXnAc+bxu+Cie4LR51Vdmutfm7hoOq2We5dNp0Zm/DRntTESJPu2mM01py6aF3nYMpky8xyaJCrr/0pDeDjijT4oku1ORJZSI3uI15yolJ1eU9seoerHhYrGLTa0+OOD1dAR6PYll6Teim7wieEw21IqKvJIexDK53rslmbc75/QMN7PAHiGMJQKxt318bafGZqdFEc4/UZ9xZnIz+92ote25v3IiKGgZ6VeoSws/qeXMPImy9AcKpAjv5x4fIreLCaAgD7gVIfrBCJTN6DxZDFo5RDvkvFGyVEtJNojbpV2kwe/QrRqbVpAXdBFdVdbAmyCzSbjAYWPZfpEux7ZF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NDROV11QwqS7rpRtje/VPYVUbi4ToO8lCeXhK6f3zgw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TGPlI8hZALkEJGGc4lzveS1wycaRCfuypmNCZuFdNYFbv62oUGPsMFIWC9In6xnRw0I+aq1fTXmWqMgJEX4jBv1dwym3esPLMwd7NU05n39lGfeCIpa1XymbctPdEQQBZfteQQAldFe7Be13aM7LbMQj7w3mRUMC4x4hWJTdwgQTXzvZ1ZtbNGlhJ2zYCu09sAWiexCUPgCS6siBy5lG3q/TxQ4eJ3IRGyEv0+DWevYowmokcLoBDgeo2D0Q+xq6lLlKMaTzxP5b/f+W8M543DwWZHSaEQB6qyICflRnw+pQZHwaenDS56TUNWNqvAhbytVfPSawnpWHfefclzxSACMQyJeF3d2nWgRQOr2j1vZ2doQ0nfcGQcuf1xu827icQNp+8DDmzC0ybdHtC/bq90QKBVveuQ3y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NFqXmfE7E9LxbrPDvoel2RH66K7qgrHbOkjZ9tewb2k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qmh9L46cs622bxY+b6uWrtlhLtGY9sF9/2Vp0P9kuPrLa4WNoBY3bMCUcte2nCJzDQ8RDTmoKwFJRTweJN3eMPzQv7zCIeyUuMp40cS0RusYNBo8c/v1C4jEcATwRQkvOsnbulTj4UUfj3iEF7Eg4/V4ilmNirNCRRemK+wZMhsfbGgK767UDVjBvwS8iXgDEPGtyl7vFexy4icRIdPs+YUyoenQFWoTYUY//HpCYuLt2tI3FVEOGAi+f3qWHi+5Qto9k/48du4pCgt66Lw6R+jkFaKamp39g/mAZIzaIBJjA92imO/D7P3959n+tW1McNEQQOTgBId6wHdlFc6GXejXn87fuobLesYT+DkBTRWmtGEcRHlmHNxjVRoyGrFC7/SthHTNDtgql+JiVB0Et4Jojq6/6Zef", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NIH1KTdT/y4oAr43r2SciltSHslYUQuKNvRzxHFUHJU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d4QoE6O7PNxhV9HwOQMT7hr8AyV8cDciIzzrSVh+q+ZDwiPG5YIVKNONm+H21qFHhe54+IwSt40UwFeltX+K/NnDZQssHMk0cDzhP+cexneTFfxr744Tkvcu73J80M5iISfhGRQQp3F4Y10la4oW4U6aLgDyLK7/YMrISWeMwPmr4jv1IaaGObBYR4hVK1AcDzdVsQV1iMCooWoOYSHmO21nVZvay02TdLBPhCNrPC4aV6Ar2vHGTmO9JvGK0iv2MTdL5Q85dUgt8EWCqgzDUsKWNESu6t2fDGIxec5Uew6vG4EU8ANUXHzHV8hmA20AQqTUciBwnCsgjmurtHE3GEag/csqA20d0m8tm/wSqHFD8tudp0FE37KsAOtreK9rj76V84lCq4jA79Aq8YXWG5VlqrRjTiws", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NJeei6T65nz5sLfNF/WkpK0u93pKX0X7A5TgVZ8wvow", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yVT8aR6Ko0gyrwPYuxWCBBW81acTUbWGFpDW1YEREnRri1Z5Xr5Fi36O30V6BzXgBjoOMV652dWhgnSKp//cyOiOdciGyKlfZLcppOQt8AT4OjTHwEmuRi4fVWgZdPooL9NAVftgHKBvSCZzZEsUhIPX5awuOLuS9BiH5lrhVMm0bx7LEDV1VRz/gW8+EevVtzVGC+gbA/qWF1T5T0BwMrFrFr7djvvaRgsk3Z1GsXcgeeR+LyvTGM2txDK9vObioTJDXXv2aKxI8qUn44d31jRA33/aPKfTRi0mQRLeURVxorkFEIbYGbfC9JvWU7sjumLep2vjtpffmeSJ0s/Dx2dlHdlpSRkbrZCcTMbLfXmAV10Xg2N55aI8JBLkQ0Qe/jR7GAzvSTUYEX3oRb2zg2m921yEJXlS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NKC1idoyC4kIRq48yJnVD/DC0CO2BOzjX5BSMiCohCM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q6sWXNWLT4Et1+AZaaIi0sz3cl8ORMxyFljNG0JFT6dTidh0meONB4IZaQNAFu4M9/dAEH8XmUkUp2VygvmenTDudi5uClI3rmlqcSFbOlVo99newRc/d5/smlFnnoMzR21IMo7AVW8tuV2k/DghdzSjy1zQj6D8wiDZDlnAdT6hym77GdfK2DZZ9xbyqTxAL5pJ8pzC8cCMmXp2MCbKohS2X+RziaRdVOaFA+u+0MlteJn8nFZQBkgbj1o4aATM/aFkCBhkJTSea700Le6zIUPzhb3YaTNTS6sYA2RNqDOoV9oWGLrlLdAmOQm7ScFGcQ77ZbdOAyOXdPBxdBhK4RTI4vHDJJBI0BTnwOGmZRWq5cDjMKRpaPbQIcVweyrGFCSV3qpMbOBojE6YmPrVutkOAz/gWdBt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NL3lm9Fucm/J4iPayHDJIPA5OwuixSAXJf1GjpsYyeg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cgrJj12AsW1LYmiCcD1rmF75JFp3Cg1ZqdMehdKKC15MFOsKfmPc09vEQlOybA+kZgG16A45Pyx6b101b123gSSxYLlewxOrulxR4psSoo6Mxg8OtcJ7Pv3zZmQXbcbLog1cwEFlj6ysmLWqPOM7qBISECsV23p0ju7TLXn2BD77rlAT/1fHDKOrZPw3LtZOL7y0j2qTDAtRHFu7MSr+K5gBJcyrFaWD1uc6BnNn/ju/cHRvDbU2Bkpobk+K8KpBzC/uPr1dGRIBWhGtx7QVL6cjM8Hod2Gd3+HqHZ5W6nFdyGIejj5tVT+ujdBdCnldln0eGHprVwpRoAwlCDmxGtOkUGkJB/Jq7yN1deQocV0QfgJzywq7DIXEEWK1Cy5IFAwW7wro+eepfSm72iQ0t1tRostFbmDg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NL9p362U1fL5Xg4FftLFPG8oQgA3Nq2eCWijeyODBR4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ScxEfMdIu8sUbV3FA+kNEnB5kgco6Hs+9IkwAE4hHLEukhOtHXzd6k6yaB7TNe6k7SG4EjZSEDJIJDQR/ZRF2K+bG4YY4ebn2uj+vXFgQuLWH5GXvq5JFTuyiVO0G5XluZeamLK3sT3oi91mjbAeTxkxKix7UzBsEswsU9vkC8bLcUXzNd5P4Jyb55oehKeGCHBROZp4uVlBYIdihe3HRNvGFiiE021zDifjC6DSCGFUTjPCVL3HUHgQrYpMNTO1oXgZdhQnaLnB/NnL1Ka+GaWZpKDP5+aWrB+jh+fVdjyHYqtJUyXd3PXlSVunaVEcjnDtTPmsbOhnpBw+Ip6nZ/j6KKDaJU0qzGDpgRSONepW17WjwuI8ipQSgplWVLOBmvcAm8G+i/KZkG4P1ado4a6IElzc5K+y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NLl7skV7bej9QwAn1Eo3RyuygupKrezBskviIdmgRLU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iQB/qiNg2P2qaefiepqfMB1eNtegUBYTeihBhcqajyfUi0dbZUcSC1bHsDN77mAs74ByTFe9J8ML2lNRfE3+6Yd+CYoALkaWV1jyJQIdoYUZw072lRjnTf6d9yRUwrooZucfjvR6Hh5v0rqqifwrr4HTcJOUPWNTyGkd2YI4pivS+oGzS91XJPB2Bn2rHQlPWIz26y4+0elyXjTPMxjmigtKQTZ/pzX9FLlYWBIhVSYXgeBE3FofGHZ8Nxs91TW55j/Bdaxoc+OBOfrGeihNp5kRzsSV7KgyrzSgaVtoib7T7tR7qBKSuiQoDXgs8vuSwEjedM91ZmNKG15PiW0MwgRymsTZqpXpF2PQXxOuHTDvllY7OQMe2ZQtCpp2E/gK1z3fP6YYdCmg5Es8hLKpE9aBTizt/kie", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NMfsAA+/cnb1MtuAi98xghGN+Miv1MZfkJrKpfXa5oY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+EebG3AuCTzXXjqx6gGdspY6sX6rbaHHmjvvJhtxEBwCIqguv25sI1/87pV/jbqgpaQWN7UsTpL+0p/EVPoQFkkjVRIj5yGPxylt1byG9JIlmIFTO4bA+r4B2/LjW8HfVpvvuZ6g0t/L481EMNx6ORxZa7MLGdxsDBB8bHqlZW0eQ9wkZY6NHaYnGQXeC+ob/v4js9UGr2wjMJX7JGOvjO1zj9yJBGfeuYk1HSNOyY2t9llKc9zGBgDXXJKTFRYWhc2Lh1mPg3uNSRneiAPuPpu8r8UH54mGSEuh/1PYOfvN+m/SuyCMXXztwj+9Fepx1Gv9ZRT8/7FjR+azhVio5ChbaEcMyZVPt/tnCuWGmuNWicq3NVgzPlTIO8tk1vFVH8bkBV7ftzmZFII9K3f77/VnxYMQhZOM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NMpW7lBIPz67zl6NFmHzdnqdE2/WGNQsdnDQxsMtBjY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t/zi4NHYOiXvdoQ3TzsbByVXELSsfuWeCIuWO4KjRS652rMjkb6TDnLiyvAxwrMjllIZhnVgxnrigvShMWqci/Nb6k2mQXQNmfvQ4F8KDjkQfBbpavLIbQ1gOgaLr58b0ujOYqMiZd5VeIgzADoXw4J6T3JaeJAkqhvzGn1b8/cAKdIk8qJpsr/t9xIWDFcwdlcITntO4o+9TV1DXxVV8O4ZpYNEhZE97Cm66C/zLYNFYOrhf1rCTJoQdPCu/Ze2xz+xwKG0t+/13YkEKAyJL84gjITe63xJbuhyPh4d5Ohju4T5GLNwTKnh+ziQF+kA9/1jd5LgPg9+py2fF4qNwkBcDQffoMm2esYnptgeUhNqEhcb2P7hcf2ho5kqn8haIK6Z9jH0laTDd3FzcOX4zGQ4WU3mbUNo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NNyZhBiATcOJuZFR9/q4RGzI5IUz72SJ981sz721ThY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sln1zC/KpDSD2P90dHzD9oCWnYn4q6mN4jLOH4RjBqDyd/CDTBr6K8rKPytOGh/E/E+OqG2ZhvwEB5HCq0DudM8NtDRUDhDyWfVW08muV9m95w4T/g+mkTaA0r3L25xbNTPZrDXd8GSGMINb6mEjO7iPJ89KMTzjZUMOdqBfyffjopXXV0CqhR78zrPJ+9EvWgUSJn8+F73R7MUK3/o7Smypda/vu+TRQEo68BhWVyjYfkfrXNApo3v0mU2Xr5NC6yRbWBpxZbsfM5M8mOJ8pu7C1Wn5dV7HeovrGDCZrEe8FPvZY72um2DTRllJjbYpbRfLOR0wmmXM3Tj84nXgtlD2sueiQyvFycaoYaV1IqJm2GVxxRYozAUIWRuYa2kDg+QnETpJQPrQVpqxC7EQblMlgsEx6TdT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NOumQYYkGn7ds2Qh/9VDvGRf9P1K185DIuB/Q1HNq0I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bPGOw+n4IIM3HvOoC+AJF6zJ6haucOUCWjrOz/RvPsB5jMgS7zk9wnDuBA8N0pwdc/NchcZ4sgSAvbHjCcLLRtvfT/omkZXgfPvNBFY5Ucd/sqcT+v0UWKhW6hin9d2FlzCqbSwfD8BTYab3bsw4vmHLFSronKtdUa97LhJSmhhctzJXfN6/NfdX1Foulc1v9DYNL8obnHkGAG2BjUqOyx6/NlOSKyHmHe6ljaDNejggo9dmGSKa0xIup+p2qMEr1R2r862rN3cGOWnv/vCWBks5ilLK08MXOMFUDUvyUAoM7oCucp1T41qbUZM+VzK988fPQP54I+o7B7Qrho/uThJcOEuYrmF5SiASFyv0HgbvYOfc5UqHAgY2ehUQiMGjTRFi5NBSR18q2zRXWYcdWvQlCiiDfxQu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NQdlHp5HaiuAwbjRyAyp/ax/me85PB0wNvzSLUO22xs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9vUzOfJSlDWkxIYu116OHASSoruqDZGTleKIbYA+K0CHe6AP+a1qe5/UqVpAQmolnBkMNlRuAw994AjZwcw8Xmn137MrKGrAuR/YikmntCj8n/a0oXG/u8txPR5+WBNOjbb7HicRVpr/fKGTNVqA/VIcDqHeN8MWU2lNozz8UOod6M6ndgGzG2FwGk6N07/38plPEFzcZ6j6Mcr0haUZS9lXeZZfU0ltPe3H9hNtU9VMDnJYMrZCz2RGsoNIwE+7Eo8PvhjU/nR6s5g8d0tjkKT8sV1gHPCDLxn7ODkINDBjCQ02vbHjSiz7Uh7cBkpx5O9Iwuli00qDB+bqfVdUA5wJkMmDbuQZPOzHy+vgmeQoMGWuzipRHq7JmsB4DQ3DvJt2zaPyS5rQ4bpDBwoT0xaucl8nx8V+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NSdSBHx1Dyf+S4DLqBI1IRdohuHpZH8RRsHNdMWkqLI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "okEbZObqRNpNzpTiqYMfWQWc/loSEgqnOeHvUSKBpPN1lVnbkmSHjkhWHu6SFX/qjcO4knVCs4oLyBatndDUEo6eRst+gtx92xyyaseIJY7g8/0PyioiP70VcZo7AxaVikqAw4yeGQgwNr05hxVuy5su7Y0ehrMqGPJUNV8FivXJArlHB2RY8Z4b0l2mdDbEYNmMcmiJKYrdwv0kQUCrhDFoq/SqNX3qQmffM+rravepMnNoV3fQw1iJ07t/OiNlnR/uzQlsgOwDVxreknl7QU3ah9tZkVcP4hBjnAI7cfAFboctTq//3FxeFyUCxkiV09b5Gg6r/A0I4PMb1OaLRFLBANd8JQsvLEiBzW8PfCp4KS4++xJFB0k87zl5UWdgXzBP8kVEd4PhKUj9a8qhZ0kU+M575rsc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NT7qXiJlNxLFmGtfdaxG6ulQVfjf+p65ZLoFIaimMhc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F6h4LHOOIanzlLSbgtS9O65xvZB4PrD5VFKsdZExs1e8qSEQbnMxXhQwYrnYbbyaOH1R+LZceHVXAAsavQJeA9wgUZHzvN1xElJT2h54bmo+33HICEOW9dZPeMEZAWiJSu2Glxdp3GuYRI1TYoXDMIQb/os+pu/ZrFKa4/cTq76d9uN5mByFCwLhyKvN3jRKl1CxjjOQH9j9BVKx6a+bGQUNnUjSEBN+wf5NAWvrKjtNYxI6NoVKo2DtW8VRfJraemxX1fOqtFsdJaFhZ1AqWG1DatRgA5xUxz1DQ6Mtd4BOdyaBMP/YtmcKPw+rhQML2Ns6jy6oX48xBqWucF2FW9Owee2JMUtvlGnbbZuGlefO/YzFn+gStMmrZ2vtShczmIm5y2m3eAT84uBO7UTFRwZplh46uqCK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NUc0VjByjheWGxqmoNdSpoaUSWnULusKEq/me7KqI24", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3evq0+Jun8VkbVzR7gNiQ2QSOiCinwobnLJWifQeFGs89pyBAWlQ5J7gjvr5U3e3uyHNvUMmRDYY1zJKUUFQtD0Q+YEP5toyYdxT+tI9XtOf1KUmxc4aJLSv5OXEwEOenRQtr9MlxUr1LKElr9C5mHoLn8fzPFae5JqreOaHJ2A0hmSYPLmCD9ZEMTUAkZb6up3FnaUV/LJNKnCAj/mlDDNP0OY47/gvmyu4pzHdClOvZiQnRrZqQUt282ykJVZbUhK0HVawKpbXewmXgDhHaSjDyqGRc2bDuy6bU5191sfHYyzr6/buGRUNZ2Q5un/zfAHXMDv7b5G65ieNqjhWc7uF84/A+0Vhk4UUb8Jqfz5NCBZbJBLh6jPTM6vjV7R8Oc3pOJbUWwq6ZHM3H8DLMs/6rXD23Z5e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NV99dlGikMIlRTTmwxY4LUe19k2gc8vx6zu3kkVmuvc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gwQhCyKIxIWiAkN3i3zNlilxx9IGIjqcwhpz7gEom90QIbU4gVH/ZTO/fxd5Ku62wpONOBMSlNYSGCpEXUpcVDaUmLGO/zWzZKjD1T0UAJhT+n5psbPwGr10WPaBLMa4QmXJWWEj5lCOEGMOHPA7oGC3KMsfSWHllTQzv1P4otcmC75EeVCpZMW67k+02yWK/+nYb85PiDFwmRVd9HYCPRkKChh3AuOGfqOaipZK/SJjmkTYLRMu7dOVdjJkl0dv0sM+kiIAw5mJ6aFP+mjSZXkPrZpMwoZVT3o9O1M6vsefCeFjPIZFkhtzZUSqKkSW82t3jfFQvBHxFDOgRjvL7kqMCI0EV6nLhC4TCiV/AM0uSpBbBVZAEDiRdY5Z+P2wN2u7egXKHcmCWak/MMqVfda7tObnct7U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NVMnWMxv0zN0iD/bJiPnpPoaI2P5BOMsCSGPVwHlMj0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dbE/dJaaRxSzFBnjB2FsqOImTRXOmUzIk6eJs9Xrddd7s9nZuQURtVN8ubv25wW5fx8VTCuZvAmhGiB9RwlbljE0g2jTnDeicXo8MfYBsuZu5foxzIhh56RVCuMrsoxk1bRlPsqBOsP+BWBSBhug/2bpdgO+Ihg8ZEPPIdneX42v2CRjtR1F/2GeHU8FoYcgCYkl3RkAejV692R8SMb23J8h87fisIwciXoDqHZCyUUWxLzxAckeFFzDASau3LBQ4mEioQ/0jnCMhb+/mSq4sCo8xygo0QHLXWpEiiEbkURJCCTK/WXAPsCpNN/xcb76OMIE9K2mcE8fUpLAbwr2Rnt39KG15n3LgG5WqQs+YOE5uvWU1qJjxzUxruXo5MsmCr7xEKBL4KeM1mLfyL8ApIVSbTpkJy6j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NWIFDjkzRs58hAdW9bgk+bl2ILqTIngzS8SbWXuZ8YY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OP9wIe2Cw/sDvghroCLIuSPChdtsodwHuPCmFTQeHxxw3PirSNub1Jig+twaiK42LmJR00eL0D+sgCE2Sv35+rUpZyu8htXU3AIz6sR0W3vAtVVTW7KxyNM6m5ySMsvtJ39isyn8Z9YqbtZi3N6uImWZ//oIWyotO9NpI2XxmEZVQbnRtlpcW313CNeAwTPPrR9PTTgX846YSIUqh5VLYRt/1GUIeFJ4l7oJtEMjfeQPyclqYH8Y9HNT83zbBLvAGX02+ERcC38C469E+WZ4UfElqiJMdyDJfyybTdd7dZF73Depuj0UlEULGYX9AhWMGIvbtf8tqzkeezeLnATvhlzuLpXilGaBl9JUQbKSljx3SuhfTlfwezRf22bRf92/OzUY8rEhCbi3h/qNFtq9kC2tRRKhaRbO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NYkcCeeQE4TOyrh/OQn8Yo3Smy37mkkXZu7/TlrPyLY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GVcEvF3EMoeTITaDVCf19mTBzTxFQuJOc6nYGucC7+lMPfx0a4DnMccnTX09upCM6p7KjYFwHq4NG53RhtN9OJQqBhVAC1xnLbCkwnsWSS5Rz/bsJ/TnSfyzMRhR8NcU8OtgCggF/pPn0Pr5OSIX/JI5IgWmOfw8PtBkVf381tRFOiXR4wMZwZF9T78UZOQSJRNhtQzEVOIY7DOZR/11qtgGTilazGbCsvmyT8nhkS/VBDD5aqBPPZiuMgNMNISQANUWoPVgDRoNkE+08oyC9Lz2+NYWhjAtvXGKCf+u86HEbckOeL7U63wKCqVma0rKa3vgxvPFF9Ta2GroqGDQxogszY08fsUcSUIE2IwfkJfv4Nv3BqI0ZNnjkOAaSx2szSMkJdUOgB3BkZeVTAITnmoweFEkMlyI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Nbz0z6NN++4HtxIoMfsRkoGwHf++qo5DpIMAxC760kg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XY4uZi78E/rT6Yj8YXfOvJo5tN0ZAB1AmtAHz+LnqrOJPXoT7nAi4pE0Fj8bFEpRLZEjDJu67xrjW+ElzTEbhLjs33ft0tn8tZiEzYQBOCs+7kG41McrmjybUfgBDu7siNrIP+wPMmZ1oaXi9N65+hCTftxQ2tGs+gnLaS9uwNFXLqRVjd3AnDIEo5+uIIOX/lS3qzJwDhsyhk8pBv7EDyLraNln09O64yv9pAppJc4vUEfWdbBe4Pp+LsSNW0M72e0mqFj+xNOcDZGbbUHR2C7X++8btjxTaYnf1uzYcC9ptsXaMhtJgWbu4nxYpukmDoBMk3p/WLqdwknFJ51qItAZThWhqygf0q2QQdqnxX6KNS9KIY/aeGwxo70HrHbGwPkUnTE7hkxxqF+qw6EcIJE2PXdkVpMs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Nc0WqPWBiOSOw/tz34U3YAjq+5r3c3qU7BF3t1B6++U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JBapvDfuKYSzf++Wh7aH5Yfd0f4ThMegtmUT75Sx+HeKu4/yzY32DfLfDl/UtmEGAC6Aa+X76fx7BxXxODWFMo5HrptWiodAnus4usXEq3iZGm0LD0McmdzzxJ+ojZliCui8WsUdTKmXOzBtgK0+mysq7FzuaFHVTM5CFl3R0if7W82sehau9a8KlJffqA/y+h4L+BSxq2V4/YPw0IZJ4tyZ/lY+qu8L1zVwkEJ7o/KJ0yBLH28YHsOPOV5g+AUC/HtvnpY+N7XaOajjR2c0LpDq9TA06OpFYHRarNqGKJJUARTLuO1qjZimeM8HqJDZ6yAh3mCw2c70VTMLmGpM6Op42PmH+6D9ZPuq1lUyx3RcFtLxkYKcLWr9V7/H4hEMYV9Zh0vAuPlFKilC0ufkR0dATxi1Uq75", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Nc17GaRwM1y2FQM5osIFyB/pAV6E0OjtdK1F5gdwtdI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AR/qALR3c6lrORv/pdlA49IpdKLxY4zEfJfaFdhBf6EeZy0B7W2ppEIQzmLPCTwtIt9mzhJrFkvXArmszL/xuJQVPpbLgStjvOWksIfvdjDw6GT+jRBJi7WAbnJs72VygxkX3ToIa9nhiRF4+geRh0qd0/oYwuPv1I95Znzuz4nu98GUUxrIhS+M77q8Fu7aSsBKGD1KTNw1ZIgOyVOAU4AqnHbgJptY8mLmHeWOk7lBcEMLGY8XLwdRY4LRqJVDOBaG+V887bVlUZSjtl3G/sWR8mM+upUKTyp3r5NZ9lpH3R85Fo4Hlk0rOkJRUWUmNTQPBH5w09PusDj0EQKlct+PgkNYN8KuCVxJ69VMsNgHhZAmP0Unmo0h8561AkmqI93ppJWpuGvUN3ZLhyBSNTphim98kdwD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NcdozI532lWoUYR0UQUzPfM3EXs87glFG3k1lbHzLqk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aiF2RBuoHRVptyXYd/QpFkHpZ4Pu2N4KmLiy7sQLIT5Mn0RdgBNjT+ZE/9QGXv4LOfruXRF3bq9hCqCSmvqrnWdn0FhWQjz4wU32+QSHLxazRlVS4OHtXRPgeo6iuWmxQmxrPpqpY63vrWtmhF6S+5L4Knj4pT+Dc10atPubhvpmVPDQ9KFr2XW2zEnps4eACPFdopbEuhaXRdgQcNxdvwzjm8NwM8XoK+MosXLfZ0W+aza1DLlEauGW/cZXfil4+FDwKLtooJwe8B2uPgDmjrqSl7wgF7yf3R7vU/UA7LPnnNltIWl1XGLRlurIQ69jnptUvxHDQXyF4olHjGHtLuoEpIvsHXgGllgQ6dtYMZNwbH3rGY8GBAUA0Q/JozFqtn1tbdWEb7BLqjV+wsniffKfR5/lLnu7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NcyywBMsOJk9XAAdmvYAsQM48qFg+ZfydjTcgq9AlY0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OJmQ2DZDgsJddM5NhMgWzMqfLW9+5e4g/KLFT7/jicyIsR1RtxJ/bwKoT3Nj2+ev4i1vFF/gbbM6XjPIfK0XeKFplLezhhY3rGKKoCqk0M0tuYMaGwxR13B8NKFNh2ymQ/jl6gWLvCqJ2WH7MridUBZs9MU1Y9JUWzv4BYoGPf++6ReUcrNMHaQlJTrj/0D5uClE7BLKt2u2xTgoDhvI46+k4VeTCqUiQtMSBVXnbbVfySRGU4Y+qYjXTmIufBET2QA71Bpf59GZaFdzkNSHOi3rgJ8FWeTLPa7rom6wgX8CQuh0EuiCFcL+cqO9cJNUENWcda+jrtaw4T3NsTn1CJUGP/sDUf2di7pw3jGV31lBK8Yb0E2NDaErpvk0DoLMMdP9BNY+Q7t5SX7driGXjMWBvz6XF+gq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NdH9nStBOZAXP8UiZh/4fEQnZaBppN06x7PGGnM1ExY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "437OfioN0NucrAM/DSBYGQK73bSW+k/gr+A5ylYYKwarFoazfyBZXOc7tzXWgTbGxD+Q1h4boZ9AXw1y6dG0+qlM1oyLUqM5bIAr0/4ZDLtdTdQstEICYnQYnzPu1knty9xi1U/1aXAGK7Kzjh1LN+IbUbsodzQmh8VIFb3t3x527nN0/FzrhsEs0BATI44W+OJHnV3zV8EFMGOVP1uS/8sFrmK/vOp6bFT1IdHZbMENr6QKrcVcvoA6jkxDy3kPTyENfGv1XjgRRb2cY2FIxgktoCl7s4kmIDdXqCmJ5lCsRtP/2k0cuUD0eBolxTpvNXI1D2HgnEmIZ4+KH+nvR3zeLxAw+UuW+c8vQY6CSs+Jjua7c10ewczI7TMIl2S27atFwtXI7cCIVxnp4K9cEl5U3fepV5yp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ne9TDszYyhx0ItpWZIg5XFfDPxYLIvJ6Ouw+bAGzovs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N9ep6TNW7/+TcTH7h/MjJpVE9RDo3Jvqb2XciFa1Eis+RR2RnVhNj2SE72sb9UFidNheR51omBpuyV2VJBfaSjwXRzKVmPnZAH72MOTEZfuZe+uI68ji9SJv1Wc56fVbQq0j2RwCE39YZldKaFfZMS8n7SUe3wDWNPvXF2HVU1mUj/NyQDzO/2tOSxP6JTHSNvErMtSt3TvklCASPqvg7qzRRujLeTrdCn+yEQ/DJmCVbSdOoNoB/9bHuSDRBb0+fU2yP2fg9JCHa6hetSXfPxXuh2f1dYzqMPcBtNwA2Q8i0diNpztN8tjgAjMLs5F1FPHGiKwqhbQXObya39VO5JJRDj8hthDwOwr3sfSvg08CHqb77b3j0On9H4Vxjyqq/awkD9FR/6BGegTttnrgsIjIOwz0GQzv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NeIqstM7yn9IwQVpfPJnanjtuHcxH1gy2R6kGXXuABM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ttn52MsdLf+llu0m62NWzI4+Tnx3j1FbuCcyqvWLyRCZiKk+tcWIcToY8/BtdOy121uGkFADsu5mCS3hEE8xM3yQnqwID7RBMOtYr6RJLzWwSETXrwlM3AG5aCqokbttxlp4skGHdqxonWH5mM26RvLNrPKvFn2cNcrF39n0tfMWYOdFBf1QhFrKaA8kbskzdcSLS6ReAyQMHTXeUQmvgQ2+24zZeopfdacqz+bXeW4aIpMgl1aP7vYC/zkQ9hgUyU7piRQFEns7pDaAX4tY5XEg1tfqEGHr5RjCgI1mQNjfBrp4pWZOmZi+RzG86Q6JPPefeH4H1KMpF9ca0VE+3bQMNpkinMfAwe3pNJbBbeh4EvX5SG2zKqt3utaU4fO83MwMhAE8tJReZcD93BYZFDLYo3VoVnxd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ng6uwbaKeWyWC4vr7/3+4s+1RIpm2xiWOibOrLv6RFU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YZGYmSvmjkHevj3fciCUMmExlHyU9oba73U4GOtPcx4rLuAY0Klo6AEiTurPI7vSpWZhKBeRXpLJ34uJGEdf0HMdz/LVl6OpDRhkUs4FckbkzuzFmOcaLzDlXyD9oGnz3A/JM5oE1MG/8BxvYDJlGp2ugko4X+Vv+QtxS5xqnIDJZKa3PNCkgOjTAzCLN19mODxlr755RVs7n2ARqFMxuwVbmeBGS7dIVoYVp6V1Pz3+3MuxFzy59xJKDIQtBTPRxC6Iw5wMfx8uTdiFCsveBSojFVN1KsHgw2eZhJS/pLOXNgs62elpIol/r8AvYJBq4lrqMSoRMtCWmeX2Hx+z9/XHfP2+lLAfLOYSxMIaCGStrnUiU0QjMXOmXhYwkZxf2qqvr3sna+B74zCEt2MaerBQfvCavceE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NhEG3O+s/ezZxdr2wwEdsThmvyB04DkN9eDRVy0htJw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x43441w4oXOY1QFVxGO7inrfSlkbHCde4LhevegwgfXwvi8tMRaswl+9L+IZvipk6AOgMRCHEuavCjIo40BK5KuKC5FSUo47kTjFzoLwKp4h+1LTXFjOJw1gildHIZ4e8Tb9KNfZawqVxyt2fHoCCC2zc9vBspN3IkXp7Esa7GWZRXdnEsgAbxittsBcJJtjyuI0Ba3EqRCPefnDLq2gXFiW8cAC4UEeAFIdOqyi4Kol+v4JsgeLe4pNd6FtYymdKgUON4GsiYnnwjpatti5Soyap5J8e+qja6W+9lRXgjM1ImfM93S01C/nKRiyKW806zK3pF2CoI6mPLgeDr5/vq+eqLfAHZbfI7mVk2QLTy2/m71DokiF0QXrh/7FmgSBeLr2+cxdvqAsbt1WPzV1gwfBoTTDVVDa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NizvZ6B25Eyq8jpw7d8tayoxeATiObHCPMQiVCA2YAU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QDIA26qXoR+FTh0/GruX/DqEYA3zxna/byds7YGEhThx9N6TalxnMthR6b4d6KxecAS+lTT6ZcVJGZBP9kaEbqQzUjea68XG/RQTfo6qPEcyGbJSMNYJURU15b+MpWa1gqzlBFMY2dOVfgFVOWKIWaJsKVu0A0xyAhX8x+7n9RXYcwKtu+Gku054b+6KlhQQM3744NcSSNr8qQqntnhkuTUfOyqd5/ZyBOho0SxnY3KBw+bnmP2YdmH1k6sUf+4L1ofraaz2lfxk4aGOHpyoK2bk4DlV0wltnWnGMrZMaCurC6sVWuGWo+jV0mdYkP/Bo3YRGG3+m2/xgSnkeJ7oKFBfIyYCXKJoHV9tR371qFe1vE6KNefMJ1q0gaSakkEbHmbjMYZBCiZSiWmP1fgLLXn0rD2sk2ur", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Nj9vrbyMvhXVhqjFWjegnY/AKxfZHzecCk+OsGcBeoU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Yzdjd468ICnllrkR16ij85RqXKsbHHw9LdnoWtcGyYvZUxm7pSd/NIqCZCq3n3gO+7P04X4F2nv7aSe7K3FOFUNKsCPGMV8nUgumuvPc1WCOjV/AfERuAyb3vbKLjyEkghaMD9ro6fJW6ckimEA0ZU/D2IZREWSm6H6cRdK7QCcKMpcKaRumBKXNi1QGjWyefykZaqvBaER+7EJfG/v4HIuxnJEW/04Qiq+hw3v6Hv/9w8ojrUw+vEQqT8FYVtMxcHYGvu01oEKVxHxa9mHNJUuQuN94/dHDpUNBzgMGyOu6ExU+mGZknjJi/wA5j4iYkFVPd2tO32mPS7fqy63JKTmOkN089E0m2akIj/BpOC+DzltAFTBPuxf/iB0frzWqoWusqyZ4A+8HIUZbTVgNA45OCifIQ0Dd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NjYOSqUlYT/52oYANbq8GKcKcfiiWkVMcedf0aO0Zb8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VB59BbpRpoJH+BrgCqUPkl8HxE/1EzRf2fpeMdVYf0RlO90L8msvpxFZNua+n4l6I2SNuvE3ZAs+P1t0q2KopKf6zGCmPk+/i/RHjZGMNURIDE6rzQxmFjcdGxyrk8aFOAsd6L/VL5/GDDTX1BtqvLesyzK4JHjhlgcKzLPpsV6pglUljUyJaAiyJTjXJTC9B90jF32rDF783DCCphe4McjloNGOvvXlkaCpkAC008Mu0mCf7fxPprc7Z0wYzUDATaVI/63/uBKGU+TzAM5ucMCiA49gTppMbJjA5pHMy+3vVjJbJhm8jXpggnbSYFUP8AyrpjT4outY2WXBUVQyIAi2FhrUl6URxbxC2ETuJCu8jFxyapei4cTMrbeUeqfXadiMhvrroghXzIlO800sv6gTqEEJWqg4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NkPZZ551NI6GKqW6vxlYkkjcMcAWg2YHTGtWDXBjgxM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m+lzKqZ0G/4eqIZ+R6v9Ye/9+cAnr8Z8oKmrtdMRGEznO2KeucJ9BeGJ2jkpnEJlx4nGBvkW+e95OfmYKxy7DEKvPJ6pPutnlV2CI9WVdJ6O8cXmszO22DdvB/MBRkCdA41xtH+b+D4mbaTofbNxQIelp+4MM89WmByeidZIAZiwt9jlj2sygJzY+83va47/nPlO3JWzeRYLVzgWpLv0PO2S5RAQVsR6srpazT/vEPg344wzWlA9fgUsiYLXCxCIt+vQIDatFbvYCleQuKNoGWs+3w3SJp5lVxmEHiZgwCcbFOgfN57nTeHa6tseWIZ+ZjiXygEqbIuC9ae8GruJHps15WLrmCSRXRT/1Z0X7ifvvDvAf3DuAOvPBtQQ1X9tvq9AmlJw24VbtPp+PGcUPq0OAVcQHYc2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NkkMRf/0p13xrkdZfvo8mZ2+q2xo/RXLvByIbYKHyQo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QxHvLG/nygecHxYXMnq8n9GpjuxYyPOsJ3RaT4n5aPVqTDZ279dOTgCY9+4JxJb3RVMcx66n5WEGDQ0HGpAf7lfo6xiJPoQj9QhMbhrCWdvTrkNRHbeSasHNvcuHRQYkzFXdJELClsW9WkmHNzLttgkcMmSDASogVAuzQrg2bjrYr532v7jOwVXJ2P9ctPH1BWgvhXyclrZiXsdjcYPDOYd0GQ75tr0uX5pcvUcBntF1Mhm7rhmhvopfftxZByt4GxmgLoms4jKFUcF0juy5q4BTv8dQfTyoC2IOH1M95wwp+UAhaIhIgHvwKQuNRlj09WyPZjgewNV7Wyi8p+6C56gI54FZaoF5dDMgrLjJ7zn5F7ZJo7gfynLRX0VxoIIDUEs3MIl6ApDpdWUA0SW9zt2fMw/Dy7lk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NlqcCz/xJtTKKyAQdCCzPCHyJr5djzJlLYbdex2ixhY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ay0NVzn5MOhRHRhJpBxVim+sMz6aXpIeY1Kp62RT2W1Otvm1T8WBP+Nl10ywbHLyLjfIbHzSr6vcE3I1Oethfcl5WKf4Dpfs5r2Y6Qx9pdmC0tO9tVXBzfRMPowOoXHbKuup4YnN6CU+JUlZRzUXvceO3sy/+R30+eNAEQxc1vgz+g4MKSqpKQOaLH6CBdfa2Csy/fCniN/9uSxnskg5jHtaCTxJS9s311uuqykDsdsLehPHz81YqzZYRemAATiOduXaMl9u0a0qFIKSx332jMD2xCGbdJsbR3z5wRtl+7PXxrH+xv25qBpTFHL6uillM5O+BNkbNuN3hZy+gSqjGIy3HokJ4HaLZhVUjj657JLBQdc5a/fOg3/aKZgjQrWGmAyPhXdhdpoTirEGRnrc8wLnhfVBCuDN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Nn3MKwhniv1QAVTFTfQvylHnldu0r3bqLZMMYsv8J8k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4v/S8LAwfRME8T6VK3ocF2Ud/4kE9wSLf0A/uuYbQ5JBtgthyZI2ViBJSZBkyHqQqScxMcxwtrBl46qKONkcGJLsAtT1sKJ7cKjG305zQJErhL5bMf/gVypfwey3ulpA0xPvN96QLgFR62/yNWC/lqGw26/V3gTW6kiNJhFqfLkbrd4oDEA/6XNZviRgiRaL3G0ZhUPVSjBlx78mfq6iQ2VzZkV4XdrdhAl4V47LbkvbOWgBzlnob1d9HK7YAVactH5fJui0D2qvdnfeMYUrGPg6OtJsecSFfS9UOdtzzIA8XMjNMgxDTCV9iWA1DtmFssXK+x4+hnA6f7jIWca6Z/Kbas3SMu4hwEUzSJjUkr2ztwi+akAbocvBIGFGkZnaSmTvcXETRFWFrtLB6vyylJFcfZRQckFr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NnBfAmvu4vYGIYOinXhNIcFSghWt24721AWZxkbWM3g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JV2JlCEmV0CEEWxyzMcyMGwJ0pIjMDw0cTpFqh303epggATabIUalWYTJqheII5IK5mxFZVQBJ0w8kBIRgWw+9Vi06CDO60TMQYS7A68f4okGecAQvQJ26vq1ZrZlIPYE9fE81kFsZxZOIa0nN1hVmsCHq68rdxQl/PGWiYYErq0hQKDGBJoZjknq5Yag3hchdvtOZ3xM5YD8IRguaznu48gALdJ/p5heuLm6vNCoq6Urm2yBh+18r+cDnUtOgxk8VLJGDx2Yno3pQswy7KstKHAJ+iewS2mIxAcDs2MqQRgMzaaMklHfuhNRXMG6IXRmNrLYleHYZY1vA40X4W8CpBwcJVmV9USQBHGd5emxC6PApNyNZ4GyW4hSCiuXGgMoTTgcUO7I2TYnSFsC4OJ9+8tGIOjO3Xr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NnW/bwsA77zO5zPVm0cSURqruPfE1z/SaYd5+wyEhv0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ms1Y8nHPrksPCgXLf7u3xh1Yjay6w2A0374WiF2q+rtVJiFaLcAKoWcY1nJG8AL0XaWcTGkVyaW5rGlMC4ckvJuZt/zZ28yT45MpgUXUx8+7CivESFV7XrxpD2rw025j1rE0D+W6qxWQKHbzWqMPBAryqZWHDsTy9YWUkNWOsvpyV6BkgZwiOkV0Y4gU5EFwD+1vFKzVwNFUx660wlPrcuaaN/RD4FiH5QdRcGcd8vzCpgpK6CiAYqtRSdE2VxuR8ggxx4/IgIvlUcDAQXHGEd3380/e3CGcaELVOQg97XymT7pcoYhimvW+0ZE94UOpa1d8vupojpXa/DuucFUxXcev0lXFK09YXeih6KvWYA9Dxh7P4uYtJAOvMLoqKk9YQ2jGfgIY+Zd6egHxLbL3LR0FibF3YZcl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Nnd7yht4rKx5fb9tyTxwHlMJXNxfhNRctJFAD5rMyMo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eJ+/1cJjEMJMuGYqwz9OPMDmsei/P7oyY1R3HjOyI00kIhjF514isA7WqggIwViAHwBiETZWpiHzF91Yooo+8ef/ehCt7rk5CYPF3lPxvq/FvQJLmA3PUfqDchJXvtxtMoJyKgL9IKA3trhzUXHIDk5zO2vKZs/+gpEgMLLIs4DwJXCckI+CoRgbvkUB49x/HeGZP+GmRzbQYCzf/coBGN4YMK933lIioGjRXzB95uVkJWvwwMzCDamzu1eXErv6VBv4quj7Id6LsY630xSq58BTgzd+XVX1gCGjRE39jqhweAH7rNQBRMrDHhSDKmfQfCb3u/acqpqGAnWk8gb481uW4C6xzsBIrtXNXjN/UnAMQfPM6oqatYEGfXo/sH2y7xpeCz+mvqQ/9KzR86Mz2t07NIl59XcM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NoGv3cIsLmFZnn7tUTIDOp/PRQfJeZzOvvrUSkpP/1U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ft6BiWjsLJeh48/1R0xgcJsixvW0hX0LD8uzNq/gNsD5wKO9BrbLno5q2PaoV15Dq3rZPUoxCa1+4yiVXsDNBP38r4zqIcUI4Gh0pw4tS2rKGNr6aj9olyd6Bj9DTddLNUrCpfGfAo0HpfREL4b4yZdQFiGObCrqP4+kixrVFk9oqn3Orl/56EZz0thUNJQKVJtzS+aEm1GFIZVHWrQpNm30zicHanMdRZFc1TlzgxjFWW1xD5FEgbrxfCatuiqn1BjQ+Zlz8oBEz7HDJBNa99xCqVSy9mwmVyori5rz96i4bovgkwhYN135TvE+wY8++RpHrS2FnqQdg93hg6jwebuHwCfSoHpBrJ+p+33/DMdImb8GCGrJOv6/iIXEevqK0/5tIUgmvlNSRA39Nb6B6c0+/fYj4YNL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NpEFXVb29V4iM5OEDycQUFSuCOS3EVIDmggFVjJh0Jc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+FRMscVNXhFViMu5o5eMR4pb9OftSlAo4/qP48IR3rj5FAFG3O1hFoO7AW8JhHFARZOJj5tnOIaxT/EeRIedKGADkoFa9D+07x3WMHHFrd/LWwpLMYErJd4wLDcuLCHzgCsXYGqIiP119roLJiStqqoZY3JbyNyL2+SnD6w3FpjYM3VQmWLBQUZa8Qx/y2QC5BmBotS/pILrvZrSoWRLTXtbtSKA3/6KwqWeoAMiIxmJyf/czfs5vSJBahWNV71pYMwnUclZNL9opYoUXmBm7g5uJTBlQaoqq4pGg9VSrDGbQ6vXuWhtHBBLHHdr/JSdqtM9LHqzeDJcZR2K0ncK6PqFUiCnIgxn75SALcwhmYMqeuw6mcXlvsjQVpOHPC4qAMMIVxvdi5mGRAYpFk6Dog+fy4bNPdSi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NqK5RBOEqadQp542m4bb4Msf99TqWNMKRY3W4NMcFSc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vhNpVIjE8MPShsrpKSPqjzYk3+w5VPAZ2WsBpRyFfeAVJazuCd0Z9gSTcUztqNx+B9RKnkpnNEQ3KO3UK/1Bw6x6kQaomjGE3wDvS1f4i9xcqg8NKmf17qqfUJIu7TSDfy4739aauppE7tinsaqLTPksEk79+QjDz5SOc07EtHzZxD8P/RyAxF8o4XXSPHkKPP3Z0L3HJueWK+ng/RCRdbFCtJHaHaPc1RKfCzf0iBb/R6vJDUxJvSAAS2gbMWaFJjPNori9ygoa80DsPEa3Lhw/CmP9+P6qvxhxrTfnCA6FCTWeEw1cFHg4KDfn0QiI8dMQTH8L/yxf9O7yVT+tJamFzNfJb693d/IxpAZeZgid+BVBMxbUKI+ZwDz43PHOyF4Bh9XFx2W7oAANTBtLMjyE5oDXGZ6X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NqOJ9w3x2Cyoh3/H+uP2bBruT0b80bXGYZRbCJkoMTM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XU5V+GAOrfd9+Oi6UblbdSMXrzIZqQtxVoCJtlkrk952BaliL2Cp8+e5b9Wlh7yDbIl3LafvI4aHMtyoj01/pNxDzNezrUhii3HBcRVcIyaPsjK0frGnK84WkpoM2k5Ur6KRhYZ48o1aT84BM8548YYy2c3SRslgK098F6AzbViICXQYlPoYEFJ2n09xYHOkDojU8WzlPpIRRrpimzaeOSMdG5ggXdgV6+H/bcIXAWIYs7Rlfwy4kTqYIlg0s5xT5FRD5a53zs9didmCFvLJHz6GgikVbGKHCgyvpQMagEGa28DC19LPl1GDS9dPJGX9OR1I8DDF5cAsBxHOmo+FUNMO+SxxwJ64FcNSGzQtEIZGfRNdTpqONysc6kao/LavX+XwCwLVc4HR5gmoYDJF9i010x5jjgwT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NrP6kdQNy5SiMYj/l5ZxnlNpkwY8uDw4qVfwDD004Qg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lkGK/W4aO+Zwo7E06YhLVPdzuu5C9F032ixgdOqBn/dovU4iDQVUOLIjvpYRRbVZ1+7zJlb5bp5pN5BUuBg7tz7IauPRx+vxRoH86vnQakdnKemim3veInnWpbXTgLpEz3vVXAFienk2Yk0BKFyHLiQl5KUFfru/H3ixKY2m0C2EC0KGsqqjYOFwB49S395fJPT5KUWbzqXWTfG5Fda+KNUE6WzR9c3OwH77Yg1NiXuz4ytM6SLeFomjpEQLOTXqlGIPGlBS9/qwgiQSVl1ndLs+8r243bqH03Yq1/s7L6+TuP8YoshOpurX5t1k9TdJFYWSVK5yZqnN4FVdKR6rOX7vkfNq23eVmO91Y2/SjJ+U83vPvl7/rMUTSGO1UyECxX7q+vT60tAA8SalW8DXTH8jdoP1CICg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NrxIG6VYhb79xSLoz27begogPgj/17jCmUqBbIMPTwg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yVbSN/ykNxOC6/nW1BmWv5pMUZPJq1JQ3sHyq41T8OOg3VZf3k+tzw84JSFmMKG9qXBGlZaN+X97jt6Kx3HloDv6k0VRdR1qVcYjXuTcgrxk7nqxjZO59LHMnjMYIlhKMoa3y3SDipo2dtjN3XAabHaDaOUWUaQo8/vKGNEDJn94gIJRFAVEZgxU+Q/1I84QGGRqrJk1Pdf9QZALLhprQgENwDe6Ej1c+yBca96zGhyOXbzQmaVBaG5QWt1sz4ZD32R7xajrh0zlVdHtKwqiXp+Mj2saboejQDXcUZfLg5vUSFgnrcot16zOOghe2kXdQcSBEpp+OAAXBdDE/VyUdfzDOnQ8tnL+DgT5YJFe1OLXm7d2EyqAiOyQcezs9NwB8+yw4SQ8S2fvLtVl7QVmIzLF4qQa4NRZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NvJ6cI3vE4ykIw3X8Pqj8fIKSjkakBPLH//5s5QfDPM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PvTq70xl9oh7xZmcGkXiXZAURWa99WSuLG/nLox6Np6td1KqoN4jLDC16ILyIx88TM01XYbn2kERhNCojrxKwRV9a5u/o00QImfdL1n2oPk/HVVwyUfVIbELPc7yDyhEu2JrfnpUx4ZK2Hg87wSbhlnzKCpYWgGBQRFTCuWXE+7I4SM9rbYO+XmuymCaGxdbM3w6hwNY33JnIIN8xKa8t35LahDsSB1BC61bsvKYVuAeyWfnn1m463+mvQtgDu9CN7FweLhIguZRyBzcslxj882eUvqcFXenCQlCLHLkuqlJAnzawYaFvSrn/4G2IBXWCr4FB1gw8aGMzJTjshpTTZBaUGC3anaj7EgT+79XbmdniSaWRTHtcBT8hLiitjhfQi6GtonwSm7pDHlC3yHoMZbQceOm+77n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NvPxl8o/jxdvV5Jf9WuvVY8cJFf6iy6nEQWDtVAau4Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wlHFTFg9RyTKmVUVrYRej2545dCJEetfsqE048fB1MKWoSWOIwGdR6IrljcKEZPsk9tpbivW7GAsI3CGXUtSjA9HFrjA+pzgFd1TXRtRaNs2StWJZzswqYIR0dMf+dDTK6MgYpmsbwP5fa6QpAFfFceLBzqaZrM+IbEVmFO+W4B4v7fqHYOmkqbV9FkFysnrPbzptFPzOr79+GyvbQRPKXLGlDCakdDxb73LKo8hVZDtKLOLDijrv6Z8ne74wMakESyhAezTfUj6UygYplG9RaJg/j4GFgqn1gk9rFtDwFGYvuHbdUoqfiOooCfn7sZECbQkRr0pxdLdfmszaRYUuGzRh+6SG9uvPMMn3Q7sjl9yd+UWHfatF3VtPoYSb41cmGuIgdEOg+pfWFV6TL3buxiJD6dkahVE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NwAO/jv/WBKpQPNudE1poNuRz/9vTYNYZu1aBfZ5A5A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mfI21QSZEH8nblswj66dr0fs6EBP6fPO7WCPAFeQ/L2sbQKEKPAE5uMVj3KnDq9lkEmgEF3iTjT/PQdnIBWWBKcqeFnsOTLhdfpn09y5L7yO+FQpBEWBjyRGEpIMVTFrxwbrHVB/ExDbKL2nS3lKPyk+yCgPvgWZ+eNzlYQ5pIrkS4141eC0dUzJhoCpaGs/xpfCyjSnmpPYmakRMaZPmY6wDOZNVzoVUphCtsu6N9uoNcxEzn6yDrhQUlewCnGE2/vAcT/5qvnN0i/8XhflOxIJ/vKhn/+C1QucfWIhwGiwnGvmGltmOhqGzjSNzLeFTabyagHih9IliA6oK2QWFA0e+OLiX31FY2tnjNC3BZvxsszZv+DEefqhnyW0L3Gs5/dnR4PybMh2mn3tZb60TdN3Lu3nM9pR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NxWHdGSNv53KFmCYrCtmRriiLUdn31pY96GenPS/qww", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "n7i0EmeS26NMe5a86gleNPPJWhHcrDglEBx6FfgwVlcr7SmkTjhw543Kxur/OKVWoFU6RKowFzFWYusLQQ6LiobAQIzbW2krEu+qNjTJy29E1h/beJONAYd7zSouDFsoIShVY7KixHksVro+2+u1biS9yIFdh9qeQD2YGMYK2vUF2ajb98ySHcuQux0GnS5d1oC1eINNZxrQ2ClklKAofKWvOCAmnjTwuo4k8vPEQHvzWnqt6vF39JtV+lwtA2XvsS5fa5Le0lcXV98dcDOBin4NTvYI80ua1WVTnQOsOL/6ZKGWoTjbhzhPcUbhTPRRyQvz2VRLZDYBdrR7Gwm4ejIurJokISZ8eqX0OpPnEIhhR3fv356LYIPkKezq+XI4tKz4Sr5d4ePSAjbXA5LX5b6rszFN/FI4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NxZFj57Z1xYjSgg06yQXeJ7LLeUC+CHYP85jb9CXoeU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ICt7pdFe/M1PzsnTKOtMDAhFQotrbGAFc7lF2daZSlu4yj+cfmTci0xG+em5dTEGoz2vShMnX36i7pIahCPzkseV7kTnSK42UNYzq/hVaJQc2wzpuI01EHeqYpfTX0ojcjFZHMzqbKR1RTLcDIH7aIqoZFIvLaYoo8n7VxgWrvQ3kfXfuKsVaIrGOpAFUG3cCnwop7Bu7hWOozHvoZQDryUNYvBDp8YMeFH/j3UilSYgv/cOzctgHdIqFT6FoSyTXypgIJBMvM53f5NPxTpNadTOa4CFi7ofPHJdOliWlYWEcATBg8ZMmHz/vu/wg109+Ry7zwTRB+Tk8u9p+OycciuNqlOCotFn3uicKQuDFlqpOD5xnb6pVm8xTXk1+t3nQxZS3bcXb/hJdZh5L32HeejcW11Z8pxS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NyK+zGtMfsAagZIhl92Ig+MvsQGuzMqgNaAWgD8YOG8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HShGAfo4HNfQXLTiK6GAVVIi8POYz8PF+tk1cTNkF5Ubkgb1CwffNZLgIrFHqXasxufpPM+a/SuRvpIapz5pEAJB5okUhsUwbDaraYn8XUkDoC+EGGdNX090qDkivROa4h1wAQlAiTToItBAIjsPAw//iiC2rO9TfMhMkM7Ftx9RjFCtL04b2wqkohWumQaWNhPR+zinvs6KqUU2sJBoeCk1Znb2HHkGOtffDWVYUSZTAYTzi/LD9rjblDJ0YErzrvY0BzrKYJ5ynFqQY5f/xQJwwFAU/oHVdArp/AwBoD4LGxTWyAOJ15nh1TEdJODZxw1yPAqNZurSfAkhdeYZ9uI7ohhBcuovZNbL1A3QKMmnzR3m9wlzRHpGcucV8ud4IFD4Pfd8cJy94ph26QSxOgp3niBor8pN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NyUWM+llC/hIpIjT9rAU0nUiOojpIBcfAbVw8PrwBc4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MOw01z5u2OAv2pTN1i1noBai/E8Gqs6Knqr/0+LUxxzLSRSoc3NyanD1cAYTQVE8LyGNpGTNpGeb0z/nqDBTXrgDIGYMCw1+vGlorSv5cp8mrn1JRtpODxjk0RPMDsOhzRA5Mky5a3vCC/xVFQ1obC+H1K7tO5jbgr60bTBvrlxd0Z4jeS10HZmDnI/FkGdS+KA6tc596YsOGBmDksFYzoCr56QfjhFLt1KJ0KSDwwl49yEHzVy4x1422dPfR4IVDwTMpPqHuAKeRQpqkyqxz9xubjpWaaHxPaVilhpiEnTY4TC1xQ4cTZD+k9E0+RfzifVcXX1OhFwgZps1L2p3XTCRYAmQ4m/IHRwz3pJjfhX1e+HotnuGIDWTldbagqaQ2qSKF20q+YYeDMXtArOOFUaw0kU8PtMK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "NyXcUaICVHFxmQIuVCaV6Nl92kG9hugprIuhxcdbQK4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AkuSD7yaNmeUELXFoNf8VdE6aiZL8cZaVQ8plwqJEttA9q8mnLSksEVnrg5KIPY25ZcScbT1ZPVt6IgtkGIQARlftr92w2m4iN4HVLF4uzsCyDZhnx1UBIOs80Jpgi+AnCaQX1eqyIv1pv9Fd1PwSj3lQa8d6w7CumVRWSlZ3gw+O3DpWtM4ptN6dLrxDQ/IBUkWNHHT5MOXmr7zkWIhVQVuGK1TYmSmWgphLpdIlSrgPRIvtpX/gC2fpRB1soJkLPgWupe7T/5hEh+Ol8nbdEFjyDNET7gmOdC9y+QGl3LcdMBhVEhueFgvlktcGl+0zb5hriXCvL9SN1suhFwEajSL1dNrbLiZzJ3H3Cxr2MfUtkGE0DIqEn3FM5Mrq/2hmXI65nEJVSwxw/mfPfdlL3tcXk7v54Hu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O+dpyXklbHXSZ8YnQuo6/i8L2eoJ7k4CfFOITM5tHlE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RrXmI9Xdmbo7qU4TuQQiAvNFQ+xi1my+Hdtk1633s2HycvCvR0DiLXxyXkLJjYa9g+TOixcJj0eVmU27H7FvrrGPQ9uMeHokKEP/2S3FyKqXUayJbmn/VaVqQ2wRoPQRdKbUAArXqpHlFPhK76vsnH2Pvx1ZMbcSpd6iSfQ7VsuikIMdQcf8uLndiW1AVDb9dW+im3WbSxqmwJcEmTyfCP+tBmk0QEMkjlQrfwvk7IudUVK2Ytacs/rLFDwMU/8gVfGs2YusX8V7t34xKUQ10MCKWfLWK64CYiwyBzqUu/CihfdeFbg2y47ZJKSLlw4D/ycPLmB5feCZiYNG+dWRMPVZ5y8cHdRE38X7c5G05xcAJ7CbpkxY8oS3VaD4HvqD4Uw07uBJaltiEkEPcybgEICI2GfnLisB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O+epxqOXMjVKumzLAUoQ+P9h/LaiOtenJ+jGur/LL1I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GuJhuNM7/b7i1P8kEXmdryKY8rL8YPRRhjiEuvpL2EV+tO2ZV16ZwSEFU7UwHPlAZxyI2tT+9jTItaKNC4X9e+eONXEtGQIpemx/R1TPfSskl7J3HJNezvz5RLiC8+Sgx+T/6dQdLd2qBgRkH3TSWPHcng5G98iONCinV5Ta4ZnSP6xlD5qaKMPebvkaB9k8EcDNNKonsibsU5SBKdKmTQzkT6a8orK1/AzyziKPTTatB4ODN0agNMfGn1M0TqY6T70a0xoZswzbIHT9i7oqLnzMB1fqU14qKKgmmJbcBT3t5PXGEyalZo99NziqlnB1vWaYSGLPaI+oK6cbIz/2X+UjUUiaIJj4gJ2hLgiUElPy5INs/BMiGEm4g9D7sDVBso5WFJnL109IWHfBFlxM957vZGfTm1mi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O+k95/t8baXzlwccdprsglI1Gnr1zRZBtRkTVUAFRCM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zvIKoMdm/gohp9o5fRTNoPdi9Olqe9rRwC5uYTrLMv7fWmH/tmgGtnBEUhDk7naN6nmq4Yfx/Wb9Nd4zwlZrIEgF3wmF5isHPnwzk6vSPNT4+JJlqIrL/t65+67WrgynbpIKIeugW+Jittm55pB2h3pT/Bs0Wk+eaPYFPHFBiAMYYRzqoEwkF2TAQzMKdt49Hauvtu+wNylT9eBc1ZTFYQRJeNrcg4cnEnmmS1fNPfZqFA9Hiw4lWt/MK0dUKodhKuAkeR0VHpKeqV5Z9yWdhbfbTcAetI/5hLvCzUYBV8CX7J6Aukthpme/nX7ikwleFq8FysOqAuFFJgSE08ebVfTyuKoCb/1u6TV8f7VrxZeJMkfkFQ2Eh8aPIRIk5AQ+9O2gtnGbPXWsqqtUDMF3bPgHOKCrahWs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O/EuCSbO/FlSCWpWqv0QuxdlfuIIcIuakxAWNsMP0Y4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "scAkgQ9NpJRJEbFyYCe1POQ53kMDDi1cjY8lSPDAPvfWrSzRCLPwj/9uxkZTdeG2MEEcM3Gjko90105E0cjQY2gC+Lrju6VSvxLqnsKc1TKM7wgTT4XdU5xt3Rt2tdCV0v5t3nTdWuzYSWclFE60hdHaE8XvW+SeYASX3IaQdJL5q5vQhvG1BfJf6VPzBPtAV1trcdCw2jlN0WKluCbilwdWIpsqffiQPmwC5zqEnoiXjiAfuvCzygQqmIE8VOclIScF9KbGe/VnYnorr1M3yHivslaz1F5xdO4oJzt9QyRNpT7+ZzSsQ8SmVvRl4sHXaoojfLpoD4cuWqHHc9N650BIhqDuwCLI1Kcgw0iZ85ziBv4JDIHeqTbOtd8979qIwb/aRJ0oPzbdgdehhfKZjbOmyeE4FRiZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O/izxOOBA7Y9X/BHePPgKoKFwWAbCg3K78/oNEsx+/Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IMMYGTAuKDPUqR20idqkTj0IB57kGQrlDnti5ZGxVrctxpGejueqUdRpz/owGnMNw6Vs4rJjaXdRUGaEsY5tIqEgOdW2hFVusDflEBO/r6cHUga6KlnYpxqDz6SqDdjhW5Z4e1Yy6FPk91rs0qIuZVJ322HruDm1RUJPA1C53yshE0k9Az6CzLx826KFNh5IGgwRQhGMX3GhOkt8wEWJWEnlYXtKloYs6noNDfBheECfrJBkO53W+NUDfJKasZLu9Qyela0OOq1clj9wvljque4b66A1EP4aI4CzlBYklQhkiCNm/nT4DV6JrNiku5tLtPxNVBslNPDPRJ79V0gSp2OVK8XKEmtc51dTdhtgoNcPMHdpP/dVx1NsfkMVOeAokLsKPuyqgkihHCqSex/Omi+Mly+Rnfa0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O0mp7dtoaXdPOB4ntSuZ6rkgA5nWF3Grs0naCuzA4oc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SCiJpA0IOr8MvTAF86nWfWRyntjl/5UjEocpkPicjY5r7kocBZo6jNSiqasj521ypRa84mXTsbfEuvidiTV/j0gbgS0pX0dPk2gvfVKJDwGFy98l6nuskW2W7nFrner3TOaL/6nc7mEtKLtKMaE81qIcR/+lNZIzncUuuQWBwe39ffM5EbNI0NOKQNJhyl9uLGi93FIw9wbJEIRpWFJPVED7j4n1JLdRaRJZxFAr+w/Mm2aBAR/opy7YGj/eC9mJS2sHhSTQ1j4l9yegvwpmbGlYn/6F337vuRYmuBbfu2oBsEVGUrb1TjIAeAfgAQZ5wxQxAn3D6PEBYzx2AJUMgz8EKYjuGXxXoZ9RgpynyK/o7xmosnDhsSodli6tgdEtJtviOO8TEFWTXB3DzFshDy3LCpktGe5H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O16eerdiQuTxLmX4/A8o5s+cmmCLtdfNc7tiFG1e7Fw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "51MqOB7shvC0eW2L3nsmfY8JcecWVdhj0sHeWzJ+qGLNjqYUGfH03e+PonfinqPH3/J8opCtae2jQpp8fQAOyh0kpzrqs0DUQG7Q8rjebLJsqrCtJ2puzTfKoTA57ur3PkGJnC1L5tWXKi232qxfoHvZeITu7S9lWyoVZ0Ej82zsRrRHwmsH8jj4r/SIz3uA95fGrJBn9g/DDFYnhOj9NmN9LuZYArtskY4k8uPGmh2TRwQ3lTweaZeWLhh7F4wQZlXOS4FfsygY/sXGxPrT14Rgb60lRAQnbK1m4Sl88wDvFJrYnMmSJPplcNObxqKc8qzRDIYpSMsLtg5gkuYmnTRUzPO/w8cY1eD+azs2ZVOuROHYpFkEqO2Slc+zMarGLrEjBI7JIgeDNFfN9w/7UIImHKEIP6Gb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O2fORvhvJMNBoFb/hrvH0ghg86uFFo8V2t7sfGvu31w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8irKIxubS64PxeWNOchsIiux30UPVV+RZx+eVX3MJI7FRlyPsgqv/rVQkvrovyPLhH22+M0qoPO3hWLu1kSfkGLyZ7sKemjSqFWZh9wOl5zfV6c3MV9BHx5FxsEP093TltawOi4mLdYAEUk7/HkhrRJ/VEPygFjLIwZrWOXYhc0A3KzPT5cKvjj6E9pB3lK+EF1Wccpu+kUc/Wt9DIlWAabxX5e4BAA6S/9J2cb4f0G9QLeE0wv0VT5Iw5SV9AltKaUVM/DU4ddS0Tq/QHbv8/NOi57KTK6Skaxm01nEab1kA3W5+7lGeTq/4ZTvq36usJdlw9buv5mPjPCvdFG/Tk1g0XOySS4tAfpqFJOxY+KD5hgTomhToK7B2dHM16m5EgGoHI90ZQgCe6jA1kkbY5u73RZPwJGi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O2t2sPYHOxhctwzaTV2B+t+SM8er3bZ5XsXGh+wuvhM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xVUFyBjt9QEqlbk1fhqHI0ySMFoILeKE4+C0UfqzQxhcZDDArDgZqEi2PoJGChyHcehNUBlCawV96le6S3u2nFeAYbSi4xu/4mdp9/ytBAIzQgTXa95UhxHT9urugUJNfAkXS7YuUAmYTsPbPWrh4AgCWgbjGaD0nocPNsXDd/dNZhII7HpHpCKcv/f/z3kn96web8bA+w+Yg+tehKW+hoPnY4gAnTeAWCBOB7i5NB1o3rZnJCxpzJBM9EEpeOQcFPAutxvlNhkn/OvzaeaAEEYl2MX5NHWNcUVTx8oOA7dMY73F06Crt3+V8/RAo+wsSS0hFkQfbgzCar5nqnEOps3BzIAJcPVwjSIZoQ9l6kMS9ZQGlsKRwJSnSkXkj2hD5SKQ2cswg3tySUgdifV405SBoSMIQZsv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O4eLz7g3S5UXkEFMTIgkzy6Hso6SkAxcOCdZg3XF68U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YuMgAxbMgy9suw+MAQNthZCAfSopvgJAR32vsrU/ivv9sURsmx64Os0LhsnnnxbZf4EZLU1cDCB/f7HyV0wCP2DYvhnTLDUbVzv4u/XIsKqFPmF2wis/IiWg6Etn4j0DphYbYtfC1+VxDg0GfkiU+bVlS9JLcH0WjREiuT7bgx6BUs2BB6mc/3S5suXaXnYkTFmZYi9ilDp/C/2QEBZSnxk3Bo5z6QLD/CTnxo5fkdK9aJdBIwzmaTcQV30mqAa27c+cKCN+ldiwCimnG2+LnEPvGdjDsSniPQdmNH4iwRtznZJHFbo2TKfF0bLzvRWSqmZbRcTRfxp7ECovepXd/4Xv9MGsnYpG5iyk2skf1eY0+092qhKAY45pIKgFwkGcQJG6VlAdqo+6bAawQLGXpOT0naL33nxa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O7FlsUXE60q4+C4vEB9Cae97jP5ZXKXmnPMNELH2Ig4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IZ3Un4tMY2H9yGDi7sCWNF0sfMX88wDg75dWJVyqOwapNTurrA9tBYaUva9cD7WkGkKB7XPuJJeoTJjyiGKXZbiX7lInfFiiV0/IuLHJsQ34UiCeeUbcDCa0KULhatUpDo5CY1QLSjOIVndjuXjqOKqsMqiQyYIkxCDcj3eQUsKDbsFi48QlY54vXiZNcB3tlQMbErrixrMOg71Gu7qZ3namjwNPYcjb+AUfsW0jY2/aV3eYQWYEmxFU1+4LrX5/5OTyqI4HwJXZqpl8G4kEMa3LJ2eB7+kfnY9P31gEkFwhQxjGB0NTsvahZiEg3who/xjNVy5pHd97l1jSvHdU32yGLPWo6lao3VY4FJcc0Tac6QWos7GffI900gKq63xVavu2Qvm/FCvHzR4A5eYuzhphkfp+zLpe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O7espdO++loH99wrMgW6BQGoS++AcrmMK6GZNIj94KM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8mxCfL78DCwB1ZiMNP5DwbaCH7uEcliveG4SUQnKXPkS7kZk0DbSJNm+shAHmPFgFiLNh11iAOI4Tf9Fnyntf5WRllBsFEuPTYTroTB8HBAOC0o0kS+/C4urqTw41aPwbA1sLoSkv9NzUGbvM4vQ5/4g8EwztbXpsI/egePGXnC+S9a5i9anEcyrjZzpvVcw7IBpKIRD6tqZvMAwFvfmRCwV4Vu5LmjBuktc6TAwc/etuTyoTG9iLiaXk5BMQhgtqeBGdVki3h65aTA/+55G2VTyqzKf0Sd2lNytaBLoz9nwAhMouUT2ai21/TlWNG++q4siiAfExvc94TYfqsQQvLFzTenn7vB8h1Wmpfd5kNUGMGy7+VGa4+nJaf67gNT3N8gvv3rbzq5UQ1aVuqCsQZOwGKHFD01A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O855MsA+NxGSwRbu09TQ6+oMnUWIM0meTgVeY59x7t0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mTX3ffCJT0PlqcPsXRtj6eof5igsj62SKHvSWHYyqRv4x2p08WuUo3LT5/2xcEMN3Mm1OkjvydFk1+qpF7VTVX6yDQCyFIfJ3WzVlEOuI+jDGvstkV0+YEz93dXgWCdXpR8wSeDWX0+4BggUFjTkwooZ1q1TlmkwuzdsFE+0S30NZw0FYbtkYJQpOA4h6rRPVmeuYfV5tuh2i6EH1dXmXK60taEBuxSngh3TmlQhUXQhg+lHYQ659D8MI9L54A+wWVQJa5imx5Vsak8jFPTKK71qOLx9TX9aO37jEcB8riyFTQGgHHLL0HNQ8eX80hq9BqwJ5KWMT/JHkNltV9ckHaiF0HxO8je3JLt9Ve3kC8wlGbc3HDOnKisqeA+KbSr6RgdlqqjTEKXtRCaqCSwV67yWYYM7LAOm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "O9VRt8sipXbN/mmD9vgBzjIZIbq5TwZ+Y/OiyLEPXLQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mj8guJUVJZlSPRdByOx/+/8KgU5VhfB4qp/8zE6YR45QOE7TWzBQ7B2ga2jRLF54WdBrjxEYBZuYcKUHUpCzYq84dqgc4Gz2CY++lKRsKBFkwmtUY9lbHp9z8RaYU+dqL4ubOBnUlaTarmVu34qNpQdVg9NRFKpbFFbaxtHDddkN2ktNdIM0TXxpMC2J0OI7TigQKhCr1nxv+/Kf+bvkHn72FMg7a4U0DRFIYV4ICuE5Hx+iXcorGzBLNuVegyluC52WOrsHG3NhtcJJW1KOPso/cNyV35a3ozx5W7P+WPdceKVCJfW+1xquwZuqlc4pIW5bilB3ETMHrJeJ5QuwcCjM8G7PCtLWEYvd6ubkXzg4N4LR5CqcMt6GEqmhp5eNwc00RYhyyf0vsjdw5pPuoAru1LdQYzWM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OBMs4l2GIYwf3lHmIJ0iAjXLzKn+KD3Y8noXwE/TkLw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Aoq8AkohJMaYC3aGHxEqsrU1gkFL3Mr+Q9mTHrxfG4R7nOfDn3wS7xhjqZoiMZkbFcRAjBWBfJg6vwn3i26rNQeJuMz7bf3IN2Pao5qfjo7RkahJKTjcAqDXr4DdcX/z/jyh/sOZEdflWYUyGP3j9vhedJ55rL3Xdwgq+9JAyLz8ObVByzcMLVYnHqYxUSwoDn79Avbba4LQU/pVcIu/fNRK2A82nbkzmDpyYx4w6pB/nXkJQlQxsVoS3kwmfFVtAn/CUCTGpqatyBN+/SIhMveykdiiuXiKDA6f8qGwYK+uuY18gNtH0UXtJ69IOGp2cm+8MAkk8xmFr0f0i9NRXGx5BLGCGSkdMBVVtA9kFzzAT5PQfsIi2EJ5eqV/ykLuf/Zu8aWfb8h5Z24AiXsQMG0/77JCHNK4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OC5GAC7r1XGI9fGP72ayWmQWqN6TV5R4vn9e7+cHnhM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OwN2rQwYY8BaiEVikU1BU3pTVP1ywv4/7uYa9BXtgH+LL7QAN3jPujhnwePbtjR8sXZ+723iAdsXWA4RznLohmEfpzMD4md3I0wf/4jhZNkITh/vNlJsCLSz55q3dkWCF08jlHZvPU9YlLQ7ALURZ5TFOTQzwNFlfwyzNeMPYPlMyotMWMEWbrVKp6kjw+glWFvQwtHGrlfSuI5IQ6HNPcU5SfM9bkULQoUc5A/OtYF0KMmfXDni21C5epEZsyB+UV3KzNcEPPMnSI48GYmfO/kdKhvaBg59oHccV4IoLetkWZQGsMoMGHuOtJpS0Y8IWOaH9Y7M7tESZGuQJG+v8T7HrTii+hUfT2/zp3cLHtNDMh6LdhdajJgPGV28AxrKUgyCTMvJyBTqwJgKaZTYxtSKkgqTUvSS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OCCgAmw/mO08nsZwMvlaEs3De8FWoCUhWRbFvEyXDD0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZmAUooXEye+4QKpo3Gea2iKotdo1F+/mofLOh5Dbu9mY2x3K0rLQ5g19uQ/900TQKVGYhN7IlNWhxSuUsD+/gyOfrz4HM1X7tJViVYsyDGkTCvLl5gsw/+LG1orTDze+agYcJEYAdO8WHTIkDWgHd78kwDDeH8YFrEk2+V57y7IsSDDXfpt/urEtoVQaHvLAtwnjejwuSLcjiyMqKPEnmnh/fO8VGvAHJO/r0nZnONcxd1jLWVb6rKiMAioEZ3HffSV/hj05cUnGs5EzQVA2R2LMFDrNmp0FC80l4jrDxsrOZKppskw8+ozBtuu+oR/OjqdsrnsZwd+9kxyhGYJoKSdF4U0CPoO5L6MQEUkMX1UP3k+DXmaaqIPkYgmroY/MKTpuScCnVZHfr3nxFsQ5WUH5Snj3VWtA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OCOsvW/c5nB+HhuggZeZT0N7iM5YtS8aGLtgan0B/lc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ocVP6IPdvB/k8ZrZVIgn2kd87sZGy+xN0JxGPzz/BO58KZp8giJumD0SEesGXX5Oiuh5EcvIoDXUJJw7sOVc9os+MzpMLRsVHTjVU+ZDoVe+Z3cBGxJP0PhpsS9+zBkH+pkje3ykApwdw8L1INStBwDF9B8F7uI8hCvDjryTS/UlO5jFrI9Fz3bLxt26CkDyKOrbdliWWmfYf+x8yJ0K8dR9lYhcURqf6urBfMWJceTmz9VVmQSv51Ad+CZ8+Bk6cwk+9EbLeMbvMJDCciuU+HgXfhmSxwTdG65GD65Vq3fkgTEXXlD0tr9IzwLTJ5kEuHYMpGTGGpok1NzyiGq8oAorSuwHLu7/kSiel2l8oVDeGQRFSiC+48o5oIoMrmS2vcg+pQAlzVIU1JMArmS13efSAssGOlhy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ODr6dTOjYIdrUF/EtxR3WgpNl4t9xA8X+QKf1NLwhpI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Fs1yz/c4AFLtPw003LIBz3xe5nhBw3tXN3M4uqUUl2RdjFhKutqO9Yz/KvjNmCocao3kLhLhFmDMqEmXLZbhuHXDFwl5+UJG29uUtfAnKxfFUtQTNLFxLTOycLo28GZ70GKlF8/U9FNtOZDWhumPudqg2oGc0K87L2TxFiPWjV1JDo7PNRpPDiqBvpUm0djk/IAK3mUTIWQpwZJQdpVPizy8R305LRhL1/L0x99M+E5meNJK0bvvMUE1+0gI63OHHUJAByIFE5ruzPEzy9RH0+cNQ8jEcST0YoxJnX9mn5UlXRpp6RXbZl2D+BW1z9kGrTFGQpjMCN84Ccxdw+z5MlnXEk/88E/oSrM6nWalF6xiNIuIDGLmb7iYqn9E60Fq5jhwJY98VvB4lp5caYZAxy6rM3QsYeAz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OEyP4TucADndHTfaO//S5Zd87Y5yeB3SFYLqAWuiJI0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l+bozMJXTzdUmjWr/Hzy+2jMI6PH5HoG2zDWDDQB3HYwRY/ivRxMAI5ICo+n3gL8SqJrfeR+ChWdjzs3fbuvKrcpODE1yAJDZkRhdHFXSBM5GkLZkf7Du4yLYJTyF9iCgcKCnRjt44JE8F3eND5NfOLAcSl05+awgnLnPQLKRMPyF0u01Yp9vi2CY3ndPXWuZ4u+aI9ootkCWUVDjJtnAsal2rwftzIutDubCBt1JtH+Pl7T6Gsjjjkkh05HV3W4YDwS9gRFqsiSX8e33ViyXxQ48DZfAMbDw4L9HDPyTlVLhU3FL05v4WDHMa2G6Lx6BqrVFn3QnAZEekhurXcNVlQUsJgD5b5mUhY7hzEXPTa9aRov4k6mluH1tSZwnbOuUjlre6beXFzyPwUyOzn4PdSlAOE5IxSH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OH58sALTjwhorGYWUFrQIVy6bLHZvGPGJTOF/UdqmgI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OqJ06Rl5TRQJPWqAEZLvdCBA+9smkUiGlpIa/AS7EAJ1koJfAIlAjcV7b6VNJfk+ruJ2pVS/3Ld3qo/8ehlLy6T+yx3mF5Z1pqUSwMki3tzl/T106wwZUWBHzvTMBMFYEWYTq060V8WG3S1KeglXzsjdZCjjWT2L6XGwcPq1P8MXAGFVuvb0ewKiHIq6fBAIa7c30oiaLOdU4ULdPCiB5YBUaKNsGkZ1MtXAYN395uxu7vRr2RzOGefXIar+YPKuJU1Xsh17v2B3ddmND1lmnPIGzTYsjTQlhLFXHtQ1Cblu0V7O6cG98fcA+1OHco9wOxao1YZC7spTkRhytQXgF+tWhOaZj6aueVy2nkz//7uwzvBk+64AFNaejyNpUbJREhYbcfpGGWUuVukRdvIOVamluT3GGXdS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OHorA3sDGdV3xs+YlW5Oze0PnTAec8FfTkEtoAtu0CE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Bw5EXwNOuLvG/ZapKvmQ/JY7BlEM48S9oQUBnW9Ey4pPTvG48rHZNSDpm1tlkS28mfm8z7bD8UeBSsIGu7xkr/Q7J9vWxI1TgrtV8Jnh8UCtMhw/iV2fgPIXvtfc4GPRo4ILkK/wGAvzjVy1JUPvrW5Cx7FLAA/+Goru88AV2YuiimheBWLAXvXkKCIHzWhnFFT2fk3sf2SwM9om05Ikt4RB5LFp+zeS5v6CV0DvanmP0aDR6lQR/xFnD6y8o/24s/BdJZ0or0okzEnDKRerK7/a5sMtCD5nM/26wYMMTun6BQjNQcuKqznintU6EA1TsO03E2ZC6r9HOCr95Upn3jZB5U2DG/RhG+TPlginAVsiC4Ta0i/V3HiBGmxJq04a8IiiLrTR/PGgaqL9kkSKqFphJ6K08iOO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OIqd2kGpR0UxDFxV8zN7n9LC9VtXTl/dZcqWuV/spGs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "91I+ROD11sUF6WihYFx5npQelvJwKUGfRx9AH7deUBgq+khJMy3EfaRhVfY+uvUsgpm59AFbjz27dl0CbtYShYTj7mk+mAXEIbIfa1qSKUSu2vp6Chc2HeUlPGl0op9jviVd7xg+zBYmK+9agfXqvsd4MbHN4IRv3v85KSxqm0IiKmbTrJ2gPSJAuOY4fSSbl+H6vVgmb2tdJ3HocvneAa6Njv8V+3nFWomuuNS7sZ0UB9QH4HvCuIkMI6ZnWNGTjxhogj9vnw0cWQcNGIKfkMsBGsAT6YZ1D2sNF2hxmOxUqDH4z09Le321aUstVyKZa92JVaj2SyyUrMxDJ0PJhT+ZA9qOEA3kEIY9thnCSkv+zjbhYHeOyfzdLt3AxtIDrz2aYc6tAKVqkPn/YGYJcSRoI2tjhVnC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OJV4cZ6PEYn7F+YD9kOPecY3LtLLQ0HprDH1iibDuZ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8d9tjvEPk6g5rz04bHrMPqEnlN2nb0CGhcB7Jc/z4X0UPsQDRT2atnXrDQk07PwTuqOKt6+n2GuLMY82oyv3qvVc3AYxQsVs9LRH3i2fF96WtaVxYLBKmoDwqxsaZRigtzYPj8hWKHT9JiigSKBAj9zgVCBGDdF/5lOMsutpPhlLNXnNuw8hO8wVpBVW2asLvcldnh5lURGo/yDxApZmK+JrNg4MvzL+u5tqA+czmUgVNyX9+OCbQpGBpnY2GqB31sxo3dWT77LlGMk0JODcaOIEHZnpdoF5xFMnr1sQVMgQucYdBTWjSUfem6ruBIXQt4zy+jyPVmLbmyaik4uZhHGO2ShVP2EL71PEaV8P2nl2jcyZwt9ANH+QJwzJoGZhNV+uaQUPlVKDkDSZ/IgWXqMAv94vQjAj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OKmbKrnOBmfzAp5QFWJJIki3AGsPjUA6H2Y+oZVQNKI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a/3HdN91o7dyQ69OyUVa49EPirxh1jUb2RmyvZvriUKwQZr8temQskLikgAQFgnuWZ/rq+5k4XWSDG02+1WJRuKWxJN6mdBGAMTUpabf7zd97x93nf49Ie/GhBriHz2r58vgJbqNw0mTmSsQsFZCrQkC8MpOJ2MQCcO+GvYaASHAeZCTFsSfcMHoIfc8a2IbG+ubaxx0yh96mpLQJP1E+/cQRXbO4A5WAoQ6FxlGYBzRvdG9UdnHZVRmG6QXUWLQxRKbPjZM9kIp/f5tLFXj8MxYEXmn/UPOXZZlfWvexgqBplA32lxICJOQFehtduubdDcXzA0nJIBx7Wwk7iwVa55hmq7ND/wItIMWqgUPPY7+aiOhdVaymoUKiThTyaBBCl7Zqus9pneL+WE/q++kUM93CCI/vrEW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OMg8ZQKBgfYXd39J10g2UKjn+KFPJZiLn+7gtRdBtAA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wKdoJT9wp3vky1pFIJHvlwPU/dcpFsv62DIm2gxfiK82mrbOowalMOfsIOyryMPkBDNXCJOW/VVCiNKO5toyhR+jtWL6qWt3J7ozxi6CFY7I7blcadSUBQyF95M9LSlXZO7Z6YS2wYlvETIRNAZTJTgXc9m8j9gpl1pmQiDH9C8tYe3PkWXA0zGiAkKMBihqQkwbY4xykBfomTRp1SmXtv9CmN2CaprxN5RJ9/AGX1MgreQhfqUMR31PZRoE3WFBdeiWMKDl1pHf0R3qnX4tRFqi7BO9ZQAaLngSTnx1ooi5474MReU21g9Kc0eZizf4OtPvcQho0FlYFHc6EavBj5HS++BXM1lCQkfjYkyauq9WWzEuuKh5LZ6X2ogXRQO6CGyJMscG4JgHFBt26jrfJc7ky6I+i5Tu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OOs7ogpFY7EYF0mmmTHi/K3oaHhtgi7ks5MVXMPuv/g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/kHYNeQ/pHFkZNNm2xDQwcONU05mXsAYFeslab/+JPja0huHUFt3vM3/YCZz4t+jIIL25z1YE/Nrg2cFGrNc11V+VGhvgMuD2QZHmTWhGH/0DQaUP2SVDY5cCcEanIkvuj+/4X/B64pXQJKC/i9buceD/hmj56HDeBo0AltMv6oXGBEj+ixIWmbslsNd60Bs4fH3+tCmMVebxrsHObcvRL0Uv+xfXdsKzlPtdfWhumHRRyupF8s2n0p73dVrFMj3bsApOvzwdhWfVFA+Bz2TBmOtYQvpS81yL6mYXX70bAtllvi9MoMQIh/HfEtMGSoC/UHUz5G5F8v5dAA1joX5TsBuSc9EcARjN4Ud9mm+gHicBVa+baJ+xaaD1hvU4P8bN5tzb9KWDPd7cBamgUsOW0yw4zfHqYy3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OPiDAhlXwlVsAUhKUXWYT6KYuzfJ1pcpZ6zEM4ICUtc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LxZHCrYhCUQT4QAzF+8HAO4yKidFmXdBe8zr7j+pkXZHc6WE8xvJOWTSmqCm/3rRqoUJo3oD8GUOrfIbHKOq1v39hKV8OF6nVkdUS1WF6P1xVBqmcUkTzOTVydwbfoZIK9xqJrp8BcWsYMYmr8eFoagxCitfQnndiZRCawHCqUSPGdx1M6ax5FegS771kT0RoGL4kQkbq148RYscm4bv11WC6NTHA7Wd0dDPwA+jPJ8AUobMkYxFGwVEhjZEvjUyzqg29mztw2crzGGAOgzIJsUDGw9s9lhXe0i6EB8QbSfr2+2Mqn9q4nNFD5Ur8pl4mkbL6PTBzhbvbQ5WVXJ49fILFjyc0YL7m09tQ5RubpnzOqo0TdFn6v3h78yZWj9rMxkyq/QoXlchiS3LB0PG+opdA/JPK/5+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OQMzfeUCzNGVLs+rBDibdDgRV9nfOvWqcMlxjxQj/2s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6kgrMPlV1vB/EidH+ZZuEmlY8rpQLebJLPZ2OcaPfv4Dh9/BCbik2TSobNDKGyR4TfhKZfbdJWLtJ4+0+q5kQ6njn0jvnkj1qAxXMNaVMT65fPIBpKr9Ctl2opfBmLZqVkFvffBYSE5eye4mj8EYrJ8ooIL6ZJAPFKCTBUjb2OEtobatE8G863jGqWVpArXWsZAMtgbG63davbJUS8Wqq5M3ZXuk4SSiqty57O0Ys207Y3G7oKa91z7oGdFrEulRuBSNSyJ4PGTZJ039j8+jrMu9i0GsU0MexuccXhj2/RGTLMo4graneQ67nhk0B7E6L7onSEfRAShvpQNRX2LYYLeRi9oPeCrNseNcbVqGvu/AhXk5Ifj6EiHxezWbG0BQtP+rFok4yYKrUSvyeUImPDcEU8U2a/ia", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OQWsyltZl4aoa/pzsAWHLeaXo65U7oYZi51pFzDa/6Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KYZ4GvMX+ty/oCrsJh2r72Mxoq2y0S2LTirHXddN5a/2UiSYB7howTRvbSQrU7DuZq9aPDdDVLTn5E0rI6Nz/UCqAbZKmgUCfZcR+re6J512xV70sREl1Nwur2VbA9O9vfIl6sDcJB1y7X0TQJediEWVzuengEOPg5UNN3A2nUmeJ3VgTEfGrRs1ZcQUVnhaLU5CqNAgFaLRkpiF98NGS3OSaEZZdicEIGFuN6mIMIScEaf3lTd+wybS+uxMdQ6Ef+RPB4Clm7/ePmSEdEVzVmQlfCH+PF+pAgvWa7alYboCJXSRVV6OglsWa7FB0UzeXgvTQMucY1lgiXjD7llawQY4xx/xwGTx0zZLkfTb6mpT4so4S9jgJhgepkWqjjg6P0FYdYpbjqVeg/vA31L2C7MQ1VeEeQdc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OQdnpEokl0BLinqZAwlR+3QDcg4z8MBg6h6TAUg/8IY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nFSj8TgxTj3mZvrVDw1duccce+Jp2R8xcBociUFu1ZagxbwNBlRarCEVIS22x7sWe9W15oGsTLxMkCrE17EFGvEpkjcexrE89E6pGY3nwu/+KLguoZU46BzJiSQjMwKY+9n6gGQlqUmHQD38KBk1FFaZeG9SX2a2LULpaVoDqgDVYLOqCZ8w50V2sjntUVuaCCcI1Idq1eaLF5EQ9MrTWdj7KDSzxJ6PSQJltfD9hTDEfEupoq2ZvFtWyC38G8KgAZKwdrDvun1gzNYOp1r9MX6VG+ZgL+p18p8ZrOzeS+JthSfrif1nahnmsJMd2u8JrIFDe1ol9avy/Eg5mCFMbkItmXlywJAWY97LXaW72eJHudz/1rbg/Llnb0z9cT/vSACeYVzqE3G/k6AXQqj/KZiffVkI2C1H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OSQXmikAMaIGYrxp8otBUg9LiarA2IDRyOJ9SxP1w5I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "34EEcPfvQJovWAbVic3ZMePJ0xgmrsjqcZ1BTnlF8LsvEIjPCl1Cb36z+qpf2g7bBbSxNlaW1oTzg3oH98UovTukH2M6m6GKbHpNMNqASzNwcIkP0zEWmDsoYUHJNVGd+44rahE6e0/4948IQhByWvAog33ffdt0wvSDJA9Eu5nV4zxnj3oQCg+bRucCx8Js/4cin1zAGQt+nVze4OUvqV0XrwQaqFU0JyLEp6Vjnp/RhZ/Baj0vMmmOHy8H8sCCMnMeuTqyGsmRxgDiu+sB3Iy8mLPfbsCH+j7+o+g5dZBalpHddf1UFx7F1swMKpL1KqL3BrXtiSebexUDc3oy78NhAADRInjGaKbtM4MerO6nwJjbAlYvDMI17T1sgng0OeDszuPr1oW6MWYOsAp0WV/o6dqrZ3Wi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OSojtFMZa2F6XKOwBg0cYhxW/aBkqAjnKT7f8Gpopjw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dfA9xI3NtilX932f7qtCr1BknReqFOflpZEd0s1DH2hP4xdUT+VX0byADp4xPQJlQUpKB1yZbkIAmmYe6Ea+NMNq3M7sWiDuj4qrSdmaYTZjl5QM6HMJFzDAaOtoD9jeuv/zTLm8EymsyGMXSdUlUKd650kA5q3tNYKYapbzlzxjWgI6JvguKMxjxkJ7l8Q2u17QAy7OxGirbqcPp+uBBNnhF+yYQ4Kvtfh5s4mpN8kiNiOVrVqZFZ72kxNVe1SgMXlhim79aTkOK8w8sg8EM35e1C2mhOKSPvZkkgcEuRZkESllRvxu9/3VY6sHWi+rTrQ81kP8T+z610/fRuuUhGA+YDVHKpT4teYSInvM33LeKUCrCZ+xtxCCf/EZSxt8s5YsacwrikTXUZxjUD/bzQtq2GiyTpap", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OUGH7QZq+05xj1xUmDR/yy4Ss/z9Jdup/cooUoMwuZE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pKOzFSUseCaeuPdfpQKQIsSJEU+fe9Vic++9+I9rOJ2odqR6Eood+ImsFha95+Qptgtsu0AmsM335SBg/8vw6o94NcXtg2f1E1n/jv4ZL2WP1t9zjtPcJgQSpRgEaYwHaH7owMxSceGHSSDoTDr//JVt4wT0ZAaPDH6SYRBkZf0N0HlBD2V2uaevaruvMFFD99sfJAbZSwbpJ2Z7iwEyPkZKYMYwMZVNGbsUUeIzH/mWlxx8eNcBfFZnlPF/W4f82ZQ1uVxBlftWZ2rW98lPolYxKs+L2RbySAJD+0TsBxudl6YJw8cl7HJocYdJp5eWDvom3N9jtJs2ZMqFkl+p/g3iNlAw3rRufOMXIZiADJ6DUERJort/cOi3HoSPIPbEBVwsDcr88eXs7HbnkMnUoamH+ga6xN7K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OUOsTtXT27z3HUpNiJ8x9tb0EUREaM+45+d0r3+BcU4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IZHNIapIFOpnHY6kA0bYQ9t411LP565sWCXqSf1E13eXH1Xf7ewx96HpglK+LLpyPdOPxijCKbunK0ozOemWMenqWv7P8FvkPAgKRrqWd/gwWguOr4OECoaiI4zTGDdmlqzuN0RgA8oyZWT+zoZkBR1vNHUtLNO+z4GlV0yK3mqx7Kt9H3bVFFMWhFzwh1uU56sP8OjITz4XZJvkrlpQklishcumn7If3I2kFG7P8tNgYc+87lXqgUTBPT8NbLqIWjvN3Sc1OSuKSffLFh6nyP+EmxlsbnzIksDylJF0jGJX0VlwgDo32cBrHYlMbJWnYwL5xreNHjF7cJdbqVEjRmg967RGfXkVE2qJLfbMrSwZeOSXb1XP3nu3W+k8RRE2eySQ3IAuEIT40y9r3MSm1OVj0jjGYVDU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OV6Qbrj/FoXvd2uy5Ala1Ew4JrRBOj6lYoxKwgT9Yxc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d/8JjGtVDWUlBxwGaGHSXxkwIYPpsu5okyK/yHP5hJHgF2s1/g50soxGxmI+wPbYt5cWMAJntHGL8VKh6gihyCqf0ZYuNIWTWnIhdorZyb4tLTWillstFRcE+T4aFmKCYWtG9peNFt2XcZf8rfHwRwwlsKU70yqE28inUxxQiUtWMKzfUeD+8kwr/R9U0AXESOQdiWbZhEffADw2VTHb2myaNceTksYhJsqOGcnwr12HIBT85bkiYa3KbfO1pBDwjm1j7TPzdF4W74dzUVdGhv/IJBSMKSKQa85K+mtvA7zACJFwsFZNDJqQt3wyOBeI8wiXtz1oi1cPz16sugBFvjJ5x23YC0e+AKFNIYXbGrcMIJB+vsGy1/HZCsEtd/CiTgub9BUEA4sbiGz+ug3+vACf0YT3X+x7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OWuWoCsZEnQn6rpKz7hF6Jvx2/FbR47h3x5nd/5AT+U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ykKVKhUbcyMMwZTofU1mVEtFAyYIjc4PUHK6k0FVCvgity0t4qKKN0XxfSRcntlDvCqnf/SAt7i07MQeD7b3rSHks7UXRjjQ354J/X3pmASEKfBAwvDMX5C1rhQ4Ed7zaRjEpMwj57tG0KrfKofwmDhZKWO+ybVuas/V2NiJeiskOfx1kUvMfrYUI29Xet6J4oI8siL6xdfvpJTaw81IYpbyNMRcE7d/NtbthWJqW3n05PoaUzYr/H1ba/aE4PQvWjARvtZCCi0PwmYLgdGE0HwIOZeWuSQsSfbDPDWS4B3q13DPZmGqLAa/KzwwWFUH5mFsbJIlYAGHtYhiflrPeQQruGoXT+yXQrq6Tk4STFT8bxd15u9ZYlqohwwTTG001XH9oLOrC/3eYZglb0CTX6b3nSji/pL6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OXO4F8jB4xnArI6aPspweJr/dYjIGRcPXZKQceUbFT8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GsMncVo0IjH6erSNRTej4+LhkjcUrhZJqXC5ZivCZc7BLh47NeRPYJ3JbrAQ+FQRBhmF2oU2BeKXwgAz8K8lc/9HKyNGcjU+p16ke2SPgpMukfkSyltGS5LxjEzp4nckaUm6qM8qkGbm7IVedgdvzswD4c804yjEWla5Q9IcwkSiN+kMCCaUcBb2ntYJQhTlkzi6msb3ZPf9YL6MhcrxjwFYtZsEHqbW8UfjmCO/RbxwFt1FhBOIBjas5zvm3lnd7QLWDKWyklp48G+Qm56AfP0D1PqBOP8QcGrvHV00Gc/kL+r/wq7WGpSn+PfD57YWQ5GrKl8zgK39R3uCY+drCZz1jLB63TU6lKt+x/yNLy1VwKlk6l0deDiLNZFIYI17ty6P44VgnNdnNVIXZUdFRNjSPnSyjb/o", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OYMbmxsm/0J2ilTL3xB7MkAxRzTq98xa73eMuCufecM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "h6a0+mEQ8XaxuuIpyC9IwOa/TgUPFhSx2UfO1pAophBVRsK/CmHTX1cnuBruOQC88NUP3heXAWKD3B+KNJZ6oIxOAGdqS/26/GBtH/3aMAPkXFAZ3C9HlpmJYuqNjGIWdec0wShRZk7944zAd4mK//xE9xNFwj48VuHIXYLvga0HSLwl/laz2OHFd2ob4UBX0XJfuHBXFtO4S+IFjIiqKKk9UJNu9O2sjR+4sORBtPFUTgyUIuAfZBsIdddBd19QzSqINMp1nYmO6PR7yOR71KNViYEFJtJEVXTcQC8r0Zw2aqdA9cPPHNi1cMX1oMrvN25WNwtg3rxHzdzWss24Q1GXNZbFoUQVqRjpNWpi7q2ba/NHNAeMTQf2vebCgSmrYb9AGfMGlKroKYmo74GIG2Don6cmD0E9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OZTLihENzVwDI/coqoxxt9G5omzGbdUPDHKKL3MomPM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zGpoepz7CBQlDNBLAaoCp3bE1F4bfxR/614lePsmm2g2pFjhT1d9GBCwC5wC6D6V5n4FXLs4qUajmepF4pqHAGU+3d1e+NZUDqZspEhTZpusuA1foIjJPL7xTwTeuaGLGmZpQFnIDRthvl/Wo9BsX+PLoE3kTHg9RIdonwm6EYVkmP+GvPIrutuHw8p2T92pEiYo/SJglP30CZb7sFmoY3yNorG07R3OZMghp2DTMOafW04cAF4mA0i+FqrpEQEXNoANY9xNeB8NbH0mQjL/UKQ5BNo6+jwJaOKieeh/HU74SoS37LGdxsIZ5eMX6i7JCANAYOxSSUes5GHKbsHq70VrY/Pg97ev+mKDUTO1qfSvFu2JAEJ5Met+SygI2MrADG8R00yL/kSRuoRMxbOPvNRMWSomTGEx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OaK+rnmaFNOa7JWZ+ceVsWgKArKGlue/dMmxca/vFwA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dOCNQEtT84wBPv36f4LBHJfg6qTX/cZRmfgrNZIQWeGkqEda4nIt6lwHO3y+X1CWutIczUY3btUsJIHyMif4gUfN25z8pR6m/ZYS2Nrfca/PeYWJPW+kBhOfUc9jwqfAOeP04SIjDDUAy+/OF3dqlUwvJatXOjknSZZxBuLkop4w4+YIPNk9S8YbUYeA7jJRihEXdaTCUCzXGUAQPMZfLK6kBRu4g0K6p9nMQ7D9FfLdoZ4VOP6BlbPR/rG5HesL5vXt8KxcM5jTJbP0GLWzJS2NRkyBJ+wnmzzA8rNAREHdhXS4o2Eicl3rSlFeOQxQqYhHQLw617J6cO+gsy5L0mfUOdbiw+w5JjT4rJ3Vu1b+CXEB9B87MXfiWODLJtZ6xCJscAwAGTiANDjywOkA7bE8SR6jWRht", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ObEwCyhLD2rfTehfDOxqHF/eI12nrAMWEa6F387SWMU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TqOLctJzU5Ot4AsHfANf8vwGI8tdko3wwCt8/3/7Kjkaad9EgeLUQYQHRoqs9C9w0W43G/Y4rpKr5dRSHd/nl+0gT4pa1pohAdy+IAT/a1sChsund0sUaoP49NjIrYOji3hBafCbl0s2TX6AXoLMsfb5IYlf942wyvgcJ+FI9vPlDNw3j52BlBduKfgTa54iB0y/pbEdTN/znWJu1YTf5vs7sIsvQcXbHi3/V303Zm3FQc4B/fL9XukPVJwqVc9PD2Rpe9/v1ToV0FHixdzQKfF9/MNoFwBxAMav0bBDcuzfmpapmqhWETy0R7IxWE/v9CdeYkv0Cjxx8jsTE+o3eR6FtZPWWankbioi8XiXpNu3iPG6fsvu22UN4A6y6kzv5py5Hu6ImYgZefXc6YMlraopBa86u/yx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OcAT7h4GeqyuaLr43cVmf+ybEmkPtdjfxoHlfMX9eH0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/MfLpZjwdzBu1fUFWZYOw72EKq+hYOXRzHLhO0ga2zfvHj/SgkE5fl4V/fP/mRsSQ5tTyPghUbtB2hO+oXZVQ9wY02J7IYWwRUZ+AadP8a4+cVFIdlBG68+hlNb0+v5HgLZ5JrQim08OQ556MZtGaoR8H9clpHlqjm+dk/uukLTp1FuKKr6vzbTKcDvUATbpvTbPkmcFZsIoV+8jP6an/HVwxezljV9TlvzKeYPfqYfmSEj28sRd6aSNmKTvw9X2L6Vv0QTCGvwM3hcUk30rE5Md7ZEfLIoWeyu/4RoSZxPrkyPlcy7d6nLsbUpXFf9nflqZZcMEHP0nOu5NAw3xn9/Vq4Ftj6EotmJ5IGgpqc/ju7LJTNaCnbW8eKN1v/5a9aPbjKxA0z6sugC72hWxt6dBOGYyauEm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OchuF7qbRFwb0BbiVVoRi51ae1qi9BIOtE+t3mYNZrs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e8haC8qmplCnfTBnJtkSuhhQw08NuU1hI/kXHal1CJL8A7gRDxrWhUdpQMSVYon2d9fzB0eFYRPZIOtC0AKrpaD1/Db1sSNiRmIfmJ7sU0mf2Z/EmdKCv9nQwvMticu4Rpfkvk/Xlyw5wqru1DNAP/aGUiyrEsWM+3vT+xEDnQDWN6DWNg/ZyJx92RGB+8a74brjpskt8uRkC7VcUpLlNvjxnBQBbRyhbU6F1Z5zKWSrAJephpEJx5d8sP772iYpYZPYLF77lIKZT1Ac19wTT4H57OoOzz4/TLxJ6IWg1lytcIifO8VAR1VduK4I4dmp7fR8eIc2XU2B9IdCP34+GbPS4JQjQzrACVPKKY+luXvFfdGlIwhHkjWMwHvF24EfwsisZGliZ+cZ6KvIuqtpurcIy1ptF2so", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Oen0l+fB940iI662VzJEdW8HlfX1WAs0hJ8+9xuEoyk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vCw0hRo3hHawG1Mt3zGT/F1TE8r5pwT+umRc3iyNUodj9ONfCRtBSzmfw5393kKamYCLA0j35Pc6e9Jy2nvMei235DEvbeK6U58pO0tdmuAcsOM9lC+/Csg8Aur2ecZcvDUmzdsDHRr+Jz+Vr/CgHTnZcg3p3jUcTgXop9HtQ1D7N+faVMUrBGdRvMQ5FBsPKRF8hxqnMRMcOtAR0XvTbQoID6EUF3miB2ASd5/UxDlO+L3sV2+Zt1UcWAmHlXbP8nt6m9vR3bl1S1DBn0PqtS2siBodN+tMzFQRztpddlZGOIFzZaY7w/V6DJv6wMAy0usH1nfqlE8SgCKr0yT/8k1rdhSORf9gl9VptAt0y5HPlLj97NICZpg8wA8TNhWNrgBkGDUHfjBwvkBmGwM5x8Qj/lkRf07T", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Of+fq+HwOW6R5CnyDCNLaLF4rAOAlqEHm9CwYZ+t6js", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XuB8BXPe/GD5NMW3TfeWT7E1wks69Hi+S7io/J3cdEGWIU5yQePCc4O/z2mTCijpNZiBnzlEQFth1EQpD5JX3Qt5siBq9OjmCMC9P05+du1jSQRgjuZwp/gASt03cqJGrNpuzyynEdpQ3VAY9ey9rByVvUDUCjSFmHc2M5pOezdIlgEThniUICb5CHufkV7xkY022gCLRbDEaDUSgihg/TR2bePNT+soe7yhhz4KmymEfdLmY4pTVN3w5Ua6ZxDXnw1OcWHwsxz/yS44tBM25QGX68+zx5i4SwFez+iZkPxrBJg3QJe9gWYiffb5u8SQvKfpR6yExnDwsibwsuWwhDM4uwrfgbslpcTPcEwGWhpXvfIeDw2IbUp62vcxOzeW0qbK/1LWsHpHI/bIQUQRvavmT7tCGaHX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OfM/XI9mIx3E41PxYzfwX5IAhmCJvAsrUao/IXuw14M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8B5MvKxlJOp4HC7SpkeMTtUSPTzZ0Nk5Ua21OHCOBPyzAbAcELZXB9V7rxTz7WytevmHU0NPN/Rfp3tXC59relgJdhz6+AqAVBKvEdPiIg2nIurloFGBQ6W/hWjFcWYCM4YZTOiWYyMaZorSF1dsAzvn7vWcoGuR4uf2xkpMaHNbO98nPL3/U+uLFd2W42Xdndt6lCPGhfkdOKrVEmwFbct90eQv/B5t/1Wx+W56nf5FFVTWMsqYg8o3lY4kGDpqVv4jUDeuQlPssTn/jLwqS0t25P/c3sO1YSUUOdc2WGIv+cfvQWITJNqxtpNChtjm/XYmBW4K8dL2jMuJLJ3RBwXZnOPLvBX7f9gB+rJr3+EzM++ZZ/9slYvgdU05G9D9yuoBtbxqhZNOVtrIyxs9Tfh/J090A1cc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OfP8qCFcbMDAA3SX9I+LWbkRVV1i9IxGWyh3WRTrkdY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/xFzJ+DjRQQn5LlwNv25FOBsh3wyvnJ4FJplcdUtJDrDxQe6YMquiyLzVVGOj0rTyex+Ila6dq+60TNEJqwZ06gNmnPuDQgQlYrAd46JKyO1iFTk1kW9Opgty7MmHGcrw5RNU+CtetuO2L+jzCKhAxASzgiDWuqwPm2CwX11HBqIWb0isLKA+LSS5FS2RbKSgrr3xT2j2BTcqDMbqLxHbVffFmIcyrTt8NLxUpVDvhxbwQhJvHtHGxssCZJeaHl0+5mtJg0mCEuXDYKnapZr4Inms+uhqYYYB7RwaK55hOHVHcechfoQX1PkTYNe7iLqXKN8ws1cush971mivXH+QGFvpJrIm31bYJ1CR/Cad/Hie+jAjc30cssjp2gHz7xVd2MMuuMpvHCiiorNKKg6O7OnotVZGZ1+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OfW/i30c/6gxKoDoM3kAQWcckG57Vcw/1p1pyUvo49I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rts2kmG3HdSvqGTYV4S7z8D7sSlqiIUtcO8zg20U1flvchD2zupoZnuHtGffh/IDKqW5DY+VDSoJTDZK80VAV0Y7/t79ca+zY0Eu+NRcX+Qbw3v/cIMbrdxjA5wV5j/vX5PIBAa1pEmci9O4gTYfKUuLtDAt4c3WnQoyx4Je1V3RVr31OM92g6/P5xD5uzXMru5gGuWYMwb6AQJ4HzPy+fN3dcTixt9mMXc3tpWSVbAigvBcI6r74oEXZax6F+Tey3S6cKGuB4QtodZx/qZwywUaviqG/fFsqO8Uchltt44qPwLAsF0hP4n1u98Uhd+zS461mR6l9eeT3eGEA+gIj0XYnIz8LlWnhjgFdYWE6mm7dFCtTJ4EYvG4dOVSgEG/FOtVsDR5QGpOb7lc1/OCBxtx8zLgP3Fz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OgD6sNPkICxZLCoAE5LkK2nH7SDq4eKHkeO7XNfbcYg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MD5fnEYELZ2WmgH6HPzBf341+YFQv/P3lXhY9n/wWzHIZ2RwNWAXvnF6ZZbS9Q7YUbIsJ39F7XzvdCThpX1sIx0MHGeiN9A33hQDA/SDpPA3A5npjPzX+dZ6nzLXfGLFECLBd5OH8p1g4u/PNqhHkz3LvDqo3d33f0jOmPZs7p6/c0AkEnuk1k6iwG88y77gHZRZbX5QILee3d+ZTYDuLCnquAo5jGmCjnjLGpni5tUYw977iuHD6efGI5HkV2dXzeVZieIKAquCDE11IaMj/zu1KyeFYlEfPYfgYQjoEBCr/3feaqtbNHFzdWNEBhkr/B0FFmYPfh6VyB68W//0P2Iir8Iy3tv70QkL53/VdUiYhYc9v9bV7mtD0X75sUVHr0R5ic5s+WjxKszSp6vKm+BYoL7pkMoH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OgRAiQP2+wPA04555WnSKj0hsSqSR6UrBqpuNmrHlJE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bdObgHh/95WqyJy/y2mzHCNDkWQw4FRViiMVfWPT2Fxi2HRy6eAfwIbNSVjvlkOeNvwch2t+G7j/QI7RwuwzXa6l3jwEHjWdejT6k8842cQDvVh8NQh202al5WhXkEqGepCcKRYeBz6hpjpxPtsq0LBW9911gwFSh361LGkD5Z81z1qVHo12IiZvw5DLkKMmriaSHa6CnEWs7tQErT/fjq5IzsLYB49KMpjVdLJwjZ2L66V7ee/Gm8/sHGtWSEwBHo8LzNZaeHhslP2kivKSlwvs8x06IXdJnCB4fWkxKxgBdVZgYuR+dIjgZfWxwZPxc+yZ42JgFlq9TBSbW19CTjQS11KJfOXuSmD4AHr8t+vHamfgN3f99J8AJXik0BiKYGeoJiiyF/w/CpZ4yimtKb0+Cx6t8mHf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Oh/sao3IKXHct8Q/1ulKWIaWOV/gCwG/by8ASpAxQys", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VwfypmzGRNulryQCgBbjs1VyG790qk8uNLZ/0hU4G6tf+jvvER6gBOa62agC+w1YWjmfEoDTwXr7u5UJQz6F76w+Y6OI8XP3fJmOo2H/EUMFXnqAGYXUyNEu8tXp4FMwQow33z1yEeujD5zqQwZtrnoPBnsRSog2s/AIKOl0b4s3kurc11G70XCu0kjSN39ZHH7F0N6v6RaWnreVSojF/ut2UzO+iIbsTona3c99R7i4p09BSQFm4BaR6N7I40ZGxPmG/1vsQvPYeuk2l80AKU7ZHZlvufiNKbpDEzwc2EwO8HcgClwHpF3eyWop6E5XoYHRKigVijzbvft3gj/TKs3/csp6lbA+/lmyuRg67L9Ywj191ovoS2h9MPmYXD8BKpe/NPzCZUwgnNoADo2Z8vDo6qKjpsjE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OheAF6LapgF0IXZx2/YhNFbEaijDDkqOAXJBrPFIhNo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c+KGNOt0hyQVy78f7d6xrZ+JSOfisII+Ju/17ycOGG+pl07AAloa/f4R1pnkHOWHp0OPJFteQ6w78IfqcF4AUYW9waaTHpSE4yJtwqR6MX5r4Rcg4ZKOyDIQ6pGdR0wepmddZiZ6ATKaWNf3DttTxLU/J7XgnfY5jYNf1rrf3R34Jadlt1oMtSOW1uW6MyVyggyi2kx383Gc+R7pS+3gflKWclNaX93DfPoPyPilpBBfiCHDNTVvg1D8SN+tNaBDQT2lr0fH7cUCyPL3hs7sfcT1cPBOqv4+AmOpHTXUqg7d73XJNQAIf7xtceOG7LP44C90pKRC6Ze4c+yYbdRvtw9cQY0CnnTRiybTqO4w+2NfPFcDNjoO291zytYoeL+vapRunfby5kzevt4cZfiqJyfeyx00OuaK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OhuaY2viPaPZowxmytHThFT6xFz8nDKQt3c08JKQtqk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8ManDwkkpMuCAK2wfCELYiFmSeB6ZFgk2/bBoy+lai8ZQODewBeSCa00zFg1F2viDxLFdmTtzn60wrQW7IeJPmTgE8EPyy2DNoTgBQCv1VIZ2k2//yFymCFiwhopfGR7GnWYtqJmGE9S5zneIWzlpT28tdPBsrveY9xL9lo8Ac76SkrFDlL4bz6K+GFhOkNpLN1ovlOCPm8U2JfgYQ23lbgBDp7t7lxI5gbrRCIBVMxbosSPzY/njuNxBsJhBN0ucXvQcv20dwXYZ/Rcr25tiTAzyR+bOa/40tO0Bj4eICxR2VFakY7yCn4L9ZwG2AeOq+7agMUugtXl9kiXxOdeGa0TD/Oa96WOoKq6ZruRA8WpPpg15cX5Xkh3ZB7PCrlcAcE+9LB0GNNDKGbqxWV5y/X+IQyMOkp4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OiHlEpgRYlJjUj51yJVWKA3F8MbgYxPfLWLFh40JXhQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Hg8zvU3LGcKAc8MPOVijlMO2OU0OhpgkSF1Mv35x91T6ZUSuUfuD6Uua59+3HV6eL3DSjVQ5B5yh2Qa4Vmq403KR4YwK9ABGZAZwC8i//66TXLj3r33/ub4RWOeO0ztxbFNRM2gEH3+g6d3ajhla6D8vXTyqTZeY3VhjLVJJiGcuCl4FJlwI2xPCYH0v+D1aTgZgakzXSZ4KpiGZj5jrP63M5l24vVEWQ93KS65Eu0xb7kii8VI7qjQUD4A4kjb6zuogJ/5DoP7DMv9TiSgOMgrEwtJVBAs7D89uiRIow1tLibiEa0fj5uzZk0XwCR8bLlTj38vFyLwlXw17JUL5I350ksERDbUvBRpucxaWbobNPqeAmrg+/uesMzdKRYHN3LOcCx4g61gpVmqvkqI5ZaqAPP7+g8F1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OiKWRkMB+oQ7LHsgMtbEo77c7C5/iDb7YuowxBtEddE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "84tNG7LQ1MlyhIINIXcJZ5B3uHjSeqI2wA8PW3IOnyNSwRDHNRZrNoVBZfKoJRAQt3V2kGgslyvxEPJ/PTYM3tc+CgRoj9vNkYnYGzPL59aH9EVjbwGaf4W821vKLPt0lc95O/Mp8D3YWK4cJeNxx6lAx8WASaZwAPlO34bbqYgdRCu0kvqAMJYnKFKM8/z9L60VHUievWXOt1nPeNgjOgS6MCzoYsXzB8ct5IKixPDGUmc/4k0itJtRMVfFyzDQVDpQzlDKyATiH4yg/ylMu8U5CTb6WvPriCsItmyNhFZwid1Can7NK6h87jN8/X5yiSredwMA6FWPOLa4C3IqHoFYvGlkuxw51PHL2QCVgVUOf1vVy08W7iGFzZj+awVYiYdLOr7wYSntzekjN+cOOhO0xs1YxDV4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OiOAFwfxFP0Xj/eF9pTt2YteTp+VLbVwTtf+r4Ks4dk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vzvTAUUlOb+A6GWQv2zCNb5avc0C50tYNr1bVUclIbn0nG7xSyThCC8XDBClbK3UcEHJkM+qdB25qRbnbnyZexxRQcZqDcTkHCDor6HJDnzk7ozfB3ngnsTehEhvzGT/opg+w/f1BHnsBgH+eIJLMGi/nbSC6eCXWh2aMcRqN+4VFGlISaQAGbvndE2CKH7FPmVBK0Dcjd1Ug0xxyuOrQ3OP+97inNcqK3xqulz4iRXzRG5bZU7r367LUx//Kc7CmE37JLv7HuEExEjKeSyK7gfIHwVmdfJaVdccn57oFDAIRTOGlG4KPQ54isKWDyaV9uGpsTZTbfAoQJB2eJrP6hV6QHv5qPqbAiz6imBCbwO5y9e9jkC6XT1SaXAJ4nbrpJr4Svwc8WUvCUS02d86RoUQD62ib48d", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Oimcwi/1J4CcoPUdWo3EvM6bA8Kf8Fu92Vl++VrHuYM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4h+spEm6DedcvRMjQUc/dY0rEx+HI6fREInq0NLpDd6lJOdyoQBaEIz1N3udwtnFS8cOYQD6LVJgWD859F4HEQBnWI70J7JBP+W71bAtZ6j1E/PGusUgXojkD9gfW+4j42x+8l4PSqvXld45IrLDfPgVu1Gxg61dk36A1PsrqyCR4JhZBjkz7KGwTls3L5orMEK1hvJSg01HcHUGsVEryQMrHxg+Bacdw7AuxKVk2kvWyEpRvnNNL5nN322HIynGYtr3y6sgMEu7DSySkCYQBp9C/5LJNlKwXUcvkUlUSCgWxmRtuxp7wJbe9i9tTr1zmDiTgbugvTPkkr8Pg3Cy3Aktv0H1fRZttPbprqJjzJx9hPMIKGQekvs1QRypVsGcpQTR7O8VUNdiCcBZwYbbJKr6V658npA8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Oj7+tod6aXCAYHehjaTwddgEMCmYEvMemzU04m0H0ls", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x3sMiMDW1jO3cs3qZCqJVKRwUyj6lPPZ/OM00Jy5wXoYmv4WGUn9aNignd5ydK4FGjM75b/XAL45WB9p1xA75WzjtWB47A6hJhuDqmQ22PyeLCBQp+oPyPSQSZE6IvvodqeFnlkDo/y++g5ak/dDnTlfClThLr1HcUkxqh8F0AhNz0scXVXRS8E1wJAUcozd8OlDBdZ+5llPxa+Auml/PpdqbMLr2D9wg81NUY4GdSaV2NRlHEhmonu4RorlU/z37AgJikIWY/VuVKUIOchjNMISI7reR5XUPQ97ehV6IOtvWk5TAftrxROX6vLZeYwFqWp5WD5juAElV1ybdeCylGW4G9JZnTC/KzKq1gLWcsbh1DTNwsbQJKAbLaQ+1yA+FaxYDUYT65mTMRvIStSQEVa3oOc+dxSO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ok9j9/Weul5Vmrihpzd7htglJPkIxg/MtkgD5CF0VEw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f1nBtkpEb4AAhctB/f3YctS1BIg0ggVlaE8Evrz8xt1GCOYqGBTLjqBI4GM0zMm67kNWuXzUbuBxm1ir6ZAzccYe8/Q2qS3lloR2+9bsMXhTy8uLLXnBvtDdNTGs+5eKepuwBZI3z8bLyOSilHutHsza8pNFXuUh9oTowTqvtmuSnEXqM2/jkoO4OP4ZqeLeBnJz+3MHcIufNaCzGebKCU1zeUWV9R77FaxaJvYyP39EHcUvLjobhCULkvVooa/BiBlehfAVya48bS93hlwdSE/0gaq9lj4VDjl6oG9wYaK0w5NuIyLcSCs3bZS9BgNhdgF4NzM0xb+nG2vzrfIE5+2EcGGhxHssndWGP/HiOYhdgIcBc+f5kMjVBh37Vnta+ci0O0faj4JDIdBKAsSoSDo1AgiW5TBi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OkFDbm+3MsOKjFRaSW1MdtgTBgZkuYdRbnGWg+Gk6Bs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WOEnaqTVb8MpfBbVHrQNbsIDQpObFHBzv7pmokrmJogPlBsE0edXnBrCoPDjoBZgZxoX5QMyeKY4Q4VUOstZxRXbfd6Fe0fRaXCXJSfzD8cN6p6hxwdKj/zsuznjBBQPKoCgZDHPLATKsqTihoLpQuYIZI2l4/jqpdWWllkFt3Z0WBPAwQjH2y/HRu8Sdl5jXmwlZrBIX3RP/t5UwKbNj7D0xSD8zDHDo6tVV9J7E9OUrQgJUMfaYsqQtiwFknx0ePxZXUuRQu2Hjcs7/OFf6rtUMOu5sJvzy5kxM8W7zvtoDRIUykuQshBxbEH3jugq+QtiQ5Yi22kcsfSjjzJzS+N+IxnT0lMoIa+oQQz2hGjGPW2mHL9wrqaBiOHYZuqNlD+BVjqNc3yWAU91nq0X0ypGHM3jmqmV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OkbzqyxdMXNI09lOw25//XTMrgBz4RyCmSNMwSd64vg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mw2o2JWs85Dm1CHUWSKNb2O1vs2lkLrpKfhWIYFTHY6f8myin7q0aXhkVKBsjJcVaVoJrMItWVumE4dl/oodnvEay2ze7gx0YMZHPIAlRtjOpH1w64EbVyyd8dWj5is0GEgXETlsSiqiQJyS45dLdsYxM9l6C+HfCFHMINncpad0RFqQ2YS29tMmgyD6++dvlvhhiNb71B/Gj8kNV0N8Yxt4QP0Cy2w6aAqE2cYG5MC+6PTrb04mA8nYHBwu5Yt5b3FpAF2gL1FGyAxSvanpssMWblmls/Mw093CuWRf+PuaitvRlNvZkuU0LvtEzi65mYZwec0XnIp9MhtL4/VWjSvrlLIFUEhA9OPqe5hK2rgAaYr77pIX13nRux7cckD5PwgfIx3pkX76Iaxoh3TcFql++eGwBN0Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OltT+2wzbcNwVoEgR3Y5TxphMzdeSQmNVWLwYagESZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dmf4+LkpD5KiGCLqf8Waz5Mo/MJHx1Npeji2pVH5jQUH6j2Juh9p6cQB2GS61BWlR77Bs/UdDis5J35FFPHyrr1y6XQcIkauLGshqgDHxWGNiYV7Nk8saXEw73EZp/hc0VCO0kSMPSt6r0P3ed91ObcqoHhXBCKuN7Mik8y8X16phl4laIjhyw39+QjJZQ9IPFdYRIUn41ncymyE7Uc/kYTtiR3mtSQQ9pqC+uEqAtO0KGOhcTsPIPSt6Akhi7E0w+Jm4vDGwj2Kf5hu2diTwPRrX/5hUI5XUdbsanet5G3PIMQnjZeUlVOnv/6KreY1eS3hhljnBAeSWR5LbCTPK/d5d2QVMIXHl9zQ69OE3kXhUdGnobwswHg80H0pmCvhRx2Aons+O38Te3hv/EjE5sQm87rD19OK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OnVUxCiNmH9gCkWkeKt2oiUdY782Q86e2MksqXgOWw0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5wqnV72Jv9soFGG589oG0hVFcV/3nlaTcpjukCELpvrjk2UzvdNciqDrS2kzJNdFrvcGaJjzRda3QKB/1IbOlkf9Fu/7sPyPywEHQbAJFMndSw5MgIbSg9ThjLiU3KrIZ9KYCf+T8CfiyjEtyrHXIRMmVFQC5zetv6AAtzf4rbwuseCGFF5fFPRYJp3Ok0hqwsK1dlLHxM3VxhQxrArzB2m8yMwV0agw1v/YBPOECDSOXqUzmnD8EYoqXsPhm7jIlLl5rDkVsZ8nDC8O7B9fpJSb0WN/qc8P0ZBe9dw3UYSIyqswGr2tF7VmGaP3Zq2sacJxltjbbPJosB+ASaJXOwvBkXhnrf8I6L1HFu3ukfMgcLuDsS7e8A9+FBxt/3tYhA+UwsG6mW6kAK/0SGzhPYKm5t5lr33n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OoTGYDePLYDHmmVzFB3nWTuP4Qm3vZ4wnzq6Zr6gcaI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ekw1TWihXPanISO1Ck2p2XoX2u/4eeouTCFBFsKI5It5pfrkXsv/tUYyNtdEYmSEZ3wCRg7lC/JOLFOYU7vRMm0T9Q7LJHQf6esqJ401VTL2IzNuayyBYzkpLPtKtMZQfeUyzDYGTWgoVFyzmfrzZ0eIkHpVE31py/bf/TqgbeWric+cprvMX9y8445i6hV6R+zeFH1GUZ3kcJfqrWPquiRYW59VKTrmhpeUAqZNIT1ti0Uftfv3ey4D+b3WAgVtRo0t/CaS+IxbdGKH2Rf3eucAa5BQXIpkbsBz302kPDh7NJX12KrtoxaVzwP3BUH95EbF0ZSHEiHTBsd/I06u6rCxnKgJf8HBo+odzee/umwqLrqJkbmybK9M3PhrJBdPg7QeG7sucp9WrLU1q6GOnGRGu517YFKn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OpZW8abXlRU2m4AAD+4fx6q5tpZLYRwQni4u91fyKOk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EKL4vwDkO1C3jS8KYFyM8iwXtsRxa4pTL9E59RRI0eYsyxlTe+/ZdzAuiikrGmFGHmFi74KwI13u6Zs7PmMWVtoweoLgDmVg4P6Zk2+Om6d6xxNXgbLTxxqmc3DZpzrOpcYU85JaeHNTgWorpOybsEP9WrKASF8MkydW2njwyT8YBXYMRm74eEb7wyeaMz04c3IfSSIKZQ/5NzBIMlJftppbjiG8davzkkdaIC8qEVaw5UgATSPX/jgr0LRj7kphw91zLNdWkSgiVjuUfTwUeJof5xUqEH+1fK/cHqeJM+cW+xfK769WAMuAB9h/wazeHk+POzLknDwRQ7g4GYkskOAjkYRvvMxJwXTPn6FQvPLZbXETu8qpJYUgx3SPy8KDoSNoU5xW/vHE3wi/pkRhqA1IiNtXZ3P3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OrOYLX5sAaf0qvs9HwU4y5VuFRQ5x1Fv8uSVLPqzVVw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8F08L66Lad8+eUPoQ54xFxyjDONobkKMGGWw7r27AC3slfwJKjUbPeQ+WRHy3pbtsMszpi4zveuRUybEnd7s4Qd5aB6ZfdAFIdIjaF1Sc040ragIQZY1ykVKUuG0PIRiMncYs0Pmcs3bvBN1f8rKJxOLSMOjJZBykzs0SBzHqiK568aVurJ8wsGwwNiTCmR1ZeSA2oV8RVt7F/PhL089p0yntk2i6QACrWcqFvAgqW5dWHzkAUrGF1xWIx1K0QntsQ32B8zt280TJ8x6Z4+X9E/jcJHI8+RWFxUh0NiZrmW38hlQ7AXpepQ8W73ni4LTRsugYJyo5YrHFYapiakRL2a9BKsBERcVHE9c+S5lhxpHhtr92Jdl9uo78Gq+mIr/NlqNxH3ib0lRsswpcUodUdqOgUkoN1mX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OrqHhMR20c+dQi9aezQpzKT8JLI0AAR7Ub6sMlLsKM0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yl7hLIvqAM2FteEiJqlLAiSP/kfML1d/xWj59PLx0qLm3A1jVeDALn7UfOlDT96Oyxsp2Vk1v66wDly6NW9WyXOUUMyGwAxqysSIbQda15mcyf2pOt8w+mf+A/dBOaKz6FCX2xiIACGdqozp6LULzdOkbgjLCo681zIAKw0aAT+ELOrtdPydM697ay8SlwDYNY4n4LnO4I3UynyPNqbh3bDzQTTm8Sgu8fGp9ehrE+13gi1iX995I5cViZcBPO4mS9LqlntNuRcDiBxY+BDtelxPtP/NdLA+Hzrjnx5WzVge3utyVVa/dCmC17IDy1wtrxt8BRJpMwHBAeDB8RINNvuYdsRLWOPvnZHOyoG9WtW2Hzf7oWpcE+7fedk04WCNBMPbc2cXJGF8NJDPSy4wwFADGdxRRfUu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Orw6e/wkqcogTxBOC5+4p3v2geB1VCl1NPjw+QKYywM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OU/oBAD4l8vYSWFgyQugZGCDBboZMxLCQcZy5kNSaAnU7z6IW1c4YkzPvIWVcxyhgcqbDo/271QogtstuGFjAi9FbUAvRnP2KytMAFq8GHuQFzDIjLyiC8JDsUvIi/JBTFyA2EE13vPW5A8wJvzsoAo++ktExY0I8hDtnC8k0n2E0YgGWA2+gyb4iXZBoRZp9H2EbjQsxItLihQrc8QYYdEUkglrODIDpFhbyZXdnFMfovLqLttRZKhH/UVJYM7kxih6AWOPeJuJHEU/ZBhrThDzs3ZSP4VIBV6CG2h6mlzKbE7fm2rnKDy3Fo2Ma+0h7X+R0s3dlqrtan1aEHGjmCihwLWgwVLY5ZLedUOl3TujshGvnl6GGJszGkzbZY5lJS336RrL4IjEL3Ei55OtEtNBe7kxMAi1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OsguK472aLgUAJ1mtZPXI7up6PPOAwbL6dQVuSmkLt4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yvqcSkWa51JPccQADW7eKA3+eVehTnbNXn55642eMxlJmPtcqz5E7V4mFxXauq4H7YNc24SxdD2NrEYUzpnVJYpWAwozjHdlOeflFNOODqDjEpNMk9GwqyNw7ua0pZzcanP74EIv+xTjyC/sqPJbMQouK1Fk6og1vPLR0U5xyTByJQceb7VE2UxyCYkARsGNg7wLlJUNL5g3FYsbh8dcrtArDwgH7gYIYwSgjAn9c4WECYLHdZFkYWfPyXkIxLzKQKfwiG5vRBWQETfPQUzY7pLjZjT9TqGSmtG342/wpWPF7gXr50tWEAJpWhjaV+ecTIgExfAd8EMOwcU5E4WU+Bp2PUe3OBSKz/oHh7ZjPoQw0OWEaIz5TFbhQ210dQ5oHocrTuPQtWCD8rnIcYXK3gAG1IWnB7Zw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ot8eqoEq2TIPsbcRoNaRKXbA8YFukj50Kd3AEVDjghU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nwo8cy0+6m21LfBW42iTqqmTpZYyPd7OVeG5fyQy0phW8UKN0M7uDvuUwGz9+sYK2lJu/Ai2bLraBSPU+hcb6oDcnvHdicRB9JOJcajBnGyS0iwjqrE7BwyacbuEnc375Gj/R5AC61pyBnqfOkvy+VaewjOph4bEzc4hjQ4oFIHtVr7Evwe2oSeobmX1oWOmC5TizIMHZqW2Eu9Iw036TAHHYPKct8zrKP6xMgEkkz2V733tWBf2pQf1Zi00G9ISw8vHyXuqp886Vx+lVmMd9wr6jtfJnM5sQjgPQ0suldgjt4oy4b2UvWbov2zAZcyedoAKOeKL56yLS+5oefRfZZb/A7r3C+W/N+L2k62YacFNazMbKkyTd91Yh5oHH/LelUGuvs25lz1F9QOTQhO51OYdEl4eMuCq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OtZw465hSFWDW9BtNd/3X+3Ffq7oq7zQAnE8CpjCbRc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "D9Vj3TMc+lTsaaNlaqpXvOUR3qFfQCT5NKNLs74PcaeQJCtJCon5PLkP5iK8UNCOERhs1CuHClx+Uzd1eBVjaL1jnFWtmL9sgzg41lG5slHl+VGJQ5VIrcpddzs0pp62xT1s33TnClZZ4DnON4G6prcz+4uysYwsW0IOnAApNyBCDfqO+8EtoU5Kg6TGjJrR4XGV8ND0bvaD1sGyZEZnIBU7xEmg3EO0eq2F3Yl73815DJ3gBwz6xvlWEnlRNsikil9EeBvRYLtHJh5xX7YSweObPdmNTxEtOGgYjCa4B5r6f2vHMDcVL4M2aI9dVG8gCR2pv8MXIFdsPlOi4rG1ix9CNeZG3BnDs9w+l+bO5HP26OUW4pD3en4ESYFfINO93iT+sIvP767MEcBbzbXz8DasS08EdTUj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "OwchnJYD+jQxE0VObvRlJ6NQ/f6gGg2AXsFq1tk4piU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EqyA/8Y5CoQuugR8F71ypRqJcy9xtkmhMYSV5GJJWTrIQPDormKHdIuvOXuQz16jfsXZq2Ew/2rdWJIUG9YLMnqYO7dr2Ks5Aj6ZyzJx+84D/J2+Zwo/xLAh2w4PMMydL1GZDviF8bFUElt+A5wFLHmQuwTv5G9nkTC50F+JwTdS4BEvSkIxIbI4gJnUhC+YsEusLU7+pphzoYvmwZCb8PlwcvVJG8WTO6Ipg1u7tkM3zNc0B9lOuwqS9RdwcjSAvlMDDl2085It4JxN8ugfLr1FwWBbh4iqk05UM1FcTD1rQCz36SfrJHtJljNX1G4g3DX+oRYE+ZUbaum1wTrihdWGvqxzoQWDuyCAVWpbXjOE330ZgD9nw1qXAP/NtNswPZvvx1wJ97ovDcs03I+tBv2hoCcLC3DY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Oz3C8LifCuf6TCtjDeiDCgVratodRpdJ3ncKJ9YrUb4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "h0/h2uugJl9yL6R3NcLtpHjPjMElrGBelbew4eU5sPgsqtqU0Pe+sIbSJEpNlhYDALR85Cd8WRs1BMW/HOkaO/L72FCJy+G4woRc6spBCK4O1AChMZl/KdCLTGIIUyI2kYQatsvFFXK101n1q2NUkzagg8XVScd9sFqr4wlrbZXO1wFOZUFumajVxisXVpe0dRIYG6tiMg4StHL5On2wr+whMuo2XBsNmg4AtrbA/K4KJvZHOIFNeNjosGP8XXQbG5P892KW/FjZWVWSX0iX57QuJr+7i3HWsKG6V5eWDWj8mCNaycfHEvteRr+JvAWQHw7Sv7KPGFoMTrNE2pR5bP570F2751zj8mWT/VZl7ns0qhBxpg3V4u+xJmPev12SaV1lf8sIg8xgcpw56YPE9/XdwcEcof5o", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Oz5gkjhBLS7jeFrSb0uvkIUovcr2+FwI2tLgLDGhiD4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dmqGP5Wdscgyd5FTCeMyoghcgnHCoKGfWYUD33BkXTVwpv0I7Wz6mk0yYbSSgixT/VzHUPMozQikDmrLiSdYUkGP+EsP5z+FDbaxwisJ1cATdjezwCOtQbgeM2X17DZdTejmIChxZmd3MtyTJ+2OSikhEirdVPljWbxGOlk3tAZceAN15OWnKWFh9FGCc+fe7Mt8m7+m5gZYMcNFDGc8DoUx6AThD+GzfH20MYnZNDxJmw2IBpHffoL7dDCeDIsKFgQIkOUNz+Pzyy2khQX+VF+t0JqQFO6btKDK+yPiq7X4xyheq2MVcZ0o48kQZtWJZVql6SGlp3aPBLklYT8eoZVG3jAwLf8M8pxbKVtjnt4xmOKss8D8B48XeiQjiGs8X2ymWsrNcCjIbEaB/XbMvEFKOGfj7uc1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "P/1o2mrjmoVkfX1iml/vgIhG/GrVikYLCp8wGAwEoak", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pBCjo4yHcvi3nKi0SPCVE6ZBe/Y5vvmz2ouxfzoBio3hKuxYNF1g1BbvntEr+bHADc1iXQ3u+wsHO8eWf1qlgjc+1iwJ8unl8hoZw6IiJFEMXOMxEy7zYEht3HykDkQmphgTa9dv3GzQOZ25pu3FwebWlyn0Wxkx6IdMP6ujWiFeM/ccN1T1hQKPQQpGmJ4Bq+LHji3jA1HIi9Wz0ZDKO7U67m96ZMSKS6a27bj1tFxp213FJ4vdTWQMpQa7xugmENe9zrGc5RRFL2/08WsKlhOV2tcf8iKhAqHm5+haxdSfRYoj70P1pCzZyGcwCYZINO+gb4pdV/spc/AMyFu2NVmyeg4GOv0C5Iy8tbocgw0IiAyB+d3sihXGhDL1e8obxEfk9LylYgmcAJYuJG5aVCNC91Gr0uYQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "P/hxNlUf8DL1vY+dYtq9BLSSd/DVs6ZPLLTsYs/qQEU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wBRB6naeXww9sGHWhKyV5QPHaT6vcb6GW5Q4b+kdzGJj2r0mZkamAcsz7ZQBv7wbWMXdXAQZoZ1VUiTDelO0wpmg7WCxz2tmy7rsdvvATxbky4Is+TbiysJzOyl0R6fxgwM/LAGln8dZrTmI73upOkB2cHnWF6vUR+DuuChyEh4GnwN6srhi3fCiaO12HILNG/ew0mcazgXi4IdAbXtyhp/5V211QV9L4IMoextuSnh8qOxO2+S+25izct7LIlldE19XJSUDlmm8qO6QpbQwf7UJzyNWVHjc5k5H0JlHiqB5JK1d94ViFBOg0e2NbIptnxlBhS3Qoq3hf+nRzUcgEw3A9m25GWBEB7HfEUeg1+vVFCzSAGyXQgTVDWvezQVATA8uvXKVv+5Pta2BawJg8EU35Cum/gZz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "P0cWYFnuhLmUc0LjXMis0qQyrVsiwsQ85eZMzUljk74", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v4/jixeD+KF0WyeOydofxVtgfKbFW2Vj8tN8m3v1F5IX2MXNxFfBxU2oBlPpXAcoS9e8DE2ce9pITuzLmJl1clJtfg5SS+4YFo5fJsOdSTyH8ASvhYdAQJWFjqjehlrGDnvv9zp5vHNG9VYDvMzNlk3pYphVFayqWnQryus64lcBVFl1Q3kTIQ/ajoGZzfW56U6hycn+ZHTDqvaPheYXYpgt9m26lTNC+CvDh5ukpBiqrrZfJ1WZ86gbwZUBjpDHJLVJXfUpmW9OHDMI2F2l4kawNl7LDntfCSYNiW5DLVirru7jO73cSQV5Ti6xeL9639p2I4wBAesvJNl9DTYUr1BXciqM+bEVMIjvdGgr3K8kgkZjNMNlThDKBgZcg1g45x46E5nMW4TNkVWIZ4pYC7+bb5OTRg8N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "P1o/r+IWs5HlkVKTAeldW6xts69qXijRx0alpjF2xoE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5JpZoqepcz4z2/WIfdbtsbjTM+OTZKm7fBE+Txl8ZlH6jFo+6SE05gzrABUXCHEHdtnsBXY8DjNKT8FiGgdogtBsdayH/QzbpUQLwlnSqLEFAg3lRCgxfkdfk1AH3Pdog7XRDzYZEPuhHpVBkWW0y0RNMCKtr/HmiEfFZLeHHgJKSXbT/uWHBgSPI2SclrvUch3Tk7/ZPpRFA8KgnPb67WMbIL/UlkmF3LqpYUMAKyewLy1XhzIarqQtBpKgyqErSXGqqLcP4zoMJw+okds5hRVpRW3Lx/aRgYLAbd1rK2h6yVuuRtpOcmLois47LcXbOm81DPvLYlolX/K5r/7YXYn25M6y6VqlqapWZPbUU/JeYjHIGigkQbPJ1uNuQN+cAOxievcJI0EudPGO32AAvQ33Aa7Fv238", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "P39K+8JRPHwq3UBOzmyisggVGOWLU1bdy8ssdHbA/Zw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FosgTt5RARl80bTAiCqXgw8D9GU1Zmu8fBov6SYt2MlN4BgamrHmLzg1Ttp5hn6eKCgHLATi5DatA1IHeY37v8MwOy03097J7IlWhxYxVd7X3X0ls2eFm6ht8ISMddGGS5Q4qr2LGw5V8xJFT+gaRzPTL/890fI3LziknoXLn6gmjXjgXM2++scRjNFLat4tWUBVaU+DW25zrsXdId245LhoKT5jXaH3vAb8vq0nttROEgmDVkmw1UiLw/+oOZN1iRVVx1KvSbes4qPVWWh75odjMxgdwHoGdi3JY0WaEsmSZA7lP+Dy2anomYEI5hkFGC/UvxuS7kvn8kh9sZX8TGVUSwy3kT4clUaqulTi171ip82TdIXv0pm6xm8dDvrkZv1qszvHpDJMubBxFNCb3m94XebFXJCX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "P4u/BU62k7kzUlrHn8QxV539YEsgQGE566i+Ly58zhY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "30cnI+r0aLkjbwmKukJH0Ksh+xE8p+2LJ/VyW4r7EpGS4xaeYzNNnHVMScDD4rkc8wjiFYutTsoP936OjcKV4v0dX0oClHAFbkDSmCux4ZygE744/wmBHeaJiOklAa0cII0Wz8hLdh95XJJ9E5B+K4NDLoGmRz/Bgbc+PRTK9z8/f+yiYBcxREvPneGArFrIpjSGEAO16sfF/zIBCLU1A8anFZoVQK9LebFuc/FDCwwx3HrDg9Ld/K3E3Eluz82cnZoJURVPbHQZn9v/9AxGtp+cu1eQVuP7XKcvGI579b7+levDPCn2Fb0OfL1QGvYWco+z/pHKhq/ETXQ0Tc3rO54qk25IYex6K2lZ4Eb3f8VI47JR1dycBCndU+i9goqAw+c3MfJZc56n9rvKSTN1dm7+tN3y3Ndm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "P53bodh6PawDEYOs6qwHx9MaY5YivNBmO28oxuV5AA8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LfqJlznxhDumfAhp7Sr30hGQwt9iddCgn01Cgl8h0qNvQXT/InM+P5NAEmSGCdQz0s3UA2H/QCqPZB0EsfMIkEIiXYyr5VX9OJ/SzdwwhMDRGpoXPwV8A5G8two8lgsMLiAapdynlvUcvfRJ75ZD+ZCoHzbNvxWecyEldIab/t9N6I96in7BzMhaa1znrn1b3bKa+Qc3uOB+U7Su73cVJqjYS1Kstz5c54SJlqkM51tpJQ+WkPZ9mKytegW9jfwE3YQEl0SRmNQiisBFcL5nZJVe0NJM128f+C8W/kQbRDnb/jJCFtxAdlgw6wWjuaIF6nYiVB4qG5nS1EjtsPvhgqq7UDSC2ACaCzENhVDHLhdb6AG5zGf9Fr+41LuBHggOPseywQRJE79B07ApMWbPS4oWdohvDaJV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "P6n6IKG+0uSmQ/nLxtGntuUU0anmknFgRTEv9Pnu8G0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "O3ROtOgWwfefhZ3UCFY9JfzWlFi45BCRdSgIU5UM0+5pHi7BgIalHZ3eUaaSlCbnhAPQmwzecUTvIB8o0j+0nTVf6IOCTtER8U4/ryjoqHFTbCIi55rysyoSJ4Q0ppEfxo9Ds7igLzUzXYwJqf1dumarI7C1Rj2PhqXy4OTZbj0o8aNetdYvDV/TXrvQO4dvtH4YUs4o5Q4KShZDCdIuwgLwQagH8+HpIdryOUcL1Fx/mJwPVmUPnyRshn5SG1VnaayrfGgc/nYJ+2jh99ZPbMCHNZOdYFLD3GDzSx12t/ybtTH6SGeVPnKqKKB0UI8JqNrt5+FbfiriAPrGL4OPWVRr0PFZD/yiVuPs/1QDDHuoAxiQloe5SKGgFoMxDPydEyQjWJVV3ju7T3Ox7ARIFC2H/mIJcUst", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "P8BS34MnhAMB9EmqE2R9VeAXdvN1B5QcVESSYTpbFGs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PAByBtEDvcXHn1Ah4wjjr0c7FLqPlIvvD/pKCJFvkBC2DRgMcz9YkmvdaloF6dg+giIzs7RUvSIvBF/U5UzilyHkKqDGj4a/yBptgzbwUSl/1/xDsuA3cPR0k6sAqvOKUFQyNfahpZEK3y2Qr15VFfK0a47GWpYGMUciGCIlngdeNGHXOZiLwH0HeNMqDbmsKimw7eTw5WsNHAzQ0tKdgIwAutAqmj/7wIGOKQE3+6sd0hbXwqu5jhlKV0N82CMtgVnoyP3y7oA0Cxa46UTGvZfHNdqxWCTPHcq2qpylBfEwcpwmYjO72AObo83q/gkna0UocWGLWVCen79A7dELzEuplfFY6K+k3KypiImddmx8uSbI2MQS1PxGohLy1tHx6FoL9xZVezoY1OogyJQ3lY0z/sfH0x1i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PB2w4emolTPlI0pWbINOykzgzU1FB43PuvulzUwEGdE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HQHOdYnd1RotaKI/dOLaq34WOpUkzM6fTGIGONSZjGhli8XY3orI5P28FNAmtshppSX87jr85LUWDIwDtOn+2ABRtLF2wNxAzGmaZQDXWrFOihCC8OiqDlkLBCnnVDp6l+G/VHakx+gZtTcxrd0EkmyoCwOueLS+yk4KtmZMeEKOYgxgpZrS05Xo5GrkSY1UZ5qguJvPGXzgS15dHKIOE7UO5ED2eSCw888wkjrPYhtmk9gOLdMJBr6m8Q3t3Vj6t0PIOG1FlPtv5huHkidGAkqF/1YAsBFFK45PNl3Tpi1Ei90lXVV8CS1o17fJnnlamomZEBv3BzAx2r/esl0DKn7pz/2EleoiVTpFC2FKstU8f6gd4C20rRVEPGtws3OVG3iyplmiK+0WfDu9jTEi3kR+LwBRw32+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PBcZi3arVCqW9ofLkRuqAHEoQ3c3700+xUBPVP/hGqk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZjEald4gpys4leyS0oixIZ3mI8h5hlEJhm+y9tLIcZzWf28l/LOx7srK+AnDoufOT9ERxAzGwmfW2WXGPp19qm7GXqjVF8lbTqTuzT9qwygCt0WWnWgxjq+VyUq43AzecoJWyJ5vo0zwusBEHiMvSLUCY7tycYM64FqTsnH1X2nSdrbryxiPWQIe/49Ql8Vdjitze4it3cjngDmx1bcpnVXvwgq16S4CyEJqGxBx60AYCy3rIJQiiDb+nDJNBByLurhdMLgh1Sn48ZkQwCgnEZpUDyPxPrOxrjP9hWYiaF/mcNsERWC2/kwCu2btQ4djYwWoVeUKLKOiNXSLK+CgLTJC+NzDmXYSHwQWaHWhm90r9EybJB3i3erfXg3SOb7wQl1KDcIxU9QtMexcp23tzCktfemdMV2W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PEyNn+3qJqSscNLAQBeSv7zVUN8QgczeoQ1jTk1Vi60", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xPb/m7NEh+8RzFkXO7piOzBVfzw0eHddwGU0pDVr8P5jS3YpJexrTPmO+oltq2xt41PACwwl365PsU9NVZ7wqK7/TdxEqS6U8aAWn67BGCntbX2W6JaxXtXUi91yOVr6kw51sL2GkCVBFo/j0chEbPrggmiHYshdH/cUu81NqDeXjsruzmzTSTviofI09wj2Ak/VssB687nxGR38N2YWcwI8Jd15kK1svI5xM/C3025p5z0GhmAqhZql6J+c0bsfITzP3DZ2QHm35lKOrz/+Lr1+acqp87vhXQ2q+e5HANj4L9y5SEWstAczaQC78M5ETCyX3E1Wsa4jwF6FM5Qp1LPBg2pvM2PXrBMpxHwoPMBwccUrWo1X60iucYcJtWOdAYj96gfs/3okjV/dJ6ioL8Wud3yIU6cA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PH6Kfl4sP9O4uzboH3+GElCBUnj3VmFu/GUguSSTXlc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+x1X7JazZuVQHYikU9Bdl1IMlf0BwT5b3kPrwqDV8QQS+RAp0vZkOVrrZ0zPsgSz7VkGZfUOdykDtx5emd3F4ugTR4X2ypGHbQNBrFfR2T3Av+g9kp+cLx4mtEDroNmOn5qZenwflPz02O5K91qeHlB+2ZB2Mx3BTAuYKQAxwiuZ3q/djH7sQEvTlgRnIVoaMMI4laO2CprmBbzFoLSGqaOFG81e7+SUcJ2bzPlYRCXFO5BYqt4KADjCqbaRoarJKyAF1H0B7prakBir0dkrUs3WLxDyQ4MMHSEWaSIEOEoULYoZftxxHb1TNbVQ08Jvv6c20kooJkkNi1K8rL/ImMIKUtb3IDAcslA5qVBp5mabLTdCZUU5aPHjhUgWwuOnB2aJwYBUFbsetZOtvJjfzbzAyeQE70U/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PITcJXvoM9qvCkY+e8XQ0aBFkI4Dk0FHDg2iHayTuno", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FXlAdYFv1Wt6GjQ3D3DolBydqqD1nkl5hPZEdztdgLnqLA0YcHEYnLPqcCcnRBwakcw6+wdQOeE5kfBosp9AP6jTBbBokQ4aAopSmVWFxbPn/WIlQ0yejFOdOCquQgNLAmH5owRnv+nvE1FaJtffUZrNd41FHxYgYyWgr0yWfz+iE2+tWXWMuD9HaION+vnL1wrDxeJSuci/K1oSv4MyyYBixlhQwnbX96ym7qeQMh8spPq6d7+cRyO70VPDyNCVjpjrDW+pIG+dLooxt73iLinFS7HDSs3wk8Ibg0bTffA6EKqAXDzl09Mp4VeCi951RJHDPDK8H7dwzFhHI+binNobII3J8bNwUe0z9XKGlEVtBP8oYF2b1UU+2poySFIAtAjvkYFnVodVxrMlrTJoJptETekyOuJR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PJYdqKEbouQjlfiYRkywpw3j37mbPhWNwsKE97Qvivk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "G+SgM1M9s27mm0ShPHDR6RaqVvdw6rrchWCyo+dNAadPx9WQC2ku6S07Eq6t7l3keipd/PACrOJL5KXV9wQnYjPjAD9+CgG37R0Gc/c/vAwl0SvS0Eh3tGiui8Ulrk48whD8oCane6PdoCaK26M9BnYtGg3wJwYJfWC5DOuD9WVHe8VuAiDVqzHO1SX947/a9tXd62GjEkzZECedZpPNRWDMNNoitf+6hyZ9UFEzrfCvcMpvWbaI2KgTa9d/WlxYmXbo5nsXy/og41umc46WcqItSSKPoSm/ToNabjJgY7bgh5Aqk3xjm/8/AQZmDq3erFFzOX9/imAJd1D76yI9s/460ISBChQ2pbWoUeXahmKMyEjRUQgy5uNGLMe1jouWb1FxqfvtoqafuwaZXNyLbfvudGkbA3Xn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PLzHyhLeopQicCsBRy5lmA7KWHMQcFBBA9Odnrrv6bY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "05LYI1kkG25CuFszLqlnpVDRaZzsCAQaiO5P2AcmJ7N0CkwP2iCibISHtup58ElPowy6UgsruF4nA2dcKECsJChWZi0p+8AjJMCcYqb21XRv0+Z2MgwjZ8binWzGCuIC92AOiQchmhGcoUV80vB7yzSEH5Xde9zs96MRWHY7zR4m7BKOQ2aJ5XC3oHMZMvxFTRMqSMiL3VF1iwPcoDWTZd8srSA4g9ScGxzpNK042xbjxE/Mh3xYGddJLeg2ie7/Suu5TCAoXiVTUFqBicOh28skSKDoAJLcub8WKd5EEu0m+n94eL3PauinL5uXjl4k1Xx+cx6pBZ4c6ENQIBDsUfgki/KMmPs0m2Vsfpl8b+hVBaZffnQ0+k0xXFCu2C3KUQp6n/AnQrTM/aToiLBs7KiRyHhzXrha", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PM3jPVipNy2GiFeNhO6Kb4XWHGpWluE1ZuuIhLYtZNw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "flGDJHeVVKN7neW+FI1O6zjAedzoBFe/No9CtQsxOxlQQX9yq734h2ZcCI9tXyDoN1swYlvvX4/t2cgK+yKT+cPaUpfFDQdVdydTFBWEzA+IYKX7ytO+NsuAQywVcuq27PkHbrYReEZBAdia1W/0eofirZtuorb0Ov5qpENsxF+lKefrEYwjvAfKNICAliDMcmUfsoHf3FyZf7yr5CVucjjYvPZCPIYa/eTip2+mSI4wByYMlTlJaPpIFe6YvvSWSdh65qT6EKjUkQD6HyJeV3fSMU9AktyrUgzaxLdIStUY2sZfiraUjrOoMST9zQ0DbGcAwmxVwU7QXKGsXg6Y1QAXFgoBkSvwuKcjOTdgHnb7rYq/qGHbr7+kGOIFvySAGCGW982SO/+okUAkpEievgCC19oW1M9h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PMlOJYpqQP/wlEah4waTJsvQ9Hh0eHGRHPtcmWMxHK8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4D070RY59PYcD0RxaqoJLM0yiPLYxwFL/h9H9KomiXRii6sWpLBTWkUHiuWNguUuYxDO7MueQ75TgC4+4Zuj+55eEojXD5Dah2Kq53aTnO/ctgHwNXUG2NTzacwGRdRg2tfMiE/NyhKQQzpu/VJkUylSGl4CUoDLAUfVtc8tZVgfcoHimwIvUouYnNMOJ2/hp3+GJyR7COpnOdsWQN64Qd9nLHO/MZ6CJK0coNkAV0Uw83MCdsbcfTl3mCsfBFLEedCz/ZDC82/tYzoDcl29VjkgxJHCHBQt4i1c8Mjth+q8H0aszpj12aL+af00SyjsrXNqDevCC67uAFmRThcXttx4Ak7Xk6tX0nLScIgPZlfsrTOg9XotMsoryjQHj/h4vVaJ6HHGzs/Ly/jaLzO4zOP6AFrSmQY7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PN0oJTsSxIpun8qZli2rtC+BrKKmJYUlvfeMji44t2M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BDbAug7UQ68p+4SNxhoREdOP1l972zB+Mu1VVcAhH6/uWIE1U6ZnfGJR1RA/Xqpdv8rFHNWstc+2zY+e6Orh/N0UrzhdNzuQAf/KsKoHepoLoKPGdhxXg6x3FGjkhmWHdHKZ9+/M+8fusgU+CO/bnz7+KBPaxLxIrrfP624Fg8jMp0ioe744lAOgC9fkNAGHfncn1eAlr+XXEzS9ly1FvhAIlz4W8p69X1iH+3gcruXBzrd+QrtEZ8lg/hlLyWB9gz7vRv6fsVEPHaq6Z3ufXEWUR8oGhNTihyxH70mEgPo5QMNGRSnevD9YaTAuaa8jeGcjlwsGap8f7Z5/0cugKmi/oRhWiVOa02fqT7r1/zBNg3TPBX91U035UaNkKJ6E3X2VcQ9YSUTt1KZxcsEUI0gkUR0uLLwB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "POLGZF/wrKO5fz2wQB7v13HebE6hpBBAqkxJlxaMBBk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FEor2U/satq54koCkSY0jOQ3c7PpuR8c2WUdv6apnJDZWdytNXCHByWhgMJkIkSOVZQVa1Dpi9BrM5M41gtZPyWHoarK66h/PHpL1ZSyPNBG78j7AxtBGrvvXXzBoxYpX1V8vxXxeZUZY49+TDp5XLm/jUzIIqPXONrJJ5G5eHLIL6clxbE79H4WNAKU6MtjEwVSIM/XdeqpfWZtF/tsKIgYb/EzpkaYUseL7H5rumuNEsd2qcoA1SqbNRyKRczxtgzBnrkzR10XStnwPTpRIoIRRN+LvEUElkcJoqtoAqkv4u1JnkXkL2ifeeYGtcRteGc7mun05uadONJU0UeroyBFMCYj85ZWq6DL0CvzgA3PJ+K6p0iozRmdgeu2l17tiwhzPo8qSJLoje//6KfzIZdM6J0XZ5Dd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PQXpnNy3Ay1qy9gf5cSPlQuv2j8BIKmZoscVXjD7AnE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gJB4f66rji4KWWJOOCVoCN6uc3tNFtOWGjfAhvaNTomTtyI6jxtbgO/uVgloKxiEfVX9b2lrlwNR4QByfQFW00D4KoWpI8zF1ObpDOq2n/fTFk3qUkJgoMZuvJdbWHB2BLvwDk0PP5W/jgqLf4KQkOY4q86I7PRw0+LkO0HPbsS7Mp4qP3SUbiwsatntJJcSH//2fnP9DVD/cZ2ny7T2SSZNJ3hJL5wSVVH3glKJe4xzMbcyOfNzbuiV0tE0/39/nGgDp2YseXUJR0ibdq4zxzrdrw4hrhuGNsPjC/xM6gN37F4VGTUGekr4c0OyXNh+t1l5T4OSovQwL9sNR4Qw43+qnufiPC7dUw5obVzL+jt3CPPwUp/knm66fTarjOUSY8JO1oOhuCZgQikVZZvEXBQmHlaOVPRN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PQrrn1cXvKfwvutYUii7r1Euve8HfMzV40TXAapF/Eg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DB28sHHTdKNm8GfyZ2msyfHqWXwRbuGkKe1KXZnHwKI0FI3fgnW+8Mp0QzInjKNN4nkWU1ukDOKRnLanD7Y/To4kqAJ4OsuTtkAwmOnmW8CX1nTTD9+KKfcEsP8dk4QdJQNl3pIxN/vLelf4B17mMhXSFHdvdVD74euXoXzK4COZFWT7QBkDIgvEKRIWgx4zr7AY8U8WUNqy7WwU6b1Om8cdp7IYI2+Rdm1uPx3Xj093rc3eja5h/f+lkZItviaGt9qL97+fK/EqAbadTs4VUFPU2LV0DZy1j5oQ/iZioizCw+sWHLJZ1YZx5DnCv6SE/l1bTkygFVi3S9/CCBmhfN6J71siWbLG6/hu5uHUh8zKMF092D7sVH34gRJblzUmzCB3r142b/zPqB8vMVoWRh6fRNHlFqNC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PREQMElmVMW4xk5XPQOuRMsyCfVDbFDw3FOLqqQOhhY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0moK7XIAm8LWl+imeZpHkzrt5kD8QAYKO39EKv2XEUQUQBi6rLZBP0ML8QjX7gYgP3NZ+Adk9c+eOz5mEqDrDE+KSdc1Hn95h2SKXYgeVKBpt9ljyWwIR+yMjm7CYIblNh4tGXnEnNWwXxgwxRc37f0MJhHxNuS4fyz1PjOj3jmb6+n15E5NnwTCnB1K+qvqxojgdD2PSmT7Yxz1+AFCunjGaL2osHIBhlxoRsHSr/FPLDHiV6N5zi+IkDQD0rNWZ5kmUgQotNeBMuFGYs243TWTcAff8Bcz0q8+RtB9ZAUvInyXbtw023QwmP9BjMxNHuccyp0gkwzSpwSJ4GMU8lxrGdVLfQzKurrwI610IDq++XvYrwpoNaexraay784MFgujnTS9FeB4sBZ8DJb3i/JD60xOa54U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PRewiv76uEbyRxJhOFBb2rGG1+mZ+z21vG7bV6a8RC4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5LvNBruztKgMwG1lLnCg8M1pvOHDUhE1IobqxLKFR8J3A8djgmjthPZ1dW04VF6Kw6yShvuXuVBTuR0l+Hhf6yHHHErtGO1Nt5eQDHAaHn7unAjhZ7kxlaL6kZLuOAcY2USBL/WT/1bvyIe5sRz/kUvJaQGWfZggxzUJdR5DrukjL1DiGpUgFs+8ANAHZE8wac63CjtQNX8AfP+FEsEAAKnKlshnv5Tl+oUsgdnQCzaa5lsHvgUkO4CymcLHpuGVJTsR3Ma0I/P8R1s8odAioVsBoqmx0KEr4hQeOkGJzB7NtKVdIxEPpJhvZCe9NPIhOJlBfR08EFW2g03wNxxYLksVVRD18SBGlXrwoEhCjkEPVaPhNLo2gFOEzw2BjwIPR7AQMIgaSdHTaPcVtY5NqaY7QP1cSdwL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PSJmLER8AxUJY3Ctbazgo2VORDHwgaY6Rt34E8LuuWc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q7mF0IBnzCj7eIcMQj4rYqtRCx3xX5jg0AgkCn6YS1iT3SFcTMEpWYpGX9ZuCftX2JHseUTd5Axru+leX1dJbX99JX7CkWXqeoCedx0bJY8wNysh1LroYe1RArIjacKC3aokn0wYI6B6z+InrsoJ60U506rsosdsP16Lqm0FOatK8xcsnuhMJ62m2gnJmS/JMLEUuZfdZtGxMpXG4RxI+Py28opfLWxeHuBLBrevkgo6nS1dWk0qsgj9HTEB732/lDiP5grA0ZwMKZj7JH6bxm8/bs+dcon8fy6Yha/ytaQ1pnAIRRNvDrPHajMs1bq8GXQQdYt8vlX6Ds/Y2HuycQ7H8XcYBScWJ2Vkf+R+tz4gXENxC5LFb5SCwfwf9pA9uWv+IuMiE0v2hmYLn+2hkSzW9R5WlJYk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PTClc/4PLtdR71G+PnYuYQIzvAhJVxygJ0gpO4Jnljs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YM562ag3XxNUycqt1g8LclwCLi/5W6TEA6pG09/U5SCbKapuuEVl1RaO51gtB3VUo5urxWQeIxkRAafNAPRS6VwqfrWEUgwx9a54tnqyOerYG7LQTCNT5fR7WXp+mHOtxAp5vwt41dR2p4pEU38xPBPuPOegFdVaD7OzyiNOCf6FfeolQgyi5jcBJgaRSn9m1m1KPVY/q/i4gv8b8fn+beICtzynaJib84cR3fRFQ54lhYryyluEi+ZKHLXbqW3l3LOiGWg/YdDhiwSSNA+gWBrIn2lzn2BJS+kKObvPILPALoC4qlOzLQpiqr84LRMy6Ya7gS3V3IFnrv3B0dAuSMBvnt/KAc7pTGtf4cy+yMYyo3VjHqvYQmwWj/Mq+8cYuP6Lxr0QYgd8Ov2aWYkLFItKtnivT+34", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PTPqFI0oPxIMpjWkLWms6Pekp9z456Y4DamApgR98CM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9zMJyHnivyulyF8O5ZvDfnz+crPH8yZduoiOsRc+cwKwRQJViKZewGZKlUlD6q9aCFLsaRseUMgDY+ALfvAxiP5bZ1hp5Jnlw4tpJsE3Dfz4U1BRnT24THRHCw0qKubr/Zp7QlWsZYnOsMMUsIRsq4gsYvmh3fQg9RkDTdcYMjztzlof3IdAFGKQVrm26Zs39eBd8w2447702pfk4RgGNggpzL6TeJIhudxYxuyZZgdjMyFUbAMIoFylduMnSPp+nZmHNRirVhEwQscWMxeAV2GDTPB3TmKyT7xlXJz6sX59NiTjtJ4mEx+t43E1w3ciTrdRv+u5mvK3qPG4q77zl8fd+V+KfsRJZ0OreBQHsG0AwN71G/i7/ewHMvWE/l7YdaVfA31E1oDlUzZ4KJ88Y8Mfv4xPatqz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PTx9cGtY0F688EJFTzplfBz+3ppdj0g7JuqVOtSORPo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PINEu8UkLx9neW/KaOjdj3qKN4hOJq9ve4w+Hgx1ThAbwKfuWwhE1cICP7qUySJ/oFeSAldsVymq/JnHLjoyUKlFmvXEUWF1teTttTRTv0wKvT6Wshu5XYTREk9yxD7GLNbFvJ3PjjKArk39Q9hTkp0MMxwW6nyqk2OTSVTI17ZrSscNIhJMpAAYnhvY9GmzR1OmAmoKvsqwv6XYv+x9+6z+RgigfjuxYazj8ZAexy60wqmFewZXgFJk2hUf/ajgdrcZdxQogeq/CFvzSSBF3/Gz9Yuluir5TvGiIXouO+krSZ2HKh705CGMf3OlYFFOz4JuPTveBj5k6YSeKmXGiUcg05pew7MxlgPusFIbmOHGfQuAlXq5EkZzBCYu2diumavYwahOF7MfvLx/8xtnyO9NPXSjZtuf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PUampdrRqkxNa0hXG7aqoqxoh5eGjqSxaVfqm5RpvIQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u3t3TC9iXtQJiJDxaDZMehEvI2iS/i2WCCkBfGPiJqBKAkFPyANDyXAekD+z/YFN5jOctnbz+rYpPyfhniiFy7JMWR3BgMMCSKFFWt7k180G2+ccNlBoSKu5TjzSZ+aEZXslkUS5/wBNS0Kjfij7mJrNUtFNd33+DcYEQFd1mmJY7DDFmWNWYFjYiUpmzV+p7smQX8KTOpnSlQJBFCULuLDm0DoEAOG1k0ZNEDL04TddrznSmndp/wHExKKgGWvQSwgp9syI1/1eVzyboUdn6lB4y7I6hu0xiI2vXNZjtfljgYqq4oe1Z7YI3WpUOutv5/LdN818R25j6pRlZZCfDs7yQgMhUYZ4002M2LlouslnwG4c7CghG07ayuvC51tj4HamoMJs0SohiMPDOPcf4qYoL5rv6jzF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PUzbg83Qe7xqx19codzBQ8+nAhE1gw0toG4FnfC1a7g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dhB9d1XTv0xEVRvhPEipJckKRCX7Bdxm2VnvMcICZ8l4LiTzAe7oC/WvqLTEcfpiwTOXczGOZJnAbfcovPQdYfpw8Nozh909tStSQLPfxfCHAl42FBj9Hrnhb4lfkIppjnfD23j77ZD4aRGuExG1I65AiLixwjqakGhV6JIhuJpQZDlLtwchPCXIstI9c8VnFdgy8K/9jZLPzF9o57QxEdcHMIbuTIWEoeawVSMQoJzs7XHMK7O2/12Y6K7WRQ6ApY0vdb3jAfKucZXEc24+a/S1s0pCGqbg+lGrdWVhAr4qZYZWQpjkGCPqc2C2t2Kr+rU406ksh4RNW+2f8Ye2qiKbbiWCI5zHcd8mbaY/B0DG4F9iBk0wfmFJ8uM4KGhBJBporKeHk+1WQYtzSaOjN646YhJmhdZZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PWZFBGixhqNcvjMinKwTs1lh4VgHHnlOobR2Da5ZUcw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vGhMb+L5Vnlav0eTicw5Ub7i5UMQd3IlwISM+ebIL3L3w8P1JQomguahagCanQithpyHvoJMPnMRyih00hMCyvRNOlOIGWM1iHXzn3uj5n0TXVBY0OvQsuumx2VnBXS26XrOYYhmd1bk/OBpV+ltPriVpwZx03wauoJVHfupPJpLdW5yRfyMnkXoEoElbH+ug50410BrtxYTil6P9rKPYKTEyHxPx+pARPWxqAO8Dwxm/1DLB08mE6AsJmKGBR6G5Vf+wRbpj2R1Y/Fdjyk8ffmKOZziPeCORd5a/ud8CK3/Yp6pfUPbIaIXJVYQBDViGWOXojU7zdbqciyXtsRo1dH3bWSPfe9PPN3TeBtYCniXD4DQiCEl11jcxstm+St7ymkdFEi5sB7hgRQ/tiAnKSlnC+LWGmi6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PXrahKBzG39AC3onQxhHsaW+VgCAbt8ICwDXYFiqgGk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "knJegnjK+LIhIK696803lzfxBtGEtyP+lNVlqBo4zM+4q6B4RfFPOngoui4+W9wBSxoyREr0WPgQMDRSrlqm01i47nMyYeW4RyIksCvMrwYt2RMtFp+Pg82eZA0C/7syWCUiYTOOYFsceRdJt0zbdhMtQzM5yJCqm9tcJu/lidV6SORPK+aQxNLpP31ei8dxquQ5gqp9GL7E4GBij0fAWik/COmzML5xM64ACp5LVdZcifpt7z89sEhaeDsVCAp66+KxZzwoP/edXAIcRbo3jdzAYoPy/SP39fNpsmSKAvI7c87htiST8j5eFhSdA5mN/J+Kpb3Iu0VkR4vVsbgHGyxd8UDa2Czuh7AUYIKmDA1/oC/XgPWCfXz5dZ5PtIrw5FTLQZNWkdXZQJv8dSEYdViRthsIbFmG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Pa6KXYXIkXJCTQ70lnKoa0msaOhP4VHySpR+QgWolkg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "C9e8k/C5w7DQLkRLzsbwuWoFRrfT4W6ZpDSM5MRVL+ZM26vvkPrW3j+dlcGiUogSWzDIk69jiDq3o3QFwd7ebHEjTNbC0DZ28rV3YndqINnt9f2QBQbqOYdbJhvVpxBg+kwR3DYCKPgGaupCDkSYp6wPPsPYDrLjZMGZ+SD3koMdea9D8nGD1LfUF/Ks9YGP4OfHxKxN2OLHfD6eTkx9nzrE9Yxnkpe6FSIbKOdJd0TnE6F4f4+OABv2rQekghXpIQtyBdX5j4HaQuM2MkQHwzMqM0Vxk3F6t8U/lQQ/SxBKGj1sXHPn6tKV36EZiv5QjyzSEtfiIl22o9M8sQ8+NJo4RSutSddqzZloJzyzfH3rkGhTa5OFr6K0gRj7l017AsjNLsIMuQfsy8mgbwMP0f/l2i2B3fvH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Pbv91cSQiUIiwW2o6U3RHeFPSpS6g35kAlEcLjEgLEA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eQa+TUGdmXHadSYVnK8CDWikzj/T8yDWk3cj/NILPa8h2KHU1uof1LvwuIWqPcEvZb6spKt5XXkzAPEwy6evLOg2UGYR5ZfOYDaqMGv16XwSlVt+S0tdIk9WwMT81yQOEQqm/WD7dRLiaLIaD3qvbvI54jBm0B2PRQkHNLn8vODq3yMx7Ss8/fgCXMSXp4VZlubpwuIraQ3o+Q7LzdcCLPsa/wW5x4sfuiyRUWxKa8ydMm1pnnj+/h7oUT65Muot1sPoJVgUMxuQ95UUGg9UTiov5T4RFqZI3OYEnGb4z6Mjc580BXU9YpKv3VHCOOOn2a5ybpgXBPLM1NqXw6urNDPjyg1uV3Go278lr6vjLFo1C4yLH0JpvEDu5EjmCzgOjh2jfaAwp61GGzuhh5jOiqKMo2JYLCj2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PcAYF/ug+7fLghy7ch5Br+MCAsY/9+LW7/RSQxXsvuw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d0Wz41sKEvhDamgSAHmsm/fdRjYDGvSWtBtFgKeWNHvM+fqgeRDS/gFr9rePazoiWwjgXq1V+0mjLWQ7uJThA9SMWRcS6sFQJG6uzZSEFinUsyya8owoAGZbC8RyYEjWgazEX0iZ/oCAQeZxle32//rInvLyKNRdlVxATDSodArvD1e+w1SToCq8+B8cXKVYk3FtDbHP3d8d7/+YMKP7aAcQnDroWPWOdytwiUdiH1tFZW9rO+NNu09I/RdxRM1q7K1GisyFgtTdLNVwiP/3ZU7guvBK0FnMVIUfjxKTMVqtrcg8eH08RTolpj81dWi1AZgSVbRJJSHxUu0daBUP50kJ17nV9A5PB914L8Hs5Lpom5aY6xdl2IsAuMN2+zC2bVpZ4ikw2+MGPxfDliqdgtmw3lSlu9T2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PcwIFAZVh/G86JxaYWBdWEmOoarrKaYdx0V5wlVLLvc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cjpkbIMDQdblvrUoFQXq5q6i3YhKaV9Oaq8zRj6ZZCy4yDS9oYIviFYnnoVr9nVVX0HFKm5gdWA6gUeNf2WvxSfH018H+mFRJa+rKUpHjMpvUBDzk5uDRyaF1xezGRg4FCHq0C5/IQwt2ndc2Gsy40pk9JDrCWFGDcGuOa69BjU2LVUQf/sFHT8CyYds11JNBicMd1FS/laLF7MGdfI01pBkwhcQE393TmyyT2ZvgWQNlSxX/fuGOcOwGYmQYyF24gUPuKpdIccMVv6PWKGeV8IY+P4ov/m9+MO5BOn4wxxbgrvC5OEgV/0UX4k1S59fTe4VAoRe+OmMPNqIjpnrYg7d6JpDfntI1yiMRXwqtsixv1zcGu6QIAz3AguHyNqZXg6ZodwRNCbDNTMNUGXL+jvqu7+a/MsB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PdAa5/TjCTCP6C7b038m9ZHqKMoDpCLKxA5+NdslzIM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ptX/jzxojG1WDCBNZyZiuKP3227YgW9HGnUp1vpoV28bkR3iinStrFInc/bzlu0nPebThyByeHSrFA7V6+COG2ukJOO5l3qnXWzMND4H6nay7pZ9xiYVshox8dW6Vz30dI3wlkd1NrBzspNTqz/ZeZFauq/K56fp2LzBJlPB/J71ThSKQJV5jPdhZTTYrr4hrrI6q4RRGKwGwQ8C7KkK3JWalr8FNKlv9P78Oee9P6AbIl6CN02je026M/md+M+PnvcpTxHbyNnhXr0gPhFNrg/U+y3DCBecwqxeRhTImEYQiYDEctxQ+eDJA5bzyPT8dvq0avWpmBJUUk4cAXUZaBCmPkS7T1tfP5Pyn9fGZOPOtK0tiPw1QstXeVz1npPySoV+YZvX+1a7YMini5a62/uu5u8dZl9c", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PdFUFTQzxpN5kQYBu2bxjK/ri+KoS9YdciUpjzPUhs8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uL9zfWHvOpTSwF3KxiTF7SpRZf7SSlokPDOFtvvXepPBBoxWODvlpyGq4QcD7oi5Y7S+wRGMWah7ub0ysuM9GMiXz/sh4EUpVULEYVjoGoY2x2gcSF7IpQvU40L6kWtDfTg+ihtfPlv6Y0zaeGXazj/KqTqYeWaueoqsQwlT6e2d9pTPdMtqsFhwny91OeOPxNA28M3msCTTPc4uv0Dvr6ejENlo/QFOrB/+Erqnpid48bTCrBCD89ySho2/sL+sV5p+LxN3jYQS39kpHb8rP8hMDP1zKc7UpHcRLAGKEIRHauno9+DxJXmpeFyloujJq0GKacaNBvmVcf/9VaW800YEZ6LQoh6V5PrunR7fvL+qZIRk5rf3Xx8ciyLxmZ2GkghWp3zHq4bAuTkihX06YTZwRaoryXuP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PdGT5LwPgUJjeCbjZt9qaNIKHV9IpuKwYUoZ3Svt6DE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q4+i3SYOrMrGwY+NR8MUXlsFZT4JdiHpsBImI95WANvEjOwjRk5SnzOwfDZwyv7j/XAm8sagNvBr67gWhy/GdZ8Dfvc8W71i/9bcG4/VDQr4ZeuRCrc3NF2JxnAIXdnCUc2DLlPO3qqkTzY9x+duUqQti949r24IKZdoCx+478k0O0iKedQnH3W6f8KoaMoufCoMiP7mjIZ5F7I/mWSirtH4jbSym8Zby+h2qifoPSL6e+iazkqnHVYZrMaJBvwpVaNaGEFOOcaNGW4zn0avLJF2lfY/amAgi0DXVhojtYnoAOOPAY6+XpJwOfl6pvab2qxX9Vc4rrjhDE07NPjjQ63zw1aVfHMi0YlNX+2axQ686fsxZKFIH5WqUs3NAh2P188n85QvjqKxhH/gkZzlqWbdDb1qH5Pe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PfO5EADkjKkKUsFSoFc4CJl9qeLVljT/GpM/220Co8A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+8Im/q4m/f4hq6wHilPuhBBEPyokHr9PibjQH8yEuUlKbGtO6DnHEmmTaGRvR9zxf8VQ5fM+SGs4wEM1zwvXExoiKcUj4nn60zp5Vp1fPBT2uTFDcnxcoETynj/EYxhAEOC4An0g1W/yEq5i0LXn7fx4Jzo0//VFD2/YVLh8/74VHRLE/p4HzFGpmvSW1JZBXWHxfW/1BOL98ijHBhUtMUzBCf3thNZy6hj6/T3P1FrCKs8E24sVttujc/YvnN4jAPU5ZLlPK20aShnansx1VPbju9ZFkVOhVnZsW7LR63i5XUyy6QZMKKbevgT17/AVJcozlFQKS0DMh2EkR4kvprhquK14Bvn81PR1RuE4go9ETUA/o2HFPRe4mVBpRB8qFhHoDW6nTMvFLoSgCX+wzUEk7lgXaHTw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ph3OSFztXy4enTdAiPGrE8XAqBiXfqij372Ho02nyV0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5LbLhWbrG6VrJxlm/wi43Z3UJJylTSow6hvOdI+VBsvIO8H0wICdjH8/jynr/wP6AD9Rv+0QD1ieFvgBRkH7qxbs2MpPjaVSzUi63p9TcTzNusJP5MjSOP/NFXzplQbc0bYBVGuEuZDSU6Mev07rp6IkH29n4TyLb82gY44ziQRQK2ObXTlrS2xuCIXvmUvPVviMdiZrZMsKFXi3JkwDyQJuWMGYiCr/s30mXYV9daxoXW7dfwwgc4agOZNNXu/mlTkqdsLc67GQ1sdA7YXQDi7Cg/Sn7U92ND6v+em1MRXsFUFOgTfJlsXR3m3lWZOCEKpGKkOAZQs5b0FeGv20fWS+5NabEtBdMJ/HRL830F2xRNhXscr6WmuZ29zsC7xDapAzBPeZxKsp/ZuIgXifDgvk6B2/ShCI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PjzdOOn6hHYOQvImX7D5hxFvtzmyK9ECc7mY32ggeGo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "g/eqs2WgGTtMZ+2SFrhho7UZemoqAUVxIZXmGGZBEhkpNqV/zFBZUMsCGMsUm6Cb/YnZf1glVxJheXnwDMq9E3ZDtMuufx/Iowfo7lwgHvaYBNli/PN2A8GzbjR2lQ1eetzT6jkqYUhaltU2PJ8nZ+efhOkmnO3XYFoJtz23aFLRWJHa+scj67go0PtExcTQnDq55t9vpeQIJPku6khikOprdXI8ZHrMqvd2Rx0T07/MJuUQBrponzZJnAanxgp28cDnSSzHwLjSVBa9N+ZofPk6/K3s2oNhYrfUX7Dccpc9+UeHTMmRiHGc92tiNczVbLkMS7W4w5mjsv5RNHaN1mAnid/a8jnXzDC85bsO/E02r4HjFn9jVcvXywMLCMbJoETXm1doroCzuaPyAP0ewr+3s+b1Y6MO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PkGLgFDFKXte7+jG9OytUpkVFaqpzW+Utwpsy7QkMXk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uFiUG9T/CBuUwbtaaOct6I4q5gGHmej5PGpiJbGtRUH743U1TTApAEUZGJPLo5TJNUYiH1xlyIUiwiAgC1q5jn7yPe3CnlKww1SqRqmAn9TPN5PZ3PFgySEQC4MyMPWdc4XhXwB8ZPKKMHjqknqQQgCoce697dTNOGPF9AhuWWvzsAM4xQyG8RqV/Zl62DENSyC7wrl3eQdG38gLwRnipQm0y/6tIe7Buwdfu+rJl4aLEdMMJg90q0iJjK24ftr+LSJMglPwONxGv7sSmRHX0FulVoHnwBFg2jLVlxuLRUudgo5lzYMOYuJKSPnLCq88JaZLerurGcbqxItrvIDH6woqlWpX3jqEPQxcf0sPpzXZjn1xqYEgOkRspwL/Nz8EBKo1kZRLzSroEb6Q6nGeX4LFR4RemsvN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PlGGq8SghIbeK4JRLbxnRhAMsuwaCnkk+mRPBpwEUXY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MkYkIsWHTIF/5DYJeTxt0Yb8wfijZm/zZN7exXR0+wuCtd7po+/BSu5DPw/BRuPSQa5AQuQIlRE5GKmBJ+NCvAgTrOY5zbc7ezf6DRIve3xMyH3S3vXRbrjU7/ZuQikyV2HIwJeVXaVQbVD8ATiRlVFp32LpoyK4QK4a9EFERmjF5W2LJhhCVSKTE+d+yl2bXVVhL45fhRxNtnEN2mvYl6yGrqGzvSt53ed7Og/BERLmas6I5s29QqPRM9b6dDOW3KgoqkQ65ZT8NaXhDQO/ajOtYsqKAgyQ/S6oRzoydPD0cgjqKIy2aSGlm41Opj0Pm33EgKvRbjgnbyqi6FtxPmuOWipT2/ozR8Rsw9ctpttzuvEp2Yqx6FS3c8Wbv7k+h9RpNKS7ga4niAv12yWZRbltZ4rPL8aG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PlS5tDs8t93eI8BIcm2i2t68sLml8TtJezzQKB6MjN4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "teAAdld18UlckHCwShRD8SJgxGNmk5zp8L+DAxE6j3WLBrfW1mUyXJQ1JkeReDOjFBf1Qp65khNp3l6GwYjv5uQ6K1b0cc5OleZ+5ZaAUSY/ycgGf3NtOgNo0QlDse0oVZYhHpm4uZPqOETiDZhZqHlgQrGmnvVG76BptVC4cxNqhbmtjAxW5sI+S14x/dg7qRWoN1olELELtIDeqVZ5r2vOnFN1cfzrNrRpaxnAHcVdAyDwnb/gIU9senbMYL9fDehqzcSQf3rM7O6u3mKPEkoB1qs1UfXNyTyjwEf/6lFZhivbr6DxL17sR5mYVcSlnwSwFP15GqNTPaDTI7wVODM0GGCIh52AJOEz8CwK3HXbTlOkaWszxE8qhkl5OSjMglgV7+VZdOqgE5/cssCDasqvUQAb4BX2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PllFEAL2fhx10vz6sfvEAqQk+i+hfNLDS136zrJ66rA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "go6GE612pVrKlDXYQMvgyfWRilF2jojnZn9HuARR++v4Ap3EC3M4Kv7PPIC9NKkzYqbbe3y3N0D/T7qZgjPjEamk4GtwATb3s/MbYQSqah2ZnzFUpa466ADAsAz04Z5MI4Tt+Nq7LB7SGnPrdzqgOJ1g0mWInyOvsE8+sREyQZlyZWSVsps5NGcQo3ixxgzRyR/zLMHgeqfSyVDz+Ac1acAv2WRtnKeonERNH3CIk5AE2usCKdkXx+qsgHoAuLZBNJuOpqbspM3ER5qqELLQhGm4BDp6Toa8K/8Kl2rRtPoFu1Jd2EogRCtfYdDVl8wCMwjLNI5Q+Cw8YtRQhzGMwGdR/s9mhux/9KwnCNDKiOVB1+oBlPf4MdZ8ObHK7ssPGxnCYq/ciLVjTZQopiY704BM0bElGawo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Pn8iwyAuQgZuguK12EfhmCWDEDoVABaxZxxvMpKIuGg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1o5EG/sk3eWiUZc4TdsksCvN29OX1IWGAo6+qVO4Vu+Ax8qScmQvunOCuEUYJCbv5NPEuBykbvZkfjdzkBXX2wXKQzzV7wzxpNr5JyBAcvTpm7SiblHiXhleya8XqebV0ITRUtHixoa65G68lMiIcHqWshA71ZwkrzFpP+hlcjMCTeYFZjC27wQFqc6D6mJ3O3ll+/TQMTJ8pRTEhJSumbCh/eL3PRB4LUAqmQO+VnPsoTxl1rfKDBW0DH9kyDf/sZ1Xzds9xIisTKt1vNjGA/FPTqKgCzZEZjkuACNgFQLTH5d7EynY8+356OeFW55WXJsqK6rSu1R3g2uTM/U1/gdGWFXqLOaWhQf4TUdtR0EGMQ3OgvWNZG/qkUcIEOlpWGNgVbMW8fa5zd1mfIiBEB9Ox/apGyI0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Pnw35uRirVoEoZfSr2jI73lh6KDMSXMzrFyL77+PD88", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8iu5a4pCvfq2O3waS4hMEFXZQAtMOAKoAejj88CbvThVBBzgjJayAPgH2JaabjbXR3L6epBa0OltXfW8MJW/v3lhkqgL3QbMh3KLXTdG85ENpAwC9uA0b/lMa+xw43/tog207+KjQ2xmid9jSM/1LINLawhaM6bvEyAxXQBVYrr3AHVOfBpH0hKinYLEaxHM31KrzwEBz9HfVJiFLkp8l9IapA7P91lyt7KEavwFmsCnx9hn+C/Rf+RgvX35ol8VWX2djdNnmXz/Rrwhi6IDf4l4ONKkF1wIaI5HF0mzg+gUiujrjjyeqZtTIPzBEMzkU1M7Su9KXAEHHrMtA30kG0QQdS8kEHedxMLWVV9Yboz9xO8F9NbOAT8bz7TEy6TJWtjc3RjvAsHx70aB6IkkFCSit9K5H9hP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Po3fucngZMCINt5Zhu76pCMgn/SjyEiBUM/2f7y/2eU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+J4HGOGbkoWtDbWQSTta2xH+QisFXQ/EAn79I82sT0muCPmRtlFcJyMRBIP79EUCuGsJ0aSYd1ZyObk1N8OVxOwPHF6QbBRNOH32mco3JnonQ5prT/I2QtDVYYMB/yOQsXSZ0ONWNJw+DjEfoEjyFsaGkwWd7fchhpL6gs8PcGzvqcTpAGl/Kd0fXfyY87V10kb70AIDojYZoa5KcVSobYkYG1fj0eVWlaaF1ZqLgq0pOcHF3pfPHtSi7y00hE/xaHZsCiYSaU8gvCM6VKj9UMzkzvI9YqxIesHqOtnaB5La0Iuc+NnJJfcM5PDYd3YWk4WXtncz3GzW21Dw/Yfsmyx3NxfEiMMPZiQvaf1Zajv+vtKswzaYAjfRmo5Y01yXR9CUkCJrBwwFZZ5LvvXi/JzwyhiJZ2Yg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PpS6kSaL+HXrP/N2ADg5CsIE6Saad04E4dtCeQ0c9fU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SakahKPTavplLQKtVOHK4iv4FdyvhWgrDaSRQ2Mwb+JpaSYcLsphEk+5m4L7moeRIhG0QJ3KiaAyASsc04xtQt5oJVMP82PGyBG5mdY9NC+KRqUsgqKT+aEc5CyayBIMSdyRqREle7LN5F298tiCmr0NmFn7SQFvzf3jEmO0JMZ/uQFOTDqLjOYGpSqaI8AS8Cl0nZLGqSR8fSZyOaCUN5GqduVYmU/B/bYlZ9WdntkX35OiNKwORqN/CjyuTKorFFpdPylVui00cOvTXr9CQkhKlpqwEk+3v6J93GcUWxMo6V+QgHvfqWl2kZMo+tn0zoMJQZDX97yqXKOy8784ADsODaYFtYVCJ9Lb80pmLMqcNw08Fbjtd3b+H/4QUehxEynH2VWRKMaiq26gClE9aB74zYGX+O1x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PpszX/4d9FbkACE38XZfeizi8xvvMJ398Ssv5JaAqWg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SuBbx/tl56DsK3HM1G5eGt7g8y+XWY0ieb7K1j2UwLnBdf2jpu5ttH2ux9h4hmoeqdXFDo6nOKRa9wUzCKZKPTgsyI6PzrhuhmynShHwfHFO+zs8j0G7rU8l+9YqLFsOMZFyLAASow74syKnIEuZ3w+M2/vW5t0DlaoIpg49NDOiUolhoSufWtLd+FcuhHHUyamSihjlUyJb5IHNmnvuDgxKQWt/Wc70d46ETq+1xrLbAUWNkVmnYIGzWD2gntk8yJomSMTCOx9+X46SmIjerbIWWX4un9YAYKGm8URYAM66qBIWjJyO296RXeNcbbAIS9wtun3V/uvJGKulz4ckm2CvMjTsnDibZkqTo315xlp4Fd0Hn5hIjLYyKis7lc65waB8HGvVepAnmByxkftiqTdeWfY1I6Se", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PrxBTP1isuHLBfAj3TnggOlc7Idx6nrRwjGUD5s7zC0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RRQfxgg/Abe6f8WYWprdv5Qadv51Agfy+6a0yIFFcrJ4R955mlsnAtRqNT+OStuZvVNHO8/kmlDw7z18gKat6vrCo7Qd5kk62PGgezK26Y+a6kMH99NBkQImb7YCx5vAld9mmBiWsr82PNrt89BGJor9EZ34YrlYrTe33M1Bn+epBzXJSkDbqZN7KQyB6wch2tdNmCZ8jevNfbaIYBW/IVoFO7/aGOoRBNjYXyDlh7a2Dy+tcIJjniXLy/pc8Jf4vVto9TJa5N8ivTVlgsI8uPu0LghtA2nRr42Z+CP6JLh3f/3+TloaFBPScWANPNPAAXhHL1kQTn+ljTZ8+KI+JsUPyMHVXO9oOaNCzYMAQHneXvHiiTL/aP0pB8MKvM9w31ltC/npHCbLoc0mm8gpsEy9g/3LO8GT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Px+BuUq7hVzbdeApbW6h7S65GbezA19GLNWhaLQ8GMw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MMpLYxRzPa/UAHvshzW9w7Cldi8q3Sjoidn/6DX128fP06YZ/Qzbztq1X6x6FQrjFxkF5MKUNsDTRYFMKWljofKvMRUoW2xeoK+GRNz+ZNIfpm0bcfIJDemxo98zMCZ283bXFbnXXlxFKw31x757HAtE10RuSKO/uzHGGR5jaP0kkpfIYVK/MwM0DcE3jDg9KKCKaM7UuWBt30vDnc5aOBdaqyV68nXRDFqbOsR5i+Sk9XqdqJrO4L3HqWLq3FheRYeyPJtgPykCJcEpwd5MA2NEgHDlu9MrtquKuCWaZpfMc7jrKvPaKsdJx4bfLHwbMvEMkQt5Vjlf2aQAK4vl6sr8RO07FPyV7s+YyvsIBWShoCc5znUUK3RAePfvTKRcjybtRKVkTTLgKo56q4pp1HLKTBtushGn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "PyuDEPkAnKXcyF+3Ugm/AJADhoShmzyZskmnPL0EuXM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lX/Dx61FgTczMc9IXx7dMW4gcU8ATvUfz5wLjF6IoYH4lsZsht23dNIrnLzlU3owII+7HpRh4z7eRj4X07m7B7vpbw2vzKlcEmVGRb2DLsbiqbBVhjY2pVJa5O2z1YxlGOlIBRn9OJ2vg8+BbYcanVXlNkb8xwWlF3qNc3NQNTBPbo1RhSkaZxW/W0/rNRWcEAJXXbwTJlRW4xYQ36Iiyph2UTBbCFvKJ7KvMgLKQW2jEc/5cCUKgx7kDQZ6ImsNyTQiO2Xj6DwXHxdBExks/w/wHfRYLT2ANARN+6OcYgD6aOcoX3d5cSbrFiUI35xzNQBwJn9ZtMQyPoYWldhJN26wDDBQwMjFKHUccglNgsdsW6XejSPDSMhigh7tadlcphOMjZ/G+O2AA/YAuFp9Hcliv/OAsst2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q/k8C3e/0ptV7IljBp1hnYnegvNDEyNWZYszx3hQCd4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wEXmnDBwoFHZM6Ozl0Np1B/uM6tJgK717YBqtoRHpG5utIf4ktPK1rs4ynvPHjE7OCyLxRTTMnmnOM2r8HcgdbFqsviM4yx4h/VNFnI8DEsXfGxA1Rg0XVwPOthEvUxVbyYLSQV6gLnQKyxQdpo8ZMjd6YSio+gKRDDfo2XOL+wPhEbGM21cIZVIWo71uLO3F1T+2WysuPdalxeVy3HM/8voIbt3nMnOWVskeV1MecFuKTMQDIT4I/myNhaqExkYghp3ttfGhSh0UJidvWcBN1ALy23nxbdnN3zpDgIvdQetxafNwmbBMM2bpqbpOheuS/bcRWyGzNaEmWAodmNzNHX4sHet1kAcAXFrkPvg3QLUKlbHhyhN/lvAHIZ2PxkKiNhTuYZWI9ggJyo+1mQExwfsZvERzRfm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q/z82985wgsnHtxhSIhjhhKa/yniNP5cTgbd/LCmJqQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6uMX3gEyxI/8vBC12TMAg+tJmX+SgDSOeI6sL73XBm7jbo8XQLpDb5j+quUBCSUvsR5dtMmgHFNU57q3glIWBDLOJO0LMLkW6XTahQ6mcsrjzaLbgDb22RSGzJEzXmnqi5qY1fTuR5LGQzR0YpcMHrLXWAZ+HvLYnqy2Q+WzQAs1yRCDn1ZXvfooFiEj4NyBnI0EzpCUQPEW1Tfv0LDMpDxp8pHxGJKXT7TThuMRPXTFitVXhZaR7OXt2xYKGkzA3W7w6imiQRXLRxzV/I2UkWh2yq7C11W7CPyI8AceG7mWz6t6YGBeWcdxWN9xBDDnAnI5XQNvw11oHhXKOgTJ4NS6F0zQUy8h3qCA5I/yxllA4k5/T+Ny0Zvjjrr0sal1HhkL6Op2ony42zxT7LSgI+1n0YxYSDT/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q0IljHlxTESSekKIXjfZDWI5Q2OdIgYoQCm9R12XhfU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7p8X7zW6aNwFiQoqqsHPvE+J7jgOlD7E386Cb10XhuefoGFUIolR+Pwn38iVIcRqSdplCLZx1n26OkqgoF7tD6Fx6YxJgviPIYuutMWDYvNiMt3UOGnI7zbkFlNgzRpOYUvNRLDTaYTIq0mjSAC4lGXsLwTyZ0ej+A64qFRgk6dGjXD2bVsCNngitY4lCB2UJWkrCA7FMG3ZedOCn35GkOINMTC7cwvsCM15pVyqRZlGqlsq6WxzOp7WttBU5QXz9OnxCJAwcFeguKz4nOx8iEorNz++aH2rHwvs0B4NQZuGJyWVay10YALWWF+/xA18Eap3MIVNJ4z7+Nf+srUp92n+m/yyI1ICPtb4UIU/HyF8BH2k1Na8DnlV5VzHb6FSd88DLogqZr8kgIv8uGVqmBNsJ8FCT9ng", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q0vM4CjkyGpZ+3ffuf2G5hym2X6EVJmg+NO1GWN8eTk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JO130aw3kM2zfcB9hpD+c1zVJ5aQL3fYhXbIN4aDzHuC1dgvnozGQLLUQTJBhld5gYf3MPJ2aLprlhB2SNJUTDnyBuEgCjRINNSCLEfIC6FwfSfgASlFg/8r25fNL8IATN4TdOamnL7x0saUBQSZc81j8a7XXG+XbHgv3Z9vpXBlrKMAJue5OHikrjWe/H+z66vsdtAE3/aPe9nF4k+6m0tj4lAtnVx/MTOGUyI8XZDJSgKqUYp+25y7Zu+24op7it4vDDeNFbFW6qTGPJXKnSn3XJYxGog4pZX6Fnp9dbirrHIY7MIR1WBuyMCeDSP6xy7+HsDaUfGsjjmKddP2aXAlzQd1zPK1yzBVMFIuh85mlPJ+d4N+49u6rdDGzSB6F/SyCAOL0nWLyQVM4j5DWM4iRrGP7x2P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q2nnHNZxCJ0AIohEWQcP9NCcdMXBI+kzw5CT7FGGIjc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LSZJzYNa0ZKA4QyQYeSQOevJQZlBVZ2iZ+OzCwPfUzOIQsc1/ZhOxV8WOUqr21I79KLUoLnJUDbkDI4jH/4+//y/mfAyxDqQcnStPsuiWSjvvtj5PwK3BQw/i8+6IZcWFZLzkTSpUzmZLfcEU663OIsm/1EJqLitcRYaXxxYZVZSTgWUaDeirZq0P18AZ+xIh4PJFd5fyhdC3s1un9G/O+yJr9yg/rcNrBGltliK7M/P+bmcrvDxebX3APHyJmFm5Q6uHAgZpsruFxxuY0t0z+0kJO5byEBSlPHnFqbQQ1kpEC07Y4hO8NzEE+tKnAa82Ihyoja+14Nti4Qt/tLjVMEjMiN3j8U0xNQK9n7xVEkaj0cbo3bFtJvgSy6EEWMyyxC1TnIP8wYK8+blPobx5/C4SBMBBN5T", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q3aEiCmIpRUWmBamBAyksWGZfYwxtvfCAfkXNKSGtAM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZxEb5M3m+B/dIi2Crd4EsjIj4Z9tQGHc6hkNMHp24NEDyN/jQXD14cRqqwZwhw8QgUD/7QlyxK6doynonBbZ332Xo8DAfw34KK9L3Ern9SFSEhNdzLFi7woCB0VLTDfMoTsoDfHPatogUgnCbz6iufD5/4huZ3SIrJiJ+mETyrCvLwVL+5Dfkun1Mg9kLg3pn2PstHSPb/tVe5tUCSC8HHvPM2SC4xj7p+OUMzw9LZDus7W70kdre62hgeDQOZzjgmv2ySwHeOrUah/7Cw7SJEHjKot/c+gJrTXyKg9BLe3KvXVx3kQWJTua+P9dDOUAgewMF+hHuWXO9rAWUDfhOt8YN2wjONhYLBvgJhGz9zOcpLrQK7MQagu1tfbbcXR73p7dyHatszRdJ0NZnLd8zPhA0iHuMt2J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q3jEYu/vlYxk4U3bXKZbzOs/R29l+RfsSah8udrX0I8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aXGyywWGps3KygCRUZJqvuKtWqyBgIGS3WLUL3scIqijsu4mZU5pcLbzJZhbmxQZhXBgKfCkMrZpQeiFJnpcKEixemseyNoZy8Rrhc8lrmyyrYMpLwtJv8LbJUCxtQRgECpeyG/F4SHPcXCUbhcSwrnGXbgOgbXLKkcP9Wf0gNk87Ch+kR2/iuBifGxieYMJqNgFOb2CmU8Jrp576wR1tiq9s3uenvwUbY+XyasO8RCJ9z30crYegP5URE1pt/QM5h7RmP2tS/LRVsnj/l/C/3YJ49a6E0FhMG/D3xSWc3hTiyghsSqyEz4W6JWLRiS6udPD9WmFFl2o3lSdCjCv6AtR2rtemunhGYQPnHgM6SPf2+2kRWblJn8ALOoYU6cHWtgVV9pKvbJyYFpgRUJaVot/d8A5Se+q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q4a++uPODMn7yHvXCwHLwY4ivzQuOqbh6bFYDNivAng", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8QzX1C16u03DTT20HsMKWP/8AsNh9dWAn5oEXrD+WqY5zNK70iIBbpEDm9VeVHQF2E8seXXibIf/KJ2BXKpZTHL8rJPSQviXrN+55LF1DGMEIlvgeWSx1R0G8zjW+0wycgynRuGITEWXDl60IXXW4w+O/0Tr4ULmt4oXtxReHsUA+a7Ld+m+yj/stWWOnP/yPmVnBz/2Z00KgCK8oyc3EiI5ome22Ub2UYOV4A99kDpH5Fazy8jVlO8adGxDAIWzfOw7c3zOwYWB3+Ox4y32hVkIizolL2UW/50hSgnlVB3b2dktQvo3VwUGUGjjBwDueA9RUbwws0Gz5PwLq34QMm6yfCmAxQVYFBZn+ap7k2ZVZvdZf11qPnQgak7VmYlol+YX241G/azOV0rCc+AP0Ory1XLW3FO5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q4qTdcP221RbWpahNOUxsXWUqWEXQWvoSzvu6r2XpaA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vjl38OOEar1NCk1lUadl+5P1cQYUPVru50OBqqhzfj1UTMEtQg9FoLLy9PpRGgwEbz0D1seUazg1uy3aP6qvGjyy/WNS+sIcCTbuT3U3xTQPi/xh+5JB6CDzYmsxsn9xFKK+AUsXPSkTZlI1vqe8wy6rA8K2TVFgwYgP52fJHBWda1jZZp8e66yM0u7OSZgzV/wfgNGectpf5y6xbJni2ZWTcJjWLaosi4BuDwV/PB9yHWTt0DJQyaRac3owlgev8iFy2eG6MaGXltZEndvoOCntTjyRtRN4HvSSycnlnfbqzJpKovesvRQHS2+kHAy5C4hASbF1jEmYA1GkmqnZ+NFxdbZCkSC65Nqr1PsDdnlBN6DEw8vIt1VBcgBPaJYGh7obJ2YnGxmw+lsEJjPJjdHxTfnQFYZi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q5vWkJKpLtvb1fQillQM5dwnUXXDtDktIv8MHtEH7+Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RxQUeMGjv0zqhlotymWkLAsEPfsytj8tNXHlOGoBgADb+aMnXwMfouCO3RK7A9umCQGOj/zj9vrbk9jEJ/iQBlZVvQSf1S5nyUurbsUNYOjD7s/kZBbkOlaRIpPENo6pN4pwIaC/W0JNO7bp1dieZjo5o4FnF0Fyb3BrHHR4gO0QEROTuRfV6kDG4Kr5R1hK0GoohYQY1/NDk5zdEBCy4+Vhf4xOR4QsTgXHbuud82BvmVGV6cdt0QdeJ4dDp0zcAOuuC2pM8XtBzSbgoaulkgTs6TH2MyeLxSiR1YAtXPN5UsHFEKfWmN8FVgCFqdfvnVgulKIop3QYLv7aNFMsDGL0gJnsDoEApbN1YVPDRUqCD/+2GRgEXErIKEh0VdGsEibTAc0pCy1//CbAargNR5rqi4CCLb1Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q6i+wqEeu9sufwDoY4Scdl/6UQiu+mPBJ+l6lX0YOjs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V+8M6YpLP23No0D7Y+pI2yIGhMQL+D5x+ZEI/e1aCW/08KR1j4VRiu3IOJP2INuzujqLgbLiZQ0c/3ywrDt8c+gw/Wu44xmAfcuuWTexshn3eCBwZ4Zxy0uN0Hf5L1o6FQKXAYTVZrBuI0VrMUilWRjnzqmJ5Brg8Q+XCUma/c7VdGyJMJrrKDCfw9yX6rupezTOe/c4+scSiaCq1NeQY+ojWc3ZUZFzuSDd5x5c8o34hSFmqY67XPNXqutq5cfHTXeZSSfccihva7vc1WlcvuX3F9P/DXNFzvoKq/FHmnPoUKEpec7iVRq31355sTCOcj4hWUdqCB7rIXwz/kbm57hf+ZEdZsEbfhQ2F/CBivxlGdPMPuwVmkztKMVYxtmmAtySFIsqBiSXunFs1Vqa/ADSi5g4Yowz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q6tP+N5nG/+/0819R9ANyahIN/JQ4kFCYgUriB4euWk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Msa2+T1iyHckPCMlir16iRM6Te/parEvFrTu2vZJQ2jrTEHOi4KjZ3s2b7ObHemt92oSdU1r2P98TNmHHuDqQTIDLsKfEtp21Ey7eqTKcs5CEWYOZExwAq3DfFHzE8Sr5WPyFTKe08qnxc53lFFADiCeUVU75RmESLgtdi0KrJFu7v6STpTUN+RLrRS+5yGs2apIO5HiauJ3dwbYMucB0sMPI1XYL/qcP537APXmtzL/NGm+Ol22jsYMe1ZuViNrBadiDecNQIUg5nZ5eS5URJPNOYxUJAgft34e7AiColOgtiTpQW+sSm+/36MCpewjVb6zV/eCoSvc6Nnk5Gxxq4B+F9j6prESZrh4QyEECyzX2HROUBXfTjkG08+2tbGBA1kMrg152Edxu87tqAFpqnck1BK0h5Db", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Q8lNDOtU6J8St/wJkzCpj0UdqYa3RoQ2r3zsFZ/qAz8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/RlZLQo/bIRaknGSkqZa6wchtWB0VeJ8vvvDLAG1oQ9NVkSOus4eL7/ow47JJ3s+Mo+LNJvtnAR5m8MEQ2xSnezdlGeZkP1B2DA8itWNmkRd3zGkZrM7oGkXbzIP/uJqQlCng0sfWce8CAszXZXoATTUlMrztu56Ub0y+KHjSX3jKkGs9GMb1lV/hnAMW3j6+OjI6H9mGTK4kCzmKUf06YVkOF/iGkeGrZ/eyaLhH2F2cXHGuHQo+J7Fj85sXzHbmu8U12JuC14Dj4WNW6sUpYs/H5FjM5nogJBIryHNIRkK6AvDTy4Soi0sZ/L53KRwAgCl73FfiqgnFnmvGrBFAMyMuRL2qx2mRGFgebRBqREKlRGZABMHr9WfTSjWzTEsf7/DAKubzRIcb1DlGBWUofTEvwDq3tTV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QBHkRdtC0o1piwvBKeeHflX6/oV/ATMNykoCppE1j1g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JNBVsGvu0H3EcwfXCqgvixD9luUZ1cRgOflaG/EQZjvEiN2CvzXVOB+7Dzhn8BRQt4iC1IrZC9x9dm3DaKvHHadaX09GmLZKU+0+pCU0c2GOwwZCIrk/M7M3IYwfjfkCeXkUilG+nrrspypLmplZF3KTlpjTFvI4t/jQMv2rVyU7ykrDpAM2MQy6cyelsNLNPF5TVpodtIrFxbnCyk4UbBDAVD1JVR6RCRAQTU+xz2ZWBo38EViucy+CmOK6s1bPvqFoALBWJv1zfbTaGDgISvBkmpiPAM5lxnBGT1z45hTczOaWPGHPAYm1sx1vJQIOdsNeISniRBcjFWSMJvGKjTTefO9nw8I9L4ZFRYTtoDAF4xw67a8/CQsPGVUWmdpV1eqPUqtXF/kGssjzXblC/UA8lN73I2EP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QBIjsUDyFUY88XAJoVhoUyYOmmdJZumwD8urEJ9qZyk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gxEXvm7K+eyxcte+/wyabLYORBoazJPdxECqXbJ46ohmilhxvpeGLR523c9Ii9QwweCrt2ZuZoSEfxC/6Bh/Aou3L+A/SXjHGjq1p4NQO00btJpgAZfLB6SmJ9vFRlRq+3wf1588UjziENGge/+YlRDzPnMsAibLYfR4Yy+jTmXhiTCF56rMJlu0VLukiCbAyn+YEU+Z5XmDQbcJqLBNLJ5d/HMkmupvVVeSGLOKfbhz2byR+GmhbPbutxnQJTO5jVVjBpVWEx7/zOjATVYOsxwqM6GJ8uDHzhRKMw6Ut8UUUqPYou6S4r6f5s09PFpDJ7EEsPBbrVZtoy+npKDxjyWO8gQTNYGTP/zeMzn0WtlGb/tdt4TOqsYUtvDAexnxKb9WKxH1ZDC36c0NzxX/uEeJhxSIUSgp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QCAYiVIGrGt98YWdJqe6rV5QR4NkDnsh6VInfABl7E8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KfEVOfOIuWYbmAsqBKUCvbw6fIliva/vRDuNQ92isXbasyHqwmb4Dlqkz1flTD5j7SzoCns0YQc6tPfK2naUMOOSXSoGn9spUxfSfeFyM8/zbale3NWd55WCR6ovJjOcTpRodhlyq6M8OudLTQ7P5WP71mydejh/OE7mS3cjw1AWwSm0Y1RhI3bWdUcQw0gSBaStbK2KAAyUYGvQ4rT3Ph2q8fzbH96mp53JModyN4C5RyUSr74tpujJeq4Zef3hPpDGMJtKT03VCrRyT5aZgjbFOaNo5UWZZQ3b/AqLBxam66KfXwYXIFI3YsckjdA29CERj06odhG72FRlhhxiAg5h0ID4WjTLN76lWXwB1Br/Mmwl6AorQuKCkhWZKvU6DpNWNJIFlW/pU2t4Nael4gmCzudDnkub", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QCArnE/3CiyxroWTfe1yatpVD6eSBd7f/ZBfVlZzsYY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lw2ozvKIzmq/WkQXWxIA6GaNg6MhsiUwAIi/j6Elwpae0hWdKJMZ1mL8KaYeDV6WMClpCvkNaGi06BFggepmskR83p/WsWKZbI3VbJ1MpEQvDKESaeP1rE4iMMI1Y//WVMNi06x2dlAM0lvFqu5maB/zxjjrWx7wL0gUrpsaxDmW1yVulyKJ44nyt4xael7fuiHEad4LN6x/5IT8ylb+ySCz08pva6w99J2sUdkzcLq8WU+Ezm9aSwlMmdvw+kKUMexELBBqtpVZptKXHnjhfQfGNRd1bEgarEselH35gxMxe54oka4FULGoKjCEGCkH88kjd50js1bjNocNv28Lytq6vRkl2wH8oRfi1cenJ6uKR+wVoQiigQzKFlzcSEXCwlyo2doSQfkifJQ6zhW4eWFP38WVl77x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QDaQmk3OGCISHWoieAfP17C2G87dgqiu2KL93g7I+kI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TTOdEHa7mqfYHJTD0ePzeDeJby/MMQH2jlePR4WVRLsoeoy0tSDiry/c/TibiiMibwqJGBw+GJRKSJa2C8r1drXdHlMBdhip0IOc6MJrkPci6hOlFrr3bSsj7+lYr++tDbZlOzzGaQcu9BsL2HmnVvaxb5DQohdB1Sp1f7cNxBnQSLC6o63rdJ5FrIl9KidKyo9Ctvu5xUOOJknY2fYBsYY5nSP/VduyRuB7k2us3+kjmq27CVbZrHA9cTFGRVTJDjFFfKcHTYgUz/mGDH8Qn9imWKffMH8xG/ZlU3l2mtxU2L/1RX5UGlZXBPe/VicclorDQAbRmoDzJzvjuWLxENzYqxVJ44kRD1kayVJozj3+lDPdcqC9CGgqUqlnJUABwEnxRJXyGPOtDlTfu3Dcm3D2vSSC7vxD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QEsGRATHV7j+rFJRcGjaHZriq/nghhioH01uxYxGkZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MdGBQJRl3ZmUmYFHuQb8uKTX0wDwhgFY0cfMvBfLyCNuaWkYNskiGfZrqI8acXkTyaxQ8dKWzzVlGNfO8pTIJ4idFf712DsqCAGx7XHc+pxLBULMxA3+LM9LSLevduOZwwPQcdq5WuEw2J4G8Gtg4KUze3ESxrv9tsdUbjm2jvNZsBcIRI0tzoh1Bbwtqbk0c1FoZcsvQYvdMcAw20wBsne7X/mmIEIm7qhzgX9Q76A8/EU2YcL8fnJAfCYShoYAaEu4sXZmP0wmL9sAxzx6xD39CcDzFMul0b9w+meunVZ3SP85e8MaMHz7CC2s+MY370imY0Fw6u5HcwsWgzYaD2fIg2ZaVZ05786O6ZyiZAFd4GRrHqbvq3isisR4vAOkMG7Qr8nWdUXaxuL3VvgFVCrFnBIzmXSD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QFeCD5NIfrp188kbZ6j/nS+e9On7me9+KuOINVO50W8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x596BtElGC46zmHPxzNFjcmVFtCCBeYcXVhfbqrSCLOZVcE7Ka0KuGNGBGMkY682tZ5N5Ap0xOSolTvayuL5IRLEV0ECZr/N+gjnWtL+ddwh0fJ8CI/osF9dKvHjdsVPmsQvOdPicJSxstTL4TrMLizo8Dab/4kSqaTpdYVfO5+HvyfAj0RYVuXgdwt6zQoMtJMqE6D82OaKdz6LgQSM0CqfGKeVYIlyqdauq6t3TjBbWZvyLKCDTYYPNKPIoFJpUY0vwgd1rz0IrNBAUhJpsCA326YzH7TswNbRSYVKcw1Gs0Dijv43juyFdHgv8tRxNd0rafhSKsbnDeIhGAej4WnGwiCXoLNTydyP48O9eCGYO//+teYvWfQ4mSSU0rYCx8mWl3rTpt77ZhakyAjNh9izAdJ8w0Gh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QGWOcsVo1QMBlqK8CgQNPXsjfliH82EQbNaQAGPF9cI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+2CWyuDsko7lZcLGUqsReA73/sZ28jvam0XY5E8djLOFxTORoddQT7/MPQWyZh5Q4RhcD70AlOLpZ9A+EQZ55mJT/HtWY3DihdGQwR5o0kLWP+9l0UT7k9E/AV4LU/v2E/aodNIv9G96/F/ksIv9GXb0Xy+pp6MMQQIVF/52NrrzAtzQUMrnbA50btkgvHTBppTGR+LZzipeLKTg7ZPgdJwH7g2s6HSPWRg38i2Mr0g5WZhdhNPyjl0yIH65yyz4UpGLSTknjdMZFFh4Ec4GsS+v1Y3zT6SOJNxUw3/NF0svB6j/GRgQW1/Q8d4Q92efm3gxyQxtH2twH5mAuDabRJEgytMoOzVdOz/do5hxLXtJvgBfaUrjcZanLS54rMu9Fn05zCfTQMhMUoG466gH23QIVMOOSlCR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QGfJnK18T2uENxJM2XtFv3Gx6I7XGRxV0GxR6+4SVaA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TPu2VQ63ohNMfN5El5SXp/FFy5L5fZBY46+RxxQubyHL24PhlfI6HH7zjNskJR2i4i8/5HJrRe+REOblNc64gOPw8ed61lvixt7PSqeqKiCAcB7/oUNx3hnOm4t3D7qfUQr/tv+QfSsKZ6VmSIoHXeugTZeJUEgSds8ZPEXKNNLLYp4/srZGuRUJ8O8Z2c6cRNB2r4LQdpsw4GeUvQSIeYGMXnFQil/LW2gsxvR4BLAejpxqTAxRBQasDH2L17YTGAxTZFyo5BZ/9SfAeIisogH0o3uVb3caKGJI5vCtRKrCwCmuHFMTyWcmMylU5Sv1tzzYB+euDMCOmIP11L8DUYBWp/rcIASd/2Rm1XpioO/1CaU0xNVoVLlnQ8/9FywvozKk+UHVnK72I3IiafS/R1xXVVonn4uL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QGkiKzHJrCrTysOb/WVARf7HnRPFxBe5ZVsjfBo+Bf4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j895CcBjIFsr1Ek9SatFs0f5IEWp4YiZASAwbbVUBSYgTkaw0FP7uOIOE3Sp7cJoIRibnG+hym7lppUWZo6+aKweL6MGn87EtGklLk9guwewGqwkEGczmHEJpQPbY6x0JCsP4S7WvSYVzMPEUou8bzP84dTzxoFai7A8gSaPdDqmBEAO7ocdVpZaCIiwWJS3DMb6freyOecfMykzJibl5RmZW3pv6FvzOCmpcb8DtBBEx4KOr/WB+Hv2Ytq7kT7TSaGsABZ9mNehFzWZbBjOk7VKAJYjKVtmKmU0djgeet7gEF8s7BAMT8ad1QarfzctRpvvjh12v+f4u1zh1W7oB5mnSZWlQX20JQ3r0AXE3IPKNEmImr0rivhnPR9+OCHjXcHSM1x/adsY1qoxtd3EFgpPKeq7Q6rJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QHOg+h1miJlfrj3vxza5njADMh9lOPE95ykmyDx37zo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Hxxa7/7rIn0feBO9te9AsmI9PCPmLfJY8xjdPetf78fh3JF3gQR/IRv0lXY0BGHTobVqn1k6QwBwShCUHGtfynLAMuSjkMPMuZSCBLy7T7tRfG5HAycyuwKH419cIO7c5OrqV+jRu0YzMAzJ1bxx9zjDRemDECGnNwIX471+huDx6TIUX3Yo9dmMfWmCYX/NGV1lYn9kBul4UNJTo/Z3Yhs3V16s4n8TTtyBunqEgPUIDJW/GWBa+2x29qfNcKzrfiBHjCbr/YFPt+/D19r39lVVoKkAgFqv1gSC3nY753DQV5yLaIxgBlSBWVBU0sluDxbk6trKoVZwVJPTbmbJ35F9HIV94Ruatl/Yry0UCm/lXzwtrHQ/RThFi1UX1Mqm70pzhPdw4nEySKWJSeMYmNgmKnKhsDAB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QHSsjErAGKf8jIVrHpy2pmSOAfVIbjvbkyaHFedjpfs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ragyDHydJTYRDWojYGdoJSOG8j8pt4Hxnn3aHTuuAE71Znanu6ESdvTn3WmJrIqohEJYmH+uCdx04+5TQpB3HWaW3CaXVBFAtIDmUKsgCEmPRdUPvF3QcJZlW2auZWUTpbTgMLs7S0RKBx7APiHSXdJ0BTxBgHeY1NYeT1gPvmpMmIuhZul5CU7bO6A5wQ+jqdAen86clh+V1dQnatp4aW4HyeERFxh75xZF4w4VvxIQ77yCRxsLGyVffk7zl7XABYItL4siZ8PDqd0SVjUzWo74ESAOral5vpLIkSSJ+HQksPIi5di2BFL8nmi8yiX1Ivew6sa4gYsWGakUIIraLWFQWUvyresEvkxVny3qqWVZuBJ4OIQMQ6Msp4yBgeSJDjhC9yFlfpaNhm9sG81HVsNZ2sWZ6/Lq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QJXJlqkABTachuDr8MpgO3vQ4DIfrd3/kmB1hliTPtk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rZplolhF44iVlOskfvsFEvJnlh0tUEVkk0OQx8TA4zKnM5xDbj3bystRNgIY6l4Z843p2oEtp5phrCEuRX/ZRA0Fvgx5u3hIxsSRApToRW+5k4EpPzpMjIDsWRvlyZPa3nNMxsWHOmPcgvSD2/YJe2J753VGsTbxwT9TodXIqSPGJJZ/TB1KD7f36LxBZUJKV1VnvPmb1uY8zUbJRzVo3sNVqj0VQzK4cAb7OOsd1SDb9GtsdB24CN7rdK+FqWyauGIccnSjs/fpZYg4wJhxYde0WJRn2P7RIOVVs3YLmuE3GMYDXHw8TDto6rwEWvZqpBIDxuFRgDTOq1QdOVV0/fur0RGfqmFRnAYZyo/+qCShKPv0wyTTEwf6YaUcw6iXE1FnjvlXDz3aukmljeKXTK4QjFytgEbW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QJiNJpFoOMmXnevjkXQyVRbDMRmdXQLCjgJaRlYJbrE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w4oPFuwHa69BjuF1sqcuiWis543hcaDOaUYhiG+tSxG1aL952f+jV/O5anhTO5dFMm91rWzA2Hf4Xy8+CMy5zcHSjjpDTvieshu+2VXXL8oLam6rYNuPJE4y0qJbmHt2Xvg68A9hw90+WHCa5bMWo4KfEEjEw+tguSjetKl3vJ/xx+ORgz0SMwuMXXgueNpKU92jcGaWB+ZeD8qeIcMzjbF1eWe8lmGcNq5NN0v1lAtGht1NRrNW/av4DUQ5TaXzHhFj1E5dYggkJ/Xj984roFHQhiPGnUtphFUi92Z1wn/DGxs8AV/iuOAeNQDTNW6Ue5h3a4An7Iw4q6yWYuhoU+btHfcs9gnaG2+hoqcTikq3lUDu5ieq+Xyo/ywcmgsIk0Blhd0dbMf1zet0K3UwZV+8gFA/jN4/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QK/azWOZ1LcDi+YdS6EvvZHg1YHuKSfBVJVubiLaIRg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SbPv3fYJlD8W6rk0m0PIXHro957feAAr0QGFTQxwIN8q9iuOPaKdvHECKP2xj8kTQ26Q32J9MAGsJQegh+WE9Ua6ayCiXDSAIRKaUAoSOlTsHEDNdkFW/yKsV+3b2WCEqqA+oG3EV8GvefQzAqCGE8m01fSrcT0/mqAV3NnuGXdN4hYxi53E9v4XpJnA1pOb9Xvf9JBiOvmCGryy3MJr43wrVHAlW2kU382edYwtVdvqjoOdZc8pYri/ccX/AtybReufW11eGJHWQlyAO/XpDGmAenSDWpE29cvpYo5KpR25grsYneG93Yk1TF+fTbElbs5dpfhUcBurCHmgrEMDksuCEAPmTnEGyRsUEFuGAAHh6YDvkiDNVNIClTFpsBZnxYKkPcg6CYhsZozDzSlOQEXaXuMzWSl+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QKUuV8XQr+WGOCTs4h3K8ZJ8EcC7EC/5Hs/muz4fCJE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "D1TB+2w7n1hHrNV2CeJ8WWdRCRPfdHpKegPKP3+hanYmIdBm9cxzn8+n1KWyBipLb47o3IOv2tOMB2FLJgXEUQjM+gLQ/7DNNmlbFxXbcF1+VCUQ+cPQ3Cz5JrpSOaIiz+UGeimwWoYNF174OJNhqu8IfMqRnbC+oaxF9XJKg6NHa1mrJMP2dOoaHhL4XJau+zFnU+H7YzXHUur4PA7nx2hIh/InvgB3YvXc3Pf6/LQSf9cGo+9AMajD1Yhi6bitEzK8vhatfQB9WsABN4LsOynrGQpmqJwKQwmBnXFC2/p3SiAGQ0F1uBcshfcWX1HtFeeaIHkQYPpaBeFt3INpNDFZv2Ql2I2964EUgb0TIjP3J8ch2vkP3zL1W/+cbHyFZVRn8iFaOQQ1rLSwe313BlpIi47gtjMq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QLPY6T9WD/x8B5pJfOq0LCmMtgKCOy3O8xPNWhKyiCY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kBhEdbVWGGeWyLTBaP8bP2/O2fGtJkbRrN54A5yEwmU8C0siAcEvEMuQk0HJG3u6w6vjFMYL/rqupKQu3BHmQQn9vUpDIh2M7lKHf+/OC1NDUOmziZ1j/LUGEETSbX2uCSA6JsfoFQf/nqwzaq2qvsSgXPlS6fKsDtXyMUG0z/gMbjhYulg7mBnOxRe881nTY5RVf+qpaXrHh4SBnEmoG4EWxIy9RBHFKyR3j4njcVDIZIAaMvVCCQCjM/PO/ICRJcmQ8JTH6RuYK0Hi7Ka3R4+GPEWqGgiqWP92rrLSDmSAGcu0TmlcB3pB874Jf/lRx+F1/7vmSlnNW5UQ4MAI1Slnx8g7zVxvT3Rgjv8eKB1VJtMsrovnXJWxINP7AAYfbnCBtBGrQA+XNd83RoiHNdV3svKCwum2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QLo19kCOHP4yupPKJpR9c+raoxnuYm4+JldTRYKDDpI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "68us269CJ3bs/HvmYXAfvXWhYuQKOjkeLVMaLEViDoHY/m/WCBmwDPGRSLpw1gb4bSqR4LsXuDNdM8N3c1G4cpBrPLOGLrdTTkrBAoIsev9cp1Pl51mWBs6Z8VI91CBQwSEXWGJaGrRNIA1m38DJ3H2Hpc21tpImEo+UFYR+jn4BMEGKYo44l7MISj9FbKwyMWT1kZHD2T3FQyrprfrGI7mHivzQJmymtcN+7o0NtQRRqlysyON6uToIYJqJowUJn0LF/Xkp20T6ng+RB/1kQ4FQy1kZ60yk4jqN9N/WEnpDK5AqeqPfwQJ1NI5pknruhLSaHXKraFlMxgtRIzRtUeO8jnehcwmr6TC2eYLNBH7lYEbAOGaIaUnkRQx7p7uTOveiwusIZKdGZM+sH5wbBOMpqupOsepX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QM0r1EWNAdjhA3buBWQv7abNt4HhVRCQlvl/ghgTX0w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ij1vzy6CKk5Dkpgi3pUZ0rURUAlpB6IqaJleYQwOti7JeBBK4z8ORRhu/hQJsWmm1ebh+w4DNrcnrFw/b1trVPzXMj4ehf/uL1M8164h47t2ejgcmODtYTNm4m5dMV5IHZF2b3Qi6J/xXCDrKYUdf+FpQQoaqj9RJ0YS6WOa0Grr14dkEhVTkNqmNoX94xQ5Wh5BjlpJdfJlTFwzyMnVvAranIAPgisevmLGBwvLZqfTy9ZcfYQRMb+j+8gD5JLusVh78n7nh7dE0CJVnENlNutzeX+/fRHOcn1+xWkA3c+/Sdrro2NQtpY6kKEdZo44wRPy+zLk9YbmQz/ycZMc+raQOk1+50wK2bk4GMPe7eVcv22r/4Lcko1Lpo32qn+IY64SjsbxsQzpizRoOOvqc2UhhLRkVNu8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QM3M9f0S/OmICsY6+s7PtHLalgpJO3nWa4tSBpE9k2s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jsgaziLo4Y82JwXB3VJB8eeoeIkzOjlIDjRPhSMyFIF9CFtv3BrAZJNzuj+AzmlmogS1BmbuwJRJbL2wfnLomtDJoEh+kfwit6GtKkdjt9DxY7tvMIrW+jDEMFcQG7/6AXWroAUWvrkxIcTZJCSaNLhGXwabEJIUrqgWqERXD7CqCDofxDMHCoVPKGkIiOUdpgiH7WImpuIoFPG8J4FAhM4nl6DQ0gAvhveIZ4ZzYooEzmlkdhoEkJVrO1Qss5kJJ41XDp8tibvOOtoxHTijG1ZKcYpHYsmiVJAXnqjUDUlokHZRrhWajO3pyxVpbiS6n7+uJoGb/5BzyhoO5NpoHaMMAP18jvPLMmlrqq8KQc3YwaQsBt/XpTbjwgUC3gmMJVw7wyQZy8cey7gJKAqC8mcoevXDvTre", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QMP7gzUsjLRHl+d/6AlH/ilkjoH99dvyM5INRcz3rHc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TWAms4CgmZdDyqpnJgYVxUtOImndtj8EdAV+EZEaw0i+gq80i/Inolh47yCw17J5HGs3I/VM6rWW0zjpJ5WFRECYZO83pkoNc0/1WpP8I58Js2gTX4zf0E8p5I2Vf8OqsIUY9YVYlEpfzc3YrlQ62e4fa9oz+9CkCaZgm/gx6NSAgZqiugnF8w+wzz9d9atz2W1JaJtXWpvc8EtF61cNB9ELKj0v3M2uTxJeH+12Yyib+zti/uZ0IA6DwbXIcdNWNKeyd/kFkuwt9s5k90Y3GNXZkvkHXNmpcdrY8VLSnvG9NtwoCmp85HKzzoZNC2QJBh7qkcX+mXvUcBUy6YIxe4vos+y1vejIHnO3WnZz1cjAOwZgltbPck8pVnsZWi12mxLizIFubBPyypzul76rUFETYKmQw9AU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QN7iW6G7Gxbjv38IsUXzhwhHAmNzYp4aWbSJShmly4c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "93o5mnG/FSP+XXXqhUiFvwQU70ZvK9Wzb38Zfm/rV4T5XCgQ2C/2d3y+0EYJWLIOdR6yCg1tuztZdCBTU0eGJjD4D4kXolrj1OZJ5SUceIYvQG9QLOgSsJBZ/eeLrowegdo5IuetbLScu+75wvs4m47KhRzqv0g66b6tBqp8c/0NY1oCBnMcxqVORq3GLS0zEla1BncBUaXSvKhcxY9Qsf7AKI0WdPzWgpeXIhURmBzTgrLLxzp5zGgGD8F15UikrlwmQxDmtaUXCfpPSgbRIgvlN1dGZv8L9C/1RLO1C8ZYcgWLRNRTzjlqYnC5kjkeMneYwZwd903Y6nBlMYLru1PQ5XEl5kiA/0tCBIAaSts2+njq6mQLVrdQaDiMdl24O7OgOLjL0EaG7fGOSQV8DH4RGFtYV93w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QOL8muUzs2gV20nOFE6GE5DejyRJBpTNHNQMd3c/NdE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VL/CiPWd6dTw0nnCGV3tUJxKqoYMcAcdf5ezFITE01eZIQUAKPRA7zuxTRXEFa0rc31qsNTGxA4GHgpv2fIFE0F+QBqtqpGc3eqMO5dB27bPNM0GobzrSviBwIEFcGrO9DuPhgnVy48V3GSCOqWf6WFC8XBhwefWJ8BFo4t13oi+hui4F15cA0yzzmeHkA4p3e5VCdZWeuPORv9nOXzSpQ1ekSe48F9GBk+imUM782ufh9WZH4Iwlcszjq8CV2IJLHicmMgHNq9QKtN2DDN2YK1u/fWhytdpxfoSeI5FHOUe/73+Us0eAA1apMm2QmMJjqvt/NuiaVzmpYkhAk/f3kWN2JRAGXjC9nSa026T+oWAxHd9L8mlNJ7hHkc6E7TD0MRTov+b8T0JtXWyj8i+BzkBswp+8Sfq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QQTpsXg8W30pDqjDMLw7XcE962/z+E6VkAgC38gAGDs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qzeKE1ycVtCO1ZVxmDBn1lCc8Drzz3fvyuDYgyeGuzYOTT0GsgOe8MVN4MGw+gJoDt8unxg/J5v7fP/cKTlYnfdjBNzhPB6UP1vmMvV8UqP0Efc3XrT2dNL1gUSZCTgZp3/B6D/ipjhveedDKhgwZ3blTRl94hINj2tPTvEfyoqNn0weP853bfY/+EhH4N8IIr4cnTrMsR1hF7Lrmz7m1U8qdlpuJn4G5iV5J1jFaUKQ1EosIV4qw6AFjOs0HHxnqT3tzDqWLZHkgwpFJaXZHHsoVPSz0kJWSUhz+Tj9BePzhOtJxc/OaPmxioNbo6vGVkFdsd9LSswpJFGYrZ1qfDo7OXL0DlSErSMr9/jJ4zNo+FGeoPAYSgWhrztIb079Yc1wZ3E06nxoXLWMVB/qb8fedg5rSJbM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QQmCD3hwAi263kLkxo7kShpztFcvFF+s48867STU0po", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "n1EaE0LK82qWALxmArkeBI7uUHbCXGuPaWS7k7BVxTpl5ySNofxSXYg59H754Ry2jqXTI5z2W5TKfI7e8Jzn5YhVQU4wyRwHmxP/ubAlnjzmr/2wUmqn3zFhkblevAJ95Ooyzb655NbGNx0egdJnwyt2/5CEM/SEdsO37zZCVD0qTbMBaLYYghCxpH6sA4zBwaIfMAiKuUENK+tyYZ3KvMMKbQqWU0Ktbtc7V9Cr8rRRpswQ2f/NWBjFFCpvRVIwvVNTvYh0pBly59OF4wYoo1wWu0MNYpkVLMnZrp+BCBcGCh1tAFq1NvJr34eEc0UBi/6GOwNXRrjxGoEGr3w0NNfrmaD+sCLQiAtYlI65FAgEhlZ+sX4Zh3swalrYLAGf1rEmqG7+OYQ3O7k5cLuXq64n166e/so4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QSP3xkYAvH48j4BurxU+gJA+/+UIaaGr1Ap4AWtcot0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s57W2jo+kLKQwJrj6OqXnk+ljmKcFmWtNydnpvtCo8EDgJhV3PNpyocfGWp6WrfCQuTStKqzu1qw4Qp6AOXTY0/YNfk5MhvmctIXpWShPcBoLqnTH1M6kmOrkpme8FoNHewXnYRv2CsxBi0ecgCbmLcu+DHx/iru/8ske8tTVDI6WIqLDCS/LwFVz6gOAZxyMMq24HszCx1b62RNnAcfQIdBd0uIWKdZKFjoxtoOv1s9VB6MWRINMIa1mnC+9i9633a/bZqNxD6RLgEBXUQkYVhMoyu5hX7apLwMYVbOemaAwL8IK5kid3axuqdqfjtMS/Rst0zk1u4bzwbzV17OCVdiolHMIfW0/V/vWtHO3P45dj4V0kIHo3ud3Pn5SXaCuPvbIV9zx05U9Kd7aCiqkxBDmcjMw/Q8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QSYYp5umwuvGeac4A/zsy8vKp7aviEDonU2+6z5C8jg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8n6iJXhqq1lOugI57tBX+MUfWCX0PqFzh7ZTk9CEj4q2CCnjjOIRi8ynJxvQPoAhLiAtop87fr2Veo5mXeeBewE0bDN/0stAtBaPUST/MwKZ0tTn+FJZVwaeJ6rgcGESoC2iuYH17TwTknWK3DZyvKF6f8d8AyHA1qHxob6RW4mSvoaI4k/+uz1Jt8gF43lSmk6N6fpM2hJR/3ZNGAD9OEOQg7zsZRkvq9iRaO9hEDnGLbT/u9GNnz48avZ+1cRU57upd4I/ymyt0Cn5gW151oFl/4/yj6eXDkxbVcDsb4P8flulBZCL3DG1iIx692rweCYh5IAGoPpfT1X4p+5HlgB9Zzk6q6aVg+GfhJrdGFCeT9y9GNBWpEAinbxD2B+ru5eFbGrS54Xi0sK6MA0zhjtXlXgKv26N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QTABvIbOq7P9X2PasCcf7QX/gmXSrNVoDbGy1YAn+Z8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ORrfXDIl2gjxIJRrwGUPJdA7lNxmAd6A+IhM9sN4USLB7rcEYdbtVmcuQLUbYY75DPLYpa0LflxMjK3zkQpV9eqV0lBRsDGbwuRgJjRcJgRJVI8GSZMkvBAA4SYWDAGbo2HPhaO0rhgLr1M4i+U5y1g7Lcyr/IDXcE7mcO3tE5aVbPD+QEfA+iXrUfttAtbUpCejAV8ahfZLm9hrxkMfNCBfxBZQyHVWiCnyb2I9hLBrVlsCsvymve0eiIF7opWL4i7MENzG9Al+i72buIAYMcGEGiwjiAaTxnlFhK33TjBWqFLTeDZ45eHG4SZQoCYTq/P+XobxY23WsdUAjvRtPeEM0/yCQ9PCXYm8C2rRrcDTQS1+OkZ6Zit4Hq55jpB2q+zEAosOJPez91i2m72SgaQrDT25p0FZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QTYfZuOisVKHhAoPs7gfwXqOjiMD3vO96YlAyp/t2PY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eU219yj3HLn/JicOniROAISE6vAQnVs0NZNKPWI7oMExkjMdQLyEq4nsCfXqvWwnTIjSjXe3QQWB3O1UQ9W2+7ysJbtv/l70o1N3BE9KbUXGJr90iicil3wM2eRmTzK6UGlAfwBWkcWvtoDm9KqYceAB+Wy1ZNgkRMZcEwSb3s+6jMTuqExRScmdTYRSBz77REUOZcJ7HQ7Ett8gssoJgOfXEvFFgcoPsgm1NlI7RPBk1+sGTS5wSLJlm4xBb9tx2S27Jv55Z60wXhU1WZWWOtRnIie0gPYNixQuAM8d6DkpePfaaJCjx9WvMdPO/td14KRZHsOwA4Ngjb8o5wTzUMHFfxVg6pOZ5rjYGA6UPDOEujiW23h9cQ/Hq2RHOxOu42UysfiMQy4nt45pxcldsaFQct60M4ng", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QV2XluW3KksKQ7AuiOwsAbTLMlihO88YlH1uZgySEoE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1yTX7L4pmMiZtuWdskE6AL5inj2tR4OZXUDJXPDJltwMmXUuyrXA34O8P4kg7zWOTvdsvMgOypf3QruJqafQeKsGAlpY8kxl0sI6lhLQhD8LHPjEhIaeoZ5r7cfOJI0K3YzksRct+HcaoEDseeK9ARS/W/pv/OazLi2gkm74Bar8j6JYJoDO3pW13Vm3POCeNPpd0z8vkR3vty2VXlwnAyAn8QA3gj+rw7qK5+bNAGLOd792neIxhTtHScZdB9EzhZabMceaWTKQ/ByyFquTnCMAPSU9BmbAe8uTuwpMCcM+WxCI+NX3P5u4fmpxInMIDOnOqGW0M16IYGhaowJqsEJxR2AtiqtmUoyTZlbCJYXDlwTPPdfjw0gcGXFoBUt5tcjWkRGG3ahN1hlFqavwwzGAVHTZr9l/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QV7bhXTZSZfMbjQyccH/+jBp63IJarUyt6JL9wfFi/g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E0QhyLGF/l1KSCcT9o5LREcZcc6wc73J6zTeFUK7r6c9mvDeJgbw4JLd+IS6euy21YqqHA0ML9xVz6sSyllHc0CM2WQP5kz3T10Q0cAZnW84arhGIAWg7wkE1pkBxigOSIFf/X9aGzlYG8BpHU+b9Wg+dkXYjmW0TiMCxFIpRjLVehln/MXQs315A55SfXAM064sAGV8lAtjmvXDvYRjnjE0uhDmxxpS7+ShVmyMIEKXV4XmGzskv97qCPjyRhZjS+kynVW73GF/tnTEPWnKC3gFg9qH369LuT2Vz74KDtWOAK9YKEccIW8IEhfM6GdhWEoSnHqjhbdihFb8JmebmDHtEhOyzULujrWt/cDu730FZZlIlttXxFxWcig9YY5DAhgxPunoQ/JmGnWZTrXveIUTh8AzJeAD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QWJIUNIUsCVfWCeseFEckTiz+zzJWSl111e7WWoZwlE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/goxe9rnHklEUSGrjbfTwmPAsJja/mq+KCYv6rEKYeHiKLyuMcjIqbX5poaxWIcdlOXa8TiYHYCF3GF6wl+Ve0X4ubkgI392kKq+/5A54Ae5pqJiI6ESLyXztAe0GOG+qoOH34yNuBzdRtIzNNGGVOKbOAMDM2Nl0jnHVGNrrAIsxVsBSti6q9yCb4ExzJbRzT303tpilbGBl5MaESqrJkYX5blLLcrJKtA9YN9rhxdA1O6K5WTHSPXlT8yME9wS4QGFi527a0ZxXUpkjTAUE61GzUyGPZ4hCuDqhUt7BAM2xs8zFDBN4ykx8dWIMr3E+8UsaEjZZCpcldoE68vTmGp7CJqcvSVuK2CDEikn3+mcKxuVKUy0+uNJu01ic3cYPJzq2BSQFIAm9NoGfXSP/UxSo10+7Bpx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QX92HNVGbDTkCkAYGtSEsP8nVCYvr1Ew9x6J+7FOhsw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "h2Hy4VXfUi9ebmenJwD20CBDr0ON83AooT+IfBjaItfVdPh3sPnK+7mSt5gLwqavXkwzgjL5UX19AwNc6bvd9N2qrMuo07Y5vdfRLUeElpC6RUiOQ+n4sSN8dBpPhmOJdQrhRiKXuaClu/PGhBeeOc+Y1B0BZocqDOI+l4PSoxvX+DmZUEY/67cnWCp8a4D3K1qk+SGafZyw+9i4aBoVPv8NuFZ+m6psgfOiLLzxuarwTPqFYlwYttnliH4xu3/x9KmV8RDVrhYAeRzpTX8LFE9Lskmt2My0Ua3cS6nzuDsln8KQanO8z3Q7/IJN8H3U1SOHotTkWtxeEQ9qUJpoUwBrTtCXHUXW11A0BeEOtHR3Bxwu6eMUNivky1zLXlxokOnMywEfeWXLtaaSNgUsfApVga8Dq88x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QXVXAC9+v01vTenubXgl+rfmQVFk2mLKRyit7CD9Qjc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6kIUm6e89NoKJmeGiqoTajIQ8Xdrhj2z236+ytlZD1bn11IczYB61ydpeTd0SdQGd+qj2/umK7UAqRLbK04ZN11GvHg8swGKezYlx5a+wSn8Nw9CMy1RT+LW6z2L7etn0Xk7lKSEm0edCB5Lf8HKJemtOveOkAV/6Fk93MelmnPEwh7XwCzh3QeGKUwDA8PLOGLe483n27aUgE6+zlYZaaKB1vo/clpLECnNzVNyRvqM3VNJuU2ey27RLSmWP9JDfL+HyeV1QOLcnoy5Ny3EukxUbOKKnvKwokdCNbQMXQmqKC4Owlp+dvf4O/EzrVO2Hg65eQAC3SwVfdCocWtEWykxqiSmKY480wYH6VuyyzDbCjlac9HYa0Dop16LwmVJiwwOSL34u0a3htvkAqPG48+fn2Okyrne", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QY5dkcJNWasU2sveIOZOriRpoN37UaZhBJvucFAQcfs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i7Dlzo5HKnRI562rBlW0T35cKZ8FynoG0w6N/4zP5SrxUkg7+dtLjbY8xl3VuL+ZHzmstl0O8ImG/UrqECDinY6JbYYqDow7Gb5o86ifIN3e7YDg1yhssLCVmRA53APDuEY96UlZgX942roCJ/22Zl7K52ATmwif8Eg6yu4MMZZvOBr/BSqT6JuaDjwGW9cHhNh1O6IvjMJrY9e7ea96gfkQM82IJSHfoId7gdcMStwIVdT/XQPhmYA/k3HGtSVsAKJrgR4vzw9eyB9eCgte84xpd46/TVFGuPi2Jo7yJXuUJVXPrlzEaz0ngok50EVXmaZeCAnZXG6GRqddhGP5kZfFlki8bP9D8wPdOEyKDJDUTxaXIjKdEAnou2J8asquKedbNaCtmq27aNycLDa7w73UvY8sM1jP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QYNWtHQCe/sOJKIsj6cIi7/JlsGy6GfZjH+fQHcZd1g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v4qjQdg+wq8AD/0ZTbcWY4P2FaTbLyw0fsuBO7pUtmpAa3h/PZDkVXoArhVLp2OV6hbEKD0Cv9qtgkKsDRrFNq/NQA3ZXPEHG+UXcMdWJ5WWspMr5mjyBX7NT30T6PP/s4t+RSIpjKIO0in5jod0eB4uQAb+ffdJ4Gkz0ce62Zl8aq9/oe0JKP3Kk9Wt9O8w05y37ZRVxN0cO5Dw8Bl1GYIvQ99Q1RJfCP/36Vo2yiI7scrZipSNLac4VeY/jTX3LP/HyyW0MZPz7hpOfyaYAea6UIHTcovxeTuF5KZ7Z1pd8GRwB4D1JLvphFaQiIAtPWEUeG7EWdp1v0V1niQSiwXq7OuRfImuoKkynQkhD9iZhEN1kuaeQRuGqASa85lm4mtcpwETdCP5bfkDLu7nWN6+8KqouDvQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QYdwz1JT7J5N3CXqLz7iGftQKHJnXfFXh+vw/IOEUMM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9ZqywrC9dzleigl/nELjh4wqQuB1fZPkM/EgvrcRQeTWHaC9o3D5rUV29CoSa2exupTcWGsjYh/hX7zM783Or9cq/CnuFgLxpPEBJ1V7TbgoCCu8pxv7iLPf3jlbPoo3u7qhXdXyEbusQmu5WCOyjVMLxCX1r6Zwc6mp4lBptHgzUo4lLX0bS534JJc41GEsxeRrQoP/tp3if32aOaJ8LB0OLf8tWOaGbaymYbP0jaFTRYPjWX4l5zkaglFX+jUmLiL7Z+xg2IAm+RMUczH+EskUQD4FSScVQxnJfrY20jrou2fq5FGCphg2M1ck4D6QaNBeu/L2ssb9jjLoKEaBqv3nrI8gRILkus3o/9+FRZyxY+euijzgrCb79ev+kvl4QsQOBQg6SuOl5MCELWh4xCDn0hCffTLh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QZ7aRP/Xn1Hx2KYVXr5HiKxt8yZgjZly8N+0+89rx1M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VK0EEnJ9qXJctqTVtQqRFSrpfAS8nzZ0Ga/aaYA3h61Dio/zddd9IvYU2zXELFjpknEmOmnWqhZ7mzUojvAVunSdgczPcDVdcOfsuve4EtY7r5bTzqbvtUHD6ARyLVU370CzIfLUnHFQ7iJyoRh/HP+zH1cyPNQJCs9cs7efuil/wGqyHUH9Mie5rRBMwKagxKOwd+ODno9gKh+NyLLKcOlO3OjGSJqqHyd+Nvt6ILSoJQ+JAe6/lWJSpLQNHiH7rq9dXcBI4YkAktLj8Wkr4kk/N4E5M25BdZLu7+vYL4GV7HJ2okklNdRxwD3mACODckxu2grvBedomoQizaN9aypciTBweBOBimd/D4wMXOt5d4mSHe8Bgs4xFH2+ktEaO+cpjz7QTRpIugZxA4oEc2O9s/tBDFvw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QaEMdldlo7htJEcbqKzqwHDFqkWc8Ad/QyCpWa9z8E8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oguCladvrrUyPmal4TgfKVLf3J/N2EZfyw+Jn+OOdzXXUO2EHh5CfeEY6lnJlhaM6WJqbPlg7JEC5z0Nr7qVspXgMkJcgx/BFQlLxMEVNoREWYrkDHzyUc3lObWwCOhGeQDzfdg+KcjNNAYqYUiG82s7dWU74UgJcklqr88YiW9NLU1ZKaxKmGpDuA8xoOkrkaz4UohqCwyCcwL1kiLY5knFJoflpv2ggw+bmDAIm/PPbBrrl0bPwjEQkDeyRUeKD0+/qmopAML+cOHya8KbQH1pDY15zC5HRaLdDn2PkLgMxkkgRyUVH1YSH1AN+74buLN56hsyRVtTdmTO65UUMXjZgkbYTWgF6CUoDODberTSuuLCD7BPoZNFak4uMZmHnc7hGQpvLJJvZC1lt0mieIw8nfs9wkXB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QaQ0nuQEgDb5jeRtArtItZKzKuLBWGQ3kClQh29SyJk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "K+HiMoW9gFUGkAbgqxY/L9IcKsmcHwI5/CFuo89pwNzw6LRO3aMfJRZQjVRIALMHh+arngvcZOGpLXhy9cVMi1Qo4Gt5EJ2q1QzJ8+d/Wnm6jUYBzauBnP3h6drnOS7If0TJnPGRT58DzcJlvlDyjGfSZYAYoAcQy2YLNBQIDUHz/GV9LTACuMaUea0X/px7ef358UBmNZL70cow1IyAPSlcNZCEzXRTqgVOKPN9iXBtx3xjRxGS4vEdIyschZG83MzZVJUzbWF5/pH+gQ5a4hauWBs+TkCK2Tz+y871E+Es0vt9LXs0GDkABOi1GgII/eMYvtOAPIfdkNG0SzMEzHfXB89hiFqK+1V13pUutGCvK2PXoJNAsNSaAqJIO932BrZsmtf6WpjTZSd7/pl05zm568BfuW3y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Qb51CPo5bBKlYtInommT6n81N4y09AK7PHvYV/K5CoA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X4BUWexHLBxgCX8kXoxdF57mICAq771/KvCyCY4jhGUU7wm4ep71u5d3q3w6ugE/m11Xhngm/7kagTHVFGmaB+C+oxiUDSXHtoPgR7EHhsyyTz1mcqV75+7jWaa5leyK6fqFFwU8kD/S1dkdf5RtQaW1JZNc2elhP+7qT89xYkox4fQpgvEwtQTNMXwoXyzETUpTHf/mU1liKfqEJ2UQoaBJsnaTC2Lzzi6TGsPepW2CGW+IKGyYP3YZZzhCWgdcD/WSSQN37/xv2A5t9suptO7KS6JLwgWhB4Warz/6TKXK5Tiu23OVC5pCTiGhWa40HoDVJ2uDn5ffdLozKYmBC1jjxnZUs0UZDljyEdaDhsLqJ/C26wFsvyLl/qgF5bGslqc3El94mH9c2dRmpMbjckI73jSgLDXH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QcZQV99426eF+o+G2WUdIAoAJC2JjrDYROvV/p9231Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "I0HWNOTQr6dNDMFmjuy+i/WlCdJSqysMWEShgsp6xoOXjqhyvUg07hlPy/QyYMsPX9vxftpAHjuuoqL7mkloQBJfYKx4Nn9CxgOvpMliyc+GtDPFBwnM84lsPLsK9fcFbIlfz5UikMag0sMbCvlCFfBNMi1KpE6gGxpnQduonEQrQOJ5CPnIkVL9ZDCZSRLuUc35gFdkPSE+p8WbRwdiooy41QUnXKPxPclobPJiSLpIgvVQklu3dAFM/zyg5CvYDgCjUnWV5KatVlVxXj7jvxfFAxpSmBqwgKLtnLwYnu/BXx7XeAN2QF8aZnYAlky2NUDK3JFU+u20/lEcP6++cgzrgO22UfrmBRmcarxfdFqIRnXlc4El8zKTWw0E8xeeak4yrLUmA+0t6UOZnCUlxlkbpX7jjlGx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QgnCpk80NnwA5Faz6pWgkPiQtow0BtChoDQmJzHkXHM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ELOex6H7Wo7yX4HRGKSNf0ubp4TyYFdzPzOAxlPDV1HsIKUWkpAYyIR5kdCdHw327RlfwLAGcGLfsRd0/sy4MMiisuF75CLrP7dhdjAJh0/zoF53AeR58iTCaIjAQzJndqibbikgikCwa7ksvnNDD/tqTbz1SzX4ihcLJ85stSizBsMQWhmoIdq0fUVKVbegdUFJ6pGaqhNb4O99ODO9gP7MMxED1ixHc5kPuYxhHYNo8N/7zYizq8421gRZSZaVK7jSo8vQ4vucValZV0O/5px0JkqPHjrN9iVcXHs4XxUwD9gFHVeCu3VesXX5O1Y3Nbz4G6Rj+p76EpuPUw2sRvOAaQXrQZ/6wdEmHm+MFeZesxD0rDXtQveZFt/cfPG6QAaC2QEQUVPw+OuxJs7zilf4vN1nvTwq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QipwWvzc2eqThkdWZ0rUJQPe3tPGs5jbiTbf3DfeqBU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OnrukVEB5a+RjPGNsINtV3HK33YTkEWpFfjiAdevgbOxh87B+RlMu3bPZTDKkBAVDt6hfR6YgLBJ6Bt1ejEpD2buALUkpxc4p6Kkq7WlnLa1AZ1ehiejmx64fuZJdJqORuOa8okdPrmqiED60V6QNHh95chA/hBYWNJoap4ZuC/xBFrMRrrzi/q1yBViF1Zik4PE4uK0Fe4/m0/EkBWM20/hMQeyckMCF2cTNVLTx+uN1c6EoSehmxut58gBdrq44kfFFkBC/Of0BShKO58keYe/q3CETDP7ke0mJPvMrV6n+CZRZzP30tQJqO8Vx/3duz4wU8Ln2ESUtt15Ya/8EI++lS6JU1kBPelfARQSxRKf+ZEEW5CDhL+1tL2H/ZTme5mOiJfyBhMrK4pYi6kQqU6zd4d3nTc5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QivXHtTfKRh84OIURqLSYnVIZdOIVnje1qO4oLnHJhQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "17QR7y+OXjqdLELJv+fXuNx/AXMjXG37Z8qT8xGQRILaoB9V7SPYo6+dWjVi46o+o7cWjbGpzt5ABkUHY//gm5dtL9QLilkjUFfHaRAMyR8aqd7RuXFy0ppNEdJrSohHLDAATFLQ4dY+0pOLCp6QUxXsEgiav6Fn97CPXpPXnPgmZcKGVanpv69ylw6pqBEEDwfEIkhYSPfWH2HU3X0lv3t8h8kE+e1+G7sVaoUNpfLiGrt8uVNWXndzGa5fnsQdcH0vet46anBhFJy9wxmFI2m+plswznpm7aQrewrIdF9Ve90/tYZgaQZkNPzA5wtiWjNLcgE5tFNFgGkS9spA5Fjg70wbf4zYVZeM3uEKpjJSpMSYn3eIKxoNdei95vo4lOHjWdL+y4/nGvU8J633sOdnTNCXC87F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QjYnmoBrcnfUARp/5sc70yjLHaC533uq4Gr0VHBqHYI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ymd63oXcPS163sd9boO9kUwxSITvLJDxXWlRUZju0mi8vc+pi/BaIu24n8+Ud5LAQxd3jOuNzxZYtEnr/nKc0vuZNuEWM0UCkTVwJqwMb72xMs3p6tDbSiiTnqgDoDZ/XBlaXLGFWGIkBd0YHnHdoae1nwjEbbZEjwzwUOiiAx3zaQOgd9sWSmQzZFvYWPQ5liYjg+9BWiYvX/4vtsBmvaE0rPxLXqdOlkIFVeSG116ZLeloHGU0BQjJsAgpMroJPqSlWtWHlSJgweFA8h4I+8PrBM/uoVXbOGlsdC2Lw/T95rtuzkDFvOeUpuyENdUz/Ye33CKIJkDfwAvrnc4d4h5xnUrszWNWnWqoaK55PyiHVnwv0yBk/mtZLSY6j1xX3l4N2wfeIxtdfYyTW/3JHKQiltp9gs3Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Qmnc414z7juiSrq/VDjkmkhQzGQsMkL7jCMfvO+qFx4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B6D+e2cAnkXj5qJ7rfPRmZP0oj6thoJz6toNERBLh7EavuRG7ytBfP8BeST6Z30kRNFybZNycRvGBSlBkjBkLa4H4jvLAdoE9T3c1VuU78hVCp2iLiG2S47jaAqbClVJ1bzemUp/F9Mdirhn84y1upIMuGvAJXvVf6hIec0RA8UYnWX3je71WivpR6LfKUE/5svAIXkyUOOK3Yy8h4mHxdO8Oiiroqm0hA6plCLNg4ahzIUji+tzCo5bWu6sA0desI8orfjS2ic7SB5A3py6LzRQAzrbuVGFYFZx+pRXkop6HofZfDoRP77Cw6xgSS6leYyVdB1ibdbsCQv6MlSnyi7Kp0qEzD9YHlIzqHeBjmbsJN/JFL1PH3gzHgt9oE3Y29jmQny99+PDAH5KVaXxMoPGb4BUQEyn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QoF3KHDHbUCMljmy6cPo3WaTUknPhKtVDOAfHrs+HCo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "28ysn5YVmFX5XtwdUwXjkwHgH6yDaKcUlVXALs1QICgmRy6Zzbv0d+M7mSEua3UP6y8NbbewJ0PNzh2upfG87qhkxytt+DpxdJY8hN6LmLKO4Z/RHDSx41bkRW42VTsmT6gAHneFaZ/kNg8fwIwFSljaBSjoFXK+SL9wWPd2aWmDrm1iuop2Oy6KqtSA9F4+oDP7iGyNaG21QgdYojdJ0XRL4tT9ZC+Wc3q/NVXixD1iRtMF+sfUZBynNepRb6hYP4MsPZGAmV3t5lQ2yI2aJpv0DqQuSg++g3eNsNjp5LrfCl6AmHP8ZX8s4lWpNk5oSRUjKznEsXdCaUrtR/JAWfv1aDMvaGbbuN1UJ1QQ7t/zD7EKX58bJzS7QN4pU2V8gDZV606BC3rdKSd6339ap6Z/o1L0OpcP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QoGvMiwQRe2TNnqHlIyCbP93ihgPdzXzTUkOr3AiGE4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cl9jOZj5G/mqyYMK0BSLAcVOXT3JEGKyFoTVKjg/XJk+VeDSrO+FCI3O0WaTfV2WeRRQkgq4kE+lMwyVD7RkPngaPW4975sW3/GBFqG0+FOXAfjTNgS2DJQbb4C7g//qZ9OrPEbMnsuFqo+g7LrUX6gcRxNMVBoTNPXYAYf51eKI50dpHu+J/GM823PlmLpn+KsMtPNJuRzG4Rmf+qfEPavQ6hmOUQ0OOLWhainN/snEurpwpedrqARXChA4XEh4h54XetqPSU3A6XHZA9VRuyXFlP2zUq5kr3pijlHZVAJraPl5WVvQEO8nbkQxX1WZzuAwD+ui7+Fj5dYFaKMEfnnj4JBV/mw0dFMmFp47PS46GmgIlQEAM6r6CSc13E7M3WNYP9Jbl/X2aDbP1KYUWt2S479ZnM67", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QoJtH7sw1GjclANj3sM88arpuxm6iqFFs/jVScZ+Ltk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q5jENypS03d0xgm7R2Bcd2U9V38cbmq6qhxPHXsyO3dfkJMhNslbftjW8lEBLUoTNWM02WMq0BZJRrgTuY/YZlXjeNypbSQLWe1IuImvk58gLr5nm+5xnT/PWC33rpmkLpruzaxLSKISGFVkjkW6FV3ppTwNquV+1WCHywKInNYvWFapp+ixffVFyAqDOMmKEbBOYXc1T+4PJKCPM/5eZcvBTaSexHRzmYsPo4+0eoRKzDtS5jhn2xvy44u3Tb/XkWHE5DkHTTYkeDjNYvITwQ44m/MZzchZw1yN+blcyGs4Sr+NQPVNu6gsJizltkeTMt/VenAJISGR4NdgsNjidoPoVTS4SB+1dog38tmD3eme0ui4kNRXBU+0wjqlZN1vBq29iNhOgC55LeuQw3Fn882aHfvNarZY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QqrxZFGNE7LqgJFUdqH6/5dh8nkLpUGM3En57QzbT2A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dkRuRk6hEVCEUB8+w2uhh28B6tKDOu8HyqvMtYq1ElI0z4wt+nFz6xMRfVjYAMf/Jhv7UAVaYkJRVtlZnwtPAawQzS3NYQxSD18LBFQgiX4AnTKEirQ4XHavTalKMkm0y5r5yyMBqOWe9BfTydb1iiO8W8iAGifwkv3mJn6N78j92gPwZHUnLgFGzjWp38Ead0seuyo1JqvqBpxTDc0rxiDhjAEot83EXxjwjsDvN0NKsVkl1zPmtBjm5E8QDR5QOTCxIsxv6kzxOGrIrJ1prV2Vz9ULtthkinvbjNzuiVEpvS0Tpg9MSomOI/bLaT2AfSaAPiYyslmsVjHsBy6xueSjxDFZ3kHNq4FoLxod3ThhK02Th76gnGRUXSGS/r9oVibweLuCIaUFuX412r+COL/1Zw8QJsLE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Qr4RcpcI8NId7GcTa3e60/zKtZUHU7aHbDKqgVWKueQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WgOo5nIln1pi/PB2TD3CZmf609iDaWHATkn+g7b2bRxx5Cu3E7cTaFpk4jlmQXKl7o1KkbhEaBViZhC/rm0JnlyTOSOa77qbEOZhP6siUAbqtS9spgq6YYQQ3votWmDO1j+e3QXGGNwBYnM6KPYdYSoBonRn6I3MMezl/+z3U7LNP8x1jmv9onxgYa5FmBpB0vXWSnT6jigGvXbJjo2MJKi2cl4fCCJxXAl4cuwlE4tp6AfKDdchuJjSCg7AWjYVqppruz2i0k0zbQtxX0dMZY1fdy7TWzldnfJrKhUAdC5Qmgam5CSPHGNKsYiTiZuwEHHBA/ujjhlzV/bu9cLGKv/ayS1YDKJm1FxBUaz7uZcrquJGjhd4lbacLPcCE3aRz4clWkW0BSOjijywhGYT8qjmSHNGftK0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QrPkT9W0IbZoCzdsqZrS6zoC9hiIMUp/Vh1uIad4hao", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vugVJRSvlCmJpzdOws+YUuZZ6la7J2dK+jd03E/pZ0wJ/tYwOV/EpXFnDno6y0GipxKQTEVtenvw0meDvIwDXAbis/suWM2qxy1ongs0lWtkt7oIkdO8dNx0CvQ3VjwV/xDmLjz5iwvDYP4qQtnsMevl2gigRetf861QakKvMaD6apuv39cKazvae2B0TGjsmrVsmqGrlrS3QbL2E07CKvYTh6Wa7RBg995hEdQw3LkKYtHLckcl/qhB4FqYtsHAWYMLvsy/VP87wgk38jAOd6blQheOY/lShjPtrOwVIQ3gTiWrr0D1rnwI1dHgQhfUaYi0EsaCwJ4k14G7e1/nw6uorhwuGfoBhWmvfOL4lG5Alc+g6V0uRH7jW1YRmF7qb0Vzg4r/OdDh6LK4eShA8MeZYTVUlP6n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Qra2Rz9+28lxl8gFam3zKvGKpEaivG4TPTzgeYeKERI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kKbyZZWtD706Ux+81ZFM64AtjzKZSIaOUjAEb+WL6JZoFB+z7nPXSX/wyHqJTMOH9suQqKkQxwD0aVYoqxnbOkv0KugwiDP8S7n6V+TCiswkebMj/KTTW2ccLc8GaA/eAZ6ShBWXbv3So2XqYg4pZZA6pFssHEs8Ga8JucLEMLMsCDPAAXwLLZykPhCcKANK4AHLEf/MtYhQZoBLA5b0jC5gpHr5hPWClvK8qAzhP1XoFhz29Q78CfwahlsAjCq2dD03SzE0Ij0XpDTLykgqAeCkjHfjq7TEEIjPmlXc/5HYibCZQ14sxhEXV6henetE5iN+0lo6c0BxyhPeKtT1R+20fXFjYWtXV7q1YsyLcPAeRSlMqQTS1KrE4NwnD6JTiUzEdg80cwOVkjk4weaoEm0ZXKKwmex4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QsA3Zf/eAsLvZwIzjtfIw3M47Q88aoEtlAD0OxLNdFw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wIkTnOymnZlWZt7IVE/a/ueLiq1vg9vVj/GXM5c7a/VW9Yp7kpx9y0Q7AzSXTdRGH+csXJewZa1B5X562mgnD3jAtYrgUVHCZWnYwxh1NiFJUg85FE5YFPLBDKunadCHx2+cWy40oYWRBBSXqSz+xJ2636b/KT6E43PwldKU8EOA0rmGvXIgUpSF5cwRigMl0bqRtLTpzpHK8m5HrKo2x2QFDlaTUKVXv6fEjYcB4HihDvqYStEN/nteS++XN51+KCkfoG2ebRkJMnJBhbDofoUaDRKDjM31h2rsQaMbYp3rYL2nC8N6lgIoZxAnd0P6kxsKVlrTmiHB4OOtuWL8Xtyl405lAyfC7jOVOklvRwzoutJquaU8G4LtHs2PtNtxIuP7Z+YOQcVL87Xys8OBHdgmT+lvi7hx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Qv4oQrx84YmsB2uUxzAXLwNAMsYelQSzuZqcXUU+yN4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0Ikoq6s8/qOo2goc0lEZDO03r70e9Qxs8eIiyzxtMDNlPtlNUXa8OWe8vUBLoiXtXhL4Ui4/VyYSGV8ViBUsAv1Fal7A0Dht/aUT2Fg6Fn6GvRfXpAVenNwfzVA/bvE25WV5lndRh8ovPyAdB+oCugfSAz6qRIQ35ciKNKprmVzDoXeWoi3IiIKoPD8lseblv11U98zVDemTDSuIpd/BQMc7yXIcsFlH1jcWjXLi3bBReUFXmETSE54a7+w0Dwh3O9LWfNkWj4nM9hwY18fIcNCX9t0vxdqhYvD7duK8afi4RKpRl/JxkqqozuolNCfVllDDFV3MURKlLiN4F1frxadsLv/jkYDBHHS5TmEZzSFetAHWOJNRf+YpI5S+U5BzyqMW7x4c23FOlF0wsJNdWEk37Eyn7Wvo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QvUSwfqVZFqeWYdbr1G2LTjavCmd+C+g/c8y8GAnRRM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8KjmmUxr6goBD26jYL7EjycvH3a6kIYvlb5LOBzwYgYfpra7wPSpPNTWBYbhWldTAov2b+Dk/bLB41uRQNxMB/dtFLXdl7p7Pw9U16HuZ1hx6f5EzYmXZETee1k+zbcnRNlWTBv+FkKsoAOZvQXHsuiYitXhiCewsdjwk4XDAfq7z1DnNBqHUyw11cerAmXvRhe/H0sr0TLG+Yz71hksWyptdBtG4JdHs/TGOwUTEl1Y0JgxjkueUGI9LOhESinDwcJBCUoEJw8qkweKH4faJ5fqXtV4q39/9stqsnHxKpTb8j89E9tJkmkgVPrIPA77Wse82cqrGgMY1xhPj+UUFCWrYohNqdk4m+IxJY6Rqbj1J5avNpokMULk+ahfhmajTTT25JUfsRYfTJibOprWVfROQD3/rbhJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Qva/bKiZv0FK6LMZ5XdZh+9mOGkH6P5nJZsjqAT+2zI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3ZaWsxNWxSEpDl1sPYf8imv7Qs5IeaINSXJmUHusIkc00C/YiAa3NTRbYDWFfVHf4FUvV1D+4qzgqYie/oj0xSti7q/h7y0Jb9zfhIj8H6N0WLYw0/sFL1ikSKFmvUD6NXBs7LqBvSJnX8V141HqRdihTCDIHZk1de4y7MFCJE5phiLnT8hOmZEXAFRWtmC+AznQOaYYuVP/NlxEtrXxcQCyMp3frSm7gemfpmcnpUCwT9s+Nm8m3e3zPozdMFQMd9LjLtxrizwXn1Ajj/ZeKgwGCI01NwU8hapDs7MOCy1iFSm+QtQEK9AhROMotaV25biHzwWV+EcLsO+Vp6V0JglOv5TBZRG9/0HfAXnL20kkupYFcRodndryykojk2ZLjwv3brIItW3kldv0Ql4Y21da/P0y9maj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QwDju8mGqfYjZG4rdiFx3jShLEHR4n3sKid+6QojgxA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1ehdBbWCPqhNqhU1/Xbo/0sxteLEdpItoY910hOYxxL7xgVeTHFaRYJMq5ShXJWe8tthlzyWXWt+LyQDGHvyWDX+YoocpSDonAepSNCnnAbRfZ+pUraYnV5Ws0L9H2/Jirj5q9d6Xy5XF/VhRBLCOTb68cbSHlhXy6n8c7QqEfXg1+c2uaN3fbFEezEnioojjDpk7QeiyPosxf4KHSdNKhYFOQuaUUNqfuIq/oKZKLNMV1JCWrSQEy/Mdqp3TLsnnS3BXUQE5sR3rjx3gtZ+Ky3LGczTtBgpfTxXX+WSHMbtWbOyyt75UJ3Qw6iFq/orSJw22Uydd7bDkoLmeSQ/kog4B3WRAtPyMslwYExz26d7722Dqm7INhTnVdBEfyh5cwEJuEW4SabxRaaxSt9u+7vS12kkLG11", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QwptC+6vjUubnPhw6g2JXdITO7XUmr3GcUJb9QXjt/U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0jfuQWKZALcnjP3dAcSEpXOwvi+l0re0lEpZhO2RAK1gkLVp8usHgWYNQnG0OSJVwxSnmcaU82OmPcO7UdtF1GJ4f/KBMRmYpAtsCs83WEUPCqWKAf5ztnU4KUPVKclRyhNQSPK6S8E1n/DBuxpz2PgOqkKgdkrRergvsDQE0+O5hSLNdmveUeGhtRKDJIzRYfnHmWNC7KlyC+wVKNe+3cMMui5gdjLm/Op2eVbZczyd+QP74jF1dwCPKTB5y8xo6R1miNrw7PuQfAH/Fc7J0qdkhLhCPz2xDaAa1K4qfBU9/zxuz3qWesvZGfeTrqdWTwSl7G/Tkb3FlDserGDwTAyKmYNEbLxrzOr5Aa5ovKn30qbnpuiLagLh/MA2OhKSwiUrjxkv2dekHqWAJ1I8mTxIkki08+6S", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QxAd60oCRqNHnSN4sHwl8qI3onbClKTGPZr2RXa10BU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DfD1zmDu7Q6SmXTK607pGOr9QercvV3fPXQCsqVgPnUqycdbos/EuueguvdT5sy9hLxHro3nTm8ySV+kIKnh4VLXMsdLuK6ON/Cmq9JAdhIm7yq+bV9pj/SzhknekeFLj+ScK1dDqGIzUOHxVui34WaId26IhcdEIuGpzWv0Qq9IYD3duD3SwI4YUBNOyayHXE8yZmW4IQdHupr5FX26idn0LSiqEKJy5AfhUZtcox0J+uTnV2O4VYsAPmznEKYqcizQXJa6pQtcpYcIirQYQAxjqRflCQcxX+OxmZ3AfXmcOwoHuo/bVo9ukYeFAGQipqTqS0FT9iKA0uiWJ9SsOGKtU6b6o93KHkZcZ6+BSTINZT+ZShzqTTds7MOfMGstkrg3SjwHA1FWy+SEFpSG/3s9Ci25QR72", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QxyGzGRNwk7KCT2WExflpBc9mTHbfYV/xBSW9ywzn7k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mEFK+hbSfhZrnLySVFXuEChrVLrLjPYK0LVNZGTx+0nEJeS9NJPPIf30p5CGjlRL0uIrlRhH+/zVPpUICGDa2hJRzhobHrjTQ6D51WvA87PaTUXaisiN3C2IfFMfGrk9M4RIl1Rv+nElh6mBM+6ifQK8X36/uSxvxH40wHQCkeke4gsLElhYBiRSq0i7nF1BXbemsc1XFVv70x++1oWjpaUrKLNtN95ukwLzP4tmYlLoXYicQxdUXOa7ODX/IXEl9oyuefXggXtd60cduCFrk1KnS61p0dlgb4joJC6dk8dlghC59u77A5vFotDjIPz/MKZuf5qXBPz9fwbCYk935h6fdsFCzB+vC+xzVVC+Rp9eGO5QKIy4K5XcHLc2JADqhn4DOd8qgJwwORuj4FvCiBtl717CbYgX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "QznwTIA9nYZgOTVd7nPwKbyXpVQ+0o0TqhsdGwGzzqM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qYy4DNaCKNQdwg5K5z8F1tP6fL1M96JD6ijupWaQtwIn0CtOmh0xX2/vX+rYZos9mDDzsGp2DUZRJ19ZWjGX9uZaroNpgVrkQ6WtPmKlGMTItajhzngcbKIboxJH1booHsEyhfH9Rw2EOsvWXYvVTudnS8AsMPVjJ/c6yxP4vY9cCR4jB7jrLIlQkLOm9A7F1He++RNiGdP1SpOUerKHwwb/Mfq6Wt0tVLUIBirAT0QTegMUUFU9ZSdcds+wRWJrQhLl6jW0bdPrTcQNgnAGxj7t9UYt7UTzEpWBDnEcal+LCvuvxnigsjU8g5Ah/xET67NUBGtCtJBHHcJiNzxP1iTXIae8cbMDiPVZI9oaGXeNRMST3OLsbxZjqm3MKZTKMYGlFlUjpiX2j9jVDf8njwzUUZ/L1/Ek", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Qzo/pMQH7l4PCGTDvpXNm7y1ztdClYk06RnnF7uMoN8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bdphk5bvtaLJiR8m6QhI1LaqhH4MDxgNaWU4Cwfy2AGCA1EdP+GOF++Aasjg/Tfde6VJndjHy0g2hJE4kCARQ+PrDZxcFNYB6O0UPhDJ41jI4Zl4cCcdYes0+zbvaSYRes7aXb7JMzzzVx7pvw68nRywmpWzw4eZr4J6LI+fCkBm7cKRrst/MspiBu2IncX1XHP2G86g9bchrIDUPb0Mhhl24qMhZ7DyEMS9r9jCLlnmF00zY1Wh1AWbsIgNXXkOFAfhmhUSQG3NERbdczt6l6Zk5yf19Ntjp78yiIfX+VSjFCbsfr+QHWCf9xJIiPJKaDpf+9nKjJ1Br02OXF2NbVv9eJheFDzMSBEACYszJIeWWopPAZPv0+5i896NIsnmKhP6fK5rd56s8iJMOnnZs5MtH7iV9nz+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "R/sLhj/648J3CeO2BYMxenfHPNBxUh1cZYXhC0emKs0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2VkcBVdJKPXJvO9eSAKqbTEHkhF2d/E1A/7jg3AezscV5/rKAbAybwTjT+xM1HkJ+YRcIhPZG4zJZH71fCOj2HvIyP3RXOqh4x+6VlnzWIktOLHJEwRpUWObYFEf0hTGRMtBXv5EOcEwl4Txjtb4/xgpOhq6r9j2Ico1k/IV8sa+3j2TYObLhVGblP/DYK3VYCpMZiUPE0cywi/OiCr9yFuyJadnhaH6QTyfhyCMu+sEi1TxRXTYerfaRFuoRWTT00UYP7kQUd8hyrwCMFcbxNllHbijxOLhT3AdNg0pKoOll/YrAwvPeP4+s2iqifmm327PyCtw9tIbdLt1jNZvG8Ir7Np0MbtBP2CqQamo7f62TjD5iPdjAU7iWFZaKDHAsHhjUsh0J6Apgusy0UyZQUTYl/hbvFgr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "R0Vd+66J5vnodSig1RgDKoQDlPArixV8ebOW8TGJQr0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JSslwgXh0pgC9L59vizYmTPTR2mp4DS7JmiEWKg9Q51ItkMeMnQZ/vFcEl/JaJt2COMctONgXUz6tTYZdz9xkAON4T0pLRFSEJ6uow0ZIcP2xhq8ZLrMGgw7L0OqmCsyJOH3abfQkwwza6QBEL3M4EwNwBrK6xdsyGCF1n4zMYQXHQgoP4AzUUX5Roi7ASizUgGrFejPJlyJTefkE7XXJMXVEI4RXxEuEvvt14KLPD0XsnV1NSZI+iK/ZjIbrcX5UtCax9urNRiGrMLY4211sRQsJVnMz8tFOveS4RABcUnh6MtI9QVYB4XeZGB6kg//DLS4GVHcZo/ep8KC30smBF15Qnn4KXi7l9zeFUVVRFZQaLcSPy/nPE9+yQqK5OKTY3GQ8a7SHNCLYvHaCrBO8VaR52jqFNBM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "R1VaIYIAodh2WHkObInNTurPr7N6wDDeUa+8Rbmd9EA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B0iULMiLA8naCwWTGjZt+ltGUCY8j3lNcuEcaTp1NsPLQ1hOr78LhzojtJghYfQ4iNcd1Cddjl+OuAwOHMXYW5jLcUz5eJzc0Tuuggl58KSipZ7guYjeNY9XVUrZ2Fqw1mTPp429M5GSF2dKANok2rt2oTFS+8bPMjNJFMyR6duhnpY1rPLt0PdPKlK6ic76kjLt+/bj651GR4cn7lkfAdQRZtmD8r9UtC2eD7E/9RstO1jWGfoJ64XO41cfcx6fDooyuuella8OKVF41BVAIRfuvZbIePI8dFhlxeZE1377ZIHWDWiT7P4cpUBXIptfrWQd5ULVf21gmLqzCC9i3TBq6fA3A2We71Rd8hmyNYopN8+y32Q5B72BCtQ0XFdbqSwgeNo7Ck6pOHKL4bkztlLTTIU+4vP8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "R2YiZVT10EsSLvxdmc22kQnsPNvV9moJM6aAja7pkd8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0iyAh3xHmBoqebZWwcyh4YJTGvHtlLI2BL2WmqG1IBgyQ5vf9bCfKP8DmI/+d9ax78N8Q99H+Tacor2geuL9mzU+uhDTWmC0DuXCqMwghXVLS+9yeEeQJX3K+Vsqzl3gp2DSGGRtAYPwRhEs8rhkVB4CVed4NYZ6pFzKm+8BbBupveBMogWtJ7aI0sWQKocvjve+sy52lH1pS9T5aBzpV2ZjZC5JMi9Jx8evfpS20Omcy28Xs2XKDZzB3dphaoDCyyHHbvBn0iZKds4P8iuSIAUTPTRvHFpyZn2JRysUwTvBEq0HzqDw3az1kzJMC39n0fNiu+1cu1p5CLVC3m4ela/e3NOgJjp8TU4ADwnJy6chmC2/4dZlf/J46KZlEtkaNd1Q3znVk6nlid3yXrKflg3hkw3CC1hz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "R5gqixAIt/EULkZIHwl0HFUViU4zKBLaHH/eBNkd9MU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ePEYt8+YSvh432J7ejSyCCYzTF9ZEhT0q8Y4g+woLo/bkXeURi99xOBWeF4TfH2VZS7QPAxK38ua05vi2A9pUVPir4CKtftnn2Y0JZvRABaTWLQun2YSrqcGzDQr3pnJ13j2M62G9uKdA2oBeZsIffc88vpz5TBt9Y/G68cRL2AgSNAGZfL3GHoklKEoboHfS5z+ZawlxQ3rCtYiYKyURu0IJP18/YIIo2EpJzKDStNejHMvyHG49RgwAZLi8LyWCLM+/EXlVlSJ2OLF52EV1GjLL1YxhhPZLkijFgPfwcZ9EKCoeqLqgih9QEDIAONvJPzwUXfxyjFclIVJ8grnCOxLlG+W1nL3YgkPGdJirjK4VGlXBeEOhfdSg4cNvhyeFMhNk3Z64gcZYQnWwkODgutyLWU1P/0v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "R6i12fm8RJAGJ6tJhwtjNYfkwvsC5FRCBNY6/NRKh8c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vlin+3ooWi6CmV7h76JtZ3h50W4nqQZoJCN5K2MQGH6S/FU0gRmXZ8hce0YWvLCZvnUqd1IALxr00z07jyXzUjvx2qGsVqbH+7nfu9s/SkHOpghRzjsiCTgADNxbmSask+EgTzbWA5A8D63BcqfTRXIV2ywBleIdwYkGHwkO9+cbalIDesUtu1lgPAQVHzBCPBMNX9dbTed5zpOGhJv2Y0Jx1nf5Os8hbhGXLPGCtTXjJTDwS/XvfpdSloV29hGCQr9BuxE1p+XZy3/GMdYZCCnpc7IIM81dd4fGe5YUEXpZrYIdw+AC9WeN/vxaQ3PEpKrswH6Kgcg+njXSOz9z1SOPmlO/kkArCthP4h11E9ubHcr4PXJt8lxs5Sno6c8TmuA8aFoFtgAPHA18DdFjv+PtZvtzJm9U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "R72V+Q6Ah/K0QqTnMg8ZqmrKL01XOYr0+LRg2993iLo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Bb+41NU8O0DpIvXOzQon2KaD3N/5s5EGQvby861FsDnGtKqYmdgXKejfET61q6gdn7e/URnGFBoWFo+4F2Hj3HvU5jTwjEfq0VhwGY/woPJfbp0yJ9rC2lRr9zPTaD/0jBgEGITSr2qvXb+B1w9xb5pmw17UeAqqWlcCxNuV0fU3ip6fIf1L39x9HI1GyZ0EZAp5Pxza62PbaO7Xgtwk8r3LShdHMqd8Gyx4I4RQkwWl/OFty08UbkrCfhD+iM3LZjuMAEUK/p/MfWcG+dfbLzXtxfiL5b7JsUo4AIFwML1t5IRtCl5f+pOa7AP9sZddQ1TjLyiy68TCWNCqFvZkvEzXc9O+6Tjz1qRH6GvvwFvfpgeyUE+dLjk7w1YunaqW3OoieQOhBC4Tfy0Xy2pqSIAXb0TM4fw1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "R8IpjBorc/ROQmf7tXiFI08Uy0xanO1aFFmhlUhwKOE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kIVyZttRIrXco+monMSqpvCJooWXA0vvCwmsFZCf3tityobHJADG6J3MSoOEolTsCb9sk5oFFJPSrrwXjW/RIdybNbT4G3GgvAnF4wCsd9TqKVlQ3a7wRq3sy8APrncJZ1g1VVy19aawK6B9+5Hy+SKwLdTuzRgXtCTbMMoxPxWJAF75Ym5CwQo7v2/EPGukrNJRODoB7vWuTMg8CpKp2pKvx2mSd04zVadufexTQXKJWumEHBGp/ChDeH6Wvt8bGrP99ztAISlLdt7zgoyDa08wLtVL5wUbZacsZQNvLPCVfydaVAFvUF4QGuzMTlnIu/pEPQHI2KtzRSTycafOLuFBdxz3OL/Bjzo/CmZu5UYhKqchQvJGHuvy7sz7At3MVpuWTMqtadsrxnK+DFBB6heZ/f6b5xzy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "R9MMMhxUiqcqZVbEVEDInLoupqObjZeDclBV0ayk6PI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pYaWQ4Y3thc5Dq0CG9Z9uOG2eVOMEiFkHqCn5Pm9qWaRUPdjlNiks3c7xUav06O4ohRlfrjBW1ewwp2LhwFptBy2Bv45T+3VtvDT22CV21HIpXY+sOdYjKpnAXxOKVbOuwxEl8VMvp3fllvbDEecvxx0DpnvC+gflnVhwpSGkYS35hf/RbRCX4ZA/ujvclDCJSnbNO6XYK7VL0OiP4lalzd5B/X7drbWbf4oE8K6hY1CpRKEFRtKPsJf4SRqcS4uHltcCtgNOGu+wPm9KnvwRtH6Vi8xc17e/KGqEyG/k9QqED52d0AwT/Ix479MWFjYoQF2jNh8O4ESP+sI53fu37+A/DeuaqFLOjOn9HFA+HkVKlQf1kuVuHNzFRHSIL6NRegqEEEc/s+Dcp3sHq0EChDDgZOR7D0O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "R9oFFNdHZE26nfiSuUNRjH9AKEfN7fu4n15mpUpEeLI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Oc/GfujcJvbM4LhN8ll28Pvve1K+XZRVKjUofthPD3fQ3obZQm4ohjehUIvf1GKLo4ijQEIUGq9Sr2S5SbYYBrIRIGmH+jIdReOa3M61w3BK2/ghDJITLt9xd6hvfRgbxf7+HimYbXofl7l92Yoy/R86xeA0cidakrnOYnZxDPkL5k2QHAWCXbClj1KBz8GA3Svqwm8SgJrYZ/r8LxoEACmNOkocDpBk2zO4l4O/kbFo52eoRCouz/2aZLCRQkCZDvIRgmCEhTvY4pH7kvayBHXfwif2ernqCVnEM0idwQjlts1tRrigcIbOCQCOLRjDQYP4XjaePC+bWVY6z+twWhdZK4vcBZGwfmKdAW2INkizJJRjg5Kk8t/C1CQCHMUcKKHt+Gg6xJZBo7Mfep19c5erApZRTXzP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "R9y89IP2OnWeNnn4vOK3417B043g7oKaBlTktvN43ag", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q92XAwPYejmaioOWwC77SktZAdPbh5bLmc/BAmYEMfur1kxGZe7UBzr6/76hGUKFvR4AWH8L35fFZIdPSRPCH5F2S2uzHujgrK7srd0gf+d5QXrWi7LtGw3dqHFlj3Ve9ZsA4K+tXhx2joxfmfTAblo7bRejBHA6jR3EOtg2jHT0PfOjPAzwC92RXRdTuvPT9GC0NYPzt0a1wl858F5VS7+TYhXFzRt/7wOcAv6eA/g1fhMdPLW+5lr+Q+AdbLsqzClk6imQhpgiJPKBx1FdnBVC3h0risHYDDpnOnnLuxuBTsSVUKOWfQSPrMM0vPryvXwsTcsix6SUCWBzgYu2GZ1aUIY8lmNhmEk3Lz6IWpe7FonvCLqTdPLRJwUguL78A0SccDbOVfDT1imRz4ifsmEpfAD5vOOI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RAF81neXpmj8BEIWDsbmMSaQu9GEHBRJ8i5xJC/NyYM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rfAVY6k+X2gRbCtKeWabUGYzsTpoX8ZYSstq4bU2IXkYMCuN7jGYMAApvXaUB2et2yCu5U+y1bx5DEV2XGS0Smx2iUBPq9x1jAwJynD57oVgCSAzyL9/G8MqDxrm5RWQ01o6Bvd6d8mn2Wcy95Pbr4rV+2jOVGABNJfI1qKiFwGatYkJH9Nkb/9jrMoQifYZqNfqTCyrnGVRmO576hdqSiFxVFuLnOYe0azqUX+IWpPK6m4YOtSlM9LHfTVPGU7QkvVX2as2N38QgRWw20cyz6t3AwwLNvucET7gaWq3g8kV0MAGSt+D6G+lWj84cRxjeFOY2qRZhAkt1eRq/2fT6pum0KMbZpiqGsBOM35otNLB3OEnznmtTKU7+w7bERG9TYfjOatuF6KE+ZqcoNcb8DvMwk9JQX89", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RAm0qm4P/xwEGipUkoe9Kz1VMll2BlVlU5J+tHF5gsM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qIObbc4Ksy8+zrF4Z5l7YLMYmRjU2o0pYb4M+OPxa5SutqP3JEj0R+ebSbOCr26RIooYm3Am5E5x+xoAni/ceZf4lSZyatIZJY9yac9UhS6PC1a4h/kIed9tYDIiQMXeFW5A+lLhGhfEE4u9FzOIqLcgXLRhXy8zZeZPK0km1ORk2p9XqfvXq3O9MexX6MUAgXEsL+sGUOar4LFoQeTZa3ZMeMXh9KTeaIo6yszxtI3zNQ3rmYbVh6UiZrL0Tev/a83hKE2vbaeRmQ8LRdDs1f1aaKxmHHe6EClOscVLZHj4FFRGJuWeKOeY+epxmOy/lA0M7EeezBHjYhsRskF/a3HEWqZIaTw+STffMUP/KFLzA4ZFBEJ+g2raP9qtwXnCk5ZNcvp2DvZ8zopFkbT7Yb/kcW6gI7pO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RDCVnkyRUEiuJi60ytxSC6fIjdc/fFqenDhkyMghNbY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uxLJElhe/aHLd6VAuoLyjmVMXw1zDOK8ZHZcxIewsOyYLr/we6lxsI8FvgzZ5AP6K+K/PIdC4MGYOO7I+AqIQ/OWcIIPVE1qmw4R5yYHkpxTDZsBsiH8hg7B3w5DnD0BJ5afeaGrj7tsbWYeNT4ncO2NUGGJ+3f8WMiUekXQC322zfc1+lXzqzDWpSXxTyo2DG2bt76CRVMztx09BcJ7lsTHq2e2weqKYRFBLWfLJKyJldLlkxeGoGY8S/o8+6nZh0Ef3XOrVMCtN5f7Q5tcKsAmdF2PfzRxPzrvbn+LeBSUH2OZN7xKwoh5VPsctT6Db3UqrxOFhfOn4qqct8s1z5DhFap9z74KxadY7H5ihG5yJlxXNkjdL1NGp2rO3AZoojfTrMFuBXTZ7hpnfUHbwDhYEpLFDUVt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RDgyPZGLmfTBUaxYzmS+HNiUrMWJ1oza9kFTP7tMxuM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NOfC0irr9ynYX2NpvMImRelUOKNuKWYE/3Li1YNliZRIWoivCLeG9cMARXGTsAq7ztiXg/F0NjI/vLkat0XsO4QvR7nPZg9doEtfXvcBOblI7R9s6aFHu7ovGWdFJnHTIrvET/zrDSKeWIxDsgxyXHrkvVF5VtxUX8p/J+LbIvch90+uGvQqf/S7dRYFSEntV41qepui5Tiwht4jBwzSBe/rnB/4dP4S8IQjdiFJ9YXb7ZIJz87iNBaRwGj2Lzki6updIPykChBd7+tW3HjDwHnZY4QrrEF72vzDBJQrd7NQO0PXCrvM3PhWQsvRnS2jMNbNMa1AAHuyuWU6J1k3SPfwhLWHDDiPx/TASwKZhNFbzIuuR36MjdbFnwVKTIE1yGAHElO1tx3n51a7Pn7AYa08KZRE4E+K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RE4X/CJA3DybVm2Bnsfc1Em35Ogd3hAUQas9RCRfMGA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YkGuLnkxFkXGkHs/XrAzIHBRkvrpeQYR4U8S2Zt7IfBLpZV1A6JzIbEtGLjlc9VfhiRaUGQFrlpBsrt+MnCYODF/NhKJwg2tlxF0aFGZPpO+qF5sG7q5oxsBPlmUtKKPZbPrZTG8L2GFRM59RS3jz5MfpvPbhRvnweUxAIv2OEtd+3WZgzTaDnPTWgbbe6NYxNM6DhKIgGjpaRS93HHS3ZARF6F0rMPWcIyG5SeckyeM48+XGHKOYPj+O6EgjAGX7cV7taI7N+dR9GaVWahDp0X4XZl/UoUhVgaBEEZh0l1rlso0ca+k/I0hH5iYw0kcgvuKVnyjnov3DSFSu8CEL6tKCPwwCckAo1hHq0ceWBWFH4p2o9Q+TEjS0+f6ojZPz0V81xc4aFKrG3rlQkWBZ8UEGl9lLvT3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RFhmNGXnrT5TkCIspwXRZTjutk2aLnx2sBAMY4+npBw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OOdyXco/Vm6lrlbkHMkWqiOquOM7Dr6ToVN66MZhtoCLEPytENnpoJTz5nc8GcB1Q1gwb50FFwZJdVXOwoIdxy79JL6ip5si3DFNkH0RlKE9pHt5KBuaG1Pg+audloheNQkzLjw24+vA4G/vKrJ7eEk6NsWKU+k2BqGepI5aPKHucM+iu94Nh2hZVsrlmiMSA+omMNchqqo5d4jhrN+FsFQqlUt/jXdYfjiOc92ouGRXVghG0Q/qiVP+gNISvaUNvYm2/CK3p/5eBZAZiYyuwAXaKzHSsTQiUqoIzzkXXjlQWZu3wJhEYQ714TtseelFwC0lHFgkJEgM9loSVzfkd5AYw+qOaptE5kTqj/BtIstK5AilLGZT2iXyG0cpq5WYjSbzT44ufSxbYQkKy+h9aekFxpvyFqEw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RGOxgs2y7Z9FywLblT5h4ffhSCjBmMDzjsRYtlvijCI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zRhcsQhcLMACHcta0UclY3NN1Zw0hBI1OidMKOpsFA5QrQ4ht4/P1blcftder/qtUok6nvczs/G8tPSLVpLuKiNiKUbGiB3uAzbIugD6nezGDKc5Cq5xhint8xpR7HxHC1upEJcD32XWLMnpIJOGIMViGyYuCyGh/OASB+LQIDOCFTMixRm8Kwy/P0L6mwRycRfYRwWqI0PkGdLQkKcyPrlDQeXgDyHZZKGpzoTJHjc24ICe58kcyrGJBs8fvBUHDrz/F5sHzfvF8QBnNKV+TBp5jbnQr6Z8lqutwea98El6NLD/tmKJLULu+sv/gj9fcWB36d9Z/3kcVV31Hxe9ob5eAYRLHsiVduLZYYo5Iz0WmkzJPcxnNPyh46AGfiKDywANw0yjsqcIqSNBYFBad2qhoPO255Hl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RGtUI68UtK1ePhjQ1yN4qTthhNOVdLPKNdTWavKoNZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OiLI5+NQYoCTgsJhltx7+Fu8+o3cxbbs0QJDHrpUukEVHb15vz81prUlh73xR+vLn0UvF+dG2SmqU1nOENjc7bBdxuQUMaK+fxK9AtWo5ZWtFzpDMqlmImcyJ6NE03tR7Zak3F44DqTpCgUJpbU6kWXIq23hbgCoclMbvCxH6MyuQpmtoQ1SG9Dr22h2jRfS07JSSQyuu7b1rdOmBoazHDBr2DKbfbBZJeTmZ1Dzpum97YWxu3CcpHvhEhIXQoEMc9+XUfxRAApY2axKZnDcEFj1Cka6DHmaLhQU9qNCIfrUcDnlEYZIPuBeueQbFcGi+lyg5Cj+w3EbCingqLJatKgFPAUqqMH4no2bOCZZGE4jSzXNLvEZje4NOYurKhSTrHHv9U0J5FyKScYyOkR3IOuK7xMBCoa4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RI0+OXSFw4dWD7VUrjMLvBLCoUu/2266yRSe9Ea5aIU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gibUT2UKmS7Wcl+gB74iQ/M8Shg4CTc1u5tGjg4ddTqIdC/7wNHlmKltDs7uGwHD1sGu3/6jRGqetSLlO+IPrfISLNIxmEsiQnS4Z+uOfut7gH0z7K3Td6mHrVJauubS9+l/3sOo+zPeTVyXyWA/UAkG2qEAhSEUC2NC+XGvu+v2DaPoLlv7nuaNTYFl0T1dUczdIjZcAl76TVqM5h8aNe9yv93XkdQjy8KE2NNdjSd75l0TIChLPBFjsGkCd7Tfd9I3gPIBkyqBqVA8tqi1+IK4b1MFhTbFjmBC7v6KT1UeNKzNW6BQxYdeVLFS1BKcTXLSg8oOelZYEZ5x0j8lAeULhCq6wjPpiqLD1JTKv3BidRjWMZrM0RJO+1Nzd0eqkWfozAQ0cRoRZb9SvSr7GQl+DoICcwdw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RLCL9YDBm/eUdLA2HlHt0vXcqjIUUYautCLMSLsbI9k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XdiVj2DYa4RIvJJyAvAMOony6phU7w5iilC9yl3EPbkEz+YrzF5zu6utdYtPNau8FLdXU60S7petdWDTSwaC6bPMM8Ac26xeA41Vm8jdLHUWF9gB+uo3by7b7Niaf1sq7hHHBdMTg6YMhDBw3tBS2Sd5WuXchga+XCRaffHvAG3iFj3DfX/3h3hvTGe7SVOK1xc5qTWBUaQSZpnEJFwk2CIVmYTgsQG3XgLs79khqNKkXPxFh4JQ6SFuPSLE5cF4eM30FLojfJQliSuWvpifZYcJsVHS0ZZwEXCrsOB3XZmDmUoSDiKWJrgT+I0/FmQvRf5978x9ZItGTRRO8KrFZCTK8E76uxAP7/K2mty/x9xWHF4lQvxS9+0vaOhAgvXt5udX7k1jYNWGNu8BQNkyTkk681f0a24X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RM6mfGbyMHJ84P5fZO2zmCkoVjJGrqzzxIIUAFae1nk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w0j0ufRWdQv02AW60dHf297hEErvjaRflL+/XbcBnb8+tIxPSUk5HlnGp0NeZORjArPXs2eVhdWt6ny3BcTG+hm2SjxeoDHx8xjSCSjBZv2pqo5e9k3ES8CxqlqyuVMHFAlujNQ0WhGAuBL/e/5W9e7RGfVwSyKRarZk/xl2mxUgUBvXsxrBw2fR2PZk9TY1VkadbcOSfhbbIedwW1+igYJ+YcvVatsxY0aK87jfTbz4a36kn7xOKcu9FOopwCQpwFM+ZgsPXg7TrL3JSIYGoDNk3O87P8PEM8rjV/ol0Bfgm+exeo7h/o52PwwO6lHFT8k326fGWcP7CQAcTB5EuDJSz1NmHDag6fLsYIkyyC5ukVleK7j5U8rtHBdTS8OeIuC4TgZ83Qu6isFM8Fwyi6X77YSF4yRV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RNU4BR0d7lyqV/XqZMXbJEaFRu5Db20RMP0qVqxdt1Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6mokvDo8o8mtzw35F5jnQweTOl9lRMysMI0ZHxpKBovIYJjINNupYNBpPghijpqI18W4/0LfGL23D6UP4vLhGzpJZpdOhqDxiWLAwNXMJ9F/xBIIrRiolFf7PJI4Muw234XfA9YUQkngvmqm9gA1fcTMdbUhzOJs/06XYZN/yHO+kWZrLUSwx+N5g8DhumWnEx0iXycMom3PXvc3uT/8ywe8yAqHYFsJzlnsF98HGOWKuT2ukjE6gAEmNIpPp41sE3OhoPiXvXTCayvnBW3RwgnffnJUJTAo1OaVfHeJaS8AXamhbjJatFcqAVIhc9ZjCmvav0qcDP3Au1wO05NtKoXjfvN5XRKgS/nOiCAzHrFcF3dE5k2IIkklclqCs+w+2fja/dW2LioqlIfXrEvWSfk+kA6vTN0S", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RNYJT0PLpI3vo+ixYLB2mbTb/bDtr5fx9OI524blcEw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eptiqfqjkF036WSxSyDYuye+oFBcg5oh7zYFWzg5+btZ7DPsTFniWxpzAJ7Xabx243evOS1Xh04oBmcn5swzSlbOS1p9qRcG/Pp7+lEu/7Yq2DJteUcFW7U1zWTWpZfWswnPLiaoxcOB6UtThj7zf8HB7p7y7pESqb1AuEb21sD55OAe3iBk77hUv46Ovv7p+Un3e5/Wg46sqmwjBTJe3193xeGFMQ+oZN1YA+wL7tldpxd9CmpeUuYSUQKk071zjQicvgdUCIczUlQt7+T48dWCdJSeXurueXyD+qAz/HyqPULEV6vljKdzeagXZ8MhokkATt7AXXWtFyPZZajaEnr+I7W7rFBRX84T2dXlkoXEVcFC9iy/Y6cr/VqoHyd+DTztFXQsaP5Lal51cjFX0hT6Kxtq38N4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RPFqx4/RBBi5tuWHwtiqKMWJ8NyptEAxI/q75pnP2WM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FoLCQKQVnSbHGoqymBSar5I5PmHjYc0qvJxY9JFzcNLI6T2wOXST6Dulz8WuA+/GvZ4RffClVKdwpTIAum2eeuNYcWl25em/s8fVhAvxKI5uwDHnfSePqPilhU6bhy6/7S8V/tBQyETvOUppT0SojDRd/XcVqZo+faC/Nlu+MFjBBia++ftPdXzCG4bKPSbH243nzVlwENSaPHEqLN7ir7hA7grOaF1yGWRQFgjTkXDU6rYj9xc6/bPG/rsoaT9rEHRNqpgLLW4zMs+W+I+06ZHhN9+n1lat113slweuw2Q3KS1heyLfsSrT8OEFqjS9mr50g7JPQwf3a3CTaeI6IIkyFTd4yTvYry0NqpK1c1m/I9NA6TgNA+5iTroP1IlDOTcTUAyN+pOcaWbEqzmavTbF96IBrL8h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RR04ngXBwSFwLMp0nL4MnHJOcMVbkRP6R+YvQmYsB4Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SbM3tpbQU2+qQ1Y9lNvdkLL/K5hC+dxgCekdjh12Tm1ejdlut5pJYywjw4Z0AOX2NId8oRGl9nBG0xfllT+h+DiuDvy+2XVtDv4xkfB47hoLL7FOKQdkDhbEMUfUw987pHXYC2HvHRp6hzbyyutHF2yCTpsaBfOWe+WSyD23JP8TuU3xvltNrjTYzTKHzDqrFDp2NHzwR1U6BuA3yWiK5yiF3WzubioYmJLqP+IP9ZTUdaUXkfm+0KY0fSz/EzujQIaSlLfwzN0KdIW97a2tlqT4+HrEwvY0EsIbefuy+pOhyS9NdzajZsI7M7Xqc5ijfVS6N0oD7Mws6JyNER5mez7EMyL86Vm91YE/77Iq4Ou9fe2DoJLhWeKBM3bQ8TGNrn1+PBKVV2HsNSUQ2qhISvis28w68YiK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RRQZ+NMHP5218iRaUpa8c9QnVIXhxE5Lsw8rlrF6f4w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DjrW2WR/8olw5Nou5vYARuhEj91DIB71oNc2oW1R+ZWImj5vBw5GFBaWnf2IzMTFmoQPiPoU8Z8E20+G7RDNGvElXpM+SxMDTY81QITgW4zfNNpgbJbn/zz3+8FjTt+qvfTcEfR6dv7PlkcrEJyqqTKmSnuCIxmO4GsBWGiuV9GKI0HnHMxAJPcBtYErZovBDICyxUCJoLUUO/CxUojNGcAoQytZcgiOILF8BQaAguLKSH6QddgR8SgICOgMeVk9La+MQtV/msJ6to5nkdeiU4XkelNQ8hUn6+Cs1ihzMPOpSfc4yqFP17g+Me1ILMOvdYwvTpiDaJrAmx/CMwJVvo/AYupKz2pKDHtFvW8vJ1ssx7iOaIHyVr+wneSC1JrdqjxuZdL83WTWC2pSH/po2wih5gJ3XgKP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RS4Glg0bEacw+TLi9Y0prJHO+yZwuEawSNSMFoBPCs4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WXy347eKSPJT9e6StYqNeo29RhA5eKO94BxTzrL1e6a6pD0No+U0iVUvIazpnVXM1hHkJTkKg5UpK7NwIKA6MttiqZtMKfZUVpMTyCB9bmVb75hJlZAq0Is0ZHyj00g4IY/5egPOCv6U4W9dnVa7sKkPLDh+Ppkun0q+QrbRGvotX4ga9uGcriJbJLgkTinE8JJmk49a5lzcCM9M5GVO3TIhtKA7NnDeY2QVcCUT9pDHobS6wgI/CPEWLZ37MDDeigi7BHwqiXu/vKdT4G1+wiEYGAfMA72NFCOnk6KIHkrqJ/N4SoTDlFl7emhIB6qxgV1Hpz0dFR4y6oUuL5csX1/tHxZ0M3snjzUkDt2/JxmboiZb5gRz6xvODMgWnKtmxaIilStAxUoS+a/s5jILFN2BBVNG83NW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RTsCQAoUUUxv1f+QfUjJsbpNhFfeuu4ijUjExv53XEg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FjxscBvaBYqrJHcCiLH1vT2taff4AeqUJ48+58Jc4e75JNKB0s9VMzOekMui23nidpys2NI0Ec89rQdPdQ7r+gONCNUzBgLlBmiP73UuRm5xncdGWUoO6/1Q/S9y9ygxLa6l7ZGKUPPazg4oCs7XZw+Lgyhkxw6Dc7T+kIH10FKfGkZrw1aKj3Twdcr8Jrvc4IOfuIgqct+IjoB9ERF1PTfbU6O2JIOtbjmLlk4cRm5XBCwq2BJO5FoWoDS6UZfIcOfQ8Oo0lS5pCVWzg/aK+4rExd+txBC+WDAk7I4geGBNS+M87xKxYRKzDI18iOP8j/tMeJEIDShkW32oS9sJgAtfjBXfhGN5uht6lGQK/pd2yMXN+PTbM4gmONuzz34Rge5/Pp7tWBl41yW1Vri0HHNxrFw+6E0g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RTy3VBGyisPB+Inv3jxewOSYyi6BabRpZ0ii2d7kjLs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E6RT3oqic5rKEvC75d9bKvk0CT0YcdQQvPodWYlhLqjokE66OrTQqgPsVBYfeFRAyTD37kcFvEmXENJXsUHxfp50xRqOykrbSHej7iTeRXUsDpNOKoIJV7zY6Od3cKJTyuhKwBlqh2G6yTOt04zi4paqZtYXXzkjh6hXj1kUIivSBAUF1Lmvov013T5wY+I1lTAl8PVSbCdLR6GvGnzg6TNy8KLYre/BrDARKXCK6r2jutqBy/IJZRYkjaBt5mUN6Z+6tMIFUfrEKkQKWbBw70p23QtFAy5OaXDhPtufoVP9O/EEZDN5iLd8RUr1hecumpyBVGgdcy/SVNX9JKIh0bzoYSj8iUG5g8GvN+0Eu27yrRIUM9ZneAOitKcbWl+pwIThoA5W4Ms6oO/ljSt6t/QITbsn+Tw+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RUEX8xUspgloTgAvaFZspHpuHr/GIpbI7v8qmzYLPnw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/l0YOYiNhCcPFqzTB2fNw9pa/fi6HIU/PpYgYf63S9daOLS3HnscEF4orAJ8Xy57VIYf14njnJMY3fCWjIUBO4s5qv7rQVNXJf6kfVfWJ9UnkTNjqcxdqpaaTHrQyQ0tSBpSLIMr28Jgl9MOx+ZP3D6k6mDcTAeO3yn70ZI63Tx2NtbFYIznZeS7GfrzPRiUpMCZXM/5PQCoeYRN4Iq4BY93AmohwJPZpATvwpGxtrg5/EjAzpvpRBSkyFzwk+1N8tW+SRRvtoMfV8KGRHIxsBdMstE6wGx0mZrnZExFYuqpZmJw222mMdZQ7IQSp7OJur0pZ56plytP+ECaWDZ05wn6HcBn0NtW1qlmmixkqoismkFEBHcllrIV6iKCdx+nAzA7NaoV6tgc4J13HQzlgBet7dPBAgVG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RVJF/qag2mzzivFuCNw0P27AYCv+R9AslgR9ytANEko", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NV+LqSkZkT7qLmTHhJFx7fag43eN944pZOlqcpxLyuINiE3hk5NgfzeRf6kR3dV0y0menfm7/q1XCCL5ReySGTxmFyWevc2NefyXOxrB/XszRpYX+/6z5grdjEwYOJhUw+Suzb7yz6N/ws/MjL89JK27s7emZxLP00s58hAQ44vD41IvW4bS5Evx7t0FDmIFTVkwPX6r+KSZG+a64niDegZl6bnffxFcBKjAWTgth94mzkRq7TYJpTuQ2o/BJuFrpo3HvoA0n9ZJRpGwcYuBRPt+EL2baMcbiLgZ2d6pC+0jK375S9ZFSG5V9flElWlz7FNCTtyEfz1TCPW9CuV3KNrg2EnepGoWW6OqGqpUdJq5lYTGKM+WVj2iN/v+uETKgYT8IEbYzv12d51ntIzGkeD1DYXiB246", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RWXk1SHOuO6gR+7ACxa+O9bDj/2fqJpNEp9xvrc8GDc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ky+pXJSCn6HCk+JOE++j/g8PXOhgeIJXlgtp02coJ4LvSz/ywe+WGbVPDQ163xQln8pmW5GEiL7ceTMQkv7zFgtNP9b6VIwDe4QzQFvFSdaxihY3YzYeUm56uz18n/TB5aXsLARTanbWmjAl/LTmF7M6IIFhjnQiqsFkjxrPYRBgGuvMXjQZmBIuU4fLXMCJDtYqHTqJjrHCbJnLz2JKXK3wonU/1OKQVv0kuEK6S4unDM7OWWpptKdUMhhufD4Cf7rLzklpbnrv5t8knJ3BNg/gUb49+TvCDRl4arDRNz+FFxhYizaLiVJ9ekNERwr+TaPloa+mrJ3+sBwbhOg3qz3Zaam4otjl0NPlwfGXeHT7p/+Hth+gS6X2lHHP+OSk0JQgJeI7SCANerq1SQTnkcAlgj/JyK6l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RWZFQe1QVvTew8iJRCqFe3ZmP/x5z72otQqbCsG1V9w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7E9OZBnRQWGlrze4XF9+Txk8Vx0aw2y0+7aK9GO1sEVuX4BBG1OlS8yWAW3LGJwMYyrnvgYS83vsiLqcoW9cRj3S3dkShL6nkyR+mCB1DxUdmMyBKxHIx/ZCJ8zoVK1o0CiT9U+FUuJTHlqRQ/5IQbxLO6UDPO1xnWtdstsAOrA3UqlhvHUtrGvjgC+ogPJK4FgiNdBSSMZeGaBcGAald25WAGIWVkrXB91+q1uUJhZ+bQtnvt/H3GNIiniS6G4dTuEAhrrijLj4o98R1KnzUCugUZqsOxNTnb0TqKDhexnbXhUfe9OhUs+2eUgo4N9hZltb/PPFqKEJ7UAWS5mPtk3TkamOwDA0zhCFMiOzBJKXEHkx6zUladNrimR/Nhdmipp4UTqDspz+G6EPpWRYIdhsdOZSxv0N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RXFbh1JwuBX6hlqNgf6zkhVt+ahkmU/SG/lmV/m96Lw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v25nhtV9I870+GQtcaVRE4DWqQEakp4fKjuti8QwwyaaoKdRGmhoSkHkiOK3DZeV12s53/fxMEx0aDKUIK5m9gPYtV9xtX3MBASJBQrcqbrxZ0v1J6D9m2/hapErd3P5IQSuF1W90e5kpbmX6OpcyKOSLavRFkqX5nPpKRR8CoyzHMEjzrC/RRMFO3PWkvvXY3cP6SGbke5FBEh/B8eGZIRi+ULjuhFI0a41P1CMGu3UlHrd2t5I78/9g/lhnXctY6x8mYXQTxezzDY2DhGFoW9ftzSae7fyj8F50zZZMSukUab2EJv02p2bD7LwCdLr/LhQwJ/XG3F3QtXVpABa/1BcoVj4ZCCwAiA7zusjezrcoDwoFJ8STRWJ7fi+8R+Zn0isSVnT3NXFTO2WQG03PdQKVxxNRxdt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RYZUpK2fMMn4ebfqXNIXgfmh/Mkwu1SzGMEpyhRAQjY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Nq5qLKxqJoVRy5gv8RLvIN/UC+vGXKXfcayTXTGPSoY4/c/65/csfgfSD9J2JnatS33gT31djknXbtv6H3yOea1g/UAP9tWF3T0laORgW+8SF46WrR5dr5ungDYcXe46/eYNJfBr51H0Kuva8yfck0IO7QAamjJ1WR3V0VPbyYXsTn0LlcPwWDapm+LXjJOJPLB4/fx5SyZyi8UX+9HwZVqXz3NWlvAsOl9vm9p+2f5O4+X9CWb5+Muf7w3F7kPeYGAuHo08LmXQWOUCoJspgde1QX4uDJuX0tSZDL78SA5YbqDh6Ntxls3rt339ZeyRZTg1WXbRhWZ55+GRmpyU2wFa1RQ++ziSM8vGLJDHJMZRHrYXJcPJeHBUGuOsbR2XbI2D8lqqLB4dm85iicDALN/+CHf0OgkN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RZ0TikW1voOPyJLKKXcbTcI6d6aPu2JPvHH85DplnpM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y2JTD5TzJaCxlS8xzvpPTeeO6OXstR45BlJzcsZ9dhLHEyKQfo+v2kcioQ0b3js4DvZysXVirKy046GdiNM0wU68W2/NsRwj4nanoUGrP2Qj+CtytehtCPzSYOg7HOpf/NtjAsKk4AZ2gvyuRQk9DvTUoV3rPoVP5ADRlrfrEKO56kbk3GHgmfJPFRK8KRaK21YVSGWFQlU30ihUVlV7RfWCgabMso63/11yXJlas2P0ls/9ATN7yT5lmGDtcqyR0FzmCPv15XNHmIdGBHIUo1jAq7h+ZKLuKGYu6RsmC5yrj+eVUnFQkddRhwf8MyanYrhnQMmnK0lC6WixW+FT6GFb9nd3ndX+05gRETX13/5JlP66dekcjtI1cn2qV3m7xmFvjOwa2Yv22fEno12g64ba7uxZskRl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RaOAoBNLDW5Jljpb/3O8stri/XDjBsVrBoOihlyc6QE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NjeWDIfqOxj9JU45orXbrJENbY3Hm60L4CyQxJsjDkn+oFD+tHl6jzz2LxeEeWGQu3JxPT3DMM4iDnaJ8bYNG6PCdGQqrV2Di1vFBAQM0NyfTo9/WpaKsd61+eDz0+oGMsD56SE2quoNCK4HzkfkX6R65047aQ+5lNRuc+5bf8pynApZCSRHWPNHDBmpy9Vtsg2wNpRbno1jdDhHltd9vtyfOSfQ5f3RI3U5S8Ibppn9C64j8t0+S0eRk4iGWBCg7ftCWASsax4hvH/nqirMPNP3RwQPoC8729wAFFdhuAfHcaRy7l8Eav2RcJvsdtyCNNOTNPUxBRZBD9sxgmKZlzzZqEIdJYZCJVoQtqG6Qm4m2OMVMctkdUcKWNfh6GOO0/LGI5gUs60fPFRPwPzMLdIaYbVLRl60", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RannbfEUBQUEzpF4d+hw+O2i+ehyjDeaLEmiy2eW7ds", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ngrR54+ckarHKh/H6fKH54ZtjK27J0bToWey/H+prVARyyozCJZIRaRi9dnva/NtcXABzxLEAl+XwgP47gpbXtCW3bIqduhmTOgiD2dNdkTje27n2mCi/zTPhE/cKcZMF46Tso1/LzImsPSn0OAclmwaKOpdUpo7I1oaMeiM6FSKeBeOfV702G2j8gzG7TwQOzd4XSKpjgkN1WN8xnHn4Ap359bZcbNWVQmUqxmJSJkcZM9lbpcqi9SEnc9NB45j7cxvzz53KWp3crT8Uf4bbK/s3svOulIjbGV9BZQsPDSj+PHjr8A/cjygx7A/nu+3A1C2D0l08aTOu8v+5XYf4pPJBzpQpszSlQWg1Q3o9RirYmSEKn5hz7cd148iNVkZ1sXK8C3pvCN4Oc7poSOK+trfFuwkMNXh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RastBxdR8AP1KcuhQJAn0KaD9ptJZCKz4PAFuOucgEc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "J1Ing03qqA/gh/z+YXB4j7xX2//CqRqHu1P/BTrATs0Am4nNGHLPbLdlSqVNVNb/FHhxBs6qUy4hRSotcgeZGXG2Sn9PsYXTweLdouRHJcVadkv7qcS9tP0iiOYn88+MV4qWuoKa1HoXf8W2RU239pO8zFOVcYyBejKf3syRfXsVfr/uSCUbxtk+0DntOW0L/Bamk/dlSJLBJsBJSyg7fpeEF7GeH96KpRnuVZdQfB4bb5zYNADLkn/YhPywPzLI+vjRo2aU8N8fjKCCH81VEGqOdv3fUYOwNh4WLQYXVnacHhO8TeQ1HC5nPsCblhZUUr60/6I6w8jnYfxgI9HUiFPX+jngz2UqZ5vTyVAQK04EqwE6iX/NdqQWNoNQ3rwq/LqTM2rztB8mjup+CEFWrbQwMM+5TMwa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RblgLFscb9V1Hml6dw22tePQ1PrHk2HyFzjLj56VQcw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LqC9xBRBOoOP3hOIpRF1FbWB44AFvD+ugLsfIdpnmJCgG4xmlQHV0gsi4yxGdFIBmnznBLNxkhvVJJtBDYHzY+Fkq/C4NPUNqn6DICxZnpvj4gyXbSQpwZ8abZM8HbF7gn22Wtj/WL2rAqaq+AwmYIhJeU3EflZ7ZkQ3wgv+XPbB8jaCndCA8sQY9ICs+WIBM2KAKDLOwEE6/l1l3tZj0OIiv7Jci9/TxHWEPyKIn8D/MSU7EWpncz7tCcTjtIqtsMeMXbQv/ogAMLfvjgovWt21nfAyi3WzD5pncHV4syv2vrmZ9d+ZhNiMqCkPM3gMHQm+QZP4SZfUHMUOUay7s2hVjkQjbDrcmgADlRG+MpWVBYgMl0wRTjrmnnIzUyiB06pLFUOZdNd4+oLFqrsjqckhdpb+cyXp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Rcf7/iaWc6VVWjGVU2xiwVQ8kQk3lZ6mNOrxogT/kdo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Inp5nxmjZytJr9H6qgG5RbY6+nlG2OAhvZlxQ4Nc+Qic4uGPMIxdNtvK6xtRKbrTvl6HtlTThQ030t9878llFoharxXX9HKTniofPT2GYKwA64FiFfVMVzhbbh8oz2y1oMgciEg8/CvrD7mLQTFYpeMIxljQyQrTlmtSLWmj/xN8rQPau5P6GvLnA85rbjvS0Ks1sXvoA6woCYdvdp/2lf+L8hRWFRMCe63Z/uB0eYvEuKJI/FhA1QTWJLS6t/s0GC8Lf9P/i2e1cZwENTq7/tQGhSoYSC83YdC//F8RjGYDtNGubJCbatkSCQp2dPnY8a2yqrFbkEIWvU0GK9GXDkG71/Xl+4wIqzrVcpZD6zjngNUyI3u1ksFKChbq8/zR/PYXdjjsWkZWjlKnR9+RPrH21YsV6Eiv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RdyTHBu4YrYq2Fzi+Bvh+aNpdP9jPnKcZbWq+/WVFYo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RwcFOXNUZvPRDkIi7JkAtf97M3GoPqs6+mo8vyuOrQGVYfcT0DJpOArNs0qE/9DnyXKNt9VlUFeyBq8BrJ6nGzxsJTfpgDmFyGwYReuxJs3o3pD+5FQvM3/Nhp2xzeQ0423BxzGBSmK9oqKSlceuhulfTFXN/3PuL9kfqG2qgpnvaHWYXb82GI19bN2TL3juLZds9URrEyvAdMmmdfPpStj/4KwgtaSJb4Hyk67CYtRceQj1+V0sE179duNdYfy4DYQkL6AUkueVEluSimHdNUrpMKGRaI7FJVuKUzgkUJL1Sg+9RsJvMWC9A34ZrVvjMDQ5npH3+F3HwqBv8kifu48OIIWIphg9/Lfcq4PbB7zhTbaLSgiOVeLNm4DvZbCL6K9X1WDPJS27T+MSUL7Ei7Lqt+MXRwRV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ReUN5nkLAOcGItUq/xiY2upMh/OCIz5ys5rQD8JD62U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3hWv7VNPDfy/YJC4LvJJItoBSJI8qnUIrgSCrolWAlX5RW5IjltCtSW6iUlsnrP2WwhSChMC1wdrghPrzzeLOn+iCtWP0Ypk6fLPE/2Jd8yhUQAHkBDyBremWgkNwteQiR7Uhy6gFXyr0WN7eeQNVXAoLE0B5MaiSEDi1cPGKC1cHZE7wgfI5frpgLm2aTSWWGYoDq9CMtcsA8N4VEz0oIuwA18Ux/xzcKN2S00EZ5LTzxiqO7Bxy08IEYcKcCpZrXAYeJzLboVJzIJqNzplAwyph6qvsNIvn6L2C+jGiX8wjfTSw3ODj/+BGb8jpTkJeQl6YLQISVbJ8oG4H8h57o6GYxt1jKiGfL51USgZcobjjN6lVk3PqIptmY+gOVuRciAdHiirl0ob7xSI4EfFWGl6H6yz1tj5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RexYwb9f4FhIiqmJul3bjX0+1rr78u7E7Z6BH2CFQqo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x8ur504aLLf8WSWtlvFSjhbm8IDDdJy6k+UwbQEQr+2QoquVu5qMbFC/DKWA+Wo6Um++cgD1CmIrYUWr6RizitNanqmZPYE5Dv+2hz8+1gbFPlQZWi5kjM+xN62GI32iLOtVp5P9l8fU0w0srr4wbrSBNpCofXofB9hFhZ2saSa7wN7A26ZGverTw7a1al+eYDumGU4ak493V9h2KDydqpIx5yZ+W/KUVcYf9CFd2eX/ZT3hDis+Wkgy2NoqBJTx2ZWI5otQqwpH7opmkADdvv27uwNySBy1gH64BxAP6+ZDRDWxwwAcXtuh1ePbt6DOoQx9A8dHMtxoFM9c6thNjhCVFcyMe2Zd3HBKKn51Mym28AVn+aZZCynwjbGKJkNvTCkftH2rufxgeX9ZfWgvDgsfj/pz0v/F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RfTxffLNkz2RSsn3WdAkGlwftZsE+lozeaHKu5UsPkA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hYBie7obSjnJDJOOhRZo/xiwjdoPxRK1cQGNL6NJ6IhLFLnLdiK16x/DOtfNjp6uQK3lwNcqapZiaZv72FsiFENNX/2gfYoHzTfPM55g/jc16vgH8+H/YEMABmkDCjUs23EzctE6yGt88yg0aJXRJzTZx/7qAsoSaiiSXAXCqydftl4pAMM6IiCTtcT8qE+Qyqioak1j/l2A1iHFaTncqYk9vaC2P/HDDe6oGuVcAbhMprNuDD+v1aBqmdh2Mjn7S7ZquiBKoymt7WQLgrMw7gWJV6Ha+rOxGpFbesMgu8SQLxtbZviXKjpa4H2o5XQiP0ddZud94mFyetHjHQjjPH8M0bnxNtuMMv9aG4xk7C1jSnqke2kKgLkf1PSB6auWIT5u9bSaPatecCiDSrAmL2Iq/ZwJ+5/J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RgFvtd5f2vtLPfpfKDhf6qpOuya0H5GhsRAfWAkUn6A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7cQlheawWaobBRwWWD6iXAAHncuWGYSGRmzOVyy88XftZA71JU4/wkJTt9HJBzrlYxTTZ7gP0jNhqD1yxuzyhlO9WJdqrWEW61+Mzcl5t7mL0zeYAhwdqjWt83rwU+CohENyyN2Clo+EEwlkzZiEdhpe/V+svow75g19mOxLcClLTVy4sYpXX1B2JyFPwYmNw4jgbOULrA6HfdrAa+DWchK0RERK5wb5HwSsVZb2ueZmmq+ItCLd2DY3h6aWFObfI4Xyeqkd3AQuI4hGyzcKqP7t9jM0Hgy7KRkhQiMEnO5AIalRLQeuZ0mPhGvfqPsNtYgoY9Kg9P+MiFG033DbCzuDn2hQAQUTVxwKBis8bzejXHJlsxjw2nGy+CAxNoj4TUvtdPDR5fmVowiEOtxWM9uS8vaxhqFJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ri+V4brwPfgvNzMJ2sTn0PQA8CwWtH3wusTWsgE3S78", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TThXVDKsPEww96PlXhvS3uMEC8m7fQvlpT/7MJrE0HjxhHgvH2gAbVThcC4nJcWefjpiVeu7tULHSlQS5w0KtgXrzscxqZzaKXCAhgi4G7o9DxcbBC5Wm9cMhHvg1gs+SQCmyiH+YsUQZ/aD2nQUM057OgAOvn8bGKq2orR81zBpw1dFca6xx9e8INvkVtIe0sJU+XmaqBlKXflRhllNwoOuL1976ygZE3+V4lYW21h4ybjnFFD11kPMxcQIrTx3eyTa8w9bV7KC2B+rK8ZrYw59puqBhhBWT68WgzzONjrgLdqKk/rtr7iibFsnj7NTUsAgH0I3Dr0nudB+lK4lZOYnHS+Ph+7hn1hD6XJ19/L41/rhotGiOvatt/RV0otFVGn4DzFmgb70EHNSB/x1I/k5v2dNHIol", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RiINK0PEDJBeWJG4FXeu2FOpRlICsgJQOK5EDrs//G4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FAlHaw1rgChB8tULuRLxcq2FolXC1hbvdXqs9C2/PNaleVOTWcISp4UNQyb23iXpf3EqsYe+y75qSmG/CNg5NBEdfdY0f2sat9FASqZYapGKeHvgbTUkRBIofKne11KPSFsLGjjALdbPx8/vJx0SnjKJrdCCazSrgBjZluSkai2StXMP+0TdqGldv8aDr2SL+rSShQHoqGMmOcm/bm6nkJkKxzpRshUvX2tOnadP0fp1Tl/nA1p2insGybaBpPeeqKD5PEgRj4Pzr7a710aAlvSifNkwd9Nwx2iAeswte4SkVJRQVCEkkGq1TJbp3kq78s5BgynMVC5c0UNwDcW2lb+B7wXGv7JrrRuFPZkOTtQnUyk+iHMrdIEDKoQcsy3auIkdFpMyIZH7k8rKJbeG69VHMs+r16f6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RjJd01GgU5RVPqkRvlk2tDaUnuprXzuBe44X/vqub/c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oXsg9dIP+Q7a4GLbkQT1npojGymrPCLtRnaj5N8XgraV0KjLf1HCkQOQr6jUmv++FgOhDr7zHFx0Zcfp4bM7nKtRKhhT8Py4P4qJfsAytOb3nLOsp3oCCPk8NdRM8ENWtmelR5kx8O/h4hPJRvliUOXdhQws1vfstE/Q6gy7bmJILDkqmFyq3vZFtpaxpgVzqfsLta1hOJVwSSUrkHAbjODc3HHr5+0ph9BHzBzYkHzxrg+gCnIS3+1gN+H43ux4XN12OmOKE3czE65pnJ1Ipc9k8HkFHjQtF319crv823jhBMLqoSdkuMZVzlJ+cl9tPt06S96XjupfsqTm3KUzDMgIVC2Wrghf4TM/vjdZKoiOV6iJsg0GBWwmw/gH7a1X27u4DeHxbOfUA5x+hrd00cfHaSH7Mm7L", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RjXU/bw60qrXDQo8PUHxG+9ejAY4Ig+P3wZfqOLghmU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6crXZ9rUrjSKBBFF45LUuUePn872N5zOB2sPtuAubhtqomMRZIVWBVB+2kF5OO+QMW0q1HI2qNmPaEhlf+H0AKBpByZOHWbppQ/MYuMJiKzx+mBoeEJwSeOnBxgO1h/NilXwG0bspw/ocf62ncoH7K4GbGHcyiwVpy1vEsrzo3uXXQmGL8RxAHt+NZ3LcmbVraPdh0hGevXIQ3+UAtkRnxJt9Ujl0SPnPeEqwFrRvNP4AFjmKv+b8ubcthyoogpl23EKqnO5m2aeNetwWvSJ2QhquvQ5iL+BRfXaE9PuR1UsRrVOfDB/pf37KHmbrY4BA4SR8tmA4563zL+tKwcQaO4dcjnj+GwFLoRT4D8JzSnjk2lElZ76y0nliKGSPjcFQqjQT2feYWCDGVGgEwOjfUdcGYB+tszm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RjkJM+9a26QxMoJDB7eNNP1bGdnQfGxfyUE/yX/hd5Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1uJh9zhl9l+pRC8SddF+GAeQY1mN8u6ueNS3WkEawQHX/NVZFtnoCxL0WF38SaCisElO5Z4uc+yAhBGhoryyh3liBB2iLGGd0LCb5O5fG3LrUp2tPKmMIAVM3Ct6b5A0v+N0epQ3qWMqnNrkICmNrYVkHWl0eUPnU6oVUSusKvBHYts5XyHG466vBh3NpcliLW+91gvIJ9a8pBed4PKYjNrjEl4CHZaQMu+AixfqxAGSmVOprM4o6ZXiKygB9aTEoTpuosqNJd+EMIDvcJA6406gndaII8W+GHX2Rvjg32Gkr41jE4u3hIg4uHoOCkDh0NZlWNWwKXnAZLF9TkUNVhLzewvp/FlTtEuYL/1C38wMOc5LnFU9cq46H1WddWXsDiPnBEbIV3ysyzh1raqAPjgXecsUbxSP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RjyN72KxyJrbQpvndZB7zpcpoPGQxe8AGVvP2hDsqyE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r62eY8ZGPM8o6v4imaeBOx2XEvbpIHzI3bn+ujqxUfthNK/yBHUgC6q4CbbYdVQe9irodes5NTK8cWeJMjGKiWxgIKWRlTHxfuuwKMRb9UR4ee5EbzNdfJJ7clzmcsnL3kQwiUQE7aS9gtBbaNRPQUBdrxODRRFXPASGGUL3hrpUFYs5r9KZUneCWmLpqWbK90SGmgZhIh2Pdo4Y6Hip7V5HbYGmN10AOqYDMuEmk6033LkV+ObIUakL52/QNj4xRQK8Xa9f7lRnq9+pRe2T7PuHRJQlNZYUR+r6ZUavfaLWNdDZgTJgrjjuvYKlRrVp73DGo7VIa/qPIK60VwQurs+tB182yLWAhSQji+jdSBybJ5V5H+PQdCVmLhvdTxiXZ4TZRSkYopk9g2fzc4Nd6KUif/ha4yv6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RlYWDDl4WcEFYMCZyfLzULAraSCO0Ai4nu860XJ5Q4g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tHJ+wI+9FVGBbgQ3A7u6yZax4qYrXPhhQSKKsGj+f6PrDc9j5l0An/p0AtvZwEihiPov9CIReW41D/+TG27Z/9w6SJbgVwnXFEqFTz5vl3BsifdsX3lyH2dQmPPsOJGZyczeiI7FpKUwymayGb7TLYB/lQU7p9tJj6IaZQclYdJYOp2nm+JYQo1ruooGRo778D5oqZXg2qGA63FSByccLloLDxNSkknf4WxNw9ypqqxSQHzZGRpK9XGiWqJY7kCpKiV2ARopRDrPiO/2Mp9fRbnGP4HfuRN82Mda4IB14+C59dC9w9WeMqdigtTzrdvIUIlWLZqmfezPYcRjZULYp9WYCOwFF5genPFqWzya91e9b+RWIwbGCDl2RWvcZs9g7D52ltvLxIKdI2zWBLTxaKhSNmtMgxPI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RlnyRvQPD+dWYygSVLjrHtTO8R4sWqEDp9BN76AP3PU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k9Wk5Ww4XQcKeF6Npuzn519vg9hxLv2yf+pe4OjJmFYq1onRT7Dj3V2eWDADle/bklfCPiacwFaW7UoUVFSk246YJZ7gc4fFvkZeeiGCAb470tQI6CBpfSssEPIGYMqkK7Sru4zHViMkAwPgg7hvY+WdDU2VfBIFTJ18S4bebeBUv9lj3qE1p1GXRUTr4Z8tmBGNXIoMtAPqi9d3Lk1jVGXi6gS0hSgqNED8Jt6wr8pG79//+Z9Qrh5y9HkK0uIAoG0gl/wv2iCE+ezJvKeDK2txeQ4MqGy2vfROQx2TeqqUoiPtXR3SkVhPVtYcECTPXTiSQNclpwrYucK3qBRHdiEo03s6sV7mehsSgEV1YP2j3KZDHELguSH6Yyzg8Je/HXJJaJN/vJqcTusL6JQiB0fq7k/3J3Tm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RlqKFoVFtbOqb8GTEohffqSWSA4wezjiRHB8d0u5AVc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7rJ4llwA1uBBkdz0Nuham0lSA95z3v9OM+e2cHplOnFjNl5eHoXed9pQEWpMZqVQHLEZm1YafNXkGmpMmdBWiNaeehnojWz3wJGqF3BZedE1dE1fzfErXdTngMnd2xrCqYvYi29tYNWtnH1uS16IlzvgQyqp8GTzMn7VJDl8pFr4ED8SBtupdCM91hM7AEYld2vhARQhqpF3LVJx+Hdf9O9vLISaTnWSyptIL0ItuknosgqGQ+0eBZaNd2WW6imY1m/7ni6WPZoC4uspLf3HBZgzgAdv9ou0/5LWoQb5ATCYgVR8d56+79d9KS/6DlCSoEEzSuzdQ+qLwsmIw9prBuxeldIvNR/gonr88fPakzwJvj3/8AoICW48ReDVGa88GQEO97GvSQhrhU1EQ+sWlmLI5YTFMIlN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RmUDMNP3lDuzeuOOmyn/VbbmfJeAs52NmfEAQuJ5IMs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yKT0trWZ4nN7YxL7eUXctOLsbxCd9TZgAluuzGqBIG2ljXDwwXvMo62OVvwlaISmGVqBvfNmny80CXy/TtbXmk5gojd4kQecIPsU+PHMLfzLWOgTkejFQx3oE0oTfLzYYkOXuuwSYNkS7mfMN2r+MsvJzIbmO+HhzAaiYImIZHCXUlGFqFQhZ5L/AGFg257SICuygQU9KnPvwJYPKgODrvWlNqJK//utSO+As5bkfi71HvfAeT5hO+sPOOC7qjkBbCnXY7CaplexSvYh1jS+4NVHsZ65x5HeL5hS5CGsTHUhEWdnNryWfd/cI4IzonPQMyWSXgtCszaPwMnFk4NtMOlMd1ZHbTGUtKexJ6urDb0olWWsbt+9cwrkNedHpfErHZ+2v0Aq+alHQsYqVUuoFZnt9QdelEDB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RmyCMCOGogpVTVymq1gcIft3KMYjKrDnAHNem9zaHTY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KyQEg7KGDvI4z+amZ8sm9dlX29xur/oiW5m6ycOEPVicLY42EaDfjj+E9UBfVpp2ybnrYRUUkhf6DCRgXj2eXKy7uJKsNGFdsulkMLuk2jlIfqO6i61kk7TUCAS980KClfOiIjdBwjEnFmtzk5k662FhDkqj5QIE+79HydFzJLNZn8MM+3mlO6paXVjTTFROxo8ldDNznyd8WUSNtoQG2Xp0r4ojgZv4K7v7qPblP/SA3wp4mgHvM+OD9CbzGV/vUEnjQCclrKJj4eMpZvN7ogjRv9vc/vuURjSI+vaB6nGAVwWwkuwnqgW2AHoSlGYK8axWi+haxz4I1lwvuzgFsj+sQlO/tKMbqsClADWlEGro6rgH4dyU96XbOdZN+sF4NF+tRMtAjP8Z2xJuzHp5syV/9PVdADvt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RoJnqGJ/Lerm5W4oyOzRr4AA3X4hYP7BSm4fVdmP73I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bXZOGm7OYV4fml1BK7b2nBuIgcg7yDN6TmGCxmhhCajrRW0NszkiXEiMeWsoiUZEcAHgfdPr12WUJxBG6r5vhZqWJiEbOlvvMEswbKsi6mnxhzRe6GxRB+Zt9n0oWz5q4W527JsOPwndHweauNNAp85eRuntqhdAKzSoJQohhehlbQ/I+muSAXSUT2xQoDZzBXZU14x/V0tVV7X7Qv2BdICppvuNk1tzcmI+B4ihdYDaMSxZV7fcAjXnaTKORsa9gw8qh7UNKK/G9KrmIAZchnjuMJJMWwzUPDblU1nwqx0zSqYd0j+LppMumBIAKJMoForgpMy3LuxLRcrksIxYHLBZkV786r/dDeM5pEtr9kn//VghjrN67/N7Iez+T+YkSUr6eihNMzdURslVQ+p6vc4HmEuw79CX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RoR7lNxf4mGt7PC9eoH82CuAkiAL1onENRpNpl9w3Uc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3zMLuyeeMcNziilsrFAQhKQkQEJYp+yeI5jIee000EJnH6LMp3nCPXOqIx8vPd7clhpKF5vbR/mGDCOMGaUFZi171GaDM2wusL9zvEjZWCzFGstQ1cQBHRUrhx90ply7CR+HvfJ0euTwrLFlTvDpk+21C2crjoxCzh90YzV+UoTEFcAq4wPdAfZWACXGiDrK7c0QcgFEc/3iMu1L9dg+gm07fLk46O8xo74IXS34gZ+Goue5D6tYVcgADcPDJ7z775Rai/fTl6ESJipkCwYFtOr3NTcjaMTpUqtiaEOisJzkj9qrmhGsFZSK6hEhBcsPKIFaw59RYEeZISuMrefq2pwDIBWE0FjdLZXDePbQdaBWzCtPS0cBJ4/CHIVtHv1JhkHO+DSG3A7YLcQ8fGF90xQ4v4ylU0OT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RpROIWC6NiD6NS1wv4qJHI15ihaJeaUdV5lltTqlo40", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S6I1l3Aqrao+/WVDDPEERNFNPvqAZ9JS4PdzR3eeRMIKcCkrcPm2HofU92yhGW6Ogub00v4qQG8qwqXAe+ddcAI6qs/5zH1wZnmaC8ymlk+73kIl91TYer6rp63jW1DzqGY556zLOXRkEvQctTgV+reOptxOAEswYOACn3i4mFC/MkojmiZCqZpBef578JqyaBplbsbXZqM29HAQDC9FjkqD+LaprJEI96N5Cp2bkL0eLjMQ+3v5Pwn0XMjW0DyizNSLTa98Jcd7rOd/2ZMqQY+3dQjjAUGwrcAhqe2OD1ABO31kX3xsf3H9DROaslCH+VnFvdAk+5RmpqtNvw90+89ZNLXt2opshEjTeldXzlNx4akeaJI8bqNLwB4IuiFx+KpGwA3brZrzgscx56CdJ5XKcODtM7+d", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RpUwPiMonCmin9hh4zjGAnyCjzMkfZFzEY3jrUOV5dY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2OAcOLprKGwl87Pdn04iEYgRq0pyxB6cyz6A6JDPHxrCiIRKc4GoiS47hDwZr066nkxMtqdXQGZk2essEW1gcG/bMNhIGx0lM9wcttjvjaUy8I3W93trX+r0pSu8oLM7MgMaX0qca2zNFcDPSYvJ1v6qP010uAA88muDgWvV3Z3zDmlDjekTB8UeYDtoYY4CQ5o4BOKhWTknptMBXDiIX9D71zND3/uAAsVMpDAsV3etKrDAllrAUewM3jFXP7kKLLv3yLXtw25hchM3cJcSAqIwLK1uRRpm6Kj7J2C7vL+d3+wT+499JTageqftUXznOQ8zlGXf+ODO8rKL6ApV7uI8BJ/GvJagKFph87obrlK4KnQNyfyaqn9r5K94zAelKE8ItJ7zlYs/W8gSrIRAmXhr1qOw+iAy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Rr/QnhlTtLXZKonL+WeO3emwkDWwgkdUv4YGG7rpM4E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XDzlz5iNii4Kch6r22n24vnLG2EuwEUF2NGyeDmoW03YC0wKoWh1S61LGLkYpddlxN1kNbA7e8/oihh/HULVk+ZmA8tZmsFg2tUX4XqfXvq/yab+fy6pqcNh+w0sTmhR7qGU9NXe+TvclVuZuPh+83iuJ5iMfS/4Re2ZW95SiEhc7Q2rh+GAN0tBIoFqcVPG2+lRws973foyvppnJ/aEJPTkH1wnTWbHNd90gn8jHdBCpU7D3qCMwszuJNcMKsvkPQG3lT6mgnZbxQEt4vgmDOfxJxuyriohpWsKV7I5Fb3LujI6ja194t7boYYqfwO/6znwcuLPHFrE2dk81qjGelDBmt6C6O3iNwRIr3wo57G0jYMOK+PdjN+/8/X4q3AmgIhhrsLtOOiIzxda8G8NxjShjoOgrZ1w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Rr0xukbGKwrk+py+ViQZBCq2laiTdPDCGe5jp3iDQEM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dQkiZD1ToteOeoPVVGrbTajG6gfLTLdDQJY9DZp/1eDXu8QRC2WwCnbFPPEjBFtTYLNdc8Xfs5zdBl9TWuMVveLa3+1qQC0fATeZ2R1emVinfQa0dRBrkh442O3bqFcdle1uIyOpjU5zHZ3qbyNQlCg9xDPLmIU58rkOs3jFZTCr2ASF3OevvsJu6vdh4gz1JHodbIJwEEwd94/pXOyXPO8nPFEVKcVGU0KDaovVa5pr6n3PK/3Tf2BWN7rXCrR2lLYBJ5vQ6pty8+v7St3BZFNqUCtTKJI7tzHYoNXeqVWpZ02F8PcAnSVYCF+wwo9aHYRAxAFs8zV/s45GLLl7p+cZdmR6xspqnWgDgi2HKQVJQgWhfbvyaQLacerQMZGsHZD9C0qYnOmVMRV3/Ez8hKviTOuj4NFf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RrPcv+mI1h+Er/075f0jHu6vNQrJIT5OuOWAphlxey8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "51CgE3Y0iZGlX3JG6EmTX65GrTNXt7QHIMysTWf7ZA2EWyZVfxwzQ0VWrrM9zFKITCAkfW4RAnRdrA4QimBVBRAR3pfVMN3eXZbGTDi0xr1cmw+a9P5F7/eY7yvwH8LVLQLYfjw4A02SqyD3gZe20CjafpJrUyfGthwPIX5xdeErYehWidlFftUzAsgYxWAoniAhnWFh8PfIXFRXj+19cES2JBntqYmxJlnnrchydsY/CsdSDQp5SuCXtFfmAeBUjh8dnNmOeCrEw5XvJQ9OAk7uxs1rcZxHw/ghTGwft/+VmFPzQEpjGMdOWFgr73JAfAvLH/GgYjJ/s72tKIaYV5STGauKtvoqVDELJU/RhQ2J6TU+cGjyerlKlMYQQ+FdXcB0kZU7JNQ5frS0ey4kckAoFuN2HXgk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RtCNpUKvvGyZ7cFEOq2Gc9TpjQg4wlP/EZuXCcOYZI4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GT9a8lC8h/t9a5ZIBUVRMm8abnQiRYHwJ3KJHbuYX3mkOSU+lvT/2X0O2yVqBqn+wx6lJTRG5j+miVt8ct0bWXip2F2/98l8Yas8UmtmNhJCf1hCwD7ajat+45i2kWbpNj/EAU3fBcjzBXeikm+vvrY44v8BwhPOtrCdOKOqtP/IvSI1goIaKlYBRysiVTuWAeQg05Xh5piaXQjoXyYybD5kM89/70I11KRPvZQL+CDJTVg3KonHKyKSDd1oyIiNtMK38adkzC93KxBGHJymPgS0RZY05pU2C46cKmxzj9bUD7IC6R8MrosUglofCAgAEiVXpF7tL+L9ySy4MOFEYqGMiPwgx3r4pbgiEZ2PCfeYS+hdvCpdt+DBDAUxYSOTrjAofoh5adFVunElZMpMBbr3lshNOSwg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RtEfu6yo8OyDg09I5GZmuimDBhnnZtkIPr70zjcdwK8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5aBxdnHvLpVZAK/Io58D43gFgxNvfw+SaGTX236DZequ8ddBFevo/BIb+f0jyllyQ1qVd2M/g6aukmaBSIcMpLkMu/8WaV7fjBuNPPQAlx4AaEQpGnrFD0I89NxybTcsZHQMdR9R5UnxW6jprnGHMlnDM07IpuE7W+DxEbjKKDVzpWsR+KW2LJ78fZIezg7bJKvv4Z8eIz0wLwQQwoOtdta3XOl69YTbbJxClMLRnYXuNOeAgqgFqmTbHb2GdsVvoJuQ5JVYF/tdLMSuL8yarsMIaJWkEqCzLV1cyzgutKrB9JMHUr9yiiPRtNShQgAzwqALEofJ0sDWoP970G+qQPv2wH7szBbaL1BE7biAjfNywBSlX9GKkav9sbuv/B26aMvsYnlxzx+pKGVuE6dqeEHg1+U7EX3F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Rtig0qv4FicF63UNThHTjBuiDl0Md8stmibosXHiOkY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Da6R/NivH4342SISwylLu+Q5xive1MwHykbW+KP4WX2Lz1QG3+zvnQfNLqbcekLbIxm9Y75+t+aJRaCQl+geEKTT2wiEHfFU9AMKVF4UrkrjYssw3ElMm4Tu4zou+c23ETnbg6g/GnzRcn6f8clWVSe2gFNYRBMXn+3g7Us4Jj8YEVpGdCkfIICwAHkqFLSG4K8/UvvH1Kj+0hGLpgpv020jhdpZJhszVV/D0qhTXPrjveXljIQ7FE2GU/nthDgVHrQgwrR741AtRc/H7k65Uk1Gnki2Djd0BbgoMWFdNyKjyi9fJ6xieksl57x7LqUVukevyDu32soRzRwMLW4XkN41qOKyeCIwogMGeQmgwRZqz0suzmbF1bJAlB9g5hFah5X5F2Hy0AEeeUh1HXf0BFwscC32mwsK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RtnPR5P+F4E4ord5tMgkIBxdd/jdDuS/dwbNarGwj98", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i7pu+l8tz/VgVn8XWQxHJq/ol05emd6ARUbWL6rB9qV/h0ta1XIzHheQz9rPWNqiZWdflVSFizU9WDM+oKndODidHbcjE8fWPPaOG8pZwgC5At1NhPCrSYafgcNYSKsMUkbcjCilhcxHSoz6BEEeQO2zZ4wbJxtwk/NyRJU6CndsSYg/pF65gdKhs+/IZ5byP0vfLY2ILAE6o03uLXaqbY9cLR3hRrjoSyE10fVDmBOF7osL6RY/we94ISEasLLnpEepitKlzDa3po5cnbqG0ehPNPqAP4sANfZ9oHRqn1cnUb/M7ukfkNhLT9ZQtkf/TAj1ermR0fvmxNRYEQukNU74VqO5fzwbSwJdJ3bHyd6ynBtsYkTURbY1uFoc9Ybuj1F20b448rhn3VweJ/xq/Z/AJHsA5Np9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ru/ZkcDjuc4l7SAKfvIYYu0ZkscSaK1/LOGOn4KDjz8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FHk5Vft11cMob0LJK+8XGHNyeqbEpZz+PHJ1Fy/Fs9CYJbwHX4JXcRBdofnwc0tJ7Fc3VIlckFArquHRIIL0sgAV3cWIME/zv7JS43es84FitR001HSLJdp2/+SUr4a76/RLG9i3J08p6XFDgly/eAEf5hmUCPW5SKNkCjGGT68QrLhann2cX4UKx4u2CeIepfriKI4A3gQ7DlBtdQvYD8nn2TIS5qfmSzPUONqAChq4nwafWE+4mmV4BTHfJnWDlOrrPsLYNRQKZkij7bav7eAhOhJBaZ1IapEOSR/G6jo+Sh2uuTWI1Rw3YLu903DMhn7GyqhpnIub8d+86aT2HPxWOQ5ofK8xpyXKxKhDWjY5iSEu4lBEDEt6UcCkSVy304JEXq/LgA0sh1Wv8KQIqQ6iw1DLK9zo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RvgUAWeiPQg/QDBzJwSy65GoUsk6TI0u7dGAjmjPuhI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VH6b5X/pTVaNRNEG+HnhifCXWDLzWDPmxDHEUznXIbm8zpr2tlFPyu3S1yffkiYsqoVvqrqenCylv9cD2ex6Qx6xl2xMCVCHYyZIwZYyglAzQ0Hx8sPdYcFzT74D6NFaFXgut9CHXzgYOCbalH6UFU9U1Bb5gidPc4p5+P4cY+1AGkhOgfpewt9iq9BFADUkJ2KQCen7urKk8qyvrkeLN1tGct94n1utWSILSvQ+n4orSpKCXGZffakvOdplm1twjS6cNO668Nty66yJq5Dyvct81Ry7XJo5fcsNwbb3RLedpTQdSD9AKCcUbmvtRNY+ppXVK4mJv75I5UoIvd3109iJ0rQTGSwfsxHnNIVGbyPkKwBrHV+O0DdXknvGGspfyAZ8Q1GZpvKnps1FhDWbqj4Cs5Y2UTT4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RyveY2Zc37SXKvTFGuHM7qxLbN/Os6SkYyKB8Rs17q0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Anu/ln864f5nKnwVBBdbqUKjF//7OeUWdRkt4eVZ6qFSWSv/C+yJwWsZzQGcILMu+QUR7wrv0oiGZ2plM8uLoU3/tKv+wrZl0lro3MvfBCq4gwveWRQVSIbNWdBeyWH2tn1T4tbVTB9VQk3ZSjZ/xEQMDBYQTJ3SpQfyCPQluAtStYU32XpgK/vWIXujSZmNJA3qCOS7ML2lKRPl3Uum6Rk/IeLLJjorfXlm8rFz2uqSNoraTdOWFjBne6Nzf6rqGafrt5yLdUMlo6BY0h2kuVukZBzRrlvVeOC+srVxPZi7K2nFnlAXLzYCrrv+U+l16Xeet90Cz697ctP8j0BG9XIRieWBOYsnzY+ntm39eQc7ccXC/Ec8DpV0ycZK4dr0UdZROXPEWs6VE8RYwbRT3dpwrdUtPIB6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RzBq8VpsP+e/RcA9EF+elaIsBxcqakINdVlBMWVzo6g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0hYAkkPdhPQpHvCQbljsS2CTYslJnK0CPtdTt3/FIGJzpJ1nWQIO7OQsCy6064UbgNvkWNX+sb83x8xU7XGyeyu7BMC19vxZ/k2MccgABIzt7koJifWSXa94G3pybwwxFWrnO2ydNSrDvjhNRuzkNjeqmuk+Rr6jyQZCQbxCQbWTm0OZBR/AHIGBaGpc8jZaLqg+dL73L4yqax5gVcmRrqEaKSNw1UvRc0PziwrpFVSCwhgd/05oG6yoO/1jgAkISM1yAOfehTu7OvodEDnEEouoQ4DOZYzKsbLYnC/ekW87lM8Z33EH1Bh1XNKx8xlKr3w05/0wWqIbPzf9ZoSYHTcSaowMWU9bJmS0ISsovB7xrlELk6zqkKPWINYxA/g1Uub6ygVxyR+slKtVntSnR9Lcc7bymLbD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "RzJrqwZuCt9geV1GenOII3jXuINXDcflFDE4k80OL8s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B7BlDRgj2AAMDMn1PqyMUI94+VoIA3R/8N+Y7OSAdD4y/+Uv5MHRQzYEyup0/nOfQDp7c2hVcVrcZbkD0f8Upypz/gWV9AyNiEjtUTZFW/cpT6iqnsHRSj2b20ttppQImvlLhcEuJnsGWDS+53IrcuKGE+wbdFyR5ngSj+ij4cgFyix+MymA0k4hYloFSCje9Dk9VYFOxkvIJmoQCjLIFS1G/r2x6kvcnyYzA4w7tD6phANMIucCFj9uUH2uPIAi5uLJ63W+XweWZheyPE7Edsv942HBW5nzVzV8BlqHg9G44B93XAHcwp6s7nY9RmMKd2PoB1lSezl5WmUfbo9FOi6mq81B5BgA02iHhtFbZMXuRkR1VCc5BEyX9M+9zo1qWhGHzYZgiGaMkgPdUe4eMUH8Y2F+/03G", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S/XZhSkzk6e2HRFzb+KnJ0Ehh8tmJQn2a5zsBehW7Eg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "93BcYnUFAadX639JpRHp4B0cw1BZFLG0DnoUqvcfLTjQ2qOqawXLn9TTJE8JRlHZNROWHv/bU4oGks6rtpVUp3S3z9Rf21hByfW88BNFGWZtxTk2QK0pznPMYUba7ACOz7/PV7jl8owQ+/5PrZigsCzMgzKORBhVk4pki+gLzJ88eVv62duXWXsZ9LaKop9ZX2pS/jrhuO/hQL8B72FlDlg3GHYfHu+DV6xA3xrZH4Nd1wGhjbgfQPs2otnF82ZPqsCtbVZO+4w+VeQFVH4cXnp52L7eyhnCGfiqLQ5/tKGsnBBpoZ4uqS90t0LRmRhxqPry3rajq53Ic51LdZ1g12guRjqsOeZ03dzatUvGsG0ZaRsKUKmPPJYVt5yqKTZRSYcjAGOFgvn81/0uQ3X4w5vff0ltky47", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S0B/wXHQO14o5OQgZqYvIadoCbPp6Mv33Xge5ruYoYU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4fEtezidXFpgWq7UW2keA5lzi/SGRFw/VBGJqt9gcbpkEo8oqoKnx0mzLGp+IgGnMHVp0tqPdMoQTtNTq7tEyeBN09aqioStL1DxHeokWTVr5h5SWRaPYwKutjuIMNxNWBk9VxbGCTnIaJ3L3xiGhQUYsvcXJ1NKDWe8umMCm5j0WxxyyqlHq6gt8QHFowJS3p29LiyBIXKRgKGA+ti9ypNSRWphvQ9SYK7QUJEy75bIZkv1I7yy/7CaAWewM/g+BKGTjgJ2jE2aIntLoulG72F/TyU8hsMMWrGheA7OVjsSSLbU/pbRupYnl76eNNZeuUyK7JGzRrE/ZhHw8JPqi8yRVe4kE4hQRYEkB92LBxp/bTnG382Za2LWvzaFyY8UIF0VX7eH+bVFQfnDxzl8pkZpD7lK/1k3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S0LCif9Pboo8xzv42rRmYnlgvHb2zbkN5WSJ4nCqjY4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZVR+YVqZWyP5uVfnBthbT4WxEPpln3UkRbXbrRvS1n6qcgbl6+nX2ylYL90zO1Wy4S9Xh3MiL/3JJL/cksuPa/runhfgsvCtwQNtyUJ49f01JCFR8dI5+iIzpIaE9I15Sj6S2bkYf3XNVhYXnNWygMZyi8VCVNwAI/rVOJM9cHZpUvpQGidfURTOca+tWHatmC+AtALP50Q1DUfJmef25unJ8jFakRI9agJ0DL31OLNYWPouw+wEYSo+P4fykEb+52oxSZXYMwb/KYlC6l1F3cHwOrBWx3TvqtY++qPN3yzTzktqb0KSiHg1e8UjtL2yG9ROvRS5JrOQpg0pLTWf11hG7+tXyb7dyKOAy17piwinPceekPP/F2fDHuSvNwmlzotFDjL42ivrVyOWIrHdQ2Hvrbok0NNZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S16rKBuTFdHMc8fQUAMjkyCp5CpmRsuaYX8t5HUcrgE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8zGdPNtmZ7vwSYtapkFemZaB8dnwV9xdPJ+1ro5GiF7m1/S7WJWCchbx8up2frLgYdnFgfaib46UjQsPEtmWsP51yA3JzKKC8i+VhijJoPTVCX1hqqYNcWc1Z6PU5RRDZeZ/HLqyLnCQ0h5n1mifRh4vnkeoDk6wSw3ErPWR0ltLDjam1WRwWqS7R6G+0jMcmV9HdoMQ+0b4Mtivjn88vv41E/OtXS/+PZ/2enUdPgrcSrkwKkprEhe3JItJKPH4DOkUQwOuutM8kUbyYL4Uvz9O8KARld/P6//BuOTxQxEifRlWLlJbj8j/x+jOhBYvgCbxdk1Uh7jtT28m5NM8cwdSvV5IL2IBr2+fktAVjYTcNcFPIE3VzuJYCb64JXwYhybRENfw6qhfu80bulD+gTYw+mT+54iZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S1LbfTOZGY7HV+TB0xCe4fKRGIfRhxfFUNwv+f88b38", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5cgpU86/8PeGA2z1Lzbe0bH2MAqHqjouRv+b744ZFsqtT9o3K33yy1TqXhB1H358AU+Ogrtf3rUMdDFBtd83t2eSv8ADlzVIkCUukwR+dc+jO2u3dK/jhkZwtyPMolKPLReCbNrDs8s4GdbAM5m9HS2nqpMI1LGyT+tUtVs/Atb0g9KNHeA4Fz7IH8iiaHdgf7SfikjQKDikftJCinMRr01sTGkTCA5U79lXYWZ24s7qgmZfwZZLSoCZRpcCDnWsq485xIstKpLI8mFZAISPH0+NpHhxF9L3J6xXtBeUY33960io0UjQO657Lj0a0V+Bjf6ayJv8MAmwwoXdcxhc8YVFRNrOAhaJP5TljI5V46FpdbG9ykuHqgvob7cjknxVFDxnuGSLVRuOvzVabKMjn+1nw7OzmDen", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S3QlPrbF1m5nhQjS5YPh2/0Z8p1CAdDzQixrZsrEak8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4uqa9G1o/bSQp2c7Mlb1hXU8aabPXnSpIT7b5ZgXjTIMPn9ps9yoz7C3UT9iBawSdNaOp1QNwEzO6Y/mfWdbQCFDow3GuhKkRmiqCf8hvk9S4u6P+u4J7gy/nd/KR1lem8he6WL+pG8+OuPo6hFsJGMxuwB7Mgi65ym2rcdzTps46BWn6tu3bS9rV9QgpzgrLlcwrb2W4ksXMstlr+4Dka+Mcow0YAT8VeLTzXXIm1rTmMZpE1IfXRe+DCex0GIKy3GEZHWeEFCuHeo4Zzt48Z3kdpdV6oATr9gUuteLXxeso03WaVF6lYUWOaFjes2ru6J2n36i3oJp5YseJvV2gs66Vir/oye6AYINwmunKSCCmOObG4yHkn1OlSR2+pA1gctx3NDBGhDDdEnNkvcCqin2dX1fcQiV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S3UPyntOWCl1dJ9YB0cOD0PIXhNgwql2vGcMsadn07Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pFY7lnCDLICVHfPQB1Erbq3hCUFtf37ZHf62vYZHPwjkL+dmZRshKvDATSpHDO5meMpOzgnvN5a1T6Pez3KBB65eF8AIFMk2575O6fGKLXQEn5MgX9zcIJ8UNtyqlI92o9cgt31UvVpgR0Hzce2Ylru65/Zr4aQIc60PM4pXvuqthfe9vP2OgfJUK8El/lXS0pVuwKqxw/mjwkPjBJUns+iNdldBgduEyRUgLDAK89hqb0AGPazxMNES72JjDTYDXNan2+XrC1NVN9nwld+4AWV/uj2x6K8lJVBFGl2buqQzqtGFoPCc/iL81Y7o3YYDGbjw7JLUWgj6qzdtesE+T7rhG/+41T/l7WWOGmIPnCipkifsTGRW+WqiJyuQStqQKXnTGwFowojBoYTKwkmiOADBaqa+BdPA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S5httWcEEwBnklxXv5AH7tCLskcub8dqiIxjdymHW/4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oF2tZNrxUvyeyX2D9C1mR+vAzf00JH3MUx6PjJH72ToEYkdKHJ+vU1bH2b5OhEXNT4fd9z6EzCYl0TiudL+cBj9P3LsDOMECeSxB9acqPXNZ8tUf4pKDzF8PQLVykr1F7t2Q0CxyopjEqoduuPuLJF3AUr54y7iF0vtpr+JLNLATWOHWbElKjaaZTO+URa8A4GTt109Ldw8kINnOa3uKQluN2u7bEAZODTF7BHyQurGz2m12UwmzBxwW4x0zdRKolKiyKQEyhqSaxMLju0Zm50qL9wgmaG5cHqMLtWKL2ZuP351ZBl6BKpJiGlp0WbvLT5wO8TcZJCi2TpbJjAgQu/7DhCXpCyVOQo1hY66pHlToMw3fZHer6E1C19zwnwt+qsbxZhxyX9XEaHQ4CBW8ex4j+xXfDpij", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S7VZB7auwlPuRN9nBmk34xX0gA/MMBZhTpGTnJFOWWM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lBkILervoz6iUw/WZ4etZq1tUj+4nIcwJ2EAlkKvQ25irYSH/0deUDlDpA98dzSYeOPUzF1wozIrLO7jQyXlKCzTmn2iGgDl/iEHwbk/R4PuETFyP4TAYrYUWLBmCPSwkqSGrDiWsvKd30v6gjuatvw2u6oSTLviZbJJb813Jz2SflsLfH6rBxKrFLd1l34a9gSjH1m8KACY3SX+0vqIZ78MKGIsg46hCKO1T3tJX7Dob8zDh+xZuUA4GCTyuRzC3JL/bO5CnDXeXkPnwPYrgnZa+8yXWdWsNniLBqhz7h/MPGygu7/og0NUWtyDnvx0vb+UGSXcdoiuQ3Il4XoI1xKW/gyB/lCfKVmI3YwEvcvD5RKZxKThZPeEB9x9EYZEvnYqnHdXR+JytfBH4WyU73bi4SamIv4t", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S8WS0s1vKMumVigQGNlLSoL2/yfEydCrt9lOQ1J1DgY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q5ITMLN9phLvGe93mVdndvOoo/MJVjwKS5hXt84aUst7J6o06Ikj3n453bCK+i8yOdFGq/d7UizDjMG5vQgyuyJkNYDX96or/AZm9XIkML+qtqmj8HgNhD8cEpUUu7parkrFfzgT/A3AO/+MsH8Ryjnvwob7vW7+JD7f/Dr1JhWYYy7xwH39kp59Zp5l2CmOrOPCy0Z+taj2hRXN5S2tDzxTGlAHdnxXKHNZTe9Ney821YjrG5ma/W0NOQ6ZoZUV6xxIVjopTiiEk0zTPMyXJGaSXwRPxgqhEnmN4QnWD19a5ciHubbWqHVswUnDzCVQCcd0MCp0ixw9MT62ze935n8gQN7zcfsskxwICd6SNBvXbyS6MF5i1z1RMmd7QBWSh+9q/Tv271Qa8bP6CiGA7HRdQNrfGWp8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S9jZP8RXWx/D4BewPTjYAm6LvO+YT0ViG/PRSaKRDZk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l2d0wlO9KrBMhGldfaZ8LqG5phhiYfasSt2k2AYh0dVHOWDOsMOrt4tThrHYtaxpPCiNarWBoQGb97wJKWNDSfw7rBA3h+wfdC4AQBZfKpcOdmkHRaH79HoFTuR+UL57X/HOQUuMJlDeBj6sROgtJ3U/QCnYwgAp9QD5jex/V3exUUu7ovpFaRB1+Z8qGW6XtWKGqKhJk72MzqQ1Myc6WCGrFhlfgGdyMG68ToUz/rBL84ISsvDI8sdHTtpcNHUe53r0hG8PNLHmMlbipN7NQiXms8AqwoMNXxHJtLdRfCVWZ+C6ofi1LAeV+h0IHqWnrD9BhenKVZbFxYuAT+FPF7qOvsQlr/XBEoGczMWn8tfNpboZ0SMrScdOwcLWTTBhs6/ir10yeYIqguh+W0gMXn9Sc9geZa3p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "S9l6k/Bb26X7kiZoo+fxc1PWrvmFz75M4KTQyf2b8xI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eVwgxCSEz24IHTiE5YkgqE7H2KN546v39wYf+9m3o71p3aPyAdZJIGAGzQM2Ms2SK0PvQ4pn1HwKTnHovfn2NNiQObWTAAW+LQKUa+ehZYNNvcKji1KRvvT4ICfPibRmxl1KrlBnJhEBcpHfKJBB2tf1ktOPSY6NehwwbOBZBJBJvdQVL/Zf4vZCT5N6VYig1zkEpwah4M59liu3Rqewm1AWDUO1AEAgEaRjQEghf+pPU8uboNII9l/OxIXQQN2/+5cgXQbKcxM6aHqqWfgurpKjUxbf1z+Phn9WJLyKYk6OQk/5aFkAljupFKG/vr1cHZcSSyrsxvSC2Iaw0dn6pf78xpazX0CwWb99jHfaf0NHAhWn4Onlpd2op8wU1w7XIF9dRR+/Witvf0Cr4egNSf97OHBYfl0x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SA8f/tqpeke2MT0sUGEOjBN/9X78c3fUD9Rk+vh9gv0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sHAl4zzChRgxHpLEyWIA+XPygx6NzVeUIXSjzrhivohmPp6c7ODEQ0zso/hqjkl7jjUnogoREG+vLTXisGbOGp4Kpx+m1Xh0UtUWJoeR9tZcGCE274rpfDFhbwwQGjNeJKiVEE+MDiMJTra4KW3aTk4jdDWkU0pxCKICBkd+WHAHYu111XW6nVk7wk2lZH6TXHDT+KnexeTuepAPw1ueoy0LV/6jF40AuusnGKDqiQoF2SaQUfKuvGFP+Qd/MTi6MoWvJ9hIFYO+S0NuCzgLpvhly+YLf4DdV1cc35/+KLIqlpptI7UHreK5IWyH6YDq+9MZY+Uz50kWkOXqD/uUHlmSKl/n9/z16zeOEBVf/3zxIGoKoh7PIj73/TnN27rxN/hpFP2qlRYy2ebPtjwms5033Lp32hGZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SAmyWn2RgUwrbxuFY+7apg+Zrr5mauT8AWdHh0NIM74", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UMeu0nQ9ttwkgCSeWoji3Zv5chCK90IuiHat7gmIUkjskLR6pRH+CdoJResOEOBB4Xu3E9KpOR6ZbAz2UTowzC2GgNV5wvz18zYh2F4rCTwT4iT+PkOm8hRkWPIjbTXPKtDFVu5Swpci1BjZhmyJZJNwjqibgdy6I4FRzcu0qkJX4L7QICa2Wr6sDYNEuBo5tv3+uApPLu4babw/XHq7Jw3nzqzvX16W0lYlvQXG0mFJyj4kXsB2ZueSwW2xEjFdH/8GGq0iyH2HqwEuUCZo+2l6Xe5qHxf1WwrcDup5h/gVWc/jI+iGYeUcsScIWHLxy+Yhdu0wNCKMLyhIWj9CJv9Z4VHTWRWe7Tl/PlsNfa47ssOVlxQApA282MOMCvL4xgO7SFjFx9qG3bN4BN4bbSEzoBMf536H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SBWkLKRLEBe/Cpe/PVUjN02fPBbJaYVGUIcocZucGc8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0YaqQZiW5edG+6m/wkGWS6cdoM2tv09RGN6e+P62AT+/5D/PLd0PKjE5UmSbd3t4htA1aoIMf4rcl/i6hjV2f63DC3nj8sonNHrn4VIcJQw+yrP8eDkL9JnYVvxrv/Ti3mxULtYcEzOVVOrpVCw4KB2qsI/tWyNth48owqgYhsEe86XMPEWIVzDquyP7f7/4BULmfk5YTFNeNEuneNB/o9PjzYBJITH+SAjliSElR7vZkNMc1O+Q9ScVZl+ZlJq1mXRDMa80RQX8HLqkZoKwvRBEd6A8lFSfogRkaXAyokhq5E1ADbvnF/+jKePsUoAn7esGmUKtXk3qBKAyCAGCtoSdq5NtnGjTIJWhyxsG4ESOfldGPMcY24QJeKRZSdmfOFxBj6x3UzRpgFpkMPPDb1uk9gkvBugL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SBkMmGVz+DiXZN8GxBGHTrZYzqPL1LiQfFx0J6vnxhY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "toB9nJPg88gcGgSAuJBBqi4qb6BlopjZgsQzyv8Q7eh3G7ttglaAi0MwKMwodWa7baNG91e/3LUxP5kR8A+4A7rqpJwr/KCCifI89V4BigrFKeF900A/Zakv6NvyZYNwmDYqikHDni4G0yovaVEUv6YzD3QvfDzaDLjXidSaUUnyf2y0m3AV/bkD7jGLZWTwiQUoq/Im4h6KSu2Se49MVtF1DOgAl2pdiC+/CwzUg7jrUjVM0F7/wXr2RNXzCcWmEG5Hfs/bMnqixe2s/jxHynqMJzQAJ9jgB5YZBtHF/BUBddmdC90YNLlE8s0+f+lxr1ezLMtliqqMcgwrC3zxqtZBc0zMjhsi6yBAO9HcrKZYcyCDqtispMBFljxZxHwO3pEQ0YYDjl+IH0i8rKgLyygo5jPaJYmj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SDfAO49W1xCLZR0a4dw/IxTkJ018h3qqK5Sbm8gfwu4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "g4psJPZS3Z7Nkxo9zshLUJRZ/6T7rHPLaYGp3DN9e9VfbolRKCKfYP9IvUo/XIrSz/k9cJbhzG0NdvydQpFhev3muXy9ECiSfYbkvc0Cni4nLu0LHFwect2uU397VMDlC2rRB0eQIYpchk7ZUeyFCG0Uf9iGNtk8wBoRbj5cGuz8SA1CCfHVGF7R8kip5NDr5La8CSV/LEZp9/St/p2xx8lDvX0S/EyCetBq5bt4shIsDdxamZtqmEI91P8H0ucQcp5fAEwg/lNtjopW6/RtLY7b6+qdU0Uhv0VDknMvCJxgd1tBs8r+pRMkVYgd7s7YFKGgwFuAKcCRlpoMwMq2vRp7RMinrqeDthLk7t1CgQgUTfESwdo+CkNNeLFGawYJWraFb7YIcAvEHlbwtRD/LYNxDf8mZb6n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SDu3/wjP60YWEpMCML/YGU9sfBHDkWnljFJcv/377JI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L0M7HK55+I+mDp8jA1OOCkSicE+bXw1tDhJjYOnDOsQ94Uf9V9Mrgdk57JNWyKqc5I5Au2JAxNblwBpN/pzQrdcsuHoIk8AT+cUmTy1MNZdJXwDL5jjCdMerX2jFKLzBpYwzigXSMJfHG+SSk1Gm++lbF6q01qwfxQmo6RCBSwDNKNFHLjVNhlwyQixG26sM58M/7LkgQEh+3WJfxRweo30tfO9ucfhkgSe419DGEmym7uJ7w97HRtYEuJ1gaDZYlXsUUueyFUUWL35EwPV0kXPzIfD6EVQce/Mb7xwVGT6FkG9sd2GchBGc6mbaN09llXjq3J+4epiHpdn6vMqU/QQ59ZWIJUMGiK1McChZQXsiMmlQmE77jHIFp1XSDfSaCxhsFr1gBJEJvuz/PrGORu+cydK37vxu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SEAJtydLSZfDyOKNbH9vbH2xIMNASFZLGm+bXOk9cBU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e3JwWeL/Dv7L89tN9CuU9ptOn/FUClJAGmyFMg2eevQQOzcPrjpXdmyD4cu32SdtRfmrsI+7OA5y4iTmlF83UPwY4SQgbMQYPVpVPXwqZn+QJYg5XZtijldNq2sL+jkH7f9p8PhwbZQ6rTjMjsHR2RszfzsmYXje7/xxRuQBRzBDkae9dqpWv95Sb0qp1F1jf9/RX2LPIoSokhg4B6ner+/W3fo/Ol7xe0GmESXQ1Zs9EXMPvE6VmNbONAnLb8QGTxITRvU3i/QCYTZ8GhtpL62UpvylvxWq3HuejUVvzyT4K69EMZaWlQiMnqiQjoyG/Dl/D10YsguYiXv5lttqWcAi7Ado/3s71jaI5w+4VQ1JBKB8Nuyf+yn7O3aghaSiT7Xe+YALNRbvVAsEPM9kSl4LrqJMr0XJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SEJ9e7NBTNmsGeqQeR1/aFHQYwrqkmQSOG591JjvWMU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5c/1nHpV/o1zik8LDG9rFF1KWwA/IlBKBosem7MySOgNu3318KT5wx5dUOrMSpwvoSpsnutTvahOlXJ8IDwSsXxGzsyjNvw/lJzFvMpSLe2YN7qMACB1uEeaXYCCIn/U4aHyXZGTkEPw0Ob/OJ3HpbU1v2FCmQNRo6fvzP5bSV94ZwYzdCn2Hoot9WJlqz0tzu6kue7pNsIMHXP6ckRDi46xpG+3F5RcPS1u83bnlbIFwkecFe/vNbPPKjTv+CMeHSDQLwE8S4QSwOkr7CXQ6B+ShZeLSTYlO9KXha6f3POUhxqK2WkdT+MRYFVQaKfrUIxwKbC3HZCUk/oWK25ZmUJxnyOzLj+yi9itq5qL2IchiFrX8sHj+o2qFvMbTHNQIt8qcYjl3uvGnrq/pluk8hgD0mNgYojq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SFOzk5APQtffkYrH1gDGy3QW3yH+CQNW6vATduLC0Ic", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M45YjwBAC4o35JLfXylW8g68EKOSN8UibW3H7ICHPi6FQkHc2SZ3uid3G9Qyr1lyUHao4rHfq13n1+mfRjZenZvHuqRORGLAKB/QxarE+LF66l59iTMlOHzFqx0eQvLcPtL3o20JWp6P/zGQ4Phe10angWfK6MTsDplVvjjqxlOmJspTTSoQZsIrdqHzfVVnDefnvNGIrAlLqATnOMXRI57zrlSRdfRWYm2Bbf92jpinGuPOPH714nRjR7hIhXIl7MZKmX6jngCQQgAt91EZcWMuitdFxt8J27Y07RBP05HfhtmOvwCY5saMj5QcxMsfGiG6y6GzGLupuj/QD3/a8ga4DK8dgjkfNi/f5v+mB8GA8fVvV1YVMpTVZwNwNxVCpgLQ2GyOs1p2XpjH/YhuVXsIhX2yuRyR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SFsHOZcN/cR287wfMt1LPht080O2rbgWCKro5lzvyiQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IpGJ/z3K3OKFAQZGGLjHXiBrH2IojQDGm++m9uZHZOgjmh2ok1IzSjflDo6KpVfOIBULS6CFQrg9Sxn6i4ICuw7I2w6kfMcBUyBpEmTt+bByi8Qda6MyaZxwo1GndCbh1SQ1junziSfBT0d805CYaeJsBDgn4tyySal2D3xJ9OdTLWnnHWvw0lCBTUMBWaQOth+Bu0O/nY3fSp7tLz3lH5LRrzT2d4jI0fB5o0aIblweHvo3/rFGBIIEP4I8Hj89gQhitxmESy3ruWwfTli2DhS/zsfgjJqsjOjIVsYW94OcKkzqvnGO24qrFv31wJdTSJnkyL4G7YY81hnCZcznPqxeEbJPkSPjsfR67QHw8AuKIil8noceon6m0N68kPBkaWoTtObi6hKhqnEIn/UwmPbDxf40QSUa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SHtipBdk7/kYv/HsZdo8lPvZXiDKwUmeqSlweCFh708", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T1eNlIoJiYrDErn2NE5pRlmN3rPWF+qAIhwmBKc1WtiBbuQ9hIAMj4qhX4vefsbHJ+0ow1u/5h8mZMPFShhPKgkKl2PYuTVQ3g2w5ihvPbBhxbhr7cwm1tS3Mx6Ccdcdg/elRwp5RUmX7cvmFjjaMlqk6ECrdnqxuuivfUthfSl8c2bBNTX3IVlAN7BRRUP3hQ2PCxl+sYN1ebgT3TvaXYqzfFQpaQCJ77+WNzHN3AqWojs6rIVLE1CE+Px4IOLQ3LrLK4XXgWWFDwbS7Qa5+S2HyZRqd37ap2KAbJAJz3SV510vRHbUP+9EwqwtJozJT9QBrtzXE9zv90ho1Py2fJFTDBJUIIDEE25RWxF+cuWsHqkfZoLL0I6llv3Yab38UeR0ZV9rs1Ijg4xx+y4Vni8Vg1s7rpZe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SIbsb0JNVBXgGIElxHND3pEwNm0WJhwGs86VPx+S8FM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JhNnYZVygsZn7wIH5QgJq8gDyaIR8kTNNAW5+b2vvD56A36XK+Ks2nnCfeQLUuiINb8R4/jn+Pju5/FtBI5lGOfW23OBu0ATQciGgw+zQXcyVQqS0rCMSq+ffJ+NsOx35l46H6xjWktZTXe/AQCAb/dQwPxITmanElaLTyrZ4Au0dl6s/8CqObvU9oXnf1sjDp+xv62XU+ev6f7xqDyonqu8tg+9dnY9zHqQtIvBAM58y8uxFFbEiO6mplPN6DSw4LOF8bmrB1ss2DIS0V0p1hRWk14XnHkoC1mDX+7KTnOE2rHYYtHX+kfGynCP+94PTSxxxDbmRRdWjepa1zUZcRw2Qe4IsFQ2+Tkv36rWaMceCL+BTyoFZ1HKaulX6Mv/1/fcMkpztgBwd8tyEJVpPpDdkor/BNEb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SJDzYOrH6z6kycd6y/jX1kTeweTMtghekkix41Geu78", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "moydjhJbOg4jrn8V+4QMicYbArvfUDdlQ1G9yvOrsJTEhrO2iZ60iVipTfzma2jlgSczr2I2LqriFfI9Ohza7IC/aIwxq5q9lUzFl06Q2LndibmIDRsFSe3/dybgC8oAFERcxALzIlbq7fhmMTtrufHwe46+yXRhWrX+vIqz8aDnkJ3iX3EBmczGhUjcZD34A9+NSQaBzYcBIhKhGNqurzQZQ48phISmaXhVlHNsLxUYB3jqst3L0n/5h0nD40xk5YwhzdQI3SRvS5Vk/ya06M9yucBV9uVFmsB1YHIyO0RTsferv7UvDdRTl3FzvTgkjnoKhuBbf3qFvvnm0oJAJjl3BHCvwqOTnHx7p6bnq/P07xao+b/SG1tyN3MxIcPMyvTqnjio7lM5iKJIv6Vd3fwkUkAp8msG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SK8peQwUYeea0H9ogIjwNswbcE9PNDUib13XW0IwwE8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dDXUYpZ/FTsJc6kcWappHTz4ZW5xu7qyo5KU8IdxEw4SqwXF6TpCPy/xuiyifhfcxHG+JA+qR+IAkWpt9WD1PdFAWKoEtMNZ57HwS8T9WVQ/95lDrfsVL0VuInpBEEvucEr6xstx3n0KbR49RqEXv8wMCtV55hqvau3yVgbJ15uqbf6f7YJu33PtAAfTuEGsMqvqCYSCySKTyrkb2wiE1EPueoM8haAD8qhRkz8lN62TeVMvA7+Kr97M+QmAU2vcG1rblhrwmGhQiPyuKH+p6Y+gj+/R69lc7IJg/4ObNhRn6pIXPcxmcrn9A2sDmKUg63ujQmTr6/ThsDCpnr8850+Wl2MCKjp6B+jhY1Dkaaypb526mCkHX4AU6dB1kYq8aEiaut9XwN/4wGNIAywQPMAHbBbsvdY7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SKUMtt8Vfxs+7zQj616wFfTUFGvSpwuDfr+VvULBzlo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B3lIc+sBSU/4YHiQXnmWf0oQJfy8rA840MbOsh/ZTZ27wfzZbXNIyedmFtSmI0Ze0sus+K6Nex7CWeCELtHDzGsXumjnlGOjQPJzr481Jz0Nt7AembK98Z5MeKBlTdslFR/aVTsG9UuuIZjDOzzI3rJKkhgTs355ZxJvdBPyeQnm5ah0PRL/7SFACTqVcSLETHpMWP8QUc2qM8a7UAzr8eszafKSkgOOofCzY1HtKs8ncPlW1Ts+roYhLPlToHwk/He+Uap4mU841lSeF9YoJpNhyU2X/kK3hgPAe0LAz9yhlvc9Ud5gG12f2yW4C4WxyP5BBmc/LKD0e5OYVKLjd93kn7V8rdEGL7e3ftoK0lX8lnohU8ZH1lOPB2/148gADNXSA9Ua+XHPJTaMcs5hcEaqyTyphj5U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SKXZ60Mg19pksZLtTOa0BVfuxXOdCy10Qoj6Vpx0kUI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W5q2F+Xf92yT7HWFZSASTFf991mkS0l9HMs+ecDsKZK6IVTxdX7nTQvQX7UPKM5qGp0iwoeM66VujfAHOFf3Twtkkl2j7LuyX2bhnNbkXDVMe+ZJlVO8LMpf2nAjFws93YuZEadoQlHtr7TUECR7jzWlJZaUnIWb3rlcGRYFiy94kMA9z/nPr7K4uQ9ikRCTFn1OO9ASQYzds4DxSg516RO3oTpC2R2rnner+8pG8MFfOwXybjXquAE6C85fc5HQ2LPOGzNtpQuNQez2u4hc3dgoaSfFB5FmuMiX3zHdhuN64ysAjQq3ftUmt1tAFDeKqwmVar6grlcK0doAHrAuuiD8SlyCzH/1pc+ct9U3qtAasZOE2/T5QEEJshlxCLAmcJuMeTrc7odc5awXMR+utzRWjTcAW5lU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SL0tWjivt7Eq7r5bdZ6I6tMwkbNYBwzssOM5UTWDtMg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eGtpOgHRtT9CLO61P4fgBHGQ7pIx8ESxWyXCeSri+4oFovsUOZOZQZeqBZtUu/rMcJLrFO+DXho39NgSQIJLilmJ00ucNEd1cabf3a4elh2uW5li2e9AMgOmWX6pb1SidWTttT92iHwq/VlHwGXBx0ctFxticLG3dxrYRyydvIKM9w/xxOVfdRS57blk9dXWTij8ThpncFv3buau9fHO60gaV66LRc49+uuqBWhxWq4doxh5jEmIApVpRPlrRQRsl0R+V3xQdbDlWJHaoj5w+fMQ+lbKQBNKxFG3cftSTl307yQiQbIZ7n9ifiy6jy0dbu+pHszRg/d8pvQE8ficCftJFqiKYrOxuYx5qPInL88g8cJGQbhioAE98noCaYCRTC6EAL9/k+Rqq4fsAcx2AgSjaWKpLw7V", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SL10s+JlzDp8FQ+PemGDXRCmNJFAyUHqc40AykbM0BU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SOV4NH/4U2f/JJ9tpjk9pk3c6UAmILL+BFZ14j3MF0pQHLbanvURju+LY0HXXS6TJrLSDSO+RpanoIhXBVyrTLQFzW+FaIwLp++GzmKw3mB9RrieAd6g1eu+0uguCHqUWHlyFdv+FFYq7z/Qy12baEKdQ5j+J8tDxgL/xc3Bxh/yMeS/E7ya63muhI8/uQxqhwHpvZ5LSNMCDohmRUPo0RDwY+7E3kRnjhgtcWRBQFOunZ9IlAPPogfTsNzy7MgmZQ15qV8yZhv1blPU0YrvpOyBnQ0qMUq5q0t0TkTteYiNSqivKF+WL/RatkoPJJXLDN6cfZkxkhHFme/YyfHMxYbHQhQ3IK1tPPFn6x88TLRdh2SIQcEhxWALIeo9mS9oEY+ukq6UE1C55q6CXvtnluah0TxnlMQA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SLEz9n9vOJsD5fzQacFWzrUwaaqKJQsmsVW4HezaVwc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B0eOnsBJu5qttylkmShutIzvQS5PpGjBSdaYD+OrGag5irgUYDCnNyz4L9wcl8zda1Gjl5nE81H1nnEbzV9e4/7wga9YbZk4AWmWJFJVIzFtSpWHXgG5P9/3z/IH0RMVH+s4o9Pj4b7rMI0RcaGFT7l3WjCzvpXd1OZFff1Q2emAOXADykEcyhh7zlMaL2lKmFfmPucY5vZJpwgXgYiDH5e4WwLOW/7VC59ORUj3Tgw4DBNvoJzxr9Se9gNyHDhJmoEq1diXDaCMrVIdQ8V49Y0nFM4RGGCQBPSYH/Xu2jUsN9XCNmUeV/kqSdod9BtjkL35xF7E5NcYhT/BSNb5s81lfSSIrD6iRuBgahSh5J26UAjbeDApNPhGxh77M5si6mGxe/62MfycJXCnpFcX3dusAd/83aVG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SLPe7NQLYvt6EPCp5J5W5YUnhS3v1T03NIx/5foDbkg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KWbvtkkDHcQ8xV0ZTgdeBjUmnYAWru14CR5n776YW+3kHOkvlppbXmyusMspX177elPKF5vzpl/MnMfE0G9PyFRjr7K+RpEyAIjbgL/m5dwUffjZHMmr+4L19VSeHJrLTc+Ucgschd0fV12O2UNYNKwR8K4vblsS770W8Tl1iWJqffJ4be6wK1Uv4+m1XJD8FKWtfhxO0n/US4RP2p1/d1/kP/P4dcZAQGQAnQGceDBak6bzxiZznfxbZVvdB3GdGfQzaX5+y1hquoBDquVPg8lsPSlJKPVNOVMfSVTZx7XgCbpMHm975/dFEFr3huYhNI+dmsrelDQ5QUp9f05oW8GBAkkSHpy36S6O7eBTbdICGlDU2Wx0OeeBjav2W3/QFmtE3XNvcyhg8r8uXrwcOqcGIRe8ogXP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SLlN4B3oLGNL8GODUrImHjiWgRVPxm3xALXI8msOvbY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VnChrH9es99wSDHqfiX9yJlxj7/Y/ijl/R0kefHR+/pr5klOgvBPtge3vzFKrL88sMcFf1h28GUEFoWEhC93meL/VMPMW51/JQ4nAdY5piXWuUE+WAs+H7tcTGfqenNeNTbkEgxzqU11N27/V9rGCLrNx9yYsfgVWg6Y09Kw6+vvsJ8KcVZj+cF64orf5zR3PMTjMoHU9epDls+OMeZ9PIsCALYIg3QevOrrsUxMxGhrGGLhGqWFZe604eNdnGR8umghpb4rOfRTVxpd4y3SH46bENgGPJqHKBvTg9CwpEDwDzBMtYpjuyChCtOy5d94pyzHg9LVKlhwF7sHi3EbAOyoeguwQ2lgZ9lR4H07G13WTUNIcnJmwbUJbYabc1WTgbzGbf1px8ANOaRGIb/Lud0qpc6RA5Lt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SNtohs/I3CcoFXfZEKev8TJhJvbiOpaT/WmQMZw667c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YVJhJd6pBdbbapZEjb9IAik1QGWYYcCOBHR2x00XCi3wwB+XD4cQX+KS377P+nf3gR9tZ4BYOixrfGfrNo0wvBacaKFD82aHdCxJKi22CBP38psRelZZbPiLhmz/F5UyXM+QTEGve7ogyYfZLzA28vW+N4MeC0OOTS8hxBylYnIa7zZ1jfOtZC/nQTLQ09x5oEX+kM9BLqjRjSqIE657tFXrAYTFRTcse9Z1d/jpdcHORfftrx3dKjcPvmqMKMQw1sM9fl8nMO6+viHH2AHsW8z2ZvTOi6LAbz+H9h3rmrJEFKV0opiBjSKh380tE3qDAnOJ0E05TlA/on2SZFH3AqMvJtRYmHquX80xCTPKEAefxbG0R4j7ncfjrKYKHeiVLOo8RU/ikxc1LstWTNHZT/3DuqEFxms1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SOBDLCAjBthK2DrkdWJpofMn9SDhFWvon0hfqBjFVZ8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V6lbukvrnLKHNOBkKKzljnc2aR9gRtZljwc9A1zSTGIkwG5wAcwp88JkJWYy/cAFmkvlynqKDsflO6MvLX2rxbzFmwi4pSR3bmVbmLRZ0SsCgoV6J2HK/McexATLD70lTSn1vlCIqj7A9qWz7j+Z45SxXOddxKZ4zMJYomvGfNDfZf2BrYd1ndlzagpHeh+gFmlK3iAm3NDKrQaOVKRdVgaRVmvrH7Qm2fF8srVqKU0aeGOL2sPnBbVVf5nWURR5NrUqkqso76Caiw5mbaZ2KZ09wfAo7IVPgbxKRuXAoUYd3ickE5tCWH3xNDzYpCIyoBsY21pxqq2Jn9eHrnVZoB8eH5fiJWYmM+o2aE5UqekSFSm1O6sJiy1ZHJ6GxLmv2P10kEiAEFXVYrjk35b0eezdXfRDOOY+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SORlo2k0QVNV64ZQooph99r67sDnewj5OctkBFPVTdM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i2SFj99f0CwHKAssMHBzUxqZmM6IRFO2lFnvlpELwZxG/gd/9pA3NS13UotSmRB0S1IN2mIYeHDZZk9k4CVrs+/xRcg+MWK0iJ90Fey7gQr3/fAeO7RKLLXBw5aMsg+eAG8prrj/GYYl1w/7uP3TWtga5FQvZGtrjjY+o9rBEM1ern8pPANkmRQtneA4PwXVdZMYr9CV9nomPPwXw6EGOD+yZUKHIugXW1jcHCbqFRLKTgshIr82jpCgJI1+EedWbxPGN1iT+mDTdtZIbHfSOoYrE5119hPASVdMT1e5tyLqWEKi6+7dFFsptnJZ9Ts1SiPWk1az7daMmGPAxpFU8hhw9mkeu2xIGQKwiz2e11H9QymHNl945JmIU9MrnLCBUHcW+Q5HbdSpM6eeIZ9Rxe/zLHefFnrF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SOqqVNnsdRAUznSyfuFoLUQpJ4mYv2rZ1z6XaxJ0Xag", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9XzDPxgp4XQ4Ws7OBiV5mPs15mwsegfKfzouA7D1gpXuHHwzgIaAnZzaIp/wTrwfzt/vvusaOeTqdRhKZmN1QGV2KBsKfQ+YJIv8qjrFqsvdKiaBhIFCcZj0eG7ZQomFjE2PCRJ5sXGWJ3oru9mwn+PP15EuRWA/j/AKQcPBVc8MnJVtyLH3W8LtsrQUhr3c6VInCl31er+snSkVjWWzdcormiDDhY71TmMk2z7wB3pqDafwsyE6T8q2ellRzs/kjpk8NmbJJcD0c+kJ/PrSvWbGXCGjSBmr6HzG0aG6HLBMwbwJlghZCkEqZBxpn4/FTi6FEpIcjRwP/4IhCsvYvIhN6R4VEYu2OZVh/DCiOm+7Tn1XDLoUb5rIlqWNWFhWZcumciwkk7bASy8uEAu+TJ39GafkPKgF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SPGXBMJcR16vI5sIJ8UQwAlTnZwDLo66ZKv9RiP9HyY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JtLJ/G1t9hQ5h2dOI+JSSkBvd4861M05OYi3pk6hLppN32+j+lSSTOX0Ia7hoRjfaOLKnchYpK9NoVX9Qp8+IsV5wgZ9JuBz6o43bIiyX1fI1WbnO8AtX7cI6DnCtu+LZvALhmTY4vn3ovjCGJczkE8lZ+1CxMW5eNKmwfGhixwZCMRKjdqei/mp/PJ5ZI88aH9pmFYQidkd7azHRkrgpNeUPY6rARCKakkT9Fbq0mEdFG85FsSxBIO9O7xd+Vbjyf1cohA9WAFiYRRhtIrVk1RxRGfKnxkp1zEEwHRTS/Pn+SpgoSlJGY320BUDJV/quzyUG7hRgW/Gk0VbJzGc04PQuFyvUDlV6sUFpFwRfKPe1GkDMGYBZs9I9nDwGHCsYAWgdaKGKeEE6uzWbIDLlvXmuw/uIDj1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SQkUwk7DbzkeL7XiMMqscC2sk4czqMjY1BNsKNmwc9w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nG0Eho/SAN1G4gTrArdjBY/mnSBZ8vePaY+W0IKnziIxXAWpDhrGv5IWbquV3fXZV1mnU+4Ntz6WtyyDuKoUddYTjg89BLDivmgq2CPu3ZI4+1XGh88cwTTzx8L6u38/fX2yfOAAziDxogjX/tAhLnbDO8RKbmDhLh8Js+SfVNKhToZxIPjOw+UzSzuIU85LoM3y2SN4/T38Q86ngSb9J+pgbe+eQ1wz6SSwQxJgWaZGQkd+khWHxnZJWwXXAjrHG05bA334WNjGsl17XHfUg4CoSjDBCwS4H0+LfAbsqZMGudfjn9seiqmsMoKUCm7mJ5k3scEkR6SjgzyACYrz9Ca1GScVYByv7ipT+O8h/pf3J/d+Oqo9oL2UfxFk3sOEylwtmaPb7Ct2r/onA7JZtAwHZrRDD7ks", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SRCw5nj/dOOfUU4TXy86GXrVzZBhLcuB1zW5HZ2s+NM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VcBGqo/nSP6o6y8k9+9CmRK1alK1P+rf2G8wrN2IgxQak9QDTtRfX8oYs5awdmWoPlYFD+3sDLueEhulP1oKwl+DetOVHhUObyzXTb+59LlbI0IuXaSXv0lcwLNeYTUiC65Je8aWsdR6ejlEm/hbsz6rjxu2dJWxVlw8pmKg/VfjOUV3emXPhuONxbcSKNAJtJZ5pqYh2la3czItYD80GURv7VlnXrKXekRaWkSfUARDrdLaECX6RDdO1/MQvJz7qc+8K2BA/v3ZdeijCstLd46u+L8mx153H47zTzbSehCPKdBu7eXji1JWmXDg/3OG8f6cAu5irAImMtdAU0MHDPy/rDoEatsD2Fiihy/ErxmkofG8Wi4o2duL1/L9nBAKDeHDMTlqA+8LNAngZV3m8wOyAXHDE03i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SRXHVNF0Q144WxoXRUTwRjlOI8xPa1bbIr3FVqeN5tY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eV5EvG+xpGj0zACLZ6v44g7JU+y/8dxniyfo3y5hPF9OTGwwPMWSip61d9RBJFSzIaKQuMA08h/1Y8/YCDt1BEEwERRyRF0Sm5aVG5/GMrE8K4tSIFlEq97M77fz4/Noy9tF+xV6sGiwhTNL/Ko8q/mzzfMGo2QjOpfRyiovONkTDJ9O7ujSXyaWa6uOVhWO4Ldtgi6TImWSAloZpCDMkt25XsVY558QG+40cL4H6spH7nhhJJspuUxk+I2xQ9IyDLhj3u/z9hVb/YuY/riEWEggZcdo8SgyhwxF5z71d3vdITeiUaBwnDf0Wg7vFO731WFd+BMAg5upBq7wuPDdDEvPVDKaaArKDieOVNqWD1YIOrXhO3Qpn+6zJTYVkKyy6Gv3iSZeIQxQvRyPJGA+1UiT17ZbsjTx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SS8+KMTU5xHveBL/pPO5heWD1MIbrxCTVhqOCPi6CsM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UBAwquOatDCMslpqkvcPFk+VGNoESCCZujdTCFVjSqaTzCgxraBcsjKMylbVMtRfjCvVznZeR+/dfvXU5X03e7CeIVc3UTXFeatB7yT68HKHuQW3xo94rhFQ7DHK8H3cZof2fOUfbWqykPdFnzvkfP5pKFvKD0guXIbyX0GrWuEGdoHgkge9SIN+u9uIYzs8S2u+ixn3tb+MxeYhLEMSUDMZE+q66Bp9gukxodLdRh4GxHZGf93jh3BnWqEi2smaTjUg1xL5AVJGH5aqkzhZO67zXHPd/5nI+PQZA+6cy6FcQDt7ZlDHSt6g26MA3ICtB4mJuSpNNhBOgmzcIUqY3259be4whhLigkxUv/AOyzATU6zQxY5EbnWq2tZ0pntUapw03nAJnc55zP1V0dzHCQnKKwT/PU2g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SSUP3a8D1x087ED4iuCfMHD6qsR/wD0d2UxL0kuZdG4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WmvIdzOr1TaVLbr1KeV0qE1heJC/DSIgr/jP1YUUsZk9JwrYqQrLDU6v0SA2USiPQ4JjKq4DZDgkmWVh5562hxCnPBuKcqZh+/GaNRzpZgAhbwh1o2wBTvXPPxTToJ2WoAuLnDQ3jerv/lQNUvQqUettZ6K3VlkRA/mnyp0R6wi4oCK6arJPv50Qv94hAew0E0TVaaCQd84FflO9qOimdSVarMQP8O52O/t6q34I5LpDcGG87f6HMQeZv+uoCaQQIFFpKIk+BdFOuCV+Ln7VE2G3T+qN6dme3YqsQ7OI3cfFxpVyFXDtLDgveXM+c9A9N0WAwzHwafIr4cm5qE43EgpQ12JURbnliI4qDzlOjD3+LcgoAmapdU2VCXLDqZ8nUx8PtZUiW5nz+gIh6Mmt8Z48ChBaJd8N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "STm5BsyA/DJ/G7JuhTZD4azwIQ1pTbpmG82OXno3oII", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e8+mdNStl8vtRzVMUHEghS2I7TaPb1KEC7V2hbUw59nI+czrhiGqaQhx/rMfcIbYDXIqgKW1MIBWOgp5TPOGYlHtHbJaW3/Dwq/3Cd63U6DMOP1pjn3h2DAh+XU7qQEQaTMiURXtR/Qx+jLvxr5mWga1vGL5zR/0XGfrATi/KJ8W/eEe3CzHjH5HhoY0lIU9zIbZ3U4VJYT8at1VtxJqD9KBjPUihEOXjJ2GLQvIsfw2iJ+/8nPJ49ux6A+QpmP2ml4/GO/voxakQsB5bKl3j8bxDfBHK2Y8fWiTDwP7ewM74FR5U5US9Bt+TYCoO4y11FkRdo9U/D2XqktMSGuzwEtAe/p8xD/Z2jYc4EOLfRIPaH+Ry7xN78czL8yUqAC1I0wvQV2aqrNL8qqYKbtEO17TbTB7uFpC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "STzRs4BtUvcGjZ34KDNz/9kzHYOC0ssqaEkFxlXEDbc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WICc0aAww1gX/cqeopOh8DLtppZ06pqsqRWsoRYewPYhG6QwgaM+K+aJdB9rL+UUM9ZjII7KXFUTd7qbk37qzsYAtgsnF6XzFxaNcl1m+DyeZjDdbJbR239YmcWm4sw+t1GJrsW+JUQfUHlT2fmaeT1g6tusPbFejahoqOm/L4d3O4wOU/ifLmkiZ/J9uNm2GvU/KXMGoAUAH69vfm6cZKKhGXdrMO7ipPq5riTsGPqk/g03kRA0M2RtrfC7xrwbbhAZG5YEEhvH1aB0+fq9UijlLqTkboX1BHmALWM5NLKqvw7F2kMftzoAlHmuMAEB1VRo60HhM/5BnAAVvuAU6kkF2UnezEg1yzRZRko7Ill8Lkhwmji7Yjyq36gfdDweBtMqt8V6Ov+t71tPeJ0NUD0/8mfgIqlE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SUNM/v6htKBH+JkPpqkQh2HMDjPXREDJbn10BVWM8D4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "baYil0M4rpbvjMVHpd4DitoqG6AEnzl0pv/d+/65yyajms9R6N/K911AOJbC8KnwXJZH9ZQd50Oj3oHv6mLv5xIXIrSp7eI7c1ajb5BKKjqNiOIbWz5gluUD4UoN2isNInmoaraut4rjP26rSkvcCExKXJ+bwEfd6LvC6CLiCHzcxpRMPeerm/JlCyLI/MaLK16zYRAWKRjD5tTkahavLwKmm4SYbYgph5UoJcT11pDHebFno80EiQGXx3sFOt0yqcVn8zQ1T/jytvkqQZlTqQrvSl5dhDa3QnA1kD1Qz4wCD5nyooqJYoAuTsiDhN323gwwW6Yg1yghmK7JnfX5pE/RoP2hxikDDSZjupAy7NksyR5iGy7aqHlmpXLewloDaZXWqa8TD9J37HjKmkfsPhvynTC/gyJa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SUkFtyYc/FyA38yRwcpV+ynIZZuKWbSnqlehW0rrqdw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IfxXKrJ1PRnWB6Q//OV4R9csSb/Ft+bhSrCxRpWaXDP6beryu/6SQCMPr1eih4KZb++Rnr3Y8IOu6U2W/AsxwwItZHJvu3Ybd333wAiQrKwl92FXag7rMYZ4P5dS5zofkVwfEEgFtd5ZIwWcSZGZfd0lRWK3OAOj+q1O5MYidatPl2VIfTqZVFpOLkvxExvp+y+TgqOjtKy8L6KpSvvrDLX9KAl380he/M11f9/koiZkp96qQtW0EQcodvCsiCM4KjtaX26txJIQsF352MysEbWynUtPYDTgd5wm8uXEtCvNcdiRMrB1AQxJ8S1OyNSKYamJTfG9yf7PJGvVtc9qYt462aAPaIn6LKRvFEIr85UI5+Fn7RSoUxpl7N7qwMijIPCVAUo4Ta2IFir6Ah3NE+/rkhddjerf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SV1haqzj7jx1pIF0YL0CAYaU2QJbWhr1B41/IP0BDy4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YEAN72RY0Ez32Z6Xlk1HyA2vd6zJHdR/Md1HNFZIDX3Vmxgj6ByxTcVzR9YkXbTh4ehTKOlJJ8RQVDHO8SH/jdmi8iAyIHroIzll20ioUOSOByFpse+KzlZUwRHYzt43SVu5rf9LKTyQCggNkFZoxRA3OqnYqG16OL2GYJMFZA2xtSjVS7DkMT0XV7qRcsL8a+XANDOGCp1V90Z06PEq+BHDE6t7mUg7gz0aaxkWHZV+6I612xSes460PD8eu9MSGQzAWbZZj7i/K24zENKHVKoOrw56aWzKCaW+D3VSCR8lei6WTAk1DNWRJLuk9uuwKA5TtFh/3c3rfscPAYI+ZGY+ok+vAfAzFYaE1AMVviHoJxdeTHt6h3A5Ov5RtnBEwZYH5V/4iqMXQDZYTQAFYQ+n8uM4M55p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SVIdxpP/rCp8KKMUW5cL3CSoR6QKWoUXtkxeGVpAC+0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LSSOCxeXl/riM9F77tLLW9qUIE7oKEwCY3QnjjA0JGyq+AbHQf4C0Fh7KmnAtefgE124f+VSz+mcvl+RQKeqS8r+k9nbsjoI/RGiBfhsobriDLreO+w4y+MFpKtzJjnqjrr6XkM49oNKid4ZDELl0z62e+aPIWD2OAaXsl3khxTaZjZf/Uw75TRPmCeuk7PTiqGcWh5ApxGn6+Z/owVlT79+GLrpc8pHi4vhP7MO/sUonGOMqwHiYVNPhRKJtX0cZqgGRQ+6tr/ZiT2RDoTf+lhAE76X+a8/lQb6VaUP1z9/5KGakHxLJAnz4EbygSzehorHrrm1Nf5NSacEZD19M089FQXJvzsmInSWfJiWg2lUIR/3zGn+ksgCi5Xy+s+nW1/6G+oNJR+W1At20KDQy8igSXc3JhHP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SVMMn6fjmbZfDJ7Jv+JxmVR5zSHw4FtrD/4rpT/GkEw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Zbi1JRJP4lDmXEKTsMVEBTzx3LUSalgIel3V9fzdODXszQFtmtcuOztBR402R3LyQJzpIbPfRtaWCPo9bHCGYXH90syfdxfjFxZYb7rN75HUg5ebXGZGs5SSZHRifo0FzZkugJr8jUP3VPUwEkdDCbCh0yAxPQa4oPbMYnuklMzRxb+KYXx9dnT9eQDqfvOjiQfLPJwMrSvF7sSOcpZkeHsgetAgaM0nGpxwbZX9xTFjQvLLm2qRiTLo7R1URcB6AH4J6Xg8NWUjxE1idtGGiHWlwq9sHAwt9fIodMwvYaoHdTqgJxN00uQqJT2p03NWTwC5tv0Af8uv7oiNtY1GyKire3H42fQerueipNuwu2affhjA082yxV7RcHzL7ihz/Kk3zTx03P3QYbiMRkAxQj01vn1G09mj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SVnluqR13s+v0XhMoys1sjwVvOhx56b0RhGr3UUByoU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6gHqHli2lTiAlW2Gi+fSuJ1d03Bcl0C8JIUXTVnziTJuBSG6kzUgNOyNiefWzDOgqVaEjQsoL4bp2jl6JozgXDgmZCTg5jA5iRYIIWnjnjG2Y7Cvq69oyFx7ahQxgJXoRgPP/keB41Zvh/WW3Gmm/hW4E99rarqxVeLAUV9/4+hjWViNFY60HzIoY49JJ7Hl6kl7FJLGGh8paTOnhyTXy6mCkkD18EiMbm8NbrUM+juVe/qeHcV0cZiB0GJBYPNKtHMg4fRIrnKLhN2GQ5pLeUKrtIxON1rTAUdJFlVgbNEeT9SDtolB3zMR+Im25yuW5jEdMcd4QXROrEHgcGrTNQP8U4I0aitA9LqmuHLZ2XQlQxNGkZfXgZuWDjGYu7FXwWcFk9Ma/ebNNNnYmztKJRore+mt3oZ9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SVrsONiJ2e0/io980CDKCgDW1MkCwe/4WQf01p1fE5A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8XKo4iEWxewdg808ar5BSY9/kwfTZVYmE/Bbyfc2Y7MHVy2tnqVuNsBg7NgsOxPNPbVFPmUOBcIBLsN9+B/YKqffWw9EbXE5JCtkcUFJTardFazJc4tx8hm7F2iRf9hwLGYD4GQnZHjO4y+016dLmctkOdBz9GPeMD8d/lBK24L5Hc1h5Rej/z4i21euHclG9ol5iv0/ZNteKD2sgA11lqjf0iv6N49IngszzqJrpd2EBiC17KtuLJc0aNHDtFwzUXv0gvTKKzI6co9CREASp+yuAULrqxb8a6tuNmXqBlY4YYpM9N2y4WN+oUPuUKWnEkPBDfWM8mC157e06qCRRpBIZIxmFW0jFOzamGbC/S6xYkTpILIZZ2i95IwqMebUQnu+RFwk7lyxNWXhx91jUf0PbQWA5H1G", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SW9cFF+I3cBWF4g4GbJNyLD5rj6Jozg+SQkFfKJ1PvA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "H2awRA1hw/ZAGhAlTm7n4mETKW2KE0UAFlUZ3HDnRl8o0Up1oivpGgYUMn0KNzMNxR4f/yYNULvo51m6p5M2dWX8r7pomLPQjxCjqBJLD15yRGRI35jNidJeaxd0oVhfpymsJNoV1DTjAC2wSTVY4Nkda6QDIA8nZb3u1zWzbZOBsDmReVcRt/1WqQa30BwEUDVaFhpMhkjtBU8omR1Ndy0NFPO84u1tMM7wcIoqeIJwCSHoSk810nANm158+oxPjpN1X3yjUuYvnl1ZmhIkHFZPG4H7dzlK3tspyl38mpwgwvSb8oJaXsJDIq2rVKooJ8y+Gkqtz9TwSyRJLHc2NcqdOO7lMNpjPMgfP2yMJevyOUBFeJK0V+I7JZ11bA982BqwrU8UwQyNu5/9ChMu+5L4XXqQ4Baz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SWHtcM6Fw2ngGOp/Flm1G3kJBQWxo0DhMkJvqtjrEEA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2o11RkneBb2cvy+CIaLM55rv1T3Lfur+ckpg8Jy8paUxzl2jy9HZ03A6ez66o/H30nIO9zhEd26HPhduD+nb5WdX1yWcjtFRWBhHoIF+plhM/E/hvXk+lRUSAbzDW1bzxC1A9hvzIg+G7hQVqfjF+cdGS4mo+c34CtjQ8nz/6hf0Ma53EIuLVX2A5cxZ9EUDLsAMTD1QrsLIAiRwgJ8dQsRSc872AirvSYPxfWx5zfjduAp9PDCOVfE0AMYONyzDMC/7lsivCBuWAPbCm9brRhtna57ERxfoONslTR9xAA4qFEvjm1f1PSFWuJwdwUTGlb16prvn3drElgF8c5KdJTVaoqsg8N1xGYwqUa7RLUxQPTN77wKMJbpfLEZW0af+DrS4IzA3g6j7m312oFqtoaIXtBrUh8en", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SWr31HTOTHyYe7LxLBOvBlTj8HPlqO2YL8OavSwZgpo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Y92XeFe+CvAE9qFBVSv5AHFy76aQvSSLBjHepEihghasryHyN4RAHw763zQziEBiRTBsjeBcNIFdnqNwIJp/19Qnz3+84yOO7sY3qggVTw9r1sl1uGl6CYS2OzohVlHpNTklWro0mWmJ8GUGhmpC6DurvRIomvf+0GlvwMwx9fIZE9AGXkZR07+8FwF2+9NYJsMIy1IPGDbBmhfFFUK2S1jTTbHbWaf8womR0bhLV4pWmPB0wds6HiqKGrbJUE+wrOVfpZ5hkE1x/xUzHT7WaCXXLWIuurnfoQiL1DsL7eZVb/sDkamZcGkcOJ5lEvTNOKI3pMjqrgXtomNSqnVFQCoHdO7S8gqmya5MIIpTvP6WuP7gbj+0CnFNlD3cJeTT3Gm/07TWnPcceL6uY4fYVwkzUVp3CG43", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SXZ/Y93jPk/XvXmw/eh2BxKaVG7v3dyR7nC7g8X10Ko", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AprlVVZPG7jJDmDeafH3/i0+155xburJzoIoaEk7wjX2ShFHiGpGrReXPQTVVREVDlQCdp0SlDd5Gbm7GAE4eKGxvE/oi706IrXnuRa3YZtk59PZinhVzXzFg9R/LRJ5n6vnrQj1CLoQr1UM59WuBkeJ4iS9+tyFLja0Y3+ArhAa/RvI11QbaODidkno4utSVbrkq5sFqKqKY5yk1YznodsYUnedAKVjjLCjWLX9r5nVpR5XG1qfZyEbncptdlFMeDzkiLW57YR6gedZUe/c8GT46hsa1YVNI8TjpKVBBA5gzqPRT4KDD+dmjBg3Lk00MVfpct8cVR2+G25WhZVxFQTklY38j8v8JkCOtLXQglo+mFA2AytfBnOw+9eQcbxHVZBmVwkd3S+xsVsjUw/ShnJ/zAlFpnpK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SY2L49D4tn12YB9DofVxhdrAIajCCLXe+mw/MrO6RtI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fqO82HmWa2DewHI6dj1AivSPBmnlk5qcr/DzJtYd0Rz2LH63a+/f47qrHJ7B3STuc2t8ZLuvnZNP6KyZjpU6sfb9N7p6vA087TB4WMNjM86IDk2qwrjoond1dakUIN6kE+DJ1kNPmEpbmLEcFzMdcehd9F482h3M5BiPaUOdKPeCPRv3GmZOfGOTAf6LB8TdfnutvPOGyPaDBVCpziu1uAMKwdgga8XJsS4b2tsoYNS/gQuz05ey2wPOKIrHfQaKHGrKVabnnnJN88WyInULalbJkaeED7sJqTiN8nzUWorbuOc66IghCEsxn8DTBK+IFvyqusvX4+hO06Iv0ZY/GLAQ3p0ktlFdzxbMHSHaQeAOWSlmw5Yeq/Qa+GIRq6JgGnaeZJBnFkuDXYI1GFEfWXE8bPPpQkOy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SaZLiJPb/nY7WEFlkq3m8BrvxuTQMkqr3cqM0h8bX4k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bNCksqMYcE4tFdlvkC0aDra1ujq8x/st0y8LKs6yhFoNIUMQH7GMEol87sfA6mRPLLcYS2odoZGfTGhvT/juWIxvk+FW5x7W3A4FMhCRYHTHlaIhtz7PUJemcoanyEEjbyxriNMuOrZQxxsHlfRA+nb5WCqfPLPbo73WEl6OtfGN4fHpJ9zol76ICSK7OOgASnVpkg3OXwupyRAeyDGmTwszX73DzkEycxQQnZkRMPAAmZ9MxxINMlmImGZB1EY7sjnbS48Hx/CG1C9+FvZ2+fV5x5Ko//aNrCEhU5NSr9/P5KJXWvxstmel16e0oXk9+UXPcDbSez34oyxsJxusz3BE1LNO9xMB1I6m7HsWFN5adYMGCOQjMcsYf97Cq5PoPNeQilA0wiiGJNID0ofkoIVmA/dBMT7H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Sai7iQEb0ZDDJTB67loFz6ey334dZGUMn8tkC0XNMGs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SrK0gsOYvEL5yh3mN0gdzYLru7pjDWRSTQBB57lSV3q2jZ8BrOBGCTcd+lZ/eiGvcJEbDwotTsBy3DxkoiAitjhLQ9JDO+Tw7x7U5TufJwuM5gUbkYe6p21SMWF9HjT5rBtzox9Lq2wDJyx+Cuo8SVl1yOwjfIPAA2uL+558ttlDUyjsxaM8TTfO9yYPcHDzMVen3tQx7MwcFwjzMpLQ68pCq/vqDRd3rbk7S6KsnoNyAVhG+8bizoCCSfDKBZwXJCju3xu2tFmn44WfNJmo1zzbriS/9VZ+UztyMId2jCqa4tLjpw85Cr9N9ICN0oS9h2bcLgkwbzHeNluW2AsQe2YWYGG1rave+yGNIyJuOkW+xTw/gDVLNTKlNtSzQMzhSBilLCrWxb6cahGFbHZzSF7twiYa2iRF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SbbUBdWqMyBp8oAgTe6Z+XGo0SXkpKEgYJ+BMxSDAmY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B0I+pVXzZCXhWnOjf1Ss1aEhjIpIYsuySJrjPjLLyxRw2hn1MvwZAi8Fo+H1H6fxnWuKXq0dq1jJXtqdr7Ja/t7+ufK7h+aeU5IxDmEWsYFAcp7t3S/WyP0etUVGPU3sAG4ufOUNdLhZ/TE/dnhmab6R3WEUjigQGXaGWulxRT5joWd/xd29Hi9osqSTPLnDYir+6lwtYko4CGKrGB97qKFjhQO9qWozFh8urqXeo+oI8jtxyjmTsOR5AjjquhCJ3ftZksSk0DprpTNy20nmqCAWnrqmeFq+zzznFi5FTbcqEO0GJqFUh4CexDIL0R8LBVYPpDRY4VlX001lsaRHPROz5BQ86xlmMYJUAPtUI0Rs78BfIlga2r/YuSDh16m9UzUJ2I2bOYnn+gtenaylpL1gzJXyC6E6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Sd/Xh4F4TBRGSgrfU8LYDqfIiS27IdWyLU6dgETIFR0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sVjNyMxDw4Qhi5/1EvELX3Tf5nz5TwgB3AUDV8KCuy2gm9CgW6J0XduBTfKg94F1ZOexzFH81C12LvTnbNDOZyuDPPWaKRh+ibMxUKHrTtz77Q3vsMi/7ORI98wnACuIZ5L9jeLrWfBTZ5SP4uWqsdF0SQ2fbjFJBo/9JC9YzHQPKPgP3cQh/RUKTGZAbXJWD/P6Vo2eJu3+YQFtQD8sbJloPqsztBFV/V0xAw4iMjdW2QJ5CgjKn+bz+66VRsoZaPCzPQkH4Adf+d0PKaTvnBm1YWYAnv/NrZS4C21fidnulf0u+DAGMGyJv9jFxfrxm5jSaOZYfohlVYQ+kaTwxGoePYgscDnNYp5Azzdj0FGblw6rTiCwk5Bgy4JaAocgmfjt1SgnN/HhHAsru22uif0ymzYvyxOd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SdH6Do7KasDIGFuEZoD49bbJGkde9bd3ATQ3Uz3SBgk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5e0wEbg+WaB2qY+MX9Q21b8ykiiTGX7zsI0jOgnRf3E6v4fI28wJK9i7yIEwErivFYjVUpmb8IH7LmlcZ72SqZvIjOmCU0XPPI2iWQcrFORCn+FiD7856nIzexIogyFLye47tLCJVsaxzhKbQs4HX+wE1AL/cVMDr05Z3SE6pnVFLSMhilkF8SI9lZrGzqS9pdAwCezMnbyg0mK1JtVuk546ZZiJipaY57E54UVMksV5HHBOvzTdxUzKyw1my+MFFQG6xahMSuPMJBNlQaV2YMybUbmorn8oRQsylP74wJECwfFSlGMsMa5JwnNFeC9OK5n536QuwbJJzH/hu1JcuaRODZQ0cwxtFlprS6ZzO1ZQ9lvoIO2KDW/9Q61xppd/gYescOWzhR2ELpppmUqYneEVPrH6uF4M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SeaoowKSEa/ofFr75ZkJetLG/aMQhnYG3aIyJHDhdDI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mOSOF8nuhTzczSf0106lIdKLzEwuwCkDOT1FoCa0ifY4MyiuCJI4dnOzrl/Xeqwxe6KKR33xJVCPZoi/9xkBJBxMkRoSIILVxS5iO4zhHhJ0XEyIi7EEzGI2q0aZHWLs8Hh3py1OiOrJ80RMOvIMRBp+WT8d7oS3u/JtCfKyWIFOqHpL0Np+hlXDoVTE4GCEemvs8xVAAbZUAedbbfEu8417Rj2Evcd0jAGTBHL8y7afZe9/pWwVDPCcX9VvBop4FdDq5QiGjcV3cPZI4+wHg+sDnzuJY4uLT++E0v+PjnhlEjGJ4Tb5f6scrpADJELwfvl+Hh6Keuly7loARMT40oSI2UfHDSYgXdaNP8KM4qvsSGqt3bjZNGlZlpTneeRfHpDJES3Jxty8xUDrk2btT4siiYoynVvK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SeeX1x9vrVlxJDzzSqRPODXTY+AKobwADzDNSNXYWi8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dUZsE59Auomt2dR27bBlM/q+SIRHZpg7CH+mLWbYcQ+cAbwMlmoHPYNWIUB6hubKjxvyyuVhrdoO42GcOzfz32ifYmTQz+qB+STqmPhuszpKw9bEId/tsmmQzFPpoD3PfWqsmuyEXx1a+2oxB/JYU5qRnxYg4W5mzCR892VrBRB3mYxoEFohZOiIp77bsqApplhio5BjKcp/E1SPAQpj9UItBUrwaZXa04KHQPYYwN1QOcPuZwtH111ACgOx9YCV/MyHu5hom7OpQdbuA5HZrslx79DAxPm+jDU4pyRNf5J/B3VD/47iEADKhtiDVgJi48gXYMXWJdxLZCEiJgWODM35sNHM/+SU8bEjLN8fotu1lInu+PMz179gHUSQhCf8tPprCBHCFYPTRcUKSrhiYJXgPwRFchxX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SfIZq5BXlFHGdtDPb+/e9OCwCC/PPTpTJO6Zu51RvwY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lKJ6uhoTqrIs0wA+qjG7R5OfdOXaK6xgrD7DAKemYm190/l+tNDjYaq8uJ1iVVBj004UibN1EiR1RJLKwC3GSwYs671jXW+So0cTW1l8aW/5gyz0RaSq47WqRgwk09XfMfe8WNArfIrwKcYAxScWgbQZygQKX6/glupRohJH7Qi8SwCeEQ1ixolKks/iee9WJ/akMxHqQFYo+ll2y8UHVe/DT3bLOUaGk4OsuFZ2UUjwjJZFvuaFcp4W7vhDyIgv2hyk9fG9Z0HsHhtntz5QlD3a2sLZ55eCn0NvdPCvNFXFm1cJRgkDABRLZIk/1YEwklK2qtKHwH9kavvZmytZY0lZh+2Tx6tyF642i4cRGlYAL2hkWA0gHQKJjQ71OfgFyP3jd1ib3IqiEbGmEv4ifK4UdR8lrMsR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ShdTKh64jiQMxTvXhCrSG1lcmNz3ELvofJifeRtrbDY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bauf7rsxqkkgWSMHEh+XfwsYNXY0uYSdHhIypnIQUN+N2Dr5M4YjtbZRiyFrRU3agZ5DG6tUfiWgOKTfzS2cAgLLvGnyK9+npu8yi4H1M/dOqs/vY5ugX8L6f/X+3p8EdBjPjvg33BLr1rmpucZjtNR/MbfiGmo4shAEWil+8v12TUz2Uq5V3O1yUKiDXsW07F3vEmlSDFy5kkZTg/Knl011apCaiYd5DRPQEUp1N3UPvSAUtDjrdnavvzy9q3+18fjAIBpqIFlYCrSQv6OxPjqUGiasaPmZn9Gwh/nuuDN1lZqzASD8bvA3RdChMgwpmj6/rBD6vLm0LjEaiAb/Ax4SEAW2P0CjqNCpig4e/+xnad8K9Ym/+Fr5S3cB+qg8ZPlXAnK3qFwUBIbiVYE8u6SmjBGmM+2H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Sjya+0nUkNKmiascuol9aTBnDqGxv1XT+zR6H39UntM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BeqSPeSclR4ov9fvFlQysfmy73KahYVfbkfSmm6GPOzqyJ7iHiX+XC+lsDuOoD84J2t4EYZ2ZyqWpafh3J2vRqEfutVVcDW3NFaUhF6eOfUIcNSqe6IKg+TVT6Y0YpbIagc7s6mMzjFjn17jw+PRfZo85qkzvc0CL9OD4rFxFgeCHuMwhVIQ/+rgD8KUm6H2jTgpg3hglxaf13lg9IH4bTBgImQfkkO/8zzUN8jw1Bt7JVQzKnCHuLEjcwUnk/aWcEqtgYjPPAN3ASfhSHBUiefB9tXytFCnFLdKaKBs2Y63H/Pq4HVmPJ8f+D/93XONkCWTE8XmlvCn4vEuTcMsnlCj3dANmKMSK/6LtA4Ufva49cWUgcdOeJEOtHbeeVHMMcgTZXC2Pes63r6cbZi5oCSMMl/VmuC2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SkDoXp2gQzDQuZTX3poDEFCmX058CsmrHq1RAqnvcww", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4chqxKCiH78dielQewV16BlttGeBQXP8Tn86X7ff6imk7yChXIIdWX8qa2N8fPPTUA2o86jzadK4NQTDPE3t7QwRgp+Z3RSbfeYet7BogKyItUv73vjfywmmZZT9MiyjCha8DKwWHT64G7RHlaqG/KZOIu99qtORfhBlztAZRxobbgWsIafbXlBT6Akt4mhNeU1uIzI5Y3W34gCC2VSAV9Pk/fgzgvZ3paPYi0dC6wokE1J9LVt9a85TS8flgoNsdfRsbSLNbs/8J6og1nmGIbTKuJJpV4fZ4vKNZZz5lwK419dIsf/6XGcbNiD8gE5mnh31PhjwRf8YMRarcN2tY8Kf2wkxMAgbzBAeTsLAvlKyFqxxs/Ea6777/Oal06yCOgJDGGg8PJh2stk34JAnTLwuMCgrCuKt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Skt0b+3O6lVHNJRo8nc7sCwpJ/zgNdZ9rn3g/kOgWVg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "18FlAq2/p4JZzzmb0JldfXXxVDTA2C8Ufa5Pc/9hXYNCh79qzRo96Fj8nlTSvzuZfe2ILdaFj4cibpeKdXsuyTDuyWgl+bvhHRxqtkSyKNQO1kzMKt/Ub6enThusASXXFLhpj+JDBMhFSGOdZ5gB/2kBX005CsREBrtbGyCNjmnOtOfU1/7GOecD2jZv9/Gd80BYWU64NoIIbPIJgeMQaT7QTNaN8AK6D6N/aoQnexlUcW03SS4M5EzerLNCmRD0KGdmvDGLR5rXDNtw61KZsIjW5EjYeWaNzAdWMnIra2XZAkCAxFrEWqGZGWZaNdA2sG8KIFKo7ufp9UMxCUOv8CTgiunBC4J1zh2nq2bvC1UEzIZPBb8n79lIpC++C7OQJG3c67M0QrXJSJrxvcWv7plmG0n9KkEi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SkwAlgyoycOD3ULdDlpzJ8NPQVoZg11vS2IMn5jIbIM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YdxFrQKIWWZs+nW0az1FaNvavxbBZXGE+gAy6CDe+sp2DcsRPF1pBBhfEytj2A+33HkdC42P+nds87xPm4FsXzcxywvwpw4KFZMITajQ/ncbqj7ihZHF10binf8Sx7cBVBZhVW4isUtDZCVSJ88aYG/H/BNJPX7iWaT9Kqv/2lOEEqgB59TzzVnRCxHDdqSw6WsnSvasqQpqJQRvoZKbP4OCceBo465SqhPGgqlI0j7yWVhXCMg9JYXIeEdPJpMYNsSlo1Wiv/AVD/Jhm1yK6Y3ldZOZIGp3EkhWK0vxXyPT7/aylQyprUjWmi0ZefeN/UO9oTFlFoekmK172nN8WrHlaYEowqOuZVvdgJz07G/sVMYv7nliLH8cQUztle99cclhbp7NnHoAFBT1ZpFu5lS8+K0V0sx8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Sl/UuDEulZ7Mgj8Z6k2vSj3FX7CoW5Ecp/9OzhEDHt8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oRdebFc/LIqmvp388vK2eipXmNB+Q82RPGM6/NpBdn5qbaK/U2hPYnzmar6dNx/EVUAPE2/p72pcNDkzaCv7UILPvRq3pQvkuCdmVBYseLRyTxsIPGL7wuHD/3GLMNdk/wGU158HkAPJej1HyMcbvMjU31X64hYXNAYfRs23BlwEQrNY+VV5VqlN1V8BnhLjHuhWUgfpoM4p56FoIpeBMze2U5RMbc4MKd8kQjR0qN6Gm1FNiprvgLHzuIQcag/snvhCZjVDhyhrSLEYy9Ti02wNABKlsStE/m4AY/azqe15tGJxFUAmRoPmVQzPQTqcpiCodAzO3VrAKJ64K8nD/8PN4Fn4zueMSN4HPT04kjC5XRqtG0uJEjD3Bu25/ARLaJINeAkKaJunJzSSSwVH+x33oL1cKVqf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SlCh3KaAnGQccEBSeYyd2ISLbj91WU+aKsHxrt+JOBA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TLotufA2JW8tj/IE1cDVMnuO0RKtn23sSx7/RKR0HmWJjfrbrVTPEOzk09GU0PxmRFprhHzGaxQ/bgtg16YDUXPeITuaqfaQRk3GbMwYD+mHEN6viiG5wYa9/n9RWQZeamygbZbVMH7XH6XogTYq3yxSAk/CgO5bsNDKHPe0JDPnloGK+KkSnWrklOgrGYPcXrPekxVFqPiRvcpYKaeI1uRZeIJKkcUyYx6vphNLJA1iuWQbiFBMXH5cqDyzXO4icf+xjK9sYDa2TwPh7Pe7NdYpDEUCgNl5lKB2n77HormjChAKAI+Dyu789ZoK1OPHpiCSW/Eb/Lr7BYGU10ynNKU0VJBPf0ejqeCM/93KLtW7CCLGHvLrGBG5Mfrm4pBeHKCpkPzy+F2BBDbfePCX41J9PUdSVipu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SnL/E3chwfdNDdJguFqoK7KeTbvMEifah0eSAEzVy9g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7UJVjxoYOu3FbEfOwkcc0Q94jbRKFXCuAQR26bzP7+QqNrN/iL8AXVLkIHRxOuQzBqyCfdhMCGeUaMSioLN/kFRGnuHzJr8H9PQ34SzmMGyOPBhAb8N9t9BAVwj2/UeBgqJ2dqnKJpJnpKj+MaQyZKZLuhv6fQ7MljUf+0z1Z5OWaMwmhHxDADbQivzN/JXXqkaxOaPfDl03j+3e6hysvU2K4dOotpF8BSqGVIQdSRFUJJyGUlLnAmV4ppKSUcHrx5QUUGGVz2nfXxzZzMSfHYB9tLjyjGXGfb5Yw5WO16vWfxgzDyCeBXaYKnZHadi8wYn4kDNv2IRRedhdtSlhvEE/Nr+qhgSmB0Yaucl+4Gzrc+hKtEUJC+O1733sDjxqke6quEAaKu1cVGiPSZ+wh39iU/2n5MXE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Sp8CkU/TRZGcGeM+l9AizJ/4HcHhobWlhhIvPKcHzzM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NPtvzjMb7kHkcBHHWS/3yAqRmjVMvUDhUKT/vIq7qzsmjwshMeLG7dbIOKghqnuwp9s3HVVD3f0CDHJJ0g9isuH3YfocvwLuphyw/uBHBng8iQ8yyoXe6weMSAn7SrZfGeKFJH/oHkU+qTIp2xwtadZv6fps0vC9klp36U32j/rz1NC7jGZGx78B292GRJy/EndNsML8azxFRlyXl2giTxQYXkVEzrTVwWgViLNfvmusQQwyk7y47x9uuAmCXtB/NRyj9BrIZFJvEeJFOYjDeHoRPNRAbU4j5xaYPcej23eTzisGFIQokiN0MWm90uZA1ftoTcFY5U3o7pign8J+jG/efEKlHG83UvmtYvhQSsbx6mRpNgNs01d56+0SMl9fw7m4U0Yai5RG7Kcj9bKC76UwW+nFbm+C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SpIKRnC5qVJX8XgjYgJVt7f0plbS7111XK3dG2mdzII", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QriBn9gzbL1TjJBJ4d5DVPVfBQ9V3U4RSi8A5H5vQejNf2jyzY6y4evJlCEgWYomXxHVnQEAHCBDhxpSNTRP0iAgIvhv0007MbWgujeM1SXZG42wAb79tImQLldmsppAzJetepVfA2MkBkHM8BWdGjxpKzn1LxveBaIcltyXHa5RntD6wYaSPkknBEV1phFO8FJ9CVZnvVIAJqjyfhI7e/w5f4GrreQSvrdiclIqUeTE0W2VJIRvNx8nDlTwjFPmJTJKFVBswVEwUgGJOX1BsLGLJtDf09lYxDQhgJ4OqkHYp9glONBHMMSIizUL1DaTHBZRn7ecgYK2f5oB50whK2RRY21ESDKmNKeJK0tIcv2mrLerUI4C5jhjwF6ebO0l5aeR+qtyRfD97UgOzXgkdS8h0Yua1kh9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Sq2CuKEuBVEVNJxAlK+WjbEwo6KbgVWrvAp7m+imAng", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1cSzBmmwzuiOTiYctc3Cr5FipBu+By5JVA4ILOzAHb0jR4t1fy5f0XVY/v6EXDXHjqNOOnzkXW8nQJgBD7oJsmdEEj5LwFnW0gi2LpplW04VC6cu1UFlVjDRndIk2+JjyEQ+OFydxISR++lunRyyDAxLZDhjC0okoFBKOA8rCFomNOgLLCXRqm7NnS+Z92RGtAEISIcGE2V0G9CFHntf3WEuZ00gQvEg0LwOpWNkuS5pztqCyv+s059fn4RL5sosSomzSAo8V1ajtrnjTxNYteYDQv47DLTEUN+dlWjUhGZmXRbxY/vFz+7wUOaTKZkLOpufXJUzTj3ftPEEIxdt/yzWSsUp1lBkZFoP4D8jcRdyqztTNWGMDBHW+6JT9jK+PA4eJIb+CWDSDlfyU3QuxgCO2MNRjANz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ss04d/xsF4h/0ECAz6JDjec3qW4Gv+2bqSmee3yT8fE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WdVt3sgle+VEx9PAayUMNvWohoFDkz0JxA3wxS+/qUHLu3/dU7FIIGHuaz6Hp+j0cfXRd0J1+oWGbeMQI4M8KhZ5q2fSxOtdCIuW/L6gsCwSyPyzIS69Oh4p+lH/nEo0NrnrXLUVxSIdJF8d4I/7VpbqXCv/qkMpWDzHSQlZUShCWsjztbXvP/SkBYfw5iD+9dlWcv43NeyiP/nl0Ed+7a7qvzipLZzs9VtAWEZ67lxXv+CuC/VAZHoy1RRm7mFzwgFFGv/SmR1GCEfxJReVFU2/uM7qUkzGupDvcxGc3RtJ2+dBO6LHl1KbK00iNAYiXRyei6EMjPDGEQFKsLFrfdFFy+5A1KGM/YjsuRd2tZSEHJGZ4hAYTHM6IvDhDF5fMTc8Rtl5S8rXKdDeEuoY+BWSXf90cnhY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SsLtQZQaKHIHCK76M6E53clv/XVLL1LJeAwBWa76Wbs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oMbxmZeXJZ4dHVzQUBDrA9jei/neHfZ64sediCyCr6jaPFdsMFbxvdmOOCyjADiZXZSUEbVfWO2mIE0e/QLPapTPqnxoUV9dGeFAtoC6OzS/0zxf2Svq47JCE0RNpN+r12xHgdcfi/HsA2TcMjBg20BZFygD1EEqdKNfy8psdPUqGJouD3voyqou61/8QBiI/RFGhmSoWIiM5slwcZsT5Blj3ylpDdSPkNjRV+n7u9fXN8nb9V5/07N+OIN+3Fezpw0PEWbTl/QVHSEPB33MYcyKMCzQhljbbWvzfOzYYHZYbhc348tkHZQaxSLeq+qoNkW6v7OH4YPvGL/U7by54Ep4srq6/hTmk4tY+R49400FsKHQm5Brk0sU652t63PfzrK78WManWJjbQyayCkh9N8h8S1PinBQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SsMXBGOjcgYpL22a8qIw3oH0zpIUyLd0Sb9pELwhTcY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RuGEVacsKjuvvgiAbTv8YcXbLnsPKYueT2Dh6gJh59/8rfDo3YTmxB8kiLNkikXE4ag2xyQSMwmQ4Ck1I7PLOuV7pgpU7nd4IComtP/Ih/LB6KTDSlLKYjQsAGtrxemcsVuXiYYpE9zAFkQxD5XAfnZpJZmZTxujxVA99TUPNHNMs9QwrYQeixiv2XCqpzeftyxXcjA1Vp4adiqLBzxYcqWGJrivntTCMoymbaYPTPNXOUY329gME7KR4Xb42cTWOSDvF9kwxrI6GpF0YbMaqJAespeijgAhsvyCsFh+B1xx9g7Iv5vwMUkJG37jLBN6pxScDrhQ9SNaImrvHHpb04qApIu9+MADYFG599S+/4N0hycUMue024QArEkvU+Z7ONStpyFvEXxS80N+wQDj6byw/j8WC2Pd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ssm09LmC2Agk3yhK6fDRbx1HFg2FgfGc3s8c7P3ilSQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XmMkn3r1Ic7QKpGPn5cXBZQYzE2vmpOXyCJ6QJrM8MX4IrWfekF3/xeqn6UOieEKpiqMIKoNC4MJZJ+ixN/4jlepcA9b/HQuW/n5Rfqg2xWS0jhpDCtxSYCgH3CzXhHo1IIgTdOYmZGEIZfED8JrJtreqXmQ43SGIiaMQAPliFlcDUOrzbmqUW+8gcS2OhKQGV3BVBGHbrfl+8jlJB4TqKdL147GkFGFLFfmirsCEZ/L/FKXRYcitQP3g6mKWhEKJ4mkgSr1fVEPuAQd2Fxb7+FnIsQWM5fWNSmFS5y5RZdzMAPum5Sf3X2GoO9SI6YdyKNH0v7gCzBI2zmp4U6XaOVgxc6xUQAXXmNGqDyCuQsqyJK6JTDyiKl998AF8rJBTB218zSrXg6bU3L+mxfzMQv169YSFGnm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Su389qjsEYSrKYE7S3wKe75OXMpPzCapOGOGIYCHVuA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y+RH9T7mykw2KutPDH9L7PwAEW1e9bcFQBNS/Z45C02KhgSZ7OCjeUd2cpZtjZ8ygB0o2dR205foC4MXmiacoDovX04zMMkhI4XS42b0dGA4kyzKhwhvL42IH5vKS4cg1sitDI9TcnYOQ5HW8+jHsT76z9fSZeSmGJBZwu60K/a/y18cQiABA6FGNYTleB9/4nU7BflHghnrgT/BggsAMUsQHdGz3ERD9xoX+NnCj+mn6HwNcAhqJVqox5ruj7PFy55TBUArwzlhJnXGy447zyrvaTL/BinfdX3RKjZfwgh7dRL3AA+V6BF/tPDzlovhrZGyho3tt/mVj1AXiACU59gg5SyjCHgnz7jeC1WQwUy0OerZAnWeO70MUMPZKxjdUF4Z8lUuvDNnrNA3RRyHKV7xWDgXgn22", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SuseqNGBaFeFX/RAubQe1MIXCE7t2Ymx+oaoBkRkCkE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JcdMBek/90nQe7qJndmpUZefSCzu0YutzMIYgHll1lot1o4PzlAz5cTywWO8wGvoGlplJchhM3gWVo4Uht7wgWQXmyasowxJ2SBBc4uFrh+zdHXw0kFvdQ0fTj+m6mxKTT8qwK1dZ/w/D1Fa+bVbXNzyreNLtqlBgDPx4EYBsjKYi2/KcLui9uSaQ7orFGUXrZEtKCHZ1gn1kuXuWXasbIC6pTb69XL1cQFh4nX2tgS6YSYogponLi1+toHzGd7VIPZ1zW84f3L8g+WPLvQiRoNxc0MHh6L83jpaMoH4C8GjfIXeG7TTSE4OxU1RZjMjCAZI7a71CCZiUsgFwIQm1xWYbxgTMHeJnxwoDmLog7HrDQ9E404aLTvc5srRdIrwyUCfK0w2kF+B06jU2ThhvcQqYBjE09X2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Svuju/KuWykN4yBwGpfGFE+SRbkBcabPROPoShqPh5o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3mLUOFhcL4w3M5axJyJ6NWU7OfiyPVkKnHnVTFR6qEKeFiZprIUntexTzIcnv2XpB2ahBVjt5dnNq/Gmyl5IRUAX5AH4lA+ASAVgLYZpZqc4qY2KIy0ohrTvFDyQ9J2kMz4KSyh1Gxf0+CDcBtFkBLZsJIeT4EQZXEYe0EEyJm+9auUw2FNYBds40XzdJDL6KlgOzn55P+KFuLIiN8GKeLpxTwRjx6kD1r93Z2yDcwHDo60zk2LqGBxfN37Xkef30r2EL11xtR6aEGboBGAvMrHqMkCnLUqFBl55TwD6CeE6Y/XyU2B2MjezeRBKQuervJh4mScQ78KvAJzOXU4MLoQJw38sm3lYuJioix1G7E4yquH1jlVNbOYAJrSzZcheRlkd0ngfy/DRQxEUtoX7oL8qQprUtWwa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SvvDUHpfuFG9//pjId+MdBNGQCBxJvNWDDQ34+ERkuY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dQEbsTZA2FNCKIIVP63kCxMsYT0yzn7D17VcapYjcpOxg50uk0kgoo2ikS3fX13goUwPUeXCYf8xKdd1loxnwPOEdYRTNy8/DVr98dtV97JNM5tNo4k7bCVQjBEhqpOwUEPNDvO2qAltcWaTCtngsfhpeq6pBINkinOTq6n8UzDFELzbWQLYorsM/SBM/EDm2H+MIxW6ZPFibafLV4aKZ9W21LM6jNGI/F885st8EaUkPlwIP1l3cWTyuYSg9z+X25jxv9OBbdGzLOA3OnHklHgfAZS4bbPL8B2dxG5Pot+O4tdDn/F9cD17J8gXK4f27UvmSajT1vAp7dzggpBRrD2fYMNaufypLgHfCJv3UtaTRAJaPo/u5h/sJOV9neexOEppKgDMavlAP7PmY3gESvMXdYF1Clk8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Svxi3xc5wWUmb0KMFRHx+Ju92MPYiqD7MrF6ngNpwV4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CO9hfY9us+Vxka2zv2r91SQFa9F4KX63XxCEP81szS28tLpZzk/iLPM9vVDMtQeWBMrqFEJKcK3Am6CZveQQmhoR4jU+VZV8845FfJBr9fziV8qMo62CwXeUww3+VQUnF3x6RFDMtqbDHj27y+PPjZ6EQzN3y/tAAj3mtY7iFpz3eGn0gdPcWki9lqy+R7i2NAV+zAjwYLoTimHGpG5v0PPXToaillUFzFkLqwYZrglzNr2rZaZMOU2817EJljYlkTZTwLKsN2ynOHy39FcIHX1M3Ue2pClbw6/njK6+rawiRz245D/NCQmu3H3vKr+6m+ylKnd1nTCEV4CUomzDgpEf/JgY5IFFRuySf/7aUHlNhaqUZSwc3huCmpV5Hhu+gsV7/B/RfcqVBSfMfPW60yB0OtJJezbY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Sx+d5xj7SmNR2LMwMkFibgKHfGHUpQCci2BacTaxqFM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "en21FYj534BKduLwAeu87Ko9Yvta0IMyJARAh0kXkN5qtzcdwnn0P5u9uomsOTBWOFeegmTyvQTQAqaHbT329pXWDxhE6mBFnY7TdnbBPFkKDyCVrihjYwbeRKmn2SItrLW/xvyo4H18wkrxg9x72wBPrdXzuOS3CqTWnxqUrPnMA00JzLjMtzK+h9ceDdjh1aWMpoz9Pc6wjPNkzrNTXg5fBy3qMpIwzsfgXJfZNh2Gq/RYP7kCa/1Gp3RUGe8fiYhOgSLwMMyFHAAnmhe5uyJKN6X1i6XXi2tWm8xAVPNt+bHnlHH9xkO3+pziTRQP+6V/RbnKsQ0GEI07Bm3kP/RneED9u4IQXqSnU5CpP+ejinvtzvsu1z+r5F5UBsJDvphNCYx//2UYNfGX1GrXvaU8B+Xk2SRK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Sx41voyZwi9NAi6JevOJmxejkg9ZKzFRl+/z9M4i/Ak", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vTN/DpkdY9inrCyRuI8jFIqfFivfJEHupDan/IUC5Giq+lAj9/jisaRNSR+5/b9jZAMx8sW2GxVVgOY6aq/mRDhgVEaxnZClOex+6+rTJFb2CGFpLchuP9y4uva+WgRZ8WAHfWexTNbbvN2dh62rWrI7+MhuaGdU/Q8mqlmbxe4L1jy/X9Ac+GdYL+nSXlg3h+da7BdymupNtUxlsSKeI8cQTF0I7hGfw0qJrBWYx9P7ATsTZfVkw9+9vaO8jyY/xjMdQ6tPjwYvaYA4eaYRtj1Qav0FUCgX/Y8OHsEzQnEB/xBMwqWyERVwrdAKujjKPsUsXj3HYn8BqHZByL6yS8sF+J/yOfLwAh7m0JAWDUUoQ8Bmbr/hwFGCKhCvlsdShNQqhIdHzpoB1IkMiUC+aSGrvgvH7sff", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SxNYfZ3dByhGRb7wJ7BsfnprY+9lYjjBaijTphygSyU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3PnYge+ij3C2U99c2aZpYRME4xugB2uoaf9SQnSIPWRKG77dmVERTYhIc+yVVIxRQ4PmGz+uE+0GIMOVajJwEdQqcbiO4t4jDm2hxEB3dbGmAQV/FwR2hhKa76IHgKFVVH7f8jBDBHNzfMlQx1uHMljYar3Mb3yk5AmZ8Q0tVN1XQM6xcGpdYQGmqvxH3vlTJpY1SZUbZxxEkEnhtsGcWg9L3gwvrX4my4oPCaGWxqy51KmxO4sNKwln0lfHDGPaOEzTe9OcofDa/UhBces5fkh3meYMv20GPLssdZm8v+D/jzJOVANCTv2gqxhbMFmh1WPe6gVKWWPn7RBLEm7Gpdyyj7G6Q5tDI5xE/Lm+fbXQ10BSGSsBcf5Unh+MAF2Vxe6BXmMkqjkM2RhoLxUebpG4Gu3lVyLe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SytBLGfC08zh3Wr1m3cGt4KFTm/1kZXBmwECX+gsofo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pLPugZEwrwj4aLPuwjfFkbgd+A/h+0mOL+Vann1Iz7NSBqObzm/+AeaRyKooXqkgA2wT+Ap6ppHDT8w6z1M6yQ3G1pZNPKomd4e6WSErXJ71qCyTeSj0NcbCtzWN87FHwt2zzTuH0Im3d1zORPXd+bt4dmcvWQrsUQsLtgO/RCs9rtGWfHmDCQAOvH2DXGiO0VO1a1tD8mfYdFaf1IwNl6bUKFADzvPUSG7XMDzJWbb0POL014L0rmk0uy0P9MhK2CCoEdBJ6VhbxjoEX10iYUVreq78kSekp/MDaXYySoabFs6kzAs+uACNZZrxdQUy2v5YZLNP52tDCb739Lt+rcj+ZwhAdZohHUWPf07AJChdHnmSzRXNCSo69tj8IcxaLuw80BJSUbL1EOCv54rp7SsZivlx1w3U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Sz7MvIWEpTLHCZZ+FTeBHjbbBN1AWv9GyErJ88Yzxeo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ormStrzd2PlvUvvVOyKxW7yT0rpJrvVjrNYZ4AlMjS3WLLvFxcgvWv0Hzm0VpIRVU/2ch4gqo/xioTfBdPvhMJNrmxQyCXdukxGn+D0hQIBS8NFZm8YmD8Y4adDHym1gmEM1HY+xIw85nAtm9lFc+GRuudlIJbSDYyk7+ovobJfWxCqzochHWIo/OaifE/WATbjgX9zb7geQgr88bYBYlAvZDNI7TWKgh+iVwqhRO5qZnxEykM3bZghZQCbRpTpA2O9pM8ieVis3zI3OVFSrrutt4l6gv2MnRtLpxCwqLp3j1vAzW3yQlnEzTP5e237eLMQIpiZmmKC2DqQM8M7Hhrn5QgT3q20kOxFU2dnMB5c4viPPGfPwcGMCx/TAUIJGd14+Wu4UkkC/idWUMH5eOFhcQ7DVYBce", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Szk+6gGUttiP4bYxArPJk6HYB4F7r9vFqPPSyzulz2U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Rf169GyttgzeTc0koiajfP6NNOkpsmtNxaBsi5it4dC39NStcd35oZBxF/wZxgIGdxJr4pyrdA57mUEcsZwuR9gbWlC2MT3l+9n2oXOvQX+zwjDtkfEeCRnLxUT0WXX9pxc8E+GPV3bU02bshoDW7k7eTZ/hXJ+I+aOA35qCxX/IKauOGR7goRwQt5E0jnAKj5kLieICO4kKnpb/vyE8PUmOEafyv084hPqYYhjTZ//4Wbn5QYHeDJDL20HT72bT4M4eauTF/bTIaSyzeCMnHAu3mA9tUmPyCO0aoZ88IawvilTOEUW1hr0viPJV4cc9FD18hBzSthkO98CljXeCcSlmJNB7TQDI8C3tnlq3Ia4jZZYqkipzo0BTvLrxJrShuvJ6NYyPP9dL+vnHnCO/kslkl9Zj0uer", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SzwxdTBLHNqT0YoJYtV+iXLnnR2/F0THWH4VLWOLnN8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xfUWrYqCRhWdnnmDFO8LPJIzVmhlyas1y8Hcpf2d5ce0UsTbEbRt4DwMwY7SiK+9bDJ+HmaPsCz9ZTLbfhAgGNIgrxa/ia+uoe82vys/f/2ndZ9um6I9QfOba4DONR1HmSa7T2JIVav++JJmHfwwhqi4LAAUfy/2hGT9X5dx/BqXJpubpSaCirxgl1qcghQBIIsqcSvPiAJ7voxJMvlE8VQAnO0BPc37JUZEX4PZ6w5wkJTPKX/QAhn3PQwIjxBx8GXF5nlryRUS47UgLIUb1QZSkfirHNiJWubShBIcUKW+CYdIJDPPZANnggZN+Nb/heOIyy8whRAnzdBPtnoXg/2ix1VqE2RBDUWso8XzW3EG2qoxae4b+WksDLR+W0MjZcHo1xhJya9KoxNg7I0G7ufvsP95NnB2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T+ai/6wNjrbonA1TO744w36s96BxKpTHfm4VwrgclPA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "llHjfNkdyyWr+l8+E6eK9yOZe8OIqSfRv1oDObTtdnTlS/E694jnyEQF2CxrEvB+ePxtku6L/HJE+VIk1BaudCHD0Xmxr7lEiNps1ZvDs5ykW3cwFsSxhQBy7JaIf/AXpmuI0KYtGtt6NPUwZddXAlgbVK4EiHU7sW7DCx+RbIz1Eg+NbczBH04p9jA40hdHfW0g+MgmahnsMkg7NRzU1kWLxyIpnvqGJ/vZZ7p7ZdcjDN9/m4rnDEURrzGOXd316G/7RdDWCyhxEOi18vYPxbC7gk7E/izLWHoT/lxAkTADNZF/R2SRzfiUuZTmVCFjcVouNx2IO1QoBmp+93ehhXqB0XJDjbgjT8li5z4tZZ9GJowerz7/B9yhiCnWdscGjNFLSES6X/IW40TVqYT7iCeWVjSi9kiv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T1FMYoOh1zISzSc2XIOZfPT0J4ORWLSATs49Jf9oXqQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DUi8y+F/fzZZ9QVWLDEhDoKme9T1NiuuY4KYmueO9IC3cO3zoZyvVLeYTUfO9wJ6uY3W7bpxaBli65EbXrFtasQiG6gdIoh8PDlhdwywYrSt2BruSfZlrpy6/LnSJIXf35PGhOp68ITO6MCvY9fbI8uBWSWyVEsSx4YGgez5OBtCf9s/b0DYZx7GJhxRtokYCE9d95GTJDypO//Ide3cyIg9611kx6codx6XB05OLkikM4CTJh7TuEfRvS42QYX8AIzehRBt5JUz59h7egsFlcfNEsaaQO09B7om+j9aiqYnziOSv4vsEQmEfe7dj33fcnSq73L4Z4ANO1nYi8uswHPULEY+DX7PYf9ridbqVAYe6dsKxU/Ob1/djVYh/WUUem55qKoi3GXWoh9s+1rSiSjq32xQv/DH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T1uxCKJugOY1K8zwzznLsITTivGguKDW24xDaAN3L3I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0C+08XYCc6bt5k5YH5BzYKV12H7iIQAjT8Ot5zBeiMqyzf3k1wB4yOdqOFcu6lQc+TsWh2tC4NQ3PQeIj/Xu8S9cAxcbDdM6mw0eIqlVv2xLZIVc4Qf57mgR/AJP1feOQV1xzq0H1LlRIeXr36eypgC8zKRyAj43x6g2ck/1OZZ0D2HU7NPojWNe8voM1i1+01nOuB5iCM6+R1D4MhOo1LFIcYytA4MS+6m9V1ImJKhFvXyBc36swk0Sc1SfnGNqDs2OhDK40tegpuZvVEH5Hzuf8NFZQPtbQV8cEtalJ/AM70+Z296QtifrmF0fFoyymd3Ei6qe0/vq8oEqq9JnbvyyUM+63X0IZ6Rvdgv4p7j65nrnvf2gYfSkY+4MPmCOUZj/GVkE1fYIycf66REJVyvUA1Pz5IR5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T4HHS7Jr/B1zg3ufE18AxRN7mckuQ+/6+E1h8L3CGPU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a3iL2a6Y/6d4U6aarqdEH5kC4pZ097k5A3NiPmHCMYG+5LuAbyAzHuh3IFWX6+bnvxaBqAqr6/ALOqn6fDCYwqdb/kkZ+Qq7y967R5xuY51NeofXuOu5RjNC1pyrhgFvl0791gP89EaQpCQw/0piWKFDV81pdkug/F3ZT7c1BCq91BGHk/2Rw+P+e5/jJTa3kMMrzthF7EGK71kttrL/fPEvX8eXfIM8PKpEpM3+DRdZzEYBsfj0BVUdP7CPxFytfLHSr8joumaTutrx8DoxydG+gOxw65Vm2LB1UXf82TWAwqX132knpnDdBeOjQsu1/tfLQ2ymZHY7Q4dyIvygUMEVdxy3C9vfWOZzo8pAPT0o4Xj7xcl9Gojuu9E67f6IiCxxUmpq7jdj4k8Xk6Y/I4/uMvf6y5np", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T5jV9LCjKVsmnA2ObhO0OZtlaWfybcytAfp+B1yPqGE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ziyMf/bTFCSFsx4uOcIT/xHZ/uei6g4uHzTuGjWFUzeJcE311O9Y8nPfkUhqv/nXUU0si2Grf19jBfJIIAdDAa8nyt/O+9DwIFFJ8IbLBz1PE5HQ1nmv7I2R+Urdel+mVhKPp7LpXiU2u+hQAnljyLUv5iqSv3YEssI0RuX4gFUfWZ7+wg/sPaR0tWfh/Gpo5aM/nDixooaJsLpuwbpXM7njlk278ex4XH0Yu1qIhOwOVkZ+Snh7P1PeRKHG3zYdB4O94IRtAp6wOiDOK+5vcgwq0imOVEqbEoPA10zhuxn7aJuwaX0+1k1/V9Ig5ebswQQikkoD4YFoHdLFKVKTj+7YvEXXSon9kUoAtWTYZEIJzJ8zzi3+Omqtd5fcCuIQz092IC3oGU9IdrR8P+pY4KJbJkTM2NTq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T65BkiVmKVmAB6mGVU2A6FcQYo9TetwNuhxmAOPf9Ck", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mt4oHHRD4rr+xc74ycd4y5i3cJvR7lXhxaBKY130Xs7JpxbTar+z1UC7noRypxUX0CKq5nncm9UA3bksKQR6tDdBCG2bsZIo3by1PEl/weBC8e7KS/CIF1R5J7+S929ZRzqNjPmpEFqJvlGs6szKNMfi1hm7SSgcnUyKBU6Spkp7dAoE7dKUgC2nb8/8FW7k1voqax0AvAq6LjuGmHNDqc7SihDDF+AJF7okxfBpjV363lNhJPbvkWX1xP9hKggq4TX6GdBDPF946AndDqo72ZMsIHCpmjy6sQewj1/8pjtdTcgTeikLt6Zr95Uc9JcxHqw0DhFA2HqVISmiSjUTxK8GEDn4/IUhctlmhhNcjTAlZ6TJke8ElYvZEuouMSLknIxgyCu8wwlvfb11FuI8uTlLymGcpf9o", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T6DoPcTwQL0b9KY1NKfA6OeSdRoEsSksrpuXvUL/Wl0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AxcQ9TJgope09DXoIM2CTFgZf+ov8vxdusrmyslkX7pG+m2ZxpLsVw35KGnLOuXpIW4KMqojkcDVGzJ8btNHFjAyN+fYztmeZR6q3mMG0NIwlECEr5HK1W5ZwTo81YEdCVeH6m6U1Vj6uAqDiIpys3G8DChKFwOvzuteanXjm2q54chE2XXcOnJUoYfqPQr4eiaK+xthHbIOPDJd9ij06h0s0a861Nc4zCGdhFAPiZBx66wwfmqADx0GekMzXkJ5mdQ+M8kti4v8p3gWAaAs3NbTL3PKOiu9+BIp0b/mS+mIp07FUToR4Lt1CexVoPpeySvMXpIcrvaOu1DTMIE+9gBYgmPQIN+te0gI4mGmyASxEky6QgCZtv0ST7ZHI4YfnI98IoyTrU+7sxEOWfVSDJGRs6Ky9utH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T6ciPAWE3AJeX2DYb/4SjNes/iUV29zCACs6z1Ak28I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nAv0PNs4MBrWHQLADDgSoZ8xmwtopRnRF2ttMPnEemX2VHxDYs0HzB+Tek1zQxkh4l8nukPqi9Fov2vqPmi748nDVDnMV3bDZyZUmQqCiY6wIe/u0av4z8BvRn8QNjvoySsHidqEni/pdBHzfGTvkTSoVPTEx4d0OFVZaquwrNY8TGG59a6mT5T67zIwKUMby8wgbwwTJWD4EVs94gqPAbni5iMk4T8DgOr3NNni0Sc9Q1y4CyLuRO89qa7pAiQVeHdxWJMYezcD01EXeTqmZUNr2UjMA3UVeNzw94IddAQpD9IbBmR576vWIPQ4As1PS390zOoLM/frp9CdGO+ZquJBwmO6eV98s9wjtubhs24u2MncvzWcrqohH781o/yvtZSWNRopSCkG+ESGuT4C4+S2uFn1qu5j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T6quFek7pC4UF2KEj7BGVEsc3fjE2tEhOsWWkWBQJr4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "49pAWPvCAYjSKeDyMjcfmr47R8guWK5qqCZiStdaiie0W8HcZWDxfsmXPj/rqqwjgFJhv3PSl8Zvhpr69Wssg9ZmuVrXyWxl5O5s+AZrfdrW3ELFkK3piypEeoM+UBgDW83znVMbbjn9k0h7EHT245ncvI59S8lC2MhU9IBe+4Z65XP929lLv5pdBTy0Oas1fDdf6G//GetnvVJl8e+SwcAYbkItpaYxTDK8D3QOQhDDJyqKLmyWRSdthyObB8+M2P7Q9XyuWDTVCBb+fpTbR2SohPNIdSdI4NNma719k87tV82IW2Mie+3TRDOS9mBUDtVJYd4GAHJnMrSdhZzn11RxmMnFcfDIcd0uS5wcK8SEbA2ZuN+LUbds1BDSrfq8eV1isi6ESFo2fnmBVGMmi+WzJy8r8Zn1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T6r6M4PHiKNDuevatQOzh4iBIoS291pX9tTHLpsjmv8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mw48rR+JqzO5UAxQdzFM4QSfIIinvifFbPEsUPfyNVceFzZDJlYBD20ND+5q6fRIqioYSCaALlZBQkHD5D0kY/48mR9UR8Fjlt9bTuLENwBDegG7AlthPf/e8g+2py+soqrtcg6MbKFlm1EpZpgcWe0deJVPSf+jNzzTP3CcpInJEFvha1NP8LFDkvrgvNTstY7rLewIT+0LXiYN97S3tV/0SjjUqkK7e2IQ2vjrb5gJEmg9Y8HrmexLwb+3YuJblcq/Vg+2WzYuYwOWvChO3xkQG2N/vfBUKf58kpV2BnaMyfnnCkiDtltYWgd0hJQANtXo7QFyCoQzg01EQd5x9RJv1VbvYxocbCkFxCixW05ZKd4WZDbONAj1av1YkZavMB1/J0BkDD9cyYA3t0KO0KyqCNF+ogWJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T7JmwlGNsRbZFQKL9nsR1IcFdpZd9kl7MOcZD68a4PU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZQqI6l5m9busIV4tRYPAbwQNT4RQzwSBOGSplphBYh+RJ1KTnILvup6rkMGAk3awP5cKsMXC8psb4dVMuLZ5VrWZmJthZYZDVQjUYHqNvMB5iEqibQu/q5YJ6eMN+hpG46iZcBToU4l2CRd+ocBdRwmMdR9p/UcMthOwWkjEsKSbb7fNGvWr/R2Fkj/g6OlP2aREYNGjVoeU4FDZVuFMtNzFLIa4sqs3yRbZq3qgzVMc3Eqh496mZ2VNoAAEOLUk9re2z9weh2NJb0LqVpWcOu5TwUK18M1yZKBDq8OUTNRPS8aNO4fEE6YD0SisiuP/2DmhF109rMy1V8D8XAZB4xO0FM+lGYuH3d32jx72KKL0TvjCywDr9UvFuI0uPJMQ1839bHyfb4MvQKdIFC5MVsOnk6roIu6Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T89l8eZ9F30GMjuSeBgA+uShm3lPUCr5L+ScQsERXZU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bTpx/TBRX4tH27AyV/OqKPKJIyfB9OiiQ5vrvlP6G4TnFEhswdS6qEgJn2XyZDpG9p50fxTR/Vw+VyVx4o//fD0WMB2kxLaTCpCvvJ8E99SRdqX/vmjUF4dWwLlL/79Tzglhz5XmWBOJkVXAbwRDTt5g7mHNxoXgVJK+MraRMP7Bqq73rYSjW/2rQ3b0feVM0BMgbG644szqYESg7xGgZe2CxtM6VIecWFSZR3du05B7KABC3SqYQ8Hfnd3dHxHUJUhEiPw9p8IWftALt2YaU19EZCLqCDs2lN8ET2dEFoNRl0gwzoOViRCwaMY8suqO4b9DGQp/UoxrDqd1O8/VA5eLrgVspHT2jv3zM6pGlaNxOQ6l5pMgWGH+WduDnzQa55vBQX0Bo8945q9hc5e7bFm0W6tO1Od/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T969DXTJllTrfUCUBvtWw9Q51tn/WhaCmHAuBDN163k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XRPrS8rgAunBYqD65dYpuWCFDylt4H4W6Ou4JfSeA+8vLug37vlQbrek1sspPfU2EP/MA2L68j96ngwspPOO/m32D3pat0RVOXyL5vRFeCrBkEqY3Ewnv6QtpvTUJutls82KylIKqTql+MuO4Rps0aG2x5uu+NI9U4oT6UWMB0iCX67/S3KUZXU8P6cKaIRc/wpRvxsNzBEQX/V6JTc5ogehG+VI4hvA+ieV+z4g5llA5kakOI2SOR3SMdTNGbn8sDk9urSt8CsqMyzn+IHmoQulK+hPC0HZVUdF+tTpgd4HYT1kRniGhABBFLw4n8UYJjrGie7YI3GQda+Ir9TAwqYWjYUMpWdaJ3+EoFh2/MTsqKaicI+lK4RpmCrDlrVVWuD1rqVJy1Thk6XZ7LJH+ME3WDKCl/na", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "T9PmPU299JazAj6D2umIJoHvJy/ZCbls3gxnCGoqoL0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tIA5M5hxtWwopf17JfMNN+OAyJPKU1ORV1gFJze9R9c1sc0AH9PQ21fMKJzptRt+7c0d+gnjRfYF0I00CzqPXt4QL5ikuwaPitEUtSWf1Bot2EtMqEH541Aku+aQq2s7XDGGs28Yk+uRjmYg49qZO0YpGmEBPOb5WyvCdVdMc1KUmGynaAUm8PtyYxYBDihq5mULqBbCsyYQbg13iVBxQeAa1idlUeMwkHfhUxobn5actc6NMp0L/TfzYgrtXf8fCSxTbobQRBp03VFb77Tp7fFqoGfhczw4k9ur3rnIjpsY95oK2p+hk8PjKXBYhTEKN1nnqX9DxSWK+pRVvIAQDTXO8OkFWP9RRX7GcW14mC/jhsap57FqEQVs4EMg8PkO8GdqhopIpE+ehhXPIwEb/zCa8/XIALbx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TA9m8610Zce7RmRUv4xb/Li7NiWc8Q8+fV+4+Pilrnw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "244B7MKUKj18qfO+NjQhKsXvVuyQmh7l3WISnjw98BhepNyHkReE0XXP5T0FsvdjB82bPdYwauqoNn7kfpSmYEA+obhPFehED0QfKDUefJ+tL9vGlx3CZ6ew1m+Jg4fW/7l9SNfoN5wxdpzvsWp7XtU95GhHAycRNotXvHDlSoIozKkbffNYLuQ+Pvm7BgmI1wLwT271hyXpb5GmEHFwF7Zb1PYh+aOUi97cmQHEficTl7OKiAJyg+tznK/kw4jrfedWteA9Jo4/1b/Cki0r4bez89S1rNXE5xJkwWMePGXHSkJdBee6zbymI6mQJltMhzMTo61DTv5WVeyda0UiZR/f2eI/DzUrOLc8+kdFKYOuqxZUG/Sd4oWhNrWt5wM7c6cExaF6x2arl5DtEW3fcnu/4eFvloxx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TB7cp4s3vto1kDnuxvh9IsvT6JLr8+Vhyi3Y1jDI9+o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iEqWLLUnQ/zU6v9RPNWh/PXizMAIlGnQghvrcXXwRmc5fiVB6T6OVPWySdmjIYqYUZT+YepSPE3H5IviID92UU/36IirWj6QeOLFQ1K2FHXUX1oRwziCaVXIBTZMOtLf5zk3kXgyiPh4TCNyrOF8ZJZBClFVx+Tw46nSrhhsxiAMjjnFemelNPCOmzvdfn+/lVswd/tz1HCVloCjQkWlQM6aPQs3Njhu5vPSh65V2eM7fuMkafsOqDZWWP+Ge5H3T4gLouG70Wef2tuVuhNfVP+EV4dryC8rdQtFOGf+bKj1C1dJlYciS8c1oII6juf+2c6QfVgXAnJtdzpvkOyoHBnY0uaObXSAFRWuUGmfoSD9865rePqBmpY1NYqUcfuG56fBKo9FDfiA/zMeNjsPleVmgtnlcZ6J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TB88N0pP9zpZOX/rhZ/65nOiKClL23H9URpEaSQ5iv4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B1ptVhqBwxMhB9QccCbC4nt8HkryxofrBkIkC+8fe1HLNW7H+KqDW/6ZiFDzS4dtb0CUmC0Ngl5l0jGlTRQLZ0kkvJ2rJ2BwNOBg3+n50n+DTs43XP7cB+BbVY1QRPp1i6xphn5HGfr4i9qKmeAgo+iwURPRE1FlPXMg4m9RCyicNXwPxNqzkH4cBO+xUDfYiSv4ca07zFUC6RFp7hHaNvVOmm50WNPXUtD9m98DiLY4pxLfbqAQe+S9Av0eOeX/mDGG2fRE+q9mrLPowlT+46YiETqlOn480KXHaJg8iy9vd8B4X5MoM6bxMb1cuQI3F55UutzD0tMd4fm+JEBXR55TzA/wO13k3vbbH/Z2oq6euU5ZiIvQwXKrlIF30fELdoSKcxYqRGuLXJcONQY1LMzY1l9tNXX4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TC3X3MbbF2Ewny6Sg02iyJW0Fnr0BgSCjx+I4Gh7Ulo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "biQKHl0ipRUFygREFNcU6e1/QK/t9Jbt9uCyjDR7MucZZd75pdHydB4ewDX+1ICz8csO+l9y6Y/O4pYCYtGTn3XaJ0m0beNhTyO2VVHvx0mQNfhGhmwqAuuzvzWgzeUV3gRUE8N4EA8Y9IUpjZjYM9Xng74sXy7Qefh+orOeWiD3md4AaKBtnYePmdUimKtIAbPwjKRaJxnSfZlgjXls9AklodYNQ5uDqe3pKFJx2c4IGob+rWiSF6VbDkw3uxtCyqFJS7WLo5qgE5biegJTmhD1T7DtxouuMp4QTClgZTxs0AZic3Zj7rbH9lAyxG0z3OM0tyKfCB24t0WrhZq5NthBLbteQJQ7DXaELQWXHos0TiBFGhlbfFkTdRgkY50OQ1aHASscrUwy/lwExT7ZxVFoya2JbSZC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TCvoBzz8RZOP2jLS0+DADEND/X/1pnGvzqVCSg2MQU0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ky7HnmUmyib5gMO2u5EZHZEPADerCx2EfRus+oFtvPz1blMk/g3UBjFkXpO1aj4GPjQnmNmzZiBzHKi6UWY7qMn8gvyjSwt1prgOtqLChMj/l9L24lMGaeHgOBi5ISk9govl9Xbr5gjqyYJElzzn4P+l4N0ZAq68tZtpnVMsscJl5t15z9FVANLy3myUKlcXicycZcjFZgDgAnxXbIhVTwCgiz7UfEaXAJ+/loFtCKQI4alOX4I7h/xffUFnWshvTMd7vlnwgS3rbn43pBxCyNcGpS9/McYnDFbdnDvylzkM068aa63IX/hiPU7xeu3vZyZPJxcaOQe/dTAw5s4T02bEStJUDK6TDWrzFFd/9l022M3Tp/5+1KKROtcKAeJmCw9TtWyLNUu9cD4IfitA3nZvkhtp3nY5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TDT/FARtiAHj43MMp0Br1DYmAxkbCEwS0khuyeSJ9lE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "soc9aIIG7WqYBmJGnH5qgC4O+nKSfKdXWLiifQdhligr3yNRL/UKtVoMVXRy9DdCm9cCw2rBR1FEeXKCWrbnjzw59eoEaHMn9r0Y8tXsNoDE/Hp/AeObi74SLjIHIFWC1ucttqxNEGMTiMsjsH2xIRUaYYAQOoS1+Wh3VMioOwNsfL99jPcf6KJ4FJDIS04+Yq1dQ5B6QuWFWQVTGGd0V5418TaQj4GKlYz169KMXsrqtd2gz1KGE+n0PMyLxnT/pSgALH2v0foEvV8rzPSHAQp1P1yVIvJcv9HfAPU4BFUXCab6KvNdUG0QLGPWuDqQc0lwsjpfbQxAOKwPeWxBvrF/PoR9/CFklpUsRAGeNArvhch2bZy0JPpckqn5PVuLQnQKbOmVveffiIqH0sr+1kD6AxpVPJOu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TDyZyo5Hxa0vXKdRIijXj3wNlPIfNyzAoblUcrNVhAY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LQM+QdWstOVkEwcHF4xzjK9vBLHgG4p0uVxKn7s+HMQ/TqOFXKTE5AAX8DYQH5sDpJe+HJy3X/OHajWixMuPfYCWDrEPeJWMOSflCUfhN3jrrx8s4ChiLyK/JRXqDiWNpYwweKk6jv2vxLplmho62cpS+almFUqZjH5aZaIt1zbRB2jwuq0TJ//2XWKnbjHAlZtLM0qruKGijI99gt+CTxQ4be5bYLiW+50LQGV2ATpeIyzxdNR9uBwSVBZh+gBljUtxsfFf+jU5KQrb/T4ujO8QZKQRnlu7xl50GXs3HBcQtLacVC6azdyjntqLo3aGdm6FlIOIClxrWHB2kkaPcTCnJlnBF2fWuX4sA+0QfAsXrdac3lNJjaiJbdqW253Cb9p1LIuV4DW+MAw1xCzPD0kAZOx5woOa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TE6KqKFPWKO1e1PjWHfcZyh65GebopVffvlh/gSjTng", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u9G60hTxSv0TM7oh3PtRXg0dXs/UImYbaFtlUgMxOzirTwICxFoU1VDJ7X1W5CYNhUl14fiP62ijBZ4a+zu7Bg2AQ2ja0WPx9K00sG6zCGXC10qHddFpe3F+pxoKq2VjaVNaVKrwgrQcWURtOVyGat6kcOeqZKKLttIxvGAX+UxKuwqFxcHednHBUWgm9huXlHfdp/yt5eW4sI7rkZTTDAmHxgTjS1uc9MoRloNzj4n7jb52/hpzuqIOKBlC6NUrktYEB8zmGP5nJPlYOkDX1KfysN6k9XWS0AKP8/VGFcp0ZzT7Gm8ErvDQUP0b7ukN97kYmneZnGSGok7GvGccY2y5DZz++1iczA4XcIGeT64Y93rSNLqgabe0N0td6hzG9ixZSFlhbDx9cc0e41Dl3uew8G5AVsuT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TEqkL7T7kVIM7f60ZdjfR8mrgDzMu6kkVLzV4odpcyI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pnfuOqCGgH0M2dMjBGE8REVfCx6rkL7d95GHJTkWGWw83tw+q57jYlHV+TDAHKn9GQC5PQVcUpPQzWaPdNlUnMxt0W5tsEvpxdQG7AitVkT/eHoU+k7gshgM0SWeFHoS7709cimm3tVe/0ONE26ohQ/PL3mgAUjSebh/hIKJl6AWeOW+N817kC6xKPzDxruph53U2hkhR4kfPqh7QvnY0rOSGWFWBeXPZJE5gEC9QiHvPjV1D49STGLtJ4R2m3lBEfEXa+rwQ4KPaXWup8us5+Ocr0GxKrzb0fx639E5Cdlemp4xNK24BuLAapNuE8ucSx/uxrCSb9gDp7eHkaqKEvYj+d0pZdCc41jZ4qnR8ojN4OUCtV3S/4DjVTznZJLKmnX+UKhI7B0jwhMGiBghrq0EN6sVQV4y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TFtjBCPilTSVfW0jDsYt/j3XKRp3LDruwKnyPFmj4rQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wbiWm43J8zraQNY8NkvP25ZYCjJe7pQEkYpT2FeBgYGC+PwQYF7iMQrEPPwCyslTD3vk/v+9dMMCSOFejPTGljoaG+KAdJzXq+TLdiCE3tbnMHeFmeArMHJAWbpCQlreqh4H4m16jr2zbANWpLIVCy0cA6fitDfRaB0Q+2gnZIlhmTCXFS6A2jFpQxOhxpVXMlhqzBk++DlQE4IuzDDLfUXRz27FKOWxKyadSQEj45pEFX20Buk1y7PqkMajJqsRoohLsz07XjKac85U0gEtdfvO4UEFH5UYll5h6LPF7xl5cIB6qs3SLL8aOnEQ9KDBkqhTRgb3OXlQUq0qO0czE42HZjJg7C849Hf9mS8CdzI3xjMUUfTbps82cOSALmKFP/WpUNwxbc1/7vyUpRk3EZZxzxdH1mSy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TH6TkUKcvEvRZiB4xa7EY00K6TwapBRQft01veKalPY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+5PYPb/z84/wIZA3cGWbvvB1ecwfg6VFOvzHH/ewgwu2iHudwP41PuWLs6uIAizpoDhnc/Km0UhItoQ1mH8VODhSrOIdjbSLqv2dvuNZPPNO00k+jIHNeI05Tmo77Drzr3gF9SRCx6M3c935R4u8GXya7nqU1ydeq2ImTr1Et8R/dQ6M4p5nbPaeUB3kmvY18lX09MAhUeaPAnysSDfP80Lfb9vmJisy86VEFgq9Jka4y7bhqTgxuEBxPfPQIZ7kvHwtx/ziCRH4Ndmq7G8UvuY+btuW0SCTwFcvcpY/LLiiee1UBXeBtyB5i1pMkiwo0uQrtmoQDWr/CgyisTRxdFyZbpzX7UgWAUQxV6ooQsFgTwY0FnKlwUrvRTbxq8OBfowgY687UGVLZ8VSB36erS2y31bXcVov", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TKlUczvv2AxUfsgEmnDn22ktJ6SgRwqC7gMHTP7J7x8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FXJ1NFSgvYawjwcoF8Alncj+9rtqhEfutnR82byIy8JVgw7iOnILHa/tffoT0pWZ9ltmZ6oI7qmEzuTRmYK9R5dc3Qo6obTjZ2QJCndt1UHclkBWVslZDU3VOKwYjxzzMQY3zCBjIUodqc7bYwFJuUAZrWl9Cuf7qIWfTlaD19EHZVVEPZkC7co06WkO6RPK7GIubmRwnEwauAF0INbmIGQBQFMZ4MqVuELMyfwzeCb3i4IEULixL6rayTGQ3HtvrIc94gTY5RyOVrO2Vkw2CFycAv8EeXyxMJCV5uf1eCcoFi1tF19a6eRHHfbEnm5nbIpp59bhHGJqjN7WPtbPChvL4hEX/Aj7Km8Td5BfjGWtReHMfyRn+MjBlhyVcppImsNL45dOJheOSnfMoUdh9TrDAX/QTyLM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TLNSb9+HsZFd6Gj6aX/2znrILQeIL4E6pMNrlogj8gs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Z8+cedmsc2MKcX058IY0coeTrjUPSx+vL1UBLpZs6KOGaaNh3LtHYOq3uqpSwutDaXuGtfsJRCb3FF64uf4kYr9LyvSg/b159OICrvOTSf2k4cbK+4AUh5ohERvt0I8fwxBDoT/OB4bfmXC+KtxIYA5hmCyJ/VM0rHQUctIUT5jAkf53bC7de298YU1hMl5dC9x4lRnAvhVfXQHfIVJOrA35Fyis+1UhKGltWhosOc53M7hGCWXvZY0O15OhSzDTnTvtKEjbAfAYpiEuipTmjGZoFM6uOxg32gyRtVath2cXvqvoUa0qmlD1wHbIoq80/5P4ylMvA0I45EtxIxn2rvV5rEx77Db4Qy4oin+U/5T8UZ71x9xSM/oMtLDdcHyjzEHjc+ocXWeHLuuK5xzZWwliQtBIlg/i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TLbZJRKtYRnvNmV/f51IkKkMZUmajkWa2XWYrizDQeM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MjR4UV8N9k0UfhY7OL0Oxb2mwq/nITBrXYb57ewRR2z/NLsuwS8MsyHA56Z5BNiCalLG8Zl1YIslyQiWDrAlQ6SK0zcxCndJgPU/t4+/yVq0sDim0vBQAn5EwVp7PdU9L3SoGOQyZTzzrsSgiNq9Im9BHGMI9hCaJBYJjsgPD95ohezP3QanZVCJqR7GjpxO4W2KBhNWe6Rj2K1MqeclSgtv97T1pJS87i5OZz5kSQU1M6j49cOh+j7NLoEL0ymWIFPlscndODHUVeACMJ5RtF8HuQknR8jHRzlFNUU3PI1aAYbc1DdLlWvkq2a9qVbHT8OTmrTvcIuIz4BtFVbN87F/c/HHGsu1r4oYQXh0MtTM9eUx/VmSeYClzAl29gnHP9oKiArd0uqs51O3DKrM16jvneVlG5ck", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TNj5SfMX6pjOAh+hSRbAVrrlsMP4jyaOIWxj26TTWiA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yKmfs1OcIMJG60tUDFwJa2fMOhiOjKEHUQOojoRODCl1RQlEPz4kL45IZnaomMTIONjCVO8vLXlgVJlO1WbS2rADSZ0rBuK87MkswGri3a5RqxMJQ7PeR04166Dm1xS37LayNOZM/aaV360yfnuMBxFcSywd51hreJCvzfksq8MLCJ4kxbpdiP47h8Tss0aoDXWqBYPH8p7qaXRMvdjAz2eXotLiZ0LYXSOYnSrHXGv620kiendTU3ci6Hvz9AGi+gTzZ3EAgCFOQ1pVwMIPmse0NIy4r35VSvHf3AEvnjrr3JDZXK2CHnfnj9RMfccyw/SMpOnxCvcQ4VGhvkd61DVzrkw/MprPRuJqLGJUtxW76BuexBF/OYyghClyh2MyOltpl+ruSRKiegWEamnp/ZLI/l9qPJ65", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TOEuCrffIzW3Z2/3L7GqqJ4chc3sEnEpWgJq+Axa2a4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AyMg2g/gQRF/4Y3mgKK0aDcUlFWJUyn4ZbskkddpsWqIOenNuElx8wOlm7p3ncjI1qyUCZAlPIWo8mznEQKZPC9n2w+wScMccILQTFbHEtzwLVNVieSb8sYwrYO/KjPqkrVlydNeRasQzUmh8UMa5NNEXpxZcFwoWapthVFaZ4SetVo2djpNOw9GT8v1u6NKB9KcUxM3u2bSZJN5DRd1/KsgxfkFe2tWxs4CUwymM2MHMwh4FUBKVKw3BuMvynctcOTKS1nJEzoUdE5yN71a+/XE+0iDumMrk0hNbK5iri/dL73RSqk9oeceRnTDchuDEvWOr1YVa/y9v4sSUPhRkxw9CRSYhuoxWz4gG68fD/Zna+qFckkB0Z7lKFM9vbiRJd9SiwinQXEHgfiwS38MOCJfGB6s8Mdk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TTOBGtBRKrKA6dRDZKg662XdlMwq3I9zrGVgfG2WqGs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s1AMBOfgYmMQKzWdBz5/H5i1qO3DSosCyS3Y8Tq8NPhszGpV6CZNdTa5mlEsh0xa7uZsep2rpZBEXV9XaMLnB4ThGkbcuX7L6O4Fz1DOfD+JAwT8GANqLqXu5OuzVvT+41WimroBEk383FclXZmEdSZZgDJqJsX1kg7h38Qht9kpG8SbLKpidy1aDappZG0fGfXnWKR4+d10Ph0Y2zNcYhGH2BXI8iTWrL3eE4OJ1+xQx/vuofchQa+DTe+Ttl0YJjKdPo/K61WsLdCqe1TBBUtsTXTr6+yRc0zAK1HgPytc3d3K8L0vctTpYVNoyDeR3sCD+dYg4ikceVOjmSRwdsDCthnnpu8c4N5G80Xu1VETC479iJtJbjVf02k22zSUM3NeVYMJ4Dvel62od/pJil/aFVIks4dq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TU+SEeB0a9R2NZiwB7uoG/h4CZMCcwhS4BrThV7NEbY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r4m3ymBanrJ9C+k9OawXfPWa1+sxiODgQ3EGhfaiH3MkzlbmPFJh7wlk7J7HfMTOMN1wnSzhq9DDfV2GzkyA6ltdMo4eXdKJ2ge7iMKV9jCigWNUf5/NFfhhs9U5K8GAD9lNo7xv/1wPlkRc7meVKEiNg7jSRXAUPp/IA2rsQR4UCnhm/1Z6NE7N1oJapG0Jsj2dCciDkgJGZb8rYNTIS5ee7Ehd6JTX7S1b6PV5upmNff4iavRn1t8HFHWt7zGKcZm8B029snTCzftyqvDrELe/gRz6LTP8t/8qUgj2P2TUNVCxThcQDu4WIzNNb3mWv4GolT2qmr/XD/BMVSFUzSNmxDv9JeQ4VYcu9U5winCAWfqJJdNxgaLw8WCnfYZyvKVH04ETWhPT9qO7FNCmisgkyG+dSkCF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TUCJaTRyY+RG5cQE4jgIcVbV3IyzBSoXKVLP6N2QipA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ioT+uoNjft8IpUYioNHCUB7uKVDATV4AHlXN7HQw5n4H8j94HcXOtADrr5BdWMXeQAmohz21NDEBHFnOfUKePtRiPPKIMLGFwCCKPI9tSwmWMCLF2UKQiiqdfxgrh1Wym5YxZ3+i0buEHn+imxsbd/h/2QID4JLluLOTk8708gjLO/8nvqjJB+cCT5tkQY4WL1UUZ5GMD/NrcuTTAivKMPpMG4I8vvJVFHyxE9WPPHw+HRQgQAqujyyq5zf9FXJOvxo3hv7RtRGa7AAn4iiwqv024Ui6n31F18Vn2uL0/Mi1lIRkC4SLF3lJ0ROqP3P0KXPj5mcCQeFCNakZ+E5OfDNom3KRzSOcQnYd/iWehZAc/fVW08zH2Po/WgoKSG2kRhmVf/88azYL9GsAGW+nN3wKHd+lA1O3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TVcSc11/8v8UVJ5j9zsGg50KU2d7YjkT7+TLKrKRwOY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1xo5LLh2cdQ/Cd91gv0E5ApFeVJm7qdVRfYmzelxLGUJGg7oYRANqfLS9Hin58kOfWVoNY18AbVszgnanPf5iWlosVyY9RB41a9Sqs0gS5fitBbjRFjE5wiQ3wX9tNqk1L4hQHTmSakSm4p7gsD57zRL5cQLrQTObp3tKpYlOr34Xc3d0MAw2xAAddx1Z2eNykiuoL0s/Xh+62yeyWpEreAsah83fzFhw02J3fVPZs24V4CPAZsx1CbduG67TflDpDRWsszBqqh+x2aihgmKjt1n/bAuelp3JI93KCzkYPgIlxLAHN137mqfze3YFLAVGSkwVv1OSazlnxxw5Vufkn+QAL/VC6Jaj9/AQimqD9C0PRPnzVDfYnzTtbQLXSJY0ZaQOryqm71SB+gHVIIEO9nAsdZ84DHw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TXhNGJ9Q+KN4oNnL34ZB3MJBClfwG3KKeTDW2/fnOYM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L9YsK0Ir1rMwsOQXWkKBQlDJbmeGWqzyPQ8jp0E+3XzQHoQAjKQJmOIyJ5AjU5+CHmuK0XNLQIwNca4vt9XTPEe6m0xXVk7JFzPsh1A1BU9q5Ec0msQ4ZIPaanWwbxwLg7yknPUoKel0zVkXccCrSMSgf/NDiF6iZwlT9RtsPia0GlDQztw6Pubh9pc1+Tg1Nz9mkekqnICwRjcfs4Y85vQkh7iBB36NDJGqVkFI2eMYXPuDHroMxYnYJy26VxKNaW7AQ9UcDUW67YClH2/CEBEpapk0pRK7DgViBt/ulORdHeOXOWAmgFhqNfL1kVa/hXcSAT0atfChFmKor/M3DPI7YA0KjswKRw/PTpoJ9g1TnD8f5kSpModtZfR+t7z310jrxlloaybmyz4590JBXifSaJg53c/f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TXlYMY4scF+pM3uxxeDxib6iYAQ+CF0d8RkLXesNTuA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yOZQaidiCyG/iR4NLbTLX8LTpQX7TeoVF6GpcwZGMZK+RAQZP8zHSOrTdNnfQbFJSAO4vAIMWZM1ihqhfM9Y9d6xZMpBjV5BTMEQOuLZkvJaCJvV2rx4CRfbGMYcM8I0rF8HOPAk2eTkufIeaK983S3wlqfqfRWKG3WEu8g8rsn7P6MZXmQ3w8d+GyF/OHnjX+14d+bCnxxWmzY8mgUGja+N+QlCQDsRsFH75MpUjvXTVPkbvNCX4j9Sx8jBSyhjNz671AT30EWnKr2L4tjb1lo5BolyG/hg5ft2nVYmcTexAcKEmDFE8ST7bK9/hGJqVNpok3YknXzxiM1gUg5LDeK68CY15HVAU/q+UuW1xv45lyxA0uHPcttpOX5jlUXcEyQRxsIRwrANKHofHD0X8wnJe8beu5Gx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TZ5VPw57NCk9RUQSPG51eAp18IO5gC/yMTWE7A/YGiQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TOuzHP+JqSifBgz3olvVul1ozsZpB+jVbvEfZVXOA/smKjJBhz7aqXwBIiyyTmHo+sBm2e8jQ67x0e/Tn2Wf+/U7beNXaI0sINoTVoYI+lAtwb2Zo435/8eWGrO6X1oIA7qzN88miGeNf1k5o0GHWSTOeBGmM6GVcHvr3K0Wr1sAIDSe9uM0xSarqGU1aWkyfqfc3aD6eb9lwoNCBvgveo8phZ+QRRLF+X5G3r5ZV6pd5Hwwq6q3eAl3qZYwmKZ0RBEcmFc/ujsBuBGNfGmbQov3zA/pG4T0cgyg/sHQC5MSI7etu8bsg0lOF3hPFRbru85pEnAAm3oUH75zOHhRj6Zbue6SkIvUWv3isccDwT79urfiZYP3/uvIUPZVfAsK7ahkLmGhvyYPDQDmLv9V/aVXGHeYzsTK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TaDxwIBntRfIjsnZOSBzuLp3VDnk3y58mUH/CEBk/yM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qczrcidAiufxNkoW3hj+BvUWi6HlG9fMKKp08yuwPofBBsxMg8XOBiPu3eBMQ3bLtluKGwhHOnyftlhg2RWmg3a5d76gvwGsnkbzLBGllLD8VQbhv9XyWzaSMKlqgMst4sv1UNZ2wcKhzAsOOq5wZGigLIFIG6ULDCLIglMTXqXLC0RZW+oNGf/9u6x9svL1p9zpgKvo29GHRIZAfyjpm9x1oKnoXwyZnshNMWa2Y4y7f4JFUvdmC74/Nj5l6Yv7jMuisMhVypU1ywvfauRQthg5dhyzWm96DQXCZ+J05amb4T1THx2fFFxAlBlOpCu/MtVW+Vr7aXcebj/g3xnABT5PvlpgoMYsZbvuXwD7iO5WjD11BpfABbcpotXaxnOL51xnyqZMsg8CdoWT8GNyKj3bqWJIKyfr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TaEE510mzAz3hdznJTK96iWBCeXoj3hT078MX85M5Tw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jvXIqIub5U/ZpxJ+Mpl5zu/V9mv1fJMVF34uUd4UEiXl9xo4qWFqZZUHcov8nsnOXEc28iXne/ES4m+4fIDYpGJN+KAmSziXTEg41TZBoEHff6w6k0bbm7R1H0lLLvyaWMgVq/KC65A0C7qbOMuRaYHRADLuaEzlbZL/btXfTk3Yyyf+aRI1fcEmnx6kzcjF0RPz+J7JhP3PDqtv1/fjlO6ajoERi9fU/+tT4Hbunf9lXHv61Ob+OvIpu1nWRqGynCz5k6kdxOygYWAHneZB12YkdUVQ0CsSX8OsTBguvM2eMRCLJ0QQXR20X4wWo4TjdR7SnYp5wde0xCfwgrlP3O9kk1uLBPHP8LL+jw39zrOaDfkvhFJObCTJayBOApbk9Y/uDE//WQuIqn5v3K0FxibUIxDAIbJD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Tczje27VQ7Qp0X9uoPaM66F9VufSCfgkeia3h/MI7fg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uDoG0+2QSf64CtIDt+YXzkEHhNYtW0jTnWRaNjiuvTuIn9Tcjq+e2F/1UnS9qTdcM3SOrmBN1wIpKLaLErf5dvjKsZZ2xAqatUz0fCwP68q4iSZ8ARE6J0j2fp3hvwXxps8JXwkEz5qn+sBzX85vN951IWH3ANeQVaQe6ttH92tutEI0T+HnbK+LWPhVaKDiXWSeYXrveSpmkVa/9h3Jsqo+AqLoYDLkw/R78AGyBNyEy/DIIuNNxWR/oJ3R9YhtDW1oXyHVLsq7wpRWNVQHh7YR7b8BPKraZprxFFxf8RDiLaOFahwqqB4sjqVUGKyggEAvofhnt35Qm0JOoFVmv089yaJTh1i4cW6KonZfrm2ardi1IR/oHxukloQ996QY77rCVywVRsX6nHHwIJRg32N1EKtxqwA1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Tei0/gManED4h171CyANXUckAG8ackfi6plblov0QEg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Xg4aa1m0Cr/sWlqHfxGdysiOCg3RtctWImp1sjIkCIig76M/3XUpnaNfNsVhp15MQwNyaEN1lh6TgrUiyCjRcCdxVYWRWceuQGD3Uz6nFX8zdMUiwQNpdPvwKfkD+Lt0KHOlhIHq3zc2H2dZ/KhJvjSrdHPjgIn7LOAyM/X6m32cQyhew0SiisAraNlJv6NEzIdw3B63UD8l6VnW/hcUE13+ECuTnvHRCbKoATX7bVmeKdYz9MezRMZSqme6foIY9TsRAvSCEfeRr6njkITSePB+5nXXM/ocuTUJXxGaV6uSJqb1VqcmaLWJTQsAyZzFOxNAiboV7XKVABrtDzKijoNw9kqzoyzrp9rfkuqArw6NLtrY9dPxoV84JXgBd4Sm0i/HStk5kQ0SdSKQ9hKbx83hXl1NrCBy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TfeQamk5t2fiTMhRAAGfMMLTepwfQ86L/tc4EXV/u+M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RXw5QEcjGGHK3SOnV5RnzxhTZx/ghZE/NtYHMnXPBrd8jy+BAbgNTBf0T1hrYMtd6UtVOg7rCsUAxZgTx98UFZdsg5YBXGQi5vC/uAym21TVmLSWg8sX3DH7pMwPcXpcVIswaJhQDkn8f39i1hoF5PqY9BOWScs0SH4+3o2j3NkvSLhu+rV1bI/gfpkWg4KAUegjG2OH324v6KmDGU4aM9T1gKJ48yngYpiX8oN3mdOOZXGHnOc/KbZ+rxpQqpktZ7slbA6MR4BrNCPGM7cYUo1PKH6k8JgiVeGXF9XJnsTOh1/Hc1hrVqgHvexYqQ+28shidPqJWhu4fw/yXB/WZkT4MaCL2Y5Q3ynPuLePVUPLosp1eJXoPkA9EScWQszJWxR/bzwFcDuZpSfiXwWtqUT4+wnQzM19", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TgWTK0Ar/9L2tnOSMyUVuBjplqe2hQsL4+vDVBPQwQI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QhV8HvClT2wG2vfQFlklVsJcNwYAgqSrFTcdkOVixSYc+4c0YLPQIKAkegCPCqqVWej8O0ByUOa+lc/rHV1shpaamnxX67uncLw0H1dZSmShcGPJb4bnlFCb7mqAQMQLXOVokHWcWdlGLXD6CJEp7AIUt3Ntr24JlY0uVProMzKd9GFT9mFz4qaycVSOJu0J6n9XtxqYaskyNVSLfhuTA99UTD0mk7gYzNSNi0zmDR+Zw+0HJoxF724PUkGbHZGGqy7ekXsW8PafDTBscaAdHN9O7E+V+35lWcB03JnnUwBBKS6zsKRxQyac9bzDt0VhCldSBtfOIxFHJzOWwrU5s9pA3AiNcOUOlgAJ1yrqPp8EB6mDsHZyktLsLWiv0MlCrHo9gT/G241/GYsWSTXm1EiFgJon1hgN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TgX3wrRLcLC7ZBIto6ha+CO8rqML6ZbIKVJw8PZ8QPo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jLLVpINT6YUL05hygZGoTSHBGiIc8LK0dfkeuJw+Hrrj1tlQkCzJhgnx1cdM7kYJlTKs3+yiU2iKfwupm7J3wTob+Tna1iVecXybUfnB3MZdiJXM+COTtoAPwJaNiTPd6v6wbhEaKIGx82mxyjSAcgVGp0G8jPN0/EMuH9RvtUGummfwIVTdTOs2sf3seiZjVaH+qyPH8YmaXJiDRiZIIejrNSEP3sh2q99ZwCCLfJbN1k12AyNiv4N+3bu6tn7u/UCbSEYy3TpbIh0ajHUS7M7LTKyfuTVJb/7gkhmk4XujUoAlikjTqVkNl236ZLt1Zw7uYN8aCCn6tG/ClSUaZSyDGHajunI31eZEE0PUfP5/MaMlTC/2lPoJBkleZgvYVExAyD6k8gYYBp6ECCOu8jIJQLY9ZmjA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TgX6sPW9O7omztakWkCf50kvfRn2CljzDteDVbUTj+M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nGhMsKH4BEVYtwutIdgXPUIw9hliuUiMkPfuMoOUAsJrlT9rwZ+uQ2g2cYwzFvzn6dqgHXhm8kOlC3sRIMeF3+YqKW2RDWYUAZbZJMu6UcS90YmTY21x8raD7cjpetJ2JQQEVkOy7fbbEbBVeKYUt2/R5nCbW9R3OM/UuetI2WEjP2mocja0toYi3vXupShhLRepDrJE0g/7MRMwoTUMB4n6Q91NnvO3sivtCTcpS94WzTEmm/vdqivgHrkqFpMfmdNiihvuaFFCg9ruzw6hNFxYWkefOWKr+veuWf5HLzpjsIpgHdCuaTfCIbiXO13HqV4U0+0ZmQcustaQy6XvqVgScL7Dtn2suIzolEvqdgbzenItTdlTrOzGgLGfV9fFjfx8xT8coKN1/UCaWPHCe2oY+ZPCwIpI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ThJrFwbD1tt8Nde+RV2zJNWdkWfhA9zbm5iBSzgmjno", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ib6rs3nXkEmafGA79oduSPEbnRNCUsMMWigeCZ59XF9yFnzy9l2zbFQ/hAJ6zZcbbUT57bQNJ7rM9U3sJSMgj+U4h3IjkoE0cIg3vKVxINnai+jNm8m/+x6BIrcLrTx8HXpwVZQ8xdVnZfgq3DChp+f72tb3mVabwvgbDny0oE+vvW5yBwkAqRGmwim6vaBRfwngcvBUIhpF9e7xKeA6CK+prxOzLij4UuzL8i7B5+3HSKxDx/PqSCtmMHJoMFvcOPslCGkQSswHWz/yNJzDrp1ACxnpQeVMO9Og0tjzHzFrAd+buBtvLMSlXkmTfmEB1C/yLyye0qSQhFoQljPDWkHRKERmNemcC9z1clK7A3r+cylzjfU6CAHS9jvSWNqZn1QJ9Jmm8nGLcA6O97aflJiK7HfVaBsi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ThWKsidoaTCswec2mCbCn44WEgLQfrE02FomxADGbZ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ImBe0iXEqe3SXF9kJZm7B93ROXNnKVZtD5tJ9MBEMco/WzC8bLpEnynoOquAbewxTH+QF+QJZRMk3/lmaPh5B1nnSTsMkCJYmicfqF/BNY0aFQBNcGw/ofubMyrbt9jmXJMzKlAE+B8Mzk2bqADQ4X11i6ZwQXu7n4vwVndC7hD3GgCY7skDA+O5bj+egx4U9PS0vF5yyHEYhG5zWOwUbXU6I3aOkrRFZXiosDS7j7+Lxa6gj7q1vVJqlI0jdejigbz+tGdgpaDYNk2GoeMSU6H/FQdQH9+EqS7Y3wQOHWl8KA/aS1Frju2KZElhuGtmoPWhGyNPv9SmgcWFyU88IyDdmZacXAPBXMKh16aHfi/2MP5ISAZNMa68RfRb2GqzCf23SweP7iJBedFzfSfstIDqYg117+eM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ThxugoIj0oPUbJ+PngQcEz6SOucHpuN/fSjTeOD+rlU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mhGn2KM6WhpjTx0ydb/q3nJc7BtitNTGIyrh2G6kQu806EEmkyTxxooyy8egxJ2lOQNQfxupDcdj+o/yixzDuL9vaGtm0v1oaA1NeK9Y/1QVkMW8yObSRnoi3NGyUZBP8k1StRVMxX+tiwG/cmf7Ed8fk1XMPlUtxVr4kmWYTgxY3lBrxJouDtYRP92SOqYoOkOEuF+H2BKSg+QnfYE18WA3WQ5vyttiThEz58Q+m7RJPcT7B/O5NbousTn83+0205R9O9tiZTUu9WuImDbcNx11l20MmpPIy17nDMAPdLpllJSCwp4X32N6HS5yEwwW/h5Xld6RsF0aSx7vp/GFpBRKrSwkodu71FM0X03Q/uC2GUzUk6ZYqIs73YYb8SS+1bj7NhNGWrSKE2MtnLw6fBehVjifgblr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TlO+G/S74oLTcVjuH7KgbvprmHzB/PC1DWrcnYez/pk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o61HS6JdxhZksJTl6JU4nbJ8GFtY07gWMirAbJjpuqo1ZcXzz4FbuX6AqeiKu/UC4BlS9s6ve2hlGyr1rPpZsCcYdeZ5XV1E3cLOrjnKLLJWVr3LRpbqrjBcyy1KOGzIo0HbJ8cMldScB4rOFB4tUKadt9BDBZh0QrcV2WYbug/0XYFqSvBVXWpZuEJ/TvjToWA0Aw7E2Lu0LsFPb7bWbv2C5YFyTwie5jJUmu6jg8uFcKCiXA0ObCCSBE3OFe5zE8daABV14tAfkNQrqlkiqUdBRclhVKisdhwzHmp9PqGjuFTy7GAWjxQuCtkX9ZVIOiKXg8zWGxE2Ur69uEBcfoeErBKLA9FPMkdtcRm65GW6jn+45gKIOv1+EtGyY1t3zoU+a0kWhvKcQtIL9AEa9LPGLe7OvXRU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TlW07NpzNj3jNBqiBN3hu6GoJXISWIX4w5EkIyPRrKc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "13sxUSYW/dn0TsQrRLqihfRPqOcYY2OfLh+6yRi20NHJ0s3JjZ+cM5C8G1zLxaPIZZe16yrp/811xxrnhhN/a4wCicRCxP2813tKS4aJZT5jvRRxhiwNAPSCgWWn4c/618wgzOLubGJLfY+0RSVvxbXYrmZnxuAbZKGj4ttfoyMmD6m23O7FlDKFvsiXHnDZLWwpSgwFGu5H1VyurtlfEOlsga4Kld/ML00WJ4gIo7shhJ41PON4t2EmVuTd+DHpXC2zCqKrUQOddkRcV+vbQRdP0NntXt034fZSlh4hVGHRHC913Am+uIbtoJicR8fFLaNMSmqOYBd6OFTW7XfaK/N0KjZpV1VsoH10JZDVrKhknbeWKTGufzFcdmSEA0pyaIUbdB+hU2vjctJ+DXE8lJEco0SGy9Kv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TltzLQlg/AAhrUT2n1VZXCFCry/O8apb3M26/nqp/60", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8NP2T7DsJrzyEaZwux5ZjU7EsJpm9ld568DUOuJ4SuYRAiU3F1GUjqSuryLaKyXybDYP6NU0I2T0nqma/MYDZQ6EMAVYuUfkGUQ8GWeUYvXfS0ufRyRalxh53etYU31dYxYSsBNGvML1RjFRrfKPHiN6UzTh3sNEPKKQ00ZPoe0IQEmBahvdLPuofS9rOKyM8y9pggaNDnK3gPv+3tF36JUAYPHp4LY/3BMldRj88gmpps/JbzeI3sxCY4G3feYcjOmSCy5UU8sSYT2F+IEGqy6pvmjQ9PwfERNXGFegCIy8AQqoqduv9J6QBIQs9TxBiNpvzpYXSdAICvOXFDEXledhEVQSIy9qyEj7I2z/bxHjW85G5XpZoaRM0bkZxpRW9sRaAKvj+XHiwunS9+GM/ei5X5GnieJQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Tn3NJaAGyvBcvtJpQzpoExnj5rZJTLSSL0LpKBKE5cg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t0DBFIaXeO19Zcq50Em10GdrqUvxd26CiZ8DOEpIdgL5nxDcYTVWBXeMxNWcdvrHohRkbCS+yoK/XUL6haq1Wti8PSX1ah0OMdFCzI9Q+k0D8fP7zQRNIebjZt5SOZAvl3Nc91ezKl3vovmHaj7Beeq/8bFmd6pAUOCevWPsAxg336mZ4Wgh9M76ZQHt+AbRmRCp5gSrBFdWahOJjxG2juOUW2AmgVwtiAL4a7lS+mrEeeI1DQ2zHQNcZX9CFWXq16VZnSgGeGMwfIXN82uZ55+uIvdWUkDA2b/xTJNXp06TYi/nnJiSKH7zHftVydxJE0lDtcL5+5UBzWKQWj9CY8RtIPzy5UE/t/4+ha36F7+QbzYGcIJvXgB/wkjb5G1fWVMP80CPO9+PEV2JJMG9+EIZhcrhUyK8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TnPHd+lNJ93g3VmzY3eQmrwHNT1yRVVoZBuUQhvqXKQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "93gEVPg2/WHK/PLXNDweYpswjRUb74lVzlWV95tdZ+cQqipqA44nA4D6T6Hzz+XDYplF9qBxQzRPNmlx4lIyqowQ7Lr5VL+q+Jge4noV4zFOl0WK5S5L5jsrVoh8iPrm5pg25sUeZDS2k+73ZudQySMlOn/AY8GdES5IDmQ9FvRocOhmxPf6Gxy02+RDfXOShxEugzlhKYIjMNHMQxzgSnkxEC83CwlXThTPHTvdfgcEj0fyNXXf1i3Hoso2AfedI/kNmVuDg/WxjUofBdjNcDSPgyoCuiCH5MT/omq1uanzOMzLvC+VM2uFYBXK2LaWFQK98uiTnWIKbbWkp9YPZ/mUGMolu08zOs2FscsHBLOH0QqWrS23J/rkKn2JqFQX2x3hBrdjI/lYmf7uywrelxD/3CBMdqlr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "To04rH+auwIQcm5aJ54Ai2lFV2Nlfrlyl2IE+P06lJE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CBE34vHr90DH0OvIvT1t1PJjv7IzQtgSMa/gSIIQJmXYaHc9gPLkgrOoi99GjHXl7TVL3AIynOumC7phE1J4WkV4mMKolgiFquGRBJan8MPo6ut1WFPCP4U3RKbdgTqHriZCJmTcmLsaktOgqF9qqCWbVfxpXDVyZH4eVWllpOj4NZ0QRfgBj66ciuoW2AMjGQfhkK+e+6mtJZB3a07iF+fZqRg5BwcyLQZvAEl5u6n8DF3v7Uu26SOY8vz/Os7OhNQOU8dXR3A5acfTho82GUp5rUs39KnuLvL0npgvJHvi79PlTS0w5iPd2bIffEAcJ3xbLHUaQ/0QnzaTrE1VmNFnLAwxOosImoYhA187XGeRMZ9TjzHjuqyyiGS1QZxJ5iZGkinUpR9GNZ7rPe/rX42IZp1h6dhG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "To7SkKJ6aAAOhUhvMX9fkLd9CPwPCKVA4yn/H++lYCY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Osi7OTCv0lEylVm9AyTrOcSq1pBWh/XaDGhmBEe62+WSXU+C//76hwHY4hPF4XiAvP6/TOhJxEy7/NyAvvym3LigGoeUx2JeIUO8e8Kdp3J3720cBdDN0H/c4RcrpCDg2UD2XIJZsDdpZa4S2UaeC9sxYPNfk1RXkoxt69IjiVa30AaZZkjC3Lo32yqKsToo1Ruk2buzEL3Mvm7V/2xdr70iAmS2k1Vk4Jp7L2+S7IeDwJsK7dwB/xPvZI1Rl70+wbdGOQ9aQAwVn6jT/Z6st5eFvOPGCrWieR7+hV4A9CKH6dqO5sEU+Jv/ctOwoOLgjVxgfspfojkBZX1cmHqvW9w1h7iOUxc+BomMtdDlGrTeoqoYFxboY7VYk+uuHxitc1QFQSVrUBNfmx9NAjJoYp5Sah3mGg45", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ToPuOXjmmdhNvbBSUfjWGc3+ofV598xUinNX9iBP+j8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9YKFzla/ArJhb2hG8Xc1SOJlj6L9ksFak2t+/L3AaurJyQoRfDERtZQq5zHBe67dJmnamC8KeZ72M8coObO0dhxUn/g6qGPSZuwckCfMzzVHIvpsnta9zlVgq19my/4xlh8eiXH4CMW1pDwVTw7ALKQ4TjgpiGExkJ3WEly05TOX6LVvbYPOzsJUblfvmN/8s8v4AOro1P9kj3UmpDT5pwI/vsXNllRF5f3Hp4Yue32Onw6yzoCuE7pJyr0zCC2+Ni6iIcQTQtvqy6P67yDM3JFzQVDZkf1mo5ABQv5/3Geo7jSY5H05D2aZLBkb/VVU9hLI3bLnkfW78Ig/8+TUiTB8eHVyY/w+eLyiJ+rL3bBMTwOwcNOhkepzb7KngWBSvzxOIIA0s4P6WLGfqWRA0yAG3iGhkwy8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TokwtIc0gkITxXwJMaqBrchAWgajYcUGVy86t3S8yQo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0Wxuy+ODg8/c/Qkdx5YWupIaYpoeojoe+fY6eIngErl3R9OX0onWZHIBPcwGrCCJLRCea9kDbCSUkwp/aCW/vQHkX2fiWEP5JEIK+JsclZMT1retVNUuz03sJpmv5ezyNaO0PGjKuWfaUqp/TFRRAbaNS6kESJH8HsSrn9RtDTZXR5CmMYzQGPulbk6eZKNhJnjWbfa1XhCQxLmjf1mTvxo4DaqatiqOPPdpUj00J/KtO/3ppgJtS6IMnxFeEh7NdoZe19qyeprx0Qnc796Fn78FQSZAr1sYIE//+ktAQKJUjGyGmqb+DaSf8llGrRuDnsx+iEHfReIKrfjEbvInXF4oQT8GxMtOHjARAkxp7qMU6inQYPxvnA/mLig8/6F1RrsPfVSYPpRXUGVPJs4ABsPSpuvQbxLn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Tp6UM2kGAg96A5Z1T/Vnck/9i34Pwe+qioni7QKqUWo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M7Hc90p/6oa459DtHjzrEegh1Oj5WtrUrUL7Ly10uEkMN6bud6xYG0U12APN+Monl0DwcA0UDSwUQLeZyGXGK1wKEXRXft8Dr9IhRyAC9t1xacHifd2FtPtxhkPoHavihFcz6zkCebUkkxM0Z4HTFXUEO3dTTjq3acuyaxoLM6IXTImK/vfc0W1iA5sVS8L/KZbbfVPFP7Flh0oLLc0qam+vE0/dwJ5arHHjMd8yOa89uwARDmebcMdnyHfRj9MV6Zq22EqsD9O7u9BoWq8lG3SJOxcNhLZN3J7UdRSCKyBv1vPN+2KomBodaUpvAoMHK+BYZG4u5hMKYe/pXF73+jnpQBSIHivBvwei3Y68qLwPj5M0y4huA4EpezQvEWEyZKzzObZe+DGTNQkIZkxE5rD+xnVTMOiz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TpYY5mNBPYj9WvrQFJcUGPsLsa6zkmWxU1iD8zjgpb0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BOC8XwhV5CIgLA42cG80gcpZ9oYf/SDb/wWcil87VNKpYEJKhwAUhGwQ6xlFvzAz5DEGucX5mvIi9alzbzRkfpOeucPwLdP0kR1ntVlwJquK3SluMjylWuhlsPWiwsWRFTgIdWLv7CYE2PRDzAAkZgyCXJtrtr5OxVLA0Hh7ooUibVBb0mxXyqhnXyM1URsgKN4sPIeR2drRkPyTNNmLs2f6V26hSsP6loIwHY8OgOTDjVfBe9N/8pcdqGiLeFEc+emNwHqabaKUSKtUTUEaAL/rAydGz8EKa3YyItvzcb0IoW8ZqbSx63FDIn9qTuKLjL5yXgEMtkBsIPBvi0SuO4pU2+VoyhKJ6IPWJ5MNpoGXz8G1wt3PB/cyonjxXKPchUyzsfJBthM4BYk9sI7p6Zi0WOQUanYp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Tpg2L7fcXAGK/h3Wsgy0EdkJ5Y30xnao9LF29kG5HEc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S+i+MgW3KwK4ghpdtKY5dE97XMkfYMlpBtQudiUWpqCmVIFnn5lAmVpBHkFPn7LrmJ2pJIJcJO3BOI98hDzk1P3wXe/caFUWex0tCUiAcsEW9wO6xb6p1UedxXcVPunAHdkSoSA1f7fl3AjQ0xJZghOiA/f1DqbAliQix7oz5+Z+Nhwfk3xtDHobfYsjA58H+f1As2eE4IPP6NJggsKF8tgiCukKhkZHAktjIjGRHE8hxEuropxePaRiS+60oNdn/4UBKeaSK0WZiY9Xu6Lz+eTYM7JtnTJL/yDONFVX+exVUS5Pd9tBd3ZI9bN3T64c6T0paVnVs9shXynSrVjVs2Q3KHptgEfKB03ZnQ+F+mVlGk3XVFsTPQR+eQiCOvyUm2Hlhfqw/pziy+OhYgNC6c2kfLKl5/bG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TqWpMoWCrdinMfcqu/njBoKncjVV7TVwFPQlMZA4/oI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7vF8Er518OGQhNJuepKHIthTlaBHXSJjPTl60AoRnDSvWkOyRiKpO4+q6XMT4BnxuwEE7Qg6bZwySi5fKtOr+GWk3Xk0ux+onhfl1eXuW8iIuKB3mIaq5OlMheMVQI6/5+HVGynbiAzebl45nkaHsVtwRtDMnhI+Phi+nWDuO7q2OkSUxAkd0zPMYCFcXG4fnfXmB+iVI7/YVnkmD3feVxamAxbtCBkJaUv0ZSyJr88TqMmJ/oqHX8Aj6cXiXI9xS6hVmcKUXGZOkgIVyty6UEKGyk/neAo7si37iCiiIEwGSwmepQJZJQF7BfFyoofKB5E8LRPMVd+/nJBWlNfCW44CoKwYq7QRdFW4fLfWHK+HdPFHKVKKqjBlHPTIZRtDoMYgZd95pzoUH8vFzOI8HUQtw2cnyA73", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Tqs/JHbS/CnFAmqZbz2JVBxOo+jzkA6yVkcnFQ1j2gc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1F/BafXXjdhKFhwh4ON5sWtIu7FjFxEqbpSsR0b/RGjWNp8+Xe913mEf+6nxecFReZkyLpl6lsEO6j10Qh634Y8moYpf2Kv1VKkO9QmUDPCy1/0s4LlTMjRA9T6I/qEXfugOActpb0dLOSYdD9Z8zx7SkVE7lgh+GRb6Wm/76zoLUKtIq/fGQgGbZFiMcVHrNmBXMrR5iMxUoXCuPkyJRdX3W+3qP1sTf0h21Z1D9D2Y9Fj7WsKw4J4kgYe87hrfW9hmgUFn3hp0lxxPEiR7MCAfD6A3Z9zJeD7BGWx7LvQQXzlIDXsusX3pEUfNDrqSdAYu8VlRfwsJxxiS/MFobMhMT/8Kpwc9ad2JD5+Gx3AI2Lru9U5Cpqad6jLpIFb+rH1f+XFvkNqW50JnqO9QJE43WrgpJZWb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TrdVMi10JtuYxODVKHLvbGT0cJCQ1aX71mPAt5GRWXM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zRGW4ldre4r1RjWGeFJRnLm8AnurwCh6rDcNnNBFKFA9amt4ULR9um1/BnWXc/zJpJGo55LbL0AK7VMokSL4wEmToibiU3nbhozOTxiEy+KsmKFV5sQ+G18nSSnkC8O1F/ZvIvq2XltTYTn0D9wChHcGKB1GGaVGRSK2RP7qsZKrS2Ut7ml1fKEu/VZTuUhrd5BaA19/5eEuINPAnQIfgJZ2pAasj0KbP1N6mkVjFjp/JOGQGZNkspL/W0yTyFA1HP5nN4IyLVAuhfbn8mxBOSUTJVXns/9ub19NH6sODvMdbJrUiCtLVOU6GTlrYH+m1rvLROSB5/pZxx6CYsQqYMwz48yIjLrrMWg3k0yqjMl+ihZdBVmic1uNxhKY+R1z9/N/gPav6rdmFHJyxEvTJH89I+KFoMuA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Tt/EKl22WwSHbM73AewX5/rcX93HDQ8rPUumu6MzVzI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zQqt/YxSMfviX/4cbh1HE9ZnxCVJV8SKmqsxiPMD5jaEi5mD0MV4H1GjKjqLTnbyWkxukx8yyWJiLNpsqDnNJDTa86HUjYRSP/LFZgRtKodKOqK0dfF6wO+lfUJQtgG/qZuJWBRu+xiGyRZK3eepwdzDjYt1BGTTmkysMXuq043KIBF0mVnGNnh6moZbzjtQxAsbp6dBS3bTJ433pw0kVx83vWWu6GLfpYkUAnZ+C5dCqrY/ZKVkCaUuzm6hbOxS8LZkEnmoZTMRAcwBkNuZFG7lex7sNkuiIxujo3eTckPsWtY0ErpxP5RA6ElR+CdWRp1g4Y+5QkYaFmbGXWoePNG258bHZjfhtLVsCT9lNwC2Wu+y30eNrpmBIemxfBiYJO5KOWXtmGLpKlMkKQrfB7+N8iXmK3Xk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ttm+noitB8zLnkPP10wDP9/DKPGJMCHYTFQ5Gfy+rZ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZCQiC3nNaC8c91rQVCqFF+Q7blkzdiAxE/7nyhN0zo4aB63MVnCVDeEP67WegKx8E69Hm7dTpHwe5RnlLQfscmRav8a3ttJNgRbWZ9L2TcJK8jmskL+Mje6LbZyVVFpnjlTyMgsrpLWNXxY3h1CfVI+d4scPyCJa8bznl7kpxaSVvch6zkWs/RWG2ju9Z5OefarJ9tPAhGC68zyg7LLT7uJCQb5LGI0hh3awN8HfGnIigpjiEjFY+/YrNGwBiyfvjK3+I79soTJ2mH8D9B2X9E6HwZY3oUwe/lKKMILm/Rr/TPU2UoRWkPFlPQrxBcRF3LfEuVBJWCNhKsEltdiFHbLu/10dWncrT83ZULHla+gShq8yhzNxRL9eFxwLg9bUmjdznEvxWBxCVrSpL13zxoP5uM/YUoJ/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TufioKWzWhNPeObPnbxLMHdO6quBUv62u9GCH6ecI7U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cMLTyfpmO55tF+nrV7IzAAoFhLa7TI/4DIJ9j+401M1P8z0aS6wuvZQkZkXT2CpOMfGyVcjXiau78XAjXXsmrus8mcVICmQKST5bfoEituMvV29F9altXByTh4sz3vQa0QBHECoZIcKR28UcOEsY4pj5U6MAYuCO9dbRfrroV2LyXUIA/DTyuoNleaq4j9dFT+xmPhfNaoX40BbcDrM/GmMx+7Hp+AkEfZIZhCCXcBycl7TQetceJdAxanNkm3Ccf75JciqF3gCshY4J6EVGVTO5OL4NFOlHI5j5b19ZspnXzfjWLRHVbQjWltwfR1VniZNS+t5pC//ql4YtB4jLh4cL0aKl5s/JgvPYCk/C6ZZ+u+u+ivCp2NAPrrUP21vBMlC+TUbQ+vnj0sxtUheiraruI0jEh8zZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Tv6cspP5CCIHa1Eprwtxh4QiZxIIoBUN2HFKIRodqnI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xdCE2SfklA/kCLQabrQjCr799Mv7ez43lG0QvYoejep5wZb10CsktAst8MFvcbYzdTb8jqciXccIKmhosQabM5clIiOhvg9PKtGWQ7R/jYP4mgiPmELrhbRziY1xmbK2EP48z6sBeABDo8CFTF9bJRmgV188zfThonhvCjXNhUoAmJHuVhamgEEW5ph0nUaA9HHEjrG/UONDxVqvrR8K3fNYNtSrVxiMVV2qpyByWZMRuLCSASn6hY14OGaWGGhaiTawH4znIiTqrokln+TpcMFnrPd4zYOIsXltjhzrmUKbUrtd/L0ww/p1iRwX3jWrFBxd63dYPpy8EOP/efqA2pkWmGk5WzoOLcETO/ejRCmrfwalZtQxUAis5vtiMUIOYH2T4GSsVGPXWykFMvM1zHAzKaOZNDhn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Txd7L4N0cQsqN6ZHLPhQ32iiEFLzfYIv1gMr2LwmVAY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "le48TSE1tfUrgw9sKmyx+6p8dXYdwInzAUkqFfT+boh+Cai3vvhVDqBakkDC4yWl14jvpFNLIkkcRK+eE/HtUOPNn3CtV+NL0ngWTgTVHD+amTXkfA0Nx/oSGTsxE43SveNdz0Fj8odcN7MkOIA0bL8Id33fTvIgZQCRXlKFYFC9+MIJ6L0Wc2cNXobkOVTNZ9vAWSGrA3vXvupeo8f/5HE/urrqQCjvt4AsCyQ8+dDww8T8oboev7EqQlnAgP0FcPdbwiu+IlCval87+qYwP/d6/8vsi+Rfb91GfSEpwZASvw9k04E3gAHrGJEBfZltt3b35GLV6AJyG1hFpo6hmxObSv7bKRJGEggvbiVqG8PJj/JTwEjRJsdIJFjv+tFMub+7zP4ubbk/a5HqkxbwjNh7ZqL/JDac", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TxjYQ779E9H5VRdPpngUAK6exCkaiUhiPc3m2xqmIJM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Lxq9gKJFEqnqXMBfMlr9cDrj/Ogb0rwLF5E9EvMzqahlg1COQxHOX8HX/X3BNI/nSoYLbs7riYUHE5XJnZXAxkbEoL57UqTBp0kymDReEik/1VDvqKp8X0kt0MW1GwtZuLdOq/bVwaGE7yVqaFoIXoXy/27AXjTtr8MNXCAMcOROYfuLcE1vLE1Kx2K3aTYBA8QKr3KgoDONWGf/LAVhu4Q6W+YHIh/PfRQMPXY6hS2JkY0+3x98f+nM78X0COGMOEdzIn2whuK7c0seNinolmMS/BqJp0jOyJ6LmbvwgyqBk7bBcwS3Wt7I7j4lpYlw8y3c7+O68EI1g5z0B5iDdz6JrxqiTM+oKGIVqDNTvFdBmKzHuMMOzs2y2xTXtDU4gCHSBWTTKfA+QkBBhjPywAfHl5nPyZZZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TxsCwCZahD8a4vgDM5nfLjXCDriS37szXjnZod4UaEU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GGpqb79hxU2qQ10o2jqOx+qEl/kCauve5PFznXDHqnLlaxHXA0V4lAtTKrcsRR0Ee1CaSaz9uv+qQXxqR+GvIIsaIX7LyjHM2NkJjQBLNAjJWpdO/XUb0oVVW+Q12K5TnXnsAyZ9hMyTFoRBm7BG6h9kRm2Yn4INMWKAlrKWW5CQz074BGqLDKPs7FOGUcUj8+eyb5LYkJIVzzicDMD6xCcbXTVAbV1mJJBgrAfKC1cUtXTit0S7Dv15TRaP/6ZF2zeOx1wb01fL2BGMXyk329q57zHzydPsCJBZLD3K555RQ/WgpwXv6kLx8YiDVp1tfsw+VhlqD1MHSoa1YpHnWJAgrYU0y2soOQymt3rr7Kie3RKewEg6+6NI8GEb1hw+kYvYnk8FWv/+vSLfQrqdxamfRVbyGReI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "TyiD7JWUEn7FBYwUIOAJCd9htZ4smfnkdS08xcxkvI0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QfkyZaOc7bbLB1khgUfZMjytpohm0RvpU6eFzDA2mjzhld6UA8+EZwU3Ic6w1qEq21tEzp71VD8fcMA+wJb5hNc2IBbF3ykZdoW0Kv7hpp5/rTM+5Bp/r4dZo+X69daUjNeGIQRI1Jzjek9JaON0ALyhJjNfsjgwsVg5A11QXy0dE4gmSXfSKyCNBFsyUyVLdzOcjC01RNJQy11kQRugIzIwRc3LRTaQaFsRkp53U2SPv7L228CL8HKUJv80KAeIuxMMrDWXUsfAhFSfJObnLnZU1gB1GmJ0hhdxiFusf5DaonQwbLMZPicJ8qf9hd61M8OK6+zWeddi336HF4pRm0iYClu9np6olFv+JHljkMtm66bM8dnl2KhiiiRL4w+I2yntH4M5Qo5qzgBVyLpQb3FREYtG7pT6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "U+3mECFzg9VKucUWIyTUyBtA5k3BKo58wtUcq7j2Xzc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cIVwG8TKWb0SwnW7i48SPyZRO94zA++hY5QuP/NW8R1nP8K32WLuRJ7BF6I6MGH+4b9AEPmW/SG4D+n9v3RwDXPEYz5eOJ4keAjdC7EOtx4GHDylSU2RUz6167vCiBnN3s/HcHblOwhiYfB0W59chzfK1EETY/heoFTk8T2UH0/QcZ9a+xdwq5E1kqqEp2n0IB9dIYFD3EMEcDobiBxJXbSOsqrlKTmAFQ9oouxF6D64REreHeAGQShnLB6Z6aVe4mLFH5711a86CUo5cEk9gpRY9hwmN1Y3oO3KFQfFM8j0QR9DWjg3WEinI7NdeGr8UPqJdQH0DFy0HpecgQKsRwm2FpXvj2aWgxPWMaH0QTKcAJ106iyP2r4xMgaWa3DhrcaSyonBs8ekxB9tWPj2CLi2VtY5vfcZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "U+NBFGtJYUJh4kovLsjc6BjYPQg9MalKYoOusx4W+Jk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xWM3+IZw3k+J9FrzIRh9ocjWSUI62LG8kmstfHa0ayAiPtakLvJ7NS3sBF1pmPWE3HDaXpC2UgurH9wvMfxshI2Wc6P7KUnD+gQLefTQcy0FlPltu9G7BB48y7+BGvqPsdImZgK9eiJanuHJexjmhcHvB5BDpwopqHZCObAI8eYMcFG6qZ+Lzj8PcinmVn2BrrJsZplmo9+Tid1ZTun9r47FpSqMHXzIM07Iu2spTy0QHn9mqhwpUhkDzou0EKjZ7VR6UHSo4VY6EQPsXAIUOlIl4YMTztlmfWY2oPAI3aukqBo/CCFRNT3E7j8BaZD5+pVaf4t6IhWIa0By0rsVH5I/iqg5u2rNXksLIsG3Um81BjYlbbe89EgWwm5VPLk7Uv8AdXQqJ2EVattOGZ8MQwmiRnoOnZ5K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "U+v+kKLcnLB1T91DpFqA0XUwRbZQ+W7QuWEGFdz+JhI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1G9Ruw1OQW4YRUzGXMrkVd0xUbltsVQxzfLeZPApFxYV1jgpgepGhjE7hXa/fdV5beAC4TXFxAerlJ4vy8a4176XK+FNpHXTMZgr8HIxCgrGIrwasMEnekLfDEXPiWAbtzP/wKEwMR/SN0UQjuG0eohXEio6bsaSmuAnKyMl9vIFm+6hiObbSM4mf3HwQ6nUd7XjfC0nkSbfxSHaL7zWtRhFMGr8OstvM4D7avTsKc8yS9WV0e+thaavn8ikHdW8WBJfBVT06qbguU/mYqFESi3d5XGnmW3eVAQ8gI7iF+B2weeXEtNtP5S/U0NxyaBP0iTqaBxMdaRoQtO9cxUqqyIY6gOvuLaSTyyAryMD3f9Ml/nE8d9bTpadaCLjshGOC8NtWNgy35kGLkBHtC/K7yf86n8e1jrt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "U101dHF7LsjlaNXJLWx/clyoxrUUJ/CoHrP2F372vwg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jbwJUZWwsOi42m2tyqXekFTf00iWDbMyAqtYfsMc8g0GjisJnY/9LIFU1EO5h5pcqAFcnCQxtlW7AnxnV2NPUPRoQl/cMpQtuMD2SI7x7Y79VXCPGtRpsPEF7fqGrXQC/rT5ZHBrw8+bt1F/QBCSnedzSdR2+NJ2BRloLBExgtdzLcvlxVe1bNFS+M9GkJoDZXQxPsl0wtbzv6V/WQ2S5udd2srUYL7H++0fM/xPhxYFlhf7GnLPIZdQwniD+XJQARjzUyGeJA8TWIeJgUMSVbceqPTaznGC5U0TOiPzpKZDj2aLni9au6YZccbcV3shz6KOhVopmVz9pb3J4QYCHyTnRpQDcMhKrtcbrefVWV+b5iXYjpWKBCFhWWT1ehFErYh1QKxz934RqnHUgGGFFZsHyIMQwWlw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "U3sCfsSEuL67rKrpv2tXJRdNk2hzuF4zefaddfQDowk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E04fMTh3PABLcBRrTvebBEpimstTuXtuGDVCBbG0BbeAHxebqSiK26BAwutI5xGfuQnTZjuiIJfywBIQoNPSdzSJzGrf2gJ7Hd5LO3AxrDxw0a0GrRmsM+xMlu1mlPkgFdKuML1dE/73jDxKHbdY8mvierHz2s91eqTk/OnEKEchZDVTuLVUTks2c3M9zfthfLOo5J3tSeTrj+vj6uB3LF3gSgw0tD08Jt/kf0t/NDCJYknJaMzY8sXd96fW7AT92PKfuT04WzwvY11McSGClXI+tzkDQr6QhV0i3bLP3yMZ0VAzfXsFpW8BvbEYIl2vUhvyePcuShc6P3x3x8WSRcN2tw1Vz1II2KGUeaQ5de3XMQIkhcG4LaryQwzdMBooYzxkKxKO3nMGW5vlmJMcCkRkUCrRjgYi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "U4ZWTwhc1QNRYUkezWw2NulytX83TGggQL0WJfb5nHk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dRG7jHVHcLfR9lPrg+vaMEqU6rJ68W95xBvJSGOy31c+9mMI0cG1StfpkWxjiWwDHwhQ40KCuYFAfCfLwMItSPGYD/4A4jib6Eyz+4gZWzJWDx0UQFGQ9vi0u17TEDqhce0Z7A0BCkNn+obmXEwOha8YQ1mPXglOkm1XtqkotrZEsJXrZRktDqVsiLk/VXW0i9p6Sg9aP1uGWU0IK47p3Gqba5k2y2+6tOJdIsfQuHO6eAckDeBZtB7Q5B3XAEfBvZAsb0eWBidjnZr43vVVIlLpELmjFfegF70YCJ7RXrygRqGfYuugi3QQwOTL9Ye2uyVI2UMg8/eXaLCh8NkNIUuzFXoYHNhOmBlhcKEd0rbyQuKWCx7XMzYeYq3zSoIFeBU3A7koYCF8YReVK239cQwAu64YjJ/W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "U4gO/UsPG3wwLqaZA9mMIAZoLOZRgg7O4k9jjzRGJdc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s4SVs/Ys42uKY04pIiyyjZ6DedS22w9owetFH0jUfPpW1DNB2a5wMzy6vrPp6bAoDubHhTbpZ/UkUIMf675HH3zjuVb4NGuylcGjGU0wTSZmVLhHxsxSfGvgfePF5FucwbpnazrhT5lzcSzpP+cq6SNCo+Ie8qJpEVk3F+lnr404J0veM2kFkTDE8cvjsa4EDi+DKnpbNPwzn/NQS+GNU6l6nyru3Fl8kK6Bd4LdMR9en2vMDU1W2vmNkuovldeOxfUQcYPwCP0s0aHq2b3EDXKG++Iqj/e9xd+SKURxcE9go2HU7AAWVV4YOHU/R3Yj7Nst3uYfnbdu2fOnVzDeuPlUQcMC5q2j1hPjVw2hE2LgVy068RVgMWdy/02+DBWBv0bB7/LNoUYHU63F49viooljfaW0OXMR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "U5jh1/LO2OiQvKWWFt/aaTvM2q0UUJw9UWoJ4XtpJJs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SYUNO9G9jkyz7Bd9ECjMowrJNxy3RoDBm36Kqrge3944/e87fG9SkKRrFPH5t5clHumSgD4Z8tf0Jf0ayct5bS77vAABbGWrbpCwwoCCDXJUP8xh9gHZAwncpTJIdicnzVyegQrSq5ymzPBLsAbSSa4W8UqBWfFcZB6Id6Q3hklyoynPLRda7OCiW05tkPeBJzqy/qzXFADhjgQbrwO1eGTI9vF7tOUSM6q6gC9u5VMrCIpLiFs17un/DT6x9LRUgtaXkbsfP1YzanhzpSmRjBB9cq3Rjg2aBdWmydQnLp8E9YAt6060UVF4qanEp3VWoauIdwItM3Go/VLvMhceKEAVS6MH3L5RPTh8UYrOYKFxxYHooYClJmYo9c+FZSTWtI+POTZlho8jYXZkSokAD8B6mpNY/BCa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "U66/UoQyocmqD7a38Yr1smu2212Xt3inM4Q/yQZP1UI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kx8Nhe/vGbKsziLt2snRSbwAC+SzPQpNdOwBUGJTfJwipCKAUneoWVjoPkB4BQ3jjN+feSEemE05K7g27jy5hgDl7zgmnDMRIqnp4aXvYMmbOB2Ea8yeJErG+5S+Rqml0PL4T5xPeAMTKuPJaBJq6yM5e97FHUNhw8SP69BcqGqbLCjzb9qNOEgNx8iw3/lGDOs72TmmVhEpE1shToROY2vxgwDk0/FC3NHJk4kb65djs/+Zfmw3BsrcZDblwibLD9vQ0PLOYU+XnVzVT6RGkCTdS2KahAt3f3XsE2oCu4vr8YvzQLX4uEH35WHqT/7BTv99FscxJUnzqX2eGbKkpLxU+Zrr+MPMw6FtV2XdN8jqOCf7sCqxXLK+O7jMr/5suIe7fyyhHyRsL9QLTNQTKs6VklGTg4fP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "U78LMjaMeiRRdHbjFkSmfVLrC9jbEghtOiOCC8zimjc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1j3Br59aaTYZhzMK1zl7zvBjzMQ0YbeFgwoPW0kAzoHsSWrHow+WPQ8wWVitlWeqSw25Jj9qLCnsQGdhEMS/dUqS44xSQjNwQi/alAYbR5LW+7GBZQQ0u/yYCBOvtjUCuAdazz23Ye+MdoezeD12e0gW6OHlkauiJyAGjiFzVkNcGT/4idBXdm7vY49PHcXRzN6H39qeP5yXB6F8Zf4yrmI3KKbr8iIsaY2lJmZglY/sYUfbKTUVdLvrV6bbcKyJAHWPTRz8XqwwGBKEK0GhiBz0HRaYXJaDhKu/gtpCfy1FxDxFDu7MSuubhiMI+tjW3byoUvqivK7w1UkYsMFa6fmlC15JhKK090MtAwMRvMw4FkJHtXX7uC8CtV3H+16GP0w9jASMQfN7wUQYuf0K1TiSQ6qOfZ16", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "U8RXADlBpyN7HKwY2l+L00QXmkEruv4F2cLgjA8TmxU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M+Ak8QG6m6txFZa2aTJ3uIBxxtLBeYlWu9SogZ5iq+XoNp2NkPMx4L1FbDuh2dpz45VzhfCiwWkZXhgyi9ZejeXtvDw7g800nRt3RYsnM6tiZCTCxl54BYKSQOi7dI/hqGWIkB3irXb5uZgIsxaSdDPBEdFczNCHiYVhKBv9R9aH16+NIqmgCwoJLuZO6EW+uRw7en/fjt4nlHJRv7lOLShYExPjaM22G2Zu+tRJB12DUcUeeZuL4XQloxoZ63WpGwn5Dwk+YYg5TRZicKWywbFdaMIqaSdrzJLcZRmqoHDwQHV4BttvjUkw7JjE9Wj39hDs4pVPcnHKDmmwD+/VMpnLBBkVdWzrp2ZwN3Uahw+mkv3/vc8nlexc8ZTA8/td39oGUXG9LZFDYUd3udyrUcPUMaOQ3rVk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UA6ZpTGA+VZqvfmgiiXTMGiRWjjNwVK9A/Isr1W6RTo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "II3LEa6CR5Aazq7xmtbfu1NCyWQDFWgslOjoiNq4Rto7YvHA/uKeWy+HuqKsJqNDDdeDd/4G9ZJOjdSa2qJQwEL9rMplmJZeOIc5QTvCgC4503lKg1e07mhR+v7DkXysrkJXQQUt4g+VXtex2nCXw2Mv5w2TOotzHfTAvORSkedSamG4ReuOE9a4lOCCKiPuFVDqiadXvtEWwyczcJ8OEK+mriIC+RWeKpiAkCgCHt/un17Vi92oMnEXFPcDGQl2eEDjvi3LUgh0fJfc91LC5SLIwBl/eVmT28IcnaxovUAUjwYFQDtYds9mF6kmGCxGFVFWERYR8VqGKYTkP67ZSktUGi59uHHIbw0eWNn76QV37xioAoOFWPaeoAjlrP2OFpu0ammkMV7q1CAkue9wGftkkeAVqQ3p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UA72WLwadrdp+d1ZBVhM0LUQ7HRiiEdzUW/IwTY4NNE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nd03u6thsBKE6ZP9D4nbkY6b8DkB0Xz95+t7oi5pj8HXdFdc5OK9xMLc0OZtC2/irFS0UYiyqhW47pXn6iS22TIt2zE1YR8suf/TJGar9xZHIi0h+6k7Ta3Uw4A8pM3t0r6HzazqybfSK0eI+Ct14ktIK09Ij4gbsJb9Xn+XzTqicK5DCR/QgnQbw6v1tHa8jF7MOaRN8WrhOT7ilZYb2uxW6LTdrzI63ftf+sTykPERu41HSoJAEO0J8ao5dwLWA2/9UmBU5dH7zTYFrqkPJA6IGuEaUSCQs88R4N71BRxtr6yk6gs4KdsrZSaOVhfwUc2XphErLSB5kmLr/A2H6I7KVkstNEmL+gq0lytBpeXDivUQv0xgPmUX0IMNrpaDfepVjwwJ8clAqt4kdQfdR6iq+jjaJPHp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UAgm+3EypklXAtcvSdj6ewDNqehKWyxAgk+Sope9urY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YV9/BiuHruBmU7yvyBmwvOJfm1AVs+YsBZmNXlx6dS6taJu2+i3kkvHHIENhr5Ql2toTr10kKQXZFltA1m77iSZ2e/4oLmqcI8SoKIlPwrPeVwiezWri19n8s/aP9La1mdGerB+8uctsWkytH7hIydQATy34UWmd2Pq56oR8rh7rZDOf7j1JeHYFDwBH2yMHGjZ+LedMtg2MwK4B84aVPeOpok3xv3P7aLy+PCHq3L6WDWqrmP6cM4FbmQ6tb5bmqCU/ySP6VnkcD+PZOjMPqM72JLN6/Qy5zLHDM70N+7cYKPCbBsz9dCRAh5aIrzBsgQOPc+hOw72hiPlv9QrTnBks1FRsFZfMPisaVZ7H9n0tPcUvMA1xK1YsNX8mnimWa1Xto8KRSxG+wUbB4vvuPl9I1oSBDVYy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UBjxWjikZtbqzir9HuLtVcfBJRMV0uyTnVlP3g8PM0Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "szhQUnz4y87oE27DnfME9IKiWrWf2YaK3eQD2k5b8ocuqo2Vxy3WoGa++o7SA+V/TPnco8VgmI6DZImhRGUMXBgF+SlWe6gs58UhOfs9td3gR18d0rj8raXqQO484wRRgRAjdD4Po0tniE2z7iRrYYb18dNERzRFFRicu6RK1C2Sy5ZYDJvtBU21Czz6EQ8CJTk9Y5KfbXeBxkaajwskJLWB+q68MqvpaNpFhacotM7XX5opGussh7vT59bKoUAgGGRigDmM2Vj/z0SesbPBxLbQ9mQPaIGFfUW/kYEhsNClgdLlDKlpyu+YdgHjo8oyPSyiuM++qApsW/oQAbIGd/tt1dhtsuiRuPLFXrr3HMzHMwfM8Qk91PApYIYxjt7Rebhf43oIPQSb12TUmYe4EHtLUtxGD1rv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UBpml1id7sgGdcGClFkDwoMnQ5wVlTssYWEuo8SXHjk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mynqTWXbN715W7I+kqGTT3s3cQQD9FqaXqGdTVgWbyFLq1iSMJzmOu7PquJmi76qUJ/9WK2y9ZwLkVR8qAadhCw8jQ0Vp6JV/MunvoKzsJtXPGne9r4PdHxC1eHnAE9AS0psnfuVlGoSk3OTlRG0XqNxW3GGchPGTXhaDYoC1UziNU1NKFpTgiIOXiNr43fllJY77IEZDk/LP34ersXhSzNpuJH1KJj4lKYLXt0wQS6cw5O95hG7xxrOX/fJwc43B6ZzRY82V8LcpPJnIOwvwZGM9AdiKTvsUD56/jaCHfas8z/KD3guuMmXWfYd1jS76+lcPMJMqZMPPb2rwbqQ5FbIL5QB5x9cwbEkgybQxDutjbR8tTseSMIy3FgDcwE7VM8QeYaR/sj/y7Vmzd1+HauwsTK5XWTa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UC6LkOf8VF4MYe422UFsoiE4ZTG9ABazIvTEauduY+8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WVeN0mlJrQ3YXF26O56CMR4NHJe/uZJih32GYDvz7QdU4iyd6xL2G43yeqP4+iPd4+bVWUuhDR7KRDR1vnJwgCNq/91RI+i8DzRD/GFRJhHjAeYETH4zLPaliyXKkedi0tvZui+HkiHoTi4XRLTcRUKuxmzQoJYQ0NvD5O44cQ4SQSSLT60xSLKt3F6uIgbKfslCe5e4+XQyF2XUqLoQMgAdlkis/2Aac7YsRJ5mZztTNenwVsk2Srue1haBzqG3y13aoQ9uS/42my7c4bu1KloHnMB3wHVwVFyN7s0obRw95Lke4QWteXYWaWe88eAIpq/Cu8Mfxgxc8Uf880nLiE4aCv3N5w+bBZFK/fnNRHVblMZF9NMP0iHTdLRGNxBXmQfNsbl6knP5X1zjIDKEqlObGOZDSSSw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UCYAXRTjOhZROwxHIGQ04YLM9CZDyTvxUXbSXaScEOk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8IjKk0V79eLISYHbv0ArNqPbLjdmrxafAMrXBUrS0lodjtcNX9ybY5VNzWyMEuKLFkKj+TSj0VwMkFDl5uskyPaEAKira/iEoZil81kzs5epD41DLXJwaZpXkbcWH+U+UOwh0W6U4xmCNvZt8WsnqpscIat+4qBxwt6yDwd9zudGE8xYkzhbGKL2BpSkH/tFa5bnHkf9f3mhJ43VAgfDs1fQwwkM95WlO1/XxMUij24SM/QMg3zlLUV4pmeLAzBccGXvrsR3XHdX82rSNk1KZkYKj2G1gZm8QpPsC4CSwm2aF0xZ0konsEz/fbtkoa3C4NtqUx2XSSLEn3PMXb+8I4K/pQqbccLRoKxuVvuosiTDu5acKRbxcboQX86lDYuiKyPoRhvvdUUaABMyljaRH45tlGj3wimg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UCnqBHHIIo6m6/Z+Jre83Bvcg2SspQuI5SoDPbLvMLs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jdKLhPgvy/EYw+4M5leGx7J3agnIDw1v9fzjRXHCtcpUi7vHw6znONG3qytyHOdY1HX5n39namPJYH59dLsqjgnZPxyqwIkAhptKZ5rkLpqIssdiNnzOSJR2/1vpGNVKA+UHeo1iuIPLdZ1NfQScT7gCW7jhyGZldz6BdAYngltGdq8tBmDXXr+2VFq6fw9kQmDcelL+sXwpRF/YeBEvfHcHVCYcWyR5JjbNJp+zET1Pn81lAzNCacPAvwBmoWrSWlmOnihzpFEjpwq6pC9rikbkUraK8lRQfF+027jmqjK60hF1yFxBq5FTQNOSBSnwHjp6LBPoy3BpyZ6ZDIzg26MVrS6theciFB+wQcC+mQBuiCDNbRMIntAjIrtXUsq/k7eVQo/UeFBAtUy8ZXJv9z7W3N6SRlDS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UCt/ZqY7NGMvaU7jmJug6oZKTIhgp0yoT4voJa8JeBk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MvedWap1F0dEMcRAIj0HQhVdXhomP0gZ//8sB3GGAU6tJa5XdrPGtlaMbK2N68K9k06H4OeiX8NC2ZbXmUQdDKr7FGYFmkeETNR1g2Ztl8Zw+Q2D/d1iYIN//Yeukk5p0y67Dd1AFDR8UYLsMT0UB2ilMDV/tFl8VglnBe4bLY/36WbPjtyTJK7nVjqrO/LKygZOHj7ZFea9YqUh7P1l4zjVEYyhLg5n3P0ZRy2kQp6qtXFEP+1O8abrtnaZ+OUl3UUzLQH7hYL8QtQ4H1Q6RudandfNJxBL4JUBVBI0eLO8e/I/JyyFuazWAPUBQzrcIb810oSfwWcoMjuxGM3626XNb5+B5Jfl6Hzle652SGAi9/ZIRtH+WamFI17KPv83YHXKyKX7E9QAgKFSYKHF4ZMO5Iphdo/C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UD+8sO+oWQLQzWjP6+tKenJ9hS050RboeAPACx7VQ6c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lEeBHa3BOZ/ze17l8Q+fQP+GqPbdstBzkZM2S/Ku7Wt1AYslxMgMW+1cLyjgawkstgPE1OjZsu8vHUz+6Rek8eb4fJTUo5K79Qao6Yx+h7FtyUZs+wIydWgCvbqPa8vMeUi8xC/H9gKn2U5h011rdp1RWPUVzwzGj1vLNHsivNcu+yEfIdQWROUSLLB1RO3paQ4s90EQDzgYH5cfSSnvmXSsDu1WOSnSypOKsdlUH8DZotyui9ptDjRZOw6aewV66eqt4mmnydfyZrnjQzVZA3FEsHcbGa4w2C7EFlqKQHaTiKxittNJxYdre9AIICZROuKpBQlXObPymnjAPQJAq1rKXDTM4u5Wph0o8m3s/HykImn6J8+0uDkYNrZ7mNEfacIGE853850mlZMeqnsE/bF4KdKbNCWz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UD7UkhB8yII1iJBFC4pygHEY8GeazYkF5IX26rjQ1PA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bzLc61HtTNTM+97wWHNjEEcJ1W2Fsf45k6siDtMajeMGo9iRXRpHO52A3ULraYbFjOSE5TdanWykMorrQpZ/v1IfuZkaQUg4cZUtwLUS2hVTCimDsCqCvKw+A8QiyGKv8AbnRupie3o8alrhIAGGhZd9s+OaxBBc6RnPzNuXgL2xJXaEjtrTffJjIUoQB6rsq0lsdio5L1+0gBnaMCnZsOPtKjswrqkn9OIcBPwkOonqtUIfPSNPWQTA2TYaN33rbIaJHIKZbpjkGYp6lhGj+EOzEws0duHm6e6ETrjiVjPxqUaL28YwBdTrB0lXOiKMyS1JLJmRb+66iPHyiAOUdSA6kHkdhviAL9/8YTrWzAJy3cn2BfO45SNy3y5Vhlk8drtpnkZqGQiB8G7wCQ7NEHGXwXnOV0U+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UDrmyQsGxf9FrrVuwmUaEORtsdx0KhGVtFetqWUdyeU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fTgP+vl8+0FUc7Zb1T73rKHxbQcWcLs9V2y1gT75UTH/YpuwMJOPMnwFzdtMCND0LvP6Qfe+ZkrlLaFgZ3JJtKtCDVGyvfHXkmtXo9imN/kX36mMj11emTO0DdwafKUo3DqKvS/KCaBYuV+3TIxUb1ZtRwssdOIorgwMpsBYrgTgl+Y8DZKb3s36khB5QUtLxjumne3Xla2rVugwjLSIa/0OQJX6Ielor4VEOo9pbCJnAplfEWO/JLrEBtY91zdtu4ZJf2UdKvmhsecKZNh0bBoKBp3YWpLga1hVuRVlNs0FhCrRMqKFcnK6emyKHYzrB5lrK4JLSEDfNSxDFqoD+hW7mtZSZSYcB6QHZW6dMFWvpFVRhkFdGPWtjZhEvzb+iOOMglY75y/erYApT6wscBBfF0oQJSL/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UF3c90GoP9e7h5eoZ3QdbUvgNA/q3DuaCZWJ+PYgIzU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5HOlVo5MptAfTIV6GmI7inXRVbAGr3EEYSfioimLST7oHE/kRaLHedey3ohJq80SGNJygZdjJBlG9ZEo3/39gczTX8Ee+GzqTNgFWm9uP7mF+vtr+6hp/U7mWFtQuuwo44eNNVjQN7MZeO112Vx85gd8BBAvCLRo8pdteqW+4F2J0YxsepdErM4z4PGIeBfQvmiyTmmsH33JHpFhTVI+q6RhLAkD87hm7m2wC1LfpTBCuYwjsO+089HAIXqJLshgHI3YTJkXgTwaPJXVAHURrL7Cko1a2TOl7IX39Bl87Rv1ly0zi98uDoK5NoZ1uwT1pAERsowuZ/vfWbn6P2O8xEtDP6nTpOGMgP0Ge8rtv1Tp/6ZBprhoTI62KcyYYSFSmCeRBksv84xleaF02VMsLnribf4b87sL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UHkAEhB4EqqwizcNHD49pKQfBVjiufu4m1psCA8YCms", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M8aiWwL3LZc8fxSKXC0vrk5k1LtTeqj2vITT6PwgskrLqc93FJJLA6ujxuQi3HTelAxAwY7Fakkv1L/wnT4mFUZfFIP/mlN9Aj/mCp3ptLpXHFj5CUvtinQdNSQEA7opM4yWWyGo6dtuxho2XYPwTp/QVKvKtAbPqnadKbcveW6BSr/MbV9gEGu7QKA/HTLcISPEvsoS9rVoc0DB3BqonvASw7TVmc3U1rVL+UkUQ8I5FQhNUcvFgHPhnPasvnrgFggUn3EFRAtA0UNooY4rNJDKUmwDpNKtJpk7fwDbBsOJwtFSnl3vwqVYTpNEjgDEutfKmyo07BTRaeVu32q6gi/hi0Ifs523tP5cY3k5GtkSjdC4L1pKx0VqnLUwLoselOqGhNMgsZWL7zPE5FdpZo6hk2Mqsklr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UIdUZrSU57z7gTxOhdfrJucZicWml7XRdZjIC4U1XiI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gzEpi6DI/1VLeyQY3oGyK/slFzBL6v53osPJ/SniJGlaTTgSbaB4F+ZLt0pbbfw4yjqxmFcrxEJAEK7oD6yIhJHViehM+CbZLyz20qu132WmMKVcgWiGwqZDPLCh5GqFuNBtMXS/LK+Os+83QCBIzBI96UQV2WeWevYJz6CPns6Odob6VV3dHKGSTuFg5d3wjQpSxjT8eI3lPees4rGGf4+rnG4rRDZ9Y8XAEakJ3wZVLFIOFTd6x7DJkrLJP9AlguF4nUzcFFElWrk3ISepZHmlCh27Kt4+9BC4t2nM80SlzWO5Q1yMq1B+GYFfCUnwVbrgMvwsiEkLAbKSO3AWX4lczNyc5RrU+fT3ZE1KzQXxWP6v4UXa1QTJFTVBoyCjI7zcfv51C3M3DmWGi1Xtn/pi95+ANnYu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UJg2o9yINvkId/EqtoR6GFo8D70XXAS/jiqrPq9PuA0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QQ3kU41MEfMoZCKLwulIeuMKH18ocXoSCWrHbD+owvthDDJdDF3ugoteYyvly8gostFOTRTdIhN1/Tqor7txqwdcEg2+zTv1+Yj5bBc2h2Fr5cqtqCnt6IzTONnkKeMYjwKD3nwY0nmvHVXTOpkE8d79V9AqYBXaJ5HQg519uPX2ZvVC2pPy0gZfcSu+gUzqpuVi5ERRarWlxPrfIrNrTKgJQvnM7EaOAWgfltRMxJQ4qDtGRh6LK5sI8WY/y/xAw1na5m3X4g7EEmxfpPblRPNtRcq0MKCVHt30wy9BjPLx+Vbq/AMhczRydxLjgM4pJpw5AHWJwiWDZQ/zV1rGOPXX8ai+TIKuve/OEkzUzBkjPUNg817ENBKNPUzWjXZ8J56itQjBuoHedR5r1+Y8+cg4ngxBDoc9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ULQh/WBmtcPAp/q0kfVu5p1qp1unY31e1PET0cBdbfA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "889UhXS1V/xl+JMOMwWJZIwdZGerfVMOxyw16sRE3h/JSiw3X7pJu92eZ3hQjCXjH9U4xOWNEqvEhx1/iy1PXIimnUIGgVvRJwPa1zXuCOZv30LekwM9OvpphjtyzghnSjwZnIvu4Y6/gdrlEzfywbLQWaeunAVgwAz5KwAUDwn+N7DwBGqE2yYIrhrlEKVjhSuyVaLEQYJnIJrGZKpwx1HVG8aHIpFw/a3AGtGKXZ4nuQcmk/UR0nPGa5YJDkKynS32I58/ZSAN5NUcRNb9duM67oDpR5b3aHhAw4BzPQWmBg0tSpYWPHR4nT23rqzX/Nbkrd94dXfcLbNf8XwO+PxN0JeB4bmWp1Dd7foqm9sXJ9CjoW7X7PoTDT2tXgkL/N9alMBtcWxE+rsGcw5p7uuLzv65Zymh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ULVTT2GYQDZlvg1g2aiZRN+mbojjkIw8fb20YIhvwKI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E88Id+ThXMmmbSFqjy8pm0QUorwVTs31T6zj/5hpKb+pIhdGmESI6jahD9pCAiJPFV1f/14wNPO/lKRsX2oeRJkFlNOoHIZxBcOAqEmL56VuolnUhjy2ts5WPkT4zQUATh5yJQtIJp5IbSO8HbrWvLxKxH9F6gIoRZVMgwFOjg95W3Xs7rAgLtF540KD6ncYnXwWBjoFS6/zAOMbChvLbmK7BduHLoYLgm8CwvqDFGZY6+tp8yd260ol3MlQykVNis2uTTOkrl7AaROftlqIUGWgzqxfuz9n6fCGPBpOxBTXoccjTp3Mjlc1fbIAA2YAtp9jCoCwHBpfFVLwMdt56cGuWHBobrtR2pNNj8cUQcdJ2fRbfhl1q+sJbb158wWDCO0eRhrn0KTHTxvt+tU1rwMF4jbfz4P8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ULWbjJUMjNwD84yhX11XmNcde6pdCLRdUWXDCKjMvDs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yHNDy8weYf3XQGPX4oNXISuKtzs6wW0p4qC0kWkUgtXcmzjTMum6458v+q0MSbd7Z5qAvjPkDpF9TEu1Crt47TbtKu44aSE3fLNmoIHlPuyU8OO7EbvHhDkOo0otTEVLgSK6Wzt93odo58r2JvFpbxfSdO9VSSs4/1KmvDf11qFr/9Kt1meAL6w5QZBlJs71wjtiunk12PaMACAjXd/zlX3breljL/sK/0sutQ0w3vsF5zSVQKB7ta7TfMrVJ3o/vzrP05edHC7SsqVvVsOb7QbcFiS8mkN/1dkSrm8QByS09VxvNg7HBJJwlUJ8yKObRBWOCVg4XgAN3tpw+R6nC0g3us3ZNTjkm3ALEyZ+WK/pnpp8MUhxT+cc345F80GS9YGpYuRfh3BB0UCdKLm8g46tA8z7bvCg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ULiFEU2QJvwvOw9FuxxRo6XiPBXmxCDP3Xpcm2LdE1g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "blHfpNTkCm2v5bqSC0zvwio0jecHvo2qSiplrIJTMLgV0lNJbDXEWthPoP28yoYdYsikxQ6j4m7s2aZvUBDx0hVNNjoDL27EQO47VS3ClIW6bLOetybMA6R516u8mxuD8lMX58k9Jkj3r6ktWWwdcEVFOEcABOcaOn87FKIuzlRH5pDf7QTyXCOq/HtsNR9IX9HZc7ntM+B+N37syNtIIK/3iL1OdbZ9/8M8t/ZeiV5seZOCaa7h4rD0ldbG5LyoBXdYn/GbtmjYM3eu4Q0eUFle4Qp/deBv6Q4iyUeI1HtFeRRpY8oUmz+nYX9VC9bf4+TUlzc7Ed3YFuFs3uWxheD2xX1veDKI7uVkXi0y882QNauwaobBfjnsXSaBAVfk3b9liBRXq4TcC4OFf6a7XpeEc122JiOd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UMrztFEnthJg9hI2HIVT48N2bKgzxT7y8taJhZDK13c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2Mq50DwxH0TI6R0tSjFV1daUBK/ZeABE/+/VtxgLa2Pg9C/FV2iNDekZW9OX1VQydfa9MDnrlaV/4VVuGagGi687bephNSXWXksjQBaJDgYF7iI6JWHuZGaay08g0bD1/6zp/chXsPjyiZyEf9jQh8CFdPLNE10hmEPojJc8tfjYO3vgpxMoa529ZxXo6mNpZQODnsKfHH62gp42m6bDqnpGgilkEj+Ss3vYc4miMBLy94iiK/VSl8yXHuAbv9DqJceS7BlaM4aOKWUgwHgqxn+fHPwqh+uBd/u+SXERkrLlHtO1ddn3rFWCMnZOWRZLAjUOQtBzRRRzf95QNxceb+sQPIW9e4qYfHsvzyKhsdhZWV9pMBa7PVJSdf/5fdtF+CPf3RZQxktqe1HpGZ1qpRDdrj4yuCFk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UMw98PK1C56fO0QcFolwZFrZRPL4l8+vxWJV6BvY6Jk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TWvNcEylToEm9jOKaKcOl8LSs2X7hocrZ9f6wcgHx5CCFy+a3nXRRXxQi/YUSHBdzsZstZnFcQYqCYQjpM8wc9zaEaGRCJjLG2+DrOLFSXWw/G7dT752ekeyufzk9wXtNb3jORvMIVaZCy1HAjOp2eD1teTFcOwlgeKrfKJqy/ibWCP4QxSl9nNath3rXcCSN/lIrjS9WMXGHyjM22HqD3/fIeCK7SiOEQZJ4QDmSLkvHhem7/cTPaOYSiJETkhdfNbCG+TSQ291F+zUtq3ZPSwBBjct1qUf5wQvcEPOvEmTUcJNJUv/7Cq4wQH9x7TSprjJY+CgZJnpdpy0Tv1zPOCSqCAmNaoCh0u50/zRYhi68ovbf1Mqzxpt0oaMY1K/J6nwiwSFzmT6DTtHpg9O+oaLYza4a0ou", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UN9p3t5QOekAsdA9vj/YBL+bp3qpkXPwd0cQyGauxB0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3kNsGLzuUR5X6jVUdI0iamL1HThhv8dUNjJdNyrgVG/qLU953EKHCzkt4UKm60vIQX57vzIm+AouSf5WrZYsRgYXdhCHfZPrBU7L2i3Dtu4NVrxysJWl893/jozIBS2dXkNfrNPau3dx6u1A2U+XRaGB8osZY4PWtgER+RXqZGwAoadhv7zPQO5xvu68JgbvW5trJwvM0jJXQ5c7jRSkajOUBY9NmQXd6Y0o50RGbuf3U6INaNGXKTpXOszDJ+QqvJob/+OBDJjY8X6tKOuuq6q7nnw6t19TrWa6i6pa8Vhi3Mcjrl7CRGqXzy8K4VGQYnQAIuSKlqYq0jZ0Y5nbYwL/CEq0zyuLviFuHURdj8IuOQIeZQ4RWPYaW4/D0PjJ8q8cyCgvYO0Axzv8Tfnoj/8UxcTSk4j+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UO2lVHx+m8glV9Yp3p5COFl2hPfHLGsXBlSwgZO2zPw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aes9Y1ZfFdXn4hjjiJN+NOfSSiHZuCKOSXa74sMgdkz/+bllr//lWtSaObiVmEcDSMWCE0kDhjjArDCaimgNLMzTUgjHuqCU2FZGLQ7E4pCcd30qQd6FRzNwRHBe4R0f5dempUoa1BIxelq4/t3iSNaQG0ixPrafLMWNkR61tUs/cmpDlhlYMArxV4adtn1cuRWneYChJps0s7L4MP4cAr3HTgNWQ6+zKIBkO9747/dwlMJFwFdmCMy2XZQcmnjszxT2l99V5n/ESMMZk+Xllie4i9VwI7um2JEdkw4xCBN4jIlYr8vNuHaId8tooQPCQcPnXp7rJDftOeUlYj0z5c4yCOzYGFHHIyG4iR5sMy4dyOpce6un3Q5HOSr9QNBkQlA8ygoafxTaHfICUdUSNyH0xgsgBa8q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UO83kUfvKdYgzPvdz3cTOC18imsc4ODZdU67eBXykdE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RYgaTAflzSOkM1zN8qNHIDju50QdKM9LZRxsu7wPJe7KR5wtLIDBLZFN+ytOBnUNQ7FyCaSWnLKsZNEPEJuGLfh8uUI3Ds1h9g3W+nLaWWVVEyhf6FvygRRDWJC5Fneh2pURD2XfDcJVULo8BOeLK20ZYoMIh1OrBe4x2BSrbe5IZb/7F3CtZx8fHT7+Za6BdjJZaMUl3q6+4wY8Bic/Rl115gt7vIawqHm1kjVhUvK5aZ+8oTScygp4J2YpiDliY10tN+tp5I0W5nIR16iy5M3rTmF0SAUjwoxDuEwxZUz/sUF0Z0ylBrIFhm0oxIoFratrxZQQSEmW52KUg4qVcIXYFFegr82YS9KPg/1EGbe0tc+uxshpLy6bY4DiTN7mIeaTVv29ssdFh/WVfcN8pYf7zlTlSwS+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UO9FVMM4TPyTbS/Yj0iJEwvF+1XbLW/N0HJ/1bzRR04", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x6aQ7X+qxLvhhkoLPw/0lQvalLHuDGzVgeINAPH7kCTk3vYQkoEIpdPDMM2sbtvHF0Df2qFU27klvrDuC9EgKXXq1ePG0K1MUJmumD5PYrLkog1pQPpWLIDbe4oxcqavKZeCKQa4JkGxwyvQGvbfxQs0oBpUUgc8GqQLmOhAgGwL++xDILMBLeGTNuz/lxxJSs9ks07rgBpZQj10dW3AP7dXWnZ0dGrg+TkDQ3o+fknJ1bAsKcX8evIdKCymUDMl2tOB4Uty5CB0De1fR7tMW1iKLNrDkRG0BWHL2Tq5MjHsVYjOkbRveNxY5CcYZB6YufJO7Wg+iQyM2eZnAxjKRWjVWj9UUwlvQ1MZienCDtiJjJOhbOYdLX5DsKZ4KgAhZ2l1CQ2IYZqcXb+2YptQ9iyZT2/RkGAy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UQnPw9//v6iNMUrHH2kYHHDqgI5MmQLEkFmJxv6FKEA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Lib9wqtfvX0IEXHUWEgl4kKaB38U6iXCTJrRCKFMgg8T6MTt5XOXa5P9JkeGgpANzpOC/tnV77+zlVs2qAIlr8NPPODh2VjnmvTjAl+CusXBNtlLY6xpL5DF/4OgOHsmU9o6q8HtRtYdMKTYtY9KRXX5w+XF3q8OWAx0ZOU7EUrESpxmhHIJr58WwgVaHGgNnEAP5jUxy1BiAaNNaaa/bd8wFHJpF9r7R06tXnaf1FbZW6LUShLDPZKv0V0Ee9RWYP946nRla92U5wwOS7/ILLo9c6pmOEYNUK8KHYEHS/RC1fJC/Z6Dl27iFn8RdukQawiF4h9drNhZL6n12CzVpbkzq+lIiuyi0gxtX4+hofU7BQQGME1yTTCvw3Q4hTlG22kjn6bxFL6Flhl1OeC4XqyOnpp+qaf4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UShI0/OQcsEMksO/AjezUhPwROGWZJ5vU4UBTMCB+Pw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mh2Y/jSSsOVYQKuzwGlqL14oGDiAcRVYCCdE7O2FckEvfHm9sZpgyAfHD+HRjlRO7Zdb9r7fZ3xSZ8lbYEIaDr5Gu1iAxDTcso+G9sYAaScE0hdq0YjVmTvICUucJPAicskeLScYx/Wq/+t9yQQx3JwILWowzGbBVevLjspuAfLl0TooZPyBE5KD71TULAUw4raCEiEJEq/FbythBq47j1P5U8w3KXdYEMypHylHiascTvjCk8AxEPsOQd21C2OimQyd8CJiseZv4HvB5SaSQOZgrJKQZPUMpkNvBQ5vBgvUXM3ecOPOFUixYogja8iVDQi7B3R10XCllWS5VxpIubQODSo1InwJ3/no728IhPdjjBN1D1kJRvp/d14sXpv6NKC1gLB9bn00wFp6avAMGbMjUqrzYqxL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "USwzqOqvym9Z4GJxEmq2qEjl+VgV4kXcRnAEiJBHdVY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "29ZPUzlsJ4xHUtBIdxnG+eR8p8km6fU2LMAPdP3hrDJ/kBYw2jMOLxrQ6E//3hqeKC24HWafdhvHs1HGznBolILZYFHVPylUs4NyZE4M0Pd/x0DmmOeCILfBjyxsloWJJfsIQYLucLROV7IXbhbxSsxkC+eqlWtk6assXoVx98TdyWjrK9oeSegrcWm8JkNIj9lOg/mP4RDti0+dUBiArKl3SAdFsBq81sQh/h+k2QMo00xPxdnAjHN/o3lagKA51NSULD7p0SP/03IXxzOV7noYETZqShBeBBFEaa5iRpXEkvwp5XPUv05MjoK/rHf/pcdAtBzIa0pyi0Tpt/yV3UlASw6rjj+Jl2z2gPpfmuSe/kYL4ab9EjMPFFu2a8Tkx8Q9LH2oOZR7ZhVT44TlqNqpEpX18Pn2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UTJz4/3YZXsc0kISqSQemNLEx3+3nogsFTZLzBnceQo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QMeMrM+Dhrp3USD/FKUK6fkSFj7DnVC4LkmPuh24pJAA3S9ERfGrLanEndhBK4OouK2ZKcd57tEwztG3khW064HZUB8AqxY2WL8GN8Doq0GbptjB2Y0m6wkuPb3f9wSEQg5Raeq5Yj6rXlCrffOm/BQm7KNl3cfglu6GeGdmFvpo6niLbxq9sc4MXyF1KURYzeRZytunv/Xaw6ZgYGMQwtVTrSczbS72tXBPCO9cgrbNJq1pIc++BaLdHWIN0/RI97pEgtqhgU0hZ+hs77oYYicbi0nBTZ0KFYXeEDkfper1W9+Gzn64Oxr0BHL0ksHWZ+oURubwJe53J1OM2yQ+lVcFQ/2nG2B7NNHWp7ClGLcBp8y1Ps6ubm6mHGhABqg6FHrkJYgxP/AH2hCUg4LqJvpBHLYUh94N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UTWoFZZIopdIB15s8154pkBylhybZcCf2MAkjVesP6s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6Kvqc4gpaNxBETNlhDCfL/VhalQtB8i7UXub8979P29iMvrVR5oA1iBXfcPX8H4IyZlU2zdDgmORHRGxncxfv20d1yFdS3T5eT4kRnRBc83vCK6redaEWHUcSkqCzih0Lvo6gEKSMpvTSZYugTWAvyslDN+iZjEKWRvofxiZ/k+0txaeoNNzWiZpZ+tAqbSRJY/sAenJZ6qaTfMOmmb7eVztuTRDFBsuLwSO8W8laI06CQG2DWadq0bYZrqiP0Fg6fOuw+ta/a9jiRy6FCK+kwvBrx85UNB61Iketrlr9kXm7heR8rfx7AuVQLLyQnLiUIaJm65eYm2HeGPEDNYNmhTnCbzU+CqSvlEE6YO8jAZjZE05fQhhiN3u0W7Hjxi+lKSA/TAumM/TtefbNmVzdv3icjjLTHBV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UTxLjXqO05aB0jemExbwuGuE0By1OTrqEPjFC8qvusk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XEjBiYR5K7sgzQaa66I+/Ig92TKuqDU4aQVtXiK9KbDekZDBhKH6vTKJIwaQxK0uo7DQ4XxM3scxBg/JqzqURdSwFey7KgHfewRjFYLCQ8w/IORK49Rquw4DcjZKxxynKTpCrFU2mRPWSdlSii71oHy4bsee1U/PjDNIZhAitrtNEaQTZFIBYhVYWO94mca/O5Y0aF5fNbSwIFpp0TPc2DA3vflejEcSeiZ42hjxBZt70MZyhGzYpIx03c3q+D+jMWtFU+Jm4gP7EwpAi6mZitcbnmBw3UTQU+s9YxGa0C024MIwP462/5AhOlPwoRS7uw/ke+LprCpKdOFPnZFphrJ0XqLwXeILylvKOw5Scau6NlAKATLmzHQC8OlumxINrkmEJGqjTw6fFAww1ZOrHvun5B+0/H1n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UUipPKVsCn34BSvxF9dvx1dXAcHXLeFQshohLcIHUMY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WVYZpdGzE1k0byPObLeUoAVRnXXBqZae7A6bkzg2bwL/mVfqi7sERKKcev8fiR3jVujJ6NRVsy+Y7AqqsvVC3XenEbrcsyV7R0za+Z3N6wedkXWCOHLyXPO4GChAxIh6AiJG4G9AeKV/RGJZFI8TwGUWf1KvqjLylrVJsoNMg4OwsQqpzTu7sIKm4pdR2hxbHaCheK+j3kqT2g1+o26Pc1+bzUG7ZdrjtVFl7JjHeJX7m1emK6CRujRPq8nkq0GdW5Jf+6YSqRvOexCHgBchMOSn+L/Ler1asxnUVMkf9Ltm6t4mCI5AdIOEU+dDxZJXKtAbAFtvKY/tKTT1vuvbxEH6R4wrs6SWU5tz3klnztFqP90r0cGqrRrtcfgJBthd7HXluIqprOUFNkwSDg+dZZYN+T7FtTv5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UUx4Dz8rIQDx3zj58Y1e4qwKshV6YXh6haoLj2LINjs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XF+ZZWGCbN/4FjBICT7fv7XE9WCZCu2KGM2a+bmjcHNrDVK94EhT7pwrF/hMp8Wx6AI6X7EDGyetXQ2yvug7XSWHCIv94v3Jau0nk5wsri851XfJv0xbXNwCOlUjxCs/6y38R3f+sGSatCfnU7dIXsOp342doW7T9yf46zZOz73jlrXj2ZTAseqd5j5SQWMo1RBU7/wY9YPOOqWPAk1nq5sTQBHZTjrkxAwwdjioS2nnAU1O2Kd6pQTS8lMvuYz+J9ilyl/DOrys7boILO/RV/UyrSwQMuA7ZCjo+sgeySiTALSJNL/6P6g98IsW+Wot130WhijpfZiGYhZuNOWNXXk2A1m+HfV4bLUAOHt+8QTbMAy83QoU9uj8aZC1Zf/XMukC4pho02OvOiIlQ7TKhzJsL0QoV/bt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UWkLvm0L3n6qZqwZ/Nx7WU2AKKpK1Y7u7q/6cDnHlhI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yco9OSWBnt5iWIx431ii31qpaeDqv4FnKG/CWTCRlQOk3xQqCkPRPSr4kH4tGT5FmHObD3rv1RgMuGyb0G1p4FjI1cH63AtgosYfN04IfLkroSrGGiGLn3gobKFjsTnfwbe4Sd99zVP68LWTmkgLD1s/qCcqZqCCjXyqLEi4/sDlwWAlTOQloeg7rUg5QlmHTKkkB0lQ0r+NOxDGEIhIejt6Ofpinz3PEu4ABQvds6z0XQnsg6J9XIhV1YFTdPrKCvBhm+bkRPQWbg+jHDuuYL5iOv/q1NVruc7V9idnTuGsds32+clQ3YZXLBBbIsgXNhF6iRx1DqFcwZnx0OgMQHCv90UK+Yw1i0gktz1LbTzjHxRxFC9JJ8mxoOEvRnpcOlpf/eIQ+WP/JQ+renu3PZF3tSLTCD51", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UXmSwZnzXVmkush67Fct4YCRPpez6ILJwcqh//bADCI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gyVvE1K1zoo4fEXEq8Wncnme6X3LauZSPI/UQq8IorrlcRe2Mbhdblbg5PlzUt0V79AaAv3Sybh47fZX6mqp7/2mCea4jHqX4Qv78Bh/qAPdAM683PahWMrrfWsH+UVZXCLxw+4eR6Kf4W0mbW73lvPH7kaDfWkMP0AIl1H6TFQ5EXfGfvnDiU+jSU4oLYqL0zr/zmWZIyT3UBP1USP0dmU3tV0O7Q+hHKS/UGX+hc+vmwSmmnyTEqzOFP9lImT/JSi8V8xHUe1qOnzPZyx/UYwRzos7OUSq9MJd6CQ5vYid+CZPZI+C5HePjjLn8cOTAI+AsdH+pAoNSD3Gayj7o5DROmnoKGdLfvZ9ek2hgAlT9a9ZNn6Em7BOlgnHKWdGR3UnsvaCly7HfqbczsekIYpgPya3/G2P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UXqEY+bieHrZCi/TZIO/gVeXoaGKU+cdYTBDAHYItI8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mhl6P5T43cARtSiw+gkGUlFhhPC9NYw6JbNV7YOoMSD4Oc+57sBNSAmZ9+Cl384Aonbx6FY7tVJ9A+Ah+ipyDh29at4ww4rmo7F3PLKzYwbul7EB/lcrvrmppBSJRKrH/zoD55rOfj1BUu27Ey7dd0xbQZNTNP2QToEfkn/3uWp3UQC6Xe+NjGj4OajjT6OOjEXbO8Z04QqVO3ZPjWb1a6pcVuB2xgVqRwN6zCw4q6HcfJNP1qolUfefIbeManriydbXM/xnPsLOzED3O2br5+uoSq+Ttna2uyzu9wMGTch96I++c6F7NcM7ZilcXQ+zWsqfl/drwBmDZHY89VTYTNILD4gvfdAoLFxH/q9kki/aQ3YKOuqEV3B0Ffrj+VcKkuFV2vGk1EbFy3UiH0M6H4oFc+IQyEBx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UXyETNeLDEqcgxF7XzJQWEBYNEkDhkazeqTDcgviUTc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7sM4a2dCyAt1l3QWqyEjKn5c3j3qVdwZGwuFeUXuw2gEtN2bUkZI3/uOtDCdRKJkV5in/MNkXMWazujaRWNNKdbKOZ+2eggLPx96FD56g431hos71yTe+Gz91bDfICk/7Nbr5JuAtk4L9gi9JDVg8o+SF4jNM2c/PKkItF8SDZ54xCMgF4gFZZwHN06pBsrFtdOP7AM4shULLgvpO0FRLLYEVJ++qN90Rq5bQC43PKdcZiwrd10kHt+fciUG4meoFOJg0Kqf5NkIzJyMa00GBpRbx2bfvF0v+XpX9YkAd3uUFDJTQt8etHEd3UDzgQ9jJM32sednYDjwrF50yGKmyTSqCklL+5gCDo7iWrSTKw2udBuyhv1k+49jh8pXCxehXE2I5R/REEJShd8CUk8FnwxvQdS3H/JQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UeKuxTSihsU3TpT0wCMJuxMJXyqXhgfCqBJaSqoBMe4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Cznum+pszRHm/r2MusidNYW3coTZ47XTbMoDrnQlJiGllE9c43a9rSgdkuZw8j9uaQDWo1j+8adDYtXA6QHCHoslveUmQaK4dhZkAK53BgxM+30bRMK3zh+RA9u5N32CzZQXzTiaDKGpNwYyFHsRMBD+l87HetW7t3ax+8PKCj7pUt9jwPRXIjL6XBklN/CdRQrsVxput+3JzjTaTRbcdOgdjQM5rIiLLDCZG/UtPNh/IrOHWAw7pl/xF7PcIhk76yvW8ZeqYXiORVwObgTbf4AoWdp3q+JuYL9p9ncLzOrdsKnPosZaJIg2/JL6gd9oiN8nP6LPzy8XPeIma/P/urScirveOw1GDeNCFX5D2F13x/36+zIOIkO5UfnStagEWaQwBs/KlGA+Kjue3fHa9wbfiYeetLHp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UeiLWodJ23mmVXAnRqPqsJRhJiuOWhqxdgMJ6TRy8tQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aKFD73AAamIJ9WTswNU8+gXmZhwXRbHyQb1RS2+H5yiKD24fSqJwJRo+NQhBAH0jMkIaXAfduuSBMTDLB5MGFPgpvGJUkGmGz6a+HemP6xvZdukLyT4icNl0SzgzdqYz5UdBUfNiJdO3DrnRv2WOmxjwfaM4Q7ylGVSIlLStGlSuMOvBfUaRdqixgs+KXA7JQ/fuk2z51pACeOYC1VYh7Q0FWBA3bsZGgzess3y5weMIdHSTM5Ec5YKjBvjvTi+Yb0r3QtVkYonpATn7RjPYHPH90e1vZBouRv6MGeO+HtVDHCBiEktw7/AjazrpwX86NclzdY9bkL4LKRxTjAv4/5GmeC0x5tW/0cSkmNnD4pUkyHv4rRiZQczqDPZRrihdi4jmt2w1xkPmsS2hIvMG4oQUlhUx1oVN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UhYstxQt/AwQotsbpWhHAzfkME6zmRCEHXMKTt/CO68", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GaaGSdeMuwEV7NequOH8Mu/da2EFY0dbi5WNCWwwVfJntEPQgxYE4jMxOmt9MmDPsS+cjSwFjcQVcoIP52Q2gN4YWF0jYawNeVFAla6d4peEEcC6iIEnINBOzvcykTlQnxVLwG+p6m3XZupU4fFOJuScXOFTttXq2zBN2BwW8mXN4g5nrItCSkrTIfDPYl2jFwEZvbKjOtuTyFZPU+0Nhg5zUQaxupPUpR6eagNr7SwkBtBcApRPrMpCWhs5jaESrWXB4v8lvzyxjiumkdtE6OlKSl3HDX2kw4dFA5+y+zN9a/Dj0T5jItuOyd20natBltMNhdHXTLcYGUGCfuCSc+ZX6Ie0uti/EDz1fYy1wieWNnXKPCsDjniHgoAsr5ECHIaaAU1maYDHsVClXEGbdC3UwRDUG9ey", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ui0HOl4aSQFIX0qVp1omM7GTGh6Jk5etce4QtH8glqc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BfDly8ePRn1HMpcwRf0yWoWoGvvHSsa1qOv/eXC74lWpw+C+Tk9E+nCUvKK0hU9zsZyMlTT3Dq0evKZ42Ra2xodw4XgaOsTPfo0N+urE5rAQYwBSH9DU5gmsbzxH63m65W6/sRKSmRgeO+V3wWglHCQM3mysrort/ba4Nsm0N6jqF8pGqoLY0nyqoQO9QLX6YJJGjDn3iaxAzExld/FB7aNCw2mPv+lx7hwA6jDDZ5nELRAVZDZDq3VBz20LfLz2wEIXxErN+ohyFs8Tg+5Q+mdAF6os0vlUDe8KMKvHdUZLclM2u283SK+w/Z2ygZDe90JyKRlu58cH6JXtlkSj3Y6lvt7tAIV1Jw8qMx2n8x/1XxbWDy7mU/23JVA/nlaK9xTpMlB82sQiS9BL8w7fQEIvsyZCiW6Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UiOrUD0RNEsOp7ph93pHF6g7JwkBJwl8L+7Cuh8LMz0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KpcB+V2TvEk9PiDKjI8VZS5p7MEY08WbrGPKKgvdHBWrNjYih8HCYzktalHvdAP+0KCGuYp85+KvVB7eaouPmoQk82CLf6J+62vl4cpwCWnliTi7d79T6n2NhYKxAKo5NDG+BCtMPaH2fB7PvDTmQsdJInudA8PzYqOf0khmMct4xvgRlYgyHwbNqi38v4pTjo52CL0Q46H5oLKbZabffU6NoSwKnbqY5isp3OEMJkSTC2VXcakC8tu0KkRQrGzeIHsBFwowciRwX/yFu2uqveK07XDvqw1GtzbH4lZZ+RXf4mJUeOdP5LDZjUMD1hZX/h5Jbbwu18bMwN9thuCqTIX+kme7gJvyHtWNDeJObWhxBR16fsoFQVVm4K1pBRm1PhZ57sJg0ebQce4ZLovJKvKOFm6/Ucye", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UiZLFmNjR6uZXG7TdaNadXtwcPj9Ci04jxNXl/hsK5k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VUyFAnpLJUqW9BcxtQ96Z7ZOyRiMbGbYzru89iEr4L5oxU0gF5VJGf1WwPZa/ktQmRtOEZZOnZguZAPYyJWakl4DQq2MdoEKKKYxydPpIRTviUtCPgGcjvS82VywmsCU6I4GxXRI57eEmPNp3VTXM8j3+cbc1FMLUimnglKHLDB3KdCWPH7aObIuzvHf8xzDjlNZin5Qkm1AHe5t+ITIpIuWbY7tM1gIU4R5oyLZn18hOU/meORB0IE8W40YqV/SWwxSizuxrDEDPVTZ9OXVpEnlhJXTuxdIrK/4Iw3qCoSzMvOk35shV1dwI1xiGAW3BZ8vazdT0oGA3CsU7uTt1joCoC8IDw874AceGCsI5zpq37HJ5dF3KYxOl/CgbgRYqn24//dP8rVr/58Nc9AdMbDlEoeAs4VS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UjAb0J43GVPLzsUcctn1fpv3eEvB1Z/uK5WywQHFa7Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W3/ubSEwVHFuo9Uqxktp+05KYc4kYnlCRkWAaqp/k+mblzFZFKxSdhJktUo4ULZ/YMthgFiGtJ2A6OJm3KcgdBPsusgdm01aXinU8yrZhVemJC4kn5klIvYS/+q+o8ghTSwrJ6f4Hj8iql2RlNpOGR7qLlbES+0/YlEMQ+7LRF3dS3I/NFF5CxC47+UDVRqj3Mb9tSxdLmFV00iQ2yX6JR8XOYpbziA9u3SLMGa28s36xsJWZnnAwQ/kC6Rs4HEKW6tAgBAH1JbxKKUFJMyPKwodu5Az0mReLi8rpR4XfBaqYt5nt3gltkH4wkcnuh1yVq7HQ5m2nbp5e20Syw1sHQO3o4T2d8dprZocrDIaYmBvTeEoj+rlPPlWvhAHIW1l/5EUQLh5GXU4ytKG83nGbDnm67V6AHmx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UkbZzpmUj5dtlv4x/JNEq2lCRzJk/fpkakgZq+mld/g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6G99x7vw9hZDoYzhxrQtwC+ggvcauaJbjCm0QHsgHeo823fO7gGTPspOJZ2AC04ZI3LQib4F9+fWwE4qCElZcvgtwwEWlb6t75WezTyjxc7frHggjaGPfIuYX89IKv/Amj+ZLsaIxhJzh4zSWIPdvRXO1BjhTVTQZSoh4PrGRQHLr/H5rqEQ7OcCIRZufJpJKXZkIGt5asjuBJ35BnRz9crQfgE93bnz7BwaWdDeKKybeiJYPopub3VdDKkduoRS3tP40/Ykrzmu8pfxjO6AUCbcUSawzwlVfqPkrGc+KyFweVd00aRurK1v2+wQk9LnVcECcnhD7m4Anr2KwgiNpGJTEl10hsMbLwjlaPHVB5xabV+Jl8xr/8BGFWHulaiJFzfB2dBIoD3eFzGvGjh+UQrFtJaUIIva", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UldxFKYxKany9KQzMeM0vOtW3BETH8zY+ZidD9A5YI8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IPpG42fgHLY2Xtb/vEGNVmABoWdzlrR0AY1ZcUvtf6uPppO13zdwsLyMaZbHCmLBZe73SFd/n0hhxSJYEhEJ/rSq4EPaOdOVKol2IpeehF8nnzqPMqv5SOUyKYOsnxWg0gGlHl/v7YiWJFfYIyWPPLFNdBt2l6geJ9+NeLFD15l6bDY178ifXb3ZEt2kOSb/7GgHEzb6+KnMomtbKj2pMRDHRwrRKlsZDF6lN0bNDcjUxU1pTQflvPz0RclfId2zuS2KNkiw2ZdlONwgu/lgkTfj6NbLRaGQMOt/p6YfOm9WUAz5Wa1KxTBurda6CB2tTVQCqDFPAN4XlMg+SuMjYZ/cC/eCqraeQm7LLa1eGpLLHGWd+3+JKOsI6/N8iyDu8VWeL6oyLc1XryVEqZLI5LxxGhgv064r", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UlpueXy6r2vIQbaTc5xiAmrkxnOCQORFvPcG6eXchaw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k7wXU8CHM6pRzs2tuFhdoubvCC76G7CshTTqmDbOt3x1OAixnJxgQHo5l5zuA3L67H5usAoP1Yd1J1VUAYzIGSiCgXvOmbfiOt4UVIjYMpXc77uH9b2PYIYQmIrtwAL6wA5TkVcaO/84yyV97hGdN2S0FlYjRUs2cfEa01D/0oy4LqKs6NyLdRhSey833lu/z/5feAcL/Narc12IwWB6QXy6s1Qhm2yHs541jJx9Se6var7tls4nzkgT759sT+Y8R7z+gU/WHz90eesqC0/ifFHduydTBVBFmPMQtM2YAQtM+kscuqCuJim50Ww8slB0ZZrAE9nP0sAzW6HtBPEjS6m+CPS6VXiFzvdRcvneZaGvNvmrvd+Qf342xK7jbRCmUBxaOLD7sUs8fSstG1IXvrlpAc9PID1I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UmO1uhbKyDh8jjoR6fNSnf+thcVkILbGQtbfGT27zmc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9O2XxOX56FhhoJ8FuPsjjMs/BGG0IJeBN+8lyga6SYUF/VNpBLr/GFm+ebQYPNf/UgVlk9KP+gYr359Vkp1q8jyPnZ2T5MaueMWV9P7EwlE+ipMLdHM9SC6zpU+l9bK8bzErf4dewBpariaIVNoAKm/EMEdlZabuEZoS1XJQN/0GoXpZIIwznKPa35GlhT2+kFkp7rEQldi7d8jjMUAB6DrHLA4CQqPSN0HFzhuyJSPuT9iWFlqeKoILLJo12Ou/DXvG8mvx/j1SH3kjVKttpD4RJ+eS+pHAEgZWGJeu9N5qiuz5IcswHy7tqFfn5sNJhy08jlp/+yyUgO+9/5f09o/G7pIUrVYhqPwWh9FV7FoJnLFFfD35kS467rEkSueyJjyiL2n/OjHqbfH4x+kudYQkgaQA5OjU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UmUsT7MXoZsvNTToGC/kBe7W4hboiDIf2T2nXzdw+28", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6D5VPmbFZxq28jg1xLELMavp937LlPMCD+TsY3223EhJejPqKKHExDNuZN0TOdXbbFyzXXwlsRUboM65YTaAzIF5BiiI1XrVr3pU89Kh7LuQjei91DbE4YUeVFfxlW+AUdS6/5vmjbLS24TYyJCowGdUOkS+4+mRPD9r5SxfAxD1C3mN2AZkcaFQEAt54wprwFx2Gj+Sr2W2WbpPWbsdHp15FGovMcn8r77JvLxQYWKjRbcB9Xwark2l7UEX13X1ivXHanrpE5jkABzwQbloBVj3GcZZKgerHXKUgX/FZa7s7PT3PKrC7Lt+25N66u4+X33p45KyJEdslmP1HaT4b6U330I5v6b9wTKpu4KjwtV+f846yj5NjKZjeZ1QBxFxnlctM3lEoRP6NI2hoP5AKy3XD4ym1fWF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Un4R6iU2Vkh960ytZ4VqDlwmFOaTbTIXgdh6eb906NI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hYb7n63c3Rk3vl3WCKkNbWVzI7q40KEGJcK8sLIuzSP6Juz90Ujg1LpPlPg/NeG4wkoBkYKij9kL8G0CrM1frpgGobrRiYgVr7KSCKfLShj5itRJ8p806+kNv5QA0OYvoc2vHEiqnLdtBqG7wqkE/qY7LiWUWbya/p2DJNnVCpQQAXFcQ8LY2bMe4PhxMaH/6XRWA7xix8YStIRSyohSCw4Dob28MH2cG2T06TUdIk7ju8VxU/Yx/U711YE40P09JbaCSaEud75sAo2c89aIZU42WLPXwLa6sIjUdchup1HHePmLzntcEwk93QAovSu0d0CCjeZGS1EtWu9wDm7fGRics5UYVIbXsTW6KMj6BN7F9vD2+Q0yz+u1SCpvEXJITphN3spGp5EPX8Vdwj8AOmdnaPxUSV/K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UnsrdOlV5lcNXIunJWVodHMnEChuJD/NT0JAyJj5rEQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8vCtkWvonOyRf+3RIVurCpSWTyUptOrgdVxS+IDH1m643kF9D6z9WP01L4YoJbLS6Gh0UhRWqFa5SrpREwETFd0BjVxCj3c0VilwrQ+ikOWD3DJbWBT9weEzM1JCVwo9IAbJrt2Oegm7cjocUr4i1IVmvWfO0c1lemZEi95CkRxCSydnaVRCv463TK3DGOqxzUA1Zii1OmSB+fz41ATQ7/Owo6YIefviX4vyB4Pk4A+GvRToVlg1WHVxeZtNT21jVsmdcgvlICx9SMUWK4Xkx2/P1mh7+wlBPMUo1bvhxJLhq9bCcTgUgoPTMlxOGJ2Bi/s5C221EcG2y2vgcWKePD/EsqaYMu5D0hcd1694sMeoP+vOKPiaytlpRfE7a8U/RVDkYRYnaHpWHoVsFnTK+0L/czQR64UN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UscbgYP/Nmaon9worY9A36emp4H1BVH5RyFD3UwCmIE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "73iUlQHob0pbAE7aED0/JV26VeBfQqVETZ/cV+U/JRCyKE6wR7lZinlql3rQ1zuu09br1uAxXBbtbUP8SmgKQYgfCrvxrCNYhKsjGBE95BAW9uY1h1uYKM+s3r5cAqmTUr1ssTZjQDYWGraoZzyGWVVE2xd5dx+LjEGYBnjvmyn1Rzv5w2MKS2d+TpAW+aIK/c5YQFwCr2dIm3qE5HV1AhIGbCbz3UlfpgUjZeYL0sWyaZWDqG2Qcgktt5zv/td29HWzmDQzdF9UMWSoumdZ4hpMSgMJ3iiSp0qx3Agh4dyqBa00EEXR5m28Z0Px1rRvI9mUKla1hpviiOZOtb4+l3D8aYJwnpyetj+pTkuzQhlSSty+MKk4xYKFbBnmtAWGdYEus/B2olwtsR7gOPGis03iUMf2gcRu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Usw50Q7LGyxthuToRtaaMNDVtUg6p0o9ca/fA5UFIuw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aWJIfMEyfWrUhCE5bfZomosal+Gg+YnUwuIaE/Booo/u886SXBrDBGdoiITBAwk36B9zrE/2evFGso2lElVLRxbhX0v6Aqil6uYeQ1FraCiemlc3XamuFKlxUBYrpqXU9DZYW2Pybe0jbEW+UgCpgh1rNjEH01LxypMhkmFjro//OhaBOC4Ic0OBznhVZ7JousCilYzDUJAeTw1nQGs4iDdzib3nDLeZ3PWX+Ndl8C3i6W1UZp7pN1pnkjgoXMMbnaKbEn6G0XfhPzlzOR6ZV0Yc9V+oq05AjVlB+HgcZtj5SZlsu4+CrLNBQGDp8gdFxwttMaFoT6YKTdAbNp97Go6vEV/ywX7y/a+Ln1e/w80+YpFELE/DYtMIXSbIsX/ACufpGLRZIFdZfaLU6DTdcVLfR6bIv0EZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UtZK+TfVR+MRUpbRc6PLGXtVXXLZ1LqGk+ZgQ5NqAIk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PIJPZ5IrnsrGPnuczK1aYQPPT6+nk0CvzkMsLsqY9Iydr/2Snkeh/VUDJai7IzTplDG9IKQ53egEvfl7nPcgbRL4egVrMaruBy5sEnMQ5P6pAC0INI75RIRou4Lekqi1wQrIpfItYKobAYnC49EBYg9JZCDzbiKGPUbs5ShfVohcs5dRM+5kRnDq9YkvVaZIB9gHvVqH504QZMMgwmpB246WmZGTR7M7uemvA6sisd3DTcFP2OIwU6B2m1iuy5Q2JNiFSMPCe+beaDaoQTtCtRRwNWVy8+Z4gHPZLPJoSCO/BvZg/SxPwLO9dmOVJp8bfSscKzZeQoQooOo5a1EF+QaH7Rlvm8lT6edGu7w87Q+21A4VHRiQ/C+kJmD7aXHf8PsoKv7+2nzVGAHTzkVBLArky524xRgk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Uulgq6pBm3jI+x/YQf2GOn5tq4on6iF1jAvYMWUcRTw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Y1CRpY0PbzYByeg0vK8emWhlZ957gQUUsytoeB2mvzq3nVE1epDxqT06qrqt/EhjjksvuWNrREDrJVhEYy1TTZ7QrfoQFgPe2hgij7zrrNARZYuixCH76vd2jWGCXbF+PZdDS2Lwku+GuIuWg41O12s6wKx8M6tNdtshg0UNs2mV+O0w3iMb0r6/M22NEmC4KqsqoIT3xDBtJ39O0c+r6Vzn1d5sNdSBhgdLKa/j3eRg/jiIi1jscVVPh4B8JN2YR/KxcFgSMRDJRs0zuvLv6Yik0ktVo2ivYkwhb3yOSOoPZICngSTrt8ieC6OOrNXm8zWo1AhGKZsEeDPHAI0W6WRXQVu7N40DRg+sJ7YEvgTvVB9hm/ZWHxp+cEHboH1ODcojvSCMxugRHaGxWCaU/ZAbqHcVwP7g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UvLflb1/38fCXka8IbUMwVh7Z9TwKXDoG97bAJdqWDQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5fSOqqUooqGGER7VMS3NjBV10JFp0ALdPscuoRudviOQrhQ19En/XQi+hipOo8NUtug5ZolVeq2wjP6X/1beqnBxPSVrhgK4IOLHZKW/iGzZ+jYP+jh0hfO4YD5NbcPHPPVdhu7TaImffQ0I1hCxZmcTdp2vnYE4Nq4wYnITtOPf6m5k4Slfg5KyAaqjfUOVOTCd7kougWGo1FtVJKjlIoUmWif2PntG4DN60VpiNv2f+XKqxJDRGGwT53k8AhIAc4O6H6KAny2GXEPcEdI1ZLN7Of0+q7fRNdivqtu/kWUsTT3/q3TyZsk7XfvOFd6cYZK2Z/HAhwnQryuapxOFWXWUodpWifGiqxPnBpN4vQhwVyQcibD2V7NWuSw9/XhWojn/18lSM959JpZLlo3j4iCG8grwayB7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UwOypOgn1K0TUFlWrIIZ1PWRfuvoxVVvhHS/WSWXW0U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AXjHopEgcZ0thbdDCcn6twpVJaocmidN5rvTbGOY+lpWfRe5DA2+IdF5Lw8rfOcNOEllzZSJ8sNgW8M6PZxPQpbxyI0mbsFvFwurpEOpeUdAUBjfD/WojFAscgd61lFIrgtJm5BwmUGGtKxPEynolpePyyQi6sC5oYz1fyi/QRfqkDAu6d7vi2T50oQhudXnueax5exLWOgnVFfQ3TsUs7ovS9FOiu7IXqmzuI2VTSE7netSdgGUvRe3vqBzt5GK91Pm2gpqAzx2Ti9aBdO3lB8+5LO+o34zwvIVZDy7ubuvrFIgt6Uo1PBJhhagMQ4Y5GQqDcFVJHrvK7n2fojgC6ZkvyFmU/nnFR0dNnCbqGIylS9vgiNrNOVCVLq4+aN+XdMHepMyi3YFcpKFbd1viOkgDwe7cjhx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Uxc64LnALqLatgwhPAZhX3etgNF//2LGN1+w6ihjBFM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y69LBmN6hFywBwWd86BmFq6vJnYbDHL2a3uApOAKEEG2HLBPDAvmjWmu6fUPAljvpPkF3lDPy4+c2VuQqliCdXudingAHbr8Tb4+5aHmVoijSey941Z6I49o8MJNSZS+sIiIjnjcKxfYPqhaVWlubYl1T9hheQ2jfj1Q1J0NxXBmSozcvr8vuFxA17Slym9McBtOEjppNpxH1gtKaqYZxbYQREYj9L4Ue/X19GQjys/MEODGH1FYcGLPVbX8Zf4d6gancW5Qk2XCt45BiAsV/nn5WhDs5riF55q8gyj9KeC9+30TfgNcBEUapEHjQDtTwg3CWnaNRU+0BeWuInXNNjOzRG8egmEeD1nD4W2uGVE5ihWHMYAp+rtK0NCY7Ht4ro7cv73s2KcQ1uMmO79pO/AxtUPAIlDb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UyrjmF4Zs/TsEMxTLLuozUSnPxKLupZNGTggx7Mnyfo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5dGuIMO+4mqN1/y0O8P9SBpo9iU5BShNPPOqtlmDaSuZ7sl6HMX6X5gi0iSmE+nap6wyx8xLWt4V++CBUYOXTm1eRZA4FRfsBHuSqnGuMkF+T619wZoAfekp5RYIVq/Z5YMPRCgv7PH639p2m6N/AWtD6EI2K8RxC/YINYsl1iENB0XRaXdYZ41OzJuto1+tdN2E9V6MQ5AmnJ8ReE6AwUHkJJ7xemxby57gDIRBrEBR0pVnh8fnY//nJ7qX5wA91ZTZTj9Dvcxqi3DOfWnP7Vv4DfJb9tam8hPiEKc01kkxsmRY0wO4ElMgRj/7dZ/Q/ouyPkul3YKsTm0OXp/9Dejd/FxrALK114cH5rSwegrOQLSAhFEkAsk4oXfUsAgzo3m0NgkHLD59x5FlzNxuLu1aZH6WrzqZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "UzYdI3LyB8Dh9CdRWaDji4eT4z5q1dPddZFwB5DMbmU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8WUVRIFD1jEsKwzf+cbMsH/M6aTJ5gh0Bo5Ge9ibAcw1efRf7PGyUelGgB+xcSpy27BSRl7GnnYFeDPwQyvf+xYBXjbJtJDmLV/zE8ltINhz0Eee0FU4v34DNf9HHsbk1m/DO3zRYT/kNud440qRY4Hd9PKCNysprYkuwtys2WLSEGxLGoT1NYkeqCO0+CQRaylXUegdg4pu7rWbeHAqpQ/SFZMKQ+pH5fLEFQZObJi8VepOyif/2Gaa+fclNI7W26xNvJn6wfk6VzzSqRMMPIRrJJS4VIpcoI4qXvztGesRUvyEp/35trkEdeXyYyjO0krYUFKJ4+YyzuPSPJYn23H4xgfaFQqw3taJLOWcl7t1aO+T7gx+qjLqIKHXxmfK4ZYepzNBk6+/jhSqR+RQsHKYdM9R3bJU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Uzn5aJoxHGr1ivsM5wdWQCQTTacqtgWe9t02mbyfz1g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a4WI2ZMWESadjPCNAGCX9BKOGYXc6DSbTpUHiLs1PFU4mtEu8N2pB5pEx76pZAILIsdTir5G7jZc+Gg9urnd7gEVzcAysbMEKo0mjUGwDmLTc6dSKqFF6H32hyT0dm58/vf6jc2zTWF1z/RjK/hVqpL8SAyI9RDDPLaJFm4Y8qFFiFyz9q3kg/yrRfAGjDX77tcEsKKf0o/dLUqJGGSIhi6nJTq/lSmWluQC6XIsQDjcFcPzr+/z5511gZXMo1PwR0u3DUVBoHcvhmQhDtu16Yp3RK9TGV6h5MM7Pbcu6Tutcl8iDRKpCqgNRdPtG+s2pCMRpyssaWbMdo9JLKapJooN0qdj+Zzxjjnc49cw/JZ9UvAGhPQ/QrTVfF/lmNVx92rnTnyYvUWpoWjoyQP3d1l9Sfw8Ty4c", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V+KIPfAXzwd46NiWwqmFmbTPfuxqNsd8V57+enb2PtU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XCSI3IoYGUTchRbesVfKVslmnw+FSxAzUDaMmnPehKTQlx4IEMnsxEkiU9xrfWSyCo53owRAwiY4mkCF2odwldTXrqsuUxlalEhHuNyX1m+zz1c+By116uyzCHE0mKUw7OCARcVOtS5fwWcKrfW5lCAxk7Uet0VzbiNDcHdcwZXiDwfkSvb5EklEEUlgNVuSDWVFcq6DCFgrYoxnKSFxt+tV1oQen3mF9vaa3bNIU6Y1isfEimPptGHVAYyx12+gvQv+2HxwP6UwWq6gqmpYI6igN5yMGxALJsFG46EUJcbCPZS/FfgqxE6AlMlQUx3tWzcOVOHd/sZAGenJCNM0gx/PVCVzRO8qzhfSNlf6v5d859slreLdm3suI3argciyOqeKXlCY4O1DovcTxFHAf9tGISvakibA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V/58laEizFkmDcTOLcWWlQAatO2B/3m+sHfkHV1m9Kc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wNT3TSQEUX7Yba1vbbOjiJi+VETMZBSEqIwlKnjMfoSWt/MtcxjBaGcNZhkoHTjTHXGUHlqgw9CIJaQTdUtWE9gBqL+BODNfFoJOMxnQsm9z5l7XUEqG7F65THSMTG3b/VSdrQehuSFxg2guUZSwkt0QtliBGDGQYveTK1WU/bdVjFxXMEfEwZdnDMrG9GLbq/ma3llAJLLxXB+4VtuagPtCjBAv1m2L02uc4phMS37jS8MBMbWoEiGSttrw8QQy8zI7cfyECCNPC0qL8woYwNZLwqE8/gonf+psjWy1vRN+g0UOrjUdLV9GXDXsDvs/VzxiTHDSffiY/tGfBhbB4TluNyyfsuHix0mvJF6qvpJPv9dZWaPhWGaYYq3TyvlVec6w759YVrKBTcb/FjIKHnq4hojZP/UW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V/zmf6JFbn4N0BIup00lYiiLZ2TLViBPvvXQ18z0L7Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TeO53c/bp81gdpqcEQD+wf4Ilym4Y96I437yja3Lxih14sIE33nDvFb7rcQk2t6dbeMR68rExk0LTWCyhHUppLw1ssu8I+5XADavKv01fSSuWX0O3I2stzb9QSEW0ihVapdfrM6GzApK24UvRqHL9+nDtMV4yYeiyBx6Df1kkGO5VvKo2NtyUS/QwN3hxYcq+IUOzDipiLAGFS9aORktgM2k2u3Qrt934y+YMi2l9dJPFi7HC/ofj1L4s/eno/wkV17CGl/ILE5C/7R8c8frzvJNm7ATBx7ucTyiLYqqae2eLphZX3Y6VJ5SmB5OVC3wlXfaiWnZNOP3xg88/WqTxhuDt+5URCLRncUlVOxJNYxyyokaQRwO7RCTsQkJVGp59V+/MoB1B/hhewGaTUGbHz8vq4XYwTGg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V0STqqx9ZN6J1UtLUGbPy2Jf+ziKO0v9sj5SXqHeW+s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "G1W/SHwF9ipiTHD0hEAc5WmUoKArBD4zFUO9Y5jUe8LCBmn38wlBih7JPN6UflDxKkva3F5zpACMObI/DbV2g3lwglnuw7zA9uGiYeco7+OWvJBRbZ7X0wO64ScUUM1TcuYI9g6HjYID7LbEu9ru/y/a6D/XlBcBJ2dO9/HmfTkvKj4Z+yv+f3gbNGQwKXnhCVBT6lZhfDzk5UYh3Ksr/GfuTDDlZDmHY9u/D3BCVYM31z6cNlx3Cu7+tDdVR5Sg1ZmvLoXscIW/2Jdr12/II1kOPZo8cuPK9eu0Gkn3f1nuGsyslZnQnImsoFEhvxY4MVUJ40wQ8zkCCVYaBNrO7IY7++Dt4V79yao/l6n9NTIHxDW6jXEiz16tryKHARR6hJNMWogGiXlxwIj6gjgs0d9PzTtITx1S", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V18Pz6Z+pgCzWuYOJ1YuoAwYLfIH16rJZplP5RZKUCI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SUcNKvqF+4HmViGD+BAkvoZh8QsxJtEzlJlfTZcsOiePXwaDHYntyLb1VRTKBWbDwQJNzSEHfWxntaLLHNeOgouw8e7Lkyp9gnmasR1NcqvF4LhX9d4gphcVov+F5HgQEr3j5x2kLO9SJoU9WbsA8K8kfMVomIIQdj55atILX42njVZWgJFLGQL6gsRQi0v6vpjRbJ6i2Gt5TFRgikwlssExkakWDawTovTHK7FfFwwaJ+WZpPhRrEDuPSkrdIW3i2LX1anPBUn+z1RkB78+0u8fd4jvj1zvq8RjC2bmFg/adafXlZ7ZMBQtkqCKkKKqqnNKZxANGzCoQbDHSm2BSchaHUY6eLLCE8vVW/x0hLeO1ee53PrB5PiCjWU7M9xT4kd07lfpT/Z9lGOCJXZK62IL5FwXrXUY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V1NjByhB/5hsz9jlzxvkzpxlQSQORb1DhhuqtAxQnxY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wKXf416rJUv+BhSa4kQ74qP3Jqo33ZZXe664IrmGYK/G5tPZbdAVt+HN5mGp0lvKNqFQ45fgsvbLidEsxnLnDk+JyFx1YkWHtTT9cQY7S5LnIt8dDKDfVPhSORM8izdi4dLVUE9YLxZc18h2j+fY622UNUq26YXHEjUP2HqBvFqRJ4Nn/oqlPnthMMxtEr5yG/iXI51FsxCakVA22+ikzJaHFcYy2+v6UDXCPxYzlXowySuJbalYy2ZHCihnYDA/uvV8+UExS1HXD9v8OZTZGgI/pJ4r/lFS9FvcgXtDUS+Jy3PReITHM3zULSX/s9nM9H2ghHzhdD9Y/BxPtX2kotnPIYe2NETjhbk4UQaDdZNgh9W3P5UpbHV9ueypsmYSsQlM8R7YdeN60CouBpmK7VO85ilFdFNZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V1qqa/eP86z5b9lG7B8OIa8jV4ibGFvJ0I5vyIbvFPQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yg5LZcOkj9V95cSKE7RS56DTX7LKgyJna7a95LfgtVGH3h76L8BfrQlQSpM4s4p6vKaMOrllIB9IZKwR/98aziF/vIeYke64cXuFw4uqVY24ol9DLvmjX9JJZNmIb90bwi1Mh3mGfr/E0UP2Qdo8gRVqo7YuWqaBSwf2DIQwWfffY12Y15J/0eREB82MtHbI/fJadBLxZ3cuBbfZGyh6IaPG64GbhEczlW8B0zZ5DszLjKhgSHTebL/To/M7cz6W9IKjUO9FOGDcoH8AgaehlPCvMH9RafDV+GI08ShP8BeA0AsWQXnBCOigcxBAfrDTQdy3LQiaTRNDbXi92aAhgBdM2hjIth6f48DNMY6TMcRmvC6cXTsraweedp/5oW3sEsHIYnm+5GUgcMH7pGvVZXANs8nd7SEe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V3KtrwlZlfAYpwuFU9HZPlt9QKG5xy7QTlwzk5TO7SQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xItaYzweJa9VZGjGNy6/MCRCJPd9fOpcu6Nto85yHoRGND8SdyPGi4e0jbKiAr6XPbaL/plneiqZoCDLehPGs2aXg31fnfnWREOR6q1AHjDv2ktXsCOX0GEz5HLSI42Mes4n4OApoUt/3QaVGv0rPxahOXG8hgLx1poU5TdV99CXYXvNXdbiRlDWV33s2EfgVitdUdENWRvJzMwfpLfB9wZdLJ5DEWiGbr9aZhj+ZmFEoKmS8gsGyGfBT4q6nUPyWslgoPfwSHIkUZZVTXSrowa2jtzOjN7LM0Eh3h1b/ygkqP1BX5/35VCwC55rSttcIBi/lwSj965lRktsN1NVtT8jozkaXJCNzAXyil57LBSD+baFi9hVcFY8385meN3HKKY+LPgMcW7ar+DFZzMM7EQXyZ23c7Zt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V3L6EpQHbw3j+HXnVFRMLN+7Ayj/VlA9xz5kSfwZDmg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NGDctXwjRAqdym+KsY+8Q1luHYpgx3XjlD2IOdiK5Un6l05pPgSq85Hu/JQyCznfckjb7pr474U/udJBr94sv1cTJeRSM+/ibQ75owx4pcIqGW9BsGWXWsAeItFmNzMKjweX9yWfErOQvt5LwGyaQoqLiUU8BL33n+ZSse4zmNU6p+JbC1j05Xscr1YFBRHP0ynoaRBwHS5lFNbOq/L7oooLbd/SFE0qpeMxdM/D2JATzEyGvaIDAU6HFcE5PdO6m2+DWp+thmXEOlTK9Trna6rhzrZRpzOzU22yYYYeM4jDIB9O8Pl5qk1P8RnX4HCsn6UTtrG51Kc/LHn3JWsU31l5iQddTF9YAWgl+V7eONP8yRUGhnX3KHsxoSzfIrh6WV9EhdbzUCq2WFGUfQp9J0hePBqThSmq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V3ZFpd6sIrZURuPYzyEKHxkQoqfdMTGvnypII3xFqjQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bepXlTrAbLKP7UnnFw2TtswTdbVAzyDNst2LHRp2Ddtr0hmWyBqVMYYANkN0R8QMk6vANek/fcpMYRoVzZR3Y5bEh9yn+ndzrEOK3FJblI3LAcuF+5mBzYhVs6pA4+ztfrWoNUnBPmt/fbAoQ4XOTf1hyAwhpdpq6XhPXQyC5TJoQ+W4t0JqeKkWKZ4VDNCwsP97aGKyaUFo6dnnjlPHki+vwPou845TCrW+HJneX4rS8/u5vfh66lHLCqCnQZdesCXZu0ibjoSt/qfS6VkAndOdv3PNkOr7To/OmngzahIxkIzcGuCLFFp5wCAg/+8gHpwKdVBQWLrcyODRqESREHvZSizBesMHSYdCXxeqmhEDLvEcvCDnGywmZ9sKopJC1KvfSyQ1nkRE3BMj3D50gtP0mtjwJjZi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V3gZDvOUpUvKJssaPAc/nKnjUksOj2iDLAfxa2ZWOw4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4dn3ThIJKix5CMrpn0mE4v8GoZ5cx+eTjXK6wxtBVjSkaBUhtAHvi+j3/6HpZVr75/QaL9d4M7zHhsh+AisEdHDy0gSNkVzrli/VVr/HLXxkCV1RC601Wt1rhEFAXM4CGVF0PTSzStOgWfzS/Adn92PZ7UZp6Zx3k4lk+Ozonj7VpHs41EHvkGWRJxylhgX1ipQ3xlVpBkly2KmAwyBeHn4HnULGkn71YyXNWvMUcwoWVyE6SJ+c0MjpwzUIy0ACtsA68U0+vIKh8/7adTdXrckY2QlLs3r0LAoa93T9e2/11T9Kharhkty1NRWml+o71QXIEVlETsXUxb1M22Uf20UWvLF15Iw08zKcu2uA3cbk6v3ETGjW1PvzwkzAWg5Xfnu8CYnW0+UNx+OFhBHPb0SQLN8srfkx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V3lDAjrHhyJWcHxI7omGfLSeOztGN5DHHDQfMHSdfQU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d+TKzVfNrAL1hfgn/h8/uusMmysqq9vvWHsasBu+6NOHCo1l2xq5NOSawKuASFlc45zytmXfWgc+Kw8UxD3GsHccLOTrlZT3Px44lrZp+bLvpthnlcV2SNnEBoonhisG6LjBTlSaDAf9YgUxUlldEC7Zh64c4TRHX61FX0F75RC12YFxs5Ddl2SIObq1eXvAYBXMQRGCffCBdQHoI0gLC+UAHZGzWKQj6+2HFfMSgEfhs6BIetgAXWunRVo/5aK5+wcm4y3N2X54iV3Oz3tZoae/kUWW/Z0tBhiydya0OuxS+XGpNyNW2JyCex1Brtx7bp6cKqTSzqYYecU1z5wAuFcWaUHJJ6pBPDnFkxii1Gami1qgpRX/z5O/DfDGUNDc+KyEFeFKx7my1+qeTBqjj5qy/meMPh+c", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V425A6PshwaXZfiIuG/CwYc4F7voa4vcVg3ALbciSgo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m36ZXjwkCCQgir3iJsvhcrUVBNTVL1nc1Rx+ElwBYNxqqBPaB+wzMCbTUiBZExmbUCVqmV4pUFGTyQLIZToClIo1CEjNM9G48tg3AZ8DA2Enw0jHzD2gR+pQkcRYNar1hW+BIex6AE7ALrf55vsyjsD8tm+XWR9XsbcBtT84VNFUG5RteFBT9zWvkVursd3v51+mRs1I1sCj74HI2YefD9mIV2yj/avp7NCMd1H7zi9A9iTEpRraSYFbfsvADAMmshH/7y14G/296bCaDEXTJSZvmZc8thyuQzANe2gw0IvcknVOF3OFkbiOhweYnSb1rJeNCIUp6SqB9FSdaiH+bN/aaQ8D4mlOmw4/EKHfzYu+G4Qq5R93+jEgW+29a/NH1g/AMaT74lxBoDDe3OLFgqrmSXzxebl/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V5LMjvmhAvx4uHv58qFDQ9oINGvnImvroRs4mh13tEY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VkBWjJxuca8oB3a5pVQi3qupvRWFrlQ+i8+kFgvMSDYlD4oLEqNADan8BXsaW32iz9GPZc6t88hiQWXFdtUOQb5obbA9dNtouTZzct7QQV9R99QAOFt/yQbOL2CnJmvfRtYRcaalG95hncZ55AN0iq9LMFkT57pTUXnrQ3hXhLXI5AyrjznqQEKVE1XVgbC56d3iseSvzj9hbgQpJnPWjVU26US/k8eXbMKFv0P3oIfsIGGVAPDXqyNRgLDteJdSgAiKbKqNU1wI+N4COzzj+LVaoFiTZmxF+ZXCJWInorG8aEShkliZoK7Z76w0Pfn/8B1f02n4ZcsN+Q/pq76g9kDMA5KPojhbmzxFot7xcjjuAspR4cKacALMEA4wHDHFpncxwXn/SJm6ZD0qeQnTESiJ876cQ7wx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V5hYaV+TsLdWGgapeltXwnK4W0cRlg/kfwczreqqSQU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fO/L+dKH9wygEdUwz7imRB8D2k5q6z6wFvPFbV23ty7+uQP6bjZwPlKgdOv6D5V2B7W0kx4zyjrOLOuYo3811R4bwvHXopRkCG6cC6NB89MzX5JXFtewTo6QBGQB0JD+VBuE2Ja4mZJocs2HNfwsIdwQx8W3s5TnRUqOp9YnUOOO7oxXIxp9YUjXWVhHBX1fDJPeT2WovTctc+LHQkFctioqVtWM4whVekKhoM2HhGyutc8hbOgsxppdu291pmp8iIzgaZIfGeN2FwZmad06hwr1mxdj1QRSPUv2Ad+QyyjxEAPGXUWPJ/DHCY30otv6PnU8vmhlwd5MgnEkVBMGuQr/mGTx6EV1rXaVYSrvcVHN20LM35UcqiBj+0efTEgkWlHeZCQKwLsj+Afllr13jZYrdkzxUC1u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V6QrIykBgdCJV/UoNvqHV7NvMzNz2YD/wG0jr+j4JLQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Pfx0MYngKCusQg4/0+dYbtn96s+KNPSaHUMH4GWBr2ecrLb4cOCjULvjI+0RiUGRqnW9RudIzIYnOE1dfAg4/x3QPpbUWIZqSh8t9ztYEqUr3ShymWoKFe5jGE5K/P+DIDq5OGgmiHVW/SFUqte6VLK1Gy0fYGHW/S1wLIyVVILngo7odehissyC+WBz28o6nk5cyp9oawZS88/2NT0AxCFEEmQfnKI2NQGeD+isISSspCwZuALQ6i6XvF0ovrXctPo/L+UEsal1EPdANPYLB+u8NnV6IvV3uXLlYiNVVvtaaggg/gEAS2AER9a6HwO4lQ9dzVSr2ObZUTTuBbHrA7FXcw6r6kIEE30a3giormRTq7SOQLvSMaiWae0pBiEwiQ56wJK/lh7RuCYgC3+ga9QEdW5QmiPa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V6pfGBhnPEvFY0A7FHzXLGP+keHXUVbHfpxQ7Z2KBC0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sFxxDTuOh/JFzc4X5H1zym03+XqOHAkYCok55NNohwo2oEFIyeRE1j8ACrqPBgVB1Unm8ew6gquGDShV45NT+t+LbTq3NM1kRpeIqPzugAeKpTWG3w25PY0iUHS4aBUziLaGdCOLv8QmKICWHMACNQScC8xYn3b6iLwsplHpojMjxv73sS4yyPegkwOiLsTNqgwkQckEGlto7D2fHoyE+lDKj7lkdBffuDw/+MKHv2a6+CcQdWxREOs5HGfI6dKWAMXmboXluTr80qqt68Zyijyanz810esGcf72BsohvyyuUrgMHbPlphmiKHEB2CZMXYiwNthY7k17ZYxRmM4kpa0X1UJhvvHtAaY89PayGZtTFIffhwBUWWxQJ3ZMwQAh46p9zh2JX1QkITmuX+GjdArrIHbnVf8X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V7YBbpasEODkc/rCaY+d2H5Tj9qPh5LNs4CDbwYTi9k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eIHQcUe4TCGfgYlPiav2HcwGOdzlYzzMZZDzXCc20kQz2cwdpJwzyPPIbP2Yg4icx2USSRhJa5uqvXs9yYB0Aqq809wBF+hyB3gXo9yY+SNsSZOGYzVMAi5BQSlrkJCaMDxzK1KFoJpAVDye0F/3vfikjwHpZBlwo8w8NRaCtaDqnnx/2BkoHQ0amSGb3Th7caFQ59srpALyg5jyLzTp0xFVZtvmSLeQEn0mk6cEZ5vj6mk+PyDN0kp1B88lwyQ/kGvi8ysb9f4ty7tErYZGmsmSVbsoqUtsej3vDy/OUKvZHywGYOwoh2nfeTvM7UbOLzkexsb9KZcQ3NOfGadDVSYc88oBSY9JNEYdBbmN23o1nFMxSMZ5t8Wovidj+4Fv6iDF6iC5YeUroAD8tDShZEQmNlJmmH9p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "V7gpVSHznWE5oFsKzESGWhdyTqQi35W+ZBT/LXQ/FJI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wwtAi5CG7LRyuaNqNSEajI5gpUjKZU0yc/VjeZGl+aBy4eBlN+55XOYBjarQRp9aBSuuPEOoOy3GWoUpVE4jX5xNyHAvd1S5L7M7OFh8ePtmNM0efthVJulkDfDf5GJzEhomRRg7bk98J7acBlHwq2F27rXF9+L1yKohTtCSq5apbkTn9gyf01QF1IX7kM/e4EvBzJ0lVuGp/xnQ2pogfytl80yXS5x6MDfUHdL2s0iAUhElM9ruUykn3cAsZjamo97jes+/Gyt/1VS0GQtSxLxSqEdvdk4J12BemPn0owIHdInchTdQpfhnD1jv81WIPMAfaP/eN3LNT2W9UHbH/4/7PSTDh60XgjFLb10APyMY9Em7uQvlXs9AyBEkw8LjgxdhU3XltrC6pJIKHGztxZ1qVx1N3/mT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VCGx5lHiKMcqjeiJOm/OjOjeoGJiJJiSP6Ajej2GZl4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PL705KnlDwudW1TQBFPr5nF/MVYVhQtQKbtSsmsKPPIvL2Q249AsJtIfc7Ps/G1ItEkROFU8hGQoIOl5w18ElL6bX93++k2RhZgbS9fCklbkHk1GQpV5oemzUjAuA5eRrhnl1PuM+r4lQRl+ZUKIJTNlGaf1UgdnvOf2Vj2LL9nF3fGGQyik4aD+YkJMdj9hTolocUc6JMtvnfmLqryoAqqq9xf8EOTLN/Npn+2NQDtYTbaib+GpkatjwXcGgwr7QN4eyp1TqPizdtZaIbd8BbAUe+JlYNVumDRFlP4I5uNY3yMfswD2Ea2I299SHFZagQYWCr7Uwiw/U0nIaVnJCEJCF3iY11Dy8n4OO69DnbL8HMinWvMJesGvfRFhrXuzyJHiSW6W3+UkOprtGqlLVJ1Y15Ji48J/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VIr8O7QTX1oIzsvi6fynP8xw9BEnwH93I8cSB2fMwKI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ksTdiMFcuIlw4EHPevOXHRihlakJ/Z+AD0XyOZIEo5ok9cedflx9kyb/XE6bVstSwPBSMrgexyBUbim8y8wJ907EaxBhExxWKK/+AgJNrN7UfHbg2cC4pfHCRVGC5+L7tQXGKku7KYVb1gdTD6IgY4c1wW5DXBQtyHL27EDMNCiY5EqrmM4V/0UJPKIoRgfqAWiksFPc5bEONeUEhW8EY/WiEvjyHdcLwRoKt4695xgrWW6V9s6wussKbuPUXteABECUP/8NwWbzGO8lAkzFlZJRMPIo65Hv1Ms5RQpBQ1/mtIaQEHQtBk19gBYHbWqMY0G3kucfWXQ4vpYLtYqOhsm9E0K6CbVb5jdhqodwA4Id0jwhebnOMfnPY4HDdSTksPRQN3tUXRCXmk+0lkr3LnDhGumLbGtd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VJZ3gOlhk0CNbt8bi1DzGDna202hgQIjDj3s3D5m404", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6+jKGsoSgOZWY3srXjaXaJKh+Lx9dytmU2ZLMX0jj2ZAw/H2A78GKlQVGS1JE/wLz4/vo+RMRmPicOJTSR+Al3azO++Co7RSOlo+fLr6xEZD/sGbkcMi6q5r5L3+Ae4MNPgijMmOoJdTco+qG3fbUq8yEI6F2EV5MsV6Rb8yhYPk2bSvT8lI8fgJ61DPmRAVwGzsSiY21mENkcJRPK9SI/T8zEWhhsPiKF4pQIbPll+PPuGRRS6Z8H8zBhlQOX5w8/6x84utPsoPE8MPWcyD25fVT6wjUoOzpAk8je4XE8BDPufG1nJCOfioDdSVvGJp3hrmlB49VvS2GxjQhn3EYP2Kr2Yz/iYCt/gSKVQdOChJrsd8Abmmq4UEWgt82HI0YEZmU3kxqJjg2pR/zj8skGM/xZLGXCoW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VJvbL1sbV5F2yeajJG3F92rXeZnN4elBuUbWrl85Cg0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ySyf2StXSP+Z7vwirs5kRJb8rCOZmWucrPJ2GBT//dAWjA+wTZU1ZFtRkj+M8rnqbtqbXLIgjwlyTIUUJN30rYO1tN/IB0M3Jnzr/McUcEf21R3UYe2k3MKkNxeAVf1ndPUd4ksUYNRYaRXOJ4YOHMtrcPSAP7tno+Glyb4HFMyj8FYzrfTpcTyJI8c0RYHdLJwvGDKGiRfUozGscxs7mJ4zkcY26ozIOnKh1qKmDwUIioV6gimSzndYyWueil9CDAgbKRiUMsVA6t1SioHQqneiloC1mQy12EH5GYrYgcBN2y+V4s2WW+pZMEpFR3cz/+eroul6lqKt7PxEUIXJ552vLpC4dAs/EpCJvmWtzFFK1uJN+qWgtd5AKzayv3NAvwybGzC9soAOQ1d6v5jWncQwLg7uZ8Xx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VK+c7vAoVVpmNK78UD98UnZ+xILkD/dt7U5Pe4rb1y8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uJTfhrV6B1DuxetZ6JTwmXKnY+S9z8Y68rBKV3tjyfISI7tE0c3Avrd4EXtHJ3A+A19RFJTZmr3Yrs+P9YB3SrGOOAigZ1tKAO2gwtDNhs4EZyntTQ37asrgBqIpXNwp3TBsO1tqhs/IMUBDQdeJate9UPjVRd738P2m8xMmieTM+LUjC5ISM8+QklFS4aOhpmuXU0Ul84QaJy4JoisVGLRDqN7bSjKa8HBTz2w4lFlDa7qxN67nl6dmYqZAz8f1ikQUYHlRiRijA6hHvjUcTLaEZLsAbgcgOxFMsKmx/DaIzlHWTXaXcnSNcCQ5DWPcTS1HpYeGjIjC21B2kcE+WiNBwaPzk5T2dx6XShiyvaD+PMGLRWvAb6v/xVX7Y/yInbPiCnjTshBrw2o6FNCLjqxQNHpZYTgY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VKA2Mso1bnU+ZSBtdIr9mfbo31Yhh7uoGWtcUM8uPB8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "91L/ke69H9rQrjjbf035EDIITiEYXTe8IgR3QJGXqHk1PsO/szyeG/eagokJMnccskHceBEdJUy9879Ku4QKfEvJpDR4gbewEt/7Vn2pcJWR+NGXOHOAUkugRbOG/fwEh8ICmlMK6RaDTd+zsZHV8WE2xWwx2pmC7kyg0EOHHICDxhX+HBiD+x9qIgTTGk80epHLnw1zTy5F1KF7XVDh0jA74QF3sV0Z6HoZKNEk4FlUj4j5GlTCXvNA97Nv3Qfx68QUzGLbQLNqKadb9roK5IC3K8oKbIRZVAr+cOVQvckPzCjAQOZ+8Xcs0PJLCzvg4luno4odGcGs7v22WClqTQHHLElhh/wNi4u68ShrCJV+QsTQmFDM3Mnx1azG28XnIOYJSxRMWuTeJRZq2Drm+QkO95+ApB18", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VKbNMFDavYT7sViiYgubBnS5kUp6gi71DFrH4AU813g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8BgzQd6HkfnkYdIJ+e6i4iqbvLUQtVEYPaL1xSemxXmEPptiD+dgZbfKFTsB9gR3XK+zdfYSF5Ppr7oZ6MOSuA9t/T3gipF+88gfad6CbXck5PEQmDxSczcTehGh0QQMIUziogVKgHery3pj9yNZ/1g8oz8nI2K5c/sf7G7LiqcwO3NOQginzPpQhV7rOjtAnALOTzxuqFAmG/BjMSsZYmhOooVE9tgQunNzjBL/UU9t0Q64UohHFLQ0yWyJ6xHS3W7sIzCTDGc0OhX9RgZTIjcY5JbDb8ud35Z3k03GXDhU4h9x0/+ggGwF8EHKrdo5RnpC504YUU0n+9PXx6wqJsJ2eOkHsryoWgBkomGjIY0AU/yXbpBR29FQO+pXYb8nLHruT16Mm1MgKZpshBmiqUB9McQB0o28", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VLFQoOmwW2GzAVwY8Zyc0XnN2pU8IbPgyQboiOEJ/a4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YHVr8Uinj+X8AwQjy1V5iS6qAUW5yQfgTIDdxi/5a4eHCHE+NBMJ5WR0aqpnn8Zx9346fdEA+KJxuQ2qC+i6YkveKVN4jS4l22D+dI3xZTF5FNq3IzBlu77pK+uyCGxnpPDZfEGb0cSIQTbqGGr29PMeuHUd8bCAJaUdmDNg1QkQmjoEYuzOqSYIKUyKKvGaQw/+CovE4RicXEq/bGO97KVMaHrTAWnPQ3t75KP7K0yUp3wZ2s+TT7dFwRQPmooqt9fz8qDjWm6OZZ38Y7TVLqxfy/NcdJNRPHIrfVmD/P2tClWhVNNUZAgJ6wEgPsg66b6WR1PC7RXCwSQjxH4FJoDtxG+qKv6+TsLGWJBxJCorg3lpLLNSRoeChwmfm8JPLOQVw+p4VSInQGVnib8hWbHpTbPGkzEa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VLtt3KpaXcXtYeG7vNKtY3y9sL2o6QuINx/eB2LpXu4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YDVa5O0ILLuqka4AZBWWf2JcnUjZGgWuErXAKsKR306ywrEiJk0yCI844tXnnVDdPhemN66Ms/4h0udArkSPSw8QV0dZgEK5OdBBeeMVhquNwbkEtkouG/SewUeuT/90vESkCLhOtRVeZ7QZd+d8rdDmjA6Gf8Ovs9C+FQrc0WkAARfmJX8mX/wFzIlYCk0yGlafXIHnMjrHx2RWwAI2Qi6zKDUSKkCjFb4tppcb06fLQGfBFh/NyimehX8zfIbqL2cY1AFXAabdrTpkRN0saIOD+VeV+ud5Wr23G7s+UFPaNxZHtr2cmBI/Dxped6jy5FP1h2Em1Y9tCLBHnGB1c/a2lV6hh7HImyA7qENsl3MDH+raB+oxQyek/oixTwaVK8vGuYbpHryE6E4B8DaqilFElXSBcoRG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VMq++ib8b1K/aX6xsztboHghl3yiPwEPwe3hfzpiEWQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ham1Tq4pcXYYzw/s/c+bNAQj/ZsGSK2KejWDwusLjuEVvKZarA4FvfYCjU0Oute4HLlU6hdJ4wvwYcbhmt2JbdrMDCy7ZTyFNj78UVpumgJw+lcmIk88GJDHR/pb08lpHVqOyXSYXVVGuo2KYGVxCJkb/pwrEcdsgXbr68rLVsTQ20hkmyiKu2qO0dYvFQBRDA8qIUmDOiEwCS9FjNg3+AtlR05b7VW7eVUy8pBREsKkYLoRKxLG6HUXEPoLIkwhG+cfdzdX1vfBLXsIgKsY1FUHYtZQfRMuMpy24fS26fvC75hhl2hp7bqr4FkLOzh7bXlZREZnbwNwhxlhv+UeGanlQADqRw77Sgaqh995phCpTpuUfNimmZQ5zvfsMFd91nrvdEyNgzg97WgMz9t/CbquEvmmhL9k", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VOmAeJmDHanz35uBDY1CpveNgtJq9AJjr85dMFddksA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5JpN5aRnj1crvUUKlwzWm/SgdNlOKGkoXQbREVi8/xdPr9eZBW+9j9334oNVoI8wzHb4RePVTCOf5G2AvrhD7PVu6DU+k1Km2rlzWADGnzOvJwPy5rQGrRRMb2CW0Qh8RIlSehWeeE2onYXuVr84hPcqWbVXQ6UOAtUQWpxmwOn94vVeUQvVOsLRQjpokUTesugAYf1U9ey5EK8jtMEug6zfcaMD8fpOiLjmpvQuEUo46l9CNV/8j4BNdwH+sGDXptHHtx4+2KFLrJeRAw6RqUqLK9MR1GhrvolPbbaTDA6lgePQ776Jcenkt79xG6FOtDV0hfXcgStPibQ8EX0DX5bXZouoGwnhMhzmsUSA7JbNrI/qpnCKsGmg1ADK8e02ffT5vr0CKSvl3xKJZ/KqKf5F+krOmIXD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VPVYwXcvhoLIvRuKG3UWI2ibLk0XaHHsaa+M0i3onfU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Flo1c97klFxP9n8GP0nu83vA/zNBP48orp6AgBvNRqfVPjhYAJiioBwrk5DQTz2GO48N2N1yOBXUytvqhMBwxq88/obqW6cC+e+BngDImkMjgpYliflfAND4JgnR2ZzdXVVEzSvG9gwVCLmGm8XdCrtslHb3d0eWXZViKLnYwY0FkMz5mmTyX6NazM90OeWU8Zeko3VxfNDMjcEgJSuTR2/eCC5ypPUtbhhURORhmg8laTIW7H+T0LEk7QlwuDwImDgXX4b+O6aLd1oSgIqz/74+8rzCIoVoDSqaToJM0wrom9KDaIyTkfevpRTcv59S//tQctae0LmFYdIilAa1psyt1b25dVfD6ftTDcAu6qgVdCZ7L7Wg4CGumr38F5VCnKHtrnNegzMPHXJYJZfc8+ClUyuE3QQs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VQCnWNRsc6KeE/T9t6yjOp9Ci/DXH1F/lEU2sdn5Kok", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zSAxueyqv7mrhkwFDUoaCkLTCJqo3v0rG+saKmuGCNPLMCJ6Y0CuDCP5IUAMDJJtQMTwWri4L9q+mIdlNMFc21+z7zKlgD9/apXXtaGmAay1yT7LYqoq2HKTNmJf6V516dPb0HqK8IkOjlJ4V5ho5KXQBzsC9ASUe0zp/EgZadbl75oR0QyJ6HpP6BuOE4I6IgdlIe8+rigcpEBZ3/+VM7IeE/raLEC3ym9yly6bhr2zmOLZr4BRUkrnzYcP+0IcRRYZBIYs66fU5YVCHk9xX9ZhzeqaCaRf/JjJ7kJn9ql2r7H9+abtWhx6FuTJ2ybVGCEQpllNX60UElH7VK3p1bngstgP7wKrUNHLFeIW/JFYOMld5waI76TwYmfyQmrKB942WTqTbWZ4oRbVsfILatSNkpU5jR//", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VRSimtkD5eKVhSv3MCYDPfj0MZJ5KFkM3CP0wAVhYvo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kTZk5Y2tBokGnKR32n9E33O6ixD3P9xYOZxM9oiAx0xNcEMrPXxKc11sVPynBrn6+WdTP6KS1z/qDxMaXJBYb6UAF0kJRcXEx870PeifpGssgPHa8LCIbvwhRuuVbYBFBo0/y1jk/zbERVdHFK0F2COvd2ZLOCjQWy9IeK5OtUngDFU3iB1troAOH+ieTZUunOxuRlJDRWC7JxJOypyRAJAxCQ0BXVcv9zs9F4Ep44PT/hJEDJktvyrc6fO53+qfGLKxpXizVEOv/okp/o11j5PbMp9SBk73xjY+NnEL/UxhFbbBy60ufUGTBW/is1tro7/CZMG7J4R1fnPdTqqNf628jc7mOh/Vqg4YqgzO40g6yip3I5f1/hOjbmVIoq0yptL6ctGUbX0jH7NELf63phmuHa4BLEiD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VTO9uqJH8XoxVhJpJduAdv3eInyH24VxZXhscCqFvM8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aqLff84D6jeW6Ki1RgeKhhmNs6NXFVyjkiK0fLgpsWT/7iGLRWBigJI/hE22HUhVSRLAI70+MRYuc9vLG7gZPvLQ6ucyclYMdT6/o0dupEXhb9JoH4tp9SryEfTQnVmJ0xs7VNMTbwc0/EpHSxCsJq6OW3cA5sQodoLBKJUDZ0Ex2TgZW+Pi7cWWYIBYwpU/jbRBmcMwOPqWdUCkzK+MXSvuLSOYm71KyDi82tIjFmIDQC+aG8ll3z0sGbRoIqORsyDkLKpZ+Y/hqmaLgJ1N/qx5lcSCCL/jFC0Wi9KDIfPMdaCxG2I70HzuzMyXcw9lE3ZMKCBJisT+jTWMjexQFfkVd0XaByA6J6EwORRlDC+RHrpxQgd0ST2zSk1JdY03DNmQpy9Z5Yr34RgOmTOXiq0kqoltovKO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VU0S9+9Nl3n07G1IRWpDjBvpv5ZT1zH8WfrbV6icWEQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TM3Pheh55C25tMnKsIXyDQ5NX4tOgQi980qgbU+0VzEDb0g+iJrxLJMjcpwu/NXkKql57jJHSKIRwBJJjwduW+pUwBcBAe8AjqYO2UqwP8eBTEnf/ZGfQKY3S008C0y/QZuGSBfe1aNa07Yf+sB2E4v1of8hGZ7H6Vu4xfrC4AGpAzdpi1amqkZMywV36TmVp0/x85fMotq4p9n+06ExHo4S/Fr3Ed7kY7xqowaVrJPPhTmDq+liVGCjATvZN4LkZxXivVKvNB1Rd5nI0OF7z4FnFeh/Wvv9XF06IzNoiH4M2ZwfTAxdpf78Vrzp8YOZ4eqFD4C0emKX31P81qpSTndAQm0ufyBqj05J0V141zjAMyCpEU1+uHsVaHcULBkR/+Jlwd+HdHqORQl+br/cwRecTtcFX2hy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VUS43qPsW1OIeEWB5f4WALOPkKHqGANMqIzOA9dwgnQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MgC5VdKN535QzPZF0n6ZD7pT9PvrhXYFHcIb5XAXlqB4IG8quYJqkiLyxThy4WLPtGqqb6woDY7Be/8saK/3c0+SgxCvhv+fv81dUkNsQGNmCZ6RAnST1iQVEjEzBcywFH4E2PvV/sweA9t56S9zsWykDg33EJNuFvbgUCr5qFJCsfdFZWF+3o/kwPD9oDTpyCfnNTdsVZU42SbyEd30X++nVaY2OrBZTEviiuDNbGx5s+R7XpJHyb7mg8cXVvNSMaTj8ZA9yyH92Rd8C5n/LoH/5aPUR5HILnZPUg6WyNQjqqdFOsO4bVBqGTPvVqZBTYImB7chrmP6x65kL2ZZY1rthQA3WA2rXZYEQcqwGumSN011katbNrsnYYSifWxb5g3EbKTfgI4PTiNGA+ap1OHvcNZCe5nq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VUUpDfnmvwGwi6k+4b+GW64hOL1zWaW8W7AcFBQcCD0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qfVE4HzGqR+LfagknSKCeNSYmAOeUIto1K5LhUuAoovQHw2Buy8XO9bm+51ym1UtbBSLkoePzGOli875qgtyJy7Q+b22qPsVIh0TJkdW7iIj1PP1ULTjvwWxYbKNgwdsjwmsnkK5Mlmcu5ytPLc9LNpNlJb8MCXpozrlZQrxsJUyoGG7F6V1BjQXTF+MEKjIeESCADTXp/ftGneU6bntHaJrRPyVBM1S352Q8YlMKoW5yQkBTvYh8L9vOSzmI4PzAET1STLmiEcwu3sH+E+V6NLhvTtY8YlMD4zIPkSSAjJN6x+k/CZuH1cXUDVVHOY1tYrIqtsFyn3Wa7afp+jCRxiu3aeY+3EPfPf72MDIyChp021RC78dRnUzOzUJDwpeEeQT7YVYuJfgtqrEsWTGuf9mkF3w8xOI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VVHz4uMScUk6plbZV68Kv1xj5jwMBE48iGuaO7xge6Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yI/m5vaJt9Opd3g2pYH9HbYdErNkoNrRUq8SzzUmKOsu72b1sBU8UCEfPNS2LRajAwgaeGKxpikEPwjeeEgQvl71jM9BDyXYHcUzlB37FjAbDbI2vqQ9ZhCeB4kf39WAJLbm2pyoNiqEOCM7POBIggmVP3jtrCgfLnUk1JgkT96RTCaQDprfNLrujtdRJehdg1LVhb6/gi/Jm5lsovtCZuYq6EA+wABIJdmlaY7wdLmuJqwlR882aQdJ/xYBv3HkS/KMzis6IhGqk0u4v1DqnHbp1VDd+nyar5ngJo1G06wECTIIWIyty+tYxUzGnvLr+bdvONVH7+JtQ+Iv8qUgvc7IAaH969b0R5gaXuS9J8o1asYUKOjU9djDpgVrIKImrYzdP9RoquUV2cvKW0uPWkLoYsePE0Ai", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VWvbQPBNQQnxvhh6ckPn6Dr7DFdgv34mObA8Nd/IDpA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BnWW0SHRlgHQw86FOEAwkW37ZtlIR2r3OKfSOl1zfo0GWZpoHLoaNMW4WuNd9LK//VFuTF9y21NVD5qkN7hUhSWFh0vwqLqTjdeNBio7GG0wm3WBDsvvi3o2yj8ioSUh5k6wD/wQ7dDmSpngzQjVJ/Odcp5SPDZNi0nYvQk43omAdzJiXza9yzB5fvWyeCL3uGpj6m11NtlpZU3reArW093X1RRklreG/0u7FnqODbK1MebTw95TISobq5gcRpWN0MhI44ShIEKY76S6ZCkJcDFjD+Ul3HWSiOwOTaNSuu4gE1ADOIwbPu+qiUOVAhorfj89Hijba1bjch8rjnGpVJE6NxzhnDGMde0D6f2PxM+5NP73CewlliIfgnbPvlzelszhl/CU7SbIwtSt7YW7J0dyo2hzQaab", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VY5kH4mGVhTlWEtPrf2IcCnVApiqJ9Igxjr7LU6ZIQ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8Mj/7qaF5e0wfFimJZqVjF/7xf0Gs9Xf2D8z/MlscPRJbtZ0M4YLVb81ZbtvyqNt4FirlNon2iU8yYm8h7H40Sm+fZTDO/Y1hEjhQlu9KcyliV0fC9zhvv8Mlnu1uFkM1TpdTRUgrJ1MpFwSo3bAVNO8XXB5t8iIRgJHWCkgBbiu40Np9LsYNL3ImMktPRCl+Snx9AJTiFDHDwbZVa8XzBcq2rGVPibJRZOZb25wY+gVREAY8QJnPfqL1ow69Uuwtrzc/EfStPU0LbXfATKuUr1EDJS1xR6/1GfMoa1eZ2y+JG5nc3PpnesKYGhLit9SBiW4oTojwKYoLlds0c7VUJEY2sUhJq0+2iAG4306zuS9nNP8fYgHQPTQq38gJ9hElBekpVclKSXJvgm5cyPpRnFhDXtMBKtM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VYmf7KUQGjcyqi8WXndC7olor9s0UabcyQzO4gcbTyY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dfqDsqfmud0h2CEKwO4+EvPGfcMDIHhGu+o4rhvKpdSfOy4mgnG9wVnXFAHUvqbNvQK/ehJwgYX6E6wYLrdSn3/VdjkwRbrStP7NfhkUY9e3iTGUrwIg00sLAYIJGXLmx/HDUxblEApcV206iWvLN5ceNnMm2s1Rv1AFB4NSCE4gGYvVHJq7U4AOpmdyOdHnBMVzF2NP3ZJapHR2Ab3GaU5PI93d/nvkBeNN7vL54gL0JkvykuLKZAzWOVYIy1x3V/q9yqrA5ilidAI4Z+ppZgfEEDMkpcYWZF7buV98od874Ohx+394yvcYxBf7Vdscsc1d52G0KhxUMafB+mw7uqE2Wu4NspI4xO3xrPXzkHUmfyh63OMUxR29PaUrcOFWEjU8iE69/fOu2ckB/tJ22Le96qsP912W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Va5kwtC1mJ9V8U03Sz5ss4QsmlLLFB1LYYi5M7EiNtw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8CJz/q91gHN+tiryZuFePQvt10A5EcQmc0YzFXUThtytPJYPIi6YPSOrke/q9Hl1qyWcl23AUhuzimoYYQ2esKyi76LSNgW+Z3l5XxngKGl3SMrybA/eyopxwaf42rfOnSUvN4YgBmNLlfq6ZcdDMempsRC1qB7RMrY5+R2l4TM4hK89jmgJnGvqwiiWjkFb/ft0OLwEc/i+qsSEtUJSTC9CdiG4VMc06QkbM27Aqb97Kk+NLMLQcYZw5Dpj0VDjZLKsIMvrFBFEZUG52WC7OS3R/spEJ+xKvwtr6FrNN+l58zWOhjoTsvCpdBQeXKHPjsyR6uuiR4nGUP/93JEZF8eJoTr3jqp9kbBTsZOnwl3f0fOUcPuqaaDOr6v0u33K/NQtY0TgCVYIA5J8N2HppYmWzyBEFg5K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VbhOyzekJLbh/gJbM8rXwtWcwRUz5QDDW++GrW6r+Gw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HoKT2Eewqa7XwgyarCpTk7vC4weobuKBp6QHBMN9RLhTrnzWbjEm/LaN/nICSGgyUsfKiVDnY7iBo0OmfDmzc3V9Ttxn/s12HfBlVX8xQKDMUpkG52VuMWQYuH72TzxvIVYRsposdHepyWmB2qI8vomGTmKcHT3zBJ2TFWWzYsC6B+3lCtv10N23/RUzlW/gVcP/xI26/+vDKe+c4cAvC7DAkfM0beDst+meqiopMDgU7y9+qUVmoUF3NXHRg1RzmZ381XkQNiJ62ri0dN4hqnfQw3dBTiXzVZNn0njiPR5UzFf3QMJ13smEyilT1+t/n9qIWYrlSlwNsvFWjGA7Q8NBqQ4OV6BmUkc9fpbMhKUJi98rbWrtpJdIPX0GopozbsETIn6oTVpnH5CYtjyXpqpR8QzFMyt8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VdG9Qal1a2ESQswsr6iSSXNn1JIVExs4e3M427UaPTw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nPsG76t/MDqXWbAaw7rKCQ+RPR4FYMtYfcE3rM7AU1xtdfyYZS4IQHJ4dmReEa0zQm/IEbTs4F/XzGHrgHgasjG3lvAHOWZLgRZbQRlumkWkRHUya3Ar6sHy9IJVqSgtVvK7raLrfKzGjQVnJaQEupfKfh1+tVuiYhqfHyuhCoxrblYUexmiiHkX7ArycD1oVcLVtta/C7A3RkSpgFkiV5o1xAyxX8pnCDggXwOr+FSVVs9GEaYuReQ1mcYqS+270F3r/C8hZl0+YAY3jrr3UuRMYLAZbv2rSGmJUsdFxV4wCmFLhPzrdZYv8C2IreTZQ/iTMtkXm8DuTdqddeJUVWlsJV25hDQX6Hw2lwrmG4JZubqWWQnRdOaqJtueCEp1aBldqBR86Tv6aAeJWcCdP6D3y7lenrQN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VdI22q451eSG9xQ2Cl01d0C0rihR8Pey7FAWD8zVfaE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MKckuyM3ulB/9ITBY6nBRgIa4N2ei/maa64mr1gIGuGu8EQx7e3W5iAXimJ5KIKaBXL7MJckGqoXi9zv+iOyE6veQDdjrF7B5ceJKj/lBGNBfD/W6asceeYBSgFhbKRiOAcIBxDVnPIX88dyuQ3q0yDYiWk86wwhLwgqDhpcx2nyKG/+kmQKAcndDYQwmaBUNBzL+oCvExakWXOJJNE1CKfK6uU2Vwm5ig7uI4DRsNPi79R5Kk4TVkmx0rAob+Y+iUDU6OwYVGRZx1h35trTChucMH9TR8nP7AVpOjJ0BCPbCKPYnKj0loIGaixYNsR3nHPRX8qc+zjz24P26nZKH/VNdysg8VPTlB1Nmz1PdajTOv4GvDqXj+mDIfI/qX/tC6ByEAav2nI7Qyiv8MjKgvPjY2YBtTPx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VdN5X/0SJW2fU2XdCCkIDQwlBB5GFk4w1p+NC7kc/lU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Uig4lUr3vwKis97VpkqguH0s1bIkA2zv+GiUjPKuoA2Eh4Ji5NZ2tA9U8e/InMjsSjrMn1CXC2iDOu0DW5L+T4+banG5to1iggisLG1LIexoaUAthruKhjw8jgVwkOzufzzPRP7zIL6LEgwpnakB0eEARqqK1CtsgunZqb7cn3g3SnhsQEEgP9AfMfu6fpzaYX3dvENel9lv0h8u+7xaG+WTeqWyq3s7VAAlZSNoQlPqdMd4i6jrU8tSHFaqSMpH99wfDas2D6WarPqhBTT62tY/yajnvT/x2r7/eOasLbhCSAGH//UeqOuIIJn8n1cCwWN/q3i0a4AMV/IzmjQhBLvLLjr196DVY2MzjSOxyW8AmgkxHaSngu6peR2EwfkWJCHGPFvKP21VOxXqHwYhgyLeUdVpIOZf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VdaCwUTJbbvoBKIJWivMtZ2JGrAGHcARs1nGEsyzh4o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RnEZFetgAujPJ/kYHtfPWNiTZ8uXsvjzNxsTpLeTFtth2M/vVPWkvD6l3DLYLL+cTrSL2mAJvJinJTGsQn48yNQtgUR0OIYLtdT0sBPcmwekhfc0rHYf0QEupxFVGAybVPYv6E3GlaK5ReWanb9SLc01CWRisnc9JSXKj+p8Cqga/qftzt3Kp/e230Xq5P+2uY4kSl3OVh7RzlT7Fvh7NilMwi+kuizrtIEMmvnbNphtbskRX8u2IcJnZuWgF/gFanQNFPppcHHHBPXDdC+WqQZyPwLJc1jDKstIxV3UjSfZxYZRGI7f+qRRLD+/ZS4nMmWfclPPtzCDSbqYsoff0xUqNLmbKHKTTbWbpX/DfSdcfd065zq8Z8akZZIFC7rvP0Y9FHmOhfiWWzw+oMpnmmzbuuaEuCAn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VeEdr5dPYRho0nQv5pCB/wS81NW4aq39//1RvYwwAAA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SqE47mAIj7RGXnwRVJ2OuYfKVRJKXkf43oAcyaZCi6vrMaX7v3kjte3SuLRTzOVVeoNJdgqo3oGtuCiU0/vsNlKCsr6+qc+CAILOE7Vn7jhKw8oqh7hBUZOpfG9yCDISOir2WjYnupXnFrZP9hxrGeM0rfBNNoWpcZC/6kTpbtfGfHJdx7P2VFa2S2GG3UNgbXKlKsoV6+QGpuZIMDhs1/pN6gc3QNVclWdvcP7cruyH+Bz97lLfsKp52PhL7tgC24QwWcUUhrnLQZKIKPNT6ogT+13CzlDeWA1AuRhLt5x0fFiO6QefIYUDJSFTK6IFE+D6Q90wBcYQ557RkLMjn2eWXkmdG4giCBHboVcbG76qbzqUahmFXLsGAYnubZ3gT44pT4UY1MDh45spar63Ib1eK3Q5HjIC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VetCi/V75+r/+Q+Afqe3t1WrBifUpBjtc+W5J9vwqBk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uKo8CXb+MDhlPizfnbMuqKdSnu1+u4SKbuVFMLB9ob4YsQLA9L94AOjdJsrN05ujN7hjTWWWGJzWpxkHRZ+kIuE4mdmWIjwIIIlE9KkyIxEDI7Zchvq8fCKVDm9Qt0lrfgsQ3cBX/hx1oQqNfIv7lUJ5oucntVpPRaZ5qBZT0ni92f8yAATzCyewh/Abvfh4OThTbPuMQhDmZZK+oNhwehp7ZuKqxxMf24Q/e1OI+cR4xUdJyxuNzWGVe3VNXxm12o9F8dLq1fyw/mHV/bu2x/8ii/WOXGBvQ7WlChxaSyFagLPE7f+ve8di3nXUbQO8Ufx82A/NemnGVThXLB7JUjpPyY1fWbsYlWswVOAppjaYsm9ew4w28nvAqK5ZGENuOZtW5bWqH/dmR/VRDQLBJU1NpLJIehu7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Vey/gXRtzMJpdFD7FHldrz3QbRCJobOOUftPGffr0fk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ox2InX0KvxrFQ2G1RnBa9RpMMOM7UBTtWihxaYAkT6eCHfVHQbvfyOhMuCTmVOGw6ICJbhn8HGKovdfcRYP+POa5wVacAlPBDoqXDHOwJk2fUJairCQu5yLizSQY8PzaVPFHa3rR2WGQKRUXCxleI25kL8qubgyRg9onL+o8OUQEGnQBTWcxwgUwpWXfnNB4eeVpj20uZDlqHdf9k/FCUNLuQ+JKCCRHt5VSvlpMTTldPnSynXioLGeSola3w3/jr/qPcR0lmAm/avbkrXn3qcOv9T1gr+oYOYqCKx65bAm4cXR8jpbGUTCjWjKnGWdnwg7pOPK+pjX8MGE3ivZfORsStGZDriKS6ArIkFBraHh1DevgJ+LTCtUL0gjonm0Uq5wvCFmg/1clG9N0IvxaPnGTZJOdl0eC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Vf9tmGC9RDBJb6TMAA01WkdniIs6gLoeJluqfNBZzo0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ozgSv8XfvutY7Oe74u64pO+KTW5Ar0CTgZyzHjFMkjpy3se2Iv3bcwSK2Z3V2q3JgYhmbNKaDqX/Sdd5aGsngmwRB9YNxrpE8NEyPbKYorHMFjJttaDD82/ZmIKQwB1urVRpfexd1R39+hY9ghSRnL4QvCHRANV7VeYTtM3Tafch7vJY3lmdxswVqmX5PqJV1/C/mI+TlPCz3ua1s3vML1F8jqjWTAEV0Ds3GKz00V3Q1wpkW80rNd0nAA8b53u4VwrTZ8rbTu36FdIYsGpjQMbGNI5u//yNlJe/POzUwjwycAPTELjEc4BT2tLcN8aqIci7JYRqiavJGunKtUqkBIgYgkgipwdz4q7ByG5MiX6x7tyFgVQkD7z57399JHZ6d6dbQA1x8FnMpms65KuLe0c7t5omHkjd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VfeODf7w4UhODiEnOv/X5+t2eDbXVQe4HW0/7DXNgSA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+r0iZlGO8FchpKwlDUXWokljQVoqXelrHDU5xD/2D0/UnKGbOPqxJ0lbCyGb1NoRjIS0+VXnLclummBZqrHFrLYhnpU4n7DsnOEhqAWcXNfXfY/fipcYVr9II+Orw7sl1fYO2CBa+AYrZEReIOT5e6oLEKfe6rIMUQLaMWzfdY/qi3TaYUzPKSVy2lpetgNRcfcw1G1vDPItZOmbuukh3J0ElMqZbeWzkhdNinqW+Psg/t4sl6tQ78SZu7abYs1pJKCfTOOhFXfKLaImboS8disowOMZCwAmJrxgVUQ9nSIqBOIr40H91NoEb3w15pdnh5gL5F6DXDtfXqhDKJaReFZeH91fG7iwaGe3Oa0rN1YABfmW+/Dweb3ePy90a1PZkzAJ7Yq1EKMUa8ilUH8WGszFw0Ru6mB0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Vg2hrKKpYTz11AH1ugs1qYqMCw13wH0mHgH92b660qI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4gqdGR/I/Clsg7iozdBeLaws0mbOle23NF4fiLRettlwhagpDac3KQspXR8B50Qj6graKCZwtIs3VumE6MiZMWEp9nCDPdsksrdH464+jWyAx74UyUDH70kefFncdx3dMhzypK4VQT14J38rqG23UAnFd7UKG3zCTtQ+u6JB9Y8rddJkLpvF3UpWjXBZm3PrSPY61eB/sP4GOannYdRH8TmYer7X9PAcgHgT8CnL/eWV4kUPtGn6hAPQrEBHkNCfeLt06HVY5tY25NvdHfmwUy6GKSwx6YYfoLuW/H3Y25JfDEaagjyDPnZlEdjNzA/kTkEp03In0WhaVD7c0EBL/nCYpM6tAcnapvy+ceaJmKt9cMq3yaD6BAuUdHYgCA7IeZyVGsmDYZC4r/GStu5UDm5MTlX+pusz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VgIUrO04pRpE8hWpOSEGz9wPh9HfRAUwZ2Cwh8Slcqg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aYxOq+FRySNuH/leU3PfkhGghbSGIXEoGmCECaXlncCLHA5oVREZmU60o4a6lhi5x4a7m7/4eigfD1MAvE7S8YW/YejQtOtCF0KSeXdZb5WdxKUftG/LybuSWKqxU/aHzoo9VdeDGzC/g6xyJOJoEaYF2QrwyiLWEWH/q8PTRHooUdyyhnWZQOZGHeooy3UvFtnfDZg29nWl7AeTsIEiHORVemYROXDFylvjjPfoZZ6cPMhu61FYC/hGn2JEi3RKG8H1Bor60VMxydjgt6SBF0CXlZM3Nf0DKzH5JW1xcmVfajbvSGgIXDWWFTlIoniL96vFRXVm6WRTR3lyKaNpFtRWU+iatWbvKybrFpVK8fXGXkZTh5scS3/wCGNxrn/5WJC83rZxALWMtQ9ks56of5v7aj+f3EAh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VgMpIFHkKSVBId0ypwOnLkJRCNiFEfaoo5xjms90CRM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xLvzczlOxwmBhE2ojo/+W6zNxqbUDyxBhjOCEw0rgMD79RhbrGmcN6zM1oOy/IfWtEkT4e7ybyA9vXXLecNr5lXhLG/93ZHWHL9psKZdKeJCe4Ia5tJSuUBJw9CpZgdzgT2SYKG3B10vRSHqrtB9uK0di5GQjAuEPTxGkVmnPxKTDkfk/MVgcgiQgNNSy+U6yz3d9dbQjx6QiSIA7Ys9GSkTZa8P4S8E3gU/TFom23EHLAHv2/VOBtk2M3g0bdhZxOlsckz/QSyT/E2qtx1Pl9l4bWL29Akun5Y5I4gbYc6cSTixCZ6s1r5Sh4JAeYRksQ7kCleiGm1HGf4wRf3Rc3h2y9bcdwkX1LVQqKO5xw7K3oF5riogiBsHDUsWr5B3xNHulw8Gpt3DXnuxAlJTstG4uWN2IjSd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Vh2Uf1qbmm2Er+apIbQ8y8rZiOG5eCbpUddnVqETvwU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nRqx+OiDXTtcJTTiVLml1gJxuBkljyrvY/alhXr4i6q3/qrdgMmwRMsMjVZxDrzH4kP7JLz9d+sDVN7vZ5awvL4NKyEf5imKK3uox17fl4erGa9O+h3Mx/yv2To0wDYbDPjMA9c8B1StjJbT1RvzuygIRMK+u2hjA7qQtRMXJ9IMeOiQUlEb4rDWzhqZfg7U8k44v6NbJoofzHxBXRRFN2NPKcCT3rz8f6fJAbahRQEa/5bMDh1C+KEjwmphGBh5hU9sNLaVwZnmDr4efQJdfq8TNtLBWSoH3Ngrhk67v8XkciPyRVRq3BPtrxttUo6MDz9yo03fUjeOz9u1z/i4JfKTJ2jTAFr0tN4DBlT/SwJVmpHnjMAO9gWpEHijmhFDmZ7mIrz8hENinwtNGrJcpOde5AAop9cL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VimeEEzWIJXg2tgh/HmZHg0GTGG/rVXCEgoT59mGRqI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tFVV6YJ2UAKsCdnD8v2nyGBBoJvhPncmzExygYy7GxLdJPvLV1IsUiQLG7e4EI0J2KuPtjDU+E6dI7nvkz2jISk/JOdVnhachrINsgGUlqz3/kR0leoBYMBov11px1Qc77cv93zkxUF6uP02p3KR4o0LqwEbh24hUNyIKSP1FDtpmK57vbLt5hlhEe8KWRHAC4cnJFLiblXeOHNzR8ugck1edYA1JxgqtvMiMsigZmkM1GitaSy2/i68cfQqXnB96d7rOeuAF5t4I1PreEpZ1fLxEgrp6PbsHRznIk9L825wiu9ugOPQMvZLQwrvVZLDYB7s0ToffPNGa28SmO4PZYZVbRn7ysBulSbh3KVSB3ZZ/22g/TcmGJU0vPpPGws5kcst1uVDxb98CFiiPlOFs5COTS+t/sd2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Vj0lzey/NV5BmU5rjNpdBjpDAuX/Z9tcEjvC7TP5sVg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "af8eFHVRRDvtUEwgOT+xfC0smtvzron/WcFkXxq7Y7W3tCOXLClnPpvtNyl5H3xhu6+fyQpOBoadY9JOKnep2rwaQPpfP7veCISIm2VtM9MExbiUeDZmmU3s1JgTIXGoNETE9S2xEmWpi0Q8evQCrhoAWFy+qGCAqqxav6xeKsrAqDp6nRqizzV9zTb9b2WV1X4fHgtSIuFd6O6miuFt5bxTLks4N4pURv3Buotf5hVK9HVU+wN6VuppxoTHD8tQm+uGTBCtjHG+ZZ3Spgm5fUhR+vnlcvEsqdFfAxMA9ulRtUxJTOv05zNTfnEcnKdZpyD3YBZ8SEN13EZyqrami0qc6ZPak4Z7bBWvUsClVsCJG8uYksobbQkp3xAfgV1j8kPd6d+ecU1nHR6RhE0Ku98Vv4NKRtEJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VkMimJU+vW3623yB+mV6FzUSYqcXEnsuOWonZREOMYU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hK5fw7tCXTNNU4Vdr3n42RgxrKi4pJi7qR1iH8wLftC0cn+YyAN5ZAB+Q2580bcMQvF8f2HnnGwYJt6TcMtUqu5QAtkHnhLHy0f6YXWXjL806Lw1P103UznBS/VYTP0LPIr4MYJAH40O3lNq+4WM7cqWcYp+nWAYh/OythNO+RH9eVpXi6khdn3R4t184Pt+sXsz5i8nVLWJ6UEXiVSw2LGdZjhmgAvibnLxmDKDBqDE12UbqwfnqRx1SWoIvNLc227SgDpHXOr9GB/gz/2rM+1sg8hqluM2q8m/Jj3K5HJOyZOfq1lrevEkSbLu2xb3LHDydD8e8VZHY7AJ2j9qSUK42yURG04aTFiuRhm3rEwDywwwW5dJB7Vmwd7LRt4+95GVk70o9N3Dqg9orD5W4OvpM9P1mpez", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VkurTovK7aiaHxjjRq6DQIXX385RFUteFZQE+gZ3SmI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ExZHlhOeUxfsvACEHawG8xJiF8jdpeIp05tbBN1ISoDRPYIftL9qdQ4xfCg6ATK3AkLdDoe3zOdlnD+Hd5YP9S8Y7cQscVi2r0K5uDU6O/ItgZS2iZoECy0xEL2gW60FktfNDWuqlCPNaxM4aDI/OFaYCGWscSKscMOKVVxoNSGmDRWVrxUHEgXodCvlewoG0iUA/34CAP+aiVjrUFW6YsbljpRV2fNJp9U6NLyqreLUB3ptYJk0JEiO2I2zEPCaYuhC56UoIcb6egT9Bi03emyA0juJD38J/llaNT9qNqPWttrgVNn6oZJxTMvdj5jXaEDTrKeqlTjd4JWOm1HklmLM0LDelMi0gOqMi5i9uMxFlphW7EXFbkMiW58Tbn3huBe2Gi/en6ojpiNn0R5xKwvHVYGW0rys", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VlC4tr4KuLS83gibFl3EQJiSvgI4VAThO8KZasqH4cc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8relHQgofht+CgM9NkrwAVVcfPae7/Hg/cl8IwcNpcH0Qcs70FP1E3nMKN+x0hgI+L9YYhW+Ku6VM+5l08r2lFB7A2po+cBqS3CXOah/wtJQpY0DQG62vNfu9pMKAxR8NfsKiYesn6bzVylANlmijIXC071EEpNUsVZwOC9JVFr8jsdBcfHuZMaIZdyg9jOd/62eU4XzpJISmHkKldPdArfW6/uDCrOO2LD3qH0I4RkSh15SgJbRgxAq/boxsTOx1DfZ4C7XkRkX8IsjX0jjw7n43/JkITxKbg3Qa/X+tMNT1gt1nKtMUd1YBG/qq7luDYzdyN/Wm9HJuhyGA+jyHph5qFgHlBtzRhdgK9m+fJPhJA+XMT5ZeIopEMz0DwwMCM1cq18eKxFni09OBYeSFXGGVrvM+L81", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VlMMRLEC08Ctflgjg8LFW4QmM/zJZ6r1dp+AvwE5BBM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2Wfv/hhPmTikUF5x6EoNuplCn6eG2RdMPdsz4d7O0FlRynw1WCGGKFfsp3SzdKvxZPvvW2ucIb7kAzsQCiNAKCIZGGUhfqW7m6CQecqYjvbvn2mNZ+lVPzYXKDCwdAtdHfy/hBEW2v1XEPK4Tyy0Kd8w0QjngmswvG7SeV6GSWAyqpXl6W64LsDAq9ZaQhyWC+EVMa67E24hNLb4VPbLf9GzRpy1PmDcLasbKfYQoS5r5fHkLKPRzVuPMdtnkiqKuanMYqkNRKU/qVJFNNuuG6NBmK1TXn0cc962DxRaz2mCOj8Z5IKK0dJcTbNIoAzOKzapfXH6XS7ee+ptivxuBwFjLeF+FqhN8Sx0w33H1JOAl2HgyRGHDtODn4QEURHTB2aCG8a5f3Bm3Ujq53mqfyZAogawCWWZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VmH0MSNXlQTzi3Z0cW5EDHVa4rNlC6vBgJGN+08YlDk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PtCdrhX0oPaMbpwtQ8DueMvUR37jmrrUh4Llo+Z4u2pL/gG6Hn2qm3Nqx+BO/yKIHZScmHBJO6wx5RBrY+j2EiIkNnnKazirDYMk4BbVtDQQh8sjoYiwAqyKNvtfUNr9ZT8IZC5R74IBvpGcBh3yjeRYp49b7D6cOs34ZoydGsdjof1kjiwdnDiEDKbzyP3WyLr60mZIXv0p6ji2NAc9UwpIiSllMfE3WrLvIMihQlfVQedV4iwqI/oYl0XR8j5OYpxPSH+JgwDSMrgA3nH5Jf+C8tMwnRNA7/aPSubZCyx/cg3XVRi2srK2gLVmj4N728OaDBpfowxuwHKSyMafWz9xJUToY96oE18xCOPRfD8OuHBzBFst6m7XmoPIjMLa/JyCVrt93A4eoN7iR1z807XHYpRXAXDL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VmdJ+K5gDz2Wwd4esNpbMXZ6YX+kcJd5NDSWL3T1uxo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xCOWhVpNX9IoXce6ZI+OSY7Kn5Ngaa+xnB07DacCiuZvk+wYUpi/yw/hwrH8kp+Beo5tm8X+dPoBEHbZydVrsz16i6R9gPUVR6mcI39qgUmU8JWdex/NpWjcB/JJ9jsZZV9cWtIMJ3mFss1s+pLQ+kS1zv+frgt0CeUFzun0tz5sJCeZAdMYCjQaK0Mm2f21Hq8kKrAO/Fczfq4B0XHfvd9F45U1eaQOM7qsPxSyeUgkIHLkuIW6WBLsbdbsozXGmVZE3eb93L40QLTxLMTbgBcebnLLbzgr4lXfo0a0DgPGzZVU82WibEvvqjFzuheT7I7J4/5YYzd1NZsh9/ld354NlVQe9IU7GtUmW3WsNCUojNEfVv2X9PbsKDXz9NbxXH7EEd72FDomlYO9Dnmn323Q7zvgnT3X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VndzfmHVoGes4OxE9fmKuxGKuTVtDGNL8PqiI7vrRzM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2TqiN3p+nYbkrFbAZih8oovYUIO0LHZFJbxcCHcJd/rLaaTAGWo0raENF0AReMVVGMO1D2aBpI/xD+wbR/GJom1Uz9SYJMFpqUfvlrh1reWlXYn4LHWYAtOmCVh3g0zKsDyx0UG5H/2uU1NOZFhU8wbA3I0vYchgTYmHf6Br03jDET42idyanQ5u8erlUY3UkGCOiLD55jRS6k5WfKR6/xEucZtwbSsV+ilh3/7XMA5z85bk1RhVySE6nk87XSsbKBtLQjFMAAy4pBRsbOKwhdN5YJ6YmjIlLkp8bA7t0oEDcF3yAleXV+pajjUC7yLdXV6NT0eObM5X15DL6WR5egsvAIDa0LbPxs0siGa8jraP/fQEToT48N3NV0ROiC6JzRLRGiTa/TjwibCH00ncm6sjTk+Xs8CN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Vnk04zjBkrCrD7qAAI5IGmZ89REGupFaBBMJpIxOZ+4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9Dq0VRQVCOyezRiU52bCymSJXmrjQH4WUl+s0ysvIAYNrqKVFM51C0gslbqB8duAZi+aowhStpD8XUvHT0ggfKP6ULqH2J7aKj9gyssdGD3Slepg9PGv0pntAg3WHP8pQ7XEnA24Aicz8MvttvN+YTPIojaEPdu+fy1A8Gq2wRFOZtrfjHCczzbWms3UuTm/2pViKG94HInOCY+hr411QeKALceZ8e7QGe3wOi18af317xe1GM5xHmQRgblGWsYo+credJNM0i77S0gGTe0OdJYbwibzIZcIsI5S9h7nQa/zbbooeAcv5p3JLDqaoGSz3OXDm8UyXshtXW9PwfK2DWQDEqmzeRj+QO7OLdIuEwzGsgrQXeAtZJ5SvhTQnN2NpwrWaerV0VH9P5I2nqC4qKZv4q6LG/Pk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VoLTS6ul4ziHrTptAujyRZHBhHjtD88arahswIe9kxE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FTelCdOdc4Y/mRs+HSxHIlrtlVcWs9Ahy0IQ+IY+5XUg2U0fqFbDdmZ0oCqo/SF9jMRXHO0/+JtyvrkzzA0hMKXfFKs5G0ABHEa/QsDCtpYhUgZQQHwp78gSocby1EwioAJheJVjElLg41vD8CTfdjSeNzj936PCX4/Amrctsdsv3X79z6JxvxppQVos78M6EOntFjIz9iwnXLKoAJz2xiHdmEZM/UvwqAM9GKU+jpD6cDNSFqRC+NaYevUGONB9fWMKKQaSqkgh0Hfw7h4Wkgwh8bE01ae5+WZPVkBQNT5JUJ+SD/VOwjIvpyNIGVBVJ0Ptoyvt5KP5khdmSgtJquZSbE2k3dJ3bkwsEd8bQHuYRvidzgnug3GZXaHN5vLFl88SSNKnHEjBzkyaObnZ50GaXTfQgvl6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Vq/hfCmiRqFfaW0lW043N6j1OpD409Fa4BsZZabtEO0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OhVq8o8nfNzQ09x+GX2wKSZwgKfiHAlFF/Az1GwUQVEoinT+YoL0ZLZllbdlfc6CDQHSHdCWXfLBMXfPkTNrELLVH6L0r206ZnrTjHUFeogYb1AEX5SeRoLcxxDzNxsudzX6ZWyJ0SflAoZ00YTmIgfBU+7fI7I6+Yn6GPXRrp8VbS2ynTVYoX0+uAhn8e/7PhD9p7YSaPxvjZeKJHb51j6SyiuVhLrikK6DyH4F+rz5XgQTdjnfQsbDkHwlgzJOwkQHEP06S67DZD305gzDzP2IqGdXe5Sy4C8jp7EWL/11s90R7tAGrJuYq3i2XAek+0j3fQSODt01Mfjnu7tjm/zHY7hmxikHVvVGgplOnSnXxvIm/5h+kbWk2d6KkYFM8rfmZRrnemQpidto+DYZfcVjkN8IBnB3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Vq9X+xgayvv+2ADUOxtjDXhOtwDnDk1h0jYn+9VqzGQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wnx6Sm3vRaPiwRQk5alYP9x1qEF7zaz/r+NWbVR4r6ntynlalEC0VBFR3aO9YDF8tHbcOQgYvsqC4+KVg/KOn++ZTVzVnbFQv30358PCQ06IsOm31pBliHCa9ICEeNyM6Kd65MbT1K8OxEFqb0QTRt07wootHJJbfdnRmT1tbc6171SIrZVKGeCO84HtHHiMI9e+wG4UMNacz3BiNRrYw9PJnDfXWC5Z+AvaYBoadRgCBgeo7KKLBTThZg4raEBm1Fyx6I8hPtvPkvLz2r5qmVCsui2hX9XFWQ/RLjjAf87OtKh7K8mpV66A8g0133ETX/i1pYxsjhkptFLfZNjcgCsSun/HMb6vYE22cXcRZKBpwOQyEi8UXDVz8dT2xEekrz0WhFn0unYlTaJ2Y8qESxhf7n1yjKAR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VrsTyAxKEkGqQuhFK3dhXnLu5UOx09I5fCNCCMAS8ao", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IuG6vc7bfL2IEXtzWIRF/D0VaU89bQjFZOobV32E8C0FWuEJWN4PtvlhDfRvbyIjYQPKTyO2whotUMjCEIsDE4vR8fCDodx3YJGZizuj8hGq9nJKXxyslYlymEz8Vu7KXJKnYtv1J7hvDIkdjwZpjEhw3Re/pxIvLnWCUcNmA8n+Q+zAiCqIEgyKBEZj4Df+Qz7ONACZa6zg46OS7+0JXh54KnCw81hOxV1Muh/sInq4Z7lry815g4gAs0nWSEW8Gaec+wid2QnEoNiIFaWgkkhzejy3Te5ZgayEFHa3oULu4Sk0deZu1H975CQYki2CGR5USJqkGR5oSxAigX6h6DWUHuPm6UTu51PboPl/aAzQBNUQicP7njeCPnBZhkA5yLKFaLQqX88/2Ko8fUEtaCRGkPJGdduK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Vtlu+5xKi96WLAf9Mb+OtvczHE/mhZMTeNgrQvahojI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3kQKVKP8NIylzqv/OZUZhy1PdikjfEcKu6fVlRvXmIjSjol5VutorflX8Jf8m+uiYP/FuvHJ1eZlg+aVxQGTyLUotOvOoXF/CYA1glDlQ3Z9D5pFa6Q/+DiG9kf3DOi9fUlj5fp7k/VWXfVeGJn8qE/a6DAYuRlsGeaWL/RLFRS0NEGButtOKY1uND5OUZ55RZJUYQEVRQyWS1UgGwyj9Utb5FZCHSAxwc1xlW4yri3HH1GUJxgXcue8st4yWZe5uIMn3lATHSGtbPM/yHnqpTX3/jyhWV55b/kBusPMizFFpwiEPoqYqK20SN3HbBMaHf8ShoK/lrQa7YxsxdMlGGywRMgovYE8V3RCcXfipV8sb61UzqVJK+8giq7nEsuRMlSFG2qHjuC6ASj8HTE6JomgNqm2hzRb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VvL7hD4YIj7X6vmtm+WXSg/C8inUfLZ7N+Wr+nvB6/M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UISNpos+8MNRyC2gClmxDHdFcdN15KNYtdmDG6IS/QEmLG05I2OLywa+ZfDfSBj2GLKmGW+NwwnvxXofGqi1Ze+YHdfTq2pbCTu5/MqKXZKXeI2Xk8TyvUVpi/URMKbuaN63hTmuVR9sI4y1kz0Qbjo4XALYUwH8ZdGJaEUhjKBM9Q4ApyiP2UREd2IaxDSoB9ZZ8wJesD+3AoG+56A+ef75Jd90/O7YQHvmUhvyJuW3pwrOZFI0tOdGEOOZqDCF7NwTW3bt/f7OjS2m2E9flUxg4+nt5KOqSjm5E6hh1qpdtN68v5HmUgxfEljpaxDISpMYk6dUvcRi6E/xksshTblaRCRYn2bDvcISOZC3zbGYKvgv0mKZ4fCTDAY17HMxGIetkNQKwJQYkHbBj0hxTImXmltkfvms", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Vx6Auih68atNAVqu67YMw7NeG6Y955cVJysDWtfXaXU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t9diZdtqF9Cq7jWtT7kweIJCDL3+YlQDBuXfSB7IJyOfBKQwGJH9fD0dt1KsglCHgT0KGPHleeRIqGB/bwvgSmdzkWHhsk9qSRK7lL+KgeRzu4BdXJknCfGwczQiC1hCH2Du1SfhxKBvnyQ8hVxvnyASFXuxA52NUvWVQ1JrcE/TcPWaFS4HetmssYEFuK1kI+jmPc0XiF5Q0nehTDgdG2Gf47TV6eD7KTzDUubF2ywcXVhBfMuXEKqCU5vwkscrzD8W884ds/xcMwczKRwVtLBiC8YcMnOAXJ8fXIMDDzyWqqImEWx7M8pw6ms7CZqZ2QcyhMRTyRtRNRDxt2ko0ZIUXtE7p6EBmEisFp42VeRBQHoMmWlUmBsJxMu5/0r97lKLjwutTzgQX5B7hkr76PUiLl2GzeCB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VxJwqyHvmDrW2cNaNTeECRbMxyuiEe6hKu2FAUADjgE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XSon4FtkKbexhBPPXk39Al03y4cWoq8Lijtb1MxjeWQ9d8lK37nhJnX18ybjYffm2ugwurQ+BMQEmMuLu8l/e2X0QfJ05Ke5lvRM6a8yOGwqwoNDHcbXZFdZacTKzHERmGKs186EvTyUp8eunATPVn+47l3yqK4aCOP8Xuc4QoCne/d4ybKjGCZSDA5fptYr4n/hi91R2DOU1ui9/ga3F83AtF6BmCggWHUF7XeT9q/ovP82U32EmpUD9Byml+XtOqRPnZeHRH+WlqgCBqxlJ1m4g0rR7Ig2cYt92wcGNPbh6rtcimC3IkJhafDiz+gjDnAjPfMxH9yRWGMJFwWW0lTbvuQmQBiIT7fzHxZoYfcfj74z4zcvmqctTbDRU0V48Jcw11B50ipEzliEFknS4/FzFkT3MTg5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VyJM8QQTf8DaUts4H9N/0v0OdkRgAn0zNQfMqhPTlA4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "b9/J15GuKfNBUajoaKGir+3N5TaDZHbkBCKjHFD7zx4X0DO2wADFGTLWrXOLBoQP98VKUnm1sDny6gKwAubZeuK/1NlRiJY6hpmyozyulTqtUIQDx/7FDzZAPal1R5revgbFrLwF0HExt+vaKCbJ32ljYO8W3j+70OjhABPzo0j7OjCnxg61WvArC8UTwmujbJwSLiFVavTWpLL1mCRaLtXgEv5L6Pk2S6jDvsQhwZSQoT5dUwfN22XqS2gtyAu2HyPiMcrgNVx8rbqFZPRiKrvPykE6mzashbKbcTZG8QnuPbkDKkwF0EsT5NS6zuSFQgfu4fjwveg3cqkWJBaEeSQHoM7XSoikk/HnFTzfLP4z9fOmslgGPS+gwk6nFOVQA5N0XGfgP90SB/jfz8i32lIFzNme15Xc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "VyRBPK8vB0FeozZm5ZMDA/DNMbR/dTGpTV5jDl4uXIs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZD14AYK4fDJBxWxlrN43gZq5MHU90y3dbaBcEluV4wYQ2cRlJQbgqDHaQQOu+Untq2exh61M3Z8rVFR9eyOlnvj7+PLcW38KwMn2jgzcIKxM0Q5Kv2yFteTdZjnNkwMdoCDGhP4NBbeVdA5jlCq8XYDPu6ZYTsfLn4rrZmuQNSUdLV8LwqRyx8azp1Zm7k1X1ZqqgvHnSUWoqjkl8QLENUjV+XZ8si3ORrzYMaprw7xN9soH5gb+zC4Pmln6zlCo20BN5WNEABu88CiWTESuU2bt74+Bb1YXJ0JSl1XLhTIMcrgfG8dy9NjWNNISMg/jHG5QsBstdZAcm05K3G/EEQPW8JracWZW97aeiRirE3/P4dn8Xf72y9GauUZq/1+hUZn89jNdu6McxiAl7rpSb9fzak30Dmgl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W+BduEIX9E4CboaKQ49/d2URqwxBwzIA+n22VuKPfxo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Jxov3Jucr+336k2xzLAgBuoeIC8+rbKxBMVKme7ajM/GKWJfzclNbiAUHdpc/pitzBsx6I0qId6a54PbcxJKnxSnF/8q2eSESg9l2m5UILEdBEvFioSImYBf1mkeHRxy6cGDtNUep08iFiMp2zmAEF7Y83dMDvtzIwa6240oFcX1fuktzo1LBInlXFtjkUSAl+3i4md8hpwK6FJA1b2IbFZ9Ds0Ll+3ocot3h9WAIdkTRDNBLPFoJegs1H0YMQXXLNnMs6NeksSHipEPeT9VlEuKy80FzBngmj1+6xPEty6aqf3zcW2eV39EdPxd+ormGNkhJyLzViappYwkKJKLoaoJl26jEtiu8rY/RNJEAnnBw0Z/PQLjuF1xh5ycnPjNBws6FLlAk2eifQLHfu4FM7N0mFc5tcaX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W+c+qpyH7euzqmI6bjA8DK3SjSWoEyIJXtpC9QbMhjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Pps4GWSBjfsm/uxLsVm4/PHdFlQjuupqfYISmVvkKcOyAv89RJJHmj1jm5tljm8Bgm7CJUqaF2TIveMFyxjX7ud0V9MYV3rYMwt2xKUJEcc6l0uHRfHlpwG6taIHg+5se/OR4WxynGD8Eflt2eV0Muz3bacLx0j8C8j+iMsaafqL5F1nU19WlxGKgaiKrc+T9GtipfyImh5pQhU0FIJuN4C9zN0RNqD/txkpo+5NRS4ZRwt5oxH6TLDDnadRWe9s/A8PysSYvCldOQUoczCOJXGN8yU4q7xZDKgbchwIMW1mbruvq5MwA/VhdhNM2ANOmzGUcaEC/se1um0829y1w7zn3UbgTG0UpPjRVCgT+iTQrmNQVEWTE6YGapAMA8ZVbDmCm1MFrGHBNoe9p0CryEvz6C5YBeLC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W+ioF7ICB7HxJ0Oy2L+sDM/MUtqdU2IR3TkFLlRsE2g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E54j4EwMKZnadwQjS6HPhPz0tWU3Hp5OPrknOFuza0VeRf4D7RlqgXAKniZON4Au4QlDpEn36yn0AKgvk7G+9GJ0jTDvVxM20elmd2nxxmBywpdMFzMHKnP37ATp6bmuxfMLjAM9fStPN8EfsNxx4I7umDos8AKoQtOGJn4jKQU1aHICivNmeAlsf5Kq78whTXO1jlSIrfSC7auI1bmbnzgLyku1HniHrhiHRoRxOFJYAFqo7Jx0pYJPJf2o96fu3PG76UVh9N6FobatUwC8pmRFNRWzv9IxHeXfpwm4ypI4eIC+d93Eci8ITLzZm8ginWGYa/gtqGZA9PGQrJ9AXv5+DISB7cOCXIEXC/p3lXmsZqVq29GkLviViOO9+/Q/flLXfo3yMSwzTTcsL5BlcIhSC3P9SYjF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W+qb8EmGVW7pn93uZIclYiY28qJcJUUG9bxPbe55tvI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P04Nu1z3iqNAkXu2Jc+vwOngWB4PvY0O8YSXYhlMYXhJKX8PKS9+s2Q/Ogf4ZwgUuM6xgQQF+8av4ZB7gIcvqsDaJYbB5uaEZLJrNrFSK1SP0K6845t6NeW7sGvvIb1migMDsurr005j68d3M6gni8M5TrxEQ8mJ/Y/lrqgn/XpXT/kUMSnfK3CZ2afmTk/A9h/lIHWgPpjr2zRlBB1FGarLA0DDzFLxNH04GoRDPXfSIo/yY+AU12xyG8G4QF3tJ2AkbsF+sfBYWixpIuSZY6mP2s1zQkEhUEyv6x93DRAn4DAhKEmegk89fg6cFcrgrSMlZNaEpBPONijRR7uiXkSYet9mAXcOZGpnZAC4Ujg4V8XwT2vgtlMfHV+EeJCo4OrusK2RqD6FPnedt3TUVQop8U+LBeHv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W/DPhy8bQkOHZxHkqaPzGXkCwrf9n5pEdjoVp5j09jw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6cu6ZpEvFqgKee2ujIknIFo9PwpWNL2+PgwmAE/O3/V80VuTK9mAsP6fJgBeEnVxMF13akJJZhocq7rz21jtvA2Tu/6WEkcRRjrpD9h9asnNtVrSIVoc3KL5qtzmasHZgAecwK/drM/LEjzidOsJzjCdnLhUHSQaKTjkEf4gBZ9pGfBIMNh4a4hCHeRuCgRwnZjXGPhQUOoRq8gbHfMDeTS/D7GqAle+n9/GqgcWRvIlw9OfbxkHSsIVG2q9s3IZIL17pHCI3P0sCuTa0tSVyDckGuFDVy4tyalMGD/dTNhCxtaHWQfnXtbxk7piGNsANrOevaNvTKUZchp7qvz83mK45qsNGan2BTv81rKv051ZMRGRc9IWi/wKDYHoXxgwKBQBOQZ5ql78rzTnVFJhuG2zlaR0QWus", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W0rWSqvZsMRRwOirAga58DsH7YfRK694JIhkHf3Tc+g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PZMRk+HRljTCK4vBxSdoeNEM3BEFgjiQhsKjX8nYmfB1dFkROIhMTWeC74QdMMfwyvU07o1RwAaS4foHonehe4kxiz90Cf8uKONJGZD1Gu7vghpNmK6CIjIVjsK48DZies7AcoBZKjKv/SJEewVv2L/NpgMmQTmsnFKJASE5E4mElEHob/1AmwG/SsFkYOYzLwQ7QgmKkV+AtzYRZ8cpHJ0p0rq0wUOFLQLONvS4ZJBmA26O6ReOc4OKRVVrYXTQ+65r0IfrYs0XKGayLgtZ0f6doHmLC04k5vWBVhunnx6oPYqZ2yVFA6bG+VYzw51HE5CSKIZQNoLn0TaI74oGNRRGc3D9rh9wbpMui3/ZS5sObX8U2JRT/mn7OYD6VTMj4hswMT9aR5mlU3kPzyJikKMvkK4K/uNV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W1SOQNB4x7dv5trreaUYs6S2hPNkHIFFsNel/tcGsuc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "frqmRsgjHizAYZjMAJVkD7wucXPFn2haIyWbgWXCP6FhjN2RBwNBRqDUSwVbHsFzZibLD+1xcjEsPRtU6y0FpRThSCWPuOjwGdLuDTJ/Uuvy/PDAP+xQ7SoLBXotCuvkWwSYPmz+9DQG4mBQRrQ/Q4RrcRUC41tVgH1eAY1pXFFvQWcENcHvPeKWu684MNaIC4Rf3bkOaDxlQ1W4a4OyaSC8VaOFXSVv7sy0wgUK+13PIYZ2fVpPkzkXWNY9U4ED88f224t7j5XV4fzaISXEuYZ9k0WkTUsnrvYszIaKrygWqJT4aVWpVlmGlEHMTZkjv3tPFzWNVPdUKlAfXOByQzv9CaOtD8NVI8Emc73bipF9cn8phyoL6CZ2D9v+158GArPwNTq0KTD7ZWGdU7UnS8IA5ZINawQX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W2pPznXRuk3c+t8Msl0JMIhhvi5tuk1mZ5EZdSWAMLc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1vT1wVVp9H/OxDQWFj1FLIBG5er0Cg6Om1YoSRadypd99glW5cirvqzuUumTAZ4C3h1Ta7gp7n7Q2F992fKPHbQZ5v9oilPLqVJq7CIHKoo1KnppgofC8o0icwikok4wRQaFHD80jRedaL4XFGkmO/aoNtun8Ug7utBqkDrT3umEjnvtrx6jA3uJfNV2wZv1AuGor7bBNEFQ13cYWM0SB1ny+FwsgV5QzJh7ztdfYYAHdsnKZQJT/5vXyMBew5UEe0l3XMm5BReRSRZJEk16A/A93k7BrtkRPSL0CqPPf5dXTkx9ennJuZ7zgGeeHa+HoSXDrxK1fvemgBikqhFfJNn6I63WBcKfImUto/uJeg+6d6TTVkVzzoBabquM5+70+umK+diIl0yBSfWdYfWkJ7oEx7ljXTup", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W3eLzad31EgGLX5WAuVHq/UPQdcUxo7wvij3SYgVLYU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bt//PScZ8tH/waro8PmL/nrkJz6DSDgquYsYAN4tDMZ1xLpXa5otjLC2J7SM8+JaSXWs5W+gVjYrGnf3bM7f+u94+arM4z6L4ZWaUxnsr9rr8QKpGEVVju4q90FLp6O4MJdmHLcqCEwIxDlwF17xOqByjRQpEGh+nBNHLWYpx0/KTZqgtUT6Fuq4N3nFB+0yuKe8OvuySLELEN4g7emHoxzCL0g0n2sbm9Y6tC3jf6RMqeuEfsVvor9ow/A+49tjt6O8hKb0Jx+TX2wGBCUbZHZcAnRuhARgXZQvWsPPvsxs14JSAy6sP+F32sAAtAweAh4RvqvIZRqM3apYcpDS3G74Dqg7a36vTglWRGJUoOG030vV6w/HObIBE/BzTVcNTMHmgPzZWbaqJiix5QaJUpKp5lpyyuX/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W4kn0jAZ1xYGFrZZis6xjdOZGxLjYNTjsB/SdwS155w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "05i/P7grySqXVx1yJKNV8Mm9BDFOxjBY/VYIGCB6skhaokjIe8Mpps90Qj+uAagi1o0PMK+DCgjaeWPWTq3MiAE1czBKDPs+IraC9mbDqNBln+0or4R0f+0XrgR8BSYtxoHsjdNb7I3eENlqq4fnkKDfa6tXce2hMgTtwGP89NHSMZrDuoawyng8OvzxP6oimjN/CNN7NCN/9dF7DXQo+vuzWrDwBq9JmczwA9PeZwyRU0gjYWtEyFMBjjEMMDPX4zuMGD+NYhmcm8zXMJU74r1R0RtYpyhVLe6NL7ijXlxAUI0pcndujhVkRPJrMxREti4VsqYfTifrVjn0kG43u8KA9plHaRfwCVX6rCo5tPxHpewx/cLO9Zw+2UFsZv8M+BME5/H6hK/p2qJIRv58hNtaOEtivLA6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W4rnngBnaVkMf/pUjGSnuiKfc9BsTLHIoTV6aYce6sA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ow+NLTO9Vd+ra7rxKl2AcDvH6/Ov2odXGjLmteBQ4rzv72e8lkwxBs6i0b5GAsuYR0SUrBwhlg07OfuXd2Um2YWoNGH5az4uYxnjGApeDV94l6H3aD8/q/Ca1S6eESW6fDqceOZBA2X1v43mfr6tmVxw9ERqXkTgQJvmdysCZoDDoIg01SJuOtv8xlc0G5dDdYWTeeMmH5s8NU0N0cq5IkR/JIZOJJVSbyDQcIC/yIYQ0yrvbk4vYM5MYnfr5Bekw/pvzZ99LuDKmi7MscvpmXf35LPxF2/9cv7UUV/7zj5HFrOTxLUvaZTE7JkPNQtwAKQo4gt144Q+2ta6D1rUqU5MgxdRnwydJpCycth0yihni61/c540teucxcYLlEmCrakF2MDxF/J10zQc3lDWnT42XyJz8eqg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W5++z9WjHt8wpqMvQP7IHZVymg2yff+2Q5vW7dWki70", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qiWwYbcK111KUbCrFxoeelfTPw0LhizGDRXRRISsx2SWUPebxNXm2aj70CFSuORjA926/CTqwQh8384n27LyV0f2NvSFFa6vwnRHKmjNsvSZDBvz6Ec3WgP0uLK5KKl2HHzKDJxlxeHmYF40vw8DjXPwCyfCoLNver/6cwGwb5axjdadu/XWIthtK2rbnGMuG9LiQ9nze5o2fESyrY+xDkkiWFwa97u1oczWDidjSZFMHCUpQnurUgRQK4TPTHnMDVZC85DlrjI14/p25iDwZqd+0gJdccO7trkjgP2geHWoHK0IciYEevuV97C+sFAgccE4nGuAOPYwmQGG48Cj75drWKqKqXv0pUhIWp5PmE7bEF9Kpm3m/7Udx2S6PqFgAJGhgbLpTlkjXLcrvEAgzgJo2Z0r6fPm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W5KduGgclylO0kszBjB/HhLw3nVFdmJpWZIRsSbUvHY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BZnvMjLJrKJHCyA3sbCc3pxC6gwkO1zfa3DI5GGAgsZUoYZtaAbLY/IvGJsTYyD4HqDvgvObEysMEXaVQ6jeHoT+snMRVDdPekX1zqVgkc5i7xvspGB62kd9z0XlZW7BKbmvBd2ixElwUG1GLn9DTj+cB8MJuazG5NcNtSxU47uskgiNRPVG3BQAN05kiuKTGLj8cWTuw34m0D8v1Xmqk8taXTzMmxPtjkyWZS9uylh9vc7OYmf8QrGCz4dg6P1kh7Ti3SjMEUSvfTdC4jm1fDVLw0vSI6Hn4z+MPsJtqOYgWwNTT3kQ14WX3HvcPRoTrCX3D5jUFWtIh+Adeq1aSaWUf+wt6iVpR0ioGnaX2uCuElgMUeQByuDFUM5PUCi012WVIXHwiZeklX8lNj+jRQfsE3Hx5Pog", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W5nBhaeNWCbIs1o2Tq3vHJKqtpoXJ6YTjrYejFZgAVA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3gaAYTAEWnFUpRyvcGlRe9IxlfAMk+gFFDREamJ4ohDXib9Pyedz+nSTwoR9A2NJJaZZmFdYyCva733PjZchweMoHeiZv35oOpdeAiIDDP6o/9tpr79n3H8w0zrQB5aHcAQ+i3tgi4i+uv6YEMmLTY9YUGkXv0peeSyNROTM7U9Ab4LAEGk0iEKpomOjd7exOlr8itOZGQj9b1WLEkBu6pSullTq2D5zydEkcR2K7qGbuYpN+YIjK13T+VKYVQ3zDVnwUkLzDWxw2AgQcbXxH+LQR5SRDVRwtFqYubO694WbouREa9yYm7IX0z3bkglDDG9dTGjY7Qelmj11rA7rWazttZhGGMManTILD1IKg4eOVAiRjPqi36JDgk9QBBtUA5FKqpxM//1vOrDK/CR6Zg/dlT2aHMkY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W7DPV8nazSRnAN3cNbtfhqeWWvbq+IitOumvRGs3NxQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gHD8zZGoE88x/Ap720c41eSEm6HBXN3r8hi7a19rFxMQyIWbh3vdOA94eVCzMYsetX7cXInwTOEvAQXJWSkYOmd6jl5ZgLrRS52uvI896xgkdf0S6BVC+T6kUacCI34FMnoZNp1uLnvmv1vhMQsJy9yNUDItDW3qxoCyr5uFM1iFljA8zTWPkYmt0vZ8Lk8jNiOst4v/4EG9JPlVUsgeJxFMR92S/V5bGGGqtZOQIv28xpUNy+ljXvSxZ5qfPnIXUZMpB8SGbj78+7aaUp0z2Oiw+85jADWOx3WXdN8K6DwSh2lShBHbxpJY7vGFj0Kzw1cI2Xlj5z98W1qwWaLPAJ9qdOcP5KCOdXGozifB9qQl+GURH9hYtetUsCEsf7Yx43yydHmU8CREADRKYGMdEVx90f2XofDl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W7LoThqJ1MQtDxY5YVAdXOr/+oah/YoBczeuvv4Qfxw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gQ4BJ8eHZJOuX1PSaGh557yOFfQJ0LXkN1/aTQ01mvijrDxheFEAXmxmwh+vGBwcVii4HUbhsNDEsm+hkIsjd0bfIRzs4IrmVJaBnRK+Utuk/6Rig/y3tLE0tXZgXEaabpJRe5VKKmp3j14P+LCkK5dfpNY5eiMYGagl1eSF93ZMjoJvWWni+Y4+9WlS28Wxpubd7jvXQGRWQysB5j2MFVjYZBDyZi8zjIxWYLVdlr68KqaZeC5mR6G3CuvZfmVNrWeQD7XN35801B1mu72rdwzhD9NH4GxJMKEH2GFlwv3mbdGDK2Oife6hBwgANr01mRBHZ+eZuDXpNLnVKki7JT/Ncx+bLlK1W8Dr44hCtlMR2Ge4QJEY/iB3MsODnVEPhGloT1/Qua7o9K6FqZ6TwX/snftTyJtm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "W9GU0eoBvQ5FGQz2DVmHZejvEcoMtE5L1LRWLaJnw08", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6rRFTJFaVN6P8pwYEPQh5uWwQAPbji796zzCl+mvmpsR2bxO3Zdd/DU14wQ/0f1IXvMZ5z2WieEkL8J2lzxXgTw/mrnkX4ovZHvRCZMb3BfHlfPdaUhsLbGQMkh9sab5cbvRM+IFYqB2wdJVI+W6/7j7ah9iX1cR0nhtwOM+oX1t0jVlJ8ne0RDeiHANQtVeaz1V5URYVwxptGjR3i+p45/+3MVfo6qLHakZnqH7fuSZYQblZgK/6Pvkwk8/GOXCWtV8GHF4p075MksK4C4IBHEdmjT3PDvBSAaSN0bqQqHlZSG7nOdJTQKnQUXB8T577/vtFtNezoDOFOGlhL78JV7EBFH7kc5eOR0tvUsUOhpG/okoLbeIALu2WrkGkK2hmLYpCX+yWafzpNSmQNAO2G8Rc339J/NN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WAITYTTvaWrCTScrrUw9yP6pHgYqyPBNkSvp5w/EUKQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YMDKPaFA4+FlSd2A6s/SzEeIvPn+o1TwHtT/f1qQ8t2xX1vUeqqKHdBN+dS97hZD3xu10IDhO3RiSzqkp4Cca+dMpZbHw5/EopF9RvuYTRvw6qBVPpudGRZOTEJ9vTAEH4zxhi+5x4zXLJVe2FXzK/wouiXCft3iNJHtP0Zbl4Q3t7uJb+bW5wSwGp5EjbN0jOCXAW8mr1QlbuaPpo36gCEZDXBmbH230sQ6DWp7rVAJN2vj0hm5LwH+vCCVn9eZTKG3Ndn/iEvE2OcK2LA0l6yfgU82R9Eq22/Tbm0hcHS5cpPxHbiOuQcFOhQUVdzyfdnf//YbBRCm2zDaz7/RD8Rr7nWwxG0LJ2EF8LlmqUmGRXOL3zf0AyJSBvbS8Z7eotI+SiPVwGLhmzl06R/5EteVuAvPK5Aq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WAWMgqDxLaDNAXXZ3G7CTOvWR4WD448ZAEuwjv5EjAQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qgNkSlE+2PwDUFQPJxOyX0Lrl/zqGahOIoG9/jURbRardWdwVN2w5lPGYgSkBGMVxnaskaQlQznZ7/i7bJCbyjVqzo/pwJFVJMWQvuRUUJ13tljVDF7cKjxM1fdRbCKlDoAIfZHRqDhKIM/zUbp9Nv9sfFPpdk1dyWbGB68TC89uRlpPWxpTFIqg+akr350tZzZAHQQaD9dW+pg9r9AZHQFuPmd+ex/h6EQ2rrM5d0DqYbLtfSgQJh45rjKdjJ87DrUZzXd92Xvzx9RaqPyNgG0g7Si+jgNZrz2N/kPFhYVIKZmVJjcRZ9c+yif0Kj03DA8qbUlPfrWBcCBTNK24fwj2+4KBnQBimddOoOTpk3nmA80DWBGIYtclAnH1xemFRWlqNQ/YHYinDWxesuscfcrqnt7RL2Wp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WB87a3RoQ5qe8crYzfI7EQ9dOZTyYNtgWcCxjktOtCI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EqYM8eZcbaWNkYflTwCcEMNCBs24BTuZXw/pWPOwgmMRpzu8bv7rh/28gBjKEKht+gat86mVhasK2ylMSzm8qyCykZvaLhHsq5QmYOibpSczYFDvTwq+fTBf/vNYvkE5+hQPkcDMXVD7n2YsKh6bphLG4yI30Oyw2Be6BcVN6xTIS57CI6OWFNmEkRU+gfUre1n6s3AKC1g4Nh7v1SX/89LTvSVgZjsJZ2KaSvwThYHV3YBJz1faJuM60VbquZxoFMDK2X7MHxW2yki+97k+L6L8rdkHB0DhNAEvwn9XpZ40HxWjNdrIRbVcUGD9xcT3LySjH1KxX8Qv/URYYFfRUl7nq0Q5nBxB8o5Nn23cSyCQFN7sVI4DXclKSCzd77VaeSpvn6snbJo7vz9/GOfJvzqLGvwVzqKn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WBigjO+GD7pK5KZSjr1wZXfTWiv9MU5fWVAxsPI8uoQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zI4RILqh9Izw8XUsIjOpnB9HzN+Ie1Dv0c/XKUSPrkAD9WbwVx3jQDSUxOhPiKA3g+MU5uziS9TxJi9FmjGigpDsU/o8A+aaP5J8t3qltGd7lCB+g0dp1P2W36Kcoj31jRtIWBg3w3uPeQjpNGX6zHPRs2OTVEZIL+T2Wa8KPpBbdsIxOJn3uLga+NrOjsEgGuNPaOB2L/BX2+RbiQOfQ/LLtbcWGjapeicsQIafwuCJSw+i7YBj+KD6zWEweRgcdWtrHzaMysqgqSsCVjMmVHlbH493QsYnosoR+3tN25E0kWLX7++bHZaWe3b6kKoPlkC40P/h++DlUEGPAdQ6lR07d1R19fzpuk5yUlQu6QHW01fiFVEPHKgWEWgkSjUj552urTz4INuVMzl0SfffhCtCWoIt/+uR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WCGJie17BIPxMfjWpfvvDTFRc6Gxa1L7XzVZ7NXSZ8Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "swwiRek7nQuOmT2Hs/lcWGg9Td5R/L+1JawrT3BxMlfjqGb6MPmIWFcckyMuBvYBwhalG1Sg1gxWaiV6GmL7bLdVNQ230/OK5E4iImedeuBDi47SLfYhVXo1SEiEcnkEhjrdw2n3lf/dMB3Hoe+OAXYbrDm3kbsTP5HxQmB0ROvqej1oq2V3YzdiSJonYZxj1DeZ2qQX/usozd43YKVYnixSY5jJMwsWUt0kvx5VQbq6onZbqzA1cYInGMU5LIePaNyuw/e2pHnyb0Obj9oYZxobuL5KdUglq0eb27OQ59AAtGEqixrxq5gXgCHDJ0v6093V4YxdXlgBvlDTZ/E1/7I5hw1HUdLzD6sGZVgNzjx8lt4qIQ9zG3BlBQiQqJa7i9Dj4vjWFtbdAeJj1jtcQeIIx3ofZi/C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WD/e91E2U6CGL1W2CG1TRJekoREQSDKXLatNTNjpgyo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c267SuIxmGhmvBRmkhg5JFWm/o6/J0CN7+xgEgwQ6GAUJGl/Hk7BfEsQ7YvlK6tI2Q2LzaDAXNBUQ+G4XK1sdQ06G5WcIH+PvGhet0omtEVmJZfnbHVSIVIOIv/ib2n3KPO7ZeHUy0t63WcUQg+QshvAzGdhUay5yGubakRwPQZltUA72vzKE1xN/ZmI2S1MWaPSItFoLfjefIFFhOdByjCjIe4ZWCIQbQ1Y1Ps8RvIYrmSejN1cPfr8JpOjtm3wpMLxCyEwXam6RjmTWdeOsogqoXjvMXZ6//eiEs/bRlycBWD5bT9yDO71bvv1Yr8kXciaJN57WmeyC46p5M9BdFITosNajzL5bCDOXPzmJmwjFYWasi7rVAj3Eg00yBYA+sN5xVAC58LpSRUWP8/WY6F/p1Gh7+HN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WDGbgccH98MxL6OQgeFw73d+SmDqUHuwdi44hyRq3X0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kPuu4L+sVihAdRTdPajz5KB+wAbQ68Uh8dNbO45EMkfMyrdRnWvQUwks5zb7d6x3TVx0KNFMUN+rv++FL3lK0V3o6OwqUsPfCF9wmPEKszGCJ5clijz5/PL/QYC+MFlSAj8dDs6JnP2DQmkgQbWSPKrpNFr8fOnq4c+wdHMOM1C7FPj5ip5vfE+qlUy+wjNIppEYp6684sK4IHgq+1IVoRXS/ikmbHIf9NWikJocXXdbz4nN0GKXxcEkKGPlcFke9uhas55A8n6u7hK9CI7eFl7u+44ACTJ0P99xQUL/jJ5KK0aimpggehuBY9mgXOvrmQ2d9sQcs2Hc/n24jKoJCHwikXtoB0BdNKL+vUcq312tQg+QpNP+z72+8u/ZSYkMf8uFG+L47boKkvhahh8XQLMtoCSkUfdI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WDZTUlWL38h7tjpyQEaOogGr6Oa38i4vgTY65/P585k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1yf2LKBpQRsZ3Ob/6ZCVQdKbOp0gIXg/eWMUDPGbZRgImih2MuaRTPyxmeG6M6xfGqAaU8M65q6OG5rdgsX1vObnO0OkITxG6tyyK6uL25+vGm8mEkt3NHOfBxvm3QKtWU9W/4TMTwuq6EAYMwvbM3sI5YD+tkgDJ5lCRQ6vZOEH9JjkHcsfdEfejTioDOaBEIEXJI0fQcPBkCftuXzb+3+H5O7tExYmsnCbk6fubJkQY8CHaUomctcdsGMRTZ6HVOw9yaDMKIPFOAJBRH6rTe21n1yHLZUCb0ZZf87gBcHOtkhow7QFEnVDMzvqUc9a+mGtMx5nhRI8ihi+tNL9dfBWSOU5SdAwUxIegAiauXAE3hNOfF09C4HDgGd0gnM7uaDZ6fqJmBECRhPiwF4nQsLxVLA4v1KI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WEK7FhZfQXZMjURRiN8eVevE37bJpU4QHT0SxpFC2tM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M2f+56HEd05vxdmC69l1xViT9eno9dyBn1VBKKY1FqO1lg+GjdQsejoV2b3L65wCXJ1+gLl5os3gGyGfUEEFb5Lg6cQ0mMqZXp6fYUagaXdPh5sHRc3ZZLpKFeIYODpgL0zj8TrWg4D7HRhj9UFWVc7vO4WQ6/M+Y4DSnaH5s9hazu5nVqal9m+VrVpwlK8+Y4q7xgFc6ZfL7vEDcn7qWvXJKfWoJX+si/FVzXkeWRAeRrGQ51l5ZBmNl4JS6YUGl98sojsc9wUzMmczv8LkYmkMuLawf1K985XRIy2efKDRmXemfBDes49O5Iq1Goou/mPFGJO+3uB0vM2EcWXMa3W/L9KD+Tpmq/tJXpZRCxbI7vSYNuJD0VolxlfLOy/wB0nlAZUHTRmkVGUdNMwTpT/X+sU9E93b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WEfyixFcEn69KOYl+ZDmT5sFv/M8I0yo1KntnwWY25M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W3wQ5gkHWFxVnpEeTIWWhdT/eDZvHvyAlfkJAb6ai4peUJhKJG6yz5/EETP+GhV04hLrSbmgsa2na20QvtYknosrKME73psnCZJv4xJG6ZurwzoeBPf56KWJRuE+GbSULGUGWxCZAaTz8zkH+Hy2tfnbwfQs0J1TX54pRcpnWz16jeDK0k2mmzAbZTAGpkz3DRn+fT1x1bjUs03NLlwaZeet1IAZZbCyO6Vw2V+bPtxrpjsseDansljO4BM3eRWFkJdw96KBunR5D8kq+i0ogaPuGSHtnIpmUr4WhR9L6LvBJzItyXcxRyoE82cZDoyRfso2LXqk2KAd+a/AqM+O3S8ZzBqCZH0AQEMZg3H8p8gDcc3y68EH7GzdC+i8Eq9n8ouGEDO2yucA6EamjA+10gCGWdjXjZ+E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WEmFcN6FPFmlVBngGTN2ax4XF/dNdOTXefujDMeOduo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aN6R0u5HIfKq5UKwlzvQwk53yFVn4X8m4ujH+hmrv9ofcIIs3g+1VQNcBLR4ApBCFQ/qiZ7czsQUeoGXITgyQ3e+QDsRBITjVzAs8NqpfROor42y1gIQYwI1KQX8/ORnRZ7LDffgL4vAtr7AbkjKHipjuy6CbAyNqO3cQje+vSNhOAyytPAeMDeDq1fvQxDB0B3+RMbaFp/wkBvtUyJ4SdDWFet69MIOUaa0STF67kStNZekfV3jKhVjDRFXkT5YbjGQqJhEOaQ+ZUrGOnhO0iJhpX8B3BSur2TY9F9aHLWy74Hk7nqcYqTvnhF4TJIN9WKd0RnkkEnN09uwPlObd8YJMp52UxrZXDfkZjlL4pkj9KCcgFlKK0N3Rp/luOMktB21JinBw5NA+6233p9JD5s1GN17UU6l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WFeisB3yTjLz0Gx3vCISV6/D50lbQg95U5zV1v1QrL8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5S3jg4iCeXE3IveetTyi7i5/Yic4NjMF6wbefJy4qx0vOUONO5LaH8nso7gM4xQL04vP4Zb6EWsk+YMrvMRMIzZdzMG0Te6pQjq5sMAXtMYy4gTdKD59B23ZiHqyBaPLH38sS6uTq8SNxPKymIUPmEenURDA4bOxWhihQaKezJmpu+WTu7R7E9NbRN5Qd90YpDArTvYUv3CzQmMomNt4GYoozDNUtplsg842fStLMphzAkOCQ+cSAD9M7L6eMYi7Vk+1/mVV938X6OfQp9fWtuCtGpif+9cBeknkuEi3ZG/t0+GF6Ll0+RNw7bi30Jkv/yLt4h7Jkh1YYHcGB14Et1HPxcmDQjuTVAT1ErKAB/e/t94Lnal80Uau1R+BaUprtGhUeZeTvClaN40Xbf5YHKV6BhNdae85", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WFuNF8A8hNU/l8X08f3+iAdlcj2FXxcIrhmuHfWtWz0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P+9Dcyo177lFcP12guZrxqI+Dji3u46yFyXSj1tNv/zsdUPJyNnJ2IlifK72/CTdkZxwPAGhbkGe8yrv4YnCz4mEjkUQMRqh3X9ZligIRzJC84gTUnALx8MFlimvwhlOz5MongvtxhV+OUrfXgID6K7fXnLxWLU+pd+Snzzld2nrWkAMQuIIhLy2g6Xvq1uLEt2RETqCdXLmJEF80rCS01ARrvJXBOeQvaCPy8855Nk5H7NIojrBEgOnQc1oDe12pMhYOIaBOfLOIwBPzI05K3pWcg6a0ubB5KolMcIYsVFOowI3RFT+g9S3DLUOqhg8SW9An2gEM0Dpr95mMVw5t6yHPvdkA6XErB7dtMQHYNxV3cWVpUao9ZTSndtyXUcYHVpaJvgABS5aIad3S63xDTePu9sKPZCX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WHrsIZHvpLc2DnvvE2xgYqlcw+t2rNBf3579Nx5f1cQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qHh7XOxCkc76Y010rFBxhgBmmNGfoc6+Yt6UlwBYkM0WeFo0decuOV4QwSMQ0XBp0JHy5LDA71unHn15cWH6LHYF0svNqgYrUdMnOn59JjpypSC3/BblH6ZULZYJXAzAnf9QidWatJeE9fxwPMd+pZZaFdJds/tW9l650pXN8QORb7PbkR5tXaTVVVsJbbmabXUAYZ4k2pjHAFBZEAdWfjxOGY5VyyWLS2uaObmKLvbE9YPW7+4b3AayaxO/PWms7XURckUw+fEhfTrC2kZAlGBC/CJWdZAlK7NNpZ8PVZuiOsvhLfQzM8TDzmncaONJ2nZHlQ4jmHp1xEjltcgSPmcnfaY6PBv5aNHBCvokUuRPh1eLTsEryZur/2u0OFtTzL9YABu0VLzqv5/5BpdcHDud6VMWJq4+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WHtR4jAgyZD3t02gpGLjSrj2+kPs1URz5KKzZDGLBCM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d/HDAxbp09dXv5sxOubweEJF3pP9VhDMCYazi1Rqacn+QxQg8ek0TwZJ4K828dn02i+avhHJCtEXoMM7jDvmKZaZmt8pCemTTQ7jWL1UR6KFkaG6usaA2Tgs4brQxDF5UPgiGNv8BSsRZwOWnRo+dkSx/DWMotlb7QTy0VnoQRhscNuMDfUUVlj58EJ/kPcsS6Svhv6ylgr7JejH7HkwVCKXjN+RZqfWJ+3zaTEi1zZ3zO8ReITh0IRZ/57G7BmOlQDTg+hRtwAZ2Vhmdiv63f4tRN4sfpn1MOjiSrdJR5JkXzGKPd8YlFvHaFSsksqiQa1lV/TCunie99m1bek/MXaDnnKUhrVrSRPC0tJShubtCISaXOZQBB7kWlmiNsQ5RMc2fX89hpgFw27GfjktttO349bC2ssC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WIWvbTBEtarX9opwjsqO3m+TD+CbELKJS6yFVgwAlRQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jUg+xqIEg0m4fE7Bo2oiTgDDUbGEB3IMMetW5y/16r6/8M4Ok8s4lYSgw5x+/1mC9RwEtCkfACmWVxKut8bxqENBg3P1Vz0N4hSPVMZx2CRkYVOvYLmDlKDhHveYKZbJ3lxuw6ifk8k2K/wJwQjsOvhFITGXoLabLsGIOjpNaG62kzbKSZUjX2Nk/3Ph0fNE9hYqG7ZnFQlmI67nu9f67JSIg4O7JTFCilNrregKAC3/XZQUTD91pOqLA6i8+KUrMgILAg+3u/pZ+4Y+/OGPnkr6DyoIuKeTWXJGlP7aFI9Qts81SqIUKq1Oimot/g8AbAGcjxSz+PTKJcntERtCekFmEu/jaWYUadMI7Eqf/sZKTO6uSU2tU575RbCjiseRBbPQKNi3HKroOu5U2ZvC9o/2r9DOnhFn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WLL6QwNlSIcyTidLnKsnw35nku79m8hbZlyYVCtMWXk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SrOjvUamWHU9RvRB49qKZMQQmScvV5dfRKiJc7nyZQUV/cAZjfmkkdMMXJpvhi3F4jyc22lQWw2JixoeyX2efq2QLFtvZUnio9CcFodvqVldd83I7/L2YVAD7QlxUsPPjTd1TCh0TYEOLz/1ZxoEoo8BYdOowAc+Tf6zi4SYRdrHoBhxaVywNuGNevT/Iqf4gQYyi/O90k33luWGgS3E+o/6rN+r6thrhl2Rzl9fE7eqlqjyaJB3BRjj5nsxQuhYRfcpsKSqVXrCLGKd/ak4a9nD/Z8Lfg14WuNJixT3GlWZID9tAgrbet7dy2qCvs56mx5EebpMw6A4bDr2bG5y5O8alSO4u3Jfe3/53BIR5903fa/0ArN4d5lYl2Vt01FCmOiU95RwMGQvS/W8mfeXt5Kj674Gx1At", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WMFYsjPFDuV2yaRndpNFmoXf+WYVnaIPh2MPnLsPZHE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IMaDnC0pdoDMcra7kkgTQM8YD0PUmgTpsXHn555KjoGFFT9XgLdOS9/+gMjggsrrZhuJmbWkAlPqyo4rBQ+sbIByuBWOPthaZ6vhp31bTwSKz2vfkceUtxXPIJtkZt7OkPP+y/Fr9/OKRWwFg/orIApXK+oEqjeoeMuzIWQFhU+ofA8KfZtYWVlX45yN0yZvaTl4jPLb9QCyA76I1R47KmjENEQHRVBTRqjCQ/CGXawkL/1ek4dm5hX/Fb9Pe/CnkUAuYIh6Sw0bpY0lBAWQixJVP4G0B+eflL7Nxl4mYb5zDlUP0GXdpB7/EKpz2hBcWhTOqKWu2/N9TUUws9bjEBRRuEPMJWSucSQZqx4VkI4IFrU51vbhd+yKdiH2ZP6Pc0LbSAQ/5yTC9GVONfrs4zhps42rxbWk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WMWoGJfwPC+8UIN+yyeq6VVsxHAhxe1NQM3wrlaQrWU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qR0NyUvjDMzAwLlnA8ZibYAaXS+jef5CPlAE+taKr2sTLet357IqQvdwPQzKIaGdLK6dvxJdUrbq/tngrq+WV8UlzGCGjxSLvIKiKdmSUjj6YLvyIwhSlBcsdzItbJNAz4uWLlbOe2kfHzq8vMh17xqh8tj3/Ped0r4BDx8K1hXNA2G1LI6YBTbWqkEkPiKfuy7vJ6vUVKIpl/ibr7Q+awhx4b5C0l+aVwOIhzyebhjf2Q9CvAHfuxp6LKbjNf0M9O4ZWIW/werBJ/CkKsXFEhzGeBUEBdmKvNRSgV6PnMrfaw6B/M8Y263le6uEJyjJ2zgrDEsU2dCTg2sONqGKWtzHECTb3fYD6sdtfTvlS/yWB5nvAHlMeabPnmoypMPwvZN/4qGHOXJgAN7tws1agGITBcnQ9zNM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WMYlriCdSiLbKtBI2RELUgBkIAUCe0O5HVU+ioS/SJY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/AlNpWCQ3eSHx5iKdb10oFsSdb9pzPxy4fN7HYBTXN5x6K54SZ3bwsOusBy1s2Gf8WQIYB00bNdJvDXfLCY6C2BpkYjxqhnq2IDXScafs3xCXvGXqitK48ZwLtO8Yk09/2ocPjCcaTmLviwTScOVbYD/Q3LKhtDg8LKrg23dSlp8U9hZ2+b5xhtswQ9pCk5ufPMqPnYwSveZakZkPSphmZBRVcrU7FIDSV0VyBq9oQs25XUy6ICzHKLQ1C9LY/eNuTsuIjOrgzY0C9wjmpVBu9BAJif6eh+YXe4kRpDrWKieR/E9MdG/ZTyZGWTaWyOIX18rLblIZpXCQm203M5LlbQA9TkCsPxo5ZDobjoUTW9/ZPbnWWStbhT1wjrbkaAcpSV76kDI8myfU1iUL7/MZEQKqpEtl/d4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WOngfTxNGX247AovZHClAnQcGX+jJo+AGwDGeiZrdHA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iudqUPL9Jj+EghT4PNmVfw0VGp1NEPXW8JywZur1kcTmkXSufnMN4EnaYsBfxO7JwLM56f3VnnA+VIRKA0iW8lBHKXx1ARjqXKZqxDjZ80M819MYcJbL1mNzfGCgKgaaaYIUiElVribfbrTvKxpO78imkI0SwK3RP4igcW5kRbel0qOx/mtTh2klPYcvuy1cb3/BJ5VdFY60ypYiEvh7rlUKr9IdrdR6yXYIoDThLmqQUofKD57woRP9hHO4RvsDFkxLp0kP+5gKqfyMoRI196KDtsnN3AVvXKN3po5DS1g42sPiCJt0+LuyNry/QjMYFkUPU39Lb8hHqFro72F74N2ifg4OkNEVXuPoVKBPJfp2zI9t4L7c5T4WkSi2ZRhkIYYbRsmK474oYJdqwtfBlWnfIOWrQMdx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WQF0NCf+yq/UQC56DPD1Nvf01P3wFhczzCvtiQ6tSMo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+YIdEcwU6ZJ+BI13A+walktPljOZ8pGnvjtX3JtDMq5uk9Of5GWOqyI33EwyimJUlARO/xwlDs1kunlkn0p9sXSeSX7tgg4zQ+9kAYJutbgbWm9mjVDUJNqSKg3ymPCLp/Q/e0exk7RpIuKWi/7fB3VWfqjZJkM0jzklUtpJ+skXtZCnWEPITikf7721pVRGW1IefhJIStR5kmQNM+xXcJPoq1uzFJwWwirUxZ5+tqAfVfpu2NDxFiOLV6xySybJHY5zDRauo2l+Lx2xzJCOYr9CsRhSjFuHOF10j5HNobrFrcSoYLX9Oy8yhjd+V2dM1cPc3CgAdsR+yvmVjRq6khrM3cavFE4cIwMkP/57k1HYG1UGk0yI7aygOYzk9UlUrzsMLV1lje4L+MYpIO0S1yXl4oM3/BzC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WQsECj65UKrY7Z4bZ+oPXbD8yOXGON4YfGZifsvzAQs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zt/KRpBqJDdp+WWdOclCLcDFChDHIGG33jeBWKUbwhxqatK5fzc9fI63EgbIUiFJ/jCe6xQJdmxyxyBX9B7EiK8esytMuogX10RHI+DpmR2/a29NmHWUwHpn5a1FFsRgefwPXa6lc2aWSyi0B7p1g9gUctd6wPGc2VGZc+rjeyj/8w9SXwyCRohjeTN6lXmEyH3wMogzCqvjPGMJsh0N/YGYo/iviReo5MiBVrAxDRQawJqMcMNTl2YT3AWwoeLlSoIS+IytCJJGsnKL1BeRq7ErscD8szps69pvxjCnr6SEcJlDesVP/beODDfpXBFNHS8E34jlEvhUPMJpuHIUKPszmz6t6YepE0xJdXGnjwQXNmxdpp6q/DjFBN9zYdaxXajwrydZSD0920pq3z1tH38jzcxG496T", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WRIJPubr7czPvcCfi8tzZ9mhsxTLi7y3jWsOwYkBFHM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PLV91vK2eyUf1NAnVTLosIJKOupuK6IkK14AOeYpuM2RqlgPmtTByv+dioZt9AZkGjZejYJXS8w4vGCQND46DliQT5oRlAjNuNhyI9inTeEQqFKd1CZbfAJ/V7J6JsXLNQApzYUu5e6grYbXfhnwI6Q9ffATbfT0CTkIeYAmaf7wP4ubqzJE5RpVGl4Mr//oiLfFdgnj6msc7QRwWhjMY9JELpNSj9FPkcVh1WAL2DzGoPn3KLbUT6vgeb1DkM4fRjZGdQswESmnBHGm96ssVTyCVc9fUGK9pdyiH2yuz3jHScwaN/a216OiHf4d+FDw77WxZUEFdsY+TGJ3zVXLFg7277F3J76uw7ACPIqdk/h31aEVo9h6TyxvaFDxemrgVAcZKLwe+9N2OFloNt384t7bOGNvKKL0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WRNJH5eHVG1iNycEqaoq+t+jolx1Q9wjVRWXBIq/rDs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aO9J+gVn59s0hCnyb/Cj+EqYiTmfFZqk9h4O/rFjYWFhLJdcNCw2L4jE9AoEjw8PwgJsIniKolvbiWaeZOBPhbhEGrhiFFC3dLan7sQwdk5EO9Rk7fv3nuKbnbYNYXhecSeJNCQ/N4eGCBWEo8rHvsavAVvwKy/f3hea9GC8urrDiLBmbPUqfdHehK7JxrBxXtaVqa2fb7JYx1837iWCJKXgA4Vs8pdf1t/HTFAErooGCDo3sgxClYpgOO7AOzGqRW8tjsJCqrIxck06TY+3lfuXWhpMq97UdWWDJ88u7JxPmT3s/CXtGF5uuNoVCDJwFO9TuzSnN+b6viZ26S8t/JNppcI/KB9YeiJB12xW9bmu4XL+GNw6r94piA5xvyvi1d6oVSmrKxBAc3vvF/LB0TO+MPMIZ1bg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WS18MowHygCNE2fDKzdiZ1aK5+q1aUuFJxTm/mszDG0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WwaCUuaS4GeANhKL1+fD89N5hfiJOJombuQ62paYQ5MxV8AWtYucDt1JgsdCMt0qX7MBJoJeUHkKDtMKHwl0axY9JnN2mCqyKAl/W2j01xNCjTwwITG7Jhe8D4XxsLg4H/rL1geSrqUfgA+A7zHTYSBuCmBi2eNx9iq0sUKuE4APKX//Bukt1oZ60Q5CA41adgNBrhIolGr8IRN71Q5JURuCkypa24wmMu/79Ee+hDvzqCvj0JZSE47zCh4dHaB1Gr9EeyG3hqjiBiT65TC0880F76qgRy1q2o35LNSlgSVW/Bp1nMCXlyo5r5WVDoCptjB/LU6B6Y2b775PoYNTujdUVj+UiiMzKNOwxsJkNArDJizQU7Ms7Uy44LlPsMDOWGXHpQZplOZCssMGxXlx0DTBMO3uhDnD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WS4YoINQ5eJetX7oLh6clY+yWG2EU9oo+FiFNL1qFzw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rDOU2Q2OgR9EdcH679PNy2tKyID+JKJx42GPmeu6j0mVUmar4HGqAUE2iMlllMcy2drLfxfkH0XyezolE6oEEGV7Wc0RiSO8QBvyHmqpdIclc3WX51wDq3u42U5Mb5XCqrdmUkZlkiFFNcBm6oy2lStGVH3RYodnP8GU4gJGaAsX//UkfuHoARPBAKPo6hOJSW0Q7hAHR2n/7qcabW5cSMneom9L4x+wPWuhXQQ4ui7jHaGHMb4DNSKdbxI3l+p9CNsD9sUc5K67Gmusos9q0gJU6FQodoiAmfR3q+0Urg22dkujgq2tyhRlUnqN7R8s1qByOKGbTW21xZbThkc40UTir5E1QkjrmudZM+1dvSvRcu69q3+NaqnhEoLp0ALyD3DrdGLUyzDAlD4Xru3SJVx2ZmzzElDO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WSOeMe8CjJQaBQ8CyWhxGPp2NZIDlCyWw6UiSs34syM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AU81p4BT/amIdOHQGXQkq+0ZkPQgXPTak75KXzSmUcIKYyG4ldiM6toqjxbdfui3to+B68qKYanMQ2hVsPmBnjeVl8k1IJPLMFoTEScSwu5YLX0oUzgw37KpLnWvM0lUYDAeKGRYckezNQwQFmQk3+LsawPWJoZm8kX2gR/xelifx1dFz6PgpssOmsKMOalq5+YRVL/nEBncEsQrxIqvrlaGiAlspVcBH3OV460AN3VyIfxGRE/uomkDub2w3uv91ZscUlCHk4rlZGKeqOz1gYiHeB7mpuZvNnaSBZuG7D46P7WCxnagfBuruGHWJDN4mqsV4DM17h2DlDvc+4u46ndjKkhIaMMfG8RRRX/wGmV+cDTBGZjzhDtZhjBWSxOGBXFL5TUtptpGDaDvUfqKmpuRvWywXExz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WTAFPey6tCH5uLMm7tR+jCP8dmi8sVk0MjxbHs3o+GE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "stYmBu+t3r7Njr4hTFxw0Ppw61NGJut6sClwr7RPTlakM6xmXztphm+N+NlpUL1Ac4a4EBjh0R1UXZWStTMQ1b/FmUF4kJtecwgwnkVoabvcwSqmHynofowbLtLa2HSjIlm42/EKNuhLcBiM9N/5auu4rXhzpuzh2PLGwyzyOX3n4C/OMVlX42IwKAwYcVVk5J3C6EjOuZ7ByFXtUDbFoX0nn5RjMaJ25mij3aoUB9aeDYBZmO74kN4xjHunjiVi3PJLxUqAJPcVZACykZRhi851GeU+BooYclEZ88KCoLLBKorfQnjmuXjhgs3vuyk7ifokE5XdM/0Sue6npUAeSACkceHeHr80DCPJdcTWiX/Kfx7BNYmXt+6+2ERAYOz2GJB+Gm0KLQ8L/RQ3ZLF47hnEMP8vRoWH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WTbwtJhsH7F891rKYCU5+toi9/dlCISaX7VPVeiGAZ8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GJF/hDiWLFAjETGJykCBiXluqTP9223t9EVe+hNiU40yoKAk4gQjZwKcszIE1MGN4+mEEkqpOgzFqWl4Rk6Tw7RPCJSyWC/uEFoxoPk6NGJEjM49mNC9C9Up1BjGtx3BZb4uyyLDzIIQJKgiyoH49ogYAOe5Wma/0uD+ijyHba2wCEPLNOOAz1HwFP5WEzB67aoAbzf0KYccZMV5X6LOjTn+GSBupA+UpskFTEBgBF+N7KPgrqk9kvXem320vOZ9cgY4PlIpllxeUhspt7EJF8NOIL4KDnrbCbl74NFHnPSzbEu6KPuk+Ogokc6g33fzvd45v6JVOCByytE74RWEp9NByxZYMWmBI3LNBBSSL0wo6WuLsV1LdVJjILdEjm7CyT0jUKvXImTam6+qTR+pypbVJtTZGGiU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WTlDa1i/A4Wow5VLJa81aOO6O+MUmUN16R204/RquAY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E4wSH7a+s6UWkXfjXmh780gjK/2bl7cxfufhtP8D5YWrax+AWJRZ6NeRjKXrzxRnWxZakTxAMrhQ47B3olSxqNccuuA98X2B3SuoKk2TXqf/Ku71KSzbOC3NHZ3eFfsLbBnT9NyDpLFvS5MzMyZDl6c3TcQ2ROn9abKNzPFDQt8hGw8FBcs6OcWoU0GC4X3xFPM2hOm/qKjpFJii6LEzDaz4a9IPla8uT06kpIRM0+VT5XFHt7HmZJoMB1/D7wlrAxa+sYXy/GRPpCB+1DKZ6P4b9ssf5IcndNRFkXB5FSlc30/hg3UobVUaZ8cwGz2Tkeq3rngDS98PULLh4r9S33scqa7j0Br6sK9DiAHDWjH24PqhUQ/9zltA/5NboeFsoBkruxklVWn9IfyEtK+6ar2yFiK/fdQL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WUg38LtpeUWwcQEhWwgrGvgmxlbvPGLSaWl62+Fom6g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZWIL7Le6mCA2Z7XPDfDWqkqlaAlmCRFhq8PbMcDoDhH5kiOyJHjHYXPO9/J4Z87eIAY0ms8hQ7LEBEFwtUyp1u/3+Nrb5as+574UpSAvd2Tl5F2b+84iJmxdkHQYvhvEzJCNdyjr/6HZ4yhumimpst+fx0ctfvJqONl62NU4cJ884WNUttObM4Q+/acNd/tfNeu6Hbz8sSs5LYgMRutTsn/dOXhNp0ffxPEkdvp1gAEuiqvD4DAamj86HUJQe6yGGMuxHA1677/lpFNQGQmIpeyNt+mwPjOsOruBdToPUrXF9qouunfH38BcrSEij9IernpiIMJP57Z3wOcXnuE3koBGX3gW2RORQBM6ecGozkqakZBL10gh12IeCEc9shzWerOkFpV7PPT0Q4O3wOEn4uclZ1e2vKoe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WVeWfF51RQzbWuFY9b269Z3onMasmpw86bdLRgNfdfc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s15fIkIeEnt8Vd3wt1Oy4EAW7r40QBbvHmpNl+R+ayN1ichywk20EtmTMNnBiuYMQn5Xd+KJda7B7e2eJuHo7/Q+uGfpT2hsGDzLdWfZdGRj1yG4lSdmGyKgP5bmDhrbD3bCq+7GbxI3pB1HKBYF8eUZcU20MakfAvIcxBVPUkdIutmAiN5SFzgqZxXiIXKiNODAB/QGubsgRHsSWZajrreHCxeknsxHZ/qdp2sTIQwfuQbStN47rgpwm14viuNiAu+0csyOqYgPE1ufORdInGlB+Df21jj4Bc6PZ5MdNqMpk4HDEVhEQBd2g4CI11bTcQUHirBuaXY7Y5Yi86XVibzVF9T2qcAzNqxFZk3AaEvKYMywvCi1mGwgJW704UdD85NpnmusxyyvshqBPbyx6ahPLerHuhQK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WX5qHvDwshc2HHWaPTZ56eMyiZDMQ08IICxFkLPpu3o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZjeQaCx3IuYsY3ODlhT7tLGaVCHfgGGZgr1jWGZdi72cvuUdsp2ghttphWbU8Ma0TrwEkcqyonX2O8lmjgxvgYSOmBlFjHpUVIxsLNV1wn5Z9ngchiiZngjA8nTivMqDd625E7XI4ma877LBRjUYcYVGsRGMSmC48R3FaRQMwoG9HNk85K6pBFaLjiVDezGxOrNMCxFknQRKi974PWanRzCsI9LUTE82NAnFmHd2maTCaE3a80k3sLUI0P15P9G++iZA6GolkzAcsh6IJXQH4RO9OyCMeqt1ExQrB2oje/nW8I6Xvj+aY38d2XN0vvTOV+Go8swbBzn4xO52LWBYbi8vFPXp5m10KZhnng4UPi7s7uMavLIyIAShsnpsYVu+zvkX+IVD/9PIRIvolmo57q43tMKUKiTq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WX77k8UlCVbu1gHr3NbWWBcMUtMjWIQxb4U6gxHlltQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AXc0nPTffVfITPMPEFUxDUH/+89XmQOSN7HeZCtpENn9Q6QT9goktRifqeJdZTg3Dh986kFyCz9y7FlFmtFT/Bn9Z0zyHXuGqL+WhD1Cx257VhMdzszb8F33Oc5KtE00xsm2lH+55YrPGwcTL+yADiVQdeh7QR9kbQTOoP5d9filyr4K7R3H0y4Ro1PwJeQQSBquv4bzyaMZ/2JCbZnM1G1Dt48+92Ph64s/6813bNrH+xEZJK1QbQ6SSAL5vVVsKscUcxxWWNC4FIvtvzn3BEjtFnrgP4CgyjkfWmKqbf/wl6f5sN5ioeB0xmgeb/f7nDC55vdnQWUlO6KrSkPEdCjPWgESRwIOWbgRNPg9U8NrYU8T3k+I2G2keKCG74qb5IgBTEIx2durea+Bsc3Oe1VrITka397P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WYNvUSiSVIv4Tl1A9owH1oQ71Z7AVBrIag0r03rUlH8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q0+E1CMCZ3ckjBI09G2IYqryWTHXbN0UWXxqwcfTX4zN+XN2q5HLQOrg5y8P+ytaGDIcNVxMAhUTsfXS2g3F55pnM6E1TsDGnLWXhBKmHoPyazw06/FEZWQjMKO7eXC+tSpLqbpXQ4HMG+3FwtmgA9xprUld6tFiYbwCMvVcF8uhPJvv4r57xirJXhawvkHFn5gamS5Jj25UHqUI/BwsUkofvK9Ux3CSY9VJb807ENug4NEZZU7TpluxhmSl5eEJMT3l4aAAIl7ypWN1AN+GACSQeA1IakkOan5pJhSKwexkxsO1dkk4hJXocc6WOakGAyQSS6n0JrRUu8HZSHAuyqcuvtXbTj9xm1BRIHlhmI7x6CC+StxbSSWdi0FZ+lsTid5mNWbutIMImMSYwUKiUJhH/AlBBsfo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WYYCm8DtCORYdJ+pdSdxsEu7ZO4BURRIOGMquh/vGNc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MDXa/t62As0W9aEdiUH5zJ+Y2t2jo500g+Ub+6SVs3bVtmLSyZRyFUakYUdy2humrrCcy7tGiQeatOahLNeqivRZ5d7feOK9Ta/6eOH7kNMyW0QoWJmNlEIZJu2gSLQNvXjnPhnCKdP/Rp6IAbcwRLaQDJAac30MkWH6v3Z9KWFXMzx5SwGXUB4+N8qiz2nNw36LRRhwfzM4yUyJJ5n6IljBL6wzOoSW4bluF3KuP9yW8kqFzQEEX1KWrHK0Ch0Xz2+Rq2OIzQxFvuw0YRUp2SjPTKgFFDJqgQc814/2MDR2X3K0iJ/K1o6d6iWqMNU6yYa7sHgJB040cGU4o9lr2rCbV0dM7N1B8R59pJudwoYYocwTKrepWrnFxq+DtMVJuNAtjfWd6yiuozK1kKJ5KiDnBtTkfvxN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WZHBzt4V2HbWJp5ZYiP6JXmHqqNgk/Z/NUkgSt52uts", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Xg1SNV0X9kYSTtqKMKDrRcoCG/yDZn7O/yCpo/o0csN1EuTWzoLQhpSH3H5kjE6Cy9h1ZtIB2+WWiKJVb4K9vqBcqKSqJWCnuzfzKAU57Sbb2u1wsCzDuIPYeAi65HnsYBvypzQaerx8USlN8OZp8UhVwqbzFHyANEDKLFUARuL4y1ZnU/pLPwRxkyJ2/IIjTF61NfRcKMBtCMWU9/HlDZj94TRB5rdCQ42SJf+sM/VPxa5fDmWae0rV8qL0ZW5r12v9NOCCEUYbqEpbICsVvyx4haze6UZOSGKJVR2Bh52nHab6/gtp8G2yg2wvt1NiPemmpy2fwFuimn9bRR1ZYF23lziB0cWjNx462XcQ8mHm1WYHkEh0VeJ6irygo3pnLtZPc0iSTxG3w6n+f4hsOLt/hvCcHB8c", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WZYT6i5Tk9sN0uUAABicZTBpKLfzReVC2KqLwBll7Ck", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pVRewPb0sgvmbIUr3qi78s4qN83KMNhuWiwDc5HuaA1GnblGAaSu3usFg7ky3wPdV5prkySivrflmDnpM+X5NiHsY/6EZl7f5A+Ut3PeGVXx8D2YBRWTN28fqhvk1/1tKsJod0XjMK00dBIuOsh1+ky/R4VxCUceCmdZ45ayurQF/UmTvHNqUYZMTFUtoy8qdmkKKPGuhhZHTJds8GQ0VTIOykK9OzMgsSpLwC1FBdh5ifVuT/mUZPcWm7DKCHV7JDG3UvSKGMuAkGm54AOsWEDUawL4SNtvrQbrVg/o0aLgAaM6xWzra5r69Rk4Cvxc/YyZCmpl+Lmez3SX0nkBVX3GDnR3JW53gHk9RbawP7S/aTL8FZmGk5GYTKNc2HKci5LLKdULkHT+ark/I37x6UvE01lQKtFK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WZqJVKciTp31wQzzYiUkPAIZDC2K5HdA0dbQRvs7thM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X8gQr++IRsWzUMyfjxZzLVoX7c39M2RPSSooF3SOxaA1NQR+Bc11Pp+Nlz1B+8te1hY+bGBdLmejMxrwQR+XaKHhde5Tl9SA3qOMKXDDu9xQFsKgncOmhVCKsJ8CvTbm2xiuX/cJXCR/1fDkbfIRznquJjxnH5t3mcZN9ITRKdJQ8g4Kjq+JCBXVmtLzJWJ52u65bBuNa9KT49T8khBfbUi5fbZd/hm40r1eRApL5pXDHgOoDMWBh/q2e1cpW6pFoNht9hwYuEI5zyRYbgalyqthh6eZRa8j/wQQ37LVr3+XgMsbymzOgawmw0udXGJwDwn48aIskifBF8aXXwRmDVz0ZG0izM9TYxKEa9vdYQ9wQM24SNTEj0aM+85nGilCDcsQWNBNq5K22haAu3DCLzuDfOSTQ2VU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WaClqgIZjsNKc7NE5spbha1Na72cO3LJde2O+djHKfA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VL1NXvFTX5wQrfHcdN0VP6LfpFX3uAVgWwWST/b0t/gnv20Tt8SnAyrEEViQVT4tNFryfaum/k/T8drlx0rkHFwf5Y9dhbxubgU7lNGhpooep9EYnyho4+8OIbqRfJxqqafv56Css2L9wUTWddb3ZO0RPusLVX8OFfYFS4pR6u6qrBC+/RXzqrRM6MbKRRq4sK5nH9s/B6jm4oXKjRsjNR2OmejuhzoOTm0C3txJPEtb24Mp8rLnmOHCQktowtVOtFNCwMl48ZecW1D8nfUcWcvAXBGLxXs+T80JLkyc7eICYhy3qL2BzUDqUBw94g2DDIy7tFbZp3rjfBrLroJ1uvFnrLDlP9Ux7Am7cLRBErgQq6CggwcuC2a/kpzIqH0CmEm/fuh0AjGMxfiEHPIQ2m2ZCkFmIVz3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WaxEbM2oQR/jf9XRrMHrkhpDGp3coh8+tUUuO8eP/DY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5fLG3nvhHINWFdlarsQuzPneDSboZoLYpVFJdqr4OKdVqrC0cZ1UYHiCh6vKXRpD67lAIM58hErTpkRUL2qfpGJ+N3IYmaz/4UjajgnVYdtA22DLKiFLtti78BcKiO33lyGipC9APp4BqpPU6bT3oWKHWNsRr5Su6PEsQ/OoW7TKOWVGS8vqo/poNBhky0wJyQ42tboExVyP6n1k22GHQi34rcwcCD9movDTVP5TB9Uc/ni2OXH8vNfUmvYM0qOIiiEmOURw2hDSp7WcLhyMa9kMMm+5QISo9Qe2q5+gxbbAx3weP3AtU0GkkRhUpQY1tSMLR9GMBxrjiNL7bq7HfFtaB0SAIkf2JFTjU1oMDpXnp05E9+3Q4PrbnrEKDYdJD9KT9SfO3EcM+GymInSeykRvRO0QGLzc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WbVZVsXLEH41STZSL9hnN6kNCzhdcDaSCdMgn8TTv9U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xDkl/HYRWJ6DcBgs4g8RGMRzPgd5Q6ynR+TwgFCPLFsBTda6ZbEaxNmgkrFjazoWRe1S8/VIv7Or7DX2w5AgL9Id9ZpgBk9cOivAheca5tGAXZ1e1mzchx9JyQ4YV3ZCf26aSwAPTA9fIwLJHWUc+1kR0/EmDc2cLPucFGLqvrITcZtl94yYRt+T1hteWmuQ+/3iV1FSTaVgJ6YU/N21SgU/l26ov5M3ii1NB1+Orq6mQKUbRRL/3bVEbU/P5NPurqYNdX99pQnc1GoRhYEOSpZ/CFeCyr8EXhmCK7PkmdRL+ZuXDQlPBluluibVxurottxUc3iew1jLFKtPMRYPfSS3q+4Ueva36hutUkF5i3sCDAjnwT/f+7NqwY1wS48opCj9DkAt4aPU9XVU/73X4tNDWEak9I9B", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WcSyNhB7rXWYrzRRkRuwS3DvAQ0+ovovJmCONTHZlIg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rsCgPdMYWQ0oACCzNvKjSCzErEXr6i/V2hjPFYjsYZwquLRzWdZFlizf0pXdnNF8if4u9zbo/pSLud+ErfyIXGc8KOmTgCvDK8mr7/eSkQBShINC2TpmarT5lKQGw+gF4c8n90C5OiZfQyJXc/fDpTnWlqDa3uxZPRU/yT2unyDM4k9RfFUtgMMIIVROqh7BjxK1i2g0v2fmgtRwukimzD9/jr9wQpJRavEuke3ZMjZHXOYuPe+8Hb+VQPEG4n6J7tNS5m0u9q2T55ntpG4FOXs23PcdUoKMkk2QpoRQHWsItY8f40tr2KMRQszECL+nfC+k3d/D7oxi2RzgD5Obq6MnaYKo/4MI7b4l3UCGjlKvIWjpcnTZ78SSWaGweL/MBDZDHtFcAWmPMEMsTK5eLgf3skya8k+m", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WdJy+aXBFG5cDbe14ebEbkhWeRfaPEwU7FI/wtoD9jQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BPDC03xVEA6zPaVQlce6gl8GpLuPk2QErJQsLzG2phcevM9eR7z7+u45z9DtAp8r6iD1z9BXrf1l1oRMZSSl7dDX3A4uD+zFTPjU3jpmOtZhObmoZsx/J896t3jNk2aCYCR8dTfafgcSXKNVrSY5rntiy/5zy/0/lPz58r0AX9iozMdxTU6FWjYyT5gj9qYoiGcQ96Y41vZSEzFXl54VsH7A04jtKGWqGBmPvYYCRZkLOiqJ8t+2LCVbi+gNOTyrI7MuYxQR5bP3eCR7eZMWNRz6aDjA/j/C4CtDkawI3qtIhcP2UKFXy9DSdCDQ9C+s0UNqvY/d0x3aau1zMNK2w4xCaw2Vy6aDV7yUvfCweBQYoLwci1CB6ArAZXpz7AkTcrP6n2iEl0YmSvPBQrU2eCQjXKOcS13q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WeS4KWF/4nJWUbY+4xVTmP/MOHVJFV49spPwrJa9bGc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tvTdwnqPt0aPa7ht+IHPCjgStkBSEa0Z+dGcP4KG3wsAERs2SzrJgPhJu+RZfxf9VRfqPjJs75j3hBd2qpO4XmRiDLtwquc6w0pRTnDEBm1iUDShS0Kn+iDqAOQN/0SAIXzdJN8n9Qmu7Jg80TSpkZSzCl8QPJK40rmPNPW+g6GU786nZ4uP5HD1inhsXr4imAuyMTjIQFBVCGF+G9+ph7p+CRYmWl3jh1TWhqoki1jgV4txbpOC+lfeCm5qQM4Lcx01oI62IP+zXWJiXj6O+yGANsDSKs4fg/a/gVFjMhVfoCGaISWz8OkmuzQS9PQSHJSsHHpZYx57TZzGhWTpnVPVmlvk2etLb5alZrkifnyghUhORDL7Z/NR4oosYlz81u0ecePFR8tylfyBvReRhGz7qjDra7Zr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WgOZDMb1gi9l0QQJ1pw5a9UUpKPITN66odBctw53Idw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9q0l93lYPbjlqSEB3KdDMeC8m60jQ1SIROmMi/P5ZgbHio5zIO+4DfRC/79XRiDFbKQTJGM0ij3rnNtXNuhm6Yq+jjzC3u1KspsIFKPK8s77rMHCahp8yINi6QsZuoNMmqNNg7ZHoQduXCAtIF8cGkPXa7bFQvZs4viTBiedDRrW/6y+TgvICV3UB6h6QkJjDdHep1IocUW8ic+PN0S5eXMo0QJ36NO6Kl7hHIfj+uo+e3N3oQ2zz3Bh8B4YF9Dl/17OtsoWLNlkJRQ5683x1eYoQaI5eT0Y2WTxUU/EF1y2TJMDHPEPDejH3eoxUhlgnPnEe5CkqOavrlStxQPb9ogYpV7nrWRCo0UYcFuf9/ZEx+vc1jesH0M+FnY38lQEZyZ+43aQUiKO68HJTwdItPHyovZ10Glm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Wj7caYwPC0QUVEkGNMEVd9Bojf7Eg6Pf92SJDhJrU0Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iNgBHOs0ds0LsWKBFsaolfFSpjOlv/c8uPzyVsji0/7B3h48+oCEx6ORHQfSZx4rwOjh13iA3cauGMNKT+/0kSgT0r5CJAT39i9wq7WRMzAvkY5n/L19jMkKucqF8pjJOHIvEG6FtvAoxudcVTjLs2cAHde6bOsMD6Bn4AReZ9XUIRgNz/XbsN0WKGLpVSDk472uAI8Dr3be1o4OUFX/BUTFeKuUlNP/LQe+n/x7SH2hc5zs+2/JRpaEcbmZex9bpuaUqsEfcznu0q1IEW69DKVnLKBlIigpcgvUJmpQuRfWY6pbPb6xzub+2ZCJp6bmkAUnSHdXNf1yOljtcQggbBcql2qMRVCQUhgq4JCxMhn4dc0uNDeFStTQwsSqtDJvFwAxgW0cLB6fOimaVxEVv8dUPX8aTuxe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WjbFvixGz871fu0Qhq3pgDLnnX2xcBV43yhaxImf51w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "z2ihmdVcFyheAX6bTaO1ZQ1ZCMa4vlQFJ4sJyvHnsQ1h3LpDhROCWXWQkTnzX4UePZAgJRjxgIgkdUvklJgwhj4KoZkFdohZ1IU1b/y5HQ4/JlS+cr4ztofP1IeOKJobVWMGN3eshdKe0s+HMfElmwqV7v5Pd5bBCpLAfPkW+ZrEnC/cm3WTkmqX/AwbGBY99j9nTxbgimFV7UniocuPgDK33QlOfy3Kc/57GRBJ2mxzPUKnTTtOwDYIcNM8xWNWfuJydSN8fTGYL1J2Q76fFuoIjrybtbcTYmk04cwrOz066gtkmArcn+IPZ7fjIhw2Xw3bMTs8Ww64waPaAs1FKt2bSAnPsvsKYR4jygJcGQcI4eIjqt0m2bjvXCCdnJcv+ssFg9VYc/Uc5xsXUFTp97vonPFij+AJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Wlk9uYTrk+lnrbqzMYpUnVAfMJk+YqCR8a6FSNz9TR0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0aURND0LbIdwBzDhTqw4FcfsahNaYx2o/U8ocNnyJOFOGnBMh0t8CFNFSSJk9wNBIa7e9R3buNLCUhXSl4omLKC3Yq4sBs1ZSYyta7rJyDqbUTLWTtxTKFJdfFJtOyEEX7jp7O/UCJRUSSpjSqXKY+2ldaeYHT7mYGiwOBO7PmS7LqKip9yX50w++MmPmgU2AiYJfZ958QngFQqReLNXjfTNkSWcAnS8AqDmvOhowIQah813bXrDQF9GS1flGMebJsA5AsLbjZ13hEVYSZQfjattWlrfP01MZ7+9eoRlZNn9UUtQhuUDsOJaXFQOhDY7wHqXVu6Rc+u+D7GqRGhGe+ijxnR3a4EDl1em8QCwr8wvMpfNl0a+SNqmyHqmzN4TQ/Lzg8ErNOQOUBwkFE7BWAscyRBol/gJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WmiRzK1V/kL4CR1VUOUBVlhP7Zyp08CbL+FotYTyYms", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mCAEGBP+yX+nRIiIJG9W9wdrQwhrEyP1qPwF+TqLgj8lzrF9rDMxYiyceslIICM3PupoXiYaqaxH4jjTkemYEGEAPZjkAgOYznNdDOth06IZHlGWTmglBTffDxgxgqGlQx23gUt0ccJXaHQ3DLDZc6ZH9UBBa4nSdVI7V5Eapuo2Bp390S1ord70chMiX5fzKhh4IbiYDcgNCIT/5Yd4MVeYSHzPfwMFwMsF2VwDo+L2N8JHvuM3O9sHntfvmHg2gs+sGU96wQYfLlK5IZq/sGDwePmQaPEuAtCWJUf/2x16Emd3AQES3hf5sEqh6syvr6fW3F56ev+qa2z8p45bZ/f1Sl7szp0Q6LKuCAJuEX/ctQHi0sbiqjpk+FtWRukGUxkqjHHhA7TrOw3IPwzCLG33RjSfOGO5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WmziiBDGQ6S+F4ELFRzw52rh1PQfeTeY9AZZVAyiXJo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "p8l+woyLtW+CGcfaY4NcauuRpaQiDJp1XeIlmoQURsrzo3c3ucO4Afoz17rsj5Om1FT4iO427d63ZO8AQCQatOyTpfr6HflvwAXhbI8qqpzmuLxTDZAwfro/V6Mbo+exLQnExQz0x/M+b6fpq9GlZx60HfsmHpixgxgnhYtVhhZc9yLUHbyrLg1ZMnbiwVxdIgMxNCEU9S/487J0fWxghWoJfjRkLkIIr7lpYFbi7KG1WliVdbl+tDRj754fma9Xs7xnh5bFMYrXm3qCkve+UsYBCGfynZRIW1oY2SLyFSvcsW2obWUsrJdkVOI5OcRe9AHVJWSVF/f+M2BSKG+elYbcoGTLAz8sVT+xkKct43o8dCwajKDdDNhwokPpS+kMYSiLth2ytL32Z2fv81utwhTXWbzbBC78", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Wotny65oS/qYLovGNG0QW5S8O6ee1sh9YwLe53J7HBE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c2eiW2PQh5cniB17Qnk8dpoKICD3nkqHVIH9kdVwsnHMnJsAKYURZsoaOt9FJdyQWSA+7o618l1/inlB4Q4fxIrmZb3VBCcStWVwNKKM1lWwyGL5zXl9tgwVNRcJm31U6seyNRYtpRBtu/QJOPfyN90EWYqjqD8BQyrtZcYOrw8E5vBhzSXG4j8qPN4NlF1wN+1C1+uuUBvA8reZCWEpo77XriLRs1aipzGwsRg6DqDZhihQsCOOn1cf3CdHB2P878fJMVZ68DgWbQOGdWbXTB4aS3d2dC+eZRE/ZD7GUv5ZsLcEUWAfKfqUkb64fHsvEMyUuTKjZnocbTsojQP3FNq3/02oK4bGwzm8l0P7PAysSE7V9ZUAOo6HvBhL3oHJlzjd8foYJ8MYym2L9/czPQVlHKyZRQiq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Wp56+z+I6oovrsMhP/AwKf/y+cc5/BJNffvm5hbwhyI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XXn5OvzYo5CJWoDn5Otcp0qu9pk8TWyhFsBXPdfD3S/puoJqGAavctmVSEmjYRVACSe2dLALFgnYOg8KIYbaZMGUyXUO/ynGUPqetPptwo7FSpXRRDX3D28G4UrCT1YGuCzcwjJJ3rvDZnnHxfpI5+M5A5pPuJDojfIqZFiUI8ZrGadJ6pBhJyaacmluVzNk2bRA+IUzXzqv/NivaxvhZ3aGCxv/UNBM2KgcAGeuksbJpkiyDxR1x4U4Dc5D7kAWyOqMpw0m0FSvSbOtLbM7Ig2JdemUwGy1cslF7h87/brNKMWA72xvmT5huRatkXMWl0SPfQKwUqDbc7TZySE4SkHRVmGYBC/A62Fi/On8/Qhz0IE7JuEJDUxlTY5Fl7SKhlBfQTL10vZd4XOBIVsS8pvLdsnCjdWP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Wp9A7JZHW6R0luYxQfv7Ov9RCmlZ905JjviTTeto4dY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VPKA5BzY4g67wjVOMoqNZw2MuOTlQkZTOHjvMMbm4i2+epIhRiBg9uGZcrEkcw0bC9XfDeqTpUE1xNLj9uzr3UHk+3ACmu8MMi/Ox1Rv948lOLJ9xhKVhveqkw+IMuDdMiuTCrOdMQ2tWTFpJg/yV4W/by/NfKj2CcdrMtbPpWzFhbHYgKmVuWhYmfxSv8IhQlcg9Til6izUrKKbMSprd2Px57ngtBlTjIZnAEOBrRvQlKWvMtJYvS4Du/zHe2noOg6gGWBeI20ItQuRgYjU2gSDwl48UqZ7YjRam0tWBc3S8uVq+CYOdZ6Mlz8ScZuJuxiVTT5bd07ZQp7bh5S0T75kbIZ/Pc64mSYpT3ojGN5CVGjTyNeslEYoDMYDq2STrKMxVZHSGFLjaFajwqacq+2usj+kvjk0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Wr+xkmMocDb5R9UuSO3zdV2ECiCjXXRGZdmf8+ZWVlI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JDjEBk+u8MTCYugWXdof93FpNlIT7HU6fCS7FFlDW1yJ7J64s6dUiz3G3aGyTR3T3zbuWjrnYQ7w2GebbF2vvJofJ09HFQGHnaEPXiKNZsm0SqygR+Wpyzu7ZLF9sVF6gVTvGCEPSBGwocZ/RJT3T6l4Exi4TnmU/9PKccPvUg51tuoUDtae56zdnPo/T37A+EiAB4014Nt3uX5vDiaD1WlBe31iz67i6zaERSV/c6jOJtFCE6plcpLwLT5YAZLd0f0QIfo80eUoz6zF7YZNK7XrJ3mx1n2pD+TDh7P5YUXqIFWE0gjmXipVkqu/iPVlTszcppIzlLnABdrF9sPUoOEbBId8a21gXzbEccKldPbiloerfchsgyKkggQGIGq7gUxJckRbkOQ1i2xgj9ENoKTLwRCm0B1s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WrFWljU6aN/ZEH9lTzZmnMZh4Y4i2vXmsv4MrBZCngc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HwA/C6tzqfkkL0DUK/u0+MPw7MjGEXPkZI0uFkQEuImzg+GucvB+BB/MisKm0Hti/i8iMhI5bi9SCwKtYXoDsL1vXGIobu54UitDyL2ezClm8hY5/rbcqd/xARKCwRS+WhRpgw6zRZmwSJQdN2H+XAn7FaJbuJOtGiytl1qZqWz8rP8QUdQY00WHyALYdYXORjpqvqQnj433MdfRxJMO4AAV/jZydULczJchlZcQVrwnhAjhxdKOYuhGsfKzDqLDEiyA+TnG5i+/gpqJdLp64jFEO0tHFQgztyy7ZThGhhXVQ6wFON9rv2mjDRzsmKXYX8QYzGlFieLYUUgr5Qs1OEQQk95nO0P6R+Jkiok3BJS9BMw43rLncP7IBey410iw4SsAYxS2nf7ABqdPMyFu/q1yF0l6fyhh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WrIoCs8Ps8fal6GZRSgSDLgXE2fM2/SDknskm3x0STA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qJap/P2sI03rcKCv/XS+3WUkWPYp16i+CeTW3OYFo3UOoYfW9Ehx2oJ7c89DyvMwShQLABmyINnRpMyfNUlt92V4jXQd7mwnsqQPokEvmKPiugz41z+LUQa3AtI2wRRCTouvH6GBOGsjiXENrQYh1s/H/2sKcSCqcUywkcKfijJ6w43XWpHzsVgewUS6iJsRC4vZ2V3XpRyPEntU8jmXBfhfWhlAJknRH4kjrcy9eWmlKGhh4hPV+Bi7IxZMrQMCdJRQqg0VmHsZ8i0PfiKdIdarSbB/ONCR3ZGdYvmP0TPtM5mm0NVSvSxOpVohasWVAVNTXXUKsBTGWH8tYtFMUjDd0EHWriu/8uakOzqKgjVbh/quEMxEUdbBt5pNGuj7uVNWF5IyEFPdQqE9cCyEbR4FmTEydJPz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WrTZVclrSat2AkrS2Of7JkTfT2qUHe+0X3OAcS2V4Ws", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DHrPhVokptjCta1ksIOH+UtfO9ldGRBXcFt1Rru31NlSACNqSLgunJjinKFscBncXwtB5Di3Pf6sicRQF0XXKieITXQD5XWvDx5Y7BPhR/eWwF05kv1vTb9tfXDj8OBpwJSwD9XhhpFPOSDlXH39H+3vhePBIbIvcxEH2RrACijF9kO3/MvC96xJbXeqwWShXEX5ig0Ew5MZuG+8z+H33d08qtl0bamdw6JCyBd0OOn4Vc27kKjqxKW8nsC+1UnR9WbAGX2xdXe+RO1mI5IvvPj7/jdyFFZ7M3dRm9tK0QwIlLbdz6QBfXcICkivyDmAgg0Vc2NFkmKVKNIIWRIGGrrcjl4Uv08hOmZzkdMA6qn+CCy5DGGAjzt3Bntkr9Fkz8A79Hb1wh3ivckhHjUob6nQYQ8w+emC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WrXRFMnVeXjxoH7fRxY7WPtLWuFQPVW4YT0bSCsQ4Kc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BgGPOW42Y4/EpbWaPa00y7Fxh8Xjzkaf1KM+y1wYWzyOiTd/tvvOUie5R360n/YX95fKgxTpWKG901QbTA6Ox2+169LygI683vjmaFSQFRYEDBT5AJdBB2l2BrAA3c49hdoUb8zxBOLSOA7d8UOLbjzlfXQnP1slcHx+BwpYDixiRRCp+E333S3Qs9bssyK0eadEu1x4oQAyEvQDVwXz5S0FipUe9L6tYwcMetrdn1exgtRaB7DY0sR3MshZsWVgbm64yWw/OifAlGh10W9SVIcTkgcb7DkwdSjluAmFG6HbhCIkfge3vcJNBeCO9DqiJKUZw5Q23myxPQpN4R7sdf9MsriIGRv1MdpGLrzqmOHRlZMn0Bzr6n6kE9G0ZoN3A36fUHGE92MNy9J/EZOR29NNKIPioECe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WrZ0YRdOE1zu/Qh9MMdNYBVyCLXMjHyZ+vjHJm6X5UI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cf4K19dE60UDmMGQgnJn7CPyB4g2ckswahGNNTzIoMc5BM4kuOS+KFFK5ZSMmITiBKwF9KnZFXsUESSiSY7uhRgOzZ3TvmE1KdnNqfCHsuQh3pCffTat6e02yXoROhootom28udWj+aD/ZyjLLQOzkZ0W7t1EHt5UKfyzDJZx8BE3tTzyZiOHGH+wbFu04JfldYgEqwxAa+eiAqXmYAp+vKUTFy1u9tln729svk25+4L4hQO1K1iUFbIMUzukDWHgsfGuwEHdgxgGaX1fcV2pRsIIOntaoXxvnxM6xnQ0C33Rsjg+zyfQSCnod92rorCw/gLqZJnkxVvoI4I58N5GqBNuqMXk1nP5yTpS7hF+ESFYMN/JHHI+K9P+/uqgIdJT6kXhKC7+piuKWXzs52wSK1iXS0CBNDq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WrZZQ6jwyyuNF7vseTOXZUeuXKWx6Cu2nclNjemojuQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oZLUEWsk/mKD16e5aDqpEDri87SyeWjjx5m4pogqH2wazGN2aOG6pEFBNRDNR8Wu3eVq0sWJMmxOi18FDvBxgANW7Nqz1lejraa0KIWq7LeQIS38pvbnOS5nTvnQvcibkD6zJPDuUC4RzCLA2+ipjndFFwo+L74ndOduoK5BQUQNtfJlHmou8X8KOiHdeo1KpkCHibjD98ug7CSwUoeNNyD6X//07EUDqOzJ51ArGINbUIXEFdjvj41+ODGaFDux9w+o4cU6hASO0nnWHxPXkAUR4C/IbXk1xsLS+gDCYf0ANxHxm/yVb1c/TpNA6DhLlcQ576ILCuh8qXGDdzuxFX/Bl/RkEEBO+xC0WwoYRLjVg2aBCrDnpcHLkXzl9gGi6SZwDc8SAiW+73PAEMDsbvgNJ8I2BKXX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ws1+DMG0cmNu7fdTFNhdG1e4Nwy7zmUlucL38PCqL4c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2iPvyOzHFhaly/WTNGQUhkBhtGkCkU14MmU04AIWI+zHcu47M2Zdu8By+79R5/V9ILzuDAtDWETRhlbWG+NyVoT9uRTAoIPucQWEfSztgGeZTfcFuMlH5FB5wHkwI9HcUh8VE2UqJkEN9jvmRgqJCh2idMuJ0VXYIS3zpVdoRnx/KTDM7e+esd4CYGRHfiEChSrAHV88u9hrTEuAV2G3DIfv5v12mdssancAj8uKXzRYV6BPMUk/bfpCo7humghMjCskwUkE+VpriRDel4P2Vk3wzJ2DDYbAUWzftzv3IMph4mshlfvjQqyK1z8n+4kVfd4wtLXZW9F87d/DDRGSoT/twHcjBQi1w/sRZK99sT2wxAQEqCpVc6XbD0xP1WWkkKHhvnhUMDlZrdnVHtScnXOi6++RMgKU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WsxszxcNbVbHTiQGovB8PRKuJf4ipkv+3C+r3vzTpWk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/FCsXxBSj9uB1xBgqzPul552dQS+y3Qd0Son0SKi0W0Y86ZLuUPpmiZIhjrgFF53X0zb68lVhrJpynGyEN10A3x18bMtEgnt9mDXf1OKHMfibQGoPEvXAL2jiCrfditfAA347RjqAgRJi7BVdDcPQOvA6z+VP7gzFq1i5QXiEm52TGbXUn0VxQEHny9ywTFjHPJoLbGyxfpAaDvhwSMA6U2ZxgeJe+Y9HVz4mkJybdfjKitxKpTDM/fnxNQ/htWcd40O/afexoQn8wsJKCsnsrdON5Dd/AbuVcZQyX9qXNuLxKH3WF0bol4F/WUkOYNs9vTqbYmwEcDaYe9ZjGRAsw4/M4fTNdAvZ5jb/TX/rMw1/f4kLiu2/LcJqZUY/VgmHwZJMtL8uLoQYZlis0wHbyNUGQrbgfet", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Wvs+nmEbRg4Hw88GW5OBrKOqWZIXAdC+B6QxbrIYVAU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rXSp000esVqjUvE9/bGDvyCtcLyH7WDT1sHC5C+eAXnSOkYsU77QtBKoC/w0YTRFjH8l3Pv6TlhN0jAIsUr3J5YnHwg7cpEw3ACAdWXisbhjGwA6pULZKs28g5Cqsa13sohYOHM6omPK5GOXwbaFxtBazJPFFc1Pns2GUMoeMRPgu+2Z0Dh8K37F1bGLqyyM6hxoRjz7p+Fm9ui+qcaEtem0788M3saiVOu9CzCC5Itsygkct+gZt5w1mt4MXaRf9r6QgPZFSYDy6RcwvdROixhoIta+I5JKUg4bMzut1aQpCfDGr1YRtq4WSfY1Ly47JCqgfUGr0KQ+1uPYqJQB93Ulq17+vRJ0xinIknffdNZqOXuVDqnfjl6X46xRnv3Ixzw0fMVRrPFLT8oDcE96t/gTRziIa6ey", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ww+r9aJfJHbUc2F+Ck8JWP/xK5nKqjADCAG+5wZ+yes", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s5yh69Pj1l4HMkXES4tbEJZS0bzwW3cyFqGqO5qAabKKri4SkAVw/fNnQY8AYJUv73D4BeYY8OAPrK0v/K7bx3jNdL+1RWq9kdrbG784yRNpEMY9p5aVNhgEfZHA6V4KiJgJPQXvW0uZKzne3C0vm4451SamE1wmAHgkPUE0njfPo7Clxj296/PHZbiNdXOKvNepEwsTJLkJj1e5I3XSKRNMSWyZ2cE3/KK9IxG8Cz0IqUxzUmN/Cb36VMg1vOdHodbrecm8rXA0NH0os1jyeID3TzkwG6WQsfQPK8A8CdkPe85djnIjJhU/4P96vyYROzcISGkd3oqqt0b/1tJdsflkaMXFO+XJZaeuAecDqWkQKddbgUt6YJDzMnZREAwtCeEQQ+zfx6WuE4ZkiEJliZKYH4N3oUX9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WwFyqZHUcBl45m+cfHDO/nTyPVG3n7yLB1U0ug4jNAE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oyTYrhweoNh8L9g6Ni8o0cE3JlnhcBQRXMYBSbMBmqUsf8EeFEeVMx/X0FCZOeaPzxBmsmFhKkYHFQMKeTYgD7SsQjPLOXTaOQVWEI6Lp1iYNpxrFBzGRLWZssNU4HW+wL1n/Td9t//M/OfrdNH4ddxDo/OPI+Gjc5ve3refS/u9bAzMNhvM6G1boaZKRjkRU8yQxlmpUDj4GfSwpNXklUVqEdIoxXfx1YFXhgP8vIuAL14sItQYT5Pf3qNknEISdeDe5r6o+8J/P3SsW92GF+pkCZB6RdrUQsTb4+KEr7dPq3LIAg5kdQW1wzq9oejFz/nOVkay8oxZ5ivG/CteDTsrhLK0PBQvAmohqbp14PMdRI1/uVtPy7IFfetAhC2FZj4fIeQmWQ51VACPMGIu7ALl/R8HMLT4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WwkQvruoWPx7IjuvBbAtTX5VuPTw0H4bcGdnVeTKZXc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3fAHADuW5yWiExcojA/KwefiShOxFJCHOVj3cE+wpZD4yHjR8QRUZsmEXjCtRQpiglxqqI0d6gCAV/tIE8hNp6EJbauw+ZJuqI5Aspyjn6ANg7QvdO7wz1P6ePuc2zYfOW84RY85WgSvZFkcUtAGti4ymIj650NXg93tv4C4GUaGLd8MEHGLtqx0vowDkS7rDPT9cfIt57XlETt2GSgzUA+r9NykialURQM/1kGmDAQ7t8R5WiQCmwZ8n9BuxykCxLYUl+M++sZtsj8EXYcx8TpU9h0qNsSeYnYWTgrQoEBbf23qHXRVE9UBGblOtXxqYsVNX4bbvuraRwov/mUw779O20wr5i4gcONctS+J6y8GhJHX538M4lvKw0h2cYCpU/P0VVHa0lhX0myLqvUpGFU4J++NMUYV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WxWnLyrCZGZSUBeHWseghpxpYSD+m6MRUotqiOjGlLA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xMaB4BiqeEvRFuMQoGCVy/8zASL9eHpG8k+t+9NDqDjFUbRkwLzHKBJhBcoyzFmorX9dPvhkol/XyC0LVRE47nGQjHYmd+4SjZ9q19V7adf/dlwK2jojoRO/5hGMNJlspL6Zht0mRCXhFWcU7wKGetXvM1nWAM/eAq0EzWWjbplLpBjTKi9RP64ogqBOc/Ee/XoYhB7zk4wskRpENcxgJSmPPXyD8R9wHwss4RV2QdDXXUP19+/ZAr6qlRtuInuwCmemZIhdG+jayIbova8jjyAJ/SvuBgs1dzCRsRZo0DfHvv4cciFYuTH1D58SzuViq20hvbmyFVIk3oSabP6sqyYGXERVjMkcG96HUgG6c+eDxF+NnIXIUZHXGkpk5rY0jEkq458lGgvctnX9ITK919uDFQi5iIpo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WxnlYqZiHXP5lAkjW4Pj+wYjTWlqCxXnQ+dU2uEHZW0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bEjplfoaBI/wIZeqRCuDvzXbN09g6VStiEZM/tjg2fukwqQmGU6fDCzosJeYHgWqsjG0k/RuAogSZqDIP+i8YvfuRvCoQ9l8mZhqUSPy8EdpyhrQ6a4DPZDcT3OHN0LCz3Dg6sP9Kg1W5WxabHa8ECfIuBTmMAYUsciJVwO9kj/0dMP85eibvctngcbHSl3KZdjvrS/tpSqDvyfu3oMdh6+RtrQcl5w/VQkM9bFUCKnk4/SppAksX9eQ18MgYh0Pb7lItyK/hqPdHSVjnDkQQC9i93PKZEbQJfzPUYmRBlB+17i/ugvxB8cZWmQNDLhcUbtiV53qk0b4CtLgMEEHeqFE12O4mRipoICWSIMJ732iShl9a4aGOVdDXkto/hTMQvC6asDXCt3s+kaSzDPmm6rq6ItFJJOx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Wy4e17xOwBmucEwVEoZrqcrn/+1P8CtBkg6dQmdXLKw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T7yJlu8EOfVbAMklsRQts/bCQcwW7vtimu7FTL2qua2FobNXJRJOf3wu5P+Pi0Rdra1IRbIEUqo6Ei3CU6sXupH6aR3le6QY65oNkfoj51xVz/9Vc0z5/D0Yj+TipEYalN1eqMHiovQty5yIPmWQL6XclSKHhHKLDqAdZCJnDGtuxAAGhi5vi+cdE1sRjOuinS9TXV6lHDg3SbnBPUHftCX1VwHh43t5TKAH3AqouTGRkmTTj/hGp3TzcDs20wTNZCt5G/OF34nK1Nf9U5blVndHdNx4rZRaks3H/UeSMzRiJo7aNe08qKyspq3L+1pw+5YPom0Ze5shQSC/r3Q1EPfWMUEIDBpZbhoKEKbNLH/MpP3WJFERiOmxK5SOyoo2mpT3A1tENjWDhGvqKParI6y0lmAK/ZF1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "WzBgW10bWEY5a/eKgcMroRxOEqMnINQbjIyMdhQY1cI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MJsLOUqPCDnpnzmZRNAvJEAaJTxy9jMS2s42lfTO2w7lrhsBFys6/MLfkiI254jtLURFs9WOh//YHJsT4o05oDxO7yYUWgAWbJ6Iza5Efl6sAzjzacJVf/JHtX1P/G3KlEYej3BAQ8T0FFiL4mZ3daazg5++axL056T6cj4avMiJSWzsAUyqh9O3lnPuztu6c/LUusjY0PTd0ilL4ORbQMUfeN6D/SGb7owFuxNq9eoYiPIUzW4jFG/9eUFlChN2wrnGXEc9c7nfC3ghc1f6jmI+EiVl/V3fXAS5yHV76bnIO2jhq93rjxBzt8CTPg2wPb1EgRY9Tg8BIvpMyer4Cer3o1YuHg134pqf1Ecm1D9Gyvt32tI+9MhpHET+01YZ2vhPg9stlpzQucj1TI2xawW4XGuxZUE5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Wzyrz5GIGbaLT7QivScjqRviRWFtW6mDYISQqDEPn2o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B24ysFSTC/5pPaRGSOaN6K8/136bgcCfwPKlQMqI8DvWo+j6REfYXMuY1PpU9xc5GTfXFbwsAInSB+INf7Eaq1+AZBJx65kZu3CidFex6/VoORSm/HCMtrM+P2lHk+31gbxvZD/QdDd0ImSqOdROUjVG/3zc14rJLg/9pBPM4AoM0y5H25WdGQwDsHvC4BX/kWZ/VTQFIFNFAqqN8FiPnTiPFEtORE5hVGwkUUesu/lbhy/pdAxoTLCku76edoWsoE8FBgLjz7NqKFX9qH0az80yowYZi+82kWHUABdF00xg1HA9SVz7bXsH3mdNnrUUYQuwph349lEc1Dq7HzHklGV7AO4mkS9HMSqmHKw6boTIRBv9in6wFagK3F3OzVjr6f4mGEUTy1Hy2nDv5K7m4ck4b2C0gOdC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X+gL+DRaTwXlMjuRknja10tpYU8VrHa53umx9QGFMeo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ysDnuUee11ldAjY97xn38BOz2NVeXCRqfT47fA0t3NfDaY8LPvEa7OYSY/QUgGzBmtEGiOHhAaMycsFOPg/s6b1dh6AZUC/pZOItlvpLaq9nMc6VVns3/1hZZw90lksauD8IRsabpU/dKmqWVuZZrYqoLTZgYfqs5viogU+Y9tcPH4cnvVyTdsIhW2LULs2GhjitQ/Fau1cQgxsMA7jTuStpr+weKzAbw5BYbIbU348B3fij9lpbOLntQuxYfe5EvQevgU1A13nkRJST45wnZXL4IDl3nFOHdXBHF0Vgjuw6eY5LS2Ip/ZFPDSxc8zuj0fK8F0vpky7qnZ/gYb9/ofv7zFO3N3rNjNlHVH4XkTVDIDDtMFDCliLmke/eM3ddVu+LvOwC293WtSMKf0s7T2cRMPTbfqkB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X/beiT7dcqsK/KKQUe7EAXQklcXaCw3FrdHNW2qA7V4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i5Wpc5G0W0sXEoURJ0R66pu9OHwJRWld9aPSX4qYWrGM6B/yhmMn78s3ChYrKmU+bIDxEFaWsyVVYsCdCqSixuHwtZSn6PPmH5mYD7Qbcv3+5vlnrWnd3CtsrbP4+vpmCqmeniT6khckCeu2xrdQLT3fga2Za0yoLeGy/W7agS9sWdcd2nGkbsCck1F7W87hGjO8EjyUSjeJNSdrtN6Cc7BJjNROQN005+zHmFaEyrazjoVsET54eAEEtIF/Y2G9kBfxOlplhZKDgPtO4ndLvGfszhfpxvegQWnirnhQk1gnrnaC01uPm9wDqB5hZftNDOCr/of1BstHXbTozUib+VZ4a4LQcWdQOsoEKkuoOAH+oTwtudmSjEGwoCjCZEnRZbbqKzV/zHANNSvvJNQAQ77sZ+80LcDC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X/cweAgX/5nf4eNeo2ZlqGYxbX0WZyI6hxJc1mMpnyg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "U6Nwc6xyOyyAVoYYKI+oHE0lH+Qcfp91TnLRssj8DGCw+K2hOPzDJuCI0S/Yfj+i5MBwTG/uxqm+F+FTm/Ov3aKK4U5nxej4Tch9Qbbq71tzTJI18j+HBc9afb5MSNr4GkwUH9im/x//3sXMHukD3E9rWdKa3U5DyAuLENwcaa7rUHDzWXqa7GYMQMfASpB33FIXeTTZV8pAYY0j49NHuYzlVMpwDAM2mObDOiFoWPYXT3FLYGjPCOxfBderNuF9TmbNyWD1dEnXVP2F4Ug2YRfxa9TF0oT/UCndy9NPELi0ce7tng+4wZnZRhnwJit9rnGg9wnagIPjcd/bjr5kTfCv/n4kkakb6RHSQtl7j1HpfNOI8XObtCOjDh5+ndIib087xVHzkwt2/qplHtoJGBKUuVFqFZmn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X0JEJT85OK+CpoAYwoX6icWCKB6AAsKxyp3prhHMm7w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u5ISCCw+vLMSCpQ497vIdzsrpqMWDArytklrbazzMl0dZnkw61iEZZXKzT8TrWKBqPx0m9uHHF16LPQb/DxK2SFjiNvsOLJztUlf+kOZWkVYHXDAUhS5RLqoAr8MhdWfjPbwANOugu1LxVEyK34DaUZyy6QF+UX+08dwJlIRAcH8PnCAIYknSyvVZuOnZLm+z3snI02jw0cZXEQ3SI9mDof0zN935W8vTYuBCXxccEbAj5LesVuQ6tXG0Epll2eiK32gj4HbNidz9K1yAl9m+EtYliU4gWNvmCVt1qJcUiOEhlBUBUUJAMw3RZU5xEoi9JvCOts35ZmNmi/jZ8PKRWVWIUYhkEnV8o9YScqLBvy5XZ0LKs/alkQClxp0pUHVClm7tni2828PUoyW8mNXFA9ed+Rp4dof", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X1/JSMUJCI2T+thxL4qEtPnkCN7YFUjqu3rWXFI1n5s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M+Xr6gD9of8QKcNZTYo57i/QvqE8EPFtfvFegBJVf651d6CFEtvXOQauiyQnZjCeTqUmvkF7wW8yOpOVpLURMJrQZzpMZ+g67IbmVxPZNCw+MHlKYpkTRocu8vgVZhWCDN4zqsknpecmxg04OSG0lZNzrQ+xI64jgKnvNBL2ZSAVfOQOgWQ6EFmt2il4axtzJ1dtAPQnIdjkSuJZeUCHjhslvB81+HMbjqSMpTPn0npSK7apqIYkYo1brvq3fwOEdn2vFsRhJ8gIp9XSFiSPNnmCdmhp035Gy2Pn1FrYh8B+55VHHPfYyB5b8NEmDmxXju8mMSPrZJQjkbxBxJrY6imlzP/VPGQ+/NyoZv8tw2psXD0TvvdCjvhSIFbmjL0wRiy9VPuqZcuKi8+SGsbqK+DhkCydMRl8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X12zPSZvOaK+sMwqf3ulXklnhnYqUa2iPajJthCA7Gc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hqyMHz/E1NVUYTxlqhYJH7eySZh4dsmxAUcTwZrqU+LA6phPb8iEMqTPTRodEWDYntkk71p+9zJxBuLP4mYneQqCOXsCBxEYATqg/oFhVlxLBEh7a2v1osBedYxRA86vtK0kYJa8NdH3JGVLKUq/GcmOXteaLyskW6jJcyib2X34/1XyL0SFBYTzAqiyzEYkiDzcmFidBorU5bJfOLeyl1JL/sl4p8kGjUxrY1KUL9A4byKtcLHPr2nhx3BrufoKXaq/TulMS1ts20JoyIo/4d8LT0Yll2jA28i86+1DiJS9SO3zpsncDlCUDir20CagreUy8WeJhx44mVSJpSJiYelnMZ9RZV5lJW2Kskgts8R6zbEmRn5GMDQPanTNqGM1gZ8dRCsYhkjiQB/HelnAP77Eyt2RobCP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X45BFdLBJlGgRltZJVE3nJ8zPY3GMM8Zm8elce0AV1I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DWj6Od4E/3aqfq/Fwr5wcApPj6PRQglHBfxSvqmYMMecggSfogTiybHqt/3mvVVgIwlq2qVG80I7Pbiko1kRuSBcSbD+aoF6iGfwVMOSZVlnfF6bwYOO+gOjwCB0Avl5yIThhfiY0Od/ekEc5yJgzDv5pnBWy/BiIrncudVm0CSeKQotFNWxDpWyKCWedaJwZoYwL1KVORHjPQkpiBIuAIGHVySH73mbzgWmogXuRLO+rVyaVtk4nwMEUEekNUUC7B4CdlZLolitM23SJ6AWNYnThwOORFMUFiDUBCdn3M17RqDOjDw/9GbYJDtxm753tEwUejwIIY/LLO2RClTIcNQ9jHGAMGLsmhGdODKCgKGqbYvp04tiAdaUo1RnWnXdlHS7VpejX/6SBCPVRmLjAE1+WUaNxEfU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X4HBaaeKC29sLAmEsnpDCAFJQzN55LyDDWK3tTWgZpI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UhoFx1zKY6T0zd0emINR3KIfttaj4QE6xt78oOtJjfNp/CH8j/lsGMIkOMXdAkVH9NmAqTYCP5/O8Hns3UMwNTsYPO7n15gIiuPUbfBZCBJA5dY5FJGP17ffjlAAzBB3OzW5oso9f4mAxpNDsxjwRbpZ2NjgwFYF5Alc+d7aNwdyxNEpryuGVgMnSKpPcEqvUheHgSEKQloRYtT2NLRu/JIH4UiVxKUzDvHGkX72P6GAmbciya3Ye/2HT9MAFZNsoRikfDm3bh3oDF8FHubUT/WyM9ulnoQFUpUMVJXwwa0EseRPCrwDGvv2Cszp6RoIjcXmEdhnHhnXMrLTMW+jE8BstttWQrSqn2JDsLkz3SrF+zz+DWyhWuA4x7cNvwfh2Lf62NeGCBNuK4y544sm3KNAVggRYOGZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X4yjhY2ivNhPjt/DR9NWv1hM57FSD2dD2KGFfZWO5lQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IJgV7YwDWl3ljHOUCPsJpwPa2Fud/PCsL29LEesKM/53Hh5Ji7xhjeayQ1/X1WtKWc6LUo2eGWC0qscKeJ8HCYWU21gO28aMJ6jByYOlky1JLpkvGhxwZAVCYu7lBpGl7jXBLa/kamzKI28yddDkUvwUCzWl2pDIVyh/WPR7zZKXGCmPdwDcdfD9O+DtKtelA5Hmv4qFjOlpX6bGOdOWcLWhSqp8D+Fa7TU93TEjookLGP1vjQWkpCerUR1R2G2dpW/N8i7gqffjJBhRa7oa5OwA7AkgQe5VuBRaxrV4YIRSTwjXiTP1llndVZ7fKdOnhKTNZTRVDKms2+++3mw7G1dI/9qloKTzq9hvGIQNcuPFst80hpSDLk9H4qwNhXl3UCCTojBxC59UBpoIWvt2OjiY9zjEuKEx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X7GiltjdIUcZgmLqeDWCBFKpIgFyYJ1lT0+Eleqg+xM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8L1ZZKg8uOpCG3e8Clx2iNbKUFUXyQPZCAgIIYm612QellhWL1KLw1r5jo2MDx3+xzJ7w1T1Pw1rCtIgZfWb2sLSPX7+JwOA9Tyh1Ltni5k1PrLcq7ZGggILRzWaE4FtUNnpvrADEXyk032UHilcQhd5kvbAwWQu9oWwEtFo3cExZVRfelNQGmk9Vb7IfDuEZX1GjzXePxAWjnHGByadUBxaPukwxyesIc3AxdvJDiCh3k2Qb0ElQuiJOkntATraLwfefLpxW2yvraSA1Q5UAkphOIDpw9IeDinHM2uGWJPN5HRjfONeXggQXGOJ/18fA4r7fTHZVxMs5CqmU4NqQPIl5qXiADiXOWsmPYAVTHgwTUn9SU4e/USIW1iI8t37lqMeAFSSuxKBHBxyNklP7G2Vj4/rdeH4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X8mx4QCMsfasmHhkflvCPLiP8fDiOVVg5Ewv80daRGw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3/ImUR7uwKmLUnRKOpE+lkNMXMMoEmDZ3nbfiFEPQLf6NOBK1O8VGD+53zD1ThWpU0w+0W0H5Ve/Eq69BiF4LS5h2H04R/vCvLyFhPRrcKMI6pP9ScPvgV1ZsVigdM2whsVoElU5hNzjJFSCWqLvCx0Fs7gJ3Tww7vGyS1PfdOrwuJzSZKZqZVjFYW5UVjp1IBvFnQI8J1lFE9e3giChoU9ytPvYvQKP7hE+ApYu+dDRNwATgwzzna2zoUG/MZj1eU+q+dNs+xq8S/oY1nTdigA2ow64ZDYJDFkQM5W6edKGLyVgLcZrBfqTII20jxmrR3KD1KD7Rf/KJhvWpcrwyI+vzkCWghAoOQN5FjhpgOtnObmOWzfcSP1xsy6x3sWhKpzRzuHf+8mmPVIwxJpHsoAh3OEripGK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "X9TRCRw+TUKLP+kQuS0j4UdQ31ZCS1/vYxhb6cHLPts", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "14ZgUUEB6fZWwOu6pDDnnNAK07fxRZ0nfOZ3w38xR18hu0r2IB+1vDWwXevsPxjFvHC2NgMWLalZZKWJrStmCr7FhaVB8VlN15M9irY3p81IuRpCJ06EPez6z/aLCeCvABi7MQvFrBIFYYwM2AvJv1fTGmn0z11OnMfsndNacDhlFQjk79kihAJJz4mRO8b/iEUk16Ut9X+XG+f++jwPwh/o6rSGwlHbNSnIWXWX8bXtmcDURAXHRc9WuZS02AgCLJynuf9PRAKcIIlBhxroaI1kCr6CwV+D8sXx4oFk17p7UA4OkeC6JZSlU9pfvRz4BDjzcSgtkYsob9mbbycsiXDATrc/+Y7kLscw5EMprb0rDdJwTvl0evanKXXMK37r0YxM/qOvDODUJc2l2BcCuqgLuuH6v5oS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XAJMoidHPWjxqtPpgwzgROteyfPpH8Eem5SREbCGQsU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GK+IbxImVQBp+cip6OsQ10aMxBXzjMeJ/8CKXUl50vs2mxEYc6R79VyDHGaIkcGGfASB/+c6QB+8H+Pxivu3xdixTW874uoxL80ejIXvu066YTnWciYw4sFm4r1ciL80Yb+NEJW3y1v+dyztrM2gPgqACwPxjmcKr0dhWKYrmk+Ycf2ari5kbQYjkSo/mb29rpQe+jarFv6mVuD1K/2feUa2KiBIGvfp6BVVR2cFwg6jerrdKPQvt3EBoMbM5qXbA7Llv/OfPzuxh0tbMx5c8/+sB824bizSJ7ha5LzedOCoY5k3jOUCT7x6NcVXWBCN0xT2swEX0JyehneAt3vcpl72DjZMN+p2L7D+0RTncdFK1V6B55fLkpuwFwxSL/0LX0d7+9DP/4UHpu0ViKSW8srYeMgP8+la", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XDFjFdVaY8VYpQ1+osJ4dYhUUpmLD/zjakazjC7fNys", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ckaJUQadA9Nu0YMimDCx7BpJc2nG1/tTFKTZQyGCleufM3KaPxstmHsv3hTqPVPrs3MkxkIbvWFcNElUkyXvmJYntAn9VnMkphWJ2GLihMNlYnbo5x2vJK1hzSC6Mon4fir9mufguRLEKTyMgNt+zJErXjrBuWs12j4wFW09hnLDUKbKdRjjsACGRUHifqqk7kTKG28IQYNMl+UX9LbMjSf6VMtKpA0kYlCUGGCjO/g631L8Of8+x33HkII8yJhp7xHqbkQgA6waQHRXh2ElIb3q1HMY6xqf8v3UHrsyfN6nQwowp70H0W8KRAkC6mcDjaiwH391G2EZujH/oB32C8X9k+78oqSHXApnFFXQOuzUSDbg/YdBJFI96Fqd1b4M+NEhbc2kLbqpAF51d1J6vtkiWGVmx7oJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XDfsTUFnz8ErOX2iHuzTR2U9prpnH9gMuNM+r9NmrpQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7fLbcy7EC68JFz4WBhCh2wftHhEh/Pxp8wUMpKshJaJF+CRIigUlE2Z7xdG9/S3cEkmxNZ2zaDGDwLG6QWRH0P6E5YW0piA2WcUZxcYtnrAZIdU2OuoXWii6KwlG8zIQpQNu0cBlwbBIC69FUddDwTL+2iQ7cDyNYVhl60al0IuhjP5V/KYbVTjl73U2p6X1VnteATEhooeKHPZOEPgIOaD3t5qpvMl8EO2i1DK2eunIhtsc3ZQiOYFOb08Mh1MkyMGVYRuG+gCxf6vvWjTqEZ7rb7tMpGYMKAe0De7DA248PPx6ITFnNc2KYLJemcQVlW7nng3Hn4qq3yAz/ivW1URk7H3JpoL2KzY5Ou2pS2+JKm38STfZAC0EA/fkbMHCZz4sWZnrABjzuGvUZFd++wbduE/xN/D3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XEYBUDwDpGcvuILluGXJ2BzuCvQSzptJz//TxLHR/dA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OwCWCXqo07VqEQpicg1oUH7vAZEHzrUYue+f/4A9iPuXBGHhwWB/xJqf9GvsrwlgqUgn3HVBKSitcheAsrJf4wPpru5ZwMAhzHWiXXKFggijEdvQUbDos5FYzwJZAUhEFhKl/GhYal5Jn8aVckOFNhJxElxzUe2msXAQPgLIna6RoAZFVm+5/QDEpbt21yefs0pl2ckDR1NLiyr3x5h7jPegi4KHCKmfj0c+LMDJb0yM4LGj4FtsMiM0r7W5a1A05lLu0Nhk7d6/wwc9Npe5Kj05X3XFaQAflNSBDKNsZjbxvzZvnIuS2Wd/xFC8Idh2tmFFwhTCAqi5vqg4/wGWiGiWyCgQG+19HJtCaqQ76HoTdkHYaWGb9SMKCJgh/SOj3N33V1jAVv0orP8naNRgGvfjK8nEODFp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XG+678KF9CaJGR2T6nfe+A5fRste18ytV5mOhorL7cI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1eGWxLDwcze5DPG0Fo8naYAVuNUWX5wTnF9rNxTUsDHD4fHXbrGYwn4HDGRb9vae8ZD+BZG4VXnR5hdBys4VGfr+axDVwesgykT+D5egsReRQrvaYllreWjivIHLDLfXwwxU8ZAgJo4DAyI5wxPcy+TYNououJ0UYZi+tUmharAECkc2mTdYl2tdwrXgCbrVwb0QZEFzzty8fAJoArjPkZJc2mVT0tztZbqPJw8rU+4Hhx3IdUydwGnnW9fZACbW4ubHTcYCInc9IAZVCm4Jfs4FgpSGXuKSNS/ndvOToEP1ty1XD+6ymu9YMvpzpN6x/LNxMIYeAWhSXIpkXshQ7e3BeilonQBwcYlEj0NK4fKtOFfIMKOOJO9d9JDv+YtjhshbAWT1s9KnaSA+8Ut4OBitL7nrhB2O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XGfTm7H9FnvtujEB7LQD0ulFsM/FP6BEyyKg/YT8oI4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "irAd+gVL7bzicabhM+WHxU/WL1fQ2xPA807M+T05vRMMghoodwpXhhl90TpzG1AeVC5HfTMwDgA/l+JeS8W4qSSj/mDgVfcngADYP/DP3PBKyad8Wjd1NBkyC8JZmc1Ao/vJgWj3gN5XufHCYrpzAJfg3LcCG6Kj4DR8hsvgdAnL3nmD5qR52U2k1y/hHtl+6z1asEePOxE5dJvJq4l/6pydA7qDyYQgKIzsN+wSjc+1SAohqkVNoNFZ1zdSzQHeyyZW3IgMnJcsioNQILJMYw9zEBWR3agw45odGJrwbFOgm2/7VXjeapq5+GFPNQPuvWnCnG/LcbfaB7PcqFTtfbqIMpN+nVmjg2Hiil0v5ayW5bNl8UAD4ucm1WPcz8Oyn3Gah3HTqrvZSBmEVuYUzJwUjqGbqCU1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XHVfOD3Y31iU4IrnimZrgAyCZfTk9ZT+mkpXuwQ/1N0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZsmZfHQCi5Mpzqpw0kX1jfMY9ZMEavJFjhZaLt/XJGcRG5c4vpBCkNXVh/9254tCXjP7R6qGCLKTSzQEr27YOtIgcBrVm3yp2C4seci+LL5JIzk+YhnmWNHIHCmw61MrxBvxeMyJ5BP5Iqm67Owvwyfb8q/uRW1H7GTvuAXlhSwIEVGZggQ2r+XdVd9buDujiE4uh+wjKML+PP3JkzZUEPTUxOu3RpIdDb1r2RDSUg4+gPl4gf6B9HeCOzM6kwAomGWdZw4Ge+GIDvvkQj/lhB3NgPXZXeVfDN2XrH4u/fMkbGQHUcAHzd5F5rQ80X8PGxm0KP8n593tcvZxONyDmfBEupOuo7I2FGheaF9666bk5wlt3p7GlS6xrQ1P4fTPHHH6yFV31yJfptS4f4dk1g82US/sn5qG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XIW098U+zRHgA6F/BF2BWa+MBTjBZAfW310m+AEByP8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RL6kBKo4OCCmzxk8EA3pp/hXlGjnf7nwyNh2rdTyt0DCKYPa120YSCg7cYu8VAjfHPm2VSNKRHCNfg/dG/NOtxqlCC56K9JXOVTGHzBU9VjLU39/kA+145Go4/fwhgymJUpoRBHxly+lFrkt0+9HtaKXMCgIVypuMT6pGoSOc8cjTlpSVAthEdnEsdpSY3MeCr0FYcHvWBwm0Lx00mdp4FBNKYXs9G6geRZoukJv4YARjADLh97NOkBguMzF1UPPqVzjinTdaFfoCI8IsQaHQVR+SK2ijc0KaJvkbQBVeyGO1HJE7Gi/AU4dBqU+fWktvp9ek4h98GNjPGrhkTdLeqwUWAplzOI0QQslLgeVInkjCqe+cJz/sLa6QmPoD7xGaROsr4oBRDNZGDxZtCv8niO5yljnG9vl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XIfNG9amHsqdIFeGpUHgnPtpqg8kb25bMUeb88XOzgg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "du5902GgAn29ohuBbGNMqFj5NafFtHBoLn23lTaZemAzEPl8JaRueQX+rOuKBTU3Em9cYkoIC6JdtF+Mav4EfM89FoCPyuwGK+iPs4B0tdbB/z0088Q3a6KPx0c0OdH3jAqgQYQNi7g6cLzZlNR9DwOPVsoP3tLeqmZrzsJtq1DVTAelAo04P6U2hHRsz47VBvHxqFXK2HSPFUBRddNi857WYWVfOJ+Z7Wy21KLYFKdfrQhXlwLu0ZejjXpnU74btYDFwTWTK3VcPz91VDuAt/pyYyjvXW1pr/W8gtcNiPJr1t9YKyQGHRGzGzfRcODBZS5LnnpsC9cRJaO0Wcn2SYsQjnhebJbfy/k3AeBk5+sIWY6q0/utEys4jKVvp276c2s8aNqM1ezbK5vDPA/xhjPPUvRU8us0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XIoNg6P9VU2Hjp1PtUq8lZBJBxA5+2eGHhmthYMrml0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i2AktpX3tLQav38JMNZxv99lrDP60m6ZD9jeV/RW5ETD6FL4Se/F8ad9XNJw7Za/yUCCQx6swUFU5Z7tnyzbkYMEYdWEwNeCcBIOTk2Q+NJ/z8T5/97ERXm8QqvpCBqNadR4m++vqYBuIP4ah/j4eDpcRctfDvUCVCBgJu5/9KFj7lcJxLsp/sub92g1uUHBN6hAfw7SBBNj1ZtzJDBLK5oiQySh5gmouihntkgsayjaDtTltGtOkOsdros/KrXn4HtTOduMaBq7gJCCzdMEYEK3KN87ZMgndiTNxkd5iQfHNHiaQlvzArINA4BZ7vm99bkrJ6qj34uRQJTffYsoMKmHIa0SRdc/1jL2eRDxc9pFu/CeLhdMNldb6rNrmzmaVKB0ZbPhT3nFqSTzicbAU4m8zBt4s2Ve", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XJ8DCEKnZFHFoDSB+pOU/i+XkCR5HbN7xVdcNrvYMX8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oh+haAnd6mVULdmQUFJi4rmdIOV/F2NZjP0Jo2PvRFxN4EHj2wKVKp9zY9+9K9dmZmMt76apuPpuALrBifU+0+HTpkABwimyEVWn3ffUbNNCx1g1UESICEabXBxK8lydByIBrGHhtXEdq7N1okxmpweesGCxeoyzQ8K9LfWULitibFHspNziOR8x/Mhi7MaSwF0Vw/GKx4kHcQ0bFReotVeMQeXKp2fDbidgOhKhFyTj6xcnpRd+J74pYxiBOGX6Y81+lgWkgZ++GJdhn6/CwA1fCAwk7ejORAsoYECr+iLgQCXCMM9TSuWaThVSnIDUs8uJv0qZFeZXKxmGMextWVfluUcen+FkLLgFCA92HvbVWu6uRRR642V+o+8pm6O4iwADQybU0O3OEJXjhWpjoJgKzJ/lXYah", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XLGhcxzMcTM3/xHHJ75J2ZaLuMdc+m0/V1bDkQuxwVQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QWxzpbRQMap11KQKxQO8h+q8BdpEBsXMvoD4z7w6RafH2LoRzvtbhv1XoKSkdmXK0Bman8aGpiuv354dxS8xCtXuY/F3/q3X+0fciLSEE7HG5xjfr8MQ3+TbBVF9rqzRVqACHBu6VE1Tcb3P4dDfmM/DotTM4/NfuFUc//ZH/XpyIEGWhXeMa8Cz6UTqv71ft3yae4Hjt+zopbXq9NgnDXLxqb0k67lOnuMpXhYNk1/In+QdKcWirE9IAlnG9wiezGWw0xu1+IIW2lCkVWt4gIsxeqHYE3hDEmT1qj/BXw8Vd+3ew4uk3tcDN1NeXy77i7YJisRfp+kJqTRuCvEg5ILYbvAnSVrxW0hdcZKZuWO/LqpP6rPckkBvfqUxNuaXY+F2BMP7iVyOEAqk36cYE9xgHhfaazBv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XLPA6JyPtFz197RweHAzcljSBNKQomwlYdilNKtOylQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fDweJsOprPYil1iOaXq75xTCOoTYthq58C51lCWNxdPKRAx+1laDhBLzjxwRrwO9nRmqmOsOToOBkwYPTjnIucCx1mJXiky6pq2anNO4I7QV7QfwavsSPTkxUvv5ywFXqtNRWw/LPYD2SORDUViArQQchoPZuBCEY7XEVYIcn1yY5pUJG82BOGUp9GvAU4TUI7Ue1rcN62xa/9N1Og5BCQoojwXi7r8uNj12gzuDfApaNmI7HzSWdUC9Rc73OwsDEHhMegIrSgF+dKgVGdThlh7/gBc3yTi1jgq2T9vRXJnkH/caWxaJbX+RRvcfe4g58rBoTf9ca5bazqZAhlMWp0K5KVC0ewiAlGr088e7mwWaN19PS48NzMBZ9oVyBq5fDbmw4YIyyoQchcvWrowDMI4YzsG0BR2X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XLZSYcgEsBmOUUkrzweFoleDThJZt7gY70DJk/OgFPQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "25hPJCqv4jm/och/kSPMSCYR7L5MVO7oUK+rJKmwaNlMl4xnjey1zxCuiO5tClCWBM1CUEY31A8LrY1RjfRecU3GWILTTSw7wLhx0wNnH1V79k3z2nPbiqMeMDk3EXmaAxc/uQ0U4k+Gk+gO9VmdUQxsFzjycO6YtR9TNy8oOlb1QK55c00rzJto9+BTeu6yVlKpUIvLZWZLdmVPmRhSH58h5/Nn/yxVuuVhgkWLIza+dg5E3L4IOel4ig5cohWsIy971T5CoKGn/N8g4tkP0omGl3501CRLohicn8Mj9uMHqQhV71mi9W/w6RkPHpteLakfLKWSZD3ZaNJgYf72etMEb0E6bQ8taxdySH/WGrsDOqbE092XImc49Ip37CoKLBF26EbMxLOS9XJIoHeMbY4fkhVKC9pQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XLjzp2Te1CmekcX5tYK9KRcBRkk3F+amrk+E5PVlNWI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bU028cbeDRKpOyaj48WeXK2g/CSdTTRcTX1N6ZRWETOXI3NAUg69SmbgoR9t+u9TfCef0Bb5h9vJ4tbJdXCDJe3TJvuj11gGvaQvCl1YAIvsiRveuamfiIGuLxYyh96HUkIAfumfs7bxgnIWPpyUa51okll3tQwbcEqi523IXJnYGmgyVtakWl7wkAG56biHuMbTZbup8nZK28WSprb0nGD3u5Nz6Zf/5UbT7fJl4ZX8EhU/RvCqygBW7SF9J6WVhYwAEHUbVfSmARQDHEVIsju5fnBqZhUdHO8LN8rD/8mZe7eNsN8A6tGTeAjbLhV7jCyh09S6NFfzniz1W93UTsSoDLuIhH6BD9f0wyxtr9JjjTT/KPo83de04meWL4mD07sEt1m/bpQD1SuJ5fg6oW93Re9/U9qW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XN6Z8GuayErUEEbtVxowobqoL6zUjNeX1J/dEOL61+s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s05SYTaokEMPYLL9hT+BQrpjjlXLNKnzd+uGOUoBXWVs7Kd+gPEeuSFUMOjXqxGI3APzestN2y8m+Z2aroUqVlAbFvVJz+bmOiY+CJJtU6RUO775SgQ/EC7E63QPPIkAN7+LvgEdTDQ0tY4DvxehDuPW3sD9o4dFXklQ4suwiN3jtmBf1RVwlU2rEhMdBEID0MMsw9WYfvy7KzPYBeebvrFsxwsL39lR3leNFLO6tyXnJl7OwNBYjOmBLs70oygNDhYLwiur0q7vxtH+aGChdV6E/7nFiEbE2fEZJZV5/XE7BWocFEfOuRDzGRFJ93a/eXebeomvrAQm/9i+9Fa/v1dE+Wr/wLlJsPouzsxvwbRhV+gKEnr4KvDcLzic1rw0vmPgMwbABeYfYo9dbx0YGiz/Y7IV88fD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XNedARcJw3XXzGIUnJyeAgdhnSPncS25j3PZkvwNU50", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3FjW9T9V3cgJASCeMPFuOk45DW0eWyXMgrUq6U4SHLkbFLUkievKf26Dy75BRunaoKSDL3gV+lxNMTr+SG/WctMbjRWcQ44CYxOOl5wGVESPIiTVp64PagzJ6JoMhQVcinCGMo9RyAlWT8s3jTtNWmpV8AwaFtmumoEwyGlv3NqEWHxal25mD/FORoSZbXlHl2h0151OJUkrtiAWpfUZ7X/ZPArdtsfRJ4BwU12nNqYVs2GUFSfKV4SPU3yKcbb/s4YUdjMOUc2rtmviShOATW9yzmxkDPyC3lrvgkp2mjoR6itKt1RtHHdyRtXBWOEPmrTvxyU2Gb1+lR81TgZingxfkAfI1HmkDwb0ZDU1YBHy9BV+AiNaE4zSHsLSCqfYNEBovFe3GzA1tVkZlCtVd5XQ1neqWYEz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XPt8bFP12jKQJCFrAJC0TPDw7Yk5xZikyrxaElPI118", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A018hF+7ll1vEGTxp2LuTPEp0usQ1+N06zc4dPI6eikuQGoXE6Myo6E6yVqQyqRKLWLYEtWLvEBsc/VPP0j39gt8CBseeSZX+UZZIhQ6YSc91LSebwE2c/skJ/zdpOzXYPFcCcOeUFlpdL9jSBe8OYbzQxHJcGtgMJ3biuPwxB5AT7KprqJJ6QAJMRztz/oejyfwZGqv8WKfw/YIQl+vXleeqletChtA9wKb7VPjZpQdtJJYR279R1erp0ELRnmFK+t+09Z9S1QcXqQOzEszanvOZxg4O2Lyxw0egb3/hUsW0zClp/EYltoxsK7lKhirDvOP8k8kXovBxR7xvFUaMiQ1aGr7qK2C1Lw5c9hFnPa49D9yFH3q80rpbn0PBVp32zLAa02eso76GgXR57jddmdiYWu/z9bm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XS3gc1uC6rhMau1mmnSWnSKUzfnx7D7GMtvEzZ4PpfU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+AyuVt6lf6xzCgTQb+RsFL5YmScc3JkDgFXFaeNO00eac1zkj+fNEWzC4jWfkLKbWkTbq2gmjmur0nrZ0UU2gfnTNFALO+r0ocxBdNG+rqGYOs2pmLPjUE3bmvRBeGsiheuj/u1lXrbzTd8d8qaZkZFW+dREC2nSn4EftZa1saxOfR7qhG7rkhA0/5XLOf1vI2XeoOk18PJWFs3Y7269HFwcrRH/ET2peKdGN85fRCQbhjxFwvZoH7SLI1Y22j6z4mQaOO9dn8NGMYhSUixN9gx6jzahmzbshlMrRlAIdNywrEROqd01tc9MEv9Ljzv2q1/NG9TfJfDvz1FVUHwjTP7bl++Tu4PLgfbLqr9RIH2outRC4kNkR2gib39XsQSKFXxH0V/7cuj17hkIc0SPAOTGzUrk2xsk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XSXZE27VlzIYXgJOeMykbgthQuD58l1meOHO6znxqGQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yMskgm85xEI1Avz0hBBxLzj7uEzx3l02Pj3NcUooYowunuvRf/r4Jxv0+e/rU1BJyze+t4X1bwyKNiBYJEGVHb4nDllm5pv4AxwbBKVg2hL1cQ85400KWuYXfdb1Onjyej76HOAQxah+JguLTEbuOG+x5Kb69rDTK2j2sWiaCkoiqX1OpaqhmsacTigaUux10w100vlHEeWp3xX9sU+bY1RkOHFwMVMKDkALlykTqEhNlhPZm2h8uyLdVO8EFjQThjreNUWCBuw4tMV39p2Vj8HPJ9KrL875Wtx1Dbmmol4TQ2uWJxgvevKdAN01sguGbPVwvk644ik9tLDJUrRf0T80grorT7k8EDdkQMs7EA8z2IYrU4vLU7tkI1OS5N6nj8PmK1ohnrGgy9SeWnQXy+Fnojhrrrwe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XVCDB8Cwff4+F9Ot4xmrT9HXe6YWCF/PZHk72jAvjl4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IzflP4cjMBqJbRUOHnX3waSgGli0X+/fbxkzaPcLpOXBXuelMRGNJYNRB3DZW06ZYgS2neR6zkevd4WIs4Sq5Kv6k9aU3UUzETeyek81pZplIs5MqrxaaePJ5t5y4jDfE5yiTl+kiJ7zXPeCYG6Aq6fxCRzNUPFxAVe7X77rAbY8lDETd+RazglmhS72Jy1YrWF8gUUzT1xP3rD3FfWNpPlk5SvnIrlI+c/UXwgefb+9EszlrS9umATaEy7HrLkVc8VyNEEc5plcI06O+4DNGeT2LiwV+B51gwuKjZcK07LM+ls+JprnMOe3ipFG7hWOjchS52svXZQ60I7Sy/dYirSbsAqEtKZxvJIYThQbehIldyxxvvTvJhgqA5xFZsJQeaWz9SFTGcHgXk3i/fq7n6SPf35+zu8b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XVGYnHQqF+KFcYJo1t4H20R5sponAcybRbXYM6sv3/w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uEt74Pz8NwLCqgbyRHdlgrpBIIg0z902hCzyw/AlqnMdu1MYraaa7Q8mMGLT183uRtf8dJ9S4BOsMhp1d2JBeDLWoH8s8VcIGYW8wSb6SVrW3dSMq/GD9U0tKUQAfReuWhtU27+NglG88Eil0lyNVeSui89kaGarw6gUS8GliGOSwv9xT+ZJJ4mkHWTi2EB3Zk8uQFv9NfoadQe2cB2gsuVok7fqbLYGJOEjggyXRrwyWOjkK68XkDqnEentXPOhDZGFyIT03SdfisAqxei0jQEtpoewdK4dNmOH/jHKDPk7Mhi5slveeJ2CP9N8bPVztdDCuD6Fud4pUOIYjirjsKwcST43YEP4E0GN4yYYjSlpa5hsq+eVIwCrxdukpN/8wY0uscAB7NKkVz2z3NgTOganK9dYb0UE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XWJQIQGnDWE3aDvgHrg517SptPQY7Ap9WABIoPxygVs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Hy1CGbNZk4nahk8HoPY3Iwq+UutVaO18ZjrWd1l7JHL2pJo0ZPJNJQ+HsF39hwSoAVrK01brzU39/IuaklASbyL6PSotXcYjWEvye00wzL0OiocyPBdOmp/6imPbdNB+NyQRkQ3/h0YxXZGoDgRXKYILOiqBkkpsnHS/HU/brxZer0TFsAyxK2c+kxyRUz4HjFjMjZx9Bp5+wN9w6z4epzxNF/bY2Vdla2fuOMXioFBUtHInBqucElCF2jK9eauBDIGUtItqqyew2fk967xVkEVDSS53fqYc8+4WwLLnoliOJx+PhEVzvP4AH4j0Ho43FCKlIPWG2jM9V4S8lOtqqVzJ4WoCG2/WpdvwSNmWMD21WqQeqZjP7spQdSXkBigLKVJ8jBva8AOKcTcZqWJuWJhXseC9oagi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XWsfFN74lSzGkH1NCrSTVFss7nZy373Noju8ELLa91A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6l+dPxKavXhjyHnHGpwk5TbIcGlGhigRk8Csn7WG5DUiIz0WjNQXWbof7G6KuNtx4lSWAc7ctsXVXpSiA8FX/eHgEOmVvL5IAF4jG1t3xbpYdLdjT383z9a5IuGc+CkxvuMjNTT5Fz+Ptga3sVgDR1qpIcsq1C/cEgovHNLNbjRwrKx8zaf0ObMtGXdZ4A3/59bK2pS+Zg6uEpKpCfnZ9giIHqqv6zkuX4L5R9z11QByi1+4RGeT1+hbk71SdJ/k796u1haKmV0/ACWMK/tyQS8C+BA/yl0UXRbtBfGxWDG0fDCaITqV1qXdZNQjVBonO4KCE7rcyn4OWOIgYj9ekqTwcj+LFUVMLrRemMAR+FyUzGQFGTwOh5jgr4ycWVGCxq3ZKx+QQK236kfcteOS0MRbFdA0Wlks", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XXERikqSG9vhLv09sBUTgkTLYxHudsDW1k1j4IBGdNE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "idevOujbGVSvjzn8W0k7LgcgX/y7muGe1VMJfYjdQGsbvLX0qVdbH9B0dOK4CgKZHNIlqbO5cLteZt18653z3qeHuESYGk+UO6Rvg5axg0WLocFo6y/bOtXQA4HVzBddhLJxKFlbxLH0CK+b8phsjI6C7rc4tlJqO0exOu+opWj4SK+Y7GL66rUtoO6qR64Lw/HNO1NT6C7ZwZL3UqgKzXXwxKFFqMdVBT/I6Si8m9OgY8e4VsG1USeWdfvod9Z8kaxPvAtkPpd0IU/2oBNVv91HQDrTlNb33Btgu5uo1yFew45BdJe6vCBfMIjojK2qOiUZ90tCn2gp+cUNAOC5KkNcBZYYW9woM3l05rIV4aBXSLylCWyWhntDtZk+Q8I0GGomdDf/9O5wiL9cVYFzFZsWljQShEhs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XXY1F7ldzgLshZWOr2bT1qMIXxvb7G+PBoJl0BPU2X4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0cSRtV82cSmpRSYi7fcV88tpjUZJk1/zI5jqCqAvJboYTmEHVlz18rkPtE1MOmidKHZevXvJLRsyJMSH1UEq5lWNEv48sAm7/T1qz3wFin5dzJvdlVmSCB3L+aOC2XV8RH3eSbMWj/G+F9EqOYBrfvkOA7khFFe3TlOoFlzxGSFWC4VrR4v4xOquTaA8w29RNn/IySXqHw0bNsJzy+kstMp3kun9QX79viuiAYdF6BI8S4MKtsKpqapzgPdzavQP5EDHjnODPM3RzN+Cb8oIeFgAvFKLQGWmnik/MC+lA3Jj/ctVysPXqlAu/q2Y3PWejP3MWRbl02XtcNNfwCdP/p2JYXTq5ICMaOh/KSZamkxVn1eJliG97UMcUWwmMqImhwoOCwWLSk4PVQQneW3ZflcWupH3FqBn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XXwwsLzM56Bvv2hN/h0SmesKEAaJsp8XyAvdkBOv6qw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ThXvZk3uj5jW1glFGF+MkbHf+aZ+OI1bnp2lJhZPa+YW8B4NJkMdj+wr6nO1DlnrzJg5uvUyHTOPbjfYOfAuC6sFHY42qu/KcI2jWVnDvycZQR6jSQvbYaLFrGkIGiUzLo4aBTEAtCpcfqaNAOfx1YvwdCcZXueLCVT3GZ+SE99uiS6w5MOhVVjOeVePE+GgWq37jgFpQHIhWCXPHkHjujYsF85yPnqe+FgXqPoQat7gOPZXjT2Ju7xZ/6rrKIRCK9GNnpnHFJEo7HXGKHmJvQm7iKblxf398NXjgy3trrAf5aQ3moF6SWGQQrkGRumkolJYF/2IwtIjd3iqcwt5YWkSA4V9YEz4p+ZR/H2lmu8xReJEzVhwPqv9zvQDRD8nvpq4ibBIA/xRbdQ2foBNACH0AvzjArXa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XZ3bztkKsyUgIcfLuvFYASE4DszKwSS44HVO0imBg5I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jmYmFuOeePfqDATbi7Y2TUv9UesqdW75V4uoetfaPdiFCohqMtbamZ2LhLSxIq8M/hdos7ZvX/vtTacbreQQnx/tf4nhitSJafyu7R+R7zauU3LC6jCaM3wkqv+pPdz/X8cNyK5xBVVqMqsJbwcdOkX392sQganmDpuRivz7d7BZwUJdEN9BJvM2zX+WanfDATDQZ03AISrlTAW98rmW1Dazdi6X51CZcjAXIUTXvGxYfAEIMW6GG37Upq7GHZwwhnfAUNL2Jlvhl1vcBW8mEMZqdXsulvoZUwBhRkoBmgrZeCEVlsD+1zEZhFbww2JD6W96YrOz9kIosye6NU7oUNcOiiBvqtcvKisLT3xvONbyhqq/zKFxhWylEYBIYsvKdM2y73TfNGp+CIu2CPAJgACveXNtPtY6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Xb7mE5kag2P0nwkzih6ppibv73MxYqQgDLhkx4kcXT8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1l8i/yjddk7zwbJL/YlWXrpxNhrGIMHc67ClmKgru7JXsWiC08lb3+oURjlSLCPs952nMFVuhK0uXWFrb0wpO4Zp4YCgJPfLkglzZ15UALxaZ8nsuz6yU/n9s2eyb/aoLG6LC+HbpBfksc3+uUP/3+Y4IdzZR2X1e9iYXIEIdBftedOOU+mMgI+3/DLqJTqSF9BMUTrQEEJcmd/tW1T1CDjqICHv37r87omwk4FXEHvnCXLhNaNKSeE3XApWqQscVWLwFJFWTT7Zcw82/nUNuoxt8OUaV068qucpZ+oy+bMy+jjRFc3/ssRw4a5+gO+qtnKZ3OR2FZmm8wue2VwS/Zt0my1iOFccMMD1Qb+nEvIZCuOl5fKhZ63q1lFfrHQXaFuqRFyvodxv6sTblcFCCnbQJLwuLMnU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XbMx7arq5KzlJ1lO7o0iIY9LOv1HmkAB7EbwvVilrXQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "34M/f1+yWpKDmVCmfz3GjzCm/34df8T3+0ph0mRn9GTRI7APUjdp7I9W/UIOEiyW58K1viPGQLWbAEQb66SJcdb7kdUrzXx0voxbbXrTJ8Vjpw9ZrG9S0R/AgKAeiO2NFCJtp3rbIC8ybOpenmiK79Af4td/YVJrf0ZWoy0EnHJpPlNtzqkyw3B48Fe/0xSMm6FVqCqP9r3fUxAmBKmeXxJtu40fsz/ufUr94oD1NTsHdJAc7VoNrVlIU1R7mY6wGQld8RjOVbbKPPpO+ynIkkpELXUjPBRTldpklIBSWUMz3Tz73K2tYHsr0D6yvYr6SIf6N+Q8HF4zqM7Gzbwt1J1YK6rBDSx5CUHXMbZTmhEMf8v/UZA5vKzGOyzJCKUelNGpNivlxC320XHBjtXQJcvRcvk8X2x2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XdiD4rCmCGCRmJ2HKyPGLvcKWzI6b0gc/uBbzmgeAnI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kcuT2zPnVhdsb7uTLgu3j9a1wYQUsaZ2vGhp7ivDHku9FsXYpuQTvfSga7NZT1Wws10Kz2mfRTmL3t5O6Q+isBbTjdYcWtMdv2xYSGCNvGD6HlMl1/wOVUqRICUIjH2UYiJ66UwhAz62s1Ak2bNi9sVYwZTj7LKIIlDgfGLaI2fCyiruGQ3r2qvIAI2Of1DCXbPzW2doZS4Kkz1rRZ6eS/YxO0Q3cUTMndzUVV5LVomL2pxlV4gDabwjQRO2xCKbXToXefKiNRF8uCZJXjsTP5hChuPIRajDghm/BlAPYUQQLILtGJNQ45dI0wKbNCYdczWjGZyIK2Rw4lmJzb6wG8futv2wC8CSisoZ93RJ0PUW8IVYgkLjqHqENvja05KS6Koo5WNFeRmdl5Lh1WmI4M1YBXQAKdPn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XeBHCTCRm6Z2akD8Mb8eEmyp44PjsVLc1uJPi+97xNA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TWFOXcKzbwvKlvNXQkj2aKCinMZDbb4ar2RLk95bR0TdH9NYtHbvpY8WL64agks8vYNiydlqaPCYSeGIkMjDZrtctroGHmtlX1Ea5PFPt16t0M+3bH4Sbe2wrVTH/2SpCW+bBIymGGFWi/O60n9gliDVSCt6ob+ZAz0VKLQcr5gygzdfuW7Sjr8C6duo4T73Km39RWPX4oaNUPIvIddVHnjM6SZjTK5syWO/00jIF6iqRhjw7oms43GugAUexXPIXulD2/9OlZwJarwhv/w1PM2Wy5HXvt3PgxtL4JOJ/wJ9QPlmhZVt/qfCRZ4CluWHtJ1zqJHV+ed1IL6wllbvVvnnrzM/jcapCAwHu0y2WGUdLvqGh6IvYfqjDG3EwohpOkwxr7tg4/S6qJSUkpClv5PWit5xs6Yb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XeswZndawY002+cG1qYylYGkR9GrJBsQ3NU+ICRVkJQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "skXev+R8edIYBLajMq92WN0As07utosgpmYFgWRow3BzKZo/zcSikAp8RVheQi799bPKnQGWPejD3BXUm6tbLND4MVdNWZ8ythene1vTSrmsFquNWZ5j4xNBCfWph+wIQCeVmVWkGvFR/SBAOY/tQy0Iv0h6vpU+p0M+SCvGeYALKxAMnkZmJL0XYx42anzmFLF0ShCMIeBu/PbY+Bx+pQqfuv+v0RYcExMSwo13PZ78DF1YNCYWtrnfqVjfVyyb9UJVM3vkEyPj9BEwyfg0l0V3zzr8aTbpVaV3p0QUuKyHNdzoLhqReND6jBGr6mfM9z8pMi4eM6IltxUuMOPC+Fas6YnDqbXOV5HHguLXoNKTfoJrx+cTVFgfrHFzMkSSjBSacHCBaYWwFStuOWluXR2j6xkIH97y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XfpRVf1OeIO3vE7zGjVOWgg5VfhWlkZgV+GZvdbyLBM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3EIOBaDo8cH0gNXfU4d3Ak0H8oAmCcwzDmyjmlcCHZl1CqS2uOaOAlYjHAI+Thi27q7r46j2Kmv5Y0lOs0z8gQre4Ysyk9Jyt3l+fFj0IuPG48urkiHy50povMuZfW9uamXEjUec8BG14pfAXu6t0MHKdQEikKrj56ZDClWuX9cHSO4Bv0hDJ6Ns77eGpxXyOWZwaMJz97nDpfieSaSbFpLX0jMXftBo3hjKrWEs/ZbsQ/mE5BmjV5ZyHHlOtbXyLVGDXgqnk3z5k1rDEhbRW7k4FglLAWqSm7eHDhOmz+JId6LrTuaaO7y2ogJgrHfoozPg7iFNZShLobx37Ia30xqUxB6K7Lu4GpeJprj7Q1xAFfwa6dP8jnJNMC0h9bJ2l5mL4DgpFWC0EwpAufPgLN4ZyCEaBs6Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Xi+QcBGToaxL+xDb328Lvmu2YHmvg+z8vF+xcY6COkE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d0k0VByTIfWi7Fm+1t6VvMb7W4DXYvK9SlgQmgcqtFGuVwyTwz+pnHaY/2o0Hmn6wNmmttEduw+lcoP06PtDUsJ40c9gtvV1slNgCZtnkxqi2Tw9JwuO6TMVgdQEUo5AZ9yqw33/mwwniOJQyQxGcFRWIENRnu+HYMn7n7r2tF9zFgL/tDZ2GbLKCxnx0NOj4bWar2sVKm31iVFosUZ/i+j0LzGTka1utPyl+lCdayMzQo7sq3FZ4E42GknUxKCbXRR+CHplySrpz/SFcDZYATSrxB9SOeziRasLOFwf2cFM9N7ZrIcIg8zRrmlq6E99I7kxYQ5VwVqkSgWopZ3lbjtJvDSKHj8GSax2bJmsu8SMLVJzLHyMCjx/svyuMlN3LALJuUmM6XnXvSRwBsvXx8kX2BSqs0eO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XjxvbWUD4nR1Z1zCztL7IrYbWYj8q65PFD2+9GM695U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UcIx/XY8R2NYAJgTntfNBD6z1bao4pq1sL0gf0HGzPpIn5dvTz0C1XNSjBdoMSkzKyHW98+QUq5E6uz6xMDO6ZatBTQGeVB8swrA7AoW1qY0xU+fiQElpdaVAkTdfByd7708ZJThxHwI43vuxKnGQ9KhCW4kmpIY9AqtG0/3G6tBAUps3eHr+oFGlgMuIKY6dePv4EXOK4L03ZKlgFH/W7Ex55l/9KpLAAbl4mjZdZ+RLU8FPw94C7Egf4XRRC0Fl/mpgqnCetpqTOGO79TQYE+Z2pM9VTZTtRO9pzdN/jAxNAjdDY0gfQ2AZFol/bQq9zEhiOa5u05ISZ+TZgZbc7VZhcZiOeF2jM5unJm+MUT5EC1EzdPsE7IYxs0e46FkSB/TEjGmjWXllH7VO3qtnLcAxQE5+YTu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XkTHk/WGmrtlGnlbE5HBKI9Du9iEgjx2k+tpQAcktnQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x81f5H13D034EIwLzh7SoW+Dz3ZvfW+k894xeSxxldk59j7IFMlHgN+NZt/oEH7nYkd/eZGqoxKUnyPnQ/Qeb+ZRe+fLqs95JUyf3wp5r23psJeX4IHi74RDxMRHcDwa6u2oIkfPX0f2B59umeXc2g0aeIxvK06MaDxsQJnmqc1pv2Gk/ccX4KtzNv9WSJ8TCvVCUcL2xxrHWf6XzIyit1vadFsMf+JbZYUV4xb/VGP4hQoEhnYsNgP+Nzk2RzUvig9YOW+VOLJHVsmm6gBjQJYdVuTobyqIgFL0cipbUfxJlqXaKnCF6NtqjTPDfTi2KlmN+jNRIlVOigO7cpYoREEBNFp6Pskiw/f6gopEPAgyGwl8hewdr/P+42N8gOHe1wOD5CCcgLapfHPa+yeOv3f/H9U/EJPo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Xkz2FJ3b9JLMhWcemRnsOp+Y1wTIbGLw4jCqUTPow6Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CwKjk7DCgLM+2PEyhfvqdqXw37RkQ/ge1r/JkI9kiiERvhqXC54LyCiX4aKpFmxcGBdPw/BIzBYZ16X9z8c3VCNC4sxBFAZakMt1+HTPMCF93o8YUqcnOjbOb1SUkq3Ux0Qac1lH/zREvJuD6xB3HWsK4dRuhpCF6H1AsP2IEzHIvrCvP2wki21W8VnWLF6arLsIndfv75/DL/g+C9yo4JD9M7xtWIhX9RkK2o6YFyLrmPmiWEuEIBTz05YDXShphl9YSotxgdzoWdrHtrfgroQSHxtMO2xBrab4RNn0a8ouBD2hU/OAwIeAsD4NwECwUZHIw93LIpaUH11wd5kS2GsXmMigklg6O0p9hnUqsQFMtGMniFnIY+P9e1kRDyfje0qoxQqtG3nykydzXOZUn99yc90ZLMui", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XnALwXMKGKFJ9mIkTrsTcCy6aJDLttTLGcvkR4fxa0c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MbqhkMv5i6GAUybIwZWoPA/Py/LvuBugR/QtnwfhvOO7IBP+sEq8XAZ8vv7Yodtt6yNG4G/mbfPCfuExzECoXmCs1rPm+vRxffJqrWXlYbX1Jdpts/fwKHqWsVHBz/Lcs1Ge6RCMcce726kPmjhX+7+V43E5gBh+Fwp9t4SUTIiKcyr2uwzXFuHsmIHEA2FGfc0rYDJbNhtbUBdGyrOQhSidLcpJVjSBAzqNWZSLxDb3IvCNmvM7UQ0Y1ot2CKcYcYduSU58ovV1fKSPyHFzatE+wdmLaJIfOVD5fpd+cBq3ZR90r1ueMsRoEZ4hTYWu0syt6la+0nRkekXEMmUeLUeLhIvdr144DSQ/rHhHEH1NFk4WBTyJn/yFo2dx/pNW02qapsOaTQwuiHngNXNs3zUsP9qqYdwO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XnXddtgoIn6QOAw1nReYJ3BzcvMLFnyMpl9844cTIQM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u/1gBvf0vwAM7od1Lfp8hTDKnDn6DpDmWCdG0c9PE8xkw3lCgxQzx7nkgXDcxFs/Sz1OgZh4FUOJmVLRhb/uKyQWktd9xQ6TUinjRkcC9UP9iWcGmfQBNIwdMKg6POGQ852V2OdAkdnYIcxl041ydm5SbTUhRpvG3ib6TiF3XOgjOvFi7f4Y2RfZBR4vuMIpvjxaE36uT+GN84d/5B/3IWxVJMq+XulPxLIEY7fRK1WPxCh8+RtU3mk3XDUAyLg4U+QCwhEO7Cdp9gSXs9XAzKKZHb9P4xdjsr/WwzQRDwMtQqd0NB0ZGjmMr/guSkvRf/papVUVdeZwuKSlxKJe0x7UZAliQzpzqchRycDZZ+3UMBo6dlwSl/H8gbTbGbLu3kotVit8HwmWVMv2fxRmBllTGk8CvfK4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Xo1Gi/WsbcZkvmTaX52yJRmRG/P6R8hywdjtQIrmFV4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vDw+ayHXdyTMMXIjoQB05I0Y7sp30ohhrvOdP6/zyyTG1W3+EhH0OTNziRIxoPEfRl1awvrHHNkSomjGG9aYLSSDiznPqAYqNsduT+lpFohPMo0BQM7WxgcRmL+cuRYre3KPkkNNLRWGmBhhyOHlpSlVGnbwg1pKo6NLb5NtsmkKp6QMS3vaXZEV3VwhEfjDa1P84gq7vOrOexgrF/hnu4JhQr0U8eeqaqur7xdT3TbLDS+6Kw9qHqeDde/7b2VQY3tDp7rRDaebkVi8oFEdM/mWmp7YbFjFoNRGn4xNvgIZw2+cdqWmohJfwPsVU9W1ZYg9xlA+BigpePEcq4UL/Mx5KBWCecfRN6Vz0wMg2vf3cxgp75MK52icri1XYd49AGZJG7LeMBWh5D2ct9RS2ygznajIHkXe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XoS2N324q/rg2pkgYi94xBrBKzLlw+RH6P/vhHA/lLc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fwg0aAs1GEAO9SCPjJJ5VouMwRRIpPvnUaZC/Ytkn0eUamZDgjf3gzOaip2ZrSnjhXEgtj0HH18aE6Ltb4+VMzJt6b4CSi4sdLC97QPCHp8uWSTPFOG7Yx1OUiBDorsTLGeBLQjn9ASRfct9zMoEhwRdsBK0bS8xE8wWWZzJZ83y/QMhkQZkAQMsa74l2mXVJ5jdEIoUxwZP89yfrpTsrkSk/F2BGn0Oyn8xcwcQVGIofILHtLdfRBEE6ZdETKtS355E5SjhjMxd0ilCeP6267fhoWgi3wwIC9e4ycl8XkCXqrvqmj6yg0PDZPUZgo4n7VpWkrItPph6wXp1/3HksbK4s//a/rvFshs1EMd/Ll8dOdY4rXIw08RheEjfIh6ETqG1uABhj7Akqs08tJiuFXqJV7Nsqrmp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XoTCRkijyCdtfsgs/+hT3Q4BmavEEVWBwPnTHgAvbW8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "g/0d3scLHYao1nperMbQFcQnmGT4H6PfG1Ltha7UtX9QNU/U5VjZ8SU3iETyZjgMAY6s2CyF9ntbsfZRien//mRdeva3mMcaYEjxIm6HpYkj+inuJIfKH98Nbjsv8dXNmpjdsV2Oj/c/KWOXBEvD9OgP78Q2idnRYj5zXKQFjFu39/ssvKN7uHlvRhyJhxaLyoo8p26hlCwRUN9j3uxlb2HMT4utqhxWTZeXvLJvNY3NBxllf9qTIISnHVnb/NgBRR9r3yGsYdxzTQPxprgrqUkjefYisch7DnL24fi0AtA/W11wwl3GWv0WRNstpSBbyXWd0qw0O1HWgrWVmv5kZC9rLJKTfB4JVzNZX8Ro3MLZ7DFu9rowndalpwRZf2v6II3yrA38VyvNhoq4q44qrkfSqFiNmiUj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XrweIDNCPBfGRoHUPIobdPbZnoyhnspq71j878xzKXU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xb+oZuJZbOpZxdHV/zn6rnIgPQ5gVZA29NRIlqL8rGKKUEbzhuBVNGUJth3/JKBEuJxK8OYsQmbxLliTjTgc3Zb00A7iKH/3woZ8TNOTC6Gc6vlIbKeKH3z0UAKybm1+aCMahxF7ubg5iBqdWI++0mfZmrCn5QcJHA/K78bh//Hx3M86X8SsuF6CYw6myLyFoxbTtZGhYRuxFysey1iwaTYOgMgn8sVT6vtXsf8+sgt29RxWou8aK2Uk8A3/gQ5ajvwv2jjLvpzspm7TgxytWZr52shtLaNDY2WH+BDWjVjWbvmEBL9iTQPM6mQZDe86XHNYKZVBbmFwMfdlcvv9obQKUiWNRvtuQnZz+eiviXoULsDaDdapJE6IdW6HTai3qNj0LqcSKYbqglYjM1sBxa4fgadq38oq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XssQ4aptXO4+j3uTCImSKczYTnRPGchiKR/xBFqZCEA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sYz3e4HjQkybEMh17+gKce6u7JAP+kp9LVoxgc6Or4JQhqv0PgGyM2qROZlv+lNmU/sqO5crqkHGL0cAKm/7ElrE/V/w73Ab3gV+wDLOzCXad3f1E/jVsClB9bxATbnU5lEd7zX6yvZeYt/APLCR/pT9uvjUjF1jSk8e0Vn+TJ+uKj7S6yt0t63P6qI/FNj3xX9Htqe1CBRkJB0nV5leciuHDCy9IgSLkyswDZYS2txj3/ArGYHaUxLiC2dKxNsDjkoaWgH/YrRHw6uudGJXf0Ax/s3zPety9ft5bPl3/0CzuEM8TrY6/8l890gNj10rT6x+FsIido3k3FQ6KZFsRKl+rZqSVUyeipio+4nEWXGHtzd55mAyYKpk7p/cDuOoVBZna9RNXWzAEI7ATk8pK48oR9D3ciFo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XszoCjP98eN+osAqP+kGdnkQQN8llZpYS+h8JG6AUQI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "je8HAhrNTYEGjHnIZ+SR4XsozJWJVRm4avLep7WtzSxJ/JoE66XDp183VftapElfP+ykgo9ui/D4yQ4lZXRsQn+IheKPW1a1De7sx6rbrg5RKPtdXt7YRKhggexTcly2KBQTW1ONeOxP1LeKR8YJUlKXBzg01la7HLYKNU5Xl5JwFmEORCMpPAb8MsencwESstl/So/I0TDuNoBIRZMDVNuflXK96wAeTAuafCySokx6Uix01V31TVl13zRH4Rs4gVuLDQgBoobYNqrcUDc/Xw+yCRlB4xKRf/lJs5aFy2MVDT+QPO07X/9c67cz4Osp9H8ia9v3+Waa0AHQbU+3pHnB8QEUtesEfTmX/6Lb6XXpZPN+0tA2vYn+h7S7IZXVr15zqCkCDtgIi5h/QuxeThw8jR+eBq6A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XtRTLQ4o71LP/Kra2nx86Wc4SDWCK2P26lU7mjnmH9o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X4oL7OjO0Q+7ROGsvteBKRuDk9G+HBsJKlLolKIhwmeuH5FbFlohxUDRtWA6uOUL8CrSfIf2Ew5thhwLo4kHCQpeFUQMVJ8Pfw6iey5SochFc0N1mjq2PucGG4nntr6rrSCFn3EO/TimKmXFlxfIdF/hLIGUEiTHMPtQDHHfOGcxjAQprfSp6+o080Hw7iHdCB5hHI5rpVX2PY3IishdjO6tLrtQrDTsqEaEu4CJV95o4e2SDGtI8mzb0vZwQWW+8DgleXYmgi+oQ0GSWg03M5zl5/SHfpFW3b4WHKC+cxymVin+eJWdIJI1HHfJiGUU9RW/ltmoVApzu1BL8xUpqzDqA+Og0ltndIx1iE7of7n0Iw63QDBZVIJ6H55cUT33bFvzt0qcApk0QpSEBM8qfl04C+1Li9lu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Xur2J9JWuqQO4/K7bDniCPb1RrLJYUKsCUyAh9r3fU8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l51xsdgWc2AVsssLy+GLsies74cJ21bkQbKwvk0F02aXuiqPfrS3KROEKfKCpI9bX8mYHey68C2Xu9n+Nr2cFhMbrwr3PQdTG0Nh4xyLC6VIzNU8tZNAUVNZoZOafxatnBzNASbZfK35qqexA3iP9TwNKi4nEzN9O88ynrE9c1V+flPVJ7Kd7khXcy5I6EKySyP1lBz7tTYrAL3HeoyWil7+PEyZlKg7syoHmqIFaku5jIyTiTt8oM4bo0zy/blIZB3h5pE/8fnBvZCBfVpCOpgfRCxCnZtqQoLSW//xXj6EFA3WqKXkrZR1jttKLQRkYy4zoaKBnnjfbExlpcbHpCI9QXO2kN88vcfT8+MejThku7yJJfZV7qwYQr5NcK1IaeGq+7NGESBwN8NcGUhtjA/BAqvSV9vo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XvNueIMpcXyWG5Debr9EXlPZ8I2COxq5KPhm7cD0MqM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QKHh39w7sqcAqbGYDhstPzwFYHg9GMYpFou+osQz851IVDn3bFNWBd1dGxUEXv9zX+QiCGeW549rLVti3KP07sMyuujrv9cs3hlfG515LpTxJMAKp5OKmCd8Me9sIOVin/nSVbDUcki0k0UQQHwnOFQvn0JWe3N1IoCQM6eWTQ/y1lXkXnrgDMR5SSl3cghOPdZLKJiVoxXxbCnC8AXTsGi2sf5xvKup2V+ptN/ex9Mb+C95qlBW3tRuoJiSOtSMTtQP1ZS3dnNISwwcNKzRHaH8kmgQUdqlLKdLUfWCZzTPRZkDblFbjwhK6q0xFidjEAwn7vb47Xv7clVmvK6C0QQzCVzO3WHmvpNok8eCdBHfnkbPqRs51pY7HL5DTX4uZ212yz+Jcat4IWbcjUaCNrntmedtHwOs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XvVYTpWc94CMtpHBamLdip9qsiQNTqrwpHEbSnFGdIs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0bRBttpindLgvZfpwjDLBFTr/lhowelIhHQY9eSQWOKBhHj74gLEAahcTc71qqqMIiT81EIFoy0C43mXXFcUbQ9PEYE3+1pRM/UO5QuR3Bx6lBogNALNtriUh1tV/offYBSOtmTkKRefJGMcqfyGJ4NCjhpy9eGZczeauB5OcMDmd3uBIPe2DXwmypF7proBYRAtB75Z3Lu0q0z6ruou6QiaZVVyttScgUEN0Q6OWJ6dafG8bdc6D9bkv6TvW6BEVNV/lKuXof5oxfp4sq2JuK1oW3ssAHDD4eItpWZt4H91PiWfXl4BXxiVvtjJwzQ3rS484DpvzOoJCjbgAWJAqLsjYkgDRykfEfPPv4lBdEf6yunNJN9LgFWuhT0hqjwjiswh0kNZ8QYg7Fjt42uLUwYyc83/Lvhf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Xw2hym0yqvaa4vRPKxDlaxZ8NTvHdsuxbDfulmOjMUY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "61zCh2fbNPyYlsEtkH9yZmz2S7fRpG3AE0zxwMSVKAvwNlQXc1sxeS7xDNwa7jRzUpwiZFERPKxpDWcL07BJTYV/azRJa4KY4iPZOf+hAIHVPgFNPJu41qXsxmdE0FforCXmQFPLVm0+HDCDBF0ZtRv6VgQpiale7A0E6G+cReUZpucjQWX6AZhjhLZB+CZXwe2BuAZlhFJZyTdV1Ke6z8ijcU5bz63t0GrhIFvAh6jTC2rakE+pKbwwOKXfE+TvRnHWEx5gxdeFP8Owv/Ry6AA+pGlLQgCkC+q0G6qI1yb+rFpKC8gl5ua/8Zzm9a5TFMq3I+WuOFsih/DRThaXl33BlzMlQohr2Wkw3u4Lwe5ml+06GtuDL6piYnaDRhk8DGVEcZs16utnSgq/YIw4D2ajYlUGA1eD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "XwkUFwM5txgkdkssX5JBvv8EniX7bbOURmjl9FsDQQY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nZ5fFhG6lp9z7/eOk/mhRP0rplPzt6Y8bPmhxMxhPpdYpk+eZ0NU4//+wdr+373ni4aT3ETkjcNBUndlCWJB9kHzqisbJ+Oec7wuyfF8UNlQfrBNd7yCbDZSVJW83h9966zonE+j+ytmDyCke7GbvJpLSU55OyqRGYidgPNzBW7h2UUose4jvWb6qK81hr7KAe9zipITpKVZSdlXQrrgn+XG13XKmoFoYdWfXTDdS17Lmgfl+ywJKElyZxN3LIHqTE0oirLIbmZPB06Jxo2uzdCdv5BpdPjqOkk8esGXqg1MP6X1YFUavraySI0W7VUrIKeRBNv1CWkXH+/eH8N5xn3la3gU0IyfMNgoCRF4hXKr2CVZgX8fDjlZ1BvTvlf9yLa00ubrrVwMijXjeKLO04RFWAvbUznB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Xwn/pORU0+xiPkztVtmrMmiBImRVPOAtr5WzCKwx5Ag", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RwyDWLurwR26mBMCz8IEy80zLwb+a8N1ds/l+kpbw6kP7qImFjwu6+WFqPAT2mflMx7XVPML8xd34zd8sIaygspJA5NgdBZbVSdxdPmziFfsK9tedxL35IbFvuvmSOruknM7WcglF2G4x9Em80v2emIaL5LBUWHKXiUpA+D+6vb9gWmwbT94Topxj8fukwdhp6sRsFcebuIcUY1jjJFGhqo+CoxxgFRu7k5msExk7aEhk8LDqAPLm+QhPOJZyfKA/Vm0egkdfbGoCxQZsPTDC5Fe+lq+ZlOwkOjvizgH/irtoHsp3oxrvIm9lJD7eY5Xnd25vIULvkcNJ4OVFKtEooSbfUkilODsiNHxGqWkzJAMuVPbUDEnSkpo7QcqPlQuhJBEQiI3whp3ICq3Li/OFtni5Bxf9N5a", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Xz0cWanarRcw8GXorlVU3kFvqvAYbWelyYkY2IyWhEM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E+xBc6A4vbRz/oDjDuVsQByb/V86vmiF7ubkdrC8bO/Vl4j716oB/hmqAn7Jl+T1Zv+zwNvRTKzL2pVjqvrKp6iouOR7mE7dGa7lOPLPRdBohLU4Z2QKToVU/uaDwz4JkNh3siDb2Ty+MLcKELzGmd2ZltKWrymNhCTuFnW8iYI/eBD6BaWFUVz9csoIS+iQ9PgYoGIctXJ1TIaW6ZrfRGgC5RqRfGjf1/NV+UHPYBF4a9W5lDyl3A3oP0uL348iFrrTPvRbMFZHpkgcK2azUg6wm2uPMpCJ/7DZ1a8KqZh8itQSCoRyO9vVEfFMUgh9Mid7A1J1rGKH0n4Ib6uZi5cQwjU+4UYmrSRCTenscL7N8ZOyBI8Sq9GfKmYOwD5DBTE8FITFLcyYjryimNXBP9vCZBuvH3yV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Xzwwq4jjlzVV1X1VWMJoJxI5D3VNBnBuyGp5ev1mV6M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WlIEGEovZcm49Qm2S0bS2UdmyQ9+uYqrbyT6u4N7rRlw8jTx0p9PWbPNUPfBzZhkciG4P+OKxyeaIb+6fvGh2nd2HH8Eq2OTPEwR2OmIxf2oqUkpvD6rH1xFJY75R5A6UmerANaemxlEhiUV2coPZTj030atZwFg8ovqcNtblMoNhzwMN0Rms/VX1rhYc4aXIyY/SevKOXYHYmX09JkNV7f7nll49ae6BE71Q7YmoC/N3VIiorfQfUO7rEnmo/V26Sp0Pl5BmuOI4PeVshXWc9dNRukSlTc4s87yYV0LtBtrCOcSwZRwjDVKR+S//6Zh2J68XMlB2dofswTp0fYK1hHv7pTtOH1PX90/UII++0Ot5Vd7kZ1kcxq5ERM+dHDG7mYBK3mpIUQLPHA+pkE10ws11MIpHKWJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Y+RlyyjYpXoZbwsfp/oRbT8VFvAIFwJREi0Zd52Hh4M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qPR6TAazY0gT8MCUXHrsdJpTkgXg5hnSjtMSM+ZASrcX4fJtFSzA7q2LZzZxgZvb2oeYm5kkOr1IKKXFGsw91FgLjr4uHlF0dHluykAYZDpCKAZ/WyH0gRqEoEjGzNPuVeTR8RjLeZQdanHBCPFmf6Ll+r8jTgq3TAicKsCcaNzvlxxRzXvP2uzfLGiwjFJ7Tw1MwsdOMhIjXibET53aqAj4bFj1/pr+bFejiOKl3VgdNBHMPKosokFj+KEGtO4imEU25Ugke7U4TxuoGU/+b65T3a0D9hHU717kTeU0h6l2APfSHBsugMUKIQjh9OnO9D+Z70Sz1E1zGZGr2Bof+ljWgH8D02CLiVupkso0pWHSuZHExJfk0ZQ24wY3RjC3oHkD5yF/KgXEKd3D4rYCMsnGoFt4ICc0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Y/aJSkjUcEntnVtt/77qJzRX6FfFaUkWj+XqjO6vgwk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dBgM6GMz933sYqh8L80Y0aELhRt4Yy/wGueXMnQv52lBs5LEsPjdKoX2q87TcbQzhf6a3kjWw5PBtaIZLkh4TzPjnb8yKIioXwLIHxfNI5WYLuWPWZPM06H2VFjTQKh3Rd6yamqrVbH8UUEQZbpiKGXJZLOUTwaOcZAebHOvk9jQdm/XMgg3pnl0270i+wsfHsbBhBs1ne9660JScSDo8AKwcMz6vyxkCADNhIWL+cbhvHXkeewQIC9JfW/qIW81clib+ciXQyhsseUuQmIBc/WNApsAG87pnfgnb3uE1Rl30hP/BbWOMtzh3VIjO+DeTR95KEcGSOPseTu44WD+e8lmNXA0Flhjjnwf4Ld5a74oo1Z6OJacOXpP7abO2SWIzVLAuU+A8+gO3CtibdXkyhwehhUCUnm6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Y0+cFI85xZg1pWISCGGUW9jKXdJyqCk6Mri+jOokAA4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BxpN/gMvPSYXXqUT9nhLT6smLGH6XbSxuDELa3ijYlDB1p6rMccRjpMKieKdZOvX1MuFObCJ5pAE8APMTuMHd977YcRGXe5MPhUZ9wpkbB1pqG1gcrsArXOnOJJJqxlm7Uvh/U4VHbhPWViPkAIKAhiYqBSfmlBIVesRaVzElIXv2byP8T2aTW8Ox4dZxOONTB8JJPxi/s1yBkFRR5t0IqILsmptawkxjMrTGT2IBDTkdLv7hY1BYXucA+MUOQiygAT75Inp4vHRKbrn9qrg22PCXx22AiraqPB9jJNB3Ox3gkJ3s5+FsLCShdReDnE1OlLmDCenvcwAffogJwNf4SOlhSC+4Gs5CuiecuuUBVCLqtJX6QizxwDBEhNBS6bVBcxH3DcSCAigOyAII7uGAneCasKNi9v7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Y07s3BesTnBa5AM0itxpGNSiMyKdCN1cJ4+Qs6kaKsk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RX4RwknLOks98EXIyoAM9DA2dYJ/2O7xgs+36Ua9RDzxO3Sf9yLPsSbexLR/lK+bIzBsC1wwu/tQcVtDA+0n04paWNceQSGBjQujqc4XK4RuvoydIh5V8T3nknZCvfuBfJHO+ELlQg36VSJtq/ux7+y4WEPQboBx0YHVtpJYVXVRFmx+LyHSao028oJ1K5fp9Lcz85EyCXA1TYeJ06qTkx58+aggRiZXBc5+7aLgLKZeGXuqsYKKgU8ZdQMTZTtunmAP2ukJxq7efpXT25GVB5qmGYNIFq7YNAHM+woTaMdWPkm9WjflCNXe9v1VG5ZbgVW6UzguosmE0iQHtxPNR4xJ25fk6snuX2fNsFXQBoJ7H881cRKstJZoFB4CFJ9YIKvlDd7KKoYZCo9XHgX/8oR2F0HyMokz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Y0ZezT4rdBQCF6v7rVkxUtsMyguJsPMFpbB34/MGkrs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pMxeWRHF5oQ2CQgTtEBkyUK0fEB4l0MVuEcDWiuJq1qNoKn1OAOMn9Hu44+tbb3/9OrWIZilZr7i3qo27cVs9TiQg3TJ6vsI2rVZd7xyajHr9FnFAy5tZDxaLxGRRYKjGSnLnkTljhjNno7oWrW3rdqap9JWU1/wKugcrBtT4ms2ERG2TmYEDO2/nccjfObRTtnjD1CI5fLnY6Raz9wcvGq0hTRyduHRkW9riUNqDFxRhkYgErrxKewdIlDKsuQvP3kBsqiE9YtgnZxPDvozIj5bAafDpgSjyrKp9rr/3gmVI3DecMjZLlaRV2xZmKkVQRaLu6bWW0b9R887x45v2m6q9boZkhjxk07lLqqs2prt1vh3lnhIjY0f2EduxcVsIlveyuM8/CvHp+OQOfwGPu15o7WxL5vF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Y0mbm3K+Xtr8PXUuQmnwajkp1glvs2JM2AwgkeJXfDo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eE9p+8fEjInN2T2MLoUjzXOFvfP+qu5Am/8V+E4hW4y10Fe9mc4i9KLe5RlQRI7W/GAEUJit1+tyqjdg1wT0AkvbxtzAibXY79rNa4DsC9dNZcewNYJgk9SXuyUuzWpIhN9OLeFJE5CZgaVVa5T/LoYd+8EVMyr3L7pAc6sHcUErDnfS2EOavluA+iqicaHONGT4rOJV5mbhxoahgaAQhn4Fw19hwW4DEZry8ONlkNPFgjzZX6YgF91i0ryMg4wDS0RKLxumdBKxC/yRTEINT6VnLa541M4x8H3UpzvwVIFwJAptt4xlgBR5oVQIe6FV9Wt168ZsJ2cW8ziiazxS6zXCbUlhsI3zM2PuRqnY59BeJOKtl2kmwrrsNzq86ZCroP1qKmC50rk7rUjAbY072mbOOu+xUNYc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Y6rNs5FWinn5y0UrK+TIU6ft2TVN5eToRj/M5Q4GML4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7/lnQiFVieLvr2XuERnEfuFLZlLIaHttWEnK87Pl1+CTncUEpC9ER7gxOZvG2/5LQooPaj4FA0hQPdW0sd2NcaoQpImxw9/gZCD4WIkUOMk5fr/xAp0iro0H8uDj8iXeufe5HC7OOmdPcwxLRotRUYMvoPQEw2MXLlDojEP/55ytNdxvaPl4i+f6M5IhDsEtuQDkSa8DBx3E5+w1JXzsrZgWX8+hfcY6+tM2gvQOnODjQKgnfCIKg5jO7lNFypn1cbdDlqdPzDAwG1lPOuovlZ8/S1HnqXe/+q+txVQh6KjwVzU9dUAJ7wX9hy5e4+65i0SKHUkawn0Km8MzBgvd+Hvu3CzvlZqSOtoA5YXNjj+1q/OdtF2mr7Bmei1H0fY63w7Cdb+Gh1lIsvNsIy0Cq6uOv2dkqDrE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Y7j5+nxDW2M78PPtf/3VTTB49yq4lWoZGrWNJHcka/A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZmofOU5pVAL2PtyN07+vUWQe3ukcBSEwWa9EP70fJlmCIBGcJPfYw3uRmU86bBvIvCbg7DnnKjysQ+oP2nMOd1PG9LB7Zzw2uxzc+UKI477xkfgR8FC51PLU4rPPwvDrLwi2V1H3i9IBtgQZr0HM5T4aK/o73kz676BsfmmBi32Nq6bGTcef5U5xmYdIurfGqz8elSsheN8xmK08XVxK/uaBIGj+Xk4WybKFiBLwUwWzcke4CkLWPFWGV6zJ/XRBYIbRtPNmuG4mzkx4nI41YZZe8W8IiE5SRjwoJa/vVeIpNH9Kpbfl8/ssJA6PCVQSuIOnjcBo4uMaZcqdeYVmdo6ptT9p1TPwDtPjVsVr2T9nRGLJUqh3/blSQyqg81bP1tthScMyyYG7vhzagyU9T/dlYUVXRxC0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Y8ASLY1Bvl5Bcr9LA70uw5eyyJJLrgsF55HgRAIhY18", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j2/HZXo3oKV/w0AWZRibUFlVKfay5P/hYNAjKiQnIdF5z2BmZvm3qzI5fUC/5TMpNzg04wYz1S3T43/MyImPvi11w1sixEa+0BRgKm1bLkrO+V8hUTUW8JD0lF98d/bBr+Krj5/V5A+pNbALW0FCsSkwlci/nzs4R2NHyR7zsNSkEzQ8WPbwSuWC9/SWvMMR1iSaAMrQXavgfo/PSxm6ElywmBWdI27BqRuVXTmCdsngc7Yja3pIACurqpMH7nQUo5OYO9sCjwucLlo7Zp+po4jrBAdlzWHcQgoazM9Z6BsR52MXVZtAGdHU2VoJPPMcaK+rtAJTOLQmqWKXgYv89ZEs7EFb8dRa/2bj/3rTjfJ2NkryaALKSNuEevLf9/gmll8d2wPbLr5KFzZPKK9oqkgnWCq7YCMh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YA2s4ZrtB++nHA+LueP7J0Kb3SH44W0FVOGHepkkbQ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5FvTo131J4zZfKpSyaKiqtNbR/PQ/axEWfspEAP8PKDeUU7TBHh5VJXLBqOP98Xpbj6qUwq1r8oBtKra9WixelG4+cuUFOKgV2RK8+lzh9pm5eoskZ6Ey+EsZ8AvLBGNTWM93NR4Zaomlu3Xoeke5HyGOF35HJbi51ZHY47hz71eeDZsC2RJJJbjFCFKEigGboX4CfdOFy5IPQyT9GIHxpb8KfW1IuO+wC1+q74jampM4EZs1hvCF0Hw25B6dpThUYHQFxAvqBbwNN69inrdt9H+2691yogoCOuZLeTb9zLATe4oMh4FIQ4RPf2hIx/zVvA3sTCeeIHsa7HZTqgwwhQUu/W1KAxuYC8ItTLvvPE4V4CmV6aUcy641F66CdcGyJszsieiO4ESD6gseVEHmR64cAAOFIii", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YAY4gvpGszLXDxdteOpbV/7FtAWMdLmhjZjHDG1lQfQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tHEYm32azmMxPDwBK8faMw9B7AqNzwyajEAC1S+aKx+9G9XRBmXbm2KQPiBjVul3XGCy2Bb6bTfEBR/CnWoQN9PUQxiAB+IcWxXGR3maDk8E7j6HecK3fm1eOx4yT5aX8pCju+PLF0nl8Ky6dvxSk2Gss1H39/aSPhK5sIlxKwQMxeqpA5bCPUZb3wmkxLkr2BjZhi81PDRgJ+okCl2GMjGGPvge7T/GQHkiHyQ6hbqstGwShvoWb3+VkbvlzeDwYYtj60xd+83YG1YysjoM33HZCbip886CDRQ4uE7WPOlo9ebNmW47t+qN1ZWqINjF36ZiqvNjmjE8Upm7ee3v75Fjt88NuVjLZBRHITeSH6Y7Qhln/i4GSkcuy9//215PXMI8DwF2suPlKQ3cveBHQf+xePzwT/42", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YBozHYcCZlHCHTCPWXmzoYOQT9ZrVaNaW1xizp4mFUM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a3H3qiH8TryqvCQuLu3K+aeyn7mZo6QW73AV3g+tqAHVzkCVAXpBxHoGeW4VYS3p3Ak9ebs0hvFw52d9qAtErqG/Lz5ukYPXttIn/RPynxQS+vYNfwkIsX7BcqYRjGbnodqVhbHtBZX3aHFtBDzVDQKXyDKKP9M4G9ibQt1a/M8cimHx7+A4Woqp0YP3xm0sn4aXe4v2s0aTryLYj85zmFmqGOSd4xyVeSKMtV2ppxatVvOK4l1mXUEYoDygmJKdLoYZMCvJEo42JqQQ+rGePeTTMljcQ1NPWwff+99Vduc/IXcRGY1l0cSGsBWCAudc0SuI/cJP/Zhp6MpkQqUAasupVKX4qqDw8gof8Eok3nhKRh5tpuKHSrFhUg07uKX1Ue3ZoHar5yS3Q7LY4qD+G5I09Y5AZAEC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YC6IB4A1v4lfSp9t0+ECPDxHa+EiYWxjqdrEKKsJpNQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WIlDQ52AXJCFBIWvkWUwyk7uG4GvzHROUkthkacFF+NVCYzxZL+RJLp4UIFoaWSbjjDJUUhKVR5yOAgqb07mXR8DhskygSM7tEmfoz7x7OFLlV6m98cXUlbpxFT996kkhHK6R68K56vsg3B/6SXFbUKJtlLEK+WrKzdYb7Z6kbp8XaShxPfwHWpL+dbt15FoSXCLbjcG7Iza3Z23clwNeFNLAlk2PpvN0v2Bga7jC15B2lDtQGN27Pd+bwCMSMMLtLkSas3m7RyKlQzPa8XPOqqCvmwu27h8iCJfOFbkdYM7c74mDNETPvM5FO3UHUiK+Jrp9bDDCswSvmcYl5yo58Tf7lMmpWjAWMD1Oiib+9iy8Q+LJZJjYcrysW2jAKr91MG8LWt+nMO016TIlQrijY3HKRWzIo66", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YCh21BFPVgpE3VjkfYzBmtKODbFDhT24lV+I6UPxuSw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "U2wAPK0tUE7SnZ21FkA4leVmLzTDDDjGWUki1pmi75ZbSv5nX05By4j86sevoEPvIE1puyNtk9mp3JIVzebw09mGVrkfpTjx2sx90sB62MBwr+0k4d6YbvFxolmFPxiXZg/dNA5lv9w9uc886Yh5JRMiQL+cfF1IHpKIlc58laFSH1YkxXzBZAKXaa6r/W7gKlzoh4AMBqyg3V9cLh85NeQypzN4DXXBVFqysDLUQN8tDkorbIbBhx5GNzDdeiq9ARjPX1HvoGl0F3yCRQm/X14JChWOkyWZ2FIByFBF4jOCoa4MnOapzXBQBKmT3Uqp3n9I+DU0IMRn14wslveBuaji/nS2g7Ae+YEr4Cdr5JUQDgqMGIdLJtrtZ09VumjMamOe3BwcC8OUzSg342a/R1DcOK6V5nPZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YHxCF7/TUUpJ3DkI6k8Vdm62HfLL/NPh/s/NfBHoxv8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T7lIA4i/jmONaA/f7+kObFWUkrnH2lw8yJlva+QiB/KQ0o5LHOSO+XvrhLd5ooCP8mjvsy9BI2AFyYNjjXjvwyWPrAJ1QYRrNggwRxNg0lvupth+598PnDCCsHW8Zb4MAEaNf66ozcy/0ig5Dc2Z5Ib55qhGc+cM8WiaXafvXl+3FE+8YbVy/XT6TLFoA1KEGC4q6BdJP50J3KAKjlMo1n4Mm4L3YnmIfuME1sWVgORNzeBIfnZSRPYJ7qk4or0SzPx0lBnDaQcjn3VP6duQ/rA0M/vDFQCTZRoRaZrzzC8pIVp896gWqxNZ4fgJmVPM6d1QJtzi4rfWxGVH3T7m99mf6yePB+36CnDGsQPheAvN9NKjLauyQ+y2iwZeYJ3M5OTYZILkTgP6p+fzu/2P55+CE9YBqceT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YI6U5hRIp3KUNXqvdk1r5AlTtg03ptnGLOHYa35okSs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/+Yq7ZoUVwqYxeUf+3H42bntNQZyu4RYL8KjSp/Xw9uXCjyUpdYnB87ajJpconoDbaM4wPvQHHCbCkET1KfXcYXknc0NeuP8nV9VBauhGTMVsOWCR5leeAqjA8BheqLDmEfQAslqFu0kQBH8NzRVr7EE6u8v247zVGRerByr2Ziqsvc5AdhdOTTa6IEh8sS4Krz4PwIIOqgpEBB7Xf9fWl2gG8sP0G0PKdQikqaAuQI9+DlmRsZRO2uZGvLnDtfvUDc9x+qEDtDpZSMNSSgUh/WtSGgfRlnkeHb6+z+cmkMCtQVyUWgeHuVIEgNPrgDrMiewzO96KFAmZHRayWpJbMjDeOY7ouTcXQVKVd7jR9z/Qkb/neOnEc+PWYQKYAiWED4lnFd/mIrePRuIAYtn2IhAtn2PU5Gi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YKIr1tqZCv46eQJ0EkZEywM5RrvXvtlz8N4hfEx5znc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eOnK2DVjHTYYQuSiFlD2VjyUKKk0EIsfcEyQfEBJUVHKbZmjTAbvt+iXRIc/4f6TB9rqampCdPFPL75LMBxYRR1jVTuWESb/5uCPUp8yiJBsqRH+G10iTdmhIO1rt5a66RNoZTxw0jMh9EASJSisPxl3lQtjgkAprRJyjQ3TTGTBwuSgeNTaACBpnfgqWdoYIrv3PdrFm99BgerCgZ9InBYygrk5todsvkkXD0A77zD0kZE7KcXdFNZbATdHkHzIpAZmLDzBN1jBDr5MSyrJblqWR6y5n+pl6eLoT9WWOHzjhWb3BdQSGPQzYO27mk9+glFhJcJQzOSgPQW8euNW91O2hxbAgsshCcAZYrjsUbv1xhM40TsVTHFQAQ2T7v3CKAH0z1EMy6C6jGMCm3LCVGx44+FJf6kI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YKSCPtCor26WPHDYwFZ4BXolOyEndbE+8Jf7JH6mRXg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XY5i6Y7ExwuTisTwqkVDTGpG+D74XafgiWFcqv0A3f16SLndCzTrhI+lEf/Yez+jO9WckL88NaINmXbFFiaNRJMo3mVRdo5iQHfIkl09f6v8aznvpmqTReC9mqB9V+Q2yZKT3WP2cj4MKMFp01T4CTKGkzSAMSpa7fIRgNpW+tMaALWp7iT1/eVA6Wg6M4meT4BkBUVY3W3d6nA5HRlgw2v7HBelqqv7oKWQ3nyDSDIXsM+NCoZQvwWMjxXRyz/yxiRe/IiYue2txSq0K1tYpnDYcnEqQFyfW9PAwjMkP2ogD5m9ZhU1rhZrq+cvdUCDn26CRwSFns8yisxvwr/l0nuZqXnKCGz6C0OScY8VS1t9zO0fxAZBenNBL2Hdq0puzgzXU/e60z+8ZlsXM6hT/8HXlg8THsEi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YKtkcxcUDybbFckH61TIc+r8yheXu1uFL1gKsNvcmOg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ksHsAT8HhkJoc9QkO9UqwiKAxjRV0OKiwnu0mjBok7L86Jq0d8rbCBx9ijiRGnH2vN7BiHNCI9WyFF7QDNEqP3etgD68/2jQxplCZoPl6kycux6Xfo5ENZ5xEMNb9km+eycLROPfX7KpNcarv2bR1gcxj9NZwPSa8vpP7se4t1LcOux62jlar7Ez9GYesQXqGErkv28odZBpI/LHZuAlAGBJZVW3Ae8+A0VsuZ+OqB2J2HDk2Lnx6J5sNbb40xWI66AL1fm+6IDLNiEg/nQHX2KOlCmHqG+QEYI1/a5qFfs+jDyYVVzCB0vVXI0oNrWZt1VI/v9Nrokndzu18DGgPMRjys4kNO5Bb1myJsd7m0R1j08F+qjt/3g0mwFrNph1dQo8iFDhf+KvPl6xy9RG51VyMXsBBL4/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YLDUtR2/U6dV6rl4IYoVRxK2LBiJcINd4gpy8iGD1SA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "14mH7wV8mQtCD5jM4Aq6G88tjjCiBVJHrdIUbe++2BndmqTmMXAHDT7Swff8VAWXk3P6/y4e5scIOLbMBE/8J/w+EiZEKKKI4u+N0T83Py5kocyBMjkeR3Jt16D0izrthCxdd50KPQEtQ37Mrog5HmpADqsrl522hctmqftmMI+xMskLObqpdL+iNpoW7M9SZ/kyHXzDliKXwVNU1XEjJFzWoPp/wwWjEmtE6tl/D3bifqbEAT4Zs3Pq/R3JbpNlcmeYhWzDMj1UpgsVhSudd7DHfgQ+n5oOhUkNzo7fQB+91nLYMacpqTOJul/vT/vvwDoHFeSU0QctN+AV+FxiusAIrCU+zNVIQ86tJCR8K30+tBPrCr7Z58WyPlN3fwmVS5ucJoBgz48ksRGmny+ZqE24ZMVegWB/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YMFZkZ9fEH9b9zbqzQZ1ynemyZwpYWPj5RV7XNUaAIE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zMEtruzsyEtcS+ERZN0/P97YO+da0DLSAV9aQyRlSvnTTZhXk6uUgDSP6Md7qSRlBrk1PxmAO0U8CExXl5i/uv3D3BjyEIZ01ojllxMpmIfbRVwxiwAi24fSYhLECiR7I3sR2W+xffjGNmCgPU3mcPnijg3kCQt8PCRp45R5AtvTgo3iiD700JUZyC24rFMZFPx4UnAe8ZQcD1nGC52//8HER9IBNQIKr0ooOqk2UUo1VAXDfRv+pVHHJpfeenZi3K9wFr0RgUuNhr65UpK6najQJsm3tvR1kdyrD726utxLs1VLsyhrM+8x9b1/iZViWnBS0FcYrPsygOrkghxOsTKYNeHKjQebPbzpCmYIPDYsoYGjqq1/X5kpG1SgpfQH9tyO2v30gP4guRuD8DI6faDjYXVoWOdw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YOU6tiEjWqmTJulNsrV9h2bdnifUlEax0SzbYaimVaI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CByy01t9xDSMimWwZxTUnoJrnADFXNTBT/VSTnJeF4yhwkZkrnzNdFOZ8ycOGFVZhUZP2ai5EA222mhKJJkyKo7CUe3rSON4BCtFxi1NPIaltf5dqw6jLLwaqZKItnXlJlyx80DkWjWTRAxcEYua0fsklKV0kDyT5W1Ft/Cm7UWNA22QMEjFXAyzstYmj2PukVIrPqiECLD4Olf421rQJub97Lxm66iayUShkDS+NqjYKQpImEj2v5i8OljtJGQvCi4qdI+qcDWIOxP8KkAiN1CXE8Uxyc6juA85wFbfyl/bbS3ioM9zmHMeCpFyqwktZQ6VAq9VZKG06Xxfz3cj8pgnaByIuuL9euV9Xhx4cTUIl5+Fh10IA/6jtnH0LUCxzxdKiB2ym9582r67XCcYdtVH8/5+wAjN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YOtZdub9nMp4ehH+uKSMkCX0+wQHJJB25/fY5oMaT+4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3FsmNmIKIBA2On/dQ7t2qn868gt49PYvlWZloLiouT0LUKgcxip1lSdrWABvGviMiO0zsQAKtgiY435dOlzwORA5nJ5PG+jY+G4ZlquovsXVKknTn4rOht9U+zDUf+7tl5nWmxsQUm0Q0EwW1u2x+qpKauQ2f9eFkGc73I9LctdD0IyvznuTyCDWmfVlDnbaHyGhOQ60KEgJJtiqIZwmV6leaPLoSmQ4SO8klVgz3uiA6y2mNeOedv4EhKSrHEg3H10th3zZgpWCPPLAzRomevJ01v3iM4QJh70LjoE572DCc6ru5xwQx0VMPNPZFzYC/TQiem9bzrpOVbp9PCN7cpeQx1wUp233g03lgFnLTYcHKendbqFO97dE6It5QXqjUXryv45JvMUb1Cj4Eao87cmAlpdgQtZ2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YPRg8hcTXaBR8/b6Lym8RhULKNABIy4LhdBptLs/K7Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "enBhH1+TRt+hb51kR8KDPh7k+ntqIEtHoyWZasncDkBZyZ8YM0iQsWMFBX0hvcs88NYAZrea4gLSJIPuAgX/i0FbWfioX7eZmX4AP4pEyoSH3acKVGpsY+c6I7Tjr3WGaau9I5nQed39V7+qyNclwST9DzRkteA/ToqZ74q5vJObVc7BU+n6rJnjC8BolgxmCNoGy6Pl6l1ydlp1nTv4nQEtT4r+8vg9eBKxo6HFxQ+MBFwOL9gAa/Hnh+6ADFRjs2hue2bfOZ/tRgPkG1xeP8FDFbOtA7ZbnIsb3LXqS58NKQO8bEpYiDOIvVlOyvenAF/ty6aFJzvqMpgLy4Qh51zS0pkc0OtXAX0PYgYolGwcCWG2juSduXwYsME4Dt56fX0b8/xXpN0rd2OZZdPMJPv3qFIXcXjK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YPcdZNrWDKACQy5LTGDl80tr62ox350jBzdzNIOJEtM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EX43aUXUP4gMdlQMOC0DrDc8y2F78MD4Ye0RQuYhHDBkygngWICjHuEQCeBGroqt/VTnLu/XM++KvXkI/ssaMs9jkV80hThWYBPtjiAwqVRrt67ZNpjJqMgg1+Wxo13OVnplRiEzbR8c/dxAMZp+T89FZCCsWKxPu9UN1xKpM0aPfFujt0nPJt756mihLluFuGTTG/r4Bja7woG+U/lLJYRvvWI2gxio+Xi/JKhpJcKyU7Yjrz2SrElJ0WzXAQD3ZZryKlwS9VhW7++IR9CGZXi1N39XhBvCQUaH+oHQprzG1gI1VFUi+3rPXN8knf5vIx9tbi4NgjjcyebYj53rrWaV1zATfrUvLR7HwVjzua3s8LKdqN87030hLJtN87t+Ifx1C5u3s7Kq5xSvEiZEhISZfAtrBtaY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YQOHmaSJYBMJqxpTaT8hA51jRJC6x7d96YwYu+8+HxM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YEo4C4mnVW4kWLRfjZ1vJQpPgqkRENyWCq5Evjixq8mur7ZmFyrHhPWHTW427DxWzYPHjmpXxENNS7DJp9FDMNSH6wpS5zIQ7UVN+CBigqwuaDyddNsRR6WXeeHz2mwHR+JHKiDLxuI3A3sYD3kokdckJVxDGuH0FMAKFzBJvm2qCKvZ/Dhry17IBpToygk0z6o/IjazqHTnXd3j8Ijt0KfqlG+yxmRIBDV33dnKbiizmxYc2TFfWYtOt83Y1FXF1+aKysKmX1PmjJiK2zEQxS7YOYI+5YDsM6DXN+XGjS4lvbAh5F0rZDXmOuIsq1/vgfYyOCyp2fH2vTpXS8RQUhfGuWrj4NNtIj7jsovUkItGKf/9M2nmBpsK/cocbq+GxITosOecClowBm4VxJowNrPkdd27980j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YSXOsObbunGzWnzZCT8hzvHpQRs96bkCg91QEhxpbA4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a6OGNxpbraWXr5bODrZSzDxoep3i5zCd7Xa0peT39uw3Yp9biiJjZ91kCenY+u4Qp1Ih9WtfttSGowva7WoI061728skiwQ7JPKQYYX+k2TnWVG/esKTJaQDlIuxaKWH1bCM5kjNAkne7qLiSY2E0NsUf+dUwTS1NuWEYjc1R8N42DhnXW4vPI9rCt5zkIrBrjOXMt6jgWcFhI2Bu4n53k3EFJErzXKrfIeRKkQ5K2s3C7bF7rqiyq9vNzKHibNRNPa1dxJj8pW41De8+IS1saEcoDWjhfLjnij1Atqypf01XCELabie6W9Th2CnTCp5KTf9J3ToZYSnx3vbYCYJxVMrHge2pjqhf+Gk4mUeCHv0hdxqAY2Yokye5YTYV61LXoKseWJe/z55yHQQJ4TPyjk43E1xtcAm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YVqq1ynsZZt7Jxb9YOkNVQ1EpunTf/UGyDPNAeXKBa8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bXFBYeiJ/rhzCiaq+D3B5ElQz+8+FL07PVgGWgVeilUmkLxQNYvgrPBBR1A0epoWCGwzwQxOpMI+XL9n9YM+4T9lGKtk1gPdi166UtK6EKRdGqkMIKH4TIip8gMppqQtcJ4IJOPFRbcB+vmoPgWwdb8bsNtwbi9KCar77xJgNnqs+g7eGcF7QpIjKT4ld5BX7xIAFFv830LD6sDGI8p8rGzKpNF1nYzZk18bmZoHE7VQ8JVjfgmgPTqI2EK/yDrlQ+7xNOjzQsjq1eeg2L9QQC0d/KNIwjvpxhLHGU1vdgDWDGk3O4vwn8gWIUHOT/B3T3MEeRwezzYDlF6iUqsCRTIKqnGpPcWSP6lZGOiCRTBv1qH05QxNwxUYcOPUCO5k/YeR93pvqOReSLtHIjT9NgOtJF0KEA9y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YWDYa5+FOSzSgFGVyKzxHBRxy60x9y5JwO7nHRksxxo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w1OKvs60Y9in7Ij2GhHmQzswo4OYuEmuOkWCf/OGkUEsoDySftzQBA6F7LNA/A+PeZSMWM8gaaPFsaGv/fUwAob72uIStV0rDynBz/PREV6kv8tFM+PaBkCOqVjYmNNbXFNLSxwMyVHgEHHF0d81BBWhGdShLKMk5pW6TA9bpVhA7U8q2bWSfpHAijB/YAJPC5tOc0/8DVeBfAz0+ylD6A6oZYZnIIMEsWyO4yBPGJMD+TYvHj+PZHwts5g1nmU9+o/ozvHEfAXH8cBHktH5BlGWAYNaZ4V39HUfGs++KYg7FI0db3MmD3yDSYHj8KNeXlD7LnLbGz5+XlMAU2gUiR/xZcWjAqC8VsEFwP2zpKu7PLTRKR0bwQSQ/bvxdUjg/COdliMTFpGyRXqPvtYIfRHxGdvQUj2W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YWt0pZMkF86OGb5wp6o+Gn5FaC65i4OyQjaBndX2yG0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "++o+91AEdqovuIynbF0CrYyGT4DOGf1g0T+RVYZgNsXxiUrYGp3F1AmkAgcpHHIbvGv34G5s7c6A+yfIb4gqJJOn7ah+/HWruzMmSNtNAjw40nMxc5Sm6IPBsdPbiehqyRhP4/4wqQdHsq7hUUzdlhP6L3ZYKJaegc8LJRZWQKmS20DasmmANK4Bqhv2FPVFojPOJ8rckXgNP6fvb5EJYP9slmCbGRXJSTZGLwNIIkGiqcY2GnBhhOX57pXPc8qqJay/G1fdX4J3NJmTjusQqhJBsWM+bQtSS+M5YYu6eeQKHaab2cW9esxK18BNxFSYHZo1wEyCbyrq3y5bOcOa4yP1lHmiScNucf++RT0TdCvxeF2dR7gGtp20TSM+3dJ1x7cxBn7caHR2+eyAoc2RW9+ssjrWBOy5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YZ/8Rv8rAbeoH51HBv7d+U+OrDeiVuN2HYED24Op+fA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XEbxljGBYk4xW4s6ELt88nGhB34miZ8m9MXe1R/Xqt9UqKAe17Z2aQsucXGYL3uTcZIciL1SocO4nhlQx+vx3eewyCYTBmzpnI7RJvgDwVTgWbKOiiKe9fnZEo8SdXwhEKC2k2udW7qZFnHRXlgw2O/du1hNKz/G/pCitc0sIkWy9cu/SwBbXBPdtyPY2N2EWdMn+DELKKMdyn4TSwlnEktGwEXWm/gOGp3NiXqZ84eLe9KK8589FYhrW60kwBHJH9el/tO5Wig1EfW/ECarqvabpDmwWJjM8yVysRtZR69XJ0CHOzyjMBJKQmghbphpfokVrODu0gHoO0z7TbUP9Pxa1E3JMs0kumdjEHZMb1bCtdznaBiX70TLxoBzN4rQ/0gTSoQ7ZaL101QROYEOdd9RiveIfzr4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YaoDk3Dw7QnyAdlPTZQ5l4MSOryHM0mAx9weqdFd/Uw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vEyGf7H0p0BX41pk3zLm5UOEO64AnVS6KiLyVv1ZuL1hxDm9iRKKaFLZZQLytbl7ssmSlhXU0PgqUH21/EtshbBvvAs732XG5kEohT1U43h3lTilANsVKrMULyK33YFNRoIf+uLB3GClUiuPXgbbZcErxYPFjPmXpNXyJ7yjvaAw2JlpeiQKJMlBfvhqlncZyIPwPQ2sH1vBWrVoGD4QCKXwqLWO5yhHKeNDtdSLzxTptrfW4wPaTM2OSMWylGfZnjVpKGofRYSNcNRK5QFzsFtuHUlNZlgpHwgOZTBihql6txi1mP01p3wLatDCqtsiIQlp5dwEDTC1UUOpw+TnIIZdSUxSngnTuiMQ3NYtjr8esw1o3Dr05TvW7iKKgwHqXbzl440vxp6UEv6AHncjYICtbFEcHSxz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YazfLxKEsKj7atNUPLIt1TyE1AsM7MNLhaNvr9nAp9Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8W5Yse7LrlwUKEh2u9BOBco6UBJEiZKt601K45TLIdcKeV+kbjoPZcq74J9zliCWjhnotf9f6JD3/u5DfcEVAXwvZfUHa6ceJD/2XdkJXl3ha83rYIjULXie+0SSVucPurh5X82MGOLYCHIRWKPn1pc3vKRY5lYyG9Y9/BV0lx7lbQARguSvuEd7UG98RpHSj0a/YND93SUgOmsUuFBB46YQEyaarx78t8+hHEb9sNOsZWeeffBxTNMw37R+qtsbhirNV7QLSV2dWL2c5hNTOl662gHQiTvW7fvX6VEWEadzWVTz7KAiAC3P9zylgHSOtc68G7mu1fVLbklBt70/iWhwsc1eIPp6clWG82A4WTPBy6P/OqGwmuh4Yzk9NljxFBt1TZjBofW1xBuWx0YMvjcEFH/KEfjj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YbLCNzQj3Z09twQz/5gz7+B+LZfvcmKaaluc3mJruxw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AFtHpqs7UtpHNTy7JpEw4ewhHNO4tSRoGyT+AhxYEmXIqztLJex4GxuAjcpg8lps+zFjoJMDFguhhNlDq/h/I9l+ljIY/+7IGu5Gdt9erRJRidiUzGlnOB/yCrulEQs7GdYQP47BY3sq8M4L1+FJV4ULEoXpGjDbdFygUI2CyGBHgk64774iD5nRwPFW7Tf1TU4OJhFlPX3naMp4QnO4cst428Ws5/Wxqf/Zprnx2FG0kT96t54AOIXlBhMXNzyCgm9GxJQ5P9qUoUX5QgRSaAvKqQIdM5XNgN1aN2SVg/j4hx+/99VjJ4oOt79hTQY/0TpuhXUKmldsNN7P7i11DBw0XVVrYKn95/8EnaXg8qt2cVkg90cUF3gTUF5ImVk88l1szaytSl+FldmwnfduPpHT6ZC+0CWI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YbQMbatK2yUNSbfLwdu8oG/EOfpaki8vtKtzkpMx7e0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mRtZoJ+GpItDeHORSNASL9SCvDIEnmCDFBx34zNYeCAS082emyUsw3vbpR887RHHhk92e4Kd6FrvYTLRcoddRU2CKuGBlurxn6OegoZzgVmcg960mUEezhpaxfmr7pekPScoi9YMrA6ioLtaPf7Lki80FsX9MfDnc5sL49KQSdEr0CCjp653i18RGjXSaIBsItCxyA0jAtoCyJcTGpZnk6Voem+WBBn4EJVScDZmjwaOZxnnj5xmDcpD5cEs5QMjTHsH2IwSK4ESs0Y/S/SqU+SeOBgVZUAnrGu77oNXTa/wGcShTeSjF8q9zXSSdK7ZljG24fwYW/QnIkT7+vQEnufQLixcX4DgYTgnZdP94aziHKIqBEUdtCHi1YpRKMvTHraQ/TsbPMebl5YG2yu1GC6SLZvqHnvk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YcEyJ/eSwJlIUlIaTfLppdfbNEL4iD+EgUx/XmMg0zg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "htYKFQUtv56YqvEpXnRO4/utCTusOYo0y7yuTErdrt2wlv4dIslPtwAI3+Gb5EnO+ERVXI3icjS+LE6F1V6NbkCRK4SESTt2/GhYQpjwNnFGfDz99ag3cSwuc7JJMgOm5xriIezMJuf70hXZ6PPYLV7YW0YQduIOJGJknNjg2/3NKIyDm61BuXR4QfUU7w5VXDzJNaIh8IDD//RSbi61I3bN9sy3P72jpedMyHitxpk8/fzqGhYrfr/3JBZ+6Qi9q99Lh/meXBo2DnzGZKy2I/g+W2arw6oBSW7JCVjzXN/4Rhi9jPJl9p3E4FHaoe5X5HGMelK00LHoL3d6KILltb74KEg1uQe2ed4ynaTzNwvTIdrUZUl5RHnI4HpZ+VmpL1SRRd/AM7WoGvkQtai48r2XnFDN+ovm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YcYWjDiGnx79quGd7ZCIj+By/R0PT9e5LVuHrGDk0pw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XV5EoWowML8UgLIfux33RcxHCi7P/Vcht7GpzTyuKcFM67jXiOeHS4+/H8YsrxrZlEGSL/Aw2KBVDPYNAr+pXxE/mj5EJ69CZuDr224DA3Ir8XRY5vFyG3alsNTUfoKww3XkYCRCiDvKTCZ6imZtdWBTFeMH4HcqhNg7jcb9gBuDOGl8JZ5cRZHii4qYhkV2O8oShf8/jyS4YIPlqmoPNUhHWcjZ6T4zyf42j4LOPFwq4hKZ4OG4CxjjicgN8rLZWaRAgzjSD8eK1gawCuJm3YCXWaExVkV3ws5Wa2j7rRNCTcgh4gj23ZtPZkgTAnRWf9qPz9nJuK2ChB+iQ/tR/TL63hU7XxJCqp82gPBL2/ShRgQnohI5GrgQgr/8+vm5wTfEHOK9Tn9pAJXE/ppfflSTtvUe/2i+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Yd0Ga0sZceEG9QJ9eElReqSf/EP/XcoZPCDi8mygkxY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aGIN1EcFhwt27A1RZmqMMVB2U3C3RG4ud8ngSubEZxNttyu59dC+hVMJ+H65cIzb15g6UR2uzGlcOWdKUbFhW79dr1mcMSU0oMzSVIbmVeuWwxlLgWFi08aE0ZCTUATsWeXR1h+BGxLv2OhzKltX4Z+6E8L9Emdd/rr1yBSR9DwJeKcRjrDcSWl4mXeM3r/nDXuQFKeBSwfnwg+emw3XFZsIsxukOzpy4Yntx2vR8TE/qjjAacj6/OlVXwiCb2+HBf4Ztk6ecv7G6+O7WyFE0m905OFclLvHRrw17/PmMKp2aUT2lnJLPAmHprDE2FzXe0iGFJL5kY0Dq8Be/xcAei/O9cIU4fxznxO/K1YrutdUG5WIOO9PZfNu1OxdPEjzaQJ9S9yEe61H0QCKBPzAJa58sroSOW4h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Yd2Rh37iXBtaA4DUK+BLJxoOxB/t33Hs7jGCx9V0nr4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0DFX8DZhs9uUKNiXXlEeydpeRO3H6spl2vVxNBhwCf5T4dO9ZEJRAtsrSVMBuxPpXQCJvCi+dPFipAMIuCR/FNCQ2eSA1Wjsa69tiUbYg+NshXFAeuVR7vzySNZZJPJHtGWk+ZAhop6jGlAQxAOebd5ayo0rEqHz/F3sJ6+C48bos6sYOv1Rn90lbYurt5mDHClulJxx2W0NG8YkR/scyFSRhvKB+FmbEIeubcyrsoGbEqfUXWTttlgPkIE4Go2GDLHvt1a/4HEwOc2rxE5lsSeKanqXFq0nJQbE65spsPxY+CoSJQlNFdNLyoxH+cFP0qtmsKKL+Cb6PG3zRblulQpEz6iDVcIDetFvkL+6NJrwvo0L5A7JP14m7SRm0VFpSowabPLFoUGQy+BUFmqe8zp+y95pFW1X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Yd8SzVtNZzyNdGFz27YWNJJma6JyX4mD+MpwvLHgenQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Sc/dMjC4gBn9atqtPmLr7fS2HVzIcBXgSkOV3lY263YLWydIK9rMX47RBuBSAzKpf2KTcdg233CfxHZymU+D4/0P5kJcjbn1e6AX6QXATgZDjsdKihSDPN4O3ugNo3b1POQcwxR607UioEuBbEZ2Kdsvz/svH/ZA2ZqVBYyxDA7IvLRlAt/4A3mFVaqHpNLHv7iUfoBaBQ/xdr8BZQLVX91MgUwiwEtuxvJ0XjTehhG+rgEL5pGgsx1+9ldcRKOMyBn3eGM4VxBo4TdGyBtiiiXBrdhqgBYsXdrBRhZda9yj07U1aBixKR8G/Phum4PI8wChf8AvyOZF0iMpq0wnASE7Br2doMGmE5BBHHkJnkkBJJ/j2fiaFxWVgyIHji6RMl35XE2IhHYo3fW9vFQxgID7hB4jjgN/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YgykECRyZQdBJsGzx5ltsbnnhBoOa269Uj3U5Q7hjWA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NB7e5eSJVpYVUB1pplMiA1h2ZX8TkINJ6VI7bQEUJGMH/S2I/P9b1eNAW2rx26ty/OpOCaP+IT6eKx+BT7st/0v7fA/OqSzTeNx0M1eE2w+becfDbuJk20U5+0TCYJCtJpL13EV6O/b78RJeN08wR3i9AbAV/2XEWC4Mc63/3xOnM1ttyQ/qwCd0Cpyb1HxDQt3ut6Oi/xsGmX3rX6kwTf2bY/VBqoOKwv09YO7DUyvIHMzTTl33aos+ciFfCWSf6sMfa3EZg5Aux8BWVxCdl77kzXqVFom4RoMVpTxqgKgoyudA2f9FBWqlB+KSO8Vo6dKsfo6nXp/GfkDP0oR3jfUYASfZiEIttT8a6L1KuhiRng6vpqIEiHtgh9afWTTk2/EVKRKACGo4860OGMFH7/RbOJTjXTvq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Yh5D7L2s01D6JrTqLUYXgjIAgpvzXkruxW9tsnWMgX8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gfD3V7iUlS5PH0Plki0/aJrWd2GOP+TNQVraHIFSa/3H3kI4l8NhrWjPOTVRSWRXtaDuDP3842PIoGYQzS/i320J/z8WwMRfjfABM+QUwO+IQyS/l/RoTO2dzdzUN4biBI5zFD7dDY0OQ9I5C4mtgfKPziPO43eZbe8dm28+qOOzcSD9hFD4EnflhhAjFxw+9dyakGddm/LeBeFCYyMVPktD9M1BfsYxJkj7ze/VntlstsQOwY07rH9rIBp/1lDydPNS5yF1xQS70iHf/MAeBjZhxfY2Z/ATjohmyuM3fUKMLkBd3BTFgw977SyjX6SgHp28iEc78/xXdrtewSpPv14GkvRgCpLRRioZ/MosV2lGCEtICcCfYEtT+WrXOulqQl79LHSuZV2/5KHjRCCaVOT+9v/nLqhV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YhsqWmH3xF3ovsIrzFgdrNSGWLhGv/1+yRuBwlJ2Hx0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d+YviL602D9jXHAlYlvT0dkeqgJiBXOWouNU69dUssKRWETXLd0xExQDMtLMRYJjXiOgWZVlg6VfcfHeT1rIxBgF+uxrOdMpl4SyuI5UKwuO69TKXyVIw8HWejzLaYaIMP1B7WEWEP50H/eALwu6zQo+vIl53QSrraODW9XTbBP7sT2t0S5ksiHDsJ760Lywt7up1qtPPZYpga91Zsea709+1n3z6JrMmiZNKcfkIIxW4p3gxocL5z557BqbTM+io7v2u90ipirywjul6ZzVIp7oKi/lUIuv2OavuAbYug2Ib09iAbSTpQ1gTCZ9AEiSrxK8XlBdxoUYtOaY+xHztivqdAYyhLEmnmfx7VLl2f7Lnsb9xfywFH6QvJv6hQ/FdF0YIJnEyoQvjFvI0b9d4c3sDaadwU2U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YjKvAkMCIiQ9xW375+g6PTDB60P8NpkOeN37ENX57sE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GXfw/Ol1001toZ2sL8Henus5RsduSK7MEK0GXHyxO9ZkzVSg9TmKiGpsftr5gG8Guq3qoXo1BJkFWz4pPVOpZKt0zy7ModRI1mt5e7+PVq56OgEOmtAVn2Rk8b8EX/GDdZRd35JSlq7JmIWv4lrbx02WSoqfgml1sbJq6a56bdsexqSZcxiD2vwYQ6BTbCF6Yliah/q2OAlw0OEYqwaDLA3NbUdiTSixK54jSqbPmrpCDJYIOKDAvPRgLFC463aYVgF3OXNCcHfbPQbFOmMKoFCJR8Yf4YoxMQRKgRMhlJRJde6tlFzfmBDkKaMsaIQyf3g/dy3tSiKPoINhDU9UGBNXBZkvTZz1pLo9CXdOANrZisO7WQ7DkkopYP9wHKv7MiqbUrajzLJJwK71esNaEktSrcW7zReB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YjW9M+Imws+WOFletG3QI4dSRNvaX9jOmdgH3veTras", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "num/BXhwbpzEcvuNW+pofwOrNYzNDLfOit/nAW2/JSU6qjQb9J8zk/nCo+dUZNPrVKwcfeNWuXOJDZ4nlmcYtGZeOemQMx7I6ZLRQ1CWBJjl8dg5oXkd9Jl6Y05SrUGemNOs6vqxL9Q+XReXevRgs0/TX9zae39L5qjlVwHydc5TuI8Yyf4b7wqKY4Nf8E8eFZ02QTAKjletZaKwAFfNTfmWOj/6u8wCli+QrBtMFpaS6qbDBXCGvzmUS32q2B1vtKCOEpzQ3lrO5Akw7QdFfSqEYzmyVHSUEXZtZaRjOhkDmtjh8Jl6g0j/taOK40wfAIP8oc2clMhIdzqVq+0Fa+huWjSz1gmtgoSuWwIKAUGVuq/SDXvQNejw7fkAyeSRj8hpavq0e3NPCp1639uySlViDyVk/55o", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Yk3xRf8D2+4+8EhJmJ0Y+KxgE8IVTu0T4hro+myPji8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rjQ/03YkTut3wS8d6r0o1boGBZtxsXL4/zQH/BRH4pGi/fNpL9yqTAjz28bhPVFJFW7w5J69/PcU29yfqxd1Mh3v6SvD+3IIy3F7TlX412vM/WRc6xmLySiDyzst/ztcQubxREuC9U7FSgIVhrWPtnyiVZHYBEQ8AEZvb+UCNvQo2XAj9uxVtDHrOMqOCDb4EdXFkDPQjMVHpnschMQuf27M2wU8O1+9Kt67jXVENSkc+d/Q0sFaKNI+YODgGupqQwYJs/zmkrzlV+Em6hlguZvY00y2efOXgYETkWdP2YJ7LF50+5hgq6Ee686buFt09mgS5MoWMZ6Cncb5Lqrq2M49pHnNKglsdg85n6kb6aa+SxMNtFdcr1pvGK+vjRSpoZCzraI3K6umuGlU/1jJETurwxGCFW4M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YkKVBovr1hvGwItGiYgH21pc5jljr/cztnPSHevX5Uk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JUkWDBD22NWZ9Av8Q0RXHshlpC4SyM1ZaSd50XjOjkwp2sOq9Jl30lFlPIPmj+FfVDUCPiAFYrn0ObvJmBBHG5dvpPjU4HCWchUtKVuPUjiXKPPcUFWaRRfAf0ENOTyJxULMBpZ3jD4gpCt3GHcIchbgAW0sQxEvjjeIO3VevSFSP5OYY5FfylIZ4qqqfAaI+IaO09PPbpPQGtVKoCs+/RMhqfCufgm7bJcS/RLHjWIhtQChNPX6klgvlG+RrV+drja+ZwpjdGdNNO2srnWZs5DYPvM4TI+CNXDqAVpe4oPJyj1P7/8TJELchAVJogZYmSjs4/DwhkFhPhepOS3CrkNjAFvZgO53dmwcUB9HkT9NCh+TZFrYnqeZdQ4JHtriSToh5vCl8dz7ggyM47u90WCcA/eETWYd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YkOtyBkv7XLYqaVxj+vcjMLo1PdRYbbZPoo3ipG5J8Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PC8JPWf5P/KVwdgp791+TNhM/1ii2kl308UAz6jzm4TnEykveDh8HonqbC9BNF9f3LEkqWOr5YGR7UZohwP5uBER+HlHC3E+4ymzrq8j8BOP52l9wlTbiNjHP5Hg50shEljbpS7D+EAvoH5I54/+UBIYu+7KEejU3tUHZyxSQufYljFV2yZF6PWgV3cKk3Nj/tWWibo7wQ72H92uAJMovNk3ExcMszr7SqZxe4So7vRIoiHV4yjM3h9iloyvO12P0MONUUQ5YJGE2pLDkSvK/tYBXcsDEru+hO7QgjCBc+H3I4qKVvwRh1YENskhdC3h27nxHUIPiQo0bL2vscnT7WBmTgva0fZvvPKPaPAyKlXqwB5yZsd3Ot5VF3Ylt2QoOH2adh4z3hbdHZn0KI1XZoAlv38Ruv4Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YkeuRmB8WTY47OWngiF8z+A7whDiPsOaE81TxHXvTxU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bevJeJJpXcC3Of7S4vZXvGJ5mucoE4TkM/rhlqjfYsG0lXmLLYX40nDxEtt867CDUyorXhea+NPIUA/bH+Ht2E8jH8QfHlizou1Szr06pr+0U3MjPXFi8iXsbMSXcyP/RSg6ePI8Ca/hTQTQ1zK+LoRnCOXjY4+WxPGDyJ+qMHfDI5usyVAP1jvXv2eGXTK8FHbgIZpXbPLQD8BpjbBXDCO9GIlvwsqUrJaBSX2WFZG+GZ4f62DzGoPKeeXPI4nwiwzZyeuOmLIXgUKnShHCU7tMHvJtK0Egx9vzqlSAH2o1zKvfJy/t2gMU38HrBheXKlgAbNr6r/4nqywCfCSyuilYHQvbAREIwVtYtLvSBr3d8z1BlccktG8qowS+k3i3wF5eYi3UO/d99EiW7U1JhzTQqiiiqIzw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YlSro3xuhUvLrWLCc9an1ubzBg7xGPScFWtbmq4jeEE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "reBESmnjuMrgYI285U+8oLf+6TUG7yCvra/D9yz1yUsEMOlju03H99OIIS/I8gxOZM0QAPZ0jC8zGcaqzQpuVCW/ulEAJ0bAlyzUdZA5KPWVXRUDmG0WdzysSQxX5G9dcVQSL5/dT8BB91jlbs45F0JNcVZTDJizsdlhvJUv0Tt8ccs0QCgeGf2qzHxrC1Dh/zmNgPjI8rDw3PEYTAljWjZYLDNWK82aciPSt3M0RhwNJl4+J3WQeODXtSb9cdwBbgczpgS7s1gtsjtDlrn/N3njj0UWvMRvcDwYW6OcdL+DKVzKH8ItRtqgpj9gftcgqg/pwaqg8/VY6dXVxNALz8vAN1FybzgBVZd/d2IeK6FIXStmKIcaACBc8Izi0Fi8fepiO3NqrLl/4778/BS3i5y9ZtQaINHw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YmEDg0401CBiy8CkeabEgrQHhj+iUyszBQwM9Ugymec", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "74lKOI3nzzcEWi04M6BC8n3+GJ8tXjfCl52lFqNBzp+L2XYp9OOEdoD6m+XutYqJjhfIPJsvsBFBbj+58OfZWg95ncxaZpPNs8fZkJOubhBIxQWPjHXb+0QosV6hZbBxBzPKg7dY5DzxHPlMvcJv1ljR2vFz/OoO+HpULOIwte4PiB7DFPaAHjLrgJhz0YwFLNEfbShT3B5SxRcJwmHjuFeeEN5mf+hNYm3Z4k41J7+erjlxtMh3uZ/wOhrO6IU4uOeYS1L7yzTnjObSJN4Z4fJrWJ0yuw/AE9NoFP+o7AnbdzZLICmfknA1isBQn78SH9HD2D4HVTJtrcNAAWwT0Es1WcwgQpZ9Vsy7FOu7I4enEgvt8Ssv91Th6qsOzgC99mZXi070SQ1jZfp11CSjAeohIr6FQzTy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YmO/qVH6nxoCH+9B7ImcsFiQULRWh6R8vy/xS+h59rQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DVAsRT6fTUkHQzkZysoUB4GmS6uubKhqwCunrrMeH0YmWwHzwLhkCG3vdzwjsIUmgX+MuntY5Bu0FpKIu2mVn7iQL1kLcczD1m5YSsbXIinN/7AypVs4xGZYsKU9YCOSpvIBcu+spYJD7MNu/iP2dmZgRpCM3S9oUc9Y97yWowQF3Ra6gieqllu33q/uEBCE+D6ScPsb4/UyHWnybcuKS8mA7tD2hU+to6GoJSE0DXecQ2Au/TpUV8wNd4PfYV0g5cE++RnY9nYQrUetgWFy8zAQwPdLOI72Tkm4js9PlTr0QC0V7iTgNJcRuyX+5hPl0nbu2h5/8ImSI8VsMYqvX6X0uEAW8cq8/xtyjL/0csJ/KaaSqXbYfPFUow1HDR5AH+wjfWTL73aJcA7quDBt6+zqMnBgjr7y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YncfcUa8w36bXRLnKtbQKq29SQyEpx0L4g1jh1FfNhs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EcFBVSgD8u21dZqKi/iHNaCUmXOr3L0B/TPMyfAe0jJ8kFNU6wT4vLxyPPT0XH+IAag4qjAwhhF4N1L+x4B61pHhhyakcXXsFv+EDaSe6Zz4HPaaA56n7JZ1jGXLdcToknlED7Ah5M81ubqSZj9Aq03MwDsjKcdtSTxw8zTrAvhq/xey+qT7oNsfkjHr8XgwWKtogi5m9bYneHIoGan0lG8/hDZUIfqzosMWV5JTZXU+36DaMOSYB1xkgLVNRcl6XFypmLFpjrL+qezKyuYLYbX5GNx42FH9NXUj+UX3N7jYhxdNWvu6VJsB25e3Km3txjtHhYDlRmInVc3i0DshRl9RK8YgjcuhO1jKv9r6ZlQs7CAlKPVgod/c5XW9+C4xX/VlFWjr2y4TU5B7aQRldwC2bAL+n3wk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YoHDVaYm+aCOuOiGyzxAOzm+kCUSmjoKC284pDAkcBA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B90Dd/RltDg+QyinMOsptW8HRAL7cDKBBKMcsUgYjuGz0cqWU5WdHMSYR0VPmT9Clhwml2OiPhiaZaw0cITlZID/kNc0Qai2XcHxQAp0OTFnXmGzKsajuo3do8q7QQ0Mk9jYnp8RuUOs0MJF3lxbIrPQ3f6aBdl8O5MCnG+IhfNmO+dP+eWjOnZgjL6IIYscbFfQnteucYppSv5dB7l4vL6OA24TT69N/QKes/L2FfbBppkHjNtoQxU0ZGAFtf1mh4I/YLj5Yb9sQmeffygxBfF/K7ayZeJSHp1GXUjoTTMS0VQgVSzW9tpypPs/alcE7hP99IEohdfJolRK31ageY+EFjAq4Pf4jrJFjljVBiGkioMnwItF7rS2MFIz/1xxDJbMTbrGBm+59/b/qn8qRWC1GlyfQSmh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YoplYYJDYN4NcCIqxCMHEoqcaeZXDpWPlNahfklg868", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LwPCRBCgvqe+sctYFxjzhTgyQ+yNTC0FtevCVXvwr7sUOGhuEDyPeteaVHeXaKm7rZg2qQAu2kmS27FpiWNM2LUEEvDfvMczgpwmFQywK2L5RsGw01a0QbbU39UV/NNvND9oRTp6kxLvGFd4L21ntUcmd861ZR48HPCfdmS0fnHuHmMQGvKygCzGDvmrPMm0jNMmyTAtO/9Gv7omFl68VzISr1VBIdcEgNKlwhaJN2B8vBpP6YtBb9lwafecYGc2j+tFlv96hwLuPmZ6l+NElXNIVZWhKXA/c0LY3cYsa+EnjCy/9TiNbvqqaTGoZgkgrUp/IcopF5n4M8n+uYFkZJNhFzXUopZ0z0i0557+umdEuZAAlgNA2AhmZ9SIQ7QDklERRJ9KFxtPD8tH9mFmIhyG8/DBYr+h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YozeKOpTsAvGBVYTWRtNjNcUE1yw0PjHcoUwLBuPORE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3SI4g0e+vo/O+kRndzH4xUhWXqK9lOA2zrrJfp917tPE3pNQZDn3LotLScz0qtilP9UJ76mBq1Un8vF5WFQd48tCwIq7YZCPfqC7HsQJZOlUICpJ5OGoccN/Em101kmj38amP0I1c0y2akWu/gF0kImY0tdh9y+PD80e8BAhNrYvgfxYIhWkW2PVWOiRqDMO6a8gPK7IKEKNZRORvy8DefBpUzh++mrIEXTk/d7MnX0HbW7x0XDlctw97ZHU2cumATLC8Ml2H6R6I2XN65S12JjtpdFuqpBR3qjpehcBp/JVirwED+qzRqlRVahXvdz6hwiUBQpOTAIAKlnG8XzHwYbG19BFcParA4bBkWRD6CXDIDj2jVLSd7fpINVliQBvjADign18KPYIJYxa97priRXh0eC5ToWh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YpAsOi2VBrOFrniOI/Tg+wVFGsHsu98zM6W39FFxn8c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+kO5zL3/foULhwp9hShmII9UAcVc/UBktCY7A2rbgMKKTpAdKmzAo9aS7OmBZxf2N6Ul9C3p7rDwyJyWmpUfEDRXk8Fxdmj6Be8CuQNoySZpdMw91dYMr9VxwgF9lhDCGf+OZ2Fajv5iulG5lH8Yt39f62jtZSitkOYbMb6SxUjpPXJHk3KplCzMhkMKOEIzQmy0xzg9Fj6XJ1PyhP9PdsRrH6Ly4i5nGCPamomEyObj4yKzIMRt9BZyl7x2aKJ/X66BTfQkGsLX+HFTFlWjnOcJss4hDSqVTA7+lIv6vwjtevO2gb1RWUJFrlNI2ulbo4vnvTTCRw949haSsmZuKdgDvmY8IXq7RhK0DYx6EZ47+1Fd6LnaG6JUn2p3tmB92dHSiF/C5p2j89L/Jl5ugJ3s4I++RvnD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YpSTHT215MsuTIzTVCcPek/VipYTK+YjUvHr+bX2xr0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OaX7E6W75mpnHmqzRCShn1ChJuonPCTGZIED+i4mjlM1sz/MxAD6DHxypsYanZUlvCxz/UVTEaHUt2RFu7gQNE3ly7NvKl6kn/+aICKRCxfb0YnCfGRUY0ifybNsipVXmMpNB+5HnBtLqYt/C1v/l/aSuqY+Gjw5k71+nhXjBw9kgPu9sIvvMY8crtuzaD3f+HaSEVsaEKGuDPgvrDC5I8IoyTGsPmQjALpXpKu4XkRRlB4pxjqkVO12ZNPw7IjHNQh0RWAPXzKOUpMLa4QHDegNfi23DUmRcaQ1Z4Yz9yRTMG1HiLUqlyHR/lMWzK3Z9Pc4Z8ODgqmHhyYYbJBI7Hkwl64BDE03vsCWe4W7M6hBJJa3zZ/DWwCUpXwd8Ie6K5hwpIExokI1Zhe0S1O441DGKU9A+aCl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YqfQw1Y73Px24AsxUi3doMHS6QDKz+RPHKzSev/PR2Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WbOcdiR1dhSTqqvifq64JoAuUhmx+MSHLiJz03cTcWhnFiIJkzxewqIbab+mPNE5JMJRTDVUh/yESkcw9G2Fwn7SVDENZfAoKSSM4jLVcg1n/oDVxHUn0wHRBp+LumXlajA0B6PSAUXhPOY3jDJ5yqLuJCkvTdZ2lVSImSEso3kraerkfD6N+OSNDdeXecnd0gyCuDatFMxyAti/TAmYxF81Ab6eM0uXfj2XGi5tqu3j+SOWuNm67FXGrPK/3N9zSct0jitRWU+XNjkWLAmJDodW7BFBdOknVwxTebeY8e5rkm4VQg9p1cqx57ZV1a7KVXCfrwpJbagsZRtTdeNRYmdMWwvU4HhqDBHqYjHS6NmKc83hQ73r/QY0ozeLizAQnJKx641oKxrbOQQs1WKbQuOBJnvXKhjo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Yqt5lQumvp7sR8V/1myiU861glcQn/+IduDB1v0mtl0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/dvNRNzZPDGX5imHFbmleD1f14q9gwcKg8a0ZCjHwU5eIqPLx2Lk4nKWdYpnvcOJvYDS/KLSTfWLhK3nS9eyEigB0/HOP9zCnfIlx1ltLgdBusLEMfndAFlfBhNU8UAWGIh3ZkLxP05ybICUA74CSm2TJ0Vpil63Bzpmd5cMQ4KUS6IfjFKjfk9td4O4Rec4L1HinWCQheRdgbFeLCoHG/H7yKyCxPE4CJ3y1Hcmnh6/pQMtBDtZ4kJP5PZcPKM+trCaP/omDRmgGNRlJxC/Fx2W9TCkuA1Kng4CKnT8Ww1rqUqgKZPgZ6ySdGRGJSlalG3YHtYSJQ0ZJQ6bIfqen2Wyz54jg8HcaqWh8KWdTiK94pwzphE3q4c9LnAxjvBVWBGgOW/moTDWkPtUEkIEnana2BaTJrlE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Yrjaxcq5qcVXxTtHr+nfdlvmouPJGaOuIrCRZohpzoE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kAZrYGsr7MOZrGIrYCCtE6wKSMzw2S2ZJflBZvIOuF5iVLuT4dkWGpRJk7FwoCFYIEl3vEe3w0fWaS1f93EipLZgM57FT/OwJ/ajXumHmar4a71s9tx+JgPmUtcyI5tyMOz0eO9OO232ehYRC+c/exTA+5yID93bY8A3cILSVu4JCUEQwwQlYbIzKEuBP540bygIZekE3InxcFd5d3T9aJ9ZuWdYxJZ9Kwt8/CCxSOMlE2IpMOKi2rpky/7KUz5x5MbJwaGa6DVXOLVuLVYHwdvAHVj31ZL6dEQ6ndllJPCtnzQpSDc9O1+iWqiUUq1WnFaSuA7y7HIywOEqryUlsm9fVH5fqIlDiyh2AeU9UiC31HvbML2+NvGgl4gIYRJEMuBulAvYJgwXSy0rlxWBKyFI8OXomjpB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YsuhKxa0s0/A+duBwT28sThRoKIuxuu8tNaNN1U8YXU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TOysQ4zZHZMZ5ruHMhU2MRP7hMUql0W/F+wuIuXZt3SO5Gv7IzVdJhtm3LdX4I9AVmvW8gxQBjIYbaryotrCxgQclfMzaaVCSBNTyA0wZWIRrfwVo9xWHoQ5ZsHS26iSswxhd4UBifwcrcH2GcD3CAuzzBvInMkImr1331b5OsuiRRFRG2aDJhBXJkxVI3W95tLjgG/ks1xCEI0Yl1VEUmOc+jBi1FVSrcAjvNbFQJqniyZ0913fDJznSiE9FxesCcYfwaUBhQFSC207wRwyU8f1JUBHUNKIDZtt30jI3spCPRlBmOVlrox9peZ/gCIpVuQLkvLNmyNP8klxcg65jqt380IMJ0LdfBtcj36qz2IT72DbN7Mpuwh8IJohpH/+gzVXEZ+oqx9OWihtQpY/yzsslZh+Sa7X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YtXoaWbi8/NaBrgcNE3wVCHpF8BA8/SthndmiKWyFow", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YAlzLm0tFQOqjMMfOKk0SBypuyk3QtRtrczQ4+beJbSuXOt3NbKUpEGSjzczWiMkEmQQ8cHEDKKd0wzDmfmmq2QDlh+N5JgpuLRRmxveke4R0r5H+HEqwr2Y/73ljdRN9BvtcMvDTG8EfsR90L/sNNYk/5RynmiPm2opUBGyleiFAFUNV1XzV5B6MmgkC/XlaEJ8O7Z+S/Hn9RZjQ75hXeC5zVfdndJagLHYq7tEJ2FMoTlQYrfaw7vNyb4sSDOjWYikDwdVfB5JsKHxWHP59JvV8JWTc+TzIutXjhYB7Ko4xmADWiXX4ezfIyQpbS5bOT1fMHy/bppZPvQ6vKIOKqVPxQVLLnQtojGYP4W4tYSAdfObfqLJowmeIJEPpg97AQun742VANgTlFWJOEFMYQiYdbjLqTw7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YtfbYvi39d4mPqQ6W3hz8k1xLY1l7XwPNQRWXII7/1U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ydzC8pMwy7VFwBRo3BUjoLac5ZQHAbOXAmFlpZH5hCAi6KMlaorUBFmLjXa1lv/lemIzUfqWpTAHNeduv1RvJPP1uMRwGhdkPaO5psD4l4Jrws24WZoPp8fnhOs6A04cGzjamkHXSbkW0v5vq3qN2AQzxp4rbcUYSIw1W7ZeYkMh7QtE3WlkzLkJW0HZbvLQ4AX+sivl5Wy/rtibmZgqNFrBlHMrYyigfkVPToN+qYVvYgcaq+qJBMxRs2FTH4nXB5PJC8yg6xEAqXWMPebRrJ0JFj1/OGirvOTvLYCcT6bKtEuNykJWyMZTjJhOwU9ZPpK8Voca7a+//n8VwA0kB3iSZ0VnDArvZ8jnFef0rhq/5eCx72wo2oWPVNmxyhpFVwiRoJhRx1xRj/WGQXW3ZSOLXZCJUiar", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Ytx0n/YYDaz7uTbsx/fZgq0Ppkud68k3N0VC6qdBmKo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XZsfRP5HB9yJb85wiMzb0suI4b6sOEtDdI81Cmm6rHFmHoYRDgQVIcNvecBLrxaZp2pFTPqweL2XXSfGBJnfkLzG5cSSEy6fVtCW4TD/yRX262yQkD53W4NTfdyU6OsnA9x+9KMFypMBkSddN/wzEk70+Ag16dRU5Bjr85DckTfotvA9AogiZRyKJkpVDV15CwUmeroKCKb2OT2uGz2t5sXXHl4gkxT2BDC/Bp3+35LBu5OPa9JDNNFFANmLSQB6pH6HksYGl5kmA6IxH9dz9Ijen87etEMxO2Z3N07kbweZ/D/G2eMWVzJgFTSGtkUbZEsDJSJL7J4g4KqzF3KCrFfgXYQ1hcrQWdS6H7rQYKr9e6X1XN1kb0cUq6TsYARPUmSddJBLhaRRVwBKioNco9sX5AJyTN2w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YubE5RdnE9X4l4LWvYuHeF8C30YFluggRHhiM/4aFLE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GALEhrecMD4ASIGVLB0YYaV/zgPJJO8RrfExnjjK31r/Z2F2+S3/woMIPjws3iGB7UX7uNyqmOI9iZVIcfJJS9cGCH8pbZV7X3C7WdZ/lKIjitwnCy9nzpVZx8HOjgEnjskTVl37UVgwy2rPLGlMT3sAmo6GzZVKV47EMD1Z83vYf+pac/x1uvYW7Kpe3FnIqmcBQv/yk4cOAY016jNqOAOgaLqenYpHn8NndPTYkMaYNQY/2dSDATL8g7BmvlOvQNLWPPyvbc7i67GsB2TgFhOOHon7aNVm8JTvqoLIdiJTmz322EeoKs52aMRigyOqHg/h6j0KOmoBN0c5E76WWKpPtcX0Xz/LyrWANA78eQJh8bpWQyALukcLrZYEzNySHvLKfeH7zSJLBwyP0rZFQOlQ3BhI7NGN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YvWfENUOW7TDVPISYXJcvrd/c7psWihtV9qrC7t4Mgk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "G0V2fQEH3TumFY0UUrcjodz7TUEQvn/C2IptAvAXoGCKxDipb1KvR8ygjEKozmwOXHzluMxesC7KHFlZMf90/YpSxGYlcFs/Pe14QSKcDGXsmBswucuej2Y8iHGB/8nJewsDpflIVyk5k5WGqJzoOci+y19RenDR5DQsSORYwxUfvJ20uHtdqDqrDZm6RaNi134SOlReBt26xAd05DOhKSjFwPtE4wft2QaeddEyDZ6beCdwOkaYhTwi9Aj9ncBlIDrRoIwNXNVZGdcJz9ChnPONK/gfzwtLAbKh/I1dsWSq56GL0DimyejCOpUY6RzCNK035wfVrZYEVLUKzcdZiXMQSIEpeG39tkKf53dtnzZ3nreT+cBBiOsEK7UlHTynVTyujOEpFHmWjbk6z+wZAGcaAbPg+eoC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YvoC2sIrMTAGfiXwcB2a7C5MFYLd+3yEQq3PUGkuc70", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cMwwn5UAyfVU/ivkn7GYiTUaDjGWuVFat+T1BNsN32H4Li/bodeoz7kk9MAvUg1qYVi6cjV/X3i61IOBBp24os+h84klu+ImirtzcLSRxcansbw2j2/g0R9Lhfm9ROv1glkjE3++BdrGL9DmvYgxIcvQc3UPUsvG3VbFeROIFx90rRuij/sbPj5nB+h59xfyp2Aloq6UxEBpXaSzqhjlnldNiyvVrxrPe9iy6mnn3XcYa77l3laLGC80/J2KF72jG8IOcihF7m8xtu/r4u/5Uz2x2hphciSMrbfstWsGKRdZ3/RNfykL+hzujGIJHJAamOxDAdbUc+d9WDRCu6Itw4xwAGK3LyWgGXTU7CJuU6KZikBjXRa2rk5p35WddVaTO4V/96BB8qJ45vX93f46vl7rbpdttt2U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YwxmG9xqdXrYQN0xMvNzdTkaGf8xYk3hro0OIOl/+4Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "908CIllGd7wG/I+/giGYrCCnaAom5hxfYVIRkXtTn5XpNVEFjB4BZctxoGilWfXVkiSgOYwi8edcJmlGQUE1Y7eXCOws/xAinQyhOVUn7WP+Ksbi/A+jesz9sXRMaRpueXf5EuZG2TSEQFPNc88DOLMcC2/0bjnErgEniV0BtjZeQ3i0dJ6pDfWBNR4sWN5ExI3hNMPwzd6uXML7p8IwGAFCccd34p/wdw+nuc7J5Uexj4F984npZ0d/yMCY+2TJIQxE3lZxC8ISEK4ya1UOwsCACT27GvMZITOYh6xbB2PCUpV1z8TGSXxL/nDLOYYntClua3Y/orXGdFZvw364KSsXiVv7YxaFTpq8RiJJOSMhcZFsvPL4HVOzDni3wudmnAyhBhn6jw3Em4BH2+zsl3dt2F7XLGg/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YxwTbzV51jipyicudHNdfOg80lgnv+t22maUDjj7F4o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Tu1P4Gha21Wx37063lFCKvhYnTn8dhz5XDOurlc6HyQOu5iCgXQm9Fe9T63drSGtFhLDlkHfbQvFGAAJFuURUAezodLbkHAleuRjydvDiwx8OGI5aaNaVhH6vwiWaXFFY2kiUc9ceqMe9Z9v9sypJr5RNCFTjJuDy34HdlzdYLYbTff/FUnpYHJfsQxIpQLyZlLPvJ0A9SzThIP89swLePWfZoyXuPdTPQk4xbfli+ffl0xi3IJ3Gam5Q34SNYQLiSg4cyJz9vfst/Gu9NOAfi7/agwLcEo/96OygdUyyG1kTStkY5ztmXr+7auKHZXirDytFSrfp4W838WFPLpA0NFXbDqpKSxtQ9s+iT6K3/3CYLyEzJyQeyNO8zG8LEN4Z+OXrVR5U7HGBHLowsVHETIapdLY7Zz0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "YzaibkOM1Avy+fZL+pAz+La5/brkckXOVJzxG8MCXJ8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ys74I9432qwFZ7+e9EnMNdC6kjonFuh8rGMdBE1BiaP2p9Jh+4VFrg9Tvu+3q0JukFulFjpgmm0/CB1gr7RaiOzMxmF93fvfEDJmB2iBNfxQ2ZNjL8IkUn5ATbMvS7VI3YmPolijPz1hkD1WLDN5izxhViwiybUSf3PimFrNhtGW3Hlrm/ILTRSEntxD9M4OdzvxIHhyytCGq6zz3yibhwgTqvfaAED+2jBf4bidL7m29GqMGKYnFZWwB/+96O7eAeSwJyUXAADWOCuv46hrwRDH1CpWqETb+lvXnpb10p7Pj0xVjxJSuG1B78v6GjybRkpWzGOIGA/AhZEUOxBB2npfUN2nG0Cl+ljx+EULVnTg5y2NeeIQdvA0Zdl03OaG9VokV0RJvmMzzFUVsWgU0p+mTOT6IMkX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z+BksKrOfjD3WoRd5eWasvUAO7oW8a0XtZOni/miXNk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5rokDg59cF43MmpDYFiNZG2T8yqxFA7t9A1SvYAEFCFTTpcWjIK4BvPVhBDauYX+ZL8QL3GjCjt4FlLIG03jBbHScOC0KjlnNLoEhUiKq7pD6DfsQXqIC6Tsh+syRUHJIS1S+v1M8yU4srldGiW9fPUdJt6RNLPZXFhoYrHWfBaTwpKO8ET+31jFie2hbTy4Kuf0NcjgV5a1j+83oTJ5pSuKXU0nDEfqOvLalNA0Ca86W/u5tVzwRChLTahOiCR0bhlwnVYsy4xXqZUhuPgc0cEJiv8d1rOTeLlqq1MNoAgoOwo/VFK3JLY+NmzCHKHChkNIcRpw7PTGMfCMkxjSXxtlYK66NqFRkPivg5pwQPlRRRmzPic9DvunmxykA+I7RVWWFWy6iOtWdijScnLoSKpwQQb+yq0M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z+MW3rLh88BZ6WOIQMkF/fdxtosSGoC6nElAntDzDTY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7KEajRZZI+v2GmgHlQQIgew77EhtyxKskZfSGy7X/LoBRajLoeGXmwDuw2CRd1Vnn3AXv7sH8y+Y4bjc8wdtsvpwb5p5mDsQ59rWkeVbWBCjzj/b/9hSQJcWIWI+uzw+rbXIzawB0OAGaHXCbf/2x659Xsc0c3/LnSgpHQOH/xDSdnVjuIlZpRYb67PhPfhILXYLIkkTNqXsZ21UA6FNjyp/BpOuZ7r+tEt4DSPqYKjF0jyRw9Cus2LajuTl//qk+9SRALXyoIoQLs8I5eG36Aamg+tZf7RQI8ZEqSVfkN/r2+rax46otDiZZ9FFFaTL5Aec+jzZy3MmhD6TWaf1ByHERwd2gf7cA5kgF2QA7mvKbL6CIylTmhVWx2TW24JRKUE286DeFZ3OmqHpSX3wjDZWkbrtodRB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z0tOW4qtnaXzUCvbQxDBnqNWPF0O6N0ObbahhP/vfSs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w47pj6y5ksE9awVIzcK9uHjxLGmimM/PBgbPFIJquZavB7/SZyn+O70oSfB5jopxFQkDm/4Epds3LD6AmDgxJAEIs/ESCoWmrAT3z0ZKxGmjmlGRehFnD4Vld4oFn9JachgrAtQ/94E0JtS7ytMRWR/hgGLlWaO+z9LNJt1BD6U0CXSeAC+Xvl38OeHeXaOXIgM/i2OQ2EZ/K42GTfvE/70phbpA9SDrT2GWFnbVZ89GJSIbdCvZJsYmEwhjlJLYwCtxjqdNyNaFnau6poJvmTThOlOtVgTQV2gI/yQRk+WQ9+qetNhf9qZu9hYkH69G6K8/3NUG8GVGiXYx+Q+CWfI7CLIWE81qkLEqnKYTUtnXBodCarYqj2tgN4fskOLd+rKJ+JGkORzcaskC05hoogyt0RMOjiHd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z1Db80HsXrobmNd0lFGK2MVfSXpGqB4veZsZlGG8RRk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Km29REpaABTdsUANqtKiQpUkc60Wz4+hEZ1G+uCR+ipyIjWIpaEh0mr+LiyzT/lGQG6XBgGjFbtP2b/KLQPY17uVXcBdhBlsHkqmOHQBBte+47Pvzo/Z2F/ObPld+4ErKsyZ7M9oAlcOezYe/JwLfPS8bsWiJsiNa3nfPt57n/KIi4X3Ktjp33CIiNSTjTcdxjcAqWUfTXs9w5E4ZdEZxuX6Zlm0divFume1cClOTSnpiCBUIraAKiRckeSm9vz1sU0wy8CkIJMjt9d1AKU5EbTFwKKc42jIAl97TfO9ZqYTTvZi7LydJb7UeL0EpvAeG09Vk2EDAvDhWP/N2trHpsjeLxieULOcXpdYzc+hW+AFsljOhMBfI66QuZO1o8rDAPxLC0zr+bmv4IM4g/tUQwnesbY9VMBy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z3CmgCD8ZyCEHw9l3F9TMkYDzxKVfAi7ItUacwzYesU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/vbdE63pluJnd+fD/RD54F19QaqxwCK78k46QeCerRnxcAzJEQyqWKS0wzru9ND7IZftv3rrVvmpIhnVDFQA5hGfIMmV1xtv+xW5OYo0YZ3JWhchQx+SQ8gBfqT2cRj1C/b+zjMayZtQcGU+2K8wiCfk19Dvf2dCfuQIF36TkFwiWDkOAKGm/S+63sq1aoHSR04iCHlPMBD+MY+zrHwZoHEgnGrsvRu7e1H/iOkxh5gKMheSy9L23T9beVIB+eNx2MrF64HM+IsbzNqGA8SWQWPN9MIc4TnjakhCS4wpeYeKTT+LVwuXIvGHvMQkKa6Ehn5j3R+7/YzjwLMBVNYEYkvOXv/vZEGcu3WquMVK65MAbfywRaf/hDRS4juPmKukiIWID7mbFzLPbwn87W6/MF8CCMTsmbGj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z3j1DVodZJPTECFADy8I8P8C6jCfl0xIwoGZmbbzQ0o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pQt9W8xIylDRrJkPmjKDkZIkaLpQyt+Ks5X5MMJBjMaRbAZTVDjH0F4/B4Tt7gznQwzYVc+0ebxnsZffOOR/sslMwzZrGRzmmZxR7R67mrW6HbgEtRcSNkvKqXbygzSwjezjiX0fBfvo1qEFNcN7dZnBTLazAYWpqUj1wGWbtiwt9jU2Zk/0tj/lAqinFxmrKP67REPufxKw7bFCBLVn4AaBwC+oHHq5E8oEbkeD2lbecYESQTIPqiDo2ygR31sOKwowV/FUbThBib0RrfwGa6boYIym7jRVH8xVtT0djnYYVBlyPABpspn3nx67uelDkDyff7XRrebPNuCa0AxqnaUE6X/RKTW0L0OlLxebbOExgqoiygVV9VVEOgQlyNbrI2GelL+fzkyI+XFBXo4AT6apKGrf6p6x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z6aYPiTEP+wqZ1dqoUnvAO/XushmNfWWWWFejsQL4pU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x8fZXfkibyVD/Oxtf+F6C7+3AFo63j/0pSVDY1UjgBPYunuQKBAKKIIyulhF1MQVyxXH2AHerWyaYnm0edK0GFWiVZHMftTX/TU9OAp0gzvCR/aM/pprQTu436Zcv2jDnn2tCFSTBeVeJ2slCFNxqq9fFs0Pk1ey/0lVjzJvoisbPSPjStuok31JJvFN2zTqCIpVfbn/ilayShrt46jLkKWcWM58sDo2nrug475CoR3I7lSqzEPKBLqIFLFEM+vH/+lfYi+zqSdZPD1HhZ/ODtvAMHTf4FZRLQ5hr6ljQY5xe21m8BdTlDwPbjwmm2k6gSiB4c7i2dq6i6YAvkDh3PLx+hD5PzUueeqIztK39v9JdzbtxF3jxBka2m1ik5RdLqcbq8iVBDdQ8L9AWbjYmnENU+2E4H5g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z7V4jkeYu6U2R95r1X8QyMD+nAB6X7GkjRZEbx4C09c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Cn6imzeOta2ZQyXbwCt4kFiocEszrio/JG7aKRBDtxt1eABfDGWvE9IKotNg8bTgBAJBn/Ioi82Obh8zxbap2Hm7TbFU6vI2ImnVyxJHf041q5xJjzO3Hr1AZg5x8nk3ZSeBCGz+pwji+Keth6AAsV61DWixr4NXmGAKJ0uvYaRY6CQrLsOAJ0jniy8wEHJ4xir6a/Iw5GutElyKAo57Tos08iEtFRcygYq4lnsXEq93ofq36ZqZYc8howYZTP9a/NZH+29OcjjSOqxkOoJdlpyM6XG9R/cVvNe8rq5Nf55o5ikDILE2LZBJNLoOH9Rco1YphQ955dJMzX8K6Lj3g0InokuUWKsMx1N+nWscrD3bk9zlBC27+cWlj1Jz8CwwICfnSbbC+NRDvv9MdB44x/V947wpOZYU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z8VoJXTjPCIgLnA/e20R5Y0i+rrGZkVodRd8foxNe+8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V+i7LnhlKWYaRxhjiAI4S/jitiX52ax3bRAdj6+J6WrxYhVYpu3WHwJO9Lw0F/fKrauXwrHoHCF1qnpb927rCvEKUie029vtnppdnl1fAy59sYw1AJ/EzZHyOncH7ey4Nbep6s+k/9QHMOYvS/TbEdF6jxyULDXaqLucr2dR6oySn+f52VxJXbXMo5vT/0+jWbVRm72cXm6NC+sbmLMcSChyxoUHLGJqMcDJGidAxk+J2jVffx5X53mJX1zM4beUYcdVvUpxQJDzUNb5xmVD/JXurJpZJ/AHYhFo7O5HZn52xBQtlsxxc799lw4tMDGvCD+OKS47+2WmCuSZDvoEU0OyX/ajv83GlszXrwvpq5tc+6smptFgM+ZcAFIPNuzeO6frNEp1bHY3Vbf0PMwBB/3Km9w7NowI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z8k2ClzR7xwFDonLDPMj1Dp/XP834NjmMdg3xeH1OcE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4o/5lAuZh5IzMhMsWnCaqruOJjdQjobNZWU30eb4undhgjNjlhiS0zx3s4GWsS+8nONsaSP4YN8xxBkQULUDSxp+DehphMb78QCqlnG7gVokKvhfuUqy0Q5V8DtMaWcPpB+ri8MikpG9ccdNKqMafGTr7ki+Wytr45YATsLf099e+gH+QOjlIOJXz4MjzX/Hva4MqSpjSMJDR9+WW1QQP9P6eOkUq/p426J1hgKmxa3AaDr157wBYMJHJ/vZydXq4aymNg61RXzLTm5wPPI0g7YGtyV4qd3Gn0b9E7pP7EiBSJrInCkM7sncNg+7MKlMoCqPjMD8aJUS1d1h3DwNF+IxRZwciV/pQnPIGvmRggo6O4LYErCDalxhmEwdNXbh/mTt7BFIwYujTfN5OSSJ1Abu9ZZhkmSp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z9+zAKQGIvCKcZShaaLbQoKUQRo6M1KqvPihGJ5L87o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iWSWFNpmgcByjZodWi4M6QABFBX7cdp425t990+sMdskuQ4bYxcJoVR3mTOQsZ4/U4ckO8Etrx76GWYYYc7cCkbaHvU8ak0c8sl4Dsd0cDuMNlX0CBv22zX2YEBLiuOwbtWt/r2FWxaF05qspIbJL3h5e/OUfeD+9kxhMsBJkef/vAdrk2PI1+ORfGm+qfM78T3F1Pp2r5WU1YFqUnKo4N6dagLvOvizelTtCgrAdpk0K6oCz+KlGqDvDMIQQu1h4BIOM2I1CSM1vTXZ7ZsjvRu7rFgxpHiayPCCXOGROdL2ySzimhr+e2kb+rEUdr/653b/lrosHRcw+/alDND5GP6aGrEc7wH1VofquhP/q9DZgYcgZjb8A1/p9fTyxzE0mfK+Mulz0SnR+uZs0667Zw+jGg3sXqjP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Z92XBpkSTggAWHiw+T9hjNGxH36SMX4tUdBQkY7ZVXE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j6+5Bz/XCtUTFA6Bb8SP6HWonj65P5JIejooYKuyP+VpQUdmsUd/FPo3SEEIzl+hR2M+klfLk3teV+YFB5fxqHS+ZbY128prWCb6MEmFIpT6KZHUeEPTO85XzB7HiNbL5HavBeaWA6uPr47E9nYT3iMCcKZ1S8XLOF/iDqyqm5oCzHNw2i/g5ruQHtwTX5aAY7bbOKoPiUB9gEsEQ7Epl17xEHbc1eMc1hfITObJuVbY42ghcOCfCBNGGgsDiVVs3GV8pYwTATT0aUh5Sh2fbKXAj1a4C2mJoiE+2v7LMV/LoFDKpc6wzcFHWA08P/A/hz/JWkqWan3vNlszo+1Wlhz7mpGZV6uoZ0fcc5qFriRMJuDz0kLNxXeZ67+5Mff8UxVKLsf0tB2dRqoXMAjYwIoWGfejgeuO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZA4lGh1RSVSs13k7QxTVo7rrDL6UDYPv/4ZoE1h0NQI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RX8M+cYx7RB7OxOSU/19MiDGfl+UZW1uLJBd3i1V34ns3mGQLsZivXO89jM1A2K1i0aDhKmch6lE+O5jGlD8HQuBsdKmaYy7Vo+crkw+IG3H42EUSE/Wlo269R1tzc2UsPt/s+cWd8zWMTExdQKtLFX6/oHQKQaaGyvqx44vZWZLIAv6AVmFpF5DmaHUjQ1PEHPv9uKTUG2Z52pZVT8KEMcrVAJx0NEg5gtbkpQ00IWVHJBICC/UgULIytGpcvGNq8G6yZXW7jYNhYyv4wqKPn+wrIap6JJBQYkmIfPF7j7Vyi15vPxB/t94892tf/QiJv797K3S/MDZ6QcwuaC961mhDuBMicKhie28U9Hf58Oblv8QYEvIJPtLFpmwunB5bXx0j96yaOWI1+S4esWSlwRW//0jLtGP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZAY5VMmxXH4z/+5JngB/K72umgPCAV2nRTyqKCT33Uw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "X6HLttgeLu0fOynoJ1V1kYwQZIVjdQ0t+dFb8a4X7V4B1KlHdy+4DWkgZlWjy2R0hsXzea1t1YkJixOoRXMKr9EasXfvbXi1VdtM5vvEY1exXIbxBl1ts0Qvjl6VZHll0GbDpr+kXM9QC3zmA4oKyBUT/fveakuISudiJyk7k6BCLXAocfNMFLiOCZGxAO/DdfJ/X2hcFu1R9KJBFm/UWlqk9vdo/mkRxSSCYDtO5fx6APX9cq23mT2hsFa0oeMo7+3JqCG4/Vx8hWd7onWwN5Rh+jknHdS+WWaFBZCJfeK9oJdc7Om1nHY6b+g7HH2lwZGcaSD/KYj5wtui98ufxoZvJ3RhaWfcpVQ3SGfGeL/ErinfVFyD30xb7XwWyL0zSkFEu6XPb78k27jQoHMWtacIhVlPT5lC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZC3jiSnqmS5S2FW/SLwsl936DnbuoEu9xhRwl8eC9j0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rBuzmqXMTu2Kcb4WzUXInf+K7/VtBWuoOt69f97uapZe1i/l0Dd3Ri33uNiRm3BPWSI0kXgMP62YxioGIEr1ByQuT4pQqOT3rYVLxC8QOA9oXurJKUSVKwuXCMjLoT3e6MYPL0H+x0DHZZbmvQOLKqpQs7UsZn/GYYDZ5+Fs46n+lCblp6sD2W2uw4c1cVWW/F6ikWhyDOs1LT0TsctWjOrXaoKu2di3tdmYaIaa43yMeN41KrrUvfLEao6J2ExthLhBctaNVfhK86Xl0tquOcRFj2IjwzatWa+TeYlnUhdPWwlXVhC7v5pcag24neVYrLwBjPAXACuVYP1jSjrkCvjLIFzbwvmB5wG6TlELtdh7uBNm86i4okQu/JH5/7pKDAVGnbkvreawhxpg9v6Z2cDc+yPAU+C5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZCo7rmHzMvsR8Asiaqid8qtiGAIPpZBkyYBUPw8phRM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ax9f9BocHzDFzAucFxmpvP5MegXm/Hx7ADRr574ldMTl3uDhZMeIt5Eyy0/DkVa32/ZKYQdDX/11MmIUcTUrNMJMYZdA5wSzEzrPvCEd6yRbiYoDJ94MkJMgm40YSqTHauPHyT2B/IvhuV2ZhivTSd1/TWjh8bfm6jC3IoZYv0mGL/RiKmhXorDWJY5JXDmlDuSHgm+AoNI7sBYoHN56le/+BWucglqBu6dPyqwOpFdEEQCkZOMPnlQOLdgPFpAmMShfkPt2aw2X50GHXSsoY7wRxN4NCwQLcik4kS2Mvv/jrBnf/Y8yOPtwFFbUfAX3EICJ0e04BZvIMwsLgfTbSOaiaJJLnGXjwllFfwdw6WwA/sqeZ8ts2ivnPH7cJIJCaKPcozIKROCa6s0mdqgGZ/OSgv3infTd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZEDahVMsv9BjlEllWwV1tFVcVqZ1kdUP7kXlSifhHNM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mGG4dFriBEoDK4Dv5HeiaSu5IfCgefeCxciGxumtQgRwCSFo7Tv1v9C3/bi3lHqY211+B/jKcmtVZ6/FEwwhu4OrKKizVutU6gtqMLDKx0rESnfTEBoF7x0gAH+MPY0sEqFDkljtrao/T4xQ4LhpaOeUVhSpcvl6MlobkENAmCgy2jiIfrux/oqDkwSDC37zVq6IjHHKjHiCd1Zf1RgcybLE7bTryepmP7k7MlEC+TojENsPzxu2XF9UlJAUeQiUb05UeSmOBzQ5A3ZrPx/SdNZPWOJjcESiVqsGGhaz6mEUq6uL/blqmmEK91bC2MShDmvESlrNJ0ClDiFRBb0dBqg4cS/GY5MOmXEwEWHHRzVn5dVbMffNqlYHSTNrWH6C40R5dDcNVRY9TmPCgqsNntEURkt7KCIG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZF6m8jyS2LHk6wS/QI9A4D5f9E0vTpACtyfbsX//M4w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "g4kUldo01TZdNDVa3exQZakJAYkF7grAT9ZNWUgYmegC9bWP5yZ4bv1ARcPdfT7KObLDQMw7cEF5hTaCltoFlBG0onIi9pksNX8ezYZKMAMcKc9m0TY896Gzx1WSGg4gegPnuFSt9WAeRnr9PyGiW92s0wvwb228CbmSx75Awdx30CoPsnKlk+IxxILZ0WO3b4gxRqg2xL4VDe/zQl+/9/dx8BZ2XyQK8Ue5VjPQsJbRXB2+Xd18PNDDALM367lAy2dQ64DJ77yk9MT3bv5XbC3uWkgos8eXv8guxlCN+aGCc6/ZdIJdnVvsJHsoFhqkQzWNL1WhxhEWA3+kV2pJKHk+LixHzLtVlzKYuxHiWSE0ZgIAbI0/4HvcA7GN7qROdArS+lTQvd91AbzCDF/ekcSmGubOFC4X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZFDT3CxmDfw6q/fBGfDi1Jh0PKMPqp3tQVyYlWo1JAI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xxCC1fn3QTYmfXIxLsQ8P1/WwPF3aETSHYs3lI9Wyk5twwWBwSJplRuPc1BmZKHpPjKYbYzxOfmBoWMK4ZfhWir4xZIrJQAbDoq0aWovLxSvTY2C/xh2MKsGNAwOfmpWRQK1agkr4ngNpiGqpjW7x2Ts8yasNX2nZ7CjYksVqlnWZ9ZMCmI8uEYo7MlxpY9VG9Vftjw51yYoADRpHp5G5oV5vha80UTHS3/OxsKFEaSSlB6i5nqms0vtzbe7n6vrB3rlBvTYSzM+mCyvpJ4jM0XAwS3biOD6p2ZDyZ36nzRb7/Mf2eQglAMBMs2zDMPE5Yaj1RDFXOo74BtZGeZdqZYbZiQl+lcIIJsJQoTt7O48QRBhOw/Q4qjkOsMcG69+TsVLScRZIdYZubViM7EYO/Ni+Cqsrjpu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZHkMHGBiUwYqDD5/D9D3Nd7DVTt9uYoKtd9b2Uobgy8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3E5HJBbH53fDilQuNoKxUuRrxsqdtHwcw9lg0K5Hx0txvx3Nqn3mNqHcqNp9pi1+n70aSmFz8go6anmuWQFQrolnV4r9+e5zc4usJwWAMxhhDJvP1DsS20TZmby2SXpaMluu9sQi4SeXFXyHwxJ/1Xw+AqKUpYOAyScQM7e9vtWSPOhxhz3ANPUl5LNhMwOalSSxJylV81iV/MVNkbPDQnrhUB9PCdZNLxyEycRgvCC321GA/aa0kW0VkbNoIceIJNG5lPUbt1cHqwbLnCtWRNCx+KaFkARQyCLWDcZiJd+GtoeKJIAUiLtRepzUxc8s9OeoU/prHcV8h7T83GNTkXrEFqmRznPiDu6OTeeaJRgzF/zTrVeakABNrcVGuvg1QG23rt8HshqN0Uu8kbgrI7AqlsU++Bnd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZHyXS42SEM1Qb7hYCId+PUuoT8OaLeeK1PP9aG8z6jk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FN+niJkCYBz/H0u+9a7Ja2dPM6sHUkWij86rYKNbKqryoVGG9XtEtFPwBnCwXgA/5d56HUHvwqHSaun5p6B6o/Y8olfJ+MyLQRkZ45j/YYfSlUCKn+B9K67CmCt0F1csrHkAzhUFnmDzNwyvHtDdvXCMCpcCPbIWI3cphvBDN5PzsYkzLJBUL3WCJ685KC58oGfHyQW8zG+IuIpJqEydNYNewG2bepKnLMXSeZOo7tMfVSw9f/vYi1jvZvGK6ik8gJJgDR10GqLi1l+LCFJK4R2HvROuTRdU4JGzCfKJJbCLro/kProMg64afhDboZpa7GB+dAxCA9bfIUxPVsCO+s0dAy2DHKaUGsUfml455oW+2s9H+YqSunuy7ckYDf6IPzseaukLeA20idNLWiF64p3tMh9nTiGd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZIaG3cGFxYNzwtiE8yhfHTOH0liaj7GcY+LbhIuwJPw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9n2AG530t22CvA7zr8QaXZq1Arg/+vkiiHU1pIcteib4Rz4RYdxHeuig5FPKkmbfTbVNkNkyCCSDZVlVPgZvdgeyDKQIVLRSPrQe5ph154lid2v8FzbPUJbndGNBY2w3f16X8Ygs/wgF/LDn9lK7CvOY6S3knTK/BcbQb7y2OL5E420ewFwM9IC21rXJTUKM6w25PPN4BGLyCYjRbqs4so6cDYpyxrx4mM1hUZHW4M27yNuzf8r1ONaNMHiigQQPBi/GLyStDMD7gxWzskFAA5d5z6HXbl4/gDVp8Ywr8yRiNgnZzKFiIAiZt+nJ9dovHH4kpc2xUGHXuyIbzptE1Sq+sKp6MyvvdmW976S7joU0xhQIgaDmZJsQrSFTh39NGfSoDzBKRvtrvzgK3dlRLv7bA/JPY45A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZN8aKsC84q1D3CWbkMnEtv/WtrCdtnkXKD4ft2xJdaU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q8bTcg0hZHVslvtIv9TCy94lViLuV2kurbPwYiNAAXdUC7uja+7wFR6+/jVJuDnyjEfLw+eZqbF5WiHIe8pTtgZAf27PnMQ7K/xcn0sAtoUt2UTib+czHnv02dSkXS1j/VBGWhXLtLXUxFNbGpo3r7yOwAyd1ijf5MXjQh09b2Bz5Vn+IadwNNKarp3m1opCuMSzEqm8WRlno/AFcAIEIktjooIi4BFjd5aSEjcgNB3J6b6KvYzMA4txGKQHDWHjLctrWbdmqzvEM7SHygx1V3Of6X+cbHEWIpN2QpszUVDpiW2DApe3M300kzbDaY9hPi7y5ogcegukt7TIYuwT+++KhUGnt7b5AMqRSN7TIZD6x3M/DaX3+Y1NT+ftBl+DeOBlFi/x19nPhJscYrGdnHF1ja+EaSPT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZNCuYoAT8B4c0fQHSzqEJaWjtqMX8KureKbCFel9664", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CmawYrCf4WZ2J0+tNziymdcsYtn9mmV+gLa98gnVoUVe1lRb173hjcRZSXGwY62ZcZd2sQNXlDelIuRluEGf2DB5fSwBYRyAEJyZ4iGKvy40GEVqMgKE6M6kH7VaFi73XOOwZv1UC5zy+9mpKucnwpI/DEd8HRwJMO7pd85q0ctd/OhKPR3YikuyUxUSWxxBePztOeVaBlT5PMHOq8OSjyvNwf7yqYFP3QcUCuwGF7qp1XePTlEmRoe76GgI3upGUoSdTti1ibO+upfUlfbsvLEed53jgSlM72oZDVXcnhbq9mlxz9A/fi5inXxBFx7Sf2e/S7ojAE3AB5rnvxHG16NBHAx53pDLAeGrZzsZi7BlFPAL5WS/tjSTZYKdXIj8kho4ONPyvLYXgQNLgcNZ1jFOSUXHjTnL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZOJLjWt/JBPIYxvdiQEld+CdBYRFw4xuImD9GFu0HcQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9y5JLuHUE4tRBinvASg3AHfRT0AjitAVF+I29H0buI8ku4+DgU6CDq3bsURoLw3qmQL0rPU2NgR2ux4uY5+WWpWlz+lZ+tIhmQhvJKjFwq3MD0HuN/njmAbNpR1aZ4ECNZlNoGJ/QV3SVXrw55/guWJsciJGle2r+j/Cin5cNLD8qqdx0Ae/FnhnWZXF/tBH7foBFspdsrLb6iQ8F6jJ/TVZd+RNPXISUJ5/xI/kkDNIb4LhTcOaOsggsWiDPxk+7ZLge7CqOCqgRSVJOo8/pUy248+qxW7jRGqkBgTXCXJuwjRh6ngZqqbLA9rZe/JIU2A+9cSxGwY5eDdqB/Bk6wYrgGVOnIpQabBlRGJ/I7Cvl0zlc7oQC9dHzU7zBLmJ1RWSrtgy/zXXWBVOrlkK05q1pMKXvYcu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZR+DjGF5lb2yyGsYNMOcFm7Q0RjbUCpFvfcYCgjjrR0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7unaAUpu7phqWTStLrz3ulUf5gsv7ghn22ihwuLukJRViWr7P1qEuh/9c5900w5d81kXooV2yxvZi7icE75FKGTaltmQG//a2JyQZctWvGWgQVFKjEI+dxPYCMh9UPw5QmubvpHUDj6ie8yIcVkxsVpwU94xQN+jrBqvRWB9CilvXEk0HmEtYXq0MzhgrBkvhnzywcRytr+43I50TYgUTqWZkVQhFjvOBGswNXtNUop3Q03/0zSAQ8bjdPJPKxsarmyLOXYEJuNwUNofZXcEN8hGWrQ5rhfOyGOpuxYgjy3BgeH4dVr2NoMTLLGIXHsZY4fanFBakUGHceYMGQRPj/5JYZyQC2oDxTUeH4oTa/dLupMqatV8AP2LbXkvDFpbXsFUH9qN5KSWXX+YlTJRyIKl8T+SvM1M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZSLm063FDzwIrj2XG32omy3fM6QJUUpzFlNxyh3ghaY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OioeHdq5r5dGOmUL8z8qB7z5XWJ20D/qst/9FezewXidY6pb+JuNtCM5WUFBs1J+YqSPAUqJkzB2hL3hhQjqAtjJTwwDYvAqtmL4vwtX4+1eG2r4PSafZNUiMIcqSzF0hMsOn3HpzzU6PJOp1UPFcrjV0xB02+PWf17NwOdcerz72XgnrsA7f6CGM6c7TtsvgxB60fAQcfoKP4uBUiPzoWWbb3AWSKmYZdZ+9/KisVY0b6JiGGbcWGXzKdqDRxHLGW4+HlZqgFxHstmzlTC/g4ekMp/zNRUvShbLG0caAj0BeguwWO29l+pw/cW7FxbfXed/XGnA7XSig06/957IYK+TzOdW026GMD67sw2w9O+IJ3Y7i3+BhESdPwqs6sSPHKgee93jkBU2zrrpha3Xvj5bFbgmZuE+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZT84S5uIx0IuDzWeOAJnpRmIDYMO/QDRct6I+QryxBc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tHalKipa/qa/oAaZxRbLPoYoeEVfOIzS+14TBvKO/POSJyMFcRKFlq6DX1vQMSyv0eDX0X6cUg+2e9j3Rm5BHaa9C86Kz+QMacSDreOHXa8QaPpiW9CAtc6yxbSiKKeYgqc9mWhZzOZjqVGbqn8B/kf7uPuY7057xldcxhAs7NpQjB33eUYvLGucq9pUTrturWUYGZkIIaDBuB/FrZ0VenEJc3vJe1dRKYrDOk4WN7RYJ9bvtGZSNZoZqOAt1S/8krDevweKsN9nYcv4xK5bEe1JCxItrG2BhaXk4RZnTKaJRGmE+wZXrCKPK8DfSAkbv/J46Q7rhvBLWwLBR2nXYMiMyx3zvuQGWQPB65Dr/9HavMiJruXHU0ZyvJbr+Rs0JH/DgY2inY6jhjZngmwoOFKNPx/kNITo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZUmQ/I+WZqV5pIkRLUGqpiG1ZGNMKtvMAZrsYsoTy0o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KXM11to8UOYFPl6OTn8uYBMAap0+zzdQP1j8FgwlHBxUK9JABHuJcYuh8A6FcnCnSzjOeq59fy8nx87I9baHsQMxy/sCr2XW91Gx8SMkmSB05fXZeniBZIjnLvkY4meCjApDDx5hGJUVapKdUOcl0ibz+TD91/Tfw5+fD89xRZIaFbZWRebKlHbdGJpbLe7Xz+L0sgnqMLCPk3sZ6dFsXQdrcRYNkzw/rIK7IjNKxHLJd6W9Y2MdD61MD9HEPBWijzHFZ6IBUqP8OrYpuJ+32fg1N2lwxf9jCpjn81fvfQnFwjCan8p2fA923glM910P8Lt1G0B6Jr7+pqUGKfmI0db8noJoR8MRKHp//pIqQiMvV1ytR+qZ8R6ebyveX10FNPD5HaQrxjS8xhMYTpDBWKOA7CqAmG97", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZXhRVfK0f8me9IDEOEpyAnWyLIeHuaBCH5FxqAq00BA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1U4WO9U8fXod+JMpovk5J79dbm1dS4sVZPNzMGFNkFZcdcbhkvYzE14EOkKpoTKhBMT6mq8rJdIbtuUMkHr43I5sNvb/S/b/1BDEYaZZ2xWGGvgV00Z8yd8P5F9ZH9hkqSoKdONmu79IOfRh5+nVDFFp6IUUlpSEzDUSOhNmOzliNLYh1/xjnbTZbnrtTHT1OmKT5mbf1J2tcWYypiR+eVhFbgRrOJg/pKl9MKaICu0Mfz+dxGTLhvzYBRB8ptWnEXLbsquzlHVrQ8XTltrCLMJMJ5xRsHI96Xu8XXXsGP9+TKb3z6rJhsI9sxGWXeiYIPmoHkV19cl6UMj4Ffu4f94Ny3duXDUuXvTFNsVtpZsWLHfBTQyO1Jigeyt3ZNA2N2LYctw+XY2kYTeKQAxJ8vZCj+LRLmjk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZYfleLdkQXMkv++gMf+XkeDIlH3ap/+pksGY8iQulro", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+TLeyFvYPvRPPbHU2boKrPb2cmxSUDDLqMoCLPF541tqYMAKXA2L0juYQJYYZJdBosPIHqcZ6PUhoWD5L2NQUxX+Dir5S27JD1FlOaQG2sCmtgAbS/qXQ03w9cnpXCF/jleYWAf2GE8np8kfK75JwKErukIwK3MZbCwSBEsnaWTjATRnpnyhe6n9LTPsBjwsB4uwNnDEPIzXc/ye6iYNAlbph1VZ8PvOe1fq8D5Qv2/oJPCXSTAn2n7xCpVJnEfAlY5D+lXifd+Gl2ATuj64N9KbUKnhp/Bg8RZYjOdBlLUEncH8Jq8dFx+TbTHdj0v2Uz/8oQEtSiQ5wAVndive9ZQ0VB9nsoE4v4Ug/LsAgJzZWHuKZ0kjlNSUbci0pvBQNZJlB7esS/EKLV36iigQ2CHwVOyJQBNQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZYxNBtfQY4qs2+GBip/w9XpwE9poi3fOJeJwJViXPjU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WTsOr0h9pb9iNBg816XnwMfhJHSiilIv/HCIFAwtOegouHfgsiZ5Tt2f27gLPkybFBlOkcNilFZi4NydS75yxjYuJ7Fpmx4gL5JvVnY5E2yUjukAnyqch+Cjj6Y5DRTYafIkcKqbMhMMyv7nn+yB//bzld30kSxGPpSYXY0wZX/uJTKPf2FWMT4+zCIelvEIrwH6YPeNjJV2ljD6KFHS+/i1CP6FxsZD+rfMCSXtSr79C0UgVS8CVFzVUjlLrtglPDhROz6yba17AWplh2UjfhbdAzpBYZD9cLfPTc+Pj7wwilkAgueCDaV7/A0cBYYeGtMTUK9U/YDuCC0LzGZb5HL8R1h2wu+9fW66hluRibj8hb/eb7R23SLdNNsVwvdgA/a2hbSFDRDm5kBO9Tsh9pbIedZgIj3V", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZYz9rUasEeA7TN34l0iTzcAf1C6hGdr5K4p247AchHc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IqlAIAfwfUo7p+Pnx/UqrwgJUHvp6awTc7430AGmFM7UXFJZojBqFAB8cwUl6sBAz9ca/xpfC7YLLzEg9nH6hVy2IHJMWOGaMGV+a/CFgG4idlNtMpgDH25tOf02CBS5GpyYOOyiA+7X4fdrKlR2ctQi+bmbc3ri9lnrtH354jKEzCvgCro3s5vopcMVGCVlmdrWZkR9lOTQaVZIVmQWxvz2ZlfEZb3lT24S+3Du+gKCjURsdB8WrzYPcNUM7BrF4JPK3d4VvlqpfCG96hSoLW2BIY8P9bcEixh9sCf6VlXlbAfuQ35pIvcXERecZi4CXeSKFlMLWFFfspe5DYI1jx+eNmtPkE0sEosOjPhGCBwGnvu+1XBoZZJhsfNmGWZGjXaNuOLMxWRUKEGmqX9AqbeRgE2Trrlb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZaizITUK3fy/1L2hGG8L9/mL7Kc30p5kyZpuMoijar8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DmzEE6PMiUqn9xMV+NKhgKmTswfOJXDa+tDmcH7jIplQc4wHSOToSB+vI2qyygppAKQmMUr3LUvalvI7L11L6gIm+jFgkFS3Zxdo+Rvv/h1uaPLIa2KyvSH3nxRt9n3Nm6tJJ/fFkRoDtLWSZMN4eJnZQ7F6i8iOds6rURBow4mJQlgsgy6YRoLvdZLx/psRd7GzXn7rlcX6spSEX6eG9AfIm17CXpPfJn3M7MTu9OlS9a5aRUl1mGl7tlZgMwlqpVe7TogVS0wuBLfK8z4hoWwrl94tEvz2HZ1CCGJgW8VQnls+he3bWqxrgLMD3FyGDXDFeYDD6JA6MjwOyii/O9iznSmbm+J31bJgoSEbXV8c72sTgOaL6fNQTkNeP/HcvjUDBJxXq1KFEKxHsCYtHbKcJoVn9VJ0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZaltT6XZcggak5YadcUKKg5od10pcBUag3hnlmDCILA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iKnY8xSeAS8XuBM8Hy0ozT/9qxsLpTzSVJDb7cJFzkvyf+9QL4krG85u5d6DwRYX5Ht9zYC7n1wVT0lHkICIxcteWkyv3FdvFy8yKrBPKJeGu+QIbFp7JLHYgTXAg5/Beprwd7Ya8y2Y8xtvt+adH4fj+lTNxk/X0nc4cI6iTX0npyfY/Ci5iCjIoPWtp/8e8KfVgxLd7CsXCtdpltzvg/OxbmLHUAkW5xz3Hv+ycGuLUP+wJ243lEQqOoai5Fo2lCuci05tBdr5r8HBYQc2f++WJN5KPGlZQbL8bVDqwRCz/NP+VFwxLNf/R662CYGVeWT2m64XWOvEgUpMgWZR+9MDpG+U8FkUzEMHQU/3dUj2j214IWewiSn4stmb6pNJJvUFTak/59PDM3PPQDmEzSSvjQPR7s+E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Zb9qnp+PSrX8T7HT6Bm4iZXWMhKm+KRCkYD+udLgMoE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GTlM/SeObhgMjCqbyHYAv6ts9kQCeU3z5NwEbIWO0iBRiIotpxOnAUuigiDEDE4i97F1byzLPLCcJyTBt71lszF8aK6BykoYL+iGvvTMfDhoF2WvMBQkEkuSbpFZLijKn3Cv8gxr47FbLS8I8rl5XvvLv5oood9rPHqmsXgfz8a8rlH5IvWF56HlYs8+JprH8X2u/GV6yTKYLG9LHwz3mezUcMDoKEwN5772wSEBwpKd4SI9GdQ3Fx3m/IWL+DpzTsaYTUNHgTY74lWto74eyF6qMUfMrT5iZsd2oCywv9w0SDbRtTRpNAv00h+r/IlMrxnuNCczl/VezYTnSxGUohcXQwAq4uz91yTkK+wHhfzr4pcfiZKOus8Ta6FMKrHrX63NV0g1kEdPa8OXzQXQmXJj8SIeQjcO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZcEaMuDvUQSodGpds8zNBjjqSmLnjrArGVQJd42ETXs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hJ+RMXYXD3tG+oK3iKZ36VumkXPOhYVzRhRnBU4+RtW5MOb4r58OGfL+EjGIw1Jy9zohsjdtGFIb6UpHuf9jvwyAm/aMsgWXdY3F/7wXXCpOOdUy7/eNqywdPHVLgqWhljbabJtXJj6JyAhb1dkflf1Ye3HTcnQNoLNQtqJ1xSMfmg6ixtpLXdhofLXQcz2cZOr2+cLH1BgIaUV7oevr+ABJmfB/H9k6hNsLoxw4DVuIJXr8M6+szSISvzF9v4dFT+vYDv63nsKy6MBQMWfHhW3n8U8fRANCTan5qAfGE0Wcqikt+5X/gY2kXIiK4w2JitmFShEKkdEzqgr8s8a8Ijgulgf9ZHuwqnCh9YWhoLutIFY/5HFCkmdesk9VtYapMmVLw5UEOwKWJq+kq9FD9qva/h/uPsXf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZdeDh+OOkYspFsrbiJsoiGnfEiJ8jxlw8Q36qLFY8nQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E/ZW+7elk2x1cRwye1HStSzc2MCQijoM1ceckBivmZFfIQm+jYPd1+HQeG2sM+FwkOqHP/GxXPv1d5g3whc06rHhgIpj06+6KAoVAr/HnFo6Tn2XneLBoDXkGB9K+1zkt5d+TKoKmBlVelRwNCoqU42a7WYYdU5jCWgSeTGrYwslnOP8kZMgpQXFO0xq5SVaqdi5oSpF9VCFBAVGSh1AohBAzZm/Mmj5MY6dNA9bF5Zh2rFdyVuGoggZJaVFicax9a3j2963Vi+QwXNbsnM3djj9QH/sWYx/kgDDMWc+/uVWUgim4I4DprUCV4pq98qbSrnoXbGkGoRZNHd5IrCDfe6iN7JSbXii4O2S0R248DTjLyM1uq8DNXwX1KCg2OF8SU3xyfTbXD9SF2g7whiNj+/DsskGdwXP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZgLx0blp1BfTG9aJBvy1U4H1RWdVLnGlwF4fxVKYF2M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pcqXCtMabtOUc4hbCmzCtQ6hPkisf+HBG2IvYUrgyuin39PnyjkMNyX9ig9gDQ/9X2YjllK1mFLF/X/WNgPBTleJ6Z5blR2RnXRVe69JgQboiu8nV7mXCd+R2083gFBcxI+oiPhi26sZ7lJsMGHI7bxuddSCeJKrqlTKX6VRxWhlZ1wNI0yS/Yxzhiq9BYH4E5y2NkN6ApQYmr1G7wmabZoGNkzF1OBzKRgJXYJp1tZs85ffi1aD1FtU9/JduDxTTd7UlPOW2jzA/SCbr9kKh+zNgoqYeyu5e0y2Gjt7NCY1EZ8gvfveOQqo4n5nk+slZmcg7GIRiQZYoPoedWF76crMswBGyM1TrQtgLuWwqgeCXwWMe3ReQ5L5bPxCAO3iHSZafQjGZgLBdiEIOfAwOP7vZbFQPZrN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZhJslY2wOvxanBPxCTAfNjr3p0SXfmKqUbcEUbTWrAY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pfbcqh0mn1ZthWa9XFZV5rR/9VbQKOSlRSrc9XeHNDOQe649JzLJ/FeX4hVwi4T81IHW+GuLdwNVaVlpph2SsXfQAMkUAYgWypDCBxACMuN0uCk+sdMpG6Yw6ZF7PkSZsdOZoKMKXHzGd1Dqddp0ZtBtcuSG8hAgTZcZWxj5T+yOOCDy+/wxWPCtHtPD+jc6hSJx6FYnTSkZva7uFJLOlGwh5BTc5ikD0ODi4UyH20yunpyCobaWdgr0lbd5BMg/aQIeJdfSk2yZRwRCQo8qxKqJ0gMItHDiSsyBFNyhWlfdXaHFyourn/Mn4o+5OURRLt7nO8FGA8tXHXdH9WgAhDp39dWFpQbf5SBpcBp2XX7x+khpajSDRqyXi0EiZyplb76w0dsUB185oPAIvcPXP1v41xTjw2kK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZiNgsRV2PAixyZYhj/PVr6j/K3T0pmPTB2velD77Gsw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oM3d3f5oLraUDay8IK9zdQYkQESMUAjFev0w6kqP8ucFIcZYOXGfxw6YXF7zpFXbmm58Xc3/6DkhBJdb94F/bRfWilIJJkLkCHNMTAZd4RHet0NMGeg/XGSM86dgkoAy57WtRVXIVwWLwkFik/m9FofkIBEGlVWcAvLSHdLulyVzuDBPj8/deSrLOVi0Xp3MeB3J2CqXvrm1e4tjb2sDreK9vOxa5yiCX1Tz7bIMDbQiL6eg8dwyMQViwdvULaRtizE6Fik13SXbBhJQbKwpjwivwHBn+KxXNT3zO5mrNA2tn+XgJzn7MKu2vkMP2fadMzbcqUJes6CgoejSxg+OFFB9LG6BhtFuHtkqECW5OdiAnJiTDJDcnzv41PGX9vt883oWcHnxdczSr4+GrVCh3Z0BLUboYJtn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZiRsWcM7gRrxcfqKidUhAKri+TKg9ortpKZGYTUuf0Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "03H9EAmNIyJ6aZIaxdBR03OsJ48YX2sUt9wyM3VAxdwD6DOjbmFoToZpK1OUQeSTtkBsO1vW0ENnJfwbGskMQ0JS6zfwqE0QoPiWDKAW6xWpgW0Pl8GxN0RAcflLSFIfS0lLtrKvyLugH8MgHuFGtuWLOBvrvu+KH7764QQPtt1th94XoBnoHHU4F62W5Xa2Dm77UW42ytZzu819XI+9S7bfwwQhkQYjVHiVKJtSlzKun9qRDUgtyCn//GKNX+esZmJwlWX3RffLVQPWol3PYY1R0uWYtXRvAr8nRy5xRS+kw8MHAft9JIxcX08S6afh6x8RUaQEnt5QZv7LqIF+0m2ZJw1awLqyxdDKmbe39Q41woDk8Mw+PlCFH1xXQB6g3HwJAMkrS8PR2GG5NTRV9YoaehjXA20x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZikAuihKfI6KLGzqevvPDz0WeiaFop36Ypj8beY6Iog", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GON+HJ7jzCFKLQ/P8xFdXBt25+J5WVQ3iGUTJdgL3WNJahQZZknPwsaJyNasPjqIRCXsfXMoxZ4WYvwLN0aRYaNSc3UemJD9RqEpDrZfoRENqgOZdSfMkMcWd1MtUL9g1R7rb2C3nbvJHQFwzNxACFmkHMXYY2R2ZR/hcHyu9q+SH0SxQSltprpSe18gvnCAQ1P6cjuoID3j4TnwuBoPAp/dveaTh4q3+ADWF5g5G6+XHgebgGu/tO286v6WpGCQK0xYUwiljd34siIW/eBo3enlAbt2NMyF/ZfxuwTPCPO5qEGzT/JQGX1gvafJruaYU/hCDcoqnD3SpGqT+4GPt5JP8/Dyeku7pMPMoZtaXwSrPiACoy9l89655+N62J3qd3dm8f5lM24zOBEoK+iuJ9+s3MZSt/Ak", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Zk8xnU7+BqVzdMPM0goqKnELvrf2wsNx5RzHvhLJcgU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t6EIF5pVozUpWgY46EHfQxfKUPgfr2JYZFc4dVuQmUw5qY5Jtm8K5XXZzDdXxp7XCFPj2CgakZT6MNgPxKD/CSikntW3PqoQZ9cr/v8BfGY7m/ptkKDQBfKle61iR8SKV2kfAfCJlCcC0FreHeIH6fYob3EsLln0QSbr8CLMWFWmErcgzR9I87AQr0BHX8QPIEVolUt/YN63+JapL+JS9H43wS6IdNewt9grnNQ/UkGUgwJ3sR7D+e3Zk6aUh9Ih50PmYAAwe1wg6CKM1u7oq9gb/HRvq7kXIFi/bkvC67WvsCCKjcVGcaHOoRe7/qp9J6rv1Mc2+D7tnREU52oInU8LWn8ZTtTnErG7oroKIsmWkZzMCpKQL13OJ+Z3hakogNSrpc5J3O+R+qdfC06FgwcvXc4bxRXC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZkM8J2/yYzU7LEmZVmbjf0bDYmES3uUo1X6eoSIWxf4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yM26F8TrbFU2S7lIODviOYbdB7Qe9NOBIrfUi7a4RwhIjCtVvd+BDEcJ6YOUybHmlo97uRkciqyoRKWu1K+RkSujbdh0Lz5hiQrj78sGCSGjDBPzwmYDU14m9MUgbd1CFKs0a28AnsLD1QfPryT7hooALGrNdxwd7c0o8hPwfKqI9GDx5E1omK8QrUPg1zslUcGa1JcbAtsWSWEqUWErnPIjGAh1TICEOHkqpzA1k7SSFeu3IWV9JKR7s1FFk3buWpm0pKav7tZhFLR3ZQ/jeTMNaAmzXOuTXUoedGTdsIBsAIjYSWAN/2p0b2ZxtN1QBHDsz7gul+o9fGtTkLm7y0hXLu2JMYyR1FQlltekqX9zovQE2Y8d6dvENiPTUaz5l9/2v6OR2h/bBWnMDz0ADqJnck6h20F0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZkTCoddiCuE8ToBbe8AfUdOIzZFafoFVWD7yoBc0WJQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kkYVnpK8ePBGoD9FYH3LOnpZonEwCBikT+Nzy1h56yOVEgJb6QjdG9/YEwHJ8vv1177s2DhBzS08DVS5qjAE/LSzw39SlTNQmHz67KR2h59Y7uAcmNkwbRLwgeS9l9J2PsE/RFA8HKmYrDdkry92g8YGijCKvee9EaPGmQLREA6RQGduziWUL4iLFYqtr8zITuUOi6gZCVtKQLiLccNYK4ea/AeGRATPg1lM7jQ4dVJ0+46Et1vq8OJtr0GXL1Y4lP2GphRK/+nGeWlYTZMqbeBbKnEvmFFjhVdfZCbJ3L1yUqoeATTx+7Fc+fc0WnGRgoj6jHS9ZjW5PHv9bAHT8dMA1CWKQ7eOaGJJB38WfjlSkSeZXNxynjeYT+nUQHi9csRmTDpkcHMWu8PxbTo0QzCJVPgJu3B4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZktyvUYkZ5LnDtVBdBTwh4/QiUCQWb0wHs0i2vTu1UE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "n9OTJ3aZQ5jK1/6QDn4POziq06E5HU1/NKnOwmx1royi4TrgsIuqahso88+9AvojtbXa91l1lJsx5kSlNiY5nv15s9WtuXPnzMAZk7VHs5EFNGa2TIWi8TvWZ6VoGm0vvxAL8MXjD3/BkToXIvrvRYzPaNWY4bwXnRAquiiVNj70nadRhybQR+6GxhyhAC1Yginfq71xFjqqAyTJToaEFikFjNKkrDFda2c03OpRu6ZohuiIdJ+cTNEoVoZBXsFNNMu62qmje6huuVSyHpQL7SR+wUQZVjWK4RYpC/h+BFAZwEcCaR2296W4Akluy6+UUEPKs9Q+D8zKzBJpDrNFofLQyeRy+bjMx9Uw+lneO45aG5aDe8S7zYN86xVY02p3/nKGyJ3ziZkpaOs3SVNS5I2P19N6ni2f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZnUDGH9VIlOtK5P77LQ5u/m+N4lLSZ8BNeGqDC0gPLY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F3CqbrYP43ZWIsAe4IsYCjfveZBfGIPgUJv5bluw3xr6WaKh44YUTVhDdSIWXdtFOTJ4YT2ObaEl6IoYuDnSXR13WHcTJolW74UzyiVBw9sidWZj2yaDl1HRuUBw3Z5MzwNjDldGPwLjzW5kvNhq/It7Y9r6LnJHxq2RcEMal5umDKIWOOwsMzDS5hC7FuFUDX/gLer7aUsumTGPN6xS58szvzr1A43R1w9vThV5jpCu2nuJu3+29xtJ0EzE+tCQjRbqCLsOuctpDGzTrLA5DSeCwFJ9nuA5S6xcuK/+7yZOMZtIN72WR0Oaqdw+5GcuD07qzSv9ezvOLlKIni76d+RTwtZFsaH3FBYhZ9SNqH4p5vyUmDvB/R0tS8utPynfpOapqDTlFGS1y8EetkbbyesWTZqQv4Kd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZoUaNW546/CGYqkktfWYTIN6C0jKg1ItAZ26qrAbaTo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SKR9fUHf+w//3nOHYJ2aCVGMpLtfJTi8qLWri3ZmLiSVRjnUhSQGa2mXT2YI4h818DL5qucQ4vt+q2KD9jWVaNI8Gco00TQZuDaogGgM/pNIW7JSMZQOtQVqZ0apJQ4/cjEl0m6dyzSL42IhN46QQm2kMZLjWRGoJxsxiddVxEva7slygHQNHNnpGFIXAfD9MOZgnMKMAOnehFaNXxDzMlek22AqmJF7rMw1vBmo/sgsnByhVKfpBoO9aHqV9cnvEAy5CoYQ5XKzYKa7NACtmo72pAWHkOx/iVBoeCqJOvcDnDe8wYkjVpBMLCu8rEPTNh7jX0149xPmvscCX+/aCWb+xBICG/U4vhj4sKLvcrhL9W/raGWD3ywU2LFjLtuGQ00xVPZeaBSixrzpJhT+6egqGcmQyRKm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZovYPzUJiiFS3lzS3Zr2aQorTtmkmpzE/jIgUHMX3vQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "I8Sm734GhjFTw+tU6vL4wu0Ihx17nlP7j6XXiv4SBEtAf/e3slJQHcHxtYHOd1Tb9n+Os6QKlTPOozYVnQNfQRYlkpjXOfP6w4J5g5rmv7aMh8as1igElfgfK+J7wNwph5SYqps7yMiw/VfpXFfkbcEDgufkACfORbNl2mOUSLbLMAiol3susmTPJ6VUjmFDKzLs87DKp9tVQzicoSEs8rDEP8EsLqxiY4y4YsxZpP8J2VSCEZUaar92a0DrqXPkGKsvhQR7J22FuzVFG84B6MdtZhSIiWl0BTZHyovBZwfyvHdpN1De7+U9FUTvqjz40Dk5DQSRGK8pupyRbytIl62PDsvgWfqdlf9iQvYkFG++cwJkdpVHSPa+OvvEj29//jja8mFg8hklbaOfVE1ZDjWPkzp7QUxv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Zpbhnj1u9fHufNg6OFNquc+6HlubBZ0pZMhxurn5Xak", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fHilObuPHpg42cJHl/HzvECXNUGaFiBIwejhB0/fc6UngCa/hXIeGsdEiQkhJxLSBQho5fNecp8hcSjrDTGYtLajYx0eaI4NnUHHYXGstWJRmwXjYnrp+Nb4xlAsBSqmA7WJ9qLxKPJ7RjKYPaVcfLF3S6sYNOUySDnj+mXdN6NAODio3o54dAZHNGT+BREYIgQf77CjkpmwBgAaxdTz05OqthsaNrxhD3jufW0aR3Ibvt94wvoNg5uurrCx/j+lmA0AadaxTTCZBjo//FHmaBbpJHT7q+YykJvNVn2UspzF3pq+cZJBA9w1Jp10BgWSYeGl3RBtGIcXPaLg+8tAs5BiVyga7EbFgZQXcxbKhmCI9J/jbQgpObGrB/UxbtlY4jiUdK6U//wt+cVLHnC5a7Mw1p00CBW0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Zrcf2fpaoI7c8jg+R9Yt2hhAkVfxZutN0u/4SvfL6+4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+WYB8zdrnf2P6YUmdPqIPZZZh1YTW/SBl6PExD87VgYr33Etfe59mal/3DQBifWGCXStHR2LVB4+sRpqWKo81Wuc4YE87doXU0KThL5ha79cMAcBD66gQtUH/NXOifKjPbYCXPG4/FfeBMvvYle+ybM5AZeFeB53W9lAoRONQTHQd6PYoXWsPV8P/bwoYsJmVrPIWTb0QCxMaMSrJ8pQ16u0ex15SR4CNQiX4z75LAItPdZywBJCO28o9CL354KuoCxoBgLSYGOBIBH2sxUWdr9npA1quZRrAutlf+z0Ge+Df3dzjyzvBsbQyMG9NQqU1SgSGaFsUKWwFSMchqEP3UU4j5COXaT6MNz33blfeiZa6vqS1ffHp3vLOh/RKqJPaShtF395U8GepFkvjrbh9/H3m0tba/ON", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Zrd8TRqENEzi29+nGSNZ7QJ0xu1Ugmeh5xhqXWTUI3Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mF8sviGnRwZnSOV17LUWuXheLjsvec2rowiV6gELJsY9l2eCDx8/57fDUqcqb4TO6V9DYJ8ktUlnUqPwpkGsTioG3IsF9yR5fyFoWRbQy5QY69Y3FZesY7qkY3HpxgsrTNDGt2zntOUmFjtxcN3udaFhqV9ERl4VwLje7pSpiJJCKOfyvSJrZJAzvgGvNdpjg4zuzVyYp9OlOk+vlKQGRG3szczC+0CdPjcmVp8zJvfRRsg2uQZzTkPJJd1/3qm9Hhc+l1rE6umrWvJRvwnkohnOduvu4VGlIhHQeNyMjQgx9W5CI/BUPdfjgnnhTBhufl5kVlERZmNcVbwriYfPAUSEwnTflcpWYLAZ5fN7M8KZyFapn+ecwMO98fBbg0eBKIIEbqSXM+vT/eM0QhWVcIHwoMpxA76I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZrlxXr6P1ITwmmPTUktM0XgXvVBh9/kMoKDn/Khkcgo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RG/hQTuYBC7BIcC24JBr1MQc9kM/iYs+S6z/Ph/KL9j1rS58sokl0g/FbY+lQfzoIT/9IvLFkmRIg8hDyP3RiIlLmty1v5e22Nm3hsZHhANpAIJUGHrkPXfnVBGZZ9+C7J/YfpXDSa8EZUHm0+TPW+XBR0fah7NQsB8xG2NIPrPyVltZB45kgW70Ilto2tqbfSX5CWdjoOyiCE8RoEqeB+W1gxSYmqyJiY1O0H3rZAH8u2WHNE6gIJnACxkq/XedMcRqs9Hs+kBuEwzyREvmuFkarIrj6yS0BBzYHKappq/pWi5xGLP/lecdRd6RkUpjDP40SZEFxAWU745WYgQuDT+El9Z0xrkA/PaKZ39n7EMHtLei8yUKtMsU7v1EJmD2yjboyYPpSsBmK4rYa0XEqkpXoR3nU+HC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZsAglckSk/dkhHakKevLYboQhB3CTLqm700y2Ue3pmg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0nRQg+PsfNQBKdAwyvWnJBhme/q90jGpTPnP3gRurD0JMuIR3fsOgJJ8AWJ5dp84CO8WZUbxcwd/SQooWH4B0G4a0rVinEsrAkhRnyuwQ2I4gxLfqOl84nhicMOO9i67myUyNO62NYgXvdwr3AawwXR4qR7L/sVaWV8S8wvHZpo1kDB57i354qmq5feYmgIu6IZ2yrMBVEXfMLm+D/aFgUJzHgzVEh3tZgypS0CmRYWy4LjCh2a1sIgm/LIdyUstDM8xuWY+n1XdCusrQEUpYZh7s5sVYDGZTJIb0NR7U/YlrvX4l3autcnBVE8k9JfSBU32Oimc7LD9zcvq5A1mj0P1MRwjfVfF2b5sn10nGSN09pnlVkW/M8FLDEHw2mQHGUxK+px5LsV7S8/ZLM7me2RlEuC1y4xN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZtzeRONMkLaJ0kk4JlhZkiIM1pvaS7aBA2XyIVuGSJY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IvU5X01BUxNUCZMnRlIeTRqSBbkvvUPfsPSnEQLMCARz9gxNHHX7b396Ohrr1bqPwxgH94J0+mXx5bt0wrwUsRSrPPZHV7oVHYDfFHV5YvBn59QHla1N1DmggMRSFENH/jQFEz9EZQxdGdFIYmZQLRG5BBsG5sp+bR8PKHb1WB5y8+P36599SJ57tH/3i5hD64FTDSI39IeOLzbQxI5D3/v1Ugv72w5r7b2nFgz3tUWghSWr7YI2Lm80uzdXxdOXI4M+ceEpBUUnFqCr3mz1ZEfN9sDZTTLpfnvf2NP6j6DlD2zAXjlczVWYfe8lvHKL2o+dG3Lb81uzDwpxAsqn+KD4l+AwEILeFCRjh94BmMF+4reElZD8WHwIMc5+Ees3LlxMWKy637HXR6jFggyeV/iXj1rYwX3m", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Zu4oRkCYAACWA0u25JNBinrI77D34Qz6oUv5Y8wFE/Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GUhGT+y2YsznliIQLzSPom0ApzANXAZNvCpid9HhTFFuqtH7Nv3dG5AVKvCGsPzCTigrkuPynpJWdaVN9kuh/ql5R1S0j7CMWqROyiVkqdjL0hWU4ZxyfP7N79fzsrH8vySI1JWfrJY1oHikO6pYN9NoPF7omDa+hTa3Vtr9Iji5lvPHCTUedTFpr0o486FOj3+IdIFInINVrAL4ycL2qERhFMlw4I7OKI5i18kGznAQSY/0L2Bj27qtdh92zgaWjnJOZ/9dgQwPf9miQxJOEzpjIUjOcoQzcs+PRCui+sLrCAh/zYRTkdkpkgbsmOOaGtwUi5IiXsu8WAzyD2XSeTH+gXIkl6in6x334bCTY9cQwBSUu6igdU9+zJaBgNgc5b34YdX7EaF9s6PxfyuukLciIyt6zRw6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZvhbqLekc7DvjqP1i3sFOGYyQSZSezCScDCb5uq/3D4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "obdGyPyOyrj705esNsJVf992Hw+M8nJ1m4SCOBfvEq0r378E3yfLbP9T5ddpQLBzxlzWtIIkcACadzE2G245mtkag99FawaFFo3N2sqX9H1dyYdxT2b+7MTK/FmT50/K+cC/MwTQ8PK4ctWt6NDp7RLOyi06vRbsEyENZ/TEp471/4NWQptjqEsL41qGCf3gGBAzlphauDv65evMid0xOzNBJ7vuUHfFMeyKVkUt2xSLIGdpX99leg/IUIH+z/J8TsK5cj7nX0lL4q9I6dll0uGGpWDsrOLvMTWm/H7d116iziZFxXZ2TGyPFBvWaYbgaBWjLv5WMkkut5oyUoJ/2DommG0Gin8iIsAsdUbU14/kFMyyb1foKcbFy1jH5ySMSd5hbBjFvYUgUecEyTw30yYmCTdSrgLm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Zvz8HMk1E6X87eJYAGjFb1qH2WRR2j8Utzci1xt6igk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bkbmc6AiNmDhJTH4LvKcn2KaC4H2KOQ9kj1Q0/9T3wx1P/yJVRAQdGsN6NIQG1b0vd2T1HDlBw5oi9H+wBU7w/EU1CwC/kYIV9AA+Gzo1xpv4ZKgd9nym6+pjN4UeUT02UEdRxmZ6zlbraKm0itmUHdqrOX3LksqyhZyUQNnarL1Un0KX691JA9cn0/IKfRKsDDU0caaMvTL0Z7pYvzxIdFmaFfZzVrI7MdkUaG0Pn4Uv41kx7Q3YJ82aeYtEQfav2oclXgFxP63DWWHpnM1MH0xRsRbjDQu9fIc9dJVDSIIQc/e4+NB6kvHjkWC7TFAzKoXr0c1nE/gdUCw90PgX9kewkAVE0Se1FFM2glmPldTlQkkVRbyVEOI7He+zYW0etw/bdD/3/b6VqtYgwQoapyYFjo7vBJo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZwvTzIY76gbxGcuPdDEzsUzxD7xyOYWmgjOd85Y3M9g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "onhhTCC6vc1Mw/go1g5j8oVZS4Vjq0XuF412kEJge4Sr5FhLZVQxchE73ddH51HsRoVIpQr1xNEGfHqGvem0DFPgN/Rehn+3LRTnuDTysV5LQ4z+KOsyHpHJ7Zd1m1SsZ+RQsgrNWt+Gjz9f+Cyv7b2tYh1HRfbVAR5sOBiN+8Mr66sFrzGaExiHQI/K3wMDdVua+eWdU89TMSC1Yhvoom9VtYr+roF7wKYLyD7ne49AHoZqv2JodQvKyZePOTJvov61TbX8Nc5/HZWfm6UqlChjCLie+xa7erOeu0Uo3T7hUhaPFAUaQAzsQMl1n+crfCSq5ET4NYRJF+hj3VnvqcHBhL6mhtUusLDWQO2hEZCx3MCnxny6slkiiu7NIINNM34F8qRvh79W9Ek1PB+iFewzR6Aqbeav", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Zx6xopmkeegFDUgJBIUE18Y4hGgnqUCCDoaOHS9hnPQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zEEniJIHiElwu9JfNHJfYW2XTOLtX88uIdggiKimel/1RTBNsCcFV1H0gZwwhDRjPQOXvgxWM855O7mBSKMHscALyFWXRkTtxhviHsBxPZVGYRbuqRXQHcnep7SfkTBFlHPHTD1DJ9NO04UocRYNJZpqA04hjZRnLcXwWswcUSCWcse0MoENXD0DmoCulPRnr2QBUY8z5QWRt8RY+yuRweVkVbkI4qq9fj/k0F7t45f75widnEn0kHoJ34LGiMkcvFmU6bbxoaLyXXsbvqobvmFsRJ5yGqxjpb7131dfk87YWxKsFQUmL2ZHnSO42EbuxjfHOIU+fe8r5RJEkUSC7Jw0fY3ZaOwt8ADYr+sHgK+7eHeu35HNxU+279IEipnZ4J1SbmNP7H4hfstLIVKkvnq8ZUXsPfBC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "Zxj4HIdqvBm6qkZYhU0QOYxkF8X/CsgBgd+gVo1I8uY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V8UaEt0JIDmBfK9pd5gdSBldtDFP+CQseovIPLSSYKreqXj0bI/WW1eFLg9weLYJNMxSVTgK9nWbPA5/PtscLWpz0FcKmcR4BMj307UJmmWRMtZJyxleK0Ai+FCh/1jKgVuW5JzckryXct57vgSoL5DZSEUGgR9CNTKGHeAATCPElgThd2guDeLbPipE5w74FT2Zx7MF0lMnzyPQfdv0qZQpQOiRdj7qqpdcbSXfYjk5jFYPfSmkHlZleSGub1ce22Y6MBf26tWdjKtAKIvapqx6piOHnStEO5GTYnwwgIvjznoZc3fMVEInd8CqVKAGqKlRrvlM8SO0V2eMVSi1JgIswF/aKWCpP+ffcWOiOk+jlnV/EQJX297oYv3+wpS8t2L6PXEBrs4hGb5RTs3mFeE9o+S6YtsL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ZybGzjFTlZRw8V1sRzt/+vq6W8p389P/B9ac/deRF+Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "juz+TmOLVXGDzVCtqCIIJHyO+stF9mGOQrZImQaLxaahiQhobGvMnl8A0UDFtBI6LjPc2G3loc6Ra47rRU1PlLHMVVUwnjKwngHBkVJtoHtsHGrUIwwLkdEvDOk/BQ/ZWMznypUrXxhQSIs4rh2tKJVcu1yScgCv8p4OjA/h7Z+rWf08BIw7dY4zHidM/PzMImvjVffA72gMszG6Y+eN0gZo+mQc7T9PVG7vAJ+sYgiAPG3WN3WCacOxkjoV8Pe0DlbhDaghJ7dsurTVDECQb55gK5HNuCcKONtRsaePtPbKYiXfnPn1Ji0tjvnLWuU/1BYzS6saoxmz/7EOpwp6VzCHEyIKrv841LkRhcu9J8Pb3v7Mfqtmuz2N0zsGQdcWqbqq3EXBwe7Kh9uSUZmGY6baoc0/ihu4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a/xby9VytgaeVytHL6jvqFn+b4oukCNyAy/hIFLkK6c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DRPWBPzEq7CPd8Thcj0RJI4YNYOKalLuVw0uisUu5gFRgdkcjs0kXyEf9QreaWKsvLDASaOIbpIHqhFq5ot/Zcz9jLbHBzSGExi+yKgUZS8yZJ+juPa3Ss8A7R497dP0viXzEbY70xBv+YqK+aiEjntcZaOK29cK/ztLctDqoft9tnTI3SA60n5q+wc5TJj+yQ3PMSwpkpPE5Ot4tasJWbQluPtl0dttKl9c20nd1MSESA0CQSoFAKxQO3CHEMIbUPoYjXpWcnh7IZvFyN/SdmJVldT6l2H6wFZWIkBECrWfMZti3zwG+KLrGZRKKl7CH+QY9guCmFKl+Ls57BiWFaIsEl3KkNqgTbOUzg8MJSNJPvc+ft2qJd3RBlo4VN+ZUAiPvV4ksjdlS4KFuFRcQiYAL8WtSECW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a0NPsMqw2WO9O2JqygJGj2/QIcYhJ2IygjW6Isg4jRE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7+HrMaZK+Jo2Fs2BcXuhEatat7XeQJb9oorIl62m4YcnmyKtwzi/Gv1CNHdbxc/XHih/VSThbcVMvb37c4mqncaG2eQow5I6GLVPnYO45PSY1ity6s74KHmWY+zQKQ+lS3MUa+gi7tjRdciC6080EVoKCIMmC/bairXazEcWBWgUaB5gMswQjnk3RaRVHyxb+jxAFA4cFXGtWRyzVe8FKjJ6b3JZlagK7uQrCL1NXDDcOkQt8wBpgRGA5kFcommxEpYeshDQX7T3cniU9ahk+MKatJHEvtvcJg5kX7IoplAnOf4SYpphs3VdlnQL4/TlEPgZvsrGPCcBOo+iIp6Se81M34xrUxhpcjh+a1uCyle6kLbDnQ7ScTlS28m/y8qVILxWc2E+aE+8F4Ck+czUUyX3IfUW99zj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a0xsl+t/ZWTZ1TpMYjcC/e6iE6eWiRFHkI3qNg4BISs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SGLBvPZZ5Bi8fxdfh4+t1/b+MhyX4gU3i5X9RVXYxxiveoXy7ijV6v6UdI7pLysxxMMNQKwFihyK/SgmRHswje7ojgc3lTdmuyf63wRilopGJPOvg63KCNlqwDrn9tVINBOvE9Rsgbuj6ao4GuLkvTmpltIFgPnXcdP8XDS7wBqLIlZMHyIb3shgb+qAl0oeairIozyomcPagKYbqcK9hOeLVRWQKwT5oYSy8ZaPggrYqlUe6o4dKJ9IXF/hMT7ETDujLVmSq1fQfi+Kh/ymfMSAJhiKx3M+tSF41ZsqjIeEm3osbwQXmlbOVacg3tOUyBfZow0LPdSCUGjwygYoK8tX9dcdjBJTQ7MfslmPGm9Xe9yadoW+qK5ZOrTggry3PGlSFPtdfckJfCJYXYaCBga26B1unQCH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a1K9E06eV2kiEk1/6Z5ffUaGKkLkPE/9tugNOhtOAYA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6Z6a9qh08mwVPo/VHiJoxl/nQMTE3glT6iJrZO7EJhE99ysavcpy7K2PiXFCkFx1MnWQ/op7GGWkBgCZkfqA9Hdmfqaq56ULWNcO69/VvNesalE1a3Vb3MUDbOMj9ZzCbl3YqCa+PgM/Dg5swcxIpqMYbtzSth3t2kBzw4ZF7dEa0vUyDTLadGTIwaHNj9Z5jLZuXliQv0m+93qLj722krU1f+TO2whX2XkaEQw8xVCsiRL9WB/bC7IdAuL0PZk5vFROuscey9J0pMu9xctQ8z1P/1dy+3+bfpsYQvg6uhvqiTgsyF4o9MaEB0wuHl/hfXdkS1KmSROj+sj8J5LC8xbn/brAQLs4PkFG1dsfYf7NjAz+DBonbFUJE3SkmBBoKlTaWrp99lR//AcHvif8rvz0PoHiBjjM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a2LhnM3vdT9WmLVPuqiy+Lgkn8ZOBy44b8YM21ZKGM4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OgsL75VmL7h+5LL/1xNS29CsluL+PTG/iMDhvWzYaienud28SC3sJ0LJq0XXadzUj7zGDDTTYFSuT+KFp8s6gpk9oRwlkrkjvXlyILcNbmCPEX96FbE0dwrpSgWEX1e5hHtXwwmxHrFZuI30HYG/OwuB+lVQFMQll8843v9oNTdu9Gg4tqZtI5ckqzplmhgn9btDnQkcfhHbCkHIigyfMS81EloKI2myEJTNgMMZc82P6H9LlaBEtP8j0P6BJFF+JIHT6mxooRVgYss9B5hoWVh9+FPJDWQ0isEMa9JXouJVv344aqYmfbxQpo+CQPs8YdAeOyRhIKPIKE8N1r6sYKFM1Qwsj/SE0ff6JcJgkojwOdegzERou0G4EvWuo1Qs5Vr35y7gA9e+GsbIyq2agIRJFn97lwnM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a41UFM3eji9kQ/7WvBaMtQ0K179luQh4JZTHXieBNHY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dpBUIqygaaeFBDZGqVzC5ogzMN0YiAqUcJT/WLQBwYVuWI5M/bfnN0RyZDUF1Srykn5i3k+tw78cfqCz8ycrwdiYnMXkG3IKZrCHhfEAEV12wTcnWvpAt/PDCXgrB+jG8wi/2LZPJXVr1SDcNHQKNqmrjpuINYaAwWR668ioVXRFtai2lASovUBgifnB6zRz63juz37mSkP0WzS0GQbNzGGVFN+rHGeD8RNwp8wqK+qd3GDoHb007rQdI6azB6BhgcE+MhcS2PkP/BYjT864KiqriTuyhm7TOCGeASVtOPV8+1POSXAy0ZE0GSEEpEH3FBqgpx6W9NTQFunT0y1f//I2HmFB14e57eaCrnv81GT915LtN6uHIGbx0GsSRKBCxrO84+XsdCOl4IDP8lNMhWRfAYUubq1E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a4Q3z9alv3GVqyj/dTI3wyGFRa9EoMh+CzAjbI/GtOk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ktX8Vd4LjyxeVkiyfprpjb6MihYIYNfxr8ooIva0erHvbgu1tMREx1AN+UFhtxhBuvHlK3HU79WF+wyC4+mvAy2gN7rn5lWNSiW0k2OKYm9V9NVpxLvoA7nEKYYPvntZc5hmyHvW8mJpdmVW2joNdjFiak/1pzkcqG045vPO+TanTQr9a6+48/w0n2UsRn35HzwXs00xor0EPVR8+mW/7KVV/EumCwa2HeaVpcIOVauqCLJwLf5qSRYr7vevpGvGOkA47VPQhJsongpp3PwP5PMHZSXWoImKJEjdPuXK/CX+TGhnYMVbyhKp52b7cKdNcV6kQUcHJZuGeUaa1UNrm/3QlpppeTkte6JXedQ5HR5yl7HfcjluAIK3F4Lcu2SK+szXQxeWYboKTL5422fd+cLBkqWMg5r8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a4ZhICOuwy5SoS24+WZKNo5jieJcFAtyMh0dWzN4miI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wbOE3qWuWQ56OuzlVbbBk+2jkMXpX38nHME9EA4ZkvfXxfJp2yRCK8R/v0z4bfXvbZr5yArL3ebZRje7hqFv+77LN17+W5HQ8PPGL76xMxY3EH/f3tmo67wbRu0n6NAOs2e2a+tysnJLWqkeRy2t1k11pZtHV2r76q2gjXajpxVdvpgCiGQScmtFSIiWf6ypLCnLEzfE8RzJ+ZiRyJpMHalSq4nAC8Xh2/61WQZufZ75wVPzozGGDYT1YLvq9Vp5TW4UYwXq+uKcoHpVpT71Xm82MddjE5U9LuF8Wyd6dygEs4WX2y5BNRDZHkDSy8m6HSjRz0W7f79Zku/YQdzinA7SGwTAk9v0dLwlCFTYEkyI82vrsHiA2JYr3fZAJdIKhfklnNy2S14+42ZRjvD9GrdX5GuVI4yn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a4r9Rj8w8RqVIvvAv64rf91PYXokWrLKr3HARqIVUew", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6J43xwxX5NcwGXtSTVFb3xPTefBiKWEv6bUmQLLuCuo22ySOY5Zi3vsRet0L9ISIYb0Tbalm05/4iwXnuH7LSoazSDAtX40fv24+bbbmMqFTZ5bk3XY+aXVK3ypklNKH1edLbs74XR7AvfH9dAKWL1odhM+QaX88p7J9Pt4BGK86UiewufzaFC9VdP4s8Hz93V66G78wfaYE3yqPKoL9o2S9GEjy19NTJkBGn5R3cRaX98LKxRamaSNLztVQYvRuWyFQPgkpSpedrXFJUllou4brAsQJZjPJJl6boPniNE6W3eh5lcevNv1PeEvlaHV5P5tmYRL24/uIZIrrwS3vB4mMs+4xJFrFsS7fQIA23rwt6+QCq3lpecTEY1Rd2Sz2ACtfotBfvSlyMlL9Pr/9JUdBCRNp5eRm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a5f2Hg4NW6aJJ0WrIWL0C/LZ3rwEQzWCPCMWsqQdHjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0e7YcV6w1y5ANNmMdCyJ+M357exJzCq4FLeqHTsh1yCYIewGXvxTgIBQknzki2HHAxpbW/XAMy6zrEZMRFIpUwTyXDcxtu4CB3CKD601+qDWJA7vwo9KP9CcvWExe71bYxhRn4mVSGJq7zOREaEKVQHFzBM0AdApVuJcNXeY1aDylx9FoXinLEh+7oMc+buplN2tQl0U7nIrcnfHSCCKs8U2kevL7PrZTDL9LLrY8BwMQcwGgBUd75jBt3NzJCxu5jhbEZjP290NPsCAEE8vFUPv7I+HC/fiHe57CA0xq9d09qfO77hP1SxLEQ3WuZZVnl1yHbsY+RHCEnLPtLKbtoh2wuGIZJXCaAuSolPhhZA+QBET75XKe6CZBQ4fs744jM/poDKp6tT9NWhFczPRrp+KOZtxX/ee", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a6Yy9+fkLyucFBFPOAvp6S+U+exl7N83YsHV832r+PY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mM0g4inbZYokX0vBJPx1r/zTNC1ECmvvseG78NgPeBhvnG7nxxKnoFPssVYxA3AMHlHRC1B+OZk7ZlAj2Fej4l1fw50nVPJO77TvGPIHhK9Wyf+uxyNhJF66+cyRZjLtqj+UQ7DGS+3pdcaOvxDCuwghGZFHdryneoxzca47eL+Yyt7ysOhYeZIHEHYawF76lL09B5bIvcKTnnITPaPMiUxS/yRFiH/Up7DvajXrgkGmEu1Y6H2jL2xZXBgVwApQDOW2d9phANaDiy7WVwBGvgrYYio3Npa1/ro7eM8X6oupaBAURDSJ8CXKi38/WetIlED8PVBsNRzcbXWO0jzrua/U2Kziy7DYJ60DV/LFmVbdHTz7oYnBk8halgNzoVbzML2AjRApGYnZk5TcUYrqgpV9XJzDvPue", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a7FUO+ni32WIPVClX3RoJEeyBz96YJm01B+v6kq53LY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "slgHNi663SOBQHZJjaapkXh9hOA7iPSEPTrF0DQcfBB39+dSAxCI5Dd8LJUlzvkS4Kxs29wcpIefnOVetv3xIwNjm7oH2OB+8FrW4c6lDj+o86fwW4q33Lhx+5cYDMYvvEvMJY2qncdgEDgN7dYT+ENQKkmxxHt2zwQ4yHv746QMp7v7wwD6Le8sA/LG4KXQBbIHWvDGycSgYz9FlJvTb9ksOQgPDwyH8C00ga+CF/JX06ckd/Kw4riNF2Yo8p6HjlU0DnU1A2hdYru5XEbz2uVOzjwRROWbePIVTeTt2XANVgvZtdJW85EYfmQVKD+NostI/0gyRs8o+V5PzBVXqQiWQ8LTNjtRO1mt4NWckXWjiYJ9LoKCj1T9W1f13nx6+aRPYGbOmFKLjwrK1+ZOraYxp0E+q4dX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a7VXvHZTXRJnkNMYy+OmhF/OwEUmboqMLk3CP6jHqGQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KAh4BHIaTHHtw2m9mIcWZnbkFDfC5iXPDkB0S7mLqeMTO94wdtS56DwS6eylMlEJtnR92aMP/cJY6o4/IW9QvUQ9oHka69AsOtwji4XENK/8lR5oQXfXCNFg0GLxofTgnnjDcHKDRmKnPhbGPuwFbbiF4t7f6i96XB1riJQXABoolb16qyIX6ravgmyDj0X99301UZQKdm8xi16Xl+pXDI2JgESljmqJK1gvO86rBSbH9Il7Eu4AQU06FX0/xmiBJZvX1bp+AdW/NdaNjufR8bosK2GL6vycytwbYJFOUpbpV+PsPM/HmLZ/EU70IMfao65ZKXGDQJpiZomfO6vXO5NHdvEu3WYfXm9xwryLpThmL/BlRDO0RG+bfTA8tRHVqJge+96zjLTQui+SKzpjwqoiAIFRGar9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a8Wq0+GtDNmSBUjy+Xc9gKviHWbLGXnQ+0bKi9112uM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SlCmuKdu685dn4bU8yH1Bw0Lz+WQOXsGOnt9NY7gSGVj/K3ZiCh8eV2rLmbPhfPZyBC8pwnh9S/D5QPhZHV/eo51FJnjWvv6Z20URkAXX4lWs2OOEFTJOVzuiClBfXLAwzRQwMQPmI+S3hvGVEQ8D7izMLu+0Ulw8c7mDcbfOvXLRUCQrGY+3UI5OD0I1Cls56raUCEfAXvXUy/GJFhbgW1g6tslFax0lqahZwH7slNkEzQEJtk72mK/nLrQ/4wrUDPBNkeZXHV4hVQRfrQ6vn0Kpbf0Ssd1FdX/DGbuxy/2s7XW7dNWhc8u4ox77J3hZ5uhzrA8NjKvFfSG8Us6tpgi+A49Py3+pnQKWbaAfgM38CfcTsrSB0yaDSqKEUSY6ho9VQ45Y4n9HfD9ZOMsozzDCcZqgUWG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a8bE4g1AgJgjay2w3+glccuJ7Za2IBGH9G76G0BcBnA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "moAurvVbTN4TJ9PxtwrmFuhqplw8yCRoVp0THkQ3CGP/BtyPjnd8jEOuaZbBeli1sM7V3eruxFWkYPe/KEhsPQmAwCRsMrFFp9d5c1q5rK0JvuU677WALU1w8v37pbIlGC7nKYp2VE7XMsNPjVC5x7YVuxsyC+iXQ4a/e8gdv9H8s8Qbr7E+4nklKVVBdnEtMjsKNdJ+b5M/lsgL+8HnBLimfqPZd9lLtD8YTldS0Hf6yF3KebRyfrOIRXTwqG/W20HSFGkSCHUYAlM+FYw5bk+kQCRceIyjvMN/d4HE3mTb5r2RM7QQkPygPLHLFtJLNNJbm3p0b2iQG20Y2agpKpK2Sf8Jd0ych8jys/6n60IaGRhxNRAC5aQGC55bnr2rIHzc0pLO/1/yybRg4jh0RgNTN3WGRG/6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a9CdLj+Gb+Cvss0QlQlLVEmYmBqq4ncg7YZnkI5ZXus", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZE9oYtAArl4PzYmeekbcPhqFJcUcrecdJr1uH46V3DiyZM/jwdAVJyYaRA6BFz72J83pLw2LxznzgzPhKFG0OZbykxfn4g6b5nMFQc7vjRa37rZs1opRmzviXSR46rhtoALqilnRcXoZV8szgGFbScDwpyH/khONYt1KcdxyNZ8bf1LxroJQI/7+yHe2sXPJLL3gTRxcRj3Rb24xXnDhPt9WdyEnkuEGBqoV4x/4TF5Ht3E/P/i4VUh/aIARuZP6qtWkKvUIS1NU3oe6ydBWJNbVpSFR1EziDOMQ9QRfa1txv5EvmfKJJRgHXKthRsl4dWbMGx2QtaoSRkrP4MW8tvtoEBs2HcSjo4J2gCyx8kVVYeKMnRg+sUCOe3jS+ke8fY/LEe4JIMqLp+9jnYEalAtsSN5Gfcn2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a9JTxMVDc4KREIC4Uxea1Kgs/Jvmu0+CROOLaXoCndg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Pw+vC86v6dJ0aLD/3picFGty1JWTGRXWxgYMM7hVamxQl5xWqVfVN1inn73GBtY8OSz7UKlJMKZZ7DaNTdfu8ulTaTSrXSjiiq4eSMKwkONlJP1v5+vZwKTD23/14Mk8J4wH2oGTypp0Sdhpbln0cy5jk+6X/YsDy31ZGOkbukU/bgedC0BvxiVPs/Q+y7EcF4O8PyJGGTSSz/jY8HO5dq5FrnzMJVzHo2n3IRdMWi8o7GEBUtqfYjQw8r+6SaMAa/XCe5wh5EMWC3LPORBOfEmvpEtTB5jHX7MKybF3yPygH3S/f4SELnk0MF3lubLIm+63D62krxuGV9oh/QADw7y5lM5jUTUUMOlspyMML0m0U7mMw+MybY63tYKxlt5OcdUvzj8RtT7d47zXjSWm4kvuoek2OD/w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "a9csg3Abws4Jl1usZQxbLJwmr4chUWiCKHihpjm+MSE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P8x9Hq/JlEab7KhdYMnMEnQ/CbbkTTNgTyacgbyH9hkc7LVvuGXLi89U6IqadImFrh8qdBmnMPlCM2BDdotDJBLz2lC14cqQa6kxDpAVRPCLY6MUVoXA7OLoHhNoP2d8UsCdoz8qhnmfyXdxTNPR7RLqq9VdHeO+1q4jMcWvUKcsuFyu26QqiTImOwDhfXUy+UaKKEVY/n7MUEP6cizuKnQsuW+AR0Akeskvcmg1uPlK1/pIaAU23vEgsdIulhYmWJ9zNOpQjtrTQR9/xUYeRRGDti0vwaF6T85sVikZxG1raZgTFovMbwKSppr+lQpG4mm9qL1GA9JzYysJz7XAlCkcv4zFXom67XrmZlL9+nDpFBDvTvezkvlYjT94c2NPCheIchTlQ/ffzN30LEUzO/7UPu6Kh3yz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aAgIm1hIlRx2GIbgvxaG+hwKVY3BekJfpBaX7UlcgGk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T6jUvYIHQhciQrDWk8T6Gyl7BR/VsuxaCQGiHH7ycwdwPmDjjOi0MlgE0OCgTlStvgQBJ1FLl8hBNm2sG0f+hlQvDuQpO2oJkEePVg3VOEyAJ6VCpcF4EAMH8HipaDC9bE6ibMZ77doq6RtLSW7PCMvNvBfbphWV6H5Dd+s2kOBQeur5wSWF0SiUFgcIKSb6W7LX/m2rc1YU+c+rTxcobaQE4fNAPy+C6nTaJaVrSIXJPriY7eXynsMWqJe9qZTFKGLT0hHT9k2uYwoo9yU7MjUMaVO8RbWJCl6kQ0H4tnBl1qt8cCif5PHsfScecvVj4aITQUPcOGbGjW2wWH7KhDXmvP0Rc2NNNumaK7TxwLILzXZXRFs+VbzqRV0ZFz39bNKSgRMom5SQu7v5oNSA7MvSo0BGt3z6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aBkF00iOEYMkYIAI4o0IDHVOpblhTRqUtJF8d/2jHHE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A7y9/ja1qpthm1bxNCVMGlEqcOnqgAb/6Z9gj0ZRYOIA2l+vWoLm2nF4Hwh0KAbFC+lDDdEFL72MUZXnpGXhYyJJgoNuKcia2zPGXM/W6NCtgokqL2dSIm261rUDymH4t72ThK6oDUgaz94i+4C2sj/NaFQCc+6aj/CkkcSJ5e2cKQB9rX6QBKr23mejN9W7zNiuadQOmma+eFaqP3ZA5xJlInh6qvMpDbl5Da/1Jm8bUNS8diT6srrXCKybSwR88X51HjLRZyIPGTOJzM2BI62HcRiz6dMSq5xl9fxcO74Krd8EMJSPElww7H77l8eWJg8cTVPtXFARlqFhZa93MvOGfhfYg2TJIqf8OYF7rxChZ2KqLTl3c1Ek5cRNuzjrLgXP6KKCN6uoxQ/3pVR+Dx0p9SYvUPfj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aCbkMDegU1nBQtD+0joDm3sprgvGx8yM9pbFyOZZef0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PyFhSdpur0nKinxwCly2XnQpR6Tzwwb9Ld9Mm7dgSKNdqPMjkwxDuFkDwQLMeEGDQQebG7IUj5Ds800oEnHbvdywL+WBaQp/vQyXDYmVLXIGa6G/bKkdwl7lm9sp6FqeVoPMVRp1+vU4vnmfRcgJBfswQknwUq8FUdu0rzW5HhrVjjPJPLiHGQkD0m51MSIbcRgH6cCpdue4w3dwYdmtp8nkXfcCMJaStqmY6GWBAwRySvaD/UfTcEKwfwyL3MkJJu62Tyk/eKA+Uia9U9hZjJNiwl6I+TCgTmZjLpjlyXNCC7VoDZ+GoTZS0oQW4sFeNU7ljvpxK1yCzM36Y7iJbaxY5qPOyF+/eKxn3DAImnphxWfNqDkzSXRYATJecC20Nj5DBSdmR+3vjYLm43/DhbV8A6p4iNX3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aCu2g+FVCxW3A5w156DaOaikQ5bCffbpUJQAlw9gtJk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xzKbN3YRLnCK5Kj3S/y+FjdU70ceD/5azRx2lzkTe9/arTaBuDy8yJDoEPOGG3Db+yctV3tC1leLQI4MVXtWxMXYFxcSYim91MOGc8e+as2W/qv/9171v0YsB6FusfMx2D8oY3PshIQWJsYz2W1shE8bogEw7SRBPx8kwf4TIQCXq4M+4iWRJUAbZwbAM3O4IhnwagZIqKQjzah0xMeKySTe/sfy3gPIIyw2mQ2K7bO1w+xiZrne8n4DJT/8fKv9IS3Iv2DoTY9p3rz6PsmxjE+8UficknSS16RBROEHY590GPWPO6TmnSCHiugrXduFOfk/fLDWcpf3EHAinJR8TUjzJccbN0cFsApMknzOaL12y+qZWff88ZkDkictnNLyr0Otpf6hUsURf5qUmctptiAcrCwFeAv7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aD9qCWtmr0hC6P9YMTcHQpKM/CkQyv/EZahvsbjLC20", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3CpAO3ChwrMFwZLW7Zv1R2J+J4pviPY/U0Hf2GWnFwQc16dxWJrhtFlS8np3bsCKTRyDMU+d/qoSTJmOEpT0zLrPShyBCAFviZrLm3AqDwQzgVHb6AxzE3aMnY1QGRy80mX9AnUKd5PsJeXajkM7MnrqqIsCGuCoF6cZB0gR5EUEoZEvWb0HaD+p9uyHwvyxh9RTLhBV6vvTHrUfoaZEruTG1ZBZSPdgN+qI7apGOWyUNPig5KQ5G57kk+vyuclYOXq/nO0tCz0V2GjbcwTxaHWL7AWb/lhDahaa78xtWgp8DK4VyjdCLXJlAdj137rfReuPVZ4Lc8sxUDwr5n2OGUKN6izaRXBqm7S067REHmx20qznxqggkJU3HrTak2i/4Qn9M+72jcmy/mtNUkQPCdP41ng2Rr0g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aDLE4pWQRGxfKIQunRkQUl+LrlO2yZuM0IJ/aGMG4kM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0VYkFi16XZVWmc9u5cM1IIfUPjCjc1DdFtiZdJaC0JvxrLzRsEASd5SlE2SIlbatWN+je+Y17XiBKxkxvHPL7lT+9K8vuQuRF18az6z0V8jSCrcuN0S9op9mRj3lbp4LHod5BOvXaMzy1SrUxMq45wIFk33eqi1kfub3D1DO60v442fKsVRLVtTa8TIihEN0QOqVszKa94vQGMPToNFsOkJGmSNP4R9LEA5WkoNymEGct93k06PqEfkGj261DToupBwfVQvSY5sjwyfNRNCCjfZJd/epseNbbk+kDRIZMzTTXht1gaxItfI5OfirNQeJbwHVIPYNaIoltKi+Ice3g7hwoGrlKItjSyc7I/iV7AXW8SMJfAyuibIh/Yjg95VX5JCbOFVZ65L4/LlQJFZFauLyTmUzr0aJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aEHdAfUocSMtU0s+hLd5EouCHqzsWiWipI+/26xhWSU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "siY+fe7UmFdF1rL1BOd0vTVlVpMWatbGyD8oDKTrpFZ9W8X7jFOL9SuMdYEFa7ZKJ+rke4xRt0fQideDn7qcFOEexk4x44jkSxFWhLGTsRLvTCMIdXMpPn+4h7t9KEz/qEC6vsS6kylsRV75iFuA1OXXd9IFSQzydBWXzAnQgOJ8pA9PUiz1DVgj7SAvokgi1cBlnxHx+p/c+Qr4gWaKwnGNPrrx4rywnpcRAz5XDxQFGzMg+fQFEYn8U4KomEEHMCKSzBXJiLb6DWCcDs8MzQqVNxbeNT74NnEpBf3yyZ2yk2DAPmy0fechwDWWPUBpgesfNGEqwXQsZEKFg7YBUCfyIEUcZcdypwSqIvT+HxEZEInr4OrXdJEH8a3ib5rKXxoNJHBOAhCiShwsoUXWAoUvVWWAJLZ1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aEj9vFEgZJmLYrPtllGpRbGrtAZGi7rfKQTn2ugt4bI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GncOTxEHonNB/UVHWHi8vx17G7azdpdA3OAPmYGEmyl8cJsrUtV7Oszxg+pitD1CoL3b+/D+xbatRdq2l2PnM/gX5icxR6XlbjvdHZRByx9Rzou/m9MUSkmdj5ICSLPM45oruadIfwjvO4odlTilTe1BQrfZUpyyBVrgH7OflPStfQpEBs8ccA+lnCGOJkpuRTjFvDrF/fFzOGjThU+Z7RX1fHUSqJsFqhlFOShZCZX0tpeWA7njFwcnpCSCsLIWZogUQKFjqTge/EYYAzJodQAB9dLi1X7SeD410yYB4hpqfQvLuZWkN4V5dThlOHXfa1BGd8AR4AptlGljIgViorSJhNzPR3o86DK6rTwxMDBGn+EjjWE9z0xbwHeoHbXNGlYCgeuPD1Cai0EDT8ZfSQZkpwiVoVTi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aFK+tejeRdXubxIFtS38ci9vF97guWhxK7wf9ePD6PE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TRwJ2AQlkk06uornkItJ+oF7SkBwtmirftZyCA4uO87GfH3SkqaDfk9l9iPEKoTHXP/R63oeQkpeT1WN2J7EbGOKbb3ZZWV/hpEfbXW/J1KJpE3VEIdSl+w+GTl+dTRE3bgWpMzKda1dlxFuXGZqsgVTFAHsiLE0gsGWz/pEer8a2RqdO9OFQx9lqtEPYir5nIHSu/7dnX8Oc4ZyH49auqKEoC1qJievQv6nQFRtTwVVmlv2QnCLY0ykGQNTctEosbL9kd+cz14td2kncylHz6v201x+4RVvOXdmfySZxu761u8vhMCu724yKL5UpHSZsnRcGXcUUe7tnMVWr4r2IXRohM1ogVjmPB5dVBwSWzd60Nac+uqOHZC8dz96OFUDzNylO4iHOj8igfIQwnRieChrFFaT4mqw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aFTID1ZI+Mt+7b96Sm23uYjg1CyLA0NG7zg8lFUmE8g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PUILayQ4nybNap8q69Jo/kvza3gZAZwn5jZh5XAV24WWwyIInegDFgopXb0PTnuTj1TvMin7VaYHqZvX8JHGtIYnddZ3xXkdZPxtpGoCJUFPvVR1SEispA7tk4SwscnB9jjTIDyKAEcfNYIHKu44W2/MTKPzY9WKcqUZ8PHv4cVHbp3XOpSFnOsPNjo9sxJPVvNNCyHp+9PoEUJZ8Zl2mFapRBsJflctLlEZWhP8FyopdUx3X9oOhKO4eN0ixhK+wBquGoPTtw/+drZvzMynM3qtyFr545r2njPvbpHnuZbpW3Z66ZO0Yr8ep112Ivx2yK+/8fs8Y/rCIABrz/4/jLecziiv6CRg925Jv4O9ztDf8MTevU5smLYiYcpsKpVcsCh08pbSWNo2RgXGe4+D+5gsF5guwCpa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aFcWKkzsq52DOXCelhOXyzrJDWPe/L7ggsTyjGviOI4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tuDnfp03SpHQJWrnav/tnUcKrz+nsHKdr+jR03b6b23ewwXq1z/EuivB5kDKGP3/UYb7RUyxNdKVXm2LAlb6lN9DMoDCK7Ib1VnEl2/RSvaZTIkMGVN0IdFB03n73SLz17trYLjvIskdV0U0np8WxsmM5gyXcHmENw2f/GUld5qQoEdwGcPX1JrEzg6VwchPMK/vIb3le4TqPZZWPQhoXjiYFNdP2BafJ7KBZUbbsF77cc/mSHBG3PF1ksl3wwvvJ7r3KAoDXEtK3VDmVD5xHNDSoB+fgF2IuNMQiv446hCp3nnNJmwpI1wwCuy7oyPdP9ue2ZJmRIMjFkCY5DtFDVqJAR02NjXFkc5PJOQom+ePO6c3Z5gYXXgvR01VtyW0akmaCD1DkjB1oTFocRCzzPAY3xkNiACI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aFoex5rNulEIVqM+ciVDlUjMQd8akhaX4WwHxnRZ3F0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+Cj8MYxxbeLGZUu92g+9BwcaD6ktr3wbyxG9KFU9ZzqnppJmbmUEdz68xMXiQirX+jPdRqlyBGCU02zmFfkb0UVtcrW6HmraTiMIsZ/1jo5tF5lCDqGS4l7lTmYvf+NqkGSmvKlySB42SEflj9SS3CDa3K513SiKS2RKjiiY3AheN/IPBOojSntG26dIVNXIkSwB1GGVHHY8bMp+XRt4M7+Hjx1FzgUbM90QVT+NwXUAAUzeR+CXMR9LbwpKFEAEMW+gmlOX0vPW5KSD939z+qOF4EFx7OU+HJG5afZDLrw3QZu83O5UWyGZ9hVwh9JXS4ITSYFfcjJaLc4goZxLBFh6U0l3BBQFRhU4oK9cSy2UX+3idxuC/McnYh2cUC/yC6B+aT7GjI9V8gb8d68pn4cQFOPBl5vu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aGYSPBS8OI905RW83jJCPvOPSy4DK/Q0eo8S4o5PKrY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "btLeT6IyIsqaerXoWPLVNU0A65C3hv7m6qymySFKhePSUQnatiYBH1tyg3eyRKsWZq0Atl/6xAi7mU52fDmOC4T7mAf9q9OjdiwfjIV61/2FW60EHZMDO/FPPWx/M1vcYw3jE+vhvei6Jh3RpijKTM3LMUKvCdljrNB0OdqGR3HXd6tHxf/jYnDxd3uRbaU6fE+uzem5MkMOW/0t9shDPjT0xXbk2LIalVMcN9nxKNFDT8XPswplYcKo2ILBHFbkp5vC97aqKiHsEPaVlWIPuyq36dPSKw3JraHO2AsL+INVFWBKa8bULgt3BL+ZR4AY/Pco+fewV9ZgYTMdxyA3Hw8OIfQCZQIQ//UyiJ6KtlNOcD0pUWDG0bhILFUIhGAlUBpRExm39ftJvFssGUyh5VvpAEsgJuJs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aGedeTWGNbjOKS0TKEnAELFSpSYDyAmqha1B31gyoIQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S0VevPy8H05IOXwVHcm1ot6YX2M8mq4D3u9vJ1vrC4IkB569bKkBqs+hPkZUlyeuegLU6R+ul8n7ZKqTn9EXZEtLbO0HnXVVrgJtJtgyll2eZ8mJpfiyORaBLZms64fW9vsbpd9/hXODY6b5ntguM54QL1g3nX/dcIZ8L6iZ2aN1QtsMW6XnWJspdiigKyEIj1RkC7/mVEHewKCsm4J24fozXxU20ecMoVXIGQ02yAM97O+SYQD67XWdlvkTQDeKftPCxRW3jWzgJhowpIif2uVMJx7QMpeXfY2TWINTLY4kp3k5LDouQSW/hJN3Ok41EKVxXHlJtu2FsIFa5YKn2iE5UZjr4RN9Z40ogGwTQGjYbjM25BVOVI9QKWKvKc7GyY3/PALPEJMZkxLRKVsstjJn/7S5ZCJZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aGkbotlCOoA7umaFldj00umitBOCiNqI6iOGeQHCxP4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gVjW6tRLYAxpoQd2kt/6oRU8RQWcYoOz9738DPSdoFlMa5SjeWr9fcdR5ryCoskwXs5WQFEE7Hgo2gN1Y9hpZdmZu1TXxtoQTXZZdzdyR6w19oSLzxwz+fMe8wdPyYmwObCGRNr7rbRxi/0o2thxYsKPaPen6fP+18Zt9KLgcmv7kiFl47+7zra2obeJbUrExLJpA690BfZbVaNAgoJx5a2dO1VPJ4QTyi8W7JNjUD3zMRgd+hGrhnl7MMo8DXnRYf4iUJpWffj/xqFccaqszSLVm2TxjogIbL/I0X5e1/nGiNy/IcWdeTA7VmBnhIL8LsWQGYsyiX1QnOCtknCOYr29LgO3o6lc9qI48adBdmETuayCo4WZg+Urwg0BQ3FI8DcH2oFKMYKzKkKN789NUE3tBLkVBjxY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aHOAybhs+U+DLAZaH+1LmVqSfPizWwMoY/mzNXqWY9U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iN7QVI5lub+AuyKuFK8iWb5SZ7ykfAv7/itp7qVdgNRHn8WLPxReecDoqWkrDIX2WfjxdKNsOpdSDNRgQIbuNVpnLgN4yc3ZfCcAD1+MXWPOG8INNxvGN14OEQWnfyLFYrF7njVIIhNB+ERV5UP6887yquCfkqbOJ41WOyNOV2sdPi5PoTH6In6Rcl4tLcE3X9uNjXM4Bi1IIvklenr51IsnQMPzHuttUZ+ilhbOBPE4iw7129CnRefxAYOLEaNcHJ/lGhP+uhSCydQ9yedk+Kd0QA4CMuZvJSDPAq+F/gj9Us0lWUHEWJS03L8EoQX1n/03AIAnmRQoVV0SMUhd/PrZ5p2abjaLFXbHbXnF5iYW3OV0/I3kixBIRvwsZ6vDHcOWJeeKkjIlxkRv0mnYlq1U1ZHL54fm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aHoQMy4Eyhg8zl8M/GF3Ai+1dAoNgl2HgB6/gK/DYWc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IWJcfPKORNXGC71cjDgtIFgVPs1BW5Qd2I4za0MNOkNd6/tj1I2yDa5vR4cp2OBEiOBwi7VuzQlwywI18NTT8ed7HWJWypTdJzQ/JfwcJpBkIh0C4oAt3UQ4rxuF9A93rNoLNKlboVLjJ1yriwucJDu7/OkIdBN5soPuSmXa6UsxOpDplVI2yvEACvJPrrEAPAawomI0dAkxwBQ4mucOiHIo2EUQ8ABtNGE2CYFmnE9U5zeC2/YAadSKu5SHh90PKdFl30XaAb15NBrZ2cqyRRrXkC9qQSK/PN0m5aBPSI1CJmxFEdB04N6A/Ii9hZlWXmioOjNWVM7E2EgZqosrZMEf1zI71H3k7sORbngewYgeK2QG5JipKUesnCHO1CXK+LPaIPtFtnFm/VqFeUixLo6opKKcuIFq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aIGvB0OWXidmfpe30NUR3Rs4o/KZHSh1FXdNz9uIy9Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RuqpU5jw1XqcdXn5i5nT2Xfsc+/yBW72pgVDLCi5soroueu8C4bazD3sQnHhjZbSiZOdjeNWZ4nb257Lyrr9urwZSd1Kv/hvI5nDB2gerA9JURcu1G3rwYkokP8tCJ6Z8ulbMSyUYwD9G8c1mzQ6Fji3/ExAfd14kpJgabpl2WPV4L67Gw4/Y7St9GwgRjgDxnLqwGQCH4DSjkn9o//DsnoRKpmbsoy2xh1iCF3e8yNtRLlqZU1Um8THGBNF9vVgrMVSxCr9qrf3X1eoE9fzCJWs53kziUgVngBEcyt4Q4C5Ej3OXrDJhoE36moxW/kG5HBXphmsF4XmOza9t9xKFmnY1bRQYzoHrTKQeYyQmpTJNkhFARJpaLlQlcUN71SEc/jIbQywQbKHuhClnjLNSTWbXy0ScwXj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aIivmExc+aRrX0SDzo9Nsgr43CNd5UeXSEXI8JFjHI4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QHQurmZso6Dd9yrFf/8+CHNBEvWzav/UscU3xm/iGN3o+kKhASit8TcM56Yq13PUkVaehpN8OiwL9SaicFnM1FkRZlXz7gbuMMj39J5uD0WBaIudZ46ebV5LWVUeygCZ6OZGyl7NgRMeHCFLPSchSJ+kzL3Jkhm0CTJR/zuHZJqNr5RyZrj+1TBPx9/qEQspO7ESivq5LmG1GYbh0Qj/xXuiIaHsiy+X1DhLujcunAg0EvtqWfaDCbWSdbSNd3zRz7+K/cTkUznIzNYRc3HpFp/S82mzBH8y/In3AnezqiMNJN3/K4qt4P+0RcEB43NMdyYb1tB2dfa80rilReqWlcrEUfD9HGJcv0/lboL8g0FAg08E+PYhhL2piIWrF9u+vdqyqULUjTefqL9AjQ2M1/T+bGl0prm/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aJDajb5LLJaTceDTFRnKt/Zr8L9WxGsXPtacvoDcStM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MVXSh43yttEo12N+mElSrc8sng6+UN5o3jA4j6fzTpXjzNNvGEOlW7xWA02J2M0S7XL6UwGwAMGz3a+eiI2ZxMPOEWH7BfwYv2hVSkYhKPBYdlltSIHN9D//17ON5WIqCyqGXxjNdQRLCoHSCbrjAeX84+lwosnzOcTnHo499vlQJYDELJ+OXifvh4kU6Ir6n1snflwcM73mTRI0Vv4V9gwMK9E6PDAAeFkQNDR1ug9Z9y02wWHWzT6i6qQZNwj5jnioMEehGmqBwEEJTJOg91bP/3DPwJgycccLJ1SfRxDfvVQuBvt2Um59pZXWVau/38EIfQVFMrD/DDy91Xl8yaZbHCiQEx8Hfcz8UKM37HZthvSK0BBifelc638n6kVay+J4cIcaAJHvKXOSZpxVRb5DFo/msRXV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aKt2wQL+bktmk3mdXIwlOPWlT4wcceC+f0TREAfst3o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AgvFMhNcREhOdxRcTLuGwesFlx1dCOupznxF17h8pgwAXVwSYVDLECtpd2eRrnBKDSWQnE/hYon2Zpn1vTnMbJuiWNmdFJ6Ovn4ua64214aXHoIEMcep8TeSAwtzj+5ibCKY9SP972Fuzz7A2sWhgDwGpbFqwiWBVPK75rYrlk9iGWj5rs5ahJMRGb3IsYMe/H+GQzBY6WgpaczxN5kyvdEscD5pViWTHz939JgYEEYOtVldnjkbbgkx2Iy7uQC3eU6JSaiWk9Fdkhd23E/ziFajEFVRgf7MB6FvGeYQJPCLIQf7uM5zGTopjDX2d/pahLLFkvdt9frV7d6+deRRD8kSSdSpr1MH+QCMoxVxp/PVHPxpAlizMX2lfqdnRuKVIextI8WzoE8h0ENHG3craIS4VPa8PDvj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aLuBGm9capsKXxsKrIldOzL1UQ5RFa27suJmBA7Qu+o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gQH0oc26/qnlo9ywueGVOhc5vTE3Dut/41qGPiGuh1sZiMY5vf6KXCLQl0z8altKoeTF4gcyPswlse+JOVdc3ry/1E1FeqyTUNHxtbJ/ZX7BIHm8WQ8pGvTHdH2is/eRS+SIBWa4l3yC53zC0CL/EHGtCeF1E67OpG05Z4yhiGsjoIH9BD2SNr9pFA2/h57M4vbPSug4lohCUD32hHXIlO3kCi4CuZoud3zMLAoyP+GmnwHh0Nd8iV49ICvFAqbVcgg95D5vHe/0hO6PtgY0J3zP3A2OAMBrF0zzMzRMdr+2dXgx9+CNlboNqZVVfMBahyPjGvbOeppNwuCD/bwOPsdtOIJ7bXyjsamTLr25GTBWJMlV7+/GHepDNhpdamuNnOCxmf3sI4ODkQcJrKRG/lNwysaW1iMa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aNLhnM4ndhGo2Pddb8YETDPfdhk5OawgpchkYCq5A1c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DZRlUV1QXH5JTAhmsYkwBSrOscrC/wxzIS93i4UQnHpUcnS1u0RYQp4goD+TvxiGdmHjmATibVX8ZCGi9Y/GaEs0smwmBqTwvcrfMXR0DlNzZEQxPh4l6JdXF9bp1eMOOeUlLnJJ793PsJbUm+F9FoBURDt8Ax4iIz8TCSYmlheNQ/DJ6LLxcioJtA7kRP14Fm03h/72S9L37BXR7rMfJuq0g3p5HJ9s10Xr5FudbBkW7A2KZ3R8JUlZuEB3puVG16OqD4YfShIs10RXR8RDK0dFYbTLylTzs6t0IsCjNXnuo7HeT1NumPJwycXbqQAr1FwAAQnMhbw0o5OB4LLtLj9xOCQsJj4JHEXqvB9oLHoYXSy4Tf6d3LzZk//kyjl+GdcHRmXb2xQQ6g3HYGvo3OHR+rwKp+FA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aOJjFU+pdmldfJRANIisLrJVQ7YSsgwCjvxQnP/GLIw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ft6s5helwrFabiPQkjQ1g5CLGVgAsluXyKVvQhtAg490ZkqBxid4V7eIehr4qzAQk/VnNpT2MpIo6XFMhBhTQ1Fp9VPN7a6LqjhwT2T1ovDrK9mcuu3z/FfmZO0jX8gmI85N9uz0pNmRaFzHx2E3AF5WAtAu9M37wVHGUdo/P6fSh1Bbb9uG+JzLkmZuNH7DONGe/wW1zQnjgh/OjROSC5F/Wz6hPHgfMv5EJtTh0FD/NVu9Y78RP01zrdi/ip/QSIKDYgkG05wKjr6+1iEXlOJxkjUeaRnBqV3smb2y/xaL2razm5jQIfvjtltdnkI4AweEHpoeXHHYMOR9vyMDGlRzp9w0faogtXtvbTXsOY1YeOYNdPlTrC2cGrfGnMGiLccvqsmi1bCQuU2o+RjPRRS1F4L1HXik", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aPLYDt3CWGuBLHLdKRtRvGmXlUTthRFmyas9M4A2AcE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gFmz1mmiW8abxUZevZxQi/2JjfOCtozcKZ3q12Fvppk3pdeZRg7NbJ+I4OUoSILpRc2OzkKq+jxr4UkGFRdt9r22UIc4RhpqlVWtulLGOR3nYTzChbiDQnXkOzHe1gGp3yiq/3vOqI40QcJyV6PFKRnXYBHIYnlw2R8dLtsIIJjCUv7M9nc3pMgZyhjFd7gU4XchKho2qpyzGqZsjMp7juus7IfmyK7SOoEypEHR2V6qssuwLuRkpRZZlhsrRrvAtyBQVLi4Wny9Czom7I6GciS7PK64Y2YReIRrSyNnG63mMvfVGdN9OHbvM22qZ0geiOZRqLpkftQmMD2+hpcUgxOWnrlATZIi+an9Ujru+Igo6mitO3+0L8Y68eKqLA8kdLywcgRKyAYhxm9hcCFkppnrLEqoQHX1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aPW56JcUfWkWPnA0WeKfLqA98FYbxLfRWYQtEqaQ8XE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FybBYgltKbRldgDz6+Tqu+PhWzY5DJmt5rhEHRdjvQn9z5+1yRwD6Oun5bpjoTLEU0dIaz51gYyf8NH1wz0zL3xskzMCGO/2oaimkHwGnTaqniPJ8yKw8vfbUsrzlmT+MhXobThz2r8hF6b477VNSLMyPKnlV6m9viwwVtGG64vbUHX4b+OAvLm6aSNKItX9lkAslXXUTDsyx0zZZjjHALLI5ZP6mmD1pEib6m4Poc0Pcwj2zLA2kGC41PCq4WNOeSWJ3jjItX7hNk/WEQJRmYMfuy87MBqY+CqFi2fApO9UM65yLApeJcavSWgxrhpButMeILMopKZyiehr4o4eecffaK8bu1I0OenZkh0N/whtg2YSisxpl0ntCUGKrNSiwvP1vnDtD+gHu0FNYcvnL0Fkjho3YzDe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aPyX8zuhQEU/A6YQM+KyhcGL3a3YOiZwbiuW/xz1iLQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tPfx3vf93UgbkWc7r5uuo3PabyZwdvnuupyY63RGeYZZBN9VIU53kRkYYfhEdvIwS5RKyz1/MuTBx1OCdXLhlMx+dBq1VeqEB1MIkRv1JQaUeh7z8UsUQO1L/YwK3/vTCNf5f4zvmYWsshKItpKqUlTWq3pPK38+sEyiSaS8luXYPzq8r93vt4b2LSUtF3KRbxebG3fLHJrFMTUpvzHIUUhTvstfaW0UpVAd1xgY5tS3c4nIGNnte/oNKS14RwWbVM2JAHx4MpTWvY8794SGkDBYSVnG+1oZSOICDEtfoi1goKC5g37FUHgeCN22SPN3gC1zwGWqn4hvcx3ttzb2k18E7mZy006M0H3olH+tlTtObOIWBhdiC++zs3eCihuxSk9udt3Zg1wi0Xz/NZXOtodj1zB7Ccmm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aQzJQJFCEp3erN8BC3qZBU81df4/oZrTKuvLq4RqNc0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tcizXJRbH6QsVsh2jYTsAjNRSllgQCmwUHUFB+gfo8P9NoZOefHcyuHy4yg8FMbns7ievJ4vwvGwNvxsS8MSoe9cyliitSfLJUyk+O7uX4O/CP1ncD8z+kmUo7kGyQDWEsGRHvVmDhqUQMu26/zQBneOpD61sFFihLyL8I9LB49bpP+aMvcPcOKElOAWbCgVatT1fjqoT/ojTz33fHECIQKSssnlOVSZ9j7zuR5Hvi3aNgED1WKOi0Mk0WmxVTFqeGci6ZkVldmqRpoOh7ZaQIvpS2kmUwwI5ncZY9PKGvYSOUoq+ZANay5d+ihVRzr3JXR9X9gQJvCh2534kVkcK7YHAPZ9/4MKEkFrwmdEwC486wmbI7UlFSa+BxjT5Q3hKAZJuoHhotTmDGKJLPMAFJAHA/KcLHVk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aRc+W1P1PgixI4eubTRwi95TQB/mh3Rzs7vdEu/K324", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LvZNff9EmS5urqgjyNuJ0JXenjMLtIUTXZvVX00NB99Y0lpAOXeKfzb+1fmExskfoIzGf2Ve5oHj+geU2bcP0DEAgVIxhY4XSnfPCJ6i7dag8lbPE1/TFpYC7nd0K80vPo4Ng3h1JbcRlK43OYwa8t8qLP3zgZLDYcdvqem2zIfeJRptILMQkNrxBbqXhtFbRf2v1Mq7Is3m0rXXA8rJQ9VsORqcalfbwwV2f8gg1OcOuzq9p5IvltrdyRg2XGzE3EzUcS6dpA0gcHgbgTjpnW+qc4DC09OdttIedT6bP+tjPSDD4Kuh2jpXbucMykMlTT079Hsp5fsie84qiFcS8e3BAjm4qjJEnZnLEImUuEhAzzaFbPEuryUQBR7Rj89TPK0tyfqai/PmwwYrDZOCXPv3+5lkoA2L", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aRlSdK/llauHanzbMWolIo0IvuRrNBXcZxazQrWMKP0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6bWnOTgQY16JplO3QhTfz0xmwImBLcECYIarrE+ZTe+8EY2+/ozNlrDVXeVVkszG/yu7CtNSOm/gLjr1PoE9cygk9Tu+jFV4gxwlzg6B4WBVUfWb2x8C1dkslOxktbN/FROXzgMASqsDpNtzD+0/XuGxDoGpJA55fG0bqaVjSK/UOSjAik4Rl7qIPiMJWndXjXkQDZZHQHDeJhxHOT8SPwjHE5Wn1cerIpjfVw2U6EniOng3mBQTZodin8fajc/EX/lqPwwKH5WsyUYwXZNAhMlL2EZ6IY9IV4jeGDuA/NhGPxbL4jKJ6TKdMd01mt/xpQxxJa85EZMVxwJIYdDkWAkGgHrgvpk3w+gm+ASQvwijK2POt2aWiC29I2uCXunN8FIxoOgj9NMO3exdQ4mIe75eORLbECtl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aTDwosqRz55hK9bqNFWugEs41tzresqc1dO7d1E2hig", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6DTrpy1GW/XYukZD7M1MyIMwBgeWuqLZI2cgP/YEn2Fvt7V/HJVA+Xa//mxUheE4cA65nSjw/ihmUwOj4A52oMArOG/jPJCEsQmv6bnuFp2EAeZVluZOroCKuOQmcPxkv3LyJvQZ0UrpBywlEvOUOS1Y8k9Kmmm+6rXl03dTxO6ZnIZwHWseuyPsStpODColJ6PQLi54vxZo/cTCG0M93h9DB/dWMdZpZe+xRZJRRYOqjSB7dizmGydWcel8eV+IBcHqpNf74+n2eEQa3XM/1zxBfEeGhOItMeiYm2ebiEjTw0yg+KaMBDfpuHkzYELKPft2tdAzMq402K6En/QO3bGu9yVKh4Or0BizpRv+aY05zN6NVor1FxNDWY5hDb5irglg9w+hrZQAw6VgeipiFbdzac/5h4s+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aTJkzxdZpjdyFW0nuCQ83AJSa21ox4HgDtCq/n5uWM0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s5Er6sDVrlg/4ad3H2Z4OP1WJRsarBavfVHwNiK3l0i1kIoSKzx80fvQjWXZKvlFFIpaCgACjaOqDgf8TmtE1JxvSU3Ra2y73p+748hPLVlPgWeGYTfoBpv/xejSHTjE64bQs85wtMvk3lKWMhpzHUXmrkupjwygMVZXUd4+TDAEgY96bNWTbDUqMAkhnGAf9O/ja5l4XHD3/kknWuo0OBiUjl6oxRqeKque8v61N10rWnCR805nblXvZ6Fd/POdQNSlh5JPMLxKbLOxM0UUW/wq9qceMuxwlgCiFY13NWEWKkiBxbI9VpnjGp7k21Ts6YN+QX1lNZEvi6+UdWn57No11NUrP1e7qPNEf88g360KvWTLNGCqEpqijhH+VyluzoNQriGb9vTp7n1XZi7tMLFimNp5m5DL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aUWCIj4Q7ROQR5CEJ256j4m2Mi/XIllqsHIXzZ0W7dc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aywKkiMao13fok3z8q2onqENKiHf/WEzzedE6iF/qQJAPo9jlf6B+0Unv+r4WGJR83xxjxJ6nlusYWdWDLF/9Ps+b9hIGYP1hnXG1UEe3Npd8dJZG1IBUX/VUg2xn/LFTnSd72zZsL3K4lzWX5zrbJDR56O618DVVAYlA8yZOrqCUIZJHFcGmbZ+tr4YCJOpw2tZczEDC8DWLUEe8DocaZ+gKrcdduSNtD61qBNqLcdINO7Sf5QdoRMiDvAvZfA+vJDAiUWr53X6ARwDZBw5DkziVrmYU1fc/9ciJ0b/lweW0hef3QeV4YwQfQ8hvgINXtzEwNPCWle2ze4s667m4oriQhVNP7GnpmYoj4lCEx4JaH8uV2YdT7rbwWeLPH3qrXp9G1Ze8Ga7Pa0gFofLvFX2YGuEaYra", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aWIeIRAW81UcuMsxutYvKo2rF1y3yG7atk/r+RtjWQE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x8ZRZXasScNk0IoXnqgv24W5NFeWZfBn11+Apprs850KvGyIpZNEF6v69wNWm060csGTn7SHJRFZAb6W9RHoYOZxO9pnCpk7XGFOH5mGFd+EhYRx/qTCeoxEOZtL7cU0kt4xinyQdoJu9KD22IqQv2hfnK1sQM2jcoUJG5cDs1vQhD+5tZ6B5O7bb3nH0L/Slv70+JU+wSs0XR9klL0hiknor3ew7YfIQOs0FjdTuuVPphO9cNe9BzL3mGWff6IutwWOtFdXgV1b5TsmOXaoBcLAv0SX1QxYVlXLwqbEE1LjestKltXbM0r6lI1FORSE31tcSCdHCfTvbqhelIPqwGhNHk8fOod+PfK53F881D2qK/8iq50L85a4ju9SvoqPRGaGxDz6s2U0VsaoRMlz+toYymEYz8kr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aXVUf5azoRZew/YhNLD5jD4bFpE9RwR38+j1KRrH4LQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8bq6E9nmghp1EPM5sElkM5GS3xAiodAxFiBgO7eR7CSTQS2Ym8YIB8T/GhC2fAS3t3SkB6l6PKukIK9Z59IBQuiOOnRMK/D6HZGqLbtkh1ho2WAz8Zbii0lPuntrsI1VEKEh6Qhj+ADNT0Eu0Vfwz7MI9FajABtvhYTl0MBt5XBpxl++olPkyc6iR3nwx5MJ6wCv5oROMNMHE0zfuq3T4n2jlPHIMJQlu9LN28mOCr/oMID0c8hPdZ0jC5gVPFAsFXS3MVzgwK0bemxePCzMGlWwtvJHWFR7XOTdqItgpPIM+eQUSrccAkQYbKZZqfWuGyzo4WAlsrv9U/aJxnbS146OpeVKwGU+wnXQf2Bv8YrBM7eKq5HYM7wvwHpQxIniu+9F/v5rR4aclpDX+BlEQLoK8JBWeQcR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aZTwTmbfzr6QVWK7hoekmtLGwadcbRT+3BOHdZ4Hhzo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "59nDp9MvqIqo1erEbDU8MDFfSni71ROXkMtJ6se43w4ZxaBxVE6M78LziBs8/8nigrifFRMdTDCB+iEQ7KMW+MdvHSX5EIJLbhdTXqts32Cf8hbwcej6N3zLEdh21yFhqBiebai5KNVdIHJ2ls5Q6ghKVr/wHdYcIFE+IvxHF2wHJm6Chuz1sxj/5lKjFeUiVGWMRxXf8HQQmSuiDPwm1HvRVrl5baifVtUPF5OmYrfKN+yDqQ6ejKxp5Lbglg0eo5w4FBvtMxvAWVvIdp2Z1i7IQmw05G5SRmxfgDV5GkT4nFrEIrX9ISgNXBolQCa8VmPSclYRRLAh/D6Jd10x+vQ2XCDAnh50VCsNvQyQ95mVKVt+oYRNIsB8u7byYQscJEhb9pToR2qxH/NnM6Hh9lGxDOKNZzfJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aahdqbrkUnP8tCNRuCajl4vGhP8CJcf3ot4yiiLwIaE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1BQfMesCVsLb7BJX3oXh8n+Dhd8TISpqz7A81cvGHpUIWVfVJT5zmFZ3q8aOYVvGLvwIoY1w10D+RU8aaK8EztFUnLfx7VLsLPg9V7BVFRN8saxZeu76v6+BgPpgW7HwTJ9e+m3MNr3UvM9AtxpwmLQopOWCjF2cK4NNcN2cxuGWd1CuaGFoQXrIaPRHTy2yBwvlS9icPwJDPiIRV/KXw5wbzb7t6LgwPpqjW6wP04ZxX7HQvXP1uKOK9ZUojD9ikFjTfWECBy2E5Q8DIW7ZDaDyGax4vB1sGAQzuOcxeu/qh7KWTdDc60l4cAgrx3ULAHS+UH8MUVzzuMCNGIFbs3g2y8UTvobwXkEcq2KAeccXqeCSbxnF95LD1PW5V+2PrvuguSKbqHZ6cM2YGlWoKedQqzqWazmk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "acWGWV9cmIOTtYeq3KQf8YpIpDK2Ia0rQ2xjslR7Sg8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eF8Q4t290l2KDHGMx/Eg1dWjRk4D2/vxCU8/sjYzlLKJMgF8DlUO3XXxyHWLHp26vs577zzEwJH693iOsKEAyTLQ0ihmY/5YpD7jJKVbwiolSVCvxM8rV7tqC/EQsWtZ7mIsGODSJXGAWn4LDHydUfCq6B5aAFqMs9wQHP1g5HeP2XjKbXLnNFMu5iEW+Yde3vl2Y004AfXtZbZEL2zULC8Oqcfpb8fnMzRl5L8WOh0lgkfteL0nqmJi2oCPEBIi4BrnJbTD4N+mQdv15u7KfXtjxrizoLmsntG5BLyUA74wObrusQYBlIZQ4wlVDEUQe+s5YKa1BebdHxXzVDu2M4MP6lH/kaij5pRyKwD1Q36mcwxbqpUqJjg23R/Zpenj/3X2GvPh61SOoI4C7H8oLPDzAdUJNSGP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "acuJNy+Ees8hyERd1MZyei3JjwlBxGpGYhpgFUAUGHk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GCse0SpsM9h4I1UH4ESgi0FGFTyhqffymQxmai7jJH1kSrZX02Um8ON7EpJa5pJjGB4zYIwbNwioQ48wGPN+m9TgND4vJdy/uJ4wKDoDWGcmPC4Wl+aKP7lI4DgkxyRE06jEg2xz9IO6gg4mX5yMq+kiYdMo6zbrOUxBj0keicfJMBQQelB10WaqmAwcjGurQBqUXYL4ixYzOz+rlLEFfqu7kUEk0xRbT651IYUnG92vnho/UXoezvh9sD+KB/dazxUSm0eIKTr4eAvptGAreHSohk+yGNAbh0i5+zwLXLGxNA5HN7q3RzVeZg8VToISuOxR8aMnY+q90Ef/vkALO3AazK9qJW/u8jiT/jqB1D4Smo29uB+0Sc8buOw5kj0rprGqBNvp9rPjqBwuo4GPQmww9GHhJSJZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "adbwdqedvQCTjHu0ElfN9MaglTDWTeyNMM83lFhucRI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oGafFQf8z8D+LqPt6aIpnatoZnfXvcwADezEIlFsF7/E+rCg4+1ehb167hDJReXkZ90eQdePntfpciJuu02F5NIcKEH60iLxfi4ZWU+85SB2w0zHX9zyK5UfkgwZHjB+2VG3n2/WXgW+9qP8HwIEmYLR3s66KyIqjn6sB9GZG8kRzpKlJKajWGgU/k6iKTkRtNPWResQ2OagnVA+dRJkE8BjLPqGxZwETe48BmUeRDzLUtlRZecl7eh9fnpA3iwRtigSI5huCrK/mr5cwfLuqktl4BH0z2FsJZd/6jhrYADLKgZLgKDoov1rUyGuateLmB+ur2tSK/Kmr8FrPxlSvAilqidM6Su/EKoLMZYuBL2CHMhUa6wEmIXMLcRW86AZamnpK+0WHv17nBv7CtvrehFT7veuw4Rm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aeRhgX6EG5VvDbpaLMctv9KmT8O1uc3Pi1yiUU+qwC8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FnquqS7xAYaHGele5s5do/rm8PMrWipiQ9UVmnUqSEoX0TWXnmLh8pUL6mLoFOcEi6UiMcSfYPLo9rJ8fyAoNC9vS/XAFYagu7uYFFrMKHs9Z82jESe/mlzPM2QCRRJIWIoAQcvVyL6815rcxNBbrOJVioMJHxu3R5JFgi7ckTcDKtakEz7swvmntgm5cYvyx8KqdTEn9evplUyg0plX/1R/dnJbKNJHo4yhbZw21NXyK1ciE5mZO/wPU7+YE3Dhb7AmfmqPjAqcvo/pA0J+oKWzMn+SNUtzhNEs9ti+KaC1ZUX9JvwDFFsjUoxgPEtjccTSY4/3VO1FPYnBigs5OSZhzwmYatgPOAoGd0Lv4pfRpCWoH20A75wJcAG38EYnyA1i5YRH/tvipFYbKuCI/DKcQ32jgLRB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "af6xCvbrErjkv0O2XFKVl0gfhNUOdowdhUDxjWhJ0BY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W3T8buxwLEPRDEkVDx7xmyhjUxltbwET29OGeTtPY0b2lKbtCm1MlmF89lLX0MyssoHXgqgx+ybvjK4KURmvegDGMmHhHaudOJh5mj8ncJVhNe6YF0aP0Yzjy4Ai15b1nmtEIfSN1bN4L0hzLGtGlAg+1A2co+MEwwDE4EY9ibgQOhpKUw0BbhpxzGeHtjSFsQYSI501K9idCJhnH03R7INXZqAtJ7ZqPYgFAD2bHlTMNoqC7AchHHmIhHHh0nmrfDZBmRCXC/PnI3+yqoLRH8tqmrIChXRPxy8vJ24IVLFxxavTr3p3Aziv1QellKm0LZary0wiJmBRx30O/nP2un5KlO/nPtHBYuwUCsnS0cU/sd5irsLiloodEw6LSi3kNG8uUjpV/hypSQ9ABvSmuV3w+w4ClWu7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ag1+TWIJrVW+vDeAzcSYnAR/4mapi3WwrkjFOVY/4RM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yp2vzUMCVTFNKVfyn0x2pM/XpVxslMDRGDmDHL0fObjSDVVr3rSTanK3yj8gFNT2xUDZuZ1ISIUk3wWKUUCEYR7ImsSR0nn3IJV/1tDDHZBe/K62Mvd1h+LjGfc8aQcm2iKa2/8QDXJJBFCxO3KWf02YMV7mmTsnyn4grYz6lWi26psb428ePAow/j2KZhJ+1uSAaemnR0maH0wLG2GJ4l2izwh7CxGiCFco7Os6T2lJhuSGMNLWBODFG8Yi3uZv2dLZ6FRdy0KD/MYWNolxLuvz4GGD48BRAFjzJAS5cawhl492bJApgbI84mIYPNCrrDdxiN4H40girbPAuMIaJwN4t2GQCQbgIY83QMMqLhiMAawhvjqywG/rzt8a4xUFKhAOtq9v3Syixc66Q/RKopjpIHbyWCNi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ag1mHU/PHB+GCcOHw/pVdtRAVdJqZIOYlw86a508Kjs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZmfJGvr5iVLtf1JsdPhQMoVDx7ZlqCfwsZIKjx6HxWtbjLYoDLrNxb1/LAhu6Ujq0e+NJFcub4dXjCj3S1d4NZLUM3iRyTyB0cjdyG9a2DgwnNNyHtyd+XBznAJI89BgoyvTjn6PSM3fe0hCjsEGFJDNiJOt/OTGxjD5W9unvJXm+h+aJ5AsNkOv3dAEoLWyx5Ud7Mir1qqRsXSL7jwewlgV+RjkboptUvhLt+nMOVIQTks+tcdLkPxyZm5qDySla4h96ep0eo9pzQKU5MhclgV5x62w2mteOIpjZf1KJn4kPl4IqJePxhc3uLZ5KimByTxrKVb1qWGc4cIHZDqlWTuNLHZIN0rvtRAXdHh9iIRC3urxafiLLe3VQK66yxUGff9e677lqSXKsOsQLZUpobhUU8BvVIHQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "agIQCDRgj4h9LZxkyvYez2UPDqHpwMrWw/RqJhj6Aaw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VUNZYM/SbTt+hpO/Fe4cO9X8RrizfTLvwQ6ThtxJCLKppePk1zj7Eo4l1Fc/pA6RYGiJwYbJ2YCQpI5yawow698IKOcRsg/xfnCnNLJBeG/OoAl9zm6rS1x+6bqqTimIztLh/5tlp5O71mZ5w40lqVz8S7DfdFfZXu2kOH6da91+YpG9mS3mcdhD9pkXqc+2n0tHF6hhEdzdrhWR03mVrzWDE3yVE0VsotAQTsn/bifFkTaCV8cSZK1QywGEDdMdrHDmljN2n/k/cs2pOk36JtIiD0jlcYyTGyqwD5BEy44Ll9FbtmiIxdqls4O1y5rAAk5LUotajrhD6EY5nu2BuWQYYhhwRU3felPpXHTjo+nPeihleOPcN7XnG+dHywRar2SikE/28ZLhq4UzumXwy2aQdQBsomEt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "agulqoqEEh/ZhEc65cbeD6gBy7qiKbxCPRvqGBrZPqc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "02Z2E1en2lAMnfJWojEvxfJKquTVu9L/QBWk6M8xlaQ433m6MkMd15TiadeZ7yVPMMOUPBjqCfCAT9jXNJW9eKzLbYjUnqsekZ2DDxfZ538UBEm7hJzGUonT/HPbTfsUfal8eScTW7nJANgPPUKpo3ntda47xOKDNuKbv06WV6ehWvaNfZNYsm1ty7CNLI1kCmJMhRVlZXaeyK0HErQf0XjdtlHAt9iutW+9ULUy/ZLWcxvKgbxqs+sPgYvwwhszPK/THnrXQ7MLunU8Yf8RDBQ13wjfzuDRg+HIlF1xivNvoOrPZS98Efeu3o9TE2yFsua3KC7XZn5WXMbjhgzwjA4T0goeLjbiifvt4DYTkXYOYp6ssWcIpcXXwbxze9IAGe0RIpmQL4CZ1JILQj/Rj06+iG9ksldy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ahIbRPXRaDFLWJa3Xec22VpYJdhkZceImq3o+Uz+U0k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DKue21FwbjetYoqw4q/eJchzR/LAj0e2QwsDdrSuZNAywya5RBVxaj1CoEpYtWIxPwIxchJAuQZ8nPSxqm17FMOUMskWFNHjrESL27u/4/sHZjmOM1TsRdEDY8/wwb6WGLZ+Sadj8xnAZ4KFXllI3pr4ihnPBG1RoSj8tspFENO0KvwJyKM32/aNM/nbyNfAKDLUpFxNv33GMOMDsDdkoYcKJiGEZK6FdrLekC7fHMxHfd3sHo1tW9D26VX+P07s3kek8PkutTu3XZ6lviEI9rn0c/3eyhkSX/B5+yAEb/KdQJORr3L9HwP6MJS/oxEol920fEzF1H2m8zOMfghB2UWY3UNXYkhFXOpoaCj4BjbONannU8gEf973ePfZODJ2AW4qT26CAievhrejU7yulOLe/hm6Jbow", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ahPQR5HpC9g0zbyhg+QYRlnuNXAGcklVHaSRKR5etio", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "G7sCl3Pxp8InSx7ZRVgcuxfXvp0GO7VfVXdVWvWFJZvOGIG3ERKeZVmb005v/l7sspr5CPN7CH12ES6CZcNlg7qT1z17/XHPGsnOWdtCWXfk5lONt/HeZjt4z1GmD5/+na5/aJG7ja16aLlxY3ex/wkFyFO/KXUQNx7pzhkV+cPWfHIG5TA4nwunwVGMkBtcyazrpTojMeD1sYpLB5vhhtj2rc3jq6POSahwv0sLqLZKa5fGVey2Rm3RS9Hzxjroqrn2utGaIVIqNT+eAk9Qq/ZtjBHWsHauhWk9D4ZTMIPn+otSl/ljPjHjI0RVGdl9elPg58MBy768M6KQM1zcJzfJkTG6forqEa9h9eX4+SMOTt4TNN7GxNBoyA12+O0KiXw9mScpuFoEcf+IcDUf6QQbi7WUk582", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ajyjkrevvFbm+2hAyUhfHr+cSLRXPPRcgd36ViO9/Ko", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wHVpqww7I1RjprkUc0g1vq4CDyZgj8Lq6ur9eBQ1Yp3jXFt+nVnMEh4XJ10Z+WJnfG8muhv9KdDWcCeg7TSzfZVfrFTV90dXcVR+i+eybVagqCXqmOupbWvRzuEn+ls7/WKizvJBnrMBLQ6zy+YXy7BEYXv+wqxamFvi74fcSFQvGwi3sOLobjjY/n/3oML6hjEzXrdVplzertSNfQzo4A14YSbTPCwsLESpeeLTzaL095TBgnX+tRtx0Lti3ULiUGMnRKH1f+FMvahfQhwbueFlszJ8tztwbgCzO2gJXkxzoE4JtB5766g/DimY9/aZjPwiZXVJzVbdD3uAsSQrueaX/1BtCLV7H55+hUXR2XvtDvhvsgM4MIxBfvpKTonHbo4QYUorog85q9e3M+zpiBtz8Ji5IWUX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "alxBapm1jpfapb9mcWsDG0RlcOslMoVbgCGensnPtMc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Pr6hEJTf0qb8Hs+6r6/v7Rv581CfzuM4TLPzi2rxjEbJ61iWOHslU/ThLawIbYo4UeRryPvBLDocr/EdQj8ElkXT/cIwmG0wymdLUZdf4fc3ra8/c3+4+dmhUaYFOIjpaGlAvGQgesO7l5+oV8ET1SaiYvFHMC3hm4rg3vuDkeymkdzXOkUkYH4a/L/Hjh+om8kVAnpfVXEKpMZXztwmfB5z01wlbCFT8pykIKjdYK25rcK1rB5fcLzRjTOwpFhm7JISj8/nxXGnJZN86kD6Z0T+G4xlRklTD9T+GesdnKXjVFz3v3dSXFPW3yZmZdxcmeakYv0wpQp3l41Hq2ZNfImHMTSbhA088FiCNcIccVz8B2EHozr3m0xLHX/tA9xq5jOgKZAqFBsQo65GO+obQPdhCOQxv86M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "amsbAJ5MOPwIhnD8GtWqPIelA2xyGgGwImxG2DMlvyA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pY3RiQXgdarLGE7CvCBMJY96GOTXw/RUxq27DdnhipRGQdg+ssclXyepm+6xGIMqip9dSr18H2KxGCjKr8m72VBOtqzKtFeed10OEw8K9MtT44DUsPuUNa9Z64m1TphupPxKSCyA4hjTXZX8ZcRf913x40UBQxK/A9rmF/t3x1sc05bZaSizTcnT2Jf+D+FIUW+U/Q7ajdxIogIBOEK3eFHopsmQEXPdylKzwx2o4ia616iIlA3pQvfJf0U90iwNCLX/d0m9zqSqs6R7Ye7guSfs/FBMJFddJsGNARtw0A+afeiz9Yuap90sB7SVKygh1gYGAw8uLzNGeKqrA6mLaxi6+BMc2Irshd3McM6IrHuNH/aIxkTFBIUH7TVHmZhNIjcPd9dp0uZgobEHfaUBeyNBYiBgp3GV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "amtNT5xGd2L+f6HYRMZTWAsOzn8GziIfSO2KK0QNEuI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eKBkWNdXUNJMt63nEBbb/8JA/YSC7tOwEVcEolBAlDjRv//HHOtCJEqCQGF1Nt23Y5q4IqJm9q5qbtaDshw9Ps6sCB3cc/KxMZ8aiczwAMwiYKqWRE3FuGUe7Tjtv/EYKpMHN8J3S8Xswr7raQj2aMB2FYtSbO0sUtxP5yjshh3PDMEb2nAi/dVinxe+hIQr3fPlDrY1QxQMfzZOazv5wzo2PiNEnDYdx+/y/H0Oal68ROHKFMy6PeB6G2Xxc5XzW4CgQiJoMb1UP7rJti/8nmQMukT5cfhDXHyk+WQbA6L6HKiweR/9UXSDIshqM48pwtUHbZQtskwvwoa3IM9xYPGSrPeMXqOuZpTUtw2vMhmzowochCGUVILg9Z3DkVGSdXCr6D+yI3j2JuS4GCflNm6fY/GWKv8Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "an3KnCfQHogUyN8ciUsvEuxjFC9/jQoVHJlkZ6CqJlA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BZmKY4jHr85n3cmk18Ra77BYFuN05u2bOqhAgccOGitpXjZuSHN38lE2YjH7sbbrhN3+sGzme+1hEVyEJT+iLNP6m8ANr/H3E7K18EWa/M7dMVhlyvzfJCySln1Jh1FTl2poAMoR8HyZz/pgkA3FzfO1k1hUDSfyf8D6y4+F4smAEw9Dv9jkvLeNAoVnRAyv1PZ78IrHArX32GLNSbmzUxRrp/nd8fYPrwFT9EQTEZp9pwZN4OBMzcuOpwc92ad3nP5G/ZOxnOF0A7QTKwPxImN4J5xUXYRvgOnZqI1YJDJLr0UoaDoU5BOXgUiN8No91ZDsGsTcp0mdbz4qM4F/AocPF2bbZ7zRruZb2ydNdwULR04KlGV9djyebEwOe7eh4J6Y6RptiwbxhHFyK72nCj66/adc2PJI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "anAl+mNIlT1soelbgI3OmkKDoELqPQ0sLAQQ8dicQgc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4xi1CPLB/2AnmSHd5jkWahYRGiin8x55Nk3zldKsx+AL+y2O0xf1xNe1+ek5TLZ3KRlKIjt4mQM9cWPkzh9BAmJfuIJj01QAqBIEuel/c35A8z9wuWZjp3xDdwX52yEnAoaNdJerg7+GBJF+WG2QlRb/JqCbqTFfbAcENWpCMXI75nFSDyaWmjf8F/wkKAeY5B06PFCFGkGUZYDj7WoSGGf4vOkKoriGdXBT3vjDkHzK6fMOSYl2rBeHJXgMK6L4tMNtLUzR56OaFu0O93XlX/IM+RJrViMBK29hkVyYypzdbETfWgb992AInpAreyqlBVocRhXtLOD5ys/QHMr50WJFGZ8tFnU9eDJkylMbVitNCR42VRMxPmvRXGdNQcWJ3KbKXzSWw+vHLLWvryl0JilvR3jjVbII", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aoS36vN1KmWXlNgK8/s39SAZuXqtWs/GTRi0iqVGddM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nQTe0KYfIyl1/BZmEnU+DVEUAiKBfRQwqRhZfR8htOWWq5iLvPRKeqNsEcXAWNapKV63o0PTWbH9wGYxZZipsXmf+VkPVx6ksMXp1Nad26urGe3h4OmwP5MF0zKzufF60Gy420B3r+brDa4p/PFkpQLSLRtSuN0i4BROvzfQGJDVwq/2loHVSMo7I4xFaM1h7EIjlJO7NAleWVTGpBHhbpT+y1R7kARJ7cxvvdA4ZzPvfcTtssVrm+xGAPNeyxUIwRXeqcK44oTOp7VbURLQ1F0hWfvFaPG3NeNUWm19WKzvOLH4x0lNExfJN99tVN4T31hl0FcIjwwjV5anzQOtOmmPfXyqWiqubMej/pzMk3epMKN3/Fun+2qpKarjz2xNRM7QqSorI6CD+D/tvKRAQkOHofwaYA6L", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aodGTs2mynYDNVhLwzIAgg2Gnk8Z0dBpZe0hknIb154", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0SRWFQSMzCg8j/sHGdQsg95PKhaK5b97Vde7lXwZs914e0OnQ/UJR3Y/XFovFukiBtpiDMc/UIsPgyP8V3Rh+6nFQAVpZy6+xySOIXW7Qva9jVf/NNqvg0T16V82VP8ekDibK4xSrYCJORC/Rc/5yDEt6ljTUeRxBDq9phYUBB+MrUgdXaErXcomeCbJ/qhA6bP6uHnEVzzDsIXdVDYH8qWuLI/3iIDIiiSljcSeiB1SHoUOMEXQTosCve20aSl4drGWn9koixacby7sV+fRenSuL8Egk9Mu+hER2m5CgvvB9Ct9Z6z+PahH6pUN9HiKD+DB/r2uxkVZWR/29U32dnf4QOmRWLuB4xi6XvldBvFxUNW1/pH9/ZQGOws38xS0KXr+e5m4cmXz4c4FPLkv/Ozf2pE8zcTt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aoiLBEuzg58QDrjUuAO33LNT4q0wJVeVzCwKhHNVUGg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fl2uj3wyk/sXMiZVJmJxFPiw5qP3CqO8ylfmc4+5zF1feT9exOad1D5u2SptewjzCWZjcqTkJeVt1Z/8ANR9MNCtTIo8qa5fBZ6iulB0A+HcKTW+blLSY2RYNQ83lsy7FLvdsiln0jjrgIU32Qpf+MdVtrFStCQZ7i+k33YEYRYCqrGvu6Nb7BuY6xg3ufvrxjbkV/dmTKd+LOE+EA0D3melOT0p5bNPClB8V4avM6d42r3J3MPj7J9dKLNCWQb0xkkd0kGYn40FnMdGEmeKAHeoNBzWWaAJVwzpOFzvfONQLE/46hmtwJ3G6ickq3gYPfcF96CipuaIvuroIpjwct7VNzUBor4pg19urOQu/Du4e9nikEchNMupiwvsUd9Cy3f23VHK/RUoi6Ivhk7mdErs3pPjpmub", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aqDq+vwU6i9y7tlJTeH8U/YAz39vWAViHLEkfsdysV8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E8UO6O8PPMLkLi6ghp0bS9KBNll3asQj54TYckbT5O4YT985U7QDV2Q1mnwMNsdPHjvp/KVGVlmXHYw3OAwb/WZcPV5ar0Z26jaT1o789STJuk4Ttn6T3TlmosXbTweJWKi+MiN9o3mEDkBrUfm++bYOx77/MwsfRj1atl8tr6LnjOl4+taGhcUzT9kFSUMa77SZ6QVRcG2tlZ2+fXMbu5E45+ViConZ6taQttdY+t+uVR5EYA79ZKXZLuEQHx5gf+2FQ2IyTdQStqu5mRVxVNO72+NaWHECa6WTKc5sC6ZFU5m1Xh+Or6XqCbVBH/llYzFHDmRGy9LiGV6kR69UpD0PfJ/Q9P/z0f/SnVpdcyVvUSMzqHZlgwBOUUaosgO29rsgWhDZZR9ZbYT+YeaobGmJP1pSj8LX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aqXkSlV0oxkBBjAxtQJALUxRfuHn1hQH6LqelgOMN6U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WGxG8OKLtxdHvYMMLD2Mg4bOxtGu6WdR6gkaYRx9u7B7TL5tcrwZ1KN71QFleUNMnaKGtr/bUhSLSTkSV46IbP6ZvFiSHE84iS2aHBjdb9gmbu4w9ip5Lv84ECSQ0inKrDj7pz+B3gRW13HYCGIyUy+jlj5UbdUEcM9v14dKMKRuLLX7JIzFMV4jf+zSMwO8+c+skBBlF7/vfvWr84yQDOQGurRJArPSspu9co4WXu13lgMDUvev8lfZNZUXUCqOFzty5Ixshq6qCRQluywvk8oCEH2jh2zMx/8Wo2fJK/M/npBcBIyIIL7+/YErWtxgKy7JJQL9DoWjBDlu7NTXiJQmftwmTc+6Y1IGgYVD1RxPwgJHQLLnZjr+Wmdjiw1dX0XAYe0RJY+5v9ZYdyUq2uhttKins/us", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aqZLgjAxai1Ww4/0ByFIsio0iX0jds0VefscxQA4Sz8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "txJjD89A6Z9AOotfNQmwX4pj/6VBWUh3Xbzd1bLg2Sdqfc4zb2+bTTkhwDTCViS0B2oh1iVaVx57KHYNOWLon6kaWBEX6vH+cwFBYka/Olott8wQbc0PT2N4SKcG0EsZB67+eG8nPse/wqNi882J2wAWeZ08ItEte1HbRK1FM2prxwtiVL3P2oggsJuuIARvJL0F+N7lmi+4VOgR/Ci4e8HDgD1QLkA93ec+U1NJYzBxtJsZK6d80hF0RULgHoCW9HKoPrBxjoh7cN/RjzdT7rIIMSdltCqcIyN5IQS0r0x6A5uaB3HUAbBxN7nvILT1jUF/gRlwVkvgkR5mkOxwpAfPjQKnIIJfOi/xa1+3KUf1tROPArHf49yumX1RM7BHPF4v+mF7cTOmt/8L/YxKkHeTq/88D+g4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "aqe08kmmCK3VNYigKb/EllCgZR84BW8WMl4tXjFFmBs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OYCx1mjTtjmADVM4IuB4FlSEzccmCzSBlXilqYsPALWVa+9y65cWyrMwo3BK9tah1NbgbbA4aZctr7ezB5EoaQf0PXT7tupPjNBaOv/ITBY0aeUbwFc9PKFMiLJ9x9Wx2oaMDmZnY+gHmB7bqNH8ZcF1Kwes3ZjT7kczMytsWFr5Wo7LDwJ7HXZlu1ReU+JKvYzpATHBgltintsgzjel12SwF4vA/fXzURRomU5aUcrkdL0KmqQO6/XAlJWDQwq6hg7C5vGDMGbs0CzRBcYNCeBpJTsRrLf90CkFOWSszjoaVCNu8bEVsM25TLlYp3TVqm6EUpR0/oqhdbZGCT0RfCXNCSuMp//OHln0wxL0Ug6vMPb0lxnoyqVRow7iekBQTmt+2Wwx/rc/1JcdnO7Pzs/W/jGoLb9q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ar7QqTroDccRTnORs7dQRdov5+Mdki0wSoHG8HYV2OM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L2OD6NEWQNhczCUDGmDTHa6e+wPMMuSrsyX0g9eH8xsIlGNASu0v9L1M4Nle1BHx8p3Xkmzg4slRITMsmZ38fFOXglrlaNd1NE4n+zpLaKvF70aQ/rcc/dK/PDOH2ynB2xANkB790ao0hc6wNa0/UmrCiQw0wwn5MmmXoeRTAni/fA6+aLtoVjlT/qgToY1fg3OCoAVJZ9Z99qxceGUfli3UXLx5AeL2z3PliVY2+v91zEM3gH06BdpxdjU41lwGLxxEVAPhreUdJMlRtIUhRwhgf9IqyOIUzVYMrbaoQOG6y0DxUCYiZMk3Y6QH7iOVkdSDevjJUG59jqYlmrZ9jsBLa2OrhPo0+ruMo3Ft4x46l+r6WSeYxD+X+xuHBmtFrBQ52qtzhNBe8XrwKgIoF8fJ/xJOigLO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "at+4A7oQhwfQC6auydYv/hoCAWjOxqGj05T7VxehHIs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ELc34hEiDP2Us/bGNYJtYPxmLO+7w9SL+W4IEYCUythjijjNFzzT7UBdYp1UO2WiUUp+sNs8kRAp0Kg7E43kRA2hvQPZG29OX8thwJjveLGGu08SCjPv5lpg8of1A5sY3EjyOjAkbOp8DdxEAEoUXnAnped9j5sMSzqhb1fST4kMx7dpbRuBhYGePMkKAix0jhy/tzx/t9HWelebcuIMM64nUhgwAIKOM+P91x01H+VhqRSjg4PfkR5RTQYzYC044l3BeSpTog4dM5UL+wY1eWojaE4u3mc3EEZ88xE51FLfPvoA/+sNCNJd6mH7K/wRF72hRDvXl54sY/olDFBcp/J5a3cw+fARmVS22VHDUUjeJ6FQNugGXirkEpocJ6zTkae04pnUO5UIXpV62AZOZZRTaZOP7Cxo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "au8J7HLt5LUlN0KZzKfOzM1CVokr98bawBJRTdCBoO4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lgcNtw2MbFaV2oJ0WdNnakbrmksmgbiH7P6oANjRX6CNu/mgV7+2Jwp1RSNmCaRInVfJaIrxF7NoQ47lmg+Vy9hzBubb0M6j7Bo27HkUxqtkoWexCqUpRNAjdgVsP6ANGwaSIVw3K0SqRhCIe0lra2ecoStB1Nr5j+VIAz76bQdgL0HEg+n/nAX00oUytuumQroDnzZcp7ibukeCqzls3Sj5NXiV/yuXHk5AwKZ9B5F+RPQ/jrhl9cywnqPZYudN9UTEbA9un/Q94TBXk5BugpoEyTfFjaiWvUMsCwiuDjgfK7qWj2cjqQpPYPABw6mVD8KuMJRfwI5ki1mIXLpbjvR7jrtD9hewhwurM/bSqbwT1BkQgOgCqrqHFx/rQ9F6k9vl91Icrv4XUULXfeZsuCaWajp5Gxr3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "auLP4byf5OvEP5YsPRN80P1tCboGWQVENSqr2i1eqUg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/4tJbe7aIUoesO+zjejCPm7NAz09jK6LBr3MeJf1mgbFRG0bUKB7OooBkO1+pX/SGgy4siNNWhhvC+cKnSq/tJdEr9Xv0VDINfCHdCi0ZeCwC6HDMfoufvEJb250iPHtB1qc9ak3RAhg00WplU0/eGBIp0saaZiKmCAsBwgZ538vp5Qo/lOg+thU5IoU5shhNd9acQwbbW316YNDuIBey5H43V+zT1EE/0AF17O4K4gw7LlqD4QA0h49ShHVStoQ5faTBVn6XUOPsJbWqM1E4R7NRompPy5d7+75VECO46ibuwJCqEcXFN71fWl4mBC4thaIORJu41PkbGte9Xv+V6CT0aChEIaZ0PRqwf9BmOqLtF4v2vTDzY7UtguYcS9rpf2sh5HPKJPz5MwA1Iu3BtySjbyn4Q5g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "awyuf5TQtFw+1sOd1qGi3IsTA5M6PQsOwE2wsdgLzUw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wX1qV9MP8XTMACUFnvgmMpQ4YyTaW3+2rdiKy6m9Tny8Um2ihVgol+q3m0vAgfj5KAg0jacZYzchZjer9+mkSqf7C0U9ElGsFJ/qWOXELIrslU3qMJcMFLsk7h3gGdaZ2ZvG25b/8PT9Es2xVrjI3IJVP9q1UxyHM7Ge7qIGZsJMSuGJfIRoP/cspWVThlnGOtSVdVah1pRgM+q4E6D+WUczrd/dXbiiXk2ESnAyCCqV6wIXOm5DfyzweILCuovgBpt7pcfZF9Au/ctShnSLWSb3Xgwgshm+z1n9XkMXFPhp4olL+CvkivUTQU7yooa5hJcZNR0S8oaZMkRpEgNb/5rhOSeOfJMbihFHmam2GeXpaSE7Fyc1OK0h/rnBx9smNyPBAYmBXQkH+lEUEc8oOZ0xi8IvlKsr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ax1qvY3BCIzW35KZVL3CSbkT5IEs2GtB9z2IDQeHoxE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WGb2TVL8oK/8Ap6pu+lZXNATErG5/9Q7WRMwZDI9CBn/HcVisJ9L9hvWApUOMJMPVa2ltZTO0hbZErglskm+j2lTWy7MV7A1MtQ5YsqRWu+XbyY6JMd6M5jg3C9+atjCWV84Hzy7iJimBdWXijhO6+MHBSCaz78S4mzcdUiP6M41x27nEDphRw+ZiFs35Z9kJ2q2wJ56+vsA0gWerqY89+KfeBJU412OUhMWacJ2DsqBIqB4pj9zxjk5S54UWy0fr8Nb6pC+4kfs9/E3Oh5APcmf+YTA7l4bb2T61WjfoUztEg3XcTlZ95HwgqRE7Dc4cg3R2iKRys6b952ngQPw0+3TuK/S1reERH9+/DMSjuooujnHzl/DijAQbQ5Jeqcj8JRuExuNgQDz8lnnPpR/5HajS4z45RRw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ay1UBCDxjzDb4eRQrYUcGc+kLaxhOFzEn2iEx8lUKlY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+tomY8enGDbeK3VA2SCt2m7xsNkfiPLbe0ZqBSpxwMHuRAQdvxq0dytsr2LKWfkEP/6mY9LzqpHN3j9Sgb5DE7HcdMhbp5WAEClAbU2GsHMVUiuKY4Wox0ztOtXAIXzej4WYSo/NLfLtfEQ+tQtQeV9hSdHgGvasPBehHpGckFYFuYYxyYO9dJNmIhwxOfc1GgaKo+15K/2f1bLvCclItxG52yvv3/rqcs7boH+Y0AZM60dTz4xaF70tFVew1OKQ+t4MZ3r26AePYfHhD0jgJ3AEGoc35o/sVHow4te8z3zGAtk+JPWLQKUEyvam4Y6WN4z+GNzX1fp5Kmgz07n1ENeeBoc0lkyTPjVR0Q97l+zSGoCRJ1W6lzinCl3ggUOTwinkrUADpvh+P4QcKePPvpr1M/UOEQNg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ayyltI9HbrG/lI5l9I5LAFCAblYn7thN4PMQwE2hHT0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IqpW0HBhat2bKRbFrcrI9nMjx5ftRw7WKIIZecu6xaVGHfHhCaMyBb5kENyJEgjWF2iy1N+g32yiLsPSzjjMWhAV1/8hZwO82Vto99b8sFOyxy6vSOJIIrDSWerod4tNDosc1FHZibtOrkFtXkVfGtnctxqodb/U/SYleVZ3RZ3BXKbncJsb26hlkYkvEfXlVbnYwu8v2U4Cp/+lJxA3a/E3ZcR0muC3T3VvHMmpwqjCMv1Hd1eemEYrHVXfu++uNfG9lctnQ7G+wU1U8Q3udsRPrcg1gsjZ/Uhj1GRT5RpFeMjdsSL/Dz3VyS/8WuzblT8SCvN8rpp5m24Hj0JWfJqRc1o+Hx8MbzakVR84R5/1fPJKUUmaM13eWqP2TsT8lXWVvYP94TTpHZYqKzi8hAV9gPchmibB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "az5bmemI6BsVtWRCpFd9KfW9PQC7mx9rEzKZvCLNwNc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "p5ucBsqPTXp8zlX5EIYw4sSQpS8dqc/ONesUrkAlDhYg2Y7V88qDs1lc2UzH/BZuEFJ4SKmLKVLy/VW7qlgaDPsWtmffKptCm97zM5Ph4ccFu04i4RgcifKYbq+E6IGPcRyONLs+mVrFb/SPrxOcnC75yB7t4hreBgcjsaU1Z/RM00ZWAbYDjF2hXwoNMVPibOBCszkhdyhJh9jj8UcczhaEiFu7t562diKfcM80jpDOfUl3F2A3yIIe8sv0X1F38g3WnHl5WFb6W6qE341mF536ZmV126Xnnw81PNxHvfjoDsOk9DPOOvCEHnjJk/WIgbOZbt5ojuIlHcIZX8kbw+UaTRS7fi4WhwVWyDzqr/x51pY0XT+dqo6SxymOGY9c5juzn3s2WZdgufz+B0J/P2qAWYY6g3Ld", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b+K9E965jkNEBONOMIAOEaq9uvrke1w4d5/0U7ajgvk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tfbVSCfcBVHYHOLol6cyD2hkl296XuV+LmHmgCNVoXJ3yZTWjeX7F1V8ag3+TfAJdKNzyUnEOmJ1AVKtMg1P2ZwRMmRS1fV3dHvJgv1reNHruMSCkB6iPp5plFyGYuOgeurUfn4ksE72UnpaGTPw7wzlW+S/i+frbF02GffMMX0pyWTKqUyIcUKq3r4aGZ+4QE4FzSOek6BArtkjflAqJtx5zs/3Xz0kY865dLhZVLkGlT4cMpfGVrgqFNuNtzOKu72izfbP3zIKWormF+J3RUDk2ZxjuARqjv6PCM101itmjRC7ZVtz4hxPRBEJQbatmqzLSFziiqV3pL7dHfau4z57UIiYKUGS96ompDzGCYEJK1Jd/ZlkQwAIRe6OjAzTsdv09OvYaw0EUrKD0FQPGvrYTOLCz0C7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b+bSvCgd9kDh7Qk3NkCa9JO21ss/RZEWV8CQwrbHl7A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4Ovo8zD4nBqc5tJ362aMwjW/nDUQXlgtsT2+Mwx8BxFll5oCQnhSeqv8bgmto9JK8gvEt1mgpWeCu5T8vNHhTPv+1oNg9DEuAPe0ztlkLv44q786+5H4L9CVjCAjIWU7H/uivrKRAx5uO4/PP481z1nG56H8eQCnQshpS2s1EdJqUmzHA7lR3A9XWp/zETOQTzcGzzYfdoVJeER3dglzs4LuoRHOhsh0BKOU4eMV3iJt6sREqAuG/0qf0l683yFUuTg/8SvvWycp8nCdgwsDXGeaK0le5xGke9Pa3c8o/DvZrOu3emDlNqZMWJ3C1ePSX0orq3V9mgijET9eWj7T6Ku4PAoKP70Vmul7sVbU1lvdReSziPaJ7EwclFHDnMWesoPzdLBZdtsAaHdQv7HRfVGaUW6y3QQn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b/1jcZhD5F+Aimn3U0TFGGB+BV+wUOIYl6VniONjS8Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pazwiObymfJlgHrftNETIujxZqvude8rdA8VLyqcdJYixVg84GJLdn3PKrTvi6EXQudXUW+lTARMlO/1S7OcYmErIfOrOi6w1y+aBnCU8H0U0zwuCuHYvAjQnwZnJogrMQ6oQxxP16pq0De06L2EGn1+qSTBiidnm7ML8fZZx6pzCHyeF4ciWRhufK0xWGnWEpUsT/ENPKe68qFqC87nKjJwwg3yx9J24ABE154fqFtN/Ecoudwgctr9NaJ0R5PdJPhNaaPbSHQtpgI36jHNf/kbmp9UQHArRA4uP6WERnDwAGKtt9JImuF+vSslr5s6N9t4xoAzroGH+cZb8ZNCOfwIplVYFaXHfEj530Er39eCmuxxV52WipB/2dFSBx6nl6vjtaCUl8YvSVP4ZRrDIhfNuEYukd9U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b/CEsEie2ncEhXXt7TqWaZsQT9+LXL3JXhhxf+4k0yk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OSSqcO3c22mWnPs+8PT9lQx9NcC3rU+jamXzXQBfqNXC0IUemOZM1Vvawouk8B3SdMXO5g18ZX6kA62Iva8Wiec2Mrlsro4dTX6llSvNdeH2w2AcJOBmFdrPi0hqCxyGgMpa9aEETLeKnKHClyE47n1gWh19pQ8m8sEh+NdVelL3Io4ppvXXs3obKLA2Fb/7OPHOg07+0NsDmlned2jkjrSJpGxY42YAUDRB/QAF9HCkQKg7f1kuV2sg2KBoGExRMrfGDcwDoZrHGLOSeE0J2hfq/2hRk+vNr2uIwUmIgYIgrjQcYIL0SRk1Ol2ZwGgfB161dKZMAqLiLKLxjMFwP7Xe7aZEPfYJdFSGQTWtQoCtreNBDpDHaHURTsIiQRztonP8ic6g3rE6b8D5dXlxSNs+ES2M/bTO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b/dtN1OOY2+JLky0O0kP/778yGuDWMJ2Rc5XcgWpEsQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JVx9Ro9MTG3uIWi1wRGdUUK/wRjV6cleOCS96kWk5TwIzyOjdYorcRkvjfePuPv1R6HD5/RMhwLIqLLQYm/UBmWZ8QLmeZXWNMfskurnjMd2k3RHykOLV2CVqwhW5f5VrK115QLq0e56erphY6IwPMI+X3/0W9h0NFTq5U5EfD8/gs1GpVFT4ueKkejd1kSAzK4Anoo5SaTX3tM1KenZ0f/GB2RiWHDJhuzYxF/5WllZe18FUcUKWuFBdD/5XfikDN7aOcsSWX0kusAIC++N94Dt8OveTx1nPlCm2AZomWs1SHnl2q0phumKgyPVW415RfZL9wFXR55jCbuwzAvD6zB9FkdlqAgAjlVjAoZ4j9sRtKlnL9oeP2uELv5aXG5EhnBqCB6yJHN4f15PFnUUJU46IRK0joHW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b1AhhD89tAm24YbeDuiZXUab4O7GL9pIO8majprDSj8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wi8ImqPjqi64gmfsRX8PnkLkcCcENKQBoaRa8d1QZ4iUacSqJ9bSCge/Uc8gExSy2eB9fEfO0nEZ2rnX3CpDGec2OvYfCZqexfdexSb+/8uKmKUGJw2Txjz/HVgIeteyYyxYqiv7b2PurvmB2RLDjBZa8WVGsOymNGv9qYrzimrCGWYNt9B/ipcAKEfbRlomXI1k5xTVG+qOU5Feri3GB9kGiWq8ebJfMBI7pbyqWItJs0TwVJiBmWMYcNi4uqyKYToyxvqlmaBqkcvhAL+apfnggQNWXuY6nDNL/fZbFIUa2PFKjjhBrbF+J2wrZaqBFDHn1E7tf9FX5UpJo0tKuMLkAAiGyOdadnzplnJxvepnxbeRRay4JsRjkkjWQxgtJK9AHEZ6FihCo9CzO9nb7KEttW9ib6t8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b1H1Lv2f3X242/2nF32H+AEVrwUE49t63KF3+XyJd44", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "15d4V3yevLLwTwYYmawr/aG51k4Cuz8n6xEekn1oJYOX/8sahpbsZnJT5ToFfrijZcJhwdwj7PL2+3T60zdbVdn1iGuaadPWweg2LrHnF61IWJ/9IV8zgmYP2OU0MpDJe3XUAY2/cpWE+50az6UyhW4poxCDtkRVhhDlqM+T9fB3dQEOqjIgDQhgM3w0phothH8hmNxtdZ2LWmNkmi0H4DGwWI8x7UCUlvdAFiL8h+Wj3o+NrUTGF3lOXNu0E8+ERvHVbqVuAFdTl2ODzoiUHFiC0SVOWSy1oZnIZ2OY+49Iph0H/0M+Bs5+S0S9YPRZ8GLO6yLVcDWaqZIAaCud862PZLvW8sq1Lktwo/Xkwe20AjHBEjykqBsoxOoIalQ3j1HbdeS75II3Ac+KWYQT5pvDQJXCKbXB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b3dkyzLHa8H6K8aYIrE6e4zaRUCfTpiOuEdZeHhWNIA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a6guZgT55cf4urHR/7oexTVzebfhVQEnx64L0OhE4fWcbLOUzvQ1O4uCAUijo5KNxnCmN5+U9pRJxWli9u/yaIRNdw39q9kvoR3vjYuxleHd5nJIXOQz0TgZAQhCHJzc0qRxJKGkpMO/QDp0zlif/Ag5VTHRKi/kPDOjbFXaniMJiphCjl1EQqFehLHEpT/9gA/PBzGmxWQB7IpEAKXCARfBlts1SlOa8BX00CDPJDT0I7KKA8hLRElOvHIyvtbVmGnNGKU1iohuwzTdnYWixqiZxijL3q8CZgeuNn9E0VqLoBJj/qIhoWnRvvIRYqbZVmIM8rUg+7BmrXycOWnp2sPr4wEsALx2jLOLV5tYEg6y7qOw07x5GVGfgWtni90Chx5s/CcA7cx0A/FEY/GtKqetROD6eYYZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b5HzlYYrMlWTV0pJliXH0ZHCfisQPLVWiTo4DzlbR1c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eYOi6/GVU0m6LywLVI0uV6fkZLfFRmTNA9adyUdk6wfp0KtPeOaHeDY/82QBkmV6LOvg2nlN0jeu0TJO4xx6jCs09AZJbQLBrkWAs7yKUphLNPHNlJXw6FF/XgD1/8fuHpFkvcqxpCLkl1lzo15ub8WFFMzrz3NsT52J/mOcHczSPkLtdO47QSluA5lWhnxphx+5Bs8g6CKMNdWIR+9Jf1pEt+LrtvwyXdcnmk/Y5SP7kzcXSR22EeW371mTSzngDqzP1xRu9pd8iXjI9KDJsBd9OuwDjnSoVspN93h+AnKZiDE5wEksZvpFROh1wTjVLBCkdBzpFtQYxIGsbYRxmziZxMPLbsmyI30o2rsXDkfle3aJhjwmmf9lL2hIUdL0VqVhim8EMtXOp+xwz73SD5Ft9bykBqAi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b5oN6JGfniTMjrZSFfw+V46f6i6NzPT0hEL5e1r0q/E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eItNfRop7PI6XLIlSuLG81pqp/peGn/71kXrS766uDy2hE57tvkSdfYAVFjztS7OQ8mI0++hlxH7slmtyhtgcQMpBurrz3qYCr6nkMoVvv5t0qs0rohQ5sC2RRQLv0iuWDBn5ZCbquxoxHHjmyzjUkAWn3gVjGEaSYeTXsBnvPRAUH7JdHeEbSzrBljsC0j5JV7hJdyUAGbpHL0a8MWzB/lX2ErazBPQ8eX6c6Y/ayI12/z2zfycf/7JsHxZOivCLLM+GQj5Ml6KUZ73epOnotsEojkkGWqfIBzmwnymMcWdqlT6TQo7dq/idUW9aUPQHbLaaQp/BumdIzwyNMbQTMzYE0vut4df+BHQwmaZY0L2P+7dtTxcmY3KBX7BgdoG2WzCu9sRO+nbcQP3m/QhsqP26kztQaJ7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b7Rpj/ijmII4Vk5FP7YKTOQtXep23ju3If6KM1rUJj8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A0GgeSt1L1rOQwqWjF5XFbYVgsArWoLaYKvnURfLb6WYIxGuQvI8+v6WGbZaNFhYomFF1AwEHp2/oRf1cUTDkBTk1fPF/uH8C8FjWNl7KHy6dUN8/hEi4tN7YSVP+g6+UBj2sSwih/esWmnCF7KLyNkEZLYbEeIOrr2blGq3XCpqzSt8/qujSNPbO7ozTImIchSzFykeLSYRnrac+dFhKBcVLMTg1kc/cJB9B2cqJy+haMthGGubPyXm/hO/8b0eK8dDEF4OdCDuF2miUqViWTsxA7KEsLxQ7tHQThasRqDlvDEontGMjyt0P+qg+JYYY4CoJyk1fqWXP7DgR5Eve6EJ+lANwmK+jlB1Q6zWsdMdf8rrXqrb4aAwaRXG4z95nj3kpK9hmBLy6UiO9r7GCNnu3h/z7iuo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b7d01ZEmgpuQMXAvTvCxWFzHsLk9Ewo92nE4vlNqTGQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1qPoWtZiW2u44hgKFm+35QQlIxzrGkb2LyJocmx60HWOmp1Vw+SqgDIC3NMXcipNCBifXsk1l/rzs1d/OgmsIoxSK8cjnAgeGDqslyk5Rj2L1pJgkZzjDPfIF76EQmyiqwcFFytm4VVeZCXY0dSSN+DZna+ZNG3vqK9s805xrRUIppLHznEISKNAN77CPi/ivGhdEUBd3Od9eO3g0ZdW254LufAFASD0MVqIa5485LM4g5CvHq+/ySriKM5MFb547nPFgz4Gv5mS/a4sx//ho0YhdSK53C05ZsvcdWSPRXfIDGATE5dqMEYhawGEYvmvMADhwz6/2IaKg6atZQMm9pSPs7tdy7PL+luA8fS8k9UifplwlFTFXMyBXR6RDtQQmKALvQvn3GoNpqwhkKb5DiDYKHQAM+X8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b7qJsdZh3jdp5kV9fFjdbxA/iM8234NOPA+vuFRWSmc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZMOgi/IvpVXNVYlalL4qd2fhEcf09ZCeMqa9bIReh1ZJnkePv4xl2Yocqqg+OutdJl14IioK2PMWibllmR+DutNV+v4qC/OCLoYO8f+XP0KNxIcx3RaziQFB2y1pSMEnaJFTR88Xz7TK9kYRxDH02l5eAULCXm7LITK7hlJvT6FnhkWZIOnL+41d5c4X2OifGFh2PCb+MaBeJtYgLxyjIbVxz+PWWIhnNyQVv1NDegE1a8wJPd+JcO5u/3ltAabQ8mGfjTbEBrc4rc8uTlfXHhEyndU+t2wkqic02YucnGPUT0A2l7QkYV6sGbLj2eijBQHJS+BIx1atq4WPeE2dbPKIA9PPbxoHmTXD6qMWlUu1FoFB0jTgV3r3tGAmcJs0/+o4iiz2uGaCus0bXU3/PLRpHlHu0TFT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b7uHzyIhf8Czwy9VXT0JD+L6hknzk98oYLYfkkuORvU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wa32EGg4rAPvAON43cng4aWLcHQN/whhNi22/eWfr60rdHwlORrGp66ygytuMiNknPKAcOvxsOpkVY2Nx6/G/CNr0ntxVY7ySiNgul7Q7kxtUIr2JLbGg32Du8EtSVi8RUp9q495XkIwGTk/PXVqlhiCyV490iJeBwhrGcppuiZ/DjXzDEShBHe3Snqaehpx1fQ37ouyZHmyoGk4CM1clVvRl1FMuS6ie8g4kI+aEgGvCOQH3qXdfkAFG/9WjHPGTNL+0l24jFNCcO2n2QSLMsjYSwH43Aao36xrOzCBmtMahhf5NhHiEc6wFgj692x0RVB43kp91l6v2vJe33KW771wb3TYknwSeAvoHyeiXqLsBnVrFj+JHKcgsNs0oiKEbq99OaSCYNrFZAxC+B8v+CoCZbfaeOqa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b83tTDuzlpRKBZkFGwgtp7VGVlBzUlI6nUIsZty4uUY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vgRgSzaY5S8fi8xb77/c3squ7txY67gNSo6WPXO5PZwO7RP2O1+LdPv82CTIjI5fEYFdcGGoVREHu/SRdHSLYUFI7JKVofDSBxkacwdXrCqBGohSQBV1VIoNnGBxBihg8XNHIppmDPMd0O1vvKjoJctXHxTb4QfGMoOxxECS3ROG8q0C5F0dq6GXdpwbdIJ/AJSPNMacuejeJvVqYoHso2BwjGhfzN/S5es7n8gGLa22UsyfXilcW6oC8+Es7ndx/Mv2p8xgA5pw11U1ZSL5Evc+sfMQMOe6Zk6+Xp14UdgTo8THOUAqU3VV2eY8XesxQBDQzc/w0SoVvbrAGqtG85Acy7P5v+zHXdITFable5uLbwrXyu/qxldLSD9N9FTU5ZzDzzGjn8sTYHJvLD86dRdTX50dhZZb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b8b1VgSp974wxulrn+sBS+9eMPKGWfdyc77DNpvah40", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "obhx0ioDqdQQ3dpxLFX6TpNPVZdX4XVTFTEqUpDyOwDe6RhmGJiPWr/mpBq1TchBNfxKtRn9MNE1PIeW5K4wSvEQL35Y24Dv2BeiygmxgFGxbri9ipv76+z+TtM68g18YMO2IGCPAemmEVCFygdrPvSfoFHXJQV+Z39lw6JSrQNAfgkn8rWq4OFa/HBr3gPHF+t5EshvVqCvun9pLsTRFxtAcE6eN0RuEfQvqHRuvTkmcRs26DpVlxT6jdIK8kEOmCH4DDI9LkGcHvTB1YIdlT70j/NsWxC/73tHA2JHIcaSke2B+XR8BbPWq+s7e228GwQe4nXed+vQQPFQDIGkambHrDXR6J+Ygq0CX+zD5iBDfoA/b+8vTbidqJnyzPy1X+hxDk4vTAfSforsUfHMuXg3O07NTiVz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b8jnkD6cguZNdwJ1c/S20HtmeEqhTSwXy/R7euCYX1I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QqRBvnXHeHvcqI+K3gYlkGB8Hxxu9cPSFa4IPScAUxs+iqZ+aHtoUtxONp8nWijQsguCzSMXLR0a6rU5RKOwAKZXBhCb4dQTBw/qs/Jh1VywqYMx0096rjlSo4J2jcIsDYQVcATAoTj4GMlKZ5Ck0IE6JILWdA9BejtEELNSWCwUnc9xuA75+yF2MkP/CLyp1zJLVuqWcZ18aN+PdAus9HFtQ9S8tuxAOOi2+0l7qvIh23bOOg9uiYwR4kkQYmilF7qJi8QfmVGvNTN8VRNZU3be1j+rd2PJ1Budh0I2ZBkyxDEMH2Kz5+VjxIXWg9DrqwPOTUdvHeMifkZ4p3GSMoLu4FqSbkv5rcJA6LwKvRM7VZGfIXxfSANPpOE0iNQi0EsrLyWpYkh6FjQboGqMhogSJS7cE/os", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b8vZAQMNux3GFVtwg43a8JBP69sx0LGgCngQDeHxBO4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ohXT+L1JDXp/AZichbpM143/tTAvQ19UrIQhNl9NYZgmrXr7EL+R2OaXng7HLSAowfH1r/JmDVGTi8PqQHRGKGcNlJIIk2YqAotHlunJAG7CNsYU5oKuaVdAjx67v9e6oRBweZAjC775slJJN6xKQMNH/B9TZnSIolb2IWXZ4Ta25/uABe9ef16iP/t4ArNkutkwvY+Uvp4MYhkvFWy9WWNFReSRb93LWyxalW8dtPgfNY/CLDtaK57UsdAGO7eIG9QSic6M3Lx6qV7qrubKchVasQU5nAIFsIz2169eOiXaBbAS8l2aD6jdkysYCdToRncZFha1Y/hjEkYJzWPrfMHA1K5CDDhUuDutiwbmnncNKvYDoldOi55Mm3XBb87MiBIZy/0QBVA5GxQCzThArLo/xHEV4ckG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b9aYe/A69RVkLgr9OBAB/S2/21RQdaTz/H0btHTMgxQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jTNh66HfI30o4rGmEX/Wfpi/uymZaNNZRn3WxYl2AreM1wpY2JCyKWGHbQhPIWfFsRk2dk4lgCB4u3IOzCBxyPR7GkQrzP9Ar1XyRmAH+VhRGolotN3bZIDO8GmVRd1acXrcfXh7J8SozGhA+D8lPz4u0RELN1hHud5mZK8xa80HOyWVtMNbOBwh6TJEUttekdSvJgpLKUkhWy8mpBiqSRFzANIlhElJkxsy6nj/Ybxtwlu/5pE7KSWff0aiBSjbA1as/naYJLo9s31RRKxHE9LAUqxYXzq3mo6jl+qHIvPcDZspzBzNGB+BBifhTbfI5HvJqukZdgI9YrJcFLH/SBH2+0FsyxzqoUiu9JIa9HH9Rq9qyP2Z0eQucoO7CHTsd2wJUIHxMm/edKg1eJ/7y9CVfuwyP71X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "b9dF/Fzm2E7Y8xgJwOLJ9q3Qwa7OiVbYMQ8AXdeQb+g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "U5QyIW7jrWSZiE+2sMSX4A27GZ1a1Iw4aE5k4ozxh5yV2ohmqqjImrxGdJOPko9Rvnske886PKCU/jI4cPw5NJd/Ekp8cvYmbKo1XS9URN3cfC+tKRMfHUbidsPMvwH4ftbmvXkAURbanAGV43ixLcJ62/pz1IasC7KnDjtH66a9nKx8T4VxjH78D41UD602T68nROfLzlGYxsPl3NTP/dWJijcvAEB4oZgImRrBQXJ51KXp3vRAtl2bFK5jjDbfJ4hSeXXqHiXeIOJ3gedYh+k222Yr3vMXLheoGg6W30lmAVs+SPhOZAhyy2iOsLVPUjCy+H7gL2pkT9LjzO1sVTgedMwsZhGsYmDau6nmoi8vj7qdQqVszpHi6FFjcqTQ51+WWZgE/+R25ULnhPXuIPbTp4kwMSVo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bBQvYm69YfJfUxO6JLw+ldcrjwhPl0YfKLugPM8YhGE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mIcCD6ub7+JYdK5Is8cJJoBc1817koPnoV/970EAyiriu9e/ZUUxEUdRSa6ItdAhGM0LnWUedBuzz1xkAA6yj9auAbG1jPt4ogofDHOePNNRvH/j+2XuJbhznxFLrR7B/UfVPahKIromiTiM87mbenpKMpwylQOWSkxRuclZIC+isBfBKFY2ZbklRKBr63DmyqzWE7//xbxBj29Sbk3QwIIfowgX+1VHEKAivt3FscfiIAM7IjIuWJC5lzniUXRu/Ety+UuVFaR5oiX7naWI3rmQl4cLRV0LzjxqfSsh476X6IjYFC+93WX3XRcVTeFZhEIYxhkQkq0waE3Gqs77EJX/XDkWskt4opWXsXfZ3D9VxLbJgb6vVe97O/OYnykRSThQqX3bl86Msz0uwK02Kgn4NHiUxSD6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bBlmoYR+UFuWETEMqvKvTVAEpMPJHHVvhequTD2t6EY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hJZ7hHUoMy/5sIIn5jNRb18X97HL3F1u8VzZfBU9gL40cZhpn8W7qednSLzOXB21nhTMJnD52iCV+uTjAdiI89JU1M1Ut7gy3B4ywPPBIOMJP5pV+H3CG8V+/NDABJB932HKeMryEkhjyw908GULlayc/G2lMen9oF+wi+Mkrh69mrXMEg6pCV5ozIXGV5HGmKfhxf2FzYmZUXal9tPFga57wdbWIKZL/0KN1tP22NPz2D8L1GODlWMO7uE8T50dDUMcGtnPqUJC2uZBLHNayHATneptZ8fy6DQaX0rq/ZQ+vSioGwAcoWMcOwxY1IuOg/L1PNcA3xjM/cG9jqRZT8VzYIN1dPPzzoBrFfrtxbsqz7SEY7xXA6UX/tkHij/ylic8AvmWGZrXHxPax8wbPA/lPtLY9u4/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bBsMTbrbNwvumkRFzqDE/cVTZoNdgeDR2gdlvckIouo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GPTzNt3VvBU8cBfAY5pDsemE/JZBjw364Ke1SLvHXxBAlvgVr5tzhyKYky4yCEkFnxR6oj+nhq3G47g2+Q6dg1TQRIhEi/YP2fFCmKUlMu6ksN8re+nSu6VGNU3qxDIXfhyvvN+ahIu9qji8QCHbI0aCUdDyoIB5OzIoE+dOKzmEIj4C4Zp2nZPq6cJKE1tL0u+7bsqPF6mmWGpBJT179z9sF5kmx/iJVUxhoDybGfZ/194Kbx9XRyc+HcWKWFQzOJtax3J8HI8oHHMjbG32JwjVWkQq6jusydlAmd66w7gisFhqASMZRjALgjZM68R/mig0WenPvaOTriJmbiiOBSNqpStFplyUMaAyGzVNqqIze9gEs+DmKGamxoBfbyqlRoNfHu2TEfq227NdkmmH9GY7kYO5eUQl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bCLZ5MNgEklaJu2DLwI/EQdZmJ9MhTm7F+bxKoUK7e4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QZ35R5EWbH7nWdcS8xMIcPRFmpc65MRSXiRKwOXEsQvhiXd5o54nzBs/VE16UIe9SnACOra23IGnjks5jX68O1ls/JYuxbR96CrKHgxWWiklzO6K7P/CWh5/P7L13wB0xk+CLeCTolnIDksZp2QuAHMaC8BWfVoXdjT+6ibvMy08kMh9RR7AgJgKw9BvgKvSI/5iLlsiAFYQbVROwquOj4zbqrgieA96GCd5aEshERUr5NDHZ6rpuvnZoKUcc0RiGn47K9EQJHwKsDzMpjj8v7GRf9/0tiezI4oIeP0YDwpzCVKFiuDtGdwWwPKQMyLk7IPd5oXhTibiK18MWhvCSyLURrAc5vf7Xndc3SSuhkW/LJLkLL8O+hKOh8VME0vuxyQ3TeYgv3op/3JkDI1oKHWX0FQAOKZ7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bDECO8VlDfaH89aoINrXuXSGLamJ40Eg7Ipvdd6Hf7w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u/sDcC22lxTWbUpkIsEVE4GRDQPuNM0rtXVvRfjfz/ASAMuQNU0PzXx9Bv+1LLd8xObJTszrfjsltRCvziptjG0A8lSmx0CORzYb7iRODqp+IUntT7TRf7QAcoEYaHMq77he75NoOSqpr4HN162onelnTS0N9lhfsNwKJ3hf46k5fJajyuzyeo8gMmjlsrSuWkFXyTWgBd7RFOAoGdNRrYAHZv+L2EuAPaBDxvf6id/1cjlZ9pjhAeWJ5urQzOuTXyOKYd5f73xuiM5uJdbNCztX+anrroFAEWswRg9OkbxlqBeYEr1pTsx7OSDCGOHpDpXGTXRzxr4uKCtwbhz4r3qbqUWoDUwQSIh6e5BD9oVlvzEE72P/JMyA+cnTemUodM9fuprwnKUWRHjRhz2k0lKoLGyiiJio", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bDjJVOvBMPAF2qUciSIR7AoSid5BarWlJtOnlsWjWkg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2vy6qrCQNpwfhq9jQZ4+ARaDg+txGICBdRrPyddIyopV3NUz6hZt9aBimxnijs5zq/Kc1Fr7XL0hWQPjRHNuNGa45t5mt/wPrZpN8g2zblADp6HCoWsI1k9eVA61lwI6sB+itZAapRj7SMgfU6hqI++fm4L1bMZ4xLVtP2xfohFJkF/3ytiyzRi5ML6xwIiX0mVzRa+0IAgM7vxXtT8pEiLXoln+MiM6eXtaM5+1CQUzpIwOaVKmiaxVCl3e+2nFoC4YZ3+nL5pOT7uon44hwtiMXvOuV29wzcbLlDa+d571FePxdZV4Y79CGKC3GlubUxZpDnNwHKa144w+2twWA2e2Guf7Gho7liEFIjDTvVH0DeTP8X32CdLiXDmd7aFSxfXINZ4pybFu0w5ODlv4JH0Y1Xi6lAMt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bEM9UX5gMlDruftUkmF8zA0XSiohs/MKbYq2TWSyHDI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k9TN9jE8uDdWHui8IKNSY4ntt3GI0aS8rMvDoYpbhpsGw5nurnFSv+uVPI4BcA+ZgZw4LNwwgZ/tNfO2KEcWNyWdCuUyeEHhhFfW/9+Cy3DRTaWCkCUbwP2x6cJtulK6IV9KsO7y8CNxb9JGdAOv41d2ny6ioSrxIimmE9oO1vTQeT29dDJMrUzq8aodKvmy05yQkvOt8REZl0qR23CBialOKuuZJuhW1McYbC2N8p4j/KZ9MxLqwmcCy+IoiY15A/SYpUIq7hbU8NWP6/03bJAf+zpVHJyHkM5C9NvVdt3JI4hJZDXg07hBG0OjO1Tz9wmUCzQs3K9Bj3H2Pbm/llWbXk7ZLGfqVLENcVFp2RybrLHcvJf7A5tKSsHysBOckVFDl3DnfEJm53MPvL3mn2kT3ShtYvwg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bFSXkbYkxQmBIVXZ47AYdpqHx6r9UWbNvHKj/bvf0+s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mCklaGnl6+zv5zJipEZSi0cpXW8gJ2ZoxC4V5RkL4xeThkJCHJlrP9cdcG1W2CVbt6AWlzLhxvus3p3sGYP7RM44R0CYuxo7G9yx76ke7bktTWgRkXLP7JGL9Ed1gMF1vutNTOQM//r/HF7taS3qAIIpeMr4ueAPy/9JQCRfKa3H4VQ/gCae+s/HVw1OoWeV4SwionCgYn9Ubv+MB+XeAS22q8KqG5hByDhZtiXpDc+zybunXWIg7f1n2r81wNzJBBBAM6E9thiWaCc0KCD/bmGLE1R73dJFr2CNvjXGtlEG7FUvSix0qNmgnxdCruyvSxRfRu7iCzaDWmHPMkKqgH3gTKYiNqyAEk/M7AHBQwj5D5WXJCiBSmeU2k+kqI3ZX5YiiJxxFWdOxdDR4ldHca9S5F9nLabc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bFoNrsa1FAnCVexokY9Rcqd6qf9e62W+vS39UcaCchI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bYm2KtGNBFhYRwUc2oVqBcyvuvMmUyB/s3ONg8++OCq+eUnnhjXXK5vb8TpCM2TnWSdln62qdPpWrfxld/WmqYEmZZCXqKGXyhu7fPgaf0kq2uGxsstM22ZtL72PNMbRXMYm1nHP+1T1rDiKiIIeL0S6BrvAaFrh6LVrv/d9X9VnM1L5LV6RTV4zBaY3ELouhQZEhRukjYr/6LWaVI7DEWFw/+UobcAhmH94KxoetWJQ57qhV7/m+1YumWfCJP+f+qUsgymzJR4feC95zkNYhIH1mSrlY2zOQCjrTTvtVRqBTPmftOsv/iclf0bSMR7lzV+FtgT/iPqTSilBxqgMgdVwuZD2w1sAWQ08HDpX44RO9c83uq5helBAKaGTlaaJVO9s+lmm+uitxeVqgdJLBJq2pf0B0lMk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bHhQYuwZ15KFtEZH9175rLBFvVYfPp/+MmxYGaacfUs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oN0FsFxAgYEgQJPsYHVtfP882w/eVbevvJ2xS46Nqm5ZoyUi3r4ygmbKu3x3EcBxIQyFgav2vt6+pXXDlWgkkZprSRXHGPYCOENpVAgHPo5XIQ9pO7E/7zY2DFPGvZl5g6SPJxd6Ne0s7IsWfwah85otY1oSYNeNt691x4gVkfYexga1SwOYijwopQ+u/9rxrkSnYf/tvG79SdqjqKeuwLxpLXZSZl9hgWKW3Frx800YdVhcPHtjTtT8R2QW2/Tgj1Gd28QNEZ+mfZ2BgMp5TywvHZj5TSClKYroWD6agp/spLu4uiXAURsXUQPKsoKVv1y9Ed7N8txlVkeqqrNnNkuQO16rtSRESRDOSXiPXmNR1XRXZR92pcNRqQ+8OX3fxlyVhv/Ac/lB5FoFtkxAX1J1oK+6EIVk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bI0qFJtkJEiMjS0Us4Z060Cl25vmYiLd40OXssCa5ck", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ctHH7/fe3MQ1xMNtP02vhklYp3S9sB0o7pkIMBGtR4pJWLgJ5Ihs2SzHlqptF1M2x3K43eS19DjE+cCEhlxHp09WXAHJVBxMYpe3eLSRp53mpzPpV4pyHyLqUHkXpnxhqRZqfKTM1ZQRaK02MCINHZAlF+/GIM9f5CW17EZLHbwNgZaO5DROgtbLeCJlMnWrGGzWzK9tOq2nKDpq0ZktSC1832hjD9zyUE8/mFBeKRYtCFBjofxDxbJ08pzEKHWLLXaumkU1njBYqCZHAAKrGmXxtU0dihaL1c7iuJAkCfZILxHNaxEfWGdhxFakVHK819llx/7W6Czfxqicx8NS66ZLogdztCWojO6yp19MZOfFo90/cjMD2s7UjZZW3tXOLdVI0bq/zPruSEC2cIOkPdwZBssJJUQv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bKKAy74PxiO1Ok6LLWKF/TFejyFmG2HRO45+dlo5qM4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+SKtOUYoqp/C0QnqVQmcqbANXHHbT0V8Td3lYYjWinwbSVjsuDb2hT6ulC9veih6GqSkgf7t57Qe1j3p6k3OHvI9QfxU7DOC7nemNehTDmk+PXiSBSHNbaGJUHdincmZefFtKDIy95IsJkCL9F39IWKTL5zJt/PTp2IDuolQ0Zry/AhFkJN5/iRD0/F7RIRB4mSQMdNmphn2/6QTpddcAFZ4WVsOtWFbmBL/pxUdC/ci6mvwLVzQEE5ik/QpkzJqCvg+0Q1AblpNyhTi5e2UhhkSDWy4J5PAYRNb72TWJ1Lax5g5gcBmdVyIUE7FT/uyQeaGqKNnyOWY3TpV729nIKrVoL/uXmbEMHWCEyKND5ff7lvwhYPLJgBqzh8K18o1oAmFu0KiUp64WWAB+Xz4xuOBAC2xTX2g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bLd/K12M5JTGED5AMJHBPDg/650KekplilM6yy9i/LY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pJXI3gx0aAasdzV85D05POchA0l4UK2pJHhkZGrphy+flycXiAE6eZjQ0k97JHyV6OlASlBWPYM49AM4rTEYK2Jz5p7yL13Se0Szetv2YbOyegjLtcB2bUHbIL3AA3P4XW6Q8AFlmBEV3Q0yqCXayGMnI3c8fwcPAwhi3rNAoNRPmaTPsE2AikIKFtZMsrB9CBpckwnASzUlVyY6dDxb1AUIrs1lzNPbBBx4TkmAFfWteYpWEeNdPyUen0R1QzIOz+JT829srOVs1uUG2F3nkWjfqZinxTS+cMLI0StZNzDJ+pALVS2DZ5d4Xeq6LnAxHP7B886yC2SzArfhSDLrp2xEoqfjPaZcp5tJEl5wL4CrEbZJPEN6IHvu2szvSHPB4pMmvJHIu2SMIHg9bUOhKeHnkT7EPJb8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bMEqOluzhc5/2deeejrosVx311EUZ85EZh/d9nMtbuU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CXe/2IwRsi3VocNQcjza1Cag235w9pfOFLqgsQAMiSUirwYNv3J1F1LoKCdhzts9W90Zash5ByycEtj3rBbXO1YCmY9Ieeyx0hf3v3eNg+yQD/3w6HQvxk62IUKBhN2lbDSJN98TKt1k4dBt8Gv8nEJemPpz2JAO2SMe1iTOsYo6W9XZHwtUCNWu78SQ4eNto4i7jb3+xJ6LU8gbYQoDmRtXW8oSNnTzV2lcGHH1oXJXlO2IltUWqPUFuMrga0ak6FZkE2Yniej2sX+QfOpDZEMTSB3pRm1v2mpzxvxrwL6Q0v4dBPAEJe7CADNyaWkAH6u+3xraq4dEqbaESacEfE08CAHmiF28V6dBFifdUM3z0qDj7amg+XNN4r4uvQro0IR8OG6y4p70gZkaLQnz3e7yItOKJziG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bMYGSimRWCslUgiUQj+54Vjfv31L3B7J9Ao1vQ2gQDM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eFjSss7UrbLOb5LPeZ2z95PPaIx/u8Ksnqb335S+jgXZxqjA55kSj/IFQ0HOB1754D3fPzBj5FjY2D7ggW26JUkJpaYDYFJu7hf5Sp9yeJtgl24hnFrXifjLxpd060+2Noeg6kdPOeIkzgwY1EGlJMwxNr4y9BEEhlpcJKqkrYd6OqwqVUalUj5LjOtto67YAQedTV5ibqhGkMCN3Cg64AyCnDJ8PMbuPmbdiMR8hgSUD/fJ5ZCKMwJPy7t7T0qpefVVM2X3pFliaKB7wXvURPyGKHXSb2EP3WBpaulAZ5oKWTIfff5J2xlkhPRqzE+wokFfDkw61Z9rN+GWkLY7w3kvQIBTSLWS/pAWKYtlWGjG1W+tp+ZED3wRhgY9Usr0U3CobSFby2ANAQp5+RWeaQulY28zIONX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bMmoz1zgligLg5YhPhtnKI3QRO03mA421f9yGddvXYQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mBO337MyNCctrlMtp5tTLGeTlB0dBRfgRDrMuwA0JddTRePPKNmMqgsbf4SknDei3+4mVZECN6m1qLTYQ9tdxfN+BpB+gixonWR9aB21K+ynLx1MXIhC3D9qVy3Hz4zppuhzCkgNQQ67HIlFQuVP6l32hx8cYbKtm7+LDoU/ZYQtlTDEUxv5dsbTbZL11MkZ2Hni12hITwcL8PYRB86AGxQ1Od9SbcArKiKBf3sbfXjlKzHnTApPnKvUB5K13FQGNoXljneQZ63nt1nnullLMYMlDBrcy0xaHU6vg9ggBgPbf+HknrpFXoUQ/ptbhPckTCoZ1WFc+I+ExHvZ5xzmv2+u4Wr8ZNxIo299Z5sUa9mHTYzxCax9wG70zSFBZPh2YeiBic6xjWT/VJ3nkpJh8XebnS9v/aFO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bNf4c3LzP2GqKh8fDwByAqFYjho/v9jU8Mc9BMPSWWs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UVIJTVbNr09BRGnA5pXni3xaBqxXDzRIDGHQd/nSPwg8HJtDs9JCXVhRT2tjxVdPT51bx8l7c0JoaNKQxDdZNFs6UY0LdVIWZMBdjulRlsyj4WO9hbNfTbU48R0U41O92JxjRVTDJXlfBG//jd1pnVIOAmZf4HwdKpAx/OsYhVN+as6/SQVMzafeUwDycof7kGOrgtSYHIcgF6LkGgZh4wwW0jvNS49lqRMLhaLOj0gEYWQPQlQVgsVzSmO9P+0nfGRe2pJa+ChnH3WMXThyEGJZKp4/Qi4ZaXTy86cJvXeWkXXPlHeLPQpOIbKzDGbUiRbDzhCfdZGR8OhapLjd31GSXKjzmbTtB8FPFFb63uQbXf1PUeZQNqOe16uiEJE3dMqWmMonhK3VdjXlmy9G2GL9wil0ub5s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bP5NOXYw8atFU/oJpgYCRJAXmUd1ydM0JUbDVJFpHH8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5L19JHH4du54SeiE4W9gUbf8tAlMMAr2EKZw0hrkeOd7Dr32Kan9y74uASfQpgjXJEl757KEpzAjNkOA3jRu2JJcwr5OmCwBdT/m9b09WiuCosZAqqbhWAgy/1ZZGNfEzjF7xoj/0BbeViQnFDLv2upRwbJobRZXCFksviRu7T2SMXO546id10KqxFI6QCbSPHpPYD2+UyezUeRh6Vq0eLb/d/xAKFlxp4usNjZ6KD+GKiCthFbNyeu9SKpIsvcLjoImq5y95nV0xQFJiL/et44XAU2PSQHWT3Eqsk1PjPvNKh2AdGWh/XjpjdCewe2q19jxTz5iFXTrCkoVcrR6pa7dz6uVZYhERMmX9ZRSjfHopj2NB+1BKCANCCG5K+ppPaiTbjIBwOqf06+CDNAUTvbpN/Uk1VUH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bPrMxXHUdkfY9Bq1kNUxmpG+dwQZcooNj5h882THj2E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eHJrY2Ev26j4t/2Z/rcz95BcIqC8czgYjUURmkNzYaSQ7IVMyGyFBOH07j6Bit1dLhPHQIW+k7K9XvuiQmoqmsDiBBsZgOoHiozZ410/9z56vCxAWC7LKPzAWFeR4nqHUlwsJt/VpUQFGkAl3PEKpgCCRbr0Y+kc22YEsDB1aDE322IeWN7+PI1wtXYIOkcGBUip5t33SiRmlF601SwCc34klplHC613gczzN5+yRr+6cnXF9QrbWvCK0epZME0q4LLAn6m7dACiYthkoO/YFrcT5b7tM3yJYl0UPpcsIvI5pi4UG08qQ4cBNFq7oR188hxaeJZ0ViBeYZBsW6V2dqxi9ZdWYGEwjB/7akfMoHVEhXopaoH5uFavhxIzELeBeKo3xJi/6xjuaPpiHBNFFjidmLg5ux5W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bPxC8htPnApZfp5QFP4Scf4vWMntGAehWhb0f15FaQE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M7Z2wZ5w9jYaNxF0ZzykZXJ20N39BXFd/QtWVDMy0EL5miKuiGv/goOGxNieBkqm4T1wr7Yy4+mpUwQnMeCvOumAN0JIRA4JkDDr4Oza/ddP6o/geCUXTstvBoRTUF3fEnEcjZpJzwLcNM2qJh1tsbEYdfX2w8yCZiJregERqB/Fb3vqltJXqslSu/Ad/E2ul0yPAhTAkef9/ZyaKhXiyzPearmi8LbP5Q6ps51YX7FH1T4aLnkdm97NJHQCZWxdfbbygJZeK8/wMkOgpZMblT0wJMlCjNRYMTleqQwND3B6qSaIedKvwkE24MvZ5ScplLWsJntguY6FxJvFfeJQA6gaxogc3drNsEezFeZsJblNXyMD5MqAqb6yyOxZxzGkDymfT2U8tHS/aGVwMwCQJBF53FmI27JU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bQTM7WrB34qzbOvJIH+1bxyx5ujX/G2P0/toF+TSPo8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Cl6o+oQ3AEvPZPZcnjKcuM2ssYjJOUxOQRck9EesZriI11WZL8AzhlONnM6zv1WYBTM8nfuiKuNfYBbTd9PQtd6MCdkTfVAURJZtzmoKNaP6FDTXmXKxPKev552yMeRHOo+0iW9veSw2gq6R400Pi7AheVoIt8NQhR6410Nj+cTqwf3z5uTbByY74uf6km2j4oe+qT2Gl+OvUhEGoBP6cb+AtQiOgabutMLAQm3UOqRqqE57Ik+rgfwAX6C+mF1TbIp2rbKKFKvFSyXW6qhOXOhGXXgb2c4h/Z7ZPMvn0VymX3Kai3Up1RVtdLXYhDkr5RVYaokrsljNIMmkJxxD1l6OJDt/igPN/wcHpyirnthUWPH9QiyF+DKAOCHdZrPNXf1WuCP6RYIMJvoEX1n9iOXUFyCLYWL8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bQcdLUK22Gn0KITbJHireixaGWqM8Gj4c9v/8hYYWv8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Du0ZqaOQ3RPn/wH5YfD2rRg8cqm8rWtxBO4LUHVd6nehv808awmtEHJCYN3r74sj10EW9U07s+ZjXn9H+jcwDMvMhhbkP2/5+ROtJytNXKxESkWiztvHnympB0U0SCov+Z9+Nc99naSqef+0riQhF0LGOex0xVkdnji6k8J4wBKVp73sERKLZ/cuMk9detwiwJtXRk/b7PfxR5xMmfTyKjUWv7S6xNpoTqpwNmv2h2HbEgmlcDRGOhEjk88aMPgLdQIm1MMJLCxfHVJabOEeuiyhuYkUTox/XRuvhe/b13o/nAg2Zr2w+EZZkeHfEytBsfgiRS7p3X39Cz5cbb0NJrTZCHngvv5gdS89lRLRu5VZ5be6wllxF8p5XU4r68TMorWXy2auTd/UxettWJmbk6jJeaTT3tXv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bQt2xCXApHTD3WZ2czxL2/kYLucWxAVDuulAUgHWSeA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OfbsyEHAGq3Q0rltNxYFFK9ZRBS6IGiOofTQC9O8JMeuQpscpvsu8fJgagX2cHpF+dXu9jMGvz50t/zB2OYdeD7/7YX/LxaZUiZ4L38Vjv/rgxSLVWKN3GtQ5/KU47pJF9wz0qUHGkx3mUmaADdKldmYy9zE1eyFfmwhuq7OJMt4/8Hbbanq/5VXAd7jXjfWFTSyzv51xktrsyDbZoBZl86Cy2hNugBH1dUw10Oet9YgKNpnwzqzm7KZ/fwu8+2u74Fi66Qe+kCpl8sn47oNR4/+2CPxipk9XqFoNtEEJbkgF8NtxES999e5Ihd5wDOp7KdmwtitvTfXSp7X3ZsA9vyuMV15mfO4BXiIi4NOzGSlqCRdCbpclU0lil/0fwlaiJnCrHBNpE5vXyhFS4ymmez/fJpvExJm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bRByDOzrWiT2KKXpp77aU/KrLKf2nAtLHftHatHwuk4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j0FpgVXgoiMh664/1GLbgckGVnJPZigNgi4wBOlPOEXr5sJRL2DNsv4hVenwMLQSB0gt0ZrG1u35c+nl2oGoz9pvfcQo2bYwt7GoEJ56dmVyi8KzUhFkbgqeCD0Y3TGuEqJ9MLTjCwtmeeksX/pw1nwMCzjDIwPadqOXrZ5+pGBOzjoGIsGcxF8FgyqmqX1vc0oVKjFbmjgjlKtvmXDRAKt9mjl0oZFIAClgRibS9lA08mzHPjTLGmTqtN34GSIHFASuhv4e5xCs8uRz8BJIhVdep+00iGCHea/ndTvfhy+VhsjWWhgAR1UPFwnJdeeLMqwMdZ0tfdKuAdUfTpNWZqlki4m0O2djEEB2NPRq57+qQ53FAo5DcgiqJJoZsCKl44h2MWFRUxd0jQIJmWaQupcJgCgd3uNF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bSNA61K3Ns7WZmBxkM5DSdk9KBPplbUrsXWyH+TTX10", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "apRnRES09eMFc+MAbMATsEd6Ms/ThpXJHKOXD86w99ZRqqALsG1OUWD40B88YW6qPRJGLW9ACBipa1xVwyfKGtjPiWAypjbM6qqzTyZZZYxwkSCXec/tPNPXAqjr7jwgUXG+mUdNHHiaVjCdIu9tghISn3OY3ETWamZEjPfWXdKyDgDuVmEcQxjZ/p65wKw37eILFt2BkpB72SlM8sm30+isTud3rrB7X0KAtIjUc8hBa7J+Q9eV5u0QBkGBUMD9xq9C2RN+n4oJAQJ8uVIX01Y4Hvw1BXOljsfUEs9apVRt4OzLG3G63wwalBsxSrGtIOAEEulLMTX0QvieKERI72gKs7BFowEd7ulyOly/s08/9d/mJAx3i02vCcy6FtWP82nfQ4HpZJ6aqISMxXH/vk8gqkN8OvYw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bTc7uYetZ99zkzZjqcyhxoss3n4L7btlfKFT3HiY4SY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rQl/xIP2CaaxYovhR4QCHqpkqbtG/Nt6bSXWVzwt0gjX2Dj4SYNDhsyzxibf8AiPeBcGKo+C+kTEgImsQWrgy0+XfjrvrV6moOUUVCaWmv+EoKVSEf4OVBvESsU3zM0s70rL5fVvxiD0UTZXWvO8fgcEjPgbpKdzRHol9gLlLkRWA9vIaskN8TaSktIyzA2tfB3Wd8vZyi5/ulA4nAPtWpbVevJT/phR46s3G0/RmnZ0QnbcVXDtd4ho9DwsO92wc0G7Tc8XkjjKI1fnxHH3NEj+bWnBl3ibF0NhHIboesCG7ZTpS/P7mqfmv+C2NOKA4c9yZDF5s6nEFdouswe7Ay5VI4B3IAiD/OGUHLppIzJdOEm3JHjBPZ7VjnaHfoiftdxxJ3St5c89U4uBfp8hL8JLbM508gES", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bUt8Dx4IMenYwBCQs/K4KTo0dREmICVmMtRqx2EGohc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/zh3uJVboBE84Xx2Kw1gWo0bK6Rd4ZInOk2Ng40EdABFEoI+jwwTNf0pFsdOIoOr2LFt6N1QrQhjZn8W6RAkdnl7PSi6VNRh2pCWUKVKF4qi9VYrbuwTSHULtoiaRLwLAgcYV/niBd4zVO821YAVKUJyEVx1sc+eVuTLm8Ot0yrkC+c280e/4ZAuiPnPWDgyEFzS7i34E0neRwQZMziLXS93rAWBzwMCYYXylVuWXwIWGAFttkN4XGD4iedWY34xRtFGBYGD3jrYX3aVmdhVaBaE8Oqa6pAd6Zn2F2fznQvJpQsd7/u1f9H1w4N1EU+CJTg9aO1+xL/PwcSOrr8I3moFN93rShM+mPPTtxW15TP35PCbEKQZGmZIcEpjDdBGoJQvpzGLTlD3p87iZ9IDqxxbLdBp7b+e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bV6NiNO6trnSTeSmAI/s3m7R1Z6QekbMIX4OryqTxqk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0ac79zmwBu5VB7T8RfCbqSMDfUx5fWR8I1mos+/VLMeMzyywFpNJQyeT2SDTgvw7h+7w5pRgd4XC3lGzKCUnmXcQ4rwmHvAuzMf1PA9UKN+EOj2jboC9kfoEJHAiqG8CZtsZdLRVFgRilKsSdGLm2mraD8b1rco3nwGOEXihzaP2wCtxW9EmSyfxGLAHCln+7OPwQPpwgzRliEDt9NA+o+XGmMeaObCALSPyUDczW4qJUx2ZUquOHoPWjSlPyDVIwft1iIErXCQWeyLG/GTJ8R0wkqkH1FPs/KNwyJTwxKhh3QIefici5XZQmkWe0lS5ZMkBKzqKS7MQy2CRN2lmsFiPk+5NRpxI6ME+oVfbz/AzBmspZyg+RBoI81qAGUJCA5unGdLQ1CglFn+WPsqTrKg6MMPLsiG9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bVYKhkGask5hHt/He6VWgqaSbvJeGlfdIUL0dWsc6WI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t5i9YOMztpaH63rWqKqpRlIFgoupHeOJR0/ol0YjlXEsbLTFYPTIpepJEuVZzzydBmPkKZZ0aUy3DRqm3HQqkv7DOMQbED+oBHuB3w5NKxz92JpQA9MF8voBwHDFvajrayPSBtIzY3ldgQUZzyyoeOg70vTYq3y8gbecK2HCCaCPTxhFlSlnDgwweSkhUozO7bhheXZiZmXG+jXTZhaX37k/3gqtdljFFNKJws6NRxTTtzdosiE7hjD9RSD5xst1m7bQmiyoy4asd+EbU2jI7EY3Sr7/+9dJ7GtCS3auM8G1gli5AnKcb1ZTOVAl1VCZ1r7fvUQydl3gP/zyOycpQCxQYTNr6FWZ6OkIurDAMRePFxi0ewkr48dKM+b9vPr0yo1a7a4BTDKAOIvIoYtqrNDRaWOOqGQW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bVu8W55MIT1BVnRRyxnibDXqV+fv20VIyACIPzuiu4Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N8T4ExON8eEzrW/V0Qy995VYyNfwsxjtzIzbqVEPCam8X/B27yvWrZx1dF/AH+F89sjx70qVIOS0nai58XHzhnBc7HBd6Q0P0RY1gx1csBiygNfTf8EkbKKzYgjNAffVECWXJpJSnkgwJPrwhfKIEb09eHl8aQJWTtLImXeMh+ho6NkroDakR6L3mMxBVgCj841rJJSaD+BUBhx/RsCqwPjW72UDWpfXvY1pLHvj/LUFi85Fb7cvbNUXJJEAm42PWlHC7+7fRMF73JTX+lrRTrb+YA8jrjyRpcIQt+R0MY1VrrdjGjNjBixXjGLU/X6hRXs7GPf7PrXyqKhJKpifYZqEu8PpBaZfM7ClFzMY3IZFqF+34XvRADdJ4z9Oej7v+b1YTAvEnmenx2aBuivqndzGD+A1Qx8X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "baOevWZ7aapj59fLC3go1MePfGnlmTYReYlrrg/1vQ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AMWIl8p7LO5RCaqkfhI/5JlrR9tFnR0Mq0dik3bpseWaQHBHIkpCe9MrvmMdBSUiVtDPeWZflcu47KP/xtZI1UliLPxH1UceBz1ophqwuyAxGNLLnLviieghQFdlgBE5ubtNlolwru0PmLpjoxLLTI3+Y16lLvx+6VN8vNRThgdN+FNlJOVA7uOR1nH1q/jmm2ROc0zWrvnp2PQZ4soCeH3X9jU782M4SHH6Z0wJuoaNA+EcOlD7bRvdawutQg2+TaHZ4nhTFixNOWWAjQASiWSsw7OI6TOdFofCD/BLuOYSHYwtE+HCjDphjAyMyxcKqQd/l8R/+ozc6YHhZelC3oCVbba3pSKSKItMMfEX8VrK9iZkUDpI9uB8/fIzgjKwxDxr6FLys/R8fjH/PPnjwLBm4INo9TSl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bakJOIUKkxjBDMKunmpSmkpIrsxBHy/q8QFIWLevglg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fKXjgwq/Z0T2tB688l4x8rHaDRr5e/39yAMS/4YO2HSJsH8NTZzThkGWAjnLW2jgj/WmU0q1fgkFjSk1Y+jD0j34cCVG5VUli0ns07JQQvQgXyVA/Ipv0IRiLb+4nIowFG3C0Ep0jY6JrmJ13JI9LjFDtFSxpj/qfpJLAAve4pFVlhHZ5bKzvq8utoePwLGZNmMp6+Ksiyf3XvjSQ7c9SitGPT58o0wfRlM0Nu7UAihurPT59/vYxxUaj+3yUjATvTNjGa7/INnX961fh5l/QRiXg9eSrOiebQFBLDuSRthBo7TU+GBFQH/Sh7y9i7dSBGuSE6eBAX47N0elJU8H/bn4w7S5LwfRhV3JTqUWt4iXeKUWRB2wJWoUl1/9E0PoPkwE7fojBxgNzaUMi0DNJZzzDmuzUfbr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bdQ4IIiv7Yz/mx0l8OH8EJKUf5fZelcRQQJHvFNXUho", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6FIU1ni+hXPP2WAZxPqpibg97Nsc1LjOTwF7c9o3L2JrbRrKDT5Zv4fKx8R3JR+izck4hsz05HDrnV8CyC0czCHPBXdBZJ7Pl5K+6lz3NurT5gK/XliYboq0QHEwJZ/DSm+a7GSCA9IZ5WTVpkfdSYUOBpAfZSHZeE0Y2NkfayGAarowvCFZ1YMdU9lZYpA4MsKGOjUZ4lFFU0d4H2C8vOXjmMqRgJsc8kPJVbG40IsZhBjzTtgRRC3PdeAz/GmRDc6j6ThA44VbTadMAtHiIzRVRK5K4e+RXV/YvM6QikYFZMAYGrYNoZSig45OlmWvSJ7HnKC8ucF5RvlWn/cJlCtYjp6TGuLAah/R/wMza9E76ERGfwSjwuPQMOP0oOSedpMQX+gE6A6tqGBLQb7/piSLOYeLC+FB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "be9XaQqO15QjAb5NEmJgS3SAqsb2jOIiOsYHjcj0E5Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EFd4pei+JwMxopHstOje6jmRYN+w6GnyKzORep/PMVylkMx9v6o3bm9WcO3oTB1ZcRXrU7WnT1rITk4lNIozuEaBtPlLZbpBUJVc/1lGTs8oATeMqdjMkg2dK32g35ciXyLnr8PTzLpn7GSwk9kSdidNGrIzfi8qriw3mihmKly82nRva5SCF7ztJ/H/M9YK8tTbjw1dZM6/Fy4u4waDiy6hDJVhGw0i7gpaZ/wqi6XELy6T/7xHiCNZe1lviw5mOhvgFrRHC+W0tyGDMG/zwZpvgzJCAP6obqAe0Ctu95DCjeONpWNfKiqU7PNHVlA04cVPP4QFcm7DP9MhuY3uS2V1o14PECtn6a/C9+17CZJ92Uc4XobE5UzkRwN9SsbyBxTlvZPo1YRJ3azzdFsUhUc2avRoxJRS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ben8VMFtfktjr+zmauzCke34RXWei7rXwB6UpMC+U64", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+qc+M7MXzuNjOoo5j9Pu11rYsEx8UwNQHXij4xbmbwmX/Wh6ufCf4uIMRblJ4O2UAljz+OnNTlMicyxDYjijUrbZkwUQPa8K5HnlQH7B3oVW9COAAhZCnt3ZFYW957Tp0d+QbO40nlqOn5vP8UKrORdzxU0BLdVuwrZLWw1bSO7A0umRnz3CTVlP5g7117+udBHeQ/VvoG98eJuohGQYhr2x0SMLQPxoVlcXG5GIEU0D0zHj/SnBsPutXMNVD+TBjJjoQMdw/bFsWPfF4oCGkZjJE1wquyqjSYkgir19N4myd0rLmD6W0Dv5+ulabQojVK7Cd86fXdxO8Xkm9aEFWjIFOJXElekXXgHEs5ojsTa6LJPBsmvNocrBgCVCSSmvO8GSZXPB766VKP7+s4cfDre2cIzkFwqG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bfSBWWS9YkhALVuCYdOMlUCQV8wxrGPPJ8J1YD9osgo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d70Wc57YKEx5zE5YOnhWqaIcL6xE8IeNeg44IJN+t2ZlcL2mRDOoA9kMw8qQ9Sl4Da+QfTXQx8C0kr37oWLtJcMPijtMVsSvS/pklEDeOdOrL8DQnVZ+pHy8tcLkSObXqrswPq699ElFP4QqbC0BLPMTEtMb/vEgSVXte5db48W9FK4bZZA/yd8siLbGgGadyrLoKGR1+y5OFAt4obsLyaL0xLo7ALh5YIzranOQp8/LOcrzQ6qs9l9GYmySMN9DEBRj6J+LK5Ovq3vOJYKixs3qiBhOWK9rcpdE8322z3grzHDcCVq7+EK+O15V9O73avCJknYO7f3xXtNCy+XrBnYyTTFt8Fqe6FqFRvW33gUTpUh7dGyPanWyXTAIc2MI4tBBO0oqOPiP0g9kkpBkYYFfDZydi2C+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bh9faaCQDIZW57E5qQA5kzOBoZTcpLPzfGrVqkh9BsE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hHqPgWBImUTbNMXdU8UeyGva8Jm3FmnR30+jskSUGUR460SPDKdt4SXNlshmn1O2WS3I3xEoxWByT5/KY47shONobS9FOK2qku1ZTHjs7hRrHiyFKnUZ+44grjUBPOsTdWjeKINqW9ZrxUmWB7ahcNWRxBVB+zRkeqv8TUA9JlBw/SCLbrOqGkzZ4e/HDs0QskPuA7xchSjhhXBwOTiQIPjpFsWm6U7LzfBYTguAxyn88tcKuOWF947znFHzBf1l7i8cSrJuBbwZ7RS1JdKzygLe7bw/1I0NVdbOKWgC6wuMr9r+NRZfubMzhyWGZWFqp5MUmu+uWz8IUmzfl28RKkGUSZiNTaSh1JxkEnVRx05gJMgSeALRvqKdUK1A93cP7i8kdpQdgjkgZyqxyqor5u6seoiqMD5Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "biU2Hidlq/bF1SGhoIzRiocUucSaQKEHr949kQFsaTA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XxyeGRsCWcgNmtEPbxwSPFW8fUzV/dj5Z0bQighM3qpfi5Q9hYDpYXaU2QNJjTyyMd95E4ZXzUFcNlmvR+hPULfsGtz5f9mHgwguSs8Sa+00ICTYfFg5WJzcxv32i6XdObUVMxZm1UM05m7ckv/jXhim/Guboi4GmcTGtqSyE96f3lTl+iO2NSGF5tAZYPkeZsnSETN3GISlO/NUg56sAZ8bXHmRrulLbkAYL7UfvYkf215bJaY06ksAagjQ/mi/2rDI7IcT1Np025hJ7KC8JB5e5Kw3GWjafJgYnKGSectcUxyNvw/HRyz1R27NBQg0cQpTxqNbVnYz8erT/70cB5tcdNDJk4E7e7ddwjFsIYkbRuW9ee0KexDBUqsj6VCw1/qGmJ9JCuRxdnEW9dWz5u9W0GgIhaFq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bihKIkWAxNv44v+LWh9BytdcdvVQh/y/YNnYya2B0Dw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iMR2/x3VAOgGMphgAg6S9hI4QP7VSlMemxY+dIW52AdtjeWhBva0mB9grqRl5DOd90krimS6eVWAQajTMH0Ow5GZeihULCQpCqPhyBP6t41t0lFU0oDfJRIxnoS51ds6hIkahmJGG+csfw29aBZy+W0JB1f4arS9GnuY6ta00quD78FKHBq3dgap/ETjSERUiaMydSESCWxtX+m+lXmm5MPCRoyezuhvd5IrRVd6E+vxFp4BlrHaGVmXAoLk4ZahQ0MC/nGBxOiVnURUo8Bk4BOxhYMrEZsJmWZPY4Xl7VcSHXL6cImAenInxJGXwOXIBox1pXw/yLnHeP523Ng3punN8HiGQZ0kALdhtV0iUfbObZIGeQzjNhHDrwPxmQInCHrvl33BNKaNgZy6o9WwhQKHC2eDEp7w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bkg4KeOvEyPNx6juAGZAX4CZYN9/xGwKrN5KJL6zN0g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Upeuc8C2f4mMvQdlRceOOR9XPJaxAQ6d878LuAtombdxy21rAJoosxJ1FOpMvRMZ9M40qcRfFReiscOQhkdxSW0FfKZsPBVFJGHO/AySmiTZYwXeUkIv6hSDcpkGubIc264o4lpQzXqlVSYKjrR+tTsXUN5le6yG8QNTmfOkrDCdYSg3xp75SOSBHn9qwnafWRBQBlg790m8Fnr31I97zsBnO91/0nta/6HJs1yiJ5QWmhP/GPsanyPdCcMx99p5uo0qUYkpJ8l7RRcpFOpKSfdJe0h1rOyCm1DvxSg3YH6HqLt0i8dxTa++TYHai9vZ92Yf2nv4RZiCUalV632z8PPmagrNaucjrgbBJWOCT4tpCMYjwHkYZoPUV5yHj36n2F+7v5ES3h+nZHH0wyM0yUKpFAmXoe85", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bmE3VjeYuvbkau0G6Ulp1c/qpTlDBh/38r0NYT1FxhY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CFEgX0NX7F9NPkVFoCm6RRCCGmM+wSEBi4IkXvv2D3zBod1b4eXX8BPdGqVXjnPNM6GfHTypiA9qaXdvP9g7uoc2bB2xqB5DhozJk4nCCKBOhW5/Xa0MwQr/9TEFGR0XgbmF7wj49D/022/smHolXozId7/bsx10m5XTHzicEyPRoKdhRvwgPtOCAZOXrTr15Yusn4QV/dfzmCfBUdHT3lo+E/ownm8Vtuogs3fISrfIpTKHlSKxX94UoK+tQTHhb3X49A5IsUkVejmsEBSMRbhNgBzRnnpy1HbLSrtG2xGWuSOK1kXoI0TPGQGiV22SeXE++UfWdRHTm03EoabVILiPlBTs/+7x+jtESqO8Raaj41wH3ETV29Ty84lj8u5qcDTvWjtjVPeD48Jcy2amIx/OExLjdUHc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bnvHW3JCMtLoh1dBJBcjSOszLl562UeclfW0Payh1vg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ypMuqXpK2BiDKVuZfELXY1C8L3L5JTUAvRdS7j+LGWiBlsMiBPQFpzpHTm/MabvLSn4R/+sNh6ZecFI6iEhhopdcDV0tcFHlCR7ZmQs3gkky9lCzQIMvQg8/Tc+kh/HEP1TnSJytD/zxWTScbhOduGKYs/WaslTPGIUrY/dM4nf3gb6uB1XpdUvBxiDR7ZjEh95y2Wr1Pdh7VldTJLghPVVtJVo0is+FYFJb/SeQuPxA4rhSrw6WhyUjAb9UbK+k39gi62CLKldAI0ORg4gXESHnepeWDdXes50IkemM/vY6uOkSY46ieEqaDfIzXMotu4yyyYl2BtjILXXR3UFGh+HERdosiW12z29lukQAHtN2HRCboenc6f+qYdQ41YVK1SEWYO5EE1HI19GTPE+IOzDYpUHH6o7/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bq1vpd3XbEOG/x76skrD0VvdIqr31kNevQTOondDT9w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EB+K2n8/s5eGCSYSHBHWcv3MLNKVgMsWmIy/MIvE41m+Eg8zav1a2JotBtjqKAnTXXKTlgWosdhyZr6ofzpJdR5Fw3Q5hcmexSQsDi6LZFg/A+CeFVc0cZ4CrUPotfY1O/ZDtfOg03Er4d9J+IHwqV0VUg7ghQwOQNU0VQqB25nDJyY7+i5slAJ3F94Ip94bpG7fa0eYZxcwf1e0OIkoQZl5zo750gkpz16sZniWRkMaiR7F49oVARtwFrddn3dwe+VxzA0Kvg1u6cruG7dZsNHJ+42fLzKBFwE5UZvZ5y60W+PKA5g9MQWPt5bAEXm3/4SsxWjjxao5o/CnovbztVlxKi/Pg+NHRix6OkzVTUWpMCKDfFFdHXcSvdGYYAMPBT+FuZClj8v8kmfWI3j+7xYLZWXDb0iH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bs17FEBww1zj+sqPhb0u2zNpMIcNNyXwG4w4Fw6tJec", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9Iab4iq4n6QWsYNBKrNEYN3CRdH9tILXO7/y95SqUZPHHI7zs5AziDYQnuBSLuwtsoyndGrBFdmmfaDuteFaPLnnA1f5VrrcT3avdgDOt8jUuS8sWcJlqk6Ji21j/kuPRprMd+s2geKF+1YPf3/GYYfTM2kEhFHzqzHtlXdVUa6xAG4mR8aQsicrpbiSa9z+6Ex7e6JG1iHbV2wCD7lVrBnWzSb/KyNjwk17U4BCgO+3pJTKxva0ekUHZp4Ia8DMgBbtgQE0cRHXLsqBdlcPei5NcDn9yeb9rxeTOAYlGUtRYfR928K7mnTsxYgvAqI05sWUbuBrm/sgc4I/+udFTVlNOOWNHlnqBfqV4C2leEbOwMa+TZBp0jjl1Xc2WRMZPWsgGY2tVnvyAs+aebFU6mUeCAgEg8gn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "btPBQ8KuRZotzSXa8RNyd0KsEx+EsmlVuF90A/ogb9o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pD5HMswPnTC/ghAx/TJsj/EtgpknvgCnBVrHzTQQ/x1bRT5eZxfhYjeGzsM+fETo8t7LxOGZaJOB20t57Kf0SzmqHbjxyzR3ensItw3s28UzyT+HRTQkgBZ93o+F1bJWWi0Gd8ow29ojn6atl+WFKiWqe0t0ejDKyr24EItaVnVP4zz909E/eplvJN+IWaaUnEFHsStmf0ofsjSQ5KolIkepxsid2yRo6AETYrEi/Gq+ZnPKV28/7NSRCRi5g0Yuer/WSPPumZzomco9CTNgJnfzxWTzMBSUlPmayWbaz0q058WiGKGE/kC/TasbxuivM92sY6NAMK6c/sGEqqjHKYQhcc81Ix5ooHVNXgF325xVAFywE34y3MM7Pp94iHeRCsLM/Et9gE2rtgV+hzhRa60yXxAjHXMX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bvQE55/IyymOhZ/HCwlz6HHwzWXLNo0Y2FK5N9LgqHY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l0oyJTTO1fO5/akDlIgesOJenCXFzDx3RnWUtV2OPExKodS8hx74gnr4yYLCsNwInZjCJ+Zsua2Z74GRSsgRsHUaH3Ofzq8Xfy9T9QQADZGo5Ec7tuUGl/RCYGjPvtvxuRT/fu7PT3MGUZkcrK1cpCnfqAZAl1FLClMTMKzxilE6/0RhUraI5tjzOEYs82XqGBrKXCLbP2UpxkVLs3dnQxM4X4BeWXLgI0LG/j6qpUXdQLLXG0P9nBmdjZNoYWCYOHwlOJF9wXOw+ApnS/nVtrOJxxkBu2gVN8VvZCSbI2eC0z0b3KpWJ7ALa1yAVJTz8Fcj56xzI1PzZFOhR4zUK8HfvTwbuS4wi1pTKFfDcb2Y1GGSdEPZVKLmkrmSjpDpMMZN28k66SmHFiOkmmehaxOafgxk/OTa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bvREaw4VzWYMaCiG6Zdqz+XPCuj+t1X3tbR4D84xarA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DNAW0m+JEPcRMBzHqlyihP668qzpGFEcNOXWMhkgYsOJuzE54NIw+ol1znygJj+PjtESD7NGSgsAzJ0mvNa182OM+dnrQK5npUKjmHIRc1kSTooRQPJf9irEFbnYMyIenv/R3+lBULCFsgjEfDwCvXq0qRCrpWSW0BVE7hIpbPGUfWb/5SNKZQe903c5XpPTQg8ll5Wd+0w8bqNV8c4Hnhg1fptvx9JBGdR2V0Ip/3MNg7hF/+x843St1hx8/lc5GlcM2Lxz0byTY6tsLbGShnXINb3C0LvbNA5gqznGkRlEvlSldM8NWWsdCknmHC3JEAf2PD8Wr4QpXHMJPJzqAe9+cgYWc94hNAhywRCd/CDyPlGojj+mPoWg/mBmEWfAoElfylkLbRW06xZCtVQGdmeE/AYUfbgf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bvtRb+XYoB1ZdYmLx7aFO1LIsNDoc80CAkmIiYZ7RMU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qUHEc3/d4Uri8xqTUK9C3gcEO25Nfsp0hUzJncdIU4xmk6K3OM2K2sGP0EOrv3ZROPwWgs7uqcMqzlI7StR1NBX1o8R+twPHa3sKJPYHFcQxOYMjLoCOvOfy+Qo3pzuFTR+M2TNTBoQztVYrZf7RnmNHvd9G6uFDtMEGV1fFBeoFt21ycqPCO0v6A5KXOBmin8izPaD5hsx8SX9wzihW2v2NZzuCgAlBw3v1Y1cXg13woLBdsFxs56YXsE3cFTMoRuMVgEZp+0K54WF4b4qvM08l5tm1Qwnj+1aW11BqHnZxRgs/xJQBihhcUX5XWF3989eRWCCGJnQRUl4Iwnma1KHCfR97AfbcqMP4dvOusL4vAec30M/rAoCGcydBFPCbo8QfM6dCO2WKcmC0NL/BNf+FOkjbPcl1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bvya+g+L62tr/rFflLQQln9q/7Roofj3r5BGDogylUg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jG7TvvgTQO7Qb7JvleBy0cKfcZA4vpKxJ04lkLTIWPO5OveuGmFp5AuewobCA7NMyw3hxjQ/P3u35Ld7rLXWUQp+H3MLHTW5zBS5RlQPLeU8HJtol/xnn/SAgjH+qKhpQ7j1oVoerQke/GxoLOUxq7MoNlIjt8+5dPhr/u4jkalzn+qbgTRqn2K8m5ZA92Av+5NeqsIGapa2c9Vb9nBVCsFl8aSpFE9G2syaACp9CDDh95CJmFjhhkZtMBcGV0tiabFpQ+mh2JHWTU/Um7fWOBrolPY6xT8TJVf8Sk9O71ixeL/g85tti17GkoTNuv5l2w7VEL8XvsAtgj8QYCoHMbuCmbJlUCp49YsKFYcSoPjVxL0dGVhICuvehJIGjPVygtG6aSBVROkuDlcoh7PBbN3Q3um7c+rh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bwuWRkh+Qa6+gQZrJemXg6J7Y4CaXu1hManyfjFcl9k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JZF0OMksnMi+qIjyVQz4sKYMzc4kjU5yACSg9ZCIse9l8iFooR/8u4AuJIOWWM72+9o6BfQ2x454n5LS1lCafXT0APDKQQlwD2mZcb+50xAVAhBebWQRFAWGkgMxIdrJnb4D1KqLiC7+ScyQfeKLb+5MmKDYxUXa40dX5dy8YRyG8CmUVVwHL0cpFKdm3k9qy5Bz8k5KZbqaYBedc2uGzkESvMa9hZs822S3Hqs5ChBwsIg5+oMyITeXCmVZO1SDbzYDXsL0+15wDs1d3O5Z21NCdhPUhknZvbBxL1mZ8e6l7LLAPuEd0mGYO6DCdAP08VIaj3+EpIoJI0J0M2aJC1vgdEqIaB50+xQuJuc/KZmLRCs8gXqiQml0lR8bZAs9XPLQ+WWnD67a13SDuxu2g4gcjwfPqQqS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bx2MNjvZuWH96wGYzVAYeOg6o2bqqGVqIy5HeGxQcs4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pk8bb+EnYGJBpPowVGsmXeQ9O7txn/SisC4nWbgYXcrsmjyN8+GNdKfdHjRcezY7et+LHE7N+a1BuKD3pOrI6Gx7hKoeA62NIlSu4ThmzA9mTVfr1Wjmb26fnJGlEEV5w6qsrhGcTm0eN1v+WUdDcszvit6Zn9WpvY6eymt/vqFbBtkma6i4XkBan3+HsqYFD+fy10fNrrnrPJ0J2zW5pe8r6aFRozLkp+4JNqjf91yjbZS4/ZI3Rpq00EmXqCZkmhW0aSNXZM4Fe3pOc3nSAAhDqvY2bn9DYKAR1P29w19gIZZX91tB92A3zYDH5CKJw7FlOajE0bdsu6ZxGsqBs/WcwwhPJ/1QWw3Z02sr+n5iyW+fPp4Q44dH95Xg+JWSZBIZkbBcBY3kE2g++lHNuMs0Sr+2kf76", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "byZP91+L6N23xrFitnMu+6ntdDyjC0I9Y5vBn/kSDZs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oECmSr3xp+d6w7XZyMMHCufk4lzZHK/FFMzAjG/3DkVsLlklOzsvVbb2UpNHf1m5sEbQmLJuRyv/M9HtwbFq3+oRr2UPPdG8KC/eATej/e/KKE+3zKM4JuFTdWkpywjZvl1Az0r5M+phnR/qy19RTFQc7QbfDUCdFtgEm6fQLPQqZKkubPKBukcjBCU2OHm5JvheYS01J2++qcMpeHBKNWgUPKzXdTG7uMiJ7EsmOdt+NWKQtWhkzvZWHd7RBiAJP2ZmY0Y//TL2WwqAJahkL1OE6vrkCIba/8joxvVI5K24//EX4NUlOtfnWpzatHmZ4rtsSeCJX3JMToUjI5YVQVF+1j4gusmh2+bElc26Wv9CTs+k8YULOQpzjFvxjrz7NBZfQnwnAR4CZ73MWUJ3PlMVS6BY6wWc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bynBGt1Jvi36UqhTDzkcv53iIFDOJ6YeAywn0FS1oq0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SJ4QhL/5YsfDmWGPdQHbfFBsd7skHh5Y0z++ncCRWiFZVEZVtwuJQes0RZEkdfeT+9tzhEBV57k/a++rjnlPXhMuM6cG3dQvsVxgVI3kF8w0jHB5ikG6X1AUCMDq+0omanzHzwSsufC0y4+TJX75elTAmLtiBZ5e+yD6rscnDTeOc9Dl8PF2T7QodLeYBcdCp+3BeX4M8RaMnvVqy9rVIqcAS7hNdifNk+7uXO7Q89eKC45RQVZfan+uoo/oAN/ITBjZLAyRdNTylBpRSyuS9N3vZ37idkg1n5C4a2+eEUyQgL/y7BSlsNrmKB1J3Rv+rMxcD28C5TEsOg8/3Rpr/bT4OCSCgzTiHwfQr4UIg2pO2K0pqnMVks6jo/M4HiGshn1H7dhQPUPA6q+k4Ui4KM1bInXOgfVE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "byrfRmT4LUk8mjTlR4eBVFPdeCrwpGjRSgsDKTUtU7E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T9swf4ZbVRnXsY1SEV80tcTkCOu7Wl76KbRrKqZLkldAzDljmaR6CMyuMR0b4ui2rEfO9AwfGOSRaSBmNNYzW4MLGQHeegWsnpwnZeZ2LJC+73aWSBlGSTG9chCNGlLjpDxI5L23YxZZJ6HOBGen9xL4XnCOfpKxsvpClbn9wB/5vQQYc2fg4s05aWvvY0YPkNhMfVj2HEFNgdlMZyzMTlC6rrZB081LpHRMTaFLFxG1re9o86ml+jgPvjWSLk2wzKIjoTpt7+t28dswQApT55JTyGLEO+tICGRxZjrtW+Bq/Hd3HHF0RaBqLyvGq9D7sXjtYuPTBiEcTBvwWdL9s/QTj/MtO4IrtSHYo6MwpUuO6/fHtP31A7OZH714MM5YV1SWaHllw+txw+HtCeA025dO2kUO3v1L", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bzKfJu5oMTPiUWM3RBejAkRTTJE8T/+8Roed7OO2wIA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JzuTCXVYB5GozIpxGgfAV0gt57QWEhwGctvzQPFLuheJrRTXlO9ty1SSmz13U4N47/ev9Cjp3iyCyjpJevg6zF7+/9JCSA9bS5JGMHmsf6W8pO5XL2Ml5JRmtS2cuyXDIWz3CKba4dY7wJv5F2PqgQV50P49ku4puBov2Jvjl0Z4NeEfKdUntaMda2ypHtSqKsdOuzYwhKS/X3dNujrd07yzJmL+JchAuHBU1xYo2Y6tdwSbSoneChHDFDvNfNzugQAkcZejjrDHmGlBsTuIcz+9tKu4GLiSvWeXYfUkTbDQblIGVFB9k7FJZ550Pdr3/HR5LgacZNJriLB/Ds8QCVb7TGRqug+D4d2CX1xew98aZcZCW74lxnDaOUK3Chk3ZnIk//cMLMMwZxCvkUpDLcM0pd9PW4ED", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bzhYlnTrID1kNe/qE7gKyzovTtOiqhM19wr9WbPpkpk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mO+bVYT0+Icu4tjMcZ4ABqNXhC8DmuUT9bT+Ih8fN/KKuuHPF+oRroTYYhlHaJAFulQO6/UYEz2idLh+z9I3+RkdkfV00pCVqpiDXkgucqIzoi6qYi5c7OJ7vfge3IoobOOkw7KhO2T+fRQNEiEZXaPYP3tc//fan8gMWIvYkDX56KA4Jjf7f3pc2uZWujucRuo9hbNEiRuJBBP7QZounbFeEQBzPSoVS4A5gYEm4fUkEdzD/VDVEilrljqUMA5TTb/fmX1p+s33wFqQtLFh7h11UK8VcxGFII0d6N4HaITdVq4m5CtMIJCI/73pcfx7cOz8wU4qFZ5PbMps//CEzlUDndWv3cnFON1EbyuCYARMU8Z0Jx9+xImeJdezQICRaMZHmAYgC9CkCarluPMAKXeM+yRIzSD4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bzwKDcpJi6WAufK73RrHU7O9HAgOJQW7DbPeJmgeEPc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oZoGa3wxKRkdNy8ElI0nsMOSzDM8/9rQgssC+ZR+RsnbyBtLsXOqLhqNm7pGlLw7A+gKZoZI7XlXssSR7MxYf/6WsXEKyFS2UyYo8lRcuy3tEvkm8+ox04Lvhmaw3Oei/WSRt6jEoddoo6cps/HqiybE4OUcBio/lCdhq1XrHK0LTqRXYuyeikRHBPKEc8G61HeWFj4IyRhNwU7huBmy898fR79U96osHKKAls60prfjKKjGc0i3x4cp2cy1HebrEQApN1VQ7tl0qkd/sQMx7YlvfIMQB6dP5QlQhSp30KbSdSEcc1oAa4MC72+o1/jHKQE073J9S5jXmWVw7/VuFTuBCF1uWVx2eKsBGPzfR4CxkdlWQ5DoORRtOO/OitBPDvAStw4owIRGikavl2hNbv783m58Xahb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "bzyuvjJ4fLzQE5bUmXU5TK+CN0EqPGaOkqcDW7eEtjc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SGIoSEUXqKhpFHoKolyht1CgkXV6WnhmiPFn86MfQfFj0lvvNx4Co8B1t6UQ55tc35+Vl6EOIzb9xWC4ykMHfhFWsIH1uhUH3/Em/yhT+4wjf8ukAt9pjyGw2y3zovDyhkKzg1sw/V+ABeCE6TDPWrsBTPmiOUyMQszO80aj+Qn87m44EXOYOgGk79lmbbV8mZ+FWPn8kVJ2w0zaTaxZjxwIsPjYGhYW+g4njSohawD8icdt5wL0f71FTdW1FZlVcmRzwzlpdVUkl0jvhxFgNk5ldTzy5yT0QxsB+mKknDL4vcjyQa+EayRiiSLDiOFBuQPST56Wuq66hTT4NH/OF7nRvt+tAzhV3Jc15RY5pYGrWuKK5uD3/t+YNnp1JZiRN6+E57rDN5dTTJeGMKKqU3t/hf6pXP5v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c+jlAxCEJ0rD4Y4lthiL9rPNUXIiN980Z58WPaSubcw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hREeRqvT6IEf4aqaa3DOtLHX2dcqU3VE0E8IqDznYoMK7jy1bSqJgq0MGWE0pq4zqnHtaeXQCxPEACQpxBgCmjcL/0MEEbXEyXgyf6BwhUbjcZo/BTcheemcEm4P+X1mIhe2iIaLgh8Y2kX4hW39VRjT95x016LJkG+8911TK0z4Gyae2nad7EM/r5CaQLsJ2h7fHmF/jZeLoE6dfjDXtR6hekZWWXl82qxD+wxdFw/CIK3v1BFGEN/dg4EbwJjCXx1+zOC6nq6GN08rRgTxjkSJoxYPuDYi4IQcSJsEOJzreRNz5kqK8dZoDL+CyXeqtne6jQ9a66c1eSZpcLsTV8leD5D2nw160f28qtflhJBf0TdreMyojWSKcP4uq4mv8+6lnq67BQQYkh0Jhysbo+aFVX7cu99f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c/PIwnjVwdzsRC//FRAsZRzVlPYecSHOAJWpxLhrt5I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aYSwmiXHNB8OA0sIcC4alqDKbcT6xyWdQPb584CQsa8J6OBEl8d7ZrCVdYyEKCJAUemHYtx8uwm2d5IRgFd6bLUg6asjwZTBXLZwmK5U2yqeX48Qxh1tBmVczJSS72W4sUJQqKc185XsKSt1ZzB4zPrPn5Vn/B9z1uhlEAvxfLQz06c38N6b7uSPnkTXw+M42Dr/wCCHBts5Ip5vdIO3HJ5/9JrT7rGOyrwt/9m7u1ogYN5Sktd0mc+/QGMC+GbeMx2RxfRHLigmX2K3mlaSzCIdHbwzUSW5ZDXpYoPFYokHVEy6MTp3B0aLJirnnV3xMdRNfiq7qSiQ5xuekILK0q8F/Ege9phjjvJnDFqBIpXB0Z/WHJd3EzLPNtvntuXAWV0D7agczaba0OjlqjNvyAZJMUYw/Mwc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c1aUZ9tmkaph2gfr/kwhMw+FaKWU6YELaDSBOcEgX8w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FoowuMYl8fmSozHUCn6ggfv0cDwkl+vsCcEypNOEWilJCMMj7NG7i6ZQO4S6Miq15HUtlu4wYTBSOudlGmkX6mPPkOg/7U4XlOYVOsTFYvPHJSXfgADmgfQ5ZDgIS9uIsYzaTZDrp6K5hI0ssuE7JMpPUieARc6koXNX874Pe5EC0fG5KydpfpyYCXQJNJWpj5LvGO9cDFBEQu1WH5O8McDURMftMuZKOYpdr346+syqvVSWESq8jL+yztsYFkBPf0YNEA/zczYGu54MW+8gfK0Gq036xk7zC3PsoWXCmZz5wOP7TaEmXAuF67m4geVdR1CY/OZd7REt54e2GfN4B3cirS70pwhUyJhBUIalYfxNha0qjeYQqc55Is1kitHJsbJPtwKB6XBcdBCP+oa2AZXMZOSqPZ3t", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c2cFtnS/w5nFLwQpAif+WIAr9vOxcalCgH5sFfdOG5E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DWQVStvw5fdQVEyfQEudthAwl0Ybc5MRAP47meyBywtbPD9zkcZ8/RAtKf8oU2o3XUWgVY0ViIJCRDAq2tMRg+08veUAsiRDx05VkzORwpdmqe6SL9qTvRCsh2tQ1wGDIFW3t/1tWIKo84cYxgXAo0C6agzUN/n5cBjTZTu7KphzP9j7HI6P/MpyIyIYfjQhXu5HEY1BLgSPfphWaItIMDQhgQPkiVIc+sYhJhBSxersQoQglMVTHnHvgXwJxNq0N38YFUFuXEV/XPROJJdxgtgteZ4yGbHcLvMTRSRwKBok0lUKwA4qA5S/Bje6PEzZFYnPCz7wuK5bZw3wyEynzU+Sd8KXMGwoacqxAPAhgbltcOEuB2Xk1IHsOhmW8lplzrnuULHSH66KyLp8l7LXRv/F/Ekudf+w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c3B53XW8Qc24b+yf91GMCK7QBt+GgCUZXpM253c+kvc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3tyvsP9gpzJbsAGcClaPDLjZRpAeotbg1yIAfq02PvNheP/ybXrFkBFxwyoE4WctiOYotWV4RyKdYX7h6DjXVK8wJv9mf0NWOczHQhDRI6G3eW69I0gpNak58s7uhv7NtkaXCnHoil/ze22AYsg1ekLfh+CfWFoun9hNiUsea5Blm+dRg/JVFg4hGeCXTgE9bTHEN8TGPCiBU/EUu2nNBToNlcdyAehiUSa0XsacJWKiBoDy2j0e8OYW5KJRy0dTngsRtCgzXxHT592rGs0G5+dtzV2+i4sqs8gXdI5VNREZVKpkfJYIVvsbVsqsbTpCto/F/a9v8srUHplYYSUz+2Rg9FlIN1c4Tin1tc+4Q1aLhkk5Ureiw3R/XKyzUzMaKaNj6Ny9tQo001E83aQRsCa0ug6oDi9a", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c3TZ8mjZ6wouU9oeSaTqFkGPopvZ6s0Wg7h+8S+a2oA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NXsImx9SsCvQ0woPis9ZKUXy9DhbFg4I0IhjwBvjkDETmWKp53UAHBQ7dxtrr+IFbta6Txd4mBL9CO67wD3xym2wECa9PaLdwWM22M1jQ6tKzq9H2mgxk1FzP1sGP3Nq/bZ1qIVtPBZwROxsJ2pTHRx9eoEcOjhiBw7lWEup8LyPnr4UpS4He80aBiLJ6VV3kqV7upZX+ZpunFmPKmgifrJyvaZGtCstDVqAHQP5Qmokr7xm56ArGe0F7Qb9H4/U2fIw6+dT7ptogcJyqyxbbd9aL8NPe0BR+DZDicKkA/FBVSYAPnNVrhNcEeLbK+WWE99ToMUOtO50mBSHZdnm08wsAZfPP08FbRJM5P1rcTRVP4v6P+fRQUPdon3Z3ARI2rI2ZYvZVVKOKpBNak9dTEbUM4hxH4eX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c3WlbjlrZSa8G5riL3z0NWagZ32RuKXSeMspsJ/HbcA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SkfAGQPqJyH6I/jcnFaRKIOv2oXpoZ0T12hnnMzCbnCimhqoWXlpw1mIDXfVv9A3dFCuy0nJ1kBnvFhMCCo+iUhr0Ls4Wx25yWINMVbbolHgTLohkkomevoPF/banqQl7lHYjPb/njt/8CA2ATW4ssAPV1Jtoq1ghKHjWW5Eq1R3qEIIghDGYFW6pEQb5s6/zAaTa7Mqfj+eBx36ptrQXh1L4EZz/PRpBmU6g4VOyy5VuYVZcQTKAc3ywMJcRqM3nnSsDVNL8SkMd6INJgIrNDPFLYP5mZPD9axVV8kbTfTFDtpAQez7dvxohnwVxV3LRptE+OqLVWM2OShz/+iy0eNxh4ccV/gvRiLVWgGl5mxG6MtOZv8QsIQlg/kNZ3LC1bMuyDbpd2Y0N6PeL7nDI4ciBOlHHWrT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c3rNWWDQRj68zGBNkSXRlUhDEHG0c9pJ86VhdbUylPU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uu9ySZZz/Wssah5tz6f0WDM6HV3bvgTb2bV++8IcenFRXlMuJePcur3SrMr4CUHmHAcIrxgbGhaeEPsV2m4n+4hVO3rLIkOT8peu8lWzyx9t8NWiE5F07ZrlV4AO27+VSZwEJsHvPBb2jIBsSIOb7BCO4ZoL4+YUAbL2inx3biKg2lwJnv3bVVRi4iC/t+oDLpyMlyIdkyU0SFnqvccLIMyyHpvwAXmc+5W1tJma+JwuskPAIxV0f5+UAoV4B4PBPwAoQgNyhDlHrNP9OmJwHiIiOal2hdAPh1VVnZK3gk7osu5Ywb+CN1LnEeL+XrtJBDLNiJc+tFCWZJqGPxFugEzy007Jj4lJTcylyfSAYOmBh7mZzhOVCs0ek9tjtQ+K/8ikuKHc+Y1nmZ13Q3APL+OVbX3bNd4U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c4+4OU/PB57AuEPYcxDCR3UI8aLRpfipxavTHqMt6Gc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HbRYqkTXOh62iWggL11wNgwpapZPyOL0ggfrNBBVVqqKAKbwsvxPQ3yQKLkg9kXH84uFnLbAzFuNCMS57+KB9NxankIgMtmhNG5xZ7F0gnDkdd0L84DzwP8LOf2b5cUsH4C7TSZN4qoYYgDOFpaflM5YgEtB5/d7JZjzd2y8l+KfT/uA9r+LQdgkcwcTT5y1rLH7OYewMKWfghapqOIyVeM1emCMRrFEexW2CTDeK+PEbFwzVkubJZoofpmnej/ZNH0Ty4cOfDtt5piAcIaR16PJrp6J0lZjhbu899g8q1lWmz60mEGl94LR1K2ALge9ECvyM5HQ5tgBpPWHOxoWnNHMn0IuT39pEKsLOJtWOLviouPIq5MDftVrT2lTYsJd0NkPlHnCW0NIljeT5cSrpquhVRaJW5cN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c41dBRF2hhAEiyP4TCXDS+4TH4sUgcsu5YjF9whZhX4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+TyaCP7xxcWSZJchK5R35Pgwq9lYf2tU4uhx7v3GR1j9WHV9afX7quYaGp5kY9Y8vUAV6tEUPIlQzig4AFPFVyvyRPHSxnlk7muGivr3vIqkGWK5caQUBmA/c1Mr0LEqg1N2ZCH0ZS2WT68LLiMusr/UjJDKDlFQH53ra7zOvJx0wCgfBIEdWmBagkXbpCo0Ix3MSHv80ZXb1HWL32kJPh7JOLTX1ytDtgr2gltIRg5p0mPvqK2qUfXGZGWFGw7CqnsENueat+7UxJ4nTB0leA1O/obbZVm/iEWBUMP2BvgLOCU2xz/h/Ft8HeWsg6pP3J0c+jbcE85YD+Qzijw/aP67cn38CrARyZfyjJ+8IhSR4ooP0u8VqFlulhIySzh8rvX5MSsgyn3v4L8eYS9rc0Km8ixp70ND", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c4Awd/hfmTYuc9E0OT3ofeK+Y7G1R/NBLi/4xgG7M4c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s4ea2bU1GnSWIBH7eF/2qOXslP1qT/mFVMaJCFpBqHbJzd6EIs7ueirYbyAMbtxWUZ6UjqygS0Y/lv7pfXQHa64ZrePEBCR5KM8BIfCEZiigV01I2krv4+A2GAm/az2gkqPhlPePVQ/+3zIsV11IpPsHbapSsI9ua5NvNpmAYDc2ArLcBTDz6tLXC702EUUdYTfFDMui/7MOTbwUXTabm8yqsVtOQCP3IS5aUMrwOTAIjJNX/FzT5bsRnKgYhx+LJPqirq6btJy1/1jVDZvoQHzskM9P+bC8Y5MVG0M9k+0SortmcpNcAwM/pxaR9JtlMxSF/LwF+xxcB+qxWxCsir3m99CsJ2ZxzcmE7xhVO/d4ftgXxahu2HZsc2IEfqCASRAg52oIozvOZ2lBBGryNJSZJl1sdu8A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c4Nm0T5EeXi8KszfFvOHIqNgrpaZW/nXFbgSSvV/oUQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GKJ+x7COxTJ3koj7S0YWkUCMhVBsH1L57omjkPub7gLW2+p30LlBY7LgRIZSj9i8c86a54flop8ZYbLUojl80LJ+A/dH72wQmPkSjnW7yCl+OytSsA5eA2uSqkQWHsVNJ333hrWr//G4M/u1mXzUiVPJCDj3uuBiHPaVykBdhw6Ugj5tdN5snZ//B5zL8zn0o3HPREUKiamjuExdozTVMDROyw+7CGe2AhM8VtA10S/NN2cQm2w2Ct8YQW7LASPErDjqOw/cYsQSHOaY/BvIYmveWnEECD41d2dSR4d+CM+smwMj25Vycm+d2P+PWW9tQoBF4YauXfi0NMV4MGIII216CnyKGXY8hS5iQh+O0Hk46dVHy1XWDDFq/TB+o6CRm7KQtU/ylm88FrHTnnUQpo77yCiUz0bF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c55m0DbS1vjW/W88pOjB1xPHkiJI4iim3+xYoMbDSSQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "61n/4019a+0xq9zE+ujmqxANlrT+0J5MASxMRnpFmMtXrQQvqbtMgcfEvsVaXStl/ikCphjGipkRNTEXkdHJg44QYXK9RF/X/tGcooaBV34SaffumgCkO3nZxY8TUUTLDBBb698qAoc4YB//wCYO+SK4jBKSD5+Rl5B4smFzmkobB7BhCqsxz2mNTsKSPJLFQReVAdRe0ecqP+Gsu81VNnpMsMPXMTX07oWjd01RpztYe0ViICw71YvP4yaXQn8szXHY6YKT0FpAHUQFfY/aooWjZufWj+U0zObf8BnUlFLaXuXyTlFWEr3smTDUgUKHjlZangrHNvHsR7ErFCOcmgg9HY+8QRnLAZKrA7U8ks44ThzT0dI6SGuM79diJ29tZNTSvTz09hcKfWA/cbiNDLUEXj9JhWDn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c7JnmNAJ1yDGS/P/oSPP0cUayzVSp+/NBN30o3xfolU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/7jc2q4K6utYpa5RqFakfV+g2+2ZeEyJWJrAv9EiI6ZEoeoGnBd7tG4y659x6O2wgwutOKD9aJ86Qnw1hs9fUA6PMEO9kNXW3Ujy5k+fgsYcZuFKUIynlhdmr1All/IEqkY6Ov/nyv/BifWjDeHhu2mrIqS0yrAcEYd5RjYhF+Aj+tHuKynQRq9hKis0z+BHCRVyTI8BVUfrQkJoj2KtVyaib98Cu5f3/RuL9iHfxCb0G326L603MZZFjBnIDLDxV9WvURq1DDIdM9jjWTpKpl1h1ahTRr7Bnxwiij1pDiJreY6iBKIYGFWTTiu3EyH6evhv/Z0IBD1dYoqJlyWUVa00ntFtmpbfD5hxLzq4ta57/pSRf3WqgGHvM7Sr7GK5j97fjBdgeadYm12FXRB7Pf8cZRNGcK1A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c7oXahbpJKkg/IxG5SoblfTcM7bqyUxxmU5tkZUjISY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2GSlWim+LLBU/dNdzNte54qifzcLo98rXggik8Tv1NeiEY2a5RejquddPiN15QZgRBFdL8Xg6V6Pm2uG7lA/AnA5SvhaKLQBrFdeNmcjs79D1mj4cWJ4nQvfRK/BbHtz1MaXhpkci0Hd1KZJ+lTB8mBGVJJuzYEKE4MBmPW0pmc76foHunOgOxjf83CLzKNLQ8+plrNqedU8FpxQUE0YZuXHbku3O8LlyBaKtlJwC8jUijldIM+aD+i3kZBcNOe4vLue0mwRIxdlKEvxpw17Ssjp+D0qC64NNM44qgj3n7hkI0IIwmOc7FMYSVAaUY1pUHsa4ETs2sDbGpSkiM3rO3cGTP2ib+oZ16Z7qeatYpnmdsZHw1mAI7MUR3zzvbajKzUjkuErmLWb2tjTFgzFhWfdhcBdLXEt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c846bpOKcFQvz8vV/3zPBx8nixPwlQAZrfR+Qv/iE3U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ELRxdOexyMqUFf9AScMhd5QTLtPjk5FRGB3aZ2N0j0q4DTebvclzm8dkG5ih+RkhOmpKsIhWR6vpyUV6VuCiHGFMcpjmuBPbsmjfZBlRfleWgOP/ekbo0q3ypVUhum24VrdkenMdCZ4of8vi8ArJ9AHsu7q5gi4ShjN8mHId+S0TwTWg8kflCdZvP62adARYwcE4qjqNXUajakQDeZwoRPanhOOPcNHpen0zef9XZBCyCESzZOY9wS3JR/c8Oa1VHxPNlDVwYAiiuR+VawSw0HuGIS8l6WIfi/ybWuE1u4CVnokzXR1eGen41jCFhwBcQ6yUoyQapeD1rn79eRG/WM4G5NTlLJURj1Us4ancAGtMBqgGIzTy+ak9r0wNlyNJaZ5u7WRGM2RlFRWLEqnaWCs4sF60AMdf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c8tgsoG8VWqBavGRaIucb2txY/as8GrdhyOGDTJNStc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/Z0Njl9yjMevT+2dEYro37aUPe+YzB6KJeQYxbTfNSHFgqxfof0ddURvnI/Bxwh7AdPmuqO2olfB3ylFVaaapiIE8xer3eCEJbHFc9LKjJysg0WLVPIaNEDTzvdavncJLnrxsPKPgqdUitpCtoIF9g/nsUVB+jVUH6Cl3ZfNsv9PsvJNh0QVfZuTXjvOOPeGAQO9t1qFeoct6IHlpSJR5fvmyu1IHfuJKwlIaMtjO/quO3dLmcfV2rxu1CJ0i1oopl7h+zBPzUaedUV0IPhGLl1Zcw6UWX5pBgscPO0aliHkhmJofTagOOgbmuOgK0y+uWLF9cuFIIl2cKn9EjTV3V3NziQLNoMtNyRay/Of5MrczjZzbvbEqQlnLaKnLDcmXsRTHQtI7/enNVPXXjlLqTWc2nxNa9FX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "c9yD/XucfohmjYvStHUIgPLHa0d/reFDX6H3o5XjeNU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "icLfeEANnRyhkZtwUpTZPC5ivL6TYqVm1bCmAFS5nv0aux+CRL9Rboyinjn+G9jLjVt4Li9XqnFm5mU9w/6kRr7OuvOtWccGC87dVk/WoxpYqFkaq2Wmpk/he9LFcz6S01tB5q69L9GiQwV9jfwUXZIDrmiyFmslrfC1CIVb5lPqmI7fOk2nYZJ6k2OplWaYB33A35zq4Iyu9vcDkrt5TdO9ph54wU7EEkNPMrGIbhndYv2+hOE6/+1YFNThIyFLsUTlQFI0h78TWGdi1s/smRhdEdiX/DzWbtEYh7bJ4ke5ykSjIfbrlQ6sHEO3JPAZAz7Xm4ubEgUKWlPISRAqDILViBI6ytNrd45zItgHpIxhGwbFzx+xGbRDoe2X6CEYMZk+QjKQPjG/nIS0r5dVciPBJvePweYC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cAJviYaizYM4wmHI9AKSHjhhwLLSqCJvezT/9Kxhiu8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jSz65dxmqkRQB3uvwUHyTx5e1qwsRi8y78WrSnhuBvuaTd/sXk0Vf0I55du44u8gnxcPFQJ6Ew36Mah4yWsGEsrR7dZPuJJFuBkXUub1CiDWOntwugGTSmnD7DRWvKzwVJqQ3UGMFNhN7aWCmUXcZpzdGPwoLNsFIGbs1ioHHzdfk3EOEVbSR1QI9aRhAYzHjSKB5qokbdkrYC+IeXnAWqqJ5MStlMCCCA37pEcGFGi94VD6dJ2lycI3F444R3PeXyOqIzszIrWga2hY2JzwjIQiZGzWQZRCZZ5B3AtkN/BeLmkYuqigUD1vm86o0jC06MqDP/RAcA0ivtIoPFDAJxR+F/5wgjgujnZrb9RSdBUNyfDhvTfddEi65RD6WkyGVPOuJLg0N1tWj6PLt9DlwRePjcNny/W6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cAYqyyaSigXIBiet10GgbConx290H/kDRm9R8wWik+Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YkGC+mpaSz4uB/0XZgzzOif03GxrD5mckDWCbcBLDAu+H2KiBd8NxjymeWDpoRG+oYhHxSc8LShFMscs8Kv65LS+/j4GnrMfx8T7MS8dvFA2mYKTQ7SrC5YEfEr0qrmfKnV1akV79yFMoin0q0WTVcqfXkKXTr0pVyBZtR9K5ukkjfuKco/MX0hJBfRZaJerOjlDWIuDKHJJgqexNCTRlcQs9xPOefB03Duz5VxwgVyd2P7m+fDlOfb1/cEqQpOE1OrgTX4EIGt+9AGtCJrww3UGQv2aQwS9GRKdUa6tdMYU6qbMDKoVUk0md+jeVUIu54dB5NVm0oALfNd3re5Kg4LZzke+X8SQjT315+B2OUWy0/FhKswrY1QDNS2waHoiVzMSnFnTyarn0Cj11QsfTLEtv+RBnPb/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cDBdJgZz6pA9PklUw7ASr9Y429xAyzrTy/ViyG1bGTA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N//W50tZ1aXYjuuRgmH9DxnV+ty4CfzUDwFS8EEovdi9uDDPz56ckVp/m65hX5is9F9rXxI8WDJRhl7hl3qxj9jedADPbaLnRNU8r0nbRaMqYpgWOb+7hT59MKHxxWU37rdNV2dSJUrQcG/FDqcu3buhH6i4vILPPuddbZanNz3lAMnEkc3B3nmMhYLl4Hfnpe6PuxjT6zsfhlCEhAeCAOw2rndiiDE8rhdNoamRpiNzwnBR0U50tG9aFNd3kBo6JFLNV5+N0lfjEMbzEUfaWF6Uhf1n764CvEYhdfglBtjwyUnzIOzJvF7EbQe5Vr2+6DBHq0rXmgzZMQIjGYdHG+kOxJijJAldKnVahxK7BN4k+VyE5suM2Q4tRuYQbIx6aSJyhedGJKkEKHqHDsafo4ksu9v/EC3p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cDvfqZpaaP4FaO5GDNA067kC+wxJSNNprKWT71LKmX0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "16kyc/rbuxXWwGi3Zvf+lSiFQuBwhJvL73Kpkpb5+j+MlbeuzqKXHensZ1+sk8PNzEjO/iqqbVvF0AJ9W87S+GJPk9YMgUs7RG+WbACXaHMcdrlKBvccSb4K7ZaxbkYXyCTP8Pwvr27O6m85m+nx6L+pRMFCs/FDUzwK6yOkn1waoSpxEKmmeNZDW0/VC9LY26+jx6EWN/GHqg+0P4SMeaKhYUZdJDqlAlaORb66S+ZvoFwoyMgdcOyKSHzt7Yz4Ox6KlcnlBo6qOhHOR073DfTjh3C3/jBI2mAFVI8H3p/QNIkvLj2c/KZDaIQQe7eWMHiVnI3FPD68pnKUqG6VZRHU+/fvEyNwHbWCr9/pxxh6qpaDc/VaUe0LFdLp/p/hgoFWzMb9iiNqKB2ywJWkw6+JLoDmpA3b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cExHgDpNLrZLT7IEmfXRo3CEAWS2Yt8EI1L+lYiSRzM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hHeZvxWnXTyuYF//bZxshFxbxnDN7YxehO93CZsLDG6uH67OQI4Ya66ktD75E9RpwjSZgY6T5sVp8lB2I12IPeFyxvNEIcqP6RCIFllDXNyLp/cF8u+OKUzO2R0mD47DjqoRVB6viX7VkKYHsOikLZMb6l2Wvl2gW14Z5SCBzkOzehDdIp7DtOd6v/OiRE0UOdRdKJjiEBRkKX0dCul/srAOo+uwhuw0vL9vKeBnCl4woKHX6rz7MJaRgZnmwjU2GcYZ3awssmNtMal/IMpZFs4DmHxE53HU1CTvI+EHT6YceJjzx6qc4tXqNAmN+Ykzm3TdH0FuABoFOji3v1bkCzih6rOU+042TfNkGduJXINxzj37aW0CBH0p+m0wDLCu/rhjjeGHQoCaLnWINjsFpTxTJNF4li+p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cGV61+zL+qFVoRv4m5vfSA54KqNIbMB8ZAiZu7NVsgw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0unPVctGUsqyVzebJrEFmfLgSCEz/B2hq/uPQDpDwmTRskWOcwWL+TJsAvwPP8xGaL8M8ZrhWtAB8IfAEg7WxR2PeC33HKe0xnIPF/qmT8N6wQF3SgubvgS5RLXQ6IhTmdKMDzSRWrh0hZxreKhc3yrcMG/A3dfMVywZpjHrSv6v0jX/v8FX0A6JodDpF3Mbq5gJcNXPKbenb5f8OEV6Z8Crl700JuX2/j+1Ia2UUwzwi9MpqiD/+9DWLkv52IgwzZrYFdV8fLg1RfyMkU8VFSi8LYMchgRBPHdfBLEQUokKlhiMD+L+q0d0IIf0S4CMOjIIc4zmmo7ccBbTvdCtk4mkHyeVC5RQbr2nfQopcgn37NJpd//jGyycUKsfVlmmKjiDWKuIF2sCS4zvTYRdAITdlWdPdyCN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cHOm21oIDVwUv+MGOfO1Tte/SkcNQBa1Th4nbaGFQI0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "J74n7h26jmKpnpLcJR8D7iJX/pFnilWaxXRiUeAfN1e2muiOxveT8xJnI4DaYVXGahT7DVEPAYS+rzMh5LZS1Wd1CItc4+BuTkK0pEzoa7SJM59onx/iAT6Obkm6GqTCvcFje30Xv6bStFrMvCSqG2vXtZU7ZXZreUa80P4EBpFK/TB9tuUNWOvR5y7KTDONalyIxrDveYb8S6EDgVnXQ7cU5GyPLpxGcRIMGLvIA8QpwEIkRBppo9GvsIJvMCBUQqGlZvQL51GeiLtYOUSnctYDJ42AZT/FRiF2WjxPZqeWerWm2oWWNjIgdbHNY2x/yUO/w4E0nSl35B91rSBh22iDXxizqI1Vx+XPjQdvoV4CYQp8weUIgWRmX/cI6n1/FlRTbXZFJXymQpFEcJIkB0zXFdK4sox0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cJhA+mBCPMvZwNEZKu6Ge1DVkhL+KqXlFECQI3xuYNg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ncz3aI3iCFk/PZrN8QbwGIIXYSayW0XSLLiOlszRpc1O2erodXPatwlTQ3TR8YsbLd4e7N5oJVejG8mJFBXzwp9JKL1ONnTJH2iwy6LDxY7VfeBRnYmAisZGuUrM5rVc4NZzRERHI5FkvkSTsBdM/uex2YeZP/4uYJuC3eky4rulENRjF4bSES58rJM35ojPJeSmR8wRa9k2FKBIS9xUWe4r3h5Zx8sOWO45OTzfrq9vbSDYr+7yuTUp0FCO1Vsi3hV7slh+mOi0GR0LKqGY8u/5cO2/uTBFkyTbthMXI1rLwCxKrrCx+lve0H0Dd8+e+Csanafz3jIXJnWY9Eo5sArqZIcMHHHqshshrvzx70hp5jlHISVyMUioWharKwUMuQ85g5qA534gNLhbqqO8Y8aaMq9TcTfQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cJyMA7psuL+kXnaTQ53/8H1QNbsJrl25oZ2ijKBcOg8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SxzrHKi9DRo8VmiQil565aUoA0w6tcvReA9Wsdt9wEkZQaLAvtd7tzLVfFpKDVrLtAAcK4z68Bi1LeRPPd7aTSqmtR/Hu+dMliOxVSWh6BveKhm+rI4tv4FvamfXwUSeENT5OgFeuQyOauJgQykIAe/u28vdgkfnOThmVJdhznC/bWEmgKzyLqNwnSyR+i2P/jcmWWkOc9cBxGlVr0TFHa2Po/GDivhdJmNBlsYHA+E8XaQbbBoyU/dXT7GCeF7bcOCFyaIpWJ1FkQvEHK0m/C9gAmELo659q5aA9y1KetvzyJj6MEQ7P3OyjEPW1LwGDW89sakZmwSlqufmXBgtIJy3vfp5lKS5qyWTRzvf8M7T309EzeD70JJtVNM3W1JYF/yRwwGvgbVGWHf8c8oxZpWH5VIeKAwJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cKVXymt+DtMnHZFQMyPryqT1WU8snssDfTR4fCPR954", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kZINJw53rSIA1sdrVBXDM4igkYVPRWOr/Pygc1dmvkGsA7zsuddpFfqJtJP7Dpm3QevYY5+DM/B0q10d1LbIpTPhZY4UWY4TiDmIvm7btSsAN1pHQM85qZNRGyeGNacyRfpocOkyZsMiFS4mVos3/9bzi2LV4Rtuz3mzsO7YbCCvnhFw+ffHQp9PsY/RFraGrjP8ISQDP8puKmPhrrMzb+I1xe3DcI/t+bIDBEcCFK4k7R1Jw7A3CQ08ttMa2ao+Oq0PANDEjMe/B1ya7INTBhnsfhyckHpXHbtURaSz6NTcwhSHHdiZo5savH0w8O40srQ1hIZSh+QYiT1aLtgyigvA8btVI7jSxsbYCh7e9ZuPbm/3WfKa0K+39DKdBsjM2+ze4Wisc42dp6ZM5uGpTNTEnpzw0Bwb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cKklC2PTlOZgANR3m1mcKZ6xHGzKJmETr88DZTCD4C4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pG0iQPmIbVwXWJxR3NKyC5Mco/AVsqxRJmsbR2tJ5oq1vfzQiN/ygISMTGBKs17uqI+QcZtipzFmn2FxK1lar8gqAa+gPiDJXmVDlBU4WFNsAdO/gSJnIeS1IoZvN4d25xbIpnWQ1U4ppVnontFCKSYYtxHz/Go5auwrYUFy8FIx1yK/7uCmx89d24C7xAo+8f3QIn+nMgiF+iCgdn4Gh1GixeIeo7ezEQCKFUX5MNXFpXqmoKHIJTy9Ii5PeRfe+ej98Ri3oJInOmEHDT8PTpbAR6SQryLRNsgTZ486AaP7I6BcXHwvEFog4Fb5jPdA2QjQ6HMIjPYZx/g/CoKA5k7OiGgjPVGhyDTE082c7g/3lgrvxx9G0yg/5lXgDdLC3j0Nim5YKXlRXnswLTgTpmg/y6b0jy2o", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cLHySnKK0O+O4uvYlI5Kp1hNoDsIXqT+2ToXBZWV2qc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ASl3rzkWuoe+iSuD0E7SN8pF4I7oLCfdgxC7jDHrnErkekpA9S3l/+qMC0JnzPK9trdpuSESArM4TzCejCYF/dLSSZLXhN1+nIauHpch78C0/isXvvkCkkJM5/BjXej05apvNbv2L3pYffhts+iqkvoQVw+G0289SI61GhcHtMmYyGwrF9NyoGnGqbb5sUNbxcv6cduGJAUWKQX1Qg4FC8dvm7GOkwZ0hgRLw6cvn1fn3kmRWzHMkuxAWdeLXs1I3joaOTa/QYGBgIQF7QiQ+ahohAmXvXcP/SXx9uYcB/aayH/3bJLDZkRE0h398Hna0Od1gL512evhMNQ3+0jY1BUfM4KHrEDUK04+9hbzG2Y0HHYvMNNhHcCp41sA5jmX0mZ97MYsciIvqzEi0BqYio+woLuE4fLt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cLc163hp1aqnbxBL3xIruXqRI/Oxr2YELlkzjplvCIc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gP5MewialnBE8UBUkL4IiTn26OaHBhGxONuNQcZUZAO6VOMOSzWZvnh0u6QIXsMcBMqP5ueE8URyn9MU+c5amGPp0fR2R8I/j60eU7y1yxaXdov7MBVbDtuQjNWpnDgRhp/RPw71SkhNAil4aINZtcIsW+0LxINeIGrN+eQqZjGc7sRgAlrH0fnFGv0XH5x/0DojIlkxbHK+WoE6GCdHJ4plmIkkgIQQ/9tJ2EyfT9X8VGPrX82VH+wrZhV3GySU+9BLWY/P6u04BBZaMrFm5G/AjHfWL7g+5JLu5qfYqEf7VGSJ9tRaHXi5U3pW5CzXidnQ0HkgiNc+45/iy45sPU7XX/XO8ASV8aZeI7BsHlKKtNkYsZeqKwQuFaCVrlZHs+TpdJIhtrNOfA2ZKD9g5hIDjGKUUbFi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cNb1nK/MfxWLhr2Bawt8esQqDMP8HRfHK4tKooiSuBo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TjWIuJX1/Hbon2fhFpsYYx6wT4dJdwnklnNWju+YNa1A+quE9Du1rH2BbpaTgcDSDVv0qlkzxnJ95ry3iB1nggetg74b6DKQoUckXa1vOXIpwh1vB7m+q2T1bqnFWJthCO6sVJJ5wGBnALZs2PQG31x1CM61RXLX2YHCaypVU2NqTfiZRiUeeKCvSdiYQSlbZccO/dp/50RAdC+lrppcEEq68j4FenVQAQLVoPcWlHU8V2cPw8ruHVp7zKydu4vB5fvFS69gwvjgFA1j4n9FCj+Xlv4nMsD/EzenyMp+pe+oZILZVi2XZ6/sSrRaUDHyjYUljaovGEc37g8A0DF3evVTTsZGwZNJGuBc59WaWcxlLJ83bcs9lNXmz5qG563XB359tj/5qitKDXpamSLe/OYNiYx5KLPd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cNeBBIqRkoSn4yaCTFq0ZQJEAIVuLE635HQCM43a1z0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E8sFgNgKtpjokaRs06i7W78XpvDicHqSzkbguD0DJPiaCD/sLNk5pN/XCsC4vjzyfGAOcsC2/1tBFBGxAHjNwn6rCXGy17rhXdFElRdEdjHSouqsKs16V2v5w4poMuaUS+k9pyi2DDEtOxx4e1zEjFmHbX8gCAZrwIUh/1WvkpByeU9GbbZTnKsmVkbkyUq3/0AC1zC9OvwkmaRHE+qkmwxSPa2dGyXtHsTQSjW0kVayzz4sZdK0dC2cYTQfyOvsTj5lAfvQufn7IDv1+f3Xa0BqPTsoL0Eja6pWcgvZh+2xbRRrAGviy2W1X6K3M9QsTxotqCb663oZ28BH0lOgSZjip+nnrEntkHxg8KBglAJ+jUYvQcB8Y4QPw+uufAypO/TH5MZ+CZItnqhkLM8EInW+RflDB3gt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cQSiWE4RTjo1cdiavqmR9mjfUBu0xj2UQ0E2BVwyBK4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lQBGPOIVfZEDE7g3oBr44rX7VuXcLvvaoiQh1JAGiBrtjFFudor05pNqDxbugGcbrid2naa/GmvBmYe5ch6CLDO2oENQ0tflb5OMe+KxZH6z9uo9BBtyRAb+NYGfiVPKRV39kwwKgv0ReHuVoxq2UwYorbpIfwIMChQ4zUFV4PJzTypsB7+vfVqhEclWOs35Z4Y1wXJfhx+uG2OQCbHW+UuPtVui+xpEjiX7JroryZpCH7MAKwhEztmeJZphKCzyPsw7DP5YkrnGYfqwXiF0lNQZoHdcaGBlkbqA+SlveFtoz8utxVUYmQNBOsucqbsLBVZY3/JZnXQ28WqFqyBtYuOLWHY+39yqwwtsaNPaeqGrme+19jz0S093Xq4K9fXlc6QKc37PEM+VD/bN/IzETuy5PFHlaUMF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cQkQKCxdfPAe11bEhHcvDlaTYBuKowCdb5NMYPFRlTA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MjWeyb5yDS354COpE7DvY0YECj5eaJ0pvLn/sipovrXY4iUuauYXUgpsMWOjfCzMOUYeUoYwCEkhCrPj5aKvaNVqSYCP2mH8CkUJd5m9qrcvkUjDppHbFvQtmLZO5Yx7/rNK7DhYjkJLsVCC2TrLQDOb5FQvIx0KkzvELuRD9vt/oXZJ9PUZJ0hrb3HIkQTlC15mTde1BBrPeVvlXtJTeMz8H8odBYwHGAwHuA0J9FTyCIpFETfPaYT49xTLHl+wgM5HsmCQsppDXgInUT9DaE0leuuzYNZloiakXA1dlxBCtPcFPDD0WCylmhLxT8RfuX051yMaOtq3g7NBsNiWrcChBV+hrbpGZ8J5ZbtK3TdTxmmBlBpZg4VktnvhNAu8AF9/DUrHD9vy+FM3VgS7zdLlXkdcRWzE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cR+af6+f8NiKoTx9/ux1Mv/Kh5LsKre/irBF/4J9Ouw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vxKk+00wgZ+hpcKfzD5z+bICZB+iRgd3o2BwnPpLBSvVSxPGRJlW/HF+jJ+4KenY304+qyEiBoMLYJJAMN0QoM5HKyDMlx2WDsQGwiSIi/qzDUYpRflB+AQts5+QZ4rGMfzE/PQm29DlM+aEs8k+mEE0Z1gc8Md1odmznuSN3gDd9VbBD4VMVKIfp63Cm0hPFzb0lfiVrNyPnKNQU/PX3T/6wjP2b/i6qTi2eCY4DIub/uRH7WqroBak+MlUISe2KdVDCqF1HD4fy3boGAsUQoUQz0WPC37fUk61os34zfqH95tI6BuV4Mx2PMAxZbgCu9cCrV9PZrckRqrTRnVxqZbKNTZhY6WCyh52E4yYWKEjPUTEsh6uQH/1QF1gvsjvgnvkGIhf3rceyc5clAizsieuwCRp2578", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cR3Wzm2i71DAfNRbx0VplIElW8qcyrzEDgPUNCAKE2g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ci4tH0pZBCvLpimFnblIlfKNaMZr9tCAimnnFyXLGQramriBM7j6WU+Goy3vdsqHGXDLg48JhAvaq1i3X+s+SGvWAaxOIl2g3sEkNzEvyhL/IdfJZEbuOfbscr5cv4iZjrU6Lwf3mcBeN3X2J19EkPRCFJSf4isVPdd8QTvXDfpYMGsexnrIA0gyWRLMfxzUsqjw+cgEtOXO4v0IyBWob68QoAAbTf/9P2cfWks/68EfWMmpsGW+E5BRBF4D2mi5AFWO//vPRwMewWRDoJw2cxeQ75Y6x42DP8RCbNCOur381KscutsILBlhqE3ePjBs/G8NPNbKkX7JJrrsMHE3M53MdS0xVetOd4V1at3eTjnIFIxRo8xHfb2ExVarKrFnj43aKQ0D5sq9ZCD5Lrdt1KwnoL9mzqKu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cRFV/xjI4WKktvraMv1n9GjV6AW0m1a5GcEm/8MafD8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r2d/WgLzQYkF6fPr8GmgfnPAea6DcN/oqunl3wCEwD5MsFiKlLcvqsTVkhMlynetv2gaRG8IIJ4+nwEN2DyGVfDJHWUItxTCgA+A8zJMhbjv1WCW9Z4j0BC4Li8nSDKKvvul5vR/WMWQskTTO6VP0/IjrBO4L9n76W2qsrq5caRkjeeA+53AoRZp8Q7OAdR8jFq3xJmlIkIN86123u4ksPzNcSUtn3z9jSaaY6VeDLnknR6xRHk8O8EAiofhTG630W0dEajWi8vd83tpRUfT+1FajZu9bIe8GQ2oeS7+hEVRVcuEopk0zXt9WTmCycKLlNlPDEcGwHGh1SUZVOCJmvPWvWfQvFUemJxDWyTrUZaW0uQVDgE3h55JMJQV+ti7JmCeCgDtDmDUYnWAzBUgMZVjrDiXcleA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cTB1Bk3ml7TVjl+kZYSvhChUM2gZNpZkvuH4BQzv5ak", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F1bO8U3igopok7hw8k8wdWwjKXH3FIoZ7YrWpj2Lnkncl3V5DzoStVa0bYyX3J3MzLWMz8RhDIquMQl2UCJkX9rsfFsCS2X3UVP/nM2GSC/hsGItgIIvVzbtTXug5xA0hOLa8owpMTF4svYA8+mR6adV4W9+PdXXnSUMNzLu49k3Sy+xOkZO47145Bcu1lEz3x5T9BDekwQpfz5BrlpjSA5FBQP/b/RHCoE9RxbCBf61+b5yovuSnEMttt9w1HXxQhCfZEkuZIiRpm2OFPmQPe24+TIczfkr+eKaUKnc0tw8qcR8VXIMhiZzZDPYOR5eXjLio1vVyGyB9AN+nehzVmizaMurQLkjNCkNsYHMjEGYJ/vOeMX3cEkZmq8pxN7Ai3iRyb6nXNEs2jO37l55ImkIT41LxLdJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cTpqMsf/veXxaZonIPGPFUIes05UhVK/U2aEN9Nu8Mk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vY5H0P3/1CwfsNeRJp3idb1Cmkl5gSNmbEqVPbNvR3y6bDKJvQFRFb4K/lf/GMpMfspXTW0Rlc8EIGy+rqHG8ty+07PzVWtcITgNTWYqBnEIoQyUevYUXd1VS3GJKhzo4o8mv57SZysIxKnN69N7i9f9PMVRbaa5DiIhEZqs5HwTeoVeYGBSAiCH5ml//p0wPAot1yA3VlS8N+218w5qsggCG27iAVcgTv+Zgp3M6LqHVMd8zHEMvtGBe0e2rocvwGAhybCENO00w3d+0BN8dLb1VPgCXgnc5ZEqV4v4PftWuJDFxjOiOYm78YB1dLqzFz5MvpznC+q1q6n4sXeG+GXtVyyAOwWKJCgb+ETNyXVO/+oUR57lPqbuDcKrZDJLCuCq/kWNQBKqJil9RpciYk4nKUoIsyak", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cTru7WDcBA6IXE54zzpmhUTle50S7rmOvOA6H+jeDYI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xT+1AOmtG3Bt7t9hS7pKI6v6FciAVMPU5xR8w58WiXvKITNXL6akjJ4lmzuXXR3HdEGYMwStqBU/H10aJEGT/7VQHlhkN/wtOKQd+lby0v7DDmLQMHfQv1tqQbjSTrL+83+7iFGPVBoye6GYtVWQmmDStDbEM+JRb5dbsV0W+ScvTx3TJTXnTKgbrBNSRJEHnBhEyeeV2SKzUtndqoqIcg0U2MGxGLRMnc3HfL1pcqmuLFnMxvqMx3rDSJOov1/i3lQ7+2Iir5/bGVjLe6Xglv0G1FpHVDEUj+lkBu6UvsaYX/s9CzDgmGz0Zr97Xi/jXtW/Br8jQVyIq3rWS0IrfrySOLwTFmVJfY0mj2vviT4eSL5hOYoUlhpn+T5dl0ss6rNw3XSSOIUzBZMUn9eoaFQmAtOrBHqe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cUbPDSABtS1CHjLJdy6+sbyhN5CyrnzxyiVJaP7v0VU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BJeys6Xc9HWiQx544nHcaTmD1U49tc0kFjGjNMuWpan+h1nD67y1gQLzN6sU8X6PFRF2uslhk3LiXSOfp9nsH3B0su5wIBVii/nEIYq/r6R1IJl6GL+WzWRBGh5gxRekcL9IcP4AiM2UsSN9gVpSovYJ0sQGGpha5xJyX12MZxQNQaRHGUzET5vC1tc5Z0Q/J/YZcwu3dpzLH1MfG5z3tpsx9c6xDWMnwlDrrODO2mRSjVh/QYYM6R+6mPWfDKaRLx162qotZYzz6Xxz3a/ZiTX/u2hvjhENbj6JzYDbkqgDi6aRPz/bU4KTpJQwyf3ur6XbT8Rh7D133AxC1bQfd0bvftXYRRHC6XBN9S+yLszRy4bqX/Z9L/IewK5oxxpuVNrG9ORwGmDtFZh9J2js46cqIxLeXxGP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cV4AAMjvZCbYDCfXQc8cpHZE1ys1x0nhwecPmACevMw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ixFcMYrZOhE+5eOXXq1s47af4OlLWlChoLf7+JCPWqmYkibChUSgqtlMdFnhRtIIQT7acR9Qq31MNk2FdPzOgoX9a7k89t+XvfxgDwD1SF4RA4ipjWnkTHmCBLgh08PvimBa4JkUpkSJQcj0H+KGv496jchoeUeWPMAHBaZxbkS1qFha91W8uIG2d8MZCQefeAlTcT/JBDEpGoVx0+09N41seWTS3ZMG4HOGiY1el4rrBvlWaVzXdsjNPlC1c53Bj3JtOAE+UQBGpVdUmyLagsM64Ip/RdCnM7DJSXPIFdALhKuScpVgcUSsmQW97KxsjRdqosZvvq+irTMWCWJfdC8cm9HTXD/Ax3lJw0Psg3Jc04E58BTTU+WJCE0BpB9H5KIkW8klkAdA1ifvKAQGUEKBIuxI+9DQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cVEk6/q5M0bxyR9clZfb/Bb8ezZNEyAvQTxiEpbejjA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tiwXSQUen8x8ZoremJwPMPzDVnejg3E+CJyJuOgHVNgAsAorOa3LtwXLvJRUV0X7t/kCYEhoMpJBVBPQWNOJAd03fd+1eVH75j0dem2OCKV5MUCLMV7P/BVeFiPKdOq8bnP4zeZvapfI/HIhw+L8pbR19EWzbhWBBN6eZLeYA7hVZJdnSyNEr0a3NNYIKhQtW9fN1nVGA2fbztUn4XjbC9s/jYScOrWiwfdWG9ZoSkXhNxz2/uIT4RwRqOeVgueRPJ33wlSypHstmykmpBJugNRQciwOUIpANsHNUSSCsOojw7qXr41Pn7QnaIuPIsT7T8SRiDqnCTgvVAPsRwRt/G9ZbVVHkzwKujyrsEwzhCRhy8q2nZwAMAKG/c3SB7/xvo5TX4TZgrU9qkUJcsmGtjO/M6twk0CM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cVgv5XJNn5f4hw8S87nQml9CxfOpkpQVJl9Hux0+/QA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7qUIIrHINzrud2ZRpvOf3lOTvOWnHMkz6axjn53ObQCNHTxamxP3AqKw/MN9JJWHRF3pKOSG46V9iMWTD/Kf1uCQ9kP8u7wfwJKJ7D8MbNc/8HuzAFgL+2ahakLH+t6sMe8ny45wbmH4YiTLy17+wI/O7OiUmITJn8JpbAp3lOGSCcZ1ynQSrz9bjWCYX96CrjnfRLJD9uxEXgiYOFZxO9XYQr1XoSbZvyK+Qvo8LrTHi0UjcA+fdpfQ5ZWJCSkjxKZsreztaTrPstcdyVPKauYeszxhnHC7pGnRGMHuPxGTry7Aq6KaCKHvNf3hVq0PQpGwywJgtAiVUKpJ9iiTWyByIwbhTJCAPKa4QSrOpbvAxgjI35YvVmhPq2ydsewzydA6u/TkGTJ9oIDE4jcBeEnmX06DOdEv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cWJ3BjRzMKqq+IC3M4EhmPpErBb+w+E0DllBMiMkX6k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6/nav2WVn5xiMbu0viVvGVg9hFavv9bOwlo8ELduvkXg/1hukMxcBiecw4V+ftBPVab4OWD0c3zuZRUyH/Za1v0wtKTiw/cg9rZ+axfN0a+JsFKOCiiMQbtkSmIJA69yiK+57mT2clp7i3ADcDMg+5glt6sr9jGMxJK/9IBH1HT507ZgzMGswNnV3oTmQme3xSmFZ3AiFB6ADxs3/8xgI9JSWmEE+aEhRSsKkO95wU/qh5KibnxdpEm5F8GA+LE17gbihMzMYZHyOpJBtuZYQSzIBX/g3vJVQwfjxPYz6oxbLODSnzrpih4dhoOyEfdxKi5n2YYBzMig1loApHPJ7Xbil4bWZdOH/4RjeFrlMuzqIbcVW5XUxAS9+MU5+t0qt03+tv5BUt7zXjG+PzuZZtNtlf6UQHOp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cXteRg9Hdpd/zRvAiHq414PCo5JP7jf1VtqrxpEWJQ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xlqpID4A9f8xPASu0XCXYxvUovM3b8a0oPR/ALgzQ6cPtPzxqiI1WsFqvsieyxRt5oMpZKt+52C27C7JZ5JmZf2z+4vdqjF+xcCsFSPhn/I6pG1zr8xryRsdgrdag7dD4A7WQn0+QcykYiF4PIr596nuL/cuOwUotrRd6RUHpdPqeRFDv3m4eYYmFp/z2jHiuN5yFuKQeOnNNxayJ1jdySJ7JWpZM1LZc3h6xgAdGTedA+9/TclBx2xv+cRFua5fyaTiJGjYNbKAQPyw9AUXlMAD1adGXle3/pNkpzmlLN327CJ18cGGC/YqQA/HOCu2hWxCkqq9MqHlHsqLxreXGaI0aE0ppUGnbEU4LkxoLojgsuf65oSdpxFwMLaemnkL5WE4l+iFtzO55UInriwK8DSM2v/fr+BW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cYL2qk4Bm+rMArzMe5yKrIFTmQPoVcO8vawcq3jvbGo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XcdryB8LWlrJYFnVr7I136Z96KGrjPod/AcEV+FaCspLZId+grCQLG4QK5IlZ028XAx53A//UW+eCjmzhjooDaG62nxJafjcfv4ZiF40Jk+lfHkynjun96eiPy0BJLCvghGStBznQ9jgcf0ixvn9MLCSXfx7aptBToPSBSBoFGf9XilBXHiU09U9gqG2UobDuh4ZEBYP19ctkeZ4WqdINzNpQujZPaH/VmsiXylPbuzYi0hk75JC2rw0uvdIGUc0V41bi4vKKexyCPwu2RVlIdBWUpgkHvpPFcROYNf6OR6JtYkZJHXhH+4xAnjPoUofMmjsJpdwOMKIN/EpMaa86ARCn3ZihlSweL7Ncl0AkympclUGZeBVzfLvY20wlWFMPGhQ4F6O+qV1qvX2m80bxm46bcQZookh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cYY/bVmsq+tte3KsJDljqltvuXrj4O1NP3gvVrSL5Z4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iHWHHBjWZ4FEsJfXP3ZwmK/l3BSzcTcY0oOxyvnxf6//5hIIclKOfttDzTtQq68Rj+fkA2mfLD/GFfW0S69Lvky7rc85Wbh7IMttMoeHCgnF+qpEF0owRNc7f7UFDO7vVZWcRozgPn9p9Ao+FGzaniUTHpyWF7YXPcwhKbppSsvS9ySDXZhXTJuIC8qW2vMTtgEtzzR6BumCLwZI8ETANC59W9o/uWWLWaky1E00eCzTKgEIVRyRQRdIXcwJdR5DzNGyc8ffCdHoMZqhYXpJBFxF86ivkDG3PdhGonLwRqyNibL1mEFzVvDLXL7oIHGe5gYxnQ0EBxZQ1as0FH335y3bt7xGbd68MSyR+AEPPvfyqpYumDxVzgzY8S9f1si1zefhOH3unaiPCvWGZp6vT8qLFZK7qSur", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cZ4Ljco+HDekX6yeXEQbTnd1amk6eukAAUnb9i/GF9c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nmDhqRMsl+2R+LtAIEpeMqzcFIuksWLAaW2e6jTF67w5ZugFrBOnWOKAY0S4O2mOrkfQRHx5TOKJrr/mkx3RsjqMf7htrppFpAxJBXtPiBVMlIxNMUgbl/RGMd/DNyW3MF8YI53fz07AyCndnEI/d1o62uzZ4nDhdItqLkUJuIwyl7pcOXF9jhslsPRmMh5wn1SeVhuMTInEfdxv07EJJAdo24nimUWTBPaSverEWz/4w98vgoGjhAfevnqkDF8bxtKLLNsFPBnrCbStY5Ya3E7zDa5tobkOG84XsdqH/zjaEpiKTXAO6hEYJLyRZVYX9KRW038fDWvwf27VGZ8p6CySREf7/BV5ujwUhkeN3AhWhfRo01z+eKngEQ8zTOLrT/l83piikV1W9fJBw5Qhrx/VMbFMLUGg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cbmww5Xbhnp1CGRZswbkh5IGCDIUICGvXu0Dxd5lVvA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gfD65K8zbiFtPWl9SyVG8PZcQl9+4AFTSLTpbvuCyNoWLAhlyTWyPClLj+UmFVVH8Hc2YXj5v8g3FYpODp/a88nchLR6FjqQyEWRJNvH+gCb0WYiuCrodneeM89/ovKcyG2xXgDDDJkpL3b17TwlaRB+4EFeLWznMjDYfyko8ntXSrXw6T4axZ3Bah/e9od037yuxizU8tWfPV3b6g1VVKAxcIGsSNhr3rjAXy92wjT1PYNGiM2NgyJJKxoRU6hHcmCaoAWph8nv47/e/GM1LAC3AsTE31V//z1qXtSUpTrVf1DLAHsnDDCJhlOiDtbBK55XGAvg6tQ+mJlytPegOLlGzklSmUP2dTd7DIHKMG5z44vP48rY0oqh8FM0hmaN+53UY2woCaRaD1e4NiPNIdQzEWqKz/4Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cc/sOaoz7zzW0KiDfBDHDsAUFPvdzfavFbWDD/UWDvs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9eZgO4ykSggCiHjkry82gpr5O6aIpecAjBvPv0og1uvXEiHRUhYOIah4N2uOKgTB2+j7ny9pApRiq/qxfWZ7U90NwjL+H7Mba2q+co2VS7ROxVpzdeJUoBe9nTa8M2beph8ukCDslrQpBMhjTq7eIu/Zi14UBWxMnaFK2IMp76xqmlZKzRgLys2s9GilSWGAZ1yquO27SA3deyZ+hZOCf5QZ0PAkrStDXNAFna8KuTkdKa3nqAuP/zLLfNIHVyx2/XQrLD2iyQli8XGM4P5lk/se46MQqPYWWAfXXc4qEFuLmlktsAug1ep4zLP923JL9AsZxV2rx1otfm8rsdB/fD3h4rORG6pbvXNaWbwbf4xRwOTw+n2XgQ1Q/7MFdlVfddQAmScdYpgRmshdiU4dmz7FiYoNQbR6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cc8c/+aeCmCBChp40weV83fEeRRHGLBz4e0f+i6UTF8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "p/nno47bjhiX2SjdTfpwhRtm8A6AYBi3TuVr+ZV4pVNTaTYQfsQ28WbP2pUPXmunCDTvpLMgqDY3vEF+Uo1PtRoZF8ViIzf4xdYEV1aWry6NOqcHeiOCzLzx/HBTuFypz8HQvUR2VRnunI+y4kx6Nkd02Jy9PwV6ljE8e12VQeh74Wg9zsvPT3CvrVLx/yqY3yTFQ2bgnS6rPwo0V3slzTK76APhjyNwxsTIm4ADtVohlHz+r0Uw+W3cNomQsU0hs0yh/UyTobRiLCWd1RXl5uWcxS81MW1dwelG/pDBycF2/eSe1Xmfe/78c3PvAo5L42DGgy0HxaI60cmEoq1hLMwISkcm2SnM9S5gAWmE3GJh+nTBnDrBf/8MXamziimRqTHMMgF3Iwk/ywcHa14LV/pGDkGqsDGi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cdRPmlbU3XgliggjRJdOO8qsJO30je8ccjiEQvizoyE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3Ot/ufCoTxyP7Spz4UR2zpMxL5lPxGAb+fBIl1+ftXi0yDyYLAtr3JFSSBwsoLXVXoDDxKOTFn7vj6Le4kXbNtH9YgPoTwwnXMeCN+z9x+eWg/wzbIx7ggoiWk7qM3QmwPVjUN4oFndmq3uDZYEIzxUAJPhtdjdSJOV5gZaZR7YWPE8PTHIuvrBgUTqSOuQ1XZywyxDxt02NHU6B4PkIQJanua4GetZOnbzJ82azG2PU96QeyalsiA4mkbvFKCLJ0Vtdmm9uw0AxTAaplQd7NA0lmAxjcKVwApDFWmSRBj78z+mf/OqyhUiYzV9enY/DgkFbZsiOFSNHTXYg2Y4MvbhZp/VSltxNjah165B47iraYsijxE0Z2j4j5EIwduRfrAXmlBJ3ppKcBbnoSicyadeL0xvLAWTT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cdj7a8LerjIEUQLEjrls4u/Zl/980lfG8L9hos2K88w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qxsJA8AqqVYfjnkoEMvP+4uvK8s/Xrm1EcTO/L9Ajul1yxyIoPma8t9fX3PGEXhv69ssZ2vMTJ6PtH5IBH9xIEpPSulGc2TSVAAtuMOIdMFcHu5Sny9H5k89NJumtAqREu+H2mAp9vvaKzRYaKtLAzrwbSFyoBWT4bqJwpCmPvYq0otj53H+NE/4WRmzzQ+z5Ejry85+f9bebi6LMaPptbFznclIoFVf154w3zjnnxy/R65h6p/mfB/89uwNhiUPXUM2Jv/sBjlwQvf7/7wlOXg3hEPt75qZacUzCqG6e4E3VpgHi6jBsIFvdGQechpVH2uDmlFneCNV/dgWreQ6RPKTWqoufiA2Tw2kRmwWUlmPsxQjeWqZ27K/dd5oCLgVOVpDt41zFsVS9aDvheiQqC2bUCO6AWMw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cev64EC/Q58Ug2Gx0LqgY/ZL/f0b+5D0MVOxDTP6TBI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NRZ/J1/KcSZk1nG0xzwOye4rVEKFZjZHUbqZryA73FiTpw6/qDeVDS6/ahNfYFQXNfrCiSZMqVtmXGST2KWsYDBDzmIg9H23Ds9OmBL/p12QRTQpSziOpyRe1rU200aC0ZgxrzXB2OZ2jIIs1PLdCHnCunoAFORFA+vk2y9QReBc+Zl8weZ64nGJCPSLmxaNXoTWaYDW772GgomOP2rq7kfrnX4RodnzI1wEQq8DizyhrjyiYTWecN5v4e9pETSVV2DO6Nwm3RM4JwCkkcT+dh4PSw9C+MfhH6Yr9tQS/F3mWGw3q60sGyiXLDehqtcTU8tI8O316A/yZAZAwECGSnzthpn/vqY2NG4s7If3rGDWicn0of/qCqjkBrhcS0/jua9Tv9yXr/yfuLfcea4ybevPPGMDOjYv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cevHyC/yLGF29zJ1bC5PYAzJRlommLtGySghWdewKyI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DPb5IvyJsdrKNd9Xb+MjY7nhD2TN+Pf9LvcPzNgYX+nHyapfDjRtRIcZbfRHIorbWHCC5aBmmJh2NSTUG6wFABA1RD9Oq6Chsw21lyNmBnWxEWmeDTJ4xg9N48cANDgqioSurV688uaZe1Hr+GoXSkh0dl48+Fg+V10nAu08Zssmxpqlj1KwZMfjovjqs/rlZv488zJ9TS7RgmmRElOabTZfBuNkrPqAjqL3/1ohx2umgHhlyy4hf6qpS1urKmBxb6L5B9qF2CwWk9qbLMXcqr2PSO7u5ZNu1LhrLInAImdpBMtGRZ7ktEz/9sj4KZ2wEFwxIbbVr7DCm9/r6oQzBcaillIhYJsEG1mJJfwmsizev1ugapTny9G0vu6Pp3kXYYtAaAEUwqM4MR77lE1lDfLSdpCNQ58I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cgQtNx8bo5q40TKVV1Sivy5ZXD5sTGsGITiiR/WEbK0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gzCg+JAYQKFzmCB0E38DVwK0nZhaciu4Z7mxrkRWkMpJIBm9KBE7IUbRGHlyw4I7usBbUghMVjRAL5sxFOP0PkmuOOCtXVO1PucAtw4kflSTEFstRTyViOYdXBjxfyee7msAeusSEqpCJvGgO5WEYVT9C6WyYII8HLFPm0mSClKQlhugZe3yF4eHgJdi7mV31o1uOuCqZRVxpSWYkqpZ6O/ms2UrN+FtUVqNycKt/6xIAQZZXsbTRQ/XYN1Exelv0lSnRFKJ+o74NWzAuKhhIGuKseKKmtrOXWw6Lv3Tf9cvyFVdTgh72wYw9fnV4Ge+nQpig+9Jh9FTd/x0jbRPd3gKsU5QmNkfaJlRgL+OWYbZdAn/AwaIaoCBuAJCMdxcIEp32FFAEwxtpsmPCk0j7sRWu4DEnNvr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ci/Yvo0uQgWpaIXxj9PUMyuJ9PpnegAMhm6c/DLe/zk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XoQ7wdk7521C062Q2v47ERLFd5rI4Sud6ffF+SM+/3+6d6NBn9Z0InOp8Vhe/qqcrAArVwwR+6Sat+297BJLuofNi5DfceNERReDZPOUM3fUFQ58piighgtPhJ5s8PX1sa41Q8WVGrOVXJ8fyU5soyFCwmU0SrfjTnM7PNuBbir9+/NdEY4OkQjTiSyS6gv8MFWlOQgAyTy79fdGYqi5Paj518pCBxN80kkT7595ZA2SvFyAuI6NWgjXY7xVmbJ/NAfdOTbuga2m5BKODIsnWtEjQPOaCJ9X3aUyscqNRZU8JM8CH6TfgxRZ+yb4oRP67PENYBxINtB2XPkHG/Q/E9HCFsUQUL+2sp5it2D51KGCwd9SW72z7Hu7LuTahCF/MJQbSPQQhGdC21c79gYNLg69R4NSpUaY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cilYy5JU4i+70nWBl7glJ0MwH+fhz/qsz+BbGs5KhQA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xMyeiIeaT6QD+leMltjeq94fFmEKH9Cbzc0yqR963VgUy0fMrsOw4MKa7w/jJWOOG6V0pzuqfUie28NtWr5S7QZiGYzS6dE7B2oQmkUMwn2wfO5irOd6A/qAXFLOEsAKx1lQMV89iewScxkYzU+UT4/uzwTuPQqDvuni7Pyg4fK1Is3n8rI50YQAAADiB0DAMnDqguw4La7LJY5pSd6owDqI58rfRSOLjo/6QGbIwB1Tlc2hPshxtwWHDi4l84RgZXwYUOa9zavyWHRC+wQWx1O9NqC46GYHU726C1lxMwNvBhUf1FtqMwSIIAOhLff4dV9TkA9epgEUNo5eIDhOVgSH4FXfD4vAgkulHpqT6Ddy5bQY7ewZOUjk4wkpyTe9BlcApK7yWf+jo8crVuipApTpOuUpuFDa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cisSgEEQe9TQfwczsukoGvaHFecLQjvPHe9+UDBbFjA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0Vfb3pUJ5+ngEPRqg/cA+lzlmmHjW++5kGUOgKiC9NWZs+B5ixquaq3DPrYCdElC+VoMqWefXNVD/PVVVxd2IoJrIxOFAtPRmVFP+yVPyUInBCJZsP/IAFHKgPQALx3/BfxR0vXpz3xPgQLcqUlClGQZuFSL7zpb3c8ASqFS8SDDYKDqsV8ni7RF9tAZlqwBet9oDQZuY9UaEV6+KwZnkmfZK1frCq2yCEMg4fpNawAM51kgWeqs2redut5iI9cSzn74Ee4P+m2D7HSGdp/u+Qcs4T1nMxdX8zBAyg4VrLPlKG4yk9USk29HwAaWfqcpJsRmqIFkzGDYs6fyj7LZUk3IqBt7aGqbfDY6VLRCaYJdFe3Xf8T5kaBstD2m6kBk6awhXfg9bKyxRWXwoTEvrdILvBbHuKML", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cjiuhaW07NkYjJC79A3jPtt6Ogsp81BZyZ1jtc0qESA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AFk+YYx+47W7YR0250Dt81RMQrSGN1faTuoQFE+yvJ6hQ99fkVVCHDgglT/d4wtPhk/1ARkd4X8y/QxsKZlfynb/3pb3n5k6F5e9vG3XPPWeafzA/qJ2hJloGn2lnySIYDpjHtQCvBkHXA0F9nZBadLRBhegXIm5KQ1DDKFfmeln5Wc6xyzjgeA+Dv9TrYLIvEQM8GIJIHTIJzH79IeFrh1FzQnA/Ya6Pd4iQ6lU9Tb0IluHCYxoLZF4zELq2ZkxIT2SOgXeMQFSufFx463hU/y13wT9iRkRO/HKtkiXK/CxrHrWul2005B+R1YOlriQ2XQ3HUO8XqDBkVZ1ysUZo4KCXBwsAo5bDMZ3u0iW/3YJhb95tGNMIy0UIZg6J/gEp4fnBBjpt/Zdejb8TtrsPGXOewzH/tQv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "clmy0fbZK7XodfvX4WDCySJxUnNOrJsUSx/3ExAVKg0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NFV9jMqyrXapHAmdsp9HzZcZx0lSl/rAwuWRWpmp2Kd8hlpJC80k3MlggunHu/6SyLh25ajv4rkNJzr0+Lz/jfX5Meyd3oC3mVYflZGhIU6Yd3R9ROIpANc/8QOlA+1c2KKkpw/PPmutVjnUC0ghSga/sJokCuuhpS/2N6ZeeoE8/5PQiabCwEMR3mPrICeNtKopwn4ssc+Xvt2o8AjUWVoy87m5cx9muSnv/JV9ZEXTRHoqWCNOGZxVwyEDeuMUOI3Ap1DW+0PR/W6PH/YuHhr+hzQh6Iwn5HQB/d3AAUfOwCDKhoWRnbYFgySmcfTSieXjf4XgIyIeRY5d/2m2SA7aQwLe1y24TvxOV7jo9GezVE5Xnw72XTDWUUzpwIazB9Fnm7bil1EM4ImimTetcR8JFM36kz0l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cm6IVBItbDc31xAkpv3u1uYBdeqM96/NvZdfWaOV+sc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bBEDtgZ89FJZMkRkz1mHfooNUfRwfaU5ZTosFTzZqrSnAlwjwIjGgtCBiORBjmEwfnElZjDYprx0IiJn+cBqCEp6rGYxWvpmU0Seh31g4SCmHceDItd3L5PQU7fBjPWLLcMNhbc6VfAT0b0z8T/J0fm0WzIMN9b+F5rOMY+NA3luLoMrfWGMKFXX48vOVu1tR5mp0BhpYfR6aSowohk3ZVXu6FKxgmYPBouj7bycm/10C8x+mzJjNQUu2aHOEOA0+6HU7a/8DreuuT7eJYcZM4/8vI7HOJb6DLmH6yzxGGxcNWbWt0kEa4wdSdu0Dd0rK2wyJuUJyI5RP8SZVUkoP+oTaPxZ/GtctlhD8gRa32mAxsz4fuSNWmDSMtPhKGsx7oy+Z5Kz8vWH6n7U99skXwepfT3STz0n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cmCZg2h+3OueLnbaodsVWnULe5vmIX1IEGsLVCzbraA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "orKWa+Qg3q0CXlB94vCttxjsAWTz12H5x4Uwy9H8eZZnQFxRraUtZdW678sWv9o9Gv7VQcqkzAhf3orHEG/xTCyvPeNhY+8I9Fjc5x16Yw+THlIwPiQseJkq7WV9s6rhOm7lrnMWPN1Nlhcy03eWeQnDDpxLQn0ZvS2kMNhWijtz3qefB9NSlrIpN4f2xpHXta2Dmm466u4FU/RYnYPUWfjOb93iyWh2le0pcmXU2sIHjjJk9uQDE6xvbs/jqTu3x74uwk+RlIYPFChBJ/0rTj7gZ/YC6N8awEQ1IlQzCIksqll4lHzLVx95xpgmMjolq5ERFBGe67rWhOb/r7JhrB7A5t4qmBPC6p9cwgr53TUslQcHYotRqK5Yf4I+540Ll1epiFF6l3AfhEj6SGIwsB7hxegwALTw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cn1nRiuzbGAxDm+02CHn4yLrwH4HvUwBPgAChY13ODo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xuSK/REzQpCU3MSdxqJm+hTL+Zw+bUD8FQRCVGaNKHVoPx14hFx0GLo6pHrzcHQHOUcXfgG14QHQWrMQnH2NgOaPO7wL3C0T/jxYFM/4WHdflRzvg5QaaOyIJuVjWUTZEaQ1WTwcdBK74hVaQ1uwMkUmNeE/UFp7WHQDnjVQvaf1OZ0n4B0K0oZdYtBJM6MbplcP0pY5J5FnJlFJg7vSZxTwr8jDQh2Zv5f0iYMSp/ylp1jdOyvqcSdbZZCeHUhoRVKbPT4E/nldw+8Vy6FLzWJYA+tGGMBdzzJCjZt+can2gy8wc9WLukgZ9g3dGyPf0iAMvQPDOSk+kGvsrQ9lHKGHEr9DbXtsdJTPJA9ilZcCjmYH+NDJR8UifcvRw5AjUt7GIAqTjObq6NMXqh6eUh2tZnIS8kdu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cnRpyrL+tqNvg45tbwNAI6PG48BY8HPqECNwDJ17My0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qFfFXOV22Ido/ryBNNPT0kdAHIAnQFQ0SMyQNb4/iwgto//gPyU9HpebUoIzhBzZI7KRKsM3L2Z66pW109+/zuhp2dCY4eFw509/WD9/gqMXJuxXp7ov1D5yG25ZuP5pFGtLe70SFf4iyxe6kMOjVERSinxDtXekZjTUTJOHyGBgwugOQk7u1prCnBmDiB8ekzXKR4MI/WvCzM2hJwm6ttfF+ipytZubs1cNoyZQZRHP+NB0R3ew0mEkMkB7w1NbCHj0YGX6XZyeuYNOIf0B1MunGtP7j07up+vrTxwgBltOE/LwzsBmpwdhUW/baM2327XYDbBNXXCE1vf3UyRywdVFzN9KRHcKhFyLDepnScqlahXNs5f+YAi5HjIj2k6coyFGOK02yWcjdfRVZeR0Q5uBBFiUC7sw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "coWPWYmH0yTY27k70KSVSw34C0/tQMkY6F+vb8I/K6Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6YHVAXsNxpt6m+69WiG0ig0B+5L+J3i+of1P6dDxg+JkQkFVs/RW1C3s7KKUnOwvwB1MYAYsrl/rZXYBFWEERGmm5yUZ8o7jp49NGUDUogfojLm98mScLxXFZW0bSDHAYo/55PpXAdidFOc3p/l5zSztezx4MF46TCGffh+c7Go6u65nF+IZJqPPkiq/MKL1Q3oUviu33O6cHc7nLRq1RVN52api3akNv9h4s8OPkugyWaux1PTE5t5kqcOt+0PxOy90wsuGO/rokhPqjRAZAoBr2USDdzMrjG2xEG15R1OyHKnQsJAqlHfittWcfaCDXXMBPud1X49zu/p0Ru3iyrZsvacQ9eaUMO/1ZDO0eEZRUNWmrRce0dNuHSmG0LLYfN3T5cnZWR73rT3vMTz+UrCRB7NCC3+Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cq+8LwMwAzHvbDzYdILfRxVkPnXLmYADBOLEEZ16jHA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RoDekqTVytEUvYRdJWaJobFjdiC16F6a1yxfkrCmVoNBoyhLxzvRrr6n7Y9wD95qvZfSeZS1XUcodzwR+nOt8CueQxZUDXCrYk9MOyCiW4jAcMvuotQkOlg5AiyqF2k+BvDQWjl5YJtjyf9OpvPd5YE60a6Em14/0TPOn5I5aPDN9fDAYXfJofPfnd5usLM3m4OxnvEgFfYQnnn+g+Hq6Y6j+DORt2NDWrcoLAHpwIYtPs5PcHShPWE1yJgMTuc+jZXurCmxNzvn8qwOSr94UzZQC9MAIiWaxD8JrIt06d5aBrgx7n0iTxl0jzBGcm21iEqMDrngsztMmKiy5v6VOxblw/D/vsucJmgzMUi4M2IL2L0EHwK8zfxjnCvEIUuyv3LrQxJivzp8fk5Z9ObEwz2dNcA8dRqP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cqV28B8MPBQzNE68EOTBkkRgqWy4i75iTClDDpEAk1Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mHtXQulZmDgasHM8dzY8rgfNL5+/fUP4GlfUYL1IWqBt2tPOJe5uXItxoTS+tF6vpdOiEvAEFWlfNjiuqhkR9vasu4FwGepSzyFJbkXK4bOHP83fOPuSaKrvQxTI4dG2TKNIXsRZvOmMtcV9uBjjB7pNaPqaRFGYVKmsvIm9NPXJ9QHKTaRGvh+3U3qtn/xLY2uhu60TlqKOqIFT/U2jIAfkUnVrIkosc+yotboO9gYpdZlRhMirIX1GMkhCp6ecyJyPLt/tMvCh7O6k4AzpZ9mlE/oaNM7lMjx3lGtIzO4EkBucO0smWRIibrAq/f7ck/e0k3oN0JIm3jbCFPUFxihKfMb+59LI3N5Qe8Rf2+3oJZ4oHLZq7fAgJsV18/LYGg5KX5+CslYu1818MkOm3Bw6LmrlxFLc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "crHRzZq2oYyNFA/SfS9SWPxD88hu7uq0K949Q/UVKek", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZGhptkv7XTgF98MuvMbJ1dc31ZT94vdzfwzbcWHHfJo+ca+l/gg67YNnZphDoXI1kN+nv3+ymN6hMcC1p9ltUIjlkbUqHqZNLxiIxBspA36OtMW5sq7Y2c1HUatiKXfa7uDcF8ZAAp8mIgiBnYsUOZP1hBKV0z1l/8BgZRwxnyuLoXcGmEsF9L88Ou5ajlLBp2e4R1vydDuqsOAsuIj6HDeiG+wfK7AUejKRypgJD+OTbrYFRDEr/3gJbCoh6ihTZIUYUz/4jS7HrAAer2sYjqIvX7fWUeRDsALN5Z8j7wuWqtYVJ8H8uBFMUcRFzZKM6+/lZHdPzHlBkqSnA9jwsyji/WFmNra5hpvRXmuaHpqpzRJr+2IRdi+a6hXEqd8Km2q8EzfkXUYynvX66FU9DLHPzPaqWJYW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "crsZW4JNvbEntIrMuGgLlRSgcVLqMDb8QYToFtf8h7U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qCm0JL6lQCHlNweB/uqRr8q5hFLt6WA3oIT4oPe/AaDM421byQhNdhcnL4jZJ8An5hYNia++vqcN2hJdaqRAZ7o56NKAN1USNtdOsHlLb84zFEgNIUoqBPgHvKgcLxC2WpbQxddwwrVZmxBEhgqVE9zLoYWoWGTGNtb+AtsvZMxJa+yiZQf3SKPuV/0m98hjtI1cYWbtjZv7OpaNtIyoTUfLBtzJ6qZRGpr3pwxkgy3PaowQZL7cYz9G8VFMPxj57N/jwxiR6DZX1V6wUUyn8d5g9eobyGwcCxZv2zDks5TMAE0/bADgEg5i3+khhbhthkVAyxjvLeG4V+MRx+JKFBn6IA8kBYCYM/9rwjBy0nZU+I0C6a2prtrTwFAPi3Jha4NAfkg16DyRagpg3yCXWwumJNbP/2I8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ctOhGVMVWk0CVixB6gWg1gF0Qy7h60RJKWtuvy9LHeU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PqR7IfgFJTKRxqZVl9zuORHLsMTRefadV5akKN3TPsy+qsOoyUnPEwWAR0UEeQdRi7JxPZCh8sTSAe/R/lsn04CT2X5UXCKrbQ0fO4Uek/elJt2WH2FKd5JLKYnr6jAoIdNbO+3Rqlokb4dPVnPqt2eysOYIrkAT6bu5gRDTx7blWxfPCOR9C7bFW5Ti0usr3fnEgqFklWm8YECXY4kxWifJGJAPdiINxt3eGkVPtiduuy2Bj/rlTkpwwGg5R3O925rNwYFD0dwHfQ4Ft/TFDxTk72q/KYLajFP92COeff0A76ex4Z4BVoTSQss5ZQnZCWQ0RTvV8ThwZLnq5ute0o2MnxFlRGt258uR9kb+pu2XwW6d3goTziAeAyKBBgPzKd28OtqWIbZtTrguMv9I2k8VhEwwgZq8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ctRGvlkZw6Kl5KumFDNNzKQ7BBJpfk26vl483JEHGoI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Qd3Iyn4z0f2iOqBAjM2t+AtDmlC6eCXUbhAGF8dMRGY8QNcuR5Y49vfHtmcUsYnLMQef1lSXmfzz7BRSHk8OrmytUTKnoFxWeJFXc9Ffye8ac5kpkiTv95O/MB/x18ZDBaGXRvxLxNst93Xo9bmvH2Xu5o/uEW9uSCpAfKnCijSEOXPhTMVDsPqpZf9Vl4wLeyUYjTHGt2/jMb2dR2D2ccF+hviUbj/VBDUVFoyTH7fNrcxSbhBt4Ai1QNo8704Leo9er4NtuiIZYlHjYqQ5EtyeGY+s/stsxqMuZBSrEDGExY1+RSwB4uZKXh7T/cFbzED2ItLE09Pfm33BeLV+kU51eh6yXXX89q17qtLBmeCisthd2LICJLiROnOUQMjsbE00MjZY1ySiBsthtybCFAPwcpNgtToG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cv/Q7x0X+mRtVla4lh6LP9osH9O0bsSPiYO1u5OaFNw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6NzEZabyK2qRqJvD6I/1q6JNY2poauXpMcsOfYk2lLW5uwjJt5Ewn2HnYnD6ABtUgMM/iVQ80tuvltYdc7TBO8qv61XCASd5naFPm0kKv37X8Bbz4kxaypU+Ca0+QnsL35uVsQlGRl4Gd7JZjS1g7fIzA6LQEwkAY+0MVHcJy7viFspKqCam3YSQvJLSOq4Djxq5ojpvS6i8TyljE50pYyLtlgpafK7ojU7ruDP2vawlJXpdL88cCGm0q2aNAND8R27Zp8vuim7LxPNdIS/0Ylh8O0MjE08buz6Yrv48WOvPieEny10CxmnhFqseQV6Jo7iChSgQ60mIsodR29GL60/00lgnzg8lo+VuGCkl4fJDNPFfrZpolavzdPRuGkmaTXh0bq4F48F3M2qlJq6c8UjO1tWpEpGp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cvDjnRAuw4M0KrtFYeA4wqGZAt+f43Y3GnerM0i0LKY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0JZrRPheA6XQNIqHivHn3wDSbdu3yAsbTASTKx+WfztPsEVw87hoEgLI930FKDoc+CrqqeAEtT6mC2/kQ0EDcPRoDC/Kj0czXO6i5kiW+IuRco/7hQCnZvlhmrkIE/GOJoKrTV5UNqG+Hxkkq5df9IoFT4qtvZORpT5iCr/AZ8U5dxJrF9gkfVbdYcrClpROCIisXY87sdUdU7BnDddvFmXLZGLrNsER7ZkOBBoFNIerGeQ2frZEAH+Btm8Yo5NRDgiFMW6EnaSkui/Usx9Dj7+P29i4h1zgGkUzzziPb1K8xuQQ/eRsmqZZzbZh+mJme9Dq1i3y6F3a/4RIN60mGLfA7rHx7JKNylTU7oHXNeauPtPuEE2RMhU5LP7ZjDgljp8JmWCZQihbpGdvhAy8TazJjAeObN3A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cvYmab8sYvGn7C98YnqyE1m4QOtZkX6uMwNkGaauN3Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vPcnV1w/TL3Chk7skQa73KpamPdEpmpdAVVlJeuYdeZY2xzc/AdN/AP6RgLIiIjyJA4g3o129RMhC6zgve4Hz5xqa7KdmzCagApN+Rr7B980hyBWpbl3IO+9F1zSsxz4LLIrIp6OxBHI8V6a0Zgnjnqh0g8PXDg10lNO7XSXX0k89HxyVmHzrqKRaqiiLP49w5IBMw+guIj7UqIVULzIsqdjjbXKTCrl7DLPfXxQdSKFqteb207j0AY/qKXmpGX+MZccXO6MhQc/+BZ8l4AoIHF629W7yB0Y/93/8SIJwba/MsY9rnjdEH80ebGGUW9YpZjKKoZQej/6+2bxfpRDC7ZlVTQ9KrRybOs3CtK38oxDpCLJ71KsIwzqWsQBuzIYh+ti1SY68zlUYaBPuMk/M23lS4ktgnnL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cvl9IJs3nQFtIMQUkS2zH7KB54n1hQbyOTJ4NgSedkc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "orFovmK1pn/fB/WyDrhGQtr5dBm+K1m0RtviR6XU777w4Zuc7d7NgJ0L+bb+O7unDcIYY5YQsRxFV3rFpWQ/jIlMSgz5+B+GK2CWDfi5drvX2aceaINg3KkGy8TxsV1Du+YI4TUmf5EYi6I6+wUm02adSQyqsiHQqbTlL81/17a/B80OPIUkPS0V/T7Yt8mez28Bnl2OeG4cDWmDppphwZemIGdZ8Afnv/y6amYefNEO79SEegp+bOEPDO9RMnjNY+Ld13REjtPhOX3BvV9tf922Dq1Zzp3vNcQvuQqvuVeQTx7Zn6zVd/W2hkahqjtT2Q86zPZIRTHAPZzsn/n3u3Go9DD+HJeoBb8C37CkeMKK54/lrICxzvzefq6KjfPXsnBWz0phApJ3OW/XVZAyJks0ahq+OwLm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cvukARQCjgD+ADOGEmohdnDltw9MUrIQBIFB00yMx74", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+VzbKEWwJGuiU9ZXy1iMecuOh6GtqCltHuZfDvfL8L+hWoLuK1IyQzCB4HLyU1XgJ2OjZII8L25BUrn/wWZ8/FaqYRoAKUqQOetBfeEL787inMk0VoKJOYfRuYD6K1OgDps0r60XurhYiuchPe5T1iJOnekUarsJ/rmViR7oTlss03xm0eseqzdxX0aOoSbSzcS5LDw6K1riG/BIj4Qb0a27iR8WAvEmj4InpiuR1l0wSk9xVaC+5OimbXQqDhh/EvRbRUxh1Lh5bunlB1Ui5WBfn8jSMA6m383TIhL4+qsgIqSQchVC2a48dvqZNVmoy07ouiJDfr7PbHtw2NRcgy0RcoYYSgVR+7laVR/Bbk1SiVvqB+hGzV2Cdrzy829ZMPtpOGYU7jBt/xbFEPnpJZY0bGX25oEf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cw0LU+7cvimhDmqgPQE3Xlg7H8fvt8ENWXmTifDfHtc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WDR5mqPzhRE5dmUrfzLW8x6bAt3KHaeRR5IUipL87DT4qXIbBnIL/c5CwC5B4E+pP+FcWTm/71xsb486l+MsfGgubQDGPnQgdCdUjIcQRGj4j8+6Cgrxghqy3fTnw4eYNs2ww61VSG9uSgS0Wwt7PJMieIOsHK4zN7hxFHcBwWAo481rMxRaz3PROhIoNX+ikSwIMPs1YI7b9Q8pH/XYvdxDaHEg15zJ7ztkriHABCHylJ4M5qTeDcWxWCTZQ9Zt6CSns92yyvoQEGOe5StoFOxu4X99nr9xFHhIHR6cKoNJz3pU14bOpnNgpRjRG1nln+svpBQGM7Q8PDZuHiBtdpN2lytUXm+WD/qj7WwSA9Z+5NsfxrWLRdDxjNbnPMU3521NYrsd9NWhKNs0J89MfDirJcEroT+s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cwKK3Za/Rk60dQGJeDvse6Wvwi+0O5gbFqMVUfEkh0o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JGXngxlYwKYzuIwjdJF/zT8TKHGiZiNWbYsKF6W2wxIPdE3eVuiEHaFvCLnrYj053icY7midHy0k6Gvzb4f2MfhmLUgtvDATgqt8I9AQ/2W4azNSfa+jy5pHgVNn+GsM9CCRxVO7LCuMpBh06EJhUaLJwOHHITYMOXY74NCM5W+KF3lMdzv4vjBPMwuk1S7jBqlbaazQfn2lrZMwh7ic3P8cFa8QefWuP7uf0KpCJ6LXV3bv2QqNzpA55+RDom/mF4768JeMpS+EbkMbXgrjqe59FXPObYRlZfM2yupzpE0TmJpdJrya9qBsEBiU+GC7LKdrmx0TPiLD0lgna9N4gAK5eyC+YwDNXUPdorKL3KsQTf1MYBIjDbrv+RlYU9/063jiL/Mc8MxfnrQseV5lmR3k5fajCLeK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cwiMdnV7yPEp9uAfTsGCq3wUG92Hh9SJWZOGpZbhzPQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bzaeMkPTKBW4tdPtK6HinCVwSd3HEgDUeqtTPnZD6wGXz+fj3NahzgNTB9wOXMQE6oreMierNTkqusa/ZwLZ++pZWpDXLOB5feMPHvFyPmCa5lyZwGqQVCoryDpBlJK5ylGgK1LbH3gEVSqpf6y4Be05KqTvI+cWCjl11CXujnVXCRmIHynaBUslKtuzZcwnz/MDIIngN3oJ6Nzo+yCCO/2B3fMYHdYTLsSkU6U0GTRDfaenzxUYZtkN2qN/WHXHJGIqu8xly4LHV+o9DW5OL3wPagIikjCUzOkgfWg2VXIyi9AmNwDfekapuMXQpHgGv1PRAeXd7+qpXm+mgoYgR+C7ULqS10ZUSxQmgjkVUDStxJjd0tSYbhz/LtTVQByu7bmUg4gdFFJdOhAM3tsag3M3cAybTlRk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cwkeIpSYBtLy30DoTyZ0KlFrKMBEnk+oy3SHlAXruTk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tE9rSCymfrIoOkuHyWgpJaTNm+BmQ6tPjEaS60cK7C9dXIl+xJ8fW1f+ogL72bslWvzg8kw/T9S24mBCo2MVo5v9yFpiFzrWwoNQIRy2JmLDF6jPddWeop67eITgvCnprhtMVBCknfZeQ4HaebtcHSZlXsTwV7i7xewW16GGerlNg9JNISGrelHPhIDvDlql06ozrouI3FR0UgtTTkp7mN9eThJYsuabaqLNlntThCark5+KkN9Vo2ccDBsX6whGovnb8w+/jhCUblq/VSfOD5PlsNrrt8xDDdIKw5mYkPYZStGGXNCZHt+QrSoz3UGaAWlrUxA8i2o1VHmf0w0h8NCdAeLxCwgRsYzGQ50H5J/wNEg/iKe6x/mr0XK47x9kBd0qK+BZ9EQSxMrlhvqbAUfJ57jzrL/I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cwkmItu84fh08BTFXB70gh1zPYKT2mtXjOH1myR1/vg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jklYVTtRxmxZtLHJfhmDD0D3tGdr1YHqjySywJksGXsYeUSaR8ApCDKEV2Jv8Q8y1VsL7SXn6iakW5dmWsfE8Cvy26BOdUFpT50/KcYm3FQSu7JNhuDBSEt6Fj6mdqkrChGyKqUVruJGapch0TVXhnY2/bx7rL32Zv1mNL5mv16Ilwh9VQD1ZkJJeKieI2ND36dZXOTcO2FSXZGjHCTSkRzNc6wQUj9roLRp4W+dzMnVlye6NC5buCO4VqpK7jKdDkv2zgjXuP/T2tFfwRL/b/rduuTIWrLOYH3q9mFtVieGDDLByTVeIDhF4JYl61Hw0EPnLvRj2xXdiZC0l7MAABaqE7qTLeCOiAffz9itRIcd+2AryWbpVKtNyJCC1DGb3LLTKOLsfYYaKvv0OeVOT0wMPhYfa071", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "cx2wD2LcPJV3kyUambLRQXiSJ8+EcIkZNelqQaOr+Ls", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1KqavPVtDiA0bXrkmBFeXCioOB8HR686EZvuU3QnC8bZrx4OXnA7wTB9XNXIW52HV2Ew3WLilloQcT30HuvvUjX+JMqQyPsBfNkXxw7fm1f96GJGJN8v/xas6z4s78Mh8wC2tdW8jNPVMR0vOkNgWiv4N6JNK8G1ehu4ofy+5IhrbBgIZaCpC9D1O+GXQ/rbBORX8EawRBZQihMYO5jDxoJ66OGe9Vio/icqKWfgvLvr3KRKvSCQa8B0mpEgjxWdhBkFkYRo/RWxsoPJzYxocb7+ww0ZofD8sKN8ydx/X/q9618vVb2a4kkvRLuegFJPNQUzFVcqgUqWsCDn9AQPAHRDznJ4qOIlrYphouVEsDco3ZbxfjRvfwmn0ha2JvBgznJx6e5Xd8dDWn3eXN5B7Mr7IeENEykD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d+OvWOU2PkjyOk8M9frafN7PYG3f5Y/m6auBYaN/5so", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2uLQkTZqf8cRk0Wf7u4KibT9pzCljorwcm8aetj7O5tx3iZoANERyjCz8FOwJiJlGgFvXphwz28K21n3CBOy4EoEpPTX8OY5R15/WUYpIY89F8wbz3gCiZFeeZDmpGYQLbCd0bUox4tfnVk6yKtF0Bj7iAN+RQoeIQyUpd+OKq4o9gfg58UFUYAw4/y09499tWKnMPJYn9hQftBwy/NnXpUtocpyp//ABZ6JXlpW6KCrkuFV45FixWCFxar4mqyHddWWvdAmbNO4tIIz5+9p1G5qtrkHmoWVzd0R8MlbXBFGelGoA3B28x0xNywJayaS1idDZ4zKoEkhCbsmDtKO4sYpywoBW4nViwojp2vWIqSxpYna95rvhkUYPJK4QtPCQI6v1TxiiIoXNKXkmKtaqpq/bBtvHXwc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d+aechOuC7T2kyKvpLnmZtUUP1e+dxb1Mv2SA8Oamiw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1zfqIFwuiGnMXsLLgjPh73PI6YYw2cYHmv+SEmKvQs3cYyfyRYuP38LwB/vQIE6pfjp7ZswNUKqUWL+wil3VJ+OuYyjcBhFJId6FyR0kv/VTYQ6q/bFvQkHT4G0bpNNYRUQtERWwP0GJOf7GTSVD7WVSXsRODuR7fevETy5LgRTn+4V8CYtDbuZ8AkZHO6Z7Er9DXgKPoBshCrCenGa1L2eDxfwzzHqECMbWfQu4PBvIuQgXY5hJHqq1tIS8r2CaozRxwEShwDs05dtBGBx1NhcAgw94zQa10go9X6djYftWCA50uFvtGpw+OegeKbaatkR8usnV1q9/vnCzLp5gxpfra7PIZ52U4xrQ5xbCsv6VgKEye8dAUfufyXXQOSlphXHBcYQpeZuqx7B59k9dtO/RAgcA/mnO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d+gW7fWnKMDElXYZrBh2U+XLHH4zfOqVo4AxRkg4zqo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wCAPTW/SeNbWq4DD32Q8I2B4DJW8Tf/qsjEMC/RHXrJS55u1AqSWdU1tylLQXoDjJehXs1lkL0ubmZQv4mlrcz/ruhT+Cml88+cVjGnXTVOm3S3dksDvuGAzx3BjzhebDIxFhYKIVHEDHqusiSt72eV0VhltjssoqRFy+T6ieCaXQJxj3gCyJJBxZwiMpyvgQIYigUbbfLs67GfabBT2nXhpWsW10oOWPzJO0YC/1QxU+y+qRnN4PYyPKsqUyNUua/dyqv3GmvQ1cwPd37GFxbkcgTuUztz4IX2QpicIwEAP5bhYqVrN4LF+8IVRvs4/1kyarop7w6H4KLciaHZvzudZvz5Olog/vNcEQkSDUaf0KPrHE/9j9BSEs/9dCpwbSJzIh9KudcMTCyfqcXgnyVmVaGJvE3u7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d0asOvw7r3zyA3qSdSVRN8PjRu0Ot9g4r2CeFZCQduo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M54QGuR+7WDq7XmGhMymXXmRmMHLdUyA42vPeg6fsqFadsaGOq1F1W4NwgZCVrkaZPcpoRPftPuBh787/IyepdNAePnUXPYu46+seNjlNqtAjE4UkyafgsSc+p5SqMW4OwCiWeCDujSMjIMjGwG22Nw76fac7+SM3/yGbBd61Av1Ofs6UxYsvpSJZX3d9hovRmZvJES6E3NA2FkTxntDwLdb6iM/Wm8YzTdH5LV+uSb/Iqv+/mH1iIYKDFCDH/BgfSbSKMCqHFZOsabZX9O1Mn539W3YcG5/lI2FVIPaKOpaGitZ2N7vC0i7juHRFItRcHKVg68X9sHz2SIGnxpsj2M2QqBgYU+0ya/ibQz5PNuu+ABwWVQwtKofNYOY+Fut8cFC/zmZ/aGgC9BLMD9nydiBh8CuifYN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d1Ky2TU3E1hVK8b/B4QCTjJWU2lE+yxJ2wLvWL4rBIU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "K+6gMy5r9QmNuVv/feMfcn60Fkufbo+MxDmWEUgIOKvwNS0+O53DdPDGAHwrp6bD9Mb4iHZBx0JasO7fTWDXtHLyXMlpi09Tq5JTTZcIYEhCydDX9GQnZmzFbHGIkorDeIIUzvXIW4EBL4+Z+exY8Xq1sgn7reO4ixMK0QEsKD20T9BdNb1aamEs0XFdnsugKcRGJiOHuayg94tpf4A6HWG/2+h+P7HOqeS/qBUSX38Px00s4r6ffX2qvKoSJlF/ctFQkL9n6g/2gyLjSrxHZH7eI1KD7O4hS9V+gCLa1qrcdgFOj3q0fBiMS9PwnffzgsHEvMhx/eoeDoIf6wVu0ePqo9P2eI67O3bOberpFCUjr8DSp5Hvz5gXpm1/pMwmcEGjs1Dsw/RS6k3nsGUoAFwLCZb25LpT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d1SYI93JQCn71QQ8gfiWXO8iLhF/XnyBIdJcJz6H8TQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yP81ALMgjbb2meUCcU4XhZvJFnCszZu4otoQ93VdRhMZOyVsy+CukOfzPlrdps6COFc9qH8JMT+amjGHchAqxZ0cUy25qt2zjj/etnpYzN9vXxbB7OEfRR4EdZWKDwx7tD2b4KFEklJecITFgvHpyXW+0SXu1A06SaJNplvFdMvI5KUH/JjFURQoNcq+umF79vZqw3HxewEsLohgepAvBAeIpWX4dn8+ftBYpuIm9xycjRFkCZdl/zorgu5J8BBL+zbHueLV+OYhS5s+QYGpsT7Xk/x6Fubyd7ZtcEShyLybX9r3fGw2RBE1SfOO3nkfhpMMKDh79ERs22fYyR+M/6Be6cXle9Zi2p2VtEBEQFyLsTytjEAwah2tDV7jLlKavSoG1mrwifmVWWFGUK8y1OcV4pP5mvLp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d1TuSAeArAsFCFW7MgjJ82xm/J5dWWMLWVaU3KWeWwE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0FNHDpjj6aMhZ90K+LXz4CooD1MYjC2e9pRQQnFRJle2ArMCZANmpxKhksdaZvvXsmq3nGfBLgrnPN0yy3K/tneYGYd+te6JkZjHbxTVtZXjATJ4Ef94NE1avUXClJ+O+395uc2hNBz17DZ0FGU+CkoR00pYB1Wc68DqmRzGB/Gigla7QIHz3ZJo/jnQ7C3v69iox+jy7+3BxJ90qd9m1VzR78A43zpTV6gdf4mrAY9WJLeEjXo118IcMevhkA93mZ6cquh9C7uHavQiCUkcjWm934RUFznvdd1tXI3o/Hc4m6xF0gnozlUlko0+xZpsT8eXpnIUIVONa5oWl/V9tkGvdCazMyW4fWONUjgRPHix2m8T+nVRS2YMRsYamWRcp8kkoflKeVDwtSY6ewUQw5XekNAipta/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d2n6haKQSqxpga98na6c9n5P2UOkGdgaQcwza+/NfHw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CR/BwyDyBGTH2LRtUrDRT/zeaWkcVzEHUgmk2XwyO2X3vdDhUxCe3Bg7NcmlHRfwwsKuvSc0NJd3tpwsvwTQYNtXwKETfaqBTcBQjNiRm9dq5VWsNwQBA6pvKC4igZ/qTr9Gy8b9FmeZsQV11IN2ivKayMzwGYnvXF2suK7K+wxEwpqTgeezQyQ2AiEzKSNqR5ryxXfXmbWUC0YBKO9MCr0Z9xoEywEZ0PCom0ehepekME0ZeiYEvGhIQXT4oDPWKfal7/5JPWpwJxTuQ7KsKr6pErX1X8IQzRX9Nut7nLiILcICUNzfTnraFINmwus35p7W9JDoUfzw1Ohy6/Fl5cpB15Qyf+fdgboxt/6/t6Mpak9eBet+3HhVkYvDwph42wNQuXam4DA1O2Gse/PWhiJ767Wj5AdD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d5HPV6akbmHlU+4sRMZppGUKcCITwqGg0L1DeXFRDq4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xFtLaYwtaHInECniMe/h6YiIEqtwgv4NJLfNVREZ4/x2Hc65um7beZwnk7MXHFJJ+d5IvYhz5Mjm9+KjNieByyUrc23U5uSQf1zmcrhkqXvto8NrQk0cZ/9KP36a2baxUogqFMdQvXVPOjbLBIqSWw3ETZ3cR+ucNK9ddyTpahPUUXe72HaPh+dtNLkRM74NTWjaZnt3I3nSwVgwR9TrC7hN6eYdzJNYtRlDVUp5EM41J6uK7I/1CABQblTtvkDu/PrxqgbxUdArJvGGQMaOEU2+WNZByEx7ZDykVCmS/8Si2ZuqkCQUEb3ohHgb+IyJ4DTtcVVjXgBj5WjXbLd6LX+YXsdSjv4p2o+2i2yXt69SoFyy9D79e+oG4+fcXTLMgLnbu/AvOh0LdfwaTf84MrTtAbH3zFL2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d7/l7VVlC7Tx2XVsmclYuuZtEhAyq3dmNy+3ipjZ2l0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A1dWhmP+MSEpxv0mahGwUZQlfmIOUVmagh3gr3XFwJ1gIK5xGmiL/p375PpkrYXbJMQngdr1kergfPLAexGrcTP1jlIyr6xcPDkbXc+gJr4PmHPIC409we4Ry1WKSO4Ktp3nh3fdXzx07cQOyvg9uYhIkw3SpIKELw1QFHLJ1gGNRMlZ3UPJiPQT0FK9J2F75YXiJMVELT99Lgal4xiq/v1B91MBFE2oIQK2wW7x5NslXqie1eZ4mFBho2+47i9+uUGzEQHsaPW3JGgIfi2j52Y5NirBdgU+mHUmVXFJETpHO32CNdXIo/A48RjHv6A5C2OSfK+rLswS1UuyJpAdk7u/UcoPi5LWcj8dfR9QFQDlPuCt0nBnCl4uEb4eLDvfYe5QUws9mjdQ8wONZurPhFee8x5D6UBL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d7O19f670JcBS9rZra6yuboi9zRTDmueNpk0ZsuFlrM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Nk30muQbZTk6OkOLb6yNdDJacOkc+skh/JFREJKdOOzVsMYs3dkEsdlmVFTKbThOi7qdRsOlMS5XypE0PEdznU3iQamM5ztS2Vke5TID+j728D2g6oncdhOql+cwwiFL4OtkT0PtspW5PUt4Gmrph+lnm2jDASW3of5ci7pw3Fe9LFcSA+wZnzVZWDxHXtH7cslbsOYPTcPiCttcvXE4z7/lTU076+Bh5kMITPu4dHVK7g74SvC58+jU/juFbY6A3LT6R+EmcO0bICIl2M5VMv346v47qUTOaouDTNHDN8nEDHSMoH1Ie5+tbU/R4OxAfJiM5kVbKJ4mqmvWC1OmiGkpkNi6RTVH/zhuhKVkpTCYM9REPZ7XB/2RVnwAVpNXOgMZpWVtDTgpQZX0sMJ9klUlC4z/P1eH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d8Y5rNxAJpORSFnnYOi0/i6mPWl1Jiu+i2CyleKGnHo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vYZHyUiqbQXBV7bLmpWZI14gBLPvDePJs+Fa7Pn4/Tu55U9R1wKJiCDsqefxswrw/gcIruTDclXxCnTYeKDYgL2qFX91pOtLqTfdpa064NX9BIjmcgwbZOfJoRsHfXuylsz46dn9o0o1naT85FpSZmgJFF6m4F2IOQBn526IswI3NMdxsNrK+Cbw04ogpO0c/rQtE5I0xYRSQAZaFJo1rUarGqNhaaOTb++oF5daZ5JzcBc5rWZfQseOmsP4aiq9Cy5zw/yqoeug7JlI3XzU+37iUoC4RJM1/OWtMLzN5+U6QCm49OQDp+/ro4kFndAWouyOAExlm2ARRQmS7avqHw+bwbsb0kFdPYKrmglxHprCs8eE1tw4bvOrxglDezs8Y67p4OrtqJrTJ3jwcE4PayEpsXCJL1Yl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "d9Bu8Lau1lwm8daKzZha0hj2Q7IlSfUPyMZIck6ObjM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NLjnF2qkTcJFDViUvZOyS1kK01PKoZ3O9UG72ZJMNUj3qXmplcNOS6g6XUyTIy6E2O23y4u8ToqvNoF/bIGpdJr1bj5BTsudPN07HO/qvdpl3pIrA92HCMf0aFHZ5Iyb0Icsj9+Lo+5Kzp/m4/RRNSNRmHwhJ1zWjc3M08WwqkNwCHLX+GsdvcFkkvRIWFz1bUPF4AdkZtIyzTROVDgTSLpxZXyhZHtsYyN4EU3Bt5vk5ksnqhzeAVSeeMt1dS+mTNIzwXOM8TjwfsRJu4N1OkVPwl+t21u0yKqR+Msz4ZEj8sYQ9/r/taM28XeEUXJN/cuJkL0MJ2DA6LhIBOkIQ7xPVSvSnOKlAvsBLx82CcIZedsdITjjXQy2diI4U2tem8iJEdM9U2QHRYfvxOJqbGuEGotohnum", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dBMBiwL3DUzLUC6NvWy/RmHXso8uB8tmtUxnMyB3MCw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RrdjldCv8KqUkvnCX/VbcDiO5wZIiNTNvYdiKuXZuNblgG0jkUWRMYfpD0kUejk9Jq0CEErSRwB7x/24bCLq0f9urHNpZl+gxUMhanDucm5KKL6xzVH9PU3eklWLt0zzt3/jNeUyyS24Az5oUO+h5tepOi/8kKWqjynPe9XtSeEfon5VCT9fPhTna3tYuINxrcYQWnKVF9lBgWBHgDjBeZONsuDcuW9dX7JJmvILuOUYM9LvWgBZIcbVpBJB58FxnUc109YQSFNxXBPtH8mKZ2lMp8Onp2ZCsBCQF/OJ4o8T31odKS0svLkmdviE7jLpvOgeqDIz+qAeDo2bcX13dJIVlH7bV01vWtkoFuHIhEChLT4somyI0dPdqqbXvotKi1ITRcC9UyO4frCrhq8kE8Y7e3tUeCo+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dBUC7QCuTNqSigzjmAoMg+yYlo+VQ6atvLglGguxj9Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xcKhKp45vMdo1hZPV0AHAZdDAwlhCj/AJmVREdbKMyjZmjQtG/4+Pc8UGrg5suqLdixYme1kQneys5qsjzMJhlJuCAP7FJF2dutgZL46VufOmhWccSlpGHPaKbDPd+KjahxCWa5T5vJIuf3CNUItpTR8qshVd89n+SvUfSn/518RRjdg4MOWtZaBL5G4xtpmohG1yn6ExMvvrssMXGoYoBZCKDSBYJQyv83VXt5UgiIfFpiuNAKzHAmkVfv1CBIXw29sZphppfd9AGYXU31Wyvq5O1vdPYPkTgeadVng+STLeRhCEjIO/rGtQkNr/36IXMA5eKE920MnNmT6bUPb+/Y9TJzu1QOPQc8NF9kdT76QviHJ/trq1bDf+yo2ic7aWzI/u6lZvQ2OHLq+yzpYLzVDbD65ct3w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dCc7KCPzRDyCyqPvGSAzmL+2+XQ0G1c5myCvdRp66h0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oScrTN9XLVffzmjWRQongeA0SBDYYAOg3MCxS+IvocVVkIjIARWbrBFfbDLKDnPNvZecMztYEuan4v+evSpydc2wZsNJTbdxXy4qY05DvpUUHYFmsovu5BQCMXrlIywX0WLWUp5JuAChqnoZpukrzwX0XxP5m/VGsIR+DplEH+mto32qJ1HwSV/bm8NvBWtcRXjRmP1lI5cwSG8IzjLTFZY15H9dzpObbx3D6lRgYtHnpXaZolx98c/zF/ZEZ+hedp/UVV4ix1EWY6+5WASqPNNGzC+7FQWzwWApaTbCAscRaDbGrtPWEWNwz3IB5WfrwwZZXIFis22VtmzoDVZkoJbiHoQaoGWaNgBFFcLgc1uCFra7cIZKWR7pHknZR2EECUApFymcgDx5yA37eGWEVkyF5s+NU+cL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dCkTc95p3Q8oS9yLuKgRsCj5ZpVyiLjZ23SxN7Ojq4k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZcB8v1G5M9ghoaUPbP7qg8U5xrpR8c+DNJHphwS5CPRBt4NLlPYrGl3vlhGsiaVIATj5ZjubAYPvsawBgkl5aJ59vpkILCpzQ0FABi7l1O3a8LQmknbo/i5lAqa4CdUzGEdhDCtKyfOBu9RwKJCCKuj6U7gag0ypF9q7bGTjGahxwbBBq8GuxbUIhaSR7ZN+8hWRy+WOvgf6CxgJwdxvHEbyVs6kjaI+++W7mI/AH+OFVDtJm3uqWsA2C7p1HzihBD53i1SBbLgkYK2CZuUTIJkSJ3ZmD7z3S3mGc68UWnhpb4czxx1JK0Jc3+9B6EtjOszk7BNCJ8t3pUVMsdxpYfPm6XJqkKb/0k+c3Qhqfvya+vW0mGD5nEKeTbXqKQ0olSnWHxmcsx1fL+pe4J92uC9hUZEHl+Q+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dCzQYNUdYcx9vZ4oGW9nBHeRCQuoumOPKO5xgdXVYTI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4MMw2bL+UZuwCx3NWq1H/u1wERIipyY6YuPSce4TaIICXU5h88o3jYLYUnRNGfrYSbj3CzufqqCmbmWovguxKluTelKATeHUlx3IBaR71R+KGt4SRV6vln0GqK0wuQgc9ug/2BGSmg03ro7hjoXiJzZNSHbC0Ifftkno/cvXMRiBbYMwTvoWtsKMbTAe599vSsjzVKpGHG7apLH28OOoEwC8oYvj8fRJl9xZ0Hy1qOERaPxUXaX3iCAO7z/Y0Y54ctLPPMtzOrlkZApF/cEAx2TtGmPpGhAVvfMqHVmC2t6Vy0cCLVhtpkfr7/uceWPj+bvx8T3WSVNbI7FPKyd41XQ8ldTxW84EoogeFA2ue7QTIgGCTpqM4WZXV0cMEiVKIL3DPCm87Gj77gKfd3VjC46FSSjbTsR1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dD8uHQTbqdFxmLgZpGL09fYdHjZ/2DKrMyxfZzjnsSM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "deeNlQ2WbtipHvMe1E/jKZYl9hGYxuuo44ddRamvYkFlb6dRSyDQWn0BTJAG1GysAn0bIa3tMlXamsPe0AlklXeAy5hf/oyTbBWX0w5Iu6RfagBQSt3WFEQFRclgzSY2053jlOvt2/tQIDGz2AiCFWaSi0eV7t7hKWuH32wainD329peDu5qcPLxt4fk6/vw/37RIDih3UJyGFRNHZeKctZWE6nlx7f7SNSeyIs2h+LsD4w/Jbbg+RkRe4CVXDcXlOGDRPE90xpwqaj+AMw/MZQo9igSGi+okzZuboIlnSSE7VQMpTF71nnaWmXoZ2RLn7TeFuSsP15LRMV+X2BcXxZ5z1bRiUAvbcPhXKE73JA/f+BvRyTvwPmnYmylKgpY/E2spVaTnPu3DoLfue+lzsmrgVblgpDt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dDQ25SHCZMBM2Y2lXgiUmElfLyaP0g4sUsm5UooKhCM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7VJZ0delWOTzhNpW4dHC5/wp7d+Z+OsPXeaE7DWSD/UXOOTwHHdwJDcJIQLKLMVD/YUduZ0ZKgMGfZv+1QI0wpCkVL/KEsHi+ER5IJ6o6PZIu93E+XaGohgLd0nZLcXCFL7RyNenxpo+3f5xxFosNtUgGUer1aAhLTPWUdGvMk2qn8KN95G9PAWMpXDVUmt0Ts+ni4H39PJDICwaUYQtH/RazWTtSqGXTYR/UrHkFvb0TRUwIk+Hw1GkF1gpDOX9ntOexEK0qzQXI0llULFGYSnbjdTLcUrTXs03oUE/El825bN1gcvbzapEOJljStclelrfUmHvGikzpfioUH470GlgBRqNextY81amtyIyv/kd3MuCTFiUTWfbX1jSsv33JHT+lVXxFKmmUt0cn88RzVSM1sqsLOVz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dDyENLxn3tYPEmp866GX41KXlSot4I7BIAgXvrq8VT4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "31wbY4v0ptXwM5VS0+S+puaT/i6JiOp7TmDr+dKIgi4iJuMd5qq6PlXx1M+UW9l3MhH6yQ6O+VBs9sAaoTZkCwQUm01YibbEBzb/IysH0HVnmluAGvBwAq4ydnOpLAK5i6ZE/1p0lnFuDDjoSQfAg4iL8ag+5vP3o1oGpkqxiOtXNnOnn2xGn2JXgLdFEKv7pUB5ObMcLlnwCEqi8UQEmhOw2JEvXfMnNlmpR69KU8WCwPLb+ujwg3pFjzwkpe+Hr7Y+FpIvaIDg0NNEwXOBxYlLY2mE3aFBCQIK+S1IWxVSUjsG5SmD4spO+9pO0A3mqOT9ZjQ2Jj/CuX1s/xka/kQYTfsOkAFvDo/CPW2gdrUASBUmb1wxY60+v7lDb5ssHaUn5O9HNNwRhV8/I353U6Q6qEH70Nkd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dFBh/SoD+IGg636nRb7b+kstiZIKqN42zwRGYOq5SLc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vTDf2nOkJ9/FUbPZNKwVfVq8Pc9LzK5jqEe4Mg2g0PuAImg++i6JaRhT8caFNLGCsgQxhy1AqR5GK3Gbv4pyR0HXG/+YG417DiPSGs/Ll8BNi0+PMNfINCnWeX7Zoqq+X4QvBYVT9aISPwUhRqHQn0QZweA5/2FzJ340i2lFcCU2WomzTLRm1a/nBMReOBUsQZN504quxgJAqTFSlaWwSCXgJQEsb3+/CWrlH6Nj51dsiCD5LQrgGAaQ3IeZYi57Sliij4/yuKITerohwVn7MuOhzFs12KU/tJphk7E9q/XRITU7guYcnWGh5bBaB8ITXZO5bZsWAlpT7VjFewpVlXi8bFMRWB1aH7qLbiRLAhQuN3kpk4eCdV8KDyFSvC89yLyd5+MWt28ZM1xDSENPv6C3gzPe9/1p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dFUQN5GnvOGWCPCcqNm8M2iMKk4TbrGV6T2u83Ps2vo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FiDXkvdLfU4fJ1fq1EJW264sKeMgU1lkacIMiikSDluCM6cUxPIWvNN9ztTtbS08eLZFuGMO1tN782QqQ+6QymHIPdKKJPJnQXJQUUZ5tfG84EDSYtXf3GXEgJxqIpIgdHBQPlVzEpO6ZvPoSxg2rXHaF7K9jAySWKsDxfK7A5F21pZDsOsWAW26+w5yrA6cB4OrYSvC9AcVS3zauLhj74M6+KVFxk3/uswMwVYoNcaSbCmgAJ5at3hD75uTukn7r0yi7Yjt39I9/PrKQT9JzKJsQ9XHdp3KfhAnPO5negPKdrp+SNR/xsNOIoOZuTQb/aH54rfDXcUw0wGRHR7udMraLZMtwEx4NHM5At4UFv9kQBr9vtJz2wkE9rqWSATlTEFAXnr39WGBaGkH6mdwJYiKRIT0MTdM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dFgUeh329exEjDyVnszw9c5RXvGs9IOpRXj3JlzlWFE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9x0u1S/7eq9r0xju2K1vAlm+atL6QM6kuOzxuLs9iue1IUqVENhg1Z72KZE83iHChJckLiwsY/3VH6JxZF5k/cSsBi/+5NlFSCgKurSZYs5VOXTSYeUQ58tc+KjmMe17tnMwZOT1AuGAkPFzrcnQlsue2jqzxpO/qbj/KBq75irg4VIszHAjDStD7iMKuwVFWTPHC3xksDQY2YFIKIUHRI86MB08gPB5DIlFqXAr27rDD0Jjz+9rmcc+aK8Mm7/F/lcSqnGP4PraukZ1DjAYDaz58wMCmO+TmvxfHQY0JHE/LENSJQoCOoK4n8uuijcGOk9Z2qxWRzgTkuBm/ki+xF0lC56JKavU38ePf+AAvZJI/5tLWiJxrx6fc1p83BgJjN+auSwn8QpEGl3pclrYIfVzc8oQrOaz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dGwClfy2egUXkRrj/tHmqB9O3jQmIPKJr186NfCh0+Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eJdqvAGXCvRLxgbfvmlmuEvEuf9xPkePn4ugMRYABTgOsAgUJ17B3PVtUx1FmiwoibOnGoke4vDTNb/lsdwJk1o2w4SfezuB/hhZJWil/CO4scFA4p1A/I1sRsMFgSy4ZMtUm0rNHZOlYnzmtwL0vznQ6QH2c+YA8MfWTQS1dKeVsbDAAdfNgW2hqFb8y6H34+7dmu1etfck+QKmy27F+pT+IZXLkpPEviuKEHfGhgzIjyNt5gL0TdV+Ns0WqjgqnMnhOFMOfuLzI17OINCXj2YBV3Cns/bLQGjO8Cgx4NYbtrEeFiuT98FccNKrd+1jtQifRM71n7dsE6JljwF83DGdnU5Dr/WNlqcH1gh+QcLW3YpPl0djIC0Rd8Ca47vCGSW9KyovL76DHqhgfHwzc2M9YbuTd7jY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dINIQAjfnne27Iyj/VJId8P6uC7viglfrWJVNbI+z8Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m+seH4IughiGCGzIhG89nRMCHkvzeqCToxidmdRfcvoftpej8O+Hb0EZgKGZpS0KGU20pQ9BBRzdCBdvLpoT81++9aaQnxpy4Lqh983LUcLMDYzG1PFWImnuNpl1AOXZ8S6efxgpdkBAc3kJF/l93TeRQRHlST5IZByxGFaHoCpLOujMY8JW+RvFyrlEngyQMmKH/4d8H145voPpMpspnUcW4tYRTQI9oO7C28Vaqiy786S8Y3PXH3oAJegupUMHlmMErEWBHMrkDSX9hv7fFWIYGzTomAtIbq+luxvyf2MvtsC9/1TqLKBhaSbKPCTDVG7hq24wVv8hdLDMS+cGiqb0P1Up7O+7wdoIi3YVI1l5VZIKbg1tCTTVEpD/wgREqeSTCz0H99rKglk5IiA+zQgwNFl7BjNp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dIbCXZY5hQOpQlBt0UoWIFINpegbrEJEW5SAJeAoYCA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IqkIFHHrXu941+nLpicKjYump1LgeeetVWbc+Gkc9zcMibFj3iQgxVmkQ49uFBD27n5D3t3UXD5UNadnjKVTT8NQt9o04VQRbyEgtxPruh23QH4yRkmlgr62OD75HaUfVHQPJxXn21un7dVUfIve6H5mt2eYe2YcnQ3t2hvaxnlDKo+0y2o+6mXkHl4ZD5RJiloy1IRBZf7D1iiU+FM8DTd9uSGh52SE4UIA92MVeQpMc+av1g8A5yn58RfbfwFaQLSTsqxaUzgSFSGQ6QG6U0mvH7NhxQbEkoJn0337OhoKDnypW1/X4iCF79N/uak+m4aNGX7aBOnr8bbALvBq78nHa5VoLZeVHwsQzACANSMmdVNZsKodkKOjeKs7lpqXx1EJIgcFT36UKS9mDeyKgV8WSGRYMgSD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dKEJd3Le8mn8CtKoW/biCVmU2re3RJBiLYhWAvo5EIY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Hy3FFx7oNQ5z1aVp+yw5Z7sW+SKmzSUkax6onGEMCD5ciLtuynQXPB+VPSe9uk36l5Oik8PooLk6eMlKC5o+cncHl4OrSkdqhXzn/gwREcYnx20Bug77gD7xBXhbEY7JX3VcUNMmKwb+IH1X3ehRbH7PS1N2aXPMwWBDhtJZcuzmdCr2ja+L57TvFIxHNQERuIiCxIQ2QpFvFEjLrQt4ZRavu4s5y3myixP+6ZV0X4yKbeRuszEn/5961LNcXRQcm7rfjVAWk3AjR/8jLpTOQkNHTO2abkCN1iDkrOu9EVZ4no6w7S3hrljKNAcB0NUiSbwumkJm4iNTGX+basIgl62nav28kYEuiEx8F5HBDy8Bhgd44xmYFXrPLfVofIrUWTF+ibtxVlLhfy02J1x7CUCA5XXkGHBG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dKvOUf/Z5zmraXJ6u41xSiQ/gNZRWJCMfpy16TUiuB8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u1HYOAlIN0+sgZpDNxHhtAm9WmO3hxXauZx/2xjQUELsvGH4eYulSlWz0FmJTlFUWCne0/cWSe7KH1uWxRd7GLnKBn2E+wbl74I4tSzY3vT1+MYK4+1UPvp0RLq8nEa9OpY9WQ0WW29JMRf19LzEHK9U0mAmYQ+NNIpm+KQSNezR4LSLA7qt2enMDJOtipfkJawc3Y7TnYvaWwPP4ecL7yIqc2b0v2+/NdTx2nIY7p8Vmytov28P0oPo//+LFg7SfizAvo2sALEssG1QIscPxhlpA6UcdDE2w5R379v5ZYDGFXmT06TjKVYmOvS6I8U4O+eU8PO2ROVRQuxUnUskYMMFd30ZkGpnANr9wKKbHEDY+uxNdwzV1Kcd8m80qQKM8sCV12EqvLx6oGy3Zf3KYh5lArNbq164", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dN//pErfFLHoM7TPc0+nC0kFbfA4Cg95VZfhFvHSPPs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S5FfekmnImPQm/ioe9fkQNmMmcD0X2YhEB1DMLQyLC/jnYBW/PLA9tnsH2cQC2V+lsoNEhLUXwiZ06pKAJND64PrbWYohMfGFNx8g3bDyh5TDvkzUh8uAr3VV5E9U/8wjyEGgs4k+Ois931ZSHfQ73DG7owMsZJnjpp+6oOomXQAUqOSfsitkzlf6KnVsRg+VAPkHwRg32O91TLuGYX9DgPOlRN8P0EIA2SqYJg9SUW2gXtk8E887sPNWlxi37Q9GGr30walckEjtVXz9j7STslRWVNGALNKS3NGvWhA21dHbHU/Q9V1uWkhhJP+71udZ+R6WthUm+3kSS7cdP1RRmEwr9m+Lrl3LUQmH4WJBAtY0bCp88bolQj1iie6lbNDO97UnfH90fXbom7aMj47ymPfo0Yqzy/0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dPWGhy20wJY8wCt26HHUwa3YabbmU/hz+XExYes/iZg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PR38osxG54ZZCS5+jYN6OGy0z18vIfPxqkkstBJWXfT1JO209dg5TWuxhZyp9Nto7wxdotdv2SsSTW08Mpm9pjh52qT/bqLEwQyBDFxKGvmvDs7U6lM/jVixjR/Fb3EEGRv6RXGzbOys7G2+v70jvZY6h8jLIkboRDEMsGtH08kR6773Hitk5R3vksKG0pJpD4Q6iCdLi8gEJTTfYc4CMsspkgrH1S1kU/N4n1PaxFr36rsoxXcsKDTG7BY9NWk58EIQG1Zvn8g8oqMo3LBqA0tFieYKD5fcpKJk4o3y9paQLyC30z/uW72vUgPajszMnfrcy2EveKmfFo3WPem7282rvV53ga9lHTph5J20/6V+tFW+uCkGjm/udX/kFS52uKapWvA8Te4dincdMR5cvVSp3v4DXfDN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dRZbuUA1yF3Y6OQxOyH2AHz6EuCoNdO3WaOgKQWaw5o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q7iGyBEZOFUCnQxqhgVw4amEk0n6Am3V+aOBndZXRCXnmoSS/bRWURDqyA+4QFlNs8V1mZK0xwEKVZ1WgDND4P7P+0N8Hp++MOdlXVb3+LOOA1x/4buy5uRgS8Uc71Il5RPquedzfkxIQoSvSLa4RxmxKbqhwlna12jnG5jSfQ7u8HN+ntBj0F4WVwH3oIV1pqUzJMYKzE3CvrVFUulM9yUjddhDem0Zoq0G6bI3y/otvQuiBF+409Nim4wfAf1lG/vqE8QUJ4vXWJ4eb5aEOHsQJk/0rWnkJvXL7Elu2mi1TDgHEaXx0hCcLcropMgiyCrDBO1MKRB6qg6QBM8NVOKjDdreXuL3Zps7yM7Vg+Kn5Bz30G+bg6wxq9smpDItkfk60aWjsa9JmTEz8Lsa2zgO31FDYJAd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dRquyVDPm1ICS6RGoRnu/qLqAbYceqKiri3Bo0BPD8w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "n/74AsthJSP9WoB4HIbOCjDf38CQ//b0XnyqZsJM06/G4Boj2JytXYgM+kS68VyjViUy4eXJdo8GOCpApKHOCh3TDQ3hsPh962yyehVWDs6IR6vKPqFELDEi1xVLWxXhOrwoSo101itSuhRBw15mOAurPSBKpeQJEi25LwCxfWqyAZexNdry+YIyr/Lzo3B9oO93yusad8mnG5CPT/KhTtlW4lcVDyn8nj+Bo6LBhlZ41ua5zSgZgBgPtrZTE3Lde22/iGnF4Gv77LePdCK7TliJ87myqtMusyplMwOxPxfuIaxUaA0t/xOLZ9UgLTYQ7fQ4rB/TflJnIhdsahztdueYTT5cz6jj4o7AWo/svhy82GwdrHgNDPP4SYsmbHg47AXYGbXHANEgk88bue5T6IUrfzsldELe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dSBJiWKWDGTrOcIXBXy2NvS3T+aaDm7PMGn41hL8CPE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HqBH6hGPSA6BE8nDggh3f/Ev/cdHV4+Xwsyqms5NvqVpfIwPZ/byPvyh7wTg8MKk9gxBVLerDK4XrwPJ46RoVwCdMm81R3s2KtOfZCnbgUPlBkrIH6OsRTIsa8wAr0+kwIodFsFjj3bVs27D377lYvRfMiQM/MsXKW7oroKlCYLeu0RzIvKQh0wcgnSzJPFpOGintFgNrkNDFQjBl2Th+PkhLpE+NCIxclLt8dl3VF05r/f7hkCMfyk3xHPwyP3tPpLEXEC1BUR5QH7mxKRYUy2IRctzJulX8Xw8i6Xre+7Xjk31WkJZNq27KEuoE5raFRMHmNHMcGSMbMfdAqC0mL9DII7CLliEaKiI3N6A1DEpJtfMB2qf2X2hDEDYuuL9dedgC8HoAPPP7WISf3JYQF53FaNFQOw9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dW2LdDcUgWExJBqljG1U0WVV4RgHkjR+0qh2hv4ET20", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fO5gKZ9q09TB4EbR5QwSs89o2hH4WuWbY/wDsiIWIP7EWmeqY5PHR9Bp9EP3hSYsEB8ybKmeaG2QwIUkMcJMbHs9ANlpfnAnQvNNo+T6YBh5nOI3oMi3wISUz5zeNaJ1E4rsOAm28VuB2NeLWDPqi1veKtQ7zfPAO+GFU941WvRTU8iGYmUG0tDr/OTNg9zBCedZukTs8La7Zm7v3nEuypBcGJFRZkP3Kthhd1wIejvivvcSlAJ55JE2GJn7FbQGHXqRMb/f0hjTriHpiK2v7xlWEuDg83/BYjFwYcjT9jAI0p6gendNdakwoZmMY47PNroNF0WJwR9KCO/ajJqTxPyqs3pwtACgOwndM6F+C+UPW2icUQZphRXMY3u31Au9ynpw7NSn3iAz9udbXGX26ZVd083pTemO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dW5AXxiQ3RJ01JKTXR7zVxm89qiGsch1JMmz8QFuEkw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ubXCT7CqTbiRpm34/Ct9yzmXijA72FxmoNOsXwfrN35P2ESUaE++wxwpIGSbzCqmsl+Js6vmvjbC/4xQgCAa8Uw5MNVXeimFAETuuTSPf0oST8yAy75LxCztAJ9EbVliwVKtz+FUG0VFYsFbCXMHI7hnx7eX7EtNcwpG+GlkN6p//sFEC9O8GgpoXagB5gtDjQggeytE4tm5cI50NHVEMPh19qS6Z+tXJc9aIr30t3NrA0hmYmdtqooVKiV3EJDMtzXdeHu4AoUCw4BsMiuymDPXULlvLtOWFLY0I4bFALNRuxICGs3lxZHqlN6UUOM5YN3CYgNz8hangYdnxZPkswUqNunOiIIxwEYw7IGeBiDzuUcB7LC+LRoxAGYkFo7Dwe0CcNceFbrS4e6FW9ZS/UpC7XNjbTFD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dX0YRmNL8CX/i+MhD3xv8e/kuRlr3HYH/a2GpimlK2s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pCRnZFOJ8xjeUPeoT13pur7OQoFZk9xJha0yiGOhkvNsHMCP7kKPQcapqUxnp18ICEU4ly8mG3cIHFY9OMacAd+5OBSois3cyS5idgJ5JwRmuL41axb1XemqyI28w/+W0JAHM/py4Ja7jcVsygpaqOy5vyqN0R2PmYGwvlFFz/5GxfuC5ucDU+dm+Jl6Vxq0ViG+3zkSVIOTtHWb5WtzrTnRMxWrt+kGd0sFipZ/DU0ddgHowOmGFv/QuYcJq1dmCC1OgUO8DTecChpSno+F+wcnP1RqLaYO4VMDVhfOmm8prRVnIrNG7FvYv2jhgX2Rj0QxnI7vVBUxNPYbcAyfMGPlE3kOBcAUnwwLHuc3HtKAcuLz127luiajjAR1SXKnEcFk4yN2gqiTR3e5W4Y2DU+YhSZ9ac/Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dYSTtLLvWi801TaqQZ7Eks6Zb0gd2oNXQPwPz5XzRrU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5aacd3c7ibpQVmzFxEns1/jjPOQmrHYi36JX6kPtG7McuMrkXxT2sN8kb8vP+kwPP43UQG+CezJJf/6lXrLBSuAkJdzDy+J4F9M7sWTlwjShu82xjNCGVtx0CqzGGFGIw44+LigUgBDw96TZ4WJRWPVAPEyLsWxr/NRXOaHohtNi7T+vn+Q6nYdW0+q+OL+O27GxLtQ9VnYPLEChhex6HbQDf+nVkVyXBEVv3enTNOcDTcYzYB753WoFQ/h0IQLkEz9vkhgVsW72jb4bvPwcMkZ1pFuFLGXhbsohwslfHygejuTIL0Pm63Y7uaaWOEkid316KUHdD/FyUeY5T6rblZHgZmkuelELDH1Eoi3d9Y48WY3qnB3znpEcxteUtFbTgrYSNlZJFETY1ie9tWBEFr4xHupq1NCe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dYUER6G5W3aIJFkipTR2HTfZHUbB7+To7XUD4buYqsA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oLYRrqcPWXzemgrM30lWwx9n/y9cUWoz+Fp+xgJWQl0G2DreHLpzodjMacjA7c/FpGc6s/ZJnG/rJ7aFOln2jVTEjX8yMfeCaEeSa6RI/h8i34p1KtpNnBd7j127j5o13hwvjpxVJJGWvoB6xQ8U2+QnaSoqoOnfkV7SGoY6WP+rvhayadJOB54S1Oc060KVHgKHJRv7QKOyO41gGeiyHpf6L23hbt16y9cPNZuyT7jmBoZ/fxccJbmsGUpD+q6LcC1kLoGxZvPB9ufvs/moumZHgkPQNGe/9ur83DI3ujcEspFeFGRQlg7JpXY/d46J5pNEKkn22EnmSBzDQ48Snet3wBXxHGRl1IQ849ELWck7Z8uMXXj3ItOuT913MerU+eCo48FeI8/nUdmJpfEHyAOUEEH4tccP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dYktLkndTsk+RbTrYg/NEunsbBjtF8AQ7KhGEaN3EVo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hxuDrffPven5ulIwgB+4+g7dikCE4MYds9jlc+C+WuEWq/iqioIdRsf38ADrGc/wGnHPhRBAZ3KUbh7pLHt+VGS4xJ1OK0TIglrA+aieBPn8WxVmVxKKZtzmMH3BopK40JLCh+t8uTVxJfw8xU4MhSXEYFvaz1wxWXaTZzjhWGx/Hey+LFNo2I8bD6ExF8s3k4DrN8+pOJsbXMGp0d0Lm0VMtVmN04HHkbjo+97icmhXDcwwrMLbNOON8j9quLU9z5L4T/oPus6kE0MMMo6T9+feIcM83ajrw07qoYBAW00AdSL/HIsZkevn8eIkeybA0k4tz78eU/ckRXmW+rKRFUJd0H4+51EPLxmSKpXEuHbri/ZJll1VXrTQ99na/ATNNM4+l1mGuSIf4GC3JN5hvHOxS2gC4U0W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dbrFCo5lwKZ6sWoduzCnLz+5/1Ti2HPlA36RNQrxNBM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iyYw1c0Maw0GgiUCo9Q+AyVA7mHG0eNBrhnRJOFLEIkDXjK2MoGtCDmS2OOj9sykJbuJfQfOJzh2cBWSLadr1GM+Qpms5iVbVurlCELDWaLU0N1OVL3g1dWgLfUW8/QAbX41en+3pqQcy0qmd4BM//GY9VduBIngQa1RgdbvcKbAnIjqO78hT4G6xRy9arQkdV9E3Gtnejk1fRaKHe6UD4jeZ7GH6IuBNs1c3A0vOxKFlt9OoLGr4G4/cHEsX9odJrH47mF1jto5ZUX4fWFibP3ctu56g9jIjjrNc6482oYotYjhFVplWFfc3b9MvEDgsAXdfScndE5gm1Ohxnu6oFlNTsC7OgJzTFI0HPDQzZUx34y6EjHE2a/qk8YI9Uimvp0n2nVWWC1JQiiAhaSLnemJobyNT1X3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dekyOfzTCfQWn2C0rzuNhnR2XzLr6J6PIK4wOztO+1A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j750FBMC5k31mx79L8wYj7IgTEUKNq/uzjUiFVsQt3NZn1USAVib8eJgvFUkQVyaL2DgkBxuyu5jznwSX9CWWNhuFY1ZU4/0lM87MQkf+g5vALeRoBn9PcLzmy2mwiwkX+kzrOHcb7ZBYP/AYooFTRp1ebR0mm1nhOEbQjH/gvkq79SJI4MtkPBzASaxGckt4JFqeBS46o7mJehkGy6gG3Zq4Fm0oZ93qafwkqkXXy9ciRuru8sfbDuFa8lJCJgYRpL7H/Kg1nyl6Q28yC0PggeVQ0j7DgFgmTwsocgoYTMI6FKWWVR7PORwG49M2SN1ufs2bqEPgV0Lm6Kk+wVVo+as8PM+Ahb4/bnBlAkc8xB0PeWfoK/ZPHKI22H2HWoHefhvebi33SrnleXtFg2/JgzojNwYYlqJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "deuYXhNARa4Nn4rdha0IRXGF9GyeuawdqGkbM9uaVm0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6LTY2i/ds2y7aW4UjTDs4wedjAa0KZMaPY18t+cVD0j7VtRrDOeaWa1QYKpKy0wRaQCGhyhbGi1fgyNjljKTy8FrTzSSNp7rzZDuHQs0UYJkamlJG7bLm9lQ7XbZbd5yCyDVvTakHvBO42NCGOIP8ibZYKOgUI5E7Uz1lJYwmlCO7XDEELpsm2tUIKKGOH+FvUyY5hPPfOpkYvMm9qybVaQhCi6trPd9KgzrPN98kDhCi5B4BAF777WI/sPMe3OeBYVMjC4WQU3/eRoLEm6wmspkAERyWgn3C8mJ9KYLGOY4AFEnP2fzvr+/xLy33n/Gv7qBLZQjDZ0h1FRHFo64+JvRztvRom0uD8QPONPdAx+Ls581BKzp2E6BfZRsb+T13J2dl3jCz3Ggfvb/u2UxWoEfdFPGcS4z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dfewsKxX5wBjXYRReLsIxjnspU5IdD9uTFTde83RVpk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "85g2CGcqrRhcECbDpJTmgz2DWaNjF+6RjlYatuSmCNw5OuW2DbE8zsY93c9duSw85wG4F+B5tBUf2zCqTNfIkEeZipdZccL1/5GxL6kGvNh6XsQhtWmkamHEMvyxKlO3/C41MzlcoWH9osV504ZW0KKGxnLRbabxd5Q5NXLV+T8i20eB6gN0Eo6UmRI4jC4e34J6co9ZpPblJK4PJIDwJlfbV8v0s1stsmQXgjh03rFkSo7hAPxCM74BrR7YlXRlqRyr2x1HhmtYSxbNpkfc+JVFN4g4PwghNcvUnDqr2kABKvnIJTFsvdN5FScTaOMpC9hk6Zws/vmV1121TeGgtITiJWEEkZMLjIECZVQmQ9VaZwU9nfwks2hrVGypmIiNd5/Um25d083JXS+x0DcZAfuHlVkiG+yU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dilLfAqA76FvyNVCCgxyVv54njPoLIuhprFMbaTDjFk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GUj0yeeOjGMFbNyFXtWSio9w3/tfxlcbfjr9jVtFaL6mma+sCsHsavWuJd9UnkbyIQIjhztzK6JcO3zR16MGGzbjqKMV2TF2rfleWk3KbSeLM7TKQyn2POqzB0KNMPy+ac6Im7lg+975F5BQd6QNd6NZt7akZahGv2dWIzUDRmEka1jY+Q+mmQJqxEhLomPKNh/2P1fjzzZS6V8vFQiPkeQ7K0xRQQ8clOkZB9fFDAkTuK8iEmNkWyt9dPiwAvtPrEV5Qe8IK+nffSQ/fTY7Ytol6shhD0oRb7o7+iY+SNWXgiNQKzQIXOUzhJ+QpP1U4IXn04RwpiZRAmwBJsD8Pxh8drjjvwxBqCH68m6iAEIHsA5JQLpydbmWqoGgHXhLajZP/Q8ccqNj8mBOJmkAfffxfe2jvSkq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "djW0DO8NKYLSbEiczZxxMFNikvjDjb78TUcIOeZI80c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T91Pt6wRovAqUgIdIf7iYCC9uf8UK/0PZ9PRCT/3MmnaHlhetWuLZE8+/f1S+0vwpZVfTXsLW8xvknnRAU8DweSseEvdB+Ee2WzhUMA73xTaDkPZMPuoj88SqVs472v3DOO1uz6G3weAqIk8dQH4ILAIyj9uN2xbCGRJX3dpVeCd1zH45AOXl6lBvWm7aB3i08kmrwxGRmbgq9vTYVU3/44yB9JeuvbbGUFpFTOyYP2JKER/sHV4v6guYxiRtGfHMhBM2bpe1bEghdXrUvk30Kg2r0gGzJflUnoILby8s4YDvxAUxyEEWXKODfgvKMtW4T5QYLUHzkZEAmwfbJF4wldrE9hj479nIH8FLZpqy3qQQuGI8eGPzHEN7Blc5GqCRsPyxgYNL3AyERSrpiCsJtMDKUQdoe1u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dkQz51sNcgC+wsE5ro0P4x9ugn0DpxKJ4+AkgSjCC5k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EWzQVwzWVIVNG2L1cA1UwD3fJZHcUdOTbbyH9D1P0PMMFkisbT79Ua2RVHJDxYM/1f2qGsyzWjpyfzIKcCfXG1fS1QuJaxxzE8HopJgZGP4z7mR8TbE3izX3E4qJ1LocPeu91Bo2AvMaWwbsqH01v9cmCrNQ+CZaHAPBqMbRqJSK2fSi2V2pTugua93s4RrNesfYyW6HV+a11IbV1n6H1+qGiGIqkz980UKskuMh+n6qxlEYBM/kdUh+4lHniPCuOP9gEXaCbdCYlfLi6TPd8YkOCcO+agec3WKlArzv9DcBVqQo81r0CPCAhghVibIrBHaSO/fyK+2SIQwjFGikbOb0e2SgZyWpf6lpU0lIwc/vjabed4dwHAsUkJ0PXMC6Dwws6YqIqFDWtrjXo49rFbh+HE3I4UV4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dlG7vUOz1J/MW0s4q8x/zVlEgaS5yKj5e+FNyvjlEb0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zFBQ59p0w9OHwRyCAbPF6/ThetVswYgtz50OKMZHB6ZPuFyP5sgd1YdvOxnjhOt0N2Vv2IiLpWed2qlIevIbwMAO/+75Qz/5UUS9VveeGud8TPySPp23ppdZg/e8JcTKUl2rUqpEBGhHR9b7pDSmUj1biZ1FmZg9yikK8sTAhaLI4tJ/ST/3P8NpnGpjUQUbXeESD86TV6/BEm8DX7COJMoWqG6MUaEWDGScZNbj1Oc7XWK82mSKZNgYWhxcNJQkAJRyd0O+Wy0arJuOWSGTSjwxs8OFBj2Mm/+Qb1FI/CrOmSgh0nGxdMo3awWSW9KbcAIujcty2LZp5roWOZoT1bx7iZj/hE2xYEgLMCizCzqKHuzJRDdzSujMxD5HtaoTQyv9jVmEfZNX7nW6lD5F8zVPfEQBrR9b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dlGiw4ZNnQR688GgARIy193M7BsDzUTuWd0Y5ZbwKz0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XP0wDY7BjZYF1Tf72RGhD/hxJCJzMhx6l3jngWf8BCNnVLJ+DbqBI/txAVTuk5XppFymElOvQQXdx0E6EoiQqPbMnN7Zg8wyfO+YFhJuXHl1j3sO1z0mvAFovuJ+bAEPG8+01yv2M37urKjzIkFC6a9QVg2DS4kO9aawRP5Sls//6j7N0mnvP79NkV8noBepS3GdGALcwqXf7S5zULozMVF03Ux1hSwRQFTX5CNzRCxpUp42Bik/Cx8C86zD/BcyivHAXHf7L0V18JR0qkoDnVd/WrVYWpciYtofuO2iyeQQZXOEAvCpP6b46RRhwGr0+zeulQtrnrAZdsOm28OnaMu5qVg8xQ17f50m54JsPUempC6riUWPIelqr1tKfEpo0h5euv47PN1DFkpYxoX/0ReDG96nseHJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dniSK/goRPwTs4QVXbXiAQBKIPfg8aKSHyYDuIcfc1I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uqPRPgaKP6/RRXA2nqWHjFoebP1WfDRUgWwoflY/hV2Lia3bNJWNdEtjTTiBdEkz8CmVwgXjquh+VQsEJTTcjZsrEMn6cr79mK45Iaum10i9LAFpcKeK70fqBdom4+7YGvcLQWAs6flCnbKNYumGNKfsCvuohFVL3GoHvFaK4TrEx+fw6MgQFC3Vu58JoMCkTXni5FdXAY+VuVtFXAsaeTP859ubZAq8HMuH13yB0KKiVdSxT0cNQzU1nGMlb080OM6qThWn+L4PC/ummDpVQ1BTbVn+mN5glERG3z9XEmpcJWr2tYh7OVnsUEvgW6FJrPm2KhKyZME6fAlOqBqzrCwTc6y2+tSQw4wp2GQRLfoPboHdN2GyxpUY/gTH7nyquJrLztacSUJlzFyVrZ7/8iDLplvpwtOd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dnzOZjdJ26vfyX30UXqsJllPKGP2clB76GG2qxQTTVY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nH4lt90IM35a5ENpm8WTtunYL/v1xQ2jkE6GFbQw9vYUsF/0VtkvT3UuMePY2KM6sOh3tthGBhqqGreq0fiUK31pdGRFRFhqc2bSlkcFPRRd00BRGOK/tiVgkxmjm8lZU88E8NG302R0rPYHSLNkqTd+Ra+/346zaB6jSaC6F4pJPuys7kvPaC2oUU5AA5yAu6+KMlP77IhGDFo8SmaP6SU9HF2Fbun0hbl6Uzls2bndf17v9nONlNp4rjC25ZkXmtqVjS5QA7W0DPhgW4CiogoaOjR4V9oyPWCapo0K+oq4DnMO22f8sYPV3pEUAExPMAzsvm4QDMc8Fmu+GkdLCzK7wOzJhadThX4JhLy8MjI4Cc695j9gwHnn2oSue09qKDfg4hfiZAlXZkJj78Uiym/jjGO7BU+k", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dpM/zEF+rKlisxLWV6TBj60a1tm7328IM+WsPqwMHPk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sWI2ZgZooG37cK2V5DXPss3UPvhFze2JuGd3m08Gvrbbs50tW5Q/iS0gScMkKkowKMWiZZ4gb+Cfsia/FYJMbhRYOefZsJOSNOKbf/ST+xNGjj5NE40ns5TBhyESaG3MehtbOoACMA2W7FijPwsjyNxPz5AQu9sfmVmOOke4ZTyK+D2TTuN99HACH1IgShMlIO6yJFOepUxGbRayQFDuksNcBoTEZQLHqyG+CekvYXIG3MaUxOXuTeHnGWOdespFjw0jE3lR00kDlaz5gsjOIhmeK1IPNmxKpBJqklGUf9yamVIc2QlUUSyxiPsc9IhFoVsHb8sjde5SHg/HYNUthA+42bfkoyU6/QB3bWIQS0+cblzXIGwTbTZxFVufSChAYINk9JIGkWGEULfe3+S1T8hy6cVGsuDM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dpmmoKKjAjd4IN5/EYnHkvxBEOZumDwH0hf/i4/lFGc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iMWzLGCQB0pAWFoUa6qYqulP4u/PoN0nt6QjWb8NUZDAl7GcnE9XlwIW8UvEPPmhl3kJkbuKCwPy0KjnfTD10djXJKZ2YfHtPsAiNSk8qPHr7OFW4jdoE+f8J0ZoOGq8zl0L7jruPzN6bluQgIf9U3Wr16mMwqtPOsuAuv3CUBetbVdC25d0/HlgkOB8nmP/f4mGxa6wECd9l5Xb4tjX8qZMMoidBmB/NSA9LTbSq2/heCV+oihoWwZG1mtsLCU50kgA3imFmRBQqRfDfngZlGONER/ClJWLeBIMMX/rjUSzSexMfHsDXVSAJrXQ99+ZRweW7PpkhCiuy0n+nuac7u7BMPgXKQVQUzS5zdGg9A7obD6H86Uu/LocXJBN8F4+lkUovdF7aTy4wmNPV4o7cIYdM5rgA8r0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dq7yKBD5puLONT6XMyFvd7tNQtlUV8NzJm/5HKn3qsk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TV8YqgFFBH5MeQkdZBYVAjRbXOX5sr7TyLgqWumrgwTuq+QUsW65SBemtoQ9Bl8q87U9nYfq5lBTQ+/CPvEXwo/flU+zo9fxm808bZlqZIenp8PPtMzbMHxiqkuKACcZHJWU0fEkyRgsWWw9M+1UnzXXKdx3QhQgvuUhye7IW7qlnySXmeWZxyhmReePmWBBxSKI1mK/+GhwE9LcVRM28ayEKe03CMBlzaTuDZn9V5aGQBbxt0MP/1RwnlQQIezy1k8ZGIwQvpCO6I33MhlLRkhb6/xqK6nTmAbH3qF9eGw8o/kA4uCfwNEBDLIp9oiQymXmDtZBtLZMIgumIt0/yKOqIOI6wSfTrjhAV5Q+TEEpeZPkB/Q8OUtM4EHXknbYi4MdnG3jKXGnlJU8H0HqYvA0yE4yCBVp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "duYB8E94wNd82LlG/s99OLwHYBBWFnBrIYiZYGsdK3Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aqxAIzgBBk7E5p/3nQBTMaQZKCF2erUail5CLCA/RRxs5Q6H0e7+u1AVIrPLDooniatotIN5vrooZQOATE0xVZC27o+B7Qwve1sxJ/Cb4JhpwE79BoZSFdDRButfAGBaIbEFJyblC9rByaNRUXKqyqV62o3nJzbEERD9M85EaoA8fBZU+6r/clHKUb5EhERzcoIHo/PYMsVRz2jkgDcoV1zadhB0AoUmfUMJxupk901Kun/YWTWzCwMFGhK2Sbp66n+Ava+gRyrPgfA9ZLPFDmTULfxO9cRvKsHNjYrTEntVqcJxZStmDPkAVM+EalE+MXAqtVNhqCwcCo9kEiEiKISRLR0IibwTzoliyT0Y7Lt2GjK+1vS0paq/RblD33hFL4WqPglmPw2mBSKgPKCGaifOfnKbtOOl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dvmNs1RL6hMrriqYy2QNsUBM6eqY8jGJQMRIpwccX9s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IkVnakMRgiJYclPpKHZZIJ4CtdoeSO2q+xPJNfhtKEjLzVg39NZDB/EqarE34+PUSwq37qPmQxyjPpXQ69hxn88iJKwQYnqwwcTZryvC+JBCLIfWGnDRIFVchgNwM/QPNaVDH2UsvQvIr3QvczZrgY5HzIhbSF1B5ny7/xXC3okw9PoOZf9gY3pPueaTMFNpgUFhJ0b/Ar+g7Vu/fv7jXdVCXyF1msZbN57pavvwaHi95fpqy9d/UauAoeVvPM+yhblEKUOGhwsenp2+JX8pQ57XdXj4yIzqhVvNENkdnJBY7AOZWdyrhriZeIZqYB3jmzfD4ZZpH0tidlbeSj5F3vTFEkNBY2jj+vxvLyHVcrXZiRdA71zadTexJ9g8Jm7A6HR3O/TYH35JG9Y/yOHHd3vgRL0pWXHW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dw2ag4sGIH0VNM4lLoplYConw6ol2iUkaQ1doCyJABY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JnnVbYPaCLc5aAJnT+KcRJOr0iKIBSic0mlQVgJTNVy68wwvXRv8xBjQWaLAKjVAuUHgonOA62ZW0vit+AMGe4kZw+lL0jExznIhjY3a9iQ+w2lV9nwrt5aWm1sxhaMN0CVnepiXT01nbUHLrxt+83vBuvHtoOZrgUR+43R5gAtOKJLlgJM9mBqbAKeG+sgskSMpmUG9aya/KPtw0NsVItkE80x0+0OM175xUWT+zLrOasT5xc53QzDk/pRHvWQMfrHZSUwPtS9AJn5X71LMCsEiJ+rCr9f8l/4JoHj4JOyRfAvtn3u81hD/eqdrAmstOTNh+q1mLmA+vIW3oFu7s3j2Ma7v442Xjhyp0xXDADsWTW2+6EHV9DdK1jRBMKqvzWx14OwKMKtargB90UNcHsZkf3/Z/0ki", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dxFGOHbnENAN5xaYX2DO1Qkc5M0bJB/SN+nZDBT7z3o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZTHv3hi1kWHNJQjXZYfSV0k310PeKyOVjxE1erzToFzOuNe9N0HeGBIAuL5RZndW/vE91NIUOjxGeN8AdAAUw8CoUa8aJ8JyVN6h7jXPHfITg1r21uwiF1pkDwumgdKZVPyTJNHIc3k99WMNBGyXjJHq7MBsW8+0LueGa3CHJ3lld2varEO0wrgKnuBiXemPhVOGtrVZKRh4xDVLecpc96wcHUDv1BfLpbJVsW5txKJPvwJ+zN+VNYAv2C6XybEi5k6+IMq/qTeDMs9lSVvgK6IHTTstlcaQ6wGCuQ4vmrA7xVjI29kE4C+hX+qX4M3Hwnsa2EyZ/9MvdKFiLPXNVnyjeZRdeggZUZ/qzGOUyfwsMXEGqdh5gEPpAVXDG6VlT3yeoe8mRPDYbxCI29rlJKZJ7aDF2wBT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dxmMZkscZk9MhZJ8+vpHKmL96wrK0ZcVTPBEiOm8Tqo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nvbi1gNl7i6yHJ84GGZb9ZeHVcypKPN/x/njIGuKRcOhyWQ7IvaoZ5e4sNvyWZL21e2SoAcKcpRJ6GcTRKlgROSOpxpKJeNjdsc9Jwmt1oTXMFmbEOYO/JsDnfyCumWONrOJRtK0PaCX1fFg5KYX5ehTYHPCJcUOmW5gi1eNV3uuV41UN2gDnAKyZWILe77QcNVYJxm9AO4v1izuJGg0Q2XaEg5Ul5BpFMe7qm3Mu1Yz7aC7l+G0dm7p7ld18Zykfly7PLhz5/aFdp0FMAx3smVXijbZpKBXx4F0/7cM215JEJ1d+XZRBFf7iZOOjeYnShh1yXdK3Gxlnh5jdmD6ZMzCxNJ/fXeeNuU2Ltd7sQJAVsgl0tbCMU1PXEo0LlPNWO485814pD3QsaShcHKULr/TAKgHoD8G", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dxo+Tit9XCvUt7d7sRT76VSsWmEey6/Jr5oCiQjw/DE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8f6sN4DYnWd39tieyueevR+3ZlR2N7Ci9G3nIFvxOZ+4SqUfFA0zfopO0wpBByMifSgsXnGSWNSRJUjfrOJk8EO9sywj+V7WFZwpWfqWpj9yh6/umN8dxyd/6nKs5AOxXiqI8mwW1AyJO9s5jnxnGq5IJMHOvaKB8LiOdKVnFs+FWPzPvGM85hWL9OV0kkZVkTL8LfsX3Yv0LX6OKV2kMuvAjUSCyE14Dyq20SCYpgghiYc+JIwDqnoX48mzQ3xdvw+19mWrpwWMafOt+LqPeT6prGO2XHLr89amx01KRP4PoiUf0sVSh+G79sZ9+T/orggrvXLrymguqiSqJR2/fMRvNwOPCo5rHd0LFIy7bcRl3Tx6lfVtMOxNosuOklQpM8V27W7HVytwuWtWN6erqHwmv66kyr3H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dypnoUcOFH1DnZO/k97OrBrfkiDZz6P+ih3udpYoZlM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v6VfgdqOecJREYjl874JQXK5Vv4zXhjljiIRaTCtvhMmKF7daIKB8M3nhH5YHtrmaZTG0eZtDeIi3UrBTsD3y3JyjyT1bOEK4HcOIguBKTHgGPAoMY3J+LsFReYf+dleujNdhXlGWrwN3RSq0KEgOLNs9zIUg2sO9WVHqzVEqGS9E4ml/F3lnbQCebACg0H6cVz+kHy7QhD1oP1s0gQqiSsNO6lly6J4/J7+5nVW7f6JT5hhcinamNuqpgUnmIDwI8euuWTrQ0SNmhW5QRTVOi1pqzwmUi/0uoHxm/jKgm3yLNmnb6kTKSf1YdMVc2YPxo0pi8fqABdGLMcc6JPkhJYXhOoIykjGRbMEoZUoamHtaS2a/qFnzbjVYmLSOPIhLIyYkfsPPaXI5hhPMEk/rygteW6hZ56c", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dyrop7qFydIgkdO7bTb8qONSQU7UMl+RCZiWwdeuQjs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "C9WQlIZwFpnbRK+ImN5C1J4ZoZVKCjCxotg4QQn78/Pz6jm6WyP08taGIVHSXPpLjnIRJrRz1r7kouk3gd54LXlHLEHV5gvZBfplcVu2hp0TahVdSFNLuXfGJC4FC5Oq2jkG0yX9Rsotj85xdmffU/KiOPxRdbPmWCcNvUrkXfTk3sOoanPxCWBeJ07WyO5v6aYW/8SeL3xxiTA4uPplMeuh0gDDoDKjgBpaM43k/O+huHKmHlfszZlL9IAJW4ADuYYqamrJI+XJC1EzpXJ2ojUj88ek3wJyIROs94LoRW6U12K2jG8wVT6wUUwsc1hmZcHZSzghg6cMom4TGMWN5rtXZZAXc08bLcxpqtUYBP143LBMfZbDGweYYoJYI9kO6ip7tpOO1l1b+oiFQiqkz/cgEVBxpU9X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "dztqYO9n24mc2gAINV5USOueLUvVyVFmwFl9qmiItnE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BsU8e+I/WxJPe69c2KasErKJYqUTe/10N4aEeL1w31mXcnPMC4cYAxlQlscNGI4JvqZSo3GT+yrPK7k1F2AI35alA0Zgvijv1qRWPyRIorapJhWXtk+TAGIdbdtF2G7/jeF8o9IaNpF3+NGJ67HtYnFAC3BookValhE9T+gHssUDeseqCjxrwG0UEC4ZHxeTdG8ULsnhO7cyl0bV5E1MtrJldHyR2zqBUHaNjGPAqXMpfYu2V5QMhXa7/LykD/IhcLyVQ5nI6sQBCfiCyhd0OiuEzaycwaCVA/qnWixgx787cWPEYVpXcg1XubEKv77dHdqgmglWOKT6As6WRIDm3FN5ITJ2tbYLGjos0oSZ0b4IGnV2sXnWW6pPIxxo35Eyz0iAVxVzHDgT2bmgoA4IlAFeoEQMuywY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "e/XsjY/n2h0eo5abo4zm97oP0ufopzjG6+Q8qxuv3AI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4z4i/PliVnTn7GzlkfAhgH0EKeiqy1YDIYTZVq3SIc7d14LcEdtb7tkETHDZHxnHjYI7q3AeolMBMpr3hk/CNxU3MPQc6qrLJgwQVNPTSfmukVcStJiC5yRzM/bjtbFjVS6nYbqgkmuY9PNWGr/D2q1L8S7HqY1IV0jsbI3FvA+gAUfproUvICsckfxpwa3YmnvN4qoTWLMdWNOxznHc1dhrX4X1Xp2u6ToAZcUu4lq7L4vIxbp1JZCG2QwCBs48nfUQeyOxAv9FcAoD9jg4CYMDHpDLNcav1bOwkC2zsrYqRFJ3jr19IKtZwAIuTMxG6/AEomwGcfhFHbKHKMY2eGg0WX9/d03rEyk5Pd+cwzD4Rp8gWspuCmizPpwHOIBdHhumVkb+LSRwHoacCnjQP0uDsyZq0Acq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "e0ziW6j93WMD5dXwqcOaNIz36Kj6KtqnRpnPpoeidFE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t2PtMfu2bovCx+MIQlmkLlXzQg7BlJFyATO2QrZlGY+4zJY1sIsLDQqqpmAKLSa2u9RQSJXbAR30/39d0qxgfNysdLyZhvkTVPb/RHID3OmXYHH6vkUw2k3Fqm4tRAYPfSkPlCsLtX+juwxhnV7cklGvtxP20drMdcEtKLiENt/U6fCUfPsM+UsBGbFSms9zITRBiVIUWH5RK7Nfdm4zHCGdFYarIU1mlME6V7Rx85C4MtNUKeCkdMjzaxo3mCv1jkTZNXbo+ETSPFkABn4+ulaq5QUOKRPY5QPWSJHrVoKTSoQeCFFv9Zq4VmvwhFlKaiQOV9S4aJCCzvxrM2+T+Y5HkEGtCHHPhOKjgWB0iXObZFMTQ5LQe4mmPsMh8iUlv+rWfaW3RMiYEzPtzbd330ILnwotRzlu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "e1DuNzBow8nayy6obZqTIQEU1QS8Hx0SN6FTGOkn0jk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3pOLb5R7qZ7KxXJMc0W63PWFDRaZizFPbvhXrKgfZbb7imuVBvcrtQMMKTGtiXO6oyJZioTencDxeFMzaJKEJyZSlBOAx06kdj+i1YxRWWxRqHREFaD61q6Ny7OlbMIrkjFoVH6FdrPZbYo65rjmOz/APpbQxXgvrZ4ZUiNRDIzGrTpX54bEJz5FoNC1FhD9IuJlAP5AyPxwc5eLdrMvInJ7QiItODtB7ull2U6QbgH0FafUufojRFeeJ0Qskvkcxe6Lw7Bh74/tMu2/Ko3uDJp0awS7/1u2QsoZYuTgRn1ANun48pVDWeBI2d0TulbImGAfAgivyebIUNomlCwEV4aFuMYvWSmEEMv8Xg+VgH5deJkrfT+NjFu2q6KmW8+EejSoNCi925qezVH6Iv+UeJTEv4GYxpY3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "e2hbx7HlRe9Z7IyqQHiIKaSskdA4a5hbB7lBG5Vcvuw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RHFZ0VQ0ePzINtna2NEyLBIpVWU8xYeUhcsQCnzHMCBnAqL2i1pVYQ2jJH0IfaxJ89oaGd+hc9thXe+sZkLb21gg/sz9FvpEcWTgpjM3elwQYQSWd2psCWT9EjQcekeJYYMnycU4F3ALmbW+Yr4y+vIy/RNzuMpmw7zqJrIZRNeN6vw4UMmUcLm+q2RRNi3oQ9K5ZL1Iv0XCep9GYr5X+gxdRgIgjgB+kvESDp2hqawKL4dZsu4rv+A8TswQKjyXZfZVJ3MKg2b2ncpqsoNHqSenjgTK9RS3iG7SXqHkNSoEZbrS1ZFcWqjLxYbiQEyQUXoYR4aIPPoC9htJS7ML1hfiMOmHqQlSGUaXT8XYwI+S+LNCOl8qjU4WjKahtqC55l63kj4zDsBBY+La3sBQKiDdifUpkqzr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "e3bX3F/C5taqCLnunLivSCyFxgxnBAGpSjnHwopTTm4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "62CrqIOouJClaZg2R/ar+oRT+wM8dVybouIblz0at+ZvPfbAegvVOm5FxThLpo3LDuzBylyc39+iBa7j7S6aD8kv5Ghn6R/7RotRDPNVVLzjp3Q1CnSa8+mQSzId6X05vKiGv0+NC3Q0ahgDTcp8767vZkDQyXlYb/ASdb5O/9ko4aw+JKEYy81bJJlts8noBREFLZ7XId7mtV22V306cLsOiyHTyCB2jTTytwvHeXk+VanvyEGZUAk9daT1D84Znep+Lr7201XDja162bn+JnukjMGb1+IlSglzPNpTzKe+kYJfuSOtYL9q5fhLe10zF7axaZ+/oc4U+RbJfCWxa5l5mhVLdmtm2i5LPar5KrhtZu/TBhqzSeGJt78Jch/duZpji6pDaWi3w9nrkYj39M0xH/NhclVR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "e6bADk/SRkxrD1FrO5FW5eW1OPK9I7mfNLdhoqPXPH4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q0DldN8RfvFSbOtv/oK3/5eQ0FZ1twKHBLMUgt0VxkxVBcFjMJgRbOCZA/rLzqzA+ihrLgSPXbw+8kKLQZj+ZQlFLPmbGG1wFZftJ1A6A7lbybSO8j3N2ljpeIRDC81jzREHXtPyX73JtdITkTYo5aCIc/GeOnBMh9+WUjBZ5coN3M0PkDuATJ2dD5V70DNxNnr/bMFaOr+rYEUirP0P67uOW4jZlqj/GPjD/Y+lJZ9G2vexmakb0xyfeaXKLFHCaiDVZTf9f9OyktxTIGppFysCplBPiC3Rmx+3yz16un4nf+WWi+Yc7TA8BX/Sow0Ca8XRFplGFuoqQYVnzQ4X3zwUOcB4p16baVfAN/4pc04LAXK09wwx7sg4E1/msyvrlIRn6C4hPp3wpQNK3J4SXutmnDlnMHvj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "e6yt8Hf9QkK7u0uFAeMxZOQWGBmSieE2+1ycGqsZ79E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mhwn/g/6jF/lswsqTAMZDO2vjoXBx6+lKo3xss/IsQ5kj8x1kXFgA67aX3HWz0NUTfYSCgIQOy4ms7TUqR94Tmsw4YRYOmE3d1zaBdi9eKTgtJxyeuNGIXtzGay6zKCRKh7zFZmVWrf0w9tkCRrA+aBKoApiU4ih2QaKhw+/vxCdnC6fkse6CgeUYQ40GWa1TuWs7sC98JNTUL0QcNfQItabOqBOpiq7Jg2TUbf7gtUCxyiqH38yU63AT3lBxMSCsMHn1UgG8WXtfV5UpJk4VaUUvvlSWNiudnnfhaohzqNc5T3nD13f0f6U/3ALzJL6UahiNrTYVZ3IOlxLxVjDZCPx56hdzRsW6V/+q8c0I42GG0P47sR0/10wdL4GliIOAmLK/8YoYZJ0owaeCSJegWtl0/hWKj//", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "e7dDi/gDnD1k5m948FQiBQfKdnj4Mly3Fh88GrZHHpc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KyAkQo/Fo0upwMMvVYc4CRG6WF8RRblvOTGe9m9GzboRKqBAHCnooVrV2ykEefgCja44hqiwLg1KzBit+vfNsr3+7RlBBvHOaYtxQrMQH6SOKd0jCLTqwo8Wr7WDOVcZzA+YEDAVgTGQH0V7oZ4n3UMm2aLa/tOrx7DrZw2wlREc0rZ0ugSFl+mFMtEHBuFffgyzPuJL+5qi3tC5k4kYW1C/yrnaIB1jOIBviy3KBdcoeX92+Gr3Lyl77+R8X3McbVnn+eFMYC8swZIo80Uh0MBU9bdbJQM/uf0UzQh3XjII9Sb3hUh04piDyRssNR/2S5pkqRc4F6Bx0biQUzDH0WxAAEfkHpYn6g08TGScKntJMWBt2bgMPmuicqmzO3+c7Ffvv18L8VbBw8l/9/AmgF+fQcT9+Thj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "e8LczucRZNnV0mSRVjekXaw44aXqhefsC54MHf+zRGM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y7cNGHqkUwLeUIlEAlDEb5DgYrc7kDfyCosHF/Lt3+Q7oNAlNodYriRx1Yynsj/ORpGpFnTh5kAzqh4Zh2tZKKsXV0ZCH/5dknZoNsoudLukzt8r0JjAGJLZnCPG70ZDHVTPw3OZ+XkmIVeCaRTVB0mJbJia8Mlxrc1OlJSSMuwfI2HDC/1PbVmak5FXkdK0HdlrVCS6v6CaUMt93ALMqFNQus3Qed19MjHDee6BiBs1kLpZRsp4wUazlolgQmqd10Iz5g88NdqbGDFx9ztgmJ55k8Tpqwy6KUMh/13mFfGGtjuy3L1KsLUgXCRUojvLtgTamQv+sDcSu02hIcQQBiHPGq3coEFuVSsaZC5OVWWmGlMKHuwv4qzI9aUshz2KEqJJ9oPtJqf6xyMQlBBZJ9pH/5c85iRZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eAQjmDDMish6+BgQLJ4znHJXhXMU1njGzc+7UYsVQCA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "h4tC+D/MfIUgjhWZWppc69fZp0UCRCtaZ/ZggptZQcvxTIH7Cqp68dp6fTBhDMn4PoixP2W5u81WHMoeeS+neJwOaJ7oZn4ObT1z/Zb3Kp7wa0muko1VOiMFfHT+joiwQyVMI6woqbGQfuPUhAaMGtIu+LTxvZU0CQuID3lFkuem77NIDFoR/63SggnpqRNd3p9dSgybxJlo51vr88OxFXHjl5pbJpyRoTGeqIcQm/iv1+ahUlU0KmQxc0J8lg5GQgoFrf4zITJ5a8bNDZgCO5o0F00BzYZUISLJOW7twpHU8Eo/rSuH5DwWphvVatreoaLQkCCw15497KbQWg1bPQo+ohq9iBJCbva51lu+Y4dqZQZnQnzYHE5+oIiPkbjRkNPVlXt0lpYn6YDZ9WFTthd5W8ODAxV0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eAqFNfxXMbvIveLT+1sglLjuJvuDK1TM1aHzLjF+ihI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d7YwQ5pFEEmRI8vZR8Tcpi6jQ3StCLx+wnZMpbOvRtGzoO3RMi3fhnbZENJ60JH+Rs6aF9dqurdpstiVetitXtFYAMSmtmEaE3gQkcNkmGzEhYhzrrNYwENXvwQdODv44g3SONqLsomFqMVXBL9ql38h0VC/FfuGIDbg9cnPWPnMxvSMYQtZt1uD86r2ki32VbK5ItkuxFA3K5idO4HQrran59rPQ3vP0vMgA6OV0B8EJPA5/KwwjhAmpzfJkV4Jq+WHWud3i4GrgBYnkrUsfa9zLLBo6QrRYV0SQ7Y4JwIMCVAhHLOMZQ2dur/IY5NoZ4Jy7v8XBX4NlGQ+icZJcVbiTJkr4b+TUZhMjkzFx2xsUVj4HkM6IWLL77jp5ek3J515YPuSkH5VrMZ1/ufERkH88oi8eKdK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eAwl+eBu4QSaEuJ+IlMn6bnUNDNHGBom8Iik7caa/kA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TOTSMl9MdiQatpLfopwDzsf6KDGEmXUxP58BFH4j2+Yu1BXzkplTm4lksCpY3zYd4gDZUpYyjyMpghQdzBILQH67XJF4gwNngTnIBffsAxJ/e8YcBvefKy4LRcezLVVnRSJndpe+ZbLtpwGROKbURu2jsLh/I2u3gtpvHpaZnPZ6DAyyq0wpPON3Q86mgcF6KWsvAK5NraAW4IXVreUp0ywBPA30WodZp0mGvNu0nfNNROXwpNcqxuGCJEUqguZ2R1zRBKcHkfhPuo/0uWtVG1wx69fbp3b5JKhI1L++UEGsnFOiyha6m4hsDcyscxJR6a76V2wnBPudA3Ve89n/WEbPKyTknPB1goiiVzFxHdz0ZU2nlp4WKoihTHAVCQ4KP8uKwljUPiLqgtklc8qAr3gjHGGhAcGg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eCdYdjei5cJ048299zBoAvFTl4JMTinxjfMqvYvk3GQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RK/xulUQadNYY3/RRSZPq3xeA4+7YL7gCK1xmUQZzonzFTB/pLlTMPJMtdDlPVf18bDaHoDND7KOty8PweZrscZHM/0vYTbeFTrhnizMxL58sJlFfhDAjU86QDosOv1lnha/4W5Hnd7p3vvrqk9kLgrtVKaT7rnbvY/X8UdFOJ7+zBENYiwlYY1oZ+7+LTcqWuBP3u/26/1AdS388TAonDHhayUrF0rOHZtJEONqdYzT0DfpD71+hCGflXtnDKgE0KgQe2DIcXJ1RctrfjMmtOPPQeEZUbLdB1MomKeE4wgUly8gzmsb+i1J41xTj2MXJK65cQIde9TCn/7lyQof2HDYOuIkKHFwrTBfsO9ObBylZOmVxCwkSwSGR/cU9+vqxdNKJkgnfjCouUrsvFZxZF/sM69Uw0dv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eCp8YGdmZimLhLlO2hrnr5zPskq/KzdTqHvmgv44KCk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gxtZzPpAHn21GlKh2bEnEfZ0fUHrmS5d1jOflTVPegN7qVl5YWB7xnn/OEonMHpFGq85H+80Q0cGw6OE53K2U1joTRGYH4lpPW+fqIruLvl3UPJ1E758fyvPXO0IlpjgsqLEt0IHhh+W1JK9ZopW59jRb3nyOmcmYbYbPN7Y8JLmNG9vT1KubNXPB+GG75gMrAEkrT2Pdx0e+0nVOzMhq9DbcCujYriGDZttiLVqScpqhnblFWqy7ZKijMzCoLK/M0sZ7Qke6kHPgla6E/8/9/v/wiSMcBU8fO8dEqgn9i1x8LJUvevAEPU78pm3Awle4Fzv4VmxJD6i60RaCuH+sBts8xvj7CpNtgc+szGx6akb/0a2vewK28qdZ6X/FfrM2WFe0L0HhiJxFmmrI1fHdrUUoCKSj2om", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eD4Wav4Lv7ESkQt0LGgvHBgwLlmpAs65poERpsxNNQI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WJhIYKuzYeTTUtVN0nEPXI4aax5Hxia/I93IZoLdXM585SKzyvXNSKIuiDsppOgTkrG2pc/j0htIZBPLXbZhgGDgpEviRUHubPpJwA4A98AO1wHUmdz5FDQET6jDCAIrHu1mq46YeqJmd9yydBiF8zeCCAwEijdpms88DnHQV7SpgdZxVpghoRUoOK3904AKueKhOb4v928czxpxVY+o7F+jy0LYu7w32EcCqVJQ8CGlKAzl537Klj3mMQIQA1DzaK4NcxHEsevxowuSElO0v127F7yY1qyUToyvfwJ32U3aW+TX4xDIR9WT6pwyQON+L6V3wwx7xt0ETWBc4lKoIGmV8qwDwhsiwWkOIDwNo16yyUTM2kFPeNfGkGmt7BXE/oJbQ6B6WyBI2mlPj3YLSy+xwVJktYuH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eDQfJsfsHbMJazDHD7ACv7+SKqUU9d/HxqvO7xdDWro", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wbuZFgrEEqBprAGl0lC1m89Z/ftUPyCtPbCsPM9Pco8xK6Dg+nZZbJIIP5SodBGZHjftEoJ7YPSjhWjGL6J0eT5vAT6D2BC1MkQ7fLkjXDk3YloZes+cgBOooRn+/eTXz7Xp+e4DP2b+AHJr8k4S2UYRUk2YF/CfKBHhHwKu0VGOpbZQadKro0I/tvl+Ey8CStY7pfcW55T2v1Edd1URfB0iGL5gJyB5IkPE98paLymjBLVU48+HvomoyC7WsHloIX7OKjAtFkxG92hstNZ/I/ZK7NG+kYzUw/HgJQhVv2PgSAxQI63utIf2xNa8AApboebDlJOMouNMusu6bSUaXZG7btPmYmXFxYzWVj8yvdW7JWBuxN7mB4l8f1lkPppq/VaMl2EAev3xY+PyLdexcLTsTKEgiUut", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eDZT2ZY2aVIXtyiTlq4mkmgxYYiaM4Ng5yYsxlJgy44", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/+A9z+eLxWF/+IMHUlHA9PVg9abAyNav70otE/vM2c0Odhag/gvy3eYqHTXpqAvj0ZjEYKl8IcKKp1R4cctiYPvsy5sRgM8KlhJ0codwLrM/ASdbGYYnVVgqXZdBxT1uApiJwJKliJhbGL+D5F8gHGWVQ6EdPKlrwYdh/+eC77rzfOWGY9G0B6O1HPewL7tsxwblks+QzK3a2UqlPJqArXuh0fSLDqthuQKCzAqopLjzK3CwLfVEgMucTCxuSvIrfrX/8Jrh5gXGMHyK8urlcgmsqBqSYi9ZpLGpS/+AlrfeGsFim6/C3+1zA3W/oxyUm211wa4rxenHVUZKV9IPXw2rIyYE1s+MRGe8DtKgjByWaPTy5rwR0QVUObneaBdZcAoHlaltqZTSeV7TYaCNXvcK7axjyjAs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eDeEwFg/BH+uBdYxmH8XnC7/pPnEhUOZVyWwE/UjJhE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JLrJ+tOY6BBa3Fvy3oZENu5WJBhItRSArKKXUvdR+mSUJHS7J5Yat9XbaW4fp9kfWCnCcHQm+jSnUI8SWFbOQHLNgJJ2qVvYsQyRLE1bpuUOYpmK2bkYZv8eFx4Ffdd0EtBm8gH7omHHbHi5kvJrVZba7UMCNKLQFKYbAKY9b1uf8ZXG4EAMw0GH1PR1ys4kMlNb/tshiiZQaRPyFO+ne0A0MfcuFRlPozAzQ3upGt9MUsHxT2ofs3dHM6p/fKfZCKaTgQXsuMcr07B5hdSN17+ludXJZcvGVAGy5TugWD7Tf5EGA40x7bZamKGTCeZvzbmBFYx4JtSPOtgci0caNYVv4BiaKvR/hSqbyG7xqHrXGofZv2DgJREHlgEp05WbYkaJc7Vkp+GqEIABlWrGSNKSo6hsXOYL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eFAsTvYF+rFmc5MwhEznUS2Q1LYt8LX6F6ntFkUdMHY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XncIBbkmhlpuJ8BZmIt0KjsSzLHNGsE2QQUc0IIlfW4R/XjFdm+sx24zngjsTl2U8M/q+jN22BwJ5K/ZaKx79OpZdgLG/GMsT+wMpYR0d6FWVUu9x/V/GnirHshsiqWZFib4UHWFmHGRZ9RPsnuEekkWsT0FHyr7zz76EzVPbrvMPTjNJN/iQ2YNCnxHbpKBALugG9z6iEeQcbAL7O/dAx71IaqEWwET+rLRJPEKW/FhiK1STlCFSgNJPaBuHT50YBVsteO8X4HedZ57PCRjm6vLWviQbnELS14pCGhEiRwDzw+p/9V9SVg9m1wD6N5eZRCH93hP9PlZANbdSR34XYe8cn1T+9e62NdsUWnnOXrg4PSxWKn8wA775Rmi84++Dy2cwsR+K1ra7b1cgXAmjcQAsGmrAItA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eFwBK8amo+J7ayXJ0MxriMNcH4zRFpWSuzRSCc8Prbw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BkySSKpyigFcCD2DRExXj6YJ57xZm3mUiJV9gc+tUJ7OO/I1iEYECmLuCuZinGQhEKBzjDzI6An80mEf4oXeN9YaEWDLu5bmSx8tRSLERnclCWJtJnu9XSKl7rl2HoaP/DyAOzBuplbsqA0WhJOG7kTXR4xhJ/COlEiLUkmuHGa0vts+/KmI1x2ngbURMegZRWN6EkgOri+T+jtvbAkN31at67W3Pa0d1EeP74eHeAC/DsRysqnWJHvHqjEiQMB5EYjO/lca0D7QAi4CYxfQy15WyC9ynaGmkERgEgt1oUP/MeIw/7Q+znmROxQ+Y4Dxm1lcv618WYMOdAaOtmmQ3FL0Jkj0S5VGtoYr7WlhXp0hS86W8ys8FBD0erauRrLqeu/joKf1HdqcWK6h3zTMQAiGEok3sDGD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eGQTfP2WFcr6ClH8w+q8IXuJDNz6yjooHzP1jrAbPmo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dQz/LpPBbLelu9XUxNnG2pUD0NMV/JCsvxaPiCJztu1vJFrfcMBKyzritmhFU5WxRij//eHY/bHPmtfV5qdejAp7LQAyZuplyXsNihoQxoF1vMgrNocUlbu3Sp3ME8bVMUZKbWxsD/TT0TI1Pup5rs0OhFUgsSfSTCPRzPulZKN4zhWjoS8w6RvZCBnk7U4p1Ck5NiRdwjhp+6bXhb/wYq9dm10wc2mGR/SZbBfOK1i1KrU9o6kb/f+b28wbwivjdPoyazVBq5Ur0cBtF/D8T8wF8jio82VfWMU+OOY9s3O6KE++VJNgC5pYKdGleK/wHA02MrWVLygIh9BB7UT3IliEpHMS9rLDeWqRBlyV0sUHXEUMrKnnc46KbMgVTgZFfyG8cxO6aNwRHJlAiEaPrJ/7Xo4w4Hzb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eGgyE8PTOZcKbEZL9OIgivy3XocwZlY1wRNznwMKtCY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kOi9dhcmiP0kp3l4SdapCLoZAUxwwqdJrjTuqFneA/vME7YByHpoTiqxkJc2oNrE8fQtEno66vwoxXfsrki8FpD19YdPMn7Y+TFC9p9ee63OZx/pkgelPJA8asCN9I4CvLdKZ2gn0+fx/ccQ0iUSXW1lrb4+32X+Y3rqY5RA3OzaSMB/NaJAYiXSPQJfwiBJMXdBkjWoPHgDh7zxIs7c4nWVOT8fMBN9GFgCx89kC14gFH4GK+A5J3s7m/NBRR/dcRB0pMTvMgCRBrmyVxQLwccudGZeC2EtqXmrLs4JxNbaWYo93cDBcdKf1ZZ0cRhs2LsLG1wKQASVUdRXTWgI9y6CCAn0nFsBorjcodUlLsKnj9RCOMogbjqEoJ7sGR9P7zetF/xYXWmdInIeWlgprPY5ZhntMLKU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eIFFl4IKLNNljuw85pDLYAjHa4K2qrdFDXu7PIqN/Gs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nNCHGhDveSCJF+K2LwZwgp1p+KwWIqY5+/6R7k4Ylv244u/mxMb1FXtAt3F10LFFie48idhAfUN1z41x1UrLcdO1z73bVoI3HoppKcNGqiFO+vYlvvenzea+u7F2Ys0H5otmEy1X0Ucb1H9Q+hLT33ggb4JmvDdcN6dNTDexE7isUcQV21xWiVBU69Qbli3CUDqq3bQ22ceFntbu/R+rnTEkng5nMt5VhgCYdYCZjHhM+xr2L53N5ji9Xmue9OpDejMb5Oo75aOaHeefxMKia6Mic3gxvvWVE8PzcJUUtPOqQV1Jty+uJ5VdOLNyAsAJ6LIJh1bPSAclGkbCPeNDKf1ZkssKTMWsxaOVAlMd6SQX26HOPAR3qWt2sCY4LKMqTzi7UQgNe0f55LmTx8mjBw8Zo4F1vWaL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eJHdqagZKUgMpavr6D2JMirIOlQWVHv9GUuE5cWE3Xw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5rC1LH+e+ozzC3jxy/GAbVJ/JyVpCMm8QcmBANPypzL+nas5BQw9A12h6KaWBWJBtAxRhYwfIXJa5CyezY2ffDggbPQnlfzvdodrS/44ayXqokxG7zkaSbVHa+0aMfqEOpHBelfkt91SVN2riVUQw2BjRp0Fno6LyRa2MlPIksIFnpWPk4z9A++/mCIYlusAdKrzo9WyrG+6zSQe75McFuBTZDLzXfxNfpWLwVSm5EqzY01IonB96FLx2h2sDJpXRaI8tVp3hJPooo6+JHm95Ny76et1v9/3eu1P0JDy8q+OOTLzpHXMXMWVSB3i2nRLUmBvzC0EQdmPT9gGFphT1onesqMCmJQTqHTUUA4kVGJ7UiAwBA5YQAfRl2awNfb8Gmir+mhT9uptYdtMATyRNtOplLwEn2fk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eJmi1Etfcmi9BSVese0sTnI+zAJzp6TlMqSmIxBRmY8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FBa9/eZvoxeary5x4tZmfmQjKDUIcyoVUdEiAWDqwMo1lTBynhht3JE0LOwlBfWGM7NtFOUKZXulZjdXIWo2tw2nomPQ49uH64ouFLDP5IqzHbOQAtpHQGfF0yVC/xaBLfE9+ciESt5wxFaaEI5oOKUGcioANmuPEp5c6CbcYJQaf80yVqE2IKATaV+KFBlCAeEdN+HQoUCwF2rQc9sytBaIC9UyjV2W0XHhB5JqVOfXykapkMFsQIJjzUQjj1/jIdclZjRPVPkqRpk9YcXrU0k2p11kTinixKQS9x6UxMLQpL8JTk3QP4mSJquhbLc/8iv2tUdZjTv87Py667BDxl22TiG3caWiU6ihmJRiXhCEWUtyFm/YZ1xLWBf+IpqmgLmbFHordtabT6FcIMQNL4SScLFeT204", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eJvk47Bf9VKZ3KlnL3TJvSELusbobOsEd4aiXA1vZhs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mdsm4KA/s/pkpvnZUa1AkqY4uvXWEtI+bwzzveath+6lGietcuAqC0sv9M3qzu0Cgo4+VWXyMDcUfJw2oxnga1vGFQbGprHtjRC2ZwEMFH5coQAEGZIDsr/tda63i1cbl1eD5nOvbnvqIq/OHz1SiF8JPXowWHRwXgIIDo7LeUl7rJ/gdM5MTdcWKSKQkTMKKvKOwE/hkL9nWAVtRjxXlgp92jVZv3+2GeylhXI34mqgPVtQXvD0Nmhnd6MhblMqf8hl8mpOfNcT84iDNz2fwL29fx9mmSrGPvOBl2KLTSkGNme0UED8vH+vDIKEqJ9Ad5IVVDfOTBj8lNb0igAxMnVWtsEsbWXDOz4r1IPBN40O9xEEEEk0q9Z4PGX7iuq5o6HF+8+aAIiTxNwzQqjPWChVmAMmyBj6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eL28z+cxOSzMXlTCQ14FF6tG7ZLSdstOZzCfIgEddWs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9QlOzIxiDYd+jHFB539Nl176pKasXGBtyr7SHcRNiY6+t2Bx/Gaa3kb4aD+NW+zj40OkoeG0LCfPJP/M3bcEK/C7HBa3nEq+e+iY9P9IUN44gXAV5ShYXbZxOd7ae7Dmd0KhYQWTBE8Q1tmq6BfQG0H0XzcxvI5Sv5YDiS8KsD41f3hpZ3Qodk/FRHsh2rYEllyIaAf6Lb8xHq/9L6pOaynLSfWvVT8BL1qUkjNn6+zRCqhBkmRix5sug8hEXfgYpYHDDOwo1U62m0lAys6G29+QKlvcjNgySy3ft4iGwlWJABp8vngNADsy5aSTDXeLm+7hWnA8itcWeWM35e0jTUCDbYb6ByTjGUPC4r4v2o8Q7At9u7BOs9By2psDLZCx80e00YFx7mxEX3dVZWh8g4w6eQyOFfJh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eMH9AYBBhir5DI1R2ELvSc/1VHEMGJGyBhVBdXLvqVI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LAALjjhkcKY+AT65mDh9N6XV+rsRRtXWD+NUQtB6A2jgmuj7J+YLWAxE9dxvC64hrFoKic48n8Pq1VGDXNtr8eDRG2sPF+BdrVDJWflA4yM6gEoymKUSzU4diOPjM30slVZiu++AWG5ZpVTL8KYiWEGgZ0CoYrwGMc8FMQawgy3x7w9Fth0uHah5ZAqMJrxevePFAJ7B9C2REXRV1urNUEfprcKXZmj6SyKRhp9+FDhnQG+VRCMfsge1s0w7WJUMPnr0pVjmLQzjHLCgUSBlCloEMmPtgTnlVAKZY/j9F/UljXTMF+tmVJvGjQ2lHTVoRrTU1cH8Kdo586tpG53XFmkaR8drZmMm2qMZnfjb6z3L+zlgc4NOiWPLTMaEbPTNyxN5hubKLbsgpK+tDvpypW6IJtZc8D/f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eNEFWX0azGJSf2PHDAuT4VLQyIFek5YXGAqKYgqxiRM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N3KUpBpXs5b6f28uhojP+r0sdl8DlP5c7iy5DlTvqRoFGiWaxVj3tbWWgy/w7Jiudo2Nabd71gT5ztaMAsao6du3jFcujHQcIlUUi5tHrYqjkArWy4JGpKizLHyksx6ofXXTRQ8GIruuKc533aaIJcAs0T1vXmYuUjkkwUbqbo3apJaQCmq5Hmu5hxsB4htoeCaulUNh5zZOwKOnV/68rHVX9dDSAsIv901o+KpInsZicRVjhDS1Hut+678wseQwRAh4XpHDQ4tdLEQ/sNda8/bUk7yx9165kgtkT49ANKg4w29MGe/0ypUUw8KnswTk648xgRquB//GYmUqu9FOR+Xw2UtvMIs0dZTx/ai/6dT+bPISVO6ssqs1d3tEToI4p/G9moEKBktDG952QQVvHPKD7b9WpNLJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eNsIWpKnFrtFQoXTJAywsrUWTJjeQdDX0yTuvE1cVTI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PPAgFsUb17fTNvETFmgHL/Yro1pP3GeR02ANA659xguy3J1p9oRqR9afjwOsCna7wq/ZzdA80O+tQNEWVU2snUDyhgAVC6NETkxYidZjokJYWs8iyri57ODrhl4MNQdDK65w/fM0Q1oufjZOpfMB0vyiZcq4LiQxGW6YO4V97wPu7T2u03YXgeXXkpoiABM5xzsRcaKYYPfpeQxM8LuvXTod+04dpHAAHEpHrqsQP7PDENpdOwuJbBhlpwWHgeABbZ212m/ww8nocPr6g6nM/TP/5keLh6hcYuSRoQSMRUxfcUyFNpImBp9Tbxk7sRiDkJHbR4ahgOGhrd4NaTzSkiSYjrlk1gBBpczpcyvvBkt6IL2a/cvu5Zagux8K/4T018/AaEHoi5l3EmuMUzCEU60cTYskLmIs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eO05cmvGYO6Aosa+sZM6TpCo29xm7IDiY56/DIFeNdA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f4XBalmI7svEj/TTWte8VWL7U+7U+XG5jk4oyK2uBMbPt2BH/ali1r1lasYMwTNkqoYrbzeVyAN975cnKIhbSmuWHl6xWJQvL5AVJZYigcmF3K5K8lZXKQnZm7md0Ah9TAL2fr/de3wBX9zH5A4vamyXGok2Xsork3VIE2NwOMttNIXA9hBVG/8dDYoRcehuMr/QgjJmDFCiinxlahQ+qpCH6GWmrG3LmR9xbZUwKR3SpbVh2cFMrhpwT6L4K0rJpPqzUvfbVhSkxJvEFWSENF6xcc65etVAAiTKV1CxQSidV93kas1lKYDy1CDLXQFMQnsfNQXs+yZouui8Ay7DgG6YJRzRWbO7FtnuF+tUBqeRw62Mo5G3KpnhwWgKvVGMrw3nb9v5LCVgLpPoFbVZZsdQbuMbUqSz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ePLiXhVfDwCjgyV9rIL6LsdrKjbhF0zCP07k5K7NQWM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HVyAXBJiOUxIzZ49V1XAEgTKDE7lFyfnl3W8mSuSrzhRfVqqyZP+DNZZo7aiDt2XbVmwcVp+gS53CstSLLw3n2w8yoP28ld0Ru4XRKOgsDQvaR3IVRnxzrY8CX3tUvx1EgQwNOztFkzhTaAVH8Pqun5IDhATsBUCgK/wPMWgW6Ty1oQ/N1Nq7BE4xgksAFeyuPRAS+5N4YRaABH1pS00AmAD8YKbLPJbHdbT1fmsFotzEx5AjzbbPKF9tD/PIjHS6207V6bx9R3krVEJnGh7yBiASME6pavJkd2ut9Fhh+EktVo6VbumwX0lcweh1Jnn+Rg+RyKyhAN5IV4Sm9xphoD9IJBv7/vl3riV9vZHiZkjO1kZyyYS2xSVAnbB791md3Mg8UPsgvI+cZfsr01uAtECW+vI6Kcc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eQup9kzLbkqZC75oPG6PHZaSb0722taGVepZwEAqhLY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QwKWnZa92BFCeYPrg5WmrNIlQRYpz/KqUQe6zRNHwGSRZ0deeQyEKItumS0iezwxeoEx5k7DnFv1c6S1kiiiCBOGyrFwNNgbhIhCJmTW3rzw248Y8/xibMhg0iZY/Lq7ZB+9j++TiMOhLUFAm0p4sZf5EtaJm6AOWYOkPB7QMlpwVt863xV3hJms/DiNCCeIZ1KgF9VpkpP/okBONyenTsRFd36xH8We4ITkYjO7zTYR92QWWMe0YO7/rywrG/ZzwN/TM86mC/Hrk1JK3z0iB1sI6S/MgpkrbBfx0W/aps1FATXjok2WIDWPXIEZByS4gMiulJMGM0WanFFkMQ5e6rTbnSi1Jz2eN0gtI1iL0PAzgIDdNO2HefWk7pSpE9ErFNf/+pa6nP5OtzzuRw1GUL0wBAQn9EHX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eRPLHO//wKotIL77MZSfHZSLfV8CGBZ5XvFbFZeHyRE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CjjASEm5d/huShrGZ7XEGFGA8DQ8a1y06CCWaGEU8qQGOpBjlJx936I0HxH/PjLm05jm80QoqFSmWRVpPVMJ572+FBrDc0FeOZKGisaIaP5noeqfeh/GWub9wPoclAr/mJePKSI0HVV1dYz2s1nTeW24LmcIC53A3nYeLGaReH1YbCl6/OsCWRdBcCuP68AArP5CyH9Rq/J+D6HKTdAI/HJQ2N+LEECokD+fqYTqBIaPY8FInxGtpfjw6b7+YTODX5wr+tZZBtw83ihdErJ9sLA4p7PuWqc/kwiaaJeWWJkVRxCBfIuQxwWGzL2/CTHUS6KQee4PXpUrNTQpTPyVrzlls51OaRJhex74VWRqPbxfbBP4lYSEHklETLiU97acLgkjD38j836JE+rx2Mg0WyxaNV2XvIq2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eT4H0x4pltDo8QYVRpJXC296kPpUQpYO/aXyzsfbMTw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HDsCrTKQibPX1TGwmRYgj5C3PkAdhOdqdl8YbuCs9PgAA5SaS6Aj/METNRN/LQRE5avR9vNtEJZG2Hupa1s9REpE0dsHhzoz3N93sJA7yA/NJHQzC5fPMaY8q6n3Agw/fXNTafeMuZObo3sKcNunYQA9S/ZEFw4puGFomzyrbJcX//QJj12KQnadhLDFk9q7LHw3aNzY4+hghOn/FVmDGEpOQS+FVHOd7KCxD5zt2lIA73vvIJRZiQyILZwcrP5WCCHyAHW9JgDCewx051s0JMFCKVDmJ2n1BYHDhtU4HqGXvtZhMMydxOukUmedDtV/NvBNNRRNm8I7aRC88DO1DnoGV+0wt7zR5FwvcvDkNBNGiFHrwB9ieRU85AW63JdFdaNcKRJAdBjIIQNvsLW4P+TZuTdDkaWV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eTDbYRZTW2pAXFgVxWN2QpC1LLQk0cLIQrjoUIA3s6c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+pHmTCyJJGqd32NEvpW0adgYZn+v+BzPr8Rg4LR0mpTL0irut4xDEySR4rks99ZkxixrbsEql1GHqO/M0O0+fat2295Rb7qdMqmLwsABCMgdAks3lkrP6D90ba7K1AwJQ6SV+4CQlKWwlMtuvMV5rm8ftTDhI5PXfUjeMm4iUEuNp1Ews4lbWiOKy6izB1mMu/8ST5q0s/x6D6gBaJEXByb/GDm4frz3c0g07Kju72It1UdXMJKEM2PnrW8BWnu9bhM1r420O2aMdJGl7ER+gpVIvBavmEZpGFJmrH0AMy8tgVEovV2RQVUWauBW/B8YC2hob4pP75+EkqVah0Hp08ys9FotiJ24zpem+hvWSvPaTERujn7k7eDqzax1C88z8F4PW2dgdmYDG5VxXKtIIX44RC4ailMS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eUFAbkrYOWSbrgRC00pS0DMm+ZmNVUsfLI4SE/64K6U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yLADm3Y5XeY9PhA5i11JrxpvzMGI473VZGg7Xww8TBoYJYiQA2cmaabikqAKwktRvq9kIBOuyLzw2z4R6G+V1qPbXZf+HAr7DuknrV0Io3w5qRH0P5T3MkihrmYFUydWKFhz+a/YwEc7RuBRB5GowKPBBfK0jbYt1LlNvB8on2YDbYwipIkBYOHf3/7FtIkYXXldkp4v53vXg2+44AnkDrLz4v0nRHbHl1b4oINHnwGGOq/xtYnj+KfYmLkOhyhrVSCk1ZFd0qN7Qpk8ini/VzWjuvTZpw2v/1BCmsGRMascABruqzBsx8pEaRv3N09bjmOiBW7eou1xEStgfHZEIID2pNBF1FAWTe3OV7a/ckypUO4znx2avvy01VBVJaofSCB8sa9GHZq5bt0nWxjm+LK6nMk/ndbr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eWfPk5JnpKkgBLumUs0xg2hOiTadS8/kewQ9bzHAaWM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jhYYopf1bcY5UnhxZxgM3xh+BOeZ5RBUprmTHPwEstZ1OPp0a/mCeMgWi+813BwaTuIkS4R4tdaDifstjSw5kLv6BE4iH6NQOOkqHiZpejy5ZK8USEpyN+669VMjVERqutzYHvTp87AiOgYxrZ3wnwcZL2bi+pt/iWWS/GIMU4thf+/t/ZdRE8sdWrihBjGlywUEzeszggmH8ryzFVWgeSBRMWg+kA0rUXkAwe11DAyaUNsVNlN2JaiS7c+dXi7+40paG+yHyfDHJPmAN5V7VPuql03yimd7tKm5+hZzyyd7JGTAY+BIQN+JqLxwOp3gRkeSvXmSpvYaexDaOQhLSmb4jqhJbClN/lXIErRL6schx9cvBx/Mjt5Y9//+hdidRZCaK3lrutymfC8/T3N0Zzak28hWFWZ/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eXBMi2JBBArqcV79vawwobp60PjmAsSi32JtE5zzMoY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SrRohXrC4oa6ycstqhhp4uobAEz4EgnmQSJ+GxBeKG4+IP9NvE9exWbTZIBEnvxjQVHblXd8/YaJqvhsfCeOsXHQeAbJynO/K+0JgKAVd7cbhoek8raryHGOMWhDF9rU5SkVTBGY6+oUH0T5PuMm1cjEnNZUtbC4PB8IcZzMcj3yDwULbnvkBmRKjfQHWRp3WL921z8kjyqNAtPCGa55dz/FoADS5luGgUDpKkjJBow7jvpRMyd488eNrajPunp0B+oiH5in72cbZGtQii2Z96RQXKhLn+3QzJraT01yeBQqjyY8fhcwxeEsmD7N1DubIg/i1cgrHCazpWDKapeS5oUhJe7RgxdFafpkZ+bgaP16ItL5shXABt0gmyM74PNJYarprrCH5+MNyZ3ZkuSmiJffQT7/rKJG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eZz2WDquGliAVmMbYsB1A//WI2mVwQLBopFnGbDAtig", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QHTX2ftE6DDhfv6SJq9NfvKZ/AQtNefV0mht6Kx+nmM1HO0kNtnF5FcxYxqhqWMLJPTXTH18ER80VBSyKqjm1szNTslvk6BNQ/q6eJv9x5itEni69uyZtbcZZD1N6D/nIb6MKUQOdy9V9b5F91s5BARyAzjpB866z/oIhskvrGUZPejSV411ef5fcD84g2X6HsuTUN2lL+q4nhOlu7Ui2FEUkmZrou8pquz9yT4rTU4nGQI9MSreUDYmhiCZJHZjyjzf8uzZoOsIFoWOTlaREEnMGwCUFTGxnUbrPH6dDq+tj8BO7VxN1WTMri4NjMieNJ/Yku64nJtNmZwbCCcA6EbXT2GhqCIczfQRRkg98e9iv5tKP1zz2vm4tbmY1ELQRQT6L5jWQIC3TXche+SoW2IxCWEpWaaK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eb2RgLTwPROepopWE2SVm7+DQ3Vs9AOXo9s+KJw5stE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "51P5b37aeu85VKCahBSFjI6sYP1EbQDRFlKs/V43Aa9fCgnuv0/R8+izGisnZiAy6j6wzgEObHOBzbLrzazW0z+2r8UiHpHbk1+WKQuajuOr552S3cL3l0jABQqOxqx0vyvvNfp8Qq7YLUvhceYsF3lZF6l6QPggPBBEky7disRbKJX4sUDzktvSxoxbPJKKQChua9Hh44WwocYErinf4ug4eoy1ckWs6ziSqzlEMmqdBk8uQ8CpIQZPGBDiwV/+9wEfRDeuZ3r5IZV++leHghpY5PZZ6FHiqHh3re/exGhgivpSavtSWLNwHs6b5JErT3c+IFD201bypyT7eXLNjWdnxbr/Woa6TlrODyS9vKdRN25Ot5wxxEsjU2QlVQ/JPbCzKxckIGBIjAx2RjdFiQ3dg9B6+uWi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ebx5Cjm0E7t0N5DjnKi4jw0KrihEFukip8xql9ZDMgE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S9E2guoTTgLGLzN9UzrTVuxtcFtlWHEh3sD12dUpDeoEZZWUeLpxzmV5jw5SWwn2QWjrG7nEjY2v4+N0AZeTgjQFUasWuw7pIUYGxzzLnwYjadB2gxSPpff9ah4/XAan5bTlPDJh+qvqHCAGOcMKwmUZTgjDT8MkDtYkab4pFBQS8SHg7uo8H47Tp9hC0Fs3DZPBrH0AilCSsfdoeZjfbv8ePMdy2QbqanpQx5cA9OQr2Y+i+MSUMKE+s3eHa2F+IgYyS8Q/R3FqOmgNN7ewsrsztB2EozA4r1bZ0jsTa5eZuhWyYQGt5IDvZVm0kYcvsYVm7gsLfUXNq3Ctt/XR3G65+SO++Gq8ekh7urmKes4r9oC77xGy2i0EF/OkPl9SkkfiKgsPEy6ADzmEDIe6zwE1taYiNTNd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ec28YfXyN+XrBHVA30U90DfzSAZcmpnz0sOpCwZpRnM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "laz5dYB+rp/55K1q1coq8O50OwHBhfeL5ykZixXBPlG4392Vc2FzspmSsqgeWOiRJ/Gxpqx05THZfZE88ZeMwHLTD1wyvpNBWyKrQadjp3JkI6hyGyXQ84J1uUptNosaqDF2vAht+FIjDs4PFDJvof/9KdDQLFHKcxjup/GW9jnl/R+tEZvWIDrdXdBr9t+JPMSOALreckkxJRrZujTKMSvh6Qrz+WvXC+tUYgqb38V+DW02kEqhrwCiuq9mXDZ2qlF5OoVLonC4vkHWLDQf4E61Qh8wcIe20oV+S/GmB+iW3VCQxAzMdSfOSoNtIXqbu+nbjPxuz0clKsq+dzaxon7Rw63ylX0PlUjpVl6ogrz5U0nXXnxTEoRudRSzoYVrxy7jiJLwSTK8w7IFZtity/udHHOjIA7x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ecG3ECimIqcPMEMYYcgA/9wsHeG1GrmAV8biLD66mlo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hfA4HuX/blxT7Xv8ytPgVh7TviaUKnMM//gyDgiv2wtKLdm68H2k+RzzuVjdKxYqLDX2FkMyi6BASAabpyzgi5aMmnO9ObzH5pIicHwJgfwQ4MY7/4qnfzX5ozMKzgG8wMY9hzhJdluIQa3EUVT6zI6LpSkW/imwmFrmM5H+LdITPQb09wv/OIauOcOK4qrl8gc0zcnBv3padf+WHb363GtSHixpaDYatjDvv9wvFDnWseGcZBdaH/IWTWl/7bpPWpWZHG7lBwLMSX3E/+N7S3Ne6kFys2al4URs9wXFa+OYLI0EwHspTRPw9sJoWiexonCmqmxtTxfRyWcT2NRpv7/enXccW+md9wR+YWPBD5i9WRmbdo2rKucUN+DfibBPYHjVA0DXMLoXThpPgANV/kxYYs/4FEnA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ecJRUx/cJcg9Mw6XwJZLB9a2SEkWfjPvQSEXcUJByQA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6aZya7AaqrcXhld9HO/4HqglldhzEkDMZwHVJAYDMZNLPXhG/hYckcIztfoJKqXKdxVnpa3qQAAsYm3uiYeuaPb5Trx0ea/TKx+3OlazTtHNPqBnX8FvLqQSHEXqnYFHLZYeXnVDVj27Vj9uiy3xjppgC9CcnxStkvOydoGTH6FjSFDiJUIkUE1vwAyyasWyGsa6z8Wc1XSXWtvlYGFAZPLglMX3LsZ98uCtK2EE4oKQrvmINSiE4sVPdL4Gd57f5X7NvW2Jc4rx3eocufWa4Felf4cMlrp2MbPTvJblxR8Ln93n+rAUGo5/ZOLgqnJODME8sEw8SLhihvmJogq4JeffVsWkSHLAwLcAOSe9zdF4gggWDF/PjL/fphbWPtvmOvVWEJHp53FY7ZdguFJr7EBb2jkvxjot", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ecYJa+OVv3teLmL8vXXOdZQqdYl5y6H7GixrBD9kJhE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "I2GLf4J7+wAiDc1rp6oiy0AzYIqx2wRAHj3x3olyJijbKgVGMIR5Bpyx2HuCrhk7zo1XPTLbAsHJeHKwAR7NM1ycO8hBjAJkyuKYkWz3bmWDxPTijQxXuO+XMssdxQXa5QxqfZjeyQKlK6kC7uBGvuLDzhbWCbdoX0dBTVTc/FZOYMhLAgVGttIhJG8+V6T7lwFT6vc7I5mSlg241DE3xRwosmSi9Wjx3AZEFs6zQDH4+WJcPko87fpG19pN8YDjxfpY2i7Gp++m93FFhALNGPxRPfWKd1NmidZ18jLar736KhV+abL4tL+J45HNeUODlVarbM0xh24n/ncm9X+t4SZ8NqudQzpL8hMOVYg/SJhM1E2XLWudMN73BzgzEjX5STEGX+fems6ow7kNj6y66XakjG0nvWvo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ednqn4bbcfnb26uel2Uk8iTPE7u9uv/FKK+A4vGGEl8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rdgcawGvgHWpzjZlQOdmy/WFTIP/WXI5ZJLoQnfUHg8HnE6veDVVmyTV8EthAmem/ysKIXZ+J/xw0SU76oHcmyWxJ9Ibbfw+6KKikq+E3MbladkwTNsCw2AA1OnC4abz0COMPWaLhNzQTlfi6186ioc/59RLLXWiVNo+mJfCl6JuQgFwh1KG+SXlhWh08ZGfxDxZYTPBCw0RTMfVecMbWFX/z/qotdmbFLnoEkEEReamXsEoj5xLksp4gfgb9PlwWh5kSIUU8M8mzJVewctqwr+TBrcuwhtRUBRnhSeWYdClVMKh7xvwVoA2CvIB5+Xh9tJqm6juIY44Q7p9ISxYJkZFMzooVnY4Y4/dHx/LaSSFSLq3RdneV9mDT7VeMrprz3y0rOj8za1S6nkviKPIRPxqsS8QM00n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ehIniCEkJ13BzhmUiW0SVAyCSSJ3WE/wTtFs1nV2pKo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hsdi6Ws0WT+I7nJWcDYu0LlsXfEGruM+KtdIuI92Z8zdUutTTIDGQufCY5sBEucYAGFmvhTtlvGkfajGPwjFgDDLjIA635wKXDqLQuxRa6YGv+0xg3KReHMxfIsj2jhPxs2YtlbkgLNJWeUizL8vbaXKgQ2dj/XzzrTCNII3rS2MU3ckdfbQeghZrxO5xCU8M/qIx4sczOGLivnrsSbZ5nu0CKzZur+jqN5NIG9hQcaH1UHvWbWZkSU6dUI7vx646JJWPNeJqg9ytvZ511w4tBkZTTAhSTP4Kp6ct0GZllaPcYFZzsOPo9svqB5uipG047WS4PDWZClbz16YLXa8vFdwV/wxE4YhOh3LXZeFnepqdvPu4QhsENiVIH/cvHXjr8i/eCxhlRHQZ6RvLMV5VtYA1oLaFRT7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ejHkNjR6NhoAaD5736DLf62+B/bYczEZLEmAgGgngEA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "McMKBsfPj/1C3iPHp43WuksyYl3jiReJkCNQSCEaqtwdRlN/xrMayUK6T94f0Mr0bIM5zUTl3C+ZJSQsqn33KZ2gv9QQ6OrPb24i0A9XLGKzDhibLgf3DHDjIpb/CKWM/y5Cf03mv4ObCGIGWjdxqFwI7blgqf2dFJDaT9XVRtG/6JCa+zQ7BosO2GOSYbPPbhne0r+YSEuzihyWgfdu4u9ZYENFzDK/3FqXodvxKctQ75T93s0NNe6yZd9Nx47JeWdyGuJF5LhhMGqnfmgHuQC9/MUN1Seije0sJ26UifbkJH0G7ONeRoyGyWW600Spq0nxXSl7Q1Cd4x4a5a6sDN07gYbMkDD1YwmCBojG4HXfh0Nt2b+RaI5E0ulp+2z3mGfqZYFMkN182wP85nnV6HOZIvaJhDD0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ejMOUdMeqXGL7A6iJxArpHILF639iQWlaDE4x+NWQHA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1HQbHG/OvB09iq7wwwnRgfEfd0HapNhsfxj+b0i5wbc72ui0EP3pIHQ0ba9r2KRuzARUCbsUiLs2sfVUQz1ltjRdVuEuGyAHaZitm+HXv964nIUryBIYpnkTxPEjvUSiOY+lJ6E7+rU8LqsFlekfwhfHEy+DGEapNehlHXOar0KRxVqFteCDRqrjficEGz5nP9ecV0+yVeq0Y1hzefrAE4nimgeHx1MTej6Agd+mhKc/+kztWVbWFhE7trPFQh/QbACnEiP6X68ubzCzxsz+Q4VsPf4s8b8v6j1aF88Xme+YDQlbJIcvkxLTj5u0cDNh2VECx/FJNtF3YTvG5HQRUTWd/p8r6LdATdkwjR/0cFiqdbj5QQrGNbjoJILzgGvyyrFJ3rTg+DOuksJVdK30tSlQDwesSxaX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ejuNtWTDw3CnkV8XjArjGsNooExijGmY92HVcb+i5Gk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GpC5JL4IOu840O2tAgDweD9LaBuZznoRuEHERH54RoaNWEhZCeVSqgX8TwMra8ASoeQVDLrQVS5K0Y5MTqnfIm6/+3v7O+eV3f7vyg8muZ7986cqWymeJTab4ypszlapeRCPKerwpAkIDdR7tgGwDh0B09AYi3fDiqknPtnqCeu1+roMDOxCSv/quTORLQ+sIRXnEdrB6wrvmL3C7G/h/sw8zw2SxinJ0umZhxW2tvle51JXcYjaJ4R/MeIxoHzdfuEL1MEWlSJ8XPAZIY2ddSlBA7nAaPagGTJe6syG30geDVZCqlwn4RAHNEKswQQ9BbEsD9bB2GHgC4WGIDJGKfNo7rqsI6iR3zPbFoeEPJl8gniw2onkAfcvs23ceQlQB4eUZvAoDss25hQjekQ7URSlNB8+uO01", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "elomehzpkSg2hL5rg01Z87+1lX6CJwjt30xjEJh4kNQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fepIP4iMQgkuupvQz1/35yhOWvX7fZiC2rUCOYyf4lt1AkMVg+sBiFfy5JlWiZ/S8fyj+DGR4qGQy6FE245OAbVCQpCSDEa9aicW3T+em9yzfxwAjUwlaEb8Yd/Nf44689Qn01LyNDaKwyPPCiFR4xE7qHPAevN0nyskaLiBk6Uak5bTm2EQW+rYF49orN5KuPFsjv07vESWdiYvRpKXIqJpoljnqaVAXXH8OY6hk5nozNL20XqSDeesjVrOBMwfdBhHYt6/X078sRtKejiAl62P24bCrEjKx/oWPlIeVFp048ruH5LUH/z6AYOf4Sj+fXNR4sRdmJd2fKMrTQnMETO5P6c3Kxi+kT2djt4jLzU5pRGSsPi6hoc7KLxnUoCuA86PMoNF3wJC05bWNbofXbIlx7/qKqyT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "elx69FkrM7dX5yp41hSl87ycX0/J5EmYLShw2a04PDI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rXpTr7U+8iN97emcFehWTCA57ytkiOGViw6Pu8qWlsmK1WNTuPL6bR0sRv6XLglOv+BO7vyQD3RqLr1yYq1Tswjvngl20LhXK3S6sDY00mTdqWAiJCHtPhscWXIz+ZindbLJNULxBBdkrHzWst6xuQiXdtRNW0Iu4es7EYaNJ8Pb13a3piEApyExPi/qps5bzGUAY+tfvFDW4RtRteKZNde1bnqCOSEdSticX6ItPvsggN9V2qz4ribKAR7yvX9390cJREBwuAh9vPKoIh5yIejT4u/FfXn3R6+NI9E5omYMi3BlSD3YtZqpd1c4bsEFNIm3xV0IcS/umOa/8dPK6nWQXRSNoS/9LtBAVKL5AZ+Xs+sR8EzFFXXyIQ/ukjgu7FuO0W2x5WRrdRR+uN9zkHfvgM32dBw4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "enRfgccSsmZ3jkEdllEGPb0X+LIdX6+LQ4kMtwnFW7o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FAnW7jOOMsBqdIjtW8H3IRuC+qbmCRg72pSJf3EUaEjcs/QSMvnaVgpT+vFAXgcShxSTZ6Ruvhi9eqnC+nb6DMDXOztEo7gOAQuG6q9XNI4YTSWd5SAElTazl/E6R/taDFFg9h3COxt596U9C2d2KuLBUxJ1fVuUGPzygpKvb+I/8IxR8I+aZDoQjGlF4wU/2DGwRw1+1aFVWfas9xalFBVEqTlFcw3DkNXS1dsKBDGa4NLVUz8IuXtpW8anjGmh1KW8em5hxJ2YGIhoJFY7nj+I/ZC/Vs8DZXXUfzt6JMbmm1Jumoxi8Kxu8H/+vp3OJhzz20UnHInis3cjvbvvPRlvEOadG7iaM4Q8IimePfeDY5ayjjYKTgQnXhAHjHN2MIbinCVI+WE7F48toQhXB+Te0MxMMtvm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eoSCsw00lf3sEYvYyQwJFykhsDv/fZBUCqlGaSsawt4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XzaRLZ2JiQ+QBKsmuMl9tao1TjJY/v5NWApaoZ72bYdfNz9b4q951s4AsCMxz+pXOh6VYN98TK80tKqlnHg5p6UL3wp2XA9voPMYQYNyE6YAlfnh0DWUMCkv7d3nzTCInb2S9zD04/6tCgnoJC+oodFn+QCFh1IQzGRrdBJI0TPVj9JVCprYaYfBJUxfWHvLsVZEY4mMieVaaVCvcvzEeJpsQGGxJRPyyBLJ4OTzHF2L4ezFU//85oYB9dnvtLFKbx3fGLS+qpAm10HrxmkwICDC6X9k9YzMZHRzIdLoelNdEn1aqRXwjVfaIR17DcghMLZNTHQWn+VTVn6mIOk8eXv4O7r4D535ByNvIIMXXMzBAm8VQKNM3EeRrp+YKLvBuE677/aeJhqkbbjdkq5BlZWgqYM1f3YX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eooIF7Dg6Vx/uYhUmCtqh6FrHwyvfjR2mGO7wZ8bsig", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CYWOCSCg3YMCq406d9mu/yJMbR9LO357jWUbc7oYqlcXdsn32Uf5rZcYIRTxDMvMV9Yj4AN2x2PdulpfHfkPnzbnCMJllr9oyxhAdXFDcjiO4I3YVtyrQPt7Bg7Va86UyStIEJ7RV1Jouy6KLX+7SAQjov0WckFM2HO0JmNN6HG+aHLWwolr9SI4WjQhxwHVdYmwteZo70fidqQFCv+4883BDnH1QwvrQs8mxQXFaWL/jaC6iYrNQbGuPXf/bss/sgMZKE4CLFtYd1H1CgxcqSa4xilsGXC8LwgjxIpiXFzSHxFxri5adnuARt3cXW91L5BmB1uWsJATHy72Au2ZiGE7h/re3iEspMtakOJrBxeh/CrM8SMcST7X36BCHzFFtL19YZ8lkEjChuYQ4PGEZKU1RmFQnj07", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eorUmMuX9lSc1mnj+Yge2iZyx2hSfZur75Rq28LVw08", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LWCi0AgGNHs+R8eDGmXhG+3uOh3IvDzomhonD0gzp7rcfcSUg7X523raBSAYGEtchUvMgFmwpo0mbA2N79zOlkZ6e9uJVgkaaTKx9Wxu7PMMBoym6VNgZIHLlxO6GWW4uztxI25cWLGRa+5NRkankFut20XW8lkWkA5ApZyXpLYaDNB7uAZ3hccIyyC+qudasr/bWOwqwqERs9u7u2d7H33QcFVrCDyGmYMUtpHXa94CHSelYP8p1MuYrZkHEfsBiYf06vw3oZyqjY7z3k/lC6EERQiQSwQUBv5Oxy7DmDQtf7hPBNdJlCVwVL2GQXPURCMTYBpkseEsTQZ35pxwci9Ikd8fPK05hhIKYVQY1dusBjcwUt6/69PIG1bk/O12qQgRfN0CSx1h0BFSJFG3GBYz0r9Dt/xB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "esFJoUzqD9Ze2TFrBtfwmjBfU6ykE72tSb2ooM9qNMg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GXVkcv3D/FGD2P2MT3OiazL0k1rcAGeCLmtM7B371W5iTMW59Oa/ygSthTmGi9wBjJbpbT8sTgbqi/uQntFshZ7nWnt/zEqrsGlNlIbqH/QN/Z2L+YMPGzkYHVgA4rwVGBifrKvfIx7XyNYqfIGJodKzzJfHlDH3XICCMVCxElSQWqqq2Pz4DBC2qITc8j60lPJ+EVCyeusJyliNaPnMaJB2PONhLwP8yK4SYaX3BFiP+abz1FWhHlK8LpA7rhV+e8ErGNytRu4D3qtSF64ChgfOMDxPzYV2VpR3Wg6jPwKtNTH0vir3eEWR/Fi9in+f5tnPBsN+r2UOs0tVVJMqJepgDN+7NCGCr0SPGTqSIY1bb3aXuBgQQyhHc8Uz+leaDBnaUYyFpQc+R//nHf378iqZcxQpAkiN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "etWol3j2fdLjSnVseTa90TuHdw2fhC9qzXFg5Wjkt1Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UnmTcpiIDH39IjRALK5JzxxywLruOZe+RqI80cC0hNq9hEmd2hFzDfGXjiwWMWHMFoqsRASpzLSggV0O2KESA5+MVtv2RDSbDIoTdD7WFx+WluSIVxKFVnta/fUvZL14osko0TILbQQnziCOShArH3tyWikKSewD0S2yNaS+QPNeNW1qYFA1trMR8l3eLkwsPI3I1f5WSK2Dnwj266O7iMfO4PdSqtD1A1ITvby9Y10+tBv+C/o0jgkS9rjBY2o4hY1zZKt68iszj2GDQ4ll6/4f4LwYWaOxwCLOubxbhBZ0LCWwF48C91Tkz48xoLYH8kVFyhhXU+ryIz1X815iHy90mLkXxm5DdcLvEGS3A/2FQM3JvpyXDIxlAluInBaJoYTyGpF+KWo2GTg5uz8qX7O4Uk/RFtVH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "etuHb69wOm9LxDAoCz+0E6ZLz4kBaOeb7b1+CAG3qsA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zNom3p+y0xqvNNPGO2J7gbXEJiwLpnWWDyxQGmfrdOe9eRMaOBwyQtDEVFwN9GphF8Bi2IEVgyZVDBz1l5F3A/sgkKoRF4JIAnd31Gg/+TcjVCIovKGDN6IU+SaHh4S9Xx3INNz/G24nIOIPuy9BpV3l3oTQMJUUrhoqK4zuyjZ+RGjgVfM0pbqyjJL2HoDuPyCa+YRS33D0quyiPrcFSGBTtiq1CZv7aXjhRV5b6iCufj5CpHKBk2N2JpUP+9+CKOZyMn4ovBe2FL6WexSgarvk3Om5aRH5uE0YhPOqdgsRCwmZYbjfiupyZpuwwXmpeCvR5GRDJFYQWg1QHZVtt3FEKAlWR8tT2YARhRPDmtKsnB0NIRd2o3taZ5HZG19AxAT062g930Dym18addwJWeASIWeOWdz9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ex1Vbcv0ta59bo05n/8aQ3qEIZ056MbYmZ6OCUafFhw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "h46RRkqokjethCrdpcSqkO9kmAn5Lg3ZfhMyb9585rV9JcRRnxRUnXoqmRATGaryG1lrSYjx2apYkQZKvDqkowlykhZF1XtSte0GNd2vURcDm8pCdq4HsnLgTryZcwqaik/v80Y6Xy66zXZCPkpDnQoBSbttpOFqUrdYKMLXRf6fNxB+nfA5V98JfVNA6MCdcMlTRCytahH19CJwfm78u/lKShWRFTnWDWcN1Ysz1xvwf5EVI5wjGEJezis+J9KGG8xYzEFnGoEZqNw8yS2B8eN4I55B+Q1S3i9/NCualkX6UluqeqYmSTLM83cDrjPLlT9fFDIpMny3GcwlfNwkt1Br2XHkUiB3m/LaOEdzPainGyFYPm64vNBPmkG0VOI/Eg266Qo258ZinenHmW8Ca9B7yyI4LUwc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "exDkgDlI5RLI7ub8kbIIz3E4okNdHK8C6EVFFcrRRFw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hESB+Vu2NVnzFLzEqGDjeIHvEudQZLbdV+XSwkhobKALzDXVGCDe+jJv1Z+edQti0lywElBuno2JIHzFIg/hR6MDhUtuNKKmwC72WR0U/BFfrU6EPztXuJR97n6gynA8HtfEY6AZ3u7Q4QTuS3xIfTpQ+xzcwPDEsSGWeo0N4uohGk62YWstBVkEq5xC1m1NO35tE+bQMp9rA1jfq1kIxyLRitOU0GEPR5xckZ48DbEEYSaQsWLNe2+u8UdX5Bh/QLid2asBMd7ure9T483iNO2l4pbd3R5Evi3GeLKks8ChRg8X3O5vbppCl1K2C7CQ4GdM8hb7zvM3QRXxIKyvHJ7doaq3gcmzDRvpXBGgjAa5pwKD6MYBWJcYq+RSf7QlzxfDikRpJZLB4Eg4NlVQ2raX6azBCryx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "exER+FrLGuu5Q9aQD/sKk95j2o1bmS5V057Jn7SGWj8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2P1PWVoqjH7dC1QZAS9GDMlf26SlOLrFo5w/bs7MDPJl1cw6eu8txMg2zs6EOD45pwkxP09vi3fjdEo6m9iOpsYwqBPvziW/DpNhXtzs/Y2J20jhck/Yleiu4nt/QVqS3E7RomZM1K1YLb1lNHMGPkl5Zm4Y9QsCUP5BRm5VsAc5mGNCZ28FIJnLF/6CptHhUGsm20EVgDZ9kCzjErFISpA5HtNQMqUtDkaeEOiClaWm9nszviDjAn3LGF/o9xjKLcQVC06Hj/F3Y8bsSTx6R51v4IjAgYceg2BMKnHOOFlwZsNsHAIdraybd9LpJEsx3d2e0wEvWqjI9zmaFzj4MB0BC+yZfMiSkIRsbEB5BhKUSNtRGaKZo3oux7YzPLseN0pMAKj3DrweKhzuIuGzpq7vnXVU/l+5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "exLxnzIg2PCzWRWF1MFZ3NlSU8WKTApGqdsyMFf9OH0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0NWlOKmDjWWhs3HIfXLhj7bHzYsZHW7qGyjsYN376d0ORSNx7/tKHkujWQgNiYDMu4UvDwjzXv05BUkJvtDsyt5T0Ix/Nc/P3H1q0Iq2gnTySOhvdFiEh+hRC/wkavi0uq1wAZLKa9kHFySy9iIsea+XUQFcl1QDuqjuffuzr7CmZMgPxXJ0zvsLqesSAUy+6G1ZAj74mu1dWpkTk4oZN6pc4LIfeipDNUeocRlEqWxL5bA51iKNM80sReIB5kQoq2VeIPRDUcPP7tlq0r/Iwpf0Gh8Tys+nPSpbnigxA1psl8Tcin2BFw2xVzPCrC2fsTGcpzK5RVcmOOWddZFUp+9Nkd6GbC8jXUimshD24HgIhE4etNTMb6J5zFEYxx2EBBi2r7AK6VUFkgGF/WdmQtaet7kiElIq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "exPxte9TFdK3QHExxzpG+WUBCWIf2rWCas+1ktigovM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "b98fBGgdR2wuIpB81Px2e8nG3IF3ScfhxRpsngwzYm2V1AameUYl5CIhkp86G6AoOBziS6jVBjk6rXfjC9K5SQAvHXku8/SAHplFoiUILa+x+pxsE76A7sH/108jQysSzWZwfEUqWl6uVojwN1bvYFdw0jLE1oEnc6TnAyXa/7ULTHwJbets16j5VmjEFQ95pd7WoO2KAGN1oJMn7EAR39nav5uYfCRN5XpCeUjVv2ZnjcRkGcRVjLwBIIulXXHAxR5/L63JCGY8UT8PaqN2zltaZB2mdHsmeS1ziU41E7ZKukE97lYczxO/iRwsLW72u/7QVlI7PEF72crRICIn8cSax2bZTzBNqWj4YIxLvxNSrUB01EsJ7N4qj0AXofvJG4SkLygnpC7+LZjk65JhWITswq7hAa8e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "exSlRZS7iJeSZXe4Ahr8bx4EiF25AfF5X7nwwpcXO0Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+wUYmDFVb/2o8Py/wq5fMZ5FBMqXpZw5DZSnDsPGfOkvg5dJbtkL1kcd7s105cLZTODnnlHYErCMxXqoj7y2vjOkK3SAEwBgl7e90l1zdeAnHfH/6CX5TrnSbD43hmHUxarXz+TTiAPyhAyxt/U11MQyLJGZDk6sDNDClpNLM9eblKZyGJYR//ygHT/VIVj5TO/Zhs8Ax3jQROCf8yoD7BOHQjLnPBgioXxGTyozK38sLPGoTKfuTXMBZZMySfYNw+AI1MtGnwIo8RyhiYFE2T3cSpVHT84bgoxvuZUGSCMwKW+Yr89wKXJBhi67Sv2QEuMPm0xweugZq/ymaMiGp6GUkNUG4I/4/qt9PCD3CppGApD1iJYsLHQrleD+NJwsCvUcDwXp1/hdm7E129CYkJNPutQOcSTS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ey3L3ImQzOFscYb6JrOGQtZ+QL2PXEObaxUzKHfOy48", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L9/pfW8eB7I46tQGWJJK0JHDXYxzaT9mx2BVlF6lA1NyrrGw6mR3pEC/CXzMIwCL57oKppZrJUCd3Ioh3IEnkcZzxYV4h7qbOsFIf53a3Z8GsCMosovX0Wf/9GCqleVauYul36ATlfNuAacFzTzpn7md2AcgCf2cX4NtaG5k9pmxsZFMSzZIvavf13RL4mMJkWUYwBJRDTU8I3NR3t6knWa4CP7r12223lmk7CGJHOpkyE6BCyu39znl6FdDoPDKyYwrDaoOKbldMPx/4gkSd7M5ePQdN5ODpE6j9MkUmiNT/lgoJEIGKdWpfa672osgQ1GpSuS/xCAqKOYWJ0GkqDLhGqSIOFBIqSfM32CEijhFQrFt8K5CcuXEKa/fMRjKYt89N4YxI/T9Gc+2LjY98w+VWRT90Rwo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ey9H2ufHStgPr8S7XkkWbnuLUK4P6vlu4ODwiBQFsqI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nCG3fhehweGUIAvn88Eg3QSYpelMKvt0cbFSEqD5Xk8BKumivcm83zGNsEed1f+Pestz46cP8ZyZtf4w0HahBA41GXHBkLRxyXgIZ9m+qCLuOD1UqNW2AoeaMcZVh59NyQDWeLWOJAPj+SAkRN64fPBJhGUaOvljjjAYyfnemUP+M0Hgk+FN1ntQbzoiejyg6+GaBxXEY7dvMR9fNN6VEvbr7pwdHDv9XG4PU6N/lXKKNtY5AwxqYOiZ6ej4pWGRnjMzuW9ZSu+N0nBNppSwwSAiADjpxspOITmhA11C/ar2hEHZpMfyjNEk+3kY3KhfdXeUp/KbmCV1bABXc6GYNfpHThuoWNr8tZZ7yGDdvGlxj6KOtwQXJAo7XrM0Xcr+VVjByssC0QtCpTRKpsrm1b/ba21bG2mX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eydY+loopQ2ULvDo4/E6Q+p8UxQm3QGJVqLrSTUKmHE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9tEnQUP5y7ne7mfHlFxAfurhTkS5rB4rlCYJ6vOi9JQlLx89bexzG09bctv8wu1sKv4VeapGWXfCTNV56hrVKyxfEhBbH2Xio8oWyHIv0nCC0S5NIF2NqBJf6tnDaIK0djM4X6OP1+IvqU+Ak5sGskXyNl2mDVgOE/sMVI+OEhcLQfjvhcrUaTOAsq8r+gFE7vyv2+/UAEGvikYGd0xGNNB4e8BeUy6gMp8K0WVh0oD5HEAV3oiVzutxjdcESOds8TMIxz621BRfcepL5MkCObHdW1hAEyxpeYcZEwx2bvYtazqBaSpZbK65wDDj285VJwKnB1Noq2FwWReI4ZdagSeDVjS4karrZHVOufyirjSvcsWtMdMwZC7fxkqqJ9ghUtnXcmBY2y9qF9Y4cgOSGQ78E16j1YgJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eyhS6IajgvczAcGrn96mrfkRQE95zalbbLGwJZ6QS3Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f1hTzhi8HUggFxx5FjaKCz+9NyZYw9MxeBzRxskIRAKMOtWAvB/SMJMEdeR+bfB4c/l5KhUPtwTCTS7lb/mDJOSuSntHH7VVL1GghR3YdT+s4FUmavFrqKdrAUXjOrY7BoTKEmHwRPT+TDr43mMMbk7NMaAh2WCvoH3Shs6RAwBGOjTYCgv/96//GL541iphpu2DJsnDaiq0oD47Fk7/p8xm55D8Ybh6OKO1mLFJH3QRP6ef5CtI7BcbMVcuNsn42bylvGc5G0rw4nIRefdKcs75SFDMlyToQyAIg+i8HB6JUYSmpt2Nc2mNh9Y3mdykXqgWcApSPdR50XX+VWcX5XV479UOta+SFsGcRChW7QiQ3lNEy9uh2YOP+n7RzOMSbbJTR+orCXw92dUIXxi0r8H0rT+3lZ7F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "eyxo5cYtsBXqzh1FgfGsSp00J/obtOGkqZNkmYX5lE8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LbAaGUzLEp1uFDRkONXeS8+0iwiohhi2iM/qfpcj70zDskDjzcbt/VXZ8DWJRu55/oz9eaE7qfD4CH6caN7b/7W/9c3q3umaC3/JIVb06QcQamuNEQE8NGKBoyYB/cmi4tB/mvWIT0jY1y0kJ4NGTXwCiXgZAvzxA4sJ2M8yOrlEhexPIWecCi0Ec9feaylosM/KsjTzBBA6mVYKIPEw7tA4sB74JmJkJF+KudHUlFxtqtr9kMhlLMPW448LLxTyjlbRIjYzTacTfpbyu+uPBWtGgkfCeQ1Krj4NPDlGmjSF3kMXJM+xAC8IQBEmpm0BWBk3zfuEvjJI2VuL1uHORMbtZa2zMhHWk2WkH9XG+3MvjUGYW2j8197M6zUdWG0+RdOW2d7bwief5FXFN6TlfiPyLF42BSyh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ezsl9B2fALtJumfhuw7pdNDC4dz4v4k6KMbN0dx+vvA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Bq3Yq4QNmVBG7tI63GX0zhc40L+5lJkfifGhxmUyXoFhTAmK18/QXBGbwrbLZGZd15kPdVzG6wsh4q5zcmK8UTBoBnaOpzszcCVO//dzXo2SWS4Y/AF+/79Z3QBJA+odzfYb7bABA45Ma6R+8oT7nkDcz+Qx8PjO0or6GtwuWjrQGF73WF+xVURUtLFiiFitC6PgNTR4QxPnIdw48aVlIryEAgMnhNxFHFY+jnKkIJwEhZVFXDKPz7Kk0ZCI+Q5IU3HNMWy/H4sJhrKUR+r5STG0aiCZsS7REFGrwOP+PUMHITYs4ZhFJwaZJNKqLXhzxKLQdh6R5inAw5AnKUise0f3a716ulRzD9GGSHZiAj2ncvfBeIX/xfd6OB3/aU3tWIMpYpdl9J31t49GCt4DGpzsaEfwFqF1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "f+Rr5mYvQpcL1GzlngebL0SMcvcoHMuVogL41Ky2BTk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JhvfcqgE/Kivcd8UJLlq4RvWqBkjIuSuBCifkfMi8Crpty9jYGzU3UpC+JRJ4suPyWO1IteLBryWKVem44vbBIva0V6p+kysnbJD2qQ7YPTPLdoipgtmsK2kihrxeWJvs6vdKRsOzHsKxkvZ2Sa8p9hohJip8EJj2fCXILN6rtuZoZAkM96psK2eXh0rJ4XzfLmAxAyVL7I4XnzrGyIepXkC5DqjBaWRbfdYQXVgdQ3gF+GvKpewmjVDbLExMbnvrdpIidHYGRJIoRYvfLcVLC37VJ1MVq7pnrbQha5yByNeL2Bylxr1N8zw6J0OSF1A9gp4CYXxJ6C01462bVQxQ+6Q38eH8e8TuTy5EzxVwGC1xX8MPvzcuW7bpXPxCm4yQ2kctrzkTZIVMPeylgIppUwNPFOUMiyf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "f/xf3qko+d89EbDpR2F57mvLUs8JUDk2uDHyoG5bTEo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ADxS7Irt3h/YTCOLtTlQXB2lPDDrHNGmS2+LO/DMI+M29Ckx2SZizSuHP9D7QKrWSYpNqjTeylMFnhows4pCPciu6UTHjwif5F58ouCT9M3dUYoIvenQsBLA/t6VBlfE0xbSZjcLK8x441BLUqFSQgs2NJVnYWL1IrxuxUEKjtKRYIc9t8NvPguBgvviQfwcnMGpgAvz5zhz0VmwGdXEb5f39qm67oi+m36zySTK9AmrcDddq69crn3EJiRt56hStxL3lWT9FgUIVwSZG/ytkqvAIyzNXWxDtGgJp88ErKZQvwlLIHExnD/IT1O8EjLMOH6y7Rb4DN9kPdhuq7pkpA+BVALAKKW3MPwrLZdqZN3GagSy4S72CEVB3c8162AcyhM6nhRt+OyFmHoiL7zZP3ExFwFhPKhL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "f13cxiB21GsqTd6FPk6RqZ5hkRMN6qPNiZrQkDxkaVc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hKQ+klU+6NxG0pI7gbp0kJhKnqW3M0Df3idlio8ISl6spyIKa5LtgqCD1+AecfmvuiGTHRkDqm6izNIoiRzz2tj8+hczatdTr4MWJoHGkIRWdw4RBHGh7DEpiyzQ5WtYrV1811TzV8BjkrxxSgqGLyalwP2x5cr79xo+y+hFxPpf9U1DGEeYWaN3e8N+xGcHf00Vd5ctF/pNIeqb55mliIqP1u+j/aIqrKvOEEJO/pVduU9AbmwhWDCWkyvze9BlI09yokc5A6riNQmytYp4iS7McAEJW5ji26v4XUkauXqQypPmk0a+HuRb4wHaDdJ7AjBCR7ec8GPLO5KbfqCryIla7R8glxpeZYoGFcAOJ3pEVhDeXDrm0eo7ymbjCUgvE6O4dV3sWBhxxo4Qw2giotB+zl9+7ffq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "f5ahj1JYFlYNaK1YdwiMwRTKg/eJxKNnigq+TLe7b2U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cmr1whVDSSgT0cBvMhIHNWnHRigEj0nLEQ86chB8SB85RnsXgJlFIty62JATzHVlnVSwLoKGFsppHVgVV2dJZPexM/axV2+lQbUEMRwPYu3XNxAmgBp9RqzP8eU1NilBuCgD3+feSid8K2O0XV1UCzxCvlnN5ND8bzNMEwlObN0S2wjzPGfZbpkAVCuFcOmMGOKrctzs+rX7fioW8C+rTK9PzHV1p63zGJLaq6rVdQR2aUIYweU/s6vCaKluONcbkyrfkWswz9OuAglxk5a2Cgglaq0GNQ83fk4zkGkwfpRwdoL3gyULjB89A8j09JOdmIoINfj+VVgsx+oY0XJU+YNd0n7wsDOCBcLcopV/WqjjpAmgdS6oz28sZjDeJL+lTP0nGqOVaJhu6iPuVADW9H99+5DySanO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "f6+80HqM5EA8+5Vhh4ap6Yz0fLNOy8mTgWSCZo03SPI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OSxWK6ZdxuYh+hoK2+yNXBje4KzyDtcGzTeklbzWvqIspN2CWiQ3+IUK32YpM2+ME+GDmqxewD86T0v43P9Nnoaj4qhlSXGy3k+NNw88k58mCUmgZoWjKA4ls8XB99pvWQi1G8kAKYaNqDxPsqGnY3wz7gvbUmW8HyTUsEjRh6ryBgZSg1oXJlMaU/CFG3p/YD+uDxk4gxSkTD/MIVS1kEaXn2/G1J3/KsN0QThyhssbCWmnZISmfRZMUg5J7KeSwrydGZ/NwlBQgvy2RuaZzccKXddcTWf2G31DOY4Uy77mamEu0Pi/lFvCGnmyxOYeiQLUZ9NF7c0lT1i6oguDycHrIIrScPkPgJkA49LqblUeN3MDC7H7DH5ENnZTG7Mn6O225WNcTe6v/vmt7mLEvGUoCUqIrkHq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "f6JtwJQU/1EmqfN38C2QRecoycYOVdC2/GGrkjNnw9I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+OKh3sXa0oMdbo8WaGcV7IlslNUZIcKJrL8IfTF/CA8WSses00Oca6GfeCOqc/USYuP3ouehVjYukVTaSVTxIbAYBxvwPWaUgySmFmL3fOLL0eSd5qwMROdUOXZXw9U4E7PbyGeOXHAuD/cxAu3LH0R8g+iMZEZaxX3qJYry/T8n+0jccFy0mxFd8fAiEvXSOF6tkV4ixm6L3WMNXiWEcXT5voig0Ee/Vp4e152QMLYwFobHP7Uga/AzhyhM79diQbm0dRxHFZx1mtlNf5noiTg8OXRUtHjjpTHbzBC4ejgadG0l9Y/yJ8ZoEafqBzgs4vlH92+ieCx/LxlZ9N+ae6wVmGWGda+v/fJGeDJGFoGa+zSMqKZyJPyCeEZV2DKm0yRrmMF9PIlss+JqQSs6q03ibhJmK1XY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "f787ZkBlwMi959DTGTcWlmfZPaNzb2I5SHDkn5efURo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2WjftYHne0gTSnkUou/vIc2NgHCj9+Rq+90mUDCHrM+vIjP7NvPRowkxsmkN0TORfZ2r0ocWRjeSP0Et3SpFfQH5KziySN07+lDKJEiT0IceXwHNVDPnXOB14/1nBAU20vWzPL1orF/Cfe8HMvVXuiHcauz2pqt+211tZ/Ei2YmoCxGemKOaSy0jPRqLVyquP2B+PziXyz7p0flu5+SbkAvhq9KnMOkelpGwVoRHT28SiZ06MItN2BYPoXb9GZGN0kTmJYlAYv1j7qSCCy8EhvQGnHFRrYm3xO1XomKvXCvJyXsRupYGk7TV6WXwIOOcaRR0jMIpSdKGennV/CbaT2+QrI2Y7GzOh6Mi8roFOi80sHMN9CV46lMo4b1nHbvLb58rWdGAvLp+CnBoH0AM50ErIRQiH6mp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "f8cPTz+H47SkyFyELsm0/Yq7ija7gfkkIkpOMtCsZLI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qb46X5w3qzVJpN03Fikumi9E3Pd0Fw3b0RLuI9XfsOpJhmXyYaXcEPNnX7OozX1cpdowuJ7rbhr1uTgu78mmKCvRkYUFN/MXn9b/PSiNK9vUG6KqO50DIOsLgMFq6EbkyBCaAo1BXafvs8HVNmOEoLpnDCaeMYoz+Ei3kkH+ntn5MyRAO+Yut/jd1t/d8XYqLiFPdV2pxFn8UIlvcv2gpLxLbWum3IF5Cjr/g9EwPVqj1dl4xHjCYE0/+p2zwyGJspkih6gQzYRFtm/aDD14mI2EDaE1Z+JGxFpDYbGOoob+U4zA2+7oPXHUTmMb+O3Aa4Z+eYVlpsgVZ8U9HdsgPfNjoWZwZ7rP9U9nPp6aA7+su+JebVbyUJ2Jo8Uchu94DYpxcCWnN8VXTKvq8d/17V8CIqwrU8y2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "f8dMbvfx1NQAi8If6zRS6XIa3F3xGqm0ALJjECyvID0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Y4EvP/GXQvCjj2DaC/3G1kCIpAPro92VK3FRtfdlmfeSKWwVidlAlzNG4eqX1Y+3i2twIg1Kt9ks/fjwp95nGtBKaq/7U2Vai29jcVr4iyBlQaOWKML0ZD4fz24Ugn5NbTysQfD+lwbSIKbI2vcmxUMVnx3wdZJhjqfZjzWhlxSpmKVJHQqrq1v1Koktu34/knUErOepHLCUfIcMTl3+ZO2CVzXgrtspmFa4yn/KlPLPxOhAH06s8GBHN4wBhe4IUG0CDBp2AUOhtP1WXr4+rfiquxVCKecaHdEq1bqWMO7BIVCcGeS5OutaL0XqkRJBFzFqKIPfVEQZjwVnlY8sjmRZQT+UV7LR8iKlWDCL1ceIyQUuewj0C1PSHvqivJnhWbI3UwLnIOkJaeya0nj2NjS2TJMMcKk5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "f9cmKwSvclxGJFdltFlSYISAyLHg6JTiUMlNE7t3NMw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A3Z5qlX267r9aqmh9a8peKGYqsAOsxSxfQMv5Z/yb5mr9wYAuLdyeOJls6/mAu433JGDBZJEqDx6KfYNcdg8dxlgQEaMbqWP50HtPf/WKoEPqubzcBTZPKR/yT4f4tlLHapr61KLTkgu3Fm4z62V/UY16M/rodeAdvrEhSCrMenzUKFzyALqHljwgf+bHawkLDSt4wizWSt/viX2j221lBvT4DpKi655EOwINmtRPnbfQ8rZ40WRcIOIPurESFjJmzLifLVeAbLrCq7WzeU24Rz3pXQOdZK59cJdVH4mn/yxJNmTaKXtKwtXHWBr+fJRU00r3PufoVDGBsm1HS9rX8tZGngUkw6M5oTkqHE9n9RoZ68LwTYjLofEznlUhRedBfctHdlcgtx8HupubDdLHbnnQ6DkIEXr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fAOj4TtJYVCLTv2oWwccFfZniepTFXLSBffLkDhbkCo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/cx1uDmlHTN3zKkh5+kiTIphKl/ZMgJGMbmwUr6r/b7AjFtCG7vFbIi4zJJ4dzf8qdvIsiv9CJ8qBV/G/eXo4bvB96dS2fmMPfwEm1sKlk9Ggx5w9L1g8Vd7kk/GrgCxibela0odFhaigeVBuTz91m091qepKMj6Z7PgGRg6GoFnio/RwGiIcufMOF0WcfvJUZIjuqst4JBzhI1CAY1afrfXDjltfCG/TIwmhlr+IrAUDk9Ee2UsHMxd5VGhi/uQPH+CqFHjxOWHDsxIFiyituR9O8saqgE2Au/bNy9ygfz4OcI/8pPHS9DV4dSVHTwwq31TdYZybaVfh2r4xWOTnArkt150fHXAwAIwV2OwLpYn8Ui41/d2DoxfsV13lNh0DmP8XLR94nRK8SGZSRyY1OTvIbuNHEiL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fD2xC9HP/uVN50n6lZLdrqTT5pARFQCrJePSX2/dtnQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OVnFE1mZ8/3AVr32vQQXjVD33Xo4v3d8XfAgKyUKhwYJu8x4YXV9lv/66x2eSTwz9i19C2NuPbCycAGB+c9R76nnjwpPy4eJlWCL4bf1HzzNrIJnfamg1CLVp7yiqpmOZ7xqYPfdF4H1Gg6vXQUkotzMV3u3Gq2+NEBkqOqRctVn5mLvqBxir/ZNjws098djkQ/eHTCpWhT4cofvFuzoefqQj6bL1XLijO1IGHcP2pm4p2gb+CEdDZJjMiu7u3E1NQMtdJXgDLanoFNlz8zohSFSPbOPhGOmWrEEjFb2pnoNxHMGd9G2Nxzu+3FBGxiVqF8+Dk9dUc2wRegWcH6EmuCCGwb3yrou7P79JVqJhIfN6Oi+0OYMPgBffOW3YwgrwjcaZ6bFMBfiJ/KKpT5N8vZIf8XUN/7o", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fF9lwFL1uMEcuAra2BV9Uq0+dOoAJP/zn7BuuY8OeZc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S7OCUsZ4jTs0MPMKY5Vn7ijHlAnvYKXi2sfx3JPZ5JWfm/v8PTbD6vgdbSWlLnUoJ7nE9VagXoDYnEp/lUIorXkbCCWsq2HIyur9RqtqZ8rr8gjhoYvcODtmLKA8hSKBl4x2Oypz7y7KNcSYILWV1d+5Xw5xYKrRiguCZn6etShe0vBJtUhE86zZ9JGyj4+zhlg616s4JefjLf1hc/wDefohskKhs/3OywmhcmvPw/+v63JufbRLnb+Hf6tEpuf+OB/qLwRgkWPyq1cnc5BqAAr2rAqaLZ+kDETcHaTTNBUhEVqa0iB22z00SErvFwxcdBzZimhDmSz/iJwwGx4BxXWix1D5jSOhzTdN2TBfKc9j7HWOc9BpKi37APp20IVSNOag/RBJkr8PGqfi0cldpogXLPDvaOCl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fHCcruSUhaL0qPEFtxSLz3S7AyBypW+WhIS6SE3tU+c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PCBMbRfCLaaouVDQkulHuxN6/BlmpKyMMRiowpyVmwA7FV+Z+OTdQVCGFVEvA6bXPM/2AlrIjP/QmymDENE2EkPQpmrLANMfcoXEQ63dDW5Mtu4l2z/3IOQr1v+ZuF9Irh6ie6mcdT6+lxzvwFDdAxrEqmdTJ2qU3bzFs6FZlp9LD46+un1B/ZyZibgb5sw1n2fX9cnUmx8or8CwJiQkzrrRkLz3sTBieRf58F1cyDU7G34ybwiN6XX1Dc4gS9uq/aQWF7357ZoYfqKNkgQSoWTqHIWxsJUth1n4YK7UBkU6qfjjCkXgZ8tyCKNcS6ce8oiHbzyYt/UcVrqJdWRbDqAUYC06o3Ok2I6pwdPHfygSWCCqgCutW3xb1aMuW8pEUQZ54xpQ5eMriMYOoY/4POU0Tt2OO3tv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fHCzfKpTNpkTErvy0jrX2s+aRtC/b7GZ1WYIcSsGPMI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GZOllJfBH1+SznxM99SGaZ0ecuUacrgbTiz3sViAX363LyVlvv2VUi19ap7+GOkVOHbk90KkIA6Dqv7+vGi0H2cB2wOU8QqWKTyu9RxCuaQhKGZ3bUFjicCRdlF1QS2s9kfEDJ6dOmumzRA2L9zilNJ2gE4uPNC25Eigy9lNtjeYSTt2buFm55jTrxJ4eaMwKtE9NDj07GWjZMPurgCgwI5+2THugkgpCtyBdYehxQjliaU6MRdBuQ5vii9VdtI/j8l1FTB+qYIwTTIPZUB3dBzQ2DBUQmpgXBVP1YM1sNlZR2uD81QesCpvrhMF0gYFROcAnSQMj9NZUp6F9H3LH4EcMqw//84mFbSLsnKWegs5a7ax0P9N1+/SFv6S646xori/vCDP9OlboYL7P53xfi5XH/RTSo8V", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fHEPfHdi4R3YTKdf4dMAxJbwn9WjiqVp6Uioq+Stb5A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5Fb6rpcbfKPxo8s90/Xvo7PrItoNwJ6sGcSHftqmxZZ/7uoF8pMUp7ruLs0Xr4GwnOE9obW2IecA3ZJxN1sxIbO73AScI0fQXaEfFdT6xB6GCVt8tC7kvuYe42B3Vx/fy+B7LabIYar7msarObvd4OLT+E+OZw9ZP8e4ayQB//tbGX8dtOKv9gHAOGjXEUl4DLM7ay+BUdCfnz8I+yMFDD8vKPPivaY7DluQR0IgF23UNUVXttLhF4hmx2XQFS4wcOReQ++0XIM4dg4KY9Xf7F60PPnPHEBPYVSBFnFgEsbrnDVBjzPcNRpXsX9qp/fo0WG7clkrDtg9792KhFKpeZYpgnkJvigH27t9MWz0SeL/ySow2hLLvbU67Urlv8D+l5lcd/igt1UjPMg2l7UkO75iXiZg4Plq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fHM7bA1Y8REZXqaamEOxKgejWdhl/36WY1G6vu96KFM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B/jwfDB94fiUdWoX5uCUksSnJqUndB4NaxHn4xjuhsGBFFM1exQ7bvTtaesG6VLSIt7QvrxYknPdJhnZTIyKlIL7jj4VDiBod9YhrQJwux8Iq/CKNGpRjRRhj0O1H8mmpcH+rRuKnFobRc00FcvsqY1ANzGVwNb5V+NL1u3ESuCQntO8qfsCRjKBuDfR0ZQDJ6BBnf+12LhYieQvB3VDxSn7bfie76o5HZDgSAVHRqr6sGcqFemHo6wpnYO+94gYI6NTGTJrRLy5KX5PPj98aPNXC+v/EqKyPWFEkVNde9ptkK3qHuo5otrG0KnhqYKtChMO5tW940ikdhLCrjSr1uL9y7w9OCGpOuUh4NG/+CCGiU10VYdBDWEB1d77IR7B3oRDG/JYviekgGzPvkby5DomDo+SUayT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fK1Wl2FP8ISqbwk/wfYcWPJ0YiHmJP4U43i5mEmm4O0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6MzJ9/4R9sj7E3zztbCWTIk2UMQlDdcDKdKOY9Rgu6mFQjDEAHlsYbiMGWO3S/OkdVajH+K70OPOOBZlxjrSByxWHEg9WlfiTMswriPoPWFo5kFHpSM2wWPhKS5VpdFMkQGwMZ1S9yMYwvre8x9oOc8fS0M3JYnHD7jQcT1hVprQ2xXc25q1+VbKjOrX+oJ5doyeTAakdEnYb7aTsz6Pdx4/s1VhWWcCKlIApFgsP7UcCX1Sn9rMxkTjaUfaSu6IVA6lIJNUiJCugVf4kLTo9p37hn27NrHQQsw4mX1agj47Hr0KG3dtvGtMO81ujT5RQplEFOVElgbPfWNcEDfHPmzOgxoPy+sLklKTQtdDVd70+MF10zHmJXAIp/Ob4nlwyBOGEEM025lPNSuRVeev3M/frPLrBmFy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fKGh25Km8qsmfWN3DS2WltJQKyOmdU7uMhmr9wMR0ec", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3Zn0hzCc4df8cvgCC0in8Gye6jzTVvr9W3D2rxgj+CUp00vHMOmkGavI/SMZEhiHpMFbJhfPLjzFWOtPBk9kyxMp5a0NBIzCoKOn85uDljLMwCQ0ZnOgGau8MLd7We9j2nkhjfkZTmhL7Vb0vId8JI6xwMm4go373qazkP21SsSD3ctM0TMyCz6Jdjx3OrTtAsO1ENoS7izqxLLIB2TCkeX5DGAi/b727rrBCXW57p5eC8AWBZ15dyBaFt3QuMIDlGY0jPt+uPU5PgJDCscWS6xje8icYL4ZZZWcFmQEgHI4moEMCrmFCPRuCWk21wZ++32emgOQN8Ui82Vf1AKPrSsdj8yD6vgTaX22GI7btdvl4L85tmGp4PuiqP6xxcKxufjsv/aDzjdBMRfluEYqZeikrlnzFlGQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fMawmIBha58BV+cCe6ohsSpxVObX0BtWJMmtA7jf5qk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E7IDSUFZWU7Nd7x9/nuUzLbiJNvX+vdg1fWm+5K2MlvDczvFFvHN5qt3uGt68FQhAgskcaIhEZ2eVRAzOxHR0jnyYLX18YfjjJFVMd67GJCj+baMGCIEnCXo7PnSrzFH39OVuhNG2uPV+Mqt+vzJGYEZYPZppy65yYPO90nXNpV1NqobEeOnNmsRizglC9ZVMXp0c2pxvaMAINf5X1wucaAwR2HygD0+fxxiDlUHVnOVJL4J+bWek1AXIomse4UApO0ROihif9XX1y2b0uLv7HwsWkAExxsHxjZPLgMpLjbFdtAkJuG2CnB1PGR4vpysgnDPYIljKLlG45TtxxnCZK/wKnRf0rHgrugXj1aNZgX++SYG0VPH9SN0xB+pCdFPQ4oOR/EFhJxxed339z7qS2GsxMWsX3tb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fMrd0kvkYX9Xz4xCEO0S8/fiStM0pz20xAp630ojMrc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CAU3JcNSjhK7/OWEvgxT7e5CJaC3L6V/Bxfo4CeLzwmGCphVVI1avKJzhiwQp9jugofb3dea10gB5ok/C3AUBHmFtyUm+EjYmi8Uk0e8nE51rIgCTvI9ZH8Nm2lANITgNZFKg/MnwAZBNajkd/i5XaoFgF+NCJxqffTuD9qinEbF9rbKM63VehF36HhactgvodwYC09b4lTofP6/9xJ80TPNvP4cLKYcYHga/jPZVgUeRZqzVj03sy+o6QAJa4nl8iC+2y+66kW6FgOyK7jSWNUk4v+q9E3Je6pRl8VAPPRihM3lH/o2hMmbh3lvJG6u1WiKljO+TxgVtWsiUgFyJ58lD4sNp2FtLookBXp31C3CnNLJR2MgSgucq62byURw907RR/PvB0Iow7/MpEq3SZkgz2Af6pV6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fMworxgrROhqBiXh6Flojygwo0novhJBDYJjsj7gc6w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LSGGo1EfykqsA3Iu+YN+ewnkpuUjl6P6jWFNQANKA/eVrrkhLWX5ggxE0S/w6lZV6zqdi9dBMJVx9PqX8Km6qNEAotiYmWLzuee11wYinkdXuGjNj82h5MhgCHTjOZZ5NMcrLEsB8Fr/uARuLjanIcrIXjCVuknGK8ognvk1Q/1zC+DaOB1pjV06HOrKvvxNwXOh00XnvYlmRMuQ8xZvwHSqhyswJTz9B/yqMXt53AqZy5CzkABlDcRpe0/H6wBAVmH40ITVP5fw4g5hIWNIwSPou8zzXZ5VM7oRHZn0yW6k3/2JuXC6kBcfWq59T3OA/DohLdSdh/ntzwkwVgcEbprwM/+WHg+gBRGz6+jeMlM7HFMdFhYUyNFuUj5ah/lAy5nCIjEMKJ85fpFDD7kEveJRss+2LJ5s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fN/6qgmCRUzqvk8/gnEbRN8bn507d6/1ybCS3WkUBeU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F0n2fKw0MGPkJDAywRHl+9W+kot6cQYMgJfUV1Qv/hkotLSn1U1jAGUI3nzy2lWGPFjlNkHt99/yFDkmZbMT1RqZlQXe7KqfH2b7B3QDfwFMDoIwYRUlwY8CeJd59aSp5CzvnQ3OQH7rgRzcAj2DjDlbPxptMASS3Yeih/jqTJVD8TIBnJ7WD0p7dPSFdsDL3BQMj/xXBOf6hnswDadD0QqG8dGPX/vtwLTXEdtUW3loDmrhUoP7YoNqGViPvM5ybwkIoiyyffJ5XJwHDvX3t3Fb2Hk/ZOHMdb/chwXIJG7KDal+YKwk01BjoeO2Lw5HuMofY3FEJgVg6Sy54upVnpHTRIC+YVswCh59eCx0h+WdMcsLDusEYO3CR2LgV8AKoiuqfaGD0BG5F4r1zy1Njz4LESyTpHcV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fO59ThKPiDxwEbRJfBEv5ezjmJCLTwIqUZ8ty86Swh8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "K9J7WRcM2XZjMbmNgPuOAzC8rxT1AM4ZyNLgbO+b1fJSCMomARokrfaI+Yc4JNT2FQuzgqU8fZbOYdJf3XQmxjlqrW2CvxUV1z7rSBv3EsmM/JfgkuVl8WRiurLRKNJ23V7rtB6rOKJ3//Vx8cAtBB+NmAGUdNQfi1/6gy3LzrHcSsZVEtFJi6Sx2pgcwCdM/r3araMMAxSCJamqAhXkgu9jS12zNbuRFE3sVZB/ajSXFrwFutu9bkt+qLQMsza7bgiYRI14QHX3AsEUTIlxxwi/th7WHMC9DatC5RScZeKCHNAxQatL5K+YofMbRwH2EKvRZ0xN6eP9Qr8flbIf7tadDuDUOmIkee8fZTwLdmGKARJzNAFJD90SalMSAKrVl/qIxBSyfmwrOTU1X5K0gh5Q+xwSTqdG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fOVJUd8QfmH7BVTM0xzhsdJY6fGEHZnPx9GTmjmAgvg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fyDgN3oES3bnFqDM9L2PVGosg1QJ0c2xRObBfY2YCDQLgh1oZRzgPi4VECu/0pbepHEJ4UUIA0ZYBxPqXoDnfWQId/xLKzLjNwz2LrBINSz1IwseYYCVbYBozayghfPlg81UBc8Ky1ft4sSy1jE6z2x74mPNKLQA2sq2SmhekkoWCIDiyIIWrMYJ+ohPMnsIcx7xFiRhPTsPz+vt2ZWELOqi2Th1gfS+TQUVJaDO4OOw/cXJYWx/2oXqdtuxMYNGnoXvUSv1Cq7JrhUKWOn1j6zhyuGk6dgOaP+yPdCoAwZeLEXOUfxLpEdyAwDwvWIyitOPhK12FvqSrfDs7Fk1ENTRwTpx88OL8vIfSyTDKMAiDNaB6QpgzkX5OdzsVoCI2hn+S3/b1yp/XSOubzT9iUFpHAH8Sy2Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fQBY/vWk9GxswEeHKRY9sQfqaq7pa7HY1dWA+HSgn6Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8tGOh3Qw6Z8L3bENIGeW2ayZfMgle2LLAEQDPGiXMkZ6HTjThRAE//ETvNjp9iLXmgGvEF2YXPp4BpBUywOynOjwHpUJaYcAXlk949z7FTpToB226A/bS5nkE8BuxFTj3aW+tIm8m/Wo2vYn70ZFAte575d7VkK9hIschHxfvj2x0AxMQ1v/EcKmOc+9qfYcNr7uOcQeo1wxdk/vZa00b5zaqNtNZuXrabMC5niaZi/L2ZnrKGLbd3WN4dPJxbTR/Rwc3TWmog7h986VWvpKTSdl6fcQMl8sxa+PPWFk6ni+2qhKRL/9IAbzIRKJvB8bqJcnmGV0KFml8Dm3zPti15WGa9omzGNDvEokGnX0xE+o41F4RZF8e21V66LB43I7jFB9iFCDb6K29cBqyjs1DRJZ7ZSul9aI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fQJUSI7KppPX/AWL2wQ5M8r2gSnulK1KgPsDlj+RYAo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wclVzQBty5H59Z2Uyswi7e14t1HUyRnqE59map7vDSWCDJFTXRLCdDKgO/AWYf4Cct8M4jlOZC8kK0BB9Z765MRwf7cShHDH4rjZLNQd3TPJzMORDaRH9WgTwMhjPaKfNtCPxWTxnzC8J36Vtu0JMdGAcU0NfRj4HIcLlelN4P6+Qr7MmRt5iiYWXv0CMFL52aTF7aldVQDpcRkSQMrGbqtKdvcNXbxB3JwHJB/CjwWqyZHcBHgNOp5BgsluLTo2gSURUyqquvlCyrD1ZfnPGeMqk+ZIG/P53phB9ginxaLPJgXN8+oKeldMktp3ntQK46LjjwDyRK79Xbf3kPrwof9BhE4DN//9HEytuAsgiLmte6EXQlH/jQe9hZCQ2npQ+4bvzDtbMrtK3jXcGHw4vMY6o3jFNZId", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fR5rcraFp+dxyq+/oQjzyOJMy5COUOba50Nc9F0dBJQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PKiiLZ+ArV1yI9U3VHRQHBANREcxXey3YVZVz5QMSLE0whG1XEp8ehT0NZXbKbXcOn+gMwi8rm2sP7CKEV0PUuFnEy1NgdQLO8Zw16GRXD3up9mvFx+e2dfIl15BAMRp1FypUlon+63ubgTqGaG36tgPCykxhyM11lismdJgzeSbBYMK7Su2X/SqZLS3x0Y2SRWP1EEaiafjTGsodG1C2BA6qO8HLJkx+p99WLVmkzys/4UK+vTiQM62sB4ghrKrbVh0cRlxlA6+8whbdnQJMTpnuAkqJ6D6bPt2WRzlf2hEeGLq5nQFjYERMW3Y7I659Ok5Ks5QWhoIwXw3JKFRkvoZnR5e90X6tsmUoNeGcJ92QnuKllxgf4Ez5sdgF3ncNEpStMjktqKrghBTcf279164SdpPRVRU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fSPYH6YaAddKPxTAv3WQipkkwDQ/IYPm79VPvbMjFog", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vHOAASaRSanUEm3ddRNxI185vLsPFAC4jqy2cYBzcZ5KC8I7BQphr4qwsifYNIWg42QV3JliU9nysoJt1LpfeB29nwzFQ0GTLYdAAZotqDE1IgQpm0o+eeBBTrt28xYXYPK3LVTy8zvsR0gE0/h2hYQbm5DgyfhN6rZh/9wItezCzJ+PgkE4iNqCQaYiptB4ra6FrntapVq8zsMB105na9WNIAZLmWe8HiuxjQSnAf7iV4QRlrvCH0CHKmK3LD//m0UbXFpS5xcl9+EyM1S9GOQB2EApYxDAVDuScHUj9iKbADbtJZmFxXKq+5yY5lbt/XUrDdRr5bkaafT08G4BDcmRRh/e6u1eDFi47hrHZiTJre6q2+mutIJ1RB1E56IcC5rn871wLFNX/fF6u020OW6AMaZzgbVx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fT6/iXrS2fNBqiAuf7D5+lLhs7mfEGpR3OrCY3P8IdE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0NrNv6CgBW/MhgYNGPcGBMMjJECnJKBYn/vxFaUggmqzRK72BUmQDV9tul+5LNSHdSBN6Y11XsqJyb5xhud45RiTG9x/LL499sxxJjpd5BfWeOIDtvmJRsZXv9HMrQ67a5CZJoHWlolP/9SA5qwKyNvDyaBrt7Gw1qkOmH/M7G2/LJi1pvRqsp/cQMQL9nJRcemaVWCdweQhVO9w2Z9YTzQHUG3IflD7LOerIowvhTLWZYPM0ftLEZfU2SqCElEo14nDeL47GPCSKvpTkZv/8qeeCOI8Y5MOr8SPlfJ3FYGS8qDQIpJCng+BggivupPjpjYGcz2QF5IMfr0D0gpBIwZbr6i6EV+dn4TkTcK+u++qFVm7N+mQ2nWFbX0gPrOvRS+oaZ8hH7bJjwG4HjodxtLjcnC43vBz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fTEk2CyD+/vWpSdDGAt749VmT/aBOH4NvfqZ5JbmP88", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w67DhojgMO9bqfuxx3jlEXvp9kxaYOQZTE2naCgu/lBsf0snxfjliGvRpQybDapsWQCzWs58aBZ4/OHue1CXXeVwy9pyd/9+ZAWV/dfhLpJWTzN9rGf8crt0Ct6SxOViPPBrcGeu5DnW7R8rrsVy0a6G9RtjbcfJTmj1al2U/af1wzVOAopyCJMyFVqXSbQEosZjAwWlnaepTbX6MdLdFRSsH0p2QqB4HkWwbadpQ9mkFEuKVKYtWg1AXNAU9pRzfhbgmnWiFFPHlU1y8zAfg/QuKbhswF940oaI3K/Fxwm6yBD5fC2wE5M4/5sVxfriFyQ0A4wPF/WeE6sIii3+IpvPJwV7R0h2RkFc+BWSilg/FktdbGMbQ8//SV8YsI3eEdbZeGtscnhOSheYocesUgl2mpykSrhi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fVQM9DlzId27XjKStO2DJ/Z3kgOHruFqZ5WU10gL1Y4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m8blMnHpnRPf7YNPQJVdw0z7hRSkuB3HimjEu/6aPw5XzznXy76fjqlJsMNzkP+28got+F3qnnXLVcpX8B0zRmkLTyMNtL9xRKl2xIaM+eSa9jUwxcN90dWq2TecG1mjzctmXwc9fZxOFbTSHS4KJoWGcp8jS6S/KZKrBgmo+34zZr7oGV1FUYrvOJGJNWHRMLY0GpkG/muILqFGDWtpD9EcYmjGYSD/BFmOGTCYFaB6/UrEq6AfB8QQ9jAQdtINCum9Y/2Awwh40vsUfI93U009+3RsC7WL5x+U6XVM3b4EmpBWzNLY+Ky3FuDgckngMF2R+KnlaA4HgMEOkVfiaxqfVMeGqpkF5ECZEb8T6yf2WOHkIlltoNLzXtvusOeYFhgpfaYYzvebtv4D83dL2FOnxYSYG37I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fYyudWaWYJZfnWCZPvzYKHPNMtUqdxffpWqh47qpZ1A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CG5l3jNMc3PbvYrfO7BO7147Qd1nRmItlMwQBHi/ZKTz3WjRAFrKj1vhn8uqKk9PqGz3+liCXafSH3c++3YuiInaTrxPpsjV2YYo+mq6p9xLdc2CWxm/L8dJ5X394d9JCY6DTdUuYbiQbIXurnFb38PxQlXR53rl3OolEg5u16LVdrZXxOF+Vf8XX00HNr1xINCTnnsGlRG4celSovN1mhLZrLIEeMlaeOyjGUeWkngSiypRLOk1RNKCSeC/H6syV+Srv7SuMdCpVDsj2sca7eTdLiASCR8EqMAGunPV1E8w/G+i4KpXGIVlOFd9A0VAagUyeFUMzorWHVtGxAMMo8vwgGe7Fvq1qRWwGJK+cIEGI/8iGMnYj7jBwUoW4h8dcMFzxbNoQMowT5HS9QPQfGwVOo3Vpg29", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fZA1aVNUW054p9Y7C833+FZmn9VE9IKMTQOrqEQ9yRs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wAiO1nQbPpjZprgAf8ztzqmZl+MKu/1MHBA0st3/+vQb5YBpaa/uvCPHHFZCiFiTG/M7yJzoieeUMSdxXInv4lEjpbDH4azfmmROJbTN+b+nXjaBDBgGFmtEy4HeBDKmn3tRGrOF1nwBTRUQWl5NSzqfkQTjnD2GyFLaMqZjjkQbRSsN65T4cIGN+AScCFXP7PcO4kOJihrmvTL1Z8O9d44NHgC3XjcESCCPa87vl1dtw/ssIDWYZvv0yImve5zDAwcAR1Bt15H8LQhFGz5Zur5WHan7xVz48Q0kFPWd2f6k4DuBegIRcL2SATiXPEVU/ot6w9fbLjvceNKIAPACtkjpu0xLB9BdA8Pi/6rHJ5FX3hbTggEOkbDrnaeddE0d2/3ZnO6GmaUxN7OT7K6SVknohMV3dc1Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fZaSvklaOVks8SSan901+PBOLABC761fwKd5P91p4kM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QmXAmQJflDkeabTTEIcmd/mR3b9vb7Npu++No+q/OVXpMbcCZgqs7V8Bz1QeuBEDre4TiMxpSDU68jgV1Y8Oc+m7CDyUgbxG4tiWdE1SUkN+mKaprJx1Gv9WfHJWn2rJexHOZIkNa/VVSytYMP0N5gMQ9q0ljnUZzRlWqXhj094uuFAqX4gfIyUPsliPBBGLM0SRXOIA9U1qE2vQtPWL7ZYSD5/iYDfajrmflEE3tuq0qGtrJ0dVQC4UmU61qCVbzFx2icYg2QfAfJsjPPVsAdsfonISgmLlnsAK7b2yiFhmGHiBuTQ4VPYlJR/9mnQIR2o8KYcm4c+Ug0jX0o/N6LXnkoe9tA30bEp+dqkBUYbAJCMDIDKawRS2U0EKok1FevYIjtlw03IPS0e+cIJmJCVeRcyxvj5b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fZj4J5mn0grKZO3cRKc4OkSb44wl1dzjndbcYAxrCq8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UVzEe9KhzAuExNfCrlGXBMk7iEb8VewMHDlk4DX4engEBo4Z2/BVK0lwlkSsubq+SYyl1BO5/OV8Hh+LnvU43w8hjNq5nX8OhWkrnqNECrq8NcY8p7yXNtZIVhrhooN7wRYPXs/l7umH4eDzI9gbuQEImmTfPqOXCgjyjqu/DpsD92eMlLy7e2HuWi+Q5GSyx8zFAbHHKX9qDjenBNhpVpgPe32PX2KlHoFEZxCbAhTzsj6Eq4MbId9aG2sPjY10m6MLn9F82285j+k0LLnLu9FjsMBKnN1+gmHGNg42Jw/0q2iqPvOCV+eqfrMS6nXGiinNlb3t8P7A/gp4ZW23sQudDdxC4T1COVAbmkEitwazShGRk6g61CVPwPZUbLYeS/4w7b7E0s15brP+c0uU4sb//S8uzM/7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fZkJg4PZaw+z4BuydSd9XhvfuuP5o7sBHCFYKBcGJ/Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JxIbE3obamr+ewC6hARQ6dC32k/PmBsTYcp9HssMfGyds9hsiAh0izJ96yTJy7jpa5BFH6/ii9x0fEYuOiUldnui5CB7olN3jxrfl69JoNxOUuNFFirfrCqN3x6UIfhZPrAFiBd1nEY4DDuVIFug6vYNiFA3gNXDKuu2kbeuVPYUh8Y4EWgepyutGJRRFQ+mUfZOgKzzDeN44IR7YManpF0YBl65Vs9ZpCen1R5/Aq1zPCY1umxbxZb09+p4elphMocgnZuH3sJiraEryi0Tge0o094gf+VMaHOTXEuIZ3PWFxlGApLzADWo+NLAY6lDENhqfIITLYJIF6P8A87nAvyWgWVrmD7Aue+Pk+hAiVmWrasr0CE1rW/PKxNqhFvZWbfkZ4MDcRcT9rj95xpPF/PZ3WrrXS9+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fbociBz2tFca3KCovDLko3zMlgLNpcz0a67fneddcYo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6QB122rvSzsC+U2kIpuOk2XGLRap0miHiMzMQnuaxBEYTpOPzgTRpOpFF15Vr0FfRQyoit2i44vMQQ6jF9djEMnkwY4QNWswxaN2+kHYokH+ikBgZhPFc50QWIqZbdv+UNabSIAXaNbetdGIYtBN5UWgFDmEqLydx1EG+DEDW3CjDGmNfqhun7dFAY/gZGbhPEJ6SaIC+0WyfL752ifPyw3AC9sFth3Xv4ZEzR3HbhN/VCL7c7/KC2721jGC5KOxNq/jS+IGIjCQXAroPU2ah5rBefXgu9Pvc0accv9BWO6cVYlrpXtEAB7JYPQR7U7L4eCYDIaWWjiRHTbdeUf2e4YWkmFEwdVRF2OXJZiSydU1COutxERCpZZ+qFGLZNylUSUN06D730rHmern/gwFVe5AUcv3xGru", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fc6P7sVe3+qNHilt0w2qX2AbtgFJKEgdRv+FEXvuAVA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rVfVokwgLFbzvXK8Woo2IYDbKbLAwLgtj/k3ZNUIDEXVL/7yU1tSXXzzGaOSDvajhQlFSHyl3FukDnxjVTJkhuigeYSOQEu12dIN8SdGtsNJWZyj4DKEVbHQrDj6yGsn9f3qTxWqImhVcdS65qW3ssmrlbM4TkKVtVyfnK1FFMJtzLBx2YSLr+fOmvvdcli/P51u3tqlG6NjzgY45Dz11V+xQfrx+VE/iQrKjdnMnfO/MAKfoXecGqDln6hpK/xGFIg7eOmjwjAuP53f5rJ2fnn/Zo2wxaSk8xgurNA2lWA2TFTwvL4CYQhu17Iwo7AT0OGWu+kUvVITg4oeKCZwpcPfZRgN72lPWtEUNR3QVvc8ALuWXYm1AtWE/4op367j58w1fIwLRo7jNh3+smUIIvXk1WocI6OF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fdTHC3XeScMN3JNk4r8sryBOTAj3AasXlq5QZIBqP4g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u/NcYSgADo5xdiCM3i4cdBoPSlTTz1okS4SePA8Kr7rfDgwEdt7eHxw3bUOaKYUedq+N07NBvV15HDsmCTD8Sk69KIKUF8C24P2UXZajslDg0GpKyyuWGjPzfPDO3KrztUUsJ+BDzBwz1mwLhTLYf5nNDhxLCm8F9CVBZRLb2Shd3v0kjHCyJGuvpnU92WmWn1mPPpfSeg1LugXVO1vxdBIXXsjta38sTgpXbK4wl6Wo8zCJ3LDwyVC0TUzEuVUUGWjTH097udyo2HGc5k8EweCnPdjCc2V0jvgUBaOjubgCv6ya1VyJoRZVnLETK72rX1LG6tofiuXX4mVsuc6vN1uitgzCGTxDZAtNt16b/HVNxVlbUyDrn/2UVRQkNiNMkV5JaCWSAktmOIHFB3rSjkg6i3pi794w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fdzxXJOWD8v2rRpKeeJ/lBPmvtQcHVicB97cT6Z3W5Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RDwz/Hxg29+Bh8A93R5SQOHdQn4pSJWeCMdZsRVuw53DInRWzftMu7RnnZk1cG2AiRaw7Yssrp4cTO4u2LfxUG5wX7iDKcZkWmy18RAECNhOf9sfImkpFV6b+hJdRefFtIgakabRqlzvRRqpp28EgdP8v/LZU7WhgQeVGUkKvMlvEIuDA26MKe+nc3V4iYMUahbDLhJqrZY50Y5LaQliUUIMbHPIhIKRkkw+KGduHzqmn/qFe4VYIjMg3siOa+fyJxFN2XkipHVppP8mO5ys0Lh1HuSFSYEKkCmNISpuTYRxIGf688fKxroUgLKijePO3uctIqrQ4a3kZz5aDQb9EcWHKvfn8wgXVrh0Ka+BideSIZ2mY8eU9bGhaEss51CEJtaip81cELc7dzgY/ZsL8aqbFzM1MRnz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fefg4Q6bYPFL57ijm6d4ryHXifbMQkc9qAWpfK+E/MU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "60pvqJllJjf/qGhWYql89wws9gK/VsIIb6REXB1b3AuTRGx0iX3ovaKIudjJpWMNIpZ208Yx6ja3DdVlxH8mf8cvv5j/0irycZclnRhZNApxjrkzRC1Ey3PP1N84Wczbh369ZvwKI29HGLUQRQpeBzGn9VrVE1dGPRkyW/hj3nfXhaH/R0i+/VHJOJ2rnBPHJxmSwBFiSpYqDKJLoy7pASkn/RoO9CXaE/FXUj19QrJ8MMJnB4CcgAuwfhhrwr4zbG4l0CLIx8NwySmDRCz8EvibObfR9Dvz1WuT/Wcf18IOvJigqOYqIPn4dFcbQ8wNi3fEuxwDFE5G5H3B5uD2PbaFE4UMWzRSbhUC1MTrWW30hntAi8F3OeRsdXE+qKkzbT31QR51/Tduntf1E0mfqPGBCI2VVrs9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ffL33XdizTLWxNFFBhWMuDa7wfG9pGLG1L4DdVc7nYs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Qb08wkCg2Kvug3Eku4EgBY5PfS6HXxrMzVwoAz/uOYyg72MiEfyVyuxz02o54CZ7WXRegNZ70O4g3YVJQW45e2yes97VLpDXuurVgQuHfkLXBBmXoIh4lXtwEtYaa6exx8BOu6jqtJGWZzwo4cvk2g34YNx1T/IT5D4wM3i4j8heOqZX+dCQLW46obItg34S6g+wI7uEzGdV7yJirhkIgoDb0kQncGHddB3I9g7LtozhDRScGwcatLwA4XQsgeQQ2ZnK5ZAg5ejyKMdddFhD2r8+TGdLR8j+VQJdX0TV+rvMlo2Ud9sQYjEme+oa8SEHRvtjmmKohaj52A+pnhjRO5lqZKozjl3UyPe6yDBErs3U/DAT3UCcWaLkdtXj6HEPqIa3F0M5Smd1mzDMlLOjZW9pyiC6zUOD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fgCjlZBfE9IxnngzEQY1mLTkiXfHky6+uYX8yzygpFk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ui8884Ia04dEDFsKn6AuobOQ9c0doAOBq1aYT7/tNXBEUZELDX5zPFktToBq0qWNZ77PfvMw79jqfef9gZRJSvvFmUPzwPhYaDlt5jW9iB+CZOml/9ZglhdZ3zJufsuGxO+2Et9kOfYlnIJ3Uvabd9jgTzd5ARysRt5XhDP9V6DuCGizw/mkrvUVGiRgD5siQUSJ+vtVuU9tvIu78ATGSRYwsvCHQCU1lDP0N6xF5JHmzNMUqwepkLns0lvE9bIFligfj7gTR/6ORyBLKNWfKmrwPVXohr98/hrk8NQ897DmMRWR0KAVyZRiP2QNaLwhvWI2ndWU4uS0TPLjQMLQlFBngVe098m0I0j1BEVVFMU0JKFm7kT4LYdJZvmw0Q12rNGwRt1ZP2FcH71R4iLKP4hp5LjFBwSR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fgrBbqjUnUCs8pTvWelOOymRUQRyalhy/u8GT9GNAqQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7EL14XCkkB+jRI26tRorez9Ik1BDF2veKWVBzl52PzUgv5RDs36AaQ7kO0rW14SQEqkvzXHJr5igk6ptb2BV60a9WNeykF+dSNhgROXi9/sVZtS0+UyUIvw8JUNfDnkNsNhYKc6YkSLGB6JGmbRNSF839+NdrEgRiIn+xabxs2Mned0LnwKD++bX80htqQ8ppYPid5XM9to0cGZTA+R2K21V3vF1ueRIsjb1FLYM/JEFaR73jddXt7ouFp3rTF3ZhL7szwaS7dmK+Hi7Ng6zJiNw3jvMsXWlbjzVYDJf2l/X+Fuv1xUXbPSdhEgAL4NfKMFRFIl9ntnIM5qB96G7Se4XPDjNbtTOBsNuF6G0mtwQe5HJs0MF0cCyTPbwGaAE+ac/x1hQKwhu/1eFx9EJ6JqdY3e0QFpW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fiDlzpmt1BwobH8j8ZGlH7NAA41rtgPNnJQjLT7hHIk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3Qut2QnKzm9FcWYiX6lwB4savovvQytycx57HSoZLHtK1ZZDIf1oBcVLTVu+ADncRcaogHnxOq2vN9dWJEVY2BBhL6yUMbwc+fyfPsTZR3UCozrHMlilWfynDq5uh5+s+A3C7Z6pfpEw0iS7lkC64gneGL0WyekQ3IoHjmNR28wet0v+4RiRSYY11oRlqnXrRWMCIRtKgfVrjcAPU4hcaN0sJ/2gFUNEDYhEVFWAuiGJoyA1+Xv+8O4cfF0qtV3NCjfEVbkBHIgmM2LllZThXjY/qTB682F6NCoCc03CPGChnjdS+BlE/O5njCvazbH7lOhDqajCTK79d+jy4zpZAZmYQasGMwjbSc9kJNRNxaaS/RvUeLprZmB7XSZAdjPF3w3wk9dveUOJ6Le4wYdyp31Pl5CHNviZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fjBKkM9O0cjzE143w6CBsHg8OIlTnZcygUbUg1zT4b4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PxgN8iKAYW+g5eqd5K7clopSy0K+XwnDz5/4yAkEhWM+oQ85f1GIcHb6po/vLQZS/cI8exx4w9TxC0AroaqVJqgi7nRnTqp4fMK7S6yVQ2WH76cZSWW2JueToT/KmL8eVQcFpFDnR18FiITprFTJ6v+XS2OsfwxJxYlYJzx4vF4Hy4YV+TkF5v5YwsgKMaBSMa9+agKqAXeOdO1FgRFY32lN6aZ0/b90Ku4OFoaLniN7wSW7lXGDQ58GxWXC0x8nCobtxURt+BiOIeIvOB+prS2imra1XK6iqoUa8SXv2pwwRnvb68KctTEyrkQxcStT1isNf4WW0cvnAiqUZwo54umYsYfh409rPLHam5urT65SV9sGG33usYbT87S+0mo5GNf5YpUroxYbyRulpVXSyUG/T7WvKW5+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "flh67LLVYq2S4kkc4IJZdjADUb1H+V7N2IaoEsXJ11w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uS3w3LLLbsvtNq35IHUzO3eZ8krLV6H6tBpvxVv3ZNXFYxH6y1RkGSyTta+eWg9x4ghc/4jGllV4FOqtPYmLx5qU2juNKrif3ky1EIxuxFybCUO2MFYM49/8YY5clW4rjpJcnDPEAW6qrR84BL5VgQs5nx4vuz+IMBk0PFp4UAqRsqbm2j2YrNVF3+pw+K6y4o24jkUge6LtGwebX9POHW5gdL6N/5qsLqV/lXCoFfCsyRz3wpCyTS1uC1/KWcvTym3nmfQS9Uj0R+D3DqyhX+D0NibZinL1NkQ91flhNzRPjROedN7IkoTAOs6w9ApLG32gGimtHQodqeXXoOuCogutqny4eXwOqtxpV2SAMzxXmxw2v3ByoiXru1Bf1FEou+sm0aSZOuav7uFkA7Hfv4IPJKRdckHv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fmzZz2bsYyT4u9U4npFy943pBIHiGblMzxu/s9+aFRE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XUxP8zrdqIc8XL1PxYcJvmctyAwjviYP5yEv+ixVoNyZDjTKMhgwNGEp4uybKaQlFy1so5/FZO9PpLAy+A1/FBaR5PwUuiIz+cCCUaVGF5Nc9Q9qV/V+HuIA0NDMFpKMHlasE2y3GY3Z9fcFR8pl0Q3XM4soSpfTRGfPHm3MZIces6KE/8RMeCh4kaBXoYL4uIYfBjiybYDmBV32kc+Av4PWZc320XdMwU+FsHENiJ+EGOV0AfKojr2MU1ZSLExOOYMKAs56Ngn0czBw3aoHY0OBoOYiWFWB671PntqNryhQLZz/N7L3LLJztFtjTXmexlJC5cqB8haSVJfs0l+3sbJARPunp+FBeQA0043lcVifmWwRv2vImFzpmpHWflnNIZCwYn88SjQaHVDemR3WsWdgRKR9I1n/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fnFDcLFtyFR3LgCC/xXpWBTsP+5twR6T9Kmxm+oc+H4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c1LQ0BoCeZMAjBdogtoEL9BPmEsBQLVj+25xwX7jTc053/8+WRs2Lsm0S43mYTOW4i29MhE/S+iyfXuK7lStW6JLBj1+vCqvxRtDDi4I6Besx7FNdd/EJlHlVdpvYHVbiz4TZ9AYT3MnjKAhKAcei1OacQN4Lw/yjKVzHFDbrhpsyyIrNgYQCwHZ20PVsFTETSLcZMrMWuY7W1PZGOi0Q5bKWt3qPd/WzeEqmXnBgaxMyO/A6iEYLlw3Y4XK6ASYBvxGc/uV+EVgZ7Q4PhAUKx4lDCAto78G/MUwNfmybjl2sxby7tDlgn4HgfpJtTwp4qDwx7o42qrlVvSwFiKZnQo9qn4brFmM49bUc9MS7h+F+UKNY2W5wB6MTjACsCdNjLbaE7m8jCdLTKeWuJgey9g2LbJ1nMDQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fnXN0kff8qxY56pa+bN7TrY5aebX5Yj5ZPCnrWWApNg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XtoueIDQuFNEPoFyODetVJpvWAYJrxpnUtZ8n0aZJ0WA+uga2W/V09mRXBvmcUq+qlQKFi1zqdfoBHr1tGWLabZelZ9a9DSh2himAdKyFW61h0K1Q2Orwy8GDwYdEuBwKlEFOqR6kwEmSwoYkpq3SHtHe/DTBD7vaxpZqWhjDiXv5yhWJrVipdb/5Hg9Ts/sDlpBXVhlfB+NKntVF8Q5LCiv0jmGr1Hi/70mrpZwbcMnCg/GiSzy4H4aSsqmxqQvUGJCpsNcRBXn2/yAxIgHs/jswtbrdUc5H70dfbFs0TiXfnkdmOi1//bcbX998orm/SG1mBBxvjIXYIZmTTg4X6xKnFbhs0jBriYpMqW5hOoumELgoexqpoAcFqM6KNz4bn10rGibdRQQclfN5CqOIG+j0/Vk0Dr/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fneW0M80e3DFwO7siawWJdK30xkB/eXW7anKblWQes0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B/zN7C1/MO+NrOcuEkKtejtXNGLXTEkmfAUWzBKSurjOCrt7cROUItW+EO9uII+m6YV5ChusYDxXNat4HDubImD+Jvx8zen87jnC3Li1qhxubSRiZUQ/nX08lUPVS8RF9F3tz1Idm/2Wg4AMZ49tP/vTa/gF3RL87K/XUPzRltesGV7bOnBHBKMa0UqeIbPHEbH2FH7AkwCjevnxtMEyUFfmZl7V/3ClAkQ8OB092y/S0R0175SEBz6cw9MUEB2mP4fa6sKpNmEs5AHWWFE7QJZ1dgxwNuGwNP/1a8ooD6DM72GhiTnzKPo7ufnw47v1xBkoV63bsBLxYyRuCKw0ck3Ywiru4T/yjT/WfAsXIPm8V3V9Q677Ag6Z3lQx6PH68VThTHrzJ8eXjuW5jRGS9eS1XDLeVOir", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fnrK0zGGamX3otqpRaNNbNPlCGDuG/qILTL7qnz77N4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+LRZFkI+iS3+XscC1uS1U43QEVYRyhx+0g/ylkMonEOsd3uQ4u56vzdPqUIT9ovMjz7UmPBA28lvdhdwtqAxf5lE+dCUNS9b+tSOY6yUlO3Pq9Y0GZTkew9eHIrbeE3es2pYtmCTrfl9z64VexnC25pA0muU1fclIKVjh0KdQhbRhXK/U+5P19OawkW5fMGGH28om/SS/vNtFUeOzRWMHsOsjafcYEN/A7Wg4n24QlV0xN8MH2munmj1k60SBiqYGZ/PH+/3HqzqHwucf5SD6j8EQGkbE/MgyCfCLIXo0J+t/EzUqZZlLco3xmDcxPsuCTEBECi0XefUuCvy0LTlRHKRGR1unjz+78zjmFfZxA2IpBQdwfBkiuajh3Y2oW6zo3Fu22d3WStwGDW+MTrUm7zqO0Ocya74", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "for6X08xMWHOVgnR4Xmm042Y1w1s6sRF98EGl+4a6aI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UUvbypQqFW4ZUh/o11dsEWStTPY2dVpIRg+ve9MdY5z5j1S82u3/7Tyv8MeNweJi2ugqqHMtS4BflW7neteEqJAipHafvHSeUPPWvoXwbYBL/mLMcL/pJh5UBAx+H1GPTo78h/P6weRba4ADi1TVMFX05Neg0RjeX8Qoh0JNKpXJZQC+fPhid97tv0BiyuSH4iSdTQA9HA7tM+g04RnORcJJnx267/J3itsNXhkueR4caW8xBCrmOlv85RCqWEb8ZhaMxZftX6VFwoTqL5E2cKGSGrZFkFY/pa3L0bVbCfvvsePTRPD/pKDU160TnESdQ7Exlmxr6NAaQs+Xclx3dNkgvOznx6bSD/PtZVuFQBsv5t+5YHYZKld37ilHoiZyZv/AD8Gx001sRnNbfYzNRH9qr4up8po7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fptskBHOksJlnNZtqVUqpE8flIHfL7hbK9i/wPS8stI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N2+pFKGFfKGfdxvKLFXDcgINTlkPmQy3Y+wQZO8vnQNZxVUVXPJ/0n2X2LOFiAbN3cJONcvwpeSwe6YrMGwwi6AwH90EfSg0f6DpiETDZC9Bl0WZrUQqGTzo5V4iRAGTA6GhDXJu4yoP2qmsO+1UJQIw1KWQfpWcoY7V8Vj/KK6AF0zc34lyetuzkP3AzlXK5S4vUxwIweybl5lF0YuoMPqxpsugPXZ3CKSor21gSINxwQaLB2NzSKvRdsOgExV68qTkLPPocHanTa/kS/PG4zqwHOzK+40I9Qqu7Ljo6oroWapIz/+XNTuuwuAH0/Rdts6txOuW4nH5IlR423AFpbu+x6TcZUpDLSFjx+RBj+52E2sLW/qfrYd/xDFzk+SlOX+RNV2YDLgIk4Skx0DtFuocmxeadCnm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "frRYFatURWXMYWj5oZG/DdTMimnICOmIvjkstD+rliY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tDeBAPY/5EtTN454VGKrdUZLFs5nFn+oFbNo6LA2+w2eWtLQF3AXymgcka8TwVn0JmUe01tbEW0V67826YPU+gn4/ob3CLbwkyEObojTheptwjTKVPch7IWnu45EqgeJwPYiG1gfx/olNI6FtEgfJEg29qtYy3SC7UTG4KcV3VNKghFM2eF6pGO5V0Gz+4O0kc68Iu6WVQ1ssXIThvyjZrD6DDfML14IZJrQ8VnypZcb7w3YmpBZnbB9zULouifbScloSRdIL0skD50pD3Lt8Ek7ErgP9gTP+XYqJsjT64HJhKWOALtGpu2lRTtq3rGpGR3TDvRjtcUc7KciwJbQ44cpl5kme33Mv98u0XoxcZuGNuL2u6GkggfyIXVPEB2pwCB7uf8/wRUGxmwXkKqhs4ejAkS993FW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fri/xzHK8pLzlMRhHojdpE5nVjjjLm3Fb+dx+sHyAdY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4tZlxs6pw+OSy7YQ7/SSir1iM433DOuKW6qElWGB1tnsJhG+L+j70hIVd2Whu8sYvjN8iJ0K7Zmv0LGxDtaOSUPf0aoXzpU/FDWtyH7PDfvX8hgtJdU4a/lK/hz/IQLNTO8jOsCKYHEs8vuxLpq32GCXvKNKqc1fCY8E3yBYmqEx0Ejxjj7Hr/bCrvQZ0THdXPahqa2zfTTIWHpakU3mP4K+2vzADAICIRz6PYk75jdlKwGNC2rOsjHK+PmHdP7F3rZ0Ov5qiNwrRg4Am/eGVWXhmK+JsyLtOmgDWfvrpzkEKu4B1v5dtjYwYW2mDT32ANO+qi7Z89tXwbqnjTWx9cIC1SLe4+a5AQG5KE8TNHw1MF2sTXorkSPchPGRG8JP8wQJSdmtxAkoCGxE6G3MZl5DAYf51EUN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "frwhQCv+HwQiRVIIEY6Qh4wCkKQb9LAPNnXhVSr+gVE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PC0r1yaY3v5UaIK7aRSdjSyhi1/7e7GHAY9xkwNPWa8YqEyY8qtSdkGmRAlIOgHBWCL1UkGzJ8Kljd0qfkv15UgpIW7nwlSxnIPwRYVFQV4xpVakcZrL/tE28otBYMazmEdG5Ev84mFTG4ZMkVOnpaQ2WkJDf/AOSZxPgQypfS0JqI9IVbuwA1wwTFJDNvYetUqhCdd+KoTmRedpUuZT6R8NEfGVq+xAHtsHBSqHtZYfI/ePmvbXEDLwD21XP+DOq0RmLP2I4d2h5SFT3mFOK6rD64vmfHUiybV9gE0Z/RJDPU/hMngESrB+jFRsqbzYYFpCpSWL3xQmB66cDmndmxPagh4+0i4tR+Z+8xu3BKNm4QHBJY+ntqRGR+MbYsqogMGVMVldLGRlK/3bMFNK30Sy3xt2UEVA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fuBNZhPB64L2nJfJM6ZzM04cePCa7QDmTiJzev1McGo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xHFPqdHscm+92BpugIjjpG4z9j449z59IXbOpgoGTKPfcN93Gwce18SDkZJ7doWeSVHs/v/Z45leZktIl2KRFiOH1O7alAULYYs578s+9MrjRoRCbHQZtvv58u/o+W3OQ0Z+fYSOulExOQMGKLfUN+Ci7I1AJBEcK6i8kExTCMG7kGPYrGa636ihCU+Akz0DSud2hODbezdgtTBunnaqWC4M9S9/aZfQn2oxsl9HC/EtzF2j75p3WJtODCB1OmJO3yyh+LCPrbqpiMI0kWZAvV1lF30gP93k2pQmPYfwWhfvwUxkS9E0LaPaI0Jo9XVvjFesh3QlKZWYtybhZ4DAqR1eZspPRUzqfvmhDzDu6QBzQ5hgiJdj9iHhQi3jsma6OmXolzsiiyAM9SSEQF+2Tuvm9P+NQ8l5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fvC0qySLwsmBDClr2kAMxapvU30ga/WTKmfAl3QeuNE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wHwOnF3TyxI4k9tlxhU3u30n9LlB1rvsaWuoHLfFrEVWGkwHep9gvz7llWlVlAaDaC6MXfvda6WDbzv0yiK08hhcxCA/Od/lO+ctwwh1kVZjNNmO6ol2Gv9ibFAsze0wfZoTjjOU26QIdlLfRI59jaoiQeMtJlxwPWToFfXMw/21Z4q/XYY6DvtQ1D9bKYT1Zq0pm7fyR7nNiPVd4xUZu8vSBs/iK/7ifm8gMT6sTnh3yBHN6sSfMzrh5/5IXRa8quhsVTqboVp7Dh4s31B5aNNpCRiSn6GYPeD6O2kfKImNf/WpoE8HFcvUls8+JWHiV96+YN8JgwqDhi8EU+VJAlxiiD9EibP1AYUGO7d/OB1UX6DRWweNBR9Ccn0v/qcZOnPKVajtPLD4JnCy2s2WszC07EK8YIPY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fwYwYsKCnf8mIyfK8gXnYDqzJwhYOgqRSHz7oKS2WR8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ghdMShcSXQ3D7697A7f+pIvUy9phgtavjKMRonxCc+pcog+ElFJqJ/Kb7qtqphb9DkG6qPJvIMaEFniptjwZLVJ4LpuYVLc6wlJ11w4W62H2CdKVIwmAxmcqmQDhErxqjgl/K1TcjQs3Lz7jK/8obn8UkeAWZj8NOvAuPTaEh/6Yn5HNwjZUUZfdLZKewVci85PB0g+OyOqLaEbpiYluGcoqQ12QL1pkCK8f9n8TPhzJc+uCAMrurS7K91x86rDbMaVkN6f7J0zYxLXqX7Ki43PVy1eADKLJVLFHOe3x9+K8BxM4a9cKYgl0tgGnHlZ+YElpdO5bFb6cdIRTLJr4ivbadJU3eE54STrjLhPvoixT5atBFXbkluF+CGINv+1uSmy0sp9sAb58ZIaczq03GAOZyUN0h808", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "fzunsUMGQOvpjpg5hV7Xu6w5yCQXGsgobo/9VHt22wk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YPr1NQmQpJnkzhaOzdmcWcD4kqczvTHByxkXmcUme6hhRV3rgWWh1mivr81MzAqu/ybsQzdcRyRTSQAN7g3aph6BNRWme3whVEZgq8hf5Bt2bwNek8API9b19vkIpFx6MOyvdum8wGG6CW0l6ZxtG6aJaZbs8xV0nzKbkNFErD0wX2eTcmjyyM3Dh3zXEZE7B7WEP0uWBMD/XtakvVcfHiTz0bBtBy0mpQQ9AbF5fqdjUTHubY/G3NyH341coEAePteEnQw0EocJycYga4fwI9IFlgSQ+2RSR5nUZZVe+MVmznLtS9dkhJB9YwyglDdNUPp2k8tmV0lgRVt+omn+B586mnpG1GM3XuylXChUpHMrNLqR2I3TCN94B6T6YVZ/9bIdUIikj6XiSgtmewu+OHAtGmtQf7YR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g+jKXc7cr3fieOvRu0PV52e8SovqT5qf79dGQdRTDlg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GfHyaxYWq/8kYwXgxexOMM//e3QeZDySii9uwR//1b4RKzLYfAbHEx3Ht4VeC9IdG0a6PQBZ5OMCNYOxKcLFDd/RX35M6ZXPOkq7gWj5VqD6FrzLPtr38+ezIbmsPiqdAlG/uYBHGeQhAxyi6wfRHKJt72hUIKo7rd2ntcz8qKbdjUpmgSRbxLTzUHKNAHFdJ7jsJHzqi/rIKAlFLco/Lx6g5JCGmccPgI74JzJzODslsih/qDBxM0NkQIc7CyVAqpRFfHF40naRTqKO7XfW5ugarzAPcvvhNBo6NV2Tj5u2YNVN8cGHb0++Yr8hmRUrjyyGvXv1sLZG5yMUY2Xy+zU656h3qbyzMtR3e0A5D1GHWaOwKgiSuE0xWBYisSrSRp9x97wkATSbLxAOk1uCpV/chRivgGq0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g/L+eJtpDXb4qAfUX9CJtKDHaOUuXF6w1VeNoZJoMEY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0iD8pHCKOcY1g0+sUpK7K5XZMvMCABrsoF/bHSDukpyrgB3zTo3rvd4ISnYYgtt56ft/7QAco1nGVNjsVs32DFNPd4t1xlySwm2bejyKt4z5087gjIYGr/cwGMw1JC/Xpl8+a+H1+v9YMi6oBfBQdjDAsoYJPpPK6CWpaxR9J5rfF0Rt8CX47vhMBVIoxOUx7kFkIQqMa4g21F9/zhrCGEC6HuJvcPLw5ZcHTLFQKm4wIqEVqVYvDy3zJq4W5RWwamMmfCI6S7T/ijr9YHChEEiP2/4fdk1iu3pdCKgEakQZSkrm3NANHfZyVwo3vBE7N+ubIsspBAr8P1tOJ2hktQJGzrZ2I/8Z16dI9zQ9Br16l/c4kgwfPJMnhNlleJUDMO4gnRDs50nNVi6hIzm2ymfCAi4jUrTu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g/cxLL0I78n06ZeG4idXAguC/mNRjpKNoPNCDNjGYWQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q+n0w+sWi7jF9VDOnE0R7VWGlIVrgObPjmb7ZvNahqaeNdZxUJhC1ytaR1L+aTdwbrJgV/6z++eOHyLQ5gyqJxzgI41zgBQ9+z4uSN1Ursebmb+S0e/k9SVF9wX33V9P5E1jTEywXhZEmmWtVQuTeRz/lA8YlDiq5QfhikrJWxAOzSADX/Il/GbM+aDeh4+iJcQlELd3sGRmAX6H5EA659DwQ1GfyG6uMjCxitfAt72o4Qse01YGD0hGQbnTJ582+q66VTw8hA5PUpGFZOl3Oi+ox8ZJYZz73LP7le/4qvHO4q3rjsMCe1JUjh7g7U6btn4s/biD005j0gU5wtfZPAi7eyNAVg/d4QaAkfD/7gKsKw+Uemrg3/x6ep9CSHpWw53TwIAgIb+syNEJqJzQ7KUS+9THc+aH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g0E8W4qMUSibwAXQq5uCjgxdONbOLUqlN6Bw8YvodEo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OqRc3j6X2UP+NOa/QmESSX38H/x8LHA92j46B0rzSatOJ/Gx1n7H9xDixWPnHOAF+EZywiRNH18eyGRhbqusvGVEUdv2PQ0ch7kTf1B/7O9z/0eGpNbzQSXGxsKUjNP+VgKhHucmgeZrEnE6xXIy8Fv5BXDWCZP6bEG6X8E0Roh3HzoH6K89Eyu84N23bC+w/0fx5t/m4cTjmW6lBpdPADjFy0AbEHiTvjFgVVqvF+5NdTtH94HOR5jB0BGFgaqaMuWAg3sEJcJY6lBJR8AsYjWKY5xJnvv3b+bUpsTLGBtseouvctyNBcSf3/hmfVU3u9fs6J/lXHN7l/TdnmuLjiZGklKqfF+L5gx/cWqpoNvt0DSreMRg2A5wWGgmJPhT/e7PhDQ2QavsCHD1hUEZb7xB5cYZOLGN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g0b+i/JrHoDXYFhL+CsfkgO8j35ygdJsQnSmp2RIa34", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KbT2SlEb+BSbfCDFfGKx3+5KnPaBqOxR8r1t5jaAAT5a2/r+UzweRRBhoiQJioj/tZnP7BvWEfV0CR2VUlDgST4/oRzD9NlI+N0hrFAf/JKThKEVE3+mP6ao1/C1xxgZ0hGUM44cKTf3L+aqwUjhYj1hh6W1ulZ2nnI7CWCygb0YbsCGBatosQ+vGT/QHxdNrT3ELND4NvnvYZDZcFgT5ezyUyRanosAqL5Na5/MEmQOeZ+c7IjXXvgtotFLwiY0mNiHZyH3rG2YpcxEGW0W0oqtI4qULMmYhJxQDTBKhmJOmHPAWwkSV0sKkt+RdrkTkbZY0mYyda6FXgrqAEfgDTNneLD7ocp7XBZ6gqHAzeFA0dgqMQcEHeKcQ41Gl6nzmpnn7ePf3AkIU3PnKr/62lqU4g41ZQm6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g0oJQbwNrN/ygT3OOUqE2+qcseAuOCdC2R49gH3MsdE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "atljY4Fpwuz9bXJJE3sIiHuggRghtSD9x+t7JNLv61R9xmJULCChQgCev5bWbTlKcHAmIciQ9gI9MihVvMshMO5uwdXlrEo3VPntcm23JK7kAwZ8nOybjSH2NcuCUIn8JozTW7vJ773WDYs114qW2ayF/KlxfgK8UMg1exg29/An9U6tngP32LKNLzcXsx7RXEte0nKNeXlo1tL2JiWnXPjjye72+Xu0Tjt+ZZ4AELDfuhilyW7uETjeB/s5CdWr4wzRAjKF5LKdEd/Kkh7lRmr0XZqDJBtVUQ3n304e3u1bsvfr3lZKNehTTE1MEyVCJVLiQrZeqezjnNkIuDXFV0gmVyhQkjwSAmvkOoasajtRqU5MAU/Tinj32GOaTV/WRELstZdGHdLvscogT1bq/cjgHLftYvP+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g15ZwlNRUW0wnh4PRBlUlT1BAXxPsxhFMBiS9s3DkzA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RdQV6QCEAeJL+xJsI+e2Aftc6lud5zP0IZdqxNNbgyGPD9xqJ29ElCMAzIZGJVDZbK/NldxWiNlHl2jCC0BN8bHPu8mvUNN2vC6F7wWvNYd5NJDnZmpLqFWxolEntsIMUXby4lIFolfk4QNf/csPOQ3di+TPfDSlu53EzcDsSd6Yfpa38voia3dLVSjDdiFDW7ddTybWtWMb3Rh/mxxzd9hDAJEGaOImbXo3YRUjKDw8N3s8ZnxjdigYZPmLNcWUf12Ym9yHD21jd70pk9d7ElB6dNnA81OzkVGwKiaYqzwEkTvNiExtx0Q3YEa5MQMJ/BJ3vG7qQwBuzBnkm133V517cntxHJVOdtyahPKTPfglzDnRjS22MVWjteVu69Te50p+FtDDYqcsqkDj4YaCiWyagwghcaEx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g3LmbkbKtGGU/wUTjoyzMTh/aLyuw4iO3npPwp+SFvc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GIRPkdv0//V8P0sAwP6aQxKX/gMCakmJCrhwEg4QQ4ji0GpkpwK3HqQnH9cIpNuHQn1SlaKEZ9Wnql/H50MaKXsnL/trDoof3KAWOMMAO9l+jaFuZfmTBshpfeM7AOC8l61ohRiweWvN6nVIWlPyr90KnOXGIHOvLIwp4qcEdKB1BoivhdVTMADlhMQE92Ji7HbE/Cd8qIIi4oqzD0keYc/9UUo0v5C/VRP8nz0oJPC+cjb8O3kaEtAGD4iWH759dXoNfZNFK/aEm8Z7y59Vv98x+Q+iuFEUNQVHPUZvsSOcDi0vHq+kv9mKGC5FBGEPERuD4ctGn8rv07voDJ0wz0hazpoy8eNf0cDHz4rkPrJ9lFNfJVFjdBSi/q3cQFKF8SZChvH2nkZehPI8BsMyhnpZtHxhUNWT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g3TF8whaVq8A4HJ+KrSjHW8XXgJQc8H0NTxdPqBBnrk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KAVQzgSYXvIXqqatZ/cxpGbkIqb/rjFJqWmcC6VUsrxt4Halkr5xd2rvV8fOAsLG9VTq8FsjmiDIV6oIt0TB5Ssi99MmvclQHRqOURU1VXgyPCCsiaVh+BRXsWueRSLDq4PYo5kCGSl4E49QCKHNn2cFEhqpWKsi8/S3FX8c0J9PdxvsTOXgp7ZSMGGMiSK5oebEAqZ8PPGoHjxyVqou4e5wryYSDKY9C9K7i8xpIsEjwQpWD7FOsE1ETjV4eKnibIepD1OkVhSRrNnpisQqo3fqM8rmT8q3bip+H6YsHHNC8RJXnfJVg9SMNw/AwyuS/JaXoskVDtalYrKBOGQyOv4mA8rY6pBnQs6qkvlvSBU+CO87GND+5v0mPeMpX3o8uXC+Lg8qWjAEVF5vbOJNMGDZV+61vJMv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g4LfWY/PZfNM6kNxL5aMgbQGXmZeFXs+z7ZTQ1DbHNk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "La6i6Qfy6FkNbbp+4QFUnu9nZ1J+BWVBUjjavby+QxnZHZF5ldON1Lm9QuxBdZM83E4CikuetOpSNmR1BraufJLspZhFGtjAQmZyyrre3/sVziTGs/z12l2H9PS8fVYoGj/b+asekGr7q289NOu/0Dy1Cu+TXXV3wyYujmr8H5ejTjaWcT9HGuxLO4XMnKMMMFKFXbBPhYQliVWhYdHjbtqQMSwJx4IaX/muwJDHi6a0v8YjwrTkbmslpxplHPgdKuZ6Myu3RjfxdY0L8xmbkFlg9XM9TvowRCArXV95pL1jI52jJ+vPyweygm10W0i1Msn0/vwbUyivWRmITdoVbPl0DhIFToNuRnKrMiuTk8gETxWTl7xiDyZcWqYOyogJyY13CgnD3Xdv9tiz9A5EzRaA9PFeIjv+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g4Sk9n/7VLzlUyUOMDM2zpE4Ec0eqUlY1sHj89tkrM8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d3S5oGRxXVENT9fxYZs3wa2Tj/5ohYu3Bvkdc+sKA0mK3Xywz/YmtV4MQcWF2xT09l5WsvI8EMM+BUU7buj86S9lCzhr3hMU3VmqU68WM8hOaJ1C/u+64Xml+oZZcaWtLLRcak8kF3vZY/JcLMu+DnPZn8GH/KgPx4t9y1PWIzZ2acxUWp+ueXr5nqwwn5lKLPM6WRIwv+kcrNgZivTq+yf5y9v6uHMcc6nZQomZ2kRz+WQMQTc5XEU0+DGZU9vpv74ppSCvlxA5dIZ5wxw7Rx7MrMLXQ9P2C6om3KJFbIn7lOOjTF6OHG2jXCWa4S8YODyn+lT/IHrjJjj/JbHmaibP/TJpE9hIMODfYkm70+JzUxXPkZXIY1HQ8duWa6F73lruv7BbCAQIQHCHQ+hZjMJUQCTtswd/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g57dp3Cfglc0smz+tjZH1dsZSrQ92VImhd4iwiAdiMA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UukrCoCt+THO6ZEqenuCxfSqL6bMctBTrViePqVlukv503p/5oY6yd0yrXJlfAMQ+/oUGaTj9IvS1W2em52w/7WgNYELYkNw6QxeOIW538ZS0iEV/G1wLSgJfuSx3MVOsMmfplQoOcPpeKJ210as7U6WFiISBYNL++1jjyIxNeFy5vfaAsXu6c0+wfQcr1fUlw0UFCibXYEYGo3OaasRV8J5qWYBnwr2+6BMAnJt16nDbr4rrSOnWDYViys0Hasc/BFy4AFTgR0e4Oeqo4s/cTXApem/Eol/OjignejEmvZqCB0bce+mOel0YYys8yKc2x2czE309OHgq4JdPqcy0edKV8uOPQsON4ASwxP9zkRhTPFDFJ+Zx5BVxj4YIVnCGC8ePbFTt/ouGu9Wi9zOK0w39zVy59TG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g7SMnppdq0k363gdcGcAjqscAB99HuSxsvY4+oJ9/vI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DfvO4iY5DotuhXaO7Ntpdu14s5D3py5Sa12QHYpx0YQuIfX0WIYnsfVmJoU8j6uTmR+s6KFR0lPNXAMo2KJ2OGahb7bRbYLI//99NZVtlhtrSDwf3YJpTon/6vtNYO9ipyYzfVzJdHnDw6EL3GPm4qOgmX5PXFqCCfWgd4+zc5sqq6vvhKVcvK5u2/sXf13pH0Ucm/O0nPjG3Er3CBl9fJrmFpCrEcI61/aNppFNWcNRpO68hRbtUFGWSKTQqLn7XAmyKn/o2nrWq3nsMyemFFnkVkbmZsUVLtL0Vh1/w+TPxErhqtG4Vo2GOgu54Ao9lRunhEKDJAuJnVLCX9dp6TnkVcC22g/bWktsNhEYOh7n9RD35HEFMX5lvylD+dX0trg1GqN67DFC6vq9UAdK6pUJCgINK3cf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g8RYJAQfQ+YIZQh/1qmS8PP3yuutsi6eKvlc2jwkXi8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZB/84cSScTIajjWVtfxy2+YGgNu5thNHVKD/wjPv+43UWMRUF1M9UosL8x4G4+kfIdRnf24ZvP62uU+HymT6e6Hs36Kjr4ZoJcy1UlqM9ULZd8fkfgomg/CfsbTTLVdmijpspkaySjDgffcs7piI8qez9523FcB5ui6bE7tlSojcHh8yvwIv4+hq3uNcxjDqToa+gSTmycJLtYqUCz0Klq9zGB0rXASSCjCgmBBXCuMNlNxbSC8FGUHXnre/CRwc2+AcKD0UX+oQKbOwlngaP5E4m0qs8U5QIl1aSDmmsp3NckgxMCRBekcLNglQblt3piZqjAca1TUK/JXOy7THfCOJz6Vpsv/FkEmd965HmZUnGLQnUOivWHnWL82xNdvNCsXzVIKGvsuvg/VTJ+6370S1zHulz1CC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "g8a0mji+wBN9sIUDP0KsI26cR9ZTL6iDNtTRgJ1M7Ew", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qlzsR9Ots0lpk5SmDMSq9zU6IAqBpqq19c/AH8BXoOb0seAQ+tE/EO4VdeGClm6CNR9oo1ceOyd/HwuSKu8Vuqk9zBNMLXMgz3PmIMUvYk+U4G/zSloPkf/nHKWYD/keujgB7fHF/7aGrOdB2+Wi0HZsL3Pg7crXc3+ICDpFc0FRxs/3u3P3ixM5Jd1oGoBdwP4IqXH8mRscYcme/H+8hxwmI+JbvC9RZHiFYc0xhA7pYkP6RzoZgmldrmLum66CW4xmWMQD2aE0oRyRNeanEEVDnnmyFB2SG6e8p9ghDzWnP3TpE6OAVZ9FfLhC5oqoDplCgROxNd1GUdAJVCHYNBbmYN/d6pHD8cbI8aaDbWm9HT0KTNDiURefi92Pe4RcMDOlbGVzk0lpWQMUDsRdZEQhwJy1t0AM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gAnnZnUUqISILZl4voZJjDxP4umFCh8oM2kbunVHcBE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/hj0qj0qGV42KkjLcNme3HrXjjplytvw+LCyqTlcMTnww0kZLqknPkNehwjSCpvk6fH34GX0GPx9AeGVp7vo0z4BCSWWlZrO0l/9OD7OgG1a3DsiUAarcdEGjfpgAZyB39WSsNRPHPzbwXt7OK0bjHQBKbNXbPYGEIYbB8Q4mzkIU65Pv7mw9Cem3eV0fFQ5q34sWpyYu/BfTVjx7q/Kye2zYMaq97XesZ0xDR8apfLfrb8q1fzrJOmKv6a+f85Y7L1D5+aexWD3MSYZJYASt64xao96pSyPt/ohhBNBLj9g8EUqKlWIwxVc//G9yhv64bej5sCN+YCnWh3hHWK+AJSG6Glibr7YAOMGub2mwiTpek33U3DadKr7j+3PA7FduNEcdOsub6SGGQRdewf6wKfEZWThPV5A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gAwg3l3v5qvLhf3X+cxg81XNrR/g8LHfbJM66HNCyrw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Gw07w9V6bNXo9KhLgRSLhFEb8dVz+fdUxPFmwKNEPg2mX97C8M+/s2TeWbSb0tMXb9pZzCe841OQV6SaGrzgalkOHgxDFKAZ5J+Q4B3IC2Gy6N/Tci2Qn/yh2pBGdsh06koFetKWQU1D/YMr89HaqefxtKF6RhL51R2t/fflvsCsEWqW5TstIl8ClXZs5rpr9D3zURnOgb38E057GacxsiTSOgAVMMv9VD/kFsBc01DsSrXwbv09hoF2kyttKeHR/r05o1eLPnXaxfU9lqB+jlvR0eHYxWaKqibtKAuKXdiCzmKLtTpg6b9VRVSqQqsOCNbQmUq2b7A6DeuEbb9FkGIb/3MYwekFLdOrhzBIctTEKaK1OyyfkM3E4HVJMZhm352chIq6YySoNWprszkdRhDz1kmdEef7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gBt9HQdeYNqEwZSdsIRq82sizzf+aKIpoEKhE79AXnQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l3KQF6zu7t7o58qqd3Vbssf5r7ruJEN3N2xHUz4auNOEDUjlsL8GHZ9Zhld/YzvMx19o8wUMtNEyETZ5jnn8D6mrFC71MY1VugJ+kNLh/l+cInCjAhrU8QEZG5qkbTv7uzEoxwadbMiS1pRU2y2bsax7cnNvz48cpBsU4TePFa38zu9xcOf2Zp22HzyCP/Q61EjzQ1Isvt85OmOOwFc6m6JH/oW8dEaLMQ0MDgPjXq+7HD7/l9585Kv2DD263HmPRxVXAMSMk7E/2ENohX4zkwoewrG0jYIyvU6L+oyqLhK31LY+Td6qTSXKW12CyAT8bmUSOcKF08bGrgM5oXB5/YcKiGeS344I1kHa9bENIG7NKOgUpezxsiEjJm5mZMuhLJ66VVCCWzb4sy+eXAgKn9ICCx/CG5/y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gCIGEKF8KIsCuwF7tM5AMoaoCKVMu6SiNbS5+CwSUjs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/bQUrgd6MBHRJSta2CV1XWZR1VfZYB4crTYEMd68Ul8Bjv2Ai3utA9ohN1oON8PYz1KwQWzl0gH/HTFY4QDdSGvEVlRAXQ0IUZPrLPGFbr0tqSMIoIeXlHTCVA27GzdCzDDJVDo2tw+WG4EqOg/x1Hcwu6QWytt7SekImUl4AovWjaexjfMH9/uu2FxjhB1T9nO8uyZoeWyTeux1oqM4AiHdl8do9VI0xIBlt9CuzZYwCp/F2nHE+hnmAdfIBwrjs6U5DUIttZ6/s7ndueMOOxcTvTErfGIRaqbbUJf8rC271yu2CCGl7ZL3g+loLUoNiGKEzTBNOViFOppD1MB3eYIfBPxJChF9Xdy8Bxravz9tfO/cffFb5VKK5LOFBD1CfeUOCqZ0rzX5ZRYH/ATNu7Cyrb15Ntu/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gCT9KMPxN5flBtd+JG47i92GpuE0UXW2gd/RoOt2UFw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rPcki+zo0vy4MTWa7NPk4HGg1E4JooHbGESZX6vvxIVzT3l67YsbLAVWhCmQxjz1WLQBsPciMwZMcgINl6+GRXMUhJgrUqTHjq2/fbhmFv1VPwx5cO9SJr+6DPC2TR4J+4yyzmi+p2ktFUclHT1YVn98e8oodPgL4Aiv4HrIuAEUi+PGWJRUhsH9Z+04+J8x8kgWz/de5rViwzb4SBwk+raOBPhHztZmVtRLGoRzDZwEITVBqtEv7OZYXUUkcrJ9Vx0C1dRoGd8NfGq7dndvyQ5VZfsHS2Erk3KhpM5Hep0U6cNwZ1ngUJFck9gt0BAyev/OfYEvwYa79vgzuPghGrSzj9s7qUh4Ukf2tB1xjS8tzOhiJ1rAbK5DPNIPzIoreWuzCdBm39yIrieaA0RdE3AU2CUDLEXL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gCezqXUVGA+X673pol6d4umHfh12DuIOcmbs/a7wIgw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7sB4rwZpd1kfl8s4cy7z4VH/5amBiMrz5Zty+5gqhEQC1M9uaVrkM5R/9eyI9YAeZLsJ1wfKjHgWT216nZz0lEUw9pnG/s1JdhG6m35T3sMQkynUuT3V84YfVLTJCkrIX3e3J9C9SMHuWjaVzggkQgG5Zr8160OOyyfvc4d/RWoe7OAOh1H1x8dalUIP672aPwJGlHiAKzlXM23aGRnyyukBb0Ixsm4cvfeVs3C3ICyQKnwUyKuOf7Sfq7UyEIsVAZ3DeNdMQBMaFN6ZRfadd26xTezafTj1AHWxRgxpTZYtYHFYQOoTVFGYQcJtTcvIudUwylola+MlN4irQsVLlCqmQ8IOe8Z2T3CHn6L1fz0iUD5z4wmTBKroQVt7ZBBo8i5OZbgIZ3rSzQjQHGvs7G+KLGJdR+7F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gD1f0Srfssz91z0JumvRVMexFOewiNElOs+9Kv4okRw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DeaxVu+jdqdfLsXbCKlZtVPKtDH649S02a2Fs7G8i8iosKW48wg+5BSA/0jsKjI37ixFgJ8ZgkU3sFEG1k8KUmwkJq9mjQG1g4pJxcgCpdDLTYhzBUuiFLZA9+niu4fHMEnvlIocdKi0OFrDCDCs87z3o1FisD/yhF7a/1waYUk3zZunw/XGUFW7XmnR/aqc+rEJ4zPyMxZL/5TFfJwE1Sadie6S80yYi9qjr8AOMzYeGC8k8cFR0M5URau3amHb2C4TW8ReBw1Ku3t+gIs6XCIgy71lOlGkh3erWkF5fmErxdAIwdXDTvCpSoHEjZ4y7lEO47aVi3RHs/Ta5XOWCZRgvhE5N1qDErAbRKGo1O7uSLG5wsD5534Mt9Bu6ji9To8C8TC8xO3ebL2T3RbaMeA9flKyLUyv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gD2Fm35PlHmAK3wazdFoABZVrWRp+D3KzJ6EWb5o/xY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sLDDX+Xb8XAl1ebZPOUIS4iVj7KqtEYK6FYZxSJsydmf9A7AvzBq94hoy3KckDrzjSm03eIehf8MJh6vroQpPSjHwy21kzqTk+dfJEoXf/qrep7J7ETp3LnnA8n35sUFhGCMHdaYMIQhf0ktopIoDTO+S2ZkMe5tcGTTsAl791QjQjq5tGLLhR52goc9FG7j7tGtG3yQtyxHij0pec2ut80WCSQ1+7CxOsSPKTugAxTtAvXHa3l2bPEqFSJ5iJDWu30l2y6kfbnms1NwZOdQbTDvKDpEmG4BuCynL31D3Kn86mnbQQrnXL3RotfDxauazUASh1KrxZ0F556j6XgN2dXg0ebBKli9zvkpRc19ILrc9mNtksLFlUMBCHKB75Nn/btgJ+5WBY+JhkZDL7Q8Ti8Y5VGX43Ly", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gDrdEFMIBg0Lq2sUqHSvRiwYnJi11V+P7gEzt+BJZDs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kCbaM+4sB6NsHm5XKRBxaD5UheF5gHPbzFay8+IVIM4oDzb3wZrZdY4UvB5ja9tmEmRKRoCTUiItBFWb1zMGFxmJL+1ps4LkwRxGgko2MMz55Z7eYIGnNpsQtNb0bL6UGxFqfu7r3nvVk969hYwv/10MuCeDKN1CJrRx4K8HcdCXjaLWhFQQ8a1IsEJjrRV5zS+Es+LsiXXAmhqWcgin3OtTCfIulKB+fIHMwPQfyWD9uevT/u9ZIEHRn117qyzLxAxYz7mEaViB3QBwVpBcrNH8GmKkrzUNtQ2SVHamZeWua/9EHJyhzlv/BApjpqMIk4DilfEcmh1mFCxCLncS4V8uMZgfLk015/MNDTt+JtcjPjfMtoOg1UcyfJGo0NFq8t08Fi6yXDhTfz9cyVhBKgcKsM9gGPEh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gEnhrDCtCigVJES8hbO7I6h3FmS2zZ7RFLoaOW1UurM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N7FD8+wDxsaglGVNpjoO+K+vGrsMgYTkF13tLo51xuhKkcyLZMzR74IeyB9N0KOtBkjPN43vMxaL4cGYgUJW0qU0kkBUWtziIuc4aXQjMwICP47lf0hHA1A0wYzkTzpPWljdGcPwQPCWUIQiIvYZcfNl0EGqOMcfselrqXLxDfMILEcJ4/Z1W7MXOmQzqfR/UDeP2shZmVYQTNiY9f8tN9dLVw1WPeDLZBjilv8PBaGkB72mdp/UK0ijEE7XWnotbjNc57qLJTyPa/5H54jnKLrydweUdRr8k7Xa7rjqu9RCqkia9oJI1GO/LRDYujYW2SGiJcbQg3zM1lJl55Ia2CcOIaI+8zbwWigZlkRDYxJxXlKmUKclEtt2IXhrk36DPT2ApOzhiUT0uKIp+tiFEzjL/X0HDFxP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gF9a4HzmVIZ/v22tpcy0QYoQ7UVEHUg4cFGPs08X6gY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "feRzzsWE4uh/LsF7mXhfAAu1SRwNGGe9qaxlFFlpuMXFlUPUKwpeoTI6CqzLFTx5XNrjY4Vrj/CFohsgjPoCxXKQzpw3nRYI53JY56hv8DC6Wp8wuVrImv4iZWSD+4O9PEGOFwPG3WtrE7EtbUaRxo1SLtPs/Kep3dG9VwoJH8hLBSxF+drloZqXzOGsfP/5+RHkMr7reamCHpQZ41X3Yv1x/n9fRukv9A6r6sEZVWiL8QsIjgBf9oHwTOefvPZMIUXL03vNy0PKCLPXB5nBVF52pfM0VlDOZ5dPx96w3KLUYyO0cUZ3keAnScRrYIzmIKGULkst8pCbL21lKy77cmeUwf4E4z/79nDqTPHBLSXCxZ5yFmwLPjHEErVaT6KoqsW11aOK5NS/ji3J/LK6qVlynAMb13tG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gGFS5U6UShSjLOFA10MSTYR23cygOIScQpbj2C3v2wQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JmEyYj+15wvpaH6hOTVgQrKAqlfzyQ5kYSw6HOrM0OC1kxBvfqLqhco1cWHQkYOp5rFAm3g3d4hsQS+p9TckrUu6+KkGW/vqfs38JN67NMOgs8CgORT4VYPhmEWIhsibi5iMBA6E49n3Mnh27DAVQORoeft52t7dfQ+DbaELTVGOi6ICvfbp4mStC+iTdcSX0BV7VB5yzsLHm0q2SecXWNzwZjp3wjg4wOLvOA1CRx4IlOsadr/oQa55qd3XoAM/hcG6n5uz4f2WIZ4rB0usFlcjBg2Godz/CQTNMV1sVKSirrbDb5rqR40Fn/b+2LQO6i8V0ZzMhr2U/IIcuETLaKQBpdV57EM7SBm+yMMgj/5+8CeXUwTTvLNbxBNT1NsPj/ADx5qVEbhrh8DeLuA2j/NUUC9Eajt4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gHwKNpEBGCEeMrwdmvCWJ9hykX4ihEpp+AHsIW8gZP8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m6Pv/kCw3pbr7qZxBEMrt3lmk4fYMv8R5P7kSlmRSUmFgzH/IKnTFjEml5+F3rhZLr1t8Co9eMe5vFH5T/siHYD3B5OYRJp2xCA6MiT5TXKnjezeqRs/K4h9hebClV6PjxINMIuudslhNaRGzMdWEHXEdn80Zx4Gz4a+4X1vkayVNW9lYXssFlgpOUsGgHnAnwArHo3PAFyAy3sP17L6xmpsDV5tgj+mT7nGlLxx9X3vzItiliZIhoZihXwi69uwi4d9vo1qHkLk5AHvLgZ0KMWjyDOxXGd9ujWBbGeP4psRl/ymGN0J+pB3kKJNsLRMkSNtG8ZWkgDAtRJPlquds+FiyrLIEzX+l9Oh63CgSPblehc1ylEhdZmqyJ7BgbUDZoWr0UnOHE1wbpbxSgsS14F8tfnroGXa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gIGF/4lvP5wtw+F8U8e/+XM25zq4yffZHRxsTnK9dy0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DZpB7hp84SRWutKRRT1kV3rzDhvLng/clLsVja3LLgHzfoY0s41KLrEYcsYMX8z8gUhPwDjS5ebe8VYxMG7VgKtyESgK1696Usz3JYbMFb0Jl/v6C+ZdmjyTgkALmxTpIzszFOG0mguBgFx1RDzIppAeiJgOYv14wmLJHXrJVJss+O4EmqP+j6RaMAUtHyWR+0UqQ6tKYHYYLo/vB8VtyYGo31i9+zrvd2zTO53VBNiKoVO3n6DZB4/XVtn40I2wxvjG0KWYBaRT4c3PQXrDtdnCPr5+1o31SWwjxZ9/Ot1YTHEwZwZkyKh9cQJm4rY12As0p0xRt0FOrLYMkbOE54gkbQ7xTAeEV1iLPRJ3SzJKGVSa4m88AJci5OK+3pDVfZ0O61CKeUvC0fDzfonq4qJqOwwTePE8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gImfg/b4d9qYOOb2iojbc/Cjx0J6aeJHyA7w6L5WYF0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Qmg1acnh20iHRqHrvXA+38d0z97R4CVF/sPVHUFUGbfira/9fQWeb59yzqheuwLUc3A9812Y+pWgECVkfi3YjsNE2qVE9necAFnuryRHmyTDKsQXPDnZhK5s/hBmJaofvevI4RzPjl8HCQoqNlxVpUlG9ZGOPmn06LbfWYoFU6pMCzWqX+dyaw15m/sGKLDWZjULlbTOoIpUaSCXaNzd72bjMKi422zS/xq8/TyIy5ogcWhUdDeaH2FgEN8WLffAaaEx6o+kbOFG2CoSwpcSCrUJ0godD8WaRrMtaPMQrpHj+GLcFta3ihCpFPu/J5l9jNLDKo7KkDzjCkDYwR5Fz7J3pgcvopwMO/uBQ5yHldjyQvmZF5xdtckDWE59II6BAsdu9b4qVYD/t3HBmx2Zu6uDct1hP56K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gJqgwlI0PNB5mbAXSm3p0U0a/zl9j39Dl3XnCNSZrv4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r1c6hSztadMf320v3WFlRYCF2Aimu+Hzvcj0laFGD+OF7Bpp8u528dzmaK2pw1d9lDqJyItRfexiVR/z3jNL+3RQx/B00BKqJ5joLT/E62I/ovP2yUYGOjhd2RvcaNawdMQXkrqIlIbBxFT/Q8piim80eOcmFLvFyl9VWhQP6JjpRSRTakiWKf4X+lRS09FtxWM0Tgkm7KzwH50SmbBLlzNoa6lb3VGZO0RYiUPL1CF0fQFRkbZLnf6uvuv+AkFCn4/IdFwVzU5n81SXJOshIAgVL7HBEhxU7LKlXSCFJ00u+FZQlUBf/Vvfi4yrEhjYysEa7efGGgelaM58IoLd80nep12dzpE9MAXnQR20AQj4a9EtYb26uKeb+T6V2G+kc5sAePcppFEvhVUQIL8AhQmZJD3kXdOL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gKFhT99WgjCCMJXlcjIISmVAzVdRqyRNevy1ZYXCifk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B1lSLFdYQQVWeLZU3pYYJs7L8dzmq1h/2/8yuPDZt67Dx6UMOHppyRaqF8PCAURbk3ksdpJq3tyf0A74nxWVM15SrGUdlKAjcArJpZs8scSRdrxCq+08b+ZSg/AXTW3QF/7Lz9XVAAncEI0xc08yNkcbnPRgI3bQTpgZuhgTHjSsOtQkRZOKE4duHP8zRWLUQcLG9PeIsFmBGDSkQsS+zzu85w3riWZfkv4r3fv6fMGiENlTuN+/pQP98HqcGvqf08bdIdUAionP0u52p6Qkhj2U7jud23YxlA/o1nC/znmk2Pmn0bJouRbpiJ53CVR063YVL2t1+G/6ueir70uAOzZI+jjo48WZ2hD5PIWIUnDgQghIcJ9bNhAsSRiCHGWrdOjpSDrtX0FfkH9oEQ1aRscvPSR79+4L", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gKJRh2cCVqJawBkWQ/a0a+leQxrhml1VGe98SJnVHBo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FKb6xXezdvpht/fjzvowv0o1Jz2ljVzzyq33wSni4fM9ZiQiYqV9mGIOvsLxgYTPSskMjBy9DGZJFeic2wn7WOa7cDF4bQpwaDztvxv6SgCBp7+IC0CzFuIMubmC96YMoBzXplbemunsipKETgWz5ES/WK0aJcIuC8Agavl1Fs/RACAXqRB6u6h1rwkx895+RUyOSrCdPbSh50Q2WS5kdSey/vPti0eVvQKdTeZNTZeV8asq6FZpFz2xQby9wb2zJfcZJ+LRn7rMqo/1jB7E/K2/7Wdq2KK7AikjOxIEeMhsFT88ya0VX+kERCH+fJOQkpP470mISZvwOmX4P+VKF/ee4aWdWMsB4R7ZAQVKtIFvBeqdTqrZVRtKG8VH3mB24BIuy3ubvVqSGse54aMTRO5460QHDbVD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gMeGwUsSldrlJcgI3LeDxiH+VaVHC4ETo9lm33qaDTU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UNEIVFO/nZ1oX94/fJQBcy9xn90bXIyswI+oHZOTOJP1sKGFD49b5N8lqyOxwLW8LACoFrcL/fjlMRUfqA7rlXs5NaqjlLMgvHqc9cxV/shy0e712JVd8pP82o0GwGgFqwLzawxtV00jSVYpZb1O2Qq4lwhJcPfM+vNZV097n+yjLQLF7ZzcznCbqx6s+jZ1xEsEEE2sENxAY+KNz41fnjNAFJo7nvVPhYag5Oo55lBVbLsMIB7Xr+VJ14XmJARIJloTRLabVSxvroAQcyp9WwRV09jXu3iNQcIbGMezb2OuQ0IKusuSx7EFaOAdwv3/s64QQeP3xLJfSQqQTYmW5VL1Ow2RuFm7vGbMb21bag/OxmCkCJl7rXIOG2yMWOhkcDDqQrs0emldDWNXM/auDGN9TR7HIP/i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gOjZehUbiCiiyosaYaQZWsUZzF5oTX6fjIkp0FfzInw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "K9Bbl5WtgXE6e5KSmxTlG9dOXiwMVXSa32JM4x6cmdMsUtrZnEl2GQoqUUpXJUURDaxlOSOQerCPdD8FSNxMnlKNDeYEn+c/fyRohmzbA7pekiQhNVR/TtzUMB+yLpY6U5+Hogln3mhgrZsR7fyH7Dt8XoOdvu737SpXlu2HmMmlmN+YzjsQUS8aIXmezXj/khKAZMO7THG1NjhTQvZJjTH3Ed2IqhwA50uZ6TI4nB+5jTGSVrP86JHH9i9HdDDH6v7Q72BXaBQqLkdSgJT5/21p4dM3GqHolcaz+aS1Nrr3BOHC6oqi57tnZs1pcOmlbJur4AiCeU4K70+X5Twxpdz7Vmv2zjbTKduZf77YbvhaUMdwaisECbqs42OdqXWCXTgebNHZ+QuUJPWeYO0QS7oBn68+YCW5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gPK4DrrGNqQigT8j1D4rbyI4jHpgBuxt4hc9sWLP+rc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AlTqaG/SSehCDdra/2dKVsRb85KWFuwHgzYOzffyIJdWtUt6x0PHC3NkAmOEVrXVtH2PZnFlHFoeJqVMa3kroITC7VWshFQeLl3AQbo2+KMlOWkT9ew3RDvfpx+JOQE4Un3LB6GRxfjfKEROlzEnoFvdVqhoDDHLa+uygL2rpyM/kTHcQYDPWM41ERyF77NJqtKsSTx5tIcNzAgofbMLzt1Wmkz0FcT7zsZG1Hu3bFCTT282CAv1H6+br8gMcRa1y93DcZbOFiztlsnSsVR5QwXj/vBEhIxjNCrt+PAptJaceAyAlHENlSy9KnO4oJgT3sLs/jMRkUYXuQ5abrUUf550GO2kWoN6gcpcMVMvjRHy5xODLZo/5Gtc5kQC3JIEtDeB99AW+qAOI+PDlO8vkByaiRituWfP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gPOdnO75sM2LVObOxDFVoMBnNT+5no6/ILOEEHMed5c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NBJBtArNF4pZ5OenSanchSJdfU1AKqKe4Z63EzcrORlAHKNi57bh/6nd1Pj0Ar3XlFzl8dx7DdEMI76KAhhhujVHnlY8/R0pUX5KSO/47+FRuFGgoVZStjgvfV6GPOSJBgTKpz1FZbkCiraRjmKGZgk+/ri5gyabHp1XK1wKocL9I5hE4GKM2gbtErHYvH03uh9StWMi2SVAPEVtDl1poWoXo9e2rjZFdTBcEBxdbM+A13rUa/zy2BFMXyHVFe0FJ7SfeQQYWLGYPnU2mZVWZUvB1vtp4YFUHkR4fIQIbZGBXUt+RMB++ir2OOLrJEYKa3sw2xPb9KgAjiterLBsT787Lsy2yAUxrre4FwGMKfJxcT0giiXURJVewatQnkDPwLxOfdpRihlhXb07h7OM2IzkOKzEgAjG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gPeeT+ShNmH7yfX/ocpkcSruwZRD7y41vGYOvNySoIA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2xWXXZwG7E6cyiYZ+xTSoGc60p1g8wZedOhgwJbRpW/NjtWzGzpq2qbrIG+h6fzNtuOc+/OMKRtEUWVHO7StZefSR1aNLu5HBxDAJtA/f+aCxNXdQ727xRW6kTwFytqhFalMDm0KHjL9ink62ioW5Kkjhz4/q8peKcZPPKQ87baVIGEnpk2WMFJLngvOKRQSyG2qemzXk/VACWT77yfzBODyGNDMmXotS232RXTMocSxbK9nNy4zPg2bescwUPQqPUF3+fvYK8PmrzqbfLM+J/zZ0eTlxuf2c9evV1KW10YLhjMVJ2sqGxxBhVVtU02A/Md7EXN0dQd5Va1+qbf/JP6Ixm0ng/yjthyQR5nH2QjlQQcburzaHDlDxSzjLgDuAhODnW2+hZImhANO/XJU+p70cxbZEDOf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gR1AfQWRPysSt5d+seTrUOfJG8uYTzV92iKjlijyfpQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AHGjjLlfsJZ4mbWTCgefk9hyPzIaitrJ15NM1pMUu9GpjJraaXSf3NUJjOO9VCfEcVYvadGCdq0d7O2xDY4BW1yjPdTUpwNNORDHuFGgUrFFOqlAa816Nlhz5xF6M/3FgBNOEPiKDNXW7yB/9IDnbab7nId5k2os7Pl0b0D1ZW3Vpt/AoKL7d4b9bNdq0EMy8cUgzPFqoGyXU4v32aWMLAxf1GBzkgupLT9OIx24AqvyqWsxe3bBWU2iIKBOtRbA6e5XP1B20n+5bSn2CWi7zVUBtoWYmROpLqyffU7I+KadEUk4QU/vMQMQLi3LHJM0bMT+LjyYUu7A6hypvOwhpMmOoaQlZJZUqS7/5eyivGcQ4NZIVGsSJX83Lw+caLikQkwRTU4+NmTH5CjEJDZ32TFlpz2dRSao", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gRBbsX6KuRjXqBue3MiSYOx380q3V3I4A3eCguXxl8o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YhPiepDyLS6TVpfTzvbwxILGh8izB3old7exRWk5eV9CW75Hn+eyskCYIvwc5DbSyg36rC2vVVbIfT6RG2oXbmTBUpoLRCAE1ZsVNDBTXh9TiVq7fa7Y18fj7yffTFSnPOnSgo3lcYojXdbo7VzzCq5ZJsMSXXy2+EtnwgntwSykz2RVZxWRRNlg8WDtXr4pWUnpxwqFBdTw1sr2IZm0oHJ4Mdtun0GbpT9fZ7D27mM27DAApQT27s0uu2tsCnb9xyEoEZh5d6cHxHvqUyOZabPTetAWIvLeEssw9Zb2DHU+S8ng7eKU+ZWmGEFlxiuT94nOzBcIx5M6amfZIQmnAXcKZhIyv2Ehk49G8W/STaM2A3IpqcHQdlJB871cIhfi+r3LkAwWHh5QKG3DFNvAPvBBByhV63by", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gRMKffDgXMEBerDjiFvVKKwxHcHmfhOcolb7+bmtOA0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XO3ccDirsNIVINFgntgmYBRFr6d75mKmOaTqQCPWP55jBuNexwQgso5Gw4pklCeK0/YjxuREXYGdL74BEp6I41uOX+g2HqFQhgF7jZZJ3l05wGN9zpvMENZ83Ryzoah+QVW0Hu9ixWRx5hlR2veHAYV7eqlVWA4mieHGnxY8NF8QaUChLGFKmyNN9MXfAa6RZDSKH86P4JWgg+DQj8iXJbC8P8wUhsOQyQZVB3XNaMvpIiONKvU+bHp9aqZ3u6nJSl2NmMUAmaIN7c7ezXk23CJOpFrWe1Z9aIZDnHHTfHEEpJvtQG64Njrhhvd7Lv0hpPR4fWFKritNhXbidaQl9LILVr+w2bhrTxvWY9ShmzI0A63cz+GyP1FgRforpw7JoJTgTyRkXSzAvI+qkkfh9R+AI9YLO3e1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gTYYPUXOU6gKKK60uo/xVVInmXv0BBpbQPqAQxOeh4k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eKE8bnIEfujgdHR5+/LjIYfaWpl3562R/MqrpQLxJ0Fm0gUBOtKm4c4kcQ3k5oMoJSp0IPimNYnlcQU65YJjS/j2ciHKQ/4lcc/b2B8FuyftclqXwixMPJE0lD+ud16gqDISZ/ZLuRW5km46kg6rVqBVYSudtuzBNK1ESy2Y+T9lZ0xr/WaQIU5NwqhbeW3eSJ8/9Rs0BY7zW0czAxQm9MZ2tYYApxky8EJkdP3fHxv8FQGQMsssjZoEO5cINa1H1XXaUVh8YmLSQyYJzWDcLegUhtIh6Oa3neoaJEurRUJPKxhF+GNro1zkhrNlYIASgF+8uIiR4+gx3HWqw/L8sRWUYfYzr9ncUJyuLnHr7SJxohJZYG8M2vKPOQtIldsK9jLpnE0ZwClnhCrVDP/wSWs+gjBSBeVD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gTdy3cvuN6GfSLH/m/ZkVSCnlQ4iChIDwUXkaU1pDvs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RQjdT0GxeI6WIY5Dynemn784Vu4SVgqbLkOOjXAFFMYamGgUoTVHbk5Mmuqf3APK1/t5IDtoj7LBqkuqlZmv3ylAoYgwyYWmvuCorWYGXTbQNKTr39BXcdFVcXoiCJXScbCHWi5YzQNiHhToGHR07KFDiZBGxEn9A0ALyXg+/dJu9nqWudrOTs6P0+8YlnxJMVNgpaCHLtGDLvSRbTuKlZrt7Vz4MuVERyBPj9PboxbjjMDfVyN0n6eG57W5vuzVEFFo32pcUn4+KApMiir1WqBQdjXHEYA8w+c3d/WiGWk+7uWDFLjCoCobqQLrd2uCxKdwBtJOj1+6IGRfgrhAIdy+XV0HB9huyWfoLybLkimW4nXXIPLwXfvfDHCMcfKa2OP7+1gEbMA8U0hfSdQdxdZ+j5U93zHg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gTkMG5PbBFSunMJH08pQf9IAXislMWAFHmOsZfIP7gM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5zjZlkPSBSfZGG8Mzfe1DaGHkFQUv3j3KJ3uNj89XEEd0Td7k2rJ7ZirzdlAVRtviFug5/ec5ksdlMrZADe89Hv+yHwKBNvlsEMisILB6wgcJ2VDqz4Y6+eWac41Ree9/oZmELztcLA7GUv9Ndi/M/XfiC8qKD5ZfOLpYAKXcJfLTpWOUTLeuyVQaVYIn4nzywX0bDlBOOcBXxFrAsL2C3BWUprzrc2xXUXM89cShz4q/KdI4DhQfoKhSChwrN7MsOggG1/qwt8fjPXh4reKWZUfbqKLXzHZobcpblQr5tvNU/ZIUIc1NskZ/wT8Zbr852O1/+/z8gMgpDTg1WD10pTT+yLvxYYW6Gzic8XhbdIuuNQfUBIST/oBZuqY9cBjv97g4IWJqJOY678dum0Qb9ALIVElTK8e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gTsNLffarOYtUquF1ooKxH5fcXpiZrmFsimYpt5LXSY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+8qhmxXL/k3HXhXbDUDCIzSJB34rw/0KVLlBeH3Qkx2JVVSnt0XllRr7fserpW+pP73eQQyejKMbgbeBi7iA1I3TCSUkqzZQ/YNbrbNsbeh1pOXO7WYhaJDdvm4U6ztJUVcQmiTA8MJjLYy9jacyw2n/XeQw/fPA9WZfTtGuO159yk6pRV6VSGH0m4f1vpOSKXATqaYlmyDyUf0s+04lbNT/nM3HGr/4yXd8K28SUaqsxildLWaoWAmqnjEbPF04NHkgXTn2ujKNwint0xBr5QDQBUWFeZlk2reBZ51UcvvQbXPTVLEGYTFj/AIAr/TY/PUKgqBlZ47n9WROpbdk88nO7IyTYpZR5UZudLBJZvTdbe1HwgsV1jdHftqNVt7uOI8CeaXSQJIMymX6VltGHyOWYXdt6fb8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gU3diJ6F7ChX+h4vtw1SiU3xcCakaSyheADPILUFy2M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vuIxy6UymkbXVxpI8N9HJiqA6saK1RpUlROVoJoQ+o3GYOENUxTmE0TTPXkW5648p5ybEaU9bm7IlUq6grt6ad+AzA57aGQbgPk3nPHal3aO5pjccmfvgLQhYUUOEFdxeGPXLcsc4GCohOx5PhnrWZAARZqURrprlNxcCl+IFIpnF7eVt+bFBly1jKIza92myfITUhKGxGLm0WoTC3QFSEs1F3B+t8Hs0n8Os2rDg56KcYiqDnOMFqBbDXqtw2Vh1Y4Hd0eVJmGqzehfus4Tnb9Wlz4tQLWwMYxkkSehuGo+WHQT9boahEmib2h3zwd5kisNJWXpYvPAHQbGOF2GCMi7mxrbLbvdvj2HE0wgcA7OKln5Jf9nUxn06vliGTtO6pxQnYHuV1S2HePJ0Dkwh89HB6OWeGqT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gV5Q1dAjUMk/RqONlyiq5lohtbEjqaL889nJtrUAbcs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LAEw8F45hW5nJj27F8FtzWveS8dVALgrK/TisRJj635duBxXboCmk0Yn98/J3FvphqhyJArZqW+7quIwbhe8HXzUEv8ZCHx1Eld4SX5NKQ0WoO+ZvC5hZtmBWK+OqxaBVi7dgUpNCS2XdCVfqydMxKz1R+MTfJh1bcPts0UPTyNaB4GTBZyavLqxsHa+bjyFE5q1HTkju9ZtJiueioZeXHsUtG9xVDmPJWcjeoC9Gwa9/OsGQhcbPee4xqzlh128FtS1TfMIgHrBXM0Ijo4FcZ2KtsK9VYn3YXhhkwP5pZWhgrxA7vSupK3+QaynjO125Jvhgk6bggBYpMin5wMqJ/KrEyYn4L86rdGP3PaS++A+ZVWqxS2zJC67xzZQ0jOd3Wnrlxw1mxVBnRodXof/P+0LZqW9+s6l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gVqm4aNWNBnBHwuWfnUZmH+J7Fa5twHwhgrsk9atN9M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A3Zxt1BkV1Q+atdu67UXzxQ1gwDtVie0pZZwomlIABvDpE+ytlkyzBcrrGICfhFfsh+t1J7Nod2Nkpm/b4m6csNPv1gg6/ko5SLKopTHaJgkfzCyBqQUBcQlF+q29b5oKdNB+hAjMqqlGheMiUZgmCzt4K/vzgV6gDPYyvpB0VB/SRg1M8Qjy/nwLu6O3sqPd5xkgCAF6qcp3lZzNBlJThXrldWTlz9+OspvRAqmJXb+ZPcHdWE+MxXhybq3+T9I9qe8jENzD+/9Xqfh7I918LtCOdWstL/joXAyhh/DxLneEJWLyyStN33KNXdbTk7kiMt9qnHf4V5L2WKDNV8PKZO2nfUxYKwKfGTs2t1BrQQqLAN3ChIIWaAfNA3s7zw6BCfK9hWIKPds26UhDrOkNc2lsub/duhg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gW9JorAYQzwiexPv6gnZG/NwaCiWGDAnD78YwPRBbEs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WlVlgWdDsYNAhFe+FGm5LKPpnhlmk37kV5rHmFzoESpKqo7pTWpvUQXTmto4tupC3yDDoZ5MDqgTt89pb9v/1uNsqVxLUzSYRFaYk1nkfUrRIU8MLltGSkbxyCgPrbQJJw28IOFaYlO9ZAjK6I+UPBLx/Q4p4BBQKxzvgn1eRsJTGMTYajN2kG205P6aZ5Ar8/kxaaACfxFXo52AE8qTMkL1KE7YDiRIyNs4qrGCWpixo08llWuR0KisM18n66MoeUNFW+9jg3NQ9FmYyGBBwbAehDuyIRT3Xna9l2+u5hvvE7avATM89ZdPYwhlrjYJQorTMqGTfisAHdzZ3lkW6bEjE2taA+mgNVJI7IE9SeAeBitOsz928fy7h9RT0wO7QwmsV/U25kJHC4xuS1gcB6Nf0aNGcKYN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gWNuHqRPW8kgy0ds+xyg2YNCgTM1L9w5rg4Vrhxp0KE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2lJFMJxZuVi1dvEG+5BwoHIVuBbGg77ChAWSLXJeg2ZiZokdoBS/peHGAySHg0my+ZibqNsc1083ekwKdt3zZ/vyYgzZAxf1noo6kUlu5fIIIdyrk9DmtiflGoSE77HA1cLfI7nSWq4xWMFha3iLfN9M0AIN0YEvRNXHad0rCp5d38TXjv1oPFNrw5dT02QupKeyRrPY4Gk8UfwYz/aYofjThLIY7xWU56y3QAq2ES0Aa8xvkXbQvPtQUHXxALT+s5hl7tTr5IDm/SYrGckkxx0j1uRN3n98mTA3h1eG1cyj9M182a95+GU/NtsctrQKpatK1yvIY+vbrZ10p0RSGDmLe0tYV0HBCg29pwxW+jZ2WcIfSeL6BvrSwKROwq3yjBbROCZ+KiayxANaflupXBUwGE3mtTsK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gWXOXoU3HxcmCVGBCjvjNiMX0pshM+hFwdfyRgDD4Fc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pk9iBPGZb61Q8GOrJmqKl3aQqnLj7hbnrcw4fbBYp4mqgQX/nA+Dbw6cQ6hRfpYAvn37OTsahdWynhEMqqMC/v4ohI7p3W5yExKFkUQQnOjdwwnP9thnQfo6PPJI29NELz6CyI6++sbc7CKq3KbUVWzzUj2NWI3ZdeZ6ed2lp9DWMgkZ+mcXz90iUh+jrkKH1NEUqoWD1LUeTv9PypriSYFLUoOwFejXgXsrZ7R47rxLogeDu6yCoGFzsi62QvH5pyAz4N0BkFnSmWOhdfHRyksy00Sbqn5IPvrSLzKy8CSTTXxQ8hHMxh8wP85FWbqwD7epyiLzG0zsyQDdiBBnPkxZ9NJRUm8v7+VG+gJcB6axbWCQmzf6mKi70NQdtD3qNgZXY3pSFPQXPvl2M/R86Q8RhIf2KT+E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gWe4UjRyQBi55zcYYr/MEHgY3Bqsy3rHbb8eQ4xqUlQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Xtf0X8evjhKczeP6qw043BFHrlMKacmxErgAQSlIrLtWkImmZ8RUnuf18FfWN0AKZ+m/yU9SsDzK+LbW3t+oJ9udSzRy+3b31awHG2H0+deMnfQUdPLqXlRzh26xyswSR7XCQIBgUUDN+EtDHCTZCGaE4/eGklqVo+MfLxMGXv6vl4+IQoyrB9z6dOGvztNosg/bTcs2B0LhUHoHMRxwIeUTbk5QBqi0b3DbWGIP00SmPSu5oTx6HjlG1CYLeEioO9PqL9AUCmvxd3Ok3WX9FFriRUo5EMrM1BLvr+z0GWBUw6AX7hkzfByAc0JSE5W3gLWDro4QhSoFVrXh6GHbsrvr/+C5VzgYqP3PHViSsLEZa6XzuDCrqzqzzr26GZtowV7j14whTt+r3d4s+HjOCqeGKZgjnAQq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gXNSXXubD5iSu+fYyHDUhFE6g04gsPEnqk4c3pxHQq0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HHtg2hUAv2cOzdWIHvQARU8c8OCBYXIX+v2TZh7xdnZm/CUG7ReU3hlZ78t7IQPzlAiPfGTYEpsTwnrxmiXOgazAjBkuIP7vXlg73bsd/Pa4gfLSzcRvyD+/TAclxIfhajnOVJJVS9n0Yh1LdYAk2x3XUW5zYW4XqTBCLqSwTpv4nj2+pVyR4AN9Mp/2SUPUqZ2iFicOHkLSFxc7u/oQ1rjsZ8z7OkrkqugptareLB/Y0sfFLtwCIOKquhn9WFQuaZXRq4OceCpiipjAb90Cd2umBtK3w00Onlt5NMM0fzTmsiLcDYU/HFIFsBe63CNe8LQW/McLJvwGedsGTUfl+ZJ2440PXurTqUB3hBFaOYbXQL6mRQn8ySZdWx6e6DFiTrSku5MxkDFNYP+3bQQNXoCeTUbFcAoh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gY13YZD0urZzll6d2Eb8OMrXOGfNqVrh2eJFX6yQE2s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Lm2C1wtJOSfU0UJ2IOziHTikJUlezhtbWfK0ZgdjQIpz3MTvOGtolsfX6XKsmbnN1kqfdeE8bC1862ztg9Lqqt6d3ka3w9dHPtT5d3PL5TXUOcb5ZzvOaOM0Uw4ZWOD+OTwBazMVKwyhRvC9aWCWzmboLu0q09+29QrG+l6b+jKZixMdsjzOZCrp/sdz0Y3qASSWexbF5NhffHgLXcGrU504Qtq7dVMcX7LL5WlNFZy9s0I89Bs6w7djQbuxx4dA/mN3XMOzGWqUG/uspTKocibSU4gA+bY+icp7vYK+pQs+7L+3WaE9WqTAhrumFVtCVfsE8UacTAkUzDEPKuYJDxg/B4PNEmHrrh2dU7hD8ZtCrOsIXWA3gbrc78SsMgcuMZj1NB+55KMxzJsSN0QRTw5uwas2C3db", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gYDe238UklA273nb025nk9mO/HDossjLQCV16Zdjje0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DZWU6BM+MeCRtHikMIPzom1fFrwcUZYnBNlmxG8rvta3X5mGrnmhUwXy2ZBGd3AGfXjLW2j/UQjAd4GeWEJvmfUYn0TIdB/oUJKw03Le4z9G2U7iJtFdWbHRWRKr+PXrvmX0uF8tGbHIz5aEEcU5VjDxbbKDmjM7ggKqfSOYfsMND9aLqsu270Hj/+Kao28K5OZHX9vc98XBKTIzMRUkEPBsoDrR8B+zaYN0VR97Oea43Zf9sVxFvuJOuT1hxkFo5vgAsj7jJvojR9SrrDRvEx8WQegxToI4syt32ycFM4LEIjOqjAfdjUas0JtwO/dD1xS0j1pcziHq02J6sPWbLiaEqzmWbo+BcMARD5q+0q1N+e5Uk1nxWEaheBJCVvy3dGtArR5YanfmIcFM81ak+Q/SurBER/Xs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gaG7okBcS6eYxhmjR94+XKEPCzI4FmhIr2RvmqkhCh4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EDoGuclXo9IaDH7mYEjM3aK/z5hdl0utITrBVhzTCBTOjoSd7ThhQvnOcIb5qcOP+u7qEuB4JggcNGm81Kt7TFeQnqr85c0R2z5K7+DixIJfpU4lp3ifY6Fi60WVqzT4ga2yiooiuMYsCGLyuklSKPvHA6/KBSI8fswExQMYB6CbotNehpgdNcUoKw9w9Q6EiU/U1r5T8NO7SIOWM1xzjs4GhKfgSfuHAH5Eu4A74IBE/YJSoUF6TMbzoZcUzrD1AJllZD4v+sNGOpdairbO9J+BN1KCCnQ9WsxTeDdxd4qVGa5arCEeP9Ugkb2sdSj9iOPjRTiXcOUD0QG2Z2gSb61tZjWtptpgafON2L4WNX9qdxZrGgm9Wzsv9YZHq9wjfYExcE5k/zkUq16tKaPQzh4BjACmI5fD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gb4AKxS8wf2e5oa5rgSXWLKm+wp7FFJ2tiSaU1xDSa4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qMIAVm0k8cLHo430x45bEVI0cnMWW4ZQmMoJKQ1qL/CKUE+vfiykE0LBNZxW0CbQZP7NTBk66v5lGGQSpSY0QaE69Jsx2LT3mWKYT5HSsqNOOoI6jrj88Yx6/R2l4X2rpr+GIM/11O1zsVaUGKzk+/OV4oTr8ldCz56PzoWrs9uC1EuQINej7FHiDeCa9Jd2h/+y/5lnF4lwOYhNF4jvygk7LGp37NarXcQQiJE+nNBuR/FYtvoFz0aJSsmVZhE/LYvmNUMTrm2X101KHzV9jL5dwEOk6xLGaVqHR1bTaGNs4jzSeadpbMd3kKukhQ0NvpacM7hbgnl+wzLiXV4mNlur2Pkt7IJGpAfhEG+fFm5Gc180OIgF1rtRx1+K2DSx6mr4AxxWS0AjVcyN8WucXCQJWeyQVOUY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gbQk7ZSq3FOAYB7ZRI/pvrELAqiixmi80hA37fY9+yo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2czz+aaqjFoBl32e7sXuPzJAzXM/UcCG54rQ3CNj5Ddaop98eMj3EmL6HR6uAAFSjPY3cPYBPczMgQvxIezIrCt82Y6BYJ8b9poiOa4DOhAdzCH8qrW0UW4PJhzbQbVMD1IVlpaPCy8xyCpdapII6aaJG1ID7AlVP4TbYYzAqlWuexmV9YDdlpMmcZrzBgNHRuADKO19cusZmFyI+Iz594aZX6TtoGqftcyaljVmwZvUdUwWoKVH9ztieWtxWUe3XxuMFnb7Z9cV2YBIytKj1blbnFdp8JjP1UOooIV0/ay1w2vPjx7RhukQw0tSnshyEhF4erLp9Wzz3n8L7pBcb3ynQwQn5kkJUPvXazKPg1Dbfu6w5BFtGpDjnVlOcmjhWFqJW5m7DiE6c1VMbh06xwHclnSG03od", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gbsMK9dXeiWOxDjdKxoZqEfCxDiLFG+M6P140s0mQsI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zAbBHJL2vhtN87lbqx/GxDwrEvPDMOgIHUrOsP9HRaNgFlhgWjvItxuPIFzFp29TZKY9AuSU26TNtOOQxX5Qy+t8XfAngEYUJR2rZp5IzvLHM/CHw4CaAV5rPpoZoCWzg50tai/7V5f2Yzi97gBuLhzQi14GhuQIFjEaqjK9M/HZtoVzU+Qq49X+2jsGapVC+ekTlt6P2Fclr9pW/t7H4vsOJgrf/FzPnNlmzHxbvuztjcw01vuCT/3j47M1c7gXw2rlTJtVMs/uj5KwAcPsHDTQutDFdO5R2PwzSnIYRluoOUk/TFfh2uyE9V8CJdWQsZHwJNguEG++LNS7JBP/zysoGynKSX+84M7fwpfOi7iGLUEg2YSCXJSNe8W5B9hu70znb8LivGILETGM9sOpStVHSmMRAe2/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gc/U5GG4gNnNWKXqrYlAFWbL6GzRiuuxw7wglTrEp0o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6Hzb4FWF18hEK03q0AHjWQ6RPDenIFsMYCDtTlr4d5+satjbsd9M8mS+gOQgGRotDCk47SxwIy8y1a7zLQCS01orko3fXv1dMIY/znOsn6PccQKisM6YPG0+cTKdXjP+r4jWiE/8WLYiQqdFVOsW2swY9y+PaL12fMDJMplA1Lk6w/bmpK65e7XFSoD36csFM1jYifhUHzQD3m+11Wluz84cdE1jsjBe3UGTm+zWCCEAX6x8g1/NPnr4Vg0CO/IEsBocZv73P5p0rESt8QytxVxnrqlHI6i0+ajSOWAgtZqJ7GJsWWSI2MWrjLSUMIGorkUECHnPH+2r/SmjO9MjQYEnq3+jnBFgdRVk+92TqvOuwTEex4ES2WRRRqhGMpQty0MJJ5zNWHgxpzUYmuL6V1eMLYwr9FOa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gedZBEiSklOwELcBYiJWZudnBQUaCvSDz3960HFCzKw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YycM9jLB8UgCWPVOnFSCYhVLEgsByStEkDKaVl7g8L/47Ae8vmoBG7viTisEJFg38ZTrvzl8bGhgYK6lw9WXZX7qEL0Feiml7A2pdN+SVsomKIM0ezRJ4Wp1fSzHlUZy27W8mD37wJFwoefcJ4bWVUR1L0lsVuPknUMD+UYxEndKpsExfnIF7EfrD4+0uqHqKN7Jxg4t5E7NO9zcv/XlyIGKsAjV3i/5PDKPjY+J66t+eduGsAg/wv1L8zsUb847IIwBdMCYEM4ApR1xPN9eJ4/Qve5E8OLCZbyC/5HFyTVMNGiWq672haw8DTikzvIDZY2oT0J1qWgXlo3EKrl9f3prWKPKRBZIZRtrWVcVKFlkASI3M0ZDjEY+127hbNFI2f1RTrn2M5GhDcxxAyjtD+M0TnGzBTZu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ggAdO5Ys0D5A+2sEK4zVDaWzEkX1FlQu9BbF4V3osfg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A1aSPTZqbgMeVy50Xh+3vU/i4II5FIU7yL1GbWy463tikkJ9Us0dB1piZmbaVxQj3MCZ1NmXswe7zD05W5u13eGcHhsjTn7ljgMMaImYkpi2bvfwQfwv8qVCZHtUp+4jIqxIpYTYgKuAS8wXk8GdYpcGLKMjYuTKRbqAVExx7aHjjsHUum0q9wErFOqiCuBZtyzpLc/2rBS4MKyV5QgtB3cCVCBmBCCb/jfDRPNeedqvsssDsxO43Bc8iCFLY63XvMt0tytXPHjPFjrfmVAfw+8W2a1X8w28EjAuB3Og4JME99xGv0Ao0fOsCvccrYX4iQonZw6WGSOmN7Tlj4u4wgMZBXwYGHZdgm/kwJALivFUmxDYXEnZkQyDqffF4g7dsIk2lZDjneoCmgQjh2ADumxDdam9aQc3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ghGYa5fNhoQ961RglOldJBEzpDFBBRTkQbCQ8EV4+Cw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sLEFMozC4eI1DW3SFtZO49oqCiqYNl7964Q1Ybug+H+Vjx6HwrgKn5A4Y5Vxw7InZD2GvmJwv7bWTmNgSgvszyKgX5rg9zgj1n7PJXoMa5P7dkKyheR3uk4uVfvM3t3DYKcJJBv7JSwO7zKpPzxhnORfPPHdQgo/FD+JvI7QsJR5ebskN/Fx/+5Mer8q2gKJkaEbu72Rxv8EDl/gDVQvQ7Vj0y9S5dfYvj3239HIKUT3yJzqpAVwfSqpt96Gss1pVMTjKrXHPXbC9O/XbbFimeQx+039rqW628b6UfmBYA54ZyB6IZdCdJqdRcOxUzTbH1+PUe4CTcXS3NLJGcmjEpYw8mR1fRKfv8NPGTzEl+1FiC/Ccn+AEEEvekL/xl+Qkxh91OnyGqqf5Mtr3iLAyoJr6xWiOSwk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ghKoUDNAVMVQWhzSNz04yQlssG6JTY933tKLGI1uTzI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ko+JDai7a1gp9CwTA5vZsETmx4DJrvUp/oSSrvi43gYDZNro6Lo7q0Lt6KpnXU6zj4C8rpUcBBb8mSSUdXKhgdPB10gvtcBwjq8wEEL5qqKiHgn36jiuyatM0aLeYz5VoH1qUIyaUlHZ2tdPaLywXWsWxgyy8pLTNQgBOQSRymuz1460wULl8c9h9AQ5jPqX8YUcxaVjNanxYYgwf7iPZcSfYfHM09XFCoX0IqpnRJJhF34JOlAiOuT20YV/9wchUBEPEnC/t+0JU7I1YCoS9XzrRdI1WzMnFfiGsghdKyG/obAlU676qbp5Tq+31uMtokmHAFyAgQKznYuWEZ3Wxo7nxMzK12Tce6s8u9pNxjatU4jJjy2AYUPo1VGEcOt1ArOwAK/uWrerJp5gTAolPSKkQe6xyFhP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ghOLg82DvGe+rKhq/2pOG110PJiwD9EE5uJT0gdIFAY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ixtLRne9H5icwidUMO1xtbTkeoxHpt5+l56dSdc7atDXQZ9Lpyp/Q1zUB+5iZIXT7ze2UnFF/WeRzJn+Dny7Tp5vMnlkYpCFUODtFCVS/q9jNnjAX0PupBUrJw/EgjWQjqgRWmAhr8RWKpgl0FlKF8a3sRxdpBJSmj352Cs0e7wKCymDNZIPm77okrIk7tZopJSAlXBtPZ6hI30h6gG9mKaP1by9UApTGztgIrua3RV9xcbqW3OEpwC3lUEDIQmbsnADXLH6Ha1GU7m8/lCdidfHRTOtzIMFpZ+rmRXyoOshTMdQl+buKqguwBRcrH/vno2KT1otR10vuUMzcIBZtw4aQ/5+2rDcnGLxZsPI+CA6h7PrB1DliMpPb8aFjbsc2THQ6TFyJ01pNRbv4i90WqUPMEXoCZzV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gm6IuxrUkrgRd8kLcBH9YcwZFNDCUwp02ZL4x1eKQ/U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i/7CSD/wGyH1FOCZ47/F0+BEyJ9eja1adC0w/+cEGQhZV/J1mHOdLIVvYXApiP9mJN4egVkAG2VY4t7nRNjXP4qOmMQzAuo+bbKLg5RPAvWsdaLvSOndGJ9sGuAqISg0ousSYbIsSprx7ugejCJLDveungALbMcZQLqmuH/8pwAmz7OklcTugXlR9QPL+hise86BXrQpWOwhU3iMvl/4HsJfYuxUqSYC9ui4VjUlNdagrjg8fzXnEyYpMJqyRdf6RAqFFqRpIYybg+kWMq+to8TakVXNObnNYMxqKNEXF6fZDW2q9jQCGAhqFrciL3fXe0/WEFidHTiw2K7IvUl+yPBrok5jzjBa8qPxZZW7go87HezxyvwSHy4LfU5+8fyLERwFZM6u99G4v6GmhaK883kWBMm4ZWfC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gmGaq3rU9W7SYUaOE+OjNuGpwbdCv3oR1CaA2V6oRqg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wYUrQ0d23MB8UaojNqZ4IejjZkvHAju9Q/+3mOROpmgbTG6NY6zvcqFv4v7k6JTc/vJmKpakNDOrKzf5P2BWq2FEdClX8IWvSoSx+T7b+iOkTFSUoWEkqenrtOeHdjwmDyZR/YWQM3RfkK9FdemY0N47nAOd3yUlNbkH+D5v8ZX8eO4yNGc0iyZ7JHM6Z3te974bY4SUNJobX0gdAuLoa3D/LBZ34Me1ZW8dK8AdzpzXXwgpPVZMoik61Crorlj3ktVS28vtB8spW3kCFBAj/hqoSc8Wg3y1A+g+kotrayG5NtGdc2kU9ZqxuK+cRmbsbHQGBSKH/RQwx6ZXZUzHEFwfIlIkw0Q8HAXKYAd+yIWnxw+HwUUzQEEQQQVdLAsn5dfHt0VaCKP9KJZnIGyl4WCbCaSzfhBP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gmxBLSSjYuKx4A7iASNfVu3jw1DC6/KDLYR65SaWJpQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pF13NWaNSgGISsutTmdqecSA3gAx3KJ3DWUWENupY9ezBg6IndFViSyunouhBlsAmXpkQ/0L5zL77xw3691HvsDThMWT8gCW7riKc2TXuXrooVsZhOzHGww2aE1ChQ88Yoch7CkMloYeDOLHeAUFHQX2d4A+xxjRal2Aqc8cIfmli40FLSon6pC6XAZEbjHVkN6CEl0ii/1LeP4Z4nw3QW5MAqj2aB+63PnTTBCRVGUMNpipkaHj4we/BQ9ys+XCqC4p/NJvQlUXqaU5+N1X0X4Vvks7yuwDHI5Rav98ReXKbSkh3GLMuJvpnuHSaWIBvwFXJOUMf3DFsD5P2UTHLb8PqP+b+RvvW7hjvXhnKkNrKAZmAZYBiOZ0nbu3qNXA+dj/85DPiGCpNgHmFDZh421UKxSjN2uY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gomsuoHwbvre26Y1LBTC2CC3IbBNtNXaLSjW2/9v+dQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vkjclD7PwcDHWkKS4ViHYeE+wKRNQchfRyfJBPSYPqCPATj1LHeryfsdUc2klNyXblutnLin8yBCdAkpmuaoxtIMMmUZyB3At68bZYxnIag19DEfOx0mGS7RQvGBPMZA7+qvAsDqwp85j3sj7uPU160Tyep3cGsofOjTt58gJvvIlMX70IgjDTYZIrIv3dENj3BkDuu8v4wEDorFqvx0GoeL9UQbgroHqazcO5CV9BSKHLOxhmC0PyTBLMlPkZE5/or7IlZVu5PjVuSyDlAs2iXxxVjzP4aSyw8jQZ5M9R4/bcC7bHZD9dfP+6O59Rxbnvb8iNF/JebqC5z5Q+EtEPePoZNiLNxLEnJc6+qpoVx6xpEj8hwGNJpNd0ALE48qFo3GxE5MTgom7EFXGkq+wzbxuwySROXY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gp6Ucit02CgKN5/+yL9D/ISzQbNSlKOM8xCpkNNItZE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yUmg1oI6bOASjbEn6Zm7H+1Y22cMTUNwJwr2ssDd4aG1goKC/HFLBHlqegllrcPJo5xJJ54CA9PN3gfxLre78omoywuBOVaojFxI34MGGvd8rjOzsObaUW+LlhuuDsN0nknkIMSsXGPkW6rXeZnxhNULtDPRNmDPdDukrvLnZyu8J8B0Zdco4ErPcS0cGa1e9pksna/3ycjszCoG2e6E04WDXnHmh6tu+DLHRBpCw3+s0KECDyAoFFBylJTg6FP748jdDhVCnqAI8hzERog060g/uAEwRn8zHrT9WuvlY/znB/2PLQn2l9P7lhzlwHWZi86qdPYJKuFXrmyEQtj5/Os2tIwCCiuKxBt2E+ElJqp+1pv+WvyCTLaxKUS0fEa994ucLNkOfslcBdvItpI9E6kmKESp9Dra", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gqv04i0AT30Z1d1/k9DCQmzlzWd/zjq2FVmjHjrjVss", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8j9s7GvgdC15pPL9x/gJBrkJRXcB+8klRM4QRsoNnN43yO/vR2v48deoVToR90MJYaPlNf+7RsA3riE2Lbg8OKIjSVUvtbO2yaxb/Dpm5fLAstzhCIZ/5eVT7xBQzKPmpN2L6y25+y9Ce1hX9nqC9PRl4V4kUmLIsoi4hD+yIPR/ipSJAr97f0mqBrF90uSMLdNR3O1orDvji0seI1/fgw0rfmWhPazoZkpgLcwYXjAGpXd0TtpJ9Y2sVy0V8G95xWO3Rjbzx9ICRNCxrbVmL1uB4vNEDQHlF2oK2cgOei+JASvlStvUsJ6jOn2g3+bZ3R4A3nj+/NllPwKZjY7voJLN0cboA+0JCHWNc11gk4DgXcanCOW2YIrMxZG5sdQ4BggOzFuV1uxoCJ9Zm+5cddIOY+ZXL8v3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "grNJQhZX6qTG/yQbtUUc5w0hem3ZFHQXGnwWeJvHgLA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FSOqintBWGSLhmwGqub2Mq/5noW0b50ZWkUAxBJaU2sjo9l4pdtDly0aV84bUm9Ry8t5Ct2k7oiUU+5CJg0QufEflJfAv8HebcWwZU5CWjudtYa3FOudZX2VSjOQSDqEbgBmQNmCgWyQNx+BunQ6fENFe7swb3grTB5Da5TXSPThj6BtFM0ijFlYa95sXgcBBZR+BR9HVNsffmPKrUU4ig+/UA/VJyv97dniADTSwno0JVpkAuv7vMuKhmCIIb2/u+qdvVK3XsuwjCF/mdtGPCNOWp0mlaE10mQe8woF1oFAA4ftDVfFyV2C94IF5am827ham+OUN0//fpr02AQMaJCcY6Rdn7Jbj1fs1wgE2dToeFQixzIwelXh68I/c7F/L+0nVP08Ucnssw6vjsJNXATJHD2TsMPO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "grprTnuLUqcIA/6nt3B4JusQot9RfxyiZ/BrZROUZRo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JdI7nvm9hIdBccZ1qfEPcrsPnZ0SqpflF+sDghnTvAyAx63L1fzTZBKBOWfBPlzB+QsjcSYaksBhnS6DEeo+G4YbjVMiQRt7v3Rn6JWRRNSsmtvOL+ZmM+1FIUzQFJRf7XZcv8ic9Add8cS7BH+EldEXDmT2FWogFj69FqXKztdCff6qY1gQWJCfV6zEA88DnjO3PlZFqZjuSVM8EmGO10r2IX+oQoM/qzxgHvP5RO4sEkgWO0Nn7lq7wY+ay1Bn5IpZ5Lfh1TbgoZUuxkMWUkl6lH5vkhcD/aC/IFayNaWG1jrddHx2Kbqml2WEDDKI0gMoGZzfxD8Xp7BxtJqBJo3TE4+MeZvdUPQCA5+uGLW/88EPC8AWRoYcYJVjPUXONAZFdK2aJG2+kyfTl/NWTT5uq05u7Vu9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gtZtbcKGCUvxxeiZ0wh3iHww4uX9tbkvcCaqnCh9l4Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ayd0suu8JCvMPPXtn9/hhei/FT2FqgdJT+Z+sx1TJQ90BRUgn0D8AoM3UpqPrZ0OGUHYbqt8nh7AaVnihzZfObgpsoXr3orCvUMLEDQAif4oCXtjmeQCm/+xfYXJEJA/j6SgIKYfzOOFBZOhIED39sU5ZHFAzLfAmRIz3/UTyfZFDJhfsu8sU8lmPac+cdwle3+f8dEFJX5pTbXe8NUiqZdE5fE5oyjjYHdotrxbIUD08Cwlpkvd05lnspk6kpdFtur+Bs2pjb1LioHKVDVYF4ZCGNue6ll/OtzAkQZAqsVDIeADkmAR/XP/4dDyMnf1fPIdVM7L4OqAOez+MdFxCpEqHiw9TpfCwOXqGN4Lcmtvc34CL6HEi8jViCnzumUHUQn9XWVq4xpQqt6Th1hkaSW81U3QlZ2z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gu+xIMQL/RD1rigPKKGnmskAKPTsl22I8Awcaxbmtek", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IiX7zdg8Jlk7xfXoe953u0tzhdexq+IHZLRm3Wuzi9rJ3QiZTxpXa4oMiKZT4ROByoOhSp6IIY8ZOGA72YSDwL4fo6AW2poC8Nw2JUNKxyz4WBDM5l1DmlkSRff6IkECmHJhKOgG1fevY+Rttnn1YDv++6p8Js/a30UqX+SG3TRtYlbJMz+KjwlDmWoo7YF/Hfc7CaPmKlJxBqjqrqWqMncrrWrMFxHvtFA4QueTMpITBaK52XozHwH8duXiWjvRbRdv77y7xB9ew/EvX74FnqrcTj+vD2yRTgYbuJtW/0BmdPsy5bKKJl6GCAB240Ow95j8Qpr266T6jCmW9BzNmX1w0i4GqKvUFrP75nmjAUiHHOmtVG+b759B7COpqPfY+Wkwzyw1LReGHyc+WsOAIrl2DFB1xP+m", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "guKafuFgW9coV93uSNa5LFS3dMsbMXmQpNNSSeLVM7o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lF1YsfVBVVpQLmLOFr3LwYLZZjiIL1gV8/1CogRkak7DTmNnpaMYz0jSeK8/go+oOQKa9n7k85oa1n3R8w4ZnFs8aInbuCFdsw7xQ/mnwSKVgDxYpV3Bi/DB8XLIEVI7BYOdP/CxRGTuY2iDHVPLXxka/JjDcXP3m968BAWi1sC2sZbN+OhBZfCCAGkjuQ5uf2XHwLdr7vClbHnA86KefLP64c5C+Oejgw2wN5ytjqtP3YX/eUBNqkE+OLtFnQKE5wcWSBbC2uTK/WVRqBk/jYLvz8ccauxkWcJVTa7SDZa073fM1Ng7paFyaoJG+WzQF0mqMc56/r6vLz+yKx7RdnEtinDh3m0NFp2+B2cpi3e5NoGNmDWciAbrWuaS71wOn5M4+c8CBIdsCiUhf82zu+eay7PdCjb0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gw1BgiJ43S7802JLuAYL79Sd8lj7b9ctEJYvuy+WWus", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uzqXqhNZx4u3I2/LuqrTHv+yDvcyOKEEl4gkU3f9VdWBXKSagfGvjPXHegKqeflqMJQmW4RauyKrtv0SL430m7o8Lyo5vgZKQoT0ndvC22iuxFJ/Xr4p3+geewiiuhbXx3qdGtwKumyFfzeGKqguJCvU/ifGivCfbDavWR+XKkNZHxc/CH5dNmWJUvSN/UhhpNt1oc/4U1K0K3WoKr3jPKYI6S4XqGBkwtDO8yD0V8MlLfbJOVXp6sDKLq1gFURDMyq2NGkdNEWaEMJlJmfs18i5J663OsvH16iq0OBINisRMA68LW8iWIck1haQti3y+hxdpEdXsiCR47lfppPmeLcy9coHYGqlzzHXTb+UoqADJjEobkeCt+OKeCOT9fFLMqKQAlReQn908TdVzFhY5fTfuc8JZ1EI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gx8MJUiNYpv3riZWn9wVvBzn/RAtez4DynYgiq8YCgw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JjDmUTqajnO5HIaBLz5E8KAPYC+r1pEB1JZ/w/+N4PUh+kP7KfhpPEGCDNQQiXna+66jWI72asOdmw6h47rLAVQ7hsD8hh6FXXgU4dd2n8VSv7OdhSBeQxwfwYM2poJ8xlKzrbuTwC5tpx7nuCkgtDU9VmF2RxmV5d3V8scbU9wSbeT/rQUR5oTbuzaMGhkjgegFzBf3dQel5PJaIGocVDq4HqcPsVYom6QBq/kgEu3KA+6mcoIEdhryK6/ogDU+4Wyi93pX+dUIbi0uiKzhsdWg5EwBfjgpEP2mENDSTisl1GlC5zLIDLAI59V7FBdoVVKcw7oAMiB5DVIAtHjdLPW479c0LrJyXpTQ3JE44uYqbBRDNOEA4NaxntSC/fw183Uv82RdXvdqmiuL3qq3nEIYFwAup48L", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gxOp9pMvtG0d8C56rqFcWvWUhgXBwnUZSLAxkXz1yKI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JlWjwmJaBSutQshTwTSHQKgJP6JtLvpwMSEKwGKI3QL+oxCnIzlutiv9tYgFDEsxeOwLAQrigKhMWsycriN0n0f9dPLJgbto4pVioCqETihkqJjlc9DqoNm4ve6aFKEHkrxETZqNOUP1UHVpM3HwgVZ2iOsqmMwCh5BrwVLpVXmn3h5ZtuHgoIF8OHH1T8lrFNEWcSzCIrR2VkP6+SVgDJfSFaHxbjgHXtZOiKFvXfm9L4h4iak1FsgBhWDeWYzQ42hQlLTDJILjMWoAmNgoC5IpqMFE0mdSzCWHvzi8XpjW+FshWR3p/TamekKWiOHxr/R8yvviPqSgvXPs0oIfWzYO9iPCvWFP+n/fU+x8rboldnTr/eUdWNE+KpTsOtPSQcRE7DwwOW/pzkckTGbikKICVtsElVnY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gxR45xYeuVn7zpu4iWgLg1FUf3BOTRWRFTImURFYyFU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gnIYRtSnLy7uIZDqKvEu0nvYEO1n5ZcbRoYjmh81AOPcyeIOEbnpVhY0RdjBJeg5E7WICW/4tTnL4TIdoOi8qWynm9eQeyGRSJNn/GFacB29vNcTO30WD125/FQroiaShr0AZrRK/MpV3n5sxeDx2M6gy8nnqnP10MX5oWjDOZFQOcW2VF7utx4jR6sWNX1I09UnFa1A24WSyQFsaok0ZQyCmJXdKJu2+/GcN7rR9GjXVCWw48fSVoDbTadvOw3LevC94f7GrY4b+ILbpplAYwLdfR6bTfSyL/lquJt8xtRfgoB9VTOgXZ7NFU11Gqtd/0+9LmRPWAU7txcTQ9BZ/I+EwS8LGR1KuSkPoJqEpubDaIFWa/fLM6Itnt1L1orOpm3JoF5oYlUqB4QpIeEOnYvqCpd6u1w+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gxSGgL/sy6ABoKuE+Kra2yxSTm4qwiFr5dQSISpowDk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YHSIqf6bRcIgqx68oPM3Y2+KioINQn6DZtRaFlpr0q9U8BlRG7GGSSEoi6r2zDy+ld52MKsdKNf3GXWqP/dSWPMcPN9lqG9K2MLGPSl6LEK6OgqB9D1Ym3QNI79T6LJKC9OLxnFUyE1MxH+R17QGFjhzdCCPJvfwNERIH90qXgjlXOLWD8OHXoEVU6usZsJBSNhoRrEo6TDMbNYfjxA8iVzUB/0sUKhCOf3RPVb3pmWLDxB3UCZNe1jSpSuGMKd458m52mXv3/vmMecV/ksBqngA4FtKnJnkLPsTGPvYVefNdr8hWTxdSHegf0MaOHT85JsQe6y5w5aEWQysAcA3v0DQKq1v4P8Hnzzgu6vX/2887JhmEsERkUb8/z5zAzVEU+ccEQLiVov0v7/O6htqZ0u3z5luEF53", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gxdO4IUAu6FxVvodBNXwh2u/8mNUNwWowjcK0oMsQHw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Y4gyQZLFQMpCh5kcIViKorVvtMALkSi7ZPIxT6Y24xQyE6ulYLinrLRsNwjq82+TLECUuUWweVqU/SJe60AVAOkdwh7qdz6QmuIZn1cEchQotjQbZ1Ug8KkQMMtwE0yIGMXZmDrR5RnPpnkbD0wDOzZ6y9UwbDmjG/E0lQE+jKrnduEijykRE/saJjcBfjCyhjAyWZSJTaS9WfpGr4B+eL+2pvMjxc9Wyw7NJobXbm2aYk4fbKtjHe6sKg52dEuId5wJ2eGX9Ivjb49qb3XvrKwnNHI+0Qh57dDHpCAeOl5pHGOfU2gpgdxi0di0CGPhTEbffCO+MS9cu9A/bpB1IokeZ0JuOSFB3d418OKZVSYqc1V+zHRlf9UksfHwQGy+qBQYUE9vrnyfyE5YsZcNy47AV6paakXE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gyMaEE2xfBmBL6yiowyvfSxXPWUeY/Cxy/gfKVU0NOI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "g5/XVTLPZ7I8UT2RPAMAb+aPxT2taG4v7Icbt0xM4lVMdX3KN2XN89Jan0eC2UT+XmrYCHDs1UIowQz0SLzMEzYxaffoBrVbbfFUCIsm0WYiC2uCraKS2v+k0/e0/MzAGcQaOCizSTLc1jNsEkOzDp2RkJMJN1GaesAVUOs+U1zbq2KIn6QJeLz2wv1KbPcGB4lT8OATn/1P80REW2wVJsQL0jpx1psfs8MOwPbKMjT/p9/3W8F6kJURRbqH5VD/QMAaFfMWsbOnHpRims5l4UdAsPaofhJj//9Ji9R5NojhmCC9cX/kYEgaISKNWJ3/VnrZUg1psIbgq/ZynrN4LWBRhkDXdPJEimRWAQdhDppM7lujwNZ0vnmi1LzXqbMkil9QopybfjeHEPM7GMhOVSkoP9ztpgP8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "gzgh11b3rDcPIjsBeKDebov+rFo3J3k3vh6l8dguhCs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "06CyVSbCLvGWDoKgF12V8Ca1b7etNUP1fH5oAwGtDO4Cd/ZZ4+yxVdRXxet8pGf5OeFjsORcZ8PBH38wypX8hAgRx6oDevd9CGzU6kmSJZq6TDQjmRkVddiBidG24HlMbE24FZ0bO5D1ldjyVBaeIlcdjm5Kl8mOMfHgETvdmleY5rQGsfFo42z9k+X/H+f2reBMr8UF4hx9FHjAGc7EYnpoz0o1l57XqsMP8TVEM45gEjpFpmEOM3wxXEGiRkme47gk8SGIoY/y9BNSiam1u3cCKgEMeC8Nw3RFhDjphz3UDBMKBN7auz4hI1nMWLRq/BypAmluM5yKSf4KPna9pKQZpgkwo69cEy9UL20q2Z65bXzXX3wQ93mnTdvMK8cAPmx+8KJcaAoCm+zF3MElvKUVaaCtHLbe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "h+4QE1Glh4C/3dNXi+eN6fzNo7jbEk633ui3FzUZ80Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TBu/NOzeiWkCgWBgd37JBfkbMivoyWfv44OzMde2PQsSZDOvZIhsyNNiL3DIsV93OEwgXlhZvSnvZAQsRbhiz+MmPRqII7+8t2s5ESwYEcxp9f7v2sJ63DWZrlaBjYlCuJgo3mc0mJhJu6CA/+19bWZ+WxEANno3QH9szXiWIo1mgXr+Kw01Zp1dlChZfEOGgt1RocRjfzL0PfuZOl85dHIXKvvvssVQ4CibzJ2ftaxv0IQ48bfkEtFaSPYIWQeQIdGui86BRST23FROifAGxGuSvkjPX58zHQLeZygmK1vNneaIeteL+SU09YFN1p09ya31+NCUEcKGi7sKIHLPrQXN5DT8lr/EQD+28FlDgh2YKyE9OsLDc6pZeYmYvMhpZAtjBi/rKuQkgxd9h392uVoMSroXT/tO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "h1aqhKDy3jpyclBAiAo8jmU0VBW+XF9LfD9C9UreHe4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SGNy1cegf/MHwEGheUh0KtzpXMAHKkeS6Qggv22CI1ZSvtqi4sj/VC1KS12LRFEIhtvkF0qzfdcHgS1V33l2dym9hdprOAO4CHvVfE3Cuhtas3eo0b8UhvO4TOpuOX8zOWA/2tyHTWxLgmHav9hlEj9IA6VzpshWXG5r+meYu7FKC3r77JCeb8XCQ+Hxf++98F3ygfc8BZmz41vfEvP+H1GkQreCrpbCyOhfJLAp3OHHkiQQKqgkAb9NaYPI3jPylv18iHHWR2fljnRs8hcPgwcAk6KA/Kf3kv9IdYNmfGriog2G/+Ru2iDsOUha/XeSdCvE5WETvD/mDUvPYRS+4PwuE8GMIE4gVU8apdtkpAgDtLckKULIx0ivLKs6pE++JPdzTNvPgmnHqIb4Ohzioua+/lK6bnCr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "h2uqCRY465dA5T56ydUMTpxGvnTzS5ygDM4ZAQptorE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LHWXHPPiMtEw4XhePyh5jWqPlaojRM6vrQlpWG+a1HWSVnffMU/M+tzwxSZ+n1YJbsa3e7VYCtDnhtsGzr7oMlPtRT9zajEOfJqOIOBPNVreJfd/6yqpMPL9PmZuNcK46R1zMI+rBicy3QY3dqUHNGzJLDEXomXzswgNdiEVEfVUzsBCVL8XhmyXYBydFPwUKUGn7BD7Dr13GZqtUk5M9JVJ+8voEsII0M3NkXm93fvvDg7y8QJvnLLpXi9pUBzrYR7AtTlsLXWepFsIPb4TrMCVJqiOegQp4B0/9d+0u39KUQPwdVNsxpsjSiNa0PJgW8pO3SpBIWC4591yVCZMqBNLqbbhsXs0EKl0Qi3PUVFfEp30ryZxN2AbfJuAULtPRMeaTIcCMdBLPApMmpEvr25dYW6aK9lg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "h4Hz+UjfnNdBeZuisql5foJoUUmAPFfjDTVZ3s8x5lk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XP1bU83FqRS+Gg6abiMV/a/vUFI8g4lw8FKZhVMgDX902CrD8CoeG9IRjnk4Ozk6XMhTsKFtiQHSneoLzGS0ZT7V9HQbDfzW2Hxe+OttUJxLLLBloisqailKHByXp87hIyoU53tsrUDlZSsli7zScySFxb1++ohesu3C1fC9ZnKOcTUth+6JjKmOmgFB/xOCDFX27scedd2NmmFJh4BWHMuPIOUVupPo9zUt1tm2i1QaK2/L/kAy2XCKD38O080Y41aIAq6+2CbEDgMuz+J4+UZjGr2cM1YQeakN524ey9r6srS8xnSrQpyok8hCO2/XrZcr8SpEfyzeJ4qiftz7J7nCddRgpGCXsiHK4nmtIan661Hyv2Uh3ms1yq432Ev/ZpFmdFO0rHNK6JztqZ+Iny1N1A7nAndT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "h6WNrmxiey+VhfHvvadGJvS51UoEHef9x0VWx7wuu6Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uKBKlW0UnoMQe44O75+bPSKkqt+T+9ZVAgA31sK3xDtwsq9wCjSSruREElqwI0n7HFA5Cr82V0tvUOaIJY25zZReJLMjzKBLzDDUXnorBWD0SfESzgzhhCFuuNfFcTbKU63qu3aE6FKPhnBhHx+fJD/FF+yDIB4peuFWx/YqlQtNFSHbVR7vCanUbBD75Bt9/F0COJ9+FmYqLScN1C5F8EQGrR6ANElxrLvhGhS4oQLyyGY3XKGktL0dNPMNvwdQgZbw55p8X5CZxIE+sHDF5dQL50c2IW01G0vmHnRxulkgHwRKm3ruVieBFAHCk4me3LUxOuyL7NQjq1uhcm53EWiqZhQPOxFG/mbe1WngoEhWxvfJI74tvjXdCfoSu11DM4P+r+NFQhS21VoylkSehEDNXLEpTZyd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "h6kuiC0+VJ5K42TjwuGVkn60JBxcXaULocpaHd8lJOw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9Idskx6WqGM1yYiwGGFOONVgxBYA3sTGNehnsPY7VxX908AB+eYCYm/G7nvZd6go5UinSwvguMB4ZzOoK/O3QVVJbUjdsdJSgFEKdbxPaT96aNLlh5p5RLEdz+8uLgcVjLqODXi7Mt3nHQ6W1C04NABhx/CPqzqjmZ7m1I8wOHytzJINqof3T+pCOUZ0gfiD57a7GgxmcCsYIOXWyOhoqCq01A0F9epxr+zCRzDneXgtQaFg7fuhOQj2rwgYc+2JhTjYv7ehAQQzEocximxoU/I/rj/soCttS5AXKzGkYiaOT7Hawb9LerYom96lsXVeOSiZo2hyskUQya8ZGEO4FL6quybzpXWPU7YQ5pw2BZ2RJ1yUWGoxvnNy5YyqgnSZ10P+fYRJJrATzf00QNcTZ4TaScHLt7V+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "h7WpjdyEQy7m5cOx/9G0nEOEgQ7TWrELYpkF2ySRk38", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CJ49JzL+2CJEgsxfkwH9X8Fh7ua2Pmn9AX1fgYfRghSOevOXLApDjdjDcMxi1rXzX+ho8EnO7VnvYSjepzoGD2yDeE/SZsda0gFEBc5ktD1/sTR12hGSoxAOwu//mZWvxv83+1WhjzFe/KOVqPaq6eyY0bVjLKMd8Ua8o5aFnUz1eAl0G2g21lGkaT+1CcINpFqJRu9TMgYjxxMm+VMjE2zbRMfC4Rw3VNrtYU5OSyXYeopxiR4BDH51rpoBqM+qzqNz0igyEErX7cet8O8NGNWA62PQR6rVZzL+/Dnj/R1gQnDNsPrW4BNomn1wZfJJWzGtkZybZle4TCAUc4OKELyVW4uzpYOIhBMsYZFCMi1HRv8DjDDwWtt8VCqxDt1HXfzhsd1f1UcZyVVZLPJOQh5UFDZjkq/6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "h88BqUzTEsVfklpu2Lhe/RF1sgj65XRSEpmCe0KUD6U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ldcArMLmazLrdSMyACY8O8TS1sibCc8OH9KQLNWh/ss+IysqeDKmj71QFMkyxt5qvdaOp7Ry4Y4GMKssALXl89ObDq1dZohZjQWsI6yHfD0gHuh07TGH2VvJRdmRAZZ6NUAo3sLX5e9z3C/uIAPKfGU6xQn9HCLiu8gI9nOlsTAvzz6vCvQOPYDQBfkIgVNYiZeIIzkKdFiGmOaL6e6qcYuuhiCCb87UN65W8EGDvRfsNPyBLdKNJh6A/DwGRswDLnFlqlCWMFxX+V9JizCiic7YJ9r5gMJKhoRl8pFsMod6qRgL68OgkpKRMkhh/2TD0Zm3Gm7o5bLD6j3XYkeimiF+HGfoz2c3Eyd+n+FcKj+wHYCck53b2GT0EScpfqdBZRjFbmjCj/fKGXfGElQnIweYOcvsfSCT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "h8HJAIiZyCFX1KOM6FM0AUaR5NhL3l86La+zRjIaqak", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CZlrCWyVH/2330PcedbxFEPp7cHN8Y0D5M4vE+FrdzPfyNT3e+9hyQlIKtCtAxGg3zKy3Xv1CttHaeduMHoQ2p+8Z6mM2ALBd7o39vZochamTo5LUVQGtZtS6KLyepjAeiPRL+aa12rAErOCCo64y9Gdxd52WqcGo5VzaCWMVTPJnPdWkH4acaLtxT7A0Wt9zKWnAjlFkgMIVANi6SpfjEMY1v0QJsQ0/VbTeYwar37GNDDCohdcMUSUzRx1s/evY44hxzevtpOzkBCKukvO6GA49obhCwnuc05OvxBjTCWOjj6QOs0V7iOuCD4yxN5Twg1jsxTkJvUn8So3WVmW4hmO/i5PJ3qlTYZf6O41ycqA7dPXqwPWZJNs3h84bWyQW2qGKCG05qHGcboBeymZqNjYq/MCD6+P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hAOMqaetMLN9nJo10QmZlUOBym7k/6GOx6KgkP7wjWA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8s0NjxXcJClhY/juY99xR+TI0X2LiWYMo38W34F1UXbrq2nGw48EJ/S/rDLL/RnCRW7+n53jz2BCa/MdJNCM9Rx8zufwyGupWe/gFdFAhAJeeLhWcFqX5tvcZXcQTdMjGH6qDWZKWgoBzDZsYB/29QJWT5i89QBoxS108dIz+f/7JF+drB++xnGiv5Yu96BIWP9UVXNiRxgDNrvqmXhHUcxIpk67kaFe6exrKQOYlZ6/4cIf9XxdRlWFJL6wEPc7oawEbvkhR0Xm7PW+g7Zz05mzQ+2b3TCRJeN9gEJ/cmQlw2x7afaINqvg4QgOO9XS3lEpmKBMvCrIPZ0E9Rl/cZDQMYGoYRtYSWQ0ThPn8pvmErmXs+f/HI4mzPuQMKwXkyzJu7HcJj7/83ClD0x6QNCmwv6ilq36", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hE0Z4MhTtBSHp6hDkGudeFUNMcpIoDLgeCBAHHURBXw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "H/St7F2roaOenGEEjbBYEw961vzs0ZOG5bi2LGDHqn2yu2uMyG9LBifAAa0VMl8sDkhxhxgTOZOxfWW17eSZZP4U5cTxuNhiuWpBXHrpwuJlGS4rB7GRru6EolnXqdTw1fQWBfdAkbR+JG5DIJlVy3NwqHOzE3JiSsKq5D2dbE+ZzsNJxARHzZWF6Lzzc4gAni+8HxlJOd09LpOuVR9Axpn3l7wLjYe3zBdYyt+5dvwl9gLDkMSl4iejRtewCPHgWEzyrb7skIXx1KDSkpnYiSn8JHmHLKF55uhZp5/6WFE/K3lUjXWtLO4I/adDVLCHCec2u3ilFkciNw0hv+K9d8irgy8ffdYfueLzrp+HYyemMTN/0tWTfR3c/gWmAFptChdeZsJDmcLehtjCOBoixe834DSYklVV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hG78OTEn3kAH/GMIC4mqlfRcMbSKvObgAw0VXJjacgE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AnxmouCO+qWSfzP7T73rylcarHtqda4a7cA05MEzT7f+b0qAjZdvJ0uGNobMjRYZzNEqUzVZroaTjR9gyAUK41k/g8+bW4XXlzT8BRlh6QWbGlNgpBaHugB7uJQObxe66Sqb42jH4P7qBW0qBxyEyacLbw/UufDUvb8uvZairkF/uaVKAS7jAOntUkm5Yb9zi5sKidH9WQzffZtdKsq08IvqkrLKiXfKMHNO5JqGOYsLNsfV038JPmtHe+WkYTNf09JLWraRjX4dzohJ6jdRHaAZSfQry+fHYwxP+WJNbP+nI+yQT9YwEv50KWePN5fES7xBl9h/2uaX9ZrIf/cHCu8f6Hk8yr82m7KOTJCaB9vdIbyWR34DYGTxOZrtf5SbdPkbiSM+h91hQA7x+DXLEWTFD0ybWflN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hG7C96BX/jxpuKF4zhaNyDoli1vnWcrlsU08FI5C1Wc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hp5pCSyxUKlqsu7rPhcr+InH/gDGQ0758AlDaLNzDbEuDAv+wogGKp2+i3iRNngfJ/o4VbdMpbsx0UDuz0Sbd2oFwcDa8DvGx+QeYcrFNVLm5j9EP6qNW64od08mVmbljg+sKmnFKLR6kEhAR1rcBY4QsIUSIZWJ9Wr2b9dP+03vjBsjPWvjd98Kdret2y22JvmJWJxX01Nb1iTkS1Z1Xkl3szvD8ejrP53qRe7D33mvOO87mj/cWlw/Vk9FLZlUwqxXvTDkgvktGrwiIHnJqOxDiJYMm9e9Ro+mPqFvxMfXIjPm8eMbF2sVFUUpggijGdLYM1/BDEW/sDs0H4xRDSVRuBavJ/Pq27QNLJ9miswY+8jz3iylmg8GCPEgWQywyfyj6m0Hs7N8oeckegu2dphM14R4IZqE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hIeInisPPdeH9gmSRTA2ekCnKS1M2tUjF7cD79Q5u3s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8kKWGS3O+PoDA+XVXeDKy+C1+wQCt8cQXeNY+OK8Bfw6NI6XjgzaMqzF1AScLEbkzeTG8G+qMKKVrV02EIQJFSdYlbS5/0BEZgnIQdQaD7fokxPYPEUJP2OrImys0JfljsM3ZqquSSqGQMT6cm05ckDU1gHmqLK7xUxPBmrxgZ10X2d5Ue5dqUkxkKzpKCSk6pNVsCqMXeT42KWoIiQ4YYQihuxxCmDdNX8j4M8JAQXvc6Igey2F7PLJ7urixNxd7ZyRuFvMf/RB4jv0mhuRQ09BsjiiyLNr5ThkXy5lMIX6tnb/8ZGJPK8/i9l1dGttJlViDcrB7bGyqtJA0HmmMWR9mz+8EuU76UnZHPx6DsEbDUwFyYsU37SrNJNmqi7tCeZqqPKiDtNlWlONCtdaJTmMCKhkY7dJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hJ6MeE56HRQkMn8jfu71K5htqnGt0Jh4EKVvM5KP4Uc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NHlBYNmezYxcXrYWXwHNH16UDuVQ90BYe+DZU7zbHqT6rTFHhuWsH743NZEzDYOmCqNEm7G7yITe+KIphyrhuV06HTAlG4sHFmZlGvr7oaGaI2t4VdQY8eQGRcKMtkqMS6JxJ8WXgoO+4EZeNSPE5u+si+L65AF+sYTBLdghD+PrJjOEeXRMMNUc0tYHUJaIAOIGEQL4Mwv3gLMoAMkMkd87RnRX0W98ZIoiydfwZYcAxsY3r6uVy6RUa+usgRchO185JSBoG2DwkpmVQFQNXqno5gBIvl68Yz0XtKu5kh3PilAKjU83ZxEOs+knhZ704A9aGO+b2TwnHy1cpjpjLM3JNwmc0VQteOBrLNLbRD+lwb1MaAT2VRVgUfzKqgOAGT2xDVo/FrqUaPurpFqwNdPMTODhfUqj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hJfIlQ58DUnL11OwiZvsvT3GHIO56rmHmXgrgAeqmi8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pQO/0mIshPuzWjD0Fn9VMq9hXSqkazeD9GKq0nPY/sL3ezz58Jey4nhazA7NMPLuYUwYiaT041La+IEH5EVYlwlfMfE3Az+TaworQDtgTq9hQCfWGbp24Gj6dRhAubJUhyqphfySOQM7Zoz5BYhI6YJtf+CVTgFRa6oam/GfHOgG6M4CU5xFBXlXCJ3n+CQx4p1sS+Sk6czTLldWx9hWRJ+TXQska2ejazhc7qlMxLxaQ0/lkM9Q6dCeAh3okAWMfvv4k3VPGiDAa5rOy5I9rtQpbT54dAzZ+K7WVOLGbXs7a/JF2jw8FTugBxCE8icS6LFKDl9dfjwUh+oT7fPu8tEbTlrTzCGcV7w/KYyJVh6RJJUmPhZb/rc36/kXI6mIzVu9Jtrrc3KNEFOKR5j4RLXSl1bLUkhG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hJo05wVG3E6CxfunJ00Ov2BJEAqLALZ+Ya51Ui8N7ys", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XcMaCKGp6oIIJ4vTpqKP4D52QwZ0yjMxzxdBAK2faPl8njqEH6F7KvX10h5JugiM1u81+/bajP9r2OeWBrABzIuyE71xXXwaGmH+c6ztxEpYhntjsIiBCWQTzudgf+fBRLskx4V793MKGdhyvm/SmaJuOpHe31zfdzCbpm6/sr2YpJ+O3Atx2Jy8Y/D+wEwAFCPTmV8/SWCkUs7jzLlMvU+DF5ASFVTbMC56c/tAuDhuObRYjFQ386VwXRJD4ouccgfIvpHIcFjq1j+XkZtpT74ae7hf3W8fS7R3Nrkwi3O4nux35pQAcg1xBah16OfFLnboLO4qmPYixZAbtlzaNKp9nBbnC3EgGATUSnC6iOOQS/RzCFdOkFMU3CMv9h6KYWI2K+bS+QBUKd/RiUgoRdzxJFz6ktfN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hLCtOg3tSTCyKD2dWfVntQgwiZWiBMbl3y4124DrZJ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Jz1QONYPHFtP8C9PEp9pDM5q9ywTE6Lti87sv5MrkVJYIPQM6tmHClMu4sg2cu3HuXltL7v+sguWOA37Yf6kif6cDmqnhg3+csxaaLcspKvy1piNxnMR/aoMtiHHbeXGzAPeyWkYdRge9NmaNVxJtRUOMM+Sa+p3V79nPuTMMAMyWYBumfdeiaj18VGyUMIyYy7i84WHT1JwKrVYQ5/hpEO2Eey44unWJHiGLtBf7L4BXfLBoky1KU78osr6tqhKq1thfGkJltbgt1L+Pos+vGNFcEcgeUT4VNs5zCeLJ9ySkEU4vao+U8crdGg/KJagoE5135ZwzU3CnYlKr3Mba/v1utTQVw4NY53er/fAaDt4Gb1/q/oDqVU1tw6r6edx1oiqfHrd7tDVcRBNHW+y8ZDoJWrXXmqG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hLRlhybZA9pPU8H4F7xXsVuBQkgyHYZNa2RIG433lV0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+d6bqPIFcMC5WUPobRGFuexu/7oYcz8GdWTNuTDOSdsMqyp+zASg4WxK5yG4ehSnQnXCb0C1DbjTsGFGqyh3DKuFbcvyCnSrAgk5WLjSpaK1BoLeuhsbWuwnnUngtA0Hc15dMlnOecKi+1SbynKtYRtUmrI9/+cHRbr8ixeXmjwyyk2IFEJxOKjGhQUdt6+HClsS3j4/5FzGPNjrkKm5JESU3Yqa+VezP+HApLABmsmBM6WQJ8Gz91exq+Ti070627JO9Inv3/BlizNBEMt59B73pnt6omeA0bmbtz5+iMDwu/4ztrFFHnVj3jJ/4ddowzV5Ix1wkO0tvrn5oHXaskbTuhvZQaH7NIgj2GTFUWeplikThUAh0snpG6jy7jLKaz6avi1xHaAl5iYWyRICLOPutyRjz/0W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hN4RuVrssblEgY9wavCOW2ulVQ7yH5R99bmWhS5rJAk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+gdXzX8waXfI8hleGmwtYti4WIiRkwMmi13a8+3ZUJF2Lx4yyvw+UnSpOmVjz62zcNNLaqH+brhsrCcBJhhhmKDa2VEyN3Vj+FTKv4sXA10MdvkgUXTw175mGwufr/vK8ZQn7mvKjnAGikye/QCEnMqcrja/bOlTR2y0W/CSKjBJ+V4SAQcwOMByH0ouxkfjQ5j/CcYGYAGsYLEx89AcIG4gGfS37UzgIUgNHtIWkFgJJsJb3+E4C7oz7Xg6kxrM10mRHrnHPUYk1E0oRnR2Vhk9GF2Zan0pFrwXR/NT8fKWWvTeP/J3Pj8Ubq+2pgd6Nx+d1mtRO48+37RruHQBdhrBYB+WH9jpBM4TchhKhJUPibv00Ez/5G2ygv6KSWRmG3YSQ6DEieMtDyDRfTD9s4Vs3jN+vv+3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hN6wuJ0vRv59GvZSzrIc6cAeZ5+L5fkhirYasvXXmEE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "U9Uh34CaVl4Sq7RlfyPmKNvYGguEIk3SP5nrTTwl2gqrPzNit9wFy+MaRhMkn6vgTQxQLyzKMM6YJsWFg9qmB4QflsyVaSgccLT+9jpXyB6GZS4vhMrAf90bTmOoy6KQd5yi1KY5uNmWoyqETtNNtbUYmylb0tcEK+KM57xMmIGMehoedyWbDY6G/xj/f0OXS9V+GU3uxaLi/1agkm5OQvu/gLYCHAZRg/jGuQYXXENCy+2PNI61vPPBu86Gzw2k1ClVPjm/P6JuE3AdnWZhL5iPnj79JgpGr0Vw/Gtwm7xO+YKevxJVwzsk+LS65T/vrQ5EqTpq2dGj+FbUEfNVIQrxOB7y/wbBHtEPBzsuHeWmDb3ev7tlssRv/kKAfZ7tPiQ6BL+4s0J82xLseMO4iTXFzW8Xj5BE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hNSIvY19RC8FEMh/TGPldg0ChDmese2Ot1ZGMHU4AMk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "z8sTnBznTCyRraXxra5mx3ph2wqDDBoXvJW8j4v+PKE8fZ5QHcM83eMRopo8FIt8j76Pg3uxdy46LwP053BjggGNb1aEKg/aSwZIDY1WEJKWlHpKSzzSspRu0Zy1/W/rrWjNFXqvBsivCcpVnlJltBt4sunOeY93AtdUJnqrU/9cnXB+Z//O2Dav8uZ92d2YJqRn/94IBvm2fJymui+JKQyt9oenNAiUkwpqnWghAJFETZAa3UzrlLXx1ALztfOjcpchgiIuxPYo5mHr5C3U7V89XD08Hc94iw+jST6mUtwMc4YWeAsXyfw7ADTVe7PX0TPm0DFYYd0Z2BrXOuwSYjLIp0UDGrrtkhU3kWeQDODEkqGWZ9XafooRvDRqiGbYcI2ZEBykUJ0isoUlJyCvCvhrk0QmE/Ly", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hObg8ldHb7kv8qRi43XFfLXdbtOS+kMANGRGSWlHX+w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0hPkelHT70dwXvNcUopCK8RUg33F388KqVGIw9IjxTlwz2kiNdivy0nHYNKs9gnDOVQoFyTIVYMa+OAQdxCQHyrioeHrInHZafFwYj+7qwZCQlcQC1B00NYthepGQIRU0pligLpbpd3JmNJVgBXQFuiJnQ5VECVFe+B1F/U/dqnZO7tsisKfe2Joq6VfM4fVkMvnT9TgRngvT+OrEDpqKy3r0czNa6mrc/h0WeuGMnST8yFrMGgHOpygEHxsqKyebvPaBZKJwyD8YQtoDq2OUEmmISKlmAbvNTkG6qWUvzdVkmyQY9kx71Lz+FqxLg3xS30SMsbp4aKqFub+sQwC4AYaulI6BJ/pbnTnKDaqaXzDCmq9KAi11XqPdbAKHttwS5lqFBeNYB/I4cIAyKHJfkc45v2AzBSX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hPzwqbjJJOqM7Tbhi7sNb2azdjLauO9uYSEEwmlLN0k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sFjiJnIPCVhBemQ+2+JfXMJXN8beLTEnfeTv9N2+WgpnX0PeqNkrVpR+ZDHiQ6iMsYV8WKYThLeA+Jgey3VbDJZt3TZ6sUMu5+QXWiq50zGxVHEllNoJm7lTAAtpqdIWMRVjwkre881S6ldN/QCwv3tvtTK/jDQ99OBdz2zhsZgW8m8AOmTa/5C4CZVibIeyFUAn8u7ism84rTFG+hHGMrpyk3R4tJ3/eCzgamCzknIWoYKh8QUq4YG5rbcXSFzDKcJa1c/aXyhQ86iJFZ5+YFIGZCawiJ5LCwpfomvAslUhCGSCQ6O9KybFKXmt+/g8dlBaHc/aLDksBh5P/K6+eDv7APP1keqUbeGNCOEz2ocVdfxhubdoZDIoRUOy8ffTqkQeO1DmCmCiRgJ9paqM/fmlnQ5z1J62", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hQmMuED2DHY/Hd3QpJCfq/+rXDklRBs8HG/1iCesB8k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3GT7VUgbhtprf43hAdxMavGOVQ7Bfk3D7WIP239uCsmQny631JcLtc0ZV0J36+oN6JyOnH5Nx4uf9zNCXZTx0gLIQdhIkcMa+m8VIZMGDXBxoMxQBQ6h3iT4NekbaQDVzPRE8I6i2e7108jC7YXvEcYgd8G6j2ygU/rxBfecYuREh6Rzjgsyifu1kbAdi83bFG1heiyDdX1Ps2rUYrn2ab72Lj7rVcYe1XwxwOqEiliQ4BPCMWq68UJyzjcsEW9ud+L6HJYkcwoLM3bHN1nChPba5Ylsr365jof4EGdwJElYMj9VAXAYMVwwLpWF04Coeq05b7B9vql6cGSE1k7j+rGhSIBCYEZeylZyXy/EWZN60WAvnieB9gBzEprfaY+jDJRsIko2IWtlZa92ybopJ8FAZ45Vl6vd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hR2b/dpKRmozoMnvBaZDP+DUsIuuq+X/lGxaYfJbQIg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AtVQMNawANIePLfT2KKDodfpnXfwVmfzmJOyYSZpY6e3984k8lci8More5uyquJifyqo1MGyzwBLPVRsrdNPQ5BnBpzS1sKSb7nnK5FN0zS3OJz15L8UhyyWdcFVR2xpUyP1Hn2opvTKAWOAkQTCX2rqCazb5lAuI2/HU6sjvTFlpbifIikOJ9f6Fi6Sh9rrqn9JQGJUByWeIdfEeN4kLwaDtVmxj2EbLyBF/UewFv4Wq/F3L5ZH02gXwPM+2Xqs7oXmxeemwE53/o7cUMWLdi6R+FhiC/kXRgfFfBAsENk4G+FbS+2YZ2BAcJgTQmDe73ixoLpGpp5SNbiivusvUXh2hmvHYE2Ll9dGPaNLaZFoInBnRJxF2UPAemJB+da02YymhpuNiQ5qHEW2OtEGAoDVJ47MotWn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hScC6G0nyBe4cHJHJQwBhvSREMhCEZZ92izlk73jD4M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HUCG0LUTzsqqKuBoADimLBYa5Vtgr8/F1oq9y7KKLadOhnd95BPQpDLbRde2J3zTgnT0RxLWk/AkYkYuG3XjlNp0uNU7x0qbg5DoEvQC2SpEIzPwCuKwAo3PNPkRKalpTJ6gv+PLp/NS7bPEPjKIg6KjZyUOCgFvGl+n58kkeK+ewjWA5h6L9skoFvwEtHKkPWSnQzR5h6sMzfqWVcAG9v9iGRXVehv08JNiT5YboadVrvl8wkwiChcUGg6xfla9zcFKarRBcfQvrXY8gAC1cru9O1qCTKSTy3SpP4UffiulcZdlGY1/IWS6wtnKLCMrTMNFoNJf47SvgFHXui8tVn6eUU4hidk0iQjbWofpmic7OLfeMfymaJi4nEtiufLq1ZRW/hTchmGkxyyCEuCuZ65864mZHTAQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hTLFLyhz5Ct1BaTn/j9+0+i8x2WpEDe4CfFAFwClSQA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sAC/CqtAHO0tXQUiI9SC8jt2cv7PEQJea5bbIz2GdvAiGr2bxn8ypXPpRetfWI7QtKOTcnU7hPrNax5FxSIgh1mAkaxSYaG/tSrsb3BtGZUiJfEjnZl0WK8HYkrpvb8YkgC0gjl2GOT36ooa5ojVN+2nCS4ADSHhqdh8zEsezs/xg9gLSzDNRyr615aG9fv1aPFxz/onK0nuOuxFyy3O3AL4X0c6McA7uNDZazIa/7nfQtW5aNCnl42QNALc35jv9dQd7DdZDQY1+0yoO2mvG5umKQprWJew1/g+G5D4IzS+WAhE7krJcmkBSI0A8NR9Am7ZvPKPK++5iTTbvidArdnUwAE2hIJPWRdhqXLIKGe1GyiurMP+Qp1uNYNmkXezt20v5MJZgYqf+QRuCAVYBo+4wvxdT+Fy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hTroy+jwl2wjEiF99bcFkUnnmJGps9pjakGAol1oPpM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ryUMLh5z6hbYcHaDdj7f02B1wUDcTKV2Q8Z5dNhiXul/aIp3jXxaP0SJkbd4/kaZPZoGeL3Th5MxeOsOJlKhSPDpwk0s2miljk6nqrPV6CR9vBYdptcqVz4AocGH9WSxtX7Kc7PA61g95x4O3cmF7vivNRwdncGJOOvbqWRMnOoUVqBGu1D1+O7Maq6Hf3jldGDkHm6lWNxkZUg4MZervHAh6A7hMKgSnZ4hGO4GwxjryijUfxqxlPRETHP0qbyW426pCGRzvZrggAEjl6qCV1touuRGJ9pXFJeSYHtK23D1xudsYcnfWP5fLxJfsd1z59WBWw3Aw7/s/o0X1ISXZ7fFvh8AGf437mlKezNr9uyhbQ1Dv/MX5JjyZBIdGxghG2gikbtwbMvZ8itOhx42A5Cf9iYaQkex", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hU/RJKz9XDsoL0Tu6+8W454Ft29tD4XRLrbqyWcPuDU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TWtS9bn4kWkUlcGj0ZCpbPCd02lnJjp/OggzVIwqCk2LJGU/djfTOcQaM8hYq37alpyjsu3QGZtO2etVFutkfnY6bebRtCre6Sb+3KKeaGV2MGaA7zIENrQiKFWk6ojc3dJFVeJdXJWytxNtUwGFpnMhHpqFZUeFN1cHZvcYkSVnqXhibLi/ej4pvCzoKVbE0RHI0GbYpUrQ7IVpsEKGi0BwkfMiDk2COjtG9wkNg60amtgV45f7f+3EnHJJi+tcQlcG+btZdFfC0TxzNXrhl5OBrXWxFuaQygT2iI37cqjOvHm7255pisDR7qtGQuDjGESxH8utmudF8+Ew1LdXU39/bMbMj9oG6WcuIro8Sy1Fa6BkokOpi+W2JJYY61tO6o4lohgTNNlc8MerTA8eZlsZL3OVHXGq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hU3j+lgb03BjOcu9lo1lxKkWj/W0Wk7HL2/eXkEdMr0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OHGQNGuY8MG7cMLUd5o7qzIDZAM+EFmztdqC5iFS6FuNWQytgWceEAiMaTPEEPd+s8ScgSYXqGGmMxlnQP8ubauAqwuhzSSvE2Y56lsoikbMdiEqP+Ame0O/yiYhQVIwNyMt7gdMOexjTi1Tes8SAr6yWBGFs4Tuj+mpTUIv82TncUQqZCYzgM6LCgfxXbxANE7VJJClB9EeHdu30rrCzqilAsDPuenxuF6D1xppCcQcaVFUSBm3l3JOhB0aA+fY0bqpOp9pZ3eKFRo4l5T9qiUv1cW2ebmjkXofuwbT2fsAnJynhga7+EeNLzMIj5p9r3gaDI1gzI8m+O+GbV9wFPgN7fKZGghVz6MajcGAGP6w0kc7JkUJGER74JdRCoG/vY9M4Ra74LcAoiVxxQGQvJ+kqtssSmGH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hUIBCI3uOvixzcnKE/J8r0Y8Rstip8mL1WpZ+jXYQDo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eqUZ783OMyzY08jCTLytd0xB0jruAP3LEryIB2vaMB1eKQAOmCZMNOdnxv+drsS7I+xe8TCqE8vEnIWYAvkBe5lPFAhZvp7Iq2iCfvSb47nrT/ZLJXwsZk1h97bF3UWtZpDjtZO6/9d+wghR4tN0+8Ko9zLbXa40uInpGMgnVoBwqJx61jy60+nUu7Vhn3wWsz+C6iHERLYdSii/+i+1SVjTakvDa1Fnt8nlagZwj0FnTAuNi4SkVhDzB/Ji9QtSm3H4CTsiGW+xIS9Cu3FJrwRc4DrLzSBaWpDGJedTP09HGU4xKUsyASObRAB3g+baGmP2HQP7uBg1/A7OGl963/V3WWReLqYF52WXplvCQnWRSuKsAlvvaHejA+gjQn0AIMyQ9hatigqAuRdf4zeDNReWFp5Kst7c", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hUy0IkWEIcP2Zn+Mj8ghOS/EhBYA70tpEfQNg2pkB9M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iGEr0iYCs/wA0Be2MXW9ZjznCw957lPbEWes5BUa5emSMITt3zk7hmNImBgvLGTfDgloAIoQI8tAFbUrNBuKIHVmMa5e8BbqwIJKM5HYvB0WgJfpD6ZBk/+UcLP5AOEH3VasKI6Gdw42toZFgP5s2+MUQHJSNJYLeAs/Uy4otUFE8SxwqhkIh2xuWFx5hbuVDFsDATvCiMZJkZP8h22kEciN8v7iUPe9oaQaHdwTuewL8ESxtqPidpQHiKaSkOJ+kwVsWWnfGtUXeFG2Gv/E98jrBaWUQkru2OEeM5I8QXyv4dsBSoWnNv7AFVnEMdNSyapNPxnjCiZPDFJa5zki4z1JO35I3e6UKSO20sRB92Qvv5JjAEAhOayVZdZvRn15qJKPCLKI435YY1+dSZovoSIdanC4cOHh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hVqwko2mHpsy5uwpTm93qVKubEaDU5nFuRK4Q4CjkeI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sfmZIdhT+ubsPN6zMiyjn7vb/lzrtqUU/C92RLGPjEffHnNOGX9LuUfNdjS0JTW86116h8r2e4j6fp+CuHSoMJ2s419JEfFuVuce23UbKNlGglBugdwfJu4T/+qKruopzlcyIuqO1lWr2o5rCiI14ZTKX+n9vRHKD4lac+VP60qeB/3BRnNeirTmOOU/xGgqJFAgDXCpHL4/AovheBlPiC2DAwbdx0AQaf20U8WFMRizxNCksMPl2jalFr2VuG5AyKSe2WX0KwO8QMsA8QyF9WgkrFuezdi69QPWiEkx7qsjWTJRN7Yd9WzAq4mvGXbQB5BstSdBj3giDrTl6kkYmhY6I9BrsqrlnXjtKes3Rfsb0y5TFW32SSAhw/5zwTjyV7Uyk0S2oB/8Yc0L47DyIAwed+8ioS7p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ha88Ti6XTzt9/VUYmwzQz5S3OVgKS8Fk4Vc2yepydCI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "emy3um6VMl+8lqymi4FhwmuHqwXMeEfnBM+ok4WsrRXIk5bSuGl2sN/0hTisP464O2UOCNpymRNyg6nh12mdHIUyta/NJDuDYiAZ6jCciIYpfQINEuWylXE3WGmRfcK4CHIKMw6K0xrW71YzNbB1y4XgKESNtECMNLSZZTmayPTpq8q0xelJUitUSL1y/jpVkTBKmLnp+yuMD2Ur0hRPj9vgb4QggKxKttCbyGvc35pKNp7V7Ns3r5G//bGHO/Dc3XT9gbA9eSn3cOyW0UyPqUYFY/N6ckVQnTpZixjfV3NTXhNqYYcN5pxq0KySqmRtYybgmQKbG2OTxoyejMDPuHYlmBpGWijclCcuf22PAF7EUWfQpnGC0ciLjKqFeWHlnY+Lgu7GE4aDThFQITHZ9n1UpNRqVRdw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "haeSWC/a3SokRLKqoSO28Z6A+i5TK2kpdAAtyF4b5do", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "omx+w1/wwACVTX9IIgOMjiyy7KpaQybq2Tt6J6azLbuexyBp4P1dbjajR+DttinEs0V/9mOajTadUVbQ8P9U+eIQjVU72VF3b17fgpJmORqPDHa6AcxGLyI+NvtkR/yOze+Q4Ns/UjDNyi+7494amQYQOk6qt2zlNK4S5xRauvOoGsjf2kUB2OQTzYrs4lPPeCWNaJrEHlLaV/5kHPC2bTOWn/FzOKAmUoMmrNs5iemWk3z0t2qsKS7vynEqV0HPSvzZfEQbz1FDVX22OS2mzQ7fjvJaCu51YgmAAdmTNuZuUte0x47SxvHV7C964fmJz3Eja6jf08K4aqBMJhOosjRGwwVbmRhOLjjuIJo/OuAT1tSac0aDJo0Evvuf/Kwhb2gUcNTnvAqZWmHp2yj8sjjGe6mLPav4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hcGtV72e23rv6llTJpabgbo8ZK/3+kU0XZPKCGlIdLA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DL8GjXAT4r6evAriFY69UvORJeWWpQ4uncOipIOSjGDlnkSiq9fTiRNTbIQ69QUFk5vCoRxRAFmzg7Tgovpn5Ynp7QW6XWEc2lwKWlXYL4bzU70tqexmovVL21DeSBRBAe5KxDcUwljNHhP3UjiKeCi6A8dW9KsP1YVcgLTN95+yCMjWyjHkX5ah6AaQhIzpk/i+ccBgbNreC0b/c4NNN5mdnkzxCKrbL3dyn3JY9OZtDrbDiPnSpF6AQYRjAFrldhUqZ9IUhmhvaq4S20QH1X9ArihCbMQNYfIlPWoZh0GOueeO+76M2wQJSHlNsaOvfEFzHIk/SGVKO01HBAsG+BUd2Zc+6l2/HtOoG+jSyFu0S5xS87dMWDH4ZVZ/frab3SZAiXU0Pfx6vQ7wIDOuNOTUVpIJUYVm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hcZCB0tx3EA4oSnnKiI6JJSnDD2Uw7j+RpQLA7rh4QI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bOVG9jDJPcUGKgIQ+w/Bq4g6NNvy421/JvvISyllk86VQYfcT4jyHyjVMkcK3RQ5Oj0BSCOQwOXvcLDLm6lVbsoctBOUfdN/HDqlsgVy7cAmdprH/7gf8P8g/xFZKi4B8YGrKlfZnypPiimfn6qavdNqxKIT9DgrOnsyI+89036/BmYKeo0IGMwhbPUzwanzkn7p6inh+g3zWvWtBiRrhvcR86tBuq+eqiqRW7FaR/+/ahVFajuMqJXMHo98f0Y7uif8Wy7X0idNiFWVJNdbF/VlLf9IDF3mGPkwsnob62DnWd+FrDyrMmJTnCGSQrVm7L7BxK7pCvJATRZ0XifrpkQjS3bSfDf03xQsTkML6JbzJ1shRucUJoWo9Gj3bygXwUWWcgjiXwcdWN9VM0JJrrtVG3ds4XLJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hcy6htZMUeSh4/rghu3E8IJLjvzQ1SDQQiYfP+w7n0k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4dIzYeGU8v90T2UbdPyvDsqoIWjaWZDpGOPrVUfS0ZVdEo1sF/Oxm9Gpenmf3rdEH81oZlqW5HvV7Ue8N7KSBTkh4MSHAdrfbS2u+Ul9vkoxsAwSCGCDyRobWkC4Uhr0M548ZgxGMuTGTG0EXX0qANPYZm/5IO1S84SRUxBGu36dny5UcFJNBOeios137E+IWS7GRbQs8VhjjkJVIwgMsFVawKlaIdGdq4LL4Ik8GQtxoVG3g+MGmBdp+naMV++IWNMeuROt38nhJtwBa18QnLwPYLAnXOoqkYZSSsgf6ApqWNnGquCF2WbI7NL5BnBbId81ZOnFQXWEoq6+Zo4UMh/v3lVhdYd++nHjwn8/ZjOaqGdDpRw0sLGssoPvEmI4OekorC2YmXaJ0/Z5JZ+03gxbWv8Ct27f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hdudJdMSNwyzuA/LpaE9vO0Bqb/VsczfjSU3aSYLzQs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VehJsv6vvCuNBrrerH6afLjeYEoSysrGBu9OAnxTtGjmkq9zfiVhExAjHXUSHwp6Wn8UzyAaus8crDtQrkUE/5PrJUpNPmrvEaIlvMsA+JzkHCcH1Ho/YnIVsS7WEUyARd1DtDzxxTZrb5CGEox9x06RRHJUns5hswqO3TAg/Mm4A90Re+Z1VAMqUPZb4qW7FiLB3UqySIypxSkoZ/nvhTZUobRCNMhOAJKXXCA/sKfkyj7+0Ew72WPUiZj32+AOk4BhQjMIL9xe4Y3MtLpbTG0YdfTR609YRboViavkwCzfzzcS7/pByx00WT/Wjv+ekaaCcqfuzb21rqZ9ZW3Wfe0EdXEoUWnN3cJ/uvUZnzGihUigRU559aP/0iKUSoXWiTlCySr6FQngFcOVYvBj0M7JvgyJ4IMl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hfXxobFQrTr4LOFe2x5/tKcjDBYNjq3vDcJr4PZgClQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "loPeabrel6UdscncAvsGd2zjp6LnRj6e36QTqAuGTANGIMcmSt8TpBMCEeRHK1YWJRYPOJswdL0scNnW38EqMPMd2T5iuz+jGLnTBMinNTIfinOo4IZHuCCRjCJwsKA5SUIxMjVfFz3kioJMHZEFbivFnic66DB94mq7YTZGQjt5jGyTFSbJmWVjsHXuseA6oMV/mJ4wBKzpj6rH5HWIBhDKPf83WsKMLG1n6sKmWHKMse9MueLYFRZmrSWZ2O5+iL3GXU2vrLdDoSBSG4HYzEJRDLieKaQG27pCo2EQfA3oMg4kKgw/NrUZnlwPG2+cb8oP85QvuUvgoKILJyc11PmzJZBQPaQgaISd5/LwyLQeBQhERo+pC5C+3k39kNN2VZSLjkylvsu06UE8iR+wB5tX98uTZ61z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hft6g3DaaREdJhwFivUrll3kmVj4kDjSP+moT9skOvk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bYvI2GU0Hjq7U3/z/quLKsVGiMrCjIRBjBYFFPive5ukpHOPlCFdrxAsV7osvzziDDtf2RFQINjF4DsEKJNaM02HcdvH0AgNqJeWTXCICzc6qBdRhuseJsxP1mzjoAobV0WLRUzQjDDp5VCsMyyLZpx2GFCMf6GngELqm6YLIHUwjkrM1PuRZvXGUIXeO3YfeZjhel9D3fimaVX4HI4RFu9l4dM9sNtlXkF2O9+FM+0MPPw9GivLdUtd/CR44so5UzZE/p9Z32jVCtFKIDbmWECPV0+H+DOHhjDv35VL+ZOYWS4he6zWmQWn1eWL3+DcA/zwD8IZwq56TGcAC4ioR1PQZONMGopafkxzGiRe8geO3e8Vyjfz7ksCN8zo5mVQXOQtuFqVOi2Rpkbt/4SuVDBxRBnQ13ls", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hjhKqfXfIk+ei47jNme/0bDY5tmgCeXKQ05B7uCtKAc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3ajbpJLDpD2M9vd6NVF8VYnAKm/TqrqTe52gevUnRcEzbNKW3DzhJP4LdkCX6Lb3/JtzJRSuN5D/YtC4UNOgHLlQHifU+PBVoMkbnc3ohXQ7EggCH2pMXcqFeAAMdabMZI8CxJZDhnFeX0JQePNZLw5Shl+BUJFEqXmJqRN6hJT1eTBIOWVgKgzqisPU11XGD4rUx3YJ3CR3ZtJLH5WLHPNr2Ya9H/KgDwv2a+3Si1VW69kIlRDSSmEOFdxSCmD1d1vzFndEOL1uhyikv69muozZW7GvS7X60NfyjPhc7ilYDXnwkZ963xZud4mVrIH0zGRXyKfk91llKynfgLX9hgZHW6/DeUXJBvypwgWfMx+pHANRqyPJHEc4W52vYMQJMonNuUxGpdOdTvW1SaXwLCExfGKdRjQp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hmGMfoQ0HwT2FYbZdJ3vSXzs6wC4goZQEALp8477VW8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fshPFAVUKpivDm1K+VzdwFRfpJt9T4jTReIFK6o3YYf+6Z5pDPV4HQVZe4ORi/9b6I/SkzSZRj2vCbniaN9MZZFEp3gqw4K2KsYvgQLMiiS87LzSXfMNoWsbuSbHtUBlfK9aq27/NZKj/YZ6dMxEAz154tfXKLgaQZgQddeOuolP5Bm010yIOs6VP/WRBcpaP3z+ZZaN5CU2NBfOERzvI/KlEMJCiZvDeu86XR1SRMmeLom1SNVU7Tz4sU1Xraj272fF63LsWr1kyq5uQa6UAv0bZAPl9AyxJG6A/+m95cF/bIArkwC2F5UAKuGW/0J1e8kSA0tO2m3/XGEf8cqF2Ej21KUb668Zou8nkTT6K0phmQNUw2k0s4aCEbLUsjxVHpCvuVPTVLo5NNU6siq9uRdF8emtpwhl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hmH8+nyBhQXvhPle+7ytskwwy4GDCDV8wqxzQsD79+k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LFvRmtPiSgFCLymYoaHpSVAbPa6n1TYGEsuJcCE8TcFsFG1xrHplJER57IfUi3nqC17VU655SCe2xNcmtEyOC9G/KyQAaW+HT22ruU7BINwKaxLoIsmHtLPYzhaewMvFUbn1G3UZtS3LoClyasKXU/6dYeIkrKKwwM1cqhvNict4leV1DYGskB24FkHMyg/4vLfPkG3J89sYPeGPD8eiQIXt7ygtiBGmnQ+hmDAMFR6rqgqUAtbEz30coMgpnEWJfpz8HSCCCpaqNHG0rtjA8Cm06nmHexyU2imAntOIGCEDQ8tpwVISCddaM/leOA+Yt6H2UYQM0tHFUCyUgooRoy3LOXuAxyQkDK8EftmGz42Dz3z5ab560R5EsZ9IzOuVeqtchYThNdr3tNwPhZRyw4gLcG7RRHKr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hpAN95BJbMcd0HBqYLzoHFw1BJEWrVPrhqnkiYTP37o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8pDpakGy3TEca+8aK1v2pUqN01rRcOsM0P7vkkPCEmNNGLMelgwyfn5RvmV1cs6917i560Bkm/yNYcoV1CsvbGpS8u9xJv7ieRtfasKqYe8zTZjPZ40idI2glzkIXH5BXz9RD0ACVZpSR++K5W8498Ps+rofFloOhosnyTqnlF6zkoH4Rce0fDWxZE7HWSaHQ6LARWqBAggzYVx70gzZ0ys8gSdAfx3BJd7a+2nvw0CvTs1fgIy6mmp+Ty1KEX0k/DU17bTxWiD2xY3IDEhNIUZe6i4H0iWMmU1+oKGmq2HYx+i4sRaM+m1djcDr209VNKnEVVfpZ5Wo9vVjCTDcYwN6ypOjDlMfV0PwF26yl4rgQ1vcbk3jhyxAMK8vPiXXI1dEbCaYOh0OiChVBZH4+6irI22gBwv5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hpTNJsWAaNhq+98+TlPfwt3onkPjunUY3RZbUQ0OYaE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RhCVkKOkMXbWtjU8zLdktFDlFX/Sok95brrZLy0Kxb1R+mHRez45LEBSS8briG0hyIXlne39xzzSLiN2ReOrcpcFmNLvHgft5VpJFy+c93BqZfZPS2XXxsib9wYgryM9rMTH6zrI6djQ6mIog/Orx36jgg5iijI1znu4ice6ZU4VFyEh8PLlYmmOmiwVh9aE+kFSyMz/Gx5jZPjuzfuEP5bE5JAME6bmZOEWbG0OAw1O8yDoyEl623LLtXMoQy14u2qUPlDOqV7Eov1Z3KolTbImg1lyPzGZvvD4xg/KcRGkmLUlJ9pn25YShkvI+C+tnAlaDpOabTiov2jrqLq1xnQHyhXw6ZWtruE04NMmWNwA6dPHh6CyQzb9uDQOLRvEpa4rID0rQWpXlsOXWbRwMUurlssYTU33", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hsNqAU6A3paOZmui3bZ3bFKrStHhnP1uFd/a1GRlxzw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FjBgqoTZ9UNXp1KPXpI6Q4wqwwoPTb1OQ4+EDl/KasL3PF5brn/wRnBMZ3SdlTcZhIuYLsxHq8mWDY2U+CJcbTIkPQVjqrff1Y1LzyugNa4jOthbytKyogT+rdVT597XWvC2YMlqBcP5oI7IyfB8TIafWytevsCHjAD2G/KXiYmjVeZ7ReVgpVOgykE9QPfkxsMFWmmAL1E/F6X6+FQv+KwJ4KsC1GXEdl6bVmBZh4xEfmj/i80Jb44fTxiqEbi6V7QozHnL1wIKEAk22RUm1KbR6gI5AlH506pFUaW10BHEgE3LrRp/BvdROOEv5sIFfBENn/Fobx8PnEXIbWnK8M3jFbIUSgk0x6xCk8HZVuGRCB6ShDTywdWlkG5YdMLaB+sXpUAAV9glxF6W/DHEtJBmxvN8M6S4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hu+lLhlYa1Eec0oOVmBBaNv+M+TBClpJa76FtzaznZo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w3DQLC855eS60d0/Z4cylojuwhxQp6uBEJR/ljMODB61vmT3zg/YFiA5co12IWjtPya4AYwWpMTyYmLP6tkA2v3QSBR8WxaNXUFuyErLyYzAQr0zA6tknrY26RlwGCMzguT8fxtMqz4Zzd8Snh4shmeILXTELA6G6BopXZpzrae0Dho4tPZmWTVxlsp/cPZF2GwP7SD3twgR7oPGVJieod46czp0MfJM34Ybnb77qE4O4G2DHsBV0h7psyWVQs+t237Q4k2Ox2dCafwvEykIRvwBb8XcPrGEAjRZi6w7tPwUekAUSvN2HwahEHouGkI69h5fdCZrHdL7Ppft+quJf3qMJq09otd8gjRCL1EnCid4QKmSRICydRCISmGuYiDSdlKjV+D5XzlRWpt5adm/sHv5D1ZjpLcc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hw4mmSnqP53bMOdpFAA+Oy2S6FI0NNxV4q8nirz8t/g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TmFkREjxtyGgXQKzHw2RbVt3y5rtxeQU1go59pu8ZxuGP9iK3kdMm/nxGF3JckMdYJeEDfyxJE0lj4QqME7EVIKgXyVXEYiROWlXRMtRcLfUWnS04NJyIbsiDhBNpPBO/D/gcnVi4VDy1BFqtNsAx25HOWBW1TQZtrt5sWyxE/F8Ldd8BAMV1KWnab2NwovCCqXJjFgK6MkdgJ2t4cSmSVcZLDltmWzpvsyUO7D1o/9rO5btY3NvhEJT5EKeuKZnL52IIcswzHocR5fEYo0s1Xxqu42fKl3bSa06Yszbh3SQa9DKfcQfr/21y3J/4hjt6X7XNk/kKylqoUrF+y16qEczEreRrUg8BKbfvqIndVX+vILsZFxNosuD8mckO16LpPSN+tIN9Xzad5zeq/ciEWGCdj0BaLRu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hx38kIuUi+aNOujrx7suyrr9HLEbBiJ+KyN/L5OzwwE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YKPc9/CgLpOuMaLpULq12YjLGtmjgLbxwgkgZVPz24EuoArM3Z4QWeZhQSKPK0MxJ43NHx+B3UD8xvxbBx8vgb91ddvQKnd0vnWd4fGwAcnBuci+AhOjmRG9LreNGJtuCSLIEsG93NBVQodGLvQCC90+fTrxtj9r1SNHvrFGue/sjF9f4U8Zc/gnHOPhMl/76HqUi7j8/SIGmjtr2UcyPZai+hwGK3jczIlp8T+rVJ4ZAtt6Px3ixvlKeIN7Pw+z5uH5aey6cSCZfHloBw9KkzZtTOgfS3cEXAgPWWMCqJhe0SsBBUGuH/05CsRffpZrIN12Fabbi4dzs4hZNbZUY85EM7Ji8cdVrnRNVnVk1Q2xYG8QZidHUg+eIcwfUIcIa+k6e5JAGpLWgfI+LKd52rFZGoACR93e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hxQYtYsX+RIwy6JdCuB4zjgbISYVf1aFclGLa5WxlV0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Md3h4R6gJBaW8zhkuypfB2IBFGfGhimdpiQcFpC6mV9I2VpRMH8gIjgwsxWTX6BV8bWq7MDlntucuibA2cQz3uKlml/wNTlbGenXcRU24E2dkrDRRyCLiLZ6jQslmcI+4EBX2eEwi5KNCZJfpMwYwRIAms3cl2EoYbGkn8cIk4Wfq9Q6OgERwSIL2PXidIVxZn9mvMBd7lU5qqjiqAKw75R8FuS8JFpYmy0BIDVo6LO6fZxmpERRSgdWlp7+LykljtAWcs8J1lReYT8M6Nj8rbfJapNmtciEe/wN+KoIjKXXqF3u8Fphj6HcIJUhr/KxGkLJu29lHqDKgsT0c1Bykjq12fPn9sOgNcYQeXoquZFaJ2LEItJtG3R3ThdNnKEwudrlT+GcRnhNoL4hCEKfb4oL9KZP/A1F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hyF53o4Dq4b7qXSiyRbsxgxzecXaqvXuaNnmltpnqus", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L9Enh6Cr9N7/ouI6GEjB96Ka0QlQqYLx5y0nkeqCzw25wd+77r5a0hwiyWgI0lNBC4Zf7tkmuvWHvQedercmMsG6+OKXISuYLRdcTsBP18KFVxbVr1gGun9U7pwtvK9VdJDMs0oaE6vva3hQLoAPw9OEvSamdVxWPub+wgtuL2VkcyP4t/ygXl3nOQsubHyC2M9+DG+TYwK5URH5lFK6TpWDdXpgwCgDromPkh+QrMJSSvWMpfoo6781XZIODpXeF1gNfIMTRV9+6oyckH8u8gwd10FSJVw6wG30ZFbWCcrpsr/dcokUnaTtmJEGI/8n3jjpBNcxJE8+bWycePctRwAkpABTjIvgBaFn6tLM9KoWwOQsYDGkQSnnPPL5g7Q/pgfFFVMQWHZ7y6gm5gTGkcod5bslJ622", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "hz3fIaXlmiC9QlNXUNXHv0EExgNz0reblOF1grQjxQY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4A736aE8O4878oQUTGa5Jl5VLToRhiLqqo7ev3TRTF5Y1VuGm+IihS3fwt4t9eqHphHqtwkX/uxNPniRgxID08fa9hfYXfn2plsYodvF/JqSXMEOunQRuLnLUxDNhHd3gBXKcbnC4/ES4PTz3i7gF7Kk6NAMuN6EMay0BpzwerPpSxgddrNBnYk/fKp4NHP2qtEpnQMzajhQU77BGCkmBiHfqxeaxeO6XOMEqpLnQU9+nIJFojGlRC19pOftrwCQqvCoxjY9NfG+akeYMFWIwArDHrqneoRzXUnEcb3dqxzT0TRwdznbpGkFE2ku56HgvVH7jlxF3noGav3gl0xI1LMsDtmRii9AfTO2Etr0MJVQj0VUHb32bBnLohpACAC3LnBnWLty4JSjRKZPK5IpcRXx3DHBvTa0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i+UVACo3P84MgEvyWmCUVYHF83uc4seZmWTWRqfNfBI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wASjaQOfh25eQwFAY4FYqaxRpNCXo9VzWjRm4oQICt2SBWDNP/O68Zro+adQEeyX1RXtQFkir2gouBkvcrp/6lj9WKh2/kjQVvn+cZO3eDf4joMTKCZgZ/HocnSH6Yc+Grp5uOtn9TTi4heRE/GsgBDG/fopJAlmjvg0eHyT5eAy9WSwc4hUuqKE9cGW/9xrPRpt/zNftUaU2Q6LnHzM1gzAHBB7ZmPtYRh/lcSg/1KPzmPhcNWXE1CFUu8z1hFwvKKhsetDR14b8cD8Zyh8AE6t4ujrw9p0yzSCORYLVn3JcuuJRRs/4pqI/UgNLCulDQlghoeNR7WsA6CUR1rJmqC8ALZvgnD104J3ElMwmEB5LFiRvrOC3S6/rq/zyEmPQ0Q+4IlmLPgaQW2URQan/876+62leBBW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i+vgZKqKDFcO6nFAs0OvoDxzjYCU9lzo8sEuHMdN8G0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x1vSWsO7pvjHlGH17lOelLaEzTcBbcNWUpj+5OQN44aH1AUgFLn+Lg7Wm+86Ji8gOegtyvk0tP+FkVJ/9bYdPm0u9/8g4yhfBKqTlLQPKLD6cBA1Pd5BdF4ZFVDC6Ln19Pvb2guLkRc174076yC9NC2KpDg9lVPg32AO4JmrSSZS8jaohLKvU5H8SXCnDJLr+B++6ty/009V3a2rhn16cGzy9i/iqYVQJr/scYJwDO4SwRuxBWall7fb0U2aj/ZK4+9jP9Yugl1ppvrtdxfRzlmhdE+F3b1DEjmdA0gHU0tBYKmy48m7Lu4988v7aYPciZn8igYHqOyMjxVCjD+WdafZoWQYfJJeWLV99CfMWz0wyquWYOCex4++D54Ek3bnONXv/NqsPM/bvGHVlOSP0BXqMjH18UVw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i/NSmaYcnVKE+YVlThZzxXzELgoz3t5PPk75IGDoCuI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RDDy9K0n9pf5Gw6PdRLG3JOzkwTPSGLhD1gS/HiGSIG6GpdezI3G8Qra2uhcWcrDsAv+DqrZ2mMnpde7WrJ7ptkNfH0ihAu2+soN9rzgEMXGN0OO03JToeoIMtdZcBTg8TWfIcLL450gAYpMDnx0Mzj9544hL53DgIanMKxjawByViNHYY30YOzldgYLdUtATPc5WnMpt8wtvSnwtsD259oDV8ZZwzT5KdJczPeBtd20rJ1MDM82JpWIqq58ZkAftrypGmxeQn3EZvkUcMIpQzgfJcu7y10Z+xTpOqkQdp0bFKAdbfN+lRsX8fcLlV0+KjXOpvEd+z/zm366E/T0ImBDuCZ7Zj0dgotHPSVUCNpwlHoWCxOY4LzYfdjMpQVp1r5fiOLjniBmLzaH29OOJ6pWje56tLQY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i0dUM6FWFeootiDq2txem8jSAHzEJFILmwP6rH8CE2U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dederIFhguHICusF64bU2tw1w8OXJ1fbbJJgg+i4XT1e8Lt9GDJVIEwUJUReUqZCm5ziCFCV2F3aap/jFNyc4svUsX/IOphhMBoidOhRkrbZ3KAnLo8ux4fL7taxNkC+hDXfchPTvvxppFkKxt9APbMCjkZoZOkT+b4FzF8ub5f5QbcwmC15VuEhbEpnMbGeF1ahanS8b7GEReL0DZBQwZqqL82KWsi59L9DAgyBJ+mq5XCo4Smj7X+96M9NlZKqj65BvIPniz+5TTrnfP5Nx8xaaWhonRFbkcRcLCCARFzHuZM5btDgCHdSjnvV9ZxTjDCYyDCSK7+T+4Frpb9RfhcoAUthtfeirE+LgdM+r/S+cFKgAHE3XAgplGwYcBiQfzOedwTq5NvhsR1uohTkGf8F7ksfQfh8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i1zbN9bLzO7UI294OIy9qK9Rszke67T1yv4nZSH160U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cRQiAIw+kxJiU/++H5O+89c5z5FTQSXQq3tbcslAfmRq2gFOEMLT/jq4DvCXuntLYcUY2tDZOEKrhmTzs36o0r/w9FpqSlDb+rNm9GpMvpa9nE3V2/rBgh/O6Oj92nBz/GgYmzbeG7gdANiNuEXLDgWaXKf9uHsR2TOxQ2IQ/NLU3ZhazuhfPTHWQZv9N2NcylYsWhjYp3dyocnGlOMtMFwmtPdDorOHCeJBgLAxaqls+XNp/ROrEoWWKVwdjXcU+bs44AGTKHjZ8vjIwMu49gaBCEukP2JKU5hj4HJ4aTzZ4fi7xb+OTVxH3QTd2ViKthOeNRglgWuN0MbIqA4gI/fO1xVPsZONlYuew6KjT6mV53nzptrrsJQw0s3o3HBB6SgLOsLqrPmTAB0v+oWaTrGUpTYqwPEi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i2oSSTQJLofUYP50IHwp4qYUIJgmxPtvzyRZtmaENWc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gSqGNk1jD7266gG/3DuwxoYRLM1F8MM+Ax7CDJAyf6VpwFZ25VMIE+URL9JEL9V0VveBFl70INfT3Cs8tDUSy9GuTIAfTyfATcNXO/E2fAV9XYzvw2g7C/1IcOc0XsZg+LlP3SG3hTdZzMSMUbou1Tyt2r/o3ztZxvPikD+Pai3vNNV/k5SED60dDZwIvcftfFWHV/w/V8rhaECVWZHMn4dzsW7wY+NhJXE6dWrP65EuCuOw8u/gS6Jq+sa0+UhFHRLWYgaUNw2eduwXGuSiyr65+TpISAfUo+zSJZBaWlY8tNlf/ArlD15YO4fu8RgFQiS40w9GwiZmC4g+wL8K0P97wg9dt+W+l2CVHNT6J+er3oLZk5aaFwo9WFUeUrt4jIzBk3/pG2241tLbtCIi2gef+vrGEBFT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i3A5K8LEg9tz9xGBIk8WbSWTHu8zwu3NVIl4Buq4Vq4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3JM3TQdInSq5dEi6aJ+Nw28y+Bv9aIdP3WwEAJ6RW2Fd0ICtOfHO9nOrqQvYNIXhi2quBv94IRs8tBEPSYb/z+agQcpxasBIZQT9ef8Ziv19fb/GNoSCG4GRMPOc9rAV4O7CuO4G/miD9fkkjXDVsW0xgbvNq9Ot7zNwzGGwqJgunZLGOVKPdwOANsvA9/Zgewtns94WIIPZfFlGJ8hSwhYDqsX4ex/J7xgBc6Ifm9ummaqSxDEfYWj0pDYI0h3pV55VEGMjaWdaHzglEVp6pyTc1VXee09i7U7VmwuNMBGTkqj46di3dwTa3SBy0fJNEvYj8tMpu6VXHdkZrind7lqc7PPK5HITfWMho2CBLYK4pZfatk1DySOEAqXetY44wzHdS8pCPYMGOwXRxelwEXtETpfUh9sx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i3NxeZFV7x4nXJXDqQUPazn55jbEA4pXx2/41EwWFZo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wd51T7V3QBwA0eFxPOjy4l1rmpOmLKiJaQJE0pdDkocluGzbgue2+qpvzmjbmz20Dzivq7Q+pH2e/mxwU1H3S4sjQai1kGrT5GuoN2CQMVx+Z0rLzQ9ca3gJKFRcth+wBDf5vmEPBqSKhfKISd5jXE+GP8TSR/ouYEiRVxBLuOi9m/2mXwWHvV59fSJSnG/nZnYbcSsT/jlxDLsY+WwnlRg4OY263DMmP48uT3VxCjb/dWMkfvNZ0P1dhnTeEvnAXAupA7x3ed2l4U35ZoQpX8CdO1QR1MjnRFSGst523Rjpnjh6de6Gf3S/ScFV5sK40HZY7C+ognRTc6SHClK+kAJFeIUzXqUS4SZg3uLwBtsSIQfV4aRbaALLPlTt8pa1frgRUXZYKF9hPS9b2T7aM9OUItSvDtbP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i4PKPLrJfRl66cGzlxAQvfPAbjvL+VJr9n0n1UnHrFk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s2wlNoNqZ05sqcJJokF70OIfWrB369xrGk5CCN55pYiHJD1SihjGFs5pHc+vTvOQyU9s6FUbwsDzSfDEVl3Ozo1k5UAx9qHHuypIQJOu9hOFAJGIbijbFBI8pBF0XoUWLJvYOUBxWwKdyPysEuMkUOOviWAnJXu/XF1f/+KNe494yam1vU4KtWmJJeyAZcPVbYPzn+1YEcApaw71ofCG33fp+X1ckkjkCx5Ne+2KG7+ouMSyQGJ8TI9cpdrh4Sv2WY6936f6kb0sw0RDKv3UxWys0wsS3NwVee0tBPmhoodrC0uJ8FxUlLCpOTUIHQ0+SfU7H1QuZ6t78YYHaypPnkSOpINjGZtriLl8J9CjL9fsnRcAe9llyYT99O6G2ZPk7MFGzW5WlXX5kE/o1iXGFtleFo3T1Cvs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i4VmivsVXTLh60FBtMJGrEBIaZrZmSTv5opcL4ixizY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i86C+1M8otvwWfUDtN8rFnWkNd71naNUfycHO/mDbGJbkg7PvfNS4921RlQkPCtQ8dOfeWFl0Zo0m45NjYAxH7GxjU3ZSC6SyUwYcY9fAAIQBxUNj6yt1BT1aFPsAeGx3zhDyKqohTMhGcxf8tl0B2HujWmXzjCiSiv2F64IIa2o2K5tALh6z+e4EfeHE0NoSAp4sw0XHCeoexBuq8gDIWJGmiEdbp8kVhhYsOrCTxkskJa061S0o3KW/mJ9sGrYiPqpFVAmuOrDOLn6js73zGzOXujj3Twnrzm1L/Z2dQZyp4KhfRapn2RRq0Z9Ku/CgeyquRMH8MeMXvzcznJA9+BmJLe4EuaTaLzcIKs09MBBSTwfWjZ1qdV824wDGxcaJTxEQzwOOp8cbdmKzOdOUCck1zLxJkcN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i4gBBaxwK2Diio1Ja8SzsJA95XUVz3aUzDSPyeqYbRk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Wt9ECERVu2sCWqZp5b/N5446tOXE6gqmljlqOHBW5KBk304Hmjv6hy5pkcNezmMgmKxswE3D0oqBA7r4hioSj+Xwvhv7TPfIX9tgNvDdK1FIqt0HrNHq4Faz1gFJVR1cZ0CqIM4dkjZI3LZqqHONVEH4ZzGkHnhcYmDoVsdYQTFh/3RkcvU8YOSa64lPYn6jCdTJIz28y/txcbTaOpD0ahlmLHcYe5o92Dg9xlg0UiT0/pLv73m7vQOHA7B8eAA1SUMJ9OyD9XkbxiDS5ZYqJAR7BfSlbdhhkm8iaLgpVJgVH3HswvnjNK+MnEaZJRi1RHkQFbJ3qv4Yj9ZhQeapP7fXICvNE8m5nk/hkAuFXJ1gU4s+N9KgP2Hak6BtmKsD1NyR2OAhWmQVGAEfJaGENyBYBPNePjmF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i55OCKrlZRFDxUNR6w0m2uda/OvNyiZ3t9PHASlxhds", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8lJTkV6Cz9CeL3bQk2t5PVH5tM+z/v7HR24TcIrObVCsLG+k5kioJxxJYrTY3kd5GIqgl+cxa9XqC/dd6B6s4u0vNupt9N5h841TebnaGJ7r1lYYAdcQxT7gOSkwIk2XI8EFeAUUqvr9+rJdlN924KVsaTDZq8ByWoLvV83/DuQGrQeerFEnpGzqCImNNlvpmehDOBRQxVHdllmzeI94sqP0yyUbAEyttU7uQvVH7UJ2h6Ar+p4hk7Y6OZpuMlToCxZpoWwxU+XbIeXOnFUNxuiQxQTqJG+re0w+CCWak4XAMEHw21kGBIi+eOa6XHQwawkPWEdEvqcd1SE2KXuNFBBLD3jjRhX6QfkbVFwKN9ujlEVEfdFVwAACwFNvIa1CFldo8U6STLqf/d8Aba5GEqLQ34QmdAng", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i5YGKiSvmz0a24NvSyxqP+xERXiqv+G2+0OFUpKtkGE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZXMigG591qiIuNz1sLaSTa0HaEvE7k99gKinhozfR5ZKqFp4Q5c4/iNvvTY3GxDw4R0hfIa+N8G1JmgYFanj3RXrvwLiDUTt3KpWxOFKtR3EmuMbi3pFLZuwPYI/3sK/eqTT5qj/F6t3el0skkRbUPKo155o3nv5KLOvoAZMmGM52FemLDTGPKLnG8KfwRoK4Ey6Z8zihlJQpVJoyhYAH/l+qS9ASA/c1KW1ShTFfcj+9KkBOZGBnTvhB/w143JzUsFUC21u5JOtMmQaqwVco5oXZLi7x10FEkueY+SmH/pVU+8mXYFTjJw+nnwOmQ6flizsg5Hx40alCn6XwhPNZm7+tw6gXL3nXA38sb0nVxsoVDQRxz3XDd1R4mfuPLsjoHV255Tt90WAW32VKqy8IFsKuEHf5QNj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i6/7i8tXaHnn9ulJOzdrZtvUaCutyO3yNKQWZGZpvUQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Qu2URURIjidRL+G/BrLCWrH/Y2Oup8D2emt9ruqPcgMhWAr9IsnzQf/nLS+peCIiWB3Z/bMLy8/BI83c/kf18QP34Hjw1UMKlujuz/btJikCnNzFh7rBiHh7Uz3fDjxpE4LVprlGeEH7FMuTLiu4BzPghyDf876Y2ZMuex51F9eAX1pEKZKlFRLX9Nw6nfyziQr13hQ77Gt7eyVPm+w+yhdPnKnUZUZI0sHi2YQtnD26kUu9YqqHaOuWrlNlV0PeL5lTVxAeWAKcH/Plwh6vOWcwm0w8z/+CbmRvGB91doS3cDUTKoVnyMkd1H6vRY/xdynmZ0KT4gG5fsSDxkQKHxD1vBE+Z23zOHoTy/bwj27bU2dmahNfQmL84EW5GggBTTFfRT7hvw97YQnKGf8DvrsqM6mOT8tn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i7Wl4ONsQZj+Wb9MBmVQo0B3KIG1EuHfnh9xH3ieFxo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/JgCDT4ArgBBw7i6IdSOr2ptF6/RT7lj0s5wxkamMQuBllNs4xc+dMVd9V96fg7oY7Z3CvvGxzo432RSxWlNhyoxOfcejlXh4bDGkB6wiHm3vnUil6oBr7i52Ye/Nqu7SZVA5BbY1dLJ9wqqTN7hmo1enZyf/6zqr0oxVgGkP15bUDFQf4ZTMKv865LEZ+q0G8x+aKEv+Yz4tcywpUXVmodWKzuaymBN80OgRXBdlm8da1VF+74GRHtZKgem+axn95T6MbuMYz8xHu0JlUUNbwnPBjPPELTArIvpLPIUWoaWx1dzOY9SDYF7IUgl5KWLHXWgy0SQxccWY29HvQwdnjb9pBuLf3/pkrFVB9RVuMBIZQ7PjdoqlrYTyjIezu9N5QAirZpltE52h8MTULO2VoaaCfwCdIJJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i8F1e7C6FInuPnUCaFkA8EEUfeybxZI8wK0rlSHl0EA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "28AfsRRc1w5Le/YwQ4cYE4j0/0HG5IxLazx60U/GbbyelKt+gzelAaac9GKVCqe593vhT8ezKpZ7wb6cr42ItJW6fkZbZym2zJCiHfe67nme6pHByX3H6wWs8f4x8pCfyQcJn4PNY7m7FGPOZUmKOe03uCrBgx5OlTxN3b8X9IbQYre0tO4jdulXPKbTRC6BnxYJrzdCBwGUaPIAp9ocBtBUk/bjSUr6bTQb4ybDFRfhFbWCOL5Xsk2lUYePQeFG42ieMTTuP/Enh+P4hF+/U2bQIGHZWC4BK4zq7AD6g/73O00q9xfeyhMDoIdWu1YTQZfes3KHj/W/yoTwvDGlsB6ysjv1XvKf034IxGHVeOqua7NnQbUa/66A5jlD6neqpKJZoHSLP1r93PfagGhVEij5b90LK4P5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i8d+GmYXfy6USAQYBAXHcpiH/55crbecce2QwvnHPe4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YuoiRMLjTeCAUPDJmEvQJbRTXUZiOiniWBJAQgl+1ypQlIFoN7K79ojs7y9tukeN4kQwTKLalNXcQiFVVInEOEzXFIwypUKx+oIjt7/MqjqqZeIONzD07LKa77Tfa20Q5nSMaEATV3TKDVDBbcBtnERQNRfa+Y3AxxqZ4UIsIBa4rit62OASjStrVTyaWiptlG2EIIn20u/Pg6a9gRkj0ILHSTkzC8fNdEXBO8nID/QiXUEdNjS6d9l0OWq6kcG7sMOn15eku+XGR3VDES6HCBNSZjQUJ0R3F5QrK6DTIWB+0BvDXlcFU92KaQcesqe1cm3+i9Qv6n3ZFir2FaFmHepSKrgvxV870YX688zG07Q0xBLbteH7NenSzEh0JK5sSRU+wtWVZifkK6F13zlfnJlfyIW0Nb55", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "i8ix/Al5W3zzRpF4Gi/ra82jNqa7W7TYTP3P8WcKSPY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cMGpsgBwwes1uOTlHL5m9C2XKXH9G4WaalC0HW+VqHfuXu5bva8PqwJRz7o8xnJOmORCoNPJ7Qc8bPRvtzSby+kdpNPgJ0DAJiIo7ye1xvm08OAUCJI5q1uoqCByklwXLNxIsrJUhln3fJPWqB+8QOwMANiq3I3HUxVyBT+AxKUY0Zq+jHLnukvhfvBKimrUMA2Gg+3YAP4+GO7m0UTX7LRy9pokNZ6m8yemRt4/xR5ReafpMajbt8FfMre/TQwwRwHB2KDIXSHDg+U2awWOi1xYkJNyqMBaFRzKb1Z8u2WNicaQ0lnNPY/A0Ah2DZv02jvXyB0AEsoJpzxSHX4PoT3TRBO+k4QUsfWxnT6RqymDwkoFEPXuG8dzEO+I+q/8mjwy/8NdBG13+8wLxx/5nR1oWkqrU0Mz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iBXqWHYXydwYP4TLpH/qUMb6vx4gMpcTCx/vXzx6aDs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s3pWkq0dNuX/20a2oPYioXurs9RdHmMbecA64xWdDAgL+20iKvu6+kSGqZpBw7rmSsXjvUnw/qlkCiTOg3W1gOun0qPbXl03vktqFibMKWDyEIcQuE3JihDkkyh9eLlEsZO1uV6wBluzuQ/elfrXOSr2RSv8saIXStmHp6Io7uVhIXsw22Rmtw3n9HvXyZb8+MK5rJuFa9vTD97RKzC7c/asVo33FrkaG4iwsNRmcZHxZbUi8fc+oYLEzMtAai7zD7RzC53+IquQE2oS8SRqupIFMv5iy9wj7/oHpXJ7SVumKB1F+hEye7Jh65lAiFlmzfGmWvGY4Uv9L4xWmX8AADDx6ULZurLR8LS6YB3564FBSn4Ckiq4arpYk5bD0o6gFOnZ7tZSdUdtK9MKQhpzr9t9x2Bj8rdm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iCMWZX5o8SzI/Bjtq4eLkfkYkU3g5hj2mf/V84sM7Ao", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rvC0nIGJoB3pR0KTGkM+ynV4PoTHGIngVWB8pf4QTboqpzsD54+/1WErhqyMiipZ0L5/XnVb9IvEtDRhOy1shgjGtel6TBnrjmrE4kKplI5ED3xWybbMPWjpHG5ULpAPHmELIZ3GrjfC7aylqiKsdgXwmjdrq+5QTXljbVXkt2edPQlZV6pdQvEXFNOswnUEmJ5PMvwuNCBGY5eS5Qf+HHPVIxaa3Fu4DK303wHMOhSgXVjHQaGEMq9fZojV1kgwPDVJJVWQJ2PwulhJHDsy2K8m3fc1PbCktQVpNgFk6wLCm2uwyz1AL7a3cgS75V0Mu5BpsNLch5c05J0JSf8YM6dPPggAx0ozSy61ek/VrPbd536cCJIOrAA523pzEZWyLAHGF7RIUpOCMLQEs9bVC8n49UiCrQ6A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iE2lToHF2LjufCmy1r3uuOFV2uBFYKkH/ANfLvjVQnE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+9S24XIjIQR/LlxKnJ2irnP+pf77gz86IuM9WUpLDdzH6R84vodCp6STTqIEC8PTkMlBZLQ67dmvVFEiCvtfCNHgkwMwy1sgZorac5kypqE8R6h3V422OIz8A93FR5dlnJ7XJocCjO1Zl9T/HGROc1uiP/eF+Svk+OzkwwOAU8Mv8FM9Pya8MFMEqs4QJpyL8awjnl8UjwhS2Zmikd70RMY4VJ8Mr7VRcEQKPXhic8IcA2ifBWpEoKhldWaV9yZlURTthH6S+rsIpzhU/B/ZnH4HwgKQL1ayXcpIjVWmg0aVsyueNneaPyQr1RliHbVaJ8tMxhPIYiZI3QezrJHWteeGepSF1spPi9y5/svNRqCgY/ePssknr5dAV/l4k+fEB6nD4XjwilHzY2qq1ZyCyMbOk8XW3SI4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iFxaSoAP3mP+2VDUpszSHeHsQjiW2xFULv50ghK3xqI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uAmTw7g55Gs3eTqEU6/9UklII8neygZLhj6EYUNRq8ZfCMAvGJrIxIODAQVuH9+r928s8FS6vCiaNP1SvyEVI21mFDdlKUBjmw7R6Zhc230GcV128q91x05/wgcH6paI1kxnxQFD3dTJmX/A7uLwX8Puf0qxJ0q5J7gClxY88NboP9kC6Mu7SgYNUQXOQGxWeoyozrbh0gBXmOliHcwdVbsgj8JOp+jWjsYOaqllPsWnSCsg6svCew/KShhBPt1uAIErMrO8YOloudQlbfl2cr6bsWwDsnzfnZHNz7OIpgQqeWpsyEYmFd6/PY3Xw8iKZvFf/b5WAJlYfieDi7QcsS2cDZqoJTeva7fMxKtny32O2CLzHuNpQFXD5pkdvGaeltXDsssXgABGyWTtn39q1rhvVqyWkiqt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iGR9BhvcxDBrmC6pa9MIqLviVfeJw+Xw4X344JFuJWg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ss4SgzLdIesYSML0ArVGdUn1IKsW4mK6y7fnpFdHbgnS5Prkba+Z1SKr78bVZmvOuzc2/3Ur3iqnjyJY6HfCxSc1vJQdBeI898spcGY4fOtIYNwr6oV40haU/sxZgjZ2acXclI+l2xIKAM8vgc1ulv42SeyR/xBKkpNs97RNr9lVq+6ZJin67Et0uc2fjn12Dlk2rgC+Kq1wQI1mu6xwMtuv/mYITxvwAujl1KOM9nuMEFaeFGj1NYoQR9jx7qSS9FZtbHs1LO1uO/LFBlUHggKCYJ5skGQ/uwHs/N0q3Wkr0oyyVMSM4MDlhBgLw3p0V38y/GCCoD9QFTpFx24ODTQCWAAzcMQK1BnZjunET697SfQO9PrQl1hImTdoTcTBnfqjBMokOUiZzicVUNvRGLlno7n93OEM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iGTwc4c0gFiW/q14Rr39P/eW4bW4K2O2dk3rfF4KJoE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hiNymZ9yoQIjvQvcO0KU57v1xlxtT69bEvScpaTNVs2sE0oV0y46mGib3vMMuaQQQRrp6kBZYZZC214NiO0GMxWd06VJ/Hr3XxAVuHH7R6lZM8gOimlhmxQOOpmQI4s2okLOQh0WmBl5li5QZv1wmlUSYgoKRV1+FahfVo++3EED5tU+CwbCl9cTlAaUVCvRTAqHWAxPhfhFGscwCrl0ZZrUwSax3QZ2MHyq75UQ9c9sErBvhqX+XX+M6Mv5nD33bjvtODRp0RaYR7nY/MlNfEYL3SZMClj5jaBjugqB2SeXrFkCY599MYJZyHcF5K9BxPMblls1xlIe/Dz2KSBr5TDKnbGdZDHpYTBdVWD/mYz3ZFzDc8wH/VNpg5oN2LOhF1KtQMePWAu094iE3pjqjVzNzs3uRZqI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iH1slmPm7B/U7IY5H7qNaOh9s4boDTfMmm6OPcRN5s8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hsBiFHXZF0xXGNL42e1M0cQ5x8fWu08iijsiVFqEjb90w1B8GgP/ynwabJadl8oqN7xUXU4ygoZc0HhpU9zcC7bzR2eKhfOU1hhbG0G0PXWENI17ZhlJN5xetz+SlMKO/CBpxTzYrYcWonMelExijY76phxDm5PXwxQr357EtjjWs0M1MV1hkHwhZOjDZa/829KNt2LxRP/Zap1MquNiARL3t8yttxEyN14RDr4WEVZhZDNxmpucEAXNQKETL9CNofYwjVFV9hmVaSBlkCvZ76H9ub6Wl2NFCEF72rNCyJwM+Vl074mB1jLOTksG9G2fStndAt9bjQCRAtCQmY4xFJsZRGlXHnDz4Mk1BdF+4+9YmVQXqUkm8uUFSAnmMixTAqhOnNLZ5k/NOUZQOa4q93C1gAf2Uf+0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iHg3jp552lFvUWrUawllQgg1rU9M7Vsh9Bqg39taG/g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sNxPn6EogFftpPiht/PtVl1NaxzHcc++ZOdY8HFfyQHiA3tHrma7gjWk5aBJ30hybYbxUIoiMyh50qxT0WZe/icUKdeT/1KuP115iRz/D4kaeUkrusIdVdtmqKNpGq2B13qifMFIcam6tJVwKRsTaESG5x93eJKnlQILJVhBlyA/a1a/FLeN59SaxHW+iCBsaF+rjIHD4bXc2pkbZpfGr5UiN3uhmYKUie+oPiu5h80otSPhRcu7HJPxlPzBfTTP4zLQcsTVppzsNN7RILaK5Fst2acoovV9bzoXmsiViGInuz7UePIvkZdDWPEDVwENiACdH5MDxD5D35F6grOXNeEBMvEU91y4VMJseOTQXs3d35+Q3xzgYnbeKx9kuTlAdWAOjyb2AyGiB76DqccWnTA7Qkm/mPxI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iHuzTKqnuOhg0zFjeQc432q9y81f9TWX7Durm4Tz4Hc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DHO/Dy3kCYGGPFzQ0bixFKooBuelz5GC1zdkKfVa3G9VvPfLO2LHsU1bnFweSyID/1zIVHvVVOHy9OjRSGXk/ous8ydRKYItnljWjhulEOlx/j4IGH+jaxyGeXWVzrAzV1kpe3QB6/0lxk3ML2a73oqwossExfLHWchsMAykzXLEldx3+W/YkXcrCUFMXsl5Fk/ySv6c4bcgf1WV5ac1fUFT6xUWwThbGMEx2EQ7dRjVkb7oe+4qpOotbI2fJ9FGh+uugAVwdFcAQvlSp//HZUYj4X7Tircb1Rt1gqGdLXe9PiMZn8kdrGjFxSGKXzi08HJ2nlOUg129yTBFyTEEbMzrnWtpulLzdH74WSVgXAMdBP2LFT8F8fcN1s0ygh3ek6xXeX5Ib5wtly7dj0iCT6GuuSOFwOyg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iIxwVx+o+J56E2FY0OMD7v36aYjdhAkSaWMcQ4EI+HQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PqVzT40X4NTmPAYrcsygz4aO4r+fE8Ulpk+R/AzJQU7rERpK65K95jMyueHWo775clyrD2q/H6+ZbIVKS6QAPbRtiyj/nCHLldwzPZjiiFQZUDe35/gCh07GZ1xLRaDpt4bEe3U50W4EI5QdMBdIl/dUG2XrwR9nKzE6cfjOsB7GnieytZadczTg6sO+bE/GeUP3NvLY0jZFr61xsyo2lDwcToNFE5OgP5TsMySj4wRLIPjsiZSz9wmm/110JkfOM3jjlLn2K6PbfzUMo8oq3sSYyJBiwPMpbSWDoT1Q4w1E3JWN6ofdxmVmS1Pk7AKHABROPNxHg3SVqwTu/gO0fz5I5T01+wQ7gbp1wj6+kK5FNXM3WWDEldqs4gRNEjBLy/gfpYO17jVWwWrXAXTJspZLXQRsIMCs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iJk4VdnSY7mYUt/DyqjV/wxX7nBvMQ4aK7aQeBD7bQ4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gzhwaQCDlPTEnVtian2RU+8Wn2S7gM6PLwilidYKnLwAzELQuasNHfYzqqEWh4iQ7W9tKDdGgYyPSh4twqlCjHcYHoUZTgTgW8O023Bv7o89FH6gi9KyHfRW0Uq2i9XD3ca8ZF3OYe5yf+EPZjMQp1LJU9GHY9qXNbOVbJZrjKAbfsGCRSmUyei/x7HB8yD4tU7dF0WlEnUt9H3r0p6U33ikFr+spvZ/xIOHR30CLSqsGBjnprffMENsojNscShCYWxiSX2tSD8g+p1SUEVO6ti6u8nnDTglEUjanuDwEC/d8pF7GGN4Qk9UEmW4en1W7JAFu+rXw7eAfCUsyDXpUSNtHKKndGrU//2s0Us8UFeq4Rw6+9rKNGvmZtb+ghyI57bCHa+P0LrKMiNo2GKb8zM6hvU+bWUx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iLBsWpm8MBuqMNu1UlL710+ISp4LYQJhSBspnGJUpks", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/NUecV6gE4ETJy1b1u54xHQQZYPCBaE4yL8Iq6yUM+n1LcR58qrKXS2BbntlzZpxkO++Atc/jkIJTeNKWwRrqUR7jQW2IJzwdN9ItS9A6f67J6T7M72qESrVMMoRwsHmUZR5PYZFFSzNL9jXzLt8Gy0CWHBqyxBrcOHwonZpj6+TN1o/MMFyRLzBRJFyFXu8XQzmh1YMWE4tQ6OQy7ZhMEbjhfktDA5MASpHgIcR26bAwSm9Eg0ZBTnDDmp6IkkLOFOG+PAgwD1n8WnU2yTlbvCvdJGFm4WB5D1gzoRC96KLL+TuPq50jZDSU8avm7vp5DrHC7ORDQje2tbGSPwpA7nZcdmFndnLIsihmT5vvP6gGB6DwscyH/RToe0DDD8gL7UfNPSOTDK3rVPa+YH4LYSdhBUtN4Pg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iLyF6n6Oozk2azxZd38pWBGCBbMluwI7/xDIAthqns0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tCYRRf657gw9cEQJ4BGRwviu7LANgOb1lygpRvC7ZcrY/+aDN/Nhm/m68Qhbdy5JbMuU1/Syrv3AitICunEcuFsIwJD8oBZ3VCBKffVdRC3McICN59f2S5c8HeNc/4jpKhK+ORE38a5Ru1rXushL1itqKllWRI+h/RUSse4CplbN1/gFbl2hhEg/bX+1ptZGuUlDy3ZxLooyLz+0T5ROx9Bf/AVEAE2dmHzH0B27hXlGn+4W4I7SUM0Vh3Z+5YVyhF6j995smIO8U29iO9I9OgB3mHBXyjWPQ5u2Zrtm3Z8JeuAFx6fTLCczQdmRMro48W4eBr3PR4qSCFkYz6g3Lsabkf8z6PJlmglR8ZgNjwF599MhNZcPbUfAwoGzLCrmIDHOGBZl9uX9nERA3BwwsSEUcqt3eEBW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iLzF/od9kwumsC3EUcD949KXhX5Bfs/a59t8QnPIYi0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "n9WJNuhlczb9pehxlN53xFBJ8tnWiILj5S2b0IcMGbkn/AO3n62xvk55+M6Lh11JEcirsGGyIZWycF3vwomBRCMw8pMEDRpBqDWBPELzHvQotea9Oz6KQtg8iS+D85GFuJPIwzkmeCpx6XAoDfVKbYWmwlOj+cXlBhSsvk/G+cXRhnyQejnO/cFDd7IQeVQZ+HWIm9YMKR2n4Cj8/z0FvtIjwC8FZZiRubpyNIWWwbadaTc3NfQR1QbDtScVuaEtUhtgFKQFfESf5YI17QSC4C+hKOloQIYcXLdnh+54OSLJBfrj34CUdSJjQqWyNeTPFAlq2Zn1jfJrPbKA0JonpESe2un/L/wjn49CVM/vf26XsPJQdrsQUhWSiO0BzOWZY8xd1nUfbpAb4b+09jIgW27WMQBq4SgV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iMANwC9PEr4dULiqdP32jSgGiWcjWc0kgt/Giy14WWM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vWuaK5NaJBOruMNny0ZH0J7XsS4ELmuDd+phYb/E2rGe54lAFRlCc5073rRnJ5c6TkrGV8EkKGQFjPkWsJi/xjeXXXEmdulZDAhZFSttA3LBVTr0McPre/4LqtgcSBhJp5tfdMkY5q/gg6vRWyIqhXbD2DMYNdNiUi2EwBYcPKjw23/2PZC2Z9t2N28oVCmxWeibznI1tYgoh7VIoJnjCrEqBR16JCCwgYOXOETon9ktozfxj+x+IR5SvdzmAqNIWoYXNx+qQy6PQ8IXmEpbgRcgPjltdeT3jdLvVvOHjmz/CYab2t5+eOIxgNazlC87Xzs8AgkHlnZopkS9+h70abKuoBe2+dfJtx+MKXr6bPCVaZ1lArLX6TNda6qCY84joJB97qy/rml1CwaJ17wPZIEKiHMX/Cst", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iMXlsGncP3h53QObgyZ7Q6wOmMog/IV7IS2FUY24HSQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "U75H0s/S0sQykB9gKVzuc++6icG/bgzdqnps2ofBC+WI9F25EToZ0IB/ue+N7hsWFQXiMa8DuVJZHVDuxuTbJNhHyMZCX/0P+MTaSjLjdJqfibsMEbeegzJY/1YOxGl3FS1cSpaT7u1IyBA6EYjqh5SK9aIrrdae1nQ7DZ0My4YGslb4F+QRzefmOHo9elpAVR9W4MW27TRpHkxuWZ8LlzOCUmfJWJ2rQIk857me01bjjMTOeEc73cjeo4yPKVurO7CI50dkABqR1ps42PxePfMlAGRv/QKx8xP2eEi71Cqb5pmMMnkzpnaheomXg/WPc2oiSO59AntSpkNLLtVIp/5lGHbNCbxAUTov1UyRGspe+ME7o73cx/T0rD0yDOpHx7oetcLQ44F/3TBWlEl/xp6yQCy9KyZC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iMiIKZTnAJ4My36yTwv+fTiEMhHfsvcFj9e/3Gj6Mg4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+jlP+wy/zSpR0+OZzAQcCXavmcn80hgN9jmL4urfuYDVnsBvW00O9cGwe3NivVjnJO5/03TMwol9WFFIRbm735iT4jvUj6T6ceoZo00ismp+RrxIZlpm665vL3bdyaw26dRNC2GIJW2+CcB01Wu4KyPfcOJHSHUcn4CG5m/7I9KL9MNVqJLsIse1Bk4jGEQ9Sr3L/AA6u/uisrKuTAX/8Zvqk2v5BBwNYT0ZNJulbPX/kKr5/iy1lwSbI3nx5T+ZfMxsQlsns6dNvIlkJCRRHaqHyNvsPy3ActGGO+JC7CnEyMGcIyYLdf3WY8P7h8WWMXaFiFz0XRfVDnlcBMpTB6CaA/8F3qKRbf6AFgkf5uCVp6sHotlzkxkxIV4k15oUMQI6JZy7sq21KjX4jtDqBQaOzjkOFZbk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iNi1lIW4/es808VJadw2aAggcDyqzIMr84XBqP4V9EA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+JmZnmQa3+73e59jFEULBWxPuEJQ8APL5eHVfbfOtrUDokohgU7j7mOznUD9wlM1c+iffUp1cFwY5unGxmvTvmrvUYG9m1hoAWWC/KA6jnQKVuxwlj4g2t/J2GgkxXJbbaqxMz0vkoploWSBd221IM2ChNVSUQCB6SamNlzBgw4E6iVrAiL5ucFSV7AzQAnBM18yb+p69vLA719mFGneSljwEBkcCny8DgssQwafYQweycTuKkqxljyn6zKYcgKKHdJX7C4ZpRUw4yc+OQ+jzQocSTkMtjjOYpgdcGyAz/GH5hqSzr8n+GmIOkFBwhRHXqvSUd/klVszK68z+KYwvQ8I+TZBukEqSzbP+g+MibjfeovhSEe5jsCrLAKNdNnAOn4aU9n9ML2LuSyGOfgJsp3O0PyAQyxf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iNuRGM4vRTKRUvpHKd6VA/cWhus3uHihqEzhjrSUH7k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iiqN+dQgXBzdql1lcBbwjKfG4/rgC5FllJSXCk0OdsTDWYapvje7OTCIsvME3ifovq/8fU1sw0GOGHVmDDZDDN38JNxjfAhQlTGMaz9ZGdfk4sKjtQmKQ5E2up+aUlx574DqKIaCtagh1IlBXZEKMbENGER1IVZvgg01+NcPh+nf9+f5LJCVgmRdBHgO7l3s0BXbR84i9M/OpGGEJNQMXc4QHqr/eM1171SvJJtQqGd91W3eGYi3yNYRKLSQCrAsJgIktsa5nFhkinKXVD/gWfNJfQT5pSSLPadaZenNc1E1AjlWAg8bAeV7N2BubjVI288cBFI03K5/0h1+BJRKlpMJ+knRmOylnHV4clIxflNv+JAoZBJOBHyINO8llvE2hzro/O19awB8HquOUpExYIow/vLnHSmh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iOBa6GKvfykvWnXuYa6CYyOoaDtSW+VNDORrMl1q3Gw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l6tlqMlLaWVwaHSpzrl2w0hyKqOWYXXWHVxmv8h9nV5nzRO+ujCJq8gBBenYaPPZgHo4GPXbxaYh8xeSQDhLfCc/rZQ8Z4wGBHh9pomvAqalia1ZtJen1UajF6/MvqEBUuBYQRo5PyA1ptXRHqFRvnhMJQhPPYhnedDNLz/hcPHxAjjKbF542AyNxx/YS3ei1FOKMQCXiBOK8tennchv3KUIOANQw5H1wsAIhRbT0hKbG00FnHsXiaLDqS7dHxku27oqQn6kfUVgTzgrZg85lYfUxWLWACNrN7lt4PUQE3igGrm9M0yo+/8W4qn+neaiJgbvUE0BDcTF5eObhOoAARhtZR2X2HKaohtwNZio8rON3+A5cnxOOC1STIcwyW7WxEzG1w+k2V+3sK/I8wkIKZLK6crTHM0z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iOSP4vzTD3HXQ7x3Y8sMYw2HTE1++6kESJvw3E8K8cY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P0jjaE/yNLlEuEv2pBVTpC32T2+kiso5nZC8YD8BgBvi/24LJFfnc7T9/T7n5wWRrOp5YO+js7yS9jtY2mgFwzFM2PZYyS4UsHJuj3iPne7mmKUqlC+3UegTVNW3V21PeceNfvIGtcz5dlSWgIx9OxyHowIs567JWT7lW706IeVa0+/2fTHm9pMkiyH5zzheaqqg/nz2AjVMq1KC0PvBMj6lKolJfvscX9eX30cOzka6J/CMK9sL2RUZJzRkRb/Y0vxtDf1raYAvM/9oU80LMVa0EIvthTU1Xzdvh0NC6L1EZ3u8QyWwsivBxK/Y1sGefPttsrxbXplLUzOGZXuoRm2YY99wFFFkyXdJamiTQ5wTk/dbdEFJAoFV/N4nykZBer8eUl8G3+jOE/5NqYdDNaQFKjSPLisb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iQvZUw9MFRU4HBUIBKOGYtNhtTJ22mvcL/ztvIsvm6Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "feQ2QUc+3f4IuFeVD4Qcqx6tJqmMMpfgNSi1u8CA7vTUwS5mhTb/Wh8gMWrUqsZBUBeOwVJGibaPXrWwD37/w478JSmcF+44KzIdnBU/WbMadQ692GV1/mvi9ZAiZ2uobPUObsFbzXVDubypild1vwRkZxTKffHH0GCyH8EuUmfupWMRv6pQQUIuKiwzjhnyPfgGaJoO3bYIcTi9vUKaxqNZ5KrGDlkSv6ET51W3PlgpnwkTGTY+81Rq9GtpxK4lub9RzTA/kJzFhTBLMku7vcRzlddbm4wb4thRca5yv2jIxaAtOkNoSXXALGWoLua4PMl2qdM3lBcPcoKwtVDnk51mJ/FOFIBRKDDwX/Z0nDO7x01hqOKSzMlHIRglv7xKZuFm5pbgHG+s8ShPaDLF080ty1tGhoWD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iRLvewXpiukuTjyEbwFI/YozEPx/CfSie3j0lkTrj+c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pvSHcBBLTuyYQtyHRAEfvU9/uLfxrAnwD3LgbpiZKcoh2GnhQZzVlRpJmV8Vb74hXlETjZTEd2IX6NnhbjcgfeLX7fgGxn/G7YKqtEMGFGfJ0cqVm1faObG7r/kWtIyhtUzVFNx4YQSY0aJElGHHeqjoK0kRmnQ9J+CsdCDDNTNGD/Lw8fI3XqnA312C3C5p2jzOIVRFYstMdI53lDwS2NuxEYlzSx5qZMV0O4bZoQ8OMUGjJGCPEvhKeAyfT2PufZ9jbITTOAbqAmwt+JbHxaJFiPIg4wuyaoqN40WxBoS4ZQhk9mdATIXlYKFNORYgpN530zruYhhc01jjz6l5iWuiRBcQ1I40rH0Mk0jxhwch1X5SA5qadV8pKT0RmNr8229BxNmEjGhzppO1B6ERORkwjDHuee8f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iSX0P4sJKbdfN4ukyoxwuQW8/uGarigEGO4ertDoiMc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bDo6HFFnmi7u/+DUEwdgGkpdMEOsrL+ssAVcqRV6uvQoz8j/0iEYcNShBYGW9odR1khiDsNUdxFcp5Z5o+OBGKwmvNE2TyW4Y7O8h8XGnS6yrEpADbGv5lSi3v76A3PW8hx3bi1P73GKggPcE5So/B42qPQ+ye0rX5Qhl0o12xjXN0oddwUjS3LaxCvbwwNYc3eGK/yLDGsQmSHozyhsVjJzScamYrC0fCNYSMmx0z/B6Csi3JcYCJTUTWXDnRXNlgN9fi27dfouSsoVkjRqCswDnAzndcJjm9Ov8Tda0kWaME0/nddVYWBFJ/0wvRFQ5oDdMnYWAIMhCfQ2z40WdQgZFojIlHb7UiTTzjaGAmnaczMGHwjoMsYhUiMNDRTpwGmhXepmr9VJM+112Dp/m4TAhg4Qg4up", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iSjZreRTqETHQ7HYeWfl+7QVwQuGTOY+fdkVIQ0yZQE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "su8VZI4SfcPA3Xe/itB+4IS15VJBqLVIiSa5+SRZlRtaEs409LQ/r58yEDKBDfLdy2ELRzkfXmIUQwhrOjJ5FpuYWvMFGxnrx0NCYwdSyVgO0sO7hxqbkgegbPYjQF2u430fyKDv8vlLNC+oelLz1T9A41UMGXAbc96s16Q1+4EXEDPY03LMYwmfz2AqMo7ZoXXotNL+tswgXSZOewezFlMfSJKpkCXO5WMxxIXGRZPlsYW4sY6Eh17oPC+ZDxuHPIfRi/+Pp9C+aX0rTMYfT7PFzGGo+rsj++SBY0zSd47GvCJZKMBVC12qqfeauS7W65/S9THO7KYClzozCimnPGEcDgQYWmEoYMcW0VEuV4IqdE1QILM0/n1/qv/kjHvR19tvVRi19t8DfbRNgUV7K620CGYJbuG2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iTcWGRd/3eUXW5UrUAdleiXlF1ZY7ubrjLK8x+iLXXE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "21VZ/gPDyeVy9WbQK7KbnJAK1YSvCdycWUNFkkLJguCL8l+A42R2MNM5oNEq7t9QwuFx8K0rsaAqxf+8krV+6IsWG2nwP/9J6sMFSP3ZpFNII1Oc6Eo8GqdmAQx1kemG13Ig5lwc1EfZW1wY4TUjmQNg45ex+0WXTdbnxl6FQ4uxmdE2EJLSCA8dKd9fMrIqTDaQZbMiSqo/yyvmnfsNj92QGWN01fcX6WKh4MKM3Wbej0xz90JuRi3n/2j1e0+dKmBhmUWnl/OJGmZNMbaHFaT4AjzK7g7/Yvv2gVIwJxBfkfohqpGv95AQLj1rlZkO8YtW+Gyn77t4vJQ090cNPM+y8b6W1nQzuVydTjp7+y1NNZ0KQOh8o+RgB4bVOY38pFApNTfK9S85ykOYuCCTxA2e2RMXmMRA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iUYHRjuHkQ9BwPoBTWOeO9hlQL7YUp+GIYgfqrxzfT0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QnTqJjU0MOE1FHoQNI8a+mVYPjN+bF+Y1Gr6g4+mYMN9eklVZ8GCvXpZQiHbyUT1TwByhN9Wcgz38xoGbFoDUJne5gFlpqCHKuvhNtU5zRxqvv2CIM0F4sr3AnPG0Ty3+ZDWZF/2g2NLTAu0UX6kkPZQZ62zftknTXQ7U8OLbk/E+afLWDMuEanWgx6tlvq1OsOBx9Jb/UaGyHDSA0mDc3bVHN3N4iD1g/04Cm+JDeW7HcKeGOe+zypDdDnsW09LHMxJAbFf2wfQKeJZVgSPS5WK5Sio5WlMVDsPzq2qxjkMYHzZZPmfWhE/pPwzShm3PH1Ctn8hhss3Cj1O6EEYNMBou8q44Zq+64tkdPOkWLToy0WG92mEJNYmRFS/8xV01Hny263Gcqt3supOKJCUyGHfIActPNk3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iVDa+QIa/v4ZgFv8QqUN7lrmXqY0kCXHGcs8rCuwKGc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y71MC9hLDGgK4FT4LxOcpHsWdMIaP1N0TiZC07+DjkM8LZZb/DgDFtwKYwAINtGphDondqbjWBBpN2VUW0MmZhFW8WcgSl/3tGwXeI9iQ/qcrnhrWEbubrDMpUCn3S377WlrqfGO+WAgcJAHUdD+/slTYu7R9yStsHeWIwHpOwxfD1VoWLuny/ZdR9esjyKCU5iVzCacZS8vC35Px3urY9bkIOull3AZdzzfWzfi6B4hfHpXjd+z14mKbjKPBdwtDjrrZuz8kj+l1f6Vc6UF1JBCjy7h0GFs65RZ9dIqonJVv7jXs7WMNviXHFQYikF+WqPuNC7HZhHEfTMurJR/nPItKs56FpkKkyl3mjQDDvsRKBR/2gK04S+EsA9+Q2nEXh04VeDVoXswRqK+eHzKkVsJVxJR2VDj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iVcO3mFXBupwJXDHcSJSdG3ubFPU5nGUz2LQ9V+I+tg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Souh4Vt0p5cWayXs/b8+HiMREjickHGYIsH1lUEnz7s7Lu/kLnkbyivYMRpKB5FNPQyC5hX+a0x2PWb6vwB5JDSV7rO1Unt4SLHW0sXFSUb1O4M73AzNBLAvWSRylP+WLFGEEX60bOsG6zd6ENEtIVvSIIDfYAed2AaPJtOZV5CJgf7N3rCr1e+X0j+Mk+a0Oundk45J4wBQRXiQfJbbj3Bn+VN7aXaGAOhrxDq4WDikICKrEZ83Z/8AKJAtmIzNBbCTflM4RDy7tzGB3nTPR5XmOJFNJwgk6U+NU/dIyKMDysQh6LhBMGez3/TRRDudZ7ipmG1HcxkxyolAGuStvKDsF+ANsCLWuCUHLoiczoxEjRP4JRZReQOQYhzkHfNSROL4YM9ERO6Waf+rgpBrLgxhf9PigflY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iVm4IkHsXdflo8sLz7lzaWm2NISSCnKS9dwcgedm4eo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sigeGL3f2HhJbt0KvNbuedTIOEKzwU+C4V8McqgqPa24k/kc1foICGeIyBBHYef3dljh9D+drEbPFWVDqT91mtoxlEbwD8bT5NiDQMwuio9q+SxycEoz8m3XXT0Qf2WnCd0xMZJwMrtARgoEv1x5JX8hXXQfNijTs69HrtFZdSwjled9QhlayYlOIsCbUcTGnhAnOYcHUodRMfyyVvfn94Ga85dL7hu2vQK4BrHgOsbLiSPb4cQd4Gzpy1cxG4DGwmzJyV1OcSBoW+UNHs6MbOlelX60jhvfoAGJTjS/x8IJKYI0hT6TwX+O0ydLm/hjEFOzY9e2fnnUMFvEhhGoNMvKUS2R0sVCOw1tHU1Vsi0Mzt60qXmJ+u3P98U9lL3ALIMXVU5bHhGwHi5WumyEGLSzBeS0gPXE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iZ1+iw/uMSzMPLO6k7wgsKvmfTKrcCpQuf4ycULiwAE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eSFRhKD+cJ66FswpMsDhgKA/EnWM0zRLWVB9gUFtsoZThAWUmwHNkoMKk+E5I1PsL0HIAYPuCDAGesxf32uaOA26TXItPYrV7M/NhlS96lvwH8EDsh7cZQtXgqbsJaj4Vx/RQb497pGw+5xxqfhQTzeOYWjz4t7Y3r87JHAdGLSUGiYoDifhMnav2DnJONpyWTTAFL9QrAZvXMr7mTl4TY51b+ySVYNYIlVv2b/0PDViEQfC13h8D6k1PULCvElJVKOnYjys1drAEUr8GvLuPB2EHpM1yqqjtD0vXjB+s0wLdmq8j+9R8aymjQQ2kP01D0T/Qm8Nrz1euwb0outCR7sI0NV9SGn8jaPbw69UaY/b0+ltJlkJ9hOFAxa6PYIFnFqogWGwDkjbohynz156OSB1ii66rCSz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ibGC5Fj375bG2AmueXj1enoFnOi9bG+jR1/dfgolYww", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l2UoPHLWaWhas00YvS5i+hjAGhgrbGfz9h0btZGtCTcNoHKFXZnf3X2sPItXxbMvBJKnRd7KtNlTAcz6jLqKquEGuLdBCy7YGtstWCZQnT89vpIA5eNJJqOhchUACiOsHMvau6AHrHdsRerj6daQf4YGDaVq9QAzMRhlm049akgopItjm45JYakDdKe/lWWOrl5B5cBN7O5yLtf3lYS4MYYlt7tx0BzShmUkN75/oJtcAu0thKj+T/hrpITl5MrRMdR1tjZjmCf8r2xDErsVOPcqLNjyAXrXsKeE2VncQiay/HL2HYIBuoLoJ9TGF5/a+HDNVF5kKip+TffKYyP1KXUZbKCNlJsPd5Bwg/TrrIf3HbWY8FgBvQmb/sg3OgkWXKFn3blDKA3P/0WJmkR+Ok7X/5/CZ89J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ic1fPbxN93dyaOcNE6pl39O2XAGmmvRDdaQ6OFrOc7o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q9V7SQzh+J+6l48NMGsl4hlOw7R5AXxRBEhuU/6cloq8PK8jLY8eso+6PZKaJbOJglXRPUBs/L7b6U/gzlf0ngtHCXC0rq6dfGqp4q6ETimrtwqB1QYsNFdJjGRCfaanzPH+01WgGYvbo3L1tGMubjiZTCVajNKYvzSKENW46xYGav0c2M7HOmEj8pQc8jrqO8RfRjNr2uf/8tIKW/7SKSM+fPaEeGCuGg/6rHYN6a3B2OO3tvTguosaWqkFgQVTJ3So4Riepl30sc1s2KzhI8RdFzlZXFr/txOQZYtqmCX06mQe26CBUFUxkc/LEQUkkWJUkDa7GcJGGT0xfJFiZuXwLiL7AjTy/pyT6LFdNnrsNXExAVQTBfbIfmmM/jGVXcrtd+aaB3u5MOJByiWK6jnWv9iOMNni", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ic8Yx91huGvE2SkyVPw4XtjYgUbdX3mwpk9foHqtfE0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tLtvti5IbXvKVoHchYs3vUR1RIMXHVbjtpa80lTM/Qtu5eJQBz5NDgMiOhRrjut0xlLlbA8DMNmziz6ynZCTOr/82ebvSLN0EChHTdbCB49CnCLi9XAyEEjcn9+SZg8QUkRCytUvdx8apjfbXqc3RBT5RVdxFIzfMgbP2fRFUfLKMPVcdWe3CBDtZsBUFoBSHOBn9MFkI2RdyUaIi7fnp5mW04IhOa7r6wWwN+DdKmdwIEFxIfq+p9wntGuXvzCRU7urltrjVAp9AR2GrJV4I6xJsz+WC1+RpSF7hKkdr1VBmoWJhs0f2HIAnCvOyHCGzHFYRW8nLPvED+LDPRRoLam8JXVudnrlGuaUdv9GXe8fg0V9aK+KZRY5Vec6CzmhRoRS/wbSQM0hiCtubjTG7Wto+Pg5lwFP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "id9n9ZSuo9llW43b1Uw/xRxrXdLu0XIpiiw1ulRCMaU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W06OIVFXRRYd5/j1RyQykAeOPMuE6tURpGNC/zuOIeAwpP6p9Iw77q++KVRzQXWYTLM8JHUOoA+wGL5RwNR85hu1NC/vzgCqjt6u5IlmYkV/Lw/gL2aOd4vcm2VGHYoK37hY44jWRO1VdC5GLb/TXylut9xqdYA7sFTb8yB7gfMjo53DKQTa6qiAcPA804nFH+KtSj3yZcMC7ymGk5jaCepYQP/yS+MK398CXp5GS4GUJ0g5FtcdNzvsNNjM9wXIc0gFgM4nr6CSyOfjW0lfuSvvieoxMY24/G4Bv//AAVdH8Zq27ocA6EQimALDJOb8iH+Imq3Rizazgqy+/Q6iwYsCtXd81ocoFib8n1oLg9dlFEuVmnJKG26AeII9QyRej3d9Blfg4xUae7km/5Hlr/Fve5E0f4Li", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iePWp8PGPYviR+5bfrTJjv2MDemv4+4ts3Hw3tgWVhw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YF1n8fNGqVhYYo+REVpra+Pjrq6RJuciCB3GYkIYL9j5Rf2xQ4XZANVMlSIK2rAefkUtuWweQ28IhFE/0Zp+06HBFpswLfaSig0SiJJt7A0aMBa/wJ5rOD//r/BVqVMIytgd3lbgluJhyFTo9UeytfJwBS+o4BcPRoQWXGgaqe7omxyHVFGRe40yQkVz/i4FoeAcvgEAlXU6tshbAJIclk46V4nEqBRsiS3hxsMCyND10xmGBVMDN/9DwFf9ZV/yf7Ur+8j0X0m6y2eKwy8YgMtZNesIM4dM6PEnAN+7rJvWU7hu3zDH++DbCp3qc9e/zP41JrGcYQ84Qz2v5EumGRCp9fuFRAUKo5I0bAeg4U6sHL1aAQ8rg1icegY4v31t6otq2+GjJvo4sdhi+gFwuPpgR9vVMR8z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iezrVmNQ7krU+LXB+PGqGYWc4aZ9Gp+amzgx02Z2Nes", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "li8TaM8IkOP5OR3DBFFXYvU26Ka029uQKvK9x+OK6+/aenNsrjDHZ0TJVBT+4ZrsnFtxDTc0sQYJwppMhQGqGKGvezLq7knVytHwQHmFas7HHJTUEUkW6hGGREFForh8B0O84GEpT+0zmhI8/hTd5QrRv1BkkFuDWILcrq/W8rFE0LPPnD/iUwsPME4JaCBJ9R5uowNSHp4IUn1CsmiIBejS6ub/2XIwGc1X03tmalKGnB2M/CHQp3Lni+Al1Wr0Wx8fscRQ3XiLn3MZuBkEzRdK7z2s6Zj6WJ2otB1lnJmqNpx3/2Yf9F1bJhcwb/+mRrQmQpjEthl2s0OorjTWcBbmNb9Gkt2Gc17KywCw4CSvzoApRdSrKsvZSZpU+84b2v8lGSUZLmBMYj+bHikS8CkMkvLEZbq5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iftHIoOQV3StRhTijfSQAVdvNMhP7eO8Z4n6KVjr/MI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WdBz0wpk+wwXPdkaWuYC4Dh9CA4HvcNmPtiYlpHISSjcP0YJOJ5E7bG84VmdH2rNmmT71pTmMF011BIFGrNMm9HUbQI93IkOdzzVmJfediEZ+2sOH3FbqOe2Yi9IFk5Dit8mo3unilJJvdZwSiAvAkd659ggSHEHeyeh7zZZoT6D/4MjZmH8mDFFs+w+SwWxPDDWw18Wm+78wCSBHcRCIddkWOcb22mH6H+OB+SvHWASO4ikGx74N/FSMuOlaIG302NrGDi5D3LBjxiJI+cy/CvqjXOEF7+t1XCBouBmToRnczHppF22P8Xz625bkTPB+PDW0kftLXoLrXf6avcRmKw8CjPalQ85hAPIIpGQs7LUnrbrfEFjc65oAgYKKR9Aur/hPCF86G+IHB7SyoRTwW6ACScXSAsc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "igOVWfIEDx4+vZgNkBj10G+xXOKjEb2D0O5YVA4BviY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nKZ/alBCAiAOWnnku2bIcJLhoUJE9Barg/atn0a4B2d60OVtEHkIgDCEZaGaXgVXbs59N7tbGcnubbOvlaBcxQXdbBy3sDHA6+0WQhUItRr6cJ62VzJMyR3aBv9jIUrNXmkxsi+eltDc5o7tJ1MBNorcKaGdc8fNPXNcxzS2aQpyk7xwupjFm0Ibh/czuu9IYyZBMzhYI8eF+Ss+X3VYCkST4e3NBjTd3l8EOTMoSiZwcPzSshENPLdZK9YQWYBjrym6Ggs2D2KZF/j8A9S+hkqwRTz+pe0IG11bm2N0ZeJlrClW6zxzMrdtP2zRyadWwFalpa4gcBIYIa96lZUnT5JsnXSHLRqHSY7H9QfwgD44CJ28nfyV7w9vKGLfVy3Z/GTxY8dFmieR+++m74+r1aJkiFTfrJo3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "igzK4cvK0xE68oCbjLEwf7x0rSLPgOF0ZBVo1jZT87M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "exRdYQ807bvi2kEuVuLxysbFeB5oir+2YAzATV4M6CkepxEbeId7YeaJymRcHidoyVfnH3wTi4AedfZjPM6dFkQepCxEVORGPNJKw9nwB1sc8HIzuykiLeU3qPN74vLOcQD2Ej1nQ7YrEq4U7TW3p5mVdQch/LDNaiyJTAzmi4xDfVQvV65nNjMNCRbJMCJiYIKX15kiAiRRtekNs/wLA8HJPWm3p5c3qDXKVRrFp0eLGqM3Gkb/GLIzGn4+4bmN4sSQjbF3DrEEvZEpmmGRZJYFzf8utWkinMEFTSjxPSAEofyJNP5LG0kepOboUB/hf0P86Inqv7qZ2BMbVLFmTXSu46GSzls59/kb3LwSCZ8w8d1Gvgk5MfHMfUYw/IdUtS5mQUh+m9IbZ1ZAja0XdugPe7Uaqpr4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ih1q0PzRDXQjsJuVZ0a5V8TXM2Q/WduqllySGH+dNsw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LiFOiXnN8TRDoxn6UTI+tuHbKZqRdnEy5mDRvv80aykxcQlVB9sAC2h6U/GSy+sQQlwYs5u+PDfUrxldb7pa0xqlzC7C59iJjBjABvD/uCpaZM5PEhh9Ld/m61dDDN6qz9qYNDLzIKtEgx7lQzOwwhBQIZIHkxWpyCETPDFtZAfdRf6NBRUVnizYCmq4KxZ+I4VOwBqQdDLGNWESQPi3QBSZu1UXnIqNwjWLhrRihYZ9LTikZYsHdtncnkuM13WG/iNaILoLKt1GAbe0myhgd1ECw3tdSXmv53uRrJayyTXKLdhseuWad27+IEWPZI4uE4LQojHW+HTGztlaxJ6fgrCF8vZehkNlv5yVqNIFyDvC5cWWp5yJHwZ515E4B/MGVFJyrKuflVSpTwQnhX8Smszu7Ipe1NqK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iiQK84CYY87aywVfBTpU8XTKkTrhnmYsL+5sZY6Ok3g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M4YaeQt/AZBaw09CcsGNDexTFCsGV75XV3PF309Sj+ug7+85mzL/z50XZlPXC0EPvN4kWBu/Fxct9xbWhuwVw8/3E2n8BvNDD/75MO4aJ9GCfSZeAoKJ13nORBWlqezsvQ3Cl2OfXwoF5G5ZsKj0uTeStDwdwzy+KQI7rsE87mxLzBSwpGDbVhUOLN58IKMuaOu80siOX+BUuotg3IrnaBO5gDGtpQx2ySi2vhqL8p0pC1N9yhn/qwSH46jOiRVAgwAWJhtX9yvGfxAVajJwEKLVB9c8PaSiUVoXHBZvzfa8RiNv75qFfu8Q/GIByk5cLYw/EBBr/+4OZ77PvSLDgDDndjoJSGs7SYM48PwsC298gu58PvblGChhQcsoYebHQtnXQxTe38xGcWAQv6TatOxC39n44SdI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ijIBwd2b7FNJmVKazbk/TnxIFF8x+a13qr2R8i6/1/s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hty0/ztSA6pgJj/tLHImwpNLcHMNqdGHgt36Zrv+DI2XYlt0QEolOwFO49FHMHcDQwKYkEORLIyW5eSjjPIC5O70oQC23unqHmpQHv9Uog4HswL6QBd3ceDHIPJb6lR/mzWX6zV4h4endnY2nfTt9LZ2iby9Qj0HqAZ5Yx8zEyHVu+hXG2//uZ12U4FpT9JhBNxEeGYY9ugTt3A6IPwwbujaApdq0d3LTzpE8HS/+7f+T8XqMOWRgSxFxKy/xnN1GDP9h5N8X9SExfa6FyZqOlM114Ebs2zLY08nuLYi9n6/WE4KahBLEC8TWllQlN2O4NMZ2gus6rQ8s+JPxf0z0BLZMlZBNBDH6pFuVftX7SFZiVOvvHWDsfVhSAygrDt9gGM7cOTOyI0vOojA8Ttw0R14gr4i1f0F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ijLgGJcDRBXKN0wQMKQEeXUiwPCuC6Of1aoGfQV9wWY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uzA/WDRHlDm5BieGHSQFxTybGMH8bFdN/2mqFRV5J2GeRucoKvmApCMXEEEC2KqQNOUQiXZ4xlRgNd+XVkcXNTeYxHWD4WiKmgSmNQb/3bPg5RP/l0BWlLZB2Dx3EmSCiXzwP3DfYIxj/W4CAJBL+Gp3/IMFCmTpaztYiF0Y/xjCnRSK86eY1wdgI/HlTedTfqDJ4RaidVNSnBMWnTw7WCMQMD09LCPEG9V0Qw064Iq3xFJRzImtI2RwoXKKuo1b5FiRzxy/ebE9PN3FuJZshhH77tCg9gXPX/rqmSjFuyPJQma8kFCKSrcC9qPbFiN+/by74ycPorpGBbSJPj37ymnaxecQCwkpu+NP7vEthT2+n7pLiPDiCOLpcTLGqvyv4dsvBn503snc1odJMvLkRIvP3d9+8iYL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ikV0qHmsBvBY2Ydtrl9xgsUcub7qFnyU3evW6xeVD2A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Wu3K7ouLSQEBuO84eOqd9apv8xIN9Cg/KLJeJaiNcSrfI60XSFCCI0WUv4FwDeS7kgANHdAw0wiPRnvi4poLlgN9qZ6Ovz/lrmNpInVdVcdM8xule+Zm3Q9nDvKZcTPV9aDRuqvb8UhJZ7IR8vBD8E49ehDIhF7vLdruoTuKS9gCbvAy7pquVFP0qhmWzfFQV6X6mpTUke/hMb+DXIU9v7i9HydBsBLKPIecjfutpgTM4vYbL9TfxkhdSYJT0JW0D2gEDdnTW4LHIjSU8ZuT28KNq5kDBqVjLocO0rxugcIuy7bw1r7PfZ0FuBzHh7TfaeqyHL5FueLz5zeM8hJ76RZrXxEJTOniq2vKPzj5+jH36NcKkQHJh3lmw65lBS2USd3URNNGRBxtC93D5H8lOtSxKahANbmf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "inB2FvyCjvqiEmbXRAjpMPq5O8zL7SriArwd8ZVcvYE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UwDCWoao5eMitGyWRlgAnuL9+EoqFzkvrkLYHxbqgwz2x39p4PDf7HRbTzw5drm/AS9MpjLkRZYhoaOd1/+xzIaJp2m/08CqapCZW0jxGPghDa1MKT1O7vh2cdAnDdN0bAZaxflzFG+2WeUen005RhF2LU2S8v4E6oZtV5HiEb3KUOrlvHu7Y+gjhtr14/F6cseEJXfF7a27jwTGqbNITZQqkdjcq3DczRAfFf64PaKWB8WkZLI3bQ0QxgH6JXkNHhLXsxl6wL5lLSwgbTTU3+iGOP6QfzbwHtbM47LKoDc27Wm6YhustyHXvgDp7sBsifQadd6vpqvGyHXpjGjfFTwlNgaFA/hsqfOXvM3L0M/xnO7joiPSZFch3xCXMGkfdUTTQO8aadfEgJP6bXC66gv20MjB2kY3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ineehH+dCiwNvYHmsJAvAVlZ/uBINR3OwHlhebYSygU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ppv++iZ4YkIu2mu5jVwiFPnGplUHnd8+3/Q7Eaz6lD0uqK69waMarNr0vjDg/iK7FvKKnjbVr7EgeEIuTGHhwGqBzbZnu3gDv6CZx1L5ktdCqvC3lsUIZ1wruKDtA5Dsb1CRPphc2AqKCcFVOHwgSfjVnb//OPCUrbXVdp3Lkgc2UxX7XMsj1/KFHZlFl8jkzYPWGq/De2TNL720uoKvJ5FuGHEwl3dG3Gx/sH6ymiSonxOzeSKaHTJSy3mqic4nPY5AzJx7VJFJsAEdnjij/JdSIOrgtKEf56BNzoI3Ocezksbeu3n8jlsHzzTmP4BpzGModdMPQpKoCNDJt6b5EoesbPux6O5qOs6SfoSdn7VNtxLsSFTSqU3U2chI6lmeYIJ+Wb8wC7ax2zSKT/96sBkkufSJFsXm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "infs0BM0JlRGL17F4BtJczOEwdwJymwfGEIOMUYDYBc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gbAjAfp8q+oEKV4+gquymYIrY4UnO50HFloxVnnihIluklCTVP1H3LU6FURLVhdafMqszeBto/Xx4edY3hJhMEN/2fpKHrrZXgJr9+JqzopQ1SSCcwV/MtpxTrzBN5CdAtqvcZMxU5vT4gvvyvIps7GF13kNuOMxCsQzIIflRrxhgnjAXExTOAk0DW02Ay3Anf/RN0SFM2u30vRTvJsNwUM0ttbZgwSieS8gTxVJjjitnWh/OHrxryNhjyFFfNapYWoxDpJ8NFvTf+ec6gMhQI8jfMQszH1hRTX7RYnkU9FsfhyeH5WNVgMOG/nnDg8kjB6fuIY6x9iIb2ENmxOwflzU3VvC9G4BosIDgwy9FvqzBERsprBd2xERED2TqGBkH/7kf35zeV8Y7wZ9yQvv8i1mvGznnFqs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "irmAcBHeUDuDsr3Yn0uds0XNN7ilm5jMxYLJ5teI1kM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OCPcutyQSZHbRxrwb//o4q3Cms3bU6OwKsSp7LCHmv+H70XkQAfiV+W1bfYNIXYCebIUIeAet0vFU62j/ZKtOi7373em2OZ0EdGRTZuqwdQXcPhdNKNiQuAuKp+gcAh9I6L4dpePPJaJmt+iTSTLQvtZ2iPXlNH8mA5YszoQ7aNVvjLjGmn5OVHT1XM754Zr+owi881EKeQEVX7krjqVWBzWYTtjd8eBl+OK/x3MU3ill8CqbuZYlAOyK6h/zYydpo4FCbeOE6ToWVbt8/31BnWfmV4b3VFroiCezpf6cT72dsIIQGZKEYVa5gSY2c5qyq0YFYGCL6Kn1vI7KUQ4YZDp+kvQViUex7/6Xk5uNkwCfTjgAZARNXwIgEbUV1TcGGk2xhAh0WGytBuusGZf+9XEje7Pdm4v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "isP7Ao0HhGtk13V+BTemV31Dft1bIr+aWjgu/wSY5K4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YYs4Z/oyKa5JYWFGZpP3uU9AbtAhyAVQFzYmRXKX+cokAHtNLyahPU7zQEKAg6wT992ajPV8tg3toNbrJU4ba+mhSDH7wfCt9GdIVNj93AJMWP7fIBf7N8phUIfYUoy2WYRwu3iu417600eIU1xt8HuUJ+NXbtnCOzhf4eve6/pT65EVPxk4/eOVEp5Ih9fveOqY6lNfF98XaZ+M7dH04VEFvZQfItx07HRxFDKbPFzThVJ33zRpiGhcE4GK31iBTByrJqYyrigIXLFQLoQ+PINiSY8MlwCKzxHtrC8Npfo1y5Tej+T2Vzd+SjnhYJOgXzU0qXWq1ReMciRD0qegSbPXzyv0/qM5p3V2c0SGiIZim4wEI+cc3RQvv/EjIPbn5okgSsd/G0oqHQK6ptCK6ztRrTHB4X0z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "isz7R9rk3LHGfNzIpd1ckarp81/Oe4qHjoSKOtXMA0A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "p0QYA8ys9J3QuXxaxxhiw/1qUTjAcGYHc//C8SsyTe+E0Ag31EnfUZ2I6ocMvGXwaOvBRo0yUhBL7Of8yb9eiTwoMejoI2wG6kpwn+KD8IbnKjb1LNw2TQZGLXra/hBNBJejAXzOi1JNnOP1o/jd7iwUGs3GPiZNA+I75g+Iez+g2CNLd3HGYNOnc8D06Y+idzQl7ygu6IH0F7Va7uWI+t2dSKpKaDKGBRJCYIEV4iQ8BR+tipXd6RpNq4yy186tvWUwmvlLT/sqZuMQorEoWTM6DHa4f/MsRZbAE+QfhsfXqfnQsZ13Z7NZ6C1zhX05hlkfb3w19Iz0/mokItb6I/Gzsykg9EqteICn/SK/jgWXMSh+jSkkzAPvMSXXBo8sgWZPWXDGF6FpsQAKvggonBfpBd2CEmdJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "itnGPbjDHKQliMY7EUB7yytySeuW8qaRIq2784pAjiY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Vp5hyjzvgU29rqaUz1zucn8dFoPN2uMuo00p6YPDv8XMCwkcmB3s5Ns1AmCDXwTDVMsMdlD/uXhqEo0USYhwQvGTkceg2DzfFCDmedZL5s1fiSVwph1AEzNSavE8Jxiox++0IMhUToS3EnHzSJa98cQs0VYeVDMjoeoxP6Q2IzcbT8a+Du5MowJU8VP1Of66Pk8NlltzOvU7PXx3qLOMFWH+tPo2uQ9B4B4L3JtrsVoXZY+wDooZ4yUrLD5bZSbcjx7l6Iy048V01BLFyC93yS4yHnYOyMvXP/aJFjHvK1DFLUZNWE7M1Hsi0svfkK5nGsUbJna5T4SUDkEOJSvGn8xGqMYaEHDYYN3HFUfmmpM50aOBsZ9r0LU5BixOMcRoLv/mdNGeMbiuBMRwmxgObFqVbmxKGjit", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iu5sbUiDkkHciL/+sMRAGTa7z2MBp9XqpQIm/GjOhrw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d2tvGfrQYsQPfeFKBDqtaMexKnCFMTJzB7DchzOCWAW4s5wR+huoV7sFaHIW7htNSOkMfMr5uQGALmRSYk0XRNM4+MSglSc1xy4l8xx4WcFTnxUBB7gQsECBxIlWJhNJD9LanA5wVYW/xRxWahABGV+U3H7Ht0ZStoZJSt2O7jvYxSQofhamMVaF97L+GOGG7zII5zFAfjpYvMmLAX49nGhdRD9TsAbLmDIrg/J4r3ZP514Grgje6hvoqMh+ApdWlX4p5YqG1DRltFSKEYQBoieP1nsChOmhihRGUl1hlZUUX73XMYnJJ+nN2r+pEfY28y+cMvXYIY+gY7ODTjlX1f4Mg56GyQRWPOsJwNI6bvFm4ta7Dl3anNUnfGC7X+uj2pqJTRXMWfGxA2R/LXo/X0MwFKMHJVwE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iueFDHXFQm/ja+SKLsk7FZcEqYAbE5Bl76tjDCIW/sk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HJvfi4wpJPhj9mOuiJ70F3V3Ub6eNQkms4Bvuxa6F9W41JgsRXq6rToOIA50RGIS/Xy8DmM2xb/sX5TIn29OZXF6+lkPcteHVMp9BC0ukQImlMnDfjx/2wRhrX0/pnmFRAua4AI3yZFQhjqUphYutVGowqsz0LLYi4sxhPpNeORCOLmHb5D8hw5AeilJy31KlKSUAv9RutoSCk28pVieU087GxjcMBQd2aZZ3hExuZXcUSdgur9Wa/W6X+Q7gDEinteug5EN48Ui/DJdcSr1oF1z9n31FE0Wc2ezRCLb1qNnjSHeZDZv/hEHvQvgG/BQ2HKPJiM2J7VKZUdO/RRf6vqeeygqlDZjkn5uhTSulOjU1W2aUCPwZ2KjemvxMX9O9V03WMp5+Ql1ujI2rhse6jz4oUiB1jtp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ivdIceUAjqeMD/DFC90PXR78AW4N97euGJ/kfTSMCpQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VjJI9buB/ESy6Q817/ztCoOS/Bry6929owUh8Q+TyDQfGNkAJBXXCs8WM2G+0QTfbz6iFPrrM7ow4mtFO8ZaPwe/ZG8+SEauYJKaAiWNN7AOfLNSajodxysZLE+Vzv2GtqsO4LXsBpyMiH0m1WJArmN6D9VC6vOenRcVhePQcVKVJlis38sLL3kz7+k6w7PVl1GYhhBVR7QWG0obHJA62NFwbiX2nv+jW3z4ttOtwozi0E+b812mcN9+ZWXEhuuTYDmXBkXwEpWVS4ezPpdUqz6l0e2oWKOvUiGV0fGVdwSL5PSEYALMzOO/LENh1VGHVKgvoor8zbRL/vu051BjO5ZBiuUCaq0KwCPnmPhEVEOXOj4TzRAnIpbQ9A5PM2bdP6OLmM+ezm7ub2PBvu/akYGpK6vj4ojA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "iyyIfQi90ok/1zK0lJcdxE3fHVfRCcVLh6eVTR33juo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OedbSC2zQzQP5SHk88qzKj2fDrIljGfeSBplYqJNYCEHsdWUOFVXtejgB5uGGnKKXn6zANfjUTW95XjS56NH1JJUjtXmlYlRL2yIBs/WeeUnZsOzDjU2QGVaA/yA8C/8WRRq5nryi/j1eGAua0WbLSQLDDMejk5H5+baDMx3kNjIkSDwr3FmxR/5dmQcwNQ2G6b7dj0ocJ7JFFOIg8esPlY8WmtGYng1HT93Ivw0lnwdyku2Pc8r0XYqZIjyNHt0Tlq4XTF7qI+s1578IIZbQot9TLX+g776kCxF1Y1RZ48F6fLOIGAfh9ltZo9E+mg4jeW7PDUgTXC9eenGPh/iAkPkNjZEn/Ijo4Euh1P4u3hD865AQWe++j6OqbQBBul0LpVlrdBKerfpr2j3aCdpnrawGTKZsYQs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "izPuHkJmvIncWXN6u/Okr91V/YkY0reIRbwnCqtzcUw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DM528YPsIcJrCALuYglwQ+30I4qNP+MWkp6O61KwbEu/tstf0yMwieRb6U++pMm1zMD6I8R+bgDDIVjG8S07ox3YJdzurXJpB/36GVEiaW+tkv0InFsvbeicVmVKF2ygTmuAgGXKZGSB+9K9IPYZ3lH9Wz29zGX0YE36t3kEQ1xoDcINH/SxIXQGg8ltP1nxRFgwA0Cl0zWF2Gg7e2Vl81oHw1hszk9Mvp542FyXzpU34YRdcheEfQycTv8ah/NDXayWITHpUiDUr/ZM+iFRxHMSqsGR+fBQkISPDNz5zvVPRmqRO5eOJG8+dbvpK7V1Eq1QA49RiRwErYqTOqKsFlYb4RmMYazhrv/E0vBnNxEeiqSNhEVIhbKv2uV5J5RAZ209AS3t8sM3bIkQaB50rGAxX8Io5ZtJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "izxQjMBBvNMfSUSepbpdc/R+hA7PuKXFL/mbAf2lRtA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LjtRKv9oQXpc9duJ4jwKtAwu04FiEjEIfirW/5Uo3J8T1y0Q7lxYuJnhpJkThqtz8BmwdgsL4rNz7JRYrkVzCBHsj3n5CTHp2xUdso9trtRq0pZfqxdSRIfr1IK/WUqOArxPJWZWGwAUbsG2Zc6/pjwdu6JchKYDRVIcNneyvW5LhtDGrNAJcMlbFDuQGdaNmujwrIfKmXK5RFplJC+axm7E6pMEfcUWrdpDPnat0QTLj+fNJvlYoIdfzs+JCiiIXQxAcyEKCYXtoFdImSYo4STX+PWSPmSzd7GeGU2wzkyIsiLaAY6xMolPOyMan56RpleANQblT8JslGJjmHBO3+04wp4ZtEI8Ru/IRk5QS8vYjB8v/rf/gd05wnMGoWSwysUCXBGaMZCNnW2Bl+aTZ52VevPxWANM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "j+9TGeCiiK0lSJMW98hF92abnEb7Hr0bAD+3ENK2og8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6lApAs+8qIIhm+A0r8iNyaUqkI0n5CX8NGaaU7z1S9Om0qHzoIUX8l5ZPn994DRC1rwni1NT4gmL9FArmj9MvvGLSIXNYYguqpcINCxTO11IkXEwb7/+SnNS69n03hXrgq9NTIQwHp1+QSkMB87WLYmlGqNUxYz9CHRgQaVwZ6HDNuP6vTUTot/Y3Yxo5kUyAhxq1ercw5AAQ/Ul/b9ywSHYQEXXslGSmmKg/KdPZeqbcZXb2MAtLCQwRniQPrXaDRrKwtVhTM2KgJcj/YnHnJtEixhdEccOrJ4oIauVewLWdj333xoY+W1WOzpBhdq0B+Lb68JSDQZvIOK0+i5HHU04wYULH6d/YoOCvtXNxmUKUbCuEo2R29bY/yEk/fbJ6JpMpVhMyFczbk94XcoTyqe3ODQ1BWxA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "j/6x3pgMYf5cxz4kAkSNqGtSYUMY6pX+BRDY3NkJ2fw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5O7cs648OIseH+rfhPIllPobXFWDfNGrNnkoV8GFhYxhT/PXABf2w1k5YwPM6SeaKIATjvYUeXZVV420IeRm4AnIZwA/agiK5toUcqUoO1B8lVCh2bmjDuUAM4hAb6YfhEeNQLpEBC3xfAGmNlkCKKXRiQUuvPnFxdCJvwnkBG3hT7R0xOVfIK5ojA4sMEsp6kz99nvleEom6Et71T/+bXQL/S5BvvBQi6njW6lashJ9zW4BnUncZxfrSNMCoAwD/9zNXXi907E+ToDncLsmpEzRUck7388SyZppqrZWCIyQlGQU4oA6iFSggr63euBp3kstxvqf5kO7VQLR/EZ+FsMduKBU1nfsDVtY3eQTVsXa+02EErpXPbXjuNRUm8cWm/es9c5rl+ra7+0QQt05H89nwTaFsUu7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "j0GvQRG1aUiniPizrlsVkAtQUBJPlQFe3Oh4+BfnTd0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QGV66kuDyDOxDEZOKDuEfcUfb7Kppvd69dE0Ozgyng9pfzIrbQUNjHhOLYMIyls51aRQohMEn+fUrsUAaYhhK4NWtz5kJBSVoWTfwPuGqTlE/6u3KmH/hSWwKL9FaciRPROTBCqncuc4wJljjMQYeg9u4CEzlnQ4d+D3JS4VcbcRz1mlpMOH6ly7LJbhasGJcLstrecQheq18qXjAY1TPY2xsXzYgWH/+P6OAmET1z2nr2BVv92CAldXVnORJC20eoYf449ykKUycw9iFWMwgUmP6q4bbQge8UPE3P5jpptWPwvR3j5MnIYW4MQi4/5BC40RxmDza8QfXEGZbCcurjPfiQ2VoP64ycLIDm9pc32X+dUugTgStGY2Qs8yP3O/Cro9TG8dC+AnPU7RYNi7Oa17ZpMFBuRX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "j0MerjpjDVEO3731dX/kMaPONMVuJfWc4yR0dkIsO6c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/wqfSPKX+PdSH5S7K2IoKiUPpZMhoPWNlPASnVca8HSOcRYU6I7aKdG7xxDYg7r3Gw+LcPZZas4e34H4DKaBd4AWtnFquECyHsWk1sKV21gThdyj1UUkFzHjEzHIYy+VKaQMRBQ9U3fjqVFF6XZ7Xw6aSIEmEv196yNrmqPIpm7vHJe17rwq8e+zj5TwQUIP0s7Tae0EUdUeXpMTfcvMd0cvpnbLZmsgOdGt+hvWdYAaszBV97FzxNzjluYt+fskVMwvwTMe0vUhGKXc2eWorKarwliZW6JbBqLF6UMfIKVtrvxNgWZg8LnMiTYexZijBosCsFsAAPXP9tBlQFLQQBzZAgr8FQq8ijR7wWCH7G2iil8AGxEVqWG77l7e/6cTBskyasudtfe2kvlmzSYPG3ID2TsKCAxt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "j2sG8PvDQ5DbkTNR7/BRf0hWGFoOB8wvMJFn+stXET0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Dz+RHeITtqTSo6rG2yk8gbqkIrwfFXYMUGsfuzVyS1f4AtC7noG0ks1JYT5z4Lpj3didXeqaLj4aeslij6GOpQrf/WeE/q7d54gcQv5HTtYogGdwBpM6tqKWTab1dQP1KRo0g9Z7asvLWgAeKqRRDuDlFW4OYXXriERMJWMN2yvqD9vhxYsyiEScLwQ0dYmy5OyW/B/0UMiMTi0XQKPraQL9kd6mPpbCP9TT70EEQ3f2HPU0VJSLxktYLmjCOBsDXLA1YrochSuirU44cQKzRF5L28G7IN0iN6NnVZiyvK5UMBqOhZglGz63vXqJnVr94kKGloUhrD47Su+FOIMHZjspX+BvU+EE8GHaNRLJl+352ItRkVy8p7t99HJriPcVgmLy3An3RY3zT9Lt7J5qP7TjZ4pxMWE9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "j3tOnUM49bm0hpFA/QP4qq9sYIto3PbGFX5kE+KnuJw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3d0UQIG5V1FPOwSgW72gDaQOcSnzMugiJLFhASty72iINyMjCCu7wy78853AjVE4lncXuWQbH57is387XxoqpbFl5X3yNzSv10f9yT967wbBFV+27GnUEuXN3RiSvX3KeXEUgX6LtuJdDY55Fl2q/rIbMZdrLvdAWS3j4/a50ppQjakFWrSSXHBRKYmiq1ZTzeH76tOe5gFmCrFFZybabE3NlTnvbmhk80wDpfaE+Hx+nsC+T+IsrPQeh7ZXnJdfuObYbzk3WeWHT3ajQ2D2p8bKO56mgrJjrFtT6fynr7ZtXr4RtGpFwKULo5U5tabT6ngxe2JrCsNIMuUd2bRmu8hlUfp3Rky2yh8qbHZngV+6ndOvdpM8IrI5Uqa3uxs8+SmVCeqxy2Bf9veRbMo5J6FKcKmUzviO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "j5C24os4wmfmvo5+c3DHZqyicmX1ktBvop1kWjJU98Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yDi+/XSXrpY2lUdEO1mKf65f36Ixcyi6UOSdfMtaPAHTXufb6hrZiVuLpZXnnGfai6VHASLHwhABnZPH4nouGlfh8DpXE5i9lWpai2fZIz5RyJb4wqWrVwKTPB7kcPWOh+Q7tjknkAMbJbba3BI7tVG04Bi00aDed9nJwyL9KA2Xvvj62QwYDmzFFcxjgjMDEjA7y7RrvTCTi66Xdg8PK1O5v7jOWBRXO3JupC0HrDmw0yFaPOOrawSooVS6Af3aN6eMzjhEhV4vT3204JgOFiabwSvHxzbIsCFemYjGOR8V7jsFtJnQ7uFSJAsXfny8tUIuBpl6T3uQqF+JmnFfcCCY4/K1gQYXRdhaCI+7mq4Sh6l1liwuUn1W4QUGdFJA+DwR5Kt8OONS7ZNtKZUo5jZPzot20SwX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "j5lWE8fT/zoExxa6vejPMJPTGf+HC7714oUmLBRAErc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hGWaxGlQh6+iQCdn3kHo2daEWwcHY0HCUZPPhuQROqPK//38nCICNLxoV0tz9OXs6Ru1Dd6irpeXWfjhPmSiaTrDOO0iPEaC2cZmxvsBHhznpeJ4BR7OCnMeedhDp0j3XEFqXAbH1frmaoqzMCFNeIPb9mOs+UhCEXhzgaxtiwIPpFKPyEk0nTa6lp9pFw9nN0s5LtH57xfiO5F9KoQnbj0yr49sQx1rGKD7FCV5ffPTUCouJVrlnAXTnK0Ie6BMEufPFqYFumuvQ22xJXMKepWSQQnIFRy0J9tzGaWhfn3mOcR9g2DkFtBFxV+WoEostGqX+kJeALliZYw5GmmC93dKg9l9AQoyk0FpmFEzev8uFSTdqx39VtumPjF171atjLx9Fl3rdy7s/ZUV6vKLd64OnLURo1IL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "j69NJtm+4JD78a2SAvjqebC/Aw2bk8WJNYOzO//wjnk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XD6igprJbuKsrTPALbTHLIpJeqjtvKRl5GXhHWE5Xmz4eb8ajBQu1ZSBnjlRuowghNEt1wUQdhAHRMY/gp4V8kSsQNV5TyHZioZ0qQ6x8OZGIUGvQUVsL3iwRxATHrME7QReGJ2v0XbGkDaey+2bFstSH3ZKKvZmmIcJHotQ69zT22/YBskjfH1LjmuLXgOMK8NXf54IQjZVEgzfTIA6kZEr6K/BBpwuGYqDLg+vWl7a6HoWmWZJC5RQTXx7MJQcultPcgUj8FRDGR8vZLRSiF9axD4a6BLjhz2unOkaist9OzrUAoX8eUwAPJ5GW/5NN78SteB46nDlz2K/e2+/SSfr3B5DobkW0sFbN9kS1Et6i4bGf1UvCZc1/MUkYXM7N0UXhznv9HrrvUDzB9HqPkdeAZecPly1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "j9QMZdaqT6h3YkktsVpWwd0h6e7ztM3nX41wVqLyYsI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2GLGd7GI1dys1U7ClByFqqHLD+bQ1IH461uKrtgocRTx7qPQ83rjVN2dsHxSuo0HgHlKCPAnmZIagXhxE2ALY4aTulI942phs/l8CeQEMCbnzil9Wc4vdKHsVTVhjW0N41KP1Btc9KvbJhPAmp1iDMhJwyayTK/fkxoN/Xzslb/yAXsxuB1fuRDSgTgEEFevvs9FkbkfvNs51hCRKrpWrfA6A2ojoWI2kmAmDKToxr76XJmY65zNWzQKNO8V3e3jnZOABybxOz2Hg7B9NeASdmX79bK1vGtyBk94p6shqTuDLUjhbdxmkfDqFKyvh+HaTW6+z2ODcG1RPKhy/P0F05SLhX2dtGLfWEPCMI/IMmmsaigdo2JlsuEOXh3FCMOK7QBLk9QHES0ONTbKt7HTU32Dpth9lXfE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jAELEr+8edGimkutxObne6COEUF6GpYhdCNvYWu3J+o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1XWgRcr2eJaF5FLJoh2fxe0uhsl1Wsv9+jJRAMuVNdfV92yDrjecPY4Yf+zZi34opJxWGTbGVrB8dHrmdOuYg7bravDfYk+d1AmVBHIKpbKJPjbzm6KtNhayKjS1eKIQnai1U4/6fBYGUtmAmOEk3kULNJ2Kgad5/7vfFxxwgsmr6bTqlSZKaGv4NRLCusmntkCAUr20QuP2sqw0VUoZPMTz3kEosWoUZ5i1p8noR2xDt6KRo9UkkrU2xiClV/yXy0jg5d7pquZOKySNEKFFLoXRHSOCGwBlWqjz2V8kzXcxU/EIaaxE+IEnOFOsO5MK2cqEb1i94qBXM8zP0OT+2cm/lo6B6tfMks6mcbc1bKbVnHO17lTFtd5cFI7hWTEKask3KvGI+EoN9JrhAaFKxSFyo6F7uQJg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jAGNJ+YRdZAuuJQF/KWVXJg4xUf3FPk/gXzey0jfiu8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1MJuhOzwkpWUN6zpFaek9XrEurFJ3N4eNatUducJoGdBIRK0dmzrfipwavNN8+7BFPscc7epd08YwuFP/TwwzHAM4iXKmwYTBD30wUcsOBXzl9a9YPxC0MSBjcWZxAvcRrLLqCdVMBn9Q/W5dAoMRCZRG01CAmGHz8jRCeVCcs/UKjPaK7Fce2p8sKLxA9NREeVHZ7AX29OIaqrz/6uUW4chMDUSh5x00OdJLTTADDhDxQsg/yYvm5+afbZbxe84V7C5Hx5gLxUBXuiFNj3c/D86SDHRRoc2EOBb0iLI8u32p48nhFCVqKioKCpAvCKyfXKkaJn4oSfeG2y+V2TyExl0pBs0+alvSj06WiXwNlRsjoq/Y+XJk4LlfpZXV5uWhLBU3amisB0niLXGcFgi58mGfBjSRKLf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jAXNOv5MYvddVMa5r0K2zV7xZi+2iVDB9HYt+lli28Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4ylcVvfoQb+4KkEYn6bM19Kgu90+Exx1Br1sqcmdtbaYE7xygcw66TZEEEkxEfYG3yDjCnRDyPrZcAisDEub6DXn780ntzxM5R2BCqkpVV4EPtjSkIxKkNxm15yRbvFOJD3y+/OmPbTvyeWTqoYU12uJyB/AkYJ5CPU5q26SqTs7TTGEXbfUj8CwFw4q7Hbwebp9oNKyYWH1j/qOZ0iKWvli99tq1hA7esYACceckNwHGN29O/Vb7WttQw6l9fri7pYyGu4eTFRkN9QNPnxBD339LjSla1fLFemuYbBieGxfrU0Fdy8RD7DyNQayDYunuhEkHnQpB3UVqksp1oDOWkorpA85aOwdICIEvV2gk3B2NjBxZbtKRQugRqM+yv5MYT8xxQ+HhdqNO65pXhecpNSDiMnBmR9t", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jBiIpzzfZOO6KnIu+4KdDKAH8JnEHwfGEsr611nYFvk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vG4LVWza/4k2fPwsa4mh/c9oT+MppQYFNJoxzZ4a0TMJWNJjaA7u+vLtsaOwKJzH4kzTo2OK298ef1kw9nc2GrVmXfKQEiW9iSP31lgw2EL2ZtiOXeXtqiyQL1BNeP71VT9fo/eSgdJl9LXx1mQqAvLJzoUGXEb7uUnwmdJF7r3wkJhBMLeZR43GOfR9f9LsaenSQ1cfRQBnyiyukdS5aX5GecVDuvqQsq+QqoRkqsqXxO7mpmY2gknEbPM+bhHMA/7DB7SCXi6wWf2aJTMfNHxhwnfb6gRsNdbnxhQbOUHDJpaWQDzbSc6KTMQD5S9h3+3cv4rl4jKHPcvYyuSjiesOEP2XvwLWdhK3jMI99+jS2IzI6pEa4vqLFXw1vY48YUgy1pBzJ5/AN91EDauucb2/yghOR5Hn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jCbS6fqM/5MpkPXmubA6TI/isq9sIqSWnn2+14Vbu74", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JzY/+nXIG5zrTmUZOejxHtZkboMJEIDCmYIAiDSJsLk+UlD1bZiYf8NreKRRYN6xfTixJsKoTHx+CfE8HO61wXATojdRBu1pntOO8XyuxspJxe2qXZ5nJrMTbmd9jv3mSLS+w46UdHHP/5iTK3q/Er+w9+T3J7q4JKMH4GVTsb0DArcXo5IE9D/R6FDEnvYzuCjkj/v1IdXmQlVzkbB6UuQujM/hYxGsvkaHyxuFz45sNQ2PL4MAWFqkL1IVFpeA/BJBWvW0Erx4NDbHA09MWSOsiRpTR5kJ/Id2T7z1pj/eCFONRQprXYvKoOt72T+g2WQ2WufPEWjonYtV2tCu0Z4t6uiiaixOptImSoEKdpL/gO87sox+U1c6P0yyMyi8gzG9FCkExpSj9dpqZBELVT0xYPjFP/So", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jDXt0R/6X0J2R02tG8ZWcKDrEvzVcoGuPITBjUucafQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VRViqCwt8sarv8xFFUEBBK9OKOY99li6l8JLeytvrXdX+L6E+ZrMzWSaeb8y/PIqYME1ut53YpvWOGXanB2ghpeGs4B9WcshrjglIHFoOrYxcAYmOlIgPgv4eJc9F0ekiab2mkiCX65eZ97nHzYoCKOA0T+6Qyc83J7fZPg2GJvYxG/CkgJ0KUn+OnlAScvkSwXUy6gccg+/O+QU0M1kZOSpFwl/af7aP0x1SshAZgplYfNYXdFHFw2dDJGLT7RdigTLMo3k3GxakkBPI2IGu179rjfogX2UmIhX90jhqtzLoyZ4AO611SSJUmZFJvtoVyq3FNPU3O4MciUpbJHslbHJFyY1inq946hhGLfOfQyAC8baEJXhOMvNCyzdO44kLPm5pT653qvzyJqFDoVn/DBK52EZlT4C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jDgl5YlfRXMsIMBJ3ek2tQVpYcJnYunLs/SRwV/mfxg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LBTiQTAnWoYXZIAP5yyMOQwZKxiJvXM6gxWoku0eyCwjOVCfFR2Bc5SMJ7FXD5t6mXtMnCjcVKa4DV/qP7B+jsxkaZanHue7ffUqDAu2/g8C3Jc18+oemarlXLDElz1FiKGfTX7K8ntAzbCoQZ4Cy86EuSGADp5D7qzJloi0/z/2QIjxK9WmmW4z+MNeu5KdzHZo/JVKXiAlYB0cvfaQ+pV3ceXY1NPZEDPfctXvi6Puh6VUY7TA/AMdvq93y1E4uir4H8dC24m0TqTgOdN3o2tg3twA4dep8cLfiU1ZzRZLmi9eHLinWfOtMjWcMIXomE6ZwbPgBwNpwvgbgweFbcllEYmoJVxqIWOfVHanBPmG2w2HsqL0Wb8WA5x/Wzen7gog/AwRj9eRpScLum2/eb2DkmxMcouv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jEvwATwentHQHGuLR0BCh56rXZW9LWuXRYL5QVxvcVs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/Jo/e6jGChgOdWrRZetwKQEIbTOlRCiBFkJnycSXsRVPhiG8Ob08B9+VLHBc6axaUsOh4cOM86qjEXRwLuNeXDEbUMgBCOEwpZLMhOJ+yQ9hw4uZWnxliGFp6KgUiqvsegC+vBBd/yq+RPHk6D0oKAwqrp4c/yw6Z05ogV4yOjKUxuTj2kjuth+qlb7zGZkqSaqvrZuiOEHb8yxGn2nTyOxQHteVPKpQfcCkd2HC72kPV7/j/x6Gkzq2lAc7MgfrsC7MA+WXJV70s6Q66N6eRN0Vx7WDFsH02mBF/but5nXeAWtzOI9VeK0qXKNGlkdX549OdP6owFzJec/vECLH9x/UaT+PrzefqN+BWMRky8vQ2EpL/KXTty5sDK7i1tfABnYpo869Jx8F1LmHK5ArUivYsHiO9Rj+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jGAhIKE5LKpxhc35qQ8lf3BXP6R5Hbn9E9KsoMnHnYs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "U0kiVqqxdkuBzIYzMC6ElGGDEr3OHOj7iJkxuM1+YSaCectzXhT3fUubHQ+KH9RhTjICqnqCp3Arz7OsKSXxU1aPn+zDIW3OzVeEDoYGZv4fWK9old5GCyUkQRXqbXMaNncNJvQ72onmek30BJlSlY8Ozs9XFcpmJPuzUO2JbKYD3Nz59KKhwd8pNuwfiiL64bEpF96xUMdk+5zF1wo7x/5QxFyldMsqVEIl/6SC4Lt1ZoZGE6Cjk+VnwScOe+R6YP60ADhXQhOpFQDS3o/Bigr5Ljc1d4WzlhzYlZEZybR5pIGkEn6833u6a4UgFiO0TkT43ccVFzaE14bMNwuck/IxiQszr6QjW8ix8T20PQVvPN7s6g0j0IgIsGz+bLjQ89BoOwgxq6R5O1qH+sPpqLCAsTGXMSGi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jGSlkRqnXWRT4SgOIigmCt1rdlHKz80aH4dIo+AYFDw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FL2xnoWEnccHbWkJfD58cZiLCm8kbgqDex0o8RboFSkaZV6vhqIi6tW0w27KczQ/vV+l4/PEOXZc4KdwVvUoLryPdQZmK+2GZezlIU2h2DirkkuC21wWVQQgumJhzopicul0cWNmj1hqabwgmTzaXlSOOuf2XyiDK++8of/CsFCveI27odh2q/Eexvtiyamx0v60COp8wJ6F9c2BCAphoYCG3z0bbhg61bzsGVWCze/7SSeGl6uM0s3hLqAVJuxeSQAJStV+b1LEYJc7fx7A2A4fEwEoIdBU0IlZjZ0UNTeso3Gsf1SCVLmtCpXEYIaPcp1Qa5iZEN9EH2sJ2lP/lSaiB+XRuBh5JtNgZNsnEEC6Cma29efMQUSXKyvoRQGCk+x4oS7PHR52mf56u7nk48pXoBP1F9qL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jH8xW8hiK40i7aFzhQMSA5fWkcq9uIfDGOKyQIFy74A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W83018E8rbrvqaeGaqKEqtd41F9SCfbBDrWI73KdchUCg2PRpf62tf0LUm5oYhQZZuYlWZ6n8hbgjgEq+qoWzoG7M5XIygYUBRfTL4cmAt10hz0ja3lL+fEYLoez+bUTpBiEzK/0UjEgp41yvlUqQjVhfhGZsRPxO5mLetH9c4lNU8QQc7AuX53Uu/7cqXAJlrsgZdbVYRfIMPZ/ZKasozptQat3zRdprKhAp8x363c1TnZ/eQ4FrkTufUi/YO4DKmuRxqLX2CWRJvawlgTSFn4okOWmVGL0/xkJK1amfttxwF1nRbGwqo+c1x2SbsvLlbI1aozkFf0FL3EUo0SWEE35hskjOfo4a536hDt4kucKNYRbnbzq14LrOUMUPhIQ5/f6PxXcfTN5tM6N3BpKn+fe+rdgsTIf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jI4qMzKKmZUw5pESYCMiWBnogOwBLUonmF4yFog7ajo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "akQJsCa5beVCRI5EMDGdR8CVkqh0RQkuAbbCA1JL/QZV1gxm5FLMA7otmrnRGNJsgKX4YxaeTPtJyylS/TYeL2ieuaPnWcC51tN0Z8bsYXxyOyDfvfeQvvhU+iE2Z5CCivSW9WActZ76jyLzxYQSAtC3/lEWjZIDnnkLHi7xzlYcdkk7ZxGZAiSLPXuT5G7Ajahljt/QLOR3ZWM8iyisAaBTiHhXMRc3j1GwLmEYKyM/ob4crZqojvQSo9QUHGw4yYNnPoqJxxE+oLj31qQRd2MppL4UPWgvY+x5FJojmzB06eMxotkNYBURF30kJ7xdYvuGAlIFW47H1t6s+rZ8dFiGckV7MppsM7wH3zDLy5PtHMWgDti/uc+n5GW7GKubPQG3hy64Yxf9E3MH7ST9NBMqT691gtd5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jJI+/FbXq6G/rhC1OfmQzHPCiovEg6XzNr4L39PKcn8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t+xLGnIns9UsCkNjmOQYjAdfs2fBT+RoIzYOCRa2HrIZlIV3SFha+Jm5NXeBCoNGRJ2dWZVSQaYsGvJfZ1ZjM4FAF9jyXAysCH69JVTMy1POKPMQPxlyXIJIuKntLxsXUGSg1BfNq2L8WxgBRfYqbDIcSafxyFE1/N2JVpaignGMM4lc7MKUnzrsyLwXKi3OJOZ4h3pUR2M4cqS10b971u9Cs4qy5qT9xlx0xYHlK/lJB6glcj35XmjszdcVBGpnAZUAObn8rYEIm4TZPTdOASvDcWGvhE9mLttv2FKKSHXMY+OrRwZLfXX8PqBEl8+guPzc/5IGf28SToIygy8LuzCw4P6NPN9TENo/yHdvawBezVx+hprO9pDgIiMuQmB3wJARDFmowKKIEDESVEcFa30gxM5KYewj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jKJN7gBDMZsYKcy2gH9DGXqm/vksQvrhfearUYJ2nk4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ws5WFpw0Ep5O/6b70ppw6cLUy2OQKZ/uKDRaoC4K5gu2q9QexERjVg4pOSdS2LkZFnEjUtflcfD+2s6NmgRne+pKHJvyNZomK2LYlPM8HnJAMgusCvJZsGFRjH/aZ3ZOY2wNxy2H8al2L0pPF8dLFvyDVXuny0TPWYstYGl4ucaVzFVBOdzrUhdwFIg+p8Qwgo/zmCtZfjpu3oKNJ8kO/t1e7s70hdUIjyH9IrMgRIEZh1RkTGkzFLL9zFOQdOjoDjkzUlY56YFZiWE8oPN1s1B3Cb9y0XJdt7IgNM4xTjiGnM7ppydVbKAAj9GWEEjf7IIjo8WLFN3k4hMNsbOhqPC9Lxg1dIhEwWFk3oJMEzMpIxaI6UA3gBQhE6v75x4Cmc5qhD+6yk47/i4QpbHkzrz/3xhWb6HC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jLLJzhZI1EZJtrXFfl2VcHZ70XY1jSB9R8S1rcSqrXM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YfAVRVkDQFovA10zim/K65nhh8pbkBcfneqvt1bT67x1RXBMYEHnQ+ojOZ+B7x014Y7mLivYn9/RzI1jvzoSaZoWA9UvzZ90DdccVDmaJ7uBkz0MpOvakG6ojjbtUC7Ppf9K8rAWyxdh4LOn+pWYF3lhyEcQMTahMqRJu6VlH59NVTkD+OZ9e85QktZLggfvKSbLqGEirEZk3Bc2/3II3NlbGTx8tKGl0PZB7dpLBvlmUcbZrDCpo9PUjAWA0BRXWMYKgZ0udsKL9BkqXxepslsq31c0p9gr/h8oFPhEo7gw4NoXEHpjCyF0n5RlhdLkQdPU68cRIt+cguUzvZdQdJ+pcB/PliSJOjagPQGDSOjjQ9W0V9y6T0ROdsj1He00HRZhdLa6KJEjAFke09rDz/Nl5CleyAbP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jN/Ky5UlgVR/8XuuChF2UHZf6c1q7ywhF9G8qrSqVpI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2ZYW1DT7HA0fJbQu8feshDRYz0I3qD14Yee7en+RvTRogjcdWPgH+hnVsOH1kXoDhqqofBMTx62lSwGD/r7IHkOVTdyDsrZVba66w3Yfk+LjWxOCC95xOMgseb8dMPg4NlXZlYwEKLVxg5HP4NA5qzZcliEBartWYuTv90fzwuhF1YlftyxN7iSoNEnPHrVB3B+aVWHjWkQEHOC4i9UyjxYNN0jCNvVqA+jN1A273GS/YYQYtlRaCMOYMegtkHwxs/6QOO2R41W9MKFJacj3Lw8QAqS3UFU7tQ1u1+vZ2RAN7cfOugTY6e5UdOeMzAUQ4kxf3Ow7ZqzJWnt/LO+ShEhG52ZQUPhVY6pGNLF2mrIgz3datLHyOl+bGPZkQamNBr2S3pDuJSJZ9jFJ/aUJrvV2BZSql1Zn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jNS8sNPmZiNWYO2nYtegT6THz2r1d1fKDVPF5+ajPeI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "grW4NXHWHUzzCCZ9ps6oCZS+mHhCw5t+JjKK70n7K0Eo92C54vZgzx9110GqYOj79iulNXoXDLN0aQrr2Goc++lTf7fbs4r7YE8Qb/9c9N57M0EkWHIWyf802YP98iI1JVzXDFn8ynh5gZhgTKpZ06XYZVaqLVt9DVoDrWiF7Ryo/G9QAxIUDStGRoBt4TvMWEyCy5Mq4HD3aGZlt8uwQhs5PRkYrZp4PxBThIvZ/u4jqdAuTBA1WORqpgaJeUVQzA1pXL8whPhxwI5wUAAdMB5uvp4OJrf3VsQb3/6TrVviX2thGxdQ74/NzjePgJndApg3nYCBqvFIlW6/FlUR1lohLCSpS+8v4JV/11OjHACez8QAMMLRLcT/XHo37kWuSmrAY2h5FnwS4T8z05+RRvztU0iBt4ik", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jNsbI1A4LLloufjNqjaJBEVwxV0hIMq8NL9lqDKPcUo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "71sTgAgLDV/H+k5d4EgZZIvh1+lQ/z8kdoOV5BRmFzzmouf9N6gXqt0aoB0fnGMRR2sEGMiBfhYX1NZ5VmQc/QVuVMyD9QIMaX0FgELND94lAuVp8h/x4tSujPA34eKjlv0ucLBu7gMb/lVEpv/cxWD7J2dxv2FUReRdRXXVbJzQO+qeWIEL1MFsgBsR1rkCepPs1CoosiluYW77ocQ4aF4LwG7h7EdEgAU7wPkk1c3JJhrxyfVA2cbSp5Em3qN51xVGpAV2bZU7T0rsqrQR6/9dn5QWn1lx4pPon0mveUTeAKfKz3fXR8nYxfle1VnGk7+cWgdoVwrGCLea0OEZ11+WoL//BYEUgJEYBUboob14nQakNyo+qcbXZ1sKbU2bjTlCD/yF/mfSlUecUSLVqQ9c6HHEoHSI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jOadH1umzWeA8FHxcUNdmze8TIqRe+z4M/iuCoJm2+c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o0OiykXFSkqRoVg0hmaITjUH4ECIrR9yyOX1iFV7jQd1IzFe822ifhN6NJlsAhXQbl8g82419yLy4Nn3/jbPREDvtmHs1hi1QpAZ6J+8CBkFEBF6ojR8lKGEM1wRGam4HgqqOsmDeN8GDGJG/bXK0I2v5aP+I96kukUeoMQjht4CtPnl41S1U1WUOTDa3lnZO+KvpZ81wbKwPXJLDLM7iznHIubR0mrZegMljIbkk4y3urE6WI2I3OsgxDznootnBC6jmTJKn5omU7jWRL9SWjMhu5dZw0RLPQ02pKy17iQ0QPrNaLPFOY5xhRZXsqCA+gW8oFo1q4GbIu8P7FVsw142pwUnoDqyNSjP8N9wKkHqSJv/WPPr88g0ovvz9cEc0eZvUM87e61W8IseZxoM85A2O8UH+fq8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jQ7mwnF8XE9BwExy9hs2CuYXQ0KNaif187cZdJpypTQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W6k3KhtfmJ4Yd0bcZ+1aN/0zKRss0sXIVQ7paPoxOoB9qHpTu84Rg4Z/BfOz9zxXWJ9Gss+H+YHR4UnDafds7OlPI31HnHcImP7hKTloIwRYSfpbYSf4O6iXujapprdPbnknxUBu6MYwk1C/Kev+583iSIKRkONK4aED0MqtmRfmPaAvrV7OIZuh9ahBFsvTroiBjCPbppEu91SwLhYwmPyixvbvEd0AfnryrTGbt9GL3Zqoo3cJdiB7W2EEVEW+8bi0US/W14r8nz0HZ83UlmrXqGaFgMh6G5h1Pa0lUgeRux55QsdacSsJ8btjnYl4T708bNjfAdKeui93ZakgigYBtququatcH9AhU/ToKFkuuA3FvvwE9H017kJip4hadWLw20Y5hyUZsPLokrU5z67mEBh8Re2w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jQ9ofofedHCR11wh+ZcXumo1onWKU2Rolc5qmtbZivA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XZ3I+KBHRHu7WclpPQUfQqwq04jMFL3pStDr1o60jKBggokPvv2mcmbY+DtdCJV+yrQqyIoKbG2mb5QRfqfN02zbbD1avS+upiMNWLVIWXqIj4+rU9bGO0ABxoG97sDY2Xm0H2QZ3pEuNM4h2QQ+P6HlpG1fZa0Kk1ehmOxQw/Bxf2CTxt8Ka+JzdT0GWTE1wB3OoVBdaPx8yhypRXVLOVTULTdcFToPx5hlHdqDMbKyv6n8nIWpfpcBfIZJRwGqCIlVDrzispxfklWBtwDGC3CyWJ20GX0iuKs3R8aBKqcd2GpP3ptxjXXye1uRgrP841MkmdqhIrNhrdyFoyxrnHMsK94S5lUT3cF4/f/vxxhZfDX9dGamaM2dwSwUk4uzaDlZ2JwgkHhXt0KQIvM+FN5aQfa1tdFD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jR1KVl8OhfpZBZKg6v7K/ZBfkRowr9jQywy4ZvIoFRk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "geGCTvufJmQkq2q+JSVRF6zmjTT2biB1GThro0yZ+oMvL5efB3sT3Kl/EAt2QdFlQOE6hh8jDdfFg15fwKDdk1YGpU1RVuvfG/qGd9El/6lZKCCOee1WV2dQGPWjh//Zgs1BB7e6LUt6RbDwR0AqVxQ7tdaOktHDFGJtxLnzKShOair76zKFehmI79lkFHEHPiHuftGVfJIpfeCEpBs89yPgOnErkNr9uDBT9xkS6pkwBMSrR6jzsHFK+rl0HvEt3V9f1fDu4bL4SFh7joC5KTkkMIoYfvRa4Q1uk3gCDJxigi3en+OQkpNFg8Mus0qnqjhzbBJxn+Q7vJtH0arpvva+c3/vTSnMQ2OPH7t84kvx34ndn10b3UXP8dXoONE9kWWps3zCcclpTrxUQB1uY5Yl3KdPYFBr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jT2CmuSaxAeqcHdnTs/wGH5rIp391/GKGaM4LTPQeaw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/nxXOGXFfRJG6xaZ3Oeuc6KFNPOy2LiwdGE243DT2FwHkbfTl/gvrXrSyudM9ft/y/ZYPNPrCjDjpP7ZVbX3lyIpNikjNyGX2bEKSD6Q4XNpVlq+T5gSalG2CDJrtGBVC0OEVIfEn66i2s5BD8hENAHkJyryhY3kTHGcZOlJPy+pw/oEbbIuMoVv+cGHNvCcPJqf6bSANiAYCN8qUKWBXigBUBs+ox50vw4iJZzm3URclmg4M1osWinEg8QM0qbizeYDzUK+YSau01Z0YukzCc+Q3X/3P2YwqUhGVJYypMtZtXtIFd+heuIuc5575pY2PcduF9srsLZeINP8dByRUDMlJw1Zz463lIDmPxnfMqM1avqlMNzwGdrrtV5RSf3yJH9gpdpKSEPyRH/sWvXM8F7juKPOw04q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jTCoGXa/2DxRGh/xltI6G1c/VvJWCtiQyj5Ar4q3maA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MP2geFo2HhrOV4PlbL+SRJWMekl09+mSHkfLBD871O8FU/bKERqcfA7SBmOIpPmrsVyeDTeAoYo+pxhb8eU0gifAViFkEHvHYbJXuNFMzPpxcSJ5faI0wgDB+G4VxytV9raToolLuXcBymWJHeG5Nl3rBNDezF+sjJpjvjVW8eQ/m6DMT4tkhrng3ZhbwBMSkjSZWwm2xs6/P1Vb/lqfcpMq+lhRgWaXpYMlsiskQKS0PmxmoWh67P4XUKUxcOc3Nj1CY/v9XF2BzqYObDX4BeUpBSHYFeWurUQmByIkqDRqtKnfKUd3HCgoMB1YrRxHkAH8tddQvkU/e3otIYswmbzMcDN8qXYyW3aheTPXwjHmbMWfAURmONnJJszdbjZc+Bkynat5x6lqNxbZyvkRARlrsEzQnlOW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jTicPsJVr/tPeEkpyYyU+HUmtq4b2athxNtRpC0eQh4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5KF6IccjaYEIDw/I0JbGaMTz8fLX6Wwz9Bq5zI3sY8N7IxuKWGqguarOOYFlFzcOTJytNetR75eUGD+35SHUpH5ycut4clZFlsYh1DEq1vQJEhVE695/C2MtivLcJwfKQg48ogkhWiqtYab7aVBEuMAZVRuO48ZBThIP+Q1IejEi5rL90tEphzfeCWxpGxstzkbPY5whdA1m6ow77ELjavBV9yiYFYs6JTcM2RU9mGRhTDDeuvmrcDaiKzhh2/uhvUA83wfwWJ4LvDse6qOjhxWSbBId7m/G4+GPDJORlZzYtgj04YuWToX+IvXnZgHcUn9xGDioJRdThy3rzhsBo7T7wffQWnEqNu8v1FJ22M+722O7BZ4rNj67J6Bj993VXDUu0sDQEe4X8Tir8N4boJuRzotGvN92", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jU8YXJVCSx1sWNcNr914U+9xufnN5E8E2hGmO2Rhv74", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mrV5TGbecSfLYtNOup93dItuNJFSgpAMcHI+DpDolotrnQAewtJZiEmTClBw12wiESAHx0gzOEiZT8dIzZ8MQ+w5pvuE2h67VotzeakqAjjVl8MmQ4Ucm+oJEm7hUWZ0PAj7517FAkjTyzqbksz+16wN7pKQF8fQWpt0qUPVwTqwD1X/7evnpHX3K+7NpYo/+IJEDFpJIEjr1NOqSRcHjMx1nvMGggP/y2TEosLJbRTJJvSSxPtCJuZ3b5aMSzI0RFkrXdCGgC/Pe8vFEnFu/n/geuB2G5ixoBwVPm31cZwRsCp9RdlPK3XLqmFO7tFsa/ypJufvSVdoGa+raxnknHhpMDo7/56NL1waOJpls3XxWDmyvW8IdKeW2uRb1+NBe8XtdJmcfJZvPy0UNE8Eaf+OnpGsOedg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jUFGA9FrYUyU35D4vhr3j/7UM1RKmsuXvFizaZA3o7E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "663TeL6bWNLYZK0RbmQaJq83ZnCQGyuMPHsq716Vv4i/ZSKGXbpy853qS7t34seEkn2ofODCiHisdBZUyKw5+vy/JBR5bcqJZdkOra8z0jtsdRlvk7NBswXKhO+Sn2/k0SDog2u4lYegBQIap03Ergna7F50u0A/eACobYKE+Qknd4g8teBogbUdxOx1nvN4zwfyxTkueZ29lLqt8hwBGJAjZklHhexWh+VwDseJGTtXTrveO1acux0L9cYYTTpeFZIW7rOw03etYhC6/EV9YDmR8ce+gb0kho/+DX30ORumZALP2mI1bSwwhH9mo9LQlfD5VpGBscjuferzx1JG1jMve/9aRDbHeb2doi+LrT/OkAZV8/J85Y8DBsqi4UcgZx81iI9qNS2zTG47Qp105rblkKMIi+ri", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jVOACYc1vnW5+lv+8dGdDQTXpIF7kEO+xZ8mZimRz34", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+DOQRS7JgPlRBFJq4NFIrsvZ8wP7lY6ynuotzLzS7lnW9Hc5tMAvRvAZ2tdbNatyTp32iN61Xt9H4Wv2d0xR3+bpS2P5B2sUq1ktK7sBrmfimX9wC5cyVrO5IBqIwnCsu+nLiuy/wrivxw0ueKGVbmKNyDagWjmLdeG4EGiWnBBxb4Utj9mBOCiwVj3WFrehPRMVPY/muqST8RvsaUAg5uuXh37vUr8RSA2BkXqOIz1y9So3XRt3ptiygP1f4iMuUQcfg1+AAuqBlbtmDWGu5644rDMzrsNYdK0QqjRw6BEcsUt7+RYZSic/tPbkl3JV+CfMXHO7tOsHVQM6S/YY2sjKzR5bfvwyDHU5UV250nQBS0nc9OIDOuDkOKH+Oc/HdmukZNfClXdwubRkAQBdxJBEjfMwuP8N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jWmVFY0o8pi4nA8OWZUPaJewjfJql9yYYyv4CLw7d1E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d5HBAPNjMkMP1z3UHqXbpCT+gh2oUzmdrNZ3O75Vzhq8g5GFL2UvIpsXKpt+Y+Hy+ovdh4pOIRwbUs3TOirJAMRwMmfDLjqUlm2xcejBOmis1nxxaOY/v5vOqCcr2K/eB3dScie2kgSguPXp/0fgHaVazPBk/LZp7msrSH/Zcx2Uw1XzrMgBdzgDboJi2k/mkc4tRwtJ3hIRKaPjYNLdx+p4FXUF1ccWNCsnOp0fL2LF0Lg4DJDDIUv8vOUf/77y8RfMLcPlzYuYRaCrnVVLQA7am7CTGgwC+s4jw2GGJAKEDixwrNWjSaWvxWxhWu9q/arm7CFhtcMZUU20QgvgZjW3w1wVuyuCcdlidS87sBkiV3dkgk/+Ddr4+j6yUNllzq5vjBb2+l4a5jvhEzjg7fvdKU6OpE77", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jX5iZsHX7Um57LwU2mB/jBEZeC9gvofpF+tmcstK0FU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tTzqvUh110yiC3vh12UpAP0YARZf/KZ8PtxjZWJOTDnfqe0zpwlcblhxJwLalss/mE+Xaf0ZHZ+hgm41N3ICsjaFzl7lREsxowFTCqrdFi97En8EqfgrsvP/Pjo1Dz1x7pmwUIBNXB7UOka50mMJCXdUXlTA9VlE6jSWLEIOzCOhhpJpeMkfH2Q/M6vUChAM4aqIwFphWi3lI/4im/tJSdTKUgu6ObvUOJpfQpczhRGI1Wp67FUVw5GndpLSmHGQNylI/hAmHVBjj4mSYwLeaIeFysCjzqnNAsmHyEdUKoRCysVwuaLnopC7yLugB3SZ7hIpA7cgcLvNJXHvLbQEsaXurHhEbFQCcH1gIjlVyiWUFfdDZ+M0svj28Q4AbENezBDJoIX93bb/pFB0B72Rr70UWI7d0zBw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jXWvqa/XJbbFYWKIwjx1yesEENMq1kMP5Nut08Rv8XA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j+AOla7HdBHcj4Lzv/7dOmiMZdGwE9dkgfOMaMut5GSZDMLIwcaeVuuQz0DIMlDh3yLENqof4LThpt8V5IxUN+IC78bL4eYQAoyieaw+N9FLQ62llb8LvkzqL9z8TxLxlNkY7MNMT/83LMrzgStUlYKxMP4LmjMP6GNARZIybaVK8McSbdyQheJeQ6VcnTWg4YdROc/OcAEXof943lY+Fx0UrnHIjOr0FlukZ4DRhyOG6wCPUEInB+z8dXv1g7z7ddNxd7EBG2rvsvVKg7hg53SwKmbTANHTr/c8mTXbWIaV4JtNJCtvNFZOLU+sdpovX5kG766oIzbmbtmwhHWgJZZfPKdiMEs3HPAjG6xoGWferNCcZ3l2vO5glmRuZA95W/6YeyeELDYXzGtxLXe07GhoxWO3g21r", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jXa7iEQAmzLmutFb7ClXlEbp64zxR3/2l4P+0Hwze4U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YRDsBCECrCxKfE3E1Zl64kedETDj90yP9T+KBxbtkTUhn6tpr4GPNc13KFRenMA8ZYVrLH5FsLZS5/DSFRzIYHt7HDkToePwa8mtyydkwSoQLEfdRg+nHNITmLlGVBfPoc1ARlUZ1eOm//lez+fGQuW2W/GzSkN/RgiliQx4yq89Co+EV9gecas2vwh8ZL1/Uusn9MPRdjoHtNyBaXf/LHhjg8HrB2QoaHF6x09WsnPZZzxzzSl82BOHMqUNohOuG5Lg/+z1g5L1SvpQv350QUO2Ndosauz+ne0clz515TuBmi0Lp3p96tcpeAJZE7anqMK6xaMVCYwGrV/UfMsYrIigBhLemPpJKI3qk3Q2cDfkM2eE1viCUfRst7EJ4ft0dxMMZnQFVM69NGZfUU+F4IPEhCTtkK8d", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jXqPDIrhQWZa+yhygM+K0uy0Q2XY8WMcSHE10B/5yEY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i7vz/eBFuG+CT87OEEMKk/l6MOU3FVDMxO6ZSZOfXDgwEz1oyZoqCU0oEXlZhJyF3fOjxstfQK2EHn2F20o/2SS2F9I/7vkg+adkjPP+B7cTAbbWqf30HKjM2VsDK/fqu+PBWpYOrxsWwGVWGEy5zasd0YP588S44mr/Z4vC2eEzh8YaoL264eyyOM3j3m3UdPEYzxVxQ+eQ1QPaaKaKfCiNc4iCHMo/ZmqRybqnwOtN1VVftowkvQjTsAfilfDZBPudUWIYGRoMCx9oWJNNx5NywpGj1M1smpI9HnYtzFVOwxfGLQabSrtVLABVW+Na55dPcZ2OlgljjnsMYKxbIKAH7AtXtovrjWUx5K/MswqKCSZ8dpEhXW93nixjoguwXq6Geyd7mpTxfcTe6C3gyBjeBn1XiWNv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jYU4nnbFEMKvkRPgikLHsJRCo5TVz0WCKkR/jCgsXp0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PTSYgc2iD5pdhV7mvchcvO7uJ0H96xmHe4q7Ixk3KP9RPTcZj47TXQp4Bc/3gYLZf3b8sBEzI3bQN0swwErQEKyJdZ1KWZaf+Cmt+O297T7EOzbNoIsiDgEOQb8i5Ek3q+rQb0QMvh+gWhHaq3pAVQOiIPI/9B52lfX4qqYcfTNS9d9qC97D7AT2qbcwTYYrzu/eoWr6Aq8e7k/dXi2w8ncl2Rsv/cBlg1UWhtCOoU8o93are1KZsmw3P0iNQuadHvT9XJSsxUAVtZ1Gg8rx9U2jo3/HT8Szo0/3c7Mw99JAhXXNUiWLHzDbcjjOsf/PJIfsqTDtdel8pPz4YcXQyqNAWURo/uHvwh+sQ30NCXQ2pkFvHBuKYMQi7nGinAzIOXz6w9MS1T9fYfwJfBdkR0kv+ZcS1CpL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jZpKnt6k+hbZHi9vOv3We0DkWgVFWg3CfaQfuQilJqk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "H3l/R322L3Qbc76XKbCvUK5FmQdAVeoLuFk6TMl4L3rtCiNtnx5wlJrFQdYaww8oJAHsywmX5Pq3fvfQkKsfRdzXMiYCl5evO49j+4bgVHMFbxVvz+F37OdktsopnuguBnMeTKGSt1gzPTSr0SGBbLjwhYjY+h7L3BKdZ+v0714CFiOuWL+6Ub8r9Wger1kg/HDOhmprEXLutT5Fxe/0bYG60JxEw6f+15IWGzZZbRhcsNS4+kSS9veDnERoovE2+2EEhb9wyCVkWLwVIephMhFWxuxqirSeErUPsDKRH/21YyDJEEoVUl/YDp3zgAvbT3DqwKntWM4r2ZyDuHlNLIv6bVhfLnqEoEVcnFQN89+tmrYXZgg9x4XVD/RJZs1rmjDYXsg+il5WE7L7x2PA4DnrjUJx3HPo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jZswkzHaLmJPZTi2J+EklK/RR/BYNT/3NLEsvClJvJc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BQFeP2EXHlXXsOAKLiRWtsvqxJMS5NslrbwwV9RtQ2pUpW43hg5IOWrdU9bg1zYLo/4fz8bxgVDLnIwW7iejeIoKhnXMa1K4YxWGSTnFuyVWmnQbCHAzeESqT5u5Vzi4RXnJImE4QF3hodUCrHm3SBGIRp5IH42i3+/6HG9G3FCkYxa5acC41vk7pNH/395B765UBLyZb0RS5UeBVeQzNBgsuAI4V5IgBkVoCX+xVbNGmizzrZ64USbiBwyKqJvXqT0XVM0dAnkIH2SQVhCIzTIGdf4zx2BWy6MSeNfpaFa2EX64GK9mXqconzDspCb9leFcrgv/fyB6/Uz3aFFSKOu43GgRk7UBObr7hp0elOZwPry3nUWzX5XhYlv+lMbQqenIq56RHLR+LGCEjQkAls/RtOXBvkok", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jZtpeo8iHVTYqAFgDybm77TtCDt8uMW48GWUqJkiBJE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XS3xPLOpwGzpJy9ihLsidjJ54seM96V4QkZS4vcnccfF55k6egG2PvqlvmSsewFCX691yg7VNSdhSuYtycbHa5hzgLl8MvqMVdujaM6Dz/qAYF5wCiX1QWaHdGS7RD+f1ibfChCJNkr/YeSCoBIBilnAx8HAmHrxYjocLq7EQerwwW8738KXa6KN7wMT89qZntWRR0MNXYIvuqnGcOWS5lDIZ/MLxx1TXPyxPW9qcsFSKtactc7FZTwxBZcIEMscc/hqoVITO3N0WJkTaZlAtpebziFuwJpXmWRk0xaITAnZ8hLwD+3wvCsBeVC+h2WFjgb9rgTLh25mO2u7hutUAuTfqF/mYaE8vssdOKJKr70Ui5JZvQRM6dFmVVsROv54Go+Xq4HN2obTqlIpE0U5Yh+oC5y+r12s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jb2C7psNu8wdVDNSv3+HWprQZ/eDOQgQDYOcX5nJbig", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AvNeIWFle2bve4rhMR1UiGgWbHr1xGoD5QgHeWm0lsF1iDKDb5vh9ojtD8NZ9lxdHJSq495DOjWwfd5keI2QSDBwZ73/80RDejyOfKTe5HVm68LOJhxnEJDlB2faSYyISS8kYVDDo9FQp0PArwQariJxF1+FbouGyInLnnZQhIzw3eHiBqo+noeoTCJ6wGaQKtLaQmIYQUU78Z9XvvHrfitjUm1RhRlFC2gw4PsIW9vzlO13hd9eTjfVeJV/ZbldV81NbiZMWvFe9uR3nqw5gwTV/GN1p+jcogq85li6T4xpFzxeVl26DOfjbPDh8cQPebXx5D6CoXGyCe5+2UxdJ1GTucE3I9BUXbJflbah9N0y8XRMvLnznLHzoDUIcxlcFLb1V6T9/1GCPCYrObXvQRoX/WgdAcQP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jbveWGw1NN9KKRnxmjBRpTwKYF/zx/WPCCd7lmvOBrs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aiTbNhhcx6Mz/L6JZ7IN4Oi5OzZzYcBGJnLyHuXU4R3XbjCw+zd2MlRGxSMPYX0r58YwcY+hgK4FF9uo1BErnMHHA0FmQFcHHAhH4wYOPkmM8XgyPAlcvLrzficKQ4IrzXyC/tsuEBQy9s4f2jnwZ9Uys2Q5fIoYwXTjDTH7aQ8xWNRQfo1FVWQO37h8bsCZiz5sFqI/d8AGvNxwMa1AHQD+bjVUr8ntJg7R6zU9vcZo3R1Wc9uSdXHLFOp7i1ENII+E7+9Y6HxEIxh8GDTe/FozSa1aRxGTFTjhVXdrsulBFwwZcBlMfVAUUVF/rM/LuKyP+T7gQyNjaPlm3dKBopzxMmt/jb/1YyRrwHg16WcLQJxVoPbVUikdUH4gZFMOEbggWW4bXNL6jhM+athzdjiaIz/1IgUG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jeqtCkLUjek6DH8zsEbcTTDeKACgjLNCUFdeCyAyrnU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fKl9SyjrmecGv3+7GZKgPR8sgeu5X9tXdHlBqtksMrtxvzb75EBmI2SJPcON/fU3XKW2k8LH04qJCp16SiARPteUou+25qm+sF6kzPOoHO/Nt0KsoaMYbtHgOk1/lnRCRBpBHxy/HO/R1DNwJCdvIXwWD1tmjjawahUAxbNWyWEO5S8JI/FvUCOINKHyiIiGfmia/Skl7jK7gDyfzasiCAXfkFoJ62NsQx+nSWc2xWAkwop+oM6/2ZklFhR//e8FegdKAJjrpRs2f/vXK6LMEEh10ae3c/+53ymhTpaoRXeVe56dwKpFWPuTLVoz7fxrAFvXWPYdfzvTwUkA1mrZG6QMRtv3uq8nSFjgAORXmEyffV1eKCfYpbTDG0YjaUcbEoclIRcAYA654l//91xEquNyuZOm4r7X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jf2RNshFH4vcPxJIFG2fnStVFXsOYFEUMC5kjWgfD8w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YKvTCJTj/TiGwy21GygCbhjO5HaDatEll86eYkCI4dYoPRif+iT4Hf5sge6/dpd4t3foDpVqPwRjC+4cpckW1T5VAef4r9wzFEP5PVdUtvoQM+L8M80IK+W2VEKMA5KTTdBGlJrVP8WG7TR21YzMHTp3kmsUmb6J/FVa6TLyR/PKF+nwuX/ux29Fti7wtNYSfy3uOwYyTTHYLpZM2OHFhL4p1mIroml9Br42yU65DavZqpjv9AZ+EiNFe6H60Wfj3XpnG48g+/2KxnJkY/CDl+3ZHzEHAQXxXyM/VDPfv2s5SuLs2WP/W1mp7NlsXu+lwmlTaDiI2K2+LJvH02tUflwhvvysD0Cg1hxlrooXxzhy+W3O6Wa5hg57Zsp75ILAE0DId5ow0tzjvuw1GvwknLugPoqfPmcA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jiZogRBRg+GwuEYLoywdDdMIUL8bnR5LxOsGiHRc3Rs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MFxtPur0MJ1SCVF6d4qnOtF0nA4omeKR5HzD7312Ax++4xiHtM6w9Jyv7QN/cs2lT/ZU+B6oAw6LX3+nSRT8em6mta9J1dH18ahSvPShiQmv8fEZA4Hl272+iLwrPcX+GiIBeHGjpn9BQb6ZOCUXZXp2z28ovIR/+eVEo2YighRKlILk3gRW6GNSQbSPHGpM6jBh806ONzINOKLjE/Yaa2lByL1QrleBq4OsOHD/g4Z7f4lOvuanLwdQxKyDf4eR5PIkRMPCbSTzIkJK5oIYG6lxt8ve52G0s97Z8l0CcjijYPzvYRYlBh66PPKKUOwsqNn07XohIK1aaJuQ2UvevoZwBLrCeumrCQ1pIboxjYGXPGmWaCd+Wfm+NUddV/QGEqQPbT/1u0TDIhyuD6OzYkKCOJEffOsi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jj2CTi//d55EdmKpfY0eXKesQEulDMylaZ1wmcBnlrY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZmIh26c/oeoIttv70at0ZdH73AlDMhcLAQ41/iscB69BYDLtS7dEl46754XgIfaxYv+8dIjdSMWNk7WjyBmJFDR9b3vDC6Z8kHSA5wdr7Y/f9TyeYmosbD5Dfbj9LFK7T7+jJC6vtxDJmX8UnNbzeR6HRAgueH0YQaYeSQ+NCwWw9eDh8n1QRL3cQ3MFebF4ET6u+QDDCWXbIokeED2O6FjUQHjg1fTKotsoLmqzgfCSOp/AENBrkt2YTJPgtP+cP+Wv2sSMrs9fUlYapT2B8Um74XmRXAgDkxg0GmZ9gRcwc8h/3HDBoZ70vKEKotNULHZGYhx3t30AlWrEDUp3wTVFUUnzd5XzAPZbJqoDCzWf5BaoqlqRlsBwb8uBmr5QayiVwuKUMaDItNbyyBsAE3jFW7Je/z1h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jjRSZQddQHlTArG5kGwofA2RYUHczxiS03+w4xqGauI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4wDYHieC1+GIL7AMqqOm3+d0lubdWrf9ffT8IC43JWhIVvT+s6O9VVOTas3GF87HfXlsUQ1qiwWsFn48C8T1dhI+VUzkpmncidyK/oaVr0m3TLH0IIFqudmZ9Gggs3rO1hpR3t/vHMSN5ACGmsZ/emw0kVKR/xAgbUEOjCwF8/IgTU8k//q6IVOL8BECKusac5vbrxtl67k1LtCRCmiYPEyX04Pezz/MnhutGIjRZTjyErUTDXPmplHD1FV+6i6Aa/hwBqyWU5EjVRQ9sYwKKEUd7eCc/t7xWb7OsZiIZM3hj6l3pI3ba0puoa6HxfiXots0pm5kL9xoYPPf0Ry9Ho5xNN8K33wrQZHG+GReqzyEY6XQrwu5Jg+YpFzb3iITeBUzJsjZGX/mwd+E8ZS4qVj0RqCMkLiH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jkoZSew2x/aIZiLQhBJyXNXj0aufsxdIDBF0rkiskfE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uz6CQtucr5+BVMTUgNyZq/uOL/4yddADeOjb8aRlcMpfWnj4b1VRO7qkU5YFLvb2zhrSdK4cHYV17MHoXUGBhd61ymcNCw/yUZwyWvheegewXtSzwx4LKjRzvSbv+8ulAvPdHNlHo+bDf/55E/0C/kiSMynFblldfinwzLDy+JQeX/YH7rV+omz6IPGNrmtqP5cr3Bj9pOkLerDNredFU7H7FYgEaldkvy5qMVZ18rnMMOI7um4ZfQX5QBbgIf5JFWilEr/ULk4Fs69ln7vi/XNpCgra2tle1oGFFoGN7tARYckSWZxxmU/oLprkKu0xkJE1Ql3PCCo5sCEOvW0Xf5EoP8B1I3zKDxxZOawPg/HDp2Bom01m5nnijYdefq0qjXjFND7xikCNWbNukJz8cs/4HkP9haml", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jl/GBCR3AkGiduvbI2P42ui+eHH+DZE2SsUsQvn6OTo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "umVwbs/5ACHKLafpzuexyFYXl5O3BH9UmBd1TedPUBbJzI8wGZGvhfAX2Glfly0hMRMNPYRlXHHU5aTTbBkDTZCRtxl3jX6z+KYGopVDuP8Aj1SI2gOkKc6IfIRhjPBDdGpI6Im7t2mr69TMzxBLQ9L6zJONct9HppSlzcCaC0dOY5b44NBBJx6jUag3AwKxbd9UVrR2GYCqLu6OtMA7JsILiyOnVXo95VX80gsvJ6TGf9hBKeTOreT1mdb7em5Lb0Qi0Zg0hvdTL7zoZaUM0D4oE4J3tzX0SmYO3cYg0cPdqXbat9n6JSEm0tduakkwGkc1sz+7c5u8QGv1TVp1DaiD2yFxP3kxV0Wz1k0MMabqjSBW5QEAjC/H3F3dQEQLot7dv/DwUCc8Md/2r/OA+CJCRPMYa8QE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jl2KKY9S6kgKihtDEh+l+i2bKHCxuHQtA+cRsJ5wrf0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GR/IZnpyOSZ86ag0DQ5Rmz4QH7HlDaMRmGk1rQto9LazCIGG8Y+RMILmrlyueRWDtXMq2gXISskPQkIP3DjLfk0LamE8QxjwWf5RfOUlGte9r+IJOS/F+32GcRlMF32EMB8Cl4DmvKn1XuaNqmrNUY7Q1fmJ1U/A795mJlI6RerFyUiyPnf+GCCYHb6URdoxZagS6XHUPrsB8E3cwcaxluD7w907q6eBHxwNsPeupL42Fndz1ZypIY5GEHF3K/5FmRvJ2ZLqnKjMFe2qBUUmn4dNUSWD2ARgziU10d7nMZiOHxrro2yD239BX6r2e/rSW4SNVr1OgL9L8f1cbOZ2kNdUfJr5NjHA1vnjxThkEWdmEYRAouvtNTrvPNWvdD6KByQLdhDoyePyWgBym+gsR1H+9+RRRACv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jlDnjj/CackgwXGyVYq28dR8HTNMhtVAh3HoveXZCpw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P4xjspSfsDpEoUACRMtG3B9C7jtVkw3wbnHRKqc2OSDHvQ7wswmhzH8fbEg5N9Bm1qY7Rm9cr/aKXZynLP2GH0NRmUGTomDY3vvIH5tWT1N1TkS+vsrRlvzjnDOMrjW4+ZTZswvnxIZjJaeUpjBnAuQJ8/RjMTHrN+WzhoKCd4KUQN7jDg3fjwFkjiLrIJ1ngYvY6Z/t1PkHQqfqV5No08tpdn5jLZRtzpoQrGYsOWEq6jEHuGk7mXh5wWIP4eKXKdvaaMJvt/Xseno4Mb+pihLs/kZjBUZi8qbM2H4g+bG0qKezK/q2TdK33nxpLGGrhjrRwfqC8QjsiMOGB8m2dP+ZU5pUaF84yFjJrEpCHDPGwBO2MwforH5Tx3y6Ad1nllcv3VsE3TsqM7KQlZ4/AMuPit/GHo4I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jlgnBaMg9cCpcaGjSDHLn/nLCOwW2yv6eIPTYlZyQRg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xLcTBjPbOP+BYTez4bRIgjx6rFNo10ASRYSSpYh/wNk5TCUlMgp77ZN7JUztg8VkibNd9n35dPOQK+pGRUY1Gwmti02K9OvG3sCikDct0Pu2Bmo6ym11e92D92SauycKN5GYZ0hVuJ9iDbrsOsl0FBp36JYGeCj9xgh7IIynzzKxyE3t57xPYzLkB8psRL3eGzkcdDSmFN4O2pDDxY3Zk1v8Ig0m0g8kgE7w4HVrOHBIp6m17n9PZbgrQxMJ/KIU6PI7y9hJnV6MCDo4BsfGROSMeeaxW9tVKzCUe3NjGl+gDQyGM+f/qo2jhr/t+hD5TZ1M6429tN8WUjvDE1tACaxUp7skKV7EPMQfPQCUG71E2efm/I4A3+SKZZDD310hL+bRGjUKFcmRzEGbGVMMJUmGGTlVCyqo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jmat2heJFBr/u+EAX5IOH0wVuP1s6WqAKXkMJasxFHE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6N4HioY3Bddw3grqv5eSzXUJo3Wxq9aaIEfL+2KGiEcZpDSWX2lZlfpA1C1p585WyTCpP8qmD7fFL4zHuPN3BXLzR/KUYtbQrU/+3P5uQKJ/npy1vdG4ynC7s2AoGxxDgKTKd7kBti8BTpt6D1QdhxsWo20XNe5rlkT4IaDezUWvOWQngonsCSOMER3c5sHEEyuqJMQczCKeJ0+1h3N6yEudeGzdfNan9Smhj78k+olJcZ6Gi6W9eeYxtGTPXqmnzSPu8vw6ZEMjB6PzRknKP9I79iCNnZOPaioS7RlqrVOnNDHkw2ytQbIBpWNjSgp+WaRpgvmI2aQ+yvU98E78n7anOQj14wz5yV2QmgSslryJBN8pJGxoLBmWTSpQhwjPpOq47YfGb5uTpgqhYxwaMUtc+E8MJ56u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jq63ST3t2S6bn4bj0Xz/bnn16hRyKKUV4thFH75tk1c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y1VYSPknITQkHhINr6+uD2BxnLNml40Nm8PyEqZf6D2bzMmhLtf+lRGD1XHwzwzp0qNBtJiBHTGbf7cI6eONfo000BpT4R0tDpNkLS1ssEATUOE6Be15gGVVcN5UuxB9PZm2DmUjpDcZjZoWvg8lDvyejAbNeCxMpuxQfq8vm4lSmIRKxM2kHeFMnjW/n/qmSUVPVKKdXxXNSjSSa4f5Vap/oBJKi/sqHLXvlIR77750R6xdrLEuDb86VINCOe2cXsQ1spLQEJ0xjMVVIuVoDz+uD0R5h17GtsTsBdka6FvDwaxO1wSlFwx2lcbs9i11VIkBQPjv99ks+F29ZxJVNpdn4BOlpDO8doHMhksw24cIl2kKt84uYJOXzJSkMW5jtXtno2fBVMdKptxvT1DUPaOIlMhE4ZiL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jqDW4rUi9Wb4/WIE6pLQoHNU1HWZuMG2MceuV9sryCg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oWrDTMl99GWGzwkbkmNNNx0TeBQT8mCccW5nlLwUUc1b15QS2+e0bD4/p1uROmAMiVKhkMF6sYbQR97d6QytNFeK8bjZbXzartKwZJrmOqUFKVZ1ukfAFmSrB/Qtr79UXZEKYF3X+3AOvTu2eWqbWwgI5ebEb2G/420UgqegtbaauItYXFKzDYo8sdYDblxklzkeM7Jncn4zjMGy5ZYWGFW9l2qdKxW6t3QwHLRF0vQXNu/lrOQSJje0QpyIfTSjtZeI4pheDLOSW2351bWgwTZ0pVDj/MRLToFiE/+wGw4fMXWMYFtUx3idc0G63Q31SETu8jbDumA4Mpl2T5m5IJIpEoYgShxhmg6otviCHFbkTAz/eGWQoqbozC4S16KTK/pAAUFcORh1V133YUbt6eIg3ZIMdWFq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jqP6a7pS3Pk5z5e+i0GpMJfm1jvIqC4lZz/oq1HKQkY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "StkTGHZ7njDt+tjF/BCPDvDxaXl5p47PP/xPwIePnDkBKB5AwbzDjhOiyZ9mD/+fNK0Bkdf6/wvbneEnlEVuPp+K9gMWnkof9Hzv6Hshnqs6oDVLjryuGznfQY90HTniTHq2VeJvP3oyrDcN0aVIOQCqZWHsFznPHsP7qx5xw5QC8wItilP2GTF16Jj4ODDy/GIFfevpnwN17Tq2XiBBxr/WDZoH/ow/XXkPtZiuk6QD8hrIhkhr55y0MEZsbqskDsNEfsQpeVU3sPZcZbarq5wdSKtLXPukqsVNUgWwwlci34HaGPUti8VmKkK1IPB3vfwu3GhP7LY05HXOKF3eNPEX37GdODJFME/Lnl+WVBKv42LbhTwI4CI10UFit/t/OpZ5yTNzykmN7sqw+wDRjXOJ4YvjpBuw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jqnMAV6uQOAGz4ZpKuyNoMHxwxf3U3whD/DabnjzEcI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rhxKunUe71kBf6N5vtdiNCt3wW2GNMR3iPGWgpf5v4AF62K19+G7G7xp9nS/EJoAWSX4BvyLTtzDxykcKGJmnq+WxQ1FjEsFPcjhXCKtPKbjYkl5jLHdSr0TB1Z2IdDpve+X/E7S+mzZ+nPpTDLQ7ZuiSnq/tLHyk7hqIyfJzW5hw2ljxdfJ/Cd1+LTuGMEhoBheGCK27A48ey5O6UzER2iNdRLnSBz477bFZbbE52ztjBDsQht7S4MH4fNZKlhnel6DpnqB2uepx2uDmepMMUibEP8Xf9btibcXyMeB/6ZzkRxPw9jtE5hO7F7j+2qroiCowG5LGd6nGEFW7F6USFjrv/HiKrwnJ5k97mbLraTpbSOh9fOapiN+aT8peUsnLvuw9Y2m+wtGvSdH7UNyq4g+p6uH3q09", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jquCpazltr/lGDSr2m64lvDi3dq82VlS3YG86vInLbI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tLrXc4kvLLz4d0LXdNJLUrGFLFWXlO8hYxeFItZ+3jXSLNvbavhucZToqLGnh7U6jTf+XrRDGZxHxF8d512DoxXc3if/QsP4cc0DbTo5AUgZ7cB41yka0hZENIhCu7n4SJ1EsT1joMJYPTMTGzlK/NSd0rCNilkctt6t/WD2cdd1d3wA4JJE4+UHxi0GOjYIVx5egcSk1OicTj3NN49mnpWaTi/AmF4enoh2QvdA+jvVDYB3sMC30aKF79QyIa+snfEWWQHCz/+ERLHURCZyCvAsUDWNj85ic+bJhKAqppgdEmU2HR0+qNb8BgJvAa9J53vZ8vFt4zjDZdBVoJFZypYwDZumb57td1MndeFDR0DuorS96wSmgHbT6PUH1y288h5wtc9WSTpBJfEw7M8qetq8AmepOTB4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jrbnJwZNGwPRoxNHMsfnjdk9FQLwslA8cuWCqAo6AN4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s41OHPqF3A/+swAPOcIHs7cRug+GY+XzwDKDw2xj89F9c4i6eVZC0L4EZb6cKRyRnCYg+WXVgz1i9DgKt0H6W6F5lQwTesXaq5RnfHT+MIY1PRxr+VX+8QkaRCj9xt/TtK88C4MMsNrUt62duwv0EU23FDjqlkPKkWamOYboxgYGe8LX59Rb+zemFsbumpqL1/bu5SMbssciLIizUNPb2X2KDmaiTxPy2cNeQbFxTyuxQJqEI6ehBC8KQOhBXg/L182UQAgI/CSiXSqPdbf96Xm/PyomMNCINEQiNc2nNIyvwzljXocdEF6k/UHaT823QjpdZqU3putXlIyzcYA7Za3L+DH2CiWj83wBzGseLNV6v+rpNkLkaWoXRe+t8RZghmC/masS64cr//TxsIx1lqiJ3vRtZZ6e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "js7gC0z5my3NI0kAqlOkcYmw1WzLznxRGpba4opPDQI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qGfplfbcM6dfd9K416YU2t+JbLtsSGyl8lC6TsJxSts5xwPcq3+WW/UM/IEE9RJo5Jc4YleomUs4DYvexaB+MfYE6+a/ez1HPWN6it7vIvcPHtMzqMXTBUwxgzQM58ipajp2erraaAw6v9YG9SduqI7eHBGiXPSFSr7PZV+q+Pvyjpt+UdZviNgkctGR8MNFSXBNY0+43BT493ERgSI41ACPpl1KmQNteRbz97txS9iWq3rht+Sv5Vvc/udMA1NWxREA/iqRIx8PrpTwXEj16ZeGAdZnTDbJmOWVTfIpGM8W0msEPHP9ADwUx5PRohGPDDttI4mRbQR68UgAlsmcdqcsJWBFclNRbP3BBinJWYUUvyUUBo5cWETgmfVRIA9gDODOEcfCAFx7qsuIIsn4DrE+NMNti2aL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jsWxxDKvOcfGRd71KczkBsaDNwtCJH8OZoAcvRYu5mY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Hq01aRLoZavu74g19nGZijQsMFOZCx0g+7YDzetwWbpxQ5gldlAS2x1nXeFwt1pmjJnBZeaBJj7z8AWUZHD2ekWQg7rslpWKVTxws/Pb+T1dI7L6QQFT8aOKy3F7M2DXoNb2nHUAol412g6RSNcIcCmtQ1en16DRVRGkI+5e0gLAWGvNk+x44jxZmcKYEj/+yLFHFqi38dX4m3OdHzpXvqYFI8ybdBmUOxwY25uxPOLyKHmpYpGqOuqEpm/saA+JeISkMe8gThuo6OuUgEnFAL5TqQTlDd/yedoeb+uqE4IMP5+g2s7qTiGB1kiHRpdH5ZAh4j1ZkQ87gfwd8609bVegLspreJqD0g1iK1GwWOfi3HpUf5SThlJGhIoBWCBsmvDIMr7QUDfSKm7qiGFr7br2bgA7WgDb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jt6C8hr+tSQ214hAZq+I6jRSHvENm/jWPpOoUrQPM3Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tz+pYZjCfsh0nwm8YAXPdtG4cEt9fMI4s62vr6bjghifaL8DmwOxry3epSq61LiZwZW9CB62D4y/BzpQ2esXnuz3MX5uWKrVyhI7hJCkigXYrcg/m0wJk4bx88Sr/8T736H3PZzk/POirGDScs8ckkzhfNpJ0t7PRaIfWHhKjNo/9bLIu+w6LIMUiwhloiE5tsv2mDP9e1XlgQGfVQZDXFgxlGC7V5TWFFZDIky2QoT4cb+QAKk5cXhVwRBU3ge/gpGXJD3NYW8KapOKw6Z1+V2TendZuk6grfHe6BpFJ9ofeLdmjevXos2Q1sgZdskE2z1fjFIKA7vsOYCWTt7uNZlaGb1RC/mNefyP6PracU8AtUbARK66Og6HQ3+l3Sv63nP09KvbkFCT8j6AKtw4mC2M6BczGde8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jvX7lL7b5oKuCWzWvZwcR22oZnVgBuvxSObCNZqHQGg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mOLfKcXqAlY/s2tPKDDrLZ5ZbHoHn9grIgpgohbPg2qLt5RPWtr8AXjPiFfMSpillvEKZ6+TfPIJPLPfyD8zPYxN4PaxYhiofPpgOuCxotRH3DpMjo304XGq8bkB910QQDdepU2JEcBx3HFMFXip/hHYQCioSS2xuOngQlKgZTRnOarMfYaglwPmF8L3nsh0xteiCLlZ5uOePNt1c/2tLbhaB5j9gVCPh7SHyVzyLSk7U0GvbZJs/qRCESQgV8iAGKIr2AWwalgVEux3GbllGyW440oM8pgG4tJPhgvWL/K37Y5Lj0EGyvO9JOAAgOChT4z/lPtCBkzNcsbxhmp9Q3/i9BKMFWwQj/lSNmxLMkvUiCXPVR7eEeLcYSSDjN3Y63UMiT4+zP9ZyfkHZyrWvPMMOQFYImtO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jw1+hrt0K66CfJhQAy7zWcidKZZQ/MvKaUJsUkAOUck", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CqzPOnE6lDyxQSVBrSKN0JFYy/HSfA4/TJYWrKsaSR19QCbzI6BSSS1Jg6fLESIVyeCQ/0TCpdwqG6vqglQxZXW41hVJw/F6oFB6ZXc67UbYYu2P3Gqz961T1HxNPFOHLpketU/TI/omXjce98l4Eas4Qo3w3KzJTKfm0/mQ2wIvyPdc6T2t6/vphIf4vTSNM2XsqLipjO+KKPGQHZQBn6MCuYdaMojlssiKaqd6DF/0TddbInEpXy2IbnVcW4G9CSzfi3d+S3PC41cLbuE9LtkZpRd6Ma1xFQyXdEjuGsS7hyL75hFOqxL61a9PjLn3H/VRILOHlW5VXiYN8FLGHMIluIoPAbWTp1XbtgMpwaOStNUpwJTaDPrdeZ9/6Tdf5+HzV+8q9p4vdaSrtw7nvnAAmMhTGzFX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jwiwL+Yu69X7j6LYY1qczgJ6Hm8eke/PQLS1I3Ac5xI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2/rcPCbMe7FEUmfGLZYJDcOfgT8qNxXK691mF2B9vpZ0i07Tf7Xom/B52laSeyrZRj+cj+oskiZa5pEOFVHCTT45HBgvQZE0yWvgoKgD+clQxkMoUe/j+917R6rn01PswNMXgAC0NLHJJ7iv1lrxa4jXiOW4XtB5JK2DM4ypEkFqjAzYxIENWnXxsilIy2C/meO7exA/u7EBYEyJT3vk944QJ8KqhUTqtIMZ98S3NGzUyKRdKZX/WpxEsW3iiglW8Lo9CXnr4lrYeNGDK+VG6UWtQiC6DnzAMiB0PknbG1yO8tCR/JVallYaAkbSChIIcAaqp9GVqwHdxuyXlZRhiFWZ2z5gnovK2lS9pTL70biuHV8WG6YqRb+yqJFy7Mmu6BUfkabgDy0DB5MjZ5j9e44pgtUnmgsz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jxpXLnabf1HmhSfcZWQpakWkzCUtmKpjSwX/nbmDFHk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CZH+JTGWzuKYBHz/wjdQdfShiHgt4s5A369OD4CmnaNg/vYZmN3fQaTu4yF08PtTD/xqehtZ0wJltac1sm0cxQKjP9R6d0O14ZQ3k47IS43yXTdbWncuuN5qRtdq3Z/ooaFtamgjERzp4/HL4HnqJZrBG0ku5eJywkraYS47mXQT0Wc1oWJskfsK7bLOpkIdQmHwAhAxvv6VuZQwX8+6d95N2S5aafCdOQNcMsB/7STmNJ8jUdN6B3FOff2r/HdiI5lBlhabv0k5B5d5sSRCa9gI5PBogeuDtfy0GLoDDdL9ikwLS71cQmyBMsIb/TIx95FhuqnROZkpKaj/DWp5xi2a7RjM9nMMx/gYUR61R/y5E/4/7ZOn4gtvLyyiwfapNDExm12VUnTf/7ZO1JfrKpOX6GCM6pQI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "jzQl1t7nM1Pe6nE8Dckdsafkek+TUMleKTnzfLrUv6g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "twpFQefBgXzJtyA9VHz5VkUBZuVV0n8sp+iAgnnID2nZPLLOOW7kukyNkonHrwYxgmgbzcD1lX4+XjX/6CkYhmQmvCX0gRnAshXIuSgXuT8Zj3Y1cPzQkkPfqOl9ZPhxZwwfARLjlKpPYNunf47L5HXDAfs5H9ygZ0LTmS5YzGv0g3k88ZCfxAy7lDD1kelJb0erCn9YBx2V+Eco04o3daNIHQDRh/VKdN7IjdcEGcOdqQHh47PT7r7Fe7FSRD5L3DM1xKARjQzAONvm59tUZlcgK48L+beZeaf2H4vkKxr5fEDVvT269vnqTRQLg8CBr205sXYaXuVM8SQ1T5us82yF5fjy17aFkPgdoogcw2IW9bgW1w3sFVVetlX8OoLqL05Vx6aiD+9GugQqYzfKLcxHpebd0iAA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k+9NqNlsIkiLZdDATz2QNTXvuFNpm+4cEL1Am+oS83M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wMYHz++H8ByyW1KR8mLMLjHVOaHuXQoS6YyXY/T66qN4wF4uuZxQdd234LuQExYg+bXQJBPhxP/2KCQTB4xsUBa5lDztVmOrZK35kmpsv5T9rgmzfx3gJ1F2ATuceAyCbAHI22TC2Hn9WKAl/DN2fLGqczaDrcJUgmTEddalnXk0ypypW5u3oNOePNyC434b7uXv0MHMSuVbpp/80CBa9UMbOD2wPOFS1PzB8ybGV6Be/HV/f8PZ6H/iDbuFzW+8zKYUuJdDuKZpGUG05WgKSy0nulxHTNtOjEKe6XCET1658r9Xa3GDpF/aXbnV18so0EotjzgRGcnxj9jQzDvrXHA5J2BUMblViDvccDtxX7fKST7JfpzVKrjl6fk9yKi9vrJMpkXoJcTpp9/YHW79j893h3MV8KaH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k/Nvmx5bw+g4U0ILV2G0HKC5a51/E+LV5tB778neHWk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7g9lzfRPMqMtyxYDYHOPsCYly0L7sM2IT9gGVndIKmm7VGCa26SGFgiEWfreAaXPNN3gYBcHEvdmlth1M3CDmZpbOwDdXuzDaMhC3v5gP/CAEnKIAZy9eKRyfcOJ2MdyhSFgY0+FpfTGhw1syj7HyAZ0YPgBecT2BGsegWste908RMJHANXJeMqqMywyjxYCS0VJqN6lkQj95OMyEiYQZ3Ju9yMsBkIKSIgXeyq0VTWkyz+WuyZEF1OfDqw2BCyJHuUi+r9NyEhUNCgqf3++syaUxaN8NSPGmOm2MZmDpUUwMBxp9L58nIOxAwMATsZujCXvyuG8Qi1j30t6DB6L77pI2kVEHwtKQUa+4aitkGWbZsf98T+ZxqH9Wb+UkEBVaAPob6J/m1YZdExP1jWNDUQSsZYOyYAm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k/SVI3JkBGU2SJQlF2XNV3e9FaVtWcID4zo/lmvev04", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M/XP1hHAzAQnuFwCXUEwRf86eFuYj13YT0jF/27A+7ndk/kU2m4zStaIEl16WARv5wDOMkQkLDd+6xmVRvnVracGNio96jfqA0q63NMtY3nOxVLJgI7XFFIwd4U0Zso6JE1tY8B8SkDIgyv12gm88PYDJK+cLlvXntlnUzNzTBeVmE0CG9XUv7zMDB7kYsLsWOy4339tIN5Fse0hQFuW2V3gTOuYYhW1ZMNZ2MMVtqIcxSkbfO5CSCO/MHhW2PNeowh7jKrAkdgZpxUg5oe0u+nBjzTKnoPTVBHn5AQ5Nq8ztvQtNL5gB20pj1B3ss22od3OQ1t/MqKEZ5jN8nYEgx6YMK0tBds2dzox0zV19gT5DqlTNB3K1GYbzWjdaNmeo13BNZVW84EiBECqKDarVPv/uCE27Ybl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k/kp7Yomd7awBKOSfFt6VMEQ08DBqZAcFjGYY6VOIC0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PLpAl+6dqbGM/51q2nswLvwXJsadEhSs6Ors2HthzCn/oRRurmQAxXfk/0zpBa/c3kO+9UXTnduGOu48BSlt4S/hn35Fz/wIr6k2/6WpRTaJJDowHaesdRo9swBl4VsWn+tpPCFcJq8XOImzdawZ3ijKmkad0QX2UgmyS+tOde6mp56thnBOT9hTTpaHiQogNL0WCaoDKqhQLOE3amKw+AjFzs8HkYuUsCia9wl7U1TDjLkhP65TJS6IdY1ocRcMM+Fj5qtPT8gsoXiZ+v4LxfooMxEKtelrUBVbtDw8zruzzNyDdcTy4Ekc/mfhO/dhXHvInbPJqXa5bowDgU1BT8T8Lp+02MxaVQ7nC+CAaxE0j47xJb5Bih0bj2D5hjfsnjFk5DqrFb3XkFV0mabSsVP2YUt7HDN/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k/mFV1Yz0ossRJer0lfnifgLKsnXfNG1ovdITCwMITY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1ssVv1+koOUzc9McEjl+7rIuvi3EHEiQf4RZ3ARtwqcZ8HzzyXMKTzBJBfG9l475jVDVOCPIDzzex34SftMMlAnXMewSU/jxZzFn3+0Dl3BJ+PLtJxrLz3OWYphrbNuwqhSeQ3EcQsBbyCIPE/ftMDuhMwS9JRWpZpdMSLrbcyqBrgURn1n/g+FhAz+2QiQ4DhVXoMPyseZvNzPfFd1ra4/68gFMgTJ3W56/6g46LKHoKYSLBRZbW0bS5BSZzx21KiNI4ZxrgqsRqxPxZgXINaXQYBTG8GV/QEAkUIEBaPcncSz+gWsCDfpWM2XsnTOfuZvjf7CKX1JFq9ZFq0Wn/UpDA/EoMkjmILjSr3J6u1E3KP8KqnVyYPLYU1K4NB46gtuPQ20aY1nSKTWGMMy4hqvGjSvDUpFM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k0DqnbS6slgrUhBvsV9937VSI1risAn0wiJyBmIM2FE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BrheM8FAhVd/9MqxZ/dFctC1r3NHIa0lv3MC9YrWbBR6czBprhksL7M7OCFFUYeBf2hDvQclv8dtKXDgdD952py270/jPxJnLR9Y79RJnfKfHe/4SgYlSbcjy3P7+uPLknvxUZOgAtL7XQTF+nXOSUMU/4EMsrDbRRGa/CV0vHJQ5WvClpX/u9l2+pO11Hh0dWF8en6evr5BPTs2OprabVpiXcBFwDpmbuYei+fl25QwvjgcqqO8smZz+0/alqJyzTcBFp4UQ8zaBoP6JueHTnxSVWV65QeR40U2gqLJFRWzD5QV0gyRYdPROE3IO+jMnRVtEffizqNO8hFs9Jw//TKrZwB0Cnl1mavqAquJEDbjaUpT4WIHSYMq/PFGpwEZ/3IZED4TDID7PRvB3XosVB7H46I36yu6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k1D9sDlh3PpJ56RjZXB6J7sCt4aqDSGl9wV9nUIDj5Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CAFdfJp4uNdMcAWwAXQFc9wLTR9FgGmzAIU1oIPeKshrZ/7bljzSQi3F0ejOQBvSyW9SnDFd0YNgdV5HRT1PT/yoFW4zYtBCVBtYtxFqCFaA5H7UvpygXEvBPYRrzdUFNmemUKk869h1MJUB9fXrEd/sx/Q/hnFzH7DT3A4/UoF1hSrWA4UexQugSlORp40t+u0M569i3xrRoklEcGrWVNeC5OK4lxcxoMmUCq65h5Nfz0Odd38Bwnj53PxW0hN4A5YHqztO2AXORSqEEdiFgM7CdkO0es3oxZhbrWH1ct7i27Wk7wJrcLWESMv269QFoStu8Ivo6Pa37HvRh0pxQqjzMOskKFG9ouQIRh3bTEtkishIWzt35mSfc1eFlcLCTgei3jlbNlIkDW5edC9AglXPsFGZfA1M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k1iUlmnaH0Hzw/OiBIclDfKqFAEIKER6NK2XER/Swy4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vOp2x/WvPGp99JhWYDpwX834PlH7XU3+obfVOk5Sn83BAtYM7CC5unjxVYluDNHnWzP3dAgS+cO6GjaTRFOfCDguM6u/g8Co75i661Sa3+jlZHLNCV3Qa8+sl2O0QV4F/g2tQe9ux46oUWjqWM6EhpIlRpsd6XpGU6nka4PIAbeFbfIs+fgePJhD+GWCZlokptuC//6jC/VIXUDI+g0Dmqy+NRMvmC2EFwaGJ2raG/CNzOAcf/SVWpP1KYuH7GwAFiFuKpPJ4EArLSrXl/evYnPRT7p64zOjGOQ9BaXkLhBAi6L5y3VFJrOeCyzfYtHZycpsC8ECVTU9k+Dadcqxhn+6G2c5AzaehRHWW1UNsiloipb5zdSyXuGmbqf2HSaB4Xzy+J4ylgevfDdQs1k2AvY7VV3WbMrr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k2WV2zMoPGxzctzHNAodgOPJs1hSVuTLNdLdi8+R2ek", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TXrQXDTNZoo4wKSm5OdDNU1qaHz1OKssfataB/nltqmrDpZUkDhanZsj41+ia2xFd91QahxG2pWVUGUh8VvqlUmm5xrVTCLnCNS4O9aKMpecGCQtdXWmy9TzeFlTjHP/Nt0fyUtpK5oi+zFv0ePEbdyqIKEDvGJgR2ex17rz+XLAkKDcQE/tkLVv0Vy2ZnOKj2VaeVcVIroX+wvjwAV5CVBY4O3cTq3Hf6A5MzvZ8ARQT/vgTPgA2Zdjs2tomCGlYGcKV6u3nAf3QA+Y/1GiPsONaeLRmdj8AbDQQ1q73rh4kSZEROa9a69QfPRbqOJZXRixP0QmYwCEGFSTpCs5u3y2Er64yUnKBWinE03HCYlXthuII7hZmI9xEQVjl39LpJcoTBYTGExdk7B7p7zcQALyXPhmNmji", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k4Kx1N8U1hjZJ0t8UB8TEwws28YDgSONu4mdmzaOrpk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WKZ+KZt4Hc6Iqpw2PWCtzQMdGV6x3PBKC+6T/I4KS6A231q/+ag2P2mKL/4/iJPQrzhsX1fG/wHtuVn2SIoqP2udy5Q0Ie1a1x/UXtGYVQpJfA5ZiknNQ5IKRK3lSC0KZio0sgbVvaOpnc20bHbGAQKAyag/WUYbjDJy7mBHW8pCrLq+aJmp4pfLsyrpxYpOTcI+sHc0xPaVdsc93nKu2GEKuEfAXyNdBo5IinZWxJdN5Jkes5evp53lTQFNIbt8ojIMrIOPEhGbhQcZyXE2U+HJfaboEwOQodAsule+xCV1gk/4WfHmqtHDsdi57t6liHqciW0r8qKMLr8AnkKFYTnBOmd5/XES+76wJOUiK3op5C/Pj7DgF0wSYxCwLWwrpy51rJsUecu/Pu8f3Al2gI7cWCoccEf4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k4MmjvchyY+XuEA4YIP7MnlmJDJjBWSZhfVLdUfZ3m8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ep7+CXi8CVo6DwPBUlYMvsArWJYqcHLTTMZMVG2MUHFkE8hocDfUSMhNDNFLQSpe6Z3yVasDKyxyFEEqCYdi3b8Z+8bTqtn88V0fW+W0gLF9wl1F6m8p7/2dnvasK0RjeE7pC7eifL8VXvaeys7kEUOzaiHZlywfPr5MAgjFzxgj8/MEYeEEKp2766qnlrQcZHCiNS3+1ASC1WIY56QhQ/8cjQ8a1obEvnqXU8rIPUuoaejy6BOOvLpnql2aiwvyoMAGlaW9/bA9CYcU+QkY1vEYAdWNIgqy1YRbAIDrHrW0ZH+glSzxeoINH2F+fMTLk438t76j4dPFhMbeOf6tNvgmnuPh7WnsSesWTLHxGkvRqCOrk+nVPS4fvePN6Ajwg/Ce+qinw2jmDWEJgixRxw00fspxiv6O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k5TzsHTssMu9q4/kQLOKBf6dijk0Ll7KwNwjBnxhLJQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8IA4RL5KSd4QnEhKD1HRIK4bxvlQz2+PEj1d2wwDOvHDdOlBxk1ARZtU8hnLnaw5OCtjfzjHqs/fqyTBPgJLvGXB3a8gpPmiIQrkJTfEnAUjmyEA9xG9mlfQ8gSr0dwvbVjALcICGLhpKKSni3F+lGtt0QRg3TIOIMkJL6PVBnIuQzwKfTnARw4blDKZ6+L6sAAnMs3HrT1X/4JAdq/B5RYgkaggJAQ0WEaex915GHaEAOCqOwO0yzL2X30dJ+S52I8Y50XwIUeprZ/v9+1PlyeUNflAp4aBWhkK10Bo0fmIHnUrBqit6AGTVgLqCIeH7EHFdekBKdie5yNlFqIexnDWKZzn3lc4L+ZVBakHMOQTzdJ2mdEP2Ui6kc869rhDOdTY22hBdubq/Pl5Lv7YxlwIZqfcECm2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k5oG+b2sbrh1EYjlQnkvdtHvI5aYQZyNVKQtjCSk5sU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rfjjZLC3yYYHXUjjQ3+MkkITYb7ljO5HzaYraFR3txjho1HnH1UaTY+i8SV7ddEfOG06K1abzShj9eFU2auwYEIC429HL5QQBbaRtT7D94NqiREahsCPzmi8gSVPru6DtZvgygDzX1axN8CfwGOEzfmSBiMi2hCpITO03dzbKqisRsIIEDhFNa1gEXcNYBKOMHHXxrYaHyWSjzM6BrhYu6UvKqJ1+oJc5VnfgjqMRsHN18DVgUkJpjngvnetfM5jiHsiRblIpwX3tMfEyJcXva5YjT+jpQbFSOmrQQ3pNvrZyc64iJXvkSC5RGPYQVFq/stgj4E9Q3DBYWT2bR47sODgJ/DRJoBPENM3HnuVtdh241E4vRDzgWbaTRHxSKw/rJG4cAw84Brp8RV/x8ZIhFQ7BqXzrbrx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k6vW3YQMmkRpcvEOHr1EN4kvtregSGJtMT3MMqjJTYM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+eMwPKmrwATk1p+5RGKylHDsbpFJhudKF8GWTIkV6Ni4lj2yJDCqu11gIY9v//Of2UiXXH3K8UOyw/LsCKY95AAoru63y8faf07lDNEDHNnOnPQeCSirbSUOtDKUX0zcEb3wdvPUkOkgKjFF5SLaEbDWAfud0plDpbk2Mqf1LTdcKlIZeSmXR6iLfFtomsq4B8E1FER85pdPXS+j2gsKMQEykQlgXIUf/KoRGvxLiTX/mKS7xv8+71jIPdrlHIMLofYAfFdk/AP0/Ytr6Zu/IXwVDq/XiTKJHqvGLRds167MBbq1u5SoT1To51Ra9/XuwfKzlNvRXEOy9zi5hRYu9sJhnv+hYUYiVNmApUa08QrSV7YkS7xnl9q1/7Oii8Cv17t7gleJNslafg67JO9zuwTjqZ4LngbV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k7Hqlx69OnjXzeYu5HCR5hVnGVm+76cgBuoie6X44YY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MsUtkKleCIo+j8UfE37WRjkVsVLu7ZFKd1RaQDYfhekwOmeLmKUvsAFPMnTQYSXHnHVsLe+qHkinrHAl6sgpXc9W0sQ8vLKJM8rXpZ1mEfdm8cWPyn2GRAyZr17zh0NXoLKtMSobl5pkhBXQuwX4XM5+6ynFgkD+tJQnlraW/uGgEHi3g+IhfwMhbqBALu5x5NQowwrdFNTWzShnxkVXIx7YKWGjTiGneB7JNny6TUQlmyoZ0mC27xguuXYjW7batSX7emGAQshFaO4LkGL3MGcOb9Ie3EOODGd9CRU0Uygr2/ZTeD+rJG3kTrfviCcrTUkOC5zuup6nZgXz9w1Ik16H154V1Cy+j0vJtpCvkdyOgMpi8wSerGXoN0KZetgMcoF79TQU2tiXdNVn65nM+nNS2v3hJrH7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "k98fWtrb7uVX2ds9foQyVQBBNTs3Lt7sJuxUFmY9PlA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Vc0Um8re1Gab82LRg5xqo/3wcc04z+vmilm7A828lLmqiVUvNf3yKPlsgibLKMrWOYHuwez6778XPuF9l8RhrDYpgt25Noi8F6jjQTmnO5YU47ic0pWXX29FdwOVTOB7yRwFjo5KsJM13VEp/66YYg8VN9SQ8uNBGW5khhdk5mw6NYUZyi1qa/7VcN1Qjkv2Ji/m0pgOxrbFFM2Rxrz7hXSiyXb+CYVcyh1EhYaEMcBp56vQLsQcTjZnWDN3VHy01NZ0AKYSFnFOoCg3DePPogKGepYEotQTdBum2MVrlmwqJC5UylQrzwRPQ/EXx29D4dF9KZBgmQ+PV4YkWG/PfhePx0hVJiMoQ11u75r4aEhnG4CXw45jbN6iWM2fll7/7xGZl/cWPtZZTDnd/UXXSQHCCijDNVnr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kAX3UY3mIr1Bx16lbpbX3HCGizE/iROIPkKs0KhWssc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eUg2cX9g1Y6QlH6nRa3T0WCE0sephOovLT8opv7lnrpK2gWtuXRk8KPAWGY8AW/nkqINzzfjrVHWiU4AvsUD1efi1ALqPLRVAr3/en9okdvaphM9gOeqDC6BOQxCK40dKCWVjyl/5epj+tUNs0HG9VkESORH9JoQR4sFsKaKm4UG+KK27QjZ8/Zt/E4JPieP2PAdPjW4uMfiTZEjjlUn4FfGxmiTf9/DAc1lkhioTd77hpIUo6H5yvxN9UWKUggNyd8Nle70BCQWJpJO9WMWLTiAnzR3HRGHk0ey5gjhOalE0Vg6NMjnIXmxTSnI37Y56rF/3g3rzQ7j2+1COp2KowOE3NofGEKLTuDWZ+as6N2oOIBYMvpY765jQW9PpXKDlxFHPf7MEk+lA7508Fr11rqxQeyYKpyJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kAY0RMM2iFfNna2ftuDvhjDHEfuMLYHuwNJZyjyPZ/g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2/Y607rV3n6iACxYK+1sqcs42XQnDgjRTHDEcCR4wDtVUo6JLW/oQtP8cOyTalHNOFf/zy2Uomg69cXk79w7CRzfj2cJRSxowIIwOcproqftZp0gge+P0dEFofkx2XjRNMG6L+f0IluH1SXfM1dP7D+XmTzYmHfymXjfZ76k85ToZH2Gsj0hbecA1XWaBRDIQosaQgOaFjytk9X4RQb+5tAmEiegxhGr5HC+SQXYOf69ffz5mAGdEOrm7qfYeRZd0/aBZ55J2rkg5VOBlLtltEZEqygzdnEwtvxeGE63cyuStHikBdRTQfdn5R/XNcvSCDM7Gcjl1NV5uWWU1J5tKsKFn8RK6Qiz02vtFVO5HgVx3VtPoPCkVIl+dMHJaa6ZN0lvi8wlFDmB6di5Ty0/6ItUHUBoy5fV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kCJ+PRe73xKXp3bD+x450F6X6J8OqBQQ6xh2biDBzkU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VhNriiUaOqO3go7VX2LTX3LsjGxpeqy6uf1/Dumk/2O4+fyNB/6gz+SL6FWA4ATf8Aatze9oqtg8OIJZKQXITjT6c2CmEtDyAcEwjQIVVEN3WpcWYjDLqwgaYIkd8D7pGGPMcjPRlPfYfE/MM0CSdLfmGpYD747ux9p2ZpHGiUWY81AHjGkpjJzpJJjNBqRCi7B6gT9uFE++rH6yzyWyC/NeOXnDbM7fye1UbQvP7YlklKyqAKdsK5nGgJOcob3fS7fGbWWUkqiww40HUtDfWP0oCDHtB7zaSCRgNG3bPjF6KrZEtx86eaRgJ2zHVyJeC19Qg1Y387nsdVDI7XovYWTSpPxKr38STs4d/3VFAu5zgR9Of+XmvEwqGaC3XcOUIrh44eipLD1xjp7DcI5ymoGhZjUd7ubR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kDGUXR5zB6n5gxqcHYKbbgGMb/oWvd9shM2sZltCATM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F89iCVj/ercOeY3Hr5qTN2ZUrmTB6ijwPogspKX7NAvK65UlpxyVKKdC3nFeqo5fGE7YOc+0nYL+OBqMCV0aiMcniKlXRkj3VLA/MSQ6DLAecTUzJZpWaFaTLkbjmATbOdD9fpG2HKXoV4Xw/h6Www002jZTweo/Rn/o+weqBAihmV1oM50dC18sIq/zz4B2Xs4qOYSRbzbpEPR0mFjyVAuw4BbphJyeE5AoBvTPSAY/utBeiWO7JJ7GqU+p+q1hu+JagbzXIDjkAsE2Tqh0ZRdinIghfdn4aT6TXI+gw/2tmXf9pI/p8SQJU1uwODrRvp/LtUhMSK/gQft8LvDC1PnTzmL2NErj/7ACwwuivOlSdbK3DZ7Xls3jCbxi8MVbQbJbBM6uy9sYhJvSuzo1L55vPsFELNgg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kDiEzovTV86ZbInTm5MW49gG2CrW47egNfeamVA3O9Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f8QUjza3qpbahAqgm6Vt5PkITJ+Cpr8KGG/DUM7pOl4VTjd/xoXWseB76BLZntejrkZGwL2rHki858VtjS6sg8JH9s+vqKMrlR6Q31RSy5CgXJJucus/A+9TsSJItzmxAtxRQ7QWHUaw3n5YZBgldiTLWNmoKRy1aVYm1M5dgrcPc6nPT/jRQWMc+nV/AD2OkmgrO3uGW02OXDuP03T+0tO3aHnGcyNACQwMMXHwcM0+iYi80dKuUHT3LHy8mwZyJd+xruGuiyJcZIdObZZJOzihKUFzd39YJHyScripn5np9OnL9k6nftnOLfpI5AEyzoLlGT07GK9CgbTPMHLMzOnTVLy4ZW+X+fKvF6cCB+tg8qj7qLx9n2Lo1jGoCX14A9EkIFsKpvoo5q1XEKSbhgOgzD5GUj8x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kEh7C9WZvI4sICgn3xCr3Mza7L50uICIhHCgpFfu3g8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BLbq/F0javGvgxndPs+6vbYWugwOIEcO/GNxM2dGf9yrMulEq6vZfcnxpzQSiAe0v4iMtZH6hGtclG7yEKxue+h7tQ/Tc0e9m1+8W/7VqcFkFkDe1TmzFQ/ifyul7J4Ey40gYpbV6EbnFuWk1NHuZPMyuPRvw+vP33tiKSt8sSkr9wvnFzhjWoLtWBS/YqFCq2UPTZnGxUn1Fl+iecOuZ7vDWcxT+7LZ5VBsAGafuO5HbQmLAF7GgaUPsXxT/CGNqFwbjbBOkSAF2ZeJSB8jVs5wLuLkIFcP/X/adQDMhlq4Wd9O5zpxFz5G/z5X+XmiV6uOgbr8Bjfu40/s4++/MxZpTZdW7nIKOn2Jv0wByOTaf4zsfSwKwhFjU+8ZYyi5558WqQlwG43lZ5oYxI+zCTbS3KelfSb/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kG/M6wgCU+zkDATI/XJw6lufbl3gOYI6o5FsFJ18zjg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "THqexaHORdgMdXiIDM++jPznfDPC9Q+hQABvDzbThRPqp6g59LSspa8o8T33b3zLqW3tmBg0w+5Qf7CxwGHC2jSsA5d6IaPSeEg0LQTEUDvUvdxsekGoLXc0mOzLhUste0o1G1mO3uTDG0rUOZBuJBNFJKS4B3ChLhbwtNxzP0gOCQ1snNtULy2QYKsoaJgNthrB4nOvmLawmfN5vbtqieFNCZ6KX1khpa8OglAxR2sdgkLal4sStiuze8nr7DvQrkAtDec2bj0vl/knldrfJy/D5aDWNa4esP9yt89SeScUySwaE93Rz8OLJMyq2jNSGO/b/oRTX76XmdrHoXf50pxeHqswJKeef7q9t2mdIGXHrl16isMYQ3WiqrCxLo1aaOD3s05rlaBI8DR+OhqypasYz2S2Ztj+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kG046tqb9QdIysU3ZEm8R5+uXD9nAXeFVUo4fFrth6s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9frqja7r2ICA4mI4P0Ujfag8RRLN5YSxwcH+T69uUkFmY1t1frWE60/NR6TbJfpJEnNIXb5S6RjPuUD1jgm1wi1/PH/wU88zBlYGibmFUNjZHrDaGBeT94VodS+smy9jYBAA0e3GpqwgeIOGJ/k/ThD1zU/4gaxocA5RTtkDjkJx+1VOJnx5iz5h9sBBIoV5O7zvulyWFVASVGEEvkh67RGuSN9q6k3YMdu3MwO3qkLT0YTGln5fHXWiynbgqLyjBMeae5WM8kedo/XyR0yR+h3JtcFUZAkaR8uPEnwYfLO6oY2RI7VF5WyRszK1LGBLP7AydPfBKT1AJZ1KP8mo8NGDhMxEFAtWyHh+LTQRXQupNYkpiyXLGwcK2l9Icv0zsLjx6EV8IhS6O6h1A8oxJ6cUQQMTFDuC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kGE/YZ12/JSpvIQtUKzgZonM97+O0xCIdFNgZMW2DnM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PvYJ7FigxigwqgXElvjaHpg0HTuVPSViuJNCrjh7hXf7rz6rs5t1DfHcSb4HtCZeM1x93CrzLkw29GUOtUIQG2tkcWcKkcQEpbx3IkJXz13D8LsilVb7Nb7MpHBBO9Or9rJJKe6vpif91xGEIE+9w8Cw6NbPCe3/l4f8B1u+X0aqC7sxoKERBJUqcXU5QJvFG8ykvJxGm7MW0J8IFpFzXDTb5gCAGboLxhWfvftTWFShHxQaVVvYJVsybutMsDGFdRtSjTe8UTHbbtFQxwk0q2r7vDeKLxOQdRQt4OKyZFIGo4a3cP4aQNSTmi7x3ZYsEs89e5lldEfjb+wOwsK54Xbnpp0RzFHq24EVpTGO2eZb3VfG7dFg2jhQeOZcMdnJwebXUBcyhSpwWIVSypu6ixGJ4Y2tJcnW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kHFDhppSIkYI1BJeNumdYBcyKja5osiLxczfM/SI0/w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jTSHPUI0+toL0IjPKXlS/YfHpSdwUW/Wel3ZOGC9CMMe13lpXe5pSpIu6pJ0kWoykwVqQ634mJxFWmN40ljT4+srcpV9sKqWMRKmFk5Td8vqHLuw7Gl0Q8VHrgqNFs4GxLAMku0zFPUYdjwugRSKuZ/OzSr4Z7hDX+pwMv+vym50Hm912OfInum7W4T7o0S/LaW85V7VlSD/ESuD9BwLLhMTvJERPnRPtnVj5MAPjhUoAtLnga+8lErHRiuL59JOnQKwW7TKXTjI7yJUYVaTbx0H8aTt8rGYSQpv5aag+gsb8g6HjLjRgyTsVhPBIPDqn6dq+5x6c3PxhM3bvTEa+nXUh3dB9ErNMYmA0LuDYO/1+5OlQBCpYMUjKF8Vi/wKTxNHs+rEWgeBBszJJfHECGO7vUQvFNf9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kHwFf2eh/Imz3KnuphrXqHiSg4GUTRV77vlzv8Re5EE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iUcRNjIu8uWK+emESvVYY1qWS2xwIh1sjuub5qgWRoR/8e/MjWtir/0PLgWxLps5kJmaj/Bcj1UQbHmlDeu2k2bWKT49I0tbpaZAXKGmrKJHKxsIDFOIGvMXqdxA+RPT8VJPgfsayxHjPWDpkArg2EFfvktfTrSnQqldtQnsKfUTgBQHf8MIaAfM6IH+PV/00km9Nu5nv01K4gZ8kbMBX6zXEkKopLp7jx7+//fXMYITmKYfPUPWNXOX3+UcnHNQb1G7WD5QHCnAw8x3Hs1LWtakuTU3WkYQ+mlqEUNm1lhRk1fZ2yWzV2B1dwLXhitlSbM1tRNGBp/QcaX3sx+TjcodPuqyg42/Q8jNfdmT1WqVoyoPYJalbvcmEuCBQLmy2PKbdPQbSFFGUyCTEvFoJxUaf80MRX12", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kK/cxpfp8VnKlqgNlnFlTtWMUuGnScr1UXHJM+/Z/LQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "J7sCqEy8pY4FGaHKZZjtIBQwlWTMhbR19aBfHmvVqbLE/mz/KhHXvze3xIRvcEs2cv7wvQG0hcSqOfACJsaahnyqg0xVR7LhsPTJaniRqyYo8yAPoHpm7HfWnh+uJJcuCQx27xY258C9OGvfv5A5ZIHaUq5eIj0aHKQceo1PpetJGIn8+RQRaMskNd0NeS/8Z/No5umt51vqyGoNIE3mHrBrZZOBX7PV4DLhPsjpfYEIJueeHOk+uw3TryOCPI78iCD3XA2DMHbhN5dIy36p2x7la5vFqx6MjA5KvceeRRjNqJNBJY3GMmMm5xRr83BXwL2nq9EgzdjeVbC6VnEZY9DJYAoOKs8nfpIb6rJig7ORnX3mxp1bdQoFo/PuR0otwVI+gL+QRpA0Qw5Rhdt1vgZJNEbQBmTf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kM3y6EQ8sYeRlwXpDfMn4G4mlKDLW4bkyzmNrNbUWXM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uynG4TYdCNDYgG5xOJhe7R9pBBVuH9Xf5oS0Ljk0FqEkfRT1zB1dIL5NVX23XnrDDS4Fl9VwlP4Jbur6VU76kK9hmXkkIMWTYFTLVqFnnkViamv8K5MBhDCR1oQAOAawqYD9YX1s/MVNcHVIgIsTIzf6Tmt8M5fK5Xj+fygfK9hNuMOvcI1zChjejFzmtLGJVvlmX5Id2bYHfkUQ7dnCrmdrdbswyToMbqFfXfqqtXnp1lExr36lNmYKtmRtHxRWu4p2KtIHtoCErOVagltROTVpJfi2NNZpP7kMrFJh/rqwVGOzBo9kXPHZTMlC6Wq1nalSqwJU69FpwHwq7ILhHsROcaQYdqYTbwBq3h/l8YpinsnZ6FnJIb8oqc+QLHUyzszA0wyNHF9XGmb/XMYpM2VxJsHq5ORK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kMLwVxESfVCHwRf62VVIvkdO/EQ9bjAjoJdvZDC0sus", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PnP+etyaKIYlB0liKeXrCFs3JsaMZtBRx3vbZNzUCn9QovaCu57ntanxnTat0s0aVShnrxVfEGfbNKmdkAUF/Pf+XzmO4XWVwR6pQBBELh0ZybiDZTVW74BbrZ1XDoA1FoIr9jz4g4c6nQMMSBK+0T4zta0ctiURKwKxJ/Z8y0zJtvWU0Mcxiyw1RYJWie4S6s56ge6vYMX7FVh4gAHf6yRJltZ2C+3uSR2nbFObZeBwluN54wN6KzeWt/fmgNgLkO882TRVSFdn+MOKROMRSsDx/9DTX0wFmU11FM5DyQN5ZBPQmikYJHoOvBx3PCT9akMT82h54t/Nb8b7pBH3bnsLeF37gxxGF79TeLgHDbQnWMWx6sux9xpfvezlVyrHd7JuHT+SFbVMBIGlVXDMjIX7EqVhQgfI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kN1YkT3Z837/bxo/5gp2gYmCEaDRNN2qr2pHluqY5RA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3mVGiYOWOqkooN1aNjiRcz06o+RZKcElAaivjkWuR68kEIfSLTizVhiBi6FBaTcQJ2ve6PnrwnXf7ZYT0SzuyJi6T7j3xKQo8u+ATV3Wb9wp9+JaNd8ld0/15Kw4TH3/cubqeDy79ZENjw8XLjmRl5Vj0OHolOuu3xLHDz/Rt5W4+OFl+0idNxfLUn91SAowIl759Oed3v1PfNPLPOY6ho2QNQYrYIS5IzGdvXHQACIzwS3NS8Yx5mhpVhgwgfHgUVFvz+kjzTMbbUmyPBzqUcyLxp3MXNolVIgM3dlTXxy7k/oNT33XOtMyIPp7aM4RArBvqaOFDt4vC0IRafWFvn+fyasmhvtDPp/uURux8MucDTD0nMTpvN4WIANjQTsviv2A5nOSNgM8Ytgi1lZd2j/DR3QTzCKd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kOB954oP68TTofRK0xwynDtSS+vIRpJ7/lV4DOlxd74", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/m2etafyspg5ooGeNwQNNIgJA+tkyBao20AMVz5rk0SsFY95aoKvhzGlFE2+0odt3EVUORpO84qQPLvyk5cusinJ3CnJbnihIEg22lNjAntE4hB/Z7mxpIkU8aLFjsVP+bSx6Ip642XaD9gIOkdwdqlmDz8cgh5oAwFfLGwXt83Neu3Yecmi5+Cdf2NIL5fak/khAMqpxNNQVWdrSQ43Wgy7nsA7g3Zymi56f8w/7LyvYgy+TagL3iaYbZYtiBludObNXr9XRXJmKxnAqPQ2iGeaKKTOmwXdw5q+wogw3kltx0JZJMUu3ik6Z7E8vJ88Qnxgdw2b+8c+HsuSt3mDK3zRU4jcuWJexPFbPC1m7ygjEF7hsMTd3uUoGp52rHoyibLkyq1ZxKznZAspXDC9WKeKXGCOF5Jb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kONZqM5Ave83B188mZIg3i9akr3hi7fQPJLzKMp82ho", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "g+nlICLVivw+wnX3VwCLAzwfIaoOAgGQywxd4hiJ3ZSnsURznQZSadFYAd9eI9r/IYuv7xEAJC7eBbzvxFA6sU5O9Y8eHJpFT15LcRCr9zO8vUQuryXgeBj5q8zJF0cAUiVkOQD/QbacqFS1e1dt2D6i2cQx5JLb3qkROihtHry4dGKpSckCEonTQU74IZVI7+Bwu4EjIwJZ3+YPrU9f9OT96h/8iN6U6hTkFNZpiRFK7VfmmlQHxoFNENaJrjUfuJizsi+sMqe3glAVm6UPUMCNQpBo7vr8n8Q/ERpc4Njss3B8RFOe/41orY9dbuI6xW/pVjx9wXiOk0JWbsRIzyz4JPJD58lUl1gRZLgjTZeA7BMOR/4Es8mim3tEnRId6c1TKqF2CPZdrFnNR/cjH0N6DjcNWwXO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kT37nZ1zyalaR8hmQ6F0Jmy2LdQTCZHAUpvJSJ5T6fI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GozwfufJKflkrynEYCzT+LXgwGKRhhM2wN5NZch+CKVF4WR8vIFm3ynYyzJml/sKojF+aETvwdpEOZgx7IlTjghdSl00dQ4OiaUfQONUwJgKXCsmOpRtrfJaYhU06FC6VPlHHJuomforWUgjMBmuRBbg3uZPJBPuAL3ZnVE9BpLhh1YUibbKYFydIJG5V+FSN0FYU5P1y2WrOAf2njic2QOyFjDEkrvPj/5y3e/5oeYCZrxBwpQvaRnraD+2/S84lQ4AeEXy0E9UA5TNjqgCSMbtd5s0R+O8pDa/maqHqfBTAjO7y0qMN0/IFZClp3/rCJLUmtVViizq/uChEtIpQShZm2lAyvzlRVq+o87oiwOhrv8XQnFKN/p3fRnuBkYVrAV5XmqKqIXK0fZavNrJ09psDoyv0+yN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kT3QOfO4CqyzyYFiYhbQkp3uzgbaVMOvJpP3+d2wZK4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3HFg+vUoi2if4+5wo2EODLH8XqF3TqZTmgxC5Dns0ucnMSQBNtE0mnZCS9yvX0I5cxYYNW2v010/zi9WEuqBG/q76gTeO/QUkikTKBYW8kaAxHzaw6dMEIgsBaq4U4DexU4u8U0Ksd8mZUDF605zBC7jTNEaeHjjWtlhvNBRsEZF5C2wwIrFVK6KiUMjyAYX4e1rdzAaiL5etkrwiq/IbEyAkssl5yKiT1JTNnuUxiPUJ9TKK5yAW/mM/KBONIKkv9UMeSDietjOwlwuPcdLnM/fhK0F12BssdpzA5caZNzZuIo63IcpbEzey0zqGFbAl5ymLzbfD/MAhI0nbF5RA0xa/4rS43xQ119RScezfpbhJVYrS45GKrwloFQaY7Pdm7hiwCk5PIiMVs61Yt0xBhNYlZMssoOQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kTa70ReLr2ha0kVkhAHq0hahQRoTF2J7Krd27j2jcw4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "npuC46YIeKPyq5HeKhGCjr8A8QQ8ZugD+p3b7xIkZ/o+WwNIxXLhSBbLsqoldCxUelhnAoZ0VMS1peXvOIfeSKyNdWDF701gAvGfSBnUnNfSFX9XMd56WJEr5GUhJGEJ+zTZc5pjmQoqvfzH9PU6Vt2tuB/bnPjh7CDU2dYGFdyILlrFw38+47yvhrptIzAnyK/zkNYGPMEDrSIGu+rmgwW7yKQHuMKoidpbdK3cdWZ77ESbmpVg5sC+TyG1B1gs+DaU3sWv/H+LJ0iT1a18+CfMuu1yOCUEoZxC2lGJTV/mCOShEuVHnyfFQVuGsypeqd7UdAuvYksA1V7ol5K/pRC3wIg2CrMoAqKevqP0AEkbAR5vx8fNa4yLBbQmi61Kzgxdmq4NShEc1/sFqqbbHVrXlGt1HyOg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kUb6RsYZG4i68BJ4tfEEhw1QPLOeL6fQHNhdsI3hnnI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tavfXwX2XRUeL0k31s1KzlpVPHuUf7SvVAHzfNupSx2XKghSsmpyYjzTILiD5hH/iTONy+45W8Vjt9QIX9bUp7Do6iD9aCj8s+J0zggLAzJIJBJX8InF1SNpjOI8RUV9sGDPQUkLlylT7N7NFExW4Raf/Z8aUxYS1B79oYHdYRuproso0UD/4v149mQ1hlS26S4RpXfg9d3tbnfZwnQJCDB9uy74/a1ucZIqhQGVOfFT4DHR1hTP3E3zrnAgpf+REFcZZ+hQEpCr5D2A3rHFjN5jz71nA2FCIvhnBdooA/LA8nKFZ7D15XuAsPpcsQc2VfJ283/qst3Ma62XFBB7U9dA31gVUfIfCLiel1tYdXGfOA7MS5SwQFqlP2gQBv4fm2gfoP2P2qAt9yHQ+jW8G5Lnrezx1gqX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kV4p9wr0TM8gLwRfokTgYFF5n++9v34f8ilqvrAZG00", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w7ifdM1MbAcwohv2tKxHNvYJot9yVoO0iFT5iObqGFdCSbQs3sHUy+SUQRwgjD0eAmShYby1NCpLZTqX/Rsq+VfNzVpdOxsvX58XKS00GyZLhgrcTWxGWxVrFAQwwzpO99unrL7cXqtfKMWnDwJEov4p4azAu9kJ6Qlbb3dLK7/usQ3KRmINzlXmcDNMFzoSW9eNEOSVLLUNm4amgp3FA1R5oHvpeleXH6wcVoYVg5VB/tulsZCNKCqC3fnbiMGSvQsKZV0oxVXMOD21WuzhzSvTLy2Uu45MPJ/vBX0Tq49EzQEXdEAFh6gibH4Evl7FfaA2r1pI/Anh66ohO3qbMcyOJLumQIbBtrIWbyzbFuwQqUGDwIEUhdrqq81bXMTFpUTBnFIJ+on5qHUIystsloVEQTd3bEMF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kW5J2GEABZ6nWITxNxayf6ywR59wgOlSSMznqwvqTHQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gv3mUxi5p2weWtFYLYq8PRBp0HzHGYBGWVjjdXJRbFwjdTmU1/12P77QV4nZ8dUrEy6M6EM7E3FfZXsBNaWF7Akr2If1IJPHlq+zpg3nWdDbrvFFDMIGfEzaOG3mnG7D8tVpNbMfwhhRgvyORe1GVijCjlfKD61pF/HVmvTsJJeFqATFubziW8qz8BEnxRhx/UehtT6dJ4UqI5OZrmAN7cy/RPtScW8G/NBqhvbWsnk4S5QbxR/TITbdo5GF39mCCKdy7pl9iO4L9yk5g4tpqKO7IvrsIp/N3eoY7fnoVOweg8N7ZAf6QIftVSIVkKb3SYSUz8WirYy0Gf5GUoRPx3+4wfAiNxJ0oRLCAcJivdJMb//Y5xLVwizq1kRVSQrO53fVJ+C9qTYq4QYYVl6uNKP9HPCCcwMZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kXT/efHSNhsN7WXTQVYajkFvJmoz0hPPcGFpEPs4UII", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jbTEnIY1PPFHntSpKHTZneYX84TTz0YopxzKWzPRHw6+4xGG5H0WU8pVScrRLPHtif8W/7PTSJGiiG1Xq6Gh9W91ud2hw0HqhP25SIU9kEpqu4fiDwfcZucyfk/fc4U9amjNouHgkFfF+4vDYbc1FRBtgGv95ahAqi6X74XHh66MY30iIKJ1oTlHa+bq+deiVExQFsncMzh5elJd4o2BmJvDOyDqkU81alYhaTieQSfxG3sxnp9+788g3S5Q47Y3LIJWRzcYRU2mIxQhZDP4FMxZlm2k8+ZL3x7PSmV9hjPOrwEqaDZSZ8YywzyfGH7DRDDKHdxQV1gFV9I6jSskBvpkRJh7pE22/tTUxj8RIiwFzwzAb5wfpMXzqwse8BVOZfzChdh8F7j0Z/8vJe1njmxPCxH+If9X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kY0ZghDIs3Br6NFKuTPSC7ecWsKH0z1flj8DxuM4ois", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8BshbIf385hxqhJ3779oZk0+OERwONR3afeGd8z9IDHs1dAJoKmStuCThPRAqgeCFAnY1Ccxqhxi7g3R2uUorwofYR8awiKaS6ZHCFbz6JgdNYmlVFpYdROcMl2lNBbFkVDxIEcrjto1tmuWED6EVwFVi242X5bcBh7Y0YaxWKoV2Id53Yvz2S+47kNe5MFuIMaou3fyadFVuKHHQN01+WnE1R6lZdzUHAGaurBEFGZ62tcEjOTiAf9hXmVgUQHxBr0DtNC42fwTC8UwDMN+l0FguX2nn5mI2bYUNy7I3Lu2bZxqg0U54nmhyIcOdjLvElkSqarDpKvcLsctBtAtp4oaq8mOw3kjsp2wfLzJcWQ6inllLGsrWypRrbjNtWB3AUgNkCv+wiAxVKXfd8uNKrTmzo35aP2F", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kYIuOkmIPG8nOdcxn2omEjv4XAt7edafp5F5cudLd88", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZqAWGDrrJQGax/uerPw/RLDZ+oCSVgCqLM3eQWWifXF0VoWlnS/cldF3QMrZJythAy9HIEPs0Int+sijis/w82KDLimgBbpgDhCOeQq3iymGFxH8iB8C3/qjTOuSveuQ0c6vzsD/S81UfnozclZ7QdqRrHgr48gRziTgo+I25LURfMV/NZZjAcTdFHNoPaY0t9LsZfjH4pxRxr0dcn/QA6nyJ2ujCUriEZ7BeCOdbo7X0JoQetKNpNZ+OiCm929q71hFjS463akhD0oCvLIkxaBKlz3xO4FAWifBKQj8jhISmYi+0ESLfs2N27iLzURDjXauk/8Zw751mNN8h9H28ilHGnlWKzsmhvGwep9nKE7iNQl+lc/IWOAIwggVyzE1tD4V1WujNuYIaP6H5VMFvNgjr1jOk8q1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kYtYk0FA6dPofMJiTzRF+QjYkswx/uPJWpCNIpm+si8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0oWpyFUgwe5G9MU0ATcyZDJosHy+fBG3KYNa+DLd4glO8d6t8NRgjdAyPR1rJ4mII36QoiAiTYNU/tfRrM5LvIBhT6mwhEg2qCFMPcuz8CamWRdcqiOy21C+A/SXhfXNu6wNdHVOVBVr4LYDS+0Ykabe/pQcC6/PAsMmQrET9goThTOldto2FksNhno73PGivLpwoAJyGv02TX9Td4BxGfIbGebAv7UkPuog6IM/kGwCQLlPkzVg92MYPmsEKQIVCZNGfcS3x2tJJDXmpn6VD5z71hKSn5mrhV/4qR9ZhYCcv8QPiOqZs77PWOb/ESa1elj64Dz/QiWNt6dXtxSYFBv5FknyUS/+pp0boerTUcQHkc0qcjF4d4LCoWgJaCELLzVjrrUKsSE7i1G2LlMJCSN20b14C/0M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kZufGyDWJO/qCMpQm0Hl/9bD7LZmWvCfh9pkGtsZduY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q92D5Oine6YnC6XlZ+uCM9fKsVE6sEO8z6c3i7KcZAFeQh7VTLW7Zr9hWh5RoqMy9t5i5e0j+na51oEVgj7Cg7SUH3ROjqzUbha1uDQA0s63oDstTnY3bRop/i1mjKbsKF4vARziMWktXjQpMK6rTQvRIIGIYU2it3OqYLVar9X5tDR7PqaIkwg5A1Ki+Ox6l+0Yh3yDl7aY3ogN9oDRx70HfqeZNjSj0Njbc7cV2ZgpUQKHvnM6lRJ+iDQ9RYFAeeXH2lF51nIETF6c4ezxhTWzUkmdmc3zux23iBc5B14yFMdmAxdfNm4Lkjw1cvCe/AZpR/eI7XCCZ0QXHQboicLtXi/bQDrgjObzWcmkJV0LMJkNcShxYFBrP/ykNLuvoQk4GGXb1v8xvn9CpBcpvtXuaF7vi5sf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ka6vaGe1VtAVNefiR7Q5nWF9AJqhiBl0Ia3IYfV+JS8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5KQv8BJQI4iwNDXtyFvY4Xpqe5zvr2tQLFXz8bdTirvH0RTA2Ux7FfPQF95v5U9J1SQN3Iu6Ls9iFqqsbKIwczbSArmwSitNVs80Mdx70iDsEIslsNGYjCzmkbR/XhJmdS9wWW80EYXnyxKhqMeynCMuDn4lHcgX2IDlSLXJu7iRZVMzXSxgkTJicZq8D14HvVXfHgjzG/ByImPe4gS+XCFB94H54rVQumjzTTfOeUwoQdPvpRdyq1rBmGdeNm13b73I1JG9+7TDc3FNphinv+eR3Jz8RJpHcB1KDk6GfKlfqtG+Yx9Iyw3h1pctHcqrkt491uA2M6vkfmFamgfq8ojPVSgXY4oBlA93W/Cqogqtli7tk82oor8XSavJcCd8dQC+K3jpOFUNrQVz2uCy928BJ3M6K6U6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kaTU8SufJp8Px1a+6Ms8IvYA4vRPm2xS9EF+8ZNDOcg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j3xEtmNsFzSN7nhvmCIP5eQdRuhecasUH89TWa/2NjJvy0aKsI2+r8VoOrYBRYrm+vKzBrc1zI17L0packhLJIeVNDl7PmKPfxPXHc2sYJdgM8m7Jg6fF52MlX1OOShft2oD3AT60W6woYdl52lyLxStHJzNkgYRYxzdzh7OwxtrT/2OTKSzBYZtfhaaeMMgQQ8mGHzLCGOpgxjfjW/WIoV5BDR4OpYy7sw5tB4EnHdhTcilbAPlM5uXhMzMNKdmHphtYj2HfUxPoG6p1bNAJJdpeznljNh4lNauhZv0/Exs2/RTBhHzUHAEcdaqzWtGA9Gk1SQ8zR1xFDnJNkIqnyYN1gmlDkzlq1ako5vtWfGFj93m37HkMfeANoT3xfjFDywLm3JNtsfemAc2qvm9fvnj8noLjcsQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kc14XyoOYBC8r4I0dXJ6B78LBWH2jgkpBZYsOzebxhE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hSKGZDwHkWC52agI4aCsThxwGzTSZPbgCMyLHrIuw+zvsd8TNhQSTUcGNxgsW53hS+LiFqFskBUHq5KtTjWx5qIVL35p2ITOvoJJ95GQDRLTJ15N/N61UTLJMOVbIPy6Dh4e0FRt8faBpAFgGFYhr/7aCn72vGFInyT0Ix7q5gIrMwt9iK6h4AzBxV8uc5gNqeaBCZ6hsG4XH/CFdIbM5ZQphmHMOtm+x1hAul+BjR2aLUnUxmUXvaYkbiaW4Hj6sRGKn32CsH2DEuzIWVp3dAzvC6Q9sX/4AjDlN1/g0JW3wIVxBOZbtv8JGJANrhVBYz6DX2ICHOa/JZwlcOKWc2i1EyYAoxfuaY15XAVdL6LPJL63TWYFW/IGciZNdQzD7auz+sr3ZCJ44szp32qLtUazA524btt/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kc5qNCK4WKq4l8IMPQzUbXA9NnzRxMwYh87u/8tTiz4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lWG98/2OpN3HI9p1CTa8/kkezsADxXMBDlRMnxkT466NjRfG4h4fVhOaApcEwKvyc7hP/uC4/VI4hJuWOhPUMQEwqc6mHP4r8OCTxYra5Im974qCdeVr+RAqz8yppS3je6Qypgh52jMvcdiSqNEJjfUMFe1p9qMiCHNSDpAWbhh0brZr0iFuX63whM+A2DnROOLuW3vmKAS9E0Eaol6bAt65AEKtcYY2hPmxn1yd3AiMYCiKIm/+mf0Gqq46W5+wt1Kw/FFRoqBFlhXksM7YhDTd/m1exV8mEVZQIS1NGG+wElq+EwWfPFM+jpVtmGs9qScpAvecl/ef3RtGPeTOcj5iYU4y9feAYjggbmlgKKsG7OEDgtUAM+Dv50WuqppTu/4zuDeEyUyx0MRkr5VFdG+VyuhLvC+j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kcJ5vanY9w8JUeO04qcKQHzV99sfVVL5uU3L7nCdiP0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A/MiVHIfmkPsK6Ump7PotK9du542OCOQZpTYUVjm2Ucu7g1zC8IcoLb+L8439PJkBr3Oh0D7L7A/YFCCdNvJptImD5XMF8NJTIoKGY4Co+GWisF0ZQH0qTwNeMagMqck4VqwL8WFOX0UdbLu1oPsUebpAuiH6akehp1AeRrbKEDW529PHR8MHidHc/vFC+VX7BJOQX2L/galmao2vIynq7uS0KM5xK5ZUlIwfYy4RwtXqxmfOQOJDcBRGAdGJQPBU966+7IMIQcW/v4DAS24DetThjIHQ/t0Iv/ZZje1DMOwPWZilgYnbrILYIc3PIkqLbOhB3zrEQPAUm6zv32YvjPDVSlnqne9GRFc+hHUnHVoW9qu2hZGwGwIaIQHxJbYC7Hjd+2OEGVsZn8NSmX+tOq1r1G5amuy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kcLCeUkS0ZjC6ad3KCOiR+WdmD9F2nbYfJhjn8G5VI8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8LvtVoWWxW+wwncBd8vz0sXjv6LxEPQyAfHQbYba2mhohz6Ufvxcc1XPX1WXETinMLIuXZ2QS+vsHrujmvgq0W5nd/ojJn3ZToRHo8vjAC9B61ORKRIdJLYWEtFt3y2xKsYAxL9h6TjDcKbvGGGu1g69XPsDtGVHdiW94y3gNIaiOWpuhSP45cJNlGlWdOrGFu9VU0LAW5+ZZlTdGcwLjO2dFzGmKWDOnynu6UeRAveokcy13uRPYGHm9J6AuP/gnhdaWQNSkpvC+QFDS8PPEPHBs+Ot8AjEcIMT7veQUvoE1C9c7WB2UPxjz7N5NM8KrEnriJWstuVlNlBfvE1rPNxva/3N2Z2qr1dK3GOxW7kOCkXzbnUTeDXLT9FWXnKgIF0tjlw2Cr09UM/Fi0rHiT0DhECoJDxu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kd+GE6wgSWvVbo+dBCqBJx8qVZmcu+vOlD9KZDkx84M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ztb+Qg7GCjR1iYiShdRYoQSC7eFXcQoAX7RGNGzwVRa9lmuQAkF++Xi5X55hidEohtCwfv/RWGjYGcaKDOD77rCRBkWjojrvKpG1ZSJ+8FhJ/S3WZHzdYqT1vNmsfPAHcEeBbBI/kRBH8yFo6TyeFUgpjVioAzAYpjsVe7eMZqGfm1KURJUwuXTKd6tz4tW4pbt1S/8TZbrK1hopa0ERsytDA9JXEUUNNMJykq2CaI4hQgaZ9u7Tver27FKyyu6O38KqzXKdxgRT6xVAU1qEr5Ud3oN2WrFwQu71ZQUPMTuHPFweCN/+4LpXxz+eBcSF8cVIuOTdWHWDWYVfJhw6GTk23w+a5tTooxhAKt55T4lLxqBqSQNhgPt2JloWx+0C8gz4g5F70vcRPR9AQJMZEvMnk5ATmPt/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kd4N7aYbKA+wLW5wD/u8Sr69BHbIfwLP4Vv594wdORc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+UKi1yR9odCHDQ6RjcPC6xLavp4r/8HhlfWRRgB7h1F7n43d1WzdEpcYhT/ftpeXvZFzgCWoexqalsTkoehKQXbPt4Y65SMdHXHRSB8rdkIMr7kwZwQ3QLgXzscmgIISAg2R7KT3inBnePSGSjR4OX6kgNcHaklDQnNRoN0etvF1ZCWhD1+1t6+2tVdA5JaqmmmkFKAX98sG7j/l6TJZWTxQaR0ANvzF63U1iP9rleDp/VyCGnjwaodd5fB2NG2Hn5Mva+VOMw1Jki+Mwr46ZA6DR/dEmO/TAUAUl6q8VaFuPg0oIz39cLgRGmCwjF8qAllGA55nX9/WcsYKPDEFnBvSAGuK/f+4lORxU/i+jLcL4q1fro82ZtLZmetGw4061Y9sfJednelSU01N7VKa3YIiVIOiUQbd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kdi8fS0zvWWJpDwa6V/erytDFjXA6J/FXjfaDBkpGiQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hSBG5fiEQlG6eJhHhyjh9ZHFt9fL281bKnpbnXjULvCpP2828pyJphsz4hjZ5Wndohh9g1ZuMkMiTL8C83lSyjtD7GnvB+sP2uwUIVnegC5fXHSGGxcIBvJWPb63tIlmiLkqeI/hkQRwWCSV/UEW6qtbxk1wKMnancj4lyMCg9+E0eJkMET8foOUFijTNy289lGgKchEwnGmn5g5UPsH5SAghqEJ9CQoHk3JhGZNrOuLmwB5qRuxsotEttKYGmq1RqEfJ77waFms8bDkg8nPCIsCxOJSBMwXwImpSCI5yGn7W308tU0WVhxrSE0xl1O2NtL56I0mHDGkisouU2VguDo3mdpn4t3YJNfWpvQQHKLvWGOXpfOoQGN20FLcRjiA49vcYsb6oHt6VbIRtMxX+belAqIz65en", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "keJGlwBjWBw8HEJ7UZHJsVabSFeMPdjwWzhJh+wX/jM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aKnCv7Y61tHLC4IH1wc3pbT61Kaxz7omUwRpNSMoU96a63h/A7Q/UaXCdsFQrg7kqN1/TjF24EzsFNiWvxyI1eJ2kbqGfi0oHDhJh+FgvSduEvWHbWU9pya1a33cmKOeITq0DdWHpRoi33cUHD9OILRRdhrRtnAKTmTHNvd8XuEqShiB24u5kyewr/J+FoQ1EXsDtMd1hJmT+CR3ZOSPRzcSibFW8IdyogOja9lOobRK/VEP+/IGbretPMEA/4vzxPv8X0nM3yJjc7KdLbvIq6ZFcewZiFta64dDot/uNqPVlUYwrO47oo2Td1ey6SA46FInGQsB7pgCFf9o5+fjy7A4IYoMWHuvz2yQfm+CWENeVj1OD+P1WyzwBS4ESdUU+nnZs22R0EfAjq5Hk/jNgmMLyzlCSeq0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "keVt7jgWQTVn9wu4HMiVCAe7YoqDtheFqjus/xrQKBY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wFEZPfgkqJjK1w9Dp4qZzCrDB6SsDtiJ8YC7sfAdVbC4oFk/A69mWQ23pKU1fgF3xuY/dBbmE0CaRUNWg/12tCUACRE79cysUt6LOrS0R7qL+WISETsAbCA9mg88VQyU4r7WaVOXhV89h1Fl1XPQMXXmnJXpq2WayC268cgRuzAktQuhi1PaP7bH7jxwpDsGKTghCn6bKWedBlvmS/21zd6NMinVBcEgLA2SHOr6fBP7LrGQjcZkowyY+vf8upbJkzxJtNXvTAoiS0KBvVqEZT695HByh9pwqZ94ZiYiHVuTPx/23aLA0xFprq6v+/UlsDkocT5lxsTAjeBsA7w94yj8deGUYtIARJprD8bxXLo3omtFMMGAlVG64nGV7Hf1JyGA+Kmi6xVhi2UWZtfvmRblrLKA+6q9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kexKPL0pYKmgdUutdDBss4jxzESv07snO97UIgxfvlY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0SI5n6HMZUz2j2wQUPrGK5z3NEdXmKSLI7ycr143Jsb1eH1V+iosqZQtR5urFryKD5HC/edkIgFoU4GK9EEx5AJBOgKGBVDMDTYkt6lnUc/IfxUXf2WQ3ZUlIidfxh/ZdMkbmbzfvDY3fBEMUj0kzYiqhLodbRHGZuPnM9CKRUzsTpchpELR5mKLfbx9s5qvhlNguIG/dAQbdbotyqHFqnXjniNZvKjwvuJNMKWZGkdMYCuFwxB2ipFbK5OJTdbR6Tby10Ef5FLwvSVJTWk+3OFyn/nn3rJTcvPPiNd+fc0hqaD5gLeYStoX+vvFe1CbbM5T0E6gGCTbyMtzrOt++0OcOM7CxcULDyejM+gQrXddQ6BFkA0gsr+oDY9K2myBTykXZE9Lue1pEZHxAd/YGfE2azeCryQA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kfBQkbyDz5bYHJfWbJRiXFCmhS+ws8ePcwvJk+9EivM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OIda7fVmkHAf/rbT9csbriGCI4oUImJr1oC/aICoMZZn+qqbkjDVuC+JYcxwMwoi0L5fCG/SmGcmw48ZOu6QDa6G/Wo8zb4Q6p8oyamz8RCDqYbQSOuOHWlauJe3aemdXqpO9guD5spPuuh37tZylmdQLVutIuaTJOc2W0VIBE6cQ6YcTJDES43hlAKEWBXllyCOSo5De20soBzD9eud4dx9H1Kgtc2KdpFU1TaWHADULYCR2lZCfQULsXFDX5xYbNcm2yoorzAFg8SMCYsn//pqpMK5BR7ueJ4JOLoboSehFm/7zXLa0NJTkeKnOwoYU9gkcbZ5Jm7FM+Hj9FW/yEDbnZsUfOTHPZzy/6fQoReAMa1poNjWGPXaCttEhSMj+C+QFPB7K+YxJO52LNPUUJLRCV2Ea+if", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kfBzDWceZ6ZoBJWZB26+7Uj7bnht1bzz2KYGgAQPz6o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yPIINCKT4naHiDwVRC3UtxyZUEKHlcX97FWHySiiW5BXYPeQXpsxVx5712sVTc5bEyO5ypl31w6F8xTI2Ccts3FfiW4yEMPZUOEF9e7DVBNi/w69x9a6Kj1gti2CtY8sRtIonVjNGIyNGTpt/yTL3lT1Lr0V8ngBPBmO6ZiFEXGXLSDkN35EcSh2sZ2OvF7fHaJIBzROiIHrQl6WMKmOgBZkbpdhgCSH6SxEhV0MSwxouSwv9s4eUXLqkTfWdjii/W64n0g1qWzfk6h5OXreWTQXvdU+hsbRE5TFwvtqhP1VOycQii2X+XwM+4X/08zrcR86PltQNkRssxEaqpbE6lLazT2S6ihgMsGTjswVEmaVM7HQOvCvAsMEsvpFTuBDjw/cwlONBfVcBtwd+Qblq3HJkuId+0yX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "khf5ZThRK15cCLCpuHue4vhUo23daIGtqQCGkl2rUYM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jPKaMV6XKXXVDw9DMIVyrwCQ7ZQ5MceAYBrngLmLCd0RbNlxm1Y73dK9GtRHO8PSo1qkj/M7bskZJibXwSrIGSzqGLNn4f+r9g9/NQZGoKrhJSQSTSxvlCb4lDJ7IrhoHzJRyKZjWsBQYJpXmufhjRir50Bui8TQ4VNoWxYx540+cC/P4PnY7n8i9miKDqynnAVtIK5bYxUYKYMSYzi514uPzj8aaU+gkUpj0+x78rD2GZicmnE+l4JfJ2cYl0ni71WGDsZGYNYSkb3OSpSAuFxELcfdKA1iMAXg+d5ynSaw72vWwLecuRZq248qc/nA1U5QiMus35xJ6AakjydMXPnLvBmq04uk7g4ymXvkWbHWdDzfo2KT+aanZqqOz3xzfPkzYcJA+x7gIKCzwh5xe5r6N1FupcDU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kiru8dKwDvf6oKNGc0ijpGpUIctsNTSpSV7gW4VAhGc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "adc636bDBuWnQn522kVXc63x4h0tfiFe2tNUFnGgI8uypbh+3wJUIOuCA5HSQUOUciSrU/YsAvgvYgRlutBIcmAUXwb9BWwabAJQZd9BWiMpsXDoheDpu8Og2HVYWWJ8rrpvZyHB7R0r+ft+TmIx2+pgGO74Gc6T4PGekkC+xncRq4gXkqUCcnGP4rNeBq6M7/ku1yma7vGEqzaOktEMtvzZ2wxig3LpgTEb34wIJVW3e1B4UFY6INXlS31IWgGVRwvzCk2vCqOUSTyU+JK2pRqA30KklzjP2tPZi2XOLZU7nCwfXOyi/u8JL9oDC2m/nOCHe7XTus9c1le9l6quOf9rQgt9vPykh5fnk8HfU8JUmu78RmiJnvpACQdPVGtVp/4CPMHUs/PfWO1gOGHJYNg69EPYz9lp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kjFBzCet5K+tqPHz0M0jdcwwQOUzPWjiXGM0erZ++XQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bgMlsiUfqJWE6p8GSImSV+PEd6cT2oUdz1TXl1bX/6VPOW/3YlLX/13WFBLF9/KYZOSexqcpChH3aEcAnMLJ+rfcGk982nssLc+NRRv1x1rqx4gPfnfxl71KS771VZ7wLV3sUMWcrRCO54HjE4QLjMcfnTWbNQPihL8ewuGdILI4JgknQW2lDA2Bl8drTyUe8fyYOZdiKSgY5wjEz3EJ/W9dtliGh1AYoeIpLCE8eaZeMxAkehwgmRwYdBBxXUWKzy403R7c9/+jKNmy5s4j1jGzESW7rqvFjjGD+6go5vojRuljbOQfOViIsqH1tEn9qwdg+gTnkyi74hX8x+J57XFYHuSE0gJlcSuyC3ZufGaSom5hKz/wqLq7BRIDV8fmiJvuBE3nnfB1ZNq1U61IJv+RRoiuJBzJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kjwUfvNXy23Bea+K1EmxodcyTz68sS6SMG6XeGGRPi4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "42A0Zu8wkOOMaO7ZHj1YiU3FyO8nE9vF+jq59Izj4ZBd8BLsXChM3wKHX4fjaGfy71NUy31QlDRe2YBM1LYdnXGEYUbOf+1kUmWOyzfpXZ1axvlq2CqHHqsPzV15a2k8Rb6PZ4Wr6X8g1zXDKLzbLyR/7DGeEs4RxysADk4xgvuLktS3dunwOBI+xByzhgzXYqohSEmAm06DWDvLE/jQrFcCzUhTYrzuy70xBeCOm9bZJVeyxmp4Cn1ViGHCR9lAInDyXJ8/947keLLozIgFSUmO8RJq0JzG17tcVesQlSKRwjZ2gf75GTszRyns+Q3+MYw06NTzGTpQ3jAOaGcGQyhSKziFtDsIeNoAuUC8S6S5eUueK13re/z9nrAYFa8+v0UO8fF9AH+D9tDwZwkHArRVmH9FyQXT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "klQsuN1jbltcAMTcsR76gAgsITMO95L+cjFLT0mGTns", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y9iPmzRaFDQoeKi9rGERMjXdXMzZQOkw5hKUprUxDBaxr9bfphemXu/VEYGyV6sk0mdSMAoc8f/7ZlYItPLOcULXcZj3UeSGmc33BMULUQm3l1E5kzVh74cnvd4eZNDmlTcBsykSfHnNFykv9o0pE8whk83TfD6lAkE3AfFVfRLQ8EEjwsOlghb+wVGA+iWw8GGDEDtEc2tyYI6It0IYdTlBYuHgyl2hIV0AdEPoyPOj3ae85/NAabiqQyxEHNFBrdVqMfyEMHfN6xDzYteuhfiE+o97h7XVRar5MS3roqGHgikDieKH25v325fMAFbUIRggC8ZP78Pm1WPsrEhI479pOibLOuy6afLJCxkX6xE47Snz79UtfaUYYkmXLomBLuXJZhUbWYYJikgo7S/E4kgst7nOI939", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "klSeR2sFrRCA6HH4gz/XCnWJI8PHPSY9h31FeJcbf4w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gX8+pDRlwiEKkE663s+ConsJ4pk1qnaxNJlfCA1daDMhr541c0hHXLuQ2wb0WYXufLymjePHoE3rsXBKYi4USCnCPGqbIGUfFqGUhBVkHAisOWjorkyMP4Qh72uLFrTn03tEiQNnkHwBFHr1fDeOebz1SUx0EfrKuRh5cPwhEOl6dC+XQhqMj+MC27t9TN4ACTNGA80W5uNZGPVAejmHqIvmoPVngerOZLuU3Mwtm1cZTugSFmYmwzx6oEAcZScSqFk8E6O78E9m34Z8hkX4jKIYYR8fgPdlIwSQcyxuo2YrhiGjxAj0kk3abUc4vY1aKVhqzn0ETqv67baGjghLlH0nmp4tlAhl0N/7LfjqIoffUSqtsMFNf4qgu3RnRbQg3AlNo/Yjm1rDlrJpMcskg6Xfn/cJIbIn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kmIDeUtIkHBPMKFu2UldJH1L4uaA4PV5GBBUwP+KK04", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mo/DoyVyQ9zwPtTymmklmikkQ8XVOWcXEBu3LIVR0r2AMuF+EiJEKS1mHVErwmkwybIg/fVc+nLmxYBHUL7HQJ0qQVmS70Vx6JNTLpSvK1E6KjlQCimy6GDIWExdPfGKVKl9LQl+Gv2HIcGjcdIuMDeKpBZBjaCdii/1Xe0XVkxM9wg3qHv2UFKCO2vBRh0lnhs+l9CfHR0zOWj5dhQb+ZLaWET/WB6NsuIKr2dLXT6JMwaEz8qAhu8JrQ9L9meN1eRhrsKwUaII21ybAV5oYwTZx+nS8/7QO6Oi4JOPHnV9iCcb39ayHV4jeJcQf67xfUPHh7tUjmeqUp1Uo1a2iQg6zUGBHCzuo/CGPosbUPHeEK/WDsxJ6WruDQl3v+Ahc94riloc2njipo+/W8/h0WwhN6wmg9tf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kmgZ/wvu2o0+dP8ODaqfi27UzAP45i0mqLkqfQxdtRQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4Un2g6jz7KPCVjpb9StoSY5CwI+O6OeIjbSxFYBQ9T1mIaB6bfGMh23InMCn/f/5uB38/dtilUfZ9hmpO71XJl0lMQZFjCmNSwzyTF+CtwMw/fU8NgIIJvK9R+7tBrWa6RuShcH7YXRfTOMOeCb95QpAGII+lZScBhbYQcPnKkXV5kiTNTsEQ9p2Lsbmx6EChZarF2iymcubFskXw2oWv6n/rTHX17hO6/buq1vLczDrWKwTeZPkjo2/th2z6VAyIqZTsj+8qwmSNVShiv2KQRkrvP1pC3+4xcKPjbL7CPf9Nnj4jzsu6VjHgfGXw/qweocz6FLDngusrQxK3P3rorRz3SsWqt9CkDoaVHv7j5WWan0O5e0rqXrRLreiB/s56Feb07pkMlM7BdbfdKxaH37SFXP3J3au", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ko7XHuss3ZE8sc4GFjXRh3v4eoqAo7sne8QIUrzulV8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "maBPDpiMZdxtrDQ6w+WKqoTj1uCfJmp9qmurRH3c02+VTodNto7BRcXvNicR4XSZK8cM1uKOhtQXg+MlQ8ydfySDAuLufOnOqGTDmMTjrkII51DL/ohq//ApXkfVto+s/TQzxrkufs7TJo1xIFRS7YNM6tSwX5bjZoBl4yWIXmcWkfDf2OskAbpk4jRU3M2JF39h6JhtN49LOy0eht1g6kGBiaE3G5QRDf/NwvS3Uzp/G3V+FUj6Gq3/Owygn2bLpotQEXadb+b1jdt8YpGuAic5LPcbG0pleuocawCe5ainX9rhIcYb4I4iCTrrQelUERI31dMiqUtNsMn/2B+fYgZ+RngPXbwFwueTZRwWIXbpeU3qj5hAnHfv5SaKOtBkmql8cMbN4EMoDnPm/b/QtZC9XTFSfUoU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kpJeOYIVDxX8CXkR9vjXyfc0nQ9PCkJFPqRavg50dJs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F4WkRY/9Vclj1otqOyTpMD4pngXkmRw6QIrQA+SkbIglIYdinx2+4xCapcakJZZ0oW/gaA/7GDVVlODBy51fkbUJ4am0RCSG6lBFBDNez8givsFEGwkmRdawBnG9kO6wgEsk0TzR3WuEbt6LdG7Upys2zVWadJSFRcyI08rWT0a0B97+EBCHHoPJmPECQ+yfrXv7A27b5NV9qV/qCAHLWw7M2b/vqo84cgdPCuERUnqY66xwnkkd0QVyNRuSukl0yf257rVrgkjq/LSH4xNVn/i6gKYo3QGW24tXTrTQbqA5YKnE3IYTakaqJj/lNBkF1ZmTR8As1OQ0QAlIyYUktCANh0bA0HMyxN3mgcVYJ7RBhBQOI41DIFl3O3crX7GWfqTlGpyBPLX68NTsQX48SuLZd0/vl+iv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kpR78KVluEuRNzsFCwiKXNpoj3MbAxBzg4hhdxqBUwg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YlVRpUizna753ZTQrLAnYaumeb4/RV5pTSBV9cLkTIU4qUJ0jEZflLPnFovBESnpi34Sy6X7xMMYslUc8MjsZz5U5Gfpy5YjTxkJvf3+JG0g9rzHAQs8re2zP8FWtTr8Ylzd+26TR58e9wILSrCr84IccaACSZnfgY51+Jly6p9X7NH7TN40mZNGHANE6jOmJBqvqWi7ilhsXfibAm3A/0UClpxtCmwaM6Iy18RRadtAd1lS69bAyrboFhMAeAkGnwg4ZROI7hfotWrtAvDqT5MRwr2tuM0n6BryH5l/cuciXGwGwg298gWVuJLD+I2l8HSVHETrsekD/6F8L8Q/YfsIpJn/jbUYWjhgvGQsw1l6En8y6ckB0NXcqeuLVFAQH3J6oiuh6kq98i/m2rjgJw99dv82bXuf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "krWvvEcsHUv3TtEp8WhTE+JSE+WD6RANOn8fxa8M87I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rTlxolewTNZJ8KfkT3xLlYHlRbDjAXlRL4VzK+n6TjDs9q+HDwWop47cFQzXqrT+TfHw399pwM+ERk+yWzIel8QAV79XE3uvXCpS+3kxaE13NkAR8+w5T729s+/jJbIvzvmQpQwsi3t46lk1V5Fqny8yqlrsRFdufvoBWJbJxP1FJMNCRntOEBGuXFQdpG9Pyym4ajzQirTdhFjVmpjalQrXOM5Ni+Z13okV6z2/+83sd3VJGM34y8nvZjdAT6a3KPE33EZwEnE8PqeafsUzvpkyOB59zkTZ1MWpxDEe0VU5jvYig6lDH2T3vNTBuPFOSsbYXuPyETyUQZCDA9YZP52xaqE5lLsJDPcFKsaXQUcaG/U8STDF0JVQS0o8D3eGbWcauyPRcVRnGOtyeh2iZ9zKsXnyI44s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "krw/MIMd6f2++ixAZEghU1L1+79dmEcOhplIXLG3B2A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m2zyf55Ah87WaoGtmkS2yI0cquiuoerPMNwrSoloYFXrDo6UihkXIWcBDGg9YLhA1SFpLd2IDZuPh6CoHEshaYOLsQBd73v65IqKQrFxRt7xdWTx7Jtms8GutbGJlbsYsOWcEvMiAJshwTjMHtkES6QABPNqK5msUNRZchc/+r+voWTe9s2pBr88FXDf3uEc82dDez8HvsHjQrtma/tLNwNQ+aranZjl98IRyTX9AEtw5sK25PCqZ3l+DXeg2DK5IAmckp/33Dj7XLQ11J/BMIBVVkkXZqNAevg3sOTze1AdyYqlvJx55uVLEaDu2qWQ3CXASvos+lsxvjSSoEQGJ8fmQIiwftrhh0S5Avo/CzsmxjotbuwawsWshWtG5Rd5Hbnglh6DxyX8/9gxWlvfHfzuJN6r6cW0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ksqlFcXCUg201zmdbO1XprEmxKI8EhWUdARaQnlsVrU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VaP4NBj4gOyiU2QcQdiO4HPjIlFc74Op0olf0JqHBlXysqZA5hArH9kXiJxK35G/rh1Na/ev/e4pgbl1CenwoAP6fzoff2OrvZEuveS2s4jjiaZ/Nd9KTQnsdOw6ziIZvqeygxo0gj8SR2+nHBwzcqauucs34YOrNOQIQ/iS+dP1TdnfkFLDyYXyXkU+D/nTwzI5MRh5fkBgzL/Z87D4GwoF7dx4jdkG368EOJVUo6f3rZ+7XLyo9zbyz4+Zu01iFUP3eOSIpWnpNWXkUf6sIhGOlB8vvpaZXOnyypQXza+wHXvkm2uAOw5teXpIKw9fUL9Mmo8vJC5Y9RlZqvwU1rwu9JxBdm6BKtW3tIdgWaKtkzsWN5hsqpyjIZdkiDZ0bdug3GmzDFvOncOuItO0iAEqGymy0+cn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kt9JQn8R/cUYl/851DneNxzd4ptFuNKP6QFlPXTXRRs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oTO4ysZNKSA9XgqPDDoug3QMnuVF2eQa6M0i5HGHnGfbpd3jraRwEYLwN5HlDnl2dljjbp5aASo/R+NeVyxo4/lpqRpCiF7HEq6JzJVbM7ARP6B5oHjkpLv6KDFh8YOw1+D73/MhNIgelVRXY8fqwKfaWxaCH7JCPm3pLPWwKqz2j/wdVVJi7Sp9ucqdILAkv/3aVVJK6kgQQKbT8Zf5ey7YmLPoI+d1ykwkC6nOeYblsygMSuFkvJ1sbVAoLd7Qzek36ISyUcMK7EnpCQdQJTZcqcsY5FIEjcy7pcKQxHLzWMsWX/3LHt+kF7llcnzlEUb3WZCBC/36XBE9gsRgN1YQkuEvHc4UGK4i8yam4OPvUP2Zw8aN5gKVw0Gf+hg/FOdXSf30o2a40PBXaXwMS3FphrKju2iY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ktmImP0DRnpFlqqth4aKAILxO2QzGio1gXGS/EN4wGw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YuFl0XGPp8wrgyGKs2ZaB55yoD4/fh3HBY3cva/4dEFFCTFHi4i1p0qudGRCOS81kceDSHoVovkgBqDtNZTn+Tbo9qxiSAoksK5PRG52/IfsK6OhTPMRi4S8ewC7dF7K9u7ZwW4e23KhjmAbjuOlx7q8ato/g5GWr/0r11GH0WVg2UZiwIGnCt4khk3YUMacqLVoP76BSp7h1tzaNhhKe7T7icQcdjBBTCEyf2XSS1SRz7fAlIzzj2CMRFjd1KmVZjCZlGSqW6QrbcJlbDA9nwIUktD2T5ImHNRQuBOiP/tlS7bA+79sMVyFcXCSaSlraNQ4Dnm9+StuEUBwobo/J+TMuuF210bp1HRGG9rQ09QO0DQ2wvZPbcOLtFu4HBPeOin/cR1lwQiAS74r3xVK0s+BuFu7Pj4Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ku1PgFpC0PL4z+Ll3f0yBo2Gqduv7INUU+tRoCkXc9s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "daVkHaC/Lo/Hsdgw5jidlR4BhP1h8JwPjryHJhxWLJ3Mhky6+szhIBIFXxTGs5H2zJbS7MdDeGxmSH8MMQbkNYWwXqjpggWgTPMkhrjqH+kPXvsVyENVB738u+1aZ3HL3rhfigz51+P2NfTkP/gzaBKiGg5qHkiA/8JY+iAW2E0KgZ492Ic0E7Tylu5saZipdwQm6Bh6dG6MfDv81HIMiVq7J/iliSDT/eX/xK6ImALDP3B8vujwHZUnt001/sjcsJz51tEpZx3/4umc+J4Z3h6JC2oJ6MzibDRhQDGCA/hQgWscCPEBQRbpRbNN/QE1N280l4KKb6WUoWV5QeeWmqZ+e/7UieaRcVrXszwahPdOXDruloJPgvgu7sMNLRvcTSLQ1s5NPEV71hyATJdgNzAyUX7alcul", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kuQ7gOLu/gCAmYKkb3gr7OR5zYpoFHZrWFTsU5R2AQo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NC/kQdbuojfMWfZ+pe96JwztYkWH92U0KigToPMDrT128i7x8ZaAyszZJTdQ/RQu9Xk/NW6d29xDcffbXOYmek4XHYeLo8CoW3vZwtoNsHJ7ViSR08v2qVgKgr9L3UDRrLwf+ZD5Pntdb5zefiiFYoRvXo6rE+b9oR/VXY5GbGFYJP/6W4MgZX070C/mTezT71dpLkKkSntqVEHMr9+CXTuEGLth/7Nv+U+4xt4CkMagLpYL/rxcoOqUojNgsdmR1xQuB3aMvUMeH7q3SzKfV8mZqnwsVSxVJmB9oKhUJW7W/EEFO+1b6KRmoWbT5IoZVJ/ooPGtVeSyWg6ev+kWcL5aO2puwofPua9hX6E8G8juGyp4hHRD35pzDpctR5BeJj6RpNriEfsUMO3pKHkZs20rm+jEiM1v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kwZKj5FJmfFJDS68Deexpjnq4raslwkJnScLOo/OHDc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gYnN8tVP2NtkMhAQ1lwkwahHE/QmfnmSSXppTAZProzCRqoXhUXI0T83lZFQ2VjH8VUVoTmGu+KKhYwb9yfR5H3wlIDKksZZo0nL4OjMwaPgrtOHgGeVBnwmC56TULsDPkcjT68/XKaxOqqsRGqPLDQvViNZGkPXVomUJh6YAoJLtN9/xNhpWZkzwsK+58pTSTgqU8Vy1d83C6/gnErT123wQzC6JFTI1dTPKUujugoqsscTYY/UxCFZlh6wUGDGNQx1Hst7u7dR3xDVCV8h0fSPkgkoX7wPLhsNJod72bcRT2t2Hy8CIemL0uH6aiZzqHT96LSLaWKkl9/CU+60WlJoFm9UDw5u2BhjWjwvuMaXWE55pjOeZO5ejuo1D3Yyg+bFrAEXmsaQuQpycZqe+2Nu6XdNnWwG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ky2Vj55tutCxVq8F29yixRRTIGne9FBekkNdoUhULj0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vHWro4k0XZq/+bHNbCtaKvQDnHKmRNkkhK9Q8HFAgpbjhrdOdMI1WHJxw3QNKVnjbEEKhPgzqbkkcHwOXnAbnqstkep8oV09A+9wC25zKGsRoMZsZBNFRPdHwpEiTRU7wvw54zfIf9HKKLPb5IfP+iaQBx5IIOAC7MwxwZ2w8vdbIElnvdlz8whpGkFJyE1XlxkqJLWJoDN7KJBkR86htDYBw3oS6RObm5wHmSW4p0e471LFWe44H7mkKLZJ6/q8BcHN8Ywdxu4NIqAtXAcvEt+yevzGGcg7PwmPVAVcpYAg2h7N/CXyXmOWHiWJt3pUyGDp7fMPs2BFdPhwzAZ9I6XvpYHF6hXmbkOczSAZoJeWbr4V+9VEue61chX+LlFRBhHpoVbld++hFNVMP0wtRojqusl/XtXS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "kz3+MFO8ekDUQA2/l9KqbiESlcnSmda1LmHd5n5LLkk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qTbUKns/OYyiZWrLA8ARoTpD1OtkMpORzZYR4kSlXmT6rDeq4vNYvRY7XDEw4wK/2kcP6I7BBOaVifOqiKGxrSRKRA5BwEjYs2BxsOxUzepZ+vEvUF4U9r+PFgB73CB8/+lsdF9CHP9AOySygW3ij0ZbX2wcr3/s4v6V6PSMwCXqB37jTTaBinA10Nm6cRe8Vxhajj5zXFcSnMmnxgiEaoEFxn5vJER5jJyfDlZsIOSfVmfe8g9CqSJhCmuBqOXB7fz2bZg4RGbbv7b542oE6e5hRvIwh8fQdrAIaKJiiuzldQpnDihJPEOScVysScVRptEEPlYHYstQpAszpnR5VhrmnOlGlTtw4qzNSCNugWX5HmLepMIantPEH78UXRkiqlCiyFvFmZh+4evQf2paRw8FNIdMZ1f0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l29K+5Bkz8q8wQJ7ws1e7ywOCUeLMjZNF9aRaXuWVHY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vY1eiLPzCeFkgcC64b5R/Ke08XMjcwl1qAyxTn6x9zr5WXeukoFLkS4L9ZlOUwzl5T1HEq5sjIWwS+xXPgTZV/FLFwtbTMXPqpabgp/zJ9qC10boaTfI+drQ7yUwHIYKF9IFFW5Ms0Kgo9JAt7w8Q9nvgb7kXtRJyBsOlzjItdWtjI/wbLS7fnizcuhZpOzJKgDumixvqAk9/y8I8fh2Uwy/N8PFSDjrtfN9eiOnT2rxh2VUV61+oq51JKig5ckvLITwcvA4WP67dVhmJwaVcfdpScgYuOPn4FsRxc1ENXJmQrLJnrTu2C80Jchih5LOlseTs0dISGh7foK8s1yXoznFr4MMlwYzU75T/+HaJw4PBNe8wDP6FPKjftHbeqoiVxlWen3iOl9Jkk5r88/AsuyHUCl0L7M7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l3Ck92jVBoiAqiz24urpB73k18y+tzwjOkhouV1Wth0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "upfTCy2olFevVxB9BWJaHHm56g4MOifgSdM8EtAI1xM486Xwo7sOsh26DPNLLHZP8U5hPLJzPWq8M4r5v2Wlz9AnsE4o6a/PCNWcovi53mYIwFe+PUv+T6lJu9eIhMaJ63tPG253H38ZckerAG8hny/C8GTY0jmhiGdJ5la1Ffoe7h/rj5M72r6ekghrqw0ZHtz1F6AagcWTfr9LWB7oyQ3EfWBQc5dl8608PvZrA7/ZtPATElXmQBrp2ljnJ8dU+9ttG217lId0WPAfdlnapPosul7CAqVrojAnu7tyT6rQuWy0zJ1LS8FXcGFWyPYhz0YRjTzUmWZ8EIzYCO11KJbx0lr1IK/8w3cfC4G3NtbNxcYl1iNJsh98EPRCLzuYswKebyDHtOosMZRutHSf8Rcj8fjPg/BR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l5m0LWuxGd8Fsdhyh+bLfuVieyBqDUQM17CrerI7Prg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eMlWEjunao1yZ3YUsix7SbQ1H0CCQJL60+u5NU6bKkkNhoXu0lLrs87XmiFl2MBnsFHJLt5SxnA7U92qb6kFzKHhhkCS4biuzh81AcSQ86oEOxaz5E8GBSfj0VQO6NbOedXXOHeohSbzSebVi7Ab6vHsHG71bSbQ6uDUlS0/ioSkpA/gXo+tfbYeSAnqARzrG8+e1gerlkFlfL8VTSMN+IErsOsDSymSumrS7ZbA8o9Le3SglrYj8ByUyp3erdY+PCRGfGqq/tBP5qlXrayRE9QfP2iYx3DslTkUu/ldhXAC2fKu1JfCZr9KHdEzv/Qkzikfpri5NFnBOlRxA7LdaYUbZxrl9eHXc/Y0cnIk9/3Ej4rpXrNfrlDdGDp5gW78C6GfwxQn7Clkt8nMu0ztm+IU9FJQ4JqV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l5wc8C5T8HfwOkwptRSbKSaABRXSYzhKxoxG3cWcbTw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JrFv+xv2jllJ75nWbu3o3tVOE+2ydgDNHNitVa3tNmmIv1y1wMJME1DV8c/AWcWNQBvCEdjetm37wwBtZD0LgtEn0VFhGG62Xo2mKg0NULPW+UHQ5uakJpBCSFQBDlFMQuDtLH6WxXzPskfZ2auyhUlYVVmkJqvduj5QTDDXQ+NVJvlzOOMmLy8Qras6Lb2yBdtZfExLAYIhPgg4ovD3/+qcj6CtnzBrd5YN0UM5yURgpBFaIJMGa79Un/DQO96h1r4USJaek/44/BygBRSGSYswo5Ea2fPa75XM18UBtykl4QzTgmg86/+Ub9xjFnxsCoRRVaBVMxUR/FS7KdFX2PZA4OPIbE37YgQYAal5rzZbgahAa9uNmVigpB7lpFk+ysGhQec0RUqzrIS9GVzA6Ns8Co8dsFkD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l6IZlRhlvjbcKTNnCN3neDNXRPWnTJTzvPrEHhsnCJo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "32L2m+4ZMdE1jmPyMGE4GZ9DLrrdylK23KfHNaRM03oE/m++tN4pbep9oc147pKFAsEg1/88tS6hQPVvuLMZ+8vk2vCIwFMyfykj8q4K77yJLW0R+Y4SYQ9ycG2DNkjowqHH1U6lNTYgqGzm5DHr1/krRWCOSCz6vBYmazMWgWp2WpY+jNviYUKUEyiA3IYAN7fvCKZse9rtBR0FB6y8x+/hdXcBcIb+aF8Nwvh8veAHInv5q5x4ck1p/KmuVnRZkTTT5Flg00Y8WCKSr3hyc081ahLi9ek5h9b/gC8YiexLaBduPQRoFv2fHLS2Wrxf7Yu++zJiY/++Hv8o4QMWPYYQO4Hrm/Dnb5PUw5hr0oo1ItOuQmpdHbGs5Sblzvwyk5908B1AIyBwCtfPWLVwEi13N8PB0hMw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l7GQkGLJoXbacsNwo7hz2jlwhcnG3Ug8TkhyHHWzfMc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lv1DatvsPScPb3wObC+ZCI41oSbz7qITtVatPms3RoTcpaKNjN7c27A3Ad6ULrHKPaVr59defdWwvJXrzY3XL8UKVhFqQUK1MuSnIWogOBVoerMPWsMYhiXAwQ4Y+FPxOiPE5qToCIIoojj5yxdy9VGww8Nsr69IJcFxvXXnPW4kz/SJXCvA+shtkV1lgHoBt1ux3ze8FC/OlAVwi+RRC7Pc/f2XZ7gvjFcPY18NbwFPpqnhGWGUcPJn86kuW8sUpwyMlJBOJQgq2V1kLk6PDBXPTSv2yXSi1I/oXmTbUXdrFHh3M1wYdU37dw7m4XxPfLLbX7rPqqBBqxaFAl5sgkgfRfmJYUaDGh8v79nv/suetBCzSET16D03zlvn+FjwZtlvlAiGtAIHPrvSs/vOvEP0zBMLvPXC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l7fudnVpL4QcVxFhtLFs/0WUooQ8nuvXHvaSOVfWGNU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ncKlvrn25w8CvlFwC6Giw6XlqyL2xcgNy4YOfyXzrprqe2SuujhbyAw+5OWbKNsFlWcyqRNt2COTZcwC2GDefA/avdZ3ukBbbJkS5PRBBcQgUGQ1+8DCWP3UBpLmSvyBgDKUDqE3K43pyv7MKzGcjBJowLqcPp+6KmGyL483NrBeqoHHHH41YMzGKECm+25cv2iEYa/Nemu8W5bjvgQlkgoVD0I/J+FwuJTfxuBtYTybRzw0VZ54IaH+inONuds9GWTIR6Dn8b8WibbwZ4cfSPBuAaHCddXb0fOvFVhrkUM4bev9j7A93G3bP/crRSG1sEgYwdxhnUPM6wSMvgDnUJIulphlcgImbE/+Dyvvwwtg9QVfY+H+DDB+ebkdN6xqiceKabnzcvz5Qfd2AzB5rPBxubSgetkh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l7ix9iinW4cdH7+KdOYhoHX7AyU1LZiJdnXgEuKPatI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HZO0leRGz0xFtiJTLb0kcO0jx4zQxv2XJZHfJxgdgPDsJf3bCJJRFKHCjlxE4ynusOAuC2LvdYini82EyYAP8Je7B0WT17Iuk5YTm1qvAIOIamuicO3BP9uXc0bTzHC4XDWi7l0fgG8ts18Lmuy9F2nsciSd5Zd/S3F+38aDCrdD4OV+JuK8trcUuzNN0Nvhrs32jKHjD7XPckcbB+lI3gJ1/QEWNHbGdZ5iQqFM0jj1rc6q2yQZZ3jcrX7SZ8ZQY0/lpve3Ze2Iuij06TCssA5Xayd+8E12SbLFPMCdKjtzBtoDtViaZOdEfp5WpnMLlVQC5fWYO9seVBhLEwfapPMQvTjl2MtE/RAc5BuExQD2xJpTRHo5qahFE9bddyHv7yVbfHR2Dkv8jjwkkfYeYlGUWcSRFfkx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l88kzFvJOHzTunyReMiYz4G2Vd2JMeevQbOAuJyon7s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zWeb3xmo6VOig4fw4SyIgqoGnyO+dDt930TFWen49f7lf3f5a+7wpKpY9YEbLx68RABB6ohxGL1xEl145/LZNiRl5m977pH/gK+HOAtgtR/KjvJCuaVTMApivZt0cwEkRjb+7liP1AZ2362iv87uY/kNFeQDYr5NjnjIB4T7h3IWJpFMW735bHCpmHpDXkv1LP3M5eLsVIvwoIoEdXdC266Navl/88kv7FKrRVuz0btJZw6lacNFsnPWnM4KARLNJNgv6DE0mUyoh2V/9rd1VbqVJaZ804tR3ob9hBg4m+wNGEShOfE+4Bd9wjSgVHTrXy+3eFAxnPITiFGLKeVYrZ21X/mZ7FE4yM8empACqcDrrrKrcMRZMV9JZYWSuUFLOj6CO5TjuAgDXi95YOstjTskISeucOEu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l8JBRw4LC1gCHPDJaNAKxiprM+EjdsUl+FpdDZTR8HU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zDMZK3XSTsdoTp0Wl7IbkewCpQkrrns7R4In2L6cRE+/VNK3FTQ4FHKgirNjF7kdoXCcA+rBjvOvOgCoRWNvajWUcbg4gvhPBEDYtIJ4C3nq/YLOKU+d89ioY411IA2Xkj9c7hIJm+bhJnNIidv35G5YkC3jhwVhGKsdAcUF5D6bZrajzDj/UZ+vHOX8DOkq9gTZCmUca3KEDimn3IM+yLYVpsl9egIW3zQ/6zTtoAt3qcg817xFReo1xrmlie0wqDhgkhpkjwXr0lz1gyAlCkRrMaWxRzOGig+5Y0Uir9PnuNE84KCR05wKVXRqGK4U+xFlx0BxCofbFZKER5Z51bbl1H/L24vhDyopuOZTWy07w0wAXnF6tIspCLxAVVY1aNMdk4KziSgjPUAYK53FGNNvUQbN1qAi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l8U7ZFsk6pc/OpqMTwiMk0pocofIc1MiLvwQdfWWMHk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pGykHKePUr6vO7Fwo6mlUryDUfOBuYX5rf/VUHGxtu3oHPPSgRusVsuAQ7dqJOByZDUotHe4JDFSNVfdL6A5cpwkRaqp/VdCIQMP4FeQ16c8Y4xTJQW4sym5cnZXEp/ng/X9ErK5/1MxCTzdyBnTAowOQcwZhHub6NVTRYKjk4hqXGKCLI0jv+qyAf9DMMozpdlTEyFr64vmTTiSTZ/u4PokEorJ/CGpG1uvT0fN8dK8xl2eJF5aaLH0biAWO+qy3jlFD6HHJMpzdjVHBioLbT6zcbB4gwROtUdIxTriSYHSzvLXQ0LfRJXvSGssIfTPhxQSMytmy8BssYvjIhKE+HsfsqZZN6pHYEX2Siype9KAt58BzooDMYEvSXW7lSOb2ncCfatcv74FfDDrJ2FajZPxrDVPCzev", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l94SyRQZ1pREKBVXfFcJokrfP0e+oUV/24Nj0YN/aXE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qvDWAFbhrZ3qi3vifV4b2awDukcuTFw3nD/M8+BotWppjLncaUSZy8xWdE9jVuBhNmMbSYLcwxo4iPPRqKDHHSnAIUJj14tm9Z8F9Cq1wuhk1gEewX/ipmi+WKqcAFGW+EFUJ26cr4tIvzXpA6JC0h7pTnJJgmBHozzov9TawpoNzFJWaX6HoAbopWTL5T+BrTJZD3B/6CXOhdKMLwzj5wbBj+0XIoutHVnC+iCOw1SKNKG6iujcXa5V9hBHigESWvd4XguwcBJhhQLhKOqBsm6yXTxwCr16jiAHkaCfqoiY6/ezFKs8WloKdmOdYOSrQjNh0Cl1OggONBlna1AoVoKJH+fZpDpXx1d2gM0qSZJS/ij0xqu+ykEgbNitxCKUmOwvJDHqT5X6FSKPz4FUUY9QlNbQ63bz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l9D5nJfndk7eDN7yWQHKpSTjRMM8rI5O5QFlvUKf1l8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iKvBsV3tlrst3J5p0u9kE4fMtomDZFqjyec7oURm022Uwd+9O8+O2VfRX9sILD1xDKgg5biSFDFtuAleIJHr9ycq9gXP64dcO56QUhsCwGGTcRq0mR/TzD+1Lel5CzD7Dix1ArZbJGSc1Y/zfJ4WZx2iF35judfrTsVOD10WepjGHP4AHq/H78DIydjAcwhQz3ViTOZAHsJLsBHi2WaWn2whWVnetn6p80Ee2+LrUWrzWdrKOCfANdJifZT1E9V49h2s4ULh4cq6AzwcE42et9r5z7XVUtZHbp91Y1VXCflIByk0Evhpw3ObC84GJWQEtIfQ/b15c0yJeikklFQyD21uaXqZB2/hFr7CbFlQtDkpSBlPZGYRXFT4ebAj6+jQEdcI4DCUSCvFCKMqblxqqsvuTrzya4Df", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "l9FG4kIFDWpO6glM11G47uU2bwq+ve6WdIzqSUvjWS4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "azB/F41L5lGdkM+cze8HMYDAPtar95KuUclPemxYbpoKjU6FjCjQu9GcbsbvAXJHEMVPERJYBQmOn57hrKaFZZRr9lm8ZrCT6+bDaxSXfTwVc6CmI1WA7XTvt9iB3iC9qAWk0BBycAxyebbG+w4iwRqe7NRL5Z+Vs3bH76NDBqBcDQEjCKUTdOOEHUfXtuGl+gBvgSICKxGq4fTLcKGBSrjAgw1SY+59M5y35Slse4mgIWTntPcFh0VJhvhcJ1g1Xd25weRNox2Tl8pL3MjETNUr2ZK3uLbosKboQGmex+ExEUtk2dgjYWLJ90pLGHJi7wAga+daKICVd9/4TpQB+WPU7nauxmWl9uy8GND+7qeOlcVgRiaf4k/WI+gEkEsjZMyO8rBe2prLTS6LedUt6Z2bvVcb8aOY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lAuDp4ftY/Xok8jWtCgos9acgpNOVZfuN0umJMoFUsA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "n4PeSq42zFKn/L8fjmbjiM+liPIpgZJ4YecOTpQ0culCujh89TcMe0Q6NkVVa5jnWPag4oSfRy+4Ail+5YoKJAH0PvkUvotQRW/HDicmteLAe7X9hniCAt0QvzjMpsVMmzoGWEei5zHr+YedjkxW+7GXORnY3G2AnJH8BjE0Yj9xhIwIagPBP5rVGk44zkuKKMrGojctl18KvFv3RtspRfls8kTOIU6vMIkM0IHhoH6IjNKkQszpmrl5XpbsKYKOoZfEjG/D2F1MAyNnhJuJHNccsOZznGu2fEHcWrbHp6+hrC9KjNwD3qiKxhrjgIc69q/DXl45X5mnigT5gjFYv4hPRxsLPr12KvXhbi0gYqrRL3IYfJ07osRaAIXc7AGxb3iok21717C3j7gvBkjUeOJeom+81Nyh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lBbLyuE7owHHTYt3gahqgex74Kka3VrgU6gYfhI5Dac", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "weRPADUzKu6MLF+/mo4QO7aoMuwqRKIdWCvAyRbdm/5fjoQ76tyULwqdLnG2zudgwF4sMjpBOeMAhPMNyrK0AzpiiAzzkCSR7a9mhr2IHLYBumKZ/Ke3We5mawejIkP1933GUC9hASQjv4ID8yNIOLTZyV92XMpde/Zkl5+QCSND6eW0ha122KP4aGQHpd0sEaQfSqz/DebGwe9C80N5kkNVPAwbdjdTndcYfqDReQWaY1pecKpdki3CQBNbWqKmi62IVA7uBxUW5RKggu0FjlwoaOHdXlkF5mBu/Ysq6xHmlIWQr2dMyWp2dgKzpm5pVsJvj5wS3jZH2xcmiPF/DkHw9fdDM7BXDIYOl+qeszogqAyfH7czR2+9Q3WverpTl/kIo2ebx+AQd0UlcxI4cimfwh8gwFvC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lCM5H1ui70RMdYSakirnn1NRmn5oErx7DjLMA0zf6n0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7AGu9O05/K84e3b7Zkdc7Mvf2LNh56RLYbJ0HTsRzK+H9PgyEizcbdmhF4O45idNAJCMoeYlCtmRA4O34QyU5YBeXcH2BFrNb5w1at0YsdJhmSyRdYDY5iDoPh9ZFjGaNyVKQ9iyB9xxOM5zh7MGa1sR/d2BiLQqapVy/OOCBn6ni+BjJpnFdHPrjEl9sanhUrHVU2aWZUn7RAaefNZVfSOLUbUfpZufaTubRVAwoU41LOtw6QvHBL/THZkAzkBOP6SeHX2AsKAWwuzEtndqDG9lRD6aNRPsDW2gY56lQXqNb/R9uuF95seqOTdBmyUQkmrKcz99BxQ4hFXEGhVhIdZojPMPrCo6KZ73GJlWwMDtG/gqkyegCxFTSSAMhGnIfl0TEE7HXpxxFmMG93HE7E1pO8t7+K56", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lDNVcZi9u2DpuVNE1y9Xp1WatshL492eXH7h3W1GMTY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RIr57i1KpM88HDlI8sRF7BhFPSjGA5UL4auyGbHMVyPxyDLLXnmGmppJPuYGa7RfhGQJPGAbh8dmRIwuegaQTZKKI5By0zd/ZxC9n57uzW82Gt1bAu8u7sdrVLkWvFw+nNPzff6s7zTv1PjOMJ2DFzd/J5GHi0arRsPKJ3WkBGP06HO7P0Xdm4hHCJlxwYbE3qXJ5V+XQeGzmYhTNYyhMAnShy89c/6Z9SKlPLazUtQqscI81rKK2WP3lvVXlCaUKie54fTYIhRFM5v1BI408hPETK0B4K4zGcP5n1OJz12gmS87HTPRX62+hbzfBV9do5KRVHBWrSvMaucTsTeF1GhMF3OOuFV0WFTWszUvY962pJgxYMNmbTqgqtD4NE/gYJn7GpMeJn7kF30dtqXiUCnQdF+tuw3g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lEmIwqgGaC5NcvDNDacDlLkoIvr5+lGLc5L7YpQvsBc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RaGn214Pj1QKm38ARzHeDsjPW7n+zfuHo5Hd83N4AdlYDMxmA89kqqzAZX7e904Ed7AW8bQLXmNia2wkC3hvWuWcjEf9QoiJW+0Uik0B9lEkP5tMt4vqrpEo6q121QN9qLg++C7xxTNxnJuE5fNKNeig2BlTZtynuHixyV5xwcWzZAkPMg3lilBYBQF5yqO9MvFJ03aC/ead3XMYqLTDhFVcjbYwQx+/IPjdRcb74AMx65RDTOnkaIjKVs6Trqg0DQ+4r7u3TT46zD9qrCOXr7Q0qnaIVJ/NYgRtZRVkHODo1IIfSapsb9VouQB5Hfq76ilvWJt6ZplV/H4z57clcZ5pDQdCAyMpPXxtmjTNu6d4U8AL++VYeg/ipw9Xj7sdbuQMmrTmaMGf8CaIm0c3IZeNxBenWZEp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lEsBGWm10Rlwafd4ni2tSLT4EHaKCv/WT73jbN5jTno", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j4eVAzGy9k7dcB7zVNd7yUd/lB4XfXpWnpZli7Kw0JjgV9EAKIPJirNU0yaqDf67ZXog14Ki+h9y6YiFW1rjRTPYOFOzs84PA+Qjz5xDBVvBDXkDbW2kVvTQeMWbPeZI8fy9Y2VBg+tR6mP7w2ouMZcv+OrKnwm5e/9u+KVFNgWtwPX7G/g2ui5ZpgqPxajT2W+x9pY0tN2SQKvjx68O9BuIFxzIBYV3RKa5rD1NSZzUOY88v1B6cknbxgCfug36zw4RdVFEbIJLLc7eg8DQC7H5Js7kgNV9ocoJV/JVa0aORlB4KDFOPh43gCeub8ZGJTWKLSGri9wkqY12R/jjvxfwJVdEDmgvpItU3eqEgkBBaA5tYjbCHyLY2jT9gGOHVQiCda1SxUy4G76QdKAHn/azjkaOkUGI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lGA0+vgpnZKT29smOVMNkzjBtUUGCqLhK84YS2N1hUA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "umhMpaG7pWOjft/fcIFMZYuw5lo35zgtdIO7DAgGxlfzhZOO2ZB/cQEo8XVSi9efFEAlu4mhUCRL5IQLOzuDIaQEeakVxGE+j2Pr3UUP5gCrd96omaW8BGK6uojlzx0BW37sVE70IWE3dCZ35MMTlIcNYs9/wghBdZcdb2LTGsJisqNu2hX9U+hfbKCtBGrmwnIoHNZ4KrqseI7DjnXhL6f7NyBCDJCOsLRM12nbT2k8176CaY8n0hSuFA/CEzpSeNF7X6jfF8XKkjTiK0kig3B/rfRj/dHvvxnPI4w0vxSUQRROLZNIO5/ludIfZh2At2mCwG82REWJ7w+BJvwZhQ59ktMXkIIKw1djZgQ3bq1fr8k9fbH3hISs4hRxfFZXycZLr1Z0R596f2kCdAnB8MY7UXC6XgT6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lJacyrN+ch4qE0Z3OrFoe1/8XAE47qtyJ7qxwzDZIAw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y205w3pk5r5NHUikl/9bTHJNDjGcsYKoWC97MWNlFbLeIcmFOClFeB02ppaF89VTGt+zbH3M+duU97sx0x+e/gkP2aZ4+ZND2FvBZpokIbAIfx99p+p08jVdWBe2lZ1hEzMrHUcRk89tl4ZiRyJ2hZldLi6FWmRUcd1ltdtaxxxCacOvSOXPcy23nDtQ1H1J2BZBEpdGuVQbfmWvXTn+qT5kO7W8pH5nmFJjyADYVn6gT0/XbsNc/qjh+HhZA4TFWbUOKA6+A8uCeqMBUE5zEpCKvpjAG+RGVMqcAbdd5y5aOW68vNFWBg5YeFYNe1f1R7CiBu462AyfdgfNJUCzK36jb6gXQtr1HQyJJ6WXFRZiVyVw2tv9RQlhV8BdxK1JkmKuE9dO2HjEfyienO1LPZxcigBzFhRB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lKzEWIr+2yfXB+oe/J4dn5uHuVPQZL5V6C0iLk1aPBE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xLrukRzAJhcKxUIAa8bwTu5owhd4n2K0Pz9khtPlX6RSWG06A/zXm37GOJyt8C8XP6PnKRDFJhvY1zdAfDPv94CZ06szagh/+6+BGioXTc7pLZkEn5mZ9EfUvnC/2vjgHrvaqXyOERElgtjtWw+Yd+Hc6Sx2IPPagI2B0dLtWAvIkAPs8DcSO68ya6DZ7mFvLlELy8aA2ew8dY118YfFm8MGzqG4PUQE6XhViKhJPYUIb3hhyO4vPEBzG6xa4S937G8uuOCEIuw+KRiss+SI7ONaze87e0Zb7rt+N4Yz27eYfWdCBMI35WuwexWP0HDeBJykv/5HZzTpTJ+EBfIkRUQYushFfoktbdmlIF6UwjjJ4JG0gzK1OBag+h3UqLYwqNnXjmK0FBhhrauEzAPeMb5g7JZuTENh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lN1qmKx3J5hdIZlJAX2zqp0Vkg2wxRrrznzfAksGxEQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/GnUxMSHDYK+ofj2FoJKrGWt5tUNi4JNdJpiUBWze9b9yQGOGK5r0M4Pqk+3FDEB+0PTJZS0WQJFoXyhBVK6xASJiz6vVwJ5ksKGM985ZZDLzuvrt1x4da961NcdY4ROYCefZbYhBcNBcNZ7cu5M1rXNPcl18MOG0isu7gzVEnUnSsyaEuZk0QV/2LJP+JWNvCOCeupRi8tmP6l1+aD4X5nu1U32TFOGEG4Iu5iZF7mG3Q3fyWpva9t9tlTKFDhcpFmVbq6qNg76QmDr3C29bsCpzOzcg2zq2aJxKX5kWhlCpd5nOu0K6uR5fjrnBtauakM2i7mpFWQXttkdoUlRM3kJI2Lpt9HQOuwWa3C938LcXE58KtKauR64dIuaf4yFTm/mVa5MkKWrR37/Cfc8dbWiyAMOG2vm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lNFnW2qrwxhHrxQDaqDVFbJ48ry17uAVALVUzUWmj/0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ehRRIFOVYPnWYEDlnVuJzQoylXxQHlwER/WjGqWy+qtfDBJpCyhHnNXufxOUnCw9ehPhcga91ceenyVuYIf6c/ph330ZnQizreAOysfe+dkhgnulEu50M3sB2Tyb9a98nEL1o5+CnqOrHT3VGyjV7gB4fpimq5J/f5vBOj6UdM0hkrdGKz/vB8I8qK/W635Ltizs8t+VVrqWYNL7HQLjj+zpQqc3rZitxnqal9ko2wHGEWR6WVi/nwcsZC5ULQA56Bwozpx0n6R0MLMCpwGKBbkOmJE+q9uW1MegIvAYg4GM/uKpkSj6Z3xA1mXM10Rvw8hZ6yjiDZVo4INlZMzgU28JstdV8JUNpeT4Rk9yweuNbTHngDaDqa2clS1OVnqIk5qqrsprjNXgaOB2m0HrWGF2InHInegk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lOcCY2/i6oEIvukkV1RjoP2XKWu+cMjTYibzcmqrFQ8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LbiYemcZPiUX1bcZLI014kQNwZ9MwOcoKLpxYa7YCtiHcQ+Ml0hf2kifgYjZiwdsE6J7jnlgldLvNbzYzaDa/+eYBD9wcLa2v7xMQFaD7ElZdFaGAbzub4XQd0yT9kEl9EF74qzWZQZi3EDqR2nmjuMoDhUJ4zRWpqWee0GsfTm/ZTqwJuEVbAIh/kBlYJQZ5RYpMjS9owkt78Hi15c785F2wdYuIuitqV06JmzEY5HF+NlwpTz04f31Pq+fCzOqEGgJJcRN4U0ZP18Z0/G36EggfBqz/q7crh0tCswGV4Muas1yyMdtNblLZL7rCnQWR8044s5JWALatMN/sywmUXqJPt57e4LcaMDWhzHxN0oEbUBaX+OUwUj1LeAq3Qr9D6z/ctKw5bOizyYzHoaWTX8zJdcahiGi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lOxpsC46KIEJ+duf9EMqiaLUga/qzURykt7QXOl3lR4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RkLCQMBP68mfPlzWbj0zDq93xrd649imSaV5tiFKQNjbzF3VcfVamsGKopTch5+7BHWZFdgX+yQUqO/ilAhSP1NEz4his54GxVjf9Nh469N5ji41MYwi0evGYwOuP5+RdIWU+467+9LB7YiIA346CUKqEwQ13xkGxVQ0JcHFRu7JtS9N3hZJ/QT7Npt5OP7IYxFypr5z/qr0xMvDNYE7M8549h75d1/FvNNZTiQOiGCu6GnEttoNmFjbbZ7An+roS4/NP1xfiegZOW7INzWAWVcc5aVh/kHZGVT61TE3fxDhHUr7dLVMZWxJADoEjFjxRRgz+AkRTSFwO/NzNsSlKYQm9LXJQVg2p8XBHcjatZHpnLo6bXj2HaSYnHFP37ztK79BonkGY6/3N1NN6SPLUKZeSX0THk7f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lQbECgqtw7Js2xS/8BN5766HGC9aDnN1V+uLIcVsGAw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pIJJES3zlQ9DTkIbj271uQem5FQk6O8YtjfPtIpyMhh3IxX+RBehkcSeMOzAOLt5wNrBJ2xS0xE2qbThqH2o0bMsghlErBtZgzJ7NAlxXqlvaWarLt06eSAh/riWCTOmXhB5EEUZ1Jyc7UPqlCavFBGNTb8ckHPGu72FBO2Mp/Wvpgrvz4lZ3mo0UbifGhQhTQtzB22YWdl+FzZ5y/nBDXq6WajJdao5nXP17WPqGKbUs14YOq+/55teyHMsXpg7RjcCAYRtPwbZfIX/b0PPI6BvaDrCrJqZhshw0VRt0CbNeyWTI3/xQcB9JTNcMLpWB54OZVzTdhwVQ1sqfdmQAgsjG4pOjjRTxoG4Grud3sbLKMS5H2Av5SP17A5ZnDXEM3msevxEeec/znIcCNtBTf1ZFklOYPgr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lRpVV2cQ6x7EK4Gx3MsdySVo4TyAxCO669g0Q0bpxz4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "O8H2L3WnZEFBLD3ypTv70OyLmG3lqLn/LWCyVWfLDRmiMu6gVmSwX4ZnUet/QUFXBJI0TYCVu2OEvpclKqSfm0wowVkCRAerOr2OdQL/KyoFHWbdVb/2tphBWlgYDIHedDbGlkd/WguAdTcWPOvUxLE31l22B13XA+/sju2pvL03u7zKYoPQzqnVOy2R1LeT/wD60YpK44q4i9JiS5yh1I36Re/GoAALulS+5OZzSroDKuduiMdhmBNa8ptQ1PbIZzrfliXjpBjbZ/nYUiDwLEdFHJj+UcDiguiH3wb86KXKaongwOWFhCAByMNOW3DAfEUDS/7zEUiAj8WzwoxEtycVl0o/ZZtwBNfEcsaUKsxx5t+jXZPrIuUQ8cCoeEoulUWx+RnRTF9GhS1xvHUhNeHS2bWmRW/z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lS+R4wmjY6nRMslGPQQDJabHzwNX/Rd3HgzOJjP+e6k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KndPrsAHgUXR0+TBKN3TdtjcFqi7gYNp91wcFynCXGYA58fH0aktDERZMqiaTrFuc5LXp9oR+q4vilm+ojOkZ1YLe0h+5vZ+okFBI+JTsvsDcmhROxioUtUeYTsNAbFiS8c2pQCWHq7U8x1TejhbI2wrng1UhWkfsInxqrNDMn4E4Ea+mmCDb642I8FTUEywU6KeFOikdRLizCrZBcCWyKqk0sgErjHFlgSw/Nj8Uw6BbvxB7tHZnpBEKKBQq1JjkkRK+676yYKGYuNDOSq+bGXhGBznbgXqqOS5pMTs4hbxrRAiq4OMHHtNKAO45vQxM5/5kJYh756gChNF5YeS80CmJa0biYjwXLm0cMq9LxQhQ0aAyjihUBLqDh7hoqTD3nEzqT2yk4CHh/QO1jMXaxLaaMenxIex", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lUZ8AK6xDLK2xeYH0RsXAShprMlJnMcyfV9aPIybaic", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9b9+lHqEF+54TrNBISARCPvN089gXQlxwVPSDf6MqemYIt74imB8pKk21DuZfiw7X1Wa0UpCp8XfvnWjAJCD+WhsfhI00keNmz8wQQ5cSFjfzVjQBlhNFBio7P1AIRPLbtfhWwphaGsOa24fnRgGQqc0Fb2X9mVGcfQtsQc55LjRoBTlowPU6dzbeAq9lEjUzFn2akHYHi11U6Ha8yiQyPgMnP/M6byyDODnaCLV+DZ4INSrZ6RyiAo/XOLE1YmrJGzkhsN4lJ67i2vWBaLfxQ6XhbO9YUNJIKbtk6lTPNmbwLyIajzE4SURvMH+Bwz3CIrDYLYWUPLQrXyKLzIGkNGKO9apTqm5cPu0e8rtbveUbSmVkhsozy6bc6IlvHTJCnH7mlXPAjz3xqBijeQpVJIYl1IaHAVm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lUxZnOon24pw1YspWP4xCp/NySVxS/HGpiZZHzlg3P4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ws0Kr3X+lm0LGiRDNHZUAaSZH/jcBZFFTptRtVSnBPGHr09t+eyLM5gYdfHFbtFnmQ+H2fzmsJvTXAVMKXYK+nORB0jiLnv0TWfxD58Q+9CCv/YKNQX8QhBQrEtjZremDP+BvZF1Zk1D5ZtRtBQ5CagY9jYeJP4sxRZhJrbHpclKXMiB5lO9agddAc1SICnXlf6vKMy4eP01MktY+wl88AEambVH50imBcxy9KXZUwU5uFrgPLTcZBxYt9xikTK2pngjSORu5260sPWMSwZ+T3bSUii5RD4IRXJR5MP+KSt2HkWoN2XcAWiaR+pvhx+MfCVEGOZ9aCWmWEMngHvSzN2UJns1JZApsK9gO2Sh21agIlbQP+DZc6/4yRlF9kQn8ZFjM7h2Lr50/YEnnGGqeoHPF1XWLApR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lVucBrfY+dh352qMx+Bkr08V9FNTievOAksp6z0C+zA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7YNXlLC57ARxCv7yWUZDNtTai5HeL6sPAPRMdwm0wDwiYE6FwjJ9WN2zi5u/WnZD/gqTYvzhLIIrUfnRsw0vxGqi39Vc/lwiKKDV5bLuQnMpvc/GUjmTRP75IMGKkFzYU6vSbLoTP2nuxD9qvcjUwNhinllvToERyp7Jcdc7BfZtiuhAttKT8GBeffwYDYx/FjDaK8EG2L9XH9pVmYn1v5pJzbr/f5BKHQm3qx+tCz1o30hp3ukijtHyWJWz81PkCsUYietgK5+oOdSsmxIREToHRSGbHgoawCWX11OSN1F7n/j50VH+I4AMUlaaCV+yNsFX+IJldMt1PGglxQFPSBj3xosovpP19ut9iYVVT8gUtTUuD3qoCgC+mlXsydwCaniEwY1Hcg7btqAibv8pHGuL0UM2A81+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lZ/2uLMjz1wTSCOzkM5ihHSU2V9w/fGTj6ctEav5bHg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KCb5jTGzIM1jvEv44eRVhIhZKZiFpoP6Rch1nvCTDNsB8zi2KMcUvbRhEu/4e0DCxpBhL0W2eP9GswiEvehD6/MpxIUa7ttnF2dUhxaohtbzusUJimqeuXdBKlCMIrejHRq9SZzcbQfHq4ngFHcI4awxMcYxWFXsQlODcr/+0C3MkYLPUxHTY5gNOiBkK1JXY+uxxzfDx70CmBIdbw1hxcMIK/Vx9S5RcMudCTTGX3OJOfdld/MeJvbBT+t2MPY89BmcOGfquR4Wm3HAEyhF+ennDkugUHYDa9XWSKN4WGJSgziYDCt4dD/WKZsmkq8TovHUp1i2NSJLjIQwFIvxCgGAs73fNliQdy2w7n05Clszn5qp4ojlclfYHm3GPTloII2NR3tK/woPCligyyKSc6ySGzatOkpj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "la6ddzSPB3MXB2qb4YwJSiH6Ux67v0vBljRmF2siRuE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "53RQrxSHT+/TYrKuyILsl4cVFqDRguEuhKTgW0eBQiid5aJ7wP5uWnIn5peQQopcyHaKi1rOVMKR12RnzKdcwtA4plKaLv1/sENXKi5rPeGUBztnteddZERemon3c9y8OHhB0G/F9LT/1bDhIxYZXqGzDWqRHgyk1o09/3A7+OTuV+c/wLlOIy/C65/KG77jxm/4cZJnB8zhVjpyfQ/wMWSx+ZySJUdP3GE4D0Rz3WxuBoD4q5R4c7TBs+zfsFIp9TRARVudhAi9Hb82zBSPKYOSUzg81J0NDWznQYm1NQsswF+p85m7xZzo5IyziQNwo8u6hLEFLB4rNBaLAQ+6LFIiCeN+OfTwdJ+cZUpPsFr+8Gl8LKM4pdg+Qx/9uJj81YciOqPu+oxbmIL2hyhrtWW8g+0Hzm88", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lawhq0MwlstdOaZVQ3HpypRZpUw0/7JDBoZN1EqPVko", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vlTYw6yNcoYEXdxuB7BSQ4dBA/NKE+w+kkg55CdZzubxWQEiETVM/CnSQwCQpcLzTmtwwoT/qQWOABkUKwy+1+KhcNDSyenQAxpgdyUS/cA0Xl8BGYDgdQxXuGW4hJX/3Paz/JW8r5kWJU0Pf7g5+1aD71tzTo/cYQKm3sHiWw4k57cnzLfJIbZasxf1vn+lG6xlyV3ASeALBxlU8STavdaC3mgsC36Hht9Q8DjEH++VHViliCfgmzkEiO9KJwvEdZ+n/TjYwIVzjSbhm9I1/nNOXk0zKWGogOsLPa0rotl+UqSZBz8ci8XlpPyoZwg0Nluw1jaif3YlBEwOpjtsomPVgCon4ct0+tFrmVRduyJoH1z1cZunNF9axmnZopRgKBZXAFba1U57fYMT6jVTul+WVGt9O1Cr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lbf5faiwv+l0htlX1V0vx+8T7EbGsnR8ZqSMYbbRBYE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0exMUK7tCArBAfnZHQA5n2OWp/fmriLid9pNxZzMTQ6PKQhpcyO8l2Rw+GnLKrVaBpUOJmY3e1Le610in29bLV3/UmeFISFaD1GvabcTjMz3J4Eg1hLvyhasbKGnH10TXP+O3qWsY1bem3YfyrV1Ie+WjvUAVGVDC4b4buwBZxPyhCUowCUYI6+O+q+viYvq7gtD6jlz1Pt173gNutFEwZo0kr13JPSYPVNKmgdm0Ba1NAMJ/9VgEdFSMoF2fdFqKkh3H+6dlTwna3nu+XfRhnr/TmClqhXxX52ForJkIu/EpHsrsbHUCoQzd6+lNn/xwqhE47RxXuTR31GiLpvN/eMGX0KwGyjPB/6wbwxmb658g2rbiRHYvdUYOM2E9JV28Fub5zKLaJvSrwM8AvE7o5l7lTIHRHJ1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lblxNx2XsbDfEyWW0AUoq9WQLiYsDK9cdNGnw4ji5NQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a/ereUNCr6kU81GTZWdIhz1spHv44vFdnShGhQbDK5bqcxtHDr/z05n9vMGV95p55guMexWxUIJM4U2zoJ55H522wF2DWhrHKonEWlwVQRRiyLOzjzGYdVlXuDpFzs1j/l7uGQPYnPDUy+1BfOCP3AJcbIrDJk4OLTZydhXAEV9XSzhfQzByrN0n2aueu3bWgiQGsLlfFvhvSn25wkWofPF4IosMxx3ystMPm5qS7SYs9zgX4Qmh43W9DJ3LnM7gUOR2SR8ywaE+TgnlYe4v7rlFzRJ+vmF0KF81NkTzUovC9sZwl6RXg/b3ACJdYO/LtbsedvFUaLjR3GmFTqJqXYoM0jB8IPPw63/+mTSxvVsAI3u/m+eTnCtntxYundgUfa2ua0t3Dn6QEXhxanKp+haaKykSCtFU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lcpDauPCyon8hNGQTunJJtMutjG0dgTULKDClCgKems", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "07H/ZM3A+LumbxTheRpewRFXWAxXPSFzL//7SZUWx4QwMYUZ5HNwPbl9hCSXim3bdLDzb8sT/nV8usyF+05iYVOe2SX+rhUSxT2QyraWd+/QIx2s8dtVKiF6RwtQqFzPkc4gaVzJxm6SqLrvcY5psfmIDgY1UPDPTqlSSjxAR4PKPCVYr4W1jsQregEQoJnn6ucWehoq/HhpBN/GUgl1hpqkHvgvuJo7dxWTUT44B2haZOcj82kaNiFvMYf0hcX0F7JzX2FoWvx/nJktTA4jz9GCzBldYxTGogSeVxnm7PbrdQUH8Aa8qRMhzg9iaiBrgR7yIbPuPWKUz7DLKtohVUStt2HYHSsqwOWZ+qkckydq2nyvkXBoDPG+/kqoblQHn343C2SrRYVlaIzv74/UTLKg8/iP+TAy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ld6gMcq+2glD4f8AQ3ulMd1IYH75x5A23KTEw0vnnXI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TgQPD/Iyiv27LJLj3MkTl4wylDARwAdOLlnxp10wB/7eoF/zYhJj94L9M/ByKjNRoF3+s4jYve+k1tYBbbelEi7nyhnigPLyPb+b6yhqI5vx/ooWRa+KQENpW3QyKufY0GCFTpWbxxNUIzjj4hsBw8NJJU3Xwq7sUQ2a/9G6KSW61JhRpWexiJzGD35JADS3f8I0HtN44lqPpsTP+j5j6UqoL9ktMQ5+CLY48dpPUonLPLGafXl6UiAeTyBWp1+ycsPkaTtH5makxQ/HrZJkTNmKzkYle7Y3XXa8j/MyZJf/lfZ6ODpZs+nPs5KRGIdp6byCZeLnSDUZcstfxboALh8HLMrvQQGHgR05OOptg46gSy1G0kRnx8NrKi2O8IequcBu+yyBTtg++t15s03yjUeisbfRDCgp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "le1+WGOHA1A8Lm00RGqlCxeibsUYirOUilSM24bEnG4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "viI3hdCyiwS2Osa9P2s81uTVlf2E9IqMML+5zML2rtfwot3p82sgib0U1Bk/lBbHlVlmI5h69XgmLBHaDYet5LdDL9sYGH6Og2m0KGfj+EdOGUMt8EGR9NLTc6Mw48WUKNk0x0VDG6Nmwzd5jZxpbMIXU99wx5mTgn/199el6OVWLtWvziLpIg+DfMKL39fwVpWlVBpRfoOJOcnWPj0dGXCrO4TfRuCk6V/nZ+KQRknp2taVRS66Jil4irpbPDDvkODEHTHghdbbVjwgAsEv3DRhNtU/LGlBTMdanAT/274+zgKTf4n0CQz0tpPBqoMiFup+yD8K42MoXdIBTHJCjTBHCgQJMovuGU/cscuDIT5mRNZ7tMF+uBG4o2sUPxxzlFOBBM3nOfju/A9Na5qQoul/QkYNf8LD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lenG3YfPgDT0lXhpt4oeShIXPXpjGptrKHpVFe9ZT4w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GF7XaFsN8tvTkXqA9fdYRPrC/4npm5TxJ758Q90B59eKBxSsSQwdK++ROHwJMNOnwdYYtQgfHBXqVzcRV24Zs4Rfq4u3P88ZTVHEFb6OjY1n1lmc0y4pC6Ftt1SWoJ6Iiep+9RFmd4p8+BJTEfLt+50fwcL970+VLJjr9ABPakpV/YTOGk9GwjZ+pULcuU4XX5bCKf80x3d6a3EHyNW3ggRMsfWdJM7B/EGkmFf/xJ1Xcetqr0oOPbjMoqGreMWU2DuTeMCYg2zhlrc+bUaICXs8hyb7K9IgyOwv048r5SZ9A29ROVQscmYejAlTMEaWrziaiJpZ8pKEPVf9aiMt/LwTunOInW461nZKrFbLD/omNO1RewvVXNfP6y+MBZqs0IIqb+u0vt8Pw8n+fdb/CAe6Qzs4o27g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lf66bT62ChJJcvrW2cWb6H7EUrojutT8P69jAvZwvj0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Z4lL1VH2o3wvDTm5vhf/0c0vztX6DHPUcI1c+vXqgp88ZAjXrG5Y3wmmmUv/RliWBI2RusCuWyEpIZMd1i25KPoMnRy72sBV+ezYbqrSyOPB5CrUgJW4WFh69Tn6pLpvPMBI1LfzJeuAy6LI1RcSltbwvetqolOWrGD3snF/mDmg5dDH8TT1ZMQand2VP31KEZhXOMKFX3JC2ZrnI8eo3etZLqi/uwgGZxwjcMdmbaHOS8sOJcnfyPUiFggsWRf8hi/7oGbcZBESQU3bBIR0BrMRtPfNdHKcanQ3pna8QEe4ua9iR0Oqgej5GKMtIqcjCg9/AQVQTI1g8Wd3cz8r14TzPUOOfNpuOf4iKcaklc2Fl6FHkkYbAaglDsHORopeFMiNPSWcU9d4JurXlVs9dL0NuA2g9p2/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lgDZpE2bYw6ogG/0dYrIKW1PHxWwLJD4cc//7PT5eig", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SQyOeOt8Cx3K+9sgWQH7M1BrLy9uWADLMELWQRkA+fXeMsULEiEltPG4/xQcHZR316jhsE+zg5RFlJAIyKJn6SK6YXx4GSaeoW5OiFdvCQNSwfM1Em5EU8YL6KSSWjiGOjs23BAcTU2sGBrL/XpVu7wznaPGdfyBqSeKda7M3nn+Fnr0uMy1AxA3yNDuDIq3ZilcVBB58rs4Si1sjLwkO8OlIRsdFTVyxZPN5KNrR8OQ+PUAlbWCXrX/qfINNYavxjoGx+Fmk1/jU4/3TD3ZPde3LNrni2J2LKLZevRvIpzUu1ysg2uHGHfwnaKyVgz/RKa81dt2d/5jJykm/E/TNqKGmLWr2LSmynEv6pjxL+ALNgLiyDspmFqDT1dhG7ayrZwqb7TSN7qFQwIqUQiPow0Vok2y8cIS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lgEVN9kz5CamtGNhGTa/3+XaClkWn3qPKpe7CtYoBxw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UJSXjIGG8u22QDO7sTs4+v+eKkfkYsqgGA1qTbHfDp9+3Bvio2TAWqdQ0GuwrxtYG7XzIjA66mGXwr+s5iQkPJ3oZT8onxrubUDePrxkL2Yvt62onaCgN9pblZGhokJC3cU80AJkkMnbEWxRT/CiXqk6nAgHYgl6pHKaKLDDLIwPLcruf+Pkde2hQmn1d4gE+gzz0voDWGhRyiUZBlu8zQJQqBNVn9q6oWmVSdOcoyweYgHiVJ/KdCh//PCEi6zh4byxkEGm8rexpO0KAb7En/smraoClIcOus14eSOcmGEhCVW20whvO2qv3zj4lAlS+ExKwfYZP3FG6YaMSZDM3wHHVFU22UM4BX7On8/om1nujk10QDU0eMSMTcQc1dfnZyHBRRE+xxZIrmzELsSIbQm4UQWBDkXJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lgyp/CVz4lY+g/8+IuMCvigsoo+OR3QLcXh753oxJoU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Z6KOGREHeEO6Hlak/7OR8p2kUX/q43k4e3tqIvfgf3oPP9hKPWn8QBsnW8gH4hVPUBXyW4fANY5KEoYNZUHc5BLcbWBgVWndi/xHJpWYR28iYOF65XFaYqCZzTDRWPyLuzoDLBfosom17mXA7TMk8Vphq2JU/S3F1eOxEC2jgnyKyI/AZ01ofPuwx2vqk8P04vDcoGGJImhLA4fA/+zMvGGtw1XL3E7/SbOa5wLLFlzYxQ9sjg3EZneDNYamz6S+bVU8BmovgPUkoBKqyhB5L1Zdg2E5hbb/sfv+rIJa8+22DRbMTrH8Pf54sSWyhKGUrlQ7AUKAZdjW+O5lGsnht6yGvXDvPPVdQ3pX+zZMgVipqOzsNEpmN5qtAWrJt3Lv0SNQ8nynkZCBAOVcY/53ByZKn0TBN3+d", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lh55EzfkstEc/whcjqXs0AYMxwFLU7GyHgr6fC6DwTE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "06ChbuFpvwkSOwrYl7i/DVheuJfuHtaaw1wtnrdkLIHQuEHfan7hxIYQN6tdYpHbp3EjbUgYyfotDSG6OCbSG5+EZjcc4pLqACWiQRLFrOuKWbik+3y5eTmUMDCTnTHIconxzXbKwDjQpcCb6grm3gk5f22LmW57jM52GykPilzOMim7emg2S1kwRxu8KDcn5gc2C8l+Up55v6hzQWETP0pZiL3oCdG+ETCp3N/oahIaMiuAv6C9FM6Yn+h6/AYi2dO911vLxw6b5W/V8sfqZGg1QBAhAoshbBEhOv9LlSWc2woiYaf9e73E9jLMCEWPwWrGEghDpKurW7ocRsyXeFZtmxXHFkEse6UQ0VSbmqMhM7Yv6DppTfukK7v7qhUS0vsIqll0IGBpwaZXIjXF1gXm/Hyok9IQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lirazbs5+AbnLYkZjKezoo7FDXBEcKAwVrXnIXAAR/Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XfsBEJmiE+s8vFfwyJiiSAoxpayH4I0XsrBkGDPNcSCHbBomumlAym2EcZpIEnNUZWn8WsDGmk74Y1LfgloawRb3CXkMnrd/t/3GkSoToXvcHyljMyuV+Jyo9H+Sb5ccUoSBNlRBhsJt7F6afqLEEBAKbKsPTiS5z7nkt5vyHljcuydvyounoUU1KLk+xHN8M4MRrkWZx3aN8pmJ1Ndr8kwyVyhn0QxRWz7QK6rWBG5bS3SahiCCtZREKiK2Q5UOXxK5N5BtZ5G0Cdx5dzHCIIho2baBzi34GVm/rJGTwJy1BLFH5O0GGx23qb57psR1fwjVtavIv7jG4IyylGyO6EJgIJQ/bHSz5b6rENxyXCWi6gs0YuWsis00FFg4VxqJMJIaIkYKHnIWB3i2iBK7S3SrbfSdQs2Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "liu3r+Y5OsTCbqrZu5r4nYLSFCR6xA6Z4yN7rVjFAhc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ys47g+fV0bTQR9On2nDxlMVTTpq/LwZ5YA2chMP4BObExCYQAtsLemWitoDaLQ3ZCs9eHIVVw2NlfOg2WGM1K1cHHe2aaBNP22iW9zhqeHcUYAQh4u4K3Hr7lgDCepWsm/tSM74eJvfO3ceDkxp6U5Q/i9+j8DSxf42+u7jaI3/9C31xnWjheQCsFcxQpMGmywWkh+4L7mlJmz1y3PqQ3yRUrVyR4hgMiY4YipCTHpjc6m+hcMDXce/0Shd6cNZ4suoOJ9AJrg90Y9jKwgaxMwaDfvzFv2lNIN9T2n85P07zgpyQEROuCp91SCM4Oe5I2/UN0T+lIfFHNLpj6nhJn6C4B4MUrlpnKj3qgqxICIJwj0xfdYtK9gq1hjfVlMlNPbS/PVUMGUJFfDwnqoetPpnZQofx1Hkv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "llNV7Vp2RXmOpbEU8srd5GLZl0vqv1VU8JsvThQw8ec", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ArkMKfnoZwreW/3QwfUOffBMRikNlj9xjd1MTNI9/k6/T8R7FxSVBVOKIOFYZZQX0AcURmR7MxeUAizrF2UxCXuAsTsnvVosCLAUHnhcSXTaw2QrJu6MqoEMs/b1nez0xzebo/wt2jUptPTp/LASBgX12DuQn8OcJDNi90SsV7/AdtezejEGY+KOP67ZCDNBKYM9ZWLUyqGKERr4P7PAyiZZVWKnPgVtdns+txYO2gFrGxOto73XPE9cDIsBxuL+9O9CY3fbym6AGYclEtGeHhUFeMgpDNVHs2tJ+q/6WkxEPUeBPhOur2R14rTwXEkJSDDye5I77X0CugAeXoYqbeSmE/FPrL7v93xw3ziYMOgCaYzhWsXFFZiTo9KhQoL/HzLieSd0eV+aT5j5XmCDUtg4W89jAuuj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lmSFLizr9qXX5wQB5Y2FwlKclXxVSASMiGtiIcdL/p8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OuK/Acwu7fKY3+EJUILsA4uMGsDXYSwN69ibTFFXEMCVmHh5G8KyUYXW8hemIZo3NDOg02HQU7nSZbz0IiyxWYkBYAD7XGpmiPMUUnqPnZ3WNumF116+57QjVxfaGo+XixPzx2Q3d4j6lX0+bLPZqaphVBnFzBOrIxUmKYV6QmZWpbIw17t3o/bdxvlCQSbVoWe1CewpKUje9qhxsbm0sVkgKMSnqagA0BA4tHXwYSpJ1TKU1ss/ntgywnytfGDhn9e1Rt75qnpJBFvqqeQ0etVm53GDzVVRinUizSB9OD+gAS3SpR0aVzoQVYN0Be9hqm3QkEvKtbmiPyj/JDTmCb8OJiEQ/xNOAUlOTrfyEzj3Dk/mFnW1OkC9jOl2KIDbx2FpGoUd8q9t/2+jEmJq410bIR8biXrm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lnjmCmLljioo9sb7HlyjnzoVB5zbOZowOFXp5Ata5tg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pQvh8yRyEjDIXRGbIvmrJ6tPPnCmVW15Jytw+6+5JrKBfSR1bYdz4ZHTYDkx9AWRCUA57dEZRVynWTFhDCa18chHRnKSc7EUKTsC0JDTlORWXmod7O71eqzMrndFk79WFKHvv6j4XCGPgL9JHb94yHcWF7+ILrTdIoBkz+KvtkUPb2X+Ry5O3MYIc7YBQwJrJ9W8ho7YwcmqGpQLxvkjpWfuVFsM7S7NJEbR4W5f+piRCsLQwm3J7rQ7OUGr33y6cpZ1PtS8CxWSycolaTuzK9qloZFEsd85kbyup+S5JpUDilngFKxWuZhAYivHZoo9AP2N5y9hyx4aS51Ty1GxTZjcUNqwhgLlVeB+AcQ9ALNDOhv2ibuYtPz97r8P9Q9TfTb1VHCU4UoP+rK6SUSFvi2NDtiPgX8Y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lofTXVDgFXcMsPAcFLnZzXac9FYj6W7j48dpe4Kq+88", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZiOHF5Ak6CaEuEIq+xUMVPWqqQuoZtzu5bTK42KdoMkLyu3Z1iBa7nSv9U4W4xSbqytS+34D6xSloIHvZhray/HzpjrJ/KfW0SQ6P7n5IfNwdDN3qzaLy/ci9Gw31Rs+vBYiUsZxW7+fFXBX+BMD49i4d/xRGTCgGp6yoqA3Mdz2nMqUTpHiqjo2dm7TXiPw9ihMOLY/BXndNubZig8i2j4HgpRrHFyyOfJ2EVo0U5JtwcOiCWM4x3+24XQjW1eAw7zYbPhYAeMh2ZgrH6/C8OnhfPtklwZsXkaAwnCnj0OjZczycydSOYX+Nt2kGd7YHMCFwdbmxfUFVU5vAC/IaMujgNwROp/GDaamh9SdO4y40SGQgY3sXrvBIouZBkUJ4mWGqXCp/rug/sD0iFDC85YP8MhIc0+E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "losQ0a9+oBJrEEOb+HNTVSVK4SZS2sxsg1y8g5BjE0I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LP/6w7nj65kocvIINf2Q7YG4VHuK+3ap/TDsH+mDxiwlE25x8tppSM2H2gfj0BGmkvUJXSSQoEK2EnEV0TBzOX4AIgkcKs7MYlCxYSYmrYSRMfg+8awBJncQfhSPdBSAipbdwilg3Al5bXvpI4X2VKNUE/FoJlzATR4uWn9/OS0kZEbn5SCj0upXiXpPBKZyBkQ8r1sI4ceD4jRm8trqbcyT8R4fa4zqNIF4vWB9AuPqFz1Z/0X4XWYwPMZvFhK0V6F6Ef6j89jDYgL/wBWPThlZ3hs3wNyzqZO+Rt0ONGjISKOQAl1Znx5WZ43KeQZod2IvXYxQxwnbfwAvj/PToXQa9bqgMGIkeemsW5xt0k7Fa2ja+RY2zXyP8ZfkXrxiY63gRIIUijn6V5NtKnrc+kYApIoLyVt5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lpBX8YTqmA56+c6HWGRmc4etcFlTbCCoVWEZAG1aDyo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pe5vQZv79rhZsYdiUU9TGqY/EpfHJGgd7skafM7sdtipu3J9DosslC0HMgGOtuZ7v+J8rlKMMoRH0WKdFIPfcSaFXmuuMWCQZPb2FSo3G8jkm6FtBHg29ha+4YuiD7baQ/U5pcpjUtqMtlCnIsblWhgHVBJaciOPyfEY1R8qRIdj8gO4b6GsCWDgxLb4jpZKSqgKZkx6Dy5Sfe5SSSRp5Y0rIZ6RDUMufGvFBldjGCpJGpjClmyxiqHrWCRKY4AmdbQ7pIPmKO4TI5zmEZ31WQ1fW9v01j5fhXJzUZt8X3KQOaurT1K/ZR4LP07hJ6kFaA08drFs14fDvVQ18IxqCFP9IZBnJpnQOXEsavOXSjsfrtzahEGnKY5Y9wAhE2Z9SeTT+Bn217W8fVdITVfYAe1wRIClaN7p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lpFjfGf4Rabky+DqYMgEOMzzVTJKa8aEvpBbr88qbRA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cCjUaKuhHwP+Te2jXqP8hYjjs+N8+3QWR+JE/4cp7yng+GHFJKoMV1sKWXz9Gz5LcCFzCdFAHGtJZJ8VDPWj09Y+1rxjliTEB5H+y6QFoelbgBDfUU5DzgBZJxNwWJ4a7zDPzTgmLf8YllWJdG+J/OHdOMUq+vPc4Yz3wcqvJXsShq07zHAxz5k75ZXdTyZJKkwCKstcgzCv41x9R0R808kBXwBSE6wtt2MfYZq2Txaty21uo4Eyi+f+isqKmNsYcVHN7cWaUmkuAdCbQDnjDQ7x0Z0Ck8EnYpW/fOuePBG+gIZeZj+UM718zQD62a4U/quTB+vhE5MMljoBDNtBAJZA+YLXKJIt/6RiuJw5vNbcpMOrufEqfPTmG00CTomRuu88Qrrd3cEcEz5iAavP9jM7RNT6V4AV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lpNzYU4NCq82oYcVPZBReBrDNXnwL7mKwYphQta2GF8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kLHPZRz+OhfPr8QP6hp52OEGKXzmnVn1wqw62elxF5ClDnTgwgtz6aF1eRCnI9tWTAZQ6uA7te9Lq2X4wYsMXYz0tEKAfCWpRbJilQj/d7sACWhOO2f/0TyEETeuwz8GXntUm7TDuPo23fQWwSqU6ycowaI4FX0A6StfOug7Z+L7sAlVH5H3Gt8J+1obwNshsmVwjpMqUoGGg3gJI/3+fU1duIOx5auAScsiVHQVefYKW2paV9WTZ3bWIUANtTcSuh1sKBZCEbaoQAMNP5t4igdb95CZATfelNcE3GD9g43hEyM0MpAX3zEPxB7FCh4SKJHuaU9oZiw0dGwLxMf3GDy8NIB/zSlywRT7J2cGn4vGZJmfhMwzxHOpJeZYNZAhdNMq9aWpEWv6dw40EP4SnG36c3CPkLMp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lqAQc9rsTo4IS0tmeiJXXY0gAK3yuV45y3hKhXnlBjA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OJkQ3Ur7tMDMFBH1DloNdvP2IE/tK9cmdbhI8gv+UsKHBfI8ekkXe9zycOQD0VebEjAyzZmepK2WFATSDJidK7nC5LgUIP/eYwQyzn9IM+Sg55UWtnzDKbidwIm/IfYWCXxagCNlsZ5zFtQgXTF6IUSe4CbcNapVkJ4APrbBuHM/3orYsLL6eIPQ5X8ekWBCPfIjYrEa3nEV9caz+Zowh7zR4m/jNVgaAgc97mf4I+0cREi9nNO61Ca2mWTmY32gUxM2REr+pUdBgLZBdMfj2z1+16sGd8vj4HlxjJOoaH+OuR+zhuzhSFl5qEzRD9+EBl8+ISKOjLFF0CE5XFc42AOeDjll3Ip1eY0I14gC+lNcJgIWk5NrsEc4B4QpM9XOm11aNFZpIDKGExVNbCqghfNPGMBFc+OB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lqDbFVpP4icQbNNnOKgZySbsIK5HP1bWDECDYk3v4T8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xI/CvOyalqjPwvnjqC5xJf00/QkuRkp6dGvGfh4cwU5SYrGgyANTdtvuG0kxSK7loANXuO97g9cgPiGOY35PAyaw09/7cWLeNSPACkOkSyZ5bVzasXi+5OXeMOehZbzdURyZePdIV/lOh5W9WscuW1LXzRJkEEOy1Akb2AEBQkxJTrSFqXNzoSP8/CCm+LY5tKjhDBsMR7H0HyijRSk7VXYwfEWT2p/RVknOt76i3EFgDBR41/qD2qGxSyUq+wqeKMH0IuEukja621AKqkGB4QpCWruOiJIkQ1NriNWpXi3bsReLyhnwJgo0VDsdrLiEVReX/kYwd7wVdJeBF4ugPyY0YgYeTokbwYTpslT3K63xYv7e5W3HZwZiRkIcpJHw74iy+vRMSi/XGPwbR7A2nPsHyMed0X47", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lsgYDhHqItTvtDmopzePX1BhbrSzL3/Wx9Y7lkl+IuM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aB4ZnYgx5CQUwcODLhP1Irj/0N8r/BmNkPnlas17UDJLSGE8LYVjuXX5ih33FOE9UWniSKppFwuOm1ipC6ZdXKqGMkL1O9Cq6O6ZzSbKClYD1ScsNwiHJXbbImqlehK3fTceOcrAXAllTS791Wn/ajPYwyNIZPiNs31iuIPYKDLwF68aMl3E/1hp3KOyugVyhkEH+F6egwGjqEL0ldg9AufZEmiXAFwy45VarmYasQk4duv4Xb8EpSEjL3HSDkVa5Zx+ideb+FSLP3SfftsjU2kz2GfOvai8pUo22TIwg9H8d2Lmd/dTAYKSVFe27f8BL8bbJOzsKfGaHcEtDwnCNGvi7txYuLX+NCWjUCutIfBsaMBwZAyaSiJqoXOVPN5hGCTRz8yNo3qKAvPXqV/1LHJfAuCGtREU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lsmrALdhIzASc3fLRNQlpluIrgzb9Nu7eKu4UzJ2n1M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7hwYumX75gMOvgh17OxHFAnKJY99FoJAsWuEhq1zgZ16eqxrnrEzjp6p8AcPn1XE0Ay6ddhR1S/Pz8UQmSCq9ts5qm2erW6Vzpum2eBy2dAyO4tCNeccjWuP9xt2H8TTdCnsFD3uv/tVOJun6dFPH4NnzN48lZPOMouRlcb60+SQZhgtfjebmDjgxdOCHlCZeEJt6aFLstoTR3bh86JOy2Ffn/std1xal7/K5W26l0Tv7SFfQz/fgV5CWzhya82PVzcrABW3rqCehBzAb8od2sjtHT75He/PLK1igDKqrVq+4fpPBkWTni5sqCbNRmVncFW+Uniw7Pm44FmFuPWOVeVmGp7UW1gGrRJCpNPHl4WXarKth+IFq9eeLXfpS6n3zKItY+5/E3n5x+kHsjkvWf9QPxZASh1k", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lvjY0FsumAzHekFO8jNyiTh6Nt42XjPd9eHTZF6qD+I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JjQ49CEK9lUwF5eB1jw8isMWUtZLIkGnKi5opayPAN1GHSWG/MGN0tTh1rNQpFW5vgZrcpSPh64Q6Lwf1JiKEerkt6yGGwlEnNrTJo/zzfvSSM2CS3vc4N1ze28rcbNuno9q0AX2jpjS3KMgn8ersX9OFCi1by8NuL8d0of0WyIsGMovh+qK6tfEbzvnK2k1cHhcGji8j+648Xpj3113YG5owoQBYiyvyXacNxSlqNwJ/1NLLwxFmRcCyZt/6gR6nJPfPP/UGalzMj0eTfhf8JcPZ8VanQl/VI93TGCbMiomFlTUcsECgLIx/Ue6c2OYh2gDAWD7gJoCL52/PvYEE1DDEbzEnWnzRXCGzIFzqTNX7T/oNdKqNTJkO2X1ybnDwF+DWs291EDlmuQJ5zuJJoCqt+SJQwmS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lyoVQMBKt5CBkI5ppI4HLwpLY49gDJt9nAQP464VpFQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8wY0Qu3xAFSZFdBrqLWuGAEZSRZ53ZBEWZic0LbMN41Mwb+NBp28ticAPa27zBb5CHCDXMyigxtAqMqjxjNmS+Hz059MuJNarYBWKdoMgy1QYoSxlafn4jbWDB7aP2j6LjR0Oofz4HHwNtMShVaHLoUf80dwwgBKWRfTODdjrM7KQcFZVm/oLA3pdXONonQKmp54kGthyDbVGVfhbkMzHMPZDMH3pg5BPKTVsS5tH19VGVoNfQszeFJBQI15tNpGqWxJmZZyxkW497CaHQUGfSXeOUE6h0BsRj8vyCavs+fjRD9phzGiNA1n+vDP/Iw7NdHHcS5H29Bl1M9cWt4Uh1VusGIRIPFlMGnijN2m+F5fXOayuvV/vPljo8W2pdlkF8QZeqswoeEx15N58eL4QDLvNX03s+x2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "lzbPiRkcwsPihUVFAXfHdaTeIweS4o9Lxrlqwm1TpmM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Six9SjcGe1tCrjP0T9WdXmoJjQSn6chZYUX83L1J7zsSNnnZtFs0EUNXMe7CRUuyAXtAIHfuvxLOkova8pELvpQGFKqRTb7RGUTrgdH65Og6yOCOVxIYoHA7hKXZp8FkCApRUIfy5VLHOMNTgVGhxRsjjhLa3Pe68aQdmrF3uBaY3v0tgd3QuB4AIALghPHR0cK4mXtEaTsg+w9WKhA5Dro2dsFg+6WeDTgUz5Xbp1J1lM2gK0SnfQtGKkiwUzzR6QlrH/iGWLYlbeia0iiF22CoF22wRPdf5sMkQuZC9iZ/AznAeT++WQb1mW/voN+C+zWAIlg3MTfkRrM/JMpvbIJ3Xj0eRiKbxQnCTVMey5Kcy3ewtayYC81iHRnJ8EW/ZaHNm8qHIdZ4foYplnz0ITi9VKrBpLXC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "m+iiDN2u0punp6GloL08oPl1fLRXiqFAw2CtBCv+pxo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "No6POrGYewXgd9U6kFeQBh4aMvN4gRNEFcQzufbp+RawLe6wMzOF1/dabMKVZZ6heboENRr6UqZRNFGbrwAa3RLL56o7ZIqZhTwenIEspq8cxGrnXcVGfKDKIv6JgZu6XXW1mEy4eHqTNnH71FFcfmPtBdoGQszHuw8RVgJtdTjEDpmgIk9CRWLgGHWzEwFbDV33Ey3qJWeEmAUxNJQG0tdAeJEssXIOpKhoZzl1qXwRL2slw8fEMVKeY2G7dACO3PYQvAbJqry/rAKWiddNdWs4xTALhYRyVFmQ+fIKspE+imSlZMkEO1Jkr+BTw38mnY+qYGePIcxTrTXea/uuPaqHPPSJzt75QG+/+SxcABGi3ehJFdE2LukFd7w5F/NmBNpHTBGBasLfU0Rymhz/DdsRX80o+elK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "m/baE2vkKWvYz4vleRBl9GpBY+J427u9CvaPDmesk8c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aSWS+aqjfyIzNPZ62TrVvu/SI39m/7bcap42MNMH0WvCuJSFRAesVv7HQycNa3H8QgGpsvDyB8jRphMIVmoKjsehhoshNRxrzKYJTM0z6GR+1h5jjXyZeW4IBghSB3gjokfjq6xh47Kie36rkaJsHpt+eKZsCrA3v5bk+OAn028fWFtCSvUQniqrh1CX+XMYQYcaPssnlmNV8OJEu3VzGSpoXmfwheUMYpnUAnIqN7hgkeaWSZAph1aPz2yAijp1Bkkp+1yd3HECrTenDtq5KhIQ19zxsg3YG74gcLVuBs+b5aKhEMPvIichFN0RNq0Iv+kmRU8RIYPXQQwRHY6niyTWFnuq8m0oESDQtaSRKgaWUkYw1pMGAPrEHO7FUjnAJzvhu5jYGzlV8JhZ1OGV8JgAoCldafuq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "m/puoE4vlbWH53QKKgwgRKBQNaPsdKsjKtJhxsHnqoE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XGPto2H4Z3l2xqAnrOagkYPc4RKm6HOK0MF4z4H9oCflmIcG9TjW2t9mJtQQYt8cRZ3UNKVSAWsTy33zwGQ140zEug+lot1NbqubnNkjGSoO7nMXAKkxiW6rr+EoXGMik1iKleOWUG8XDzBLy8efNsXq4V933fJ5htrsFH5548zoU+5L3vhkhqKgRLkd32EpetBpBOb3LZwzsguOTvTA6ffVcLfp59mcRmMTROx17BgpwtKmovJlZMEfAPYuPuZgkFKTPjNJ325XhU9dV0AzUHgV/xScoYf0U5yEwOkezBSGjxrXZnHOt90cZdFudhlgw7jXaE4cbT4z7Lcifahc5GSL1UtVkYGtSPsjA9HvPKwUIlQ793XaUsPUDAX+XshTVdaP/yIjUanUG2bwya9xN1dizCQAzXA3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "m2vpZj13B1p7ukq0HwMd0eZzKTl0nci97iZYRN7E3J4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uzu+hghJXBwTz71+ISTmyvN1B/QzV12srEjdJyWVKz/UFtX9S70YcBernQZAYLT54T0lexAx/jYNjFJ01N8jBoLU8/XdTwIClud4fyHCibuiqPJIRRiplYiLxmIzCQvyyRiO26cLMmYhdbpJWVTrRqqMzaBJLrm6NHC2Jfg+tDh/pySsNEJ9Yg9AvyXcfES3DbZ0qNE8t+CRyQfM4FyoOtOshptZTVtd+zbsQ0xXDjgIRRvj0FDq5Sxi25ryEKF3JDUzBQz6t/fLRuORO9xYbH6CQ1PAUsBPHIsixdquHJJx2APwuYisrJtTgF9Xx9ySgR8tOGtCYSEm+Q7eNH1gAsGQLvySLz8mk08JvSRIgvT5DUJQw9qKv8CEDGOLRQxHrqp1PP6hCuqFLvhysPeHqTasDldzsdN8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "m3G8XPIEi0TMO5Oh3r7AubqfG3nR1Hw+wlkwPCWOg00", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VdOdaSIYSylatsnUW4PKaaZopLAMU61YgxYkW5XJUBl8zTbDf9jv56EKOe0tHAIFRhoTdKGYHc5jxdrousDV9slE8qv+SA7Ukgg1K6KBNFYWGDC0CAb/01GBv/Ub7s9PBweRC8g+VBDw+9jYgyejdW5bbXC291M1eikf/ZQXB3ocIY/n/F1AgaaL2Rmx30kWHdPXpenNN6kIj0wwpA3CYpetwWG19jrelAZ48Af2KrnuOg5n3qaVsHVyCgAqW1EKeWq7Ep/4gj/bXBMjaAhlsw/c/UtKswU9rETisfPiwVtCvwQadBqtjFK9FkCvazLWNtml3LxGpzNQfkIkC5XAyVSCSgt/cET3N3sL5p31dPcA4+ihpZRafwpwryVFvkqlxTcKoWiScHavmHnhyytU4lFDzNxCJNSF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "m7jRMpjah/I0Fi1i4tQ81Ps8CV/g2pf/hrNsjKI2BHU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "b+zJomsuF+zxaVFpdt1/8RSykShhPddb+5MtIAD+RLYBYJjyx8aKe8sQE4W9Mkfgc5+8BgT/SplCwQ7jDEU3Z8myw2AE4FfEVII+W1mgC6Q6s2z3l9dAfKI1JBkElElBc6n/wv/UJ858H3imu+0+BgegXe96Pz++FGOXjZwfdU1uVp8hUvrdqzgJpqOa7Fy+2/BO0Y9TwvNfwBtD8GLeZbvMsGRwq1Q+L3iIQkogHDz+H100rJDbuCl0zhls6OqtW3A1RYusRriZ7cITkz/PFQWjyeXxU3RtjVyYeomUsrn+8gvx0Qq7zMYp6sDqNHOOgGvGezM8zr8nLD3zRK61E/uojGWLMeTIzS21fm00s35IayK00xyT32uPO24PcZFSEHnHTf94xdwhyvgiEkVv4AQwhNyqSISV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "m7sBGwnNP/DIvyRXrLFuBYA2Pp6Kc+h7Fb4nMzbNM3k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FYjSdpgTRka3yP6gk2VEuZRGCC7D+BBzitZi66Y0HSftxN7F3EiVfnqP8QKIH6gCyQDmhF6uYJtIGD5z7tgZB/2mzxHb9fqRCd549qwgdwKU5QPMhc6h5GeNrOh2bh4Qu81BjO3g0Y1nxo4BbToiM3PmL20BUlPRoNYSZozHPtzw6fM8d4P6MyuQxG16C/qk7vB0reRnHWODdpsS3VQxlJq18x1sFnsOwkdtG82OBqCMqzhDAV2g4G/to28mLhsbBrTlNbXw+chL255cSNOKCXFb4Q23NDbJGMT1U6a76mLHA6qPVHtVTpNF2QbefAEXV1WbZQzlGH5v/Jt3KRsAE87ZD4PmbB0tVjvRNor7KqAr14mbSmmEnzvYnpV6GlR5lK3jghit/KmE4nrv3csmOv2bPpnC6Tys", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "m7yWoCg/4WNpHpfsZEWz4fVuYQygzKXhIk1XJH9QJrI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DOpu9b7EbSzOFbgqaA1FRPzOQJofY3PjCM+Bs6qYd680UIYT3RXTJDoNEH1M/EQeTT4cd4HtSuQq/upN9+fCY8thoAcZoyEV4h1apUbK5qN3Go3CzqdLBmaKd88CH3V5W/vawnmj3qBGiudtnJrQRHLWN/Sg8U2HNQ9VNn3uW7bErLSUBF00iJzyIT1wN89v3YHrIvPd7f4V0/kqwmnny9pEiVHOjrLwNb0Kdt37QH13UKxubDq7zudIp6HRXcrKS2/U0R2tnT7LHsfZAF9p69D9JSQorq2FSdMvUbxO7Pd4HhzUmGDEtbW1pw3PsbCa3m1c6JLnKC7KZ4ci8dLeybGo76KKH3NLFdDzzWiQJ0io9lBPiYtGsA1u/knMJiQHaGEQTYEyfMgd25DcHM23e2E7f5FXEC+K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "m8LJ7M0zFBXUz6kzZGq1I/svMao4+7FzcnNU0+7n+XE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5V3sqwz2DsgOTfMGQVc/bkgW4fjZqHenCsmNETvETzGcpJxex+fDaYHtF8wnlVe5ceieKURuw1zHkjW58ZTkG/bJrZETVYEBJU5y4MEDbhCbSg/dX8bzrtdBrn4u+1bitELm22QlnKgkeoOqsagugvBUysg32o2SLFykXDhcOOghLb5JD3mzmjSmGufi0OqNekMFpWAt7ASFUj+poyDI5pdp2xABOM8BPwQiVVN5r+2QFIs1/EMIAFJkgtDEVkCYKbMADt6Py1O8SRZJwjIngHhit1rcarJYPYN6pNxjOiUUMnwn/U7EZqGakpE55Bdmr8Z4uJ5l+vhDOZnL+ifY0jtBYdct7tdaQXmNMsqo//D7YGSwAdO/1EfOf2lYM6LFgA/CLdnc6Z6G7MpkZC3wzgNV7X4vOokw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "m9yN3GaZusnOB5ay6b0U358G0oyU2jb2JVEjuBa2SNQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ltIiMPWOBDoQd7WeoD0kd4ZtFmIFrLqEsGi4QdMoyDXLtiOsHLikTWTK/quDBEGOIcSPgt8nHZ412YzSaMTd0u0WpNQPjcSOdi6XGm7omaha91PD5VLhZiSTiGI7Ly8pqzkAduOFslppcsOyDWWjBkFcrZydQriZF/glVQ7b9IY5S6psRxqYU4TRSsTdQIToM2/pOTN8t6qAwy1KaRvsu1G9drAwZluzrsy3rHt+qTp4gpsBbuq0rHtB4a91vokTOBCDQd5lZ0g7I1vq74hUxcDMsNzS3wyMcgW/kzjXC3mKxIBtYbFuCo9ym1i4roly1GMUbsh+y3zABIczwHAUDem5ZP/D5ywTrztOe4PdRk1C7z75lF8OWQriaviWY7lPAVG8Mt16YyGW86GgF7A4UVvs8StAKut7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mAV/k/nNjxy9e2leR4FGFt/+B+w9WB+f6Ut/tQSfHz0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lR2lYyMh6uiS0YOcK5CJmae4AtE1xXcFkRxbBsxoeW17i/im90iHtYVxJkd5AtFY0EeeoBNdLgUAtdFRJ3qgTByikWB1GFOo61SOFcLvGi1Oa3wKqOp/OXiEB5MC88/g3T1z7FTTTK37eWFYzC70lhZpfBVkFYlFpOJEs7aeGMKqHw8YhOPcTtsUJZex6bRYMWv2E9LrLE+U3lHqtmtKPvOkmePhLkHU6etfTxQCANZSUnJisoihZlVPWgqzekZi6rvn6oQKio/5zhYHScCrSiP7JXVJYaEuVwVJjGXedygNDVvFzhkYpLeiPWLhHM1aIZMlFah3L/yCj9ofRX41lDd3NCafiCV8oGxOE5ydzXA6hDsRJPpD+6udP27zdJ1mHGLUvdEdMV6POfOO/yNNDG/UF5P+eWXR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mAuQKt/WzjfpFOiJj5YZzuPRzbZcg3+DilvHcMS6Zj0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZzyekF7bVkleuE9l7bcow46FVk0vEyzU+72qP1WtG1uK8Fhx+tSx3y0xM5NRDBhG+jGLaF+jkF1ard+VyT/qH0JKdoBzY0RwCEutMq/Joh90wMn9VyRpgS4zV71k/VRUunYaleax9Fz9Yvws8vHFbNm1ylAgNS3sT4LstPinv8cJbjbWp2qVSG1EQ2fLWuYIzC13+oxXZaqp8jjxoTSX/1dc7Z5IttQMwCCHbvUU9bC/8t+tHyc9thxCPMtdv1Le5f0PMmVo+km7GKr9XwZ2VQi21ih3MxOBDBxdV5/1vpj90UC21UnoEkuNCUJKl5rCUhIlpks7lXjq9fJ/qyqgl77uVOpx59xqvsRi65AX/gYtbBy9UZvSj9spdDD6muL3iSnuA+WcATx/yM6H/qSS4MK+RGt7oiGf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mCArXLFNEnW+MUIEDDoyhYj8pwWzW8zFtWHHpp2lnQM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "01AKe/S4Zpkc4dfZLDauCSu+X/PwRW2xMUrXAzp66t1QQB4wiRk5kg9J7dCCTrFYdFWbKkZsNjP1b5s6DDnb3rxlqbx/DwUmi3j73l62TW5f2Rstoqw9iRjg2P6Z0HpUoiIfNLsSuktfmHistv7n80C9rYm2I5Beq01mJMy0I90MPvAOCcknFjVclnoZCzIOvjNG2LwS4j2W2nXU7BOMNJ7NmDVmHcuUAA/Rg6jL03KCorcDgttzrnqf1R10WPkUnrvqQR0T7gFfscuMPzTNqksIOqdeaPuVTJ4/yjcDKznejnGajB04b5z1euMA5oJaFHM2zp8TqCbhVd4hKAkxleWPdrD4oUf34C3Hwp9gCfYzGdBG0kEzz/+X02QY/ltpqqRRFgOq/SD8PPIf4LBz2MildofVA7j7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mCYGtHinEGwYFBRuYZrkfhC6+vhGDgHxtxIDDOgGUQg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "D5XddY8/HtxtBoMEAZJ8KSjY6Ai800FzC5m8zDV5Nwtu4P4iKt9m3M8/vqCnSq9MYGwEbbtK7RGWIcsJ5M9BqyKjSseQcOCllLjcHrharcvDJ2LSrCHNSr6dM9sA1RIwPbeXg+XJ8mVUuTrbIEeb9S0m4aQPFstsHKMhudho9CutDcShrozaAJQ7eElJURq1jQVFHHxkCRuv7db/2wQcKWajRDunLoQ/veTemf7+6VJRt6T0Q701oPLDMD6OgBwwspNC596Jw5/FfdxkDvM13/ZfqCfmjAuEz7Wibt0VwP7ITGYLl847QrL+1lhNglF9/gVun/fdBlpgHtWmrcg0rs2CRCSdqGHTtSvf/gyUoplmasAWudXSd2kWiPK47WYX+yh63tPLDWFo5+HbfheD0T2DK1Tz9OWV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mD6xb+537XIH9WRyZVKHO1U/KLcW5XhPyyQpKhsIVRM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/zMP5oiKpCSmSCZCzZzMY5Smt4ZQwTg6Qng4QjTePn8Wv5ddR6Eki8eF0khcIO5U7T1TmuPgNYY4geWk6EIyOvUYmGyJ9ec6LIqPP7pL19KEixn382eP2gmuuOxO06Lku752VOUR+IIbQgGRsv1KpHu36kAonQVcfmOyPCCzcU+LxUKPKpyNn9rf5QUQNJfr4pcMeUU0T5TuiDQvJOXkYnBpeSaxad4RcDb4OKLg6oRkCtQgCRIp1RiP7CZFB/18qLdM2PsSJHKXX0PUVZ3Wj64III3BjGc8fBViMfukJhlQa1tOSFOjRZnIzlPb4kFiBg0APyHioDAYa4g7qzs1HLgSOt8l0+RLmpE8gLKGIW5gmt3frxiPBcPdIoUeF61gbKraKIDSyiVHUVIT5K1a8Q2eZXb40alp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mEOQfDNdyfvs+S6ruwWosXLejTy/ZJhx1gaiqc6Y0EQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fX3ieq1EqzZOVCLWNqBgzGFtaASscT6cvji/cVkVL78opayexhjLjzRs18MWbyaR1BzYEuSQP3GbOyxSZ9WKa0jSO/Q4ArnszcD1knfwn/ZGDItiVCXeSgGBiqN6VRihmWtVuEsU4ZNnERFxfmGRCn9eOCnTA9c693n7w2Sy/wcT2yXzhRtWH1ljLDpSn50AFCwACdNJNU1Hxom0Q8ywak/NcTXrx3rQXJFRQZ3+V2AdgGgbZBDey9a8XhvxvX55uyelRgC9IJJUwIwPB1ilNwmvCZP9UMmI/yTD/01ACEU2OblSaxyBhN2VzfyNerJpZVrtGtp4qFGXm0kiBiiCSz1fnOM70DvFzZPWo3wcdVNDDlMtjbB3qOEkvrZ9R9/Hvgf2y3aL8KTtciqjpR2e5875vy7a8iDD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mG5gLOhG3KDxRN0m8j9r1WdADAbmvWcW1B+JYNgLhLs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bksWNC7r3FILViYcFgwme2mQNe7afN+1mJfXSk5wiQY431PDvTxGaJurQTsztlJK8Phg1Nam3Z3m7gd+e3nUuo902i7ocxyVQn/dQHeNnpRwGxprhupdjCsYktsF2iPgZG+psHBFXUWBvbVJad6D+tiRCqYLrdklmJstSFmYl4sHioHrRb1Xi9NCfYTg3wNwaRKDHa6qCQN0MhDV6A/d0h40PIU1rb7LN64MzQU5FmNCQyls93jee33B8fLhQ3ZjEPmHIoiJGKGmxS4c52gMBPvQ6veokGUJ8IoreleRRkCGcadRZ8WXi3zt+zAUSHfxoWsQJaHLsAxQmPwqk6q5mkpfUXVF2XJJVhTbQR8a0hz0UqU+nnTelU/rymvRLw0dKqIPuDYfmQtZYwqqhCFSyi4APt/Y5Py1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mGBrzdvFXA2OetVrWkXEah1haZ6Xo1ToY5+KZnCKtoo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QT+7bEC6DiaC1Kpu1zwOtQuC1oDSMp+wrJ2g9+32+oRKU+tjJ54k9RFsQPifo71r6jR7Aim2AiRkeiyT+eL+ojiKv5uO/kRnNUO78ksh4QgpmzKx5Wt6g2ZaiBwgeZncauyBA4o5MWTrodgvvRYS6p4y27xFl8mIcR+dCnTAJnRQpr4PgZapV69ONutHRuN8B71jbKr6ERAHJqe4YXd3HkP9ENYyD+zTQ3JtSttyHB8yQC78yUGvleSHEv5h+KZcXtTWfSgKU8OvEFmOoIn78W03iO+qnM8uPbiecv6VxVWY3NkxAeenkIgiY1O39/Aexse++HG+XvRjs0LgrBLCc/0fhf2dfcIP7Axt+OFi7aQPrXXUocKchtWxnHJSlZ5h1hohiQTG+VZBq9atZ4/uNCwTHyND+bwM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mGeho2EH+c1HiCqvlHheZxUECnYKLqWkCBxPDQqEdoI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zIb7n/bLUKBRavyTHM2HbCzA1awV+WlmcZMe6wux8fTNG/4bqMeqM5snncnePd96GTQQkJ/7zvw8RS+bwYAlGSDnEEU//C/3giGr518YoCyYh6niEHp6WygmIYuE1y/VW40XehAMX+6NgW/yES95XQ43hFfVNKo8etwI68PtaAt5TB2rV9CwL60NYDkHznmqB/dx/K5DUU4E+Gn0yhXwx1XcgStJPeyWj+b73kLug8LB6YN+jH88+ZE/MRN1OLWtfT6LF+z2+aqvmHxiX4oj7+I6wZN5S+hEJDHImJjQhja9nEzWhxlq7IWt4rtBNxjWQml+QGRXJxVB3XiRisL2YBTiEODugytgrlgtYCSmY5ULFDfjQNpPR6uJmRE9B1HkOugpQYolu9hjTZTeyUqXlzHQCpnp4/iY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mGu9nodrCxcDzF8uoi9JTwl8fZ8xJfPM/M9q5sb3228", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9FB6GgMO1CD0TxPuuv6MqbuUHbDrUp40FWs/EHUcDxWiq8ggZmOiHtrrL9yLI9xGCl9CzvxyenRkXJJfqlJ50zDH0o3pq5fB3qhWIaMKaJ5TxQtUtJ6iSGJIqafEjNuDW6EIr08RbTGuUO36KVWSkrod+/ITbBkMgYFojdyFI9vSAzYVOEjmqSL1l5RnaJE/mk/1Xx7b/DVAR7qUMBdbt5lXvJa5LrVNo6YKebc3+oTsi7l84y/EFa35SYNJIiyP410BHInE4YXvaFwPXAuSzEQWlaEH+LC4PuU/nJpn6ocLZCNjjecF0JT/Ak+Ba5MjnDGYNGFAj0djzSRrLTOL4XdS1gE1azk9ctpycmbcfGllAzte2GgGH0NUlHCaTIiYpiqltXG9FbhAGR1C9MCh7Vg9Pef/Vb0q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mIIsfsrr5+XenTZ9ql3zT0ZxJ7I5dKVkB/MWEFvRgSk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BmWYbuKOLTNMcufN3dqAs30Q2eqxHg2WISUBYBqvxtCNq/JmcMQIdEsE7fGx9deR66rp2sOUW0+9hIxonS9QpAHR1mygRiVla8wuNwcl6N7gpb3XIp+ozH10ae5XFzwUoifCuZUJOmzxayTyQqkGM+cOoW621RFRo6bOLTjWdQ2Pt6l3c8KqxwoAVnvLQzBxbYDxcZk7Q+8COGhOokwS09j4VPW7Z3ylgmZI7ctQwxtC0VFQf8N6Ka32xgK6+N8JXafkwR1fN9Oa31QqrEg5EpsoI3Lti1/ntUgEidhlsB5NevIqymsQZqCaMqxJOtX5ZTZXgjuJn1lRapBY6R+LOKOhI4GCNa31SE3c4JoTl+h47V5BRpxiW3pKx8/Xz0GadBRLepi8LlkFpyK7bCOjlCVOkaQ4YeGd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mIPy6V/vZO5oZjsypgITZAGIuyT2mAUsj52u4DJOKNQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pLc6AaHOlHHQtpOHu31c8yGcr4T5hvUAeD/gqa1m62cwS4dly/xwSt3Grgf21pujsVU6e0RoorpNSt/wJByo+phPXqU/Jt3BrS3f8zrmjyawnhYh1ZzZK3V76wHhOhkDgsxKyddKuGd2KqkYyTD54PrNkjo+cRTXeUJlnJNIQoF+0vEUex7Ay1H67zsrQc6FuWLZ5kEhULtHJrhdQYYAiZRsZBWq2jBMT7EEPY+6JyiBuSKf4LunTu3Qeo5bYCrG1imunvbKLlX+Kxm8eE4wBRUjAmPYh7EzU7hYs6wBQrxQqP4WDtBp6SDHt+e2mxYR3jfPYpUVpzm7rjc+C/Oh3rGkvbS0IspNLoGGKxj2rYFfcCGnHnazuVXyFOwc0Zl1w3i/Ws0EQ1M1SF5dmOFDWMrEO+Y7ED2u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mLlk/t6XB0ZsEpVFFoLJEeJ6Ub7NDPCg2SA3ttDNL40", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YeaIkdeU8ekRNMYceSU1/BnVxh78Kqpo7lY7iygD1lq5lPrMFT0ALvFfhMmVab2X4mF+SE2yhyF8hFd3epALeShdTFKkRwQq95xbP/DNnoSpMAFeE/DbaOCS1n4PQSgjwxDmT7iz06QjUU3Akt2irvxVqLL54PQOwGXhJ95Di/Us0dq9iZqOJDmKfimV70RNxnC39w3JtRzpOgHHd4Ud2gLpFLFlVATQ34PGG7Y0q5h1aMMQlWe3rxhv5VV6Nqz1zj4jQtiThBI79eMBPSL3wyRDRDo5xwcgrcJkysWegNB8SeB5LlsbFGSIaj54U6DTtYL9hyMf/bhVazTkjcdHngduogYgZY9rrTSOc6T6rvb4R17eK4itmZzRw9hcbAZ/1S0P4tHAp9kAlpr066pU2iv+kES6lHni", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mMhmrkLaIvXi5pYgR/2i4sN3279wiv4k3KMz3b8oiKk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RgoQrAfXmnnttVnDMKqoTekmE7q7V6WwVcggD99becAFQuyQRb1mXEonGCAR9yYgw5DIh7OlpqwvsMVfMtde6h73ixceIbzMerS+zGXPJeZFIePElaaQkyNFEW/lASBt6xwsbEe9XVn7+SstL5u8vvAzF+5Sphm003jvRWsTosVhEsC0cY9CrCrBZ8e1qvUpfcX55jN1P035/D2802ETWvkBpb86SgAF3307NG7VWQI43ErrPIXpvQOKRIdOW6AsUosBpRj1xoEeiYqjHCfAgg306y0QYtbGalphBsajY0Haku9V3xnRRnOaZv24ZMCpS1w50WY0ElvBuaOnhUil8tJd7JzpdPrLAuGxP7JHgsvl0n36DbTdAovDlCD98JiiE8Fd8bmpnusDQoRmTQFhO33LOjVqsnbQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mNFz3Ted/HFXQEMqeEaxkwmYDVZBdJnw0NVnbLgnEdI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8DW3V8fpgqgf8NeWt+AXXPfzU0uI7wHITD6aI6k5iszEQN9WhB5W08EVjXqshDo1URwcSzkh3AMwWHn5Kl/sfSU+Y7rt1n+h6L4gg1+ADBeuoJgjichbF7RuOOHRCVM7W1/BqKtHl0kCjRJJAtY5EUS/XbuNzrzrmnEDrjGuI79SD7fwM7cCnIAmRvdHhl13FL+4EtjkZeVzfSrjVf7YsAnapGB3fplbX4t5vrilYCOGZxv/6UaLbdDQ5ak1+Ag+1X4HRIsJroOajO2/eqSu2oJcw6km0hkwuncg0FLaDjzXncDSCVmGA4r6SzDztfznGfknzFnbJxKT/PC/6vWh9nAb0xoYmDcIDyYnJc3fS1hHuGJLuby3CjTq8B6vsF/ih//p7/GbRs8seYyhnECPHZiC6GMxhUVs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mNyOxU5071tyI/JeTsC4DGPk6Wlo5dLmJC1WYysOKLc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lKx87wI8t0bzkaV+fI8cO3PRMaRzOi6bcDxg6XVvRxbtBRqTBLnn/0IEzf+cjuq/qHrCFT5qBsYB8UPFlZtntdYCVzpZ7YPqTbLxtYK+sSFOOsho07ku5bKy3YpcSCxvUJAFWmhkwlIsO2Ft8++6NfKB55Iqtabm6ivURy3wckWmhTsoLaj3Gy+hqn/uhsoZjF8iSHhelG2lmOZOIcns9e9+KQibi8u3RaG1X4GQ/333RSJD3xXbjvNwzgaJ8mlV4vkyi0vh9DtNVpvplRUfKyQujp3uDfOqgtYfYoB5KCStDkVvWq6ZSHOwnfYNI6E6xINVBsVhT/+GuY2Y2jeJAKKV8CPeiomXpRWA02WRFt7xT7mVlTDv9eTEkNxv0nfDqufMNudx26ey92a6mfT5HmPt297KLdwO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mPeV+2VuOBqJwOc6c5ux0dr1GFeY46QCb8jma0F2vh8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fnyLT42DmDF11mi7r0PKCqgH2BlvI2ecW2WQayHtBEOfRXFcePw+DYkhJ2Y/PnHKbH3hHPokhpjO7w80vECLdWHKlq5Uxb+nAH+IX79e43nfbviDNPtYA3BSfTP1KH4qE7RPrRRuAk7dYmAo24p/w6pVqb0z+z3ExCPtwvbesCAPZ+UxHCAJWL8vMap0bu7cjqQu/gS04IWCW6VukTZnUkLg9kidJzbOsZBV7sit8Sa7cPDR2xN7lzX2xa77kOe+7fm1sORgBpq6BwuKTxZzV/LkJTDSgDOOfnHxG9ctx2tt43xjO+ArnAJAS0QK2jLAStUV0liZ7DrIykIF/F4GU4PYxc5rJOJ3lDbU5DCHzPZrLnTqZQZAB+jzD6q9M+yUmYRjbq94N6sA9A+umuNs/y9cIIiWBZHh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mRjVvPdz1m3P5d6OqmLF8ALKa+My4dgq2kq2PiFScB8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "//xcV/LXInDNtbpdKWy0Ket1Xb0FfwF5sccFRp9C1lbHegmtMxf+KbX7ku8X/DMvR0VDrH682IoV7nonCJN/FwBL0LHX8aTkwEBJCxvOBJ03J4wDAJdLX+Izl00Nn/GN2lvwJRRfhUOwx852/kZ34GQBc7MCYCyCV/F3touz70B6b5ovwbrADv9W+cKGw5jHkb4ftBLxr6kopRsMiN6F2yzGToa9ExCTEwtDFnFBLHSOLNz7hyYkII/yJajg18qnG5nOxFeGiMmf4MpTdZLmoTooH1eUkQp6Olf/EbocIFio6/e97O5FxHRqNCn2mvV5BaXOK6HAmDPkjd25LkkO0K1n78M5QcZR52OeVbDM8kiohReFoi+TWrHetYITnPjMCSEXnKNGQy6wRc3ia3aSBwTn0zuUvHrg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mSU8JfnblQ1ApIUAeZc5ZBJfEAu9jw9qLBTkAmoCtyo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zCdBEGLjDDfqHkPLqC+0HZrfqnEvElCrs+G2fqn+MolRh2uqOxdu1YTRelVj0hyK6nv/6w2y90eZhUJJP0rJtZkJxCWf5C7Ngb/o6Lmj/xwSM2lNmRKOaygcfAY7ou4zQXrOuEJZUZGo/fY6Pz3jEUrySNBrdwMdfVF12VSc6+eqNuWQ89ozua0E6KG5FQbDlQAHdbSXSZ3QYHTtukBIF6nP0YreNnZ43Y4GY0a7rXOjIIhMBuE1F06REW7vFGrL0aXB6FzM53J6hT3CkyZF7QO5t1l5tiXlDT1rL+V44qdcn/57ZXVCAEB0RqW90lVmjul5kLb+Zb8XK3hwMCaR7KLec97bL6aAUHTgRZwKZMCjS3fADL8C0mJ6jq4cIMsJ5MGJMZ1+oF735EzeuZMcYEq6n4c88hQ9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mT4KxBCXvHeMo4xCOPZOyhVG9iGPYmr1I2xrNmyh5S0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Oalm302UofVKMDfHrUfkBXMfZxhWRd51fzzBgrq7b1uILIi/8zovI7z+0kaxekhj/Om2ecFKcS2WMGUNUV+TEcrWDcNU2y8m1o1ZEgd6MkKmeHNwo3iFX79f9b5vFeqcUsLg0jlkIHK1vC4jWp6n2fMoSXQBvQ4DHpKjX07BVZp5fIekySlr/hBC4LPCHOnNhYfsNEAjrp5YoqGNrwQem5R3DWUDyvn3dyiZE6tvKttE4NZCPD0Mg/Wmz24/Bx3p4C88w+MN5S/6vXnY7ap6uwZr3SckxQAcKWPhyw1Z82pLYKEZc0WJp0Y02+DQZh44OHgZde8Dsz0ZmkpuyYvVhWyTF2EF3O3+rdkAkNaR1n0BoDyoHgHk3AHXkDjvSjexz3tVATtRHgBUbnaiSDBUOtLfWQq+OlYx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mTqJEQ68zwAh4C8K54578TJ3ZVWhJ69DlS0pj0ZGExk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xCmch5K4HJ4+OSPq5Kjh53LF06JogfBGHHdfaq4BTyS6X7Tw9+oNS+myRIHfYeUMkPVy3FQ2JRA6lSww5L4IdvjCBR+XPWBX9glHrnVZRumr6YvtAKSe6/SSo55G21ap6C4CaLqjwXqcyS5/XRD+b0Sti7XamY2MXLRE7b038A9cCPuF92UKtkQDeMBj9+OyZMjoOJYvZ37ySijcHiduftPapup0Q6uh3ePl8UhzqXfu+cDVA5lJtNFiKOKiUAvJxONutC02T1uEciK4vqzBfX4qzw548iRy8T1Gi6S6PgU7T+a3g3YGUfi8Xfuoei+LJhdODxS5ZCIueJcO7IQrq/Hr0QEZnE3r3Sn8vX2G58xC6Z4miLN+NQqAgrJhUzjNQ8F6FFG71afMVUGe+w0uPoyFa8+VGp0n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mUxooWwF8UG6TA/J96xzuV7coqlju1ac1GWNsPhxAK0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N4GIUe6TZdvpe9/CC2VXf8GaVM9apZVJuamswfN368spSYU1/qGOR9NV58H9be2tC7UFzZnj860hzVoR6woBk4GhGCWb/LfGMknRgZGFcfxjJstUtRSs5YTq4AC6TAV2AkFwLZk3WbE919nFQc1wM++CO9GawLgDN4GYDPiKGvO79VoQUZyFl21B5dvG9VO3kVKvN+64m31kMTpKv7u7h3uh0s8+uHquXtm6NNMR+YMKkeeuFxWOxfE4P9tsUgxP3MtYmiHiv8bhQx0hjmwcp//FPGVHqDU+5zcCeKaWOxGoFPVdfSUqSHmqa/cqmCr9Sdxq/5DnyUADmktEKOCPg5TqEObNgkwXleWD5ph9yfJLpJ0M0iUCxlt3pGDwL62uDPDifbf2apjzbxASmw/Vs9f+wx/vuYwl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mV8T79PMI7KJu9hjqdw3x1X6ioT9SXek9LdedAMooTc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "J+qulzc0D4zSjsERGKqvRDX9NzOWTxAZR5Bx9x8mDmBQOQ9nw+/CNIUtUtVkPWBxI0UBjn6p84wgpTgdSKvRbuiCxuu+LMyWA3rVCXX2PQjCgjLKvJ7xMWVeZmCrtvL117ihN17MSehCKZ/o+J94q5hHtbMR/4LleFj+XWIbVn9EVdI7b80ftDxawzdovxYhxfRkUUotRGp4bTK1LbbdQK/meDHbx+26j3Ea4XATsaidgCDv8J5Qy49xzOwjFXHcYK+A6Y+k3kZ0E2HQCpRaubj/QDjGRIymkJCz89zB8uzFiUC8mwm8q/jRTWkL1u3x1ZnN1Jln/zeAegXB6L4kBYmUn0f73wmSsNU+WLW96rVpF6LA7O2jgOcdcBbpUnSDuiytK8DoZ2Zx8sQJ48nD4n0GvOFnOGnH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mXsSVnl8QdBu8iU/MUxQtJ1117PGBvi2jnwsTOKlEBs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6WFVr/FI0NOvP9e5KdOHGoAU/2s0gijmmoX5hWYV/6azF87NAjpTrFKdw3vjLQJpYdvSpXVr6remrke0J0WGiNR8/WzFeeEYyG7G8Rn8TLnKPFLPRsKjff0UEetKXpHT65quMylfLfOhBfZFktDMh6FuFit/wezjg583yIJ+s4OfHAOZ4XJWnsq4EGSS5B0xLy7gWQSi78ZG/MYXj2p4uTZx/P6kPMMbCjwNS4bEfnO+jzJuHHoFXtMc3V/MagrVgWX3rXmCdzHfzYoZ92JuaSF527gTJ6GALOWP3cauwlGbg5u4RmOqStvNn8QmKvhp632cCTaW/C6hri3w+9aKCjAvhn67pEYSGQ+jpK4M8gMEN0+QE/CyMidkU3tqLFLJJUDIfcQQISvoMSPIhNbixt2AqUn5+FRC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mYHTcfmK89GWa8YwFDvAddoMcukYmfk+ZngE7JdQvWc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "h4gtxoEUmmwp59Knz/I4TuduiSVD3FfbcxfIRGSRTSVAT4DTUckwdrV79AsXEiKSHt/fP1jJvv2BCX9GSaR//InQZZ6ZrQ70saUMs/Mtd7GL8NlF3ILwBRGqH2bxMfYz6Q8GnnmdaYondDRpX7JwaKIoAuG3vJYN0dj91WxfoOH9fy9tGRYs5ux7PfpK7avsJ6NA6Hl3Lp+wHIYv9uFuNJvH3ac1EYOXvm2NF60R8ZEBTwpYSlUlEwyxubft6caieVHZ+5PMKUQPue05+bn6FPwsffpmXDoTKAzlUParCwdbt+pjYR02x/9rf4uTOQQpgyzitC4sIw3zrci2+30qgX90nH039uOEj5be1OZSvpekVa1lbW7BV3a85FoNG+VLMcCmLik8yK2sIv0jkrzvSZf6oy35zezY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mYOFJW7ayGGRL8WYb+6rgY4jew+qoTbquefw0c6aCKE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BWkbbb8AMU88oV6MtgL2pkndRQxgNMtNPwP4uZY0xPmZLw8QsmoUWv9qyrYZtjrlQ9idcr2WLGrBrrGxpVtboZoj7c7TU5T9+kfLGBxB1lvnLukPmN0jvNj4XKnZMwM2LnUDETw6zT6HYAxyC5mWCZEL+ZYxJNezoRfBGMlmZ0nMNZSuwq8Or+aDAbm1t5SOHBhR9+BNDLaTjcYvYNPvWPAHML2htwyqxIkt+B1UP+rJzvLLGm0+jsn8Dk2iNGoztnZs7UpJ71OU8hu8aebaW/C7YAp49IlQ+EbEgSjHary5nQRMWYQLh3xMoPMdvMiiuOv8aNe2s0iYBy3rc/KBSAAUXw3Zk9KWe3Lkvs7a8vrkZL7BPU8usBYAFNHApe7I1X4p0b+uxgCzWfSdLfDKRtyaF1pPGHgP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mYdT34lLWrVaSxafeUCI+yRqS5VWnHvtU3uVpPDSZOg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qnKRj9Gg08lZlrXQO6U4GYg6cMD43elYRbPuTV7KQdqHMVysX1fssKJ1LAefc7gKUAc3vplFTlAKxxr0c4k+XKjS3KsK3jMHaFqRe8sSKSFCkYWGLwH6+de5kk/7nw3QCUoelUwkzAXVfTmxg8RwUOFVnlW5wRQo2NPfZw53f2WUAKC+UrSs1t7wGUn5O4QdPeOreS9aBiZu/sED9XUqxOxFf1WKpf/le5F3MZhmMT0S/NmwzFbAy2cPj2i1r/NxMIqnhO1wh6Eq6McvzNno+QgHJQGxlL3GSmFxANT7B2ewCsKI2G0BvD/ySPwXHTHagDN10bqrnEdmpj28e8xOaRb8guBuLlEi6dWVahViw5aJOVb4f/DdbOBUITr9S3PQc9dcSyL34VXoK+StO5OwrW+7h1lMxdZv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mZ1C6q+TQi1uZ0MjYA64GFFS8DxzVTeIkjKe28noyOQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WW1FRPVrjMN7FIr4UpwMin55jMzaBXgrkHloTvFdf2xkUdjK16zrfkhwYbnYzbCoKQ7jWGrTjm5LZp1FuJkP83wF621CKIOZ/JsnSsRQb0Lpg8Pk5OPP4CgQXT5ZXmlSkLszZelj1i6SUhqenzcEABLXorWUFfpy5pBm2dLQEqaFScxPS3Y19NwUincM0UG9SI2Lw07iYPLi3knv9f2S+mY2Vgxg8aG4751bo8FQpxsk+Pj+r9uDn7Vb8dNVTV80aA/k1IrX7HpWcG/4hIS+4zteRZZmt2HlhNx8dGR0aUO6JXvjBCAsiPmO2AfjpZBmU+DZPbT+7IVzkVa3Bdss19mji15zrd+bl7Tdm9JLhBE0JxOe4e9eOuzrvyvAAa5h9wy374Uu2+IIv9d9Z3Lygw4sTNHr79Ks", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mbIZCeCEMhy7oRZc8lfzGGGQufoK3Mqd1wbXRpyTJfo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0ex10mK4kwRAuySqLZ/V96o6j3XoZpAI0lU0PxxSyxd0GaXbkjpJpriGBi+F6NS+uuRBppAOrV91t9n9yoAWxuL/62cVx5AQggxPactIixSoRpAOcOJD0YhpnRMlcGFnUnFm666MTvKEjO5iH0ahY7NWkxXuyXCh3nWfDBpuivIDRBJte9XE3gQJNUTcjwU4E0JCOHv2wE8yDpcNsakLNXl7DXC1uZu7eN6knkg6DFZkWdL48q9KNS7xlzHzCuMH+wNPVU8zvL/VEpaXEWhBU74bS8yEfZsvjs9ykZv0/0VK4cd0qxfvALAAgGpA0wW679tVIE2TaN3fZvqp+97JaWLcsprQqBZ0uW9kEn1VJMyrbE3GgYE3ZGEXGH9O32UdTd99L1VkBYwv/O5gMmUq2AYH9E3wMRUS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mcu73IedFeCZxbvdSr4/tUn/ZDxQ13hAVqasJZAmiQQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nEjLQW5pFb+pQilidmfKEjULObL5BG0dwOISyLFrf0Lw4OOhcdA1V2i5T3kbOIfHFozgw/gQc4qcvpHhj697sF1ytzleEsUKfhH4pYwaqP1A4yceNKEQ4sKh8rc6F9qsbKJ1FmDAMQ3zeN0Y0HgV3QUiux8vGCBhP7RjcmmPIMJwgDUiCb/6ayxO6d0J4nNcodPWcGBhZtP3Yi2pkzYJruS6AIqeom63EmVeQtaZf50yyhHYnm7P8VTLv1tZ6hfN6E6U8jazfPwgILWCWqyEsvk7x0lNnDpJB6Vb9QG/y3biV2i67EjmZwR0o8wYaNMbQI3qDwGbgvzsRMwigCf9Gj3T1cTxac9fkFtBIel5dheyHqrr7JOtSJpv4pxP96Tq7s2A6WsIHgX3yhxWsFXXVOxOq4RYqjwt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mdsgHEC3VeJx+wYF9qPaaT/Og8K+zStKsTXyXE2Q5Rk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GGxzjB5j9Vb4HS+LjoNItVheacur/CZM9euYz0T4VB73Fd57C9TfIfw9bUT6/x9ySK+gUG/NDROcWt0qwENLGen5OOo2c5tkQ0V4OWKxuRo+EwE1TJvCMFVSCzYYvpfuwOXSOiuaO1v8FS2ZvoTLAby0r0NygczO2a5DSCs/zYIwwAP1h+De5Fy5HBfsJCo3ZiXsTEQ1pfxILOjDCVaBt+A+Cw+JTaWHZ709eSl7PY9QOet+JgBIOZ3LsGaox0CL2hVOkMzqf9q9ORsErPqDc1r9VcNJAseOqNcchomTEpxI52qCAYEv16nhZTBJZWD6zJw7YGEw7TcH8aSlEDbNbpc2lPhimjDgeLhEVJ7G3fKdaKYKnF/XoVsalbEoFAj/DtL2HF1CjqWFGAoicoA0JVux9yd8RXkR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mdx0Pqfx6v7Vaje9AmqmV4AQ0OI0JpmB4uMRzSox9+0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e4uJmJqit91kGuq2+f5P7Uj0kMWmz5mN/MhPpEfvBr81i8jSoGpsoQXOZyn0QhMKG1TfnVzZUS1/Mjwt6JH94Y15BpB5q96x7pfh9L5/TXk2Y7bD5nIC1b+6n0p3k37R6OLxEDuZmeYhMB4yzlxsQ/UF/WfPCvTrUaaWsX2WierUZw0p4ZOe8R5B7YBZ+uOyAi/waqYz8vRHQ8l+/kOllpfzVkhLs4cTT3OivgGcyZwYnS2Y8v6stobzzRpbC3LomfQ+6gNAFplhB/Elh7/lbgw14MFYV3JEjd9c3xQoGdMDutHFI8DTxTiBMNwE0douxMV+v6haXludtt5bGQqcRLuQGM3OlAlhm7WTtAGW8s9G/aVS2bASV80cts6JEyf9JrWQa6pE1J7n88grLGUlCgip6FxHL72Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mfCRyNIbk2cZ28kmYpkO6WMYH45PyLmRd7g3un+KOuU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qxU3aYHY2uvVTPA5OPKufqsM9DibliexNiKJzhjpGSEV70eDTgiGO0NZLlHlUjPGelxizlF3QgMsR7vm6x+yhZEm9As95wv6pyriwBWT+yaghQrt65QAcm/TEB6mXegX4zRl6bMGhx7BF9++1nNQnknxLgV+paL016zPcI+iDAJoDLYCV/2IrGyJR2LEjjmA2nAxic27w445vAX/sQfZ7BruEvx2oiabvB30Vx6NGX5m+mN7Q1YZohv6uc8gdCO6923B4eEkfHRHied+jLrdQdfUUwxDxKmfm6OU0lXAKZzvgLKjZ3zrJs9sdXPNJDLY5h1evvBjsUUMp7W6m2510VW0XVaj5KjAp+BKPpSoPPKpkYd0zeqndyqsue3/ndVwwDi6P8ePHqKky7Cc8Yhj6sHvhq+00qT5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mhHCQ0Miug2IoDY1PrMAWPrRKflk0dIOVrAr3B2oU5A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7JyPJ51Ymdpk3VbVmT2/6ylMFHGcN2RohueDGiQ4LCnWjQBeaz51L5AmBgu55OFuCx/qS5YI0ABgPmQqWO8uBJxP5Yd7a8HIAp4l4nF7qt0vOKEvs+oIYrfwV7HUF6X72EcIJuvLNafJdCo1RW+YpVBcyAEJM4CEE//+B4eEuVz/CPYOoISrsgpTJbwdbaovuWNGceaEUd/gO2DBa9eLh0CqXaNZzt3ZtnN1p9Lh3lkrk1vdbpJUVJQz6+kgRD2BQsuhlgb2bCRTEYOhugcnTenoxlSy9s4OXoemgk1+7VyaDvgirM8s7d6uYlo1GIBj+XuoSjyhC0JE/0glJHQ+BT4jTlAbQXwLrqiHvGtP5l2pYMOhzOgjXlzNxq2wGxcffPSheta00WsPYXA0tZI6jVH+vdhSHjNQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mhc+j/5QYpPvlDl5hqgE+epi/uamU3t+jMcvzBYKSOA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e5Jk2b5oJZhcGi380uvBDM0jA7U8c+gNmM1PjKUxMrBVGg7sy6yB4sbLvKU7KDV1ICvJacQEqzQvAlmE4W9U/JtU2hHSlvnXnC4QCqZjAztdTKhQpBMPFxMWxhd4y1hFZre/x2TpLbsO03yrPJs7/QAxXfkMfiD1GuNnMOk7Z1BIA9VxiYGjC5JkIuRmesz4U7yaMZCKSG27QIDvc778inH6ZymG3sZgVXAtrIvZPrS6t8wxwAu15vM9F3zoAOhZ0x1IYdVnxrwUXuQ/ZEa3G9s2p/uNaXfdOykdOY+3g7zy1PWh8Z/a90nC6xlqCCsB2FU/inMfwS6QO5VZeDJ0TTY+stV7HjVXPr+7ppJJ24s0SbY/JENo9FT6sop4S0vQ/P1THKoOlfXH6nanTd5IsqI5+vy3gb8/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mjXXhGkH3ACVa0Iees94cF3GWNjf4rZVz8HYektRF2o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tvUu/1eEGeX4fBYRpckyKGTNnDOJU89jc+9oFsLleLo7sXjG/cJk2G3iSu2zpk4CkQEnerUNutH3OsE5I5S4qyZNi6Rl/673+VfjLSTVgZgqHDRrKP6GZhz2sBd651OYtGocIMMklLc4DXgb1USGfVvhiTvQS758G5PbvqbhApAAbhWOdd+TgReQ9nYF3uBfzdERHR+Gw+hON2Q+svkEWxUhMECPeWw+QIs1OjP/TTfwMvwyYjlGXajKoglJkLIHa+k7iNwAsL8CnZbxSHaT2/VYi3JqhoOkG2ebuJwpQ0WUFgEEj7z+A7+YKw49U1Pg84GR+UigqcbwxutcABu6wcam/wM8tuPWs7LKYYwHwPduA50UHJdn/hlftcX6igjhUVElONRSaso5vLnl46dpDWD02Nd0hBbF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mjy7lc0BFPxq7oluYjLMfvThums6b6v5eDX96rNqoSQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aD24kUIR6w7or3vqjYiOJp0npqRrnGwcqYLyRsy5ruGyt0g0rjOMgWDAoL90p6E2EPIQW9SE2mUunW1tYFXCbn/GnVS0L1f/ivu9Jmb5u6TVwlonxXNRmWQypwzCjChlZflrERDqJ6u2T8ErLMBZ4HQQtJVPNFtMEDFpsIByLYJJ37KD2FTJ4M3geRr6ursMQjPFfm+t5t0G4K1bzGXp1nj8R2uAK/wrSk+Cxktx9yOfdssVmBzqb+vVKSRuRqZII+7gRby+GmCP6KPDTHnGts/yV1P54k1aV+SjfFOGWK2nn/VpgcS6YUBIuhoMh+ReZDFjSLKxKlFbj2Mp2E2L4Dr2tSdJLR9w+lDeMyOLiAt2w+BBQYkHeNCii3ldy5lX7NcdJeT+Up7NtJy5dCdoEg8r1obTgAzm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mkGTwapZ9QpT1FOHBJmRr7kIS2IZwNRga0c3YmpzRRQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v2kSRI4VUC3wXAbOGIOQ1KewqAfJblNTiVLpJ9CQ83UyyXhYxQKgFkYy4V/VzCELNHYdav91w620f8Ki/kEpCJdrdbMkAur9Mg/hNm26cfIWMIwwLGYG6EgmwXzlOKxhbTQpI4LcI6mSwaNEY0NRquc/YhSdTwzbyz3zHsB5SGMlwONoqLDLpKEl79fws9lpyjQNRDOyHCjYmWSDpogbf8kEP/iv4gA3ABGNy50Tl5sJNTflLVUEz8vn9s/8LjqZiprSEde9f44TKwtHP7+h5NqHQ3Rbazi+c9I7ZizlVUNbmaDd9bYG3gXpLZdjSlvHAKjePDHKQ/m0jbSwj0ryMpUrsyLFD+xKNLwhMbemPsU/fqv5UiQsvZUxKbRMjQUuscfgwrpbrK8IpcVuHy0TQIFcy2tSKoiQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mlPPQYgyvCdu6qY4I9kSe7DWHBO0W9iEfMoaq/1u6Jo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NQpmfX81cZzXVU7hgjWghHAKRPp+2iUs7q2Xb3Rj2ZqkcJLyfltTOC3oCAu+VG2M4W/tnku0NftPv4iqVzrkb5WaR6HN0pLvgcepk/CJwvhMu+bbHhSpHauR6Mv1CebEGJVfNgKXdVGL2jSsE4SHKGvMH4edTSZzJLkOu9wLPSlNFJSwwVRnWrO9mAjX1uzoBzImMxD1V/XMJ2cpaQGUinfrIJmJoufWJHrwL5t9xdVNo1ICLeqPrIIqIQZtZWSYWtaDlxDMCve1u1tTrP0cYeo88g9Y6HCglpPFBTmm0Gk45+KvXA0tJW0dxLzq1Qk1tY2TAxDeJhCuq8skiNApKcIr5/SRlQq/JDfBq8TGXbvsMEQOyXDhKrPrMbe/Hx2d6Qd5NUGDsOdp13FSxlIP6VsUtnmvodOJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mnrz/NkgXsylhW1bqRHUS2D1ZlfXk4VndxSdazRUVx4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9yb4IfWF6WsbZPoi3SvXCLEgoRjMxCx5FX8t7CMUDLHC5/dtNp9xcnfaZIPQGGG+l324DOs9cFJSax0MBNHdRF0CcWc0fkkIS/+0+qngct5ZJ/4hbB4zcuNjbMDTOdPChBDbZyVuNrvRLoRkRCSWqFWdtZDUcAhFOWFa0t2ZPDoPRke2XJod8C/faWLBkQfuPZ13y7HQdGqhgrL1rr7nEM2XQgW79GWP3q97+xnQTasfcuWut1fP2O1cQZ9SmI79jei9PGQPfiKMr9iMlthfgVqA0V7vSPqUU5rZW8Ex0ahWc3AB8KXtqv4f7PoQnGzkbP4KmFlJiOMBM5kyORsYIDZzkOaOqf2Q3h7I0GOHH7em9dEr0kaL7EOki4uEBCmls/KCjCD8tx6U5Xi2QxBQJ1bfmaot9lct", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mqEoKG35lHPxsvHx7wWYI4K5acMcs1BBBF9w7/Ei4m4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BlrDBeYxJK73RrgHNLVXUIAFD3xapqs/q7vNdLm0fQjVBwNoJ8e21z2wn6g8qJDt1ZIipkuGDbiHadFzvJktboPduQnYxwEFJudHnKFgcWn+UEefoMHgSI9fuDrIj73zJOhPVfw07Alj1UoGJWPLUN/BK5mIaoobms6M1sT50fiiOKS1sxQjb175QSFEVe+gQ4tQ3NT99s329cOSHggEDV5RNzaOIZ7NMMRfBQZTNRRI0yE7Wu5YZYUX6GfJwoRIvhQue5x6vA0FbF4Q/emeGJ1EsbgblK2g6uj3dVAgzqYJakYQP5FWtMlK0GWBbbBtySocyEW9NvDkNp6A7+gEjT6dCNryV4fgU1ZYCYdmjXxr8ODcGXvtOAxoZQk2O4LaK6yFWIm6azf40bfB9IeX3VOpf9hvnU42", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mr1/nEoCM7eTQR1QaEjQ3aym+NDmDhoJipEXoTst0SE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SqzU/xGqBLZ3lurGVaHPEngznmXgnkowGo4vJD6wA9A638BL4N6fWSlPIMzru19wbOv3DskKlolLMyEgmXBKlXyVg4JsRm8LVAgJkvX3IbKx31wDcj+fk9/n5sA0Z7YR8GdFxjTFyUBpBDldHQMgAkBar9LQwlUU5DZOkH6N3t0iNKjWYZslfak7wus5iH5eQ1GCUM0t7PcEz/QWcAQ5DJkFEmuoO7cDFuXKOUhWji29Qi8ibiGxIchRK/wFd6Ds9NBGc6weSY/VYhkA/3Zcr9BchvDTVYAnl282QXlg8DHi/HkIpqrYqvE4ZT0e1zEGqdNMY1KjryCvPNRa/9cauvYTvT5zZACP7lkJYf1ZQESHS5eqIRAWQwZD2Ap5UPX+D3ozTlDIPdlWvQhbmqkOnOb5HFlHxD/1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mruo/bfW4wvYhro2ByuSIZgI9Q3fLbZxuaFIieHT1dk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "urYpSqLh3I+hhTBbxzM46L8t69+zVZ4NoQkzqHPvvOLP8wYJl5+cOjZhiTQQ+dfOgpLjHb4kvkPKKko6YlK8VWTwhKlQzZCOp5z4cdGiFkCTnyjeXi1LhxUvCsukzYJAcQtD2VvV55bek6K9mB6WfY5vl2vpGf+OL5vPuN9cipc8H8FERCa95h3YX6RNybgkZDNG8bHQN6UMRORwtatOnLbwENjE5VbuWCyPPLHFaL3lnU+FI8XT8v8TKnOIHQA4S+lPArDYupMixcmxItYI6BYhKNPJO0DyE/rWYqQCXNP+aMf4qgyirH0A54hyq1cfASOOnmWyHplXKnBkSeGwXVE3ZAsfrAx6zVIm1gnHAzrPplDFDlzYKupXiJ1RdD+tNkdu0BasktaxlNkV47b1ahy8wjXj1vR1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mseUdvkOkDHfjC952QP+oPt8Vr9ZeN4tmZMiyUohSXg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Wo3APR4uJvKsOXLc5nuPmZynpcXsDgRGDKrwAUJtHEZtbAqIhk6Glx1AjLZZnpK2Thot1E34sPszT1YN6T0A5U15z5gB5qKkzdGLr1YNSBsuj3afyRL5O7B6ZIm7lZppt2kMFi99etYVtTkxBAWfjZRJeIrPVESaMZ2Z0tnlooNMKq8wc8flrMWPXOaOw/QfeKunv7+5RMcKDAHOGtoLN89xpCYk325JEGk2ckltQv2BYfvgm3IK3kt+XUtJkiQbO6PSz8vD9ZttcTL2XwShj5T/qZeEbe415emQy8EX85q027mtCDWYv02E20TEeQFytP4+F8pUvcWAZxfaA5o+mkmxaAboegQTn1Dy+zmh7/EbfM9snOx8bydrf4PQxfBNJ6pD3TvbQI9Xmj5Ip2gWJEwF2A+S3ZJC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mvV4VB8oAlwlkZh91Rk4Ou0cxPCCNSbSiswtCtvzKFY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FcnpH70Os//uuER5mgfjKOeYuZFWZLwkC5NhmjbD9H65xQYvt3l+G3ga5ePvhYEtEVAIjMt7zZ2wvGMdCsncpFenF25stW9HZNWDe4MIuxOEaoV2QmdIFe71SU4izX4xDvbC3h9x5g+KtA9eRV3gGAgRO0o2YmREwVqL0lp3iVq5Va8ozQA83Kd1iXoyWcuykJuf5khL/XvkMHj59+r2nZxtmQ8ghzpMASteV7mWRpb2DQgqlB/V1CozqpS2auRgn4HvIG2BGtGt3iW4XzEibjiygwFxNPCaAI/KXvTbP3jv8OdQGso0Ts5tOkZ4SUlEckunNTuOxv/2IUMcckAzs8RDAQlagDCCn/Tj/CawXP7YLV+5JdoNSgXPVTpp0lgf7ysHqAjOXobErguGxm9VEcm12jtH9NE2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mw4NDO44nU07VfgM870slrzaRR0DbPdlLTsqh2c8EkA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VAsFQkL79HCotNH0FLO+EaIDEYVXZTERBuK2uAl8Qc3Kk8uE2iyKwzsYnL0FDFvMzYuD7BcsWIrfFiBjy8yvAC2vgvJwJIjnYSAqUlyXbLULsRLz5Zi329QoS09BpQSHo3r99Ne1DO7pBwT3J3OiZ8Ww0q8CQU8QZ5HQjCLu1n5SyWfoI0oTcNJ4V7ThiJ5FrDG0Y6nu0+SsHNqBe4ewwITBwfHCFDJrHKUDLK2h1fB2YkgLHeNSUby+bcQ+MaF0DHpf2Fm3NjFmqqnFqaYoQz3b9/jRh+wQt3MWA6V462IV5KTzXaWvvu6iDqkfoX5G35JUiLSnXIujQvkdYE4x7K7W9t/oBhGShFGVeD3S5QQuN71a4HNIOmqG7pekz4HQk+jGNLtLKhkXE3YbtpnEkwBBXUIzsuh7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "mwbsBQ/Ka1UAJcpdedxCnDGHMrTgdPrcn9dFNX1kWKs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T/+SJgGXzogf7Alaufeu7sQTGKq7dBtRYLFhdMHli8BV9nbZt7GX5ThUbLjAagFVMc/SCjU/7q/nWNcxXmAUA2B+eMvrplNQFrHiqFVLu3VKlqSmZHSwmBGgAp7OK9VQdGC6LM0OBElg58jwcIZatT+X1AyxPaJVhtR/qoDkCvsgterYp2n7WrfNa0vjgn+X3cRnyKO1Oe/uvZMRsvrJH1FjrGmFtJP5d2k+L9g5+GfnFhh968W2IwrRtFz4QpwbyTSZsaK6kTIcXLzSMZfml969OniBN8kITiSC2HYIiQ1IMvdqiRZP28GkWkT9mLPbK3Irum28xLpC65v8/v/LkntMoV5hcJ4eQ/tLfyu1bL6MVaE8Uk3fegKL46kmCLr1i14XtDX1AkiLGpYhI+JRlbU5FCh8oDrH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n/IxBILVRt2o+jmhAmrOdiHrhHGHTcyvbbaQE6Wmb1o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KdXXLMSimSxn4JTGJ2iktCe3CvXVHx4Jvvg223y9RNroJ+el0Jt6yCt9IVnB7A9LJYyR/5zYziwn0vYyNvuMogiiOy6AzuG+zXTdq86KWCs1C1HEcx71Iv40ZJbR/x9Yiz0Zgpp5VzQvDTAKtzblCv8vZ1i2pyIWRwAC/vQDaQI8yjEPJ/OIYbDGZEyacgMbL5a2c7zs5WHJQ8Lsv6lxSaUX7+fXwMr6kJ3jaR2S41BxNrbUGHUH2WD0ePAElhtJ8lKc2T141D5WWk1BtwjOZph3aqQNI9aQ2Y35aVA/zsB1BU5hWV7eQ9fZVuyR+h+rfxlcGYFus7ti+HRZTo07zE1O3mqKm+xG3VRGWh7Lr48Jbj53F3ULpqAZYOSn1KlrTrqhWP3vMjqQmJ3vJCsZmByoOyc2d170", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n/QpGehublWMgNIUgyjVCzOE0A/ul89naG1wLjiPfPI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IcE7r5XL4qG/Ro1fd/WNieQpjdpynYRXnoOMdkcQ3WdYivKwGciIh47yLNwpsCDegj0mJFvdDG70/Kge8fdk868ABmFMrJmjTOMr3YLfL08rwjZy2+QNps6d04lkoizUj+evPotxiektGj2IGYcuxprYlFyl2UTLT582tHgvkoGAXtDc7khwP9iqQpprL/cJG7J2+dCskwQmANQ6xwKuhklarj/CWgt3PcLNdoRShRIRZvgqpSQWPKnrES0eZM1ArPac4RJufrbhZJ6VGygU9ssEj5+eFbemSPz3LYQT2Ur897idgBzRvidQ09LrnYwE3IezSK/S157kZnOA29mY/tQ3VcrkR8ClAT4y1ADduP9IwOmZYxYhtxa15vk+hJOH9ojoUA1g4bxvpK0RgfA1ZUGIgcmpUAN3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n0ATfJV/edvA483W3Pp6RWalr0WJKfAxsu5rPzWGFTU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uf8+GT0MWerzA9P0fRk6AiJzhnOF2C0FdO6IFwoESKnFnR5IrIQdfJabqSnAS0U8qM1Qjit1MY2DCKVhrzLrnj5n37W1lssqSGqWAkoQDqQxee0YPPoiDR4vl9RQx5Mgz4y6SOYOt3iT/3lXOwFwa8tfslUN85g+9AOchf3g0WWeczqB3X+ABHbtoalQFGaElPM7J1HeyHhuHur/YVgutj4xWTYFdyVoSR36KJYInWrQu03Bzcn4Iz5OznZSoB+8Xc1v4E0y6ZdTwhARPJCv0Owhks8wXksYpeykCnqUxXoTEE489ZCNgE/6BOILJ0HPwGd4mOFFzU0xp3oFrmWekZ2x5P559xp7ZtNKiFzT/00ebFuK1XEQJZPctO+uSw4H+UoBin1Gsw7odQH9iAPabjS1Jr6SdFUc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n0ypcKolIaIIDRYhGkfwhnMu/1mrgHgo5M1vwfkWtao", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F693ylYhqW6tSFBDVCd+rrbTrz1Io/JdZGgIseG5pZP25dKQGE1k27Bob8CptV/nI0B5yQZDe3KsqPon/3gwWlhIQSLl1yTFGZTGup4miGKc6h0imm2u/3QuII41db39m3HNyNF/qQyu02lgB3Prr6zt8Hs6LLN5sq+01vQwbvSmDqFzlw/UoTGaze19GnK+SKm0hyXdKbbG5qh2vGtTMX9mJ5EtS850AsNYgV80p9QwJ/d3LB/eHfanXqXovIR7sEhrOsrqP6zTHBqgCQgKYfpgQWPnwso5ohT7V5Km5oIt01IkVQM7b0WB8OdVZTMH6kQ7KpgpOOteffWlzaEY7wgumHb7RP0oZlA4KDpaERpPsBKy4omoPYgNlZlzlASRPfOys+789qrPRW69j+kmjeMZeo9tmY4Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n1zpZORVx7nCCG681ay8EylGlaw6xWzCavKSkEwo7lg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4DzkHFUM5VGRFIzwO8fvBPqBeKEEE4Mkp7T25DjMCFNoV2H/+0wsHdRrFG46CUK4KJkXPv6bcbeweCqyjLBikZ/r77uOECFi6TPt8ObzT+96iAZJtSXc0eoK2JjYINZijfvcHYZGBGAUNy9pVyQ+wole97g1LRb7LkxtCnK/IMLD/KcMNuCCUMbmgVJVUhoz3RnHqi8EzN+s0z/m+FvVqeKqXanvVlebkdavSqxrouVzOzBo22HgE+XzTY4dttknSM3RZCZySpRVFc+J1wmjoTW8Qh0SnvoXtdzlnDt/XC90Zd/iUbiNdDjEQxmFvPl2OmzsWBN2XL31Kh2ocYJ6uHlQQKyIKPoT0DfWF7v91ymV04KhTe94+MfPvxFjjLP5a8yq89pDEKpwIBED8qDOJOIWenRDVPoL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n2Ddvey//gEup7B5kloJEirgCZln4YrleMAiTNMaf5A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "co9eafcqojzyuxO3aqgbeo/XTJXXIFV9FMDAjEHhgVICQsYX+sUtDJ3EGua/qJedCRXRcrzihj6HNdZGYH3W0UdBNmQZqhfiX4avjv1ty1rwgpQ+vZu6pGiQJLrU4vRvBZ2DfrXTxB8kx2vISDduUkgsP7arFYqvDRo+p9gON3oKAvmaiKl26S7kTX+oxCW/cDIcph6rLNrai2xgF8J0PiXjrCzi0glmBrs4VyYW8MvOcONw/Ct0RsjvbaC6hWxB3w9TvGwYaedtULg04xzOKAI7J9VfMzRhemgf4QljkI1w0VzGZ6cBehc6Ot7FtVpIRUcybXa4Jp+YWchMb9Xr294XKhj8NTmDhvgPoyq/jQz9tyH7zhm0foPk7oPohEovI7PggvGuSHWXls5+aVW64xMsKSFyS3dH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n2KuKWr60to/FHbcqiIqaod7/y2+1V08xmTtYuU5Rbk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3BmQKEzr4zJ3z4yukF+Y7MOtVcSsAi1guIPB56dy4kSbMErcwmWNLFnUGxQpaXDGDd7kTEp2FJjGvgJXTZHr002XbrGu9VJP212xHGt+4hGrwaaB9Z5AnXc+KaeGnz2XP+IKquiGIkgg/7Ta2zsWS4c82+EsD3VphAKH6VTXrnOndzfDnKrKvg4QcQfXKhW9F8pZ+gMbJoYbrJdBQSbRIZ0xy7BNXdPE1puIzIDxSQMA8JdX2qWR6rwSVQLPzqbwTvQrVzu441wB+15CTQZqPPRr7SEMweu2DIY/dHXOlM7xBNMVR6RMini9zrNl5cKAtdaQOhiJdHVFIo7K0kBQVEEGBDpWJaigclbel5qJRGFLO82x55aaPYKN/uXlH3fOvaDmZex7xVZ55R9PWiyXJdGnI5XHSll2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n3+tRcZJzOMj97NVDJBjGs/nmJlgiXQ5Btd5zFtPJcA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UwpJU0xKUth60M5UUsuKaYRzY+mrXMvsRCo1IC4fRXO+NwO24OG04oANeBNweOfbeLjSPnno6x5HyMLqqehh7ZEhK/G9CckV3YYnnRR/muRJ+N4qdOIBvyXBM16o7A1vEd+wWNZElsA5vb274G3NowgXX8sGAtzlmXU7o2iz3Y3fSd1MH8Pacr5rGlmbsD6tyv33LuecKj/2P7vKFoCBSWkU8iNbX5BKWYVQ4SsB638vcQEYdh7iyY6r0RTx/vGUupCJ0LP2Ulvbxq28KohwqODB39okvcrivB9Iwgg1SWaGWiS6L1gKz1Kk1LdpuCNcxD6VJlGdd6zUuVCte1/xmNCz+nOf87DrhlPzc+E/wZrhWBn9qpkqokZ4OxS82jd/mKozd6IiNh2astPvZ/+gJkJuqbdSwbc/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n65pBs4w4rg45eb7p/iPNwp8z3xygEEiN2lNioA+8nw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Dpo5WlSzisVcsSH8RkWeB6fNSc7GkE5hOYqqZ+S/F5cSX+G+s+SIpgI/LYcJVAkCVzFmZpsY13cAib5w97vr8vb4w04Twc1X/+HSIZKIESVN/3rEkcnQcUjI1Th31MohvRqyoh0h3E5g7Csym/SQwPAqAMpUdzAqtfrwqLzgtLAQV0icXSgSQ6efN7i3AjLonYoBQ9iekxS8B4IwX5/UaM95fBAIM2DHI3RXpnSX4j735fK/rnrAAvCF5gmHlRke7w3acLjTQLf0rSu97INFCJa11wmYqYVoNHt9ZFGdLELStXle0D1s9UymV6AfC3c1ypP1prvuGvyWmzIY1RwbVGylDI4Dk/YHQ1a6UqMK7XkCXSQQl8xEJ2M073ISSg8WujJgZaQKM3m07pgnFpanZvkw9qTlaprH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n86cvAuVl2Lz73d/Ex0t+pCVrsYzmKNVMY/C7yUiZAo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EPqjsikR6WXUw1B/3ISiIjMLbzXxFKtZPdzcSX8zIjDGK9MzkqchAcGLSoe3HqBhwaACq96d+n4I72iZKk4zDqb0Uvii0s+qUAMImrdSbiDZt0S4oQwgCtM9wikilNdlaXs+33UTkZIncUzT2ebVIqiD2Crmez4tI5Y8S+ur4TDVl2auU68dsnrLVWOQymYj4f+vp5pz67deaDIOmQ8RSQvZBfMj/IO9AUp+apQBrhhCMWnMTR+vopgUGF7SFqA7nMgjyD74Sd7Q70XNlatiZXnPWkXYpfT/wGXRPffeuX9wRpwkdBi3myOQs+YppyuF3e3MsPI8K98gT044iO3Fgcb0ldM+fi9MVS9g2DXQqttYzIYV2u9kt8d4f2xMvXlT/WqOuEul0fK3N5Kj3GP+Mpz9VjXBYqH/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n8fnOOlMQFALQhwBb91DRb7TC5MtuNZInwzQsNgAQQo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9ufUvnfObBYxlxJXHDW8PgJnCN+1QtW/lUYXEgL9VOPyoHj9PdTDL3n1+E6UNE5iA8eUgFd74IB8zQNR6FDPJg/W6WX57LE9ewRbUNS6XaTT7mtAYjAI/WDgkX8KtSJ1O3PVVBwKLjczcIt5y3JF6sZGQDtK53RmuejGnAwcQ22mjIb3johe0kfOMYx/0H/BhXPaF1yz0NkYEPIc3Rj0gfp/8E0XOOAvIlkKMJh3kpj/Krvqrn4c2mHBPhGoxmRBQFFP4urJXNY0p5tEtDD8UyVu6Gp8gF6iubCP4PJoeM2d8IKkQ48ZyPNsLrR3ZPYmIu1qTZx82Tn7WgEG8lIY17Ev6adZxO6gkgwQ6cDDiKNAQywlcf3eD4oVKt6BRl1xkAeZetPkZTAdhqUSpNhZWVvPz6jkgf7k", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n9+GjxsTMOb5OOYV2WOH98mAnWiLH7Oz61Oxnm4T6DY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e/bgs6zDD0ytUHX0DRYfMANvkC5+U3l0Z6NFg8XfygPCCUXD0z/APzq3riKpETAQ9yTOy2dPm4kcrq4tAJy/RopH3yAb9tgZBmkXe0Sq7D2/CxTKlYHTU+gNn6/Um0QgHos0UWeTPTa9zQWzxW8Hyf/mAQX5uQWXByMxREPTctbvK9pufknsxDK09MnSfblAj9vXmcZe2ebcw4bfx/y81ioQd1pHhRsD5FY1mBh9tJabkibitt5MVR+UbNYxAWReREYu2aWQ+bBrIW8O7UbALxrKkQ3i0WNLLn3eWmermJwIcfEfVGuPJtqUz7VOxmRRIzNs+gE4yOOyASi3UfnNAUoK1vulq7VlFVpe5TbYoqsFMnLy1wpCsJOY9t6TlkRec6hJRS3K8nznAox3sF6U36hwaSN0IMmx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n9+pJxkYLAbT8eBLVznpWSaetafsr27dVSMpzvwZ+ak", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ma+k4JIZCCt1acN3oY4GgMp1yI/tvCBNnt4Nmy7VD/NMiaSDXgtM3x+84oSJy4gZMx348KD1D047/jzBUbBKpNZdgTgGG/b/jwF3Ak19VMtupftuelCkCJLVXLroYasWX4D40xSqquSlAEqnn77WTPnacyE3QMCPs6h90AwVpnfO84jhqYsbXSEPYMhkZTbRa15e/KCJPQz+vfPTNrnQUzRUJRiSnHoImoO6pylj5ekNCiRqhEhTmhoXIIonX6X2NEF0qufGhJt+6jaUxdtG/8fnaaDWRYuk32H+/vHsmvx6X+gQyEpu8+2vv14+qAMilXFxjGUBh684HmhosC5p6FmfRIcHKGabnYmMUzLQGmXohe2zZ6qsfVX6ysQsb1F5SCQ7o8Zz+gwVgqY8puQJrPg7g4FvFDLF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n9C1OeGGjGA3fChTWNK8rqVP6dU97smJWv91iAw6Z0o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZD2u3xrYUXhI9w7E5peVLQgBRTXFL1ci1FiYqblplKDgDgNPT9OPfqx5AZRp1q4OvyGAErTAxoj56sL4RseANespxO9sQUmNS+QFX5O/iqoSG0OXUJTSXvUNbAau/2T5ffyhCLsuKR7QcMKH491FCeHsGvGxEYw8/PBThmiZ8L4eIemViy6yhXBoPLO7kh16rsIsxLG9iqT0eg3fDVGy/Vtxe4SM9IK5XTXLvRBeZjdqlQOCINiDDQwx2CtHSXSl9AWd11IGMUbsIVY6FzsRo/MKDXNaoKuaXvcTLhuTP3R4tnvoJ8M9JsZcWkd4rE1jqvfD7Yqj9vE+gVmnkTiFba8WrVBL5fWho2hhJnYZxESlhlNFURLKPsUfDCMXLtEIW3GNmieJhx4YaVEdooPImKLuvcBsHMxY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "n9nCqgRyVMhOFfBYfuhbzOrOiSRoNpX4AzS69t5WCJA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NmKPj5BXtg2pfVcxfIJy+VdQslgBUNT359iMv+45yZ9Fk/niviDC993XXkEZeTYZ5zlh+81OUpvlPCy/nKr93hsX93inLW8j/uGDQZOMtHt1/mdSF/D81xhzKeH9b1V/VdI5z1u56ugyf5DnXyBWKrmelJ6fekf8v+eoDNJc8alp7kEksCZW+xQ1+MpE7/zBXrk62dhymbzOKuj/VcKmbmv39Knp9pnwibwlDaxtp/ncNq+WTkg2ZR91mE5T3D7Q0s8X/HIYDfe1zZM4dcT4gUOe51KIxhxguWipdI0Pq6cqKQ+mlUIKWXoi9uv1CGBa930cNCbEGl7TZZzInCR1PnROllAG3q5cSYyQD4BI+QyRJINTRmVODc/21OOHPm4hdTi0HjaaCcx7gjJX7Tw0u2joSHz9dixR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nBj1CAiBjv2ErIVm8hMgJMC6GnZ/K2VH1v6G2WU+j3s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q/m8LL9B2OqgwbmfCoTKXpvknNsX66MlSAxfMe/f7+C6KW51o02HVpcAycQmCihBMne3CAaOpDXoFDHk+JDLeudFR0ATwCITO0czEzFEMMnS+Q1iuOKsNiTaEsRTcP9XvYyU+R3EzjJIKyMCbGQwndxM+Nnx9zY8GQ6n1JYJSqxYdBP/EZZjEnvepA9dx5CwI2XJt2LQd/5ZLDKyInsciSnGtFMh84FfcBGg0D+a5vCh0s9z53XdmqDvIbgoiTFmiYIry/l2hSg20thp2cdYEzsqFPKhoNuchbj5mTamXBHiX51r6LaqyPAT/itymIu6FY+1Ly85zI1s4HnuScnW6/jG/ecNl4Usprnv3+hU6yqKTQAvMmHlyXU6QBXunBT5cjLql7Lf6j2AZu9YZ2vNDc3EJxUvBmIz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nBjbzJmWPxnSWYJysK0HA0uxWXIZCG3zWwjtLLZVwCM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YjdKUMtIhzeVFQscUBAlRSDqI21aRiPXhCe7Q2TgILY/nO/kNiefeyNxWRGUtpgtbC95wxRiL5AbqLwQirKI9xQHN7vOSrViK/bVKi/sAx2lTnmaahlBGqatXFHcLGTnLRhqn8z9nAfNL19wSN5EWMOB3M2F/OVMzW2uLgX68ngNBgIZXbjb2lzLYmnM70uj/XX9RjOE2vp2kptyCqSvx/EL4p1XGn8Z7xh3uxvOlAnpU05aXUo2tfpc4t2ytHCprNFv38oy2qVXNgS2vuURw7DSJAZVTqBWfoGdTlyCewwsMAHLArZMZ8DOE4RrYbZjk1Fuw1zJfOG8J57CRmelHOtRMQFC2tM8avHVkelDUgyD2yzVdf6jZM+uRAffohXxnWRePz4jUfv938O5GV2m8qvSX0OZ3O0W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nCJgN19ilbhS02SElL1F0ZqRNALwAiOiZIt09e4EXww", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MJf9ZbQ1C1NKlYy5gGfiy8k0g/1IEU2FayGs0t84BBj4E2unVbpYKRRsw6LTnh76V3XMImwIpceP2yLhhXKW1xHHmX1L14e0lLHuMeFZgropvpsSCsEgHMJEd7iIShx9JFjnKGll53CfXz/8+TMeJJuPAjvSzbqOGQPAQU4S+Ht25p7IS+1HI+q0mbwoSVwG7IzDTkwFV8by83gnsOmloxmPTGE1FR93009jDIzQkmOWYGTSyeaKfGFDwHX4msBT49yv1bYL5YBh72Csl14RKI9muoVXvRGneOV2Vkuq3FLc/9DIjgdxFRISlqmXm0J1oHp09hH9CSsw2AvzrHZH8PT1LbRxHjQnL2KXoIJ4IWbxZZGPENk7hQnYYg1GS2A1HoDKFrmejromFvBiPvQWQgLh67lcDCvF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nCg2FpShEoIdw4OuFVbg+o8DMF4g5BWJJ92v44gZ4cc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GOPQmB/grb3QQ6KcyBijd11WL1UjA46OxvjwzQQcUQp6KsjDOYLp/iNa6LhV50nlPRGkyZ3JjtkO+11AgRcEw5XUi0usCGvFxVGw6jnud4JTGH+WbMdI7F1chWtNYXvHy6+gqBpoWr1j0TgkR8DsFm0866zVMfnzsnOQT9qsinOgmTY/3uVREEes8YKJrZYy+f9l2EKy3k7glSHTspHryOdsycWScIHz4c+smRRP1/OB2Sz3xiRXzfdZ0lgtyeYRbFmNTlHNvVVCyNDcTLA5FWHzUQ2xEeFy6yBIW9WpE1CT7Re2qie1HlKCGdkO4UrbzHK2QyvZrsOhlxBCHudKefkB0dq78TcRmhnKxpFquxJSGjwLG8k8UmjTHiYNfpjj2oWUBaITH85Du/QDOKLLRGylcUP4WGEG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nD32EjLQBHHGcE7cvYF2G8FJCsBYg1yuIyAB5Cdc+/Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4/P8GR+1wBs3/76zbiMChgRCkXPPgtzd/ucfXecCQDMJc8XnXxQ4bjDkRgHun6kOtrM49uqQEOzYc3FY8UOhs9s1BAVs7XfYBKWMVKxERvhboI1QNOzfgAjkgaoDu7thDdErfJOrs5R4qwPPh2yWbWgzZiCgGIysd0hLgGbSxLxZ/TyaIzQtEtx6u5iOs9DVquB4r4ANCtXVirCD9jSzrNceVN9XrzYE+NSfmlTz389tGFMs2dXHGz6n3/s5BPktXcqfXRY0tIXmObAcJF6sVJupQ7AAcwZYQ6/NJTAs2EIbNDSxlvgXc4nAVBktzx+jHo4Bj/xHkIyjslzTayGZ7foZV4iGF0LF/bihi9G1KVJpujJAvfokWUy7Ysy7xYHUPY70RTcfSGdbGDG6QW+yyc5dSh23aFoa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nE+ZcMZh7tf2ftJ2bqyK3fmzfgV7DpcfPBmNYh2DESU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8LJjWUGTUGtSuHXiZAHqkQ/hVlhcTr4O7IDMw8JJVPxwZxBFU4RG2LaW8dBtMSJ6mOSHG3c0gFFj5Rgb6vj03iaIoK7T8ScL3RhXaW15rfbVdap2KVQylXFYoToSQgpyNvKPxq8EhDqBgLhLiBQ9cK4tWt0BqJR5S38Mrlr1nZcRPgTTT/2Ay5Uywa1CmqXlur2sI/vmigdnX8bDpCr8/5FpSAjd9L4qZm1097a2uIxL8iAytWAPj+3EUurwyS82Fq+onba5dmbM23HGNXqlo52nmZRRx3VLQAIQHviKDtrPtYp+FGyg6nah8cp75XbAu0JesRa7p4fI72m7w5cX0KXLGgKfJzFx5M1zuEPsyxDIZ+zW0wcWAVDdKUWe6nLp4Qv3Mj2IbkG8XXqgGIc1l/ujz+aBBTuN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nEwcx2pNrCczVUI3lzEjahGsk1UBzpT8a0aDFbLwROM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0qKu7znuqA/gSs+odZDfLr4TJDd9YliMbYr+g3uVeqxAGxj/ocMEUoTk2SwISxkS4WKEEIDGIYC3LUZUYoQGV8pTHcsdg9CKGs1QC7BPnZLp/04cpzQFVrit1AUOMaw5oMggfVExIegxzNemCwJmXbU5dqs6+AEtVInXbtDnqdxM3Ksa8Lv3UiJ3HHMDbWakemV1LrCEU6ZHnfDRHlrcLgu2njRVMe17eDD69MAC6JRzFgC1x5V7WxhL6beNmTPqamgoBsgIssgsDFZnVYHxF4L3vn/VdOh6s3DUSak1B95nZiCdEUybPu+o4vZRwYp/3F319TeaJ1CUVkAnizT3waiS0LKCoZESbAhl31EOPtdKRNu5oQOksc8B+5TBXPhzjIvIbLm+FCA7w8FGJBPFTlFsU0hATBEs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nF/n41H4VFfdtubjKwniGX8jmlLAXRhhtCGl+mcD6C8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aRd3f9no+2YHNQhip80XGfzjCgjuF716j6+jhXUgHsy0cPDROBHsv8wggpQl0+249vYQnSoA/F7lyeLLAhqLW6a2adVaGsWepCKmlF/7Rxh+5nJM4nk69dWQubl3r8HWhKfphLtHZfdQCDIOtT3g4tjpiU6K0hBQ6G/Jjv4GW0Ogp3Qk4nXAzf2sba4taO1s6dJzmQiGlugqTMor2cgwMJI6+CbG/eJW/kYFjKCDPOSoC5fsOU0Q/SL6rRjIYlS644T9qT82Dp4cXX+mJtm42s9nSb3r9yGROlq4VUBut0E4gSCHOw5bY8aUYmoPh5WVkgdI/I98df7BQxxY/IfedGxLWVzKkokmyWlJBTxp9uXBBTH2vJ1Ke7xqI5ztDovWzQdNO83O7y5iTk7uIubgKCetrOtwlH5l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nFW+PSZUp3oEfJ+BUsFmdkCuh1Sx7X84WDXaxdDJJLQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vvoQ4dBucfjVxjliyX/0mIKP0bUT7Xl3Vv/RW+O4mPdMtFAzeqL34QQS3eBJ7SChSoeH/zGNC3r9u1ONyrYgPC2y8suIL0aQNsRabVq28rvIhelMChbUh1WJTcCGhemM9KWAGLmlch6cSM+dicY1SJuihvbGrO1XRb2RTmHtE9yMkTQpTAIIqAhAJPZ/9KRARmAb1nZnuaJ34tcu9ihOS8P15V6+KJBzhZmoBTcWCsCWwYJRiL0gG355VsWOtebfRAqI5F2b9CfjDVJ+kLkssa8O6eLY/IBECnr6FjtyWDed7LHgp+qcL2dLKZboNmkYn0Xlt2dbVPIza8z5iA4HXW7Sq42Kfa/00iqT9CVbTP1WDa2wyWm8Z3ecafoXxRrLV3YITRsjWesWLC7plpUxb7J4ZhNC8nGe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nFWNieU2Ruqy5TqBNK+ZvP6MAgI3KS4NvpHePEqzlow", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Tu/voUjhNxY7kcoXmzSaJHk3kuwCfY6WNkJ29YZWb33DxkaXOWNDwa1GxYHLrR4KQzGHj4ugbfTDhm9aUxZnC7LbQX0y7b9qENEHS4Epij55jU8o3DbB/oNQFQ65jLYbcU0b6jvFbCc0nkkwcWT1VaEzoLLRRSIYqNMIkmRTkOqxiXHMjgt1XIH87ZpHGip1N+q9ORHGr7MMMcjqeWazzmv4eGUADPhwWmsfRcm9OQyk9x+VQGVLk7d/IkWqc6ADXb6GWtQJlPS8TU2MkPv2z2dDt09j0vMUtilra0QJ+/Ke0YgkmAIdIRo2FTsIuAki/rRvX5YZFylbv0HGNCg1v2JUa/xWkHlpJZKmagqC3SHyeatf9WUlBWVBeNaOY02aD5mOQPxAjFXK2c2Tx9UQ5Du6ploJlW+x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nFzrwaYEv6jcCvt0YE/LRAe16pF4fYN7x+LZoYoTcY4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "51d2WpcVAz1TYaqtwpv6yGWV56mf8Vzb691Ec6jzf4zO03tNJHsdl43CQisKNxsLTzGHmRxL/l4xhFBn8LHMJhce+Hf51KKDZEym9iiMgRDwcTfzelFw0NBT4pINzgae4yMM0tgn2sEn4qifZdcfYyebSKkbWPoDyaTBRxmBjbQj5/z0xrVZ1QaAyhJqtAycB+qgsnVIo+mnCe1qHZ58bxKAk7w9JOw2OfNHvC7zXKS5HB96cpqeSFiSZmlWqMmLqgeXR9K7XRGca4Jje9GFrO2k4LC7QCPTiTeQB2KwFfR7acqmwxXp/k6o60ih4lCh61EQcL2w/C/OMwQTyZZDpaZoJs5gxrO2Ni0amClmDA0mu8SMcU7J12fcVlSwUWsNaD7Mn4tynNhgMWKdU8M+TxU6gVpFge8h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nHWvXq6ORcg+9BVVNkqMs0SPn6gPk9Sn/E4g4zMfE3A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9VR+5YR3qSlCR+vybCUtdtzH3YNv/F95BPqMh5iDc0++zeUmcNc3PL2mG3ZxR4fzpREP4mprQB0VLbcT0NsT/FF2gjgDyStsOnQoSyR8sSd7YSyXB9qUk1zCxd6GeZomfQtcywCb3KxqUfJEWBZH5p4m2SDxYk8Kio0hJIt//iEu2cwnqhaRW2bQTID1upxBQfxiq6DFbVMW66SsHOYnln3JycIC7xAes4UnGVGRHVU8kqXnozU0rh2f7X1s1dujFRaFJnI6SG3OWdp05GwS4LX6+Nz/P2i7TT6B0u6OLL05GZyOGzwqCHnWW7FIUp3LkYvViYkjizdxhcmiucwrd64fmgUzJF6rXI1FMeCwN8jaRu7iICOJjLZXh8TF3Jf8SSIqwSRFd1cGEVG9F6YVPfbBLRPrfZ+8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nIYiVkWfC3qlh81Favo1AQ+ICNXrZu8oD+XhMeTxQcM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OF6gB5FJQkqjuUouzFTQYvRhY66ytOsKmK5FDi25bTmikMgEYfjny4+sp4tCR5POhHSy3VJRD5LkGa/orwbwr574Rqr2+JCXnvPhJOcDy7Hr0DvVlbsVAcSp2F00/zQDGWuMNevaJ4cpcxaJyvPOihZ6zREBff3v34ZOSz25AiZke2+AE7rQHxAtbzXTH1VQTg3Vn13ewN2AbUmNDwM57GX1RugoVyX3XHBSd5SbhESrXYu50NJmNdz3IcVTEacJBBLpd/cL7vL2crnQ96GuhhbrgVFluy5DUfnR6xBVpI97dQ+2Udrv/Wo064GsoUrt+lv9c/58t5p0iK27xv0nI61InDpDzCumisw9P7yHbnHOb1JZq1lE4T7tEVg34fb2qN2dVdv5LSVyxZ52K4qqcC6yb5kurvwd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nJJNqWM5Y/K2PAsRekeWnpDQ/U/PA9CTjR+77xGlT5g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Jz2jZ1n28+DYGs/CzyNQNTur5QZWetikejr0ldq3Smd7ZOnXvPV5ziveRmRG6eKWpDCyUMnvFaZmmh6eqAEkOO3fzKQfX9jl3lZqEiMrpab91ZTHzgj0PtAYH7TuzYRp+2/3tR4/PXJ45Tq72BsxMkxm7B9RExmstKUCSv0QRyRxCEF4YUiKeDIOGGDNAUhft7OETMMe5XbvMq54Byh/LQpgvZx1nMeoheFuUazHRy52jqEjdwmxWBJdqBk2F9Xje8tmSUEeCESH6ANlLIUwAnZO6FYO2+GuKEdwqJCq/7pD5GvZ235IltgFhXWTGsD5zOetI+k5atf+6JaPdUit9aGnGDgOtjs2ojp1vH6hpZHdi4vh5k4a/C/zi1C09nIPlTKKqs3huaZcY0DtZVE5o7wAzwM66Edz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nJaDiItEHmQ0HVQEl+cnvv5+c/39zX45nYHaaW5Znqs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DI/50PevlMpofdGcn1CEwRskRFNzNcuGWtmnYTYhmQW+FhWkNd4YAi0LVWt7U4FCR1ZTjxKt5tz0W6HeyKhKFIohUvyh0RCp6NLcFRHBtDrdLyAgxTHmMw/7k3sdAh1oN5JDTi5OkWpkTTxpiNHzAwAzrf5k8SzHA9eLEw0O840qQ/+LYwkZ+CCGOvD1shrEMA0W+IPH4z4/aSNMA9Tg6DyoB1TFrxIXjBvb13ydWkgD5l8teh04mx54ppBg5w8t+JRqvfOn2y+iSKa+K07UGn539D8W+HNOYFX5A72F1FNsSYt8fJYnL5ec2y6jGtcQyT7cvj9drqUdU1wjvoEtKOl4Asg3vFq3PBmhN+bnXtJjzVQAYOpdDMcmibah8KTvGl65PHcrsCuhoQjKMsKDvNZTSPvVt42Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nK+ZZTwDrwyFoNdU37HQDdyBoq6AswSlnw0naw5taj4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oR5LaqIWYVOKf9dn0R2UWRedm9uRYTonyQXHiTQEa5d6W7Z2BYqblFgn1YHJTjQQB8YBedEt+nQ3H+hMv7Y40c8ZeG5coEoGh0TJHh8ys4UdCFUQooNbKw+1F1qwwLk1IqllyqrQuwYxOozIdvVysz69u9ex+g9xtHNWxblN82+WMkTYXwjxyfb0rsyYWkGwLRQiKteBAgZXLxEEPloTHOAMhsMCauDegn0ejTEdCkYTPT8zhLsCai9Scd9moylrfb93ycgHijOBShcwN/27ZvuceuDeZfgwKYHKN2dSQdUTEPIWtsDEx3plx2XEUvjJRJLVsMMNVM18yiGkGNE3hgDi20U9rV0zX8rNKMXJf4yJEkDT824ROWBSMajldSIX4nZ+8pSvk/+MCOe4oxcrem/JbcB02EgU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nK8ZOL99IGIohC3AEBTjHAS3rms0JBfGcLGB0F7InAo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "g4AYEV2BX7ce+hd9GS1xFiU51WldKf7KfPKj82X/OmifYdsqVMbYQK8iJ5/eES67hTx0F2L93fts1oXs45XtyipehYkWleKNWh6yhTy54fyEWk6MfYjsf7bZ5ISeFvOIy24Ljlew0YhU9asoU9cTzi68PFDfUnYLnLFh5gHTHcbhHiRA8QJDahQ0wi6DcOGL3is2pFauCfNv07GilEKpUWqX8Kr/SrjWhUk69q5obEwKDZHn24wpgTtB/uIOLVrJy14spTs6ZJOaGMe8K+QdP8meXC+VENpOUzwFNKOhLIUrwotRH/YSRcqZrp3WolixR0ZOuGrB1nTT2iDzwyKgw28ZCkZo1qmuyZVrlE/SWb/QeYy5n0qBgurvvotP0EsDiNh6bAsACmdURcfQp5dCMk7jg1/3V+aL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nKWpTskMGvW8AJ393mt7s6Rhx0y/2OXsH1ubqrPbcSc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mAmpkCJ+a26Uj7HhbMXsagk0UQ7rtlNBNaNwkuga2qL7me7kNdGLgUcNX8ch1mCpm6+FBNNPAz6vzRJ8Xwx4KVZPibn5IozH8Zh8dqd355ViqrVu8s/RfVevhXG/vmLFJ5acfFGG4vKl0L1CdNg4Adj/GOgcGHeS8Dne43ZbfDLI8twMEDaPEeEB9eI9wqsTRbKx1HvzpYrQGIGWBJhMunAynOCYVsMVXzVvdAAr8XZCmQYxHXrK08zIUTZRKOjrWyEJN1KAIBqHvZz2Uq5ukur1GOgOZY5BTstQBltlJBPhAxmXzLc8D2aixllThpy+ynk3gMKIW2wiHxNvEzsEcs31xNJJSljVDEXez5byNiaLO8jImhQx5oJmYdi4S5qHlRz5Tro+XnpPKITjY3qVh8+KzSd1+XDg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nLmx3OwNRFP017w6srr60d2Pk3A8egEw/wq3jukXJVQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f0eJoEnGRgXv2DT+gb1Y+Tja63DkN1dXuylk1txsV2s9b7AjSS6ctxYxgX7MvJAS9YSjX6Vd7ApKlFKetMmDKZqbeK6gcUgAHqRQLlEWXUVHI2JZkNiGUjuNUjx6rpHFGq5cWnlbTgaBw2+xowVDa4dj5+IhMZd+NmrD8kgO+8WgIFJXu5aV7crLVbTrZTDZs54NSy31OpOj8NqfxGHpoq+jnSGMioivMc0nlysg28qtaBbBvzAXHuaMtTzqaZK6Eq4RoowZErSlw2wojglL2eDMmpodvuyKDGtwyaB3D5WFKBbP86ajkL37vK1Kwr1ZobsfQ/IOU1+CmaEQaapzKSLEg/m0jjCQbvTGfTvooCJzeAD8AM51a1iLmGvM5dRRjPNgGu0RIZHihSEWRK9tqlo+QVAAUrFv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nMJVN1T9bu9NgedP1WRluV8SH+QZpLm1OdtKQOcEFAE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f7+mZUNtuxlCk+3d6YTm9oVqFUqBd2vhgCvxrKBXBr5RFlzojNQQY26Avdb1ewNVvaZ7xPYIF0De87ZUkua+foP3wJDpHArQVsSPZB3YSTe2Z6JStTuDQZtPcfWnGH2TzLIWCweaTlTIaqB2BuyFhdZuJyC3+wZlhR4QZH9FKJ0baYA04ZUvzhAhKIRJXp0mVqrUoQaa2DeDJf6vnirp11HinowhuhbOjDo0q9I7MNxt/rAAaNsejCv9lRt4+vWorsmffxCoS7n6C7KgDlb5WTlOokTOrn5WJp10FTG7a8K0WRH/9JhaXrkhkH5gVafAM9vyPefyWuu8mU+tuix3FkPPOsCIEFyYkj+AqdHIYAt4S+ZEZ/z/5SdLSNW8Naquf+FYHXW2zrE+jBI0jS5God0mqkAkgfJO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nMP9oTGzHvd8a7hC/FjQqLPBTJXn4L1A2D1GPNbPaJ4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qMK7DF9ayVA0jc1eG960rEp0c2Fds4/+CxI9V0mNFc50QSqejFZQK4smDQLw60wKFgwHjg8K7Ga1figTC3LIjpRyVe+f1iSgBRuzN6ApjSTtLaSr4ty+EdR0/1hFlDLDNod8s9Mx/lHQIzu4AeSIDrj1nmhVScrdpP3UNVNqdw0uuYObnh9cV0WF8VvTnnk+QK5tVCp7mUv/18JHP8/qMBv0XD7tuGVmsiC/W7eR+xpjVE5URLPDyuTtc9ArJqiwzbQ0NcHiQtMGeuM+5gWME9/X0cINJtJ/Y974gEVq6UipSH/GNECjP0P7rHuvOdFel8dcWiJlAHgHaDsoFI9/y2FqnCDYQ6z1TW4tzbJRgF9q+hzBbZiIyRCDhT1ifG7ceg+flXKDagWyPI00lmVaWcl0SV/cURiz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nMgvhgeoNReFnvrfqJEBMXjAFupejvEvstPAXeiPQyw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w2DpaxjClfJ7y+C36YIi9EER4IqbW1yRNN1AwX8pkhMs8rrCdorrWz4ETFDBUBOKu6/gsz0JfR5odtEgr7ahF7Nc0mTIuoCTl/zIF5Xncm++Nm2zHGbXxWYfuxxPJ4pSDADObgxbDuCjZe3Hd5nxnhQAMF7CpTrHFKSvESfAGN2DWKyJvL12wTrw/19y2nyr/cfemU1jM/5Co8TtrCuPyaL38usHfdnBxqF5KcXFMGf4Y5VjaglnLn/Qee0MSOf9KQq52jCSUZEro2hwafyfdS7Wz2GJgapKbbTLSa757tZtE92IJ8BkxcvY7WdAQJHVodtf7fOM1PPIYPU3WQQRhK2S8oe6pf7DvtZTvCrcLTcp+s7X5352EpZCsB13rMjTR1HCjHvrygjLirSI5SfirVw2/2N+1yBb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nO3o5fqnN49O3dJPghZ133IgKmWWldtmIMklpPXMzRs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GiCiMtJRLBzkY633j81YVd+Nc9PTcgcZDeALMBpKlcmvs96lF84jgZ3XvAHF5Vctq5RD1eiHRj83FEM9dxSrgra5pfTyoVTTHVpK9v+lsywWWXn/d3qnxh6XWmEGePEKmDF4ESxmcRN2dzfqym4pN79Ft8giGvI80FxVL8ohTQVte5iL6eVMVlytMru2g7fAkidO5+Rz3cI5MiGEOf+U+rLiL7JXPtghUETlRXb0qC2fqBPj6aBqc3+X07kUPCAfwcqksSLF3MwqRDRoUTtSvTVEMQqsmUV6nGTV+woD8h6n6pemjeuEmvUzAhW5JGfN0a87Q2Edusm3bVSWCqYl8wNMKvEGeAWHAaHHQo48n0/jU0tfIyd+lVF4egucnxJ+9Sw4OmsE9QOdCwDbkNB1fTLZ158+0Zt/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nPQcQU7VTltQU0LBiiFSkhAZr7HH+fn/VqbI6+VWky0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6sMQRbts0jqiWX6av+zYNfaYMnfV2yzjK4UoCKAKOIwgfg5NbUnlmXemqMlrww+ektum9bA053MEDT9mf/c2HOlXuZ7IBNr4ud2LfCpw0AQ4q8N2WgrAxUY4V44iNf7GDVCOKbKrnNePi18cM98cd3q5rWiN/XFRrTVBd2R8M3WtJ+NnhBtnPt6Wv1rY8SIXZ1eNdWiN4kxUnZBntn4DHr67pgAl9avZMjKEuj2k3N8Jy8lD9xiliJMhItEvbCbRLMD+3lyEQkxLC7ddjLnyvZd6rLwjylVqaB4jIuHjGzEEcO9Qgtd15GEeBnaewwvRie0UhubHc9CDdq1hqZ26S2MmrONRorszCibM2Q7R82hvFtm0GOfbr9MDqQyqHIqsGMxPtWrX0EsqVbgBRlnvUoeRJ8ltdjbs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nQLxKpelVSgeL/4MMG1LFklW+bNlpi9WKhp3fI0hDcQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lzMC3YEG40n1KHcdCWlILKTBsHKZ79Zuy+IpuB3gbIlIBEPkB58VDchgUuDHwEMWHlgMUFF3QBUIDhydv+E8hWtrOgAOIPOiHmiKvqxdbXfzjJ/kaUFQADQvgyVMNf2Ka/ySWERVyLmmRTHCM6NOAKJi6AswjgNvwbVO/I4WnSy3uQ6vHwXsN8u3DhBafj5haM9Lb46rOMovL34bN6lIwWFiMDz4daS2w5PoOM6ZRHsSgt8RtqS98qNnztjS5bTNKRWYa9WcLKyqb1oPgiLmkbNRsJXU7z3dxXotPecZuKegNrJCCUwi7AVBxrODe1gFvYRqZnXXuwFVVMHXOBWd2gYetaj3yaZSI2359fcD1iyT0wSCqG9n6MxZ9xaFUkFgnEtRtCt4U1jdccH5rpG3nZNlfbSwEBIL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nQda9QqkF4OMBnVG8QrUZ1ZuNw7Z5VscVKCQUAEmPDg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GNfZcOqIZVquXQaONK9bTirEQier8Z9PAlQNHYu+4Es1BM2l2A/P9SnMykEHfYuzosPM96iILt72yJED/Fevn7cAaBVyBQEjTw4XfRurcYe6xhZ4LMWStHJwZI1MpttiVAOBZrQDDhGAWQtqKhn0tlprTHz4ID2M2W4s0k7ESaRs26BRDoRRacvw7zS07W5q720qG+DtDDlcC6XCpSDd3pFZxBTQdBuDLwjikfIhxdBG8UVp3IGqyO0tPKfJS8dSg5H6y7NdWh2Ayw5vd0ZDHES5T2wkl0QcJ490Q/BHhX+AEp2xc5V0cgK83cCl5Uw7YuWh4JqTlMzdW0c7sInU8FZ0KcbhPFtMXd70Zgosi/8n2WeDlrc+ii3u2Q1GK3Gbrti5/aKdfEBAYDGVmCK2SvtvR74RoHsc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nRpO0yGCyoOOAa9qeEBaajawsAH22yEJMqqW0/RQOCE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "y/pLaG4K6wpGaHl1N8O6X8mI/KsSHAU91+3kXB4ebetLXrvOPsczxSQODOPhBKcuiKRYmSZgZOpYDhphZ7oRVuBC+CyaU0LfdUeARfrmiRVaxi86D9Rtx0inkmx3xVFgKo6kooA9801jF9vIHcM6y6K6k5+qKbaP/riQsJobxpL/MmWW+CRduLRWslzGZjF7N5ehO/DFLe4Q+2jZMTqX9+832xV6cJjl7y9BT0sUlYzCbtLBSG+1wqkzCED8ZNxcVjlG8GnSJxIeFG8xsnvKPfv0IZLJGBbxdvdQRNpvCzphHAQVJP27/KzVhES/GZRAqnO2Te59X9p3V5FzuSFVCx0eHJWaB9cg1pR7thPxioG30F4bSOwOJo8vB+d7WEHildt+aMOMovnS3FggmiTunGEh6Y5ef1VU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nRqv0uLwp0+Mm/MvCsCxrb4RFSY4tjsF+XCa7c2mpRI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DRGs/ds1G7QPq/+1hM+ve8hPlIXulHNLL4qhwvufFOpBlhio4ctV1NybZ9MLiXh5My5jZmg2BjFLmVwj/m3N2ovZmx++y4B1HRk9Y7xpOJS0WR+ShgIRlgJbYBfEnLhNznbmeK8FNWuPM0nHdVwlhDzLyY5L10mQ9uF7uD2HkF5NfpzahBg/pUzhoNsPcmmMPc9hrUvgMfRta4wsujRhkUFKMJrwd8BauWYCZRF08JWIzhLPqrW+C+sR59qw2sFABOopfGhWBHmb7h8ebOdPh8CiF9UJZQLn4mGQIp36rGRr9Fek4t+2hkQB2ZG6dWoBm0WbuGFTmlUe4M35pw1MGXY0ni83YtUPV8/OKdcgla3b2ivZdDY9HMDufLvxGAyrR1illxUH68L2e84ciRrddA/NyC1yQThK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nTCSPu2N6lpuOnJcTxoD33lZBM6tCR6RrG0sUU2Wj6g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eZ3dcMfr4fzANKMDEWFXSprme9i7Zdv4Aew6aDXJMKNumQUDTghv+DBjvKq/uIKz5QRciItP1Crpa0ehPKUrzFTwHy1pAiw8nIjegrAXrybGGk9ZrpWfBF5J7mniXrHRGvx3bWDaN5KSxHU/htUWtDDSpstyk4q9v2x5mbczjMX2j4d2hytIORCy0ig7U1hKYaFIYAXzF602AgMLIzTlgAFrFMWsk8/yonl9ilYPJLveTuDBna3WfsVMzNgI6lOu/isgadse0fwd9yM8P73QqcZzx1G+JqAXrNwB4WX0XN7FuDXjWnuAEsiUR8V3kJxkZVtaKCSv2rKEGIjQwSdYEQWeiJU1QxBnrtTlwowmXh98fDvzETpBDfU2Gg4KavyVqzY7cfI0OIeftCLQrhBXzsjA5sfHhWnP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nUr1sL0KIbmwY7xrKVDSaoSo6yTivocpIQ3v8tmBd7U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zlgJtldkLVeLUmN/rBHTXWjzsGvgfYT/vD7PHrVNlxad1DoxU4j47EsyN0imzmekOoq6JsijEZI0rzA1T2y4YIRJbV1j9A1fM52WsBo29eogARD1C9+/W95Kp+tDqoWmjn6ghIrBeZonLGkiQHLZ3qJ84Qbda442QQ4CoIxCoA6DS3DOTZUBHOPY8Y63XAo0aT27GJEhSgNiYTn1PzS13eo3sJeYvubeyoo8WV6lzBMXKD3bP0k8Tx520gFyFnXk+7pPAXuEIO8Mrz2CIsaQhMTXzgFm3sng6VyQqvv3hPdvOeBrlFiUGJFaqpDvTGoX1bJ8/nBHMLpAASdatsMTruoYJOeaWfD6VJTsjd5OBaWf2VfAVMSHW5FmD9Fy5rOj04jn7vgpUzqiP6Mgsd4zAc/i0BSZjFxv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nVSl0cnaLxG3xZqrMtapgM1hw29rB9FA15WuiEBUzus", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1Xp5QS8TTmVAVDVsIuD95vCT5PZyYvArAmT8WcSKKxAgTxWTcNbRz6T6w4kMyba7b+LNRxxF4/YONJa7ENwbLcBE+L8RbETWQnNvr0Frap9pkSsLLTw3QX03W1mdrjq5LPtBGorIiqQtNOfhjgr7tpqEK52WB3Vykz6ufaTIPjG6ai6ZGR489E1gj/IxhLXllLeXr5txJkk06T+3rToNO+BlfKTBiKPtYj+TCyhaFcYNgVcyPe5PDKTjOEJxDYDFp0ootnoAmJB7VdWkTg6BGYb1h8nIn5KUqAbVKo7sWKmFt2xlxPLOqJ9eIzyhG0jEpRdwrcQXIY055dZrqYh+Y9sKibyFQAUUlPhhJsNpG9VhwwRhELoQp4ZTIf4rG9YBNs1l0yPKnz8huiL0OFWtKoxPI419wU7v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nVj6sI7rfehIJD2iBA75FA5MpoIEJIFWFTRKyS11zX0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S5xmhpsqXCCeUVhk/xKoiqGo4gg6sa3HgSpTzW5UNu8clVLJBowbN88pPFyG0UZfTpbvDD87tzOM0MSyl2hlsxcC+H2LFzIAcFBVtRPzKD0YJ65UyjMIqg6qq+yg5ijMYQ5+Xtpghk3bEcpDHEq9g8BgdHUodZUwjiarDfNcq64twF4ySwzzUrZPHwmUok8a/mIUQaNjdMCTvHCOXkFyOiehNHkhd6iRVYGq0tc8R6bHE0IelARXP7LZ5Vh2bw1LgIqng5EzzMt+E3pBlvnvsX0+9b0L/bNzzcgDB96XuXtMO0TgTfLNDIsfHll5oGdQEI5qFub+DZaFqwk5jZwDXvj8M4H2qbGMinIZi0wBTFBhcWUO7iA1Cc1rc2rEXnFG3qBQCfz5c8Ea/v98jWxHfK10HAmqCZ22", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nW2fq3kqMC/Twm1wFNQ2nVcKXoIE+Sx/EuftEx2m9EY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TyKQuplYSTx3aptD7Su7SdQdFifAuFGjFTgHMu+bAyz2v6ni+QQ5YvRY1VxPT8E7m/L9+xmgrKw33yL3aQ6ch8IjnmlPVqUAbbLHDWAUp+0aPr2Gd1csIxWrusr1hOry4txRckTTMP9HHV8WpOcOQQ2MSBI5CfFw2jB+w+kjQwz7zXlmhXF6FKoqpltolu+Q9Syg5wfIe0j1qSETJTkpvN9D1w0eSl0/KrREmPWaRgXnPdsS9biNeVpPsf+VUuN3K7JYtnqr9CPbmTFXhlC/JZugwZtpU5rWEFv67dpKAJAhOLAW6voHiJJYNl3ZKzvivZZ5rWU1RTiv9C3wzZB2QrvHwfOjP+qtemXeuMXhijSr1Vi3gJCupTtDg/iTr9Gqg1vlzo3NgDHx4QIU6Y570F2E/gFoO3zl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nX0O8L1zMpGaeqdsBJZSmyQi3aEaNvHjgHzV2iuPHac", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KwC900Ngxi/P6ASqTeSyQZWfl2z+PHTqLOKA6gPp6vVNnfQ9aR+XDqHixk2/RdwfavAo8h/oPOYYxqr5JXQMUtmQ1GMCrqQhnGC9TnRdITdEXJpLOwjj4PBrymF1ZsugHJQr2XBdn+dS+N0mftRfTYxs/WKQKfQVNRB5COenLaXKBvQWbHJ3Xlc/xcO6uluEsDaUcAHtoNCugnyO1uwRJvyKoAmUmWAeeK4A9z7tn1mrNZ5EzK8durEVvQNu7kF50piQaNZoNZZjDvARrG62qZYee/srNKt0WFSmiorgx/iUEiOozp/BUtVCMWkoig2mOOoah1SQ9ZAM7SidK+OiRnl/30U9HDh3TCZ7OqDhNA/08/Mjl04BevCOkHBdWmMU0dukdB8wSOadsZoSD+isOjlr9VbDFHTO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nZIFXwueS1jauiYmnZAMk2hX4N4SKKVKjCFLo4QWTRs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vOKaSGxb5mqkDI2sygeSBZk6+WYQaohgZ7+enXNwp/QQOWYT2MBbeou/bhqQiuW1/vPay/+fYkH1jAdNGRioGGOzYUkTIi+u0vrIg86Riz9SXN4GANWq5/N9RrRrgagabAcohsL3zH9gHN6G7WKRkSDgtGrQHA4LYyOkky0OdRAD8x0iS/yJ6t3Oue0lkdPbFR9vaozp6s5jHnr/Y6GjbS/b6lR/4Fs7KG/OJLBOzWPcitHMqNefJeC6plMGHIgVDxJRyRZTXuon0umaDeY1i1QEs+LaNRuMgTdBZez5HAsSN8VdPtcr4uny5LtFG1tMpp5jvRgNJe91TnKarLHe5qOxXQwblsKT/TyIlQ3m9NTBAo8BO6He7P8luUDXRJ7C4CUW5Oe8U2Le4CiPDRTGFTkojBDHFbhG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nZrVUbseNg0naMn7aeJ5LJ+jwrwvqDO/XBUgjiFsNKU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Qe7W6GVaxtM8I5zVx3KM6SkeOnH2CUqY+3ZaY0fI2x4i7kO/Vnm+THMLg6YOrSWNNLScQ1N+KV7Hm2OTf2gdlIniJqLaeTtx/3qSe/N+a07tobQtBUkYhhg0gOwugCpXg3eTMuObQ1vv4AgViiV3TsAF5BjDyGlzGa3X9Va4QFc6ZAoFiUDK6koJ5KVyANWIUe5M11x4B14P7rxVMpMyipTM+TJhziDOBOznO2uxkcGJ8VcGHN3jHod2YMxwW5hcCIAGY/KPPhB3X4LQuHxTNW4YbKqyBO9mWyONQykbDmnj94k/aDDghZFpJ35XnQfD/12rB4SIYG7BaIYC3SU1CYgH2rTMoELiigoD8nlc9AxVbmXiWHbCOabJwoK1FtHzNBVurxNrMU8uBCAC7hX8kaff0WtgxLPZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "na5us88VuID+JLhYw8PSre58tb7Hse43WKskI0MrFIE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BZtzJMOTiF1/c50kLjBH1k03nehHvE0Gb+eZlf+GqWsFW4IJdrG/jvqYjPz+hCwPCHiG32cS+O6djkqTQQVuRNWhnLhBLiKgPW6pJ+femttCxaD6SkYTMUpY0XKTNN1bLg15mFqw1p8gul+9+OCgnbZYOMqeUAHnoTjyl0wQZ/ZwVLZUrWtWP8DamT2iorc9gEanqBIgo2jGP0oljelHfCe+3w/1sBIsSlaXMA+sDjK6cfgJWVTaBOAuJ0EQqKZxk6yda9L9/e0VLBC2WS/KLohUkL0PoOSOG4FJ/wb6clPWrSHJ7gwitmHzUvSyoTieGHz852AMmqcxQ0qqh8ky0iepl4FZRR2a8xihCI6Nlpc/dzkij200umhHNd4V3lhLAIsmTDMW//+4xJHc1AOVqTQ908gpHr8c", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "naGc6R9Fha+P03yT84kabP0xnYK6QDZk1MewgzX8d9U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9a/j4M9mjzHwP1WnaEU5LeNpm3AjNKR8fyWxewQOEklMjv370S6Q+4RMMY+cB2OT2HdlmTB/Y6MUD1IZKpPpqk0souUPFVeb7Q6BFlrq9RR9RSOamLmrwmaTLg23ltvJAJMpIzD4ivIBZ5g9bv4ldzOLzd0erU2wEWgGQ32WtPUsJ02q9q2Pu2BQjy0jdYpym2lH+34a1UaxB+3puUzr1X0rMQBpKNk6YK6OxYJkcSv8G+T6kwgxLSmb0QggJNMiGKPMYCnNQbKpcGPR45ISEUMfeS1hCAaRHQvRMhSMcv90wXd0FQrnx5Z3VxeOOd7jDnSDLQ8bIDOg7by2D1kRxZz40LYKm1VJUm/XyUy4+wc2UvKy/qO7HTrrjuFaRI0YQarQot6+SzKVXMNNsDQi3fgEwUbVSmbe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nb6+mxqcfOQHHSicjOtgvCFjTQp4njE/EQZfT8JCoFM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6JJ7djnldgvP+AYuI1UzT7qr56+Aa99ma36nn3h6oDshwKUVJeYrrbBXzFhGaa/bMPxbBqWnnAuHcXjXt+efoVoYGCnKMpbHoFhd8PJDCK5Xa62ay4EbI1PT/ymCDW+4Px37Y9RIyHSEuGR4BYQgOjRmJPWP3nktA7xyjZxQ3OquKLnJQxik1l4DPOIfu+PjJiuASpp8AgL+MjpCBHrbKu1Yo7q4ZKYP2dXhdrbG+P8mZc3aaIniqu2iorERSN/l+JKLt3OIV7+OIZWjwn3EOwjY25xdiuj2rbq7M+af3epLwXk2gm2qugUB3cb80IKS57KSycNY59yclI518MzmsBG430JPvIy97MOqVh4JPiwW2dwM1xYcLd5b5oxvALtrLlNoDrbAVBd76zv4pLT4z2Qo5Wr5YbOW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nbwfNIr8loQFMTy+aDgA55A5024QLAhLxn89HZVIjJs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9IyIVZYePk0oxKq6iMd+kCvHVX66Pdqo7pdE2dg8hNrVyQJq+99VbZEQC5ZeJJU5bU7R+jofuu+cYzI6TPHkHZrSqcNuEoXFx3oQ/pb0M1VPvq6mvF/ZvJH3QTM87c/qiRLIheZhtGqdaeYNqctYGsL3fIVogqq4SQIiFlEv1dz8F1aSWThYe/3FVJRCc3kBqBTazJ5+8sdn3P4am0S8ITGNZThZo9Ob9Fj9VDhQ/+N2VvVi/lu40DPO7cto3ZFkAyi5Qf8ZKzDaG04CPl+3Py+Y+/Ez1ug/3M2kGjArMS6nBKMPBCIXdp6KzxzgtZT++zaGjsC0tAOoc3ShTH6T0x/fPdELAjk9NQa4pt4MzNwOw5ZS87idH3X8zeWaNObQIWGP2FAeQREdhFWVFrMiO1cbf9Ofv+OA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ncL7cICMQo1WlIVBM/QSNGkyu35XUlXcvC5+RvGd7rk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VCZGkrNuTSQHOLVmCcPC8YBTGur+Pjel/nQTNxxMMlmUCY0MCmeDYoQPlyDyRwbt2dMgh3BmSYI8QPIG8m8ZIH/I5BejACe3izL2+Lr2uXpsh+1vUo1n+7N7982ySNF04TKShj9UM+l09hrLnxPrTE652U3SOLIPjy1+F0MRo7RXUR5KLnI1jZ61JvQapQP6LZOT4pUd31LjvxWaJIc1yH/b0k2pgOOkydvB0HrUMn8/N2bYZtb/nGJrtm4oqEjy/JkWcQ5UmDOIR/eoxb6+ZmQNYfJHszBAOvN4XfjU1MTVByI/9MvXrSh9RRBu3gujKjguUX5irHECijFBAkFSQOvnPmasJ3KPEvWIjDNpxMDvitIBEmpEJRrrvDpSCEw5Oqn1rTpNQ3BUJQxM7Y18y37EuIzetTER", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ncgMaILf6pJpf8gaXmlbjnPBvuAhPhsmEofblZFpnII", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "z/Msibb/U5a6vSzHB5aGB5YZfq0krJNBxKf14BM+4Ia6LrkLhD+T0ASuQN+iH6zcb90LKkAWuCSLv7DMxvL3w+xTTAAx3384xdA34jCjvibFvX5jelCcrnjmeSGwLCk4TpjgCLC/Qc3lyOCAs9wFJBR9JxKydc6ur9NHjbxu4fItE5wXajVprXJ1bk0B4Ioj5fV7Tuz2b3Vux7qGr/qiMu6oEOJgMzz03/MIqYHsmCSYxh/oOQojKGf33yXMkUsLweYb57XLSJOOQiCmnZTE529PrfNlJsFK8JvSQc+JdoNhIun9wZahG7sTr/m2El213vzrIqtDpt0Enuho75jUVBg1Ys+jGg/PznQvfft0KLRAOoQu+1gYMrrav5bg845BhDoH2kXgrCVFGNguTtHEnlOazYD95eEx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ncjpQpnNH3HAh/yR96eejjas4QJh00kdzqFkz7iWPKc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N4+bhqIpRtsY8kwoxqhlJatbPbp+3icuzFWQs5ErOo26MEJw/UA8KNQIjWxcdi1My7jvVO6FqZNb+rmK7zLpqqm7mKKOl6j9Za/eDuDJagKFKrxzkk00Ib6j6yfwxjwLpddacXG3CuY7aEZp/vMQcUybmiYthdJkcrVlMBpulD2j/31pq7bctEQ/p0fG727mvT7XXg6/SlLFEc3/IjaOPgjUhzru/2gvO1HzSEAoM9t6n2EiCUg9tOH3d9hhkYdLWj10aIRMSzxBqv3ptELX+HyZUrRrhR7rolcig6xPHKDKCVUB+8SmX+PaYmfYdv09HG2FMngzHqQ841gYWYbKr33sh9c27G5aVikHqE9ot1WSxBOq6GhBUlfRn/K2rHIxW7jgRcSmRdhKYbuf++VAX+f0vdZcwOK8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nd7b36e1Xl2esMucreelu+dYi5rFbgZnBkLNADBNbeA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "b8Kcs1+6E7PraN9mhVmbXkoXzKE/PL97tuVPHdre+2oFpiuiogcVCnw4A6f6LEtW3mG0WUzrvB9MAyV12SRjiuIg1KLG4C6O58nCysMr2DO4DNvTztSWZc8zgYQFtA9ikNlqqE32ffD+duCcTxgNo0b8j/8WLwhnO6AXFUJy3AWMfAwTeMtOq59682kFBvqkRxmPHGaF7x06TxdyMaqntn9Hxo+Osb/aJY1x5EVF+6+ueLd+CsbKuOneukVpAaeLvF4EeX72q7hu8r100c5CQpEpsPo6whpkDM0HlxQ8N1htIy/dJUbcnNMEVKqaz1uU4yCfes8tmqaWyldjbYuR/xyXBA0HCIUoR7j/VLHRJ869Kbl62U8KDt52OKCMtKquBHGp/Q9v2GSw3KCmHRZqthiBlgXv85Xx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nd9fV0xgmmONmmvyIT9H308m20o7UGmj3e5IWJv4Gao", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/lzP/ayyoQjUyoFu7izJa3IP6oyJvPLxlSZtHcOwNgGl9e5uJy8TZCmIT23pVZPv56ztf18/f/QqT6nrdNUlpSfXp+bGP2Z6ezfzSXTmHcIn0gjvKi6x/4ghJEjwjjCwB5ML6nxLcOwhevXFjdxYEaHBHzDdfv64zaDHf9MLvspG1wfNyCu0CSlYN+Ej4sLCjc/Bs6IU88vxzreMlMtec/3bq2NsnJ0Z87Rm0j49s6UFuISslLgGanz98A5bZsbSj7Ysq+F6lBZ1l/o7Fz9hMyXXcV7qLriMC7bsn+Ku8+hFvxC5N90079BJU5FUGJ3nRuhGCvGx4JwCny6JRP0v3MfbPrXa4Fz7yHTLdI8q1WgibY8yRm/eBeBr4oGTurey45+GAmnibNN33RoigJbg6tzBh2XuNshG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "neo+EG1tmRh7XGLYjx2Ejc4zS9XTuCRxz3cB00sumw4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9d4gI9ZdE060FTTEXiYsjHak93eOYgmjEaMQj3An0L6bOg3DYlZg1y5gsMEOVwcUFifCIioRr38OeI5ZjQK4YwfCU+UeIrhNOPF0vHeE1QUQvhCIszGv5vRXVxVANzG/NZAv2W1Ox8ofB1hmJJRRr/2wbxwzdZq/9tDADQ3Rk+XyCnn8Nl3eZae0stlQB92WRl7y0H5C4Z8omqt1x0g4WiKnWuJLw8KGcg2z3AY0o1ykJ5rZrbG/nSxGbPZznHhusProz7ZAWTgobVE8oBG4t+CeKUtkkRNxzToA9/OE0WbJiDxU0pyPzxEy2TtnDpGxXwnsorHkMJ2bN7/m9F+m1C+dyDRbPNMOB74LLpWI30PSZkjkcANrfheu54kbYrBvj1as7LOmgQnYvni5+vYyQx3N9oH84Dkf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nfBAvoOq1H64SssFAyBk9EGAc15I/OawD7YmR/Hmi30", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wb75lTDWG0JNQ48WzNx8639fhWUHQyhhED8yEvgFG8nJKbCqZBRzdYIjea3Q9yKZiRDM5cLfoPEYtQBFCBP9N7iOhbef+zx/JzIPtX9McH+a4oN4m+wCnkgDsjedKUNRzxnxI2B92+d1PE8mLA2gd8DU1sofTQcV/G8Tmbie6mVicI2uaOaR+y+PSRugrdsjaflPsbX0S4BLTO+7hyvmkfe4Nsf8nubMlLgZl9Goel5aHiYqPy1ugUUW5yRUhdCiDCLlHXAhn/czQejWNfOX2WtEtlzAqjiBrQcOKUEO+1e7ZaWTywaL57COJEyD51SKqcJV8B6Wrx0fCS1RQUPc3b9Q/HrNTpWKX/gphMIsR/u2fgWP11ha/tQxlCoDgggrHcBpeL/S3PjK+zZbeH+uAddLIouf944N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nfKmwxpP/NWtWoIpqax5Kx1tarCCzoPVKQgQSznWvL8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iYnxrAu9YS8qUL5/q+eDjDsilRjf4B23GLuP/OTlazYa8Mh59K7ynRAMu6oIQoMX6pzbYe7oevhZ08mqUXnr73BZwTT+/nLg7I3V8X87EI6I0Pi0gz+/8yjclPXMkjIW1P8o4kRwkl+Vsgw4Z2BOH+UO3Zcd5AX9M2p7xIARl6R9TX6wRJCJKmR8GxeOdbzJ6QbKBiJ9ix9x6yF8s/Bc0W0LrZuSlW2agPaKYM4MD9WphgVYDAoW13MGB080urbfzx8K1iRX2DzFFZTUpzEBSLfYN15CT7W8Vv5EaiRTl7R+R4PF4pPBwhMEwI9ih1rS3NxZURZqg/O35pY6uWhPjLqdMfrb6RlFPYo3/VNKY/voxX27OjD/qBVktAj+IDP9rWmSxH4HyrnowceiOP1BQS+XqdY3ctku", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nfMdBPT0n9JDRxwQxW+ibVpUH1n4oqKts1rOIrk+ucM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t0GZo2Pa5lrx7poij3TDQNcuvWQGzd5igLtmOlhfC5iTAFPdSCtYAST0AFTkK6dF6pAyvq/CvvoY2oTwBhN2937/2I82ou/1wkclo7gE8zN4o0Z8q+pf9ENItzMKL0eXoV8MvM1ihYqbJIYLW3SkVBnvrxciUI0HSllR9xsLLyx/R003+IN2/yIGuZN7eEIM301zUS9N5H9dciCIlIMxQCuR8UBEZ6tzmYSpKYFBNDYvCHlW8SxWn6LOwYRwiQWPF0mKo76NOpLiqiYEZLxLvkYihC5O76sJca13OJlFTHBsHfG1neEf7MY6JcKVJgtnw+ZwzQ76ez7SVLk+rHp2gkP38XtFt/IO82k3x45Oe6aOzOR+D8b5qUpfTjV8lvwE0ZzKNAyGdIVN/c3l9vvzRdOJYnryTpo0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "niuOVe085bGvRLMGVi1rhabYTdP26qM1HoBSr4MYDlE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8U0x55BD0HCnW0EHsU/jzxcGu1hHaBz9duynlIm76CpCrlBnONcYhttuNPqQ0apMgW01PEBC8WXmrqY7X52pfy5WzDAopzJYeW2DnI8/6bSwvDLgRzNhK10GOFr9mT20KxYa6y/TeCvfuRNitqKjzX87ccpyASW5UIGVXhRzrR013zIEXfivjYP5r+JtG9cUMkwkk8m6qmbX2Qg4dD5ppd7TMMUm02uPapTKuGH9s83PmeKfudNSNtosdznh2yveYVfYKo7aZzduH40RLfz8cJp9GGsM1QRko9uEuqDFT/8P8PPm8Y6Cz6yTUfHjZ5VwBuSLhajieFzPzOxCmpVadhnApZoz0c6W1WUq92ihN72Iw8Z16sbqcyakpLLauwvv/TIR4ryCRlEx+Yvm5AlOCuJHnOHOMKP5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nj6eWVUYuSEus5fhrVLSG32mFc0R+NFZN/BL08+ouFw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N1Jjrv6OrlmaTVlhnLx1iP7DUC+ufbGsvK27f31P1vcKJ/NZw69sEbLsaNFRvpEH562sdXlBySg7nI+ZGkzJd6mBgOsuqFchNucfPmohqyAuyWxXVVpC9s1X9BV3QFaCAOgWJbFsvCtP7pKnmcM9r/THSB7RuicqmrCFciwFS9D6AZN2ekVskXWO9Z+fI1vgdZHlbzkhpp7bFUqxf/EPcZinv2QkOtgatnXHSLdeM1Pv4O1t7tcqW/rlIY/xFUQ/DwlKgzb71YoEz+rj0xlyw3OPm2u1O21vPB7h9rsLdAkAWTxkqta/Xk0Ox2cDfXzgpzEhBGaU7/MLmNiQZD2NKulziTbMhbUSgoNQLDa1e1KHQ6/Cu73+taOXqkzCDwwC8u8yJ3BhqhaPa8WPDrR/NGd3QQxR0Z7+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nlioROapJ7KMPbqrX1HmHZuAq1IUcKW7BtOwRT9s+6w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zLLUUp2iQWiP2eeI4aDVmqWpuCw9KjBaDI5ftY/zmkKtrZbtKXvQI4Hz0znfYA4+k99vTfXjEoiL5+s5FBDzdTccjnUSNyq4dRp5R0MT505HV/8XJqaBv2ru5tkfVr8GC4RUYCqc/l252Az87FAuRMRzUyFHvmREH2S3QZbyjahhD3vM0aISbk619siBRNEGnyB1LcVIr+huqlKinFF7/mHr1WVWWx6AAYJ5Dxf/nyl2NvIBi3gbVd8WbQDKosHTb23oZQTBe7yEr8sHE9A2y/E6S5DTjkrxXq4JmcT+DyILd55L41heqRSaRGkZFL1GWQENYnrhvMwkE69idGGnhh/voqIhp79fvQbyNT5ipqSNk2Rrtz5It/TU1d9E0QAyps/1DiPlTIcLFR/O5FWwThcOKNUYDNwh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nmLMXd6ZbHksQCmj34l8x4XG9sNTNNGn3c3mfqKd2+M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2Q4j1TObm4KN18xCEowDODZB73Ufo3f879+tUbSZftxgAyVNCzHPGpgUnIKBaxSorJNOmH4OlkQD7XXMstJz60eWw6iTr0wyBSIKlSq2nlVSpKNz+M5f/xXw4heV4HluLQbIk++PWDj8eL8oIHDWRAwMexr5OrZtzW8DWTqyK3ronOY4ZOdNACiAcgPJuN1o/uVYbVrm7NpO355IUuBsQ80plgiRBJPbKphklYwN4mhc3T1vu8fBV2VdnPCwOT6wxA3+asRVL7y/Wy+MguL85Q9KzsN5CBncs/OwNbvpQJuBdnKUJQaInHO2O0NdPuJPa/AJTAmpTdxzNe7HAfpHrTuc7N4DneLvzkio10rk784mLiu4GGCXPwIhRfP80rxwSr7z2UEpnAc5xEdhezVCJnPpKUclJAL1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "noc1o4I3ydlHuz8aUudFlguX7dXvZhjh52725oAUdy4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mNPZ7b1+B6uBDK0somYhAqLCTjXONRu3q4M68r7fUmg8IQb5o+PAnfJuouv85QuF1ZyU8+SdNfiYRFwK2NUCAK11Q9fcKxw5IqxHIXQIJPeMEFoAtc00MPWbQC9YwipW+lYM0QFkdnjKvxJETiVECS0o3W8volDSVV1eCIElt7xyCTx2fRkR7fO3guZrB1YMDWVL3ckEf3n1T/ORgzTwPWhpJuHDnLyTLnsgIR2rVcQnFcnPAktJbMSNBgcFVkfQk3CgypkljHWI9YGX9jC2gDEnQo8GMA7fmU4MaNOCXehAQgI4Btej7YvfxvkzZJzo45eji/Fejv5xTYY19mALy7D7buSzBjKolLRx3vVU/V0+0ReAdyqSAU5r6PxxHRAhaHWXutivBMLYwTZfRnjYUEyI8y31zwx9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nochLJDzUhCcig1Imff4PPQmh/SvfqF/o4z76pxGHRE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hMSOvdNKvpQ8XSVZv3VYOCE/2wcNble1CZvmISAyxZx8l2WigWH+TVHKGoGvqd2J6HPwr5NALXiE79ssERCC/q/XlSViqE74n0jeyhXW5hKqg5WA74iOL1r/SH1GMnoEL539dxjXg7jL5Rjaf8il4TO8DxioMSYXWH5CoVfnw7PRRxtGNcHyS+WTuC/zZ0PbcpCjO3pmJYmT7o0Cq61M3qsj5GzkVpGP7Lf0NTNX2sRrWaD1RZ/utGVnd0wUTvZHvGuwEtUrKgfkpi6dvhEe/5/WCk28i0Khp8Omxd/SYFZCGU5IJxaQB9fhKlzVaAGUbnHTgbhZmnZiiOu4oO1cBjznh/4QvF8gbQNvfNptpVhoFD+7zd84JMPq4c4rj+DDOhlcwbOvflw6q8ooAy7CbppNFDpAQFQt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nprBlzEzrNG7T2SC0Fz8SbKRQuUbQ9xSZAKUje/Mc4Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cUe+AEJZhAMcIaErUZHgQSSC/kxK/GuAUyViUMpaBwLspy0e5MBfgGatdM60GZH8A42y6qOn7hjfpQCUULEsvEjtToRgye7/C3XejDDfMaRMCuyCifz0ChxFQQL37oaUXKD9n3ZvOOqXg9SdMrH67h1rKtZpzREuRyro9vBsMBeO/+uu68rI3//ws8zrl0IvR/dyl8HpAMQpMeTxOjvmAgyA2w+Gdn28nxm+JMKC+nonwmcrkflXTfNexZsBXm0RGzFxzfqhd1Evg3gKVy+qToQAGgltSBMWE3fuseHzuNs42SEjXcB9yDJ+9nSk8dh2HY9Z5r9F3HNfQAJ1G1Zb4zSdgzkWO1HLAeSmuj0BNzaxMW/vN632ceuGYwfs66ZDYjKcd5sPmSJAHyV7C5clZxxy2mFTzz28", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nps0upe7WF3l+GcyB2c6D6pWpS8/zkEMFo3mI4jm62M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "18nh/r/a/WmdmvElgWqn47RnzAva6yZWAylaegtRoG493wpjOAaw/eg7BULWdWsSD0fMQjvi68kQuds0qEzentd8JaJAEhG/ay4ATvTgwZJ8fuzzOLZl4xJjYiUe3n0GvV9KhhFISy7j4bIz878kSxS7vEx97viZnSZ+rIo8SKQS5M3PRpZq7dclm2bqEi8huRZsHuTbt8AOkLXt92e2TSbJDlhhIIhw3/x2rC686YCw+Ezv5A3C6TezTZ5AquL5+yARa/OLiPvJvjd5tog+7ZVDEfa/4kuyQ7ss34XRBCpUQj19hAOfDikYFIbuKphMooGr/Bz9oNDt4G254sPa0F/wxsLjh0ApvBKQs4sF4L+9vlgyZ/7g1Qkoif6feZIlSJpVzAHUsIBKj37lCCEnsjlV8R8pQoeD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nq/32Nbhm4RhniOPQElVvZGikn/pqC108Aj5VUpeKCQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Okehu+6ceYje2ylWX/4GeBGzn2NxeVQoxhHkxE5Gc0ZGDNEpNrGtdshrrZqEpN53fMEYrk7G/t8rZx4w8pLSAyhcLx9Fg6Gp6ZQNL1xzczb5SFwt6KhvuecRw5VsQlNNGxNzVQv9wDglUePRjcGYevT4CpPjiAdxBIUzWjTL5cvyvtPGVMeXlp9oNFek7BEauNl8lzchP5JJ/B28UUwV6FmXCKScKdUQ9st3r1bFUPRE+IwaQ20cTkeOqFOENiyQSfixjjW2f0IpQPUgPPxx1C8dCPOgfaV1sXJxguy8KeamYhy17tU8NwNnavv1/9hFBZjJR8nrrCH8r1RXuk7hvCVhwPWGuVyaa7MiES+KMI58rI3JSHp7X1ZH25kN/FbDVY9gUFpGH5fjyAMSy+f5/trkYjzem+D5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nt+U7KgiMT3JxZmo9rCpZTL67lhbdkokUhYKhtNfIMo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fMxf6BLXg2FnksOVy6EPYAfK7P70AVf+K8L+KJbtqO9uj9LrmhUCvKhu0lmRCfTEEsb118M9Z4PFmkC6DrPc6KnwZ4Nc2xjukJKWzPazt3wnN5JdJy9HElM9gE3fPSaiRL8mfaf0DtLXdoM6MnHhQwIHGJSpr3g7BkOAIG3IVc/rHCwzYAbuVDokboZtHIdGK9CeijlGMp9A6V+dDYb7eZUUPlp5MTe7tJf1eTNDIaWwOUqyEsxyP6hAZTWj3KEJrVZQu5OlC8KZ/0BJbi/21V1N2NpRY0eadtnTgNhEQ7Yr47meCfF5mE7g2TA0Gpwpcx3lelCPfrAVPEetX0Go50lg6y5BqBL5XpBPO/VvSyBxIUwbd+dMxipFD8ILyMZvK04EFxvSfTL9GSDRDcZyZ/EYqMBMM1bn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nuQAMmygyPl9YrQhTtWwWn88Q/GV2JDQ50MVGMp5/1E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0yIOzMlPF5iJq/0VQnAMSD0D2DQGc72FZNKgw6uSofOolDI5Kb2jCXcNvVxF6skEYXlFxWtfX5Z6cy11TF93J+2kzMd2ATtqtnUiQFVgprLV7V0/lNC9BB76kX6TZ4Gmz47ewPd+LQhBd3hq3zMyqemtelvySddSkq7iWe3YuFER63awfbQfaNNz6l+HgLZttxOtfE2y5vfx9XmZhfVuQX3C2WXlqHgzpib4jvLQbfCvszvUrB/kOp/05zP+egQZ4yysnW2uyfhod/EYPQyoRoCGp/r4Sgcj8mIdw43IJINkbXOBbsEO8t7gHixa0UekMRkl6qeDqXvoLUvhdkokNg4mITEVvkXHyiZixon3/njRe4zxT9jEJDVMUoevz98zAF8obBkTPmlFUPDv+S2kyOjPKldgZRJd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nvSSgc5gsHuNyfwTOk/B59Eo37gHNHaNV370wB1uPqk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VjMvmY9WP/Nf19jCXhIazCH1EW0MV/lxxJMQ2LgQVy9GpnzeHtSnHXkMhFkXgPjxZKv2M7yVSEN5AOoHeRBSIILaTGwmBu1Xl1VhdLbiEIoP4f/7OGIZ9A4SBLpxjsQXthLypdv21J60pDTucUy4pBV33OsBGlhW5Ne9LWDzTj7HYOFrxpsfc9LbfCpnHxFnsptfhWtemUuyqCxLR3GVLdfqNuKNWEWY8JrCdsLp/bGsSpvkcDaOSLnWBtST+08WTM8/5wLNvpoC42ctW5EjdZokbGPVsgmoojETu2EE1Y1Iqlsm36EMAOTYsHno1xMZgLOmIpm3rS0tgW1LGN9optQBjIp7ObqHZXhtCptRP8gP+0riLqP+hlgWn4hf1EXz9Xy52Jt0aOY80M4W701RVY40YE9EWO+k", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nxTUfIB+mU9z5hkos70gDMCco4ySkroqLMJroquDGYU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "64DK5KVi6+b4I0iwQWsR2DRjgNwG5BBcAC8Q0IlhT/UGsf87pD+2s4YyniVjc8LCoQL05IoTSREM9fnkG3mYE7D75QQk4N3ZBrJ7fo/rWxjsCLs77JLsUCh+0ILo75EyloRbMWHoo6iUC1w9R4V0qPhWRt5cH5TaE8M4+mqioBztZqoy8tQtii4ptnyrr3Tydgzb6tc71fOcbAAiWnuzHS5pVVaR4SvcaqM6dC+Pg1N3xI64ZNe5CHS4lxZk89GsGW7XzkL+RNMy+iFOMD26m6AH5JTDu/liyEyX7TqO3W6pkw6wqz91N1Z4abSJy6vmPcESRLgzM6M5BQsMCarsOe9bWmNjpn2Bc0rOBDcOc2qsZGlUWp968AX3LIlYxe1PVK/VUU7XxtHhlK9gJnaVY1L39bXxfxqY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nyEXogCyRnSrvqhBLYwDD8qrk+eWh/dJAMJ8ZK0/rCw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s1bm9dtzjgcLmcpQLOiR9D7ia+G3WPgxXsqhgsDk7VzqFUNxqOGFGjp7SmzAQ6SDfedBitkLh01OEUuJAGpoGxWQ60c0l8qSmz+GMSS7BBpQSoOHCTHtzxAHrelCOFRJhKcfNTtgJSjiL2UD0nDY0uOQaOSbdiy+GwjJnViUjN1tR+CP39EYK9x92Rt0wnyDyTdJ81qnLcOG3zh3GMLKqAf9l6rTAs7SwyzgJq3OMdWnzWexyVQTmhloxU1lAKqX6n5JC3MBjgQDhy8QMHCGPDAPwM/AQon7y0GRAkWK/vAQFzDEJl5GPUH8ItSDflSGSntXvvVcwVjHy+Y+YRtLMAtcMwO9V3NiuSEY5Z2ORiPVV4kDC+GjR3mdoFbrhKlE9OZibq1YeSidUb8B9Bq/h0d1GhLu3jGt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nydEIzj+h4kfFq7PMVk6Ow4wHl+bwAn9LcePGs3t6HU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M2mh9AaOGkLqhr7bGVgfh8jS0gCghGtf845iZIY+T99kmsZ4WVBjEXXRccanBC0jt4VKXbgjjKXxKeHbzBj0bNnrmpwgMdpdCaCtvOvummJ37HyPc9/j/lnt7IV0qFNpfvQs6SEpNuYNdi855bo510fBQ5SxfJKbPnQe4zR/eKluBSnKVbc+YcAS+4UCn3fJKcGbZ+SwOVREcFLu4JUMl/mZfwyZBxjYgp/LaE5VAgw1lZxJr2YvbqQIqOKjg6MqtPJzLOrWySSVBr9YGDrw9hiRjDvmA1321b0VA/lJ7/CkyqYUj5qh0qwbENmeC/BcUTzFAlywWFok5Adax4WExelAllTTw7F03LbMCnXLwxNI7tXY4ehUvrTIXRVO5R9o9J+airKAg8m19KNWSF3crQOVs1bY2uji", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "nywnwZ5JDQnyjGlfWkGA9CAxyg0KiKpi0orWHdcrdQA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "R8kSjlK2T0jblEDRYe0NFPQr8dFbg0TnCSMMzhjw68ejfDE01kYLkTVxb5rT4SKNgyMcOCMU2UZfdroQP3GriXF+J+zN0NJt463Bx300qJE8xMmvi+dTrrSfb2NO6P0MGc17v0ugTO6yRu6qaKGbWO3KhRJDnw73g5d9kp6v79JYuvUWYNBxuPXXyP859BjIQHPP7lSN7oXlS09zCELfFEPEWM3dl0mVmPPVHbSH5KV6fzIJhZRdquD/r5qa2makDMt9aOqhC4UzKNkHQ5BFSYoE/1zzUp/WCHKVq2b0G8DgOrIcZa8YoNsHjoj0e75pmpK5PVi+mlkyuDTBemOgdE1/Pt+ddT6Nr9pg98ySY+myYn2hfbBkfH9WcVc8CvSacpXFUZLHBJycxi0xIspXDhZT9CFX6gwB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "o+UqBN4HFE0+myAzaXGO5PFTaoa/GtkjiY7OVzvIgf8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v+BPvVSXwyLVjXpU4j7eU9+zuT25LVOulhYi5c4G7g7UmtbanhSXzXV4CU7l/hxWvVsx7HrozJwWKIQe1GRUfOgvSnEegxZRR/tKiuRdVZ6EL8SrI7ogQBioE3J5yhpelopw9UmgmqyoQ/w4aKaup0+TVo95M4ulrL1lFyZosn4ZJ3lwy/RpoxZndKwaB9UdoMnt4R3zhNlfwXA4Aud3ljIUsid0hwUiOCGDbmtX3JioD0766Ui/lxcftMQAUubNjkqLKtdXBjfZebzIKEzDW9ZkTG5oAAOCrvxduHrbG54QZNGXfmwd1LX5HB1jeU1Sh+oTkp25QLJYdpEooPLcKOlBXGVZ6OL/3iow3YXz9C8yfK6fFZw2JTwSZTjbfs6RU2uEEOUWBoS6jKsBQ+SSToHyIarnJBOr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "o/N6cLn0DxSIS4aZfTeBBEAUGIFZtMOMTxN+7GjJDXg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Z52C+nNcz5D4pfAKyaNxG9dm1yKtsHpXUscFNZrO3MaxSXpQlCtigU4xfAoE9su81lk4zYTDc4eQLc/wbGsM4uo8DPudhv/IBsHkNTmdegTwp2Tsa+3Pi2XZ+GRVzsLRr764b7S8UsCgK/AHTfjfW6rnnCUn1BG0OtMlWDZ2/+ih+Fg5iNDV7sq5e1rpIYwhEX1GUvjyjlj7EEuzZMWz6QUuNGvaILXJmSxfeWfVZiwkBNGylXMHClKiqJAIwaOcx1fVaAatcTB4oof+cwTpvJM510M7mBp+ybYttSNbRwnRh3tVtG3Y7t1x/slgrxwke/nrT4HLrXnaBbLjwCBBc87wNwKjKJ/drmy76jDiiHAjEu9hWtgvgTmv47xd+sJcV5xTbYQHwL3L4JC4xhVNTQjlwK3kyZDg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "o0YtDFLiVhoquby4W8QDMSoAIDdFzIFk5t7DQFDRvXg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Gt7iWxzQ3vta1wklr9Wpo3Re/qiigH+nl9Ksc9kHwRtKtm0O7afhgD0d4tzqzduUXt2IH3z/QZKOOF572ehRz+uDlaxwJadojoSd400/QyHaqGOLwwf+3UIOb6RySjGff5adKVbcZR8xhj5kfbUIlRNtNGH37HQoZUXabD0OIgTuFSDPAjaK7IKqsWDQdE/lmt6LL1RXkcmWxA5uPTNThCmpXpqK4ZCWr4LUwCuWxybq5s4j/GtUR3+My8RUZudjwOUljd4JUy7TDlqc82KMLRi1yU6FMK+eNRZE0gX9L0MfSY6fjROTGS1NopnXCx4Q6TuJKHi5wTcYUJ3Z54XZoJsZZF3lMGWQD3NGgPmykOKxNrSg6qVJIyX7VBjNg6l9sjp4TmmyDYle2K+zrxCs6VjBDp07spja", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "o1Rtt14jmg7A9TRESA83lWsgLzGjJctnX4C/EfmVoeY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PgZVVORwEDo+PZhD0DbxbSsSAXzYlLuIp9wpVGkcfgAKoGbDgFfyVrBOGVKGe4P6AyNauIvv1IyXfcV7KKmcwyFPueOUuZmTEFHFjeqoFV0LpMSEl1rWc008oIukiAl32kHQVVopu+LSUjLKDrDyPN5JcCLeZZGp077KrabmLhjg46nZFPcX0d3SHnZXU/OKXQeyz/Z7RdvlqokDavtaYuMytEARtGgiFKSug0YO5fNyQr5OiY6ukqlcCv5DtkNwnn4+O9FYmXjv9gGuivPNnLEGd0BE9N5E/yu07IlrwX+l9wWdE+jDHat3bReF3RGSgEYojyQygCe0AF+SfUYxvormqAjSs52VbfF/tCiEOTJuCgYVXnYXrL5UrCBMboCweL6dZEemHmJ5gIFl3xp+MMYRasrFb6kr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "o3f/pysQ06Xi7Q/TZKjeC6KGsjXOvreXV3m751C0zCk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gZPvnWb3R/Jbjwy1KfWc2fPqQ0wiqg4zS2qxSicwp/rWdK5r8sU3Ncgh4j5x4ToiAA1HQ6ZcjjITQNfxGY0WEkxH6ICqZ/4dbRYukBNPFvd/+ua8B4vvtzDpuA8E/U27R+nvh4pgkNH+y+CY86c1IqiVaS608E4CogaibKWedodQP76znu+GQ41rGnM8ig4ETXviV7y3UUCovZnaJZYG6Ig+9BaA56t/fsWF/j0ZX+/SofHi3FcklnkBOmJw9wBTNkuoo7pzq6l5IpEK7tkgsL0gE29U/ypo/nrGhqcXR8EhQIY86KIxeVnAYufkEqlem51jwxmZNkzb0xugjVZGYMvIHg1IjiuyQyK67gn6v663mY4fTLz/m2wPNBk5rDusGvxjnzxXmE0/muRLzVYh6VqA5z35pprY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "o3gJObX286y9H8SRxkkxWr5aLeAqtFYSlWK0cKtfl78", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Xi75WdayAUPgex57aFWVxPfMNINdVqKl0mULaWE0hN3HJPZc9hoawnCelSNRa2+PmmqzJ4C1lKCL8fJTiphU7WJ29kOd/5eGm60ZHAtiXckcCT30K8NZiGE4n5exGkaFCaWr0pKB8vN2iG1e5fPv19MGQVWmAuSo3ohgLCgu87gY9Dis1R8OytROt3qoaHpQCNwfDpljv4rf04eMK+Q1aFZaxNl3KhpCt4bidNUMtPh5Jqb8P9wUJvke5GqlFO9GtxtNxPdu/wigINrWbHdsw/VmMXPO53msN4KnNi+BJr6IM5kxYzfPGzU/IxR3YCv0Mt28qIUorW95VazeOMYd1wnWY92LgHwDQSXTKuVroTVrOigOXyKnvm8ncSHUTuyRetp9Kv3Rbqq2wjP3fqc/WN5W/JKcYepx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "o5NmQ8q3Q9N8YJfL7l0oG32c8nbwovwQLVMELSRveFM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5294P7n51bkhChz1TAfvNtxlwiZEeSKAz/nbjHfB7fWE26uXDnq+x6jsjO47cuR+krBPJo85tR1CTVY3Rh5Rp47ycMZNNmodWPH2ONsgom5JCTEdK8GrfSY1jxWs616VEF82XvGEWMd8wUcdW8cQwEJkwKnNswZgQdO391pXnDa+j3ob5yPY99Ci118wx5zYiqC58kgzTy6IqDw7rWB1tgRxQV2En5ZzdWYDchW1+IOJ7Y2urDavNtsBTYAw2ieaQ/rp779sW6eQenM1LcfoKHGLpy9d/h/yS+ICYijJj888+haVp+mwH42rHL4ebt4oZOZ/Vik/cj6ldhEHW8y6zfCbtQaJy1dAz2w0JHEbgR8rJWLL36kTfghjzgf/4gYl5BXp/51337aQyNC408xyCARRejXNIkcu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "o5uvsr7cBuroC4FfMVKw7o4V3gWGc3z4ydz7vrQx7QI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rraU3X8jdsLkH3qYRkuQ3zy+lAHCe5fAh6Ng8KY2dksv9lrkr9gJOhdPJG1+fi7fEoMt5yfB9G5B5y72hhl5ei7VBWuiNdQcg7boYGox+OKg6aqrtHbiBNksm0w/yHYIhGrkQUczeoF7j6WagenaN/Lsl1LCoZwmWCtX6j7p6Qa2ggWOeNfJIxR17QA+E8nzrAOyPKtMzCQLc06kuaqnTWEE+tshaitmzTGMobtV42JfbU2yFgmf8c6xKFR1Yd839hkU7etws9k4afhqJvoWDpJgqeOfED1obsx5IQTTIFll9um2cTQXX1j5zxO84/lES/SjkJr+qiXbMI8QyMToekH/NZz67BpvrpzSq0Rf7OJhfhajz6KTw0xmImBcNjULKOrHMyYBtyWkK2d9NwIhuZhgtwZ658Vv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "o6udg9wU71v5DO6huRctSPpj1l4jdnVRPnkyyISqtZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5cvMC9wZP2HbXJ2cGuS30LR1HviCDYCH4PdzbM6wPzjamt3CGL0S57be8SV3SlXpryfT7B1MjL/zwbAlI39hC6IGWx82nZxm2ukxYD9uxC2f390ieD7kwHtcdlpX8PA0IAq07Hn35+IKDC5K6t3UToDnkNexi/Y+pV39TWAiuSMB6BCMRfY7Yv+nbrUCVsmhSQ4OS1TwuCgCIYEO8FcP+jYMRE5UYxnzk3xYGzTAOke1X4LeURolvsvLETsZMie35KmEUqka22G+2kXmQLrUO3gUrwEz9leLTjYt1Z4xxQarynrJ6RopzOzoYJ/95lUe8r3HJGTdfCENgrnM/HfdTAjwYJ7M9EQFX75/wioSG1HLt0aHBM40JX/3FObr9O2g82XpywpXl3s9sVScJkIQTSvioitnbibS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "o7+2uSJaQAWJykPO4r88fxWetLAxCsm71e1ulcVDY+k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QJmJZ5yJoQrmEMKc19ueDDFNoWfdlV2L/0p60wMN3Ng177DzYRp8ZJKf340b16aqVegr+6XtDYPQmk4oAMutlUWyUEp3l0tYsMypw78uFOr6ieWe4Vn0P2iYSg2gh2WG9LpP4R0gb11LQl1AysBonEZ/RJ5orwK5DpIsiHpJK1mxInl4+bRCDsbGS4d7dAxcOtb8PeaBPN/3RwR6bdy2XaCAll/Rv1HsvWXtlUHhebnuiKQ/8pK8b1Jv2pKA99BLlRQUv/bQ0DDkiFczj8C5C/yjOcgirm0G4rltsubm6r9NTWdPOr3kUV7l4r8fkFbuhhiG2Ag/2q+p7INQxmSNQS0szUD5RcZ0F7UrlRwDwfuyG2SDJoMfY0rEg6drWielFa+NlIkHmvxhpUXq5PWHj+LbCkCFDMBP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oAfZTA9PM9dme1fB98YDSFypY08NBSJ/OVLplOEqTp8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cQLSeE5fVw2TSSMIGkmq3tIUaQelL7r9KsySDUvGR4N5k0h2km5TVOtp0ZMYxMnvX2TNSBCnRwZxZo/qVTT0vAyTbvYjUIbMq12SDTlmLQ+XDvUjBsEtigOzRNDeMF6yZF+GLgbwsPgnYX/BJ7GFQU27Um/BnFDr3iT1NBC5x5q/kREAVBXuxR8XnyCdxPjl62lm7rHGL2wL/VdpYmP4UTG55yP2TVCW3JSELuSx9YGGzx38V6qEtFKL91xwfoyMzh6e1uDdSRlLM6bePhnv92y7sc5IOrNT37XcDTuhXCbe9XOkKsVO83x0LR4X5xvpfPA1vj023SkQfRPJbxjxgh+hJpBDogHuAPpQa9MKRputCBRI0y+6TD/P/8/K6s7VLrUut2LLUF/gH/VHbPqWgZ101u0ThcyW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oAlhvzj+ZweSQlp+9/oSuV6sckITeX2Xg3YfSBeyDNc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gISkbMTQG5FOKQOs6Q1bULy7pS9Wgz6CuVNiubbgJxrMW3TO9g3z9S4ljpnQFY2t8Slh5jkGdepcVS3wGnMWTovhVLsSYUXEKokpK1h7R3ZMPeSHYABkbAWaPQf7ksMVBTqd7IeQ/MGuQ0MAswaADZGHffYnDbRvkzQ9Agn0INTbuLRHyDaOnZlr9miffpwyj0X0IFnarjS0jLLt7c8BvLsNusS3+sy2ZIM1hMOSATNlvawmxP9YQIUHCoip3sAVx0LQUIBkuW71y4AFC6eCm7aiw1pqFebU/5XgpWuaKbJ6FM4Q/rS3qEkyV0RKGQTbFXMPMhZjZPdb8VPoTt4F6u8Eja9QeOBqbC5H3i6+6TzZnNktf0FsM6eOZHBuQIl7C8guQOVSr4bR2PIOOnlzuW36XAXGfkFG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oB/nzmiwyOZLX+iM9yWwvBuY8wN7tvqObc8SFF6ijNg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uxZPxwgbxRe2GK3YQeHLYr0hiXm7q8rYt96iT83Jt5/tbkVxPmYxwx6DTcV61zBhLcQO48TP3vkBYSZD0toAPVGfTw21oTu8l035arFaF6RXzVJ8JHqo47A1g8S63U/Pp9F0Nb62e9dYLGL8tqU37LYoO/kiICBOPcvkp9G4GLv0sgBVikCkIhh1nmpNfR+YnWNlPAyWawMLcz7+ht7ANE9vmZTn/D4yrfb9Hz9OqWq9AO+STwqixExDYmgEraJojqICpQEhaCOsBMv9Kd9KDhSB36ZRcZPGpSdcUFj8k9+QLoOESomOBtx7x2BqdFWU2H4+cHSX9f4Pj7m2x5Xn+CAQQkuuVuWujOC4uYFe4JGWBXiClb9UUg97mZrQQkHK5x8bPAo90jcYB6HqPNE0aQCk6bS7AyX6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oC+VzpAAnpm2HdKyYYqqOJbLcIGwSJqXgsSd2ELhiKk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6+ma3c+YL5/0lvt3MtHfe+YsRKjBrfRsGW4oIc9aE3x0XPSj86LvIy3jh/JtqrZMzY85wwYoQCUkS7UUZzul9Av6G4sD5NtBW8OUZYIVbSAkKeqahyX+v/tuqVhSxpC5Riq+OFrG9O7lvpUPZZu0IAw8BfTPgY8w7a/gl5GcJG7PjEALn8i15vb0RJ8n5Z29yFGHbzh+W5B3xCvvZ0NErAHSj8gypX3G/6O8Rdv/vxucF0M3j5H/HjiYwePnZmPVF74wUrH8nirL6f4OXpgUNoMN05jM3E+ZAKa3g9HkHvFw3LCaJe9U5Cont5OH2fihHE1HilimjfMX/wvJq/Uc7M+pNOdG89Rt7r5VgR91INGyumbW7Egso3wEjspG7Lk208hy4lg3MyWW/+PAzApYwd1GrkE/kHlx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oCH5ar/naE2XIXx3Q5bxonnTTPiR89Si/FRQl/1RwNA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0ZBa4/6nEN41mMSmtBj313mc0aab2ZgxDvuspEuBkQH/RT/b49YJu+WLA0aoI/e389zUnfYMr9AxiQ5ze3qDO8gNSBSVdh4N/exGx5Vn0DWR4/6oVKl0WROW1L2a/Xi1kdk8WdjJL49sZ0/o10qgCtotfNBmZfM6UsQCTFzsh5v7L6dmGzREg27Ty8X/mAip6BWHsWTMbVQkD2VpAgvgFIeK847fCHDir7+ooVdd1pJNvZr2iDT+jZWuB8aR4MknEgzMgt5RrEuljYy+EFoglzhx5VmlCIKboVu29EqeqS04HKH7el1lLNpl09QJgDaTCk/fHIsLlgYr42V++1wAPP4vpj5jnxZ6cHD2MYwlA3R64WOBgFdMlPxwj0zkebt1pobeQJ1AOEo/SbVM1ykqiX2N7WjH4VpI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oChiQiSi1212vfXnu8vqYm0peT2MouOebceOW03yGew", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zVYexyDW5I3lDoKtXVZ5xCBFpjVQ9N7ChxEJncXy6+uCsxEU8UsMZz4DZKflVkcotnpP9ACTDWVK1kVESY9cw1CLJf87FoHJkuWdanj+3+5TK0jl01d6I9fszE3Vi8f1omEMIb3zokOPBvl7PBvMGKe1krthe2Z+TCLEl8rBz3BXenN+qYe1gGN28QGBasIkyEq/R5G+8B9n9YplvSxphgRu6tBukKFu2gRTDEymZopMjPWmMMn4LxX89/QaS20ktz2oQR7KPlQ7AmA1c+9Z8qJYDq9viTGDlAeqlWCTBTCC1Oa5aNyxasad5k+bFtc0olMju1hZvNQvjo0lAciDZRud7m2D2JwdBy1m38r1AAkX60r022MUFRA+myaNfM+dvfM3XWkyS1klblGcBGJwFvCcqrStoK3K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oDL3cPK/0z5PZKxnUFA2akxxfj0mP+6g+YR7Bastooo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3YJyj0aILJGT2Ukgy9UhEGpFSIWx7JGPIGjfnys/H47sjtReuPINRhWYl8PqmfGyZU4YlZcg+qe61uqbYQgLqce67eIaFVes/YJwK9GY4H8OqW3t+4ILRTPxFuDHt5ZiHDzM1VMrOMP3eMWZk2fEAHxyPlQtVOUgsCcgRc3Wx8rLwU7rS392DdggXABB+mfejIS7hHpeIVzPMpH9mFCRfylcPu1rI2tPIwcXmamYjO2vTxq8IJ/gj08kw1AL8fIarNdHPhwmdAKaNIZf7M6FSOaGC0ChGhLlszg+hQpTUvlRwS04gmUHlhb5DDvXHMMMDUmKZKGfrMbXssHJ/hqhecP+RAm4pj9j7K6sYhpOcwZq+MY0DfkgT1BER76NhjxiN05vtpX95I1pQFi3xTmAYseeNVUSMfBV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oEfjQbYRMZBgFsQ4Yxt2ZoKiKexL0966w0ET4XXOWDI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+EUTUWHqvUpkWCOETwGsqcSnHGWMOq4EAmnGHc0MMlxG+/9kl4oG/obqkO3T5oRl/DLL+RyKE10XfOxcVmzZm/xXtxeG1FGBuyxZ7eAN1xfCFWyRjcMc+pIbCHpg6/jJlPYxZ9K2YHy9xoZ1z1arb+gO4rPALMGmPoN2LhRieKslevixcNVI5pLoQ/ptFylPr5X6KrDFx4eFKWE7e4yhuzGbDQF2833S4dxDQX3k9ELym5+trNmszCaHf8PrrbCMn9mmP1GE/FX6dFnNmqzx4MhAliYBrX1vuzZi5mix6/oJc4qbZlHJRCxvsLJmTJp+nwJKC1Ny31HXR55LNTB1ZpM4RvEeB+9KCrPXa5F8hw2WwuYD/r3s7nkYwkA851s+svVP+rpF/Bcqwwk+O9EuR7YPJ0IpFYU5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oF0sTz7jJImxWmDxmAB3AYFxYiWQVFVp0njsKOMoaUA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YjmYhcmmpKaQcXrJtXoRe/aOrqUwElTxfyq+ADZXSR9Ln9RmSnZPhHs3OA348+CvKvpMK3yfwVr4M3JxyrnXkzFYlIYHuD2SV57nEArPj8DwUitIDQv3IJzxBpFyNrCotKkR6uICT7/1Urnv8wqZ0EcY984Ma00KqZj42KLXXwf05NmHj51ebaMwp5whBZdZgqdG0w4Gn+dxKcQdCCD3RRM5A/iVbP18O/QDy67xLkv+c/rD9+McsFcEEbXqjkmFAQZ4EKmJD1m+6S1gd8wpDZLczvEfnTbtemUjP62D/ehKXxpZrDA6+8n2Cdz20QCQ3b9JauQOiO/SNTDUsIHbPEujQs6rPt1exg1AHMAGtJrGBAN3NahBWV7HhAlSbEcDVAnv0bwM4+QLXyKFPvSdA2KRWzUf5Tff", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oJF3kh0SA7fLEXg9CAXva+oQCX0rkbPe+EJX5W1fpw8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NB3e+vz+2mF+6BtP1lCI57V8ovdi9PrUe/ida/eS+kgd/mJAE+MH6dShPej19xcNISopVCA8tmuwADrMM6m63jTCg9QIuVp79iiunNX33CKT9TpqKj0MwiS4iP0E0pODdk4n4rpsGbKdTbO4n3O5uiAbH8WbFn83Sk6sOBpGhtuiqCZOIFTmPtASoi0qKTo0RtnxkCwzn0yGuyewDXjqU06d6OcUDOgpI1PlFCl/jpPBc2doztxVXs7mzZd0eq3rts8POdoziP5hqF+u8BHmKh9Ptt8HOvt7u9w+/GiA8N8IIigECp7oxJxej7+VLB/EZ7FbKRws5U9IW7yRgtYmS/xegsK/UWVSoXN7fiHn3lKgOp4K8eU61E/UywNuN6dDEyKKZ4DyhalaU5j8TEo32OzKV7UXEvo1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oJcraK76kcglRfeqH+gpTJQNSe21vDnn7m6F1FCA/AU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W57mZfV0iHfsWrFDxASvnWgoa3iN/rS45uwyytOnx3tMJ/OZSGaz3KMD4/+yENI87Gf+GZaXJ1W+Sqckha8soOqN1tYjP7XV0lybgZrgUiRcBUpJHnsny0qtOTil8BzyG41zhlDieukiqPAItdaFE/Bv08rJlNZQ+T+9czGlk2+WzACXGeXmfFmKmscNt/OrwAOgNLj/a6Pas5RZGmq0+CsRHfJlEENXZVDnnOWfmbcTzO/Vr9LALVjMfmZOoLQ8PZESvbWBPnnWLW8NEArGG701mFSamu2UGY5vZOYzBt6CElyc87mmTtm0u7Qz5gVJk2vRhhrWwqNEnitDl+uJ9mG5gnQH0yJiA/eNy8KdXxy+XbwJDqPQZY+dhDZOQS146aL5qTRKQJlR6CxKC0as5gXyZ47hofBQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oMJJ//Yw52VUt1DQTaD0EILnx0D2/u9ZEQhlHwSD4Tc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5uYbLZaix7Fbgruie6dHHSLIj8Tjy4B6qEoNTnIGxfX0zmQWmpv7IBLxqu7m8HrM5HRWZknehjyA6UH0y6lMg/0ATSqy3HsHRYa68BCr/1eYzvotabmxUO5O+Jy7KPabMbSAQfkAYcuAcWtsE8SFm2PG1qJxQHr5nOt7awF4hyb9hMmQGeF1rNGJN4zI8UicKfxyph3oiiJJbips1MPFCeG+yOKreHl1YcraLRjtV9Snqsv9V6p0PQyODA2hITluzNhaK/ELCHFsT7budUdqPhM0O4TMBM/VkU6wkAdHdlq+SgfqOhnLb7mTzJgzvsVZaEISTGG19aIZMT2NtVuYfysfi/YUw1m1LIPx2H1N8eqwu/OaUMqFlFsBEf4bilwd/MxxD4v6TiEJmLnYgCz8ckVoeu6i5ynE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oMYyRRgoSlATMCETJCtljOkMhI8LfIcyEbx+eSAmJ9s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nS3kGIPmTCgi6827Kq0f3JJSlW/K96Kis0P+HehNCkAUxY0/rEM2ruZVBkc8za6TLeVzccr1myU8CInNFItK2Gf0NxrcwI+oAfQ55uu5/KVKOZ72SFvhR5XxD+1qFV1+0bGE+RnluBaPR6pH6P/le2dIEhhZ8Nca3fZjmtnPOlwEfO0x9OSkVlm2dSWApfIefiVxIg8alBZAZfxegNKYBWcRawe7Y+DwWtczTHU7GGupEGSJ8pdBTPeilQROZr1V4m/6joGtqkNXg5IcirAkz2QnYdY5J0oEu3RgpjhDHKozIkuG+8lTg2VNHZsYrFKY7QCf4zvftKUVdeFiz0fTuvweKuViPDLnF/LpV7FsPVcQY/pLKx4kialwxh6lbhnWrR0JvvjIPepiCwkO+43+gxn/p6cBtqM7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oOd2q9a2QJHpFJ2rkHVm2z0DOrw0kGI5HlANd+OlHig", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4ASWjqRn2ffU949auybZ60p+IJ7dyqt8mjszxSNWFAGJ6ePrj7jIygVoxS+skbJASiWXamtEvXqFfsLqsvtFS+T90tAEhPKVAdHmcHiw4RvDwFHGOyHu2Pgl0ixyDysVx+6CcYLkeUWhDVbdn+w5HGe9Ta8K5/xiQFYDEHUxE71XdD6EFe/aaYeT6FWQU+nckWOzCnf3q9wID6ooLEsG9ogg3QROXQ/XuztDWvD1rlO+R5HfGhwP6WolhrX6JpuH+oRf8GVXKy1v4ufMnF2/EtFteUIDRjn6yhdqATG8v7R4t24DdpcEe9FIbU50INoFxhRHcSnHhqcpCZP0iKYO3t6w8+volk5j8c94EFsriV8de/ImO/Kyx+31rTgtyCegtjy1YWBdtaJ5pWSTVhWMpIl9tAq9Bk6K", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oQPUCR4cZBxz5dWbo0dpfZP7Q9BJlWIJCxxR39h6xCU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/0D3jYhA8A28yqWl+9OgJLgDVt0OYLYjzzUVzQy2lZ30tMTvz9/riOocVR3NRG7H/yWEvg8dQbtQMMCeX+CPmdEudUtsk08efqLv6u0VwgqX9TH6p0p3YOTmujBTl4R2CCp92IFdAdtwLyZetTIU0+jUOFq5USXbGv1NY8UX7gCLgXZ3yrJdR1zmQGjutKhEJ0GSPsjOD8v0W20/K5phoGhyFMnsrn8r0hrvhtcNKLrWfq/Gm4HCLJ2X+GIKu77frgKrpsgrJIyb7R4rKcl3vCLSWkRC5Mf+qcb3gPZ8Kw5bzT7NCGmQeX4jTm89Qdmgahqn7F3bACnwDINNBSGznG0LM2ug9TkUagSDHy2bgjlv8CSSbey5AS1s2b6oJYNtaG+VMYpmIAat1faq32LNbkwqJX2dWX4v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oQkPg7kztdugUMKQLH6bWlm/WqpXX28MPPiB5EKrEpg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vT4OkrB+XyjLQh2AYsqR+elVVfTWiDKLOVKyrfxc72qKb42TN30BlPbpoL3AZgro9LXclJQf1Y/kGzr82/rTVdITEZrHFExkNp1pkiRPMYibl75qtjrQNMeJcEBK0yC/YWYRSGs9g1dAfaKFOf06XRoJ0r6Ah3oD/ZXV43HakffkJ/l9EbtlQnbK/Ia3iPBGZ8LT3XK++gPtp2E/H7uqE/S/dzUlk8D4OilkSfnY+TqlwNlWuIElo691p7HBAEehJHKRCmxf4UuPsdbr1bSuS0HoZPUCnYFN6b+65nEVVTkYb60HOJmv+BQhZ6J9TwnhI4qhEu3RYyetArL5LuVTZPRUEObnpPZCPxqD1r15g9Q9zDRSl/oXPGaT/Xo19xgg82JiwGGInFxNAXMiZqHchIVLLjDrfvRF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oRy+HaJFd/EP7pkaVdV0IRtY+vHugzFgG2j8PHT0GGs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gVnOt/lrmmUu2kWBDcyO0k6Hv1RVpv7JYUu6yl5OhAsibbQWTu3UCUQtbSscxFxI6g6b+t8lwWE4+xJ0B0Ekj5Cq18OdO6XDfQUQTMZEQK2tAsFJ/EREbeGBxBzKLXOZJJ22hVWP/SRtOcqq6ZOtdsnjZE93m0j0btOdvxrBdIANfqFPxPG2vDiB7KtSAyhm7gsDIqi/64w3U2iFjXghhlPkkImIpMDiGN7wZmfpFe9MuooCZEcNa8PYOUe5pXJkeImYyqCEn+ZcrrID7hTcNGOYbcdtIu0rHQUlKBpZVWqN51wMz9eA/voIxJo+pNUYk4aD8KprI+OQkl9PVfqCUdcZLYnMEzol5NZnj76L6kCu1lPengdQ2elZ+9pV0RMNXQSN5ndcvwQQQuR6mp70aeC2Hkug7IB8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oS8cSpeHsmTFuGb/AQjx5ZmJEXYcEvcjnqb1d8tEXjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VQHahlTB5mnVmmN+OEn9Zkl2duk1buiH8Uk/ygffe0G+Gby0DIdRavSeVvXtk3VkXS+g6vqz1Q7ImUKii/kGFDaPnaE/ucbq9X09nfvZWxCpQYyd7HSwsBe7SgmMh1WtdSrjnrEUos3zlmp7Ous9dLda2QqHulOWQ+HGLsvV+QHNW4bPa4CLfm4lL7GKjZ8Zjm9Byi7vHY98neo2tzidM801xrUc66BJCJUD3PJtCqv9sgSRAzcnI0m/k3d8GPJC4Anly2rJRG4KaJ8wrrr61Pkq6oAO/JSnmAxeYq845xeIXKd+1JO1kM7uTHzfJVNanZQHyri+msNuvmdzuOAWdy7bG2uNLY5YphFg8XsL31DbL6IUgqGW68oVlUOAQg77XCNRV8SOCzJSPa+551uWnjZNnN9nk7Js", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oStXihIJ5ndhsvPdt9fFKSLrNkyXUJrioMXYZ2819Co", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wX8ZK8VYJj5vj7vaodwsVxtTjs3fSLgGNZ/rvw5Kq8XoA8XRJE+ctO6OD+fty1tEwdj7Ppz9R1rGHsuilbxHBqmq/AKEN9sfqkwYO/LAT8LjK6O3EckAv0Kz9r0zkAkHBm/9OsgkNDfLa8MW9JPD7ejbn2GpYJTfF9sn5b+ku9wbonZT5A35booCWzlI1gbRTJ5ee09DCiDIPoZ+zpXjYyBzbz/hbbbWb0wy738u5VTL/JwXh+qQClMqbiC0QMJfjwYxJSwwcrNzZ5c5Xol+sp9dCFCM6tMU91u1VEhMHzqS6qttFEskLhMCGIbsvH6aa4fdX2HjlWPs8eVoHInRhF0r94iyrEa+EfIUb+MbRABTrc5r2HUuzNX7PJEhIYcEPCiCm3ky0A1SSu8bS2Vc7Im+p9RiDL/x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oTrz/lghN0smx2nhFQhV9EjlxKeEIHzLa0Z4Dnh+rbM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0kXRMLIGiVQhHOrS87N0dpyZoQ34ASGbbEdrJkBqWYmskWgKYhPNHG31M5ktY8HRcUAWr+nF2p2w0FKagAWkPSsjZFMR8+v7INf1t0HBxCczIBLVbJ07vBxsx+1EKbGfwUSCOaf6hXczR/EqojbM63V1lw5/rYAiNExTTlpWqiYMdGDHAFdKWQBBqi/mreWXjqsbmZMe6048n6NgCxbhm3EuXEr0DKSIrtu+BI706DBrmxvP5x5SYyz5z38lcojR6np7xQydGqO3+c2Sf9pJy9uwWEDXto2fMMv9DS3fSUXj3zrc6SkmNUQZSnOmgGPqhsMNM+1x319sEUWhkI/5J4JmwnmY0DJT0sLzIl/FkOiWOlIUwzU+9+C4pctwl8KamwEJOrLdYBYaCo9w0wZA5sdNwhE0/OH/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oUgYh1j1seqYA1dloB4yNH29H1DWZlrcsszmGmAk6Ro", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Qwh5uvK+1kWVa4SVsl0DiHNZV7ax+xBtXNFaDKFVuqSLdF162GBcqnq3xUPLc3T1s0MeSLeMM1xydjLfwF/iTGJobfKs3NkEIc8FWrpitsZL7m7lNyXsGIb+RKWSWKFSONDPrXiSU6mn1Lm3Na+TnFkiiO2b1sRAzwXEY/IzeewB1zvB6dzSXaPsEmp32S5vsRI1lL6aWxLO/vcX0OAKefPVSHLoNWwDhCrMT2kpGL1iTp85Db7Ir7p0219Zf/nzLBtqPyUlGguI9KHqe7TFrLYLa0FH6Apm+PP+7tU9LtepO1R3CkpC5n2pjDWTbKMEmHw/FIF+YOO1wrT3RsSbsP8Xq6H7Y+U6gtrQju8p/z22ceKESupP4F+0OR6BwFM4zmR3v0yraIfl0M7zxUHVRfxEhp5RdjoO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oUgbqBymmgf6e5M7di+ARJmRRtxjErT9gQY34sKWbEo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YYImWO9sSAKjpvlt+Wh5MmxfE9MtIb8JIu/rTnboKr5/xBm1Oe7svM/K11mhNG2jqjoU0B4tjQ+awn8sCLLo5JzUY6wR9o2iUKJof97aJQkbv3QjSUi52xQVQhBZAeeTan3OrLGEn3rFot/q5zIlD77Nf7Qk1o3rl8v2mg55kGawmtHKmuPCJVacwz3GAsKls5wrSx4U+UMelHuiPuZWk3uF/qNtCj/+s0rzvlsQXEMy931cTPylQLdNT5wRbPqne+yTsKz20sDLEAFp9W1ujx9GgLmUIkV0QGYPdFh/yb10ArLN4BDCRhaBWYUslKJdSkbYbeBDGntbajvzj8QkLM8q8EwKF/TohgZXhcxNUiHey6XcXUA269XxcJuT1QxGV6WAblOHaMZiEwy9e6gxbUMl5OlWnFPp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oVhFbNf9SqT3vY/3gt2YSKxo27G8vyZ+lyPldokrAXY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T1DqwtjGjyVcH66qoqISMLpOwgTMpTN+GEVOn+2cowllZYC8LfC/kUCnjKByBrXaTLgCGROrAip0fldN22j2ANsy/Sa+PDYQY24ayRZ/oRJUFsZR2EAIFVEB/v9p2Y5oU3vsJz93PV9AXQJ+TJR+6wWF6tJGquwMJ9doj28tLrT+Tt4GDny5miaEYGMJapa/76Yg7DJ9KvGe27ITtlCYxqafLbyutuXl3YeNMc7zhc9pMnL6oJV3MtVJZ/B686CITcwTCKMD0wSYZpWIl+wLmXTQSkVVuEqDBARXZPyMgQzddqVPIG96QYbcz1CLFR/FqD8nAutgFHLG1h96cCoeJSXFSpp/Vq21bB9Bjgfdp6OecdmBFHxMxOTA71JFsI8oGQipi6RjdAHfyJG78GwguiCQWogXA6fs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oa9X6DoUYTUQfkxfqfaiSANlGzvPIwhDadeHXRuoJWs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ByUFQr/BpmV/QuqSMx7v0A3Q+l1xpIftDvy9wjaG5Rj5q3X0j92RG6+Cli/+soVCDI7y5LNSTOWTuIbcna4UzfO5SG/FFM/caAgCA6cECbm0OwDm+42BiEL+6oqupYfBeNTZsmHmUAKlnclG9a9POJ8wej2kWPiwhCzkIwd/n8Jli0yH0Yn1AIhIr6CIx7xinZGhT/dl4bMcyXEfyv4DO2+/FZQrwZmYBgwagzxGn1VXSZYpzdy+vaQMA6La0gWywebCILxGE5GLDsYSOngB8YrfhlDzqmougLabXVZaLCOFjvv3Hq/NSvFEqiL43K3AIBPIZrLgpwvj2s+yK4lDf5Z2K6xejWcq/QAqe+RvAIxNhDKL4wj1f7m1u1ZNb1piwYe12F/13A0unG6xAzioUoCackEr3v8p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oaEe6uG4HoJjnsFUKltztP2XFm+tPWqkYIgGwt2/sLI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3gQhEe9ZTN7i0VlXCDSGEyOHb5WOJ5LYQmlkl4tFmDd3haxg5r+DEGbYA3OGhOqkzw74EkAyNYB1QauD9mQCecFNODwNL30lnIdfD9FygFaUQQZ1esKnMnblWQjcHjNcgMiHzYUyuKbNLX4ESiW6zv01GFEUcA7asUvnhgoF0tsBG13P0oBGt7XYkTpH8LNMh2SB+53jSSKtyhNJvI46s6xW4ZMamrpbBwpAwLZSOSF4pB/s13ucN4+a7YDgBapUWobnEVqFb6ikqP0VGHKbrrjVt7SahJvBNuCBtVzeLXQO6fodkxGZT4wZespedihYqWb5r4IKqPFusWBmRJ0FWOgsHNwmO/jb44Q8FGCbyU8S4bZko0SjPJ2KPkmTv60KOkZKSduQ+rrC1ekmH1KdyLiQmGdRxfyx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oaPWaEiJJAj0T4mMrtqZdaXaINbTDnLKqHkS7doPPRs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FBlwTxsXXtl1zUs4MY+juuCUAJl+zPZCfQPEzjasueDYTY1XF0DP5JQ2fn0KvUTXmGMD9icxOdbJN2WJa7A1CilW+SoYh1EGcN6ktPCGfUTHTvISeAT5h4zppMC86ule2k6upcuA6RUdY/Y5ZkgVImixtOXZsXyvegpfZCVFJjBJRgzil1kNE40d6jYoyR5nq0BcFHYsUjYaruHfgM57L5U9zIq5a/hCL3mH0m8uOxhU/qC4sjZbtEOprNFORDYvVX0vQmm9W7xBFOm+AQ0KLuskP7v3EO3Tg/NO94Ma6tnChTiGIGV9cGo+KemqaIAu+7lpDuoIh1+OEvDpOHpe4H9/aRj3NQx+QNTBv5vtH454V5QCNLDI61QrLNckCT6NDYdMdO6Tp4wKGRdavgBM+aeHtssJn8Lh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ocHheqlTY4Lc6SQe3vlHttTM0rkcnP3J0JQem622HAg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "p1mSyW6kZvNcekGOqufvrWdgiFj4xwQ5dpSe/5GrYsOicHx0rmOUWaJMbqrZKO1nYubLOGMteDhABzZTod27CRVZIpzlq/uBrhcHGyX5PIlSkphtgU2VdA9VPUKhlA4WT/heYb3GQRlc5s0K68cOz88aC9hTC2QRuq9/fdZmpM6QMFPm8jLlPLH/J6dKloo+hu/vo12TVigLkSypAxm517yZ9g1Y43/xQImxoXMtSg0n/Ubw6ShgZNteebNpv8pA5HpD/bPO9CRZYg9NO+5nSUZNDtSf/KtcOtlKpx+xUZbqUmNRa5OFO/U/e/zz1xA9Vb7D5W5m/uRJIFJ1FBXYniwSlT6pEBvo8+4Sp89dfCF0Af78i5/+d+kax1Lqko3UIzymg+khKwsRkvxFky+qQ5YZHrazt/Dj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ocZ8y8o0mr4dpaUiUUuLQ9bn6rk3r0JsKfAjGK0LaqU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hejR52xptHlgUI4tXCu8GJNIvJFPQRvmX2PK7Cx7Ike9psgbXdvH4KvhByHarzsYnL2fq8sO5O6ZXOCJ+/j2SENbFU87zNxqqA0kTF6D1rPd8nO9Vb1PQLnFz1QdwPLBhjt55Ias6p33J7zjMJj7uw2m3vGrh4ZqxWiFnOP4OpIy9hwK/zXhko7BwbASvBm0DvRh5gXipfHdJP5s8k5NmD26wL4tX4xpYtIPhW3Dgdf9XQtoy2TA3JWv2q0zcQMbBTfkfArlfNqrldWETGY7V5OefNI3cp21AuhOFfhmlLU2YW3GTejnh4JXCG87rXLtJn+PmBui1ze40ygoqwtPVJHJHgoKVKyV7lZZVFuxye8uS8I76hENC+xdxFs6rd8S1ifCMe0lXQoIU4r84g+zVflK7dRncq+D", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "odV/c2GxNcIt+wbqVZolpKgrnqx0KJwz0+mofm3vL1g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ce7VBzf+UO32WZLyx8FJtZwFhrQ5DsTZma6T7W8yOJAWc5PFWQ2zsVoN8TpA4Gng4zPqE33O9AcN/sBKH7cOLpfSI05equBYZTW8KdtWp1qgwhoo1dY6kip00C2H6X2nxTx1LUHJG0xXXEeC2dvfpplq47NJdSfqxt4yR3QXVcw0z2DIVNiFo9/qrr3MBAzWrPJiN78kg5aFtcLctGGm23xz6Prqajwp0jRwYkR8ygX7RhF4Km8+ErYdIU3gb5cLlPhFqz8AwkK672C/k5fkpMM/rhESyrNyZRF0FXUJOmFy0ZVBqEvGecY3cpGRbPp3i86ll54d8IkrvFwLl+ykTDZmds/WTYjG29S0MkVjmXkPclxCjiVXgobzQ4Tl/MZratwAEzQQVXUdmbujAsQkusAxBQUdkkLf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "odYI9sV/YrcZQckbUzHGT/w4exPT/6vRPOoUtaIKtm4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5jgydnZnQN2PBd3vtqEtuDpT2/8VEmPky3inI+iGb0PTj6m0zF9U0nqABcqy5ZxCjwxmIaTe/76YPTEdzpgUptiz3NUhWqFdXgTaeOrJpOnYvv1hOPnHDancQjBgEjqEbZJu6Pij8RcVMDpHvx3TCHxeQ0jtYBSYWNAxSxxTJpRWf3+yFdbPCSL/cK/5w0Gia8ejY1IiDDr7E5vsNIVn7D1vnzYxwHVFNXGbn/knIHuqRfgeyUJ2JPkPUq7sMnAAKQ8aJ1ljwf1UsernO4lPuejAgITrYhjsJXZ5CWG3a15PDXQ1gZ6uXeiYkCEcpPXOhY+O4gBHpDiH/mPKe52bQb+l0Bh+MTZ6VLHE67DHX95l9oTNz2gEermUj+Dlyu+B9XDB0JWQk0F+gg2+UkU2XiS1WQXaRiNK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oeEGyX3TV04fAYjR8af8a87k/JgSCZ4S2nUbPI5yMis", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JtYwmzvaVuT08GjMhYGydP1nnazr8JwuoNqaphbMSt9BybLBdqffZJ/BAvVDT2rOTuoJA0r7SwgBA5daK2EQW+L5eHjq823pnItSZ/VtVWsJKltTjgUUpCWXoPN3psWxiTqoiXamtsUWsBn19Z13u5crVcR3J30jfm0rZ4iYpxceCa2UZl+MPJa96G3PCfMby2167sXWbvldEvAeLITJJgvKhq0zUn5ZEy9+HD47axnsgVJUC4lcuaVx/QJ6tk5TZcwFaMer9uvf/3h3ppc1hVKaVl97AjSqbaYDQQJ58Tehupx7bLwH1PFnbT4IxWW3UgkvFiyarmV+4XTWYIMsae+nxVyVMqn+SNHR3EBuL0Gv7mCOIIr7Us5wgvv5vcOMlF44C6nB76hRl2HPnvFPFo0Xt0WwuiUx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ogJi0lBKvgg5g6H9Lq4hIGZGbnc69FLFgn9GZRvdB0I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WNLmDEL7F9Oavmng/qs0Hm/97ZzTinXi/lcZCIOyWY+Dt8VgzMPpVFX0VWCwYoGdiuxbSOJMj4CQblAVmkzsZLcN2JzS66Aen/hoAKjNvJBlBrkso9Zimqd/otckgxyovj6xY/Jj5WSGy9ZB3TlNVZP7128kCYjcSHjPIcBl5BCQoUDwqIEE+Gpzfasb0zFPBNGZcF1f+Y/o+8XsAubVqpkMjSNcp4QSf5OTRuVqcp/f3ZVbcx2uZUDah6xWWzSktjUdXF4EiJ9RrJMtWWAAL19vEtMbI706F6zSSpEap3OMFYeuFPiowS7L0LUMYbDsuCSDHqto+RVuffrUyk9Rig65bm6HL20GRF77n9ECXB566m+duWYlN3ivMeCytl1lOnwrTRVMTcD/mnJGYmJ50B4xxJZLYMsW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oh51CizZFqWmbnZkb0DU6rnyWuEMG9voWxzRcFKawCI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uPdVIRYtMA4jumZUdjgKZiB87HDVMEqpw9TO1+tLnb9O9FeRyF9YqNvHF1h3+fCUEpuXlO7jbOFuOVbMxt/AwWqBb/nIVLDzqrB5MeIk5T7BaPNvktnL1xFUiW1HT36vpKkzETclTB1EW2FfeHraakVSkBWZv7wE54sljl6Q3BIHfq+TnatdWuM2z5y0391gwJcqlVSRPpCkacivGGw5xvnmO9kYXDQ9lG5RGOn1+a0pTcmAKly6p4mnlfyskFbqzNQK/LsfsbK82x0GCLckeuSlHdZvxGe/Ab/SKHg9AWaJeQ9l+xMNbPwOQmw+V6pCa9ECMafUHciLMVG+6jPLRCilRMW4WXLPWB1dl80DaQCv4mZLf5Ueo52bRV7U7NEtQCECWAbH6Bg5HseeV2+y6hfH8oJ3Ibfx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ohChXPLwKgoEX0qpmoXdQR5VhveeAx1rX32jNFzM+DE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5mzTQajWX/uU1niXn7Br/z3RZkchuteRJJRbCbuJTLZPhPrNou305kDAEeYKpDX+Wc7oRokEaKiroPKxrU3eOBHTKAqcU5rnJtjtUsRsK2mbtL70nlrgjP/1CETGM1eAehV4xjDiLpi3BifxeBH0dXFrvuueLXbqcnAF9T6w/LUUdgwUq7dPgbBKAYOFTy/h3QA0pCcRczt3Pa7I0I+/eHimbjBN9/2fslRrLO3yEw03ol90dBfD7Ow+qa1b7K/7GkgTkmtUVb/c73pou8eRs8bt3g71aSqJDPcuqSq7aaPHXONrf+8GOtTpQQPVXjPi4OHYEk2i/d5yro3uJGJ4/Tlb2wXwk0DH2ai8d/r8xrCZ7Un/L1at0C+l/glLajtSSge7JyUxgCZ9Pz7zY98+MvONP2/66Mnj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oiFjQnoweL7MXXsbOKJkkMi+wc397W9uE0InJ6wLWnU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4Dyk5n/RVUNr8NbCfnBLZqiCFTA2YnHZPQkGKIYrEfEzdLzDYjokwuXDc2gOx7x4G76s79Hm0S8rUSiJSe8SNblwbb2DxK1WWQFwLVb4/KUhrlulTttsRKoEfDu8cb7mF7lXSa5+HGuoLuo7bvSSD3P+1bYu+1Zu5QKKtXd6P6iMTXzy5OlBFaZwFKQau3SuSlU6NwdAfKvY1l9nZdCjo8iwAbq2HDJ9quCFQCkqT7bR8KYvQj1vleKlc3r5DS+NFR5EuMlawaj6V9MO9zOJecuM7RM+FSMYqxPyYH7r2uqYVZYYMdWc1+nh2FjMEE4IqvhW7bQA6ye8rEicgf1Sn5g2CAAt76AcytNYBKFwv4NUMBtDIP6PXH6ddZDh9akCnHQ9+2FGrs8t1FidnRs0fSvfTv4eabgA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oimo6YRaJ3C5+qmJxv1ul78wSwHU4z+nLBs0zvO57qM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JPD4FdY85wp/YshEwmtTjnfX23tCuhrPR7bUSuzugbnP/Y0VBiqzyCSi4tq6RRN/tvDmIZI0TMe/an3WZhoi4do6yuaDX+7rkr6X7gRl8p0yN8kxAitKD7NBJzQw9gFwyO0loC7qjF9BVRWtRy+z5Ho4/9R5ZJcCmq81ehqCQiCyo+hdKQ+0nPBW27SRYkO0VD3RTdADJSTnWcBCXmKi294t4eIf8MQPUeU9iT56jSZn2QDPaJduVRWhargxFX2lA1I/klV84ZMTxWbVcQFQbT92bYnQnK3ZfqOQLaMODcW0kGNzHesyAhgAqlUnKCA7y8tf+qm1POncdqq31hFf9HC0vDUMlEigsbic+3CrGAt1pajBQexYfjvDTPykqXg/kQ5AUbbxi1vJ0dPdassrOqNxxBT/YJxj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ojMkoG/LnKpTV9tVgu43gvk4pu3uXFiJUjAGd6YmI1Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iZ2kbU2Q6unNY85lZqqm/3NNVtHojEmkrC48/haobn0ZodK9LcWl0C0OLh46MsH6r6s5Wf2a/bUXPPzIClF+p4FAtOAcC/PZz20zk07v1uvMjLOumMQ47wrJt51WCUNzveguGPmJEPnXAAdCwAbZ/0nM4cbb8HdKXkhLeY3eVq4RlJ8wBUh4PUMMLnsdVFSWo1W6VBY5hDfUVlxqqXpZhkktAY0AfSUuaPdt0+vmfEqr8ERo7IQzwr4ovRfYX7X4EUWRolhQRla0vh+XfTCX6hiqRlxW5T5cwOJsWkcbv+4heyABY2SiYOl2vWgWzWJiAEzrpjy+xVlBX9AP/nJlcFjoEJQiiD2wo7YJKRVqOeX+PJ0bW+7Q+06z3oOtc/X9imoFjTJ6mqJa6JyJUZA+VwMe/kSKm7IP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ojggNaooO7CWVqB/jBbUgZ7q5CMkIuYBE4Q+dI6M9Ps", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LjNss4bSKfMLeraNGeTsccACB0YB8uizasnHB0yppE1EFrVml3Mqb2Qt/Qk0Y8SyFEFgCAXXEsoge3ccKtypAVYyS8YVX1USggPCf4PJ7PlhIS0CyfCh1y4jOuWMHQJqxWnSVqAYMC90lfYMV6WiTNvLqd4eaB259rRA5wOHGT4sEFnf2l+9c1rSVm/D6FQ4NzKyDBhJYIt5KtLfTeOmL8wyI676Ze88DBbU3e7w1xxaW96tME0M9krneBhOB39qYo0ki+uaRdeNcIfbURh1XB1KIGyPTJatN+Fz/s872elEQNLb57z/BIoLLrfXgnnnGBzp8W/XOPRRiDu54zYJLBn44j4j8UpjjQVqULm6VJgbAMMHlerZZbUzQrWYj78HJI/e9VZIiMqc/JXfh5Twp/+dYA+a3KRp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ojouJrpznqTU6q149Mc2+QDNlaSQUnhgMphhv6Gs7Z4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Lm629J3R4CPomExvJQPQxm3C5wUoabL7Vp97cyLBbIfqDYip8zHplxhP//t3vHZXKH/Ef/ulSYFAKfjIY5VTBKV6IyCbAEkCiIaoyjIVTNcI2Dyr0OGFPQP5QHh7NCBsWdRj8Jb6TAzcO0rZDene/+uE5YwmyocOVG6HRsm2Nmt/rRqICkhkAykfmaRE6r4o2fntTl/hvA16f7IoXIu7Muu8Q78cPf6DpDgvZYvzigpbfHf+vcRuAqyZZzb70UjD62HSIU4mm9bg2degB9HRGRoHDbaazymI07NHE6mL3ZpfEa3/CR4Jx1KDpLlXUY7M8gE5nK0RlRqd2SaKSwzsO3hvzXjPCV2b6N+WltkDYgfcKHtd8EGCfEX5E9zJVafy7CozUduCCwa9SKCdH/8b95MtJAj6u9/G", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ok5FMbiHV/dF8JErioPUzs6I56CKuhuvrNNZxKeN7ac", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bVpzXAratz9eHQuUnym58aCiCMGOZ9cD3ARlCFRYnmFqfXvrme9riMh1swwfq1ya169/quiBU6u3iGChefFWT+4WNcfZxWce5WYAG26DyPTTlhOgPJgZiwFoQtvztF4VHVQiSvh/Y2Qp9DDW1mp6cnC2PZ1g8roYUUWTK0YO1OrPnHvoYOLp5yVCOH+RnT/zaydoiKs+JEGd+4C5cB4NAKj6rk0RMH7/pkl1XfW5GFV67noT6y6oRb/V3uRrziEme5VtLiuY1YF7Qm61HBxLwmGzvK24TmYyQxKgtaTDzWSi3YgFSgIJNVkP3Q4pQSlL2Km0KOcD23l8Puwqx4sevbRnLzDY6iJYFqoccFc0RuIJnoI8ugpIWk++00HKQTMIjdFWkmVwXJ9V8giIs409qzzLTT2WMf5j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "okkOriP60e4eH8+ClOY6F0dvbRhgcv1qGYjUqtmDBjk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vX0ifM/hu0vUDErCc0IhCYdfzE4eGY+Q/wXI6WeUX14ohNJB//+qpPbWagepd/katl3ed0QG0VHvgXcKgu0MQ0DjxIpMeTbtrSpbRMVVYHq7D7fc8xclnTE/WEaPUDsjdZI3xwKoJoPgGZQVrmikS8VDPMFcD8GE/99Cl5JPCGvF2KbKu2Oi88zYMM0Jdi3uJ1DoGVqMcQnE6OLDVprg/1vjekVNCNBz5qV9yslPIkJAOp8V4yRxVCVaV+jwi5Zl8Xu+6iB95plSsSov1SD2J2+fOxGytIxLFLxnJbdARFvsQ3rtcNV8qZgLpvv3SGtjAJiLpEvECakyLvvw6wvFGO05EVv0Bz/nQenFLmJKziA9B5GKr8SaedhTIlEckG9hQji+OhLVNwTkJ0h0MMu3jcWH3jI325H9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oknqtUB8cWKzxQZcvUZT+sc3UDaFU/ZER5T5HpQJ2Wg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PKTUEFH2uC7LR/EAHKPVMZVPrph4wpPdGF0vOM7fv687A97zX6XJJUIzROc+hW0IsKHbf9dEAx6/GuW72zIt3K/tS+P6Fbwt+kW51Qfzdt2kGz3vi3beROLZ/kdVbQ9zJBVNiWo247uHsulyAhhyobH49X9+1s4i8uogm8BRsOMYbbw6qP0ifniBn2VZpRbwgwIAtUgJWERkdullX5K/kgIVRCDFYSCQRK/dQ0s8Tnj07ydCczN7aeBwUg2Au204bbNsU94fouIHxSWwLoeOgJdsteXNTFUXf1bkDDYqI5nxHJ9QHeiiRtsTrj8mhOSxqYIcc6XHY7XdbVdJ36f01EXTItH9r36bwYbpLPTDk+8VyJ5biREjrIPc276lOdV2L8oV2k5mYDxbJ/78dN8DfrIaLJwoqKKT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "onihYA0ps3wnINFEX8YHaBxJ+844vbyPTv7wTRSMZD8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V4aUESXTCO0j18TCwL8UhXnPte2f2NE96SHsNAhe0sj5Y2JCBeZDQcY4BZUZeUm4OGXpCqZXFFsrn+ca9r6a+OjjaCVHrFhq9B6ZLwiHtgVvbV2+7y0C83CaL/4IRV4M+bvcm3s3BB6i1fYaBSauYXLFUNht7SjFRBD//ufSQWc1ScmUmRnw8Zla+Cscp+f33/GmGvXa0wlKgkfTsZE8ngrByA8V3xGwhYnyCvtTb8PxD5Te5I8hnIzER5+kgISRkst13KYhqA35epiCFs7hrPVLeimjeVYejKXQ1LFDXcsSxi5knNru0xiQ6JQgljj/AbNwlVoE+qUHYLMoQOpe66SEg/qVTpF3WlGjUm3pEqTjx3JEtCrFQzR/D9W7XhF1W1eC70Mui3AQHpm979GVPxbKrXLMfoo6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oo4QSPC4iXOO6lqseMMqCoG+j4Ua0soH7jHqjtFLjOQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VNFkZx9SN7EoeHtQeCq1ryyUFXKeNh2UO31BK5QsXV8sTSA1j3diDSenzO/pd5eJ7XF2Wlxrdc5Znfo1VoeEIi1m6KX2YE+3bfJDUliGlAkdgd1lThKDpD1QIgO8r/+LPdf4X8C6iFkGHO0pBznjF2aK5FzuI/Oyxw6W8WnDVzkUZH6eMragsegqmAX59PIwxl0JjxZ0seL15uH/xs+7q7VzkmU5IlAGEhjAmf6a5V1kpPe2ybwVomRL+qnZxoXsCBaI1rNhbAu1SIh/dqojXgRTLq9UGupqjd+Os50rSd4z5CrhAlfbvsSAgzG4W86KATmx9baheGWJxQgzxfu6UOMxkpxewV9BXEE2VgTwqjHD0PKVD3tmYPOTRSRVENjwBla4MSf5f1BXXMongFW3GLlHVR0wuhqG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "op3FUanAH7FI69rXtKXGoqpd6+13FSV8QbJSqEqY7V0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YTZSY3bURX/fNoVRk6kKJLKki5vWBB5vGgpUENJnTBafCjedS3e14jcHWA3gSLe5EUrBzlgOV1A0sobM/OYQO03TD8vbNMC5XH7yJ+8ofW7mtcz829k+U0g8IdIGQDlOwLRMs57QkHr/AzfBli4TCWRl3feALpnbFV2RjwTeaBY62oIjFSrCTVFX68ryqsWX0NU+9O6j0v2oyVMKCg09Vn8z26xjUFfXpZpIwMDA2Z5r0Uup68hfDO6tTIGYeRUb8LkyApZg/IMRve7KaV+wYn3P1s9/ZTEb6RyFMZBsbXc6UE6OCD7hIY/CDz4lhTSRwEcpPgsXXaf/N+FZzI/wa+I0Q0pKz+vGH8YBi+DOsip0AX3W7AabaLcP0hC3uEmQyVLF9L3MDnhJVHzVTHeNwsC4UtQf/S8T", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "op3UGQGA71U/LpMHs6Z9kuFQ1IGsTiNPLbpKXaQDa4Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F6HXJBJNg56Mw/kkDYh+/P0r9HONNa2x4SklKgbuylhUpyHoSTnUb/UPgSqY6Q+7ls6o/JALgXgqrCzcDLD9UY2qUq6x4GJ20KjUrbempzXyTHOEdvjN8Pctx/smUn0axXYvnZcZM3vdidcGU5rqiumc18uZ510UMeNzWLyaT0ON9RqoMLPS+zyCbOwAbEJyvW3tKZzUS6be9YhgRJLYmcPBUWYiHXy7aoCTlg5Vn5/PtM9RYhv1fe+qwXn1WMuqLQw9NTtT1KWVLFG6bzqACvbaaqUTf2Vmql1xqFNoEU3Xzjd+2riW86FlCZYbC1CEiJhWl+sSz/YmPOGbACcqxDIcjPGmZh72SbY/rly46F5VSuUEAtvTqLlVHT5YFuymhPk1obVwUfazKNtrEgFKy1xywjuNIK/0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oqSZMPdoBi5sQhnWjlA6a28FhB9hYUpXB4L5BNO+pao", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/uxHyYOFRZ/TuNJwOaOPqYZq7e+VFY7Pk3G/6/3YsO4PyQlu0xoz0YtfenAya/SMkCgpbC6Qwox/rp+LGlXMGLSI3N/C/OFEhfRkZlrGQDYjvUIrkSsqYLBXDcA383+AAKDQCYgtHNTl5pcFVO+VjEU5p+dy42XVN/bPveLAhjK35L7t95AxkvoCbb97JH9FgvnL8Hn1qMxLaBLSke7xm7FqGtZTO76zxXTiJOxnzoBQgRl8NeNyXvpz96UYoghjKP3+lhfp+lWf7rmhC4X9+q1d9lWd6HrFeGJ8ND3oeBYPjhkYARpgngIub6DKcxy/AA1X9lSt1p2dXwCb+M3cgqN7ZA84u8SZsUhwEm0fCnJgInsYfcilOoT4ZdkQwF+YBLR+TQcc+hCxIThCP1X7JvcYORRzrx/5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "orHY+VIBEz9Y9GQJSPuDIxWOPhePDXwTQrVi3C9fbBA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Sg5PtyLTj8ydSkRwcqFJMsDSMHLBGskVv+mfJc+hxRoVj9lodwjYrp2UIR4RP+X/XExkKvtkT35tesJkSQVUZycagLcI92s6xIy5nyzmeKhg80shMDcox1uHWeamXjNxHDqJ1oM+djivJ3o+2p+hbOLlWG21JWpJIXRS6EZn7maESJ6kpeLqOcmtcm8B7ZkAzpHH0fiftg/OoztUGLsX+7gpDGS18PmbGqFBzSNO0XkevtqTlAlCPISG9o36g1R65t2Qb8Ij375pFNWkpnu79/8PLtrRNX2+a836aWrnBcaYHaOkXGKj46deorfjDhNvysgPS0GQmtP9n6VG04qDYhyvolTrvXlxZBUGzSzH7+gC0DPKUeAEtK00OdjqOyt+iNCdSNgoEio5+wE7NMgXMIAK3tPPtw/N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ot3Lcxd3WC0LBGrgSp9EvcprjqaJY0V6/89qTfB7Djs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q63/95XPSPKRWkPPd86Fstm+nJGYdDQPk74lnyI+eSlkZHipNgnCsnnKEkvJNUQHtjoRS3uwqJU7XEa+kQ8UejbjHNZTuVklaYLWNRWIZH64uQOCwJheZKi160Q7tGZ1xQMqbiZjQJTvfDEdTesLjY8EoseRo2pkhzdE7/JSqTjFSmLd+wbMtP1Vpq1JWi+PPNvvYzqCH5iUUdVwJTd7MA0VWOWyLdac/Cp2VsXqm41Ff8me2T/y5kmVR2LcLcrY0L35YPRh3XJc22FuFMCaPXew7oqg4kbCOQT0/NSARWqFfKH786HoFxtTluhdwQyB0u0c5zr09atta9GtmPNzKVyqo5bQtChYNXqoW1fytIA2/AKfdC5+IBwomHjQ7WWPqfiaSWY7n+a8565TNUzAoo6t0llSEcgI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ouLJ/ge+0XeZ0K4GNbwzGcLfKO41YCHG4e+cZ7cvFf8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wmWFru8/ZRyJKGRrJfFHPLQV/ut2uiTZ/yAIWPOS9C5CsL051fOs2ze0pDZa9pFjZGylX+bX98k0+gtBnM2AQPhnrtN0UrlmTMIQzUW8UPyptGGfqFKXF1QGCKXWXM90DmORxjfsYRoPTfD/WlX7lY4mtr0OeHhOrH8z7RmIbaRnsAms2KGeLA2djAT7y9F9JtKkZRoVGJCGuR3FbL30V3AA4xH1HrYrngjoed5i3CzjHLzYKYS7cSL9G1h2ACjWWYVq9FYM/TwRKN4e04+Sqbdwamjmqdt6tle2poeFiomMEtqIZXiFryMEsFZk4OKLAZVU2GT+hr/+1/jZegt+qQTYlTQstDwbGPgSDHywTrTFqHwjNXyAdvdOM7Jc0Ouvj2HL4FYVWfNgXuMpqXIp/NF6JeX9wYKL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ovJIxS7BWFp1072VQaTChhxxnMepIyMBDL7NhViAqg8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OV8SWk7PepbAsg15zFM0s0mERm/gI8SlEqWU58fgSN3VyWXFijmmNbcSHvrpmcsKNWiLX8i7sZrZDHRVEelFZDVYG1yCubT0/j+IzeS6hKvqnor1pL7Jm6UZMKsB8Bng9cg3ZaFMaGxs9/nlKt3LmIkCYMfTIWtmXMgvMKvuGLQZpZaELAVAbAwLxWUzb7CKOWja1d3K5IBGy0GWk28/5IMyRFQH+kyT2+GlYt1EOY1T58Swq3YjXZAo2TxKjHfhGvqCHtZe8JvE6tdFY5WdEtvOokykiFp8nmI4NChg2jR1mXoPvoyEtGyGlz+E1ELIVIk+YAL/AJKKo1BVWRb8jkauQ2GoEmttTSTBnKg4oSq0KfrrK6J9UdMxfpDORxt/bdRQzrr8dYsJVIsHO2WGoFHTCbPiFXBH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "oy6DKSbKdcmRFPGk1vw+WWigIUDZZL8+shL2lTpnKu0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "v4JDb9AgB9nO69NnxDax9H6vjKj6vYw2KCuD+0wWvQF6ERD3P7Wc+y03FtUvrEyg6NntdE5v/3Z+rb4MwkxAokdYhfLendiFqMOz0DUq8GFIUYcgR67/7/Uhas2n1EJtrBCpOhDV1VTYjGgH4d/2qh4wpGJ8ol6BWXRYWv03PMy1Dhcmblx3oCmo7aflW76I7KTl3J7NDwMyQd5IJCwRnNukqUaOoZHrwuKaknSwkt2RKjqfJYoOZmPel5AG1y+zqbQ4lKy9ij84RHKPd8h2J9LzSD4Fz86I4rf0IgL6FErykUKQXVIaQZKj7ZJUOAqRxQ4RwTdwSxei3UUuFl6WhnS0QvS2rWjp9IoX6jngKLQkyftfoi6wETdnfZOQT+budnmZVF44b36oLGQW+waOoTLCH2pK9n6i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p+z4U6WaWeAI9HTX8jRLlXtTKHKibdgn/AgfjPsghyc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cVQleZeOmC8QUaXi8pcDSjhgsXf7PTcbNTXOPFpOADXsJ3vP1GIWQNeEFDmj/6SOEHxthObxcWnkMtZR5GlOARyvjGGOVjsH3vQAYCZrsQi2nVmXCEluKlZaGLYfY6fIf8I7fhSakD+oHmI05QvNcC+px57x0+ucOzr4RoVk36i2t/x/t2WQi60PJEHNqt7FOnWg1NV3Xx26VvM3XAEP73P41xvfPKLkIeZ6h5RCP2nSR0VgSPCZxvcH8zUCd6jCiReadUKm1z4Q8DR90GTYsfPs3JJOUr7lg5qNJKJLbarhjuZcj2VOYmbmUkSR0RGRd7efHWnLLO1COf7AlDQfZLQoCxKdL9LE6W2YBlk9pHYtywGwI7lXwQ7wmLu0Kw7XtbZOhtoP1OW+ega4TgCgZPFu0whwQ9FS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p/NCiGFzo0JSiCKnNnCVCoeS6CaFg4/MJZpMAXuLywI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6sUWDTih734Q+xLJNPkHJSrdRTj/k0sa5cgr+xq1fePRE5vgbm8M4bZTTOF9YM0paIBbchsmWm8vpDW1K0h2FLl/7QDWJceGVn1Um1/45Lkq1rLxeDL2Nut3lz1assqX2tUDlyw4xuEw3Mp3VeAHjwty1OE2VfNc4r/hmzkSBgUivK/+x/ieYJF4HZQUXnfRAXwLLLTfFIUj+12OPOqz4eCivg3tBbJU4vK62p5s/gygIYSwBmZyb8Xsa/FHDzc/15D60fyz2E0aBmN2JR8T12EacKFYNcCVuVan/SNsve9Y7gxsneW3oFAEUiJSZIBPgpHUdgo81tskhigWg2S/jBekz+NU14GGdpEIv51NnDp0U+qIx1nF9XHBxUAYdLhq/0jvsSyWJp0NXFdOZPSDi18T0UBHKbqa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p/OeNqAg0QaucmcsXMlKicPGVNM1lHTYM9GLH5lV8Kg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hW/dhFriFLTTYw4UNoYRf1SczvpQUzbghgn3YvT89Wy6o1VW+y4bcObiMFEs1b578D8oourrS4rmMThixVvFSuKGQz3DFTyBkN2RQTWqOFh8ENq/iXl3QR02ZbiVx5rbk7ejj/wK2KfN0EdgjEEF9qm77QPQeMV/j1QOB/Z8LHjVG/oGqAuI3ADsUJCGWEdeG3kGN/n6WNv7vDdu9mPGue8LPaXWyJi+dyXtmnXqFDPZ8xIj0Coj6wLvOyGVelVeb/sCyD9ODdWTseI1WR3lLa69hYte/hVG69KPJcKdd0SccGY+XRf5sK+J7qLZ0RqCXEh+xXZVTGnCDBK0y+Z96T/WUaloOOW/frLVigxgTrQi3/6PaWTIfGYj295XBuGxrlKXPN5O5SQYgoHyAzbt4npWbIe9nUL1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p05oYlWZtz9LdBxS+dk4TGPDgSQ2iZs9hRDr+ZC1Jlw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Et8nGCfaadopuS9ikxf/3nLpkEbviee37KgKUYaSPBICyNU5Yl5spOxGJbB47Q3xzXhAWOZOW9xuvpC8lqYzwdigdAMSftK7+KfrL0uVSaRWfGNvjd9OtYeZ8ifX9Cs82AXZsq5bpJHlfBPMFxn8N5fVS/kBaH4Q52f7vvQkYj4Ji1neI7qfBj6X30YTrqvxHEaAKPYTnCQ3NxwE9xzJjmjjj6p3whzDhOjlGoOKTvbN56cEgjlWxKScZolC2WodwQfp2oFDUsP2ZIe6XVGdir0bxPeK6Js2I8sYYuqG518ICSJLBGpGJk8y9+MTeZ5uuEMjLTOMftrYnqvNtlpZ/YUssZrS9803PNUDjCM68GTHUVLYl1dsztGzAVtR5Q6D0RXSY2nEPQNuiKsfLNMLpB2zedmoF4KD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p1pEU40kiqKdYlXKMmE1pALRjKoiZK0Ngmw6fhup9J4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AohAmTVM098o/peTVrkLlgEWY44e/6g8Cj4zfS1om8z5NyQ3ikguFP7hbPxS3VoiTZ5k1Hn/EOQ5r+LGVSZ26NYYwIvFn9UUDVCfALHz0OrFldVUQ/DN0j3Z7VJjdF6vypme3WqQO4Q+Lvnor5jXIdyIH8P/QJGmsyCn9iDpNgBHmLWQmao/oO855h8BWS0plK5JeunbtLNzgDJ2TSM/9RNlF44xmNT80zN5H05KIRPcunJZdZA0mXQXsZrswpBEcGQzjXwp5V/GNS1DVj3fPxuQlxG2f9g7rXakXv6xaPL17xEhFC8kOMH7heCyfg5VI3BijJrEwYkAi2Ri17SOg2AMWpmFKwPis4zvSChiI8+1hIVTub8EMXRW1RicZ2d391Sk46vzgl1/AisYN3WPXGOR94Ow84Jw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p2PeqPwF1LlKjZntAIR4EZw+hRThQV1u36kACmIVKWE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AbvnmzgQfLPD5J81HkGwOYWf0l4zCK3Y3dGm7d5Xad55ord0PUMzN1aO+myzSM7x+SsRPt/68c6IZtmaebuMHYX+g9oMmjfgDSeibY82OTy0mpjJJC/Rihl8mZYz7/xwILD6X/lSLswE9uJ+2uI3qifZVoy/G3PK4/hWYErY/eGpWrVG80SjDDP9DwIq6HarxJn1mTDNlP89pXtx7YHMrMSgsXmlXFqqsc/m/8Tg7huYP2HR3d583M4H0bFziHmEeeM22YNZuDE7OICzgW0ShO2WR6Ue6r+fPgFaX7UeUeNxJHwYkFvMu1Vq20D+EUsf+dlYIP48mnPYMMcbeY1JL5Z20bMyWGqaxSsM9eYfa/OACaxOWe5Od4mhqNwDJMVMIcfGvIO+NGBv/TrxYvF9mapXMWF6sSoB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p2kuuHp7gW0uLL3EYCuKq/VcWUG6vNBwKgb2SQy/d6M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VQAP1Z7pKwZw37C6gXtz90ENPLl+opGm+mu8ujTwbCZAaP/5e70CD8JHITSSeYt5Xho7RIkTlmnA3xD/kwSssMxGJ2nN2qSs89xF3mHTeWoBfX2CaGbXj5pVxl+M8lhOtWU8O7vynpSvIbXOZZRA+7H9tlUwWLmgszP3Q9iOVkrfKwf6FdHg04Cz5tZ7Co7/Ekm447D844FW/L9uhzGgbYRY9XK6OPB0l/wRPh+HsNpurUxdl/sMGzpW62iAzn2P7pDdCudVP1VwKYRO7iTBxPfgWVKFUKzG6sF6br4KxR6Hro/AnS0MZpPJClEsq5ixebxV2TDkqqYXrn/OSIcmajLLxn4xyibtHzcCkFmDxemrjv7VnaMHvS+8vwLrEFKfqxjFH8RRotr0jm5075HxPsbjZf4CpMn4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p3WvgPQzL0FO+lDF+OyacAne7SmaQsp1McdS2hJho/Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JutTF5YbD3CTRl7QNHpx4LXCz9w2CmTAcvif4w2byvYNB9YarE+DX78hpj+pIZDM5neVu8fZGxkPLvpnfZVJi2CQFMun9I+TPyg0JtS//uWdv3JgjRr3GYCNjbEHqq4r2a7RKg8rvB58hlgGeY6vl4od3OXRG/V+ToND/AQbtF8J4SyqjXUz8EZjKJUaz7b2O0Z8cHv9hayNKkLI+mU8Zd/k+fK40LDWhXQJ7jOIDBrMFGcN6SEleAyVLhYQfmkHVYeXtsCIkW/XobEHxK/bUO3zVhk0m3P70RaN7wpZsjf08K1OQtmUGyuVHdeJS6oFL9n06W21ke4cDWVtqwQadLpSk86sa6gnvUq4LsYErF8ui+yRIiRcD3kcCbRgJQQJ5RN8qiFerlDY2RnuSsyzWqk2rmlUMGCN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p3k6OdFCNXdSUduCb/WatyBtYargKtjDWXmTeDhhAc4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jPyva8SPZGrV55Tg3HkehaAlGEFh/3tXgz1Hbdz92yBoepiYpBjTT/uZ/7zCfcu3/AOCX0Jq/NUl1ut2dY+fHlNVckZqJjAr3RuORQm4tiIG28zukibNJxG1Jdmvfe8cXpAIznF4DQ/BYFu3q839L0PPoGtnIjKpQOIME0+DUzlObz4v+S2M5rssrNSOq8/Zr0BI1abbI/mxRYkHiy2sfLP7zOFfi+1aITNYv6+bQvJaWfMnYR6F36fBoKHQJRLokY8I0Lpf5i4taJSEzVtILMqKQMH25gCg2lCZWunaBMpna2hO98SM53ZOLUiX7+PiipnOiltAgSjoqzAZgk59CGghc+whBVCDNmCqj1Xw4ArEXl0ecRvytAgBo9PVuUG7w29QlFzJ4KY48z7CDgyiNc0cALDCm5qb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p43qQ39ef9L6XgheNjjZ9Utw22iHegPMqjJYgOJFvCQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rmCFxTpqFHKqE3bxThc0Y09BRcrI03i2VoT4HSvZ7ZW5Bt1JY//usU6NOcH3jSQhpknpCipgGC49qfR5JFrAw2BroFdhJQpGZ9bT9xjDLclacsqG7+MJyk9D52/waA6w1u5fRM6uYVl4T5A+ggeChTIHkM1hYMcUF6+WqHpUwQHVf88+/hJKBs7COgzTdbCAXKUv72TCoCtuv+PenepYLINWHY70XHFMDqNzLIRWy7QDaLpAg2KeokW0FdQMeP1cgaeoZS3QCIiachyauhv5bDys7VyDEzroACs83GR44Vx1GKISLgLeJWgWAPrqRG+R0vswbEtBLA9QZFMa5IMvX/bBw7CraP0pPI1XAXlBdlWBfu3KZcD1Dvsta5Ammg/xTTtr8+mbVZsXwMROEbMQtQeqz3w5yeLK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p4C9qfcbMYMWRXQbA/P6sYzDAMr/GYXq5Lvu2UQVcm4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OlNaPGS+mhcLEtXSf44on7sJU9DVIohiUWfAS4ASKi1WzPzOzBX5VQzYHf7ATMJB84Sb0Wg8S7WXxDUE76HNQvl5+Ay5by/AfEGJiOH3lgIiJeLMqjfpZMATEsvRZbP521pjhr0Vtd0kT4vjon+2QcaYL0A/pMFxY5mSlro5asBtSOYiD9issF8w5fcEeCpS7swIeyyeoek/0f7JUk7Cs20CYphtUvkXFyXEs1tGozNiMtJwC2m/X3+GNaX6Ut1g2zqqCHbrrRsJbKnaAhsks/gRzI/YvUV3Rg4L3KvdE361dq2Dj+/PE/XnbXdVJlf34NwAiL7r1+RtwfBbmnwMopg4W0VSHk2+b7A0EghKDRqqMMwcrnqvpigTvkW/MqbjIufo8/6xPOVFbywQatLHVKIXwFr1pfwC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p5Ciyh66WxhIVKbe+c/V8gP/7V4zWnF1mNbh2ob+jKk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "G/Fy+WJN/0X/+Qj4GHJgA6ayZpmQEbUj1rjTmdvGlg29+ZOKVqrTVwkxX7DaqyfsenpcdSx1dh7jrsQqK5AK7qMWyWY4XrRUajxQH3+LpETmd3zx+Mp0pZ5JRjChQuzskp4kMAp+CD4kPUnvlb7+mfb/MzvGtrBl+qVZ61WCz6PG+C8HFXiNYZkXD8vh6EhK3B1G2zWTgC34PP3t2MBB4G8yMnPnB6tISI6PFEjWrR+aP5TM6IlF/N/j2K3pdSdjk1quxEzcqZtEtFyBBiva2H6bTKMaFEJqsa+RX9dwl7VRoWQaQ9i/qGkgce3vODAhSuRb3TDhMHxCm7gMYirzvuMG4IAIewUP/G2Ata3/WlJ62VjphP84YbO8Fchg0fjwohCp5xcWOBSTDum3gm8HT8KbbaWTGpze", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p7Bvh8uboD6EXVA7UIL4hEcL81iP4ASaLVy1BL6DA3Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "U5orp68Hcsyk7dYT+BVdKjxMW0fUXU8w+kJ1JQGw8J7FhVd//oxKCU1sUQ5J3fFDvrUaqc0SN5A4QbmYqkm2fnTPdQwYImDBvKDWh21Wn80p++/1ijUPP0NxLMyEJoUefMeAYglem371FoKFWTBZRnLlh5Ol+BkrcXtEsZMPIwPlyogzw01KdoTacL9SI765i5jDtJt+fP3R0Cc4iI47Wo8G1iGZiuFyEd9/BI412MjomBPDRLNCKgCreveOpr8X0liZ7+Ib2IYnBBYTGGYpLSXJ+w07z5tTX44Bz3zddzXUjJ/ibplUmiuzkpk6vAivLjrbTafHhvmpz1bcuNw95PiNEtaq06qNI8JIjEmUSdvwziVE9rQCWCcYJbE+f2PJMdIrh6HAO/9oSH+SJrk3JLKTKi5sj56f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p89Aibc0h4Tc0KIfrARP5bKlNo72OGEiZW79803QBNc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pM8yXQ+72NZFOMh8zSZ2p5U+zByfRIjA4TmcPaYwrLqIpXoEapvM8kYEB/q6fakMYk3QwzomWEOMpOPsLRWJ4aHMlhMnaEBkCjw3r2ANeyNsxn5XP377MoOfrE1jiY4Qd25e9VuDr4x6EX+uOwceUpN2m/mjGyzc9oOSflY67Q8HOCE6YveEKlwN31h+3gHbUm/cAFtfgLaCIdlmahdyAjdBbXciHoaVC3K97QZXDC9RdJ0p79G8oJrYHVVIJ6b9BMcH5ozAFKUHOck1B7wk4+tqEFBtHu9GzQ29kumiwUj3gqC7BpKlna//lAxQzgb+rj5Glh1AzO1MAehNW5nB/Kmajk0J1qOpqatNxeyV9Y4A6siBk6Q/1qVjtBgN00ohFwQpDJzAnP3Q37pjhhEZLSDVhORnTKlG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "p8Nlb5XnD+PWq7DQ51S154VgWyQisDrXF+5TdRSVcok", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "S8Z1lIm4slTrOGOt+aHBzbindvgazs79yl054Gff/YFJj51VwuMImBoSic4ASOJURnwGQfpRhuYmd75OM27RYVGgwPUl1uVS9mqP1QMI/zNVXfUpJVC8HK68gVCYUVX6qDZq58QjY2t5xqVB7vshWxI8eFj6uidZDD3dAXBSOkQkqVetax4fXvndkbarSFwMx9JJdQFgcCdevc9Lu4QCGlTPRgFzhNabo4Qyh+BgQe89WiASp7sp/ZOltP3QO1Z716QCPaA4sMPIJEI2u66mkkYj2xb/Iqc7auHnN4o7fWrD7t+Sj/hdXKIYZk1SO+RAJFn/QDqzfPcPh8GDbXg1InnCuHz8SxdyMsIeO2tQvvUnD3/p9JHazRpqSK2qucMRW8mMDGQq1PQKPOra/sBEh2Ltf4rtPqvH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pAU1CaplX7rzXBnxi629p606DDHZIZsk0nY3lwPPORM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k//E9sHVri2iWoG5YVGzfQfGNx/cqONBRv2JXjvDcp0RnIt9QcpW1Br76hLlBF6eCgxiBtt8ou1YhSMT0jviDXGO35isBDdm+S13ILhR2pXgerEKn5bk6oMoc6ohE62wILt4bEOkXg3XExE3q0H3HGKTIWMG6TcMdiqhKCMJPrGQBqXH8VmykISbdzZewTBkHFVwEyUZEq6jIH4LavyUozMitL5UIBhDd/8WmvWt1dUOZ4urpf/den+2fnLNzjBJzLrLGTZZ+7u617JiteIC//R2VhtV7SYwjpaQMFTOwHXITQ02vjTG9bDJlLbVG0bfbOLPU1N62xlRuLU38vVvPECa3biuezTVVqDqPFuDiSyPmwjj3TPmVVGnlTJkyTivU5mUe+s2+wwcNXXPnGX4O9aTPkKlUgDt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pBd/YsATeFyJALFeH6sIcCKZRC6ZdaZ+y5+TM43x0pY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VNdPvW3JW+ykW9JOsxXGJ5S7GQ6ISap7I2udqfN4CfX1zn9CF/10k9tmoLC90EQO76QSFyoIhFUeH4+4uD60cZraUYB9Bvm+qVsoaym4vTSUVhkVcuwtFQqjLJnb72ngBLINfoJE2dVtl2pX2aO6Vo3QHHuEW7T5Qo0vgJqnLMHPS0LffFDwrQPTVAbSQWjp/UI0q3jmBFRaeNCOLC0Jmfa64Vng0amu7J5u4u/y83nbx4wl4y/inkPkMn1XkVzGZ8VXefS34aqurBLDYQRufWf7E7ZbRxK6FDV5M8L7gcCVybXlEygFE8huT9FrGLn3c3xjiOwM5StLsxLW7aOWg4Zt+AWw4Dy4Y336W9H7WwGnJyZxXzMkmitZyaEdBEUG1wNCAO0XoufzBTyxb+yXj4zyboZBEnpG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pDuTASj8hIIOpG0j33s7OF9+VdWg3NdI63OHl2ZJuO4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1cvyzSf6eyLeqvMzZbuLFfaJ1xMbxwrh/oaAE13b/qNPt1i5fqV68kFjQIZsu9VsFdXSJLa+IGBwraTeyj36oL+xcvxyo/bQi1Np0deX9TKqrtrqQKixP8p8H26FNeLdYckuVXE/a+5oUnWTBBsv7ekU0fS+Jmp4HQsO0ZdBU1FCiaaeqQ2cshJ/lla2ZnsYfAJTHDKAkbuwjAlkgDtESJw/y1pQAyYwEb9XpNLUgcghpq+iCXteKomzozLLk33S5Rqmpagku+Vbc4Txzxu0gliTPiv5Rzdbq4W7BHuw0zoTnf6AfW0wwVq1N2t8/XzrTUvwv5c7KLtjfZmI0oI5zr7WTewjsjIHxse+lfu5XcLn8XXA7zwQ97wFCKBcIVxbnVjQhM9Tdy4nwkAzpG+9zHAKhqvPwgvq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pEPVn/AIzO+ff75aH25PowXe5r3SCdxsKXsQHeRk+sE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "G3P0c1VmQO0VW1Mn5JTcOZz0kslpvHotrCDJJymELzfIRE/xM5eDmvNyFUNUynB5bzWH0d/+nI/xwqq63d0OSF8YuK721Diw9GkiCOBQed88dUD9ikK75iu6ns/ZAXLw0TwcZswogCeU6Z2UAy2WLEE/LtO6UXNt19YNpQRGIsNoemCzKTM2oqTjZcODUSEMLxcNqE11MqNmGwqmCQ+w41DDL6tZFM5KhuZt2H4BI6eu0qzkAv9WZVpqNHc4TR/uCeMbzjV2PcXS98S3dCXY0p9BbPP2aQj1Vz40W1MfJDciYvut/Yim1jTs1HLfdhhvatniabg3/9Ugu6nvY+S0WrnKk5OuF0bAxJg7DQfrfFPC0nCf/2dPrzqNlRWGUimuCw2SeJGy8YlJvyrpC4Gw+rFIF1YkXii1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pGHm+xxJVCEg+zy9Q8o9kROx49v6rFzFy98pDZ/XcGA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dQtNhjGPgQ2EcRUrKai2u93wo2Bc/TVHkSPFD36OSdAqv6Iysdy+rDi/t2fxPjp9+swO1CgC3vlfK+9ItmGfq8XZ2vv4eIDZeF1k8fAkVpVWoxvse+KS6Kk5ygmkXRvanFsJSJbyRcz7feXfgQ5Vl7W9Iyl4iXZCi7Y+ED+nAxOktlXrtLAVA/tOK6U8XK9evDaF7ZCEycDLhZKhe2dIgkf/1Y6EB8v2RBxmRW2+13odbHW+Us06as6OvFsMSW2EhoUPVtpAiLfwmSvSYpKprHsxPV+0f0bkoXs7Hm6tNeAjcKrjoCSAldd107K0U1bwdCgPCvy2iIHScG/W/k1cqCOvzqcdtI7J+aZ4gzoEEN8maYfClM2chql90zVKVOu1HLOiRcLY8+QjqEMEik6cXHFPi3LTsJVz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pGWLptgcitvGwUyn1Gd05/qnOFNYGS0XGmW2/5Y/XHs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CkBWsfVgxiyu/F/Ra74L1nsOd8UThsJjW4/dO/Rr5iPgPMjXQt0Mvcdrl/XsPVX+x4MLJVLacSp1DppCaO6AfemgnhxiY7NRO0a1eIySCcgGuqesPqAQlMjlApAI6YAz+kMRxAQK5LmjQ0p2uSv/VBzKIHDGd6hUMaFuqwbSHjBuFD2bVhQjQAxqfl5MhM2Ds8LPVU7boss8HcN8GbJ//cut8/bE8kjp5EMwp4Rso2u+OpQIIRmuq3FSK84+zgTKbqj0kivo+kLW9fXVu7RoPFe6qWgxWig7mtcSVVDWBgYbuJIFJevKeVMtEEfLM1Rr9mieXFjtCVUmFBN08bcttNzyLWgAgTqiB9ePT3lvIif0YpJyOiomud2NIsLVvA5P6KA12eX813S2E35jZRK2FdTb4cT5/nrw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pGvOgmu0NByAKhBNwwOE6qcgzB7Njbp57AXJGSlCiOQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CXOfoXP82qH7ZG+e4UVarHrXQcAufHaV+1ZXelN1qelQXt+34kWG3fwTelhBKeYebvIAQKBZiTi1Oh1LNWDQljMCmFZ2LniGy/OGJzl3WWVY11a+KQakC+RpWS0Igz+Y9pFALa9NXMFP2Uiw2aAe7ERopW5qavzumofW/AoMS9+vrQwaXzdQVIgyBUmwuRwBm833RyAGZKdk3ze2BqyJVHQpd5Tm9oZLgeCGhLPIZgrKx3TmB7ziWmyc8OaT6Cjv1KR6OA9dpLbw+q8ZI8SuD2UBdV+/OOLH4IFi09U8rhxQftMjg6dmUoVoSYbAq70QhF8XO29Mi+CSLWc6vNEvdtsWs7zd8kogVpB3jm8oJJlWrRIvO+xwKBj1gDjzcVDUCegCStR2c7eAzNsiSJFgL8yQEFHiaD9f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pHbfPKfs5wYUZcLV+K5HNGRxQ0JF8G+1Y650bzRe6DE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xkK8RqbD6V9CkfEetE06oct8N/Fb7TMYefv+0wAwUqG7lkyYgW8pAbyzK1XVjw8Z3EQn7MRAghHLCbkI4vodhPZ9PbxNiKpoZZKCNPUVgyqLn0b9tH+VSZR9SeECOMz1hcwhr/P4GLt4iiCAUr+M7+qiLgM4xxvMLUSxFKVoj0rfPu5ix3HdKaQnwrJ5MaFCcHDewkhL+UIo9luf21V4TqjD/m5oILUCtaT6W0ypenPaqwhdkjA4l+dI5Vdlsy/rEuEP5B82qrLl3I5+NJQc5LSgOGLgmVta2KvjkHr2qDIa0aCs3KelwiBF87uJG5pGpuGa/nf8C/hobFLzyDedSFtEiHNvnEcyYxXDeLyJQRiOYQC9XKBuCkQe+HvR905wWCVXoKd6hXwrFsK+eGDS3ry0jJ/yYyxC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pHdABbYYwAo/zyUZNSpVWeYt81uw0U5aD6Uc3eFXmzA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gX3T/TB7rZtI93xjASG0YBhmYDdsAMbrdkzPwdF76in5e9pUk4SB9jGLlIp9wacVcv9zSjiMEvKDvJXj2HjqluNvvBv/Gpodt+Xz8W8la9sd5UcjG0EiQfm48VgHULWZu/IbzAwk+IEEUtoxHI+YKi3M/Uxi+2tEh4RFeFVSPi+UBczwE9pRxGrOnHRMF4eOkBNZCzElXDKnI+evkBMqUzYN/ZBdtF0AY+C2lnARKrBWN0Br0jq4c1X0aSEEhFlNXwAcaajag5Ey/JpdwoxiGM8EEcPGHkZ3cnTlhjci1YBKhpiEEnDCK2eUCcBswEe7qLyMnMxwSeJJUhp/yP0TVyVRFze1rG2QqVt0GN2NTWobZTApa1CN6fpCliIkmP3QjMx0cZfuF/hkem4/xKiwCRsBfdMlzoB1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pHpHqXCw6ik3fUL2aBQlnUQCPM2lDrndniFG3KqG8u4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Cs2ZpI2xU3FrHIgJTQr1Zg0DW2p4+zc1SmW17Xw3RSYuyP6ruxPcQ7juazjUyGlzJ2BYECiQYUtMSzdeCrpCZQUQvUGe3g1TmR5wIXAwtZZRcUQAdk0lkn/syb/UohRhe96hT3e11m+yCn/i0zmazcTQrU+oJ0SWHKf2QXoaIAYvR38yVGwvNvj6jMg77zonkwsLS0Z1jc+MeiZF3Pa/+ZTp7mQXWmq1980ceBqrMHyN+UKTo1eih/Gjm5Cz+cmNkhkp2biF2N6jMf/eR/jRN/Fj09A2VNgxCoOXL37FuyyZ3+L4IRRhvEvMhgIQEbeEOqp2Svc1z7bgTTdW0m3WtFaPd4UiQMVlpDYeQsSm6bW1Q4NlIsi9+xA9zNEbt6FKEwGz90/xTImZ0aVjJ38KilvV4/mwFKXx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pIlp9PhMpuMtQ3yGsJvUYazxbRo1nv0kkkWwvXgNI/k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZKXKWs/+bpRHkYGtXARUMCWqTt86vxXMcrwMiDFMJ5nIR0TS+dv1NqVAVl+MXLKhaqPPeBLztphaJTVdCNgoTp/LsH42QXLIQUshRzMFVDWZEzVwgAtC93eojL+8xmWpUimCK62FLmyxW3+ShkTNAjBqMi1RfGSu7eoSF6daoMpO8ZhbHthQf94evMuvnGIOepok4MGnK4QaRKteV/E1qVCfhAou35T/AbCXIt+Q4LlOJYF/lHCGDsU9FlI7yyLVueUcCMMFpXQFdwh/cbSVUdT9m7dwlt+jbjajAI8zQ6DOKHWUHCpbgY9g2IMNpekC+4tdiQMvYiTvLAbEunIYCQVButHCo8q781CaDNGZw0Ubmi4EGkYYPYtQNst+l++sUTLo6vNyRLfz2pOvCO//r03cRycM4MJf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pJAlCZYA6kl/3/nTJ+87muZkl/bxSRiVO6BQTWetje8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r9K7YkOL/RLP7VHxOAqgIMjclBZGDZKJ2BgOl/nIkTZPPhGkEjoiNfsNyDU3yq0DokWnz3CbVteoogJwHUkJKYV2EEE2J89LivkOjhGBjy0H7wc5GWhb/8gCyguDv+WQzRlO8T2ysDRUVxww87B42MY9XIFtAkfUFnmcNF1zC/UoA0GDmBzfc6Yd32z8bns0/47W1PdOz1ikZ+yd7FPiY9Mnrx+fecoIM6CLA34SYYPP5l5nnP7Gvo787PsyjsjBcWsT8vq+jm+8obW7s0ywbs3PadHaWOvOXkSR7qbahgYPZy3ObRsXn8b/epd6YS9viGL6s5BCuY9Q8f19vsQuCXtWklm6aXxL51RINT/Wk1MyMSYtVkQJJDtNj4UEy2EYzI+qit45wK9GRFWtaKSnxrddHrvi8BkF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pJOmb0sdQp2XRlY6uv/KA3DgBHpqN4kjYxIyYhI3XPQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/QdNqiHp2iok9d1HwvxjCIxn0SsKH0mf8x7pxhdo2BKFhon0xVAEoff9MAxn37l7r2aPdPIl7xNYZFj5S1ZqPo+j1bnXqW9PbSMJKHNDpYJfm3+GVSrseYQrKmwP8jTDpl/bM//xdKRCgiffnxfn6EzcLMctR/9hVz7W6FFFbvbrmTJTiVrwoXVE4faJGkKy2orO5TPTnS84LhbT57oFW0eODNXC4Hn8ychx1PBhg4JC5/wlGsxDFdwaXmudnrUAPnIRBfMvRKQdSFap87UeXr2Wc0OIh36LA+p4DPlZzlcU3WxXAc+vRsN6FvYtXFcTV4RFl//qSBn1CqTSN4olM+SZEQEyoLHNCEu/Fi+942/pyffla3ovwpvJ4f3JNVcfjjnDg4OXrx3ddM+feSHvlkFED/XeIwTn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pJoigZn5TCYQ0iWCPHYlrWaJInM9hZNr1NDd5CDv/Z8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LslRRT/4HPGgG+XX28TbDV9ApVQtUUyI8DvFZNqKW5QH/Ddm9NAZtIrpYQtaJwe8gTUTUv7Fuo3kgLMaypr0BpvC3J2bJYARvrCN9rI+KhvyGB2QNjB8txH3OFnHED9s2rAkULjJWFQTK1V/DmFNgq7pMlUxgwC0GRG0p3Ra+LL1PvoEeeMN9Ws+pl7hegv7kL4XG7kmLoDQqAPkIaiORL/gYS4WQO7LcrDlmphdEBoMfeHkASdk05Sg+i/0ebvIj+TB24xIKV51ymB1fYOEEz/9C6uvv1qhQkraLcksvHqVBPqxIz6hJB6IMVSIf99hMmp7/RrfTfI8TK9Hr8eVkah2F44c36z0IZ5LmlPs3jwog/r42gCyPVcBseeb/eqDsdttxXOxEPRauVgw/N2OQzoET/JAWwIR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pJsJaIVsOvzYOCjHAf9esiIOLuF4YtQd6OpV2KtKXNo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yvMQa4ZDKfA4fa92vMfI5TGC9qcTKoUKOi3mrE4GZmupymjHIegjjsxVfaT+EuKt9za39OMSK+o9Oy1+JEl/eIR06DEh6MBMHzNWl4qA1FaK4jjGTepZNw5BmNXUq4yGhbLiXeZI1E9WZQFWH5DoM+qjPb/AeY1sLqm2MYVMeg4TIBb4nNQlps81aCsB5LSQx52qojujDwGzKy2p5vCKgXm/4GS1XV2ENKxUh4/2QHH3mQ2zj6LBKsa98lwpj9mABXU2gbeEA/Jj1AZnS6/HAC+W51d7j2Cv7YLGXIqEfFj6yhfEAq1s4FbNd5++7Q2J7SbRnBCGZldK+wfr3qBt9xz6v1Y3Dj+LdhtVG4NcmCfCJ10Eu9pIpztUKrg7dWzcWaqCkg9YEysUL7tpm/GQVlkvZpHGpNk8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pJsfklPnU5DSHzy4AK7znIeEawobSlE/tGRw1Yr7MmQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5cBxbvXlhsbtkCU4UXW/LH7MekS6pN7+JwrfTFePcTMeEKcpdwmNRFfI+EBHzvBx7YfQjC08Law3r2QIbrVkw/QLDRn54qwC5aTXtaxadY9ZTnNqk3e2t+tx41wORBT/tHsbNSnXejB3c2Cfr2lCLZG5w7XOGgvVhzWzkCQW+ftVYad1lveDi8jfEKJM4mN9NjCJkQaJBbJ6xCpWwt3NhAFvRFr1b3kEtXvH0KMfXoMyW/nXF4lRe1ydMcDJtlRwUYoO8EIFOeixWDXMbbqW7EY8zWs5EFbvINQhVVYA7cr89d7rhv9VVIk0pWZdXgmPC83mEO0buYsMbyBG/Ve0QlOKojdA8UpIeIqnCcLpoXqgo37kG1qqpTBix8t63aJpxF6BIwzmMNJKg60lqtPTYaqtwT0WhCUc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pKJiisomOLRFkZiENrjLUmwE4xxAX1Aedraj4h6wWGA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P5fboJcXLdlYiR65vMv6JyXJxEOBYyz8MveAtTI4ak5hicO9qdpfTzEB0wlMnlhNXiSiiC4N8moVltdYvzfOXz3aTJ4Hy0kJ8lCvWwyfVR9MdG7reUjnzT+W3lJphf+GTVoRUQ2I38I8AkQIzJewD7dbZWjYyiTgylhdOCtdWCJNZh4WM9ou5Q8u8Hugk62BsXmF7QnAcO9aqGNJMt82zZfMtNCWnhRx4smjfg7jCxpZpLnbxGYawM4U2BLn/D6JLT3/TkApyeXmBXbgno0WAMHGS7SAxzIKJeGlTbpqqhsSMmNqfsTbBSQnyn/nfxvv5V2n3gH++zoUZnjDvb9mOvfpiIxgR7CLt6DG1bedpSY7N9zrAt2Xk9MNUGk7PNKIEEuZmpVsQoJFbIKQMQidvUEIoY5rmpd2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pKvWUtD5i+sY1m6GQfeSd0m7AYsEasrSnHshvyFawr4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+h5KYg75DxxbwwY/gAPWkGe/Q9FBmbL1C5hmclQ/ZyDkBnyAMp8nC7ao3ytoAIIjwOoEt6HrCK8oSwHbCE2wor1y2nfUaNU+UeU9x//h7WcJIYIK980BR5VGJ+GGtv+vSnk8BNsKi9qVoSFCbHLgvgW9hg/Q9+xxam/t9Zx+njBp7AkKQ1s8wIRLK/n/cA863hy3QdeHgJWX9KfQf05RUC+TMOxP0VDh838xiIi6LUPLldJeSo+s1hj+gp1ZXAhoHhWOjWl3TLJzl6SzuVk49P2TPgieCdfCx7lxBfp4PeJJRpj/R0p2EgNk3ZW7eXYJKCRVlTF+4KXfMWWsP9psbI9+dklR9q9eYl91rSUCVe+pN4rhOx332HxPboUmKSLimWoUNkCrcfvb9IDJxr2W+LioQuudl8oy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pMdkcE86a9uSAqNAjkT1i/W3kOSuhsLcdJGzaYg16WI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pCPCVQ0arZqhPyMP6oifw81echAJsByrQWtiSy042b1uT7p6H+UYneKuY6PZNFMpuKbY4JrzcQEOyOGLmO9gpU6gEiEnC1oHqQYs4FhnvvomVtVCtIcoPHyMf/Cr9roja4Vnp/l/zeXXV2agbEKZrxTt9jeoV67Q0shWNemKhp9Tr2Sm8F+Jnq4XfQViwN01uKuPMk3d2yvspsyEimOwKNzUTtGmnbLdxSWS6+f7UqSssaONXEKuq7wNeKLlXPfc12V2nQZyf+TOWskc44usP9MXERQ8tGqK1YR/B6ShRTMzbbQpYY3mmCSc8iuyC5MZXZmjTwTyWs8qX+0S3p0hiY+Cr0uQ+U/8hbItRPbwQuW6Wn7nZiOXUicoOJ5tea25tbeYL3Z7s6zCsuYq9/9jupLX2Oc+OtYO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pMuM5SKWBWwBTC4aqBWvawLJvXp2JkvY3cAwj+NjZd8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RvjdgYhKSwT50RqztvKAdatrZqfVBDt3Pvv2Xp/XjY3sMf/w2yo4z3wXi3rVUAEZ/5Kw26YuDvPKQIoFlHb1usU+wUOPiOaqdEFszuuT/Ay/0uggWMhVMx3QVPt4FeSWaAL5dW2JITXRk+EeCydcIaER+cob/sGsiYiQMnt+3OoWIsxuS9laN1lMXNfMLMqVAzYmaHBYKu3oaeOtkmVhLdLEN8ZdKExoIA0QphaT+27IFyk4S2rsAxb/QYMlXey35YWnP8OmCNs0VivcjoQkO1rGeBN9MQU5obStr/Fhi+y+mXBExEyVDOXJvJ3gW8z9ReAtbzOOZ1rY8sP1rAtEhuCWZYQ/yogZ1AVWothyZKFvsX8Y3J5gON95x4YaVrYE5iCiIw3jm1S2RUyOL268++rIn79V9bMf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pNnwN4Eu3VvOxs0ukngJTxUPIdrhdB1Id+BUgRMwiVQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hXTSrqcxaW2V9glZLiPWyZY1zS4oubherJ+1OvuZFE1dLu+qOiNpG1QhRjSorxUEbUKC3IBAgg47X9+oiEWKqKWKKJLXCWCPvrjmO1XIu5l6Jg63NklOfpkOujifoAv/q9n3Ip8dbhGqVQwHxs68ToGDbDmlBBGugzP4HsyAL+o8jOiFmjYZq87KcDoGTKRarCAbACA7SbWjfFF+5Fplt6Pi4LgIdyh89++HT2Tdc8KnFxUNVJpqs94+6NIugrwEqw/T3XrrjwD0jHPLSKKiOiBIHXrSapi6kxS7UWhitCM308y4ISs0NnrCnQ7/rjzth+QIrwVSMcFroqbACB19tlcdRxGki2hakH4AJNPrm0eokuhAD5Wy+5GPpsImv+VpFskB+kD7TwUhSz0E7lAvM7Ka5OgMIUo2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pPDF0vM4vIO9SI4uong91vygoOBAKqvszp275QPd38k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uVXeMXo8deUxsAjvTBnUH/F0toLkxIPoHR6/iX5ICkd8am+6ZT49sgkckljzCxAAVK+NIFl5w4guc/RaLgtxHJe30UIzyavM+gTu5pG+PBSs2lzYNFfY2hOxPuiGCtC952F0O+th60E3YTCbeE+NkC3o/CgZTQzuTU6/PqQHkxA0n+Wg/eduFuBWdOn7rccHJmfevJezmiBxl6/VmGbTTPMg7usxaVGsA7HKkEBbMZiWo5ydGCsmoA7pHhywcWJvAKhqvnVO/EduAjQwcT3Sb/1kBqRFHmSqFADNmuwrRZHrLP6pxflSGJ9rqJV3a+haXmo4i6crL7xhLOMlcJ4BoZ5HEpVkVUDGT+kzK4BV8S8DNb6bpoT+w1GLySkiGRLUsZmz0b2hCj2CtfExyLfRKwe7v3OuYZAw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pPjZ5Bwhm1AXd807+8I5cDYm+t/m8djJq3vmA0hE9Tg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w8nJLsOtmT+H1KetZgT4SaFjjZuYzgL5xabQxrLv+0whi98jTfYtCUXAl6HaQHsTyvobIl7cyFXFe0ZcejLzCdJGvBZ+O567l3opAt/QyP6MxSXq8dRFl4mfYPUb+7Q8qieipK2VWeMvmdlhd9a3MyRA4tQQmOvPKRYRf28rKeOpy96qwmQMgDba4SYNekpD41BriPsgdKWjqhQTiQtrh4s8vtJ+17+G5iOJns9mIF6ppS/9rHkcTDomr5PxFSkzNX1FOPxaOuHVc05btXgc3Bl20DSTo4yMJlNZXfmbe+b6RP+4mBfatV/v1Soz3L5p+xpNCcV5ETZth8Dr24qezgeJNqFYdZ72L4gB9Szv3T315uEpeSeKdGsjWbqNIRELwUKwOBlHmzsOAr0oSLwSriCZ3puL4qb8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pRa7xc9+lP9yOeUTMQ+JHoJ+aHTGYvveOl2kJ6L3ruE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f8WD25DhCSLJQya24ZcQr0Qi1hPUvnRdhZtke4alW5QmvBAjTxTmyU3OvbJb8XKcBel83XQOruSC5OXJqHpx2z+fyt5VvYcL3N3thCtLmdFpKLjhuumQvqji64IhT4R/A6fNVG+PEbwuPgGnXb4TBw+9ZkZUhVhNeczcoR6orYBOJKnXMPTVV6Q8dAPKrTEIh2vaCBj+ZifUXE7siiIzkIVMyucSMxnDkKAYK0YhnvmGRg71RXO5GeT1ZlAOyHamSc+iBFVWuM3hjpVtm26yfwpaC991C0djpW5UPX6sWyV4izfFqpYGZwO/SXSdII69dtrB8MhhPnby4wJ9ywK3vx0DWWckOBEtPOZRyG/fVfE46vOfb4J2+vRfVt+MC9bAEoMp3yWQBnmTtgruXqwkXkkNgCSiwSqd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pSePlhJQPd+QNh2T3/GQXY4H9zmlJZ3QK7nAv11cMWY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e3BqWdgbfU3ACflFkKyP8Q2jqvkqMQPe2zatJdBznvm+66PcbMbNJHvyIWiY3+Zr0tgMWYtOTb80OKdxP3BY9J3yvnhzOB/28GU8c7vxOb/5voj4CelshQgM5vsUds/P5XiAmcHiGgFl2Q9xXu9iJYoIrY/dR9t9+4PCIC8yxyCVkqPxKIvSbl12//Wp9O6+Rdl5377ND4EdikiBkWQMIVIDMw3RITnnQyExoWZPhluAks/QlxoOlLLap9uA7X0yx/I2tPViVLeO+ixpb7uofoOTPohgLJWWexCOxcmuN+7x4K6J6ZFpa1d5ywKx706dlw32N7j9TG4N3fFjrPKentngBDSJAzdPQyDGkJHU9zAorzsyJfGov399I4gHgXADXU9Vp13VsxlBK4ZD1KhoWCOuGqFQbhfv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pT/2rHE9b9GD9bKCHT6DYZsFre8KVlZcvKil0FUHgL8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E+NhgvVQ6lhC9j2ymgWP/RWEc+GObIZzU+5kUqPvJyvpGbQblEJKviN8hE/22d6fKPQRzoGdMFPYGR5eTShvWq88+2v/GOr8Se6bBOCwjeBBN+4aE9ZAr4MGDcWw9rzQ4flwDhEYC12+jfL8Jp97gBIsVJzJ/XqmguRThjEnCTYBucL+3A2D3PU3xoE6RmYQE7ozpIWK7eoS/pkvLld9b1+LGab/oIz0rNaTHGYrcM2o+aaOYOpzTkuy7CQWlcxrG2z6QBorLKo5W741h+OmujGWzixBOxkdhm0ZNtZxWnKFIsMOcPnQk+YgwRZN+7HteYVdeLWjDvFioka9OvD4+r6tX7LQvkcdp3VBbem6e6qZXRDoUYkmWChOxpPsGxKnWzmvlL3lAxfSeAYeA/dHumDJtr+MbHPg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pTejh1DC4RUIbG0LSKb1Zjb6wohES7s9j32ul/GCsms", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vqzP8BtgzXNrjQHkfIiiDP0J/AX1ZBJxbCDsabuBRoqu1+CuMY2/75iYiheHBhTQEQvtW35Clba9OCFMpmq6kocGCFD1as0+kKa0LqbeHzc+Ip+Kn3KLrcy2IC8JYL4WiiWluFCMtQcNLTuUytAMVQWUM9E2aQsKD2QPZNe4I+mdk2lPMxY+NkzvUFwEOFYvqgYNZ+cRsHqOB/dmaCqMvJbEeoD73wX4T+sKErvY4+03RWLyFFhtV6n+Nltg25TylvxJvI0whOJsSVicQk6CbkNRGL4/BwVccaX+/dmKsKVNrcspuwROItKYtDfCTZrHB3/nczaSR59DzH7Dg1QxKqVm4mOtwn6juRVsF7+u3TTOU6kZwbpD47pWDC/lgU7cE5+fo8XKKTUMhLbQcPpfnmpCDIfHiX/I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pTxx13P0itNyGJ5PnrxmqHqgWn5rH9EVsiMEKzracjA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/b4TEE3+hgE63B19fAF9XVTz8WcfhYtqidd4CLkQ6cSzWfFeWVVeoovRm3MA/4kuKyTacWVOdbHP3mCY1o9NX1fug+PGzIv4FN8RkToH+SOGh+gZr/p8aA9Y4GL0o9Fyg7RTXP/qU+kIqOtH/5xJZKLCtjpxNUacizjQLH/PbNKeRtjWvnkLK1BScazy4c6bNsFUuFdHqdwZVXVU7Jsp3QezmVyhAViAWaAjCMTxm44CVcyGNlYSUpug98Jyo3n2UUcw8X4c3gk2HrG/kiU+jipGJyK10VVOLFKATW1HQdD57u1xA+yUek3KIyCvWXVFQt1f0byjwXrtoHgdZ6DQ38uPRne5updYZX/P+MiDETQNgIw8TaKUNIHU9mWma5Y5TQMW3otvxXN269xAwhJITI8HdQcQ+ibf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pUJRPB3zwTBupCtVv7KSkk89jNZ582PjI5v87F4zpWY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "txSLJcK9/NmIzN9ykQ9SpC6L3tmohRlc7rVTkMQZ75DfQNC3El9YpJagCTlQ0Ao3ng8AikgAfxwCok4FnV5DlphYps160rANzBl7PW+q42EavyMK5k/HQI4em1WIDgHxj4JAUdqd054p7i9NtGDCY0IO0kJ8CMVMhdvO+4epOnzs6C2790G5wJW3baNgs24hFrH4BP69GXVOkMeaXIKo9d8Y3Kt8oywH2Gd0lDYu3M7fFiDnCV4c3fHkajRzphD0UXDerxQNz78DLNjjp3PzkBK96fI1k3w2so6sgwEJ9uG59W78ra+0ZvnzoHON2N3lScgyBEXigrx2WV/NrKRiywa00xpi7bD0+BF2hBYUu1i1NeaEDCEa3zl2ODbywrWMjcVpBC8GBZazV2lZZSWHQS7DMj1+6u9a", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pUcgYx/uInIHhn2uToLMBdIILEwi0mDe4aCIdEaCQCw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KPWbYSo1zhyvCL6X7sMj1JXYnf9mmdG0o24jSGQzMBxQypBHUE3yfjvX26TM/GhrFqXfyTNWHE1Jkxzqjg9BQmCkeTL06sPx06ihlOdTTVqSr6XglAy5EkcBSowWKHBzeq7DVtL/1+HlJ9xde5GrDCNgKdoXP8ppQl3g/PQQGphwijRg3gVkfu4A7zxdJ5B6zxlnOcuZ5CxO2R37hjXjOzbO+ZRg9+VxSAzZJCsnmI++MwvUV73CnDW+5sdLxgaJPiswy7JJPbaq3x51yXpT/1OsZJKHqExfNrkMDMMfuwJMeDghM6c2TX+B8ID1PzZ/6vPQJIVK+p7/sg2V2hgd0xce2YRBKktuN5D9RGramHOuKzkOixn1eyjjKeYjm8dBIYrDF1UBpyz3eFrqGqV1iXq2lSxs5b0q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pWrL8CozUHj5kA/9BTtqiAY7n/XXLI9ZPEJO6Q+OhBo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wQxGPb0T0seg0czlWCLhu4jMXjJVqczfpkoGbVQEQ3abf7e0nCOMaQEPcbVXDJBIh7KMd5919QacXVK+Ct0kpUaRmxj6PphE+24VfELPt1vaf0rEITnIBSzFA6qbS4wl+KIHnKdJrSSIN9TDzIwsa+d0Y0/fiOiY5frj+rKUwJcoDhITinqaw5mPpBIABQ2PuWB9SoYBCWesC1BYI45je/udgm2ebHCzHW0LSydmQXRIEReQdN4ib7LvRLuWI/S15WU5U8p2MACBWVSPh91UwyiqJDLbxslKGQL6yfOIrqaIQQoGyvi4WOndIVRkY5pwwP9yuIRLVZupLWISa9JWbPUTTbXYjwbqycp8ctgzdZVEMITz1v+aWQt3Fekc/sqd/aJ8HP3h4p/pzX2O9gFF7+nUCb947bMy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pXaOUieTFXHR1uqzANX1dok4TEHreUJTOQDSLlB3xV0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/2f0aZoXyiOR/Y1L16ZY3BDKbH9ZZS3aGhf6y3+Dbstg8C66ZCK2lSmH4ERFDUdQ6jfJ5SKRm2JFLxKX9Lik/YDGYqJaZIC4anEPY/pXS0FITKhxs6LqyhVfgWRQ1mGFRJshBIRw3TLv8+CQ7XeObkUoVW+yLYJSJqzVkXkvWnY3gNYPsAIuM5h3L2tDZ5lBeF1+70EeYzXhybbe5UAGxkqRL++b81MCQsIkI4XaEqfiCn53Aae+s6pinSMSZBuVTGQO2agBNdyRHer13sJhgrI247lrajZ0WiJfTK/r5s2qdWMyX8eiURW0RaEEI6QkzXQYo4RfHP+o1oIGI/nPch7pde0UC3HGhN0o5ryh5nDaGTU/1YG/spokCaM1jOPV7jWC6bEEWyY5aEz1wMLTA91eKjob6SbR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pcAz7r+5e0lNX3xKHprYTZtyNUFJ60aGqA+80Uv7ch0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7dkyV7bxjES0/NligX2MK/XrZF3jggdTU0pbt3+jupeXGMmiz+yMQqhUcQx6H8fCwISPnGXgA5h+X3eTt3ay/HS/sg3QSFVvFR3JMDepUXv5/N49knK545AobmM2MDXLyzHVqtCrw6yF4NvL3+ge+MZfXO23j+LfACPQYILQxnXr6eO94zFcBr5sVRBp3Hy8ycAcz69qDajl9V6coNX8aXm3SOCu7wZtZU6PKHH77s/nbaEDaSX8NOQzu15slWuIO2Vtetx/9DhY9iAwxs9l5tudhAL3CAX+1YoDKSv6IyfWmA9P8cGGCl+F/G8F0evbz91OkpA2SspSxB7PU2SsvFfy0pFNmeSQH12cDrzip5W4Grug3dZd2gPxEs+NjErPXDi4ECdmGTNyByUycyrwfL2SMaNj0paC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pcYhsPtewxjH6gAGDCksJiUrRn34xTGiaWUmzMJWn2Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Rf+E+022ydLVFvPvkrAgCXUXHSky2BLEg0DkaWdaskC6rTF48PGvsNGyA4+TRzRXVmFQnTRJVL5neguH89/LWu9YHb1b6PEQXttonUIkS7CajvSmX44Qhls9kKDDt12ZyRtJDZnteAHzV8z6BSzVN/ooDU+3C0P+rselUGYnq6SJ94c6n8bgothl2fIyweo1UG8xI0pxgUtdhCm7OTYuo4nv/UyQG6QE1FpCKL3NelwlQfF0bSFhnRZNcpsnq/lDin7QgtDjM2DPd17J6XTjgPrub4hA5fGkSlDqdrIUzNi2fuwAOMMc8J3Aja6FlYkg6jG2Ns79m/ZlYw/ngwQSgTKVrJGOd9ux7FZTrQniuvE4LsukhbrqmOm3eEeaZmqDr5zDuHPRb0V/kDxdOBTsfF0DPV4T/6bG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pdXzw0oXXak1nPDnv9DHrUP0VSsydTGJcnVahJLcrbc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OO3Xv8yJJSo3/kEuIDaFrn+uGYx7pRy4ztJySNfk8ltFmwImCrjuhRLVVACbClYBwgQaOZl4pcOclB1SP1Myl49eDphUXodVvKuKrQuZe5kgOv1WbEvR2jRp9SthmajWdwobDlr8e3oDjzcV79Dv3+eUljcCDkc5o4Nq4P684LTDntOkl8vh40ftnsdPvqDcavX6dQ39IkrtyZzfp1IVaawSn3zAFEH7zbb0os9qt5wFsehsGVnSfIGGjOOLmuz6zqPIDFNWEf9btiT22nGIxR8krehuu5uSOZPWLZXQZlHL86C0uUbsLpf0PB7dloHG4VgNmptNeNOh6FItKOb1F1koyDIZzs8wlKpx8+QJtT6HWXVWaok0K8wkdof0I8eifKOdwmRRLNg1sgu8chU6YdHxW3YavdWq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pfU/tld14BDdZrimXgFq0GxW/o88PfVhTZN/kbz1KUM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2bzW3LuNJ0zEhREEOi6+9m2OioqwMqssTWk9ppc5ThRCWt14SofiX62vuG5GrEZJOlQ6kyrn+2Zb3Oj7cqvbhok7ivtkt/eq2qUAv87PMbLJjdU6jgcEttyHEf2+rTJYI/+YenCYJNTAbzymDEfoYSRcfWgBftQjdZOSKjgXBkDug7XrOBFJqW2KArhRtS58aU8Ggkda4Y5uRZGV1GjKpm6Z+hpt9FW9GFI53Q6oFI29k6lwcpoiSGzvRQHrNXraq/S1Bx6hO5X32XVgOn4AeAfKabW51WWMhBIpeKC1+RrlLRPvpegUPAH2Wv4+4WusTXzXnksAbRcfxXBSQHLBUszM9/57NIN/YBre0E2aG9XQwwmfYa+v4/OCpfcY5hXvnACERwUQYghB5zjVJEz3LbJ0On0CzWH/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pg53jvMO1QQLl2sfMPhDfxLZXZn2t91C+qtdASJfbVc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ywb20T/vfWjykRo0/D1DbDMywqORU5prh94muwZHJYBuqZ0yrD1klPzV1PAkaMWrQ0JXPZv/9nhz+JVJssZnirf3gbL/jzrt98B6WiaE0q1uav19HrmZZidM2D9UGpPiC1RhCy/YhUNax3CVwKEVK4htXQJGH8IiEuZ20QC6ZTJ1PnxeGR3b3Vk6zzvqL9n8vPMy8rFYxi3TuNbblf5LwgRFJhc86kRibDJSz05F1utclxEIOnubu/+7XVu/EmuV9C3K6bOUaD/I52VrIzX9fqPnAmXj7LfVT99XDmm1BoXNTCsY1laxY39nfIJVkJwjDrdbj9OzP/ZDGfjK2DWNUN/P1aytFRixNcSYppzEhYuObfDUJ9eJZAYihNMlS41E/YpG4aCAJcRyCMtuyf6jvZuulYQOJ5JY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pgVTEyooRsGBp0of3Hfu5mG4huMCh3jent7/RNvsFvc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vG8dHcGeAEm2iCz+YoLy1xO8CO7YuP/psA11cMUDhcJs6yzNmnNyxzn2bv/hPsMW41f4nfNxtT8+Q2F9PV2hzOTICCcQspx9f/RgGWnsqEBFz38MD4+PufIlBOswhm8zydb/rB9CP22BVQdjKv2vSMR+v0pvvXcBCMK84jN2E2j98pxStHEB4ymdZ2xY2L/V1yH70KxhHoRMCL+BPSo1Al6HXVQHWxNkA0xTw0oBbuhESKP8jpzc75RaySmqZCqplsKb/NBWJugcWipnW1afJ8KvxrwS1SCZJtW2XiH6O+XieRt4rxfPFmyIYoxal+Q7jYsqhQAydOD84HRGwV2xKXVHs9iBLLJRTPK0uof5Ymd7wyQLJIFkExg8j8wdzpqbMuC/CW4KjDGOxVyCK1GEek2XHcND865N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "phLNeQDy3dUJOufv4jgXnk3XKmtVlNRn9mojD7zaoS8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2kSoMA55TOzdSlINojXsSJnB32CUlrBb85gQQduAKThbpqRGbqjCCxzLTksqsiXVDjsO6B6VpUALl6cK1sobNz8cRhVQKBTrElDhxuIZgu3wyHeB8iSZQrJgMpnl9jSZvEvQ3/3NG/3PPOM/v8rCU495JPXXDxmrPiAaB4yKA3Drv0xu7iotDfpdokTKiLF2bIAtuzfDprxfba+KADnIEDmf9YWGXBZthDgSUsZoGQVLb725pPfBV4o7cuYp/uUQdxjfZwyuNDrrFnULm5q35NgvzCR+IXThpY9ITTEhf2BamDjL6yTvvzIWKoN1+Q+LTAerJHfDZZeXTsJhIVl39ApbRY3n30A943PJcYxdE6NmClMV1lfA2f8/guFcVUHNqdvEdMsYRv1ee1fsM6IsBXEBxLrEghM8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "piim+lH44XY/VuGjO0RmAE34ripWvGjfkRB5MhDMPsk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mQrspLzKv3EcbfP5asqDf9sWw45OTge0BQGTLr3CZmHUOK/asUsO5JIi0pnKb0aUDLHPKwBkHh0SitfZiK+K+NJPTCTyiwd0v0r4Jcrgl+w+q1lrWOaSnplfFUkiDaTP2pIj7NfnLCOKNuSv0Vgp017iCVWDIZsmAa+ehDLKKX4qm3R5NnnTHymTemle7PsY+2ky0ltE0ZaMmn0QihaWuCINoCTQN/JiBoIN/Mc0bF2EwyB6Uu5gTAwi132tv56X6SXJxHj/2/eoPEGPP0fH0GAFiwAbELP8RvJjYoL8LfsaB0Xxj764u4OiQBhOuwZb7B4oIBhasGI/dYaXsGML47E2xcxDKEJAXVLTboyzitiIcp3/LJMbgRXs+0sU3wg3ZClFELBXi/GYYPpqHoM/s0Sp7jGhKWRq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pj1XycsbvXrRqHQVQUUWIu6J16057o68pVvrj/SO61Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7etBoM97o+2FaX7KR2c4NQG6GZaFu9gjwfzmvAWzZosfucBCEtxCiuJgcds3GUUpdluDKtoiyQ7JImXJCR74oVoV97QmJ0azWRPCKS2vOk5e3So/zBMm3Fa6/D+TKsWJATqcQtR9zJUFjF0xrTb1Ry6qD6cXGdRMlS6TQt3p+qVujJ3UIxXp5CGKDy91YxzEJcrDRRSVajtr6jiUlKNwbvof6nmJAXsDV0jMs5+onoRlBfYTtODZ5jsGN5s+2MLnjdgL25IkOoL6BkHvRatYZ3rNzIfLjSVKsYO2Kp9exBDV+44XddTbb5pV8URycBDBmlyxiwCprurexGgTkaXn6Q84K8WMmQYmjan9XinmOfdEf13vid96+BuoGIEqqqFQq6BpY9QkJb/mmaeZtd5y9pVuzfXyJ3Gk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pjq0ggJ65ThORxeQkvOLcFfZjeXO0saAYRS3gAEVwTM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QrwA3rtMg+9xxtlL+sT1DQu8l8pIWfz28p9A4AbJHpIwDF7LBjcA3oF+/Wk9nie/x/NUngUwtfn2lHcvG2IQ7vyKayIxEN3gLix3jS+XiyJxJnZcqnydPV+7naZCE7jxXiPhVbOw0TinqzAMwr/CHvTFa6RUm7hGNvcseKiCMJR5zUz62dZgqVmzPDh6twLDpW1iSs6ZNTY6FOt1UHRuPntyt7+dvEvc+8DgvIRhs6TVEPcCT/0qEgx7JGn88PQciy1Va5dQm3MkujSEd6LAKvyEQLfng3dVc8d5PjXwWpVmFUW0d1LUkvB9m+yskosTiTkMdbmufRzIJTOeI3yF6YY8VROtc/gvEnXdfbfnm/zdKAaqJsXRtSntc+32akuzeWwXCaXeKSxeGEGiRoGmaRE+dohxmZi+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pjxp85djNOxR00oeAqsVv5Ee1/b3ICbBx9L8hoCG7Dw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QRO62FQax05Q+uXTa0hUreIBdP2KmAJxe2FWKOpqmJxrRRZ4v2iR7EAjMIiwCiV+N4bBSF+F5kw4CBV4oBEuZLzh/6x7SfrnXEwg4ZD/TZ7T7WCZmF5IrA7LnI3FRyzkaTQaicJD9JGKRanV4fRzVSMa3/8mAgpWnrTX/9WtzX+g+33opSZ257XAmYtS0CTA+2sNqboLpQ675/G1fwGkM98E9IqacRs+qbrIPPcAdjyMEDD9M8eIvu0DFNZFwqLJfT4PI4KJ5/SmKpKJT3xujk2uRkn8t9FH0KZCpAg1umheWPQLs80ZwcbDJtYasWyHS/FpxWUB/KwdKlzAYeguPHtqLeiGyeRexs29NH84sYeMG0K/uRIQEWiSsedzCju3JElnyxpg/veO6D9D90BdeVpxhjzjNp03", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "plCsj8qGVM/mRZeWZCSArfJCwOfs2D7A7kUA/MF3iRE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q2HkRXzzykjVBDs15R2fP50M+iJOKEgJ/3/A5W0MQ2f1nwkhOdHLO3LY3eefqtC6sOVYkS7/GhwHPfxYKn1dRI8CGGFSOV6U8E3saJAuV5l2H/kCMOUb6BLKzwi25PzfvHXYclEhH17h3KcJ1xgUpAmNtew9HubXkFXxQYw70aLSb7FVAL+bSGjJegh9ihvZ6MCyhAjSn3OXfy8BCYk48OsRcjpTSQqi7xy4Dpq9I7GExO5yI7ZBXa9asfcKjrzC/9B/cP/aIX0xUWZc/CN3tNw3UoxkrIj6nncxhYaEdr+fOga2RFtO8QURdRkGRCNkCROk6/wJkWGZZwr93R8o64G2NeSiUJlWq7aDe+A5NNG38vLinVd0c/dIjFjkVdQBggq/rWtpSXbr7XHA/UgjiVNtjSa+aDR9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "plnoPCB2fqp8NTc7e6mWd7qL7DhOGdTM8aIQJUPUh/w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dqYPO9hWgUCtMGgi0ZKT8PNOnOkagCCL9ZAUgeIuaHcGpEBYpKyFiGpVsDWAjRHjEqpeTdfvst5H6YdbVFLbYgVncJ4p0R/q06bOZid1aKISIBL+cZdxT50UciQsmqEbsfwd+wxrpFINVjq3xUq1VC0eZMpyd5rk8+OJ6CqOXr3iYcTbCHB7cmCpkDodK6qPTNjpIYhvNSE2fgUBYPXy+7Omjc9IzHG8e5uqau3PW8/LkA+WrgSCcEPeLvQhDvQWVKhx4gVSM4G9aUpN1XvfTPNdYhU3Owoct1cBBI5So/eX+AuO/9u2j6tGynNR/6pBmxKonZxCwiTGB0mtaL0cac0STaq+SmRtasA4WdljeFl0mHMmLsS/ThVkKph4lLpl2Kra514JPXXq/sM670/h0KO6dSy/55PN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "plo/jgc3N7TXPSgANkS2qTEKGdy1fsnp/y24MQhOtVU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Cw3M7TcXUwvzeocNqllw2C4qCOsj1/fytTZm8ds9egDjpJHjfPU/cR812xhsF8RDxLf8tFEATLe9EfbWhJ3ua7efuzN4RG63Bro1nCiamjRH9Wm1XGlfaZGU/lYU+bEm9lEo8xd6ferp38sjqFBTHR7MnuliBH8reT7sTs0kF7wRh62zE8qcsJlWTpLQbRiFdwjsRVkx1JYSlClHwpCTdcIubljHHXV279/alymr2qA5V2EycZNhrFjY6qgVA5syJ3OfPjuOMzVU5/A3PWASuHB7IGDlVzgfqdJuzKRqzaqsRB+NVan+bKRE7WqZMN+cpm8AhIN0hy05K1gT6s22eSkfuK9X1guBhuRAs8rh4Xbl/Mc9SblLA0yNzdA3fezQ5bHI5KaFwXC5jTAzLaX8a7RkNzR6P6jQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pnk2vNCbmFvQC2Yk6rquuFeOYeGNAiBgZonJNhiYlTU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BKV5srrqU4aJKmt6AV59NwFHbAWJBqklrY4oB/Q99xsC5pHZzbSoDq4PDZkluwKRLfBm5S3GXz8n7uNRmMyAxzdU+ud/N13MkrfVwn9CUpREjuSoLuWTuE5eQSjO7iNqRD2oKD9MYl52xkgu68m5w/9bv+hDIW5B2jwn22E4L4xqGBA3GvUyWo24ATnooo8rmZnLoWJCgdFfQ1bcXyyxLmNF6qLWn3upY6lJ+7j2hI5UyNwSpuVETjt3VtQAO2AGJUCNA2St8+2+mmq/BcUQ3wZ298HXlG844OjN1iYFfPVdIlJCa2pdfAzGwPqnqEIwAiykCIYeYbtcnlgVqFEwwhhoKVgv4ta9ZkANu4dClZd8Im84RV0uaQIZYNPk9DNYjXuhWZm0rt37TzlM9heNvTwpQqctagyy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pnqf2qKgpv/kQcgScraBrTR5mz1VmrZnQVxoF9Dz4cQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ol7Vi1KPp6fFb3mqPEKeBw5GM1v3d4eZApTXP+uISO6BhCgSiPj0xPkEIyFxgBnXphOO1h//TSbU+rOAvY/EOmEdpfiyrXVnMNnCVsFPLytT4Ulp1jT1S8uXkLnr3gY4gbAVWF++El5H0EDT5yiTdzIdP4ykBeKzQXgKOLWKxtkoyPoRaxz6PPlFQUpNygeyhXZd2K23ue8nOiW4aUFIBJemsv26ylYcjzCnB0xV/T1F1E37YX4RyeMun7NRHLW1ifh03sVs5gfSdxN3X2rNUSyUY82NrVkgAaX9SkZQ1/M4A3WXRpY/RyK76vKMNlVZZjm5X+5LvfC0eLOKo3viFRkYvNdrcE3opetLEXiVVNyKu/XgK5TKlvovMyymAs38GZmvn131cnohQxJCf33LtlLrrKrbQ3ti", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pnx60E/1jmx5iFZ2hIrkFL1lDy26wUx+6cvYUfzmH2Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oEQxU1CjMPrs2WrpvabeMvZZPktbjZrauA7NbQVCY5YePPvjPsgApfmBX8iBtHkir8Tp87+ouZ9nIDdj5T+8CKn5pRk7Ako704UGmqGzDFthE93co8204g4AQQzbuyMxVwmTB93ZuU3vlNkAgfyehmXu8iFZHHCQwcBre9d16O2xY6TC2GWE18lRayhOwYCwfJ/T8Hm6YLeKchw8UjyQHcbjnDWVbEf1I9YSM48TwxoNFd/eGMrzdvdA6CaXtwXOoLQJDRoxxRD0/fvH+QWSwXQLjkuauvv26D+zUEABwbGNiwmRRcSAFVs4mkWgrGnRS3NbD2X1qeLFm/ENtBbS1UsUzrMe2n7xgprrxhtUlNmApbiK9Mct0H2Ns8ZjBzWK/pPRSKPIuXtPNW6+lvYc7bvczV6kV4Dx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pp9egREYH0+D6TCKg5MWMQmUU9VxuOVCqEcALQ/c1UA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Nx16GRfSevqDxmTsd0Rht2gKtq230OdkIs/5CGz9ju9MJZSwe3VQE1POdp4BcVB22hS8M4N1+96iEDkFq53WAxRcovXzAPmcapsJdAFMxS3YroqZ4D120r0ZSU72cN08uTuweNW3vKJFmR4qxXiFVSXiJfi+GmvixKPmIkEHMYQBkzUNn9CfkfPhOSGJhTgjP86GnQD+cM2IAnBHxx6q1rDt7y3jLQTX9SyOSPrbu1hI4PLqxTPaYzktqPpnQISdUH2nnWO9USXfI/cwetUFimsiJhxw8jCHEWzdu8ce4GQMQdeTyIaeYC7FI1g+Nd1X24ob46r7wTuUmOqVvvXWceeqUDI9WuWbBvS0EUplkhEcrZvChDkInRQ+u7qQXDs4ocVYf2n2eZc7ZVjsLveO3+s7JsPbqK5j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ppvHjhacFjFGGW02rvTQG3HmizYkc1KktjSzLvx1oyA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WIfjnuDtYJzQuCnEjQ9LGzEX8YhCmHyUxDvBd/qvBHk+Qj5fgrRJxX3F4GLdm00INZSXFUK98sz4ut/TzgbbXprvsYD4oNyw+qSiMySaIcTE6LLoElEH5zGSbdas/AslhrcUUnKJw0JZVChgnXaAGcAI++4E5L5lL0ykqqHi9yUIvrsDFYNBhgO3ENMmgzsmKQtfGtnmtWfbTbo8ALpoJ1Nx5oSNpELVXtI0Mb893WFoaN0pEQm2pjcqlZuQ7zYpBH5OI3y9gXA515ZPMjJ5kDrdeiUK8GAjUSr1r91HTNXoHXFl/pVAu0EPGzlIfW1GFNUf1c+XbOhj+MQlzxgWsHF+fHjq+/0PUOr/NEeMvh8IE2RecMcZWjhWYz6Ros/2xVGCz7oRVRLuYlpUfOt1QqYJxJEcnpnX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "prVaHZVyU5NclmLXF+aQtAOGYqaQYjdIOPf9gYfF76M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NGttR6FUyuA02rDJ0O9QWTQ/x7bOnN8EnVKSR9qo+Leb/LCVW0csC1TQLOAbYR9ijACSzzmz279CEMXnk9Hh8sqdRp62GNm16cVl5omxyB1df5VuVnWJNEMvGA+hohlC8RqRpWTaqF6SxiWDEBvAvNQF6zMBuxQ9cV56oF5Zr+AzpF4rjUP43XWTVrWCawoUrqnMzdTECEy+4Ix/yuLFJeRQm4Sv1X+57Ga8NCn4Fz1B9yeybGdzpcEM09VRTOxidNHs6bLjwXiRs40Y696JmBMTr8FqJ2wEdfcZO65EBTZ5kAr6AiAR2De4CRMsyFV5Kz0lm+5jLc2UPjQEGCEQ7/T0BKdk5ksdgG0riTO2rlsqGpqIUJ0ylqKEr/81jjogi4VZQqE+WoT398slOKtIJVQMfUjneLWB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ps/0bRPqTn6BUsUj38PO8s5LSkhdBpqIIdWIPxaEb6E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "l1vvz15HBQCjhTkL80oqW5AC+sVUGUl52YZLMGFyLLqkG9q1ep3G5G1T4pvYipICFOFAhQHuYjcA4rFHYdxyATrPvaqte0H+1VetR/t6uRiqlzHyv9yjJgekijcxCv9Vi4Nq2LMxB4/Sss3QVGpDBnNRohfoPtacbn0MbvWDTVoGD75zeURIwuejvq4d9cbr7xICAr6fUt4X5db5/ZrCOeut1t/dfN0JY+faYlp1Bm0nWLQBz/keOsegPGJoepV98XMTrGpWGtwVXxNO6CqZ6Chq9A4bsEuVH50JlOW1D5geO4sbKfJU+0O8gLjiApjaGH8ohgrM7cNUsHbpm3bZwIRbJXceVsVtBenUJXXoROJyZgLzRzcNiA5D7gXhCYptYp76gfdZMwJpYekTk7frwTPPATBA8+k6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ptVEzc9DNJ2gup557y8DS8xRAb1BMs4qrIuilb0L0O4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kr4YenjUwFhYYGs0RwSjw/YIz8cWLDrqCHz7NmQC+B4ZA5rwYRtC7sSYo+36r/Nj/9BLU0UoxNqyjkz+leyDr1PvnLv7u8Nk6iH486Wj3x4K2LTO07WRicOfgYS3Fpjls8bdkOyIIKo404SrwSASTsc0hPXv5SBQ2sy/stTR+9n5Kd9eb+TIiCYiZ+69e2s6LYdF169Fboar3rhchPVRPQvP5gyNZdqiOTobed7NnfvyCKOewt5Gpr5izhCWctD48j9RL1D7b/SWXdWbeizFZiovcbHDlzEm4B04hLhO1TtmaEvhKtdBwGhCf7IxlRnWgGf+6cvjG1MH0QpwRs73o+qpmtgs2AUPyqIJDvJQDeNKVxv1PYRxUBlJxXTJH4Lu6IUzVLwS95J9t0fAoHAcgMQWh16Lqsy+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "puU9x5boSFvuHAREWpaXsT970ozmK37oHRX5NauHgaI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F6TYloKHb8BxnU4wVAe6H++xBaBarLGj5zL6f36vKsTGtK860eO/cFDuH1iE6cYBaEkLJ10+X8LuBsghuO7xqKIHN4QPy7nH5SGFFbS3KN4Bg9ESvtG1b6qGS7wQoeAa5FRYoQ/gdbA/q5bU4kXXzFAyBv3us1BY2d2ZqYiR1b4b/GP9Rfb+W7da3mNzfBEXD/d7t8m48+yyuGOQouaA0DNsskIzQ8VU6ULQ68ZNxjfM3RvMral3QLSskeA33nJkSu1eEr/Xkgqo4L0o+zEySSx2romI+ph+mKrN/lzDdHacNw+PPszywhgJUQ6VbyG0wsv3USHBxVKyuCsiYHd0ys64sAj6y58rVnhqQnAUuY+uzo3MIm5RN+9Yxhv3gajIMZAfnfuV6hPime3iBu1q9fuIi+RpVY/D", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pvaW7KrDGDD532csahDtY5mSYUCWtaH9n+pAp8dYq+E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mePFucGHppWktJ5HQqoMpbVRK5zOoMFTBEvIX3WCxz3wmGGj0mAs2dr++cH02au/q49J/D5QC7WK1YJaFp6HSnXClJp4dlJkEmFjhV38MNYKZzT5n9NkN2qCfniOPTWk+e+katokf/zUgD5mZ1h7JPbDT7pMH0W3tl3mtHdQ/F0rKWjVVMwKJ1+nQKFSuopZQnDr0eYI1EfEr2PUJrcXoEALBghNj08BZ1mNFQjhVdi7lYyadMQoyhm7bsNYwTuxpQcOnHxyDWJZDQkZ5rJKoh3aH3vGR8Gl6++qjp+MGDBt5TPeWNKLslSjInZmENxDBHNNsH6ivE3uu000f/sCOalISYkW1b9ryT443LOQU31bkqoDk5fie4KF/sFq8o2tUv4ohhy3BsXv00Eqv6djXd7YYPXyHDh1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pwMdbpZZzsyjSTAcrLxQuDfqyiyyM3WjZvPzBqohF8I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pjqO7bMlw9NSB+T5D47eoYC+0ec0V7bQnMf80Wu7T0jFIWwPtvZHH+J23vsN9CtZ//9eKMUprAtGTTkgNyQA8SJlAdch/K/mXUXNtTTavPjeknUIlPlpsGRxOsnvLNVgz4DXvhICh/GUrdIaCo9bebwCCIhxlTmwpeuP1mtG5JcE5QMsWz9T8ernM/s5RG1tBcz1i6y8Au4qnFJwFE9r8lmkcwwI6XHJZ9VlY/uRlENys5NW4tN1mRV+B0NrI2oou8z0xQyjx0Qt9T1iIS26Zrd30HvO7dz4ruGJgYlhL0D6OZCZeaaOHCYQsd85jjobH9cX7Q1bFvMxy3Aykzz2UzjA2t4z/D82J5HyoGv3oK7PREEvUoNPoEKf4fuLtkANM6Hhj9aa4Nzxt2EPhObXirJSwq7cbPO6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "px/KnHj66f8wtDl+dH78MrNcNTJW3a8gtba8pIMbYuc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rOVkaX6WxjdQGQ9oA8VeIO0JJPsoGrlus1dWCA3zjNo9AQhSZ5JWYlEtaKXQu7zyJNX1ZlM8DQUjxWJNng/IEsH5WaFXpSH8ojDpz9jaFJDKIgDC3FbFCQJA0jYXnkNQA1RUfO0YYfYse62xD6Rdh3oRccUEuT91UHjVFC0TSxqsXfcjWQ/YdfXORsUQvh3zDeLSK4i/0Sm7eo+f93f5Fb9iCGDVQdO10em5EVXEWVJ2Mz5e5xYQM557EqKgghKtmZ4vv59h4RaKCcWU+9NtV5rGbulcvoJVf2AWEyEUCl+fZ7II/P2S0L4v20ymx0f5Q+rwFTfoZpgeEhKq4o6D3kj46bok0c7O4jJSGQusUbPQiP/Fxjbp2BdvgFJ19beixwGUXBV9IubO4I5EUFpgNlKFXrp28CUV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pxjaMrBE5Y5+iaSx/wosfRoxvZfSYj16/9/o6mnTYHU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SmDN/ubR/P1qpnSHTApBED8Y1d4MxPS1dyQFhELmx8guIDXrr6AtTY8AAFd41Inog+Qk7uHyV3vKncK14dRcdaXUjBZFrfjfFP16qLb/4+fLKUj/0D/Un4CR3szpbNVjYOz/aBr4PNZ4aOv8mxmOQ7+y28NZUWLzTtDTyHpgLvYFk1dCjY/52AiRJeo9E83K9ILYN8yx00evzuKU9ThUjRihsxJABQyqq7LAHyIbRiVuVGN8KAXqF7AjdJRCvWihufUpj5u3MKKkaK1PAA50xpFfawuUj5I1doBGoqImcCqkvuzo8xXOUdLIbmdfq0TBFYr76n7nV/6ap21MuF9lgi6zqn2F/laEWuwMi4nEumJgM/nkvcnosqXuj1ulKQtr5bfMCPry+sMxZx2NLqwYRlgmOzjfSFfM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pyJNxltJFd0XAtmkN6m8IelfwnOaMpkfh5vRKTqzSzE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7CjL9wFfg+FzKMwndnu/WW6JSahySIyyBqb8Z4y0FDHCIrEMcHn3spnDr4bgdUHhMpQ4itVJsX9u7XhYzQ6b5tBkNheKOJCbyO8+sPHOnThoDPbyco3CBdRIZ05EXZmxjx4BPjKW+Qph+aRR1d3VxEb4vk3B+bXTGE+12CGGzOCkQy8AgcWZTenL3hSkMopy4pZH01sIZI2oewSufB77KYp4hOp/Sa7QARRSaq1wVVMA4IpY4laringDKhM2HnLXa/Wk3pb8ypL7clgS7RIPWe3sGLjEnyxRxmATMSTxSVEaDk+XidlhRdFgfJF2NoWy2KVnh60ctSguOSwl/sjcTBq/DGcwZ7onfaw12NWCBe5D9AnFNyCnzuxi4Wg9LCbbpKnOWnj1V42voCh/b3UzvWFh2HWTAISY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "pznxpr8d5/0G9nNU8+JmAZHfkLO8aHTr+PinAoERDpo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2TRxs/+MIQktCM9nW7hW3DbmZAy/q5diU8/LTUlMkVxsrqwrsWFRmccIU8lF3ApsuEDN9zK7/EobNCubAMZY7clUG05KRGljw0Xn9NbOAUjZsohMPogzqlQDag3B/81QXojJpFXjCIn88GMpRB49p0Pp7Ilwi6WsBrbQTK+xWtgZiil3KU0qJq+OSM1VLUn6S+3bS01i2mdOY46a3s8apX3cvfzBG9Kw4r3LVQ9L9ZusWhJUPOUit3NqMEe98pl5UPRYHVMx2L1W6ou0lGo1KtbwpioG1S/Q7BzzjUL3gO5hDt5tKERV9BiJDWroZtoLq9Oby+bt9i0FkZJ0tMjvg244s1sLZQ06CsnSZRFmcjctLus0WQyIflMb/55bjJKjY2TfUAVnuVZBA3Qb0MdgkidqJZjXc7Ua", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q+8wU1zJ+JAuBKb4eXgj+pM4/Ei1+q5IoX2e26tIQLw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DJsyayeA9XhSgZS7nMkPR0dK/MOCPd9oJZuK9FBB6e0yN9ZXsx1uHymoaJgHL3TsqNjtVbyohhJKDxIsYLhZ95RJYk/HbBSL9Es2FGxrC98BotVQqw0UwMkGnFBQ6aj9Z7F9/ZUuVIvJfeySc2UPEBOZpa6GJCj1cMDNXZMh/7tDnZJ36cEwEtmrQQqQsPStDj+CdhLayUe7hk77iZt1HGATWE+/F86t/eKKxnCngxCsByKndcS4Oz5/Crgsq/otlG2pRFI0feGBrn9J3LiucMjOqhlyN2AdK/4d2zRi9kA5OGd2pQWYNQvRJJIchuXH+i9l+PkD0UR997G3dCU3NggCLrNCsbbgdVHrT7mYQR0+MswJUoWssFbVgg+ExJ2PLxQBHrw5KFLbOyGgkQVmothANKl2J1UC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q+MN6GnQ/KgoKJJBbuwaVugwPAvI8FGv2dAE+N0sfkk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V9uWxfppptOxNi15mIb/+Z1K6Fi+NuoNm+MDd0PQCXF86tL6GEkpabfmpLIPuFM4RxXXDvL0fJLsu7McBwjpLbvJsVfAaUUCdGTbUDqFLTwuTAN3ZLPJqqorVYD4hh1l+e+Ngjsp0++lSko5mOIeAWvL34O8RQvm+K5Q4pyLfg2y2J+Z2CgxJTceFXd/QFoxmTOggxRbIQGe1J3pZSiayNbfuSpYvWe66nUkR0hwZ5FRS0wwfnqBUQQ7xYPgq9n7uoyT6eX9jOQwZTU9HubCi6YaO1S7vS4mZl+iIa0vPoAK1c5RQAuEjr4pGjnuAWQcYn2fadBrRWY7n30SNRlDO9XgAwLSGkWLdyB3GAciiZ+6sWda51lVAxLa6ZMsDlTj6Tk8dcqYY/Vc3/W+c03sZSFcXWdgafuF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q/a2dSiOCQULr5YP/Il7zsyXt2Y/hF6Kj5tlPPbmVgM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CikQhao5WxLNHuj1kdvHtyIu/DAwXCGcrW9RGQruGxU0GpaicZ+KQPXQFrt7MF6qDsacyrDw2mpHqxbQBf2eLDMsfUMer0GmHDhtuPSSLcBV9k/dzEFolj4UNoe+rwSJc2/FmDE8duBLZ4GnLwQPu9xlM4w3uAd7iPN7EmGuHgTVy+1+cwZsYSpZI4twjPWzT/SQd/OgoJXdy3k8E2WQD68DBHqFqcEEfjI5f09szKhQmKz05k/cwL0BTKSXIdMleskHHxha3HgL5nlDr0MFWD7CtrWUQequsLus1K1Zq8Ossc5rFFnxXDdbWPgp9BmAL0RQH3n8UD/232bP0sEb/iNNLJAG8Xu+8aB2EnWlFZaANfpAIFzFXsDO+wZYSJV8TetpheK7f4tdhmj7mHtQOzwTG+oQAhWI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q1VSPgAqS4wbXxGMpeD5wPMu6rC98QoYfOPKVlFO2cI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L1VZ3S13sQtCL8jIeIAMvX8Djls9Oo7AVUIHzkOPDLYIX0U1HqROZMxyautOvoZdCKzNakpdhQXi56snDCLHEZhMpxXYS3nKnjO/gn2MMK/p/2w095rs5R1W82t7eZIiKrWPx+blTELpbZz87taKutnHPy2wXuMlprK7v3xUlnGTlAMiwe0zfMcO5MLV6oPh60j7cqEi75AlA7ERPPYIC8tJRGDcUC6LvLlMIlShzuLDnPGVdSnYzF80ip1tgUhJuwqJZ0lR6gOIOcfcyOWBtniIjMFmRfcvI1KjNU6Is4rQb9ltHmyGEbVuMqB5lGq6YfP6HxaF9gKYqMMfHomYhQiAsUTLAA5uOUCQC5nk7tl4yjj5okAaVl9SEFhLRJOzI+zD+NoTD5cLfsWhTR7WG5jAKYI9J6Kx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q2KkAOyesB5RKBBTxo43aRYvdlEtJ+StKPBTNAkL/uc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "15D/+EoeN+ILMeTZji/0X1jGEZm0W3VN93iGndB++JsfiaxQGeJJxm+oOic7ykD7hQzIwMOUIthaiOlSWRDieRzgrJIP5CCqegp5TNtua+32Osdv7AStOYmCFFpAzLXbtdj1FoR8fAD3ToIQ34fxUNZBtpocQPNonJw+55tLrbTIoOk99V4w+xA5UhA4Ev13PJ8sRWmW3fnKbx9rBf+nruP2dSUp9o14Q3iQWqPsWgbCHbVczxaWOJT4esRAIyYcrPnxRs0ZADxpP5jpRgmKF6gpsTFCgIQmsk6m2OeuYOy/dRpBKniw35MvKYUTVknarBLdlb9xSp7WVKibXT0F8mWfCiK65gWYuyXTYoV22QjoUazN8+GG3HW70Zd7VLGNoL0EO8Abi7IZyv90uzmZ6iuLmAclqYDP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q3h0pSsagwOP0N94c9gvmMMXt3eebUlVohnlAzAW2uc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sn3nWtHHSyqzvwcOvH2kkc1XgE22dXb/j1+UO6dDKl2dULoCUeASnlUw1Nx4D/JbfH01KyMl1E8GsfdCl7S46kCyJNVcT8V9Dm+wUM5Y3DdGL5b+EA9oNMALG1jShWCtcgOdb5DFN3SIAWrPfGxsXltiMYHzl07rH5AmZVgoA48ixs0l0X1CcK2meUl2tbrPVSfRYc37sJbaYUjNvdF4LSr52n7KSxr2HTh+c7QVKTsjxwg0jmOCL1kXPBXSOC2AMMSn7Ar3HuzafnVXM5VqdklMFCyKvFF5LY5cRjG5kgC9HT+8Oroq2P6Y5otfM8LkvMzw4/a3TB4JDUZ2b2EDFK0cesEpJnTrdyOZkqrVo7zvdTU977uK4emt4kfJdl272gEzElYn5NoBNmhhSp578Gclj7qpKubU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q3m2ptAgu/sdWIBsarAq2nUQ6tgpbgUiC8waKraatqU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VTlAfs7FZyJIC9HkK3aLmj9aQ3W2bfc+xtzZtF0l5zuk2dgUYtZKp8LaCTqkiDf41jXwvGjoNDCowT3tLp72GT/ZfCwDQS9ZTUXPGgE5TrBVT7QZYSv6JLUOpFB2P3Zxs1Kch6r4oc5A7w1O+95srzny12UIW1CsOR+lqnIXT/KWy9K0q2MEO3Tsxd2VrljujyL2Xiv9z4lV33dvU0bb4zJ6VOwmgpRiEVZMAv+0u9vWYAXBecdoGleFDwArs2FrViq/HUvp4qm7TgHm/lnpcr+sQGK0Exj9jY3wvy58GyYrI4PLOlpuvNtlnZ8uOJHQ9OWeoEONSP54tjugLr+ay+8mS22Qpz1TQpKlqgBf4y769UxFF8r9wRrnvx9Xm8u7+ruPUmmvcGpPMH60cP89j6nWpAFW1AID", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q5Fq6GjB8pB0oXf46z046GUgAkUr1Rx8pcmXf5lFIqc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r7Xa4UMhkpmkCvD5RITZCtsRy/f8yQL7lZaPm0B5mDGP3EWgL2q1EsSSsnxw02yAP3LrRZrwZMu53cukIeAA3DvRjtvwdJqkFBdmmOL3PWm9J3kjRU18Nt5HPMJWxZJvdeQqxxLUxlNPE2MjbP0eBqc+ulCf4GDEdt2wBDfl2lucloS6X0OB/K5hnIWPMVJwG7/8hogsmu5QakCw1et6+iG4tAr7RdhNZV9BdoygZ/wJwQsfhlmdTCcb/+2PNLJi5flUf1VyeICTdumUpNgfCgBiGLlRiMLEQOhRu8YuIFaV1y8KexQ/lZahwelv7VKxzud/KutfarpR7jONaXrLP7VY65qmdT5X8vP05zviGly5M9Eit38zn2HeZs91+L4HR3wvPSWBcCforkje2BTtnMvFbnXLYspI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q5MQyA65Baz110Icg85N8F1+bXrEmIzGWdqoyAWIL00", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0f14Sy20aW0dDwjy119M0anHsKuzIeYpJNRx3Oh5rcjfwfoUmRu/hMFgt+3MZGfXFJTj+Di5n/O5psUeic8RqNywRrKiHdA7b2yQIlU9qXUp09ZQTSuLWii1Cq3KrcR35QUJspi6mMeM2RGrb5+J2XKP4leD0oOLtlkbO79SmI/AnwpoNMh6oYEluzwvPk5DGs7Y0VrCMg5yUOXZVI2mRbzdNX7anMQxBsCEwQdeSyZzgaLQzK/6C2y9BRnmWIazbGZK6evVNN2WkrFhDZIK1xmY/scgc3BbxEJ5BGEkwCVtdNwuK5GZYetp6zqgyFkhq1d6lWfLkN114aBBK5U3qNAU/Z6rmFSjng3BXkCFuEja2fF/ml7bLLcbuflYGUKG245Eg5PoI9DipH3SIZfd9iBMkDsMLkGa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q5jg3edQxK3QWvEeU+Iv6EdxOpgmp4KJ8nSs6nyBVc8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yyCIyaSz5ZawisLrfcAfHK0chvLW8kDoWmk5hJljIKHvs9KFqbPvpkdM1RmbF6ZqQ9MwxsjOoMRvaK0QArLaS6GCRvXQS5sk0+orSRcB5Tpdl+mWNACwwFhaJkSDz4OsrlwrX0yakHyUBwzzrwSrbLzJP9lfpC8jI8IOmwer0a0xT9OZW7tmvTVVsF8G6zSmDBuZQqJet3RXaG3JpsVq3R34gOCigwOA9sdLaR791xGAf1JlmikNLiirjGm61J26N5rFM441LMjl8zPFYHR3/SXjGer0WvwfVqc7XPqiNiNRDC7wnYlRJLFFOBNDyFMI6Tpu2szBf5u5y/hhX8Kts0ISjQNkrx8V8V3vBpqJmXc6CB1rzQN8sff18OlkM+lgyl0xSiZkQt5H/T+QriNQcPwF8O85GyoO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q7MojP84CYfpqTZvyXY4b6s88BmXSrsguC/xc1qxr7I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iUoHqNgE6osQlRmH0t9TkeSWsYuvENHz3SJUlhUM47Q5+2AJ/bhU74rhAcloKImkm3uYkwzVWSyaFnE1dCztTTNmy8RGANDOlme5Jh7zbe16j2zPCJQ5xPcF9MlcNPpDwmFEqJCn/DeZDuEBQtOKYrZl2K514ArjGXaEKB+44js1YNv1P2ooEX1+7I7x3TYSFPgOje3EGwaX/S+oO4dyrb30eiIvmU8Ji7oYWSqmSi0aqh8ETqnuBGhWHBg48H0QtKSuwypOQ5MzWF2LwVoUqcoAvQoAbfGplGwpsRrVtj65pvuVngyOQ8qxrd9+AUNzN4jkajM4CvpvU9dxMOGbKpedKdlo8NUlOzElmdmxyKFY5jlLlQJXdCR1tjV9xyIb8UAamY86bFo7UL0SL/v6D3OctRNfeXc5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q7wqT5KPDEj6En38bDn+BSZsNT77FA8DDC2T5x7z4gY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o9m4EY6tI4emlvQ2m/6Zfqxtd7tpofgLOHH8+Ey/0+RotWAsbJ3rGrKYnReX6/g6XXDboykAtoygY1judx5hqQLn6XjVjPJhMoOdd5HP6lUg/kzZH8pcXQaW3jFkrX2G2EN4CToRwdOmzxnfBjjlg1yZiemVh2sKXeqoHVi1e18iA9h1vVDPBX6Jt9TC3JTGvNrw3LVnOOBDhuJvHh9urPqjcklxINNe815IAXsYcsWtooRPtqVt5Z+Mj7Lx9o5rF00EZM+qXNRt7KWS0NrAbAM2Me+Kj7L5diOrv9R4Qj/P+WEHvEtiD+7sJddqxAbMKphwNKtMo1DUyHwCbmWiHfK9wUNryjfgOAAgTqmjtgs6DajBzSBUVJL1CRBrsEcCckkzbv1x4vkhnFSgX8AdAIGJbrzrKRGC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "q8ko9qrjhiPyGMTPk/7WJtHJFO7Ddj+Kh2mrEbGfji8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sOH7aCkVBtH1CLfxhqbxdgX6xUgbQd1fodVvjOF1anBeUHFA/zyBxt6VHYaeZHAKByCQEnbDPcK3zEhCRuXmU+AvU7zhJMU9dolUdGi6QfGKNjcSsBE+zhRoogYelnxCxrWzSgKAlylO0KOCC4tkgOVKIzPhr23FgrfodBd5WeD55BAuHjMadrTwZb/Lh6wTP2ZGp5HvMIuvyw9P5MqwQ+Gw6cTiI4ZToKn8ae7UzfRqi0R22viNHiNp6BlFIj4fbua5+6nqyDrKfE9f4eGf+a2u5PeY8hMRQopQm6+RMUmLbrvBXsNpdDF/jNHOhw2ByFasIjhtwNw97XO69mceWk3JB5JqF+EAx/xy/i/qrWpxckyMf1D/XdK2Isf410D6YptxDL1ecUJupRu/0KgtSPJSEEF9wuqU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qAHgddQHQi0kuglwSAcqHwhcMTAv7GRcElCJiDrHhgI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Hx7+oKszM+E6pjujLZD5PePmlC/8gfrX9Iku4r7EsnnsLreXEwPIH+z/a2JHWF8qxkmiA/h2P+uEvMXSIKHgGBLYzW+GAvHOMbNQRIn0fuD9cvIJmDQRYnXXoGI9tRJtz0MyR6h0aa640f8fXwRnNIx7VSRHukH9HsKpgHKJBeRuDL5TcPpFCf4fgnpTvoPC9xbmiaKUcWazqV42ZGLNmxIwuWigG/Sh3A7ESmP8d5Flx811Mg3LdpGJFQnCtnCtpOsvkmB6A/djuSQaCeMwzVCb0DgfLJJZvIGvG+Ig1i6A/fjSX44QRyPainxShBYCbbvA6XpKoluFAerZP+03r1v94gL4wyr8O1srG9xuL7uIUXTO159QnWqDYJA/QM+ceoDjIYdnyDny73gY+Isrvl0b5+cEfEfB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qAKkFRL8IDAdCFQGsMIjZz3Z1hQ8xAS0aP9Q1yUYN5k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8Mu2435XDWH2PL2jm1DWHV2xPE6zDjgElEUQUjEGoLbBRe6h9RVCKnO9Q1LZ5Sevo4p4nqMgJZVnor5gB02ffOcARmdUiVQo/uuQvUvX49sGvqFwKjcV8tudI3KXexbX8X8xaBMqD0EZKRVcNvFoNsE+96e0uHAtgfI8MuZZKZ4/kiEz/1Y3GVJign1ffkeZx7gFItLD1ZD0MPOy5oD4UgAmsCDuwByeTZGVsuI607LPgtmryBhbb6XmiwcmpL9htsRYhIoTYjuOLnOHMxHDPHObb4yxiPBIUmB155DHOJzcWjNvR2xzX7X8jnnajRS2MxjEGrhYX257zczCXqft9j0HwwndBi9eLMpL+eTV4t6PqcHqDwJ0L9VNavQD1jsjbpV33Lv/1+FaZDq4xasO0at5J5bws6dC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qAOeNVsAJoZIwl6Xc5PglohHWcUFwZ1+2ccQLX2aODc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nz6o8fNvQv4kQr6m9Mnzgld6no7Icx1BpyBI7jmlJ5vg227DTzziTAl2sIUw1HlvaPFeFvgScUS7FngRJONZl4x8ynYvePDk/J27hF30Zo6Of1UqZRxhE5IYKSR/Psx4v5HhxEhmevP2nfDx2Ly8oDzLbFIo+J29chEa/t1b8Ov/vy3agsNSbNz2rIPcEbSgTjQxVGVeKtpfgXNkX7ZUypKWANDtJli9BE6+ymq3Zw2TmSIQC8flVS4jXxCwwLg/Reb+JOpcYm62OEiU6482s/eFETD5kxsUlGlLnn7nkt0nF9i1EjwrY53/W/snGfvGd2Wnpv2dSRtCsZViIcbvahy99R88KQ8GX2DQbThCjkIAXE3Q2fjaJ86fc92kN4V/vELODJIv+jP2ulOiJTc9RdRGz9ym4Oww", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qBCbLUubWHlrpdypCkn+I0q0pZGlksSPgDcYf2xThvg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dHZWvhcwHm8TUI5/Z4ZbjkECmWT9JjZ5wAG9DUFS9+vd+OUilzzfskIgNPsA1GckvovpckgHFgm2RnDc9ziT8sPdTYXhSUkZ8bUv5HrMXzZf2Whm12vmZbyx/OIdoGpRySAxepS515mvVwjpoRgBexBSDUHzesw6hIinvQl10vHxBMaGDwuN/RlwtnYcV5UhjC9pain8wL3a0G0jTG7orC8oj0NDPZ4s3yAnucDco+lGk7qywZF9QPVWbQ/yDTyMR6Rm0PxXqqgDo/XyRds7314vt1Jl0fMXL+TlWuTQFRul4C3d7941R8p19/4/dOQxo7tn74Fy/yxzAp/WtbDmjKuDaZDCJd17y4lUQGVCcQWgZxdtTBxJIXqsGajJsziOhEyfibkjhAVOSnw+hi7/gYYm2gcPVWxM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qBYaco2nXke5UjoMkbYdwQHMQx9K3zX16k0Kl02iW38", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Vu1lK3yGHZt1RldtxrCoVDnbkHqgWCX3UWD44+/ZBv91G9yEamlm7MXsZuW/1Os9lESZo2eUpJnEqBsSBp24NJztfrzmbfq/iCXWUu5+t5txsAnNs0M+szsvwweF8IGJ9bdGQX/srjGo57lzJdXQCTeskz9c7AxybBc+qsEmv3GLam6dxsXi4bHvmuO97o6WgrhkUBHR0Qnix/cnvQIe4xFeXe5yKs6BKbnJF2PLRwNEo9c1UJXhBAfHKDByZqytxungGlasilowMiOMpHy1Qoc+0StkbbAPShTt3QgX9o8KoGXMoozsUnE3pwkbIPCwxf53SvQC8CIRQYVK2uwRHzmqnPv5nf4all0UaQDxOXltkjM5K0Cq03UtF1+53Kjv79H+MSdIcEIL4BzSheAgn7EPeWi0ygil", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qC8pzkUriGtJa3YdZ2IWBEGF/tXr3j3usJbA7FUYu5E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B6C9KBrRGHVA7XuD67lg1RRYQIqNteD5rCn0ujjeDo1FcpBoyvjiTlmGF0+cgyRo0lyxrLQ9iexjgUOIPiUNWgoesqUeMVTNx/GWO+3+2bsSj6JrQrmNs3IVcMi+QDhnPCrxx5xjf/TtQ5DheKpQJE9EZLqJLGwtA5QUC/bIf9rw70hLP79jFBZq12B55qlc2mjgHkB8osMq/H2WCLhoqeyNKHHG5P51igzxT1NXqQHL7wkfHPsbU/KFxUupVIk4qPaD6KBt8lcXGXR9gx5eGvN3Yv8f02qGdLbiYaJJtMXD2qrMgVL97+Pk5yMvCIYyaxz0yuSNL2kuokewwgF98zULOpiTWfsjDzHWHRgYW9fgywTLtj6D/KI/U1jutBX/AkczuBy6qLU+hkzj/0eK3oLgClmEsPhp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qDE41I5v11VdLwL2RWdPtPkQxeC0a1i4EXUzrm6V/K8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NYIAkbqiVb2Al/quCGB6Q4dnhfQPxYlDUZ2LquM6dT5GuWMVdn9+IDc4A+9fP6Ksh+9afJlndNQlXq19XrbqQGBogtWCGjRYQz7R/iD4esaC9zAZMu2lGkPWgvRQpMvHnhWtGZy4cRx+ZPGbcZVD/PI9e8oxXWmjEwU4LLE+M62Al889cVE2Wu7rwW6M+x38q1Fj0ykvTcsZHHUW0WGKgjS/rlMIboi31dIC7OaILJzYZUH1/vWcwftbQMUYfxvFFJwFknvCh1vLmPtXFDsVMGkQVZv1Qt6VbxFgPLXNu/BnThbZwqM9Cl6obCvoA9n9CmGnT4UHtSZTODw+wrnh5n5BPMjvY/iRMFm7ix9bBbKUi3HzH0j4QQsTXjSCuHNB4XHy0vvc4LVa3k6RoUspyOSsKXihxgh4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qDyQemKXSJP1jOWPFKhadEhsYWN9Vq+mIbjXn0rThXo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lE+64xrDJySAICNk+uG8cp+mLlIiINc5qmv5yI5aHp3KRpXmVloHY5fHmGQqLJXw13U5GeSNA651u/eFr9FQGptb4nKAk8j3ABP73TfK9RU0Up5Tu5Ey+3e8RaGO4jL8u5p0zHIhiSdOe9r1/IV5NPrzDs7lfndpcPUDtQ8N5R+ASf1ZyFDuD0XjPOP3oQYHfg/nvmFjaMkfGeyhM80BBa5uWVL3kfYWSht81XbNEmMw/LjUuEWHvKaEP8r+chXoO8mmTn1pvy2Ew5fDsWW/0NqUfeI7viaKpI/5/PV90xLJFMgR7umisB6m0kKlQnkfEIroc1hqUa1x9oSGwrNIj7iM0+wkolhMyz1Pz+VFBVapYRk2OiWiFnt8cZ+wb6Mg7dWGL9LIPtdhQZpVfnGSkWTMlam/cNaz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qEQL0yeIM5TdlfWcPFntn10clnjNVIqFuOYS5EMXV9Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nhf5jZaokK5MTxgiXtLWy3KGZqItZhJPaz1GwSEeT2R6icw/wi4Bvte41NWzBUBqhPbFAHb2hgC0da/PLi8WF6uIEgttbA5khst0JogBEUO5PhVqMRy9TTFTt3aTYtWp3EuGOAKV4pDn5N6aSauAE9Q2IIRLL4r3W/UEQctZ9HtrGZP5GBq+Xx6iqd48GU12gEG3MStExpcusBOyhR2niJRoUrbwozF7dizXZYX0+ln9EgTzpKSD4fha6hqh1f3VZLmuzjyGojEMbNTQq/sgKffYUFWX8fmwMpK1Z9m9XZYImY4J3kJmiRlB8WjWiUqn0P7b1HAd9gcUbUofUyuIJ6Xe5yDJ8Qi8QiZDlyH+t6xNOXp+V5aON54jrCcLIZsqqiqrQWi4XgFaxIqcXRfjsZj5gWfeZ9WQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qEaF12JQ3YO9gUZbb28349CcBSmYPSCc0b4SMTIsxBo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vf+7AzUMQVxc30GuEMXIeYqfZzQsOlSlim/piHjJ3FXduUBxe6m2cQ3uYRFfiEUt5me382n3Qz07mopyVER30QH+9+UoDNvC91GN6LLUWwKwfCv00iqJnRdyyuvxxjo3qTst8Zs2MwKK4YMhglt91Y1pMZiG7kOpaWGXR235kTH+dy28GpNdA+MNR7WXFQttguaTDZ/C8U0oPcBPBu0dpZfvKVDnpccgvTfqCapvDJl+sJeEfqpKYnvSJtS3tuaYvwLLSgFr1fLx5cOBXjx/QKNZgYWYb08fjaSRl3DuEjBmHVW3dz8h6GaPTOcKRciXK55inBQAPoWL3qH2OYFG/gLVF8jLrjAUP3HdumiS12tbX0WbIp9H7HX8V6B4uMl5IpE6cNck8ITW3pwVvD94niyLyXhlo4Iy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qFF+odUheHaidJt+aGWD3qFTmiuePpcModffWIe/LX8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P0h5/2l+YdEIxr4sblUIXwVw6Q6/n3AIlAGaCCw7Q6899tJMnADAWBnYj8f5Zi+mcB1N3PM96G9wa+sGDvQQGQb4e/wcMia/8WbPgqyzYgtBiQQZBuLGlb1l7AjZpzMN2n+v+5JyZQ4+BjhkUgsUdJAZciMmpuOLgFjaVzuuPFfJeOGBKmY2aoFpXPpUpo8Nvb22hdyS/sZVFu02wEXK3lloceVG+zRbRCkWbaZbTb2M9ayG8GSclc0WJ5toWK6L1oxl0zcZ72XQQSJU6Hu0roZlCPfbqBdkf8kD1wSdmmToRSWvAXP3EIxnjnWWniAKILw+sx60dUFYVj2pf1fF4dk5Kt1tnLHGqr0lYTbRG5TPyRtC6D3M5I/mYMI96CgyzlIXCbct+EU0LKPs6x+VvXxFqHPmK2l+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qFF0wBAtAYg0MB5JsnifDOhCMfS9khHp/GH3KLwDPjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Qex25s/ywbs2VjNuVmUkhpawQOZ2JggzeykxJsXLmcL3BwyJvqrvaja3xLLBSx+VWltkYWtr/Q9cTMAOfC20XQaD88QY7GL+14GD7QrWS/Rb7ZV9wANFZnohWh/5V5QfN0gkKouTBGQDqCzM54aydv7+17llpveg9EsSP56xXxI1TXqj+e/FV0nxuOdrjCmDXRvrzCnq2INTyqGeKoIS2t/Lw/JC1B+SWIx9RJMabwUuiYldGYrjBGM5GvuyJIlNctZvVXk1VcKSAIlzO6kBsH+QImwoYSU/tlqif/wEZordatI1k7QQTbzPf2nYEoQxM+oMpklalOI17enXw+42gFMzKgDb7XJvhSJ7JIwRpksvub/kT9Tzo0EERzl2xHflVSLaXGYKO1yfXlQJNckx3HkK4PQg5tHM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qGKEVtPX3burSGfgSM+/bBC1xz1e/N62uJHch0liSKg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AmAgA6PdEQoARwwC/BsIJJCPH+znust1nV7GVTzYsmXEZlrFc8f+MmifUdasgb3bpavBPJwwj2G09OzFXq2PprWbBliAPVi7inwhHDfKtTIEhYeFF6cCoK4cPLIaMy/khE5TtuGzs0IlJJm/rt+ZcM4CPTiugeAy8qyyf5alhGOw2jYFRXgutGnq0Nh1HMjXrCjYDQ4hAxOJTgSHWb2Lg20/9Al7hRA+sinIQ0ecOcwXXxrH5RnjFdYUlwfIeDYgoXrvpe7NjzDpYVkvU+mOqpnnIkjhJT0M4cT6WC2E0/Zvz6v7oHPvTPx8NHCjDZdzYCezz4R/3JDV2p/nwVnWbAGVml0Fxu2jHTnRRrC2VDjvFBVYom2DrFnFGeYB0fG12CcCqkNaHBUL2l8cvmtn35UJ5vS214wo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qI2IWuKISvNq6tXR79GV7rF43/zwlIQ5P+9HzwMZ3II", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zJiDI4o9uefHPeub7YxHIuSrigf6AMkm/Vw0/VD1m0m4YfCgwFqEU0VBXbDhHIN/6Tu5MsV9gKaGTy5cELOe51CzBCdCU331oSS3PTjLzpjS87DGllAS2nEaxOSfJe92DU12NTHt7sLgEZFScE01N2QFErcWZArXwqqNpZSbXIwmNOM7Nrx3EnbZ96WVPmFrbq3QdPdbP+CWfufbryc1YvamB63A8Nt7xWuWDWsmux4591hb+stbX7lJ6+jR6Y89t4bFawYE0qZ8t/U+BumNsmbEtGBrHdpiT+j1eazPaGYJS70hjy8nAqDPq3YcK0BLK0WKYMe4R3e7Nd/jhr0wKGc/PXuHcYpWeLzVRZkOj4tt3QTtiWKJTGMD4BFnEaR2iWiWcljo8N/BLS/2pPZsEXU1ysgTRkko", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qKJLadKFxT8b9/Dcov1JkJkN3cPHm3g/nzxhYfL+rVg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9DwGQUY32ny8tIVHw4cDUrD0drwDjdYTvuCT1368AmRTAkMBBUi9cPGc1sILuf17qSOUulU/vQlxJdk+lXlPNOM9Bf5JfC+jgktavrit60D/kbZoaa4aV2cdYrMhrUPEU6rU7w1+7ejWDbNzg3BWn96Rf6ivYwB0VziKYVhyxZcEMzBSRA4HSwICpzTBb1w4LZQJ4of0bwI8Lu58X3eJhmKbNrAzgrAEE2PoCnZ+VxiXSGD5gUc7mIiRiCFDpICYUTpdmgCeakimWoAa5l3ZV/3lTjVGG4glJ9M/JJfnxFw9WCrnkUXyVLStmOU/kv3ulDNa8FVufurRrP6xqea/rAjk1bLhjzBKKqKzneSa6dE4YyhSU8G5/qBgT3+U4wXV4WTqgK4Us6u7lgEINm3CmADWCB5vzyi4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qKX/i/YW2JvIfpoDiNhbrqxWC0PdYrX1ibdOyNX0Pgs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4+z6eAKfVLZ/rtv93gIhgUIfYvyZbptSSzCATFPdBnZVAmLpLtgS5qbL+rC/yXr2w93JhZ6dCy+OnF4uWgr+cqY1CSaQq/KDS9Px52JvcIlKsr2xOQ23OA5SVHNENpuUbWNzf7NpfR08DouCY2/owMkljWEglw6YhEr6sKRJDrIfTlgPgstiKX4MGIZv5B9qykQqQVexVklPs77fwdd4rONSgw6P6q8oBK7EO0VVDJjyIbM4c88bkNDkLzz5XcxpL594pF81O2dvKgmTJp0uQd+8cKgKhqNHTEcZDMtkEbyOTB73xkTuFCfQexTqjWdswgm5bS6sDmMkC2k55yvTjCN7ctgLb6Ny6OzeTogvWqR3GZFPz/EAt0JLiTmBvDJgrpQFcB6EvYFvuf9jkmEekT+YRhwG3F9O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qLZAXsrWx1JHdgFsXnbciaNJvL/Zv/JXXxU8B3bbkVc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HvnxeHG8ioaI84kbfpxG5QK0skRl0Ddqs3OdUE54fqCqGJwx2qsJOcyEZUA/TT/N5JrarAJIo0FCbd+uyCtjR30H3GS0L/4uz+FzwImNxXgRBiU7pSCL1VBx3bfM9CC2mmMr3+yxkFpKgofPhWyiEoK8sSX+7OqreV0RpA/jdMQ3Eq05QXajzAdr88Xiis1OTfEK7N6iI6shlb9dthCO3HrWcZBF+GhogKMDHPxs9EkzyOMx4go8/mIcUBCBA6Ho6Uz/YKqlRSRCjflCB3E7j19W9LlqFbL5JoSW0p6uf43gqr7519BZI0VIqsxIEtntVom3m24g36QTTSDnjEvKisLyQntoTGVKrJGc890B/KAq4jVbQWkYZ9lyIDn7uHwpeUJAZJo3d/b8ToQ7ikIt1oXpd/j78DoB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qLyThctheXaAWQzYHW2CbDxdAvEqB2S5MA8g99+Xz4A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YqDq8XseLWHdh8w8l51xHfhHeohfh3AOFkQdXpPPC4D4aD1hXhRhxY7xrWsmKjYARgkrXeScV6ZhQImtX9B5mLktE+dTRtt+R+3hS3iSgErXicAt9LiIm1+YyCK7KF6XfKUrWG6CS0jDnhzHCil5A06sQVzSZDBTs93Cu5sK0xv01mOzUOE5MVnH5nHHtq3VQW4YG5ZxCWFCBjQt86+qyzk1Tp/QLdxZk/EKLcYvRZUi8zFyBpwakfqdQ+I41f6ZaOhKwXPeRu0ObAaJY81xU2Af1GKrKf9npaS7KVD3PkEGMDQ8AGwzwS/ZyHRR9mlwmtR/xMBV74HCSCOca031NRvEziFbZfOrDj8FZ5SrZZRTJrSZr2nVti1iDSPOdTfI53btNjuLpZGsIa1fbaax9SXrC4dNk55i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qMq6qVbZEsuwI4VbMUd5hMbP7MTx/pkHArJS3vuebDg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ocNidXarKQbi6rG1V6BctSWb9boNRxR2D2x0gRJycHvWg2FtEIl7IIIjiKxmFyi0RhBOWPSF0hg4h1V/jp9riWmqBHt4O+6CnGUiAaZQ3haxj6QaPNKfBmbifnUFcZ/bUM4pAD+SluEZSNHRMkL8Zcg6MNS9OuELEgZXQ5SNJnL72tGZN9byRKL3FjjaKSsNdH9soAwFROl1MnqE9zzBA1O3TJoLPq4gUCfpGD6baZKSon60z01HeEt8yboNZXYAMBTuTedAOz55aI7kv93xBkwahRXErWESiaBhXrm8cQuFASPOMpou7KzhNNvw6RNCxNRtsJDgDSZPBsVvA/wiYT6laILwGcuY0HzpanB742KlrlJim/lzE7oU0GIZJsWRouCmLjMfW5O25vJM6C4XIxsz97jlN+Dy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qNV4PbsNOv+xji0SYaCrwgEQN5S6oNIZBKePUccNf8Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V42XqWo3lYgSgsksKfA6eBZhugraV4qJZw6nuCM5mCsMkCJvRIctHe6Pk54x4yVCg0V8DFvVq1CnSCmVrH0SazIwXSGggczXvAstxvg7SHy424LuWbRRkadFD1vISdIE2Qr9qgdQ7MMk1ggkBTJwSgHhMiFpX65FvVjRxplM7hvzMgcSuPJdPqWD5r3KBURvH3hnco5HYB+STpjNWU9EDktYK6A/p8MHXTEvyXBAO8lOPR5Lhq4RCCZHmxyMM8JPO2RebP1ao/oRAn/theM0xij1FBTyiW54xlvD6Q9A8hDguHtDdM354gC2cNxXWa6GNYG6RqJnNLfPWLcY7goTRYTe1qX5+ofTar5nefszq0MFWzRlPbnqLsgtBwaePNmoVJyZQwaJUT0wIQuI6Ry46ob6y7ypHEsR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qPCRLTtWvlrafST7kxNbF5gjBD6CZFBuZVtHT3EFq1Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r1/PQA2lbABURLqWA3i6BC/+XAflmD+ut7wi3ixuD67AnZrRLceUkjmhh7T0Sq4xjPP6/wbLB9kF0OUIZqhJhG0b1Hsp/pVCsSuF2dHhejSmp7Hri9t4wkcQwZOBwNFOy/wktR5EivBx67lzqrgFtJZa7/Oeqg+WKwM/hQg/sF2yNIg9/D+GTM9eudpFbfcIeWygtN2r2+KMakYKLKNpFY0mUmx2YtYr2D3ccgx+8zg+6HxN7LLkO0QaRAT3eNO+8MOcLfRWCWQ7x0a5UheqVSX3hUB5eCAUxPlXDsLeNtnsTYUZVwRzHWuhOu/klumByUdwdbRBo1p6ZhxaNk9mRpbE/5D7W4kqRg0O22ycaJ+k6hrk9YogYhP1rGwGPlW7G75vyOSsY1g2MKCLnSPwRpI9AqUDXmrY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qPKL9eaYVpWngfwNhsDwfnsNs20DpHISyRJmtY6jPfs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VcaGgmc0VZSJ8cc6f2jRwlTQvluSDYsfJzwbMzc/q9aKUcTKsf+vAQqWU/Ps5ge1qs6kfGgaml8fqQKbw9spUnNK5KykyAHdAoBiQWew9lKajubOKzXkATjg23T55LyGpksfwK0MTp7ogvKasiMRly3Hwo/46aHqRaEafhyJ56ugOvXep7OnkNFQtcTB5nByzdBnTuVFpR2UZccDboT4opjBjjYzo6FgW5uCEgQyPGq/tEe5UylAZlMFqBMdkQ6JdnDZnes4KiWzleqUcEHmdoxAv4U3AtpgwrqsCD17P/Ft7oupXLpfSVQEb1lDKGqStuqAcIahu8ZlUhy3sPpYp8znNS6oBsb75Xiu1fMTeS1SrYlFjLF55fXFph45MOUnsXRUjT3E5CSi7ajgEWQP3V2p7gDUzjTx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qQ5gy1eI809lWW0kOJLZXcfkOOFawWtrazSZa0aAS+w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m7JkcJLU0FpzjE3xFZe/6xY9PikrKtwEI/8ox5XHKMyTyNAtF9yK5DIDsE7BSn6AjTtv2Vg5uli19aVwNwI0I4zMII+U5K9GSfOnrod6v+rA4aOtcxzDwsXsDiiq5X50LPEpbeh2KwG5oHdF1WfKFpWNLk4jenhoNEDf9AgoCc1UWKy6AiDirONZk34Rzn/Umi2BceUaABzs3B/TZItD2IHUlblt/VdOqK3FPGgoXH75wpX3pdzlNPWC+fG1n33cVcS9PiG2wGNS562ItX7fFzH6hEXZoHUyoNGRI4NRseZvipM9HGSLxWik3ixUpw9VQlmHB2Ta8RdpDwHSsID5rbnlkrxvgF4EV+Ku/lGEt1AR7EMfNBSJDeetdMCDUQ6xtaIVxh7T1cXoNyRGakShHGFPQPsT6Jtz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qQYtOus9K2z+9CVxK48i4SzuGAquvY1FrLcyhYRbveU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oVDnq1RIMgm3ClYITMhr9bbHGFcukykRUwQZQhbjVaopPvQC7JCpMsgpvZiK02B5B2SKZ5Xj//t+pAxNCtDgm4mnDulo+amTwGxdXCvgab3p/j+KvEohY/gOIhBrZ9L4zpsnt1SotdceZ2ikeWWP/W4Armmr/xBzuK+6QfJZytIOkbP8+QhkQHEmXjw9/kBpTI/fJCi4H3X4IeurM+IGGs8tKaAybNiwqSrYB0qRoWuRh8TEQzV9MduxQ9e9yZdfAdnTVHj354Q2AbvAL/Pr9zuoJsL6X0ue/g+uaNbkPuYOz1D9iY8hIpenYTQwy+9smOFWkpBZgZf0J6d5iecoQTitrgn8zJBCWkivjSoLKC0iSugFrN9Y9d0iEMlpvrhyPj4lIBPQ7bFsZpwfJIbXyg2Ub0MU6VtG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qQmI7TJ7gECOUaaNt9y1HPBhFBHbjBObjLQhJ2iZx3g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YNyU7zroa2oG7XmMN9EzGcbjDwM0oPDI30O2R1tJTpDQ494SZ/DjAwyCX+0S6VovQ5i5Lv6jY6WI7Jjbwej9awjKHDbnH6fgvBHrbUFNYlJsT4VUlsKVWuGCpD7qLgCf8d0x4TCK0w39g6o4nsgvTjJXNA09LLGV7frVXgzk1BrxQ9kT1E+3gdkY87jxf64SZuyM/JNn3RyYXtsI5i9yCN8Uj1SzZ773cwaIQXlxvcSm/l/HLEiXPZOJEnZFGvQmxzc7bnOV37SmTGAuzKd4KDfWMn8IjCzfygUA4+fQ5qamdfRf68GPAh9hrdjUP1VJNNT+cN7BQ0jQZPFcA+8Bv6UETuctu40Ymcuj42Ve9VeoY6A6nCr2iLMqVEW77mVkpqtlqfo81IYybNzhMRiyQW0PYYK/iJwn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qR0Uoo4F2BWI50DOKCQuiXSx1COqYuPc0NNCK8C/YB0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nO/TubUyESsA1N3vOcGn64kfutKAhv9+isP8gCEvo86t1L+AXmbTNFyQ/YyLCamMDvbAMggljgdWPG+m4MCEvrROKz5nSr4aIa5ftmPRuNfCZTFg+u8V0ICD7A9iU/yow4GhROryMJwMiMonnd9a097VtAbKczKu4IpBYuc8PC7bT/0Y1HxSUeBwgTIXMci+GuuJyPeK3nyIXpKpZSGbR9smb05QgEs8/XV1JTvYKWFQwCAiH5Tr/tWVSvjdfGkYvHFAvGc3I0B25DIaxChTMvdEnMYfSvWLJhnQYYSzc6CphVp+iuwCu52gp1eQV78su85jVjYcsqtM0pX8AV+nDm7Nrq1JyyMGHWdTfMSRc0vPlX2XCwx0tY0D7d7CxKyCg8oKN+iwi9gdHHYNzxF30z4UpNdYZoqA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qRH9NRumpu5bI+FZIazl8DtCyLpthsHUyuIcKdOoQkI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8iw/tV3qzYfaXJ4CcWlwX0/wcuL6ytjjepq2HeQcD+r3n41PnCW0vXsVvx38YyAnA4ZYRxSX65ddx/P7GQ++1ws52/oFe0u83bn8zxzztB09+tmgUlxELwVeLJmNZwS+i4HHtAnEBAnjtDLBdz2e3D6QUih8nlsGExU9KwPR2PHshx9I6tCpZHjp1FCGj005g04ASeBqPva1z/Fg6rwN1XXroPo+PL1qiE8Fzw72RFFqvy7ymEzq1JOBIPZh0QnmN1OU/rAhxqsFTwcyFFtVtS4tSTNpcd4UgzeftwxcFjGve8unADWXwJIQsG/G5R2Deshy6wy5EnKBbQb6ndFP1Izpfwyx13ZLF+wCbw/+XbbxrGl7xd0nNMgwTeqOy2srApcT+QaqQlOIuDP9pNdaNS973qJlO+rG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qSKLS3Zk5IDDbV6HhR33YlbTZhprsnnxbF30n7Pjt20", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lMcDuJN8OoCS0uO05YEKB1SsAlT3S0j5wvvyT5GKyEmAhLTqVxBO++CuidKmfHDKuTthDbzL7XWEdUkmfW4jJcC8cbK2138t9Faa8ZiK0feA5GCh5JzG72yB8zY3E5kuuEOsQAZpJRUC6ixn+cLdMlo03jdeTnEL+TZm/tn8Ngmwp1J/BXJUgZAw0ka4mYSaOwZmiCAf9jLOS/z5fMluHLB6mJFbVlfjTw9qfniIDQu2MkjnmDBrWOBCRcC2bjjaBRkQX4EHGEWLbSpiNoFvCQnJq1rMpeVT/cU7KKqQXOpeetAZy77sCvs1Uk9q2Fvo371e6HSma8MMQ4ObnVzxEj337q2s8dMjo3Ftin3z8WkxLppu4JoHUb0kTf3RXpURm8XaFU8MDFs3pLU2bc1jJlo+7b59EC1N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qVKxUACvekM6FOfqXLg5XvAhL1i9YzolhoV3QRWnDGw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8XSzc66RaDW4VE1l9r3tp9iXiri5FeI9XbUvSYjhaxea1HXigljWZOBC4lG7APBH/TAhKH+sVUk7tAPDtHMCi+9EzFn0j//+v3S4M9O8CqGT6Ps4ChPoLRy3ENgiugzMm+CTiVJWvjHr8nyhOOy3LYTLrfjNQLef4x0vR6Q4SFNAFYU30eZnEDEwnhGZymO+afTXEFueutPcA4RP6WgNpeGlibon+n0sYdNeDcdKONTp1cktXKa78ktrXvHTz8L5OAYBb1Ay40eZDOosQf7myCDU+Hk/dpOYRQcBHRA3ALQPnpitOEariucpWV5oOznYBNs3iLnb8pxxST2t9cahavTft0oicRNRHRVId8nKpcngwLpNhviaHm0Tx1jJ0oKs9yJlINqhGffq8iupGf/Y5tY7c1gsnJiv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qVShjOBpIyVEPEPA528xP0M15emKuZzJGMnIA3vxCWw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "doc7/pcUobiMm5zC0OGlVTWqP4NfKWJG5eXNBQLwf7QZD+yqI+hE9TWf+ULQt112xbIOI5lRwVLkK/fGyjbIuXNRjkSj4uGRIsv449ESFeHUWo2MO02vRqbD2MqORi/X/AzZmvmy1OzWrHA0H/e58K0y58X7QT/+1ewC6qFB8V9ooMh5dDHLUIWkD14RIlhe+JZ/2kcQ6qOxKVyqlEjkIGr7oz1RBHgHLjk/cnfHZUYR5i8e+DuGyYw6+ghDEDyFWO9HES8nLQpCdQZCgTbwjjw6rSlSbDLTmYQH38xfi2zu8EkH1dhHVVYyHZ5gVzsBYilrygJKOffPI1ykejDFzUrnI+3HbeQjhLpUgCNlNW7hGf9d95C/DV26k78flwPLwNbHdXL43faGxgY4zKIxrcqBM30Oqk6w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qWKi23wZkN3JYPcPLv63gCqLj2xE5hNSLP9BNjlwoDw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zfzDCd5suH53cVnUCOZ0xZK2riNa/wEtiNwYTnrPFcmKPg15EwOIg4MlzwbAlQKpkFAn6UO5uyYwSVtYOP9Mh+jrdWAAbfAbhhC2+kxC08C5NL+p68Qyrg+0qTGIODPPcczdNw2s4pFoVuOBB0SkoDWEZq/LOBCophYHNTIbYfO8AtiboWMzU/mWy3BqL3BVX5+3e9Bf08C0xkynjmtqsC4huiRTrzPG45K+saIbXKSGZq+4ODORaYTtJldeOLWZJB1xpsGAGMLcOn47UGhPyQwGb+66PY8h5Iqyg94raez1ISWuW1To5dGpNv45XcFlszuXlJ4MPT92zMzUpiBYbQNr59ONN0JvitmQcTiz40O1PHBaa9COoN9jquKJ/1ZTy8CEHN/+qtWFOmWhDovM2ZCkQZB8u2ab", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qXOnbxibzduCWj6IlbGPCe1epKbSyAYGXRALdfO6jdw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xM8vyOzppWmKshFCSuQa4101I5mazo087VGKTkNDpziRFSm2JbGrzu/JfZaQykrFb611cxcWSshtaiqcZ0Ze1htQ/dTnCKoDUg4hlpNixnENGdPGGAH0ufGgRt4sNIhWEV3sNrfrfphZZB4DjzE4adImAl9fY2QrugVQ1aAbEfMtpgJapi+QRftYXdW/ntjWK3qKFS4I0B3sMZcrr/f44GhQMw7/8ezUowcA9xrU9HnXAEXZ/9iYTN2TL4cAuTxkAn+eW6HZSlMdS+4DxVDjyAMQjzxMUI++mOS8lFluN9W6SC2S2yVkcLlBWxCdB2/DMDV+1t63F5yFYH5rNXVLeQRDiUhZTvSEtncijO54Z1SpbG1nFAVLdhJcDGk16g0/IQlPkmcK1Ss5ejBajHrtYJBjz3teHoUG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qZOVQURJUcS51NAtrYe/gXzR+gIUlBxUp3o3nb+twPE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "597FFV+7WFwp0LzA86zNcR1ZBjCQ5Kkbh0x7Fbn5dgvChCIPmWkDdy9KoTkFLv/voDBYHfKSeQ2FH/nJrk6OXgow2QUSDzcyrKYf0IlLfcbuEuDp1BSpuL7UDQFPuhZigO3iZf7J9khdDhva4b+ZPK+oQNVt25SNTIvbAXsCrFrT9YoZcPHibUt0WajFYbXl6Y8fpMV+5/sEFbblPj0H8Y90ju6inbDqmnvgEGIxKfEx4PV8VX2EHvPXakJLcm2aCf9pf5I2Aa4vLBBkxX0IbxHo++kjzm/uNZ2KQvyREy1AOLxMIfuV7Jj/zJP3Sf7/T06Wr2MBtDtD4VtzcV49WpZL7aze6mZAkqS2NUZFrbr8DxU3HlqM7xhbFqxhc4hH9UXHDwqXBlKsLqyG4BRSkxRPpX0WuXAn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qaGi8zgRziSfmv4iDsVmqPh5IKgXalmqLUaww+gN7iA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QkV0kgRr2LDHWe0tarw3dn9XB5aixftOGpGTp66fTsQxOhIX1QMBY+qC5hCNIpM8GccrdSPuSjMhv4GydbqsEYpNMRSasQWoXlOiofn4+GlyYmc9Fc05pGzQNvO3Dt5cCBZnlPibohWBQu4biWxX5aktC982JGpTe4HjoUCihzaIQvRBYp4c/j6TCeo13UOu1KC9tb6p2bUDodEYViC1qyqxqXIsp5eP7hpMf5BWbFZwgwUWiUvHn/bnFMvaifOn53wZxusyMWL7gwBqLe1/XK8UVTSNCGB46izaRLHHUR5vcsghQn6ueOWQzxvw2BFRqZw6sOwktf/EE3BawgUxYgO2dDy3Z/T6cw6hQzEYvvJ0NT2TNNVcsoGxCOCCQZ4z9t0awrtXci6VqHTgFob+Dm7oZem4CoYT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qaV0V3ZUG6QrcxJ/XYmJfpqIRjbQnh/aYPxgO5bY9FI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0VHKtz0cL2YkAnIxdxnivkBfdRGTM3HKIu/A7ZNgC1t2Ql4pZb/TxJf6RsTfa0Nv8YB22llxkP9PD3xcIC+41lGy3pRum8jSPdrGBOH3LOQbl9QQgOwNRCnsvjjFJqSG8enhyzKcU3kqefabUVcw6vDX3CZXMfDeyEGoJEhJX1mGvIKequW8Ctwdy3BZCmiRJJkLTG8M6KUID6edl+fm9VO53INxreDBWTn/T0CavrGZivHB1xzcoJj6K6WLbseoPv+xYgJE45ni0WFGyzrAuHjlFYBXymBZ8I0HDEd8kt9A1vjHZGzcW+1XSzenlqfsquCR16WBfX6htRWgn1R4jPjG99B2gNMMKbx5jI7hreP1lfWJvtgDieBLZSIomgiUodldUaS+uq+/qukVcyqDwepphwZdSyCw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qd5dmjNbyilCF+oWcNZdo0gSfNUKsBLOrZ540jNBJ6k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hB41ThWheYRd+WoOy3gKZexmOxd2WPGp+paq43fKzHE8rf4RFn8/IbpapiDMYLkAvoeh7ZKlBEvkseOvrpvBZ+wuLoU1XPw1VqVStIv2Jc3k4Drlic8sOyXpv5uDhieF48N6xcNUu2jk708SfjfNRdZqTUy+x/bjeIc4p67YS2JAfAOYwPfYGVVSqD5xCLdxp+nr/kLQJU6R5EipVf/PSIPpqUq+abfpiWFKjWd+Qm5jEScBYxNvU1s+OCxgWaMPiGmXTNCUQap9BcpMLN3ddN6BBTTIOOe65bipbZzpuMlcQtXPg2tgUMFcE9BeWCO/f5CiRObg9Y850VPm6MezggwAFNuNm1lkpT02j/w1kwWmehnb9A0dISbFq0daxHEIclrYsXnmxN13xVn+i5TKWWBwX6yf75B6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qdc1lu4GGWcnBQOODwmAiTsWJKpbFVZHPnMoqlNjlsI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FzwoXj/WMltgKWZNN1EGQ9aVtjGLeHOUzuFn6eZ13R7d+eBY6d7kYtcmNlfBLCm3o0PyrDEwTHtyqyChGDmFMYnC1Jug/n5YGW3l2sKwaCYVgbyvz5Z6pjVagDDkiOUnrm+xia6kss3qNBe1HLIkvsDHEEJ+WXZ51mJc2ArY5gP6Fsvvzu6g0uF70QUxnFr2d2/5qgKSxBy/RxhmbhBMIDO2NSw6VO8p4hEG2b3pbgsuNSpA53FAIZxTSmP8Fj8GPa4+FdnNniwuDGjNzvi5C5QGJMeoxB2hC2zCKlLtUQ7i2UCOqILR21dfyMcrLFQ59AkreePU7Ck2gj6J5T6oTu4XG9veGXyxHuDI4qxgp3nr/1xtNlluuK0/Th6w2WOqMV5WCZqcE1NBQjIxyzcf9kq4gEtoSFWn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qdp86e0FGmZ/0boubI/5Vrihgn/niZR8ZcP8nC1ymto", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "h2CGDZHOw052QMmS9jrZbD4fhzG6huOX8CBHGGC0LXQ30+1O5QuHTdeFoRJ5XP7SpuRVxVT1gkKB1CcKfYROIXnOvHaaHMm+lNIR4BdQmr/nPJ2qNeyBrcsVNz4gZ4AFvCgqqW7cnht0oL0WKcnWTFXfkF+fNVO4qAQby2Ga28iNUqHkGKkCQlNiAlPpAZ8JR2Y8qmIDG4DrwePec7quvGwDp6z3FB57XeQDOMaJ+va+c3+DTESZnhhKCPFKlLWmA5KPrkcJuHZq5f9IECQod9xsU8NE7tR2RR/BIR0y7AN9jzQd0/AX7LPfG5spIxev4ABquF/cCM0+wjAj6+xCm9xx911nmcSUthfFEonHV1bMsqPXcfN8x+yxehwIcIYNdXMsWDdIxFPLe24L/rfJGDub/LXNj5l7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qe3mo4Iu3psoCfL6qjztoCa0wmf98eNMWVlkxdglkug", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TKyaWhZCBPRWjbmgcJkP0kog+jKLSxEgkCZQ3hiPdOiSogr4D8yzpD9EkVXtF1LSWY0aj6GTvl71SH7T9kwozWqLoJU5iqKsho/IryHvWCPT1ocnAOkU3HC+F5vZNUBl+Dm4Gbe1aE/mwN+V01MElgk+QMqVG/FvGigU+HILg4T2o0e5O96OVkLloJ370dLnYHKyOa1NtBSXvnpy10smMEFW3/hCWCVEF56l5XufuSdIBQKrzMr4fPFWMme3XMko7FAITlywpMPE73c8LDsHIE8NncymgFKnOg5Vr14/KrbRo6e3jFdZPGyv/grJOrxwXZskjz1SUB1u4iPHLTG1hqexzkkFUvS8MsHaYO9qHUGA++z7k8Xlmi1bXsoZwDz0xWj0dyxGV72bvSPpZvp2uLDw3PwLHfRM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qe8XMEJgpNRyxVjhhLdf4jotlBTt6Wk2O3EV8LOFyFM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nPEs5dMtCgN3jSm2xDPucoZPP73JspCoGg3K/WUV63dA6X1Gvp5eu2vNwutH4+ODtkoM42Ihjed3b41+g9rVZ2BUG+U6PXIiwHfKGLPppguYwKs+Di2HZZpGosOBKRpl42thrAFuveSL/OLpW2ar1k0HSigWd2X5ymLiOkNOnt6zc8AH/DwmTWY11YM1oXy3sv66HNHHaNnUcbVHt1HzCLZXgjOcWmq1HQY59ouTYGJVbZwVED2xRFld0JcrCWJ6fWdVA8hNPmqQsADr8UUaPubIIv+5IcIwQPR8eV6eOdbaEprnJcZoN+8pweP+mAam98QtlpVkCSShLgiQPCo8yaZSdCXbsOng+Nu1G8MepKM8r/mzuvyVSApHfC3VG8lXQ/TjuHS6XUBHnh5JqTEnfcWHf3kIUzE8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qjaCQny5G9jGvcKHBRZrsmqDsu+TLdsZiFAtJ+Kwiiw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wgi36z7vhlwUXpxcYci00Qlh3GPwimkRRZh1PHWKmyyDB1mmOZLFBMZeBi4ZS17cDGwWgw21RkQRqpjQdACznwO+qYkTuUl7VXfR0nV8lFzf9VwiAdS/sSskvcjbNeOCosX5kgR0aXaTTq7Clt0E1sxH3IEaCBPpZXOPh9K30BoT9o/MXFelVWrOL/key8gJXCLkuzIr8LtyO+TmcLUluI7v+zuS+SjKupllPuPp1JigmMmspOJ4NPTl0lPPg1elLpJa5DXSbkDA17smFPBbwmb6yQKDHenZXJBlF0/dhivpUkLNm/RbDah7aWCh/zM//TyHyd794j0Ih2E60T7w9zxgmMgPC/JrEWIqS1X44N0JIty6mBAparA9GFiCVO3wSc2i/HtI55RogFiPnGGj9GsK7r0rf6FW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qkZWj2moc4WsQulBSgzEIKslhtYlmRUJdiaIWIuPaE8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7i6LMzwBKqo8T+FuCjnNMywKcw+ODJfgDp9RlwJ5LA2Zht12uLq8vMuPVvsmmOToanYCPThwWF7LkA0s2bAbc3f7yIz+I0qMpOqc9i0y1dIVYkOLyUuBnnsA97BPB7RXyJuqETer/i+r67zajMIZA4wB72rRcfkdxc9u5ehXNrSurqsTakdv9OlmtcORdPk/fuEAVB5T1pZyYGNkjVf/XqNmRGjIVALkavEObYc9TtSbVmPueUHdG53rHDRzUkFew5mQhE4McVb7i6sQ6drSUPVRdPTjM/v1T4XENGei7uHg/jburlnC6rxy76YHf2eUInALah2s6Uo9MV+Gg2/tZ/ZGFEZ5bnoYFa52i45y/z812WcfWx3ejBDMtvZL9ykSwdCa9f9K/Ef4lHjhFIGq/jr4imTW72qV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ql8cMTj5yWtuVbi9DuIdEZR6ZJ1r3ttriY/pG4Th3bw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XfOeh1wJWYzNJJQJYzkmHwjb/fOa1Z2lpb53nWiIcElk2yUGRlDjhnzhtv+Op+J6GNlIOghA7FDi6reMMk2P9lOGeAaDYKHHwodHJmbtKKGFz+XUIhMhH5OHHcV6IAK8ulQzHhMLSnoGmiuaOwpI2mNyUx3iNm6Pm/Q6zJ7BSclIeiIeZfJ65+8wlTQDmyuHDeHMzZgeUycHcKAawqz9zLo2120Tnkh/Uop3xt1xoRnFtykPPiRwctZyDEDNYiexYrkFEcipkMeCIcKgu24kCR8BfWP38db/ZxekCs0h5jNLB4/Ua2hvVpBMrtMoRn7FtYfX29SexsxmXjh9XLHpdCGwRQ4rRYFMcq+Hf6Ohcti8d5MePfTHULbUKTopeyO9RYkkmPmBJgZqSIlpQusQZdVcteyHv1k0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qlsgczvn8WtJOoSvHgqOEyso4SQFq8LJxYPgjdhZdPM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FcaHgeb8Eh0RCkhLO56KzeAATHKBb5vuGw0JyTop2OivAXGGl6CSmXUaKsqM7+xwPFlGS/NhreM/i80emijI6lqGdGkKhOateG64RGlTzqtumrJmsZj/ZhLexRDHG81zmWnpBNMl8DLQ5RCb3H8g5OPNiN8y+RAIOQcCo0t3lWFaqZSSXMBMhA9rIOJzwzIiJp3O/RDMR+7PGh9NgdyGG5g+ts5IN413fRRju7l1pMHd+C5Vg0j1wCcnolBYtzpS6QNeqkYlDeA77wkLl9DOzhp3JcuqDk6QojE+qQZCFC3eHwP2x1MlVXIwSEGLUsEt/HDd2w3d0Gw9A5NwFKACKQl4vOyGB1/xNSjaPbhIh7egP55CD91bkfIpcayaLCWvFGJxTVyR+L/ZwdcJLLjSFPB+awh56JXs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qm9DsukQL4l+Bu7yz6MfvWlL8v0m/O6qL3ahOORLm/U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KeA6dLGrE5k7txici5/S+ThfyQ4YMdcBGWH/yuNSRh9BTgJ5/Hrpyeif0JBRIGD5Tg7RBur6xsUqHoDmg5e51ODnRc1MaLn+uKhYk/+nAvB8HG8tVisO98cqp73iFd5vSKhPz6gjlAPw2XjxV5LG00rFexapQsxdn613ti2XFdl7B1n1KxrzrTm1ymZa3YmJ+eN/BuQSZ/6x7khMTieIXpCvKBHGcjRIKejizoYm3THTy+QfN0zjYQAqrChPE5ZRXztUOFdXAssGqPzZq73zLYNwShCYfEoLJrzlZL7xrbsR8nXM8435YqbYuF17WIKnej8O1wtcpo0jmMNiERN4XIRxj1qlxrtmAIAScf9dnkbMc2Am7cYzJvU2toOa3ISPDXI/aax8sP3uqqLojW1inFb7+LLGoSyo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qmP7DLq39xkaRiguB0g9th0fH/SxIGA48X3wWC4yp9w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5STBsM7tTfW3fxj9cRFx4SD1EUj8qy6T1/mn/MX9riOOXq+OIRQkmjW+3cp3Yt7XcOss5hJ4kPe36gPxBrcuEaA84pdQZTnw0sh9hHcyJcgBgNd2NftggyAuqJ9kfe9yuJ6fDoptCgObOrA5Em8bfPHhBl08zLyQ40ui3bLYDPYMDos7sy1zI6VQbUzniKTpjH5Xfw4y6DvSfgZmV8LleQta7fawXUR1w90p9FKi49gSRXo20IkT2GQwIMdLuqKzGF64Mpo/+H0m2QKNC+CSEmvbYFqdnAgwtF1bBtMMPJW2vAw6fx+uDPbsx30RavrUxx0jvvx6c4nfBwVS61nUTj9pjVEIfD5vCvuNEq35FkKMjOEmcIMeXl7/yqzOUvoCoV0zc+Mi0W85jZhCLtxA8wbyTyCdPP3i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qo57QRCqLRLNYoMYG+QgdLBq79YJzfalaaXSglYhGWU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ipoos4o5R2tkRNSUzRahEN0cbT7vRcj+zCpnSCQj8dFE9DxCZrElW2fujGnwIsya+T3pjsI9QVWx2VUQ40KLcOJ1LW8emtuvGpml5hBTSl808LsqPk2HK5PkQmOia8tN+Dx8SdKFlrB22nAIU6OFDADGJfdeN6pdoF0/ux9/AbzV/XV2MzFg8T4Fi0YPbaHBVAiXWVg8t3fyp17mOs11QbINPjS7MFbhAgAGodafVejtdVaFJNFb8kKBUNQ1OWisqBWxWO4XVXu+AQBYUYIKu055d7J9tMzUJkAtA5ivcj/q3/EPmvT4BKkS080MzAkSSHe48rhOyxOmGh+eGhABel/Co/VYrAX4RVax2J7Fb3vf7q9dqaBetVgsJrDAayzgtMXNNN9c6C9hQo63d0cc1kzDIjjCYUkO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qonCzPzSBfHJDVMcqa6TwK8UGLgbkdDPvX7Bos4skmA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QQhZhBbEauzqAuc/4IzbX8PGEgi+tQwazs8Mo+frVLg9chbqSVfbPH7LMWczZ91Fvp7ZDWCDZlmakzEa4ttvikwhTWFAAfq78hRglKJV93CUg8T+oLuuV/CN8hNat65MFeCUcAC/HEoWHzL1qY0ajx+142Q4vpL2QsH59r0gumolgp2lRG7gxW8cYWcy65bmlV6g6ydwbUUZ1UvtsMwLWUr9GyOCnK3AxrVz7in76wjSKVCOxzkUaMoJaCshFDGYymTje5MYTpPDrsYGNgApj6a1DKUJGBkV2coi+YOEiFUBS8j/Hw3wpdX7H3Qyjyffx0IfgxO7Eyb93ukzUbOWaDKDuxjAvSnDRhaIpPYqwsQzRq3RNfcWX3Hq2yWTJa4itDykhUelB/izBYTQXT9SZc2Jg8W3ZHMA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qq86hZSkcTA7SzU3sgYRM9bQ5DP15RLCfsiNQXgUJgc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "utqoPSTCpiTTl6A5b/XE1upj7PS2N1ARNOQxDiUnWE+d70Fm5l9f80j3l5km8nh9QDz4oEb9h2f5sH6kUXRsQTJjGYcdql9nzvAYVpgGC6BI39tIPzX4KpbseS6OTUnN7uGifVy6J5vcCkmSN6edoLiN60TCXMFrjPPqfyYD+icd4UedQgtbcstlwQN0v2MmcKC9hI7FJz7wHljfi37D76zMnrIRshbWXaolVGviqt8VtGoZq7XChQF4GK6BchXgjI7PCVMUix42nYE2Y0P+8YR6BedMpvR8c2ejM6mi7QtoPz24eBknSYXMfJQYsllrfT2BzY6MEwk+ati4+X3PYVLYJibg0k+ngEs5sRb1dIFdsKW9cb3VJgDKCCSdBbEB7Q+TjjqBeQcHTqdx44IY6iIdwAIri3Ve", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qrk79hc/j8MOdq0BZ03+ZMghPgmU6hFh3WqhlcykHwA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SFsrP8zMXXT8ZlfM07xxS5PcUPltCm/NqjSBDg2HjZqRFRcXfopc/7YHx8XHw992KhH8c7emQO7DIU2AT7WaRt/o9RiusIJJMR20yawlUzgpMzbxzgoG5w/RduDRnKhDnwZNsaoyA5npQ+WgysKjkePGc/7DnrI/OYGUeVDByZbaeFVGprnr1x/lYBIHV83lqh3jAw1j6Osv2dMFMXI2MC1WS0GU2mI0kPbi71+4DQpx3gKz34fZlyp0lvwzNoCWbkZBQdynPqxytRns890ELiP0hsIi5BoDk34oRd4zbggszUEGGfOvMfauIr41xabhquTq31H72VWCp390NE10gHU98090ZVOdANadRjBlQaS/4OaGFZ9mYTXBAxVXCRqXvXeAW3NwUcxfBRtv0iviq29jZ3FDu17y", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qsBorz84Ga+2RH1DhM5ZUqoZFREcCszfVZxdMrMLpmw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zZ5SPwS0sPM+fwFlrLY8yUigbqG5v+uehcYD/IHSxbSw+uj8MpFdFpO1E1NCdxuyFcorR+Cx7rxRc1MSKCYkXgLuQF6gzRxtgkeA4ewOOgkn3NIBiauQw7AeR1C/D/tyJg23CIIz2cpKSHY8SUuYsRn9/6PtlvYhmwSyt7rOhHz4zBgDjfgGYafJAXfufVNhKJpmiQ5o6nAPzK8eFufqwma7LUsffFToMA2gmh775LWTpPCUgV6tuXLkzE7a0rbvI5g3cUkaI3TS3/9vveEMHVMR6GQwC6Ef+LHACcL4wJngIxegY8lElTPSSOYIclNrltUnswfbE++hKyLIK+jaPXiGaB7VJ7vWrMzb1FqQ2jSncX/dCfyXxKJxITJIqTMvQHEpUPjLhtsp9iGy0If3xi+zyi3eS0CU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qtxzq/sgd5DpvYzgqit2gGBOEpTA7BpWQC13GwtysiE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1NbWfOo7yaEy5l16oIcX0jUB5SXZImxHCx4/xTL77erFffQRF6eADojr4E2sbuuvkpqL7IMKla9OFAZqTPGU6pJJP8yugE17X77JrlFeIpD9pGY/6WMjzV8M8mlKTPCaC7CKOp8Hx8ohFZgCo9brMyf1ExrlQmPxwovWr692FUGFPg77uPwnq7GEgGgmOuGpzLZM4GgCfsL3Jsqh16oqZ5WPa9PFJ7pM/QxWG3m+TwMZnrfpQ5FDpA//+VdifkLXaBJ4TbWrSIo+WXgpVSURptFeoHO5rveb6b/nDuOFSI6F/s8/AxOeRBLP9uWX94qIZ3FGsZIsHBZpB/PpuRb6eAFupAscDDgTtXDoompLYH8aXMUyOeQXGinkQcPd2NgK9i9XcDDKAmNmErryQ+BIMru1KSGVqr1u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qu6ivOQX/3p2AqLk5BqPkS5NG6kzB9eG3ZMiYPiS1g0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gWB4hThRj1QqxQ1BIX+dnb3MxF8znRPDZtAbl4fXH2IIAXUnKW+EHfmLdYAZ4Ccup6iqDFE/VaWEMQvlV6geXvZIWh1xv10iqnv2KiIBWXzQTdSxe62zH4mEWzdJiIqOf4dZ9q+3JdZi9bwQNmD1EI0UTcd5IF/gdtWL0o7bQJSKBOWuLgQOyZnTF7Ehk3rHN1tWYkWoaVNcC6webv1izVtYodVb11YpTYeXxkS2viC8ziWEieGhs5LTO7s19fFoQ/lpI36vVuGIvzB/F1Lchd+XKkYeuhkdGjCz9A/FawZVOBXqY/Hb9E1yd7oP3KaxK7hPwkiyqqo8x5aaJJhvcPZUmphJodKCj9prjodn497czEgCCS62GfvN7Cl6OpvUW05zyvr6/Aa7lCjhy3UVFnFJUnMKycwX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "quLqXuwcI1YMwaQoJFr/TpPl5MGq6UC4ODxe8xNJplA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VSuzQMac7eC9ePeZmjuaRZCiASXDjzbw2OHZ+0pnm8MN15SAu/otd1O40JEaRYWlXe4jtqgXEQ1GBF0itU25qIeMoKx1yQMgreaUDHcCntOWeEtVFOsQyYRAkuxIq4nS5jJZFfBqytyNHBaaS8zCmuyWspSS5SmDVgrMBf3XxPrb9LAwa1gkXmJM9/wWvL56ECAQvbQuPeFDrkJlYZyYp+W4zNeCxbYwkmfvQJ4AscOUi1Tr+oYMLWgOJkKpiPEhipYZlqXj2AaYwYs6RFyNTbwH3hf3LnSd7F+52VSdVAFsJazlmhTLpGkg3aGtBmDvzJ3Gx7tqlIULHtv0m2NBAb39EcIJJhCcZ6kfXDrJBSCcD4GJSERulLmbtuzpovyxd86K5q6OXaBWkavJTTJo9t7yOI7sKTPp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "quqqb1/urowAPGUQgSfw9Avr2EKDNfcBRPiPpOg2tew", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zrmigWUTL9IDXYtx6SLHCWqEKcLqKyrmXtNkdkpoTnCvlDka3HD9HEGX03pQY01B2UpXUNRua1daTC02OVz5pclrhd4P65QYaqg5GRrKwZXmK8c8t8TT4qaFlIuy5JvnQdMUlbQ+iJJcG3CLccAVsO7dKlKLJYtAw0ubO6thX8khSe9HK/NLufigAiO4JJv5NeK4mF50AxsghkZ5XMaNpilE6sifo73J1bJo3hSCD+elY8Wi+oRVINZt9vxYig8KQzqu02GNVJGYJ4I2mAkXdvQkzYZ23WaoywOLUGHX4oNLsPebsIIEQpe4V0G3e/YITvJQmFYOkDj21xKrafnS5ZY3TAipnfg5abmgyvlTb3OPEBiXWl1A079ahcazM41UN6X8+LIFKxcO0UKMirZseq8XXjMEaRbi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qvaulqI1Wvy7qao1HgiQdkEFo9t0KP5S7POnxybtxO4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zRIdIUtgbN7L7z9rbg6Mvl3D4n8cQOUrWw5j/MEUIJ2BYYZqYUXCuHA+M9oWDG5TnjDZUO0QDcnid3mNtAi60748GqwytaIgKun+N5TnljrW6PWydNZv8PrTlh/1lBuggS9MMJCH9hO6+Nyw99HZdJYT4Cf/pN6kGmbTD9W52jP+CcWGkWvNg/RD+EOOke6OlVRGdLNBQ2H7deqlHIdXA8waU+v2D9GcXVTSX2rQ7ZZL2PSJZLIlEtEXHUHgk96yvRuvr8UnrWZHxpaACDqR94nUUwRKDsIDQCJMkpRM6BTiK7NJ6zJ4hdz/E0qIh/h21z7SJieOa2cRxU3YHqhI+bHaYGn7/MwNSd2ysSmjlegEA9/xJ+I2JGv5IIdpAZ8BfKkPUxryLWU1Qpkv1iipLkO9FQ9goN1a", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qxi3hL4ZCGafeWjaX4YKxRfQKknZiSzbcDbbu3d3ngU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qa7SprV5g6m9lxPwnNweR9s8iQAIHhDDGDCssKIeWMFwqn6rQHMRVP5byoXgSrwn4TKdU0qMHHJ9F2SPa/XDdoDtOBGKJTxbITLs9sLdhaCAw9/znFWCvrEqPme1naeOmmvmUduKXZ82PSh6sKI91YLD4lJWFocTmcWXmGxIhtCLt7VTtTOo3Sc8p68/YKjBkM0UGtJgOOSNgjql/SPRFO/7YGbXqaTW7dyDxOah0PYrKzqLCAnBUCge/CNF+v+mSFKg/F8zS2GWGIsofLJDNKZelN1vpcQBqTqXstb7ZtWfiNJozZLlLQSaP5qfHmG7k3qQXjYJNqnNb25EMJBQyfZVVwFwVmgk0yh4RQuvwgMskJv98t/MtfPGltNBsxmgakPKPQS3M/gfaldKlnYrtj+ztwFVKsCo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qyd8atXSI7oBQk9H9AKMXLh4M0nZeabg2rkj+8nJVVw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7YLjvhb2TSMcYHA5D+DBTopkpCrzOPXwC/S8vqzgvdGT49loXS9dPPUoXLYhJ9cW2zZmk493UPgQ4HAHyrGaMK7uRRRyjnTsT4xwsPyN9cIs7131wT8NoEyZ+hb7hVOkB06hw8vDZA4giBDrc/GMrroMsVAN1Y+Oegyf3zxgVPAFWDSOZbr8iHMh3ZAGXRJ6qeUfNAvrljwM8VD/9mr9zh9TLhFcPWl6tOK/rJx+Yf/uTkc2Uljp6dkgug+YUZflJthQQhkFBD+uVo0taJSCrs3yZoIx8DOZzGAgkl8OKhFQezYcb4RlJwCFMQLlyDt0sCAoGMqo80c4f7Tdq+axmOZiTlccYEpZyadmmzdkBKt2+emLRBKMibaqctqKEqK7RQXjT1w7Zz+zmTk5O4D/EHztkwNZ7QVx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "qyylbANirw3qqogj0cNzE9PLxnC2UQ4NqrCVidOKJQo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EWxSoFxDcu279qNevqlZ5rRInEjTxel21KnExZH+R7mOBK8wmciQVG03FwM1LL/TsEhNVko1AcQBB1JIeR8VUI3xUlE8fjHapDO9W9WGEqob3YTUcbRQBReHUaXs9MFvmiDXiTclRRtmdO5/zg3nCG3fpRJpkddJ1kn9azLezADb8nS9MIlfo26v7gKO7HMChRPqyjsX0AHh5j4eb8q2ci2gTIDpx/4jDeOYltFc9r3pm8J7uvk0oqkGiWd1otKtxSfXKrKTBfU1NMuAa7bZFweJYae1utgUVLlecYx+gNyYxtQyH3fQg7ZjdVyzgKa6ZjFXOVc12wNF/u56asF3RY7SXjKqqs0psmkmunwpM5N1JMBGQK9KGpR3DXki7mYPTZEXnW5A1hWQa1V4tlXwdj15lzc3DSo0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r+TSSERLs2TkSK77WLoe++QRreYc3EkQa8xxCcJUkV8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jXETBX4SIt4P/Q9z8sQ3PmaeaIrnsoK+0lum+9qDmdg8yfJYl43RIwJiF2hvqqChlSusHozkbLlrfbkkbpVug9BS3yqTl5JXKcBSF1tziYbCIXy9ZlEGIzwak0qTiK1kNXIi1yjZ7njEOfPV338laQTtdJ4/SmaVihGfzYgjqq/bxudd/COlVlEuUnT3EhuNmv6u0YvPQoltpDBhnY6Ta9Bxs6fS7ABop5azYGygURmbsLb3DcRnRaEHVjL42QWeKyvYUK9HfbLyJwz3k0pvVZKV1GOZ7snJGI5mVhu/kJJfH4f/NGP044OJs8inNpZuZFu+gwHNoct0Gm7Dsk2dgrcKGPkbKDAoUPbn9zIpXnUDCl0yd1e0Yi6tlsp74Ctuz5cwrqv0eE7hB1sNuagEp3+FjrXBf+I4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r/90fbkY9Yv52uDewGzF/Ujtzxwp3VLFM2o7FzElYKs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V1ge3+3xdesylUL9FkZyw5nj5mcpV7/h1KsxT+FptIm3HjooetMGUpt70NhzgqiCFQWXLkpS4oKrlAtZGytKYWsV3TSouTnhS0t6nwgq66zGO81rx8hh9COAtVyxbeM6dQaZiyxuhh2tRx10obS2WmAutS5LFoOtuLgzYXiqPQN8xb7fDrfSW/t59VzjEParliz1bi4475B3BRqsaFh9jOPGKueujz5Sk3KZNLsMsrOtXlScFI1U9l3ms7UpsrbOSgGZSVZ2+Hb570p+Ate72L4oeFy5H/Jm/QdNZWJerbxDGT9sDzI85pfEeVSyl3qHtZX316mt7dMWNCvxAgaQQR5k4K6L9FI2bi5viDjJYLnbizKYlXBS1f9hvvpG/jQeSXaGj2I+xfUnRbuouTddbI2S2ScUuxek", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r/yxBfF8qSFvojc2806587+XBpb9P4lpkvwYSojPmoQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CF3Jrpo3j8kS/KfVr98ZPz7R0Qi0TmkXUncrSIw2PQBAFaMrAA97IsMK2o0V+HS533TA6fM52OVSBr1Gl71HOtnBk4MdLO7fy60vmtSkbZIyGh2CBPiIY6rsAjwWG+/WVHL1sx3q6xCyg/YsyN3FoWS06oTi2wNQ9Bu2AQ8Nq8lS644A0RSS6nNBlDdzpT5i0Iq2ofnmpgnK5hEJS5zgFRkPFMCTjW7y8k96vk1fuDvLVX/VT4nnzk9IdturlasnbbyNH/wvZbphUgTTuzppJ6oXtvZPeWhdpyBXGEwHxDQS5O2yRkGgTVa+j9j+xHwNAFoSr527qFgXMdA8BigyW04tQhAhsA0WLmbDHYKpyaGJos5bePS+L5/bv8a75x6RURVb91s3bCzeJN+T8HgQoanhsIT9WXaP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r3/T6otNsEdPB5MrxQ2p/u73NjPqU16dllyCtBBSXNY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MwGEzviYmSqpGj4EhotATLH0ioAibjf0fUDj+mRZtcPIAPNemS87Vcye01a++CefbNlF+704BucIOW2bkUUogonEdUGyGtUdL+LK6zBwTDSFnvvr6rfEs+GSKYIAoGUJuSbNX1uXjMV39wPdwOjZdHEx3pRQbgxG/2IPkrzi6KM4QB9zqYvSGyrlfU3iYNme5dseqWoDNZPDFNC+EieVgIKSr6/9EBj2+Kdxm7GwawsqAQPuG9wNBJeM6Zx5FAupIczTz0UGvSsLjJSfJOlh1VWbI/oDNa+VUHA5shuk7fGurobEAnqCGWlCBUchLCksG9J6RaDYCVLFVjB6500gGSfr7/jtNynL3KhGCwo9ZJDX+AO0pBV4Uy067qK4e1oTzrBh5sh2XmRbbOZ/4JT+WPM3Ln0/W0hT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r3gFRNtiZ4nHx2CUBaBA+x9Vmb5EJZLzYWPMYTaX4s8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ytb4nrWX65zmaVnsBsp0iYw7ttUfX3bnAIzlf+Q6CGUr8NnFtbdi1OfGj9Cq06RUoOtQ/j3egth9tsQMwppOc7wfQwW4gUVQUq3hcFMyVCRY7XBf2UYuWNgPq/ZhDMEowl7MbknksUCKWRh+ppEDwIQeYMb2DE0FfHx1n2ByH8lrKdJ5rjTXWInIcd4n9KdZlJ7CFmjIYm5Ka/kWPvcwvTjO7Ql4JJPkqmlAvsG8ZkU+oQzCaHiGlOxHIcWe6TeL/0JMQU533rQwJR6z2Ac8phIhbBmMaxWDajUA71PXYMn3sqUiUHXGfnrP0H3u081GxeBLWIsvXIcg2fRdPSG3BgVUgJfIhaY1Ry0v6jphHw3JutIq25gLMfdXEp635oT4NnyiLInZY006eszyMPjCnG8RQsv/jz3o", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r4IiJwbAdO2uEJ/VNJy2RBaKNLVJucRQFuWDe33afQk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tv8Vze2DUIbBwHfoVMYnEmlX1W+jDZUAtW2QixsHbddyf6FXQgrW5r50jAtcA/CR/msaVVCVEVxrcIDt0ydmOeoK67sgf/OAEB3hS4VubJDqeAZg/BWI7gzaFhpjC13GnONcSAH1Ln3JmESYr0z4oyzVr6fRI2p/4bXddbhhlJsMLCty9mosmR/6Px2uQoHK1STgCtnEQZT8qy48TrMqZIoBJoBevsMkCMreycl7+UXuIC4V44QQtwETRrqoI9O4mLN0ksE/uhjr1TBYW0jd7Zk4FtWDWccrnv513TtO++3uLeHTAfMbygs+s68hWIvKegS3LrzWS1Y/IWgE5NmqWhcISyuH5jgWGww/68Pb+GZ9yHrJX+uFyH+VRi2aTGc142oblKo/vRqJ0mYvszCuTH0Gz34rq0rV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r5VgZL+WeJLpdCosy87Oe29XJhe86E8FQf0KduTyTqQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "K44tnP1JRAq1Oj8mhaXKKCe7DFpe8TGHMmI7jLEM2dTjt0qWEsC3mbIVXj37VW8LDThz8Y9Hkd+XKBkaH1Eg+zfOqGOG3LEkMeqXn9kbVLB0lSHcxEBofaR+TYN84/c8J7gwboJFOqkdUlPP5tyoeEh0rwBuyj7FdqB2Rf2YKUqBSctiE2XgrvGoxgJkRGfRNsqSDwAKnnGBlBStUmLoRteH40jaHTvqaooTcWDE01LoMEf8pJhrgWR+RGVben7bYZWKYm5w5kvg3OYR/NrHIoAFmOexIoGOmqen3FpfFRJOVUg7zwaA2mwBfmpZJjI+an5vztv4tFUfPriqMsUsmcZpgPFlRHbwJ504JwS2yl6YHR7tYiInIhH1KDGQx0+UvzWa3ElB1GyY/SOuIb4xW8rHY2k3wuvi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r6P0kkMIFvCB9YXO0R7qIruTQMCMmltaLeBRD0SqAbk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w0z6jJxCGK80ZZpgHzz4tXH7x2z/5pHv/+GUHVx7EArSUaTwaEqb45NPjsKTnY+IhYmx4GU/GrZIEUiVxamJRRP6/kNss2AnQ5OmFe6JcEngSFm596CJsTZli1eyXnmpnkNgrncpeiwWU7xwt5L4kkrbbEUEEln6Q13A/DBAtTuXtxTJwBB6C1YSkwi7rG+jVMUGfauFyv7YcPRLoToYJjYYRAump/i33vqT+K/N16x0umiSm1KVihrtmQ9o/1tM4AETRzlO8Kpfr2c7us/aOFGlTe65ycTxalsyz0P+eOKqxzFgqQsPOgYRNtoMH7rcDxUQr7muz58yRPfi93AP26oJXrW58bI38/gxlCfIm+zPwU2fy5pvUDVIbtwym25yS9gZ9x/dzz60zUbM2i+Fs2DqfReM7xxp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r7i56z9yzmZ5oFVoVOKuSW0CvAhDVzM0FEH9yBn+X/8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MuDN5I9Suy2irQ+0wn6oiXiW5T5xLj7ZQAOSFdTUZNVnwulmgDG3m82hZzsPI90FyEVEdLEveSrK9Obn8G9//3l1aEPXhqpjpgCD8RlXLyu8fe3lk86h9cmAaOH/QKZ866jnxd/nmeStd22ovJNL+lxTTubCOf4TgvTU0TPV5g5zKF+8zMszX6AteSK08CQWuBfJZZGoY1g7c2atJRA0Rrb5lXiebypM3Qwivd4POq/rf1N9b7aeONnxLQA8UMGfJsXN11s6s49df93bCFi0LFxjwDl8k/Vbu9YA8GZ5jSQyGgSJrgvD93H6LjBQ0OnaedO+WHxo/WM0RFgm93E9t4Pidm0knI9V7n+X/o0R7ucoKdVJnghjWjNHh3+H3YZrxP26ENUlS/7JUP7GR7xr040PvEoNpE94", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r7n6q9OmJA1DYTlg9o0Rdy2ZSHi1vwsMv3vH5kd7xVg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Glsreou/MvyA7uqn6DCTePzcEL1+aInoThXNeWN3qKP8T5/ak73Yb+b0qY9VQrDBMaBjD+7RgO4j2k6oLr5twAzWH24lQ2P73cR6EQe1Q5mMkg8nMUhzwqf7zMJ1v2tVM0OBuoNwrEqzlWBiU49jdpRDxBp17oAse1pTFQUt8Xok7CrEEzIVCCCnw7q5hFP2e+PS/cpwWwN3GNcXQgBY8E7pp9rmArQXAcrjeHm8QTwjukRRPfzls4ngv/LFhhlTHoACxRJYJf0Ngv2kgMKujDIZg+33sLAaJkVe8ysLBkgJX6Iyjp1d+rybJiW6U45rjml1cgThTGjt1hRo8LrnPIcOVWSGWHgM8qtKBw0bf41czqgHVXRfcLoDdUVnroQS7ayErG9NA6KuzVv3LVX6CdIRju+92LzY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r9HzGlvCH1HocN/kcrTt8fmlyLpfLdoubZGsZmfdU28", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SyEdFJ0RJ3NodUWqWznQyeCy1MrDvr36WpdoZgxpcCMTrlr1gjVSy7NPaymohpKhupV5Na9toA7UQNDpNJvQ2iUFJ5WszPvHdK383MKGz1afAGJDAf68bM126EdGzpBONJtJ1rMplnIHber8GSt0WOuGGU4kmoX/BLfqNzLQ8N8dZQNO6Ij8vd2KpkhmSbpRZ9MWi8l0eBol1LHemeAwc/YgDNunz3M1NLuwb9ARLuC0fkVB2owPgOzaBzU+hTDu0adr1LMqlDjTF5vy3PmLVPfblVWvzi9V5xPDO2yI66aZrtbKW2LWZPVSmgXKCDh92DnnmNEUylATh5vGL5bP6c7O4ihFxQoijSuqIoq4Lf+jexj3lTSPW1BjVZHJctp6/GlRF822CoTN85VEVvrZ185IPLFEgMNS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "r9n8dbbug2mz1TbGyN8i76rhNz2yDsumDe4Jkv4R7Ds", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "75ErRo3zQFObsHJnQo4uLv3astBJ27zZ0BxvLZTXryo+gSX331BqZReo6Oem5LZcija53wfNCL36j6dYI3frrizwGIdAfF0md8waMZCfT7xVZU3qNFy2Jj1WhtX5aQTg0eB/NuGbpLB1XTRYC8bo/uRyFbDjHTTGFtJVAqcYnqLTHLIr8yJoMur3Jr0y4p7a9ezicIcp8MrwknI8zM2FkS4DhHBuNFM1dSQ4RezTupzCV4vPvPJT1mtNNsr6mtuDjkWXMFJBrFWxvqO2DfklV3+b6dWKW2/SzhLWi6AIldAdpgMJxf+r59ZjgavSFsiPmGbxcj9qyCmIfidAzWO5jJhOVS64l4dXTDDLjtTWONs57QideN4SwJcoKndkHFE2S3ogev0oZlvoIZLMlvJQprFCgPcWSoV5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rBRt1w4k+k5ICHvRz/w0kQHeCvlZZ3+s6gMCJWIezr0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BxBV9aBPUiEBakCMrOxKB0Iss3Fx0IkJ1NVRe4ht6dUtsvMAkhhEXEcUEkc8M8BjsoBfSumY8uBJ2Q+8fvUsGInT5WjC/lLppJJFR9leNWPLlmaKYIVQzCdjh1pvALso7ZT2cc2DSIvpuEy/i8VgkxbkMXu52d5mnUC0Z/BruaH7DPFsfmggOTt9yPkTaoXWkI6UVs1f17Y6zBvAiVFEFS0fp35jfLjiw6oHFaEi8PP+dr86WYUQ10guR/s+yngJd9l/5/aBpRwVGT5Q6YfH1d/s1XaDOn1a8r5jNgft6/CMK7HAVm1K2JTDqjKEPBU7Cfrtc22URWFzrSwbPwcBIu2+C1ZTTMcjxb4OrJ+hc0M8dKnSbrZ+vaHSrU7Hjk1MGuhYsdL+kg9pYAmWEf03wvhdVI6Jtbr/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rDns5X8sDHXJokGN+sssW7X/taARTLMUGB6vr32OQ6s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JS2nlwKiuXMaipDc+Ff6RZ09K9V5VulIjjuDUc4bhnzPsyUcnLTZkjvlbzflBNOD7TKTL4ekAc5WYsktYdF/0DnehOvAErURszL8nbMcMqeiPqE+Guxn22fy+OEetfyQbZJuYYK8uCNcXcn3nUQoo18YEiT3p5XqkdqYV2ZHU6iGAbxm3l7uyJgOVOGzzwkQMGIjZ9MEt+sYviKy7/Ib7eImyccXjzwzAUvCFy9yW/wGsMitlYZlOn7FRCdB7hHftnlLyf6zyHU2vL/cmm+UmC23d1Mf3i4yahawlL6VZpZ/rJklJrnMcH6UXtnaAT/x4o6seo+7t7K7RjZzQF1DJy7ZpM8pPh7LrEyGcQUUjn+AtMj773CLZa1hvRj40C49bpv59E1aL2xmSQ9Ev4xqBQ/BmElb1uIr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rER4A6iDZcrUjeyfwX7ASFMm1jiM2cSqvr96SEQBOGg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lOu53rAqypA0kwoU1dSZc9laUU5GcRtFuqgxmgGNhwxwIN+hhGQZAfiX9dgKz/Sl/megZix3yRaiw4ym2Z/5wftpBH/02hKw01e4dcVOv22izZNUD+61UUv9hS3cOCUWZQaHKyse2urI/5XtQfgtQNZ0H0k8BRAXUpBvoZo7WSdKCyZSDtod3ZaKOaTLHbysOgkVrE5WEhqk0MQGluX09XxRWDsOiFQGf+Kk4LdPIK1fax+pxCFpd2zNYKJU2P/DJpA+baMBedHSyPKlYbU96Td6n6ueIFrDdQWsB/Eoke2wFN3iXDOzNkNV7+QnI8zDy6iXFSz+xHxu7BFTj1FpOTsUsplB6xWfKYZ3Kn0Cd2k1Qn1YAiDga0m4Ug4ywPqE6If9SHH/3cIeVfggZiOwQF5+exP3eIoo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rFePKD5rmbpLb6SpTZJJT8Vp8CFOLEoLiipyCpiLLK4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IrVCGT13IILiArSqs7mCW36VVqbuKqSJd1JCIo14pQ3KJrLyd7M0GwLNuO3JfY8YwjkWTr93HX08U6JspsjmqKqLIDwm2/J00KAY2XfhgUYwtWt7FWIcQh50YXCGTfAiUYG9k2h6R//OAXOiuX2unwzBwa826o+HzAooZy0DImd+MhgCexD4pxFiQaJkLm4cE/VQn6q+7C1649nZOO0aGSecAB91xggT+7aCap5i3Hy3bLVpYemVQfV8VU/1b2VE0y4AHZG/9XkYEmRzeEeI1P0M+UrhnZ4jVADJZJdXVIe4GpFscCOJaR75UCCXcpMoWsthf9XaifHKYhwx9mX3WdalkDfC7VCRDCDHgJeHukvM31XMBzuYhelOl9Ge9hvrjaemoIFkj7WoCRUf4vXKyJPB0vQL8nRy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rGSZvc+OnSB/JKmXdaMh/bh2Y8jZpqqC4RoxFGXxGQU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7zc5nMNoT2pNZ/4Lkpz1zfgs0zP38NBBzoywIyG+x6UMKI7Xj65qhfPGomodPDDAPW4pcr6VZKBOZ6xgaiE/dPdovowKNYnYZtVDt34wgUkeM6PBuMMG2klP78H+vQjiS2dDNSQmaa0l3e7ev4ERfdSY+pCbKQ11TKJf+Z+I9//bavsfU/+mGZ7SarTczBwC2CR7aMUUXggsHaWewQ17tz98sDygp4t8K6sbQaJ0C6OTy370r4Zy4XkqKSdTpyGYqYRz1JoQz8KFgU9j7dJuuA01ZanLmlrWAJOQADXlgHcT3WyB6sjFyMN/MvXx00q2+FhpG4vtIRtwfyMDqFNyVLlRYOocDIKZ5ebYKFJjvRfpXDQ6nYLARxb4vwVMRHiIdxzlzxz/vavjBBl3P+DI2uCvBmmpC1U/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rJuziMgQJStv34Jknn4aQBrf3xyYyhNdbwtgYjLvq18", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "r8OpORAsi4py63Jj1oZh0UKkr5HMNHcWj6GizWY23AeIBc6/jqBMw787d3NjeNtS3/Pc/Vz33/1hlj0trQOM1G5+kjF3i1EqirKgih4JGZrTQ1ZWpOEa32rsVJ0p59Nq9zIiGSrKehor8BIIhRPFFC7iSBWlww3aB0/+7prwkEdfMMAqIev3EkxeSSzE62FjFVD9DGDI7wX9f25Ovmowsj9Df3MdsSX0MC8XwhifxtCGBiaqfDtCXCBJKPO+DDVCGY2gUA6SjyRzYow+u2BAZ4EdUZhUHA9w4jtL/SDAs+Am5fSZFWS4Nm+QdJxLiBsQT7JzGZztsneHjS4sKmMyq/GKbOWOOT9Zm3B+Ez8j7I9GwLnc3vF8ihXSEwHpgxqOASWz0tgIB3jbT/3duQ6qwTzxDloecqdJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rKCMJNkfL42dPR5++Izod49nKKh1wROXA3MeVFzPkJQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qkZUvg8RNWluv7OY4vm+wOFzXv3lO/hun98KcSGZO35vlJCWAxBSRq21msg+9s00bUgJQCZwbM3Wc6eypbRWnMq5X1jBxPgdUuv5XnkWUPeufvP3YgXvZ5n/wCYpLRmnzSY23Ls7cb1w8BpeL4vnp/ntuKM7sY/XWFcZhnxhnY5ebCb0aUUyXcHEq01hi2AnlKtuSYrbcz4GnV9rUVP7L5yBWLCUgmwJYTHYMYyPAK7Mi11vfGw+ROIrMu5XBYiU3OVxtQnjlLYYEfdU1fIG62yZoohR9wVCUnDobKDKsEim6Jt9Hf2gG7gsQSU5L4xaY2yuc19f6VturljyXMQkf18t7YytVCzkl7ZjKDWqK0HEmcaF1hMI33lFWYBhyotV8BtQRlmkU+78WSfAERo8Vz88hC/GmqDs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rLe71GhBP3imqJuGFn8mARRaYAnxcx9tUAp24JLeYHA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+83FRvDEj4rgfAC7F6HXbLZPNX+smm/ke0HGKhMIVhQ4pKE+Bwcq0BTCRImVvhlyQqBeAPczm1Te3T29UqSAmy2Zg04G8JR0o2Rl0TuVl5t1/NXuO+7ZO2VbfDWbx0SVE/lCfvn0injp/kQv85LWNAgTZ8DWDIBh7/NNkYRXz9AWFrbK4Dc+E8+oOWKnEqa4zZdUkrABJODz63vbz+CTGPP+Q7iPnf/s7YRmBG5GHau97s9fQfoibv4a7PLSFmQpjKAexwbL+xsM9IMmzykCmyDz3iRQdGwB5kUJz7yplWAm7WDyJUYI+jkLsrj3HGiYbDo6HJkaGMJNl4hvufr8PJkg3fHtO38ZtGO+6z5OxmoLIVGrsQJ1brySvsn05qACq8FliFUNFE9meKdhNegHNZM4qlYJXy6J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rMJ4v3PSTJaNOhbSyh71goRrWqqHKS7Nn4uPgzSXpy8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hEZFwWRObGMolzB1nVtsgjf+I6pFk4rvDjlW05YISJp81NJTP/nkLUyg16Kk/MkL0DIkvciomDT9FQHllxatYCXuxJQ5EW4FE0sKVNv3kZMukRVyYxbGi74Bz2Y+sUyySKmBLpuVTfa3i9TLX24f5D2SbZU/TeskVNbvkY0cP3MEYoBd15ISzyu+4HeLZzuAzhnbhDu5LQTxWOpKJu0S02ho5Bv4gFSTVb397Qz+0fq0h8YexorYLv9xg9irQ8BHDnsbL7YU5KBcQBXzQ0AQGk/ftN4m59ulxcSPyrcXpqqITkQAC4yqY5i7Sb1zATV2wsZLN/bjF5vOaqKcqJDDLB2vkAzrGfr+zopPI0aeWLkLtyD0KeOi44jnDx/W9QNqcJ80/7OwN1DRTOetaXyGXOGfoVO5DV3s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rMU8t06qQ5uvLbXFNbEFm5d89d6JW//UT5mffIOrJRc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/xOd7xFd/OSDN52QZzZdBDMXWdNGS0wwqQHVE0WuPtkTaoowWTHWW7zkTmY/Om0dopt3tGIDPV6tN8JYYqtv1RtDEbqH1xzu0HnNiXuujtzAsr5WW3HYe1X84Tgpepsm/zB2RRlsnBH0mqNvUGlRGKnm/923xFRSXRm1rJ8PfwiHFPtrt7OAIvC5WLazyQDZF4TJJVt/pHeBNvepK0j/OYzdD2gLeGEr/3iLvfg5FOVJp/UwkTdeXRjlEVT+vGKkyJ1+CD1hwQtlv/K9jq78k82E/SS+V5OyPe0jHMtFRiwHOf6Pci6s8S5o/We1Yx/yWxC21Db3yppjXEQN6ZoEw7muPsIidfamXQletmmelJYRvWHRAgovhd8MfpOzN6crWgDDRQzJn1T91USOS+d6zRRhPtg8Tr6V", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rMhZIQ9RaZFhk9i18l+EYbytUxX/Y2wiMaewdWndJHQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SQJP1Xokc+fe/FZTxsr+QlCX/TZBAr+Z7ozmdOoLKdnc40QZ8Lcw/vpsxLO7iqI0JgUXlzUSl3gQQR8wPeRinDsNYKXOk7Xnc2KMHYSzvER0EI07h1fGbyzaN9641UvxjwkSO+iQnLsawgNav1oy02m8YTHw363tcSzeEJSCy4iHCiGVg23bXNFMVQquAb7Fyq2YLMA2b5I8usglV272WSlVyTtF+pWW7VYzNxTigYfPX2edzSasG9s0mjQh5uEIDI2UKb3EpZ+5cNku2w95ij+olB6Wx/ZjcW2uWA0yykfyPUuYqo2pDqlDrMqbnGey0HF6hXN3WSyH4PHjwrE9pT5IaeIRlAEyNJhrKIxQ1L73mWUTtkYZrasLGVmdbK3EkF95veNKwazT+VIvh9+9QJBjoKLAHuVh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rNMzm9Y1LuTbpu4x3XP+XA3C56CnemHbeL2SI7Z4k5M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KXPi/CEFQkLcyDU6sNX5B+Q8WbZi+bd4Kl7whDg5k4V1+jGcyNIqBvGLJxxtUKWF+9M2JuuYahY2r+qHUrgXggBMHRsAuuP8zuBncmB1Mf6bXBeZf1gAcPXGguw6gDfpgx/IRgMdXcLCfSmnekG0OqgzgzwDaM+QH/8n/Zz32q+RiNgbpWwEFDYu12sX6KXr/iTpspqQMcXrftetSIFiwWD9sg9/zRde6YV5DxkwJa0Ly3yj6CucstV7WQ+JoD6CnLcgJ3PPgBmb5Uzmi2opk8v0wdPwgL9IRRuMhhRxmifmUUYq7tmhwTIdvMHmuIAqpnlACcyFll8O6XwCfHkNbBXs9F4pH1yR1AXwrrmrlbGOQ0TlR8b/TN2+7BMmAwLuXobNdPNboPNNJ8op+9HaPVFRiSxqC+6u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rOGWS5IxVQ5K8aa4TTUx04zd4qP+o+xBp/MY5R6RaWg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "silN5/Fd1vJjJmXXoDBXtzbEVeLnXQ+tuqQFIg5oPOtmoi4N6+KIaoF8CGARyWcjseERZ+wY5Yg/XdP7AvJk2you05qU+2ud0sLo/3+Dm/0g0jzy0AVWkFneQJg47UJiF7jlODKcr6fYHX0lys8dDxkMsYvJAeUOmrJziXud7HFZMHGZCipdd8x1CfIxg9fxEZuT8BqBJbEuEhElqT3H1OIQH8an6d90YnfxuvESLH9hjHvXNFcAtPfukEBbclHsgOniBw0ak/cI1FkBjA/v8/9to6ZO3N01AfReT7SSaCGen+6arlttvMjTQShRkzadFmIMX8Oa0hPUDYGkckCWWYFnRHh2jAiRqB+AlLYxdUdXKtTlubwXOjbAR2fGcIwoMa9otmnmqJf5FwlmmROwMrAYoIekM6iD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rOe67uqrk0TzkcC9OVa4Xlaijt/ZCyDyyU5EUgfDib8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "z3h1OfBLzDGwhLIs8PjQUQauwwic0iVqahpRVzm3fjvLiDM0JSrckAmSZTUMzbqdZvBw203uCZqUSnycL78495a8dSmxyFoX5vk2Jw9VshATAicww36yOzAF0ZwY5k3TDJaXaR/TiAlRTzVjHS/V8jCTLPbYR5/IgHzhnLT0ccE1SKtXs7QKJyjg7uDuGwPVeNr+WPuRArvrJxJLgQ7y1E7UCIRqqJjYvR3b0JMUpW3IADZ7FB12Hzb2pyq2IiwXOzE4N7m4lYM/qdKHKkq8FJmGF6BpZcI5rtFOfxBkVGOUc51ykNRmDTFKhNQy+YH2+MzVUcVqTcffQGUSQgacDsuLD1YKoBw3ksKedfIcaBAvqvPCh1KytyZkeG52AjS0LBRzaNTkyvn0NKAzYz5ZQvuY1xnXstBU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rQD4KLMhVhFCtE3m+Pg7bmsBoYjWRr3Rzc9+B1rH/DI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cR9zBrGtCWiBhzre51pC6vxhtYQtlck4ieT4kmPomqUtZYJ8yNQzMPgMyMVwr1JEmLlylYYZliYh8mX+lWj8EkKi0bxeFAuhW9+eGR5MeYwKDK47ASZJzIvEPt+ia+J7nbbrBE6j+SXCpZM0N/wQy7yHkvY31HBW6iicrpdMyBq1AuAHBuEbMPdfQQLg3NknWuWiQyBJpNiwBun5vJEJnkVTwseacpl8ydUn30TmcbpFohUcQ3VNslqfu6P7v+e4V0tW5HYiqkFZVf6kcuedlQPr3IUIDO3Andv7LB0jM8oI8XNhHKhfsqA1SwGcnRQYfTJV7V3OsGU9kDoKiGAWmAQDA+Tf4Kv8vcuZLgMPWKASKdfJ72cNb07Ge8QOwVBQXb5yWsmUYXDIe1oJlcE1PaCdOQS+EABg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rQHAj1Tb85kFmatrmanrSpPhfWCA1Lo4tXih9hK7yjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GSXNbyW0zxDkE5VzvMvnkPvasn+ROnx9cEP9c9ZyOV4h/JTH7kuMQjW5OBFsxicOcnzMZNkRqJL78XDJofyGMpU7WvBoT99HTFJ5d7lE9koto7+EpiXgc6oenA8eJoMVRqMXxVVuOziEDEe/XMxHPftrV0OeFKenTlAM2o6nKlJ63NVMqqciPZk67tRmCopfS9gbubi1eTudbNm9NV7e95ZMMXYMXCvKcUVyc5RfbKU1Dji2CETLwUhEEpcuEnj8MCEWcAocop1HJNaQ6BcmkAmCkxdezVwxgqW5ILqY/QAIG1+u3pNEPgglFfu01yEAA9Y2pfjMl++QWX/ZzAiSo2wZu7mNgFbC+FKjH5xxk0jmmYc/To5ElJx0RyK6gXHwP7b+NjraepV+04K0CXYBFaXd5+fsvA7z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rRFPZhKWtKPG0RGZgRGBjXinwJjibeolLbWvuz5UlT8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YIHxKPDavgg2uRYrtyUzAhJT5Xf+psaOQmhBOt3pIssNufE9UEk6VJZVk53bfh4KN7/ovUQ9lbc2KsMbhVLdA8UtVOqkVjL6D/rQa79OuH+9HYTiv3UiGd3YzZ6wf9vn4c4BGil3nOQzHa7qI+DZ7oaOD8bOsvFHXOBzfJH+Wqjt7uxCkcygmszfpw6LnNyK7xViySsmXoY3A6+x31rWp4jSHJkZJ0J6368ttxSMsR8wY9lKUjCweOQtPx/u/tsA/mndh0YZkAAtsh4t+DMLs4J6WlIJSwRXfFb8pXWFJYj+7ZPXPkyoy5YN95HZpuFffLHosJ5NgK4wxHbQPi92zDQIoVxRZCJnuj3BYZeMs4kQRITsnaKzcWA0KiITdneiY3/yAAWXyrUxWpL4dN4gOvnnvom+f8dW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rSxyUcsgE1rC3tFRQtbR29x7G89untQooEgb8hwDjTs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5fHsAB1pg2XK4P5MopiaEAl7JjYgpHdBjBy28TI6U3+aEtKFTGrg6qgi8nVQvVLdGkmsPBX/MyK28KFY3aL2PNexk3FjUDePR4XtiPeJqF+W5cmD+nOmmT8Fv1ATlUWGRgdsxD+1Wwavhy22+Su6KPod1SBzO/t5JbSPe/uA1Sex0TUC5enhovCEWUjEu1WylbVT0TcLp4Dg+edhgh6GkL/fJ9PenWbA8IhCzwMMbwyzqaISqyqWiOvv4H0n8TpqDR/HR8OHIXlbU39jXFSpLHyuIA0s/ya9i+J0+gQfkBysb9w8tqS58TNiiPub5QrhitP0AeEw0aRhXGEYCFIAsnVxvGZ6tJUHhsg2CKqGK1/XldkrmONsJOkbz3+zS4KpREmmQwJrN4lAwF+LyCIplMzyt2mWUOO4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rT6QQGaZvG3yJcyWAGylzqiFDbs0U+4U0Jh5W33mSWo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pFgpQIUGp8NUiKd0GaKm7qX4vvTxlbuOrYX5VK9qiXZW4ekmgYsgBGIQr2cPH5meBzNA9C6mRolJKktZE6+1xDK5lxGY43GeVTM4+rBnFjkkB7ENETR+YH9UG0XwcEw2o70rc0YYJ5CjgHieAJDqKNVXHXgJbqG+P6lSI4QoIduHWVZ4DgOweQSQnA0XOvRBzrdFlnOtISi0UE3BJO6FbZ+nkOni2AetBx3/g6FdSsoSn9aCxT2lXGF+VCoiAQeEgrHtGkqnKCTlMqDK/iDSOMB6ao9Ji2E+xWCYXHMqTtZWWiUMDIc9MONWg5kFuN5KlcWpMyjs3rQa03OwcqsXGeIMSVsE1Tmv5ARIlFTdMrMAVkS/wODnDwxfBo8vmpQlxUBB2FvfrNZd1PUsuuAk9fgS7CWIBIGy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rTONsZLtxY1SAYeoJWMxKZ+Rp4wqIN2G54vB6bOXb40", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "U9L1/wn+C39UEnnXFlH+HeSYlC0Hah3LgD/vYlBRknbpTG1AD3gfsp+fbIbRP9LfjAoM6qBxYG2gIN4plAVssBG1HZ9Jr/6sqqhUqJzNXuZNYvqM6hr5TE6st8kVIzRdxLUbQqRBmQAkxhnYhmXlhOWyDnJ+Qp6CLgV7ON8Nwiox/veH9zi8dKSB2H4sfZgDUYUBcCY+zTOao+3PARXZCyfXWOJ5GKtqNd15I/x/2JjrQfYs55/ytt+wWH5/X35iFN9fmiDTj4y7+lNPesRwf70sx4Mm/BNuSuKddulOmoEHeE93TxpTybwNyKNixA4St7GcsRizaqZMKM9vjawLtXXB4woIbjJfyh2YUIHkMzf6abb/opit/hLw6JR+6WBkjedO8SzXaYTM1w4CudcOE2qeAAg9dqqP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rU2vyeFRYprVhqCM7K4iUmmxpCq9bcxmaon8jzKqMEY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lH9QO7dLdofewWM9Ndb7hicLZJ09JLmHwZNIQ0+rtj8TxcGXCbNzxFVyozxZ/T7fupIrGI56KolPgtYeSyZ2vAhud5eODkjv82leK/fblM5zEpRhgEzC18KTIs06zkawoJUe/VyZKsW8PT2atm8K+byfU3kDz/56b+94R/dQl56cyLZlhzuHV+jSqIhfH2NMU/SpgiQbnep6Yx2pIyZDLOsbfkoHPU498bUHeU1/zS/V4yXIfPQuEBJ7vmbKghpVfBRIUk3xdMyQVsgeZXm0E66+xE02KemQYzhT7N7YH7islAvO4RUIoCOFmKYLUye4+hj9/ia3yw51xCfUU6ivlFsHPZsWMZIPwbDjYOsstpZa/KyV63A2M8vvl7DxO/C12nm6E87e/J1TAKRuZi29YmuxwQgGJcH/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rUBGAyTU7g3w1l5V97jcgIRmfmjfA8hXh7/mm3Gi/HM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uhvWaaYdEuf9suXhsNdJ9NpzFEeo3zpU6QKcTyt815f01vE/ShioxvPG2/KHrb77D19e6R8LaJLEMwBC02m2gF4scibgrOL/MtO00H8taXN4OqVOumBnN3SKiJbX3DsTQvEdXxj3WUG2etIAB9/Hwt9tQo2rD99FqBCEz01pdL4y/9Mf9KqXIMkRV2VoN8vGBVUrnxBhG+wLHtmJjAGNPl6uZS/hmr5zVEDUw7xPFNZifG4ntHzfAlB0J+pjyNXFF1DR72QjQzha02xqD/RQmx1840rEPNw6q/oqkkj2xLAxY9lgxx+MYEKs8/FjihKMzQ4zNKmzEqsK4C/x3WN9sm2+8UIRBnUMR7WHPgI9n+bKFi2s+eFH0x6JMCWowpDjX42LGuGnTrZJ1k6lxgs+Kq8ty9UOHmjm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rWHCodNRqZ5ngo8iqn2VLTUUG277Ca9cLgOJmsXeFj8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iG+SAQyxknVIunAeQuZLq8JHmfLIdla8++AMC1t5AvnG1KCZymn1B0irVG8CBQGhiT/W/jiZg4OHJuMFMs5h/AK2I6tO2N249WYQcT+WR+twednPy0+qSGrvps3B8+BwfsNsVAnqBc4xhJXWzPpMETY+d9SNx5lg7W0xuTAEPRvtxWsShEMf/t+hQS2/LLziwmO6Rz8gK94RZ/yEkR/VoVJFoXEb/9CEb1p1X4pB+tVRZDwwFBnNm3sFHgmhUwyhQBKkRqH1KvPGZz+Qpt7iISDqXeflYrWRLWurvn1W30HlMxHIqQaUSa3yCmzgMTm/Pdc58+69yR+hSaCL1LXd/e71Vg0t/H5IF5X0VZczzrWvygDov+3fGrKXEB7IVxKYlM0mdst1x416C9gBpIbm40vymyZMCmFX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rYN5s3fJ/S9E84dksH/kAPxadmnpHazQG04KXh/pCqU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kH2HleOTQxFpB12oh+fq6qfLRHT3IQhpb1W/DXmIVv1m3BeQOymxb6YIlDIYLyX3IZeOyGQg0PVb9QffltS0zxZFpspnwCqTAHt+YNc0whB0n6dhIrufZdQAFaBY2IWbJnig5oekXbweKavZwR30FQbTEPxoUCKGCEDbVwNcthV+obDgFT95iLAyHi+NhL1LHUvPfDah/3XZnEjtJ876xKIxEN8cT/eZ5vY5jVDgx4b3HPOfbxRMotHjO0zykNxGA9vs0GJL0BAhJub/gkYSJJJ1hTSaM/Y424ZGaT/hjuRJwxNM0ZZIbJdgam007O/Ay3XcLI+QGY9ze3oMZ20SQ2wM2eCgEQdu3pCSawKuFEpU72ubg4ugjAMdT3zF4v+byMWhmiO7Ht3OyeONIXRqW+Q8l3pFp3M0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rYjnZj8wcuT4mKydvqyiMUJ9b4uIevVcnzXujmHrhKo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LPrSiLx+SNmTi5iIasYjHJP2pLi1U8HdDAwrKucVSrFkQpR9fvvM7o95JKponHP3QluOieHjd+W9q9HP8hjbCUgM/18cLVPx78W2MDGuXGZbUKtWQc3uWCovfAFutr0WUqm4tPyft3x16OFkUeEUXJdZQmtaOefN2wsBGA7HQGScpDpjV5sFYc21i/Cf3z6E7aFdvDhnyYqDqWiTqu6huU1UOKx67LKN3tWTq/56tkOhf9OKcJJ+8kXn4ESV5W0isbexqWlr5VimSCTtyp+1Bb4sBu5p/u03z9+tbSirf2TBsqL+vgBtaDpL6jpeX18onB+/79HtK1VBP9BMCTh2AtuIc1tPnnUXqTu24wsgFlcnYtcJun/aKJx6X333lheXyvz9gyBGJXzsY9KZ3wrqtISZxySnDlZN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ra3MP8qznEkmkyjW26PLj1/96SpOfnXYa3/O2/qV9eQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cBFWywkSV8YhWQY48BaxVgk4HL7xFUklfgg03kRJlYjspnUxuzFiWBe+EgBiVxKJ1FRU/4cJNuZt0TlMwSxAbYmw+tUiQop83J3kRzuPLM3UdylxUm5VKqraffJMR9LrK3kzs/6Fa8M42jg04NSZPDUr5RGsqy9xImHHxd7/n1zfyjlz0OeL5ySYXyKlPqYRl3rjQWSLPyx+txKwJicV7efPrvuXNWkhvybXGzMJq+cVv16gkogTJV4JvuTZxtq/KdPMOTxFx6F7gowdEFXsbWfUQ6X8hd2prObQ+f9zHqvCevh4oFIRYw02KCbVa02Qfj0pHxCMia8JIZCE0Sjj/1KLjY+AzuxIiHHLnCAMjMAsCNQsdfw419rjRkD+YuiqSwgnA/drpfSm307CP50n1it2h5yXvtXd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rc4QaO8MDOFH+14HnouFgFFcvMGYh1EXSJMYExU/LOA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5U6PS0jj6x0FVSPWPtjGQPUgetahJOUMV04Q1led389LRhZ0D9D/NrGjuxky/yQQtSxWtQhVmgVkiZFetRmk9JQli7AON1CtfSiAepGyOdsdcxmGu0Y0gV/0vxE58/CIIeDUD+nC+4jyxMZH4YNrYKWJT7ZJgvn4IjGZBqeBsfYZo63YTbiZchBhjdKGIVBJcUugJl+/oASVdHjIB1XkCCYc6WQftXxkYMH2jjY7Uvwrov41jVy3sq0eD9MA4+BR62wnjuAOo0+7i0Nc+AuEg5T+n3+G/S0pkeCcSfJgMJoW9ZDkTWJ8xwMLAqgs0w+t5xEgFpZeIeKcLoAHoP182aET9Kb1ZiwaNtTLsbxonQC/dq4C9pAFSM5LQEUP7TL9GfDPk8lGUN94ljdZF8FeHBDtLNO3tWEr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rcQ9Pt/ylpSGklI5EuNw5rk5RaMGFQ0O7hst1ogOvbY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9OtBXe8Vg0zUeoyKK1ilEcXOUhgPiGQgb41tazk4VBa+YGN81LG3L4i6M75pauj0/hggq5HVxvLAve2ifd3jvD3bnF/Avfzm16AyKhfI3DL/YiO4ONZa7HRv5RiGH+gaO5ebkbbhFoTIEcPUl/YIWn1sbt9nRGxD6GA4GZBLeRZSxYCzOiVL7JodpWcUZeUwcDNTwLaj9aQ5jg6ortbEfd9fzKiSkZyCljq+B5c9tcRdExgOs5RXDKcE3Kjs6C9G00/xE4CxsarvlDzl5n23PHOzJ0CRVgsY2zzCC4GO8mNkndaijw1I6QqdGS8qcLZlbXb09Xk0wwSnfYKEW149GXa9EBhWT/gKl6Jc8HzR3p9iTOfIAtobKEpddNd5WhM3S0NmcaIENZrw1pJUWpZMzyccHESq3zO3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rcVXTsmrgraKpmQIWu3J9OezYtm7GLTqQ5dyEml0Sg8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s9F9xrCfcTRucCcwc//gAJ9Mk0BCddntMvLt7ZXV9YQeUiiKtpFVvHoWKNOr1F7Eg++NV7rqqTImaX/dVu2a8kypX1YPaZB5WJclizlhYR7DBnUE9BSfDrUlYtiWwl7KtqGoDDvpHqEn68GqFnnHAN2fQmOQyGN3bomoft0BKgHe8nqOTdatNXrFA/SyMs9PZlnhcBKBBsFrvPvaqHgpe2VhCHjSFm4+XXv7TEiEtBTcHhZj6UeNwFRx65x30ImScUK+SMoOmve2HSPUTXO6Lt33jR7nWSufuAJeGOd8jTjKVzPxPRjyjjRd2INVHY60Tb19u9iCSkGOR3AdBC//wIjgtzErjF+4YQCGap4T3+4BxLSNGxtsgIiWEKgVk16v+cxOY/BE3U0R2Zl/UxXHp0C2bN0QY3rg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rcz6xI8wZoJDGcmKqRoxEo1o+Xr2KK3KEJ3K11ftaxQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2REfRqSQCp/oCLBtVFiStOj+8WfIGVIlhHu6F9GCjSRFd5OGd0ye/vk4vbsaWtTjcWDSRFmRdRYMv55cZssdDyIjr0x0dAtX9Mzx+37iEKVZYu5RsEWYB6nkgiC8hFZBw4ve4MkiEcJOL3YRdSFODp4qx+72zwm3QefRSSZNO/CZ/Ye174F0ahurS2fPzOc9MsW7oqulEnkv0+vkhLIDMfvT7wPA2Wk3OOqm1Chks4NXM4gyzTCbsloN0v0cO8+IvomesnwM2DDgRuyWbbs3Zc3v1wDcqU+DoMa8knot+FbtcqhHIcVwnd4EvM17v6vHT1zoLyNMFzbGmxALT4RgHmiMBPvDv40gnKNWvc3GvXWLoxnXi7xE9ifjEyJm6jReHYRPoHlcosbXQRp0qAe1w/eNrEQLGIBF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "re4lUYSVOpNn/0VJshznE+mIgAhXlJSGs8XI8Kh55uo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yv/NDl8hYdkHcr0bxhPbby/0agr8HFf1YyCQF2YKGpYJXcK7TWgUVculpZ381uxDLCgP4tBfXaonYE1DnlKRf5YHh+Y0e6yinNi54cMCWCkDsB6/VUwONe3C3s9aIMEY9TBJOdvqNbGD04ru8zz0RswvnuNKIDrSTKOW1Y6nplOgSatHZJJgx/FsJJ4syZoOJmdgBWsQgFCLjbTsPI3txTVl1qb6f2s5OiKSC0ocPG5PLaLn7ImkZcbyBgb1+0TjgP2PpgEsWc2yTlGypx/9+cV8bChgwKEwOCQpbpwiMkSj7Btll2rsdEFwivCQpgUWXIiHRfjD+NmD4X3KFdggVnQqkE98OuAhauQOjIqeteIWwd6xym40K3iBdxewzj43aB7QNlkYp7ZWDX2Le9PF92ukLZKDmpgR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "reMYfgHW/kMN5QdtaK4LrN3dz7PP61bfYq8qZ7XKv/k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sB+TtwqB/1bmu9wCaqwl5WO5ejFHD1SP46pX2Y5/xVYuH406kWcoThJScc84KZn/7O+uLVmToStkZ4CVnK3RckafsBBI5h7iwVDll4BZ73OJOmnhnq01DUU3KV34k2g8/OGItqhPIk2auI4RN+PifpG8uECeLI+mLZ7fpHktRrzu2rIPKvvxn+Lsl66ba/NWeqKHwHbnZn90EOWN/y7cF5n/h54OKu1USCWL8ng6hZrU/G5X+phUUJ8dAPT4YExBl4vmYOdV2phYzd8IfDu5cBh3o2tTyHPo6L509/d+kbCxuTQxURLHPRASmrdP/oP2LWy5xoE60HmINKifagZA+TADBvjNDz8qRPPhIEdEPpEhpGCMyqGD+72WfQ6yfDFg3TeTzcQ6XdeSRyPTb2nlLjSA+uoUCoLF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rfbywkSUe8zUw2vpmLwIwnpwiizKrj0+7bPP8s6kT/E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u4NN9/X2gxQvFLca2a+VA9BG6NCR3v7rhg1zu7C6Mw+OlsdmfxnNSII4qn1JqiGKfqxcJ2rixvayz3T4xKs7AFZTlUXcC2eAXXS+ienWNETsQO+N4BW4mMlRzhbDpqFgCw/3UTAMshJHCpP+b6+1hIA/tRyk4V3DDWLSm44Zs4OGdydJU9lPnEKJB+1A101RNJeItU08f4ltisz8OLi9hsNwfnv+YVFDQ8GDjQSeHLWl4PureBg7Oyb5i1q1wCGAWiiFskJllig8T+wa3WbFMkQvAGQieEUpUwb2xgQTsjr0kyHNgIOnXPQdpbA7RLnF3GPs9SewoDtdmLzGJiCoUladHE+OIeVdL5g/QyCq+qzwNuQszQTj0S8lsswEDSWA8T+YS33jrb6TVHDjraToJxEJdjwmOTMU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rgH2UHdHEW9l2quuZ4Mvfy8n/K4pHleUAKHiGYih9g8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7frnREX1tX6spM+qUgeyK+PSjarGXkCKT+06XxURFxYR3PNOEM8kO3gK3hgAfhfXIwuR7iaZEjJIC/S69an2Dyx5z9Gi6jaVvdtiWUYSEST3vaCxZjPcAPBGmtpkA5/FDkhLs/SjE5rsv1nOJ7EW0IhytIMH3lwCj9yyGt4WOgZHi8iaaWM5ffcqlzsYe1OiuIhJq/ZJ1cogC3/q4WIdvH936n9rpTI4t9rN5q6bFxlpj+SQC7t9N7xpvl1b8YXRsad1Uhd5L3uXnQpEpUdjbcmjDLZ6VT7AUeiRSZx2ZEEp7ZQ6E1PXQ6A7d7qA4d0UMak8Zxx0rV9o2pGhqa/LQ7RiWnUOI56c5Onm6kBMPkG02YworPOHM+ohLeXZqbmA5SftzCu/Td/K/fShGmk0JBpJa3+Ys+wS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rgdKcGsP8VAEQTP9ALTx1xlBZyzAtd885z1YLOoFZcE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bxvVERdIGnCld+mv2uVTGyaxoXw+mTrJl5jqljjhTZ6kPNjX867kcU39XjnKzbtYF98drwF2K1BxbAoqXbeCJjWO3jhelDTECq5rBe33rmQvmhF1nr9oQNDe3G1rIR+7lZJs04+PU2M3qB54LT4llLB9h12Q22et1gBidNUdvOjSJKnnvkquNERdjBq2lUsohqfzlqIqjrfYTMa0vuHJb2GOpQ1/GMXFjgyRlTbXS+ScCWRDUQ3egQc0qiqoSMJ7kNpcorM1dMhghUQ+Xb/oCcc6JhKehWqcPHXUxWjv5VUxtuyNYHkbJNi7D9eCR5bAvQwQMH4t4jZ9gtT7uKt+pl8UGWQJUFBKPnSzndj6zcSEqXr7wXDfmz0DgVZKb1Url7Zyza5pH/gJUyFYN4CDMVnkDbLaCP2n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rj0pbGuM+E3K9GEs0HSFuiS4H8U6VHGuAvmgqC0JFOk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JVz3H0KFnVP2T6CeXmyL8PV65bZzX/BoDLmkzWm7sx8uCl39UJ5ALOF0xa6SxcTJCaY3NpcF1eYBH+LT+xx/BKfWcfoahAsg2NhnYQV8mVv1U8WjOpDHmdxXraruUFGWT1gc3h1dBe47R+Dc3z07RaQC7jN7hueLrTpylcwdtYgAhCjV0YMQwPH53DwRg1cE/o31A8noAYJAgwR5Pa02Ng88QDMpCEXHGVO3IfhX8468zs4IOv1D8dzhvTWT/tGJFJEUenepEhtoLE8PxkttAOma6OQjzEjhJ3+lEJIH3pIDymOnv9TrpALNJRP1TtOZElBRMHmP8xIsjzNgps+Ed0UYrYkjiYIBpPemhGUSwc6fvJ9Qtg4w59F0aGjzGwbShZ0U0YgbirRWok21zH1kwsMXBTmkl9LT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rkTePCvj52paXL4AQAdKJjRkMaoC84yGZ6vff9Q/JGc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T1QWaLduZW7Bmk7DorEINquSmcYqRWVvP1czAFmANXqFXq49boHnjyPfV2EqH4QYDWSpV68x3YjX6a3gKTJOKckkMWeMcngI8JRStoFn2akgC0xpbnYhIzOkb/I6t58NGuLnIfC5MT1+PV67I/V1Imgol9nCwfOrXytJbjSv44Z7O/h9TbfPSHt9iR0YuHkqnME/+tTbd/FR1WkGQzvl1EIhNtOyTQgoDmMkYsYOmP192Y7zI6GK9pYPusB5Xo7Q36GAgiXS72olAX4sMd7lH8Zp/M6EtyMQp7RZvUFZ4lUZ9vTlLJBWUcsShSG7gOYdERzJVGIvjs4DaudU3aQ6vAiW2808MEuXaws9CyDtm6eWlFH/4U1bewdyR498SLGm5+l6tlDda0JTzsgpDml7GkXOo0bgkkZa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rkp2q7CGPNXeSRix9JBZh92tmG8/rSX7hdP6XtHfXu0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gNOxSY5MagqSfdu1CI/kpMjTsMnPFqXmy3cnyrngGffVvwem9sxdouYyOGEESxWuA4WEViZ+nytk7+6kvlxOO5l96QtsvgC6jOlTLeWylRCcOxX7NjI6djcJsCK2zGkvsafewlmh/ZT+pygvv70IiuFrB0Rq//Ix9Jsx2tpzYRb7Gv0LPG+Tt/J0m3tIAuJAlnNbzIEjjSfR363MHmKdS2zg0dKcRSK9zHcKclcxQUBEpd1QAwyw/IWn24ZVp5ErZbnnqxHzDJBK4rkKrkrD3m3RMxGK4U+CDdZAhK1lQzFkZsSyFVrVMQ8WydzF5ZrE6kdZKwclsEoVXIHBBi2ouYxB5zDcvrmTBewmANDnWMLNDePtdipPUf4ZOgfewEHJFeMbs24fOiY2Gm7qNGaVKOheaHU9vXJg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rkpGlYugrr8TlFY3ugmGXYijbqVorZbtbXwEfhpLiKI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/baORcZ14NPe3fOVlGRNUmU3yzDD3BK4B2AjQvggGrtmPdsK3db3D57u1RrWt+T9ZJPFPgGlw0YeQOKbHJB3MVEdY6nth2J66eYUKcb2tTiTmECee8Cpor19Ep8IQzouelXf0VNa+YgnAh9tpPkQSJJ3R+mumwvLLjywQlyiFZO1fxPeT+jp/T7kTLXzXtup3PlSPPPb+fgqptAajdyf0KCAH1xE+mFdk7QL2JUqmR84FHJZyzvZOvGvKPfvP3nO8bzVR1RlqkUAubuj/LUVUYVAHfTRgoazWpaonrKX7KaZh29gqPjfrUimUfQuc4w00OKncTby02mOoG4vHpLCJDiop98Tr+rovXgEL5LJ5YRsDaEZStGG6ZWtlCqMRKATZiLEUoVGr9Vs3jKLqioyg1fd6z8/l+8q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rkz4MNwHjAHQueo4G1PLXUYseFiPkMmzRXXSCvWGZGI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jitUeVOIHNs4DYeTvfu1bxCpvGucd4i6/sg7wfk/vGmfZKomSfE+Mkwf93WdSIq7yd45oJgO87Ngj2tBLIsLoXb/l4Vna8yuqSsEJMiIo2hRvsbH5scALxTaXYgGFJfMZiSpz1EQ4LH5QVN15hzP1BtI1CRXqE8FAWTLVjIiBzHPg5g62USo+w/B8tqlCHBjhXuUB9Eow33n9yPS5Eq/Ns0q1152GqzjmqI1U0AtTohEwDwwzbGXQaSa1p7wNnLqFCcdiA67fwdpa42dfUCV+EyzpNLyJejdn7VNTrIcJBUsVP9CHX/HzxAjFJ4lhZWWK9bGm63DFUIzBgvLshymksEgiwCq/dSThx+JCRWKj1YUPUQm/1+OctDN6Lwka13tb74Nie824l+bk4hYu1wcsw2kPnqiy+4J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rnE/32oPRO59+IF+nRMiuFfPMat9RY48fyI8E6s9NBA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cyVEryZ8x7ImQ0+pSi6wwNBwxTkmTX4yFpjmJSfCEJwnfXN8VVnmi7FxJsPPwWcUIBw76WcZZMiZPuOGAFViyEC9cvFeT54yFGPBmhGCDjBGXXqXR3v8Hc4WAAOreaJ30TiwaVm7cX//3p51xEytgri0JXWHAwVYgcMCn1nV2Qxr+k6SUGR3LUEVppobNujfxXkpXwHlqIwzTcM1mpO5rVFA2PqmMVZIWIkmAKzHqEwVSMhGqMrYc6j2VNs0bH4ZXSSBsI1IGuk/+FuclNFNXkyG0wlfq9AN42O5ZIziadskBmDwwd/oYGLjGt9oASz3YQAz+My4Em6V9di4cQ3PqdZK8gQnKqDsv6jspmyHeySjkaW7PaynsSXBRsSOijTsBtfsz/OlYl+9TmTvAUimU01RaAJR8mgM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rnZ/6V+Jynyl8YpABULV7SczN8JdVjLl9Sin+oettbM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XEPJBGVVqT2Oy4FnPn2PRY+Y/rTPx2DVpCg2nxcUsKJ6MXsOsIJAgGpDZwbiRIeQl/XU+LR1td/mYfIwdPGnkztjOwE+NWkAsEl4JtWtl/6Ncy+jym2egvWzBforDmx7mmLeptZiT8qBnlSJvRrgQOTwPNzjiEOuZA4qbUKNgZMtIDSBzLfsxA5B5gvn1WmsyKoNqocNYp6CAq1pdhGAdbmWvDrK+DyBkEpKFFysc5BwLvBd1Q31ojeBFbXF6kOb0v6XVDbTU5IFvTRm/d/W2mjpuzj8f8GGls16hTh1cxMD4ddOZcLo3kN8J5mp8lMX+6C/+mxwFvy96VGej6dM5sy0Bsyd+7/64NQzF15vajTMXhmF5pCNYkkghqfDgh5zJ0k8poHSdNN/q6USIdtK9RhAqD5BI/vJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rnasMZPeWSC9Gs4hmXcTcT/1QxZ8xwGG7KVzIwAXsBQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5sn+lMLHbLC+lPxhiSDFG8D5sET8rmXwhcK9W610N4TlthNxmiOxeBH3vBKbbKCu5oaZXyzrOcSoN4Q2REX3Bn4mUGJ/wKaqwX7vwJBZguw8alz9rIm/AJ/1uSCcY+S8AZks4YWJamIFFivDgMJ18KZowIp46swReSupC9xEDSgTGzZh6NrPlyxt+T6JRYQ+jXPNqKQsiLQzD2AfEmApNsT749IDqz7mIawYkeAuZVZjQmqwR8Asvq+nJydpISFQUxulYIMeL9jpJfw3jWyylsHkFRZMApJK12VPbdLSGYePPELNDGmZIQWSGbo7IBgD1RZe7c1CtZ4VMStDXS4gbrARjrKJlQdDANVFAdWc9rn0eXdZzDEW6hBXdHC5D//q5YILwjKUKO5llJcO4MgWlRG56Zx6yVV0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rngVLhd71d85oA+h8f/M15T7Cx6kW7pTBOJOgt4fp70", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WrBVpfNkmbhzpPCLABKldYYKz0xmW1stAcE7GrOwLBS+OipD0DmvUe7x7up6+LYnCWfjP0BU9/OgXQBdrJ6yWeOxF2Eq+f4ZXKoAOsODWJ9jp9vTvCfzrpva1edvvE9PBWCD2OjtWsf8zGyhZauRv14lE0ZCzUNG18CQCQyX+fi5UULhqSm8xo39ZSH53naulhSQqiAvpZfaK7nIp4nsiy7QZRpix0tOjMw0k2cIXNGYbXXGC230+xetkVSPRjN/tHpkkQ6J4VuwHffY3/cs9L7/49Inx7wB56izr9cqsWRZ48ZyvKVjpRwif93hm3eur05zX3+REoWmSt732WdNnrZ80RwqNrsHqJuHCy3fkI/s8zxgYILNo3Z7AT+Ia+O+5SPVQx+3yvEzgS02A8adSX/NnLwXFmq/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ro7nCuy60B2OXpqB14cJ5Uo5eciJyFj3X2VV9scb7GM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9VQVONUnYfkjobJp6y692FXcGOvGP6vFNTN6mIwXgzf9Vi5QQd4cudT7ki5Cur+9mGgXJQ61/4LY33Jv43uPmgsnevGIdlAQ/RZzEAbqF/xVlmEiOzMtCHcEpgnNhW7Qk5r1GWKRIAYU0LqLenWWdUTHIH3gVHymd/OAhrjyIbgSc2nm3QlrQHmHMiH5YzYS1mV29fgpdb2iB5BReo8jN/5jA37N9MxCj6DAxZBuDcKoA6x9w1XZQxYlvh/FeHWIRuvsuYCMgk5R/YtEugmPXMwBwxswTOJmXCCp6TjLn4l8Lui7gH88EVJEasnt9WXuMcA4XI04rm3fPRaucqGXyJULpwkerfXPhsKTHJHXmKd+3kY55aI4OTQX1Fbud3bpF+enfjRI0VM0tZlCIev/xizta9U0TiXr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "roX/Cfalt5Nz6I5ecbD5nV8oyIJ93H/gqnHgbybBlr8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "R8UvFrkPITObQQhQ5XhPYL43lcSMpTnQBReZ2+g6Dk6/NiqM1UahehDy775pysFqde5c6zYYsMhM+329Y6sdrlK/tzs8qSXCpu458GSBR/MW8Ktt5sNTgrE43FR6gD2ztcxLxpiQsDktO9/u6PDcaFUL6mP3QLCF7lB25dtsLx0GyfFuEMXVyLDlWt/2pUkq24hdYMyLyZIuorsxILwD/Y0KZ4c+6pw4bRyTADjO1yxRRs8mv8mHIWoP7fc006Poa2S+c2fBV+HXtvVXOc57DpXzjodsaPEPq7G5WXcbxj8uZMsTuZJ1OjRbxtKD/pYkcO3u2QBzPnwszZbfGLkHuQ7l6MBLMf5SLtkRm4vSez44r5x0o+cSq0BXgAENXl40qbe21/8OooaQorqY+PH6R1ZW2yrFuSGZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rp8qAbnEFL7PVUl08o2nYeq8U9tp41rsea9OUdWR+oQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FknAhgxeDAgSYcuG4vgGCECb+wkMT1DELnI3tqAe9CFNhVDOifu1sYtsbIoFh4Q1SbKEwiHAdfWj9Ck9JdP3QrXDuBrm1ishBjI++VVTiuH3iotUlRvyTBkk60EDTBaRgw2Ap7Af9aBpPbN9DhMSk2GgZOxqqqMEY0ZXvFOFXmIlgZpOGAnSuz5JKF+XFyU/xNwepKQPapnyjS4RQaCpVyPbc3RGVsgqX1blG9vFff5LmthjlscWZcKFhDL/yeeoLAP2bOMT8CeG0MfpGIXgWZVTEw86DGQh0fktvvuKXXR59f9OAgZIvXHCEHUDxYR8TvVd7EqL6xpDutwBCzmmwqMOxV6naPFHdVe+TCkjjHeI+OTiNux39Lfn3xrEA4g5DOTjaLcM6/ClNUSIYwbRsxq2CLqMipJ/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rqQUqI14+tX6cjQXYokJe6jy0MtZd8dSmEUw9hwV50E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Wvhgr7SQfYyjz4g2ZlXaExlmQNL6/wol1DqpffupaJyAQ1eLxx491p3XQIN64Upyif2EhbDRUqZchF+HBe8WAm4TpHJIe9suTzQnwGXADlDPkE5KWYlhpHsvSs4xPi37yEFeqKCCE3ALAks+Y5R2cONW5mXdGp/JRChwdP7E0csl+DweKI+/Ej6mRxhrQ6orYoMGuwCNhlbkP+cqzSWoiEFK5hIX7HHvNMmVl5FROHMuSC3rgxRVPs90jXHgijUyimDxchbwQJm60gVbluAId0puTPtDYntCRZwjaweNIFp6hUdJ+QCKIZD8GknScEYhBL+GBlI/Vrs4Ty4gHd7ih1FzyiiZwXEUbbFIjGHanZdsPgL6k3EkEjg22G+xeUOlNfwZe8vQCjDD/wZLiLzDV/q0NBkpR5Nr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rqrfExv7Isk1eM7C/+8k5s63eaoI/TszuhVaV/vkWy8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o55vhHw3CY2z910VS45h6FUavbueJHGbE4khOytKV833YPwdlHKuJuZYQ69jvckNXAvFMbKmHniRYhY5aU3GiJQisCFbm2mpRE6IlCJp/jUPkAM4w+Eyf8AePSiOpEiF4LKJi8p5/OWnWGT+NQA8tAp1hFZbAndpj/eIj1BxKLdp3LyxEL5ruA26bLh5BRW8FcPDdMHgcPpE/9xHXrgtev8kJTdZgoSImawmJg+rHWnqQO5rYNVdBxODOzGo4Iyqd2wcAK6G96AmWVS/v/4987/B5OZiLJwWBmb89+DXl8YGzMNYG5I0gyMD2FbKY54QcvnCqYx3WGIXmbY4RrUet2JtILueNwX9E6LMAI2+zpsuaW60BBMMzRshF6aShQRS8XRxVYDaDO7fdYu5E4hXeJAmE/iDsZ63", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rriwvxeBYAMulo1onxVG/n8Qq2kSjSLuTv0Ow24I8T0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ExYq7jFgCbjJLAh+rXgGh5+yUl/JiS9VECNqxEQ+ZA0c7ygUY15yyGjwbnhMSvAfzusoSl3vkZgZwPdJxOAyG9Co4HIc9JyINJ7vuy+ZQ9VefBufh1e6kRe+GQ9uLTTPmOhkN+e++DHFHT41rwIpwYCXGyEcQZ2fa2eZZHeRIe+dmsiEEOs28F1DCx77fnYZsSE4k4xINd7NLZ+nip1F9kh0dAfGqVk5yxH2mAAB9AYGw3fgGtguWIPfzeDKFA1T8sUqUzTyWt89KIG7x49sYFi1f44+moyerTEDrXrVkOOOiVP0YHPPfPMHiMKTvHDu7v8ZEf2TUnRF6vNYRIXPesmVeyreiUD0MwpZQTD2uDqHrDmgL6yZj6D0epRijPsEj3kEYqa0lOhydgH3EskQtsxMPB9r+RkH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rrpUKynmN/b5P64TZgqxL9G0+qZaxFV8I7EEKHUrno0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EO6dwXpwFWllEMc/UqgpzXilpDT8blJrpLcmuj7ZI0zbT7BhUQ2aDMqb8oT3UYoT7HzoA5jgiBpNBVeM2RPh/DNM0UXUAYSp4LyYnBxrsSSX2bkdzZelaNo23vXrRRx5FI7tdNXhjNfQIm2eSbe5OMMg5wMl4kg7do1nf3GaE3hLN69PcJ/3b36Fu84mYnPRomXXoPAeZ/TqC8xERN5oXbsmAuMS2ArvB8CMt9jrgeHH+xP9wglem5UCHvzVOBj1IksBv2d3PpR9xh8YrJcDGGxAEWzaIUZoZde3tuSNbTjytgaT62aAnoM1TMGiOah29Y2iKlaap6LZ+o1FHeBaKHhiUQiyRb/h0jhq9dyLtWze51DxIvHwzFWcIAOuMHxcTLEmKmVehqAWrWZfiTXsd8ANW6rQ6T8C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rrvCYqN2xV2M6bFWXl00c5eQ34kyVC4gIVv4roMaYKo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OLdIavAcEbHseZiSlgbG+9z7KgRFsbBgN/LEL/vw0nVuEf46JiYE6tLnmnAhfV38XnsGJuM+XPHss2rDLS6IiY5ZmjHNJoUibN6cqP6xUGkhGE2Kyq771aN5/1W9hFyd9RsFTUtBBG/ArYSt0ogru/a3KALjwkQ3tU/t0BsjFnTIG9aOsVErcA6otFRcXAC0HH6LN8YZgIyRmjU+t0rGHK8m6tkTsJjY5cAIlj+B+8trK6Zat8o4kZlfhZa2vw5xlHaStZQxApZ+gcNINJktkKVwCFCZBw6n44c55KuAAqVml6QOvxBzecHKvk4s+8H5WJ/vEaFeXCC8nZJ3PuM7UrWUfZEnUeVJtglTuzeM3MqD3FJAN4RUt+6++Mid5z7HVhSH9TCNVWxi4NHAO9RzasZ95/sNYuNa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rrx4Rvh/nA4ZP37VPByNc+cnKnKV11mjwn0VcGe/a2A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jZCGcHcZSpjkPs+pghfCSUUv0PuRhCWln1ASHLnBQ44je+LR+j9Yg99Kqt85JBfKZX97Rm6hZsub0ubw5+PdXyuVONYuKsNBvjVzVYSwZrFvkoWbfv5pKwEJWKz5/7XrepPnecowsikPiWT5nSGu9yFDx8p4i5QGXFPvlXhQiJ83Mn0lYc8l0GOWl8qznItb/W67Uo2+0JzpguDW6Y+oy0YG+oBqFXWsod0Yv29VVYgrdqtoflmY/uiRc/OCwTkE5uL/0TqyYl8rM9EO/zdSqxD3I78QVHldFljsfT4eYUhcF/eCIBWAbSzYVGAPahzOHoBWtRD5ICZcj6onMkkys0hCPluHy/QAX4h/6e0AL84eGvJp/JtEPLlGwhDgX6o52MrLU+z9rAoS8wQC7xWYjM6gHqb1gxHk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rtASff/s3FU+RjOFB21QVGS2V1vBu+fF3C0JejH8GVE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "poZMWavt+PXMHjJL8sERoye9wgJGkwh6fGfdZbvouXmzQAfAuPrUM14GkTwNIJVTsMLefPlUKThEKT+ZOktfplI2/ERTJxcv34n3yo6GoHKSHgukQsAbtL6CYaFBQ/qnt1WjnK5/zHvC+2rLH7yH2txOuIGSVfQvYcYfXWAS5oV/FuDMmp7byksAyH/Wg+SLetzhK+9IxgcGbcpAQfkOVJaqNb5SJx3wprk5n6EF18i8OYRwluCzlAcQlRVHFGOLG+JySo12I2bRnb1C9F1XQA6ErUeI0ctFsMs0XF28ptZF3pF1QIMRd/+LJb5Dxf7BX307cPS4/tMs0nj4rtmU8Q6LqpDUL0lbrse063YRNinjFmd9Lwj4hrkUGuknl7gMSoFnKaeo4XgBJ88OCyAR258SUUC16+9q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rtdSHXoGomg4ebmHmL4WrMst06+uRCPng6XXAhmAkAI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "APNxxg4BWwRmIppIpIk6rhI1qYu2jHyxZA4evk03Hz4qWwmapGMRxXA0p35ZZRkhiW5Xl1wMtb3qH38cRMUigWMBKpizj87wqT5fMKmOnZnCNVX273AnnQyjKmX0YqfGnJZR8EYMH16pL+kNWxN51A6QdwZWCgNLBNO1AlqSLuJddTTAw5iiQI8UVA0n7nZd0aGOjqzOXFP0zbOMuckOyqun7c56oU/WzmAv1iC1QyMPNOmqRQcWC1kDQsBamvn5UNAWQbz+SCnqic7a7CbdhynZ13ovKTSpI3r9soGE8Znbr4A4xyho8MuN54sFAJnY00rLelCorDykhgjD6nh/7xoVmTgcNZQOqWv4zsheewL4iPk7G1+f9SHtxwZp6jeptwUPreVVSWH98EWip666RezI6PMs4fbB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ru8p4txbFDonIO9ZiEPT+/Sg+pukt21yRYihKxM51PI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "juW3BRXXLM6RHQrgvZWr0hr79jDrV9sQrfY59F2EH0n++snq9RcuBQOAWyAdbjwlmpMNQ0rpfTKoMno6ZGy6kbNuZErkuuxasCq8SeOxEHRDc5ltg5/Y0l+kaq4B0cmWhjVCplcxsEtii32N8yaVuAcsNXX1rk0/89jWae3ZSZf/gTuLsoUiQoSmHnP5VeWQ0FRtw4Nrdg3G9soiImeiv8TEmtivuO4ZEWV9UC5JFJ4s5ys/e3BTM6XdpfLY5s5ovZ0KnbbDh9/sohF63KoAY0U5ve8oM2CTys+zn+sPa8HC/DHaFZOX0dfR1N3PnYFdXKte7CcH7UrqAM1eyBlAfzrRn1zgZNLvqY2UqUOZhYQ6s1ZNBWaFBTZJLenlWmkEgJnsYrHhLEu4rTv5IzBvA5SLXzkLrzq1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ruWvECMMsaX+ZKis4Ca767FDvqRmLwzLHHE/TtSqss4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0NzeyppExZsRkVRApkO1EpgcNIMmGQKk2Hn4w4z086xWLV7jpK4+fsGlSFFW08YPs0PYvkARUOHCSGOPFPys5s2bD1JxFUFsD1xH2UTDYOJw37kQbooRIVbZ6efLNiVJRt0tnC+V/iT6GSpSvhPmpQwB6Ux+c5VFqHjELH30QIo+eSoxRMO08zaYyRc2Y60mnPJJbWqQl4n4zRUpD31KgzlbYbKQ2es4NE9t9GHqZT2QGpb4c/ZOL3FDXaaY0sfBLOyVm8HEvQ4/g93rd8z0BfSrXwqHY3VJ6qIdddwuYx+gdwn+34VP2lULMunDyl6xMTkskk48K0j+ygjB8nx0SfwTCR5epOmvgEDLkA4aZJvz0iK4GKZMVJs/h4Qk/UbwxnCe+Uh5wm6iYH8kJ7oeN1QcTl+1jdOO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rwIZUUdUhWNmslZTMxWYAmhZmVCq0+kfR13xq9DN454", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fkVz9OoU4HpdKYu35TMtQovsrMmWz0K9HzHvrtwMhm2hFXgFFq2buYwr3/hGtaLkbVPdKvx3g1pdEyfy2sxRH0bOcFHLwTy2V3/KMkMbb2+Noarjnztw9DaXVmXxA0XD6cmO6pOU8h6luRnRa4nu0yIhD0wvBu8dGH8iXxjuupzpVr28euQDyH+5qQ8ohLFTyJR6/I4GAXtIgJbPx2/mFLE9PCQ0oy8maQiQtP+8qEQuUGYSO9V9xTHZR/N+UGg5Of5LjcZ9A7No8qs9ZIBN8yKJjRzRCNUBIp2+6kqjlZm1VhjikVblm35uLpQbgBm1xZbNbyv1cJ1Xe0rkcGXmQFTjL28vZ5pVW7oSBTGEivXB5JUUnQQ9pAErQfd2UaF0VLTojGDnAmRKM4u9MoA/HwEHfPouJJHh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rwVSvBGdGWgqd87lazu3Hte7osGMhLvWizqVvpe/DHc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "66Kf5jAE1TshuNUb1mUoNLxuM2Hl09vqhM6kqkHq+jnZY9XWDo7OhzIMerwRSI6JqOzCUOybwuAuh/OeCRW00rqd0jQ6qLmSYgjp3gWTCDjhWfnWUuWZp71mTKJgj4WubPjHxGOJ9NOvV6G5H+VfM8WWkJoas0aiwCUd6PNcLaZtr7AHZ+DHVNnOgg7+MKsAbhh+QPW5hTCqdsKkfUzPdleFvW3fPNXQibOoRMbZsZtGzDOi74oIlgRYoLiPPnuPWh6OImjonCNO6Q111xiG8c7D/moBLaWjgWzYDPV3lFhNCh9Z9wewTuCn3/PEHsHfvR1ETAvePNLa/XI81a3kuc33jgkE0Zph89DdmNzCaj8sx/agyZcn65bhdHSDMTPk+Iz6AU6gv4PPCgP+hvmvnQmEF/t9MNb3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rwi6JcrsnfANtW6sLCrZ6xQhamDSWuBFh4K76BVU5z4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oUoNau6v1QZSXlb5Ae9zoOoDW9k4B+u52pRiN2ZKKDY0xZO6GTeyyL86U8usSAe3I8U83a+4OeAlniwXTVjM6G1SkHsbHMk1mm+f2TlyQ1xQ8wHL66JHfShghnE7X8xHWvs1gFdeaIINI0EVJGb9YgazHhVIZlW+RGNb64KxEO4b2GIy1Nak9Jg6RkN/5IFeNmrZV8sErAwBaas6qP9oFIxhlenniDRQvih1HqE0Sssw2knFVArkkO2XeyA65lFgtFuqPON8uIONsnjmLyM5OTRpWDPbxEFshzg1kaSm7Fl372bFC4QeWtBrHjhBSKpyV9GDzYQzgxoZ7FVfVGMlm8qvPtzwqzNVnrkPEPRlgLDX3Zjt3BgiSPp6viovRhJgWMatNxnB/nWWGpl/+0J52JTJIvDLnD5x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rxCjTsTEJ7vwHgT78Qs9gXqQbzmrpUAzxjpV9F1t/LY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9LdGqcgGUFzMvg3zeLLnFGdlMQ2tl4gqTLeIfP/KQsC55I5MdCQkPjVBnSWLR9j8ObZ0D2hbJ14YKj7qjQfJtnF4/YHYIph5HmGSiTtpZJstyP7lQRZo2LmVKRtGyDJcnLorfzC+qjAmchlk0RVo3hgDCkJm+PajZNHroiT/z9E8Q7nZ1LL5HPglG7k0CBABNl1SAwG8TBWTmvOoB6TV+SBc6ripiY3iHY171b3g+eGhX7yqPkqS2AySypGTKH8wczntybbPs05KduFoDEFeY0UdeXyaLrhh024lnNFASL0GlJWRcXDAdMpy3mH9wdozmEvttYTRGY7gTGPx4IWcwHerXkKpRR1VG1aEgG/yhFUzomEsOU9h5wD17upHSuZdGI7gpbjIWQH7HUXzbXdv8FfPKM9x/Bsj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rxUK/FzhsQ3PiBodl58HG9VhZIh/YQ9xAL0I6byWFYw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P+YIMj8kLKoGYX+41PL2GujnymSrPmKH9pfYGic68cNZba6hmyRIZB4f6wi6+vT4FB3iHO2/GQrUr4Ya+8N3WmjHa5zjEmW1yHndxWgzLP7dgbI2XWcNRwH/wNAYddVwBynoJrXV/vbOqTGprMTUS1PiMLOm37k47gqh9BWxdQZHj5WttYTQNGJ/q9rmtyYWYHYPGmmwQe8RvXiN+J7nke96dldxSfyQmCwgcJppYR5rpWKRC58ACMQQGOn71xV/Y1Dw7pw5RCYioJBgrexrdut0FPegDHWa/Y9VKI7PuQIgvUUbHQXchBdUDN67Enu6n6QX5bFYfBwBAVU2hNEtpoq95NtUCRMs6sEN6UBgxFKhajSaSREnWO2ZsWnRBuj/wtpB92hIbSIgftYlwNY5Xk/4d+7imAW/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ryKvtrlRo1MOeJeHi5LBQuZDn/+HhsFvq8wvhYzoDTw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pRP60g/paWMON0DtjNEr+D0Y1DpfoDRmewHV4Et1UkyDsIve2Rxu2zpIgf94GEF/PzKVkqDiJgVI9ftp2m5r0r2lg/BoI4lc4qZWC/J8LVQWdCNO0sdg4Ncup+vQZxjHSQ2sCygOaPFuN6rvJL7LDWNDD0FduEdFzxxcICpBmyxtxLyw1UGbr52dzlQZISC+JoBC1nf2wP7GWAD4jl7+xXUBpBOL6ilYKdB3wvjPgmjHPhdofNfP3ijMz9NmF6eDzdNu2IXBWLEsf6JtAsuXooO87EezN1KZeXzc1F6GS1gaFE8z2ptHnNw5KZgYa//GA/d4BXJs2K/vq51+uJD4mVesKVb5WSG0yALQLUy2K5EHTzPXHpc4yYsOLGLN0vL4y+3vsNbKoPQ4c1mkuelM5m1trwVOO/z8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ryRXDZ/LlfsqeYlwRLbjhWmusfDk25ud1zvjzq0nesU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "55oP6cWOPE56/+O9EmziWQxyr4yseAroa2JCUU8roc0iIihJRHa2dMThjfYkpucZVtIAWS99jnU3xFnkc4S0yft6+LTymfdVGvLAjgYjGc53BDtwwHgZfxI+HzuQ2l8Jcn73LEYCQcGN/M6Fha+ncZdlxGc2T4x8cGkjK8k2sqbXeMvd+SPRGFlR6tamJw2JJViZjsdoHkaLsOAlBWw/uByhU/oBaBm59kReY6IEijdGF+FKTBCxc6knptT4gj2QvM005Bi7k6xc/MkLzvRU3RZwUXtmz3+jSpGw934DyoZ8DrUm56AJYzL79sdsR5JJFHBQHZ3zIEyiDz9ss0oeOw+1H/vhv4pr6fxeAj4ThgGflGy6MVTbGTLl5CND6BmMAMAwWruZ49iMwvt5CQeKfb2lfbDbU79O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rzb1eL/WXlQAku9tXTvlhtmAiMllkUrX+2GCmlOMmlQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lJvbDHqp7D8tEKxEiy3ac4/KxxWezwc1wmIsIflUgQhUBQBbgC36cVyqRYYdr49O4njCW2yB2m+0rwpMQerg2HmlDFZk+d82oU4hjz/1QDRVNxcmpGXiUoCCXIy8APfCgkRrYYLdMe+/oINC2SamWl8BCqu1LFInQv9KI5/jtaOoWEqGGfSdjoVS0oe8F8bAV50+Ribyc/sCrid+gRAqIeOAlcRrcwi7qhccTIU2Uf2wyCgc19iMpMMHRM/MH1cqf/+K6tREN2BYkqbCZZeMoPL9IqK7Veh+y2xbAOXJG0aAPILLrKW5Hzou5E69NDADFGHJZpNQ21Ih9WZzXPsltPZ33PtAjrgfLZQVQBqIKkAP2awhtOGRKm58Qae3/2jI8lKpDMwzkT79qGkvkuQBnsJcJs+HLLkV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "rzgO3SAk3VEMQgZp/z2nMJt9dlO/u6umThR5as0Lvm8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VWzQd3dE/gglxgpgbcWHhgpQbyyhAvR4F7h8iQIwmNSP5y7ZupFDwt6kYESuPDqs2bNJ4pEwZyexMG9ddsQunNO3IZHxpdgeVWHw6PSiU4RrYqUxKsDLtInkyHQM+xUUvlzsu46CfBoJQoSW3w0xR26683PAoc7EwW7vhAvX0igQRt8GYinR2PLoOYfTkcU+aMMTAtGlT+eCp+H7+TNGRX0VAN9xwI/nu5CF8VIDbDQEz0XGLZybDVqek/hvVf7oV1vtRviEvse7muB+JrCX1KV8gX8YwNEhwi6SMuDlyZsPQVtZjYrXdyzotCcfnGh+GF10dJlID/EttZZExrQ5O1THgHrCWHL6gbo4wtH4ZOms3EeupTw/C5ILks12PiOUDoy9USm1/4Vq7wSa/Hf91v21i8w9l5Zm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "s+JGW76DQKbq6jVyEKznZF+J9TTTsJ5cQvdSrAmNh1Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iLL2SJRm4L3HQcKNltHGCt9Ywu1iAB57OmkPnXCdge3wa7gnGnqMFZAT9LR9lGRv6D5bzY9RHyvXYBdJof6MkQMO3dUBCmHwNXUl5x+Y1PXhlmZLKvoYwawSRJjORp4/xYAq17hsW3ZSZARfcIj/qCD+3sBTTXZEhJF7FRLidjyrmobDEwPXPiZ5dwAwfClTHFJ127jFfVBiZxRMrG704av8+5sVy1GexT/LBPB/IpcP5iscbLYJrqw1Ms+z2hOlNuSQs5ScqhAJ+Xdz0T1gBakG/vZ9kiI/XzEXnUNRGa9oO4AGN7MfPsE0CzZH0qZhrDiP+hzYhA//To3R1j2sRYTvGMCi32u065vUdX3g4SvQlaLxW6KBC+1EUQjDebaBNDivyHzK421OEGnLztSJHSh7hWzobNdK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "s/q83ASUKzaL8TrMc5uVJdCB5rn1Rq1kMh268Cgx98w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NgHJ3O1LE5BuIPKj5qRNPEdqLSUfUrT0HtrymJ0ciwn2hcbf8QaBsJdDptYW43B9k249zazqtMfcho6g+Pzif4M1wbBx0+LE2WiEA8P6P0Eh+mwGgPc8uWyt4T7dmVO7OOszsC8RAYEgjMj0Y01nvrkgXENbnM8E4SNSwfyMjew+HlAb4TT2w3wdF6VAG750Ojod7Ag0HEPYl53vv8L3iADwgIdHjWVoKnchKt5xJ4HN2/j1W5YNvdQt5WBfb9XDQER7nVcfiIv1Udzx7xZGcXCOjdn/RYmyS21YvtBMKA30PFTXGyf76Wgt8TKWWxahJrVbNdBm1eVLeENLbB4fh0/yViOxzeCZMsmec1JsUtB/Cr5vVOCZh5AkW75JYbG8abkNlLPORjF62ieDsFXli1tEJB2HbfEx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "s0EgN/81051xMKSxWAMDiDjco5xVuw4fNURCSrhGO6w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WXEIWQYRl2irG9hyonBS1qoNILLKvxjLLeCmf+xqTalQb2pzsSiWNe72wxGDweAFWJN3kdB9AM3k1dNZ0ChnB925C2ggC4KpJD2ZCkCHcCviPW7sTo/4Zq0s0j0yQSXhXpBWDs/0Mo0AWF9/B9YgufHCgcWeBfUM1NT41tBIo0XPfcSYJGIZPDsdBzYyOyWok/LD2MdNa8UeIg+lzxg9HcMnKL3KJTH2ik/7SZokM52GU7BzYXnRQWLYGjipPmuds+qBBxiPVbYZh/tin/ptAw46i0bBD/0DToQhgNy4jCB73VZAK7d4CnFSySbyYn5izjUPBZCTWl2MEfL2oND4drLrOLfqzYpNXi3ayoc3fiQawCOhfTps+x7/N/VwWr3J80oJJtpw+xL/We63HUTOjHGp//bOT8iC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "s0ZhOSYyUJ+wwucQMveK6wI4RJ3QJXjGedo/KNoWMzU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BXZos25XFc7zP8hgogN7Fm4Hg284tGR3x3bdTGomAV2LQEZQQkb7Q8grlb8rj4SB6kGTLFJfFqY9DUJC5ok1ZymwQlswJBgT95kWsO1QTOw+2Y7ghcwipTOg6xETzliK5sy+BfxBtQPjdKsq4P4dqkI1aKtEGr2dN91bKAPwxpn/44NLQ0z1bAufF7rxMPIil1vb5rzfUDRfp4MwdKaIWrqsjW0FSbXxDPiaiem/5IQ6YBXK1znlBw/X40nU3jCG94PraoUVpaX/dThBCCdxkvSgpXgqZbeFyHBjZTMeA8NN2A9kpYuv+bEyRJk2w3HvR1ksD5rXfvg9dPceKIvfJAEmVLhGOWjvoAB6qzTQXjnsvYnEcYkU9j35tZ4W3xYD/Ef9S5uK3kzB2jdPR14nonuSTIxNPub8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "s3a4Wg+yYJgOHpMWWcvBRMPRie/zF1urwRvCnei5tUA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/DCCQxVe31DZ/Y9NtflcvObe3TeVVOU2Q7nmgI1ZdaHYP3TPzxYaUhzFbXCt6Azo65ZABpF50vWAsnsw+Lsts5Zsx3qDt1KR6khVTTiBSPxYsUKljvyVBEh8gfvgzGbUOUGpN/Mq/hwp4FE58kbbBh3GPjlE6YZAa4XAryoEuNLeL5aMfN2Fy8iRKkV+dL3G2fQO8zz1Cn2RBl+5xNn/KQA0J/mssSiXtUZK2GuMWLt+f7qR8c7HJviCB4qmGF77/iOWeYEeaMofINzF7phv1rXa6h/4lvxGlScYq2nhUDiIlE17HZhFXn+HGVxGzGZkQYxh7AZAiesYfYpzAtksxgjTvq20X9QXDcSqagSXLi/MayzrffsC4Gbxqj2Bq4tbZVdVJ7drBTVW1/tJFSsW5V5QI2Rur/YN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "s4GON6s14h6w8lphcESeRdUsXXqOPhh12WjVlE92iOA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "17c/C0zkxhDcNeVCg0pr7bWbYZMUKCCAtL/laBcxr/rdhg8O58kD6YJ3nSusDH3whWc4dXf/vb8JWZWCc8JW92+vhl8V+dL3FSVTG1zlN+79h3Z426BzI1Uf69YN9VlPMdLe2wwsdts1de1BJvNo1ibzkGPK6A0bMrHYIxMWL1xg+ftGg5TEv2JOX5T97iOyzeQ1TjWS1CH6XSuW5RjDShVDGVcVZe8VzbLnydKRIrFg4U6ICaTKuc/dcRUD4K3G6EZQWRI9tiXQRJQNGGcbL0y7QsUMdES45knDj2DyvKR36Y7hLkVP7iDLf2Mg26zaYh+qAMOyV2OkDmgN2Utu6aFOYUrY324YBLJFL/6NzWO9r+ipDTZohLPjX7HnCdlj/GiGNHMTxmgvmV98yH66porsyqpyBHwz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "s6hutxu21fmI0QcJqICJiOalzhKHu04B7uw/WMTIRvI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JJIgJ4DqSUB29zq1BO/Wl6Nf9Qeq5Q5Svufq4/qDUhgytP6LldW4MaL6hB4sV0BNOVp6K903ocYvc+jvwaNEstyXy/IWmQGxslhf8YalyTPUKTN0bHmH//q8AorchB/ndj1kQuDxR+kAGEnOKQEwErrWnG1cqY8mR4hSwWUTu3oFPvq72iMjTbPVedBYHjYSD1go+UCuF7qv3Xr3PMEV+mGrGoF8b4xvE22EM+z2uhC+6DQdxx7llXZ80YSOJQPCUSUDeyu0HBJhhQagbLKJewBHEXByR9ZujyIR1evljuWkC7tFtN3K5TUFQmoWTqZpZoaLcjNDQqG+q6fud/vDIRi3RtjBrdtL1hKkVAhGA0JOKWC/9bK2gM0CsOm3ADqpyIuCQwUgKhRlCeJ1P9doY5YGL0M/DaBK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "s6oakfYmlslMApn7/6rO2+1pSVN3fGa6m8SygJaSATI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8JosC+hMu7f8laUy7q+n+OZ0Tat41MGqDvXg0tLgQn4tpr/bxRqPSjSq7Wucc4Hsn6itg378fZtRjYezYEnYnsUa4qpKUDc680CTpKisO/kBiBQPhVOBk9/Krc3bNg3Jytgx22nlfdbNcKDpkFaDNwBGWa8CmWYOzS8j9Huopk27OnjL8uop2F69ObLeWlNuEVFYpH2VjMKhIBiLQutkM9P7pK2oPncb9FBeqq2OcIly6e9GHnk7NOLDetQoeI/LxSvb775C1buUdBoyK5dU3wWGlr6Z9RxUZgjxM198tS6/Oohdus3K2X6aeV7oXiHqeWaTHQSPEG1gS4OmR6u9QNB2t1LDPrQ9A5ju/j0ABjp7oB9O/ma8caxUt0IEZvBaym1CXDO6Rol6uQOvcTRUMCKWY7TUrsUf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "s7E/5xnsNCzV5A4YBduFs6BvWps/CvUtjC+5SzCZhnc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YuBYkCzvfB0rhg+Lmx9pRT2QffrqLMV6FEhpTYl4tg/qyaR4J8kDW+OfVOpvYoNo96/6S4fgwUKmq1zzn5ftquTL1x4wZb811OO0xHwhMUb+11gA32nETDdCEE9K3IfMEBvfJyVRF6w9MIRSEza/TD1mK0odKTIq/+Ery0hh3Sf3UvukLt40QM4SFlxUdEKSdo2CCNclroOuYxqHcHwoyUnhrHd0RVjtBxvJYsM7f/ULnB2amRSJTI/djEFQDFqfHMKdOd3Sy6iWF77lRIzCKfL9ntwTkWBBjCPZAm1dikVFQrc8vtc6imQpHxmwrchAOKETVOo91HCN+IOFZlQR8EZDRldl4oZWjOfCMCd7aS2PCFF04QI9ztm4rfHuKwz2157URof9Y0N+Xy2IdiZnmG8FJpxoPVmy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "s8dmTV+uMGZMQR0aR6klF+3sonok/ZZtrWhrbGU6lkk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CUmptmPw1XxxEDbIjriTy9bri35yeBvOVkdMm1Z0Pi/wE7bas8+YrnQps2D1vjI9C1WslN/6IAEm59Jyl/swMZJN6s9aa5v0nuOAwByHL4tK/ecS9ctrRGwRjk8iMBeO5o5NozOQ7tZx80mWToMld9dgli1FvQK4UzWiza577QvwMqRmfR1qvkjj2qpG/JxF6DcmdwHaqxbLPFkzmuQjObSDv8/J81mO4b2wOq17j33DKECz3k+wetdSWyRi9z6Rkr7wnoSLD/FawsEba4p7JftTwiz4fnMd9lYh4SNkuvU7n8tFQWM9SIiaawSfKc2lgKypqC77hMVd9K+sapaztQNqzuyvLBS52ZHyZDUWadz43poiSgGp3RlBAA1iXLzQI339+HY6fQuWW42kSB5KrstJ/j7UEvo5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "s8e1poTz1r6yCbH0UxiWXwjn/0t5uLktrGfX2TyIEr4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7wJVs8QottO8dtcDtY0VxA9DuIeXPXZq26Ts+N52M21hNlqWAOgJphUKEv3Vlnep9Yc0mZd5aTEyVb0ja2E1glgwM8HDBvOg1NN5wHfHDFAwZgzrQkDZb98/7moCA+piwf/7eFNBW0e5I9b3FNkMQ2li0PIg+KL1fG/h/WRviyTU19aW2Qzn9HNjAcOGUo3zdL7En1NxucPLf93jZ10VMGW+JTATu1PLNZDaefZyWLBcATe/hE/jtxw71F1ehP9CqSNQkRyVYoWhEfjsXJFqTTE2EnnbeKmQAR/5QRJ4MqBIBF7V9UUmQYJjgfZSHXc24N2t22wbJbeJAlArKBJ5Cn4RytaT+e7eDNRf7gZfTvDyc1APJK0Li0J3BiSIOE7N7k1uhStMcR3KThjvckUYbdF+cBzbtfGo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sA7x/1DuqL2e14enUg8xF7ukLzg/ab16VJI3tA3iDA8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "t/1s/GfYvTQCsva2mV4UszIc7N3E1Do/h56s+cDjsXBPz2klxISQEv9DVSUWfBsuue67bHjcnwkv6FU25qfiboZPo1921oF6yQm8Jt48CrFemRhmUxKtxnnTVw2op8iXRQbho/4rTPNSqm1exvQrR0raA9b/3bBTFrqFouHDjFL5iJHDAOwR9PH6QmSHXYujhKuz9y58uvT6iWfUrCf1NNL0pkFesNGKuROWXRPMNSmG7iy1pYpNhez4WSsT3i35wqpPeNDEApa9bBSORGgw7nCZ0Y10mMolXGSde0RR//YbENkFDqWV4Ry+b/yOIQzYjyOPrGDTdLfCqkqSJ2eYNtkPmsoIhAQL8vUKpIAIw6WMZfTp5/qwbz5/K6YX+JCLQxbLorNLVj6X4FxeRqqGKqivLm4HlKp3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sCftyKa1IiiErLgav9JO6FQpDg9gNeyKxtzmIz24Ouk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uWqEv7O41ZFHC9a+3ujSZLs0byy8v4xCNInQgXdnaxQHCH7gzn8oyJv6AmP+TGPdXR40eiIfr+ZH9D3CkJE1JN66a9PHULpw4b7sygKwb7SGGe6FJG29SsB1x9eBnBq5+Rr5BIqKXfeTAIWr7xOAOsv1jEWZCPvN10IPbjNtRYGNhpiuJs7V7LL9yOmAJaHmQTJcLtCuyPu5f//lWScTi5a2Jkc9hnnLwMYSZdB6HB3GVzUTGeubXIyJv/5MmPkrmadE6hZRPadXtD+WLDzepBmQymr9UyHEyXEGIPxmDhuvU9UHWKyBCaJ5FHZEEDOTqd53n4bgDI8ygXxCAzjjwOLM2lwsCPRtyuX+4YQxnUmioKUTDp6MkxabNxGG3OyPaKreTf7Uasuef2Z8TL4f+Woxw5D2oFGO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sDmAf9v1fAGA7VJ1Giet6WRh5MX1RoxLGcSbcWu5DJ4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tgw+eEz52e7dYwsvK1YfTlEXMpwpNH+jrZDYBs8gzAcyUjndo8TGhH2FBqpo/8yJ2JcDQKVhWSU4c7S3fXBGEMaATYkPf6dhFIPVJFgNY3EBX5lcLDDahUIUFWg/QKQXST6JDPKbEHnzYDbUxqoUFhDvZ+JRsSQ4w2GOOwXLp4XlDtbByrTFaqFkSIcWrSt/Uen7J/A52kgrgT1wqzTh7AZlKnHBagiE3kCDWRnxbDRNnYxryhP3wAeom+/Uq7rTtMrPYXFx/tLQgi7VR8dHS15/vujwmJqY89XdaN/HiovNGIxH6OY1Cir4Sejl8pndIHFyVro2/nY7SCr7Z+GJelprMEPmOXw5IRLHUDjtjJhV1GpeJNwryh/dV75S27ZWfqxrU26aFTCR10MbgPMbL6amdwJ3n2VP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sE71KVDPMC6pYWKD6nFwPGkV4IiYBL/xl46QQnIWcBo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sSOKn6uMSa+A3V3agY/f9pHrJrwo9GDoLkdG1mAoUdtxxdpXGS3fRAjM3NMGMD90SSMux7K/JhSZOYQfwNjrOaVCjcC8cRD2PGfTpa2Ff2327oiXRLGltNMSw8TMrV+HpzFZXDMwK6SUvg+br53nJ96Sy/uJo87hIlP4BVZrUWA4DoLljzAMRH+UrlY0ykc4Ps7x9LcOCUM+htsi5zT5nfUCENHncUQKKerYerdvrgw47zaLcrCcurqDiPkH/jl4bO55vSXm0uNoNUw58k8r7CwDcCoc1Sl4ecxMBFW4ebbEvTKGliGIA7VfNXAADqmuKgMHSEhn1z1VoMaVOXUj9nH0PgFynGVubj0xneLxu7Y9QbhqYH11HNnAzdapYqU4KKZf/I1vlL8UQTlujgg+gziSI03F5aLG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sFHkrEqkLtj94zuRr53ksa5gHZFcb+kWkafu9fJCedU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PbAO1+iBxyk0ZCIOAo4k6Rk07Kbed3YTkBQkofRdfHAPAzgCWDm0btCpPf0T+rElCWpB6lpHIfNUV6SWu45f2WB98ZUyCJWf24RMFNELwRT+TX41io8ppPzoxvBrNmuQWHd0ivBLB/08rLZ3ms7BiQ79G1ymJruQupo4tr/jDPqpF6z4d4v8zWDtCs6wijpRZsrOiNhsFc1EFh2eXf6kMbQmKWyZ16k4GVr8TjzoXkLYXtG5tQZmDGX+wi1K8J5RYtUXKnwng5lW/P+xfsp0Wmev4kwppfb7L4qce4OM7k4X2FnUKVoL7YG/1j4PpIEsibIaqG2TlwWLKoh7mxYkCpbgk/JiXhk8OhXXkI7ZqPZKAKbLvn5OojYBTnaa/Cs/lqZzFPNHVR8h5ZkJiBdmXq4fDvU6lv2g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sGDof8R//BRS8PHmv550zlWf749cYiAMabTk0QmxiSw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yjylSBAs0twSIgs+/CDj8d4PfDO25vqpDi4bUg77nwi7iazcLg7HA51g6tm4HutefewOI4PizZTKFCzhyu+N/sLgvcra9ZWRXG18x58iVWUbZoQaQT5amveBMDcfBA979iTTWmbhHDN5Rc7aUSTHPWn8gNNAjoHdGN7NkD4tiKMmcQ5cY+geGVt2rH6eJIWMQamasDKwHOph3KKBJidUFbf6pZnekap/sbtHkY50U/jVM+UxWYTyOlQg5Ma2z4L7kcRMBqSIfIPNsU/eWYYDorsiy5v3FqaZmm0ySLBwNiMhZ00TlnIm7ChX4R5syO5U8wxaWUiQ8CZdBDxSHt79nTFsehCCgPFG8dibL77LHdJn135WtT2XyhCGnZ27u8l9vxfynl4I7QQEyO9dwUUFVP5Th3jcqOGh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sGl5i1kF14MhYIzjujHJzmk8mlsskmXRwgJtrfp9lKc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "z7CWtVk5tYMYvkPh/+OPOcvfadg9mit6LbRwmSc+nUKIybKHk9qjgWqnpdzBZNn1OwwRP7tnUpNhhhDTiMU0b4Ut7zRoZqK9tut4J93rvSk1PohOCZW0ijqsdMgpMsIxyE2O/8Cnc7lFrU5JuqlCHJXwWqzJ71pQEH0zpgZV8zTVzG7olMg1PDG3xHI+AAsvgeuQforQiF/RjAw1t1qS+J6vPmDmOOzoEsg1/Dn+okbO+S9qioSFpeNQs4NgOjOuDcMwKwlNJD04+tzoUEMJ7LlHtSlhYmejr/PRB/I6OqYRtPOYh0YIzRXYDp+P3UVS8fsh5E2HdIdtojiXUTNUY3v0mN5XIKPtgnOC72w7JXQdsxTcrHW9r6EqDKLHkQ+CZw1VO9PFwc+2AZ+gFM+IrTi7/yOTKirK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sGngu5EmyiyIuHnf+hCtWCIYGeLRUXCb4YJ2V59bkbw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xnx19X2qwhRrvLarhm1wves4sI33T1XqxVssNa3ZDd1+kXr6k+fF4nbvQsryPcmB8Kx27iVxBS/4jXcwnSuZ+ulTNKPgc1Abw7Pwrzrvmi6NRL3TfIOWsITmspUog2dBOKowX+7pNajZFHlcjibUUlwqzUgdgaYRg2AeQGYbUh3TX0Yp+Ml5HRU/QJG5kSMHHXzIILddUtVvzt6l+O8fB+iqMXm4noqcBJrb1iR6lkuOGJBNavED7E64ee4Z4hGXeQY3EX/76x8qqfOH8+ic2ShKWlYwat04cyI5o3zDu2oj/huabezh4leTHMkVuSQryvGrkHR1F1G5oZXGrcOb9wqqlPQhNX93Vd54lOo+RPxFxZDNPxrT5cFbN/jrzPe5QFT5kSNEuIUbKmgYGU5LsRVHDPzz8lq7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sHpSh6KRA9UjMnfyF5y1p8QcaANv100DMPZExO4ELDM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vxwU9T9+lti95RNUwUg9uN8rglsmbdwji37XDifrWk3Jhwrc9il/oaiWPXQ6pzNlpxog0Z6ZSPXXruV8Z5b0F1xOBbfPM4xdZ0Pmvmk1IwOFDpJnOW99AlHUlbkBkhwh2maSTUKtknfSmOb8lv2G/QgMOLr6IQlPgPAv/WfNHeCCasUvWeCQyjB3cyNs7/tVmml/eEbYTV2IJfBkiZojCG37pHffET16TFMBoBxpKzBelACgYfA1PYbaDhFOvw65iIN2OXeCvSGYMU7ApEK7195H8EGryEDuODO8S4B3boL2liRxeAD9SAQr6bkDhQiJlmvguoXcsIF4rPJEdLse8MohJ65TIbj6LRoocQIwvsJSLmifaTtjlDezJy5/HexFQZUaAk/IdPUNJnu2KS7rtVGX+XhMC2DX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sI7moJg+WqET8T3849fE1+DL4+AU6JLVEgaZFHo6Gno", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lJt8k4ce6sNMaAah2WoxGS1/WlvLUmoIq1719ZUq9dWy600f0XiER9+vJDkLex2biItBBKkY6/YRpAz1P+ezm4nIypfx4TxOV+hN2n6CT2FBu2dSTBniqUYwxfRfXs0J/0xec1xudx2lLzmAoD9Iu4PTSR6VIQmlFcAt0MN2ZzT5K+PA0/N1XBZsE7F+NjPDt2BZQjhChDz4csJHhaexlVKA5N7kydg2Ufc3BVOKbcnZ3Y3wgK3vIIVZBkYllKLnfvMlOSUY1U3+IGRqrfFhyROaxUK/fJg9DyAl8rRxuo8esH54Pp134nXSEJBWaXlbvFsUU+rgovlbeUPBiZNzw00qwiDfVeZ4tk/mnWpAKOKgz6rvn11xF6e4GrGTgMYINDCnpWrSODRJ8kQ3blbdZpQrcjTFu+fn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sJCxi286S+0XahATmb23bjRYz15bvsTBQpYKe0cWrCQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eBZqkqfBiGc2hoX+A65JKRJigDCAcdpUzDBS5m9vwd1c/+Oooa7PdhY4p1rcZhTiHnyeNq8dExYeUuZnPKoTbH0R6ChJuGlyZRYf99cEfNDk/l/4BhUv0hlarUY6O4a2K7as5yOzoPm1Ra9C4mFoA+fDEq9ILRg0ARrPJYj2DyokWjBDzb4xf/2mewt71yd7Z/lcFRGxL7yc8VSkEcl3d4hzYLjWKzHiMRA6SBfg4iw231Y56hZMBl8/KJdkhgwpTZa8fZwj2Zo6eAqqdEZQb4N3B8HSmR0fqgoKvwUcjdhRNhSYEUQiYZYHIWj2YNIGuufxzg60DnfwAp+7WBjHARM1TMoEk17EGhFWzeJTrKtKYpbm6uqvGamUImc6fdA/rKQjxkfyYQbr03/tCjLIxs5hJCzrva+z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sKSKv9bxde1NgvkAV3p1acIIgM6LES2HSrc8YthXM9U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iogbCuIamuyGPIDe39O8Nl2SgJmT5ohqVKEjzA1rw0khgn9ifU4m2jJ4PukC6zn4nqM1TFFBAlCDRrbloyYuHMm4nMFFg2vKprMMfccCWcL/DG/oUWuENoaZj/6TAYMvWXD7/t4d2klu1FUoGPJr7P1x0kZxRGFy2iEGYtZVVzphEkSqO+FzRDGC5DyCf8Z6X/LVJV7yvJjxoCIqBw51jGzC7CCu6Ccq5ZJVyCm6TrhFCbuTCPY3B4Xit6slneCPWZEvtU+0vqpi9UQsFRLAYaHF3SqSJtxixCiBetYeaDSIpFP5zLxe/IswPWRsq8XIMkePJqLkKbzlfwzKmZakEzuvUcgAOsSr86ITOoz5MSVTM9mfEfQ0XPLNvQ/SeeGvAg90Xvt35rN/XYuLedJxJQ19VLpAPjkL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sLmkIAxxlcEdc4BryaMKIRrxrdVZln4kqnl527jdKTM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AP3oy9vlgo9Vzh970u00fs9o5hU+Qy9ofI9PDY9ZYZQTLi0/MOyW3vyBAg19rYMz7rsDcUdHDjH0b1K66u5e2XtO5QTZfgfdzQ0a24lPzNe0QcUG6nsyiy1yA0U+gQXjBw1HS8321eSzr0ACDB/iQ8O1Tgg5nP4IRcn9xvQLjUwAi1r0qzoYXOZjN1a/8dtHXaPfl1Fx083ZIez4kT1Gr+X/LiNlhDuWiPLPEcZa1G7wLj4gXdZaL79xGBF/IDTjj+NrtOSURoAfMK/Z8czlmxn4xPqj31VVSxzhaQR6YcAMpVpr44Mgg4GbOxjKa+d41jN/DfXKCz1+SL+GTAce3S6ZIo4IX5iI2/p6K11Ez2K6GVZqzOcnwQbuAJoZfd1KNhXAwGepbSE93GdHtZU9xHgSbKx3cmbQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sLpsck/6T10KgQFeqd8+HWunHrO6CHUCr9bznP+tDnA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oKhervnlG5dizP1bO/fWGNfWoBXo7h4wtjcdEEd0TrlOW8iTCGPN3AjGzCW+gTNxZ0T8fBkYwS0mjljUBIk7KyM2iOjPP/5dhc5rjE+B+A0Ew5qOSb3HpviAht14doBMjsu6SWup4ZXkPeJg7hzC7UIhJTHBTozk0lHVMsuAgqWSW3t4fZkHECBYuCnomZd8/LLMumrPKZlKzfRUZu45DVhFgsR14rv4MvpKijrk3idBzYwQOhmJEF6TLCwcvW53JN3f25aMryHlDn2Gv+jotmwz2My5YkZ3o2CuLtv+kaXFxd0Wfyd+2i6PKGxp89n9+m3mA+v5CQb/EZmG8ZwHwpgPCd35KciqA+z1I+f3dDHzECQiKtaqsX/Loc/jKKfryM5pWztIJUCwNTCsJ9r4OEFWk3qoFCJK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sLu5TFJmJo9UIkGScbiNJLiCVXSCZ1h+zIrla+nUNyU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T9qUOL10/xMCecVbS9TAVaG8XcqL566DIMZ7BsisZR4RqYP8B7YMa1L1Yr4uRpO5fxhOAnHx3kt/iiJNC8as9Yc6X9KncVYLX+SRMLYu13A6cYLNQRWu8/j4uW08N6DBfnJxY5niHbex+PaNlpOCZ7DyomObdZdZiM1w2NqJgVUaRHs2vajqW0I6cUuOfH8xvqKSmBz6S6yod9yrAfYWTC5r/4RZJC1Jr/+AsJpYj4axpHCb2DIDUKowOZpiP0um2bzwI5+tXJ68Qb1xt8oKPBOOghHoUHKLkQvhUL/aAaalLNJXRzCtZ3KJv6nR37NSBLafPI1D9tpDXxX86pMhNvv4uK4Z8+3EIc4vKz2c5VJknBRjl6sb5SU6Z4HDf4S89na+Jl9hOXcl0AzD0AaUCQxruMV52taE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sMD28Nk4LB1UU3EHvI/LG61CJVEY1LW8f006dJjnhnA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tFu3n/9ifg6eAKiCU2TgVDHdcFN4RD7EfAjcNKKp8Jvl4UgfWSA4Q4DzYuY+/qfwUtifHPQjuCPfObBfNWK52J1q+YREm0QBRes3nRu1AXZWdE78I2yirzn7wljiSD4fPQwYPwte5Ue0MC2kMPv4IT/nkKdq3S4P3NdFRZEqscZk3g/pJm7QFBwU3J23sikp3CyCHWru/MDEb5yGbCpueOJM5XW6OoERxaUg9iW7mI4/VqUZRPQqUK6NR9eBXyxBmU4y34evF8Asb7Dj2hKR8Yt+H3PVtTsEoj8Sf5qDUv80Tl3HZql6wHLpdAayBqFi3XMtaqA5oCJtlH3foczXqh90S5wYlwF8cTUJNUGvQfC4t19lqGVHVkfkAUC2u12uTZ4dhEK08z5xF2TBG03YWZ/VD2Vg20YP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sNX1Fl8csTacVJWmAYa+LGVYmAPbCDiaerH3fFXAVVU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/dOJ35L5lIYtNAkT/i09YbisCKesMNHpx8rpghC+2nyNtlI/ovIT1jlKiSoB7JrK43KAjh1PocAYxo/N5av1y5lmLckAZwJfq8bM8QUMeZM8xaUBVT1AU2B4mvFluQdgXfTFBHZ4XFpWmDjQZrT4GYqlEjpyk2oYqNOi4Zxb9p8P4s9zelNsvA+tleWZTbFd7PqmUaVfqnJa5cdYG5eqYtnHWxI2Mc9KyWx7a43Cm1qmDOCDayeePWl0RpjXBrdY8SRqFq9m2RseFTiF7z467tFiOip3Lt7AuJSfepwqg3bG9N/yXQagjWrWCkLkf8PBlqq3FnlQfBSBzulsZYUFcY6BC1GehrGWxTVradPy5FFJvcKAHXp8ZUU7SdQvPe4wCdve19iwmqK0LXJ0JbirsxfmU16Atn3s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sOlhBhnbOqeYZmbN5ePNGneSbp4amMjSItvVzth0LPI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3VlpaLc3s0QIVTqfriRoGX3vFEGT4j7tGo5SC6xtsDMwmhVw4p6vHJOLRgQv3Lbb9Jsy207abtec94Mp5SUUuwpGoX9u/lp+ijNvF/7E/KMsFDS03qHPui5nCGuC4eom8kjjBm/PATVO64DMSIg8T9wCXgxh8Ik08mXUjoFOI0IHj0Ohr+S0Tp7yH70nQLaxQkZjPatxumT2M5cAMbDCbDj9vm4Z2VkPJ9CPDxrXgPX2JCiRK4mez72E5hNUfK7bYEBrzKbxHqdJ7qbX57M2KhcWbwPwfolzvKMqO4LNfBJCTCZ4YMk8byK8vIxKuoQszXHdkVFLlexVPi7DcYhnwRQQnKFo5JNNkN4FtgYGTzol5qhbXTOabzAuK0YcRgJmNOKaAdOsxy/b98iSkg3HaP9cezriUA5u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sQ7e8z4VwBMMTk5KFuKxhmL+6dOMghYfGzuACkwUSnQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cXeoErgFEaciLChsNxEfuhhTfPmJuzxyUyEp9M2swaN3Qf0gIbKeNzz7sst9uZE2RH38I1SG6IxaxRvf3hid+ByNKN9U9Ts/xFtHGjgvfFfYV0UpSvqYKenPkjqlBEVPxZTP+phmQXGDoaSLxmFKhs21P+l59xBP5UXJc2F3v3+i7LqAUpIUxzvXxBKFCjornsF582cOcUnArrYpkXQ1YZzlyYkFh7vPAqwkWeGrW6dSutM4EV2I7UIB6C1DQKz1bFskEfaRd3RyqQZI41O+cz0ZkZ33R+K+gB+B7teWC2oJEfRJTMqQ+f6N0effBrxPk7I6L1z1i1EplFIBE1+19tEJ5L1BOqWNdtJa4jFkLLpce5PKBrjLthSV/OTgwXMSyiIjHiuG2VJRYxhrIDAlIHmfdDyB8Q6M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sR1I/ncrdjYW5DKfPWvp2S0YL315MjX/i9XEyaIOVdk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vqPvbloT2XlyKdaIvDW5IBhj+eSkpqvsklUT1uen8aXf6b3SrszGf65wGp2CaRsq+PB5WftJf1/2lAsh8O1RTqck+QvJD++VZzbL7sVKRQ5odXoOZMVcG/S7FjKLJk/UYjcx7VQZL+4XCzq+xjv8W1CE86kH+xJUhMwgxClfeDzlA2uwjeishXRa08fuTG6qvtabEgPQtXAs/a/AxqOp5MmCvpNAdW8HBYcrhk41onUvi/dPBY1bCeD35MaJxymoaX9HJctB/i9EDw8NVWAPCPjrZns/DuwTeLzTV2VKHsyu27zaSJXdRS/ZsRhdoLRULfq/GPOVodDG8FKPXKfNGQY6MR/d4H5ufNS7LqUj3Ary7u+CnqmTzlC3ncLhsCPZxSAjwN44yXg5oBtXIEAXlH8i1CrQSZcf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sRfZFauNnKizGhPUO3rG/cRyI/Wvp4851p/tD1VIUaA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rx4gwSjjeGAyZMYTKgR1kLzqMjnfNcU/KgfrPs7u4fvXDLnbIRKfZ4KpGFwpZmEjuDl2+OJoIAE3ygB9uSkh5pAOeuDHXeOG52lEOCvYCNkV14eTPi3UaWomCStREdCYWSEyyVo7HTO26c1atxvamrxp3b7dkKlIB9bsBFsIPllt6btmW7kFDCdMghn9QfDEWF3/G8vDS20FgE8IARQ2Sl4uwpslTUg+7O9JaZMoXB7de925pvnbZKP5LRLF4DeqVaNa4ntxPOQPWp9MP2ohCPT663ue9WWm0krFPwhUwomK5CTQaP+bG1613E6S5zAmHFjpZMcjA3SBeWEfTGIC9cqYmrNnF6PFYlc7SkPTINmeBOtSM3JP2KMjupF4FSLH7DYsJl7d5hzdwekhkh9GJsXGGLWs7yjU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sRmS55/etLUdxzfXEdzIs+d6Bs3A3IjLogy9PY/ddng", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j2xNeztbBLslWCSeoVkxoeL+Rj2fL5q4sQLLc1epXNfPwuY9zSEWfFe05cvN3ZagBL01pCC3WevHsdRJeITFVJbWfWZ8b5HI0/PROmezYLSehz/wOC1NL8LH4AHyf06xUOfnJDHXQjopaaiJqnO/1LadkaV+6biTSp7d3YWji0FVRRcda7R4bpsNAxjnT4oUoJRuTFA3dovhFXie57SLdvZe5BIEoAY0CaCAEfAEXG1hH2UPF6RqoYF2bIk/KQNaYRa8OWgSK5yRKKtmGvgemlmzyLNGmfhOFUHu7AxWQEpB1W+Qgm2XkpenOBxJ4jL7GELp6FyUXhdoFZimTnEkuv9we0iLUl4p+tv5xtTdLHdHeq9+3T4ino8FuCKpZOEiICrYw5JDOT6zhrlwG0Jr37x5TkynLRRq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sRxpgl4tYXFk/nd0ynMssK5WKT5FE0DCrXWn/aNA3MM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tbtV+j2Fxjw7217tCrIOAw1aDQh8SrB3wlZ3veJkB/VbTHeUpz5UstPn2HFPmWpFBoWN38yyT+Wj/5mwk3386HeJ7XHbN52zmSJmztHOendTSnoGk7YAXuUcSgLV1binpjVOxKX4E22PCEz1nLWiJO5L7Md2cjcLkWz+dYG/63H0FTnEdh2zO7DSzhJ4IJyAYFV+HGH9qOY/DczMymWnWMLXpQaf+uKvR6hoUAMcElyEn/VvdZPPzUxcquMkJa3r7rwjZ9r5LYR1YDMeGW6zLQ0gqs0enOYbEcdJkhTt8f29WxXz7OybXFS6A+BBSwOkx0SJrrS9wapUFNJwX/N1W/OVu38XERtzHAHeNLgy1wS0nEgygIQT4gcux722+QdxSQDdZW91j53c8RT8yAlEG4OTj794q04+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sS9lBMUV/L9qbv+CoAWHHhQJbMOaiBo1atI0QLqCjgc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QYkvZkKo9UWSWZh4Fb+9YtY7tXqWHsBBrr8JqNLD+2gB5tpjChiHAEJ1jD/MDfm1en069VPDWxVKPOL5NaumXn2XuoJSsjepE/TwyNQ8lmpxT6U4zno4KUwA43Lps4CyzoIK+RkwL4abugc5b9GnfDfEhg4hXTU+mawjovs2NssufnnAi817KNFwj/KD8C16j7BPb3CgES7vwrxlB5y0XaWr2+xrQO7vF5Vd36QtlK8DXo6E9fiLpwuC+nW5xpe8xxndDt6RTmvLB2oLgWVup+kXi5P8cRv4fzYt6ZXQnJbKwQqhDH4JP84TMgWiJyXQuZnnCuh1mYy5zEC/dJtSTV+uEWo6d8d842Pb1usEDsm/coksa+AOsxGjVevW1QEZXx61Dx3WVH6r8LJeQArYs2bDVro4uuvL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sSITNBt0DAn9NVnWLhm9EE7hVLM1VG/glF9k7W8YGJo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AHiq+2z2O9Z3ESJMGuz1g9nnnCjM4oym/w4KA27X7+jidMaPjKWT7UivhwfhUaJi8EFYkIrG4+u4YnfZuvPpHRMkf8Gu3hezNV2RKK68OpXUTFivRD61Kc0XVuK53+rqybllV2stefnnPoeKyJ5nlIwSd7BDTje3LoFPNwoSHUTcAJoP6Bw3+bZPw/MC4wSYvLx9k2wITL7BYPeByHoRH5J741w1+bp4VvDTba7d6VKYBY+RLRG1LvSLu6ktiAemdgiDgv/LJuOH5rH97I8DJaZbspIKdfSo65El7sHQQec5oTEyqsPe+rDE14kQPAdmM5bxLGm1ODPEPWGv/DTwKoNxWhxftdw57XtDN92VD1M8uw82jOolDOhWnKCgxpUABSdwDFCq+2kYEihUcTQ8hVainXnPeEp+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sTB+5QhsTOnZj4wDK2OitYbGn88ufcb6Ft73k0yRY3o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "H1UlzIruyVwps1+ZrqpNerQO3AzRCRcf0UYjTjYT9nEA+7hG4nHKdE4np7zb2tCuXmJB+BgM2GKfOlQeJS9ikWB6EeJa5DN1Xe+BZury/qG+W86TgucCvNnORJTCuMyPqnDfMhjDiV758HeTjcxCXEcgpDsrR2dI0f6FMgmBp1rbmK5IHqf26rndEVGg6d1Y0NBUEXZQO7QZSdHFl2K7DigKCVWa+mq7gYyhiI6AXmUTYffXTQeQXNzaHgxUonSuZDZ3B5kAtfzkGvAdudQEqVQcRJ1kr5kgeh12O2xvUglAlsQg2W88Ek0Aet+94Xh7ftj8AU9nIyVzUuIbV8JPmaC2KSLzhIjd2iCEJkfVhlRDj255corp8XF9Mn+Mbsf9oYvNzKFaUtbbnztK9xkr8MGoa/6RqM8J", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sTPcDJKjE16cClRAgW1qXLG1iuBlCumhE9XXUXvkqjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ejlf1drPwZvyEwY0E3rMuxrFvhdG/ljw6iFqgrQAxUCxVvNMwAv8B7Kjb6ntqtnM+NXP+QEje/omcsVIckgOZ8BtwX0Lu9X0DJhrbJ+bvNDcMqANpYRcLo+vp01G2pDi08ZWb6aCxPzjDn0mdLw9XreUVtcqUoHTRpAu1hhjK8At9dSJlwKJqK/uYXSng4kSCes4pFxaz7yN9T1Z2rC/GbwPmZeD7gjrETz7uNQsOJ2LLqvQ+BGUGfLDhm9Wdyf/krsoOPEpKHrzT8I1GAVeJCZu6ITlDFkkoT2axG4W8X2kZxuBTNmwgAj0Txv8jApkA7rKNccxWhJz3tt2x2pHg8axLJ3mwJgBRyUJmHj6P8o3+9JeomF+rywpytp9sub5pGgTEgYwva+NtVk1TtphuhzkVay6DQ6W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sUjRuhMvI+Bp92YYQe9E78GnxonBY2ATr2sDswQJd+M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nxGEC8RfH4x0WiYk512Sx7cVyKiwvID91RQaUGPtzarttJIAY8btxCJZOuEogJ6V+AtBwNQSK7iwNGVznOjpRMJrsh8ShVm2xap4Jd4DLxZoi3ikSWYw75BPzeo8NgyiUIr4cASfdgQl4T76wUdIf04cwIyaHb8CCcdJeZ84u+jQkYflBHBEVueJCPRON9u0ibGYgd/vqqB90zFsqifYVhay2okxJfRzdDWSlIuMJI8WYokKgleLVdUAeVnYSAlciKLskImK96mw5p203zYscFhCED1tk6HrYWOHne1Eaje1aU9bzwwxvKsIDy5B7TTOkdpjZI6JDCgeFhe7p/bnJbpgseMRLDBaBjaFEoNN+/hOjCP7T2qwOfiQ2nktXYPUPI/uOsnrNEd/X7w08uFn/m4yoBeeEaob", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sY6EMHZbudCB+i4sSP2A8UGo3oHXvVo04RUqwGyM+gk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dzGl0NNgxwKsDu24kCBTzfVKvRROWfxlrElTBYT+SL6f+FEwg4x672IHV59fTFT9g5Dx1tuSaihnCUhNiE0ok4+QphNSr3aq8mqXST30xl91TFTriqP6cH9a3zR2w5z/5zNb5GHucmmlbuDmkHMzqvHQZQYusvyX7+1yXfejjNTkuCzmPTjKjQH2mvGOc/BSixd362gkBQ4VZ5fopRIRqd13bGiHD+D+zsaWzDuVgEjpzP7EUasuVIEwWVY8NHz53DSBgmRq52Iihsj27CfUKYDfSHxl7/QBoOlkFbSuX0KLyWMdami4+T8zKeJW6MAbaOL+kXRPBDYSCZ6464pUwQbU0z4WpuH093us/zpfb+5tMnjHQkhALt8um/w5O13Ccp4Cutu0fe2XKi7ut68sl6EAPs3Sfp2q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sY9hEtaXDxyPPGkwQdHl/ZgP/32CBCe+YdxOwxWMzqc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HUAiprv0eTHwjJBR4S/IcnFvAIj8y2Dtg3j442IxIufx02A3WNNDU6Ptqi3nTNLyPs1o1n+r8HCN0YCz+UXci998gwH31GL94dRpPwyoeNMy8Mv0MAt7LVErwTSL7ZC/1Pa3inqIhhWfX8immViTbinWVtYYdZH42K8ifPTZQHvpiVPJ5MKjO+kllkUFwhgZkagpeNJpGZKUPYor/ZHiWONy2aSiv71LTVTFuA4qBD+TTpW9NRMjFMOJ2EjPwSV/nLpAeJKWj+r8EHHNNQPCAHLObGLvFs2JHTbMBAhMtkjId20WTZ4peQqtVgzy+6muOuoV8skrM8/2vKr44Dxub0Gk90wx0T2o5uD1fXPFH2JW5nC13mwYMNPjms1A3JdACRY7GRYuAROmd8z2GTxCI5L4+BaC0DDZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sYe+3Q+zvyTU5Vtshu0bnP8h9Ocs6HO3WinsN+Z6KSw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vok1hXeO+yJbknE+i55hBxCNCXFoqKsgv31zSjD8Ora/ry0kR6h1S61z4QOcirWtysA0/ek/Qrz/6FSndiS08L5e4Ek1FrmhU5nO3f/vDaE9IAzVYiVmytlbAkzJnNdRvxyiAm6JIgtCl7tGRcc6gjzR6Ztd8KGcUv2pzHTdX0LwWK86a5waakmKWyWO4llRRAa6KhG6rlgttswfG2vG/Ous9YkYYwB9G0/086/qDKHYzafuQG73Sls7A5ctmYd7lFXQTas56efT+gn+nFLsiTTW1Ejv1N/nNSLELbp0bb/K3wEBZpAuIe77xN/1AFh/wNLe+X14DcMJXURpVaqajWNBhQDhMb5zCQyaQD59PTHMdRnyJcT4+2BI9eNlYTzMSx65s1VDhzRu0Sn2o7APadXgzQ+xco4z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sZAqd+oChc8W3aG2kSw6sxkJ1VvR1ZwKX4qhowXXc6o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MCxsDSMMFoRg6jn7GjRWMjkDHoPoHUechIeFXCrpH5iq4B6Fj3Pd57rK8nU/o9gHxHjvXFWGdpa35OqM/2bci5elsMNT3IVezC/7S0lOdFvIrjov9X8ENcdz36/BihSj3DSdfMpsBTOyptkwhb7U7dD77w8m/Znt0uHVc1VTEHdN81nDVMQe7lUCUtsYbxTTE6hBJhUnD6diccdk1oMLT5X5MNrmupQ07NSrgq5LXpPoC6H8fHT6WclCsqpNcuq2hi9WRT6QhgWwXq8XLsS3onJweMdhAPKDrjh8xR66EqNZdtRKdUsEHGh0hTeuYW4QlVeu38APoCYCntr7zk2wSJdGhAMom5y48ms7AE8X9+99H1lTp+DDgSNj71/F/Cwv1pXnWhd2PMZRxBjUtQWYFNzqL7OUZ9Ha", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sanhsjZQk4EJCxgEuuKxlV6fG4yZ6qTAPxf2btQzHeI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "szv9XvjLvWUz6T7x+i1wBGBhl+wD4q8iVg+9pLs9vp0y4P3ZI2BinECoIL0WrmBtB9+nqloHoPYqgEt6TodsbLQkMoXvljLARYAoMeKD8PlsL9XCRBQMOcXmPttFb1CfT2ZJMbeYrsi0dtc1/ufxR8S0frRV1kZlvoR4rbuEns4qUy5XASnAmHMc9Dyo1Xq/J23C8QCy/k2CxS9tbe0Wr6yYp6TsUx5CdM4Vr1PIoU3ejIeqBZwOvH8WeCI6LgTuMIVpnhZYz9t9NbFLKBMzKMHlD2IImtnxzinsMgUStc/FcMGFVs5/Wo/2gysK4CkcMXGhoKSjcFrBZPW9rFXQKSzZ1nDMRSdJuRcJqhFfJhegssbo4k/1a8j98RsTMyxzbPQfk8h6kGWtdbU0g06pi1i1VQ/+RLQi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sbAeEo7wxHCa5hAVo1GuaGoB1U+a1ceSv1JtqO41m3E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Fd2W96WvihbEHJYmgIFkQ2kfDrxQwv3612UOMDsHGlZESH20wjENvLd8MddJiY1WNH4f4XIQFD6y8gqfmx9cofJLvcAHn7udW4LSu0MIkCwrkzgouVrLwM+8YigwBR8IvvrM0A2ZaYeYKUDYlXqDjW4th/fF+7xwd2j54hSKcVUnpYZu0xymLg1APQiTZb/qSTXMMj7EAqjCWisbt24HQCrBiU7sZe4qkmJ7yDUurWSxwE/xKlIgs51J5pqYDe1tI6Ye5SGERhqV0Cshu0PTxRRMDHYmuapnz7y1u1nyRZKSARsY2913TbwQLHp6MxOt6aHsEQubdpzx0z+w6u5wO+TowjQWXt/SzjsuDA125MpT60IqLvoLg60cPUEBs+TRfELXEnBikBN8l6kAPU7DLukyxzH66XlP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sblcOMmtT+J3+bSZ3Sm0FbOQcDqy49d4eZM3ADbtlDE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gVUmo7WSo86WKXIoBN5I4QPYwlA4QvSgRu5QH9P3lyxjsM9T2PFH3eHrM97QZPezhYvO8fBWOMfZeAMNJOSA86jBHm4QBcU8GnK9xHABEmhQUWa7QiQaUf1VsytX2iIRP+XoRr4ho3mBOztF+9UHbVvlzd0Eo91mAN7/dv9MQeVxhOC5nlcdxVo6jLjT1bt8U8+bqyQ+GNiEAMOAm9OVzuRYE3fzQ27X+9oZEWpRS/6IgmMw2mnPu+p+8r2BoxxTFLAzNHznl9Xv4Nx5bZYi6a9HoQUiu+2sJJYf+mwjutHFRTGCzNCWEBb3gxeoD8iSOfqPXGuXG+e/QiVLFmZ0cB4cyr4EjDR+3dK5y+UxU328PNTtKttOA9h9vMHApKES77pZtoxadsoIdmtRcuOfMoKJrhBc21Lf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sbnyNniaG8ny2Tc6cJY64DRH/b+kFeZDetaiu12Wpq4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NVYxWdOnFL2uchYJvmfcBhSRlM/+WPYn3HkbIm7DBQ+OMN1M42Nfax0NT7/VNjOmeXn0jTzRivmdK+HssKQc1dX42Ycj3Yo6xUwgju6hWNrQHsn+KfcJEdkmlhgXqvK6iZ+oTgmhUUIC8WmmQIKTHz36JtnZj/h8mUrh2O2eQzEkf4qzSrfTWjdiDKNjyIcIdI2tlRE38zMH8IfUtIQk0eg1rnPlI5Dsx4BHXEwCyUFaBf/3bS/wg7fhU8Gw1GOoDzRp2vuJ+0RuTuFWRDyqV3zCMXX35HqhvRp8Htx0pXYGkQvKDHdGpRO/TtCakRyztTVAeGZaed0mdw4ss8MdndzfGwpr+F51cYhFn2MTADwynOJlF0cWCuWiNq9UdXk86p9QhYq8e2zxbULSmmqy73XGTZ67mgXJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sc6VeJGiWYYvF1Kh+9Qbe4+X2fWx0ZGsb/XeavdYc/U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q/mIGCNDMbdIElsImyzqT/XQLhjRFjhNA9w+Cz2t/cSQ5VHmrxmPijI+UYwYlrfjKPrCW7y2ggvJ7rhWaySF01H64Hftrmeo2DfxxUMmgDKggFspAGB0AVwzxLCanAsg+wTe+GPyaR3lrILUvwaNGNqUKem6q+eWUa5yJni0McFG4sKerxAdSHGf2keMM7lgHLLnyBkguoPY499390wRnLWHqlNGY8B1dVFwRSB4j5gSrSAZ3JtS2GChydBhxB3CshIIEfuqtPcEGiGQoquGQrPrIk7SfrpXaa7XSJG0+udYxaIy8AwQCFmJAm+5bvWXvbVM+ahBv/1IfNuxWwT1naMaxGOvNobuAxXz9QIcTtapzxhwlnnEzNG4ysZsfq4xfXlhcoRJsGZmjhpbsMZABYpEw13s/8yA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "scnMjJ6woNfZx4NGEyVhCunVgQa2/0uzy8eNhIYHnKU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Vl53/PVWwzjStOlUNzFuvSX3AGcy+j/UdoTpL20PRn7Pg6ZcFlUvS5kwy0POmSydpBKdeS+pWyRQQ7EzJjSdMe5euPjZ57caHqItkxGUq8LuPGr3MwmhKDiWw7Xik/b3+dhDBL+H3LLw1ZJcxJZ3QOMONiks50p2UsWjT6bJ6ws4Hv6FsCuJLXNLMWC7kcb+YzxspnBvVHGRrg0cIoOq2A6Yl0ouVCffPbtZ7553YULjg79zY+3G3ccJENcfLOap5Ojmb9iAl21TjuvWkSScw+b3Bwd2lJ9wz3LwdNA5QqWoiUyucwS+OJC418ggH7+vml2uRaOkL3xoP2Q6TkSF2l8fUW8Vdm+UUX8c9ziJ29kTVRAZbLVB/7bb59oxteDkX7YKirDVDOvcU7w3Jxi3lE+Cg0RU+cMa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sdsbkpqUGDOPXZHAdZ6MbNnRZnoOu5OD8X5TQYHQPJE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sQjztVquk18cc5099ZKxnboks0sHU5OaPwkPJnb64MlDaP0xdQbNdp8Cj2r82cce3PaUacBoROh2572osOAosDfazK5ZdnEocRZOUNp7OVJqQV+cXITDXCjJhnr4r4HTQkajzv42HGvmAfZKIa8oWUzj7tuQIFtJ9DqFGaqM+TIDnjU3l0oTmSktHcxH6jLYW+KiDoP8ZVeiLapQi1+eQXYaOGq5NPznthuZbeRil8PzOzCFE6yE7Zk+p0WQSOlXDyUKuVIFhf6LDj1TszCigEBIbz9agQuo/BoAamJXumFanjaqXGfNlMgyRd/UzBy5ndMxLqUFJZ85un4PrOnH5PWySYKKZo2FqisqgxsyDzBErvyDfzBTHXdG87IlgBQ9UdpHyBXXSZBn7y9yeeAXiBU3ZG1MsEWU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "se+Jag2qJi9VG3HdQdMhPcay3mCF5uRlPTjIef9QRFU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TcEEytnFLwMZPV1l05PjC27Mf99oN5f55PRMwzFIjJv3izGcfZRD6TG87eh9OOvyszKy8FFNr5gn/EWodmkfnoD3ipcNQLKQy7uy410PnW+te1KkS6QCoharImCKeEHl6YvRXIqqP9oN2AZgbZTxl/CB47OV26pFvYs1g8Z50A0TKgMfqTHSKt7KzrANLEtPCOIZxEyieE+OSJXU7D96M0RUT0sPi89ivJLHLKcuXHklZS34l4vdzUencrOmulr4G4dPvNYYk7jMvYpZfzAw12Dl9khJKjSrCv8tQbbp6sESlNYStfvbOT9zguDL9Gx6aGL5NTJbKiwiaUqFBJdHjdHPXyxvXBHG563aIKhJr5sRbeovAw+IuQOJQ+Z8nnz2dW9nzOG66oZCKUu0Jngt0Igpp21szlNU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "seRzBcWEseofR0LFX/9eEmas6cowMJhOIG/9/78UfS4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5xdyZ2YFIylk76GiDPtSjJFGSLk191WS6ZUt9p9+lzwjohoMzm2lb34Drv3AMwU4RHIW90/090FI3WK60jLu+8ssuEDXEU2WGQdr08j1QMq9QtbzDuR7Sk16eV9F60A4+uiOJF9PL1bk10bNtYDsIKGpwZnzXNk+FkRejCI5V1QXRxBleGkje+OxM3f8e/353unsymdyTKli04ylws3lM7BzhVWVRmd9yjWORke80WwHW7dlDzrfkPNQQCOMWqOdN6GBGFaGd46BL30e1WgUR3IqoWCbsqkXNa4G6ePkX4hnBZqGS/WleIAFd4++Fnssb4nwH+Kt1GM+FoxCTQDRe+w/eTjqNr71I3UpEUhVe5/NQJeG51uParxM8/rNccRnNCCSqXxhY34luHVdLUGQcKEzZhSGWDGp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "seSIy9rwDOnJ73qUjdeXST0FL04aodkjyHE/vH3i/fM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JYC131W833ye5aSRvyZHffUNcT74SQFcfPtlxcF3J38g0E/j3x+bxN9uCRQ8O6suyd7V43HIp6+g1sk0Bfi9KDEWNVwWkQybSmpl7YIemtXvvSNDPC7wh3H0+Z1rWTnqA56srrSjwS7t4fcEP1Kn0wF3DOhOeIwmzyoXQk1K2KKHUQ8JhpLn9EVUY7t9m8radUlo1bggvgLSoboAZV0sklfNSTwLdUIkOY212VCG+WK1XfaK/V1e/8ap26gc6YkZdGDytFDfqTGvcQpt7a4EyOmLYzdRiNUdJ3AbmZ1iAff0dR8QMyBNSq0/ws+5VgoclcKA77tEiQbP+xVRNMl71AJ3XHk8OSTOS3giawCts1kGr4VUBbYTfP0dlKuM9fKL1DxkoEN8WRTARALaTLOOozOxLtG61Upq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "seY2+WYDV4Nzy8t3D8/G5meNAeASZjux75IOzO3JoaM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a8kPrK5tMJdewAnKsK+i9fuDBjf8SBsH/h5erIQf7pqnD2rIPs5USlQXlR0pOkgJyEJkEvYLUnre+Qe0nPUntkiyY6fHjWLOTfPgl3rpeGtz+8gArLw1IiID/xRf7YriafM01lKZJjNwWZpbB8J4W+nsIvLqGfs+Qi8p40ihmWRjzNChzAD6zIX0QRc4k6Sk/u4TNlsAORELH29pHZdSWkVQHckg//KL8gJnnI6qTypW4OR2oB6WVNGimy/mFtX02EKCFKN0djnij5iawt1oN0kgVZ371DZKN7q8tsmbJKogq5dMJopOIvekVSjA2ZjwKzTEg1NkjJUWMG8Al+9OeKAaX1j12vZjmD3+0EJZdcXY7zhGfS+n8IP9hb/we0hKVaBttj1eVAvwR+potbScJWsj2uvsUDJe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sela4PByBg/ZBlLnkdcJgMxsTQXO/CCj/xoMHATXSyw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ywEVVIywgYFItVSrbTyj5rrbMu+ugu36Bl/U3Brq0Y0w/8A5AUpVyG4t6sm19cy1MH2zWGMHlzFHNvoLN/+oL2zPolY4FBJMoSMYTavjTGAlGCvWUduZ8zy203AGqEBIcux56Qki9fNwyJ6jRDOmW8WSjRc7brs6UJ/21k4GvUXgQWx2PPiuw+PXClhTquazoCnvCwsGDFbai8u54qnvzIuSnFk2rl8mNYg/tID47NLsOvoRvIPOi1/8S4hzfariB1X9xsXF99iI6jz5GztpjjrSQPOzJdEhKEaez2PQbn9L7Mrq3j5mdbYNFeDEKR40x5BFn1V9JsJxfo1WL65BxhlmSLE5u5wb6on7H+mal56KbLhgXHhyLuL4mwW7xuY5aQEXUu+aEuFR1GmCXb8mf5AfkJzzB0ZB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "seyLoY4mO9oDdhEISnb7/nYJLqKDNDZatxuhyMwyvo4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ra6J9AVOZPYqu178DfVqpduM5qCvL06Zs7zO6ZIOwGuUqM+SUYBWsqrVVg7urSOjRw7Z5Vw0l2rCtxQrMsfdWKLqS30USIQKehmZxcBYjRZPtQMPmrT05wd0QpSWr+OM6Yio6QueuzduHtqjM6oBY4Nc2VzrqI+XISXINiZPNCFT6v5ZC++HPrg+Bd5t8MP6Lb2qQVsLvcmfhC3njrU8NkCqr0WO/heUxuEWmydtaCYUjQ46D8lpIeqn3P0hDLQc545KdVLkgKAb7HxQwmePimUeDGunjeI6roZ4v742n11BsTStFXGrvQ/zJvQgHuG0f+5yAl8YA+M7gwsNbVIqUZBpjiLg7Ys2TulqkPe71V/8ZAQ9tZxVADnWfCo80PjPlJlbQalRLpDu3m74OpwwGbHCyGt4sbKT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sf/fn+rhZhInptnU5OFtyaoB2Z6P2zG/0i3JSTbE8ks", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W2yb+1ZJ7VsQ6Ydq8yE81UhVUMuSoGMKfesS1JBA3IzPE6DkQW6YUeiiv17idzmVU8LDO8mkcLpCsyn11+IzGgO44dCTQngnmru3nvXpSxfbv9uiDK9ZQddYzSZy8YvuS3AMV1V5ulqd0f6kys5ZH2scWFFtYYH2ugDW2HWNuIvlraSoNRRKPcQWzeSep6ei20rAR9TOMW17MZchjyZPUAOU8G2q7CgFLLkYHyEo7f8RsTPD7a1uh+W4G8lD6vx4DaJySYNfTfShx6ojPjm8sV0Oab97piXMXHb8ylZjaEn9CtILFqS77eIcj2lv7rzvsK/tHvUwbOs8oXGHJVc6Q5SepnCXM/CxgJjom54aYGYIXb3hkFXrtw9lOpuL6ySSmJzL7eWJ+9WmAcq6OEbfwJzOK/7US50/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sfOAjpSr59WcLbLfM5YOvDtsFJFlKmVvGcT2mba5GOw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P+PpW0ZpMli2UxbFbpNJZHSLAHJruQF9hIHG7W1QlkPQ+nogD65P5sRFwtQ24OriPtsP4DP/Lgfrf4nGGQmxXKlrNE0IF4Zzm9gGCFxhc5knFf/LfUkobX1rMxWswUucsx8I0FLv6Nwy0NHWfaDyX2yp/+Kc94HBzhHxsO4C8xYxVR/jW0BobBgoLcqctd0dY3CAHQFhVgJgmsAbQ1SErHZutgLHpVn4aHP0CXxhHOOENqvP7RFxnQwpK64o+JAB2eM7wnq5iiWfLl7bmV2NmR7NhBC/oLKe7PkE54PrtIvauDkxS1RcJsHWXtOMIrRqMattL8XecGkoFOcG+UYLfbssykeNl1sRJdtU1BbRrfnnPFh0yMIOjEq9GuEYEpNdl7YGIZfAsX44hSjC/Mhn5KXADNcbLKlq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sfdEvbXRXZG7F8uxhUJMNlKuOu7z1aSB+GMW+XM8kkM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Gqpf+qpF04zAEug0uNEb2ViZvB7Obs+ZsF/gtcstsPux7marJsbJKA1rTgxJYRCf9csq04gGlEsGBrxe1rtBHjZIEoN4HpEjrM2mOCWsH9VbYkxsVpsUCkKQ9itIPU2qu2Os79aU9WMsnwv3x8ePQhD+5NXm4jN4Opv3670qBozQDJt6lwvzJjrBzBeE3z9s/P0n8KrzBX+Vlgj75TBEKGcql/9WTYSLRsdjb+LiGUVGprEHgyTOmN56j1Q8MkRpnjYpmP3+3kT94N6S9RDSeq+AvKzrgwqNjiHAw84hOHTiKZ/3x2FlauGEpFVVERbUGnPWHuit59KabGUsE1JWmVQsxjF7dEOb/6O10j2SUo7HMtKPGWW5S222g8DOvb06PfRlGtwgcC10XKefZCYjdM9cAnHDxCoU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sg2GSxGv6VvJwwKv64XhbOecGD/NNkJJvueVCuWPmRg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M/VehCW0ingO//wlGd6XQaBBMQvkV9k4KedjMuUmN29sqnZ1Jv81btJm9K7QIQFMzVFdyPQKiSE0KSAJMqdM/b8M5rnkAoSqewXF1zr6nR4rFhSSW6FZg9NXrOob8KN0JhElolrB2R39Ro2pU454RFVdlkHmFqhCZBbmKHhuFCEBrb3CddNSZp/UPqilCfLzfkw8MmnK1c1lqaRytqp8gbhqiiIiLmEMTNZoU4Qz3RZkQXshIynqRcuvdWtdFGE3WpAKVRLDAoCouPuKoyM5ktRKe+/VwmHV6/0kusFXpaXYBTTp6uOrGewro+qgUVD4UMhnFVPAvmurTCGs04+UxWXcIAoFFzNHUSj2lU3a8Xeabf1LXS+ABcu2MmteRZHf1CBiPCJ6MgWaRxgYSAfRKGOLN3uo7cup", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sgOEk+xK1+wqTkcwE2VORla16qDBTNeXU5GalMEoCWE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "084VsJvS3MZ0GZOE0Mtm0uvI6mpB9t9S410k+48+QUMyLGCKRcM3UHmIY8s/0o8nY/Q3nQpTy4N3tjoGJLIeyrTVoq7YgfhXHGk2XP4IgH0FbuLcDl5jTsM0/MWBkzF9ilwrtpIdwKGFmOofZm4aeXDCWlHVsMk0TshXL/weTUV5TQj+OlNM4xa+ChcntUgcU5Kr6d3rOUqPfeUpn/JGWammcf9Q3dDD7wyGaaGcy+7F9TVjXzwjdXFiXqC+2gxXdsIvLMyFbhtFW2+jX19U5zR3935VnC/LlmAtDFf3cziAqt8Hh+FQVq2TIJYI3WH+p0t9Hc46DCezr4oNJMtCCuPWsci0Tburlt6SHva56lflWHPH0EeEs0XTtR4n/tjDOYPPMUMCbHytT/QCqbBWb+sBQC7Cy8p6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sgvvHfft/SwcQb6/ZyYsySFQCfAHpp3KiOPkqVGsL10", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tqZ5VUo3NPb5in2fCvHnvNwnkT2K2dXy8/fIwlE3/mLWJW/ZPfRHO8bvBCRSyeCWv8QBVhyUwkMzqp3/+bysnX9xfvRq4UcwwpC2qT7R3O7fscFLtrGbKJfET9/aLzJ5VQMb4FFzUiFSnBL8libFJ9dlKf8ZrquagKVGxGVo3FJi8CVnnw7QtiY67J5XQWMXPfaCkbg/xepuCyR+vNZhYsmnL67m2wJsHuSZhz9uNSGvuzUn5OpXBjtnyHF2D0r+Zq7h200vJBEw6eaTT/TqMDrPBQIVdSJFO/Cm6rsTymeal1bEkG/vzWxZ2vjnE8qoYusRHqYUR+wGw+1xzeugh6MTz23DHjXDSN63GmKAyxB0jsiAK/yPOy8U7gaTdzvG9+QUC2SJzo/vkHvcY9KghI1eN13c+7g1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sh7sDXVBVAkQ8bvCS/t6JLyobqxxTTiVGqe6NDouwz8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lIVOXDrR1SdltvZJWBIFRsNWzVypVq9h/oZM5fswcApd2jjxmitzmPX4XzOWoHuUrf+jL+diwCPfZIGizDb5G5qAQDd2/SGVlI4WgMSft2PVK1uL5A0l1VeqiBRNmUiFceqH/dDG8RDDUwoduxPwhIgQXI8Qs/cgUE8aV689JdWMVppUCymkd98IzqEssclg/GGB7/qSMQVNs6l9tNSE4US/3pbvcwC3OgOAT/bdTpfDoWj6NzOV+JnRLy2V9M8HMi1BNr4E67D4K28DqbzIJ9XsxNIrgD0FZaTl8MEHunuqdpkh/fE+VMHCunkLqGuOq9ym3HQDg4J+xm+YtA3nGHADxWnW3U9+i+7sjxkAp2lUBPykzDApbHEmIOeZaaD4YjImq6uasiYNjzen+zsAvWB+P35bA6H7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "shXkwZI/N/BpMXTZJfwmTtT8zuTqUKU8glBZMVIyQ50", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iRmRXmOHe+VWPNkKRRHASOb7b8qaZP/XokfLtxkqWvelpAf6MufYtOz6gbEbo0Gu0aD6zrsRjzDP4JcGU5mSn8mffB0evU35N7LNMZ7iBdZMJsFqDbOLzh72wDLOP8NU7ichi8PR72MEXew2UeySqB0SqKSHyLPedC+t8XRuCG1h364gQJhKgR7BVKd2i+v6BKBzxj+P0RiLvUjOZ3n+/kfdCrlpEAonE9PdPM6fZzdQ5Wccs1/LZ4Fe4CGajmMHaiJq75DYKj6MfXsM5IEavIWV/1BAPJD922mg8HSzoeeF8E+tZHFwX06bywmfsBxrHaBOLmEqLi9b4y1UxWPORANa9BkqSTyOH18pKiRnLdB/sMFkWbTbHyag1hEsed8+u9XwzE+U0NU2JsHQl1ibwDZzZGxNUwtO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "shbZTaFMFO/0fDxi6U90RwPvIWYAomp5cdP1GFQF0bc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LWgQV44pREDo0lVeeqUtG19UT4McH7u9MRLp4YS1uEwiUoIF7PHnGqdZg4zrG0xGjetvjUyBdA4ZveCBVjzef6qmfbKvcJFf87s3rj4oxMh+ZyGLak07dTVxXcDSVJAxjeriDfdfoja1BUmgi1LSrupH3fJBTopvkIOsplbVFM2yxeP7mdVfZAf44BnQZtWcDbasFkIC6qPwWo0UlbtbTCf3TimewLcaJTlECRU9iEeG21CLEZJuu9LtX/WH6UAjo/QaQz7yGoXH8rGzZWpe2XPF+fM4KB1T3IUBmZoiPvkv0xFyy4+Metqf6c8GUfhm+lzoCFDdL+To1TqbGk0yVXrSrjGyoL4QF5KFjiQrkKOfz89IOSPKU+dSftRpNKKCbfK5fRZHe69cYFE/vZ+M8hrbwiY22htX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "shn/d09hKpqK4X0tnx34SRx89rM/WvmKvgfRHTTNqCc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B+AkwN++dO88vATaEp8quBvLmWjuWyZRFPSjyAkiHKn+XUhJKrTcbQcTULGo3vNDILUOj6HhhenWLVK29mffMamtK3IesUCA/x6Ho5DbN3L71ly9wlTAewCOHqZINgkymoBjo8MdcmA/4AZO8JntAumpDgkUm6dO7etY3+ndMMYwEZfmqnZ32ATzuUSbV0zWM0X/sG86+2zbyNe5d+E4IJdCRLcMqy04RY563yaxYaJw/VDWhXeeInwolqoRIxb+0EkmqO3rfEYmKryA2uZrcACEXs3aOh+p9jNyXs7B7AchkNKW83Dynvy4XTLxiFfnMB5KdYYUo61+XFEA/L/7aIyc1pZQrTOfzCLsyd+NXWqL9lrwPoOfS8IIuPNrn9FRvRFUmGEKOf+FGTq1/5z8FFe4r527fcf0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "si8AESKhVQjyS1S2axI9nNprKY+wy7vholvKIRavQH8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LZqnXO23gJrbQGv01ktroGPSYM9bz8KhRcYr4v4MAm5BjlwZCTwd2ze9WBEyS5X9fzKfJ+04cuR0MImXI9/HT6NGl0AmBdILS10kK7WFqbL3kgm7tPkCE/CYyIcMN6plAd7w88ZgHumM8IsBTHjotOU9GUIegQ1wDa9sJrYQsTPkrcuUzg/aLZ1azbdjUJ56bs7vMBqTbYxmcuolgYi1y2h5D9qqtB8AZtB5b24yIMoD8TfGGhATLh7WjfabDS8/twZmOK0VQ1Tfw8hejWCqBcOAOsHeYUeNPf+yYmvvCr22eYLHt+HkODfyN5zlBX8+q8J19WlNIQdySJPp86nrgMBnthE71v3vxwKQmhP7eVy0F1NdgdTBK/ciu0yYo/3EOdDY42LNWIk0yf9N2QYYekMvdCwugL1A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sk6uAhLpabDFrzeNjiIB9BX/gRjiyX9hA6zKiip5/64", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f/k6zIxsB0HLg3rgojBLqLepnV6ZOCLiu9P16yIYWU0pDdz0OCvw3d73yPn7aR+L92x4mp0mitn5M758ERSHYjqT5CrDyrUXAfeFqcIVP2UJQVeoYv+Xd6CLEQutZKd85nWZRuAP5z20csSeCN1Vi0M3UYgyrI5esFPubTHrjF6kgtYzdzHL1Z2zqXLHht/W4AzBjpFF6metcFmR3hibg7ssKw9hpsSBHBEPRhzE0oZoDdck8fgJcLX4zJJIVZvIEymx6dVD+pUh1qCSQtYTo5S1x5qAn/lbFcuriQ8Psyx+U7FBR/TtalcNK86HpApe5zhTPMvRoKkSRX1S+IRiqhrdCpDkzkwZeJA7RSTWBt1XyevvV0Jumpmf08PsP+4h0OOU1Ho9StieKKg/OJGLLRTf6dkeFdhE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "skDxvyGz3388/NHWrFpCH1f1Y1PfyCgz1cBdJdhJR4I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OHkYrEtZ3DJV59SydM5qeV9MB9WAebpSNo14MWiep+lXcZOWfipi2OX26eMK86iC9alo9HKhCpxElxru5HHpMTlL+dXibfxQgwV6xoR+Xt09rPd0Ari8CW1BhBJ+T24PTDtfuuq590+Y2llSzZE7GzC9ONL9rxqCl5EHtl2c5A1jKZIriYbE6CKqUHKrJeJsDpQBYSp8N7gISc/quMpwsrBiw2wE9ROswaCw+s0CPy88rUmnRK2xbU+ud4gdYMnmH7mq2PkevVnLaovU90fHmOwt3jry0ArSIBTGjXriSyuWvCPjm7TIAA8SHaI0uqoNj7s9fYwXi4o+vuYEcUartFrLKz1/v+RYILEqX3tZTukxyfTFqwRUZBii0KLt+7nRfRfWMOUPdsYhqeH3ppxnxiv9B4NWUySy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "skIGkFlEFXt9AjifYYAYu3NvUF6mf4Iv3NssKdIKuD8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aMODYeRRFosNWAH8IlN+rglzjgaygZuo9TN5By5+OOy1yO8Ayc4BVIiXbPfSEBtjJy7qNrO6HsgqDC1SG+VzQH5jV75DMKoUK8gpTVPx8JGsbiqBg5nvZiUfCtY8GxYs9fpdzQwjUr6JyNh433lDPm6xvilcsDgz6U59ovvqgvgeKXXZ7H687dXJHem4rpQJVUYEDMwS1y8U9lpyyGOOFCnt0BiL166MLNfopnsbArGIpexE5h1HIzOyHCUXSqY1N/8xM7rn8wuPGebGWyhaWXOjJ3Mzpd3AgSLUAU+Xpef5hmbiqAvXr4VawDyn7XnXyVXuUxmX6nauQTMnWgHT3y3V/rBdCVqrvwcktO0KFkmS/xQl0hA9I8L1umcAzvwrUNFWsUk5erzvuYclb/QC1ridbtPPrYUK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "skIgtlpziszfMPb4+DuISwWaxPgmdv7vJwWvVIndYos", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XRCBz6CvzWluiZCB5lhUuQoxn+UIfUOCqbIIcOBzlz0eKwpWasEcyFjUtp02mF3QqKzhjA9K35/IUUaAtkDttemsIjaHGH+sI0zU8kAKvwP0DqXicPfMr5eKmqZXZaF1lyjEl4C+nE6vCnxFx8ZmAv3mg3inbHNcjgiE1j3liLfgUDSdIkjr8AUzn3qiP0qrgZCID+8wZLpTIFoORr0D34IwoycgNB9G+Ii3qmWXUcZT57G0gsmHJKLFZrRmXJdnJ1rho+sOgX22F9MoALBFJXxSv6OLddluPizRhupV8CNY58mxpKGqxo4RhMZVj9uqm1aUE0vkeFhO4abso8KyQDmxvEaol9tysOtBUdKgpSKp9qO+VMsRSQqmL+TeVhJSIkrod4UAJBlX3BzrqzmCcOBXU7Rk8FFi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "skLGCvZPM6aPY8FfEoK9r4P9BMxfl93wG+x03S1isa8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "p+THSXvEG7wLz2qQ1nChjOG5rgE+pKm+kkxiaZz42s+G5SFITKvPqiWfqtOUPRRgUVAh5IEE4xzBxnzrbHRvRm+5Z6n7nf1EbFG28n2s7XD5LWSA8dpwu2ufX2NoaaUgl+cdYC8H7AsXSBO41OGGSTrW6qywhDOBNTitg59JwPxyinlubzBQKYes4W+EntCafVyAvbgU/AzXZHMAMn0mfojphTGXlmj1zJCt+nP+0CqiPVm7wB0e/YIpbJTEaMjpdyQ4D6XYI2ijwCbIjCwmtp9OuChvTFHCspPyhq7wm3bP7ACWdk0SLBS/dJtdGZYgSPRSNEJVzGJ9yUkxzWZE0QeON7nVluKgdRLgiGkVzgBGRIBwKa5tv5oVHHr//CC3BE6X2OJ5iLNZbpi6fZcnDLXVMBtmZUd2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sl8imVTIc8EZL3NjldMHtS5yUrl5UyChry6F9eBvmyk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aoHWWFFz7WmNVAUBkNWqDl5bW9pWQ+S0Ak0k9PI9vzdhPsM7QcyqONk9+Xt0xkEP+PykQzMR3TxODwRyIm0O51AI2oRmzgFvi9KIptn7Pc4l+WkPfEln35hsU5iLR65fvdNtCceFdTrMWT4rZqzphEZrjz3yNYk7w3LxCvQIL14ZwFwS10/WVPWhouFtNSwsHCYb1T3YpBF8DP9C2iavwiCfTQ020MKQgsmt/yA+dL7p2W9mWoDIwtOTe2eYqw7CjlH0pywzD101rS0V27TNs7lwtTgsbitIoKszjz8WgesoYLtG3BEN+uVnnqtmFF61i99S1Z1nXmnvXAmRvlf2kPOergvQafBeJOjlNc34oUfaTAtQubzGSKc2MCqylcGxtHmxwEjz4rr6w3lL78HLnwHMT8jWrg47", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "smmYnXGB5WC7kmbAKRqUqjKrfdP3eYK+guUxgs36WpQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QwQuYOqcejBB3EdwFtt41HSudDn800Gw5pkLXvB3nQWapiMIb1DKffdCZUbFCyMc45SWdHOyuyzRcBbx9+XDajI15Iwr6otulzH5q1ZOzAlGycJQ3kZq9p09kNprBi+69EZcTSR8HwGTEEx92xH0+NhCOVDXCNS2RBh9qThVCTQcQw2tOQQlVQA5VxQhi87umJPnPVbdDuPqHINGXClHA1HNrcV6plsZDjgXgYQBvUk05Ue4Bq8vuud+Mx0HQ0IN6fEBlE90cujxza1+kxOjiIT/0seRB3bX8oROmQab5E4b3mXgIJUIcObKjUKDgMec4xHRwrJ4uDcjamPh6atzl5hPYSWqBn3Klr3xMez9OnfyhP1P0jEtf8Csc3ynI92SE9An8ChDgZCPNTNU2WTgGys/F6hFQkkG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sp6yhbT6Kryf4zRT9I2/11OGQ7tl/PZwbJeXN7x7yfA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3+3N3QCjWKWJH+7fFSYg8CTmlJVdlY2So6i94Fkg0uL6jtS5ozk31Wfq1EIj+Np8Ohuz6/gDAZ8CFUrlTGcxy14q9v/ZZN/WSyCEJJCKB/vHG5knzA8ylqa5oM3syzblplHYIDWAoVD2fWI9W7yU1UB+TRcNsJelHm6YgZHxw0A9ceBXREyTBJ7M5XObnSR8AnTvBoDUZE2pOLEY4XaSV+oOptOgH4uB0PfOPUPcHzftBbs0MDqlyCkBi/BGe26w1s9/Tbw51S+e87+4zcFZVwIU4EMxRk5xxDY8XFzLg+WjDgO9ptY33DmIPIh7/HAkyQo05Q6wV73RI5fiYzYY8fi2ekvGHQcb9kAsJEjml22BA9s/ddc8GAP1Gy4Zuhvq0asz9GvhKqUSZ51p6+UU0TRYegCQ6NqS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sqWRDV+FIy/yBWQ2TqUJB3DX8KbvftRULe+VWpqYAj0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zZ1sydnkk/2owwG5CXsgM46B2V5LgahDvjg2y1jHeA7rGZaqOeup2nvz6tThSnx08hSNsVyzvXVEVO/s5a933Z/bG/M1rb9RqvdtC7YgK7l7TKmwnc1N7H1HYLFfe8eaJj4NahN088HSA+ClyTlJ6gPw36u4HiKnfAEAIQBpGzHClBh8hTNstgChMMYVP0eMvW5PygkOjvESg6u7dUgfBHfHyVaULsLsqs9arIKFYnRoCBcT3Qppv71nAr2EtFcCO9VhzButc+6ifqPdVQu6XFh481Jjcc8deXvkxS2F+h2/lBOq739MGJSfvJuJrLbztcN0k5UBdNEUAYe0DOtMeD+dj5aPRdvLqGpqB6ir5gUS5A7XQ59xz1P9+RS7uJqfHqQEZRvkQrFVuwkIKXDPJMoOYoNAe06B", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sqsyZGjVFE3Z1GChoMWQsjs0ars29+UFgheR8DaRLsE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "INqjqATUeCisQa3rHLtG1MDEQQl1jKpKJVyme9m1HbHnjLbvR9wv+j1XRdiGRN8iS8Fm7QV/MyWPrAbi7EyLilPDAJLPyUZnux8hN8n91eYd0hyYQ3olDSjex9kvZbrWn/HLt+mqghfj717G3Bp3JOhD1NDmOx5hvPIWHvL8IDG/2bNb18rEZeZe0S6RH0bxAaxPvDG+kYQ0iZEhU52GfG4YO10QqF7JwxpkyqfrP/mOoUptqCcbNM+AF2Eu3Xevl0SHnCeXWUUU3c372dl2Mth8FpVr6EewHwzSlNdpGlJTto6kcIOvlrPxVyey0TlibJ7EWQ5tdkwrSzXe3INNhGTeesMDiSxP1RzGiosrOV7Cxby/Z+pR2Fiq4n8h12moLxYfhAWA6qEHJe9/2TqWFHHW/ESl1jHH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "srH3hwQfVRUzqXcltVSDWB4BkXC6PyreRotF4m8XG9U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xvmlyNkqdKdfbYyYt4eLofEyFvsXuVZUhYMvUjiCk4sGrYz7Vir7DluOwJK5BCqZ9UOx82MGyTdHCC+Iq55+et3tlvCTLznpJBO7PecIG8A3M55xHX0U/0HttXQK6cIyagG1CqtXQZNtplpgSfPGnVB3zbyeE3klBs8wodbFLFnwPXSzP+w6Wospl6LAqi0fDLFbAxxPL/H391rvX4J1idcgluc+owwfRX1CBSa5u2bs37kWPIgOFWshzhtd7/KFsrmgQuYKYjN1tsAR8SvDzkPId7beZFg9dgLD9f6b5uK4rmlDXpG3KoA0P8jNcXcsau9pNC7uAFlpyaYMITeY+Zgst6+6JHbmZFTdxqvUP0wp3/eXqB6c/Ks3QOWOj99qC2RbRGwY41Pb0g/vxf9rRZzF7HXZDb3h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "srrLh847wrT9y4kqHE75dG9qcrxjzUVfRsiDHWIAUmc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yLPR9sM041y4RG5NhvWlHHVtOqXLzTw0TW/8jnla1yP4Fil4StQcKHT8FjkY10CsfIZ7QsQ1yMrk4MhQxHYmPCPoONNywrZzOAs2r1NyrJy+c7vCh4tcF5xn3JmbEH/lwWyijYiAs7NPe+2SlfmMLBKfpgC2Wl7h9YmofTV6NHNiTyKBw2Dc/0U0ILoRU0MM5K5nrQoxHFaH1hJCEa2ReRKDSPcDDCu8W/OnFZTLXQ8YRBMdhR1KmCDQFq6aqWuhGy/BM330wWWUxBRIizecRVj4WdXj8aV6ZUdjemkx3bnAFpf0H/hSC72tR3iFX3rRids+FJmsMhSB1PrKoVZ0yqybxavQnwW8nb4w+PkVqoIpCLp76bpzPx6NPR3x44RG75c9yWAdtlt3Eke9FP7sHMy32Ec/NMkm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sseON6KvV8AkIfDUWtjKO82oqjPG8J9zfOn61P+0M8o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "U+IjHxiL7eqy/Bgej8e4zotrd5yHpjBgmpu6DtW2sw2SnO9WQJUoWVu52riLupHD7BJk7g4oIuRJWasJWu8H74nW/2SYz/UC0LH93wilnf2FSiyHNbrlwl4G9xDE6xO3vDsVaQSe7c9SoOU/k6K8ji5LM3hT5M6IU2bfLOILHizoXNac515MbdZRaZwTuIvVYNfDy6hDcxRDSUQSUUuzvBy35KvagDAxKF38N2eF/XljY1QUw9IUe5xmiBflBgG+IViiqwSmUi1pJa5lpvuLC1ulnJU+gviy1BJMVDPdBnVbUjEDp7Au3zAOeJYodNrMhEuan4kz1Qob1ItYMbEKP635OnpWRQ8EEg5iBSz4N1yhPY0OVFPCjz1GRsWSNL7ROT/jiMAPvd80BDgtTdR7XV8vG9jTuRfr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "stCpOl2T5/4k9rDLP/XfjGkFoj9Tow6pwjV5k8DwUl4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P85jgMQ7CE/CTxm8enVC+rByUiuULgBi6li7aYK8ZqePh9QPrZJYNzel83QNMO4XSvHsAlZI09xD5s50M/5OtE8MfQ2XVFDvbp9WqpoqndVNzMlyr/Ub9Q/s6EV+VBVefTttKBjyx9qnYEIc/q6fmAFTUkBEfxIV9XDa2GCJ8EzCezvUT/Uf9COsCbpw1qv7Fq2GF2LeDQ2mMYYEfMSTKIr10LS6mimwUrcmeOD+TXoYZT2/BtTOGQOvq+kBdsj4ergf6xQZe6uDq0Rfs5MiymQxNrsKz4BidMxWNXNfzYedfiPgegT8GC/tSUxBqzqCgPDAVs6dGJNoyFS0+lE65ptiz0qy2HZ1KUFJXkJ0JMEeuspLKqx8+Yz14B2mgO9zUIGsY9McRtNwXmS6LmJ+FkZTEHKD9/rW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "svGBnd7ySG1oScjDMfRrroEdFi2XmWSEzdODlnajMQw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aVo/LTj4b3cixfepRZMdeTAF+gRFib7GveynCdAVKF1ugv94fpKChryv4SECLqnd8Vq7HAiQgQ6I6n7ftwEmdUbDueQcvM6qjUC2SDIlc7+AF29nOsytL+Srz8XXaFIM0+YHuOQ/npSQJ/hEBo0gxeoybmUJxK67KUeSbi+oT4a5h3hsKmThFv0EwgUt6VXV/W/Zsd7HQCHaCqCybsQvMkFujK9Tzef/m8RViF1R8Sr9l9OLeKySCj1Huq7e6J1Eaa1TOvRPENIA79FqLuaidzxtIGQpI3KghOMVMG0LAuLPp1RFI9ZU5a/iUlPRH5H5e6/6H7ipGV3D9HVnJRWKck7Cot3Q9RWUGi7ldbxjmFPGYt/02OiHVEykqV0RjIL5y0YusxfDgI7xxjsBfqetEfpaqjN65zDV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "swezENB5gHcClVOE1sG+imhRbsmERz8ujYwODefLrhA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jI55uUmOwLTozh2i+eVQgwJ1UzliSd20fBpo3PmUPqTwxSA58reP0tENY36RDnce90v/JY0z27jnlrTfDAptJ5FTpbZ0G+gFU5eCpiLmhWjEbb2nTnAwWuVEb2SNlmA9xgS/pT7CfROjXeqwb2y43JbZAQJm9sO1WkWJYse4FRLUjX4vusgpj0bM7RyPwoB2uq9NAg5v3pWTLeGkW/+1hLQbEY0XhSEwZp1ZFHG8HsY7CGV3AAmvzfWKnNPe1hbYvjqM4cNo/WpyviJwXjxXJHoVnYuoATdDpiJDLmCQGc+WQHAbAxKuC6D3LoPEbTLEv01xo9NMFMS80Y1muNfpIdZ3t1P6GOV8kjpF0OX4b0r4SbQMGfZlagXTdLzrsKfXI5Yolin7Qf52rSfvKW6YMeHBiI/sWPNz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "swgk/m4so5M8dTrRpxRD2kT0nSDGUz9EOZx2t180fXs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aPOvdIG5jEiCWEITV+plgrCPJ6Q2hybpqkn3PlmfEMrS/tLEken31HNfJH6JvXFWMTDs9YYZNQeY8+RdNpadqKY2faVITwidBtFEKqTuzJIqDftvt9OfmDjJ6TN5eHq16DnXkiIaGrlxsiAuCA7qNlBz0qYYu/JphFfsWqUTlM1rpcaRdYbdpEI5rzHMEclFB+uCiKlRxh0M6KvEJPZt0hbS0/B7u9b4vQnD+fAzncJAsd7LPRT6/3tDcKF3XmTDIBJpcM7g3hOIKdSKfU5FcAzhfCNUO9b+hbhoJT0ZLsieSyh5s5OK/zaiTPsx3N3NAsjq+LNnBEvDHoT1Fr20PG1L/6vuDqQkxbbFEpk7mUY2/vHHZcgeydnWCm78uNisU6w+YV2iuXm7KTfflMVDR1bdiTzXwvN6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "swiAl0HvYmSvAITO9jSLtu1i/wM7FQyTUkhFgp4E+p4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BYcpuufNrpBmjRBpnNlMgZhabFjsusCH7w0Fsm4s4ci0gJ2yFWuWik5/docPbV8NnUhiDVKPAH+46IDWpv91Qj1PheSiwFvqybVecmcgrqBTBj1qMeokt0alThIRg9HnCr2Va9x7jkn9ku6S60vmZYdVz9dN2ITfM1nqVBwQ3iX1v3H3BOzq6fv6I5HtPClC1oC7+qVUo7zmtqYv8+QJBa+aKn8Ue07Z8SQY7jMvpSWpm4ZTaS+m3/cY4Ri9KHPanaL/VZ1BSY3jrnBKJQObK2ich6yvoLNcIqmcCtJl0siKz+FU+wI869F4PIZ+JjvAISA2UmvZhsubQ0e6rKNwvjIfNpzMf0236MV8z13N4eu0y4V6NF43hWtDySh1EE572q7r9noUy/RQ8iA5e/dVTS+iCBR+7r57", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sxCnKJEzdRnZe1CkF+YfmmYpBKN1hHlCyhWFOlDAAj4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rLoIlxPzwpYiG3VekkRg17JLJEvf8WrdZcYma9ci9+MSMMcqwSAkN0fcpZ9H8uOoF3WdrcO7XkYFW3fN47D5FVPWHv9qioNbWz3QXAIQ9I7LjxjFBc/hTW1wI8Bkv5YZXiS+DDI3EFDejnh2GyJIW/2f6ZmYI/yng0zix9zNyvtfYQYCdxqoZjBESXVF+varxjww8vy0KrivIAPcVGsecCEltW4HxDf+B/y3ENuKiH9AX5eCAyVDwxwX/RsOCREGmK4YiuhahL2zVeOwh2CilGElE5eck+IigZil9lTP3a6a37rXVQrc6uMZkwT1fKqfI7IUvKGbdAi/IqamX7Y4YtEXJn0k9SFdB9hEc3nzwKJFX1HEdfWjHuUpbSyqwPkbmZcKVWIN913hYk8flUY9zPQzXXgvKLIr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "sxjENRARCwo1ZjVBGIUUnkqE8PSdWhiWwgRooldIHrQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xhnChL9NS0hrWxZaBaLfHBUomFuG6asjunNQGnIAGf30Yx1JRLRCWTg3812ZAeW3UpkOgktysNDHnMobNw1uJs3ZCCWLq02yt3vqnvoYw3MTp2+Hk/Z7EyWshn4ry4QDDVbs5hFHxT+mCSFjIU4RBLQ88qeV51ox9R12LOdegJ2tAZ9AnabLjjQ3om4ojcs+Jt2YI2WMJ0qBp+LH3Q9qW52yjRY8tZK2cbFUEJTCjMFncptClAunCHAq2Cj87o8UIKUnRvGbvc23E6wrakBCXRpZQ4V5zAF0SgKgyXrI1yeZ4aamrGbuWceAsnKlGAqZwgmsh6kQbkUNqmIvRBqcztR21yqHnL40ceY4HKQKMi5nvEVLERgYY4xMPsnGfNtLF+x73ZK7y3jA1fPo1O7yJue/+i7A2VuF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t+n3Ezkwtw19gXfTnXNu+iig4ZWJ+asqEYqhEuz/B6g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QWt5gilAWYt5LJzV3P//26QjjsigKc1aQQeOYP8XLuu/tyhgmwm/1gtlR4HW1b5qBsthy20HVIx1UwemXNjiLOBZdmtqrZflAR+oWFAtTngk67grcqn9ghm19XPOIOu/dlMGIeCc1pO2RzcpDdy6GNalB8GnqJDBlJESxs6fJAbP45OCjEpm4JFs5rp/ndOkaEb4rZM0hgh5H3QMnB3xQx2pdgSwmKLE+WwfZ2KAG2Vb4ETS6af4TQujstZpVWffxTT84g2wJuXjQkUDCmkuvVbsEopvHpZx0Yhml6ill/+6KTWY+BQ6sHq11HQr7Fq6QGlYe0oKX3yI7htipRZVlujwih07fH586qYaJeXX8/HP9Tb4eSlJY+51grN/YWWGmlA4By6OzJxPLKmALc9Xw9Uu+A21ZBb3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t/pWfA4SnvsGeLGSBjWubLoxHOAi2sv1Doy5Zgyybv4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T5QjkBLT1RANUbsei3iWzfzgUSayQJ0P5ZWjtVEnh37eLzEqRKuZhKgHYQZhfXuGi+buQIMf0+Lql4bMV09fkgjG+W+A+2aZdyaZGuKouBNd97D+J/5JI43Ht1AdsJ7rsJygtFOW99Lpiw+/Nqr/H88Jlhv0nyFWjIwz9RdL/VU4mj9Ld38s7HUt24Zy1D1W/kPVv1Xd85t5n1tXrtCdMj0BRpleJLogaHQkPHlXxNNdQajm7glwbFQBaRtj2LFkk0AZHLoopU7f5xQBYZ+sDPs7YiW7hdGXeI8SK8id+9qal0GRBS703Z5hwEcqoG662oOyqPf4u0PtUVKWBeIYYOnwSTbrRYH4f/aydavX+21lQsateyhzrjINa2xg730U3aO1K3kPMdv3Zk33uAEiLWnviP/x7XaK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t29bTJhRFxfocf+XS/vaMB22pD6k0lzxlVH06nrGJ9w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lxKuR6Th8U/zNy+J4h/j+vGH0ZVEw+Av9U2oV9uBGH2izVHZl0Cz0ty6NLcmgG7CL/BWnmpt2UvZf2CZ4zP9PRgyh2izpSQOqF4OG7CkyzuUjA1K5AXS2cDkeSYA5Sr15TjtjezH3Oh837FkocV5/s0SegrDBin0tT0hkK4qqTuw9qE2be/0ID9Udtqt7SjoV/2almgPaadTE67n4z5sMsYw4+fguuq1ZnTAi4T1R/+jBqA8OwId/6x3p45Hq4f00/KUZQj6cMav3s8RzQYtBZQpJj5B3+LuO5NKzEX5+SZ7l4EkSN4yAZLV4mQuVnZefolLU9xxCGtIxCkHLVGjeUGVETdQHWUlwdm10YmrA/zxy2HFIOBzjm5ncUEdhWiHnUdI/H9jvvtj7Im6fa0d/q2f0H5f1rvF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t2qQLwwDFHOOOehFPIJQErm96L6JM13OUtRC3qhzhwI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5VdptT+tD5eGyWIsrbj8fcumrJS83SFtsiNOtmjJ3OEyN5L4zeQvRjh1Ht6cEDQxW/ydSngf3LFJgr/BfmWHH3ltD+SsdqRwwBdCCNWb5Q1mcV5nEaDBxHQqyS6yH/lYUFnCRDYVwZl+hxVZyy6NeDMbBLl0Rb8vbxFFB6KjC0qpoDWGWBTT/QHuRTwzHWfdYTmkM8NchLZeZLqWfWuv2wvcYnJzrR4+wI/cs5R6DNS9YJmWHq5UjE78LW/j5DP/Uwd4l0QcpGoPMgCAyE5qOVXEBkZto/GjXcdtTOc3SBHaiBlZeAWLg4lsZP0Bd0VNkNCYajxR1VJTy7PKpmxn/9UP44RZhdS7ZDLgo6c7/IGxs1woMz1WyYN/rmOsSZ7TRTqNdcDqlyhtMCSRfuHdiiWW8tWUCn5U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t3adFIFaPUa4/m8fOxc4eiPPjXRY4EKr2wJZfUx7POM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ncnYsGNVtyLArxL9cjTqAdxzuTQUAU+Hvu0lgp+fWwolnsuFkUhU3EgOUZZx+NavlC2b9FIWqaDU20S4feCtzXmUE+mpBpx1yj/3fcMTE3I1ism27J1d47Zrf6ujwLkAoXDQP3oea2CTYvxF3hBnOLsXqfQS9Lrcm2vH146ex4zzI1gACohImvvJK63bMVb9hmBePUcYrB5QuonwLgeJX8QkK4ka9ze0vylXfomA99GphDs8c9rQMjFNR4xT6uIkK5ST7T2r4JfFJMQFDUEh/fi/yqdVtfpZnON0K50nBaQZO09lla5tGiYUJklQhgvl6RoHVY91kpKMxdjTwSo3lBEc6KvbeSXQCLRP5uWKp8zcz6Nt2nqYDYTdT0JtwcSOxUgq1/IYxLYJ9NYL2kcz0qJxNlhUncGO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t46KWPN59XKyLyhaNTW8FaogdCXJC16jDfnOfOdcUxE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uY2qAU/v5YIaa4k6ei53dDyFvFsmR8GJ3M3mpvbW6lHPE5AWIKSdFPHHhjX7mGln0OrDFYm2TfFJ4ddMPHay1HKRefrOyXxt40dI6BiOZ+6zuPRE3rAKP3A2pQMfsBuVekeyyTfBCVMA5DV0fjVFlxVSp4teGReTBZltDAKd2Far+7YnDaDz29t0mjGUirdKpzwGWuMahG8n38VTB2pMOcriVr5idOgOlh+htfR0xoglClGwitkHJvtKoFf+966PEBjBmYFBHqQqJ/N1XkBwUAyl/ssg1657FBAYfSGBej9ru8T/xCM9ce0o7Z3ifbUpVulpaISZYUgqD8JGWmP+lBkSBD2x18dwhCfmqyB7bN+sZESKVRH+g1Kcnav0lpsEI+o2imxIF+Cr/XhzyX9ClAbRYvL6idV+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t4mGil/NkTIS5pXQdxDl8PazrAOOkjYjbZ8rCQlrqoY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LWla9tdO2gHks1rQpOGRJaCGbL1UJE62gjsjDr38BUTVpklKURSZ4E8tJdtF0Pba474sfRk0NZAMOY5I8GPdTwBUAFO/iqJoEN1dTzCzW6CB7qD4Tq7SmnfyPP3I7tXVsYKHpY4hYznM6wU0bMnRbswoIPRdJw0pY+PxS9Ydhh1JlXvusKlQT1PztDWfCHLlJrakTSmO9rM/dCem1kte4A04zcanCPqQJvoV2lDeeObNT7TUY+vCRRLAF9Y3m17uz7tdbdvrfi/SuSpm+wi/utnQtabbAywU8FKZOD8bXEcKHo8ssS5kxptb27p9JqUA8NuxZSzQoOe17ZmhEDt25/1wq6gsZvSjgH83XH0mUz8Vax4Zv0+/xB2aJ6OBLdPj4jr6C2o9RUJoPsWXbu/ByvUjfIegsHay", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t4p26Cot7Xfp7D3M/lMQu8V76ibqNiMJ2xillPg9B8Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N3KV2Fuc0hgLAKdrADsh+Ymd9w+fVjEe0sAFwvaoPV3dR4cbcyWCRj1FjgwF5LcqX7teNSKuT6qbaOAleHd01VajS1hiWksmEJ0emnhfsFYJh0d/KPGH2cr8AjY+UGk/JOADudABpOI/tbiZW34sXkOeTVzdzg9DQPWNtQt1s6g2gwVBZGrubQ8YcK8M57tuwi0buy39T4Ims9mNN1jmbDW751FB94+RlqrR38PazFrwn0mjRN5e+I03W24l/A3IHGVfm2cYRGeNABNr9BCFpQCp/HmXnTnFMhY6V6pO68Ovr7cp1waXQBgnPplPRZadQu0VRVl8rNfYUa2oW94viMFauUlSGXe2xcGCZUifX0VB0XMdFsRJb0abzZcANYjBI8ZbSBgPGoT2GT+BrgwVzmWvl78SJ0Or", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t6w08Gcbh6JwAsDzg5EiBvsTgztY4l9oMF2wzq/qOH0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ho+rnyTYasLk7eWQgJtvRzsdy9Lp0WlLaMa4UGUrw7snGwmsUVpukn8d3S3tElScnbkiMcbkgURlwzT1emBZ59UFRoEGy6Byk2o3x+KsOOKlhbpxZAlEHJKE/McNXl42mtkFrNF7MxOg98StqUH6VgoFpKBIYcjfl3OktQjTSwpNhWJjT7IvFi3+fvTtfjyQIgo/JOQkZ0T07uvzP/IWpp/Qub82gR7rIHoPQRonSLvzd9RGTZnRptsGq/fK2e+YYZtMHv2DuulV7f3sAISQzke+rYVlun7+vl2AhH/3CASiNDshmwfHY0FgSJpl93LgXO2Vt8d87i/hDv1zaPuArpozxE7ePJ6953vgT9idlyagsxkbrTFdXyK+0RvtKkOkzjcGJjFomCWCSZjtuAiIBGzoK3Dzrshr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t72o/tdVk6mOB1w0X+fz2S+cFEnDfn1RdQP4/eX8+ZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kB6O6EOpGWmS3XBMoqzwrI5nBAtci7oMrw5C98ScM9u4FTTyrEAKPOWtOZEAryOP3QGfeHkTTlz/jzdGSq3uD7KVSuZS1GFhy/WgsHdgcyXmYDdFwCktEbNhLgulCCRIYbZgteyRQnlJ0sZ6K7xFaKLMFG0hPd/ApXhT5R63BpPOKHGjUiQ0Bnx3emryf1TMQb+0OLkZC9kWnYNUpa9HZOaY6NiTp3MIu0YDc69svCBZwoBMDXM9HdeEyoyhwa7mPxgB909RqgnOPqSRwiHZ7X4ZqCdUVBpHKp4bOJyo1Mpx+uRjTUwEzXwwnERfoptDHY3GFT37mwnIuN2e8LvRHBVitkdR2KYAQM7EPf7yDCuz5C/BEmHza3mYhuGNHjkbKgsnAMz5qZe97bpwF2AhiqfWZZsiQ27u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t7DhsfKab8NrrY87K6CfVlX8XFN/jQyI6yD8tzkkm+I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/TNxH5UdpX/+PRjBa06WSTOC6uOY9k+x5eYl6GlohN71rnrn6bBmIqyRHzdoiJQK+ZrYVib0dFIeo9L9YvynzMrccqapD2Bfj5aFmm0lUHPMxo485vmUanELbyCApRxrt5n2HIG37Gx461HYA5rBbFcnDnZdfubi5TRBpL35yge+nldERbQ6MQtfrYsFHJsapwmdqoE6xEEiFMP/9KXdt4rhYH5wTHpDP439JLIoG5pccFWYsanJWyt2sU+gd+eCTzsmzzOmPZsGUnNKfaLUdEBZEpGSWf/MHpMyQqBMUh3GwTLNjdrXIUCvxzgIXLZLstnldy0UlqoC+9SCO3iAvClCWz/DSJHZR3DpaWg0Jz+rqaeYnNB+is5tN4ItV3kq0AO7fMymLOWSrGd2KqlhNwtSmTiCkJgG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t7EIWyUpZwmlKgIgkc9JxDvo8j6FPNACrphLiKMxS24", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/s/EGmw48dJGgw0ykmAECKzNhPknDGO2xpgFlL0mP/dqGIMcOcXGoluFCWbP8f/WYV5GG0NeTLDhlWlwijzzSo78ei8unPNyLEVDMgl81yfl0MyFVLqfElIsgHbXwv0q43kWPslhCbcBT7nGLfwRE6glmtm2YIWC2NJrueVmGHXxHy6G6pGgieU4QS4kWUzNIg9YQq+QiUoww4qK5sM/9BkUlxm+ss36pDHMHiRgUUuHoa1CeAEeF0iWUCHkBzHe3H18A7Q++2U/ZnMf3yLMGvxAyeH4m/w9LTcqqle8CI2OY+aw7jaUZz8yP5lSugGKi1IwySj8BDC9Kg0Cz4omzr1d8QEH9t81lmOFQ8BG0h13i4RTZ4HKe/dkW1ljMYI08VDWr7LD+h2c+aK5PVmZTQSsP2C80nLQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "t9YQmCazE4GfIfewvflH9GxF35NFpQSM4qz/QrRCyR4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0Lq+pmRodOMYgwh2tA9pxcPFhPiHahMW0ln2mKH90ZoM9yoiGIWMbScS2VvjY1IrpzCNYxWf99mjw7ii1uoaBVBG00k6Fzyhbcv/boPJhvmYLwm7zLQshOIQgB+Gfu8PcTNSd7a3x9j6P22lBRMmSsGMn4V2/3Cqx/j5OG5MOFe8QgOG+4TJC1LRa1DaLus9LKqDjPywIBm+3cBgbm8rRB0vuSjioMP0ZcaJdM4KQQfkSEngFlp/aOg5Zo5mZdycb+4+O1/XEmB5OALYCyHNW4YqpqblVhiC57sg5WBsG9x2Bxe9KEXmAyDvSSnDBS7i4/HnQeKgv7qHro7Smb9NCMy7kk856NU4zO4q+je6DNmjxYnBukhVrhQO9JElFKqquQDSxks9grXgO83TBZg+gncHsazJvbTw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tAbpR1wKWV12fOMt851UgfGpXRHgC5f0O5r09/fbed0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9EuguMC4sbYwvwS6ThY/s/wY5XtjMJ0nvqpPI4wVxiFiw9ICHwAxoyOodCHP5jm94/D4nxMw9rNloh5a9kNJmL62fI1CNGNYEeqlOujbDTEIv2BahcZ0/TIcmLj3ZOnBlVHXLEz+Y6tJNTdfWUO56BQaEd5pY8+QdURfKivkKFaS0BshYYDvh+YkKH9AA/U+vWHx45xtfY8iYuuLoJwE4Yz3PY5HyoaDx+jT0RGUotjiSZJlItOOgLaK19Ypr116p8RvGArhRkxjsxFS4LYKPekZ9PDXnzamzS5887o++Qh447B+T2FncDHHa9cBaFarm3PiGl/ZAyAosISANi3L2jW+mvS7rO60VzUDJgmHo7VGIMvwUZcNe+eD6nJb8/Ej4wf3/6amKdmjheqBrYRwqAAibl9+b7eY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tBhSHSsjNJjl3kfU7zISH0xdgiuTZ9WlCBMp8Vingpo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "G/NC4rEAdwJvpJKK/Yz3WY0A58nX0E5BVcKzTKWEjvPcjY2I3hNkiIGvNRVvQPRsCV0yIDMn6DyFqIoNpOD4fhUOvlJUDyVTp7mA7H5ZpE9VEjnEy2jTPBBcKEi4Qwy7xb1iDH/btETVRl2mkzyN5Nx7GVqK44Oamg13qfTU2y9UQFLaVKB10fdgYxF6ZnXNfokiTzQnMecT/ClJwjjIIjqi7DpEhcchKniC1pT7BM9E9RK4GO3zuTTkrFR4Zq8HdYIU4Qu1JAixAsb4c82nUMjQRvLTGnnj+xWsX2voI2bgb97+zGLvhSAvUIsTvo8KirfLBtKJKxMjRbvuQ3Ug5J5g0TP/7ILRaN/cagVGXOubdthftWCL4lavms5MR45Y6Wglxzh4D9LhC+OQPwG9FpCQa/08BHNi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tD817KKcDG4wAFUfR+B6Z4CXOimdVqo+WYGTRBqZk84", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wS/i7vsAbQBbJ4HvIWKdazDBIuKm9LTY4VPq6Q5nBXkrCYecunDJZFGTpMdphe22FQYisksRuJ2pvHT+wbccxuUdZVSPgxnYeEgD4Jc/yNONodAqMFbEqYejp42NOh49yIITj6XYD7T2ETurZkvIVSBnTb4Gz/skyrCJPaCN1Mh3Imatxo2wlB8NiX1IoASIbZus7SkM/5Tpn30zfSD3teWEsDqaB5bTFkavRTr0AtyCQEQTe10mHl815dKhhruo+mRMNBx8VnXnkgxe+7RzlQeEL4keDpbf+YheEdcmlIx8nc2QACRvAsusGXSBsgicLs82RevyBcbw9TOLzdS2FuJz99MI6Vz26WpWnj2WBwlYVtX4hM5CWYpxeQydlKFhYGSepA/CijG2Bbg/qsOTxZvzx6Jks/bY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tDGNqUuhc76j7v9GHhSvO1ZSHWhlzOShkH8Hx3rMuVA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W3C0sx1ZKbzVY5W7p6jVyYxHTT4hb8/EeqQXP8aDkMMEiGnfMfIyrawwzgb1D6DkL5tqkXz7XzvB1NG6QF4Ke4fkLN6xSrK37J/TTVm0GDNMMB/8G7OOqYPnPsMYnw4lkydLNy7VfCQDvYO0reBssuumEtxb1KgW9dQnhJXGoG2TUGVCiv+Ul+RwU814hHR900fqA/4UNzER0zLYv8dC5PTtxk6SpziyNCi75F4nYbgXMtHBdXysRcJb4FEAx3DUbJRPXA0JKt1QauzxSjhbAOU+FLnHM6zlXrUZBHkDxIAKda02t9PLAfnNBeF0wPfB6H4c+1VggnjAg7kiPsN0X/dh8CTeQqwLooijCkAPXNHyuw3Y7JrTKbA8h2/Do91MC5jQPCq7kMWnV+oCnMkwmLGd+QkrhN0M", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tEsoLGGw88SYxIn4db/DtgDuU61ekUXKADplZlpQgaQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9GioJnMW6dMKKHltDG56duwFp73bo4tyW83HPG+dksmBwYd32qqe5R5p7z7hqqav+OK1R5gwL60vhCtH8Nv/xL9j61DZkEyE+EHyLO7C9REFhCp0wTC4NXgJlxfXYImcSuglNkKUuOj8D/UpYcygZ0X9BU6Plswe9K75BMedzy0UIMVHLw6h1dwWo33uLKcwGmMEJ1j+DNoY5t6TWBZYiJ6dtacVOfX7gmRoe2hhWyNp3LJO9Kg9JneV3E9jHbIbKB8cTeo/LxchbWWAmrjhn7RRFK04yeaTJYWnoNblYklYswvz8mRV2meL/4L+ydrqzdMrs6/6t73kVE8OX7VzZMzz8LKGshtNOcPGkAzPhZ3UL6GTd5zzmmKRjzb4nDSqyiKVwSY0b75fPgMHdcKsJaQvfGo+jDOU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tG07/GlGbucjjlF0zrx6q+h/V6hKyq4AitwJgMycf04", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hVLZ8wKsCtxnbN/yBB4VzGvX+bBigHvH8wh0Cewp3lD5R83f8kqq147onoX2jUOcWaakNc+yxB1VV9J3uSPXU9etvl1S4lDCGZeKfwxR8yqpaA/LahHO3X6J8GwvwZ8ww3xgfaxk2nCrG/n6vcg5+wbMMnb+LnKT6bDQ37TeRLuz93JVCDBEfHhiDQ3uWk75+p+WPNjgG5fA8VTYHhRHXlwdox/vERRlEZAQ3SAzk9Ki58gbJm9xX+/3Pht0EJwuoEgUz48AcZKTHsqmUDPlo2Ih+3ggPleFJnE7nkn8S070OT0SF99FD+RodBfo9Wzfvq7HQ+SK2C5CR0qiyLzaOmNWCdQWuL5rBHKM7VOniFITdneQTsL0mMFSZEXS/46MfDgAR+VnqphSRCPJHT+PQxAUU+jEZMeS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tH8vHaGjXT0HunN8vbuBmPqmTBu76dkssPF1aiVJAig", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ESGWH6fNUlUcgGFL53XbAcXrLaIybvkiUFx2fsnatwf5lmghTomCtgJnU42r/YvkeqwxxOnQvgdZpItnn0EOGenOqY72fYj11nmjhJ1gu79y63WxXiCE+2uGFSJXan2MFjlImhKvnpIaVOpFx58Qa8GGaA/DELn7Xs1p+7u602ta76I0xxcMFysQaSrJq+t/ZNofdC9K9AZFhybMfgMt2PPeVpSYIsOO3t06eC7R3Qmy7EEdwgV0WRQqx+U15zNxiw/f1lWNh6ZRnU8IcjaOHkzY74E1tunR82xz5T/RBbAZRPonu3PKP+H4i67RtwW0nXoWE8NeYWKaOdrx3fxeL1TkURqF7p/5PwMoYRVgGZeYTeeLk+gyn3EvkoInXsMYkHDdxJ4h/niemrhmC5PuFLNtur0OGDby", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tHdu8htRn6UV8BL8umjJYt+TaAqsSjDPn5mUUrqqjBM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PEn1/KxQQYqtm6vKb5ii+8Wl8GcEHah0Fk9Z+Lm9Jpoz1gDJa6KNLYEKbmjcdtR9XxL2pTMMLbQlNeQ2Yoonp8l/0RZ9weRdlT9NAX5OzHeFOAOmqtgXl2/aJ4us6fLTHk7U2vgUqQ3a+dTXlSHyO3Nn/QQ6PJbuWUZEITeCFeQQbwGdvSqtHjkhLjRSz/0IqqdqKomnj0WDHFs0TpmVL/PzFaPQsWQVxJsP677uDYlaW+DaHpPk79IXoHUr2QTYf0QsKSLv74/316v7DaJ/V9Za6qOlFKPwLBAYfUlERTBNwEYQ59WgVlaOV6UtwYg9ywDyTIEaK3CgHXxrKnWiy4SAqin2F9yNI7XALBjzMxblKvnUO2hqPprqhs7UZQdjF1n57EV1hOlx2y5pDhCWitNxFzxF1Jcz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tHto203PLsL9qQj/MwQcOuyGruIHGcehEzh0s8aTMts", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0G6eiKuGDFzbCGjdgwc3a6V1wVtsLAY1brhvk/yH2i3cf8r8M+XDy5R6JOQa5OIMpNI0icp5U3i+xc2COEPO5IoLqYGLeSXitA4mJ6T2pikFfplAGAgVfJZ+I/odvG15VNWOnpXkYgCda2LucuXaS2Kj7bawizibDJyZin44giVs9RgtgEGyBP6D01iONDWaOjaBB7lj25ja3OqOa9vnQlWQFSFd82b4f9ETlT9byNnvHdmn23481MbRvtiZUNUWAWtoPa8l9ZlNz37p4FtPClv1iBoGupYvgZeh9C+99ghQe4iwja0Qxa/P1xoMYE7jUCS5eerZxrJA1vgec2rrde+PUz9iEvZ5b6HqzPHHcN2iEbZ4Ck2v9yahJnYQFSztY1kfsKcTXj1oLfQizqOa4ELALJdxCBAu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tJvM3qo6zefuV4m4+76rIZ405zG2e1QvIueb++4Z+Nw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bHNR52FLuDoKckWOKczjThulsRiq6qfDcCzzzsxEdLBQrtXJBMvuILcvDwBpFsYpKESz6P755ioLj/luFFmHXm78dkP4zRUmofaFV68pHGkRm5tkFcy96WxokeZ3T2a1Sm3SFFbO18+bshOFoD5nJ3H132FQmUIwk29KIreWXWXFmnmtzjILbxxCi6EDll9vTrKikQ9Qc4c3Tc8wUo6w9DT6hzYLBbsb3Cqd9uiz0dVdwPiIYtW1K2N6A6sTrSZ0PIRy+6ZiAA74/pr1oqLrb4wPoOfu0AN4ai5jOF9HmxHZu38Q1c1VmEMZX0fiXPgHIbC/hTkn11G1YPHoXg5nbUfWFqUuAC1hkaV/2Un1IQseDxBoVQKKNQHP8unaf22ai7j1XaEu2w6Voue0ayQy3fu3ww/16Au6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tKSL+wvbYW7dwW88Wb4p2+xEd4R6auI/zUVGqaOmatg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7cMsFOP7t+gsMYeqmjNB2O/UytDBLYz1fj2JoxTxA0Q3M/E/2qkQa+nDDiwS1wf2wM9dbLPulZrzkQzO493NkX5uTZ/9gTrqmrlPSuS6ePgB52YIpImGitP1Ka748z8KmvFlry0VLgDq9RT/lYCZi/uhP+MHwtkyL0U9ZOFQQkPcT8gEIFqm8q7MNO5BuIC0EY92cyHsHSfVsXDh33hZJJQkhxN2N/kNjL6KlJ4XtAjjCnpp83xarXT/9wCznYkycju1vzVwkF25O/CfwZy0o9rp8XOOehNHD4iIRjqjArkGlmE64A0uuMfmmMeTjcB7t49JiZx2HVHWF9etW6Q/WE8Vkp+t6sbLfDsFbomAgwauFmMQ+j9fyx15f/R4Lf6IPRQT5hi9XtN+zNO6cCFmUi4Nnr4QDWVK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tKoRo3uWRyNlEMjGVsbo2eQDJdPNZm5/9iG/MPqJ6yA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Xx/90+HEGqqd71db/cyBLqCCh1bkF8F3dYEQ9OceybVggQqLRAu6RIN9z9ZExXamzs7SAD9sc5Nh3yLzhLZ44F2SL1XiklqJRvBD4XzIk/v3dCEj4AjS/7Zr4FIM/b7/idzOlbrQtsQIJeRb1W8R4yi/sy0IqSSYXaAHfOkGd1kdOH7pVfnaxXKE9nAlKX6SsQEsHVTGGpF7rqrLhT1MV+btFGAURxdVkepZ2M8gfgIV5rcdhIYRiwI8XZUPTZqSJ1uAaLKuwORjg2MGmMAbRWlaeSZz3OvvAxADDRATimDXq4WO9IUF2l2eIhuOM+TSzoq4LrCuCyFq3mOjomQABI0ko0b5JMDY08PMfZT9XdBq5Arget5W/0VV5g0hYNUhu22AJeuVVnhCNDLHarwBm5o70V9m9VzV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tKprEVR+hcm+gpVQaJOZ3j9dqchQRQqE9vrjE1GBQ5Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Iu815zKZsJ3yvoWNGR2+guWppt72sDM9jG7s44Q+8CxJ8WB9sOJqLMDLuMHryLjAbam3YB6lay0D/FAaPY4owP8Zep4wnZwj+PuTHwOX7r5ZTs8Gd5uw0AyETN74cky8PPkAWYMidcqtfHjbncpwAkFso6PpgExu7DlwafGuLHOHsG7YvYKKLPEV2BbV6bcnu/+4PM+OKM9cFQELJMK1g2vqOCtthixzXQXNHUNzcENzClPOUDmovbbht9EfmQQuOVaBvak5kEycWPZ8PfpkJ4MHTsWPSZdv7tC2JtoYLqujDG3O/WL9ItCid8uySmv7wglUPvJuLeq+6+Z4X9Ojqt6JUHqYTHGZKBujw8/6DcU4R/WsmJPm7sgLyhtcvTVDMUyA+hV/c7nCtGCHCBZ5i6r9wDDEMDGF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tMQ1AJIEARehT0l9BLaibJ3oUCTC0Zd8tCe/Fr0YQ6Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5UrjIl2y0oQ5rvPtmML5EQdfG8wlD2EteyPT5tNk0J0o+SenUAIcrTiZvQYRFnKzEV7hvvaGGX6Epzk4I4L7ISVspIFdSq2wD8tcDMBCJ9+9UgmiSoRbvYs40Er1r5knrxKutPTxSvTGLJ7jroaTRULxT+R4GQXr+fyJVLWS1BK78ECChlDdHBbvvX8VPgfxJFXuRsJg6xmwXpnpRZdfHkbGOE2ppZh2JmSSLb48xaGgDrpr7uHubVfR/DSiHAcstzHg2JAoWbHj6ElBqEKfOntiNURKpumqBFkWCPT20g6eMnmihyeRdDUtIRVhMFq2kDkcJyYYyR3Sx4PenF0ioJCNhoBanGJgrs/qvOgPsHYQ55oc2MbAOHdO++tiNy7XsSOYKZjRU9ba83pwcNEq89AguC5erC6D", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tO0Up/HMyFYm2rCh4VDp75jLJoCCS2GG5jX874fB5iQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fWLACn4JcOTx9HZ8SQkFXNWKtyE6jXPuTjZQSeXnPclKX3LL4iwAJ2GHpZPMmNv7SU0vz0w2A6vRmaR6mnyi3JgNeZkV22iYqzeVTKBa8Y+Ai/ZQ7yKWQa7wVFu6ssne/JpWclnKJvh7Zh037UE6JfHs091MfhFl5gONVcO5KyzvBam2b0GyIgRZFUe+LEvX2UkjkfWFn3oevqh7CaUoeIBZsywLU9Pz+PjdhUBq/lHWgSByA8TinJfAyB7t4rVR4BCal+GS/8T11EJMHXhOcH/0HEdtoauvY2cTN4sTunhaaFco2c2+LxtPmrqwVuz6Sja3LktnqSdZ0OvNG0kwBt1Kqiej4S+wSFmOeockntseg9c/tY8TiOXhvuZDKvGFqGgqv1h7IF71EkvpSxfpkx0704Kx9ybW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tO9zDn1ODI7ExB1Yej+wsSYgcl6umK5AFGa5jdSLK2s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2ZXCm9km2KG75vKU2LwKjAjiQeYyfwrXTzmi5vhUPa4KQ2W0RSpTb/9joczCYV30GbvsdgWpaOn7bcd7Bmx8W9Hm71qvcRH5UJu4MPp/hUzDLLESmU4GkrMow7VEMmp3U2hw/eIsJ9FLTmS76Qy1TetZWScNI8SM9jZaUBw/RPTtd0251tXUdUjKTCvQqQxQJCTWBbCzf7fqa2Pz9QFG//iksNvDcs3hgqe1c4xsgr3zRzQUGLOzsKtuQS3wduUKJmgFs60evNJTe1L0Ih32ZMizkUcEj1rnD4pc8rfI3gubvvFVS0JpXeoysnMMF6f0BDbdIgIquOO2FEztH0wR0NCrQaB+xinpbUNbud8osMotEeEzSgKmg8uNVaSkpTr7opaM5T3UYnZVtRVGisXMpKayemYQJh/r", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tODUX1NhCu1Z6WPtQP224fSB+Beyj0YsNwSfyr7SlMA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QZFUN3YiCVXXXC3PCBxPJmoZw0/k7fGA/sfJ2e9WLrfRuV+1nRNXHfTXjmYaiNTexzxfYBeGfDDvN6PH1L2uvHDmTejinMgiucJot4vbzHembrgtvkZ7RfRzO+QBUnutxx4JKVIhp7yb9gmfQm03ZMd3y3LX7jFA6GxecJs9XuNX63JYXI/yDPny2TjIjeYj/9wddNJGAxpDV+72DeZge1hJ1aRqBWI3om71610C9uejNcUwapmLGEqu1YwmWcWWdlVnxRCexz3hi7OO1kkEpLc5lvqbhF5K34WiqOg/s5Ra/iUxlGoMAfK7awv1cc/lZq91/70uo5A611as3924eTIq4Map/mziZp9GNkUU11bmxrPueT2uKZtSFoKBeZjGmDllG8ddD/uzA0eMRS9xANA8/oW/uxs/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tP/veuTYv5OUFdHYBl4WaFR3QFKmRRqQU/rJovP3GVk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CFviXmnyedP3zGvoqE+DRSQZu7CwKalTIie/F1ac1iSQAXTu6h1+djsyw3p/hrLBaODGn9VJirdnnFEo22P/yQ+PGravXZF91Qnt1w50OuTLvgzqfN20bOnKAMT5wZxvShjkYI33wL0rKsqE0TTo+oanVnJZMs/tGEpTPGXomutFD/Ii3pNIUd2x77ipwhm/pxYZcx4yfqRcycBbP3TK1M40BmZlDQi0vtA9GriArK2nEQprRJIk4Ei72j53v/EAd8d6N2syrlal6xbAETAtb8rMrHNzbE/u2Jr0URumXt0TUlwRDhfGLnrzBy63QuUhJ51aeeOboAI3w933bgafQFm1LAz6tT+DtKLaxQkH16BX5tXyL1Q40ytVwP/rFEfw8U/fVutsy0pZg7EjJ+7fevkGoWpZDasW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tP6vBDJxnV1LeRJ+z37m/x5cjWKpT5wjDXqymB5xzDg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iTPJY2gj+QR6NrFDR3VwbvlhjJqMggmufjHQCsHBoMgv7TVW5+mU0CNmEsb6S7rOZwTDo3zjoTCk9bytPM4lh06Ql07clur2JnA5uMyvnFlwPm2/VrwKoMKiNzZg6aRFXUcjc0gN+EEqkVadipO4Bg8RPXc+3tGHZqKBznqAbYIh7CuBoa50eMB0GaMAf1T0Y6rLNuIGjADiFFcWmEub3gRW90419wUXFYaA/jm02wDqzF1sRvM/RlYQJoQVoJJ2NsbSF8G2PLydW8Iyt/vSZfwjDBcpxl50s9ceBYUc8W2BwoPMeWeKImcpjmOW0oBkuA59HK5R7OkqjRQxeBxu7G5trZjmitIXN4HrZvzR1LSt8vAeUBdLj09DvWJVX+fPfOAIful5ZEmr4KpcCttCIEPtLlPqAiuf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tPXwbTttACym0XyslJHcjQk2OTYmN1az8FLsW9ypTEg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uOgrT1ae858ypBplphORVVIg5exsO1GHAl/gqQKvkB9ZLRHcT+VWDqR41W13CE4FI+M+1MqdXKRRSJXXIpNRCLz/Pn+/HlVfruASp9Zi6rDHiCxNxo2j7DmweKFsqb0C5H8S8tmHuxIFRq5QIWzcxTRcXgZoHhd33M6c/G+rwFsqkCXg+YgdR63YlPgG+87BeAHEF7c5x8p6/y0fpJSta+U/vQt1xQgVzWES5gSjrcmCO9V6xG/02qkTzJNeCjvrqSswuXpQ5Fz9mOaSqfhNXi2obMxY8uSzPGioiEbeTnMM1oVATzBBDeoe5s9jBIeIQDxrN+uCPPi9Ul0krKFAlO42BQuPPdh/LtWoCILeoMtbG0rwV6xK2GKiWgjKMDqsXfhPYcdo4HV7+wgEjk2i5lYju2M/XMQn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tQ617eHiVzLFhKVq/A8k1gzwqZy2xzjPbLSDErXtuKU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hk5G+HQa89x+YHjGcgNZk36fbMAw8YVLy1dKYTb8Z1SNqqKQCrGXr314hL6NhTsOfq1H+FPLHYUfOdcKLRE49dy5wfzJl/E8Frt4Ovg6c4DdCFmrrZJ57zIocGGebXqk4rtEW8VT5u544vF/6HIZyJXoLz/munqZVTezZ28/2AqtPGzGIZpJHIlAXnbbjzkTChzsgb8BKg8aeilk6nU7s+k9bvDyX5X0xQcQsDdNR8E0BHGWlHe6bSpFHH76vKXXp9l0Yolm3YuOorIzx0EoTkDWm957GMQ88D6KF4+5Xufxc7LEjdrbr9xnFPox3dBBVDINadbXO73pxxzM+qWMsEO4A4sMm5eLa73JFY5n6On1NL4s4y/gI+1pFHqOShlsq+8yAw/HcMIedbCUlpQkx3lVKY9ThBL2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tQE3oIxdmMPA/Pval9z8chsgtoSZu9tEFsz2q7BakEI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RhaUwf1EU8LAEWTpLvSEC4ytCBZtzmSIieW0HljJEYJQK4HtJ+AvvYPI60G+ew2NLFCWnA0FEuDXpQYtjUOH934koaLOxoxKIyVNIzYpqiVMv6envR9cVyhuS9/3AdtYBw/ETzYvY4JQHnlqn81uXd/BYVwq5IAKupXMh7OsjRuz9MR+78jWk3PeOGcuyhy+635GQAisFfBHVmemRqSbgIeZH9t/+clqX+h7W3302bCJyZfKaxBxfAiG97D8fdAo4vD69h+COy9j4BRaSRS1/FH/EOjsFbzgricTACkx1nTTQ4vr1lO96YeY50PLt8Vggaglg7FaMXnp9GCqbM1wOL3jP7gbOemiCjtrjXY/8LDTowSDbZYRJy8XlkLXL/mJaQCC+C5UjCBXwAdClJOTz1SJEjkgyElg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tRztY/VVIMNWNYTy2qcsMyrqUFz6Iadlhjdw2DBtSuc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cNmyU39/VEwWWiij2haGsdzkE+ODyQOa8kEED9bFjRJys3DS7NW6Aycp74voSX3Ihp0w2TVPYFr1gz8mga4u3k1M4YUjqhbZF6x6RQjWnfjCx6re3qxleMdD4yecZYqwQeB3XIHTVP/hnPZwM9YTt5xvSCjT+sGmmWDg5waFrx2sxiiIEM+G7Y3n6gbbZi8OGtZ7YtDFuzw7mj2NivKdBJKg5tk88RCihqMpj4fxyyYCqXBxFvpDdGiCW+og8GsENs0W0Bnu+cawjYo73bU7MfkSLrY7pqH8ePOTv6NQw+rRPnZ6dPF+fWgi12fmn3wT9qCJCao2/bsxQlYLKH5RhGd9RX7XQpqQj8NaLQtuQm5lXtvUF/uDKGhFoh071bPYrIaZn5h0iPqpYFwgcATbBMjb9+J7NJVe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tSnExADGTEWy5w5yx8ihJvtTIElASG8u75702vJCyPE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UN+unmHQ+dsC0l1N/XyMhefvdkijEVQoWnVB/tWgSj0d9HrVaEiNZxaRxGaBfzyojSLPBlM3HP+xlpL3LRWkRJd43PCYsUhdD82IPVWsznV4HPUjFZtli0Y2rHej35C+XslCl+NX8A6SH2Coo+mNN/QBfwiX2je65mfxpoL1JzhVgO1Rt8WSHBSGARekMzjqXopvDp1dcBzYW934Dz2ptqPKtwQY4pO+QWz7GBzRc4cryEpz3DPpXskff2kIARrd0a/LW7c+D01hZEhrZAbgf+UL5a1HSCsB8U0tJ2JZhMIMJroRYSji48ZhX97jEtrnoACBlZZ6KBSX3JRurhLMmoFnPzem7Q4zTrddHdE5+H1gXm49k7vcX1kc7tEzQ0Y4bpgozRw7rb54FHomWPkzT6iIvHKCRF8G", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tW3NIjMhUQPp0B9fxSiGa7fkxBIdQXMrEocMjWzSiNU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "caje+czcO2vVA1qHInnhpZddItFRs8G/rV8A85zGUrQL3YVAuHFCwLWD+41pnLaA7VpNKXwpvh3QRmweqT7ksqmKjESB6+eheI0w50pH/s/wCnjBl3LjK0WBDNwDIYJaLcWoA8zMPwu9skDeIBkEJG6659/ViIxOM6NwYds6waV8YMPbJEqClLYIUvIZXlWZcqnv18Vb7LjhdyMH9SF74HnB5srt29Q2PTz6GZm9NTHQj2FJ+MgDXC0Tj30fPd0ay65yRAM/bjs/oN7NZ9vgwBSeolNYhkMqlBPbvsQh0wtZpyLZQ5z9qdpfZIEt3/1QhnDmVYJ2t0nipCY7rYx+mAASS8uepeo8bzW6/8f+Ae5XuhO9Oa4/8kmJ/amqX7xPIOUDW6nYZ8+2BgRZq2UCPYU1zhtlvYMJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tZkwV2J66jQq9wUeL6drvRYFbXJEIIlmZvuoHdSz4Ig", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Oiw2o0uVWSoGC5dMbGceVr8xAO4YU82SRQIPhOO0eaWJhbndJ6moD7SECUccLZXkL2upW5k9sFR0tqtiu3MQP2AODsTGzsNtgX/rr6XOFCDHySyKALRS+0y7lYONwrUL9mS5WqyrJuULJi/Jqp5I60N55AIIOUvX3tlGKFIAHlvH1V8vQBF17QNadz6ixii2gzEGGuLZAmjbEBdJxPDUa41ISx+4RSov/ov45ZO76R0X3qcJPWYhO1khDXEhlzy4OA79mN8Sb1npmMNYaHP+8NSV4bvc/1nHg4uq/GBrmhsFZIhDZ50OhA6RD1WxikrK2ThFjQeciqGt46BG8+nZOIe0GBbywlkSQnHNdGZb7dLYbncxjBsLDuorNyy7PUxZCLuLPw8EF6JYeBczq1xVLew/ltFmo6zM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tbroMz+SuRDKGVjret0H3BPxyBSWBrRArtQ9uEAmarA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PuJmKZapiJys0FQuOu6h+pFe/Sb4VlVYCaRMbtwMGuxpWd5e/oVV73hu9lZ1qAd225+vBV93vZg9LDC0+gbC5uyZuzV7FA0V8gKT1A0UPmL8C2LtNE8JMo4qWrqVAcEMEjLNYNWja3nHZTQglK/8jGNfRp0ih9ClGNz4f+F8u1oAk13zAmsicQvDCMNeoRaD1nYlbkbZafLAmqmc3qEkD4MV0fB5retYy7rYmbqg0cmSUMhuxmMLpdgtAy3mdYj3r11LlV4MOVvTWduerrtx4ieNWP3y6Ew5aQ2PH/EhYgYQl00qcrDONJrlgOTUzI/1xrkqsGgg7ibK1W1ta3LkrXm5RiKcd/rl4XG7GJLeFKKgJMZEeuv6oOlbFiGpz3fdpKMaClD4iBL2GKyarJt5bXqwC+gatB19", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tczirhfOSFD8d/e5t1pTq6PQTgoosK2WCJB70iD13qQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "euQeQG4+kEjs+i+qCoy6tpUsm8KM5xre3YvVsVcPZl+3nwmr1/Wq2ffxMzpd8onwohJ+OVU3tHhqOnFFuoqtYpFC0FKQaevkWZ+kuAP4M1gw2ETTSVVxnfVPsX7gZeLNWp4OQD9vUSmRLGBuamDDcPJ+92OSjXSIlvGXeqUSzurnMpD7tlcGi7MqueJqtC7yF/tpF/OFXOYeB2jQBeAeJWhEzqTMW+WmIMBoHXKU0ReMPKQ/Ml67eKN3sH5w1zO486h3gC2ttIqrC9x/E3q0OBFsat9JgVm41lwyVz/97aFYbXYIXu55sLcHiv6w821B/lvYJALV5Tp/WWtggqCEeslfdNDLLSVuVvEa4be+hnnoyxaqTDqdiWoMy47pATPf2DbfI603Uw9WCT4y8kQRTnofCGoboq3a", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tdyM5/axiFAy3b8GucYiNfrsiRQ3m063+PLGJinADJA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kwaDa3Gy8ADXA1iikc8MgYMKn2m2KeE33pmeZssbmP4eLTF7OZubJsb7PJYDxEyKa5lrAQSkbjiZBFdlxniQ+HT6qVFvBUIyCEqxa8na2kpmvt79FeH2mZxMOUDTeczxoxI1bq2EAaAJc1IMkjRTw8LKVL9Z7Fr4eiTCquoYQ//TrYhPT3Bz9pCw+mY260adgDVrAlYsl/vUD3vSUNOvXYbAeuhf5LUICAfqnuiAKngauCbv0VeUQA8R1lTj+5uhGpfuAGmXmKo2U6zZEafG/7c7GMQqc1J1GBaCy0cgGr+cHAIdpXp7rpJzEJ0uax8+qsMHabcFNpqyxxzMkuL83D6ouzReFlSvOnsDFqZzDRPdOp4iAAwUNo+7oRu6viCk1W4cLnUvq+mvEcKUrRJ8bY73XRq5S0ud", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tf/vU5WBiCsD8sp2T15IyqhHTl6oS/E1/IbPKNHgumc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gkZPvYv7cGtRj65hyag39zj/1ufIoK6APVTI4arRi3sCx6ZK7BRwIIR2ZO758pqaxhympDERk2mZkAUVGrC33hAK7vmJxNikqB3MoeJAY4HVM5kKVuQGQFwyJ59cAgtrREBeZwj+4L8MnzAJHd3M3RmcCo3P73vB5ccAQ5gVCpQXUoLpserf2tyVUfVeEG05d2QKtLaKobO2jkfZGto+ps/K03DDjaMbwkNWoP6qGO3QTgR2TtoArtM3zR6GiyX8gShnEGbVO3M3py89lsD8oPh/dxCzQIaw958Fxt2zAWzg2X/Sjed0HJk4msKeFVmIn1oS0Ig74OJc/ChSuKKGiWnbQH5scSmG/Mip1pzH3c+IBL5ESbbi4K0A+dXh+wt9Rm4cpbmORUgb6GSaTBG/Bb6VXklP9pDs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tgkquRgZOYzkdkVVMyFacQkNboXYblqNzs+bMaTKqEo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tQCBtIALy+RPJjMVJPqJpb6fi0pP0HPmczcUgk9S7BdASuQDTWzVHXghPz7oL5cmKuC9Xx484z44tNaiLQgzuV+XtJMmbEfhaX1FoFR7Je4YlNZFb/hRO2nxVz34n1LcLdB21T54Z/QO/EtSOhTGuxb9gmnTlqHb1wWFXlOFF9uTbFwGIQfHLE3/7poWYszU9oRY+LLgIOBHYDbmBjNzlnmuuuXYFs/GlFZ5ZSDO/H0uuflhddzi58sjfqZkdL7/tex1SHJqmKEIc5wf6TKCQTKoPBS2g21kkYOH5eJWibLgW3rN7p1El9I0BHxY2Oup3s2hF3D755wUzqiEdksAeMT6DI2c+14/3lRI14jvLGSiYW4F7wzlgn31qPgdJ2Jui1+FExIsxlySuMSfwLnk1hXexCgPJO8O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tigQhRKh9PUMpUJn62ULXrSUvdUHv/dUGp/EPSKSSGg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+y/X+BKF1SETwKH+BEW2nx3H1X4LuY6XP1+XYasQsuOMb39AM3KABC/iifhdyCPHtn1BX5OrXisgIcOOLApBBkSLSADiCy7zQOV5B7JAYVjAajgRfzsenxvGAjTGWhN142oc7XZynC4RMvbxzHRYsDM9QTsXnLqCHrNwccmeKhz2Km9Dpl8nYP34UTZgsVFiIwhk3GHc5+lLFmtqHoUgyMa2+XHXS8MKd3A9hv3Ts0VAHY6yPt/qG4jgEZ1aliTaERiNDJg6fR1zKnxEZL3/yKPNMzVIHp9lYSwcxWOLs6ZLRliCh0vNoC2i23ZYaCVwl8cUHAEhL/jQ2D9Li2yC+mPfNKUysSLpMZ/b3dkjVdSTHBAMeGJpsTFN3Oyd/mDS/gvuCEIQDnf+229IyZq7nsSQJ5OKpd8k", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tjH4fZi7B/0ud2LvWvGr1Mub+ISYDk4+vGyUGNIHXhg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "x8FqilEzIuECaHUo7aVcGO97xF/vPXywnpnYsulXP6SwC45WupOvVbOycYhpg1fBVzfb4BfRytX15ZIb0C9yAx7B9owyqxFZTCSvqBtVKs2mte4rs3IfMuBbhlFZqHtuFTGInbFn9Ryz0vP7VW4Wy58X7a9clj70dKPUsc7QN1h8SzoFHRQEzIRkKEkLpX8KQN3ct3vxGObDntRvF8NI7Dw4i6IF8HT7LtWhWzBnYcYQB7BBUokX7XSrVsLRQgofCPNtZb0SgNKQaB+xRKaFCKAiHs2oLfMpeV/51pu+ipmJB8w37DUrb65azllCgbzYDp1wrb823Sk6nyChcNlPNtHVcP7Q9w6pObyAKbP/6cb6nAE8B2a3gvWsZRpXZbEgseVfMlDW5bv7a/0F4WoqK2JfFpjwY02Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tk8B4R5YtppmzAMQxHhwbR8dei+kBwFOzWbNv08nQY4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oKpTa463My4Ib6JXCQ9AyQPC4Xi8lFr4cnm49VnAH+kV2IehWMTGqq0HH81aOz0JkP1wQdOPrOuB1haTGTcAb2j4DSfkUkfi+Ivxeg2Lx/0TQjQkqoQw8jRr/HVxMW1jtUQLavt7+K1N0ojRuCRCPbwcChJbTqx7CGjAzsF17YrlG04CokDYBO6v9B6ZJQMfqzDedkQh9DUGxS5a346dG2P7gStbVkF5NKfLAC8qdEEL8MOyxIyGugx/7c2vZiuPHHun+rX8Y9mvctdkUbDa8RmHpaMt1hBIZ6DAv3kJnBX/nEdC9z8TCoftZV7WgWmanZM9RA6J75LVJo7dVBh0dUDpsAx6oK1NSnjerfJimnW5IyUNHCEQPYF0Y6s66Vdmp8F8KlAqEaqFEdvr8rL9JbfpuwYc54Dm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tlnjMvIqbfz3sWjesDplTBOEYWlue2bzbZbfEy95LsE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ftQh3P89VqgYPsYrLh8OLERfKdvM1zg14llLdZFgvS9NKRLlYLAsPVS2Wl0vgrjd1i/8aUh1WaafPXgbPzTl7pUWNTpQPMmpLlh5S5bF8QeBFTKtyHf91g7xJsJ5+mwmYrHhDIbIE++54uSyi1cYhOmjbNOf71c3z01FPIY4yG6ri3ypyWZP/CNuojfpUeDaMCr8omDy2IDDnI58hwmapQwG8QubmOqNytV/nfKaFtzXfQkYjDFfYuEHTuTI5Ic6TBBBuOabil7SN8rj/AFv5vG9ZKxKBbn+cegTWNgFb5R4capvEyBFhs+DiaFZSZpNCVYzbFggkUy+zTnyu7xcItqrjcyjdItIN/BwCEwTP0OqzUQTeplx6+BpgVS2ACGJhl23iIi9VL+tcPEbmG25gOy8c+ndsvLR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tpDJR5/JT780ULU8vngk+hWhI28X8PPejGfdnFz8tO0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ouy8IvTc36z2ziWGr2HCheE7lP9MeC7nd1UeispdFY0Q0y8RE4cMVX/FDPD8qB3uSQk6/T+YjvXgV4/+8MOfcH8SfsPnVFiapfmL6IP0W+y6Ag7ec4k5mftzYSFWEPcdEZ8wgiWC8KjklgXztaKCHRkPaQngcmfEbAnPJP5hQ/ZAybrhzP5IiOB5o+PKIu+XyACrFqgz/OPLjcOd2waZdcU0Xn0I2h/5KlYSg8BFJQ9338vLjekN4q9Qg49cxSgUxQjj9dm9L0NkXRQFCi+1498DtMkGQVMs2oFyoxNGYQN726dgau/88EvjxnIdqR3H2nPLjy0yK1/mzGo8Gk6DevdAvuGRmeqVuB6migF1Dq1p8eQ7Qgw7iALJdAsBZLnHf9C1K4Q92fPwvYumXHfaQIKW6C9Cg+AR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tpE7tGKzM25ktXncqEFsfRzirMP/5kzhuxhnSvxits4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kZ0qe/0gneHJInYWBTkaU6U1o0ll+xxbsLsbTn7fLin6soWULgIhkuKshxx5pd2e1AFrHewz9Obm2PE//+it1pPRvCWj/RPklqIGVXP/zkmvAG6XAkxcZ4LD3G1buX7vg8Zpwzqk/z/9KAROv6VjUxUOmU0C1uO6f7tHaeCmvX3CbKwun33qj0WStuUYARRUCnMTPqW4Z85wMLHEl8n2LtYbM5TzpdhpIklsqvDXQ8FG7szlZNOFj4RxHnU4cN+1cSyP0oq3Irtkze2z3PBFGjyufZtFZXirZwuRXZs6N24tSQp2KQAN+VV6h21o2H9Vdx7/IL0CcmQTcka9Yj8rOX0K2jBqtwBfiSAO1VL5YdXNNHdxa352FuasenRGLBzLMrs2FQQsf0hJlBMoY4atPGyi4vJJHsDR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tqfdJ/evNEGW0+q/7GeLgz/hvd0ldvTuhhBxFgE5fcA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yeb2XO7tNEgvYdDDeKfQ/KfU/oCS6i/MyIduvGUlyqrLJv/lxw6Aox4SxV2RDrV/AFs9ek0UclYPCiJT+YUtbgcGlYnkWM186rXR/v1lh2deOYJ0B0ADD1ssZxs8EhLqqh7UUYIrewA4Gk2noAEXoJY8h6BXxIsNZG8Rv4yKgiy7ivdWzjltR0PDgRC+S29H6hgsBvyLn5IP7pEFuvhh2v/xpkhL5EIFqDeC17clE3kGx25DAXN/88qNiZbq0s4aBrWK5NureTAgFkJ9LB1UVvXREnLHBLCB7P3cjl8M5bT/RZA1WgZ7PvPI8IN7ohNxEyNe/qbl9aCiIP8dMuih+MLBudhk+31O6RxyF1pjfcobd1h2zUt4OCmlEMnKPaYIhw7VpOQeonIYb6po2Is4ESdp3PIfPgm/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tsR6UxdhHfsen1HRzKLHCob8xr3i7CdT3nKiTSpgQ0I", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UKmssindco/f6wk+7m7Mwfx4iGXdn9UNSKejTCMjjS0Jrga5dJ0ie+SI7Xn0hQrxryz83IU6ALbJMj6N8GyknMzOdwOpCZ/mHQG845nx9I4xsfE5OFmzcTMojIXvrf856HUlUxC3OL8XHyEtRg5DrWkWymL4r7BEtCdGp1GWFJdqIy0KVTHKsIaxgUNCUoxhGEbRa/411L1tz6nh0YZ6ePcGbwzEOl7+6eErhSC8lkSSc2abQh+wkEK2iMLSwdlKE8wCCWh9n34Rp7lVvPqjlaY7EVVxDYRcxBemA2oOLGM0vhfgaN0WGYMvYZW2OsguUxOmRfsRmiV1UurXmSizWlV3wV+UYFoSRfP3JUfQ3BEq7ngG8uvXX4BZjiGY0mF+oQP243x4sG/CDluwB224rzeLQfoeO5zv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tswbUk4mdHOjZssLPQuFcQei5Bf7dmidJfgYpBKjZmA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gGWqN+5BCPVk+D29olELAzzZvimI5rGF8Sqj11JTarl4GiArwSWrhIpGaGqDdgYw4zdwR8X99IcPyJUO3cD5RaNXB123SfGcBgJYk3ek7vJqDToBEfnjUgzDp0gma7cmNu+f/EXiHh7QhM9pIFkq+VzJIuHKCRJfMqCdAgDzvHRPLBFKIFSxYMlUK8ntV3VssBrCYvz7ZLPaJmQBGoQX3awSUpRLDOAVY/eqymbPt1e/nMMa1okIBu/v8R0HnHqrhS1PO0eIpjpCystFWdA+rtc1zruLdb7R339EODTHnHz/OENOhiTR78WRYSYkzLfg1yiWgOSXvhwYqf2DG3zz4zqu7VYswqznU3CWMHXj/yHc7TnPMeGjZC3ZiGKgoGWC9/fwP6Rtak9wsNWsSVX7Vt8jn3VTB2P7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ttC7L/LmmA+3X4A7thISe41vX6YkveZVe2Cr2tkvcyc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gIYy/RiJdmcQuPtaPDxe15sGhGoj+DSETG7z5/lbiyH1JWoh70SqiGDhi+8CP13AvdlBw1ocb0Brsee1TdRajpT00V2lkbURk9DY+62aXw12lDOJAMOcr+VDun3DwkLY0glI2+FFqj7/Hd/1y95X+8XbMBxXhGKCrWClcAAFi4JrFjZ9dxBHsUMRnMQ2aToDvhkiAeWJLHZk3YlcDfrBPRhfoWJUdeCRLqWCEojxiD55tXY/bvnjlKs6Ki5on9kjtLqNgnT1vv32A9SqSE6rv0LOkRwHUpBEAenaNuUOPqtnvs0ghDvXMN0HN9fSleTYljrsZNmdkNle8aLHlbVjOYDzzS4W6ude0BmVZdCU9nKIvTkIEOLM2H4EJsjegErFClA13iSZPJix43lZducRm5LhrVDxVEnv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tuDZzsnwib0uMvFnd6CyBb21d+z7EBE1jEISZzIeBEE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m5fvUIho3+tsGU0DzBzi7cCDN2b1hZpxnqtbfSDEoYKxtxqVN7RxxSHzyR7a6MZpVSM92j9hAB8BtjdPbjPmUTbyzbOtc5hAQtpgaoDoZuj2bbE1PbRjFhtxlNAIFJ1ZpC/FwGEK1NtH78INwQh3os8DgImrtwXuBASsEF9xyabwYPESJKzt6nj39Z0NtGCPEE9FYwUk4sVFi9wABtoRyFSFrdwunxD1Mtg2DR/ArU6wGL9JTP+Gl0Zssfl67bQh9OHfkOxSqEwNzkLoQT1I9zBn/5i5DEb6NELxPeCAbktZd2RLBUoFAL7CptOoUW8X/TrX0QCrQNBwjb60KBK5mZ10ZGvRR0E9EyhZyNwf3R1M42OttXbH/6aoD1JMjhELSjSO35jASUMhBvkajZjrV6fd5ofMmc42", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tubp6eb9TBZchgF7ues3vrAq2dCGiAhi9A1S1ULwhy4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eJqd2jucjhyAJeM7ot+O0u2wr7Lvvb+zTQHZ9xov+35bRZXE+C4n6tf4qSBrEpcgSML9PJchuj23hmOX2fAZsDnA9fpCDT5peygClrvksqXrPodbVMGpiemtrOqjtF324xZqTQdie3S8JbBcSkjaTneBLzTDQqxmP99Uw8Bcper0ro1zID3a0NgxJwxIt1++Y0jcC0zoHWtE2xI9WmOCGZuPFVxbU+Wwk4ZQhy0M/Ydj8k1Nr7kcaC5WRmc+g7blyA6Id/dNpGSWBAvTV26NqyRkl5AhTtaByVGfFCVDEGFWmJzFCKRZccy7tAkQtoqN2F2RqorVcazTuUeCr3Bf7VqVzX22qdHGY8yVhCMuf5koA3oUXbSdw/J0O+vPeyV+nFPWouDZBhI045lk9BGA2EmC50kYxcSN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tw+k+3BbGulCLTbqoS8YNp3N3m5BBjHde61sbO2F7P0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1I4IArkAUrx1bC3kN6Zq+BgNtuc2Be/B/tqHtUXuyeHd+KHwEQLffL42JfnaplfjWpFrKezFjjj/HDObzBR6Sqx423/rD4dW1EAMmHOslclTMY4oGNGWnTAUqibA3PmaFjHWiWW8an5au5CH6QtOYdS6pySBfD10MadMgeXxQjB1ArcwLtP/4uugL0khU/EbwkINtnYoCGTCysRq40HBlu92n5elJ1MegrVNCjV0ae+fw4dg4znL3BzfHYChogAISfnqMxI+YpyiIdwnQnmtBEg3I3+fXJbvsByNM6cvR7v6jXDdR0Z2NmW3UbmCA3D9FuDehj0+roGMAr1elsmvjicn1Qoz3wTKO59DDFp6ZYG6U4jtbWrpCkLmoQynP1YLWNWVhY0jASij4FKpjD1fDpFw79qTJem3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "twHA4ydd7vDHRM4re1l9nwBS5SMGAzq/rPlGJsBKXgI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AU+3pdmjV/A7D3/sMzRUqtw95cY8FsKt7QOWBEGNSMe7icvsMxS3M7YBrPPdQDIhJkANpSsSXWYKSqQDKHC3b60zesPNpru6YYY6iSf8Ib9mshHAt48JGq2PYpEtIageTrW3VXxe9+ZBpb/XMRbzZZr5iV1HTlFwj67aoqIYs8245FKAYwLWewh7gqJzljMFjZ5jPZTEeMotJS8eRTdPH0vdkBqUd3zDlFlqzplMf/tnyJNxgG0EWZNMPA6DesWqqCKeDy8g8VGeO6QfNBfeO5ZdciVqHZxBb2Rr0K4PmYXPmF5XUEVEfkLwNtxN/AOuq2Fe3anwLgO2XlY7XYTqoaq0Y/TJvXchkLpa5Jk6bWkQeQhzxR/ijF5ix59gEa3nLutco7iC8a9iAYNDY+Bu/Oh6a946OGAj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tx+oG9n+ldcURW+idliu6Vi6sc+dP1Dx9kWRSjbgOv4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "K2wV3htgPS2IGz4ixFUl1LseEYMBbjEwGZuS0D8t1eE8LCPsQO47gSfM2NPppkh0iBJPZHYoBzLiIKq5HvM4pxonpKqaEbWWetAyVKIEQpYjS7vX4/SAw8DlR2GNb5gubFW4Dv8V3RM3AGkHQSiUjponM+aDERopOE2PtNfX55X6z4qNXOYTjZDLnSyr6AMtPJ3dCKNKM1v2k0kASlPxkxkFNOg9Xzo6cHeRn+3DW0M60t/IClQT5iCKf1r05XHzpW+FreR06wI5ZlFq8Sif8SZiiVQaYp7eDDpin7PZfDrJ09URJUzrFyMuyu7kIYIS2ilaXPkn9wpE7mOl2VwH1/GQ4kgkfw2e7EGH78Hk3KkgU7CyQzlIKea9lh/a9ryBB9SUsSVimKWd+NpCagrduelRW8lK6NfR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tyxFrNgUAYz5j322MfRbL2yCIx5PGZGw/yKPwpQzix0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PAtSl1R+bJwXZrCH4gmYG/BA9Tb1P7yc87zSDqIEC1Iwl36HOQ3zUWAIAizDmhmYZ8IU3zk5v/uFTE7BaA8gA+M19jxEKXf5sgQsdW3GSNvyXTwldWwTf+j07KQzk2R4MW6a7tXfx0r+UMSNMAH6fLEspkg4k299pH0PBDKqgtdRdq8z1n4Wit+SGVyjkwpzsBsM69DMVEoH3NWndikG3NOpkQkWuiQ5opQ8/snWD+88pvNIl845ZDB2XxsGh1GWG3W1nLEM0JEKnSWXuJEovMbVWAjtT2O8eJX5lZd/9SwNGQeFziN7zBLR0lH5qzAbqq6RorIpu6I75/AtoJxVkA+h1nfW5ajdjnOV+AsP4Wf+AEKO/DCko/lFxZCwg9JTagUVf6T04xqDqKg/Q6YCTqrROb3Cqzu/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tzAtKfZ5ylGYsKVVsta2GqhzqOLNGESesOCqGLUiH0Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+IDzTzqhjoEJwp6fQO7becGQYD5/F/+oQlCfnEwnox4V71YZTbRq3NkGc8faAMsFqOJjX8V654W1P4dEEVzFsbc7YMycNzaFU6GQQQz30w5iuXRQatCn89d/IZsq3UhV2vXMVRJb0Cx3+2NGCPy3Dkk6HEvTf1pae8XW2xkyGlDJk0b5l6qWCl1RYBB+lNHgKlEAFrucXTWxwOs/RQ29zaZmbObjzLE7ncRTtoF54OzDWlApMz9NUgisYbZdrBV5UBuk9FCHzuN3OJXw5cb6vVJ8zDWPHb45Pdw0yy76gsyB0Mlj8ntAeVdeeSJkK9gF/tPKZahXJcqcB2aP2mhj1nTG2AbZTLfkQKJbxtM1cWn0QhuI7gSVVY4ueNWLoGMywulUb4Ts+XycKLcWMKnFYTq1OAtRdO6/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "tzb4cUmaEln67RBB8EoDl/sEs/FPMO48Ev0PyBiFfEI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Z+0hy9GqljrIVV5gTNXC8pRqmKB7sJfABPJqcCQFldji8K6YWkGkt0Jtl6QMNl+dOaPgCNOmlL27UGL4bGSp2MS71lzJYKR3km80dqm37KfbPGt4ox+9f0cK81aOV53Z3q8YKKIanl+gFdigmO7nqb0FdKO/R6/PXGEQCtxwTkIypVRp5NIQaBZvXJbKxISPaYbSDAXixHuVZfCi1TduN2UypXL2VkWJNaxQmYNAi0ZcKj0N5x+bRZb/2JdbDgnlLJSdB+yY/T9vXUk6BNO/lIFuXdYh9diLhq5KfT1Nln2tiJ7pjm/xrplQnYaw7J2WD0XgBPKWZousFr3+dbMnrg86XhvSl/9q4kqs7PTW/Y62sAWlgpxhIiSn56fscKJFfjZ2egkTZXEt4B/Cd3AXtUw6ThK8rjTJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "u/VY+YHtozrrKkldlQTII0Q7yjXHNE4xe/yFkPqepPA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AEGWKldeMkOaW343STPjYCPXDJzgsd8xzR7wnwdXgdX93JCvHv5CkDED22W+Rf/xPFU0oEJyuEzwdMDIG3rocaVHSmrpQHzKcRVawg98J4D0YeF4Nk7N19R0TYK2limlY0htCMO6AyDHS7NvCcm0gp0E5ngmbnuxnVP/NHQW2jPu+r0/IY5Y8hChaeiHk4A5b5ZG6gjybjDJYyPuFe7mz32m6A3jn13dg6aqFRdBkZwwqHJZPQ1EqgtIzd7V4humi8KqaBpwXwlNYMCvPlmXceUq5kjCkvaeC1J68b2mKVB9oOboVXLqLpZSRvEHtYMffumNzCuShcn6XXlJlELk8AqXgXpQkCNP1vPm3fdEhKVKyDM+6GWAjgo/cfvuFjqEUGpyxKhpoLNlZKFYcK6TGIs5sPTIF2qx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "u09ltKkaL/acq6F+p3pqON7m4kx/tLh+tSgt4bQCD38", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BAcJLrXiv98HRwcNveFWqiEQSzG3cy+hySVofVdUh/DfXQ1n556+tjZiQnnPuIBLjQJ/hAdWUS7cxfuiPxIH8o30MwEYsBxlozvlWAqitvgPMAuzjmQCkuYWccqpbt5PTfLjBwjhH+nVgztJfsag8Gej8moSUfpZvrlmwa1fvXIgNEDh9Tq93OHyyFF6oTKJ/Ri9XIDnsF2upi70bO3UEzt5Qnv441K61fft+mzvDqlIkP23JOQ1Kr8R8LE88oCfM3RausmXAivu19baPnCXffbpRtW2z6GJmbuMO3YWuIxWQJkFBaG92/l5L0AHswG/EZN431iunAnXyVjApkolR9TCU8u5u7b4LG442QhEqz/3SS9ipnbYHJGFSzqACqUNZF0ul+XditBYSebYUL/d3vcBBhyBYA/P", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "u0tpwskZnrwzbTAiyBXXFiY+AzU1Nz1gROpkWfWCWJc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bzCJrEvskLbpS9vzsy5O5oOBft8aAgV7SoA62q3I6pv6lRsv1OgxFD5JD8ipsdL6vcm+hJ91sXkYwn40NeDHGyOTP0+XYcOz+EEm37o7U0ZkRWAlXFjcJYdPT8b3y/tYdb4FaIIwVr6bSZYVBREBY+gbI60tQIY6crkMQ7rO7zQL7Akhknpb3WcN9HVd9I4XoYy7h1Iv7wr/wEs7cyxKoK3ExJU9BK14VMSOlKXMJpzWfZNhW7I22Tgr0c96zuVjPfuEvaD/+DIfgfJmX5tCHEh9y9HeYCpBt4pAT2Z1/sy2dUNjz8MP80zHyrkn6dS+P0gB2evS5ENrbkMBWFoEum1fAb9WaVASCRlsl85J7SZjJJ0XjHwYPjetpJ7d0wbE6+4EOs99ODDDSOYDsL0vSSmbl2N/esol", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "u188w8nkffQNEofCHR+4cvwO2VpLsgcEYhC6zHttYEs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hRy6GLiVGibvsn6JHI+J28XRSFFpBv+NI6k7oturKytMwgQBMMMNk9GD8bMN+fnqZIN78sjdTZkX8mvXPRM1Am7El1oyc8bd/7vQdCKYOXLu6NHu0l5nDUwkV5vinxJjHhT2QZOJj71MWy247d3wDqjvTF2FEzmNagZYZB4l0iI9/cuh9pYp6yY5utk0bG4tMvKzEPdCn82v3Pcxag0FmUS38vBU9LQSw9S2xL/GSqK+6HhRuVyC83hqNEtVsL9g9ihEttFQYlF4CkCPegRwyB+TaIsSRi2K3V7onQBSXP52SxNQ3oJPNFOHTSle05DqH46SuDcjv4LeI7iWWTsTl2KTrrsKh7iVTwSFt23BFGQcQOaVPMPojMPnYRikh8y67vq9iZ0W1E+7gxcYWdjaG8gq8jsY+I/H", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "u1WYkrToayTLdHp/WRIsRxtNMg2XBZc6LpNizf4dHm4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+2gT8+JFFlUpt6XzLSTYIczfGOKL2eflvQaLNUoeVGzmGtqwpagPOrVMff99rm7vT1igEgK+WhL1s85EAr/jKgomUdIbajW2/R8eM9Xbpiz0sBrWcYFe1QlBlmKpiPKv/3rEejVVvcYDPDo1psaEj2Ar9eeQ21J2JDUEbHUwtt9K/2EToUaGYETnYxI21kLSlTHABk5RVrghehNJJJmqsNxQ7YSxzWjyb6kvHkIF374iNKNL8HHXHRKzUXFIQDZhXda7neGWqNcn29cTJyKLFrglbk1CRL0bTxj6D1oIeSukYAnaPdsLpMG5Bb2YCHiSpfwJ4PRZyUNu3sBfugbdjRiv0nO9XRdZAB/i64T2PLTdRlyd+3qrSdrOskOy+hLw/QSFptgKLNYJ+X8SMNAdvm8gDJ94hdxf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "u1mKCgIa1erCbPg+UNGSmIKc/9dTD/UFjzRbFYJR34U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VeFXE7my4L70mgpE379kn9e7r5fq5MuaQAHiwt35w8FWx83hiuk9FO6JSoV2bU/LkbR7514f4nY6CeUvwJQL+arKwiHFTmhE3IThOgaSnHbfQpAEXdUUJ4PgIsmpCZPVuTbGOl1C1zZ6sWHAx8w+v+LgTvdzP6dSOuoq94gVQW4y6aOSCF7N6EZqzqXUkOnxtRTu+BpQRLvavHE9kL3q8XQ+BTyJDysbosjh/Ea6p9gzYFw7RYqapyEGm3c7/Z+S5d+EeEXIf6//079aHrSxWEa8vcr5UoyLk6CpVI3hjqUI03T7QBeL4vbfkIW46IwM5CTouzKWpQcYQIA+tu0B4bNz6rbv8W1GGyasYe9iq88+rZoBc01g8uJFl5DYmgNw3XjE/UKkY9zE3N3M3qMuEG3e5DPRjc7i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "u3TpqSy7ziW2Z1UEPRHDTKC+kpyLEWWgoFPfgJ7JbuY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QaV1N/0ic9nu9r8SYvTgP8B6crL7+ALf1wpipFh4pMJB3a0El5T+1h+j/01JxWOpRaLLgQ6hkmo6N70IF17NV2mSx/RqdqKW2IkQWvYQ2ftE0jKROYxV4nlay3mByZPiGyrNiOYW0PEwirPXn2JV40XBT1AhlVl4tbS8C92vQatWGjODPvAkTaDst+Cvf3y4GXdeBmimuLeY8FSRnrgngruTai0WFdffISwN2FfZDUNumqTE9zXqIDkL4Zbaxq33jA13iwiz6TxkkJ8IaJ0RlfaI6Bqls9dO+Stnhq/3gDofc54dv41h/V/fxusf5b20Rb1Oa4lCBTEb9wFuTbq/uXZFWZvV6+efUF0aHjH8WQZusdZ0ZWYvdgLpAr43OOLa9wjLwAS9JePyUWsSmPOlX+FhVB8eD6DD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "u4a/A8yoE7RGVVMDyKjsMzgEJt5YjVRa5GqmnuZSsyw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zB7aqCj18/0fsjW3cDP4JhIpCIJPCNUMBI1k3NjHm78vndiqmLMeAbteZViWzDJ1SqgosweGpXNzmGzHDl6ibNdI5WL26DAYOJSPsbHoK1+meXM2iGSsLuCMX4lEMkW2Dod3k0N8zlHoRlw6cVJ6RI2WdvzC6R7gWFBn917mWEVEhXVjQ2GvbS3xGumWKg2xd6PP0k7BsIWQWVWq/u2jvqWWPWjIUeK98n5TtVLgETO/a8GEsStNMrDoAH2qH2xUY4VZsmyeV+O4cmlsKZbQe2vjKJkt66YRDjZixPz5KCVEWwSXTzKPlDTkCVgZe2PT43waHB/HY7sj8KgxPILTMR0T7a2sRSetYswzumCQ170jAijVlroxI9dTqt7C2FbBVnEGgxL5sAYl7OX0gLQHtZRrs/LmMyF0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "u4g7CrDMSD194cHbDdEK6vjEiv+EMUOCpyDahlrsCBg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XBWV+crvrTaafxM54y+0jBdsBMMCzsyjFRVGJt32Ue+HGuWbwO+Yrd7F332ca26NU62AgxEBJde6CZhDJ1Xb4NhHP/LKzmqqnOavywgIM8LBAt+7lg/i1J26fuOnKrlDrDHxZN+Y9Q+Kds5Li3T5j1scVv5iV4KBTmev/86xMRPB0rK0CmmEInyaqDdw6qqGIGUsKtvuv1B9RB6CwseF9j0oJwau4g1SAqzlUC20vTqRFk/QgqfbcJNTOIh5VSdgzmWiCHEp1FFmeX9s0xVGnmgbaIcuSRNe1wThkL8psq2tgk4J3ruT+2wCuLx3azoLDhhDbUGvyL4eHENiO0jpVlZQ9zpZ5SIk4DMtooQXKCi9yiZvE3q4hZA7sx12NvAv/wcYxUuwb2bD9HH4JjJBawDi/sFuPpQd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "u7SFzvIroULVFuYBsj+Nr/6OR+umE1hVekbvH+Q91+g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o7rqPFlsIbv+Lxl7n2BXofBOEjujCux1+BxHxiZh2UYiDonJu9/6y6cMP22Gunf8tb+TOhTDpa4m/WYKifNZu02Tv+AXfKg6HmNDJp+wFQkE7Cc9jM4wiNDrLhF5kRw5Y7dC25fH2ankpcrh/PS7u0j6hy2ddzClPjg+u+nCVoW24vuOX5kbAR+pep43jVkXpeSaElCR6SDznwWqH0ux1B2wCA6h1DlWRZ5Aue+BVA9V4ocEkQUDtnp+SQWbzTE5WdfY0l4I5lXe5zEq+Ax7jc8k9rhA/g7Ng4t1kQIh8BsC+7yRNM/bPXZrqu71En8OLprm8xbpleNQi8zt3YB0x1Wf71WhMh1krg0hADWGdXEVaHUKcTDwUuZenSKKgmKQTwv1myh16nNvCi2wxhsKuw8Wiqo0orv5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "u7knhHD/IuSdUqCCsKOs2cQ02WbVmepkYqUP/65YQHY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Fp9qMLZVXcVReONDJTOXA5CKlODJ6RUfAV6r98tzP0vEt/CT4ObBUAUj+7FyvoYxIJXvwHHy2IMEoy2htx9V0yWb60zzJqhgrdRYG/hTnB+aQdnfX55by8BsdOBwWDCW5IOEdQk+CITolI8oh8wB331for1ZL8IxwP3+7iVy0uU+nWHnfH4xpqeWL6i4jU6xjFHSK2db6AzIDgYFur/s7ld3maG8lgnIP20B6Ggd6W9COXHbgw1K1Negxc8e/RT1kE5dbKM6752FCd2/J+C7NopyMw6gJAm4FVgohKju+aWH/54w3TbWvSuAmNuGbfhoeIyN9QIZs8WlV85VULKoxURBTc4NRO/YIn6PCYMhmfMxkZLn5eTgMSR3kQVFerBHyCgUz9unXcrc/SjIHsvBKoKSa/jImqVA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uAckjj5zK5UbFpWzlOcD8Jm1BuaK6bN3SoltlU3BXnQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BeC2mAVhCrXMtK0yhz+Ky+wLxYHnKnP7J7GSo415fipLeKHZmwtcw6Lup8inY2eC0ygpaO+Th9Lus9NbXQySK/kC41c7ttGeTFpc+KRHgClk15NQY/A2cWa0K8Ly760WJJYxu3NBjcSnJQMCuuF8ai0FF7Mh4WPozTUtd7xvWjuMIRDZsXOIkjLh6Fw0ZxkXo7yezZLa22zqxlcrnltuKBgdtjLN+COt6SOkWj2IVoiRSQPOhl+2ggw1y5QwNYWkJxI7V1R9RvygcugfBJGysyiMC+di3JoRXeLT1sGOoosI0rDRE2CywT+ZuPcKchrr/WBW1d3HBbJyZQzHUnWogFNQUcXNNnBL0WJ/OhJmY6J5187aUFSUdbtjSEz1SiLJTBGBSSpINNUdzVrc+Vb4FDZ2hegY5cy4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uBuH93qEnzqlTh/MBYcMxULsznGq8B8efRTgU/fh0xI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HQglWcga6gnDWmWVyzFXFh0FX1G9C86phINFLlexMn99e3n248epOl+GC8LD3eltbkP1dcXI+8JV1RJxQiN1GQRZeTdIO8Eo9OJ/Nko3fXmI5r7bBRWoVhlhDcfTKD7U5XmhXV1jWsNMl4YkVEqfpPXBQZzCgOAkFcj4h+HAKVvLMChxJuREegwBbA9p6iI4ewM2SMqMI5coZ1ByMQSynX10wIUN6Ml56CkUX8Lax8cB7FWkJkQfOJLJQp3TI4i6M4qQ6mR3yGY93Shlg346FP/eHME4Db0k9cM5xkSOJo65ozVry5A4eg0mhey6NVLVnfhA3Drkdcgk+ngOamGZXAm/Q8hi14sqrlCjRaP9L1GMX5BYZotmgKdExTayxG1ZnHCZkkhEDqrtQC9FJgv9Dqzaa8EzQ5P5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uCBqPLFfdHgqrIZM55kfVsp06oSY159vV6R/V7C9a1g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u5cSmb+kBVIaLeE0BpkrF3krq2pTwpjz16RNQ47VOnrAjlDTXU2H405rz8zwkU+ll4PHsMzS26v389xmfspytgZy9httGv4CsoivF+5lJcV2CS8Zz+f9bgV4jrK5CsH6XuS/EWRzkLzDXZyxJPHQ3StMnXT98alYfvcP05t5PY8pJLVYPR9sCLBlxNMd5p5qZ7n+bwIdOOLobs1l+VNTuYDIc3/0vNM1EHe+pUvWfKO9wjM1aw9XxOaq4RzNpjlrOXhIuA5iWdsIyx43smrzzFfqnB7liFNXRPX6ZDTXuQP3JWQBW2BQE68C0lmfVsRh1sbp4IOMN1jy23zCatqGob577TJVGDWgj8+d91wnA7N0WOBqrS0SbimW2NcRgziF5MBIoU1ZEKcG4xPCDBPJ1xN7ygxvrrhc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uDDlcaMMd+GR4opEXaBsb2aSqbwnX3ul0rm6mdV0FyM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jG78XXbUerZ1fw9cxnGIi+bzyqwhJrQiWw7V7M9Tqi0yCKJjqHRDI88615OnfTK3BINT85tHGdrmHkd6taxtd/P7pDEUcxIETXMwcjwMjaqfyaNMr20O3VW8jqg7OIacHn0blephKqYMIKIH99abdgpJPqfkz2zZphW7Rq6ObA9xQn/0EDvmlpK24HFHGpmjzDZNX7C2K70MI1R607pZ83bSxMFYRU61jZvMRcqMnpef1Sb8VqlnmqkPhGcV2ubAD+SHA4gOtZKec6lR4cSx6U75IE5fpA9rScbZU/k6dhE+aU3gi47bKiTNRpbD1jWyrlH6H8BtkLYfzJxYq92In+92UHXxdqTOmr72vuDLQcB2nW7T+QDPk6xP7DgWNIHtN5eTIzqdehtwVzWmHI0nDfN6b++MqvrM", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uF9Qdj1FmVk+UD5JG5YsCvmUsK56oozOAWAgUf7uJuA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Wdr9Rk3fOUalyRjSx1q5FUsgZnS/KyKRaouqcA3NvlWvIOX9c/hcGu4jR52jxdVKh7t7l7ciIe6HnbsAwugS3XE3oRNEN/EdplS3X+SZCIwQc/ZfUusm7bqJanXABOuBUqmWG5L74e7t623JBNuV/amIeY4nXLWDKRKB/8ktDDz0TWu0A21v/IxtAeI8yCAxp8zCJZGyls8X+1jIrM/HjwYbMEhCtyhSU1oJ+iwYL9tZEhp+tUFLqq/OGI4X4dhfwMNE1HWusEgt4Lv/vzRniR3GxrfAcrkbDC0O5vPIZqblaLSowF/YLC90dy4qDRZ0afUQwMikZO+1EHXf8Js4kC87FISnv7KJZH3+hKSPk9Z5Ey2qyypgZoLgqOXTmIUQuR8HQTC/GiEKGfna7nkCV3nUJO9KQWhN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uFKDtjkNGVPkC8KA+P4To5DV7Wn4DfvlGq/VouN6leg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "12kx2WzolOOf+TJYAEtpFrFq1ErzeefNkdISlh/iDwiKYqUKyYM9trYOPOqHjRTLpA1LYyqwXlptFnKv+6V+EiuvpGULO0yjP9tQnh2zOzrTmz+Wi+7LwvNF9sd2cLUXT9eHb9etDFZ6PhhiWy4y35c3Hze6nI/Ldjqp7jWj5ZDkV6kPXLl0pg/UCIu2xOgFtWeOg1Qv4fjrpiZdIS0DcnHvqx9poc6U6Y2g69JjqA5SRTD9FH/+OwUNfApD0NZ8H3kVS55xg7AEOcGcl8URIJvLndtmczfZw4YsInrrMdy2BKJTPCdR44xgExg7Emel6F74GqDqkUnH9npvTnVljuOvfogG2OfQJGqpUli5ZsnE2T3EQAEKDx3t1W6JRO7FbSD28hO2DY9v+PwTKqEoRpJV52Mr7ttZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uGIcF8Pdeg5hbYVhY8K1hrg7UVAogenrkyngEulkwNs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3nr1S4wk2+OiVL3kbT8keRQZgVuKEs8U7r7JlrGM1Iwmw4T8/j8jiziOo6MLaKNw0pOhm92dm9c7aNdcxY6KPwcVCz+c/GtsCNDfoXS4iKVashCCNaLQINRDwxtKeHo2ZHCtTdDr0B401HcuNThhI1oV+i+VVdU4CSkMQ4EXJIBC7nYM1byKPUISRv0QWa+/Xm6sdLLVNpnDKkJjEj0SCJpVZUgVLZsyTZquFXwn2HvvQu2E9kdCWWYBVUCAIu0U3VLFNrrAXWGkYljMrGljhadv0PGTjmt0/rzkgMEj3WIHcvpty6eq9gT5cXxyUQkdHxQpKy6cYD3Ge34fzsfOBKf4+RAghi62ZkAEdpuS9fHD9pHr4oG+sC4AQrU9r545BxmJmUaLhFwTojb0HTKqQfcjNKeYNuxB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uHaLbldaoyTDVsto0KBmxHp2rlHsZo2AHEGYTeLraP0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jbFVjbLkWlp0bdogUUuYHZecS/J9BfqmVS+8XaZSqx9+6nG0Ele8ZTibxQYUReJRFwj81ph1uE/XlOs4CHaH5VP3mMYdUvaz6S96eabDLaPQa/Z98WZz2T2WYYcpjSyRnEcfytELwI/F2PRS+Ei219kXGVehGGn1QOWb7bfbLyS6G9kwg6QKNuGafTaX9+WBt7oGqwu4k9RjTxFFmYKYuhvHyLLAegGSJWs1nzKNcuWs1fNqu0NKrBHQrCafj+T4Ko+sU1h6ThfJYRBfMgCsRsCo7wfdjIQ8bWGqSDsen0tlimh3OEeVnDG7JHbAmlCJZAGZ68MOhRnp2fHvhjoclQEUJIiGeHjd5PK69jeKKk+Mq+aqj5R2T3lwJVHSiRrI9rrBd/VSNaAIJzeeSkqs0a6eFmouOHB3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uHjl03QEB7FVgeFRH1AXlzycH2StALRXxVTCkHEf8v8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bb24q5Ft2xLKHa6/QLIAALZZ+BY6Tj3lasR/AxqXbO8D7eRw3hKawRJF8MggDOPBpvjTSyFq1bZvFsunQXI8gFD6VWsyPYa/cfac0lyVNo+Y8ibQes6g06woK7BCc/XFC59bQWH8qnkcPLu0Y1M+Rs2c0oNARM87OoFj+y7iCnOrhxxa7pPSZzKT/5WILPbfS4VeNtJtcT2oXOmrdZX+MGBPDxnAPfZxhoEcDGzUNcBA7e76H3IA+MZpi+AG6rEmWvhfAuqcTQ/Vt/7d6JlYUTP/cAX34QrZlU4W40lHbvlGYPsNatkE02hnD9cAZqXeu18ga+aAbJN3VXU4lg75O18RlkquCoONl9pYSN4le4S2AA1bm5EodBYiXtfWMLXRFrkEemubJoYRK5rkqfkmiAWlCULA1yV2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uIcL9G3Uy6dgZm9SjOjEnf5ZHdXK9lcx9rrCUVgB7K4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0wJxajJedsFZva8cMlUjqL/iYw9w8j+4L4QAWEJkbMu9VjGZcAveTXX1D/yDl1cTRBkzmIA0/BAamOStqqd/BrnAf5w7+zuc5/W8/8GvTdh9bvUDRLOTLG/k+hqdt5TRH8CibSZYfJIkMmahypEwW2v8NJ8y9DMwhEThvtCnWJTYG2Xr2JlrXl4NOqkGxEbbpkmStkQwelCr33lzvKUrhtFEzdBkeK85//MlOZ/7m7L+3YSIL4TwZcV2la6cMtn2UG/MP7KLVXlG6FKPO/JXHwuxPNMWKqYD5cdwYwWgF3w+8FSjahZVWRSVA+nii3LQQymE0+GZ/qcTk99w+xkSKf27fScKqo64XwRU0KX2lcs3ETQ0MKQ6I3Ck2grk7wJWGdlljAwm+xc7ufFk9qJSgOMT2ApnDdyK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uJBc2I244pwrrPnHKRZIxGTCShIurrxwLQAjUfZQL8U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8pGBCs/YjUsueu+L+j8a/yAW+eqELm8Xyk3I9NG42M0d0hCxag/BU4Txzy+XGA25XzZZ3zp2GPmB2prTxb1EZ6ABZqpKxe3041qrltJww7F3K7CV65KrwMfvrDt0c5UmVpxdWw2Mghq/rNqNKqHwHJ2qR0JK5VvSX789zGHGtOZWJRTm7mc7i+EvSu2SpM3nvkGoN3M1QlGBIG2+Yca/T7tKKRZi64/ZmQt0m4f3VL9bXmyr/6FULkt32Ak2u9H4aA9/1BriLxaMNDFgwJmAGjoI8W8WWCQK6fgevUbtwaGP/5QDnQQKzVutTTM+BcX7nfIZ18D0RMryTglYy+js3QmTtPz0bghr6RZSkQ7epI+T0ZxPjLNoYZT9rNUsld/ceLGCj/mEJ2KBv6jouiVXflWQ8Zu3w80r", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uJETRfH+HiLYNULL+gs/UwH5JtKUphGZjsZmBpsETSY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mGwKBMK9RTXzehtFeVKlYFMHbmsfuEiVPfK+R90IjZowrODB/yh72UxyWOufMp4OsaCSlPJhqL2e/E7cw6owS5wzuIKOr3EQef4Mv8Gy+HPQKxXrnMeLPSgI3zUfinqwTXd35C4jxCQm9nUMNM6+pf6IgabgkKntHeAO5pTzyAiUm9XVL9G/V45HQ0+2UvfmofsfrhjR/Hyq3jdmbZJStgknHHncQlJ0amh57cjwobHoeh5MIbZ6qgLeLxwtHJ/hdTOy608gM36dZdAq3lKYhrOwqGbmzxS7axWcMMrUEfX8wXEWNEDg6xWwSrE3Qy3x9xDVh/IhNngjzYq04mQ3HV+2IdWuocFH1cn0Fw6vsdnUg7w2zmL7uQKBDJo75Uj4S4X+Ejt7swM3XG9PYhJlXL6eSAEXoveD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uJXt1NMEww8HLOZRmEzYEZLs4BVtsLK/sjo+jqutL4s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3uh6xro+9td95HMM/UAFr4Pv8va2YGR6IYgyfaP735oPQF9L324ulgcDfSeDS/ytkfRrjZ66V+vLuLQWxaUtLbjEoA5RQ1ukQUOTfDI704gf2iji8tRfMH6CaFov7OlrLSAFt2RRiBbfFmsMGewhZrKSKqeJDSkepXsRfmPra18QkAWtD8y+Fu612Z7QJ+gwKBtrwfpxS4LkMZmMCpiik+vDD78CmeofeALR7QY4o1zsrtHIvpRZOSNpGerY4B25+qeA4SZ1wSLOwBKYk/LIYvNbcF/EhlW6M0R67FBBoau6oY43Ep2Wb+MTTesYtecXqgrVLTuO/DZXHegiwLwTn3WH/0jNjuSvh8YuYxtBvce74No0j9QBVMrPWjIdEgWIVRR30iaWh2Pt+bFRfwHeZxI9FhouA25/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uJlcOoYo0iiqVEobHwvNER9uVrYPuSDJEOg2N0MKTbo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/pOKOIdqGijYsGi7K4RrkN3H+gltjLmLTwxk/nTvNezFt6h1DbYyPoaBF/2fh9sW0cHzhrqaGiwXAEVueIKcdVtUgtTm7lWT8b15gv7jj7gRk34qp7fDAFTLwXkjJ3afq5lzAJMdxrf2+iDrnXeXM5cJ/wZe/hNUyDdsXhu6lj/Wf9k8mDQoQ931MePoX8IRlaUOoq7NUaSsGxP2S9Ugp+IJpneMnul1mbDmnh9YG0/4r3DQwrDZsdx7M02mGVWOu2er2fj8t89DioTwFBVFx/esQAhTDHqdbvL8opHsoYYbgdvuPmQsj4Voh8xMvd1fftfdpBwxp30NkpzBkWYULAiLN81QsAxs7hKtke8z9Cs2WxabnE5TsRPAhD3lp2ACvjzRnQQhe7WmwcX84BmxQHR611CHQz1I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uKPtdiTa3zuuJgxgLHOKQlDjA1d7JNDEuQxUQr6sBOs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FzA3siJefXL/mAJZgdmmRYeEfrgxOFULTJT4qB1t8VerMuAFp9c0z0JchZrMYRAcZm0oBIjbcOO33TIy539NX/RW2cijDzzL1uFwwdUizD0PFQ9kqtc9GqM3rEXKpLHDm0Us5Lw0F3Ac1MBfWibfxhiMh4hK6CH1zWwit4KAyXqHmjF+9ErXDGCskDf9+7NzV5NYHCHyEmsxAxjxGipNrzmKTADguhJmaepetz0vKhSoy/bXy4k/xLV8IuGdHPGDOMB+6NicywfX4OIgIe0acGhzbmTwPE6mPCLmz8rtyWQKTJLBqByEcErGX/MStHGZvqtlUV17bT4HtHwCkWtRssDs2irBT74z91ORDM6CiHrbCcP4gncUp0EuqkxgKiBcXzz/YvO5oEw6EjxXJQVg+TyxHKTFfqtR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uKir+W3dDGUhmC+GNgBzv0klAmSxBgpbwJ6bZE96kPI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ndn4GHe4DoWGGxOt+Lh7v9W+WtT0NImQK3twnp6fW250AkMvztlBFKD1FS8dxSKsDIYdysZOe9M7cpo7RYW39zfiNW8a36vkLZE984ZPHCXIgt6ZlkXN+p0PnNK0VLqm6D4zLcixJcOVJU6uF+WXZYS03fTWuOqobf6S6ObrLGUrcG/EJrrjNewFJ6IaMjBWQZMjLNkizfc4fcT10MZNNLoi42pOk9hPAUziYCfI3QB74Kxu91EUPx/Cs0hiOdjFkTT1FN/7ypfZ3vq2eJKLhyAgJH5J520GVrSerEki0rpnjjF7Le9Kbi7YJfaqtpxfvuryGiv0Jxpi1/MtBHT+5sTJoevbW5WWR8BQE1zLUl+h9P/lPPK81WktCsJ5JkK0G8dfL76P+Iw7XBPzM+udLnzuJzdhY5OK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uLzF0jffFofECVLIlwITOzYxJIZUAxFMxvtACg8c2gg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YYq/dWCOWdjmLYApP3LcC8ygNq/648X/9h9Lv8NarvRdKSEYdUxeqHvsvCM8Eu0Q/OUtbZ0aH6x3PiiMhTXm0mlCFTfJ4rpHBq5zeGN89KrQH5JZlV5FCJ3V8VK3GWfY9F5cjg3Wtuer8tQ3j/o+SlnQILHPGlbGUcvgT7neWBAsRaoHxBZRU1wlolf/g+f1vlCw17DJCenQdcaMJ7nDLCT+Xh+4EQtCjDEQq+Xk1u+PUalD4VdDSFdnhh+PTl+tkUx5JZZ7yb1ioyUHem5AnVrBK4/wUvXtC8WMvTjYBBUncDHN0tjH4PhHNAT5Vta5kvcPgKUYhleT2SSnqcCsKGeiv2beBqtL6lXPv664Rbf8kHr6Forph3PZPg4BSE16XNn00vyxX2VLVB35kTxL5GeXUZv7AW2/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uMe8HfznCRMZAziVG49pAaUItfViuwfZBj6bGXZHRxI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M9zk2Kfu8y49awDCYuTWx0MND8nFo56G1Xaf2Mt5zmQsBx+CMsMs8SW7bqv/SYGXhPQP0ROkKbWkNe5o5nx+JoaQhQY/Do5NT3rklups4K4EcYqhQHG2npgHTVwohHaD8wmfAhIwZqToyoaXFGtdSW5mpUTRoVCDUTpbYeAeAONfU2jZPBJM21fg9fCEIvTvKuo+u8oUqzEeZq8b2Ltw2n11Tajn2j20tHNADa5Ns3/Eu4t1NhCQ1S9dSnfb+kgPwcV28MoNZja0lE1Qx7oXcSlz+JhajuyaCies9DCT/G42rvLxkTZcirnGoOym1U1nCVNWHF8hYNa6uSkhSkQBY66W9MDgu3KEJiWDJeSEO8X3AjODyqhi5hVlZMiKDglVvg10v7G2o5hKAsVK05rrvZx0zqoOqjJf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uMhMjOq4V+9J3498jQqv3UpavyxLMuhBWqqooFJrUTk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ppJsnl0R9XPd//xQmwrpu7MJor6MgsKU+/W2E+tk26W49kolPLAmapuz4hCdJnsNjjsvYnJkVpUK/u8WCRDpgUnCSISC2XOyt1yNmt8xNac9BaMjvC8UdvyIWVo9q1vNlcO/XklHhogMj0p/5qwfR3mYv0Vi32FQMBV15jsa5qIIlAbdAMhFygrBARk+mz2GtJb1G5izRA5xYFaG6ZCWSgdOpVQgtu8RccAsWy4bgwSBThqRruzd2wLQAk/uVE4Mm00YJzAkL/3w2u79FAB9/dCZ2VzM2+8RzUXUNi2UaWIXhWnG1IjhuXibVdTCnnC2zw7xCVwe8FF4tEhE5M3LB5MNYoInrQMpsg/x3jCRcq9GEeVTlYzmGg6wJZW7ocIoLTs2i8WZ4NtHEJ57VFqMgMFRvn+NuMLs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uN+SVrkMqwIdpZRnrbAUTzsLjGOz1/2nyvoM94aIT8E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jitWZAvX0yxhCXHxs1atCwwJjngZ9+S9AxCNb5Mvlq3eeUaP1yZGfPqihSh4PfEDvdwTn+w6y7BQ5SMGcGc1KDJPXTK0/Z4WEHWue2+AGRVswyqsOIIB4hXeStFkLDfDc3a7z3tJZ6r+DcJCZ/G8PYBP+2CPiDUQi9vgqS9w0Wz8qvEFLxjEOLanbP59hg81HwydzqcgcF3IfQEkXN5klW+dhObEBhs0dq2BjN5xaCe/FcnmgPwMMQUzKxP3Pcvt7ZuMxg/q8/Zz0FUg1Jz1YzPn8JzPu+CGNV/XdJrpiPbHb55FnCX3lgVjN9vbC0kfleaPYdMh2o+Vs1OQyqZUySADIavYL6pimZXyEPZj2lHcPBv8yn+dxPI1ezQxsNmqIgyAeFciAtSbnfBNHz3M3IDFgnwUW43i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uPuezFqPyzi6B/vH0tPxT9dKC+6QRJ5znGAjLv/yb8w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1y9OCdSyQy9suNEFO9dr0g/9WaU3mhs6MWS49SObFpzJ69R2GjRA0/mRTXCE/T7N18DWLQ/WYwHhnRioW7IWzCCWIHw/N0CEEYznDL/SAxwsMPV6dZqPre9yVr1auZS/APksje3Ci0xTGHe1rC9P5oIphAtkRfUk5pWmiFtMf2jmj/Pih3XBwcgm+ZqyfiJwqTvWZUVMSjfekKRpooMhXJEDkogzzWnAlVjKKbHLcLUrQYr4ISSMx7O/6wl0tmTuO/A1TdeY2RhqHaQ0eb7436R/G7l8Q8ZCRxOOldiIXocDESISUoRj02LfXawUZDdiKAPXWEcepLf1+u10tUU2qH4YK4Mzi+5Rx3dqyhb7lCMLn0+b//nGAlGOyobNlcuVTvtbdm4vpxHtp10sUFvps+z77TM4wQAF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uRbosby0+JNAMgXkr3+cuC2WCjxxC6ZCOarusqU/2mc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sRpTnIA65NrAmkdCNmaC8kiSpQqPBrWO+tlJsnGxMvzSOzQBWm5uJBLFH10i6/GdRINuFVtvp7/yyFX2V9Su3TQEG6s1hs0VhK9sZW1x9c1X5sDLZD1CdoyOV7qFJJ8sd+uNwDCX3yT4P4RkODN7kWq6kF/5/m/uRVXQYs0gc2Z4GU10Nf1P49Q8T1i2Trl8nO0FInsApbh0ZQjcRYRt7Chf2yHhjwaPjYQp1NVqPAIMaYgW7F2JN62mJ+bdptBefzVXvkLN5VXRrh1leh6JXnJvUqJoRoSloxy42rgbXZRktoYINZA3kZuHqhhd2yh4EfJF7TFgNOmXN1q9lr04NIkK4XFKhGnmMnzV4WYsJKKjOsDTLR3/ieevtXwJd58OpT1iz9G7H57Yf+WA+4VXV0fyexXWVR1L", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uSlOJFuVVH1w9cGeWoaJta7V3/sJpsnzw2QCLVRHp+Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iNgO3C18c9286Nbi32Ej5bsAslI5iNKMcvwI38TTouKOmKnXr5LpyUlrsA9VQrnxQPex2K+S87O3Lo3nuS0H+G2sV2OR6r19xh8Pu+42sHNCUaJysNtycBjqKfD9bcDi/EkpPriFYubSgEV5oEksi4okvexaeOCYDsLQP9sxcCZJLbknDWjvITRshIG8cGwy6ZMICV0DtjK2nPWy2AQVcLpUSVaeE4WRKpguk4NnsN6Pr9Y/mcbLn7hsv2JtHDAIus+CzoM0nO8SZpqyseyuqQpF+8+pYBQwh2x5KAkeqXhlFAw+r1+MLKmugEQR1T1h9M7qvzTUmT5vNPQFyfJeZHG37hwG1ZqeIyxMhEY9/d7930iSNN8tTFD9kiPmGkPK2nAofuHIlOa29sOn/NSsmaGBX4WWeZqJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uT+qrYkQYvOurJMtxG7n8ics3JpBqvEhjii6/DDarOw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SSobqvE6dgzBH9MYJslw8f8MuNb+2T1qSQ1MqgbhOL+YAwFk3W1/yKwWWW10yK6HOYFrgx4Hlczs0+dbSu2QZkyLoSRffaWAaefMOC10DtlZ0DshEe6YYYGNUhoCF3hLPCsNLWZoN+Ocf9Xq9ZU3LeCbI8sV/5+3zs62EYkKPLXpjUdLD9wjTRFt7qXPei5MNS5xZV5k/xveJ5xzrfAdJ6Jw12XnxzMTOoqkvv69/qNGcc67drXd7X1CC/zygR7Wr/UxzhcnLDqSR2pdgkIWFL+ZwcqhoRH6o5yUwxTpMbQfrDJNYatzb3jF87uXb84wIr+h6NyNjqZaGY3lPEi7BZxC9jK61fWWvTinrKaqlO9xME4Rhz2u2JkLAVboIDcqqnJK/eq9D2CMjUGegzcZq35ZKVMme6a/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uUfuGjsD0y0s8EWgGdQRBTfj42FmwQWTIyyT3ln8oYA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HDSzvunjJT+2fwGYQdPheFe6yzXos7WBrJHvANHH4T21sTcEp7AfE+H5cluFBuAG2wpEfEKSQ1QSTns9PdaCS5C2omFDMYFdwdDw5MTaaaBLa62QteduqMDyumCtVrRHAeYWINOvGSwSAuEqZehF9tFbLsv8uAP/WJI1vnLNpra+EuT3xoEbHkUqZ3MTv8FtnHxHdXwsLvGTF7sG4JB6F7Ctfe/ndCPf7PqSHXn7IfbeKkmsH2AiFZ7GycelBbUqbAAqVoZ1ITXP3UN+U5BzyvyzicrMliZsr9zwsExWYYC1nN9VCsMxWWlIZjTyZW7e9KQBaOkq7aYEdkrwgcOsZ52vPlY7DihNvWpF0RIuQunIqsPAbCi5eWzy732XM7FTaz0lHxi7tsLZlbUeEt+SqnUuEGsADS5h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uVZG0NmesuNLReAjPP7zZf9I9NWXY4q2qnX0e5HbmTQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4CWXVZrG2o8oszHdTkZ+Fu6W11o5ioB8RXavtBIt/CAPl/wRuokzKrb34Hm3gm8R1fCoxtkN2xnUqqolIXdjlF86w6vqmg3txf0E10LoiUWVZlioGACZPPr+1OSg3BZjrcrCTOPsnxIWDwbRfEN17FwBf6jM6l13cyIrBAlDu5tqw2TcQuCE4qR55r93/R/y3gBi5f0GgWudar6yefuUgOQOslGsuWoLz9EmmlDg4FNrrI4wYs464plf7WduCKd0MlEqr1g/nfEXZD1xD7VeXd6FKJ1fNPlNexDI55HaW5xyEhG7ofhuWbEI/S+AWgXAdWCK2YPFqnFX6z0EKrioekOpL7VZbWWL7gRiRQzfk9T8aa4XCl73WysOF8fK5RR7DAxlp8kmYPB5S61+HD4hK9HwImLNfqFj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uWe9KJIVNW35aTL4MejQzh5lKIuCHuFIOw4qoXRcsdE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RTXV/0hRoHoK5FTQYroDbV16QqmYxW3+FWxejzGzpKjg9X0JEtom7nHGrJNcVDdGXPaY6ZuVo+aTuJOuquVtnV1AItLfSxKb+lVm5YM8nddvHoDl5JmLBYQw9EkewFcliiXw5d6CZ1CP00Aaz/QY53MNXuG6WsQNj9t05Sa28g5Eir2sZj2Ir030glGQxcmnd1Mq3SozqA3OCJdFCiSeebgayM3nt7SiJYd4wTz/kkHNDIh5vjOJMwsW+cGXBECo3n5vkaK01enkxnznuhH+8tKOMf7R8hSJSso9YYDd2Ph3C9oe/p9ZWfGOr1859dW+SD7jRQHL7jlqUNXfHc5SUF/vS3n7YAIbU8Ik0Dpmj6Z+Y30PTLyXMk7MvXDr52lAjEyVPtyiekGMc8xuBfRj0aIvfZSlTyQv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uX3yGBhdp6pll+g85tws2qHbaiJLbl/NYcwhmcCIUn0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lioCMu3KBUc4dyUe7LwGdBarOBR+L2zGQMLZ2iDx+WihYN5VSW+UG8gxoa/bx/JZvUxmmWjsG+6uyo+v8whNnz5Cspr4Zo09m4J12AopghqkwJduUwCr8DuCrnvs6LW8yGoSGYg7D5qbLaUnQ14e4tdPDg9Y+vSh0z32fnHcqGWgVH9C5w94sRISGHcxnN2VRNI1lOFC3wIdNZmk0/qNlyxqATVBHsUE9rNp05JguSfv1jKhIo6N3YSuEt7bjllWhpnksEFyGqE4BLQzUN4v9xAgo6+h+4Lc8Nk/KM4DGIzh/T2EGWN/VtaHqLBs5XmgLS/fo456MIef1VQPUtkohlk7iJaV1+ud+aDGfn2RqDEFD3Jt/BxSoCE9zXTMu8j9ZL/5Qx4RRlcpcmrxjw/imKKEPurhL3j3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uX8sS/Uvdi7yFBx3tk5K/sHWqtLnXAPR4dkbGV2Ow7s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tpw8onmDKsDsu6gS78FqFlLQmpxuT1lFPj1yTSBltI5S3bRoJI+kcd5PR8+TLaOJYhtABk4aqSyzFfsqdLv3RHZaxl29zx6IDQrr+oJrGkB1IVh6EGCGeQ1ocEH22qfRgJgipA2OG6Fzjyzw4yQVsSAWxOXGgbzszHVgJkDPwYTcJx3W/k6PNI9+yzUsk2ff0P55GrS6Ji9V/CTD5OHaICc9sA3qMt3XjBEaSkACnjiysrdMGS5APF4YOVIfmwZ5+u+EBHuGJ6yfdgu2CThiLhDSP3RJyFV0qDEUm9FtMvUt8nhTx7t8LuJnt/q0g5KoOOhgwNBiM7nviCXZizJ3YtMeZaEGDsXuHvuEMAE3Ng9x5y6VbhGLePbgIz+fkf53dPDnM4/AuhZcKuQBSHdNrXtVJxpSWJN1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uXnmFWN25lGKn19Gw8aYkof2siGQaX1U2nEcNDsNQGI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PBn81mXVFcMRoLk/nsbhjWJiVct06a0EHUAH3YDXL4YnCmbV4oWLRwEW33hPWGfE/s1LfMzZS/5k5M023U3sW5wxB2i6T4Cr4aV2BBJk7YEwdjZeMSfDqF7T6MMfJPxMsV4OqKx/dgTitHiEkqEBUkmWz19M0CR7+KmVE6rbJDNqRk8sQFREYDt3hGPqXmYNKlyEu80KXleD3DXc+xjVbfuldwpvkcxyMfmrKQ6Wal4SNJWqBCUxBiQCZiC9NwqAVaWUXLQhwqjIfNIGZGLkfw1q3JRIiEgW3iQ5jUAFMwhbJ0059lLL1s77SWqDXx/WmFipUSvL3psRpbt2Ss5NnoCgBeDj0+Pv6LbKJQU7R2Le/yqaFuS+lPtzyGkT9krFofy72uSTw09QEOCAL6lGY1OYeOSm9Tjv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ubJbPnf6woMWvDGNYwGvW7RTsKEUIvzGw8fBTiKlbgk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MVBJtEpji+Up6dxpwhOpsaU3873TnjUUbSDAyAud2KGUwrL8NrtUxXlKgEojOjNPjaDwE3CB0LAYOcZ+SHCQaeDFyNvjsaI1YvVPm2z2GMczKCDTjTSIVUslM24VwWmkBJAdbfCcRKrpTAMKU4e6aYJLrn/DCcMzoMZ3ByW1s1S+/Bj2bh0S86ec3oUqyknTk8mBeWiHLQ+VJcAE8guMo/Wr2esndYwBcrtrFE0tI8FORJHZ2gWVA0Bmoke6J7p2HAXrMcBfrjnvh8fEMUuMdldVptXrTiVLyQrkuWjKicwzkcsjKBp/Dfx9qmaT05JbgUYGPFDz6MMltiFBZbOumVZc+U/K6VjVEKlWl9Mf/qOSpMVvl+Czn9Zu5mWGUQyyuxLZozlpjTKuWjiF87pUlrscCrXHUeR5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uc3xODBhtHgC531EUme//d68dORZsyRNmG2eEwgOYx4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6WdWJELWGINRKXLjY2pHuT+0qSD7AmoCGC5+imzorqos2TyB+MFgSUjo6RxZkpaX2bjEQCV+kjQt1ghbkUu3dxgHyde4GEp0V/3iX24W3mY1BcN0a3W1brZ7A/h6RKKS6zZHhFIiprbOHDdMOuL241EBazf912xqqfyzcuiFRPTuiao6l3eeYBVKbDXzXt0FrhK7uwnrgs2X10g3L7W6zRBkTpExSvJ1jAQlZ7xDQzg3xjbIcJbjdx3LODpd3xRMKq9kzWohGYyaSeEnhf8vcfaYA/Ct0f4Njw7SqdHrDvYquclJUatS3Ss8gcWQwqmZ9zJ5Ppv8uUybYETE7VK7ihhIArVLWzX9u0Z0YuR4f1CBqCkgn2BoHNOv/7bJihqo5qSoB07uhOWGcLuGa/oz5rRlL4YmeCAP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ucPgjI9WdonTBTz8YM7h864oly/UV/ETxHSTnRhKBuU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YMHb7yduXKuEuTbJZmLWeE0z4TozS8lgd9vKJnA/aoJDevY9z9HNfLEOSAaMPFEOjtNuvk6DrvPj9JuwPw5pAM2dFaole4ZDQV8LpQ1F6/dlGzXyo4lJjwLg1JGC8/185t9trqbgujmISKWljIUx/e03+dX7iN7dB5R7SYwPqcuscBr1kQSNNjNegqKIXnZPHkKWV0hPqwBMnUOXDXIwyzrULXfDp9UxlE/sNYYENet1Ubw4cFTh87Qh2bGKHzMzO4qGJHh1PqsRAOur6PpVALV0usKcUFDLyxqyQJ7mKiFxQMlZ//gPKH1X1n6oykI9WRo03AgNtOvE8+jluZX3sCQB7KLUseK8nFTrwtBRsAwvVklTVPU9UZbgJHYeJ3U33mX8dYTq0orcrdtoA1UBfMPuKfwQZAsn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ucmFnUvo4V54HfTq9PYSOeb8tLfTkK3KTBPMvt7Xzic", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "b8V++E+H3YV4p8Td9/J/4rCKb6s6maWe2kb03XOELhw1yldLomoGIjdyBx35sppCnidmp6G0uPnXkuVNNoADgX5xmRg07ddVIi96Xm8lZRiFZlXdkdb1v1c0SPkOoyGV5Vz1S9QhJMo4hG5xIHPNCcAAhvtu1FOWGeOtY4EEwale2K2e9qoI6rIbpv/873/eJu0iZKR/ck7vzrMn6wcm0S93MSbA8TBBtIfoQDFpmVwK3EjzMz4rZrLbgK35JSQp9gbY7NGCOgnCVG0txNByhUTx0miO/qLbo+LB61UjVow9h9Yz4iFr8WsaZ4it1ySU603YQOatSHo1kFogu8f2nbnZZ/VBaWaQ/QF19LtMqkbKGuiG2G+WfgkMMZc7jlxz3gE8Ca0oCATjT/jXpgGUVk3e1DYOzFM/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ucvmkdVN+162h05sysgjfULykG/QB6SIZaRaJ20ssB0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aZPGRYq5//5uPdNNBMy0I3QPYqWJMF60+gWl/95Bf0h1Uke8G/L+s+/A/z5R4v4Uy9ouVSBBjAuG5NrcvRnIM6NhgJuC84hs+zIn6yH69Vuu6XvuoeblAFx/Gqq5L6QdzTpL7OLOofOugXdquXCa2i4mWNrv9tXqV+NhF/0Wve5pIXWVEhoiSpS6pS9Gt5fi7ZzrLSlmEQo/A3mQ84mg9CH7aumtLG9h1+sq5iYI62eX3snXxpLApL5T1ow0rbq6n6WoXLvv9ws8sRWaVDTU6v7/rZBzbiHDbTtqlTajtGoxTmymW7ZuZJkWeV3Ou/NUM1j7G2eBbRTgYn8ZhvKrIpzGtObxEzw0TWfD0aTvNOGokA1UP/olat7S+NVuJb0laIX0wUcIGThBsiR6ghw7a0hX2SHXnzC6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ufgA+yQOxvA6xCnELDWInkGLYuILSsjV95W7Qlb+VX4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ySTkdWy90ZJyjYCBff4tfVq8hkNJELV2wO6afmj9TF4zs1cDheku4VwTO0/JxUed1HTlHfL5LeIau7MammgBhxqp4MSqqE8AHYq+tFbACIB9sFMIG6dF73H7MbMVMMLCPu8yv6VmrhOmws5HS34XFQR2TOdg/axsMMNdzh0z5yCRmkvnADxakasM26UUncWdG9EaAOFASGWaGe0Qn1QYEOckY21/4hM74dxAT8r8HUWvWv/z1BP/gN7eYiB/kRcbiNbdxkZ/EGsMnfrfGym8NiuUoQ84mte5ToGg4yJc3BMyqfHpfcqDjIrKF068+5s0pnHQWN8vRSeAEZscuQxgF+zFviRRuclKrqV34Stz8iz9uF3WGd5qSoUoep9GKf2itw55RRsyjhBTaBWt69r4wPqot6XP43Lw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uhOWmyNUx0jvmgeSjToLYDMrPM6rNUgbXFFSAlbSfZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Tsab6e3/Epk+870KNh/VwEucXUL826xtYNkl0F46JHQ1VEdmp+fAmIF8ES+fjYeyQkC8UCNVGGGcSY5M9hL9b7fMP1GMbcqvKIgsPo+7huppq5qR3RK4bibgGoE9kEnTODGdE2Z9YjFKvQ7wmimEbsxrI8v4xtjyyFu7WkqQjyx+0VUOBwbexh523y0y+iBfKku46qQpX6by9w0Jwb+DztUaZGKKDH+McSqHHpBmO+NB/yNJwSrphpe7/a/QAfIQsfHIwKIDwUraC98oxMak9+PPhuF5usxdW7t8Gl9Nh2s/gxY9UJy/EUZy9KAq0eMulCKoOlaMw6gDrN8HQr5DEdWnwKqKBNadnBSH5RRzW/r2tf5tPzDHDbzU6qcgeHEGL6UjQVH9Cu+QO1qUTIqaq/wYuLknCoyo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uhXYUMZqdhqD7Ug7/dB9uqg7QcHmdIuQLnHZVZsSlPo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s+qgfetjbelGu093jLBS9FyjB/UZz9EYirukiaaBC5SuIHnBE5cQpUKUkXvo/8emzQiTgHtUMOP/M9DzIyZ/iyU4t2VMHuRH3nQ4P799bMq7bMb74kUUmqdX958dLBzzqDJDunl4DXcSh8AhQogO9Lr6L2cTkT8PWqI7E2UTZFSquJxK2tsDEMqoPAo6Q/5l/gkJNDbsBf7ad9R8A6CR0qMfH88qAW68dzQ8UD/ykJOVIIWr3Vmk0fpqvjLo+XalOxhd4ERKwKnu3pTO9YotsE92XpuML508SKKt1XWD7yjHXMWnq+SYPQxqo8RVJvVzmv37eu6OSrlh0IHKKFV88QA5ZKoivjd5qgwDW4r/4rP8Ix/G9BjQj0mly+weNmXhT6V9wR05ls1CeEcHZTW5sjFFAriK+ndN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ujCfFLZCB/fWEoEau3XuK5rKNN/SwHYDoAbDG9I8ttw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8Dkm3I05ZmCmdFd+F0E1Xs1aEfKsjYlgcMJxgAqgZ0f76BoxlPgtLSTHD8jJjHcg6snhKjAEY3jJMY3wmEezj5Em+3+Q1YUDKGNL7AasTUn6n2kq6J+x3gg0gKEhPHvzlf9HSvJtaMXaCReks8FZ+l7ocMIqY985Us4plZU7mWgGjKu2+/8RbX0Zk44xPyCr5CPSBTO6TeTIspEpkYmmm56ul7DEgt/QgIylv9pu3GDBy/x+2efr4EYLYSnf/MXkAAoVxwR4v8TXbMpqRO98M/PhhDgZogdF2L8rJaUctNkeCcOoSsdhpO/QmsYCP2gHF4fHHW5wq++FHGlpKHrUuBz0utKq4f1pYc1mg2YaUhfSBRE3AJaEiXOmLkwCiouYvtI6rEtUusJMKv0HVyCAAidb0Y/DDgkv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "umFC3XUREb1AaWRs5BvQ09e3fxBhVp+ixcMqJT9d1QQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M8uqf/CxAo808VF22fIxO6zSvMyiFBC6aWCfKuOrQHWFekhi0jpjgUQ9yTJp5V7XyM6bS7vCe7BUJa3V7qzBE/RyWZ+IinE1iLpV+QQjUAgORU3m8OeBhsUgjlWelDBzn5f4amBLyVJCcg5MqI+TlU1/+LCNR/GOrFcYdJsZP2Cl2ckn2ZCdcXG6O7ZyPajc5m2lo8SmGwJw9dEy3BksJo253VCOq4yQrrtjJDwT9ZPWd+qh0xDw5KLRsmaMeZdQG0oxVzsA9jfLfcO6WpB+TMLWH8QSDmrGfDSIUoOftKwjVqwzZVCvd3b9xVMJRd3efrT5fgVvd11Qr3WFDcFiaNdYq6M8Z3TlR2D7jiBZWYexe4UeOLxxxdroVS01YC0fDjDj5x5Eu+T/4053UBnD8uXkGlw//Qqp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "umJ16SLvaoIsaRMduvSavjsmo8Dz1hBXnFp/Kk/eJKU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cWwf0+3AhEeXOoXq1Cr9Eiy4LULQDMZ8cKprp5N71DA4BSP+XJ+VsM8A1NTiq+Jj0Wz0Uj/84rYNRn4uTlkqlLlcabyzEwy5lUv4CEEkkMRk5axRxyXoGQCC0RYQlcm0SG+oRVDZCX9HeCbz/SbhUOxU0A5+SEhRKd629AICs59QNcn55iqv+wvoO5dJohQ7x98JjtRgGcE2/EyL3BhIoIkCECK1sl46omk577d3OnRJWKEfsJwhPrYIQB+jwhumVqfGLr0q6Ql6A3fzaeiueDQ2OSbqpPthG6tEVx/LJL9Iac0sVy4Ze8xrOIR+jdeOZfp1aDnk7fmfwtpRZ+A0mDWdSL35DegDy5Ocz+Lh6XHZtgG9jUrhVlTOuC35DMdV2203PhcaIVHE72C9tipPJvt7nJSJerGD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uoUukojItciVX2ofLHMBAOJtuU9lcpWvnV8VB3Woc28", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DfKU1d7WG5NjZ+zFwVXgjpeJcIizt34ymSBNqbH+MxnRJtHgHKc1oIUqGgOpgFQ1vx5zsorshOVO4ovsE4qbKCAyk9E0nkJpy1ZGil0Boh5ebcR0l1ak9XkKp5CPB2YZkigvxg4jj4F1cYSuFNczKQRNLPyzKbwTMuTObja7HcvcRUI4tr94nDUGgP7Add/qS9tNy+LU6AuALpUUkGmeQAW+V67/0bcBTDliAKG1X9pyPNM6k2fhS5PzalSWTW7iOVEbwbOjos0cOlLjFE4JN1XUoHYiMSGov9zx8oP7mVhrAJW6ROE3d3IXpvjPZAYZQ7gJNFpMPf9JcReE0ahvgo6v+nbE0nxkUADG9McquHi1STzTqSR7fHRiPDNCZazlwGAn4wsCgYWjN/XhnpQSrPhnOn3RnCfl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uodrlA8iFW7YXDmmASRRI0mHUyWikRcK2n7N8zmzRdI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZI9nuL3qwBQkx5BRV98+C6PXPuSKzuUPUvTrSrd0u+rD5sSW2pprNF4zpzw/Hf0yBQRUr01j/hDvLuBwfFxJwDPvsmx3hwBFGlHOiuE7bzfeF29IEx2QTQH6BYnYis68hB7rE/3lWl3mbFmA2l79utm/mji5sKvvjyVOsUd69gl7PftfOGqPMs21PGMc7tjIeOSciJEb1J6XsUchAVDHdloOUYLrIMXCL8y/F/3m9Wvm8mwQDdzPaJyE5C+HIXuJn2xFOp8lWp4U05+zz6MO9QQxAaJHoilDYXqc4o+EJt7YtyJNw+qKdDsgeFq0Wut4KaBgtTaXWDjqdxcHU7d19QWfp+WJsHh2d+3eQ/aVbapO3255mB5oOYBwU0rA6FdMQi6Cwfyd2pSJ+i/ozmhRIZf/r6C96Kp8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uow9NRlj5k+nA4eP0AxKlnffnHQhInJhTbJJcka2n/o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LnCtN+t4CgupbuUuVVnaFgVqIWHLll4CQD+HZQNv9Gr5CrdeoGsupVCMA835SKEJXLd7WmnrKGkUU5zdZR7X0a2nw2vY85G05AG/u+2taaT7lnLaTsKvkkTwhDuFj/8Y/M5nGgyPyOCA/upTUA4ji0qZogN4/1OOsooCWE2qK3Xb48/UKFn3b88BVU5N/BGGqTg6r+KwiGxWwrz/ZSRrD6zelceTFpH1sgdTRAaDB7LWNolyt/FCvHGqzsDVPCbZjtRwrXYXv5F/icEBjvRug8zulNix2JuwMzB4MCNf/Kn9jFKGNsvBDnoEFtTx+1iqfkhvefM/qVGKMRPCniz0mpDnWgmw1i8YfbWjzH2q7t4g9cQy60ta2YW90MmapRQptsM5qWdoVDS1F9mU3TSgyamMbazjCXAN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "up0D31XtX+ozAWGL+oA1FwuXUEkNgr590GnJQngRdLo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IDXRZ299DfA59C3MemOfOuTit7zibMfbVjzkA3Rn6fN3Q21Uczz2763gGxKujX0y3IzKy2HfHydmRmhy7eGaPvfHcKy2XwiQAvJvyLGo+B7lAz02pbNrCCYiKf/BTpHPfzMLtS/YZVeL5zjYXHTl6Tid8VTeDZR/mCMgUk4VaKJZLhudsCg6+CADUXzAUlhaPK4rvj74JXNDt1HzCBRJesNo4gBn8jXL+77ejTYRJ0uPRXb6j+ISVSK8Al8EWvZ8Rvd6BMf10LslPy6qWyg6XR0V6P3CEeGXPSROiaBGRRhZ809rGHOmvRSg1jK+yCVvU4dXoK9NVvhLaqCi4BTcbHTS6HXmeU/C2E2BR13YTugJOaDoOy3k43Fu+KirEVlpgGcFX0O4Ll7qXw8XSQlUfNC0aN2BvG54", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "upQqz1pcYWkqjt/xoHr+tSa8UwA2iP5h8tzWqnqKVo8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nSrZeBorNCC+kLETss2iVV0h1l1+jKGU9F/eoI8KYQsJ7Rq2kMC7BZgSL7hwQcgEASXyOCaNMLQlWCUIp6aGT84ybTxi1HYdvhpzeJ8eUnlWs03zhkt1CvjQM+pwE+dPQO+8Z9RmoQTc62Tpkwk1EGUhfrFLR3cYo8joa+Evh7SUt0ODKK3vLmuMtHOHXz4W/M2RW0VrVmmKR4uy0WsGBHvORKwdxqmpopwHasovB9Qf7rX2OUQBLhd2PUss94of+ru086AqzJziW/zlUCuKg9upNnyWM1DHY0R9rKac6VSokY9uH9sSPP3S4WfejUXCAHhht++9RxOmIa8wAFqaY7BX5/k6OV1hopAuSR0sogQXsFwxbdKjy8Ngyqc+O8Y/ECCsuJHzcFFbktYdUPtjfqBXkq0hXP/U", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uqOHs+E7C/+rNwYu2UtmAglPX2bZg0KPB811yY9scIg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "stQQil/xHys/xCimB6h5cYqdA8BC6BEF9yXxY3A7Hw5tUVyJnX+idRIpfilHBZ5L8sIWZMduapdcS2sO2XyEBmphvU0sz5xWzQUStpd8jXx7syg/ZubLLSi9Zw2B8XajGq7Ok0USg0+ZLyUnitc2KiA8aOTpUYxKbEsEoeEbJBrHNtyopeH6Jy6gjtAG7wT8OtmKxctfcQhS4J6/v1p+UFy1aWOV1r0pCqeI2ltet90kk0rfStAd9Lx4kBpFcDopcgqBO3kgIc3+pljf60XCUnX9u3SuzKDfODqd6CgZsKnfePO3Qp5SOKNabvr+3B3JiHbLbV3e1/FQ3Z2ouz98Vh/5moN3V/CuJ186hfq2fqa3UTCjJ1dY7HYSB4+MMGCQhkz1YF/6vCPCfm5fCLmGa7cHfbCqhi/C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "urcumHpb9msTJcHmf7cg6gDMF8O5tMTVhGTQ/SDY698", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rxM2Y4xL8BmrM3+uAPG3LZHToXyLnt/3RTevLC0wh14VDuYfTA+2irmBllyEGvbYcRy2a+k5az2XM7t982uy9dgce6cAieaTLqpcN8iydu03Tx9DdjImoR7huepR9OhDdXvjjKQAEimbPOBnng3cvfX20jalMQa8oyupft0H1vY/9fDpwgJuJiiW+LXr8h/r0+ll/HZq8j1KDgq55rHVe0g0Qr0S6HX/NaWSvyQbbwx6AU0bMsuL2JpeEyaPYAGGqaH40YbSoEuYPBLh8QiIh/9E3ULunowyKCSgCfGVPvwvTIgJsFPeoDCjOS39nokHvfA9hDFIAkxzz3Nzaxk3GRhiyw7om9mzuiwcxOg6eXPfcbojHXX1kMfTTFGIP6xku5Ttff0JW5musNbPDPeCmZAA7MmRqypp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uvayx/lOHPIEuSufya6fkrBCKbma0GephkUdfHaumjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "C03NfxkAA7eMW7O6Ti5+sCOm63oLIYfEW50tgl8Lj6VCWgambpqHeMNS+BTiLan3M2BFAQ7RFCAQhvEBEaB0OMrY3fvwdS3hkN9i41OuZOQrb/rVRvy0/NVAlIEG4OBBldJG1fUmDZGsUfEZx2GAX7D1DhAIyxxTsV29Y3tIQDRQiKP9YNUq3Zo5HkLXkQfuGBRvckDc08iHL8mjxZiudfo4mMdUebDv415X4MWJHAzSqAFyYXPNAdl2xjOsIKfL182OHIVLTBZl3p5gmwaxpsFBk3i04dArSrdULEfrL4g32OkAMpHh155FoYJfG8bX7kN2kpHNBfJyxsYymULWsnXlakR0Dlc61VtA//5gSM/9cWEUOzZNn/zoAYlpyH9le8aMfSjvpfT+Esgk6hX3/iC6NbBZ/gLm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uvuqekXRxM7QTT+cdy4+OY1O7JDEE5FDNX/mnMG/0FI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FiHzJnij1rPo+xc02a2El28Bm7DTpC7Ow4ofpUpn5fjYfBxZbg7zbAsw5vythqvMura1dYm17NCRAeFr5Ye3n0wAAk3YHO2NeL/CdJ5Jgf421epyp7PFSBRueNFkwN+qkMb3QVYiCrKnqAFZFY2ThjzrKVGwUTXw1gtmUfV6xavRbEc9BTgdKshK803yj1s2ukw71YGM3LAkxgszc7IMdkQleHQTfiWw83A230+cgtf0Zzw86zbB4L00Q/m0UxUrsCNEPEj3bwmzJVrznIr7EittuW261TxaxuRDJKqAnP3no3TUBvbnM+VtqS8MA/1wyzPf0f/OCPAe28fWj4tRA0cU3A5gFbS+4iO0ffj1J74DKyZKFSIu23JyvZ1xxVmL39ZK/iL22F3FEUNzzapsQUSodD/+MXb+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uy+3iXWmd9WAlTLIL7naccGqcE2skZVFNueUejOnTZw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Nt2o/2UtwwdrqJPHrg4z5lX9SDMFY/1+q8JmDt78KXQChCY3SDRopQZhMpukGvc/+81UENQCHOuXx3IzKZz+K3Hj5XcrQR/tT6RDF8md8LL1Jqnp+kF0bJUXmq2v/oTmWfgqLQsrPX2G1+xKDP9E9dM/t7pN3Utpo1a9PMShX/FNwJUsac/Pp+lUrTW1XRsdNO5Hew97iZORvUnO8Hw1AA9wnzoMSs5wKAb4JJsH+PwO2hOrdZEMVZ5YlczqoZLEAQPfHDRkQTcdRn5arr+rXyOLTzLmI/CUh0OQsPl3P8Z8It8/LDD1bdN6xtPwXx94h1w8UV4msm5dVQBxw1DSEfCVPr3OM/v2gY82QToWOmTx3VQd1QVQWOSCM++XyXlo96AFjFGMxPkFMAHhaKITggxUi7C6d41Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uyWE6zkjU/fC7etgAz9ZMM6LGVdSiOj5APvGnZazFEo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OSX96aF4Pr5jF9F3TAgn/WTKsTtbIlzbCTXW9NNiJqIWgogu40n4tHWwpimj3ROKP7GJAgL83SiL8FXozMGzdYa01ksZIFi7teBzGp1X9lB6aOgpB2aoMJTzKXD8jiDfbrRdGcSahcXzxXiL56ylB9/SK6904lNnUfUf6xlQk96XwrXbGfXQ/f1yROhdm7F197NZzdw60aKePPFm3xiqVej4jEAOu5R2ylhWKaGHMVrV7MFbk2tQyVdXj9uY0pvwcbiVBcj5QoPsCwVkGsVyon+qVbcUPaqeSlUWauxcLebzpRQyElZyzwSRXgAlvvOSom+JCcbYTknslrXLD3mFHBtoqnstUaDFeIJs227PaYWEMOh8F5d68hFR3mizhekKYsCyUa7zw6RTTfFMApfnM4uocevka6Za", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "uzdw0wEzYJRcq54dcTJJEV9gh/5DjNgcwStQt7uqCqo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "O8m7GdAulClXoOYF2hjs2mXRQODyoaFMAFOwDr8qnBtdpEPbJHJXO/64ZYWqP+SWeRPHgQqpjRwTHLlr4tkgVlaTLOg7wLQec+v3AqUezTbaOab7GJyu9xgcRQh2jM78J03KOsXO8Nzs+tB+wgqZHAAsoGR4jlXG4w7/icjV/6ejnp3r1ygHyPvzSF2qJSQt8Myl/r5PR4BLv5Smk32F2g2rKjB3bzt57kUT16EwpNz9AN95a/iVWF87uC05VXlxJB3Ezzdb/hN0G89J4EORHHBZ4m8c1+2FNPqRoHWfL3AGBYUXL0p8xDCzU1vhpmwJJHEM7GfeTohdTsaasQiWyqH2obvygo/usSa6ojIBTu5YAgz+MSFvcWbjqNR3qBssAcZFIQHCwqqy4qepMCCGFfb7giZnoT/+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "v+iJnDiRgez76L6lWe0yQQT5j/Q28ICNUYyhHwdF8Bo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TeUPtIFTyTgfXy6Y0IovCWhqD7FZ7DbROjLLqpR6BrA7TyB0oRQtGAIbvThbTMHprnoIFsTZKRzqpvuaVKIHujYmS/F7CeFnyCYswfZqt21dSapPuFuz43KZiqIaXTO/MP74oGRmrAkWfPpsV2ZlzVxWlS/Gq9f/IhdFtzXM/YD04g1GYd6mAiymyG8DP9Du5bWKvAjROrSK7G0lIoCUXRY3LRXx/lVORwliMBWqCXQ0UO/jTxmoQn/NWHirV3XF7zdty9aP+api1ZqK5/EvhOfybzGgF4UpwCUrEBAIm9u6ftY5ysUMsCzKfiWUlcJ3vVUOd0N6IdNsNrrxT8K8wHZS/5Hdo/HaL2Yaz98PoB3QHuLkaGglWD9ONlnCL9DfeqqAbR7EfpWkHuTV6TUWAI0oKRk6Yn0R", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "v+pSGhg/1KHQ/AorJ7CxTuMy6T//WK34TfxkTYlbp24", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6ybvKWP9FzudHFOKSJr4pIeN9nF60+5MdL9ldrHRFujO5NW4ycOYfbSRyy7dLpIET57QEEp3ACTXSbQmHSZ75/AK/SJ0LC0FwzsKa6NlY9B+7ukqqbdY7LU/RkWiNiCD5J5Gp7fblCH8NoUshfDAFKHPewfjV4nQucu4fjHG+omlru03F0jLYDbZHIUbcYra5G9HcXmWtNshMHcPlaPS8/AKrytO08GU4y/2WWOe8hQJrBU666X7JLzUGPjVocou21zQNB5dHo49fmf7MpVzWBFP0j+GiR4OW/qyrjle72KwMKOGJZ73bTES0r5Eelkm8FKFsGwcgGeZ5PieOkJkbwljQTHdAQ20/T5rCOo+cT2rehr/gpvqa9TfywURnqKKfuEv1C13DLoW2A9r4vme3QaOgAIfzPOH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "v+xcLi/bRroYSBCGFj2n+3lMggOD65Xort9zwyfpvDI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dgGu/MwmXB/Be7Wt1gD2Yo0cpQ5ja7K4+w9amh45dvw1CmagI/dWHm8Tlu8SZXtICVNOPv3hbwWZDfDgQs0eVhuf85u4ZdfIJgI9sOQXIbn5vz+9lQbgVVqH2h+uhiqM2sGp0OVZtXI+GILqLSzVC0rJDfJiQcNobEXHJKEGitPjinipXodhV6mQhzRGpKkPlgFTKc8bOyPBHsoKlIZ7C1dCtMt7r2iMSGU9lKBBpIit2ip67CpvhtWegySa55HoQtZSJtRsSZo1KnYLkYqNLnQVdWmD0SVIHStvuuWz/+xdlwJTwl8J8wRWOmnVwBc1Li917nDuHyS56XGuC9fTCBwF3C+D+zaOKwkmLlvpnWNFwsHne40BvNOUWzzSjHdCjBvvvt8EJhSI9ZNaUZDicTjWQRDxP176", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "v0YDk7yWcZjmU5I+CXGQzX+lC/rmYkXp7GnObxZS194", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gVbYoGKillA3kLJeLwfOwUoxSQ/liJ3fxVy7QZM9fW6PbrC1F0eJkgluJZU9z7NwRvIeBqzHUg7CGdLARyJa9uDpeS7orEyCbcXADCgxwx+Vf8L2FSZinBYbf0USomf9TsF5+EYiG85PIjHabGdxsST4EGzHO5ujj9ftApRLqVz1jxaJ5SAFeLEWQ9Ia7e9KeT7+DJU05aYovQw8MRmy6ODK0f0No1E8TbTZCIrzdrgTMtYzBY1LtRL3wvWv3LFxnPmus06fNgea/8miu1WsxSP9ELp/9ito0gt/48PL2uhC6cHTzi16ZXq+yeHuTKGyL7bDXfFZvFxfaKF60NQUFsY8BLcpw/XSU61Ktvp8r/HH+IR8EwI2jP+wJsITnX5iZ4p+53gVVIoO8zxDOud3d0XvttoHPlmv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "v0x7rsnyT2u1s+KGP8cbMUFnmj0fyzdmXS7LMXRRJCE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RLbGu9gSF2d/GKldFElvw6DHi+6MAL32QMQ7yfiDlWs5E/YgypbTF1Udnp8zer0//eKBOYgZ68MHr5y//QGPDw4Hg8YjzcB2rm7aaxQ9dIpRkv8tqaAhnCLvgxoUhTD41JdCO6P6t0Kf+kFYMCkJLn/es2cCm2lB4bqbYhTUoacHMKy30c2xBVTkxLN6XUmgkiQVWNTx8lYat2cLNcMoFYjwa45ZQXDv/74uMn9icI10jR88ZbL58LcGwVa1Usf9gWhrt1FniYeI9zNfHWWYpKTnTQOS0m30YXf30LoxvQ1Z4gP4SjH4nIHJ+gMZvGBSMSAbhyBYp1gGkfK0BtkHUCvpKYrCV1af+Ad5/zixKS9XGKYw4UIn8HM+JE1DucFRaA6sBmfCT6yH3E+Mt1j0EhLLhstS3xVC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "v18vCOQjxDJGN+ivol1DKMfKf/4+ZtRzQx64Tk80Gls", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9TRUFpJeCK4iSSCcUl/ezG1oLQKskWZ5zpItaxkyAYd/zNIltVgqq9UW9fdITx/SWamNEhrAxzdSPjSHTYg/rVEjWHgLcgRVqOSfv5/50KNJhGfCQVYCDf8sfjybWi9rfWzQMjRcehtpau33yrOY7n3nnrhfdmxHr4kFrvT/8J1Kp5OQCMOOQrZWA8dumpBIYO7pcAgv70HhF0lK2yT5co7eWr/YUsXMsrPiWI2mLx21wlv+8Yluu/wRP2RLY772Jt0nRIC2hd7i3JZIEO4ANG3CzLvDxj4Ya+UEhKRAAVWwdRayz9vXEIDJhayfy940SQ/5gw9hp1LV3YW6c46DAfcOuraMuvNP8SEkU+nPaBRTkdkk5E4nCGrpk5xH6j9qG+miIFVffGI13aGBzu3svz7ibImiyOuV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "v2J0eEsjjVKCppo7dFhSw3BcEKnqvzx3EPtROBZlEvY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "b7wkPN6HvkMEsHS89HJhC3mNl6C2KwM8WQakZALTcMgFXbpbqnlAqWL/aMvAddXyA0ilW8Bg0OgHZaPbzR4VrzUvsAMnt1k+DrrZPj4rsRtvgsVEsYvnFQ/RckWee6qKwVPjN2wUcobYjlxlDhrb+H0Z4tpl/2j5hBzWFCwfEBnTKzO6s0X12/1Ce/EHsdQnc/I4+IHhVIZ/x26GHcwwgV71FB42klVI7+4pYvv+20919A8jtuIuZS7WGZFwTkyMDi2PD4S2flupGzpWbaRHN9QiOXhA28Wjgzuzi8Lg2GbYg/mdxqwTQCtL2HO3bzYVZwQUuKjc7H5RVUtgYNT+mFM9Yuy0waoOJa8S8Kq+qG9f00ouLnNS503cDDqmT8diiEDHAhb6updLTRvWn99VLIc+I5XAMry2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "v6Zruy6Mr+TaCF7bm7W0nzOILQCeCnsiOUVSJ/SWmbA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Yr+KaTfjhvyfTUavzfE3aAnFDtUoorRW7TnLC8JvCOOb0bLNE+jJ5pVKbg/Od6KP5afSJ/xHDYbxfoecsHC9VLDVKsufBkV21nFxNAWrE4tSezZ/u7uY4fG8RBzwq89dQGXlqD4J/m2Pu3iK29bai9B9qmqg1iHJRfyTBGsRAO2ga0KEeRc1D4JM8Pial+oXAiS0BYi2FpjhuYqCx1PCmyYyVibh3B0/3PrsSuAIakTIAAWOa/BL29VOz/iHAXGSDsghDfD4KnxZirVA6Ey+linLNfJ94RTi3/mCb7Rp4QAf0ckVHTUg4dgHpqhckS62xMMO3qU575rDlGTL8M3YE/tcT21C+Xg8X/oHyPzz6dMqLEZcgJZ+Y7Y+aHd+QXJ1laxMH21csn4KKrV/cl0poil2ofjKChme", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "v6v4ADA0H7pQGPRXAuxnqXqq6f8YAb94ofWowvvQZq8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6vQeUI53HkBp0QLq7ICs/WLpyR/mj40dcyBLvL3txr4LNe+ivcYDjq1imnwtgOfEG7zip4AEhG7M+6LAE3Myz6LKDEsURwHU76iIj7MhuSu7f8NcZEwHatdQFesftCev+sdd9gNZORCV8bNCV58wS0wdgCUtp9alwL0LiI+4NfoLZ+dRVzpurtSGyJnabjFTnyxrbhDd7lPugj0Em+ZoG2DQVw4ToZ+5cG079xS/1gxRMpLfXk2DhN8t52zy12XK+BEKcQHFS1FHU1SqGRbfngU6W3uz9Xflt7urAQcmffWEJWp5eZtU1Vz+jQuWMnCIlQp+Z9oax2vyCkEFJTW3TSBQENjehx6T+Gm3ILrl10G3gb0WTgLxFnP8go/PebVo6ZBQS+Pp7dclmW8eNZq9LFtLxPaZDwMS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "v7JcesKxF4l2Hu+NlXwzf7IR/JQ+U9YdDwagRvHS0Ws", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m6PjtueEZPsW5W/Qz9wwrWJD68S9NoOxwfggPP5ISUmWYREGDXpgiXK1B5QIMF9TnkH9dF338ZDgz1VxWpHfpQHbTggR7SmhafxUdFguJ3S3CJnJVW51c3buQZAHLk5805AzZ/2MvtrG4mrvPa0ATUQ32rR9eTsFNw6pn2JwTOhqRqikLiXtOBna4ds1m52DyInkW7txbs4Teqcv2wdLeMsRUKLMhZlnBetb6+QjEiwv+tYd6n3BZI2DXS1j6SGHM+yeu4U1jmXrdQrksxKC+MTZurbneZmr6t3gSB5iZWDjGezNkAXhVY3nOMyT05JxJ9kIdD8KXZ5eAc8Mr2GqJuyoKQCjRPQ2fG9m5ALD6jQ6u4sN6gG4qCUfbNYCbVAyOrFJd20tgP56Zn2YhZSg3x5xUwG6fjUB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vCAZxYGIrd4vyHkWqVpMqklM6XFFxVlv7737n9RTav0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L7789axwWmDpLy/Ifdp1MmzBtw8AKNCyA1kxmlKtN8d1+2MF7X8y77ExjtuBynXwPxXS3sZ0h6cMYHU276uKRpy8LHQEvXh09zNc9JN8XyQztfZcpKUkj0iyO5NDYRiqa9sfcWpbQrBElyp0JVqUFgsVnhr88+ta7B/av0Yc34IYzyEenwYa9l6dvDkON9ZuqCkuLj3BZpssw/7loGTdAiggV7Rp9pitMtiLlDiQMGxL8m+/n9i7WfvFmXySQEgQasr+VOhyhPKFnwb7Gin1NQCsOU3lIyfPsEhfm3W+wxveXwDhBcWmkN7f8jlQX6WsdMAXRTrcFzGe+cIKfV+hatY41rnmhBL0HJQLzr25g818WLtX8NRDQXXOBtahbtIpGcjPQ9NYmR/dWfHDXKXxWYpHGDdhSuBp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vD5WFzQQkFlWrES6OIqZNWIG0If0IuLYc5+ef4eokCc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PFlmIIeG1Dc5KSQp7htc4JMlbPlpCke6VDeOJYETPSsz32C/SiNQIdkrDpqZNhNbUeKI12SjVuvL87x6OHOZVU9MYulU4ME8ltouiQeUV4IS5dRp9KfVrNNH7R+rdk1cklGfSJVN5x8Bx7rx7V1o4Hp1B5EFXuIEPqwn96dgJ91dKfv0YeDmDPrA50D1p5y27Xt5mTNw9SX2o/FeLpaZ3HWsl4l9LN3C2J62t8dJ6PNGN8Irf2xy8mxTt8TnznClVqJ8IaHR15jbD6Yrmp9blapzbnaD+vH0yk2u8/UFl8zKoFv2TOMLUGCTVyXdElFBj0o4ZEYwjkqRnH3vxKPlwQOTcE7/p1aPR+BIy8q80Z6sC0XRoUQf5UwkJl1dBmgkh0zmN8g87eDyF0w2O1xLGtl8qIqRKRZa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vEpdl2EkNryZ/3J/M4gJ/81m6zwq85fSR60bvogYF3E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uU9k5bJwcVSXLwpkgK92fsKSUiglNPCTnTS3BvegQYDOMhIpoV/Tqbchvk/T+XcR6ey6wYPo6BQ4HOxRELKdxIYuqhLcmSn2SPgrXVqr4dnqyi68mYZ153jSeAZFZYtixqQ2FWB95Sr4B/QwloLU4wjHo5FdukCpkG/DAUoZ0VaRGarD5O8bPn1evBpd3bvlrOSqb0wM0tJdaW/wkhCB2TWzW//mY+E7X8gsqFQctLa8z0o/+na24XKrqRcxq4PyezrhbIBGCBcLsS2dYWhIkqZEHjnErZ1XX9hAyCSxNxQIHBN+OWyubAw1o1jXWG5SSQfXfiOs1OzxfjORigrJLXcz0sRLPTYEsuaf//TMdIJdBJPcAWlpRqNNQa0FpRfhL06Bdwfy0Hpg2TfKV4gqECFECuhlpSXw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vFqLfSwzikLA8TuO8nuZEtLaVdcgXjoN57YKycM701A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "G8Xlsq89cV+hdSxna3JBjxE4iWOzLaZH9AiJLynBsrJOfGnQyJuGvOKj31TyGix9uh8TXdE05uI8ioNotP62nXXlOQ6zIa3bnodaoglm1FHRbcO5FVhQz8dIe78wCTWaE1F5f+TIqFZAn953lA11VEj3z/6zaNXzyvnRxXWw2UkZ6FlheavyNoIQnvJFvjeREWSNP1nT9a259493YOkxV5+2pX3JqzqRpKMAgj2H/rJ/67LEx0ViG1wltMz5dJ63m8G8lfDrwbPOLdYeyMpwM82DSrKeRS/k0V4Sjgvxh8hqSCCtPSbZmwueEo6DOahrli7KDBklGAC+zYplv+vYLU4ZVIexdMBpnhIGiqa07jO+IABz1xgyIrLF1AAbkNQFor8s8axGtd7EkxuvfH0q7p4OEgwplWEY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vFzvwQDBkFztoQc3wW4Vt9UlPllJ2603wIgjZfgfcn0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DL/pFGL7EcVaWoeclG8lesCtVvjRkv4VcsXtTk5VfeKC1eQMmAgYg0DAcO6fxCuXmzGm7Q3SVIuJmRvweH94iUZWfOTyCN5ewLPSTKSZ4cdz1MmsqzlkhyJT+FYBPfUKlyyHYMNHnB+R8DD1I6nKWOqqOUVMcboUETl5OlptP0yARgnJgvQs4ifEHhYnAIGPbicDksofIwu0ZLS9HAbSTJl1v+UB56C+uFYAZdqPMVI9WkkgwYsy1MXMMe1qWJww2xnhwQiIWW8WLWXvGmESwJ1CDYlE1XpXbNTj+8F3/bcf5BQydZ5qMXDEuz6KD/BSyvj3iQgM7b7BmrxHk8cv7yv09lHZZ8XV0JLQ1t1UjF9Aqxvx+ZrJuvn0boKHjE7jhAYTS7FxgQwdT1h2pAL4rmVHzbpDQsnR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vGwM933sRFLA50byCID7Y2L5IV62yymnAJ2vylneITc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MN75mskxzipY8yjaw3rkUVoZEZKFzwoIo/D04TEir9mXXFCljevKj3x+RpYK6pk1NyERnbSVe06gvP57hggEkWwbeZ2Dww0y1ZKO8rys5I5LnGIG08WunQsaSR5y50UAHEmfmAtGM71QlilZ9ZyPLb0eUhgLhqZNH5lKdyx7fZoTzehplzwhJ6i6f4fM5oGLDv1NGq7JokpF1FkBFv9EozoSsTkSGRJjf9xQx+PAwkX19u2zS5aKnNrU8c3KjVO0uKjY95d0PI0Cpk/UP7pxvMoa218AUFXcGaIL++qeFNgA/63hoKtRcEzEbXXPJJNClIIS7JQTCRpdZ0cl/vE9PrAz4YABP0WvHYNwvutMPnq3zSI+lxcRvo7iteMLaVSlRcuAZ20B42jAVKzUHEM8xjxG/eNYzACE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vHOTOPSMHRo1yPd++KmQW49YLVGGINFI78YP1zkWxOw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MbghHHIKI32NwbeThQP7cf+eUZl/BFCko8N2px9hnemAF69/EQQf3jO1UHlhXVHRi3Cnfy81RNEV5tiCCTD0Edrc0OIXAar2zJ8N0xl6IdSWPi4XBYTUeKaAElItb57NlFGZt0NYSoXXneCtvIOuKn2NtE6CeDvp7SEZEFA+YOB1CnYit2w84yoITVSaDoA+oqhLZUmA3SWz0chRqWcynz0FS99/+5upnkP28mdv3MKQv8qLkBRT+MNV8NEsmgUVig11v2OEN4R+9BtD2nz9OeHxIkaKHxKr9MvYg1AsO4MkvbNVzJai+E88zpH58o1xlZs3kosfeR1IAS9GcbTa85EJ463aId2BWUNWa2UPpmGsiZ8nGSO/fQOIuOECPXs07jRYrYLmzLeMmF6wXQ1KVPC6JLquvGuc", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vI//YOaG9c4M8nT3jvVZfaKNB3wSoPOTTNfynk7idBw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "yFY8l6SjTjJD+D9dwufJxCwoiPURDFlTV1PJWU+IP++nBREn2QZrHGFMO9wIC6qsfhJGEMgvHhBAHwmrL2AwRFAyLubXF3YTa+TzPDk/ASnIGYA/eU/BflXN9q+ALTeqBsbOvM3jDaVICrnNcNF+vmqP4uSUcuNY9IVAVr6hTO3NXSthUHKiabd88And5KnGcB06cISU25URgks/vzrbEZyMEMPbAZc8jg7Jg/AN0Eg1oEcJ+GdjnbFiMS3JRJjgRsyA3FEKbGP3Pn6x1eFhRnhM2yKhoXK3mJViKR4cGnN9eVryVbSmlTRvm/1erB3ggUnfDSWvCzhjmJ0DVE8CBiWB+EiXq60NFBmbBQ7Qea1wACOiQdMniatpDJe07ILqvpd4Yx/9c2uu9k2r0/+q14MFmureA0w9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vIeLYXXjLZtaherJZvEVEQvoS8E00rK+PAS1KN8DJh0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VLZ2/5Yak70NeF14/o+MWp5uE2Dwweob3EzrdV9xa/yY6vORAAexZ7O4blntMTlGg8qS3tDw6h0FiPRXncTwayz7wNbOdFyYDuqo4v0tUNXP/Rk2DYABNF2JfYWCZZ9CGU2iuwIe+ClGROfgNPZ8Z08JMyuiW10mQBkTELSQxmxLFKDKit0ARM+gQGoqqwnrOEWyj58VmapgQAoeOds03Omslb9HGJYtHjBd6NYMjrnzscy0qe8xIitcvxUlM0nykHJqrb6ijR0smtKgR87LOFPTyyq7uVYBlXXzUX/PAgbGWwij+AZ88lTQ9HrO7n6iN0nV2x2f7LltNXuUikUlR401d+j2MjZ5F5Q7KVKLUEgy0BD+zlSMp2Vxvzti15u0mdb2+YscFo25d+qA4wk+kUjGEh3k0pKo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vIkhycwfh+aOkVTU1XHVMdVs0GJYdQgd2+HUcAvq2ek", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zz5i3Oyw+k07dGiCrdbF38Lgikb80rA2gZcWriMx4drsYOkUWzH8q6IsoXE4lEdtLYhJprsYXg+P7FxH3did3Y+SWC4lgxanNIjzNlKWXhT07BE/ExsRurh5Qde8jQ6NMiz1tuFsEysnjwHGvMd/QwyDtZXhkAEGgdOmjBnUNUoBvDDbu1JWyvwbVEQZTtqSnT2gVVgeQiwA0UPEzJeAfHy+au00w8HNeIDmWJPWc1EYHWzVTLcQ9eyZnx6p0uqnlDeC4rKYLvEEyZb2L00ZdcHe2zsxBassIecEXEmAvHD1AUEC7xQXoqdXkm41uCNAXLX3+SUsWAHf41Ires1zmnFZwwMLvMWHg85Y2Eo/y/Wb3ZAjHDr1U0InDQ2zSWUanqC+F4QeLuzgj8qJrp0WLDFqyWvqwmev", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vJd0FYtQKGJ/Fdu6mzYD7XFpzYl+wbBE/peWNFge328", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cJ4gMP/HzllNWfk91WwsvHh3kokyOwBm6ba3Qa2Q9PZ5XVYjIJn9xup+IMYEg1CWOTyLSYHibSm/TjJqRsMfJFM6rY0MLbEhoBJ2NO5hXs8vXp6xKVINIFHeuyyVa1mW8OUbsnScuXwesYjgC0XO3DFc39W/A3/mHSNLaI5iPuEi5NPneMtflhi+LeOVEVsAy0RCZuCw3zLZqIIYsVWeUzQe2VKHboxRWSKVvBUW+GzuzUs63kEj09eww8Xpw6nPnH33V7lUon/qj10/kOo1cyduNi1TUmmCkXkNt9nQtcN885zsNg/dOLp+YWK+9uN3LO4KMbz8aJDVmVkyyrSN6ZF+RTBoeaEqHSBV07I+DHEmDWTU6pnrxfOljDlsWZHXlUA/WacdMK3m2gyocO/zmxHMWfifvQXz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vJvc4IfGm2cTGapQHacqTsJqr4bTjqnU+A0qdnapYpI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CSYAwt/N0GHH8FvABOD6blHPl3clUfrDPPpFej+m1NdsCAGGQASkpuNruvWGQkHxn9fG7okGi6euI86AeU8ZbTcp/8qHQ09kBH2q/LbIjeT2Ts1mVEwOEZqVD7s4dSn06X4g1UhZfLX4C6yEDZt56BuEFMuVsHcimhbl74Jxwn0+KU+fUVXgPltau2QK4Nm/kAs15S73JbGstFJqvAgyM/9x1VEB7K6jdVUbRZmo9gf9pq7pnX5Q/75pBwC9A9//7MVh/cVUG2KbgV2m1c1BO35D/jBRttbmpXNunhdXdxnz48TjobcZ2wq/BAb1fxHf3429c6XUWvKW3Re0lGgGaiJ9WL7HELdO78SdwxMs/eXFz8mso14ZWr8MyZ/cNGpoJfBGoswYjQJfTs7Lweanj3P048Tuh1Hf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vK9P+MuPXwC7SIm6bEgbTh+jwVM6lrHkaYa10TJjdkA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Jfj3ZqLthMtLWTkfs1mbbBNAJI5DPQ8BB7acsAXMzKyZawD/XghcfwlzekZCDxAa7i7nPhxYr1hlRvemJKXjRfwcXk9amFKzMoEuXWEt7X6g+608xuBM1nGldC+dqczgCjGsb5N3Z/ozVV1C/jx5nvWJcmiQi344mufcz7wroeaL7y2/SI6jeW93dNoMsV5sWVO+NcFr0amrffQwFRvJS/rKDhnYRPUwdlzWMwPzW7/SgeZ2st/4CLa3EeEbxZyWCepli9QaNnLZcal5W+xQIVzleKe26mre7pUH0g9nJd5CE775MpVHpMF8lqWl/CFF8JeAd/xk/3Jq2vwE7xG7U+r0tnOSHJNbpZIleGlFxf3UB1cLlH+UoP3Bb8Aew2LQu5nFmEby0VfS8LTZEZ/WI/wpEtIPtkDJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vLf6uFrPc7WrLbYJEiki55JEypaywn8h4qdiC0svfvk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4o6gCLe46cvu+Kss6fxOjreTUBgEqCGU1uCyVwtFFEKo1Yf+iDcShAfEMgRRjPLX4BNJ63lX68tnNRWQtl/nCpku2/nlfDEQl5zi1+aQKlNtBh1rRStbRsc/1IK+lIDCw9RQp/qfwB+hL2C96FTiBh0rLJurEa7PWc61K1OMwfFZBsICA0qeptr3xzsMSE8qjIMbkWuweU44RQq5ZQ6HIMGzYuzFJTc8xuw3yShANaOLz+dJPAKT2jS7e1KII9hxZS68lIAli13TET1x/MFfNcpwZTIMaENskppwS1z4uiqbxggQLMloZ2fNsdhiflQcakssl2BQ4dwCZe0IHSBGqYw6eFrlyMP7TSrkoFDQVIVZAjzH93TpVUysVUGteEDqDNIrme5QY/sdSOsLM4Jczmv3I1cFDqLQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vMyFC/ysabd5ve3/Ju2kb/8o/I9oFj0xYFfaX3RKtqw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GI+QAZGxBkxvU1eLuaG08o6PRbCpWOTm4rHxlFWYlfxwRIOxh08bayQ26onvYy2nDjOaRsS/KykKj5gRGcauYyGQxNSB2OMbVxcxpCkA9zlUArOyl/Q90FpTtQKkfxo6+sra1vlyZTH3vRBbtMXOQIqMC/A0ejCfwaG7zslz4t/2akLSlFBQlqvCsbeqlgyDV+nn65cP1OZPIQZDVpmNZjinGxbcyJSArVuvOioSNKgYMQ+DeMdz2sQMtWFr110hU6/JXIGORxpLHMkWANMOVD5UMhXlX8LNNRyX+CtlMyasqlJNyGu/O7ItnctqkWTcKSOyDuMFCX3+4dxaH6keiYhhe7mzFSVAInYAsxV3Nq4sdJkuENtlpFRc//HursPX2wmAQKBoxm9xnILMyPzth8tf31/GdNDm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vN7YC8F5NrvbfRftMNfSocrRQX/7TGcyxjFTRPof4NY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XV+NNbIIySvsZTyPa0cghVV5eRYmFKVZfT/OdBWYWaJ0oMZHqvArhWj0Kqg80EWtrEYW8zl6zaHBG6wNHR85qdUVZGCakhdySJxfyavPOlem/utN8MzApGQDHs1NxRRlIEhEBkJ8z1Db9gyTd+cgUZnLfLPYr/zNcYsheyD9/thMJ0bcX7GJtBACcMaTDyw+AJznoWwERsEQaefYiuS82wJQgElGo+0cwCTNqRa8lhqzXdHAB7gDQcfsjCsOVozsEk/J+LPUnbBODIfqHGnnaaBqptK08PCUjcNmlw0ieqFSqndARkG/9sjXVD1ZL2zTe02kULKoW3IM1trLUZnkWDFJcZ2sbuds0voKWh/w7frzk8epepDbqJZracRclmFmgkMvGhKthdYj12e2BrKVWLcjI6634wBd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vO7b1FNdO+2hu4/nfKYupZxb082uMDe0t/KP143mWZ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SsQC/gOUfuviFgxpYzMo+npjP44aY1Iqs2kCOibgos+ASwqSyCa3vwmYltEsZFo4Jtv04CWDR7cTwzoQleT7B6OABlIo2usyK6Q5TwJFRANDiI+tdYeBS3XtHsrFMsWFkDXNKf7eEOcJcvKXHn3TwbItyrKT2mmhcpIeKze2XBHbvT/QeOqKxdCK4JS1Jt0lkL4hzrXqf+sJgzYr4jp5CQQQOUFuCgo7G0BIGJxT0HxYsknXE9TvqVHr07nAb5p5kG8mmHokhVu+x9nWJSlAJW4crTIAZymSGq4CC0gePUxhE1Z9i9Ey8LNosIXF27a7AWSPl6tbLNcmnG9Savt50Cv/EH5nWwYPeHXFHVmSyLdtcWnNv6QLg53No14u4czK/e4egWjW/ORKzNoXZg/i9eYZmvtYgHJv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vOnwfL+IG6Au60V9fhkVY/uo93nrCWCmEckcieXpTYU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "GI6nTUvbgJBg50vQl0x0mV4cV34dPntRolafkNU1PbushZgf7IW1kFcsSFdDTt6szRbZWibhrgKPLU1FsHy/pYfyQhnGxzKjTzigCRJQrS1yQ+jFlXk5h+aHy40OekRjgA/0wpH6JsnzEcKsHslieYDf+3UZPIiYSPB60J+yTsimeKQvlC9jj5tfIiezz4xtkguYFmZJNOrRQ6tpm9UH3GoHLHsTtPKTz9KpRPMRpTG7F0OK6JYM5v+b7rrwn5gTWfR7+y13VXh+C5NHYA3PwRkXmiviBeQXo48YTsAp/M3hVPjs/B34T4vemrS98nqi14Z3m6Jp4pSNEBXWN8rLqiNOTH+XVPdeAsBsOVQYLsFys1tabBt7erLnjmubSWUtVnzb/+CegLgw4crDVLYkS99tHfZ+y/+X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vPRmmh9VuYTfdddTn/+/nS9hE1+AZzKoVp5UF/Rhbu8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pCJCv5nkWHbDXdH+SsQ6VbFCMuh3Npohcotr0FnbK9z1A5yd9TpjIplmlsmnIyscMuwwcxdNIC+hdZvunbsnhmpP7rpcigkWrlchFJzn6wCnT8lElmCr8HFHdPdLYGGGLzYpBo5Cvk3AyDRC2H/R1jCCZB9lGBtCOUeYiUu5oLiv2Jv6bUYnAnNb5sbP9WpU61IUFXfxPg3wTYV83w7KS1erqh1X2NMCNKDi2iDOIElpyS7F2fvYD5wDeypI3UEGtu5oMbmjfe9EAKRcB9igNaz4sl9A3hSxxC6lpqleiyrgTiq93Ym2p9UnroDP7Fjd0JMxNdzHnyGfaC2p1i0fC0OKmEqiLdmMa65Kcft1agLCb4Vegt2JUsVVg/3PqItTJPwTFonpFzDF8zxvUyXBtBeLNV3o0ESY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vPd9nnF18GAtyRmsu9sTkuOutk/hB/LkrmWDYmBQXf4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "g8IumfVV0b+j2XCabTsxKlDlHFa6AcB2O+y1I9Br+pIBi73y+/VZgh0KFkke7t0CDWvt9GR5ZkBFsCYwTMdT0e4tq1x91464+OnbnKJFAMco58Ex1NCr4EpjQvZeqJuy7cZd2/9td2Al1heo5L/UxggC1R6KsP8kGoEXSUsM0bGw5gssA5VPhhCc/n2P3uqKf3vqNlr24TyNpUxBi14J5aKTiFMKyEV8CsAxroQG0ZGeeXAnMDu2UeJFLW5G26w24lqwi2nR787ExBt57rwbiP+wrAiaeEyr7nd4eCAslWCQ0L6xpeLzzxxR+7kaRTLQjUBoD4rLe1oVcmi0FJyaV9L/qFen1cQqXIJDeWRtXgdagCgaP/1pOqxemvFsNe2trkXXAEKNcprHY7XivNsB8gCU6/QywYfw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vQkJU53w7aAlOdl5J2y6UBSioEKAkqyh38rPGbzrl18", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "D0oi3c5GQpRK2gddPxezK74rh15I+SoJBZgNVjdeX2uK+lASqdKyVMbZm26tgXIqi9hdU1XVtF/bLDCV9AjTas/Ufvv5IvMQPr79lpoi+g2WbsEOEqJFIBd3GayOpXLL1QV+NF9ZzPQBVGhHpmIHCeDi7NeCH7VFwyxS8OWyXSIcKZzvJb42IEOm0dAETa0sHd4xYNQHrXuWT95Z64JYY2dNuLrBUcXCgHmGtx7D/eVH5EdGqcZkpU3V+vMfl25i0nPtY4Ux8tdaHspIBXwioX+xpLdsSaauGkryg6sfg8ZccCByaZAOa0TSgLNKSwUEMuE49/C1hrkMfngPA6yyEzki8xzkgVlHUb163do89luS76NEPqIGrPHdJrl01aglzNUrjlKUYTXI42e38wC2NZVirnnXgQnq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vRbId1F6P9g+Cp4yRGTjvLc6WRv+hBd7Bz47uqyN8Lg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "P+yYlxp3LQxE4fS8U3BLciFkgF+dWEhXd1IcaTfpc5IfP9OBwH1mvulaAM+tIUb2fWq6KB9fPhdNxU5bkAxMXoTW2OTSQ0yc1+5UZyGfHFjjMtWvnJZtb0osc0F/HipOkKPGZMoq2IuXQgFxIlxKhpomNtLaVi2aox9hOtg+nd2Slixs0Aa1g1fzTUCoSMTIVRe80gEDRRnGoAeTttgNMg3JEmnqmp29nS9AVwKersIGDD5ybv7j5UgjZpmr261E2ZR5yRZUcbVNX9XiBDoi3/cUpZNCH2Sc3wFcn047LigD45YqAZ/l/JHHpgUZAEDvMQJ1DJ61hj2zLITOKbxgh1HWqNFXyHuvESEiDlMeAX1mffwLEE+I5vVQMFX/3+dEBXj2EL05tLdYSDpKiT+RRhmYUnyHUhc7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vRzBNdjZ5COZ/l3dnrOwQcGfra+ikrvCkOZnqTIog64", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c+rDELZObye1JDiQE7+CTzN/GAIgWCtJXM0x39EBOHL5Sd4C+svv9NwEiW9phN1HGilCH0sHRKVFq1TwJZITBp3VogphnnC8rf33bX/NmAsyHLEA6OLpmKKxA2sEcfVZ4RErXQiD8S5KLwuC9rppzjo5xULCnbAhqrM6JjUUop6gUX81oAw5CSGuw8mvT5mBPiYn0lLThMtUwBABvV9Pw/QckiMgHUY1xCCQdLivQH6DQqWrFdKeFhQyJire1u+jTmNLzg9OlZmpOpn22Gjz2WNJcQ2XcFrOLrKB69MenOaS0MnA4THpMTiZjSzFE3jlxFNQMRHmgwZ8Crg/059xMDOva1Hib0WxU+o+ybmNHxbjiifJ00ivzTKqetcQotEPUGKwre6vLeDlS2k0jx1IepKPShTjJE37", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vSQQ3/m+Cu+jk4ukcOgig3WYBMaj3C01ptF36vpVhSo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hWmVXZ4IWnIXZiZ79Gpd0pFKI7MQ4Er7r8wyAsJcOiEoi20ist4QsegrUrYCL2WexDSuQ6ehI1wvALQaPHnvV9y1+8BCN3XxeShwuvi1lI0JhKjFqwfcRoDxMiWV66Unr17VaoTodzfCPtkNCl344j/WCdOeAHXlr0bSj0IDRp4pmpBgi3uZsSN8fMG3/8x4DU/gDE73iqU0d01eEQG/cQJ60sW5lJu6VqCaxElJH8nyEP/mTYjUmlo5chH+NNU3e0Mp+a7U7z+m8F9xKD5W7Hayb0qY82oOoFLI9myKvxngTgEMCa6I7HJxtmqNVFb/LnUbiyTkIZKbZAgl6pQZz0JITXoplBXOZvuI5UaI/sh2RmSRKt3cYNgHAZJL5h2Tb8fD3L0ttfsTMrfUWVcz9qcDvgtR7F4O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vTBVFaWt+46MV2jfBv6crD9UtJ1PqTHdgKhnOxrFEcM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/i99jKW+nlAjjoUPpbKsDIrlatkii3BAh+fRsPeH4oMeDQh8zEnKLqbtgfL8+8jhOA+ZaDNnXgKcRKk5tDsrri6kex+LqCsirQLSKlqSZIJQ+eLUBf06GJa+Kfd0PP40ZFnPmQ9ki4jh5vmVDnAQAjZDHYCUVIZtBO51fHllV9QCaXhdCDl3l+tzkDf6yNG4I3uykJglLXAyG9UQ7oUdHGHMyhGmFl7R30UnHr9ujQzNg1rUObP5gkpko1ssTOrWklXmdmd2mf6Ov0dQb19Wh2jDKFdv4qEWvZe2rZoYl8y5/I/bzemIai8hFTdR5h0cZKU7KI2vnPNAjuMwKF3Ht1ItA5BtznwoSm5yNCcOOGE7vrMpWezTWJSmYdwyCb0oH6vHZodrpB7xyL61FCwGAy+d+tWs3T/b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vTkIyVw0if6j9zcgH0tDOZTo+BYXDdMQZw2AgVCYhAk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gvhBCr2s5xWWhMfjSeLInboHD2HRS3TXn+Gf1pvIax9Lc6+6EwfKE2QoVdK5/jy6vgK3YHj16WluS26qYZ3/Uo5rxVGO84sUyg4yHBg/XWPftgY6+QOdjKEd0lEPIukAoJ7tVqBvCP6CmGp7IC3wn11t9lWpHw90azjeexYxievK38hNWxh4lR55ear1Z5JFNkbOHbprr08kMSeAS6ZoAy9BvGc4G5OMur9MEVPxrvGTJIiKEHRNEVINPcNi7YgVfkuAaiWWd/39Sro4i1nMbTy9jdBWFm3foOvYJbko94wT33brR4W1dUQSWHBgORh2o39t2oV0vlBgOEmDmWmo76VBZeMc2xzDuPyOxtRjIsDyVL3jox7wFP5Ch72cS4EzbK5ZwcqEd1AetxGQDn+wKe4BX4G9fcTm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vVyukjLOa13kt8wGKKpSO7GqaLPx07fCgERqd68z+jo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZD7ROQuqJSw4EZ2afGpFQiPbJcJ12pFgaGuPBMomdFDDYuCcFor95jTLaTa+jJvw5ZJnt1N4V33BIIdjibaym6HDdpcck3kxWkTglQA7H2K0fzCRWTRFelqi39HrfniQywPqAyQjGpsGgcZ20HLhQKRPDVcWnRnot+TaD91wCs8tWrsjEJyEL+1gSc7zM/IR/xtFmRs1FhEV4NW2UwNCMmNhk7UubuHWhmpSoAaMKvuuZJJ97i7t/MlO1TmSeCz6DpB+/LcOhGY9QgtNyTeb6o1LllRE/L+Hoshi/7BUP+TbzyzJPfRiPQt2oUynER4vcpkNGfF8S4ovyVMYbr8ZiLCxNlLg1ELrLQT5tCosdJpfUJP0WKM/k9KuDWicpFpp+dEvWcmnPZwLWdiymzLAkUTdDDpU9oeS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vXmxEOfSeYmoTkru+YGEsNdZgEF4PLJxI/yVwPAbbqA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rCrqyMEcW2VTeyk/S4FUOFoOvEuC2SKicbNtxLeb1eS5ZkZ4qvH0F94ExETfFxqxxkt6b1qpHURzblVGEvcC5JvQphkUNrYjgX3nv7WRlFtIb5+XF8V0D3iqMTcZ8XdsS7wCmqlx1dgUEOshrV8Os6ZHelCaKOY0e5KbkBeI1QUZ7LCKPIQytYbj7FcqnXN+5Ne/ilw5FLbBR7p3IfwtkCfr1AYo+rCaQKrchn1tOQaP0Mc/oxkD/TB+djPD3Lr/dXKDzbgYRM8/Tsz7Gvzm/do+N5bQMgI0C9BNHyRQfqQWn/AEId6NyYrJwqeU62Ybh5xnndGkfWEBpktCtWgIkOkm4RVwZkIz44iUCZoO0/KPuiiRTebH8H25VoycKAcn3wX7N7fdAcTXpqIAUj5rLIQfULQs14Wy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vYtWzCqnAL2xdbn1aUjU+YV/ikyjNNLA29z8usxGDHE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xVrkZ76ETK6Y4owSCwMHgXZMNA++EWidteRbw+rGJj6oh3HWkFZanvHetuPWJopxWeXv/owqV5Ydv+kc9WXPb/SMyio4Tv2W/zCCcVoUiW4PHCXTuBOO1vH66ZGu0xF6xej1Ty3JYGXyMYC2wWChG79jFMed9/shb16kYp1sZAQ/R9Twiqsqc9YAEVO0FLoG05guuaHCAtKJr6pBkAb549Rn6VTg8Bv2UAxLiIvLXpv6wCSiZvWKOPU2197D7ITa2UOSHisvY/WJxAaYClvPQG2mvUWMEWU2QVlZqFGN+QxvaUt32MwLzJ5+hhSLPrT+EGjA5fDGgMepe/CwM8TCMMNWgF0v173GqoHhmlfZ/aXKJto6FRRluUoxiupLkW0WYWCtita+oVh//NWdmWqugVYxqf120+PG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vZLNvkBF2u1tIkP8qffvtjbXQA0TBACqixz8q55ps9s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DpjFeQ22fr22t1sg4ViIu4+QoLiJYjoj0RsF2sU5h0YWJtChFSFaxpx7yT/bQgHSLMlwhu0fjGKswWIysyjmrsfKzeyeRtxxlsrLrxu562fwHffwOB0TTQwrSAtfda2MZCDKHg3jfJfNP0OD9x2JJ+vheghPve5dbqm6ucDEsHLTeJhHtYKcU34sP9maJx1Z1IZJeB6A+iXxYQ2HKPM9aeDkUQ/PFrpZtnvpimBrnyHDgCUL5Fss6tuPKkP882FRVU1NGv/QqIZGBrd918kS4T69zvHjrZWe+2IE9Pc2HgXVafE+lzAxfK118YRfrU6rkDnrbhzMv7jf1KCkuli6jRUMM0qbm3j3ITGXdm5gDgtpnP6pAaOQoZ8vUyCP137XKNKTohyAxuxI81CQ+iDkS/fuj0oOswCO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vZPWjigsDOdjDvUPsT47caSkgaGXi4P4juqYaYrvVyY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OSFSanZm1Ta/WsRxeZvMk92bkgcPMn8+HHHvqAW2oQkXTywfLHVssC3e5Ii5rczdQFGD6fJp4NAq2WTEmRo4lqFzcEDfM1ZJNXiv6xKRkJaflZdIX13d+U1UNaTq5Rohkq9Wv1a8U/+XvV0mnyy5mQW6hh2Iy37fl7f91KJ847UfpTqthDmM1tKwpE1W9SnRNy5jUFdM8VFxOGGTB5VsZUDN/tCMK7D8Y2Qar3TN5AvoOQwM+Dpc/yitcJB7fdSBbS8bwU8aAsUSOpo2qmKqu0tI0eSfNfT8Xyy5DXsRlUtrmTjlu/+5QUIb1X0knff0YB1IwUsPSelsVrXJeZWD1KBhn6qCmOz7ltZRwA43tHaWaFNlZ5VYYVWBf1i4M+N2VUqw/JIfXoNhez7YdNQvagC4u8Zrubs7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vbXiRTL+XsYAZnVnWR6D/l2GRM8gpkKlnHewSdqGraA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "032BGUPvrXewvHL86WOg98IxC1fDeZ3B3eLJU+I9udzHWxxjuVt6MNfV535BmWzXtS6fqpI2C71DbbczCYj0esY+X1xdCqIofWGvsuFSvXOGT3r6Cm6b47B5S1kzR+72dJ2TG74+6czPGhQihi29NB7/aiU+U4o10VWmA527UIEZ2M9hV3yld95vGJvytYmFw67XBLqXNT8DBH9ya0PTURfa6x338jsxyoWj6ax9lRYA7HzbM01iHblJESTXEFxu3dCS6j8rODCMPs3QMur99hKHmbXoyEOy9KCpazaKABJBaoERqt0EUxOxtVc+SUL456H6kb3D5RL2LTucvlZLxn+oZKUjtMYaT0lbQYREVPSoD/PGDvGgeySPjoNJD3CTDPnqFt9YMyBLLcDGH1B2vbpPN5Hoh+GF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vbZ8n20T0HEUHW+eE3zM25HoPIZSZWNwMb+ucrQePZ4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w5EXuIMBYT2i/TzkFWN94l+Rw3RmmlXqb2ev3T9FQiG8jkHIeBA6NYGda6l5yinr3MXNUBmoCgg+4GaV04nH17OkWfOL0UtUDi6fQeFXo96ccQNtYxhTAgzqEVIlzzvQYO4fyJ0a4SY0ey8wTyupG6EDQuAxlr0O7DCp2+ozKRXEAAo7KLpY9ODgNP4fx2o2ddDK1f7NVrhIhM4EeMrsfSHZWum15VnqO4cpqKC7SvO1XopDtANsw+Z1/QCssNXxWlC5AzP/8FTRbAFcRHEiOwYmYXZnpet+EiD3qefzX5soIUgYuSnlBLCs4d+dl75zcDFW16+SfbFmSI2H/CnwSkDUainUCGk4e3Xm00vdt8WQCJbyQt0dFZNeg3c39zmj66ijg7fU04tZcyiKKpnGMig18etCcCUg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vgY3XWuGwxsTGVedcLjkY9ZA7paHXKOYnmWPByr14j0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iRXTqchUuJVQhJe0RZyQlaRqzcbSbIRFXmFKqrLH8ot2+T0gvngkuXF2EW5cn4ydKpkS7sI5sr73vVTY6eWzruyDReaN7a2X2cVjelVCx5oCGe5ADS8FTCTv9N6rRe4wGup8U4w4ZZ2FmJ707bcNm9HjYMsGvAW/UvwTo47pcvNlapTPLtiKHQnuWOtmMQEzqMs+XO2CcvyUYfxz3HJPLFhLEgMFaF+P4OGzkbpN59HDfBpak32Z5igUJMMKrOzyaKeY2gnrN1aP4wtHVDr/sFVzk6YSazRgyOaxvUGAxD7wWOSp7LOjVN24Fb7juFp3mAuqWl6BewSnjdoQpvxeUIcVGhu2sAVB76/PpEtihyMM8KicsLkJsIlNv4Czz4ZDFFq1ipDoKE1xDPmmAzfVgc7Tl9urRZ+d", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vglBaB1gR692rENK37CkxXHz3HVl5zzF0UnnLqa4cbk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7Uft/NqHSDeWwdf+/9dQzBoqC00In93Z4MMpnZ2s75xpRRGZt1ELGNxmOauHlLlERp8s+rv06aNyQEfKRjkwT+m41v5ePfyQWShM0triC3ugyKENb6dl2VTDWu5vTkj7Wm6p4+CfGh/i3gHCKmSPQOgeFF5l/MY2IpSfY3V3oZXM9GT1ygAbP3sCfJQbkx7DucLRPfAGYWoxsmh+R8VdW0RTrRYCd61vsgdL8hZoHPaIFRSlClTPN69Ufm1wu+n4NOCKZLGyXATLtY1s2bc2hFmpV1CAg46U4yiE6HUhSPTatNXVNO3b7FBnk8AiTx3dWPtu3k9yGK+K7OIrHgJM9L2fJuU6NabEG+gtAl2UeikcoErNM4YGNCNKxgHFSC0VdM4fDDkscihnYImf6gMRe3UiiHet0mOA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vgywUQRFcZI9r7rkbI3slevvIq9VoKeSv7n1fwMc6lA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Fi1wk27W83xcGcFXjLyHi3XLxOIThT5pAjbUVrDOBoaB3pGWza4Xk9S8ZppdRE6djViOLB5Jr+X+o3N/VOjcV88rXr4ky4/ma8QXpMQjRD/r+DV5HOhB0tFz/hcH6TkDai2Qdq5f8morimD7l2/8F2z0zgG46Gxdy91Nd6UVrBsuBqhhHzcmHL52YWUKeeVqgeUmJtYcRn3+8i8/4dVloWCQm9pnS+mgHVcwMdgCFzoMWMaun9woX6oeVFANQIHRts1Ozz4Yg9oyj5TmEDDR9yyuBGuTeO+YFnBeZzKQJt+wIOxWuO5SHV3N9qInK+1oKS7OP9pLUJYMkut+M5Ripsa4OKGyr4+5htms4h5PPnhY992hHjAt9rkXDnwGgowjY1vH1x4AzOYmAZKEqhiT9NiDNJjXB3MI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vk3vTAVQl+QAAlmttq4Eb9DVPSaB+74ghz5jr/4h0no", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RRPPWDyZPqrPuZVY1YagrnggfJVJxjsoaAh5pa5lXY990+XctLhcZ2zHvHlpxuJufz3cz4YbtY3pV/xy5WTCHZpQ3Yp0EFFuq5eFO/bf0s6cpG0OyY97OdoXfMysZSctd+M3EfhHiiUeuUsGGQgkrhk7YtNXRZwfqsMkybfU7NQch3rccDIcKHT5YXve5Ku6BsTxm27BYlNL0d5ZVWlkEeutNXXXAtCfVFsD6qazO5Lq+lltMaOjqP7q1f88J12ErX/s3RD6iPwQMYQJS63y8CHgkGmw05yJu2EhUZUKhm+qyfVzwlgCUklihdPJa5LONU6T4LoEA7LI4MUXYKVOLnID4bPiNxaKyiXqr2MvkBRhUbAVAkMfYtUXytZU5PPp283O2XDpz98Xg/HkM2WN5qewpflLkdW9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vkwnU2tM27anEMrPEJaRxzhGahhfI95Zomtm/rFwkIM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o5wPHH7SP6JQzJj5LjlW3pEItmUBEhY0V6NrFirrJt4xCgawBIdwo9dHH5PVEC1AdwuTLX0B53F4xTeTi4T7tjA1O6YhHFrmMtMtRM8NKGGxrXL/nObPN3NBzLIUxfQxJyhg8zVGWb6Erqn+hocM8xv+uUwXrUXzX8XGmltxrUwUhth0gdESfPu2qUtp+FFY8kRcvVmb8YPs7gOpglSld3ck3bgbRu7qnM37SoHb1PELopQcmkrOKexX4oaV7VKl2mLQHjqC0ePkcqsltQ5c2cmEv976i+zrzsoONHtmTuTz1DDC+b7K1i3Dr76T++4VhWxkuiICejWYaUJEsBCHctp5fNy3BSHcm1GI+UxTVwB+BXFcMYUgLCT0H+YpPtKqeYtp9MoDWAn0TjNfCzQWsiDtPWHskiPY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vl/fLU7VVTeaCEl6JkJkbvL0I5TOvqxQhjn0NR/wzqk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9oPf6sY0h0j+NFQhG1hkQbDYqohb8fyBXr2bRX6ZuWYd80io5lM0egvmm6euRkqpP4GuVDPLV+1FCzsTUl4ZT8Iuc1N11c+yxR8QpAMHhD2xl+U1kaFTdEOObATqKmJFqbTttXyIoNBdzSa6q5o/ZKH0nHFqrRF8peu50LDXK36FT0A6t9RmtPlN7xf1E7iXUsYLyJE4XFi27n7x3Q5NM0CexFF87e3kfXyc+DxZdbLoxXhLDGtg5Dqg92W8NzsYNsv/DgPl/TQgxHj7QPqQZ2A8N10e4Cw5ltu3Fumxb09tWYFOf8MQH0jOicPC64BOS5JZLM0K6CasNQZ0oDokLfmS7eNFfIrXrtW3PE5czS0NHhCU6HvsklsoZcwz4dT+U//SJvkb7L19IHGw0khw26SiZIuuwm3A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vlW5FQEJa0wHUmi/lFBMSZ9cO3ATIlAEmk1fUUTq8qg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ul7WTXPwST8RFoCokpeZvZ5meKWrsKldrDSjjVUajHNExKCLc4wQk/zCCO6iV7UjGEDxOPOdwZG70YbHIjtl1DhSnOCiC/KEUfc64ouoVyNaR1pWevOnrQWrREeqIJk21k1x5jwQoGhT4H19vpKKdPltw81uFOD8fmTAq/fZvwx9G+SfyAjAhsJsOfHGMqzYMuznD6q/Y9p/kMuVbTh+aUqx6Hc+EZiDLmqapar/iHPHRQ9m0ueqPkWpuDbruw0wRAQyYWFNelDbfOg0qZlLEy55p/eqRAyYO+chHRCQlsb6ivCdzCy965r176IlVEud+I3SN/+2hkFXXmwZOV5bQ8WqdisSHFmYM5UK3J64vIHRtQ6oIB4IAw9qoANIRmDB+2KfELG/up+S7wgE11zz4NCpfAZfMoiW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vm5zz/6G3GH78ADjQG6D7RJOatwDKKGCkLS2bbRQQOg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VXM57xLMLLbHdDNfPSUICtLX+GJ7YD8fiRGb1mWI7Cny+CjIg3BfA8iQrVz3ZHRIFHmE2iAzM0sGUru9wxzHF+rrq6d62AAatpq4G1D674nW9ytHf6vIFljx24y2f4aWsHkXD0VnCp2T8xkapLpQP5QKNJLCl8ggqtDVt10T/h5v/zbg63YDbKhdBhRXTJ3vrGKRfRzekEG5yVqZLeaoUwBTmRDqMhWNYhOu6f6pRhXQqzzSeMXUnbbJLOkw1OyHUZq+A0k5YZ5jOS2z4OV1XbnIXOrBiMMPYwhcbMRlncSvqpXCkE6Ap2PWEMjXTx+vVJ62Y1HF6nQkHFvRldS5Q/P6dlnulJanPaA/3i8fLDQv7LfCovOKyJYoE61oQPnFHXUvhFi87qjyYJU0TyGZrSd9w3u8+y+j", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vm6YagHVs+Lvi6ceKznLRbJuLaK7Jc30NPWUfuQBZVY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1eTb/hHjEZ6w3VHX9G681ePMjPpkX7yvgikq2GsSnHUQn476JuiV+YfAvEQ39cJNd5nw34VqW/R5cDQa/myiuFd/AD3B2nOA1sjCoVk6VWQE+gcM3CnAbeTkKLzNj8w9pQ8jrIb191j8KP/nqXgoTnMBUuj0Gsaboh7MSvsddZjMRba2spEDJhFHhcspg86ibD4fOdFo7oTJGoKLBCg0Y+V7GSdgMPsB0oKTtdRXY+nFTyyqg4LhFU01yZlOk8bH+nXwy5APuWbwWNGXrgcMgLBSiVCzreQF8FanGJ6KV6l0ZBnSEE77VXMkY2Jv10ywsSXAIEG2HU2/XJ97AiK+QhfBK796CbXbwfAUdv/YSTyyKXMac2N/qV/OxrDKKSxtNti8+1Tibh7M47vxgkRK/uH1U6OhvrkE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vmEiqGvpkN3hS4zuI8gpZVCOOD+DxnV6qfPzw2p206k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5Aw8H3G3aVcv26Kcfpl0shjO9squ09Cp9HZkPYKSAOVqVjGaWCura30I7SmPmZ+4dZ0dbQYJmmU9obZOvRi4IpbjwBk8j9k/6Xcfnc21NoL2rBuz9v2PkR4p5PgeuUeeJi7/d8wJPc4W5hEskg5ZEjbmwagMSBbH4r2aLo/gG2LueCowpcXYBKNRvPWtfhhtaxMHEvD4EWGk94vtYoAA0yLHm4DMqZOAR4jgZceRUnYkdSUkY1YIrd6tslDjD3iTMgky5rXrDTYCrB4eC3XxFXxZLB9JtImWUaNZxv/Hxgve5hYHoYTExwOqWNq5Ce4LheQRnA1JPK7VliNsQjEZAYo+ZHbZlmXy0MzyAsMs031DY7izmuON/+LFtMHh1yQSR6VwbiUOmVAJCTIrI84inlT0CuuIg8Vo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vnm57r4/ISsEvAyXBi4Tqyzz9k7nUNus/bHRVQ0gWTU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hIfd9uOT0km6N//WmAYtVG8kFcUfapaxmtscdDUneUn7w0kgVtdhVrWs5JOjIXkB41rOdUnED4KXdDwrCE5w61BgZJHN5mSKEqR87V5UkZK6+NnlPMsechDmTetlr35TXDLfdZRQk3MDNtvMLOMLumPrzWEHkbIWwmiS5J1TUnfdRfQtGHgHbB6+M8iPKVu6bUFF2zWqFbf+jZxNiKK9xVIxqLKUBrRmxt3toVpmCermk2pjAcgeLnAMbMv514At1OwYLc5HpzzETt7/zs1BgP5SIGG97oiyjOtIjGqxeaO1VUfjlBlEwekbiDKdtrBfQkSCHy7urgwm/y6GzdQ5SzI6J9aYHTco/8QT5VktDUFxgjPsOvSFfGNdA9av8gwN2l1C0ENIIpXU5JHb2uTIUskIj8mQAx2x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vnu3hl1nvtoYAiAUbI0mtYyM/WeO+sJ6kgfB0coIR18", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xjzl9PHOGI2NKrEiY0P5lZo0m1HcDoBjO/GLckuugQSZtgnaueiQ4CUUm8KWEBW175ievCKruMU38nftwKPn+Oad/honzmkK6MfaWHuVR9VdVxpv4h6zVjEXgruQPwxLYEKDrq4TkQTlAgSHtNOFwejKeoR+5lilzHe0OloFwqlDXWVCpiqvHgRpqKxNZI4RGl1QmTsiGGfEuc0hDbAVILQ3ZBtjAoLgvAdiBpp88x+40hCZ0z8+kbrydL5mgCS1Jb+yY8BcdYLiRsTkbWBbe/1FIkw+ktKDQY0Adhx+9//j4LV1/o/+U/IiI7atzUZ/qZ7KynqFmjD80+QzHhodQulX/vMV1vJ5waL+dpN+Wc9h6oN6D+bhEtf202FiJaVN7MFR2KOVc7x3ZL3XPUXy63pm/fs3tfrE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vo9sMgKkwR68KtUGRIy4QzVbHIUWkgFktkp5KHaAMFs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Kly20AgYDzRaOF4KmDxtwd1dGRCwXLcemgGJ273rl3tPhjABbVz7yuyyFi7WECbTbETTDyauOZKgPyGcxvYdtZdaWOE16c4hBTPqL3n+uXQI7C4jueEQxYcHz8AWHE+n1pqpZcnGsBPWQoYYZio/rQ7oLJ0G6aw6lor+VWprHs4f6YmgXHPC2qZk5Cjbt5WT+KkP1TQqJtMPRiDUnvG0P5IOVCpxMklvbmaf66gj841qoHexYOrmMphlkRvSQJauxMzd6bVo8hZFlDDHgW3FW4SQereyoxiEGJf8Qz9kTe/se2u++JIgVLc+XiTA7yGWOJ7/ZgWKISp5qqqMWdBUIN93AKsJwatDExNWeJfnUf44euwYngovK/cIwwfGECHyCVmy8NH+EprFycUv9zuGL8irZxHgv5y1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vpvltQcJpBUst5XsTEUICuniRraY4+wFdmAY5Ex/Z7Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nHPcq1nH85jJWfLqn2mh4L3sCIWdF4rbpmItAEXD1EKmvzw4nd+tB/1xyzCYCKNKKzQRwXzZsG51WZYq1XsXdJXJqfTrJ4/pXTv5Hs0tlxr0bzj//9ByklKvKKhLF3v9Ouwi7GoFF0zeqG18t75OQvyEjQZ8xUDabVXrTcvLHwEiWxJ7feSO12v+q7/Q9fM2JBS6F9i8fQJy+eY14LYAKwUJ5dBJ3QHbnwBI+9CxJGyThyUZnRQBBzG1XhGvs5DZpuci4vX2LrWPT3iYe77u1kWuxeRqXh7HT6AlF+Gh5B3gg4eXNj2p9HCrtUOVgBfxebusvU90xU5KPcJ0v3CnDscxhfde7i5V2e/e9AkcH4oADJ3zgxKl+cu3jWZZewA+UR/E1bmFwQB74dYug3+TqVr8nk+rs7qb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vpyIWwmXnC6Mw3Gotv7vkN8HCrg1TP+6x7oqmkIgai4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uL0kzVsaFS2yyrpHUOTJBBSoq4bfNmojM1xifSVkJspddmXB5DudisoGlZGjrjLrratdrCbG4pvlgC5bUj+mljj+SWzNTCW5wzb2+L3xa8LUYQym468QyUczK/4l3SO7STDDjqEvF1wkEL6ViHnuG+pCk2K8Bknvdcwfte+wVmeWneI9VnTv8koleQtLr47YNGdh7mB3YGO/ZezpGoyTGQXzg3JlZ7c3J+WwNuFfMXNv0xYNMTPy4YdsOb0ntLmN8fMCy0FenILdSIA43O0aUbRgCIyXNG3Ps4/7OgudxFlEQNKoinKXeWDws/PTQAeRKf2VdQoeB06K9SbT6KpTt4zgudOKTqDsUNwy8sa0lEiJ//dfnJ4aZ/4XCkMIMvGWXT3mSR2MWawCQ7Ffu55uA5MzLTgZfrU+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vpzCJlwfbTKS09RpVYcu8pw10PnKWA+f93yiXFGCRYs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xvvTXK6A1SPMApq5S8l1fX+L+sZRJnrGdGl/ei+RcRyGhDg30Wb+5CLLQhhFUBC/Qtp3iOHCa9KrIiuEvKcsR09dQdbZex8othr+RMxFp7vRcmdx/KD1Jf8kJTfVdzFxabQBSJQoNRkW4kdr0An+/1TiLM++gN37wYS1QAAUkHwDWt40OU/kxmDEtbJBlYZGTr/1zUgcEzIuFGc/87uAgMkMR+Ir81AB49MaOgQFuJxyXEbe9bocBKJwNe0HBHW3YhFK53wccfXWeAypdx5oGMaq7hjrAv+MsKy+re7ZVNWfgBvAEmGmcrQJN7e1hKqa8Hc6RExVWe1oHkiSwug/H/+y6gneyc6VbZ5EwqAi5wdGWYf8G0SVzvzSDErEerMcOWlO3h+Iv7LIjXJ56TYXsr0LqRP0Wvxq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vpzOUIw5kxavXYbyNXVYBRREtY8cUaqyi1SfR+ZddXk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mVIZ9uOf6Fv8doSLJ/qY42thO6tHhkjm2veiO2AJE8FoAzYIzVL09b61UWRQmQi0CypYX4/oEOP0XyeZMrsnI3Mab6cWibpbDcz8Z8eGrU+mp34fjsj+c/KivAfJaVGdb4kctaqYP2FY1ty7tkMlYcJTpkzV0qdPLvD7ZqtFeqwVGj2j4k8Gzr7xzbgxX0AXyY0uzvyU6ex+wBF3hDw7cqnrZioP5d3rqSLophZIMI6TcNB3IO+KaUl/+Br8jbQhn1LYzu+/Mw0l5g9UYQsYce5nmGowd5DTKFMXn7SuOK/Oz6TKxTR1EKltYk3MmlL74Fm8vyOtf5kJyQtGC0DrgeWALkTUBwBEQoRAco8e1UuSD+bbyA0taRYtVATDIXTEtCG5wLOZ86D/RwY2MTgRP0AktyAE1nPC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vqCpuMSVxS6trcxfSJ5U0lj3McIhGmFP+b/V+qQ4wWM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lYNf2s/a8bz/McmJRjQngqLRRXD0FB2nB+F3wY3cxJBoBhuxHgTn1czbjFv5EILiLfq20mdYvQzAwUJxCVGiuWP1hJ7M/rZgmoogMv/5syACvK9SOrB981+2U/B6CmWVDZibCACzy22fRpEbcTFIEu8jqlWC3KW0SaoQ8gUBaa3NHubIuu5Ro9ReL4WlDvI/EOCkFynWnzE39GfkvXrqtdUKZ0bTL8BESqv9YabbjUpyqNv6eiOBy8oCAnp0M9ATK56boRTzw+G84GsSzr3ZQ41ZlwRztzmK+zQW7Jsb9kOnIpq9swsXcVVBBGrVR627a2xxdKB7wnVan6OwZKNm9bsSMBWfX2IdZK/ix8MW4CcaK5b7U1RmUePM1bMuuyhpGIgeW9EgKmUM3U9gN7DkI0PnIxpUkrEg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vqF5AAbRAcBma6l7+XQlqZ+8Z6bcEsSSzDo9idYOUjM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZzHJm2mqrP4eQyFoNOO7rMBuhe2VjkwcEPkkn0QDxsH2gbbakaHRWqttEAwELs2fcPIYEmG24HonKQwXzmINElm7HiGoU3cU+6aTiT1KPzweBcHfwDc4Uf1fYRy2T6Ya9yQ67VdikGXTIiDDz9vxrwKP4CydwcT0bJklUDwhQ0GWyv1Vs8WIMcmayPix1RdSZT1guouyBUCpuOSBdLt8qBwcPE1p82GJvSZMUijNzGM99BEgFuQmjl9s6ZpTEAA75VFiDMXXDz6B9CcYJ9zl3XSy9uVxHWOF5vjL+xjwPc0TrAxiCBk1GhjHLAx0mf4p8XtOYyxb7E5Nzqd381ZDGjGpeOgV9++kXc4+tCZN8y+h62T+L0EcCwXzvv06SqP5H9x76BT+aGxIKLWnWzOfmbC3CJNlaYdN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vr5EOLeeRh+vIWl52nVmLVj/j+IFO1wut5ITCbxobQ4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QWJR8Du7twR7NF9iW8YKMunR7Y/z+mLdJfwH5bloW2sAEnW9nbp6mIayaLQP1lU8629rcBW5648rJoRkaH06abv83AefXRgaNI/RAcXGYK9QtkQbq8sKXkXGxHldVLeY5MNfU9dL8zWwkFEbpY5XqobZQVSIoFRt3QtTLFF6yr1T3mCFKHt4wD2msqwFASEL2ZZfhTfdhd9+0ybBxErt+6seYl67fWlGBhXPb3NXg3h2fH1UzBcwHEvajsug3GRVPDfFu463v6C8RHVbGHJO1VM+oBrXXu+w6vR2UPdlOQ+AV4zw0hGpcbyDZuyP4CpkfvHAuHhvZ7UkyJvrWg7kKrOdnVbgpNHdcaTPKqIlvZTOOx5dnirGfNWdduBYmnquY3vLwwNF1TVGWSWglwZDe9wt42mAmvx+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vrH7AAvXxYX/6I12GBnLfn8IylFwT7tnPhvwAYLP7CU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/LFT105o65+NnLk+rG+aVSXysZJ2FCXgbn5drQnCMKm1KyfmnRb0Walx2vUvboIk8dcdBIfgKdcjPC8aKQ1hhCv4RWzYZ+Vrnt8corr7kftn2JjgWDRf06KdjpwquIPZUiuc8lm1xrjkRcgU57DSdElBg7G3G/TlZTVeYGa7sUiwh6ywtFQd6Eebr2ZJz6e7ImlKnw5JfSB98d2ncm5+Vo3IRV4IroK4FfHusbZE6T4J2NnZXXp6l8XTBBhh/Rc26vQvi7MQ9CJ8I4oesR/36FvHTN/6ohu0MuThyymXbSd4ROF6dML2Npfq3PRxjL5rXnGILAQSCLnTVhTjK4nEg4Lz0PZSvKLAD/iPXXFH/0s33BS8nmGjIoQWV07O5v2AP9vtN8ev09qM5LgZbxeuSZUCGiypQjPS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vsZZGKDdXJTKs2AjrgO8eBbWHiQs5p/wtOVY6p/aAzU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CdNzgG66aIe1vunnYI3menefEI4ywFyQzod1Uo95iA3/m7aohZw0PUXosKoBBCpT1aSgfnp3nTJXt98alrbFOs6XhwrtmwQ/yBQhR3jwEMwhO8GE+0WclFdsPF3ZT2EfQD/m714Y+00hA7cnfV6h527pGAlIdFR0m6Sop7nJUo2pyX3iF1Be4bBeVZ5umKfu1342kt7oBIRYH1E7Z9lMbsoi1AMLH9SGuv8eQ8BnD3TxJXO0rc9AN6mKqLMreMJ+is97oocAvvRe7EtdPs6SQUytIiPdRPeTVHxdDvVnFKWatlBl8+lej65r2rn4xfFqETyhxicpKzE4GOyJwWTe8WRpkriAKVLWNg3wFEMBHtJ5k4n1ox8XH2gT5YrXugYmqw6dxBTr0wYkyWAf8wphTYnUBTxmrwSo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vt2fMFEckWLIe7Su01kvkZR+rRegTqG02jFW/2DxEIM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "E0AuozAAI8Gy6xbSRJOt25515f8mbcfVINjrqTCdt2zzUr4C78SFYq/Vzulbt+ky9S94XNwG4buOBytYa8SZ+tLAzIQWyOA67j/lVbmEURKGMTeosdC68gvpUrIes40LhHISIA2ogeJ3zEYzNaq9ywq3rdYlu5f24MbAZa6Gfdczmq8/T97SriSVGQM3so6KOKy4gz+3E2kuEQWB9nCc0CzhYph0QFXrWEk8iRDUi4MSONuN22a3h52r6P5otmc3W9BaXzvoc9K86MdP4VfRtXgBx58yKsBIgV0NMQ9p8iLsEwhIt0x0wuV2o5aPtQZP4nyydxK3YI+zIHQG74bbknnuAv/tdIq6YTHmtFceoav+Vy33qDpyfnfGblTbmABkmqe/uRFFlf5TGu35MRVLmrw9U9Mu/ACs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vttn/malHsLpB9EVzPq2qCw0NJfncUbFQg2d5mokwP8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KDUO4ddT0vYvgEH4T0uaJsXyJ1+WY0wvpEdlaAZ/y4T6+3ZBT6tn4/o6X9lEvdsmjdVpsL8VQsUPAEMlE7G7+evZ6Rhuos/SD8aU3+7Y8e5WXseIfJjyWo9/mEBsPpd81kp2fb5xE1Rkw/mzM5WR4609ps18xLCaEUkWRSDiBQZ4uFlAHaDlxtOF/WdxzcEWycGuIG6oSzlQ+26ASk4FEmBK47Ifjrv15LHzc4MFYHoNhYXJf4J3PDI7y3u7E/1XvtznXj0ji/7M32InWVmV8KjHB1rO1Xi4JVHISZoOGk1Vz0jQjovHATuPhVm0uxPsQFdILoZrNnejBaqc0dpd+d3Sk+2dYHOwuWAknv7D7gxF2azfoMHIm0eGpAfRBIXmqLQY2jxk11RlToVUxLOf7QC6lbI6p4tC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vul5yn2OZgn0n2v/U3Zt6jqQKaML/kq5Vqs9C1hCAHY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L98+Ezo1ycyjdUDER3Aol4WRox+EFCEU64m62MOTuaxqFZ0c91lo/osd2ETGkuRiN7CTfZkhfbiSSKEh/CvS/A/AYWEVaEmZSMkS2jWXlMLhpA/NKDzNaRrbSybBQKB0WPQdldI4p+gHzQ7/O3oHeMlT6A1nb21q7fbxj+aCPQ7YSAdl5OsiI5QSK1DGcy3cVQ+vXn7zdWcfdLZ1UB8T3LIauqqCmCVIo3y3bhUCnJgQlAGqunCRPeoqpjoZRLi2rIkBAE1XhLd9B0uY7qWR7mB5JnlRxFDKfcRs3QqEUj344axsQfGJqjLoFkVKhavoq87vpqRkznyN7Y6G6tX+nLukyHcubU4PCy2JfsnLcbtMO/Jd4z4al1JO/VuFFVLiGEFFyxISin8zaUbZCbn8UepBhBXDprMD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vvLrZditqGH/M/wiKjxGyjU6h7aTaCbMWthSNb/FtcI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ap2f1nrnkhL7iln6B1HExIPiy8eHwD6JZBtjE2V6tjxIyZ8KWjs2zZRJ8GeV6p7Z6lHLO1PqNLYKfixZZ3L+QNS8Knnkjcu44Ve8G3vw9xw56aSqHYCTw4KPsb+VuEbXH8HcRoPbrrh5vFvYe56mUBVk6YnxYCAYrh4y1+9YzU37q58y+RPMeDNmLQe5cek2FkLdKAG+NZJB7hWBIeTpQcx55UPyvrbX+FNzGtvats8Ce7DuHP9qEVRDAUfF86SdjK+TblobsaNr7mcmD9lViNAhHe2R5CnwwWNOeR+ZAwecaxi5QFzPg5IGsWMk0L6rVgnO2SPRfoObe09KRR1HAQ+kT3g3oqjxNeXncUMFTk16qPFHT8k/fmuKLpvM1xJTrvjKfa3RK7Lj9Qg32SNEIousLqL0HpvS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vvh3G8fdJn3TJJpofSIzwbgPy2eFp/USO1hNI6X4mng", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "14oKmmlh6SSnmdkDP0VnMmRHUtHVhT7tuZEk6QT2Fk+qlpv4mJ32lFa2za4sQV9Pe4xSVlXPPwk5E0ZKtDikGxn3Vp8fZWJ5Pwj2Vq/hM0qb3yLDglzDZmpJDy0PnEux9Hb6t6LdXq7NDkj1eDwNSmmPPdgVJ3cGXtxnsXanG+QpXYMKZ/AdGFTq0xZd3q243REqcGV/sefdPvo1Z2xgcxPBXW2FgFXzSD3W+Dk7NECLVFuKoOuRJWWxn6g08/lzpJBbR3jAGm7XOhkW8WSOCod++411n9NOyGvHTRjQt/55Tqm/oYwIWbrOJ71lIsb9d0sVTlD60mVsm04ce/gMh++qscF10gI9DNiaWYPdZRyPUFAS3GUMirKF1vJwOluPs0BnbkJ2e8mYE6oYzwnS0c4Z/cC76VaO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vwBmVPuMWy7ykmidcAL/sF2zgagrJRzBC7hd/HdIWj4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "leqaEz92SntXdmxBbvoqwWxgEG8qRBpYfyjSHuh8wCoPLAgAfr15ib3F6iDsGAA2ueWOoS5IKbBAKysJR1Qmr9ZtYt1RHJ7xv8KKNyL4AYzgStroO46klIVVb3e1k+CgGsNC157QZYaprJdGLxis284xORBzjRD+ticnHt8x8+sh7pr/3UKobUjGx3WO6ZV/wOdtOS2UDG+AQ4V0/lpsyCAGgMTIW0HDSYenGB0wjE42V7Q33/0INO5nIxY97Xb8A/p0vr4stIytRcLRAqXvY206qstQcYFYymXxV3s9n3XXtQIvKuiqsiL/QVTCeW4mSezIJMj1zA65nRLuTaw/DJyn/zaVD/+/sdf9X1ecehDtieu26mS3bKHSTDVfuwR5ONr53Km+AgEvkPGNdApblEZ3BuoBa3s6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vxiKD5QQ2c5ebeM8tA2rVuj21ctR84KAou4LxohAg2U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "a5MxhMP1GoxZ0NEs3+5pFzUbbp9OxZpwufPYZkeT7Y1Tf2SbONWkDbCrlbKlAWqItpXiwAZpl1hSS9tenOrcugtt44TKEHp/tpXzu2ooX1ykUpT7I4xJHMIS7Yr12Yc6w/CRbEH16icyzZbfMJjTWJSA0AS4LTUA+wDkwdzrPfbOjMJSpEv9NoHbdwnyQK1LbYIL77dKDPGbkU3rwIRSTlN0SnnYHUQRQprRi9mvs21lzjZmLxW3zuBYmWgyK3N/ibEZn30+QYKPI+TgpwRtDY461fh1Q8hXSVk81DCW9hVul1FAAJZ++z464uiUgzav9NKLem6fRkDx9IVqLKYrmnGXXLklye8/5oLF1cAjFLvk/43QEOdPcj4ioGCNei/6RXtl3S/zJBKLbrVHpkKRSPu8pxCTku3g", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vydUWDp3kpa9CTCWrhFL1H+KfHrhXYv6CVxGEDcSofU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oxQG96qUgfrPRC5Sb3FLILefHbKXmbjeRuiVeCjlaONxTbRFvufKl9RZlmoJX+m8thoFzm4pi3WO9h1C4Tr5SpSShEXrkAZUBbvR3ycfNf3m8XI9w0RuYRUMbI1dFHKdjCZLo8ZAeJiSilTl4PjQT7gKIry3Fef37ajU4fX/10UMiIvyQfbLNrY4XQMAORa2GH3PNL+FI8EqmwHBdFWJ9z9qVsrrWhkSTUji84wPS5cDYqM3AlZkeylkrWd6iHxrBRCmoCecRWtqKDVLLK76rUHtEC0uhj8Dy3RlcL9QNQmwx8B/8r50I9pTcCShCeAa/nD1rn+FGDhQBRpsFJobKVFqcddhVKeSlnykLJD7T6c0RIHsWQvIQosaC4765mprhpJtNasIJc6EbjX10fAh50h/I+dCKjGO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vywOLcaKSP4CJpDy2X9hB/id3qKKD+vHdk/Iam7OljI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ReJU0J7nhEACXRBAm9Et9W4vZ8jw8mkCt/7B36ovsAHQKo9GsUJ/4CbRSFET39ACKrkXcpGKwtiODb3G1HRovOi0p10Abx7QOCZuYjaZZIGoQBXyXtUrajTrW/WFubsznJxi30gjJ3WDe1J3r+MIElLdgp3vOy3fo6XXTDFq1gdO0OMMekxW165UYh5h17k0JpRPjTKzuZXnxXzExi4okEWoMnmiJ7egRhCfnfRXT2jBNVUTudDC4PJ3JhNM+aNeSFTxs7Y5qu9DKVw7djJnClzLqg7KB9vr6ND24k2qTaCglROrSFe/lbVPlyOlEO+HFnEceqcFTOlY4Eillo97ll07wo/NibEMXx61klLlLN8BFjfUqV8tCJeO2g+hUoI3ih/iq4p/b7bDboFwCLJeJnhPo6ODxhvf", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vz+gIQFGtsbsQrFiLMnpn6FL1MNxFrSkzrh365ID7Gw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YvsbE9ExYvpHegLnTQgOB+mGrmqudawZmqgkuYCPdit/trINIkhGV5IAXDiuDJb7Q8GzryIb82H2/cw/Y+uIFnZtVsvKnj0Z/I52cgBXpM9Co+3czblFaP1jvB+YaMWr4p79Trbq25VF+7e7TJsUX3+0+n5A2FwEnIOZU+BNULeaGH4GEdkWB2fMQ+6GAYSuhac7CNkTarMDRAKkXmB32jxN8Hhn7gppcwt1y4SDnDQQ9kdrhmZaIACIq4BQkaJnYHArFukAmVOhD5Ex+CJBB0bvDpuYwYPc5Y/cm8di1PKYGfwnYmZ/72kxKBYKFV3oJmJDovraOOolyoZuE+/KL08rPPDpSPP7v4aZKHkbx4634WrpgYqGBSEvI8vw+89y1ezuXLKQ5tQPOdZWkVfDl13NZ5NaWzP8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "vz9/fewkqSawA5vYmJfOzap38REZl4IdmjCwnIXiqqY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Cuq9A14c2JkGIv+XSZNWsA6cd1FCYSR0LcOTy/af7SoHBu63uejLIjaD6orARuOMW0O1CnlYgGdjRtKc5ya3JKscThsutWum40CGI0jPYdVYuL/O2dqbCgAZcOxHmaAkwbQ9Pgq9rnbd1Fr7ljtt+K6M96mM3tOWnRpBb98g8ANBlpsRJFVRAUmyIu2D0Dcwfa/VJ043cAZrob47Lv9iTvaLROmHCqcyqdSE0/t2YUqjQ5P+B3HYWmbWIVAmHFVGi09xJ6e9iZghsZvfEyV1diMo9lBotKGCv6yGSDC1DgfMqJbC8N1sSM3v++skl/P1sglN4TvG2Z3FSO6LkbbKKcthgojQpwv1yntZuNSmo+0M1ZZKipmcPPefWp8rQsDC6iN7HZOce6bbDos9W6RtankSnSnsidZi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w+K2BZBYAjSezgmsSbBjVuKoL4/azctxVF5+n+o4D/A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LlhZV+f/8EwRY3nvzuFLzArpG9DiXpasI/qPztmqICB5oaM1Gysn4HIfPXaQlkpBZe31frK1uBy5mNHGZPxam3VY4KPBi0UsYnXlUJOW0k9ICDCCDto39931Fm0mOc4thwhbnVDtzB1LKto1ePwSMua/3Z7L/fsa3YvxqbVr8PQyhcdxWIXxkpRI1IuTiEfWEWYASvi6Q296LvZRn+bLqFxc0V9AwF/0W98Ozfgf2UHJ9zUIJeAjWbC1ZhBygdUzW48qKq3IwMT2JbT8TpZyU989fGTva67RzzizQYx2AYYMQj/r98yV+Yb7OdwM2p6Bff7/vQa7VqVelLD+mnHCpPV5NkETRKD6nlHBPECjjxFVxEfKk8jUbnehwcEy/r+XRb/EIBSLER5taWjABFO/UaXUDLYUmkji", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w0hOMCUuo97j5/H/oTKvqlPppw+6ZLPUlCq+oTq0E1U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N/VtaNbjWcBmkQ3PNdI+Kn/p1+m6ag080SiqrAFXGzqpx0N+CqhcP+VVCYkbX0ARCez7truoh/pmhH/W9QuDe7ouDUKV0ewzl8J7ipN/ydwkrlOSEnikvXC/pPYbZMMY8XC1BA6HRASAlq+Ti4B7zhzaeJ+HcXwpXoMBnavr6MJH4/xAjqDmv7LWFdgDqCYKiJDdNWWjOOMzPhv+8KghFrbO8uTlZ3ADkiF4irycOyiiywva3txoSS9If3Xs90UWhU0H3YYcq4QxAbEo9DXE7OHFyosBJ1Mwd6JYddTAuD1mKaPgMyrnkgmncWJwtxbGHvuvHUPSreQSHWA0E6zOiN29G/qHz9r+oEKQQ0O/AfWdFkux8cia1+S2/1jdn4J92SMB4zjQpY1QyH+yK5KoG0bCxbXqGESr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w1QR/I+0WdR2UMwA9bsZwsKqSH0ChIWda1km0gPBDwQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6Bsoou49igLPBmEvqvByQ4YYUAru9T+B6qCPGR8Gpg5cNARzd6UtjWZLf88lkkYNx01wKZOiKGwI2v1XVl1RcUgnieNXvoSyJvCN73dGSNI9V8+MKo16DNeYv/IL1EBxM7WDzgOaWNHv7xhabA6LYRw/ueT46CA2yugw+rpTj4TcQ9BzxweE5NprBHsrv4N/hlcYDyxiTmtSufsdF4aqoh+Q86hm/5jp0Sfj4P8rYPjIzFhzHd7jdo56RgStIs7hNUWnDf21B/7kPhqqpSCZkADcnZFPByEqLk9M5HEbC6doeOePwaO0rA9poNvXezJ1rWunQyvA6VOpvDCfHhQjDA++sGvcwmQbzrJP6SC+sOjxj2uadYi3wtPVSymzA2Xr2z2OGDgXJVjsc+0Nxb3eFVg+CJRlHDqF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w32G+eNEvjpTWUCnX4R6eMOm5tdt01re7LtVQTQ4daw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lu6G2J0Csf3uEQnqG3UbI1fAsCwIDodFYylm0h3P/xAch31Or+AA1HyU79f+lz93pWsymvWhIAhH5S2g2evk4Uj5e4HML2sqRhfxQI167qyaeTxJNKjXLxJ6WPbEZVFmLadzXkK/qCw8IuBJWVOD13bOedszQdThPsuo/xeYJFX1uE//aFwNz0q5P3hIExQHXMSFpd3ca16i3qbTMxEe07HkX2c+F9KcjLAlZAPOcdTWecVavigJi70tJXBmXRjkP8NUAmaQP4VfZWY2bwB8H5Cb74HfPKDaQBrCB8KM//svuXhFXW+4BgB1GtEZSkZpYk4KH4clNeBAE3Hk4QjjlDtGoes3p/aropJi0G54cKH4TpiKVZIgcDKpdTDr5oXd5FIK9ZcY89VI7grz5TysQSwgRLxlXt+C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w3wRpKLwPqaqpiKYIQe7GNe0EafN14O60q3OSEWfgKw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nTRkPFRJiViKvcgwVzASZdn0jYUh4ZNA/KFKH5lPjN42xhkl3QmZoCH5wJI/rsJgqo8DQ0OiAulCmiBhJKLzWEmdXDe8EBG7B672HolvT+5ygg0lYMYh0pWWJ6oIxqBWVHtlwf1ePFuA14Rh0q27pGdS+4rG3/IhcY4iZybL3iRZ9CwslYHzCqk6GGnNKHA62qo4K9gifibHhCtzFpEn+NzK3HZ2w463nJUghCSYjFiyYCcfng3wLv0u2pjNr2UdjmElcewwqGY4rnLdGP8yTT0AhZ6UDhxQIT0M343352Fr7d6gruhWLbUCLMVbZs43bOiJBJ+o4oy9G0DpR74qFt8hM0BxH2qkNm+rKzuAOOPIJnVQdEqEOGeIx/x5Zk0ca+GFpzddAdOxzMBg8S5CXCrIGXTNCEqp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w4XHDGIsLRYkY1evLnU3wVGkzeL37NkXd4Ygdb7dPqI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kUMyoEiUdWipm7Ja+qQ++6jNez9wM+LgWt6cdKlaCsbyZM6O1zWJIbEq6OA9os6b/xsMy1uTV1mwKudPGxY+w2WpMwye4ZzNTFJuh7Al1G4FNq3NxsdboQRGQmv08k5yRIqSPAHgdNH31FEoD5DAD78/EAI5aGCKqqX7aPWwGBFOi2vksy3O/innm3HRMJSf21kitQ+j7Pl4duUs7ciCj4C7Fsg7PitdJBaS01Jc5dWkYq8dys+uU/0A5lBqC+vbindBk7AgD+B2vSy4j97rMU7M5yIuJyHqwDeSBhh8OnpiP0tQanyWjkvm+gMtRp6RkATkFPkfKiT6PVWpATQDHscTA9QogQa7K3byG4mMFUNYM1gcqGXDkLIfu1Pt50jaoQth912VjeWFTBCbkGdd9WieAT+zotSb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w5XOarLasf+CaOvzwIrJUxHyO5YpiZJpyjtS8i4CP34", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bSl0B3ZEivWVC7hRGV+0Z7scPTZ/e/dtSBMBXLso1MqN5xXiVMaFe4nPizuya+KmQcXQk2BxmcYYUQMunOkiciK3eWS1EzvyX/TpniffSH9u79c4tIWQQ61Vr8w6wJ0xhsf2nEtsqT8pl3TJf17zlcZaKF2J+9x+vblEceeKhovosL+DymoYUEKnBIY4dX6FLTGBxrvHtwbAD5dYE16SJ+B4JctVH6riWchIppW8QLv18tHIANrO9pXltZNVpRiZk6wBsePbkxhYl1G7v5X0TpzMatA9e9wpH8bBQHc7PAlVLc32aHO+o1zr9r83kcAaZPvDgboCwW9Nz3VH7MHRd7OGtzFkrkH/iYvaoX8Aj0qe0A5RIMDxotWgIfVCX4OwALWWevgS52SPUpneYSdiyK548c40K7k0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w5y85EXxhFFb6TGxbWP3mBhHavz1JB0jT5U9hnUP9GU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6XC2VQvKbJzMZeI76jcQJyN5GVjQAqssvW5MlsSkIfifjDZAOZHgfO2M11qazEhV7BkYQx0j4y4K0P9speBI6/MbwyBxoH9v+iVGvWfFSOxzfWox3pjFlV+NFd62ZQTtgwoTXOe5QJbJYkyHcwWUw4GYwgvn+RShdRK9qaNC1TNMLHz9iPUoycBkRiJEavYjPvgEaur/mpNp+CTfgwKxGzERgGUssd5R6C6BrOg/9Lk+CGRfaIT7mZ9bQpyqTAaSeW+p+FxZzhN8Si4tLmKh1mLB1A4CePLZdRgjtQES6f2wdvUiptu/+AIq1fEGTIzYrVTe8CYYktkt4RhWcRVDdjfUnCJ88W6q0324d8n4F3Lu3SP2Hdbwu3jukTnGhKDSvwSJh4wJFMyV1fjvRUdC14ubYOTYkFX5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w6Dv8Qq1E4Mj8XIV4DUuGMFJg4Ug3/KHmO/8qVRgVYA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tFa3dH0kkYeVjWlukosRFncWpFqDMWDsKOBCX3R1EjICy/nAgCjA+ups/xaeDbhISLgZqO5JzzsCAZh8Y9Dmy7RGzbzRmcoVNUZDk0UjE8Ln6NbbvKNrTaO4mrTdrzd+Qub86mFWOueBqXO1SSanY8UF7+I5kmtHvwO1pUnU11vV04AzeUHyfaforGLt2ZKUNpZQexzMhX1ksxlTITRApDtAsNwOfMrFRsJydj7oOudvYHcuODgeBstrlpwa7bvBFamjBPYrOCehXodfy/MLvuT0F9cuj81Nr2XMNzJCcrf4fnNvKw/NOTmJazC7IkZL1QOjTQ5tPCEZzhsUhXXyzm6EclbBVjVEvvnYwnWBoMuz1vjCPabiX5098FilGcMqC6yqSkreED3/yswSy9Gt5QILYK7ln4/l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w6U52/NhxovnbBO5ArVGZ1pIJ4EKLGD8G854df6L00Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B4Kqi4Ikwq7AdLzUqgRztMJd+7cdllnFhGsJ5e2D4sIa0qwgtVdxIVtbZJ3Q4JE2gpV1wWFAmOwu0NQkBk1TYPUhdXNzWqsE0A7mWIgYP1ih/YLrpaMqJfO1RWiirQn7KIDXHja8nzcNn75/7VvXJnRfScAPeWlIX49Xan5fknk1Jsu5++GsLmSSRPGWrOq65Y8PfQ/WEsNRHTjL5H6p+0eOKh6JZg9EWOpgbmOxIgn6CLcQoMrOtKozAXs/BP3uyaImE6GH/BzyK9LLxAUXLoc0aVEmmVaoj5DqW+ujHMktd2t+mdmIFPvTjNGY0CWHSiQeKSYDx6e5dqUJ2uV/Ay+AFLzjGcKyMCJdWGcuhT99sDDGz4delUV2uJ6m0taQDxSyeHCQNMSbf0HXwaANALKjWIqI5S0/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w7PzEhB3Eyz5nlFAWjmMUrRMCprk1AYzQunuC213vto", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FIvO90FXknxNdAHEAPLOkQNcVTO5R41YfB8SUUgTZj+SBvNi9kr2Efb1JMFsximcWMnuCZw6M7FOUKdUK2OEDk5xc74gV45riHJo8lkdC8KCsybbwGAZDiHM96iVVU09P/qgy6oDMST1MLqIKjQxyNC2LwF4P0oYVtquOVY++rPi0oddjRr7d7Y7aDsw9NuIpw1YwqdCkGLe/ik6SbVnlFW6kYXvkXMxQCuc9NV8y/PKZjGHeSEmQys52Hr5M37oFkZuzlYLj+zuhTDR772gemgCADXNiubqxk+MxqKgV/JVBvOsIcZarAC+rag9Il2p9OybzGouw21/CwJx2rgtAf+COnK+eEcSy73ZPG86pfV61u0fng9IQFoBu9zqYGn3J/T5nXzvXA8uHtHetA5oRtFJ4oa35BmJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "w8jfzy+6dlIKyuscFOY35hgVhU3g7xMhLeEErlXYmWM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s51DH4junUZD0W+jbCaXz0HU30Qsm6AxwDxTKuUbj858a/VviDHKmRPE+vTjppgpDRm5WtFuiz/liUjPB54oYcEfDRDoPrOjSz3yliENs6rJZEnAz/+VmIpKSQvLYXwvspGRCDL7cM7GWqs3WXRE/Sl0NilqDGQKDabEXOog731Nf7r3cmDIIiJv6YQcBDj6JdPF31v8v7UO7ZhOVUNj/4K1fBrXkvwr/V/YxVElJa1/1Q3RMQdtgJ/RP78+t0ntxzfxiUvnpBo/nYZk6K7WpcVwa5EkHmV4Ht/CWLkDT+nCKsbRq+CDEsz4LBRVl1blv/irwVMTlEYPDOnnz84CiEn5xPCiFOiL8g96/eZU6RB5j1qH8dvUsu7BW7tSRmAFkk+/kaGdI9sPw24N5im38Kv27aPLyd5Q", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wBZ9vKl6AMf/grm6Qi/pIMbsYMhX+c8DsPgktir+vZk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0WS0v5cVSZ+b/u7ajrNsP7lxvMMg/TvtHHD9S0J7wYi6GDvgw2yAl6919LbEbavbxtpfAOpEw4OJ+CpluII8dbVeTueBIjQfX8leCsGWMe7LEQBWTBKoSexlQJpuxYszIftPb7a30WHFyagfIJK4G0rA8FFD0UR23WMiTb9siemqGOwCOKMUa6CmF1/6wQhewy8h/vY9t6TF4CrNMgGdqi9wKnt0arEXlm5h/q5qEEE/vH6HnFCPQKlMIjt8V4JxTEl2zhzHdz505iWZw25gc/rvC5eIwnPjhvsDSAKNNGsXq8t0B0coIngXHBnE3Q0RSZCRnXy2EYdvtHUsPXWjWZHE5l+3WAGQTzJZmnoaPUvVVXTIHYajXoJJzc29gRQQUUfy/vsan6ESuXt/DG0R5wP712ctgkZN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wE+AnF/uS1c1fl1/137g9NMA3vaRd2anUwM1h0rxiIo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JigRdLOtagv22H/EdC3sg4cvccnXykPDfE8z6aXQalxw3ltT1wPgL0x7Boyi+ER9H51KehqlOlwsEx2c/mKIvXip1ygj2zXthaVQPQQmC9+F4rre2io6mEG0VXHcs7Hw99F0zwJA2qx9zqbxTrwBIweWq8U2AdWOsugZaqBBITB5HgbXTXl6T3H6OzVoByFqYJUzJVZusBt/49DKVcxNV97MU+2YwtUK7bRq2EV9SEd/huBZktSdA+DhbGOlkdX+RUBKljHRtgyzlxCGeeK8OtzishnkiuOyXkvkn9xPpW9TxeuygGBqexuJ6HPKIYOylQjTTACREWTCSkMqm78zud33pxefEIr7FYKzj9hueZndLQhtDlf3wrDm6c1+2Srs9/S018uDTcAp6NjVRjL83Y70X6XETJM8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wE58SdpfTNcFc9yhxeh1ZhYtIGJ45neScj3eY6SVUjc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jnhdYT4IRWerDtJ7+VGSy5WUXgdSAQFqTCXRhACGM8XYQB/Qs9dAIXhJu5gSmVzHwMhW4rCdxqgZH/jNCtt9gI0OQdqWYhEFsh+kpFmBkgMZ8FcZSKVX76kU5szZt4QSIIrZiRhjlMyQOo1iSlMt/SmIuPAJlETZmcMgh3QmueEn41+6/LslqG63W836kvYTI2r9eXJ5A4saXa3VedFQHDvIen4INCQCqudfnHUj8EBfLUZ9WuQBD/IwrrNOBG59X3rU/xAjtbsbkBF73uxW6btObKCWpMVZ1gPN3VqxsSeM0VQttY2P7KOuwCSBT4/TjgI+orwR9pLJvyrAKQXOKxQLULgRu4ZFX/KykLUGR6tVzPTuH63nENNCShCAzqD5/ZMO/qDVlLSsKiXHe5oEHwmO3ucb7bPZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wEKNEoYM2/zqFOiQ2rVI7BehdZRBNjkQ+4/O7p4n1xE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gVfObLmeZdf5dZa92a2O1fdcOdPRg/vaPOyMsbD/EFkWmcUmoQIWL/CQZ4Q99yT9n7Sp/5JjwAPAwt+TXkhVtlgJtIIjUun/VTU+AP9g8hB+iL4UOeUnZ02UmdcXXZDcSZwANvPNomgF2jtaAasFTCZJlh3JSP2bVayiIFUguDOzeGj5DXhS4JwEH/tKyFN3A6YZDi6T6dbbhI5f8jAhtkYM21hmLM1kNShPYsPKzhIx87JHbJjwqcowGVRwQvsClggwtJNjQGGYdKYT1xU7OGs9fCUZK7LqtACgkqseCtsY2F/3IGb6tLmrLcWvKvmHcCc+DSHKV+H7rvJRpVBsO77Rz+peE3YyREeDB0GdwPtYppybK+m9FJUqFCNauuGScj4aTeQrQVenPLQ2QcnoLq4Qe1A97Nds", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wEfNI2K2wbX+Rx2PZL70u/07DEi0z4iBTPAJAD+68v8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vF0ob6ATuasRE6p4eqSflrdane+7bfgtRYjJWL/rwzl4U2gjnyQ7Gtb29qnp5rSlPP9d5pb0ADu5YBMBSSU6Z5J7wqQoI6v15Z9VFormaz3kurzSWLjhSvjGqAMKUEes0qWw5Ghi8rHYSacTyXlw1LSqvLyRESaMyr9U8zyr8yb6gNkTtRxyapRolB2+Lr9kITEMQZoivSU5IVSRldpBur7YQXJB9P4W9bg/itMzxdvAmLtg3ELzLxbtjjR4LCWNIdfvv+G27l+WcrRZukbtlr/83dkRhfWELccAz8sGKBnIvj897e9GSJfapY+5nlAOMjmu9OxIW52zGuch93h5Js/svot2Ahp5SyYNZ0UlVAQyupTVqmfNw77ESrTlL2Ir8YyrLpHBzN6F0c2F7wpkqq8nCtlnfglP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wFbEeA+/RQl98DO+RcsgAF3KcvE70c/cFbs2H4WhJKE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WA0rC8YgzaHfB5scDbossWer6yMcKa508GYK0410z6K8fFJgKgCxHEx8VVokDaxcQxjAcQ7qTk+PS2nxmOtRrhKDpoRHbvjBr9iiDDUvA9dYp0NHNH714yh7t8dWM9sm70xtIEdi2HXT3QRhoPIrf7fhxuSAdFWVjMiqB4xnIHjKVA+tBgMCTTEODMBFavH4FWehax0E65Ezu9oYvBC5si5688kV8FeyvlL1Mcxzb0CNXL9M31E2QiLmi7ycXFlEeiVwWXskVZZIQnsil+0ndhu+voNyVo3GeJ5bZHLi0ty215Rab1ymTyqo9kZZvZ6vj+sLfwpYp5NUOp/z4wZq2kpdnV6nzKpJ527WSYHkBcpEPjWrLKF8nyibuC2mmWEfuBuy1LzJkL+oNxBsuDp6okoTtkNZlArt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wFlfosHpyEKTklNDGiJyhkhTmpb9VluyrkBM0upEt6A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "inwEdAY1wPX77qNF9tzj31T4fCXvez0iQ4j6MBKhrxmUQdZxB27m/7QwPx+NgGnprA3iVUM17bXFHwOdmUlVEV9b6cnr/MnwK3a/FLLBSq+5KoutJm7gbxbMnUHOZYnZIgCvBHQjqeY0WyrY88OIC5anvXkj1Jv08W30JdhSmHvAf2H+KLu98kk9RbCnujIrkC+K1Wr+lSP2GNU+VUK1ZiPibAovEivuRH4CXxIC/sWsAj3dEINC5pRE+syCEixs3alUSL6wUKOb2muO7tzP/Z6S26d2p7EzQ/tiIeRib7c4HMTN9bjkbTf3O9HiuaHDEBaSisMzVyDFRvvEFhLJQz9w72FuMqMBuCvqq2VInX5K+aZHJziFIGrBY7sLLF2Q1K4CuNogIoRAs0pIa7ap+P30ZTQw3NMm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wH0JWTfz6S5tdqAuRu48hyM3adxyiBIRbr5aXqNwlkY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m38HURLlZB1OT4IXCcUfvoOE7hfORYTvI2oGpTrtx6kgz46p7RTHBWjzfWz53sWrfHSyjH9nQPutO77JfrVBxJ3XGsUkioUXxIxN+BPxcHqwZoOq5HWx4VVvCMkmm723tiGdDP2e2GcImfCT4nNBEybphwuHOKAtIBw9xOysG2RwnSoqDd4upCJ1BfdpVAlKWf63ojHhdh+9+COgdDgNpWIQogHbl4AEvpOhV94+q2n9jk3xOkLXWiADh1zsKsE1AVscNfOlKHitQHR00QecyjpkVT3jRvX8gd9DPbqSdHQ7F/GPChz0Qe/faNmPk5V6Kom8UIY0V6DsHbKtEcwnT/HFDFrllwOh1uTkXLmFGUajzEGu/P9o7wb02Q/FlHgtnXVoapjLIWBl8u3PzNm8kY9PXpBLZkT0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wIivBYyCO6mXAkkHftsOs7oeLbis26VihwddZ+kZM2Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QZdRb9RyOcxvrAqP443ImbzCs2Gv1qzdbXUkChbBEBOLMn0D5mxXOM0vj0jSP4ubk3SsdVj/qr5a/HS0o7FtHnFXMJ2OMb3+gnF5G8Vob4KEJG9E3CyhdRwWdrWNbLcWF1Yi4p0+Q/Gj38dzLLVvfwnWU0sA1+hvC0gCjFxuz0F9nq/aluoLlyhBH5nkVCHlcGfN5AAlKpBFjRr4uyArxaEcPqOZzLWRcjLmGe3xtw9NFci6VOmjgtLPVWJypPmIMcdXxFZ6HoVdBt6dz4/T0r5JI8Cz9ezc/RSdz+1CMiLy6cuLLPrDNOKenhR2iSaphqy4aVF9L9LDAbiehw7kWn6+hqPnzyMxKACVsOEfE7D7UQOR0MfxpErmTDW+yWmzV6b0eUY/vaL5cEs2SsVPVJa69BpGbOZN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wKHLFLwWZasw1Qvbkmc0BUVo54iQPLCo1XKb0cORW0M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WHgojUFeodY72WRw7iIDFJiAkyULpYEBtjceEuK8w+5Ii6FkWlmc68zp9MUTveOdE/gc2c5fCjb1lEoNZ5UJcKV0pAz/zHhzoHEynGSkLNoa4Kp1MDuvb9QQSoEDHlRD/qOoVoSeUjDPHvz9XIspZb6v6KKPKJNBpleCxX9KDjSIn8BXBHLIF7rH8N/sf3ok56oCoFVCQIuSkFreY2s744SJJF97VD7vz/bIpAUCxbjehxmU2oltdhCZ++WdJEfAz/dRYPr/pA3L5ZbnmO8mI5R4v4yhoDRZTXFoYruSiNoiNKLipPjHU1WZlWvpk/AlSEKtGDaq08MlaMxa3XqZi91oitRe4dGmBfPwFJHkfcXmSpkhM0JYaa2aVxbKuzz2xfTFdi4ymaiCy6IXV0eDy5tgZiwxcbjP", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wM3btfyR+Wssf/6a/weJmkAI9xedtZUiO3FaxlyAA+0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SoPIOBUFfHJ7UbTvl1OqKJUy4krC8Wfgd2S7atet7zeTqfV6o3lRTHLaUGR9G36AV4IwW0roOZO7P3ZFYbZAN1BcP2iEQExV6EB8eZ1WIG5k0+dsS+PMc7uG2Fpcjrs35YqvzpY/tkHCCJ3MbrIgmwr+rhlWyYDuLCRUySQzgQ31R0ObV/yCVlK3pign8mwGDBb69PzbIt6KxZXCshSeRmOYZ8UkiXlfIPqv9JhEZCIbzFqAfHyfqYu/C5p1Zrw7zIYEfqy3KkTTIueP2JjYdqpiSGu1IGzmmDfrwKJ8Tul3gEBwlFklsJsIN2vm04jUbhZBJ5TkWQjlDYHwQFPHWdLBmsGcnQqaY3tV4vxksxIbY5bQkrgT7Nx3rnhjbWUKEOY4AK6b18ntgGPZMTORkreiMpmN5fXE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wMqrawBfTCjjBGSXJXuLzx7OH59PydODym66uVL+pxE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xYnfBvZBBXNmjVtl3DHnVZ/QXatvPg7Xh9/VPE2znBBdtLmcXr4iZ/Y68mUVB7tpo2/zrJ7nRwLHDZ1Uu0PL57Tr95+kTlMzxPJXzJc/yEAQNb6ALKjprRe1bjjqeixGPFOvgcDnckkAad+X7oBblQR58GNRk0qXQPlDEf5dFj2CCyCZFSi2Kny+SRH8pwvBY7mp0vxFv3h57xwjY96On6DjonZSwHDxlVT5HGNUt9aK2wpgUK+do9cJ5YzhsrEldgck8YJdDW+gcpyAQ0Mjzv0IKMUghbFkt9xufhmW/LlCnmFC+EqRg4NNzAQyt5OU6ltErdPYuH/2bV0X6xqO0jcEamK9g+QDPM+dLonYeO3Mu+mO/NZwuwFjfMqbgGYaf+uUenHMcWoFIfwbtB9Ybd1UjESJJGvV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wQgKo9BmVGt48FzKLo4MjOqBWRXPBIOtWWOSfvZfyfQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8kuOmHgrIzxNC3uQdJwZ5jdy9ZplX3qOXFfWXNODtcENNCGh/8lZQqvlCAsM0s1Ny3vlRt2VkMfmIssFxtoVDF9tSI6v5GApERrBDQ27RP4/IUdb4bL8pr7wotdbI6WzHndVH/apLxRSETfSzd9e61XdcFaW/dn+1HgUtuTZzD+Ep5MVRlfIl65YGcwsAflPqbmDbCF8wSnJ6ZjJzzfp2mK8CIe6m8u0dpEfsJ4UGHmQdS9RB8C9LpQ4FhMvNHy3zG0482x24sBFCDAHHxsZcCBu8SwXXI8nSeO8Lw2VT/+eAFQXdHEEBQofqHcTPiG/TMMiWaXZMjZ71eEDHSjXJtbfUg9pPzWbqSh0COwfvack1b3YbKeXs5oOEPaE4RepgKxzVX/cfCDC6nledIF+oe9qurO1H9t9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wRIS+Ui1njx1OZY9hBWEddjHplH4bDJyQ4u2F8q/yhY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zd4eAmOxYmnAFHcqEsXkzneGby5+qKL/1UQ8lMZFjeym3qTIypEYfGAad6Rl0h6fr3I+RSK4GaXrBQtUblm/q9NCxrvf5LHLbj7iQNO1vSz+UXRGWrXkAm0ZbnEcsyE1ABMiS66tlggInVTpqKg/Iqjwpgaoxxg0l0ajy9LdKqKNC1+Z4HZCcd45WYP4nqKUVOY0C01nL/unB+E16vggIuECav9vRZEXjenA92cTPbj5uuf5NxpYe0BSIKNIxcAKHRXI05ReadONNNo4ekNhnmMUh6ikua4hG4xGntPVsulTRtohMEiDzQi6pkuOxeL6Uma+Tsm0AqJZlrrWz0HBNQGtkNvpv0CCmwvLHnuxHj1pYLlNjzGf889p9JQ57OrclaF36TUS7JMDPlpBHxUrrkX1RDck70vl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wTs/9vcbl4OPd0UNiQ0vIcg6AbpRZEqGnExpUH6T/OU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6H2GROxNnK6u3ORTEtc1+9n6jziZnDdWoK2/GUVZepfruoUCgvIfjSNbE3jlOqir5hPtW6bY7ERGkDMIIArESrecJvr5weq9LE9MX7Ach8xD4a+D+TQaTyvoR2ZWM6Bo/EfQtINb/Nx3bGK2RlMiK4agYWxeFRDEGeztgYicQE6PULSNsAI7cdiZwebMiA0Vr+k09E5FTtCwoRSrG+xCobDF4iOrpENs1viUIWnihCaj1IwIJiBs0R5LLTC1dX5JBm7+uoH1bCza9N2a6WOwCu8i3Yn6GuBzW3bYt7y69Vx7hllq7oAtq0WHRYelLCbdGu0NTXUUa2Z2q43T/vYQ0LDp+R+QbYalzxp0pgkqBWC9sG+DX2jJwI8bsgpPHuUK7AZZPCl5kgc0k4L4t9byoxE9YBcDANvg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wTyvgBeR2Vz0h39rVoQOSFRTMuze1dgcJLn/Q7TusKo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KiE69V8Z8qDnwpLGyqUs0dCu95f1HF+6+c5DsZjprgexiZE4HJyGH+ETOIjljFtsDFxFpV8RWXFaNff79xyuXxlarba+vYqe4zFKJqaQs73mJ4Y2CmSxg0wvDGuXe7bvwd0f6IUN11dDDYUxWazZOuwS+l8XhR3Utjyu5M3fZjgrQ8mGLO21Mci7dF/vdu9N/GFcLmrGS87Sehe84LkofWlIefFr7IS9/d40/LyxAYFqoalc+8pVsLFv98AGEC0K92kLWc0FYCpeCsFcgG1LBpBOIexHW5wx6NF7yS/pywAJs3rYkX42CPQlVut0Ons12YXF1Unj28V/1ni7bB8vP3FpD0G10xOZmyU+UPvsIcchJWqq5LaXmjLPa5zEdmMIa3HPVIFEAIgmw/yFjpsExpI0tMhRiuY5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wUpHl9G5f4g7cLTHDpRaTt096cJTBbF8EpRIspcGPkE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NAmpnaD4xNA3EhbkR14KwhehMmqLaNSIBzKzDTULsoBQwMCT8YSW67/hGT7wADySuPMV0hX+qlof0I5vMh/iqgthe7D/41gs1/3vphzjGFXAIQDHVkF9gEvfskuI+53pmeuezoRACELSW1ClmvGjK3XzCfLxzDUshGzROY8xrsMhS2Mdk2Yzc8At9OGJMNcXv0/qqp/ZVNf7S0lY84U4SJbWP2lYZ0uf7GWQ4qXWM6kpxM8IaI1Ktp0wxcVLZhuguKyAtYSOJ8Mm6lxMt/yr5zBSRLUtT+Af20lHfb+c4D746myCDaDJquqPo/i8pZKDmkzINWQtGiviq26Y0nCh/SYGhBoMuwbTAeiK48pvRhWQHO8hv1Yzxb6vepXkse5nQ47pgfwzztczWNLCXJvR1EPDA/Or4obn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wV3LB93tGpsNUTEEIenMlhomRjR9zBaTEQ2PIuJo+Ok", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Tk8679DUhzGxn8fLAU6rOuncCMfG3HlrDnpnikZD1UpPi9eXmBKw/wHzygVuQqMRRdYsV1ZiJAvdKTEmRVsWUnt6Ugbg880C39jjUYHyXWib+jAlPDqViBkdVVm9NRYAYx4YE/VQMQdUo+Z9pQVr4f/NN4NY4yjAaacCBcqZeMbhKGXK5rc8Zm4EG4I+gHIGcfAGV0NYx5aFCq7rhEqaF7OjjzY3s/BkGebTNcbcsw1K3DXSH9FdXmGnNLZASVlMqWfIQd6Zcu3uDvmex0dPWOl96iJ4qQvXIvFOmE3arx3SjgSyfOQnFUIrvE4v3ci5oAJcZNWKcfuie869JTSGXih2Gdau8OEvfGYp12WZHkkBsp6W3T3rKj6naL7xe3SX4+7QxrGTfnuh0sjYNkKzoYPxk1qMFBuS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wVFMPEFF9B43elV8dbM7+oU7Uq56WmQGS6KryhAdbeE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0lul7Q6QKbAIqtSEw6qkRsV2Rf2Bpfis4P64dpo9mlwJ+DX2X7Vkp7lcp+8wAYIkQl5PCcW6Pt3mWI0fjMF4S/A0kqYad0aUEPgXxQ8A5ahdYzYzNwqOom9uBD9VMe//6gvMDY6kLRBvykn+JnSkpnh8G4nSZkSsH0G+/YWwqezHJYxwOHym2PPAgdc5nxwwYc0FnYC839uIwKP0N6XoQ+Pt+izCe4DGRvOnvvhUaG+priuw3AEUXPBQAQspIexuliO5vCsZl+onhIjeD6iVQFFh6mdL7q1wUdaKY/BDJ1GtaZyc9pqBy/xRNK755Dpc3L1ypVBUUc9WO7uElO7GMu/KG/sU5IuqCKfj1Ek027ZR+hNCj4f4ucsvPL7MAQUQclPzfKIZaDx0dyTwNGUdSYKQDcPMvS2d", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wVRQ24Vnnfd4rOz97g7k1s+NlITYPzaK4cvEc7CPs3w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ncymotCGXF4JVxCImz3q7UZx70H7RbAmwbNfn+MU14VKbwXtsoxNrBsXDoZfWqxnu/1Udr1AUutCC14javvY5NAmUM21qaAtUK5LQ3JrWQ3Lglvu/CpGuUyAjRqI28skAk7bz/v5T6ZL0/RVUdzmPwkrtPboin09IkjPnibJ5q74rWbB7MiDIX/xYiXSChJ/hXO3QvbaQXeBBThoHzFOX3tQsvGIKnlQ1tRhXFhU4VCzYJw26SMqFX2fw2hRUy9UuaypHZhA2n9BoDuofA9cVaOfFj5UYT9RLgc+fnpuLeOkjbLLeCwgKrvohan8V01/9b662rOldYgRCwCSDn/YcCBU/NM4B5Gz+nIDHZTohI8tP3tAWnAhfPTxPNVsvF1UwQEus5NNGLizz00rgtXX2hIyLglyokTe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wVX0rMDIcawtRfnZ4YJXJeW6GxtSi5lq9JAvFrNCrSg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9QgeKrGOTniDOXZO24x4D7s24It0+qOIA0hYVSaw6FagfdH9pNRCPfPz9+nD7t88VkA4qhrxy5B5sVR0Te4D6YuBz6aXmYYjVFYfBKGjN/Y2f7LH8Hy8ocVv+OSVoB/AbxWEDo5rKUh9twBwVqaxYm8Y/rmgtKo6N4l5ZQJXkcvHKsnun2V5Ygi+lNb0ga1PQ+o7wuHpEvcXzToUba7/g0vDzAHUjCWHWiu6ZDY8G+5VMGomuA4PYj2psA25WTtjrnVK3XYWqlWP3j2A7Q0S1tMKiLjcUqyDsV2rmL1t/rJixYZ3FRw+qyh08Vj5IJCIGK99myRQKsmBfNH/LodRpByN1dQmGWa++clOrC2PHs14H+HhxFabVwYuP68XeNtI8M5u+G/+ehI8k8P1sYUpe6sc1LZ0r5IH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wXN8ch4nq9Q8w7axVE3PUhVyoPtsK/eat9v0IkKISGA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "USZLud49EvCTnp2hKVpx6xY2FwMRZwu1YWnGDr3F2XAcOozvDNTPmGn9Yi+RP2f2I/b1lbMmflvkMmUrG0EOzu/CFdfBcm3W39jSGFcSgA4sfsIvobr8ryCfeGZQkOij85OOUrPXuTauxtQp8vnHuvQNInqGd2lm2ZxjLX7BDj59/jNGot/jD2wcpOgqdwX5p85hIw5oiL491wCKyw13DKYUlEiBtidvvjuX+oTFqgZeQlO0Om/ygRubpYW6eZkZpUK/x5CNGA559OM9dDD47RF4ZJNpy9MhbcHi449LQwKHvvQzS45EKYcSnWDY6WTlUOc6fa2/TXh2deWPJUqB1ITXM9J7aGUvmxFbdbPeD2Cfv98D6GnA0NZc/Zuthnk5DdyWCpV82Aa7Rv4MwQ3A8juiOrAM1U+S", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wZ/moN4YTz/niwsJwuxP/CF16XvqnKhQPpguJOUlIdg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dhCkioe6ALYAAo2H+7rz7x4XwbsIpQp1majiwh4dHFivSy6Vfscyu8tPw9ta7mlwqn7dkWbpth1T2l30l1PHcp1tnKK9Qd8DmVN4yWtSnhPNGY0Zp4j306YIFB/i9NkZEFWJScHPv/m0B6exOFAMm7NN+krmft3CD6+Uj2msMCfmozo4t9R0PU/QhC390B1jomO0SHVru3+oTtvrrjKCwCF0r3cwEI6+OIB8xSrZ7Jdqp5RTnZDjc/fGf/nKbxMb/w3a3OGRk2kIll63Vz48bfUOTy/1lNXaqBP6L24vsgpjtr4bRBHXL/SjLmGcI9asgZRQpwdIemd3Lb/qOO26HLtuFNZo4m3M2wG+vcdj04Wjtzgs7qmi9aSrswdGUr9BTfetnD7D3p9TVF9QSdSHwM9V08HhaTRQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wZEBSEcK67E3JPtY7AFzetCE1lMbTOwaSiirkcE1Y64", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YuE16rSOhVTPEi7oWERXNVioyzDo3tDhaJkAU8ihlIZL8xDc7EcX6KTgAq9pKSpK/d3FHcjTvRgpGwQoWS9EPgZsVb/OX+TOh4SaBN5Jb5ekjiI9mgnPPJfr5UGSRslGicGcxG8oVXOPAtuj/HQpz7PRxYY2MY5fexyg0tS4VkBW5Hyg7UfTtets3irybz73F47BOHDYG7JxMx6zuNAxPsGUOrwAGgnFoe2NHp30Jt/viTb1r3p28AJVaWJpPMG98cg3oy75QsFa872tIqM5xAiabkUHDu21VlSvYYAXY+0G4pDbAjrXf+GzH0e3Tyhq85l2TelFa5DWQSiYTNuK8pJIdo29i72eqyTX/Yw4lG3lw4w/y+px6F6I6OeRNkRsu4SSxzvzA02ofwCbg1AXdXBf/pEvboyi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "waJXYJam3w2BoVIrCDehKyqZt+XBdvjEY382DR4C2Fg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "N46SSTzy968etXBEeMVUgfJqvOJuY1b2E+s2PQGcBarW1/QoIxfzD7ldMRxQ2KP2YofKx7iu5gePb7/jorESewMsP+HchLUeimEIobZDRvHX08IZmL54Rm4nz2F3PEWtI0sheruv5MkIO9OFdVZltTPBQ4yJpMY4DQ9yJdMLNx6avKnDikT4V4ZlTwaGlGrASacxHA6mfg+yJC40WtO7N9HycLERhyFaGXbdfcDAzk6rq+PAY/Qlbzc8IXe9Q/Vo87z/tOBD5z8CUCCv/7ed9gwoji4XOw2iE+L2PF3LGDCpdK9LW0X1pSzg+MQWPGdXNjT3vroqc7EKG5doXlXj4T9OQAv5dEM/hjTiYyiQLfyk3UyTphgPyknAEtcMpcSTOHXJv+73PjgnfRmM9n+gyr41t7tRnF1a", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "waLSpwanbxx3r6ynu4LvFwW+XWQFGYwJNjw8rELe7Gs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "d5gkgl3XSPcTzufN9r06/uCgqvecT81Q/LEfErxbm2qeYhW2z3eMLbaSqgrR4f8SFxU6UzT4LGFFT9nApxZwVD+BYUvfrZxMD2LaRprIU4LqpZGw9oBFqXT6ufoXAlHd0Eg8AqTruyd2oin7k6gqTHPyXDWG8U3zAsmlB/zIBIjpy1INSclem2Sparyp4N90ZOmzsZQEeRqHW6G6+JofAd+ke2PpmYnXhR2ynfGNGuDPfG+nrnOlHCD0ISslZyGt3Zp7LwXfsPbiiD1Ccpd137Y6HprHNpa7+M28tonciypncH70gxJ6lmYQPWUilo5gNuQ9OAI3adihdS2IJ8EdI/BBpDFww3zxTiOSwwMm+L9K3AkC9m3/HVEj0ppK/XfKDFyL3xd5Td63HsZfUgGH1n7pG+HBo/rR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wbBxvy/gve0pD6WIEqmBMqfVoWLXMEt+6XrAseBrK2Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B09oRMv0l2vQtF3EIjk5Oy0U3T0S5fDSXxtR1uOJarXHCA/M5KKc8DBDvQ3DuWieDfGxkDXx4d4sB+uUR2fya99eRPer5Z9IN6LcksHOFNx76+xU4BZtcIrNQ0mgQqQNAm+n9YGkcQMdB9Xw7L4MScGQ2K4mEqcHW+b77Ip776k5Q7ZXtqDDHl0qf4tDPBXBWL397otfTBdeFzICn5Z19iAivB0FrCFrmgnYJVWDSKOaWGRiN8sZqNEhTlPkJ8fpO6GvyJzMbuMDWeNw6WZkUhzLx8WCfCuyoLjsBX+JS1fqeJNSLLWMHtbL5qEsaTnmWNTpqz+eyf8yMaT4HieB8dfENCjhLdRROn3fbSPry3eo8DlkbhtFb6XCZ4is1NLoiiHVsMErMVhckQLN5MMxEzrjJTrf+d8i", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wbmvXpFeaQwAAzbcejVOvh2wVOq6Z8HRXriz/SLJaVc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ruwk4vjD3gQpJenN1TgiGG394nlVcO4lu8rk4dEi8Mqs2Ue8bMO0ELSwVKmtch/0+EZTioq/6yJTLXGq/liqK6zw1nTzxbN8jA5brFv7lrUfRbs+ikat3LSHe9a6yQuIl+D2Zojo1pAx74qMvrRUjvmhjI1Z5RGhRJuL5OZee+2dvPjR2pSiFTAfs5FOGlKbWrddsoGyEA1N+E0C3HOqHPu2ERAfwV2RvoYCahp8D4e0qqBx58zWHa1lKyegLSSIMXjEbNXKKHxs3sRVb8os1zzUprV93VyersZEvW4i8Sj1hiyHODkXrhJBuCwRYo97q7IQHQjNkn+S5LjX/pUENDCa9d6JDgY7UM4TQkU4yr/apGoXWn67WVx9RZHy/AdVwIk2CIeYi+/fP8o7Hg6g5DeuoEZQnOL+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wbr+9XpDyplSlIpcuRkRwoaIRVYqpCahs2QaKP6QKso", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7NoM2DT865CvuHxjBtq7La9NFFn8dun0GS+aP6eN5zrVKuO8MWe6ZIPqj8RZgjy+PAvhrGLqCmgfhAATmnN3xLeL8F+ClUpCSLKilHx83BOqeLFPf+RAFPIJQdOB2zF9OatX0vwrREfOOj7kw0pwm7iLoEuJ+lzqlMN+DHlMH3I+pqBC0o3WLGUHLGvAQDK7/NqpghY8a5qCOe22uSB/gGhSJbOq5957/Ds38Hba4xmKrXIge6Gnnh6VMGb/j5a1A4n+lhv76Cl2QuIuUD0RkMkcVc76yMg1jn2qA++LwMpeD2CPVbgmCAzrV9Adh8qF3INksgeePrjXpctbISDCINxUOEuIoRDlXfsRLi2p1FHf7CYcNXMhJLsAqILdkvXEUPjBKcDmdEcoU94JNP594cGeGlV6v/GI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wc+LQuF2kIzj2eMbiw1SjjNZioosr2Qx4nIWcd4cObQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Lrxq0KnJUi/GMLKESAWopc39j5OkUtEYGNhA4dLjIlWsymwT3sxG/zDPL6hdd+GJa/QcnvGv+gMw3gOonEMuNUJFXFFuh4eYiBT1RHkqp3+AamVPosTfn7xw80f+Q46vG78dJLv5qUX1+CVxU20Q3cRKAlGUGyRlQ6z8hOeqTmPLxhYeWNwp4zwnTlCaLdrvYf6jHvbNT7RkTner5lvKe/dhPaa93uK4QsHNKGqZagfxwLcEPzSVKX77IKg/qzEXjK1/PyGuS1ACqkQknIfe0F3IA79hIFsGk8L7FhxzpygSL4c5S+lie24vEXtli8skV8msWCHFfPgwdseD/2npaHejFWY4ZAsb1cNsbOFKm0xz3kFW9ZOqqufi8ERAzMS4Bei+JwsWcIq5vesjnMr/AlZAr4bnIqag", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wdoio+JPHgbhh1IQrafbdlEYZkSdbJUZ2nf7Az+SZno", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f1AJEgFTitwSBWoSYqHLz+nxsFK+Rf4BfjBowBNjM54zaR4YrcEuo540cyrMHSXUPRkFX5lAy8mzK7LMRDNgO9e2YgTuyROUB3E1AXRZ3aizKFXPJZUr3+VKruvRK0y+WCejaAfnH8XX+Xcfv4Qy9kmbgbRXV9opXFv74LoRy3ZDJe6sWsuNEo/1ORBHqYYhAf6iRHlFJFfcV/3tE+PnyiqKTe/sB8Wv842LtC/t8U/RelZg2aiZKnF46G+I2V6Usx5Yu9fdnz+QGa3ZO7fFIKiLnAxCdXVI+dXwr+NsLGp8WgKKjUFxQjQdWz3hyZ5QexOcxCLwPsEyPAq9IZrNB9GgnEYzb2RvUP+zH6hwAGTmcon1Q+kRz5Gl4+C+bwEImfeYnDwO47794ukWUSVayVo4ITPW7MWD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wesg+O7qN8R3CAOaMyG4wV6ubgS9fsWEf01NkIWJLlc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CdX2FBXlTXYqYyRE1/IBvrB/19Ad3FyKsuPwqPDlYx5Vav7otaanpasF/nh5ltgFZKItvL+nq7rdQUJehL8cBytYSbsWWhxb0Bd0xGKCVfZYFSxeK7rI0NsyEOiSlxbJPc4AMt9pd0gwxPBtrpBxY+iXeqn+gSGdkS070vlzJu2zrMLlm45WIkuiZtoUQuEqeeODvhViA+MUSMdOeJGvJNdbzwBKdftZJXGeujBTZPZSm5NpSGJ+6fmt8BitF7dRagONBmHMwlFyeu9OGZ57jMavSDOY2kTFQ0Udo26VfoGmUmhHW+DizUo7EwrfL9cnS6ecWkWQN9uByh9IEhoMJVgAybS4zezEojQTbiNe7tWwsxrSFRe99CsUQSuc2gmA1NQqrUABGsB0oCSo03ibor7isTTN2Cwb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wfCtMcrLKFX0V9urP0Ym+rJ/CHbAwATA9Tr/30heQnU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0bzsVbhV9Eue+AeLHqGDc84aPZyunKFQU1pLJomzJIyBJwVCjAwgf25tg5HSBBdkp86NPL6AkRX9YXY0b/1oCXqVJrFo1+k0gxtIcIlGos5FnwrMr+3xeDCXAXMenHFLNDh6EWSEaGF6buWVWp734ADUF3RQl4ZsfykVR7XXGcvl5UVoTZoq7oXY/pjO4QvXRkTH1RmbyktyiOnqjfPwjrRwiPtNgOihz5qE4o0ta9ZoBvk3D6rf8t4d5Zall3Pf04z1Q4ydni2Nk6Id4Fmhlnh8mLC+qA3MNhgu9yLUuEkNp8KXyFmDcGBqaF8flPGPWS/+b2jgi9g1rKUykLRY8IkkeyEZXKCZrTU41Sh42ma/vcx/39Ukm80KLLly+HyvFDly4nBYZzEFgjFYcMHESDE6+nOC3bzg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wgOSoGFAOecu4d+kAXBThExWTLpYYB9JzqpukzCrECs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hqxxdZL1NnfdXEP2x9JtkC1xuAo1jbZI8ajjNfRwW/s6u5RDnYNKdgRRkzoqsd04HvOH8gK0g/9uLv7JPWfOqTcY3Xw5Jg28wIydGlGTxSxelOY7oZlp8reGe9+IzFcWPYgc3joK9Dw7Dq6wroKMRvkRzk7vBgNEdYTe81FzNVqDoWmNmO/7Jhr+os3vZBESPpG60biY4oypt8ZWPGA+W+MBEKuN3S1RqIj54uXvw7D5FSuJdv8bVmgVI2j2fSo50KiHz+Rp1bX5fBSZCXONySN5RLH2SFJUEMz1icWHZQtdHVr+xd1DrN0NLDeFEZ6NyQpKwnBPKrIX8s8uHJ8ezkLOPNHLjM6S+QZQzWXM0l818TMm19xm6S3BNZfpiGjcFd6h08PxbNAaA+L5B8KQuyBxvC9Boxlp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wgWhtUIe7sGo6eWPAF2tVIiXjXBHPbszFTsIig1vOxc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VmQARg0vYNZeH2ONUmRAt1CeE9C9EPZG6W1JLojPSyW3WRjBGTISwglRsqBD1lHlPzisV6nAcWKpcC4SkKcf8xfAsPUeLiPKrBwUOF2DToAsoeDMhYC0u3hIcVBOn2AXvi+ITDwnnyrv4DlEoU+/5kkqGmWY6955tMRPo6oF0J19PSDNi1T//XKoy+BEMCtPX2enZmUR0nd9ZBtAg01QlhtLE7fjSR6n/hTW4Js50rEQ/60p/wlE/Cp8V1cw5NnX2k+BAuvay64uWsUIY4TVral8dVBbJd0Tb+npOOito5PYERknWOjPl+46JsYxuYsvGc9SprxpAihaC8EcdCgLDaENDRZu4/N1ED8XZUgNuiq45o7zX06akQJtnMwVT1pwIkd/uMPRSVph1XWOj0JIsTP3StITO/NB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wgk0YbnJrr7xjv63rf8Ikw+pzvCkKQt54xzAs1MRIYk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FALy+6nDnGUyiBtp+W6Il5rCTGRE8BZfb2F07JVhDhsOol1iNdj11YtYbbChB06uzf/EycRqqh/HV5A1eihr4c61dbmUOp36nlaeYxJTXE/PSAcmIJXN/KBssH3M91J8AFPrJZdMzHWTffT8yNIXIOstYjAAMwLk8fycrLXIzf+6FEELWyUuD8pUYBj1PUajNCynYYqDW0exi61TirFTCOWq0VT1vFotbtjVG+H0/OyIFUalKOAjpCuCn1f2uxEV+2oedfDUIQUuFh++1QYHn+hzXKnTGXMiBUGwiHNud0yKRxfXIP9BcK5OpIw4PM2TnmvgNtRyjRfTDNB0S3oYr8YYH+AuQ+SOK0+rchS6SoK5krN4AuhlZdFLFXY5xiJPtQSDy+vIT1PftGHCBdDz2dUpEXkd36fw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "whFZbwLfpDP6cwwwwjxpmSLmZ1508+OKd4zDIXhLo58", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mf7p6JQr/XblHpWNyz1v0uF6e4fB/ceyu03CjZqTe0t0K1cz/WCVgbqJBZLucCDqA3aDzXA3ddZ3zFT1b9qu1jl483u1AQf6o9F4En6yUhabAyMxshGHRdsW1z2mJe29VZe3i5pqUDPSoTlMqx2rsqHo2sORAcqp6CXxqUknTba3Pt5qbZgiYxkmb4U8WaXGSok/IOoscEhzmPPi90ydVieTwHqrHFmWl4V7Ni7EV3+ntc8zjM7KnaqmwrgWfIYNgWEKHgTQirTS6/X35qm3/LLZilWHhOfU8ACVe2wq5TUaEJ/L7pIfk02RXFDaDC2ogN2T15ZrsgIK8LrS3eQlw+b2//Mt3C9K+BWBwJ+GvixT10W9u2rWOVb28Lx7xoyr25t9Y5r30b9DrH0gvaU6dn8I5eH4yhx6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "whWvN5FaqNRdAGvE7g+RFBFLtijlOqgiUoCllqDPX5c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zBRVXR3QbpZrD3JK0Qwem8K1Oj1ilzQFfV3QPQTaH8ksk8dtzjOgXtRsp/X29n6bKfKtDiRLMJb8PqhKKaJnEMhsXN5xNcrmAzGEB1EQPY7B7RDMlT/2Upe/FKgbpHS+8X0E4j+N8b1w1KXppOt4OZBvfFjiFX0kgfR5XBob0ag3n3tWlpBffoyEe6Pq2FsM8lNd7bi3rErIH6q0ieWrOBEwhTWaD02FNQdqkycOXPjZrKIcjTOLkgerZw2bjhN1xb0MTk8qTdVVTiVruYj00H2khZjx/57utbQpwk28iBYFe4uhCWqTY3+7/yjGPmY967tb33A4nRJGxMk5RaVKjOOHpYNfc9JH4kt7fb6O51lfp8yTXLJt29T8irgGyIAFElP2Dtn1KqIYmspMAwPlsRjuOL4/2n0I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "whXNMXvFUPkelE1X80GEFtjKlR8fA/p23rd6eMeejko", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+L0crRnuXB+iA6O1il2aXIVLOGaTtjo3uhElcmk6ljx+cfRDkxNDtAiqSbCE4UD6QnA2Xv6SiDhw0t5aiVa9ExM6y1jXwprdTukgvZIvIHUB36HEosAJ8eTc1s94IkAifrX9HKZYcjq3Uoz1iYIG8hL9xswQ6JTZ3gxsUIJEgy5aDgtWLfu0ttNhtKRhe6+0CydIymRdHuddsXPa11WwlbH7dQlSBVHH0xhkpRQ7F9+zrrBE9Zsq773fZi3DvsudftV2tFJODBnkquLqXX8NZt7on+CuUcIZUMDuM1x8P9cwVuExU1uGZ5PYnSf3ekENf3jfWKdGJGrxXi/u/AIv3aJFphsFWwjPfGBKVmEbD5q/WGwkQjICGfL+CZsmCZVf9zSfxKVDQjKehiSAOsVYHmlG5xrfRsj4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "whkLYLHJsmCC6+QXptfYdlb2++IkVQXl4UoS8UBU3Dw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k5TY4a4x3S4mU+2j3YtVzVgSVVb8oe07x1FWxNM+DXXzlQuHCFWCrCOrEzbKyzVAhTLzKNPUuj+6owToSOSfI19VZiTPMDfRvpM4i2yEnl1ps+I+KT+Wc6zMCtOINY8JliHkBboU0MmbyTsMJM2nlUq9XiMYfLK+IhOUrI6jAW7zDZQzpG8aCQAm7wxERL1T0HluCRx0eNVStataz6jyt5zYQQh2SRkG18IzNJqpcF43yC3RudNkBlVQF6sj/D9ux3EymVgusoLcFn+ScRD/BlfSj4DtkMp+wuHB9w1QLqIpHmNcl9cOlLgpnM7GolrQ7mGPlW5gEB9gMQZWxHQz/tUxW2hgdNegmZlADMp3pVXxDyc3diDjTGrOVvObCA7f5UNi/cHjsFYtvX1uOkj/lW8T2jfGb/p6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wiMt3oIRyucONL02+HyXZBsN/MEmvBNaJ1OByZem9hU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "53ETZ9kDJdNvK3x1RgdcQ2sEGh1j6sL4hfxS8zjZv2oDOBwxM5dOvbwWpaUtDcvPgl7+ISr+CYQ4cKPJyyOySdKAarvBOvjBdwkLb3ge1zf6HbGCdf6wTIziC/E2J3erjwF6aeJcvgFlxP0KMK5IyIR4WFgmeaeZyWNd6w9OAhWAiCY8VkS+EbJSzr86TdItfPDuKdj9KEAIdGFcdotxvzGypUh3zt83ovSuPYyldmF/GcAYzbb0yGz4HfAwcYwh1BlWehcjfy2bN+HcI2591PWRhXzlEwrOUJI9H2qlwIeHUGDQH0wXwJT0ejTocQ6t0zLq5seuUHLdYBMNHKqkMtX8NgrsAFIkaDOKioBifFH4Cj3ARkSUaTehOwoRejoSAGvkwnRxYtTsfaNP1hg4yHVKnFY2tRMu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wifvkiyxpwGmbOFPjzsYW3XPqlKiebESAwAvY9EBBQc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wJf3qP8k63+zbjMCqdshTGJmL6EJZ5DrsuHcTbMKSzCZlcdVlIRiI4lCW7YHWHP9Q4Zn1dqgHA1RwHHbIl59dLpC/MpCvvUH6aADQ1D+8HF3GVTczHSWJS/HERSLRpHqWC4nox64bVEHXqDShbs3NtiosF3gacLnE1wofN7vOrZD6MTz/Dr2JyAIUm2/v2Y13m3EfYceVyuUVyv1rT3/fVFcwCvZ/DuEjr9s8gsrALaqTNMtnTll5GXaw0n/bR7lt5Z7MsS9CVwqXzCwVseWPkdIuF80UU8jFSBpZSLddRHS22i/L69+xmdK1QgrK4pwIR6CNWsahLodHKPV5fC4ZPiN++BwYBQ43BQQssyOu9ijCcLqEmhmBWzg+Yu8n9Mdmay/iazlBLXpZeZv8OHSMBIwvT7l4kDI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "witRG5jAz5fcPg+RI4RDe9J1BIm0N80tmKQQNEODivM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HUstgUc5MpmhWveVIoxHiicN0L7eQFDgTMrElO9fnw+kDEGCyAYCNo3mjFwH1O+HjcC3xQ4pSkWXPPOXBgN8ndmyx5fApV+u48/jNtD99/WUqTdSiFJhIUSQUXoJjjjpVqI6o0mO/9VKiKIcPB7GZxelTtfl/ZQNvUDPPTCYMhs2eo5ZoVSIhafJrG8DKqT5P3YGiVWFg/+U35hNGQSjIX4WjIWn4jOlFuyZUh3ECpqk5n6cz4oIXxTGoDXTiqXYcPluejvqXEz0I21Tk4i/zfN8zK2GLcdeX6QlLdd2lfqqPO6y9ZdETyVvsxAV2zZ9cQSfUs4RReu2O/xcJ/xcvHiBH8ABALuBGhe+sZhfIfvHFAuko/XsDJE+cQZ7cnl8j6YKsd/SgoZMRLqpr3ma+iz3x649k14/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wjKuLqdl0Z6d49LuSa0ZTnSWLOu3/nwRzuXLKW9s6SA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2kRBpTVr5433O77arrb6wp+BSSacbHBxtxvcTBvaNEUDJL5nqwSmx+5M7m/Y0JipxFP6L85uJ11XCVcuujB3D//E1F7m3oRbTpah7BIi2MiN/E+vw62JZjBpjBkzZo/aXhSWOpOsdhD7+hkgvikzGuy6r8f5Of8Tvli3WUk6//g2ljuuTZru1AHK80k/Y62WoHmN02IzUgNB2LRsVX9Bfd8ExlcfPwFRKb/WAGUcL/Cfw5ImY1xaoyE86oeKY/B52PWd0H/aWmbHZEadt5kyWt8hZyCoeifI795aEQuYFuAy7Z2WYmrFasojt5nDDY1a1IeE6wWJX+ZF6i+mJH+dULFK04bEs+VlLD5LoFbwbUTmkkCbwRZxpOMubM7kSP7e8ilSnQVqLGnnEJ5twOsxqPX7u4lnG2IS", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wlNdeLscL5Sng+6j3YQQ6y6iEoBFa8Ix8KaIg6/M2jA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SQEVi/Lr8zHNrYzFmRSPurQffsAacxsbEJGpm9qCYE/1LJDCrq6tSEzkU0sDkUlPIxdBG4zugt0QEX9sVKCKcXchPr3LEVfRBI4WowlhHAxnSq1QnRYRc5Y/FD86olZ1Dw2KYrZBGicB+Uet7CDjrCs8c+chThpv7+IH+Gm7x3S20gLs/tsaOaS8qzOkDWYoR7hqu7DkhCCzRhNinUz6q3u6x0wAH8f3M3dgHOZsI7pWvsuos/Kh6DkBBug/r3SQIpEO30hQKX4B+ikqjuT5d1WC+PSIU6pB7shHy5kUKgFErvEsN8WKZbw7//AkF2zdjAn9ndS9xcda/rWKruXLiX8vgmIZrsJfGkBuluvsDzjGb/ajk8D3Rutv3ZAhcwCUq8XP+uGimfTZDeNqsNxMYzM3sfq2nd/z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wluJh2GURxx4aU9Vs/0BGBzkDF/v1PF6uu0LothK3ww", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mw37Trgmj61/Z5N96QEeM7wQMnKtdnr1PGHpyVeOckybwfUxtC1MnwR0emSWPRWaTnASugBPpdcW10+iRoCbTxOOiLEDF+ovfcBGIXe/GyFtpr+WtVdjYg56pSsATL+zSCjoxedw5jigFpK7Ies1w1BjAK5zPikI/hvXraYevvmbkZp8hze2nbTQnMrLT7MxS/FMglm5nOpteWnXYcyypjHhAnUmb1pNGPbM3xNEmnd+zfBDCQ+RF7qjo+8b8qNyReyXiLBbvlJCxwDwtaVl+fdoX643MAYRA92L/+UDghfse5R2TjRpW7ejz5eVitT7fVtZSmtAGxTP+/ZP7XpNhBN+N2Uz5P7UK2FSd4w16a/DtW/O5o6wHzotBH5ej3TA5e6NOOO3DAIW47ve+yvUbGRRNkQrkJK0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wn+pHIt2tDh6QlcNmrYXubNj3sjknd4WVQ6IjlEi0Ic", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XGhYXIik2G349UeqxG+n5I0euow0hs1ycvdv1HTiNXeEBoDWiamTCaUH6fet8MoLVoK8T2wzwDg1NTBGjikoURUNs/k/RR6PJhsh67W2xSvrMQNlk88iJCtxHC8x+XSKoDBZN9F5MZkvbv6Q3WsrYaI9esdrdGQjfsc0lvQC7YqUQiqpjp9vQOazgIbJZgTpnTGnwnLf5alYiCE3lO4C9MnxAEwNkgsgYIBcmvV30I2d+8Z/VLmC6H+7io7jVDQH0l30u94J5ECo+kMoIpUMieIg3vGxrR8K7LEHsuXmOoBGs4LmhW4C5R3nPSBH7Qrql7rfkZKMvKI9l67V3odzUeNTJXncZbs/lQR/jH5RoU1xxsgZ8EO/FoyRiqXQ7S6GLC+RdbdNnO6mZcrvvj+NfSzApsEJMFpe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wnmZPTJixgxOdfUDOU2onHaqVFaskiZR8Bq2wzkTMjw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "llcuNVejGGhpBQezWWc8taIEezCnpE1YzpZvf/VORFnph5Q717idIJXsPFFP9TzrvNUm88HEjrt34xDXQTfzhCeV8BDGZ2WQ525GQYHP9U8RwGNp2UZlOlw2NvEdWFTFO/3dNUDvuZJyQ1AJG9NF2YjyXhtBPtfBxmbxA6tqgi+dBpr8ll6cq5XpZxEC4RbKA/0aMERyXt/lH66+RlzfvnI++zRalCWp/Dof7yKLWb/GLPWBc16m5uzIzHzPa0jJkQ28rrPHnimVyxqNIw0BYkPdVPcgpHglcv8NcVNj9gVOykAQg9ape8mdsrP+lXU1MFa4/WmGSs1wg+OJLSVG/utYkteIhmNBfbQdPmdVTlaW3a4KnLrcanw0K0uKDcA8tjOP9S5rPaE8mpCggo6EKLOKeq6LyVD5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wpLn2nRC/+bzsPTinxangF2mCQN7f9kZtTwH3OmoEOI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QEqgLhxZ+M8lCIL8WVfLI2jb4o7QoHtR1ERKwQB5cAwXXs6dNbGOmzgmXlJ6DrCE0QuIFKfEgZEJoPXUn65BgKgFWgqSzFYPoagsG2I70Y11nye4PVJL33EUJp3hCXIIflmXeIwbA6xnK8MYM5vMvnyNtOMHbC3mUv9Lb0OlpXhqb0pYmcAoz9XlGYoStTv2xTWZYckESgKjJ9ou/Lf2s9/Ano7iljC0F+XCSWZNep7XwhhhMWBjNOiKnXdFhyJnGiwIpgdTJK66XGUVRf3Bv0/NM3rwLyQbRnQpkg5ulOgtCkaw3Fh5dOoG4namYgQ+lxQcHA6rWAJwHgSmzkQYJIbtP0zZbbV/3aQVgU7uPkZ9TFsfrtNBPFfzYg1ife33ePKsx9rS66sQ6K8JugFdr/hTGazCuH5D", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wpcE6BIwxA50Bz6bH3INOpP41fPPJZMtbwe/sxLZrek", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uKtXpK2hEw6NvaPmut+pg9NOO9+gUBM2nTr+b1JwPMEiSmUVAUGiPA9glNtxod96ktu0oPq3F4MnTRtOOMIqjJ9xvBjLwFqHe99RBp/HV+NYTZyD24nk0BdLb5SRrVvg6iUjWQyzuIbCb6RXY0N47RvGoH8qzX5kGgWJ8ZRq5OSNGAldyjALmYtEtdW0rB4uzZ6tzC2Iey/8MCRZrDdPSEBZNIwp/bGZXNcpZPNWCLixJjU0cZ/TPOLNXOToAbl0rQhrc+u18y56AMertNMJC3MNwFdMBjGPZkxjMBHC9XUF+8dWEIPzHku8p6WmibUuBocVLsoOYac2XY7avS1nivl+Ms9aZkmN6sFqZoAFfwiZuxma2vpW4I8k4gJxD0K0XE0EqafnirjAjXTL/nviMXjApKc+HaQq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wpiRNlGhayKEH2/HjNk7qDTNei/pVkrtRXC6h18u/W8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YpddD6iVQAvftwYE8sdQIUk2j0hwD7VHIZhWGycgW+tzx98sonh53onz6Yl8v+D5hI7Bh49LqC66Xsh/wMd0VE4lRtxTYSYnmAZTRR/HUI4wJdf+tr/YDrNzy7hrQazf8TKbjECPFnkaSlEIiL1ZOvZ2hApsxwl+vdT/DmeVRyh1XPUrg5BY0UM6BSQgNLZe2LDNX22r+tvOGmqyZZnbx2KY2BtyYdqNsgJOC63W28PVVvmPLJma8giXcTGgFoWVuMPnPaBwacZIZBmxK1LSzAdXuq2bRVYKo3DssOmJ6HpjGGgHq2rkJprmyDssaMLode7EEa/JBAtmHVhswtcOqcK9dX9imb0i900K9Eon6hSE3H//frvQhAUAw/3pPKvCAQ8jC8G98YjybX4FagUWV1ntIllV6iWJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wqbKdeeQulKIzoo2vUPnZVcF543E366W6gYqVjC2pkA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5GguHhMTCASZ2WIqL5x13/ohTmxW13+ryTD1nA54oRaoRQLlboHn0vkNsEZzEy+GPVgWEQHW1+p026Js19cjSJl4gTc8gxNNb82Lt0kgua8ockYjK/CWInDJFeoGVGJ1ffAskr4JIqMVh/kwcmgvm641ttKdBS3HfquGVH8WiRRYzQj1zPCzFQtrdXA6K4gTsN3EJy4XaK8CBn8Cz+mLUiHqk3E0CO2FmmWE9mmjKXNfai78WF91fiHvh7ioZQ/zH7uyz1vaC1Qib1M3rePg/juK1idQTkqEUnX83NVNnT3Gb+rZ7CTbZBOGRVYjNAk4fypvym8XVOHXjr1RvAh4OOoW4fMsoOaLkSvw0qNS8rBvfpBVVZOPR5pNkhCbAycUmlH+bFAB63qyISOPdLfMcU758/bTAPIa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wrAdq6fv8E0IJPS5Th1ZQ1fAGbAPgsNhAx/YK9v3RZM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ID1SRhhwId5gKHpAQxdhHrBOPNfVym5wXe6XKZ5ONVsxXM2p4bt6RNZLEHiY/hzY0w7npheh7/xZaGIw2+XCxOW+AHrk/oyQvsYWa+uJ6cVVLRZXaVMA7hhinEC3CuKB8T6N2zkT+wnH3TdrnxTwkiiYVBheuo6C3PFB+nkoRHK0Ypgd6LWkK1co4jVJ07WThT8EA2RUL7YNRRXZGl2qKG8peIdMk14QObR0yLk2Ddzlw6vUGDq0BhpDZUrEQP1N7TQ/KyDCXaa6JoQL7gIcjzMOUooouWpEwkFS1jRBRH0OhGrV2WUH3NvEL/bi2pm0WNwhQXK5WZ3UFScAF/BaQEiR3/l5aHMBFXG7AG20W0LzRBr5h9D7CC/adCaB/Zfc7bvCUBkkjTTN0rDCHhAxrl7w1TbKyfgD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wsGchS8cmH+c3RU8aQKHC6ZDR86KWMj9BaCDWo6IjgM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cGAB1Ww9X21CmWzEKGYGgtcwHKNPcz0VBvuiyFEOLWKuWkUePVdARLdyJgRxNKHip3GbZ/0wv+TYFx6sfscX4FobfTv2ULcrEuLf/gXuq3o5GoQTO38R0KBdA/Cv0x6isZNE55r4cyBRw1lgj/fzkWNhdv74iVs5gYV/IRrAEsW3Gy4OHAjET9IKUdfQqn273G6fX2trr1s5lPmaMjNXkI3mB6tPntm6XyY/7WnJfSPOLRG4l9Mvg2wEO59NYSbafcM+u3wBN8Qt51nQaDPxtcUCTAZqE62tgDtsnUr6LdiQ+a2Sahgl6YENoydf900ZwnmPeTNkcWeydJ3gUjFAsvCM6ocHRdKbIJqh2QlIRXb00necJx4so1srqEv8/MCxx6IGGLofj2/V+koysaPvcHABZ2BOwJrZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wsLZTV0M/4hL/nmuTH4Q6aOo7FRKtOz8zhmvn3Cc/jE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4TOgiYjI+2BLu4A9Ms8gpu+K9/6F7O5eipujIk4OtPhwwFA5MMxmOrC7JL8lX/Bf2C6eYKK9hH4ngQf9O9SgRmDXmUBCuHaCtuDsMGMSMSEHLQwgNARFWjUDTyMrNhHiecG15FT/bfCqEMjJIy3mf5ja32JbGSP49+OfIkylFq0s9M6y/49+VZxKCEdFSojQtdmtlIUTJiv9dthG3eDHbr7W2SCCcy6jQ7tC5FdW27IlwgLfRP1qbJpJvP5J5iCsBt6aLlAHHGg8/xw4r2Ulxrb0ggVBYH7m82EdPq23ibADxpDkSHFTxO8zCu5GU/btMBrJpfbbH4jsV++u6Vz4nt3kqXrKZG6mq/PsYrnVZAPP3QTka+/lj5wiQdWT3FGFCMNnhmGk4cnzqhiIjtR2QxmufsAMUinw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wt3Y1Z0rq5EaTzFRUVEG2AACECVlimu69/1EMbPn7ug", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "65LlJoRQowazl2XOg36zwJNqCwBJhVWGYYOqjiP+RYM66sbxuus8EQrwdGTplEaZVy7q83qSFX7wlngD07JZRlgIoRsFE61tRsuuv9ALg+8jPicVA82bf3KiHKlnV0C6PHBZ63H+HRvaE2ikPng2211izNonK7R8CasXAc0JqWsk7z0Gwx7KsVkEbeCZeMbowgeTcm4ezdzL3GzV6xIRQSnQGmXAMMWzg8KN6TMgIQRv3kNgZFfViZjBeDwsM+iFgi72DJlzD6ThntBwR8aVnry4LqffqTjnXPp0KlH3NUBz9aFbHay0jvqNdpmEMYJ8vf1pfGMFIBhDgFFbFL3D+EK4knFFi095F73G87Hxey07Q3uMeGrNHwoP9VOModU9Q2OnljWcR2la1uy4UILk5TWH7AlqD7w1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wv+ghFtt7IN6CqcdK76axD3LqsCOcwjlQpCWxOrX0ZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kQypzdjdU18qiUSjfb84mrOEe3q342+BjWiVm3C1jEAnfAZfbHa++4vfOlyS9nKG8poL/TXtalcRgU591nUaIJsIOAwMeew1r4Hp2LFqKR0RBSIepD6tbQDbr+u5EwedDcwqifrKblWhMZhO2bITk+VakT07XVuP9bIZ5K1wErRa8myDHoklp0FHAmNqJRHuFJ6cHXG0Yeu1eR77SrDn0HL6S5UgPuYeVhlLa+qtgr5oLoSCf0v1CO2OQaWRuSd8JrFHZhrsZtQYJROpzXrymlmQRNlnjCfunsHZIoDQlJ5yoPDh6km2YHwCWopGp8AzjcvR5ckz/izpSZm2hTmT6hb/6JzGCpKEzLc1l/FQ68FQzyyHVnyIbtfJpD9jhWD56R+MhMsu/5x2M7wbNhixByN4t7QxoNOI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wvQ0QQ6ZKq5lFCPlQDVNs11dQneHxJrOE61+/tulFCw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZlDE7pv8wSv9ewPAIWMEw6N2JidiCXGYbfg2TAQJh/GTdeMHCHsuKBgA9aHNw4ukAAuV7uaOFiZ/Hryx2aFB6oegv+/860MfLNvcmEKtksXfHEiitO9YmK1UtiX2YLt2U6wNxBIVHFZv/O3RcGkeKtdzWHQNHPz9WYNmwQ9+xltkaGiwkqnUd9gchgNvSgzUUJD/hLzESucdR2/ijVA0mJ+2w8/1ERXWgqqghFTVbvWpoDkiAAZDqzJBRZhS2rbskKJ6jSdbuns5hs/fWVbTS/kevh1oqcf+vXLCWSw/L4r7oGzwU7HK27sDQvNEotCd/tZSCwtHWNc0U52jSgCf/aqZC5vLtZpbg1cne0V3LAMu5mdiGrRLji6bv5YkHGWmqWpF6i3cIk/yr1htGgjAgboH+O9C0bMu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ww49ySlILSYHeU1wVgkkHsHAGzQG+jNf/HT/N2T5OIU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w6LGecrqC4/oNRTJ69Zs1c+OwC8Cebc9J/3mewB77NWcLu+onQobpGABt4lcGZtAE4lid7eRHc2I8uv2dLDcDkrPaqhllYODz7grnanLN/4x54G4COZL4fkb/8xEYrrtsED+R9mCLCmDpv3Nhv0SQ4v6h7jSJiIRaZGgF8/DHdDcADhoWB5ogGvd1hBGJkfSMUP/ugi8C613I0AA2JexJdt6SOD3yNe/PYpFBiFPbyDa3+8wjRYAPCKCEoEomXErvhzaWLSzWtIUeanyZoDyGrtYm2TirABWhvzs8xv0+PVb7wOrHa12KqtFyXsWzhKpvQBtxuoOlC3elzIaN9aWNTd2fWi7IjbyzSTAAwb3ZW7DyOBAXXn9v3HwY+b1yvbavSB5cI+tz1/cmgPmzl55U1HjHL/xmmP2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wwO/Voc3eerhdksYusWIvkdURmtr7XzDd9VEvtEW3fc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NFP3BIwWwKifDScsvHUhoFlvT4n1yZJcOO6DGvcJAGl6ELt0+VgAAEdgGj0htHmHt59Z+Xd/0hANBH8j3HKvxzZx/wRuRunpEi/De85Ta9qBryXA/yfOsVngjOV1SWUImbWmVZEOTD00AdOifKfMRidaKSneO/DIrhI76JvnB+ghLCnlLCQK36BkHx7uMA7O2WHbJfWt9VHDrniiylbbz5m0ih04DO6fiu3wmV1voYlFGkXVRFX5TtcwbzTOtZVXd12ObVRgPCxPIQ5mB+PziMrtzjyqQTC1ifwrR52uPToO/eVv76oW/l9Umu/ZP1B712tRYsv6luwdhj7+n+9xGVsIq8LFtwvdQRU+ufaLUkg4aDwnKuq/QThq5aCZR+LUweB//eEf460DLjizdhFbDslr2wEQDqPt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wwjOyTVbz6G9S6wJ1+Zg8ympJJDQTARgV3Ymmq3QKvg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QHuDwWWuh6klH/j+dxOgc5c45yDeIIyJzdn7/AcdBHGrBf45oBioutUBCdLy94iuxiSUIK8Bynaci6eqNXidZN5JlrwlHVbjq6uIiTbUjaj6gye4JV6HHG6oJ2ehOZLbEkWbbodLJ9cGJPpTMM/t+cy+AGug1ZvLrYM8j57flzKsgE3aHQCxqTV6MiT+6dPeydgW9Jx+EBD01DuCmPkAm/h3zbCemHTXveX5ZGRlmo+2hp/aMN2f6e590f3F4S4eDxlN0PGXwbPRgDbUiJGYaVkxHRAd7Rip/O3w7Hj1Z9OPJEU2G18iLZ9iUMULWCLmKe246BBYuIV63h+xIVlXZSQxhrnBunMzkpzyurvSQEB4+QqLnYR2ehOdnS6YRxYaFHvoktb38UAG7lL+U6lUzsNZXZ4kv8Oh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wxGlAfw00x2cowYUkmq0EYt4n+ef6FRYNFhvoRC6ChY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PLsGVjr/krv0+g3e8RaUSIV2aXZMLfmpsZwEU8kuRs7uxK4N+BdU5GW+Nm6iEhMuSi3TKOMcLXvWHXAEKlH7/XIy14ImrDXI9z2+ynSQhYMMUXR+5rvgaqwpxHY1eOy420A8VVb4Tsq/Z0M1U5RDnmDz5ybz8XeT7/NoNDEESmFP2tCbdmWvDfuaWcygzSzZjME7v9xGowWo+cE2QFBnHuDdDeo2DVT1OhEhK1rXsIdFkVCXN8YvNFcuqEUE5s8IvoBHl7tZgKFypNqRMJGGtzOZx6zuwrQ2KK7inclTXIlflMLMJ358o84LQcyp/xl/lZ5kCaDrXOIqqjB46dbmLNNk4zybMC8PgFNM6KloBhQQUGavO3Q1qJJGiS2GYhIrrVj1Nf9UvraRZXhTXX95oNfVihOxZGT4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wxQnCg4xe+j6efn53eah7dzW7aJV8xjKZ0L10lnTScM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RogNvNg+YQOEPZEBguVdT0fqJk7r6W+X+/P5UFZ6E0H7U0O+Mq9wVwp7c6/rQtEr9eFnVD7CihTmTpzcskevc6hTNAh9ZbEL15onsZlgOUsxVHM0rUZBIVCdoO9Zdyo6L7ya5Q8yIoRD6rYPLhCvTs+o9JXOFbQ4qLyxbnUkmmgBu+dd5EpNmwDW2KcqIsRo3eg1kEG9qj93WIlVHiJBO00J44I1HwLn6UhJb88sTywVRnJE2N/VwCiUbY/yuJhwf/KWSCOSsxxDpWIoXkJSlemLjPxJa0VBvtzKwGjHmBixUh3dzDOnDQUB+CNcj3r6VfsJSMwkzF+Hl1gLToPIo6tbvjSYX6Ko2Scezob1xP8THknu43Fp3MoyuLguaW0L0KYyUj5jwI1G4AiRQtN7aqT3Xn8hs0Us", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wxu1lYs+8yjfmAj1+xHivzxg133hZUaWxJ57v4dPz08", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CDzmfkcWN1ilFrIRk04GtYkVWLppyAnhXviTgXLSi0kGCs2l8Ku1SXuS8if4hEpPYYBoFQukl5U6UmkmAeAsw1larHs7N/ZPVVgjL31svg/m7TfUSRnhhKN9DdcrzAhG4oWljpnVy6szKZbH1ELdDZzCZ9LiNrWqC3dFUZhduNiOCQcu8z9RYVsZp2/q+o5F43Fx01ixs/0ZbT5qk+wew0zq0Je3oz5iKC7gamH/ApUUVynU15BqxfOBsXjpxdYbMGCSVvjIXd9kJW/SkQ4Q4GwjtC4ZmM6jOuaSuVWuFGr/+aKJf5H6Ghtzk1g+wEa1EXTA7wpAeQgERfgP3lAOoqqEvW/YIffH6FWVWAxj6YUTqg7xPl59w8RMDpemhAZnTZimQtaBEaRm1rAsfo1Tr+mcsrMImArj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wybwHzewzURwFS3iC73UucbppByz25AOyD49bmmtsFM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zKJQlTmWPtzgFKDj+Rr/07ZHakTTslajvRlRVv81JIKyDI38VxWWBBNIqKITGJCRGYV1WAZtbgGxjxh7PtUb+RqEug1l0fTklTMQp1QYLsMMKnfI0tseCUUv+NA2ytCvWPiVu4ZQ/t2c2YfuzmTTglXbm3ZMdYVpqsaCoVw/pbhiYaIikWVf+xh8jF+K9NwU/D/l7olRx1ME++CZgTuIkSjfyVyXZv7dAoUZK1ocO0x+fvZqWSQnDY/cGatvg26/V+QDCl1g63dF44fxLN+HBVwfpEd2EObjNmEoIxGPpEetvwqGqcKlwkBlPfa6lGKs/2GvemWBKQGIdfvYn0SEN6hjHrG7Jrw3TEbS4NUE23g2mWrvWtWuYAHnw/WbTVeHkwFve4ZNJ9iPiNv90Q2JUFETXuutqNLK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wzSnlQAkzXxPSFScViN0yARwe3Mdj7/j61a6J9pxz+0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "JuNFvaVEPT6NbGPn/ki3aG7Zj4TyCdBIpcwjjBecWS1vsc5paXb7HJOBZSMVZmd3C73pb+4cYsOtPqiLpoBevIxLkDGbCTCfjGMfVJQUUgj8/lF+31ONL0DJe3kyP9lq/SdmnTsWshJxU041i5PxxYl6TzN+7l9BF80itxqfbNvxvRoAlpQyjE2HZ4XqI2hQg5B6I+eUqnlXRPPl2YP2DGLyNoEaM17aUZsszlkcgPk6lVZxIZtQJ997z07iZU4eKx8H/yi5x/YcmMseWdVDB0U0GIMqN5JtSsRHsX6KGJlhGYtHEyZgC+3Hgi4k5hjw+QMwio2cwWL7rMLwEwesKuFwgiTKkmKMWnwyyu6sJbB0ka9PHnl4xm/s/lgUOjmxkpW7BBJYSlsejheDdlBpHNYAmfe5zR15", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wzqxRNWlGE5pnLLjL7MebHqpPJ+eCKbzxS4VZhWvpQM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZdQDHhJ4dNbL7mMeyt3I3OQ4+Un/7VsLWSCuNZQGl2rZUZ6mFefjuluxp9c2Llyadk8fkozF/PiQYPNzCg+nW8eXOY/3YtQbv8FFycmq43N285H7Vh7HkwJcOvZwR8yFL6beWis8IfijsXvrybw2nc3IEi0plTFUN+SG/gzwMD0PHmlsvLSwR6HYMQU5WDrL5g5A+ugyrW2fRdWek6EMWLELlqKZmO1w7jixhzaMY1grnVL1KYEM3UwvuqzMeqIZRkXgFDk+8s4MgyaWtE8Ak1fDSH4ShqyJENlOIfTGj2SKJgrlumJM1+77oifsXBPOzB7LJxNjfZMLl6TxlkfKHS78ISb/JZzr2LVigtKeycQ7Qxi/cRLEJPspxwfvE8EmgoP1IVELHcU55R49avlyaImv/84GrUqG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "wztlAG6oaAhtCQ1Ue5IRMjoDufF/PYCV7qwYWbzm8lw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RW6KKq7a+7xAJYGhW/1P/t13bOZF9H53i52iRNPpp7kH4xEV9UGN51JIrUecaILFVG+NgWFE+2tKNcXA748LUBLDYjBjiykdWLDs1xsTAOiEpLK/d4/hpjrbmldv3UXINDoBiVwFnMASSgaXFRQO5BSEfKYBn5aTSfk2o9LIAk4pBCfAkfAsbuBX6Bp9l+F7lg04SRWYjxkXe4ONka4aY3qC6tAHLtSeeBL5fnuH69yk+ACkl1N9J9UEV9oHwDDb29LlhJIGKXOI7NMBzS5uqqhbWE+DoxYQGlblh8Igbi0UwqMo0E/1w3Q1/upRWKkq2xIg7UPiqKfBYmLhrmN8AcgFNldAvyFhJdg4bpG4J9pnPg73bGQSaPl67lad8Gler5fcboy0j5rxIl0TdgHsR1zgpjSWPGMB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x+8wnxOGAx2dkXXaf7VHfRbh6GzT09FQE650joKoOYg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hAVNSFuW3RWySlyF21urZUn3yz7RYIKRtVbgdh1mlbc4L/qhuTZyidUZrJUtHL0UUDOUHpxOOjcvoIig0wArX261lTX0JGXvesYLJcg03PZoYvTQ2SZG950PSXKit4mD07EtWdMppwLjzkgbuf0FTQ9UrMIpdF3iOTLxey6GNWt/A8BAfTx8ucno2cpW39i31s/VSnYbj8ofmdwtclGpMUT0o/mg1GEIIqk6Y0Cxace1Kb3s5OFvlGLFub+aRuGkz2cpK+nWqQeH1YEF6TVfTUdf6RS25I8WNieLyDdrk0Oo/P1zSaSoP+mmEkqlVjCw/ODZ33AO0GLC6k8W3zfNboPqixpbZLko3QI9TKFwWvQDSEJPJmn70HuvfbMDRhrVCLqYkmsBRfXTZOu6fmn61EBFbEE9JVXz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x0stoSIr3IJtDxCbpevnqxoMVnd9kpDn2OLWQpeBgjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qqUiUjdEbsNHpTuf5JeJLwuHiZZTAJlQcydlA2ByHjAReHaIsCdqBYOo5Lco+0EMj7sMvOFGbgHlo4MKiBh3VZ7qlseEXi8kdNfwgQTRiOuB2n5JlGgBSIba3+WKA8E3/yyPRUwiprxtuo03jyxNilWqVUOq7bObDYfA3U/m3SJHF94TDPthsWvLLjtC0jGGHXwt57RzAvJgfNxmXXCeuT41pWnbOv7GZ2LLKjBN3TWSL99PeVX+zT1N0sQe+EC0XzRq+l9jhE/70b1KAXUjdW32D4ZkaK+Y/lzDYN65L6EPcw7R4w6yb1ljhQbMFrMKwG6G7gZHchuGjWO/TvXdvAY6sKHocxDZQ142hurEFwkOfwtYDRoWi94LyEC3s7iP4eXbmbfVy2qUBjFLEEgNqCWJusggOLz4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x0xdNowNyjsmK1DUJjH7nn/mv7vh9IC3TY1VF0QirRg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m+P/WL0SEJL/OYjPrFdDS/3L1/jRJwr1L0CGZoHktMOS13wIS4S+LK0ucHs68pjKM7C/22uYC2EqZwU14ZGBQFV9CTwW0EP6pFVizjcEkfHQyD5bn4EqE9FavxvU8A+TJP/T0Ny889NTGjOJshqCCe5wIXnBnWKxXa3tdSRTvdkj6Q1Mpuo55KQw5u7kCSdjQTNf/IQnTHH7Slc/J9elQ1L2OKJujKs3blYwxzD1jJE6w9E3GzliJY3OH7+wz3mhtMfXhLnPYJCjiVAEtmfv/oXW5+/tCYBug+jLXukm2GbviChTBT4vXsnLGktyBo2nq5kzAxpZ/AlD9wFddXOYz910oARf1irH0I2T9yO1LPlXEk0QPyq0sQH0bsl8tfcupoza0GP0mGSDojHRoy8tdvvq8aQqq+xJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x1HSW7v0d7HpmWUmG4nTLNEcieTDKka+tWMYC9O/OIk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8ztzcwNbViQNU3m61o/XLXPN0wImrX08XuQhN86yndFZSGYBMF8SoEEPkcJaeYfVg4CZkVNidQUJBuF0+AR5E49dsuH2mwZ5iBPnT2XHYUkBzsUhr0qrOJZMzICDlr9uVB7ew/heuZcmp72QM+qTpNdfJmsnBH3gAiK4rD3bPPGdBDo1Mo7w5VV+FetfByrSkx4lfYNbJqqP+0K6qs9d/ecgGsdptMHxoA6Js9BT0LKO9GZ/rLf1cVq1NGOvYGEwGdEdKubIpAhwMwPzL/hQli5+ScV8HqGJqZAyHOkwPuwrZvUlSJ1hDzJ3e+3zT9rszYhzPM4eX5fWb1jjLL/6WlzOOcSvMOCKZnhBLyfZ+IGfVUg/+JTHUvJY8qJMYKAyjxGMCh8CqTZfd6D9WucjJbZIOqr9BFIq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x1Y23ij6d9Ws2+x8aOQaM/B6svYvOAC66DoVQk9yMSc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8xoCbEfoCe7JlLWe/U60vobPCJEGXtVz28cr8KN3rYvdjmgyRLrK1In4aBEv/MQwtos1ljLgE7S6elFtyN66MyGZkXP7wXii67DqXCtfW+ilUD53pwSLdGyygd69r8mpCA83YsdSoY+sTRuRub8J/A4kxoKsaDunZN6fZHqaOP4POA1xUAQygBH20V1/Yf9MzGdGOoWeSoYoX57+VfrAF4vvNnEog8GMsb/kyzN1m/J540zY68ATNvbmOa1VH+ptiTWybvOZQn2qXLgIVwi3fec2xqES9omeWy1fXMn2A9Ee+5nWBHOlVhRSn6Zm/VHxi8VelikTeSpW7V/VkGheggcSmJ/jZxHHD4dZ5CGbFm1TDCof+u2AG+dhlILPogq2n3KjlxY6K0i05sA26KmOVEh1uRgxgipE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x1arTyY9CnTtmJDhW++Wco8ywq93Vk8N2IHzRD9wny4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "W2xmn5PSdhecl8J5pdkGs9MKj2elbhlz3OnIUx3sDKGxdnu88cjjuela1vjvRSSM0zHuZt4D87VJ5AVRPqft7+tEeg4kJ0x+F598n4mXU+DSf6oD3Qm67RCm1DbYk+sQbmqb11JrBA2hXECKFQ34yoZKZ+v53FRQsYSDmq56s9KcSmc6sKNwCaU725jpOngkS8afpUeAKt/zheIGAYTdadrehjRC5/MoRRI7DcZe/n9Gz7yGiirv9I0ZVx2rS2xo4ZS5Q1a0cZdlP/gKM0+yDoJqfCOJjfTpq5mCnuKGoOusy0IOF/tK4QdrgpMigqvnxlM1MMAuKmhBHIiP11iQJ1YcCWWO3nC54GUpcPFRdRTiaQxBUcqFj8itGz3eVWSiRRVL8xvDdt5e8/rNms/UQOCoGUOuvB2N", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x1eBWcV5qnbZEgf1bFGJAo/ieC9hATyH0wFNrqgXm0c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HIQAjzRT+O/o9RUZ2AB2TIqCblWndkZ0ifuuE18ypPp7g3TeDOHYZs3weFQXYwvhnx6CwPL8A2B5ip4Wwg0nAP+CYfTu9r0yzJDq8OboXfj7XFcShLI9KXhuiwZyLMyIck+EeP1iIH/vyxL1eZfhysFsJu+nAz57lCNjzT+Xp4fOJhhvAoD/AuTGA4L3g97wyOG+6jW/z9REASBZ8hW5C7nwVVTtcpRMSCWPnb8fYNthnKibupr2Aby4+2Cwz8vXSd/KLCzIc6O1396VKIEf+u4nbTPqhsmb1RMhB1iJADxlEswrxr1J14Sx2NotphQGhT9bYMc5CxoGYYwQOdLU5lehmT+heXat5+tBBKaZHo4Lb7PEmb37rdm6ZhmyewInEgZIM0xZ4ospsPCIJgDQ64CxPG/J/STF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x32RvuFldv0G8J93+XGPe4zsZ9YX5N9y+UR14UhoVGc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "6ikIHGRuC9nPOSGOPhxAgnokQWw2tjK9u7IGSBQXBUC+3eMghvn2hs0vmgYspSYRIom90/FGofW0/TC8Qp8NS8D0Eyrq4IQvl6lRW0xcwAnPmGWrFfhT0jkQlWu9MKa9FYQM9mH1b8RqvaT4ZNK0YkLfc7Z3AOw4qNKZSS/VSSuxljVPRceXuwDMPx5NZbTHXD9qiiH3JMlOQ1bCk213G4WTGLkvrA+e7GAjPRpZIWBMgcFtOxof6vU5wtuLt7MG2kicBdRheiTfkTGvTdcxjSm3dc0VQ/qKm30AQnHSM80GhJKq2YKNgxuu/H+OfUmWZe0zp0FkX2rpzCGrXXi7LFqzLGKc7iVCdr/c9uZ46B42iLkytK4LGKn/Sm+Ur6ybI6HpJtdzUaiYoE1EJg6IdnKyImI/CiCi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x4MEmNGhs2lHlv0x1FSsFQdBs01hcVntvj2dDsmg15E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+BytCcuUYP6R/VHy0zCQs5zqoG3SGN6C3YdmhIsc6RMTavsQYdxDkAZKG4PvbuKGeAgK7tORVhLgViLSy/OpzgkppdPuj3VsX0ObOcXAoude53ATIoa/1y8SqRzyO6h1guegUeIScEHOfKO6dMPn6FI2dlk3okJu5DqnYP+ULT9rIdwTqowLVUeNrJwzajPC7HLvs2IMwFjzQZPPt5MfZ+xw1G+cKNZ4+aW69CSssPV9RABjq4MHaRaROKG/MdXlmHmPZEZMcQgKQqQ9qcvlXBcr4n5PDELX7/huVIius52njS2OngndA46DluFZ8ucbVQb9Ys+bzHY+45OPgIa1hAzuXiCBpRKKCf5YRGeqm+wRChsQVsHN192si/x4+vw9YEVPuar/vMIyFkdRRWeYnqkW7ApFTvpK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x56J0GJ4x50NUvu5Rzdo2OfbCX2IEmQoQbg8EPvIuko", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0HKTWFEZs5Rp10TCtAH371f2WoGtCQ3CD7h/vKFTjBdY2/9qoDiQm2awTTk1X1cOew8dOK9njDrRhObLGIdDmqWsp7oCjbnoP08FnXBShMMgKt47QM4xquZSoxw32gnaMD89GNkFnCvaB4p0QD35BreTiwgDPP51mABpYUK+KfZWU5NmQo49uuHgy2DSBUm+vV58cq78cL37Q4ulKnNxxp+3nqZfsevNMQBU0WP8uzlImAvxS5xqMwQOn1YVxPaB98nYmPS1PKosanxngr3x4YST/sNt1afAjM1ZjvTH1UsvfVPRw4SXtCNqZygGRaRbsrAOstOziaZ/GmkZhgxvXr0WY6EMpUVM/gYGmJa93Joyoh0b08gf/iUSBbjvqDWxi+np7p3dP8ViJx8hLbSUESHpIVFSIbTk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x577Gya6OBEQmFynFnNVR/RAUtGZvA+6Hks/kIHEgGA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Q2PlexY300yPtBXkX3ElAueUq4R4xH3+E3rH2gvkYDlWvs5/zPjAs3GNqDXowfBBNbZi8jryoZb5oyh1dE9A/W1w8StLS8u77DU6CnfLbbpgFKFK7yLX0WPFHLCcf8yyXG67x1/mSX9+jXzXMI6x8lpPSGFQJxy2/guXmmUmdvGkpGWXG+N6+iIy+M/MKZVbDD3510/V3JqMzNl11r+fAFWBk8IqeB/LKJtzzW3d3rqwj47+jQbZX6oQLM+s+lq048Fcp5c20EXSuvd5KabjGnjnrD22TtMOXbZADUpuXUhEK4z+u9tzaJQaCmCZXqN5VEhD/psINf4+XFtrGSwkOJBEfkCIlssj/4GmQND0AEHahVAJmoT0k5tqNexC5/Zp8iHlPo4kndoiie5vN6cGqv682GcAWNNw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "x6IHEjLLylsiopq/waMwhI2ROBap/oNheA9jinVI/94", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fjJdDMnpfzTZv6aWsY8IL8LY2BS996KKn94v2dIHPZheQLOF5Tqgjfc9ohx6rS4PhHPojHSUwYfJ0ludyqdGTnzRjtu8olmqnL7vbNw8iNGRa5KDd9XN11q81TFZ8urlCQUbd7jgNakPvb02pTOrKXmaSjasipq9PTSTkAZOsrOYN9+vnX7gVhN6A3VC5dWydpRcKzDHQoV3aA9THxWHjcPoLLVKFqAdIXFJyqdoXH8T0bZHvpa7fMaDM9szVQArsBzrQ1gHubtgwMreS5suhdbQsnon667vmfx4+tQQD+4kPF5pTsswJFxB7eceNuLQNH+P7W9t6X0paHD1WZsvBohrwcPk5KzEiNYUNUUxUUt/nEyYmKxozeWeqFXr8v6k/jfpX5sWV8nw+7EhywrAO27UDUD+NxGV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xAUvl8yefJsNfIJZXusMKLOzjaRLICr+xaFp9Rh0J50", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/E4/JXsHcJ0pE08Vu5DAvs+Wy4WJPr80uqn8G5X65MPqFug9UGHlNoPtTntQ6xjKBInq0ZR/cBovZMtJZHHyUTCB/ixgRYvcnnSrUMn7L3Cx22oSMDP2/uCijr5VuJxgcb+PVm4nlEPbN1+APqTes734hpFQ+Z1j6FoYY93FRW4g1IYmvn1mvXdCVBiC0pmcADvq02GwZE/cZKKDxchISF0G2cBb3S4HFwmIxIKxRKx7cgMDfy4WkAlIoaHlWaLSAYyp3dV3uRDZvp/kbpEt3t4ZralvnO0pri6pwoQqfuTRZv38jWSD2OTx6FO8llnImNwtkHuGl+/mZbJjpQhzSe7N9hTY+VoBEjJABBBqtRsVu7KLaJkPUuUxsiND5wyiPwpn/kkWMLuCk+uEknppG0A83OCo5gJ6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xB3hAHLvzl++UatFPKgmaBizJVA+B8eTUI7lYqkRUko", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ttSpm6khEjzYEYabDU8ByB/q6lmClmvhCV9gIyx9DN021H7PwxteDgv0sef3gLxH8Swn+TaUHLPsFYjXjdXTC7cYa4bwL9CsHuYEx1f/Mv9XU9ByqOn/yd+A9sHQ2i9SVf7jG/8i/Knksr5xAuFilnEcye1LpOqRtiDPV+GV0T41GnJ5xdQQVDf6WMLuZIuxhnH6hSzp+tIoPb4o+p8fLIfVRmaTdCK3XQcpvNh1KB/C+W6xa5Ef2NGP0+5ZmP3WNam2OaW8yDII0gm/B1Mxft2B2IW8yKWaE6SLSIIOdP24kfDwT7pZtf3UPxZgpd7Kv3jKcbqWqifmjNZkmNR/Hs7w0WP0NXbLuLQSk/QM3HVFHlMzag8ro9LPIADMpsvbrhJh0cJmWUUzaG8QYzuFgKW+NFXpybK9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xBZ+c43nY7EWKR/s14XxnKHuBryrYC3komQC+vrK6dg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HHyUeQNnL8e7qDqCBXivAXnxn08cs1fUeCuMOgBZLi9SEUChpY1HjeGtgn+WuW2Md+bhD0EY5lVJkfTdMHBl4qFANVQ6KJRAiPno25fUYfCNWwwIaHgc+l1j8L1zKE48q0wIepOpQR8o7a4Q/m002aaNuqkPBVADadNhtZnNczllhDWSUaMEavWCORzY5hIUmKzZaPoO9sPBjZOtbs8ryclHB9jhWxVhGZpFD3yLrv3NDZkm+eM0kzrSACtN4rC70KE4ta9Tbm97yU7oKROwxI4jDKc6c3Sp6OkE/5xoQnIaiwQlKwXXYTpNLPtPU8mUE5004CnD7/h4nek5BAlWz34NuRTF6f3KiZWW71SeGtHHtSh2mBTKvEwHv7oKvSpCgWICyI3Mt5eMKQNAYjdIVpRkDpZYgvY4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xBb1dzCjKVcU75BRxauzf9NSy10bTm5I+Dtj5VixM6g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "J3E2ke7EXXSg4N3rkRy8LNpyXPcNGDYasq9g+zUn9HZlZpi490SV/VgiIP4iSPuPqn/bn+/vvAFXxDCeBY+/+gJwkhSlGfmdNoWfUhVI9yrHRvXgpAJUn5oP9/xKh+uz2+D3gzd80IDo8d9YputYlUg/mwigSZ6AtPKGbCi2gbsjgbyIcZQ5Cbox1Bh+7oSTZD3jyIYLCvLVrCm4hJupdO0PbBu3jWfjU9sP0LHn/3q1r404ZJ8jSF6+bdownv6UNtHhc4m+0/5vz2nFfMpwxWzHivcrmPGKf1dgz7yowvvzLwNsstacWhQU6ymW8sKiIKswwJFsZw+Sex1qeIo6LP2SsrIJnogYoBmbzw+KZO28QLWzElRCzv5Q7bhYebBh2oX3wGBzppRRnkhdkCQsoWDK4tuft2Mr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xCIV8ktEyJSMJcOkmNRBVSyYKFyWT7FOsomQJo6SnDk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8/Uucoe4bkxNgqOsL48tMPpRmcOOGGwW0+5EfZ5wFz0Pk194mfgi2OuksbLSlQnoxodsrxvQYxHZ7+Vu6QtsN8UG1scv+JGaQrN3iJAW0wmA4G9/0Wc+muSKO68DO6zaJWnBYB3yWHHEuGCETMOzmlJZy/1+yFtkNdJmFvDfnEnydIxfMPt7I+f+R45LIKtsnPuxCotaN2BoKn5xRxjIXTCqF1oefJtrJhBg+M4mUsks1D6KtY4u7QPow/qbHayGGCkUwPNWGWblkUwavchCSVJeE2V1gWzpO9jEsH0PIB+Wbkr1EuyEqhZoj6Uzkq4I1Mc5j1JwliU+m5nPORHAgvxAUil1wmf+SzcKTRV+IOf/hRg+NRON4C7y6YuVq8NXl7p/QQZJuubRHIEIak4ymRgoeghUamMA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xDYLnBSfUCgizKSB920/r5zht71r3IQQm0sUkDwd25g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ZkR0m6wz0bvg9OLQxNJ6suyRwHUTnd9BwmBAL/VQQwRTVnWEefDuCBNtl2NQTDYqW8dMT/MP7w+paqd2BRkFvFO05VCtXDhSycVkCAQNG4p82SwwAug1U6YvqjCbin8m8/J/TuQfvlcPN9VpbLOX9HkJjJySWITzEzKVA3jU8b5ZO59m62/TOShK8yMzHnEKf3kaGC/2dHHJvte9kBWwXo6KK5nPn/afrub8WEzXimN4Nfq3Ut+PZT7+9tJqwdOpgRnuMMYpsH2lVhmVvoDtEjl2hUD183TPTP7jgIGsGIbnHlXOKLoufSV0bk5PnROKLFZD2F+jCunJMKHmSjxuiFEONC0UHHwAI20VV6k96s9zwbPUEuljqp6i5CeITURDYsZHz1bxwjMRNLQ0v/CbpXOf7oCCiZ+W", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xFcnpcSsR6ojv/D/fcFD6P5CZBw/IwuONgw+rrPxpUg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "try6saqKnBtLOTUws5ro6XHkQOZsg6lqtVXtxn7F9Ef3jc3pdbWZD/Dnvpktvcvo4qXS3sum0fSeiADqkFm2YES9kCJjp+z3SPzbGqaiU6dEgKoBWvfOum0PufY28RjWPfPuc1pgChZk6jUi7voju0qL6Y4HUq/lRk00z0Myr1f7CDX08g1BI5zDgdvxotEyIjqLL0RsRw/zyjHdCLy7n5LpqDN6VLAVDuIR5u2DKrTKJdM4+TK5FujuAt8xO+7LIlW2soivUxfcve0LNnk9mpxcuZ9cUVcn7Fs9E1Ch/1+9OBvgae8ZuABP6J4lSZ0Hi1NBQ/qCYqLfzSRfMD6pzH9qLvW9VnU1Ld+R4r9dOT66+Rt87fny+7XoBgb3ZDGMuJqZnB5m3VXlkN46EkjB13EBJnFCyqhX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xG0XCemlr/NAliBz76OcRYh8wZl6wD+ixiRPP+AqTm4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fhKxjDEI8p2/Rc54Uz+s6CGpnj5qdYnhHhiSf6lfLCk570UkesbqZ9fWMWR8IxIOgFXb5ARFNYzOOlH0Ry+4mRMp7p/nwaVi8HL0RO415K6Cj1Hv1PW8HJKdYBexFVYEHl+fLBFYMoMst+b3xE92zldMO2FsAdkSSIuKG6mj7/sVV0qvH0jqAaMr/Q9WSods98jXF+Bxqdo5ea3AV/7mJ0mr2B6JOhbLe744FjJ21IPhBUqhQ6/IV/Ki/9IUItcUfHfIXpCilJLKCCOY38Vq3HeFc22NCkiQTkaiccJLbK9iQ+yRWBTyzBFIrvcIWepnnx5DP+pzxG9eOkRxcroY7kKc2YcADI2g+3dXpX+OiOYy6EQiO0XRVOdqx5RyHvQGsPEML13sYNBHL7AzzJ2J8HdEkuCYvmJd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xGOidleASy9OOI5t6sWHSy5FQ5GmtLYn/SBTvOklQ9U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1oWtYeHzMW9AqVKw5xL8UR2itnf28XqeaHUEOqD/G4ljc7/awdibO5YpAQSzd8Z8Kkt+XoUZsSrlSOQ4Nm9lR/lEjamoDZSabp+7chq8E8mRRSDw7tCDBx+Mehm2EpzcyZHrnLOpnvwHb8tnbizU9ic5Jc1fVYNTUyEXSeSMj3vSOGzRc+zLKUXbuvZ60LhV0HmlEBdyLJmoasxX6aCcuE0KMvxJPHIF8cazAEICkeQvZHZyKmFB5QrxiY3T9K8IBLzMo+emTsGfpDPuU2ugtJnS1sP37lDXRlFN6E9yyqu6EcwBkW75P4N2rjG1V7TBs8eefKamXKkJjCvpupjSg8IYOpITgdrxCQgl1N39xvUQsUPw3T8Woml/grMI13aksuCIslNqIsPztL30TrY7/YwTHWZMqqAD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xGodoKArMqpvOvf45yMWqwTJLl3i/3T1El9K+mxh6t4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fRyfnBdK1xLHMhUI+cXXv+keASIrSSA0ykPbhfH/l7Pi6QHWaZdwPmJQvia/pDpbAKyNvSpqlOoX8ev8UONskXVNrdBGCMME3QkPZI1jugGQcvBeNLI5I6sMDzkjDpJVDSgmBwrqSHes3XqqX1LfxBgTvXyrVw1mRBgRBfXdf/yV0a2tjhWYGek/VT2rPz+ImihtrC1itn/6c7aS68Hsn+EnMeSaB7Yavf1QitHZIeVzCbnxQfg5fSFeiAhEx7O2fiwqJpD8GYcEtSSXwQrcCexmYtc4uAvb1syJKVlu770Qjvsoc1gAkMlt/KeEyytQU/YZEZlq58T1f0vgaSn7nlRSoT39vUaXVjgef0XiCcHCNyamvIGTMzS63GRwHIIBs1bxrw39P1+QXZ6dLbDEyt/ebF5enJ9e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xGpLJKi3kRnAx4nsYtB/MyC2TjEfJ/1pQ7RZ/K3R8I8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OljyA3hH49JYaL+W9kHhexYOZ01cdUmrh+2ly1te81lSgFrJxiYwqwIQzUUblBYFL4lgu6P+4kaWmzup7m2H+55abkkrXad7ijnx4ssKihgt1GgUve/FYRcbz9ZKztwo79W8be7B99CZvSws7/z5U+ahbO4B9+iu8wYkJ3225Ra4sQz44c8xBNDiYoDn7n5fBrUpfkWHWtdECpceRQW1oMZHBcbqaRkNHz9J2DjtMKWyoZWCIWWX2VPLWeySkj5J5dFq6/53NxH2VUPUHK3qO0+x+uFDcHAGsMvUYnerbnzI4wYtZKySZvN69I3YVqPqkL0HISQjjWsKlMOWYNdRzrB4xHwhDxSKbUyqOSmdFZ/j9ALBsboihzkikaMfZ0Nx+VZZT7SXKXQVIt/4bemC1apVaLBmeVVH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xI6PRLEyYLynV2Oj7qeLAt5od/KPh0QZxvBn2qiOxlg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lsEeLbAemGW3Lxaiedf5//YejPigsNYtMeL2phC2noWDMN8G9/eoSnZtxaFdpe9bQLFkc8y8r1W8r1wixKhZDE4uP9OR9QAS99g+JFmwh+rrDMRkmnlwwUQQ01AZC017IEXz97uOX/5+dBg3g+8OnvOQC6uJU2dZRBjbIzo6ZPtxUhLaDDIYAgXEKOcpJ/t1SU4aK0chk2o7qjub+wzEhqXe2kQgn1orCyCcpid+0kGXkLRC2kjkhIRtNngbgGtO9XyDzvGOrjqN1FJ3ERK3in5sKa+Ob/VmQxLHW8sLmpkRm0JgOp6/oZ0NDKgmOGP08VoEbHMpNgSIOva0c2yJIKRQWZZ9+l3MrV+JR4LLLYbqSF8lYNGxBSWY5pF64wWRTOJ9Wtx2bTYukg8dBgtmxLMMa+oEEglX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xJ44VdxGrvXjlJ5SMRNqlRZQvnGUaIAEHeRzobaZPTk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "265l5jwWETaMCQ9aT3OHecyja1U9RJCWjk4m8+uQvIpAfcvi4K+P/aPJdpCSinoauJx1bJjuJA+8jbTqgVTFfHzvfFTB9pzA+K2FVr1z/9yzL0QYhuhtfXvb/vUvewAbNGjLjcvFh1MCbuEcJIWaTZBRutXPeBqRCvZmcML9kuCzVv3zbbbD5CFxFAofLCcNRn6cLIZiBx8gJK9knxjhLFG1+KXwNCBwEtq7yWxOSEh/p/cfo1733bvfGTgDu83wVjEkIgcTyC+346dpj9wrCvz1svXuzc6K3gVu54KR5l5pCmvHYcNSy/NkMeOKq/EtMm08IhFKHXUfJJpVdLI8V7th0Ovk1Cn3WtVcNYTF9T9LVKnGwnfDkbVXltSPnFW9qmvUisrkuYbQPXu6aAtNLRV0ixahSl3/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xJc+xfydgMyB7QDK1NYXDMAzCmTuGFmfu1Tg/ZEAGXQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TIP8lwy7OZvzAefSLExZD1r+aEVnLglELPP3Xv79H1vK4hhn3znp9WNbD/7Qdquxr9h2TIj3TVQm4bVCX2iI6O5kwSTaJvcHrBT1Ll13t2Q0UccQhiadFQVFBFPPO+72OVWS3Qx0J5fwVs7V0gMHA5xNYW3HIhZnfRUlSf8n9Oam7KC9kvpWbpknNRN7xVQd6yriEwXDbK4Q+OEnXzyQZGWcrGMWVhYyg2+qdVirowzbawV1WK557Lq8T7L/hnttes0+IPla+oWYgLY8iQTIEwSz3b/6T5J2/F37b9lvUixTPa5/JeJ2sEDRjBv7ISaCw/uNp9rWsZxdoyAqGqfMMZ8j5WEP3rXqMxUH81Tq95EFCnVVZaIx3BIo5N37HAlNP/sBqQgeY2WzDmvdY8/+VgJhb1Fr21mX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xJrdiT8ngd0zdnBo1pE/a1FuwEimFiwnzeDKXG7s42c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mJ2Mrn07y4xl2CB+/2YTvkEfgqbdFso25yT3V2cC75LsUgd0fjarY1KB7NtQwghLg1qBb5UVbL4ZLmwCrsn+7MVg8ZfGG2R94pliwkBQH+ADHyCFFPlwLVCL1z70UnfWcmLmOGUvvkLX7QgJm+RzyloBARfmDmtUCyzUP/fUlgMKEyir+jdytwevpNyGv/JyDZr1OeE2CO/SdkIhOHRdekUMdeUHcHZWq6527QVuVZJj4Q+AhTgmObmA9l8gaAFKDG4LIQxPT/RAfPfm2XC3liQKqVXPqn6hB2BNOBLYKvhZqZncVl9gAbrcGDCKXC8LlnYg6NRU8NT/eGJLad1A/wUpJKzCkckMaO8movzBJY3QOL6Hk712O1SwUf8RJug2kfP8lfN2RCyAGTzxklvddQ4xzZGch49e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xMJ9r07cP4pYLGfecpK8719glgDJAJj9ZpJwlk+ueno", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KxHVA1p5Ebu+ILuWNuEHp2HAKV58jTaM+MqH9a4cjb3Hkakd6jaao6Z/jqeC/30p75Hwnm73atVixvZFYtwI/pRdd2DmrKQR/6fhfjOF+B6oyQILpM09jIxT5HqQeYofWj4MRl96LSpPtyWWsOs8WcCwM2TpsAO22emoOi8DiXGXiBzA+ItCBxbwS7UvftQZfqGklaXfWiwEAw66OyPIMuECEi4MyuJsuU8ud7C7FUsyrTRWIwsOIBJ0Yts+Y9da3FjIIuVrIAgZEO4hxWNiNAedYDyXdt+2CzVVitvhn6XxliLEk7YEXe7OQg+5idwipAHp0o8vK+HQjAIqLfw6aBnrJ24ihlZroP1e2/R3/Ova+F+UdKKVCdbOsI9h+rZN5WdbC4wjfsJfZvR/1ldSrPFJFJlGNMSH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xMxdq6RJNXv+3cipkaFjREX47WCJzP+wvxmQfuL/tBM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rTFxMPX2kLsTaauJ7iEO8SuwjztZiwGhkZfS7JWW0EDHdTxCUhFdmjiA/VXHIgK8o3MouWG91AsGhWU24wN6GE1IN4SfXiljxanGErlWwMAw5IqWGPjK3MlykhHwLItSYYcEQXTCeG37GY5qxJxq49FeVm5LWKVg4wX8QktJs6luRKtUe50HJJdDWFCE7hAk+1WWxDaHJVoga5g5OShOiFr3W7zKsUhXEgPGLAKP35DkYmF5pNSiAAXGvceBVdW4jhS8VASvF5fhJVImnuDu+e39laonfVByj7leu5lVbI9HvjUWJEHZb0cSLWnIkSJKKXAVySn9deUWutQMNcIjcJL2aMbxeqUH6fsFl+4NBYTkavk3T1TCrDqWhGQVRtub+zsWFv+xdrT/G/xGhhEkE/62Cj+s8g29", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xNTBw2A8Ybndt11FZkMEplJGEahasm5Mqh1456YQ+so", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "s+XoUTYSQJrk0eNZH7n7MsXol+vlzF7tP5yRSC3m0c895Lvp4DoIvYjS2OEDvuomDSRxbQ64gsRfhLShL1UGYpGAtzk1AlhaHcVO4HqqRjFMFweVzRU3UY7QDaEM2O1a3aAuxVPFX4YBXBOBqVh0gffmRxmf0XGJxJjPs1jfoGq0WHb6jyPQqBaFaOkVDL4NBYG+Nat4MnqO6URP97j7S9QQvlczk61N0YoIS398d8c24K5XKAFDVD/lfqGypF9vQrCgjXYEA7gkNCvFBCAFuPg53dEUCCNQ8bt0dGII1BAhdjbQd+pVy3qCahWqLSDNR/7LbYiDOM4eT7RWFKIgvGCjHyo1n6N7spQa4EVYiZ5mJ15MWd/MIaTvgj/ayRjNm2Hn4rSDLr8CST1c3jDufXvZJETVGJO8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xODUzRSCiw6uwvk4yAvOuj+ZNAx4YdfE5Mn5e5YVROY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OPk0yVLrMY/6iYqn0LNKkWrhqDceNzwESKeBycH9Fs1j88VhxzpVirLm1W/bdSI0js3rqs+Mw+1WMp/ayTsYfLqONwiF16gB3fSYK0+hmmfRQm+ky/zXpFyjD9LKZ7t9cscUnuFqkXIY4nVnmsJXizOpLZcyq4ujBkiFrA7nws0TXGpdghnBunZIN35j9KtiWLMWiD9wV+Ht+CO6Sv7Sjrpk33FUlLbaHON1nGPGNo31JXMqTP1gOC+55QbIiaAE6fCHItcWs7T7UwM2FVYKwfkrUFcOPnTegm+OIfWgNip3lboWUaoxcbhfmZNO1KgAHabEyDUY5eyeQaJlE6UneiGQWv/Px79Cojij5xFTqu7ruPilQphWn846nxUIhN+ttfHyIPGlF0dUHD1ag7Ac0qDu5mgAcTmq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xQ7E2gE4o9ovZfNnPVp2091L7YUC3BraE1y5DaDdFcE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PVLEPgOaV7sj+XJE6S8VXQpngHpRw1vtNNqnkxmoNPukY3Lpcio3Y7s6AcER7cYTUED64EI+Flt9+Y78g6+Y+yNEpWDAGzlfEvBt614G9rhGnC7rkpo1FwlIRQ4yffzwTBwL/ik0rhNnAuEFvz/5ypbtygXlsC8oPKoIoP+FP5nh5MMF/xOkBkEIiriSlatBjk1fSWdnpWLJx771jyhbVoIQs0vu3rG0H9xI3FAWPjiXVXDe4Maqjj7vIQjwv4vQbXyhkAtuVzBSbx63UgiPY8gKbpZ2CaYWzyLPV1KwzjPCCN0uiTihSomwPgZpIXrOqvF+S6d1GfugA3EjMWHppfM6jlpA6VZDF0+rMS3brxKGY+hdzBqopRmbBSh6B64mz6H2rawO4VgIooJC+ppzPYpwRuk0LUnU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xS4yrsVLt6OmTrRLJdZwX2ScMSlcZYt0QyBhXg91Ckw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QZFEokgG+TpVDLijN3ger11HChlnXTinziGgbDzXrh8DMaGx1C4NppqWpeHN4c0C9uo2QqU+1qd53w+DBKBorRG1WlxefC7Clk1RQsTP0glw213pzIKvonnV/yBjkNlYXP9tzKEzKmE1Osie9Ul/WNyIJIe293CpXUuEGABSm9oqALYFaiA/xkGlXV3BtR2p+fZN3pveZxYsDjENkxs4H/pa19DWLQZ/3W1AGErTHmGQLlx6zUP0m4pDRyQyuVW73yzK9KUPV6dHTChtXZrfKf5aaMgxvDesjGlRu4zvuQUJ6abVK9Cf0PLuwEu+GjjIK2Uf93qH7WGyxVXmtKUhXj7kswzNS/O59kTK5eIRhAGerPvH8fXIFSKH8jJjbjBhTo+9zyie9So0eDw1wUCvM7nlUR2x9cRW", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xUuatKAC3wSezveRLqVrOJglzYkR6evS4DmiHVxwa6k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tiov4n9xdsJf7vf7ms+6cgQGQ949lMZFRUrIVlhDK9bUBocADCmOmSCsSeqZp3u07Nuh69iwlKHhmX449gamR/AQwClit1aJgY9z4vMSo1gH8EucD3cJCIgYmpmC1RTjwhvYMk+TOPeoKFP9blQqy2gD1jIuAaQr+izBHuUIwLSLKbSglksedH+TckcPooGHYOmVDFK4rr0kGjYCpPvgEknPEyC6rmF6p6pxkGPEXUvNm2qsGYOMg5c1iN2zIZUQGk7rAYZcTnFHbhnk91+gNmkocoiAaEu92ev0eVJQxCFq8+CfTuEIDKG4UkRjntTY8bbvu4R/NB/xXr1hP1q7A+MUM+ny9ORKuLozLo/znFKnBj0MXxEdSdBBPjZ9paxhbr2c7+pBPvF7CdN54G2ys2uusjUTW4m7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xVO2CrMd26Zej2phHD4CF3zL9NoyOFZAjl+FL6DNubI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KSBswmLmT2PCjbqAJvHgidV4vcPKoOr6Y7nHfQAlNJw+WQSA4L9iVl0ifrn71AN0YGtEpYIq/enU2HYUTjBgbxTqD41msvsx46/c7pgENj9IVgm6zsPwClxIU1XefRDGkN+DRhUhZhJqa5z5kThM4bbk0rt4/qzdpfV/PgNMQAeNOWUc3+Noyx/tuVfkR7irPtWRUcBNKWbqlcKhj2uxlqxspFDY6h4Zlwd3bb27snXu5tKvkN3lsJKA0miSMlkKqfH2cvLsQ/Qr95VC70HraKWNTMDk0vrq/JUZNdVeUnIbfqX0em7eQ+NrLoOXTzVsRbbimF+EB0Ju5CTX2LbfmeOFwGijBj8zG+c+PPsgcWlOQoFwu4NqQmIpdAk7BGVPYDlbddz8UwAEloXSx3l92lyoDl+1Mspi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xWJa93qgGbXk1X+AgSKHexzR8WRxXUAKkPJ3fmZevdI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DZuHoy3QSkVI0cKR7LDjeB+y4szf5AbDQICgwXRSi5rKfqyScNXgXZOJVQ8C04UH8AEjTibGRcpVS0xjEBEh9iuIfCr2z+R0s5ZEjwfhx6kZOsnjSp/5y8+edW2EoVlpc6JM3n1vDJVgvchSt5dyU0RFWu6cyUA7eUj8Zw4hzdvFO7IvERj17jIkcvT/k7bxxUFzm60crdGBW2qFGOGg8f8d/OxixjSzFUsSkyIQMl2OsYnDSLpfKnFZO+y7IgfGYGuQGDVMZ9SdI2rmq8nqvfetH1ZdR78gYwUmSmYbX9EUsUPcMFDL0MK39nvh93QvA1nt0PXPufsNNnsV0iJWstg7o0XoYl9NDlKu9GBzgZ1AC3NmBmcN9BpMALjhRWuPdm0ygN0CT3UQhpUOKoqp1rp0okoW4B0l", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xWclPCgv1x+MD8dRVc2nM2UrL1cCCozHgNJmjxTXgGw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c8iIi8kLXUOOBT2erIfCei+UcO5a9qcQDAxhRULYv6z0H9Sknthu77XLjJOf8KTqlhBgpvaKyW9r7Ws+0wqVvy8hBJijxY2jpocYKwccHf+TBcAZtvFyI5uzjnqSWUtZXO2ovj46Coqt7cyJhfM51qzeGsghObzWCvtm3ac12pr5upDNOAetFtskki4sO1Z43bGS1NF8CQWhDxWv5XdKsWdhcebedTGdXy+8xZDuZrt8eEYfn/nhAY8Wl8zBBxlSmylpem4J6KTUZx18+gIwYJxE/tea2RLGcPMnwg80+k/MrthopjbkRwvFUgYqZb6V3M946NNI0/CkovleY7wfDErgjr5uyvOabqtsH2LZ/DqVy6AUpjhOyQELDq1KoNolil9zwCi9ZsYd9lp7hixGUxdgCWvZSXCh", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xYg6/kqRDycw8/NuWlLiq4LIalfSEvuyz7Z/+NCXcj4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BR2n4SpMkUPdz84kG1snTIfbQrqLA3+y/Iz/L4KrewlFNbhmYpoVuMapLwzIDioIj40N8PO/RLrP5GBcMTI9fH1jrI8b9tUv95LhCOMBtTzaSrfVkS16IOzXFRF1gZkXPhiHUJa2NE5hImb6SFoHVJpXvG7joINvaS+blIxzJqKA+QPR1qDcQb+0bRhA2MKhHu6Jl9UwgxUS89PofD90hmUoYhlBGcZYke7XHKEionTlxtHaJiWTafE+9kVJR0HphxlrpR/yil+ZKwj4CLD3GOZ4VMtrHfia0Flo73bPDp640zqVVDz0/fjm12PStzy/YPLM0cmP+AFkru8VSL9V9F0sICbuZC1tv6QzK0oJTz75Us2DDy0n1SjNOLGnbn5+UWamAA6pFqRexGQSYd2upGLigaFZX6zO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xZAO74JdomWQWEwHd9ZZVaO5o2i5mhb+NKcKPHsb5Kc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YDxdNz94d4IuTcO8MbgRnjiFm58sHRwHM32dLOduLC0LsDLXZPDZvHzOkXwLSIhS8XoPAq4a3zxlhAminHjv2X6iZALAW2ACneuBF1W/09DHl2xzkh1tBmQHG6I5HonS8fV/2TRPhxO5P9sJ9ELzqLp6H3+w29hAJfsnPC2IHyjp2Wf5Pd8rWp0/0z2K+PxlUr2IjdkEytnjsDcHSISbWnixlNgOjDcyy0eKHXAhIOZUElY6D65ExEa4SR5zVmGgEvGLvAO+yMqu5ZnAFrJ3gVzLWd/SjNfZyKmOWUJFgvpRKHtMWUb9stTKRAERoAAlDwWLfi+Ifu2aEOMUUxv6cMSIshjw3EwwFA4eWyqh9ZjMlHqYtEGBluCM1Xg8pTlafZ+lIx1gCOUWPR0790NkR8Bw46z+WtRq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xa6Tjl0fGXExyHLBwBQ1YJ6sXr/0blLu3OhyCcn1bWE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "C8+0V9SNdlfvQPOuqNdl2ax5+7o4QDt3iwAmIJ9B+D35S31x5hi0WjDFVeg+V0ga6uUoTv2xjHmlq0H5c+VV4oZ5e2WRFg2rNetHXrgGadOEicNukfaNlSWFs9oS+2J8r+sLFMc/9UiLtOeXRqUS86fIsII5CcRYyZzx2B3HelMsK5yK/x5Cwa8/ChYIQ/UlKs4UciHt92n8LgkMh7L85cNgkiOn3bpv6xsVk72J5Pg4bTRz74SYzce8nfp8Clfn66KCUxVCN501XVfHCCKdu1mgIprHWYaMnvEiVyiWX5X7yKRWP9mz8zTGD0i6ObT4kO8Hv0yl0ouOoRmmS5K+lgZFwEGU5OHuI7VddiVeLPpwtXBIuuGhf9XdGXbQ6drD4IPz/uSiTxgfPmNiIHfus7q09Uy8hqs9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xaDifx78TjU+qjB5G+Vzg2rCAE9iONbUAaYf0MFpudA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7wwNcG0cCWW8Oi5jjLKpkAHVl0lA9xISRmX9GHjDWIA4JLqDeSDzBZiSwqPi9z64AGBepB6En6sA4LGl8QnLyjTqsTHiJ0Cr/Uq9yqjoAV9ozrmczpek0s3XzHTqW4CaON6VHkOLfbf96xqTZKQvsUTRodtfpC79Y6jXLuR/ZYTHfYIM1fA4JSodd8qtihcPiqANNVLg0qrOw+nNdqRqizBc40TMFLqrOWww3lnCJFuR5QjnXCs29SyyOI0w93PUtoj25ztw9hO9JX7slo9YJyq/1qA9KwniVchPX3/sOQK8qzrbrRtEUCeBurbtC8D8J00ewAc3sKwSAiIQgBh6TToAZr1vIWsh4NWN1PoQ364lRkkTgtspfEcBMuSvuzXD02kUV8H6jSa45uIq8YWMajuw2s6//Io8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xboS2trmHE++VcnVE8UyVhb/6NjvKEm+QEdtQH03npg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kQ4OPYHmgyQYsg3j2Ljip2ziUpEtVxwywUFZ59/alyPmRDDZ27i5TZwl4hjNwzmzavk2iVAGUSLfqryIcrchoIfUStLaZfzIibb9ExLuna9PkKoQDBALvakKCMWxSY202iLnLICWVlKpjrbGOZYiO4Fww7Ki7COvRJqQqC5ZqDse5x/akl7qK2mrnLzMqb+UnMhvuCPjsfMbOVHMwYWsNtuPbRkg39/19Xd49TFpJfS7dpb2tL2F9qWgpNfiij6NOJSQnCVJEDo3z/9o82e4bHdVG/+wgp9AjtI1K3D5TafG8jpxPpuN+2geaqk81+1mreAwN09eZv4NaQey3xKmaVESqMlJuIc/z0iz/e6GDNcT4Y40aZOlvMrrAdQXkuVvtOaumpH0dMbk8sNg/zOiiy+R2i6ZjT0/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xc8W78W+dO7PSNYLm/DurkVlGVcfG4eO+8xquIx1kik", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hRYdYEr0pQY8yVdo7iuR4eP2mW+IqecXKXs8n1lpcuo71FGYSM1LA8hOznrUgtwUAxA2+o1pWHC02sLv7nFCWnymTULZenyglwTSwoeqrJq8xDgAFYuEgOD08CvY5w99T7EXPjV6Q9v4uiTmNCG0oXi2M0LAj7/Liy+e15NCEMeeuNmvbu/+X81v8NINsB+k1PERGb47JXy5dLkkTTYIaoUkyuBUAsCoc0UfRJET0idFKq3nym/JGIilM/baxK3snBIUQT2M8mEyO4kfBZmpgGHxu+YqduPhvrRx1Fa4ibH2H3DyNEzLdfFakQQuph480Z+bSzQ8QgHKhtQG5vKmmQWr6wpadD1VP0gujMUjz/9Exba+fNcKN7ULOxuLaQsqstGT4H/HmTle7a84mibrUoFsjPl5FgSs", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xdwYtz9HW1+oCd5K+93s1ecd0kP4JVBpa26D+ExTDTk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "uhWNSI/6gNomtYt18Ilms0QfWpTv0TkQVWFG/dH0OuqheqRCCg0qmX8qr06Pz+lQSLFL22UCora7CDjnmuNyePiwWXvVMLr3QqSEC8A4vyAXPhZ+1WD3wwKxgX/2tMX0OXWzbFcocYSVaAQ01pPIKZw7OZ0mpfHHx9jO0eYlcWTMOdi/X6dXJsvMpoiaVT/999xv+aP0vMm3BvSXiOzba5ewzqd1wHYZx/e+M/fQeaDwexqEHFyNRXnMcmfOcwr0l9OnSg/Ne3aLvbeKalzdF0OCOd+8lgzBY2K1OM6SVDxXwehqR095HGMQjOrpwOt2LH5HK6QPky/EWTbMfinSV0WdDyV092ICI777ajwrGpNmpS8kOirjNX9LiCHBOCB+Ko63w/YXS6jEJ49q0nqGQwL9Ni05K+HY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xfNarmAX/JrfxkZYCP72bT9ZzYPY/GT1/um4KWwYfiM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UjBv82XMAAS/dtu0IFPGcc+jchxruuQzriZjdzlc1fglmD9TXQxL6m1u4Egh9qDNw3QIM13AKin2PrTZ3znG9cIZRpQXJntYAsD4Exjs//TrKJzW3/CsOMFn/Hc2PjXnRWpyv9UV5f9L8j5aAnS3Gj1wt5dEDAo9ztHP+hewbP/r6dUt8jA1fithCaBbBEXcYl9vdtmF6OOMITdzoP5RCkZ7c3IvG+BlGRtveMr+PAnbepCGcF3YExbE60NpkrW5jsjfIzCJRZTDk4V6Bmbe/VVyxtRtm7IpmKhYGKw8k7ld7oktpfAynzLEwggBDrlPRMw36jeSpCFWwFAwXInv1/3PDx+9HzJuWA2nvGTHMmPVP896Ud+GWIte5r1cqe5ulTIt08IMW2MjvzKMUAHiBL9ZXYy1Tcci", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xg93MX6kcbMvh9bC3Q1Wlv73XddkJeHoAIdmOEccPfg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "e05rjJIrWNxFEG+6vx4H4M2W6MJwssJjhtB+cMpO/kIbZfhb+WllYH8/EYTUe4U5ZPEl0pDOav7KiHbQeHHfO6PmkERau/S8TdODNJD/gWsqQFxTv/ocRpjDIdgc4iXYXF9gipDTBpW8WqNkrQg7zns/AAfYqyCM/HdReYuY/wezqjeSJlyT1vvDjzJYeyNLTav7JqtT7186VyF0aCvKwF0ZOVY/txhj6djPbAjaibjLGGuIJG1TXyp3xC+PU9L9MrrXsAgvJ7Y31xszkzNy+qFFU2TOnxdmG69A1j9Xi3qXwjHpxuGLrZPkr7csL0s4uh/zlst0FiouiX59rsPYTlP50dOHpIknbs+ytGQJOLE780av2SVfQXja4MR4DSV5bGSIQxdGJ3+UXjS2iPAAkIj1C9u9SqH7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xgci4EZIOqpXVEA2rN83a5psTdz/rcxipJkVXghxLn8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xjudMrQ1qqdqiLDvMp1rJlzQGjnk8kvvLtwcNWqm665azni6CeJf2sQ44To6OI4A2IugVTjEGXRJGXy4f1vcmRd5LSNhASP4782P46b85fgMfMZzK9CEO1MKtuasK1r5U6robMW1c7OvavdzyL2BmT/nBTh6q/I6KKcz56fOhch7xfj50ebmycRyZTEuWN8MGDQ+bxo5r+IZPvt3wV4v2kUW55+Z2vMnOAbkn7ABM9jvdW88TqpMtUJ6L+JjIlKL5p49Cah6YNN1Bf0NxIS3AG0Y1Q3UwIps6Vo6h4E16RkmkwAD+vacjNrAhoGzvjp5YgoE1Qy2rMZXWAYUN7pJWRAnWBiK/laGgFzJDA52umFlNh3zXqagqZkVrRwIS4L8YKb3kon1XMchGEXbh3QHZ4bYxh8rhPPN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xgpOSvcMUlH5lha8utcFG2pQVgZqB/3i7/DYeIq3NdY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "c6KzfRI89w+i5JwrNk3i2HKDTz+K+zCevtQefKAQkhdy1z5JyeCE5MIjkI5GqBdtOH1rJGY2FpFLdXeH/Yponq7PkuHAs5dSUHrJayR3xstSBoUVaMta0eEc2bhaxzgVTS9QKF1q+NPC+cQpGKXzPydWdcevH6I+rShNXRe+qYreljw2jXjkuxXv5tpW/8xbFyl9E8LOQA6IQi7az2oSDoK5/+C5KPTlzEZTh8bRtS2vP35bEDg3N1SZIqpM+jD0yhdOTIgQ1kscx7NjZokMQ4QZrh+2H0MznOnMjElUJ2pv3pBVkFuqiyXLrCduPQ2IKbH4hvnG0e2txDSxZqFjW56AxxrFPI7FdvzJmjfy9fjaF1h1eUJTbMtJYYEENI09gTum4x5aFJsiim8Lj6Mlpwfi3Hue8hSK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xjFG3eMsfn0owuk2AkRbk3lmPkoF9sGRVjieo4uxKtU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mAt2q/IZehf8jZwg4YCSyyLM1B/Kc7RGtE2ao0nG8m1F78T5BgG3R/gMhZlzigJzVdxuiRX/kieWH+smcmMt2kmfOtS+8kFUKXozZGbhzDtTvrWnVyMzxvNaAMFKtSRgJb1AMyr+vb4VkrhRINLlo2OoMjyHBtQi9RpfFWCML/YL/msSmkFlReGmqhU/Ukmo5SiC2FZwCKzDzGkSiTaic6tWzJGPxaoff8V9Ol/5RkFUFdrM0DbE3vylygGip1ZDZhZiDJZsQwVS3PEXSTnAV+gd+OarjnZBtjd6CWhXX5mO0i/kvoSfxi0u+1ZUyPehDvVvJqayu/p945mozLZUcpJngvUUBMx4+MLMOw5XG41ikR8JcJLSYT9+u+CyB9cul/2K48c9I5X0tu/eFvZtSPl5FE0tESAt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xjIoPce6sg3c0A+B5nGZi381QFmej52dLHtDtG4D47w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DPIj71l1LuTrgn8PMsXFdLDIzOwCBW/22vZbkRd4c4fy1tSSk5XNqp3LbGBM/AKcRoHL5WCKiudntBs++AC3uWSIzwvQwKUeiXsd2R1jvhJs5tr2Kw8/Y4tJrgLzug0hIvOSFBPA8910JEJCJnbgSrrWF066MGuTdXsUBnHb3i7kLyp3BtAlDJw9HlNEj4EqPv4KZYALIcoEJZw8H9od/NLWsTC7qFg8aNfNxcEBfQe9Vy6Ji3BSCLKox2chFqh+wnREUuqk3RObzD/nTcWnAsPvxRzw2clwiCB30nUMsWfb9ZPAIrBCR8iuzAa+JiX73v1Qdi+n6zjmQrfN2EOlX97hgyT1ksxQZ1aXGfv9T/yjp7CfX7lra2PVTLtMJbE+cngqTaJJb71G7HT0GIQDtCpsO8YW92d1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xjkW86DwmIczIgxPkVtqua2d4gFtaLje0q+WEMcotiY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AdMdFVfNjLVPOKt4LV59X2IyDGLfQ1fDImciIhhKAzgjYecod9SpoBQoiLBSCOiyqJH0AuD0qKDOK/hHOyU7jbCcD7hIrbCnCAudjlK7VAo6QHuezAlp+AxTgdkCivgXbXpF2s0feroD7fOnrn6p4N+ZvARBI/5plwO5gYsbkc4ZpChaDIRICCFPuFP7dL8d0JXHI8ONFjgC9WGKQE58fgNpPxLabn2XBW6lL5LMv4L7ymlqful0Woy71IM5eqSTYVYVhq4aU1OghfwLjsUxG+bXSagTaT7csLy2LtB843HMgyjdHsfjZYTR+Bnly+FY3+JlRyhodO49787bL4HoHDfy5bB5+wFxtqwXdFcFBKyqJ69ATGuET+Td4S1zFKkBtYnoZ5+nZzZxXOtok/40XW53mUL2z0Kt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xjmwMw3SBzqE8X/42X7vl5koiDb704VTRhrVbDvp3Qk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "D7Agk9LkCjmewWVszads/S2AJX2+HHg9QmjySCboL6C8uHlVnZScQko4LLXM3N2M6mMjxDLT8Opw5ezvRH899l+59Sg7v4IiPVu0WhpFxuc+e3k50gmcV9364cTRYN0IS33J/LBd3aLGVWIBLLzRbtrkCj9/QRWXKfBrXb9uJo0ypjS9yKoAYwZNTZQI1r2T7j3LUqvlaL0ddZO9AtS2zbpCuQzOEeO9DTjj34e5YlwKmUM+yAbKY1ZENseBBbZ7vbgAgtuy6vfOB2f48XDJtPvyWg5z0pWI47a1eamUb0I2qx4E/5PWic0Tdm2V4JV4tCPJpPch3jlflnKlgj3Gr2mOIpzB+zbt2VYb4d7x7a9A0bjFbu+eGjnAXzmHLsHFjpNWYDSSFRBQSqNHljLU6E9EgzGum6wH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xkN5rdUn5c+lc4y6v30YSDVKTi2GWv4feG8YY6l6cjE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Nd7Eva1rbEwTTAt2xE9qxZB5VRz682KnltZ1P+lP8BSlfb4wDUyeGl4tbXih6LhtnNimd622ax2vZF8xxIhmFy+Nj7a7iZCatUl07JglrTxYnHEMd13ULFKpV6FU6InPW7AL7NmT1X7IWHOGveD7Nzjfg6SGQToVKGepEYzuNkoEW4WeoY2XyQ0V8kTyhH6FqbOKZ4WZI91FgPHCZKpauQ+fqy8ENxVOzAajbGf30TIrWF5QudUq6+EumGSG4BP1Uf1ETG9RLxVAE84ceXkd5keP0vlB90VOmvGQ4k70kTCHD6jRdzRAHmwKZdSjXZfLzl1u/uP3eyBmx6KR/tHNBAVleeqkNtfDPAwoaxPy+pyJyN8/lJT0mZDZQUU0wVsxofIDTcbxiKeTqeQhtr1e1B3cMvpR0046", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xmz5tV5VAmFe5X6FPUafOTGkMuFz+ZPL/8wlYn8wF2Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qnRuVFQIq96p1KTuYsFB48GFHf4GDQBgTMGbpOgv9xgS4ggmYqmMQh9wEJLiF1Y1WhSL92b1Ksv3IRUYYDqlw1G2pAAz+HW+E1AXFTgwZcVycYpz3fAmnOlYyekb86U3AWTDotvxGYwao/BYEwTza8PJvpL4g34Jz/0xWSd0j3XJJPFzHkled+0vIXRPrqrn/A2j8DgSz95Q4HE21W+JlPFeGVueEOiLO42a+B2D/X+w7elN9hOF6wc4P5JyUEncNjwJ1TZP9NNkYyXx1I8CSwhjVsG2VjC/vm+V9vPD6OI2mSpmagYqBEGNW76tQgn0FTT9Ski9CwvarBxLrMvQX0xtTT9c+UClNTCMlLCaLEp5xbSQQSVzQaqpiXQVw50Nz4gbpyGgKACWuSAFCotWHgwMp6mhjOPi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xnVtUQae2yxJ12CwwMFbpOsIQ0/08wGHQRYu4nosKwc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DReVs1r2HztvDPpdWGrWRlgCc0cWKGFhie6KyFN2ZDL1FWtdRpXEGtuBLkUgLEuR6sWTRU0gTpd6RbyoxDZeyT6W4WBUuIOfK0OeamShtoKecQXG2XHiObFoCzLn2xq91qH42OMK8etQTlgryoguHd/M9YR08P/RutRcZ0m+dzxPjwVOE5jZVG+ySyv0R1DmT6BQrB2FXwaJm6739N14VWES9c9EqQRoCeD6GNQMPobwHQqP+H0/NTULlBAMLSGrgsWUm9Lh8WveJOlYG6zLygSfi49PVi4YlZYXzEFTalZjN1VPEGFRlEOHdvVzedZ/RRaY+YjCRfPSrQG/6XA0GmGNYtqZ920hnM0w1juvH6ssGmKn57k+RvbxtQk/GGGs5m/NHmR7f+pwITNLVp/Ozh7b7GO/z75V", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xodrkd4DiN6FqKGUjvekUvAidSY3W95xd9TNI2kDgw0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/FqgPMN5y5ojNqedSiAMxjPhJrzgLRnWO7lNTB9z29hgqYXjgtxlkAd1LpgRf/wD9QjdaYUd/eZOxlmm22o+gDM5DnMJi/mgHdiDcJxm2L46uewgRkTFfmq4KE3eMJoigkDlkYKm26e9z5u2hC+aMa8HS2is1XNRcD26p5d4MU0PLwaPziLSm6Iy01RZWZhs8Y6QBah9fJeEJhQGnmSwKkLsroQ9kOD+UWn0kip4DZ5QQ56KS/hgn9QKbzE118Okcbin9g7twt/bKHog4of34m2oP45WxwTPHHUZOc5ILYui2CC+8eqMTww9GP7gR0FF/e0EqiBrNE7vg653eJ1zxmsSgDXc8bvb8BBxXCzzG9esEUdAeHUrNkgSfp5XaS6fKshcC1oHuhWdB92aJdK8u5AV3zPDIzD+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xpq2UXGtoa0U1magionKQmWysysbQKiVpbbKfJe56Qo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VXMtVoyZEILTAut1mw0BlV5xvP2UreEWbGJqachuyfNz4NBgIdgJSk0kl3hIWwpPlXpdT4ds5P7KDaZZxGnL1gaBQqNbygEWvY5ceDeFw4d9s/vkM/5x6uZpgkuVGHVn3OzCbDatGvFc8gQ91ad+p3857xub4NXwLNFOcF8RQ0xoFrcTcB7qB0GpOkPK4ndgFJJohH8eJNujEF9Ng7CzJ0lCRgD0MOlIiFv6IdWFlU4zQaE3S+6COy8uYrXuPbioIt50BoHF7EFYqH+vxcc0zDWByN5PaGRWBsCyVfnharCST28kiZon0q8T7zS1fPc5bQvvtreky4CBegmGh+3d3PUcZcG0blyTAyq9nPDG9faCtqIpuluNvmj8vEBGMG10maMUAK5puqhNirkSeOa5bme3g+1vaueV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xrAhRDaEoFIByd3zzRv0J8QECI7GIW8KtuMt4W81gQg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "M1HE0AhkKpS5LwryiTWlz9zSjhjYWNboFdoW1iF8D5tOnSfXjom5v9HsSrfsd35USnM7Gha9iP4S6oD6sSdguKcVhR+zWxU0FmeBA5pgTqTXqztN5hQ7tEItyHhbBqtqd6Cs4S3UkHNejf1mvfufJWMETubFED6XBVb76IQCmNcHDLg0yWZxPSqR+TRTThv/USsMmDuniRXKtKcDHbEWUe5s9dr8uh2DBZ656TAxr/7cqCRY4iUNsOeQXo5dC6HrE9HdKwFCf+vE9Ajtqib/2+eUAhhCJh/TgdnX1zPlEHk8d/qN8j+ppOwIxEHShVlJzZBgGkWIFPHWARiEyS/mqS4m24NoaZo4SAXEakA1yntmBK9/Ib2LwOatfcII892lhcWiS8lUqTU3EDkJIhxd7Xw/qBZuSWGX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xrI/5lWiOY0ivHvzEgdGKGB44QBpDMur/hrZ0G95Bgo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SmNsr6v0CNxCWi3o0W8ykCQxG0tKn8H8txaQu2peE1ITBSjsLPcE6BdM5RbhXI/Ue8d84OX/jx6Ecu8+Qp6nMVUiiBFsMQEJP26FYyW9dbl+3X+ILjnLHiB9aNl9GcgTeKVgUjzU6FB6FnwvHdq3gs0qOtu14OpccGWdWl44jdgGsXoLuw0qhXwnWs+sUiWjeVGvNrmFEO2f88A1UVYzH5iB7OnPaBdAOPM9xAJ6JYMV/jbCmiJTaOGnJqSxhAv6jcvk0MhK6Zq0m37yQxOsEhZPp5aZuHI6Pb+iGQvkabc7reRT+ulqyUu9QOyRszTdo2RTRuAMYMGEuBjOJXbzcdn/ehZe5w7elTH5/Ij174k3Hkhyywc7JUQc3hYfRSEe6ImrQQ28j1nb/Qd9dnnbp2clM1892e1u", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xruyrNwExKTF4uL2qkiM2JaSpof+6UOkNc/nC9PPyEU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+Jo2GYZbwA74vy7XPgjhYZqd27VVqjuybfr7QUAOMn3AgkV+vJFnOJEQLn+nE/nryM7wV3HUOlTP75XFUFwaXl95rlnthuS3fedqcU55XHhusqfFn3b4+Jp4RAORd5cG/FxSSF8kseQZR9V51XFpuvFH12iMcWdvD/B35UWZRbBrKnGmwQ93cqXkYw3RKAPlUsGduVcVGmTP6csIv5bVAUZL91+l0lXIEcahX8pYuuUR5ALlwy8ssavYl+MaNu75UAvjkDUtqbIM2QP7CvDNwIAYwc0f4X7LLHvFzzDa9iYoqy3PaKRbqLkZF4UL05v05f5JrF1b5jr00mTknnPA0yQdZNqybRDDs8K1d3UktEEBbueF5BryPjK/WbhiWOEUBRTfNYZzO5jiwVaFB+dHrAvv6PeHwAaA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xtEwt+F2xuTGlo+yes9lclzT4F6Z6YZr5SK7ET7KHTU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qtq/AdlxbdxdmJRERXWTq/5BxN0Y98yJ8GB/KxXXmJFxhFKfMg7zK5bhlI5AmTTCPQ1DpcnStYgH68+jzsFgJkO93xuu/bK1cPq/wLZRpld7fcn7GYoO2GynD9FOQn8UJi3z8HsHRGVLTkzPzcTtoi+3HuR33CLriGNAyEOHQXEGe2rPwqIjrGfzv+m4M+SxC3QHyoLgDiGcqgC1/9AIE88LqDbQOnaVRVtuVMP769zSBl7Q5p7nCfkkSr9/rmOUuidXE3sOK0VExOoG5ZvoSjKMGFXWY6OdU2TxULMoIcgtDc2Dyb4arE8+9SGppzsxyf28TOsXZhlOXuPrhg+xt9Y3jtpiBJ8NcutKZ+hrH8rbHx90DKb/cgBchMfB9SdMC4i6ItQpMaYdixiHFCOesCjk5kqP7Il+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xuBfyCcm0frknlgPcnkwoJc9i1IyOFWDzS+z3t/hxao", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1dezJYybJAS+eaxAgSnqU4S2vFqKhLD5oyN+dzRNyfKPXwN1xnSEm4uIMKuaWb8E8iS/i2OweRoaCv51NR+fzclmxZqMbcCjmgSIJMkC7iKVo8gsRzINvrq9BNzLAa3jjfKKopKwQ2biNTXqr82UcKzQTnABASI07XER/WRrU94msn+WXjollG+y11QoeMKvBt0qmR6J9JULRjBisXReYc2gsplzjymFqN/IU54P7jVdf5eyrkNLnPs/Nsi6B07qDS6mzBTjOLObpUQFVFuFHz/ST7foqkG7BoLASmyodyeGozehSFau+UAT38r+6VF1PUW9YAWVhbbYPYJ+k+rvDyozbeLF0MaBv3m9xTjS62kdld4zZBaHBaBohvCgZ1O5jy8AifgXlUPhMgMXqjWi71xzkJ+slLvb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xudwOVPA7mnzmfQZ3qoHvGx3kLpnYXCUG8uWyyUAMGM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "OYxJGCIhEMSF3njUtnsXTQw1hcROf8lpvIt1jxOETVVlkuUD8bt5ag1AiXWJUL5aetCV+lI24KBnDpT0VTfc7VHvrgVW9a5D8HkkdrPZ5nkARil2vcnU9JGitMi6IFmK33MeDHswrWcYegNFh7jtkOdWJEjzALV4cwt2/lPXyP2fTcaXAfJzhGlvP6p5Ez3Z19rjO/CeHtMuLLA8+CwAYB8GL85uaj6goFWCl0GF+VH8Ya5udQEG/i4CITlnwlZxcF6PaaZZwlxiLdMZsiAkdc9cmpYf5FB05JI1jI74fgVAhfbubcHFBM9qeNAB+65yTGk/spSljuGP4I43sMWJ1AE6qRwOINiZk00U8xMUNygnXK9gGdok2CMU2ChgzckYAut2Uk3vR+jH2tCN15PJbLVA5WHlz/DB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xutLmUA4iXzO41KIfsiwGhDHy48sgwKq5G4TphNAYyg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tXW3yh5zxztWqsTimkHJDhoT9K4XiUmVF8Ce4CN8FS9FNeUGLoKE0QV5pEX1UWuY8fL4axKbNmRFZt7MUHWBcaIOLYbAkVAZimkYuASgBbgI/iW3A0aje9CDzvQ6sLZNmnU589O4WUhbyIYZGP2cYaBJF8i3MW1ckAWkPxJeS072FWxaN0WYoUIR/W0zH0Kv3p1clQPkLLJZdV3Y+8ABYjamnCxLfBjDBjfJVJ8LJNRBYoJq9kToRSJyeDF9cEr7P+XD8S4UTek1RKbQ5PriuX9c/hDD9I0U7SSIqZaPyhiyHALm+eiNr848h88B/uJVcEsfqgiHJ9IvvGp0yiBg0uBT95mX+wTKiGkPwbuIMwUp06FVdZ4r4hWEou8mGWgKtQrErpfRSSeg4KJ/hrRcNRG1Y1jf0Lg+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xvyTLPdJpNeRCTVULrc6LlxiQOGAuALMQFLY+Tx6R6w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9ZFqBkj9N6leqFBJzuRwOSoiSldQ9UKH5knGTPyZyhfY3mcsrb7Lzs1Q+XliulmfvBDW4C26gYYuH/+rri06HshqYMFiuPnzX3JMwtyvPSCSYJ1ajOk3my0i9mu9RgvSasTuDcH436xt8yQ4g0I9DUZOGh3B6SYEIBloqG5pkQn47uSI+aRcluNATLl118/ys5FC4c1dA8l6GHB5ZjkAjPy8sYW8ohjXlBlhJS4673RgfG7xxUnF0E++QEIjbvKU0kehdNrlLfRzinh7zrZH6CKHx3c8NReGpXqknnXgtKQA20iX9c0OysB9BKG0CCLWnyX7bnnIWkok2fn8rR/l4OaRuiJ89c9T0RrwYN9JBCCGoq8cpTY+v4TuKSvcTzD6SR4v3ujYKUdlYUedadvQNWl7ULNMnt0O", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xxWxDX1Ne3HZXqHcE3aYxl22fdnYzUhrD12k8lC0VGs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hs4G6P6Xgg7h726jedidyeRCAqxhoxt5U6hDV0dXAkAUn6l9FkmU3ApV/5fV+2I7xScmspXz6h1k23H7X1yzy++5krrFO46+sgZ6CDuGjEj7t5i7+CXzRJEyW1MIK7m/GKLMe9eO1sy9SyYrHMw8kHSF7NNiI7gNWVpAMkoYoOH4wM9XzKADGelfA6suQIYPXq3FdHJLPxOkSiILQNbHN7i0x1Sl/RxY+gyTjju6TGVlyw26nfINoybrZ5Mlq0TrUvvMSJG76ijlo2iBoC5ICiajXFxEGpbs+mmJkhU36/wVP+UenOuqI80idigl4sxagzZfPvYIyta4ol5EUUVeEFJvAysboPGqwqytrYv3JORYRuP4ZS6AlbG69ORkpdzp7m5PaxrDRFFV7UYgtN9LwkOmQIK/FsPw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xz3M4F5nQOIKfQjN8qVg5ct9yQKBhOGmUDK3r75dE3M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "iZlZKRHIGb4uItULiJfnzJJnng8C10N1V4fenDV33+b6FcMdzideTPYgO7EoNBMGETSfzmnPZq2TgU7An4xaIpc6WAx9muQlNI1rL0zbNkXLAO4Ql6k0ChHXPdl06q0U374gQMSMuc+nKCwnM+NqGjK3LP+bgXB2c4B0x7J1p1EuVFGMifZWlROVU+4ZdP9JYqlb1LjsmlSMrU4UqYH3pG1c/1vogX9CCZas9WlPxfSUV5wYY+rfCds97L3nBgZWWbGyLSiu7lN3VLRkkjR5/ATUOaWVsLMhlkGmgBN/D7SZQreJQlJ2jqRRtqmfCRl+X2+CPSz436J30RUF9nqfZlENk0ij+cM8f1b0SfzGEQndBnm3M3/usMRbpx+H3CKpSZMqCwmHi7Mtd8YGMhP4OD3mI4CTd2mU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "xzRAez2V0dwohhCY+pP8kT4yS16bInhoDYVHeWJYk+4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "QTvOs/12hBVfzC5anfwNunpmOjOR+Ef1Vw8opIeg8w43xw/5XgSBe+nNYKEUI8kPTmEy0ACrjZ946czDM3n/d+8XgrjVU08Pd8pz5JPVqD10P1X9HD5z7Vt7yHoUCK4DV/r6lXVR6PYc6aickvlWORM9uRH9XG7PPc+hmRWKOK3kCItnNvsJ653+YlywDIKU+xgP/4FZQL7CFWD0HyQo9gKGdA9j5LdUW6yG0uGe7mCuoX4TJ3i1cCwxCUdrshmOezOgEpnsVgyV7P4JQM/tJ35ULH3umndDwcFKkwCe4zN1QrC+/E8KU2KXg/WK60p3sui+oBXKOrlY0ki/fA+YwiQrZou/wSyFJXlXL5Jb76+akNkdkP48tbl/vCIiRVC8bxJ+Wt2OsRU1Mxxx94domOrXmSgiAP16", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y+M3T0cOVAGtV8oqnvTzkh/QYMyyVJ6LMnLY0tCOY1c", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BDbDT/qwXvfhIuSjrbYMXSqYzUzQi6m0WGkTIc5hNQz7NBZYILwZzItVrJ7JHqaU9btqMyH1VTIATaWBNkSHJHnNYnm0YesWmZBbEkJNrd5z4Cr+RrGNFAFA0G1ApayGl2ExVwKzZvA1pJ9sUMajHL4Ad63oKdUJ9V9jTDUOousi4Kl/YUboaacfAuVWHdBMC/Ona5j7rZT9/e4Z9H/LWLnKZvVdr9Y6PwbvsI1RATvT179c54S8SDj8i8+tnzt7lGsbE6HmMkU1fX5s3AyIqTTFJJV5fGgKtOWIKWgFTkBSngAbDKZJCFPAuzY/yF6jdC1LKJ9kBRN+FSP7E3OMxTQs+T6Lr+ul0Wuyqlelo49eAe//0qRenEpd0NBEUDY6rdHJ+H9F+4G4SX1/7EAlyGbTQG+o7Vlv", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y+NyAEFz5eF470idWpLjSixUuJBGrQ6fYbrmar1oIuM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TBsqfeFC6MNR2ZmfMWdu1XI6flwmD+xfXybY8t8ImeFNVC5dPsYFJdiEOBwODvNNPZ37SwkdJ+Qyi1ByHENcYILoZaUAAfTPIAATRCEHCZBYsa0AtfCALBrUpFoW9svBvRaKzMbE3u1MpPWm44zJMQPm3gjFqMGTbSo+do5Yqe8vePLKjoZxLZvPqQOmPD76+D0kJq3uoU6cph+6nio0qrvancAUvPBAnkbis64iwd68iheIXmmHuk04U9GfGdq/RuHymdEByDa3GnQmvrqqlXMn13D8xxdS8k8brnWMlP+CM6QwpZgt4canqT90KG4Ka/8k/2/yyIhZiEbz1ce7qcVoky3JD3DGovhnTJmCCJJeIbeoRskT0kAqbYx8x/hirv8DyoHmaVEd2r4au2mp7GjZpZ2MAZwa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y+VzgZC49ArSgf9HvdWM9iuu6yQmFU7tSogkUPNLeG8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rYQEL4vDmZ/iGvz4Wq2ekf14CzER61I1aZ1i2VtF3IZxSIyRMQY3hrON7rb/CHSJXXEa2scAvc0Akgd9bWFcAr2ajWiVrld7B0daA1djkD6w/khmyIWFZRIOdjDRTfOt04mK7eXd5jR38YC1SMy6ltM09RQ9/Lf8mAvxFZzsR+ZB8syL8aqcnealIqzi34jL8imee80VpBO5zx6a41Hop99K5PgfaNfqxgsE1pjQIKBmCxS7O23dGhffOiT86GGrzk3I7tANcae8UwTCzWzpjgr6rayvlTTYj8kUsLBW1DlpAkHpeGrv+IztWzhd3tuITh718Lle95IOkKEYuvGVEt+hQ3TMj1+5t4H3sCHm1BRDxNFtToo5F/FCxCDp/8a/o5N79NWLDg6p3QTxqntLsz8CGy14zme0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y+h1xX66zV2pxveIe4+VUW+SgpoSaFlRi9vbOA0KH+0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "jatoqLiA7D0LkAgryr/cregT5IutxopfhOQp2UXWOESfYN7RSsDEiGd95a+OIJ4kkifdJS3vl9kS0fsPckG0GBBrI1+BmZhAfyyywmnN2uBOJhfU8rFg1d0i7K9Ej/uVcxgvsFGgS4HqqjWPaiI8gJ5mmM41tjnYgCVvMUhWSiGVW/Dx0ewoK0DzkklJZr/VPZMHWZil43g8Egk8MepBy14KSTaLPW4tGmY+9dtgP9ilX4S0O2rHpIUGFax19ElWF4hnxBRF4bx2W1AeFZRw/mvMc4/WQOKJhq3DkqT980kiJy6a8RdPHSTG5KoyLpGpEvQsVSwiiwgNCyQBgr7EkuLddDinXV1R8xMdqOktn6Y8hFN9RLtpkDWXcOhg/WcXxcIXHaD1QFnK8NJbb1A7P8CQSKiA7tA0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y/6cYN7XT9OiWLeVO1g1XWNGijh38WETaBlGjh6gYlE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "lPPaTgyBlqy3GclHHEyjFgfIfLmaiwu4V7t0lxi+yq/kqyIu7V1Z8gAJMSGKRQySmv7NHbgQwADUcWELirmTSegHSF3Ab9YkoRvXwxwp/j78XLui5E7HKUxltdYlJd9xO+dznjTo4vs11To3XA93lI5Md6EpljUEH8k1/RVnGp721zapLDUHeX+opvDJkYORh9qoA9MRnxZpf1erdwQrAfuKzckMgo/jVmquA3HMa4JY7pYLx6GVPWZ1leTouvMLLTQUvGrVFuRSGk+2Gtesq3bneh9ygq1p33wVsqsyxLKh33qN5pCzBrRJdpvt6HLwhgsLjLQsOKln/k8jEnGhhCqI3jL9BozlT5ZAQ/1+QvIhNB/ixkz0+7esXSge4o4oFX3NJPHFUeuewUKdjDmPFJQ4KOTiiH2E", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y/Gkhmrhrk563EsSMqgsog/ahgg19vILZgh5AN+OBVQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TW4rlMMcjbEJ33quR++CnP13SEFmutn8my8MHKCl9hlrjRrxLch/UEWWqUmruHkOKQcDq9U8XzEblxbKholYq2bGYveF+V9Zme/Lm9aFZF/lSOPaX4bHwdUR+gYJQ13BbE7CIJ2vu8cKtyEf8dpzIzDXhMQp7yj35zljoNKPLSl2fAGcdbVonpVCudQ4z801YiwaSUZUwLCibW9/ZJ53wxB6rqawZ+LrEEZ9t8E5HMUZodlv2Mmmqe339jDULxCI7Ay0DpMFa00dt1yqx6+QCMgwBm5ryEu2W3l/qpzZ8PdKj3Dw5Q5OloPTpf/dJJl2noVHlbF5fWyPd9N7NqC6jJphdTLzkJCr9FDC0zGK9u3IzIrOYKrj4yGKMJ1KOqV2guO1dXZs5C+nhjn32TCpch6NIVuZN3W4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y/IQqOGABkMicKNPWa9KUAFto0t+kxTrIaDpPPezT3Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "NB4cuTvAcly7HmRwJHXWDci9AHGLAQ5RGuNO3ZzZZOwJSzTYDuQ+N+Xr2DB8ZcFI3dS0g9Frg10iLy7RX8U3HtlJnf1hsgZv8mgGKbrNwsyk+zSWQbbkwLE6NUorkndcMHWRAtNU+M/WlROUTutpbFWYfw23NAAEpug7zzQXsXyTQjECeOadkPOglQJYBxOzWvYBHN8eXHjsiYbYWoeNIszTn9QgKRl1b8SwQSJhW0xJePbFH1vAuE1du0HYD2P68cCNt7m9a0GtWVulGidn9y5mBW61v6SMwVE/YmlGEUkx6RBYmk16SxeeOImEQTpSwClfkXhrI09e6D7dZ4AAnv7KAjTerLZn2dN35RL4fyqGpIsMJQhimxrKhGy8BzOehlZ2n6XBdGGo1io1dOz7C+sR97f1JWFX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y/tMEy2WbJm38oUKXUzin+zjWO5bfMRJYs1BdQpMLAc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8B9yJZZ0TdurKDLa2JYI7QzDLTB6TCMMBoywd/imrsN+eKp05tAjrTLlqxXibLvA6ws21C83NNpU+X4ZN0U7sxdwoscLHADG33+U8Sx6/MqwICMq5P5raeh2yxcdhjXyjsGzGiz1mGx3ykPSI60vPzPfkekQepYmELEzrAu0n9Xvr+QMxQJqHfCUFEyhvJaAWI2v8cHnKYfyUY5YyDbCOnSPYb23KY1r8IEFlrVuGBERgLDPToAgR5TNf66HuznTtDCmAeqOnu1w9OoBFV2M0R8x6hsEDRTjFXauvBadbk+uqYVv21sJJA47M1Is/Qfiw6sTNIpHp4aEuc7q9fsmDqeFPuNK3IbbYiBQWKQXXwvADJRpcW3HJLHq14rGUNrILXIytqKz/ocj/TYxMWoquenDwHIL9D6A", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y/z0uVc1GcnhsVm+isFXfeBJqiaBPBX6t1ldyUdgWsM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CeCMF1qqS/EpNvEcKTbsCY6va9fJs9fDzkfjUl7Zf34ciEln8qzSMjUfP4G7UIxuENQvW+JAumz6K/uytpGNd3JgwDZq6KsaOW9Auvwv8qkhFw+PB7qG9Vc0+GHSoPfoGAz55Xe+dSO+rZ4daePqxwfotblof6/4Yu5h01RFVbP1poGHGqXvB6b9MGdNnIgkp/RSpqztRzP1ogeeFhYECifU2hlyCLtltDb9bLXu7BUvXiyDz6LVoK6TPoRrnBesARfkN02j6Z3UdbrAVqXoB9+0BsIRXs1r91LrM0nhN8cLrIDHTHwBAgNmBKfH2979+11vjx1tViG2i+94pK3OJd37MGnrBGe5ofphuMQ0yqGAPX7ErwZ1kE+xPxwU0Lkomssxi16WNb9kPc+XuS2tE05sD5DyFL+X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y0XIb+s0d6qEQdLo1/rssd/0b2nrCf7Z+KpCQt6slpY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Buta4ZT9oQ+YiyqfHTUU7/J1yWWPAqk+5bqNC4qBYQAd0pjJKTV6PiwVRyNXK64/jC017lSKRVKToj8Z1LQm5bx8MCHR0ROOw43b+DdQ4lwWON+KSz0f9ODHsxVyTfF9cq/RDWKXzonMqLc/WaKh49M8fXL+XtrCHUKt4D4ThfN4UgEi/7IJlo/OH3oFAGHE4ueObp5Q/URn0b3Z/UbdTVgQg3pu/gDVFB8Yr645CUKEth/OLAJ4ArI/PD5mVfBnZwloqFIpW1uQPRTDySbA9vrKyDP2J2oSCk311hI9q3/lxRCbSDy+AzwKtu5v1La99051TVAPJYWfwcLho0HEbIfQ+mKpKb2AMeqCNoIsKkcqbL7LaXkUp7/BpODZwn2y7hR5wZTdw3nDAQaEemNlkBXiCKFjSJNY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y2FKsw7tWeuzStXWlBV8EdZ9oj/gEfGtbjCQft0EAfg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vfA6bxVfDNo+ICLIkmxQ+N1EurilTDmOZq3ft4NrQllVR+XjvCtwjqmft5Nx+JqKCNQr+XmYnE/TNolfFJERfiDF46kJ1HG3Pi66i69uqeW5fbQDq5bcJMaslu4JSiDtud+UlI1bTbhm/GeoPnJ5KiR9dXiUxAa516QBLDX3C1SKFhrnzYmDOCyAPlRd02ZyU73wpm5F3DxU+Cle2gTkuBh0xXliJiswfs3FTNbS2rRTEQ9XGKNpy24KSWIY5xrgyMhrBCnGQddJIygRnFxiSBZF8Klg0iDUENL7AdkRcmtUtPcKsDLILxZdJqgrrqvqWCl7nSxYtpwIAyz9P2a8rgEq0bllgPKghqVWPUpPJJq+yavqH6xgsylsj5o3Jc1a/+pbBC77npoc3/6FEXXTvESrhE+MWykp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y4Bc6nIsKh/UIz3WeQ7LYswUOqzFwFUDKno5IvXN0ok", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "geGkwgM+WMdkyO5+Cl4vOEk9l33i40R7Ll/GUt+8fzXJ+J9LcPsZhu5yHj2Nk3aCjWq4hybaWlLtKJdkn38UDb7pkpHlAewwEMnXn2rHV067So8sP3bygPxqV3rFo9cTQUkmoeLnZLrr25zvK6c+h0TnLzh0eUva7ZwHh9DI6jYxBX9tQ7pMxK18bv7n1kWKu3tm08Qs2SC0fffgNU+kR3JNPcrlLDqMR613Irnq2VbTD08SBG41ZeJlxETAloQeJ/99mWApkOT0BOub4i5crwOJVOcj1yedAoZMgoEUxCKHAVQWV413MNDPX8AakZ6BrLTw94xUAP/HMQaCJcdzvHilVTvR75kRafpHhrgl1iwGkiybMb3+5U9dXz9EttIy4Dm3jSlL09L8hbjC36zCFrWpaxH1QXy7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y7F5TDZVaA3WIXfjwvYn8NtAQFTbx8/d5mFzSS+LJsg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rXnh7dW1Hy3JDXWjASdByNZPNnzbf9RWMw1bBlQI5eshGr+ICUc6/Fh9mK4g/Rz7z8uSPKfBK5GX4iFPoFCondZWRF1aLY/e0FJnvb8UiXdOJQMjkRjfjYfKEPTXCMx18t9U5tAFdazW1lWKAM1+mB1PGexHLs3TpuhqX8Xrbgdenzx73ZR+6X9w3K6pqwRHkWQm2fxGBDwtwaanCvydIFQRU89Cb2hbkv7tbbi8tuslSJqPxPJFodK9vc//bpEw0OvI6MPmj9yIaH2NNH2LsNVEW/TrCqgZF/23iB6QEIyAhc998mpyZ0Rvo4yzZ10N5XwtcFolTeqT5m5uoUQZl64QqrS7uuPxDyiA02cSson81Xnwf4svWt3WjxnFeCdO4wP/ZY160OTDHfVmofaYUUmhueKtpIss", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y7jD8Cra04WzC/Q2vEMJb1kEpkrmAnE1nJ50EBRlf2M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ujwm7zO6trxFFDBkbnZFgv8f6VIjur+B4oaNKBjhJpP2woeh8U4lmmCdB2Yy8/jM9/Gi6gwOKB5q2EllL+84BV5KPs0GSdkg6hK9G3JTbzNo6GAahEuRFdBvCLAdsPYdr8omplqXPPAig3pTvhTxnBkarWhESCesOv4tXqlzaTnMiCkFgSWa5wPTCQaH1O4KX88FqoELsNlhysXjUnHF9s5Tu1o0b2EPO2KvsuyHTzYwr/Iutz+fuqisSiPFxKcjMULDVB0m2L0kGmAXiLFT4peyDwemJlWjfZosmT3s/2VdiLjA2TjE7p4c/5t4shnoUydpcXQ7JPxQCg02OVn0FG3ou+DS6/mNsjQerTR6hkVS8z9eF/BcKqEnxpINZ+Uv7BbgTSFQzOTPlOJLSZs2rXoRJpCCX7aL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y8+zVjNSIw6ExGzQutVlkgut1nNDO3/Gx8T9e98Ykoo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PViOpdXrTIk7piz95uQCko5gHO3QhZs0KT5gFiX+X4VM5cFNIIMobpKGbrUfrNxCixOzUsd9jLWmVpLPVdHrLecOv/igt4Y/XIqHKHds0/N+C00d0s9+/tMR/UUq7W+ZlMvsyrmmCl3/fiWg2fbWjxjoIUhU7cgA9L7sGokH54sayPchcVPUvA3ULr4HnjvRxfHohfwctgCvhJtQ8qFmuwz5G8st9rM0Nge+2O+U7ZyaJJij6wmJHmfE6ufGGjTHlOTE6HRpKeO1f2LwBdWJSSgeTv8e6aEPY9mH2XNKQcRkptKgHW+2Pwvn9Ag5f1aIYyXdw7y2rA7n9j8DKiDWknXdELCWcRNDIaxFrQykmSdJ/eComMHc+QsSUGhhawDJH5HsBje2JK+qfdlvhMqjbBDuqMM+52i2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "y8lY5C3PbYWAchhE4Wt+b/XIliJGbCuiFVtuX4S5X0k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aGDug/KAuPY4wn9zolTBlI7zWpA6GKW5YeuNhcWnYUjZEjSnJ8NXU3Zmm0l8lUrIMY8k4NijOxrKcn+E10glF5QZLsvRWjf/Y6ezySiCeChpN0p1Ltflp1xdyPvW/0UCEkeQ/obnXQLnN9niMfn5IsHqaXCiiypb1FxiXZM0eJKGFv2f2sgfe9yme923XSuUQk5r4R1Wk6/Zrwft+ymXytW0hRMvSCdVWPjlXRWNUgAlIJo7iI+Ithz3fxDNntW89Ho5t00bzQMns+WsWBvcke54+xsy6yABFlm1KMmUFgYdGWsaEuU7cczP65cDw1D4tK4MWGCSgdc/BgjQFtwkrQqy/VxBxfC1XNdg4dpErpZ+KOr6N1yNPHpbtSliFf7HjS2cmQRZGNKVxRS57fLh+KSSuZm1c0qp", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yAL7dCAzgzB5o6Gz9p+vyh2sP0P9E5XizaEVR8rux2M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PfxHdja2Qu3xMN/M2nQL6Cu2cEHRTM17hC76ryWx4Dsp8xMqKzgjLjBRr4y0HMugw9iTuXB13y7O1KW85Iq53eo4icfa8zrGne8JSGSJuFPPs0Zl6BYufDFtlLbCa7WejG6qYpT7o/Ygy4QOFfkiUMG/9LoeTAGR/694plijzZzUtaxVn7eLgtUyz3be7oNkKDRiEpUtRr2ql5jpc466NAG9HLfoeGQtUcVwSYoao1cC8Idr9CBJTFQkY7npKXNjSH6CsMB/sjqOUf3dOJOSwkYNk1PCvvDv00cXmJe9tjhrmCdbiUY265IzMktD6fLeKSKjpGHMgBqn8RqSOSkG50ONxpDku2XfS8n6oyNTTr+E57bb6K+uv4mIOeXrATjYn/9Hk/tI5+RJcMUmneQo3p0DmayQaZct", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yB2/y4i0Gw9og6ZUeV0CPYcYaPKc0M+oAq1hfVhgD58", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CpDC8T9bsWhL4RwUgirUAAdP3l5hwMlxuHVEAyXz2IgB3zZsvGvU3gkerFTaKihfQQIFssd8fSt7Qe1S98zzH5S5Y01toD+H+Iv6Rxk55J8JiKPPm0Q4yRx/FLKs/cFSnkIhMugbKxAZTUwobxBV+aYfUqmorBNuAHq2tBNJKt3EMUyNbziIQuRZ+7Lw8bxHYVMl3EMjEqZea7YMi6RMmuJr+apDPGSPs9IAG34BqR7iZ+UrAuVkpjuvAj8xPB//XSI9LFnsoya2B5I5jtb6y5Vh5Idq9vQ1mnRbkJls3cRUNpSg3ogn8GREw49NsdKpZVXEtjgGiZJ2XCyv6Vs+r1tBJfZoUp9E8rgT+6wWP59LW7QLUSi28qPdK7/GgVXIkq32Xd1t2V6vLQadYnu5Flzjbvq4Ak2X", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yBNRntrMXCeXfCIenvbv9yddxurMlDk8G9hjZP11B84", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kbcU7gEHeWnOavT9/S80g8Vp1uV9TmZnMDd7mPqaLC2HuWDIcCzUNGOTIViHugy3kHfxrVU3jQgYdh1JOovhKPLpIFu7f8i3xwaq2wlJQZI2mA061nHzmSSO2BR39ApvzaH3i0xVFkryCZoR7e/o0wMjoD7CJpwwSKufqwiPzmxM8RSHb51235A6tc8Jnus+g48xcq+N/v0HsjCtEiXC+cFV2xEUfYakTrEe8/101ZjyMpJXauuCoyUJArpf92e3iLERbXCjHHnPUVGaVzGSPkbIKnOiYaP9JOFcuVkvXR6CFpXUVGfrkAEWq0tq240ll9tAg2BNn3h/Z+UFAIhlnOq8yNPd5R6ToaMjsuD1dykOO5Ls19XMKrKxLoRAJZuWCEAPfbeDsllB4gFGlnEvTnK/pUB7qyU7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yBZ1Fv8VztOutwpI03jPL1WWjp/wC6oz5v9FkfeGqtI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "m2UDxSbOvYVeIzbApPB1OXDQ1t6xEVt4S5Ig24+0ZpE/7IfyQ/++RjQlYIaY4O9C2pWgrSh2LVmsyRnMfGvLPrdChwXHz18lohz0d6KLELYdurFPn8Dei6B+u1SW9zkCoXrW7wrVK3Vsov/bY0269kLNNvMC5rU7OLGLDD3/I9OX5D5Ha0H1WcPArK7okfMUNLs1Vf0TKuYg3nA9xBJpzDMpRcWErTtK+sWAXacNF0/o/JAQiGmTM+yuVDNH25W+iXkYmNbzU684PK8xCI3db0JnQ9k71Ch5GKraB88qdw+YvcOmjmDvMsTPOHIEscDAY3wBfEoueAJocLihA8kFhtbcwZwW1ZbOr4B4C/aepFQWQc7mbS46QX3CvY37t+BuNKSEvEC0JxHpFWQMQJbOBCs8B5oEg+Br", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yC0qBG1wZpCt61NvlvUh6MgDxnugVp7wAp8t0xJyE5s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "esEJVW6WkQV1eygUkiQ1Obw/DZyerhIosrXp39EIT+hdq1iQQyxTdtKjTNObu9mHEwbE7J/uL9NSybXUvnHBciYCa+4vHVqTCVFIlBFlLozbV5Lq4TAdyqEzvC4bDXSjYB7EgF2ATYx0WL0NfDi3yLRWIDqcK+Gtg/t+yZkQVC4O4dMOusSKniaFmPX+ToJ1c3d6KALdSx5xHcpXOf1m8ulywQGTP7OY8Q0/ymRs1ev8lpsfikrqNOsNK4oMQsyB3d1BDHRP6jvGjnv+P4zCNgZBoZnfflSgVTKv9aI7g+n0DD6rNH/89A+rUmUdjrAx8W37gYujXDy98n/P822S33K0tey2CfD7JJi1zAgxMprQrTEpABg0feEEnSvg7eaquV9wstF4HF/JILBWF9r+UEm/xwS5DzEA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yCIXhESWPHJVJ3Hs63Uxr0CI2m1SdlXLsEvtG+lFNK8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UAhVvGd0K+SKpba8S7ddntT4oWZuqBZpz+ShPSlaIkSsr4B00YVgUmhC+nZIwtCxPIhPyrboutkBjv3jmGLKpNKcZ/RtLhOgoN6M4Qzt6HgcE/o+xjRNVLzwOdZYtTNFqnEEd7ZZlMChUaSZMOmvFwkTM0RhiPlB675oxSLmU0dBS/8mx0cWx981DQsbuvZkz43gdYb0MSEVAxohA50BwbbmgZrk/8C0hdE8sjl07hKA/h87LjG8vkAS2cQH4RG8SKYRgx5nXEH6/FNney6XHgQdYSDkHiy9dYhYMhTT47LfsgtuQ5UPcT7xCv1Aogd8GnxsLaFpf19sV0CRRZCSHVIg6qFNvNAskVztRErXf4GQgQgnb4dOpicpveSx2HO5Fefk794w+AeZEf15g80gde2sNRi0X16B", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yDcAG3Y9nQiC98uqsRfAmiiy6/308k4jy8yGgu6+X9k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "SlRY/jkhgbTi+1skOd8AUV+34PWc51XEs2wLNbO19yPVhF9ELE2dScH2j5v3TrkWC55ms5O/pD0fEZpihEuWu1TuF5Eo7ZXsD9OzwuN1qFbhORkTWkr883YH/cQWAwwxfSxlzXOw8YQf8RUUxu91ez5h6xCkLnfCOGbLpabKX3fuVe6Ev6SlmLKVyc+5/MTNbLEFRypfn8tQCrQxNvdXY1XGWbOwFa6oRooQnhMBLYwEc6XFw7ZR8nLv3fWmph9tjVwnxOQ1J95ZI9Z+kXUnn7s2Y2g4V6eXD2PZY3jJ0yPmpSYMbM3qfSVb25Nk/wKuPXvOrr+AWS3ajHS9XjieLN0jhVhJLTmXy7umutKvz8fMRKVZF9+z/U0/V3EPxZCBlxoZLpTjFuZehn591e8VVPxMIvhNbixw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yDdhqwd2Km1tQplaWHg1Ri6Wemr8MA8MzjwZDgFc4lY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aVcmi8m7qedwsGO7nP7FMwupI0Acu8KDoCjcHNFZCh4D1iHfmz105bIOs2XygiGhRrxmt0yaCGvCmKeV7BlZaIo+kzWCuMFiFtpgkEvaU+j08K23MAA76edBi6wDefWK3RBSKuoUWPetz4WC+oFAy/ZpWo4AvEIKybNn9VFOX/ZmAjUhhXaAeHRaaWsu/A+SP3k4n2ktR7FVTvYiNuAsgw+GG8J7SBLTZmUYZIo44FXq9gv9YaNvve1YSjtoQjDpYJjsywBoXRVMWilXzaz3aEHwCcCMyHRSOarEUk4znjFBke0w8urXGK1VlFPblw9l1ucUDqgO0m7Mby/ZwJ5MFiju1gGL5ki0YZC/oXv6VLDCYwHONvNleOV6IqeDgpNOrhtoC5FvxUsqj3b8ENnkxmJ+sfq3LZmK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yEAFTGhW3Gh7d90rr2qJkffPKHH/jF1wSrzNV5pFmgo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IWSAPFVZxcXpY+omf1fQpxY5T+GJkmLsWgPsaX+9dacxBEOGjCgA859wrLOcJDgBUVWp6qEzYLP5rAtkz10DfkTQM9h6OFv26vD3H1ICFNIdjuCI+KDy4mTmrIkv5c9Noz04qyL+zzDLWEemTwg94SNreutwfwNsQTw/zXnF4TDhzbAIEZM02BFIu15VP9AElUar07nBt1K23NuIsHTnOgbpg2MgXO82TP7JPAJUszYoU2HicDtT2BHMmuwkFWqj6a2Kq4cMY79Ht4LZeH6D73l92QzNL8b+A+e2frYvIY8bWC8b6aNFOi9UEZAfCbTrt0zN2kQFcYn4YmIKMwtze3GG0abaCTNloPMoNcsrv5m58dgTuhu4mahNmwAAR+F4k1sgdgbSgQMOETz9AbhqBlFaH3PxEowl", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yJtqXxIUV6UtK8vG+hM4Z073cUGm1zbLmJ+A+jRhO8M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "p0U3I0XMnxvMId7nnw5d+ObBGo4MJN2UEkjDv4Jr4CM0U3YaSxEIbcnfxZ+62ehudYsEudN1vUXwPYUMiff+shDOFh6s3mpfsQ2pl4OqZU/e6Jc1V8UwVgJdP8ZUUw/Ku+pA+A8lfd+YzHUssbUnCcqTzpRQnQCLcaYNBSCDoGm5batVddNKHkbChH/7uBwN+SyfaYd7oqJ+ZktLZE58QTw5mpn2iGSPiumJE9Sv2CIAJmCJvgEZ8qw+cq3iy4gV5akkCIb/j0UE0WaZAeU4TwvP+DlwggajSaj2Op25NzPwHzYQvelyuJWMheeRD4qVArFxUK0GxNUGTSpWJJA6Rzp9abjJ1pcLYjLNjSNS/0g7Kyb/i/JFDjYD1wzwo5Ll/s0OCPRqaRU/0eB+p10Jf1DINrniaPFC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yLdgef3V06KC0Qlkk0up+Gyj2oK7MKA7kUmAl/VM42w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Mk2ZH503U0NN/uc5tV6WfPpIyl0R15dkdHsmsntUn/L101eMA3s6Vi29TX6he9tq2Nt5CxxbRR7GALMz7bipWBh+TuIq2Y5P17xsW2pJ8DdF5WvCewWRlOktzCg4biECy5qWZDtVnJeYn2Z2NN66sjWyP8G6e6WjwwRjWZpqxXS4sSpsR7Ue/bSid2P3PLy/ynBpoQRN0jSdrp+rH3sTzNsxnFYlGa8JRC2ppybqgy7cyKu3Bs8DF7A9BCHk2RiiirPwEzQxxWNTshTw4i3L9DCVaEQ2avxFtwbhkF/feoa5uJxFgLP203FMxitK4pQDTiD6xTppE5RPJBxMjUiL2P8cJlFGm2bhXVA8glqoPTxzJZNhDciA2QwsvxNojMB89De0K+Gk/yN8qVm68hcm0J9W/Y7TrDxF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yLuJifOigMxy/QpV6b2Pv8GV9RgPwNh/kmzeEh5/GPo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "XK57iNbxJ4bMWeXtb8s7dYZcXQ1GeuBTndabPfO0COCidIVxA0swPXIBLtKbNsT4VtOWlhRuhyBoaQRWz/mWsOk83mnk0ncvMUOl67RfZinIj94vepEupZftUgxmNN99xXcnoT4fYi9G08/fq+rw/MyW44FTSqx2zQi7xCEyjWeyTRAaa0BEbxftC7ern1HNJeBJvqFgwI/Jdhz/AnSQNpQ8JVGzP/95TdB2GHrVdtKXPxZatR9t/lSzpbP3jqihFJJw6fwxgDGMhUGvFY4JJuazv4lzZ5txdib2XyBWyUy53y6bXB/WN3kqfMC4FlyQgVHDU6Wa0XQUWn9Z2CGcqjjFXAK9p1uS4CK4xprNBXbwVCelHkTMECfgWbIjqe7TjqmUiPqcnKdWhQa+Zjrup5561Dkm+hOZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yPEEsep3K9pUy7b4ftJYtSEYm1PyauHOZuPcHYEx7V4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0b4nLM5nlcgBZVbj5aulFCYKW/P3CkIRiP+6c2ghCutjotaa/gTkifDg/refaIEn80pMGZLNRJrUlzbR0YW8g9UTSyiqJsnuwWchCtpXWEz2nGU3f7WgT/76/jJdD93/eXVdwW3haZG6CbZgbOgx+NMGvnw1QX0dHuDSL0a6Qg2hOPWGMAq36j+xHfXAEFXSI5yd+ecw45cVHwdc81WoeY9mcpe83lMxCbw2so+GIifNvGFlN9p1a9ZYCPg7ROs4CPb/d9hGDeQ6sMfET4t+ddXu/2UnMQQnmUMgeQphlF2lB7YfjKRSFZIz86blUAaWE+WBEqrM7V4qtR4O/Io9tkHDsnmx3KI4x/DKOiXYiwFAZ5vZg93DFEsMR1258pla7n8hDlX8RcE3VYX+zG2yEA+oDPTAS8ZR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yQfXOZvNnrT5XxRlX7JloexMv6TzX2yOXEZRZJsqDdI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "o9qvmfp7mGHqsfttxkE/n5/ZmWt2a/R/yRXEZgQt6PMN2HbJHyrjdfmcVmEsHzIKPpX7JHw5eK6WZJBabEse6VwZiUFl/5iyRBd6AlyNZQKKda8XDm1a+jHIg/YaBh4Cxs8zb+dBlOdt2xynN5VqOnYLW96oFrW+5BCEer+sxNu2IRN7wKN4Uw/vYkYmt52YvDPi5/RkIgfjOhBP5l6Yh6EBFaT30ksJL1b7pzFypi2B5tjp1towResQFyQeUSl/Uf4JoiWNIjkSKXl6Mqs2JdWIGbiewULqNer6kbO4JRuE5FlJ1W1KdUUOddtQ1e8Nn4va7jfROT0a2ycFnoNBoFcm9eHHKpGdqgWC1KEyWE68FBhSd9bGRdaaXYw9POcbZGrMak9wEOIBakc8QlfD4qFbr0jkCaj4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ySUY4kFk7tWqIXQriM2ISHvDfuxrVYfHrqcl6EIJIE0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PeVPb2uMThAmQXQESA6c/aHrG4EvKDFuxB831p8L3CrPw7o4uDT0NEmIV7PMtUHnFBNLW8EzxQcACyNoleHWqJvlChaSQZzNlX35p0de9pVoHlS09VpBkR0+XAP8BIXlQWxOYnuU8soSzdWLJ+il5JD5RzL+1ej/05iAsUGddPKGw0T06kHp7TASbMoqbKDJl8cV9FkwULgJbjAwB84ap1frlgQwsYdl09d2VeJDDzO2ZSeaSuXODcCsYoAWTeeLubCh6ji7zWvmiUZG0PknD6NvSMsFa2c6ZVmpKzGgzYYiKfE/N1iujRXj6tLjkpZEyxi/iZHgvQ9IMY3T6KTWSRwFiAqJYawQTp8AFaSK97UYpJ9S+EZCP4OgOYpnJCY371rvq/WwkkOU7sLj/a50e9lCwu+bxh0S", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ySqUpOvxA7GLxqyOV5cZZQO+ybuCJr75xt/Hj+03y28", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A0J7vWh51BkfwQG894mRp1T9YkFL0fcVgq6w5ZW6m1wZRz3XCZoUDDk4vZ3YIvSxXCoFjsHwn59mdh0Sf1L3hevyRwW4pxI1CqxCaEuFQvIxqXGkEFAEs9kG7JOd1XbFL80ACwXacSiTl/h1X6s84xuXxPgwWmUL0/w00LOx1VnrHlIiImGx0ADXpx72Zuq5GM0/O5UJGRsajLj5VtMqy4sNE+2RECHAEBitGlDsg4pbhuWpdQ+aub6UFGcSRz9B32mNm6wqwD2vCkUgT3fkYxhwfAZ6Loam2N0S5ixbI6Uw1roQ4KEG2rRhG8f+sOJHVocs2XNWGqjzcJmP/GTqmgnHIKZTGInxArFv+X9PzU3+p6V+o6Yy0xDNRhb1T4+8tzzxwUFYsgpVh6Jb/kCFLpJYdYplPd0C", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yTHwt81HDBAfmOwRE4YeImdy3P9G8F9WeoAg1kSbKn8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "8u4RMGS1YSjizVJVsZ+o3nulbqjDWvFkE6ADsQk1EwcXsbCJz27N44vECB7fBz/W95IfgGXEmaBv+4OUtJ+XonUcBH7PfNqHmiJ6V4Qeu4uFE2LUtc7/EcfFMQrYrd7JUAJxgqYMiv8c9Yh+RsqhXAledjrMx9aCyXzVZPzRiZDYt2QNZLiDzV5ymiUeeR2dyTCvI1lIbupqIRXg4WlMc+cCslg9yszrFQf1mz72efifcehdp3kR+EufUJe01S29r67EYYSfQMAYLrLoJDshNy4uSHOFuOcQAIQB4OPBo9pV+s7ynMjU2djW4nGVRXTG7lKq5jQ6FVOKj2oNeNKBFdXYi3/1RuK4sN40YZWdA1sbu7KRwjDuZWfzeytWn8kY/yg1sihqscGZwRaENr808qvDkIZ1eeMA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yTR7RVC6pDiLItQ0P3zj2FXzRj2ot99cYcyB+QuSwro", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "rciBjTiJP4ur/fUgK5ONXVo/nf4L0PZklJ215aQGURdYi8XZMqpkXfuQ2KXBJdK0Wz7xYKPQQQ6nDhOJKGbtXOo4aNWS4cDKbobM1XbwWg1MkqvBlWkgNJlM6eBgGICjYJ6K2ec+0uG8YznPWZaz0QKJxdlcTDR6cxXFo+SOwBeWqw/Qfvx7HsTJNQwpn6DHEOsHZPExcDYJKuqMKllftQEHecPgOTP5/F2ywPaOASEJSpylo9wPJ67gJTFaEZbLXTcMsUWGz6u0tNCZVFTcKEe2kJPv3qsNTUtASJGucCGPlkAHdpU3ZkMLP8/A8RXqGpYcxTT67C+J9L5F8owwkokyEUW93EPhY66bQ7lilciXZ6Qqkch8FvmH02h/o2F7hn7LY+XogxHd55qZkgz3H0IynSeRR6TL", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yTy/AtnvHEL9qVCIj/B/9xS3HQrsHxk0hnZ2/DNAas4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HXD+P3iyrtNAszi1VD3Wb/Rqgc5GhJZwHcBm2BdZa6VL36eJzdx1m8w9wMpwIlhWx/ZwpQ7rbo7aCki46Hb3wpD5h4il7ZaI3ru68b8sESE4BaAEtO6Jc/xhwOgdAaebsizx5mmOUJWkkKFjyfZE+3PCDpmh4J321wGJzIUj8hN0NR1cL9hNvkn6494eeinBH9DKqxPRw4uG1JpTMFia9dcVw3UaeP5/VCroTY9aNbVkaVhnkshnG0+YTkcKU16GsQVKnqg6/6glb9Fch9P4R1oIbvA7of6Wm5SrxUTQVeceBnPinsi+Y3IuBnIXv6Mlm5cDcBLVcLhxKAFwR8mP4e/TU56ZUrAqj6GryB2FACSPOtpiBY65OCbhXHB6o/4/6HCA9xXDX1EFHrzXMGz4B/oFLcc0Yrg1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yXWdE9PCC70y+3jAK/uCprdq1ib5k24Se4D3+ofj9oc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/JEJL1SEDwAcAp0fXk/jA+T42jDrBlPAYUv0NE6GwaJ1PjcIoVIK0FJFOBpSeKN8cTgLCUK1XIL+qVAbqRJ9z7V70JMBZAcVUDwqRnToQsXrFkfEPOvunfG5qTFexbS8WByj++hlXfwiuiEjWs3eh3VWQODEmkPa3hzQaJhvI6fAPZeAUFEogERma1L2BRmWwHFSbNyQZDEaYgU6qYWt0LGDIlhMp71NhyuGCBVefa8BHEC9uGgk8nbwLPZ4y9aul/zGJl5xRBH0hzsMxL2MQAqxDWzLVeuKE/NYFIpPMli8Xgvw+tvJyWEVSeh3BZFV17da+ZtNcsU06uwtWfoQhKNvWkglcMETAqDtAQpDrw1GjBAW29hPNViMSi3Znr50JSEtFKQwShBu7q9CjiMDD5QRqUqWpbOj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yZV9wmcSqarK/hPftIj5qUie0EMpJ5vRP0niFsMShyg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A/Lvo1US1uWwRWhvej8hMfWDVnIhNgFkSHOJrD1QBmyjI7M5x5pRfRxdN3VIux6SVtDADt0tHaLXDdEmPTXTr3Y0bpHc4JZi18W5TAxvNdn+Xx+iJ3Feak5LqO1Zv2vzJ8rm8XF3ViMvIfV7vE9Yhg9CjxZWvffmMjDU1lff0EyKha7kNCtHdjgR679HnojSItW1GhrlvHn/rE6Ub1AdOx3fF4QjYn/IlXr5ivL5YPRB4WZGU531hn7E7B0elJdhXYo54fipZ1RAZaNLp0Qu2PPspiKfXHRI8Q0T7kyf8NYPFrDiQdW0J47vu7xTdpCkjg7UFFvt2tKKnG8O4sPmEZSCM2ZdxhCsj0q8DQEIsqp/mjW8b6AjUHaVgb54FAmDIFytmH8ZuGDxXQzjR1DLc0UpQYiF29r+", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ybWbOTymjhWjMAliQFZbOTJVN2Kt450+WMM7XjQsqmM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "0gFoRcUChM4djwF8513XvTwHKGKuPHD1pwDX67wdv8puXN//goFEqNdbLA5yHMfc7gi3vMiQlukABTrbDCA5VvApxMIjvoXqj2Ek/g3/587orHoGcdFiCAwczqU1XDluL7ohpkccmY9qQLLDKGCGlVOAoYu1Kyo2UiIPdXRju7QAD1wxPjxMOrUcgOrIHAW2od550HQoiVk7HE/URDloF+Jf+MxXrfeuU0GgDIMiqy7n9VIRPyLeqAnQMaq9waTDTQb3tCyDfXEnM+h6/AE+nP3egqVfl57LKyw0h85CCu+T3B5l6RSJPBioWiX8j2sZiuIXgyBlAxUjkR7nZR07jqdk44S5V4Gkt0BxVVjynYi8RP1B9w737xM57TmDXS+OV7H2Uu0XzYLhh020mVUdPSeYVFGY9AEg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ycz52G2lVv8SqZ1013JfrpIYGKojt2GJulL1sXZxZVw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Kckdi9g/Q9ZnEvj4/TWrTBXNH0bnodqwlzH4mROqSvme/GcmA6t4+QG/xlmsZVXAg6wHDr+W1Xo5zscFieEGVkzmU2yjF/SMuAyJxdqzmZVX4wptAvne92nR+sdBDyAX86s3xgWTcyrEZbj9PsPMGqA9WCe1xefIkAmyGozssqf2DHDK/P9ErJaF8BR10aaOCk82itmLAHBNWZ8rYWo8uz5B6rI4ztykA157Nf0qgYlhUankw8dHJ3LqKYsmseEKMQiEL1dqK9+ciacHfuE4S3DvUpVbLIVYNVj6a8l75eLGTXL0ZktZK88KexX9nvSDM39zrOuPtoCEmU7QXBPB76Rnhm3lue+5cDWYVGHRAkOwitNU+qDqDcJFjhI+K6QBqqKF6jJc+kDWkgWl/ijT+dfqvd6nRWC1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ydJ55fpWHRv3c1GJQW1oDwDnu4SuJ49rp3t+6buEW2s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Nb++4uI8XIFATt7+y1dpJWCc7KY1+WR7+7kDHFUzymjNTdhZ4h9ibjIeSQ2SDRM+ZxjAc5tvezarmVhHW7S4KbmTTYfsbdVbZ3G6+IzwFEas5k8rhYJ4/cR6sr0TvQpYMXxtzFRK69nP1tLE72VM3Rc2Pv97jtbPK6//TkpIkqpmoUGFxyplgpYEbSqTArcTz3WJuvy1cS53s389iAq+98tYxJxLgilrplJVXXTXdWCnBK4oUyYLtCIMPBDmBNQLv3EwZvtB8D1Twg3V5Vdz/ECV8NRAZFkyUXoYVj+4xXstWzY9YMOehvRYlmpaEtexJDd6XFocxeGLIlgNj8DFWzd6wciR8ickkB2jcQgcmTxsf6o1jf6B/OD4kFvc+1s7pXgCWuN39ezZDA3WNsluOuMdduSr9ZHE", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ydQe/4EoPFW9b2rFikM6fGk3bKtplmm5a9vPUOmD9cg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YFvSZ5BuoTP83Zw1HvCHvIPnHg7lRU7VgQ4OzlCFgMEBC1NQMpgQjhc83jZbwqyw08E00pC/ey4GY12oSy7eCzN8Y+MNWp+5oG8FjJUG84yXvD85K0XPHEkun41ZrUttwpSF9p0hPPp2Tj9nvjVkX9GHDfGn+2a0zRyKUdsWV6A1AiCQVSUXce2EPfI+I3lLu0kATr7dGXwLlu3cKC6ARwPNPZOH2S16IbVmdBUQp4Yx/4cifCkvFM/708vPeBgGliO8r7Cg77LquuJnN//w6jUSENlDZhlKreejdTDRWcmgl/WR7o65ZYiXjNhsTHQ2C57jGY1fGXvQ8EVg6K+93S8tyV+85brIlC7io4NqPXC6fRzIs3P4/6tCfs2obq5edb6XbpKoXHMbrvNiGRuuQWHksbPWrX4n", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ye/QO6nZ+Y/uldUtd9uHKcBTRCFXcpgdxRexg8DzOps", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ajIWRg34rlwlMnd2uJBmL+LbGxW0MNLz+WgSqT0OLXwney4Ms/LYynVwMBwgAdg3BzBFQSzKLq5STcF2f6Te9HawGgJ0FPQPsrFGc+hDLuf6sJBbN+z264FY7xCGjaxriGzPRTSwLujH9z/9plNkK6jDljlVErsCNSyKexbaLNS+90vJXqAKefAI1BhJsnoo5KlDOfBQebltfbdqSDGl3LgpzqqHtiQXwKWXRinOC7AFqm+mEcIzxsejigi0rwtuQPKPsM0ahHLoqIAAUzEd0iceJivhTo/0wmWopZaGAwnVyeXw317kwo9fW0eXBHsm2JVFrEK6dq1TDhIro1Bb7TSicyYbzhm/EpKCALnB1wNcI4s2b56m+eQWzVOiviE5AJnmBNjjY4K5q78kxxR0AhzhuXPbgaTT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yeJaD7EdC8BXFlitzkhskq7uHd0sY9K0okVJUxUuneQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Agt9Rm0TJYXXMm6w2/XAMS/SurkFloXJCJxstJ0xD12HIHQr0JxEc79Y+QERbPnD8dzt/rSwfrSV8hsp4adFfh1Rsn6/MdNeNc5bRinKna9pu0h5OgFK9CfuP4k1TCAa4bMUq28jf6CZMVKihIoWusUENJ/RKpTJAa2za7gvYpgHYeNHNc5JVCLk57Hz0v0UTe274jg0kZeJIe71Db3dOrgpnvCiomcQ/hshiGKk0kqzlgbXJt0/6+F4gvkOOO1FD7NqgJrIktgzBVd9X8B88Yp8fzo+f6EWtyQdEM6pSHi1B6mSuwWk1tOINkgordwYuKVIhNLVlQCEDgUelmVB1NmHVumXfNUIeiAK0ZlqY2eQtdcn7LBWn7kzZBCnMDl2E5fS7Rwsym6cmpZbePiQ71yPZFMpg2jz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yg8H/xheEciha8s87rDZJ/Lgs0rGuqBzQXCTXnpRbRk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "k/ivhyPxgCm/kcPz/h3XMMTsnGL6EpQ3Cy4ra05AU3HUf7b+4Q0f4zegTZMZUtIC3Mf4mPsjRLuAcCE+K+utNdm7yrOxLkmuylEt59YwvdGo+Fhw9Zpxxc8wI0BfMRm9tbNE/zAzXWG9/u9wMxmBgla2oB5DLE/NBmCSWZrwVxVGKUQEKOmuy/D3hglgVNgDMYKMVn3hWm4fiu5urH0oJnI3HOo/RHBxMrc5jq05J24ZNj9pqW1C5QRRLmDFrbl9QesQ//d6B9SG7kin7iiJt22YnmTfQp14U47hzF3s0Hg4AQ+Yg9ysy7Dz2I6TPvdKU51gGPs+uvnavfBnOkEdM7YBbhSDpa/al0Pgu5m/05+UDHD7+3s0EE28u3fMgp3ICgLBNWOQTVbZdcgz0tQKuDJuuXapmzMV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ygaM8UYf+uqLrLg27ny1pqK16RTP329Gt6l7YeNblbE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "i8NEQjmVpOrLGfhGmjn0RDrnXSDP6DTjwnuIfdjWE6OpjxRWzwYINump/uyKVHF3hPNCGoKaAbYLknDxTsHOGMVHc3lTbMaxgefM0Ly4SsLw0eTOBOuj/m7bWwlH87lvH9+dXPiPD8Hp6M/TrUkGmfBYmM47vcRHQ5gWnls7FlBIwE0S/YPEr8rjDYqbUXO4D5b+7JXw4TxPVXULcFdkeG1JGa7AkW9OTkoAyhhc8Oqdc9IcVxzNOfhHit1gmitGHhvhyDUhWHYVOOTw2EBa4M97Jgp1+/mg23ZD3veCTdMOG0sqgcSvvPZdGioq9sOlfNVObYVvVtaUD8Tr6Az3CTcrCVGFpNvCEZt5vmxZ5SCpMgAWXfCwKvYsPKBvXZxtx3pH3DZJn8nqOqSG/8p+bYbU6SycJea5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yguK0pLcZQgopHvWJqtmShgxkAJC8UD4e8P/myCyooE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ageZfE1oWP7pt1fo/0yKZ3Adsgy7IhZhVBjwPDaRU8QAjeSO3zgR/04ftdiwtPC9yV5r5YGix8vKHbVhIUsAfVTNlgikZ4Jdl/BKMUzMRRNdzL9wku4GjdzsnEiuCFTkW7iRkLPy2crdC0MkazclnOlKIdvFGT+vjyhnzGeZ6nL+p461bZA7RDwFOlxjjIVQYfjIUnRECH9BJa8hExRYfHQk28Td0upszBP6eoviVvJVxSwiPDqF0k6GMeSSMpiKD/Oc+iZyHldLm5tK3QbMXvbMyhLVCF6oA/SIHmoyL8XNR+OleHuPu6CyJ3S/FDbebrpMJsKW3d9EmMyMkg9GKpl9hFpMTr9iwVUYxfTYq/6vGaS8b0KiNiu6gnos+A+wsgcC5Z04wFM9/fxdOrQ04+9y/+2NL3w4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yhADnp9tjhgemumCmR/YzfxK1AfodTPxSg5qZtiFXwE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DoRnP4khAIPQvsOKaBVEmO1FIcF8ql9qZO+EkkWoVci5iJVLzMFcpUo8+ncLtcGwE6HLqnmx2A/yndOCHg/dbqpwwVRxO875jJnX8afFbGEeYkd05J0kTOX5JFr8G94qqLVerG3LkE7VANepABU5T6r60eTziCagi2TqEdMQ8ZvzaDzQHuOYML/in0TRITadT6tz/69D90ePVbfSSGdQIxgQyK/JWybf6UIYNM3UABnRtr0SJD8qeCj1eh2DXjGOzVQTIcknHLmdrzPKIgRp+YGx4I1P0tVqIRhQITZxbV4Pb3DFwgkl+MK2QF8oRcdqgUNaFLOnLvSLIEXNKFoZ4uYHkGk3UfQuwRMJOWCydNjGoDxUo33vN33uJ2MuH0Alm/RmXko6rJuBybgXNwwTCwjSNtoj6ZHa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yhZ7k2LPU+6NlvZNg9nh3NErfyX7PyQcM6+AyQcBnmc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "exQwQdf2ZCRynGM5FDPaQ2rsd5N3mFa0uSmfyI1GikRNtkR9rgsTk/5dLatNFLULKKyQYcg+KXjnuCFqrZmLmu+aTrfhNdDLP+ggO3GIAgpsZ2h26UsAZHoeu2RdHRiCKsB2vdNc71A+oHQIov/EeGX9Sb2XcM0mFzEzMi3PL01p6UouDnuuV5hzHEojFE11zhVIOaijdtfC3pJHwgORwiSyqT127qV2rDf8p2FQwAyQs0uIvgr20m0v+wC98TJ2AToWl6MQLiDMrt/kh45LiSIkd7HwMYOuWPtylXCKjhDz09zCPEIFkeeZammuekDRUstlTWTd0ix6R3uigjkf8qJE6Xmbp2Vz57Gs54FIfkc6nrATC6MaJvn5VDwdAm/oxcdQcX1g/2PeE3Uo5uMwpO8zjdptpR89", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yiB+lRtuRWCB1i6Wjxuz7LXy8zYG27JlC1pkkRyI47g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "HicwOlzX9iSLWKBTB2VUOaRVb0/QqEo8rRCLgfvabe5Ay31pcHlzOhYYnz2YXNbjJBS4GrLLmlUOhS28njws3GdTL34MPHOot08qM07Yb6N3AAynZc7B9qKyNAQFD2/uZGtcLWx0hMJqK0/dMv4FPNpjBuYzDmmLWeFAu020hY+fQFVjbjbypoZwq9NY/qVAZehGnXMR5o+268z8MICZtf5A7ZdGjYevhZxzwJeAHwDqn+glOGYGj6demS7kXpLgkKrL016B0wOodL5FZzzXDdvoxAE1sCuDvxTk76gH9nJzJZtqZrkyRmYZzZQCPwTLGTaT9GwskFpxWWxuDF2AyhbS/b1QphycnPZBFFeYlr0OsajyPeknpepW79Q0ES6UKL/xkO7WomUP4hzc8JQatprHn8lR2xeO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yizsbNSAWnHWlGGALpxZw7/aI5MNkouHubVdYHUwn18", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eOFIvLtrh062e9fEXeAB1+On1NvqKkYCGNWT2v/LRSBXbWV4Nj9xpQiGw/S4sqS2jXVIEJRBvbTAVZkCEgiHjXxsffuGo5JymWCb/CvmbaJAAYiwB8mtD1b/AQBeIVABoX3SRoh+YQmkDa2lJj5btGEDBoxNaGJXQNF59ZwzjnSkMqagTecE3PTLs4caMY5deMXQc5zfwZOuX4ujTpCstvvKhQV1Vpv/36OCvRXOh8eOQanj03FaK42/pvMsRLk5Mij4XhqOs4W/sGHedw5+tW5N/faOq1/lZ4TrXVVZNaXbNzgcYwKBDMNxFs/bNaw7yK7jwi661v7CJWEnLWwdWwWDrB7OKsyk4bGHIqe7qPYVpV8t7B3wphQe01MwPrY3oV4PxOPinMIfe7ejUVo4hQdAhmTFZ5z0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yjSvcuH/bHhzmnoCzjIrDJdiDMgTj2qtBXU3e3vNXgc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "oywS9aDh6JOtnoKxpTuDdn5g/X4DfOxHClNkejFGYCb+kOlcjIaOMDnEQX1rijgjchxyCUmbndJF4MCY2tjPXLEBaV5FmDo0j23Tjs3ujqdPYAcfCa5EN+Bz3FhtGcpmqlLsd3qQ57igZIH7+5vGSgtJIP5EmPkecPQfNTYOvM9KynFcR341TDbxHaaC9oxM5YVI+SV4fvX+nAuFe/37t/D4xb0Epaygd/UGocP4Tlip7AUYDPEDwbD64TpoOfG6xm5CKuRARzvlpCsrdpx1dv9ObvAvcAauVXo61oRDqghv6H3RFwSeVJCw9Wh+3PabW1aGKlzeF52MtjNeQ2+nxiHoCkokosbEZYi8JD6lBBUydjmEctcChBlptuxNdap3He/F9XUT7bYI3ypjiho6cmgyWwtOOqwe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ykAeC/6lPXacT48Tzdr+JJIJktZgKF0StuQUC8tEp/0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qIx8tyzFtcnUjCvTtQR1GaZ7CHdvKGthuu5tSMZvHtfjoPgIEtuer7GxbdPpcPhzed/DRLES2bTr8LMMa/d/HkC8cFIQK2ywqiCOMMadPSIH3cNbuyHehw9QaLtSf0gCv66/Nhncfvx+4/WiZCAU8Zy4auuRQSytaXS+gNEe64lpFgMKZDAtVcVg5+Huvojx6JFzmv7D5GlMc97SMq+P9xhm7HZMQwQ2jTfYMwqu09CunrntCmETrOYoePGtB8UXf8e3crjUDl7qUWdWE9MbHl/KSWv+AwAmmGA0KrbsEOmdRFW0Utzj9Q06RE32X+gAWc6B3tkISL5aYVSDXsIiz35zVgeU3DSqC6jJ6IWof4c00msE6cdKFTcszDhfdE+iujYTI6Hdy227h2+Tyh6K8J7ZPmGxYO8I", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ykPtxl7ZnDzfMBp74VsXcRiEaX4xbs/wOWD5AGrC4Eo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "q47DVMzbZbZPGWVoYubS7mCWAIKgTw9cRPYt6/dE+VtyKhiVJBQcxdo/GCkZ3NI/oB4FLjSLeigsGKwLss+Jlj9jOTxdeTfVKZSEMHB4rgGdtOSAtYgxjMKxZ3c9/19x/L+SGmVLkfv7U2hK/UhJlJnp/nJK993sErd/lXVM4kKdE7C2c9Cpkj5C/kXoggvjUs9vvlg76Q7+S7Q2NwlgCZQbEF200Lss44yMr/SAFP/JYMc6UCY274BA3xYMiC60K9frveJEGB5iaUWc1bc39tUD7HzKQOr1liDymd7aqFdTIK40EFlyqm8rFOBKqiiJI2wx5gR4oqRAEsIJ8rzwX+myNlsDijYSM/N3M/0wumo0jrmGJkLcaAMZ3fN8R2sFGhifRixT/eu9fk+vXOfkDzG8KD9iAQn3", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ykbIk+R0DHUyy1L1XkzUvngAtAbTyQIP6EdBb03xPdg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "91F7CDGS0tA20HUkzh9mplpdGyoumKYJ9/wzq8T/IN8akfl4n/jpUSGHLZlyxBXl7nGNQCqE0yean8uUhKF4v7YRieuIRtCEJehVC/b8NDMlOUvk+wZ3D0ak6s290Sak5FbYLlZ+B4Z4guCmXT9U0snH4k4ZLPoh4BlL5MQzgAmsmAN3RJJ0WBENX6x3HAvmoPGEjbIxp2LC9dzFq0Yc2FMRpJtAaV/8Z3690lr3HMRHQrIwmQfgLs7qWpOhP9nCZ59pQvBAIFXN1LqU+u7iCTVtQ4eRVMPbrK8LJlTA2+YI8DPqckaT7Eb9JwjvqdfO4dcu8AfsBUnhb//KY4LbclFuJeohM0lyOCFmZ7qI7HJ4GPG1kLy5CjtlTFEddazgv/+/17LxRAOGA+j2Sw+amIqg0OWRUTqT", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ykt1UVhP5LEhVIJknhwn+wYvaj2LcUsHYIautW0UPd4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "F0bsCRdw7Ho0Bd1snAN76oAvZl1jiE4O5NCn/BmlsMCBcBenDUzxMGnvRERzhvzfi3gGAjQzpjteMwyLIVQt4boSwr/yO+Mf3nNYNn3zHUaCHC5Kgt9hQl2xLEZViCExeHMjTLDGARC5DlirUaXN006mGCvQlGpIkawhirqPzYpPXS2VQQ+PWdmGip7N2rTZsD6bKqI16z641X0IU4YVhViHNEp22meAYvTNKGg3jeqtJVlMxy/ddOWAaTIDlLh6qWrlgLPZmr2mEpgy/JYKSWgyEdj+l1gVf5LWX5bKXbhbQglQei/pnYC1tvHmTB/XBu6W1/Tdq1EyZEN2gaUavEHd8ZOPDj70eoZPzza2DOZc7MH3qVul6DxW8sGEl/bdcMM6Ec5um91C6u9G3eXRdeBghd+2zxRd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yktGRiJPZSwWGddTArhq1xE3uR7K97p4jV3TWVE3d5w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Rd1mMXh6gtP91tHWj1FJ4f58yPml0d98z13irJPQ7D9wTQM4G8Rpfa/RruaXmfj4hGOiDtVYtXHK3T6mHIjRD6k87FQpV4BaWciQjfx6FD7oPdjeqTisT4geJUmHMNpaCxRAFUzENAjqIcAjY/CQ+Jr/hcXVj1wWgJYKN9XerHmp1ZRrb9zzzSB5500KMyiU+tAglCj24K2cwo1u4Ocs2N2YosLMjsMspBwqjCOJ+h48A4i2JWeXgljQ7Kx5GhXrkUfE5xDUApyYW02Aw7x3MvuwX9dNR0T0fjM/x7e6w/JUNpL+kVmRBDs3DwHJor3nAaXtbVJcN9QjMOWvTbrFBp1LwYfEroitO/lWolsiInuKg4dfAV26F8XxVmPe4srRdzV2lCRMctFa2Z3w1TlZuprJKm33fEHF", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ypOF0DHIKd1aEc5AYO/Ba1b03eMOpzuHCWI4JhqKFYw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CuT6ZzS290Q0B+ONxmLtnK8hLCD2m+v2YpA4a+KTykUTPHNfzR+TREXytEvD84WFs4PVX4FUCvdeUloMd1sVxD2JcEdqpo6ie+lnKjDmKgGEWIPEOI5JTcY+UzZ20fST4PpGig1ljif0KUL3tGlyS5l5BM83nF9D0VXOuhDOw2jKpsUOjMo+0X307w3IxmKmmg5L28x60/k0P1tEQlZwbw1HyvDiPJkHQLHsAvv4Oh8pBCwhIoxrF4ea7Flif1hrlkiGa5OAns6GDB77chHsgEnJaEXJI23THp/MkfGKSAu/0I052g/6AT3JN3LkFGzB+OKo3Bvljdf5zFVGVfzKc0LWrR672V3DTQqaiWK8ottNLf+J6cufkDFP/nM3umIP6Eem/NCF7czvjPCkOkxHw9MGSnw5jd6h", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yqJghMSyZl/ZJxKfYdw9/3qTkA7OKP2ykk+eYAZ682s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sTN9CubqUEJNxeQdhL5UfuDvuHdsR174spo7jHZ6JVM5rSwHSBdmqzuNYuA+jKA32u1yh85Q+yVTsd/ZjAI4zBnPqxDYQNySdl3OO23Jlmr8JfwiP1n2v3OH/+fRDP/MX1C5SzJu+LT6WdY2m+LHFCROa4nVq9Mtvm8LyssW6soCbLfH7da7ZyoksXn+Gm7cfr2jf+epUBcZjgOi3lYAyDsvG3loySm2YY+6N8qOgi1orsbHjz572pCvZ+t3RIa15sromg1LWwEpnBrIFRMu4g/pTiOs9D54g4KJlYn0Svi47GFboRlGfXh2hfpdSTHUUI9yG2qdsDBPaVnejvfUjyBUJLeKVn3HlxcioMG7HB3d6CyHzz5nHd/FyPdp8O2+6uf5dS5yhrd+IeoXquWmd6xlbPW83BvJ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yr5z23tApO0sjps2Z1hsadLl408c3DNDbnw3itosWqU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "eNVjXZN4XNp63ZW7HFAhFIzjFO6+87cWP/uZg/bmf2zZeG4BbD3eOa5PFccFMXpYZ5RQfmBmVxdNaqreQjnV4nMF8mFGK+t89nbYhTq4C9wRzYAsj5llfn4F5A2YNH7hwbL0UJUR/rMES+T6ZFfUXFtMXXWMvAqKYS49dbo5OIBm8ZcMYc+6sd/jdXIrRqa4D4fFYBeB7fQVeFNDwzx2sW+gL0jq6p8bJyC5P8ZYG3VjFeJ8NutJsI7xJ4mMTPLnTJutsdPAFKWcqodOykbYFRIAUN+ytK6LBZ1eNvAGIYEXFBhDwnFPQhm55PC/P2i2A9kcKqk/d4riKSuiGPbtweg9vwh6AA7uyLYmtqdnT/OdVswE6J4FJSPIHceeqiGb4QlvA9JDO5TYQrAP86BjGbRetMUJrh+v", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ysycI43O12Gn4h+yMRtH7pjbJKF+ZFU5i09om8KIp+k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tQd7EoTeqMTb4f6u4tUY1Gz84BrCdxd/v+A46Az7uJu2GuVX+LNmgSZQNSEBgxNb1GaCwrpJsV6G8QJvkyrOFoPZw2GtNdEoIvMHccBI0AAmpMFWNJpnsdBhG2+PPQ36AH97/jKjTQyUNoMPhzYmAivC2XEBN2Y6oBiU/9F7iDRl+Q91pzteqI5GZOetDBG+eIneDVErAFglqx8YH9jHWWkccUI6Jtu2n8K+JsQAcz6TqWNxeO814tThyJBjqSQvqjwWxdpXCxuG7RrZnGVYNju7RhWdhRQFQt65Ps5fKQBLRJRvc6Mj6zGeKXArkMXjSeqG/xciLeYWKN/aPc/m9NRGm+vlGSc+0puTqvNnDzS28ENaKGvfzsIctAqeizCl+ItVg2E6e3Y7z2QW2i6Rx5/G43iKH9qa", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ytBKsGiSxzBbNg2VyfsgjqF9ArqCGZizlK16f1jJu2M", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "dtlwck3XxCWyFI6sOpdnuFLrQ2tt2rkMCTWkZoWh1Qtj6sLaaPScQZScrTzK8vNjdlbzk9WRys8aTG6Ii0PKu0SqoH1atiHRadg+cxcU9bqrSSnY8Jl3E+cd3aQIhWGEMF0i06/15Tel6b48/tksrox5A6M8sHmKHAY+r5VNNYLutuqSK9FWjth1ly3eY/iz2IqAUZhJZM3nN/KXFuXl4yjGSnJUl+8Aj7hKqY9imhhgfU8p5H23myTlVA34UwHi9VkhmI4mD5nyv5mx4JS1qJsHsKWqNP9EcXEBtnMOsswWT15ZprtC1D6eSvwdY5qUMuwlHRwmwg06HvlJZdqxts6pmvybZekbNiU0j+7OOe1ievkWq16m1P/mg7AtE3d7TjxLtl42xMzEdVUnsdkoN5dOalBSxaob", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ytJapTOWg13aYcmHNSKiVdzT55H3AkGcvpZF1ZW3uMc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "AugPRviaMGtH8MBj3FflZwtPOiCpJURCxS+6MSGD/wwej7XwZvR9UO+bvuVHYqPoTBbiwr8Mq4ijoHDsd9r/KhOVSLykiULlt/StR2xhHnUSBEFbOxLbb5DafloZjXy0mejPDwcWQ/+Jxjt9ZAm9S2UbeV3klRW+5o1m8PH8aMFv54R0/pQF0ydPbht/u7A2nVeAAN3Kbs+GsePbYZD7FBRe4ocz1ZEnObXxbgbrXf/Xol7ho52vsj4i74zzR5FXCX1aN0ioaZjijisddo98q7KGzGHG7wzWcAlyfm1FOoupfUhyOiYkintwBQiog866wDftGGH41SWpTDnK5vIPtw8PzrKsPKqXtcDOvAtOMQa5aINpJ+6yblZLPnxsJshQruecLO/NuTB6Q5P1kiZtRKBCkQ3+035f", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ytM7/2D2fBiGLeFqSOqYTdOcPq3SG+NUW+QcDPH8t8k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "vXcae1kKOpmDyQP6B1rAr48DFHnG4i9xPxLo4uJXPDldX5sY9wtMhI7JBMxQFPb6K9oOkWrPomAZDO4AaKjCeW73WW086MMpLCmfdIwlZT5EWZcx8E17y0F3zDK9S4gHsmVRvhDQ7v+xEvpZjOyaw8gik9Y+p/7N2QCFC323PGkH4fg29KUHCW6aHJ3HIULUfcdIo8dkkX+w5+gsm14IrWuOkIifNvc0FFDZH6HIV94sA/LnRxu7R0JNq7OmmGbciekAyuEYCTYwSFp0u5/5wbNMRzk0uxovW9H+M6TVwg6SUJHfxKt9chEjo8fp2op0jG1rPMpgIueF4i9uBLJr/gaBUDRnKkFnr/i9MzYgXgji005c6HcKKjxtqwWhfTuKC+noZJTNHSAM6/Yov+jWev3D4Rw2/bYg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yttRHpDzuhcxMmGty4Ew47taCJ2G2sb/U9DFHLq1KwA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "gFfexDMxLPYt8pANNfAJBERGF5UdDRqzoD3DWa32fImxxD1Z9+cRH40mcnj6e/lbpkQ8aGjEzdy7lhN7VqJ+aebR5uhPwS8XlmuS6nMtl/bdiPb5ZrcoGAasRJKGhdBcwzpXoldn/5ahFKu6Gt/D+GkkE3f9+Y2HGP8TZDnGp0NJ9pXa3D+NUBL3K22XJ3oQgq5Uwm7kEeTg3jXo3AbG+yLvfoxMCFkSMox8lPk5GEnqYUcXHmYx8ReiNlZ0BUzsipY/eirk9B5qsrnAVVO0nmSpSweIE2hV+WbDFopeEXqK4GV0uePRDxqtub2jOEnpqRMYmiA72RDZN5hn5RPenkCQG1837ItK97SPTMT1aVlwhN9Bm2dTP+NdfcJiHuSHwZoEjgExg/BglW4pdu6sSw/UoaIQSERY", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yuzDY+BR05pfofG38ZfDIvrEZc7kBE5M9wYbmNeFXkQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TmvfKSt7Y5xgR/RSfgRFJGcuUDhsIfxZT48/kn7A5r/ig/CPgNyZ2A2MaxOrP2ZyA7w6IZ1MQa2LYe5ZSnVTP+OLNhB1pOrLCd71UCAWTW5zFkdY3m5U9jxelDbUeN101bLQ8Nmk3KK+DwfT/8JKTW7Q7Bigk0lUCnKoMJrZcGxpc6ncukl0YYtHoWOletZnX8VtTgKDSgJJlwsISBb8OmsS8mAR64pjSQkU1sBRYarphxxe1VaJBRjnU7VfmMXne1bSRjOcuXV5MpNZhvQSufEZn9tHkhmCUxcHyUgxA2eeMudmlNrweDIK14Q9P0U14yxw5KTBj5eWjMD1stDLdbrI8OoSOcV+KZssPpkehEXq1cHyvqjN4cDWKzzRjrcJvkjSRnrtdw+0ijG49S287HT/V/2yfZNq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yvWt0JeveKHYBM0wXF0paONZGTwlpKMNlaF3anTwzIA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9t7q/mSGLEIuw6lGMJwiUEf6ohhXi71jZo1tI34WPR9lngpVNJZNtzWia7UEr1RMKLWOh7/nGyHmrTKsoOktTZs/CcJNt/kv8JSjKA3RzqYSZtRBP4n+FLM4lkrzLiHRFPf2z7OHww9opaSqGNCCTn06ecWY6WR+5MSabQemxxy4U5kvepM6nlHObkuC7qoHHXdhY3QHzpBzWJvRNDohi5fUzkWZbwjplP81qp8aTwtY85pRiC0wk+iEYCLgNbNT+3UlkBKsonvF1tFfyhx0w87QbvCu2Ejr3jdYYLggWh4CndzwY8fqoAhtWYyHFiH4iVz3IvdZ61W+0QmWrNnlNyBw5iJGIegV1zm2AUIRt4lM+HKDIWdxTFtCViI4fovpWSTTFo0LOrbKQnRkzRdfntQiUN0Kys6x", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ywKNwRCTuIEHQljXpAw9sSjm5EqWwjivuWy/ebgXPOI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "PTHrSMMOKJNgXf1wlbDdbO1ZsV47su0yN+ZHjWaYZaCQOHn8ulURzfIm1nwVb7ZF45Fd2yPzeJ4PBG5IeT1d8mfx60J/vy6XuhtcycYFAOb8wT9afVgEpm1XaTpjQKeKHEn2VS0tha8xspLTpfqGUjhzJ43NpMnU/yNhERpEJ4j7YFXfa1NvaJwkVPmDjxTBpfNWtbE5NVrxAd5pDaJRIIzJixDRuIQRVFwrG4ggVbzdHYz3qYWH66yYLSKSAVLjl7ishNmgU/oktAutrPPIJXaCALarvJqUPbHF/b75mhodTdP9f6SsTMo5kj/ux1BE8EWK/TkxwVkQc4ms79pwRhZIU59wUMXBovv0Znbi0logzXGQ+Djb8hEsTcBvLhIQArc1BdfL/nh3+ETC30CSeNTIn19WoH7Z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yxyAbD0Nc3kfaup1FZ6xAKF2L/5pL9WpsEx16jvRYw0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Wl8pB5xTTV1yqOnLVqCBGecW91ST6yXKahZQAbX0apkB9YCjpKSizwe63IBd0o7zwqT64ORzmnRYo8wAR+leIWYHE2ijD1+b1TH6u3nCLsFpQF3eYqLL5CQXIMk7SlpF6FiPraHeMSwUgelxAC8TTbFjzzSVzXI2CXCbRz56kyqv7H+CwIs+y3ENaYwajCNTrExVWGamZbd/eCjorzfZlaRFtQSfX5YgZYUVcYrEEwPqlwmqyIcnRrLJp7QnAJuBB+btkb6U298ndkKYGOHTff/yclJrLVKNJ7CVSFSbYhhNBdnhLIpNYJBloKkWJu8638pyPjx84cgrcgTPexec4g4qo1be+YJXMKlqfzfat3jIxsc4tANRzbgFq0RE0pdfgus+bogWq6SbAGLXMj2ylF5ekanA87xe", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yz4ltKooDusAFeQztPRPF1yPx5soCOf7VpSmFIdaf5A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "agdMrr5lY9TpL8dw5+Gs08l71DeCAyEOJyf+ToVP4QWWFbANTvQ/FWMXMEf4TrcA3QGUtuwcm2LBqJqliOty29H+qi/omxYa2dmetGD1ZHVu1NrOBJG6e1iqeS5QrMMDaDdbqFNfWa7MgRlHVs+hedKFBYCiPcJVMcAKN/RaAaHem53kLnMQ+fwCZAC4/MUu2g/tQE4qtdEBAtNIVMS7aYEOGzc+7Ymy4n9p6fFWwZdjHIJjamSnErOM9kOR0e/HfkFqBzRJXKiBUcQx7oRT/gStEYtt0LTGQoyrA9eP8/dGH6NnZmiEiR9KMttSzYF/pDut0q52LzbfEzI6FtQvhCrPqkEq3KftEhZjW2sXMdOtqPuhMV2DzUyLu+JizdIqPxLSSDObQbDEuUb4hkP7UggcP+QNrYmd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "yzOzOjKBTaoSnPXDQA7ntUIuzYGYYRx1cukrMyc3yes", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mf/P4wB3OAtCZMoOW49MUy/zyv6scXiCKqj8Rb9F43iGLXCIagrAJGtN3aEBlfjQaPCgXnwRKgVlaevEv/94CKMXFFoeMOgb5Omyi8AoLHJgx5RFqSotzp62cH3DPzGM17jDPWOFSCeaRtjyZtHskXgUXlZUjHHFj5Qxrf8Z9TqV/M3G7ISlh7khwUxe5vGAAsFBBCagFKNHZm+BqO9nZMci8lQc+mAUMumlqjxxkyzG015utb7t5HpJ2kGGXfrI4AMzP4ddauvK1v0orjcaQJepvd8gPUPtQqRCC+bUI75iLsY5fdrx9bY8tAf6NOBxV7chW6r/uucVepGC6VGoU760AIsULYnslobqMiJVdvxc8BcOKD2nuP5HgxXWNMEwTYFhnHRiULWQXXaC28lctIbA2ATcHnov", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z+2spylxD5yb7tpkN9zyAkogy0X/886vgx2DvQF5nSM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V9r+Q2a+rscnLkjfrt73RCU3JwzSPCyUCcwJhCGNe8ZvAg76BEgNQFM1rQ42MS53XXs0mNKllz5GVZSLueOZaf73H57D/KC27EtmDT3c31CtoOssx/6rgP0APncPefoZ4kZQ5k2EnYE6ISQ9smApq2QfjqfBxIB8cBHu4ggKi4lP9dpHM6UqU+2sJo43eR1UMDFpbOr17xmNXjSKek3pxl7aP+FL4iMzMKkwJeJhmZVLvQnZJRpghyuyYksfdKIu0zETtzeV8G/Fzwo4/oXZkMA6RfbnaZvEYO7HnOkkFLQbSF3ekhxk6B+SF/MuTHm8jfjSgKGbnvxLbbZOWj8HzrDmLfkCVwZtlr5GXxgh3XD1+yYe2qIa/k0rUzGIHbHSlB2t0QP2yI9NJxPmoMaqdY8vnPuoFEjd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z+HqX2P/tVzRsv0vYSodIjvDXoSShRBEWECurRyIatY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "EgDWoP32qYIbTYbTgrTPwhyGaMTgwiGNLNp4JeHScULqAg5fi6WT3+52pda9G2vwgdIyOZPp0UNH3JS5nHGfb0GbmXLNPeaWcEf2tjbAkVge1/8RY3YbmhPmdwSflIOuQypUpaiLSNCb61TdjX8xDAKEpo2s9v7w3M35J7f17wLED+AOzICT7ilAJatvwVm0G3V3CGsJM0sGBjiHdPgFYYnL/1OveRbQ2l5FOWsvGKYGB42fm3hs9xP12PZDjDD66EeqY6ZhaHhSY9lpiTtaQ+tr3USaEGSm/SLAcgP40dheP2MdIeDkyVMor8Zl0EJ2aOzSy7qEJv1HXesiesWWX8tO97jOGGuzyo8bBwiQKM3kkSPLP7kkXQEixnUFrF3pwAgi4aYNoHYT2cTgRPQcC9EItTOE1Zu9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z+LCrlIIzTz0BA0FAvd5vD9Q+B9tOTdDbPeMNx50/ps", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "54kA393dTQ2rwbmjgFZPaydToP28uQ4bJLGlKhvZQ3voN+vXFGvDv/Dg5GpRSaaieh2p+smW0cd0ZhhsmYvkJQsxW8oqAGq+GXzrsTNxqNXvnicaRPK1/dkGEXuCzfvz7+esyvcT2AVNWTz5FGslLQOzj0J/ZvY5naLS13rbmD9lxK0iv1ytQ+xVYt0g/IK6IQGW+vul5HJBFMz215prF9I+iRtJzhqCh+F4Zv6+0NNd3Fg++7u7r0Nbb825dzIDF7U5UIs1aLiFx3/jZaY9qxIDGW5QaZY6fjWDng7Vz780/TAPAgi2yCB+5AYiHQyHwnnGYfEj97SDiGAl0IZH22wVH6FLwWD3u2p9IL1Bfdk8auMgyLnt2H+IHmtarDapG+84yOG08u+xUAL9c0s4sMvEJs6CiMCX", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z/PeM8CqVDBJdBvcW1TlyXn/E3KIr60LikuJZ77fifg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/i6ssGKei+2+vOucEcTalzXQOG9G/cBNNpJOWni5xM5Ui52xMEUbsJEaL63sslq0krCreA7Wg3w2Vw+NZmLxc9iUw1IxFiH6jxNLcouYMDG4JUev4v44pk1yQ55xwzD3aaR5GLe37IEuCp7ZqlgbH/YGfpj9UHB7u88qWlZinP/3obkh2fvUxE+H6gsjXtdbAWn+XV9njP0S5hlmIuXjHb7b/2FH/yW5Iiy47/oOqcggj91/iZIVpNPMFsIqycoClQWB6mpTQUxs69xv0856nae/8t8cOriKKwx54vMFeLMj8f55sUAwvMG0BoRAl/dId5GWy9dloh18+RUq/wh36KS4cOkrcP4aAmVR2SWtWsyXrnfvDzMrTAnf4o2a/D5ot7nIUQ9NaA39WTYgCJjSEVNHY47bPQJV", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z/Va/6nbbw3tWMQ/j0p3N2P4Q6hZZn3C9CN8T5dqzlQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "V4+lTtsZanlKRlyhgra+0Kc4oTlHF3qY8xjvE5MqtSEamaGrL878XjHGTiu4ksR77V6QVImXwknUhuGpayh5c3C2pJw+byx4fY+5YndzCoNDg6bRPn+VUtdUAU4bNUnfD75o8zu4hGNx1CtNN/04UuOk/sG4igstQut4hhT20R8xPdeUuzxaDtrqgOdFj2xdfSf4bkFXCePC1uuwpJb/ygUXFnSfHdqq+RVKH+RVRmDYTv9bCkhQt3Ib3Z/6GbRyurDz6BkSm8JkFLsKiAyZ6EgRlLigScxVnkZTir7z+5oLPfh/3rP+znXFrX/ZUZ2eIWoA7160Ug1QtFaEhW10hQt4qyE2EuGjdnHKxYeVqZKn1JOJV+bGY0jfbX+4XIe9tMqATVowXfEatJjE0zu1nIQTXlx/d3N4", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z0PHdxC0gEol86e9pkvoj5GNlI7gMiw5IhukeDfDyS4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hWyE1P293prAb8g1l4xFT0N9ikmMqMPiJ5iOyE1xnNE176jlWEBVb579AbDlnmhswZhH8bZus214ZN03Q0C6bxcmrRIVu4vdmpMYCRd9fw2sYpqm6iq5AecteF4yOZZfp/OBa1MgR9mZqoe0kNhiXHf9ZnSHkexrfaXq/sgdB7HMdkuo22RTQany8inVObFSH11l/ZQcB7ZjM0wYha+Ld0yEMWuPB4j0Die3kq1sWVjcoC9HcKyYw8/lLxuY04W04GzUANHTuAKRIzk4AMgG0qsdAgbEEgjN8+HDexLx1CfEKdfRUIVeL95vExbl5h2DDySoMD7P4V+pYBxqS+5l99b2OOw8s/cKF/ONZ3N+CVyeZUrP1ZTnRGWZCvrs5aQ0jmZxApZd9OBQvNnMm3e1vk+4K0A9ZpVq", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z0b/mgAxJpcUoaoezX8uBwFAVu5eDMz7Qijp1bA/eIw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qRw9VamLGZB/YA58t4VJOvkQ+qyH4828nAlL9RXFpeESxj7CnNwATFY9NWOF8M8srIkMbCjR1l8+Mw2+J3UrBcx9gDqq49cNfTnsVMwk7YzTPeEfCsqgqb2XMx1SllIGlB/rE6MTvklf4uMGkQ+AlroQh0BE9W5xyRutZP0YnKcyHin9SK3gDAowHeYf4+Z+tGmAe7EUZjh9pSHmKEqJjC77yyq5EKM5eiSwHmmzZP0rQhScS6JuDgno3QAC70/Qq7nmG94dOeFlrAHP4fR04rlveJdslOKlPhOrmr7Es3WWWVnZwLT3wVHN6PCbiIAkmdEj9IrcsmZG29jZj1Gpoh5jk83vwfd0kFzTNX9m324cnzXnq/p6FJLmLfRPEps5hDjso0Cb5/r0DCGbSKSVkT+vrkhyEyW6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z0ifKb9AcUCYUSjEMnSIPejZU1ikZaNAgywXNHYgk5o", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "T3fZBZnS5fH3XS7Ia401VDPzPBWJU2Sm8fP7LOCZVBtygChIJJRelaOYtcx2z+bstKbdDUPSsIVd+t7ERxQplqerZB0519VheFmKuUoeNVXHDvQNCjAt8h05ugs9tAcGqyj46b5anE6snaNaHnnxojfCFqO0o4QuQka83u7RX6XyRra5GoovMW8g8r2MS+J64+t3UoEm6XSZiHtS6dEhKVVdvnpd58T+7CyCwD9IGjgdyIkqhaa45wuAncOyp2hRgIn7YEJSi+jN+tLHBcweICA4wPR/Dcb2i5atjgeAmDb7cr/eIE7tqWyHyuFDYxEOsx8hB8GtiA2c87sIAjfEHlq+83kl6a9UhRH39UP09oXgvL0CGSx2UUa5XLb4tACAELRBOq68h1ZNYqV0D4S6vvru6Nll4Ksn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z1LJAuWaU4XQl2WV9ARzp5qJvQWpUsVmAcM84TDXSiE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7Agy5d7JVZsLnw07h1FPxZHARMc4ZQCq1RrQIH5TTdeUZz2RbRE3xQj9pi/hzHUuHghOB7xJlihJxg3IxXp2Uy4wqo+7VcFLFoemLkHimpg+0Q/Os+24CdUvAg7FbxKxsofI29zp3+E2cBXf9tTukGpUVihiqAhH1xCTtRfXVvTSEc24qTBwOQC0t+PdyT9oRDWOPn64tqrswPS+Ki1EbU689c1QIo+jWnMHvg/FWH/X+cJbAzst0Nbj8ANGZnmIOfow44AnTzTHrLfbFqBhzoAiSvfBK2yPCeEItVtjsbvFzoK5Yky8di94GMn6tGjFFOaOLruR7vhTbOFC/lL7RaAsx6Ui40KlKwOq0sQuiZW5h0b0iVQ25hTKgEeLPFtng+E5/O+hs/VOKnA6tuJUNx3w+K41wkcC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z1wLqNRh9cnsHAuPWBk5FJ3Sm27c1gGsLrgTU3jDJrY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "BgvJZNwntBuG+lEaHK9fWikvWm5S56CvD+KwMlrDU7+cfgS5pFQnYQudM2jRYl79XShJeW+4yLUhKUMQeBnhawhjm9DvBteJohF8C5DwwRHU0ktX8MJdr28qG1Np7JkocVquMehYGg92dHUOdF/qbV1JMiVKgkXvLnlDPUiiFd35UjXTOMb/sD5nDT2SpoVbNqsYT/a/QZzY1qjX0YibY76j6rcHIPuygQW+t9FuKQ/+cCIRFuJGif1r1y22DG7xeTR9SWEVSeVFq3vs9BiCGSOrxmf7POuGkeYOaRfuorlRR7+otaMAC0EsPImjtXIvTtvQumXktJ7MHgzdxuM67OeqbeiMYByUUeEKt/LQ9tfCJ4iLp1X6dZ7HzXke1yD+IVdvyVLvQvZfWnlEmieyWy35XQ61EHCG", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z279ImOJ+2338oQofLqk4qE2bh5YBwnwyXcJraexbfU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1kq/uBslR76F3B/g30oY/nt/nU5jY9+IiBZDM8e43hwVdeuW9GVONd2QVFEX6RNoRd19xIQRa14zDRNHX7gPX3dtcaSGo++/b0QfYScDSdbNmrdCz+L48vHZfjcFgKWz60LSVZ80nCs7F3plzaTEy/N7xoDHEL7ZmpxBFhi5ewfwpePxFD/89CugnSQU90nGEm8QxtXYq8IR9DMcH0hblNJrFiGA6xhmR/oxKDqto2w0iWwKtpFV07eqpxSDeeVR5OGFo3432zcfsPI9AyhuFtdSIaFea9qD59V7Ev1E/97G5xJ2Q5IL2SNgYjSEGHrPGnmImbEUqGZPPo/PHrG+BzkJC6zouO52PkKjgKMMgghHFWCwYzREw7d/IJXctq2AGTWMpeC1ezss6R0vUJQfO6JgoyosYxzi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z2T7gg3dASQD2jnlJLebmdd8EHlL4lpb5jQUwu/lJE8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "WYIzWwQbmJvMwqTbpHdZF8/yQfFOH0HJgqtiMvzN2ouSJUn1z1f0FRFzPTLo36j6laxSHA/boYUNUs8ohho4zSOTa2I4+pz8pFjVErlsl5owgpK/FG/9q7SyJimjBwnqhf3galqEBYL0xl5+YYH5VZqLG9gF+3B+pn897AH9c4Q7LZAxBCpGyEgZJEwiWwyJHyK6amImh05P/T4hM9PzqIbsMGuN/+p7T05fcopYRiafpb2cpEsR4HqBT3KmjVLRQzqLSZvAeu18+bjXdfSKfmcpwdOrCNLCt1v6rC55kS+jVkfqszcF5hm3CudBLTxaVIXbdM2JIdTVKkffysarqIW5Ks905u9aNSi2Pd84GAvU32NUMrhWs7nJZFXZT123jv9r7oZPApCQ1qAVm9wsklhTewYxh3jy", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z3si02pOHsv1jib8kI5o8Id63hoZoTS6M20A7XcUEVo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "L5sfDoShdj+Wd3+jozS3viz2TueHvXLw77/ekAhyZ17jGOmv6y7xkqdNMbbgn2nJAi2urrDtdkzq2pLzByJUJl3DNBTeVECtul8/PlrjYFvCCm9b2o1KqyEWnyJJ4MqxSpxAPXNwMrhYcZnONB2nTMO1dSEnus7zvDgLmQmx/SrKH+caa+FCPYPDxgkT4ROI/G3FA885pzrhhMHkF5/AcNbr1Y9QqF178VgViSenGm5cUYmHJgdqvG7trwo7+mCnOQ1jaYAjzenUHcDRZiq/twr7c/F31/JWe5IexGBVgww09cauYTdY/7GtIiQtBzrAWkiw3miUCehQ+6NfjLHBCig0XRtqRUSHcueJxKadXLhLE9mFNMGuLSKTc2iCakfUytfdcyHiSFSzi+5Vx2/D7Lc68W4VqGK7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z4DbKUuy3XC/6bW+NR6SpEHUJ9M13KX9QNSo7cBYsg8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "w+U09NOQEw8B+3rR1tS9IXKPXViKefKutVj8qZaLpQuwUGzRiGxyihGRM56Vm04p60XiNgpChWizctkifYE5Qs80gXoczNtGB2K+Gr9F1/KEZCrG92kNoK0E5fmQTy6U2I91LCJltwlSkgQpkZj4+iX+0fG4hkPXq9nrb0qx2mGp7TL9CLB2klkQJf0pbAF4irD/w8KM/VE532XdAcit0HmauVzrsy1wBjXutcGoQuaQnoICnZ27aStWpY1xCTYbX8rmkmLYOi9MzMO2lcX6iewcVm23VPAi4fvMd+xpnKLILZTAhIcPEZf4EyvPGmdEBP52j2YcHzKBSi73wMPg7nmewlRO7j+SLzm/E+GvA/aWrv43Q3GWmV01pXTc8fZJ3Ek1noW83g5OeiB57FCV2bL+x/371U15", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z4aOZ4JJeckZX9lkXqdhL2BN5UyC1q6ud2/6Zqfaczc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IYXLeOYpFWbO1g7V26syoNSt2ldxb9a/HFbbeUr9VPzNFQ+RL53v+6Sl1kWFUOnQy3oh+cv+p3TAWhcrG6y7wMurgpi/T+7Zo5P5fWXllDDbqUoizCzsGmu5wB8m7qGNrTDXD54Sr2hugo9EgR/G/LPR0vYXvtcFO23uzp87ZWrqHVK4DKyk2IB17/EpvTSBOCm1HB42EYrmUJ2OXqVBbY0aLD0rOX/yTdi9ncRJnbo+UUH/6FRP4LRwyza2TuyLs9oXt1eLQu7Z2SpKr5ktuLT01yQXDOeS/vs9NBddDs2L1400MVEJwJz79x2xtRGjq61mPX8N2d9hla5fEq9HECr8t+di3vxaaA4X8m46ji6yZ/MHDVEAUuYjOs/9oi6OxGCJsjCSZx2rNJW1lgS1pHdCROANEo0o", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z4c3BiN89njb5FDQ36+jBBV85xzF4iN+HcDzrkgK2W0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "UrjqViU3JkhBx1wqwQNqkptBfyAVTNDSrwjQLVkUZt8g8EqMlr8LbOVg7fsS/RmPfKjZp4g15qExwHEM0ojiwuW/WN8n5cHc0imCt4rBA6kxZwmJPXpHWlBJ9DU46QPyDSKUJ40r5YDAEE2JkZsbuX/CINfmIuo/bixm4MtC884dvqR0uHXLIafUuxmDnSFF9eD0lj2bYkssyifzOu76H/tIY8IGqd0e3oDnhy7PtIwOWvgVhGVvGbnFHGauSpzUGfInZXSlNnEdWGayxkZL/KTaU9q1A2unTl19JwiXNcKAHacFJib9StmN05vyq0vOjRoRDbyTdFGU4AWa9ALSOKYyaVtLDvaasXMwBgncrDg2NQ09VIKV8fCnTumhif0NdTc/JyePpmk3sRepKvkA6wLnsDDaOgxH", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z4j1dXxnDUxcoFNfg6CqaseseUsXRIA7DI1J0sfDikU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KiMtFqYyhzK4EGd5t1ZY6ejND4/IWly9nljVGWCysQz7KQUIGKtgdIryPm1Qhdou0r5Fm5PhHxYgZP7Lp2jMR64uikZd77uCoD5pIUv2RJ4yc+l6mkdiNJ599p8G+hvj8VqdOXviCwlOk5bGkMWR5ej693Vd9IIMu6QcX29EEUYZKVgYOCDE694Xsre7a1IgzEn/nAwtectZp7IyOYJdwwGk77cAVZoz2JE5WioNOqXjYKe5YZM9+EYFnLnldSY9rvpWVUgmGzWrTrp+v2Z08tfsm4yq1/xRBtkH00oJdcnils6oL4oBuWDenQcqb6DztjWjdSufpn/XKqMGE1XbmN80xOLO96GX74pGDLRPxonQky+VEZqhk4L8UVWNAfzZAjo3ROQlWuftgcMFDSzIqviYfLgDxf+G", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z5RcGFzC+arkLyS1cV4/PacTARDjqdAJxxPAzdZTiGE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cMts59AsdaidS9xDUE9eLkrwiGvMb6elP6rHGaJH31DkeZnQ+3EGD/5uBuBxbnKfehY6bfrFPmMbP+w4TAWunEWm6wLIRUEn5qeSW9KqVc14fPAIYyWR3Okvtrt62bz+e7dBsOObbv0zi6aWEgCc6HV1hjqS4BxIVh7GaqUj3V4oaLB/hdXeWJdfiC/2rxjhKgpfl0nSpoebPE6J4OCWoeRWiXSFU3VRyoM1tcp/T2AoZ3fvJdvsHbV2OM3wFusjVpfwSm05HbbPya5tVjRaFBGUWyeYVK7u3tDO37LcRVlnUoUjEHNscNvl0mf3wBDqSyv49EnRaXfxl8dbFmgJEcG4fE8ztR1SOfRYnBEhxTkmqXd2hHuHTOEuJGf85/0GF2m54vQR6Jl43MMoyLBz6Qk8ep5V6Ejw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z5Z8naF5tVh50WZHmsoQb0GZ/s0KQyRnmb8JnV0tVk0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sNibYQhskTF/bagsSCgjgZwd5vLMUWFpCtttNDxjzG0HtjAvoRHe0hhs0ozmk4DvHivBTtlDPZGwSwEZAWrJ9oyETEX7hE9FVxXCYP/JJB7XMgYJDgWB15E337oTFrIYpC57bPvYGXxgi5I6BktnQwHgO3t4GWMMhC26RfFekLOgm4dgB6LI6ecKeI5XZJoYr+2jxRlDISCNTzRJxcGjZNYpBKz4EQ7slvzSaCINTvyYyP0XTNl6TLeNZ/bhVtmpYNbqDlxZddOWhCHf3KIe0a9rSOLMHQmuBzrpC/47m7EzC7qOWfDcgBIFLgCDjUZzojGsCyD5ztc4NCIaYJG6AIh5xR3ojuu5bMMNG8WXH3iekqo1FB1IITK4SHwwvoBTIs5aYu+RhK6LkSAXx2OpSJmPIktHkPig", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z6GPmvOT/sUalTd3WfOVjQYs1mhn3kzqnErgQuNCLII", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "cx+OiR7Qi7biIojNVLhrlCtCO4CWY7T47yWTYk3fVu8eIag4EFHhqp07JhHilE/uBMn95P7hmkFNN5E4V4pkYFAD9On8LOMPh3ITNdZq7keTmtnG0AGStgrpK5mwN+MsN/GVcZcef0un/dB9uBDTlhQQ4MW18NBmaAySr8/63YHdVgWR3FppxjUzZjNxnkPbwFolU+XofhP5AKOiAySq/dSqIee5DIJqJav1czl2El7ozT8gxA1OExX5SL7ZXaOK22TPs2VVF2b+3WGyBSVxK5xUVte99IvvnXqy8rlsh7nqfmlRNrhf8mqDBjmofwwS7HFKAsotEmPyHWo8ysxSlEsjStaZnDZoldgZXwboTYcWoXYR6E0tYFPgnR9wtRUd6QGmn/E+GV/EvD4B0EzDsbPB1uuGwdMi", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z6NwmoLt1XOPLZkxLmvjrW/TsJSMoIoUrix9egrDVus", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "4uEwlcFTcMOYISPoUGnwHHgcKvWGPA9tTkkyq1XxrAlVjIpxfjPP8MPOUAlgKIwxdj/CN6X0KvWWvncxTwgNGgJ6kRHwwerHiUc4aXYT04vv8jKCotmCBOuMG35Aozhp09oMgb18gZUhlh102X7Ey+ptTxr/adIUBvqEURB4ozq5X56E8Ma4w0hFVoBhIme/EibrJ6V0j5q7O8yOBngHA0bDeAqm66r/saTvwSreCFpRR25ZPItd8VSgsshJ9PLIPK76iRejfktDWJRdBl3xlhK+YvvKdAaQFl3KkaY6OocEHKM0FobycKx/zv62ACoNYl2zB98I/jI29ocQOmy1tbM9y2dg+gptmng314E3IRz9tjOWfprOuB00mQZMHcmCpht4W2LQwIj69tAPNF52fa5LRqPGGaem", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z75Awk+/1lJg7hyFIfVAD8HYneZpt9/pS3JYC04lLa4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5qqZLvLAHUX635c3CD2JFE+ZMTNHiqjnbyjXs42lpJfaRD0PkZE4VYMPcVvUQsAnYiW373jAxna3v47bwCoGHwkGuAx+LNNNdcifc0MckSeUq/AVZg1AdZAIiWYHzhQ8djU+/8+4PsS8xGKZZ70W0JzmiOzbF4XV/CG/02mF5UbUqPPvh5LdrWXnVE1HbUOrBtzwaObOdg0/Pp6u0l3QuvzbHyjOfaAazraAvDjyGUELqAjnXXdUz7BI0Wkh5DegFqmLKu3/PJDtHc/uBwl6ITLk6G0SATy1sa53uLaEnIS8AKAtTLM8Y4aEx0UPU4+asjkgFgRfiUayAbrGNp7S47AodUFH5ml0zthQvLGmdFby1htAHh3obqbZbus6eDfiHLhjQGNefJcCgfyYjiYem6B0nty0kr/b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z7BVlZ91F9ctPE/HYO5LazuSIKX/YSbx2slk7RGj+so", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pElGmvkVexufPN+iFxFFxZka09QSSeIrvhddC9GmvkBnLFXrwyaThOCwTOOduMjfMtKchKAGevyEh612naNR44RHsF37+WeCOhK+RirBI68ALxBw5VqloYnxHMWw54JCJcM1poPWwFlY6Np5ypIwGlxCPo9hOIH3zRx2vEgFKLWp33+uP/Qy6p5qlfOHyQ/Qw1wkvpqKMselL2/zABe8Y/bgSWT4E0NdYZ5qqCJuJPYhLQ/K6w94RuVgw9MmF7RMAKc9FegPSI8ep+DHaJfFCEi8Hn6m94Kyc1LdhpZcYJwqoNpRNDv4GsmOS8UHYieGE20iiC8r3p/Lnd05g71Szow28OXMvnEkfSrgf94/3TMP5am82lfCR0fI4qyJ3Gjbkyt/fW5tdAarnYhsyWBIBU9o2/gzdbSk", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z7xWq/D4LVXhxQHGw58hmn9x9hnHb+9uPMIVuqSNm2U", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IBp31rsaD43FwNMz+zQh2dlm+22v5xffUd8tJw+0WcQP0/ehdfi2USBqOv+vmko5yaY1yJKx7d4RCWkFZO3EVjxD1q+dj1VWjJ6K/cpEGxLlTdB6J2z+50uENOU9b0f71/z7a2gFyu56rZhRDKo3t275zVAqtnDf5ymKQVYSJzQS2Wd0X2Vy9xpA+3rpEEAM4CvaXgXdHejrfpaJyhghp+SpF0tMggayNBpxZ2lMcIxCXNeC2h49tcUEmH7JLMlN97LuDRPToj1k567oW+SVCm0uMBHBYKbr3RisE3zbaQZEWdTKIb527fQdZFkWGhMEmMJjlYbRL5KYf6BzS1SMtPWyOVuIT6yh/VB6AsyOvcbggPU17Kq7UPtENaGuQTSFam5li1s5rcSczvG3pSffJ2SH7mVNeXsn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z86RmxOnrNI9v3COBj1Sg5PEtUNwi104IdWqGTe6hNs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "FRTlCigf5lajol2wtEgP6rnU2iIpTSTOGC/ksd5u2omBZgHOZQAUysYpBLj7sGK/HFLGQlf3nJPavWqe01FfKxwBmIGH7HB7EcLu++/0DK51vJ5qn31QjvrMiMov/APsxeoWJo/zGOIEQCe/EGvifyyAHX5175/7nD5v7j1aL5s9eGtDNadqHSbUpiVTYqjK2oF3Tu4R7D9xmDwaTeN7xKJB6Z579F35QP6OIbKXvF2zoL1A+vv/tgON4WRGda2zaA2EDc98wPySAoS7bK+xmuIIlR7HByvI2vVRZdSxifOHbGDODO7o5E9TvHO3aD49QRFBie0Y6IIRidZDgtMNtHyr/oR3CgBDT/hl3pPjpl1xv8daA6dIOrctECaQBa9mBiJE3ftRQ6Zo5ejfoY3+HxG0TSWXs3K7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z8g7GLwLItrae3GSfsShkP9ayKgvuYBTEAHc+GIbn+k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "wH8Gt4gyB+ftAUrgwfPViKSthbztZLlv0qHh46DPZkR5C/hcgpFUiHDHQETA7w7kyYi22mV6ADcG4mnTOQeGpTjoD/SXumouM0SD5iSJss1+wO0DCmW+ZwiZ8cY6YgquWRUYElH6Y3GSsydSoYw0aCFoipOK88m30FOmb1pPETF4P/UuLfC+tP+GZMsa/pAiBN8JPzHd8CQ5bt2vAT9428vALjZuB/SHt2d5mM+wMkmSNqSYAiLyLY4a1WDb8hYLVOvqyHD6Xh0Fk3AOfI7dTYmy8/s6OmyJsNrPBll+BkQJg2IUtPbx3iHnFsaasYyt4EX4lbgGydlDdrgBmTMSTG7iO+3V2gI/IQalNE8/wgBigv4qgWt8xLq/8/l5fb7dxrNjxcVik7Zh6Q5reOmd+hEfh7Gf1iQn", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z9YAzJm0IU2c37fq+cSngFiOyNSzaOoa+W1/oh+LVeY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fxokhQaa9tzQ8v/D2Vc/mk1kMtkdAanpsljzq5dh4KL2EYb02e+8fpbasiO21/lHylTWCeqH4dHTbSfltN6s/grqx1bWxbWrx5rkjrU8mmFp/70KnxkwWsDzHQHcEoeY1K9KHqNLQolHuSGL0Vs21Ey5e5BfKALfav2ASwGXuW0vGvEJ759O7nh37knAAWgn1xV9NFXNISJK3+WHFaR3o4ktaBZaKnlZQc5qANtI5xGcfrtPCOrA1Iz/o0wCzZnLwN92Ua2TB7loWKJv95ifv10QuSyK5wM/hRQqgsuiOr2yU0G4dRhenexJz0NY/EfpIbi7Nkr92dTUFxcB8ETZVQxZ8J61mrW+Uw+FUZXMLn1n6YAyRwgz54spOf7sJig6kGhj1ZOaC7WEpewCuSNdlCQpdjpXNAIK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z9bq5VY7K4SgYEwChsH7lJM9QbtEYPHMwoVRI2CkJck", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "nBVZd4sUoBiXsGs1CmLgwb5y1lZckcCCOfv+8P1QGBYhUrhkdDy05PSZ/bzi0feE65AbIEbUXqFeJkho7D9uYvS1UASkUeOAQUysvZT40nuNehTbrTceQFZMLXHRBRSdbtMVZqsS3rO8zcCddLZhLkHbRmTLrmSOCJRABlujBCCCRben4n8wGs8dnO5oPMnbhR4tk6Xm0t6WcXAsXpB+TY/xniNc/Oft5AHJ2S2Kf6J2FEbWFZeUpvQwgKY9DhTbqF4GJZgSoAXpU3CkLjdn3gYvaoiYWXqdiq+gpZaXeSpkrrNpPKiBkPNsStS3dBIVywqhVLInIW7iHKS8GlEIKgvP/79aq+rddgCn8LZjrYUrCjWCNqitA0OyC6Eyv7XkUrXzH7/bzR8W8QXuUSuYLmaJcOnXQE7R", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z9l5F1emkZ29FGiPEXiiweSXBDWVOQO9S1dq7uaeqPI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sjvDDowHKpEGs+YxJGUdb37R+yJOTuORgU8VwS9L1lJnOVDxmtRlJP5C3smnjZ+Xt2fOvbWi93aKL+4uduS3VZp4mU9IH2xqBU4uw/f2CjnQ3p/jCiTndUxxt7taekMi8arkLSxeMReZ/fJxG0rBOkMx0/vxZr/1j+jko9g921z8vf6tJMYQFsJT4p4i6aNhPTzxHB1iHt8Zb+Gnp1LNlDTrC8eBi0Zt9+AVU2ob/jT4zzAkT9qjYYbFZ7kFZ9Z/L6pG3cjmmQgHE931LjlZqttPuyVOJ5G8nr+RrCUeQ29TIcGE8K4iI8gY7t4qzFJE7ERI1NxxnmRusPBgxsGsDVlZYrOMrjgpcUDjDsKAQYKNGagf02TdNDVjCBw9skF7RWniRPQ1Prv2OPWsGl9Bw2Mv97LHPsHt", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z9teInpwt9eEuKBUtNeOV/s40wgdUiNF3Fo6b2J8/zQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "u69PEGm1WYIlbSKAhdHfoRyEczLxYldSAdYj6+FJb46g6qgNRHhHSABUfRWrv9RKYcmwl3gEaB0q1kU9UrL/wVK/5hW98LLG2tWsRh/QmcaN98M6rIKQpxrvzpSUkk+4U8x2q4lUGXRE4MdV+mhbFu+egaXEjeWsFVqrb2ZcYKY+JEBiIE9Q1/WzYbb+a5hLYr2WnvSPsWhIulipoSqpU6SMFGY955d7/eOxmW2aT9Y2RIVwQrN5jrTEqaTpSIXS9pXqrZKCfxEd6zZwR9/QecJZgQlhqYoR13tZ2Malug9QL9s+mRpwx+U7oDqWjI6Ij+BfsjlNbiFTm2Tdfb+tM5kmxzDdO1nfFedbRWgodKOqHcncV11XXx4bR2mpLd6E49XVxo63+bHFDy9mElCAH3Ugb0OosngB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "z9v/9jfCY1qnfS9hfjXINp7Pay2bBgTTxsQjmPz257w", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "stIYMwqP8Oe7XgowsN1iiueWcZcPa3cfutGu47s3lLx4jAgoRzn5V66wlBhRTf76QynZNjFW64xkdf7XGqFO+5V0IqUH5kaZPckaKTA/N5AsJC3/NQB5VxQFcU5gaj5wWw68CUXEQL4L3/7d9wAG+j3IuDJJA911KJS94U+glkO+NxvbJf1UtlEUcSBY41yZBU3UezGQYhEOreSlJW3to52mvNy2hlT41LKP+12p2iba7nuMZXmoSQi2P5R3+tpuoHG8MehNxTjETGT5G9Wsha7AwfiIqlEcbYpl4NfsCYxr32a0jseHmzfpzJG1O4tFdTGdyC+D7umbQ69pXIiVb7Qj3tz+gxenJvUUUes/LveLqu7O9DHjQyLIaitqEtlJEoqIuy9X4DBUIJe5AS/uXNZrqbBYavq5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zA1+IG/t5vpq+S7fFQI6Io/IXycRFe5vTZQO38JzVe0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "qv14QWYrmUIwzdVDWgSDb3WaBQdiZPfF5GByF7bKXTN115oMyAMkc7H5uDPK8wO2BzcdVRcgnxZNdNBY50rb4aUbmAE1sHRFiGvJjxi1Obc0JvCb9+sc5v9t6j7tkpQOhkqeSDTzQNpIIaiPHZ+u8l3hDGKWrdY5vawt7qD9Cv99+3qlj9J/qrFyAtpge312BLnHn68L77L+EhPtLu/Y4bTNcJ22I7jeDAq7FQsujkOApVheVsM0GenSBAQGtdV15ZTnBBjR9q26AqHHqm9g4AY3aHYpSEtB3iL+etns+mH0dhp1q9s7HEMV3MvIm+16h9dssneTu64X+ik/6yESVnyaN2c592eM2bzvi8cWOMbBKT1rPgEstC0sFky7/rYombChZ/R+KgNdtvL0VbcV6evg3b0YsyRR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zAfeSblwzF6dgM8o+ypflWGvvCSr7rALaz345V7D35s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ywu8nBcH+j/J/mjYkGabcvmNxHMbI8HIERsicaEhaVdvl6zdsHNltnS56+maNGDFb5NJPM7UzQ+yCODO4E2l7I1VIjVN+iGjXMOF3QB78+JXL1tFuKyszNNI4J8onMthgqFml6LdedID6ndfymMOe9tuE39NBwnZPN0t+0p2S1DJDmDL8k4U/jnjKqoYA3wYEqKmrNIEKIBn+NNQsxEr8cgAp4rfyAY/BJMFMCtthR6afq3e0Hj9mwDBvXpss5vDJPaDYkFLRtlJJl7YtOS5m1IgAZ9yUphEHS0JwB7sSl2pej/TojwrDvDiao6mgopQ4Kgvz/wNqriaMkrWdrmy4sCt0tWvybW+dABLz5ksFAiS624xZY5/aYJDq983CM6PFvk2jcXQurMrZzrMd3qhCLn6voiCbs49", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zAr0xyKHfl74dvgTs0fxdUoazjQl0ZFcl5oLP8nfRZ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kmVofjnRQucgb72oopBH48qXITi/V9FfxO2hjJrFyDzV7SaC7ojNpeOOCfy2p4BOd2PkYmYC1Xpm2WL+mMlbDJW3V00tDRImneSXnisVjbjePpHlA7W87rrDFgpkIeJITAHvBQibIo29BEvj8mptZ+HfjvpPi7hJQ+Yf944+baifd8k+Hfc6hDGT1uDLoIuG7g2jZMloQPVs2Es220cMlbTGnxIDOhZOo/meXqF6zvTA+wICjB/Hpp4qePtoSTIC7DDLB6K/n1U+kI4XMP3y65MeDcFJ4vr9NwNZWgWvSfX02JdNhe1Y5Q23dTBHfiTHQ7dtftK/51uF+diBfasVVT07qJJFdTtE4+bmxkEm7XbUh3vq9lb1hYqv+Sojb2aWIMs77tEfiY855sHhY7Cv5Dc9XfYot6t8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zCjwyMrFMMTv7HA5Ip2GgMjsnPC7nufdw6alaO5/+60", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9/mR3RW6aUs8tKpMYFabxoLXy84cVfX7u253tUcV6+9djsqXtLk9VU3xIW9S/uwrB1MYIax57jXWoDtVehoi2QjI+5M5iaRvzVMo2QV8r68T5qnNT2AvmIzaI0Edupj7JFrikvlZT/zmuFDsC0TLeBaXIBJ5I0Chrovidus+QyJ6AYONmQ7i0rTcM7/jbk+O9jNF8d05JR1tgtqvyl9WZYGFD5Qgaf0OeHfDUGsamoi4m6SiDt/e9GbUWel16ZGHtXiYqlVZoHRmzVman26zjWsi24KheIXJ9mkSoMueeLTq9Kvy+a169s16b10TMly5WjeVrT/bCiB3GXnjk5IimjTWMvQozwi/Ixx1qJEV+xownOxbd69i9DfLw8Q5ko5IRLORiNjODnuRU0oYHgjQ3due0/Gdaoij", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zDIAxCjRHmExxKdaVTWQPvL8VhOi1P6n14iVwht0gSo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3lqfkBMbyKBV06ajnqUqpu0tC03WxTOqpQ4rTaXdUo+v+MxOyzcC83k1+Z48qWn0wcEAcbeOhs2TMnSDEkNy/hqWDCA8rwOUBr9LHVAfcPjYJQDQUktnIE58KpdK6XZOuXmDVVZsegz7BBZXx61uvRLrDPVJDoikBVXLMDXweDhRA1GFIjQaMowVXucpy937BVQQ0ET82vljdJ8QBYjDfWRpCb76XiDp+ETDqxmvnZliksfZ6E8h8tCE+p4t9dSJOFhGTW0GYwSvfA/t0cwCOJpqVgH8LVmQJ7pvyjdNhljqSfIITnYhzYW1NIHHewYFSEwFPItQnQg58ssTUN0PZ+CxgQ+ki/7x7jl2UrijcgCnja1fyekuCpXE1Z/6MyvDPp4RGGMYMCQvZtuBaRKpY81u6D80ueAB", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zEO5vJhbNMapGC3hEWFLRkiPUUGzHWucVhNjfQCUSZY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9v1ozke/0qIKnUFxZYP5Dw0mV4e60h7EGt/EbaoJJvQoQDpDz5rpZ1uztm5MIbmzdy7ND70ZpArGLi0hXkSjWG1WztBUf5d3FQTcW68egwoSxMGvfeeNaC9jQ/9KiQGTLSQJES2OwzaJgM3bAulLhU0i+//1OVqPWuHj8sqYZXNHbjEFbOmS5abzorSpqFzPR7OefeTQxch+0FPayX17nIfD0RHFiIedLTGGWHI9YIt20dE6E2dRRWfWJWmtGxijazfIJdlS+gl4VZ41df9jHC+Lm/ZFMzObP4mPGIBNkd841DIY4lywf5ejVUzgGwrdjJU7oLsVgx5c7fwPxZKbRCHBHI4zUwXkmKnw519HqTgjRS9YXEU5jM5/B6MocKXda1GJnYv6xf/da08Wz427UHlVAhHmZl5p", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zEhV6xzX2VAXc14OS4E6RPVR5honI2+Gu0MedkM94pI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sx1hhklLfH7EdMMedY/jjqgrZWaMF/xltFOUh1tYne9/6TXBYKW21Jqn2Jg9GAiktEw1Q9VQdfElcH04R6dQmqglZbOMdyOZ8GkESU9v8U5omIiaBdESxq4GJy9qJpjxDWFM6zbA8DArT1409FsyozUAN7S96O35su79NVduUDwYywC/taU/MGloYaIev+U1+oBZLSZLzriobJcKN2Ln9LdT05n08frFcKas+fXW1wWu01FGJCR4VBrAFETanKfDpzNCU2EpuLY4Zio4iHmfnCogBBrx1qu9WXwP1ppCt+r0JIuFAvng65LDxM8k5vSZdNyBMOnNwtQn0fDfQ5xo0Zx1ZoFnaOM3LZ0YzeSYxNG6U8dIbfC3qxqIcAmTO1ARL5suUAhUwL/s+G1TZVAQRCc7Be2DcylZ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zEzAh7BYjsgpU9DE9+7w1C4ZHSQX6MTamlK5NhT0zQ0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Cn8IPVSSh50jI1J9/l7ebgafmsjFtR+WhAqjnNXTmZXlxbarh7PHzRfLGG0AQFKEn32kwWlPOeplO1Tjz/b4/epwia8k3DN9J675LEm/nZAHm03ExfknAMpGtol6nJaJj2meC0BjqlEdov8NvOK8L+6Y6rG8Jkax2OdX9or002kny7PWe78TEv75+5R40TukzRPv4uG+eyxMjOUy9P0xtHiZ1nbTaV0yRep16yDimIDd82q+smYuqPu5DxOHfZm1/IwmArDPYKhsjZMu+5Hzh6uaiA1sE9msTi3S+sGJNIYXtKYa10sRPcnOZQDedXNiLh+l2KZFrGasIt+nSxdR2S63C7ae4rRhprUj95POhnkPpfVuVNXNJ1xK+UwsZp2DMLO7C+Z6AFzEQRuQHqvQHpCfxmzTPrUI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zFOFa2rpQmb2wQJa1DUwh6rnlLuHOYMC4VZB2n1TRXE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/nA8bhjYI/xz/ZDleIjOrQFbDzklL17tWWozk+OSu9rj2U69vrVq8pylhacKb0z7WyI1b/l0wOs0Hv3AqnYuZrvPJO3qz4Hy554WUfsONiTpl/xu73UhiiBDxj6XrtwLcZWhaaHvYghLy951g2Hv7z2UZDc+XvCES88QcmvfOl/ua9OTcjyL1g2a7IhmBxl6PNBy8S2WlA8+e4OlZOe+ZxtYKk4UQ0UlsgGfQrebeizD+SDNj2UGZyeCQSJbPz8koZG6mv8gFPnECOlcQeKdydmMHL5cHy/+x4U537kCn3UoxvNZJw5TGU3EJassOipGsd8hM8PLjhA+pkFSWLXSZMiw9ygKKKKNY+nNguvk8GXj9KSY+5CxzmkUBzW7q0tx/Y9BoDrFtZdhe6RJZJXJBaR42dv/q7Tg", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zHz6t57vZhMA6ufRUp/f8oeltJnhebuamhxfqt5a5vk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "YBn9l7/ScdI+XYzTx01W8wde4NNQtyCrJ9Wb51VlW7saOo2QgKEWjkfwWKFqjKUSQM+SppFTRoeq3IPag2H3O8lVQhWlDa6J4UXhXMy0t0GGy6tmHitFvBlbkZ2JFnxR/oO7LtslJ9PJ9jO9XSQP349qu1SRrAr/9KP/fNNOvpZZv2QhwyZpokIOr15rKaCno3iBZPOIyE0FE0SykLqGopouwsNt5EefE6UiW9Cdh4XwcROxOWjd4/5ArS/rxjkoikQT0SRJFOwcBYRIrk8IBs2lv9xoEMboMq0vZ5m1EhKJtRYoLdMnM8tqObLpYEi300QfmyVjcdCQECIn9qHz1/HzFD/mCyJQITvzX5AnhEGZY85liQEdhejHHtX1SVs+FHE+R/v11Bvdt8e96QuEpZ3vYSVA/r4z", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zI6EuVbfE2O2SPmSrsIcNJFAOdnJ+klgCyQnZuiBbmA", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "VFXc9j4OXAhVWOrmnRdw5QMBz35xBv6utZKgqs50r3qL2mLvvtuwj8USPZQJI33F6+/cmiMERN9lNcQGHNs8zPCLHFpkGkVKGrwLDCg2Bt+ZjL+Sv9g6V82xH1jqUyJ+yuW/3H8X43XeqXhzBcRqvFvysG4zHlr9BkVuWHqo8nFXzrjh4wDtGaU706cVyPchHZWJ5vNpTMF1HBJ4QqDdKcp+g/35J2ZcIrsdlk5S9BZLmX6icqEWnsg/x6f82MeBCGlaqEWdWwojS8BV4VPGuhWrgEnvbmOPZ4fVuTFpMDJciK9dzlGzA2YK4oVbut9oE89rQCQs9/jPxuQYCIxBIAyzZ1p3pYgN6LxKePmtyHFHgN3GH72gG/UtFv58HEkv2WV43veyJN13W9ddXvVVEdej4ogpDvB2", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zI6lknD3HggKSvWweL/OyvLhsjQbL1Psg73G7J0I1s0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "2o8fnCtq1HBDBYT4C8hp3YrEVGAZJCC5wzV8GMOElNywmWdCku9SwfCMYSLyUKHsev4d28nJBKWkkxuKDN2mvYVgbakzAmBw1hmzZg5vlr3p9ZsjGDJgSF/mUTrxMJ43oNRlRTYkeR4MdtJ0BIeJLdpQlsMsfTsK4Wf8leF38NP3qlXrl82DX/2pBKjvg16wpd+jrzFALvRiPJAzU9YJvSDIFKOR+udxpa5pv/5YGmdvc6tCJznxG0kr3H3ZadLCzWzOXCceIHsp6yI3cf905qJAgbova2P3Ndt+/7HWgGqW3HFI3mrw39e3d76aYz5HfoB+zNxwNw6gL2CRGse8pQAfYtSYhnFdRJmKqNcF7uhx0Bvy22aQff+3LZE9u3KKBY9FVwnwEhop4FEZRxDsrKPZq2JXkQFm", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zKCcWdQYT3Z2vzp+EOZIYzMXAseNYEZ6/YWo+RpjLgI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KZ8LzYQs3vvUj6MG2uMl2hJyYbklmgidnSKomGg2CXysoKzi9DmQz5WiVXrIXUM+s36Cre3T30XvVcMHbnvphtn+ZvxSncqL4HOjOjkQDi2GS1xpTYw+ubRJW3hrIv1Bccx4Ar9Cevag5JKzZQSlDECf8heHouVVioFQH/hoMGgjREmz9lP96BmCF4HFR5m9NZACRXteJ8FyXQdxgNmxnW7M519hqOSDLUc0zGlH5ye8XEw9aFi3RluPkPPvP0f4DzYJKzot45NwuSz26koALLp5fvljBotMwF5QvEbGciM332YgWs6je5qBaVUClnUPAkXnznxhWLPnxPJqPJPccnvwUjuZFb4wpPuWlkRJhKAyiUbZ0+6bnEbDgWM6mUfDOGSCQvIvkUPST8cEJ375YneV3yRHh1O6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zPPrj6mUfi7VD3uIsuGvWF2Y5JS4Z5jCtDCTgFUlqwk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "hxktb3PEhl7+woRvRxtb0IMvksj+ryhqAlh698qCxX/Lf0FOHKCRIkVQbIOdJa78GPUkHyusIq5T+PrDSF1QwClCOckH3FP5RFJtnHUX9jbtTFiiiVOeHCTfey0IzDKCkH1Ogalhxk/UVRcTE2npYAUecdGPCgnA+N31Dw3yFhk1NiCpWusSWbIiiqgkPEQqeZf8Iw7Y0yhnUplMK+vBaPos8NdktMe0h1QBga4E0DK449ORfGNVD/RfYRaDwYG/LtMDYe/xVDkiebnQqEArfVqM38nVDDLiSGwU8g9rjYzMaORi6faqorLQY2trvm/TDSrHtgIjq2yaoGTY5akyg0Ry/iRiPIMWnRxEsr85Wv/MwxxCEeqzYG+RlV0xQlFXQMRSl9XGo+KXmNQfYV574eREDySGATet", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zPrNOKKVNP9ICf5iYjGgT87u7EitEmzWwHtFJbYoqXg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "B9rXRuSE0z8kumFw/uEGe7JB6VB9j75O+u2ktV+OtLPdBx0R3yQAdj4LdMDgWjTKMUgR5zldnFN8yGyGNl+Hr+HKx6t1l8YJ0NQvorU2oxP996+xUhyZqnFpMBIQTAiqK9KprrLP7wF0AXWweVGbHEzO43o3DsJepdsXf9KFDna4Ev+YBocf0l3y0PK5JKSQGNasbUKz+FunDe9rg8Ca3b/uLYWBCQXkvExKQI+GaQShWTqaYj9M+GMk+o+0+ep0P7jqQgov4141uQjYLHx0miwpSUAIq8QY0KV4L+xsuwfg0WwUXVe01QW+1MtAzj2dQkf8H97hmw5kiINIUdyFwhreFhqZIvc5xI0cfn7da030rMaqbk4hyds0d9rvq7Z6jP2Y4ADPlNCXA/clTa2OocJf6q7hf5zu", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zQ4gGBuSX+K8X0R4hckW1GbVsHagfagB4zKi5N6nz5Y", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "9eiVsZmqc50lsDVLjdLtViS2cfpzo7rQdV8Z5cVJyIrk7EQlkZM4YR8roNBj4E8Wjina1aqOHKYT4rikTBOX53EXt4bi9W31sIwiPN4RLOIfXxQU/ZV6o6E9KaMBTzkena8rYjBiu5UejHnhtrGbbLjJ2BrgQI/knWJ2DO9PFAmufLy2vXP49AcBg17yjGX9EN7fEN3M2jjYtIGkpSiUhhys1MJHf8521tAeRcfR4aIsmGkyZVwJVdblGjnfE1GI3/XY+NrU1sMQ6WgIw7y2GleI3s+B0KHNIS4kWloHLdRgtoecZfmYJnz80MCp7o/pFqCSjGig/FWPD1hpQz/qajCJmZnBB7FX9/U2RdlALOwi6NWk08l+oPHcAj92GzrwTOTxWthfWrPLY2K3tdOKK+Ye+g/+L16w", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zQpwtDvADM70ZD5LA0fUt9vZahNXrrqlKhUH52IJQTs", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "j1X87zWsaSZMNt2DHf4Ubk2yBZcPhPTIpZdOGNE26rQaylCtxqhXSPNrC7Zno1NjJMQZMq8VENHwXpFjy9xH+8TO9/ABRms2bj0+95zEDs6PaxRaxbcndBr8QhTen8WR5oHcTvT7vtZehnuQHdl2P/AhDIb3pB6tEfJuFDP4Dm/EYIqY7ukft1BYTvk/LQBi+1bcdZafImktkBn3tV60Cgln2cDTLy9jGAfJxJj2uPeqaodrRiIlKRHfUTt9JsDYqCj5qKSWRw9ewJHPoFvHg0yNrU06eErTAVy/BktwIfGlqaIAIM9W03FmUx4ghpdh9rXB+8/Lqg/boKZBb51MIhDOc/T1jFsMIaFOj+vf12z58oGFdhVXJbb2ZIdiW8n5KvBgf3tfXE0HpG+p8EPTirBet0cY4AT0", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zRMTfwaw/WEfBWdIIVusyUmHpAA5DDJQ7eaK8M7gn28", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "KsBmBROjsmbp+63DfsH5HhZMuQQL6qPx/OQK1il5tEB4cTmZtAmg6T/OBDtIIRNyLP7nWC1wZjdfEB8j4cZmsJetOEyvMF8z8qugGFdW36KHnAdq24r5ZrCuBWXmZzllLE50AOWT/PZnVV4NROlqhCEkeWb+4fjpxnkMzajO4fX7psJNyiGsRoYOtoZzpNWFQ1Jgv6k1lQwTXLPe9PcsjrSBjC35hdTOAFQ7XAsvGznnUdpAOtEfQQarITRuKhiDEyGc6c5C+Alcf8u0HSAiMtdO/Dbvua72lEEBBTsq5N11LhPJfNhPGafDzbuDBwdJ/oCM3otqOMy1eMhION09fDoezZZJhUyK3thPmdI7WhI+rcY7tQgEsrgAijygBrS8VThN5c7eng8TRY4WCJ9A0kRFAdXGQfKQ", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zRNyKIMw5Q2J1uxIzjmbYqGV0oQMX/hn+rXgNmvbuTw", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "3QGH7O9SoO7WjC/tebXu8nr9jH8D0CgOk7r1t4kiis/cJJZ+CbGfJETtMqfLYhVAJRKDUhNDW5x9LxE2C8WzpDPyvdDZGUdRaM8ClEBQyjPb8/O48AOzyAIFiIau81gb/iN0R0XkczcO8z2v4KvvXNQzx6dWs8bwvBL4gqu9vF2Ez11c78q7PsWnDYPgYN2wXc9a5PFNwKn4eC/Fj/dcB15vtFqhP/375S7ejHDWJOajindw+2Iwx0xYQFQ2pfLRRmjNLHjRw6Lk+PHXOlmsNcs44+bzpGHktuk1sEPT3YjFw5RhLMnbXilKuEATgd34xYmZsBVTxLTZLdpG9EpwANzr4TcRp8i9dyMrplZ5uwRV9nAX5AUHezEOt/qnMqhycMKkmBG/K2BO7iVM7A8K11rwA+Lm3pNN", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zSAtehqECC/uE7pv4TbHEqiC0+0FW+35eUZWzeshSIE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "kDOCDH+wAlW42chPTEui5ZXKL09mk9cArr8qd+m93LiW4xGqOYVj+0o5HuqwRHHxOZJLQNTwMhuNgVOhKywJRo6VYiFSy6doXZCmyvTy7znmPWSPY+8O8DMkaUeoZbXF/Z8GNWL69ylT7q048wnMGXbVhMGxzCQcr+FVIAm4f9f9mkJ0QvM7QZmSrPVkxnbdr/E+soJqyzxy0ITJCP3dgUyb9RbeMA+kKHlUslJwWNEPkT9N5OX0KO1Ae08rUz+ndDssrzEFtAAn8qUIjVgvlXg+YTIvTcG/Z3SOEbxAt6UHO9i0rgOexNIwy3Kn5T/RWSetVPEJXBqRfbBpM+Wl+JIEVtt41CV6yCgMbeinOfN96aRAyf1y1nRMqRAfEUMfusvl9B7qi3V6vVDMXIrthCdIuqYetdx/", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zT8S3jJLLD+dSodwpfOsDg7jV+JhruOMOaNfULvyI4g", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7AYK7Jke/E5CRcUS5lNZgyV0dBGojPjnsEMde9zaaY0F12uxRpU0xFGR+CpFokBG5AB94TjKH1h0jd2lf3YeFcHMSenfKDg3H97LD5240E6FwLYNmpvQhc2uY9aoEaz/H+8RnKTYLb+VE3VukdUn5r3sK2FyiS7c0r0zvmJyXuwEQFFUYmIlVINrgHLUCbhXIq/FvGby23J+6EdbAyFYUxtKr9KCF65XgkGCB88AFHo4lAKyHCoYdkhJKMOVQ59H7/1iIrMyRK1DcVKTKUv97/+RpapycdROnl/nUSwnQE8aSj4X7gFhhCR57Orvk5wUMDIeakEIvOqb2zKFnJJI9oOYU5dHZ9imR5nlzTTo1AW/mwlWL5aZY+bS/Eyzd9lM4ToAdnRCTGj8gMcfbC8ICuL54xtBcw/b", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zTgZM9ubqgkTKU4dUp5ZjIq/303CEMq65o0WI16XPzo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zD7RKc/HRMnBh1zPn8aQk27ztL6VMGQaRDUlEvkjrKsBsOsBMGfnG/8vpvD3vD0O2Hw8ZdUU3UFcwAEOTKf0dWY9fDJZPw7TrsrbcvGKvOwqjlm8/Mm+m3KSCl+op7Cr9MgY/wRgeY2gVpCPdRsq+4CCKa8jpO6m/2XNBQhOhfocKeGHHHJU5Gqw9TlmNO/Dpe/ptnUEW7GU0m+DqZchFRKQsCHpey4oVbt9549ZI55E1qAIDeoVR3PD6f0xTVDZsyAR+2kP45q0Mkf1opMSlXoNSmSjxhBUAm0a39vjoOvULg5rEMun5H8k0GIUyisqgFJPM458la16jjsO4wJhtCmR+8bdHsh+g7tN0y4V6LDoOToOxrVmG108TPCTqUblNoVmU1MaWeoZn8xb1G8OgBawuHjfHkKo", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zUT7iY++U/hOr7VVWDGDP8BLtEY68BtcenRyGlkfh3s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "08HVeySGBN964xTNzLw26FYNaMms7DbpUaYgOAaOiV1ziF74Wc8MNOfLUs6av66xvz0tP2jx0EBihdHieuZn2gEGjwU+kMw4dL77eL3xmgkRXd2SBADZnXvRPStqklaSl7wd5YG0WVd15+QtQZ0OCUPW9rRBrT/YLFyfzsAikwFk7AukM28puiNkZ4fcYfpAppT+qN54JB9X2xCbhWKa+hsfK5PTykkDTPDjb78y6MB9V6rL2ek3BcTh8VZH/2dx9f8wiYPNqzy7e5iiaEYC4G22a30/QhlinPbglOtltpnEavnV07xYTxsiuFmc4q3mSFgrLUf/znwepFk6hj2J/Q8ByghSf0i9IOw/ViG5ksNrzq33+/9oliY/+5lu94r8eze4nmC277Y4BwCuFYH3KR0ggcN1R6uj", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zV+xKkaiYpVt26J4KzYmegItA4VYUG19ZGcea00w05k", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "bDEff6/eCy+LFDPczUTPmIGNsObGXmbu8k/ffZuiTTu5iEmr6b4ZK5BSMJSj8Is16i6zx4nELJvgergJQMtaHXwRtxjvpBb0qQKmU7b395AfHqbA2p5PpXoBcXad8lP+QCTD3FF2O3/uB8ZdtxKDDjx0ohbTfM7qea+GizIwaQcKhM2HRXr7LQGlBjtGKxNgNsa/2YAWx3bzVBLP52b48gbJNAsXGw46/FA8MtUSclccSwegjUgSPI+p9i5U166T5At1Sdh5/UsDBfDJqKbgtxgsoDJaUxDu3bCJjfEX837H68uf5IgW0RyLg4wot9vW8f7PoASLdNRjdEr/hHJmCMp+zf/se96fODB3yrD7sQYSbbT0Ll0bB1tFZ98hvVIIlrqP0anu60xSenoPphSq3oN4rT0XSsgz", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zV2ytcUITSPKl8dPpcK/30duuny1t+o4EmSTdkqTpQk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A8CNyuYR1cSH7AS2bR6ON1uSAhZUrzNrhfeavF6wjNW8K2u9WgC6DeiYVyhJGJBEltRHG7cs8Gg91znmR3uSMGjAUjkFv9GwuiZb9m+8tBDIwlsbyibSEA8c3fOJuL/IHOVScL4/WPsegxlb/04bWX7PT8jwUjppLve5nI9NNy60hsZmXaLjfcpX85Ipzhw0jibD+OF30TH6GHxAVyDjhi3Zwrm56/UDoTMzJaZruB3WuSHxysW/Lyf8yjj/1+nVmxM4W2Z1+EpTyJpdOkOmJuzaTLjlayJjjfSStMl5InKR1cA3MYt0kbnfPFdS46cexD8TF5XUlBSG3G00Xuy5DdNGT/BtoiYmhsAoGbnBCHyFJrCqZqa5IacaCVsTntEFyLZnYWYs8Qt/qARJFSh3LbldlhFJbOEb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zVOtdMKjt33F5sOYvScy/lZdv7puzeHqU27BT6yWsAc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "mniCAK5NXuom8JHyxRmofGuawiU7c71MGN/0PXaIxj0gxco8+OVLgiY58ttBxcyogqhKl15RvhCUJzIoEp1C6Dne3YZw0JoJqA4E1CDwuHDtgmZjNsfq8yFqRXDtLf9ClD+ouBG0NXA7tseYQAJBzv2RzoM7QmXVkJKFih6PqzItmx/YYETKupiu6o0buHlnCQxG4NIp0aquQiuGxSHq/mM9rf7deBqu6EObwC7i3umMInDorwE8pDt+cRQhttit4UTKBfHp3VBBNHw9CjtpbwCNnzAmwUozwAN4c2CMpSfVHw5ehbnHwpv0Xh1dcqszi/j1g7L0qzuRcFIF42EvqL5VtH2x/2+VSHJtvKNEZelL6uXP9YqNTjCHd9LFz0zDNeBOvjYumGj1gYWF/TDstPAOh+4AdPL5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zWGUjgRke7RwOSLYSIjfvAU6Hxg/V+v/G5jDxf+3TR8", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "IPr+L9f0AMPisNt9cwkjxFYxGjKVlGLgSM2MxTD0DFUYDYi31BY0zfUFjRsSU3DErEJuqbcfJBegIyLFpUy3W6lPNZTbCzdoQOxsnWRqx6tdENsqxv0kJqIE1xlnnKLkG4MKXMGtwcc8IoxI5nWQfrjIeX+qsMTcawBQXpBZ6R6FYJABKznERd+G+pFfrmkGokxRo27MQ3aH6VaNA5im4hW84TyW9UrkTf3OF0exAernbmY+8DIvOuQWwR6PlyxNPPmFzo5ryUFZBgjTmpL093ctZOWgf8FMa1nWU/5UcYhDUz729MoqSKPXioAedHwZ7ehGt+r22m+Lux4OYUXqSKz/t6HnWhL7DmjSRvT0aRdX3gC5b7eBODYplTkAlZ3/G60Mpk/RLvCtnR2FJEZGqPyD1S9ZIOeC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zWaHFkBhiO4vBk0PBPY3JwPWdADHYpLn5ejhA7TKXLU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ieczmTym6azhN17BSzxY3tkPEpkaSivNrbse3uJdVB8FMpY0r69L8ee7fsDOvstgxoylb11zFRRmrvGFAXxGvS+L8h3vvc+fAdJaHozFk4jcdKACaoywZUZjUgCI0S2yCVXUfmiy0sO6mjEcu98zAZB8+S/rfBdPcILR3cWql4m9oYYlSdzSYYxptVcJ9UEVCNqfdqmpjT8BPZPvYU3CTxVJmEacYg6dPyYwSCb6gnhnJAMo7yRvQ3QUqacsSCjI0LjYem1NEEHzm1/2uf71Z6s2zMONIZ00mJPqlxoqOYrePVsagvdD7F1gBZhrgI7N9FV+sgQXijWtaQwnmB8KTLc47X/M9AXXk9Qy8oRKXagcnUr0aXjxTbdvpvru4rOcSqmd+mMS6rMHyjJlH3/kTkJrHD1fdLx9", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zWosS9aXlNWykuiegdOq5Pnb5xNK8Cm7+nKWlNlovJE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7dquWlEJusf200T3HEaXOoVtXWC/2wL7I6NzDLnUKJewYvao6QzL+lQOSb4unyH0Efzd/RVmojOw0ZPURZ31K/HgHF3/qnKkI0Rg4akajGH+w89a4gGYARCg1PIrBgAhPDsaupoKzNZbUglx9xO5Y464AJ9mza8cIpX69lXluWI93NMTvQTLubPqHVLOo5OKa8TRzBBnub6oiu3j4B+KFLL+OSJNeoK5BvbKZ9M+/Jc0tHt8a7xShpdBYWoh5RbE2TOHh+AOLnVrossgfcdTGUDRTr7Yk9/vJb9Sh6ewYn4d5wyys20929I9f770PItV8fqEybvJtAS7VfM/n+3GNoxhNMtKoU2yvOd+VJxZQUyGiGCGTI0ePltAO3K88m8gqhdxOSYrr+v2gc63bghBW8Y8K9QUXNH1", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zZLdIuWRkfhcdqMS0A0IL5oek2FkoES5B2TFEHsICtg", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Gn1mFtw/XWN86V7Mhl4xi5kBP/Rlh1EgCWw4sw+4WjFIbFjSxkY1WGBlT3G1EUH+UpjBKC9G/A8Msyn2JIo1JRuC+r4ZYOUqjvBpB9fSG3zADPfxp8bpEE1osLRFz+i022GhTiZCYk4lHD0v4hVsolvjjAOz86zv7BMQ3ofObLH1isZYCbMVq/cUeXUfdorLYZwi4l6PJV3sPuU8aWY1oH/h6/lrewZr9mA0SEou2Q7RzikUbCDXYWkTUMM+HQOGUOqRmsayBDuj/lxussQGGaasegzT2xu6X3QHww5Rnq8RPysjFybDPOAHH+7mmYCPKfFDfrXNUWks/SduaAzbnfD8YHu8alkv5Lc+MubZzDVKc64L/nRGBlFAhIu8sgvdyQ/kHgcvK8rU8hgyoyRzUiTVKghvdZdb", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zbqDyaNv9vb9a3emY+6QZah+u+H0u0HHzv155x7DxjQ", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "Ikx+9Ej5NnBz3dOnFI3afZ5fJ43+t31qVtleC7rJnU/jk2BrfRIeQ93qzitjwS7GsJ2tygrSnApZk4stZyXjFLKLqA/3MszWakSx/Ramp4ytRgjMjluSJq2ZU8IFLqu0RrLDG2CjkmWMB7ai6PGuUAPawaOee5SJuw71rG1iV6UGaQu2BrkGEukFX5QUDmd0an74gv+Pyl4rPNLCVByle2CMfQF+XCHZxwCqHp1jkRMafFgMJBNxU2XaPrnQBiMNQA0GGbTwtw2zIUgKApK8RSngAskQQLyKCwym/txxCfDmCC+LCQn1C8i/5ZiWFqong2KTbPGeqip+vR4XHdj0KVYgMeRuJdD/AWuiseDx1Q3UwHQMLNglYoAV6vX266U67vP0R+5svzemnUHq57WwoRMsjFEKgiD8", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zcO8mroOfmU6jyzdnqbjJDHnA/xcpu3LJWcwla9uNn4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fgVyQTyb+H/63rQ89BSQKtIpZb2U3S5n8Xz07EjrBjL3Q2nDadzNFqqvMcirEXOS8QYuwnjspthx+zhBT/N3xSyy5XEEV84HiSu9dDP15NSWXBIKzd2kRGete2+Bdlflgk+l3neHgsFsmdb+ihK201o5BVy+8q6aNL0ROAUzgHA2MwZvVdhZyLzxWKwR5zxw6QnaYY0CDJF/dxlz5kfa2KGWvQyamw1EAU34V1qyhF1e4IjdrUgbzWXqGo5KsZQSU+XK9AYXn6pRbjxUaLBONOKeZiWr8RVpVowKUi6T7t/EXpqV9s9rX/k6WfOo60uOl6GFREXwT9l6gQq0oxewrEcIYYCsoj7wRyhbAv+IWYlnbZm+zkVAxJrslDicKdjii87mnYrf2ZXm++spIO5jkTg9YKGH6hz6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zcXd+/1koGGB3NmGxxMbvWhBD7ipa2toIBoBZm23JW0", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "TB4q7D7ZIMaifSp/IK1S6i26svtl3OZ0qttZhuwLq9YjTrS8HH7TUKmUTz912R+0IV7+8r1EXhHtY7fBwrtgc5QZjSYC0Dk1jUTUC43X5WsgDnbPosJ3DXe4KLKLhPePnMoJAplBVmvlRfHBQJEOBqDLUR4J62Sw1TDkm/gtKSoTJgQpXhDmJmtdSrcpv4Ct6mgXbzKZrB94lbIcXNvNZaOniV3amaum9VOYXL9bkypk2W59y+jLEEWhOUF+vf7Qijn3/gKZQT3g15g5HMIlzMRSD2xQTV1U8B+u2lNErrPFYAmX1fdm6gKvP7P2d2aZ40eLNY7LU7B7Bmk/O+JYxRW51ePg72peyv2rALZvLpGFyOt5uMtDZuRIaSXZrIW+L0O/0k0JWAG2LnZ5a9rVrkjsq745RwrR", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zcoi3Hcc7m9bwVbkA1wDz54p8DddRpinpOB2lWVHQmM", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "xQkJCgDrLjfyKtGOICnkbqii4kPNS4I33SJEqH5Ab4PPsMTLkxp5eiz5z4nSlGbJx2b4204baC6PjWf7Bgu8CUuIK/CRUQuu0YvuoHzF0781NKswjr+LiM1PyLvqJhnQv0n83LxjW7D7HBgsC0OuaL3XwvaCboTUA3vN2TxNQ3wvwFaKIdnxM5hCgBHzz82QQArjiLY0JwjICTF3UlfEkoClsSMCzYnQq1nEcan+UwZa/UkIOP6K6KqdGdanZ4gUpAtJnsl8L6PpOhuHva7gUgLhcmZpkAko6fA+FoY9DGKEJ6KBD6VMQeHylvyJ6fOGAglzSoqP8oaKMxRCRgNo4406CJ7er8ANqrY/CmZ0USji8vWjmacUOxo+iDGUR7CaLyDTbr9r/hPy2Dv6EpQyLNGI0KIdvR3s", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zctv+CrpdmhuThZEuSE/Ggqe7ne/LNhcCEP30XskssI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "MRHsiq4I5OJGPxB5CLpzarrHFWqY9/pmeXgameW5VNGK/MvTSZC5hzvm6w15owVK1270KpTyhqDRAVCf7vOVjFibnrauqGYGeNK9vDrng1xbgLOoAxkUUPSjSPjRz6BJONqqjh+PKngEO805JIH/ZLZyV9QDYnrXEz8MMX0mvyHza3KNULGZ0ZVN1VEbQm0g7K+Azu3ExeZgXwxugP9+0pYNYzDQuj3iU5VUiNNVugTwTxBsz3dxZPQ9A7QydEzm38WragGXKNZDbCAJe2PPniKyMJb/4/MQA1yRcaX2YS7+6+Ixm9s2/hESlUmeyHBtzEw/mrkHmN5gC0hus+Pg5t6MArL6Jwy7NXfpKLW1FGFs67CPykf3Djkrx3GWX4nzoP5wDoXwriymZf/cv4QaHeZfYOKR4Fw6", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zeOwG08tkdcIEJpAc7fW1UgLym4o/Kd22VezpoCkRlc", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "+V89j6JGXJAVP2r4tOJVYw8d7XiV9HDd4HqNtgUR3jFgzt6Q9+nr1rcOFQ1FdfyEQJWnKAW5MK6RKAE6ZKOZENJWC4cHt08YqFbRDm9HkQ+qUujcJAc7avmzae7wRZ25Nk+kos7veC/8lqgkC+Th/2O2EPS7uEfEoki9sfz2aa2/ur4nEGROrInbd9fpeXdTkYqcQU+Ec6Yku8mlzBUlydg+4DDUTIqL+hSJ/PJB+6Z//w7tPuwsc/XouSCRC3GrUs981YAd+ZySnEfpt9eEk5D3vytOxRXdnf5wJtxrDXg8OkIkH9gTKhk855EzRut8BTSSL645R2bMgf2Eknp9Q3wTUM+LMwD7L8hpAcwpsWNPLE5UWR4oq7O2pOy//SjbpsuuCY33BAdkKR1vEejn8jfkZ0JKGuwD", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zeroXFfgTSZWCSKj4rTs81G8xQ/QcwvIRFjSP+U+r0E", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "1HUQbMNmN4SQmukBQwhex24hdjzIpZ9CVXLoxEmNhHHOstptbOy3wewF4TYgjKt7e9Be1lfL9XOxADSJDrKXv+lI3xoOTfmpdZ7clo8X2MeSHg0Y4qXP0c2C4O4DaEvqOot4rVyq/ltpI6Z3RIEpSyH/YqXqQB4+wcMpmHZ2Ysp2W8/jcnSmu9guw3/QO8+8DyPVLgtdTGwj7emztFAmznuS7jJhVnQHJ66KOW60QHm07rsr8EzMqiwZMLc8rxnNRTgyMyub8wTgiqVQ0K05aboTLMt5gBYEXmBh8HIdeUajQZsv/LbO5fgP7XzTIn59WmYuZA8cRBIIwHZ+V1xC+ARxF8twmnuqDYgt16yoi7U3WxrVKvWTI1tsBdWstOxjvlIis4IGL2MS2yjzmrp4nNtbVgGx96Mr", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zeua5wxMGF/eVkOGIG9KNgAmJbj35ZBlabbuCBaHX50", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "fkxhNeowwu65G8G/uSGWWFDAQp7FOz88veQcXKcD0f5vArCEChPH191q62tdeaMTEhJYnW/YCbuha6xP8tmOOMO+2eFaVLlvVVlk5T/uGMbrCiq25Xo912lDdhaI8FW/baH2nb510PfIYCwmAwrdA0tHm8p6gLW3wj2Jz5rfzxLHmGBphZ1CbayaMECu8lJAI+dieO9B9oR26VQF7fVaTiDg9Ge2OD5iEhr/VEOVCZiPQE0fTiyuzg40QUIoydvT+ws3cWY+d1zh73lRDFQL17QKkZlCE5WLyC32TF9GDExJ/aX3TXlyj/lbNgv9/aE45oLRxxkRw/vLuG1gODSbv4BX5IHQOmps/H9NMXUMyTLGgSUQPQV3lkmn5NdnEy3VxwALiUp/Eb/SsdSvTuGD5m3crlba/MZd", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zgmJQb3rF+vZhGzeqG+a8iTU4Rmxb3bIdSKxtUuti9A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5F/t7hHJ7cORKcarNHEjnADIQUprQxqQ/CkJDN/o2KMu2wxR8EN6S14sPE9c+F3bzgq6BSnBEayQXc5HtH01J05zObTm8phnbNu0P72RWZYni72IougbTy9rs4LNuDkMjGVGpNCVVG9gVMhlX0KGuwU/nWXJd91+t1uv3MExsHHB+06uvN+prRm+rgiI9aOri61HBaMdZQf25aGah9GY4x8CnTQn/9Lmhe2Ul/cr7r/VH5bDJvu9QXmTNdjWfTPDouPiAHnkX4Tev/0LcZdUt6no3TuJD92vZVyGqu80hxDwEe2MmqRP8x788ED6HfDIaBJh7oWMVLwPq0PtzoFEvP4f05nF0eHbIy+POT9+PglZot60Bc17FhDygpNYE24vRxx6IikX+QbXMLISoSn5llb6f2E3WBIU", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "znBcXN+Nmt+DB+eZ9KNPavsIHudsX2qSiMRODb3jblk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "f04WKiOF1BZ6TSfx2g+WFC3xz9lJx+rxJyvHkOLlKn/FcbM6JX1cv2/hZPhUGbH70c//qolHD+yT3PNUGgkPmDGYAB6ARR9MlBiC1noQEwd4j0ssqg6Xmw27Qx/M1YabriT3eOhYF3VM5BahLhk6NjpKEyXc3wX4kn06rOPLwnLdtEEURExcgGTa+RZqC3yDgO05b7ece4XlSH1aupxGajrivra8wAbjSC5GNIIxL7Ow1/NruYLTcj05RwwXRw9LYWQ+mptUJq8K6btMFDXbxEv8ym5fQ0rsbAuKw7lgd6UEmGZ42gBQz3+RzDZH9J//iLjVxV+G1OQbFLNRLEtwt1ki+SlVY67By9HfERHCLmVhfQP7HlKr1pt1TeOcw0JjU551LLRFPN/wtngWxINMmgYS+pmDnWag", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zndOVdLYUX5HWH40A1XcxPU9EXGoriFeGE+urpWuzZk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "95y7idPczPibX1sgpvPjn2tlYFRX9SlzLnKDHJjDf/Ef2Zf0yjC/RKLMPhBC6kPUDpqxKYapKB0BT8uXDHoOvqVKPD7YDdiuaiyl8/L7IJb+WJ+LykbyitFV7AEUfLFhuaqgFr3Ud621a0+waNtl9y0p/klJ4fDmP6QhLGZguGcUBFIvNyA+wNYyYoBnEKBCH58IajoqgOTx+eMTb5+kulYgiFISkXI+hQOwqCEvADhAv/0tezG4Z5li6sAyfQw1AKSmNGvsgIPg4oUFHu//O/3bFXnEcl3DWw4AOIYusRcK/QB9w2mBWcbcV0j6eWvhg3iLspbQTdNPSdUSQYWJZvUTidGyoqJ5keuA0WQ5RRojnA9ttLwX+ye0DxCQfzqbwCSkSC9FlFJpMFqYWUiH1IHahfLr0EbO", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zoQ1QM9z34bWE86j285x7mqJ4y7jsk+OQuGkqHJks+4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7di4gdbetG+aAAjVp4X9h6EtnjxHAQk2xAfr7XXPokOztyRAeJCGnSYl0pwyd3Dlo06BWzap2AT13tMDLphJ6TzIEaXqKgGY4hwhWZrShsoU/TuJXID0SmovAT38jldlNTWSWi2MUxSe8iGPV4Z9+/FnSsQSC9wdddpZGB7r4h6jhuNxCtADsqEieFijzaUsKrkuH8tL0QTvX4Ws1nrFj+P6QtUL5Zs0+FgHY5ycpQe0/OKOodFAnBxfxtNZqgENKlg7xT9GVRZLdUcCD0ybRp0in6zScxCUMfUMro3atH8zoZ4RNkVdoHCoHJ+W1BjOAhMLHqeoCyLD7agUD35ibiuNy+oPNxmUc+xhpekIhNiintwdvKJUxuGCJiXJUtx5XVqyj2afpfYU2/lJ/YhUU3hsVdm8cDZw", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ztIWOGHTio3Dw78fDBxBVtIpy5UebWN2h6ESgj9UAnI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "RmrVbl7sIucVXZPWYGatLqh8Q25D2hEk9eMfGQPZwvQl/27vpQ4Q8q85yQFNPhahdbUSAg1WrlZk2DuuqpKjfRsGLfd5SZWttOXXzCAbzlVBgXMmODAyMlCK9buxIHy3YBnhxUjG2RcjgbLYjWVbA1FDHg+MmDBah2eoknJB04jerptdCsNcYgQMzNxJla9UlG1vZzsVMAFfzPKL7fUqu4m6avmrZkUR9lRWQwBoIdUlh9PjCrl3RL41MRKc/LEDgGfHURYvbFGz1kfPEgxrGGCg4sFG9BvC3wxnom+OAHV1CxsRPUWENBVEJzEpi2W30FAPeED6GRE8kPLSGSVXMdnmsXy0yw8GTzhn9rOLkQwjrtn51jmW+65bpv/5f06dCN5V6Bpm8JNPP8vEiQtgGBlOneGAoN4e", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ztQKxf47zTlqlwyqiyA4OErk/Lp9e+Zjt7zqpY7YxnE", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "aeHZ1FzVjopRH+VN3wJM31eNCqMBfnRmhCIqzQP25E7kHvLUlmwI4q3zoNXtFLd3XvO40DrqNdF3jsyrpbM27XLx1Qzz8kCcS/WoTtXlAXXF3BtM+lDgWcGlrJwFl6fk6wJ7DR0CnLFiaa4TVVsGNDWQO4ipnBwbzHo/slxBhqLS4LleBwOk7QM+fqn7MdxcPlzZjpzyhIVKN4yZ9WELO+zZ5s7rCy+k7OWsxQF2bba4oGxLujqyjRTVlI7qznLFXqdXLyrP5Ein0skvUrqBhspVEG3a/LF01x8QFOu1vYrJiTsxQi1r8OBCnOULAPxLkDqfEuupsfgfaHT9UYerVgYdTHbeFDwU8oLwnZvFU0p9qlUMgSZYKdQR/5TZw+tdcmFH+M8vkqKzh+AGxeBqpFDb+qMJ5d6S", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "ztUA95PMGAas3dW0X6D1a/mHZyzZxFkh4AY5oF5ua1A", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "7VsmcTzwPjm9hcSXE0i9ew6GyKDRcNypt5pW3ExxsOrXgpDh5NKmI7/6cwM+ltgXDsJJ7797orc/1IgvIkVhxOYheQNeR3RZrsDek4cvtqLgz0o7XfJEP2l1Go8aRirMIoVzm3bulMuQnJ/iWqTNQzxecgzqq6Dyb0jxO5wzu1gI8NTKwKo4oXAIW91J/9HDD3hGbYHu9ZlKF7nT4oMLtJIHC2kKNu4XbnfD5UsPf6r+YxrASNefhrgqVRiBH4A3LbqhmZLIV49CQY+m3okGWSfV4Rbh3ZthUPk9lPFfOekbH9fpr5ALJ6zUMKT01Y6SrheqtYnccpTMqxZ0L+RANIRxUssKnSqFdStVmzuikYeK/aY24QD33T2X3rXrOQ0MtNMk7eiYTm+Nu6n95aLSXVrTF68KR9MI", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zw3NDARkmQ0hNZz7bdzdffozs9pM2fcWqieb+oA0O+Q", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "A8u7Fp/2Wji50sdDRIaPs6fvju95xTOI3r2JHmvSvu088nujFuXWBR+glQv3dcQO+LHNwt4OOZwXEJvK3eeNq3UW95bM0yNUrtUWHeC1aS0NQBIfTGbb8G1qsr/+WGTeD8ir9s1pRuuzoqW+d9gzSGpSbSvY//kMbo9j0F9luJP+58li3o8ms7+1CAuDxT1AV/zNIcUffxHGegdd8zslMTwMwnjGO/fFj/8tIsPGHj8hhWCiLA/IKu18QsMDTrvmMVuIijodrBux5AJoRjnaJ1uByCnSrSaIMy5Tf9UnAdXo0XFwuLkrBujFOLJYTebhs7JZqzhYgiD1xPp/nr09P80khWHDMt2+Haa/9W2jayrPP2klSPhx7hGlLTc/aaKWnbdD+ukXd6rL+5fSEL0ZdeuRabjW2Wut", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zwLtSTM3GscgHN5+M8/LI1ottLHu2FonYVSC+rQwWeY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "CrUvVIy63kVwlyeNbGkZ8KhNKEdScLDXSbDjs0sjj3LXju7SHKYHPcs/KiCzfJQjGlIhDyIz6uJUAXd2oKGb0BBstQ7h0Y9J5CVH5KtrqzfUDPlyt1SscLEswHdvZz3sTuCuma3FuDsyvCw5HkxwWo7zpn+tTDgH4svavSR75ky/zuYNUIEO4DJJgaAXtPNodRgGfLlVafLv4si4CgVlek+25HMnmu8zOmfqSsFXzGvAs+Q6sW/K2jd7AXqo9huzbFqJ+2soU8Mxk2Yvv61M2C0lgUrvN2cCARJOMoxRLdofWNj1mXJtLrwF4T2AL0J/R8NUMCgFsgxiChEZIYwevfQ+C85BV2S58ZfZBXd1H0wG1nR0qVVBX3gD+C2n53gxw/jUqturLxMS7mo+szFSMBdYBOYUktVx", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zwf/e2PIu+CItrPEV3RUnZZc7I1JS8LmXbXqfkH4fe4", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "sMamnz5ST4ph6z+KxRTOvLW/aJQVVPO92I+zqXlBziK/oZcqAEMZGxtGMftG5Y6VHOS5vQZXaao+eGmDzomhnyXv6Bps9tFwoHrIPd1cprfxG5xH4Ww2TTkUUeJKOjrEarr3RFRDlnVDmqPoXMq7HMTDy9O1TvSn9uug0o84ylMv66lr2Lwk4ns1TMVBw/scOBIPxQMoCQjAwLgX0XoTZcizZ80pXP+5TfnuTz+nia3V4A4nYRzwLXT5AQi4YhsLn7GLHma8J5np54XvLFRAsgnBb8rxqX78dWlyW31x1vGq2VFnPNqhW/qI7TMOYf1M113k13ki+SEEhh0z2///7pC0r2UgA8Ia1X5DpUM/33QWUshgIO90mvjoXKGRgqXR+rdxlFHbnSgIMbPRnVLsjjq/kO+e4NC5", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zwkQUEXjoPAkpxhCqXj5RE1Vxa4PphJM/5Dq4WST8FI", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "/GhqsQ3WrdAjczQ3JMgqlxnWzhIZQWYSjQJWHidAc01I10GyXfQsPI5aS5UDwanfvExxY62lIAhlsH9CFnox39FF/Mj2CCz/+56ujFxjxa5fBqxveb/cSw5RuFpr6CWEbnhjbLXKSD/oCwJjSwuaJJ1dHEC4KbuyzDi3u2uvAr2TM43sH7JgMyDD1xwetNz1V76o0twYA9uY/hLyiqGAt2T2E8wWIpsAXSsFQKSHNXlhaDYW/bJFpk8Wa8jmY91A3G8VVWiKQ2sCYDEDFeIlXQ3s4xWAhXuKhBdJlt498l5U6Rc0K0fy+xXDBoTMtqe/Wx91S/GfKskrmdL0aTwR5LKWCdF/W642PCLS/WtE4E7UeuOI0QIwIuJtH4AyTIa/avynzQrs9S+w1Vfd2GnzVFaJ1VSFfinA", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zx4M2uUkJBtp37JzA8c5mNuWw1U2ri5JlrfqopwoghY", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "5oR0iTWJgeOoCrrF/t79Tpn7SFXDtsHdrm/ddmyqbCd9OSfaRUyIzbCU/m4cu4tbdJnuxlG9hHN8CoPwuDUWTbfQoQzwu/QkDDvCGXGGXvJZoSXX7rZJX3hDo9LMET0dLSWFq8E2o928KI5nIsdyqoaPVeQ8PPqCs10upADHMICF/LzHihLZWPmkiwXivWV42KQA05C2wiRRG2yIQewflzZau6sMe1Rxmnw7d84hHcDOqENlKo30fSi4KjSd70qjlW1WiceHOrZXwd2FTn9PuOEORsqcRSnadbzV5VSEVivRQP7WrscWytNx7MW96jDa0/TqDhfsy/a0Wj8wVWCD35aqkPh9Lv328hBCO6m4lU5S36WtlwI1u/lpUq4IPdGL0UXjBzzu0hbYTc+/wsVHh9xM5zVKcGOC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zy9dJg3469LEKY2r3gnP03SG6wZ00I0scgin60KxOXk", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "ulUTRhAK8ZSoE3mnIcrBHxFxC1kCpaqIOAYNVrJPTY4winTPPeEy11vsU16Gi2w49bStxjwGB4R6Jb0ay0XQGjh2WhRjhba2knT3evBIFNmAs9MwzqM+OEIS3MwdccrPqqs/OpHYDCUcK/5O3gUSzz/KLjWtGGXaYviqBm+R6LnvcakM9pzFnnVYJlj5DH8SmCceJOlQ8yFxzppPBdv8v7UyS8BAnfZTQHNd0/MBtcUbNpQknVuPbqMLP7+2DD/2dkebdrhMIrs0CBC81LzcXoYStIjAc7NOZSFJhZyN8LbGe+MFa7QbVTSve0vBzGgDtY9V2Ta8QX8ebTFVmz6CgYwduUBdmVdFfggcw2nJ9YZCrQjvRggz23hip9c+8iBmkwRSByvUvQwOc0kU6tJnrrF8d+U695qC", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zzNrL3wuZMBfztv9+/9xsfBScYGcBXvmqIcYhl0PQ9s", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "pZdINQTy9bIznAr465cSYDZ0Smew3vKcCb6vLJqCmzO5egw8G7FrdYETeuqRR4L77raM0vyh4zs3X8V5/Y59eid6mDwpFzdES/68yceK2tkECPQPIJasj8L1arFY6TuWDeo2xAm1odWy94bh6Lv8oQwvDuYB4FUGzT/5RiqphvHNud2HV7Tba3zv6okdMfJRN/yHHlxB8Os4WHTAgRju/KUoQRlzzruubCM/aonoM9d88j4/6Z6koZ5NAtlnjPo+BY5oRoQPmxzx7kR6JZu5RBcF+rcFvJYp1NvWaDb1VA4nCUkoSjN84VD3feqS6gp6A+QUrfNssBAPKM5g06ui6VqBb/IndZjiI2mSkCs1uAj3jHxjke8Yu1z3oHXjhOiC3jNqAf9MWeD3xjFQbmp6Qo0jfUNoEmG7", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "zzd/Zmto4FTMwjX62UzW4r+yEBci+dkJ5NusOVnr7Lo", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "tskiBwVTM1SQNogHS0dDC0AwMRpz2RVg25VafA1/n4pDnikMRlfufTE/c1JFy1fVKD6sCpUakP+tFlGbeqVq0WAnCj059bfpj/BP/f1J8HF629ATZYxWV3PYscnUM31zfqgzH6cWhypYj7Ld9mV59Eoeyr8NlDExdbFlVCoXvLMyOJ/6nxvAjtbJU9ugiQpcOnDa67dlutr+CSCsernP/dkLGxaNE7ltoedA7k0Vt7RVH1GfGyUJhjAdyriu5nWqmQVg/aPS/1v0ABMj8E8ayEerUPvZ7PC5CoXlp3y4YUiMhTJP321RgQpbdaK4ZfPWa29zUYad/j46HWnaCyTs5TT334NXx0tqcj32GJBPAV1A6yg9VEfcZXBnK/ywWwMDGpSmj4a2IADaa2vfOHrdkaXzoe1sTkpK", + "keysClaimed": { + "ed25519": "cN1XwhpyE5f9NDpDjZZ77mSLjGARCLPt2j9i05+8X08" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "BRje0HJXy/o6LLFW6ZxgSJYnOOZLgXsxMoa9+rh9wDI", + "sessionId": "KwfNdf040zawmijxACEaLyXbwDwbiElJeF7TcheLoPY", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "GZNx7qTBgL4LXck0EaFa3TR+UYIsEJQ3R0uV830kn8pWoaOkrC3z4EMxT+7eKT80fVklvMh3TdRzcAlOvKkbtEYSnjIzjErUGCusPHJr2lRjy/h19BXkJbkK1MhH5eDrrlXAzNk3bOisIg8rE94fIoTlOM9XfWRgUv8XmvWS3hWQMru/AcnbjXr1aarpk78Fumt1/QikVGxMH9r4Ra0nnvUSpiNDBi3kagNklNmUfryQHGhtB11KAjOL8HbnLPdrFsKDOvXcJr5PXSxyakQ/6FckimJDzd2RsRvQBGCNde4UN89aHimF74KoZ6jJxtJffpHNULTrFnheF29w/YM2EJxEeFWOyXk/HaJrgjjs9AICcxWlmyOo2pN9ci1E5vtzXZtCAUOXhkv3sFlQVOiXmOQdnuUnOW7r", + "keysClaimed": { + "ed25519": "DzuiReAXp2QGkfIPqvGd6cQ9lyjvjkg8u1cfBSELz+0" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "BRje0HJXy/o6LLFW6ZxgSJYnOOZLgXsxMoa9+rh9wDI", + "sessionId": "nmZe047TUv3L6ce+1FsLIDq6DxJUX0eSH/OEqU7bdsg", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "QmUC9OMjOaTVoMYsZ6erlg64GKt/6q4sq3oo0PX29k6TIIVyVpRSn/+f/lqi/+jLh/5N17xuNJcEBy+EM2/cqh+zVseiI+wpzA/EYtOaPGkrzqXOqbBVVXg9b5NdqOQqO8j/Mvhf0FlyklHWpx4EU56QOOxHH1YF3P7QX+7NI/DaroFdBY7ptn0BaL9ocjdcZoNtVLUdJJnQibGeW99orBjEdFLg58LfKZAM64lvNRkvvi777quz+JxKGvSPTa0KwS2zYlAxCCPWj33fKN34gtprOYVWC3uEkYPE6NMEnnt8LPXcKIJRLefquFNfs7Rxboox/MoYHvaej/axaRXfXcNL0nM+we1h5AVz5jWja3f60F8udU1uJ4Fi9byAlKL48cuvn3oHmJyWq0GyegxuBOIAuhmRBuT/", + "keysClaimed": { + "ed25519": "DzuiReAXp2QGkfIPqvGd6cQ9lyjvjkg8u1cfBSELz+0" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ICXPtcBcycUazdhM0BM7VmcbInN9Te7dashv8id5nVI", + "sessionId": "FaUOxIUhj9BLw7GgJxAShVnKxS6/V7kmty1APIhKPrw", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "mQ6sb4IkC3gwG5F3fwusJJQqSXztCUrRQADifUSCndwixvx9DIpwcUXfVJIBVcGhS3vbKRI6IO9MxiVAgEG5OHNLzpBChhGAnsS5Ff6ARbWKP8bQfcHJreUHGkEmKk+b12H5dxm2CMIFgierBN8R1cT0M6DYGkTcA/Ja4775iPIyF3oxXA/Ctwigi1d21l7j9q06G6hnhRpwBMqZ83Wbc8XKgbYvltg94qX0ks/eSPF6wRi1/wcwd13i+qR+/mRYVD1/k+yEmODM0Pponu5P6iaVosKggd3+Smo9DClJLF3HadUlA3g0x3CwKv7/gCwFhYkFbGo5zqY+pOLA0Lxpr0jzYvhE/sEfhdHSFdNpmS4BqF33tTBSwuoA5zzkOVKKNV3V3VgeeLVaqzVqU7RzcgX2fcNsWoMS", + "keysClaimed": { + "ed25519": "x8bwWPIPArbTRKmGXf6r8wfzaxnJ63foaglgazbZojA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ICXPtcBcycUazdhM0BM7VmcbInN9Te7dashv8id5nVI", + "sessionId": "KR+RdxNLI7QqSX9xANiaoOVe7KTHvCKS6mWOCk/FMPs", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "BzQS1H2wILq9pVEMGMAyJeV5gsTPgWkOn9YHumCkK5wxMzSfpJ2m0zSfL4WF8p8iuYQZaOUefiWUnIXUK7PYz3pMnbfkXAFZ/7b5cq4inHZDzh1IgAGxNUahXfm8MJkCgLnIEQq+wTLxm6GdpzJxSlwwNSP5hf5gCF7GlRKt5m4jzpBfnE4CzPpyAZq4PxGHHk4zk9S1MVzLFBJBCqHlLIdmdlrDdeX8CeFAcv2S6rof2PUP9H/Dj6UiIXGyVy+9zC+LgVBNIB/02rA0vJgME4gQpK49p3UgQeEf0TnuNXsJiVhkzoCBKUu5rH9kv811lZbdkuErKJweiDupMrYN/S+uSXOv0dHfIBrjYsDYZrFDzJ4GXMqv8Zy5QoVM40zIGLddqus0vpTUNokLfzf6EqrYqIGGSm7d", + "keysClaimed": { + "ed25519": "x8bwWPIPArbTRKmGXf6r8wfzaxnJ63foaglgazbZojA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "K6pUAb6OgssyGzLqYcZQlskIxdwNTZu0xkb1lp2ysQA", + "sessionId": "TqxaEJSIHu/GJsL9cdPomIYZkzrO3UqO/e0H/N9b3Q8", + "session": { + "sharedHistory": true, + "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", + "session": "yaMXAeAihvduMpjhvsZBy37hFE7QF4vwAW91J8iy8YI/Icf/sXhQAsKcgaLnSjkJcRF6qrHi/jOfp8/8wuRFirkR96GKDNlcCU5UXePJAIhdacYkLvK8UNQXa4pUZSZHYm1zT4z18oS1JHhmo+z7NPyZDTKrod+BUrHAdujdyTYrvgNOT5Vs01EMJOhTop7xohuCpZqp9HAaetXpwxJmqgMVdFJJ4fKcX6bAK8/T1HZ72To+NpG3ADL59F7WF44h72WdX7TzM6RBvOQg7NlBJCX3QPBmSDTm6PMjzUIHlQedeAs6rc8xTz/B6ECISaNTcXwXdHazBZYd9bQMKOyDImiOof5ShiH0PBy5pO/PVj3IhcmdZtTzT45n4FkdV7Q+Kfo3beB5wJvUsv0zl3hWEN4G03cdF0X7", + "keysClaimed": { + "ed25519": "zXXpRQLyQ3rm17A/XGthYo3zvIpiBpJLNVEJG7l13bk" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "Kb+P4tSZMhmd9Ms7N0aKSBWvRvBQrEuoYmpsFsEkjRM", + "sessionId": "XpBEx6bpDo/IApJgDz5JCYzGV4Xrc9Q2O7+CIG+yXEs", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "Ja2satXk2GWXgWyPCAUux/bNZWE11PfuTbFr0rjsiAXmTQfVdb2xtGS6Y88nq+PCQOZinuLCXMOx8G7HBub+TQTdfv5jPQXg4c41CDrgX+7EMJbCNtumL3M7H1KPrWAxFsR34OJ4zPJhnWvUTdC39oQfXnJdkrOO7YpeHUKalaTEeCExCIkr/znr5Ru5qsxU9X4szwaZ/AgrT1bUEGQyVXcgzDXj1GrZPI24Jv4AOPUqX0hHRcxwBlF5XD/vZ/3D0vm0Gmc9zVl/tRpMj72pZ3EWD3pEx3LFYspldtCfk2lVKxjwDL+2JCJAJADwOCMDkJjWNtI08B36GUeiA1ha3/gsbKBOP7LgNn0EjGwQqLceovJcNCCRAk/MWkg5qWy72d2pps8PcLhF+cZuR+XHkdT0u1caNZ3m", + "keysClaimed": { + "ed25519": "AUv1hm03/OIT5v2SF4602W+M47tmNoV3fHG2HCBFBig" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "Kb+P4tSZMhmd9Ms7N0aKSBWvRvBQrEuoYmpsFsEkjRM", + "sessionId": "i+CmvoeTaY7+XYmbXiLPNwsGGWlkaMYoe1aSBwvL9CM", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "xNjmYlDiAE2aS164OEk/8cYLnWtJeJ8f0o3/SM3RyVIGfVkQqjNnq57TsThU+0tTh5w5Nk1XddE7ExD2m/CrpX5JmXIEHyzwMlMmLNT44Hos56aM+VH5MEkx0AGP0UKwO/L6pCjq2V1dF5OIP3YsnGxt4DqsfieAVtdYtLYI1elhdx7UfyiKwoWsFRvXnkEcYDezuojQr+mjjbbBjLUiTLEPDkZvEIpxW18kVEeKO+X9oww5lZJFahR3wRcZUUyfCeJOEILuZm45Yo5F5xZvHHCdSV64OTZS+j1NRcUx0Ow3BcpBgjTroruFdsgNpgBAVFg2wkz8wTmmmXXYqKMB6maWAeOfUTqb+Mc/POnEyEdbta7XrPsBtAdJ/4Lie7LubrfTmgleyOYtAvLVBtfg+Tl/yeFtRoLt", + "keysClaimed": { + "ed25519": "AUv1hm03/OIT5v2SF4602W+M47tmNoV3fHG2HCBFBig" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "KgTYJ86haurjTf1uKseV+HIxQBJvbyyrS1BMUv6dpyU", + "sessionId": "RM9OXT8/sv6n2VBSIcUxyNHOtADhQS31/K/+QI0Iji0", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "y5KWExBfay4wAjaAlBFnVny4qoHqb8G5ized+eL9VTyd7u1R5objAnG1iLOmC6xacO4cKsTHx6k1OkBIb5K8c4cqrWYY+TkzpvYdOiMJQvH3jM0lvpcwZ1umLeWj9LsygDIumOyYSRdoWapx83YTIwNXbIr5txSre1CeMhN7nKTLM3MFgmXYzWg0jRg5UyA/1uzUPjz8D6xoCUsuTU5tV77XUOyQww/mZHsu92aLAj7Q+KZ2+lVukj13PiGu3KoCSJRbKCOIQoKB0Ij87V1q7XYjYuaCTb0mUmx9WEybFW9uxWJarMFCitWj9cbtyVd2MBYFH1WbWTCMMT6jOcgTdYUTwh3IZP991PZPPvwvCh6p+jRz2pyUogWjPsF9dKE+r616QOxbJuER8HU1AB0grndgnS7TTvkw", + "keysClaimed": { + "ed25519": "VYE3Mxz10Gdwc7q0avPklfYxkntP3syolJL7YGZ70Ks" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "KgTYJ86haurjTf1uKseV+HIxQBJvbyyrS1BMUv6dpyU", + "sessionId": "gzMO/oocwh6jrAS+JNUbkaGzPi7rJTwlDLKGT00FOrg", + "session": { + "room_id": "!gTsdSPqtENAVbnchjE:matrix.org", + "session": "Tr/nJzMt2qg5Jxvz3n4CQmd/JD513r6mb/vkFF3TM3sozmvoD6IuEkpVoA/mtWergIsYsD6qiugn9kUKtf7LsWHG1ZvkoQZUCy/1liubEPmBzmCPNsfsjtyD4vOkmlxFhI/MmXZ59yAif4kqD+sXuW75QFb/eZ9eKfCF+p9P4RelAELwfeJ/VYXTR2w5M6I6VB+5OPEdh5eQq4LBID7oIFlaLWGaq3gZPIaxxM0xCDp9/r/sPsseDvnOftJWaJjb1mf6StWMyodR6Eep0G6mAOITMMPQLgRmuSgX44xWb5MeIW/uA8NzcQYSvVYx3m5Hbk+HrzLM1+KrCnCjcXIBF+5IQ3oJw7P2BdPPutmqb94U+ygt7Ofcw/ecpBgRAojPhPA1hP8F7OIAOpDEaQ27Xlds8eCGKj6n", + "keysClaimed": { + "ed25519": "VYE3Mxz10Gdwc7q0avPklfYxkntP3syolJL7YGZ70Ks" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "KgTYJ86haurjTf1uKseV+HIxQBJvbyyrS1BMUv6dpyU", + "sessionId": "sGUSOKA8RkJeoxhhsqvlZ6Uzj8gqkdARBmzbdpzC9vU", + "session": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "O/Jl0hzkQQVivwZnBhCjRAynePr/Rgf0+Yfa3fe1h1N2xEed6WGteBqp90QqguutflU+9hqxm+X4CRnBTY+56BvkXMTz0Vpb3alSDYaPA9ec5jGrKJKzRycuilMy34atQ8MDL9Or2KKGgMwkwi0QXX7nXnQxiquGIqtRe4ebJIpDp43/TJOnyh0wSdp+ZmtRj+2XBx6b3pjMcJ87jW4zSKNTnjQEUZNz7pEMYw3hL+7s4XKmgZS4sXiAkr798C/G7pwOMGLBlu7dW9/jjcRIRUUDiXfQqwWI5yOFzzCmEAUHCZBznImcQWRR80TofuGDieC5xqlDJoVIPzdJhwdU2sa/RFXQvZxtGm4rBQDNYBSLPYjX4OYozAieCFoStpHGyosCXdohHe50Qp7XGUO9nfgjcxvBPc4Q", + "keysClaimed": { + "ed25519": "VYE3Mxz10Gdwc7q0avPklfYxkntP3syolJL7YGZ70Ks" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "KgTYJ86haurjTf1uKseV+HIxQBJvbyyrS1BMUv6dpyU", + "sessionId": "xFvK1ieMwf9MzqlZbQivrQNGUL5dmWo1fWZZgEEL4q0", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "DCV8G7L+N5pmdId7lpe+SYfANKlxENOVfe9XvLsNkM41aioqVCD2RbX1WOI6rnSIzLXkLX13eaK3xqcal42YiedU50lcBdqxHx/s3AAa1x44C2R9doU1bsLxsDLg6yHSARRyC+0t0x05j4G1E3uITHxoJGNj3ATCeEHM8PDrspmksiRMc2VyQl5cIfh28R/qSOyR6sPEaa4T8kV5qm4V/Anlf7/ZQkYKctGPM7D71md2rD1OpsGlDv2zkpBZpma12/yeiSJ3Q6veLUaw9tlPmHgdYNEMVnVPjt/GqOhIbgRVPbVfgy7bXr3GIRla521J+xEeAb/Yb5gjWUe3cNZsI1Wy6oHVksfSREG42DBPspflNFGRmOCcUVaZWy16CAbsodLJfDBBJiJmXJfpU7Gwgy7GPv+b9Ttm", + "keysClaimed": { + "ed25519": "VYE3Mxz10Gdwc7q0avPklfYxkntP3syolJL7YGZ70Ks" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "Ks7CRbiszRE6r1qParXb921kuyb7rXgsofAzdERquzU", + "sessionId": "LbSd7Y14GjMYRH+2KgwAs4KBsT2XaLpZL6gq5KZp684", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "Z3jKDglt6dAEZo/7F3YSSaMkPy5N3nd353Cf025r8R7zuDl87m6TE6qgxegcwZ7LO64H/LYISkcaHW522ecHcARu//3Y6aHH1plnxL00uFbck2tOymtfEzs1WnBWAXqeiYo381renJARNPi6PrPfHdB7xBZBdazYOkJhLhZB0VdOEpl2KMVMBfPhEos04s1cVKTpPhlnRNwGkc7I6hFem1NQOjZ1UmXVRAw+tHCCyA8qIRXzyjuIQIqnZHGZcHW3G1HRUykAy3k+R6+BLQwP8ZkBCu20sGPz9Ag9CcyV+pqQTc5OacTKRm8Xok9oZjg4Vzj6JlAJwUQGQ2R213LP2gbvkPv0OhnBo9NuTWHFsbH/7eW3smy+OWUpOIQbSGDYoyE2DilppDP7EUF1D9zDhm/TAtE2O/bW", + "keysClaimed": { + "ed25519": "OjzNRhpSGZKw/Qp2/ao3PzHdt6ZhNI8o5Y2SyrQ6idc" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "P+hMAaz3lio3uS4rv/7TfA+DPUVgxzkwoEz9Z9Ojzj4", + "sessionId": "8krOIN5Yj3SN4uy4FiPL0dq9uJrixFCE1jbLN+a5Fyg", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "ViQQRbysPTZsfVmLG2dYcQuAucu+LOWW/rlCoJeW4nPc+SbNr0HSHh5jc2V6psGXlU+Siqf/YlYpjzh4UoL5JqI9wSj9yHEIQ0Xf0AI02k96i2wPHG7cTYvVk4IbJUTH0QDLCNNXsi+4jn41Y5lyOq0o7f/OWVy4Bi6qOzJoQwflQvo7mwpnSzIQGsDJHVP/sVEKTQ7unLRDoQmGgXNCccuQ7VmcAWIywl+yjV6vRe9GKCwiNFzahS+OqjOpCsLE67449X9e16bvEdhJ3eBQUrE4sfe2GBjVTTrWv1qzevgMSwZqaumafv3e4xd7xC+otjMlIsoIDwXdWldBp3TP7rIm+RyjZDXODmJ+hTtwrTAytMpAnqUJcGeEt425rDf0LQAZOrw/IpVp5Q/WcTky7LJ37hPugwYe", + "keysClaimed": { + "ed25519": "6+9jhcSgseAmMbqRvbkkkRaRtSqXqKHHXS8fMw5R4sU" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "Pi9DRxi10cl7wyDpOJ03iYhpDuH828/O8yrYErbPW14", + "sessionId": "sUDST5s07c6ldpIqQX/TbvQ03146R1+3AYk2V8mAvwM", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "uPW5PDbHxV89N8VUomGN08Qu8XrqluOb8/P15IBACAxiUvFq0b6Yzk3K7jFaZVs5Bh6yrttukFzuH0aobANLvJfiyLkD3rUYEcOicNIqrTb9Lfy65h2gEW5VwxKlyjghNTetyPO7kxskTsFx0vuzaihmSur8K9YmXFAyMDtjMtG11n2Zv9jnFhP4i9dfN/F2sGAG7zCxHjmCscEpVqvmewy615WrlBsSpGZT1ln3k2qwR/1Hr1NBQdJDPb1fj3dIKFMhE3+sPPshiG+TqQ3oS1PzmXsJRuqzKLfKAKJl74LWpOaN4b73LzZul2Q9fx9GlgB8R2mGkibh8QPQH98rgc1TDkZOMMnhfoh7b+ueTiHWSmFrF3g0p5YiZ2QaVa8tgpAI+Jp52QYEwjWLoGUZGdY0sDM4tSY1", + "keysClaimed": { + "ed25519": "oweHPeUqqcnMR5UsMKj2kThmt+cB8861ViMy8pB8oZw" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "Pog36kjaHKsGaXJP4IRSCOGco1WHId4xBLKUqzVMVi8", + "sessionId": "2KOzDSzwYFY1LRbzqPPAHKwFUgXe5hoCxHSvsXUwnZ8", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "D92Czu3XnsGhdTNXHT+XFt3DiU+xXwQYOf5YIzxfnUKif4V7NN/fBHCtEEX0HxfpJ9AevzQycFuVhkeBmze+8Ef8ZWYg2PoDkqQyjtdoiCnfzL7uaCBkE5L7F9jUaWgHIV9PNtj4llHqkiV17f7R4jp1CPUPsJ4JqGuK9kng+ZYPmYV6CpVD/xRjlK8JLoZ2l9b+SGYkz9gcJwuLYwkvZAPlJPo4/SDj0h9CEnlmrsnX4oBjrJvuy7DRgc3t63JgdzB013zDKrYfCJmqhG+k2S/rqGr+8JLeyEKnexuz6sTwrba3a+pQCehm08KsMxBaVL1rf7XACDzlJtm++5WWJG6W8FVKenRoJTFn5TOzFXVI1e0NXVYgbX8beQAuJXZ+b5ix6Dky2m/9x0HUNy4t8K84T+AOdqdG", + "keysClaimed": { + "ed25519": "R4FeYr1jNYn2w64HDnZ6a3FoaHy2Cgl69yi12Xhxi/M" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "RhqbMrR2qmjyDPGh42dsZCenEHZXQdGjeHZXO8kHc1E", + "sessionId": "VrlN7nfo7xi/tReWE89ZarEUt04aEeHuZonIP03gyus", + "session": { + "sharedHistory": true, + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "zRIsSvfbxmpJ2FUpS2BiJMWFEU+6m0RXUN+RW235MBTs7hzYnylepItdInBLNPW0hdzMfQ4Ap0anwaISkji95XBJZWu6Tt7qm8e4U2mCU1tc6xuo5U2bpjmKZ/ZBQTBHa0lFWDEik0S1lyhVhEZlLi1TKAPApCzAdTLyUbnEd9+7KfpQiBjbh5YcARuUYX5H+rjY+0X1vFSs6YVSOzPxGA2BPIJz3j+3zoIz1R21aWSk4l0w7H0Usuukz1oY85Fgy0Gm+rsigGMkKScZpEwssdgh4ZuWYfCbRHFjm8/IxNbF3PqeKJzTQyFYMs3JjjtyhcJag4KK7+LiS60tImjtuP7qWv8XWeD6lyYi6OZ2qzQ8S687T/kP5F4XuwcSabg/iAATYHpOZxcgG3AmRiZkKiBuLRangU4x", + "keysClaimed": { + "ed25519": "Oh2/2fIdVloUUV3gYMP1RdXziWuqXuvK+5ZaoeCb2pQ" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "SKowG52ZsxqztGJts32ulwwQB5+lC0FU2RsPRX0RUj0", + "sessionId": "ZmOmYaTkWIq7JOWgVERA1x4nvX6SpgXbKECm7gK8ceY", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "feUC7yVOCGhLES1SXLDJhVPxNKITPFiC4BI1CumGn0MYcaaH7EZX1qMzlSgafDxOwyDNQcIN///CSXFUi0iqlk/pY2FABpUUqCj1qsQiAFgfcNv2oek6EadUxE1hRNCt56k54Ppx13fdGs12iPI/6yOiaotEIfeX5lP5zM17/he/vH4tppqsgZyptfU49NpoRuCjqbnb9a2+0T/emrQ/e5Y70UsYlM6DvzfuVuvptuOo6GBMP2KtL7DQmSLvt6zO5z5EaIsuSlspEgDW7QYuU8LVNtNmgGzU96FAJcPoBCixmiXjSjUmuXvx0FbqH93n02bKJ2SwKObFYoF4w9A1SnJw1vF980jg4CUUGJ7sAJfC1d28dd3wr9rJK+hVRa7KDMMvoHxzZAR0tPo70AmGP2Ds7EviFJRb", + "keysClaimed": { + "ed25519": "lp8hKwsJAfJcd80CpcQBbAP21z7OnfwgeWeSyRUiPDU" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "SKowG52ZsxqztGJts32ulwwQB5+lC0FU2RsPRX0RUj0", + "sessionId": "h9VjeuxpeB/O1oFMsOpfOSXbJXoBiBrTBaBuoumwhVc", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "TbUMnqJl/4s9dPH7hVNnR/ZTWkBGBfcHHbUbOvKmtB4PVdSzOqFmWZP63NtCFe6d0ZLxfWJIX/BzAPXDR7DTWIHhQ+iHcYiszJRtkfrmvmdFGc2bFsKNbxFQ0OnJyBqco/IzCWdlqvGCU+acckboXS9P3N9R5sbhU+RZ1EBZGp9AVoMtjcJIQ+zyMYChaXKPc1DcVpefhbshgXKFCCJd6u45SIvPFW/H7ZoMhA59Y3Fxwuv1GAUBpayI0WT2HQsEwZKb64VNvLDrD5wa65FvoLIePoGYiKAMiTUubk/caVtjOyNqO9Wta/5KiKphRcX4p8gtWvezDwKdQJpkpOfjKSw5xwP2eZy5jSoOKuPtSkWMRe1fY4pbTgZ3p5K91xuECFKY8RnSWk2kIe0kF1FPx88kNBD8FcNq", + "keysClaimed": { + "ed25519": "lp8hKwsJAfJcd80CpcQBbAP21z7OnfwgeWeSyRUiPDU" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "WAkJI6B+oYDZmhCOdiQAH2xUOJZFesDuNskPRt+ZHnY", + "sessionId": "BUtaoXhtoGX19x0xX3uXALKDv1A7AwoxIso7JW8WLkg", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "h5kR9HiEgFadLp1M8dmkrf2k1pPwMgUKCLH1pEemc3ePPaN6gOkgdk20cGpJVqoZSbMsB04rM3IoR0GLD2Q19q1z66m6Csh5tgRtXj7Ef+2J3EuycL85kRMVQCU28pgqO2UpDHFgZKzVb8M/XSG2uWQrytYlCNqxlRu6nW7iNXB2/nghp1NblD2qUfAQN2xwqBHArD8dZyb6F9gpAz6unrs18xavlT8z8s0L4oO8UHEhcZFiH7Mk+q9VOvVzvqREdtq+hIhOEnSZneE3HAvjAh3Il1ePSzNWlLJcBQiXSX8tKoZiATNL+f5ylWlffezcqh7N1qpUwjqJGYrum4teU6m7z53K9yEmvd8cVX1lztfohOCLPURvVc+cJ9y91Sux9KCIQOoI3KKlAdY/a1mstIr62cxWA/QX", + "keysClaimed": { + "ed25519": "tA5l8PGDGXz2I63BKd5KikXpGttLc7jTkHFm2RjDMvg" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "WAkJI6B+oYDZmhCOdiQAH2xUOJZFesDuNskPRt+ZHnY", + "sessionId": "oB9zC8I/b6I9i10GrUOQVp4N1t05FNr4dmSkrEs9Ldg", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "bfoIOBZL0006HXy54ik520Ntrd+4phbVfCztiV0r51Ywn9KSwHZxGll1xwkAwRrVbNF1ufjc/zuxa8yn4hl13G42N/sBYTRt0JtwMUnIlExcg/2FH4RTnfV5q7rnHL3n121Fd+bhhT0xJjZSWNNvSkElkp5XwQVg4H6vf9RKAoBmSagRvcakANEak5tJQzw6br5kRMHe8kOBRfYHmfaWUx4PFUuw972s5cqvLK9HEKBZ2qGtdCxU8eN9Rdeotpk46dJZ/NokCEJrvzQgiGxVl36forKAcCyTek3iIkAI00G+38A10w+V2zzBRxuRO5LvHe28KJJ4P62R8CPfIOGDbVT5g8u1cA+t+nDt4+g1I8Xf/oufZbvMpa5kHeMSvoSGIsAxUHCgu0tjdWyvYJgZlOhTs7j1yVDv", + "keysClaimed": { + "ed25519": "tA5l8PGDGXz2I63BKd5KikXpGttLc7jTkHFm2RjDMvg" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "WrX63a2ye7tfBJv0Flq9DU2RA18L5G9S2pdHPi4FLEE", + "sessionId": "TlhSJ/Z2nj6NI232QfzPdxdZcgtilBxzA/ZNzLkbv6s", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "YQi2w27BZdUobKmh1hlxAlLiEv0B5yB/uzHvnoQ1KX5KVdfNOe8dhd1MFHURKm8fVFcDmWy3EbjL0tonOrZhIbK3U7hpT78WzuEzWW6lN2ZB9Y0Lh96QXN3KFf6KgkFvboCpXbwt3C05M/YRk5C3RaAQevmVUwqtQlJ/zQqcpiHZm8680m11MGVmMwAgBZraHGNZ1UQKMFVbFtsT/lR3HUcmlN7ijS+j/zVf7X+1RffJvfji4y7KNLuwLgV1NRNHGoThhLmbpDHixcNTrGI1hZjU7j5t5ODFG2l/4XTmwFv/VVS2BlZo1PI8Fvblp8CbNGzmgUaV6GQPjZzN9kh1nqhTUtfLMGRbEAwK4bKS5osaLVHqW4hwNcZ+tR1w+VtFrsCRCa4zKYWca5Y+256b/by8ZzUb/BVS", + "keysClaimed": { + "ed25519": "QsVkW5NpuD5mS0R1cJqYUXYbXBqCpxtKTRc1rRhMJeQ" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "X78CTT0Nk8RDlC7snNGfRRkM7wCE5/XkVtqESnpFgEM", + "sessionId": "7KdhG9y04GM33WunByggRkCAzv8UwEI85pFMPqthpK8", + "session": { + "untrusted": true, + "sharedHistory": true, + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "LvcKbyu8hD7KfaU0E2rk5rON8CUIZFSfwBHa7yayRyf5JAwHiGlM83EmiGSejWr2u/f5W/N5pg2dTNanNeXXj3fOx1khQIfhAfNWWx2hg/Y9SWPSCX+XWNN3CODkquezRTcwrGyfNLmhZ/DhfjL4WMUOgO2e6EnfHYo8Q9dPE6DlXA9oNRCsGVyll4YLZcCLR5FJFWWHk/pyjWbbhBeJlOrEcRQnH1PwfwyqDLXLrmuoWj7gBLWxfJa9j+hXsIZ36QI+LVtyyidjILM9aXRU1nmcx06Q6D2q/9SSFLp3zRbG7mnufK15FrRR+pXuWR6rLh5/l34ErEZ2W18PpQwT428pI1TQaQvB1KosWYH233fnsbe7+DQZFf+IQhcuXRurNgps4lCYJa4T72BFvYMZCa7kmUdje6Ea", + "keysClaimed": { + "ed25519": "1p3f8DrrAMDMzxo2Jq5XCQAwAZWuecUz11fA8PKW+Ts" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "Yv8Lmx8CfXr43oNX1Z37gf0GiCLG6nqEC/5jgzQP42g", + "sessionId": "0r3uF0IasTQj4CiPf2OX0aGH6jvAcDkmrEeWe1VBafU", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "g9GQ0hFYb5S2Okm0SU0a7oMHRr9OPfZmrfhi/zqXutvxrgGJyUUWIBKPOuzRVLrLdAj5BlFOS/0mn1uv7aoAsfXr1BM+aqjhZ2L1gwY0eVQV653aAUQ42BfKNCc+qGbb9CClUXGcE2lU3CIAhZl4e12FsPcJrDIActkzEUJuvXYgrSY7V3YpeKPBkTcuuT7ruKMr7kddT9BFyjMpR8UZ18Zr/Zt2Rpn0JEFCZDdnfbGff5bAD9vQcZW186Eq2R2POgc/EAwWHfzNsS3Mw90wqxgFEmwoqZcLaGU5EBFNo0tWaQXtO1V0z9pZ91gzOsPFUGJUTO90hrBMFFAV6G4D0SGFBtwjOarjRCyMs1vE7Jyku09fMPzEyFDyP0f/MPtGZ7hUuKXkGTAFQMUsNuzwKWFsWT/FS3Ty", + "keysClaimed": { + "ed25519": "ekVFZw8P9QpIoF5mroTcprhCDGXrbBwsdGel4FRZjqo" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "072NPVaB/XqfhHQNiqkVCsf7/K6litKN/CSLY3mjUAE", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "pge4x3QgiKOtyj58TKE1TzDh4HeDAoA7zQMdspEQ+TjqrlJ5z8UF2v6sfZ3v2AZs9h1jCBL+p40FWbxfgNEh7i+M5ZT6Z6haseB9rsBTRe03Jt6LFlzfyvj7F3E5i66ZrS9s+RJFSyNR6ZrgHeIYPd59NxDye/oz9i7Pls4n/z+lOvXCqbfxl8cU0IVqXzQptVebdE6NddV8fkI85aN+4SZFUcav99+zb3ZVvUci4FGelP2BQX+NJU7vOm6KjxMMB/P/gMUi0CrycXkeDlT55RXNnjt3nV3LJxwswVOdlKk3Mkka2DGuBkfRYEXKjnGS/q9Gl8tlr3WbfLD45TxoNAcQnfA42iNFwr2uomjTOFIeS9vDkOMT+N+/Xjoxy1QHOhy8meQ2isP3VVyBCspfk1rf+VS0SZxC", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "3h2UME/BN+VTTTf+DoDzT/bDnPT1/mfhAlvUSUFXfkM", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "cLuSIrzjjpZKSwPVwPCDKb2+a2PFjmxRNSGd4ogOmI4Wfuk+wIJabQY93hCGr5GQJz6QE2RBpeoULdVZzldOBGSmERmxeb9iNi6wxizCUgkPcu8e9FEuL6iKnpjMpbvZE3ti0TDGt/ixaFbAVsnGDekF7ATDz0UDSutw58v0RMDXZeppxI4nO+iVK+ByWvHxCiVuTTfwXkjoStc4nHUkP3ajSZ2eS9JQkLutYpxuSWDOEydPjUmOrw9ACjkYFZ4yiIDPFje8HxDj/lkn2YnAXgLmHftYRyhAli6gPv/jcliyi7+dnuNcElwDs5QVZxIBecSSBAZkk/VQwkoTSEKgyQpMrK9bO3Ob7+l19hty3PmLTKG3XtGaHNhJzR/rsh3a7/5mS9SEkv9h8hgAl5Lg22W7Q33SmXob", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "Fgrf+3+uUqbmlab5Vh1q9TTn8kjvDlSwGVlgbvRHS0k", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "q4kPuIDLYg8YXeiWw/RGqMOTkdzJvt9mZw7AwdQiANBV8oMfw7bP6Fcboa1s5TEl+0AfsE3b6TdoBxyAKmJZ7OZ1vmvLCnmZQtQfw21KmKoIvLl9MGDHVaapbZM2fCyvs2NqPb9CaU2zbg4nVI0RpPL8XbOVZuV8ggur96Iui/IrtnFZI81/OUK9dXiTwpvBwc5fk22mRuHkxqPimfYHWB9rZZ2IrJ4guQau94YdAmLjBoNmr6iEIVU7P56ZMawDOzwkpyGO5vBOBvkdEF/pAUBzrglxQgPcqeDNzsnMX99iv+wJ79laY6Z9AaUsu5DRhaEgiTvrOhJKrtt6RXzdh17KLPncOxnsy1vrh3H2hp78oXsDKG9qqeT7atz1NfA6jLJtDink3GzF2fTq6ILLXAFbWRZmwCMy", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "J0gATOup92xuwoF+1KjaywWvEF/vtym/ezYg8cD43NI", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "+tzFdXSsvcB/vmHBznbUFAz+nFvlNpQ43zLEGHBcDkr4gwZAPtIV09SGpeUIf7wv21t776WdyJOL7O84bjHSwYprSgKtEyDUHdAS4tFcAH1hfwOUDRrcWKHDjT6vW8Kgkd+SwgzmuZGKmP6ykhb05iL9GnrmPv4J0zO2IizJHQwZFZeeNbJGbC7e/5juYprXtNqD/dQXazaJbyHbyFLmnk0qgAie9CzD2pN48pvZ4TQjzB2Thaqs7ZRnmzu115JeyjYhD/mIuvh4ARj3Rk8uvIS2WpAyIMOoA0u6IBuer0iCXX7lVcRZCB1YycbGnSEa4QvJKlu7tIJ6eBRhRd68fRkCUhbQDugaHRmBLzrdMzgT4IDRCFYLEzgOC9I7J7/he6EW0Q2UpbGkP/CoRGR2XejtROCVOOQd", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "W7cEodAkt5Vj7SSFuM/T2nYL7X19ZpU9FlUxADaLCKQ", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "fWWGFpxysJOOzYEU1hYS7abBKTdhIB5doHfqtFnarLsf35HcIPb633DUOpRdRmkk5bqvcIJ48FDyvFjAZr+N8517ajIUJSKFNdBCFQngvPjCv8W9VMlBHeOPJkt9ns3n+m9VRU9vDXJlOho4suwkNGaE3VTEu59YI1vNXPRsCMdRShjoCtmrE0W4BIZWQOt/3M4qYYv/njFgMuLLcwCPD0vvW3q4ivVuHG4pMz0ZasW3B5doX2B19Shgw80RaJXRAkUrexB3B7nxpUziVXsINNaiwOBHsQkaav3NZX+/so0l5QE8PLB+r82cayxU1hTz4D8c1z2j6Z0saUAJds0JDdo/6Uuqf3YhpuPU03bIeyBJuiCDwdVNIlWkrbtNSmOCIVj4ZF0rRJljiYPiK2gfFy4zs5Eni7tq", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "dH1sMzuIW3We8UnLRti2b+txfSK9z/IBuQ67hr6GyK4", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "wG9lQnmtpQxJRn3BO3Ro0u0zQ91SkxtU88w2K3tZTMH5gCyFV13UQgSISB0qUJ2wjpEQcVuIkD+vX6IYH7IqWxmWPOhhiO+4p8v+779sEcZbgid1sdxG1JYGbRYPyuAc8aV4hTYf9O+71NB7+IYxB8uj6jDRZ3xwUUnwcQKwYNL+msop3Hk1kXu+ooz+Qw7Tiw7RB9l/Drn9180wJ8cphatqNsNYrlVcWE+vfYqcdAiOZjo6fkG8m89onWbdZ3nyNZPyou7J++sjS+8cRiLaY/hFpgdEzaaw2faia4wv/+usYN8rj1VbsOGUoHosAC7KgVVPoPZwZq6+18DgfXkOSxFDVNskfbVYBJ2W6NPUmlccFEsDFJ5CTs6wL+HcuIrjrMA2tFY5qb1R87o1gY9U5aQvqJYj5Q4M", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "k9h2IXjZyr4tFKOVd3ZRs1N9gwsDuF8glUk2q6c9laM", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "71A56C6crXrMJOwK25+PGlYkb3y5pUO2fwacje/lC1zE/+X/0eoaoa8JL/ljMfySRIjU9aY6qKLZWYXUkkUN1qKPnvobiWYG3R00Uk1d1xfsDuKyKQe64kMjc0W1bAkEoHppttmApiZxsRLxS1WhzLy8reJQ+q7WAoNz/2U3S2euUPBsaHE/mQb3O42nO5tX8rZckUQY1Wpi8VBRw1V6n+a/l+VqmyXfGuhunYngOvZ8Z0y8mmQlSCmDJus2dAKnffKh3pNw2E/+8a56XEx61vzDJDb6S2fTY0QhIR1V1yL6zd7li1tYbBU+JqsS1x8hV6UCZky0l+EW8C947hXPSpGMCso2E9I/IAi8BTO/nMQGFKfYaMDPst61t7WLTdwVlwSXs6ceX76b5enYFZl0GGitzlnbwvku", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "n+14rmsrdNIunXxUzwE1ndoMJWP0L2saiaQp4y269qg", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "+3JLawtztTGduI6BD8WM4nnzDcn/Wa4cMEgnRkOuuNl6m9S01CMr05fon0b7f4dmiM08B5hMUqu/NUDK9VBVfzkiBlJt2ug+pjDwSzVbaPOPqZZHaqJxEl507a28Pv8swYoxkL/PQDhIqjQbyX1DInuB4+wgaB5z+kUbwS1YmLrLTGzcfb1sEdrW6Q/RzBtpStzxuR2BHwDU6RfDQzS3PLb7lUHAcjRptnq0upKOVglixtLP8gXYhcMU2n9CLft01P4JlMW1atcQYSyuz22JHRmvBZWPNSO0o/P3moW6Ac7rPNF8fJzblidsDgJuAMfmqYz1BNlIU48OucvnqzCZ4xIenpE2kQfZh7FNkcKrw0PpzMdZKdDade0PbVIqICdikLs7B2xka/8MqaP/wjHhFaQYVCN0Ww+Z", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "q9N5p4obxOl7CtSKaZd+4SPWBWloRTpZh5JJXgNegjM", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "D7G9I+MNilpDGzHgLV6Ax7E9cydfabK243WLyV1wj/JqhXNlTdlWuR0lCka547fo49XX8/7okkR+WvinQOzjbYTx/a/3K+maLkSYSaDiy3ecj9HBBrchIf7TnH48R077JcxsZ+7Sw0NUD+JLgc9Q4PRFliJF3z2/a6PBms5oArCmI3Pg9OqbuuZ7sSd7SmSlLv16rdX4yeGkpvKRcPBAZ4J9l3XhkozuIWSImWMOIN2HOXV4P+aFlbzAfSRTfE94S+5mAuHaLVg9CEnLKs+gf+NdHlKn2a9Vdl9G5/3nvBpc8cvVr+U0dUGt1erEGHgsAEgmwWNIswqnlekVZMiiHOm4sDEcejmEMc/0x3yr9/FSRTP62IUZTAB30K0tnt5zKumUNg5v7hjAx9/ybcuHGlty6LeUO55P", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "rUq7aqv+OwxXmABf11UmHUpm4Ha/lHtjSeoL8QrN4BI", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "tofjSrkDNSS51Emb2GMGgrUCme2CPeHvWTB6wuGSpU7b1YDVsLyJIGUep+KQs87jazoYsBeCWF+1MB+PWPgDmziUCS6HgbtajNccsHKIoSxTsYPiCF5RVpQXeBIv6HatEZ3SMnxbKNUevDmrdTs7s3AgJoyz5E27/x1Q8qTmTIBw7uzMF1KlGHBxtj38e3StCW1ORzeEADahUN1WUm4WuNNQ4BvimTLY+MgYgu50kgU7FBm7dHdB2B2J5I0GR164oq+glw1wnHVD3ziaF+3ccn//3Na08VxkMgoa2woYNqhxns3X2HPtlvZhLNaMVOaI3zd7erjaZ9mFabpahmg5inLwIGXJUmJb1dhkSqDS9nLA+FiNyCMKaKzQLMIPD/324bWgjyWrbCm57JZrAfsxfsNyY/EzUHwB", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "thR+oaCpzqBNodOuGjht82xUWRcT/PzKw3kK74iAr5o", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "m8rYvz70h0R0M2mKApPOcbYpSX9MvAD+1IaDtg/Ez+p1i6Wjcoby1eehrlcm0ro05zxwZ0eN2awz8rpfqQBuop1X13RtETzvt/g6fbhgxt2IttPSLi1UUEr9yPXPKzKxzqOARIsRm8qiRQr5FUw95x0SutApz32HOvzvwGPX/dtBVPSIb8RtMCUGHv5Wlfm6s9VJLnjzVlsXM1/Q6E9w2uXAbu22GUVQ7xI0D9LYlaFmdB/pjN128JFUiHNi4Uju5aGz8x+vOjx+E5HaqGMgiXL33fddVhaIFQfxZifgJE+WveAPDRwGQvBiSHA0JOn1pJ1RRQ3UxccNCPhMrziVHfzCamyTM4b8sPReeNndICyPNLhPOKSmCa9M88L9QfHmIx67u7WP0wvVPv45mvIDowFnlOe7ejry", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "w8A5GVuiLujV24V57eXMS9psLDZ+wFRAOd6qtKQhcNM", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "EjDDn0HI6jz4ZaJ4GTS0xfeoi63mjnEv88YwOv7DPd1+N0UurZ/sVN4pOmB78sKSp5Jh794Tqgqqikp62QXiLSyTNRrZvgupegFwvDfWEJ4IA7BkmBVP6j+vItz9JFH4C15QYdYFNIcyelA716W/sIaXpwegFG9LI1sHbBep3me8FM6UZ1Q0h17unHGJ1ZduwCiBhc2R+exhlZzqb/ssZiH7ZOmq90fU7+GyixHJTSCgWwsxFAYYKuzT3EVS3hE0qk1kQTIpxGhhzboDEhCBFY6Lrg9cae96zuNZhFlsrVVlCScwcfjRkG6quMVU4zvAp8XrYCyYTT0xttux9bc7Jg3VfRYgCBqbAemZzNgBn5FkyUeu3EBHfftmXkNhGm7cLhDvNymt7ck6y948FceSUns/z3J0fZx3", + "keysClaimed": { + "ed25519": "Q1yd+4HfY1TlLlKztn7K4diswf4BlMuAgi0TkH9HtkA" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "b8g1RzK+ilI8h7N2amMpbWZfJj3OW6Jzxo3xojCTsVE", + "sessionId": "M2iAtHD3b6090r3/jMSLesHGXjIkaPyI82UbF6Dzvdg", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "jx0MKAZdIOBGgZcuO2FvVhzxnIUqeTl77T2NhEAUdCI6UAhy52z3C6OJZKZXNVEECRWj26g3e0S8mlY3I4Lmw1alsXwqhnOJLKNCNLIzU0HKblWFO/pxbH4Fc5vWVNUKzbSlgwk9o++/9upj3rRRz5P/ZMKqIyvbiYFYYGHQwdMrLKZAzcD6hjT+3eu1pgmCsQk9qGDD6f3LWsm2TKUgX3OpbLUrdKScL8/hu7uA24K9q6L7rcEfz6F8J1swQzI8aqSi1w1f5N2FIMEy/C3O7udCzwFG6Rv5I87J0GdzGQxh1HLtgbQYwZlQ5+FNXU2JZtUzuTW3SjtYGNxHN4jG/ZUmwBGBT3GYQ30BvPj3DbdSyTNrX7LnjQVDkH/dll962dgkd4JjhXqF1muGcUnI6QFVty1fqDKa", + "keysClaimed": { + "ed25519": "zf2qt124LIBYzVhB4WgAkmcJg8bqM7K3o4NeISk8sE4" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "dl4ygF4NbLpDkVOZZBGYz1Bwj7JHk7GVatDT7qavo0s", + "sessionId": "cUgvJ6wHzqRHL0+ze6UlWZDG6XkP45ZCXEoiXTua+NU", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "rwuG56MZIuM0XQw751BrvIEckrg78dn6kQ8sDSsAZffqRwGVSeaCeSqwSem8xbXKEgqECYegzb+GluXNjp5pTTTvqpU8k7/51Y31dywqsFjJasPzkCmR8t2Py+FiKgZwO/9y3xHamQNiltaQbMhda5yQvfKrlQ4k6iLyBeD8PhMpE1ILVwAElanto244JaH3EdSXw/0ZQ2uMYZo3ru8HQexGxN8jMN9pKBBeO7MqgGcdRsXh73oUrv0t8RXftdT1xY6MN+m8My/PHhXAT7jRXrTmlTZo0VRdYeXlISSEblyEEU2mdkDhkTXXBbDukEjmOlY48A5iklFpu5zHDH3/Ct+UN+6nr7gON857gqGFF7lLWwaEkL7UVJ9XAP7nH2sU9b5JSDgrMZHDi9dWo5G8YzPN0u/9/c0d", + "keysClaimed": { + "ed25519": "3Mk3r+gQEPfGonrj/i/6UfDbBtK5WgLVI15lh3vdhIU" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "eMBHGCpDlTlosCIb0g/BZf/WzXjIlQQO+NuWgjTOh3I", + "sessionId": "mZQxzXwBl7854eWnPYZe3C3j581XCVMvO6RmFDx51Go", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "uHikmhxgqeh9eIRAKl4rtSH0JuV0AIxVc3EbXetht5Fr3+C0IzkgPLlkst5WBb2ozYCpwype5H7jFVrLUDZLlcirdEq1bq6L9WftaFQPeIsAeiiV7j9JUx+PqqjaDXOv/MN/2tKSKMtRcLY84V3CyNn8sD+DJGtRX/WLlCLynDPlyC7lgoDHgJv+CJA7aw5kxcq6FA8RCUPxtduqxdx7cok5KjObWWBEGgeKe0LYkS2upIfO5mU6JMVjv/yMdl3PXB8Bk0jZYsg4zqReZT234s9HnE3/YHS4yRZt/FEC1OaKWsE1YTddtxAATVkYWQzcr4aDkKufk3S9tqdXPs/MS/8nitam8RwtGu/RM0BKQBcuOuValo9u5gyXRSVSqctCvzdA2yUAeePk4+riFHEHi05Odab4VhIK", + "keysClaimed": { + "ed25519": "Pgyz8RHB+PClySPXtgIFROZK/1+ZL3vp6QiftewWuFQ" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", + "sessionId": "KKY/ByTbXoGeSXZaIEbrYbT/5BTdza02i1zy5ToYA2w", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "mf4aARUqxpZ2GA+yx05Ve+lz6UygSfFt6AIIIH4spELlFtCisioSgbZ2Ww13gpgLNurQQ93/NeJYSyIFux/ZZqdeDfh1pboJ76DEd1kv9CQEGGjB6UIT+1lxtAdfZPSPg5zYulS/wY1fj0zYA3HcBPhqpdJdtZF3aDRQmHE62o+9qpKdfniGLvpYT1MFFmgZrr/O2qpWP7+3uGZHDCupJ8pJelsPHbqYcD8bCW9ycvno5OY5LzsISAlkfoAYDHk/15h9fYXnABqXP2FRoEbsv/jIsHeHzSiB/7O+LsTZyKCExH1VWv9ItfANui5x6TfZ3vxhDKXnxTd37GI/rGOlDi9G+JqmJV+cFG9xnv/LS9iC4HpWy2x4MWt6Hxu2Dzqthuf7ggWAQzhSSKCZOnGET9qLMTHZ1/OW", + "keysClaimed": { + "ed25519": "6el4gtbDZ8r1gQKZxo5LghQg8ktMVGXrDg6DOO0KKr4" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", + "sessionId": "WQyMCNTIFO9X3gmbTYTsjGwDzTAcLtFQqdv2t0nZTgU", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "J9Pfr9qb+azYqPUXysiCbaFH0fN9FBFW/KyrXmwo8eyYtIhn4zzjt0/KHWtYINHFEcOLxeco3bJjyyIyfuqXaJzc0ebnI8j7/pqbvQob1CrsKEJpgI/4onTGgy/6EX5o4PHFKunbC8/2OESGm2OBRe8aI2wJOrRP2k+IJX7SJqzWmQ+lfuecU+9jprOIOkbGnZMUGE0iN/+CV1LwbYtia63aSR85WKBzDiTcx+l589OM0Lq3RbnkyN8YmuHWvmNFo/pZQ3LiacVme/rX6zMc35/t1xJ4fLGdDWn+FiAofc9lExni09D1htbjfJtYV6MeoT1RPeHMc7AKfAEI4XvySW07HPNu4IUl3h2gH9CDxHgkSd8MeohjJxP8Qi5QHuDAcV4x9cKtREf5Sb13jJJGp0c326Bnqrb+", + "keysClaimed": { + "ed25519": "6el4gtbDZ8r1gQKZxo5LghQg8ktMVGXrDg6DOO0KKr4" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", + "sessionId": "hRI86U6AAtInzovrA/icjFkvMVxR4j5K9W26twB20MY", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "zjQ8VAOjcSk3ZWy/R1Hkw407369OHSe1OzWxAXRY2y8Q4bkoKCvGguZhMdvOVhKHxmjgJ3dvxQBpsJap22xC0D9wX8Jejre2EFTEJMrq+A/Y9lPXJbxOJTLFlaW59qgoTeIcVnfPcWP3dmbOk6UESy5C6ZPxhWYTsxiTP/Ezj+arRIBFh522IZLHooAMDOUb6QlSDCJ6jQVc8H41OF/nKgMVRAUBNkAr1Nygpt6tzGTVBzzysF4opJi5GlA1XCWBdFQZLvsmgsrDaN9ZkOUCJdOMz1fiTpPc1tjjXvcNFyVLhgjKre3R2qqMJZ36OBHs+j8PIyRhymz9fwfqTql8Bi2TzPYwhWkSbptPMhOeVSZqvBOwQs88SJzbqBi4uedD/MmyCo2izJ/ooLI17izgmwc/5oUGplFI", + "keysClaimed": { + "ed25519": "6el4gtbDZ8r1gQKZxo5LghQg8ktMVGXrDg6DOO0KKr4" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", + "sessionId": "+eu5+VjommeMK5XP/zZFJ04F4Po93YLVAUDkuYuscBQ", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "/EMzIAB9W1ym74i+Flb/+XE6ZhZpTru+vGeRl81ABOMJNIGk4zdYYb1qz1zUrOwEfFMzFgRNqMTBf6G7ZcJnYZUIxzZquvMzNWJVuI7d/qjDAVVIvDubPTGk9gRDXMGrpZKgCeS9PUknjPO8mDjV6HedDZjM1oIEzmJ+tL/HyjKK8XYr8ff+PYYlQX5IgSwpmHK48xYmpTT59q1CS85RMoOhGo4b8Crg8oaIOQKbGnDy2YVSu0JEHUB3fMmLkS1Sb0JEpSDbGm9lJQ0J0BRL2soPs0awUFnsVKiy2WcWdN8emrNIN8JHSDCqGx49gkn8PP27vcXmFEchFsGfexGnM7XU/mOtHXw6C10MMoxIf7jxH5wbb0uU6RvhF5oK2XpJyZug0hPy0EyDGITVg+zucKxi9bOOknpb", + "keysClaimed": { + "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", + "sessionId": "7hJLrZWYBqKXUdAEVZlCZMBmPQN4gtz+Seq8mU6xsGk", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "CYc7OLXF7eSERiDtiJOyYQ4MTTOlvrcyIC+6/Sv3hRCF3KPhx4L1nDtMowCw5NJBG6+qNn1o94efuANJio6ijrXKtEdlOmRK8SCjNxTQZq3bq7LzDuN8kfB+/wHhUYhKp/kYTGPONzn/bQC694UEIC5Ybzzzh642fwk15snMZugbUxv+2KiOJOKCyAqKEyCZcbv8M8lXhvNX+rPkYXVThY/xqNiENvhGvX7kmHXtbNkL38hSvyZ8T4HrJl0Z0lf0JVh7vuzzoNaPE2q5jdurNQ/WYq34oUzxuc7jzKVS+iPaC+Bs3j71sHrh9kX/A96IIns384EyXd+CT2bT0O3TUXhhV6EOdv1iwCp91YmiLnNkJUA8PR1be5gdCgbqBts25EvG9idAKIKZMsNxHxvZfMXXyBN+1WJ3", + "keysClaimed": { + "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", + "sessionId": "GZWMEBEJDxKzoagEC+wQekBTj7vrwQYXLlptQY8SH9g", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "1OVEC3x0+h3lJD3g0ouHJ57ZiEpmrlqmg9xUHqzWkaQ2+/rdNoeQtbwX/wA6YSur9TJrYWQXQHUqXDrBacyK82xvLDMQ5YqFqFc6QnfKbN9u3aGdji1+Hd2g4jZ4UDMzJ2tTyaTIGbwxznTu9F2rRzRwtZWjbLCOOaK3t04i0Q58dXOctQZs2NcW2mbYaMUESaaI1EH7onX+Vi4n130pz508zTySAjPHfAZUm0ZRhyQClSilfXQlfMqkxy0CEGy+2FoNqYoHfbzCMVGrxD9fbiYGosRExRwzL8iSMriyzMTjoNkqghv7GQRdI2IiWhM3OHid/PE8/SUcOXR2AFMVWjWpZAjp9AUypLnymzSco5P+vt/Prbyv/IXIbHonDKVNeemqTZT5IclLjuUdroPtfiH75RhEdKqq", + "keysClaimed": { + "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", + "sessionId": "IPzVJB/H36VGitFtMT71prYijrFLAKJF21ZceYLQWxY", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "yqEJTsf3BkpNcoLnooLnKz1UVKUAMBirU7X1KOyUySMOYPhhemX1E8tba3O6K3ka7naYzOmFREMzwYvzvlTUtDfPTOM5vUE7tS1VA68rO7F6sqTmlDRSgPku+3UUQmRUof+G0y4o2YlrkngrIh957GTGlAHSv22JewMuxyHqP1uRWu9b3TLjH+J9/L4iieLbdyVjKWYG3XplK8N9WY1fUGOZo+j0fex1ARxdjl2W/A6Q8QSItpijXITIhirhadUqQzeWIblQy4Ua0IzL/mToRV6kQ7Kg8WSx0ADHdvZHpc83QhbVtkktndoO2L8kQaj64JF8NzihLFI1SWvv+gCoVBXXWU/+V2O43FDgLqnRG8KlotPT0Ff0xdb5ibHROFpBmFllGl6ih6eKttszBtEvK4ygyqC0sRyH", + "keysClaimed": { + "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", + "sessionId": "QJhyg2beo0esI7ez3pvffF4GFc73Wj3OdvgPSr++FOs", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "11IaTbF0iuLSHpsuaW3MJiWMJuCS0uXsxnNA0CGljpBKlB3LmyIfPVbudf48zNacHL4iuQQl80gwJQLlDzEXIkIvniOVJ1yaVmMcSL/B1ez93IraqEJle4rZnVretIsim7VoqbagRmFcw0i1g9IVaiyYK051BheNIt5IlSmzcfqVnkXOCqnEHYE9OPxbyeuSK6hbDfaKdGiiCFK4CODkmeZLkGl86kLm7eKHhJXdm9cJrvtaZFVe0vUUUTXGvc611N8e7oEOY8gKOdYPIeKjzotTk12frCtA5YnRrL0p5WpMT+S6gvZj5CNOcKWWEBVqCmUjSJE+D4JVf36W+BVQpOgfGadWun4J9sa7MGLpJEYtr8/KTLth/NQZqU6E023n28jAXK63zuzmnhwsRRpfO3kywYpA8B6J", + "keysClaimed": { + "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", + "sessionId": "SPG6ScQWA7KplMGtU3w5k7HIZfF/lSNmhPPlyXgp9Qs", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "mPPHPNQUqS1OZfyzqNPEf7ckm51fplJaOT1LeR4kARlovVknV0Wij0xMV+fxYp4NIOoYzprzaCpoi0l4Cbf4sq4ZwHN6XrKOJCQ+FetBAFVLixVN5Y2Losc05rqBzTIXpuS0UxrkQe6ji1gCfd/RiYmXuBFMKu1A1OwV/3ALnwnn32iMChdt9Sh/9qve/PPyjtCwAodgjKGL67Xi5wYK/RKbxsBP9v/HtBuf5rVx8oyeWUWLtCalAlVKBmRFMdIzjrZgzOYNRXwYU35jRov929N8Ts/TloQFzZu8xkT6n7fk5EAFxIQ6JPWZw2hcCUct1UttmsG1eTN50nIylqKXAN4xdUltE/5BX7IPtlBDRLDzAt5N1PPL1iZO7/L1uljtDlx3G1W648XTLI5L+lmghLz/e09aYmdj", + "keysClaimed": { + "ed25519": "ASO5VBC6J73VQnuCEFTP4rQ15NPm3byM2j1WZWv6lE8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "r5ri9JjKE7uoPUgs6aCRbiiQ7uzyyV6Eeo7P8FIMGQs", + "sessionId": "XcOTYdw6ODSRDRVOBCNL/7kmxPP6/MOlZWgWjo43Tqs", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "00PiC1xiU2CeXqJk9vtsINL5VyaOVIJr6ZlkIq1wj13UP+wmTryQhUV/XomJD5o4b2+yIXA17phXd3HszH4gGc0cMIPrQhFvCgxjU2u4sVNmwSD0n0eCyH8JxWxmhTCazzsTEdZAG0w0o3hG0Og7xOkVGh3aCgtr025GAQZTYcVJ2Rbd4AwX8G4qaAXqBqrSFpAgrW4DqUumfVq59PWoxUMPC3DQ67GN2zY/n1Ly3Tygb91bXGxCgXK3ze/IVsWCnO8ax4znImk3Blzoz5X+0r4S/zhuO7khKmgvTkRb+M13YGXJMrT5o2+KGaziqWOp2VEq0M+9OWPobc+zVFcgiB+0eaWbNUIqHeThQmBiQtI6s25IxrZYjzwcOmeoZRI/cJoWiaoyUPziJz9e/W24fXV9czZjlGL1", + "keysClaimed": { + "ed25519": "mCnKe06C9Pt8oD8z/FlWMb1TquVJdfkcOaTOK1w0CZM" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", + "sessionId": "5fUniWedXn7Lfx6C6cF2CNLBHEr0Cfscb85GFz4zBE8", + "session": { + "untrusted": true, + "sharedHistory": true, + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "session": "vp45LW81+7HMNLU9K2r24Qv/vl8YQGJZvwhSkQj0090vkqyngfNyNXPhsLeBhhQWwlEEluXc74jMrh4p9mIi9mrZnsGDLgAp39+qmOVJToU4Jr+duMf2gezRX6xMsF0tUsT46+J8wYCFTB8ZvJLkgt5mbuLyP4Nw+1o9ahggaNT98hxoBZC+v4KxraydJZPt0DPcz3ZlaVJWeAUtR0khwX1zujXcg3Xcx2CB5mtjq5O/q3vShAHAztPg2Sx9XpGTYlzc7oGHro8s1p7A0v69Pj7h/4+aR/K9H0r0jpGcoDrcvjaPq81/kg7gV8KIz1tFE03Y5N/NqZiaQQ5NCXFX30jWoW1qAP4vh93fHjwNw6rQVbSg55myAHHWT1aSH8XcV9pcpfwYwLsaxpgJYkhmXncRxDRDsM4G", + "keysClaimed": { + "ed25519": "vuQnIuMlpfrw2cRKZ/Uda7WBnPNk2w9XqP9Nf+wR1MI" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", + "sessionId": "i0UHnfpJA9YyYFPPreQGINIt+f+aFf9fTFQhx/yVvTY", + "session": { + "untrusted": true, + "sharedHistory": true, + "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", + "session": "HiecKA9v6b3BY4Tjflu+ZSs5yzZtPQautV2mUo8NpNtXiNeHW3xOpd7b7OfxS1nhck83BU2+R0UnvE7ySJuKMEqeGldqmGURmzcj+ox4mX1e4+B3C2r26mOSgaetkzC7OsJcXMwAOjK78PTAob0Y568s5/JVqfcQHSWH16gtvy9gjfEHDevg6Bj55lsNmTc0pTx6Tr+1g+PAssu88ZNXuhvsD4ZYtfu3z9dqqb4ckbOX7gg2lxQvHCCWvQ8RD+D9pSoUHxn/5QxpY6ZzFKtxrxWJKQnkN7FhSNpSj+k20BxuBvvftVUQjZzj/JAWn/QbImvt0eRQwAOfUZLMFheURkecendDAMQGEhFgYKffCfDad0g0RSBfLD/scHL4cAOxBXcuSZmcy9vtuKSjLp9iIHJvep1EvOA6", + "keysClaimed": { + "ed25519": "vuQnIuMlpfrw2cRKZ/Uda7WBnPNk2w9XqP9Nf+wR1MI" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", + "sessionId": "vw58QEIQwoWyJvCtBuCmPI0edHqulndrxnv1gNhOvCY", + "session": { + "untrusted": true, + "sharedHistory": true, + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "session": "DriK8YwlQmEsCx6U9bBWPphxMrHAj5DIa3Td00TLBgnZHm0ScfqhqMiPZ/fI/vuAqhz7FPAVSXdDz3T02lMmVm2cWDDHQxh5ps+kvb9OSCDJjbpH9l0F4c+JkXnxQnYMs+jTlhGQBcUy8QruYmofXWhQsGoNmgobTG74XbFZiqMWvzPzU1c+M2yEvqj2XuyRVbyNf4snlkWwQDWoJ/X4m+JssVvW+E7nLPqBQf7pCcbi5A56NOiLu5/H6b9w48qvFdeTr9tLfQ4G9wjT/fXBzlGco7BOdx1ZOGygAYGhX3AfyfUIMxz/JuIctAsC52dwkmjAp6lAM04OGwcWkluRkGuqDMDKMcEFhhzfx7j7S9ChDtRlN8R1g6NhU5nT5gNiuKlsNmIg7JYmfKRS/VMSuKeXSCe97k42", + "keysClaimed": { + "ed25519": "vuQnIuMlpfrw2cRKZ/Uda7WBnPNk2w9XqP9Nf+wR1MI" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", + "sessionId": "XOYD9nN6eEuh6rwBLHJGhlKr3j8GZPUSVr0Roo3eFXI", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "hhaj+eCcv0F43SYiegufaFqvgSWCep7E0bI9uYRZj0AJJibXmlLtIfppVjL12jIvvzIwjhook5BU0XG+wJnnVejr9Bvdd3a5puwxXy2YBQuwyG/5FDLCa9GXfdsbhrShb7u2AiWoOfhB9DTugOkkJoalyqlfGgbDfaTG5Wkb5RArRjoGHywjh3aZBcbbWPx1dMz4GYHakdt/OxaIDkkiJLpwBHkKMss1lTcKwCBa627Wm4CvMXFyZo5QRf44mLqpHjV8Fq/mS2K08rlyr5nx7RSoNKHfhLntrgXYwyf7RFmvxFR6CkgIUrJEZdeyadcldRtMVgboThsDWhhJUS9ua8wfdkef9HOQnfCMJzQP7xNU591b8k6S6BcZXlsk2sYyjhfUzfeQzFRTzGTP9Z/rKdhxJ2BLkjYJ", + "keysClaimed": { + "ed25519": "Nh9+zpTW7guPM6cgyxr4h764VT2JJmyCuFlczgLbHU8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", + "sessionId": "ep3My5F8VWivPx1eA+MGfBXeRFq2Ryw1BnaXPBm8ln0", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "2jUHtlf1bz6MIK5UJRB42EnoupLify3Q5wGKd4ZHRvmLpx1X92VO7aGbP62w35NfIUgvgo++CuCTwYrnowfuU00BUwVVFAUDSbFvreHcRVlepB/zhL/1rapu7f7+keE429hfJ8ntxSinju3MXSZ9ypVT7HGPK39bgf4IFRVfpGeaw5qXmO76wSlK3fO/zFK3mr9hIKDQnhs9VO9IlY3/pggJx/KL0T6GCqVFkhrBLw99auYAngaxI+7RXJeeLnlyRsDAx8smmS/dyy4QSHeBMsSX2pHKOz8y7eCTsxG6qwRGPzQcnwLlPwAnLpeHh4Bk4fYfAyqonTcxkQVc43jNaLLmGrlVlp6AaIVt24pIQU4qT/KGCJHvEjtBIvOh2pyTr5XzWw+FvEAToSRySipSg0xek8+OXb6F", + "keysClaimed": { + "ed25519": "Nh9+zpTW7guPM6cgyxr4h764VT2JJmyCuFlczgLbHU8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", + "sessionId": "QcQ+0QZiq0HlllazlEudzMEF/Cl2aBlIGpqgiLm0CiA", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "qf8eq57Ow0We695lw7iDhpgtthmI/jU/RjJtVoucI6IZn0+C5FLg6bcdmVMcXwPwQJqhBQV4OUChqtRBovGC9Dg5o/iUCM9HjizD8Pncuo7cKJ62WW+XgQwi3jjMLYNZhZDk+HbAqO5gxw2DaymX66skNsbeiarJls5MMLAwud5PNd8oComA16+DcTgYLcDUlI7rzFuH2Az+TclQ0t9hg5t9Q0//uVwz5UXGEHgap0q7yX0DlDf9OExH3mrhsRX+YP3ojZO3bsHPDCX/hpnvuHdjHXLZcZd3XIJbNbSiYrQkvKKV4LCOJyxR653j3e9Z6fxM3fcggcXGPAR/cjARFlzZfnGlkCv+TE6ywwJ7C8rwkLEKKxIs3ogV3CRCTfHaENEwHoM4ozdQxL7KrFB0ZiiyuBDvTCiu", + "keysClaimed": { + "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", + "sessionId": "SRZvhQMLmQ7Ol0GnEZZZeFxxwnBh4xdKTgnKU7P8X1E", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "aMnGmptBPb9Aw5DOwqYuCJGXYtojeFfdbfVlkFFAPUki4s9F+Wn/OgIanuDqVh4Aha8UZXrU9S6H5PtYFuLWpfXLOQUwL757KFutW3LQ4GblSoZQ9W8RMWqVWgdswldEemB28bxUjMhRECy+zczzc1N+mJd3M3PKlE08SO06Kwyr/0SlPzkmw4XE6nGQ2hO2qUZK3jY6JYiS8K8mdQVOC3zcJcljX7YMA0K/3lQOFHzNkQoaslXw/b1dtVi54YrJQI89tnByP2eg5yZdTxcWOekJ+VYtOU40g9ecxfAf2g0YS1YljbwXQXpo5AuEQuDky93oc5Dh2O/UZQnyGfOMngdH1F0VBzEUTHgowWh4BuJM48u3BQ3dGPp5EfWxREI9wahUzIDcWji2SwP+fwdzVePdoZXthqEe", + "keysClaimed": { + "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", + "sessionId": "dr5vZIuTMSrzA8jvfoQo6RQaQtNj2x509f63KFVyySs", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "UAWwtpqv0xbMdPQ/tTBDYg/EUt0qfWdoX99s9E3HXth+g5qoFUkQvw5MHekeXhBYT+548G4GLfBZFK15nledlH2Zeov3sAtvLiPbqN4itYjC2VNHJ+I6SdQTz+JlS2w7+JHgVyLvJFRaFH/gdwO0slbMErTB/btQhNINjlcYHjiKMDBQ0IpwPqYOvhZHXaQd6KXz7Bb8TptIC2059k+bVzNImfKj42G6xXahN7KUfuJOHH3AO38NFbAlsqByPBkCTJw2XRzGzTqUeTWywZZB2YN5U/bYz8SeZv3D0MHFKLuZhTqfVpBYuICkZ6cEUqnDqPikJxLgzj/dMXhd8vnaJ+hDC5Lqj6LXq8iucEt8TyLVYk2unxZd74DoJwOqQLe4BJa1WsGIsjtZoy9rd+DLkYhz5i1+115o", + "keysClaimed": { + "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", + "sessionId": "fUZiYlANfUexd5sJ/2W2H4Ki6H6B5uC9qu4nhBtcvdM", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "tm+izLAqRAE6sXS8H08ui6pm1ueMVElMTwd5lY02yIdCSXzgePHhg2QrE9Hlu7nuOxoTLb9hFZ8/5/BgZNF77mQWR9yVIUF0y02PParW5nqvXIC9/yvs9yo2n+Gp5akGHZJgM1QMGKKyZyhvsdz+XwWVlS7Uf6Ro5zRlUJ4VNE4csb30bVcPOJMPFdfQH4cPtKFGCHudgRaoONDRBIH+hEG9IaFDEpyRmOsnDMXFmQgnRdwR16WUKmKDdUkKEijfoSvV8sUv0k/20OUYL04i7cbQrWL//qlViyoFeke+ezQztyujkAr9akBhNOgCvVpBXTWU51exKj0lLxaaAcbuaAXMig+Zy9//Z6SkUTtg7o8J6+xrOD/XFtprq/iQ9s7wbHqoE/8GhK+QMpBsCqSa+/wpRs1P9WBP", + "keysClaimed": { + "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", + "sessionId": "kg61q8b9FXWVCkKNlloGydzX0z4UukiiaitMw87guok", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "Rgm47Eo+HN2lq5x+KXDr/5SRJuSXmpgoYNFK8vL7povU2Gz1t/qyBt1S+f1OvP4Cr8ikf2C4j+syfkqirmytJ0KUk6pShuZaTlPskSxIE8L1O+ROcPlVahJQFCSOCEDZDu9v3dYqRFxvANNqw7l9cKp1OtZKpO/VzycaE9VvQmnkqsCZ7Z79r3OEuCHl1qUhFLloSmdeERfCthzxfWp8gBVc6uHg7BK7HaHoOnQ9oczwSCYIp+qs7boeY3qrgGgf181ZoX4s2IDx2t9Oer+ZZDFda6yowFbYFbtfZbfgUNaUcapJNUdBFWS/Pq8GRd3bPsWCepGVZgWZRZUVpwl84knaRQHmwB73DlvyHnMKfOYiGo++IjoFneJ6CQJRMVeo3aJyeImqpYQR3Y2TvYkz4AagtJ6DXJsB", + "keysClaimed": { + "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", + "sessionId": "l6KvDCrknpGY2cZNOxoiA7u6xRBHdf7TfctasaNObnU", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "bLAxyaPUXCQTa1wZj9ouBLcKY21/8f2/VwKBTQH1YvtF9Wdbx663h5bFBABJ6zMeAfbaDSrNJG/HtrD33EkUk/tZBL+GRnA9KI7tuvd0Xti5z2VVnYD3iT4mhkGbhBSMVbUYXeqBKVjOWFcGrDvzc1gKR11HywBwpgynV1JR4fPpYd4sH5vfamtb+m1hc7yUe0Jj6mW4zR/XHaTsJp5pK55TlFxdywvZMOUhtFKEndAJV2YPOuzxnhdVDEaoo+IidLIzhEknGNA3isPM8pmhGYljARrKpv/7ZOr45fKYgzK3Q97xKZe1CXRugp6YM5y6m6RDRT0TRevVAL4Y9bOXeRXkIC0BP/x2W5wQ/3NNORDWRcdxo44fyVbgzPTFLyNyiXyrQOx8V/O31bqnZIH9uN6zteJhSIG5", + "keysClaimed": { + "ed25519": "Aba7LQhEPDSw/f60xaOKXYwZ+oVurheWm4Ixt4YCwZ8" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", + "sessionId": "uYucqRCzvkptky+GdqPRqPFQq8tVvOQhYQ7hpgvcLuw", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "Vo8j3QRs00kaHrAVH+q9s/3xLuVLTH7mvoP50CnIKWthPZCMYQVGnilf+NyYM8r3GBf38y0ZA2YS0JkGIlnQvTLVgu/49CY32g62XBNo9DV48GIO7nyoF/YC9WfTMdAMpIE2RZGQEvfXFUtW06SU2hXjHdwKjlgTufKOEEWi0m9Ll8OyWbE4d41ZOQF0FpkWASsNPPryFR/2NwJ74T6Z8CXkQNWv3HNB8CpDyBMHz5pOi3M6PxKd14dQBg+w1leb8q928JAVv8DyRtphW8ox7SRNzLiN1dsQolyqaRuCvlHaFvgwUObRRS01GFqjIQG7h+syg0BlrodTi3DCwsnZvuUqOVt1V/ivaMGkBw9hcr3KYttyOslpYBmm5fV1YPlW5KfPkQbkTIuP0BkWbcAb4Yrh3vXRKqKX", + "keysClaimed": { + "ed25519": "qGVxOT77mWwNVaAaigqCJcsm8OmGQn6yjgF9MtpZPIE" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", + "sessionId": "Lg1i5AEOuyY5tY8OLvn2HMCUOBM9W/NNjftpw5Sw7g4", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "2glaDve9wXUbK/imMGss3fFOVcM7POWNzCogycS50oXn4u6NIHELD1S1qSakHGjxjeqojndRvuUHLANJzc6NieYjpKD6j6i+XFk/scCmQ5Yh7USNMX12ApDgKe9MyMLCdY5FQFvrAdpyTyQqirOj6d3cuNtNHouPcCQYHuSwwy6mJXL1w5zE/gs4m5oTcgzh5wb/94BaATB5oYRvHlXNJ8AuNvkMGtkFPUPTeUTEmbq/SopkAkMzcuOW+Y7kAmqU1Oif7vrLFn6zQ+AqhajBhJwHP0gYhftOTy1YVeY6pe0C3E0Ad8o1TWn3/Ydf7o2g+t06zDDD9Kcz2JcNhJMoZzeI1kMZTOBab9wl1031Evns1HmSvySFPuDGIGxsflsHfpaleSt0nCpg1oavIY2NgrfxxyV9Yu5v", + "keysClaimed": { + "ed25519": "w+Ez8ZL8p12i5w0BiNJfcnvg6rda08up+jLp23nYhq4" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", + "sessionId": "rs1GlF3Mb5BGdo2ptP+tP9rOZNuHxmFQt077CUsUaHk", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "3m8VOjhVkeJF0q9RYlFKmGCA3Yet7q2awYuMqhoX0IwLAVUcj9gbNVnq1tD1Xrkg/JcU7iWMYA7MNGypGjj611HP3WIh5/0kCeP50Ng8BcTEQJd5jjhAUCJdB/bgzaoo62jcddeGFjMH73zBOAXPvqFuTJlIg3/JlRbI1Xm2FjlxQl78Ycp+B7CA58MQlThcd2K482XmM+ADLzmdb8ZlvutxUDfEt9QvhU3NuGWsXD4OcUPEOev65K+KDz4KhgGjFgCwNtV4en8spsxxdbQZry0RFaRFsTBLPiaoXF/RvXzGuqTGQ9aqVqiPYeZA1AEgV74R9MO5ggstaEC+hpRt199oG4hnR3fH3s5OYkEPoyQShd1tPFIfpar78X4nzkHmhHPkll0FHGhjnxlVg6rnUxiVgJSM5zps", + "keysClaimed": { + "ed25519": "w+Ez8ZL8p12i5w0BiNJfcnvg6rda08up+jLp23nYhq4" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "xw5fcGw+fsi0KmCNa43551+z0a2+1w6L9tbVwOkWui8", + "sessionId": "y8LE0ur1rsX/7OVpC91jWSHfGiPUq/NrOGM651RwFlg", + "session": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "hYO4bUVUyJu+qQPqk4wg+kmnvjVm93WNKQlEIdgMuY9C/B946hXdyTgilHt+OaG9BBmwvHp2OC8UkWVqczqN6Ptcj95g6deSO9LYeCLQUxOvQJdWTVpmfNrbS9bgZi5C+Y6vepKyvgTiIcWTft52kJltfNVwQUYrZ5IAJryTKeglT6CY4xwpU2U39ICF0d5pgZv8wND9RFFP2thOq1JnY5nAHtljJ8ZKQSmpgevmU153DeKZvlgwqxpM/A2YU3qZWy/1exFQPmW7fgFTbgnBT4+/XWswOgWRdCsQgJIUz2vbdhfNLCzcEBRKvyf45jreOXdF+tm0G4YCBB53HEbBYGIS1kV1BpNsvxwvQhhpLWbZA7Y75dkyxoYNb0qC7km+ewVBousYlSIhbDdLpIsmgSAodr4omQKF", + "keysClaimed": { + "ed25519": "01QCfmIo7tw4N2EFguQ/1y0UlPAXrBeKsYI0+N2nLWc" + }, + "forwardingCurve25519KeyChain": [] + } + } + }, + { + "value": { + "senderCurve25519Key": "yUwl8YCTPL7kEb58FQRAVf19I2wAVt2o2Ftg/VOG2m4", + "sessionId": "hF5Lv4Ag15/+PDvRa8DKRucRM0I06kWZ0zOlUjqs2KE", + "session": { + "sharedHistory": true, + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "session": "ptZaUnlkN313dQ0Z8V6BdXaEJSIoHoE9S1c+S9jgH4+MyLv2SGtidCIoP7uB9J+EmJSIV1z9CkHdvTIIie/vPzovFhTgF3ViEI61Kw4DgDxghvSbrRlmcHurH1v9HFMaFy3q/7qPXjCdLaNPjcVxNe0xPHls4hJKRf6PehiaZ69WfjV927LXRV0ZczUrhxl6isRcT4WnSolbKefVb0+icZDJcS6kpcluc4WINAslV946u/OP/DBbRcbmTt9A3bgX+xCypmNmT1qAZO94PVN3Ju6A/hVPPMONuMxv/jMVRsJJzO/GVCTz2Q9jEB5BTAz70vr4w/M8KlPTIKMFKZ89X2nlV5iElZNUeO5T7u7wREoe2UW2QU6CNo6ce7S9CunmAISFQod3BwGO8DTbQA/8bqe7StLCfe7q", + "keysClaimed": { + "ed25519": "ESSIjAwQ56hakZSsE6m/NZaQMZaWCvyzaIGP6koAz2c" + }, + "forwardingCurve25519KeyChain": [] + } + } + } + ], + "inbound_group_sessions_withheld": [], + "notified_error_devices": [], + "outgoingRoomKeyRequests": [ + { + "value": { + "requestBody": { + "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "heFBT+4ZfCNAQg9+5Uxzs1KpHqbUyIGHQnz3vB1I/Wg", + "session_id": "sp+ikvq6Q6CAPYeTQm5IGYDjIVj0MXg/bejokZTyyc8" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645448.0", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "6OxBF9bU+HH+BHh3PO9N9oeKToACX3LtupUg59ZgdxU", + "session_id": "mpjr24Z36gOyzJjWuhapK340tPZzHTedm3cZOzRTToQ" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645454.1", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", + "session_id": "vw58QEIQwoWyJvCtBuCmPI0edHqulndrxnv1gNhOvCY" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645462.2", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "X78CTT0Nk8RDlC7snNGfRRkM7wCE5/XkVtqESnpFgEM", + "session_id": "7KdhG9y04GM33WunByggRkCAzv8UwEI85pFMPqthpK8" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645471.3", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "K6pUAb6OgssyGzLqYcZQlskIxdwNTZu0xkb1lp2ysQA", + "session_id": "dsS5NET3Rl2hstxH0q39p+5zND9o5lVLrI6C3d1nwDE" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645472.4", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!gTsdSPqtENAVbnchjE:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "EFeS1tQU9GSHOr9NNI3HVNf6n2Mzs6/+7YSUvJiaTm4", + "session_id": "2mOI+YkPOm06IoR2xBR8nrY533egoMjIATv9/n/9Rck" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645475.5", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!gTsdSPqtENAVbnchjE:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "EFeS1tQU9GSHOr9NNI3HVNf6n2Mzs6/+7YSUvJiaTm4", + "session_id": "pf1CZDkjWgXF4irG3GA14jJDvlGDxdrAAtxq/KIK1xQ" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645475.6", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "heFBT+4ZfCNAQg9+5Uxzs1KpHqbUyIGHQnz3vB1I/Wg", + "session_id": "T8NSyD3+ISc8/mQQ6ct3Pjf+nPEPUZY7jf8Wn+fJEV0" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645478.7", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", + "session_id": "eTu6sNYK81XvnYXltWYwg9OJoPPSnwUxjY15b6CWyXs" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645478.8", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "KPKx5ckuyjJC0pFDqxTTn137gREpIbGe0QCdLPI55lY", + "session_id": "bAk6m9xKh9kQGblUqOTUWUIBCugV5wEXa0giFKwfdUA" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645479.10", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", + "session_id": "5fUniWedXn7Lfx6C6cF2CNLBHEr0Cfscb85GFz4zBE8" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645479.9", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "nLGWKDuN+ud83xz3cD/ZKkdY/gipERPlGKy7d54MkC8", + "session_id": "0YAjnyOpK6Fqhgcur9IoryjCoBheI3IPygxDg07B4sc" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645480.11", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "Qbsd5nxCvmmWYgHVUNDy4vNlC0dvUpvsb/wVlmTkqFE", + "session_id": "mXAOYsKpylmZFPkex115glgfQZjMbi0/TdhbjyCAmv8" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645481.12", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "pMJ8MX35Vgz6wocYqMysNuw9EeSGfJ7qH1lGLR5fsxE", + "session_id": "YDJ4j6aYTc6YDZRZgW64YTEDyVU+5JerhV2GkA8gjBg" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645481.13", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "CTyFO6qrSoNe2HWZXiVaHyGSXhY99XokuXtU9RWsZGk", + "session_id": "Ad8t7tmq4BcFgwtiIwEz+jI0JzrViGMZIqP2zrml9Vg" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645481.14", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "heFBT+4ZfCNAQg9+5Uxzs1KpHqbUyIGHQnz3vB1I/Wg", + "session_id": "8+J8uvJp4d/KeW2JPFgHBp4cj3/bya70oNYzFndbFy0" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645483.15", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", + "session_id": "pwhr7MQPCOzlO97vjaSFjAPVCvo7wGTpbaEwJ8kOsOg" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645483.16", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", + "session_id": "kDtwWhYG2NU7WqlRvs02TruBY5b8MnZzpbrNL5RPrco" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645484.17", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", + "session_id": "iF30hujs2t84j4ZVgaYiqMB8U+jA8NCvXlBgPyzywBo" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645486.18", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", + "session_id": "7mlVkXXOuK6v01OLocQ6G0+RzhPA2t66eX8yc7tbe4Y" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645489.19", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!WXNLpHIsCohXpXsbUk:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "a1S+xfPfFBbrCteVaIDMtsIfU7bpzS7s/lLYFMIR3R4", + "session_id": "qeLUvTqpKf/MpqS5utmh8ufQUBho2vAr7ud0GF6mD80" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645490.20", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!kOjcnTaPnmhygqFtBD:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "xZTiaEkM8Nq62R0bgbRJYDnBko1H2oV6l2vo0Yvmgms", + "session_id": "N1NGffyPxckO0iqkWA5s0FYXfzf7qqIr3/Aktd9Wb9o" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645493.21", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!gTsdSPqtENAVbnchjE:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "EFeS1tQU9GSHOr9NNI3HVNf6n2Mzs6/+7YSUvJiaTm4", + "session_id": "i9kQLKJIT+/6OexDQclHSl80m3oUZ9LXSBlIZCTXvTw" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645494.22", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!gTsdSPqtENAVbnchjE:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "EFeS1tQU9GSHOr9NNI3HVNf6n2Mzs6/+7YSUvJiaTm4", + "session_id": "ubktiZnOBNGK35taZarOAC2H3xPICBPiVbJ3niGvjoo" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645501.23", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!qzuuzZxqLjsmaxoxeM:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "6OxBF9bU+HH+BHh3PO9N9oeKToACX3LtupUg59ZgdxU", + "session_id": "ikiaH/1xqegjNr+c2tbgrpGP1xkx5hdi++kSPGM8CAo" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645728.24", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!qzuuzZxqLjsmaxoxeM:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "6OxBF9bU+HH+BHh3PO9N9oeKToACX3LtupUg59ZgdxU", + "session_id": "z9lBLL3YRTb+gHEbh9vEnT/cucCKBGgfCSuxSkkGHQc" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645750.25", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "EFeS1tQU9GSHOr9NNI3HVNf6n2Mzs6/+7YSUvJiaTm4", + "session_id": "Tf8lBCOdDaffrgKaVo5cY6GHBpUUt9r2Q1DbkkRngvI" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645774.26", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "LqkBzWLi6AcThnecUFi+F2O36Ie3yoEYmQ255/Q7KHM", + "session_id": "NtynOhHxvmjsaZGtX1Excow362GHY9i9/KoYtkBkJPc" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645782.27", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!wcorgnJpnmLLJnrqNT:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "iAb5Z4AlWWzY5vj3bwX45euC7XxX64dLN+PdmGhzXVI", + "session_id": "C2P3ByAVrQQCnEvCJj6EWN1wqkMSa0rpoYlSHSi+0ks" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645798.28", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!qzuuzZxqLjsmaxoxeM:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "6OxBF9bU+HH+BHh3PO9N9oeKToACX3LtupUg59ZgdxU", + "session_id": "BoT0+SSnOmvnc/UanffFB/Rg/xiOKRMgYcdA9SQWzwg" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645798.29", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "plb/YHuI4r0OLNkaOrsYjA73s4gR00Ajo4CrW5q31Dg", + "session_id": "/NhRAmnXnkhVbkeVCSaYTCXVEIMx6ZGE8I6Xc0/Wwdk" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645812.30", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "6OxBF9bU+HH+BHh3PO9N9oeKToACX3LtupUg59ZgdxU", + "session_id": "aBFuS5qNr3vmcElvOiTuPqoHvEO1ncaYtZaBgwxFnBg" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645813.31", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "plb/YHuI4r0OLNkaOrsYjA73s4gR00Ajo4CrW5q31Dg", + "session_id": "32pq9zHJcxl9aGLCzK5kU+MOXZpW/bmKNGfCLVx/N/g" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645816.32", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!NvODNaNaQbJWulVEDV:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "LqkBzWLi6AcThnecUFi+F2O36Ie3yoEYmQ255/Q7KHM", + "session_id": "4RUELmj24bRvB9Ww2m1PRT3TUYx6qzo4mwFzk0XYa5k" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1695903645829.33", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "session_id": "H181lyCV4T8uJVoyXWb7O4KASvRud3Xfafqjf6Tgjm0" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703780328568.0", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "IiMDb65O1yXf5NojRUcuFqo46z5HR+9sUo85AvgLzRw", + "session_id": "e7QKtyAgtIv/pV8Wj9LW1SNA29HW21BWUCZSM2ya/iw" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703780328880.1", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "session_id": "TEte05lfzGZ4bx9kL6DOqKH76pA6WWO092xx2WWgYXc" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703780329058.2", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", + "session_id": "JqADR+P6ZGGDQg+sqyw9s5kxG8TE1oxesbmNO7f1Gmw" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703780329284.3", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "YQu2YF0z3M0fo1BssO3S4R/xKgiab6EpcziBVpSVNk4", + "session_id": "s8FBf01QRTaEhcPQOhbl4WYKlSiU7DN9ywq5gf/8v5k" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703780329505.4", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", + "session_id": "OUJAYLRJH3nsa9wpEnLXRXDamIAV/Feb+NvmZp9GfRs" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703780329531.5", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "SKowG52ZsxqztGJts32ulwwQB5+lC0FU2RsPRX0RUj0", + "session_id": "h9VjeuxpeB/O1oFMsOpfOSXbJXoBiBrTBaBuoumwhVc" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703780329531.6", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "Ucrw30k/IX2gghuMtS273duDe+64MuD00LfInOGpXBk", + "session_id": "CnfXpU+E44bENt8dVpZSI5H31ThKhonnYHnS9vpOdMg" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703780329557.7", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "H5UCVlyu6CQ61RYfV6w+4DxVuTdwWEttQjzouFNyNmw", + "session_id": "bq+IrH0Bo2qXi4BQYTJuw9m4BrEpmfFzkGWVtptzVQ4" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703780329708.10", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", + "session_id": "aVoXbvcehG3GPOuvw4oLjpxIUySvYxS5+L5guiaq8eA" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703780329708.9", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!lfeeJrGldjNZsqCPak:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "xw5fcGw+fsi0KmCNa43551+z0a2+1w6L9tbVwOkWui8", + "session_id": "iDa+jgbsEzvU4wBu8afvl53bUDXF0S97hiOwwUL1JSs" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703790536229.11", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!lfeeJrGldjNZsqCPak:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "XIHKG94x3Ht82rKysAQTltL41jxqGqiKT+rw4BtYWx4", + "session_id": "vYERX3+wYot1J9xVFy4BYFGp1QBLQ2uJSG+GRIZyjDs" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703790536240.12", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!lfeeJrGldjNZsqCPak:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "session_id": "Lg+rMEvgRfigyCbj+1H6MkhERU0L08wcxJphsozl9HQ" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703790536240.13", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!lfeeJrGldjNZsqCPak:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "session_id": "LC7RXMmBl91nvd/Cq0MuFIXl7exQWngos8XmPLPJuUU" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703790536253.14", + "state": 1 + } + }, + { + "value": { + "requestBody": { + "room_id": "!lfeeJrGldjNZsqCPak:matrix.org", + "algorithm": "m.megolm.v1.aes-sha2", + "sender_key": "a1S+xfPfFBbrCteVaIDMtsIfU7bpzS7s/lLYFMIR3R4", + "session_id": "guI+q47guhEaVl6Jq7jiM/Fpg81Gb3TuRJa2QFEmVYY" + }, + "recipients": [ + { + "userId": "@vdhtest200713:matrix.org", + "deviceId": "*" + } + ], + "requestId": "m1703790536261.16", + "state": 1 + } + } + ], + "parked_shared_history": [], + "rooms": [ + { + "value": { + "algorithm": "m.megolm.v1.aes-sha2" + }, + "key": "!CWLUCoEWXSFyTCOtfL:matrix.org" + }, + { + "value": { + "algorithm": "m.megolm.v1.aes-sha2" + }, + "key": "!NvODNaNaQbJWulVEDV:matrix.org" + }, + { + "value": { + "algorithm": "m.megolm.v1.aes-sha2" + }, + "key": "!WXNLpHIsCohXpXsbUk:matrix.org" + }, + { + "value": { + "algorithm": "m.megolm.v1.aes-sha2" + }, + "key": "!gTsdSPqtENAVbnchjE:matrix.org" + }, + { + "value": { + "algorithm": "m.megolm.v1.aes-sha2" + }, + "key": "!hDqiQUQdicjAXAOEUQ:matrix.org" + }, + { + "value": { + "algorithm": "m.megolm.v1.aes-sha2" + }, + "key": "!kOjcnTaPnmhygqFtBD:matrix.org" + }, + { + "value": { + "algorithm": "m.megolm.v1.aes-sha2", + "rotation_period_msgs": 50 + }, + "key": "!lfeeJrGldjNZsqCPak:matrix.org" + }, + { + "value": { + "algorithm": "m.megolm.v1.aes-sha2" + }, + "key": "!pZtgreTWWrwvzJWfvI:matrix.org" + }, + { + "value": { + "algorithm": "m.megolm.v1.aes-sha2" + }, + "key": "!qzuuzZxqLjsmaxoxeM:matrix.org" + }, + { + "value": { + "algorithm": "m.megolm.v1.aes-sha2" + }, + "key": "!rqNZhmGvHENVXTtcOn:matrix.org" + }, + { + "value": { + "algorithm": "m.megolm.v1.aes-sha2" + }, + "key": "!wcorgnJpnmLLJnrqNT:matrix.org" + } + ], + "session_problems": [ + { + "value": { + "deviceKey": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "type": "no_olm", + "fixed": true, + "time": 1703693125289 + } + }, + { + "value": { + "deviceKey": "IiMDb65O1yXf5NojRUcuFqo46z5HR+9sUo85AvgLzRw", + "type": "no_olm", + "fixed": false, + "time": 1703693125278 + } + }, + { + "value": { + "deviceKey": "u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", + "type": "no_olm", + "fixed": true, + "time": 1703693124981 + } + } + ], + "sessions": [ + { + "value": { + "deviceKey": "+XWeVnwsM53WJKyc9YlK1DthttT9KgQAvUG/zmr0WRE", + "sessionId": "8sK87VY+bwmAXifISaX2Xg9RS/WkxXtkVdei/oDgu+s", + "session": "98r1axZxZme5C3D1DCEktDym6a5qGGaFqcYMQGfpqZRMGKv8IepZNv3syDU1mJBfoqBDhfGy7Seg/BNkPb+CfiQIsaDwz+RvTSc0v/2cjp0OxP0OlKuh1AjfcVExjo14BgEw4Vir6Pm8Hp0TzxCYeja00Q3W4S6iqhJ6QvYRn3y0XHiQI9o3WY5LkcC+t+zo8/0o2M+rNTsmQKkvFyQVJnGkoOl183JQaPGS5Xliy/jxCtoCRW6KjUh/JYo/8bx6g+2LrrMU3jNZ7Q0vIPP63RRTz3dnjohm05EPzrm/Ny37JTiSblbXtA", + "lastReceivedMessageTs": 1703693125384 + } + }, + { + "value": { + "deviceKey": "+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", + "sessionId": "TE8dwDqdE6WEYtZOiqqpIgQmYTAR9B7C4HsmoXJgkyk", + "session": "h+Kh7Wr1ghx/jJqQfxh2uDav3wzLzRakqTGcGUF4Oxa3kc1pZpaTia6H/hbLXXg5sfT47RGMphX2sFpRcVFQk/QXgDv5z24Di9krPKcDRbHCVu2ZdlgpHYVJOMXcxPYDsdRvE1281SOTCpwamjWr+4oUIGMNzSaEpZvzgGEBChlE3TxDPvmYguJYA9PK12mgyTOwTNwoj4CGvYlcYHzGliXT4p6z/yfxM7hCmTTuOJqDCkRUYMSf/Yc8wOztZ9TdM6Wmy8okC1+eGRGRM0xeW9LXjpvAUeqoJzMCvkaEwmQPo8o3qSevBQ", + "lastReceivedMessageTs": 1703763072134 + } + }, + { + "value": { + "deviceKey": "1QkuYT/03gzKvMDmKQi5slJvfXECt+ca3/Ue3Cj+Cms", + "sessionId": "UXXhR205e3LHfxTF2K4HsX62gDFQU5jZoxFecsWrL1I", + "session": "F2tPtegrPKM0c+8Gtw0yyPoQeJn7opKITs/SzFS0QH0uVT8aOTK52/N3p+ATQdWlN2BAsa8MGRXjPPUG+c5s9u/HeZKmpwSiqxgZ9DdbcFYuIy9wiOe4oV68Hu03Yr/vqb9LWPQMTDgSFi2z0u0OMoDCDPB417vztR6fzTE4rwE5HUHgWU1s/7tXcF26nMzeYHuhR8KmpAYgs2/Xt/hcSdsRsyjIVxg4II32gM7XhgYcmQBQewmKasChtmX4V3ihxW6zwib9VwcN+q7XAg01QJyQY4+KSh6YYDSC5j+0on/jhcrpIC4i95i4fFc2Wv5EAVBPB//6TsXsu0s49mkp/H0ZshSeuf/J8Ip9NWI09kl9NM6pNPlalVQQoimFF/FWOovJ8iGQmRpCMmTeJa5CpELZPGXNAPec/eSFqLnSTjyYBFHroaJu9Q", + "lastReceivedMessageTs": 1703693124932 + } + }, + { + "value": { + "deviceKey": "2QbxGOXsk4Q5R8gTgrTX8OFg+oQr3WbXM9wqVo+6Fzs", + "sessionId": "AUx9o1dajsn9aQdnOmQ2ADFv6SDz3L8Yvx1RiCQ5y5M", + "session": "S8lTzMeojsGp+XDCc7C/qPIT0iOCxx3+j9PWHhMLHQA4YAwIMEyiE8gBqH+mhhEFFg1gNVu0Ud0My7uCmZFIsTbM0Obu67pBMrTebqG30Sc1vyQqIxh1Vh2OI8FWSdsVw7+204CpZ0FhisHe4hyFLlH1I6IQRNpIzeAC4dLAgb8I0PX6xwT5TX36OzTDVuAsB3OpR9mT3LF1gDZa4U4ZgrTCJiHmA6a8Y3KIdG+y346Sjaw1IHpAqpLjUALCXfYqysE5Coe7cj4LTXp7FneCl6fGXDjSMmWRYkINo2sAYpYRdc+QltTqSQ", + "lastReceivedMessageTs": 1703693125360 + } + }, + { + "value": { + "deviceKey": "31cIbE9brvZuCKXcCItx55JU+Fva+Bq0ezSIrCFkGgQ", + "sessionId": "IUrS8PEsXQJUxLDfp5RRT6/q7VKXCv2eNRaNGYTGVYk", + "session": "4EEyLouJphenzGuc1y2grDrjUXelTkySnzjQNlPLkwdR2VRSHhYh+8085fIEDTdEUcokRHK2ICo6H29T1oFP0lMqIMxf7Be/ItyrHPITrYr77MsxhXu7QdP1YgPDM+Bfn74wjWDtIZUN50zo4KOr6jS/DrPfa7UJOAfmrkBUxUEZHKVz9ET5EWhZiB0CJCMh2xiKwAY369JiH1m/ZrH9zVrM33vDd49zixla7EaaEzbu9Pwy83CNoEk7avD0LkbzCiHLeQnCVPMOZcF5nCf0MyoqXPiQEB0tv441HWLCyAyAAQ/zY1u9Ow", + "lastReceivedMessageTs": 1703693124927 + } + }, + { + "value": { + "deviceKey": "44ztwj0hZV84CSONm6SKLlTPYyt1euwda1wR1BlxSlY", + "sessionId": "RpOrsL+92MNAH9j3ac/LL7OUrsNxM5kM4byJY20e9eM", + "session": "HcjcZ2de52MUcI/8b0DlP+CuaIGwrhOHs7mgXFrGb1QVV7p/0Je4Sup9CBAgh8egHE+UQ7STHsMRFDGM8uk/s6xLZpPieKa+btA3svOpwB0xubA+5m/ZxFdeefGBtTkVQroi7fcn/qi4OjOONQWWk/qmTKk0HJyrEfOk+VqnLCOEBpGvFQBNGDPs66DEoH4Zl3MDyBFGIJ1Zyy8g50VAsVIbDeoLc1m/z4V75j2zu4ma/3a9zElpwGY/GaPge/QCjZDuL9XHsYaT/ls/QcHXGoKgtDFLIqEUHp3BUFJfviU5paKvhritCQ", + "lastReceivedMessageTs": 1703693125398 + } + }, + { + "value": { + "deviceKey": "4o7UZbNLHEb6zYyXSJYuEIxilsaAlhEl07j6yzpTQ3M", + "sessionId": "o7DzxHjKKpFxomjS1wNVMNUFvBvcjNdJvORxu8prL+g", + "session": "ZfzumbBfzSmviZaOPO84vDldwap4YhJ1fxxYYJyN37NKlGeuAulKHpWUF3UVJtMcK9OLiSYxbApgL2kPYc0A+GGtr9BBmT1TwBXnOa433m3NV6rDv8YEREtlg0ifWycp7AB9PhVe/L6uhPincvqk608pCikQpLQmDpadSMODNhPKtcos5VvBVGTnT4Hiq2R7PsazS0Pd9rxSU1NnGUiMxKDn7YsviV9/UmPJz2D0Z2TAVTp43M2NW7BtYT8aHrUVLG3ee98yw+6s31i6XzHjrfeXodtQps5D0LYB+MV1ofKRkeDSJ1FjeA", + "lastReceivedMessageTs": 1703764371817 + } + }, + { + "value": { + "deviceKey": "63T7anu0SxzQJRFnvmHXuQuSW63plQdt00phE4lT5HM", + "sessionId": "jwccLeV5emqQMBLuy5DfmjBSbBcTnAIumIIkOUvSPrs", + "session": "c619GTuOZW3yRDgCFAX3SR/QRrp13Uzk752BCjFgF342nAoJ0zdd6tE9+Xn6XjCeRrgzXJQnXtjoWw5b6p0ttFrFq04W0z4H3ikOHSyQSoM3JDgIIRQhuMtMdM2auQsajozBJv17j82npClAVhwwgMuHy/xs87A/qiRUj3ZZKxZQIjUEhvVhzkxT99U/UTESj6spBp2iNIzrO8pFM1U0zjr3wnPLcHW+/7A2fbJ9aNfF/KH/nuqsw9rypAa2awh0KDNNnIdQEhSUKaLml598ItGNq666z4fAS5bzaWqsgZyV6H0v/YFL2w", + "lastReceivedMessageTs": 1695935986094 + } + }, + { + "value": { + "deviceKey": "76YwqK0pg4oc9XnCnyVeHV9YVJ6GmQNHwWoGWb/4Uxk", + "sessionId": "UIavm73Jemh5K1fFe04ID3Y3wpCFW7qQsu5OaP+/9pg", + "session": "0EZeK3OpdrDLzsw8NWbh4ZuG/0g1H56VMqt+ve2C/AHj5ZZzV2doZpl7IvUDo3dijN7FbdsZnGZS8ulSbxVZoNTeCsn+wckR7v7jg2Jvqx1SCeBTVGYc3rO/memGgaPjbg5tNsRJ1+IQK5cINhJqHPnolMQHOku9LYU0teu4Ary5La2LkcCpmPLg7kpAxVM33Q3575rCjhnKoFp9ejgRDslTPM4nPRztnnTGaltmxYFxvXZhaSVNyZ7jjaI/6CswzBwI83r2CJy0Aa9J556LEfePR3ppfFq32gea63uNbK0ntUCJl57QJA", + "lastReceivedMessageTs": 1703693125389 + } + }, + { + "value": { + "deviceKey": "9xgsy/1PrB+CMNlasGbm8TdcQdfeIZ3Aqt1M5u9uFj4", + "sessionId": "SBOpfw4xX592qiRRC87rM4cFmL6igiS97Bb4vKXbF7s", + "session": "Drm7c0xZHlI8EMZrgy+SXhDInpYZQ5b1J59SUbWDl60ytV10IwMBBKe6fc8TkVnkx80AUCA6Eeej3hnl5jROOXQU5nmx5QDOVsytzSEG8aGo/j47zDeyM8mXKoXdHdlJeiDLWGDUzrog2aDFVDrUmgnHoCRV+a0lzy9xH/ce/RjmRsTOhoWCDl9UDa0OrkMRQe853P/iCKoDyoiPgaUeD18tD5T6hJd9TRkzYbao5QUM05a+H2oqlpM7W6glM7G+2kc3FClf/sZXEY9W/eFgO6eiSXQQbBZTnGbNWm6iG4fx5mWHy34TsVq6kyDRoSSiLkv6mcz324JAVRg+OU++pL8po8vhZH6BenvMSzbN4BNh/qhio298RE/9kvjCkoQ5lAlmJkThfYI", + "lastReceivedMessageTs": 1703842342024 + } + }, + { + "value": { + "deviceKey": "BRje0HJXy/o6LLFW6ZxgSJYnOOZLgXsxMoa9+rh9wDI", + "sessionId": "eMH7SXJ4jB1qASFiGey/pfNNobjKRdacTJzOLRntSi4", + "session": "pyxnt5pqDmYqtdSXCtWGpEVW2wjQf8pxN+uHcfokYxjiTqtSsFC4msyankAWk+FD0ndIQsba0paLvd30bmu+ee7ag/22j8H3YrcWPpQRtqwgtDESF8APQqLb0YWwkVwCw637GVniiGJEqnvoVtk7uGrw8k0MOgQqba7XVN+VhH93IhdKgbUvzVYIUMeIGPMQNZpq4a5CUJqVsz27hqhtqOw2j5nYLa660d2aVnUGudDsmeDtKBj/wN2/rBkddQQOuVVDz2lrkdGShPk3hUE47Lyo5JfAfFA+8jVW2/gm2gQE9JXZyAYu4Q", + "lastReceivedMessageTs": 1703693124940 + } + }, + { + "value": { + "deviceKey": "ICXPtcBcycUazdhM0BM7VmcbInN9Te7dashv8id5nVI", + "sessionId": "Hi3rhcksCQOiexN7wM0uBpYnSc10XSLk+IJu0k29Phc", + "session": "4aWktRXVNm/z3GNjOUtN+goIG8RSuJZ2xSmwc4mDXsMuAIVU8jJy1Di2PmRcwxJDxhDmrZB6Y/WT8TWQr6rqZWnOhJrbtb2SqdlnSmM9pSb0Ss90jLkS/Qg2vVdwBDnemtQSRTiVUB10hKLG3/mmUE3CNiuoLY975ceNkb5DgQ534hFm0sBslzJ+0azyq9fpmcv3ZZzBEonvG4kMhSwg+NBaymyQxs03V12V6VaCsJi/3drS2A5PC+4moPPAzLUI9AY+qdcKPJWWR79A43ar5TdRPebpdRbKxxyW2J9uYtp0avvg0E3QPw", + "lastReceivedMessageTs": 1703693125365 + } + }, + { + "value": { + "deviceKey": "K6pUAb6OgssyGzLqYcZQlskIxdwNTZu0xkb1lp2ysQA", + "sessionId": "Pb61qNOx11Qtk6BzcnIC6FR9kdwrJ7uGcJ4d4XuGrLw", + "session": "9FurFRPa2iCORpm7j/ZFHlZID4Gfj5C8jwkARvXuihx0AKT0yPcP5UKk40MBq5LjLkuk2GBKMHGqy3+2+msiGw5ZiuaEICb4KoHaC5eBMLAAfXAFBMaGuFLaNJpA1P1k1J2C1dKLcmHpM1r/T14B+sMMo5Qxi/A06YwYi9prEglgUSuqNT8Ch53+s/liODX5ZHPFVMKBBBQLTwMv0SBiNiABTVuH04KV5l0ubuROrrA2dERZt+6hm5Zn1CWGWuk3u7whs4YEmhZDA/LKolniLWWhhDNvcFLhluluMDLqRm5L4DTIJ5Eq3w", + "lastReceivedMessageTs": 1695935949222 + } + }, + { + "value": { + "deviceKey": "Kb+P4tSZMhmd9Ms7N0aKSBWvRvBQrEuoYmpsFsEkjRM", + "sessionId": "7jiGW2hTPlYxx2ODUxJIrW5s0L5vBdOR1kaP1iJIExs", + "session": "oAmUvYpSxYfxu9BzRM1tEzGiQ4R5s2rgyvakrQKx2gS+nKftjlqar4fjtYy/11UC99RK98MRUQ3VUuztdx8lOcF2jlqt6cH30mYLf5yVluH9f8G8IuKisaumJMWof/DKJ9AT9kgVqNxu5BTEa7Bn2RvqsurBOCx4jwQjhpePkytoAyjxBD26EERcxfr8uXFpaGOI096klyPKFaxF32/zwB3VBwpnGYY/J2mMa/Z1Z9uxjzw0doqrnKeFDaIgz3kEqJela5ucbvw9F1QSZVxmEYtKBt5jmtY0o+LYyP7pd1ZBuqfk4dEtsw", + "lastReceivedMessageTs": 1703693125334 + } + }, + { + "value": { + "deviceKey": "KgTYJ86haurjTf1uKseV+HIxQBJvbyyrS1BMUv6dpyU", + "sessionId": "SrCZCTfKDt3+VomCfz5DnEMvoQffWC8v9htDkh/sCIY", + "session": "LPUT4BEI+wn9pvZOck3qjVyqpLcoqvc6D8HQ/8NLKFNExzkRXELsSt87tLtxjgg1WwUoOlD4EUNx+JkN/pZrQNCAFW9HfHgmtGzIX73qdAkV0IV3UvZ3UsY8/qDKTCNBQkYVt9QK6g4kIw3mWi0FAU25aJEYla4FG/BTc8CuuQtHNZ/zLKsJ79n/ptp4lTn0SDPBtKAdB98c4M84d5lxWCkHos/JSW8TXncASfQaldM+mMATvzaKpursETb9gzEJQBsRNTK4AqY/0gy34bMzuzW9S7guw/GR4tdDg/L0JfMOLs8TFssJR8lgPqJ3lAmbUZiqXvAoL5jw99dJzJsKINhVHrrVDgRqoA6d3vcgu5fREQj4jHaGe4E+tItc61AYWXtuIVOM2boUWGYkJMVI+cD2W3nj7ax6GCBlscnZ84HLX5J3Yg8afA", + "lastReceivedMessageTs": 1703693124890 + } + }, + { + "value": { + "deviceKey": "Ks7CRbiszRE6r1qParXb921kuyb7rXgsofAzdERquzU", + "sessionId": "+2LnCHZ5HwyIzA4dZdUsRnhtus+4NUJT2aSsq7setNU", + "session": "86c1Ax7Pm/DqyhpRdTC2ldVRDLTg5Y7PVeMrV26P3AGi1i9lmDs27BHBD/AUR19dK+ZDstTjPPCC/PZGFpPdYCg7FRmmSkSYprWiU/HQDDb5Qyn6j0Y1PFPVXP0uJ3ZDpZmECw1B25VB+tZGw21lgIwoGOl10yt/vWEO+IkoSZX6WcKo2xwkHLBZZIwVhxtWXpQtiXiHeGDeNkzUrlFIC11q1iPHbZm7kBrqdysTedE/0JTgK7L4j/Lzl+AS52cnyxjEYxTmNpedDdxTPy/qOnEwEnMRET46ZoSX27GwrMu9QzWdnrwS9g", + "lastReceivedMessageTs": 1703693124917 + } + }, + { + "value": { + "deviceKey": "P+hMAaz3lio3uS4rv/7TfA+DPUVgxzkwoEz9Z9Ojzj4", + "sessionId": "ODZVoYifRxMNr5rwKJEyXYfAxmnal/jGhwI4gO+bkus", + "session": "DORdJ6t4CWWNajsx+IYaZjFexA6VRX2w0tbxkoYFUXDqiliN51NHMoes1WL/yVZr73hpJNnCAFlXNuStJnXMVOHGgswCizc7OcAiNloMRNa2Hj4Sx+VzcFWqUZjlVdB+0yN4s5+TJqVOpCZ+OELOLVcugw1tfV+o6RhxZFVuCe74kdbjDnA9VgZWiyNoxy5D/R+VBjWrrqs7/62UMDoHEUF7ez8+AcZiDRYTYjxXfUZf+5AMmjtyqldij/BooH7BEkIKOVXofC3pVl3N1vsdWf1BmPR5OvYn167vpBe6/bXEz2Zraz9cqg", + "lastReceivedMessageTs": 1703693125387 + } + }, + { + "value": { + "deviceKey": "Pi9DRxi10cl7wyDpOJ03iYhpDuH828/O8yrYErbPW14", + "sessionId": "atEU4Y2ePZb5iMTtGmXEm/q1COulHqi4QYYcegBbnFE", + "session": "HO+ROpgYP+7WBepZNSQeVLbALm1q9z5WbnE8VBaN7QBH3VOdCAhBjLRBXHFTt0jjTb2KOXpzAdAlmUqV7YkxXtOZ2KplEXXJiumG9YjIV5HUJMaUpUv1SdgOGXQhRwDIuAgZAXVH1cxfeqq5zSVAmaEy9TCUluF4doblFRLp4FzmMkl90LFRPjfLN7IXyOPu7pLfz4O1SoulvLVPEpMIExObz6mo1IRUVDWXB2pGh+q7FWtp4ZgDn0QwiSwqDopuVTMbthk30+Mp/rq2L1YAXAARsKwp1vdWqOb5okjAdtGRydeAv4tZlQ", + "lastReceivedMessageTs": 1703693124933 + } + }, + { + "value": { + "deviceKey": "Pog36kjaHKsGaXJP4IRSCOGco1WHId4xBLKUqzVMVi8", + "sessionId": "fFHxCNqb9lONeEEfIeIxQnYfz/VEtlaulYIFWmcpRNw", + "session": "hyaNhdDgI2Cedgb3LTfEHPO2d4rYqaP6xhFIbsF3upE08vCWNL/TEcf0bSuvPfjnDRU0qLAQP1qv+MFvyTDhPGY5StbuicKYl1vusWk3cvBdUApvNtLQZmyansVlqgLKTw2OzPtJRAzGLcf3xQ+lTtjk988zHtTB/X1Q6Nd89mtrDMMT/LkWfX+AKhKhcMagmYSlYkx8H9FRPv9Ugk88P+xwn3LiVnBOTxUMMs+2xMs/y0DSlgpfgAMB/ZkySogQTJO9GwMuSSpaI3G6wrKj5KGTYB68Q2pSM5lNeny4sK2/G5I1PWDI4Q", + "lastReceivedMessageTs": 1703693125401 + } + }, + { + "value": { + "deviceKey": "RhqbMrR2qmjyDPGh42dsZCenEHZXQdGjeHZXO8kHc1E", + "sessionId": "Ej2wXNX4y4aDE2f747ZczinETzvB96LwQ7BU1Bc6BtE", + "session": "Rg+wrijukNBdLIPb3+z2mrKq8sNGVkBjlAs4ueddMD97K//nTo4PTghpDqFadV5n35xF1OZlxqc6qTWDzKJFfiWJpXgDgdgJXm1OkJeBBibt9wCs8eYsppSH8nUPkH0x50uNwbkDXJ84Mtx5a4LqvjxjcdVSN6MC3CyTq7OdT3VXHHfGs97P41DmDFWSaLQ065XXpVtewGE521w7MPIFKk7txj6w7jdGXPF22bqi4dPVa1/p/up4GwEqYdDphMLSqQd15gcKZl7/7iaiPPpwN1pUKNVUCkVFJ/vPIicP4Z27aB2HH6qutg", + "lastReceivedMessageTs": 1703693124847 + } + }, + { + "value": { + "deviceKey": "SKowG52ZsxqztGJts32ulwwQB5+lC0FU2RsPRX0RUj0", + "sessionId": "D9gS+qJBPSpMFaxDsP4AapVTB5JNeymghYP2XyhP/+I", + "session": "URQakcmMc1kX5yWCwHTnv/GAP95ApqtWDzR0R7gveRAnsiE47ACjpWdTCStkib0X8LxtpU4G5XmV0Ebw18ATR6Pi5jvHbUvrYZU3hdtUsJAnW23x8ETJHsOe0f+IS70eiIgmJGkRo1pwz8e14rfJbMkT8eMkpegcsvV+fZokw6wfYO4/a5YVgsbkEK5H56xAgmqK/WbMEdGV6WrcbXEBQubEWu29Pe2GweQl9EZ0SYpLLf1EN9redlcFZ54qasv54dBPLrSSQUtrOV8zX6POLumtN626Nq2cVc3lrvrIXTf6B7H8EdwGkw", + "lastReceivedMessageTs": 1703693124898 + } + }, + { + "value": { + "deviceKey": "WAkJI6B+oYDZmhCOdiQAH2xUOJZFesDuNskPRt+ZHnY", + "sessionId": "tJY2W7ueaoYtzI+JK6EirzVfDryOMDhjB6anLPy3NAk", + "session": "TTkyJC48ZFahtZUcGyC7zSlrRUQDYvvXlDinor+DoorO92ncD6y3VqtPJzFy74iTdWxmFtOwSPffDhOW52cR3j/jPok93BTviX1k3HaSQKinO01csGeVOS9dy2ZB3VDWpCpumpmpFwqs6+RL7MUcQ2LcxKk4X0jwzjEAewlVUWoiiIvx38AOewYY3hlNhd2f+0NasRZR5UFf5LHIeL6fyWEUxV1Fhq8Wow2TsAZUG1wghtvLJT+OWdzha40nXX7LJN5WGGzhrh9f0/10ekwe+V3rrUhjMtfHG+8ybEjyuOCbhGdnsQr/TA", + "lastReceivedMessageTs": 1703693125391 + } + }, + { + "value": { + "deviceKey": "WrX63a2ye7tfBJv0Flq9DU2RA18L5G9S2pdHPi4FLEE", + "sessionId": "PgYkNaqLxVUaXEu/63HO9HtnjboU+/KObvIkMo5xFyY", + "session": "xHfAzSMAukQzdjA4geSyUmw0cyKOS/aAjzRM+bv8MD2FlkTcqqeC4p9JZsJ9FfXsT2i4q5ZPijngqJHKja5BoK8ZNCYKTAj7g++OkOqxCXVX7UxmR7Y8SzT1yH3leVL92ogJbGftpEUS79znKLZ4oQBe5svCNuGaVLCKaNNP8HCqEVZEhXslIm4DGBddUU9I+NkONFS/DhaoFYUS5io1mp56Tn8usOTzmnr49Ca8dKp3fxNUcrR5RFTHFIa+PGQwutey9mXm1EBPN6shaYWm4UySAPy1tcxC8N3xn+WJxkdxocwXfaM/kw", + "lastReceivedMessageTs": 1703693125396 + } + }, + { + "value": { + "deviceKey": "Yv8Lmx8CfXr43oNX1Z37gf0GiCLG6nqEC/5jgzQP42g", + "sessionId": "Q/pY+HPsJez4cnLTHyzmB4J/yUjeAcLUGT8cgPG4w9Q", + "session": "4u1QY6Nl6SnapO367wSEK/qOXbg6dMVMtjKX4bGUqNJMM+EOG8nMrcSJkRNrUzxIS0xtVWxLCd7p1qpjwHTIPmVLIMbMNOBsX5GSXECklVR5ItWQ74dgAd2wgPoUwTVVx4SGQJ7YQh8GBIW/AfX+g09RTLBPB6QBmkPeTHOMtIXNlrWwsVO8ES4H69qIVmJjK2LolQbnPJBcFFj1GUo6xez3TrA7c2MJuFPkPgb4F7HDA+lXw2WlEzTbfMyh/VpxUTDMBlYbUmkTHhm2toPXpHMYDthX6k61Q9AiKjiw+drKLzeC5RNL2w", + "lastReceivedMessageTs": 1703693125394 + } + }, + { + "value": { + "deviceKey": "ZRlsz11oBqYFpA5jMC9BppOBaUzI6/AqSbNInFEcyBE", + "sessionId": "yPADrq9Ykd9oR60uYubmWUIjhjm/dGikYeM6y1UrMvw", + "session": "qG76i5GUIDLan8wYlFqwTuNjRlKkor7FK1tCP7wyk4qYEn7wcM7n7IlNCXDW94tS2v41zBGQAaJI/rABwUi+o+XkQGfajQU7Rgt/fW7+cEHELyyZXUT9JFF4zWtsuKBik/DoGL1fgLOeQFhQaKQgJzZC9VjALtoYXD/v6qJaGjRmTQmm4ZL+m/bUixFNMBHTqtKtTMUhDX8Z+tBTW8C8Q0U9xFxzHRMAVJ+VsoEOQ3lKWuXymP0bgrvJVI7+ogky5oQbV1Qcavgz/PH1qEDYtAbzdnDZHFFAAEORfC9qlgW7b8LCvNnX4w", + "lastReceivedMessageTs": 1703693125326 + } + }, + { + "value": { + "deviceKey": "b8g1RzK+ilI8h7N2amMpbWZfJj3OW6Jzxo3xojCTsVE", + "sessionId": "QMxkK4rHSiflv+qv3QTXQTX8L3FAD9v5hLlFQrNEuVM", + "session": "e8lzvmrajeWqzDl9sff+moONb8amnen5boz4vu73rmTOTMeVu+UcSylAbke8qJ+npcG2BXiBmZ5etrnM1owaq3KapMaSqNaPHCLPWQaUk+ax0H2rf0i0OO9Ph6YVqu4HX0PlPyzaJlOHzd2gyTu3pNjDuGaa25JJO6CZ1a+dv+doBxF3TAfEtbdjJz1ch7kpQtOvdVoMTiIoSHxQURwEOiyZ8LfUdrBRxGs9/6LQji/RNaeGL6GQMUevQnzrVSkOCt6yJTxcgqEnF059YBF7N3rFcqOrVfe2zMZelepwKYOPa5pTgkMGhA", + "lastReceivedMessageTs": 1703693125399 + } + }, + { + "value": { + "deviceKey": "dl4ygF4NbLpDkVOZZBGYz1Bwj7JHk7GVatDT7qavo0s", + "sessionId": "JyX98mlARYKgZXtVV9wOGk+8N8okvON1l80gUICnrsk", + "session": "YaZm5VUqyURFUlTSWfUTVB85ldx1IXR+/xIXraa6PIgGeUsR2JM0HAn1hBlQYmjngmDG1sfwLIoj400cKyy5MxDbuglkpev8I/mv7XfOekGQyAbxfBYBP5iCto7jv2clYFPPStH8jKal5S1tZ8bDNYVAqjMHE2M8jDiIIpe/wp0KaVvhWHfxttofRiU8E2cPTIrhhd2VkXD57TJr6beiKJvKOhKLBkajFgu3n3fYixO4sJEazoo35YBaIOU/PuNxKDMAigQSi5wg6avefI44tBvzsBYwrsfaOv8bIXhIR67UV94N4yZgaQ", + "lastReceivedMessageTs": 1703721420811 + } + }, + { + "value": { + "deviceKey": "eMBHGCpDlTlosCIb0g/BZf/WzXjIlQQO+NuWgjTOh3I", + "sessionId": "zJrY7kkDe4TCZwhSmtViMznU+FAeX3gw9Q8q+mgBn3U", + "session": "cXt8EVLU0N9XaI465c0RUShI2HPdrE2ehleXuGKySSkXc3IMqPZ/UFw+ow7/eCfb/C9yzywI4NtO4ovtfcqn1m9M12dJnqRLNCVcXKu6ys7gXomDkVwa0OhS7Bb283AL9wiu8nLvozS0tT3s/alodel1jsaPo2Y1Uj1xlKkrCoGCQcTQfMLVJo65ljQvi9XdwP5P7eBQq9wl/DMHj1bx9NEfZe0nZDxp1a1fay2Z1cd5sSqmSoqxhxfYNnn/hrwx3R9GAaTlWpJkIxElq+noH/RI8HcLoUSrQyaxc9IGuyyATVZNZMEVng", + "lastReceivedMessageTs": 1703693124894 + } + }, + { + "value": { + "deviceKey": "foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", + "sessionId": "BuZ5wSD6NZQ4SLmATeQnaoX+Xv5MrtYwk4PyZPK4Sz4", + "session": "JTLjo+nSakUIjLphO2LNUHGCynDDMS/Jj5O9uKKsOOIfojmQRLIDoXIhhQDknykqw7SEOUxJFMvHI0oqS3F/Xo6XokJELoClgirfNuTZt+mEGBPT18iwFkkqGxSJJ1KaDu5G42FxQz3cxfutXz5xYSK+eEqjnIum2LbvP2GZOQChCAxEdzD8Z3E0ePXr24DmRIu4VuuiRVgcsI+J3WuWWZHXAOtA9/q2aXKwPfeAZk3TTuwV0lqyjC8AMH67BDR/saPtQZ3hEsmq/3MjdFB/XVPz07xVLznLi/quE0cfcmWNlQr5rwCsVK4mCxgeIjMw6haiIn6wq23OscKDgrWN7JpDU9wbirzYELj3b2QQPtPIqtihhhpKDimMxJP8mLm2XlFcWoJSoUtxYVe0TmnbACOzMqaaAkFuMr7Y+76QOf45kyZN9xwKLItVfFpWiDj5Xf9MuYHiI+4KZl6otyFbUOZxU1rf//2V", + "lastReceivedMessageTs": 1703693124916 + } + }, + { + "value": { + "deviceKey": "m4ulJfgaESE1XQOQ5qqQ2ks/qoGWh/3JK4Z06EsD9lg", + "sessionId": "NaTVUfCYiUtxfgcQQAIx21rmjwFmrql+owAN2WwLuQU", + "session": "vg663UTIFCSjdF8z/hEc3rc14B4ZLVhsBtbVDAkCBoTCtYQoOmexWC+qbwBhrplzJtloP+95YYdkUdEtyZabArJKXlLFCiVZbV+QTX8++ys2twfkBi8B/d8namnArqEO3cYAIiDqtrdmy1uV5JQ8LS978oValmYH4e4JJI5W0s6Jg+obdO+zwsU4koTo2POmS28j87y862QLg3bf9kZhcaAv98u6zHB0EBvTaprJc/i7S1bFoz432zWjRUI865gPAizF551kyq92WrTiJunPXKBqLuo781eC9MM9uQq6eVHZG9/foKi/LA", + "lastReceivedMessageTs": 1703693125378 + } + }, + { + "value": { + "deviceKey": "r5ri9JjKE7uoPUgs6aCRbiiQ7uzyyV6Eeo7P8FIMGQs", + "sessionId": "45sB+Cc2TGGzKB7KJZUQqmrWsutj/DukMPpSe6xGFsg", + "session": "Y4J/bb9WQ469U54dhxQau/ph4wiHJF4dwLcUQ9TML040RAaevcGoS5z9DwmH5hVSNvVZBeOGD/ifVTkyvuN0BHRRV2+CcVh259bJN8EYP+vxQWECB1oRD6vhPpcjpPTGRTrt15Pc4gZxdXbH1gaJCcOhPP7xxjqdSxX01xcmjXDZVpcivWhkTm26YMmc7Ee/hAMcHxvd5Sf6UEBGrXMf2u3zkoudVIqXTHRl7iAyKW948Aej1rbxkZ/eQvxVttaa6TgEjq0NG8FmceSC43b02So5QiS1qv80P+g4G5shb5AXQYOvrhfcqA", + "lastReceivedMessageTs": 1703693125404 + } + }, + { + "value": { + "deviceKey": "s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", + "sessionId": "uHTg/GQH/qTy9YYmzEcoC8qGYsTxfQX+59m0cDsFQ6w", + "session": "ijeVVh4vyto5hXXPNcqwSQqh2+Oq9QBeSOTnncAji2nAAix/ihbky/iXw8Mjnm1mFKeWz53lP9gwDVKnZsGbzxcjsaZ0b8J4BaKpMLoJb/kEFA1KkNHng+MtLkgCpDerD7YpsNvan6nramTbvUSCNtdJlu0/hjOC0d3mGDpiVuSs5les9n5xyUhdy7cV8zZbVwCUaGZtgcj79QuIIpHfUsPXN/1TVcddBl9C2p8Srd7Y6bqz7HIZowdISaDDLqUsm1Wm1rx3cpq/3fKcY6EWiQlCTr+IYapogOb5jBX6dw5viGIOZff4wA", + "lastReceivedMessageTs": 1703693125383 + } + }, + { + "value": { + "deviceKey": "tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", + "sessionId": "E3dAmLgD3/dDPTDMtPBWcDsCmExbHb/h3pZW5B7NsT4", + "session": "glL6OFN3Q7F3KlWO+klzoKEN0bWUVIIjrUaTJ3UwHQFku7MmDIeJGYP9yfoKotiukm6QhmXqrqmlc+PVH+oNP5zEMi/z796wDO4m2HXV2ZHHZhSdEaSQYld2tFhvlT/EwovX6lhdGzn9kz+CXzHjlUOwQ9e1XovzbnZK4PiJbYw39eXpaeCUU3TqxFaQO7h56a3F3Hz1urg/Qib5k39+Gtaj2IUH4MWqt800I9tknLUNRw0qLVJbi+mWcq0YTwSk0NSetF5A1bgNuja5tOY8JPdhvfkb5l+Udfb/91VtTjRUEfihzbkgLw", + "lastReceivedMessageTs": 1703693125395 + } + }, + { + "value": { + "deviceKey": "u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", + "sessionId": "TDlQcXGlcW3FCTLqy3dASIa5cvaRw/UmfwacOLhGlzc", + "session": "dTwoIn4dzD1hPfqaMr0qefkkgOcWPsTgqF9b0J6uhE8Z1kepRg6UUh4F9Fg8MCRLo24L1oWlHfvhzzBBzNfwht9AAxg1EJ6gQ9OsTQ4VomrJvJ8dweZ3CLuFW210N/sSIHG2p3HuQsKeiP2atIAGkFowqsYu89xHSr/tJt9RWCfhbRLblg0FB2f9e8UbWGfQnsDjRBbZCfQbxyW6XoMpyDAU8Vz0wy6b1CmGB/BqMUCPE4fCeY3lihv5A3vxXpn4266EE2DWZdQHWfEbX3HsFEssq3NbIFZMA6M/cNwkSSwRnBz2ZL6At19um91X96/16IS4FXqZPod7UXyf9upR3rCmjPcCj3WfNzrt7Gj7yAz2XMFcuvULfaPKo9Hy0YHG9BjWb5UwO1HF9zVNdG3nJVRLroP1UjjgD5yfCT8ZVjjFag0XhGSucg", + "lastReceivedMessageTs": 1703693124909 + } + }, + { + "value": { + "deviceKey": "wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", + "sessionId": "GhzvTFQyN34zU8XN2vcoPKvwiM5Z4oCE29iv2PrMHSY", + "session": "a56nzF50cLL+OhFxTAkgU1vEpZDibOIMawxq7Jop54H+q/q/6AdpnGKPrO4aRDu3qTZilCF5dg3UGKjFp+2zXb+brrU6jNwlpfy5bnW1CC11JOHHqP1Wm/57GWHTDIeVUjcSifQHCIvcp21btOGRiszHprR0SsnkUfAJHHbM0sduZR3eCx89ilFtK/rWxPVm+w3H+Sl/o1wKnxoHmQkcr6JAXML8FdYp3Uk4O2oY8JkrVBnn7mwKNXJ/0KzKrWGXibHOwVnkFgAT3nowTkP+oo7t6DsPgt/3wtDmhD/qQANCJaZ0M2HCBA", + "lastReceivedMessageTs": 1703693125381 + } + }, + { + "value": { + "deviceKey": "xw5fcGw+fsi0KmCNa43551+z0a2+1w6L9tbVwOkWui8", + "sessionId": "ZPQfyO51o8BJ8DBhNtJnoDZXTX5yCrt+Z0GizCRyYcY", + "session": "uOrohIpjvUKa2BWD10hsU2PT48j29XMP+AUNDXw/Lw3wmtYUEZxxZ0b8r1LBUaYud5WleKPYyUpiFrsxEs1RYQgVuLd3MtzsCsQyj+obx6x3YNvMsMavHMeegqGTWO4/dNa8XUFzh2QpMb6MyMN9y8DT2q4dL/GGPiWtueXJj9Q+GvcX9j1MYfBfgODQeJyJ+XsFy2JoMZ1crOOpWQvD5ekHS4t+u1NeRl8aZgOG0+QmYGxxp/NB3AxJNfKkhlj47Gh8omBfArGfI5eF8V33pzW0H0MvehZ2MoiHX/Huw1S29+J3YEe/PQ", + "lastReceivedMessageTs": 1703693124896 + } + }, + { + "value": { + "deviceKey": "yUwl8YCTPL7kEb58FQRAVf19I2wAVt2o2Ftg/VOG2m4", + "sessionId": "VSSLTgca5TYSxpTUoMLHx5GKdt2joiy4WbKlFbfa2j0", + "session": "X9nICG2kPYydWRUs9fpnMW93R6SSu5DpoOIn3NElxHAJUptQjFKz3suvhVrL4OyNDgCj7UxC76RRpCqeJtNUIaYPArTAhVqXhE0D+lHn7O7YfNzqzCPVeLFRMPre/zqG5PnA04cLMzaFlyD4IMIMYhA+LZKQi+dWl4h4oBfxxgQ8uQefXpvakKMq0Wx0IyzXVv4eBDG9wH1dRzPAOZgubquG8lMpCBkZmf5175mAi407nteWMt4mhzcQDEe1HgLaYXS3dC29VyJQPxR47b38r3qf5Sfiv/SVYCXM52Fg9PE6PfYBGx0zdw", + "lastReceivedMessageTs": 1703693124903 + } + } + ], + "sessions_needing_backup": [], + "shared_history_inbound_group_sessions": [ + { + "value": { + "roomId": "!CWLUCoEWXSFyTCOtfL:matrix.org", + "sessions": [ + ["yUwl8YCTPL7kEb58FQRAVf19I2wAVt2o2Ftg/VOG2m4", "hF5Lv4Ag15/+PDvRa8DKRucRM0I06kWZ0zOlUjqs2KE"], + ["u8CrYar8BK7Emb6EepKjzNDkBd9hfzRuHZYFx3/j6Q0", "uYucqRCzvkptky+GdqPRqPFQq8tVvOQhYQ7hpgvcLuw"], + ["31cIbE9brvZuCKXcCItx55JU+Fva+Bq0ezSIrCFkGgQ", "cMdqJC0pehitCVEE0j+MXV9RU9WWi5cM728bdBM/Q4U"], + ["ICXPtcBcycUazdhM0BM7VmcbInN9Te7dashv8id5nVI", "KR+RdxNLI7QqSX9xANiaoOVe7KTHvCKS6mWOCk/FMPs"], + ["foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", "WQyMCNTIFO9X3gmbTYTsjGwDzTAcLtFQqdv2t0nZTgU"], + ["foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", "KKY/ByTbXoGeSXZaIEbrYbT/5BTdza02i1zy5ToYA2w"], + ["foEKlDcavq8xzPoyLjERsjuMb6a6hFQ4wMHfain1kzk", "hRI86U6AAtInzovrA/icjFkvMVxR4j5K9W26twB20MY"], + ["tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", "kg61q8b9FXWVCkKNlloGydzX0z4UukiiaitMw87guok"], + ["tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", "l6KvDCrknpGY2cZNOxoiA7u6xRBHdf7TfctasaNObnU"], + ["tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", "fUZiYlANfUexd5sJ/2W2H4Ki6H6B5uC9qu4nhBtcvdM"], + ["tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", "SRZvhQMLmQ7Ol0GnEZZZeFxxwnBh4xdKTgnKU7P8X1E"], + ["eMBHGCpDlTlosCIb0g/BZf/WzXjIlQQO+NuWgjTOh3I", "mZQxzXwBl7854eWnPYZe3C3j581XCVMvO6RmFDx51Go"], + ["+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", "sxbBTS0E4jlv6V7S//BDFBIZJE5sRod9l6/hHhZO++w"], + ["tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", "QcQ+0QZiq0HlllazlEudzMEF/Cl2aBlIGpqgiLm0CiA"], + ["tkLjPNLl+EIITRNBqxMb3HkQCUwmsb1qhXXoxt0o+Bs", "dr5vZIuTMSrzA8jvfoQo6RQaQtNj2x509f63KFVyySs"], + ["ICXPtcBcycUazdhM0BM7VmcbInN9Te7dashv8id5nVI", "FaUOxIUhj9BLw7GgJxAShVnKxS6/V7kmty1APIhKPrw"], + ["s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", "ep3My5F8VWivPx1eA+MGfBXeRFq2Ryw1BnaXPBm8ln0"], + ["s1leivvtR6D90cds8MgPTJArAXptnqER6cj41OjClwY", "XOYD9nN6eEuh6rwBLHJGhlKr3j8GZPUSVr0Roo3eFXI"], + ["wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", "Lg1i5AEOuyY5tY8OLvn2HMCUOBM9W/NNjftpw5Sw7g4"], + ["wjb2fm75UoN0MGD3Uw7SUMU5EjnYzY8XL1ZGrjqECxQ", "rs1GlF3Mb5BGdo2ptP+tP9rOZNuHxmFQt077CUsUaHk"], + ["+XWeVnwsM53WJKyc9YlK1DthttT9KgQAvUG/zmr0WRE", "q9pR1wJGS4UlelrAZhNXUcTlS5Qwgnf9ZQRYlAIJehc"], + ["P+hMAaz3lio3uS4rv/7TfA+DPUVgxzkwoEz9Z9Ojzj4", "8krOIN5Yj3SN4uy4FiPL0dq9uJrixFCE1jbLN+a5Fyg"], + ["+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", "mQhAC0sVS/Wm/VMfHhmJH5N74KGDfJpLevVg9SHf/zY"], + ["dl4ygF4NbLpDkVOZZBGYz1Bwj7JHk7GVatDT7qavo0s", "cUgvJ6wHzqRHL0+ze6UlWZDG6XkP45ZCXEoiXTua+NU"], + ["+lMQ7vIiM+Exav1NLfhBuuSIjcI2UBgL1FtEY69FPHw", "L4SCwTtAwCYbhH7nwaj6q5DhToqDuP3LIe04Wx4YBi0"] + ] + } + }, + { + "value": { + "roomId": "!NvODNaNaQbJWulVEDV:matrix.org", + "sessions": [ + ["rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", "i0UHnfpJA9YyYFPPreQGINIt+f+aFf9fTFQhx/yVvTY"] + ] + } + }, + { + "value": { + "roomId": "!WXNLpHIsCohXpXsbUk:matrix.org", + "sessions": [ + ["K6pUAb6OgssyGzLqYcZQlskIxdwNTZu0xkb1lp2ysQA", "TqxaEJSIHu/GJsL9cdPomIYZkzrO3UqO/e0H/N9b3Q8"], + ["63T7anu0SxzQJRFnvmHXuQuSW63plQdt00phE4lT5HM", "cR2Mi5hcIiaH+XIANBknJq4dgBbSaopTyeduoJMMkSY"] + ] + } + }, + { + "value": { + "roomId": "!hDqiQUQdicjAXAOEUQ:matrix.org", + "sessions": [ + ["X78CTT0Nk8RDlC7snNGfRRkM7wCE5/XkVtqESnpFgEM", "7KdhG9y04GM33WunByggRkCAzv8UwEI85pFMPqthpK8"], + ["rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", "vw58QEIQwoWyJvCtBuCmPI0edHqulndrxnv1gNhOvCY"], + ["RhqbMrR2qmjyDPGh42dsZCenEHZXQdGjeHZXO8kHc1E", "VrlN7nfo7xi/tReWE89ZarEUt04aEeHuZonIP03gyus"] + ] + } + }, + { + "value": { + "roomId": "!kOjcnTaPnmhygqFtBD:matrix.org", + "sessions": [ + ["rjzv99T05ksa0hluxTK3qT78u0CxG/HOpYERwqu0F2o", "5fUniWedXn7Lfx6C6cF2CNLBHEr0Cfscb85GFz4zBE8"] + ] + } + } + ] +} diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/index.ts b/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/index.ts new file mode 100644 index 00000000000..96aa258401d --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/index.ts @@ -0,0 +1,109 @@ +import { DumpDataSetInfo } from "../index"; + +/** + * A key query response containing the current keys of the tested user. + * To be used during tests with fetchmock. + */ +const KEYS_QUERY_RESPONSE: any = { + device_keys: { + "@vdhtest200713:matrix.org": { + KMFSTJSMLB: { + algorithms: ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + device_id: "KMFSTJSMLB", + keys: { + "curve25519:KMFSTJSMLB": "LKv0bKbc0EC4h0jknbemv3QalEkeYvuNeUXVRgVVTTU", + "ed25519:KMFSTJSMLB": "qK70DEqIXq7T+UU3v/al47Ab4JkMEBLpNrTBMbS5rrw", + }, + user_id: "@vdhtest200713:matrix.org", + signatures: { + "@vdhtest200713:matrix.org": { + "ed25519:KMFSTJSMLB": + "aE+PdxLAdwQ/xfJwLmqebvt/lrT97fZas2SQFFrM+dPmHxQtjyS8csm88BLfGRjJKK1B/vWev3AaKqQZwLTUAw", + "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": + "lCd4SA/JT1nnxsgN9yQaLJQhH5hkLMVVx6ba5JAjL1wpWVqyPxzMJHImX6vTztk6S8rybcdfYkea5W/Ii+4HCQ", + }, + }, + }, + }, + }, + master_keys: { + "@vdhtest200713:matrix.org": { + user_id: "@vdhtest200713:matrix.org", + usage: ["master"], + keys: { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": "gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI", + }, + signatures: { + "@vdhtest200713:matrix.org": { + "ed25519:MWOGVUTXZN": + "stOu1aHbhsWB/Aj5M/HqBR83QzME+682C995Uc8JxSmmyrlWmgG8QrnoUDG2OFR1t6zNQ+QLEilU4WNEOV73DQ", + }, + }, + }, + }, + self_signing_keys: { + "@vdhtest200713:matrix.org": { + user_id: "@vdhtest200713:matrix.org", + usage: ["self_signing"], + keys: { + "ed25519:lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k": "lDvg6vi3P80L9XFNpUSU+5Y87m3p6yHcC83jhSU4Q5k", + }, + signatures: { + "@vdhtest200713:matrix.org": { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": + "HKTC7NoBhAkfJtmemmkn/HvCCgBQViWZ0uH7aGPRaWMDFgD8T7Q+y1j3FKZv4mhSopR85Fq3FRyXsG8OVvGeBA", + }, + }, + }, + }, + user_signing_keys: { + "@vdhtest200713:matrix.org": { + user_id: "@vdhtest200713:matrix.org", + usage: ["user_signing"], + keys: { + "ed25519:YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8": "YShqO/3u5vQ0uucojraWrtoLrek0CYrurN/vH/YPMg8", + }, + signatures: { + "@vdhtest200713:matrix.org": { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": + "u8VOi4IaeRJwDgy2ftK02NJQPdBijy8f/0+WnHGG72yfOvMthwWzEw8SrRSNG8glBNrfHinKwCyJJzAJwyepCQ", + }, + }, + }, + }, +}; + +/** + * A `/room_keys/version` response containing the current server-side backup info. + * To be used during tests with fetchmock. + */ +const BACKUP_RESPONSE: any = { + auth_data: { + public_key: "q+HZiJdHl2Yopv9GGvv7EYSzDMrAiRknK4glSdoaomI", + signatures: { + "@vdhtest200713:matrix.org": { + "ed25519:gh9fGr39eNZUdWynEMJ/q/WZq/Pk/foFxHXFBFm18ZI": + "reDp6Mu+j+tfUL3/T6f5OBT3N825Lzpc43vvG+RvjX6V+KxXzodBQArgCoeEHLtL9OgSBmNrhTkSOX87MWCKAw", + "ed25519:KMFSTJSMLB": + "F8tyV5W6wNi0GXTdSg+gxSCULQi0EYxdAAqfkyNq58KzssZMw5i+PRA0aI2b+D7NH/aZaJrtiYNHJ0gWLSQvAw", + }, + }, + }, + version: "7", + algorithm: "m.megolm_backup.v1.curve25519-aes-sha2", + etag: "1", + count: 79, +}; + +/** + * A dataset containing the information for the tested user. + * To be used during tests. + */ +export const FULL_ACCOUNT_DATASET: DumpDataSetInfo = { + userId: "@vdhtest200713:matrix.org", + deviceId: "KMFSTJSMLB", + pickleKey: "+1k2Ppd7HIisUY824v7JtV3/oEE4yX0TqtmNPyhaD7o", + backupResponse: BACKUP_RESPONSE, + keyQueryResponse: KEYS_QUERY_RESPONSE, + dumpPath: "spec/test-utils/test_indexeddb_cryptostore_dump/full_account/dump.json", +}; diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/index.ts b/spec/test-utils/test_indexeddb_cryptostore_dump/index.ts index ba2504fbb22..f0f216b7a5a 100644 --- a/spec/test-utils/test_indexeddb_cryptostore_dump/index.ts +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/index.ts @@ -18,11 +18,12 @@ import { readFile } from "node:fs/promises"; import { resolve } from "node:path"; /** - * Populate an IndexedDB store with the test data from this directory. + * Populate an IndexedDB store with a set of test data. * * @param name - Name of the IndexedDB database to create. + * @param dumpPath - The path to the dump file to import. */ -export async function populateStore(name: string): Promise { +export async function populateStore(name: string, dumpPath: string): Promise { const req = indexedDB.open(name, 11); const db = await new Promise((resolve, reject) => { @@ -42,7 +43,7 @@ export async function populateStore(name: string): Promise { }; }); - await importData(db); + await importData(db, dumpPath); return db; } @@ -100,8 +101,8 @@ function upgradeDatabase(oldVersion: number, db: IDBDatabase) { } } -async function importData(db: IDBDatabase) { - const path = resolve("spec/test-utils/test_indexeddb_cryptostore_dump/dump.json"); +async function importData(db: IDBDatabase, dumpPath: string) { + const path = resolve(dumpPath); const json: Record> = JSON.parse( await readFile(path, { encoding: "utf8" }), ); @@ -134,3 +135,20 @@ async function importData(db: IDBDatabase) { }); } } + +export interface DumpDataSetInfo { + /** The user ID to use for the test.*/ + userId: string; + /** The device ID to use for the test.*/ + deviceId: string; + /** The path to the dump file to import via {@link populateStore}.*/ + dumpPath: string; + /** The pickle key to use for the dumped account.*/ + pickleKey: string; + /** The response to use for the keys query. */ + keyQueryResponse: any; + /** The response to use for the backup query.*/ + backupResponse?: any; + /** Additional dump info specific for some tests.*/ + [key: string]: any; +} diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/README.md b/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/README.md new file mode 100644 index 00000000000..946a0a32f9f --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/README.md @@ -0,0 +1,4 @@ +## Dump of a libolm indexeddb cryptostore where the msk is not cached + +A dump simulating an account where the identity was verified, but the msk was not in cache. +Used to test that the owner identity local trust is migrated correctly. diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/dump.json b/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/dump.json new file mode 100644 index 00000000000..cbbe32736d9 --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/dump.json @@ -0,0 +1,189 @@ +{ + "account": [ + { + "value": "gank2lHywDOnSJVk/ZCT/KKKg/ns8wGVqhhQIYss4WLWNaYXh1I+oEIgDtJDlG1j/Ay5YnnBf7gC0P4JGJ3pkXkhZNkRfYT+XxSH0Oep8IVX2LWvdONZK1iw4WezpLhERsC8X2wosXIKRE65HXAkgwHQo4qm+IHXNZiDOrXWqx5cUtumrYYY0wLwbwFFnia95uqTXuWiKiOIGJnHtuu5senr0qo0jnx1GwqOZH/vvsaX8yDYmtZZ0ae3YcV917Ol+Q2x3+8m0sYmko3K+PWC441y1cZtycs0amBeBCnOa+ydRgsHCjxMMZ11CH4f2nHXkbjoNesFXu+ZLCUdv3ntKVqx47MBrcrtE2B3tM9WrVDnRefOSfQr9ypK7HBIsk7LKLvPQPiOFlZufqRUKSJaBYwrYOUxdpQK+fJsIlnM9lQo0Anv4rPjyeai5XS0Z6wffDPORIImvYLOiDMdpu7vRZc6jtHvEHg/8pPGB3TH6WpyrkvUQjzBJcXH++Hk9HWbDGxzfAuL1E5yuh742v05z/aHqfqmfHe8UhbkPghEl2SsYQogNZvopxXl9WhC2Oeit6BVyL/Jkt68sn/gfMtwReEmoPNFjwf9wgsDQ/FTnHZIKZo1X4oFkwCoNd4xOHM24Xm8RCBsdUW6aVngAb9DOGKpMWHefq/0RMfVEwOH3kwBVmxeyLF5hY6POuZ6sE4kRct69zZDjkdD00uwbkpVJ7WtQ2JBhmH/jmffn4DSytK9fGivDJMsnHLW3+65emDUpjunlnJNGH0WXxADOlyTlfHpZ2ilNOo/T3hpGgz1pcN84IsHPIJtHLt4DnsWsXQnGJUXw8xkvBCiZZ6yQqOXEtIk/iS1Zr7d0M4uynWDJzHGmP2fM8IT+rZoU+Z4NlsoYm5o7IjpORhuJm8EpxnDMHiF8qLYXXcQl8UlTuAMG5a0JHoV65wcVQsVlxv6iyuIxPCBkePs15OouGS3K3LlkGjFYc/0R2ExkxVkndTPSwfU1T2wB5x67B96K5L9b/tjcFPyCKP/Avg1FzmE3mZUmGdCGoAthINABQmIZGHrD4XiH5fBpSpn1bS7jNCQfGItQ/+OXY5vhH/5DoxoXvuEvctmMkxo3FZrwFm6lTAA0DL/m2hBXJfIBYT9Kp3KGz5z/kv34ldrNbZuUmWW6hEdVWQRtXXqbXyKlXg2oZAYKMXYmdONnrjTe55AXbbwH9duM/EPwgSxNG3+5pm1M04SPWRvy2nA8+d1z9R/OUmxKubMBdQ7JDyu1wj1Di8cRkAKi8K+Oa7jRdKjS+dNo6jg0ZSZHibU4NwZoDfPPo5IGY5nejYQjs/a5AK7lfGmG0PrbYN0zUFXIJll5Ll4880Ff/VnZLoFn1cXu4lZARKbm/Wy5mar4UlRRL4AzPkSaEDSuQ9Rtwc86VQLiffNQ+M9OZCCXGk8ZAeMxQlfgsoDL3Er4iySsObTg5Z5N7DWUxt2oP5VNvlDjuwaS/Q/F7Pf79Rifp4xJoc7SrUFOpt020zZqyyy7V2YMuXoaIkoPQMtC+wiBlgg8XX3om7sxYGCGGyr5TvNbTMyWb3s2iXfZ/Hp91SjwjHHxfRYRnH+5ZqFo/DvpQOeJex4NKCqAQuPyyWNffVGPbyIRjd/kA5ptHtWqZdFA/7P3JuzhXlzEaBMY1ux6pjgnZJozN0MUA2DvJHenXH7AXhhwaFQFwtkoihGvJB8kMIGOlhGrzay7RAv7Dvy0uUnbc63Piioftt4FUDV3NO+rpQIryArzfrW7OQPTGGV0dwbMlgKRWqAMqEvaBf6OXZtA1iWumxhUGyIAVuSxgK5SSvIfy2xKUlABtiB1mIywf7y/tkTPCVfeqI7muLxgq30lqPho6MqnEfHbXaZ6uzUHIS3AnnN7sJZA8W8qBptO5focij1yg8x2xsd4ep+bQNW+KiUc1sRTXbG3z2WKBCSZj++FLjZbfHTOtdY3dQH34R4ZO+YK5vdLU5hZZh/c7NF/ZBReWARdHryOuUggvZmTQ1QYecdLpj1gMn+S1lneSngrZdKTYpOYq7V6Yt06YqUm5QqED4LcfUOQXOPB4+T+7aBAzLz+vhPDPd/giL+H7pb2/O8A6CvNW3OqndHKDSt5HfuLMoApPJ4f2S72K2WcpsBbsVVN/4HXs8oUO1wWz30/3xuiNClo5rknmhcy2IlG1COsavPfCh/BcstTSQ5RRrT/eBw8BvCSsjmnS9GHu9/bgg0R+m5/+F++9//HUUdZ20RTrYqyQ9oTUL/HY5CDaGLLS+DtHuHzizZVf1mz3QNWfJQwR+bC7xtA7byVkOjHh/dJtN3cbUprT7TQQ5tr9xBQeIJT2m0XtU7VABLa/pkYT4t6LcMvLAmozr+ZOLk1hTuMuNttBZOvtUj4dec74SmPoI2fs3/9SMHKF7b3ALVlDn+ET3J+YRFRZlgqA42iyZo4cppejwiNHoBPl95wqI0GDoR7/OemJGnWTdY4ssX/2toU1Fv/17jLBUuFt4gAdD9EMp3Zx/mZn1ztaUCREyqwRUu0p2xqAGy69ngOI3y5+O2dirHIH56CFHH7ghnJBSJywVS84PPUBDPZMoIJ6Ld9fbOZ77Q0Imf+ZDFM4MkgvVQFxOdUlRClx92iZ2j4aFWMm8zhrMHpNZ/A/viuo5BwVjMEomO+sMtDNuvtqYCvXv5ADQTK9F4kVYGjzZnMMHMz7RlD++eweEq5aTuOI+GbLJsiBmX4gkmvfA6TqgAqGHEwi4sZhL9wRQkPCdIOrYs84DGTlXC4cRKP390RGHE2a3MQ3WfToRy3Akhcn9blpnu6jdixtqQebEzkkaM/KjH8wMQ+p/pR4maRUuXPJUfZHGzcZDWls/gFBX6YKqj8uCJbkg/RQZMU+Fp7A9keo8bBzlewN7REhRCoK4kYEYPsRG2OpS0jiJ+KZNrEiGVL3JtwWEfuQUuYcH5Gfg7eNZaL6gUPMIsFt/SOBAYX/m449ncKYIRd3NpScKOxKyZraINtKKgJhGDf8KHNQ9/nnaR6fDFovUVO8RUrsDNkKvXrChfMbCMPSF2aNXA4HrrVyPAutAZxi0CdijTl4J7nDbizOqrYguIi0MRc7XczeG5AtuGwXmrnl3sQpRU9SpABf+BuiJ0kIWVScfEDmQEP2uNg4YIzWSq0x5cYpOlGE86JYKEEgzMQfRGJ4J+Oi3aGW2Icgy/hsREKfFacl1Kwhi9ye9CirvG62QBxJYwbmEZeCsamaruwY9Enj7R6ftzh7oIOFctDMYnTTewt5pO/xbrbrsR2brDxr44R/UZGD6zRiQuXI+ocMgI31tLNpH00EIneZOI6sN3EHsYLGzOCUbSKLTkjJhXOVVEE4MDIam0+PpTtiCs3BN4eGbXyuBXlQbWPYlpi5v7CIJmUth4W9QqUSXlUaJNAjxIem8Nra5beWefqr4vQcfCEcvnkkPkqAv//Podi6MG2xLtppHH2LhfVk+abNohmY1vejKGLky+C9hYl+QbbwS3i2hbGx/iq8xUdFj7sFfHcVNHdhwpguwdBGrFUslntlO5AvJyeWX15BXDQpSmf0ZTRUH7cD2aByhZZgSqeWWkY79VUb82hFMvQVQoZrT9zTCG/qIYd7ASAUFaGkCxEHelLYLWQNrATdadevUaDGA/xHDgFi7rD4T1609VQ6pXIu78cKcy7wF1I+bqUyMAWc3AefVfs3dt3257KbDVGxxIsge3xo1i9RJJiZq5SpNEs5wfsrcYG+BQbFUl/s4V4I17XaOYjFHrFU0V1kkEm7/RQYK2DlclM3KL7jPBp09j+e1JcPxXm/Ec7UICWh3YY6NUwG6YKZ85dx37JT0abgZtiun2u4bm/asCmm6yUQxlTbL3DVao2Q8wp09aDxIJYluMd8NqpzSzm/Nzo2JZQOtZTn7Ipv/Go8ft+g7NanD5MfpJntM4jy9/n2EH1wxVIJf7Ryc/L2yHClifu/L2rJIAQ5C8WJo3qpcisP+UqSTq9ypp/xnMrubisTyId/IaZw+Qj4s/kkUhBjhW6QBTwrX0WsguUUuHg2GCT/JfLEk1/rEe/QUURMe1fLcqTad3SD3sZNILnnuLJmQDINrF6hdbIGMuBALbA7Vlb1deCbHmOPAwQPvx8+46Blyc2Q+2mPBT/5BOjpp5/be/zryL1raJU5W7FTG0uQVhbesw/99KURo25JRHqDIuQt5hd5V8SaYewFRYa0TPOl6f3SomCriMTBPVUVijy1PCC305ca0N5z1y5MzMpMKvLPsDn/668qcjwYcqP9VUPDstB9I6sY3jVuAD2W1xNlS0QCCIiD2lYxIwOTDlUrP+BHflab4brDhU2krazJXP/nIR8fX1hGuotLZZHHxDjj0jKDYCa3oe+kLQClBGt9pMjauEEAzof2a3/zAeDFMz/OHX34J/CMR2YGNL8sGP4XB+dp/VSiks7QcYsCU3R3oKvSAt4k8NhvWX0eJH70RPkk+L8b3KuftvTFIfoScwrzdAaliOXlsVEb52zZpsWMDWjU7l00beHoMRMnlTvBKh63kq1H9RB6eEWBw0g2Jq8CK4aDmeD7nsbpust6hHznTBzAIcIjyGxome1MLlRuSKN2YFayy7asMZMLk/ZmQ5CxBKks3ZIJYbpJB96u068Dm8a0cy5JdNHLvDGHnLBVjLAwWGunEHm5CCVQZv6jVhvmsRd2Vc4wPIb/6M//WO32ERCTun//R/NGydWxkGcNBzQn42r35dh3n9TiSXDhG2rSssiF2GufX1uBrmDyXMvTCiFPJbClSYNiWs7UHZBDT1yia+rv6X5wIz4R1AtUez2uxWXBzjsp4lbCWFmVkxiWZniO+2VadSVSi/INg6gELahNuIBgC36d9oUC84ralULE6Hk46TI5NaGyitKNWQhkKprl2th+my53p8L5EXdlYxRCHi/ICBdloNPu3kiVdzTuzL5gj7yDpQWmM/eN7HxS03kRN+LXSNbkau0bfhGopgYVRMmbQ642Nx9/E8Tl5PHYN0nMjRxqPgOks9E9IF4bdGVeW4RGlrRBP4BO1KCXBQ4w", + "key": "-" + }, + { + "value": { + "master": { + "keys": { + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": "cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4" + }, + "signatures": { + "@migration:localhost": { + "ed25519:TMWBMDZPFT": "RrPUnYoekK7wZGrLNXshgoupF8v53S/vJyvkBJi+q9THh4Qrf3CieuVJFx8mwtmEZgGoA2tSroAVnRqvEQ+IBQ", + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": "o4CbtdU3IqJK90UXAEBtxps2m4XBYvWJI2nbVlzBaGRr+Xt/3vtwDMlc5G970kPQWBbs/koYJh8MSaE7Fm1mAg", + "ed25519:CBGTADUILV": "AgZoG+ix8aW3FAW6v+/Xu+QJpxzvsx5itbB8RyqMet9YlNqX90vYIbBV7IoV2WFY2WdANYEffX2CE0FpR6NnCg", + "ed25519:XFZFSCUOFL": "X2c8Si+sOOv+PBECZCNQLMvYe7coWbt5C7UUsK91ISmN8HcnX6VhUIBZQX+SJOWAc3QwdRIl3BF88+/1QJ2uBQ" + } + }, + "usage": ["master"], + "user_id": "@migration:localhost" + }, + "self_signing": { + "keys": { + "ed25519:RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4": "RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4" + }, + "usage": ["self_signing"], + "user_id": "@migration:localhost", + "signatures": { + "@migration:localhost": { + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": "hs8VqoTfipDjC2pzFdmzb1aENhDjVV+gc86fuYftczaCcsXUWop/NPwoF51Ie6Nb3YL0N7ZZAUrycuJP5hFbDg" + } + } + }, + "user_signing": { + "keys": { + "ed25519:WNJ2G3Ig5EdC4wYiRKcK7bhLP2+I4wI6V7SKgJTXdw8": "WNJ2G3Ig5EdC4wYiRKcK7bhLP2+I4wI6V7SKgJTXdw8" + }, + "usage": ["user_signing"], + "user_id": "@migration:localhost", + "signatures": { + "@migration:localhost": { + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": "Vlba5rJQxG+ussVLoycvHcin7Ghv0uUeClDqDbM+RPF+jx9w4ozbcuEOTJdyzyPA+GxN9Kzh2lmVFMMQGyvNAw" + } + } + } + }, + "key": "crossSigningKeys" + }, + { + "value": { + "iv": "vpMgskCbdFgK2reLj5hA6w==", + "ciphertext": "25dIEkP4kvdNbHKgMZ7a6q3DDvlUvj59/DlHqzXG9PT26/KkYlIEAM8Yi2Q=", + "mac": "x0WB3l0H6Xk7GYpSD0ZMZfhNMMeRbEmtz0UsUCEp7lI=" + }, + "key": "ssss_cache:m.megolm_backup.v1" + }, + { + "value": { + "iv": "ZeHgq5rlzQFSZBWAlxDvNA==", + "ciphertext": "3ljWJjGIEHMjQN/q9YOcGYh4Qlxj3g+OA+iHAiwkEWXVFmpkm46FUxiDUFY=", + "mac": "6tlUcfjTtf8U7pxek0yuE5zGhCVq0qTzlj1Jhh6Kdqk=" + }, + "key": "ssss_cache:self_signing" + }, + { + "value": { + "iv": "gwgg/0TTkaB1sLJRQF7+yQ==", + "ciphertext": "hGRsgQcGD7iNM/WnieCJMvYtcbbZv1IV3Uo5uvVqL6YLqDXEKBlpswPD27k=", + "mac": "KAgVfEJ558CCMZvBqg+iXCQnh5m+hgu91wdJxPmTzoc=" + }, + "key": "ssss_cache:user_signing" + } + ], + "device_data": [ + { + "value": { + "devices": { + "@migration:localhost": { + "XFZFSCUOFL": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:XFZFSCUOFL": "aN2Ty+0rutNkrRtxhV+ciI8GhF4epSxzL7bAOr8zfkc", + "ed25519:XFZFSCUOFL": "V7CPhXdfLFk+qAOFivrpFskmunVTeuM+EOM3DMlDxkI" + }, + "verified": 1, + "known": true, + "unsigned": { + "device_display_name": "localhost:8080: Chrome on macOS" + }, + "signatures": { + "@migration:localhost": { + "ed25519:XFZFSCUOFL": "4Pqc2FWJ5p/L/tSlfUBIlcQzLmN5CksJriAibY8LSDAXdGYiQJ7hvKqneEuVhrMYwqyIxb4bAad+r6wnY0/7Cg", + "ed25519:RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4": "yH8pKnD+E8YaawS+1NCjwy0cf2WzBRff9BBNX4YnAuTyc6s5b1QqNfu9DP5qblw8TZ7hZmaziePZKsjRiqJLBg" + } + } + }, + "TMWBMDZPFT": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:TMWBMDZPFT": "oYP9EXvHMbliFdfk8jPvUw0KhAd0+PBqdMslJAt/ZGQ", + "ed25519:TMWBMDZPFT": "IyfPT67JutFWJsUxrxSqEWxgRjKn9B/w78uKU4OBj1E" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "localhost:8080: Chrome on macOS" + }, + "signatures": { + "@migration:localhost": { + "ed25519:TMWBMDZPFT": "IWIuuDag4ZMDhMObYV63X7dBYEUYNHYR0Yu/bwLvQh5ieDjQSrZSLOzDrgCyPCM4hkc4JlhneQpJsYo1lUH7DA", + "ed25519:d+4HhsodR2Zqv4Z5V0VxPfy8zbjLjUCdCyv5qme5Ygc": "iEcTKElQu4CAsQIXmBaZmXwfB6Diut+4ZXakP1ob7OIDMrCYBcgXsBFYg6GuxwL0LCTVcUgbUw7VuPKSvM8UAA", + "ed25519:MYgcP5P7P6KucWjLvTRofY5PWxsf+WDj2BiXtqOO5Gw": "KcBLDWkCwZyIzlBkC29PNzHxx7Br14TYlhBfREEEQo/Rd34ZZUYwbQ8iPhB8S1GVq3YwgAV6piYIcxpQin+dBA", + "ed25519:HGN9m99VprMuQBDA3o+KZKcEYTaGmiaujrkygjScMnY": "VqrvA148Uxib9TNFI1rc9r8qpwTojCkqLofEz9dMLc/XV3U14WD5/LDEhMuCwNu6wsu/uO+dS4AmJlJnN/iAAg", + "ed25519:Nt0L/p+UVHMx603sYHXwXja+VyQIUVFvu0vDBYn56Zk": "D1COHzROOTNlCn8b1zI9+6phUtF0OVqWxLfOLnX5t14H2oENYV2ASgaxsdmXcSZPrGzaJkmSOginHHzsabe5CA", + "ed25519:bmFmNcVPvaqrlNzmyKn9uU+QRHyx2QRbn/bUAlTH760": "SFSDrsi3GQ9jjBYUc2aUSzf777/0NfQWrOBi2CK+v5VQY3FkyHBln3K4YzvxIKSVIhOaQtBlEDtfQb33kwTgDg", + "ed25519:RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4": "BtJkzQe0YFAa8gJiYXYtzGtktl9vZMNYl5jd4DA8Toi4VxgosJNZQE7lT5qpYU0BrlFn46QIs/38X8JhSt+wAQ" + } + } + } + } + }, + "crossSigningInfo": { + "@migration:localhost": { + "keys": { + "master": { + "keys": { + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": "cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4" + }, + "signatures": { + "@migration:localhost": { + "ed25519:TMWBMDZPFT": "RrPUnYoekK7wZGrLNXshgoupF8v53S/vJyvkBJi+q9THh4Qrf3CieuVJFx8mwtmEZgGoA2tSroAVnRqvEQ+IBQ", + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": "o4CbtdU3IqJK90UXAEBtxps2m4XBYvWJI2nbVlzBaGRr+Xt/3vtwDMlc5G970kPQWBbs/koYJh8MSaE7Fm1mAg", + "ed25519:CBGTADUILV": "AgZoG+ix8aW3FAW6v+/Xu+QJpxzvsx5itbB8RyqMet9YlNqX90vYIbBV7IoV2WFY2WdANYEffX2CE0FpR6NnCg", + "ed25519:XFZFSCUOFL": "X2c8Si+sOOv+PBECZCNQLMvYe7coWbt5C7UUsK91ISmN8HcnX6VhUIBZQX+SJOWAc3QwdRIl3BF88+/1QJ2uBQ" + } + }, + "usage": ["master"], + "user_id": "@migration:localhost" + }, + "self_signing": { + "keys": { + "ed25519:RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4": "RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4" + }, + "usage": ["self_signing"], + "user_id": "@migration:localhost", + "signatures": { + "@migration:localhost": { + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": "hs8VqoTfipDjC2pzFdmzb1aENhDjVV+gc86fuYftczaCcsXUWop/NPwoF51Ie6Nb3YL0N7ZZAUrycuJP5hFbDg" + } + } + }, + "user_signing": { + "keys": { + "ed25519:WNJ2G3Ig5EdC4wYiRKcK7bhLP2+I4wI6V7SKgJTXdw8": "WNJ2G3Ig5EdC4wYiRKcK7bhLP2+I4wI6V7SKgJTXdw8" + }, + "usage": ["user_signing"], + "user_id": "@migration:localhost", + "signatures": { + "@migration:localhost": { + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": "Vlba5rJQxG+ussVLoycvHcin7Ghv0uUeClDqDbM+RPF+jx9w4ozbcuEOTJdyzyPA+GxN9Kzh2lmVFMMQGyvNAw" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + } + }, + "trackingStatus": { + "@migration:localhost": 3 + }, + "syncToken": "s1_4872_0_1_54_1_1_87_0_1" + }, + "key": "-" + } + ], + "inbound_group_sessions": [], + "inbound_group_sessions_withheld": [], + "notified_error_devices": [], + "outgoingRoomKeyRequests": [], + "parked_shared_history": [], + "rooms": [], + "session_problems": [], + "sessions": [], + "sessions_needing_backup": [], + "shared_history_inbound_group_sessions": [] +} diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts b/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts new file mode 100644 index 00000000000..24c134e7ac5 --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts @@ -0,0 +1,260 @@ +import { KeyBackupInfo } from "../../../../src/crypto-api/keybackup"; +import { DumpDataSetInfo } from "../index"; + +/** + * A key query response containing the current keys of the tested user. + * To be used during tests with fetchmock. + */ +const KEY_QUERY_RESPONSE: any = { + device_keys: { + "@migration:localhost": { + CBGTADUILV: { + algorithms: ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + device_id: "CBGTADUILV", + keys: { + "curve25519:CBGTADUILV": "gqhFlc7Wzc1wmmmAu3ySIEe4LtDcBK/bdzrtZg+mMSg", + "ed25519:CBGTADUILV": "q1q3L1Il4l61c/6TmI4fYWMsseNMJJYE2Y0r+5ajKQI", + }, + signatures: { + "@migration:localhost": { + "ed25519:CBGTADUILV": + "ppSmA0slyQ7RJOFn+qZSLCGeHN6/jAmqKvUZo5Q1hWk0ugkKycRoSUi9TOfbfAVSf8xvFirXy2VGXQbEVPJqAA", + "ed25519:d+4HhsodR2Zqv4Z5V0VxPfy8zbjLjUCdCyv5qme5Ygc": + "cFLWl1fjehLrzrEn3UnmZMIgy3C23WMgGRsn4e6Z/55vmen4KMs8bLpgZaDoWhIdn/8siHRWafA5sFdzK2NsBQ", + "ed25519:bmFmNcVPvaqrlNzmyKn9uU+QRHyx2QRbn/bUAlTH760": + "C6EeqNPcaQyuZgo8+HOUywc/TMkW5IMjg7aoxyu93X//KcNNXKRfj1banYP6XqyPuQITLamBYc1089Jpt9g4Cw", + "ed25519:RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4": + "YwBN/SbCxO8hPgv1B9JY2WVFK4LNK9vq1UNVrkF2j0ZDw9LrvaOws72mbmzZ0nbD3ohcEZ8rXsEosxEVr5r7AQ", + }, + }, + user_id: "@migration:localhost", + unsigned: { + device_display_name: "localhost:8080: Chrome on macOS", + }, + }, + TMWBMDZPFT: { + algorithms: ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + device_id: "TMWBMDZPFT", + keys: { + "curve25519:TMWBMDZPFT": "oYP9EXvHMbliFdfk8jPvUw0KhAd0+PBqdMslJAt/ZGQ", + "ed25519:TMWBMDZPFT": "IyfPT67JutFWJsUxrxSqEWxgRjKn9B/w78uKU4OBj1E", + }, + signatures: { + "@migration:localhost": { + "ed25519:TMWBMDZPFT": + "IWIuuDag4ZMDhMObYV63X7dBYEUYNHYR0Yu/bwLvQh5ieDjQSrZSLOzDrgCyPCM4hkc4JlhneQpJsYo1lUH7DA", + "ed25519:d+4HhsodR2Zqv4Z5V0VxPfy8zbjLjUCdCyv5qme5Ygc": + "iEcTKElQu4CAsQIXmBaZmXwfB6Diut+4ZXakP1ob7OIDMrCYBcgXsBFYg6GuxwL0LCTVcUgbUw7VuPKSvM8UAA", + "ed25519:MYgcP5P7P6KucWjLvTRofY5PWxsf+WDj2BiXtqOO5Gw": + "KcBLDWkCwZyIzlBkC29PNzHxx7Br14TYlhBfREEEQo/Rd34ZZUYwbQ8iPhB8S1GVq3YwgAV6piYIcxpQin+dBA", + "ed25519:HGN9m99VprMuQBDA3o+KZKcEYTaGmiaujrkygjScMnY": + "VqrvA148Uxib9TNFI1rc9r8qpwTojCkqLofEz9dMLc/XV3U14WD5/LDEhMuCwNu6wsu/uO+dS4AmJlJnN/iAAg", + "ed25519:Nt0L/p+UVHMx603sYHXwXja+VyQIUVFvu0vDBYn56Zk": + "D1COHzROOTNlCn8b1zI9+6phUtF0OVqWxLfOLnX5t14H2oENYV2ASgaxsdmXcSZPrGzaJkmSOginHHzsabe5CA", + "ed25519:bmFmNcVPvaqrlNzmyKn9uU+QRHyx2QRbn/bUAlTH760": + "SFSDrsi3GQ9jjBYUc2aUSzf777/0NfQWrOBi2CK+v5VQY3FkyHBln3K4YzvxIKSVIhOaQtBlEDtfQb33kwTgDg", + "ed25519:RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4": + "BtJkzQe0YFAa8gJiYXYtzGtktl9vZMNYl5jd4DA8Toi4VxgosJNZQE7lT5qpYU0BrlFn46QIs/38X8JhSt+wAQ", + }, + }, + user_id: "@migration:localhost", + unsigned: { + device_display_name: "localhost:8080: Chrome on macOS", + }, + }, + }, + }, + failures: {}, + master_keys: { + "@migration:localhost": { + keys: { + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": "cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4", + }, + signatures: { + "@migration:localhost": { + "ed25519:TMWBMDZPFT": + "RrPUnYoekK7wZGrLNXshgoupF8v53S/vJyvkBJi+q9THh4Qrf3CieuVJFx8mwtmEZgGoA2tSroAVnRqvEQ+IBQ", + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": + "o4CbtdU3IqJK90UXAEBtxps2m4XBYvWJI2nbVlzBaGRr+Xt/3vtwDMlc5G970kPQWBbs/koYJh8MSaE7Fm1mAg", + "ed25519:CBGTADUILV": + "AgZoG+ix8aW3FAW6v+/Xu+QJpxzvsx5itbB8RyqMet9YlNqX90vYIbBV7IoV2WFY2WdANYEffX2CE0FpR6NnCg", + }, + }, + usage: ["master"], + user_id: "@migration:localhost", + }, + }, + self_signing_keys: { + "@migration:localhost": { + keys: { + "ed25519:RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4": "RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4", + }, + signatures: { + "@migration:localhost": { + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": + "hs8VqoTfipDjC2pzFdmzb1aENhDjVV+gc86fuYftczaCcsXUWop/NPwoF51Ie6Nb3YL0N7ZZAUrycuJP5hFbDg", + }, + }, + usage: ["self_signing"], + user_id: "@migration:localhost", + }, + }, + user_signing_keys: { + "@migration:localhost": { + keys: { + "ed25519:WNJ2G3Ig5EdC4wYiRKcK7bhLP2+I4wI6V7SKgJTXdw8": "WNJ2G3Ig5EdC4wYiRKcK7bhLP2+I4wI6V7SKgJTXdw8", + }, + signatures: { + "@migration:localhost": { + "ed25519:cFjUBAhAZ2tjYF1TpQtYNA3x9XRzTiIdP2N2EvRaOH4": + "Vlba5rJQxG+ussVLoycvHcin7Ghv0uUeClDqDbM+RPF+jx9w4ozbcuEOTJdyzyPA+GxN9Kzh2lmVFMMQGyvNAw", + }, + }, + usage: ["user_signing"], + user_id: "@migration:localhost", + }, + }, +}; + +/** + * A new key query response for the same user simulating a cross-signing key reset. + * To be used during tests with fetchmock. + */ +const ROTATED_KEY_QUERY_RESPONSE: any = { + device_keys: { + "@migration:localhost": { + TMWBMDZPFT: { + algorithms: ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + device_id: "TMWBMDZPFT", + keys: { + "curve25519:TMWBMDZPFT": "oYP9EXvHMbliFdfk8jPvUw0KhAd0+PBqdMslJAt/ZGQ", + "ed25519:TMWBMDZPFT": "IyfPT67JutFWJsUxrxSqEWxgRjKn9B/w78uKU4OBj1E", + }, + signatures: { + "@migration:localhost": { + "ed25519:TMWBMDZPFT": + "IWIuuDag4ZMDhMObYV63X7dBYEUYNHYR0Yu/bwLvQh5ieDjQSrZSLOzDrgCyPCM4hkc4JlhneQpJsYo1lUH7DA", + "ed25519:d+4HhsodR2Zqv4Z5V0VxPfy8zbjLjUCdCyv5qme5Ygc": + "iEcTKElQu4CAsQIXmBaZmXwfB6Diut+4ZXakP1ob7OIDMrCYBcgXsBFYg6GuxwL0LCTVcUgbUw7VuPKSvM8UAA", + "ed25519:MYgcP5P7P6KucWjLvTRofY5PWxsf+WDj2BiXtqOO5Gw": + "KcBLDWkCwZyIzlBkC29PNzHxx7Br14TYlhBfREEEQo/Rd34ZZUYwbQ8iPhB8S1GVq3YwgAV6piYIcxpQin+dBA", + "ed25519:HGN9m99VprMuQBDA3o+KZKcEYTaGmiaujrkygjScMnY": + "VqrvA148Uxib9TNFI1rc9r8qpwTojCkqLofEz9dMLc/XV3U14WD5/LDEhMuCwNu6wsu/uO+dS4AmJlJnN/iAAg", + "ed25519:Nt0L/p+UVHMx603sYHXwXja+VyQIUVFvu0vDBYn56Zk": + "D1COHzROOTNlCn8b1zI9+6phUtF0OVqWxLfOLnX5t14H2oENYV2ASgaxsdmXcSZPrGzaJkmSOginHHzsabe5CA", + "ed25519:bmFmNcVPvaqrlNzmyKn9uU+QRHyx2QRbn/bUAlTH760": + "SFSDrsi3GQ9jjBYUc2aUSzf777/0NfQWrOBi2CK+v5VQY3FkyHBln3K4YzvxIKSVIhOaQtBlEDtfQb33kwTgDg", + "ed25519:RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4": + "BtJkzQe0YFAa8gJiYXYtzGtktl9vZMNYl5jd4DA8Toi4VxgosJNZQE7lT5qpYU0BrlFn46QIs/38X8JhSt+wAQ", + }, + }, + user_id: "@migration:localhost", + unsigned: { + device_display_name: "localhost:8080: Chrome on macOS", + }, + }, + XFZFSCUOFL: { + algorithms: ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + device_id: "XFZFSCUOFL", + keys: { + "curve25519:XFZFSCUOFL": "aN2Ty+0rutNkrRtxhV+ciI8GhF4epSxzL7bAOr8zfkc", + "ed25519:XFZFSCUOFL": "V7CPhXdfLFk+qAOFivrpFskmunVTeuM+EOM3DMlDxkI", + }, + signatures: { + "@migration:localhost": { + "ed25519:XFZFSCUOFL": + "4Pqc2FWJ5p/L/tSlfUBIlcQzLmN5CksJriAibY8LSDAXdGYiQJ7hvKqneEuVhrMYwqyIxb4bAad+r6wnY0/7Cg", + "ed25519:RkQzi0+aKIL9Y+GzsN23xMz3i3QRkH03G5aqqEbbuy4": + "yH8pKnD+E8YaawS+1NCjwy0cf2WzBRff9BBNX4YnAuTyc6s5b1QqNfu9DP5qblw8TZ7hZmaziePZKsjRiqJLBg", + "ed25519:OEv0wHLusJx7zTCc0h3HbNIHLIxlGZKh63tc2ptKb+Y": + "M8SfAiEUzd7AsWp8InS7BxV3cRqV3MjMxks4DwSxsVxvkCco2JWybKgev+vTZyM6XDg930o0FObQOxWm4+CkBw", + }, + }, + user_id: "@migration:localhost", + unsigned: { + device_display_name: "localhost:8080: Chrome on macOS", + }, + }, + }, + }, + failures: {}, + master_keys: { + "@migration:localhost": { + user_id: "@migration:localhost", + usage: ["master"], + keys: { + "ed25519:rXCrBin/+xyh+yW//vWte+2UV0et1ZHTWfalp/Ekack": "rXCrBin/+xyh+yW//vWte+2UV0et1ZHTWfalp/Ekack", + }, + signatures: { + "@migration:localhost": { + "ed25519:XFZFSCUOFL": + "C8aswtyUABWvj2DInehVoh2P/EDbwRhlIk51LtV3L71POUCh7pZuyXRMMWKZeyRvHRmEllXBtRkH1iol/p56Bg", + }, + }, + }, + }, + self_signing_keys: { + "@migration:localhost": { + user_id: "@migration:localhost", + usage: ["self_signing"], + keys: { + "ed25519:OEv0wHLusJx7zTCc0h3HbNIHLIxlGZKh63tc2ptKb+Y": "OEv0wHLusJx7zTCc0h3HbNIHLIxlGZKh63tc2ptKb+Y", + }, + signatures: { + "@migration:localhost": { + "ed25519:rXCrBin/+xyh+yW//vWte+2UV0et1ZHTWfalp/Ekack": + "dH596pGp8+f8dlwd81UrKDWoRDd24yAqqMSLqR4fJHyfszbn7qCvQA6LYZ023TLmk33FKcJqRtd2v/ykTmS3Bg", + }, + }, + }, + }, + user_signing_keys: { + "@migration:localhost": { + user_id: "@migration:localhost", + usage: ["user_signing"], + keys: { + "ed25519:8XHpC3MeMReIfYneWIRX8c4ANgJuQ1+oFrktBcLka4o": "8XHpC3MeMReIfYneWIRX8c4ANgJuQ1+oFrktBcLka4o", + }, + signatures: { + "@migration:localhost": { + "ed25519:rXCrBin/+xyh+yW//vWte+2UV0et1ZHTWfalp/Ekack": + "FX6ylagvx3IG1zMf/ayYgDb/1+x0/F28pHQqzQMGGssAmc15nat/R6AF0QO7Qg7uqTAf04ohuZtWax3dTwjNDQ", + }, + }, + }, + }, +}; + +/** + * A `/room_keys/version` response containing the current server-side backup info. + * To be used during tests with fetchmock. + */ +const BACKUP_RESPONSE: KeyBackupInfo = { + auth_data: { + public_key: "2ffIfIB4oryqZpsJQjQNUaxgCzxliC6A4PJvnrN+XAA", + signatures: { + "@migration:localhost": { + "ed25519:TMWBMDZPFT": + "qBvalid/G4hnSF3hAeX4TtRN6/BqprgiYnLEtDuatyQ5WxWr0s4uSOyvHSglsRdpoo32FDBHfTIZkCOVxSLwAA", + }, + }, + }, + version: "2", + algorithm: "m.megolm_backup.v1.curve25519-aes-sha2", + etag: "0", + count: 0, +}; + +/** + * A dataset containing the information for the tested user. + * To be used during tests. + */ +export const MSK_NOT_CACHED_DATASET: DumpDataSetInfo = { + userId: "@migration:localhost", + deviceId: "CBGTADUILV", + pickleKey: "qEURMepfkMvoBQGaWlI9MZKYnDMsSAiW8aFTKXaeDV0", + keyQueryResponse: KEY_QUERY_RESPONSE, + rotatedKeyQueryResponse: ROTATED_KEY_QUERY_RESPONSE, + backupResponse: BACKUP_RESPONSE, + dumpPath: "spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/dump.json", +}; diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/README.md b/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/README.md new file mode 100644 index 00000000000..00226b0d231 --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/README.md @@ -0,0 +1,4 @@ +## Dump of a libolm indexeddb cryptostore where the identity is not trusted. + +A dump of an account where the identity was not verified. +Used as a test case for migration of the identity local trust. diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/dump.json b/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/dump.json new file mode 100644 index 00000000000..33783599857 --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/dump.json @@ -0,0 +1,117 @@ +{ + "account": [ + { + "value": "HZFUhjfHhYX2F1PiCYnW2RelVW/YHaGdcyTpfv86w2y1EIXFRxHYRpTvVBX+aq4ILG0kPzEtNpeFOgyU+7qyrDiy0krp/AmxCXplc2keqaR9AJBdh2aIkMkCkesSyXOmi5B3zmTNP8EFzcUnlxjNIH3Gem1/rIb0n2GpNZNcVzHncjHVzm3+7GjimXHPpDuRl8N/0oh2XF+SF2yBxYhp037BE8QUnStuKDaw5mBgectHjGgwerJsZDzF2+RQFmMzTTvKAu/TdokqOrsY+ndwNqBycKcUbJ30clZouk6Pr3hVknKmjg3QDDVn3+ePmyB1aWRqMxNLfGDepVa4aKKlW0/MwFrcQoed9J4jxfI2wNiUVlKAW8pPEPehYNhQ3TGuwt5vxK9ld4GxrcC3M+6BOVgeoJeXVTKXvakJNTUWTqRp1PnN76InEs1PekYYsMIw8BL+sutoo7Q0KzRlHfc5OfrBJzJO5DVWbmzR8Fjy5IYILC/vQinTr8I+baHxnhCXBNahpJzBkelw4/uJ/QrCx5VT5ksTco/yvFYKDqFjQDjpUWp1aJAyB9FQDSUCydRHCEtN00JmgedltflgCwc0a7uiLUfXdm+R/q5pgyzTI3ttcJNCGPsdK9so2blhs3KoOEf4hyqeInu4FS51r8eNbRes/F77l6zxux1lTIR9fFfdxV6jstRBSIBkwdrhCEy88DHuqpwxnsWS924CwnOCfzsGTmdII8dZPQlB8z/3v/YNWcvzmPRlYuQ2aIAFoekbM3REiTJyI0+H69j+lFi9o1qvHOvlmETVQjYqkIGRbHZ+DDnQJGwWF2PfS+sr4Xm3e17hZ22I99BgFR0wAP8aIwDlU6Jc/ylUlnd6t2EG9AMw/IhrCb2ho25+ZdeBSNIVa4fXfFMNO6aLgQrhC5t68sH/NJMBaG6cfqn6z4DVe8EqIsC7ULmbItBftHDQ+NyCTXZIdGVepzyhbKip5mqZf46hJGQdkJ1rm8CYkaFm5J/LNuFY4IT3ZSDpSoe5ruHSyLx+dqMZj0vjttP1toFho6sh2kB3DkkssAkifOHVnPJTBocwRHC62EEFxqILjRBajTSlNAf6MauPUIFAYf4+5Ad0upbOjso/aXk56zYpdllhR4a+vrQzPRLN05M1ClMTun0Pn9zlsxiy2JSW1wMcMqxCsRcUh8WixvO/oXaYExZOulUNHXp5cqXs4moer1bE07mgLlxqwLJT/tcl0dtMfRcEwbBgOmXdyDOkSY/4xM1Ivw+z9V4lYZvI2i75nHiADyOHiMPypcr+KYcjhwpPrg+6JY7Tw1wXqF1LeaEq7B/a06SIxdFdr7pi7ErcfskSDmFU2bJxrNpuOAvDObfDjWI4HUg4NlOC6CPbX7Uyhj4DOGCijEocQE9hPT1V5RgY7p8LyWt35S4VUaIk7SMvV812vAYNIMvCOVmUW++FtUhQEMk75T1bXLGmNvWwHtPt8PSkGiUqUrAAM6x05XsVOmusEUowjp2uiHzRTn5Z/zg3wsHMtYExeURUGaUGFWTDENJjFCAeGO0gP5qrVljgKmGddXcYnVaCyU0z/siUtSq/MxxM4fVRr/44o/rqYz5BDalolEojV+pFcpEaVlL/6fx9uk6vg0UZ+52xz6gTdnEcp2bmKzd0wtKkl0QzpenurtzNn/7VB0HhIHl23LY7KRBn24kElQAYmxYXEWvwWXroJRZ2yiB/UYzigqeAk+dWFttfJRJUPHxF6aaDablC56BRvW4XgXZhK4p6svvLC/LP0RQFuFYBd2UQMtua7NgS8EzqEhswJRdyCmBcZWIUjgUQhH0Kk7Kchp7keTthrv5TztLgxDF81SBGGSIxWmYgaaxovAj18NKZzwVE8iY9BwHnhQ5T4AxgURi/YqV0jfuKTIqjeo6nCyERLQmo3yv4k94cBEJ25uT8R5pESVZCyU4KVYkULoNJB7gGHXyY5ejNqnK8pkh1xyt9w1GGjgVsCIOMTVHpQM0P5XebiDNuveM5Q2p6GPBLFAQcrjJgeNxUXZzbQK4niNAONPtB4/+Q+QVehQ7gTLOz8HepEay3aoIQXRXjf4QMjvyH3Sf8Qy3fr3/iJzU0khX27ZsoB0sGs0IBFxKKyBfLPbueffMuQd+dtJt3d/pbQkNQaNkbH7FcCgi+WIgKZRMBB7oTtphyNCqD9makB84AzRgzaJNDaoywdgjjxNkjO0/DsEbxXhURmR3/WWiElfNfb+AL1CfAPeKhYpEj0tsmampYIPvorRqYzjExPgfFyQjf9OqZPRT14Ql8izXj9vSNzZgMZBaoJ0arYyDd0O6XuzKFIi+vS8Jg3dXNEnI7WJNSbrJtpw3hHCsu52dAlA+iefirooVw0J6APIkYc2vs167XEwXOWbao9Qp9pBxc+lp+6wk1350W/8/y1O9aAgvMGedkBg/U/nfkUVw8StSmEtMoa/TUsK3woGqhzUYDf2IdAFcKG3MOCt5O4a04wlQgW106nxDZb/8Ec32r4MvlWwUeJj2P8eGWiBwCsKcf8IODwz1bm8++Kpe7z26V6v/2HsKtioSMnHX7bRmsYEaB8Cl59Itq6YZgGAtk148pwxqwL3P9/UTV4RfA3jakJiDUVJJcm0PqbHnP1wEjXr1xp23REMoq0TaEVcE9Q+EnkEWDJkyTov0Jmx0VR74wOoOAJEaZbvqV5fL4qVErVijA/GLMsgkhs5IbjMW+kQq0ZrYtW7wnM/9UhDP4dSzUvKCeWLU8UJlwkOoefWdPT9tYw+fXIO9ksZ54hVtT8xFUiTWdy6Y+A4P8NpaZyeJ8phh6GitbXX7agINEITryuMffKD2Zuq5sAP9wpgKZoF3h4xlKK8yBqyAXzDMX3JyhuaXYuckGUtM76iFWQgzyoFfHSspM1m61MubBa82PTQuQAca+ZBJyTUvn9iL8Nr24B1JghlP+A1Ju2TmHLmaNN8RNyah3LJOswds0l2ikS3QQa74j6ixKGtbh9qcyWqskDfCqE3QjT1s/mLXwD/7wwanxj+Yc23aGwI3pcQCipak/30EVoQK69TIS8uVPVVJEVj+RgPedefEubsElYbbfS7/MJH08/H7IYSgkhfd0LlemUDT5wBE4IdjlUoJ4IIREjwIeQSf4jGiY/q2smggRPB/0GGCCjHBSGajvfilw5l3+J6Ohr9bimvXmNZVBz1uryCeKj+fr2p0YQoUx/9Cx1ECKRuhG/SQDEqbEz8PSPFFrF2wYCaF42Ti3nqTV2fpWuRRljiQJ5ifPTSqAIkQPDg7cE5dAbXEHWus4GcMQNRYFWw/xKHHMy17KLxVIozAZnNdWWVNeXHTfbhCvrPPb43PAkrhIdhyWOkA8fSs6wDuTOp5wEDF4CN4NdSQBSVh+w9DSCnhysOBAVBQq61tI6Ra5tjvgWRFj//+GtRMH/cdu+M7Rc7W5RV/GiTdhX7AkvtC4LRkzSaqPqtSgKSpp+nQjeseRhgmBFd/77OV7unPkoJGOpqHBIEVGc5YLHGYjC/NEf3XAALy6LgAcI6t3OCGxQVy6Cwm5dS31lwK8C/orIhVM14ga/5EDX6rdyhpZtaYJuVxNxL1eyzkQnuPLCkZtiHnsZWX8ZeIdqMQEn2BiY9xsdLP9/lIUdQjUkwnAmBU3pSl+wZli55yFxhCnBLXeNx/4zAJKdR/hB8n8R+lQzbqSCrXegcPIbyDgpbzsRUElZHkSLLOP6nDfAioTCUW2W6rzbY2yCerPvvEQnDc18XgLgYsW6sqFc1z7oo54xmJXvQUkjXfW6h4dhG+ENioImYr6QLPTFn2jzZFqh9G2RkRaalTujqylWIb7ipSqtHIURtBIN1rQwT79rdBgxFlxQdi+QUjG9UMPJpv2txZ64YuQWS76YF9V6SEk51aJf9DlrBZihEI/I0Mwuj/DxC2WWGQJ/xqxmQMi1aXWo+wOmkllOPkNmT5QOQWsiMFXRp3ZpVwGESWzIVhkCLcIYtaD2VnsXlleXoN+0NUpOqcLk3Tpu9vv/3HvjVZKgMZqPJ8D7IotPPu6NbKuTM/osJBCEH0t2QwUP6rhzicWAoqn9yfjRicfW/xdb0c4+N8HFgfHPv4odtKL1eSHrwcEdDes01bSGupgIlK8ftGSQ2hZXdsBCd9s1LNc/q5wcUyDSs+6owqfFxCoplV7qRA7zaJasg+v8OLz/TTxBJvDaPhiF532auJngmB1VM+Zo7HoCJRQEC6j4klSe86AMOWlu9Egi39NGjumm6RzAt2Hyeu2AGM8pc2MV2gtAV3UEtZ9Ems6gy+PnX9wSvA05vD23AwvqmGzhDI1oTETjRmLIOsfJutOFGYyeNh1gDFTRRUFJT+R/ea3VTKDwwF5RI0OAiKYGQoPifKyUkyVXgBS8iZ8cprT0E2hmwXCMXdgLxv35RonAbyolZwFx+5mG8l+RfxHlpm3iyO8iM8aNKnL6PAjgWgDyP0cal/uN8XGLO4Z5eFBMkYJSPOfzC7tjqe/GSU+c2Ra2tEMue+OkJ3sWjxw0QKzYZQWrj6h+6Y01gzZolMmazzkv5wvPpi4TDoBVBE8hZt3JMBaiWdsyOR2SC32rdWq5/Zp7HSo3k7nckP86WeF/JtqYftaaG832FS+p8z5ooW8Oq1P2UWP5Aw9k+yNwmlei71uOMllJ/P3xpHT7SMkNW2dZNILwtkMkpzAS3Og4TrArj94f1QBq4xdL3E6Sezp6EGe035GtgrZzKaUeniDbCi3xN1eR+j7qO7IjTRSMI1NZMKGjP59Nc9Q09OtfJH0NzD3tY/ua0R/m+ISgZaQJ+bFL6hyLEk6h+Kk7SWcQXLfMnLd37k+55H2M0lwxrjUZmS2gEifPqURMKIr2OOpVmN7cXofSRuG+sLS8x2Z3/8snhH1fehbw3d+KqqQo+3YBEERBCbvxJaXwl5h7BIf8P+o5oWX2C3dT+260QIkUeJqmcwPA/IJW5Hkqx2twHROGcWYBG9WLQA8829UEivWY4nl3t8HXPdZKXweHtbir4nvbR8FCU7DVrAlA9ykxVEVamUM5R+MiIwbE0TsWg", + "key": "-" + }, + { + "value": {}, + "key": "crossSigningKeys" + } + ], + "device_data": [ + { + "value": { + "devices": { + "@untrusted:localhost": { + "VJPSPVPWZT": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:VJPSPVPWZT": "+RxCNRFPqBZJm6PLjEJsSdFixGWQJygD5Os11/+6PC0", + "ed25519:VJPSPVPWZT": "wqH7xK/DQya8m05Vy4rnacjugGNBiY+7Ml6wyRVkM9U" + }, + "verified": 1, + "known": true, + "unsigned": { + "device_display_name": "localhost:8080: Chrome on macOS" + }, + "signatures": { + "@untrusted:localhost": { + "ed25519:VJPSPVPWZT": "XC+RoKL/zVZOIwk/bGEQJlJu49QicY1v6vSDMHA2y0/fpX/MD4KiWGD7+W5DFD54E8FrFVTsIgkzat561qdTBQ" + } + } + }, + "IXNYALOZWU": { + "algorithms": ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + "keys": { + "curve25519:IXNYALOZWU": "EHMQEtJd9INJg28HwKK8Te1EX8obR3VTtyNwf/rcczM", + "ed25519:IXNYALOZWU": "OxMfZHsYJvroTp1RtjUOejpWbRBryN6VsojC5dKR74U" + }, + "verified": 0, + "known": false, + "unsigned": { + "device_display_name": "localhost:8080: Chrome on macOS" + }, + "signatures": { + "@untrusted:localhost": { + "ed25519:IXNYALOZWU": "tWaTiRKc95ZCqM2qrKTdq1sQ3DPFgw3vdrOVmWIHQwj92DCgJtnQ9uymLMOq+MSb80bdBBjXwrNeOufgaL/6CQ", + "ed25519:+ik0n/QnBPq8H/48wAT+54slKk1SL7NIk/HtiN/cNEg": "+QXZFLiAv+k7UXgAP6AXLk/PdZ3TlJ77M23m73v8qvavAlnkLBAjKNA3BG39JTQET5UhW5DnCohwsbGP+aY1Cw" + } + } + } + } + }, + "crossSigningInfo": { + "@untrusted:localhost": { + "keys": { + "master": { + "keys": { + "ed25519:Uahbc3+Rk65y0ku6T2RL/29fEA9Bum6+OaqptG6df3g": "Uahbc3+Rk65y0ku6T2RL/29fEA9Bum6+OaqptG6df3g" + }, + "signatures": { + "@untrusted:localhost": { + "ed25519:IXNYALOZWU": "KdAdyKO2sb3Di3bdK+oxf+gjMSmW/sisRNvpKZORPKwmy2SGaKGYkecBtslunoFjnb+hjIESgweQu6cHoNX4AA", + "ed25519:Uahbc3+Rk65y0ku6T2RL/29fEA9Bum6+OaqptG6df3g": "b0R9Id5HxHYo+MA22Vlq0OckTrWnSWhgHLvF8Wr4e154JdtOyK7N0aXPQPkrLB0fmyVmGdbDa9xs9jsfINGmDw" + } + }, + "usage": ["master"], + "user_id": "@untrusted:localhost" + }, + "self_signing": { + "keys": { + "ed25519:+ik0n/QnBPq8H/48wAT+54slKk1SL7NIk/HtiN/cNEg": "+ik0n/QnBPq8H/48wAT+54slKk1SL7NIk/HtiN/cNEg" + }, + "usage": ["self_signing"], + "user_id": "@untrusted:localhost", + "signatures": { + "@untrusted:localhost": { + "ed25519:Uahbc3+Rk65y0ku6T2RL/29fEA9Bum6+OaqptG6df3g": "z/5z51jbRpyDQhYnfUHhhb5fUbzRDlfjD8mZA2ZGStpE/F41lDyxjlvF2W/E2CJ27bmJFdk7nC+ZCwriYfYxBw" + } + } + }, + "user_signing": { + "keys": { + "ed25519:L/8HbQWnK9OidAcDVB+Az9b0Mx3OdBtIMFsUjV6qgSQ": "L/8HbQWnK9OidAcDVB+Az9b0Mx3OdBtIMFsUjV6qgSQ" + }, + "usage": ["user_signing"], + "user_id": "@untrusted:localhost", + "signatures": { + "@untrusted:localhost": { + "ed25519:Uahbc3+Rk65y0ku6T2RL/29fEA9Bum6+OaqptG6df3g": "UuNvzebLQn31LYGbx+ADe60BB25kWy4SVVyd9BXlY/tAZMoA8Tmq1e2R2tJJtPdJxC/Oogktj2+iikZV/YMjAQ" + } + } + } + }, + "firstUse": true, + "crossSigningVerifiedBefore": false + } + }, + "trackingStatus": { + "@untrusted:localhost": 3 + }, + "syncToken": "s1_4971_0_1_71_1_1_111_0_1" + }, + "key": "-" + } + ], + "inbound_group_sessions": [], + "inbound_group_sessions_withheld": [], + "notified_error_devices": [], + "outgoingRoomKeyRequests": [], + "parked_shared_history": [], + "rooms": [], + "session_problems": [], + "sessions": [], + "sessions_needing_backup": [], + "shared_history_inbound_group_sessions": [] +} diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/index.ts b/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/index.ts new file mode 100644 index 00000000000..b89a0f3caef --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/index.ts @@ -0,0 +1,110 @@ +import { DumpDataSetInfo } from "../index"; + +/** + * A key query response containing the current keys of the tested user. + * To be used during tests with fetchmock. + */ +const KEY_QUERY_RESPONSE = { + device_keys: { + "@untrusted:localhost": { + IXNYALOZWU: { + algorithms: ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + device_id: "IXNYALOZWU", + keys: { + "curve25519:IXNYALOZWU": "EHMQEtJd9INJg28HwKK8Te1EX8obR3VTtyNwf/rcczM", + "ed25519:IXNYALOZWU": "OxMfZHsYJvroTp1RtjUOejpWbRBryN6VsojC5dKR74U", + }, + signatures: { + "@untrusted:localhost": { + "ed25519:IXNYALOZWU": + "tWaTiRKc95ZCqM2qrKTdq1sQ3DPFgw3vdrOVmWIHQwj92DCgJtnQ9uymLMOq+MSb80bdBBjXwrNeOufgaL/6CQ", + "ed25519:+ik0n/QnBPq8H/48wAT+54slKk1SL7NIk/HtiN/cNEg": + "+QXZFLiAv+k7UXgAP6AXLk/PdZ3TlJ77M23m73v8qvavAlnkLBAjKNA3BG39JTQET5UhW5DnCohwsbGP+aY1Cw", + }, + }, + user_id: "@untrusted:localhost", + unsigned: { + device_display_name: "localhost:8080: Chrome on macOS", + }, + }, + VJPSPVPWZT: { + algorithms: ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + device_id: "VJPSPVPWZT", + keys: { + "curve25519:VJPSPVPWZT": "+RxCNRFPqBZJm6PLjEJsSdFixGWQJygD5Os11/+6PC0", + "ed25519:VJPSPVPWZT": "wqH7xK/DQya8m05Vy4rnacjugGNBiY+7Ml6wyRVkM9U", + }, + signatures: { + "@untrusted:localhost": { + "ed25519:VJPSPVPWZT": + "XC+RoKL/zVZOIwk/bGEQJlJu49QicY1v6vSDMHA2y0/fpX/MD4KiWGD7+W5DFD54E8FrFVTsIgkzat561qdTBQ", + }, + }, + user_id: "@untrusted:localhost", + unsigned: { + device_display_name: "localhost:8080: Chrome on macOS", + }, + }, + }, + }, + failures: {}, + master_keys: { + "@untrusted:localhost": { + keys: { + "ed25519:Uahbc3+Rk65y0ku6T2RL/29fEA9Bum6+OaqptG6df3g": "Uahbc3+Rk65y0ku6T2RL/29fEA9Bum6+OaqptG6df3g", + }, + signatures: { + "@untrusted:localhost": { + "ed25519:IXNYALOZWU": + "KdAdyKO2sb3Di3bdK+oxf+gjMSmW/sisRNvpKZORPKwmy2SGaKGYkecBtslunoFjnb+hjIESgweQu6cHoNX4AA", + "ed25519:Uahbc3+Rk65y0ku6T2RL/29fEA9Bum6+OaqptG6df3g": + "b0R9Id5HxHYo+MA22Vlq0OckTrWnSWhgHLvF8Wr4e154JdtOyK7N0aXPQPkrLB0fmyVmGdbDa9xs9jsfINGmDw", + }, + }, + usage: ["master"], + user_id: "@untrusted:localhost", + }, + }, + self_signing_keys: { + "@untrusted:localhost": { + keys: { + "ed25519:+ik0n/QnBPq8H/48wAT+54slKk1SL7NIk/HtiN/cNEg": "+ik0n/QnBPq8H/48wAT+54slKk1SL7NIk/HtiN/cNEg", + }, + signatures: { + "@untrusted:localhost": { + "ed25519:Uahbc3+Rk65y0ku6T2RL/29fEA9Bum6+OaqptG6df3g": + "z/5z51jbRpyDQhYnfUHhhb5fUbzRDlfjD8mZA2ZGStpE/F41lDyxjlvF2W/E2CJ27bmJFdk7nC+ZCwriYfYxBw", + }, + }, + usage: ["self_signing"], + user_id: "@untrusted:localhost", + }, + }, + user_signing_keys: { + "@untrusted:localhost": { + keys: { + "ed25519:L/8HbQWnK9OidAcDVB+Az9b0Mx3OdBtIMFsUjV6qgSQ": "L/8HbQWnK9OidAcDVB+Az9b0Mx3OdBtIMFsUjV6qgSQ", + }, + signatures: { + "@untrusted:localhost": { + "ed25519:Uahbc3+Rk65y0ku6T2RL/29fEA9Bum6+OaqptG6df3g": + "UuNvzebLQn31LYGbx+ADe60BB25kWy4SVVyd9BXlY/tAZMoA8Tmq1e2R2tJJtPdJxC/Oogktj2+iikZV/YMjAQ", + }, + }, + usage: ["user_signing"], + user_id: "@untrusted:localhost", + }, + }, +}; + +/** + * A dataset containing the information for the tested user. + * To be used during tests. + */ +export const IDENTITY_NOT_TRUSTED_DATASET: DumpDataSetInfo = { + userId: "@untrusted:localhost", + deviceId: "VJPSPVPWZT", + pickleKey: "WVllQb4Lk/WwP4Q7iBfeTUHpgydZm9YqXI1B5bTvnIM", + keyQueryResponse: KEY_QUERY_RESPONSE, + dumpPath: "spec/test-utils/test_indexeddb_cryptostore_dump/unverified/dump.json", +}; diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 9d7fc913bd3..b9c76c9fb27 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -99,6 +99,8 @@ describe("initRustCrypto", () => { isBackupEnabled: jest.fn().mockResolvedValue(false), verifyBackup: jest.fn().mockResolvedValue({ trusted: jest.fn().mockReturnValue(false) }), getBackupKeys: jest.fn(), + getIdentity: jest.fn().mockResolvedValue(null), + trackedUsers: jest.fn(), } as unknown as Mocked; } @@ -180,6 +182,7 @@ describe("initRustCrypto", () => { jest.spyOn(Migration, "migrateMegolmSessions").mockResolvedValue(undefined); const testOlmMachine = makeTestOlmMachine(); + testOlmMachine.trackedUsers.mockResolvedValue([]); jest.spyOn(OlmMachine, "initFromStore").mockResolvedValue(testOlmMachine); }); diff --git a/src/rust-crypto/index.ts b/src/rust-crypto/index.ts index e3c34a6dbb0..6defede1e95 100644 --- a/src/rust-crypto/index.ts +++ b/src/rust-crypto/index.ts @@ -23,7 +23,11 @@ import { ServerSideSecretStorage } from "../secret-storage"; import { ICryptoCallbacks } from "../crypto"; import { Logger } from "../logger"; import { CryptoStore, MigrationState } from "../crypto/store/base"; -import { migrateFromLegacyCrypto, migrateRoomSettingsFromLegacyCrypto } from "./libolm_migration"; +import { + migrateFromLegacyCrypto, + migrateLegacyLocalTrustIfNeeded, + migrateRoomSettingsFromLegacyCrypto, +} from "./libolm_migration"; /** * Create a new `RustCrypto` implementation @@ -190,13 +194,24 @@ async function initOlmMachine( // We need to do an initial keys query so that the rust stack can properly update trust of // the user device and identity from the migrated private keys. // If not done, there is a short period where the own device/identity trust will be undefined after migration. - try { - await rustCrypto.userHasCrossSigningKeys(userId); - } catch (e) { - // We don't want to fail the startup if this fails, but we do want to log it. - // It will be retried by the sdk. - logger.error("Failed to check for cross-signing keys after migration", e); + let initialKeyQueryDone = false; + while (!initialKeyQueryDone) { + try { + await rustCrypto.userHasCrossSigningKeys(userId); + initialKeyQueryDone = true; + } catch (e) { + // If the initial key query fails, we retry until it succeeds. + logger.error("Failed to check for cross-signing keys after migration, retrying", e); + } } + + // If the private master cross-signing key was not cached in the legacy store, the rust session + // will not be able to establish the trust of the user identity. + // That means that after migration the session could revert to unverified. + // In order to avoid asking the users to re-verify their sessions, we need to migrate the legacy local trust + // (if the legacy session was already verified) to the new session. + await migrateLegacyLocalTrustIfNeeded({ legacyCryptoStore, rustCrypto, logger }); + await legacyCryptoStore.setMigrationState(MigrationState.INITIAL_OWN_KEY_QUERY_DONE); } } diff --git a/src/rust-crypto/libolm_migration.ts b/src/rust-crypto/libolm_migration.ts index 5cae154f734..b8e617e182f 100644 --- a/src/rust-crypto/libolm_migration.ts +++ b/src/rust-crypto/libolm_migration.ts @@ -23,6 +23,8 @@ import { decryptAES, IEncryptedPayload } from "../crypto/aes"; import { IHttpOpts, MatrixHttpApi } from "../http-api"; import { requestKeyBackupVersion } from "./backup"; import { IRoomEncryption } from "../crypto/RoomList"; +import { CrossSigningKeyInfo } from "../crypto-api"; +import { RustCrypto } from "./rust-crypto"; /** * Determine if any data needs migrating from the legacy store, and do so. @@ -380,3 +382,101 @@ async function getAndDecryptCachedSecretKey( return encodedKey === null ? undefined : await decryptAES(encodedKey, legacyPickleKey, name); } + +/** + * Check if the user's published identity (ie, public cross-signing keys) was trusted by the legacy session, + * and if so mark it as trusted in the Rust session if needed. + * + * By default, if the legacy session didn't have the private MSK, the migrated session will revert to unverified, + * even if the user has verified the session in the past. + * + * This only occurs if the private MSK was not cached in the crypto store (USK and SSK private keys won't help + * to establish trust: the trust is rooted in the MSK). + * + * Rust crypto will only consider the current session as trusted if we import the private MSK itself. + * + * We could prompt the user to verify the session again, but it's probably better to just mark the user identity + * as locally verified if it was before. + * + * See https://github.com/element-hq/element-web/issues/27079 + * + * @param args - Argument object. + */ +export async function migrateLegacyLocalTrustIfNeeded(args: { + /** The legacy crypto store that is migrated. */ + legacyCryptoStore: CryptoStore; + /** The migrated rust crypto stack. */ + rustCrypto: RustCrypto; + /** The logger to use */ + logger: Logger; +}): Promise { + const { legacyCryptoStore, rustCrypto, logger } = args; + // Get the public cross-signing identity from rust. + const rustOwnIdentity = await rustCrypto.getOwnIdentity(); + if (!rustOwnIdentity) { + // There are no cross-signing keys published server side, so nothing to do here. + return; + } + if (rustOwnIdentity.isVerified()) { + // The rust session already trusts the keys, so again, nothing to do. + return; + } + + const legacyLocallyTrustedMSK = await getLegacyTrustedPublicMasterKeyBase64(legacyCryptoStore); + if (!legacyLocallyTrustedMSK) { + // The user never verified their identity in the legacy session, so nothing to do. + return; + } + + const mskInfo: CrossSigningKeyInfo = JSON.parse(rustOwnIdentity.masterKey); + if (!mskInfo.keys || Object.keys(mskInfo.keys).length === 0) { + // This should not happen, but let's be safe + logger.error("Post Migration | Unexpected error: no master key in the rust session."); + return; + } + const rustSeenMSK = Object.values(mskInfo.keys)[0]; + + if (rustSeenMSK && rustSeenMSK == legacyLocallyTrustedMSK) { + logger.info(`Post Migration: Migrating legacy trusted MSK: ${legacyLocallyTrustedMSK} to locally verified.`); + // Let's mark the user identity as locally verified as part of the migration. + await rustOwnIdentity!.verify(); + // As well as marking the MSK as trusted, `OlmMachine.verify` returns a + // `SignatureUploadRequest` which will publish a signature of the MSK using + // this device. In this case, we ignore the request: since the user hasn't + // actually re-verified the MSK, we don't publish a new signature. (`.verify` + // doesn't store the signature, and if we drop the request here it won't be + // retried.) + // + // Not publishing the signature is consistent with the behaviour of + // matrix-crypto-sdk when the private key is imported via + // `importCrossSigningKeys`, and when the identity is verified via interactive + // verification. + // + // [Aside: device signatures on the MSK are not considered by the rust-sdk to + // establish the trust of the user identity so in any case, what we actually do + // here is somewhat moot.] + } +} + +/** + * Checks if the legacy store has a trusted public master key, and returns it if so. + * + * @param legacyStore - The legacy store to check. + * + * @returns `null` if there were no cross signing keys or if they were not trusted. The trusted public master key if it was. + */ +async function getLegacyTrustedPublicMasterKeyBase64(legacyStore: CryptoStore): Promise { + let maybeTrustedKeys: string | null = null; + await legacyStore.doTxn("readonly", "account", (txn) => { + legacyStore.getCrossSigningKeys(txn, (keys) => { + // can be an empty object after resetting cross-signing keys, see storeTrustedSelfKeys + const msk = keys?.master; + if (msk && Object.keys(msk.keys).length != 0) { + // `msk.keys` is an object with { [`ed25519:${pubKey}`]: pubKey } + maybeTrustedKeys = Object.values(msk.keys)[0]; + } + }); + }); + + return maybeTrustedKeys; +} diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index ace265b150c..7905510441e 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -1625,6 +1625,16 @@ export class RustCrypto extends TypedEventEmitter { + return await this.olmMachine.getIdentity(new RustSdkCryptoJs.UserId(this.userId)); + } } class EventDecryptor { From 92342c07edb6fcc73f0ed9d8fbcfb362970a8692 Mon Sep 17 00:00:00 2001 From: Andy Balaam Date: Mon, 18 Mar 2024 12:47:23 +0000 Subject: [PATCH 120/595] Introduce Membership TS type (take 2) (#4107) * Introduce Membership TS type * Adapt the Membership TS type to be an enum * Add docstrings for KnownMembership and Membership * Move Membership types into a separate file, exported from types.ts --------- Co-authored-by: Stanislav Demydiuk --- README.md | 2 +- examples/node/app.js | 2 +- spec/integ/crypto/crypto.spec.ts | 18 +- spec/integ/crypto/olm-encryption-spec.ts | 5 +- spec/integ/devicelist-integ.spec.ts | 7 +- .../integ/matrix-client-event-emitter.spec.ts | 7 +- .../matrix-client-event-timeline.spec.ts | 7 +- spec/integ/matrix-client-methods.spec.ts | 11 +- spec/integ/matrix-client-opts.spec.ts | 5 +- .../integ/matrix-client-room-timeline.spec.ts | 25 +-- spec/integ/matrix-client-syncing.spec.ts | 85 ++++----- ...matrix-client-unread-notifications.spec.ts | 9 +- spec/integ/sliding-sync-sdk.spec.ts | 39 ++-- spec/test-utils/test-utils.ts | 7 +- spec/unit/crypto.spec.ts | 5 +- spec/unit/crypto/algorithms/megolm.spec.ts | 5 +- spec/unit/event-timeline.spec.ts | 21 ++- spec/unit/matrix-client.spec.ts | 13 +- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 3 +- spec/unit/models/MSC3089TreeSpace.spec.ts | 13 +- spec/unit/room-member.spec.ts | 43 ++--- spec/unit/room-state.spec.ts | 99 ++++++---- spec/unit/room.spec.ts | 173 +++++++++--------- spec/unit/rust-crypto/RoomEncryptor.spec.ts | 3 +- spec/unit/scheduler.spec.ts | 3 +- spec/unit/sync-accumulator.spec.ts | 31 ++-- spec/unit/webrtc/groupCall.spec.ts | 23 +-- .../unit/webrtc/groupCallEventHandler.spec.ts | 3 +- src/@types/membership.ts | 57 ++++++ src/client.ts | 21 ++- src/crypto/algorithms/megolm.ts | 3 +- src/crypto/index.ts | 7 +- src/matrixrtc/MatrixRTCSession.ts | 6 +- src/models/MSC3089TreeSpace.ts | 5 +- src/models/event.ts | 5 +- src/models/room-member.ts | 9 +- src/models/room-state.ts | 12 +- src/models/room.ts | 51 ++++-- src/rust-crypto/RoomEncryptor.ts | 5 +- src/sliding-sync-sdk.ts | 9 +- src/store/memory.ts | 3 +- src/sync.ts | 5 +- src/types.ts | 1 + src/webrtc/groupCall.ts | 3 +- 44 files changed, 505 insertions(+), 364 deletions(-) create mode 100644 src/@types/membership.ts diff --git a/README.md b/README.md index f13deb399f3..325ed11114e 100644 --- a/README.md +++ b/README.md @@ -216,7 +216,7 @@ const matrixClient = sdk.createClient({ ```javascript matrixClient.on(RoomMemberEvent.Membership, function (event, member) { - if (member.membership === "invite" && member.userId === myUserId) { + if (member.membership === KnownMembership.Invite && member.userId === myUserId) { matrixClient.joinRoom(member.roomId).then(function () { console.log("Auto-joined %s", member.roomId); }); diff --git a/examples/node/app.js b/examples/node/app.js index e381f6c51cb..5e48e26c404 100644 --- a/examples/node/app.js +++ b/examples/node/app.js @@ -115,7 +115,7 @@ rl.on("line", function (line) { if (line.indexOf("/join ") === 0) { var roomIndex = line.split(" ")[1]; viewingRoom = roomList[roomIndex]; - if (viewingRoom.getMember(myUserId).membership === "invite") { + if (viewingRoom.getMember(myUserId).membership === KnownMembership.Invite) { // join the room first matrixClient.joinRoom(viewingRoom.roomId).then( function (room) { diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 9448b84ecc5..9e2106f0fe2 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -99,6 +99,7 @@ import { } from "./olm-utils"; import { ToDevicePayload } from "../../../src/models/ToDeviceMessage"; import { AccountDataAccumulator } from "../../test-utils/AccountDataAccumulator"; +import { KnownMembership } from "../../../src/@types/membership"; afterEach(() => { // reset fake-indexeddb after each test, to make sure we don't leak connections @@ -1242,7 +1243,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, content: { algorithm: "m.megolm.v1.aes-sha2" }, }), testUtils.mkMembership({ - mship: "join", + mship: KnownMembership.Join, sender: aliceClient.getUserId()!, }), ], @@ -1661,7 +1662,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, type: "m.room.member", state_key: "@alice:localhost", content: { - membership: "invite", + membership: KnownMembership.Invite, }, }, ], @@ -1810,7 +1811,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, type: "m.room.member", state_key: "@alice:localhost", content: { - membership: "invite", + membership: KnownMembership.Invite, }, }, ], @@ -1886,7 +1887,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, { type: "m.room.member", state_key: aliceClient.getUserId(), - content: { membership: "join" }, + content: { membership: KnownMembership.Join }, event_id: "$alijoin", }, ], @@ -1913,7 +1914,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, { type: "m.room.member", state_key: "@other:user", - content: { membership: "invite" }, + content: { membership: KnownMembership.Invite }, event_id: "$otherinvite", }, ], @@ -2061,7 +2062,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, fetchMock.getOnce(new RegExp(membersPath), { chunk: [ testUtils.mkMembershipCustom({ - membership: "join", + membership: KnownMembership.Join, sender: "@bob:xyz", }), ], @@ -3090,7 +3091,10 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, const roomResponse = { state: { events: [ - mkMembershipCustom({ membership: "join", sender: persistentStoreClient.getSafeUserId() }), + mkMembershipCustom({ + membership: KnownMembership.Join, + sender: persistentStoreClient.getSafeUserId(), + }), ...stateEvents, ], }, diff --git a/spec/integ/crypto/olm-encryption-spec.ts b/spec/integ/crypto/olm-encryption-spec.ts index aff150adb39..ff79bf28b21 100644 --- a/spec/integ/crypto/olm-encryption-spec.ts +++ b/spec/integ/crypto/olm-encryption-spec.ts @@ -36,6 +36,7 @@ import { TestClient } from "../../TestClient"; import { CRYPTO_ENABLED, IClaimKeysRequest, IQueryKeysRequest, IUploadKeysRequest } from "../../../src/client"; import { ClientEvent, IContent, ISendEventResponse, MatrixClient, MatrixEvent } from "../../../src/matrix"; import { DeviceInfo } from "../../../src/crypto/deviceinfo"; +import { KnownMembership } from "../../../src/@types/membership"; let aliTestClient: TestClient; const roomId = "!room:localhost"; @@ -316,11 +317,11 @@ function firstSync(testClient: TestClient): Promise { state: { events: [ testUtils.mkMembership({ - mship: "join", + mship: KnownMembership.Join, user: aliUserId, }), testUtils.mkMembership({ - mship: "join", + mship: KnownMembership.Join, user: bobUserId, }), ], diff --git a/spec/integ/devicelist-integ.spec.ts b/spec/integ/devicelist-integ.spec.ts index e9dac66efe6..bf29242dd24 100644 --- a/spec/integ/devicelist-integ.spec.ts +++ b/spec/integ/devicelist-integ.spec.ts @@ -19,6 +19,7 @@ limitations under the License. import { TestClient } from "../TestClient"; import * as testUtils from "../test-utils/test-utils"; import { logger } from "../../src/logger"; +import { KnownMembership } from "../../src/@types/membership"; const ROOM_ID = "!room:id"; @@ -43,7 +44,7 @@ function getSyncResponse(roomMembers: string[]) { stateEvents, roomMembers.map((m) => testUtils.mkMembership({ - mship: "join", + mship: KnownMembership.Join, sender: m, }), ), @@ -323,7 +324,7 @@ describe("DeviceList management:", function () { timeline: { events: [ testUtils.mkMembership({ - mship: "leave", + mship: KnownMembership.Leave, sender: "@bob:xyz", }), ], @@ -357,7 +358,7 @@ describe("DeviceList management:", function () { timeline: { events: [ testUtils.mkMembership({ - mship: "leave", + mship: KnownMembership.Leave, sender: "@bob:xyz", }), ], diff --git a/spec/integ/matrix-client-event-emitter.spec.ts b/spec/integ/matrix-client-event-emitter.spec.ts index 24f500572da..07a7233464e 100644 --- a/spec/integ/matrix-client-event-emitter.spec.ts +++ b/spec/integ/matrix-client-event-emitter.spec.ts @@ -28,6 +28,7 @@ import { } from "../../src"; import * as utils from "../test-utils/test-utils"; import { TestClient } from "../TestClient"; +import { KnownMembership } from "../../src/@types/membership"; describe("MatrixClient events", function () { const selfUserId = "@alice:localhost"; @@ -85,7 +86,7 @@ describe("MatrixClient events", function () { events: [ utils.mkMembership({ room: "!erufh:bar", - mship: "join", + mship: KnownMembership.Join, user: "@foo:bar", }), utils.mkEvent({ @@ -272,7 +273,7 @@ describe("MatrixClient events", function () { membersInvokeCount++; expect(member.roomId).toEqual("!erufh:bar"); expect(member.userId).toEqual("@foo:bar"); - expect(member.membership).toEqual("join"); + expect(member.membership).toEqual(KnownMembership.Join); }); client!.on(RoomStateEvent.NewMember, function (event, state, member) { newMemberInvokeCount++; @@ -310,7 +311,7 @@ describe("MatrixClient events", function () { }); client!.on(RoomMemberEvent.Membership, function (event, member) { membershipInvokeCount++; - expect(member.membership).toEqual("join"); + expect(member.membership).toEqual(KnownMembership.Join); }); client!.startClient(); diff --git a/spec/integ/matrix-client-event-timeline.spec.ts b/spec/integ/matrix-client-event-timeline.spec.ts index 55aef20c23f..5785732422d 100644 --- a/spec/integ/matrix-client-event-timeline.spec.ts +++ b/spec/integ/matrix-client-event-timeline.spec.ts @@ -36,6 +36,7 @@ import { TestClient } from "../TestClient"; import { FeatureSupport, Thread, ThreadEvent } from "../../src/models/thread"; import { emitPromise } from "../test-utils/test-utils"; import { Feature, ServerSupport } from "../../src/feature"; +import { KnownMembership } from "../../src/@types/membership"; const userId = "@alice:localhost"; const userName = "Alice"; @@ -63,7 +64,7 @@ const buildRelationPaginationQuery = (params: QueryDict): string => { const USER_MEMBERSHIP_EVENT = utils.mkMembership({ room: roomId, - mship: "join", + mship: KnownMembership.Join, user: userId, name: userName, event: false, @@ -98,7 +99,7 @@ const INITIAL_SYNC_DATA = { events: [ withoutRoomId(ROOM_NAME_EVENT), utils.mkMembership({ - mship: "join", + mship: KnownMembership.Join, user: otherUserId, name: "Bob", event: false, @@ -1921,7 +1922,7 @@ describe("MatrixClient event timelines", function () { // a state event, followed by a redaction thereof const event = utils.mkMembership({ - mship: "join", + mship: KnownMembership.Join, user: otherUserId, }); const redaction = utils.mkEvent({ diff --git a/spec/integ/matrix-client-methods.spec.ts b/spec/integ/matrix-client-methods.spec.ts index ae5ceb93e03..ddfdcf350e1 100644 --- a/spec/integ/matrix-client-methods.spec.ts +++ b/spec/integ/matrix-client-methods.spec.ts @@ -27,6 +27,7 @@ import { ISearchResults } from "../../src/@types/search"; import { IStore } from "../../src/store"; import { CryptoBackend } from "../../src/common-crypto/CryptoBackend"; import { SetPresence } from "../../src/sync"; +import { KnownMembership } from "../../src/@types/membership"; describe("MatrixClient", function () { const userId = "@alice:localhost"; @@ -162,7 +163,7 @@ describe("MatrixClient", function () { utils.mkMembership({ user: userId, room: roomId, - mship: "join", + mship: KnownMembership.Join, event: true, }), ]); @@ -182,7 +183,7 @@ describe("MatrixClient", function () { utils.mkMembership({ user: userId, room: roomId, - mship: "join", + mship: KnownMembership.Join, event: true, }), ]); @@ -269,7 +270,7 @@ describe("MatrixClient", function () { utils.mkMembership({ user: userId, room: roomId, - mship: "knock", + mship: KnownMembership.Knock, event: true, }), ]); @@ -1912,7 +1913,7 @@ const buildEventJoinRules = () => new MatrixEvent({ age: 80123696, content: { - join_rule: "invite", + join_rule: KnownMembership.Invite, }, event_id: "$6JDDeDp7fEc0F6YnTWMruNcKWFltR3e9wk7wWDDJrAU", origin_server_ts: 1643815441191, @@ -1966,7 +1967,7 @@ const buildEventMember = () => content: { avatar_url: "mxc://matrix.org/aNtbVcFfwotudypZcHsIcPOc", displayname: "andybalaam-test1", - membership: "join", + membership: KnownMembership.Join, }, event_id: "$Ex5eVmMs_ti784mo8bgddynbwLvy6231lCycJr7Cl9M", origin_server_ts: 1643815439608, diff --git a/spec/integ/matrix-client-opts.spec.ts b/spec/integ/matrix-client-opts.spec.ts index 15ef324cbf9..75edf1c50eb 100644 --- a/spec/integ/matrix-client-opts.spec.ts +++ b/spec/integ/matrix-client-opts.spec.ts @@ -6,6 +6,7 @@ import { MatrixScheduler } from "../../src/scheduler"; import { MemoryStore } from "../../src/store/memory"; import { MatrixError } from "../../src/http-api"; import { IStore } from "../../src/store"; +import { KnownMembership } from "../../src/@types/membership"; describe("MatrixClient opts", function () { const baseUrl = "http://localhost.or.something"; @@ -43,13 +44,13 @@ describe("MatrixClient opts", function () { }), utils.mkMembership({ room: roomId, - mship: "join", + mship: KnownMembership.Join, user: userB, name: "Bob", }), utils.mkMembership({ room: roomId, - mship: "join", + mship: KnownMembership.Join, user: userId, name: "Alice", }), diff --git a/spec/integ/matrix-client-room-timeline.spec.ts b/spec/integ/matrix-client-room-timeline.spec.ts index 1eb7a0362d5..a5d4c220a95 100644 --- a/spec/integ/matrix-client-room-timeline.spec.ts +++ b/spec/integ/matrix-client-room-timeline.spec.ts @@ -30,6 +30,7 @@ import { Room, } from "../../src"; import { TestClient } from "../TestClient"; +import { KnownMembership } from "../../src/@types/membership"; describe("MatrixClient room timelines", function () { const userId = "@alice:localhost"; @@ -42,7 +43,7 @@ describe("MatrixClient room timelines", function () { const USER_MEMBERSHIP_EVENT = utils.mkMembership({ room: roomId, - mship: "join", + mship: KnownMembership.Join, user: userId, name: userName, }); @@ -76,7 +77,7 @@ describe("MatrixClient room timelines", function () { ROOM_NAME_EVENT, utils.mkMembership({ room: roomId, - mship: "join", + mship: KnownMembership.Join, user: otherUserId, name: "Bob", }), @@ -316,7 +317,7 @@ describe("MatrixClient room timelines", function () { // make an m.room.member event for alice's join const joinMshipEvent = utils.mkMembership({ - mship: "join", + mship: KnownMembership.Join, user: userId, room: roomId, name: "Old Alice", @@ -326,7 +327,7 @@ describe("MatrixClient room timelines", function () { // make an m.room.member event with prev_content for alice's nick // change const oldMshipEvent = utils.mkMembership({ - mship: "join", + mship: KnownMembership.Join, user: userId, room: roomId, name: userName, @@ -335,7 +336,7 @@ describe("MatrixClient room timelines", function () { oldMshipEvent.prev_content = { displayname: "Old Alice", avatar_url: undefined, - membership: "join", + membership: KnownMembership.Join, }; // set the list of events to return on scrollback (/messages) @@ -487,7 +488,7 @@ describe("MatrixClient room timelines", function () { utils.mkMembership({ user: userId, room: roomId, - mship: "join", + mship: KnownMembership.Join, name: "New Name", }), utils.mkMessage({ user: userId, room: roomId }), @@ -554,13 +555,13 @@ describe("MatrixClient room timelines", function () { utils.mkMembership({ user: userC, room: roomId, - mship: "join", + mship: KnownMembership.Join, name: "C", }), utils.mkMembership({ user: userC, room: roomId, - mship: "invite", + mship: KnownMembership.Invite, skey: userD, }), ]; @@ -571,9 +572,9 @@ describe("MatrixClient room timelines", function () { return Promise.all([httpBackend!.flush("/sync", 1), utils.syncPromise(client!)]).then(function () { expect(room.currentState.getMembers().length).toEqual(4); expect(room.currentState.getMember(userC)!.name).toEqual("C"); - expect(room.currentState.getMember(userC)!.membership).toEqual("join"); + expect(room.currentState.getMember(userC)!.membership).toEqual(KnownMembership.Join); expect(room.currentState.getMember(userD)!.name).toEqual(userD); - expect(room.currentState.getMember(userD)!.membership).toEqual("invite"); + expect(room.currentState.getMember(userD)!.membership).toEqual(KnownMembership.Invite); }); }); }); @@ -598,9 +599,9 @@ describe("MatrixClient room timelines", function () { expect(room.timeline[0].event).toEqual(eventData[0]); expect(room.currentState.getMembers().length).toEqual(2); expect(room.currentState.getMember(userId)!.name).toEqual(userName); - expect(room.currentState.getMember(userId)!.membership).toEqual("join"); + expect(room.currentState.getMember(userId)!.membership).toEqual(KnownMembership.Join); expect(room.currentState.getMember(otherUserId)!.name).toEqual("Bob"); - expect(room.currentState.getMember(otherUserId)!.membership).toEqual("join"); + expect(room.currentState.getMember(otherUserId)!.membership).toEqual(KnownMembership.Join); }); }); }); diff --git a/spec/integ/matrix-client-syncing.spec.ts b/spec/integ/matrix-client-syncing.spec.ts index 9a7db5fa580..0135eb152b8 100644 --- a/spec/integ/matrix-client-syncing.spec.ts +++ b/spec/integ/matrix-client-syncing.spec.ts @@ -46,6 +46,7 @@ import * as utils from "../test-utils/test-utils"; import { TestClient } from "../TestClient"; import { emitPromise, mkEvent, mkMessage } from "../test-utils/test-utils"; import { THREAD_RELATION_TYPE } from "../../src/models/thread"; +import { KnownMembership } from "../../src/@types/membership"; describe("MatrixClient syncing", () => { const selfUserId = "@alice:localhost"; @@ -123,7 +124,7 @@ describe("MatrixClient syncing", () => { type: "m.room.member", state_key: selfUserId, content: { - membership: "invite", + membership: KnownMembership.Invite, }, }, ], @@ -151,10 +152,10 @@ describe("MatrixClient syncing", () => { type: "m.room.member", state_key: selfUserId, content: { - membership: "leave", + membership: KnownMembership.Leave, }, prev_content: { - membership: "invite", + membership: KnownMembership.Invite, }, // XXX: And other fields required on an event }, @@ -167,10 +168,10 @@ describe("MatrixClient syncing", () => { type: "m.room.member", state_key: selfUserId, content: { - membership: "leave", + membership: KnownMembership.Leave, }, prev_content: { - membership: "invite", + membership: KnownMembership.Invite, }, // XXX: And other fields required on an event }, @@ -193,22 +194,22 @@ describe("MatrixClient syncing", () => { // Room, string, string fires++; expect(room.roomId).toBe(roomId); - expect(membership).toBe("invite"); + expect(membership).toBe(KnownMembership.Invite); expect(oldMembership).toBeFalsy(); // Second fire: a leave client!.once(RoomEvent.MyMembership, (room, membership, oldMembership) => { fires++; expect(room.roomId).toBe(roomId); - expect(membership).toBe("leave"); - expect(oldMembership).toBe("invite"); + expect(membership).toBe(KnownMembership.Leave); + expect(oldMembership).toBe(KnownMembership.Invite); // Third/final fire: a second invite client!.once(RoomEvent.MyMembership, (room, membership, oldMembership) => { fires++; expect(room.roomId).toBe(roomId); - expect(membership).toBe("invite"); - expect(oldMembership).toBe("leave"); + expect(membership).toBe(KnownMembership.Invite); + expect(oldMembership).toBe(KnownMembership.Leave); }); }); @@ -238,7 +239,7 @@ describe("MatrixClient syncing", () => { type: "m.room.member", state_key: selfUserId, content: { - membership: "knock", + membership: KnownMembership.Knock, }, }, ], @@ -266,10 +267,10 @@ describe("MatrixClient syncing", () => { type: "m.room.member", state_key: selfUserId, content: { - membership: "leave", + membership: KnownMembership.Leave, }, prev_content: { - membership: "knock", + membership: KnownMembership.Knock, }, // XXX: And other fields required on an event }, @@ -282,10 +283,10 @@ describe("MatrixClient syncing", () => { type: "m.room.member", state_key: selfUserId, content: { - membership: "leave", + membership: KnownMembership.Leave, }, prev_content: { - membership: "knock", + membership: KnownMembership.Knock, }, // XXX: And other fields required on an event }, @@ -308,22 +309,22 @@ describe("MatrixClient syncing", () => { // Room, string, string fires++; expect(room.roomId).toBe(roomId); - expect(membership).toBe("knock"); + expect(membership).toBe(KnownMembership.Knock); expect(oldMembership).toBeFalsy(); // Second fire: a leave client!.once(RoomEvent.MyMembership, (room, membership, oldMembership) => { fires++; expect(room.roomId).toBe(roomId); - expect(membership).toBe("leave"); - expect(oldMembership).toBe("knock"); + expect(membership).toBe(KnownMembership.Leave); + expect(oldMembership).toBe(KnownMembership.Knock); // Third/final fire: a second knock client!.once(RoomEvent.MyMembership, (room, membership, oldMembership) => { fires++; expect(room.roomId).toBe(roomId); - expect(membership).toBe("knock"); - expect(oldMembership).toBe("leave"); + expect(membership).toBe(KnownMembership.Knock); + expect(oldMembership).toBe(KnownMembership.Leave); }); }); @@ -381,7 +382,7 @@ describe("MatrixClient syncing", () => { type: "m.room.member", state_key: selfUserId, content: { - membership: "invite", + membership: KnownMembership.Invite, }, }, ], @@ -421,7 +422,7 @@ describe("MatrixClient syncing", () => { type: "m.room.member", state_key: selfUserId, content: { - membership: "knock", + membership: KnownMembership.Knock, }, }, ], @@ -533,12 +534,12 @@ describe("MatrixClient syncing", () => { events: [ utils.mkMembership({ room: roomOne, - mship: "join", + mship: KnownMembership.Join, user: otherUserId, }), utils.mkMembership({ room: roomOne, - mship: "join", + mship: KnownMembership.Join, user: selfUserId, }), utils.mkEvent({ @@ -556,7 +557,7 @@ describe("MatrixClient syncing", () => { syncData.rooms.join[roomOne].state.events.push( utils.mkMembership({ room: roomOne, - mship: "invite", + mship: KnownMembership.Invite, user: userC, }) as IStateEvent, ); @@ -589,7 +590,7 @@ describe("MatrixClient syncing", () => { syncData.rooms.join[roomOne].state.events.push( utils.mkMembership({ room: roomOne, - mship: "invite", + mship: KnownMembership.Invite, user: userC, }) as IStateEvent, ); @@ -617,7 +618,7 @@ describe("MatrixClient syncing", () => { syncData.rooms.join[roomOne].state.events.push( utils.mkMembership({ room: roomOne, - mship: "invite", + mship: KnownMembership.Invite, user: userC, }) as IStateEvent, ); @@ -644,7 +645,7 @@ describe("MatrixClient syncing", () => { syncData.rooms.join[roomOne].state.events.push( utils.mkMembership({ room: roomOne, - mship: "invite", + mship: KnownMembership.Invite, user: userC, }) as IStateEvent, ); @@ -719,12 +720,12 @@ describe("MatrixClient syncing", () => { }), utils.mkMembership({ room: roomOne, - mship: "join", + mship: KnownMembership.Join, user: otherUserId, }), utils.mkMembership({ room: roomOne, - mship: "join", + mship: KnownMembership.Join, user: selfUserId, }), utils.mkEvent({ @@ -750,13 +751,13 @@ describe("MatrixClient syncing", () => { events: [ utils.mkMembership({ room: roomTwo, - mship: "join", + mship: KnownMembership.Join, user: otherUserId, name: otherDisplayName, }), utils.mkMembership({ room: roomTwo, - mship: "join", + mship: KnownMembership.Join, user: selfUserId, }), utils.mkEvent({ @@ -1247,7 +1248,7 @@ describe("MatrixClient syncing", () => { const USER_MEMBERSHIP_EVENT = utils.mkMembership({ room: roomOne, - mship: "join", + mship: KnownMembership.Join, user: userA, }); @@ -1508,12 +1509,12 @@ describe("MatrixClient syncing", () => { }), utils.mkMembership({ room: roomOne, - mship: "join", + mship: KnownMembership.Join, user: otherUserId, }), utils.mkMembership({ room: roomOne, - mship: "join", + mship: KnownMembership.Join, user: selfUserId, }), utils.mkEvent({ @@ -1605,12 +1606,12 @@ describe("MatrixClient syncing", () => { }), utils.mkMembership({ room: roomOne, - mship: "join", + mship: KnownMembership.Join, user: otherUserId, }), utils.mkMembership({ room: roomOne, - mship: "join", + mship: KnownMembership.Join, user: selfUserId, }), utils.mkEvent({ @@ -1761,12 +1762,12 @@ describe("MatrixClient syncing", () => { events: [ utils.mkMembership({ room: roomId, - mship: "join", + mship: KnownMembership.Join, user: otherUserId, }), utils.mkMembership({ room: roomId, - mship: "join", + mship: KnownMembership.Join, user: selfUserId, }), utils.mkEvent({ @@ -1901,7 +1902,7 @@ describe("MatrixClient syncing", () => { it("should return a room based on the room initialSync API", async () => { httpBackend!.when("GET", `/rooms/${encodeURIComponent(roomOne)}/initialSync`).respond(200, { room_id: roomOne, - membership: "leave", + membership: KnownMembership.Leave, messages: { start: "start", end: "end", @@ -1950,7 +1951,7 @@ describe("MatrixClient syncing", () => { const room = await prom; expect(room.roomId).toBe(roomOne); - expect(room.getMyMembership()).toBe("leave"); + expect(room.getMyMembership()).toBe(KnownMembership.Leave); expect(room.name).toBe("Room Name"); expect(room.currentState.getStateEvents("m.room.name", "")?.getId()).toBe("$eventId"); expect(room.timeline[0].getContent().body).toBe("Message 1"); @@ -2042,7 +2043,7 @@ describe("MatrixClient syncing (IndexedDB version)", () => { type: "m.room.member", state_key: selfUserId, content: { - membership: "invite", + membership: KnownMembership.Invite, }, }, ], diff --git a/spec/integ/matrix-client-unread-notifications.spec.ts b/spec/integ/matrix-client-unread-notifications.spec.ts index 8238f4e1e8b..7b35cbbf582 100644 --- a/spec/integ/matrix-client-unread-notifications.spec.ts +++ b/spec/integ/matrix-client-unread-notifications.spec.ts @@ -34,6 +34,7 @@ import { TestClient } from "../TestClient"; import { ReceiptType } from "../../src/@types/read_receipts"; import { mkThread } from "../test-utils/thread"; import { SyncState } from "../../src/sync"; +import { KnownMembership } from "../../src/@types/membership"; const userA = "@alice:localhost"; const userB = "@bob:localhost"; @@ -229,7 +230,7 @@ describe("MatrixClient syncing", () => { content: { avatar_url: "", displayname: userB, - membership: "join", + membership: KnownMembership.Join, }, origin_server_ts: 2, sender: userB, @@ -270,7 +271,7 @@ describe("MatrixClient syncing", () => { }, { content: { - join_rule: "invite", + join_rule: KnownMembership.Invite, }, origin_server_ts: 4, sender: userB, @@ -316,7 +317,7 @@ describe("MatrixClient syncing", () => { avatar_url: "", displayname: userA, is_direct: true, - membership: "invite", + membership: KnownMembership.Invite, }, origin_server_ts: 8, sender: userB, @@ -338,7 +339,7 @@ describe("MatrixClient syncing", () => { content: { avatar_url: "", displayname: userA, - membership: "join", + membership: KnownMembership.Join, }, origin_server_ts: 10, sender: userA, diff --git a/spec/integ/sliding-sync-sdk.spec.ts b/spec/integ/sliding-sync-sdk.spec.ts index d67e66852e9..aaf4a1a04a3 100644 --- a/spec/integ/sliding-sync-sdk.spec.ts +++ b/spec/integ/sliding-sync-sdk.spec.ts @@ -43,6 +43,7 @@ import { IStoredClientOpts } from "../../src"; import { logger } from "../../src/logger"; import { emitPromise } from "../test-utils/test-utils"; import { defer } from "../../src/utils"; +import { KnownMembership } from "../../src/@types/membership"; describe("SlidingSyncSdk", () => { let client: MatrixClient | undefined; @@ -189,7 +190,7 @@ describe("SlidingSyncSdk", () => { name: "A", required_state: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), mkOwnStateEvent(EventType.RoomName, { name: "A" }, ""), ], @@ -204,7 +205,7 @@ describe("SlidingSyncSdk", () => { required_state: [], timeline: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), mkOwnEvent(EventType.RoomMessage, { body: "hello B" }), mkOwnEvent(EventType.RoomMessage, { body: "world B" }), @@ -216,7 +217,7 @@ describe("SlidingSyncSdk", () => { required_state: [], timeline: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), mkOwnEvent(EventType.RoomMessage, { body: "hello C" }), mkOwnEvent(EventType.RoomMessage, { body: "world C" }), @@ -229,7 +230,7 @@ describe("SlidingSyncSdk", () => { required_state: [], timeline: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), mkOwnEvent(EventType.RoomMessage, { body: "hello D" }), mkOwnEvent(EventType.RoomMessage, { body: "world D" }), @@ -244,7 +245,7 @@ describe("SlidingSyncSdk", () => { invite_state: [ { type: EventType.RoomMember, - content: { membership: "invite" }, + content: { membership: KnownMembership.Invite }, state_key: selfUserId, sender: "@bob:localhost", event_id: "$room_e_invite", @@ -265,7 +266,7 @@ describe("SlidingSyncSdk", () => { name: "#foo:localhost", required_state: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), mkOwnStateEvent(EventType.RoomCanonicalAlias, { alias: "#foo:localhost" }, ""), mkOwnStateEvent(EventType.RoomName, { name: "This should be ignored" }, ""), @@ -281,7 +282,7 @@ describe("SlidingSyncSdk", () => { required_state: [], timeline: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), ], joined_count: 5, @@ -293,7 +294,7 @@ describe("SlidingSyncSdk", () => { required_state: [], timeline: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), mkOwnEvent(EventType.RoomMessage, { body: "live event" }), ], @@ -308,7 +309,7 @@ describe("SlidingSyncSdk", () => { const gotRoom = client!.getRoom(roomA); expect(gotRoom).toBeTruthy(); expect(gotRoom!.name).toEqual(data[roomA].name); - expect(gotRoom!.getMyMembership()).toEqual("join"); + expect(gotRoom!.getMyMembership()).toEqual(KnownMembership.Join); assertTimelineEvents(gotRoom!.getLiveTimeline().getEvents().slice(-2), data[roomA].timeline); }); @@ -318,7 +319,7 @@ describe("SlidingSyncSdk", () => { const gotRoom = client!.getRoom(roomB); expect(gotRoom).toBeTruthy(); expect(gotRoom!.name).toEqual(data[roomB].name); - expect(gotRoom!.getMyMembership()).toEqual("join"); + expect(gotRoom!.getMyMembership()).toEqual(KnownMembership.Join); assertTimelineEvents(gotRoom!.getLiveTimeline().getEvents().slice(-5), data[roomB].timeline); }); @@ -372,7 +373,7 @@ describe("SlidingSyncSdk", () => { const gotRoom = client!.getRoom(roomH); expect(gotRoom).toBeTruthy(); expect(gotRoom!.name).toEqual(data[roomH].name); - expect(gotRoom!.getMyMembership()).toEqual("join"); + expect(gotRoom!.getMyMembership()).toEqual(KnownMembership.Join); // check the entire timeline is correct assertTimelineEvents(gotRoom!.getLiveTimeline().getEvents(), data[roomH].timeline); await expect(seenLiveEventDeferred.promise).resolves.toBeTruthy(); @@ -383,7 +384,7 @@ describe("SlidingSyncSdk", () => { await emitPromise(client!, ClientEvent.Room); const gotRoom = client!.getRoom(roomE); expect(gotRoom).toBeTruthy(); - expect(gotRoom!.getMyMembership()).toEqual("invite"); + expect(gotRoom!.getMyMembership()).toEqual(KnownMembership.Invite); expect(gotRoom!.currentState.getJoinRule()).toEqual(JoinRule.Invite); }); @@ -603,9 +604,9 @@ describe("SlidingSyncSdk", () => { required_state: [], timeline: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "invite" }, invitee), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Invite }, invitee), ], }); await httpBackend!.flush("/profile", 1, 1000); @@ -719,7 +720,7 @@ describe("SlidingSyncSdk", () => { required_state: [], timeline: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), mkOwnEvent(EventType.RoomMessage, { body: "hello" }), ], @@ -923,7 +924,7 @@ describe("SlidingSyncSdk", () => { required_state: [], timeline: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), mkOwnEvent(EventType.RoomMessage, { body: "hello" }), ], @@ -964,7 +965,7 @@ describe("SlidingSyncSdk", () => { required_state: [], timeline: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), mkOwnEvent(EventType.RoomMessage, { body: "hello" }), ], @@ -1050,12 +1051,12 @@ describe("SlidingSyncSdk", () => { required_state: [], timeline: [ mkOwnStateEvent(EventType.RoomCreate, {}, ""), - mkOwnStateEvent(EventType.RoomMember, { membership: "join" }, selfUserId), + mkOwnStateEvent(EventType.RoomMember, { membership: KnownMembership.Join }, selfUserId), mkOwnStateEvent(EventType.RoomPowerLevels, { users: { [selfUserId]: 100 } }, ""), { type: EventType.RoomMember, state_key: alice, - content: { membership: "join" }, + content: { membership: KnownMembership.Join }, sender: alice, origin_server_ts: Date.now(), event_id: "$alice", diff --git a/spec/test-utils/test-utils.ts b/spec/test-utils/test-utils.ts index 1e4f8d38eb3..965a6a08806 100644 --- a/spec/test-utils/test-utils.ts +++ b/spec/test-utils/test-utils.ts @@ -19,6 +19,7 @@ import { import { SyncState } from "../../src/sync"; import { eventMapperFor } from "../../src/event-mapper"; import { TEST_ROOM_ID } from "./test-data"; +import { KnownMembership, Membership } from "../../src/@types/membership"; /** * Return a promise that is resolved when the client next emits a @@ -87,7 +88,7 @@ export function getSyncResponse(roomMembers: string[], roomId = TEST_ROOM_ID): I for (let i = 0; i < roomMembers.length; i++) { roomResponse.state.events.push( mkMembershipCustom({ - membership: "join", + membership: KnownMembership.Join, sender: roomMembers[i], }), ); @@ -251,7 +252,7 @@ export function mkPresence(opts: IPresenceOpts & { event?: boolean }): Partial( - base: T & { membership: string; sender: string; content?: IContent }, + base: T & { membership: Membership; sender: string; content?: IContent }, ): T & { type: EventType; sender: string; state_key: string; content: IContent } & GeneratedMetadata { const content = base.content || {}; return mkEventCustom({ diff --git a/spec/unit/crypto.spec.ts b/spec/unit/crypto.spec.ts index 1a61d731165..680b973ad56 100644 --- a/spec/unit/crypto.spec.ts +++ b/spec/unit/crypto.spec.ts @@ -25,6 +25,7 @@ import { UserTrustLevel } from "../../src/crypto/CrossSigning"; import { CryptoBackend } from "../../src/common-crypto/CryptoBackend"; import { EventDecryptionResult } from "../../src/common-crypto/CryptoBackend"; import * as testData from "../test-utils/test-data"; +import { KnownMembership } from "../../src/@types/membership"; const Olm = global.Olm; @@ -463,7 +464,7 @@ describe("Crypto", function () { type: "m.room.member", sender: "@alice:example.com", room_id: roomId, - content: { membership: "invite" }, + content: { membership: KnownMembership.Invite }, state_key: "@bob:example.com", }), ]); @@ -795,7 +796,7 @@ describe("Crypto", function () { type: "m.room.member", sender: "@clara:example.com", room_id: roomId, - content: { membership: "invite" }, + content: { membership: KnownMembership.Invite }, state_key: "@bob:example.com", }), ]); diff --git a/spec/unit/crypto/algorithms/megolm.spec.ts b/spec/unit/crypto/algorithms/megolm.spec.ts index e5e92aebdb2..b27e59d4934 100644 --- a/spec/unit/crypto/algorithms/megolm.spec.ts +++ b/spec/unit/crypto/algorithms/megolm.spec.ts @@ -36,6 +36,7 @@ import { DeviceTrustLevel } from "../../../../src/crypto/CrossSigning"; import { MegolmEncryption as MegolmEncryptionClass } from "../../../../src/crypto/algorithms/megolm"; import { recursiveMapToObject } from "../../../../src/utils"; import { sleep } from "../../../../src/utils"; +import { KnownMembership } from "../../../../src/@types/membership"; const MegolmDecryption = algorithms.DECRYPTION_CLASSES.get("m.megolm.v1.aes-sha2")!; const MegolmEncryption = algorithms.ENCRYPTION_CLASSES.get("m.megolm.v1.aes-sha2")!; @@ -806,11 +807,11 @@ describe("MegolmDecryption", function () { aliceRoom.getEncryptionTargetMembers = jest.fn().mockResolvedValue([ { userId: "@alice:example.com", - membership: "join", + membership: KnownMembership.Join, }, { userId: "@bob:example.com", - membership: "join", + membership: KnownMembership.Join, }, ]); const BOB_DEVICES = { diff --git a/spec/unit/event-timeline.spec.ts b/spec/unit/event-timeline.spec.ts index 2ac49c49f39..52ef23c3625 100644 --- a/spec/unit/event-timeline.spec.ts +++ b/spec/unit/event-timeline.spec.ts @@ -7,6 +7,7 @@ import { MatrixClient } from "../../src/matrix"; import { Room } from "../../src/models/room"; import { RoomMember } from "../../src/models/room-member"; import { EventTimelineSet } from "../../src/models/event-timeline-set"; +import { KnownMembership } from "../../src/@types/membership"; describe("EventTimeline", function () { const roomId = "!foo:bar"; @@ -50,7 +51,7 @@ describe("EventTimeline", function () { const events = [ utils.mkMembership({ room: roomId, - mship: "invite", + mship: KnownMembership.Invite, user: userB, skey: userA, event: true, @@ -87,7 +88,7 @@ describe("EventTimeline", function () { const state = [ utils.mkMembership({ room: roomId, - mship: "invite", + mship: KnownMembership.Invite, user: userB, skey: userA, event: true, @@ -203,11 +204,11 @@ describe("EventTimeline", function () { it("should set event.sender for new and old events", function () { const sentinel = new RoomMember(roomId, userA); sentinel.name = "Alice"; - sentinel.membership = "join"; + sentinel.membership = KnownMembership.Join; const oldSentinel = new RoomMember(roomId, userA); sentinel.name = "Old Alice"; - sentinel.membership = "join"; + sentinel.membership = KnownMembership.Join; mocked(timeline.getState(EventTimeline.FORWARDS)!).getSentinelMember.mockImplementation(function (uid) { if (uid === userA) { @@ -246,11 +247,11 @@ describe("EventTimeline", function () { it("should set event.target for new and old m.room.member events", function () { const sentinel = new RoomMember(roomId, userA); sentinel.name = "Alice"; - sentinel.membership = "join"; + sentinel.membership = KnownMembership.Join; const oldSentinel = new RoomMember(roomId, userA); sentinel.name = "Old Alice"; - sentinel.membership = "join"; + sentinel.membership = KnownMembership.Join; mocked(timeline.getState(EventTimeline.FORWARDS)!).getSentinelMember.mockImplementation(function (uid) { if (uid === userA) { @@ -267,14 +268,14 @@ describe("EventTimeline", function () { const newEv = utils.mkMembership({ room: roomId, - mship: "invite", + mship: KnownMembership.Invite, user: userB, skey: userA, event: true, }); const oldEv = utils.mkMembership({ room: roomId, - mship: "ban", + mship: KnownMembership.Ban, user: userB, skey: userA, event: true, @@ -291,7 +292,7 @@ describe("EventTimeline", function () { const events = [ utils.mkMembership({ room: roomId, - mship: "invite", + mship: KnownMembership.Invite, user: userB, skey: userA, event: true, @@ -330,7 +331,7 @@ describe("EventTimeline", function () { const events = [ utils.mkMembership({ room: roomId, - mship: "invite", + mship: KnownMembership.Invite, user: userB, skey: userA, event: true, diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index ac43580913a..f80531f86bb 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -71,6 +71,7 @@ import * as featureUtils from "../../src/feature"; import { StubStore } from "../../src/store/stub"; import { SecretStorageKeyDescriptionAesV1, ServerSideSecretStorageImpl } from "../../src/secret-storage"; import { CryptoBackend } from "../../src/common-crypto/CryptoBackend"; +import { KnownMembership } from "../../src/@types/membership"; jest.useFakeTimers(); @@ -750,7 +751,7 @@ describe("MatrixClient", function () { it("should get (unstable) file trees with valid state", async () => { const roomId = "!room:example.org"; const mockRoom = { - getMyMembership: () => "join", + getMyMembership: () => KnownMembership.Join, currentState: { getStateEvents: (eventType, stateKey) => { /* eslint-disable jest/no-conditional-expect */ @@ -789,7 +790,7 @@ describe("MatrixClient", function () { it("should not get (unstable) file trees if not joined", async () => { const roomId = "!room:example.org"; const mockRoom = { - getMyMembership: () => "leave", // "not join" + getMyMembership: () => KnownMembership.Leave, // "not join" } as unknown as Room; client.getRoom = (getRoomId) => { expect(getRoomId).toEqual(roomId); @@ -812,7 +813,7 @@ describe("MatrixClient", function () { it("should not get (unstable) file trees with invalid create contents", async () => { const roomId = "!room:example.org"; const mockRoom = { - getMyMembership: () => "join", + getMyMembership: () => KnownMembership.Join, currentState: { getStateEvents: (eventType, stateKey) => { /* eslint-disable jest/no-conditional-expect */ @@ -849,7 +850,7 @@ describe("MatrixClient", function () { it("should not get (unstable) file trees with invalid purpose/subtype contents", async () => { const roomId = "!room:example.org"; const mockRoom = { - getMyMembership: () => "join", + getMyMembership: () => KnownMembership.Join, currentState: { getStateEvents: (eventType, stateKey) => { /* eslint-disable jest/no-conditional-expect */ @@ -1309,7 +1310,7 @@ describe("MatrixClient", function () { describe("redactEvent", () => { const roomId = "!room:example.org"; const mockRoom = { - getMyMembership: () => "join", + getMyMembership: () => KnownMembership.Join, currentState: { getStateEvents: (eventType, stateKey) => { if (eventType === EventType.RoomEncryption) { @@ -1448,7 +1449,7 @@ describe("MatrixClient", function () { const txnId = "m12345"; const mockRoom = { - getMyMembership: () => "join", + getMyMembership: () => KnownMembership.Join, updatePendingEvent: (event: MatrixEvent, status: EventStatus) => event.setStatus(status), hasEncryptionStateEvent: jest.fn().mockReturnValue(true), } as unknown as Room; diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 2c40e9a2230..d061c60d0cb 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -15,6 +15,7 @@ limitations under the License. */ import { EventTimeline, EventType, MatrixClient, MatrixError, MatrixEvent, Room } from "../../../src"; +import { KnownMembership } from "../../../src/@types/membership"; import { CallMembershipData } from "../../../src/matrixrtc/CallMembership"; import { MatrixRTCSession, MatrixRTCSessionEvent } from "../../../src/matrixrtc/MatrixRTCSession"; import { EncryptionKeysEventContent } from "../../../src/matrixrtc/types"; @@ -76,7 +77,7 @@ describe("MatrixRTCSession", () => { it("ignores memberships events of members not in the room", () => { const mockRoom = makeMockRoom([membershipTemplate]); - mockRoom.hasMembershipState = (state) => state === "join"; + mockRoom.hasMembershipState = (state) => state === KnownMembership.Join; sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); expect(sess?.memberships.length).toEqual(0); }); diff --git a/spec/unit/models/MSC3089TreeSpace.spec.ts b/spec/unit/models/MSC3089TreeSpace.spec.ts index 9ff97f253e4..8f000d84496 100644 --- a/spec/unit/models/MSC3089TreeSpace.spec.ts +++ b/spec/unit/models/MSC3089TreeSpace.spec.ts @@ -25,6 +25,7 @@ import { } from "../../../src/models/MSC3089TreeSpace"; import { DEFAULT_ALPHABET } from "../../../src/utils"; import { MatrixError } from "../../../src/http-api"; +import { KnownMembership } from "../../../src/@types/membership"; describe("MSC3089TreeSpace", () => { let client: MatrixClient; @@ -458,14 +459,14 @@ describe("MSC3089TreeSpace", () => { expect(stateKey).toBeUndefined(); return [ // Partial implementations - { getContent: () => ({ membership: "join" }), getStateKey: () => joinMemberId }, - { getContent: () => ({ membership: "knock" }), getStateKey: () => knockMemberId }, - { getContent: () => ({ membership: "invite" }), getStateKey: () => inviteMemberId }, - { getContent: () => ({ membership: "leave" }), getStateKey: () => leaveMemberId }, - { getContent: () => ({ membership: "ban" }), getStateKey: () => banMemberId }, + { getContent: () => ({ membership: KnownMembership.Join }), getStateKey: () => joinMemberId }, + { getContent: () => ({ membership: KnownMembership.Knock }), getStateKey: () => knockMemberId }, + { getContent: () => ({ membership: KnownMembership.Invite }), getStateKey: () => inviteMemberId }, + { getContent: () => ({ membership: KnownMembership.Leave }), getStateKey: () => leaveMemberId }, + { getContent: () => ({ membership: KnownMembership.Ban }), getStateKey: () => banMemberId }, // ensure we don't kick ourselves - { getContent: () => ({ membership: "join" }), getStateKey: () => selfUserId }, + { getContent: () => ({ membership: KnownMembership.Join }), getStateKey: () => selfUserId }, ]; }, }; diff --git a/spec/unit/room-member.spec.ts b/spec/unit/room-member.spec.ts index 99a2d589598..f304d48de4f 100644 --- a/spec/unit/room-member.spec.ts +++ b/spec/unit/room-member.spec.ts @@ -27,6 +27,7 @@ import { UNSTABLE_MSC2666_QUERY_MUTUAL_ROOMS, UNSTABLE_MSC2666_SHARED_ROOMS, } from "../../src"; +import { KnownMembership } from "../../src/@types/membership"; describe("RoomMember", function () { const roomId = "!foo:bar"; @@ -50,7 +51,7 @@ describe("RoomMember", function () { room: roomId, user: userA, content: { - membership: "join", + membership: KnownMembership.Join, avatar_url: "mxc://flibble/wibble", }, }); @@ -282,11 +283,11 @@ describe("RoomMember", function () { describe("isKicked", () => { it("should return false if membership is not `leave`", () => { const member1 = new RoomMember(roomId, userA); - member1.membership = "join"; + member1.membership = KnownMembership.Join; expect(member1.isKicked()).toBeFalsy(); const member2 = new RoomMember(roomId, userA); - member2.membership = "invite"; + member2.membership = KnownMembership.Invite; expect(member2.isKicked()).toBeFalsy(); const member3 = new RoomMember(roomId, userA); @@ -295,17 +296,17 @@ describe("RoomMember", function () { it("should return false if the membership event is unknown", () => { const member = new RoomMember(roomId, userA); - member.membership = "leave"; + member.membership = KnownMembership.Leave; expect(member.isKicked()).toBeFalsy(); }); it("should return false if the member left of their own accord", () => { const member = new RoomMember(roomId, userA); - member.membership = "leave"; + member.membership = KnownMembership.Leave; member.events.member = utils.mkMembership({ event: true, sender: userA, - mship: "leave", + mship: KnownMembership.Leave, skey: userA, }); expect(member.isKicked()).toBeFalsy(); @@ -313,11 +314,11 @@ describe("RoomMember", function () { it("should return true if the member's leave was sent by another user", () => { const member = new RoomMember(roomId, userA); - member.membership = "leave"; + member.membership = KnownMembership.Leave; member.events.member = utils.mkMembership({ event: true, sender: userB, - mship: "leave", + mship: KnownMembership.Leave, skey: userA, }); expect(member.isKicked()).toBeTruthy(); @@ -327,11 +328,11 @@ describe("RoomMember", function () { describe("getDMInviter", () => { it("should return userId of the sender of the invite if is_direct=true", () => { const member = new RoomMember(roomId, userA); - member.membership = "invite"; + member.membership = KnownMembership.Invite; member.events.member = utils.mkMembership({ event: true, sender: userB, - mship: "invite", + mship: KnownMembership.Invite, skey: userA, }); member.events.member.event.content!.is_direct = true; @@ -340,11 +341,11 @@ describe("RoomMember", function () { it("should not return userId of the sender of the invite if is_direct=false", () => { const member = new RoomMember(roomId, userA); - member.membership = "invite"; + member.membership = KnownMembership.Invite; member.events.member = utils.mkMembership({ event: true, sender: userB, - mship: "invite", + mship: KnownMembership.Invite, skey: userA, }); member.events.member.event.content!.is_direct = false; @@ -355,7 +356,7 @@ describe("RoomMember", function () { describe("setMembershipEvent", function () { const joinEvent = utils.mkMembership({ event: true, - mship: "join", + mship: KnownMembership.Join, user: userA, room: roomId, name: "Alice", @@ -363,7 +364,7 @@ describe("RoomMember", function () { const inviteEvent = utils.mkMembership({ event: true, - mship: "invite", + mship: KnownMembership.Invite, user: userB, skey: userA, room: roomId, @@ -371,10 +372,10 @@ describe("RoomMember", function () { it("should set 'membership' and assign the event to 'events.member'.", function () { member.setMembershipEvent(inviteEvent); - expect(member.membership).toEqual("invite"); + expect(member.membership).toEqual(KnownMembership.Invite); expect(member.events.member).toEqual(inviteEvent); member.setMembershipEvent(joinEvent); - expect(member.membership).toEqual("join"); + expect(member.membership).toEqual(KnownMembership.Join); expect(member.events.member).toEqual(joinEvent); }); @@ -387,13 +388,13 @@ describe("RoomMember", function () { return [ utils.mkMembership({ event: true, - mship: "join", + mship: KnownMembership.Join, room: roomId, user: userB, }), utils.mkMembership({ event: true, - mship: "join", + mship: KnownMembership.Join, room: roomId, user: userC, name: "Alice", @@ -443,7 +444,7 @@ describe("RoomMember", function () { it("should set 'name' to user_id if it is just whitespace", function () { const joinEvent = utils.mkMembership({ event: true, - mship: "join", + mship: KnownMembership.Join, user: userA, room: roomId, name: " \u200b ", @@ -457,7 +458,7 @@ describe("RoomMember", function () { it("should disambiguate users on a fuzzy displayname match", function () { const joinEvent = utils.mkMembership({ event: true, - mship: "join", + mship: KnownMembership.Join, user: userA, room: roomId, name: "Alíce\u200b", // note diacritic and zero width char @@ -471,7 +472,7 @@ describe("RoomMember", function () { return [ utils.mkMembership({ event: true, - mship: "join", + mship: KnownMembership.Join, room: roomId, user: userC, name: "Alice", diff --git a/spec/unit/room-state.spec.ts b/spec/unit/room-state.spec.ts index 6c60d08f908..64a268dde14 100644 --- a/spec/unit/room-state.spec.ts +++ b/spec/unit/room-state.spec.ts @@ -28,6 +28,7 @@ import { MatrixClient } from "../../src/client"; import { DecryptionError } from "../../src/crypto/algorithms"; import { defer } from "../../src/utils"; import { Room } from "../../src/models/room"; +import { KnownMembership } from "../../src/@types/membership"; describe("RoomState", function () { const roomId = "!foo:bar"; @@ -44,14 +45,14 @@ describe("RoomState", function () { utils.mkMembership({ // userA joined event: true, - mship: "join", + mship: KnownMembership.Join, user: userA, room: roomId, }), utils.mkMembership({ // userB joined event: true, - mship: "join", + mship: KnownMembership.Join, user: userB, room: roomId, }), @@ -102,20 +103,20 @@ describe("RoomState", function () { it("should return a member which changes as state changes", function () { const member = state.getMember(userB); - expect(member?.membership).toEqual("join"); + expect(member?.membership).toEqual(KnownMembership.Join); expect(member?.name).toEqual(userB); state.setStateEvents([ utils.mkMembership({ room: roomId, user: userB, - mship: "leave", + mship: KnownMembership.Leave, event: true, name: "BobGone", }), ]); - expect(member?.membership).toEqual("leave"); + expect(member?.membership).toEqual(KnownMembership.Leave); expect(member?.name).toEqual("BobGone"); }); }); @@ -131,17 +132,17 @@ describe("RoomState", function () { utils.mkMembership({ room: roomId, user: userA, - mship: "leave", + mship: KnownMembership.Leave, event: true, name: "AliceIsGone", }), ]); const postLeaveUser = state.getSentinelMember(userA); - expect(preLeaveUser?.membership).toEqual("join"); + expect(preLeaveUser?.membership).toEqual(KnownMembership.Join); expect(preLeaveUser?.name).toEqual(userA); - expect(postLeaveUser?.membership).toEqual("leave"); + expect(postLeaveUser?.membership).toEqual(KnownMembership.Leave); expect(postLeaveUser?.name).toEqual("AliceIsGone"); }); }); @@ -166,7 +167,7 @@ describe("RoomState", function () { it("should return a single MatrixEvent if a state_key was specified", function () { const event = state.getStateEvents("m.room.member", userA); expect(event?.getContent()).toMatchObject({ - membership: "join", + membership: KnownMembership.Join, }); }); }); @@ -176,13 +177,13 @@ describe("RoomState", function () { const memberEvents = [ utils.mkMembership({ user: "@cleo:bar", - mship: "invite", + mship: KnownMembership.Invite, room: roomId, event: true, }), utils.mkMembership({ user: "@daisy:bar", - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }), @@ -202,13 +203,13 @@ describe("RoomState", function () { const memberEvents = [ utils.mkMembership({ user: "@cleo:bar", - mship: "invite", + mship: KnownMembership.Invite, room: roomId, event: true, }), utils.mkMembership({ user: "@daisy:bar", - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }), @@ -228,7 +229,7 @@ describe("RoomState", function () { const events = [ utils.mkMembership({ user: "@cleo:bar", - mship: "invite", + mship: KnownMembership.Invite, room: roomId, event: true, }), @@ -282,7 +283,7 @@ describe("RoomState", function () { it("should call setPowerLevelEvent on a new RoomMember if power levels exist", function () { const memberEvent = utils.mkMembership({ - mship: "join", + mship: KnownMembership.Join, user: userC, room: roomId, event: true, @@ -312,7 +313,7 @@ describe("RoomState", function () { it("should call setMembershipEvent on the right RoomMember", function () { const memberEvent = utils.mkMembership({ user: userB, - mship: "leave", + mship: KnownMembership.Leave, room: roomId, event: true, }); @@ -447,7 +448,7 @@ describe("RoomState", function () { it("should add a new member", function () { const oobMemberEvent = utils.mkMembership({ user: userLazy, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }); @@ -462,7 +463,7 @@ describe("RoomState", function () { state.setOutOfBandMembers([ utils.mkMembership({ user: userLazy, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }), @@ -474,7 +475,7 @@ describe("RoomState", function () { const userLazy = "@oob:hs"; const oobMemberEvent = utils.mkMembership({ user: userLazy, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }); @@ -491,7 +492,7 @@ describe("RoomState", function () { it("should never overwrite existing members", function () { const oobMemberEvent = utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }); @@ -506,7 +507,7 @@ describe("RoomState", function () { const doesntExistYetUserId = "@doesntexistyet:hs"; const oobMemberEvent = utils.mkMembership({ user: doesntExistYetUserId, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }); @@ -529,7 +530,7 @@ describe("RoomState", function () { state.setOutOfBandMembers([ utils.mkMembership({ user: userLazy, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }), @@ -554,7 +555,7 @@ describe("RoomState", function () { copy.setOutOfBandMembers([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }), @@ -563,7 +564,7 @@ describe("RoomState", function () { state.setOutOfBandMembers([ utils.mkMembership({ user: userLazy, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }), @@ -576,7 +577,7 @@ describe("RoomState", function () { copy.setStateEvents([ utils.mkMembership({ user: userLazy, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }), @@ -697,9 +698,13 @@ describe("RoomState", function () { }); it("should update after adding joined member", function () { - state.setStateEvents([utils.mkMembership({ event: true, mship: "join", user: userA, room: roomId })]); + state.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Join, user: userA, room: roomId }), + ]); expect(state.getJoinedMemberCount()).toEqual(1); - state.setStateEvents([utils.mkMembership({ event: true, mship: "join", user: userC, room: roomId })]); + state.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Join, user: userC, room: roomId }), + ]); expect(state.getJoinedMemberCount()).toEqual(2); }); }); @@ -710,9 +715,13 @@ describe("RoomState", function () { }); it("should update after adding invited member", function () { - state.setStateEvents([utils.mkMembership({ event: true, mship: "invite", user: userA, room: roomId })]); + state.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Invite, user: userA, room: roomId }), + ]); expect(state.getInvitedMemberCount()).toEqual(1); - state.setStateEvents([utils.mkMembership({ event: true, mship: "invite", user: userC, room: roomId })]); + state.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Invite, user: userC, room: roomId }), + ]); expect(state.getInvitedMemberCount()).toEqual(2); }); }); @@ -723,19 +732,27 @@ describe("RoomState", function () { }); it("should, once used, override counting members from state", function () { - state.setStateEvents([utils.mkMembership({ event: true, mship: "join", user: userA, room: roomId })]); + state.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Join, user: userA, room: roomId }), + ]); expect(state.getJoinedMemberCount()).toEqual(1); state.setJoinedMemberCount(100); expect(state.getJoinedMemberCount()).toEqual(100); - state.setStateEvents([utils.mkMembership({ event: true, mship: "join", user: userC, room: roomId })]); + state.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Join, user: userC, room: roomId }), + ]); expect(state.getJoinedMemberCount()).toEqual(100); }); it("should, once used, override counting members from state, " + "also after clone", function () { - state.setStateEvents([utils.mkMembership({ event: true, mship: "join", user: userA, room: roomId })]); + state.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Join, user: userA, room: roomId }), + ]); state.setJoinedMemberCount(100); const copy = state.clone(); - copy.setStateEvents([utils.mkMembership({ event: true, mship: "join", user: userC, room: roomId })]); + copy.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Join, user: userC, room: roomId }), + ]); expect(state.getJoinedMemberCount()).toEqual(100); }); }); @@ -746,19 +763,27 @@ describe("RoomState", function () { }); it("should, once used, override counting members from state", function () { - state.setStateEvents([utils.mkMembership({ event: true, mship: "invite", user: userB, room: roomId })]); + state.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Invite, user: userB, room: roomId }), + ]); expect(state.getInvitedMemberCount()).toEqual(1); state.setInvitedMemberCount(100); expect(state.getInvitedMemberCount()).toEqual(100); - state.setStateEvents([utils.mkMembership({ event: true, mship: "invite", user: userC, room: roomId })]); + state.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Invite, user: userC, room: roomId }), + ]); expect(state.getInvitedMemberCount()).toEqual(100); }); it("should, once used, override counting members from state, " + "also after clone", function () { - state.setStateEvents([utils.mkMembership({ event: true, mship: "invite", user: userB, room: roomId })]); + state.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Invite, user: userB, room: roomId }), + ]); state.setInvitedMemberCount(100); const copy = state.clone(); - copy.setStateEvents([utils.mkMembership({ event: true, mship: "invite", user: userC, room: roomId })]); + copy.setStateEvents([ + utils.mkMembership({ event: true, mship: KnownMembership.Invite, user: userC, room: roomId }), + ]); expect(state.getInvitedMemberCount()).toEqual(100); }); }); diff --git a/spec/unit/room.spec.ts b/spec/unit/room.spec.ts index 4e14ca099a4..93b6ed47e0b 100644 --- a/spec/unit/room.spec.ts +++ b/spec/unit/room.spec.ts @@ -56,6 +56,7 @@ import { getMockClientWithEventEmitter, mockClientMethodsUser } from "../test-ut import { logger } from "../../src/logger"; import { IMessageOpts } from "../test-utils/test-utils"; import { flushPromises } from "../test-utils/flushPromises"; +import { KnownMembership } from "../../src/@types/membership"; describe("Room", function () { const roomId = "!foo:bar"; @@ -408,7 +409,7 @@ describe("Room", function () { const events: MatrixEvent[] = [ utils.mkMembership({ room: roomId, - mship: "invite", + mship: KnownMembership.Invite, user: userB, skey: userA, event: true, @@ -434,7 +435,7 @@ describe("Room", function () { it("should synthesize read receipts for the senders of events", async function () { const sentinel = { userId: userA, - membership: "join", + membership: KnownMembership.Join, name: "Alice", } as unknown as RoomMember; mocked(room.currentState.getSentinelMember).mockImplementation(function (uid) { @@ -636,12 +637,12 @@ describe("Room", function () { it("should set event.sender for new and old events", async function () { const sentinel = { userId: userA, - membership: "join", + membership: KnownMembership.Join, name: "Alice", } as unknown as RoomMember; const oldSentinel = { userId: userA, - membership: "join", + membership: KnownMembership.Join, name: "Old Alice", } as unknown as RoomMember; mocked(room.currentState.getSentinelMember).mockImplementation(function (uid) { @@ -680,12 +681,12 @@ describe("Room", function () { it("should set event.target for new and old m.room.member events", async function () { const sentinel = { userId: userA, - membership: "join", + membership: KnownMembership.Join, name: "Alice", } as unknown as RoomMember; const oldSentinel = { userId: userA, - membership: "join", + membership: KnownMembership.Join, name: "Old Alice", } as unknown as RoomMember; mocked(room.currentState.getSentinelMember).mockImplementation(function (uid) { @@ -703,14 +704,14 @@ describe("Room", function () { const newEv = utils.mkMembership({ room: roomId, - mship: "invite", + mship: KnownMembership.Invite, user: userB, skey: userA, event: true, }); const oldEv = utils.mkMembership({ room: roomId, - mship: "ban", + mship: KnownMembership.Ban, user: userB, skey: userA, event: true, @@ -727,7 +728,7 @@ describe("Room", function () { const events: MatrixEvent[] = [ utils.mkMembership({ room: roomId, - mship: "invite", + mship: KnownMembership.Invite, user: userB, skey: userA, event: true, @@ -948,9 +949,9 @@ describe("Room", function () { it("should return members whose membership is 'join'", function () { mocked(room.currentState.getMembers).mockImplementation(function () { return [ - { userId: "@alice:bar", membership: "join" } as unknown as RoomMember, - { userId: "@bob:bar", membership: "invite" } as unknown as RoomMember, - { userId: "@cleo:bar", membership: "leave" } as unknown as RoomMember, + { userId: "@alice:bar", membership: KnownMembership.Join } as unknown as RoomMember, + { userId: "@bob:bar", membership: KnownMembership.Invite } as unknown as RoomMember, + { userId: "@cleo:bar", membership: KnownMembership.Leave } as unknown as RoomMember, ]; }); const res = room.getJoinedMembers(); @@ -960,7 +961,7 @@ describe("Room", function () { it("should return an empty list if no membership is 'join'", function () { mocked(room.currentState.getMembers).mockImplementation(function () { - return [{ userId: "@bob:bar", membership: "invite" } as unknown as RoomMember]; + return [{ userId: "@bob:bar", membership: KnownMembership.Invite } as unknown as RoomMember]; }); const res = room.getJoinedMembers(); expect(res.length).toEqual(0); @@ -971,42 +972,42 @@ describe("Room", function () { it("should return true for a matching userId and membership", function () { mocked(room.currentState.getMember).mockImplementation(function (userId) { return { - "@alice:bar": { userId: "@alice:bar", membership: "join" }, - "@bob:bar": { userId: "@bob:bar", membership: "invite" }, + "@alice:bar": { userId: "@alice:bar", membership: KnownMembership.Join }, + "@bob:bar": { userId: "@bob:bar", membership: KnownMembership.Invite }, }[userId] as unknown as RoomMember; }); - expect(room.hasMembershipState("@bob:bar", "invite")).toBe(true); + expect(room.hasMembershipState("@bob:bar", KnownMembership.Invite)).toBe(true); }); it("should return false if match membership but no match userId", function () { mocked(room.currentState.getMember).mockImplementation(function (userId) { return { - "@alice:bar": { userId: "@alice:bar", membership: "join" }, + "@alice:bar": { userId: "@alice:bar", membership: KnownMembership.Join }, }[userId] as unknown as RoomMember; }); - expect(room.hasMembershipState("@bob:bar", "join")).toBe(false); + expect(room.hasMembershipState("@bob:bar", KnownMembership.Join)).toBe(false); }); it("should return false if match userId but no match membership", function () { mocked(room.currentState.getMember).mockImplementation(function (userId) { return { - "@alice:bar": { userId: "@alice:bar", membership: "join" }, + "@alice:bar": { userId: "@alice:bar", membership: KnownMembership.Join }, }[userId] as unknown as RoomMember; }); - expect(room.hasMembershipState("@alice:bar", "ban")).toBe(false); + expect(room.hasMembershipState("@alice:bar", KnownMembership.Ban)).toBe(false); }); it("should return false if no match membership or userId", function () { mocked(room.currentState.getMember).mockImplementation(function (userId) { return { - "@alice:bar": { userId: "@alice:bar", membership: "join" }, + "@alice:bar": { userId: "@alice:bar", membership: KnownMembership.Join }, }[userId] as unknown as RoomMember; }); - expect(room.hasMembershipState("@bob:bar", "invite")).toBe(false); + expect(room.hasMembershipState("@bob:bar", KnownMembership.Invite)).toBe(false); }); it("should return false if no members exist", function () { - expect(room.hasMembershipState("@foo:bar", "join")).toBe(false); + expect(room.hasMembershipState("@foo:bar", KnownMembership.Join)).toBe(false); }); }); @@ -1061,7 +1062,7 @@ describe("Room", function () { }), ]); }; - const addMember = async function (userId: string, state = "join", opts: any = {}) { + const addMember = async function (userId: string, state = KnownMembership.Join, opts: any = {}) { opts.room = roomId; opts.mship = state; opts.user = opts.user || userId; @@ -1083,7 +1084,7 @@ describe("Room", function () { async function () { const roomName = "flibble"; - const event = await addMember(userA, "invite"); + const event = await addMember(userA, KnownMembership.Invite); event.event.unsigned = {}; event.event.unsigned.invite_room_state = [ { @@ -1102,7 +1103,7 @@ describe("Room", function () { ); it("should not clobber state events if it isn't an invite room", async function () { - const event = await addMember(userA, "join"); + const event = await addMember(userA, KnownMembership.Join); const roomName = "flibble"; setRoomName(roomName); const roomNameToIgnore = "ignoreme"; @@ -1125,7 +1126,7 @@ describe("Room", function () { describe("Room.recalculate => Room Name using room summary", function () { it("should use room heroes if available", function () { - addMember(userA, "invite"); + addMember(userA, KnownMembership.Invite); addMember(userB); addMember(userC); addMember(userD); @@ -1149,8 +1150,8 @@ describe("Room", function () { it("uses hero name from state", function () { const name = "Mr B"; - addMember(userA, "invite"); - addMember(userB, "join", { name }); + addMember(userA, KnownMembership.Invite); + addMember(userB, KnownMembership.Join, { name }); room.setSummary({ "m.heroes": [userB], }); @@ -1161,7 +1162,7 @@ describe("Room", function () { it("uses counts from summary", function () { const name = "Mr B"; - addMember(userB, "join", { name }); + addMember(userB, KnownMembership.Join, { name }); room.setSummary({ "m.heroes": [userB], "m.joined_member_count": 50, @@ -1174,8 +1175,8 @@ describe("Room", function () { it("relies on heroes in case of absent counts", function () { const nameB = "Mr Bean"; const nameC = "Mel C"; - addMember(userB, "join", { name: nameB }); - addMember(userC, "join", { name: nameC }); + addMember(userB, KnownMembership.Join, { name: nameB }); + addMember(userC, KnownMembership.Join, { name: nameC }); room.setSummary({ "m.heroes": [userB, userC], }); @@ -1185,8 +1186,8 @@ describe("Room", function () { it("uses only heroes", function () { const nameB = "Mr Bean"; - addMember(userB, "join", { name: nameB }); - addMember(userC, "join"); + addMember(userB, KnownMembership.Join, { name: nameB }); + addMember(userC, KnownMembership.Join); room.setSummary({ "m.heroes": [userB], }); @@ -1306,7 +1307,7 @@ describe("Room", function () { " (invite join_rules) rooms if you are invited to it.", function () { setJoinRule(JoinRule.Invite); - addMember(userA, "invite", { user: userB }); + addMember(userA, KnownMembership.Invite, { user: userB }); addMember(userB); room.recalculate(); const name = room.name; @@ -1396,8 +1397,8 @@ describe("Room", function () { it("should return '[inviter display name] if state event " + "available", function () { setJoinRule(JoinRule.Invite); - addMember(userB, "join", { name: "Alice" }); - addMember(userA, "invite", { user: userA }); + addMember(userB, KnownMembership.Join, { name: "Alice" }); + addMember(userA, KnownMembership.Invite, { user: userA }); room.recalculate(); const name = room.name; expect(name).toEqual("Alice"); @@ -1406,7 +1407,7 @@ describe("Room", function () { it("should return inviter mxid if display name not available", function () { setJoinRule(JoinRule.Invite); addMember(userB); - addMember(userA, "invite", { user: userA }); + addMember(userA, KnownMembership.Invite, { user: userA }); room.recalculate(); const name = room.name; expect(name).toEqual(userB); @@ -2063,7 +2064,7 @@ describe("Room", function () { const memberEvent = utils.mkMembership({ user: "@user_a:bar", - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", @@ -2083,7 +2084,7 @@ describe("Room", function () { it("should take members from storage if available", async function () { const memberEvent2 = utils.mkMembership({ user: "@user_a:bar", - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "Ms A", @@ -2112,7 +2113,7 @@ describe("Room", function () { describe("getMyMembership", function () { it("should return synced membership if membership isn't available yet", function () { const room = new Room(roomId, null!, userA); - room.updateMyMembership(JoinRule.Invite); + room.updateMyMembership(KnownMembership.Invite); expect(room.getMyMembership()).toEqual(JoinRule.Invite); }); it("should emit a Room.myMembership event on a change", function () { @@ -2124,15 +2125,15 @@ describe("Room", function () { room.on(RoomEvent.MyMembership, (_room, membership, oldMembership) => { events.push({ membership, oldMembership }); }); - room.updateMyMembership(JoinRule.Invite); + room.updateMyMembership(KnownMembership.Invite); expect(room.getMyMembership()).toEqual(JoinRule.Invite); - expect(events[0]).toEqual({ membership: "invite", oldMembership: undefined }); + expect(events[0]).toEqual({ membership: KnownMembership.Invite, oldMembership: undefined }); events.splice(0); //clear - room.updateMyMembership(JoinRule.Invite); + room.updateMyMembership(KnownMembership.Invite); expect(events.length).toEqual(0); - room.updateMyMembership("join"); - expect(room.getMyMembership()).toEqual("join"); - expect(events[0]).toEqual({ membership: "join", oldMembership: "invite" }); + room.updateMyMembership(KnownMembership.Join); + expect(room.getMyMembership()).toEqual(KnownMembership.Join); + expect(events[0]).toEqual({ membership: KnownMembership.Join, oldMembership: KnownMembership.Invite }); }); }); @@ -2146,7 +2147,7 @@ describe("Room", function () { state_key: userA, sender: userB, content: { - membership: "invite", + membership: KnownMembership.Invite, is_direct: true, }, }), @@ -2157,7 +2158,7 @@ describe("Room", function () { it("should fall back to summary heroes and return the first one", () => { const room = new Room(roomId, null!, userA); - room.updateMyMembership("invite"); + room.updateMyMembership(KnownMembership.Invite); room.setSummary({ "m.heroes": [userA, userC], "m.joined_member_count": 1, @@ -2170,7 +2171,7 @@ describe("Room", function () { it("should return undefined if we're not joined or invited to the room", () => { const room = new Room(roomId, null!, userA); expect(room.getDMInviter()).toBeUndefined(); - room.updateMyMembership("leave"); + room.updateMyMembership(KnownMembership.Leave); expect(room.getDMInviter()).toBeUndefined(); }); }); @@ -2190,7 +2191,7 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userB, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, }), @@ -2220,7 +2221,7 @@ describe("Room", function () { state_key: userD, sender: userD, content: { - membership: "join", + membership: KnownMembership.Join, }, }), ]); @@ -2308,11 +2309,11 @@ describe("Room", function () { describe("maySendMessage", function () { it("should return false if synced membership not join", function () { const room = new Room(roomId, { isRoomEncrypted: () => false } as any, userA); - room.updateMyMembership(JoinRule.Invite); + room.updateMyMembership(KnownMembership.Invite); expect(room.maySendMessage()).toEqual(false); - room.updateMyMembership("leave"); + room.updateMyMembership(KnownMembership.Leave); expect(room.maySendMessage()).toEqual(false); - room.updateMyMembership("join"); + room.updateMyMembership(KnownMembership.Join); expect(room.maySendMessage()).toEqual(true); }); }); @@ -2328,14 +2329,14 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User B", @@ -2349,14 +2350,14 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "ban", + mship: KnownMembership.Ban, room: roomId, event: true, name: "User B", @@ -2370,14 +2371,14 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "invite", + mship: KnownMembership.Invite, room: roomId, event: true, name: "User B", @@ -2391,14 +2392,14 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "leave", + mship: KnownMembership.Leave, room: roomId, event: true, name: "User B", @@ -2412,21 +2413,21 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User B", }), utils.mkMembership({ user: userC, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User C", @@ -2440,28 +2441,28 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User B", }), utils.mkMembership({ user: userC, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User C", }), utils.mkMembership({ user: userD, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User D", @@ -2477,14 +2478,14 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User B", @@ -2507,14 +2508,14 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User B", @@ -2537,14 +2538,14 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User B", @@ -2567,14 +2568,14 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User B", @@ -2597,21 +2598,21 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User B", }), utils.mkMembership({ user: userC, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User C", @@ -2635,21 +2636,21 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User B", }), utils.mkMembership({ user: userC, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User C", @@ -2673,14 +2674,14 @@ describe("Room", function () { await room.addLiveEvents([ utils.mkMembership({ user: userA, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User A", }), utils.mkMembership({ user: userB, - mship: "join", + mship: KnownMembership.Join, room: roomId, event: true, name: "User B", diff --git a/spec/unit/rust-crypto/RoomEncryptor.spec.ts b/spec/unit/rust-crypto/RoomEncryptor.spec.ts index 9094ef38e23..608d9643e05 100644 --- a/spec/unit/rust-crypto/RoomEncryptor.spec.ts +++ b/spec/unit/rust-crypto/RoomEncryptor.spec.ts @@ -30,6 +30,7 @@ import { RoomEncryptor, toRustHistoryVisibility } from "../../../src/rust-crypto import { KeyClaimManager } from "../../../src/rust-crypto/KeyClaimManager"; import { defer } from "../../../src/utils"; import { OutgoingRequestsManager } from "../../../src/rust-crypto/OutgoingRequestsManager"; +import { KnownMembership } from "../../../src/@types/membership"; describe("RoomEncryptor", () => { describe("History Visibility", () => { @@ -54,7 +55,7 @@ describe("RoomEncryptor", () => { const mockRoomMember = { userId: "@alice:example.org", - membership: "join", + membership: KnownMembership.Join, } as unknown as Mocked; function createMockEvent(text: string): Mocked { diff --git a/spec/unit/scheduler.spec.ts b/spec/unit/scheduler.spec.ts index 35d057081ac..ecdd729a928 100644 --- a/spec/unit/scheduler.spec.ts +++ b/spec/unit/scheduler.spec.ts @@ -6,6 +6,7 @@ import { MatrixError } from "../../src/http-api"; import { MatrixScheduler } from "../../src/scheduler"; import * as utils from "../test-utils/test-utils"; import { MatrixEvent } from "../../src"; +import { KnownMembership } from "../../src/@types/membership"; jest.useFakeTimers(); @@ -336,7 +337,7 @@ describe("MatrixScheduler", function () { utils.mkMembership({ user: "@alice:bar", room: roomId, - mship: "join", + mship: KnownMembership.Join, event: true, }), ), diff --git a/spec/unit/sync-accumulator.spec.ts b/spec/unit/sync-accumulator.spec.ts index d95c8d056bb..c68de970a85 100644 --- a/spec/unit/sync-accumulator.spec.ts +++ b/spec/unit/sync-accumulator.spec.ts @@ -31,6 +31,7 @@ import { } from "../../src/sync-accumulator"; import { IRoomSummary } from "../../src"; import * as utils from "../test-utils/test-utils"; +import { KnownMembership, Membership } from "../../src/@types/membership"; // The event body & unsigned object get frozen to assert that they don't get altered // by the impl @@ -95,7 +96,7 @@ describe("SyncAccumulator", function () { ephemeral: { events: [] }, unread_notifications: {}, state: { - events: [member("alice", "join"), member("bob", "join")], + events: [member("alice", KnownMembership.Join), member("bob", KnownMembership.Join)], }, summary: { "m.heroes": undefined, @@ -111,7 +112,7 @@ describe("SyncAccumulator", function () { knock: { "!knock": { knock_state: { - events: [member("alice", "knock")], + events: [member("alice", KnownMembership.Knock)], }, }, }, @@ -128,7 +129,7 @@ describe("SyncAccumulator", function () { // 10 timeline messages with a prev_batch of "pinned_to_1" sa.accumulate( syncSkeleton({ - state: { events: [member("alice", "join")] }, + state: { events: [member("alice", KnownMembership.Join)] }, timeline: { events: [ msg("alice", "1"), @@ -204,7 +205,7 @@ describe("SyncAccumulator", function () { it("should remove the stored timeline on limited syncs", () => { sa.accumulate( syncSkeleton({ - state: { events: [member("alice", "join")] }, + state: { events: [member("alice", KnownMembership.Join)] }, timeline: { events: [msg("alice", "1"), msg("alice", "2"), msg("alice", "3")], prev_batch: "pinned_to_1", @@ -312,7 +313,7 @@ describe("SyncAccumulator", function () { events: [ { content: { - membership: "invite", + membership: KnownMembership.Invite, }, state_key: "bob", sender: "alice", @@ -336,7 +337,7 @@ describe("SyncAccumulator", function () { const rejectMemberEvent: IStateEvent = { event_id: "$" + Math.random(), content: { - membership: "leave", + membership: KnownMembership.Leave, }, origin_server_ts: 123456789, state_key: "bob", @@ -344,7 +345,7 @@ describe("SyncAccumulator", function () { type: "m.room.member", unsigned: { prev_content: { - membership: "invite", + membership: KnownMembership.Invite, }, }, }; @@ -366,7 +367,7 @@ describe("SyncAccumulator", function () { it("should accumulate knock state", () => { const initKnockState = { - events: [member("alice", "knock")], + events: [member("alice", KnownMembership.Knock)], }; sa.accumulate( syncSkeleton( @@ -453,7 +454,7 @@ describe("SyncAccumulator", function () { const inviteStateEvents = [ { content: { - membership: "invite", + membership: KnownMembership.Invite, }, state_key: "bob", sender: "alice", @@ -482,7 +483,7 @@ describe("SyncAccumulator", function () { const memberEvent: IStateEvent = { event_id: "$" + Math.random(), content: { - membership: "leave", + membership: KnownMembership.Leave, }, origin_server_ts: 123456789, state_key: "bob", @@ -490,7 +491,7 @@ describe("SyncAccumulator", function () { type: "m.room.member", unsigned: { prev_content: { - membership: "knock", + membership: KnownMembership.Knock, }, }, }; @@ -528,7 +529,7 @@ describe("SyncAccumulator", function () { const memberEvent: IStateEvent = { event_id: "$" + Math.random(), content: { - membership: "leave", + membership: KnownMembership.Leave, }, origin_server_ts: 123456789, state_key: "bob", @@ -536,7 +537,7 @@ describe("SyncAccumulator", function () { type: "m.room.member", unsigned: { prev_content: { - membership: "knock", + membership: KnownMembership.Knock, }, }, }; @@ -933,7 +934,7 @@ function makeKnockState(): IKnockState { name: "Room", }, }) as IStrippedState, - member("bob", "knock"), + member("bob", KnownMembership.Knock), ], }; } @@ -950,7 +951,7 @@ function msg(localpart: string, text: string) { }; } -function member(localpart: string, membership: string) { +function member(localpart: string, membership: Membership) { return { event_id: "$" + Math.random(), content: { diff --git a/spec/unit/webrtc/groupCall.spec.ts b/spec/unit/webrtc/groupCall.spec.ts index 7723b4c17c0..ea04a1f3ed8 100644 --- a/spec/unit/webrtc/groupCall.spec.ts +++ b/spec/unit/webrtc/groupCall.spec.ts @@ -47,6 +47,7 @@ import { flushPromises } from "../../test-utils/flushPromises"; import { CallFeedReport } from "../../../src/webrtc/stats/statsReport"; import { CallFeedStatsReporter } from "../../../src/webrtc/stats/callFeedStatsReporter"; import { StatsReportEmitter } from "../../../src/webrtc/stats/statsReportEmitter"; +import { KnownMembership } from "../../../src/@types/membership"; const FAKE_STATE_EVENTS = [ { @@ -143,7 +144,7 @@ describe("Group Call", function () { groupCall = new GroupCall(mockClient, room, GroupCallType.Video, false, GroupCallIntent.Prompt); room.currentState.members[FAKE_USER_ID_1] = { userId: FAKE_USER_ID_1, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; }); @@ -651,11 +652,11 @@ describe("Group Call", function () { client1Room.currentState.members[FAKE_USER_ID_1] = client2Room.currentState.members[FAKE_USER_ID_1] = { userId: FAKE_USER_ID_1, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; client1Room.currentState.members[FAKE_USER_ID_2] = client2Room.currentState.members[FAKE_USER_ID_2] = { userId: FAKE_USER_ID_2, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; groupCall1 = new GroupCall( @@ -831,11 +832,11 @@ describe("Group Call", function () { room.currentState.getStateEvents = jest.fn().mockImplementation(mockGetStateEvents()); room.currentState.members[FAKE_USER_ID_1] = { userId: FAKE_USER_ID_1, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; room.currentState.members[FAKE_USER_ID_2] = { userId: FAKE_USER_ID_2, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; }); @@ -1026,11 +1027,11 @@ describe("Group Call", function () { room = new Room(FAKE_ROOM_ID, mockClient, FAKE_USER_ID_2); room.currentState.members[FAKE_USER_ID_1] = { userId: FAKE_USER_ID_1, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; room.currentState.members[FAKE_USER_ID_2] = { userId: FAKE_USER_ID_2, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; groupCall = await createAndEnterGroupCall(mockClient, room); @@ -1260,11 +1261,11 @@ describe("Group Call", function () { room = new Room(FAKE_ROOM_ID, mockClient, FAKE_USER_ID_1); room.currentState.members[FAKE_USER_ID_1] = { userId: FAKE_USER_ID_1, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; room.currentState.members[FAKE_USER_ID_2] = { userId: FAKE_USER_ID_2, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; room.currentState.getStateEvents = jest.fn().mockImplementation(mockGetStateEvents()); @@ -1741,11 +1742,11 @@ describe("Group Call", function () { const room = new Room(FAKE_ROOM_ID, mockClient, FAKE_USER_ID_1); room.currentState.members[FAKE_USER_ID_1] = { userId: FAKE_USER_ID_1, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; room.currentState.members[FAKE_USER_ID_2] = { userId: FAKE_USER_ID_2, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; room.currentState.getStateEvents = jest.fn().mockImplementation(mockGetStateEvents()); groupCall = await createAndEnterGroupCall(mockClient, room); diff --git a/spec/unit/webrtc/groupCallEventHandler.spec.ts b/spec/unit/webrtc/groupCallEventHandler.spec.ts index 7fe5cb6a014..850ba403787 100644 --- a/spec/unit/webrtc/groupCallEventHandler.spec.ts +++ b/spec/unit/webrtc/groupCallEventHandler.spec.ts @@ -31,6 +31,7 @@ import { RoomState } from "../../../src/models/room-state"; import { GroupCallEventHandler, GroupCallEventHandlerEvent } from "../../../src/webrtc/groupCallEventHandler"; import { flushPromises } from "../../test-utils/flushPromises"; import { makeMockGroupCallStateEvent, MockCallMatrixClient } from "../../test-utils/webrtc"; +import { KnownMembership } from "../../../src/@types/membership"; const FAKE_USER_ID = "@alice:test.dummy"; const FAKE_DEVICE_ID = "AAAAAAA"; @@ -50,7 +51,7 @@ describe("Group Call Event Handler", function () { mockMember = { userId: FAKE_USER_ID, - membership: "join", + membership: KnownMembership.Join, } as unknown as RoomMember; const mockEvent = makeMockGroupCallStateEvent(FAKE_ROOM_ID, FAKE_GROUP_CALL_ID); diff --git a/src/@types/membership.ts b/src/@types/membership.ts new file mode 100644 index 00000000000..3d6a100ad54 --- /dev/null +++ b/src/@types/membership.ts @@ -0,0 +1,57 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +/** + * Well-known values (from the spec or MSCs) that are allowed in the + * {@link Membership} type. + */ +export enum KnownMembership { + /** + * The user has been banned from the room, and is no longer allowed to join + * it until they are un-banned from the room (by having their membership + * state set to a value other than ban). + */ + Ban = "ban", + /** + * The user has been invited to join a room, but has not yet joined it. + * They may not participate in the room until they join. + * */ + Invite = "invite", + /** + * The user has joined the room (possibly after accepting an invite), and + * may participate in it. + */ + Join = "join", + /** + * The user has knocked on the room, requesting permission to participate. + * They may not participate in the room until they join. + */ + Knock = "knock", + /** + * The user was once joined to the room, but has since left (possibly by + * choice, or possibly by being kicked). + */ + Leave = "leave", +} + +/** + * The membership state for a user in a room [1]. A value from + * {@link KnownMembership} should be used where available, but all string values + * are allowed to provide flexibility for upcoming spec changes or proposals. + * + * [1] https://spec.matrix.org/latest/client-server-api/#mroommember + */ +export type Membership = KnownMembership | string; diff --git a/src/client.ts b/src/client.ts index 9c85963ba76..56ec1030cd6 100644 --- a/src/client.ts +++ b/src/client.ts @@ -222,6 +222,7 @@ import { import { RegisterRequest, RegisterResponse } from "./@types/registration"; import { MatrixRTCSessionManager } from "./matrixrtc/MatrixRTCSessionManager"; import { getRelationsThreadFilter } from "./thread-utils"; +import { KnownMembership, Membership } from "./@types/membership"; export type Store = IStore; @@ -721,7 +722,7 @@ export interface IOpenIDToken { interface IRoomInitialSyncResponse { room_id: string; - membership: "invite" | "join" | "leave" | "ban"; + membership: Membership; messages?: { start?: string; end?: string; @@ -866,7 +867,7 @@ interface IThirdPartyUser { interface IRoomSummary extends Omit { room_type?: RoomType; - membership?: string; + membership?: Membership; is_encrypted: boolean; } @@ -4357,7 +4358,7 @@ export class MatrixClient extends TypedEventEmitter = Promise.resolve(); @@ -4386,7 +4387,7 @@ export class MatrixClient extends TypedEventEmitter { const room = this.getRoom(roomIdOrAlias); - if (room?.hasMembershipState(this.credentials.userId!, "knock")) { + if (room?.hasMembershipState(this.credentials.userId!, KnownMembership.Knock)) { return Promise.resolve({ room_id: room.roomId }); } @@ -5548,7 +5549,7 @@ export class MatrixClient extends TypedEventEmitter { - return this.membershipChange(roomId, userId, "invite", reason); + return this.membershipChange(roomId, userId, KnownMembership.Invite, reason); } /** @@ -5603,7 +5604,7 @@ export class MatrixClient extends TypedEventEmitter { - return this.membershipChange(roomId, undefined, "leave"); + return this.membershipChange(roomId, undefined, KnownMembership.Leave); } /** @@ -5661,7 +5662,7 @@ export class MatrixClient extends TypedEventEmitter { - return this.membershipChange(roomId, userId, "ban", reason); + return this.membershipChange(roomId, userId, KnownMembership.Ban, reason); } /** @@ -5720,7 +5721,7 @@ export class MatrixClient extends TypedEventEmitter { // API returns an empty object @@ -9780,7 +9781,7 @@ export class MatrixClient extends TypedEventEmitter } if (this.joinedMemberCount === null) { this.joinedMemberCount = this.getMembers().reduce((count, m) => { - return m.membership === "join" ? count + 1 : count; + return m.membership === KnownMembership.Join ? count + 1 : count; }, 0); } return this.joinedMemberCount; @@ -230,7 +231,7 @@ export class RoomState extends TypedEventEmitter } if (this.invitedMemberCount === null) { this.invitedMemberCount = this.getMembers().reduce((count, m) => { - return m.membership === "invite" ? count + 1 : count; + return m.membership === KnownMembership.Invite ? count + 1 : count; }, 0); } return this.invitedMemberCount; @@ -434,7 +435,10 @@ export class RoomState extends TypedEventEmitter // leave events apparently elide the displayname or avatar_url, // so let's fake one up so that we don't leak user ids // into the timeline - if (event.getContent().membership === "leave" || event.getContent().membership === "ban") { + if ( + event.getContent().membership === KnownMembership.Leave || + event.getContent().membership === KnownMembership.Ban + ) { event.getContent().avatar_url = event.getContent().avatar_url || event.getPrevContent().avatar_url; event.getContent().displayname = event.getContent().displayname || event.getPrevContent().displayname; @@ -776,7 +780,7 @@ export class RoomState extends TypedEventEmitter */ public maySendRedactionForEvent(mxEvent: MatrixEvent, userId: string): boolean { const member = this.getMember(userId); - if (!member || member.membership === "leave") return false; + if (!member || member.membership === KnownMembership.Leave) return false; if (mxEvent.status || mxEvent.isRedacted()) return false; diff --git a/src/models/room.ts b/src/models/room.ts index 7289185e6f6..c38a8dffd34 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -68,6 +68,7 @@ import { ReadReceipt, synthesizeReceipt } from "./read-receipt"; import { isPollEvent, Poll, PollEvent } from "./poll"; import { RoomReceipts } from "./room-receipts"; import { compareEventOrdering } from "./compare-event-ordering"; +import { KnownMembership, Membership } from "../@types/membership"; // These constants are used as sane defaults when the homeserver doesn't support // the m.room_versions capability. In practice, KNOWN_SAFE_ROOM_VERSION should be @@ -177,7 +178,7 @@ export type RoomEventHandlerMap = { * @param membership - The new membership value * @param prevMembership - The previous membership value */ - [RoomEvent.MyMembership]: (room: Room, membership: string, prevMembership?: string) => void; + [RoomEvent.MyMembership]: (room: Room, membership: Membership, prevMembership?: Membership) => void; /** * Fires whenever a room's tags are updated. * @param event - The tags event @@ -351,7 +352,7 @@ export class Room extends ReadReceipt { private readonly pendingEventList?: MatrixEvent[]; // read by megolm via getter; boolean value - null indicates "use global value" private blacklistUnverifiedDevices?: boolean; - private selfMembership?: string; + private selfMembership?: Membership; private summaryHeroes: string[] | null = null; // flags to stop logspam about missing m.room.create events private getTypeWarning = false; @@ -863,8 +864,8 @@ export class Room extends ReadReceipt { /** * @returns the membership type (join | leave | invite | knock) for the logged in user */ - public getMyMembership(): string { - return this.selfMembership ?? "leave"; + public getMyMembership(): Membership { + return this.selfMembership ?? KnownMembership.Leave; } /** @@ -878,7 +879,7 @@ export class Room extends ReadReceipt { return me.getDMInviter(); } - if (this.selfMembership === "invite") { + if (this.selfMembership === KnownMembership.Invite) { // fall back to summary information const memberCount = this.getInvitedAndJoinedMemberCount(); if (memberCount === 2) { @@ -989,11 +990,11 @@ export class Room extends ReadReceipt { * Sets the membership this room was received as during sync * @param membership - join | leave | invite */ - public updateMyMembership(membership: string): void { + public updateMyMembership(membership: Membership): void { const prevMembership = this.selfMembership; this.selfMembership = membership; if (prevMembership !== membership) { - if (membership === "leave") { + if (membership === KnownMembership.Leave) { this.cleanupAfterLeaving(); } this.emit(RoomEvent.MyMembership, this, membership, prevMembership); @@ -1002,7 +1003,12 @@ export class Room extends ReadReceipt { private async loadMembersFromServer(): Promise { const lastSyncToken = this.client.store.getSyncToken(); - const response = await this.client.members(this.roomId, undefined, "leave", lastSyncToken ?? undefined); + const response = await this.client.members( + this.roomId, + undefined, + KnownMembership.Leave, + lastSyncToken ?? undefined, + ); return response.chunk; } @@ -1709,7 +1715,7 @@ export class Room extends ReadReceipt { * @returns A list of currently joined members. */ public getJoinedMembers(): RoomMember[] { - return this.getMembersWithMembership("join"); + return this.getMembersWithMembership(KnownMembership.Join); } /** @@ -1744,7 +1750,7 @@ export class Room extends ReadReceipt { * @param membership - The membership state. * @returns A list of members with the given membership state. */ - public getMembersWithMembership(membership: string): RoomMember[] { + public getMembersWithMembership(membership: Membership): RoomMember[] { return this.currentState.getMembers().filter(function (m) { return m.membership === membership; }); @@ -1757,9 +1763,9 @@ export class Room extends ReadReceipt { */ public async getEncryptionTargetMembers(): Promise { await this.loadMembersIfNeeded(); - let members = this.getMembersWithMembership("join"); + let members = this.getMembersWithMembership(KnownMembership.Join); if (this.shouldEncryptForInvitedMembers()) { - members = members.concat(this.getMembersWithMembership("invite")); + members = members.concat(this.getMembersWithMembership(KnownMembership.Invite)); } return members; } @@ -1790,7 +1796,7 @@ export class Room extends ReadReceipt { * @param membership - The membership e.g. `'join'` * @returns True if this user_id has the given membership state. */ - public hasMembershipState(userId: string, membership: string): boolean { + public hasMembershipState(userId: string, membership: Membership): boolean { const member = this.getMember(userId); if (!member) { return false; @@ -3119,7 +3125,7 @@ export class Room extends ReadReceipt { const membership = membershipEvent.getContent().membership; this.updateMyMembership(membership!); - if (membership === "invite") { + if (membership === KnownMembership.Invite) { const strippedStateEvents = membershipEvent.getUnsigned().invite_room_state || []; strippedStateEvents.forEach((strippedEvent) => { const existingEvent = this.currentState.getStateEvents(strippedEvent.type, strippedEvent.state_key); @@ -3205,7 +3211,7 @@ export class Room extends ReadReceipt { */ public maySendMessage(): boolean { return ( - this.getMyMembership() === "join" && + this.getMyMembership() === KnownMembership.Join && (this.hasEncryptionStateEvent() ? this.currentState.maySendEvent(EventType.RoomMessageEncrypted, this.myUserId) : this.currentState.maySendEvent(EventType.RoomMessage, this.myUserId)) @@ -3218,7 +3224,7 @@ export class Room extends ReadReceipt { * @returns true if the user should be permitted to issue invites for this room. */ public canInvite(userId: string): boolean { - let canInvite = this.getMyMembership() === "join"; + let canInvite = this.getMyMembership() === KnownMembership.Join; const powerLevelsEvent = this.currentState.getStateEvents(EventType.RoomPowerLevels, ""); const powerLevels = powerLevelsEvent && powerLevelsEvent.getContent(); const me = this.getMember(userId); @@ -3400,7 +3406,10 @@ export class Room extends ReadReceipt { }); } else { let otherMembers = this.currentState.getMembers().filter((m) => { - return m.userId !== userId && (m.membership === "invite" || m.membership === "join"); + return ( + m.userId !== userId && + (m.membership === KnownMembership.Invite || m.membership === KnownMembership.Join) + ); }); otherMembers = otherMembers.filter(({ userId }) => { // filter service members @@ -3428,7 +3437,7 @@ export class Room extends ReadReceipt { const myMembership = this.getMyMembership(); // if I have created a room and invited people through // 3rd party invites - if (myMembership == "join") { + if (myMembership == KnownMembership.Join) { const thirdPartyInvites = this.currentState.getStateEvents(EventType.RoomThirdPartyInvite); if (thirdPartyInvites?.length) { @@ -3452,7 +3461,11 @@ export class Room extends ReadReceipt { leftNames = this.currentState .getMembers() .filter((m) => { - return m.userId !== userId && m.membership !== "invite" && m.membership !== "join"; + return ( + m.userId !== userId && + m.membership !== KnownMembership.Invite && + m.membership !== KnownMembership.Join + ); }) .map((m) => m.name); } diff --git a/src/rust-crypto/RoomEncryptor.ts b/src/rust-crypto/RoomEncryptor.ts index 2de00f19b34..7447ae61a74 100644 --- a/src/rust-crypto/RoomEncryptor.ts +++ b/src/rust-crypto/RoomEncryptor.ts @@ -34,6 +34,7 @@ import { RoomMember } from "../models/room-member"; import { HistoryVisibility } from "../@types/partials"; import { OutgoingRequestsManager } from "./OutgoingRequestsManager"; import { logDuration } from "../utils"; +import { KnownMembership } from "../@types/membership"; /** * RoomEncryptor: responsible for encrypting messages to a given room @@ -100,8 +101,8 @@ export class RoomEncryptor { */ public onRoomMembership(member: RoomMember): void { if ( - member.membership == "join" || - (member.membership == "invite" && this.room.shouldEncryptForInvitedMembers()) + member.membership == KnownMembership.Join || + (member.membership == KnownMembership.Invite && this.room.shouldEncryptForInvitedMembers()) ) { // make sure we are tracking the deviceList for this user logDuration(this.prefixedLogger, "updateTrackedUsers", async () => { diff --git a/src/sliding-sync-sdk.ts b/src/sliding-sync-sdk.ts index e5a371e1407..4a99cc4e72b 100644 --- a/src/sliding-sync-sdk.ts +++ b/src/sliding-sync-sdk.ts @@ -46,6 +46,7 @@ import { EventType } from "./@types/event"; import { IPushRules } from "./@types/PushRules"; import { RoomStateEvent } from "./models/room-state"; import { RoomMemberEvent } from "./models/room-member"; +import { KnownMembership } from "./@types/membership"; // Number of consecutive failed syncs that will lead to a syncState of ERROR as opposed // to RECONNECTING. This is needed to inform the client of server issues when the @@ -649,7 +650,7 @@ export class SlidingSyncSdk { inviteStateEvents.forEach((e) => { this.client.emit(ClientEvent.Event, e); }); - room.updateMyMembership("invite"); + room.updateMyMembership(KnownMembership.Invite); return; } @@ -719,7 +720,7 @@ export class SlidingSyncSdk { // local fields must be set before any async calls because call site assumes // synchronous execution prior to emitting SlidingSyncState.Complete - room.updateMyMembership("join"); + room.updateMyMembership(KnownMembership.Join); room.recalculate(); if (roomData.initial) { @@ -845,7 +846,7 @@ export class SlidingSyncSdk { const client = this.client; // For each invited room member we want to give them a displayname/avatar url // if they have one (the m.room.member invites don't contain this). - room.getMembersWithMembership("invite").forEach(function (member) { + room.getMembersWithMembership(KnownMembership.Invite).forEach(function (member) { if (member.requestedProfileInfo) return; member.requestedProfileInfo = true; // try to get a cached copy first. @@ -865,7 +866,7 @@ export class SlidingSyncSdk { // the code paths remain the same between invite/join display name stuff // which is a worthy trade-off for some minor pollution. const inviteEvent = member.events.member!; - if (inviteEvent.getContent().membership !== "invite") { + if (inviteEvent.getContent().membership !== KnownMembership.Invite) { // between resolving and now they have since joined, so don't clobber return; } diff --git a/src/store/memory.ts b/src/store/memory.ts index 8eeb53b85b2..7251be1c6b5 100644 --- a/src/store/memory.ts +++ b/src/store/memory.ts @@ -32,6 +32,7 @@ import { IStateEventWithRoomId } from "../@types/search"; import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage"; import { IStoredClientOpts } from "../client"; import { MapWithDefault } from "../utils"; +import { KnownMembership } from "../@types/membership"; function isValidFilterId(filterId?: string | number | null): boolean { const isValidStr = @@ -118,7 +119,7 @@ export class MemoryStore implements IStore { * updated. */ private onRoomMember = (event: MatrixEvent | null, state: RoomState, member: RoomMember): void => { - if (member.membership === "invite") { + if (member.membership === KnownMembership.Invite) { // We do NOT add invited members because people love to typo user IDs // which would then show up in these lists (!) return; diff --git a/src/sync.ts b/src/sync.ts index 372260d5615..8fe60698e9b 100644 --- a/src/sync.ts +++ b/src/sync.ts @@ -61,6 +61,7 @@ import { IEventsResponse } from "./@types/requests"; import { UNREAD_THREAD_NOTIFICATIONS } from "./@types/sync"; import { Feature, ServerSupport } from "./feature"; import { Crypto } from "./crypto"; +import { KnownMembership } from "./@types/membership"; const DEBUG = true; @@ -1720,7 +1721,7 @@ export class SyncApi { const client = this.client; // For each invited room member we want to give them a displayname/avatar url // if they have one (the m.room.member invites don't contain this). - room.getMembersWithMembership("invite").forEach(function (member) { + room.getMembersWithMembership(KnownMembership.Invite).forEach(function (member) { if (member.requestedProfileInfo) return; member.requestedProfileInfo = true; // try to get a cached copy first. @@ -1740,7 +1741,7 @@ export class SyncApi { // the code paths remain the same between invite/join display name stuff // which is a worthy trade-off for some minor pollution. const inviteEvent = member.events.member; - if (inviteEvent?.getContent().membership !== "invite") { + if (inviteEvent?.getContent().membership !== KnownMembership.Invite) { // between resolving and now they have since joined, so don't clobber return; } diff --git a/src/types.ts b/src/types.ts index dd2d3bef894..1edb3979564 100644 --- a/src/types.ts +++ b/src/types.ts @@ -22,3 +22,4 @@ limitations under the License. */ export type * from "./@types/media"; +export * from "./@types/membership"; diff --git a/src/webrtc/groupCall.ts b/src/webrtc/groupCall.ts index 362db27a25d..e5711986894 100644 --- a/src/webrtc/groupCall.ts +++ b/src/webrtc/groupCall.ts @@ -34,6 +34,7 @@ import { } from "./stats/statsReport"; import { SummaryStatsReportGatherer } from "./stats/summaryStatsReportGatherer"; import { CallFeedStatsReporter } from "./stats/callFeedStatsReporter"; +import { KnownMembership } from "../@types/membership"; export enum GroupCallIntent { Ring = "m.ring", @@ -1485,7 +1486,7 @@ export class GroupCall extends TypedEventEmitter< } // Must have a connected device and be joined to the room - if (validDevices.length > 0 && member?.membership === "join") { + if (validDevices.length > 0 && member?.membership === KnownMembership.Join) { const deviceMap = new Map(); participants.set(member, deviceMap); From b8078f99165dbfc359fed3568ed7b12e141fa3e5 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 19 Mar 2024 15:05:53 +0000 Subject: [PATCH 121/595] v31.6.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 09e51551b62..36607aa8379 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.5.0", + "version": "31.6.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -30,8 +30,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -131,5 +131,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From c8ec5421c76955f67636661fcc3b02cbbdae1bce Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 19 Mar 2024 16:21:55 +0000 Subject: [PATCH 122/595] Update dependency @types/node to v18.19.24 (#4117) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 37 +++++++++++++++++++++++++++++++------ 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index a55e9bf8d65..3141fd1ccc3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1948,9 +1948,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.21" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.21.tgz#f4ca1ac8ffb05ee4b89163c2d6fac9a1a59ee149" - integrity sha512-2Q2NeB6BmiTFQi4DHBzncSoq/cJMLDdhPaAoJFnFCyD9a8VPZRf7a1GAwp1Edb7ROaZc5Jz/tnZyL6EsWMRaqw== + version "18.19.26" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.26.tgz#18991279d0a0e53675285e8cf4a0823766349729" + integrity sha512-+wiMJsIwLOYCvUqSdKTrfkS8mpTp+MPINe6+Np4TAGFWWRWiBQ5kSq9nZGCSPkzx9mvT+uEukzpX4MOSCydcvw== dependencies: undici-types "~5.26.4" @@ -5832,7 +5832,16 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -5886,7 +5895,14 @@ string.prototype.trimstart@^1.0.7: define-properties "^1.2.0" es-abstract "^1.22.1" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -6404,7 +6420,16 @@ which@^2.0.1: dependencies: isexe "^2.0.0" -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== From 596826ab4d7a9e4c6282d93e4db343b4499d96e7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 19 Mar 2024 16:22:03 +0000 Subject: [PATCH 123/595] Update all non-major dependencies (#4116) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/downstream-artifacts.yml | 2 +- yarn.lock | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/downstream-artifacts.yml b/.github/workflows/downstream-artifacts.yml index c6e7a66c415..17bd5608253 100644 --- a/.github/workflows/downstream-artifacts.yml +++ b/.github/workflows/downstream-artifacts.yml @@ -16,7 +16,7 @@ concurrency: jobs: build-element-web: name: Build element-web - uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.93.0 + uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.95.0 with: matrix-js-sdk-sha: ${{ github.sha }} react-sdk-repository: matrix-org/matrix-react-sdk diff --git a/yarn.lock b/yarn.lock index 3141fd1ccc3..bf569e274d4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3170,9 +3170,9 @@ eslint-plugin-jest@^27.1.6: "@typescript-eslint/utils" "^5.10.0" eslint-plugin-jsdoc@^48.0.0: - version "48.2.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.0.tgz#a726fbd6fa286fad8fc14f0a6aca48488d188d95" - integrity sha512-O2B1XLBJnUCRkggFzUQ+PBYJDit8iAgXdlu8ucolqGrbmOWPvttZQZX8d1sC0MbqDMSLs8SHSQxaNPRY1RQREg== + version "48.2.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.1.tgz#9334a05555a95fdc192980627142177963b668b4" + integrity sha512-iUvbcyDZSO/9xSuRv2HQBw++8VkV/pt3UWtX9cpPH0l7GKPq78QC/6+PmyQHHvNZaTjAce6QVciEbnc6J/zH5g== dependencies: "@es-joy/jsdoccomment" "~0.42.0" are-docs-informative "^0.0.2" From 8664b6623869e1075b4ea7d980a6a1d34347c346 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 19 Mar 2024 16:24:49 +0000 Subject: [PATCH 124/595] Update dependency @matrix-org/matrix-sdk-crypto-wasm to v4.7.0 (#4120) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index bf569e274d4..ace26b9d46c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1674,9 +1674,9 @@ "@jridgewell/sourcemap-codec" "^1.4.14" "@matrix-org/matrix-sdk-crypto-wasm@^4.6.0": - version "4.6.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.6.0.tgz#35224214c7638abbe2bc91fb4fa4fb022a1a2bf0" - integrity sha512-v9PFWzSTWMlZKbyk3PPsZjUtOEQ7FIz5USD3lFRUWiS4pv0FOKR125VOUnR5Z/kAty57JXCHDAexCln3zE2Fww== + version "4.7.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.7.0.tgz#831588a192fd2c79f5f6dec930392717d3fa3331" + integrity sha512-07UqoxUolP2RJfXGwN1U9+1wWfHde0SilSzvdOU6RagJqQ3SdKERPBcgp20texOvIl65K57kJ81tD//+mj8skQ== "@matrix-org/olm@3.2.15": version "3.2.15" From abe4630687b6402e1778236e9aa10d210f16da23 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 19 Mar 2024 16:25:07 +0000 Subject: [PATCH 125/595] Update typedoc (#4118) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index ace26b9d46c..c54b18e8126 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6177,9 +6177,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-fxeJRrxQR3yM/aFZU7mOuatgRCztiMCbeNiCRVZKY6VNgOcVMC1HS+ZfZnlbLLteUOdeWleSQ6yntuipz5zi6A== typedoc-plugin-mdn-links@^3.0.3: - version "3.1.17" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.17.tgz#cb9214f0a60a9a347c778e228c307b9d033ba5cb" - integrity sha512-DCkMuXna8qipSwfzXl6c1x7nBeZUW/qWCACoaaP/cUzUyy/1MXedUyteuVsfw6+Sod61gIAr9ccwH78nrdwu6A== + version "3.1.18" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.18.tgz#736df9b90245583aa00d726d6eec474e0cbec37a" + integrity sha512-BGzSUEHT15o3g2Q1q/5tBQufAM+yqJNwU1aUmYZC9qbfCS1I5qyEkmoxZ9ks2Z3TwPTZ8PMfIKd2vq5/0nmLnw== typedoc-plugin-missing-exports@^2.0.0: version "2.2.0" @@ -6187,9 +6187,9 @@ typedoc-plugin-missing-exports@^2.0.0: integrity sha512-2+XR1IcyQ5UwXZVJe9NE6HrLmNufT9i5OwoIuuj79VxuA3eYq+Y6itS9rnNV1D7UeQnUSH8kISYD73gHE5zw+w== typedoc@^0.25.10: - version "0.25.11" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.25.11.tgz#75080c594c1e26b7676f90faebb367fb5a32dc8d" - integrity sha512-5MbI1W/FOG6oXsd8bdssQidSTeKh8Kt3xA5uKVzI+K99uzP8EGN45uPnPvQesyaWdD+89s4wCQdtWEd8QUbiRg== + version "0.25.12" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.25.12.tgz#f73f0a8d3731d418cc604d4230f95a857799e27a" + integrity sha512-F+qhkK2VoTweDXd1c42GS/By2DvI2uDF4/EpG424dTexSHdtCH52C6IcAvMA6jR3DzAWZjHpUOW+E02kyPNUNw== dependencies: lunr "^2.3.9" marked "^4.3.0" From d445823d0b0db4e1a92fc0f2e67fe46cae4b6850 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 19 Mar 2024 16:25:50 +0000 Subject: [PATCH 126/595] Update typescript-eslint monorepo to v7.2.0 (#4121) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 104 +++++++++++++++++++++++++++--------------------------- 1 file changed, 52 insertions(+), 52 deletions(-) diff --git a/yarn.lock b/yarn.lock index c54b18e8126..16c65153af1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2012,15 +2012,15 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.1.1.tgz#dd71fc5c7ecec745ca26ece506d84d203a205c0e" - integrity sha512-zioDz623d0RHNhvx0eesUmGfIjzrk18nSBC8xewepKXbBvN/7c1qImV7Hg8TI1URTxKax7/zxfxj3Uph8Chcuw== + version "7.3.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.3.1.tgz#0d8f38a6c8a1802139e62184ee7a68ed024f30a1" + integrity sha512-STEDMVQGww5lhCuNXVSQfbfuNII5E08QWkvAw5Qwf+bj2WT+JkG1uc+5/vXA3AOYMDHVOSpL+9rcbEUiHIm2dw== dependencies: "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "7.1.1" - "@typescript-eslint/type-utils" "7.1.1" - "@typescript-eslint/utils" "7.1.1" - "@typescript-eslint/visitor-keys" "7.1.1" + "@typescript-eslint/scope-manager" "7.3.1" + "@typescript-eslint/type-utils" "7.3.1" + "@typescript-eslint/utils" "7.3.1" + "@typescript-eslint/visitor-keys" "7.3.1" debug "^4.3.4" graphemer "^1.4.0" ignore "^5.2.4" @@ -2029,14 +2029,14 @@ ts-api-utils "^1.0.1" "@typescript-eslint/parser@^7.0.0": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.1.1.tgz#6a9d0a5c9ccdf5dbd3cb8c949728c64e24e07d1f" - integrity sha512-ZWUFyL0z04R1nAEgr9e79YtV5LbafdOtN7yapNbn1ansMyaegl2D4bL7vHoJ4HPSc4CaLwuCVas8CVuneKzplQ== - dependencies: - "@typescript-eslint/scope-manager" "7.1.1" - "@typescript-eslint/types" "7.1.1" - "@typescript-eslint/typescript-estree" "7.1.1" - "@typescript-eslint/visitor-keys" "7.1.1" + version "7.3.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.3.1.tgz#c4ba7dc2744318a5e4506596cbc3a0086255c526" + integrity sha512-Rq49+pq7viTRCH48XAbTA+wdLRrB/3sRq4Lpk0oGDm0VmnjBrAOVXH/Laalmwsv2VpekiEfVFwJYVk6/e8uvQw== + dependencies: + "@typescript-eslint/scope-manager" "7.3.1" + "@typescript-eslint/types" "7.3.1" + "@typescript-eslint/typescript-estree" "7.3.1" + "@typescript-eslint/visitor-keys" "7.3.1" debug "^4.3.4" "@typescript-eslint/scope-manager@5.62.0": @@ -2047,21 +2047,21 @@ "@typescript-eslint/types" "5.62.0" "@typescript-eslint/visitor-keys" "5.62.0" -"@typescript-eslint/scope-manager@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.1.1.tgz#9e301803ff8e21a74f50c6f89a4baccad9a48f93" - integrity sha512-cirZpA8bJMRb4WZ+rO6+mnOJrGFDd38WoXCEI57+CYBqta8Yc8aJym2i7vyqLL1vVYljgw0X27axkUXz32T8TA== +"@typescript-eslint/scope-manager@7.3.1": + version "7.3.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.3.1.tgz#73fd0cb4211a7be23e49e5b6efec8820caa6ec36" + integrity sha512-fVS6fPxldsKY2nFvyT7IP78UO1/I2huG+AYu5AMjCT9wtl6JFiDnsv4uad4jQ0GTFzcUV5HShVeN96/17bTBag== dependencies: - "@typescript-eslint/types" "7.1.1" - "@typescript-eslint/visitor-keys" "7.1.1" + "@typescript-eslint/types" "7.3.1" + "@typescript-eslint/visitor-keys" "7.3.1" -"@typescript-eslint/type-utils@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.1.1.tgz#aee820d5bedd39b83c18585a526cc520ddb7a226" - integrity sha512-5r4RKze6XHEEhlZnJtR3GYeCh1IueUHdbrukV2KSlLXaTjuSfeVF8mZUVPLovidCuZfbVjfhi4c0DNSa/Rdg5g== +"@typescript-eslint/type-utils@7.3.1": + version "7.3.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.3.1.tgz#cbf90d3d7e788466aa8a5c0ab3f46103f098aa0d" + integrity sha512-iFhaysxFsMDQlzJn+vr3OrxN8NmdQkHks4WaqD4QBnt5hsq234wcYdyQ9uquzJJIDAj5W4wQne3yEsYA6OmXGw== dependencies: - "@typescript-eslint/typescript-estree" "7.1.1" - "@typescript-eslint/utils" "7.1.1" + "@typescript-eslint/typescript-estree" "7.3.1" + "@typescript-eslint/utils" "7.3.1" debug "^4.3.4" ts-api-utils "^1.0.1" @@ -2070,10 +2070,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== -"@typescript-eslint/types@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.1.1.tgz#ca33ba7cf58224fb46a84fea62593c2c53cd795f" - integrity sha512-KhewzrlRMrgeKm1U9bh2z5aoL4s7K3tK5DwHDn8MHv0yQfWFz/0ZR6trrIHHa5CsF83j/GgHqzdbzCXJ3crx0Q== +"@typescript-eslint/types@7.3.1": + version "7.3.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.3.1.tgz#ae104de8efa4227a462c0874d856602c5994413c" + integrity sha512-2tUf3uWggBDl4S4183nivWQ2HqceOZh1U4hhu4p1tPiIJoRRXrab7Y+Y0p+dozYwZVvLPRI6r5wKe9kToF9FIw== "@typescript-eslint/typescript-estree@5.62.0": version "5.62.0" @@ -2088,13 +2088,13 @@ semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.1.tgz#09c54af0151a1b05d0875c0fc7fe2ec7a2476ece" - integrity sha512-9ZOncVSfr+sMXVxxca2OJOPagRwT0u/UHikM2Rd6L/aB+kL/QAuTnsv6MeXtjzCJYb8PzrXarypSGIPx3Jemxw== +"@typescript-eslint/typescript-estree@7.3.1": + version "7.3.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.3.1.tgz#598848195fad34c7aa73f548bd00a4d4e5f5e2bb" + integrity sha512-tLpuqM46LVkduWP7JO7yVoWshpJuJzxDOPYIVWUUZbW+4dBpgGeUdl/fQkhuV0A8eGnphYw3pp8d2EnvPOfxmQ== dependencies: - "@typescript-eslint/types" "7.1.1" - "@typescript-eslint/visitor-keys" "7.1.1" + "@typescript-eslint/types" "7.3.1" + "@typescript-eslint/visitor-keys" "7.3.1" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2102,17 +2102,17 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/utils@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.1.1.tgz#bdeeb789eee4af5d3fb5400a69566d4dbf97ff3b" - integrity sha512-thOXM89xA03xAE0lW7alstvnyoBUbBX38YtY+zAUcpRPcq9EIhXPuJ0YTv948MbzmKh6e1AUszn5cBFK49Umqg== +"@typescript-eslint/utils@7.3.1": + version "7.3.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.3.1.tgz#fc28fd508ccf89495012561b7c02a6fdad162460" + integrity sha512-jIERm/6bYQ9HkynYlNZvXpzmXWZGhMbrOvq3jJzOSOlKXsVjrrolzWBjDW6/TvT5Q3WqaN4EkmcfdQwi9tDjBQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" "@types/json-schema" "^7.0.12" "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "7.1.1" - "@typescript-eslint/types" "7.1.1" - "@typescript-eslint/typescript-estree" "7.1.1" + "@typescript-eslint/scope-manager" "7.3.1" + "@typescript-eslint/types" "7.3.1" + "@typescript-eslint/typescript-estree" "7.3.1" semver "^7.5.4" "@typescript-eslint/utils@^5.10.0": @@ -2137,12 +2137,12 @@ "@typescript-eslint/types" "5.62.0" eslint-visitor-keys "^3.3.0" -"@typescript-eslint/visitor-keys@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.1.tgz#e6538a58c9b157f03bcbb29e3b6a92fe39a6ab0d" - integrity sha512-yTdHDQxY7cSoCcAtiBzVzxleJhkGB9NncSIyMYe2+OGON1ZsP9zOPws/Pqgopa65jvknOjlk/w7ulPlZ78PiLQ== +"@typescript-eslint/visitor-keys@7.3.1": + version "7.3.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.3.1.tgz#6ddef14a3ce2a79690f01176f5305c34d7b93d8c" + integrity sha512-9RMXwQF8knsZvfv9tdi+4D/j7dMG28X/wMJ8Jj6eOHyHWwDW4ngQJcqEczSsqIKKjFiLFr40Mnr7a5ulDD3vmw== dependencies: - "@typescript-eslint/types" "7.1.1" + "@typescript-eslint/types" "7.3.1" eslint-visitor-keys "^3.4.1" "@ungap/structured-clone@^1.2.0": @@ -6045,9 +6045,9 @@ tr46@~0.0.3: integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== ts-api-utils@^1.0.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.2.1.tgz#f716c7e027494629485b21c0df6180f4d08f5e8b" - integrity sha512-RIYA36cJn2WiH9Hy77hdF9r7oEwxAtB/TS9/S4Qd90Ap4z5FSiin5zEiTL44OII1Y3IIlEvxwxFUVgrHSZ/UpA== + version "1.3.0" + resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1" + integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ== ts-node@^10.9.1: version "10.9.2" From 2c68ee22543653822e8e243c74fe62e6b2da85d5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 19 Mar 2024 16:33:19 +0000 Subject: [PATCH 127/595] Update babel monorepo to v7.24.1 (#4119) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 967 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 505 insertions(+), 462 deletions(-) diff --git a/yarn.lock b/yarn.lock index 16c65153af1..461e5680287 100644 --- a/yarn.lock +++ b/yarn.lock @@ -28,11 +28,11 @@ "@jridgewell/trace-mapping" "^0.3.24" "@babel/cli@^7.12.10": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.23.9.tgz#06b3e76376ee53f14ac8ac422c884950c69e1b9e" - integrity sha512-vB1UXmGDNEhcf1jNAHKT9IlYk1R+hehVTLFlCLHBi8gfuHQGP6uRjgXVYU0EVlI/qwAWpstqkBdf2aez3/z/5Q== + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.1.tgz#2e11e071e32fe82850b4fe514f56b9c9e1c44911" + integrity sha512-HbmrtxyFUr34LwAlV9jS+sSIjUp4FpdtIMGwgufY3AsxrIfsh/HxlMTywsONAZsU0RMYbZtbZFpUCrSGs7o0EA== dependencies: - "@jridgewell/trace-mapping" "^0.3.17" + "@jridgewell/trace-mapping" "^0.3.25" commander "^4.0.1" convert-source-map "^2.0.0" fs-readdir-recursive "^1.1.0" @@ -51,7 +51,7 @@ "@babel/highlight" "^7.22.13" chalk "^2.4.2" -"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.22.13", "@babel/code-frame@^7.23.5": +"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.22.13": version "7.23.5" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.23.5.tgz#9009b69a8c602293476ad598ff53e4562e15c244" integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== @@ -59,30 +59,43 @@ "@babel/highlight" "^7.23.4" chalk "^2.4.2" +"@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.1.tgz#8f4027f85a6e84a695276080e864215318f95c19" + integrity sha512-bC49z4spJQR3j8vFtJBLqzyzFV0ciuL5HYX7qfSl3KEqeMVV+eTquRvmXxpvB0AMubRrvv7y5DILiLLPi57Ewg== + dependencies: + "@babel/highlight" "^7.24.1" + picocolors "^1.0.0" + "@babel/compat-data@^7.20.5": version "7.22.9" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730" integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9", "@babel/compat-data@^7.23.5": +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.5", "@babel/compat-data@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.1.tgz#31c1f66435f2a9c329bb5716a6d6186c516c3742" + integrity sha512-Pc65opHDliVpRHuKfzI+gSA4zcgr65O4cl64fFJIWEEh8JoHIHh0Oez1Eo8Arz8zq/JhgKodQaxEwUPRtZylVA== + +"@babel/compat-data@^7.22.9": version "7.23.5" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== "@babel/core@^7.0.0", "@babel/core@^7.12.10": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.0.tgz#56cbda6b185ae9d9bed369816a8f4423c5f2ff1b" - integrity sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw== + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.1.tgz#b802f931b6498dcb8fed5a4710881a45abbc2784" + integrity sha512-F82udohVyIgGAY2VVj/g34TpFUG606rumIHjTfVbssPg2zTR7PuuEpZcX8JA6sgBfIYmJrFtWgPvHQuJamVqZQ== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" + "@babel/code-frame" "^7.24.1" + "@babel/generator" "^7.24.1" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.24.0" - "@babel/parser" "^7.24.0" + "@babel/helpers" "^7.24.1" + "@babel/parser" "^7.24.1" "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.0" + "@babel/traverse" "^7.24.1" "@babel/types" "^7.24.0" convert-source-map "^2.0.0" debug "^4.1.0" @@ -112,9 +125,9 @@ semver "^6.3.1" "@babel/eslint-parser@^7.12.10": - version "7.23.10" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.23.10.tgz#2d4164842d6db798873b40e0c4238827084667a2" - integrity sha512-3wSYDPZVnhseRnxRJH6ZVTNknBz76AEnyC+AYYhasjP3Yy23qz0ERR7Fcd2SHmYuSFJ2kY9gaaDd3vyqU09eSw== + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.1.tgz#e27eee93ed1d271637165ef3a86e2b9332395c32" + integrity sha512-d5guuzMlPeDfZIbpQ8+g1NaCNuAGBBGNECh0HVqz1sjOeVLh2CEaifuOysCH18URW6R7pqXINvf5PaR/dC6jLQ== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" @@ -147,14 +160,14 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" -"@babel/generator@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.6.tgz#9e1fca4811c77a10580d17d26b57b036133f3c2e" - integrity sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw== +"@babel/generator@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.1.tgz#e67e06f68568a4ebf194d1c6014235344f0476d0" + integrity sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A== dependencies: - "@babel/types" "^7.23.6" - "@jridgewell/gen-mapping" "^0.3.2" - "@jridgewell/trace-mapping" "^0.3.17" + "@babel/types" "^7.24.0" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" "@babel/helper-annotate-as-pure@^7.22.5": @@ -208,17 +221,17 @@ "@babel/helper-split-export-declaration" "^7.22.6" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.22.15": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.0.tgz#fc7554141bdbfa2d17f7b4b80153b9b090e5d158" - integrity sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g== +"@babel/helper-create-class-features-plugin@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.1.tgz#db58bf57137b623b916e24874ab7188d93d7f68f" + integrity sha512-1yJa9dX9g//V6fDebXoEfEsxkZHk3Hcbm+zLhyu6qVgYFLvmTALTeV+jNU9e5RnYtioBrGEOdoI2joMSNQ/+aA== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-function-name" "^7.23.0" "@babel/helper-member-expression-to-functions" "^7.23.0" "@babel/helper-optimise-call-expression" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.20" + "@babel/helper-replace-supers" "^7.24.1" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" "@babel/helper-split-export-declaration" "^7.22.6" semver "^6.3.1" @@ -232,10 +245,10 @@ regexpu-core "^5.3.1" semver "^6.3.1" -"@babel/helper-define-polyfill-provider@^0.5.0": - version "0.5.0" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.5.0.tgz#465805b7361f461e86c680f1de21eaf88c25901b" - integrity sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q== +"@babel/helper-define-polyfill-provider@^0.6.1": + version "0.6.1" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.1.tgz#fadc63f0c2ff3c8d02ed905dcea747c5b0fb74fd" + integrity sha512-o7SDgTJuvx5vLKD6SFvkydkSMBvahDKGiNJzG22IZYXhiqoe9efY7zocICBgzHV4IRg5wdgl2nEL/tulKIEIbA== dependencies: "@babel/helper-compilation-targets" "^7.22.6" "@babel/helper-plugin-utils" "^7.22.5" @@ -277,12 +290,12 @@ dependencies: "@babel/types" "^7.22.15" -"@babel/helper-module-imports@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" - integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== +"@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.1.tgz#961ea2c12aad6cfc75b8c396c81608a08283027b" + integrity sha512-HfEWzysMyOa7xI5uQHc/OcZf67/jc+xe/RZlznWQHhbb8Pg1SkRdbK4yEi61aY8wxQA7PkSfoojtLQP/Kpe3og== dependencies: - "@babel/types" "^7.22.15" + "@babel/types" "^7.24.0" "@babel/helper-module-transforms@^7.22.17": version "7.22.17" @@ -332,7 +345,7 @@ "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-wrap-function" "^7.22.20" -"@babel/helper-replace-supers@^7.22.20", "@babel/helper-replace-supers@^7.22.9": +"@babel/helper-replace-supers@^7.22.9": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793" integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw== @@ -341,6 +354,15 @@ "@babel/helper-member-expression-to-functions" "^7.22.15" "@babel/helper-optimise-call-expression" "^7.22.5" +"@babel/helper-replace-supers@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz#7085bd19d4a0b7ed8f405c1ed73ccb70f323abc1" + integrity sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-member-expression-to-functions" "^7.23.0" + "@babel/helper-optimise-call-expression" "^7.22.5" + "@babel/helper-simple-access@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" @@ -362,26 +384,31 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-string-parser@^7.22.5", "@babel/helper-string-parser@^7.23.4": +"@babel/helper-string-parser@^7.22.5": version "7.23.4" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== +"@babel/helper-string-parser@^7.23.4": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz#f99c36d3593db9540705d0739a1f10b5e20c696e" + integrity sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ== + "@babel/helper-validator-identifier@^7.22.15", "@babel/helper-validator-identifier@^7.22.19", "@babel/helper-validator-identifier@^7.22.20": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== -"@babel/helper-validator-option@^7.22.15", "@babel/helper-validator-option@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" - integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== - "@babel/helper-validator-option@^7.22.5": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== +"@babel/helper-validator-option@^7.23.5": + version "7.23.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" + integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== + "@babel/helper-wrap-function@^7.22.20": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz#15352b0b9bfb10fc9c76f79f6342c00e3411a569" @@ -400,16 +427,16 @@ "@babel/traverse" "^7.22.15" "@babel/types" "^7.22.15" -"@babel/helpers@^7.24.0": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.0.tgz#a3dd462b41769c95db8091e49cfe019389a9409b" - integrity sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA== +"@babel/helpers@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.1.tgz#183e44714b9eba36c3038e442516587b1e0a1a94" + integrity sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg== dependencies: "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.0" + "@babel/traverse" "^7.24.1" "@babel/types" "^7.24.0" -"@babel/highlight@^7.22.13", "@babel/highlight@^7.23.4": +"@babel/highlight@^7.22.13": version "7.23.4" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.23.4.tgz#edaadf4d8232e1a961432db785091207ead0621b" integrity sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A== @@ -418,6 +445,16 @@ chalk "^2.4.2" js-tokens "^4.0.0" +"@babel/highlight@^7.23.4", "@babel/highlight@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.1.tgz#21f3f5391c793b3f0d6dbb40f898c48cc6ad4215" + integrity sha512-EPmDPxidWe/Ex+HTFINpvXdPHRmgSF3T8hGvzondYjmgzTQ/0EbLpSxyt+w3zzlYSk9cNBQNF9k0dT5Z2NiBjw== + dependencies: + "@babel/helper-validator-identifier" "^7.22.20" + chalk "^2.4.2" + js-tokens "^4.0.0" + picocolors "^1.0.0" + "@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.16": version "7.22.16" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.16.tgz#180aead7f247305cce6551bea2720934e2fa2c95" @@ -433,34 +470,34 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.3.tgz#0ce0be31a4ca4f1884b5786057cadcb6c3be58f9" integrity sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw== -"@babel/parser@^7.24.0": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.0.tgz#26a3d1ff49031c53a97d03b604375f028746a9ac" - integrity sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg== +"@babel/parser@^7.24.0", "@babel/parser@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.1.tgz#1e416d3627393fab1cb5b0f2f1796a100ae9133a" + integrity sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg== -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.23.3.tgz#5cd1c87ba9380d0afb78469292c954fee5d2411a" - integrity sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ== +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.1.tgz#b645d9ba8c2bc5b7af50f0fe949f9edbeb07c8cf" + integrity sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.23.3.tgz#f6652bb16b94f8f9c20c50941e16e9756898dc5d" - integrity sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.1.tgz#da8261f2697f0f41b0855b91d3a20a1fbfd271d3" + integrity sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/plugin-transform-optional-chaining" "^7.23.3" + "@babel/plugin-transform-optional-chaining" "^7.24.1" -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.23.7": - version "7.23.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.7.tgz#516462a95d10a9618f197d39ad291a9b47ae1d7b" - integrity sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.1.tgz#1181d9685984c91d657b8ddf14f0487a6bab2988" + integrity sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw== dependencies: "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-proposal-class-properties@^7.12.1": version "7.18.6" @@ -536,19 +573,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-import-assertions@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.23.3.tgz#9c05a7f592982aff1a2768260ad84bcd3f0c77fc" - integrity sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw== +"@babel/plugin-syntax-import-assertions@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.1.tgz#db3aad724153a00eaac115a3fb898de544e34971" + integrity sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-syntax-import-attributes@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.23.3.tgz#992aee922cf04512461d7dae3ff6951b90a2dc06" - integrity sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA== +"@babel/plugin-syntax-import-attributes@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.1.tgz#c66b966c63b714c4eec508fcf5763b1f2d381093" + integrity sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" @@ -564,12 +601,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz#8f2e4f8a9b5f9aa16067e142c1ac9cd9f810f473" - integrity sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg== +"@babel/plugin-syntax-jsx@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz#3f6ca04b8c841811dbc3c5c5f837934e0d626c10" + integrity sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-jsx@^7.7.2": version "7.22.5" @@ -634,12 +671,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz#24f460c85dbbc983cd2b9c4994178bcc01df958f" - integrity sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ== +"@babel/plugin-syntax-typescript@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz#b3bcc51f396d15f3591683f90239de143c076844" + integrity sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-typescript@^7.7.2": version "7.22.5" @@ -656,212 +693,212 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-arrow-functions@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.23.3.tgz#94c6dcfd731af90f27a79509f9ab7fb2120fc38b" - integrity sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ== +"@babel/plugin-transform-arrow-functions@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.1.tgz#2bf263617060c9cc45bcdbf492b8cc805082bf27" + integrity sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-async-generator-functions@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.9.tgz#9adaeb66fc9634a586c5df139c6240d41ed801ce" - integrity sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ== +"@babel/plugin-transform-async-generator-functions@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.1.tgz#b38009d650b3c419e6708ec5ab4fa5eeffe7b489" + integrity sha512-OTkLJM0OtmzcpOgF7MREERUCdCnCBtBsq3vVFbuq/RKMK0/jdYqdMexWi3zNs7Nzd95ase65MbTGrpFJflOb6A== dependencies: "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/helper-remap-async-to-generator" "^7.22.20" "@babel/plugin-syntax-async-generators" "^7.8.4" -"@babel/plugin-transform-async-to-generator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.23.3.tgz#d1f513c7a8a506d43f47df2bf25f9254b0b051fa" - integrity sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw== +"@babel/plugin-transform-async-to-generator@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.1.tgz#0e220703b89f2216800ce7b1c53cb0cf521c37f4" + integrity sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw== dependencies: - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-module-imports" "^7.24.1" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/helper-remap-async-to-generator" "^7.22.20" -"@babel/plugin-transform-block-scoped-functions@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.23.3.tgz#fe1177d715fb569663095e04f3598525d98e8c77" - integrity sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A== +"@babel/plugin-transform-block-scoped-functions@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.1.tgz#1c94799e20fcd5c4d4589523bbc57b7692979380" + integrity sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-block-scoping@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.4.tgz#b2d38589531c6c80fbe25e6b58e763622d2d3cf5" - integrity sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw== +"@babel/plugin-transform-block-scoping@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.1.tgz#27af183d7f6dad890531256c7a45019df768ac1f" + integrity sha512-h71T2QQvDgM2SmT29UYU6ozjMlAt7s7CSs5Hvy8f8cf/GM/Z4a2zMfN+fjVGaieeCrXR3EdQl6C4gQG+OgmbKw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-class-properties@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.23.3.tgz#35c377db11ca92a785a718b6aa4e3ed1eb65dc48" - integrity sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg== +"@babel/plugin-transform-class-properties@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.1.tgz#bcbf1aef6ba6085cfddec9fc8d58871cf011fc29" + integrity sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g== dependencies: - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-create-class-features-plugin" "^7.24.1" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-class-static-block@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.23.4.tgz#2a202c8787a8964dd11dfcedf994d36bfc844ab5" - integrity sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ== +"@babel/plugin-transform-class-static-block@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.1.tgz#4e37efcca1d9f2fcb908d1bae8b56b4b6e9e1cb6" + integrity sha512-FUHlKCn6J3ERiu8Dv+4eoz7w8+kFLSyeVG4vDAikwADGjUCoHw/JHokyGtr8OR4UjpwPVivyF+h8Q5iv/JmrtA== dependencies: - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-create-class-features-plugin" "^7.24.1" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-transform-classes@^7.23.8": - version "7.23.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.23.8.tgz#d08ae096c240347badd68cdf1b6d1624a6435d92" - integrity sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg== +"@babel/plugin-transform-classes@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.1.tgz#5bc8fc160ed96378184bc10042af47f50884dcb1" + integrity sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-function-name" "^7.23.0" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.20" + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-replace-supers" "^7.24.1" "@babel/helper-split-export-declaration" "^7.22.6" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.23.3.tgz#652e69561fcc9d2b50ba4f7ac7f60dcf65e86474" - integrity sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw== +"@babel/plugin-transform-computed-properties@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.1.tgz#bc7e787f8e021eccfb677af5f13c29a9934ed8a7" + integrity sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/template" "^7.22.15" + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/template" "^7.24.0" -"@babel/plugin-transform-destructuring@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.3.tgz#8c9ee68228b12ae3dff986e56ed1ba4f3c446311" - integrity sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw== +"@babel/plugin-transform-destructuring@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.1.tgz#b1e8243af4a0206841973786292b8c8dd8447345" + integrity sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-dotall-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.23.3.tgz#3f7af6054882ede89c378d0cf889b854a993da50" - integrity sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ== +"@babel/plugin-transform-dotall-regex@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.1.tgz#d56913d2f12795cc9930801b84c6f8c47513ac13" + integrity sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-duplicate-keys@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.23.3.tgz#664706ca0a5dfe8d066537f99032fc1dc8b720ce" - integrity sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA== +"@babel/plugin-transform-duplicate-keys@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.1.tgz#5347a797fe82b8d09749d10e9f5b83665adbca88" + integrity sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-dynamic-import@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.23.4.tgz#c7629e7254011ac3630d47d7f34ddd40ca535143" - integrity sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ== +"@babel/plugin-transform-dynamic-import@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.1.tgz#2a5a49959201970dd09a5fca856cb651e44439dd" + integrity sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-dynamic-import" "^7.8.3" -"@babel/plugin-transform-exponentiation-operator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.23.3.tgz#ea0d978f6b9232ba4722f3dbecdd18f450babd18" - integrity sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ== +"@babel/plugin-transform-exponentiation-operator@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.1.tgz#6650ebeb5bd5c012d5f5f90a26613a08162e8ba4" + integrity sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw== dependencies: "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-export-namespace-from@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.23.4.tgz#084c7b25e9a5c8271e987a08cf85807b80283191" - integrity sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ== +"@babel/plugin-transform-export-namespace-from@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.1.tgz#f033541fc036e3efb2dcb58eedafd4f6b8078acd" + integrity sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" -"@babel/plugin-transform-for-of@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.23.6.tgz#81c37e24171b37b370ba6aaffa7ac86bcb46f94e" - integrity sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw== +"@babel/plugin-transform-for-of@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.1.tgz#67448446b67ab6c091360ce3717e7d3a59e202fd" + integrity sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" -"@babel/plugin-transform-function-name@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.23.3.tgz#8f424fcd862bf84cb9a1a6b42bc2f47ed630f8dc" - integrity sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw== +"@babel/plugin-transform-function-name@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.1.tgz#8cba6f7730626cc4dfe4ca2fa516215a0592b361" + integrity sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA== dependencies: - "@babel/helper-compilation-targets" "^7.22.15" + "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-function-name" "^7.23.0" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-json-strings@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.23.4.tgz#a871d9b6bd171976efad2e43e694c961ffa3714d" - integrity sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg== +"@babel/plugin-transform-json-strings@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.1.tgz#08e6369b62ab3e8a7b61089151b161180c8299f7" + integrity sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-json-strings" "^7.8.3" -"@babel/plugin-transform-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.23.3.tgz#8214665f00506ead73de157eba233e7381f3beb4" - integrity sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ== +"@babel/plugin-transform-literals@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.1.tgz#0a1982297af83e6b3c94972686067df588c5c096" + integrity sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-logical-assignment-operators@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.23.4.tgz#e599f82c51d55fac725f62ce55d3a0886279ecb5" - integrity sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg== +"@babel/plugin-transform-logical-assignment-operators@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.1.tgz#719d8aded1aa94b8fb34e3a785ae8518e24cfa40" + integrity sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-transform-member-expression-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.23.3.tgz#e37b3f0502289f477ac0e776b05a833d853cabcc" - integrity sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag== +"@babel/plugin-transform-member-expression-literals@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.1.tgz#896d23601c92f437af8b01371ad34beb75df4489" + integrity sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-modules-amd@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.3.tgz#e19b55436a1416829df0a1afc495deedfae17f7d" - integrity sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw== +"@babel/plugin-transform-modules-amd@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz#b6d829ed15258536977e9c7cc6437814871ffa39" + integrity sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ== dependencies: "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-modules-commonjs@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz#661ae831b9577e52be57dd8356b734f9700b53b4" - integrity sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA== +"@babel/plugin-transform-modules-commonjs@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz#e71ba1d0d69e049a22bf90b3867e263823d3f1b9" + integrity sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw== dependencies: "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/helper-simple-access" "^7.22.5" -"@babel/plugin-transform-modules-systemjs@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.9.tgz#105d3ed46e4a21d257f83a2f9e2ee4203ceda6be" - integrity sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw== +"@babel/plugin-transform-modules-systemjs@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.1.tgz#2b9625a3d4e445babac9788daec39094e6b11e3e" + integrity sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA== dependencies: "@babel/helper-hoist-variables" "^7.22.5" "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/helper-validator-identifier" "^7.22.20" -"@babel/plugin-transform-modules-umd@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.23.3.tgz#5d4395fccd071dfefe6585a4411aa7d6b7d769e9" - integrity sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg== +"@babel/plugin-transform-modules-umd@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.1.tgz#69220c66653a19cf2c0872b9c762b9a48b8bebef" + integrity sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg== dependencies: "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-transform-named-capturing-groups-regex@^7.22.5": version "7.22.5" @@ -871,62 +908,61 @@ "@babel/helper-create-regexp-features-plugin" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-new-target@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.23.3.tgz#5491bb78ed6ac87e990957cea367eab781c4d980" - integrity sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ== +"@babel/plugin-transform-new-target@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.1.tgz#29c59988fa3d0157de1c871a28cd83096363cc34" + integrity sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-nullish-coalescing-operator@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.23.4.tgz#45556aad123fc6e52189ea749e33ce090637346e" - integrity sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA== +"@babel/plugin-transform-nullish-coalescing-operator@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz#0cd494bb97cb07d428bd651632cb9d4140513988" + integrity sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-transform-numeric-separator@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.23.4.tgz#03d08e3691e405804ecdd19dd278a40cca531f29" - integrity sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q== +"@babel/plugin-transform-numeric-separator@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.1.tgz#5bc019ce5b3435c1cadf37215e55e433d674d4e8" + integrity sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-transform-object-rest-spread@^7.24.0": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.0.tgz#7b836ad0088fdded2420ce96d4e1d3ed78b71df1" - integrity sha512-y/yKMm7buHpFFXfxVFS4Vk1ToRJDilIa6fKRioB9Vjichv58TDGXTvqV0dN7plobAmTW5eSEGXDngE+Mm+uO+w== +"@babel/plugin-transform-object-rest-spread@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.1.tgz#5a3ce73caf0e7871a02e1c31e8b473093af241ff" + integrity sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA== dependencies: - "@babel/compat-data" "^7.23.5" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.23.3" + "@babel/plugin-transform-parameters" "^7.24.1" -"@babel/plugin-transform-object-super@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.23.3.tgz#81fdb636dcb306dd2e4e8fd80db5b2362ed2ebcd" - integrity sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA== +"@babel/plugin-transform-object-super@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.1.tgz#e71d6ab13483cca89ed95a474f542bbfc20a0520" + integrity sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.20" + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-replace-supers" "^7.24.1" -"@babel/plugin-transform-optional-catch-binding@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.23.4.tgz#318066de6dacce7d92fa244ae475aa8d91778017" - integrity sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A== +"@babel/plugin-transform-optional-catch-binding@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.1.tgz#92a3d0efe847ba722f1a4508669b23134669e2da" + integrity sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-transform-optional-chaining@^7.23.3", "@babel/plugin-transform-optional-chaining@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.4.tgz#6acf61203bdfc4de9d4e52e64490aeb3e52bd017" - integrity sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA== +"@babel/plugin-transform-optional-chaining@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.1.tgz#26e588acbedce1ab3519ac40cc748e380c5291e6" + integrity sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" "@babel/plugin-syntax-optional-chaining" "^7.8.3" @@ -937,162 +973,162 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-parameters@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.23.3.tgz#83ef5d1baf4b1072fa6e54b2b0999a7b2527e2af" - integrity sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw== +"@babel/plugin-transform-parameters@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.1.tgz#983c15d114da190506c75b616ceb0f817afcc510" + integrity sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-private-methods@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.23.3.tgz#b2d7a3c97e278bfe59137a978d53b2c2e038c0e4" - integrity sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g== +"@babel/plugin-transform-private-methods@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.1.tgz#a0faa1ae87eff077e1e47a5ec81c3aef383dc15a" + integrity sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-create-class-features-plugin" "^7.24.1" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-private-property-in-object@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.23.4.tgz#3ec711d05d6608fd173d9b8de39872d8dbf68bf5" - integrity sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A== +"@babel/plugin-transform-private-property-in-object@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.1.tgz#756443d400274f8fb7896742962cc1b9f25c1f6a" + integrity sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-create-class-features-plugin" "^7.24.1" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" -"@babel/plugin-transform-property-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.23.3.tgz#54518f14ac4755d22b92162e4a852d308a560875" - integrity sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw== +"@babel/plugin-transform-property-literals@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.1.tgz#d6a9aeab96f03749f4eebeb0b6ea8e90ec958825" + integrity sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-regenerator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.23.3.tgz#141afd4a2057298602069fce7f2dc5173e6c561c" - integrity sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ== +"@babel/plugin-transform-regenerator@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.1.tgz#625b7545bae52363bdc1fbbdc7252b5046409c8c" + integrity sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" regenerator-transform "^0.15.2" -"@babel/plugin-transform-reserved-words@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.23.3.tgz#4130dcee12bd3dd5705c587947eb715da12efac8" - integrity sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg== +"@babel/plugin-transform-reserved-words@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.1.tgz#8de729f5ecbaaf5cf83b67de13bad38a21be57c1" + integrity sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-transform-runtime@^7.12.10": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.0.tgz#e308fe27d08b74027d42547081eefaf4f2ffbcc9" - integrity sha512-zc0GA5IitLKJrSfXlXmp8KDqLrnGECK7YRfQBmEKg1NmBOQ7e+KuclBEKJgzifQeUYLdNiAw4B4bjyvzWVLiSA== + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.1.tgz#3678311f7193ef7cf62c6f34c6f757d0301bf314" + integrity sha512-yHLX14/T+tO0gjgJroDb8JYjOcQuzVC+Brt4CjHAxq/Ghw4xBVG+N02d1rMEcyUnKUQBL4Yy2gA9R72GK961jQ== dependencies: - "@babel/helper-module-imports" "^7.22.15" + "@babel/helper-module-imports" "^7.24.1" "@babel/helper-plugin-utils" "^7.24.0" - babel-plugin-polyfill-corejs2 "^0.4.8" - babel-plugin-polyfill-corejs3 "^0.9.0" - babel-plugin-polyfill-regenerator "^0.5.5" + babel-plugin-polyfill-corejs2 "^0.4.10" + babel-plugin-polyfill-corejs3 "^0.10.1" + babel-plugin-polyfill-regenerator "^0.6.1" semver "^6.3.1" -"@babel/plugin-transform-shorthand-properties@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.23.3.tgz#97d82a39b0e0c24f8a981568a8ed851745f59210" - integrity sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg== +"@babel/plugin-transform-shorthand-properties@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.1.tgz#ba9a09144cf55d35ec6b93a32253becad8ee5b55" + integrity sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-spread@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.23.3.tgz#41d17aacb12bde55168403c6f2d6bdca563d362c" - integrity sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg== +"@babel/plugin-transform-spread@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.1.tgz#a1acf9152cbf690e4da0ba10790b3ac7d2b2b391" + integrity sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" -"@babel/plugin-transform-sticky-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.23.3.tgz#dec45588ab4a723cb579c609b294a3d1bd22ff04" - integrity sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg== +"@babel/plugin-transform-sticky-regex@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.1.tgz#f03e672912c6e203ed8d6e0271d9c2113dc031b9" + integrity sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-template-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.23.3.tgz#5f0f028eb14e50b5d0f76be57f90045757539d07" - integrity sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg== +"@babel/plugin-transform-template-literals@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.1.tgz#15e2166873a30d8617e3e2ccadb86643d327aab7" + integrity sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-typeof-symbol@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.23.3.tgz#9dfab97acc87495c0c449014eb9c547d8966bca4" - integrity sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ== +"@babel/plugin-transform-typeof-symbol@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.1.tgz#6831f78647080dec044f7e9f68003d99424f94c7" + integrity sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-typescript@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.3.tgz#ce806e6cb485d468c48c4f717696719678ab0138" - integrity sha512-ogV0yWnq38CFwH20l2Afz0dfKuZBx9o/Y2Rmh5vuSS0YD1hswgEgTfyTzuSrT2q9btmHRSqYoSfwFUVaC1M1Jw== +"@babel/plugin-transform-typescript@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.1.tgz#5c05e28bb76c7dfe7d6c5bed9951324fd2d3ab07" + integrity sha512-liYSESjX2fZ7JyBFkYG78nfvHlMKE6IpNdTVnxmlYUR+j5ZLsitFbaAE+eJSK2zPPkNWNw4mXL51rQ8WrvdK0w== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-typescript" "^7.23.3" + "@babel/helper-create-class-features-plugin" "^7.24.1" + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/plugin-syntax-typescript" "^7.24.1" -"@babel/plugin-transform-unicode-escapes@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.23.3.tgz#1f66d16cab01fab98d784867d24f70c1ca65b925" - integrity sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q== +"@babel/plugin-transform-unicode-escapes@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.1.tgz#fb3fa16676549ac7c7449db9b342614985c2a3a4" + integrity sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-unicode-property-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.23.3.tgz#19e234129e5ffa7205010feec0d94c251083d7ad" - integrity sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA== +"@babel/plugin-transform-unicode-property-regex@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.1.tgz#56704fd4d99da81e5e9f0c0c93cabd91dbc4889e" + integrity sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-unicode-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.23.3.tgz#26897708d8f42654ca4ce1b73e96140fbad879dc" - integrity sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw== +"@babel/plugin-transform-unicode-regex@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.1.tgz#57c3c191d68f998ac46b708380c1ce4d13536385" + integrity sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-unicode-sets-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.23.3.tgz#4fb6f0a719c2c5859d11f6b55a050cc987f3799e" - integrity sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw== +"@babel/plugin-transform-unicode-sets-regex@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.1.tgz#c1ea175b02afcffc9cf57a9c4658326625165b7f" + integrity sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/preset-env@^7.12.11": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.0.tgz#11536a7f4b977294f0bdfad780f01a8ac8e183fc" - integrity sha512-ZxPEzV9IgvGn73iK0E6VB9/95Nd7aMFpbE0l8KQFDG70cOV9IxRP7Y2FUPmlK0v6ImlLqYX50iuZ3ZTVhOF2lA== + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.1.tgz#e63a3f95d9922c07f4a53649b5c2f53f611f2e6c" + integrity sha512-CwCMz1Z28UHLI2iE+cbnWT2epPMV9bzzoBGM6A3mOS22VQd/1TPoWItV7S7iL9TkPmPEf5L/QzurmztyyDN9FA== dependencies: - "@babel/compat-data" "^7.23.5" + "@babel/compat-data" "^7.24.1" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-plugin-utils" "^7.24.0" "@babel/helper-validator-option" "^7.23.5" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.23.3" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.23.3" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.23.7" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.1" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.1" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.24.1" "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-class-properties" "^7.12.13" "@babel/plugin-syntax-class-static-block" "^7.14.5" "@babel/plugin-syntax-dynamic-import" "^7.8.3" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-import-assertions" "^7.23.3" - "@babel/plugin-syntax-import-attributes" "^7.23.3" + "@babel/plugin-syntax-import-assertions" "^7.24.1" + "@babel/plugin-syntax-import-attributes" "^7.24.1" "@babel/plugin-syntax-import-meta" "^7.10.4" "@babel/plugin-syntax-json-strings" "^7.8.3" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" @@ -1104,58 +1140,58 @@ "@babel/plugin-syntax-private-property-in-object" "^7.14.5" "@babel/plugin-syntax-top-level-await" "^7.14.5" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.23.3" - "@babel/plugin-transform-async-generator-functions" "^7.23.9" - "@babel/plugin-transform-async-to-generator" "^7.23.3" - "@babel/plugin-transform-block-scoped-functions" "^7.23.3" - "@babel/plugin-transform-block-scoping" "^7.23.4" - "@babel/plugin-transform-class-properties" "^7.23.3" - "@babel/plugin-transform-class-static-block" "^7.23.4" - "@babel/plugin-transform-classes" "^7.23.8" - "@babel/plugin-transform-computed-properties" "^7.23.3" - "@babel/plugin-transform-destructuring" "^7.23.3" - "@babel/plugin-transform-dotall-regex" "^7.23.3" - "@babel/plugin-transform-duplicate-keys" "^7.23.3" - "@babel/plugin-transform-dynamic-import" "^7.23.4" - "@babel/plugin-transform-exponentiation-operator" "^7.23.3" - "@babel/plugin-transform-export-namespace-from" "^7.23.4" - "@babel/plugin-transform-for-of" "^7.23.6" - "@babel/plugin-transform-function-name" "^7.23.3" - "@babel/plugin-transform-json-strings" "^7.23.4" - "@babel/plugin-transform-literals" "^7.23.3" - "@babel/plugin-transform-logical-assignment-operators" "^7.23.4" - "@babel/plugin-transform-member-expression-literals" "^7.23.3" - "@babel/plugin-transform-modules-amd" "^7.23.3" - "@babel/plugin-transform-modules-commonjs" "^7.23.3" - "@babel/plugin-transform-modules-systemjs" "^7.23.9" - "@babel/plugin-transform-modules-umd" "^7.23.3" + "@babel/plugin-transform-arrow-functions" "^7.24.1" + "@babel/plugin-transform-async-generator-functions" "^7.24.1" + "@babel/plugin-transform-async-to-generator" "^7.24.1" + "@babel/plugin-transform-block-scoped-functions" "^7.24.1" + "@babel/plugin-transform-block-scoping" "^7.24.1" + "@babel/plugin-transform-class-properties" "^7.24.1" + "@babel/plugin-transform-class-static-block" "^7.24.1" + "@babel/plugin-transform-classes" "^7.24.1" + "@babel/plugin-transform-computed-properties" "^7.24.1" + "@babel/plugin-transform-destructuring" "^7.24.1" + "@babel/plugin-transform-dotall-regex" "^7.24.1" + "@babel/plugin-transform-duplicate-keys" "^7.24.1" + "@babel/plugin-transform-dynamic-import" "^7.24.1" + "@babel/plugin-transform-exponentiation-operator" "^7.24.1" + "@babel/plugin-transform-export-namespace-from" "^7.24.1" + "@babel/plugin-transform-for-of" "^7.24.1" + "@babel/plugin-transform-function-name" "^7.24.1" + "@babel/plugin-transform-json-strings" "^7.24.1" + "@babel/plugin-transform-literals" "^7.24.1" + "@babel/plugin-transform-logical-assignment-operators" "^7.24.1" + "@babel/plugin-transform-member-expression-literals" "^7.24.1" + "@babel/plugin-transform-modules-amd" "^7.24.1" + "@babel/plugin-transform-modules-commonjs" "^7.24.1" + "@babel/plugin-transform-modules-systemjs" "^7.24.1" + "@babel/plugin-transform-modules-umd" "^7.24.1" "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5" - "@babel/plugin-transform-new-target" "^7.23.3" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.23.4" - "@babel/plugin-transform-numeric-separator" "^7.23.4" - "@babel/plugin-transform-object-rest-spread" "^7.24.0" - "@babel/plugin-transform-object-super" "^7.23.3" - "@babel/plugin-transform-optional-catch-binding" "^7.23.4" - "@babel/plugin-transform-optional-chaining" "^7.23.4" - "@babel/plugin-transform-parameters" "^7.23.3" - "@babel/plugin-transform-private-methods" "^7.23.3" - "@babel/plugin-transform-private-property-in-object" "^7.23.4" - "@babel/plugin-transform-property-literals" "^7.23.3" - "@babel/plugin-transform-regenerator" "^7.23.3" - "@babel/plugin-transform-reserved-words" "^7.23.3" - "@babel/plugin-transform-shorthand-properties" "^7.23.3" - "@babel/plugin-transform-spread" "^7.23.3" - "@babel/plugin-transform-sticky-regex" "^7.23.3" - "@babel/plugin-transform-template-literals" "^7.23.3" - "@babel/plugin-transform-typeof-symbol" "^7.23.3" - "@babel/plugin-transform-unicode-escapes" "^7.23.3" - "@babel/plugin-transform-unicode-property-regex" "^7.23.3" - "@babel/plugin-transform-unicode-regex" "^7.23.3" - "@babel/plugin-transform-unicode-sets-regex" "^7.23.3" + "@babel/plugin-transform-new-target" "^7.24.1" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.24.1" + "@babel/plugin-transform-numeric-separator" "^7.24.1" + "@babel/plugin-transform-object-rest-spread" "^7.24.1" + "@babel/plugin-transform-object-super" "^7.24.1" + "@babel/plugin-transform-optional-catch-binding" "^7.24.1" + "@babel/plugin-transform-optional-chaining" "^7.24.1" + "@babel/plugin-transform-parameters" "^7.24.1" + "@babel/plugin-transform-private-methods" "^7.24.1" + "@babel/plugin-transform-private-property-in-object" "^7.24.1" + "@babel/plugin-transform-property-literals" "^7.24.1" + "@babel/plugin-transform-regenerator" "^7.24.1" + "@babel/plugin-transform-reserved-words" "^7.24.1" + "@babel/plugin-transform-shorthand-properties" "^7.24.1" + "@babel/plugin-transform-spread" "^7.24.1" + "@babel/plugin-transform-sticky-regex" "^7.24.1" + "@babel/plugin-transform-template-literals" "^7.24.1" + "@babel/plugin-transform-typeof-symbol" "^7.24.1" + "@babel/plugin-transform-unicode-escapes" "^7.24.1" + "@babel/plugin-transform-unicode-property-regex" "^7.24.1" + "@babel/plugin-transform-unicode-regex" "^7.24.1" + "@babel/plugin-transform-unicode-sets-regex" "^7.24.1" "@babel/preset-modules" "0.1.6-no-external-plugins" - babel-plugin-polyfill-corejs2 "^0.4.8" - babel-plugin-polyfill-corejs3 "^0.9.0" - babel-plugin-polyfill-regenerator "^0.5.5" + babel-plugin-polyfill-corejs2 "^0.4.10" + babel-plugin-polyfill-corejs3 "^0.10.1" + babel-plugin-polyfill-regenerator "^0.6.1" core-js-compat "^3.31.0" semver "^6.3.1" @@ -1169,15 +1205,15 @@ esutils "^2.0.2" "@babel/preset-typescript@^7.12.7": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.23.3.tgz#14534b34ed5b6d435aa05f1ae1c5e7adcc01d913" - integrity sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ== + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.24.1.tgz#89bdf13a3149a17b3b2a2c9c62547f06db8845ec" + integrity sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-option" "^7.22.15" - "@babel/plugin-syntax-jsx" "^7.23.3" - "@babel/plugin-transform-modules-commonjs" "^7.23.3" - "@babel/plugin-transform-typescript" "^7.23.3" + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-validator-option" "^7.23.5" + "@babel/plugin-syntax-jsx" "^7.24.1" + "@babel/plugin-transform-modules-commonjs" "^7.24.1" + "@babel/plugin-transform-typescript" "^7.24.1" "@babel/register@^7.12.10": version "7.23.7" @@ -1196,9 +1232,9 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.0.tgz#584c450063ffda59697021430cb47101b085951e" - integrity sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw== + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.1.tgz#431f9a794d173b53720e69a6464abc6f0e2a5c57" + integrity sha512-+BIznRzyqBf+2wCTxcKE3wDjfGeCoVE61KSHGpkzqrLi8qxqFwBeUFyId2cxkTmm55fzDGnm0+yCxaxygrLUnQ== dependencies: regenerator-runtime "^0.14.0" @@ -1236,18 +1272,18 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/traverse@^7.24.0": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.0.tgz#4a408fbf364ff73135c714a2ab46a5eab2831b1e" - integrity sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw== +"@babel/traverse@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.1.tgz#d65c36ac9dd17282175d1e4a3c49d5b7988f530c" + integrity sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ== dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" + "@babel/code-frame" "^7.24.1" + "@babel/generator" "^7.24.1" "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-function-name" "^7.23.0" "@babel/helper-hoist-variables" "^7.22.5" "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.24.0" + "@babel/parser" "^7.24.1" "@babel/types" "^7.24.0" debug "^4.3.1" globals "^11.1.0" @@ -1261,7 +1297,7 @@ "@babel/helper-validator-identifier" "^7.22.15" to-fast-properties "^2.0.0" -"@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.24.0", "@babel/types@^7.4.4": +"@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.4.4": version "7.24.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf" integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w== @@ -1665,7 +1701,7 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.24": +"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": version "0.3.25" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== @@ -2414,29 +2450,29 @@ babel-plugin-jest-hoist@^29.6.3: "@types/babel__core" "^7.1.14" "@types/babel__traverse" "^7.0.6" -babel-plugin-polyfill-corejs2@^0.4.8: - version "0.4.8" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.8.tgz#dbcc3c8ca758a290d47c3c6a490d59429b0d2269" - integrity sha512-OtIuQfafSzpo/LhnJaykc0R/MMnuLSSVjVYy9mHArIZ9qTCSZ6TpWCuEKZYVoN//t8HqBNScHrOtCrIK5IaGLg== +babel-plugin-polyfill-corejs2@^0.4.10: + version "0.4.10" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.10.tgz#276f41710b03a64f6467433cab72cbc2653c38b1" + integrity sha512-rpIuu//y5OX6jVU+a5BCn1R5RSZYWAl2Nar76iwaOdycqb6JPxediskWFMMl7stfwNJR4b7eiQvh5fB5TEQJTQ== dependencies: "@babel/compat-data" "^7.22.6" - "@babel/helper-define-polyfill-provider" "^0.5.0" + "@babel/helper-define-polyfill-provider" "^0.6.1" semver "^6.3.1" -babel-plugin-polyfill-corejs3@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.9.0.tgz#9eea32349d94556c2ad3ab9b82ebb27d4bf04a81" - integrity sha512-7nZPG1uzK2Ymhy/NbaOWTg3uibM2BmGASS4vHS4szRZAIR8R6GwA/xAujpdrXU5iyklrimWnLWU+BLF9suPTqg== +babel-plugin-polyfill-corejs3@^0.10.1: + version "0.10.1" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.1.tgz#cd8750e0b7da30ec2f66007b6151792f02e1138e" + integrity sha512-XiFei6VGwM4ii6nKC1VCenGD8Z4bjiNYcrdkM8oqM3pbuemmyb8biMgrDX1ZHSbIuMLXatM6JJ/StPYIuTl6MQ== dependencies: - "@babel/helper-define-polyfill-provider" "^0.5.0" - core-js-compat "^3.34.0" + "@babel/helper-define-polyfill-provider" "^0.6.1" + core-js-compat "^3.36.0" -babel-plugin-polyfill-regenerator@^0.5.5: - version "0.5.5" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.5.tgz#8b0c8fc6434239e5d7b8a9d1f832bb2b0310f06a" - integrity sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg== +babel-plugin-polyfill-regenerator@^0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.1.tgz#4f08ef4c62c7a7f66a35ed4c0d75e30506acc6be" + integrity sha512-JfTApdE++cgcTWjsiCQlLyFBMbTUft9ja17saCc93lgV33h4tuCVj7tlvu//qpLwaG+3yEz7/KhahGrUMkVq9g== dependencies: - "@babel/helper-define-polyfill-provider" "^0.5.0" + "@babel/helper-define-polyfill-provider" "^0.6.1" babel-preset-current-node-syntax@^1.0.0: version "1.0.1" @@ -2482,9 +2518,9 @@ base-x@^4.0.0: integrity sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw== binary-extensions@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" - integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + version "2.3.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" + integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== brace-expansion@^1.1.7: version "1.1.11" @@ -2518,7 +2554,7 @@ browserslist@^4.21.9: node-releases "^2.0.14" update-browserslist-db "^1.0.13" -browserslist@^4.22.2, browserslist@^4.22.3: +browserslist@^4.22.2, browserslist@^4.22.3, browserslist@^4.23.0: version "4.23.0" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== @@ -2582,9 +2618,9 @@ caniuse-lite@^1.0.30001565: integrity sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q== caniuse-lite@^1.0.30001587: - version "1.0.30001594" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001594.tgz#bea552414cd52c2d0c985ed9206314a696e685f5" - integrity sha512-VblSX6nYqyJVs8DKFMldE2IVCJjZ225LW00ydtUWwh5hk9IfkTOffO6r8gJNsH0qqqeAF8KrbMYA2VEwTlGW5g== + version "1.0.30001599" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001599.tgz#571cf4f3f1506df9bf41fcbb6d10d5d017817bce" + integrity sha512-LRAQHZ4yT1+f9LemSMeqdMpMxZcc4RMWdj4tiFe3G8tNkWK+E58g+/tzotb5cU6TbcVJLr4fySiAW7XmxQvZQA== chalk@5.2.0: version "5.2.0" @@ -2619,9 +2655,9 @@ char-regex@^1.0.2: integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== chokidar@^3.4.0: - version "3.5.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" - integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== + version "3.6.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== dependencies: anymatch "~3.1.2" braces "~3.0.2" @@ -2774,7 +2810,14 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -core-js-compat@^3.31.0, core-js-compat@^3.34.0: +core-js-compat@^3.31.0, core-js-compat@^3.36.0: + version "3.36.1" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.36.1.tgz#1818695d72c99c25d621dca94e6883e190cea3c8" + integrity sha512-Dk997v9ZCt3X/npqzyGdTlq6t7lDBhZwGvV94PKzDArjp7BTRm7WlDAXYd/OWdeFHO8OChQYRJNJvUCqCbrtKA== + dependencies: + browserslist "^4.23.0" + +core-js-compat@^3.34.0: version "3.36.0" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.36.0.tgz#087679119bc2fdbdefad0d45d8e5d307d45ba190" integrity sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw== @@ -2955,9 +2998,9 @@ electron-to-chromium@^1.4.601: integrity sha512-2yszojF7vIZ68adIOvzV4bku8OZad9w5H9xF3ZAMZjPuOjBarlflUkjN6DggdV+L71WZuKUfKUhov/34+G5QHg== electron-to-chromium@^1.4.668: - version "1.4.692" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.692.tgz#82139d20585a4b2318a02066af7593a3e6bec993" - integrity sha512-d5rZRka9n2Y3MkWRN74IoAsxR0HK3yaAt7T50e3iT9VZmCCQDT3geXUO5ZRMhDToa1pkCeQXuNo+0g+NfDOVPA== + version "1.4.710" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.710.tgz#d0ec4ea8a97df4c5eaeb8c69d45bf81f248b3855" + integrity sha512-w+9yAVHoHhysCa+gln7AzbO9CdjFcL/wN/5dd+XW/Msl2d/4+WisEaCF1nty0xbAKaxdaJfgLB2296U7zZB7BA== emittery@^0.13.1: version "0.13.1" @@ -3791,9 +3834,9 @@ has@^1.0.3: integrity sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ== hasown@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.1.tgz#26f48f039de2c0f8d3356c223fb8d50253519faa" - integrity sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA== + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== dependencies: function-bind "^1.1.2" From 887d8a766321cde2bac9a5ae1118647bed042582 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 19 Mar 2024 17:25:31 +0000 Subject: [PATCH 128/595] Update dependency typescript to v5.4.2 (#4123) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 461e5680287..4c24eeb51f9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6240,9 +6240,9 @@ typedoc@^0.25.10: shiki "^0.14.7" typescript@^5.3.3: - version "5.3.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.3.tgz#b3ce6ba258e72e6305ba66f5c9b452aaee3ffe37" - integrity sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw== + version "5.4.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.2.tgz#0ae9cebcfae970718474fe0da2c090cad6577372" + integrity sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ== unbox-primitive@^1.0.2: version "1.0.2" From 7884c22e41f7a1e46f9106b674c54490f0b3d929 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 19 Mar 2024 17:57:33 +0000 Subject: [PATCH 129/595] Fix permissions for deploying docs to github pages (#4122) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index dc155b6cedf..7cf7044b280 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -61,6 +61,11 @@ jobs: url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest needs: docs + # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages + permissions: + contents: read + pages: write + id-token: write steps: - name: Deploy to GitHub Pages id: deployment From afc3c6213b4f9aa80c54782bd6863d80a86156ef Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 20 Mar 2024 11:14:25 +0000 Subject: [PATCH 130/595] Fix bugs with the first reply to a thread (#4104) * WIP fix for bugs first-thread-reply bugs * Add re-emitter before we start adding events, as per comment * Add test for notification bug * Test for the bug that caused the dot to be the wrong colour * Add comment * elaborate * Fix outdated comment * Also fix this comment * Fix another comment * Fix typo Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Clarify comment * More comment * so much comment also reformat (the bit that's actually added is s/it/this.addEvents/) * The comments * Maybe make comment clearer. * Add comment about potential race --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- spec/unit/room.spec.ts | 48 +++++++++++++++++++---- src/models/room.ts | 16 ++++---- src/models/thread.ts | 86 ++++++++++++++++++++++++++---------------- 3 files changed, 103 insertions(+), 47 deletions(-) diff --git a/spec/unit/room.spec.ts b/spec/unit/room.spec.ts index 93b6ed47e0b..36d9d087753 100644 --- a/spec/unit/room.spec.ts +++ b/spec/unit/room.spec.ts @@ -2831,11 +2831,41 @@ describe("Room", function () { // XXX: If we add the relation to the thread response before the thread finishes fetching via /relations // then the test will fail await emitPromise(room, ThreadEvent.Update); - await emitPromise(room, ThreadEvent.Update); await Promise.all([emitPromise(room, ThreadEvent.Update), room.addLiveEvents([threadResponseEdit])]); expect(thread.replyToEvent!.getContent().body).toBe(threadResponseEdit.getContent()["m.new_content"].body); }); + it("emits event for the first event added to a thread", async () => { + room.client.supportsThreads = () => true; + Thread.setServerSideSupport(FeatureSupport.Stable); + + const threadRoot = mkMessage(); + const threadResponse1 = mkThreadResponse(threadRoot); + + await room.addLiveEvents([threadRoot]); + + const onEvent = jest.fn(); + room.on(RoomEvent.Timeline, onEvent); + + await room.addLiveEvents([threadResponse1]); + + expect(onEvent).toHaveBeenCalled(); + }); + + it("contains the events added as soon as it's created", async () => { + room.client.supportsThreads = () => true; + Thread.setServerSideSupport(FeatureSupport.Stable); + + const threadRoot = mkMessage(); + const threadResponse1 = mkThreadResponse(threadRoot); + + const newThreadEventPromise = emitPromise(room, ThreadEvent.New); + await room.addLiveEvents([threadRoot, threadResponse1]); + const thread = await newThreadEventPromise; + + expect(thread.timeline).toContain(threadResponse1); + }); + it("Redactions to thread responses decrement the length", async () => { room.client.supportsThreads = () => true; Thread.setServerSideSupport(FeatureSupport.Stable); @@ -2864,7 +2894,6 @@ describe("Room", function () { let prom = emitPromise(room, ThreadEvent.New); await room.addLiveEvents([threadRoot, threadResponse1, threadResponse2]); const thread = await prom; - await emitPromise(room, ThreadEvent.Update); expect(thread).toHaveLength(2); expect(thread.replyToEvent.getId()).toBe(threadResponse2.getId()); @@ -2929,6 +2958,10 @@ describe("Room", function () { }, }); + room.client.fetchRelations = jest.fn().mockResolvedValue({ + chunk: [threadResponse2Reaction.event, threadResponse2.event, threadResponse1.event], + }); + const prom = emitPromise(room, ThreadEvent.New); await room.addLiveEvents([threadRoot, threadResponse1, threadResponse2, threadResponse2Reaction]); const thread = await prom; @@ -2969,18 +3002,20 @@ describe("Room", function () { }, }); - let prom = emitPromise(room, ThreadEvent.New); + const prom = emitPromise(room, ThreadEvent.New); await room.addLiveEvents([threadRoot, threadResponse1, threadResponse2, threadResponse2Reaction]); const thread = await prom; - await emitPromise(room, ThreadEvent.Update); expect(thread).toHaveLength(2); expect(thread.replyToEvent.getId()).toBe(threadResponse2.getId()); - prom = emitPromise(room, ThreadEvent.Update); const threadRootRedaction = mkRedaction(threadRoot); await room.addLiveEvents([threadRootRedaction]); - await prom; + + // We can't wait for a thread update here because there shouldn't be one (which is + // what we're asserting). Flush any promises to try to get more certainty that an + // update is not happening some time after the event is added. + await flushPromises(); expect(thread).toHaveLength(2); }); @@ -3058,7 +3093,6 @@ describe("Room", function () { await emitPromise(room, ThreadEvent.Update); const threadResponse2Redaction = mkRedaction(threadResponse2); - await emitPromise(room, ThreadEvent.Update); await room.addLiveEvents([threadResponse2Redaction]); expect(thread).toHaveLength(1); expect(thread.replyToEvent!.getId()).toBe(threadResponse1.getId()); diff --git a/src/models/room.ts b/src/models/room.ts index c38a8dffd34..35629313836 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -2345,6 +2345,15 @@ export class Room extends ReadReceipt { receipts: this.cachedThreadReadReceipts.get(threadId) ?? [], }); + // Add the re-emitter before we start adding events to the thread so we don't miss events + this.reEmitter.reEmit(thread, [ + ThreadEvent.Delete, + ThreadEvent.Update, + ThreadEvent.NewReply, + RoomEvent.Timeline, + RoomEvent.TimelineReset, + ]); + // All read receipts should now come down from sync, we do not need to keep // a reference to the cached receipts anymore. this.cachedThreadReadReceipts.delete(threadId); @@ -2360,13 +2369,6 @@ export class Room extends ReadReceipt { // and pass the event through this. thread.addEvents(events, false); - this.reEmitter.reEmit(thread, [ - ThreadEvent.Delete, - ThreadEvent.Update, - ThreadEvent.NewReply, - RoomEvent.Timeline, - RoomEvent.TimelineReset, - ]); const isNewer = this.lastThread?.rootEvent && rootEvent?.localTimestamp && diff --git a/src/models/thread.ts b/src/models/thread.ts index 56250afde92..dea4f695c14 100644 --- a/src/models/thread.ts +++ b/src/models/thread.ts @@ -105,7 +105,7 @@ export class Thread extends ReadReceipt | undefined; /** * An array of events to add to the timeline once the thread has been initialised @@ -377,20 +378,20 @@ export class Thread extends ReadReceipt Date: Wed, 20 Mar 2024 14:27:27 +0000 Subject: [PATCH 131/595] Improve types for `sendStateEvent` (#4105) --- spec/unit/embedded.spec.ts | 8 ++ spec/unit/matrix-client.spec.ts | 23 ++--- src/@types/common.ts | 5 ++ src/@types/event.ts | 68 +++++++++++++++ src/@types/partials.ts | 19 ++--- src/@types/state_events.ts | 144 ++++++++++++++++++++++++++++++++ src/client.ts | 34 +++++--- src/models/MSC3089Branch.ts | 7 ++ src/models/MSC3089TreeSpace.ts | 13 +-- src/models/invites-ignorer.ts | 13 ++- src/types.ts | 2 + src/webrtc/groupCall.ts | 7 ++ 12 files changed, 301 insertions(+), 42 deletions(-) create mode 100644 src/@types/state_events.ts diff --git a/spec/unit/embedded.spec.ts b/spec/unit/embedded.spec.ts index e1e6f0513a1..b42acfff1df 100644 --- a/spec/unit/embedded.spec.ts +++ b/spec/unit/embedded.spec.ts @@ -75,6 +75,14 @@ class MockWidgetApi extends EventEmitter { public transport = { reply: jest.fn() }; } +declare module "../../src/types" { + interface StateEvents { + "org.example.foo": { + hello: string; + }; + } +} + describe("RoomWidgetClient", () => { let widgetApi: MockedObject; let client: MatrixClient; diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index f80531f86bb..c87ab3177f3 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -38,30 +38,31 @@ import * as testUtils from "../test-utils/test-utils"; import { makeBeaconInfoContent } from "../../src/content-helpers"; import { M_BEACON_INFO } from "../../src/@types/beacon"; import { - ContentHelpers, ClientPrefix, + ConditionKind, + ContentHelpers, Direction, EventTimeline, + EventTimelineSet, + getHttpUriForMxc, ICreateRoomOpts, + IPushRule, IRequestOpts, MatrixError, MatrixHttpApi, MatrixScheduler, Method, - Room, - EventTimelineSet, PushRuleActionName, - TweakName, + Room, RuleId, - IPushRule, - ConditionKind, - getHttpUriForMxc, + TweakName, } from "../../src"; import { supportsMatrixCall } from "../../src/webrtc/call"; import { makeBeaconEvent } from "../test-utils/beacon"; import { IGNORE_INVITES_ACCOUNT_EVENT_KEY, POLICIES_ACCOUNT_EVENT_TYPE, + PolicyRecommendation, PolicyScope, } from "../../src/models/invites-ignorer"; import { IOlmDevice } from "../../src/crypto/algorithms/megolm"; @@ -2082,10 +2083,10 @@ describe("MatrixClient", function () { await client.ignoredInvites.addSource(NEW_SOURCE_ROOM_ID); // Add a rule in the new source room. - await client.sendStateEvent(NEW_SOURCE_ROOM_ID, PolicyScope.User, { + await client.sendStateEvent(NEW_SOURCE_ROOM_ID, EventType.PolicyRuleUser, { entity: "*:example.org", reason: "just a test", - recommendation: "m.ban", + recommendation: PolicyRecommendation.Ban, }); // We should reject this invite. @@ -2172,8 +2173,8 @@ describe("MatrixClient", function () { // Check where it shows up. const targetRoomId = ignoreInvites2.target; const targetRoom = client.getRoom(targetRoomId) as WrappedRoom; - expect(targetRoom._state.get(PolicyScope.User)[eventId]).toBeTruthy(); - expect(newSourceRoom._state.get(PolicyScope.User)?.[eventId]).toBeFalsy(); + expect(targetRoom._state.get(EventType.PolicyRuleUser)[eventId]).toBeTruthy(); + expect(newSourceRoom._state.get(EventType.PolicyRuleUser)?.[eventId]).toBeFalsy(); }); }); diff --git a/src/@types/common.ts b/src/@types/common.ts index 77b856faf93..fc8e7af7328 100644 --- a/src/@types/common.ts +++ b/src/@types/common.ts @@ -15,3 +15,8 @@ limitations under the License. */ export type NonEmptyArray = [T, ...T[]]; + +// Based on https://stackoverflow.com/a/53229857/3532235 +export type Without = { [P in Exclude]?: never }; +export type XOR = T | U extends object ? (Without & U) | (Without & T) : T | U; +export type Writeable = { -readonly [P in keyof T]: T[P] }; diff --git a/src/@types/event.ts b/src/@types/event.ts index caa87f9f82e..a6dafcfa1b9 100644 --- a/src/@types/event.ts +++ b/src/@types/event.ts @@ -15,6 +15,34 @@ limitations under the License. */ import { UnstableValue } from "../NamespacedValue"; +import { + PolicyRuleEventContent, + RoomAvatarEventContent, + RoomCanonicalAliasEventContent, + RoomCreateEventContent, + RoomEncryptionEventContent, + RoomGuestAccessEventContent, + RoomHistoryVisibilityEventContent, + RoomJoinRulesEventContent, + RoomMemberEventContent, + RoomNameEventContent, + RoomPinnedEventsEventContent, + RoomPowerLevelsEventContent, + RoomServerAclEventContent, + RoomThirdPartyInviteEventContent, + RoomTombstoneEventContent, + RoomTopicEventContent, + SpaceChildEventContent, + SpaceParentEventContent, +} from "./state_events"; +import { + ExperimentalGroupCallRoomMemberState, + IGroupCallRoomMemberState, + IGroupCallRoomState, +} from "../webrtc/groupCall"; +import { MSC3089EventContent } from "../models/MSC3089Branch"; +import { M_BEACON_INFO, MBeaconInfoEventContent } from "./beacon"; +import { XOR } from "./common"; export enum EventType { // Room state events @@ -35,6 +63,11 @@ export enum EventType { RoomTombstone = "m.room.tombstone", RoomPredecessor = "org.matrix.msc3946.room_predecessor", + // Moderation policy lists + PolicyRuleUser = "m.policy.rule.user", + PolicyRuleRoom = "m.policy.rule.room", + PolicyRuleServer = "m.policy.rule.server", + SpaceChild = "m.space.child", SpaceParent = "m.space.parent", @@ -260,3 +293,38 @@ export interface IEncryptedFile { hashes: { [alg: string]: string }; v: string; } + +export interface StateEvents { + [EventType.RoomCanonicalAlias]: RoomCanonicalAliasEventContent; + [EventType.RoomCreate]: RoomCreateEventContent; + [EventType.RoomJoinRules]: RoomJoinRulesEventContent; + [EventType.RoomMember]: RoomMemberEventContent; + // XXX: Spec says this event has 3 required fields but kicking such an invitation requires sending `{}` + [EventType.RoomThirdPartyInvite]: XOR; + [EventType.RoomPowerLevels]: RoomPowerLevelsEventContent; + [EventType.RoomName]: RoomNameEventContent; + [EventType.RoomTopic]: RoomTopicEventContent; + [EventType.RoomAvatar]: RoomAvatarEventContent; + [EventType.RoomPinnedEvents]: RoomPinnedEventsEventContent; + [EventType.RoomEncryption]: RoomEncryptionEventContent; + [EventType.RoomHistoryVisibility]: RoomHistoryVisibilityEventContent; + [EventType.RoomGuestAccess]: RoomGuestAccessEventContent; + [EventType.RoomServerAcl]: RoomServerAclEventContent; + [EventType.RoomTombstone]: RoomTombstoneEventContent; + [EventType.SpaceChild]: SpaceChildEventContent; + [EventType.SpaceParent]: SpaceParentEventContent; + + [EventType.PolicyRuleUser]: XOR; + [EventType.PolicyRuleRoom]: XOR; + [EventType.PolicyRuleServer]: XOR; + + // MSC3401 + [EventType.GroupCallPrefix]: IGroupCallRoomState; + [EventType.GroupCallMemberPrefix]: XOR; + + // MSC3089 + [UNSTABLE_MSC3089_BRANCH.name]: MSC3089EventContent; + + // MSC3672 + [M_BEACON_INFO.name]: MBeaconInfoEventContent; +} diff --git a/src/@types/partials.ts b/src/@types/partials.ts index 49f92f32759..6aaea79963e 100644 --- a/src/@types/partials.ts +++ b/src/@types/partials.ts @@ -14,19 +14,12 @@ See the License for the specific language governing permissions and limitations under the License. */ -export interface IImageInfo { - size?: number; - mimetype?: string; - thumbnail_info?: { - // eslint-disable-line camelcase - w?: number; - h?: number; - size?: number; - mimetype?: string; - }; - w?: number; - h?: number; -} +import { ImageInfo } from "./media"; + +/** + * @deprecated use {@link ImageInfo} instead. + */ +export type IImageInfo = ImageInfo; export enum Visibility { Public = "public", diff --git a/src/@types/state_events.ts b/src/@types/state_events.ts new file mode 100644 index 00000000000..0e077a9e47f --- /dev/null +++ b/src/@types/state_events.ts @@ -0,0 +1,144 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { RoomType } from "./event"; +import { GuestAccess, HistoryVisibility, RestrictedAllowType } from "./partials"; +import { ImageInfo } from "./media"; +import { PolicyRecommendation } from "../models/invites-ignorer"; + +export interface RoomCanonicalAliasEventContent { + alias?: string; + alt_aliases?: string[]; +} + +export interface RoomCreateEventContent { + "creator"?: string; + "m.federate"?: boolean; + "predecessor"?: { + event_id: string; + room_id: string; + }; + "room_version"?: string; + "type"?: RoomType; +} + +export interface RoomJoinRulesEventContent { + allow?: { + room_id: string; + type: RestrictedAllowType; + }[]; +} + +export interface RoomMemberEventContent { + avatar_url?: string; + displayname?: string; + is_direct?: boolean; + join_authorised_via_users_server?: string; + membership: "invite" | "join" | "knock" | "leave" | "ban"; + reason?: string; + third_party_invite?: { + display_name: string; + signed: { + mxid: string; + token: string; + ts: number; + }; + }; +} + +export interface RoomThirdPartyInviteEventContent { + display_name: string; + key_validity_url: string; + public_key: string; + public_keys: { + key_validity_url?: string; + public_key: string; + }[]; +} + +export interface RoomPowerLevelsEventContent { + ban?: number; + events?: { [eventType: string]: number }; + events_default?: number; + invite?: number; + kick?: number; + notifications?: { + room?: number; + }; + redact?: number; + state_default?: number; + users?: { [userId: string]: number }; + users_default?: number; +} + +export interface RoomNameEventContent { + name: string; +} + +export interface RoomTopicEventContent { + topic: string; +} + +export interface RoomAvatarEventContent { + url?: string; + info?: ImageInfo; +} + +export interface RoomPinnedEventsEventContent { + pinned: string[]; +} + +export interface RoomEncryptionEventContent { + algorithm: "m.megolm.v1.aes-sha2"; + rotation_period_ms?: number; + rotation_period_msgs?: number; +} + +export interface RoomHistoryVisibilityEventContent { + history_visibility: HistoryVisibility; +} + +export interface RoomGuestAccessEventContent { + guest_access: GuestAccess; +} + +export interface RoomServerAclEventContent { + allow?: string[]; + allow_ip_literals?: boolean; + deny?: string[]; +} + +export interface RoomTombstoneEventContent { + body: string; + replacement_room: string; +} + +export interface SpaceChildEventContent { + order?: string; + suggested?: boolean; + via?: string[]; +} + +export interface SpaceParentEventContent { + canonical?: boolean; + via?: string[]; +} + +export interface PolicyRuleEventContent { + entity: string; + reason: string; + recommendation: PolicyRecommendation; +} diff --git a/src/client.ts b/src/client.ts index 56ec1030cd6..0233749ae8c 100644 --- a/src/client.ts +++ b/src/client.ts @@ -35,14 +35,14 @@ import { import { StubStore } from "./store/stub"; import { CallEvent, CallEventHandlerMap, createNewMatrixCall, MatrixCall, supportsMatrixCall } from "./webrtc/call"; import { Filter, IFilterDefinition, IRoomEventFilter } from "./filter"; -import { CallEventHandlerEvent, CallEventHandler, CallEventHandlerEventHandlerMap } from "./webrtc/callEventHandler"; +import { CallEventHandler, CallEventHandlerEvent, CallEventHandlerEventHandlerMap } from "./webrtc/callEventHandler"; import { GroupCallEventHandler, GroupCallEventHandlerEvent, GroupCallEventHandlerEventHandlerMap, } from "./webrtc/groupCallEventHandler"; import * as utils from "./utils"; -import { replaceParam, QueryDict, sleep, noUnsafeEventProps, safeSet } from "./utils"; +import { noUnsafeEventProps, QueryDict, replaceParam, safeSet, sleep } from "./utils"; import { Direction, EventTimeline } from "./models/event-timeline"; import { IActionsObject, PushProcessor } from "./pushprocessor"; import { AutoDiscovery, AutoDiscoveryAction } from "./autodiscovery"; @@ -64,12 +64,12 @@ import { IdentityPrefix, IHttpOpts, IRequestOpts, - TokenRefreshFunction, MatrixError, MatrixHttpApi, MediaPrefix, Method, retryNetworkOperation, + TokenRefreshFunction, Upload, UploadOpts, UploadResponse, @@ -145,11 +145,20 @@ import { RelationType, RoomCreateTypeField, RoomType, + StateEvents, UNSTABLE_MSC3088_ENABLED, UNSTABLE_MSC3088_PURPOSE, UNSTABLE_MSC3089_TREE_SUBTYPE, } from "./@types/event"; -import { IdServerUnbindResult, IImageInfo, JoinRule, Preset, Visibility } from "./@types/partials"; +import { + GuestAccess, + HistoryVisibility, + IdServerUnbindResult, + IImageInfo, + JoinRule, + Preset, + Visibility, +} from "./@types/partials"; import { EventMapper, eventMapperFor, MapperOpts } from "./event-mapper"; import { randomString } from "./randomstring"; import { BackupManager, IKeyBackup, IKeyBackupCheck, IPreparedKeyBackupVersion, TrustInfo } from "./crypto/backup"; @@ -6704,7 +6713,7 @@ export class MatrixClient extends TypedEventEmitter( roomId: string, - eventType: string, - content: IContent, + eventType: K, + content: StateEvents[K], stateKey = "", opts: IRequestOpts = {}, ): Promise { @@ -8406,7 +8420,7 @@ export class MatrixClient extends TypedEventEmitter() || {}; const viewLevel = pls["users_default"] || 0; const editLevel = pls["events_default"] || 50; const adminLevel = pls["events"]?.[EventType.RoomPowerLevels] || 100; @@ -234,7 +235,7 @@ export class MSC3089TreeSpace { this.roomId, EventType.SpaceChild, { - via: [this.client.getDomain()], + via: [this.client.getDomain()!], }, directory.roomId, ); @@ -243,7 +244,7 @@ export class MSC3089TreeSpace { directory.roomId, EventType.SpaceParent, { - via: [this.client.getDomain()], + via: [this.client.getDomain()!], }, this.roomId, ); @@ -450,7 +451,9 @@ export class MSC3089TreeSpace { // XXX: We should be creating gaps to avoid conflicts lastOrder = lastOrder ? nextString(lastOrder) : DEFAULT_ALPHABET[0]; const currentChild = parentRoom.currentState.getStateEvents(EventType.SpaceChild, target.roomId); - const content = currentChild?.getContent() ?? { via: [this.client.getDomain()] }; + const content = currentChild?.getContent() ?? { + via: [this.client.getDomain()!], + }; await this.client.sendStateEvent( parentRoom.roomId, EventType.SpaceChild, @@ -473,7 +476,7 @@ export class MSC3089TreeSpace { // Now we can finally update our own order state const currentChild = parentRoom.currentState.getStateEvents(EventType.SpaceChild, this.roomId); - const content = currentChild?.getContent() ?? { via: [this.client.getDomain()] }; + const content = currentChild?.getContent() ?? { via: [this.client.getDomain()!] }; await this.client.sendStateEvent( parentRoom.roomId, EventType.SpaceChild, diff --git a/src/models/invites-ignorer.ts b/src/models/invites-ignorer.ts index 026c4a2bbad..a76d6a83a57 100644 --- a/src/models/invites-ignorer.ts +++ b/src/models/invites-ignorer.ts @@ -22,6 +22,7 @@ import { EventTimeline } from "./event-timeline"; import { Preset } from "../@types/partials"; import { globToRegexp } from "../utils"; import { Room } from "./room"; +import { EventType, StateEvents } from "../@types/event"; /// The event type storing the user's individual policies. /// @@ -37,7 +38,7 @@ export const IGNORE_INVITES_ACCOUNT_EVENT_KEY = new UnstableValue( ); /// The types of recommendations understood. -enum PolicyRecommendation { +export enum PolicyRecommendation { Ban = "m.ban", } @@ -64,6 +65,12 @@ export enum PolicyScope { Server = "m.policy.server", } +const scopeToEventTypeMap: Record = { + [PolicyScope.User]: EventType.PolicyRuleUser, + [PolicyScope.Room]: EventType.PolicyRuleRoom, + [PolicyScope.Server]: EventType.PolicyRuleServer, +}; + /** * A container for ignored invites. * @@ -87,7 +94,7 @@ export class IgnoredInvites { */ public async addRule(scope: PolicyScope, entity: string, reason: string): Promise { const target = await this.getOrCreateTargetRoom(); - const response = await this.client.sendStateEvent(target.roomId, scope, { + const response = await this.client.sendStateEvent(target.roomId, scopeToEventTypeMap[scope], { entity, reason, recommendation: PolicyRecommendation.Ban, @@ -173,7 +180,7 @@ export class IgnoredInvites { { scope: PolicyScope.User, entities: [sender] }, { scope: PolicyScope.Server, entities: [senderServer, roomServer] }, ]) { - const events = state.getStateEvents(scope); + const events = state.getStateEvents(scopeToEventTypeMap[scope]); for (const event of events) { const content = event.getContent(); if (content?.recommendation != PolicyRecommendation.Ban) { diff --git a/src/types.ts b/src/types.ts index 1edb3979564..97a89002c99 100644 --- a/src/types.ts +++ b/src/types.ts @@ -23,3 +23,5 @@ limitations under the License. export type * from "./@types/media"; export * from "./@types/membership"; +export type * from "./@types/event"; +export type * from "./@types/state_events"; diff --git a/src/webrtc/groupCall.ts b/src/webrtc/groupCall.ts index e5711986894..a33f676b1b7 100644 --- a/src/webrtc/groupCall.ts +++ b/src/webrtc/groupCall.ts @@ -35,6 +35,7 @@ import { import { SummaryStatsReportGatherer } from "./stats/summaryStatsReportGatherer"; import { CallFeedStatsReporter } from "./stats/callFeedStatsReporter"; import { KnownMembership } from "../@types/membership"; +import { CallMembershipData } from "../matrixrtc/CallMembership"; export enum GroupCallIntent { Ring = "m.ring", @@ -167,6 +168,7 @@ export interface IGroupCallDataChannelOptions { export interface IGroupCallRoomState { "m.intent": GroupCallIntent; "m.type": GroupCallType; + "m.terminated"?: GroupCallTerminationReason; "io.element.ptt"?: boolean; // TODO: Specify data-channels "dataChannelsEnabled"?: boolean; @@ -196,6 +198,11 @@ export interface IGroupCallRoomMemberState { "m.calls": IGroupCallRoomMemberCallState[]; } +// XXX: this hasn't made it into the MSC yet +export interface ExperimentalGroupCallRoomMemberState { + memberships: CallMembershipData[]; +} + export enum GroupCallState { LocalCallFeedUninitialized = "local_call_feed_uninitialized", InitializingLocalCallFeed = "initializing_local_call_feed", From d5bb9e76008f218e5ad968ad68df0e93c6977b98 Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 20 Mar 2024 15:20:47 +0000 Subject: [PATCH 132/595] Move code for processing our own receipts to Room (#4109) * Move code for processing our own receipts to Room This is some code to process our own receipts and recalculate our notification counts. There was no reason for this to be in client. Room is still rather large, but at least it makes somewhat more sense there. Moving as a refactor before I start work on it. * Add test for the client-side e2e notifications code * simplify object literal --- spec/integ/matrix-client-syncing.spec.ts | 161 ++++++++++++++++------- src/client.ts | 49 ------- src/models/room.ts | 59 +++++++++ 3 files changed, 169 insertions(+), 100 deletions(-) diff --git a/spec/integ/matrix-client-syncing.spec.ts b/spec/integ/matrix-client-syncing.spec.ts index 0135eb152b8..cdd38886fe3 100644 --- a/spec/integ/matrix-client-syncing.spec.ts +++ b/spec/integ/matrix-client-syncing.spec.ts @@ -46,6 +46,7 @@ import * as utils from "../test-utils/test-utils"; import { TestClient } from "../TestClient"; import { emitPromise, mkEvent, mkMessage } from "../test-utils/test-utils"; import { THREAD_RELATION_TYPE } from "../../src/models/thread"; +import { IActionsObject } from "../../src/pushprocessor"; import { KnownMembership } from "../../src/@types/membership"; describe("MatrixClient syncing", () => { @@ -1733,64 +1734,122 @@ describe("MatrixClient syncing", () => { }); }); - it("should apply encrypted notification logic for events within the same sync blob", async () => { - const roomId = "!room123:server"; - const syncData = { - rooms: { - join: { - [roomId]: { - ephemeral: { - events: [], - }, - timeline: { - events: [ - utils.mkEvent({ - room: roomId, - event: true, - skey: "", - type: EventType.RoomEncryption, - content: {}, - }), - utils.mkMessage({ - room: roomId, - user: otherUserId, - msg: "hello", - }), - ], + describe("encrypted notification logic", () => { + let roomId: string; + let syncData: ISyncResponse; + + beforeEach(() => { + roomId = "!room123:server"; + syncData = { + rooms: { + join: { + [roomId]: { + ephemeral: { + events: [], + }, + timeline: { + events: [ + utils.mkEvent({ + room: roomId, + event: true, + skey: "", + type: EventType.RoomEncryption, + content: {}, + }), + utils.mkMessage({ + room: roomId, + user: otherUserId, + msg: "hello", + }), + ], + }, + state: { + events: [ + utils.mkMembership({ + room: roomId, + mship: KnownMembership.Join, + user: otherUserId, + }), + utils.mkMembership({ + room: roomId, + mship: KnownMembership.Join, + user: selfUserId, + }), + utils.mkEvent({ + type: "m.room.create", + room: roomId, + user: selfUserId, + content: {}, + }), + ], + }, }, - state: { - events: [ - utils.mkMembership({ - room: roomId, - mship: KnownMembership.Join, - user: otherUserId, - }), - utils.mkMembership({ - room: roomId, - mship: KnownMembership.Join, - user: selfUserId, - }), - utils.mkEvent({ - type: "m.room.create", - room: roomId, - user: selfUserId, - content: {}, - }), - ], + }, + }, + } as unknown as ISyncResponse; + }); + + it("should apply encrypted notification logic for events within the same sync blob", async () => { + httpBackend!.when("GET", "/sync").respond(200, syncData); + client!.startClient(); + + await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); + + const room = client!.getRoom(roomId)!; + expect(room).toBeInstanceOf(Room); + expect(room.getRoomUnreadNotificationCount(NotificationCountType.Total)).toBe(0); + }); + + it("should recalculate highlights on receipt for encrypted rooms", async () => { + const myUserId = client!.getUserId()!; + + const firstEventId = syncData.rooms.join[roomId].timeline.events[1].event_id; + + // add a receipt for the first event in the room (let's say the user has already read that one) + syncData.rooms.join[roomId].ephemeral.events = [ + { + content: { + [firstEventId]: { + "m.read": { + [myUserId]: { ts: 1 }, + }, }, }, + type: "m.receipt", }, - }, - } as unknown as ISyncResponse; + ]; + + // Now add a highlighting event after that receipt + const pingEvent = utils.mkMessage({ + room: roomId, + user: otherUserId, + msg: client?.getUserId() + " ping", + }) as IRoomEvent; + syncData.rooms.join[roomId].timeline.events.push(pingEvent); + + // fudge this to make it a highlight + client!.getPushActionsForEvent = (ev: MatrixEvent): IActionsObject | null => { + if (ev.getId() === pingEvent.event_id) { + return { + notify: true, + tweaks: { + highlight: true, + }, + }; + } + return null; + }; - httpBackend!.when("GET", "/sync").respond(200, syncData); - client!.startClient(); + httpBackend!.when("GET", "/sync").respond(200, syncData); + client!.startClient(); - await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); + await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); - const room = client!.getRoom(roomId)!; - expect(room).toBeInstanceOf(Room); - expect(room.getRoomUnreadNotificationCount(NotificationCountType.Total)).toBe(0); + const room = client!.getRoom(roomId)!; + expect(room).toBeInstanceOf(Room); + // the room should now have one highlight since our receipt was before the ping message + expect(room.getRoomUnreadNotificationCount(NotificationCountType.Highlight)).toBe(1); + }); }); }); diff --git a/src/client.ts b/src/client.ts index 0233749ae8c..f2da061d81d 100644 --- a/src/client.ts +++ b/src/client.ts @@ -1446,55 +1446,6 @@ export class MatrixClient extends TypedEventEmitter { - if (room?.hasEncryptionStateEvent()) { - // Figure out if we've read something or if it's just informational - const content = event.getContent(); - const isSelf = - Object.keys(content).filter((eid) => { - for (const [key, value] of Object.entries(content[eid])) { - if (!utils.isSupportedReceiptType(key)) continue; - if (!value) continue; - - if (Object.keys(value).includes(this.getUserId()!)) return true; - } - - return false; - }).length > 0; - - if (!isSelf) return; - - // Work backwards to determine how many events are unread. We also set - // a limit for how back we'll look to avoid spinning CPU for too long. - // If we hit the limit, we assume the count is unchanged. - const maxHistory = 20; - const events = room.getLiveTimeline().getEvents(); - - let highlightCount = 0; - - for (let i = events.length - 1; i >= 0; i--) { - if (i === events.length - maxHistory) return; // limit reached - - const event = events[i]; - - if (room.hasUserReadEvent(this.getUserId()!, event.getId()!)) { - // If the user has read the event, then the counting is done. - break; - } - - const pushActions = this.getPushActionsForEvent(event); - highlightCount += pushActions?.tweaks?.highlight ? 1 : 0; - } - - // Note: we don't need to handle 'total' notifications because the counts - // will come from the server. - room.setUnreadNotificationCount(NotificationCountType.Highlight, highlightCount); - } - }); - this.ignoredInvites = new IgnoredInvites(this); this._secretStorage = new ServerSideSecretStorageImpl(this, opts.cryptoCallbacks ?? {}); diff --git a/src/models/room.ts b/src/models/room.ts index 35629313836..8849df0cab1 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -68,6 +68,7 @@ import { ReadReceipt, synthesizeReceipt } from "./read-receipt"; import { isPollEvent, Poll, PollEvent } from "./poll"; import { RoomReceipts } from "./room-receipts"; import { compareEventOrdering } from "./compare-event-ordering"; +import * as utils from "../utils"; import { KnownMembership, Membership } from "../@types/membership"; // These constants are used as sane defaults when the homeserver doesn't support @@ -474,6 +475,10 @@ export class Room extends ReadReceipt { this.name = roomId; this.normalizedName = roomId; + // Listen to our own receipt event as a more modular way of processing our own + // receipts. No need to remove the listener: it's on ourself anyway. + this.on(RoomEvent.Receipt, this.onReceipt); + // all our per-room timeline sets. the first one is the unfiltered ones; // the subsequent ones are the filtered ones in no particular order. this.timelineSets = [new EventTimelineSet(this, opts)]; @@ -1306,6 +1311,60 @@ export class Room extends ReadReceipt { } } + private onReceipt(event: MatrixEvent): void { + if (this.hasEncryptionStateEvent()) { + this.clearNotificationsOnReceipt(event); + } + } + + private clearNotificationsOnReceipt(event: MatrixEvent): void { + // Like above, we have to listen for read receipts from ourselves in order to + // correctly handle notification counts on encrypted rooms. + // This fixes https://github.com/vector-im/element-web/issues/9421 + + // Figure out if we've read something or if it's just informational + const content = event.getContent(); + const isSelf = + Object.keys(content).filter((eid) => { + for (const [key, value] of Object.entries(content[eid])) { + if (!utils.isSupportedReceiptType(key)) continue; + if (!value) continue; + + if (Object.keys(value).includes(this.client.getUserId()!)) return true; + } + + return false; + }).length > 0; + + if (!isSelf) return; + + // Work backwards to determine how many events are unread. We also set + // a limit for how back we'll look to avoid spinning CPU for too long. + // If we hit the limit, we assume the count is unchanged. + const maxHistory = 20; + const events = this.getLiveTimeline().getEvents(); + + let highlightCount = 0; + + for (let i = events.length - 1; i >= 0; i--) { + if (i === events.length - maxHistory) return; // limit reached + + const event = events[i]; + + if (this.hasUserReadEvent(this.client.getUserId()!, event.getId()!)) { + // If the user has read the event, then the counting is done. + break; + } + + const pushActions = this.client.getPushActionsForEvent(event); + highlightCount += pushActions?.tweaks?.highlight ? 1 : 0; + } + + // Note: we don't need to handle 'total' notifications because the counts + // will come from the server. + this.setUnreadNotificationCount(NotificationCountType.Highlight, highlightCount); + } + /** * Returns whether there are any devices in the room that are unverified * From dc2d03dea5ad94cc3bb76eb58ece95ac12d41704 Mon Sep 17 00:00:00 2001 From: Ajay Bura <32841439+ajbura@users.noreply.github.com> Date: Thu, 21 Mar 2024 15:59:51 +0530 Subject: [PATCH 133/595] fix public rooms post request search params and body (#4110) --- src/client.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/client.ts b/src/client.ts index f2da061d81d..5e1459338ea 100644 --- a/src/client.ts +++ b/src/client.ts @@ -8457,11 +8457,17 @@ export class MatrixClient extends TypedEventEmitter { - const queryParams: QueryDict = { server, limit, since }; if (Object.keys(options).length === 0) { + const queryParams: QueryDict = { server, limit, since }; return this.http.authedRequest(Method.Get, "/publicRooms", queryParams); } else { - return this.http.authedRequest(Method.Post, "/publicRooms", queryParams, options); + const queryParams: QueryDict = { server }; + const body = { + limit, + since, + ...options, + }; + return this.http.authedRequest(Method.Post, "/publicRooms", queryParams, body); } } From e517d009bf797fa9eeed41b56d0cb2d2e66e96d5 Mon Sep 17 00:00:00 2001 From: David Baker Date: Thu, 21 Mar 2024 12:22:19 +0000 Subject: [PATCH 134/595] Extend logic for local notification processing to threads (#4111) * Move code for processing our own receipts to Room This is some code to process our own receipts and recalculate our notification counts. There was no reason for this to be in client. Room is still rather large, but at least it makes somewhat more sense there. Moving as a refactor before I start work on it. * Add test for the client-side e2e notifications code * Extend logic for local notification processing to threads There's collection of logic for for processing receipts and recomputing notifications for encrypted rooms, but we didn't do the same for threads. As a reasult, when I tried pulling some of the logic over in https://github.com/matrix-org/matrix-js-sdk/pull/4106 clearing notifications on threads just broke. This extends the logic of reprocessing local notifications when a receipt arrives to threads. Based on https://github.com/matrix-org/matrix-js-sdk/pull/4109 * simplify object literal * Add tests & null guard * Remove unused imports * Add another skipped test * Unused import * enable tests * Fix thread support nightmare * Try this way * Unused import * Comment the bear trap * expand comment --- spec/integ/matrix-client-syncing.spec.ts | 232 ++++++++++++++++++++++- src/@types/event.ts | 4 + src/models/room.ts | 92 ++++++--- src/models/thread.ts | 2 +- 4 files changed, 301 insertions(+), 29 deletions(-) diff --git a/spec/integ/matrix-client-syncing.spec.ts b/spec/integ/matrix-client-syncing.spec.ts index cdd38886fe3..dbf038d91c9 100644 --- a/spec/integ/matrix-client-syncing.spec.ts +++ b/spec/integ/matrix-client-syncing.spec.ts @@ -39,6 +39,7 @@ import { IndexedDBStore, RelationType, EventType, + MatrixEventEvent, } from "../../src"; import { ReceiptType } from "../../src/@types/read_receipts"; import { UNREAD_THREAD_NOTIFICATIONS } from "../../src/@types/sync"; @@ -1800,7 +1801,7 @@ describe("MatrixClient syncing", () => { expect(room.getRoomUnreadNotificationCount(NotificationCountType.Total)).toBe(0); }); - it("should recalculate highlights on receipt for encrypted rooms", async () => { + it("should recalculate highlights on unthreaded receipt for encrypted rooms", async () => { const myUserId = client!.getUserId()!; const firstEventId = syncData.rooms.join[roomId].timeline.events[1].event_id; @@ -1850,6 +1851,235 @@ describe("MatrixClient syncing", () => { // the room should now have one highlight since our receipt was before the ping message expect(room.getRoomUnreadNotificationCount(NotificationCountType.Highlight)).toBe(1); }); + + it("should recalculate highlights on main thread receipt for encrypted rooms", async () => { + const myUserId = client!.getUserId()!; + + const firstEventId = syncData.rooms.join[roomId].timeline.events[1].event_id; + + // add a receipt for the first event in the room (let's say the user has already read that one) + syncData.rooms.join[roomId].ephemeral.events = [ + { + content: { + [firstEventId]: { + "m.read": { + [myUserId]: { ts: 1, thread_id: "main" }, + }, + }, + }, + type: "m.receipt", + }, + ]; + + // Now add a highlighting event after that receipt + const pingEvent = utils.mkMessage({ + room: roomId, + user: otherUserId, + msg: client?.getUserId() + " ping", + }) as IRoomEvent; + syncData.rooms.join[roomId].timeline.events.push(pingEvent); + + // fudge this to make it a highlight + client!.getPushActionsForEvent = (ev: MatrixEvent): IActionsObject | null => { + if (ev.getId() === pingEvent.event_id) { + return { + notify: true, + tweaks: { + highlight: true, + }, + }; + } + return null; + }; + + httpBackend!.when("GET", "/sync").respond(200, syncData); + client!.startClient(); + + await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); + + const room = client!.getRoom(roomId)!; + expect(room).toBeInstanceOf(Room); + // the room should now have one highlight since our receipt was before the ping message + expect(room.getRoomUnreadNotificationCount(NotificationCountType.Highlight)).toBe(1); + }); + + describe("notification processing in threads", () => { + let threadEvent1: IRoomEvent; + let threadEvent2: IRoomEvent; + let firstEventId: string; + + beforeEach(() => { + firstEventId = syncData.rooms.join[roomId].timeline.events[1].event_id; + + // Add a threaded event off of the first event + threadEvent1 = utils.mkEvent({ + type: EventType.RoomMessage, + user: otherUserId, + room: roomId, + ts: 500, + content: { + "body": "first thread response", + "m.relates_to": { + "event_id": firstEventId, + "m.in_reply_to": { + event_id: firstEventId, + }, + "rel_type": "io.element.thread", + }, + }, + }) as IRoomEvent; + syncData.rooms.join[roomId].timeline.events.push(threadEvent1); + + // ...and another + threadEvent2 = utils.mkEvent({ + type: EventType.RoomMessage, + user: otherUserId, + room: roomId, + ts: 1500, + content: { + "body": "second thread response", + "m.relates_to": { + "event_id": firstEventId, + "m.in_reply_to": { + event_id: firstEventId, + }, + "rel_type": "io.element.thread", + }, + }, + }) as IRoomEvent; + syncData.rooms.join[roomId].timeline.events.push(threadEvent2); + + // fudge to make these highlights + client!.getPushActionsForEvent = (ev: MatrixEvent): IActionsObject | null => { + if ([threadEvent1.event_id, threadEvent2.event_id].includes(ev.getId()!)) { + return { + notify: true, + tweaks: { + highlight: true, + }, + }; + } + return null; + }; + }); + + it("checks threads with notifications on unthreaded receipts", async () => { + const myUserId = client!.getUserId()!; + + // add a receipt for a random, ficticious thread, otherwise the client will + // think that the thread is before any threaded receipts and ignore it. + syncData.rooms.join[roomId].ephemeral.events = [ + { + content: { + [firstEventId]: { + "m.read": { + [myUserId]: { ts: 1, thread_id: "some_other_thread" }, + }, + }, + }, + type: "m.receipt", + }, + ]; + + httpBackend!.when("GET", "/sync").respond(200, syncData); + client!.startClient({ threadSupport: true }); + + await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); + + const room = client!.getRoom(roomId)!; + + // pretend that the client has decrypted an event to trigger it to compute + // local notifications + client?.emit(MatrixEventEvent.Decrypted, room.findEventById(firstEventId)!); + client?.emit(MatrixEventEvent.Decrypted, room.findEventById(threadEvent1.event_id)!); + client?.emit(MatrixEventEvent.Decrypted, room.findEventById(threadEvent2.event_id)!); + + expect(room).toBeInstanceOf(Room); + + // we should now have one highlight: the unread message that pings + expect( + room.getThreadUnreadNotificationCount(firstEventId, NotificationCountType.Highlight), + ).toEqual(2); + + const syncData2 = { + rooms: { + join: { + [roomId]: { + ephemeral: { + events: [ + { + content: { + [firstEventId]: { + "m.read": { + [myUserId]: { ts: 1 }, + }, + }, + }, + type: "m.receipt", + }, + ], + }, + }, + }, + }, + } as unknown as ISyncResponse; + + httpBackend!.when("GET", "/sync").respond(200, syncData2); + + await Promise.all([httpBackend!.flush("/sync", 1), utils.syncPromise(client!)]); + + expect(room.getRoomUnreadNotificationCount(NotificationCountType.Highlight)).toBe(0); + }); + + it("should recalculate highlights on threaded receipt for encrypted rooms", async () => { + const myUserId = client!.getUserId()!; + + // add a receipt for the first message in the threadm leaving the second one unread + syncData.rooms.join[roomId].ephemeral.events = [ + { + content: { + [threadEvent1.event_id]: { + "m.read": { + [myUserId]: { ts: 1, thread_id: firstEventId }, + }, + }, + }, + type: "m.receipt", + }, + ]; + + // fudge to make both thread replies highlights + client!.getPushActionsForEvent = (ev: MatrixEvent): IActionsObject | null => { + if ([threadEvent1.event_id, threadEvent2.event_id].includes(ev.getId()!)) { + return { + notify: true, + tweaks: { + highlight: true, + }, + }; + } + return null; + }; + + httpBackend!.when("GET", "/sync").respond(200, syncData); + client!.startClient({ threadSupport: true }); + + await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); + + const room = client!.getRoom(roomId)!; + expect(room).toBeInstanceOf(Room); + + // pretend that the client has decrypted an event to trigger it to compute + // local notifications + client?.emit(MatrixEventEvent.Decrypted, room.findEventById(firstEventId)!); + + // the room should now have one highlight: the second thread message + + expect(room.getThreadUnreadNotificationCount(firstEventId, NotificationCountType.Highlight)).toBe( + 1, + ); + }); + }); }); }); diff --git a/src/@types/event.ts b/src/@types/event.ts index a6dafcfa1b9..6f11720a2dd 100644 --- a/src/@types/event.ts +++ b/src/@types/event.ts @@ -136,6 +136,10 @@ export enum RelationType { Annotation = "m.annotation", Replace = "m.replace", Reference = "m.reference", + + // Don't use this yet: it's only the stable version. The code still assumes we support the unstable prefix and, + // moreover, our tests currently use the unstable prefix. Use THREAD_RELATION_TYPE.name. + // Once we support *only* the stable prefix, THREAD_RELATION_TYPE can die and we can switch to this. Thread = "m.thread", } diff --git a/src/models/room.ts b/src/models/room.ts index 8849df0cab1..456c6ba54d5 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -1323,46 +1323,84 @@ export class Room extends ReadReceipt { // This fixes https://github.com/vector-im/element-web/issues/9421 // Figure out if we've read something or if it's just informational + // We need to work out what threads we've just recieved receipts for, so we + // know which ones to update. If we've received an unthreaded receipt, we'll + // need to update all threads. + let threadIds: string[] = []; + let hasUnthreadedReceipt = false; + const content = event.getContent(); - const isSelf = - Object.keys(content).filter((eid) => { - for (const [key, value] of Object.entries(content[eid])) { - if (!utils.isSupportedReceiptType(key)) continue; - if (!value) continue; - if (Object.keys(value).includes(this.client.getUserId()!)) return true; + for (const receiptGroup of Object.values(content)) { + for (const [receiptType, userReceipt] of Object.entries(receiptGroup)) { + if (!utils.isSupportedReceiptType(receiptType)) continue; + if (!userReceipt) continue; + + for (const [userId, singleReceipt] of Object.entries(userReceipt)) { + if (!singleReceipt || typeof singleReceipt !== "object") continue; + const typedSingleReceipt = singleReceipt as Record; + if (userId !== this.client.getUserId()) continue; + if (typedSingleReceipt.thread_id === undefined) { + hasUnthreadedReceipt = true; + } else if (typeof typedSingleReceipt.thread_id === "string") { + threadIds.push(typedSingleReceipt.thread_id); + } } + } + } - return false; - }).length > 0; + if (hasUnthreadedReceipt) { + // If we have an unthreaded receipt, we need to update any threads that have a notification + // in them (because we know the receipt can't go backwards so we don't need to check any with + // no notifications: the number can only decrease from a receipt). + threadIds = this.getThreads() + .filter( + (thread) => + this.getThreadUnreadNotificationCount(thread.id, NotificationCountType.Total) > 0 || + this.getThreadUnreadNotificationCount(thread.id, NotificationCountType.Highlight) > 0, + ) + .map((thread) => thread.id); + threadIds.push("main"); + } + + for (const threadId of threadIds) { + // Work backwards to determine how many events are unread. We also set + // a limit for how back we'll look to avoid spinning CPU for too long. + // If we hit the limit, we assume the count is unchanged. + const maxHistory = 20; + const timeline = threadId === "main" ? this.getLiveTimeline() : this.getThread(threadId)?.liveTimeline; + + if (!timeline) { + logger.warn(`Couldn't find timeline for thread ID ${threadId} in room ${this.roomId}`); + continue; + } - if (!isSelf) return; + const events = timeline.getEvents(); - // Work backwards to determine how many events are unread. We also set - // a limit for how back we'll look to avoid spinning CPU for too long. - // If we hit the limit, we assume the count is unchanged. - const maxHistory = 20; - const events = this.getLiveTimeline().getEvents(); + let highlightCount = 0; - let highlightCount = 0; + for (let i = events.length - 1; i >= 0; i--) { + if (i === events.length - maxHistory) return; // limit reached - for (let i = events.length - 1; i >= 0; i--) { - if (i === events.length - maxHistory) return; // limit reached + const event = events[i]; - const event = events[i]; + if (this.hasUserReadEvent(this.client.getUserId()!, event.getId()!)) { + // If the user has read the event, then the counting is done. + break; + } - if (this.hasUserReadEvent(this.client.getUserId()!, event.getId()!)) { - // If the user has read the event, then the counting is done. - break; + const pushActions = this.client.getPushActionsForEvent(event); + highlightCount += pushActions?.tweaks?.highlight ? 1 : 0; } - const pushActions = this.client.getPushActionsForEvent(event); - highlightCount += pushActions?.tweaks?.highlight ? 1 : 0; + // Note: we don't need to handle 'total' notifications because the counts + // will come from the server. + if (threadId === "main") { + this.setUnreadNotificationCount(NotificationCountType.Highlight, highlightCount); + } else { + this.setThreadUnreadNotificationCount(threadId, NotificationCountType.Highlight, highlightCount); + } } - - // Note: we don't need to handle 'total' notifications because the counts - // will come from the server. - this.setUnreadNotificationCount(NotificationCountType.Highlight, highlightCount); } /** diff --git a/src/models/thread.ts b/src/models/thread.ts index dea4f695c14..8baebba9a18 100644 --- a/src/models/thread.ts +++ b/src/models/thread.ts @@ -709,7 +709,7 @@ export class Thread extends ReadReceipt boolean = (ev): boolean => ev.isRelation(RelationType.Thread), + matches: (ev: MatrixEvent) => boolean = (ev): boolean => ev.isRelation(THREAD_RELATION_TYPE.name), ): MatrixEvent | null { for (let i = this.timeline.length - 1; i >= 0; i--) { const event = this.timeline[i]; From 4ba1341f8fcab473d0d2c342e5316cc3761c6079 Mon Sep 17 00:00:00 2001 From: David Baker Date: Thu, 21 Mar 2024 16:29:00 +0000 Subject: [PATCH 135/595] Fix highlights from threads disappearing on new messages (#4106) * Fix highlights from threads disappearing on new messages This changes interface of Room, so this is a BREAKING CHANGE. Correctly mirrors the logic we use for room notifications for thread notifications, ie. set only the total notifications count from the server if it's zero. I'm not delighted with this since it ends up with function on room whose contract is to do something frankly, deeply weird and unintuitive. However, this is the hack we use for room notifications and it, empirically, works well enough. To do better, we'd need much more complex logic to overlay notification counts for decrypted messages. Fixes https://github.com/element-hq/element-web/issues/25523 * Add tests for the special notification behaviour in syncing * Correctly copy the room logic for reseting notifications We were always ignoring the highlight count, even for encrypted rooms, which was broken because we don't do the local calculation for unencrypted rooms. --- spec/integ/matrix-client-syncing.spec.ts | 93 ++++++++++++++++++++++++ spec/unit/room.spec.ts | 48 ++++++++---- src/models/room.ts | 29 ++++++-- src/sync.ts | 12 +-- 4 files changed, 152 insertions(+), 30 deletions(-) diff --git a/spec/integ/matrix-client-syncing.spec.ts b/spec/integ/matrix-client-syncing.spec.ts index dbf038d91c9..3e97c648b0d 100644 --- a/spec/integ/matrix-client-syncing.spec.ts +++ b/spec/integ/matrix-client-syncing.spec.ts @@ -1648,6 +1648,99 @@ describe("MatrixClient syncing", () => { }); }); + it("should zero total notifications for threads when absent from the notifications object", async () => { + syncData.rooms.join[roomOne][UNREAD_THREAD_NOTIFICATIONS.name] = { + [THREAD_ID]: { + highlight_count: 2, + notification_count: 5, + }, + }; + + httpBackend!.when("GET", "/sync").respond(200, syncData); + + client!.startClient(); + + await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); + + const room = client!.getRoom(roomOne); + + expect(room!.getThreadUnreadNotificationCount(THREAD_ID, NotificationCountType.Total)).toBe(5); + + syncData.rooms.join[roomOne][UNREAD_THREAD_NOTIFICATIONS.name] = {}; + + httpBackend!.when("GET", "/sync").respond(200, syncData); + + await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); + + expect(room!.getThreadUnreadNotificationCount(THREAD_ID, NotificationCountType.Total)).toBe(0); + }); + + it("should zero highlight notifications for threads in encrypted rooms", async () => { + syncData.rooms.join[roomOne][UNREAD_THREAD_NOTIFICATIONS.name] = { + [THREAD_ID]: { + highlight_count: 2, + notification_count: 5, + }, + }; + + httpBackend!.when("GET", "/sync").respond(200, syncData); + + client!.startClient(); + + await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); + + const room = client!.getRoom(roomOne); + + expect(room!.getThreadUnreadNotificationCount(THREAD_ID, NotificationCountType.Total)).toBe(5); + + syncData.rooms.join[roomOne][UNREAD_THREAD_NOTIFICATIONS.name] = { + [THREAD_ID]: { + highlight_count: 0, + notification_count: 0, + }, + }; + + httpBackend!.when("GET", "/sync").respond(200, syncData); + + await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); + + expect(room!.getThreadUnreadNotificationCount(THREAD_ID, NotificationCountType.Highlight)).toBe(0); + }); + + it("should not zero highlight notifications for threads in encrypted rooms", async () => { + syncData.rooms.join[roomOne][UNREAD_THREAD_NOTIFICATIONS.name] = { + [THREAD_ID]: { + highlight_count: 2, + notification_count: 5, + }, + }; + + httpBackend!.when("GET", "/sync").respond(200, syncData); + + client!.startClient(); + + await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); + + const room = client!.getRoom(roomOne); + room!.hasEncryptionStateEvent = jest.fn().mockReturnValue(true); + + expect(room!.getThreadUnreadNotificationCount(THREAD_ID, NotificationCountType.Total)).toBe(5); + + syncData.rooms.join[roomOne][UNREAD_THREAD_NOTIFICATIONS.name] = { + [THREAD_ID]: { + highlight_count: 0, + notification_count: 0, + }, + }; + + httpBackend!.when("GET", "/sync").respond(200, syncData); + + await Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]); + + expect(room!.getThreadUnreadNotificationCount(THREAD_ID, NotificationCountType.Total)).toBe(0); + expect(room!.getThreadUnreadNotificationCount(THREAD_ID, NotificationCountType.Highlight)).toBe(2); + }); + it("caches unknown threads receipts and replay them when the thread is created", async () => { const THREAD_ID = "$unknownthread:localhost"; diff --git a/spec/unit/room.spec.ts b/spec/unit/room.spec.ts index 36d9d087753..6ca454ef82a 100644 --- a/spec/unit/room.spec.ts +++ b/spec/unit/room.spec.ts @@ -3548,7 +3548,7 @@ describe("Room", function () { expect(room.threadsAggregateNotificationType).toBe(NotificationCountType.Highlight); - room.resetThreadUnreadNotificationCount(); + room.resetThreadUnreadNotificationCountFromSync(); expect(room.threadsAggregateNotificationType).toBe(null); @@ -3565,16 +3565,6 @@ describe("Room", function () { expect(room.threadsAggregateNotificationType).toBe(NotificationCountType.Highlight); }); - it("partially resets room notifications", () => { - room.setThreadUnreadNotificationCount("123", NotificationCountType.Total, 666); - room.setThreadUnreadNotificationCount("456", NotificationCountType.Highlight, 123); - - room.resetThreadUnreadNotificationCount(["123"]); - - expect(room.getThreadUnreadNotificationCount("123", NotificationCountType.Total)).toBe(666); - expect(room.getThreadUnreadNotificationCount("456", NotificationCountType.Highlight)).toBe(0); - }); - it("emits event on notifications reset", () => { const cb = jest.fn(); @@ -3583,7 +3573,7 @@ describe("Room", function () { room.setThreadUnreadNotificationCount("123", NotificationCountType.Total, 666); room.setThreadUnreadNotificationCount("456", NotificationCountType.Highlight, 123); - room.resetThreadUnreadNotificationCount(); + room.resetThreadUnreadNotificationCountFromSync(); expect(cb).toHaveBeenLastCalledWith(); }); @@ -3605,10 +3595,10 @@ describe("Room", function () { }); it("lets you reset", () => { - room.setThreadUnreadNotificationCount("123", NotificationCountType.Highlight, 1); + room.setThreadUnreadNotificationCount("123", NotificationCountType.Total, 1); expect(room.hasThreadUnreadNotification()).toBe(true); - room.resetThreadUnreadNotificationCount(); + room.resetThreadUnreadNotificationCountFromSync(); expect(room.hasThreadUnreadNotification()).toBe(false); }); @@ -3636,12 +3626,38 @@ describe("Room", function () { it("allows reset", () => { room.setThreadUnreadNotificationCount("$123", NotificationCountType.Total, 1); room.setThreadUnreadNotificationCount("$456", NotificationCountType.Total, 1); + expect(room.threadsAggregateNotificationType).toBe(NotificationCountType.Total); + + room.resetThreadUnreadNotificationCountFromSync(); + + expect(room.threadsAggregateNotificationType).toBeNull(); + }); + + it("retains highlight for encrypted rooms on reset", () => { + room.hasEncryptionStateEvent = jest.fn().mockReturnValue(true); + + room.setThreadUnreadNotificationCount("$123", NotificationCountType.Total, 2); + room.setThreadUnreadNotificationCount("$456", NotificationCountType.Total, 1); room.setThreadUnreadNotificationCount("$123", NotificationCountType.Highlight, 1); expect(room.threadsAggregateNotificationType).toBe(NotificationCountType.Highlight); - room.resetThreadUnreadNotificationCount(); + room.resetThreadUnreadNotificationCountFromSync(); - expect(room.threadsAggregateNotificationType).toBeNull(); + expect(room.threadsAggregateNotificationType).toBe(NotificationCountType.Highlight); + }); + + it("resets highlight for unencrypted rooms on reset", () => { + room.hasEncryptionStateEvent = jest.fn().mockReturnValue(false); + + room.setThreadUnreadNotificationCount("$123", NotificationCountType.Total, 2); + room.setThreadUnreadNotificationCount("$456", NotificationCountType.Total, 1); + room.setThreadUnreadNotificationCount("$123", NotificationCountType.Highlight, 1); + expect(room.threadsAggregateNotificationType).toBe(NotificationCountType.Highlight); + + room.resetThreadUnreadNotificationCountFromSync(); + + expect(room.threadsAggregateNotificationType).toBe(null); + expect(room.getThreadUnreadNotificationCount("$123", NotificationCountType.Highlight)).toBe(0); }); }); diff --git a/src/models/room.ts b/src/models/room.ts index 456c6ba54d5..f36885809a9 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -1609,18 +1609,31 @@ export class Room extends ReadReceipt { } /** - * Resets the thread notifications for this room + * Resets the total thread notifications for all threads in this room to zero, + * excluding any threads whose IDs are given in `exceptThreadIds`. + * + * If the room is not encrypted, also resets the highlight notification count to zero + * for the same set of threads. + * + * This is intended for use from the sync code since we calculate highlight notification + * counts locally from decrypted messages. We want to partially trust the total from the + * server such that we clear notifications when read receipts arrive. The weird name is + * intended to reflect this. You probably do not want to use this. + * + * @param exceptThreadIds - The thread IDs to exclude from the reset. */ - public resetThreadUnreadNotificationCount(notificationsToKeep?: string[]): void { - if (notificationsToKeep) { - for (const [threadId] of this.threadNotifications) { - if (!notificationsToKeep.includes(threadId)) { - this.threadNotifications.delete(threadId); + public resetThreadUnreadNotificationCountFromSync(exceptThreadIds: string[] = []): void { + const isEncrypted = this.hasEncryptionStateEvent(); + + for (const [threadId, notifs] of this.threadNotifications) { + if (!exceptThreadIds.includes(threadId)) { + notifs.total = 0; + if (!isEncrypted) { + notifs.highlight = 0; } } - } else { - this.threadNotifications.clear(); } + this.emit(RoomEvent.UnreadNotifications); } diff --git a/src/sync.ts b/src/sync.ts index 8fe60698e9b..92015bd4e78 100644 --- a/src/sync.ts +++ b/src/sync.ts @@ -1355,11 +1355,11 @@ export class SyncApi { const unreadThreadNotifications = joinObj[UNREAD_THREAD_NOTIFICATIONS.name] ?? joinObj[UNREAD_THREAD_NOTIFICATIONS.altName!]; if (unreadThreadNotifications) { - // Only partially reset unread notification - // We want to keep the client-generated count. Particularly important - // for encrypted room that refresh their notification count on event - // decryption - room.resetThreadUnreadNotificationCount(Object.keys(unreadThreadNotifications)); + // This mirrors the logic above for rooms: take the *total* notification count from + // the server for unencrypted rooms or is it's zero. Any threads not present in this + // object implicitly have zero notifications, so start by clearing the total counts + // for all such threads. + room.resetThreadUnreadNotificationCountFromSync(Object.keys(unreadThreadNotifications)); for (const [threadId, unreadNotification] of Object.entries(unreadThreadNotifications)) { if (!encrypted || unreadNotification.notification_count === 0) { room.setThreadUnreadNotificationCount( @@ -1380,7 +1380,7 @@ export class SyncApi { } } } else { - room.resetThreadUnreadNotificationCount(); + room.resetThreadUnreadNotificationCountFromSync(); } joinObj.timeline = joinObj.timeline || ({} as ITimeline); From dce8acbf173f2e8c2904304793c47da64cb1d31a Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 22 Mar 2024 14:10:55 +0000 Subject: [PATCH 136/595] Add some test utils in a new entrypoint (#4127) * Clean up README a little This just removes some of the most egregious lies and outdated stuff. There's a *lot* more that can be done here. * Add some test utils in a new entrypoint * Fix comment * Update src/testing.ts --- README.md | 77 +++++------------- spec/unit/testing.spec.ts | 88 ++++++++++++++++++++ src/testing.ts | 165 ++++++++++++++++++++++++++++++++++++++ typedoc.json | 2 +- 4 files changed, 276 insertions(+), 56 deletions(-) create mode 100644 spec/unit/testing.spec.ts create mode 100644 src/testing.ts diff --git a/README.md b/README.md index 325ed11114e..59f798e6144 100644 --- a/README.md +++ b/README.md @@ -21,16 +21,6 @@ endpoints from before Matrix 1.1, for example. # Quickstart -## In a browser - -### Note, the browserify build has been removed. Please use a bundler like webpack or vite instead. - -## In Node.js - -Ensure you have the latest LTS version of Node.js installed. -This library relies on `fetch` which is available in Node from v18.0.0 - it should work fine also with polyfills. -If you wish to use a ponyfill or adapter of some sort then pass it as `fetchFn` to the MatrixClient constructor options. - Using `yarn` instead of `npm` is recommended. Please see the Yarn [install guide](https://classic.yarnpkg.com/en/docs/install) if you do not have it already. @@ -47,8 +37,6 @@ client.publicRooms(function (err, data) { See below for how to include libolm to enable end-to-end-encryption. Please check [the Node.js terminal app](examples/node) for a more complex example. -You can also use the sdk with [Deno](https://deno.land/) (`import npm:matrix-js-sdk`) but its not officialy supported. - To start the client: ```javascript @@ -106,7 +94,7 @@ Object.keys(client.store.rooms).forEach((roomId) => { This SDK provides a full object model around the Matrix Client-Server API and emits events for incoming data and state changes. Aside from wrapping the HTTP API, it: -- Handles syncing (via `/initialSync` and `/events`) +- Handles syncing (via `/sync`) - Handles the generation of "friendly" room and member names. - Handles historical `RoomMember` information (e.g. display names). - Manages room member state across multiple events (e.g. it handles typing, power @@ -127,20 +115,20 @@ events for incoming data and state changes. Aside from wrapping the HTTP API, it - Handles room initial sync on accepting invites. - Handles WebRTC calling. -Later versions of the SDK will: +# Usage -- Expose a `RoomSummary` which would be suitable for a recents page. -- Provide different pluggable storage layers (e.g. local storage, database-backed) +## Supported platforms -# Usage +`matrix-js-sdk` can be used in either Node.js applications (ensure you have the latest LTS version of Node.js installed), +or in browser applications, via a bundler such as Webpack or Vite. -## Conventions +You can also use the sdk with [Deno](https://deno.land/) (`import npm:matrix-js-sdk`) but its not officialy supported. -### Emitted events +## Emitted events -The SDK will emit events using an `EventEmitter`. It also -emits object models (e.g. `Rooms`, `RoomMembers`) when they -are updated. +The SDK raises notifications to the application using +[`EventEmitter`s](https://nodejs.org/api/events.html#class-eventemitter). The `MatrixClient` itself +implements `EventEmitter`, as do many of the high-level abstractions such as `Room` and `RoomMember`. ```javascript // Listen for low-level MatrixEvents @@ -161,45 +149,21 @@ client.on(RoomMemberEvent.Typing, function (event, member) { client.startClient(); ``` -### Promises and Callbacks - -Most of the methods in the SDK are asynchronous: they do not directly return a -result, but instead return a [Promise](http://documentup.com/kriskowal/q/) -which will be fulfilled in the future. - -The typical usage is something like: - -```javascript - matrixClient.someMethod(arg1, arg2).then(function(result) { - ... - }); -``` - -Alternatively, if you have a Node.js-style `callback(err, result)` function, -you can pass the result of the promise into it with something like: +## Entry points -```javascript -matrixClient.someMethod(arg1, arg2).nodeify(callback); -``` +As well as the primary entry point (`matrix-js-sdk`), there are several other entry points which may be useful: -The main thing to note is that it is problematic to discard the result of a -promise-returning function, as that will cause exceptions to go unobserved. - -Methods which return a promise show this in their documentation. - -Many methods in the SDK support _both_ Node.js-style callbacks _and_ Promises, -via an optional `callback` argument. The callback support is now deprecated: -new methods do not include a `callback` argument, and in the future it may be -removed from existing methods. - -## Low level types - -There are some low level TypeScript types exported via the `matrix-js-sdk/lib/types` entrypoint to not bloat the main entrypoint. +| Entry point | Description | +| ------------------------------ | --------------------------------------------------------------------------------------------------- | +| `matrix-js-sdk` | Primary entry point. High-level functionality, and lots of historical clutter in need of a cleanup. | +| `matrix-js-sdk/lib/crypto-api` | Cryptography functionality. | +| `matrix-js-sdk/lib/types` | Low-level types, reflecting data structures defined in the Matrix spec. | +| `matrix-js-sdk/lib/testing` | Test utilities, which may be useful in test code but should not be used in production code. | ## Examples This section provides some useful code snippets which demonstrate the -core functionality of the SDK. These examples assume the SDK is setup like this: +core functionality of the SDK. These examples assume the SDK is set up like this: ```javascript import * as sdk from "matrix-js-sdk"; @@ -306,6 +270,9 @@ Then visit `http://localhost:8005` to see the API docs. # End-to-end encryption support +**This section is outdated.** Use of `libolm` is deprecated and we are replacing it with support +from the matrix-rust-sdk (https://github.com/element-hq/element-web/issues/21972). + The SDK supports end-to-end encryption via the Olm and Megolm protocols, using [libolm](https://gitlab.matrix.org/matrix-org/olm). It is left up to the application to make libolm available, via the `Olm` global. diff --git a/spec/unit/testing.spec.ts b/spec/unit/testing.spec.ts new file mode 100644 index 00000000000..a18147d8634 --- /dev/null +++ b/spec/unit/testing.spec.ts @@ -0,0 +1,88 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { mkDecryptionFailureMatrixEvent, mkEncryptedMatrixEvent, mkMatrixEvent } from "../../src/testing"; +import { EventType } from "../../src"; + +describe("testing", () => { + describe("mkMatrixEvent", () => { + it("makes an event", () => { + const event = mkMatrixEvent({ + content: { body: "blah" }, + sender: "@alice:test", + type: EventType.RoomMessage, + roomId: "!test:room", + }); + + expect(event.getContent()).toEqual({ body: "blah" }); + expect(event.sender?.userId).toEqual("@alice:test"); + expect(event.isState()).toBe(false); + }); + + it("makes a state event", () => { + const event = mkMatrixEvent({ + content: { body: "blah" }, + sender: "@alice:test", + type: EventType.RoomTopic, + roomId: "!test:room", + stateKey: "", + }); + + expect(event.getContent()).toEqual({ body: "blah" }); + expect(event.sender?.userId).toEqual("@alice:test"); + expect(event.isState()).toBe(true); + expect(event.getStateKey()).toEqual(""); + }); + }); + + describe("mkEncryptedMatrixEvent", () => { + it("makes an event", async () => { + const event = await mkEncryptedMatrixEvent({ + plainContent: { body: "blah" }, + sender: "@alice:test", + plainType: EventType.RoomMessage, + roomId: "!test:room", + }); + + expect(event.sender?.userId).toEqual("@alice:test"); + expect(event.isEncrypted()).toBe(true); + expect(event.isDecryptionFailure()).toBe(false); + expect(event.getContent()).toEqual({ body: "blah" }); + expect(event.getType()).toEqual("m.room.message"); + }); + }); + + describe("mkDecryptionFailureMatrixEvent", () => { + it("makes an event", async () => { + const event = await mkDecryptionFailureMatrixEvent({ + sender: "@alice:test", + roomId: "!test:room", + code: "UNKNOWN", + msg: "blah", + }); + + expect(event.sender?.userId).toEqual("@alice:test"); + expect(event.isEncrypted()).toBe(true); + expect(event.isDecryptionFailure()).toBe(true); + expect(event.getContent()).toEqual({ + body: "** Unable to decrypt: DecryptionError: blah **", + msgtype: "m.bad.encrypted", + }); + expect(event.getType()).toEqual("m.room.message"); + expect(event.isState()).toBe(false); + }); + }); +}); diff --git a/src/testing.ts b/src/testing.ts new file mode 100644 index 00000000000..2b11b036215 --- /dev/null +++ b/src/testing.ts @@ -0,0 +1,165 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +/** + * This file is a secondary entrypoint for the js-sdk library, exposing utilities which might be useful for writing tests. + * + * In general it should not be included in runtime applications. + * + * @packageDocumentation + */ + +import { IContent, IEvent, IUnsigned, MatrixEvent } from "./models/event"; +import { RoomMember } from "./models/room-member"; +import { EventType } from "./@types/event"; +import { IEventDecryptionResult } from "./@types/crypto"; +import { DecryptionError } from "./crypto/algorithms"; + +/** + * Create a {@link MatrixEvent}. + * + * @param opts - Values for the event. + */ +export function mkMatrixEvent(opts: { + /** Room ID of the event. */ + roomId: string; + + /** The sender of the event. */ + sender: string; + + /** The type of the event. */ + type: EventType | string; + + /** Optional `state_key` for the event. If unspecified, a non-state event is created. */ + stateKey?: string; + + /** Optional `origin_server_ts` for the event. If unspecified, the timestamp will be set to 0. */ + ts?: number; + + /** Optional `event_id` for the event. If provided will be used as event ID; else an ID is generated. */ + eventId?: string; + + /** Content of the event. */ + content: IContent; + + /** Optional `unsigned` data for the event. */ + unsigned?: IUnsigned; +}): MatrixEvent { + const event: Partial = { + type: opts.type, + room_id: opts.roomId, + sender: opts.sender, + content: opts.content, + event_id: opts.eventId ?? "$" + Math.random() + "-" + Math.random(), + origin_server_ts: opts.ts ?? 0, + unsigned: opts.unsigned, + }; + if (opts.stateKey !== undefined) { + event.state_key = opts.stateKey; + } + + const mxEvent = new MatrixEvent(event); + mxEvent.sender = { + userId: opts.sender, + membership: "join", + name: opts.sender, + rawDisplayName: opts.sender, + roomId: opts.sender, + getAvatarUrl: () => {}, + getMxcAvatarUrl: () => {}, + } as unknown as RoomMember; + return mxEvent; +} + +/** + * Create a `MatrixEvent` representing a successfully-decrypted `m.room.encrypted` event. + * + * @param opts - Values for the event. + */ +export async function mkEncryptedMatrixEvent(opts: { + /** Room ID of the event. */ + roomId: string; + + /** The sender of the event. */ + sender: string; + + /** The type the event will have, once it has been decrypted. */ + plainType: EventType | string; + + /** The content the event will have, once it has been decrypted. */ + plainContent: IContent; +}): Promise { + // we construct an event which has been decrypted by stubbing out CryptoBackend.decryptEvent and then + // calling MatrixEvent.attemptDecryption. + + const mxEvent = mkMatrixEvent({ + type: EventType.RoomMessageEncrypted, + roomId: opts.roomId, + sender: opts.sender, + content: { algorithm: "m.megolm.v1.aes-sha2" }, + }); + + const decryptionResult: IEventDecryptionResult = { + claimedEd25519Key: "", + clearEvent: { + type: opts.plainType, + content: opts.plainContent, + }, + forwardingCurve25519KeyChain: [], + senderCurve25519Key: "", + untrusted: false, + }; + + const mockCrypto = { + decryptEvent: async (_ev): Promise => decryptionResult, + } as Parameters[0]; + await mxEvent.attemptDecryption(mockCrypto); + return mxEvent; +} + +/** + * Create a `MatrixEvent` representing a `m.room.encrypted` event which could not be decrypted. + * + * @param opts - Values for the event. + */ +export async function mkDecryptionFailureMatrixEvent(opts: { + /** Room ID of the event. */ + roomId: string; + + /** The sender of the event. */ + sender: string; + + /** The reason code for the failure */ + code: string; + + /** A textual reason for the failure */ + msg: string; +}): Promise { + const mxEvent = mkMatrixEvent({ + type: EventType.RoomMessageEncrypted, + roomId: opts.roomId, + sender: opts.sender, + content: { algorithm: "m.megolm.v1.aes-sha2" }, + }); + + const mockCrypto = { + decryptEvent: async (_ev): Promise => { + throw new DecryptionError(opts.code, opts.msg); + }, + } as Parameters[0]; + await mxEvent.attemptDecryption(mockCrypto); + return mxEvent; +} diff --git a/typedoc.json b/typedoc.json index 017c3a4d6d7..69426dc7a3e 100644 --- a/typedoc.json +++ b/typedoc.json @@ -2,7 +2,7 @@ "$schema": "https://typedoc.org/schema.json", "plugin": ["typedoc-plugin-mdn-links", "typedoc-plugin-missing-exports", "typedoc-plugin-coverage"], "coverageLabel": "TypeDoc", - "entryPoints": ["src/matrix.ts", "src/types.ts"], + "entryPoints": ["src/matrix.ts", "src/types.ts", "src/testing.ts"], "excludeExternals": true, "out": "_docs" } From a5737276629fc02fcced2a3d8bd4f27cf253eb4e Mon Sep 17 00:00:00 2001 From: David Langley Date: Fri, 22 Mar 2024 16:36:23 +0000 Subject: [PATCH 137/595] Remove the logic that throws when the lazy loading options has changed. (#4124) * remove InvalidStoreState and the logic that checks for the change in the lazyLoading client option * lint --- src/errors.ts | 19 ------------------- src/sync.ts | 51 +++++++++++---------------------------------------- 2 files changed, 11 insertions(+), 59 deletions(-) diff --git a/src/errors.ts b/src/errors.ts index 77dc054cd05..8345293be53 100644 --- a/src/errors.ts +++ b/src/errors.ts @@ -14,25 +14,6 @@ See the License for the specific language governing permissions and limitations under the License. */ -export enum InvalidStoreState { - ToggledLazyLoading, -} - -export class InvalidStoreError extends Error { - public static TOGGLED_LAZY_LOADING = InvalidStoreState.ToggledLazyLoading; - - public constructor( - public readonly reason: InvalidStoreState, - public readonly value: any, - ) { - const message = - `Store is invalid because ${reason}, ` + - `please stop the client, delete all data and start the client again`; - super(message); - this.name = "InvalidStoreError"; - } -} - export enum InvalidCryptoStoreState { TooNew = "TOO_NEW", } diff --git a/src/sync.ts b/src/sync.ts index 92015bd4e78..82dae75af0a 100644 --- a/src/sync.ts +++ b/src/sync.ts @@ -32,7 +32,6 @@ import { deepCopy, defer, IDeferred, noUnsafeEventProps, promiseMapSeries, unsaf import { Filter } from "./filter"; import { EventTimeline } from "./models/event-timeline"; import { logger } from "./logger"; -import { InvalidStoreError, InvalidStoreState } from "./errors"; import { ClientEvent, IStoredClientOpts, MatrixClient, PendingEventOrdering, ResetTimelineCallback } from "./client"; import { IEphemeral, @@ -593,25 +592,6 @@ export class SyncApi { await keepaliveProm; } - /** - * Is the lazy loading option different than in previous session? - * @param lazyLoadMembers - current options for lazy loading - * @returns whether or not the option has changed compared to the previous session */ - private async wasLazyLoadingToggled(lazyLoadMembers = false): Promise { - // assume it was turned off before - // if we don't know any better - let lazyLoadMembersBefore = false; - const isStoreNewlyCreated = await this.client.store.isNewlyCreated(); - if (!isStoreNewlyCreated) { - const prevClientOptions = await this.client.store.getClientOptions(); - if (prevClientOptions) { - lazyLoadMembersBefore = !!prevClientOptions.lazyLoadMembers; - } - return lazyLoadMembersBefore !== lazyLoadMembers; - } - return false; - } - private shouldAbortSync(error: MatrixError): boolean { if (error.errcode === "M_UNKNOWN_TOKEN") { // The logout already happened, we just need to stop. @@ -649,9 +629,9 @@ export class SyncApi { return filter; }; - private checkLazyLoadStatus = async (): Promise => { - debuglog("Checking lazy load status..."); - if (this.opts.lazyLoadMembers && this.client.isGuest()) { + private prepareLazyLoadingForSync = async (): Promise => { + debuglog("Prepare lazy loading for sync..."); + if (this.client.isGuest()) { this.opts.lazyLoadMembers = false; } if (this.opts.lazyLoadMembers) { @@ -661,23 +641,12 @@ export class SyncApi { } this.opts.filter.setLazyLoadMembers(true); } - // need to vape the store when enabling LL and wasn't enabled before - debuglog("Checking whether lazy loading has changed in store..."); - const shouldClear = await this.wasLazyLoadingToggled(this.opts.lazyLoadMembers); - if (shouldClear) { - this.storeIsInvalid = true; - const error = new InvalidStoreError(InvalidStoreState.ToggledLazyLoading, !!this.opts.lazyLoadMembers); - this.updateSyncState(SyncState.Error, { error }); - // bail out of the sync loop now: the app needs to respond to this error. - // we leave the state as 'ERROR' which isn't great since this normally means - // we're retrying. The client must be stopped before clearing the stores anyway - // so the app should stop the client, clear the store and start it again. - logger.warn("InvalidStoreError: store is not usable: stopping sync."); - return; - } if (this.opts.lazyLoadMembers) { this.syncOpts.crypto?.enableLazyLoading(); } + }; + + private storeClientOptions = async (): Promise => { try { debuglog("Storing client options..."); await this.client.storeClientOptions(); @@ -757,14 +726,16 @@ export class SyncApi { // 1) We need to get push rules so we can check if events should bing as we get // them from /sync. // 2) We need to get/create a filter which we can use for /sync. - // 3) We need to check the lazy loading option matches what was used in the - // stored sync. If it doesn't, we can't use the stored sync. + // 3) We need to prepare lazy loading for sync + // 4) We need to store the client options // Now start the first incremental sync request: this can also // take a while so if we set it going now, we can wait for it // to finish while we process our saved sync data. await this.getPushRules(); - await this.checkLazyLoadStatus(); + await this.prepareLazyLoadingForSync(); + await this.storeClientOptions(); + const { filterId, filter } = await this.getFilter(); if (!filter) return; // bail, getFilter failed From d1259b241c6fb9576fbf4d2f7303d94b59f8f0a6 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 22 Mar 2024 17:15:27 +0000 Subject: [PATCH 138/595] Clean up code for handling decryption failures (#4126) Various improvements, including: * Defining an enum for decryption failure reasons * Exposing the reason code as a property on Event --- spec/integ/crypto/crypto.spec.ts | 19 +++--- spec/unit/models/event.spec.ts | 38 +++++++++++- spec/unit/room-state.spec.ts | 7 ++- spec/unit/testing.spec.ts | 5 +- src/common-crypto/CryptoBackend.ts | 46 +++++++++++++-- src/crypto-api.ts | 51 ++++++++++++++++ src/crypto/OlmDevice.ts | 11 ++-- src/crypto/algorithms/base.ts | 42 +------------ src/crypto/algorithms/megolm.ts | 18 +++--- src/crypto/algorithms/olm.ts | 72 ++++++++++++++++------- src/crypto/index.ts | 9 +-- src/models/event.ts | 94 +++++++++++++++++------------- src/rust-crypto/rust-crypto.ts | 14 ++--- src/testing.ts | 3 +- 14 files changed, 282 insertions(+), 147 deletions(-) diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 9e2106f0fe2..0d348caef8c 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -80,12 +80,12 @@ import { SecretStorageKeyDescription } from "../../../src/secret-storage"; import { CrossSigningKey, CryptoCallbacks, + DecryptionFailureCode, EventShieldColour, EventShieldReason, KeyBackupInfo, } from "../../../src/crypto-api"; import { E2EKeyResponder } from "../../test-utils/E2EKeyResponder"; -import { DecryptionError } from "../../../src/crypto/algorithms"; import { IKeyBackup } from "../../../src/crypto/backup"; import { createOlmAccount, @@ -470,9 +470,8 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, await startClientAndAwaitFirstSync(); const awaitUISI = new Promise((resolve) => { - aliceClient.on(MatrixEventEvent.Decrypted, (ev, err) => { - const error = err as DecryptionError; - if (error.code == "MEGOLM_UNKNOWN_INBOUND_SESSION_ID") { + aliceClient.on(MatrixEventEvent.Decrypted, (ev) => { + if (ev.decryptionFailureReason === DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID) { resolve(); } }); @@ -499,9 +498,8 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, await startClientAndAwaitFirstSync(); const awaitUnknownIndex = new Promise((resolve) => { - aliceClient.on(MatrixEventEvent.Decrypted, (ev, err) => { - const error = err as DecryptionError; - if (error.code == "OLM_UNKNOWN_MESSAGE_INDEX") { + aliceClient.on(MatrixEventEvent.Decrypted, (ev) => { + if (ev.decryptionFailureReason === DecryptionFailureCode.OLM_UNKNOWN_MESSAGE_INDEX) { resolve(); } }); @@ -532,13 +530,12 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, await aliceClient.getCrypto()!.importRoomKeys([testData.MEGOLM_SESSION_DATA]); const awaitDecryptionError = new Promise((resolve) => { - aliceClient.on(MatrixEventEvent.Decrypted, (ev, err) => { - const error = err as DecryptionError; + aliceClient.on(MatrixEventEvent.Decrypted, (ev) => { // rust and libolm can't have an exact 1:1 mapping for all errors, // but some errors are part of API and should match if ( - error.code != "MEGOLM_UNKNOWN_INBOUND_SESSION_ID" && - error.code != "OLM_UNKNOWN_MESSAGE_INDEX" + ev.decryptionFailureReason !== DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID && + ev.decryptionFailureReason !== DecryptionFailureCode.OLM_UNKNOWN_MESSAGE_INDEX ) { resolve(); } diff --git a/spec/unit/models/event.spec.ts b/spec/unit/models/event.spec.ts index 5ff9d745da1..0b9416fd871 100644 --- a/spec/unit/models/event.spec.ts +++ b/spec/unit/models/event.spec.ts @@ -27,6 +27,8 @@ import { THREAD_RELATION_TYPE, TweakName, } from "../../../src"; +import { DecryptionFailureCode } from "../../../src/crypto-api"; +import { DecryptionError } from "../../../src/common-crypto/CryptoBackend"; describe("MatrixEvent", () => { it("should create copies of itself", () => { @@ -360,20 +362,50 @@ describe("MatrixEvent", () => { }); }); - it("should report decryption errors", async () => { + it("should report unknown decryption errors", async () => { + const decryptionListener = jest.fn(); + encryptedEvent.addListener(MatrixEventEvent.Decrypted, decryptionListener); + + const testError = new Error("test error"); const crypto = { - decryptEvent: jest.fn().mockRejectedValue(new Error("test error")), + decryptEvent: jest.fn().mockRejectedValue(testError), } as unknown as Crypto; await encryptedEvent.attemptDecryption(crypto); expect(encryptedEvent.isEncrypted()).toBeTruthy(); expect(encryptedEvent.isBeingDecrypted()).toBeFalsy(); expect(encryptedEvent.isDecryptionFailure()).toBeTruthy(); + expect(encryptedEvent.decryptionFailureReason).toEqual(DecryptionFailureCode.UNKNOWN_ERROR); expect(encryptedEvent.isEncryptedDisabledForUnverifiedDevices).toBeFalsy(); expect(encryptedEvent.getContent()).toEqual({ msgtype: "m.bad.encrypted", body: "** Unable to decrypt: Error: test error **", }); + expect(decryptionListener).toHaveBeenCalledWith(encryptedEvent, testError); + }); + + it("should report known decryption errors", async () => { + const decryptionListener = jest.fn(); + encryptedEvent.addListener(MatrixEventEvent.Decrypted, decryptionListener); + + const testError = new DecryptionError(DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID, "uisi"); + const crypto = { + decryptEvent: jest.fn().mockRejectedValue(testError), + } as unknown as Crypto; + + await encryptedEvent.attemptDecryption(crypto); + expect(encryptedEvent.isEncrypted()).toBeTruthy(); + expect(encryptedEvent.isBeingDecrypted()).toBeFalsy(); + expect(encryptedEvent.isDecryptionFailure()).toBeTruthy(); + expect(encryptedEvent.decryptionFailureReason).toEqual( + DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID, + ); + expect(encryptedEvent.isEncryptedDisabledForUnverifiedDevices).toBeFalsy(); + expect(encryptedEvent.getContent()).toEqual({ + msgtype: "m.bad.encrypted", + body: "** Unable to decrypt: DecryptionError: uisi **", + }); + expect(decryptionListener).toHaveBeenCalledWith(encryptedEvent, testError); }); it(`should report "DecryptionError: The sender has disabled encrypting to unverified devices."`, async () => { @@ -423,6 +455,8 @@ describe("MatrixEvent", () => { expect(eventAttemptDecryptionSpy).toHaveBeenCalledTimes(2); expect(crypto.decryptEvent).toHaveBeenCalledTimes(2); expect(encryptedEvent.getType()).toEqual("m.room.message"); + expect(encryptedEvent.isDecryptionFailure()).toBe(false); + expect(encryptedEvent.decryptionFailureReason).toBe(null); }); }); diff --git a/spec/unit/room-state.spec.ts b/spec/unit/room-state.spec.ts index 64a268dde14..9e0c29f35e8 100644 --- a/spec/unit/room-state.spec.ts +++ b/spec/unit/room-state.spec.ts @@ -25,10 +25,11 @@ import { EventType, RelationType, UNSTABLE_MSC2716_MARKER } from "../../src/@typ import { MatrixEvent, MatrixEventEvent } from "../../src/models/event"; import { M_BEACON } from "../../src/@types/beacon"; import { MatrixClient } from "../../src/client"; -import { DecryptionError } from "../../src/crypto/algorithms"; import { defer } from "../../src/utils"; import { Room } from "../../src/models/room"; import { KnownMembership } from "../../src/@types/membership"; +import { DecryptionFailureCode } from "../../src/crypto-api"; +import { DecryptionError } from "../../src/common-crypto/CryptoBackend"; describe("RoomState", function () { const roomId = "!foo:bar"; @@ -1040,7 +1041,9 @@ describe("RoomState", function () { content: beacon1RelationContent, }); jest.spyOn(failedDecryptionRelatedEvent, "isDecryptionFailure").mockReturnValue(true); - mockClient.decryptEventIfNeeded.mockRejectedValue(new DecryptionError("ERR", "msg")); + mockClient.decryptEventIfNeeded.mockRejectedValue( + new DecryptionError(DecryptionFailureCode.UNKNOWN_ERROR, "msg"), + ); // spy on event.once const eventOnceSpy = jest.spyOn(failedDecryptionRelatedEvent, "once"); diff --git a/spec/unit/testing.spec.ts b/spec/unit/testing.spec.ts index a18147d8634..49181b98b44 100644 --- a/spec/unit/testing.spec.ts +++ b/spec/unit/testing.spec.ts @@ -16,6 +16,7 @@ limitations under the License. import { mkDecryptionFailureMatrixEvent, mkEncryptedMatrixEvent, mkMatrixEvent } from "../../src/testing"; import { EventType } from "../../src"; +import { DecryptionFailureCode } from "../../src/crypto-api"; describe("testing", () => { describe("mkMatrixEvent", () => { @@ -60,6 +61,7 @@ describe("testing", () => { expect(event.sender?.userId).toEqual("@alice:test"); expect(event.isEncrypted()).toBe(true); expect(event.isDecryptionFailure()).toBe(false); + expect(event.decryptionFailureReason).toBe(null); expect(event.getContent()).toEqual({ body: "blah" }); expect(event.getType()).toEqual("m.room.message"); }); @@ -70,13 +72,14 @@ describe("testing", () => { const event = await mkDecryptionFailureMatrixEvent({ sender: "@alice:test", roomId: "!test:room", - code: "UNKNOWN", + code: DecryptionFailureCode.UNKNOWN_ERROR, msg: "blah", }); expect(event.sender?.userId).toEqual("@alice:test"); expect(event.isEncrypted()).toBe(true); expect(event.isDecryptionFailure()).toBe(true); + expect(event.decryptionFailureReason).toEqual(DecryptionFailureCode.UNKNOWN_ERROR); expect(event.getContent()).toEqual({ body: "** Unable to decrypt: DecryptionError: blah **", msgtype: "m.bad.encrypted", diff --git a/src/common-crypto/CryptoBackend.ts b/src/common-crypto/CryptoBackend.ts index 0aadf93b404..401e4a09119 100644 --- a/src/common-crypto/CryptoBackend.ts +++ b/src/common-crypto/CryptoBackend.ts @@ -17,7 +17,7 @@ limitations under the License. import type { IDeviceLists, IToDeviceEvent } from "../sync-accumulator"; import { IClearEvent, MatrixEvent } from "../models/event"; import { Room } from "../models/room"; -import { CryptoApi, ImportRoomKeysOpts } from "../crypto-api"; +import { CryptoApi, DecryptionFailureCode, ImportRoomKeysOpts } from "../crypto-api"; import { CrossSigningInfo, UserTrustLevel } from "../crypto/CrossSigning"; import { IEncryptedEventInfo } from "../crypto/api"; import { KeyBackupInfo, KeyBackupSession } from "../crypto-api/keybackup"; @@ -226,10 +226,6 @@ export interface EventDecryptionResult { * restored from backup) */ untrusted?: boolean; - /** - * The sender doesn't authorize the unverified devices to decrypt his messages - */ - encryptedDisabledForUnverifiedDevices?: boolean; } /** @@ -263,3 +259,43 @@ export interface BackupDecryptor { */ free(): void; } + +/** + * Exception thrown when decryption fails + * + * @param code - Reason code for the failure. + * + * @param msg - user-visible message describing the problem + * + * @param details - key/value pairs reported in the logs but not shown + * to the user. + */ +export class DecryptionError extends Error { + public readonly detailedString: string; + + public constructor( + public readonly code: DecryptionFailureCode, + msg: string, + details?: Record, + ) { + super(msg); + this.name = "DecryptionError"; + this.detailedString = detailedStringForDecryptionError(this, details); + } +} + +function detailedStringForDecryptionError(err: DecryptionError, details?: Record): string { + let result = err.name + "[msg: " + err.message; + + if (details) { + result += + ", " + + Object.keys(details) + .map((k) => k + ": " + details[k]) + .join(", "); + } + + result += "]"; + + return result; +} diff --git a/src/crypto-api.ts b/src/crypto-api.ts index 13d94a29599..7d7eba937ba 100644 --- a/src/crypto-api.ts +++ b/src/crypto-api.ts @@ -498,6 +498,57 @@ export interface CryptoApi { deleteKeyBackupVersion(version: string): Promise; } +/** A reason code for a failure to decrypt an event. */ +export enum DecryptionFailureCode { + /** Message was encrypted with a Megolm session whose keys have not been shared with us. */ + MEGOLM_UNKNOWN_INBOUND_SESSION_ID = "MEGOLM_UNKNOWN_INBOUND_SESSION_ID", + + /** Message was encrypted with a Megolm session which has been shared with us, but in a later ratchet state. */ + OLM_UNKNOWN_MESSAGE_INDEX = "OLM_UNKNOWN_MESSAGE_INDEX", + + /** Unknown or unclassified error. */ + UNKNOWN_ERROR = "UNKNOWN_ERROR", + + /** @deprecated only used in legacy crypto */ + MEGOLM_BAD_ROOM = "MEGOLM_BAD_ROOM", + + /** @deprecated only used in legacy crypto */ + MEGOLM_MISSING_FIELDS = "MEGOLM_MISSING_FIELDS", + + /** @deprecated only used in legacy crypto */ + OLM_DECRYPT_GROUP_MESSAGE_ERROR = "OLM_DECRYPT_GROUP_MESSAGE_ERROR", + + /** @deprecated only used in legacy crypto */ + OLM_BAD_ENCRYPTED_MESSAGE = "OLM_BAD_ENCRYPTED_MESSAGE", + + /** @deprecated only used in legacy crypto */ + OLM_BAD_RECIPIENT = "OLM_BAD_RECIPIENT", + + /** @deprecated only used in legacy crypto */ + OLM_BAD_RECIPIENT_KEY = "OLM_BAD_RECIPIENT_KEY", + + /** @deprecated only used in legacy crypto */ + OLM_BAD_ROOM = "OLM_BAD_ROOM", + + /** @deprecated only used in legacy crypto */ + OLM_BAD_SENDER_CHECK_FAILED = "OLM_BAD_SENDER_CHECK_FAILED", + + /** @deprecated only used in legacy crypto */ + OLM_BAD_SENDER = "OLM_BAD_SENDER", + + /** @deprecated only used in legacy crypto */ + OLM_FORWARDED_MESSAGE = "OLM_FORWARDED_MESSAGE", + + /** @deprecated only used in legacy crypto */ + OLM_MISSING_CIPHERTEXT = "OLM_MISSING_CIPHERTEXT", + + /** @deprecated only used in legacy crypto */ + OLM_NOT_INCLUDED_IN_RECIPIENTS = "OLM_NOT_INCLUDED_IN_RECIPIENTS", + + /** @deprecated only used in legacy crypto */ + UNKNOWN_ENCRYPTION_ALGORITHM = "UNKNOWN_ENCRYPTION_ALGORITHM", +} + /** * Options object for `CryptoApi.bootstrapCrossSigning`. */ diff --git a/src/crypto/OlmDevice.ts b/src/crypto/OlmDevice.ts index f1e2dd9fa17..6e645b72b97 100644 --- a/src/crypto/OlmDevice.ts +++ b/src/crypto/OlmDevice.ts @@ -18,11 +18,12 @@ import { Account, InboundGroupSession, OutboundGroupSession, Session, Utility } import { logger, Logger } from "../logger"; import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store"; -import * as algorithms from "./algorithms"; import { CryptoStore, IProblem, ISessionInfo, IWithheld } from "./store/base"; import { IOlmDevice, IOutboundGroupSessionKey } from "./algorithms/megolm"; import { IMegolmSessionData, OlmGroupSessionExtraData } from "../@types/crypto"; import { IMessage } from "./algorithms/olm"; +import { DecryptionFailureCode } from "../crypto-api"; +import { DecryptionError } from "../common-crypto/CryptoBackend"; // The maximum size of an event is 65K, and we base64 the content, so this is a // reasonable approximation to the biggest plaintext we can encrypt. @@ -1220,8 +1221,8 @@ export class OlmDevice { this.getInboundGroupSession(roomId, senderKey, sessionId, txn, (session, sessionData, withheld) => { if (session === null || sessionData === null) { if (withheld) { - error = new algorithms.DecryptionError( - "MEGOLM_UNKNOWN_INBOUND_SESSION_ID", + error = new DecryptionError( + DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID, calculateWithheldMessage(withheld), { session: senderKey + "|" + sessionId, @@ -1236,8 +1237,8 @@ export class OlmDevice { res = session.decrypt(body); } catch (e) { if ((e)?.message === "OLM.UNKNOWN_MESSAGE_INDEX" && withheld) { - error = new algorithms.DecryptionError( - "MEGOLM_UNKNOWN_INBOUND_SESSION_ID", + error = new DecryptionError( + DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID, calculateWithheldMessage(withheld), { session: senderKey + "|" + sessionId, diff --git a/src/crypto/algorithms/base.ts b/src/crypto/algorithms/base.ts index d571cd22050..37dae34bd77 100644 --- a/src/crypto/algorithms/base.ts +++ b/src/crypto/algorithms/base.ts @@ -199,45 +199,6 @@ export abstract class DecryptionAlgorithm { public sendSharedHistoryInboundSessions?(devicesByUser: Map): Promise; } -/** - * Exception thrown when decryption fails - * - * @param msg - user-visible message describing the problem - * - * @param details - key/value pairs reported in the logs but not shown - * to the user. - */ -export class DecryptionError extends Error { - public readonly detailedString: string; - - public constructor( - public readonly code: string, - msg: string, - details?: Record, - ) { - super(msg); - this.code = code; - this.name = "DecryptionError"; - this.detailedString = detailedStringForDecryptionError(this, details); - } -} - -function detailedStringForDecryptionError(err: DecryptionError, details?: Record): string { - let result = err.name + "[msg: " + err.message; - - if (details) { - result += - ", " + - Object.keys(details) - .map((k) => k + ": " + details[k]) - .join(", "); - } - - result += "]"; - - return result; -} - export class UnknownDeviceError extends Error { /** * Exception thrown specifically when we want to warn the user to consider @@ -274,3 +235,6 @@ export function registerAlgorithm

( ENCRYPTION_CLASSES.set(algorithm, encryptor as new (params: IParams) => EncryptionAlgorithm); DECRYPTION_CLASSES.set(algorithm, decryptor as new (params: DecryptionClassParams) => DecryptionAlgorithm); } + +/* Re-export for backwards compatibility. Deprecated: this is an internal class. */ +export { DecryptionError } from "../../common-crypto/CryptoBackend"; diff --git a/src/crypto/algorithms/megolm.ts b/src/crypto/algorithms/megolm.ts index 610961eb3be..5fa4a1b757e 100644 --- a/src/crypto/algorithms/megolm.ts +++ b/src/crypto/algorithms/megolm.ts @@ -26,7 +26,6 @@ import * as olmlib from "../olmlib"; import { DecryptionAlgorithm, DecryptionClassParams, - DecryptionError, EncryptionAlgorithm, IParams, registerAlgorithm, @@ -45,6 +44,8 @@ import { OlmGroupSessionExtraData } from "../../@types/crypto"; import { MatrixError } from "../../http-api"; import { immediate, MapWithDefault } from "../../utils"; import { KnownMembership } from "../../@types/membership"; +import { DecryptionFailureCode } from "../../crypto-api"; +import { DecryptionError } from "../../common-crypto/CryptoBackend"; // determine whether the key can be shared with invitees export function isRoomSharedHistory(room: Room): boolean { @@ -1313,7 +1314,7 @@ export class MegolmDecryption extends DecryptionAlgorithm { const content = event.getWireContent(); if (!content.sender_key || !content.session_id || !content.ciphertext) { - throw new DecryptionError("MEGOLM_MISSING_FIELDS", "Missing fields in input"); + throw new DecryptionError(DecryptionFailureCode.MEGOLM_MISSING_FIELDS, "Missing fields in input"); } // we add the event to the pending list *before* we start decryption. @@ -1339,12 +1340,12 @@ export class MegolmDecryption extends DecryptionAlgorithm { throw e; } - let errorCode = "OLM_DECRYPT_GROUP_MESSAGE_ERROR"; + let errorCode = DecryptionFailureCode.OLM_DECRYPT_GROUP_MESSAGE_ERROR; if ((e)?.message === "OLM.UNKNOWN_MESSAGE_INDEX") { this.requestKeysForEvent(event); - errorCode = "OLM_UNKNOWN_MESSAGE_INDEX"; + errorCode = DecryptionFailureCode.OLM_UNKNOWN_MESSAGE_INDEX; } throw new DecryptionError(errorCode, e instanceof Error ? e.message : "Unknown Error: Error is undefined", { @@ -1377,13 +1378,13 @@ export class MegolmDecryption extends DecryptionAlgorithm { if (problem.fixed) { problemDescription += " Trying to create a new secure channel and re-requesting the keys."; } - throw new DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID", problemDescription, { + throw new DecryptionError(DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID, problemDescription, { session: content.sender_key + "|" + content.session_id, }); } throw new DecryptionError( - "MEGOLM_UNKNOWN_INBOUND_SESSION_ID", + DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID, "The sender's device has not sent us the keys for this message.", { session: content.sender_key + "|" + content.session_id, @@ -1405,7 +1406,10 @@ export class MegolmDecryption extends DecryptionAlgorithm { // (this is somewhat redundant, since the megolm session is scoped to the // room, so neither the sender nor a MITM can lie about the room_id). if (payload.room_id !== event.getRoomId()) { - throw new DecryptionError("MEGOLM_BAD_ROOM", "Message intended for room " + payload.room_id); + throw new DecryptionError( + DecryptionFailureCode.MEGOLM_BAD_ROOM, + "Message intended for room " + payload.room_id, + ); } return { diff --git a/src/crypto/algorithms/olm.ts b/src/crypto/algorithms/olm.ts index d5cec6f7053..3bcff5872b0 100644 --- a/src/crypto/algorithms/olm.ts +++ b/src/crypto/algorithms/olm.ts @@ -22,11 +22,13 @@ import type { IEventDecryptionResult } from "../../@types/crypto"; import { logger } from "../../logger"; import * as olmlib from "../olmlib"; import { DeviceInfo } from "../deviceinfo"; -import { DecryptionAlgorithm, DecryptionError, EncryptionAlgorithm, registerAlgorithm } from "./base"; +import { DecryptionAlgorithm, EncryptionAlgorithm, registerAlgorithm } from "./base"; import { Room } from "../../models/room"; import { IContent, MatrixEvent } from "../../models/event"; import { IEncryptedContent, IOlmEncryptedContent } from "../index"; import { IInboundSession } from "../OlmDevice"; +import { DecryptionFailureCode } from "../../crypto-api"; +import { DecryptionError } from "../../common-crypto/CryptoBackend"; const DeviceVerification = DeviceInfo.DeviceVerification; @@ -159,11 +161,14 @@ class OlmDecryption extends DecryptionAlgorithm { const ciphertext = content.ciphertext; if (!ciphertext) { - throw new DecryptionError("OLM_MISSING_CIPHERTEXT", "Missing ciphertext"); + throw new DecryptionError(DecryptionFailureCode.OLM_MISSING_CIPHERTEXT, "Missing ciphertext"); } if (!(this.olmDevice.deviceCurve25519Key! in ciphertext)) { - throw new DecryptionError("OLM_NOT_INCLUDED_IN_RECIPIENTS", "Not included in recipients"); + throw new DecryptionError( + DecryptionFailureCode.OLM_NOT_INCLUDED_IN_RECIPIENTS, + "Not included in recipients", + ); } const message = ciphertext[this.olmDevice.deviceCurve25519Key!]; let payloadString: string; @@ -171,7 +176,7 @@ class OlmDecryption extends DecryptionAlgorithm { try { payloadString = await this.decryptMessage(deviceKey, message); } catch (e) { - throw new DecryptionError("OLM_BAD_ENCRYPTED_MESSAGE", "Bad Encrypted Message", { + throw new DecryptionError(DecryptionFailureCode.OLM_BAD_ENCRYPTED_MESSAGE, "Bad Encrypted Message", { sender: deviceKey, err: e as Error, }); @@ -182,14 +187,21 @@ class OlmDecryption extends DecryptionAlgorithm { // check that we were the intended recipient, to avoid unknown-key attack // https://github.com/vector-im/vector-web/issues/2483 if (payload.recipient != this.userId) { - throw new DecryptionError("OLM_BAD_RECIPIENT", "Message was intented for " + payload.recipient); + throw new DecryptionError( + DecryptionFailureCode.OLM_BAD_RECIPIENT, + "Message was intended for " + payload.recipient, + ); } if (payload.recipient_keys.ed25519 != this.olmDevice.deviceEd25519Key) { - throw new DecryptionError("OLM_BAD_RECIPIENT_KEY", "Message not intended for this device", { - intended: payload.recipient_keys.ed25519, - our_key: this.olmDevice.deviceEd25519Key!, - }); + throw new DecryptionError( + DecryptionFailureCode.OLM_BAD_RECIPIENT_KEY, + "Message not intended for this device", + { + intended: payload.recipient_keys.ed25519, + our_key: this.olmDevice.deviceEd25519Key!, + }, + ); } // check that the device that encrypted the event belongs to the user that the event claims it's from. @@ -216,18 +228,26 @@ class OlmDecryption extends DecryptionAlgorithm { try { await this.crypto.deviceList.downloadKeys([event.getSender()!], false); } catch (e) { - throw new DecryptionError("OLM_BAD_SENDER_CHECK_FAILED", "Could not verify sender identity", { - sender: deviceKey, - err: e as Error, - }); + throw new DecryptionError( + DecryptionFailureCode.OLM_BAD_SENDER_CHECK_FAILED, + "Could not verify sender identity", + { + sender: deviceKey, + err: e as Error, + }, + ); } senderKeyUser = this.crypto.deviceList.getUserByIdentityKey(olmlib.OLM_ALGORITHM, deviceKey); } if (senderKeyUser !== event.getSender() && senderKeyUser !== undefined && senderKeyUser !== null) { - throw new DecryptionError("OLM_BAD_SENDER", "Message claimed to be from " + event.getSender(), { - real_sender: senderKeyUser, - }); + throw new DecryptionError( + DecryptionFailureCode.OLM_BAD_SENDER, + "Message claimed to be from " + event.getSender(), + { + real_sender: senderKeyUser, + }, + ); } // check that the original sender matches what the homeserver told us, to @@ -235,16 +255,24 @@ class OlmDecryption extends DecryptionAlgorithm { // (this check is also provided via the sender's embedded ed25519 key, // which is checked elsewhere). if (payload.sender != event.getSender()) { - throw new DecryptionError("OLM_FORWARDED_MESSAGE", "Message forwarded from " + payload.sender, { - reported_sender: event.getSender()!, - }); + throw new DecryptionError( + DecryptionFailureCode.OLM_FORWARDED_MESSAGE, + "Message forwarded from " + payload.sender, + { + reported_sender: event.getSender()!, + }, + ); } // Olm events intended for a room have a room_id. if (payload.room_id !== event.getRoomId()) { - throw new DecryptionError("OLM_BAD_ROOM", "Message intended for room " + payload.room_id, { - reported_room: event.getRoomId() || "ROOM_ID_UNDEFINED", - }); + throw new DecryptionError( + DecryptionFailureCode.OLM_BAD_ROOM, + "Message intended for room " + payload.room_id, + { + reported_room: event.getRoomId() || "ROOM_ID_UNDEFINED", + }, + ); } const claimedKeys = payload.keys || {}; diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 64ce90551e8..83b45a82c05 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -73,7 +73,7 @@ import { TypedEventEmitter } from "../models/typed-event-emitter"; import { IDeviceLists, ISyncResponse, IToDeviceEvent } from "../sync-accumulator"; import { ISignatures } from "../@types/signed"; import { IMessage } from "./algorithms/olm"; -import { BackupDecryptor, CryptoBackend, OnSyncCompletedData } from "../common-crypto/CryptoBackend"; +import { BackupDecryptor, CryptoBackend, DecryptionError, OnSyncCompletedData } from "../common-crypto/CryptoBackend"; import { RoomState, RoomStateEvent } from "../models/room-state"; import { MapWithDefault, recursiveMapToObject } from "../utils"; import { @@ -90,6 +90,7 @@ import { BackupTrustInfo, BootstrapCrossSigningOpts, CrossSigningStatus, + DecryptionFailureCode, DeviceVerificationStatus, EventEncryptionInfo, EventShieldColour, @@ -97,8 +98,8 @@ import { ImportRoomKeysOpts, KeyBackupCheck, KeyBackupInfo, - VerificationRequest as CryptoApiVerificationRequest, OwnDeviceKeys, + VerificationRequest as CryptoApiVerificationRequest, } from "../crypto-api"; import { Device, DeviceMap } from "../models/device"; import { deviceInfoToDevice } from "./device-converter"; @@ -4209,8 +4210,8 @@ export class Crypto extends TypedEventEmitter void; [MatrixEventEvent.BeforeRedaction]: (event: MatrixEvent, redactionEvent: MatrixEvent) => void; [MatrixEventEvent.VisibilityChange]: (event: MatrixEvent, visible: boolean) => void; @@ -274,6 +279,9 @@ export class MatrixEvent extends TypedEventEmitter = undefined; + /** If we failed to decrypt this event, the reason for the failure. Otherwise, `null`. */ + private _decryptionFailureReason: DecryptionFailureCode | null = null; + /* curve25519 key which we believe belongs to the sender of the event. See * getSenderKey() */ @@ -771,7 +779,12 @@ export class MatrixEvent extends TypedEventEmittere).detailedString : String(e); @@ -927,14 +937,12 @@ export class MatrixEvent extends TypedEventEmittere).code : DecryptionFailureCode.UNKNOWN_ERROR; } - // at this point, we've either successfully decrypted the event, or have given up - // (and set res to a 'badEncryptedMessage'). Either way, we can now set the - // cleartext of the event and raise Event.decrypted. - // - // make sure we clear 'decryptionPromise' before sending the 'Event.decrypted' event, + // Make sure we clear 'decryptionPromise' before sending the 'Event.decrypted' event, // otherwise the app will be confused to see `isBeingDecrypted` still set when // there isn't an `Event.decrypted` on the way. // @@ -942,7 +950,6 @@ export class MatrixEvent extends TypedEventEmitter Date: Fri, 22 Mar 2024 17:17:31 +0000 Subject: [PATCH 139/595] Add new enum for verification methods. (#4129) * Define constants for the verification methods. * Remove some confusing references to the *old* `VerificationMethod` --- src/client.ts | 13 +++++-------- src/crypto/verification/QRCode.ts | 5 +++-- src/crypto/verification/SAS.ts | 3 ++- src/rust-crypto/rust-crypto.ts | 10 ++++++++-- src/rust-crypto/verification.ts | 15 ++++++++------- src/types.ts | 30 ++++++++++++++++++++++++++++++ 6 files changed, 56 insertions(+), 20 deletions(-) diff --git a/src/client.ts b/src/client.ts index 5e1459338ea..3192e144924 100644 --- a/src/client.ts +++ b/src/client.ts @@ -83,7 +83,6 @@ import { ICryptoCallbacks, IRoomKeyRequestBody, isCryptoAvailable, - VerificationMethod, } from "./crypto"; import { DeviceInfo } from "./crypto/deviceinfo"; import { decodeRecoveryKey } from "./crypto/recoverykey"; @@ -378,8 +377,10 @@ export interface ICreateClientOpts { * Verification methods we should offer to the other side when performing an interactive verification. * If unset, we will offer all known methods. Currently these are: showing a QR code, scanning a QR code, and SAS * (aka "emojis"). + * + * See {@link types.VerificationMethod} for a set of useful constants for this parameter. */ - verificationMethods?: Array; + verificationMethods?: Array; /** * Whether relaying calls through a TURN server should be forced. Default false. @@ -1271,7 +1272,7 @@ export class MatrixClient extends TypedEventEmitter; errorTs?: number } } = {}; protected notifTimelineSet: EventTimelineSet | null = null; protected cryptoStore?: CryptoStore; - protected verificationMethods?: VerificationMethod[]; + protected verificationMethods?: string[]; protected fallbackICEServerAllowed = false; protected syncApi?: SlidingSyncSdk | SyncApi; public roomNameGenerator?: ICreateClientOpts["roomNameGenerator"]; @@ -2777,11 +2778,7 @@ export class MatrixClient extends TypedEventEmitter { + public legacyDeviceVerification(userId: string, deviceId: string, method: string): Promise { if (!this.crypto) { throw new Error("End-to-end encryption disabled"); } diff --git a/src/crypto/verification/QRCode.ts b/src/crypto/verification/QRCode.ts index b4e43252eaf..e0c7816eb46 100644 --- a/src/crypto/verification/QRCode.ts +++ b/src/crypto/verification/QRCode.ts @@ -28,9 +28,10 @@ import { MatrixClient } from "../../client"; import { IVerificationChannel } from "./request/Channel"; import { MatrixEvent } from "../../models/event"; import { ShowQrCodeCallbacks, VerifierEvent } from "../../crypto-api/verification"; +import { VerificationMethod } from "../../types"; -export const SHOW_QR_CODE_METHOD = "m.qr_code.show.v1"; -export const SCAN_QR_CODE_METHOD = "m.qr_code.scan.v1"; +export const SHOW_QR_CODE_METHOD = VerificationMethod.ShowQrCode; +export const SCAN_QR_CODE_METHOD = VerificationMethod.ScanQrCode; /** @deprecated use VerifierEvent */ export type QrCodeEvent = VerifierEvent; diff --git a/src/crypto/verification/SAS.ts b/src/crypto/verification/SAS.ts index ba92d23489e..7a21d615b67 100644 --- a/src/crypto/verification/SAS.ts +++ b/src/crypto/verification/SAS.ts @@ -34,6 +34,7 @@ import { IContent, MatrixEvent } from "../../models/event"; import { generateDecimalSas } from "./SASDecimal"; import { EventType } from "../../@types/event"; import { EmojiMapping, GeneratedSas, ShowSasCallbacks, VerifierEvent } from "../../crypto-api/verification"; +import { VerificationMethod } from "../../types"; // backwards-compatibility exports export type { @@ -233,7 +234,7 @@ export class SAS extends Base { // eslint-disable-next-line @typescript-eslint/naming-convention public static get NAME(): string { - return "m.sas.v1"; + return VerificationMethod.Sas; } public get events(): string[] { diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 99f70190a6a..2bec6fe281f 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -73,8 +73,14 @@ import { ISignatures } from "../@types/signed"; import { encodeBase64 } from "../base64"; import { OutgoingRequestsManager } from "./OutgoingRequestsManager"; import { PerSessionKeyBackupDownloader } from "./PerSessionKeyBackupDownloader"; - -const ALL_VERIFICATION_METHODS = ["m.sas.v1", "m.qr_code.scan.v1", "m.qr_code.show.v1", "m.reciprocate.v1"]; +import { VerificationMethod } from "../types"; + +const ALL_VERIFICATION_METHODS = [ + VerificationMethod.Sas, + VerificationMethod.ScanQrCode, + VerificationMethod.ShowQrCode, + VerificationMethod.Reciprocate, +]; interface ISignableObject { signatures?: ISignatures; diff --git a/src/rust-crypto/verification.ts b/src/rust-crypto/verification.ts index dde54fd58f6..6d164adeec2 100644 --- a/src/rust-crypto/verification.ts +++ b/src/rust-crypto/verification.ts @@ -35,6 +35,7 @@ import { TypedReEmitter } from "../ReEmitter"; import { MatrixEvent } from "../models/event"; import { EventType, MsgType } from "../@types/event"; import { defer, IDeferred } from "../utils"; +import { VerificationMethod } from "../types"; /** * An incoming, or outgoing, request to verify a user or a device via cross-signing. @@ -230,9 +231,9 @@ export class RustVerificationRequest const verification: RustSdkCryptoJs.Qr | RustSdkCryptoJs.Sas | undefined = this.inner.getVerification(); if (verification instanceof RustSdkCryptoJs.Sas) { - return "m.sas.v1"; + return VerificationMethod.Sas; } else if (verification instanceof RustSdkCryptoJs.Qr) { - return "m.reciprocate.v1"; + return VerificationMethod.Reciprocate; } else { return null; } @@ -336,7 +337,7 @@ export class RustVerificationRequest * @param method - the name of the verification method to use. */ public async startVerification(method: string): Promise { - if (method !== "m.sas.v1") { + if (method !== VerificationMethod.Sas) { throw new Error(`Unsupported verification method ${method}`); } @@ -756,10 +757,10 @@ export class RustSASVerifier extends BaseRustVerifer implem /** For each specced verification method, the rust-side `VerificationMethod` corresponding to it */ const verificationMethodsByIdentifier: Record = { - "m.sas.v1": RustSdkCryptoJs.VerificationMethod.SasV1, - "m.qr_code.scan.v1": RustSdkCryptoJs.VerificationMethod.QrCodeScanV1, - "m.qr_code.show.v1": RustSdkCryptoJs.VerificationMethod.QrCodeShowV1, - "m.reciprocate.v1": RustSdkCryptoJs.VerificationMethod.ReciprocateV1, + [VerificationMethod.Sas]: RustSdkCryptoJs.VerificationMethod.SasV1, + [VerificationMethod.ScanQrCode]: RustSdkCryptoJs.VerificationMethod.QrCodeScanV1, + [VerificationMethod.ShowQrCode]: RustSdkCryptoJs.VerificationMethod.QrCodeShowV1, + [VerificationMethod.Reciprocate]: RustSdkCryptoJs.VerificationMethod.ReciprocateV1, }; /** diff --git a/src/types.ts b/src/types.ts index 97a89002c99..adfd4e5b333 100644 --- a/src/types.ts +++ b/src/types.ts @@ -25,3 +25,33 @@ export type * from "./@types/media"; export * from "./@types/membership"; export type * from "./@types/event"; export type * from "./@types/state_events"; + +/** The different methods for device and user verification */ +export enum VerificationMethod { + /** Short authentication string (emoji or decimals). + * + * @see https://spec.matrix.org/v1.9/client-server-api/#short-authentication-string-sas-verification + */ + Sas = "m.sas.v1", + + /** + * Verification by showing a QR code which is scanned by the other device. + * + * @see https://spec.matrix.org/v1.9/client-server-api/#qr-codes + */ + ShowQrCode = "m.qr_code.show.v1", + + /** + * Verification by scanning a QR code that is shown by the other device. + * + * @see https://spec.matrix.org/v1.9/client-server-api/#qr-codes + */ + ScanQrCode = "m.qr_code.scan.v1", + + /** + * Verification by confirming that we have scanned a QR code. + * + * @see https://spec.matrix.org/v1.9/client-server-api/#qr-codes + */ + Reciprocate = "m.reciprocate.v1", +} From 63d41954534b0f5c34d34d3531e58c92416ad119 Mon Sep 17 00:00:00 2001 From: Johannes Marbach Date: Mon, 25 Mar 2024 10:10:42 +0100 Subject: [PATCH 140/595] Use RoomEvent.MyMembership in auto-join example (#4130) This seems easier / more efficient than listening to all membership events and then filtering by user ID. --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 59f798e6144..0466b88014e 100644 --- a/README.md +++ b/README.md @@ -179,10 +179,10 @@ const matrixClient = sdk.createClient({ ### Automatically join rooms when invited ```javascript -matrixClient.on(RoomMemberEvent.Membership, function (event, member) { - if (member.membership === KnownMembership.Invite && member.userId === myUserId) { - matrixClient.joinRoom(member.roomId).then(function () { - console.log("Auto-joined %s", member.roomId); +matrixClient.on(RoomEvent.MyMembership, function (room, membership, prevMembership) { + if (membership === KnownMembership.Invite) { + matrixClient.joinRoom(room.roomId).then(function () { + console.log("Auto-joined %s", room.roomId); }); } }); From 85a55c79cdf94b557bbf21ae1eaee45be469730e Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 25 Mar 2024 12:21:11 +0000 Subject: [PATCH 141/595] Remove various deprecated methods & re-exports (#4125) --- spec/unit/matrix-client.spec.ts | 2 - spec/unit/models/event.spec.ts | 48 +------------ src/@types/partials.ts | 7 -- src/@types/uia.ts | 4 +- src/client.ts | 75 ++++----------------- src/interactive-auth.ts | 16 ++--- src/models/event.ts | 30 +-------- src/models/room.ts | 2 +- src/models/thread.ts | 5 -- src/oidc/validate.ts | 6 -- src/rust-crypto/OutgoingRequestProcessor.ts | 4 +- 11 files changed, 26 insertions(+), 173 deletions(-) diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index c87ab3177f3..5f0cddda3ce 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -1528,8 +1528,6 @@ describe("MatrixClient", function () { { startOpts: {}, hasThreadSupport: false }, { startOpts: { threadSupport: true }, hasThreadSupport: true }, { startOpts: { threadSupport: false }, hasThreadSupport: false }, - { startOpts: { experimentalThreadSupport: true }, hasThreadSupport: true }, - { startOpts: { experimentalThreadSupport: true, threadSupport: false }, hasThreadSupport: false }, ])("enabled thread support for the SDK instance", async ({ startOpts, hasThreadSupport }) => { await client.startClient(startOpts); expect(client.supportsThreads()).toBe(hasThreadSupport); diff --git a/spec/unit/models/event.spec.ts b/spec/unit/models/event.spec.ts index 0b9416fd871..d308d01395f 100644 --- a/spec/unit/models/event.spec.ts +++ b/spec/unit/models/event.spec.ts @@ -503,52 +503,6 @@ describe("MatrixEvent", () => { default: false, enabled: true, } as IAnnotatedPushRule; - describe("setPushActions()", () => { - it("sets actions on event", () => { - const actions = { notify: false, tweaks: {} }; - const event = new MatrixEvent({ - type: "com.example.test", - content: { - isTest: true, - }, - }); - event.setPushActions(actions); - - expect(event.getPushActions()).toBe(actions); - }); - - it("sets actions to undefined", () => { - const event = new MatrixEvent({ - type: "com.example.test", - content: { - isTest: true, - }, - }); - event.setPushActions(null); - - // undefined is set on state - expect(event.getPushDetails().actions).toBe(undefined); - // but pushActions getter returns null when falsy - expect(event.getPushActions()).toBe(null); - }); - - it("clears existing push rule", () => { - const prevActions = { notify: true, tweaks: { highlight: true } }; - const actions = { notify: false, tweaks: {} }; - const event = new MatrixEvent({ - type: "com.example.test", - content: { - isTest: true, - }, - }); - event.setPushDetails(prevActions, pushRule); - - event.setPushActions(actions); - - // rule is not in event push cache - expect(event.getPushDetails()).toEqual({ actions }); - }); - }); describe("setPushDetails()", () => { it("sets actions and rule on event", () => { @@ -577,7 +531,7 @@ describe("MatrixEvent", () => { }); event.setPushDetails(prevActions, pushRule); - event.setPushActions(actions); + event.setPushDetails(actions); // rule is not in event push cache expect(event.getPushDetails()).toEqual({ actions }); diff --git a/src/@types/partials.ts b/src/@types/partials.ts index 6aaea79963e..abc3363ef68 100644 --- a/src/@types/partials.ts +++ b/src/@types/partials.ts @@ -14,13 +14,6 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ImageInfo } from "./media"; - -/** - * @deprecated use {@link ImageInfo} instead. - */ -export type IImageInfo = ImageInfo; - export enum Visibility { Public = "public", Private = "private", diff --git a/src/@types/uia.ts b/src/@types/uia.ts index 67e7a68edd2..bc10f2dd9cd 100644 --- a/src/@types/uia.ts +++ b/src/@types/uia.ts @@ -14,13 +14,13 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IAuthDict, IAuthData } from "../interactive-auth"; +import { AuthDict, IAuthData } from "../interactive-auth"; /** * Helper type to represent HTTP request body for a UIA enabled endpoint */ export type UIARequest = T & { - auth?: IAuthDict; + auth?: AuthDict; }; /** diff --git a/src/client.ts b/src/client.ts index 3192e144924..8bf27707185 100644 --- a/src/client.ts +++ b/src/client.ts @@ -149,15 +149,7 @@ import { UNSTABLE_MSC3088_PURPOSE, UNSTABLE_MSC3089_TREE_SUBTYPE, } from "./@types/event"; -import { - GuestAccess, - HistoryVisibility, - IdServerUnbindResult, - IImageInfo, - JoinRule, - Preset, - Visibility, -} from "./@types/partials"; +import { GuestAccess, HistoryVisibility, IdServerUnbindResult, JoinRule, Preset, Visibility } from "./@types/partials"; import { EventMapper, eventMapperFor, MapperOpts } from "./event-mapper"; import { randomString } from "./randomstring"; import { BackupManager, IKeyBackup, IKeyBackupCheck, IPreparedKeyBackupVersion, TrustInfo } from "./crypto/backup"; @@ -231,6 +223,7 @@ import { RegisterRequest, RegisterResponse } from "./@types/registration"; import { MatrixRTCSessionManager } from "./matrixrtc/MatrixRTCSessionManager"; import { getRelationsThreadFilter } from "./thread-utils"; import { KnownMembership, Membership } from "./@types/membership"; +import { ImageInfo } from "./@types/media"; export type Store = IStore; @@ -509,11 +502,6 @@ export interface IStartClientOpts { */ clientWellKnownPollPeriod?: number; - /** - * @deprecated use `threadSupport` instead - */ - experimentalThreadSupport?: boolean; - /** * Will organises events in threaded conversations when * a thread relation is encountered @@ -1536,19 +1524,6 @@ export class MatrixClient extends TypedEventEmitter this.logger.info("Sync startup aborted with an error:", e)); if (this.clientOpts.clientWellKnownPollPeriod !== undefined) { @@ -4506,7 +4481,6 @@ export class MatrixClient extends TypedEventEmitter { let content: IPowerLevelsContent | undefined; if (this.clientRunning && this.isInitialSyncComplete()) { @@ -5083,24 +5053,24 @@ export class MatrixClient extends TypedEventEmitter; + public sendImageMessage(roomId: string, url: string, info?: ImageInfo, text?: string): Promise; public sendImageMessage( roomId: string, threadId: string | null, url: string, - info?: IImageInfo, + info?: ImageInfo, text?: string, ): Promise; public sendImageMessage( roomId: string, threadId: string | null, - url?: string | IImageInfo, - info?: IImageInfo | string, + url?: string | ImageInfo, + info?: ImageInfo | string, text = "Image", ): Promise { if (!threadId?.startsWith(EVENT_ID_PREFIX) && threadId !== null) { text = (info as string) || "Image"; - info = url as IImageInfo; + info = url as ImageInfo; url = threadId as string; threadId = null; } @@ -5120,26 +5090,26 @@ export class MatrixClient extends TypedEventEmitter; public sendStickerMessage( roomId: string, threadId: string | null, url: string, - info?: IImageInfo, + info?: ImageInfo, text?: string, ): Promise; public sendStickerMessage( roomId: string, threadId: string | null, - url?: string | IImageInfo, - info?: IImageInfo | string, + url?: string | ImageInfo, + info?: ImageInfo | string, text = "Sticker", ): Promise { if (!threadId?.startsWith(EVENT_ID_PREFIX) && threadId !== null) { text = (info as string) || "Sticker"; - info = url as IImageInfo; + info = url as ImageInfo; url = threadId as string; threadId = null; } @@ -8526,17 +8496,6 @@ export class MatrixClient extends TypedEventEmitter { - const path = utils.encodeUri("/directory/room/$alias", { $alias: roomAlias }); - return this.http.request(Method.Get, path); - } - /** * Get the visibility of a room in the current HS's room directory * @returns Promise which resolves: TODO @@ -8550,7 +8509,7 @@ export class MatrixClient extends TypedEventEmitter; [key: string]: any } | {}; -/** - * Backwards compatible export - * @deprecated in favour of AuthDict - */ -export type IAuthDict = AuthDict; - export class NoAuthFlowFoundError extends Error { public name = "NoAuthFlowFoundError"; @@ -168,7 +162,7 @@ export class NoAuthFlowFoundError extends Error { * * The generic parameter `T` is the type of the response of the endpoint, once it is eventually successful. */ -export type UIAuthCallback = (makeRequest: (authData: IAuthDict | null) => Promise>) => Promise; +export type UIAuthCallback = (makeRequest: (authData: AuthDict | null) => Promise>) => Promise; interface IOpts { /** @@ -340,7 +334,7 @@ export class InteractiveAuth { // another just to check what the status is if (this.submitPromise) return; - let authDict: IAuthDict = {}; + let authDict: AuthDict = {}; if (this.currentStage == EMAIL_STAGE_TYPE) { // The email can be validated out-of-band, but we need to provide the // creds so the HS can go & check it. @@ -410,7 +404,7 @@ export class InteractiveAuth { * in the attemptAuth promise being rejected. This can be set to true * for requests that just poll to see if auth has been completed elsewhere. */ - public async submitAuthDict(authData: IAuthDict, background = false): Promise { + public async submitAuthDict(authData: AuthDict, background = false): Promise { if (!this.attemptAuthDeferred) { throw new Error("submitAuthDict() called before attemptAuth()"); } @@ -431,7 +425,7 @@ export class InteractiveAuth { } // use the sessionid from the last request, if one is present. - let auth: IAuthDict; + let auth: AuthDict; if ((this.data as IAuthData)?.session) { auth = { session: (this.data as IAuthData).session, @@ -515,7 +509,7 @@ export class InteractiveAuth { * This can be set to true for requests that just poll to see if auth has * been completed elsewhere. */ - private async doRequest(auth: IAuthDict | null, background = false): Promise { + private async doRequest(auth: AuthDict | null, background = false): Promise { try { const result = await this.requestCallback(auth, background); this.attemptAuthDeferred!.resolve(result); diff --git a/src/models/event.ts b/src/models/event.ts index 04a60d53272..7c2725cda02 100644 --- a/src/models/event.ts +++ b/src/models/event.ts @@ -1172,10 +1172,6 @@ export class MatrixEvent extends TypedEventEmitter { [[], [], []], ); } else { - // When `experimentalThreadSupport` is disabled treat all events as timelineEvents + // When `threadSupport` is disabled treat all events as timelineEvents return [events as MatrixEvent[], [] as MatrixEvent[], [] as MatrixEvent[]]; } } diff --git a/src/models/thread.ts b/src/models/thread.ts index 8baebba9a18..6db967d4e89 100644 --- a/src/models/thread.ts +++ b/src/models/thread.ts @@ -47,11 +47,6 @@ export type ThreadEventHandlerMap = { [ThreadEvent.Delete]: (thread: Thread) => void; } & EventTimelineSetHandlerMap; -/** - * @deprecated please use ThreadEventHandlerMap instead - */ -export type EventHandlerMap = ThreadEventHandlerMap; - interface IThreadOpts { room: Room; client: MatrixClient; diff --git a/src/oidc/validate.ts b/src/oidc/validate.ts index 38d730ba45d..eabbc2071cf 100644 --- a/src/oidc/validate.ts +++ b/src/oidc/validate.ts @@ -20,12 +20,6 @@ import { OidcMetadata, SigninResponse } from "oidc-client-ts"; import { logger } from "../logger"; import { OidcError } from "./error"; -/** - * re-export for backwards compatibility - * @deprecated use OidcError - */ -export { OidcError as OidcDiscoveryError }; - export type ValidatedIssuerConfig = { authorizationEndpoint: string; tokenEndpoint: string; diff --git a/src/rust-crypto/OutgoingRequestProcessor.ts b/src/rust-crypto/OutgoingRequestProcessor.ts index 8e7e15584d5..26845015417 100644 --- a/src/rust-crypto/OutgoingRequestProcessor.ts +++ b/src/rust-crypto/OutgoingRequestProcessor.ts @@ -29,7 +29,7 @@ import { import { logger } from "../logger"; import { calculateRetryBackoff, IHttpOpts, MatrixHttpApi, Method } from "../http-api"; import { logDuration, QueryDict, sleep } from "../utils"; -import { IAuthDict, UIAuthCallback } from "../interactive-auth"; +import { AuthDict, UIAuthCallback } from "../interactive-auth"; import { UIAResponse } from "../@types/uia"; import { ToDeviceMessageId } from "../@types/event"; @@ -169,7 +169,7 @@ export class OutgoingRequestProcessor { } const parsedBody = JSON.parse(body); - const makeRequest = async (auth: IAuthDict | null): Promise> => { + const makeRequest = async (auth: AuthDict | null): Promise> => { const newBody: Record = { ...parsedBody, }; From 97844f0e47697010247f606c000ac61a4bee3242 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 25 Mar 2024 12:48:49 +0000 Subject: [PATCH 142/595] Improve types for `sendEvent` (#4108) --- spec/integ/crypto/crypto.spec.ts | 5 +- spec/integ/crypto/olm-encryption-spec.ts | 4 +- spec/integ/matrix-client-retrying.spec.ts | 6 +- ...matrix-client-unread-notifications.spec.ts | 2 +- spec/unit/embedded.spec.ts | 6 + spec/unit/matrix-client.spec.ts | 7 +- spec/unit/models/MSC3089TreeSpace.spec.ts | 5 +- src/@types/event.ts | 59 ++++++--- src/@types/events.ts | 119 ++++++++++++++++++ src/client.ts | 41 +++--- src/content-helpers.ts | 14 +-- .../verification/request/InRoomChannel.ts | 8 +- src/models/MSC3089Branch.ts | 14 ++- src/models/MSC3089TreeSpace.ts | 15 ++- src/types.ts | 1 + src/webrtc/call.ts | 40 ++++-- src/webrtc/callEventTypes.ts | 3 +- 17 files changed, 278 insertions(+), 71 deletions(-) create mode 100644 src/@types/events.ts diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 0d348caef8c..55c513a3ad5 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -50,6 +50,7 @@ import { ClientEvent, createClient, CryptoEvent, + HistoryVisibility, IClaimOTKsResult, IContent, IDownloadKeyResult, @@ -59,11 +60,11 @@ import { MatrixClient, MatrixEvent, MatrixEventEvent, + MsgType, PendingEventOrdering, Room, RoomMember, RoomStateEvent, - HistoryVisibility, } from "../../../src/matrix"; import { DeviceInfo } from "../../../src/crypto/deviceinfo"; import { E2EKeyReceiver } from "../../test-utils/E2EKeyReceiver"; @@ -1925,7 +1926,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, expectAliceKeyQuery({ device_keys: { "@other:user": {} }, failures: {} }); aliceClient.on(RoomStateEvent.NewMember, (_e, _s, member: RoomMember) => { if (member.userId == "@other:user") { - aliceClient.sendMessage(testRoomId, { msgtype: "m.text", body: "Hello, World" }); + aliceClient.sendMessage(testRoomId, { msgtype: MsgType.Text, body: "Hello, World" }); } }); diff --git a/spec/integ/crypto/olm-encryption-spec.ts b/spec/integ/crypto/olm-encryption-spec.ts index ff79bf28b21..5977bda74ef 100644 --- a/spec/integ/crypto/olm-encryption-spec.ts +++ b/spec/integ/crypto/olm-encryption-spec.ts @@ -34,7 +34,7 @@ import { logger } from "../../../src/logger"; import * as testUtils from "../../test-utils/test-utils"; import { TestClient } from "../../TestClient"; import { CRYPTO_ENABLED, IClaimKeysRequest, IQueryKeysRequest, IUploadKeysRequest } from "../../../src/client"; -import { ClientEvent, IContent, ISendEventResponse, MatrixClient, MatrixEvent } from "../../../src/matrix"; +import { ClientEvent, IContent, ISendEventResponse, MatrixClient, MatrixEvent, MsgType } from "../../../src/matrix"; import { DeviceInfo } from "../../../src/crypto/deviceinfo"; import { KnownMembership } from "../../../src/@types/membership"; @@ -217,7 +217,7 @@ async function expectBobSendMessageRequest(): Promise { } function sendMessage(client: MatrixClient): Promise { - return client.sendMessage(roomId, { msgtype: "m.text", body: "Hello, World" }); + return client.sendMessage(roomId, { msgtype: MsgType.Text, body: "Hello, World" }); } async function expectSendMessageRequest(httpBackend: TestClient["httpBackend"]): Promise { diff --git a/spec/integ/matrix-client-retrying.spec.ts b/spec/integ/matrix-client-retrying.spec.ts index d62e968a0f7..b78e3c7b445 100644 --- a/spec/integ/matrix-client-retrying.spec.ts +++ b/spec/integ/matrix-client-retrying.spec.ts @@ -16,7 +16,7 @@ limitations under the License. import HttpBackend from "matrix-mock-request"; -import { EventStatus, RoomEvent, MatrixClient, MatrixScheduler } from "../../src/matrix"; +import { EventStatus, MatrixClient, MatrixScheduler, MsgType, RoomEvent } from "../../src/matrix"; import { Room } from "../../src/models/room"; import { TestClient } from "../TestClient"; @@ -60,7 +60,7 @@ describe("MatrixClient retrying", function () { // send a couple of events; the second will be queued const p1 = client! .sendMessage(roomId, { - msgtype: "m.text", + msgtype: MsgType.Text, body: "m1", }) .then( @@ -77,7 +77,7 @@ describe("MatrixClient retrying", function () { // never gets resolved. // https://github.com/matrix-org/matrix-js-sdk/issues/496 client!.sendMessage(roomId, { - msgtype: "m.text", + msgtype: MsgType.Text, body: "m2", }); diff --git a/spec/integ/matrix-client-unread-notifications.spec.ts b/spec/integ/matrix-client-unread-notifications.spec.ts index 7b35cbbf582..8518d086432 100644 --- a/spec/integ/matrix-client-unread-notifications.spec.ts +++ b/spec/integ/matrix-client-unread-notifications.spec.ts @@ -152,7 +152,7 @@ describe("MatrixClient syncing", () => { await client!.sendEvent(roomId, EventType.Reaction, { "m.relates_to": { rel_type: RelationType.Annotation, - event_id: threadReply.getId(), + event_id: threadReply.getId()!, key: "", }, }); diff --git a/spec/unit/embedded.spec.ts b/spec/unit/embedded.spec.ts index b42acfff1df..d9ac5a62f0b 100644 --- a/spec/unit/embedded.spec.ts +++ b/spec/unit/embedded.spec.ts @@ -81,6 +81,12 @@ declare module "../../src/types" { hello: string; }; } + + interface TimelineEvents { + "org.matrix.rageshake_request": { + request_id: number; + }; + } } describe("RoomWidgetClient", () => { diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index 5f0cddda3ce..62b479f89e4 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -22,6 +22,7 @@ import { Filter } from "../../src/filter"; import { DEFAULT_TREE_POWER_LEVELS_TEMPLATE } from "../../src/models/MSC3089TreeSpace"; import { EventType, + MsgType, RelationType, RoomCreateTypeField, RoomType, @@ -73,6 +74,7 @@ import { StubStore } from "../../src/store/stub"; import { SecretStorageKeyDescriptionAesV1, ServerSideSecretStorageImpl } from "../../src/secret-storage"; import { CryptoBackend } from "../../src/common-crypto/CryptoBackend"; import { KnownMembership } from "../../src/@types/membership"; +import { RoomMessageEventContent } from "../../src/@types/events"; jest.useFakeTimers(); @@ -567,7 +569,7 @@ describe("MatrixClient", function () { describe("sendEvent", () => { const roomId = "!room:example.org"; const body = "This is the body"; - const content = { body }; + const content = { body, msgtype: MsgType.Text } satisfies RoomMessageEventContent; it("overload without threadId works", async () => { const eventId = "$eventId:example.org"; @@ -662,12 +664,13 @@ describe("MatrixClient", function () { const content = { body, + "msgtype": MsgType.Text, "m.relates_to": { "m.in_reply_to": { event_id: "$other:event", }, }, - }; + } satisfies RoomMessageEventContent; const room = new Room(roomId, client, userId); mocked(store.getRoom).mockReturnValue(room); diff --git a/spec/unit/models/MSC3089TreeSpace.spec.ts b/spec/unit/models/MSC3089TreeSpace.spec.ts index 8f000d84496..5a63c282c5a 100644 --- a/spec/unit/models/MSC3089TreeSpace.spec.ts +++ b/spec/unit/models/MSC3089TreeSpace.spec.ts @@ -26,6 +26,7 @@ import { import { DEFAULT_ALPHABET } from "../../../src/utils"; import { MatrixError } from "../../../src/http-api"; import { KnownMembership } from "../../../src/@types/membership"; +import { EncryptedFile } from "../../../src/@types/media"; describe("MSC3089TreeSpace", () => { let client: MatrixClient; @@ -947,7 +948,7 @@ describe("MSC3089TreeSpace", () => { const fileInfo = { mimetype: "text/plain", // other fields as required by encryption, but ignored here - }; + } as unknown as EncryptedFile; const fileEventId = "$file"; const fileName = "My File.txt"; const fileContents = "This is a test file"; @@ -1007,7 +1008,7 @@ describe("MSC3089TreeSpace", () => { const fileInfo = { mimetype: "text/plain", // other fields as required by encryption, but ignored here - }; + } as unknown as EncryptedFile; const fileEventId = "$file"; const fileName = "My File.txt"; const fileContents = "This is a test file"; diff --git a/src/@types/event.ts b/src/@types/event.ts index 6f11720a2dd..0a144a352df 100644 --- a/src/@types/event.ts +++ b/src/@types/event.ts @@ -41,8 +41,23 @@ import { IGroupCallRoomState, } from "../webrtc/groupCall"; import { MSC3089EventContent } from "../models/MSC3089Branch"; -import { M_BEACON_INFO, MBeaconInfoEventContent } from "./beacon"; +import { M_BEACON, M_BEACON_INFO, MBeaconEventContent, MBeaconInfoEventContent } from "./beacon"; import { XOR } from "./common"; +import { ReactionEventContent, RoomMessageEventContent, StickerEventContent } from "./events"; +import { + MCallAnswer, + MCallBase, + MCallCandidates, + MCallHangupReject, + MCallInviteNegotiate, + MCallReplacesEvent, + MCallSelectAnswer, + SDPStreamMetadata, + SDPStreamMetadataKey, +} from "../webrtc/callEventTypes"; +import { EncryptionKeysEventContent, ICallNotifyContent } from "../matrixrtc/types"; +import { EncryptedFile } from "./media"; +import { M_POLL_END, M_POLL_START, PollEndEventContent, PollStartEventContent } from "./polls"; export enum EventType { // Room state events @@ -283,21 +298,37 @@ export const LOCAL_NOTIFICATION_SETTINGS_PREFIX = new UnstableValue( */ export const UNSIGNED_THREAD_ID_FIELD = new UnstableValue("thread_id", "org.matrix.msc4023.thread_id"); -export interface IEncryptedFile { - url: string; - mimetype?: string; - key: { - alg: string; - key_ops: string[]; // eslint-disable-line camelcase - kty: string; - k: string; - ext: boolean; - }; - iv: string; - hashes: { [alg: string]: string }; - v: string; +/** + * @deprecated in favour of {@link EncryptedFile} + */ +export type IEncryptedFile = EncryptedFile; + +/** + * Mapped type from event type to content type for all specified non-state room events. + */ +export interface TimelineEvents { + [EventType.RoomMessage]: RoomMessageEventContent; + [EventType.Sticker]: StickerEventContent; + [EventType.Reaction]: ReactionEventContent; + [EventType.CallReplaces]: MCallReplacesEvent; + [EventType.CallAnswer]: MCallAnswer; + [EventType.CallSelectAnswer]: MCallSelectAnswer; + [EventType.CallNegotiate]: Omit; + [EventType.CallInvite]: MCallInviteNegotiate; + [EventType.CallCandidates]: MCallCandidates; + [EventType.CallHangup]: MCallHangupReject; + [EventType.CallReject]: MCallHangupReject; + [EventType.CallSDPStreamMetadataChangedPrefix]: MCallBase & { [SDPStreamMetadataKey]: SDPStreamMetadata }; + [EventType.CallEncryptionKeysPrefix]: EncryptionKeysEventContent; + [EventType.CallNotify]: ICallNotifyContent; + [M_BEACON.name]: MBeaconEventContent; + [M_POLL_START.name]: PollStartEventContent; + [M_POLL_END.name]: PollEndEventContent; } +/** + * Mapped type from event type to content type for all specified room state events. + */ export interface StateEvents { [EventType.RoomCanonicalAlias]: RoomCanonicalAliasEventContent; [EventType.RoomCreate]: RoomCreateEventContent; diff --git a/src/@types/events.ts b/src/@types/events.ts new file mode 100644 index 00000000000..59c41d2018c --- /dev/null +++ b/src/@types/events.ts @@ -0,0 +1,119 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { MsgType, RelationType } from "./event"; +import { FileInfo, ImageInfo, MediaEventContent } from "./media"; +import { XOR } from "./common"; + +interface BaseTimelineEvent { + "body": string; + "m.mentions"?: { + user_ids?: string[]; + room?: boolean; + }; +} + +interface ReplyEvent { + "m.relates_to"?: { + "m.in_reply_to"?: { + event_id: string; + }; + }; +} + +interface NoRelationEvent { + "m.new_content"?: never; + "m.relates_to"?: never; +} + +/** + * Partial content format of timeline events with rel_type `m.replace` + * + * @see https://spec.matrix.org/v1.9/client-server-api/#event-replacements + */ +export interface ReplacementEvent { + "m.new_content": T; + "m.relates_to": { + event_id: string; + rel_type: RelationType.Replace; + }; +} + +/** + * Partial content format of timeline events with rel_type other than `m.replace` + * + * @see https://spec.matrix.org/v1.9/client-server-api/#forming-relationships-between-events + */ +export interface RelationEvent { + "m.new_content"?: never; + "m.relates_to": { + event_id: string; + rel_type: Exclude; + }; +} + +/** + * Content format of timeline events with type `m.room.message` and `msgtype` `m.text`, `m.emote`, or `m.notice` + * + * @see https://spec.matrix.org/v1.9/client-server-api/#mroommessage + */ +export interface RoomMessageTextEventContent extends BaseTimelineEvent { + msgtype: MsgType.Text | MsgType.Emote | MsgType.Notice; + format?: "org.matrix.custom.html"; + formatted_body?: string; +} + +/** + * Content format of timeline events with type `m.room.message` and `msgtype` `m.location` + * + * @see https://spec.matrix.org/v1.9/client-server-api/#mlocation + */ +export interface RoomMessageLocationEventContent extends BaseTimelineEvent { + body: string; + geo_uri: string; + info: Pick; + msgtype: MsgType.Location; +} + +type MessageEventContent = RoomMessageTextEventContent | RoomMessageLocationEventContent | MediaEventContent; + +export type RoomMessageEventContent = BaseTimelineEvent & + XOR, RelationEvent>, XOR> & + MessageEventContent; + +/** + * Content format of timeline events with type `m.sticker` + * + * @see https://spec.matrix.org/v1.9/client-server-api/#msticker + */ +export interface StickerEventContent extends BaseTimelineEvent { + body: string; + info: ImageInfo; + url: string; +} + +/** + * Content format of timeline events with type `m.reaction` + * + * @see https://spec.matrix.org/v1.9/client-server-api/#mreaction + */ +export interface ReactionEventContent { + "m.relates_to": { + event_id: string; + key: string; + rel_type: RelationType.Annotation; + }; +} diff --git a/src/client.ts b/src/client.ts index 8bf27707185..6de5cd5d729 100644 --- a/src/client.ts +++ b/src/client.ts @@ -145,6 +145,7 @@ import { RoomCreateTypeField, RoomType, StateEvents, + TimelineEvents, UNSTABLE_MSC3088_ENABLED, UNSTABLE_MSC3088_PURPOSE, UNSTABLE_MSC3089_TREE_SUBTYPE, @@ -223,6 +224,7 @@ import { RegisterRequest, RegisterResponse } from "./@types/registration"; import { MatrixRTCSessionManager } from "./matrixrtc/MatrixRTCSessionManager"; import { getRelationsThreadFilter } from "./thread-utils"; import { KnownMembership, Membership } from "./@types/membership"; +import { RoomMessageEventContent, StickerEventContent } from "./@types/events"; import { ImageInfo } from "./@types/media"; export type Store = IStore; @@ -4551,12 +4553,17 @@ export class MatrixClient extends TypedEventEmitter; - public sendEvent( + public sendEvent( + roomId: string, + eventType: K, + content: TimelineEvents[K], + txnId?: string, + ): Promise; + public sendEvent( roomId: string, threadId: string | null, - eventType: string, - content: IContent, + eventType: K, + content: TimelineEvents[K], txnId?: string, ): Promise; public sendEvent( @@ -4943,27 +4950,27 @@ export class MatrixClient extends TypedEventEmitter; + public sendMessage(roomId: string, content: RoomMessageEventContent, txnId?: string): Promise; public sendMessage( roomId: string, threadId: string | null, - content: IContent, + content: RoomMessageEventContent, txnId?: string, ): Promise; public sendMessage( roomId: string, - threadId: string | null | IContent, - content?: IContent | string, + threadId: string | null | RoomMessageEventContent, + content?: RoomMessageEventContent | string, txnId?: string, ): Promise { if (typeof threadId !== "string" && threadId !== null) { txnId = content as string; - content = threadId as IContent; + content = threadId as RoomMessageEventContent; threadId = null; } - const eventType: string = EventType.RoomMessage; - const sendContent: IContent = content as IContent; + const eventType = EventType.RoomMessage; + const sendContent = content as RoomMessageEventContent; return this.sendEvent(roomId, threadId as string | null, eventType, sendContent, txnId); } @@ -5076,10 +5083,10 @@ export class MatrixClient extends TypedEventEmitter { + public async getFileInfo(): Promise<{ info: EncryptedFile; httpUrl: string }> { const event = await this.getFileEvent(); const file = event.getOriginalContent()["file"]; @@ -186,7 +194,7 @@ export class MSC3089Branch { public async createNewVersion( name: string, encryptedContents: FileType, - info: Partial, + info: EncryptedFile, additionalContent?: IContent, ): Promise { const fileEventResponse = await this.directory.createFile(name, encryptedContents, info, { diff --git a/src/models/MSC3089TreeSpace.ts b/src/models/MSC3089TreeSpace.ts index 3890afeb77e..76aae65588c 100644 --- a/src/models/MSC3089TreeSpace.ts +++ b/src/models/MSC3089TreeSpace.ts @@ -17,7 +17,7 @@ limitations under the License. import promiseRetry from "p-retry"; import { MatrixClient } from "../client"; -import { EventType, IEncryptedFile, MsgType, UNSTABLE_MSC3089_BRANCH, UNSTABLE_MSC3089_LEAF } from "../@types/event"; +import { EventType, MsgType, UNSTABLE_MSC3089_BRANCH, UNSTABLE_MSC3089_LEAF } from "../@types/event"; import { Room } from "./room"; import { logger } from "../logger"; import { IContent, MatrixEvent } from "./event"; @@ -35,6 +35,7 @@ import { ISendEventResponse } from "../@types/requests"; import { FileType } from "../http-api"; import { KnownMembership } from "../@types/membership"; import { RoomPowerLevelsEventContent, SpaceChildEventContent } from "../@types/state_events"; +import { EncryptedFile, FileContent } from "../@types/media"; /** * The recommended defaults for a tree space's power levels. Note that this @@ -79,6 +80,12 @@ export enum TreePermissions { Owner = "owner", // "Admin" or PL100 } +declare module "../@types/media" { + interface FileContent { + [UNSTABLE_MSC3089_LEAF.name]?: {}; + } +} + /** * Represents a [MSC3089](https://github.com/matrix-org/matrix-doc/pull/3089) * file tree Space. Note that this is UNSTABLE and subject to breaking changes @@ -502,7 +509,7 @@ export class MSC3089TreeSpace { public async createFile( name: string, encryptedContents: FileType, - info: Partial, + info: EncryptedFile, additionalContent?: IContent, ): Promise { const { content_uri: mxc } = await this.client.uploadContent(encryptedContents, { @@ -510,7 +517,7 @@ export class MSC3089TreeSpace { }); info.url = mxc; - const fileContent = { + const fileContent: FileContent = { msgtype: MsgType.File, body: name, url: mxc, @@ -529,7 +536,7 @@ export class MSC3089TreeSpace { ...additionalContent, ...fileContent, [UNSTABLE_MSC3089_LEAF.name]: {}, - }); + } as FileContent); await this.client.sendStateEvent( this.roomId, diff --git a/src/types.ts b/src/types.ts index adfd4e5b333..c1469b17062 100644 --- a/src/types.ts +++ b/src/types.ts @@ -24,6 +24,7 @@ limitations under the License. export type * from "./@types/media"; export * from "./@types/membership"; export type * from "./@types/event"; +export type * from "./@types/events"; export type * from "./@types/state_events"; /** The different methods for device and user verification */ diff --git a/src/webrtc/call.ts b/src/webrtc/call.ts index 92b4862de1c..45d35f60c9f 100644 --- a/src/webrtc/call.ts +++ b/src/webrtc/call.ts @@ -26,8 +26,8 @@ import { parse as parseSdp, write as writeSdp } from "sdp-transform"; import { logger } from "../logger"; import { checkObjectHasKeys, isNullOrUndefined, recursivelyAssign } from "../utils"; -import { IContent, MatrixEvent } from "../models/event"; -import { EventType, ToDeviceMessageId } from "../@types/event"; +import { MatrixEvent } from "../models/event"; +import { EventType, TimelineEvents, ToDeviceMessageId } from "../@types/event"; import { RoomMember } from "../models/room-member"; import { randomString } from "../randomstring"; import { @@ -293,13 +293,24 @@ function getCodecParamMods(isPtt: boolean): CodecParamsMod[] { return mods; } +type CallEventType = + | EventType.CallReplaces + | EventType.CallAnswer + | EventType.CallSelectAnswer + | EventType.CallNegotiate + | EventType.CallInvite + | EventType.CallCandidates + | EventType.CallHangup + | EventType.CallReject + | EventType.CallSDPStreamMetadataChangedPrefix; + export interface VoipEvent { type: "toDevice" | "sendEvent"; eventType: string; userId?: string; opponentDeviceId?: string; roomId?: string; - content: Record; + content: TimelineEvents[CallEventType]; } /** @@ -406,7 +417,7 @@ export class MatrixCall extends TypedEventEmitter(); + private remoteCandidateBuffer = new Map(); private remoteAssertedIdentity?: AssertedIdentity; private remoteSDPStreamMetadata?: SDPStreamMetadata; @@ -1156,7 +1167,7 @@ export class MatrixCall extends TypedEventEmitter = {}; // Don't send UserHangup reason to older clients if ((this.opponentVersion && this.opponentVersion !== 0) || reason !== CallErrorCode.UserHangup) { content["reason"] = reason; @@ -1916,7 +1927,7 @@ export class MatrixCall extends TypedEventEmitter { - const realContent = Object.assign({}, content, { + private async sendVoipEvent>( + eventType: K, + content: Omit, + ): Promise { + const realContent = { + ...content, version: VOIP_PROTO_VERSION, call_id: this.callId, party_id: this.ourPartyId, conf_id: this.groupCallId, - }); + } as TimelineEvents[K]; if (this.opponentDeviceId) { const toDeviceSeq = this.toDeviceSeq++; @@ -2729,7 +2745,9 @@ export class MatrixCall extends TypedEventEmitter candidate.toJSON()) }; + const content: Pick = { + candidates: candidates.map((candidate) => candidate.toJSON()), + }; if (this.candidatesEnded) { // If there are no more candidates, signal this by adding an empty string candidate content.candidates.push({ @@ -2923,7 +2941,7 @@ export class MatrixCall extends TypedEventEmitter { + private async addIceCandidates(candidates: RTCIceCandidate[] | MCallCandidates["candidates"]): Promise { for (const candidate of candidates) { if ( (candidate.sdpMid === null || candidate.sdpMid === undefined) && diff --git a/src/webrtc/callEventTypes.ts b/src/webrtc/callEventTypes.ts index f06ed5b0db7..0be2b2d4d8a 100644 --- a/src/webrtc/callEventTypes.ts +++ b/src/webrtc/callEventTypes.ts @@ -34,6 +34,7 @@ export interface CallReplacesTarget { export interface MCallBase { call_id: string; + conf_id?: string; version: string | number; party_id?: string; sender_session_id?: string; @@ -82,7 +83,7 @@ export interface MCAllAssertedIdentity extends MCallBase { } export interface MCallCandidates extends MCallBase { - candidates: RTCIceCandidate[]; + candidates: Omit[]; } export interface MCallHangupReject extends MCallBase { From 0b290fffa19f4e7d78aded264455490e3b37c0c8 Mon Sep 17 00:00:00 2001 From: Gabri <56839513+galash13@users.noreply.github.com> Date: Mon, 25 Mar 2024 14:58:38 +0100 Subject: [PATCH 143/595] Improve types for IPowerLevelsContent and hasSufficientPowerLevelFor (#4128) Signed-off-by: Gabriele Messina <56839513+galash13@users.noreply.github.com> --- src/models/room-state.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/models/room-state.ts b/src/models/room-state.ts index 08026dc3357..745b2a5aa44 100644 --- a/src/models/room-state.ts +++ b/src/models/room-state.ts @@ -53,6 +53,7 @@ enum OobStatus { export interface IPowerLevelsContent { users?: Record; events?: Record; + notifications?: Partial>; // eslint-disable-next-line camelcase users_default?: number; // eslint-disable-next-line camelcase @@ -60,6 +61,7 @@ export interface IPowerLevelsContent { // eslint-disable-next-line camelcase state_default?: number; ban?: number; + invite?: number; kick?: number; redact?: number; } @@ -130,6 +132,8 @@ export type RoomStateEventHandlerMap = { type EmittedEvents = RoomStateEvent | BeaconEvent; type EventHandlerMap = RoomStateEventHandlerMap & BeaconEventHandlerMap; +type KeysMatching = { [K in keyof T]-?: T[K] extends V ? K : never }[keyof T]; + export class RoomState extends TypedEventEmitter { public readonly reEmitter = new TypedReEmitter(this); private sentinels: Record = {}; // userId: RoomMember @@ -800,7 +804,10 @@ export class RoomState extends TypedEventEmitter * @param powerLevel - The power level of the member * @returns true if the given power level is sufficient */ - public hasSufficientPowerLevelFor(action: "ban" | "kick" | "redact", powerLevel: number): boolean { + public hasSufficientPowerLevelFor( + action: KeysMatching, number>, + powerLevel: number, + ): boolean { const powerLevelsEvent = this.getStateEvents(EventType.RoomPowerLevels, ""); let powerLevels: IPowerLevelsContent = {}; From 9f1d0c389634ce592931a7515c6c39c7a2b9c21a Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Mon, 25 Mar 2024 14:10:58 +0000 Subject: [PATCH 144/595] Add new `decryptExistingEvent` test helper (#4133) * grammar fix * IEncryptionResult -> EncryptionResult These are the same thing; the former is the old name. * Support setting event IDs * Helper for decrypting existing decryption failures --- spec/unit/testing.spec.ts | 31 +++++++++++++++++- src/testing.ts | 67 +++++++++++++++++++++++++++------------ 2 files changed, 76 insertions(+), 22 deletions(-) diff --git a/spec/unit/testing.spec.ts b/spec/unit/testing.spec.ts index 49181b98b44..32d24a47e0b 100644 --- a/spec/unit/testing.spec.ts +++ b/spec/unit/testing.spec.ts @@ -14,7 +14,12 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { mkDecryptionFailureMatrixEvent, mkEncryptedMatrixEvent, mkMatrixEvent } from "../../src/testing"; +import { + decryptExistingEvent, + mkDecryptionFailureMatrixEvent, + mkEncryptedMatrixEvent, + mkMatrixEvent, +} from "../../src/testing"; import { EventType } from "../../src"; import { DecryptionFailureCode } from "../../src/crypto-api"; @@ -88,4 +93,28 @@ describe("testing", () => { expect(event.isState()).toBe(false); }); }); + + describe("decryptExistingEvent", () => { + it("decrypts an event", async () => { + const event = await mkDecryptionFailureMatrixEvent({ + sender: "@alice:test", + roomId: "!test:room", + code: DecryptionFailureCode.UNKNOWN_ERROR, + msg: "blah", + }); + + expect(event.isEncrypted()).toBe(true); + expect(event.isDecryptionFailure()).toBe(true); + await decryptExistingEvent(event, { + plainContent: { body: "blah" }, + plainType: "m.room.test", + }); + + expect(event.isEncrypted()).toBe(true); + expect(event.isDecryptionFailure()).toBe(false); + expect(event.decryptionFailureReason).toBe(null); + expect(event.getContent()).toEqual({ body: "blah" }); + expect(event.getType()).toEqual("m.room.test"); + }); + }); }); diff --git a/src/testing.ts b/src/testing.ts index 0a320da69ae..cce36494884 100644 --- a/src/testing.ts +++ b/src/testing.ts @@ -17,7 +17,7 @@ limitations under the License. /** * This file is a secondary entrypoint for the js-sdk library, exposing utilities which might be useful for writing tests. * - * In general it should not be included in runtime applications. + * In general, it should not be included in runtime applications. * * @packageDocumentation */ @@ -25,9 +25,9 @@ limitations under the License. import { IContent, IEvent, IUnsigned, MatrixEvent } from "./models/event"; import { RoomMember } from "./models/room-member"; import { EventType } from "./@types/event"; -import { IEventDecryptionResult } from "./@types/crypto"; import { DecryptionError } from "./crypto/algorithms"; import { DecryptionFailureCode } from "./crypto-api"; +import { EventDecryptionResult } from "./common-crypto/CryptoBackend"; /** * Create a {@link MatrixEvent}. @@ -102,32 +102,19 @@ export async function mkEncryptedMatrixEvent(opts: { /** The content the event will have, once it has been decrypted. */ plainContent: IContent; -}): Promise { - // we construct an event which has been decrypted by stubbing out CryptoBackend.decryptEvent and then - // calling MatrixEvent.attemptDecryption. + /** Optional `event_id` for the event. If provided will be used as event ID; else an ID is generated. */ + eventId?: string; +}): Promise { const mxEvent = mkMatrixEvent({ type: EventType.RoomMessageEncrypted, roomId: opts.roomId, sender: opts.sender, content: { algorithm: "m.megolm.v1.aes-sha2" }, + eventId: opts.eventId, }); - const decryptionResult: IEventDecryptionResult = { - claimedEd25519Key: "", - clearEvent: { - type: opts.plainType, - content: opts.plainContent, - }, - forwardingCurve25519KeyChain: [], - senderCurve25519Key: "", - untrusted: false, - }; - - const mockCrypto = { - decryptEvent: async (_ev): Promise => decryptionResult, - } as Parameters[0]; - await mxEvent.attemptDecryption(mockCrypto); + await decryptExistingEvent(mxEvent, { plainType: opts.plainType, plainContent: opts.plainContent }); return mxEvent; } @@ -148,19 +135,57 @@ export async function mkDecryptionFailureMatrixEvent(opts: { /** A textual reason for the failure */ msg: string; + + /** Optional `event_id` for the event. If provided will be used as event ID; else an ID is generated. */ + eventId?: string; }): Promise { const mxEvent = mkMatrixEvent({ type: EventType.RoomMessageEncrypted, roomId: opts.roomId, sender: opts.sender, content: { algorithm: "m.megolm.v1.aes-sha2" }, + eventId: opts.eventId, }); const mockCrypto = { - decryptEvent: async (_ev): Promise => { + decryptEvent: async (_ev): Promise => { throw new DecryptionError(opts.code, opts.msg); }, } as Parameters[0]; await mxEvent.attemptDecryption(mockCrypto); return mxEvent; } + +/** + * Given an event previously returned by {@link mkDecryptionFailureMatrixEvent}, simulate a successful re-decryption + * attempt. + * + * @param mxEvent - The event that will be decrypted. + * @param opts - New data for the successful decryption. + */ +export async function decryptExistingEvent( + mxEvent: MatrixEvent, + opts: { + /** The type the event will have, once it has been decrypted. */ + plainType: EventType | string; + + /** The content the event will have, once it has been decrypted. */ + plainContent: IContent; + }, +): Promise { + const decryptionResult: EventDecryptionResult = { + claimedEd25519Key: "", + clearEvent: { + type: opts.plainType, + content: opts.plainContent, + }, + forwardingCurve25519KeyChain: [], + senderCurve25519Key: "", + untrusted: false, + }; + + const mockCrypto = { + decryptEvent: async (_ev): Promise => decryptionResult, + } as Parameters[0]; + await mxEvent.attemptDecryption(mockCrypto); +} From 2da6c0c6053bb9e40df5f86208ac44cdff8483ac Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 26 Mar 2024 16:25:15 +0000 Subject: [PATCH 145/595] v31.6.0 --- CHANGELOG.md | 16 ++++++++++++++++ package.json | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ad9c4ad20b..93f940a29b4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,19 @@ +Changes in [31.6.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.6.0) (2024-03-26) +================================================================================================== +## ✨ Features + +* Introduce Membership TS type (take 2) ([#4107](https://github.com/matrix-org/matrix-js-sdk/pull/4107)). Contributed by @andybalaam. +* fix automatic DM avatar with functional members ([#4017](https://github.com/matrix-org/matrix-js-sdk/pull/4017)). Contributed by @HarHarLinks. +* Export types describing all specced media event formats ([#4092](https://github.com/matrix-org/matrix-js-sdk/pull/4092)). Contributed by @t3chguy. +* Add `.m.rule.is_room_mention` push rule to DEFAULT\_OVERRIDE\_RULES ([#4100](https://github.com/matrix-org/matrix-js-sdk/pull/4100)). Contributed by @t3chguy. +* Make sending ContentLoaded optional for a widgetClient ([#4086](https://github.com/matrix-org/matrix-js-sdk/pull/4086)). Contributed by @toger5. + +## 🐛 Bug Fixes + +* Migrate own identity local trust to rust crypto ([#4090](https://github.com/matrix-org/matrix-js-sdk/pull/4090)). Contributed by @BillCarsonFr. +* Fix race condition with sliding sync extensions ([#4089](https://github.com/matrix-org/matrix-js-sdk/pull/4089)). Contributed by @zzorba. + + Changes in [31.5.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.5.0) (2024-03-12) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index 36607aa8379..2036aae4c5b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.6.0-rc.0", + "version": "31.6.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 706002cdcb4933dc728987dddf0d5dd297b330dc Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 26 Mar 2024 16:26:09 +0000 Subject: [PATCH 146/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 2036aae4c5b..a6a98623191 100644 --- a/package.json +++ b/package.json @@ -30,8 +30,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -131,6 +131,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From 1ed082f3d4fdfa7a1f96208c561cb72bb7e1f797 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 28 Mar 2024 11:58:52 +0000 Subject: [PATCH 147/595] Fix merging of default push rules Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/pushprocessor.spec.ts | 138 ++++++++++++++++++++++++++++++-- src/pushprocessor.ts | 45 +++++++---- 2 files changed, 164 insertions(+), 19 deletions(-) diff --git a/spec/unit/pushprocessor.spec.ts b/spec/unit/pushprocessor.spec.ts index 90d2180361b..136ecc56c5e 100644 --- a/spec/unit/pushprocessor.spec.ts +++ b/spec/unit/pushprocessor.spec.ts @@ -1,6 +1,16 @@ import * as utils from "../test-utils/test-utils"; import { IActionsObject, PushProcessor } from "../../src/pushprocessor"; -import { ConditionKind, EventType, IContent, MatrixClient, MatrixEvent, PushRuleActionName, RuleId } from "../../src"; +import { + ConditionKind, + EventType, + IContent, + IPushRule, + MatrixClient, + MatrixEvent, + PushRuleActionName, + RuleId, + TweakName, +} from "../../src"; import { mockClientMethodsUser } from "../test-utils/client"; describe("NotificationService", function () { @@ -12,21 +22,21 @@ describe("NotificationService", function () { let pushProcessor: PushProcessor; - const msc3914RoomCallRule = { + const msc3914RoomCallRule: IPushRule = { rule_id: ".org.matrix.msc3914.rule.room.call", default: true, enabled: true, conditions: [ { - kind: "event_match", + kind: ConditionKind.EventMatch, key: "type", pattern: "org.matrix.msc3401.call", }, { - kind: "call_started", + kind: ConditionKind.CallStarted, }, ], - actions: ["notify", { set_tweak: "sound", value: "default" }], + actions: [PushRuleActionName.Notify, { set_tweak: TweakName.Sound, value: "default" }], }; let matrixClient: MatrixClient; @@ -188,6 +198,108 @@ describe("NotificationService", function () { }); it("should add default rules in the correct order", () => { + matrixClient.pushRules = PushProcessor.rewriteDefaultRules({ + device: {}, + global: { + content: [], + override: [ + { + rule_id: ".m.rule.master", + default: true, + enabled: false, + conditions: [], + actions: [], + }, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Sound, + value: "default", + }, + { + set_tweak: TweakName.Highlight, + }, + ], + enabled: true, + pattern: "coffee", + rule_id: "coffee", + default: false, + }, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Sound, + value: "default", + }, + { + set_tweak: TweakName.Highlight, + }, + ], + conditions: [ + { + kind: ConditionKind.ContainsDisplayName, + }, + ], + enabled: true, + default: true, + rule_id: ".m.rule.contains_display_name", + }, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Sound, + value: "default", + }, + ], + conditions: [ + { + is: "2", + kind: ConditionKind.RoomMemberCount, + }, + ], + enabled: true, + rule_id: ".m.rule.room_one_to_one", + default: true, + }, + ], + room: [], + sender: [], + underride: [ + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Highlight, + value: false, + }, + ], + conditions: [], + enabled: true, + rule_id: "user-defined", + default: false, + }, + msc3914RoomCallRule, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Highlight, + value: false, + }, + ], + conditions: [], + enabled: true, + rule_id: ".m.rule.fallback", + default: true, + }, + ], + }, + }); + pushProcessor = new PushProcessor(matrixClient); + // By the time we get here, we expect the PushProcessor to have merged the new .m.rule.is_room_mention rule into the existing list of rules. // Check that has happened, and that it is in the right place. const containsDisplayNameRuleIdx = matrixClient.pushRules?.global.override?.findIndex( @@ -205,6 +317,22 @@ describe("NotificationService", function () { expect(containsDisplayNameRuleIdx).toBeLessThan(isRoomMentionRuleIdx!); expect(isRoomMentionRuleIdx).toBeLessThan(mReactionRuleIdx!); + + expect(matrixClient.pushRules?.global.override?.map((r) => r.rule_id)).toEqual([ + ".m.rule.master", + "coffee", + ".m.rule.contains_display_name", + ".m.rule.room_one_to_one", + ".m.rule.is_room_mention", + ".m.rule.reaction", + ".org.matrix.msc3786.rule.room.server_acl", + ]); + expect(matrixClient.pushRules?.global.underride?.map((r) => r.rule_id)).toEqual([ + "user-defined", + ".org.matrix.msc3914.rule.room.call", + // Assert that unknown default rules are maintained + ".m.rule.fallback", + ]); }); // User IDs diff --git a/src/pushprocessor.ts b/src/pushprocessor.ts index 162c36dc9bd..b13cfc0ca42 100644 --- a/src/pushprocessor.ts +++ b/src/pushprocessor.ts @@ -25,8 +25,8 @@ import { ICallStartedPrefixCondition, IContainsDisplayNameCondition, IEventMatchCondition, - IEventPropertyIsCondition, IEventPropertyContainsCondition, + IEventPropertyIsCondition, IPushRule, IPushRules, IRoomMemberCountCondition, @@ -49,6 +49,10 @@ const RULEKINDS_IN_ORDER = [ PushRuleKind.Underride, ]; +const UserDefinedRules = Symbol("UserDefinedRules"); + +type OrderedRules = Array; + // The default override rules to apply to the push rules that arrive from the server. // We do this for two reasons: // 1. Synapse is unlikely to send us the push rule in an incremental sync - see @@ -115,8 +119,9 @@ const DEFAULT_OVERRIDE_RULES: Record = { }, }; -const EXPECTED_DEFAULT_OVERRIDE_RULE_IDS = [ +const EXPECTED_DEFAULT_OVERRIDE_RULE_IDS: OrderedRules = [ RuleId.Master, + UserDefinedRules, RuleId.SuppressNotices, RuleId.InviteToSelf, RuleId.MemberEvent, @@ -151,7 +156,8 @@ const DEFAULT_UNDERRIDE_RULES: Record = { }, }; -const EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS = [ +const EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS: OrderedRules = [ + UserDefinedRules, RuleId.IncomingCall, RuleId.EncryptedDM, RuleId.DM, @@ -162,6 +168,7 @@ const EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS = [ /** * Make sure that each of the rules listed in `defaultRuleIds` is listed in the given set of push rules. * + * @param kind - the kind of push rule set being merged. * @param incomingRules - the existing set of known push rules for the user. * @param defaultRules - a lookup table for the default definitions of push rules. * @param defaultRuleIds - the IDs of the expected default push rules, in order. @@ -169,17 +176,23 @@ const EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS = [ * @returns A copy of `incomingRules`, with any missing default rules inserted in the right place. */ function mergeRulesWithDefaults( + kind: PushRuleKind, incomingRules: IPushRule[], defaultRules: Record, - defaultRuleIds: string[], + defaultRuleIds: OrderedRules, ): IPushRule[] { - // Calculate the index after the last default rule in `incomingRules` - // to allow us to split the incomingRules into defaults and custom - let firstCustomRuleIndex = incomingRules.findIndex((r) => !r.default); - if (firstCustomRuleIndex < 0) firstCustomRuleIndex = incomingRules.length; - - function insertDefaultPushRule(ruleId: string): void { - if (ruleId in defaultRules) { + // Find the indices of the edges of the user-defined rules in the incoming rules + const incomingRulesEnabled = incomingRules.map((rule) => rule.enabled); + const userDefinedRulesRange: [number, number] = [ + incomingRulesEnabled.indexOf(false), + incomingRulesEnabled.lastIndexOf(false), + ]; + + function insertDefaultPushRule(ruleId: OrderedRules[number]): void { + if (ruleId === UserDefinedRules) { + // Re-insert any user-defined rules that were in `incomingRules` + newRules.push(...incomingRules.slice(...userDefinedRulesRange)); + } else if (ruleId in defaultRules) { logger.warn(`Adding default global push rule ${ruleId}`); newRules.push(defaultRules[ruleId]); } else { @@ -189,7 +202,11 @@ function mergeRulesWithDefaults( let nextExpectedRuleIdIndex = 0; const newRules: IPushRule[] = []; - for (const rule of incomingRules.slice(0, firstCustomRuleIndex)) { + // Process the default rules by merging them with defaults + for (const rule of [ + ...incomingRules.slice(0, userDefinedRulesRange[0]), + ...incomingRules.slice(userDefinedRulesRange[1]), + ]) { const ruleIndex = defaultRuleIds.indexOf(rule.rule_id); if (ruleIndex === -1) { // an unrecognised rule; copy it over @@ -212,8 +229,6 @@ function mergeRulesWithDefaults( insertDefaultPushRule(ruleId); } - // Finally any non-default rules that were in `incomingRules` - newRules.push(...incomingRules.slice(firstCustomRuleIndex)); return newRules; } @@ -281,12 +296,14 @@ export class PushProcessor { // Merge the client-level defaults with the ones from the server newRules.global.override = mergeRulesWithDefaults( + PushRuleKind.Override, newRules.global.override, DEFAULT_OVERRIDE_RULES, EXPECTED_DEFAULT_OVERRIDE_RULE_IDS, ); newRules.global.underride = mergeRulesWithDefaults( + PushRuleKind.Underride, newRules.global.underride, DEFAULT_UNDERRIDE_RULES, EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS, From 32ddf2813d328200a760b86bc4b83fccfbb70d68 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 28 Mar 2024 12:55:44 +0000 Subject: [PATCH 148/595] Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/pushprocessor.spec.ts | 16 +++++++--------- src/pushprocessor.ts | 19 ++++++++++--------- 2 files changed, 17 insertions(+), 18 deletions(-) diff --git a/spec/unit/pushprocessor.spec.ts b/spec/unit/pushprocessor.spec.ts index 136ecc56c5e..122084d925e 100644 --- a/spec/unit/pushprocessor.spec.ts +++ b/spec/unit/pushprocessor.spec.ts @@ -198,11 +198,12 @@ describe("NotificationService", function () { }); it("should add default rules in the correct order", () => { - matrixClient.pushRules = PushProcessor.rewriteDefaultRules({ + const pushRules = PushProcessor.rewriteDefaultRules({ device: {}, global: { content: [], override: [ + // Include user-defined push rules inbetween .m.rule.master and other default rules to assert they are maintained in-order. { rule_id: ".m.rule.master", default: true, @@ -298,27 +299,24 @@ describe("NotificationService", function () { ], }, }); - pushProcessor = new PushProcessor(matrixClient); // By the time we get here, we expect the PushProcessor to have merged the new .m.rule.is_room_mention rule into the existing list of rules. // Check that has happened, and that it is in the right place. - const containsDisplayNameRuleIdx = matrixClient.pushRules?.global.override?.findIndex( + const containsDisplayNameRuleIdx = pushRules.global.override?.findIndex( (rule) => rule.rule_id === RuleId.ContainsDisplayName, ); expect(containsDisplayNameRuleIdx).toBeGreaterThan(-1); - const isRoomMentionRuleIdx = matrixClient.pushRules?.global.override?.findIndex( + const isRoomMentionRuleIdx = pushRules.global.override?.findIndex( (rule) => rule.rule_id === RuleId.IsRoomMention, ); expect(isRoomMentionRuleIdx).toBeGreaterThan(-1); - const mReactionRuleIdx = matrixClient.pushRules?.global.override?.findIndex( - (rule) => rule.rule_id === ".m.rule.reaction", - ); + const mReactionRuleIdx = pushRules.global.override?.findIndex((rule) => rule.rule_id === ".m.rule.reaction"); expect(mReactionRuleIdx).toBeGreaterThan(-1); expect(containsDisplayNameRuleIdx).toBeLessThan(isRoomMentionRuleIdx!); expect(isRoomMentionRuleIdx).toBeLessThan(mReactionRuleIdx!); - expect(matrixClient.pushRules?.global.override?.map((r) => r.rule_id)).toEqual([ + expect(pushRules.global.override?.map((r) => r.rule_id)).toEqual([ ".m.rule.master", "coffee", ".m.rule.contains_display_name", @@ -327,7 +325,7 @@ describe("NotificationService", function () { ".m.rule.reaction", ".org.matrix.msc3786.rule.room.server_acl", ]); - expect(matrixClient.pushRules?.global.underride?.map((r) => r.rule_id)).toEqual([ + expect(pushRules.global.underride?.map((r) => r.rule_id)).toEqual([ "user-defined", ".org.matrix.msc3914.rule.room.call", // Assert that unknown default rules are maintained diff --git a/src/pushprocessor.ts b/src/pushprocessor.ts index b13cfc0ca42..c88ca40af5f 100644 --- a/src/pushprocessor.ts +++ b/src/pushprocessor.ts @@ -49,10 +49,6 @@ const RULEKINDS_IN_ORDER = [ PushRuleKind.Underride, ]; -const UserDefinedRules = Symbol("UserDefinedRules"); - -type OrderedRules = Array; - // The default override rules to apply to the push rules that arrive from the server. // We do this for two reasons: // 1. Synapse is unlikely to send us the push rule in an incremental sync - see @@ -119,6 +115,11 @@ const DEFAULT_OVERRIDE_RULES: Record = { }, }; +// A special rule id for `EXPECTED_DEFAULT_OVERRIDE_RULE_IDS` and friends. +const UserDefinedRules = Symbol("UserDefinedRules"); + +type OrderedRules = Array; + const EXPECTED_DEFAULT_OVERRIDE_RULE_IDS: OrderedRules = [ RuleId.Master, UserDefinedRules, @@ -171,7 +172,7 @@ const EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS: OrderedRules = [ * @param kind - the kind of push rule set being merged. * @param incomingRules - the existing set of known push rules for the user. * @param defaultRules - a lookup table for the default definitions of push rules. - * @param defaultRuleIds - the IDs of the expected default push rules, in order. + * @param defaultRuleIds - the IDs of the expected push rules, in order. * * @returns A copy of `incomingRules`, with any missing default rules inserted in the right place. */ @@ -182,10 +183,10 @@ function mergeRulesWithDefaults( defaultRuleIds: OrderedRules, ): IPushRule[] { // Find the indices of the edges of the user-defined rules in the incoming rules - const incomingRulesEnabled = incomingRules.map((rule) => rule.enabled); + const mappedIncomingRules = incomingRules.map((rule) => rule.default); const userDefinedRulesRange: [number, number] = [ - incomingRulesEnabled.indexOf(false), - incomingRulesEnabled.lastIndexOf(false), + mappedIncomingRules.indexOf(false), + mappedIncomingRules.lastIndexOf(false), ]; function insertDefaultPushRule(ruleId: OrderedRules[number]): void { @@ -202,7 +203,7 @@ function mergeRulesWithDefaults( let nextExpectedRuleIdIndex = 0; const newRules: IPushRule[] = []; - // Process the default rules by merging them with defaults + // Merge our expected rules (including the incoming custom rules) into the incoming default rules. for (const rule of [ ...incomingRules.slice(0, userDefinedRulesRange[0]), ...incomingRules.slice(userDefinedRulesRange[1]), From 0f2542984933eb853e97f13d92cc1824d5063d8b Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 28 Mar 2024 13:41:31 +0000 Subject: [PATCH 149/595] Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/pushprocessor.spec.ts | 308 ++++++++++++++++---------------- src/pushprocessor.ts | 14 +- 2 files changed, 162 insertions(+), 160 deletions(-) diff --git a/spec/unit/pushprocessor.spec.ts b/spec/unit/pushprocessor.spec.ts index 122084d925e..8664b019870 100644 --- a/spec/unit/pushprocessor.spec.ts +++ b/spec/unit/pushprocessor.spec.ts @@ -13,6 +13,23 @@ import { } from "../../src"; import { mockClientMethodsUser } from "../test-utils/client"; +const msc3914RoomCallRule: IPushRule = { + rule_id: ".org.matrix.msc3914.rule.room.call", + default: true, + enabled: true, + conditions: [ + { + kind: ConditionKind.EventMatch, + key: "type", + pattern: "org.matrix.msc3401.call", + }, + { + kind: ConditionKind.CallStarted, + }, + ], + actions: [PushRuleActionName.Notify, { set_tweak: TweakName.Sound, value: "default" }], +}; + describe("NotificationService", function () { const testUserId = "@ali:matrix.org"; const testDisplayName = "Alice M"; @@ -22,23 +39,6 @@ describe("NotificationService", function () { let pushProcessor: PushProcessor; - const msc3914RoomCallRule: IPushRule = { - rule_id: ".org.matrix.msc3914.rule.room.call", - default: true, - enabled: true, - conditions: [ - { - kind: ConditionKind.EventMatch, - key: "type", - pattern: "org.matrix.msc3401.call", - }, - { - kind: ConditionKind.CallStarted, - }, - ], - actions: [PushRuleActionName.Notify, { set_tweak: TweakName.Sound, value: "default" }], - }; - let matrixClient: MatrixClient; beforeEach(function () { @@ -197,142 +197,6 @@ describe("NotificationService", function () { pushProcessor = new PushProcessor(matrixClient); }); - it("should add default rules in the correct order", () => { - const pushRules = PushProcessor.rewriteDefaultRules({ - device: {}, - global: { - content: [], - override: [ - // Include user-defined push rules inbetween .m.rule.master and other default rules to assert they are maintained in-order. - { - rule_id: ".m.rule.master", - default: true, - enabled: false, - conditions: [], - actions: [], - }, - { - actions: [ - PushRuleActionName.Notify, - { - set_tweak: TweakName.Sound, - value: "default", - }, - { - set_tweak: TweakName.Highlight, - }, - ], - enabled: true, - pattern: "coffee", - rule_id: "coffee", - default: false, - }, - { - actions: [ - PushRuleActionName.Notify, - { - set_tweak: TweakName.Sound, - value: "default", - }, - { - set_tweak: TweakName.Highlight, - }, - ], - conditions: [ - { - kind: ConditionKind.ContainsDisplayName, - }, - ], - enabled: true, - default: true, - rule_id: ".m.rule.contains_display_name", - }, - { - actions: [ - PushRuleActionName.Notify, - { - set_tweak: TweakName.Sound, - value: "default", - }, - ], - conditions: [ - { - is: "2", - kind: ConditionKind.RoomMemberCount, - }, - ], - enabled: true, - rule_id: ".m.rule.room_one_to_one", - default: true, - }, - ], - room: [], - sender: [], - underride: [ - { - actions: [ - PushRuleActionName.Notify, - { - set_tweak: TweakName.Highlight, - value: false, - }, - ], - conditions: [], - enabled: true, - rule_id: "user-defined", - default: false, - }, - msc3914RoomCallRule, - { - actions: [ - PushRuleActionName.Notify, - { - set_tweak: TweakName.Highlight, - value: false, - }, - ], - conditions: [], - enabled: true, - rule_id: ".m.rule.fallback", - default: true, - }, - ], - }, - }); - - // By the time we get here, we expect the PushProcessor to have merged the new .m.rule.is_room_mention rule into the existing list of rules. - // Check that has happened, and that it is in the right place. - const containsDisplayNameRuleIdx = pushRules.global.override?.findIndex( - (rule) => rule.rule_id === RuleId.ContainsDisplayName, - ); - expect(containsDisplayNameRuleIdx).toBeGreaterThan(-1); - const isRoomMentionRuleIdx = pushRules.global.override?.findIndex( - (rule) => rule.rule_id === RuleId.IsRoomMention, - ); - expect(isRoomMentionRuleIdx).toBeGreaterThan(-1); - const mReactionRuleIdx = pushRules.global.override?.findIndex((rule) => rule.rule_id === ".m.rule.reaction"); - expect(mReactionRuleIdx).toBeGreaterThan(-1); - - expect(containsDisplayNameRuleIdx).toBeLessThan(isRoomMentionRuleIdx!); - expect(isRoomMentionRuleIdx).toBeLessThan(mReactionRuleIdx!); - - expect(pushRules.global.override?.map((r) => r.rule_id)).toEqual([ - ".m.rule.master", - "coffee", - ".m.rule.contains_display_name", - ".m.rule.room_one_to_one", - ".m.rule.is_room_mention", - ".m.rule.reaction", - ".org.matrix.msc3786.rule.room.server_acl", - ]); - expect(pushRules.global.underride?.map((r) => r.rule_id)).toEqual([ - "user-defined", - ".org.matrix.msc3914.rule.room.call", - // Assert that unknown default rules are maintained - ".m.rule.fallback", - ]); - }); - // User IDs it("should bing on a user ID.", function () { @@ -848,3 +712,141 @@ describe("Test PushProcessor.partsForDottedKey", function () { expect(PushProcessor.partsForDottedKey(path)).toStrictEqual(expected); }); }); + +describe("rewriteDefaultRules", () => { + it("should add default rules in the correct order", () => { + const pushRules = PushProcessor.rewriteDefaultRules({ + device: {}, + global: { + content: [], + override: [ + // Include user-defined push rules inbetween .m.rule.master and other default rules to assert they are maintained in-order. + { + rule_id: ".m.rule.master", + default: true, + enabled: false, + conditions: [], + actions: [], + }, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Sound, + value: "default", + }, + { + set_tweak: TweakName.Highlight, + }, + ], + enabled: true, + pattern: "coffee", + rule_id: "coffee", + default: false, + }, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Sound, + value: "default", + }, + { + set_tweak: TweakName.Highlight, + }, + ], + conditions: [ + { + kind: ConditionKind.ContainsDisplayName, + }, + ], + enabled: true, + default: true, + rule_id: ".m.rule.contains_display_name", + }, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Sound, + value: "default", + }, + ], + conditions: [ + { + is: "2", + kind: ConditionKind.RoomMemberCount, + }, + ], + enabled: true, + rule_id: ".m.rule.room_one_to_one", + default: true, + }, + ], + room: [], + sender: [], + underride: [ + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Highlight, + value: false, + }, + ], + conditions: [], + enabled: true, + rule_id: "user-defined", + default: false, + }, + msc3914RoomCallRule, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Highlight, + value: false, + }, + ], + conditions: [], + enabled: true, + rule_id: ".m.rule.fallback", + default: true, + }, + ], + }, + }); + + // By the time we get here, we expect the PushProcessor to have merged the new .m.rule.is_room_mention rule into the existing list of rules. + // Check that has happened, and that it is in the right place. + const containsDisplayNameRuleIdx = pushRules.global.override?.findIndex( + (rule) => rule.rule_id === RuleId.ContainsDisplayName, + ); + expect(containsDisplayNameRuleIdx).toBeGreaterThan(-1); + const isRoomMentionRuleIdx = pushRules.global.override?.findIndex( + (rule) => rule.rule_id === RuleId.IsRoomMention, + ); + expect(isRoomMentionRuleIdx).toBeGreaterThan(-1); + const mReactionRuleIdx = pushRules.global.override?.findIndex((rule) => rule.rule_id === ".m.rule.reaction"); + expect(mReactionRuleIdx).toBeGreaterThan(-1); + + expect(containsDisplayNameRuleIdx).toBeLessThan(isRoomMentionRuleIdx!); + expect(isRoomMentionRuleIdx).toBeLessThan(mReactionRuleIdx!); + + expect(pushRules.global.override?.map((r) => r.rule_id)).toEqual([ + ".m.rule.master", + "coffee", + ".m.rule.contains_display_name", + ".m.rule.room_one_to_one", + ".m.rule.is_room_mention", + ".m.rule.reaction", + ".org.matrix.msc3786.rule.room.server_acl", + ]); + expect(pushRules.global.underride?.map((r) => r.rule_id)).toEqual([ + "user-defined", + ".org.matrix.msc3914.rule.room.call", + // Assert that unknown default rules are maintained + ".m.rule.fallback", + ]); + }); +}); diff --git a/src/pushprocessor.ts b/src/pushprocessor.ts index c88ca40af5f..05ecc6d2827 100644 --- a/src/pushprocessor.ts +++ b/src/pushprocessor.ts @@ -172,7 +172,7 @@ const EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS: OrderedRules = [ * @param kind - the kind of push rule set being merged. * @param incomingRules - the existing set of known push rules for the user. * @param defaultRules - a lookup table for the default definitions of push rules. - * @param defaultRuleIds - the IDs of the expected push rules, in order. + * @param orderedRuleIds - the IDs of the expected push rules, in order. * * @returns A copy of `incomingRules`, with any missing default rules inserted in the right place. */ @@ -180,7 +180,7 @@ function mergeRulesWithDefaults( kind: PushRuleKind, incomingRules: IPushRule[], defaultRules: Record, - defaultRuleIds: OrderedRules, + orderedRuleIds: OrderedRules, ): IPushRule[] { // Find the indices of the edges of the user-defined rules in the incoming rules const mappedIncomingRules = incomingRules.map((rule) => rule.default); @@ -194,10 +194,10 @@ function mergeRulesWithDefaults( // Re-insert any user-defined rules that were in `incomingRules` newRules.push(...incomingRules.slice(...userDefinedRulesRange)); } else if (ruleId in defaultRules) { - logger.warn(`Adding default global push rule ${ruleId}`); + logger.warn(`Adding default global ${kind} push rule ${ruleId}`); newRules.push(defaultRules[ruleId]); } else { - logger.warn(`Missing default global push rule ${ruleId}`); + logger.warn(`Missing default global ${kind} push rule ${ruleId}`); } } @@ -208,7 +208,7 @@ function mergeRulesWithDefaults( ...incomingRules.slice(0, userDefinedRulesRange[0]), ...incomingRules.slice(userDefinedRulesRange[1]), ]) { - const ruleIndex = defaultRuleIds.indexOf(rule.rule_id); + const ruleIndex = orderedRuleIds.indexOf(rule.rule_id); if (ruleIndex === -1) { // an unrecognised rule; copy it over newRules.push(rule); @@ -216,7 +216,7 @@ function mergeRulesWithDefaults( } while (ruleIndex > nextExpectedRuleIdIndex) { // insert new rules - const defaultRuleId = defaultRuleIds[nextExpectedRuleIdIndex]; + const defaultRuleId = orderedRuleIds[nextExpectedRuleIdIndex]; insertDefaultPushRule(defaultRuleId); nextExpectedRuleIdIndex += 1; } @@ -226,7 +226,7 @@ function mergeRulesWithDefaults( } // Now copy over any remaining default rules - for (const ruleId of defaultRuleIds.slice(nextExpectedRuleIdIndex)) { + for (const ruleId of orderedRuleIds.slice(nextExpectedRuleIdIndex)) { insertDefaultPushRule(ruleId); } From 06e083874a6226ca1e45dd99f2687e70ef5d14a4 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 28 Mar 2024 14:59:52 +0000 Subject: [PATCH 150/595] Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/pushprocessor.ts | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/src/pushprocessor.ts b/src/pushprocessor.ts index 05ecc6d2827..734a72751c3 100644 --- a/src/pushprocessor.ts +++ b/src/pushprocessor.ts @@ -115,7 +115,7 @@ const DEFAULT_OVERRIDE_RULES: Record = { }, }; -// A special rule id for `EXPECTED_DEFAULT_OVERRIDE_RULE_IDS` and friends. +// A special rule id for `EXPECTED_DEFAULT_OVERRIDE_RULE_IDS` and friends which denotes where user-defined rules live in the order. const UserDefinedRules = Symbol("UserDefinedRules"); type OrderedRules = Array; @@ -160,6 +160,7 @@ const DEFAULT_UNDERRIDE_RULES: Record = { const EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS: OrderedRules = [ UserDefinedRules, RuleId.IncomingCall, + ".org.matrix.msc3914.rule.room.call", RuleId.EncryptedDM, RuleId.DM, RuleId.Message, @@ -182,17 +183,14 @@ function mergeRulesWithDefaults( defaultRules: Record, orderedRuleIds: OrderedRules, ): IPushRule[] { - // Find the indices of the edges of the user-defined rules in the incoming rules - const mappedIncomingRules = incomingRules.map((rule) => rule.default); - const userDefinedRulesRange: [number, number] = [ - mappedIncomingRules.indexOf(false), - mappedIncomingRules.lastIndexOf(false), - ]; + // Split the incomingRules into defaults and custom + const incomingDefaultRules = incomingRules.filter((rule) => rule.default); + const incomingCustomRules = incomingRules.filter((rule) => !rule.default); function insertDefaultPushRule(ruleId: OrderedRules[number]): void { if (ruleId === UserDefinedRules) { // Re-insert any user-defined rules that were in `incomingRules` - newRules.push(...incomingRules.slice(...userDefinedRulesRange)); + newRules.push(...incomingCustomRules); } else if (ruleId in defaultRules) { logger.warn(`Adding default global ${kind} push rule ${ruleId}`); newRules.push(defaultRules[ruleId]); @@ -204,10 +202,7 @@ function mergeRulesWithDefaults( let nextExpectedRuleIdIndex = 0; const newRules: IPushRule[] = []; // Merge our expected rules (including the incoming custom rules) into the incoming default rules. - for (const rule of [ - ...incomingRules.slice(0, userDefinedRulesRange[0]), - ...incomingRules.slice(userDefinedRulesRange[1]), - ]) { + for (const rule of incomingDefaultRules) { const ruleIndex = orderedRuleIds.indexOf(rule.rule_id); if (ruleIndex === -1) { // an unrecognised rule; copy it over From 467b49a0dcfa76fda1aa1b061455f1ffd285d90e Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 28 Mar 2024 15:52:12 +0000 Subject: [PATCH 151/595] Add test Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/pushprocessor.spec.ts | 154 ++++++++++++++++++++++++++++++++ 1 file changed, 154 insertions(+) diff --git a/spec/unit/pushprocessor.spec.ts b/spec/unit/pushprocessor.spec.ts index 8664b019870..ed7261e727d 100644 --- a/spec/unit/pushprocessor.spec.ts +++ b/spec/unit/pushprocessor.spec.ts @@ -849,4 +849,158 @@ describe("rewriteDefaultRules", () => { ".m.rule.fallback", ]); }); + + it("should add missing msc3914 rule in correct place", () => { + const pushRules = PushProcessor.rewriteDefaultRules({ + device: {}, + global: { + // Sample push rules from a Synapse user. + // Note that rules 2 and 3 are backwards, this will trigger a warning in the console. + underride: [ + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "m.call.invite", + }, + ], + actions: [ + "notify", + { + set_tweak: "sound", + value: "ring", + }, + { + set_tweak: "highlight", + value: false, + }, + ], + rule_id: ".m.rule.call", + default: true, + enabled: true, + }, + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "m.room.message", + }, + { + kind: "room_member_count", + is: "2", + }, + ], + actions: [ + "notify", + { + set_tweak: "sound", + value: "TEST1", + }, + { + set_tweak: "highlight", + value: false, + }, + ], + rule_id: ".m.rule.room_one_to_one", + default: true, + enabled: true, + }, + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "m.room.encrypted", + }, + { + kind: "room_member_count", + is: "2", + }, + ], + actions: [ + "notify", + { + set_tweak: "sound", + value: "TEST2", + }, + { + set_tweak: "highlight", + value: false, + }, + ], + rule_id: ".m.rule.encrypted_room_one_to_one", + default: true, + enabled: true, + }, + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "m.room.message", + }, + ], + actions: ["dont_notify"], + rule_id: ".m.rule.message", + default: true, + enabled: true, + }, + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "m.room.encrypted", + }, + ], + actions: ["dont_notify"], + rule_id: ".m.rule.encrypted", + default: true, + enabled: true, + }, + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "im.vector.modular.widgets", + }, + { + kind: "event_match", + key: "content.type", + pattern: "jitsi", + }, + { + kind: "event_match", + key: "state_key", + pattern: "*", + }, + ], + actions: [ + "notify", + { + set_tweak: "highlight", + value: false, + }, + ], + rule_id: ".im.vector.jitsi", + default: true, + enabled: true, + }, + ] as IPushRule[], + }, + }); + + expect(pushRules.global.underride?.map((r) => r.rule_id)).toEqual([ + ".m.rule.call", + ".org.matrix.msc3914.rule.room.call", + ".m.rule.room_one_to_one", + ".m.rule.encrypted_room_one_to_one", + ".m.rule.message", + ".m.rule.encrypted", + ".im.vector.jitsi", + ]); + }); }); From 5f3ddc37a1d1dafe6fb83b54bb40f0aabf8bfec4 Mon Sep 17 00:00:00 2001 From: David Baker Date: Thu, 28 Mar 2024 16:23:58 +0000 Subject: [PATCH 152/595] Merge pull request #4135 from matrix-org/t3chguy/fix/27173 Fix merging of default push rules (cherry picked from commit 78a225795bb99d44f7ae04f408a9c0213d7c2c47) --- spec/unit/pushprocessor.spec.ts | 358 ++++++++++++++++++++++++++++---- src/pushprocessor.ts | 53 +++-- 2 files changed, 353 insertions(+), 58 deletions(-) diff --git a/spec/unit/pushprocessor.spec.ts b/spec/unit/pushprocessor.spec.ts index 90d2180361b..ed7261e727d 100644 --- a/spec/unit/pushprocessor.spec.ts +++ b/spec/unit/pushprocessor.spec.ts @@ -1,8 +1,35 @@ import * as utils from "../test-utils/test-utils"; import { IActionsObject, PushProcessor } from "../../src/pushprocessor"; -import { ConditionKind, EventType, IContent, MatrixClient, MatrixEvent, PushRuleActionName, RuleId } from "../../src"; +import { + ConditionKind, + EventType, + IContent, + IPushRule, + MatrixClient, + MatrixEvent, + PushRuleActionName, + RuleId, + TweakName, +} from "../../src"; import { mockClientMethodsUser } from "../test-utils/client"; +const msc3914RoomCallRule: IPushRule = { + rule_id: ".org.matrix.msc3914.rule.room.call", + default: true, + enabled: true, + conditions: [ + { + kind: ConditionKind.EventMatch, + key: "type", + pattern: "org.matrix.msc3401.call", + }, + { + kind: ConditionKind.CallStarted, + }, + ], + actions: [PushRuleActionName.Notify, { set_tweak: TweakName.Sound, value: "default" }], +}; + describe("NotificationService", function () { const testUserId = "@ali:matrix.org"; const testDisplayName = "Alice M"; @@ -12,23 +39,6 @@ describe("NotificationService", function () { let pushProcessor: PushProcessor; - const msc3914RoomCallRule = { - rule_id: ".org.matrix.msc3914.rule.room.call", - default: true, - enabled: true, - conditions: [ - { - kind: "event_match", - key: "type", - pattern: "org.matrix.msc3401.call", - }, - { - kind: "call_started", - }, - ], - actions: ["notify", { set_tweak: "sound", value: "default" }], - }; - let matrixClient: MatrixClient; beforeEach(function () { @@ -187,26 +197,6 @@ describe("NotificationService", function () { pushProcessor = new PushProcessor(matrixClient); }); - it("should add default rules in the correct order", () => { - // By the time we get here, we expect the PushProcessor to have merged the new .m.rule.is_room_mention rule into the existing list of rules. - // Check that has happened, and that it is in the right place. - const containsDisplayNameRuleIdx = matrixClient.pushRules?.global.override?.findIndex( - (rule) => rule.rule_id === RuleId.ContainsDisplayName, - ); - expect(containsDisplayNameRuleIdx).toBeGreaterThan(-1); - const isRoomMentionRuleIdx = matrixClient.pushRules?.global.override?.findIndex( - (rule) => rule.rule_id === RuleId.IsRoomMention, - ); - expect(isRoomMentionRuleIdx).toBeGreaterThan(-1); - const mReactionRuleIdx = matrixClient.pushRules?.global.override?.findIndex( - (rule) => rule.rule_id === ".m.rule.reaction", - ); - expect(mReactionRuleIdx).toBeGreaterThan(-1); - - expect(containsDisplayNameRuleIdx).toBeLessThan(isRoomMentionRuleIdx!); - expect(isRoomMentionRuleIdx).toBeLessThan(mReactionRuleIdx!); - }); - // User IDs it("should bing on a user ID.", function () { @@ -722,3 +712,295 @@ describe("Test PushProcessor.partsForDottedKey", function () { expect(PushProcessor.partsForDottedKey(path)).toStrictEqual(expected); }); }); + +describe("rewriteDefaultRules", () => { + it("should add default rules in the correct order", () => { + const pushRules = PushProcessor.rewriteDefaultRules({ + device: {}, + global: { + content: [], + override: [ + // Include user-defined push rules inbetween .m.rule.master and other default rules to assert they are maintained in-order. + { + rule_id: ".m.rule.master", + default: true, + enabled: false, + conditions: [], + actions: [], + }, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Sound, + value: "default", + }, + { + set_tweak: TweakName.Highlight, + }, + ], + enabled: true, + pattern: "coffee", + rule_id: "coffee", + default: false, + }, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Sound, + value: "default", + }, + { + set_tweak: TweakName.Highlight, + }, + ], + conditions: [ + { + kind: ConditionKind.ContainsDisplayName, + }, + ], + enabled: true, + default: true, + rule_id: ".m.rule.contains_display_name", + }, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Sound, + value: "default", + }, + ], + conditions: [ + { + is: "2", + kind: ConditionKind.RoomMemberCount, + }, + ], + enabled: true, + rule_id: ".m.rule.room_one_to_one", + default: true, + }, + ], + room: [], + sender: [], + underride: [ + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Highlight, + value: false, + }, + ], + conditions: [], + enabled: true, + rule_id: "user-defined", + default: false, + }, + msc3914RoomCallRule, + { + actions: [ + PushRuleActionName.Notify, + { + set_tweak: TweakName.Highlight, + value: false, + }, + ], + conditions: [], + enabled: true, + rule_id: ".m.rule.fallback", + default: true, + }, + ], + }, + }); + + // By the time we get here, we expect the PushProcessor to have merged the new .m.rule.is_room_mention rule into the existing list of rules. + // Check that has happened, and that it is in the right place. + const containsDisplayNameRuleIdx = pushRules.global.override?.findIndex( + (rule) => rule.rule_id === RuleId.ContainsDisplayName, + ); + expect(containsDisplayNameRuleIdx).toBeGreaterThan(-1); + const isRoomMentionRuleIdx = pushRules.global.override?.findIndex( + (rule) => rule.rule_id === RuleId.IsRoomMention, + ); + expect(isRoomMentionRuleIdx).toBeGreaterThan(-1); + const mReactionRuleIdx = pushRules.global.override?.findIndex((rule) => rule.rule_id === ".m.rule.reaction"); + expect(mReactionRuleIdx).toBeGreaterThan(-1); + + expect(containsDisplayNameRuleIdx).toBeLessThan(isRoomMentionRuleIdx!); + expect(isRoomMentionRuleIdx).toBeLessThan(mReactionRuleIdx!); + + expect(pushRules.global.override?.map((r) => r.rule_id)).toEqual([ + ".m.rule.master", + "coffee", + ".m.rule.contains_display_name", + ".m.rule.room_one_to_one", + ".m.rule.is_room_mention", + ".m.rule.reaction", + ".org.matrix.msc3786.rule.room.server_acl", + ]); + expect(pushRules.global.underride?.map((r) => r.rule_id)).toEqual([ + "user-defined", + ".org.matrix.msc3914.rule.room.call", + // Assert that unknown default rules are maintained + ".m.rule.fallback", + ]); + }); + + it("should add missing msc3914 rule in correct place", () => { + const pushRules = PushProcessor.rewriteDefaultRules({ + device: {}, + global: { + // Sample push rules from a Synapse user. + // Note that rules 2 and 3 are backwards, this will trigger a warning in the console. + underride: [ + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "m.call.invite", + }, + ], + actions: [ + "notify", + { + set_tweak: "sound", + value: "ring", + }, + { + set_tweak: "highlight", + value: false, + }, + ], + rule_id: ".m.rule.call", + default: true, + enabled: true, + }, + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "m.room.message", + }, + { + kind: "room_member_count", + is: "2", + }, + ], + actions: [ + "notify", + { + set_tweak: "sound", + value: "TEST1", + }, + { + set_tweak: "highlight", + value: false, + }, + ], + rule_id: ".m.rule.room_one_to_one", + default: true, + enabled: true, + }, + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "m.room.encrypted", + }, + { + kind: "room_member_count", + is: "2", + }, + ], + actions: [ + "notify", + { + set_tweak: "sound", + value: "TEST2", + }, + { + set_tweak: "highlight", + value: false, + }, + ], + rule_id: ".m.rule.encrypted_room_one_to_one", + default: true, + enabled: true, + }, + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "m.room.message", + }, + ], + actions: ["dont_notify"], + rule_id: ".m.rule.message", + default: true, + enabled: true, + }, + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "m.room.encrypted", + }, + ], + actions: ["dont_notify"], + rule_id: ".m.rule.encrypted", + default: true, + enabled: true, + }, + { + conditions: [ + { + kind: "event_match", + key: "type", + pattern: "im.vector.modular.widgets", + }, + { + kind: "event_match", + key: "content.type", + pattern: "jitsi", + }, + { + kind: "event_match", + key: "state_key", + pattern: "*", + }, + ], + actions: [ + "notify", + { + set_tweak: "highlight", + value: false, + }, + ], + rule_id: ".im.vector.jitsi", + default: true, + enabled: true, + }, + ] as IPushRule[], + }, + }); + + expect(pushRules.global.underride?.map((r) => r.rule_id)).toEqual([ + ".m.rule.call", + ".org.matrix.msc3914.rule.room.call", + ".m.rule.room_one_to_one", + ".m.rule.encrypted_room_one_to_one", + ".m.rule.message", + ".m.rule.encrypted", + ".im.vector.jitsi", + ]); + }); +}); diff --git a/src/pushprocessor.ts b/src/pushprocessor.ts index 162c36dc9bd..734a72751c3 100644 --- a/src/pushprocessor.ts +++ b/src/pushprocessor.ts @@ -25,8 +25,8 @@ import { ICallStartedPrefixCondition, IContainsDisplayNameCondition, IEventMatchCondition, - IEventPropertyIsCondition, IEventPropertyContainsCondition, + IEventPropertyIsCondition, IPushRule, IPushRules, IRoomMemberCountCondition, @@ -115,8 +115,14 @@ const DEFAULT_OVERRIDE_RULES: Record = { }, }; -const EXPECTED_DEFAULT_OVERRIDE_RULE_IDS = [ +// A special rule id for `EXPECTED_DEFAULT_OVERRIDE_RULE_IDS` and friends which denotes where user-defined rules live in the order. +const UserDefinedRules = Symbol("UserDefinedRules"); + +type OrderedRules = Array; + +const EXPECTED_DEFAULT_OVERRIDE_RULE_IDS: OrderedRules = [ RuleId.Master, + UserDefinedRules, RuleId.SuppressNotices, RuleId.InviteToSelf, RuleId.MemberEvent, @@ -151,8 +157,10 @@ const DEFAULT_UNDERRIDE_RULES: Record = { }, }; -const EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS = [ +const EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS: OrderedRules = [ + UserDefinedRules, RuleId.IncomingCall, + ".org.matrix.msc3914.rule.room.call", RuleId.EncryptedDM, RuleId.DM, RuleId.Message, @@ -162,35 +170,40 @@ const EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS = [ /** * Make sure that each of the rules listed in `defaultRuleIds` is listed in the given set of push rules. * + * @param kind - the kind of push rule set being merged. * @param incomingRules - the existing set of known push rules for the user. * @param defaultRules - a lookup table for the default definitions of push rules. - * @param defaultRuleIds - the IDs of the expected default push rules, in order. + * @param orderedRuleIds - the IDs of the expected push rules, in order. * * @returns A copy of `incomingRules`, with any missing default rules inserted in the right place. */ function mergeRulesWithDefaults( + kind: PushRuleKind, incomingRules: IPushRule[], defaultRules: Record, - defaultRuleIds: string[], + orderedRuleIds: OrderedRules, ): IPushRule[] { - // Calculate the index after the last default rule in `incomingRules` - // to allow us to split the incomingRules into defaults and custom - let firstCustomRuleIndex = incomingRules.findIndex((r) => !r.default); - if (firstCustomRuleIndex < 0) firstCustomRuleIndex = incomingRules.length; - - function insertDefaultPushRule(ruleId: string): void { - if (ruleId in defaultRules) { - logger.warn(`Adding default global push rule ${ruleId}`); + // Split the incomingRules into defaults and custom + const incomingDefaultRules = incomingRules.filter((rule) => rule.default); + const incomingCustomRules = incomingRules.filter((rule) => !rule.default); + + function insertDefaultPushRule(ruleId: OrderedRules[number]): void { + if (ruleId === UserDefinedRules) { + // Re-insert any user-defined rules that were in `incomingRules` + newRules.push(...incomingCustomRules); + } else if (ruleId in defaultRules) { + logger.warn(`Adding default global ${kind} push rule ${ruleId}`); newRules.push(defaultRules[ruleId]); } else { - logger.warn(`Missing default global push rule ${ruleId}`); + logger.warn(`Missing default global ${kind} push rule ${ruleId}`); } } let nextExpectedRuleIdIndex = 0; const newRules: IPushRule[] = []; - for (const rule of incomingRules.slice(0, firstCustomRuleIndex)) { - const ruleIndex = defaultRuleIds.indexOf(rule.rule_id); + // Merge our expected rules (including the incoming custom rules) into the incoming default rules. + for (const rule of incomingDefaultRules) { + const ruleIndex = orderedRuleIds.indexOf(rule.rule_id); if (ruleIndex === -1) { // an unrecognised rule; copy it over newRules.push(rule); @@ -198,7 +211,7 @@ function mergeRulesWithDefaults( } while (ruleIndex > nextExpectedRuleIdIndex) { // insert new rules - const defaultRuleId = defaultRuleIds[nextExpectedRuleIdIndex]; + const defaultRuleId = orderedRuleIds[nextExpectedRuleIdIndex]; insertDefaultPushRule(defaultRuleId); nextExpectedRuleIdIndex += 1; } @@ -208,12 +221,10 @@ function mergeRulesWithDefaults( } // Now copy over any remaining default rules - for (const ruleId of defaultRuleIds.slice(nextExpectedRuleIdIndex)) { + for (const ruleId of orderedRuleIds.slice(nextExpectedRuleIdIndex)) { insertDefaultPushRule(ruleId); } - // Finally any non-default rules that were in `incomingRules` - newRules.push(...incomingRules.slice(firstCustomRuleIndex)); return newRules; } @@ -281,12 +292,14 @@ export class PushProcessor { // Merge the client-level defaults with the ones from the server newRules.global.override = mergeRulesWithDefaults( + PushRuleKind.Override, newRules.global.override, DEFAULT_OVERRIDE_RULES, EXPECTED_DEFAULT_OVERRIDE_RULE_IDS, ); newRules.global.underride = mergeRulesWithDefaults( + PushRuleKind.Underride, newRules.global.underride, DEFAULT_UNDERRIDE_RULES, EXPECTED_DEFAULT_UNDERRIDE_RULE_IDS, From 5bffb7df4fe33acd6a281be6477dd37157a6cf0d Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Thu, 28 Mar 2024 16:44:30 +0000 Subject: [PATCH 153/595] v31.6.1 --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 93f940a29b4..91e1eb18d9e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +Changes in [31.6.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.6.1) (2024-03-28) +================================================================================================== +## 🐛 Bug Fixes + +* Fix merging of default push rules ([#4136](https://github.com/matrix-org/matrix-js-sdk/pull/4136)). + + Changes in [31.6.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.6.0) (2024-03-26) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index 2036aae4c5b..7a4f1e738ca 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.6.0", + "version": "31.6.1", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From cfcd191cbf6ef3a1ee8c2aeb4cbc3ce7b620857b Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 2 Apr 2024 14:09:59 +0100 Subject: [PATCH 154/595] Update matrix-rust-sdk-crypto-wasm to 4.9.0 (#4137) --- package.json | 2 +- yarn.lock | 39 +++++++-------------------------------- 2 files changed, 8 insertions(+), 33 deletions(-) diff --git a/package.json b/package.json index a4d305e4319..9a9b0072e18 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^4.6.0", + "@matrix-org/matrix-sdk-crypto-wasm": "^4.9.0", "another-json": "^0.2.0", "bs58": "^5.0.0", "content-type": "^1.0.4", diff --git a/yarn.lock b/yarn.lock index 4c24eeb51f9..13b75a89f44 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1709,10 +1709,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@matrix-org/matrix-sdk-crypto-wasm@^4.6.0": - version "4.7.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.7.0.tgz#831588a192fd2c79f5f6dec930392717d3fa3331" - integrity sha512-07UqoxUolP2RJfXGwN1U9+1wWfHde0SilSzvdOU6RagJqQ3SdKERPBcgp20texOvIl65K57kJ81tD//+mj8skQ== +"@matrix-org/matrix-sdk-crypto-wasm@^4.9.0": + version "4.9.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.9.0.tgz#9dfed83e33f760650596c4e5c520e5e4c53355d2" + integrity sha512-/bgA4QfE7qkK6GFr9hnhjAvRSebGrmEJxukU0ukbudZcYvbzymoBBM8j3HeULXZT8kbw8WH6z63txYTMCBSDOA== "@matrix-org/olm@3.2.15": version "3.2.15" @@ -5875,16 +5875,7 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width-cjs@npm:string-width@^4.2.0": - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -5938,14 +5929,7 @@ string.prototype.trimstart@^1.0.7: define-properties "^1.2.0" es-abstract "^1.22.1" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -6463,16 +6447,7 @@ which@^2.0.1: dependencies: isexe "^2.0.0" -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== From dbab185f9d2d01f920e16d7b771c453580a3814d Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 2 Apr 2024 14:39:49 +0100 Subject: [PATCH 155/595] Refactoring and simplification in decryption error handling (#4138) * Clean up decryption failure integ tests * Fix the names * Stop waiting as soon as the event is decrypted, even if code is wrong (so tests fail rather than time out if the code is wrong) * Bump timeouts on some tests These tend to fail due to slow init of wasm artifacts * Factor out `onDecryptionKeyMissingError` call * Factor out `onMegolmDecryptionError` --- spec/integ/crypto/cross-signing.spec.ts | 52 ++++++++------- spec/integ/crypto/crypto.spec.ts | 33 ++++------ spec/integ/crypto/megolm-backup.spec.ts | 45 +++++++------ src/rust-crypto/rust-crypto.ts | 86 ++++++++++++------------- 4 files changed, 106 insertions(+), 110 deletions(-) diff --git a/spec/integ/crypto/cross-signing.spec.ts b/spec/integ/crypto/cross-signing.spec.ts index a0518d827f3..8a08eebdbc5 100644 --- a/spec/integ/crypto/cross-signing.spec.ts +++ b/spec/integ/crypto/cross-signing.spec.ts @@ -81,33 +81,37 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("cross-signing (%s)", (backend: s }; } - beforeEach(async () => { - // anything that we don't have a specific matcher for silently returns a 404 - fetchMock.catch(404); - fetchMock.config.warnOnFallback = false; - - const homeserverUrl = "https://alice-server.com"; - aliceClient = createClient({ - baseUrl: homeserverUrl, - userId: TEST_USER_ID, - accessToken: "akjgkrgjs", - deviceId: TEST_DEVICE_ID, - cryptoCallbacks: createCryptoCallbacks(), - }); + beforeEach( + async () => { + // anything that we don't have a specific matcher for silently returns a 404 + fetchMock.catch(404); + fetchMock.config.warnOnFallback = false; + + const homeserverUrl = "https://alice-server.com"; + aliceClient = createClient({ + baseUrl: homeserverUrl, + userId: TEST_USER_ID, + accessToken: "akjgkrgjs", + deviceId: TEST_DEVICE_ID, + cryptoCallbacks: createCryptoCallbacks(), + }); - syncResponder = new SyncResponder(homeserverUrl); - e2eKeyResponder = new E2EKeyResponder(homeserverUrl); - /** an object which intercepts `/keys/upload` requests on the test homeserver */ - new E2EKeyReceiver(homeserverUrl); + syncResponder = new SyncResponder(homeserverUrl); + e2eKeyResponder = new E2EKeyResponder(homeserverUrl); + /** an object which intercepts `/keys/upload` requests on the test homeserver */ + new E2EKeyReceiver(homeserverUrl); - // Silence warnings from the backup manager - fetchMock.getOnce(new URL("/_matrix/client/v3/room_keys/version", homeserverUrl).toString(), { - status: 404, - body: { errcode: "M_NOT_FOUND" }, - }); + // Silence warnings from the backup manager + fetchMock.getOnce(new URL("/_matrix/client/v3/room_keys/version", homeserverUrl).toString(), { + status: 404, + body: { errcode: "M_NOT_FOUND" }, + }); - await initCrypto(aliceClient); - }); + await initCrypto(aliceClient); + }, + /* it can take a while to initialise the crypto library on the first pass, so bump up the timeout. */ + 10000, + ); afterEach(async () => { await aliceClient.stopClient(); diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 55c513a3ad5..53686dc1b32 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -26,6 +26,7 @@ import * as testUtils from "../../test-utils/test-utils"; import { advanceTimersUntil, CRYPTO_BACKENDS, + emitPromise, getSyncResponse, InitCrypto, mkEventCustom, @@ -466,19 +467,13 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, }); describe("Unable to decrypt error codes", function () { - it("Encryption fails with expected UISI error", async () => { + it("Decryption fails with UISI error", async () => { expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); await startClientAndAwaitFirstSync(); - const awaitUISI = new Promise((resolve) => { - aliceClient.on(MatrixEventEvent.Decrypted, (ev) => { - if (ev.decryptionFailureReason === DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID) { - resolve(); - } - }); - }); + // A promise which resolves, with the MatrixEvent which wraps the event, once the decryption fails. + const awaitDecryption = emitPromise(aliceClient, MatrixEventEvent.Decrypted); - // Alice gets both the events in a single sync const syncResponse = { next_batch: 1, rooms: { @@ -490,21 +485,16 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, syncResponder.sendOrQueueSyncResponse(syncResponse); await syncPromise(aliceClient); - - await awaitUISI; + const ev = await awaitDecryption; + expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID); }); - it("Encryption fails with expected Unknown Index error", async () => { + it("Decryption fails with Unknown Index error", async () => { expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); await startClientAndAwaitFirstSync(); - const awaitUnknownIndex = new Promise((resolve) => { - aliceClient.on(MatrixEventEvent.Decrypted, (ev) => { - if (ev.decryptionFailureReason === DecryptionFailureCode.OLM_UNKNOWN_MESSAGE_INDEX) { - resolve(); - } - }); - }); + // A promise which resolves, with the MatrixEvent which wraps the event, once the decryption fails. + const awaitDecryption = emitPromise(aliceClient, MatrixEventEvent.Decrypted); await aliceClient.getCrypto()!.importRoomKeys([testData.RATCHTED_MEGOLM_SESSION_DATA]); @@ -521,10 +511,11 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, syncResponder.sendOrQueueSyncResponse(syncResponse); await syncPromise(aliceClient); - await awaitUnknownIndex; + const ev = await awaitDecryption; + expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.OLM_UNKNOWN_MESSAGE_INDEX); }); - it("Encryption fails with Unable to decrypt for other errors", async () => { + it("Decryption fails with Unable to decrypt for other errors", async () => { expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); await startClientAndAwaitFirstSync(); diff --git a/spec/integ/crypto/megolm-backup.spec.ts b/spec/integ/crypto/megolm-backup.spec.ts index 11e1c2eb705..31fae626097 100644 --- a/spec/integ/crypto/megolm-backup.spec.ts +++ b/spec/integ/crypto/megolm-backup.spec.ts @@ -192,28 +192,31 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("megolm-keys backup (%s)", (backe } } - beforeEach(async () => { - fetchMock.get("path:/_matrix/client/v3/room_keys/version", testData.SIGNED_BACKUP_DATA); - - // ignore requests to send room key requests - fetchMock.put("express:/_matrix/client/v3/sendToDevice/m.room_key_request/:request_id", {}); - - aliceClient = await initTestClient(); - const aliceCrypto = aliceClient.getCrypto()!; - await aliceCrypto.storeSessionBackupPrivateKey( - Buffer.from(testData.BACKUP_DECRYPTION_KEY_BASE64, "base64"), - testData.SIGNED_BACKUP_DATA.version!, - ); - - // start after saving the private key - await aliceClient.startClient(); + beforeEach( + async () => { + fetchMock.get("path:/_matrix/client/v3/room_keys/version", testData.SIGNED_BACKUP_DATA); + + // ignore requests to send room key requests + fetchMock.put("express:/_matrix/client/v3/sendToDevice/m.room_key_request/:request_id", {}); + + aliceClient = await initTestClient(); + const aliceCrypto = aliceClient.getCrypto()!; + await aliceCrypto.storeSessionBackupPrivateKey( + Buffer.from(testData.BACKUP_DECRYPTION_KEY_BASE64, "base64"), + testData.SIGNED_BACKUP_DATA.version!, + ); - // tell Alice to trust the dummy device that signed the backup, and re-check the backup. - // XXX: should we automatically re-check after a device becomes verified? - await waitForDeviceList(); - await aliceClient.getCrypto()!.setDeviceVerified(testData.TEST_USER_ID, testData.TEST_DEVICE_ID); - await aliceClient.getCrypto()!.checkKeyBackupAndEnable(); - }); + // start after saving the private key + await aliceClient.startClient(); + + // tell Alice to trust the dummy device that signed the backup, and re-check the backup. + // XXX: should we automatically re-check after a device becomes verified? + await waitForDeviceList(); + await aliceClient.getCrypto()!.setDeviceVerified(testData.TEST_USER_ID, testData.TEST_DEVICE_ID); + await aliceClient.getCrypto()!.checkKeyBackupAndEnable(); + } /* it can take a while to initialise the crypto library on the first pass, so bump up the timeout. */, + 10000, + ); it("Alice checks key backups when receiving a message she can't decrypt", async () => { fetchMock.get("express:/_matrix/client/v3/room_keys/keys/:room_id/:session_id", (url, request) => { diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 2bec6fe281f..512b0822fb5 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -1683,52 +1683,50 @@ class EventDecryptor { forwardingCurve25519KeyChain: res.forwardingCurve25519KeyChain, }; } catch (err) { - // We need to map back to regular decryption errors (used for analytics for example) - // The DecryptionErrors are used by react-sdk so is implicitly part of API, but poorly typed if (err instanceof RustSdkCryptoJs.MegolmDecryptionError) { - const content = event.getWireContent(); - let jsError; - switch (err.code) { - case RustSdkCryptoJs.DecryptionErrorCode.MissingRoomKey: { - jsError = new DecryptionError( - DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID, - "The sender's device has not sent us the keys for this message.", - { - session: content.sender_key + "|" + content.session_id, - }, - ); - this.perSessionBackupDownloader.onDecryptionKeyMissingError( - event.getRoomId()!, - event.getWireContent().session_id!, - ); - break; - } - case RustSdkCryptoJs.DecryptionErrorCode.UnknownMessageIndex: { - jsError = new DecryptionError( - DecryptionFailureCode.OLM_UNKNOWN_MESSAGE_INDEX, - "The sender's device has not sent us the keys for this message at this index.", - { - session: content.sender_key + "|" + content.session_id, - }, - ); - this.perSessionBackupDownloader.onDecryptionKeyMissingError( - event.getRoomId()!, - event.getWireContent().session_id!, - ); - break; - } - // We don't map MismatchedIdentityKeys for now, as there is no equivalent in legacy. - // Just put it on the `UNKNOWN_ERROR` bucket. - default: { - jsError = new DecryptionError(DecryptionFailureCode.UNKNOWN_ERROR, err.description, { - session: content.sender_key + "|" + content.session_id, - }); - break; - } - } - throw jsError; + this.onMegolmDecryptionError(event, err); + } else { + throw new DecryptionError(DecryptionFailureCode.UNKNOWN_ERROR, "Unknown error"); } - throw new DecryptionError(DecryptionFailureCode.UNKNOWN_ERROR, "Unknown error"); + } + } + + /** + * Handle a `MegolmDecryptionError` returned by the rust SDK. + * + * Fires off a request to the `perSessionBackupDownloader`, if appropriate, and then throws a `DecryptionError`. + */ + private onMegolmDecryptionError(event: MatrixEvent, err: RustSdkCryptoJs.MegolmDecryptionError): never { + const content = event.getWireContent(); + + // If the error looks like it might be recoverable from backup, queue up a request to try that. + if ( + err.code === RustSdkCryptoJs.DecryptionErrorCode.MissingRoomKey || + err.code === RustSdkCryptoJs.DecryptionErrorCode.UnknownMessageIndex + ) { + this.perSessionBackupDownloader.onDecryptionKeyMissingError(event.getRoomId()!, content.session_id!); + } + + const errorDetails = { session: content.sender_key + "|" + content.session_id }; + switch (err.code) { + case RustSdkCryptoJs.DecryptionErrorCode.MissingRoomKey: + throw new DecryptionError( + DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID, + "The sender's device has not sent us the keys for this message.", + errorDetails, + ); + + case RustSdkCryptoJs.DecryptionErrorCode.UnknownMessageIndex: + throw new DecryptionError( + DecryptionFailureCode.OLM_UNKNOWN_MESSAGE_INDEX, + "The sender's device has not sent us the keys for this message at this index.", + errorDetails, + ); + + // We don't map MismatchedIdentityKeys for now, as there is no equivalent in legacy. + // Just put it on the `UNKNOWN_ERROR` bucket. + default: + throw new DecryptionError(DecryptionFailureCode.UNKNOWN_ERROR, err.description, errorDetails); } } From 7d5c003716393825bfcc3aab6d1160d4271ff574 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 2 Apr 2024 16:15:04 +0000 Subject: [PATCH 156/595] v32.0.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 9a9b0072e18..c16f5c02056 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "31.6.1", + "version": "32.0.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -30,8 +30,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -131,5 +131,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From 4f628bf64c6589066a014513431cd1efe35c0615 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 2 Apr 2024 18:08:08 +0100 Subject: [PATCH 157/595] Update mheap/github-action-required-labels digest to 132879b (#4141) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/pull_request.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yaml b/.github/workflows/pull_request.yaml index 0711326c902..f176b3c41d2 100644 --- a/.github/workflows/pull_request.yaml +++ b/.github/workflows/pull_request.yaml @@ -14,7 +14,7 @@ jobs: name: Preview Changelog runs-on: ubuntu-latest steps: - - uses: mheap/github-action-required-labels@80a96a4863886addcbc9f681b5b295ba7f5424e1 # v5 + - uses: mheap/github-action-required-labels@132879b972cb7f2ac593006455875098e73cc7f2 # v5 if: github.event_name != 'merge_group' with: labels: | From 1ed3b13f0d6eaae35b36c4c8d93df30a5c457cb1 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 2 Apr 2024 18:58:13 +0100 Subject: [PATCH 158/595] Update all non-major dependencies (#4142) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/downstream-artifacts.yml | 2 +- .github/workflows/release-npm.yml | 2 +- yarn.lock | 53 ++++++++++++++++------ 3 files changed, 41 insertions(+), 16 deletions(-) diff --git a/.github/workflows/downstream-artifacts.yml b/.github/workflows/downstream-artifacts.yml index 17bd5608253..c811e0120da 100644 --- a/.github/workflows/downstream-artifacts.yml +++ b/.github/workflows/downstream-artifacts.yml @@ -16,7 +16,7 @@ concurrency: jobs: build-element-web: name: Build element-web - uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.95.0 + uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.96.1 with: matrix-js-sdk-sha: ${{ github.sha }} react-sdk-repository: matrix-org/matrix-react-sdk diff --git a/.github/workflows/release-npm.yml b/.github/workflows/release-npm.yml index 583848ee9d2..eda19b442c1 100644 --- a/.github/workflows/release-npm.yml +++ b/.github/workflows/release-npm.yml @@ -31,7 +31,7 @@ jobs: - name: 🚀 Publish to npm id: npm-publish - uses: JS-DevTools/npm-publish@4b07b26a2f6e0a51846e1870223e545bae91c552 # v3.0.1 + uses: JS-DevTools/npm-publish@19c28f1ef146469e409470805ea4279d47c3d35c # v3.1.1 with: token: ${{ secrets.NPM_TOKEN }} access: public diff --git a/yarn.lock b/yarn.lock index 13b75a89f44..ca67452ee5a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1784,15 +1784,15 @@ tslib "^2.0.0" "@peculiar/webcrypto@^1.4.5": - version "1.4.5" - resolved "https://registry.yarnpkg.com/@peculiar/webcrypto/-/webcrypto-1.4.5.tgz#424bed6b0d133b772f5cbffd143d0468a90f40a0" - integrity sha512-oDk93QCDGdxFRM8382Zdminzs44dg3M2+E5Np+JWkpqLDyJC9DviMh8F8mEJkYuUcUOGA5jHO5AJJ10MFWdbZw== + version "1.4.6" + resolved "https://registry.yarnpkg.com/@peculiar/webcrypto/-/webcrypto-1.4.6.tgz#607af294c4f205efeeb172aa32cb20024fe4aecf" + integrity sha512-YBcMfqNSwn3SujUJvAaySy5tlYbYm6tVt9SKoXu8BaTdKGROiJDgPR3TXpZdAKUfklzm3lRapJEAltiMQtBgZg== dependencies: "@peculiar/asn1-schema" "^2.3.8" "@peculiar/json-schema" "^1.1.12" pvtsutils "^1.3.5" tslib "^2.6.2" - webcrypto-core "^1.7.8" + webcrypto-core "^1.7.9" "@pkgjs/parseargs@^0.11.0": version "0.11.0" @@ -3213,9 +3213,9 @@ eslint-plugin-jest@^27.1.6: "@typescript-eslint/utils" "^5.10.0" eslint-plugin-jsdoc@^48.0.0: - version "48.2.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.1.tgz#9334a05555a95fdc192980627142177963b668b4" - integrity sha512-iUvbcyDZSO/9xSuRv2HQBw++8VkV/pt3UWtX9cpPH0l7GKPq78QC/6+PmyQHHvNZaTjAce6QVciEbnc6J/zH5g== + version "48.2.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.2.tgz#eefdc5e3bb3cea957b66dd4817e9de30930b5270" + integrity sha512-S0Gk+rpT5w/ephKCncUY7kUsix9uE4B9XI8D/fS1/26d8okE+vZsuG1IvIt4B6sJUdQqsnzi+YXfmh+HJG11CA== dependencies: "@es-joy/jsdoccomment" "~0.42.0" are-docs-informative "^0.0.2" @@ -5875,7 +5875,16 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -5929,7 +5938,14 @@ string.prototype.trimstart@^1.0.7: define-properties "^1.2.0" es-abstract "^1.22.1" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -6355,10 +6371,10 @@ walker@^1.0.8: dependencies: makeerror "1.0.12" -webcrypto-core@^1.7.8: - version "1.7.8" - resolved "https://registry.yarnpkg.com/webcrypto-core/-/webcrypto-core-1.7.8.tgz#056918036e846c72cfebbb04052e283f57f1114a" - integrity sha512-eBR98r9nQXTqXt/yDRtInszPMjTaSAMJAFDg2AHsgrnczawT1asx9YNBX6k5p+MekbPF4+s/UJJrr88zsTqkSg== +webcrypto-core@^1.7.9: + version "1.7.9" + resolved "https://registry.yarnpkg.com/webcrypto-core/-/webcrypto-core-1.7.9.tgz#a585f0032dbc88d202cff4f266cbef02ba48bd7a" + integrity sha512-FE+a4PPkOmBbgNDIyRmcHhgXn+2ClRl3JzJdDu/P4+B8y81LqKe6RAsI9b3lAOHe1T1BMkSjsRHTYRikImZnVA== dependencies: "@peculiar/asn1-schema" "^2.3.8" "@peculiar/json-schema" "^1.1.12" @@ -6447,7 +6463,16 @@ which@^2.0.1: dependencies: isexe "^2.0.0" -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== From e24bb0f50c5e0b91d2172542ff4896402451f026 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 3 Apr 2024 09:36:51 +0100 Subject: [PATCH 159/595] Update babel monorepo to v7.24.3 (#4143) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 88 +++++++++++++++++++++++++++++++------------------------ 1 file changed, 49 insertions(+), 39 deletions(-) diff --git a/yarn.lock b/yarn.lock index ca67452ee5a..36ab27da2a8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -59,12 +59,12 @@ "@babel/highlight" "^7.23.4" chalk "^2.4.2" -"@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.1.tgz#8f4027f85a6e84a695276080e864215318f95c19" - integrity sha512-bC49z4spJQR3j8vFtJBLqzyzFV0ciuL5HYX7qfSl3KEqeMVV+eTquRvmXxpvB0AMubRrvv7y5DILiLLPi57Ewg== +"@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.1", "@babel/code-frame@^7.24.2": + version "7.24.2" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.2.tgz#718b4b19841809a58b29b68cde80bc5e1aa6d9ae" + integrity sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ== dependencies: - "@babel/highlight" "^7.24.1" + "@babel/highlight" "^7.24.2" picocolors "^1.0.0" "@babel/compat-data@^7.20.5": @@ -83,12 +83,12 @@ integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== "@babel/core@^7.0.0", "@babel/core@^7.12.10": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.1.tgz#b802f931b6498dcb8fed5a4710881a45abbc2784" - integrity sha512-F82udohVyIgGAY2VVj/g34TpFUG606rumIHjTfVbssPg2zTR7PuuEpZcX8JA6sgBfIYmJrFtWgPvHQuJamVqZQ== + version "7.24.3" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.3.tgz#568864247ea10fbd4eff04dda1e05f9e2ea985c3" + integrity sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.24.1" + "@babel/code-frame" "^7.24.2" "@babel/generator" "^7.24.1" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-module-transforms" "^7.23.3" @@ -290,10 +290,10 @@ dependencies: "@babel/types" "^7.22.15" -"@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.1.tgz#961ea2c12aad6cfc75b8c396c81608a08283027b" - integrity sha512-HfEWzysMyOa7xI5uQHc/OcZf67/jc+xe/RZlznWQHhbb8Pg1SkRdbK4yEi61aY8wxQA7PkSfoojtLQP/Kpe3og== +"@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.24.1", "@babel/helper-module-imports@^7.24.3": + version "7.24.3" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128" + integrity sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg== dependencies: "@babel/types" "^7.24.0" @@ -445,7 +445,7 @@ chalk "^2.4.2" js-tokens "^4.0.0" -"@babel/highlight@^7.23.4", "@babel/highlight@^7.24.1": +"@babel/highlight@^7.23.4": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.1.tgz#21f3f5391c793b3f0d6dbb40f898c48cc6ad4215" integrity sha512-EPmDPxidWe/Ex+HTFINpvXdPHRmgSF3T8hGvzondYjmgzTQ/0EbLpSxyt+w3zzlYSk9cNBQNF9k0dT5Z2NiBjw== @@ -455,6 +455,16 @@ js-tokens "^4.0.0" picocolors "^1.0.0" +"@babel/highlight@^7.24.2": + version "7.24.2" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.2.tgz#3f539503efc83d3c59080a10e6634306e0370d26" + integrity sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA== + dependencies: + "@babel/helper-validator-identifier" "^7.22.20" + chalk "^2.4.2" + js-tokens "^4.0.0" + picocolors "^1.0.0" + "@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.16": version "7.22.16" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.16.tgz#180aead7f247305cce6551bea2720934e2fa2c95" @@ -700,10 +710,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-async-generator-functions@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.1.tgz#b38009d650b3c419e6708ec5ab4fa5eeffe7b489" - integrity sha512-OTkLJM0OtmzcpOgF7MREERUCdCnCBtBsq3vVFbuq/RKMK0/jdYqdMexWi3zNs7Nzd95ase65MbTGrpFJflOb6A== +"@babel/plugin-transform-async-generator-functions@^7.24.3": + version "7.24.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.3.tgz#8fa7ae481b100768cc9842c8617808c5352b8b89" + integrity sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg== dependencies: "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-plugin-utils" "^7.24.0" @@ -1021,11 +1031,11 @@ "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-transform-runtime@^7.12.10": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.1.tgz#3678311f7193ef7cf62c6f34c6f757d0301bf314" - integrity sha512-yHLX14/T+tO0gjgJroDb8JYjOcQuzVC+Brt4CjHAxq/Ghw4xBVG+N02d1rMEcyUnKUQBL4Yy2gA9R72GK961jQ== + version "7.24.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.3.tgz#dc58ad4a31810a890550365cc922e1ff5acb5d7f" + integrity sha512-J0BuRPNlNqlMTRJ72eVptpt9VcInbxO6iP3jaxr+1NPhC0UkKL+6oeX6VXMEYdADnuqmMmsBspt4d5w8Y/TCbQ== dependencies: - "@babel/helper-module-imports" "^7.24.1" + "@babel/helper-module-imports" "^7.24.3" "@babel/helper-plugin-utils" "^7.24.0" babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.1" @@ -1110,9 +1120,9 @@ "@babel/helper-plugin-utils" "^7.24.0" "@babel/preset-env@^7.12.11": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.1.tgz#e63a3f95d9922c07f4a53649b5c2f53f611f2e6c" - integrity sha512-CwCMz1Z28UHLI2iE+cbnWT2epPMV9bzzoBGM6A3mOS22VQd/1TPoWItV7S7iL9TkPmPEf5L/QzurmztyyDN9FA== + version "7.24.3" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.3.tgz#f3f138c844ffeeac372597b29c51b5259e8323a3" + integrity sha512-fSk430k5c2ff8536JcPvPWK4tZDwehWLGlBp0wrsBUjZVdeQV6lePbwKWZaZfK2vnh/1kQX1PzAJWsnBmVgGJA== dependencies: "@babel/compat-data" "^7.24.1" "@babel/helper-compilation-targets" "^7.23.6" @@ -1141,7 +1151,7 @@ "@babel/plugin-syntax-top-level-await" "^7.14.5" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" "@babel/plugin-transform-arrow-functions" "^7.24.1" - "@babel/plugin-transform-async-generator-functions" "^7.24.1" + "@babel/plugin-transform-async-generator-functions" "^7.24.3" "@babel/plugin-transform-async-to-generator" "^7.24.1" "@babel/plugin-transform-block-scoped-functions" "^7.24.1" "@babel/plugin-transform-block-scoping" "^7.24.1" @@ -1190,7 +1200,7 @@ "@babel/plugin-transform-unicode-sets-regex" "^7.24.1" "@babel/preset-modules" "0.1.6-no-external-plugins" babel-plugin-polyfill-corejs2 "^0.4.10" - babel-plugin-polyfill-corejs3 "^0.10.1" + babel-plugin-polyfill-corejs3 "^0.10.4" babel-plugin-polyfill-regenerator "^0.6.1" core-js-compat "^3.31.0" semver "^6.3.1" @@ -2459,13 +2469,13 @@ babel-plugin-polyfill-corejs2@^0.4.10: "@babel/helper-define-polyfill-provider" "^0.6.1" semver "^6.3.1" -babel-plugin-polyfill-corejs3@^0.10.1: - version "0.10.1" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.1.tgz#cd8750e0b7da30ec2f66007b6151792f02e1138e" - integrity sha512-XiFei6VGwM4ii6nKC1VCenGD8Z4bjiNYcrdkM8oqM3pbuemmyb8biMgrDX1ZHSbIuMLXatM6JJ/StPYIuTl6MQ== +babel-plugin-polyfill-corejs3@^0.10.1, babel-plugin-polyfill-corejs3@^0.10.4: + version "0.10.4" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz#789ac82405ad664c20476d0233b485281deb9c77" + integrity sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg== dependencies: "@babel/helper-define-polyfill-provider" "^0.6.1" - core-js-compat "^3.36.0" + core-js-compat "^3.36.1" babel-plugin-polyfill-regenerator@^0.6.1: version "0.6.1" @@ -2618,9 +2628,9 @@ caniuse-lite@^1.0.30001565: integrity sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q== caniuse-lite@^1.0.30001587: - version "1.0.30001599" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001599.tgz#571cf4f3f1506df9bf41fcbb6d10d5d017817bce" - integrity sha512-LRAQHZ4yT1+f9LemSMeqdMpMxZcc4RMWdj4tiFe3G8tNkWK+E58g+/tzotb5cU6TbcVJLr4fySiAW7XmxQvZQA== + version "1.0.30001605" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001605.tgz#ca12d7330dd8bcb784557eb9aa64f0037870d9d6" + integrity sha512-nXwGlFWo34uliI9z3n6Qc0wZaf7zaZWA1CPZ169La5mV3I/gem7bst0vr5XQH5TJXZIMfDeZyOrZnSlVzKxxHQ== chalk@5.2.0: version "5.2.0" @@ -2810,7 +2820,7 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -core-js-compat@^3.31.0, core-js-compat@^3.36.0: +core-js-compat@^3.31.0, core-js-compat@^3.36.1: version "3.36.1" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.36.1.tgz#1818695d72c99c25d621dca94e6883e190cea3c8" integrity sha512-Dk997v9ZCt3X/npqzyGdTlq6t7lDBhZwGvV94PKzDArjp7BTRm7WlDAXYd/OWdeFHO8OChQYRJNJvUCqCbrtKA== @@ -2998,9 +3008,9 @@ electron-to-chromium@^1.4.601: integrity sha512-2yszojF7vIZ68adIOvzV4bku8OZad9w5H9xF3ZAMZjPuOjBarlflUkjN6DggdV+L71WZuKUfKUhov/34+G5QHg== electron-to-chromium@^1.4.668: - version "1.4.710" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.710.tgz#d0ec4ea8a97df4c5eaeb8c69d45bf81f248b3855" - integrity sha512-w+9yAVHoHhysCa+gln7AzbO9CdjFcL/wN/5dd+XW/Msl2d/4+WisEaCF1nty0xbAKaxdaJfgLB2296U7zZB7BA== + version "1.4.723" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.723.tgz#827da30c96b316684d352c3d81430029df01bb8e" + integrity sha512-rxFVtrMGMFROr4qqU6n95rUi9IlfIm+lIAt+hOToy/9r6CDv0XiEcQdC3VP71y1pE5CFTzKV0RvxOGYCPWWHPw== emittery@^0.13.1: version "0.13.1" From c680dd7eb244e34ccb130db39f4f69b4827ec57a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 3 Apr 2024 08:37:32 +0000 Subject: [PATCH 160/595] Update dependency @types/node to v18.19.28 (#4144) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 36ab27da2a8..a6f552ddbb4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1994,9 +1994,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.26" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.26.tgz#18991279d0a0e53675285e8cf4a0823766349729" - integrity sha512-+wiMJsIwLOYCvUqSdKTrfkS8mpTp+MPINe6+Np4TAGFWWRWiBQ5kSq9nZGCSPkzx9mvT+uEukzpX4MOSCydcvw== + version "18.19.28" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.28.tgz#c64a2c992c8ebbf61100a4570e4eebc1934ae030" + integrity sha512-J5cOGD9n4x3YGgVuaND6khm5x07MMdAKkRyXnjVR6KFhLMNh2yONGiP7Z+4+tBOt5mK+GvDTiacTOVGGpqiecw== dependencies: undici-types "~5.26.4" From d2f76d4956dbdbf9799cc8fc2716fdc8a243899b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 3 Apr 2024 10:23:09 +0100 Subject: [PATCH 161/595] Update dependency typescript to v5.4.3 (#4145) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a6f552ddbb4..5ed6eafde68 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6250,9 +6250,9 @@ typedoc@^0.25.10: shiki "^0.14.7" typescript@^5.3.3: - version "5.4.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.2.tgz#0ae9cebcfae970718474fe0da2c090cad6577372" - integrity sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ== + version "5.4.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.3.tgz#5c6fedd4c87bee01cd7a528a30145521f8e0feff" + integrity sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg== unbox-primitive@^1.0.2: version "1.0.2" From 0d73d0c6c7437c3e7dfa12f6b9046842df7814da Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 3 Apr 2024 10:49:35 +0100 Subject: [PATCH 162/595] Update typescript-eslint monorepo to v7.4.0 (#4146) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 98 +++++++++++++++++++++++++++---------------------------- 1 file changed, 49 insertions(+), 49 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5ed6eafde68..b7a211e42e6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2058,15 +2058,15 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.3.1.tgz#0d8f38a6c8a1802139e62184ee7a68ed024f30a1" - integrity sha512-STEDMVQGww5lhCuNXVSQfbfuNII5E08QWkvAw5Qwf+bj2WT+JkG1uc+5/vXA3AOYMDHVOSpL+9rcbEUiHIm2dw== + version "7.5.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.5.0.tgz#1dc52fe48454d5b54be2d5f089680452f1628a5a" + integrity sha512-HpqNTH8Du34nLxbKgVMGljZMG0rJd2O9ecvr2QLYp+7512ty1j42KnsFwspPXg1Vh8an9YImf6CokUBltisZFQ== dependencies: "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "7.3.1" - "@typescript-eslint/type-utils" "7.3.1" - "@typescript-eslint/utils" "7.3.1" - "@typescript-eslint/visitor-keys" "7.3.1" + "@typescript-eslint/scope-manager" "7.5.0" + "@typescript-eslint/type-utils" "7.5.0" + "@typescript-eslint/utils" "7.5.0" + "@typescript-eslint/visitor-keys" "7.5.0" debug "^4.3.4" graphemer "^1.4.0" ignore "^5.2.4" @@ -2075,14 +2075,14 @@ ts-api-utils "^1.0.1" "@typescript-eslint/parser@^7.0.0": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.3.1.tgz#c4ba7dc2744318a5e4506596cbc3a0086255c526" - integrity sha512-Rq49+pq7viTRCH48XAbTA+wdLRrB/3sRq4Lpk0oGDm0VmnjBrAOVXH/Laalmwsv2VpekiEfVFwJYVk6/e8uvQw== - dependencies: - "@typescript-eslint/scope-manager" "7.3.1" - "@typescript-eslint/types" "7.3.1" - "@typescript-eslint/typescript-estree" "7.3.1" - "@typescript-eslint/visitor-keys" "7.3.1" + version "7.5.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.5.0.tgz#1eeff36309ac2253c905dd4a88b4b71b72a358ed" + integrity sha512-cj+XGhNujfD2/wzR1tabNsidnYRaFfEkcULdcIyVBYcXjBvBKOes+mpMBP7hMpOyk+gBcfXsrg4NBGAStQyxjQ== + dependencies: + "@typescript-eslint/scope-manager" "7.5.0" + "@typescript-eslint/types" "7.5.0" + "@typescript-eslint/typescript-estree" "7.5.0" + "@typescript-eslint/visitor-keys" "7.5.0" debug "^4.3.4" "@typescript-eslint/scope-manager@5.62.0": @@ -2093,21 +2093,21 @@ "@typescript-eslint/types" "5.62.0" "@typescript-eslint/visitor-keys" "5.62.0" -"@typescript-eslint/scope-manager@7.3.1": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.3.1.tgz#73fd0cb4211a7be23e49e5b6efec8820caa6ec36" - integrity sha512-fVS6fPxldsKY2nFvyT7IP78UO1/I2huG+AYu5AMjCT9wtl6JFiDnsv4uad4jQ0GTFzcUV5HShVeN96/17bTBag== +"@typescript-eslint/scope-manager@7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.5.0.tgz#70f0a7361430ab1043a5f97386da2a0d8b2f4d56" + integrity sha512-Z1r7uJY0MDeUlql9XJ6kRVgk/sP11sr3HKXn268HZyqL7i4cEfrdFuSSY/0tUqT37l5zT0tJOsuDP16kio85iA== dependencies: - "@typescript-eslint/types" "7.3.1" - "@typescript-eslint/visitor-keys" "7.3.1" + "@typescript-eslint/types" "7.5.0" + "@typescript-eslint/visitor-keys" "7.5.0" -"@typescript-eslint/type-utils@7.3.1": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.3.1.tgz#cbf90d3d7e788466aa8a5c0ab3f46103f098aa0d" - integrity sha512-iFhaysxFsMDQlzJn+vr3OrxN8NmdQkHks4WaqD4QBnt5hsq234wcYdyQ9uquzJJIDAj5W4wQne3yEsYA6OmXGw== +"@typescript-eslint/type-utils@7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.5.0.tgz#a8faa403232da3a3901655387c7082111f692cf9" + integrity sha512-A021Rj33+G8mx2Dqh0nMO9GyjjIBK3MqgVgZ2qlKf6CJy51wY/lkkFqq3TqqnH34XyAHUkq27IjlUkWlQRpLHw== dependencies: - "@typescript-eslint/typescript-estree" "7.3.1" - "@typescript-eslint/utils" "7.3.1" + "@typescript-eslint/typescript-estree" "7.5.0" + "@typescript-eslint/utils" "7.5.0" debug "^4.3.4" ts-api-utils "^1.0.1" @@ -2116,10 +2116,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== -"@typescript-eslint/types@7.3.1": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.3.1.tgz#ae104de8efa4227a462c0874d856602c5994413c" - integrity sha512-2tUf3uWggBDl4S4183nivWQ2HqceOZh1U4hhu4p1tPiIJoRRXrab7Y+Y0p+dozYwZVvLPRI6r5wKe9kToF9FIw== +"@typescript-eslint/types@7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.5.0.tgz#0a284bcdef3cb850ec9fd57992df9f29d6bde1bc" + integrity sha512-tv5B4IHeAdhR7uS4+bf8Ov3k793VEVHd45viRRkehIUZxm0WF82VPiLgHzA/Xl4TGPg1ZD49vfxBKFPecD5/mg== "@typescript-eslint/typescript-estree@5.62.0": version "5.62.0" @@ -2134,13 +2134,13 @@ semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@7.3.1": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.3.1.tgz#598848195fad34c7aa73f548bd00a4d4e5f5e2bb" - integrity sha512-tLpuqM46LVkduWP7JO7yVoWshpJuJzxDOPYIVWUUZbW+4dBpgGeUdl/fQkhuV0A8eGnphYw3pp8d2EnvPOfxmQ== +"@typescript-eslint/typescript-estree@7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.5.0.tgz#aa5031c511874420f6b5edd90f8e4021525ee776" + integrity sha512-YklQQfe0Rv2PZEueLTUffiQGKQneiIEKKnfIqPIOxgM9lKSZFCjT5Ad4VqRKj/U4+kQE3fa8YQpskViL7WjdPQ== dependencies: - "@typescript-eslint/types" "7.3.1" - "@typescript-eslint/visitor-keys" "7.3.1" + "@typescript-eslint/types" "7.5.0" + "@typescript-eslint/visitor-keys" "7.5.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2148,17 +2148,17 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/utils@7.3.1": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.3.1.tgz#fc28fd508ccf89495012561b7c02a6fdad162460" - integrity sha512-jIERm/6bYQ9HkynYlNZvXpzmXWZGhMbrOvq3jJzOSOlKXsVjrrolzWBjDW6/TvT5Q3WqaN4EkmcfdQwi9tDjBQ== +"@typescript-eslint/utils@7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.5.0.tgz#bbd963647fbbe9ffea033f42c0fb7e89bb19c858" + integrity sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw== dependencies: "@eslint-community/eslint-utils" "^4.4.0" "@types/json-schema" "^7.0.12" "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "7.3.1" - "@typescript-eslint/types" "7.3.1" - "@typescript-eslint/typescript-estree" "7.3.1" + "@typescript-eslint/scope-manager" "7.5.0" + "@typescript-eslint/types" "7.5.0" + "@typescript-eslint/typescript-estree" "7.5.0" semver "^7.5.4" "@typescript-eslint/utils@^5.10.0": @@ -2183,12 +2183,12 @@ "@typescript-eslint/types" "5.62.0" eslint-visitor-keys "^3.3.0" -"@typescript-eslint/visitor-keys@7.3.1": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.3.1.tgz#6ddef14a3ce2a79690f01176f5305c34d7b93d8c" - integrity sha512-9RMXwQF8knsZvfv9tdi+4D/j7dMG28X/wMJ8Jj6eOHyHWwDW4ngQJcqEczSsqIKKjFiLFr40Mnr7a5ulDD3vmw== +"@typescript-eslint/visitor-keys@7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.5.0.tgz#8abcac66f93ef20b093e87a400c2d21e3a6d55ee" + integrity sha512-mcuHM/QircmA6O7fy6nn2w/3ditQkj+SgtOc8DW3uQ10Yfj42amm2i+6F2K4YAOPNNTmE6iM1ynM6lrSwdendA== dependencies: - "@typescript-eslint/types" "7.3.1" + "@typescript-eslint/types" "7.5.0" eslint-visitor-keys "^3.4.1" "@ungap/structured-clone@^1.2.0": From b352405c89db9e07e842d9530b8ce6e724fa57ae Mon Sep 17 00:00:00 2001 From: Valere Date: Mon, 8 Apr 2024 09:11:06 +0200 Subject: [PATCH 163/595] ElementR| Retry query backup until it works during migration to avoid spurious correption error popup (#4113) * retry query backup until it works during migration * Add log line when fails to get backup during migration --- src/rust-crypto/libolm_migration.ts | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/rust-crypto/libolm_migration.ts b/src/rust-crypto/libolm_migration.ts index b8e617e182f..1d4179601b6 100644 --- a/src/rust-crypto/libolm_migration.ts +++ b/src/rust-crypto/libolm_migration.ts @@ -25,6 +25,8 @@ import { requestKeyBackupVersion } from "./backup"; import { IRoomEncryption } from "../crypto/RoomList"; import { CrossSigningKeyInfo } from "../crypto-api"; import { RustCrypto } from "./rust-crypto"; +import { KeyBackupInfo } from "../crypto-api/keybackup"; +import { sleep } from "../utils"; /** * Determine if any data needs migrating from the legacy store, and do so. @@ -105,7 +107,7 @@ export async function migrateFromLegacyCrypto(args: { if (migrationState === MigrationState.NOT_STARTED) { logger.info("Migrating data from legacy crypto store. Step 1: base data"); - await migrateBaseData(args.http, args.userId, args.deviceId, legacyStore, pickleKey, args.storeHandle); + await migrateBaseData(args.http, args.userId, args.deviceId, legacyStore, pickleKey, args.storeHandle, logger); migrationState = MigrationState.INITIAL_DATA_MIGRATED; await legacyStore.setMigrationState(migrationState); @@ -144,6 +146,7 @@ async function migrateBaseData( legacyStore: CryptoStore, pickleKey: Uint8Array, storeHandle: RustSdkCryptoJs.StoreHandle, + logger: Logger, ): Promise { const migrationData = new RustSdkCryptoJs.BaseMigrationData(); migrationData.userId = new RustSdkCryptoJs.UserId(userId); @@ -160,7 +163,18 @@ async function migrateBaseData( // If we have a backup recovery key, we need to try to figure out which backup version it is for. // All we can really do is ask the server for the most recent version. if (recoveryKey) { - const backupInfo = await requestKeyBackupVersion(http); + let backupCallDone = false; + let backupInfo: KeyBackupInfo | null = null; + while (!backupCallDone) { + try { + backupInfo = await requestKeyBackupVersion(http); + backupCallDone = true; + } catch (e) { + logger.info("Failed to get backup version during migration, retrying in 2 seconds", e); + // Retry until successful, use simple constant delay + await sleep(2000); + } + } if (backupInfo) { migrationData.backupVersion = backupInfo.version; migrationData.backupRecoveryKey = recoveryKey; From 0ff0093380b7f955d50ebed0648358a9b5b06c4e Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 8 Apr 2024 11:04:40 +0100 Subject: [PATCH 164/595] Add knip unused code & dependency analyser (#4013) --- .github/workflows/static_analysis.yml | 16 + knip.ts | 36 + package.json | 11 +- src/crypto/backup.ts | 3 + yarn.lock | 1020 ++++++++++++++++++++++--- 5 files changed, 957 insertions(+), 129 deletions(-) create mode 100644 knip.ts diff --git a/.github/workflows/static_analysis.yml b/.github/workflows/static_analysis.yml index 8be2b77a6fc..0dbcf4a2678 100644 --- a/.github/workflows/static_analysis.yml +++ b/.github/workflows/static_analysis.yml @@ -90,3 +90,19 @@ jobs: path: _docs # We'll only use this in a workflow_run, then we're done with it retention-days: 1 + + analyse_dead_code: + name: "Analyse Dead Code" + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-node@v4 + with: + cache: "yarn" + + - name: Install Deps + run: "yarn install --frozen-lockfile" + + - name: Run linter + run: "yarn run lint:knip" diff --git a/knip.ts b/knip.ts new file mode 100644 index 00000000000..dd8787052a5 --- /dev/null +++ b/knip.ts @@ -0,0 +1,36 @@ +import { KnipConfig } from "knip"; + +export default { + entry: [ + "src/index.ts", + "src/types.ts", + "src/browser-index.ts", + "src/indexeddb-worker.ts", + "scripts/**", + "spec/**", + "release.sh", + // For now, we include all source files as entrypoints as we have been bad about gutwrenched imports + "src/**", + ], + project: ["**/*.{js,ts}"], + ignore: ["examples/**"], + ignoreDependencies: [ + // Required for `action-validator` + "@action-validator/*", + // Used for git pre-commit hooks + "husky", + // Used in script which only runs in environment with `@octokit/rest` installed + "@octokit/rest", + // Used by jest + "jest-environment-jsdom", + "babel-jest", + "ts-node", + // Used by `@babel/plugin-transform-runtime` + "@babel/runtime", + ], + ignoreBinaries: [ + // Used when available by reusable workflow `.github/workflows/release-make.yml` + "dist", + ], + ignoreExportsUsedInFile: true, +} satisfies KnipConfig; diff --git a/package.json b/package.json index 9a9b0072e18..fbfd7095af7 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "lint:js-fix": "prettier --log-level=warn --write . && eslint --fix src spec", "lint:types": "tsc --noEmit", "lint:workflows": "find .github/workflows -type f \\( -iname '*.yaml' -o -iname '*.yml' \\) | xargs -I {} sh -c 'echo \"Linting {}\"; action-validator \"{}\"'", + "lint:knip": "knip", "test": "jest", "test:watch": "jest --watch", "coverage": "yarn test --coverage" @@ -80,10 +81,8 @@ "@babel/plugin-transform-runtime": "^7.12.10", "@babel/preset-env": "^7.12.11", "@babel/preset-typescript": "^7.12.7", - "@babel/register": "^7.12.10", "@casualbot/jest-sonar-reporter": "2.2.7", "@matrix-org/olm": "3.2.15", - "@peculiar/webcrypto": "^1.4.5", "@types/bs58": "^4.0.1", "@types/content-type": "^1.1.5", "@types/debug": "^4.1.7", @@ -117,15 +116,17 @@ "jest-mock": "^29.0.0", "lint-staged": "^15.0.2", "matrix-mock-request": "^2.5.0", - "node-fetch": "^2.7.0", "prettier": "3.2.5", "rimraf": "^5.0.0", - "ts-node": "^10.9.1", + "ts-node": "^10.9.2", "typedoc": "^0.25.10", "typedoc-plugin-coverage": "^3.0.0", "typedoc-plugin-mdn-links": "^3.0.3", "typedoc-plugin-missing-exports": "^2.0.0", - "typescript": "^5.3.3" + "typescript": "^5.3.3", + "node-fetch": "^2.7.0", + "knip": "^4.0.1", + "@peculiar/webcrypto": "^1.4.5" }, "@casualbot/jest-sonar-reporter": { "outputDirectory": "coverage", diff --git a/src/crypto/backup.ts b/src/crypto/backup.ts index 6325402eed3..d51fa641c26 100644 --- a/src/crypto/backup.ts +++ b/src/crypto/backup.ts @@ -871,6 +871,9 @@ export const algorithmsByName: Record = { [Aes256.algorithmName]: Aes256, }; +// the linter doesn't like this but knip does +// eslint-disable-next-line tsdoc/syntax +/** @alias */ export const DefaultAlgorithm: BackupAlgorithmClass = Curve25519; /** diff --git a/yarn.lock b/yarn.lock index b7a211e42e6..e6207c8cfd6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1225,17 +1225,6 @@ "@babel/plugin-transform-modules-commonjs" "^7.24.1" "@babel/plugin-transform-typescript" "^7.24.1" -"@babel/register@^7.12.10": - version "7.23.7" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.23.7.tgz#485a5e7951939d21304cae4af1719fdb887bc038" - integrity sha512-EjJeB6+kvpk+Y5DAkEAmbOBEFkh9OASx0huoEkqYTFxAZHzOAX2Oh5uwAUuL2rUddqfM0SA+KPXV2TbzoZ2kvQ== - dependencies: - clone-deep "^4.0.1" - find-cache-dir "^2.0.0" - make-dir "^2.1.0" - pirates "^4.0.6" - source-map-support "^0.5.16" - "@babel/regjsgen@^0.8.0": version "0.8.0" resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310" @@ -1355,6 +1344,31 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" +"@ericcornelissen/bash-parser@0.5.2": + version "0.5.2" + resolved "https://registry.yarnpkg.com/@ericcornelissen/bash-parser/-/bash-parser-0.5.2.tgz#5eb3bc52020d97fbaebc63b5168ca0aa0b2e8418" + integrity sha512-4pIMTa1nEFfMXitv7oaNEWOdM+zpOZavesa5GaiWTgda6Zk32CFGxjUp/iIaN0PwgUW1yTq/fztSjbpE8SLGZQ== + dependencies: + array-last "^1.1.1" + babylon "^6.9.1" + compose-function "^3.0.3" + deep-freeze "0.0.1" + filter-iterator "0.0.1" + filter-obj "^1.1.0" + has-own-property "^0.1.0" + identity-function "^1.0.0" + is-iterable "^1.1.0" + iterable-lookahead "^1.0.0" + lodash.curry "^4.1.1" + magic-string "^0.16.0" + map-obj "^2.0.0" + object-pairs "^0.1.0" + object-values "^1.0.0" + reverse-arguments "^1.0.0" + shell-quote-word "^1.0.1" + to-pascal-case "^1.0.0" + unescape-js "^1.0.5" + "@es-joy/jsdoccomment@~0.42.0": version "0.42.0" resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.42.0.tgz#59e878708336aaee88c2b34c894f73dbf77ae2b0" @@ -1764,11 +1778,32 @@ "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" +"@nodelib/fs.scandir@3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-3.0.0.tgz#91c0a33e1aeaedcd4bab2bf31be5d1962a55d2a7" + integrity sha512-ktI9+PxfHYtKjF3cLTUAh2N+b8MijCRPNwKJNqTVdL0gB0QxLU2rIRaZ1t71oEa3YBDE6bukH1sR0+CDnpp/Mg== + dependencies: + "@nodelib/fs.stat" "3.0.0" + run-parallel "^1.2.0" + "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": version "2.0.5" resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== +"@nodelib/fs.stat@3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-3.0.0.tgz#ef6c829f2b05f42595d88854ebd777d4335ff0a9" + integrity sha512-2tQOI38s19P9i7X/Drt0v8iMA+KMsgdhB/dyPER+e+2Y8L1Z7QvnuRdW/uLuf5YRFUYmnj4bMA6qCuZHFI1GDQ== + +"@nodelib/fs.walk@2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-2.0.0.tgz#10499ac2210f6399770b465ba728adafc7d44bb1" + integrity sha512-54voNDBobGdMl3BUXSu7UaDh1P85PGHWlJ5e0XhPugo1JulOyCtp2I+5ri4wplGDJ8QGwPEQW7/x3yTLU7yF1A== + dependencies: + "@nodelib/fs.scandir" "3.0.0" + fastq "^1.15.0" + "@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": version "1.2.8" resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" @@ -1777,6 +1812,55 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@npmcli/git@^5.0.0": + version "5.0.4" + resolved "https://registry.yarnpkg.com/@npmcli/git/-/git-5.0.4.tgz#d18c50f99649e6e89e8b427318134f582498700c" + integrity sha512-nr6/WezNzuYUppzXRaYu/W4aT5rLxdXqEFupbh6e/ovlYFQ8hpu1UUPV3Ir/YTl+74iXl2ZOMlGzudh9ZPUchQ== + dependencies: + "@npmcli/promise-spawn" "^7.0.0" + lru-cache "^10.0.1" + npm-pick-manifest "^9.0.0" + proc-log "^3.0.0" + promise-inflight "^1.0.1" + promise-retry "^2.0.1" + semver "^7.3.5" + which "^4.0.0" + +"@npmcli/map-workspaces@3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@npmcli/map-workspaces/-/map-workspaces-3.0.4.tgz#15ad7d854292e484f7ba04bc30187a8320dba799" + integrity sha512-Z0TbvXkRbacjFFLpVpV0e2mheCh+WzQpcqL+4xp49uNJOxOnIAPZyXtUxZ5Qn3QBTGKA11Exjd9a5411rBrhDg== + dependencies: + "@npmcli/name-from-folder" "^2.0.0" + glob "^10.2.2" + minimatch "^9.0.0" + read-package-json-fast "^3.0.0" + +"@npmcli/name-from-folder@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz#c44d3a7c6d5c184bb6036f4d5995eee298945815" + integrity sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg== + +"@npmcli/package-json@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@npmcli/package-json/-/package-json-5.0.0.tgz#77d0f8b17096763ccbd8af03b7117ba6e34d6e91" + integrity sha512-OI2zdYBLhQ7kpNPaJxiflofYIpkNLi+lnGdzqUOfRmCF3r2l1nadcjtCYMJKv/Utm/ZtlffaUuTiAktPHbc17g== + dependencies: + "@npmcli/git" "^5.0.0" + glob "^10.2.2" + hosted-git-info "^7.0.0" + json-parse-even-better-errors "^3.0.0" + normalize-package-data "^6.0.0" + proc-log "^3.0.0" + semver "^7.5.3" + +"@npmcli/promise-spawn@^7.0.0": + version "7.0.1" + resolved "https://registry.yarnpkg.com/@npmcli/promise-spawn/-/promise-spawn-7.0.1.tgz#a836de2f42a2245d629cf6fbb8dd6c74c74c55af" + integrity sha512-P4KkF9jX3y+7yFUxgcUdDtLy+t4OlDGuEBLNs57AZsfSfg+uV6MLndqGpnl4831ggaEdXwR50XFoZP4VFtHolg== + dependencies: + which "^4.0.0" + "@peculiar/asn1-schema@^2.3.8": version "2.3.8" resolved "https://registry.yarnpkg.com/@peculiar/asn1-schema/-/asn1-schema-2.3.8.tgz#04b38832a814e25731232dd5be883460a156da3b" @@ -1809,6 +1893,114 @@ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== +"@pnpm/constants@7.1.1": + version "7.1.1" + resolved "https://registry.yarnpkg.com/@pnpm/constants/-/constants-7.1.1.tgz#3db261425fe15425aa213a2b003f4f60c9378b43" + integrity sha512-31pZqMtjwV+Vaq7MaPrT1EoDFSYwye3dp6BiHIGRJmVThCQwySRKM7hCvqqI94epNkqFAAYoWrNynWoRYosGdw== + +"@pnpm/core-loggers@9.0.6": + version "9.0.6" + resolved "https://registry.yarnpkg.com/@pnpm/core-loggers/-/core-loggers-9.0.6.tgz#59a65822cc5ef901dad5aca5b8f1f9562cf91e2a" + integrity sha512-iK67SGbp+06bA/elpg51wygPFjNA7JKHtKkpLxqXXHw+AjFFBC3f2OznJsCIuDK6HdGi5UhHLYqo5QxJ2gMqJQ== + dependencies: + "@pnpm/types" "9.4.2" + +"@pnpm/error@5.0.3": + version "5.0.3" + resolved "https://registry.yarnpkg.com/@pnpm/error/-/error-5.0.3.tgz#4dbb9f4acb0b30c373b3ca5024cdf495f03f4380" + integrity sha512-ONJU5cUeoeJSy50qOYsMZQHTA/9QKmGgh1ATfEpCLgtbdwqUiwD9MxHNeXUYYI/pocBCz6r1ZCFqiQvO+8SUKA== + dependencies: + "@pnpm/constants" "7.1.1" + +"@pnpm/fetching-types@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@pnpm/fetching-types/-/fetching-types-5.0.0.tgz#36807c4bea4697d5ad7519d80929666a91c0083d" + integrity sha512-o9gdO1v8Uc5P2fBBuW6GSpfTqIivQmQlqjQJdFiQX0m+tgxlrMRneIg392jZuc6fk7kFqjLheInlslgJfwY+4Q== + dependencies: + "@zkochan/retry" "^0.2.0" + node-fetch "3.0.0-beta.9" + +"@pnpm/graceful-fs@3.2.0": + version "3.2.0" + resolved "https://registry.yarnpkg.com/@pnpm/graceful-fs/-/graceful-fs-3.2.0.tgz#241846c42c23feff7421b8bd97d4039891003f12" + integrity sha512-vRoXJxscDpHak7YE9SqCkzfrayn+Lw+YueOeHIPEqkgokrHeYgYeONoc2kGh0ObHaRtNSsonozVfJ456kxLNvA== + dependencies: + graceful-fs "^4.2.11" + +"@pnpm/logger@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@pnpm/logger/-/logger-5.0.0.tgz#9ac8254d40d8d5b5e676742dc66b8cac1af380bf" + integrity sha512-YfcB2QrX+Wx1o6LD1G2Y2fhDhOix/bAY/oAnMpHoNLsKkWIRbt1oKLkIFvxBMzLwAEPqnYWguJrYC+J6i4ywbw== + dependencies: + bole "^5.0.0" + ndjson "^2.0.0" + +"@pnpm/npm-package-arg@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@pnpm/npm-package-arg/-/npm-package-arg-1.0.0.tgz#2a27938f4d38c6cce5f3695fd1e7d5ed8929645e" + integrity sha512-oQYP08exi6mOPdAZZWcNIGS+KKPsnNwUBzSuAEGWuCcqwMAt3k/WVCqVIXzBxhO5sP2b43og69VHmPj6IroKqw== + dependencies: + hosted-git-info "^4.0.1" + semver "^7.3.5" + validate-npm-package-name "^4.0.0" + +"@pnpm/npm-resolver@18.1.1": + version "18.1.1" + resolved "https://registry.yarnpkg.com/@pnpm/npm-resolver/-/npm-resolver-18.1.1.tgz#64a259825db6dc4e4615f5b67464c1cd174850bf" + integrity sha512-NptzncmMD5ZMimbjWkGpMzuBRhlCY+sh7mzypPdBOTNlh5hmEQe/VaRKjNK4V9/b0C/llElkvIePL6acybu86w== + dependencies: + "@pnpm/core-loggers" "9.0.6" + "@pnpm/error" "5.0.3" + "@pnpm/fetching-types" "5.0.0" + "@pnpm/graceful-fs" "3.2.0" + "@pnpm/resolve-workspace-range" "5.0.1" + "@pnpm/resolver-base" "11.1.0" + "@pnpm/types" "9.4.2" + "@zkochan/retry" "^0.2.0" + encode-registry "^3.0.1" + load-json-file "^6.2.0" + lru-cache "^10.0.2" + normalize-path "^3.0.0" + p-limit "^3.1.0" + p-memoize "4.0.1" + parse-npm-tarball-url "^3.0.0" + path-temp "^2.1.0" + ramda "npm:@pnpm/ramda@0.28.1" + rename-overwrite "^5.0.0" + semver "^7.5.4" + ssri "10.0.5" + version-selector-type "^3.0.0" + +"@pnpm/resolve-workspace-range@5.0.1": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@pnpm/resolve-workspace-range/-/resolve-workspace-range-5.0.1.tgz#839179560fbf5e565234e5dd1d65b79765d86f4c" + integrity sha512-yQ0pMthlw8rTgS/C9hrjne+NEnnSNevCjtdodd7i15I59jMBYciHifZ/vjg0NY+Jl+USTc3dBE+0h/4tdYjMKg== + dependencies: + semver "^7.4.0" + +"@pnpm/resolver-base@11.1.0": + version "11.1.0" + resolved "https://registry.yarnpkg.com/@pnpm/resolver-base/-/resolver-base-11.1.0.tgz#e640ba9ae096bf05a0b905496a63509556322618" + integrity sha512-y2qKaj18pwe1VWc3YXEitdYFo+WqOOt60aqTUuOVkJAirUzz0DzuYh3Ifct4znYWPdgUXHaN5DMphNF5iL85rA== + dependencies: + "@pnpm/types" "9.4.2" + +"@pnpm/types@9.4.2": + version "9.4.2" + resolved "https://registry.yarnpkg.com/@pnpm/types/-/types-9.4.2.tgz#0a34c3c41d5452461d8d8958374a727f9c46cfb2" + integrity sha512-g1hcF8Nv4gd76POilz9gD4LITAPXOe5nX4ijgr8ixCbLQZfcpYiMfJ+C1RlMNRUDo8vhlNB4O3bUlxmT6EAQXA== + +"@pnpm/workspace.pkgs-graph@^2.0.14": + version "2.0.16" + resolved "https://registry.yarnpkg.com/@pnpm/workspace.pkgs-graph/-/workspace.pkgs-graph-2.0.16.tgz#8f5fa108a34aa584c24ab825be6b42f99a06a155" + integrity sha512-WNsDLkDKm7/eht91s/Iif9ELLabdshAIqpH3svCwdp/xiRxGumfUWkCCeCODjLbBCQehrsl3ugSsboIvk0xiPw== + dependencies: + "@pnpm/npm-package-arg" "^1.0.0" + "@pnpm/npm-resolver" "18.1.1" + "@pnpm/resolve-workspace-range" "5.0.1" + "@pnpm/types" "9.4.2" + ramda "npm:@pnpm/ramda@0.28.1" + "@sinclair/typebox@^0.24.1": version "0.24.51" resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.51.tgz#645f33fe4e02defe26f2f5c0410e1c094eac7f5f" @@ -1833,6 +2025,15 @@ dependencies: "@sinonjs/commons" "^3.0.0" +"@snyk/github-codeowners@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@snyk/github-codeowners/-/github-codeowners-1.1.0.tgz#45b99732c3c38b5f5b47e43d2b0c9db67a6d2bcc" + integrity sha512-lGFf08pbkEac0NYgVf4hdANpAgApRjNByLXB+WBip3qj1iendOIyAwP2GKkKbQMNVy2r1xxDf0ssfWscoiC+Vw== + dependencies: + commander "^4.1.1" + ignore "^5.1.8" + p-map "^4.0.0" + "@tootallnate/once@2": version "2.0.0" resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" @@ -2005,6 +2206,11 @@ resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.3.tgz#291c243e4b94dbfbc0c0ee26b7666f1d5c030e2c" integrity sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg== +"@types/picomatch@2.3.3": + version "2.3.3" + resolved "https://registry.yarnpkg.com/@types/picomatch/-/picomatch-2.3.3.tgz#be60498568c19e989e43fb39aa84be1ed3655e92" + integrity sha512-Yll76ZHikRFCyz/pffKGjrCwe/le2CDwOP5F210KQo27kpRE46U2rDnzikNlVn6/ezH3Mhn46bJMTfeVTtcYMg== + "@types/retry@0.12.0": version "0.12.0" resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.0.tgz#2b35eccfcee7d38cd72ad99232fbd58bffb3c84d" @@ -2196,6 +2402,18 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== +"@zkochan/retry@^0.2.0": + version "0.2.0" + resolved "https://registry.yarnpkg.com/@zkochan/retry/-/retry-0.2.0.tgz#cb52c9fce1976f3eed7b1979b739e70706f4a3d2" + integrity sha512-WhB+2B/ZPlW2Xy/kMJBrMbqecWXcbDDgn0K0wKBAgO2OlBTz1iLJrRWduo+DGGn0Akvz1Lu4Xvls7dJojximWw== + +"@zkochan/rimraf@^2.1.2": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@zkochan/rimraf/-/rimraf-2.1.3.tgz#1074cb72d6e4997275285b04296a343b6ac7046b" + integrity sha512-mCfR3gylCzPC+iqdxEA6z5SxJeOgzgbwmyxanKriIne5qZLswDe/M43aD3p5MNzwzXRhbZg/OX+MpES6Zk1a6A== + dependencies: + rimraf "^3.0.2" + abab@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" @@ -2241,6 +2459,14 @@ agent-base@6: dependencies: debug "4" +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + ajv@^6.12.4, ajv@~6.12.6: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" @@ -2339,6 +2565,11 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== +arity-n@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/arity-n/-/arity-n-1.0.4.tgz#d9e76b11733e08569c0847ae7b39b2860b30b745" + integrity sha512-fExL2kFDC1Q2DUOx3whE/9KoN66IzkY4b4zUHUBFM1ojEYjZZYDcUW3bek/ufGionX9giIKDC5redH2IlGqcQQ== + array-buffer-byte-length@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead" @@ -2358,6 +2589,13 @@ array-includes@^3.1.7: get-intrinsic "^1.2.1" is-string "^1.0.7" +array-last@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/array-last/-/array-last-1.3.0.tgz#7aa77073fec565ddab2493f5f88185f404a9d336" + integrity sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg== + dependencies: + is-number "^4.0.0" + array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" @@ -2510,6 +2748,11 @@ babel-preset-jest@^29.6.3: babel-plugin-jest-hoist "^29.6.3" babel-preset-current-node-syntax "^1.0.0" +babylon@^6.9.1: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" + integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== + balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" @@ -2532,6 +2775,14 @@ binary-extensions@^2.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== +bole@^5.0.0: + version "5.0.11" + resolved "https://registry.yarnpkg.com/bole/-/bole-5.0.11.tgz#c4a165975422daee6f576360e882a425c8e40617" + integrity sha512-KB0Ye0iMAW5BnNbnLfMSQcnI186hKUzE2fpkZWqcxsoTR7eqzlTidSOMYPHJOn/yR7VGH7uSZp37qH9q2Et0zQ== + dependencies: + fast-safe-stringify "^2.0.7" + individual "^3.0.0" + brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -2598,6 +2849,13 @@ builtin-modules@^3.3.0: resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== +builtins@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/builtins/-/builtins-5.1.0.tgz#6d85eeb360c4ebc166c3fdef922a15aa7316a5e8" + integrity sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg== + dependencies: + semver "^7.0.0" + call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.5.tgz#6fa2b7845ce0ea49bf4d8b9ef64727a2c2e2e513" @@ -2701,6 +2959,11 @@ clean-regexp@^1.0.0: dependencies: escape-string-regexp "^1.0.5" +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + cli-cursor@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-4.0.0.tgz#3cecfe3734bf4fe02a8361cbdc0f6fe28c6a57ea" @@ -2725,14 +2988,10 @@ cliui@^8.0.1: strip-ansi "^6.0.1" wrap-ansi "^7.0.0" -clone-deep@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" - integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== - dependencies: - is-plain-object "^2.0.4" - kind-of "^6.0.2" - shallow-clone "^3.0.0" +clone@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== co@^4.6.0: version "4.6.0" @@ -2785,7 +3044,7 @@ commander@11.1.0: resolved "https://registry.yarnpkg.com/commander/-/commander-11.1.0.tgz#62fdce76006a68e5c1ab3314dc92e800eb83d906" integrity sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ== -commander@^4.0.1: +commander@^4.0.1, commander@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== @@ -2795,10 +3054,12 @@ comment-parser@1.4.1: resolved "https://registry.yarnpkg.com/comment-parser/-/comment-parser-1.4.1.tgz#bdafead37961ac079be11eb7ec65c4d021eaf9cc" integrity sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg== -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== +compose-function@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/compose-function/-/compose-function-3.0.3.tgz#9ed675f13cc54501d30950a486ff6a7ba3ab185f" + integrity sha512-xzhzTJ5eC+gmIzvZq+C3kCJHsp9os6tJkrigDRZclyGtOKINbZtE8n1Tzmeh32jW+BUDPbvZpibwvJHBLGMVwg== + dependencies: + arity-n "^1.0.4" concat-map@0.0.1: version "0.0.1" @@ -2866,6 +3127,11 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" +crypto-random-string@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" + integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== + cssom@^0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.5.0.tgz#d254fa92cd8b6fbd83811b9fbaed34663cc17c36" @@ -2883,6 +3149,11 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" +data-uri-to-buffer@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz#594b8973938c5bc2c33046535785341abc4f3636" + integrity sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og== + data-urls@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-3.0.2.tgz#9cf24a477ae22bcef5cd5f6f0bfbc1d2d3be9143" @@ -2916,6 +3187,11 @@ dedent@^1.0.0: resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.1.tgz#4f3fc94c8b711e9bb2800d185cd6ad20f2a90aff" integrity sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg== +deep-freeze@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/deep-freeze/-/deep-freeze-0.0.1.tgz#3a0b0005de18672819dfd38cd31f91179c893e84" + integrity sha512-Z+z8HiAvsGwmjqlphnHW5oz6yWlOwu6EQfFTjmeTWlDeda3FS2yv3jhq35TX/ewmsnqB+RX2IdsIOyjJCQN5tg== + deep-is@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" @@ -2926,6 +3202,13 @@ deepmerge@^4.2.2: resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== +defaults@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a" + integrity sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A== + dependencies: + clone "^1.0.2" + define-data-property@^1.0.1, define-data-property@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.1.tgz#c35f7cd0ab09883480d12ac5cb213715587800b3" @@ -3002,6 +3285,15 @@ eastasianwidth@^0.2.0: resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== +easy-table@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/easy-table/-/easy-table-1.2.0.tgz#ba9225d7138fee307bfd4f0b5bc3c04bdc7c54eb" + integrity sha512-OFzVOv03YpvtcWGe5AayU5G2hgybsg3iqA6drU8UaoZyB9jLGMTrz9+asnLp/E+6qPh88yEI1gvyZFZ41dmgww== + dependencies: + ansi-regex "^5.0.1" + optionalDependencies: + wcwidth "^1.0.1" + electron-to-chromium@^1.4.601: version "1.4.655" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.655.tgz#112410db0d7f9c2b4ed8baa3b1b548522a6f89d4" @@ -3032,6 +3324,13 @@ emoji-regex@^9.2.2: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== +encode-registry@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/encode-registry/-/encode-registry-3.0.1.tgz#cb925d0db14ce59b18882b62c67133721b0846d1" + integrity sha512-6qOwkl1g0fv0DN3Y3ggr2EaZXN71aoAqPp3p/pVaWSBSIo+YjLOWN61Fva43oVyQNPf7kgm8lkudzlzojwE2jw== + dependencies: + mem "^8.0.0" + enhanced-resolve@^5.12.0: version "5.15.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz#1af946c7d93603eb88e9896cee4904dc012e9c35" @@ -3045,6 +3344,11 @@ entities@^4.4.0: resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== +err-code@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" + integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== + error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" @@ -3467,7 +3771,7 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-glob@^3.2.9: +fast-glob@3.3.2, fast-glob@^3.2.9: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== @@ -3499,7 +3803,12 @@ fast-levenshtein@^2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== -fastq@^1.6.0: +fast-safe-stringify@^2.0.7: + version "2.1.1" + resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" + integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== + +fastq@^1.15.0, fastq@^1.6.0: version "1.17.1" resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== @@ -3513,6 +3822,11 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" +fetch-blob@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-2.1.2.tgz#a7805db1361bd44c1ef62bb57fb5fe8ea173ef3c" + integrity sha512-YKqtUDwqLyfyMnmbw8XD6Q8j9i/HggKtPEI+pZ1+8bvheBu78biSmNaXWusx1TauGqtUUGx/cBb1mKdq2rLYow== + fetch-mock-jest@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/fetch-mock-jest/-/fetch-mock-jest-1.5.1.tgz#0e13df990d286d9239e284f12b279ed509bf53cd" @@ -3550,21 +3864,15 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" -find-cache-dir@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" - integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== - dependencies: - commondir "^1.0.1" - make-dir "^2.0.0" - pkg-dir "^3.0.0" +filter-iterator@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/filter-iterator/-/filter-iterator-0.0.1.tgz#0a2ecf07d6c06f96bdeb6846f8e88b57b8da1f37" + integrity sha512-v4lhL7Qa8XpbW3LN46CEnmhGk3eHZwxfNl5at20aEkreesht4YKb/Ba3BUIbnPhAC/r3dmu7ABaGk6MAvh2alA== -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" +filter-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" + integrity sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ== find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" @@ -3619,6 +3927,15 @@ form-data@^4.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" +fs-extra@10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-readdir-recursive@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27" @@ -3728,6 +4045,17 @@ glob-to-regexp@^0.4.0: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== +glob@^10.2.2: + version "10.3.12" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.12.tgz#3a65c363c2e9998d220338e88a5f6ac97302960b" + integrity sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg== + dependencies: + foreground-child "^3.1.0" + jackspeak "^2.3.6" + minimatch "^9.0.1" + minipass "^7.0.4" + path-scurry "^1.10.2" + glob@^10.3.7: version "10.3.10" resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b" @@ -3789,7 +4117,7 @@ gopd@^1.0.1: dependencies: get-intrinsic "^1.1.3" -graceful-fs@^4.2.4, graceful-fs@^4.2.9: +graceful-fs@^4.1.15, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.9: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -3814,6 +4142,11 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== +has-own-property@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/has-own-property/-/has-own-property-0.1.0.tgz#992b0f5bb3a25416f8d4d0cde53f497b9d7b1ea5" + integrity sha512-14qdBKoonU99XDhWcFKZTShK+QV47qU97u8zzoVo9cL5TZ3BmBHXogItSt9qJjR0KUMFRhcCW8uGIGl8nkl7Aw== + has-property-descriptors@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz#52ba30b6c5ec87fd89fa574bc1c39125c6f65340" @@ -3855,6 +4188,20 @@ hosted-git-info@^2.1.4: resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== +hosted-git-info@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" + integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA== + dependencies: + lru-cache "^6.0.0" + +hosted-git-info@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-7.0.1.tgz#9985fcb2700467fecf7f33a4d4874e30680b5322" + integrity sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA== + dependencies: + lru-cache "^10.0.1" + html-encoding-sniffer@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz#2cb1a8cf0db52414776e5b2a7a04d5dd98158de9" @@ -3906,7 +4253,12 @@ iconv-lite@0.6.3: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -ignore@^5.2.0, ignore@^5.2.4: +identity-function@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/identity-function/-/identity-function-1.0.0.tgz#bea1159f0985239be3ca348edf40ce2f0dd2c21d" + integrity sha512-kNrgUK0qI+9qLTBidsH85HjDLpZfrrS0ElquKKe/fJFdB3D7VeKdXXEvOPDUHSHOzdZKCAAaQIWWyp0l2yq6pw== + +ignore@^5.1.8, ignore@^5.2.0, ignore@^5.2.4: version "5.3.1" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== @@ -3937,6 +4289,11 @@ indent-string@^4.0.0: resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== +individual@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/individual/-/individual-3.0.0.tgz#e7ca4f85f8957b018734f285750dc22ec2f9862d" + integrity sha512-rUY5vtT748NMRbEMrTNiFfy29BgGZwGXUi2NFUVMWQrogSLzlJvQV9eeMWi+g1aVaQ53tpyLAQtd5x/JH0Nh1g== + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -3945,7 +4302,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2: +inherits@2, inherits@^2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -4014,7 +4371,7 @@ is-core-module@^2.1.0, is-core-module@^2.11.0: dependencies: has "^1.0.3" -is-core-module@^2.13.0, is-core-module@^2.13.1: +is-core-module@^2.13.0, is-core-module@^2.13.1, is-core-module@^2.8.1: version "2.13.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== @@ -4062,6 +4419,11 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" +is-iterable@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-iterable/-/is-iterable-1.1.1.tgz#71f9aa6f113e1d968ebe1d41cff4c8fb23a817bc" + integrity sha512-EdOZCr0NsGE00Pot+x1ZFx9MJK3C6wy91geZpXwvwexDLJvA4nzYyZf7r+EIwSeVsOLDdBz7ATg9NqKTzuNYuQ== + is-negative-zero@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" @@ -4074,6 +4436,11 @@ is-number-object@^1.0.4: dependencies: has-tostringtag "^1.0.0" +is-number@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" + integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== + is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" @@ -4084,13 +4451,6 @@ is-path-inside@^3.0.3: resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== -is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" @@ -4164,10 +4524,10 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== +isexe@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-3.1.1.tgz#4a407e2bd78ddfb14bea0c27c6f7072dde775f0d" + integrity sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ== istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" @@ -4222,7 +4582,12 @@ istanbul-reports@^3.1.3: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -jackspeak@^2.3.5: +iterable-lookahead@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/iterable-lookahead/-/iterable-lookahead-1.0.0.tgz#896dfcb78680bdb50036e97edb034c8b68a9737f" + integrity sha512-hJnEP2Xk4+44DDwJqUQGdXal5VbyeWLaPyDl2AQc242Zr7iqz4DgpQOrEzglWVMGHMDCkguLHEKxd1+rOsmgSQ== + +jackspeak@^2.3.5, jackspeak@^2.3.6: version "2.3.6" resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== @@ -4660,6 +5025,11 @@ jest@^29.0.0: import-local "^3.0.2" jest-cli "^29.7.0" +jiti@1.21.0: + version "1.21.0" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.0.tgz#7c97f8fe045724e136a397f7340475244156105d" + integrity sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q== + jju@~1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/jju/-/jju-1.4.0.tgz#a3abe2718af241a2b2904f84a625970f389ae32a" @@ -4670,6 +5040,13 @@ js-tokens@^4.0.0: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== +js-yaml@4.1.0, js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + js-yaml@^3.13.1: version "3.14.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" @@ -4678,13 +5055,6 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" -js-yaml@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" - integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== - dependencies: - argparse "^2.0.1" - jsdoc-type-pratt-parser@~4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz#136f0571a99c184d84ec84662c45c29ceff71114" @@ -4742,6 +5112,11 @@ json-parse-even-better-errors@^2.3.0: resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== +json-parse-even-better-errors@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz#02bb29fb5da90b5444581749c22cedd3597c6cb0" + integrity sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg== + json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" @@ -4752,6 +5127,11 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== +json-stringify-safe@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== + json5@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" @@ -4769,21 +5149,54 @@ jsonc-parser@^3.2.0: resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.1.tgz#031904571ccf929d7670ee8c547545081cb37f1a" integrity sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA== +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + jwt-decode@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-4.0.0.tgz#2270352425fd413785b2faf11f6e755c5151bd4b" integrity sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA== -kind-of@^6.0.2: - version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" - integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== - kleur@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== +knip@^4.0.1: + version "4.6.0" + resolved "https://registry.yarnpkg.com/knip/-/knip-4.6.0.tgz#8857616ff89e81e404f07b1a92ad64f43b55dc70" + integrity sha512-6slzggzmyAuvtr97nH56ob1RNlkrG2dGF7yn8PJ/LIF8bPsoM93TRNLWTbmuOg4/E1CImilSX4qy9fok0AKJyA== + dependencies: + "@ericcornelissen/bash-parser" "0.5.2" + "@nodelib/fs.walk" "2.0.0" + "@npmcli/map-workspaces" "3.0.4" + "@npmcli/package-json" "5.0.0" + "@pnpm/logger" "5.0.0" + "@pnpm/workspace.pkgs-graph" "^2.0.14" + "@snyk/github-codeowners" "1.1.0" + "@types/picomatch" "2.3.3" + easy-table "1.2.0" + fast-glob "3.3.2" + jiti "1.21.0" + js-yaml "4.1.0" + micromatch "4.0.5" + minimist "1.2.8" + picocolors "1.0.0" + picomatch "4.0.1" + pretty-ms "9.0.0" + semver "7.6.0" + smol-toml "1.1.4" + strip-json-comments "5.0.1" + summary "2.1.0" + zod "3.22.4" + zod-validation-error "3.0.0" + leven@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" @@ -4835,13 +5248,15 @@ listr2@8.0.1: rfdc "^1.3.0" wrap-ansi "^9.0.0" -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== +load-json-file@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" + integrity sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ== dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" + graceful-fs "^4.1.15" + parse-json "^5.0.0" + strip-bom "^4.0.0" + type-fest "^0.6.0" locate-path@^5.0.0: version "5.0.0" @@ -4857,6 +5272,11 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" +lodash.curry@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.curry/-/lodash.curry-4.1.1.tgz#248e36072ede906501d75966200a86dab8b23170" + integrity sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA== + lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" @@ -4893,6 +5313,11 @@ loglevel@^1.7.1: resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.9.1.tgz#d63976ac9bcd03c7c873116d41c2a85bafff1be7" integrity sha512-hP3I3kCrDIMuRwAwHltphhDM1r8i55H33GgqjXbrisuJhF4kRhW1dNuxsRklp4bXl8DSdLaNLuiL4A/LWRfxvg== +lru-cache@^10.0.1, lru-cache@^10.0.2, lru-cache@^10.2.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.0.tgz#0bd445ca57363465900f4d1f9bd8db343a4d95c3" + integrity sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q== + lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -4917,7 +5342,14 @@ lunr@^2.3.9: resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== -make-dir@^2.0.0, make-dir@^2.1.0: +magic-string@^0.16.0: + version "0.16.0" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.16.0.tgz#970ebb0da7193301285fb1aa650f39bdd81eb45a" + integrity sha512-c4BEos3y6G2qO0B9X7K0FVLOPT9uGrjYwYRLFmDqyl5YMboUviyecnXWp94fJTSMwPw2/sf+CEYt5AGpmklkkQ== + dependencies: + vlq "^0.2.1" + +make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== @@ -4944,6 +5376,18 @@ makeerror@1.0.12: dependencies: tmpl "1.0.5" +map-age-cleaner@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== + dependencies: + p-defer "^1.0.0" + +map-obj@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" + integrity sha512-TzQSV2DiMYgoF5RycneKVUzIa9bQsj/B3tTgsE3dOGqlzHnGIDaC7XBE7grnA+8kZPnfqSGFe95VHc2oc0VFUQ== + marked@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/marked/-/marked-4.3.0.tgz#796362821b019f734054582038b116481b456cf3" @@ -4969,6 +5413,22 @@ matrix-widget-api@^1.6.0: "@types/events" "^3.0.0" events "^3.2.0" +mem@^6.0.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/mem/-/mem-6.1.1.tgz#ea110c2ebc079eca3022e6b08c85a795e77f6318" + integrity sha512-Ci6bIfq/UgcxPTYa8dQQ5FY3BzKkT894bwXWXxC/zqs0XgMO2cT20CGkOqda7gZNkmK5VP4x89IGZ6K7hfbn3Q== + dependencies: + map-age-cleaner "^0.1.3" + mimic-fn "^3.0.0" + +mem@^8.0.0: + version "8.1.1" + resolved "https://registry.yarnpkg.com/mem/-/mem-8.1.1.tgz#cf118b357c65ab7b7e0817bdf00c8062297c0122" + integrity sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA== + dependencies: + map-age-cleaner "^0.1.3" + mimic-fn "^3.1.0" + merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -5004,6 +5464,11 @@ mimic-fn@^2.1.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== +mimic-fn@^3.0.0, mimic-fn@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-3.1.0.tgz#65755145bbf3e36954b949c16450427451d5ca74" + integrity sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ== + mimic-fn@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" @@ -5028,12 +5493,19 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" -minimist@^1.2.0, minimist@^1.2.6: +minimatch@^9.0.0: + version "9.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51" + integrity sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw== + dependencies: + brace-expansion "^2.0.1" + +minimist@1.2.8, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.3, minipass@^7.0.4: version "7.0.4" resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== @@ -5058,6 +5530,25 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== +ndjson@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ndjson/-/ndjson-2.0.0.tgz#320ac86f6fe53f5681897349b86ac6f43bfa3a19" + integrity sha512-nGl7LRGrzugTtaFcJMhLbpzJM6XdivmbkdlaGcrk/LXg2KL/YBC6z1g70xh0/al+oFuVFP8N8kiWRucmeEH/qQ== + dependencies: + json-stringify-safe "^5.0.1" + minimist "^1.2.5" + readable-stream "^3.6.0" + split2 "^3.0.0" + through2 "^4.0.0" + +node-fetch@3.0.0-beta.9: + version "3.0.0-beta.9" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.0.0-beta.9.tgz#0a7554cfb824380dd6812864389923c783c80d9b" + integrity sha512-RdbZCEynH2tH46+tj0ua9caUHVWrd/RHnRfvly2EVdqGmI3ndS1Vn/xjm5KuGejDt2RNDQsVRLPNd2QPwcewVg== + dependencies: + data-uri-to-buffer "^3.0.1" + fetch-blob "^2.1.1" + node-fetch@^2.7.0: version "2.7.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" @@ -5085,11 +5576,53 @@ normalize-package-data@^2.5.0: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" +normalize-package-data@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-6.0.0.tgz#68a96b3c11edd462af7189c837b6b1064a484196" + integrity sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg== + dependencies: + hosted-git-info "^7.0.0" + is-core-module "^2.8.1" + semver "^7.3.5" + validate-npm-package-license "^3.0.4" + normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== +npm-install-checks@^6.0.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-6.3.0.tgz#046552d8920e801fa9f919cad569545d60e826fe" + integrity sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw== + dependencies: + semver "^7.1.1" + +npm-normalize-package-bin@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz#25447e32a9a7de1f51362c61a559233b89947832" + integrity sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ== + +npm-package-arg@^11.0.0: + version "11.0.1" + resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-11.0.1.tgz#f208b0022c29240a1c532a449bdde3f0a4708ebc" + integrity sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ== + dependencies: + hosted-git-info "^7.0.0" + proc-log "^3.0.0" + semver "^7.3.5" + validate-npm-package-name "^5.0.0" + +npm-pick-manifest@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz#f87a4c134504a2c7931f2bb8733126e3c3bb7e8f" + integrity sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg== + dependencies: + npm-install-checks "^6.0.0" + npm-normalize-package-bin "^3.0.0" + npm-package-arg "^11.0.0" + semver "^7.3.5" + npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" @@ -5119,6 +5652,16 @@ object-keys@^1.1.1: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== +object-pairs@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-pairs/-/object-pairs-0.1.0.tgz#8276eed81d60b8549d69c5f73a682ab9da4ff32f" + integrity sha512-3ECr6K831I4xX/Mduxr9UC+HPOz/d6WKKYj9p4cmC8Lg8p7g8gitzsxNX5IWlSIgFWN/a4JgrJaoAMKn20oKwA== + +object-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/object-values/-/object-values-1.0.0.tgz#72af839630119e5b98c3b02bb8c27e3237158105" + integrity sha512-+8hwcz/JnQ9EpLIXzN0Rs7DLsBpJNT/xYehtB/jU93tHYr5BFEO8E+JGQNOSqE7opVzz5cGksKFHt7uUJVLSjQ== + object.assign@^4.1.4: version "4.1.5" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" @@ -5197,7 +5740,12 @@ optionator@^0.9.3: prelude-ls "^1.2.1" type-check "^0.4.0" -p-limit@^2.0.0, p-limit@^2.2.0: +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw== + +p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -5211,13 +5759,6 @@ p-limit@^3.0.2, p-limit@^3.1.0: dependencies: yocto-queue "^0.1.0" -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -5232,6 +5773,21 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + +p-memoize@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/p-memoize/-/p-memoize-4.0.1.tgz#6f4231857fec10de2504611fe820c808fa8c5f8b" + integrity sha512-km0sP12uE0dOZ5qP+s7kGVf07QngxyG0gS8sYFvFWhqlgzOsSy+m71aUejf/0akxj5W7gE//2G74qTv6b4iMog== + dependencies: + mem "^6.0.1" + mimic-fn "^3.0.0" + p-retry@4: version "4.6.2" resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.6.2.tgz#9baae7184057edd4e17231cee04264106e092a16" @@ -5262,6 +5818,18 @@ parse-json@^5.0.0, parse-json@^5.2.0: json-parse-even-better-errors "^2.3.0" lines-and-columns "^1.1.6" +parse-ms@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-ms/-/parse-ms-4.0.0.tgz#c0c058edd47c2a590151a718990533fd62803df4" + integrity sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw== + +parse-npm-tarball-url@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/parse-npm-tarball-url/-/parse-npm-tarball-url-3.0.0.tgz#4bcdd84b7eb824b9539182dea082f7bde2cbb24f" + integrity sha512-InpdgIdNe5xWMEUcrVQUniQKwnggBtJ7+SCwh7zQAZwbbIYZV9XdgJyhtmDSSvykFyQXoe4BINnzKTfCwWLs5g== + dependencies: + semver "^6.1.0" + parse5@^7.0.0, parse5@^7.1.1: version "7.1.2" resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" @@ -5269,11 +5837,6 @@ parse5@^7.0.0, parse5@^7.1.1: dependencies: entities "^4.4.0" -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== - path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -5307,6 +5870,21 @@ path-scurry@^1.10.1: lru-cache "^9.1.1 || ^10.0.0" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" +path-scurry@^1.10.2: + version "1.10.2" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.2.tgz#8f6357eb1239d5fa1da8b9f70e9c080675458ba7" + integrity sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + +path-temp@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/path-temp/-/path-temp-2.1.0.tgz#cc68bb26d4fc301df799bb40b8c005cab0e62786" + integrity sha512-cMMJTAZlion/RWRRC48UbrDymEIt+/YSD/l8NqjneyDw2rDOBQcP5yRkMB4CYGn47KMhZvbblBP7Z79OsMw72w== + dependencies: + unique-string "^2.0.0" + path-to-regexp@^2.2.1: version "2.4.0" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-2.4.0.tgz#35ce7f333d5616f1c1e1bfe266c3aba2e5b2e704" @@ -5317,11 +5895,16 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -picocolors@^1.0.0: +picocolors@1.0.0, picocolors@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== +picomatch@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.1.tgz#68c26c8837399e5819edce48590412ea07f17a07" + integrity sha512-xUXwsxNjwTQ8K3GnT4pCJm+xq3RUPQbmkYJTP5aFIfNIvbcc/4MUxgBaaRSZJ6yGJZiGSyYlM6MzwTsRk8SYCg== + picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" @@ -5337,18 +5920,11 @@ pify@^4.0.1: resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== -pirates@^4.0.4, pirates@^4.0.6: +pirates@^4.0.4: version "4.0.6" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== -pkg-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" @@ -5390,6 +5966,31 @@ pretty-format@^29.0.0, pretty-format@^29.7.0: ansi-styles "^5.0.0" react-is "^18.0.0" +pretty-ms@9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-9.0.0.tgz#53c57f81171c53be7ce3fd20bdd4265422bc5929" + integrity sha512-E9e9HJ9R9NasGOgPaPE8VMeiPKAyWR5jcFpNnwIejslIhWqdqOrb2wShBsncMPUb+BcCd2OPYfh7p2W6oemTng== + dependencies: + parse-ms "^4.0.0" + +proc-log@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-3.0.0.tgz#fb05ef83ccd64fd7b20bbe9c8c1070fc08338dd8" + integrity sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A== + +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== + +promise-retry@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" + integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== + dependencies: + err-code "^2.0.2" + retry "^0.12.0" + prompts@^2.0.1: version "2.4.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" @@ -5440,11 +6041,24 @@ queue-microtask@^1.2.2: resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== +"ramda@npm:@pnpm/ramda@0.28.1": + version "0.28.1" + resolved "https://registry.yarnpkg.com/@pnpm/ramda/-/ramda-0.28.1.tgz#0f32abc5275d586a03e0dc1dd90a009ac668ff33" + integrity sha512-zcAG+lvU0fMziNeGXpPyCyCJYp5ZVrPElEE4t14jAmViaihohocZ+dDkcRIyAomox8pQsuZnv1EyHR+pOhmUWw== + react-is@^18.0.0: version "18.2.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== +read-package-json-fast@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz#394908a9725dc7a5f14e70c8e7556dff1d2b1049" + integrity sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw== + dependencies: + json-parse-even-better-errors "^3.0.0" + npm-normalize-package-bin "^3.0.0" + read-pkg-up@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" @@ -5464,6 +6078,15 @@ read-pkg@^5.2.0: parse-json "^5.0.0" type-fest "^0.6.0" +readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.6.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + readdirp@~3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -5535,6 +6158,14 @@ regjsparser@^0.9.1: dependencies: jsesc "~0.5.0" +rename-overwrite@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/rename-overwrite/-/rename-overwrite-5.0.0.tgz#ccd1f85aef47d41647ccc1c681d9b6d054cf5fc8" + integrity sha512-vSxE5Ww7Jnyotvaxi3Dj0vOMoojH8KMkBfs9xYeW/qNfJiLTcC1fmwTjrbGUq3mQSOCxkG0DbdcvwTUrpvBN4w== + dependencies: + "@zkochan/rimraf" "^2.1.2" + fs-extra "10.1.0" + require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -5606,6 +6237,11 @@ restore-cursor@^4.0.0: onetime "^5.1.0" signal-exit "^3.0.2" +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== + retry@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" @@ -5616,6 +6252,11 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== +reverse-arguments@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/reverse-arguments/-/reverse-arguments-1.0.0.tgz#c28095a3a921ac715d61834ddece9027992667cd" + integrity sha512-/x8uIPdTafBqakK0TmPNJzgkLP+3H+yxpUJhCQHsLBg1rYEVNR2D8BRYNWQhVBjyOd7oo1dZRVzIkwMY2oqfYQ== + rfdc@^1.3.0: version "1.3.1" resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.1.tgz#2b6d4df52dffe8bb346992a10ea9451f24373a8f" @@ -5635,7 +6276,7 @@ rimraf@^5.0.0: dependencies: glob "^10.3.7" -run-parallel@^1.1.9: +run-parallel@^1.1.9, run-parallel@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== @@ -5652,7 +6293,7 @@ safe-array-concat@^1.0.1: has-symbols "^1.0.3" isarray "^2.0.5" -safe-buffer@^5.0.1: +safe-buffer@^5.0.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -5688,18 +6329,18 @@ sdp-transform@^2.14.1: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -semver@^6.3.0, semver@^6.3.1: - version "6.3.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" - integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== - -semver@^7.3.7, semver@^7.5.4, semver@^7.6.0: +semver@7.6.0, semver@^7.0.0, semver@^7.1.1, semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.4.0, semver@^7.5.4, semver@^7.6.0: version "7.6.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== dependencies: lru-cache "^6.0.0" +semver@^6.1.0, semver@^6.3.0, semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + semver@^7.5.3: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" @@ -5726,13 +6367,6 @@ set-function-name@^2.0.0: functions-have-names "^1.2.3" has-property-descriptors "^1.0.0" -shallow-clone@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" - integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== - dependencies: - kind-of "^6.0.2" - shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -5745,6 +6379,11 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== +shell-quote-word@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/shell-quote-word/-/shell-quote-word-1.0.1.tgz#e2bdfd22d599fd68886491677e38f560f9d469c9" + integrity sha512-lT297f1WLAdq0A4O+AknIFRP6kkiI3s8C913eJ0XqBxJbZPGWUNkRQk2u8zk4bEAjUJ5i+fSLwB6z1HzeT+DEg== + shiki@^0.14.7: version "0.14.7" resolved "https://registry.yarnpkg.com/shiki/-/shiki-0.14.7.tgz#c3c9e1853e9737845f1d2ef81b31bcfb07056d4e" @@ -5805,6 +6444,11 @@ slice-ansi@^7.0.0: ansi-styles "^6.2.1" is-fullwidth-code-point "^5.0.0" +smol-toml@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/smol-toml/-/smol-toml-1.1.4.tgz#08c23b105f56f17e57b0a77c7edcb10b75a62c5c" + integrity sha512-Y0OT8HezWsTNeEOSVxDnKOW/AyNXHQ4BwJNbAXlLTF5wWsBvrcHhIkE5Rf8kQMLmgf7nDX3PVOlgC6/Aiggu3Q== + source-map-support@0.5.13: version "0.5.13" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" @@ -5813,14 +6457,6 @@ source-map-support@0.5.13: buffer-from "^1.0.0" source-map "^0.6.0" -source-map-support@^0.5.16: - version "0.5.21" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" - integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" @@ -5860,11 +6496,25 @@ spdx-license-ids@^3.0.0: resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz#887da8aa73218e51a1d917502d79863161a93f9c" integrity sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg== +split2@^3.0.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" + integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg== + dependencies: + readable-stream "^3.0.0" + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== +ssri@10.0.5: + version "10.0.5" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-10.0.5.tgz#e49efcd6e36385196cb515d3a2ad6c3f0265ef8c" + integrity sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A== + dependencies: + minipass "^7.0.3" + stack-utils@^2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" @@ -5921,6 +6571,11 @@ string-width@^7.0.0: get-east-asian-width "^1.0.0" strip-ansi "^7.1.0" +string.fromcodepoint@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/string.fromcodepoint/-/string.fromcodepoint-0.2.1.tgz#8d978333c0bc92538f50f383e4888f3e5619d653" + integrity sha512-n69H31OnxSGSZyZbgBlvYIXlrMhJQ0dQAX1js1QDhpaUH6zmU3QYlj07bCwCNlPOu3oRXIubGPl2gDGnHsiCqg== + string.prototype.trim@^1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd" @@ -5948,6 +6603,13 @@ string.prototype.trimstart@^1.0.7: define-properties "^1.2.0" es-abstract "^1.22.1" +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + "strip-ansi-cjs@npm:strip-ansi@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -5996,11 +6658,21 @@ strip-indent@^3.0.0: dependencies: min-indent "^1.0.0" +strip-json-comments@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-5.0.1.tgz#0d8b7d01b23848ed7dbdf4baaaa31a8250d8cfa0" + integrity sha512-0fk9zBqO67Nq5M/m45qHCJxylV/DhBlIOVExqgOMiCCrzrhU6tCibRXNqE3jwJLftzE9SNuZtYbpzcO+i9FiKw== + strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== +summary@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/summary/-/summary-2.1.0.tgz#be8a49a0aa34eb6ceea56042cae88f8add4b0885" + integrity sha512-nMIjMrd5Z2nuB2RZCKJfFMjgS3fygbeyGk9PxPPaJR1RIcyN9yn4A63Isovzm3ZtQuEkLBVgMdPup8UeLH7aQw== + supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -6051,6 +6723,13 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== +through2@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764" + integrity sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw== + dependencies: + readable-stream "3" + tmpl@1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" @@ -6061,6 +6740,18 @@ to-fast-properties@^2.0.0: resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== +to-no-case@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/to-no-case/-/to-no-case-1.0.2.tgz#c722907164ef6b178132c8e69930212d1b4aa16a" + integrity sha512-Z3g735FxuZY8rodxV4gH7LxClE4H0hTIyHNIHdk+vpQxjLm0cwnKXq/OFVZ76SOQmto7txVcwSCwkU5kqp+FKg== + +to-pascal-case@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/to-pascal-case/-/to-pascal-case-1.0.0.tgz#0bbdc8df448886ba01535e543327048d0aa1ce78" + integrity sha512-QGMWHqM6xPrcQW57S23c5/3BbYb0Tbe9p+ur98ckRnGDwD4wbbtDiYI38CfmMKNB5Iv0REjs5SNDntTwvDxzZA== + dependencies: + to-space-case "^1.0.0" + to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -6068,6 +6759,13 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" +to-space-case@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/to-space-case/-/to-space-case-1.0.0.tgz#b052daafb1b2b29dc770cea0163e5ec0ebc9fc17" + integrity sha512-rLdvwXZ39VOn1IxGL3V6ZstoTbwLRckQmn/U8ZDLuWwIXNpuZDhQ3AiRUlhTbOXFVE9C+dR51wM0CBDhk31VcA== + dependencies: + to-no-case "^1.0.0" + tough-cookie@^4.1.2: version "4.1.3" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" @@ -6102,7 +6800,7 @@ ts-api-utils@^1.0.1: resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1" integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ== -ts-node@^10.9.1: +ts-node@^10.9.2: version "10.9.2" resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.2.tgz#70f021c9e185bccdca820e26dc413805c101c71f" integrity sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ== @@ -6269,6 +6967,13 @@ undici-types@~5.26.4: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== +unescape-js@^1.0.5: + version "1.1.4" + resolved "https://registry.yarnpkg.com/unescape-js/-/unescape-js-1.1.4.tgz#4bc6389c499cb055a98364a0b3094e1c3d5da395" + integrity sha512-42SD8NOQEhdYntEiUQdYq/1V/YHwr1HLwlHuTJB5InVVdOSbgI6xu8jK5q65yIzuFCfczzyDF/7hbGzVbyCw0g== + dependencies: + string.fromcodepoint "^0.2.1" + unhomoglyph@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/unhomoglyph/-/unhomoglyph-1.0.6.tgz#ea41f926d0fcf598e3b8bb2980c2ddac66b081d3" @@ -6297,11 +7002,23 @@ unicode-property-aliases-ecmascript@^2.0.0: resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== +unique-string@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" + integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== + dependencies: + crypto-random-string "^2.0.0" + universalify@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== +universalify@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" + integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== + update-browserslist-db@^1.0.13: version "1.0.13" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" @@ -6325,6 +7042,11 @@ url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" +util-deprecate@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + uuid@8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" @@ -6349,7 +7071,7 @@ v8-to-istanbul@^9.0.1: "@types/istanbul-lib-coverage" "^2.0.1" convert-source-map "^1.6.0" -validate-npm-package-license@^3.0.1: +validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== @@ -6357,6 +7079,32 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" +validate-npm-package-name@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz#fe8f1c50ac20afdb86f177da85b3600f0ac0d747" + integrity sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q== + dependencies: + builtins "^5.0.0" + +validate-npm-package-name@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz#f16afd48318e6f90a1ec101377fa0384cfc8c713" + integrity sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ== + dependencies: + builtins "^5.0.0" + +version-selector-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/version-selector-type/-/version-selector-type-3.0.0.tgz#47c365fb4d9ca4a54e6dabcad6fb7a46265f7955" + integrity sha512-PSvMIZS7C1MuVNBXl/CDG2pZq8EXy/NW2dHIdm3bVP5N0PC8utDK8ttXLXj44Gn3J0lQE3U7Mpm1estAOd+eiA== + dependencies: + semver "^7.3.2" + +vlq@^0.2.1: + version "0.2.3" + resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.3.tgz#8f3e4328cf63b1540c0d67e1b2778386f8975b26" + integrity sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow== + vscode-oniguruma@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz#439bfad8fe71abd7798338d1cd3dc53a8beea94b" @@ -6381,6 +7129,13 @@ walker@^1.0.8: dependencies: makeerror "1.0.12" +wcwidth@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + integrity sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg== + dependencies: + defaults "^1.0.3" + webcrypto-core@^1.7.9: version "1.7.9" resolved "https://registry.yarnpkg.com/webcrypto-core/-/webcrypto-core-1.7.9.tgz#a585f0032dbc88d202cff4f266cbef02ba48bd7a" @@ -6473,6 +7228,13 @@ which@^2.0.1: dependencies: isexe "^2.0.0" +which@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/which/-/which-4.0.0.tgz#cd60b5e74503a3fbcfbf6cd6b4138a8bae644c1a" + integrity sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg== + dependencies: + isexe "^3.1.1" + "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" @@ -6589,3 +7351,13 @@ yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== + +zod-validation-error@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.0.0.tgz#69dee45a03ccf9739456bddb50b4d27f121c6f45" + integrity sha512-x+agsJJG9rvC7axF0xqTEdZhJkLHyIZkdOAWDJSmwGPzxNHMHwtU6w2yDOAAP6yuSfTAUhAMJRBfhVGY64ySEQ== + +zod@3.22.4: + version "3.22.4" + resolved "https://registry.yarnpkg.com/zod/-/zod-3.22.4.tgz#f31c3a9386f61b1f228af56faa9255e845cf3fff" + integrity sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg== From 5cdd524da74fa6fca1b76e2edaf7f66d68303f43 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 8 Apr 2024 15:07:00 +0100 Subject: [PATCH 165/595] OIDC improvements in prep of OIDC-QR reciprocation (#4149) * Add `device_authorization_endpoint` field to OIDC issuer well-known metadata Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Allow `validateIdToken` to skip handling nonce when none is present Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Tweak registerOidcClient to check OIDC grant_types_supported before registration Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/test-utils/oidc.ts | 1 + spec/unit/oidc/register.spec.ts | 27 ++++++++++++++++++++ src/@types/oidc-client-ts.d.ts | 24 ++++++++++++++++++ src/oidc/register.ts | 45 +++++++++++++-------------------- src/oidc/validate.ts | 11 ++++++-- 5 files changed, 79 insertions(+), 29 deletions(-) create mode 100644 src/@types/oidc-client-ts.d.ts diff --git a/spec/test-utils/oidc.ts b/spec/test-utils/oidc.ts index 7b2adc226d7..4f9a01c2ee2 100644 --- a/spec/test-utils/oidc.ts +++ b/spec/test-utils/oidc.ts @@ -44,6 +44,7 @@ export const mockOpenIdConfiguration = (issuer = "https://auth.org/"): Validated token_endpoint: issuer + "token", authorization_endpoint: issuer + "auth", registration_endpoint: issuer + "registration", + device_authorization_endpoint: issuer + "device", jwks_uri: issuer + "jwks", response_types_supported: ["code"], grant_types_supported: ["authorization_code", "refresh_token"], diff --git a/spec/unit/oidc/register.spec.ts b/spec/unit/oidc/register.spec.ts index 372f7d677c4..f0a37e33366 100644 --- a/spec/unit/oidc/register.spec.ts +++ b/spec/unit/oidc/register.spec.ts @@ -90,4 +90,31 @@ describe("registerOidcClient()", () => { OidcError.DynamicRegistrationInvalid, ); }); + + it("should throw when required endpoints are unavailable", async () => { + await expect(() => + registerOidcClient( + { + ...delegatedAuthConfig, + registrationEndpoint: undefined, + }, + metadata, + ), + ).rejects.toThrow(OidcError.DynamicRegistrationNotSupported); + }); + + it("should throw when required scopes are unavailable", async () => { + await expect(() => + registerOidcClient( + { + ...delegatedAuthConfig, + metadata: { + ...delegatedAuthConfig.metadata, + grant_types_supported: [delegatedAuthConfig.metadata.grant_types_supported[0]], + }, + }, + metadata, + ), + ).rejects.toThrow(OidcError.DynamicRegistrationNotSupported); + }); }); diff --git a/src/@types/oidc-client-ts.d.ts b/src/@types/oidc-client-ts.d.ts new file mode 100644 index 00000000000..988a680badf --- /dev/null +++ b/src/@types/oidc-client-ts.d.ts @@ -0,0 +1,24 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import "oidc-client-ts"; + +declare module "oidc-client-ts" { + interface OidcMetadata { + // Add the missing device_authorization_endpoint field to the OidcMetadata interface + device_authorization_endpoint?: string; + } +} diff --git a/src/oidc/register.ts b/src/oidc/register.ts index 6e4948f5065..0c5f0556557 100644 --- a/src/oidc/register.ts +++ b/src/oidc/register.ts @@ -50,23 +50,31 @@ interface OidcRegistrationRequestBody { } /** - * Make the client registration request - * @param registrationEndpoint - URL as returned from issuer ./well-known/openid-configuration - * @param clientMetadata - registration metadata - * @returns resolves to the registered client id when registration is successful - * @throws An `Error` with `message` set to an entry in {@link OidcError}, - * when the registration request fails, or the response is invalid. + * Attempts dynamic registration against the configured registration endpoint + * @param delegatedAuthConfig - Auth config from {@link discoverAndValidateOIDCIssuerWellKnown} + * @param clientMetadata - The metadata for the client which to register + * @returns Promise resolved with registered clientId + * @throws when registration is not supported, on failed request or invalid response */ -const doRegistration = async ( - registrationEndpoint: string, +export const registerOidcClient = async ( + delegatedAuthConfig: OidcClientConfig, clientMetadata: OidcRegistrationClientMetadata, ): Promise => { + if (!delegatedAuthConfig.registrationEndpoint) { + throw new Error(OidcError.DynamicRegistrationNotSupported); + } + + const grantTypes: NonEmptyArray = ["authorization_code", "refresh_token"]; + if (grantTypes.some((scope) => !delegatedAuthConfig.metadata.grant_types_supported.includes(scope))) { + throw new Error(OidcError.DynamicRegistrationNotSupported); + } + // https://openid.net/specs/openid-connect-registration-1_0.html const metadata: OidcRegistrationRequestBody = { client_name: clientMetadata.clientName, client_uri: clientMetadata.clientUri, response_types: ["code"], - grant_types: ["authorization_code", "refresh_token"], + grant_types: grantTypes, redirect_uris: clientMetadata.redirectUris, id_token_signed_response_alg: "RS256", token_endpoint_auth_method: "none", @@ -82,7 +90,7 @@ const doRegistration = async ( }; try { - const response = await fetch(registrationEndpoint, { + const response = await fetch(delegatedAuthConfig.registrationEndpoint, { method: Method.Post, headers, body: JSON.stringify(metadata), @@ -108,20 +116,3 @@ const doRegistration = async ( } } }; - -/** - * Attempts dynamic registration against the configured registration endpoint - * @param delegatedAuthConfig - Auth config from {@link discoverAndValidateOIDCIssuerWellKnown} - * @param clientMetadata - The metadata for the client which to register - * @returns Promise resolved with registered clientId - * @throws when registration is not supported, on failed request or invalid response - */ -export const registerOidcClient = async ( - delegatedAuthConfig: OidcClientConfig, - clientMetadata: OidcRegistrationClientMetadata, -): Promise => { - if (!delegatedAuthConfig.registrationEndpoint) { - throw new Error(OidcError.DynamicRegistrationNotSupported); - } - return doRegistration(delegatedAuthConfig.registrationEndpoint, clientMetadata); -}; diff --git a/src/oidc/validate.ts b/src/oidc/validate.ts index eabbc2071cf..a49a955670b 100644 --- a/src/oidc/validate.ts +++ b/src/oidc/validate.ts @@ -83,6 +83,7 @@ export const validateOIDCIssuerWellKnown = (wellKnown: unknown): ValidatedIssuer requiredStringProperty(wellKnown, "revocation_endpoint"), optionalStringProperty(wellKnown, "registration_endpoint"), optionalStringProperty(wellKnown, "account_management_uri"), + optionalStringProperty(wellKnown, "device_authorization_endpoint"), optionalStringArrayProperty(wellKnown, "account_management_actions_supported"), requiredArrayValue(wellKnown, "response_types_supported", "code"), requiredArrayValue(wellKnown, "grant_types_supported", "authorization_code"), @@ -118,6 +119,7 @@ export type ValidatedIssuerMetadata = Partial & | "response_types_supported" | "grant_types_supported" | "code_challenge_methods_supported" + | "device_authorization_endpoint" > & { // MSC2965 extensions to the OIDC spec account_management_uri?: string; @@ -176,7 +178,12 @@ const decodeIdToken = (token: string): IdTokenClaims => { * @param nonce - nonce used in the authentication request * @throws when id token is invalid */ -export const validateIdToken = (idToken: string | undefined, issuer: string, clientId: string, nonce: string): void => { +export const validateIdToken = ( + idToken: string | undefined, + issuer: string, + clientId: string, + nonce: string | undefined, +): void => { try { if (!idToken) { throw new Error("No ID token"); @@ -201,7 +208,7 @@ export const validateIdToken = (idToken: string | undefined, issuer: string, cli * If a nonce value was sent in the Authentication Request, a nonce Claim MUST be present and its value checked * to verify that it is the same value as the one that was sent in the Authentication Request. */ - if (claims.nonce !== nonce) { + if (nonce !== undefined && claims.nonce !== nonce) { throw new Error("Invalid nonce"); } From e4937e62226a90428a66194cb2eb389c94fd848b Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 9 Apr 2024 10:06:41 +0000 Subject: [PATCH 166/595] v32.0.0 --- CHANGELOG.md | 27 +++++++++++++++++++++++++++ package.json | 2 +- 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 91e1eb18d9e..9e1405e3c4c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,30 @@ +Changes in [32.0.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v32.0.0) (2024-04-09) +================================================================================================== +## 🚨 BREAKING CHANGES + +* Remove various deprecated methods \& re-exports ([#4125](https://github.com/matrix-org/matrix-js-sdk/pull/4125)). Contributed by @t3chguy. +* Remove the logic that throws when the lazy loading options has changed. ([#4124](https://github.com/matrix-org/matrix-js-sdk/pull/4124)). Contributed by @langleyd. +* Fix highlights from threads disappearing on new messages ([#4106](https://github.com/matrix-org/matrix-js-sdk/pull/4106)). Contributed by @dbkr. + +## ✨ Features + +* Add new `decryptExistingEvent` test helper ([#4133](https://github.com/matrix-org/matrix-js-sdk/pull/4133)). Contributed by @richvdh. +* Improve types for `sendEvent` ([#4108](https://github.com/matrix-org/matrix-js-sdk/pull/4108)). Contributed by @t3chguy. +* Remove various deprecated methods \& re-exports ([#4125](https://github.com/matrix-org/matrix-js-sdk/pull/4125)). Contributed by @t3chguy. +* Add new enum for verification methods. ([#4129](https://github.com/matrix-org/matrix-js-sdk/pull/4129)). Contributed by @richvdh. +* Add some test utils in a new entrypoint ([#4127](https://github.com/matrix-org/matrix-js-sdk/pull/4127)). Contributed by @richvdh. +* Improve types for `sendStateEvent` ([#4105](https://github.com/matrix-org/matrix-js-sdk/pull/4105)). Contributed by @t3chguy. + +## 🐛 Bug Fixes + +* Improve types for `IPowerLevelsContent` and `hasSufficientPowerLevelFor` ([#4128](https://github.com/matrix-org/matrix-js-sdk/pull/4128)). Contributed by @galash13. +* Remove the logic that throws when the lazy loading options has changed. ([#4124](https://github.com/matrix-org/matrix-js-sdk/pull/4124)). Contributed by @langleyd. +* Fix highlights from threads disappearing on new messages ([#4106](https://github.com/matrix-org/matrix-js-sdk/pull/4106)). Contributed by @dbkr. +* Extend logic for local notification processing to threads ([#4111](https://github.com/matrix-org/matrix-js-sdk/pull/4111)). Contributed by @dbkr. +* Fix public rooms post request search params and body ([#4110](https://github.com/matrix-org/matrix-js-sdk/pull/4110)). Contributed by @ajbura. +* Fix bugs with the first reply to a thread ([#4104](https://github.com/matrix-org/matrix-js-sdk/pull/4104)). Contributed by @dbkr. + + Changes in [31.6.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.6.1) (2024-03-28) ================================================================================================== ## 🐛 Bug Fixes diff --git a/package.json b/package.json index c16f5c02056..cd4a2b32ead 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "32.0.0-rc.0", + "version": "32.0.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 82ed7bd86ae4c8c703f886a490573110035cfe34 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 9 Apr 2024 10:07:09 +0000 Subject: [PATCH 167/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 3a6224686fa..9e5f577d8c5 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,6 +132,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From 936e7c3072b75377eae87b15557fc212d987064c Mon Sep 17 00:00:00 2001 From: Hubert Chathi Date: Thu, 11 Apr 2024 00:01:47 -0400 Subject: [PATCH 168/595] Add support for device dehydration v2 (Element R) (#4062) * initial implementation of device dehydration * add dehydrated flag for devices * add missing dehydration.ts file, add test, add function to schedule dehydration * add more dehydration utility functions * stop scheduled dehydration when crypto stops * bump matrix-crypto-sdk-wasm version, and fix tests * adding dehydratedDevices member to mock OlmDevice isn't necessary any more * fix yarn lock file * more tests * fix test * more tests * fix typo * fix logic for checking if dehydration supported * make changes from review * add missing file * move setup into another function * apply changes from review * implement simpler API * fix type and move the code to the right spot * apply suggestions from review * make sure that cross-signing and secret storage are set up --- spec/integ/crypto/device-dehydration.spec.ts | 181 +++++++++++ .../OutgoingRequestProcessor.spec.ts | 30 ++ spec/unit/rust-crypto/rust-crypto.spec.ts | 35 +- src/crypto-api.ts | 36 ++ src/crypto/index.ts | 15 + src/models/device.ts | 4 + src/rust-crypto/DehydratedDeviceManager.ts | 307 ++++++++++++++++++ src/rust-crypto/OutgoingRequestProcessor.ts | 9 +- src/rust-crypto/device-converter.ts | 1 + src/rust-crypto/rust-crypto.ts | 31 +- yarn.lock | 11 +- 11 files changed, 643 insertions(+), 17 deletions(-) create mode 100644 spec/integ/crypto/device-dehydration.spec.ts create mode 100644 src/rust-crypto/DehydratedDeviceManager.ts diff --git a/spec/integ/crypto/device-dehydration.spec.ts b/spec/integ/crypto/device-dehydration.spec.ts new file mode 100644 index 00000000000..cf319a9878c --- /dev/null +++ b/spec/integ/crypto/device-dehydration.spec.ts @@ -0,0 +1,181 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import "fake-indexeddb/auto"; +import fetchMock from "fetch-mock-jest"; + +import { createClient, ClientEvent, MatrixClient, MatrixEvent } from "../../../src"; +import { RustCrypto } from "../../../src/rust-crypto/rust-crypto"; +import { AddSecretStorageKeyOpts } from "../../../src/secret-storage"; +import { E2EKeyReceiver } from "../../test-utils/E2EKeyReceiver"; +import { E2EKeyResponder } from "../../test-utils/E2EKeyResponder"; + +describe("Device dehydration", () => { + it("should rehydrate and dehydrate a device", async () => { + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); + + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: "@alice:localhost", + deviceId: "aliceDevice", + cryptoCallbacks: { + getSecretStorageKey: async (keys: any, name: string) => { + return [[...Object.keys(keys.keys)][0], new Uint8Array(32)]; + }, + }, + }); + + await initializeSecretStorage(matrixClient, "@alice:localhost", "http://test.server"); + + // count the number of times the dehydration key gets set + let setDehydrationCount = 0; + matrixClient.on(ClientEvent.AccountData, (event: MatrixEvent) => { + if (event.getType() === "org.matrix.msc3814") { + setDehydrationCount++; + } + }); + + const crypto = matrixClient.getCrypto()!; + fetchMock.config.overwriteRoutes = true; + + // start dehydration -- we start with no dehydrated device, and we + // store the dehydrated device that we create + fetchMock.get("path:/_matrix/client/unstable/org.matrix.msc3814.v1/dehydrated_device", { + status: 404, + body: { + errcode: "M_NOT_FOUND", + error: "Not found", + }, + }); + let dehydratedDeviceBody: any; + let dehydrationCount = 0; + let resolveDehydrationPromise: () => void; + fetchMock.put("path:/_matrix/client/unstable/org.matrix.msc3814.v1/dehydrated_device", (_, opts) => { + dehydratedDeviceBody = JSON.parse(opts.body as string); + dehydrationCount++; + if (resolveDehydrationPromise) { + resolveDehydrationPromise(); + } + return {}; + }); + await crypto.startDehydration(); + + expect(dehydrationCount).toEqual(1); + + // a week later, we should have created another dehydrated device + const dehydrationPromise = new Promise((resolve, reject) => { + resolveDehydrationPromise = resolve; + }); + jest.advanceTimersByTime(7 * 24 * 60 * 60 * 1000); + await dehydrationPromise; + expect(dehydrationCount).toEqual(2); + + // restart dehydration -- rehydrate the device that we created above, + // and create a new dehydrated device. We also set `createNewKey`, so + // a new dehydration key will be set + fetchMock.get("path:/_matrix/client/unstable/org.matrix.msc3814.v1/dehydrated_device", { + device_id: dehydratedDeviceBody.device_id, + device_data: dehydratedDeviceBody.device_data, + }); + const eventsResponse = jest.fn((url, opts) => { + // rehydrating should make two calls to the /events endpoint. + // The first time will return a single event, and the second + // time will return no events (which will signal to the + // rehydration function that it can stop) + const body = JSON.parse(opts.body as string); + const nextBatch = body.next_batch ?? "0"; + const events = nextBatch === "0" ? [{ sender: "@alice:localhost", type: "m.dummy", content: {} }] : []; + return { + events, + next_batch: nextBatch + "1", + }; + }); + fetchMock.post( + `path:/_matrix/client/unstable/org.matrix.msc3814.v1/dehydrated_device/${encodeURIComponent(dehydratedDeviceBody.device_id)}/events`, + eventsResponse, + ); + await crypto.startDehydration(true); + expect(dehydrationCount).toEqual(3); + + expect(setDehydrationCount).toEqual(2); + expect(eventsResponse.mock.calls).toHaveLength(2); + + matrixClient.stopClient(); + }); +}); + +/** create a new secret storage and cross-signing keys */ +async function initializeSecretStorage( + matrixClient: MatrixClient, + userId: string, + homeserverUrl: string, +): Promise { + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { + errcode: "M_NOT_FOUND", + error: "Not found", + }, + }); + const e2eKeyReceiver = new E2EKeyReceiver(homeserverUrl); + const e2eKeyResponder = new E2EKeyResponder(homeserverUrl); + e2eKeyResponder.addKeyReceiver(userId, e2eKeyReceiver); + fetchMock.post("path:/_matrix/client/v3/keys/device_signing/upload", {}); + fetchMock.post("path:/_matrix/client/v3/keys/signatures/upload", {}); + const accountData: Map = new Map(); + fetchMock.get("glob:http://*/_matrix/client/v3/user/*/account_data/*", (url, opts) => { + const name = url.split("/").pop()!; + const value = accountData.get(name); + if (value) { + return value; + } else { + return { + status: 404, + body: { + errcode: "M_NOT_FOUND", + error: "Not found", + }, + }; + } + }); + fetchMock.put("glob:http://*/_matrix/client/v3/user/*/account_data/*", (url, opts) => { + const name = url.split("/").pop()!; + const value = JSON.parse(opts.body as string); + accountData.set(name, value); + matrixClient.emit(ClientEvent.AccountData, new MatrixEvent({ type: name, content: value })); + return {}; + }); + + await matrixClient.initRustCrypto(); + const crypto = matrixClient.getCrypto()! as RustCrypto; + // we need to process a sync so that the OlmMachine will upload keys + await crypto.preprocessToDeviceMessages([]); + await crypto.onSyncCompleted({}); + + // create initial secret storage + async function createSecretStorageKey() { + return { + keyInfo: {} as AddSecretStorageKeyOpts, + privateKey: new Uint8Array(32), + }; + } + await matrixClient.bootstrapCrossSigning({ setupNewCrossSigning: true }); + await matrixClient.bootstrapSecretStorage({ + createSecretStorageKey, + setupNewSecretStorage: true, + setupNewKeyBackup: false, + }); +} diff --git a/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts b/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts index e63243d2913..4074e1c9a32 100644 --- a/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts +++ b/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts @@ -22,6 +22,7 @@ import { KeysClaimRequest, KeysQueryRequest, KeysUploadRequest, + PutDehydratedDeviceRequest, RoomMessageRequest, SignatureUploadRequest, UploadSigningKeysRequest, @@ -233,6 +234,35 @@ describe("OutgoingRequestProcessor", () => { httpBackend.verifyNoOutstandingRequests(); }); + it("should handle PutDehydratedDeviceRequest", async () => { + // first, mock up a request as we might expect to receive it from the Rust layer ... + const testReq = { foo: "bar" }; + const outgoingRequest = new PutDehydratedDeviceRequest(JSON.stringify(testReq)); + + // ... then poke the request into the OutgoingRequestProcessor under test + const reqProm = processor.makeOutgoingRequest(outgoingRequest); + + // Now: check that it makes a matching HTTP request. + const testResponse = '{"result":1}'; + httpBackend + .when("PUT", "/_matrix") + .check((req) => { + expect(req.path).toEqual( + "https://example.com/_matrix/client/unstable/org.matrix.msc3814.v1/dehydrated_device", + ); + expect(JSON.parse(req.rawData)).toEqual(testReq); + expect(req.headers["Accept"]).toEqual("application/json"); + expect(req.headers["Content-Type"]).toEqual("application/json"); + }) + .respond(200, testResponse, true); + + // PutDehydratedDeviceRequest does not need to be marked as sent, so no call to OlmMachine.markAsSent is expected. + + await httpBackend.flushAllExpected(); + await reqProm; + httpBackend.verifyNoOutstandingRequests(); + }); + it("does not explode with unknown requests", async () => { const outgoingRequest = { id: "5678", type: 987 }; const markSentCallPromise = awaitCallToMarkAsSent(); diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index b9c76c9fb27..97d31d29ad2 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -762,8 +762,11 @@ describe("RustCrypto", () => { }, }, }; - } else if (request instanceof RustSdkCryptoJs.UploadSigningKeysRequest) { - // SigningKeysUploadRequest does not implement OutgoingRequest and does not need to be marked as sent. + } else if ( + request instanceof RustSdkCryptoJs.UploadSigningKeysRequest || + request instanceof RustSdkCryptoJs.PutDehydratedDeviceRequest + ) { + // These request types do not implement OutgoingRequest and do not need to be marked as sent. return; } if (request.id) { @@ -1395,6 +1398,34 @@ describe("RustCrypto", () => { }); }); }); + + describe("device dehydration", () => { + it("should detect if dehydration is supported", async () => { + const rustCrypto = await makeTestRustCrypto(makeMatrixHttpApi()); + fetchMock.config.overwriteRoutes = true; + fetchMock.get("path:/_matrix/client/unstable/org.matrix.msc3814.v1/dehydrated_device", { + status: 404, + body: { + errcode: "M_UNRECOGNIZED", + error: "Unknown endpoint", + }, + }); + expect(await rustCrypto.isDehydrationSupported()).toBe(false); + fetchMock.get("path:/_matrix/client/unstable/org.matrix.msc3814.v1/dehydrated_device", { + status: 404, + body: { + errcode: "M_NOT_FOUND", + error: "Not found", + }, + }); + expect(await rustCrypto.isDehydrationSupported()).toBe(true); + fetchMock.get("path:/_matrix/client/unstable/org.matrix.msc3814.v1/dehydrated_device", { + device_id: "DEVICE_ID", + device_data: "data", + }); + expect(await rustCrypto.isDehydrationSupported()).toBe(true); + }); + }); }); /** Build a MatrixHttpApi instance */ diff --git a/src/crypto-api.ts b/src/crypto-api.ts index 7d7eba937ba..0f78bd76a1a 100644 --- a/src/crypto-api.ts +++ b/src/crypto-api.ts @@ -496,6 +496,42 @@ export interface CryptoApi { * @param version - The backup version to delete. */ deleteKeyBackupVersion(version: string): Promise; + + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + // + // Dehydrated devices + // + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + + /** + * Returns whether MSC3814 dehydrated devices are supported by the crypto + * backend and by the server. + * + * This should be called before calling `startDehydration`, and if this + * returns `false`, `startDehydration` should not be called. + */ + isDehydrationSupported(): Promise; + + /** + * Start using device dehydration. + * + * - Rehydrates a dehydrated device, if one is available. + * - Creates a new dehydration key, if necessary, and stores it in Secret + * Storage. + * - If `createNewKey` is set to true, always creates a new key. + * - If a dehydration key is not available, creates a new one. + * - Creates a new dehydrated device, and schedules periodically creating + * new dehydrated devices. + * + * This function must not be called unless `isDehydrationSupported` returns + * `true`, and must not be called until after cross-signing and secret + * storage have been set up. + * + * @param createNewKey - whether to force creation of a new dehydration key. + * This can be used, for example, if Secret Storage is being reset. Defaults + * to false. + */ + startDehydration(createNewKey?: boolean): Promise; } /** A reason code for a failure to decrypt an event. */ diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 83b45a82c05..10751ca5632 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -4287,6 +4287,21 @@ export class Crypto extends TypedEventEmitter { + return false; + } + + /** + * Stub function -- dehydration is not implemented here, so throw error + */ + public async startDehydration(createNewKey?: boolean): Promise { + throw new Error("Not implemented"); + } } /** diff --git a/src/models/device.ts b/src/models/device.ts index 0a451fd5a8d..8498b55157f 100644 --- a/src/models/device.ts +++ b/src/models/device.ts @@ -51,6 +51,9 @@ export class Device { /** display name of the device */ public readonly displayName?: string; + /** whether the device is a dehydrated device */ + public readonly dehydrated: boolean = false; + public constructor(opts: DeviceParameters) { this.deviceId = opts.deviceId; this.userId = opts.userId; @@ -59,6 +62,7 @@ export class Device { this.verified = opts.verified || DeviceVerification.Unverified; this.signatures = opts.signatures || new Map(); this.displayName = opts.displayName; + this.dehydrated = !!opts.dehydrated; } /** diff --git a/src/rust-crypto/DehydratedDeviceManager.ts b/src/rust-crypto/DehydratedDeviceManager.ts new file mode 100644 index 00000000000..56f6052b724 --- /dev/null +++ b/src/rust-crypto/DehydratedDeviceManager.ts @@ -0,0 +1,307 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; + +import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor"; +import { encodeUri } from "../utils"; +import { IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api"; +import { IToDeviceEvent } from "../sync-accumulator"; +import { ServerSideSecretStorage } from "../secret-storage"; +import { crypto } from "../crypto/crypto"; +import { decodeBase64, encodeUnpaddedBase64 } from "../base64"; +import { Logger } from "../logger"; + +/** + * The response body of `GET /_matrix/client/unstable/org.matrix.msc3814.v1/dehydrated_device`. + */ +interface DehydratedDeviceResp { + device_id: string; + device_data: { + algorithm: string; + }; +} +/** + * The response body of `POST /_matrix/client/unstable/org.matrix.msc3814.v1/dehydrated_device/events`. + */ +interface DehydratedDeviceEventsResp { + events: IToDeviceEvent[]; + next_batch: string; +} + +/** + * The unstable URL prefix for dehydrated device endpoints + */ +export const UnstablePrefix = "/_matrix/client/unstable/org.matrix.msc3814.v1"; +/** + * The name used for the dehydration key in Secret Storage + */ +const SECRET_STORAGE_NAME = "org.matrix.msc3814"; + +/** + * The interval between creating dehydrated devices. (one week) + */ +const DEHYDRATION_INTERVAL = 7 * 24 * 60 * 60 * 1000; + +/** + * Manages dehydrated devices + * + * We have one of these per `RustCrypto`. It's responsible for + * + * * determining server support for dehydrated devices + * * creating new dehydrated devices when requested, including periodically + * replacing the dehydrated device with a new one + * * rehydrating a device when requested, and when present + * + * @internal + */ +export class DehydratedDeviceManager { + /** the secret key used for dehydrating and rehydrating */ + private key?: Uint8Array; + /** the ID of the interval for periodically replacing the dehydrated device */ + private intervalId?: ReturnType; + + public constructor( + private readonly logger: Logger, + private readonly olmMachine: RustSdkCryptoJs.OlmMachine, + private readonly http: MatrixHttpApi, + private readonly outgoingRequestProcessor: OutgoingRequestProcessor, + private readonly secretStorage: ServerSideSecretStorage, + ) {} + + /** + * Return whether the server supports dehydrated devices. + */ + public async isSupported(): Promise { + // call the endpoint to get a dehydrated device. If it returns an + // M_UNRECOGNIZED error, then dehydration is unsupported. If it returns + // a successful response, or an M_NOT_FOUND, then dehydration is supported. + // Any other exceptions are passed through. + try { + await this.http.authedRequest( + Method.Get, + "/dehydrated_device", + undefined, + undefined, + { + prefix: UnstablePrefix, + }, + ); + } catch (error) { + const err = error as MatrixError; + if (err.errcode === "M_UNRECOGNIZED") { + return false; + } else if (err.errcode === "M_NOT_FOUND") { + return true; + } + throw error; + } + return true; + } + + /** + * Start using device dehydration. + * + * - Rehydrates a dehydrated device, if one is available. + * - Creates a new dehydration key, if necessary, and stores it in Secret + * Storage. + * - If `createNewKey` is set to true, always creates a new key. + * - If a dehydration key is not available, creates a new one. + * - Creates a new dehydrated device, and schedules periodically creating + * new dehydrated devices. + * + * @param createNewKey - whether to force creation of a new dehydration key. + * This can be used, for example, if Secret Storage is being reset. + */ + public async start(createNewKey?: boolean): Promise { + this.stop(); + try { + await this.rehydrateDeviceIfAvailable(); + } catch (e) { + // If rehydration fails, there isn't much we can do about it. Log + // the error, and create a new device. + this.logger.info("dehydration: Error rehydrating device:", e); + } + if (createNewKey) { + await this.resetKey(); + } + await this.scheduleDeviceDehydration(); + } + + /** + * Return whether the dehydration key is stored in Secret Storage. + */ + public async isKeyStored(): Promise { + return Boolean(await this.secretStorage.isStored(SECRET_STORAGE_NAME)); + } + + /** + * Reset the dehydration key. + * + * Creates a new key and stores it in secret storage. + */ + public async resetKey(): Promise { + const key = new Uint8Array(32); + crypto.getRandomValues(key); + await this.secretStorage.store(SECRET_STORAGE_NAME, encodeUnpaddedBase64(key)); + this.key = key; + } + + /** + * Get and cache the encryption key from secret storage. + * + * If `create` is `true`, creates a new key if no existing key is present. + * + * @returns the key, if available, or `null` if no key is available + */ + private async getKey(create: boolean): Promise { + if (this.key === undefined) { + const keyB64 = await this.secretStorage.get(SECRET_STORAGE_NAME); + if (keyB64 === undefined) { + if (!create) { + return null; + } + await this.resetKey(); + } else { + this.key = decodeBase64(keyB64); + } + } + return this.key!; + } + + /** + * Rehydrate the dehydrated device stored on the server. + * + * Checks if there is a dehydrated device on the server. If so, rehydrates + * the device and processes the to-device events. + * + * Returns whether or not a dehydrated device was found. + */ + public async rehydrateDeviceIfAvailable(): Promise { + const key = await this.getKey(false); + if (!key) { + return false; + } + + let dehydratedDeviceResp; + try { + dehydratedDeviceResp = await this.http.authedRequest( + Method.Get, + "/dehydrated_device", + undefined, + undefined, + { + prefix: UnstablePrefix, + }, + ); + } catch (error) { + const err = error as MatrixError; + // We ignore M_NOT_FOUND (there is no dehydrated device, so nothing + // us to do) and M_UNRECOGNIZED (the server does not understand the + // endpoint). We pass through any other errors. + if (err.errcode === "M_NOT_FOUND" || err.errcode === "M_UNRECOGNIZED") { + this.logger.info("dehydration: No dehydrated device"); + return false; + } + throw err; + } + + this.logger.info("dehydration: dehydrated device found"); + + const rehydratedDevice = await this.olmMachine + .dehydratedDevices() + .rehydrate( + key, + new RustSdkCryptoJs.DeviceId(dehydratedDeviceResp.device_id), + JSON.stringify(dehydratedDeviceResp.device_data), + ); + + this.logger.info("dehydration: device rehydrated"); + + let nextBatch: string | undefined = undefined; + let toDeviceCount = 0; + let roomKeyCount = 0; + const path = encodeUri("/dehydrated_device/$device_id/events", { + $device_id: dehydratedDeviceResp.device_id, + }); + // eslint-disable-next-line no-constant-condition + while (true) { + const eventResp: DehydratedDeviceEventsResp = await this.http.authedRequest( + Method.Post, + path, + undefined, + nextBatch ? { next_batch: nextBatch } : {}, + { + prefix: UnstablePrefix, + }, + ); + + if (eventResp.events.length === 0) { + break; + } + toDeviceCount += eventResp.events.length; + nextBatch = eventResp.next_batch; + const roomKeyInfos = await rehydratedDevice.receiveEvents(JSON.stringify(eventResp.events)); + roomKeyCount += roomKeyInfos.length; + } + this.logger.info(`dehydration: received ${roomKeyCount} room keys from ${toDeviceCount} to-device events`); + + return true; + } + + /** + * Creates and uploads a new dehydrated device. + * + * Creates and stores a new key in secret storage if none is available. + */ + public async createAndUploadDehydratedDevice(): Promise { + const key = (await this.getKey(true))!; + + const dehydratedDevice = await this.olmMachine.dehydratedDevices().create(); + const request = await dehydratedDevice.keysForUpload("Dehydrated device", key); + + await this.outgoingRequestProcessor.makeOutgoingRequest(request); + + this.logger.info("dehydration: uploaded device"); + } + + /** + * Schedule periodic creation of dehydrated devices. + */ + public async scheduleDeviceDehydration(): Promise { + // cancel any previously-scheduled tasks + this.stop(); + + await this.createAndUploadDehydratedDevice(); + this.intervalId = setInterval(() => { + this.createAndUploadDehydratedDevice().catch((error) => { + this.logger.error("Error creating dehydrated device:", error); + }); + }, DEHYDRATION_INTERVAL); + } + + /** + * Stop the dehydrated device manager. + * + * Cancels any scheduled dehydration tasks. + */ + public stop(): void { + if (this.intervalId) { + clearInterval(this.intervalId); + this.intervalId = undefined; + } + } +} diff --git a/src/rust-crypto/OutgoingRequestProcessor.ts b/src/rust-crypto/OutgoingRequestProcessor.ts index 26845015417..d3ae4d9c4a3 100644 --- a/src/rust-crypto/OutgoingRequestProcessor.ts +++ b/src/rust-crypto/OutgoingRequestProcessor.ts @@ -20,6 +20,7 @@ import { KeysQueryRequest, KeysUploadRequest, OlmMachine, + PutDehydratedDeviceRequest, RoomMessageRequest, SignatureUploadRequest, ToDeviceRequest, @@ -32,6 +33,7 @@ import { logDuration, QueryDict, sleep } from "../utils"; import { AuthDict, UIAuthCallback } from "../interactive-auth"; import { UIAResponse } from "../@types/uia"; import { ToDeviceMessageId } from "../@types/event"; +import { UnstablePrefix as DehydrationUnstablePrefix } from "./DehydratedDeviceManager"; /** * Common interface for all the request types returned by `OlmMachine.outgoingRequests`. @@ -62,7 +64,7 @@ export class OutgoingRequestProcessor { ) {} public async makeOutgoingRequest( - msg: OutgoingRequest | UploadSigningKeysRequest, + msg: OutgoingRequest | UploadSigningKeysRequest | PutDehydratedDeviceRequest, uiaCallback?: UIAuthCallback, ): Promise { let resp: string; @@ -102,6 +104,11 @@ export class OutgoingRequestProcessor { ); // SigningKeysUploadRequest does not implement OutgoingRequest and does not need to be marked as sent. return; + } else if (msg instanceof PutDehydratedDeviceRequest) { + const path = DehydrationUnstablePrefix + "/dehydrated_device"; + await this.rawJsonRequest(Method.Put, path, {}, msg.body); + // PutDehydratedDeviceRequest does not implement OutgoingRequest and does not need to be marked as sent. + return; } else { logger.warn("Unsupported outgoing message", Object.getPrototypeOf(msg)); resp = ""; diff --git a/src/rust-crypto/device-converter.ts b/src/rust-crypto/device-converter.ts index b37a63dcca0..587640cb0e9 100644 --- a/src/rust-crypto/device-converter.ts +++ b/src/rust-crypto/device-converter.ts @@ -80,6 +80,7 @@ export function rustDeviceToJsDevice(device: RustSdkCryptoJs.Device, userId: Rus verified, signatures, displayName: device.displayName, + dehydrated: device.isDehydrated, }); } diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 512b0822fb5..713c113866a 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -73,6 +73,7 @@ import { ISignatures } from "../@types/signed"; import { encodeBase64 } from "../base64"; import { OutgoingRequestsManager } from "./OutgoingRequestsManager"; import { PerSessionKeyBackupDownloader } from "./PerSessionKeyBackupDownloader"; +import { DehydratedDeviceManager } from "./DehydratedDeviceManager"; import { VerificationMethod } from "../types"; const ALL_VERIFICATION_METHODS = [ @@ -107,9 +108,8 @@ export class RustCrypto extends TypedEventEmitter(this); public constructor( @@ -148,14 +148,19 @@ export class RustCrypto extends TypedEventEmitter { + return await this.dehydratedDeviceManager.isSupported(); + } + + /** + * Implementation of {@link CryptoBackend#startDehydration}. + */ + public async startDehydration(createNewKey?: boolean): Promise { + if (!(await this.isCrossSigningReady()) || !(await this.isSecretStorageReady())) { + throw new Error("Device dehydration requires cross-signing and secret storage to be set up"); + } + return await this.dehydratedDeviceManager.start(createNewKey); + } + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // // SyncCryptoCallbacks implementation diff --git a/yarn.lock b/yarn.lock index e6207c8cfd6..c0fff20a6d0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6535,16 +6535,7 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width-cjs@npm:string-width@^4.2.0": - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== From 475f82c5ce944aef605fa357f9761809ce8b082a Mon Sep 17 00:00:00 2001 From: David Baker Date: Thu, 11 Apr 2024 10:36:07 +0100 Subject: [PATCH 169/595] Update git-get-release action (#4148) which appears to be breaking renovate somehow, and could probably use and update anyway. --- .github/workflows/release-make.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index 0847e0aa0c1..87419f03352 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -59,7 +59,7 @@ jobs: - name: Get draft release id: draft-release - uses: cardinalby/git-get-release-action@cedef2faf69cb7c55b285bad07688d04430b7ada # v1 + uses: cardinalby/git-get-release-action@5172c3a026600b1d459b117738c605fabc9e4e44 # v1 env: GITHUB_TOKEN: ${{ github.token }} with: From 84385335320447fd6e2d1925138dce48f1dcd26d Mon Sep 17 00:00:00 2001 From: Valere Date: Mon, 15 Apr 2024 09:17:14 +0200 Subject: [PATCH 170/595] Validate backup private key before migrating it (#4114) * Migrate own identity trust to rust crypto * Fix gendoc not happy if msk of IDownloadKeyResult has a signature * add missing mock * code review * Code review * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * review move function down in file * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review gh suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review: Cleaning tests, renaming * Review: better comment Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Comment paragraphs * retry until initial key query is successfull * Validate backup private key before migrating it * post merge fix * Fix test, missing mock * Use crypto wasm instead of lib olm to check backup key * typo * code review * quick lint --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- spec/integ/crypto/rust-crypto.spec.ts | 104 ++++++++++++++++++ .../no_cached_msk_dump/index.ts | 23 ++++ spec/unit/rust-crypto/rust-crypto.spec.ts | 15 ++- src/rust-crypto/libolm_migration.ts | 28 ++++- 4 files changed, 164 insertions(+), 6 deletions(-) diff --git a/spec/integ/crypto/rust-crypto.spec.ts b/spec/integ/crypto/rust-crypto.spec.ts index b3fa474114b..311410febbe 100644 --- a/spec/integ/crypto/rust-crypto.spec.ts +++ b/spec/integ/crypto/rust-crypto.spec.ts @@ -162,6 +162,110 @@ describe("MatrixClient.initRustCrypto", () => { expect(progressListener).toHaveBeenLastCalledWith(-1, -1); }, 60000); + describe("Private key backup migration", () => { + it("should not migrate the backup private key if backup has changed", async () => { + // Here we have a new backup server side, and the migrated account has the previous backup key. + fetchMock.get("path:/_matrix/client/v3/room_keys/version", MSK_NOT_CACHED_DATASET.newBackupResponse); + + fetchMock.post("path:/_matrix/client/v3/keys/query", MSK_NOT_CACHED_DATASET.keyQueryResponse); + + await populateStore("test-store", MSK_NOT_CACHED_DATASET.dumpPath); + const cryptoStore = new IndexedDBCryptoStore(indexedDB, "test-store"); + + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: MSK_NOT_CACHED_DATASET.userId, + deviceId: MSK_NOT_CACHED_DATASET.deviceId, + cryptoStore, + pickleKey: MSK_NOT_CACHED_DATASET.pickleKey, + }); + + await matrixClient.initRustCrypto(); + + const privateBackupKey = await matrixClient.getCrypto()?.getSessionBackupPrivateKey(); + expect(privateBackupKey).toBeNull(); + }); + + it("should not migrate the backup private key if backup has unknown algorithm", async () => { + // Here we have a new backup server side, and the migrated account has the previous backup key. + const backupResponse = { + ...MSK_NOT_CACHED_DATASET.backupResponse, + algorithm: "m.megolm_backup.v8", + }; + fetchMock.get("path:/_matrix/client/v3/room_keys/version", backupResponse); + + fetchMock.post("path:/_matrix/client/v3/keys/query", MSK_NOT_CACHED_DATASET.keyQueryResponse); + + await populateStore("test-store", MSK_NOT_CACHED_DATASET.dumpPath); + const cryptoStore = new IndexedDBCryptoStore(indexedDB, "test-store"); + + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: MSK_NOT_CACHED_DATASET.userId, + deviceId: MSK_NOT_CACHED_DATASET.deviceId, + cryptoStore, + pickleKey: MSK_NOT_CACHED_DATASET.pickleKey, + }); + + await matrixClient.initRustCrypto(); + + const privateBackupKey = await matrixClient.getCrypto()?.getSessionBackupPrivateKey(); + expect(privateBackupKey).toBeNull(); + }); + + it("should not migrate the backup private key if the backup has been deleted", async () => { + // The old backup has been deleted server side. + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { + errcode: "M_NOT_FOUND", + error: "No backup found", + }, + }); + + fetchMock.post("path:/_matrix/client/v3/keys/query", MSK_NOT_CACHED_DATASET.keyQueryResponse); + + await populateStore("test-store", MSK_NOT_CACHED_DATASET.dumpPath); + const cryptoStore = new IndexedDBCryptoStore(indexedDB, "test-store"); + + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: MSK_NOT_CACHED_DATASET.userId, + deviceId: MSK_NOT_CACHED_DATASET.deviceId, + cryptoStore, + pickleKey: MSK_NOT_CACHED_DATASET.pickleKey, + }); + + await matrixClient.initRustCrypto(); + + const privateBackupKey = await matrixClient.getCrypto()?.getSessionBackupPrivateKey(); + expect(privateBackupKey).toBeNull(); + }); + + it("should migrate the backup private key if the backup matches", async () => { + // The old backup has been deleted server side. + fetchMock.get("path:/_matrix/client/v3/room_keys/version", MSK_NOT_CACHED_DATASET.backupResponse); + + fetchMock.post("path:/_matrix/client/v3/keys/query", MSK_NOT_CACHED_DATASET.keyQueryResponse); + + await populateStore("test-store", MSK_NOT_CACHED_DATASET.dumpPath); + const cryptoStore = new IndexedDBCryptoStore(indexedDB, "test-store"); + + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: MSK_NOT_CACHED_DATASET.userId, + deviceId: MSK_NOT_CACHED_DATASET.deviceId, + cryptoStore, + pickleKey: MSK_NOT_CACHED_DATASET.pickleKey, + }); + + await matrixClient.initRustCrypto(); + + const privateBackupKey = await matrixClient.getCrypto()?.getSessionBackupPrivateKey(); + expect(privateBackupKey).toBeDefined(); + }); + }); + describe("Legacy trust migration", () => { async function populateAndStartLegacyCryptoStore(dumpPath: string): Promise { const testStoreName = "test-store"; diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts b/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts index 24c134e7ac5..bc4c8449fed 100644 --- a/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts @@ -245,6 +245,28 @@ const BACKUP_RESPONSE: KeyBackupInfo = { count: 0, }; +/** + * This was generated by doing a backup reset on the account. + * This is a new valid backup for this account. + */ +const NEW_BACKUP_RESPONSE: KeyBackupInfo = { + auth_data: { + public_key: "CkDxWALi3lcChgjEZFEM6clYq5x768XBwsL++eaOzTI", + signatures: { + "@migration:localhost": { + "ed25519:YVEGEYPYWX": + "ZSYuQDdwgB9WKXQ+z5aWWfqSolBCGRw53kur1Vy956gFefgzCBkMbw5M0I2UgfU2Cukri7jZ4ig201zmLNmaAA", + "ed25519:rXCrBin/+xyh+yW//vWte+2UV0et1ZHTWfalp/Ekack": + "+UQ8EA507LoIqgK9rPsqPoGrj+iRBJeY2Oz0mMtXmVf8c1y8G0KWJNUWqvOysnOhsoJf1bt8ey48CxjjtSQ2AA", + }, + }, + }, + version: "3", + algorithm: "m.megolm_backup.v1.curve25519-aes-sha2", + etag: "0", + count: 0, +}; + /** * A dataset containing the information for the tested user. * To be used during tests. @@ -256,5 +278,6 @@ export const MSK_NOT_CACHED_DATASET: DumpDataSetInfo = { keyQueryResponse: KEY_QUERY_RESPONSE, rotatedKeyQueryResponse: ROTATED_KEY_QUERY_RESPONSE, backupResponse: BACKUP_RESPONSE, + newBackupResponse: NEW_BACKUP_RESPONSE, dumpPath: "spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/dump.json", }; diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 97d31d29ad2..fef825582aa 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -205,7 +205,20 @@ describe("initRustCrypto", () => { createMegolmSessions(legacyStore, nDevices, nSessionsPerDevice); await legacyStore.markSessionsNeedingBackup([{ senderKey: pad43("device5"), sessionId: "session5" }]); - fetchMock.get("path:/_matrix/client/v3/room_keys/version", { version: "45" }); + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + auth_data: { + public_key: "backup_key_public", + }, + version: "45", + algorithm: "m.megolm_backup.v1.curve25519-aes-sha2", + }); + // The cached key should be valid for the backup + const mockBackupDecryptionKey: any = { + megolmV1PublicKey: { + publicKeyBase64: "backup_key_public", + }, + }; + jest.spyOn(RustSdkCryptoJs.BackupDecryptionKey, "fromBase64").mockReturnValue(mockBackupDecryptionKey); function legacyMigrationProgressListener(progress: number, total: number): void { logger.log(`migrated ${progress} of ${total}`); diff --git a/src/rust-crypto/libolm_migration.ts b/src/rust-crypto/libolm_migration.ts index 1d4179601b6..ef9e6697a14 100644 --- a/src/rust-crypto/libolm_migration.ts +++ b/src/rust-crypto/libolm_migration.ts @@ -23,7 +23,7 @@ import { decryptAES, IEncryptedPayload } from "../crypto/aes"; import { IHttpOpts, MatrixHttpApi } from "../http-api"; import { requestKeyBackupVersion } from "./backup"; import { IRoomEncryption } from "../crypto/RoomList"; -import { CrossSigningKeyInfo } from "../crypto-api"; +import { CrossSigningKeyInfo, Curve25519AuthData } from "../crypto-api"; import { RustCrypto } from "./rust-crypto"; import { KeyBackupInfo } from "../crypto-api/keybackup"; import { sleep } from "../utils"; @@ -161,7 +161,8 @@ async function migrateBaseData( const recoveryKey = await getAndDecryptCachedSecretKey(legacyStore, pickleKey, "m.megolm_backup.v1"); // If we have a backup recovery key, we need to try to figure out which backup version it is for. - // All we can really do is ask the server for the most recent version. + // All we can really do is ask the server for the most recent version and check if the cached key we have matches. + // It is possible that the backup has changed since last time his session was opened. if (recoveryKey) { let backupCallDone = false; let backupInfo: KeyBackupInfo | null = null; @@ -175,9 +176,26 @@ async function migrateBaseData( await sleep(2000); } } - if (backupInfo) { - migrationData.backupVersion = backupInfo.version; - migrationData.backupRecoveryKey = recoveryKey; + if (backupInfo && backupInfo.algorithm == "m.megolm_backup.v1.curve25519-aes-sha2") { + // check if the recovery key matches, as the active backup version may have changed since the key was cached + // and the migration started. + try { + const decryptionKey = RustSdkCryptoJs.BackupDecryptionKey.fromBase64(recoveryKey); + const publicKey = (backupInfo.auth_data as Curve25519AuthData)?.public_key; + const isValid = decryptionKey.megolmV1PublicKey.publicKeyBase64 == publicKey; + if (isValid) { + migrationData.backupVersion = backupInfo.version; + migrationData.backupRecoveryKey = recoveryKey; + } else { + logger.debug( + "The backup key to migrate does not match the active backup version", + `Cached pub key: ${decryptionKey.megolmV1PublicKey.publicKeyBase64}`, + `Active pub key: ${publicKey}`, + ); + } + } catch (e) { + logger.warn("Failed to check if the backup key to migrate matches the active backup version", e); + } } } From c850ca3179546b8586c7bac74906ed9b368ca81b Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 16 Apr 2024 12:16:13 +0000 Subject: [PATCH 171/595] v32.1.0-rc.0 --- package.json | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index 9e5f577d8c5..aeec52593d7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "32.0.0", + "version": "32.1.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -83,6 +83,7 @@ "@babel/preset-typescript": "^7.12.7", "@casualbot/jest-sonar-reporter": "2.2.7", "@matrix-org/olm": "3.2.15", + "@peculiar/webcrypto": "^1.4.5", "@types/bs58": "^4.0.1", "@types/content-type": "^1.1.5", "@types/debug": "^4.1.7", @@ -114,8 +115,10 @@ "jest-environment-jsdom": "^29.0.0", "jest-localstorage-mock": "^2.4.6", "jest-mock": "^29.0.0", + "knip": "^4.0.1", "lint-staged": "^15.0.2", "matrix-mock-request": "^2.5.0", + "node-fetch": "^2.7.0", "prettier": "3.2.5", "rimraf": "^5.0.0", "ts-node": "^10.9.2", @@ -123,14 +126,12 @@ "typedoc-plugin-coverage": "^3.0.0", "typedoc-plugin-mdn-links": "^3.0.3", "typedoc-plugin-missing-exports": "^2.0.0", - "typescript": "^5.3.3", - "node-fetch": "^2.7.0", - "knip": "^4.0.1", - "@peculiar/webcrypto": "^1.4.5" + "typescript": "^5.3.3" }, "@casualbot/jest-sonar-reporter": { "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From 26d13c15c3811fdcce9bec5717ed0126a5234197 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 14:20:45 +0100 Subject: [PATCH 172/595] Update typescript-eslint monorepo to v7.6.0 (#4163) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 161 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 85 insertions(+), 76 deletions(-) diff --git a/yarn.lock b/yarn.lock index c0fff20a6d0..381215ed970 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1385,7 +1385,7 @@ dependencies: eslint-visitor-keys "^3.3.0" -"@eslint-community/regexpp@^4.5.1": +"@eslint-community/regexpp@^4.10.0": version "4.10.0" resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.0.tgz#548f6de556857c8bb73bbee70c35dc82a2e74d63" integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA== @@ -2172,7 +2172,7 @@ "@types/tough-cookie" "*" parse5 "^7.0.0" -"@types/json-schema@^7.0.12", "@types/json-schema@^7.0.9": +"@types/json-schema@^7.0.15", "@types/json-schema@^7.0.9": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -2226,7 +2226,7 @@ resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.7.tgz#326f5fdda70d13580777bcaa1bc6fa772a5aef0e" integrity sha512-/wdoPq1QqkSj9/QOeKkFquEuPzQbHTWAMPH/PaUMB+JuR31lXhlWXRZ52IpfDYVlDOUBvX09uBrPwxGT1hjNBg== -"@types/semver@^7.5.0": +"@types/semver@^7.5.8": version "7.5.8" resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e" integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ== @@ -2264,31 +2264,31 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.5.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.5.0.tgz#1dc52fe48454d5b54be2d5f089680452f1628a5a" - integrity sha512-HpqNTH8Du34nLxbKgVMGljZMG0rJd2O9ecvr2QLYp+7512ty1j42KnsFwspPXg1Vh8an9YImf6CokUBltisZFQ== - dependencies: - "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "7.5.0" - "@typescript-eslint/type-utils" "7.5.0" - "@typescript-eslint/utils" "7.5.0" - "@typescript-eslint/visitor-keys" "7.5.0" + version "7.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.7.0.tgz#bf34a02f221811505b8bf2f31060c8560c1bb0a3" + integrity sha512-GJWR0YnfrKnsRoluVO3PRb9r5aMZriiMMM/RHj5nnTrBy1/wIgk76XCtCKcnXGjpZQJQRFtGV9/0JJ6n30uwpQ== + dependencies: + "@eslint-community/regexpp" "^4.10.0" + "@typescript-eslint/scope-manager" "7.7.0" + "@typescript-eslint/type-utils" "7.7.0" + "@typescript-eslint/utils" "7.7.0" + "@typescript-eslint/visitor-keys" "7.7.0" debug "^4.3.4" graphemer "^1.4.0" - ignore "^5.2.4" + ignore "^5.3.1" natural-compare "^1.4.0" - semver "^7.5.4" - ts-api-utils "^1.0.1" + semver "^7.6.0" + ts-api-utils "^1.3.0" "@typescript-eslint/parser@^7.0.0": - version "7.5.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.5.0.tgz#1eeff36309ac2253c905dd4a88b4b71b72a358ed" - integrity sha512-cj+XGhNujfD2/wzR1tabNsidnYRaFfEkcULdcIyVBYcXjBvBKOes+mpMBP7hMpOyk+gBcfXsrg4NBGAStQyxjQ== - dependencies: - "@typescript-eslint/scope-manager" "7.5.0" - "@typescript-eslint/types" "7.5.0" - "@typescript-eslint/typescript-estree" "7.5.0" - "@typescript-eslint/visitor-keys" "7.5.0" + version "7.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.7.0.tgz#6b1b3ce76c5de002c43af8ae933613b0f2b4bcc6" + integrity sha512-fNcDm3wSwVM8QYL4HKVBggdIPAy9Q41vcvC/GtDobw3c4ndVT3K6cqudUmjHPw8EAp4ufax0o58/xvWaP2FmTg== + dependencies: + "@typescript-eslint/scope-manager" "7.7.0" + "@typescript-eslint/types" "7.7.0" + "@typescript-eslint/typescript-estree" "7.7.0" + "@typescript-eslint/visitor-keys" "7.7.0" debug "^4.3.4" "@typescript-eslint/scope-manager@5.62.0": @@ -2299,33 +2299,33 @@ "@typescript-eslint/types" "5.62.0" "@typescript-eslint/visitor-keys" "5.62.0" -"@typescript-eslint/scope-manager@7.5.0": - version "7.5.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.5.0.tgz#70f0a7361430ab1043a5f97386da2a0d8b2f4d56" - integrity sha512-Z1r7uJY0MDeUlql9XJ6kRVgk/sP11sr3HKXn268HZyqL7i4cEfrdFuSSY/0tUqT37l5zT0tJOsuDP16kio85iA== +"@typescript-eslint/scope-manager@7.7.0": + version "7.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.7.0.tgz#3f0db079b275bb8b0cb5be7613fb3130cfb5de77" + integrity sha512-/8INDn0YLInbe9Wt7dK4cXLDYp0fNHP5xKLHvZl3mOT5X17rK/YShXaiNmorl+/U4VKCVIjJnx4Ri5b0y+HClw== dependencies: - "@typescript-eslint/types" "7.5.0" - "@typescript-eslint/visitor-keys" "7.5.0" + "@typescript-eslint/types" "7.7.0" + "@typescript-eslint/visitor-keys" "7.7.0" -"@typescript-eslint/type-utils@7.5.0": - version "7.5.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.5.0.tgz#a8faa403232da3a3901655387c7082111f692cf9" - integrity sha512-A021Rj33+G8mx2Dqh0nMO9GyjjIBK3MqgVgZ2qlKf6CJy51wY/lkkFqq3TqqnH34XyAHUkq27IjlUkWlQRpLHw== +"@typescript-eslint/type-utils@7.7.0": + version "7.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.7.0.tgz#36792ff4209a781b058de61631a48df17bdefbc5" + integrity sha512-bOp3ejoRYrhAlnT/bozNQi3nio9tIgv3U5C0mVDdZC7cpcQEDZXvq8inrHYghLVwuNABRqrMW5tzAv88Vy77Sg== dependencies: - "@typescript-eslint/typescript-estree" "7.5.0" - "@typescript-eslint/utils" "7.5.0" + "@typescript-eslint/typescript-estree" "7.7.0" + "@typescript-eslint/utils" "7.7.0" debug "^4.3.4" - ts-api-utils "^1.0.1" + ts-api-utils "^1.3.0" "@typescript-eslint/types@5.62.0": version "5.62.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== -"@typescript-eslint/types@7.5.0": - version "7.5.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.5.0.tgz#0a284bcdef3cb850ec9fd57992df9f29d6bde1bc" - integrity sha512-tv5B4IHeAdhR7uS4+bf8Ov3k793VEVHd45viRRkehIUZxm0WF82VPiLgHzA/Xl4TGPg1ZD49vfxBKFPecD5/mg== +"@typescript-eslint/types@7.7.0": + version "7.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.7.0.tgz#23af4d24bf9ce15d8d301236e3e3014143604f27" + integrity sha512-G01YPZ1Bd2hn+KPpIbrAhEWOn5lQBrjxkzHkWvP6NucMXFtfXoevK82hzQdpfuQYuhkvFDeQYbzXCjR1z9Z03w== "@typescript-eslint/typescript-estree@5.62.0": version "5.62.0" @@ -2340,32 +2340,32 @@ semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@7.5.0": - version "7.5.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.5.0.tgz#aa5031c511874420f6b5edd90f8e4021525ee776" - integrity sha512-YklQQfe0Rv2PZEueLTUffiQGKQneiIEKKnfIqPIOxgM9lKSZFCjT5Ad4VqRKj/U4+kQE3fa8YQpskViL7WjdPQ== +"@typescript-eslint/typescript-estree@7.7.0": + version "7.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.7.0.tgz#b5dd6383b4c6a852d7b256a37af971e8982be97f" + integrity sha512-8p71HQPE6CbxIBy2kWHqM1KGrC07pk6RJn40n0DSc6bMOBBREZxSDJ+BmRzc8B5OdaMh1ty3mkuWRg4sCFiDQQ== dependencies: - "@typescript-eslint/types" "7.5.0" - "@typescript-eslint/visitor-keys" "7.5.0" + "@typescript-eslint/types" "7.7.0" + "@typescript-eslint/visitor-keys" "7.7.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" - minimatch "9.0.3" - semver "^7.5.4" - ts-api-utils "^1.0.1" + minimatch "^9.0.4" + semver "^7.6.0" + ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.5.0": - version "7.5.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.5.0.tgz#bbd963647fbbe9ffea033f42c0fb7e89bb19c858" - integrity sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw== +"@typescript-eslint/utils@7.7.0": + version "7.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.7.0.tgz#3d2b6606a60ac34f3c625facfb3b3ab7e126f58d" + integrity sha512-LKGAXMPQs8U/zMRFXDZOzmMKgFv3COlxUQ+2NMPhbqgVm6R1w+nU1i4836Pmxu9jZAuIeyySNrN/6Rc657ggig== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@types/json-schema" "^7.0.12" - "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "7.5.0" - "@typescript-eslint/types" "7.5.0" - "@typescript-eslint/typescript-estree" "7.5.0" - semver "^7.5.4" + "@types/json-schema" "^7.0.15" + "@types/semver" "^7.5.8" + "@typescript-eslint/scope-manager" "7.7.0" + "@typescript-eslint/types" "7.7.0" + "@typescript-eslint/typescript-estree" "7.7.0" + semver "^7.6.0" "@typescript-eslint/utils@^5.10.0": version "5.62.0" @@ -2389,13 +2389,13 @@ "@typescript-eslint/types" "5.62.0" eslint-visitor-keys "^3.3.0" -"@typescript-eslint/visitor-keys@7.5.0": - version "7.5.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.5.0.tgz#8abcac66f93ef20b093e87a400c2d21e3a6d55ee" - integrity sha512-mcuHM/QircmA6O7fy6nn2w/3ditQkj+SgtOc8DW3uQ10Yfj42amm2i+6F2K4YAOPNNTmE6iM1ynM6lrSwdendA== +"@typescript-eslint/visitor-keys@7.7.0": + version "7.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.7.0.tgz#950148cf1ac11562a2d903fdf7acf76714a2dc9e" + integrity sha512-h0WHOj8MhdhY8YWkzIF30R379y0NqyOHExI9N9KCzvmu05EgG4FumeYa3ccfKUSphyWkWQE1ybVrgz/Pbam6YA== dependencies: - "@typescript-eslint/types" "7.5.0" - eslint-visitor-keys "^3.4.1" + "@typescript-eslint/types" "7.7.0" + eslint-visitor-keys "^3.4.3" "@ungap/structured-clone@^1.2.0": version "1.2.0" @@ -4258,7 +4258,7 @@ identity-function@^1.0.0: resolved "https://registry.yarnpkg.com/identity-function/-/identity-function-1.0.0.tgz#bea1159f0985239be3ca348edf40ce2f0dd2c21d" integrity sha512-kNrgUK0qI+9qLTBidsH85HjDLpZfrrS0ElquKKe/fJFdB3D7VeKdXXEvOPDUHSHOzdZKCAAaQIWWyp0l2yq6pw== -ignore@^5.1.8, ignore@^5.2.0, ignore@^5.2.4: +ignore@^5.1.8, ignore@^5.2.0, ignore@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== @@ -5479,13 +5479,6 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -minimatch@9.0.3, minimatch@^9.0.1, minimatch@^9.0.3: - version "9.0.3" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" - integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== - dependencies: - brace-expansion "^2.0.1" - minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -5493,13 +5486,20 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" -minimatch@^9.0.0: +minimatch@^9.0.0, minimatch@^9.0.4: version "9.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51" integrity sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw== dependencies: brace-expansion "^2.0.1" +minimatch@^9.0.1, minimatch@^9.0.3: + version "9.0.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" + integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== + dependencies: + brace-expansion "^2.0.1" + minimist@1.2.8, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" @@ -6535,7 +6535,16 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -6786,7 +6795,7 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== -ts-api-utils@^1.0.1: +ts-api-utils@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1" integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ== From 583823c2ef25fd5714dbe1848eb940a5fe01eb65 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 14:21:14 +0100 Subject: [PATCH 173/595] Update dependency knip to v5 (#4167) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 122 ++++++++++++++++++++++++++------------------------- 2 files changed, 64 insertions(+), 60 deletions(-) diff --git a/package.json b/package.json index 9e5f577d8c5..2be063ccbec 100644 --- a/package.json +++ b/package.json @@ -125,7 +125,7 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "^5.3.3", "node-fetch": "^2.7.0", - "knip": "^4.0.1", + "knip": "^5.0.0", "@peculiar/webcrypto": "^1.4.5" }, "@casualbot/jest-sonar-reporter": { diff --git a/yarn.lock b/yarn.lock index 381215ed970..0b834e370fa 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1826,10 +1826,10 @@ semver "^7.3.5" which "^4.0.0" -"@npmcli/map-workspaces@3.0.4": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@npmcli/map-workspaces/-/map-workspaces-3.0.4.tgz#15ad7d854292e484f7ba04bc30187a8320dba799" - integrity sha512-Z0TbvXkRbacjFFLpVpV0e2mheCh+WzQpcqL+4xp49uNJOxOnIAPZyXtUxZ5Qn3QBTGKA11Exjd9a5411rBrhDg== +"@npmcli/map-workspaces@^3.0.4": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@npmcli/map-workspaces/-/map-workspaces-3.0.6.tgz#27dc06c20c35ef01e45a08909cab9cb3da08cea6" + integrity sha512-tkYs0OYnzQm6iIRdfy+LcLBjcKuQCeE5YLb8KnrIlutJfheNaPvPpgoFEyEFgbjzl5PLZ3IA/BWAwRU0eHuQDA== dependencies: "@npmcli/name-from-folder" "^2.0.0" glob "^10.2.2" @@ -1841,17 +1841,17 @@ resolved "https://registry.yarnpkg.com/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz#c44d3a7c6d5c184bb6036f4d5995eee298945815" integrity sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg== -"@npmcli/package-json@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@npmcli/package-json/-/package-json-5.0.0.tgz#77d0f8b17096763ccbd8af03b7117ba6e34d6e91" - integrity sha512-OI2zdYBLhQ7kpNPaJxiflofYIpkNLi+lnGdzqUOfRmCF3r2l1nadcjtCYMJKv/Utm/ZtlffaUuTiAktPHbc17g== +"@npmcli/package-json@^5.0.0": + version "5.0.3" + resolved "https://registry.yarnpkg.com/@npmcli/package-json/-/package-json-5.0.3.tgz#d8a922fcd5abe27a8b0ed619beddfef0f44e614e" + integrity sha512-cgsjCvld2wMqkUqvY+SZI+1ZJ7umGBYc9IAKfqJRKJCcs7hCQYxScUgdsyrRINk3VmdCYf9TXiLBHQ6ECTxhtg== dependencies: "@npmcli/git" "^5.0.0" glob "^10.2.2" hosted-git-info "^7.0.0" json-parse-even-better-errors "^3.0.0" normalize-package-data "^6.0.0" - proc-log "^3.0.0" + proc-log "^4.0.0" semver "^7.5.3" "@npmcli/promise-spawn@^7.0.0": @@ -1905,10 +1905,10 @@ dependencies: "@pnpm/types" "9.4.2" -"@pnpm/error@5.0.3": - version "5.0.3" - resolved "https://registry.yarnpkg.com/@pnpm/error/-/error-5.0.3.tgz#4dbb9f4acb0b30c373b3ca5024cdf495f03f4380" - integrity sha512-ONJU5cUeoeJSy50qOYsMZQHTA/9QKmGgh1ATfEpCLgtbdwqUiwD9MxHNeXUYYI/pocBCz6r1ZCFqiQvO+8SUKA== +"@pnpm/error@5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@pnpm/error/-/error-5.0.2.tgz#153d18fe9eeaeb02e48e9dc45b042f4c962b3822" + integrity sha512-0TEm+tWNYm+9uh6DSKyRbv8pv/6b4NL0PastLvMxIoqZbBZ5Zj1cYi332R9xsSUi31ZOsu2wpgn/bC7DA9hrjg== dependencies: "@pnpm/constants" "7.1.1" @@ -1944,13 +1944,13 @@ semver "^7.3.5" validate-npm-package-name "^4.0.0" -"@pnpm/npm-resolver@18.1.1": - version "18.1.1" - resolved "https://registry.yarnpkg.com/@pnpm/npm-resolver/-/npm-resolver-18.1.1.tgz#64a259825db6dc4e4615f5b67464c1cd174850bf" - integrity sha512-NptzncmMD5ZMimbjWkGpMzuBRhlCY+sh7mzypPdBOTNlh5hmEQe/VaRKjNK4V9/b0C/llElkvIePL6acybu86w== +"@pnpm/npm-resolver@18.1.0": + version "18.1.0" + resolved "https://registry.yarnpkg.com/@pnpm/npm-resolver/-/npm-resolver-18.1.0.tgz#bbafcdf88391ee84e2dc78c2b599b54dbbc8f8e3" + integrity sha512-fUYKX/iHiHldL0VRVvkQI35YK2jWhZEkPO6rrGke8309+LKAo12v833nBttMDpQrtHefmqhB4mhCzQq6L2Xqmg== dependencies: "@pnpm/core-loggers" "9.0.6" - "@pnpm/error" "5.0.3" + "@pnpm/error" "5.0.2" "@pnpm/fetching-types" "5.0.0" "@pnpm/graceful-fs" "3.2.0" "@pnpm/resolve-workspace-range" "5.0.1" @@ -1990,15 +1990,14 @@ resolved "https://registry.yarnpkg.com/@pnpm/types/-/types-9.4.2.tgz#0a34c3c41d5452461d8d8958374a727f9c46cfb2" integrity sha512-g1hcF8Nv4gd76POilz9gD4LITAPXOe5nX4ijgr8ixCbLQZfcpYiMfJ+C1RlMNRUDo8vhlNB4O3bUlxmT6EAQXA== -"@pnpm/workspace.pkgs-graph@^2.0.14": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@pnpm/workspace.pkgs-graph/-/workspace.pkgs-graph-2.0.16.tgz#8f5fa108a34aa584c24ab825be6b42f99a06a155" - integrity sha512-WNsDLkDKm7/eht91s/Iif9ELLabdshAIqpH3svCwdp/xiRxGumfUWkCCeCODjLbBCQehrsl3ugSsboIvk0xiPw== +"@pnpm/workspace.pkgs-graph@2.0.14": + version "2.0.14" + resolved "https://registry.yarnpkg.com/@pnpm/workspace.pkgs-graph/-/workspace.pkgs-graph-2.0.14.tgz#3ea12b8d95987e64bc98876422ea7ad578cd022a" + integrity sha512-SBXXyWDkPEoaLTjLRyQzRHoBYH+P0NLcIjX1yPUxuJiMTvGOMzjpLWTuxYNVe/P0V0VQMrjpJFaJPjlViNLhzg== dependencies: "@pnpm/npm-package-arg" "^1.0.0" - "@pnpm/npm-resolver" "18.1.1" + "@pnpm/npm-resolver" "18.1.0" "@pnpm/resolve-workspace-range" "5.0.1" - "@pnpm/types" "9.4.2" ramda "npm:@pnpm/ramda@0.28.1" "@sinclair/typebox@^0.24.1": @@ -5168,17 +5167,17 @@ kleur@^3.0.3: resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== -knip@^4.0.1: - version "4.6.0" - resolved "https://registry.yarnpkg.com/knip/-/knip-4.6.0.tgz#8857616ff89e81e404f07b1a92ad64f43b55dc70" - integrity sha512-6slzggzmyAuvtr97nH56ob1RNlkrG2dGF7yn8PJ/LIF8bPsoM93TRNLWTbmuOg4/E1CImilSX4qy9fok0AKJyA== +knip@^5.0.0: + version "5.9.4" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.9.4.tgz#62d95ce61e3a37a692d4be317f6614effa569e0e" + integrity sha512-33TM8bSHxMMoj+wP9lzjUkIIEfpXaZsLWMYRCoHdbmYnl2HKPMNijcYTxwi1omRROobXrR/VJyH2ZsYOKM1jtg== dependencies: "@ericcornelissen/bash-parser" "0.5.2" "@nodelib/fs.walk" "2.0.0" - "@npmcli/map-workspaces" "3.0.4" - "@npmcli/package-json" "5.0.0" + "@npmcli/map-workspaces" "^3.0.4" + "@npmcli/package-json" "^5.0.0" "@pnpm/logger" "5.0.0" - "@pnpm/workspace.pkgs-graph" "^2.0.14" + "@pnpm/workspace.pkgs-graph" "2.0.14" "@snyk/github-codeowners" "1.1.0" "@types/picomatch" "2.3.3" easy-table "1.2.0" @@ -5188,14 +5187,14 @@ knip@^4.0.1: micromatch "4.0.5" minimist "1.2.8" picocolors "1.0.0" - picomatch "4.0.1" + picomatch "^4.0.1" pretty-ms "9.0.0" - semver "7.6.0" + resolve "1.22.8" smol-toml "1.1.4" strip-json-comments "5.0.1" summary "2.1.0" - zod "3.22.4" - zod-validation-error "3.0.0" + zod "^3.22.4" + zod-validation-error "^3.0.3" leven@^3.1.0: version "3.1.0" @@ -5900,16 +5899,16 @@ picocolors@1.0.0, picocolors@^1.0.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -picomatch@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.1.tgz#68c26c8837399e5819edce48590412ea07f17a07" - integrity sha512-xUXwsxNjwTQ8K3GnT4pCJm+xq3RUPQbmkYJTP5aFIfNIvbcc/4MUxgBaaRSZJ6yGJZiGSyYlM6MzwTsRk8SYCg== - picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== +picomatch@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" + integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== + pidtree@0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c" @@ -5978,6 +5977,11 @@ proc-log@^3.0.0: resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-3.0.0.tgz#fb05ef83ccd64fd7b20bbe9c8c1070fc08338dd8" integrity sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A== +proc-log@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-4.1.0.tgz#ab6c1552b454e9e467cb58119179e4557d109b34" + integrity sha512-dmQ2iPw2nJMi9/4dpaG1wd0m1GE+K5kW7RGbjy5hoEEGnhPIzsm+klBO5RGGdcoYbWsNtU2KSNAdEldts+icLg== + promise-inflight@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" @@ -6203,19 +6207,19 @@ resolve.exports@^2.0.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@^1.10.0, resolve@^1.20.0: - version "1.22.4" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.4.tgz#1dc40df46554cdaf8948a486a10f6ba1e2026c34" - integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg== +resolve@1.22.8, resolve@^1.14.2, resolve@^1.22.4: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== dependencies: is-core-module "^2.13.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -resolve@^1.14.2, resolve@^1.22.4: - version "1.22.8" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" - integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== +resolve@^1.10.0, resolve@^1.20.0: + version "1.22.4" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.4.tgz#1dc40df46554cdaf8948a486a10f6ba1e2026c34" + integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg== dependencies: is-core-module "^2.13.0" path-parse "^1.0.7" @@ -6329,18 +6333,18 @@ sdp-transform@^2.14.1: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -semver@7.6.0, semver@^7.0.0, semver@^7.1.1, semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.4.0, semver@^7.5.4, semver@^7.6.0: +semver@^6.1.0, semver@^6.3.0, semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + +semver@^7.0.0, semver@^7.1.1, semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.4.0, semver@^7.5.4, semver@^7.6.0: version "7.6.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== dependencies: lru-cache "^6.0.0" -semver@^6.1.0, semver@^6.3.0, semver@^6.3.1: - version "6.3.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" - integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== - semver@^7.5.3: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" @@ -7352,12 +7356,12 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== -zod-validation-error@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.0.0.tgz#69dee45a03ccf9739456bddb50b4d27f121c6f45" - integrity sha512-x+agsJJG9rvC7axF0xqTEdZhJkLHyIZkdOAWDJSmwGPzxNHMHwtU6w2yDOAAP6yuSfTAUhAMJRBfhVGY64ySEQ== +zod-validation-error@^3.0.3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.1.0.tgz#ce6b74a67b1b28cbbc41f890e88b2778f856e1fe" + integrity sha512-zujS6HqJjMZCsvjfbnRs7WI3PXN39ovTcY1n8a+KTm4kOH0ZXYsNiJkH1odZf4xZKMkBDL7M2rmQ913FCS1p9w== -zod@3.22.4: +zod@^3.22.4: version "3.22.4" resolved "https://registry.yarnpkg.com/zod/-/zod-3.22.4.tgz#f31c3a9386f61b1f228af56faa9255e845cf3fff" integrity sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg== From a747eef04cce48a3aa3990731477eed3960f326f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 13:24:27 +0000 Subject: [PATCH 174/595] Update dependency typescript to v5.4.5 (#4161) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 0b834e370fa..370bfd7bf88 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6952,9 +6952,9 @@ typedoc@^0.25.10: shiki "^0.14.7" typescript@^5.3.3: - version "5.4.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.3.tgz#5c6fedd4c87bee01cd7a528a30145521f8e0feff" - integrity sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg== + version "5.4.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" + integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== unbox-primitive@^1.0.2: version "1.0.2" From 2a06d194317ff0318a74a4f52991866f9a6eba76 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 13:24:46 +0000 Subject: [PATCH 175/595] Update babel monorepo to v7.24.4 (#4159) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 109 +++++++++++++++++++++++++++++------------------------- 1 file changed, 59 insertions(+), 50 deletions(-) diff --git a/yarn.lock b/yarn.lock index 370bfd7bf88..91468ee84ca 100644 --- a/yarn.lock +++ b/yarn.lock @@ -72,10 +72,10 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730" integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.5", "@babel/compat-data@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.1.tgz#31c1f66435f2a9c329bb5716a6d6186c516c3742" - integrity sha512-Pc65opHDliVpRHuKfzI+gSA4zcgr65O4cl64fFJIWEEh8JoHIHh0Oez1Eo8Arz8zq/JhgKodQaxEwUPRtZylVA== +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.5", "@babel/compat-data@^7.24.4": + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.4.tgz#6f102372e9094f25d908ca0d34fc74c74606059a" + integrity sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ== "@babel/compat-data@^7.22.9": version "7.23.5" @@ -83,17 +83,17 @@ integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== "@babel/core@^7.0.0", "@babel/core@^7.12.10": - version "7.24.3" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.3.tgz#568864247ea10fbd4eff04dda1e05f9e2ea985c3" - integrity sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ== + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.4.tgz#1f758428e88e0d8c563874741bc4ffc4f71a4717" + integrity sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg== dependencies: "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.24.2" - "@babel/generator" "^7.24.1" + "@babel/generator" "^7.24.4" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.24.1" - "@babel/parser" "^7.24.1" + "@babel/helpers" "^7.24.4" + "@babel/parser" "^7.24.4" "@babel/template" "^7.24.0" "@babel/traverse" "^7.24.1" "@babel/types" "^7.24.0" @@ -160,10 +160,10 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" -"@babel/generator@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.1.tgz#e67e06f68568a4ebf194d1c6014235344f0476d0" - integrity sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A== +"@babel/generator@^7.24.1", "@babel/generator@^7.24.4": + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.4.tgz#1fc55532b88adf952025d5d2d1e71f946cb1c498" + integrity sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw== dependencies: "@babel/types" "^7.24.0" "@jridgewell/gen-mapping" "^0.3.5" @@ -221,10 +221,10 @@ "@babel/helper-split-export-declaration" "^7.22.6" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.1.tgz#db58bf57137b623b916e24874ab7188d93d7f68f" - integrity sha512-1yJa9dX9g//V6fDebXoEfEsxkZHk3Hcbm+zLhyu6qVgYFLvmTALTeV+jNU9e5RnYtioBrGEOdoI2joMSNQ/+aA== +"@babel/helper-create-class-features-plugin@^7.24.1", "@babel/helper-create-class-features-plugin@^7.24.4": + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz#c806f73788a6800a5cfbbc04d2df7ee4d927cce3" + integrity sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" "@babel/helper-environment-visitor" "^7.22.20" @@ -427,10 +427,10 @@ "@babel/traverse" "^7.22.15" "@babel/types" "^7.22.15" -"@babel/helpers@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.1.tgz#183e44714b9eba36c3038e442516587b1e0a1a94" - integrity sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg== +"@babel/helpers@^7.24.4": + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.4.tgz#dc00907fd0d95da74563c142ef4cd21f2cb856b6" + integrity sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw== dependencies: "@babel/template" "^7.24.0" "@babel/traverse" "^7.24.1" @@ -480,10 +480,18 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.3.tgz#0ce0be31a4ca4f1884b5786057cadcb6c3be58f9" integrity sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw== -"@babel/parser@^7.24.0", "@babel/parser@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.1.tgz#1e416d3627393fab1cb5b0f2f1796a100ae9133a" - integrity sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg== +"@babel/parser@^7.24.0", "@babel/parser@^7.24.1", "@babel/parser@^7.24.4": + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.4.tgz#234487a110d89ad5a3ed4a8a566c36b9453e8c88" + integrity sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg== + +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.4": + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.4.tgz#6125f0158543fb4edf1c22f322f3db67f21cb3e1" + integrity sha512-qpl6vOOEEzTLLcsuqYYo8yDtrTocmu2xkGvgNebvPjT9DTtfFYGmgDqY+rBYXNlqL4s9qLDn6xkrJv4RxAPiTA== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.24.1": version "7.24.1" @@ -736,10 +744,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-block-scoping@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.1.tgz#27af183d7f6dad890531256c7a45019df768ac1f" - integrity sha512-h71T2QQvDgM2SmT29UYU6ozjMlAt7s7CSs5Hvy8f8cf/GM/Z4a2zMfN+fjVGaieeCrXR3EdQl6C4gQG+OgmbKw== +"@babel/plugin-transform-block-scoping@^7.24.4": + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.4.tgz#28f5c010b66fbb8ccdeef853bef1935c434d7012" + integrity sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g== dependencies: "@babel/helper-plugin-utils" "^7.24.0" @@ -751,12 +759,12 @@ "@babel/helper-create-class-features-plugin" "^7.24.1" "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-class-static-block@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.1.tgz#4e37efcca1d9f2fcb908d1bae8b56b4b6e9e1cb6" - integrity sha512-FUHlKCn6J3ERiu8Dv+4eoz7w8+kFLSyeVG4vDAikwADGjUCoHw/JHokyGtr8OR4UjpwPVivyF+h8Q5iv/JmrtA== +"@babel/plugin-transform-class-static-block@^7.24.4": + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.4.tgz#1a4653c0cf8ac46441ec406dece6e9bc590356a4" + integrity sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.1" + "@babel/helper-create-class-features-plugin" "^7.24.4" "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-class-static-block" "^7.14.5" @@ -1120,14 +1128,15 @@ "@babel/helper-plugin-utils" "^7.24.0" "@babel/preset-env@^7.12.11": - version "7.24.3" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.3.tgz#f3f138c844ffeeac372597b29c51b5259e8323a3" - integrity sha512-fSk430k5c2ff8536JcPvPWK4tZDwehWLGlBp0wrsBUjZVdeQV6lePbwKWZaZfK2vnh/1kQX1PzAJWsnBmVgGJA== + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.4.tgz#46dbbcd608771373b88f956ffb67d471dce0d23b" + integrity sha512-7Kl6cSmYkak0FK/FXjSEnLJ1N9T/WA2RkMhu17gZ/dsxKJUuTYNIylahPTzqpLyJN4WhDif8X0XK1R8Wsguo/A== dependencies: - "@babel/compat-data" "^7.24.1" + "@babel/compat-data" "^7.24.4" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-plugin-utils" "^7.24.0" "@babel/helper-validator-option" "^7.23.5" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.4" "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.1" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.1" "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.24.1" @@ -1154,9 +1163,9 @@ "@babel/plugin-transform-async-generator-functions" "^7.24.3" "@babel/plugin-transform-async-to-generator" "^7.24.1" "@babel/plugin-transform-block-scoped-functions" "^7.24.1" - "@babel/plugin-transform-block-scoping" "^7.24.1" + "@babel/plugin-transform-block-scoping" "^7.24.4" "@babel/plugin-transform-class-properties" "^7.24.1" - "@babel/plugin-transform-class-static-block" "^7.24.1" + "@babel/plugin-transform-class-static-block" "^7.24.4" "@babel/plugin-transform-classes" "^7.24.1" "@babel/plugin-transform-computed-properties" "^7.24.1" "@babel/plugin-transform-destructuring" "^7.24.1" @@ -1231,9 +1240,9 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.1.tgz#431f9a794d173b53720e69a6464abc6f0e2a5c57" - integrity sha512-+BIznRzyqBf+2wCTxcKE3wDjfGeCoVE61KSHGpkzqrLi8qxqFwBeUFyId2cxkTmm55fzDGnm0+yCxaxygrLUnQ== + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.4.tgz#de795accd698007a66ba44add6cc86542aff1edd" + integrity sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA== dependencies: regenerator-runtime "^0.14.0" @@ -2885,9 +2894,9 @@ caniuse-lite@^1.0.30001565: integrity sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q== caniuse-lite@^1.0.30001587: - version "1.0.30001605" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001605.tgz#ca12d7330dd8bcb784557eb9aa64f0037870d9d6" - integrity sha512-nXwGlFWo34uliI9z3n6Qc0wZaf7zaZWA1CPZ169La5mV3I/gem7bst0vr5XQH5TJXZIMfDeZyOrZnSlVzKxxHQ== + version "1.0.30001610" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001610.tgz#2f44ed6e21d359e914271ae35b68903632628ccf" + integrity sha512-QFutAY4NgaelojVMjY63o6XlZyORPaLfyMnsl3HgnWdJUcX6K0oaJymHjH8PT5Gk7sTm8rvC/c5COUQKXqmOMA== chalk@5.2.0: version "5.2.0" @@ -3299,9 +3308,9 @@ electron-to-chromium@^1.4.601: integrity sha512-2yszojF7vIZ68adIOvzV4bku8OZad9w5H9xF3ZAMZjPuOjBarlflUkjN6DggdV+L71WZuKUfKUhov/34+G5QHg== electron-to-chromium@^1.4.668: - version "1.4.723" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.723.tgz#827da30c96b316684d352c3d81430029df01bb8e" - integrity sha512-rxFVtrMGMFROr4qqU6n95rUi9IlfIm+lIAt+hOToy/9r6CDv0XiEcQdC3VP71y1pE5CFTzKV0RvxOGYCPWWHPw== + version "1.4.737" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.737.tgz#3a774a58e04980741f65d440f5fdf57af18b6dde" + integrity sha512-QvLTxaLHKdy5YxvixAw/FfHq2eWLUL9KvsPjp0aHK1gI5d3EDuDgITkvj0nFO2c6zUY3ZqVAJQiBYyQP9tQpfw== emittery@^0.13.1: version "0.13.1" From 53039b78eed5c1c50d866e2ac6269aa950f05446 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 14:25:06 +0100 Subject: [PATCH 176/595] Update all non-major dependencies (#4158) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/downstream-artifacts.yml | 2 +- yarn.lock | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/downstream-artifacts.yml b/.github/workflows/downstream-artifacts.yml index c811e0120da..d041c1fef4b 100644 --- a/.github/workflows/downstream-artifacts.yml +++ b/.github/workflows/downstream-artifacts.yml @@ -16,7 +16,7 @@ concurrency: jobs: build-element-web: name: Build element-web - uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.96.1 + uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.97.0 with: matrix-js-sdk-sha: ${{ github.sha }} react-sdk-repository: matrix-org/matrix-react-sdk diff --git a/yarn.lock b/yarn.lock index 91468ee84ca..9b1543b7870 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3535,9 +3535,9 @@ eslint-plugin-jest@^27.1.6: "@typescript-eslint/utils" "^5.10.0" eslint-plugin-jsdoc@^48.0.0: - version "48.2.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.2.tgz#eefdc5e3bb3cea957b66dd4817e9de30930b5270" - integrity sha512-S0Gk+rpT5w/ephKCncUY7kUsix9uE4B9XI8D/fS1/26d8okE+vZsuG1IvIt4B6sJUdQqsnzi+YXfmh+HJG11CA== + version "48.2.3" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.3.tgz#0188d17c7a4aa7185416556589e71a954b343ecd" + integrity sha512-r9DMAmFs66VNvNqRLLjHejdnJtILrt3xGi+Qx0op0oRfFGVpOR1Hb3BC++MacseHx93d8SKYPhyrC9BS7Os2QA== dependencies: "@es-joy/jsdoccomment" "~0.42.0" are-docs-informative "^0.0.2" From 0db3ac9b432f0879f85d33b235d4b7aa317afd12 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 13:56:50 +0000 Subject: [PATCH 177/595] Update dependency eslint-plugin-jest to v28 (#4165) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 127 ++++++++++++++++++++++----------------------------- 2 files changed, 56 insertions(+), 73 deletions(-) diff --git a/package.json b/package.json index 2be063ccbec..7bf84a13957 100644 --- a/package.json +++ b/package.json @@ -101,7 +101,7 @@ "eslint-config-prettier": "^9.0.0", "eslint-import-resolver-typescript": "^3.5.1", "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jest": "^27.1.6", + "eslint-plugin-jest": "^28.0.0", "eslint-plugin-jsdoc": "^48.0.0", "eslint-plugin-matrix-org": "^1.0.0", "eslint-plugin-tsdoc": "^0.2.17", diff --git a/yarn.lock b/yarn.lock index 9b1543b7870..ae05fae432d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2180,7 +2180,7 @@ "@types/tough-cookie" "*" parse5 "^7.0.0" -"@types/json-schema@^7.0.15", "@types/json-schema@^7.0.9": +"@types/json-schema@^7.0.12", "@types/json-schema@^7.0.15": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -2229,12 +2229,7 @@ resolved "https://registry.yarnpkg.com/@types/sdp-transform/-/sdp-transform-2.4.9.tgz#26ef39f487a6909b0512f580b80920a366b27f52" integrity sha512-bVr+/OoZZy7wrHlNcEAAa6PAgKA4BoXPYVN2EijMC5WnGgQ4ZEuixmKnVs2roiAvr7RhIFVH17QD27cojgIZCg== -"@types/semver@^7.3.12": - version "7.5.7" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.7.tgz#326f5fdda70d13580777bcaa1bc6fa772a5aef0e" - integrity sha512-/wdoPq1QqkSj9/QOeKkFquEuPzQbHTWAMPH/PaUMB+JuR31lXhlWXRZ52IpfDYVlDOUBvX09uBrPwxGT1hjNBg== - -"@types/semver@^7.5.8": +"@types/semver@^7.5.0", "@types/semver@^7.5.8": version "7.5.8" resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e" integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ== @@ -2299,13 +2294,13 @@ "@typescript-eslint/visitor-keys" "7.7.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c" - integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w== +"@typescript-eslint/scope-manager@6.21.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz#ea8a9bfc8f1504a6ac5d59a6df308d3a0630a2b1" + integrity sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg== dependencies: - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/visitor-keys" "5.62.0" + "@typescript-eslint/types" "6.21.0" + "@typescript-eslint/visitor-keys" "6.21.0" "@typescript-eslint/scope-manager@7.7.0": version "7.7.0" @@ -2325,28 +2320,29 @@ debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" - integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== +"@typescript-eslint/types@6.21.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.21.0.tgz#205724c5123a8fef7ecd195075fa6e85bac3436d" + integrity sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg== "@typescript-eslint/types@7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.7.0.tgz#23af4d24bf9ce15d8d301236e3e3014143604f27" integrity sha512-G01YPZ1Bd2hn+KPpIbrAhEWOn5lQBrjxkzHkWvP6NucMXFtfXoevK82hzQdpfuQYuhkvFDeQYbzXCjR1z9Z03w== -"@typescript-eslint/typescript-estree@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b" - integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA== +"@typescript-eslint/typescript-estree@6.21.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz#c47ae7901db3b8bddc3ecd73daff2d0895688c46" + integrity sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ== dependencies: - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/visitor-keys" "5.62.0" + "@typescript-eslint/types" "6.21.0" + "@typescript-eslint/visitor-keys" "6.21.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" - semver "^7.3.7" - tsutils "^3.21.0" + minimatch "9.0.3" + semver "^7.5.4" + ts-api-utils "^1.0.1" "@typescript-eslint/typescript-estree@7.7.0": version "7.7.0" @@ -2375,27 +2371,26 @@ "@typescript-eslint/typescript-estree" "7.7.0" semver "^7.6.0" -"@typescript-eslint/utils@^5.10.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86" - integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ== +"@typescript-eslint/utils@^6.0.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.21.0.tgz#4714e7a6b39e773c1c8e97ec587f520840cd8134" + integrity sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ== dependencies: - "@eslint-community/eslint-utils" "^4.2.0" - "@types/json-schema" "^7.0.9" - "@types/semver" "^7.3.12" - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/typescript-estree" "5.62.0" - eslint-scope "^5.1.1" - semver "^7.3.7" - -"@typescript-eslint/visitor-keys@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e" - integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw== - dependencies: - "@typescript-eslint/types" "5.62.0" - eslint-visitor-keys "^3.3.0" + "@eslint-community/eslint-utils" "^4.4.0" + "@types/json-schema" "^7.0.12" + "@types/semver" "^7.5.0" + "@typescript-eslint/scope-manager" "6.21.0" + "@typescript-eslint/types" "6.21.0" + "@typescript-eslint/typescript-estree" "6.21.0" + semver "^7.5.4" + +"@typescript-eslint/visitor-keys@6.21.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz#87a99d077aa507e20e238b11d56cc26ade45fe47" + integrity sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A== + dependencies: + "@typescript-eslint/types" "6.21.0" + eslint-visitor-keys "^3.4.1" "@typescript-eslint/visitor-keys@7.7.0": version "7.7.0" @@ -3527,12 +3522,12 @@ eslint-plugin-import@^2.26.0: semver "^6.3.1" tsconfig-paths "^3.15.0" -eslint-plugin-jest@^27.1.6: - version "27.9.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz#7c98a33605e1d8b8442ace092b60e9919730000b" - integrity sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug== +eslint-plugin-jest@^28.0.0: + version "28.2.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.2.0.tgz#863e2b2bda95eb41981ba9bcf4c44f57dce40a73" + integrity sha512-yRDti/a+f+SMSmNTiT9/M/MzXGkitl8CfzUxnpoQcTyfq8gUrXMriVcWU36W1X6BZSUoyUCJrDAWWUA2N4hE5g== dependencies: - "@typescript-eslint/utils" "^5.10.0" + "@typescript-eslint/utils" "^6.0.0" eslint-plugin-jsdoc@^48.0.0: version "48.2.3" @@ -3589,7 +3584,7 @@ eslint-rule-composer@^0.3.0: resolved "https://registry.yarnpkg.com/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz#79320c927b0c5c0d3d3d2b76c8b4a488f25bbaf9" integrity sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg== -eslint-scope@5.1.1, eslint-scope@^5.1.1: +eslint-scope@5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== @@ -5487,6 +5482,13 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== +minimatch@9.0.3, minimatch@^9.0.1, minimatch@^9.0.3: + version "9.0.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" + integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== + dependencies: + brace-expansion "^2.0.1" + minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -5501,13 +5503,6 @@ minimatch@^9.0.0, minimatch@^9.0.4: dependencies: brace-expansion "^2.0.1" -minimatch@^9.0.1, minimatch@^9.0.3: - version "9.0.3" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" - integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== - dependencies: - brace-expansion "^2.0.1" - minimist@1.2.8, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" @@ -6347,7 +6342,7 @@ semver@^6.1.0, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.0.0, semver@^7.1.1, semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.4.0, semver@^7.5.4, semver@^7.6.0: +semver@^7.0.0, semver@^7.1.1, semver@^7.3.2, semver@^7.3.5, semver@^7.4.0, semver@^7.5.4, semver@^7.6.0: version "7.6.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== @@ -6808,7 +6803,7 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== -ts-api-utils@^1.3.0: +ts-api-utils@^1.0.1, ts-api-utils@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1" integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ== @@ -6842,23 +6837,11 @@ tsconfig-paths@^3.15.0: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^1.8.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" - integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== - tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1, tslib@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== -tsutils@^3.21.0: - version "3.21.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" - integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== - dependencies: - tslib "^1.8.1" - type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" From 28bbc5175214dfa7c0370b8bd3619664b7b81570 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 14:06:49 +0000 Subject: [PATCH 178/595] Update dependency @types/node to v18.19.31 (#4160) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index ae05fae432d..fb36fa4aaba 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2203,9 +2203,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.28" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.28.tgz#c64a2c992c8ebbf61100a4570e4eebc1934ae030" - integrity sha512-J5cOGD9n4x3YGgVuaND6khm5x07MMdAKkRyXnjVR6KFhLMNh2yONGiP7Z+4+tBOt5mK+GvDTiacTOVGGpqiecw== + version "18.19.31" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.31.tgz#b7d4a00f7cb826b60a543cebdbda5d189aaecdcd" + integrity sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA== dependencies: undici-types "~5.26.4" From 0137e9d5a82fc32cc6e818bd5bea5e60c000b822 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 14:29:48 +0000 Subject: [PATCH 179/595] Update dependency eslint-plugin-unicorn to v52 (#4166) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 7bf84a13957..7d263f4ade5 100644 --- a/package.json +++ b/package.json @@ -105,7 +105,7 @@ "eslint-plugin-jsdoc": "^48.0.0", "eslint-plugin-matrix-org": "^1.0.0", "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^51.0.0", + "eslint-plugin-unicorn": "^52.0.0", "fake-indexeddb": "^5.0.2", "fetch-mock": "9.11.0", "fetch-mock-jest": "^1.5.1", diff --git a/yarn.lock b/yarn.lock index fb36fa4aaba..223495aaf3a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3557,10 +3557,10 @@ eslint-plugin-tsdoc@^0.2.17: "@microsoft/tsdoc" "0.14.2" "@microsoft/tsdoc-config" "0.16.2" -eslint-plugin-unicorn@^51.0.0: - version "51.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-51.0.1.tgz#3641c5e110324c3739d6cb98fc1b99ada39f477b" - integrity sha512-MuR/+9VuB0fydoI0nIn2RDA5WISRn4AsJyNSaNKLVwie9/ONvQhxOBbkfSICBPnzKrB77Fh6CZZXjgTt/4Latw== +eslint-plugin-unicorn@^52.0.0: + version "52.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-52.0.0.tgz#c7a559edd52e3932cf2b3a05c3b0efc604c1eeb8" + integrity sha512-1Yzm7/m+0R4djH0tjDjfVei/ju2w3AzUGjG6q8JnuNIL5xIwsflyCooW5sfBvQp2pMYQFSWWCFONsjCax1EHng== dependencies: "@babel/helper-validator-identifier" "^7.22.20" "@eslint-community/eslint-utils" "^4.4.0" From 2321c44687ebbeed5982f67c46ce2ff720bdc700 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 15:22:17 +0000 Subject: [PATCH 180/595] Update typedoc (#4162) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index 223495aaf3a..5a3095277c6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5482,7 +5482,7 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -minimatch@9.0.3, minimatch@^9.0.1, minimatch@^9.0.3: +minimatch@9.0.3, minimatch@^9.0.1: version "9.0.3" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== @@ -5496,7 +5496,7 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" -minimatch@^9.0.0, minimatch@^9.0.4: +minimatch@^9.0.0, minimatch@^9.0.3, minimatch@^9.0.4: version "9.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51" integrity sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw== @@ -6924,9 +6924,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-fxeJRrxQR3yM/aFZU7mOuatgRCztiMCbeNiCRVZKY6VNgOcVMC1HS+ZfZnlbLLteUOdeWleSQ6yntuipz5zi6A== typedoc-plugin-mdn-links@^3.0.3: - version "3.1.18" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.18.tgz#736df9b90245583aa00d726d6eec474e0cbec37a" - integrity sha512-BGzSUEHT15o3g2Q1q/5tBQufAM+yqJNwU1aUmYZC9qbfCS1I5qyEkmoxZ9ks2Z3TwPTZ8PMfIKd2vq5/0nmLnw== + version "3.1.21" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.21.tgz#bde151737be1c301117329aacf930cf701cfd860" + integrity sha512-RbGsC6RFDp4u5dhSj+e489dXCDM6CIBin6lluPdpwOZ5C7kCbrvIyh8tSnNd8/vLoSPYVj2wwTu6HbRSjI8fLQ== typedoc-plugin-missing-exports@^2.0.0: version "2.2.0" @@ -6934,9 +6934,9 @@ typedoc-plugin-missing-exports@^2.0.0: integrity sha512-2+XR1IcyQ5UwXZVJe9NE6HrLmNufT9i5OwoIuuj79VxuA3eYq+Y6itS9rnNV1D7UeQnUSH8kISYD73gHE5zw+w== typedoc@^0.25.10: - version "0.25.12" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.25.12.tgz#f73f0a8d3731d418cc604d4230f95a857799e27a" - integrity sha512-F+qhkK2VoTweDXd1c42GS/By2DvI2uDF4/EpG424dTexSHdtCH52C6IcAvMA6jR3DzAWZjHpUOW+E02kyPNUNw== + version "0.25.13" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.25.13.tgz#9a98819e3b2d155a6d78589b46fa4c03768f0922" + integrity sha512-pQqiwiJ+Z4pigfOnnysObszLiU3mVLWAExSPf+Mu06G/qsc3wzbuM56SZQvONhHLncLUhYzOVkjFFpFfL5AzhQ== dependencies: lunr "^2.3.9" marked "^4.3.0" From 8240bf0ae7f508751240cf82467c9bf5a1d2032d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 16:59:04 +0100 Subject: [PATCH 181/595] Update shogo82148/actions-upload-release-asset digest to 8f032ef (#4157) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/actions/sign-release-tarball/action.yml | 2 +- .github/actions/upload-release-assets/action.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/sign-release-tarball/action.yml b/.github/actions/sign-release-tarball/action.yml index 179ce203ffb..e249b92dd09 100644 --- a/.github/actions/sign-release-tarball/action.yml +++ b/.github/actions/sign-release-tarball/action.yml @@ -22,7 +22,7 @@ runs: - name: Upload tarball signature if: ${{ inputs.upload-url }} - uses: shogo82148/actions-upload-release-asset@5bd52f05dd8076794da5975d4c0a4f3bce7dd8f5 # v1 + uses: shogo82148/actions-upload-release-asset@8f032eff0255912cc9c8455797fd6d72f25c7ab7 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ env.VERSION }}.tar.gz.asc diff --git a/.github/actions/upload-release-assets/action.yml b/.github/actions/upload-release-assets/action.yml index 28f3b6d1b32..b11be5a8a86 100644 --- a/.github/actions/upload-release-assets/action.yml +++ b/.github/actions/upload-release-assets/action.yml @@ -29,13 +29,13 @@ runs: - name: Upload asset signatures if: inputs.gpg-fingerprint - uses: shogo82148/actions-upload-release-asset@5bd52f05dd8076794da5975d4c0a4f3bce7dd8f5 # v1 + uses: shogo82148/actions-upload-release-asset@8f032eff0255912cc9c8455797fd6d72f25c7ab7 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ inputs.asset-path }}.asc - name: Upload assets - uses: shogo82148/actions-upload-release-asset@5bd52f05dd8076794da5975d4c0a4f3bce7dd8f5 # v1 + uses: shogo82148/actions-upload-release-asset@8f032eff0255912cc9c8455797fd6d72f25c7ab7 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ inputs.asset-path }} From c30e49801345043942a1164efab2ef6662173c9f Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Wed, 17 Apr 2024 11:26:41 +0100 Subject: [PATCH 182/595] Crypto: use a new error code for UTDs from device-relative historical events (#4139) * Add `PerSessionKeyBackupDownloader.isKeyBackupDownloadConfigured()` * Add new `RustBackupManager.getServerBackupInfo` ... and a convenience method in PerSessionKeyBackupDownloader to access it. * Crypto.spec: move `useRealTimers` to global `afterEach` ... so that we don't need to remember to do it everywhere. * Use fake timers for UTD error code tests This doesn't have any effect on the tests, but *does* stop jest from hanging when you run the tests in in-band mode. It shouldn't *really* be needed, but using fake timers gives more reproducible tests, and I don't have the time/patience to debug why it is needed. * Use new error codes for UTDs from historical events --- spec/integ/crypto/crypto.spec.ts | 120 +++++++++++++++--- spec/integ/crypto/megolm-backup.spec.ts | 12 +- .../PerSessionKeyBackupDownloader.spec.ts | 28 +++- src/crypto-api.ts | 18 +++ .../PerSessionKeyBackupDownloader.ts | 28 +++- src/rust-crypto/backup.ts | 33 ++++- src/rust-crypto/rust-crypto.ts | 38 +++++- 7 files changed, 245 insertions(+), 32 deletions(-) diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 53686dc1b32..1c9ebb12781 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -108,6 +108,8 @@ afterEach(() => { // cf https://github.com/dumbmatter/fakeIndexedDB#wipingresetting-the-indexeddb-for-a-fresh-state // eslint-disable-next-line no-global-assign indexedDB = new IDBFactory(); + + jest.useRealTimers(); }); /** @@ -467,6 +469,10 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, }); describe("Unable to decrypt error codes", function () { + beforeEach(() => { + jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); + }); + it("Decryption fails with UISI error", async () => { expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); await startClientAndAwaitFirstSync(); @@ -474,11 +480,17 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, // A promise which resolves, with the MatrixEvent which wraps the event, once the decryption fails. const awaitDecryption = emitPromise(aliceClient, MatrixEventEvent.Decrypted); + // Ensure that the timestamp post-dates the creation of our device + const encryptedEvent = { + ...testData.ENCRYPTED_EVENT, + origin_server_ts: Date.now(), + }; + const syncResponse = { next_batch: 1, rooms: { join: { - [testData.TEST_ROOM_ID]: { timeline: { events: [testData.ENCRYPTED_EVENT] } }, + [testData.TEST_ROOM_ID]: { timeline: { events: [encryptedEvent] } }, }, }, }; @@ -498,12 +510,17 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, await aliceClient.getCrypto()!.importRoomKeys([testData.RATCHTED_MEGOLM_SESSION_DATA]); - // Alice gets both the events in a single sync + // Ensure that the timestamp post-dates the creation of our device + const encryptedEvent = { + ...testData.ENCRYPTED_EVENT, + origin_server_ts: Date.now(), + }; + const syncResponse = { next_batch: 1, rooms: { join: { - [testData.TEST_ROOM_ID]: { timeline: { events: [testData.ENCRYPTED_EVENT] } }, + [testData.TEST_ROOM_ID]: { timeline: { events: [encryptedEvent] } }, }, }, }; @@ -515,6 +532,87 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.OLM_UNKNOWN_MESSAGE_INDEX); }); + describe("Historical events", () => { + async function sendEventAndAwaitDecryption(): Promise { + // A promise which resolves, with the MatrixEvent which wraps the event, once the decryption fails. + const awaitDecryption = emitPromise(aliceClient, MatrixEventEvent.Decrypted); + + // Ensure that the timestamp pre-dates the creation of our device: set it to 24 hours ago + const encryptedEvent = { + ...testData.ENCRYPTED_EVENT, + origin_server_ts: Date.now() - 24 * 3600 * 1000, + }; + + const syncResponse = { + next_batch: 1, + rooms: { + join: { + [testData.TEST_ROOM_ID]: { timeline: { events: [encryptedEvent] } }, + }, + }, + }; + + syncResponder.sendOrQueueSyncResponse(syncResponse); + return await awaitDecryption; + } + + newBackendOnly("fails with HISTORICAL_MESSAGE_BACKUP_NO_BACKUP when there is no backup", async () => { + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { errcode: "M_NOT_FOUND", error: "No current backup version." }, + }); + expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); + await startClientAndAwaitFirstSync(); + + const ev = await sendEventAndAwaitDecryption(); + expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.HISTORICAL_MESSAGE_NO_KEY_BACKUP); + }); + + newBackendOnly("fails with HISTORICAL_MESSAGE_BACKUP_UNCONFIGURED when the backup is broken", async () => { + fetchMock.get("path:/_matrix/client/v3/room_keys/version", {}); + expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); + await startClientAndAwaitFirstSync(); + + const ev = await sendEventAndAwaitDecryption(); + expect(ev.decryptionFailureReason).toEqual( + DecryptionFailureCode.HISTORICAL_MESSAGE_BACKUP_UNCONFIGURED, + ); + }); + + newBackendOnly("fails with HISTORICAL_MESSAGE_WORKING_BACKUP when backup is working", async () => { + // The test backup data is signed by a dummy device. We'll need to tell Alice about the device, and + // later, tell her to trust it, so that she trusts the backup. + const e2eResponder = new E2EKeyResponder(aliceClient.getHomeserverUrl()); + e2eResponder.addDeviceKeys(testData.SIGNED_TEST_DEVICE_DATA); + fetchMock.get("path:/_matrix/client/v3/room_keys/version", testData.SIGNED_BACKUP_DATA); + await startClientAndAwaitFirstSync(); + + await aliceClient + .getCrypto()! + .storeSessionBackupPrivateKey( + Buffer.from(testData.BACKUP_DECRYPTION_KEY_BASE64, "base64"), + testData.SIGNED_BACKUP_DATA.version!, + ); + + // Tell Alice to trust the dummy device that signed the backup + const devices = await aliceClient.getCrypto()!.getUserDeviceInfo([TEST_USER_ID]); + expect(devices.get(TEST_USER_ID)!.keys()).toContain(testData.TEST_DEVICE_ID); + await aliceClient.getCrypto()!.setDeviceVerified(testData.TEST_USER_ID, testData.TEST_DEVICE_ID); + + // Tell Alice to check and enable backup + await aliceClient.getCrypto()!.checkKeyBackupAndEnable(); + + // Sanity: Alice should now have working backup. + expect(await aliceClient.getCrypto()!.getActiveSessionBackupVersion()).toEqual( + testData.SIGNED_BACKUP_DATA.version, + ); + + // Finally! we can check what happens when we get an event. + const ev = await sendEventAndAwaitDecryption(); + expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.HISTORICAL_MESSAGE_WORKING_BACKUP); + }); + }); + it("Decryption fails with Unable to decrypt for other errors", async () => { expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); await startClientAndAwaitFirstSync(); @@ -997,10 +1095,6 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, return encryptedMessage; } - afterEach(() => { - jest.useRealTimers(); - }); - newBackendOnly("should rotate the session after 2 messages", async () => { expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); await startClientAndAwaitFirstSync(); @@ -2184,10 +2278,6 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); }); - afterEach(() => { - jest.useRealTimers(); - }); - function awaitKeyUploadRequest(): Promise<{ keysCount: number; fallbackKeysCount: number }> { return new Promise((resolve) => { const listener = (url: string, options: RequestInit) => { @@ -2250,10 +2340,6 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, }); describe("getUserDeviceInfo", () => { - afterEach(() => { - jest.useRealTimers(); - }); - // From https://spec.matrix.org/v1.6/client-server-api/#post_matrixclientv3keysquery // Using extracted response from matrix.org, it needs to have real keys etc to pass old crypto verification const queryResponseBody = { @@ -2742,10 +2828,6 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); }); - afterEach(() => { - jest.useRealTimers(); - }); - it("Should be able to restore from 4S after bootstrap", async () => { const backupVersion = "1"; await bootstrapSecurity(backupVersion); diff --git a/spec/integ/crypto/megolm-backup.spec.ts b/spec/integ/crypto/megolm-backup.spec.ts index 31fae626097..66f7892daa5 100644 --- a/spec/integ/crypto/megolm-backup.spec.ts +++ b/spec/integ/crypto/megolm-backup.spec.ts @@ -45,6 +45,7 @@ import { KeyBackupInfo, KeyBackupSession } from "../../../src/crypto-api/keyback import { IKeyBackup } from "../../../src/crypto/backup"; import { flushPromises } from "../../test-utils/flushPromises"; import { defer, IDeferred } from "../../../src/utils"; +import { DecryptionFailureCode } from "../../../src/crypto-api"; const ROOM_ID = testData.TEST_ROOM_ID; @@ -242,8 +243,17 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("megolm-keys backup (%s)", (backe const room = aliceClient.getRoom(ROOM_ID)!; const event = room.getLiveTimeline().getEvents()[0]; - await advanceTimersUntil(awaitDecryption(event, { waitOnDecryptionFailure: true })); + // On the first decryption attempt, decryption fails. + await awaitDecryption(event); + expect(event.decryptionFailureReason).toEqual( + backend === "libolm" + ? DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID + : DecryptionFailureCode.HISTORICAL_MESSAGE_WORKING_BACKUP, + ); + + // Eventually, decryption succeeds. + await awaitDecryption(event, { waitOnDecryptionFailure: true }); expect(event.getContent()).toEqual(testData.CLEAR_EVENT.content); }); diff --git a/spec/unit/rust-crypto/PerSessionKeyBackupDownloader.spec.ts b/spec/unit/rust-crypto/PerSessionKeyBackupDownloader.spec.ts index 8b1b0f75c2c..b81e17e5e5d 100644 --- a/spec/unit/rust-crypto/PerSessionKeyBackupDownloader.spec.ts +++ b/spec/unit/rust-crypto/PerSessionKeyBackupDownloader.spec.ts @@ -90,7 +90,7 @@ describe("PerSessionKeyBackupDownloader", () => { mockRustBackupManager = { getActiveBackupVersion: jest.fn(), - requestKeyBackupVersion: jest.fn(), + getServerBackupInfo: jest.fn(), importBackedUpRoomKeys: jest.fn(), createBackupDecryptor: jest.fn().mockReturnValue(mockBackupDecryptor), on: jest.fn().mockImplementation((event, listener) => { @@ -135,7 +135,7 @@ describe("PerSessionKeyBackupDownloader", () => { decryptionKey: RustSdkCryptoJs.BackupDecryptionKey.fromBase64(TestData.BACKUP_DECRYPTION_KEY_BASE64), } as unknown as RustSdkCryptoJs.BackupKeys); - mockRustBackupManager.requestKeyBackupVersion.mockResolvedValue(TestData.SIGNED_BACKUP_DATA); + mockRustBackupManager.getServerBackupInfo.mockResolvedValue(TestData.SIGNED_BACKUP_DATA); }); it("Should download and import a missing key from backup", async () => { @@ -155,8 +155,11 @@ describe("PerSessionKeyBackupDownloader", () => { downloader.onDecryptionKeyMissingError(roomId, sessionId); + // `isKeyBackupDownloadConfigured` is false until the config is proven. + expect(downloader.isKeyBackupDownloadConfigured()).toBe(false); await expectAPICall; await awaitKeyImported.promise; + expect(downloader.isKeyBackupDownloadConfigured()).toBe(true); expect(mockRustBackupManager.createBackupDecryptor).toHaveBeenCalledTimes(1); }); @@ -313,6 +316,9 @@ describe("PerSessionKeyBackupDownloader", () => { expect(getConfigSpy).toHaveBeenCalledTimes(1); expect(getConfigSpy).toHaveReturnedWith(Promise.resolve(null)); + + // isKeyBackupDownloadConfigured remains false + expect(downloader.isKeyBackupDownloadConfigured()).toBe(false); }); it("Should not query server if backup not active", async () => { @@ -328,6 +334,9 @@ describe("PerSessionKeyBackupDownloader", () => { expect(getConfigSpy).toHaveBeenCalledTimes(1); expect(getConfigSpy).toHaveReturnedWith(Promise.resolve(null)); + + // isKeyBackupDownloadConfigured remains false + expect(downloader.isKeyBackupDownloadConfigured()).toBe(false); }); it("Should stop if backup key is not cached", async () => { @@ -344,6 +353,9 @@ describe("PerSessionKeyBackupDownloader", () => { expect(getConfigSpy).toHaveBeenCalledTimes(1); expect(getConfigSpy).toHaveReturnedWith(Promise.resolve(null)); + + // isKeyBackupDownloadConfigured remains false + expect(downloader.isKeyBackupDownloadConfigured()).toBe(false); }); it("Should stop if backup key cached as wrong version", async () => { @@ -363,6 +375,9 @@ describe("PerSessionKeyBackupDownloader", () => { expect(getConfigSpy).toHaveBeenCalledTimes(1); expect(getConfigSpy).toHaveReturnedWith(Promise.resolve(null)); + + // isKeyBackupDownloadConfigured remains false + expect(downloader.isKeyBackupDownloadConfigured()).toBe(false); }); it("Should stop if backup key version does not match the active one", async () => { @@ -382,13 +397,16 @@ describe("PerSessionKeyBackupDownloader", () => { expect(getConfigSpy).toHaveBeenCalledTimes(1); expect(getConfigSpy).toHaveReturnedWith(Promise.resolve(null)); + + // isKeyBackupDownloadConfigured remains false + expect(downloader.isKeyBackupDownloadConfigured()).toBe(false); }); }); describe("Given Backup state update", () => { it("After initial sync, when backup becomes trusted it should request keys for past requests", async () => { // there is a backup - mockRustBackupManager.requestKeyBackupVersion.mockResolvedValue(TestData.SIGNED_BACKUP_DATA); + mockRustBackupManager.getServerBackupInfo.mockResolvedValue(TestData.SIGNED_BACKUP_DATA); // but at this point it's not trusted and we don't have the key mockRustBackupManager.getActiveBackupVersion.mockResolvedValue(null); @@ -410,6 +428,7 @@ describe("PerSessionKeyBackupDownloader", () => { // @ts-ignore access to private property expect(downloader.hasConfigurationProblem).toEqual(true); + expect(downloader.isKeyBackupDownloadConfigured()).toBe(false); // Now the backup becomes trusted mockRustBackupManager.getActiveBackupVersion.mockResolvedValue(TestData.SIGNED_BACKUP_DATA.version!); @@ -423,6 +442,7 @@ describe("PerSessionKeyBackupDownloader", () => { mockEmitter.emit(CryptoEvent.KeyBackupStatus, true); await jest.runAllTimersAsync(); + expect(downloader.isKeyBackupDownloadConfigured()).toBe(true); await a0Imported; await a1Imported; @@ -434,7 +454,7 @@ describe("PerSessionKeyBackupDownloader", () => { describe("Error cases", () => { beforeEach(async () => { // there is a backup - mockRustBackupManager.requestKeyBackupVersion.mockResolvedValue(TestData.SIGNED_BACKUP_DATA); + mockRustBackupManager.getServerBackupInfo.mockResolvedValue(TestData.SIGNED_BACKUP_DATA); // It's trusted mockRustBackupManager.getActiveBackupVersion.mockResolvedValue(TestData.SIGNED_BACKUP_DATA.version!); // And we have the key in cache diff --git a/src/crypto-api.ts b/src/crypto-api.ts index 0f78bd76a1a..1c3a3a6356c 100644 --- a/src/crypto-api.ts +++ b/src/crypto-api.ts @@ -542,6 +542,24 @@ export enum DecryptionFailureCode { /** Message was encrypted with a Megolm session which has been shared with us, but in a later ratchet state. */ OLM_UNKNOWN_MESSAGE_INDEX = "OLM_UNKNOWN_MESSAGE_INDEX", + /** + * Message was sent before the current device was created; there is no key backup on the server, so this + * decryption failure is expected. + */ + HISTORICAL_MESSAGE_NO_KEY_BACKUP = "HISTORICAL_MESSAGE_NO_KEY_BACKUP", + + /** + * Message was sent before the current device was created; there was a key backup on the server, but we don't + * seem to have access to the backup. (Probably we don't have the right key.) + */ + HISTORICAL_MESSAGE_BACKUP_UNCONFIGURED = "HISTORICAL_MESSAGE_BACKUP_UNCONFIGURED", + + /** + * Message was sent before the current device was created; there was a (usable) key backup on the server, but we + * still can't decrypt. (Either the session isn't in the backup, or we just haven't gotten around to checking yet.) + */ + HISTORICAL_MESSAGE_WORKING_BACKUP = "HISTORICAL_MESSAGE_WORKING_BACKUP", + /** Unknown or unclassified error. */ UNKNOWN_ERROR = "UNKNOWN_ERROR", diff --git a/src/rust-crypto/PerSessionKeyBackupDownloader.ts b/src/rust-crypto/PerSessionKeyBackupDownloader.ts index c8283c65488..7642d52f9d9 100644 --- a/src/rust-crypto/PerSessionKeyBackupDownloader.ts +++ b/src/rust-crypto/PerSessionKeyBackupDownloader.ts @@ -17,7 +17,7 @@ limitations under the License. import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; import { OlmMachine } from "@matrix-org/matrix-sdk-crypto-wasm"; -import { Curve25519AuthData, KeyBackupSession } from "../crypto-api/keybackup"; +import { Curve25519AuthData, KeyBackupInfo, KeyBackupSession } from "../crypto-api/keybackup"; import { Logger } from "../logger"; import { ClientPrefix, IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api"; import { RustBackupManager } from "./backup"; @@ -76,7 +76,11 @@ type Configuration = { export class PerSessionKeyBackupDownloader { private stopped = false; - /** The version and decryption key to use with current backup if all set up correctly */ + /** + * The version and decryption key to use with current backup if all set up correctly. + * + * Will not be set unless `hasConfigurationProblem` is `false`. + */ private configuration: Configuration | null = null; /** We remember when a session was requested and not found in backup to avoid query again too soon. @@ -119,6 +123,24 @@ export class PerSessionKeyBackupDownloader { backupManager.on(CryptoEvent.KeyBackupDecryptionKeyCached, this.onBackupStatusChanged); } + /** + * Check if key download is successfully configured and active. + * + * @return `true` if key download is correctly configured and active; otherwise `false`. + */ + public isKeyBackupDownloadConfigured(): boolean { + return this.configuration !== null; + } + + /** + * Return the details of the latest backup on the server, when we last checked. + * + * This is just a convenience method to expose {@link RustBackupManager.getServerBackupInfo}. + */ + public async getServerBackupInfo(): Promise { + return await this.backupManager.getServerBackupInfo(); + } + /** * Called when a MissingRoomKey or UnknownMessageIndex decryption error is encountered. * @@ -410,7 +432,7 @@ export class PerSessionKeyBackupDownloader { private async internalCheckFromServer(): Promise { let currentServerVersion = null; try { - currentServerVersion = await this.backupManager.requestKeyBackupVersion(); + currentServerVersion = await this.backupManager.getServerBackupInfo(); } catch (e) { this.logger.debug(`Backup: error while checking server version: ${e}`); this.hasConfigurationProblem = true; diff --git a/src/rust-crypto/backup.ts b/src/rust-crypto/backup.ts index 0fb1640320b..5c9c5772e2b 100644 --- a/src/rust-crypto/backup.ts +++ b/src/rust-crypto/backup.ts @@ -58,6 +58,16 @@ interface KeyBackupCreationInfo { export class RustBackupManager extends TypedEventEmitter { /** Have we checked if there is a backup on the server which we can use */ private checkedForBackup = false; + + /** + * The latest backup version on the server, when we last checked. + * + * If there was no backup on the server, `null`. If our attempt to check resulted in an error, `undefined`. + * + * Note that the backup was not necessarily verified. + */ + private serverBackupInfo: KeyBackupInfo | null | undefined = undefined; + private activeBackupVersion: string | null = null; private stopped = false; @@ -89,6 +99,21 @@ export class RustBackupManager extends TypedEventEmitter { + // Do a validity check if we haven't already done one. The check is likely to fail if we don't yet have the + // backup keys -- but as a side-effect, it will populate `serverBackupInfo`. + await this.checkKeyBackupAndEnable(false); + return this.serverBackupInfo; + } + /** * Determine if a key backup can be trusted. * @@ -242,18 +267,21 @@ export class RustBackupManager extends TypedEventEmitter { logger.log("Checking key backup status..."); - let backupInfo: KeyBackupInfo | null = null; + let backupInfo: KeyBackupInfo | null | undefined; try { backupInfo = await this.requestKeyBackupVersion(); } catch (e) { logger.warn("Error checking for active key backup", e); + this.serverBackupInfo = undefined; return null; } this.checkedForBackup = true; if (backupInfo && !backupInfo.version) { logger.warn("active backup lacks a useful 'version'; ignoring it"); + backupInfo = undefined; } + this.serverBackupInfo = backupInfo; const activeVersion = await this.getActiveBackupVersion(); @@ -462,12 +490,13 @@ export class RustBackupManager extends TypedEventEmitter { + private async requestKeyBackupVersion(): Promise { return await requestKeyBackupVersion(this.http); } diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 713c113866a..ee00aba4c88 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -1707,7 +1707,7 @@ class EventDecryptor { }; } catch (err) { if (err instanceof RustSdkCryptoJs.MegolmDecryptionError) { - this.onMegolmDecryptionError(event, err); + this.onMegolmDecryptionError(event, err, await this.perSessionBackupDownloader.getServerBackupInfo()); } else { throw new DecryptionError(DecryptionFailureCode.UNKNOWN_ERROR, "Unknown error"); } @@ -1718,9 +1718,19 @@ class EventDecryptor { * Handle a `MegolmDecryptionError` returned by the rust SDK. * * Fires off a request to the `perSessionBackupDownloader`, if appropriate, and then throws a `DecryptionError`. + * + * @param event - The event which could not be decrypted. + * @param err - The error from the Rust SDK. + * @param serverBackupInfo - Details about the current backup from the server. `null` if there is no backup. + * `undefined` if our attempt to check failed. */ - private onMegolmDecryptionError(event: MatrixEvent, err: RustSdkCryptoJs.MegolmDecryptionError): never { + private onMegolmDecryptionError( + event: MatrixEvent, + err: RustSdkCryptoJs.MegolmDecryptionError, + serverBackupInfo: KeyBackupInfo | null | undefined, + ): never { const content = event.getWireContent(); + const errorDetails = { session: content.sender_key + "|" + content.session_id }; // If the error looks like it might be recoverable from backup, queue up a request to try that. if ( @@ -1728,9 +1738,31 @@ class EventDecryptor { err.code === RustSdkCryptoJs.DecryptionErrorCode.UnknownMessageIndex ) { this.perSessionBackupDownloader.onDecryptionKeyMissingError(event.getRoomId()!, content.session_id!); + + // If the event was sent before this device was created, we use some different error codes. + if (event.getTs() <= this.olmMachine.deviceCreationTimeMs) { + if (serverBackupInfo === null) { + throw new DecryptionError( + DecryptionFailureCode.HISTORICAL_MESSAGE_NO_KEY_BACKUP, + "This message was sent before this device logged in, and there is no key backup on the server.", + errorDetails, + ); + } else if (!this.perSessionBackupDownloader.isKeyBackupDownloadConfigured()) { + throw new DecryptionError( + DecryptionFailureCode.HISTORICAL_MESSAGE_BACKUP_UNCONFIGURED, + "This message was sent before this device logged in, and key backup is not working.", + errorDetails, + ); + } else { + throw new DecryptionError( + DecryptionFailureCode.HISTORICAL_MESSAGE_WORKING_BACKUP, + "This message was sent before this device logged in. Key backup is working, but we still do not (yet) have the key.", + errorDetails, + ); + } + } } - const errorDetails = { session: content.sender_key + "|" + content.session_id }; switch (err.code) { case RustSdkCryptoJs.DecryptionErrorCode.MissingRoomKey: throw new DecryptionError( From 4fc6ba884e166cccf7c0af18e01e5f8c7056fa6b Mon Sep 17 00:00:00 2001 From: Timo <16718859+toger5@users.noreply.github.com> Date: Wed, 17 Apr 2024 12:28:40 +0200 Subject: [PATCH 183/595] add comment to make clear that RoomStateEvent.Events does not update related objects in the js-sdk (#4152) Signed-off-by: Timo K --- src/models/room-state.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/models/room-state.ts b/src/models/room-state.ts index 745b2a5aa44..b6f4d074425 100644 --- a/src/models/room-state.ts +++ b/src/models/room-state.ts @@ -78,6 +78,8 @@ export enum RoomStateEvent { export type RoomStateEventHandlerMap = { /** * Fires whenever the event dictionary in room state is updated. + * This does not guarantee that any related objects (like RoomMember) have been updated. + * Use RoomStateEvent.Update for that. * @param event - The matrix event which caused this event to fire. * @param state - The room state whose RoomState.events dictionary * was updated. From d22a39f5d7b40285ae6f06cdae381b3d4a4d3eb6 Mon Sep 17 00:00:00 2001 From: Valere Date: Wed, 17 Apr 2024 15:36:52 +0200 Subject: [PATCH 184/595] Element R: fix `isCrossSigningReady` not checking identity trust (#4156) * Fix inconsistency between rust and legacy * Add tests * Review: better comment Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * review: Better doc Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Simplify test data and some comments --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- spec/integ/crypto/cross-signing.spec.ts | 61 +++++++++++++++++++++++++ src/rust-crypto/rust-crypto.ts | 10 ++-- 2 files changed, 67 insertions(+), 4 deletions(-) diff --git a/spec/integ/crypto/cross-signing.spec.ts b/spec/integ/crypto/cross-signing.spec.ts index 8a08eebdbc5..b81bf6f00f4 100644 --- a/spec/integ/crypto/cross-signing.spec.ts +++ b/spec/integ/crypto/cross-signing.spec.ts @@ -347,6 +347,67 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("cross-signing (%s)", (backend: s expect(isCrossSigningReady).toBeTruthy(); }); + + it("should return false if identity is not trusted, even if the secrets are in 4S", async () => { + e2eKeyResponder.addCrossSigningData(SIGNED_CROSS_SIGNING_KEYS_DATA); + + // Complete initial sync, to get the 4S account_data events stored + mockInitialApiRequests(aliceClient.getHomeserverUrl()); + + // For this test we need to have a well-formed 4S setup. + const mockSecretInfo = { + encrypted: { + // Don't care about the actual values here, just need to be present for validation + KeyId: { + iv: "IVIVIVIVIVIVIV", + ciphertext: "CIPHERTEXTB64", + mac: "MACMACMAC", + }, + }, + }; + syncResponder.sendOrQueueSyncResponse({ + next_batch: 1, + account_data: { + events: [ + { + type: "m.secret_storage.key.KeyId", + content: { + algorithm: "m.secret_storage.v1.aes-hmac-sha2", + // iv and mac not relevant for this test + }, + }, + { + type: "m.secret_storage.default_key", + content: { + key: "KeyId", + }, + }, + { + type: "m.cross_signing.master", + content: mockSecretInfo, + }, + { + type: "m.cross_signing.user_signing", + content: mockSecretInfo, + }, + { + type: "m.cross_signing.self_signing", + content: mockSecretInfo, + }, + ], + }, + }); + await aliceClient.startClient(); + await syncPromise(aliceClient); + + // Sanity: ensure that the secrets are in 4S + const status = await aliceClient.getCrypto()!.getCrossSigningStatus(); + expect(status.privateKeysInSecretStorage).toBeTruthy(); + + const isCrossSigningReady = await aliceClient.getCrypto()!.isCrossSigningReady(); + + expect(isCrossSigningReady).toBeFalsy(); + }); }); describe("getCrossSigningKeyId", () => { diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index ee00aba4c88..fd06d82018b 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -610,15 +610,17 @@ export class RustCrypto extends TypedEventEmitter { - const { publicKeysOnDevice, privateKeysInSecretStorage, privateKeysCachedLocally } = - await this.getCrossSigningStatus(); + const { privateKeysInSecretStorage, privateKeysCachedLocally } = await this.getCrossSigningStatus(); const hasKeysInCache = Boolean(privateKeysCachedLocally.masterKey) && Boolean(privateKeysCachedLocally.selfSigningKey) && Boolean(privateKeysCachedLocally.userSigningKey); - // The cross signing is ready if the public and private keys are available - return publicKeysOnDevice && (hasKeysInCache || privateKeysInSecretStorage); + const identity = await this.getOwnIdentity(); + + // Cross-signing is ready if the public identity is trusted, and the private keys + // are either cached, or accessible via secret-storage. + return !!identity?.isVerified() && (hasKeysInCache || privateKeysInSecretStorage); } /** From 6fedda91f9d24e202c36c2b7a8ac5dda3ffb205b Mon Sep 17 00:00:00 2001 From: Johannes Marbach Date: Mon, 22 Apr 2024 10:12:54 +0200 Subject: [PATCH 185/595] Use encoded URI components when storing sessions in memory crypto store (#4170) * Use encoded URI components when storing sessions in memory crypto store Signed-off-by: Johannes Marbach * Add URI en-/decoding to missing methods * Extract convenience functions --------- Signed-off-by: Johannes Marbach --- src/crypto/store/memory-crypto-store.ts | 40 ++++++++++++++----------- 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/src/crypto/store/memory-crypto-store.ts b/src/crypto/store/memory-crypto-store.ts index de3dc3adaf9..32d83f24d3e 100644 --- a/src/crypto/store/memory-crypto-store.ts +++ b/src/crypto/store/memory-crypto-store.ts @@ -37,6 +37,17 @@ import { IOlmDevice } from "../algorithms/megolm"; import { IRoomEncryption } from "../RoomList"; import { InboundGroupSessionData } from "../OlmDevice"; +function encodeSessionKey(senderCurve25519Key: string, sessionId: string): string { + return encodeURIComponent(senderCurve25519Key) + "/" + encodeURIComponent(sessionId); +} + +function decodeSessionKey(key: string): { senderKey: string; sessionId: string } { + const keyParts = key.split("/"); + const senderKey = decodeURIComponent(keyParts[0]); + const sessionId = decodeURIComponent(keyParts[1]); + return { senderKey, sessionId }; +} + /** * Internal module. in-memory storage for e2e. */ @@ -481,20 +492,14 @@ export class MemoryCryptoStore implements CryptoStore { txn: unknown, func: (groupSession: InboundGroupSessionData | null, groupSessionWithheld: IWithheld | null) => void, ): void { - const k = senderCurve25519Key + "/" + sessionId; + const k = encodeSessionKey(senderCurve25519Key, sessionId); func(this.inboundGroupSessions[k] || null, this.inboundGroupSessionsWithheld[k] || null); } public getAllEndToEndInboundGroupSessions(txn: unknown, func: (session: ISession | null) => void): void { for (const key of Object.keys(this.inboundGroupSessions)) { - // we can't use split, as the components we are trying to split out - // might themselves contain '/' characters. We rely on the - // senderKey being a (32-byte) curve25519 key, base64-encoded - // (hence 43 characters long). - func({ - senderKey: key.slice(0, 43), - sessionId: key.slice(44), + ...decodeSessionKey(key), sessionData: this.inboundGroupSessions[key], }); } @@ -507,7 +512,7 @@ export class MemoryCryptoStore implements CryptoStore { sessionData: InboundGroupSessionData, txn: unknown, ): void { - const k = senderCurve25519Key + "/" + sessionId; + const k = encodeSessionKey(senderCurve25519Key, sessionId); if (this.inboundGroupSessions[k] === undefined) { this.inboundGroupSessions[k] = sessionData; } @@ -519,7 +524,8 @@ export class MemoryCryptoStore implements CryptoStore { sessionData: InboundGroupSessionData, txn: unknown, ): void { - this.inboundGroupSessions[senderCurve25519Key + "/" + sessionId] = sessionData; + const k = encodeSessionKey(senderCurve25519Key, sessionId); + this.inboundGroupSessions[k] = sessionData; } public storeEndToEndInboundGroupSessionWithheld( @@ -528,7 +534,7 @@ export class MemoryCryptoStore implements CryptoStore { sessionData: IWithheld, txn: unknown, ): void { - const k = senderCurve25519Key + "/" + sessionId; + const k = encodeSessionKey(senderCurve25519Key, sessionId); this.inboundGroupSessionsWithheld[k] = sessionData; } @@ -554,8 +560,7 @@ export class MemoryCryptoStore implements CryptoStore { const result: SessionExtended[] = []; for (const [key, session] of Object.entries(this.inboundGroupSessions)) { result.push({ - senderKey: key.slice(0, 43), - sessionId: key.slice(44), + ...decodeSessionKey(key), sessionData: session, needsBackup: key in this.sessionsNeedingBackup, }); @@ -584,7 +589,7 @@ export class MemoryCryptoStore implements CryptoStore { sessions: { senderKey: string; sessionId: string }[], ): Promise { for (const { senderKey, sessionId } of sessions) { - const k = senderKey + "/" + sessionId; + const k = encodeSessionKey(senderKey, sessionId); delete this.inboundGroupSessions[k]; } } @@ -614,8 +619,7 @@ export class MemoryCryptoStore implements CryptoStore { for (const session in this.sessionsNeedingBackup) { if (this.inboundGroupSessions[session]) { sessions.push({ - senderKey: session.slice(0, 43), - sessionId: session.slice(44), + ...decodeSessionKey(session), sessionData: this.inboundGroupSessions[session], }); if (limit && session.length >= limit) { @@ -632,7 +636,7 @@ export class MemoryCryptoStore implements CryptoStore { public unmarkSessionsNeedingBackup(sessions: ISession[]): Promise { for (const session of sessions) { - const sessionKey = session.senderKey + "/" + session.sessionId; + const sessionKey = encodeSessionKey(session.senderKey, session.sessionId); delete this.sessionsNeedingBackup[sessionKey]; } return Promise.resolve(); @@ -640,7 +644,7 @@ export class MemoryCryptoStore implements CryptoStore { public markSessionsNeedingBackup(sessions: ISession[]): Promise { for (const session of sessions) { - const sessionKey = session.senderKey + "/" + session.sessionId; + const sessionKey = encodeSessionKey(session.senderKey, session.sessionId); this.sessionsNeedingBackup[sessionKey] = true; } return Promise.resolve(); From e874468ba3e84819cf4b342d2e66af67ab4cf804 Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Tue, 23 Apr 2024 02:39:10 +0900 Subject: [PATCH 186/595] Improve compliance with MSC3266 (#4155) * Fix fields of MSC 3266 summary object Also remove redundant room_type field which is inherited from elsewhere * Export the MSC 3266 summary type * Use proper endpoint for MSC 3266 summary lookup Use the endpoint recommended by the MSC * Rename newly-exported symbol to not start with I * Use "export type" * Lint * Fix type of "encryption" field * Add TSDoc documentation * Add basic integration test for getRoomSummary * Lint * Use fallback endpoint for MSC3266 * Improve test coverage * Lint * Refactor async catch to satisfy linter * Increase test coverage --- spec/integ/matrix-client-methods.spec.ts | 107 ++++++++++++++++++++++- src/client.ts | 40 +++++++-- src/matrix.ts | 1 + 3 files changed, 139 insertions(+), 9 deletions(-) diff --git a/spec/integ/matrix-client-methods.spec.ts b/spec/integ/matrix-client-methods.spec.ts index ddfdcf350e1..a66d41b3dbd 100644 --- a/spec/integ/matrix-client-methods.spec.ts +++ b/spec/integ/matrix-client-methods.spec.ts @@ -19,7 +19,16 @@ import { Mocked } from "jest-mock"; import * as utils from "../test-utils/test-utils"; import { CRYPTO_ENABLED, IStoredClientOpts, MatrixClient } from "../../src/client"; import { MatrixEvent } from "../../src/models/event"; -import { Filter, KnockRoomOpts, MemoryStore, Method, Room, SERVICE_TYPES } from "../../src/matrix"; +import { + Filter, + JoinRule, + KnockRoomOpts, + MemoryStore, + Method, + Room, + RoomSummary, + SERVICE_TYPES, +} from "../../src/matrix"; import { TestClient } from "../TestClient"; import { THREAD_RELATION_TYPE } from "../../src/models/thread"; import { IFilterDefinition } from "../../src/filter"; @@ -1710,6 +1719,102 @@ describe("MatrixClient", function () { await Promise.all([client.unbindThreePid("email", "alice@server.com"), httpBackend.flushAllExpected()]); }); }); + + describe("getRoomSummary", () => { + const roomId = "!foo:bar"; + const encodedRoomId = encodeURIComponent(roomId); + + const roomSummary: RoomSummary = { + "room_id": roomId, + "name": "My Room", + "avatar_url": "", + "topic": "My room topic", + "world_readable": false, + "guest_can_join": false, + "num_joined_members": 1, + "room_type": "", + "join_rule": JoinRule.Public, + "membership": "leave", + "im.nheko.summary.room_version": "6", + "im.nheko.summary.encryption": "algo", + }; + + const prefix = "/_matrix/client/unstable/im.nheko.summary/"; + const suffix = `summary/${encodedRoomId}`; + const deprecatedSuffix = `rooms/${encodedRoomId}/summary`; + + const errorUnrecogStatus = 404; + const errorUnrecogBody = { + errcode: "M_UNRECOGNIZED", + error: "Unsupported endpoint", + }; + + const errorBadreqStatus = 400; + const errorBadreqBody = { + errcode: "M_UNKNOWN", + error: "Invalid request", + }; + + it("should respond with a valid room summary object", () => { + httpBackend.when("GET", prefix + suffix).respond(200, roomSummary); + + const prom = client.getRoomSummary(roomId).then((response) => { + expect(response).toEqual(roomSummary); + }); + + httpBackend.flush(""); + return prom; + }); + + it("should allow fallback to the deprecated endpoint", () => { + httpBackend.when("GET", prefix + suffix).respond(errorUnrecogStatus, errorUnrecogBody); + httpBackend.when("GET", prefix + deprecatedSuffix).respond(200, roomSummary); + + const prom = client.getRoomSummary(roomId).then((response) => { + expect(response).toEqual(roomSummary); + }); + + httpBackend.flush(""); + return prom; + }); + + it("should respond to unsupported path with error", () => { + httpBackend.when("GET", prefix + suffix).respond(errorUnrecogStatus, errorUnrecogBody); + httpBackend.when("GET", prefix + deprecatedSuffix).respond(errorUnrecogStatus, errorUnrecogBody); + + const prom = client.getRoomSummary(roomId).then( + function (response) { + throw Error("request not failed"); + }, + function (error) { + expect(error.httpStatus).toEqual(errorUnrecogStatus); + expect(error.errcode).toEqual(errorUnrecogBody.errcode); + expect(error.message).toEqual(`MatrixError: [${errorUnrecogStatus}] ${errorUnrecogBody.error}`); + }, + ); + + httpBackend.flush(""); + return prom; + }); + + it("should respond to invalid path arguments with error", () => { + httpBackend.when("GET", prefix).respond(errorBadreqStatus, errorBadreqBody); + + const prom = client.getRoomSummary("notAroom").then( + function (response) { + throw Error("request not failed"); + }, + function (error) { + expect(error.httpStatus).toEqual(errorBadreqStatus); + expect(error.errcode).toEqual(errorBadreqBody.errcode); + expect(error.message).toEqual(`MatrixError: [${errorBadreqStatus}] ${errorBadreqBody.error}`); + }, + ); + + httpBackend.flush(""); + return prom; + }); + }); }); function withThreadId(event: MatrixEvent, newThreadId: string): MatrixEvent { diff --git a/src/client.ts b/src/client.ts index 6de5cd5d729..64e6855ea79 100644 --- a/src/client.ts +++ b/src/client.ts @@ -865,10 +865,24 @@ interface IThirdPartyUser { fields: object; } -interface IRoomSummary extends Omit { - room_type?: RoomType; - membership?: Membership; - is_encrypted: boolean; +/** + * The summary of a room as defined by an initial version of MSC3266 and implemented in Synapse + * Proposed at https://github.com/matrix-org/matrix-doc/pull/3266 + */ +export interface RoomSummary extends Omit { + /** + * The current membership of this user in the room. + * Usually "leave" if the room is fetched over federation. + */ + "membership"?: Membership; + /** + * Version of the room. + */ + "im.nheko.summary.room_version"?: string; + /** + * The encryption algorithm used for this room, if the room is encrypted. + */ + "im.nheko.summary.encryption"?: string; } interface IRoomKeysResponse { @@ -9786,11 +9800,21 @@ export class MatrixClient extends TypedEventEmitter { - const path = utils.encodeUri("/rooms/$roomid/summary", { $roomid: roomIdOrAlias }); - return this.http.authedRequest(Method.Get, path, { via }, undefined, { + public async getRoomSummary(roomIdOrAlias: string, via?: string[]): Promise { + const paramOpts = { prefix: "/_matrix/client/unstable/im.nheko.summary", - }); + }; + try { + const path = utils.encodeUri("/summary/$roomid", { $roomid: roomIdOrAlias }); + return await this.http.authedRequest(Method.Get, path, { via }, undefined, paramOpts); + } catch (e) { + if (e instanceof MatrixError && e.errcode === "M_UNRECOGNIZED") { + const path = utils.encodeUri("/rooms/$roomid/summary", { $roomid: roomIdOrAlias }); + return await this.http.authedRequest(Method.Get, path, { via }, undefined, paramOpts); + } else { + throw e; + } + } } /** diff --git a/src/matrix.ts b/src/matrix.ts index 4e12c9feba4..ed71f7dfcac 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -77,6 +77,7 @@ export * from "./@types/extensible_events"; export * from "./@types/IIdentityServerProvider"; export * from "./models/room-summary"; export * from "./models/event-status"; +export type { RoomSummary } from "./client"; export * as ContentHelpers from "./content-helpers"; export * as SecretStorage from "./secret-storage"; export type { ICryptoCallbacks } from "./crypto"; // used to be located here From c09da9a23f272b3646352931f0b0c17954083dbf Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Mon, 22 Apr 2024 13:44:01 -0600 Subject: [PATCH 187/595] Modernize window.crypto access constants (#4169) * Force service worker-safe crypto when operating under a service worker * Fix tests/unsafe execution * Further fix tests? * Docs would probably be good * Define a type guard function https://www.typescriptlang.org/docs/handbook/advanced-types.html#user-defined-type-guards * Use `@types` repo * Maybe don't modify tsconfig, I guess * Revert "Use `@types` repo" This reverts commit db46bcf1db4b94fbc7e0c97a20d5d800fcb2768b. * Use a different type for Window * Simplify the crypto accessors --- src/crypto/crypto.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/crypto/crypto.ts b/src/crypto/crypto.ts index c78970708f2..170dabb0937 100644 --- a/src/crypto/crypto.ts +++ b/src/crypto/crypto.ts @@ -16,9 +16,9 @@ limitations under the License. import { logger } from "../logger"; -export let crypto = globalThis.window?.crypto; -export let subtleCrypto = globalThis.window?.crypto?.subtle ?? global.window?.crypto?.webkitSubtle; -export let TextEncoder = globalThis.window?.TextEncoder; +export let crypto = globalThis.crypto; +export let subtleCrypto = crypto?.subtle ?? crypto?.webkitSubtle; // TODO: Stop using webkitSubtle fallback +export let TextEncoder = globalThis.TextEncoder; /* eslint-disable @typescript-eslint/no-var-requires */ if (!crypto) { From bc03950f8a1bbc2900c5c4198430c040474bd144 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 23 Apr 2024 12:33:56 +0000 Subject: [PATCH 188/595] v32.1.0 --- CHANGELOG.md | 13 +++++++++++++ package.json | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9e1405e3c4c..df1a62a3193 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,16 @@ +Changes in [32.1.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v32.1.0) (2024-04-23) +================================================================================================== +## ✨ Features + +* Add support for device dehydration v2 (Element R) ([#4062](https://github.com/matrix-org/matrix-js-sdk/pull/4062)). Contributed by @uhoreg. +* OIDC improvements in prep of OIDC-QR reciprocation ([#4149](https://github.com/matrix-org/matrix-js-sdk/pull/4149)). Contributed by @t3chguy. + +## 🐛 Bug Fixes + +* Validate backup private key before migrating it ([#4114](https://github.com/matrix-org/matrix-js-sdk/pull/4114)). Contributed by @BillCarsonFr. +* ElementR| Retry query backup until it works during migration to avoid spurious correption error popup ([#4113](https://github.com/matrix-org/matrix-js-sdk/pull/4113)). Contributed by @BillCarsonFr. + + Changes in [32.0.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v32.0.0) (2024-04-09) ================================================================================================== ## 🚨 BREAKING CHANGES diff --git a/package.json b/package.json index aeec52593d7..9f3c690bc6f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "32.1.0-rc.0", + "version": "32.1.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 1da5e8f56a29afef0197dd4c3553d2ee4dfbd576 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 23 Apr 2024 12:34:26 +0000 Subject: [PATCH 189/595] Resetting package fields for development --- package.json | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index 2a3661d5d7e..343b0165ba0 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -115,7 +115,7 @@ "jest-environment-jsdom": "^29.0.0", "jest-localstorage-mock": "^2.4.6", "jest-mock": "^29.0.0", - "knip": "^4.0.1", + "knip": "^5.0.0", "lint-staged": "^15.0.2", "matrix-mock-request": "^2.5.0", "node-fetch": "^2.7.0", @@ -126,15 +126,11 @@ "typedoc-plugin-coverage": "^3.0.0", "typedoc-plugin-mdn-links": "^3.0.3", "typedoc-plugin-missing-exports": "^2.0.0", - "typescript": "^5.3.3", - "node-fetch": "^2.7.0", - "knip": "^5.0.0", - "@peculiar/webcrypto": "^1.4.5" + "typescript": "^5.3.3" }, "@casualbot/jest-sonar-reporter": { "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From 65d858f9a37e4f63ce3fe259c95d69013b968cbe Mon Sep 17 00:00:00 2001 From: Valere Date: Fri, 26 Apr 2024 14:59:17 +0200 Subject: [PATCH 190/595] Fix rust migration when ssss secret not encrypted (#4168) --- spec/unit/rust-crypto/rust-crypto.spec.ts | 50 +++++++++++++++++++++++ src/rust-crypto/libolm_migration.ts | 24 ++++++----- 2 files changed, 63 insertions(+), 11 deletions(-) diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index fef825582aa..1a1ff5525fc 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -304,6 +304,56 @@ describe("initRustCrypto", () => { } }, 10000); + it("migrates data from a legacy crypto store when secret are not encrypted", async () => { + const PICKLE_KEY = "pickle1234"; + const legacyStore = new MemoryCryptoStore(); + + // It's possible for old sessions to directly store the secrets as raw UInt8Array, + // so we need to support that in the migration code. + // See https://github.com/matrix-org/matrix-js-sdk/commit/c81f11df0afd4d0da3b088892745ae2f8ba1c4a7 + async function storeSecretKeyInClear(type: string, key: Uint8Array, store: CryptoStore) { + // @ts-ignore The API to store raw UInt8Array does not exist anymore, so we need that for this test. + store.privateKeys[type as keyof SecretStorePrivateKeys] = key; + } + + // Populate the legacy store with some test data + const storeSecretKey = (type: string, key: string) => + storeSecretKeyInClear(type, new TextEncoder().encode(key), legacyStore); + + await legacyStore.storeAccount({}, "not a real account"); + await storeSecretKey("master", "master key"); + await storeSecretKey("self_signing", "ssk"); + await storeSecretKey("user_signing", "usk"); + + fetchMock.get("path:/_matrix/client/v3/room_keys/version", 404); + + function legacyMigrationProgressListener(progress: number, total: number): void { + logger.log(`migrated ${progress} of ${total}`); + } + + await initRustCrypto({ + logger, + http: makeMatrixHttpApi(), + userId: TEST_USER, + deviceId: TEST_DEVICE_ID, + secretStorage: {} as ServerSideSecretStorage, + cryptoCallbacks: {} as CryptoCallbacks, + storePrefix: "storePrefix", + storePassphrase: "storePassphrase", + legacyCryptoStore: legacyStore, + legacyPickleKey: PICKLE_KEY, + legacyMigrationProgressListener, + }); + + const data = mocked(Migration.migrateBaseData).mock.calls[0][0]; + expect(data.pickledAccount).toEqual("not a real account"); + expect(data.userId!.toString()).toEqual(TEST_USER); + expect(data.deviceId!.toString()).toEqual(TEST_DEVICE_ID); + expect(atob(data.privateCrossSigningMasterKey!)).toEqual("master key"); + expect(atob(data.privateCrossSigningUserSigningKey!)).toEqual("usk"); + expect(atob(data.privateCrossSigningSelfSigningKey!)).toEqual("ssk"); + }); + it("handles megolm sessions with no `keysClaimed`", async () => { const legacyStore = new MemoryCryptoStore(); legacyStore.storeAccount({}, "not a real account"); diff --git a/src/rust-crypto/libolm_migration.ts b/src/rust-crypto/libolm_migration.ts index ef9e6697a14..2738f88f6c8 100644 --- a/src/rust-crypto/libolm_migration.ts +++ b/src/rust-crypto/libolm_migration.ts @@ -27,6 +27,7 @@ import { CrossSigningKeyInfo, Curve25519AuthData } from "../crypto-api"; import { RustCrypto } from "./rust-crypto"; import { KeyBackupInfo } from "../crypto-api/keybackup"; import { sleep } from "../utils"; +import { encodeBase64 } from "../base64"; /** * Determine if any data needs migrating from the legacy store, and do so. @@ -400,19 +401,20 @@ async function getAndDecryptCachedSecretKey( legacyPickleKey: Uint8Array, name: string, ): Promise { - let encodedKey: IEncryptedPayload | null = null; - - await legacyStore.doTxn("readonly", "account", (txn) => { - legacyStore.getSecretStorePrivateKey( - txn, - (k) => { - encodedKey = k as IEncryptedPayload | null; - }, - name as keyof SecretStorePrivateKeys, - ); + const key = await new Promise((resolve) => { + legacyStore.doTxn("readonly", [IndexedDBCryptoStore.STORE_ACCOUNT], (txn) => { + legacyStore.getSecretStorePrivateKey(txn, resolve, name as keyof SecretStorePrivateKeys); + }); }); - return encodedKey === null ? undefined : await decryptAES(encodedKey, legacyPickleKey, name); + if (key && key.ciphertext && key.iv && key.mac) { + return await decryptAES(key as IEncryptedPayload, legacyPickleKey, name); + } else if (key instanceof Uint8Array) { + // This is a legacy backward compatibility case where the key was stored in clear. + return encodeBase64(key); + } else { + return undefined; + } } /** From 64505de36b1cd7d86a82779bd9d382201842c1c7 Mon Sep 17 00:00:00 2001 From: Hubert Chathi Date: Fri, 26 Apr 2024 09:38:10 -0400 Subject: [PATCH 191/595] Use a different error code for UTDs when user was not in the room (#4172) * use a different error code for UTDs when user was not in the room * if user is invited, treat it as unexpected UTD --- spec/integ/crypto/crypto.spec.ts | 67 +++++++++++++++++++++++++++++++- src/@types/event.ts | 7 ++++ src/crypto-api.ts | 5 +++ src/models/event.ts | 18 +++++++++ src/rust-crypto/rust-crypto.ts | 12 ++++++ 5 files changed, 108 insertions(+), 1 deletion(-) diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 1c9ebb12781..50b5f4dea05 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -101,6 +101,7 @@ import { } from "./olm-utils"; import { ToDevicePayload } from "../../../src/models/ToDeviceMessage"; import { AccountDataAccumulator } from "../../test-utils/AccountDataAccumulator"; +import { UNSIGNED_MEMBERSHIP_FIELD } from "../../../src/@types/event"; import { KnownMembership } from "../../../src/@types/membership"; afterEach(() => { @@ -533,7 +534,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, }); describe("Historical events", () => { - async function sendEventAndAwaitDecryption(): Promise { + async function sendEventAndAwaitDecryption(props: Partial = {}): Promise { // A promise which resolves, with the MatrixEvent which wraps the event, once the decryption fails. const awaitDecryption = emitPromise(aliceClient, MatrixEventEvent.Decrypted); @@ -541,6 +542,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, const encryptedEvent = { ...testData.ENCRYPTED_EVENT, origin_server_ts: Date.now() - 24 * 3600 * 1000, + ...props, }; const syncResponse = { @@ -611,6 +613,69 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, const ev = await sendEventAndAwaitDecryption(); expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.HISTORICAL_MESSAGE_WORKING_BACKUP); }); + + newBackendOnly("fails with NOT_JOINED if user is not member of room", async () => { + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { errcode: "M_NOT_FOUND", error: "No current backup version." }, + }); + expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); + await startClientAndAwaitFirstSync(); + + const ev = await sendEventAndAwaitDecryption({ + unsigned: { + [UNSIGNED_MEMBERSHIP_FIELD.name]: "leave", + }, + }); + expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.HISTORICAL_MESSAGE_USER_NOT_JOINED); + }); + + newBackendOnly( + "fails with another error when the server reports user was a member of the room", + async () => { + // This tests that when the server reports that the user + // was invited at the time the event was sent, then we + // don't get a HISTORICAL_MESSAGE_USER_NOT_JOINED error, + // and instead get some other error, since the user should + // have gotten the key for the event. + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { errcode: "M_NOT_FOUND", error: "No current backup version." }, + }); + expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); + await startClientAndAwaitFirstSync(); + + const ev = await sendEventAndAwaitDecryption({ + unsigned: { + [UNSIGNED_MEMBERSHIP_FIELD.name]: "invite", + }, + }); + expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.HISTORICAL_MESSAGE_NO_KEY_BACKUP); + }, + ); + + newBackendOnly( + "fails with another error when the server reports user was a member of the room", + async () => { + // This tests that when the server reports the user's + // membership, and reports that the user was joined, then we + // don't get a HISTORICAL_MESSAGE_USER_NOT_JOINED error, and + // instead get some other error. + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { errcode: "M_NOT_FOUND", error: "No current backup version." }, + }); + expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); + await startClientAndAwaitFirstSync(); + + const ev = await sendEventAndAwaitDecryption({ + unsigned: { + [UNSIGNED_MEMBERSHIP_FIELD.name]: "join", + }, + }); + expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.HISTORICAL_MESSAGE_NO_KEY_BACKUP); + }, + ); }); it("Decryption fails with Unable to decrypt for other errors", async () => { diff --git a/src/@types/event.ts b/src/@types/event.ts index 0a144a352df..04f1e969c11 100644 --- a/src/@types/event.ts +++ b/src/@types/event.ts @@ -298,6 +298,13 @@ export const LOCAL_NOTIFICATION_SETTINGS_PREFIX = new UnstableValue( */ export const UNSIGNED_THREAD_ID_FIELD = new UnstableValue("thread_id", "org.matrix.msc4023.thread_id"); +/** + * https://github.com/matrix-org/matrix-spec-proposals/pull/4115 + * + * @experimental + */ +export const UNSIGNED_MEMBERSHIP_FIELD = new UnstableValue("membership", "io.element.msc4115.membership"); + /** * @deprecated in favour of {@link EncryptedFile} */ diff --git a/src/crypto-api.ts b/src/crypto-api.ts index 1c3a3a6356c..7dfdfbfcf08 100644 --- a/src/crypto-api.ts +++ b/src/crypto-api.ts @@ -560,6 +560,11 @@ export enum DecryptionFailureCode { */ HISTORICAL_MESSAGE_WORKING_BACKUP = "HISTORICAL_MESSAGE_WORKING_BACKUP", + /** + * Message was sent when the user was not a member of the room. + */ + HISTORICAL_MESSAGE_USER_NOT_JOINED = "HISTORICAL_MESSAGE_USER_NOT_JOINED", + /** Unknown or unclassified error. */ UNKNOWN_ERROR = "UNKNOWN_ERROR", diff --git a/src/models/event.ts b/src/models/event.ts index 7c2725cda02..3e5df8fbf7c 100644 --- a/src/models/event.ts +++ b/src/models/event.ts @@ -31,6 +31,7 @@ import { RelationType, ToDeviceMessageId, UNSIGNED_THREAD_ID_FIELD, + UNSIGNED_MEMBERSHIP_FIELD, } from "../@types/event"; import { Crypto } from "../crypto"; import { deepSortedObjectEntries, internaliseString } from "../utils"; @@ -76,6 +77,7 @@ export interface IUnsigned { "invite_room_state"?: StrippedState[]; "m.relations"?: Record; // No common pattern for aggregated relations [UNSIGNED_THREAD_ID_FIELD.name]?: string; + [UNSIGNED_MEMBERSHIP_FIELD.name]?: Membership | string; } export interface IThreadBundledRelationship { @@ -721,6 +723,22 @@ export class MatrixEvent extends TypedEventEmitter Date: Mon, 29 Apr 2024 08:49:00 +0100 Subject: [PATCH 192/595] Simplify Playwright CI (#4178) --- .../workflows/downstream-end-to-end-tests.yml | 45 +++++-------------- 1 file changed, 10 insertions(+), 35 deletions(-) diff --git a/.github/workflows/downstream-end-to-end-tests.yml b/.github/workflows/downstream-end-to-end-tests.yml index 41ea7850961..300d44be003 100644 --- a/.github/workflows/downstream-end-to-end-tests.yml +++ b/.github/workflows/downstream-end-to-end-tests.yml @@ -3,10 +3,16 @@ name: matrix-react-sdk End to End Tests on: - workflow_run: - workflows: ["Build downstream artifacts"] - types: - - completed + merge_group: + types: [checks_requested] + + pull_request: {} + + # For now at least, we don't run this or the downstream-end-to-end-tests against pushes + # to develop or master. + # + #push: + # branches: [develop, master] concurrency: group: ${{ github.workflow }}-${{ github.event.workflow_run.head_branch || github.run_id }} @@ -22,37 +28,6 @@ jobs: permissions: actions: read issues: read - statuses: write pull-requests: read - deployments: write with: react-sdk-repository: matrix-org/matrix-react-sdk - secrets: - ELEMENT_BOT_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }} - - # We want to make the Playwright tests a required check for the merge queue. - # - # Unfortunately, GitHub doesn't distinguish between "checks needed for branch - # protection" (ie, the things that must pass before the PR will even be added - # to the merge queue) and "checks needed in the merge queue". We just have to add - # the check to the branch protection list. - # - # Ergo, if we know we're not going to run the Playwright tests, we need to add a - # passing status check manually. - mark_skipped: - if: github.event.workflow_run.event != 'merge_group' - permissions: - statuses: write - runs-on: ubuntu-latest - steps: - - uses: Sibz/github-status-action@071b5370da85afbb16637d6eed8524a06bc2053e # v1 - with: - authToken: "${{ secrets.GITHUB_TOKEN }}" - state: success - description: Playwright skipped - - # Keep in step with the `context` that is updated by `Sibz/github-status-action` - # in matrix-org/matrix-react-sdk/.github/workflows/end-to-end-tests.yaml. - context: "${{ github.workflow }} / end-to-end-tests" - - sha: "${{ github.event.workflow_run.head_sha }}" From 6c0b2f55e145383b435334f5ebca19a7daaee71e Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 29 Apr 2024 10:53:12 +0100 Subject: [PATCH 193/595] Delete .github/workflows/downstream-artifacts.yml --- .github/workflows/downstream-artifacts.yml | 22 ---------------------- 1 file changed, 22 deletions(-) delete mode 100644 .github/workflows/downstream-artifacts.yml diff --git a/.github/workflows/downstream-artifacts.yml b/.github/workflows/downstream-artifacts.yml deleted file mode 100644 index d041c1fef4b..00000000000 --- a/.github/workflows/downstream-artifacts.yml +++ /dev/null @@ -1,22 +0,0 @@ -name: Build downstream artifacts -on: - merge_group: - types: [checks_requested] - - pull_request: {} - - # For now at least, we don't run this or the downstream-end-to-end-tests against pushes - # to develop or master. - # - #push: - # branches: [develop, master] -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true -jobs: - build-element-web: - name: Build element-web - uses: matrix-org/matrix-react-sdk/.github/workflows/element-web.yaml@v3.97.0 - with: - matrix-js-sdk-sha: ${{ github.sha }} - react-sdk-repository: matrix-org/matrix-react-sdk From eb888791a3cbf0098056ef4d213816de9a629d44 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 29 Apr 2024 16:12:00 +0100 Subject: [PATCH 194/595] Pass all args to Sonar via sonar-project.properties file (#4179) * Pass all args to Sonar via sonar-project.properties file Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Update Sonarcloud action to v3.1 Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Apply suggestions from code review Co-authored-by: davidegirardi <16451191+davidegirardi@users.noreply.github.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: davidegirardi <16451191+davidegirardi@users.noreply.github.com> --- .github/workflows/sonarcloud.yml | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index 1ee2475ae1e..633ff60c0fc 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -12,10 +12,6 @@ on: type: boolean required: false description: "Whether to combine multiple LCOV and jest-sonar-report files in coverage artifact" - extra_args: - type: string - required: false - description: "Extra args to pass to SonarCloud" jobs: sonarqube: runs-on: ubuntu-latest @@ -60,14 +56,14 @@ jobs: - id: extra_args run: | - coverage=$(find coverage -type f -name '*lcov.info' | tr '\n' ',' | sed 's/,$//g') - echo "reportPaths=$coverage" >> $GITHUB_OUTPUT - reports=$(find coverage -type f -name 'jest-sonar-report*.xml' | tr '\n' ',' | sed 's/,$//g') - echo "testExecutionReportPaths=$reports" >> $GITHUB_OUTPUT + coverage=$(find coverage -type f -name '*lcov.info' -printf '%f,' | tr -d '\r\n' | sed 's/,$//g) + echo "sonar.javascript.lcov.reportPaths=$coverage" >> sonar-project.properties + reports=$(find coverage -type f -name 'jest-sonar-report*.xml' -printf '%f,' | tr -d '\r\n' | sed 's/,$//g) + echo "sonar.testExecutionReportPaths=$reports" >> sonar-project.properties - name: "🩻 SonarCloud Scan" id: sonarcloud - uses: matrix-org/sonarcloud-workflow-action@v2.7 + uses: matrix-org/sonarcloud-workflow-action@v3.1 # workflow_run fails report against the develop commit always, we don't want that for PRs continue-on-error: ${{ github.event.workflow_run.head_branch != 'develop' }} with: @@ -78,10 +74,6 @@ jobs: branch: ${{ github.event.workflow_run.head_branch }} revision: ${{ github.event.workflow_run.head_sha }} token: ${{ secrets.SONAR_TOKEN }} - extra_args: | - ${{ inputs.extra_args }} - -Dsonar.javascript.lcov.reportPaths=${{ steps.extra_args.outputs.reportPaths }} - -Dsonar.testExecutionReportPaths=${{ steps.extra_args.outputs.testExecutionReportPaths }} - uses: Sibz/github-status-action@071b5370da85afbb16637d6eed8524a06bc2053e # v1 if: always() From 8c9bbc01fcf35eaa3d7871083c3f1b0d76a25587 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 29 Apr 2024 16:20:24 +0100 Subject: [PATCH 195/595] Update downstream-end-to-end-tests.yml --- .github/workflows/downstream-end-to-end-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/downstream-end-to-end-tests.yml b/.github/workflows/downstream-end-to-end-tests.yml index 300d44be003..4e9907c2727 100644 --- a/.github/workflows/downstream-end-to-end-tests.yml +++ b/.github/workflows/downstream-end-to-end-tests.yml @@ -23,7 +23,7 @@ jobs: name: Playwright # We only want to run the playwright tests on merge queue to prevent regressions # from creeping in. They take a long time to run and consume multiple concurrent runners. - if: github.event.workflow_run.event == 'merge_group' + if: github.event_name == 'merge_group' uses: matrix-org/matrix-react-sdk/.github/workflows/end-to-end-tests.yaml@develop permissions: actions: read From 95394e4cbe7d1929ff88bab97831837806515b25 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 29 Apr 2024 16:52:54 +0100 Subject: [PATCH 196/595] Update sonarcloud.yml --- .github/workflows/sonarcloud.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index 633ff60c0fc..7747408807c 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -63,7 +63,7 @@ jobs: - name: "🩻 SonarCloud Scan" id: sonarcloud - uses: matrix-org/sonarcloud-workflow-action@v3.1 + uses: matrix-org/sonarcloud-workflow-action@v3.2 # workflow_run fails report against the develop commit always, we don't want that for PRs continue-on-error: ${{ github.event.workflow_run.head_branch != 'develop' }} with: From 3ae0dab47a4a3b61daa8f91ffea03059fdebc515 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 29 Apr 2024 16:59:55 +0100 Subject: [PATCH 197/595] Update sonarcloud.yml --- .github/workflows/sonarcloud.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index 7747408807c..edbbaa26122 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -56,9 +56,9 @@ jobs: - id: extra_args run: | - coverage=$(find coverage -type f -name '*lcov.info' -printf '%f,' | tr -d '\r\n' | sed 's/,$//g) + coverage=$(find coverage -type f -name '*lcov.info' -printf '%f,' | tr -d '\r\n' | sed 's/,$//g') echo "sonar.javascript.lcov.reportPaths=$coverage" >> sonar-project.properties - reports=$(find coverage -type f -name 'jest-sonar-report*.xml' -printf '%f,' | tr -d '\r\n' | sed 's/,$//g) + reports=$(find coverage -type f -name 'jest-sonar-report*.xml' -printf '%f,' | tr -d '\r\n' | sed 's/,$//g') echo "sonar.testExecutionReportPaths=$reports" >> sonar-project.properties - name: "🩻 SonarCloud Scan" From 8faed02cc51d3d048af5aeb2c04ea60f8d41bd88 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 29 Apr 2024 17:22:32 +0100 Subject: [PATCH 198/595] Update sonarcloud.yml --- .github/workflows/sonarcloud.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index edbbaa26122..5fbab9c7715 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -56,9 +56,9 @@ jobs: - id: extra_args run: | - coverage=$(find coverage -type f -name '*lcov.info' -printf '%f,' | tr -d '\r\n' | sed 's/,$//g') + coverage=$(find coverage -type f -name '*lcov.info' -printf '%h/%f,' | tr -d '\r\n' | sed 's/,$//g') echo "sonar.javascript.lcov.reportPaths=$coverage" >> sonar-project.properties - reports=$(find coverage -type f -name 'jest-sonar-report*.xml' -printf '%f,' | tr -d '\r\n' | sed 's/,$//g') + reports=$(find coverage -type f -name 'jest-sonar-report*.xml' -printf '%h/%f,' | tr -d '\r\n' | sed 's/,$//g') echo "sonar.testExecutionReportPaths=$reports" >> sonar-project.properties - name: "🩻 SonarCloud Scan" From a33758eda6ddea4b46b1111da8b647e2380c812a Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 30 Apr 2024 10:28:44 +0100 Subject: [PATCH 199/595] Update downstream-end-to-end-tests.yml --- .github/workflows/downstream-end-to-end-tests.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/downstream-end-to-end-tests.yml b/.github/workflows/downstream-end-to-end-tests.yml index 4e9907c2727..24f4ff1251e 100644 --- a/.github/workflows/downstream-end-to-end-tests.yml +++ b/.github/workflows/downstream-end-to-end-tests.yml @@ -21,9 +21,6 @@ concurrency: jobs: playwright: name: Playwright - # We only want to run the playwright tests on merge queue to prevent regressions - # from creeping in. They take a long time to run and consume multiple concurrent runners. - if: github.event_name == 'merge_group' uses: matrix-org/matrix-react-sdk/.github/workflows/end-to-end-tests.yaml@develop permissions: actions: read @@ -31,3 +28,6 @@ jobs: pull-requests: read with: react-sdk-repository: matrix-org/matrix-react-sdk + # We only want to run the playwright tests on merge queue to prevent regressions + # from creeping in. They take a long time to run and consume multiple concurrent runners. + skip: github.event_name != 'merge_group' From c2687643b5ac87789aee58bb7fb767222eccf26d Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 30 Apr 2024 10:30:19 +0100 Subject: [PATCH 200/595] Update downstream-end-to-end-tests.yml --- .github/workflows/downstream-end-to-end-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/downstream-end-to-end-tests.yml b/.github/workflows/downstream-end-to-end-tests.yml index 24f4ff1251e..13f7333aa4c 100644 --- a/.github/workflows/downstream-end-to-end-tests.yml +++ b/.github/workflows/downstream-end-to-end-tests.yml @@ -30,4 +30,4 @@ jobs: react-sdk-repository: matrix-org/matrix-react-sdk # We only want to run the playwright tests on merge queue to prevent regressions # from creeping in. They take a long time to run and consume multiple concurrent runners. - skip: github.event_name != 'merge_group' + skip: ${{ github.event_name != 'merge_group' }} From 2bf554761cb4e526791ad14801491c624a270905 Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 30 Apr 2024 10:38:07 +0100 Subject: [PATCH 201/595] Add some comments to the release drafter workflows (#4140) * Add some comments to the release drafter workflows * Rename component workflow so they have different names * Fix comment --------- Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-drafter-workflow.yml | 3 ++- .github/workflows/release-drafter.yml | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 3eeba464f0a..b61bce064a9 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -1,4 +1,5 @@ -name: Release Drafter +# Workflow used by other workflows to generate draft releases. +name: Release Drafter Reusable on: workflow_call: inputs: diff --git a/.github/workflows/release-drafter.yml b/.github/workflows/release-drafter.yml index d8afa80a9f9..e8fc7841910 100644 --- a/.github/workflows/release-drafter.yml +++ b/.github/workflows/release-drafter.yml @@ -1,3 +1,7 @@ +# Generates the draft release for the js-sdk +# Normally triggered whenever anything is merged to the staging branch, but +# also has a workflow dispatch trigger in case it needs running manually due +# to failures / workflow updates etc. name: Release Drafter on: push: From efdae0d66f5bd67807fd81747c3b55306938451b Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 30 Apr 2024 11:43:20 +0100 Subject: [PATCH 202/595] Remove spammy RTCSession log line (#4180) This can get quite spammy in rooms with legacy calls and isn't really neccesary: remove it to cut down on the log spam. --- src/matrixrtc/MatrixRTCSession.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 142b1e9afb0..7421723ecb4 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -136,7 +136,6 @@ export class MatrixRTCSession extends TypedEventEmitter Date: Tue, 30 Apr 2024 12:02:20 +0000 Subject: [PATCH 203/595] v32.2.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 343b0165ba0..f5ecb36a047 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "32.1.0", + "version": "32.2.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,5 +132,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From 9f78202ecdc8c12460cf956763691df91e83ee21 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 30 Apr 2024 14:40:57 +0100 Subject: [PATCH 204/595] Update typescript-eslint monorepo to v7.7.1 (#4183) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- src/crypto/verification/QRCode.ts | 2 +- src/crypto/verification/SAS.ts | 4 +- src/rust-crypto/verification.ts | 6 +- yarn.lock | 98 +++++++++++++++---------------- 4 files changed, 56 insertions(+), 54 deletions(-) diff --git a/src/crypto/verification/QRCode.ts b/src/crypto/verification/QRCode.ts index e0c7816eb46..7ccd4986d53 100644 --- a/src/crypto/verification/QRCode.ts +++ b/src/crypto/verification/QRCode.ts @@ -74,7 +74,7 @@ export class ReciprocateQRCode extends Base { await new Promise((resolve, reject) => { this.reciprocateQREvent = { confirm: resolve, - cancel: () => reject(newUserCancelledError()), + cancel: (): void => reject(newUserCancelledError()), }; this.emit(QrCodeEvent.ShowReciprocateQr, this.reciprocateQREvent); }); diff --git a/src/crypto/verification/SAS.ts b/src/crypto/verification/SAS.ts index 7a21d615b67..f161278bc43 100644 --- a/src/crypto/verification/SAS.ts +++ b/src/crypto/verification/SAS.ts @@ -308,8 +308,8 @@ export class SAS extends Base { reject(err); } }, - cancel: () => reject(newUserCancelledError()), - mismatch: () => reject(newMismatchedSASError()), + cancel: (): void => reject(newUserCancelledError()), + mismatch: (): void => reject(newMismatchedSASError()), }; this.emit(SasEvent.ShowSas, this.sasEvent); }); diff --git a/src/rust-crypto/verification.ts b/src/rust-crypto/verification.ts index 6d164adeec2..424945cb744 100644 --- a/src/rust-crypto/verification.ts +++ b/src/rust-crypto/verification.ts @@ -567,8 +567,10 @@ export class RustQrCodeVerifier extends BaseRustVerifer impl // application to prompt the user to confirm their side. if (this.callbacks === null && this.inner.hasBeenScanned()) { this.callbacks = { - confirm: () => this.confirmScanning(), - cancel: () => this.cancel(), + confirm: (): void => { + this.confirmScanning(); + }, + cancel: (): void => this.cancel(), }; } diff --git a/yarn.lock b/yarn.lock index 5a3095277c6..6e1ba348918 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2267,15 +2267,15 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.7.0.tgz#bf34a02f221811505b8bf2f31060c8560c1bb0a3" - integrity sha512-GJWR0YnfrKnsRoluVO3PRb9r5aMZriiMMM/RHj5nnTrBy1/wIgk76XCtCKcnXGjpZQJQRFtGV9/0JJ6n30uwpQ== + version "7.8.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.8.0.tgz#c78e309fe967cb4de05b85cdc876fb95f8e01b6f" + integrity sha512-gFTT+ezJmkwutUPmB0skOj3GZJtlEGnlssems4AjkVweUPGj7jRwwqg0Hhg7++kPGJqKtTYx+R05Ftww372aIg== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.7.0" - "@typescript-eslint/type-utils" "7.7.0" - "@typescript-eslint/utils" "7.7.0" - "@typescript-eslint/visitor-keys" "7.7.0" + "@typescript-eslint/scope-manager" "7.8.0" + "@typescript-eslint/type-utils" "7.8.0" + "@typescript-eslint/utils" "7.8.0" + "@typescript-eslint/visitor-keys" "7.8.0" debug "^4.3.4" graphemer "^1.4.0" ignore "^5.3.1" @@ -2284,14 +2284,14 @@ ts-api-utils "^1.3.0" "@typescript-eslint/parser@^7.0.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.7.0.tgz#6b1b3ce76c5de002c43af8ae933613b0f2b4bcc6" - integrity sha512-fNcDm3wSwVM8QYL4HKVBggdIPAy9Q41vcvC/GtDobw3c4ndVT3K6cqudUmjHPw8EAp4ufax0o58/xvWaP2FmTg== - dependencies: - "@typescript-eslint/scope-manager" "7.7.0" - "@typescript-eslint/types" "7.7.0" - "@typescript-eslint/typescript-estree" "7.7.0" - "@typescript-eslint/visitor-keys" "7.7.0" + version "7.8.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.8.0.tgz#1e1db30c8ab832caffee5f37e677dbcb9357ddc8" + integrity sha512-KgKQly1pv0l4ltcftP59uQZCi4HUYswCLbTqVZEJu7uLX8CTLyswqMLqLN+2QFz4jCptqWVV4SB7vdxcH2+0kQ== + dependencies: + "@typescript-eslint/scope-manager" "7.8.0" + "@typescript-eslint/types" "7.8.0" + "@typescript-eslint/typescript-estree" "7.8.0" + "@typescript-eslint/visitor-keys" "7.8.0" debug "^4.3.4" "@typescript-eslint/scope-manager@6.21.0": @@ -2302,21 +2302,21 @@ "@typescript-eslint/types" "6.21.0" "@typescript-eslint/visitor-keys" "6.21.0" -"@typescript-eslint/scope-manager@7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.7.0.tgz#3f0db079b275bb8b0cb5be7613fb3130cfb5de77" - integrity sha512-/8INDn0YLInbe9Wt7dK4cXLDYp0fNHP5xKLHvZl3mOT5X17rK/YShXaiNmorl+/U4VKCVIjJnx4Ri5b0y+HClw== +"@typescript-eslint/scope-manager@7.8.0": + version "7.8.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.8.0.tgz#bb19096d11ec6b87fb6640d921df19b813e02047" + integrity sha512-viEmZ1LmwsGcnr85gIq+FCYI7nO90DVbE37/ll51hjv9aG+YZMb4WDE2fyWpUR4O/UrhGRpYXK/XajcGTk2B8g== dependencies: - "@typescript-eslint/types" "7.7.0" - "@typescript-eslint/visitor-keys" "7.7.0" + "@typescript-eslint/types" "7.8.0" + "@typescript-eslint/visitor-keys" "7.8.0" -"@typescript-eslint/type-utils@7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.7.0.tgz#36792ff4209a781b058de61631a48df17bdefbc5" - integrity sha512-bOp3ejoRYrhAlnT/bozNQi3nio9tIgv3U5C0mVDdZC7cpcQEDZXvq8inrHYghLVwuNABRqrMW5tzAv88Vy77Sg== +"@typescript-eslint/type-utils@7.8.0": + version "7.8.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.8.0.tgz#9de166f182a6e4d1c5da76e94880e91831e3e26f" + integrity sha512-H70R3AefQDQpz9mGv13Uhi121FNMh+WEaRqcXTX09YEDky21km4dV1ZXJIp8QjXc4ZaVkXVdohvWDzbnbHDS+A== dependencies: - "@typescript-eslint/typescript-estree" "7.7.0" - "@typescript-eslint/utils" "7.7.0" + "@typescript-eslint/typescript-estree" "7.8.0" + "@typescript-eslint/utils" "7.8.0" debug "^4.3.4" ts-api-utils "^1.3.0" @@ -2325,10 +2325,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.21.0.tgz#205724c5123a8fef7ecd195075fa6e85bac3436d" integrity sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg== -"@typescript-eslint/types@7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.7.0.tgz#23af4d24bf9ce15d8d301236e3e3014143604f27" - integrity sha512-G01YPZ1Bd2hn+KPpIbrAhEWOn5lQBrjxkzHkWvP6NucMXFtfXoevK82hzQdpfuQYuhkvFDeQYbzXCjR1z9Z03w== +"@typescript-eslint/types@7.8.0": + version "7.8.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.8.0.tgz#1fd2577b3ad883b769546e2d1ef379f929a7091d" + integrity sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw== "@typescript-eslint/typescript-estree@6.21.0": version "6.21.0" @@ -2344,13 +2344,13 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/typescript-estree@7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.7.0.tgz#b5dd6383b4c6a852d7b256a37af971e8982be97f" - integrity sha512-8p71HQPE6CbxIBy2kWHqM1KGrC07pk6RJn40n0DSc6bMOBBREZxSDJ+BmRzc8B5OdaMh1ty3mkuWRg4sCFiDQQ== +"@typescript-eslint/typescript-estree@7.8.0": + version "7.8.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.8.0.tgz#b028a9226860b66e623c1ee55cc2464b95d2987c" + integrity sha512-5pfUCOwK5yjPaJQNy44prjCwtr981dO8Qo9J9PwYXZ0MosgAbfEMB008dJ5sNo3+/BN6ytBPuSvXUg9SAqB0dg== dependencies: - "@typescript-eslint/types" "7.7.0" - "@typescript-eslint/visitor-keys" "7.7.0" + "@typescript-eslint/types" "7.8.0" + "@typescript-eslint/visitor-keys" "7.8.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2358,17 +2358,17 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.7.0.tgz#3d2b6606a60ac34f3c625facfb3b3ab7e126f58d" - integrity sha512-LKGAXMPQs8U/zMRFXDZOzmMKgFv3COlxUQ+2NMPhbqgVm6R1w+nU1i4836Pmxu9jZAuIeyySNrN/6Rc657ggig== +"@typescript-eslint/utils@7.8.0": + version "7.8.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.8.0.tgz#57a79f9c0c0740ead2f622e444cfaeeb9fd047cd" + integrity sha512-L0yFqOCflVqXxiZyXrDr80lnahQfSOfc9ELAAZ75sqicqp2i36kEZZGuUymHNFoYOqxRT05up760b4iGsl02nQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" "@types/json-schema" "^7.0.15" "@types/semver" "^7.5.8" - "@typescript-eslint/scope-manager" "7.7.0" - "@typescript-eslint/types" "7.7.0" - "@typescript-eslint/typescript-estree" "7.7.0" + "@typescript-eslint/scope-manager" "7.8.0" + "@typescript-eslint/types" "7.8.0" + "@typescript-eslint/typescript-estree" "7.8.0" semver "^7.6.0" "@typescript-eslint/utils@^6.0.0": @@ -2392,12 +2392,12 @@ "@typescript-eslint/types" "6.21.0" eslint-visitor-keys "^3.4.1" -"@typescript-eslint/visitor-keys@7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.7.0.tgz#950148cf1ac11562a2d903fdf7acf76714a2dc9e" - integrity sha512-h0WHOj8MhdhY8YWkzIF30R379y0NqyOHExI9N9KCzvmu05EgG4FumeYa3ccfKUSphyWkWQE1ybVrgz/Pbam6YA== +"@typescript-eslint/visitor-keys@7.8.0": + version "7.8.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.8.0.tgz#7285aab991da8bee411a42edbd5db760d22fdd91" + integrity sha512-q4/gibTNBQNA0lGyYQCmWRS5D15n8rXh4QjK3KV+MBPlTYHpfBUT3D3PaPR/HeNiI9W6R7FvlkcGhNyAoP+caA== dependencies: - "@typescript-eslint/types" "7.7.0" + "@typescript-eslint/types" "7.8.0" eslint-visitor-keys "^3.4.3" "@ungap/structured-clone@^1.2.0": From 7c7b2817d36a0642e84d48d1cbfbc10dcc871f02 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 30 Apr 2024 13:16:31 +0000 Subject: [PATCH 205/595] Update all non-major dependencies (#4184) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 650 ++++++------------------------------------------------ 1 file changed, 62 insertions(+), 588 deletions(-) diff --git a/yarn.lock b/yarn.lock index 6e1ba348918..4bdb806833a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1821,55 +1821,6 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@npmcli/git@^5.0.0": - version "5.0.4" - resolved "https://registry.yarnpkg.com/@npmcli/git/-/git-5.0.4.tgz#d18c50f99649e6e89e8b427318134f582498700c" - integrity sha512-nr6/WezNzuYUppzXRaYu/W4aT5rLxdXqEFupbh6e/ovlYFQ8hpu1UUPV3Ir/YTl+74iXl2ZOMlGzudh9ZPUchQ== - dependencies: - "@npmcli/promise-spawn" "^7.0.0" - lru-cache "^10.0.1" - npm-pick-manifest "^9.0.0" - proc-log "^3.0.0" - promise-inflight "^1.0.1" - promise-retry "^2.0.1" - semver "^7.3.5" - which "^4.0.0" - -"@npmcli/map-workspaces@^3.0.4": - version "3.0.6" - resolved "https://registry.yarnpkg.com/@npmcli/map-workspaces/-/map-workspaces-3.0.6.tgz#27dc06c20c35ef01e45a08909cab9cb3da08cea6" - integrity sha512-tkYs0OYnzQm6iIRdfy+LcLBjcKuQCeE5YLb8KnrIlutJfheNaPvPpgoFEyEFgbjzl5PLZ3IA/BWAwRU0eHuQDA== - dependencies: - "@npmcli/name-from-folder" "^2.0.0" - glob "^10.2.2" - minimatch "^9.0.0" - read-package-json-fast "^3.0.0" - -"@npmcli/name-from-folder@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz#c44d3a7c6d5c184bb6036f4d5995eee298945815" - integrity sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg== - -"@npmcli/package-json@^5.0.0": - version "5.0.3" - resolved "https://registry.yarnpkg.com/@npmcli/package-json/-/package-json-5.0.3.tgz#d8a922fcd5abe27a8b0ed619beddfef0f44e614e" - integrity sha512-cgsjCvld2wMqkUqvY+SZI+1ZJ7umGBYc9IAKfqJRKJCcs7hCQYxScUgdsyrRINk3VmdCYf9TXiLBHQ6ECTxhtg== - dependencies: - "@npmcli/git" "^5.0.0" - glob "^10.2.2" - hosted-git-info "^7.0.0" - json-parse-even-better-errors "^3.0.0" - normalize-package-data "^6.0.0" - proc-log "^4.0.0" - semver "^7.5.3" - -"@npmcli/promise-spawn@^7.0.0": - version "7.0.1" - resolved "https://registry.yarnpkg.com/@npmcli/promise-spawn/-/promise-spawn-7.0.1.tgz#a836de2f42a2245d629cf6fbb8dd6c74c74c55af" - integrity sha512-P4KkF9jX3y+7yFUxgcUdDtLy+t4OlDGuEBLNs57AZsfSfg+uV6MLndqGpnl4831ggaEdXwR50XFoZP4VFtHolg== - dependencies: - which "^4.0.0" - "@peculiar/asn1-schema@^2.3.8": version "2.3.8" resolved "https://registry.yarnpkg.com/@peculiar/asn1-schema/-/asn1-schema-2.3.8.tgz#04b38832a814e25731232dd5be883460a156da3b" @@ -1902,113 +1853,6 @@ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== -"@pnpm/constants@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@pnpm/constants/-/constants-7.1.1.tgz#3db261425fe15425aa213a2b003f4f60c9378b43" - integrity sha512-31pZqMtjwV+Vaq7MaPrT1EoDFSYwye3dp6BiHIGRJmVThCQwySRKM7hCvqqI94epNkqFAAYoWrNynWoRYosGdw== - -"@pnpm/core-loggers@9.0.6": - version "9.0.6" - resolved "https://registry.yarnpkg.com/@pnpm/core-loggers/-/core-loggers-9.0.6.tgz#59a65822cc5ef901dad5aca5b8f1f9562cf91e2a" - integrity sha512-iK67SGbp+06bA/elpg51wygPFjNA7JKHtKkpLxqXXHw+AjFFBC3f2OznJsCIuDK6HdGi5UhHLYqo5QxJ2gMqJQ== - dependencies: - "@pnpm/types" "9.4.2" - -"@pnpm/error@5.0.2": - version "5.0.2" - resolved "https://registry.yarnpkg.com/@pnpm/error/-/error-5.0.2.tgz#153d18fe9eeaeb02e48e9dc45b042f4c962b3822" - integrity sha512-0TEm+tWNYm+9uh6DSKyRbv8pv/6b4NL0PastLvMxIoqZbBZ5Zj1cYi332R9xsSUi31ZOsu2wpgn/bC7DA9hrjg== - dependencies: - "@pnpm/constants" "7.1.1" - -"@pnpm/fetching-types@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@pnpm/fetching-types/-/fetching-types-5.0.0.tgz#36807c4bea4697d5ad7519d80929666a91c0083d" - integrity sha512-o9gdO1v8Uc5P2fBBuW6GSpfTqIivQmQlqjQJdFiQX0m+tgxlrMRneIg392jZuc6fk7kFqjLheInlslgJfwY+4Q== - dependencies: - "@zkochan/retry" "^0.2.0" - node-fetch "3.0.0-beta.9" - -"@pnpm/graceful-fs@3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@pnpm/graceful-fs/-/graceful-fs-3.2.0.tgz#241846c42c23feff7421b8bd97d4039891003f12" - integrity sha512-vRoXJxscDpHak7YE9SqCkzfrayn+Lw+YueOeHIPEqkgokrHeYgYeONoc2kGh0ObHaRtNSsonozVfJ456kxLNvA== - dependencies: - graceful-fs "^4.2.11" - -"@pnpm/logger@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@pnpm/logger/-/logger-5.0.0.tgz#9ac8254d40d8d5b5e676742dc66b8cac1af380bf" - integrity sha512-YfcB2QrX+Wx1o6LD1G2Y2fhDhOix/bAY/oAnMpHoNLsKkWIRbt1oKLkIFvxBMzLwAEPqnYWguJrYC+J6i4ywbw== - dependencies: - bole "^5.0.0" - ndjson "^2.0.0" - -"@pnpm/npm-package-arg@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@pnpm/npm-package-arg/-/npm-package-arg-1.0.0.tgz#2a27938f4d38c6cce5f3695fd1e7d5ed8929645e" - integrity sha512-oQYP08exi6mOPdAZZWcNIGS+KKPsnNwUBzSuAEGWuCcqwMAt3k/WVCqVIXzBxhO5sP2b43og69VHmPj6IroKqw== - dependencies: - hosted-git-info "^4.0.1" - semver "^7.3.5" - validate-npm-package-name "^4.0.0" - -"@pnpm/npm-resolver@18.1.0": - version "18.1.0" - resolved "https://registry.yarnpkg.com/@pnpm/npm-resolver/-/npm-resolver-18.1.0.tgz#bbafcdf88391ee84e2dc78c2b599b54dbbc8f8e3" - integrity sha512-fUYKX/iHiHldL0VRVvkQI35YK2jWhZEkPO6rrGke8309+LKAo12v833nBttMDpQrtHefmqhB4mhCzQq6L2Xqmg== - dependencies: - "@pnpm/core-loggers" "9.0.6" - "@pnpm/error" "5.0.2" - "@pnpm/fetching-types" "5.0.0" - "@pnpm/graceful-fs" "3.2.0" - "@pnpm/resolve-workspace-range" "5.0.1" - "@pnpm/resolver-base" "11.1.0" - "@pnpm/types" "9.4.2" - "@zkochan/retry" "^0.2.0" - encode-registry "^3.0.1" - load-json-file "^6.2.0" - lru-cache "^10.0.2" - normalize-path "^3.0.0" - p-limit "^3.1.0" - p-memoize "4.0.1" - parse-npm-tarball-url "^3.0.0" - path-temp "^2.1.0" - ramda "npm:@pnpm/ramda@0.28.1" - rename-overwrite "^5.0.0" - semver "^7.5.4" - ssri "10.0.5" - version-selector-type "^3.0.0" - -"@pnpm/resolve-workspace-range@5.0.1": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@pnpm/resolve-workspace-range/-/resolve-workspace-range-5.0.1.tgz#839179560fbf5e565234e5dd1d65b79765d86f4c" - integrity sha512-yQ0pMthlw8rTgS/C9hrjne+NEnnSNevCjtdodd7i15I59jMBYciHifZ/vjg0NY+Jl+USTc3dBE+0h/4tdYjMKg== - dependencies: - semver "^7.4.0" - -"@pnpm/resolver-base@11.1.0": - version "11.1.0" - resolved "https://registry.yarnpkg.com/@pnpm/resolver-base/-/resolver-base-11.1.0.tgz#e640ba9ae096bf05a0b905496a63509556322618" - integrity sha512-y2qKaj18pwe1VWc3YXEitdYFo+WqOOt60aqTUuOVkJAirUzz0DzuYh3Ifct4znYWPdgUXHaN5DMphNF5iL85rA== - dependencies: - "@pnpm/types" "9.4.2" - -"@pnpm/types@9.4.2": - version "9.4.2" - resolved "https://registry.yarnpkg.com/@pnpm/types/-/types-9.4.2.tgz#0a34c3c41d5452461d8d8958374a727f9c46cfb2" - integrity sha512-g1hcF8Nv4gd76POilz9gD4LITAPXOe5nX4ijgr8ixCbLQZfcpYiMfJ+C1RlMNRUDo8vhlNB4O3bUlxmT6EAQXA== - -"@pnpm/workspace.pkgs-graph@2.0.14": - version "2.0.14" - resolved "https://registry.yarnpkg.com/@pnpm/workspace.pkgs-graph/-/workspace.pkgs-graph-2.0.14.tgz#3ea12b8d95987e64bc98876422ea7ad578cd022a" - integrity sha512-SBXXyWDkPEoaLTjLRyQzRHoBYH+P0NLcIjX1yPUxuJiMTvGOMzjpLWTuxYNVe/P0V0VQMrjpJFaJPjlViNLhzg== - dependencies: - "@pnpm/npm-package-arg" "^1.0.0" - "@pnpm/npm-resolver" "18.1.0" - "@pnpm/resolve-workspace-range" "5.0.1" - ramda "npm:@pnpm/ramda@0.28.1" - "@sinclair/typebox@^0.24.1": version "0.24.51" resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.51.tgz#645f33fe4e02defe26f2f5c0410e1c094eac7f5f" @@ -2214,11 +2058,6 @@ resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.3.tgz#291c243e4b94dbfbc0c0ee26b7666f1d5c030e2c" integrity sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg== -"@types/picomatch@2.3.3": - version "2.3.3" - resolved "https://registry.yarnpkg.com/@types/picomatch/-/picomatch-2.3.3.tgz#be60498568c19e989e43fb39aa84be1ed3655e92" - integrity sha512-Yll76ZHikRFCyz/pffKGjrCwe/le2CDwOP5F210KQo27kpRE46U2rDnzikNlVn6/ezH3Mhn46bJMTfeVTtcYMg== - "@types/retry@0.12.0": version "0.12.0" resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.0.tgz#2b35eccfcee7d38cd72ad99232fbd58bffb3c84d" @@ -2405,18 +2244,6 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== -"@zkochan/retry@^0.2.0": - version "0.2.0" - resolved "https://registry.yarnpkg.com/@zkochan/retry/-/retry-0.2.0.tgz#cb52c9fce1976f3eed7b1979b739e70706f4a3d2" - integrity sha512-WhB+2B/ZPlW2Xy/kMJBrMbqecWXcbDDgn0K0wKBAgO2OlBTz1iLJrRWduo+DGGn0Akvz1Lu4Xvls7dJojximWw== - -"@zkochan/rimraf@^2.1.2": - version "2.1.3" - resolved "https://registry.yarnpkg.com/@zkochan/rimraf/-/rimraf-2.1.3.tgz#1074cb72d6e4997275285b04296a343b6ac7046b" - integrity sha512-mCfR3gylCzPC+iqdxEA6z5SxJeOgzgbwmyxanKriIne5qZLswDe/M43aD3p5MNzwzXRhbZg/OX+MpES6Zk1a6A== - dependencies: - rimraf "^3.0.2" - abab@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" @@ -2778,14 +2605,6 @@ binary-extensions@^2.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== -bole@^5.0.0: - version "5.0.11" - resolved "https://registry.yarnpkg.com/bole/-/bole-5.0.11.tgz#c4a165975422daee6f576360e882a425c8e40617" - integrity sha512-KB0Ye0iMAW5BnNbnLfMSQcnI186hKUzE2fpkZWqcxsoTR7eqzlTidSOMYPHJOn/yR7VGH7uSZp37qH9q2Et0zQ== - dependencies: - fast-safe-stringify "^2.0.7" - individual "^3.0.0" - brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -2852,13 +2671,6 @@ builtin-modules@^3.3.0: resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== -builtins@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/builtins/-/builtins-5.1.0.tgz#6d85eeb360c4ebc166c3fdef922a15aa7316a5e8" - integrity sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg== - dependencies: - semver "^7.0.0" - call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.5.tgz#6fa2b7845ce0ea49bf4d8b9ef64727a2c2e2e513" @@ -3130,11 +2942,6 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" -crypto-random-string@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" - integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== - cssom@^0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.5.0.tgz#d254fa92cd8b6fbd83811b9fbaed34663cc17c36" @@ -3152,11 +2959,6 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" -data-uri-to-buffer@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz#594b8973938c5bc2c33046535785341abc4f3636" - integrity sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og== - data-urls@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-3.0.2.tgz#9cf24a477ae22bcef5cd5f6f0bfbc1d2d3be9143" @@ -3327,13 +3129,6 @@ emoji-regex@^9.2.2: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== -encode-registry@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/encode-registry/-/encode-registry-3.0.1.tgz#cb925d0db14ce59b18882b62c67133721b0846d1" - integrity sha512-6qOwkl1g0fv0DN3Y3ggr2EaZXN71aoAqPp3p/pVaWSBSIo+YjLOWN61Fva43oVyQNPf7kgm8lkudzlzojwE2jw== - dependencies: - mem "^8.0.0" - enhanced-resolve@^5.12.0: version "5.15.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz#1af946c7d93603eb88e9896cee4904dc012e9c35" @@ -3347,11 +3142,6 @@ entities@^4.4.0: resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== -err-code@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" - integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== - error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" @@ -3523,9 +3313,9 @@ eslint-plugin-import@^2.26.0: tsconfig-paths "^3.15.0" eslint-plugin-jest@^28.0.0: - version "28.2.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.2.0.tgz#863e2b2bda95eb41981ba9bcf4c44f57dce40a73" - integrity sha512-yRDti/a+f+SMSmNTiT9/M/MzXGkitl8CfzUxnpoQcTyfq8gUrXMriVcWU36W1X6BZSUoyUCJrDAWWUA2N4hE5g== + version "28.3.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.3.0.tgz#d52dea5e4f191fde061cbf1cea44c8a0a23e62ec" + integrity sha512-5LjCSSno8E+IUCOX4hJiIb/upPIgpkaDEcaN/40gOcw26t/5UTLHFc4JdxKjOOvGTh0XdCu+fNr0fpOVNvcxMA== dependencies: "@typescript-eslint/utils" "^6.0.0" @@ -3806,11 +3596,6 @@ fast-levenshtein@^2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== -fast-safe-stringify@^2.0.7: - version "2.1.1" - resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" - integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== - fastq@^1.15.0, fastq@^1.6.0: version "1.17.1" resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" @@ -3825,11 +3610,6 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" -fetch-blob@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-2.1.2.tgz#a7805db1361bd44c1ef62bb57fb5fe8ea173ef3c" - integrity sha512-YKqtUDwqLyfyMnmbw8XD6Q8j9i/HggKtPEI+pZ1+8bvheBu78biSmNaXWusx1TauGqtUUGx/cBb1mKdq2rLYow== - fetch-mock-jest@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/fetch-mock-jest/-/fetch-mock-jest-1.5.1.tgz#0e13df990d286d9239e284f12b279ed509bf53cd" @@ -3853,6 +3633,13 @@ fetch-mock@9.11.0, fetch-mock@^9.11.0: querystring "^0.2.0" whatwg-url "^6.5.0" +file-entry-cache@8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz#7787bddcf1131bffb92636c69457bbc0edd6d81f" + integrity sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ== + dependencies: + flat-cache "^4.0.0" + file-entry-cache@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" @@ -3901,11 +3688,24 @@ flat-cache@^3.0.4: flatted "^3.1.0" rimraf "^3.0.2" +flat-cache@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-4.0.1.tgz#0ece39fcb14ee012f4b0410bd33dd9c1f011127c" + integrity sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw== + dependencies: + flatted "^3.2.9" + keyv "^4.5.4" + flatted@^3.1.0: version "3.2.7" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== +flatted@^3.2.9: + version "3.3.1" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" + integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== + for-each@^0.3.3: version "0.3.3" resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" @@ -3930,15 +3730,6 @@ form-data@^4.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" -fs-extra@10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" - integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - fs-readdir-recursive@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27" @@ -4048,17 +3839,6 @@ glob-to-regexp@^0.4.0: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob@^10.2.2: - version "10.3.12" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.12.tgz#3a65c363c2e9998d220338e88a5f6ac97302960b" - integrity sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg== - dependencies: - foreground-child "^3.1.0" - jackspeak "^2.3.6" - minimatch "^9.0.1" - minipass "^7.0.4" - path-scurry "^1.10.2" - glob@^10.3.7: version "10.3.10" resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b" @@ -4120,7 +3900,7 @@ gopd@^1.0.1: dependencies: get-intrinsic "^1.1.3" -graceful-fs@^4.1.15, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.9: +graceful-fs@^4.2.4, graceful-fs@^4.2.9: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -4191,20 +3971,6 @@ hosted-git-info@^2.1.4: resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== -hosted-git-info@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" - integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA== - dependencies: - lru-cache "^6.0.0" - -hosted-git-info@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-7.0.1.tgz#9985fcb2700467fecf7f33a4d4874e30680b5322" - integrity sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA== - dependencies: - lru-cache "^10.0.1" - html-encoding-sniffer@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz#2cb1a8cf0db52414776e5b2a7a04d5dd98158de9" @@ -4292,11 +4058,6 @@ indent-string@^4.0.0: resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== -individual@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/individual/-/individual-3.0.0.tgz#e7ca4f85f8957b018734f285750dc22ec2f9862d" - integrity sha512-rUY5vtT748NMRbEMrTNiFfy29BgGZwGXUi2NFUVMWQrogSLzlJvQV9eeMWi+g1aVaQ53tpyLAQtd5x/JH0Nh1g== - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -4305,7 +4066,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.3: +inherits@2: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -4374,7 +4135,7 @@ is-core-module@^2.1.0, is-core-module@^2.11.0: dependencies: has "^1.0.3" -is-core-module@^2.13.0, is-core-module@^2.13.1, is-core-module@^2.8.1: +is-core-module@^2.13.0, is-core-module@^2.13.1: version "2.13.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== @@ -4527,11 +4288,6 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isexe@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-3.1.1.tgz#4a407e2bd78ddfb14bea0c27c6f7072dde775f0d" - integrity sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ== - istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" @@ -4590,7 +4346,7 @@ iterable-lookahead@^1.0.0: resolved "https://registry.yarnpkg.com/iterable-lookahead/-/iterable-lookahead-1.0.0.tgz#896dfcb78680bdb50036e97edb034c8b68a9737f" integrity sha512-hJnEP2Xk4+44DDwJqUQGdXal5VbyeWLaPyDl2AQc242Zr7iqz4DgpQOrEzglWVMGHMDCkguLHEKxd1+rOsmgSQ== -jackspeak@^2.3.5, jackspeak@^2.3.6: +jackspeak@^2.3.5: version "2.3.6" resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== @@ -5110,16 +4866,16 @@ jsesc@~0.5.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== + json-parse-even-better-errors@^2.3.0: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== -json-parse-even-better-errors@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz#02bb29fb5da90b5444581749c22cedd3597c6cb0" - integrity sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg== - json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" @@ -5130,11 +4886,6 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== -json-stringify-safe@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== - json5@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" @@ -5152,43 +4903,36 @@ jsonc-parser@^3.2.0: resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.1.tgz#031904571ccf929d7670ee8c547545081cb37f1a" integrity sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA== -jsonfile@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" - integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== - dependencies: - universalify "^2.0.0" - optionalDependencies: - graceful-fs "^4.1.6" - jwt-decode@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-4.0.0.tgz#2270352425fd413785b2faf11f6e755c5151bd4b" integrity sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA== +keyv@^4.5.4: + version "4.5.4" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" + integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== + dependencies: + json-buffer "3.0.1" + kleur@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.9.4" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.9.4.tgz#62d95ce61e3a37a692d4be317f6614effa569e0e" - integrity sha512-33TM8bSHxMMoj+wP9lzjUkIIEfpXaZsLWMYRCoHdbmYnl2HKPMNijcYTxwi1omRROobXrR/VJyH2ZsYOKM1jtg== + version "5.11.0" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.11.0.tgz#e7e51c3c01fa238623d94c8dcd78f04712cb2ae5" + integrity sha512-7TBBpLYYAqZI+FM+qHsmT0jfYNOwwZAMBvuJXq3gFJCCpDvGrYcLMu2j6yvURJNh1UlpQ4jaNgPoHw7ylGDWMA== dependencies: "@ericcornelissen/bash-parser" "0.5.2" "@nodelib/fs.walk" "2.0.0" - "@npmcli/map-workspaces" "^3.0.4" - "@npmcli/package-json" "^5.0.0" - "@pnpm/logger" "5.0.0" - "@pnpm/workspace.pkgs-graph" "2.0.14" "@snyk/github-codeowners" "1.1.0" - "@types/picomatch" "2.3.3" easy-table "1.2.0" fast-glob "3.3.2" + file-entry-cache "8.0.0" jiti "1.21.0" js-yaml "4.1.0" - micromatch "4.0.5" minimist "1.2.8" picocolors "1.0.0" picomatch "^4.0.1" @@ -5251,16 +4995,6 @@ listr2@8.0.1: rfdc "^1.3.0" wrap-ansi "^9.0.0" -load-json-file@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" - integrity sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ== - dependencies: - graceful-fs "^4.1.15" - parse-json "^5.0.0" - strip-bom "^4.0.0" - type-fest "^0.6.0" - locate-path@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" @@ -5316,11 +5050,6 @@ loglevel@^1.7.1: resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.9.1.tgz#d63976ac9bcd03c7c873116d41c2a85bafff1be7" integrity sha512-hP3I3kCrDIMuRwAwHltphhDM1r8i55H33GgqjXbrisuJhF4kRhW1dNuxsRklp4bXl8DSdLaNLuiL4A/LWRfxvg== -lru-cache@^10.0.1, lru-cache@^10.0.2, lru-cache@^10.2.0: - version "10.2.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.0.tgz#0bd445ca57363465900f4d1f9bd8db343a4d95c3" - integrity sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q== - lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -5379,13 +5108,6 @@ makeerror@1.0.12: dependencies: tmpl "1.0.5" -map-age-cleaner@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" - integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== - dependencies: - p-defer "^1.0.0" - map-obj@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" @@ -5416,22 +5138,6 @@ matrix-widget-api@^1.6.0: "@types/events" "^3.0.0" events "^3.2.0" -mem@^6.0.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/mem/-/mem-6.1.1.tgz#ea110c2ebc079eca3022e6b08c85a795e77f6318" - integrity sha512-Ci6bIfq/UgcxPTYa8dQQ5FY3BzKkT894bwXWXxC/zqs0XgMO2cT20CGkOqda7gZNkmK5VP4x89IGZ6K7hfbn3Q== - dependencies: - map-age-cleaner "^0.1.3" - mimic-fn "^3.0.0" - -mem@^8.0.0: - version "8.1.1" - resolved "https://registry.yarnpkg.com/mem/-/mem-8.1.1.tgz#cf118b357c65ab7b7e0817bdf00c8062297c0122" - integrity sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA== - dependencies: - map-age-cleaner "^0.1.3" - mimic-fn "^3.1.0" - merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -5467,11 +5173,6 @@ mimic-fn@^2.1.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -mimic-fn@^3.0.0, mimic-fn@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-3.1.0.tgz#65755145bbf3e36954b949c16450427451d5ca74" - integrity sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ== - mimic-fn@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" @@ -5496,19 +5197,19 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" -minimatch@^9.0.0, minimatch@^9.0.3, minimatch@^9.0.4: +minimatch@^9.0.3, minimatch@^9.0.4: version "9.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51" integrity sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw== dependencies: brace-expansion "^2.0.1" -minimist@1.2.8, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: +minimist@1.2.8, minimist@^1.2.0, minimist@^1.2.6: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.3, minipass@^7.0.4: +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": version "7.0.4" resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== @@ -5533,25 +5234,6 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -ndjson@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ndjson/-/ndjson-2.0.0.tgz#320ac86f6fe53f5681897349b86ac6f43bfa3a19" - integrity sha512-nGl7LRGrzugTtaFcJMhLbpzJM6XdivmbkdlaGcrk/LXg2KL/YBC6z1g70xh0/al+oFuVFP8N8kiWRucmeEH/qQ== - dependencies: - json-stringify-safe "^5.0.1" - minimist "^1.2.5" - readable-stream "^3.6.0" - split2 "^3.0.0" - through2 "^4.0.0" - -node-fetch@3.0.0-beta.9: - version "3.0.0-beta.9" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.0.0-beta.9.tgz#0a7554cfb824380dd6812864389923c783c80d9b" - integrity sha512-RdbZCEynH2tH46+tj0ua9caUHVWrd/RHnRfvly2EVdqGmI3ndS1Vn/xjm5KuGejDt2RNDQsVRLPNd2QPwcewVg== - dependencies: - data-uri-to-buffer "^3.0.1" - fetch-blob "^2.1.1" - node-fetch@^2.7.0: version "2.7.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" @@ -5579,53 +5261,11 @@ normalize-package-data@^2.5.0: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-package-data@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-6.0.0.tgz#68a96b3c11edd462af7189c837b6b1064a484196" - integrity sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg== - dependencies: - hosted-git-info "^7.0.0" - is-core-module "^2.8.1" - semver "^7.3.5" - validate-npm-package-license "^3.0.4" - normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -npm-install-checks@^6.0.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-6.3.0.tgz#046552d8920e801fa9f919cad569545d60e826fe" - integrity sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw== - dependencies: - semver "^7.1.1" - -npm-normalize-package-bin@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz#25447e32a9a7de1f51362c61a559233b89947832" - integrity sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ== - -npm-package-arg@^11.0.0: - version "11.0.1" - resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-11.0.1.tgz#f208b0022c29240a1c532a449bdde3f0a4708ebc" - integrity sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ== - dependencies: - hosted-git-info "^7.0.0" - proc-log "^3.0.0" - semver "^7.3.5" - validate-npm-package-name "^5.0.0" - -npm-pick-manifest@^9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz#f87a4c134504a2c7931f2bb8733126e3c3bb7e8f" - integrity sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg== - dependencies: - npm-install-checks "^6.0.0" - npm-normalize-package-bin "^3.0.0" - npm-package-arg "^11.0.0" - semver "^7.3.5" - npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" @@ -5743,11 +5383,6 @@ optionator@^0.9.3: prelude-ls "^1.2.1" type-check "^0.4.0" -p-defer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" - integrity sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw== - p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" @@ -5783,14 +5418,6 @@ p-map@^4.0.0: dependencies: aggregate-error "^3.0.0" -p-memoize@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/p-memoize/-/p-memoize-4.0.1.tgz#6f4231857fec10de2504611fe820c808fa8c5f8b" - integrity sha512-km0sP12uE0dOZ5qP+s7kGVf07QngxyG0gS8sYFvFWhqlgzOsSy+m71aUejf/0akxj5W7gE//2G74qTv6b4iMog== - dependencies: - mem "^6.0.1" - mimic-fn "^3.0.0" - p-retry@4: version "4.6.2" resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.6.2.tgz#9baae7184057edd4e17231cee04264106e092a16" @@ -5826,13 +5453,6 @@ parse-ms@^4.0.0: resolved "https://registry.yarnpkg.com/parse-ms/-/parse-ms-4.0.0.tgz#c0c058edd47c2a590151a718990533fd62803df4" integrity sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw== -parse-npm-tarball-url@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/parse-npm-tarball-url/-/parse-npm-tarball-url-3.0.0.tgz#4bcdd84b7eb824b9539182dea082f7bde2cbb24f" - integrity sha512-InpdgIdNe5xWMEUcrVQUniQKwnggBtJ7+SCwh7zQAZwbbIYZV9XdgJyhtmDSSvykFyQXoe4BINnzKTfCwWLs5g== - dependencies: - semver "^6.1.0" - parse5@^7.0.0, parse5@^7.1.1: version "7.1.2" resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" @@ -5873,21 +5493,6 @@ path-scurry@^1.10.1: lru-cache "^9.1.1 || ^10.0.0" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" -path-scurry@^1.10.2: - version "1.10.2" - resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.2.tgz#8f6357eb1239d5fa1da8b9f70e9c080675458ba7" - integrity sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA== - dependencies: - lru-cache "^10.2.0" - minipass "^5.0.0 || ^6.0.2 || ^7.0.0" - -path-temp@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-temp/-/path-temp-2.1.0.tgz#cc68bb26d4fc301df799bb40b8c005cab0e62786" - integrity sha512-cMMJTAZlion/RWRRC48UbrDymEIt+/YSD/l8NqjneyDw2rDOBQcP5yRkMB4CYGn47KMhZvbblBP7Z79OsMw72w== - dependencies: - unique-string "^2.0.0" - path-to-regexp@^2.2.1: version "2.4.0" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-2.4.0.tgz#35ce7f333d5616f1c1e1bfe266c3aba2e5b2e704" @@ -5976,29 +5581,6 @@ pretty-ms@9.0.0: dependencies: parse-ms "^4.0.0" -proc-log@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-3.0.0.tgz#fb05ef83ccd64fd7b20bbe9c8c1070fc08338dd8" - integrity sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A== - -proc-log@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-4.1.0.tgz#ab6c1552b454e9e467cb58119179e4557d109b34" - integrity sha512-dmQ2iPw2nJMi9/4dpaG1wd0m1GE+K5kW7RGbjy5hoEEGnhPIzsm+klBO5RGGdcoYbWsNtU2KSNAdEldts+icLg== - -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== - -promise-retry@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" - integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== - dependencies: - err-code "^2.0.2" - retry "^0.12.0" - prompts@^2.0.1: version "2.4.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" @@ -6049,24 +5631,11 @@ queue-microtask@^1.2.2: resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== -"ramda@npm:@pnpm/ramda@0.28.1": - version "0.28.1" - resolved "https://registry.yarnpkg.com/@pnpm/ramda/-/ramda-0.28.1.tgz#0f32abc5275d586a03e0dc1dd90a009ac668ff33" - integrity sha512-zcAG+lvU0fMziNeGXpPyCyCJYp5ZVrPElEE4t14jAmViaihohocZ+dDkcRIyAomox8pQsuZnv1EyHR+pOhmUWw== - react-is@^18.0.0: version "18.2.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== -read-package-json-fast@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz#394908a9725dc7a5f14e70c8e7556dff1d2b1049" - integrity sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw== - dependencies: - json-parse-even-better-errors "^3.0.0" - npm-normalize-package-bin "^3.0.0" - read-pkg-up@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" @@ -6086,15 +5655,6 @@ read-pkg@^5.2.0: parse-json "^5.0.0" type-fest "^0.6.0" -readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.6.0: - version "3.6.2" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" - integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - readdirp@~3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -6166,14 +5726,6 @@ regjsparser@^0.9.1: dependencies: jsesc "~0.5.0" -rename-overwrite@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/rename-overwrite/-/rename-overwrite-5.0.0.tgz#ccd1f85aef47d41647ccc1c681d9b6d054cf5fc8" - integrity sha512-vSxE5Ww7Jnyotvaxi3Dj0vOMoojH8KMkBfs9xYeW/qNfJiLTcC1fmwTjrbGUq3mQSOCxkG0DbdcvwTUrpvBN4w== - dependencies: - "@zkochan/rimraf" "^2.1.2" - fs-extra "10.1.0" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -6245,11 +5797,6 @@ restore-cursor@^4.0.0: onetime "^5.1.0" signal-exit "^3.0.2" -retry@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" - integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== - retry@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" @@ -6301,7 +5848,7 @@ safe-array-concat@^1.0.1: has-symbols "^1.0.3" isarray "^2.0.5" -safe-buffer@^5.0.1, safe-buffer@~5.2.0: +safe-buffer@^5.0.1: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -6337,18 +5884,11 @@ sdp-transform@^2.14.1: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -semver@^6.1.0, semver@^6.3.0, semver@^6.3.1: +semver@^6.3.0, semver@^6.3.1: version "6.3.1" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.0.0, semver@^7.1.1, semver@^7.3.2, semver@^7.3.5, semver@^7.4.0, semver@^7.5.4, semver@^7.6.0: - version "7.6.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" - integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== - dependencies: - lru-cache "^6.0.0" - semver@^7.5.3: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" @@ -6356,6 +5896,13 @@ semver@^7.5.3: dependencies: lru-cache "^6.0.0" +semver@^7.5.4, semver@^7.6.0: + version "7.6.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" + integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== + dependencies: + lru-cache "^6.0.0" + set-function-length@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.1.1.tgz#4bc39fafb0307224a33e106a7d35ca1218d659ed" @@ -6504,25 +6051,11 @@ spdx-license-ids@^3.0.0: resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz#887da8aa73218e51a1d917502d79863161a93f9c" integrity sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg== -split2@^3.0.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" - integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg== - dependencies: - readable-stream "^3.0.0" - sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== -ssri@10.0.5: - version "10.0.5" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-10.0.5.tgz#e49efcd6e36385196cb515d3a2ad6c3f0265ef8c" - integrity sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A== - dependencies: - minipass "^7.0.3" - stack-utils@^2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" @@ -6611,13 +6144,6 @@ string.prototype.trimstart@^1.0.7: define-properties "^1.2.0" es-abstract "^1.22.1" -string_decoder@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" - integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== - dependencies: - safe-buffer "~5.2.0" - "strip-ansi-cjs@npm:strip-ansi@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -6731,13 +6257,6 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== -through2@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764" - integrity sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw== - dependencies: - readable-stream "3" - tmpl@1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" @@ -6998,23 +6517,11 @@ unicode-property-aliases-ecmascript@^2.0.0: resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== -unique-string@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" - integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== - dependencies: - crypto-random-string "^2.0.0" - universalify@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== -universalify@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" - integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== - update-browserslist-db@^1.0.13: version "1.0.13" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" @@ -7038,11 +6545,6 @@ url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -util-deprecate@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== - uuid@8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" @@ -7067,7 +6569,7 @@ v8-to-istanbul@^9.0.1: "@types/istanbul-lib-coverage" "^2.0.1" convert-source-map "^1.6.0" -validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: +validate-npm-package-license@^3.0.1: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== @@ -7075,27 +6577,6 @@ validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" -validate-npm-package-name@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz#fe8f1c50ac20afdb86f177da85b3600f0ac0d747" - integrity sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q== - dependencies: - builtins "^5.0.0" - -validate-npm-package-name@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz#f16afd48318e6f90a1ec101377fa0384cfc8c713" - integrity sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ== - dependencies: - builtins "^5.0.0" - -version-selector-type@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/version-selector-type/-/version-selector-type-3.0.0.tgz#47c365fb4d9ca4a54e6dabcad6fb7a46265f7955" - integrity sha512-PSvMIZS7C1MuVNBXl/CDG2pZq8EXy/NW2dHIdm3bVP5N0PC8utDK8ttXLXj44Gn3J0lQE3U7Mpm1estAOd+eiA== - dependencies: - semver "^7.3.2" - vlq@^0.2.1: version "0.2.3" resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.3.tgz#8f3e4328cf63b1540c0d67e1b2778386f8975b26" @@ -7224,13 +6705,6 @@ which@^2.0.1: dependencies: isexe "^2.0.0" -which@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/which/-/which-4.0.0.tgz#cd60b5e74503a3fbcfbf6cd6b4138a8bae644c1a" - integrity sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg== - dependencies: - isexe "^3.1.1" - "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" @@ -7349,11 +6823,11 @@ yocto-queue@^0.1.0: integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== zod-validation-error@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.1.0.tgz#ce6b74a67b1b28cbbc41f890e88b2778f856e1fe" - integrity sha512-zujS6HqJjMZCsvjfbnRs7WI3PXN39ovTcY1n8a+KTm4kOH0ZXYsNiJkH1odZf4xZKMkBDL7M2rmQ913FCS1p9w== + version "3.2.0" + resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.2.0.tgz#df2ef6a8531d959324990599fb58206ca9479093" + integrity sha512-cYlPR6zuyrgmu2wRTdumEAJGuwI7eHVHGT+VyneAQxmRAKtGRL1/7pjz4wfLhz4J05f5qoSZc3rGacswgyTjjw== zod@^3.22.4: - version "3.22.4" - resolved "https://registry.yarnpkg.com/zod/-/zod-3.22.4.tgz#f31c3a9386f61b1f228af56faa9255e845cf3fff" - integrity sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg== + version "3.23.5" + resolved "https://registry.yarnpkg.com/zod/-/zod-3.23.5.tgz#c7b7617d017d4a2f21852f533258d26a9a5ae09f" + integrity sha512-fkwiq0VIQTksNNA131rDOsVJcns0pfVUjHzLrNBiF/O/Xxb5lQyEXkhZWcJ7npWsYlvs+h0jFWXXy4X46Em1JA== From bc2c8701528a20f205fddea63cec000d27c3f7b8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 30 Apr 2024 13:17:37 +0000 Subject: [PATCH 206/595] Update babel monorepo to v7.24.5 (#4181) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 362 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 187 insertions(+), 175 deletions(-) diff --git a/yarn.lock b/yarn.lock index 4bdb806833a..4d8e58ef703 100644 --- a/yarn.lock +++ b/yarn.lock @@ -28,9 +28,9 @@ "@jridgewell/trace-mapping" "^0.3.24" "@babel/cli@^7.12.10": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.1.tgz#2e11e071e32fe82850b4fe514f56b9c9e1c44911" - integrity sha512-HbmrtxyFUr34LwAlV9jS+sSIjUp4FpdtIMGwgufY3AsxrIfsh/HxlMTywsONAZsU0RMYbZtbZFpUCrSGs7o0EA== + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.5.tgz#9eba21699f289c32e63a28aedf82f888dc134b30" + integrity sha512-2qg1mYtJRsOOWF6IUwLP5jI42P8Cc0hQ5TmnjLrik/4DKouO8dFJN80HEz81VmVeUs97yuuf3vQ/9j7Elrcjlg== dependencies: "@jridgewell/trace-mapping" "^0.3.25" commander "^4.0.1" @@ -59,7 +59,7 @@ "@babel/highlight" "^7.23.4" chalk "^2.4.2" -"@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.1", "@babel/code-frame@^7.24.2": +"@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.2": version "7.24.2" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.2.tgz#718b4b19841809a58b29b68cde80bc5e1aa6d9ae" integrity sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ== @@ -83,20 +83,20 @@ integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== "@babel/core@^7.0.0", "@babel/core@^7.12.10": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.4.tgz#1f758428e88e0d8c563874741bc4ffc4f71a4717" - integrity sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg== + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.5.tgz#15ab5b98e101972d171aeef92ac70d8d6718f06a" + integrity sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA== dependencies: "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.24.2" - "@babel/generator" "^7.24.4" + "@babel/generator" "^7.24.5" "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.24.4" - "@babel/parser" "^7.24.4" + "@babel/helper-module-transforms" "^7.24.5" + "@babel/helpers" "^7.24.5" + "@babel/parser" "^7.24.5" "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.1" - "@babel/types" "^7.24.0" + "@babel/traverse" "^7.24.5" + "@babel/types" "^7.24.5" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -125,18 +125,18 @@ semver "^6.3.1" "@babel/eslint-parser@^7.12.10": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.1.tgz#e27eee93ed1d271637165ef3a86e2b9332395c32" - integrity sha512-d5guuzMlPeDfZIbpQ8+g1NaCNuAGBBGNECh0HVqz1sjOeVLh2CEaifuOysCH18URW6R7pqXINvf5PaR/dC6jLQ== + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.5.tgz#3b0f7d383a540329a30a6a9937cfc89461d26217" + integrity sha512-gsUcqS/fPlgAw1kOtpss7uhY6E9SFFANQ6EFX5GTvzUwaV0+sGaZWk6xq22MOdeT9wfxyokW3ceCUvOiRtZciQ== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" semver "^6.3.1" "@babel/eslint-plugin@^7.12.10": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.23.5.tgz#77d4703e9f83b81e9fc13382810372beb2f10f94" - integrity sha512-03+E/58Hoo/ui69gR+beFdGpplpoVK0BSIdke2iw4/Bz7eGN0ssRenNlnU4nmbkowNQOPCStKSwFr8H6DiY49g== + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.24.5.tgz#6581b9005ab76308e4aef6b50aa1788099393211" + integrity sha512-5n3K9Zv13VOa9SG2ZiX0WV7A0ddApRn6vsV8zBojCsxnCbYKLjCDvzDfVxS7C4STmjQDOXU1uk/ppxxDTC860w== dependencies: eslint-rule-composer "^0.3.0" @@ -160,12 +160,12 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" -"@babel/generator@^7.24.1", "@babel/generator@^7.24.4": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.4.tgz#1fc55532b88adf952025d5d2d1e71f946cb1c498" - integrity sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw== +"@babel/generator@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.5.tgz#e5afc068f932f05616b66713e28d0f04e99daeb3" + integrity sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA== dependencies: - "@babel/types" "^7.24.0" + "@babel/types" "^7.24.5" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" @@ -221,19 +221,19 @@ "@babel/helper-split-export-declaration" "^7.22.6" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.24.1", "@babel/helper-create-class-features-plugin@^7.24.4": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz#c806f73788a6800a5cfbbc04d2df7ee4d927cce3" - integrity sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ== +"@babel/helper-create-class-features-plugin@^7.24.1", "@babel/helper-create-class-features-plugin@^7.24.4", "@babel/helper-create-class-features-plugin@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.5.tgz#7d19da92c7e0cd8d11c09af2ce1b8e7512a6e723" + integrity sha512-uRc4Cv8UQWnE4NXlYTIIdM7wfFkOqlFztcC/gVXDKohKoVB3OyonfelUBaJzSwpBntZ2KYGF/9S7asCHsXwW6g== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-function-name" "^7.23.0" - "@babel/helper-member-expression-to-functions" "^7.23.0" + "@babel/helper-member-expression-to-functions" "^7.24.5" "@babel/helper-optimise-call-expression" "^7.22.5" "@babel/helper-replace-supers" "^7.24.1" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/helper-split-export-declaration" "^7.24.5" semver "^6.3.1" "@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.15", "@babel/helper-create-regexp-features-plugin@^7.22.5": @@ -245,10 +245,10 @@ regexpu-core "^5.3.1" semver "^6.3.1" -"@babel/helper-define-polyfill-provider@^0.6.1": - version "0.6.1" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.1.tgz#fadc63f0c2ff3c8d02ed905dcea747c5b0fb74fd" - integrity sha512-o7SDgTJuvx5vLKD6SFvkydkSMBvahDKGiNJzG22IZYXhiqoe9efY7zocICBgzHV4IRg5wdgl2nEL/tulKIEIbA== +"@babel/helper-define-polyfill-provider@^0.6.1", "@babel/helper-define-polyfill-provider@^0.6.2": + version "0.6.2" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz#18594f789c3594acb24cfdb4a7f7b7d2e8bd912d" + integrity sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ== dependencies: "@babel/helper-compilation-targets" "^7.22.6" "@babel/helper-plugin-utils" "^7.22.5" @@ -276,7 +276,7 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-member-expression-to-functions@^7.22.15", "@babel/helper-member-expression-to-functions@^7.23.0": +"@babel/helper-member-expression-to-functions@^7.22.15": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366" integrity sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA== @@ -290,6 +290,13 @@ dependencies: "@babel/types" "^7.22.15" +"@babel/helper-member-expression-to-functions@^7.23.0", "@babel/helper-member-expression-to-functions@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.5.tgz#5981e131d5c7003c7d1fa1ad49e86c9b097ec475" + integrity sha512-4owRteeihKWKamtqg4JmWSsEZU445xpFRXPEwp44HbgbxdWlUV1b4Agg4lkA806Lil5XM/e+FJyS0vj5T6vmcA== + dependencies: + "@babel/types" "^7.24.5" + "@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.24.1", "@babel/helper-module-imports@^7.24.3": version "7.24.3" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128" @@ -308,16 +315,16 @@ "@babel/helper-split-export-declaration" "^7.22.6" "@babel/helper-validator-identifier" "^7.22.15" -"@babel/helper-module-transforms@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz#d7d12c3c5d30af5b3c0fcab2a6d5217773e2d0f1" - integrity sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ== +"@babel/helper-module-transforms@^7.23.3", "@babel/helper-module-transforms@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz#ea6c5e33f7b262a0ae762fd5986355c45f54a545" + integrity sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A== dependencies: "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-simple-access" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-module-imports" "^7.24.3" + "@babel/helper-simple-access" "^7.24.5" + "@babel/helper-split-export-declaration" "^7.24.5" + "@babel/helper-validator-identifier" "^7.24.5" "@babel/helper-optimise-call-expression@^7.22.5": version "7.22.5" @@ -326,10 +333,10 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.0", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz#945681931a52f15ce879fd5b86ce2dae6d3d7f2a" - integrity sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.0", "@babel/helper-plugin-utils@^7.24.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz#a924607dd254a65695e5bd209b98b902b3b2f11a" + integrity sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ== "@babel/helper-plugin-utils@^7.20.2": version "7.22.5" @@ -363,12 +370,12 @@ "@babel/helper-member-expression-to-functions" "^7.23.0" "@babel/helper-optimise-call-expression" "^7.22.5" -"@babel/helper-simple-access@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" - integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== +"@babel/helper-simple-access@^7.22.5", "@babel/helper-simple-access@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz#50da5b72f58c16b07fbd992810be6049478e85ba" + integrity sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ== dependencies: - "@babel/types" "^7.22.5" + "@babel/types" "^7.24.5" "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": version "7.22.5" @@ -377,28 +384,33 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-split-export-declaration@^7.22.6": - version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" - integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== +"@babel/helper-split-export-declaration@^7.22.6", "@babel/helper-split-export-declaration@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz#b9a67f06a46b0b339323617c8c6213b9055a78b6" + integrity sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q== dependencies: - "@babel/types" "^7.22.5" + "@babel/types" "^7.24.5" "@babel/helper-string-parser@^7.22.5": version "7.23.4" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== -"@babel/helper-string-parser@^7.23.4": +"@babel/helper-string-parser@^7.24.1": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz#f99c36d3593db9540705d0739a1f10b5e20c696e" integrity sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ== -"@babel/helper-validator-identifier@^7.22.15", "@babel/helper-validator-identifier@^7.22.19", "@babel/helper-validator-identifier@^7.22.20": +"@babel/helper-validator-identifier@^7.22.15", "@babel/helper-validator-identifier@^7.22.19": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== +"@babel/helper-validator-identifier@^7.22.20", "@babel/helper-validator-identifier@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz#918b1a7fa23056603506370089bd990d8720db62" + integrity sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA== + "@babel/helper-validator-option@^7.22.5": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" @@ -410,13 +422,13 @@ integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== "@babel/helper-wrap-function@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz#15352b0b9bfb10fc9c76f79f6342c00e3411a569" - integrity sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw== + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.24.5.tgz#335f934c0962e2c1ed1fb9d79e06a56115067c09" + integrity sha512-/xxzuNvgRl4/HLNKvnFwdhdgN3cpLxgLROeLDl83Yx0AJ1SGvq1ak0OszTOjDfiB8Vx03eJbeDWh9r+jCCWttw== dependencies: - "@babel/helper-function-name" "^7.22.5" - "@babel/template" "^7.22.15" - "@babel/types" "^7.22.19" + "@babel/helper-function-name" "^7.23.0" + "@babel/template" "^7.24.0" + "@babel/types" "^7.24.5" "@babel/helpers@^7.22.15": version "7.22.15" @@ -427,14 +439,14 @@ "@babel/traverse" "^7.22.15" "@babel/types" "^7.22.15" -"@babel/helpers@^7.24.4": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.4.tgz#dc00907fd0d95da74563c142ef4cd21f2cb856b6" - integrity sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw== +"@babel/helpers@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.5.tgz#fedeb87eeafa62b621160402181ad8585a22a40a" + integrity sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q== dependencies: "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.1" - "@babel/types" "^7.24.0" + "@babel/traverse" "^7.24.5" + "@babel/types" "^7.24.5" "@babel/highlight@^7.22.13": version "7.23.4" @@ -456,11 +468,11 @@ picocolors "^1.0.0" "@babel/highlight@^7.24.2": - version "7.24.2" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.2.tgz#3f539503efc83d3c59080a10e6634306e0370d26" - integrity sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA== + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.5.tgz#bc0613f98e1dd0720e99b2a9ee3760194a704b6e" + integrity sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw== dependencies: - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-validator-identifier" "^7.24.5" chalk "^2.4.2" js-tokens "^4.0.0" picocolors "^1.0.0" @@ -480,18 +492,18 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.3.tgz#0ce0be31a4ca4f1884b5786057cadcb6c3be58f9" integrity sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw== -"@babel/parser@^7.24.0", "@babel/parser@^7.24.1", "@babel/parser@^7.24.4": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.4.tgz#234487a110d89ad5a3ed4a8a566c36b9453e8c88" - integrity sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg== +"@babel/parser@^7.24.0", "@babel/parser@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.5.tgz#4a4d5ab4315579e5398a82dcf636ca80c3392790" + integrity sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg== -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.4": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.4.tgz#6125f0158543fb4edf1c22f322f3db67f21cb3e1" - integrity sha512-qpl6vOOEEzTLLcsuqYYo8yDtrTocmu2xkGvgNebvPjT9DTtfFYGmgDqY+rBYXNlqL4s9qLDn6xkrJv4RxAPiTA== +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.5.tgz#4c3685eb9cd790bcad2843900fe0250c91ccf895" + integrity sha512-LdXRi1wEMTrHVR4Zc9F8OewC3vdm5h4QB6L71zy6StmYeqGi1b3ttIO8UC+BfZKcH9jdr4aI249rBkm+3+YvHw== dependencies: "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.5" "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.24.1": version "7.24.1" @@ -744,12 +756,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-block-scoping@^7.24.4": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.4.tgz#28f5c010b66fbb8ccdeef853bef1935c434d7012" - integrity sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g== +"@babel/plugin-transform-block-scoping@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.5.tgz#89574191397f85661d6f748d4b89ee4d9ee69a2a" + integrity sha512-sMfBc3OxghjC95BkYrYocHL3NaOplrcaunblzwXhGmlPwpmfsxr4vK+mBBt49r+S240vahmv+kUxkeKgs+haCw== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.5" "@babel/plugin-transform-class-properties@^7.24.1": version "7.24.1" @@ -768,18 +780,18 @@ "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-transform-classes@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.1.tgz#5bc8fc160ed96378184bc10042af47f50884dcb1" - integrity sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q== +"@babel/plugin-transform-classes@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.5.tgz#05e04a09df49a46348299a0e24bfd7e901129339" + integrity sha512-gWkLP25DFj2dwe9Ck8uwMOpko4YsqyfZJrOmqqcegeDYEbp7rmn4U6UQZNj08UF6MaX39XenSpKRCvpDRBtZ7Q== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-function-name" "^7.23.0" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.5" "@babel/helper-replace-supers" "^7.24.1" - "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/helper-split-export-declaration" "^7.24.5" globals "^11.1.0" "@babel/plugin-transform-computed-properties@^7.24.1": @@ -790,12 +802,12 @@ "@babel/helper-plugin-utils" "^7.24.0" "@babel/template" "^7.24.0" -"@babel/plugin-transform-destructuring@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.1.tgz#b1e8243af4a0206841973786292b8c8dd8447345" - integrity sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw== +"@babel/plugin-transform-destructuring@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.5.tgz#80843ee6a520f7362686d1a97a7b53544ede453c" + integrity sha512-SZuuLyfxvsm+Ah57I/i1HVjveBENYK9ue8MJ7qkc7ndoNjqquJiElzA7f5yaAXjyW2hKojosOTAQQRX50bPSVg== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.5" "@babel/plugin-transform-dotall-regex@^7.24.1": version "7.24.1" @@ -949,15 +961,15 @@ "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-transform-object-rest-spread@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.1.tgz#5a3ce73caf0e7871a02e1c31e8b473093af241ff" - integrity sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA== +"@babel/plugin-transform-object-rest-spread@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.5.tgz#f91bbcb092ff957c54b4091c86bda8372f0b10ef" + integrity sha512-7EauQHszLGM3ay7a161tTQH7fj+3vVM/gThlz5HpFtnygTxjrlvoeq7MPVA1Vy9Q555OB8SnAOsMkLShNkkrHA== dependencies: "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.5" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.24.1" + "@babel/plugin-transform-parameters" "^7.24.5" "@babel/plugin-transform-object-super@^7.24.1": version "7.24.1" @@ -975,12 +987,12 @@ "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-transform-optional-chaining@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.1.tgz#26e588acbedce1ab3519ac40cc748e380c5291e6" - integrity sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg== +"@babel/plugin-transform-optional-chaining@^7.24.1", "@babel/plugin-transform-optional-chaining@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.5.tgz#a6334bebd7f9dd3df37447880d0bd64b778e600f" + integrity sha512-xWCkmwKT+ihmA6l7SSTpk8e4qQl/274iNbSKRRS8mpqFR32ksy36+a+LWY8OXCCEefF8WFlnOHVsaDI2231wBg== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.5" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" "@babel/plugin-syntax-optional-chaining" "^7.8.3" @@ -991,12 +1003,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-parameters@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.1.tgz#983c15d114da190506c75b616ceb0f817afcc510" - integrity sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg== +"@babel/plugin-transform-parameters@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.5.tgz#5c3b23f3a6b8fed090f9b98f2926896d3153cc62" + integrity sha512-9Co00MqZ2aoky+4j2jhofErthm6QVLKbpQrvz20c3CH9KQCLHyNB+t2ya4/UrRpQGR+Wrwjg9foopoeSdnHOkA== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.5" "@babel/plugin-transform-private-methods@^7.24.1": version "7.24.1" @@ -1006,14 +1018,14 @@ "@babel/helper-create-class-features-plugin" "^7.24.1" "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-private-property-in-object@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.1.tgz#756443d400274f8fb7896742962cc1b9f25c1f6a" - integrity sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg== +"@babel/plugin-transform-private-property-in-object@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.5.tgz#f5d1fcad36e30c960134cb479f1ca98a5b06eda5" + integrity sha512-JM4MHZqnWR04jPMujQDTBVRnqxpLLpx2tkn7iPn+Hmsc0Gnb79yvRWOkvqFOx3Z7P7VxiRIR22c4eGSNj87OBQ== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.24.1" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-create-class-features-plugin" "^7.24.5" + "@babel/helper-plugin-utils" "^7.24.5" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" "@babel/plugin-transform-property-literals@^7.24.1": @@ -1079,12 +1091,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-typeof-symbol@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.1.tgz#6831f78647080dec044f7e9f68003d99424f94c7" - integrity sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA== +"@babel/plugin-transform-typeof-symbol@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.5.tgz#703cace5ef74155fb5eecab63cbfc39bdd25fe12" + integrity sha512-UTGnhYVZtTAjdwOTzT+sCyXmTn8AhaxOS/MjG9REclZ6ULHWF9KoCZur0HSGU7hk8PdBFKKbYe6+gqdXWz84Jg== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.5" "@babel/plugin-transform-typescript@^7.24.1": version "7.24.1" @@ -1128,15 +1140,15 @@ "@babel/helper-plugin-utils" "^7.24.0" "@babel/preset-env@^7.12.11": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.4.tgz#46dbbcd608771373b88f956ffb67d471dce0d23b" - integrity sha512-7Kl6cSmYkak0FK/FXjSEnLJ1N9T/WA2RkMhu17gZ/dsxKJUuTYNIylahPTzqpLyJN4WhDif8X0XK1R8Wsguo/A== + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.5.tgz#6a9ac90bd5a5a9dae502af60dfc58c190551bbcd" + integrity sha512-UGK2ifKtcC8i5AI4cH+sbLLuLc2ktYSFJgBAXorKAsHUZmrQ1q6aQ6i3BvU24wWs2AAKqQB6kq3N9V9Gw1HiMQ== dependencies: "@babel/compat-data" "^7.24.4" "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.5" "@babel/helper-validator-option" "^7.23.5" - "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.4" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.5" "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.1" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.1" "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.24.1" @@ -1163,12 +1175,12 @@ "@babel/plugin-transform-async-generator-functions" "^7.24.3" "@babel/plugin-transform-async-to-generator" "^7.24.1" "@babel/plugin-transform-block-scoped-functions" "^7.24.1" - "@babel/plugin-transform-block-scoping" "^7.24.4" + "@babel/plugin-transform-block-scoping" "^7.24.5" "@babel/plugin-transform-class-properties" "^7.24.1" "@babel/plugin-transform-class-static-block" "^7.24.4" - "@babel/plugin-transform-classes" "^7.24.1" + "@babel/plugin-transform-classes" "^7.24.5" "@babel/plugin-transform-computed-properties" "^7.24.1" - "@babel/plugin-transform-destructuring" "^7.24.1" + "@babel/plugin-transform-destructuring" "^7.24.5" "@babel/plugin-transform-dotall-regex" "^7.24.1" "@babel/plugin-transform-duplicate-keys" "^7.24.1" "@babel/plugin-transform-dynamic-import" "^7.24.1" @@ -1188,13 +1200,13 @@ "@babel/plugin-transform-new-target" "^7.24.1" "@babel/plugin-transform-nullish-coalescing-operator" "^7.24.1" "@babel/plugin-transform-numeric-separator" "^7.24.1" - "@babel/plugin-transform-object-rest-spread" "^7.24.1" + "@babel/plugin-transform-object-rest-spread" "^7.24.5" "@babel/plugin-transform-object-super" "^7.24.1" "@babel/plugin-transform-optional-catch-binding" "^7.24.1" - "@babel/plugin-transform-optional-chaining" "^7.24.1" - "@babel/plugin-transform-parameters" "^7.24.1" + "@babel/plugin-transform-optional-chaining" "^7.24.5" + "@babel/plugin-transform-parameters" "^7.24.5" "@babel/plugin-transform-private-methods" "^7.24.1" - "@babel/plugin-transform-private-property-in-object" "^7.24.1" + "@babel/plugin-transform-private-property-in-object" "^7.24.5" "@babel/plugin-transform-property-literals" "^7.24.1" "@babel/plugin-transform-regenerator" "^7.24.1" "@babel/plugin-transform-reserved-words" "^7.24.1" @@ -1202,7 +1214,7 @@ "@babel/plugin-transform-spread" "^7.24.1" "@babel/plugin-transform-sticky-regex" "^7.24.1" "@babel/plugin-transform-template-literals" "^7.24.1" - "@babel/plugin-transform-typeof-symbol" "^7.24.1" + "@babel/plugin-transform-typeof-symbol" "^7.24.5" "@babel/plugin-transform-unicode-escapes" "^7.24.1" "@babel/plugin-transform-unicode-property-regex" "^7.24.1" "@babel/plugin-transform-unicode-regex" "^7.24.1" @@ -1240,9 +1252,9 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.4.tgz#de795accd698007a66ba44add6cc86542aff1edd" - integrity sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA== + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.5.tgz#230946857c053a36ccc66e1dd03b17dd0c4ed02c" + integrity sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g== dependencies: regenerator-runtime "^0.14.0" @@ -1280,19 +1292,19 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/traverse@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.1.tgz#d65c36ac9dd17282175d1e4a3c49d5b7988f530c" - integrity sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ== +"@babel/traverse@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.5.tgz#972aa0bc45f16983bf64aa1f877b2dd0eea7e6f8" + integrity sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA== dependencies: - "@babel/code-frame" "^7.24.1" - "@babel/generator" "^7.24.1" + "@babel/code-frame" "^7.24.2" + "@babel/generator" "^7.24.5" "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-function-name" "^7.23.0" "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.24.1" - "@babel/types" "^7.24.0" + "@babel/helper-split-export-declaration" "^7.24.5" + "@babel/parser" "^7.24.5" + "@babel/types" "^7.24.5" debug "^4.3.1" globals "^11.1.0" @@ -1305,13 +1317,13 @@ "@babel/helper-validator-identifier" "^7.22.15" to-fast-properties "^2.0.0" -"@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.4.4": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf" - integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w== +"@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.24.5", "@babel/types@^7.4.4": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.5.tgz#7661930afc638a5383eb0c4aee59b74f38db84d7" + integrity sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ== dependencies: - "@babel/helper-string-parser" "^7.23.4" - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-string-parser" "^7.24.1" + "@babel/helper-validator-identifier" "^7.24.5" to-fast-properties "^2.0.0" "@babel/types@^7.22.17": @@ -2529,12 +2541,12 @@ babel-plugin-jest-hoist@^29.6.3: "@types/babel__traverse" "^7.0.6" babel-plugin-polyfill-corejs2@^0.4.10: - version "0.4.10" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.10.tgz#276f41710b03a64f6467433cab72cbc2653c38b1" - integrity sha512-rpIuu//y5OX6jVU+a5BCn1R5RSZYWAl2Nar76iwaOdycqb6JPxediskWFMMl7stfwNJR4b7eiQvh5fB5TEQJTQ== + version "0.4.11" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz#30320dfe3ffe1a336c15afdcdafd6fd615b25e33" + integrity sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q== dependencies: "@babel/compat-data" "^7.22.6" - "@babel/helper-define-polyfill-provider" "^0.6.1" + "@babel/helper-define-polyfill-provider" "^0.6.2" semver "^6.3.1" babel-plugin-polyfill-corejs3@^0.10.1, babel-plugin-polyfill-corejs3@^0.10.4: @@ -2546,11 +2558,11 @@ babel-plugin-polyfill-corejs3@^0.10.1, babel-plugin-polyfill-corejs3@^0.10.4: core-js-compat "^3.36.1" babel-plugin-polyfill-regenerator@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.1.tgz#4f08ef4c62c7a7f66a35ed4c0d75e30506acc6be" - integrity sha512-JfTApdE++cgcTWjsiCQlLyFBMbTUft9ja17saCc93lgV33h4tuCVj7tlvu//qpLwaG+3yEz7/KhahGrUMkVq9g== + version "0.6.2" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz#addc47e240edd1da1058ebda03021f382bba785e" + integrity sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg== dependencies: - "@babel/helper-define-polyfill-provider" "^0.6.1" + "@babel/helper-define-polyfill-provider" "^0.6.2" babel-preset-current-node-syntax@^1.0.0: version "1.0.1" @@ -2701,9 +2713,9 @@ caniuse-lite@^1.0.30001565: integrity sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q== caniuse-lite@^1.0.30001587: - version "1.0.30001610" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001610.tgz#2f44ed6e21d359e914271ae35b68903632628ccf" - integrity sha512-QFutAY4NgaelojVMjY63o6XlZyORPaLfyMnsl3HgnWdJUcX6K0oaJymHjH8PT5Gk7sTm8rvC/c5COUQKXqmOMA== + version "1.0.30001614" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001614.tgz#f894b4209376a0bf923d67d9c361d96b1dfebe39" + integrity sha512-jmZQ1VpmlRwHgdP1/uiKzgiAuGOfLEJsYFP4+GBou/QQ4U6IOJCB4NP1c+1p9RGLpwObcT94jA5/uO+F1vBbog== chalk@5.2.0: version "5.2.0" @@ -2897,9 +2909,9 @@ convert-source-map@^2.0.0: integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== core-js-compat@^3.31.0, core-js-compat@^3.36.1: - version "3.36.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.36.1.tgz#1818695d72c99c25d621dca94e6883e190cea3c8" - integrity sha512-Dk997v9ZCt3X/npqzyGdTlq6t7lDBhZwGvV94PKzDArjp7BTRm7WlDAXYd/OWdeFHO8OChQYRJNJvUCqCbrtKA== + version "3.37.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.37.0.tgz#d9570e544163779bb4dff1031c7972f44918dc73" + integrity sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA== dependencies: browserslist "^4.23.0" @@ -3105,9 +3117,9 @@ electron-to-chromium@^1.4.601: integrity sha512-2yszojF7vIZ68adIOvzV4bku8OZad9w5H9xF3ZAMZjPuOjBarlflUkjN6DggdV+L71WZuKUfKUhov/34+G5QHg== electron-to-chromium@^1.4.668: - version "1.4.737" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.737.tgz#3a774a58e04980741f65d440f5fdf57af18b6dde" - integrity sha512-QvLTxaLHKdy5YxvixAw/FfHq2eWLUL9KvsPjp0aHK1gI5d3EDuDgITkvj0nFO2c6zUY3ZqVAJQiBYyQP9tQpfw== + version "1.4.751" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.751.tgz#b5b19742a435c589de02f60c16618150498bbd59" + integrity sha512-2DEPi++qa89SMGRhufWTiLmzqyuGmNF3SK4+PQetW1JKiZdEpF4XQonJXJCzyuYSA6mauiMhbyVhqYAP45Hvfw== emittery@^0.13.1: version "0.13.1" From 4843b4029657d1bc6b73976beb16c55195bfa8ac Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 30 Apr 2024 13:18:45 +0000 Subject: [PATCH 207/595] Update dependency typedoc-plugin-mdn-links to v3.1.22 (#4182) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 4d8e58ef703..f94ebc9510b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6455,9 +6455,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-fxeJRrxQR3yM/aFZU7mOuatgRCztiMCbeNiCRVZKY6VNgOcVMC1HS+ZfZnlbLLteUOdeWleSQ6yntuipz5zi6A== typedoc-plugin-mdn-links@^3.0.3: - version "3.1.21" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.21.tgz#bde151737be1c301117329aacf930cf701cfd860" - integrity sha512-RbGsC6RFDp4u5dhSj+e489dXCDM6CIBin6lluPdpwOZ5C7kCbrvIyh8tSnNd8/vLoSPYVj2wwTu6HbRSjI8fLQ== + version "3.1.23" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.23.tgz#7abe71b728c2cb28bcdca153aefa1160e5f23395" + integrity sha512-YUJjq2cefjt8t15JaDr9dqblVwPjIHrgrnX6IgytrAv5bp5XkJtsb83/VRxa4ZBbWEqzW9BZVLb2IjQzPTCNHw== typedoc-plugin-missing-exports@^2.0.0: version "2.2.0" From 41e8c2af3471dd05503d91a8f4b58bd78cc72ded Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 1 May 2024 11:23:17 +0100 Subject: [PATCH 208/595] Update dependency typedoc-plugin-coverage to v3.1.1 (#4186) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index f94ebc9510b..5a9715f1283 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6450,9 +6450,9 @@ typed-array-length@^1.0.4: is-typed-array "^1.1.9" typedoc-plugin-coverage@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/typedoc-plugin-coverage/-/typedoc-plugin-coverage-3.1.0.tgz#2848956f76e02f927f4c84e85d7ea00dd0e941c9" - integrity sha512-fxeJRrxQR3yM/aFZU7mOuatgRCztiMCbeNiCRVZKY6VNgOcVMC1HS+ZfZnlbLLteUOdeWleSQ6yntuipz5zi6A== + version "3.1.1" + resolved "https://registry.yarnpkg.com/typedoc-plugin-coverage/-/typedoc-plugin-coverage-3.1.1.tgz#dda6f4d12a870ffd231b24d53be859e2e44d9c31" + integrity sha512-PAMYQ4fX7wJo6Y8mMzrISDNRurl5+xSNWEojrt6Yxofb/m7vWrgiP3bid2KXloMlPcSfCoBiJA6F2g3rmu8XTQ== typedoc-plugin-mdn-links@^3.0.3: version "3.1.23" From 402adfbe8a38ccdda5e202d0d56b266c53d41b92 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Thu, 2 May 2024 15:11:09 -0600 Subject: [PATCH 209/595] Add helpers for authenticated media, and associated documentation (#4185) * Add helpers for authenticated media, and associated documentation * Appease the linter --- README.md | 32 ++++++++++++++++++++++++++++++++ spec/unit/content-repo.spec.ts | 24 ++++++++++++++++++++++++ spec/unit/matrix-client.spec.ts | 3 +++ src/client.ts | 19 +++++++++++++++++-- src/content-repo.ts | 32 +++++++++++++++++++++++++++++--- 5 files changed, 105 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 0466b88014e..f958333276d 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,10 @@ endpoints from before Matrix 1.1, for example. # Quickstart +> [!IMPORTANT] +> Servers may require or use authenticated endpoints for media (images, files, avatars, etc). See the +> [Authenticated Media](#authenticated-media) section for information on how to enable support for this. + Using `yarn` instead of `npm` is recommended. Please see the Yarn [install guide](https://classic.yarnpkg.com/en/docs/install) if you do not have it already. @@ -89,6 +93,34 @@ Object.keys(client.store.rooms).forEach((roomId) => { }); ``` +## Authenticated media + +Servers supporting [MSC3916](https://github.com/matrix-org/matrix-spec-proposals/pull/3916) will require clients, like +yours, to include an `Authorization` header when `/download`ing or `/thumbnail`ing media. For NodeJS environments this +may be as easy as the following code snippet, though web browsers may need to use [Service Workers](https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API) +to append the header when using the endpoints in `` elements and similar. + +```javascript +const downloadUrl = client.mxcUrlToHttp( + /*mxcUrl=*/ "mxc://example.org/abc123", // the MXC URI to download/thumbnail, typically from an event or profile + /*width=*/ undefined, // part of the thumbnail API. Use as required. + /*height=*/ undefined, // part of the thumbnail API. Use as required. + /*resizeMethod=*/ undefined, // part of the thumbnail API. Use as required. + /*allowDirectLinks=*/ false, // should generally be left `false`. + /*allowRedirects=*/ true, // implied supported with authentication + /*useAuthentication=*/ true, // the flag we're after in this example +); +const img = await fetch(downloadUrl, { + headers: { + Authorization: `Bearer ${client.getAccessToken()}`, + }, +}); +// Do something with `img`. +``` + +> [!WARNING] +> In future the js-sdk will _only_ return authentication-required URLs, mandating population of the `Authorization` header. + ## What does this SDK do? This SDK provides a full object model around the Matrix Client-Server API and emits diff --git a/spec/unit/content-repo.spec.ts b/spec/unit/content-repo.spec.ts index 33eeab12d5e..e0f0b5e0c76 100644 --- a/spec/unit/content-repo.spec.ts +++ b/spec/unit/content-repo.spec.ts @@ -76,5 +76,29 @@ describe("ContentRepo", function () { baseUrl + "/_matrix/media/v3/download/server.name/resourceid#automade", ); }); + + it("should return an authenticated URL when requested", function () { + const mxcUri = "mxc://server.name/resourceid"; + expect(getHttpUriForMxc(baseUrl, mxcUri, undefined, undefined, undefined, undefined, true, true)).toEqual( + baseUrl + + "/_matrix/client/unstable/org.matrix.msc3916/media/download/server.name/resourceid?allow_redirect=true", + ); + expect(getHttpUriForMxc(baseUrl, mxcUri, 64, 64, "scale", undefined, true, true)).toEqual( + baseUrl + + "/_matrix/client/unstable/org.matrix.msc3916/media/thumbnail/server.name/resourceid?width=64&height=64&method=scale&allow_redirect=true", + ); + }); + + it("should force-enable allow_redirects when useAuthentication is set true", function () { + const mxcUri = "mxc://server.name/resourceid"; + expect(getHttpUriForMxc(baseUrl, mxcUri, undefined, undefined, undefined, undefined, false, true)).toEqual( + baseUrl + + "/_matrix/client/unstable/org.matrix.msc3916/media/download/server.name/resourceid?allow_redirect=true", + ); + expect(getHttpUriForMxc(baseUrl, mxcUri, 64, 64, "scale", undefined, false, true)).toEqual( + baseUrl + + "/_matrix/client/unstable/org.matrix.msc3916/media/thumbnail/server.name/resourceid?width=64&height=64&method=scale&allow_redirect=true", + ); + }); }); }); diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index 62b479f89e4..b83e841fcf6 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -386,6 +386,9 @@ describe("MatrixClient", function () { expect(client.mxcUrlToHttp(mxc, 32, 46, "scale", false, true)).toBe( getHttpUriForMxc(client.baseUrl, mxc, 32, 46, "scale", false, true), ); + expect(client.mxcUrlToHttp(mxc, 32, 46, "scale", false, true, true)).toBe( + getHttpUriForMxc(client.baseUrl, mxc, 32, 46, "scale", false, true, true), + ); }); }); diff --git a/src/client.ts b/src/client.ts index 64e6855ea79..bbaf8fd8f80 100644 --- a/src/client.ts +++ b/src/client.ts @@ -5775,7 +5775,12 @@ export class MatrixClient extends TypedEventEmitter = {}; if (width) { @@ -68,7 +89,12 @@ export function getHttpUriForMxc( if (Object.keys(params).length > 0) { // these are thumbnailing params so they probably want the // thumbnailing API... - prefix = "/_matrix/media/v3/thumbnail/"; + if (useAuthentication) { + // TODO: Use stable once available (requires FCP on MSC3916). + prefix = "/_matrix/client/unstable/org.matrix.msc3916/media/thumbnail/"; + } else { + prefix = "/_matrix/media/v3/thumbnail/"; + } } if (typeof allowRedirects === "boolean") { From ef9490c7b14e6d3e8f3e36c7e7904ed192ab16d9 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Thu, 2 May 2024 17:09:15 -0600 Subject: [PATCH 210/595] Add missing (and common-ish) HTTP method verbs to types (#4188) --- src/http-api/method.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/http-api/method.ts b/src/http-api/method.ts index 1914360e3a3..416be7c4b54 100644 --- a/src/http-api/method.ts +++ b/src/http-api/method.ts @@ -19,4 +19,7 @@ export enum Method { Put = "PUT", Post = "POST", Delete = "DELETE", + Options = "OPTIONS", + Head = "HEAD", + Patch = "PATCH", } From 9ecb1a0381944370e3119d1a382185fb4bdc91a9 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 7 May 2024 09:50:37 +0100 Subject: [PATCH 211/595] Fix sendEventHttpRequest for `m.room.redaction` events without `redacts` (#4192) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/client.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/client.ts b/src/client.ts index bbaf8fd8f80..78afe5387c2 100644 --- a/src/client.ts +++ b/src/client.ts @@ -4876,10 +4876,10 @@ export class MatrixClient extends TypedEventEmitter Date: Tue, 7 May 2024 11:21:57 +0100 Subject: [PATCH 212/595] Simplify OIDC types & export `decodeIdToken` (#4193) * Fix types Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Export `decodeIdToken` Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/oidc/validate.ts | 27 +++------------------------ 1 file changed, 3 insertions(+), 24 deletions(-) diff --git a/src/oidc/validate.ts b/src/oidc/validate.ts index a49a955670b..de50b570b66 100644 --- a/src/oidc/validate.ts +++ b/src/oidc/validate.ts @@ -15,7 +15,7 @@ limitations under the License. */ import { jwtDecode } from "jwt-decode"; -import { OidcMetadata, SigninResponse } from "oidc-client-ts"; +import { IdTokenClaims, OidcMetadata, SigninResponse } from "oidc-client-ts"; import { logger } from "../logger"; import { OidcError } from "./error"; @@ -139,28 +139,7 @@ export function isValidatedIssuerMetadata( validateOIDCIssuerWellKnown(metadata); } -/** - * Standard JWT claims. - * - * @see https://datatracker.ietf.org/doc/html/rfc7519#section-4.1 - */ -interface JwtClaims { - [claim: string]: unknown; - /** The "iss" (issuer) claim identifies the principal that issued the JWT. */ - iss?: string; - /** The "sub" (subject) claim identifies the principal that is the subject of the JWT. */ - sub?: string; - /** The "aud" (audience) claim identifies the recipients that the JWT is intended for. */ - aud?: string | string[]; - /** The "exp" (expiration time) claim identifies the expiration time on or after which the JWT MUST NOT be accepted for processing. */ - exp?: number; - // unused claims excluded -} -interface IdTokenClaims extends JwtClaims { - nonce?: string; -} - -const decodeIdToken = (token: string): IdTokenClaims => { +export const decodeIdToken = (token: string): IdTokenClaims => { try { return jwtDecode(token); } catch (error) { @@ -276,7 +255,7 @@ export type BearerTokenResponse = { expires_in?: number; // from oidc-client-ts expires_at?: number; - id_token?: string; + id_token: string; }; /** From 22865fd8344fb979d2bb22f22907bd2291f5a63a Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 7 May 2024 12:15:48 +0000 Subject: [PATCH 213/595] v32.2.0 --- CHANGELOG.md | 15 +++++++++++++++ package.json | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index df1a62a3193..2527030bccd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,18 @@ +Changes in [32.2.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v32.2.0) (2024-05-07) +================================================================================================== +## ✨ Features + +* Use a different error code for UTDs when user was not in the room ([#4172](https://github.com/matrix-org/matrix-js-sdk/pull/4172)). Contributed by @uhoreg. +* Modernize window.crypto access constants ([#4169](https://github.com/matrix-org/matrix-js-sdk/pull/4169)). Contributed by @turt2live. +* Improve compliance with MSC3266 ([#4155](https://github.com/matrix-org/matrix-js-sdk/pull/4155)). Contributed by @AndrewFerr. +* Add comment to make clear that RoomStateEvent.Events does not update related objects in the js-sdk ([#4152](https://github.com/matrix-org/matrix-js-sdk/pull/4152)). Contributed by @toger5. +* Crypto: use a new error code for UTDs from device-relative historical events ([#4139](https://github.com/matrix-org/matrix-js-sdk/pull/4139)). Contributed by @richvdh. + +## 🐛 Bug Fixes + +* Element-R: Fix rust migration when ssss secret are stored not encryted in cache (old legacy behavior) ([#4168](https://github.com/matrix-org/matrix-js-sdk/pull/4168)). Contributed by @BillCarsonFr. + + Changes in [32.1.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v32.1.0) (2024-04-23) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index f5ecb36a047..d85405af472 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "32.2.0-rc.0", + "version": "32.2.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 2a716bd076459f48fed967f3eb4158ebdc1f3600 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 7 May 2024 12:16:24 +0000 Subject: [PATCH 214/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index d85405af472..bb70f52d396 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,6 +132,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From a25cdcecaa1335500c6ec87690bc473c7ae3688c Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 10 May 2024 11:55:44 +0100 Subject: [PATCH 215/595] Fix state_events.ts types (#4196) * Fix state_events.ts types Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/@types/partials.ts | 8 -------- src/@types/state_events.ts | 8 +++++++- src/models/room-state.ts | 5 +++-- 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/@types/partials.ts b/src/@types/partials.ts index abc3363ef68..72fd7716879 100644 --- a/src/@types/partials.ts +++ b/src/@types/partials.ts @@ -45,14 +45,6 @@ export enum RestrictedAllowType { RoomMembership = "m.room_membership", } -export interface IJoinRuleEventContent { - join_rule: JoinRule; // eslint-disable-line camelcase - allow?: { - type: RestrictedAllowType; - room_id: string; // eslint-disable-line camelcase - }[]; -} - export enum GuestAccess { CanJoin = "can_join", Forbidden = "forbidden", diff --git a/src/@types/state_events.ts b/src/@types/state_events.ts index 0e077a9e47f..f2e5b16b64b 100644 --- a/src/@types/state_events.ts +++ b/src/@types/state_events.ts @@ -15,7 +15,7 @@ limitations under the License. */ import { RoomType } from "./event"; -import { GuestAccess, HistoryVisibility, RestrictedAllowType } from "./partials"; +import { GuestAccess, HistoryVisibility, JoinRule, RestrictedAllowType } from "./partials"; import { ImageInfo } from "./media"; import { PolicyRecommendation } from "../models/invites-ignorer"; @@ -36,12 +36,18 @@ export interface RoomCreateEventContent { } export interface RoomJoinRulesEventContent { + join_rule: JoinRule; allow?: { room_id: string; type: RestrictedAllowType; }[]; } +/** + * @deprecated in favour of RoomJoinRulesEventContent + */ +export type IJoinRuleEventContent = RoomJoinRulesEventContent; + export interface RoomMemberEventContent { avatar_url?: string; displayname?: string; diff --git a/src/models/room-state.ts b/src/models/room-state.ts index b6f4d074425..1233ad3bcf8 100644 --- a/src/models/room-state.ts +++ b/src/models/room-state.ts @@ -20,12 +20,13 @@ import { isNumber, removeHiddenChars } from "../utils"; import { EventType, UNSTABLE_MSC2716_MARKER } from "../@types/event"; import { IEvent, MatrixEvent, MatrixEventEvent } from "./event"; import { MatrixClient } from "../client"; -import { GuestAccess, HistoryVisibility, IJoinRuleEventContent, JoinRule } from "../@types/partials"; +import { GuestAccess, HistoryVisibility, JoinRule } from "../@types/partials"; import { TypedEventEmitter } from "./typed-event-emitter"; import { Beacon, BeaconEvent, BeaconEventHandlerMap, getBeaconInfoIdentifier, BeaconIdentifier } from "./beacon"; import { TypedReEmitter } from "../ReEmitter"; import { M_BEACON, M_BEACON_INFO } from "../@types/beacon"; import { KnownMembership } from "../@types/membership"; +import { RoomJoinRulesEventContent } from "../@types/state_events"; export interface IMarkerFoundOptions { /** Whether the timeline was empty before the marker event arrived in the @@ -962,7 +963,7 @@ export class RoomState extends TypedEventEmitter */ public getJoinRule(): JoinRule { const joinRuleEvent = this.getStateEvents(EventType.RoomJoinRules, ""); - const joinRuleContent: Partial = joinRuleEvent?.getContent() ?? {}; + const joinRuleContent: Partial = joinRuleEvent?.getContent() ?? {}; return joinRuleContent["join_rule"] || JoinRule.Invite; } From b78a1ad889c7a51f8c73ff4fe944f65f12dd52f0 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 10 May 2024 13:26:07 +0100 Subject: [PATCH 216/595] Hotfix types export point Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/@types/state_events.ts | 5 ----- src/matrix.ts | 4 ++++ 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/@types/state_events.ts b/src/@types/state_events.ts index f2e5b16b64b..415f2806a75 100644 --- a/src/@types/state_events.ts +++ b/src/@types/state_events.ts @@ -43,11 +43,6 @@ export interface RoomJoinRulesEventContent { }[]; } -/** - * @deprecated in favour of RoomJoinRulesEventContent - */ -export type IJoinRuleEventContent = RoomJoinRulesEventContent; - export interface RoomMemberEventContent { avatar_url?: string; displayname?: string; diff --git a/src/matrix.ts b/src/matrix.ts index ed71f7dfcac..db185f1499b 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -105,6 +105,10 @@ export { IdentityProviderBrand, SSOAction } from "./@types/auth"; export type { ISSOFlow as SSOFlow, LoginFlow } from "./@types/auth"; export type { IHierarchyRelation as HierarchyRelation, IHierarchyRoom as HierarchyRoom } from "./@types/spaces"; export { LocationAssetType } from "./@types/location"; +/** + * @deprecated in favour of RoomJoinRulesEventContent on the types export + */ +export type { RoomJoinRulesEventContent as IJoinRuleEventContent } from "./@types/state_events"; /** * Types supporting cryptography. From 9fd051af33481bbaf63a788696c3bcb6ce5632eb Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 13 May 2024 11:20:47 +0100 Subject: [PATCH 217/595] Update downstream-end-to-end-tests.yml --- .github/workflows/downstream-end-to-end-tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/downstream-end-to-end-tests.yml b/.github/workflows/downstream-end-to-end-tests.yml index 13f7333aa4c..245b2c507db 100644 --- a/.github/workflows/downstream-end-to-end-tests.yml +++ b/.github/workflows/downstream-end-to-end-tests.yml @@ -27,6 +27,7 @@ jobs: issues: read pull-requests: read with: + matrix-js-sdk-sha: ${{ github.sha }} react-sdk-repository: matrix-org/matrix-react-sdk # We only want to run the playwright tests on merge queue to prevent regressions # from creeping in. They take a long time to run and consume multiple concurrent runners. From d421e7f82904350e02e32be9dcea52ad8e6b98b0 Mon Sep 17 00:00:00 2001 From: Kegan Dougal <7190048+kegsay@users.noreply.github.com> Date: Mon, 13 May 2024 11:26:27 +0100 Subject: [PATCH 218/595] Run complement-crypto in CI (#4197) * Maybe run complement-crypto * Use existing checkout * Test that things fail if crypto breaks * Fix test; run only on merge queue * Prettier * Maybe get it working in a merge queue --- .github/workflows/tests.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 3c2241e1cf9..83e770fe71d 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -71,6 +71,24 @@ jobs: disable_coverage: true matrix-js-sdk-sha: ${{ github.sha }} + complement-crypto: + name: "Run Complement Crypto tests" + if: github.event_name == 'merge_group' + uses: matrix-org/complement-crypto/.github/workflows/single_sdk_tests.yml@main + with: + use_js_sdk: "." + + # we need this so the job is reported properly when run in a merge queue + downstream-complement-crypto: + name: Downstream Complement Crypto tests + runs-on: ubuntu-latest + if: always() + needs: + - complement-crypto + steps: + - if: needs.complement-crypto.result != 'skipped' && needs.complement-crypto.result != 'success' + run: exit 1 + # Hook for branch protection to skip downstream testing outside of merge queues # and skip sonarcloud coverage within merge queues downstream: From 3a4b02d8e6c79e2d154fcdf59a61b87121b26c4f Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Wed, 15 May 2024 09:04:25 +0000 Subject: [PATCH 219/595] v32.3.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index bb70f52d396..b29c03cd610 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "32.2.0", + "version": "32.3.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,5 +132,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From 5d0407d0a6730c753669fbeaf1cd8aa518a64042 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 15 May 2024 11:23:58 +0100 Subject: [PATCH 220/595] Update actions/checkout digest to 0ad4b8f (#4203) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/sonarcloud.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index 5fbab9c7715..016dfa7c219 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -30,7 +30,7 @@ jobs: target_url: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} - name: "🧮 Checkout code" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 + uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4 with: repository: ${{ github.event.workflow_run.head_repository.full_name }} ref: ${{ github.event.workflow_run.head_branch }} # checkout commit that triggered this workflow From 73ce51065f04a0faecbe262bc2b21179fea30224 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 15 May 2024 10:26:32 +0000 Subject: [PATCH 221/595] Update mheap/github-action-required-labels digest to 5847eef (#4204) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/pull_request.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yaml b/.github/workflows/pull_request.yaml index f176b3c41d2..bc4fdf704ab 100644 --- a/.github/workflows/pull_request.yaml +++ b/.github/workflows/pull_request.yaml @@ -14,7 +14,7 @@ jobs: name: Preview Changelog runs-on: ubuntu-latest steps: - - uses: mheap/github-action-required-labels@132879b972cb7f2ac593006455875098e73cc7f2 # v5 + - uses: mheap/github-action-required-labels@5847eef68201219cf0a4643ea7be61e77837bbce # v5 if: github.event_name != 'merge_group' with: labels: | From 69c474dda740f77c24eb5b5c7ccb9d90464c99b9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 15 May 2024 11:54:21 +0100 Subject: [PATCH 222/595] Update dependency @types/node to v18.19.33 (#4205) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5a9715f1283..5b3d2b681a2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2059,9 +2059,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.31" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.31.tgz#b7d4a00f7cb826b60a543cebdbda5d189aaecdcd" - integrity sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA== + version "18.19.33" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.33.tgz#98cd286a1b8a5e11aa06623210240bcc28e95c48" + integrity sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A== dependencies: undici-types "~5.26.4" From c9075b3dba8b2124a3d236bd88949ab440fe04d7 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 15 May 2024 11:59:42 +0100 Subject: [PATCH 223/595] Only pass id_server if we had one to begin with (#4200) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/interactive-auth.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/interactive-auth.ts b/src/interactive-auth.ts index 3e5b8d47e5f..8b6a686d856 100644 --- a/src/interactive-auth.ts +++ b/src/interactive-auth.ts @@ -343,8 +343,10 @@ export class InteractiveAuth { sid: this.emailSid, client_secret: this.clientSecret, }; - const idServerParsedUrl = new URL(this.matrixClient.getIdentityServerUrl()!); - creds.id_server = idServerParsedUrl.host; + const isUrl = this.matrixClient.getIdentityServerUrl(); + if (isUrl) { + creds.id_server = new URL(isUrl).host; + } authDict = { type: EMAIL_STAGE_TYPE, // TODO: Remove `threepid_creds` once servers support proper UIA From 3feafc9c1701e9b454ef8d617d39d86871834dc5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 15 May 2024 12:28:29 +0100 Subject: [PATCH 224/595] Update dependency typedoc-plugin-mdn-links to v3.1.25 (#4206) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5b3d2b681a2..b956563fa13 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6455,9 +6455,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-PAMYQ4fX7wJo6Y8mMzrISDNRurl5+xSNWEojrt6Yxofb/m7vWrgiP3bid2KXloMlPcSfCoBiJA6F2g3rmu8XTQ== typedoc-plugin-mdn-links@^3.0.3: - version "3.1.23" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.23.tgz#7abe71b728c2cb28bcdca153aefa1160e5f23395" - integrity sha512-YUJjq2cefjt8t15JaDr9dqblVwPjIHrgrnX6IgytrAv5bp5XkJtsb83/VRxa4ZBbWEqzW9BZVLb2IjQzPTCNHw== + version "3.1.25" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.25.tgz#db877e030216d90f52933b2e5cd5e0506df4af18" + integrity sha512-Tox8kt/yUt+vUiSjz22D+yJyKH7z1f9/CtWbrJdOkfGpmt4SOssEmCPYgxmKPTTCt+SMHL8w5S5tWSc+gj3GYA== typedoc-plugin-missing-exports@^2.0.0: version "2.2.0" From d76fb2baa0e60a812230595866cf421d7c0fba5f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 15 May 2024 12:51:51 +0100 Subject: [PATCH 225/595] Update all non-major dependencies (#4207) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 215 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 113 insertions(+), 102 deletions(-) diff --git a/yarn.lock b/yarn.lock index b956563fa13..309336a11d5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1390,11 +1390,14 @@ to-pascal-case "^1.0.0" unescape-js "^1.0.5" -"@es-joy/jsdoccomment@~0.42.0": - version "0.42.0" - resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.42.0.tgz#59e878708336aaee88c2b34c894f73dbf77ae2b0" - integrity sha512-R1w57YlVA6+YE01wch3GPYn6bCsrOV3YW/5oGGE2tmX6JcL9Nr+b5IikrjMPF+v9CV3ay+obImEdsDhovhJrzw== - dependencies: +"@es-joy/jsdoccomment@~0.43.0": + version "0.43.0" + resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.43.0.tgz#35c295cadd0a939d1a3a6cd1548f66ec76d38870" + integrity sha512-Q1CnsQrytI3TlCB1IVWXWeqUIPGVEKGaE7IbVdt13Nq/3i0JESAkQQERrfiQkmlpijl+++qyqPgaS31Bvc1jRQ== + dependencies: + "@types/eslint" "^8.56.5" + "@types/estree" "^1.0.5" + "@typescript-eslint/types" "^7.2.0" comment-parser "1.4.1" esquery "^1.5.0" jsdoc-type-pratt-parser "~4.0.0" @@ -1983,6 +1986,19 @@ dependencies: "@types/webidl-conversions" "*" +"@types/eslint@^8.56.5": + version "8.56.10" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.56.10.tgz#eb2370a73bf04a901eeba8f22595c7ee0f7eb58d" + integrity sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/estree@*", "@types/estree@^1.0.5": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" + integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== + "@types/events@^3.0.0": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" @@ -2036,7 +2052,7 @@ "@types/tough-cookie" "*" parse5 "^7.0.0" -"@types/json-schema@^7.0.12", "@types/json-schema@^7.0.15": +"@types/json-schema@*", "@types/json-schema@^7.0.15": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -2080,7 +2096,7 @@ resolved "https://registry.yarnpkg.com/@types/sdp-transform/-/sdp-transform-2.4.9.tgz#26ef39f487a6909b0512f580b80920a366b27f52" integrity sha512-bVr+/OoZZy7wrHlNcEAAa6PAgKA4BoXPYVN2EijMC5WnGgQ4ZEuixmKnVs2roiAvr7RhIFVH17QD27cojgIZCg== -"@types/semver@^7.5.0", "@types/semver@^7.5.8": +"@types/semver@^7.5.8": version "7.5.8" resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e" integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ== @@ -2145,14 +2161,6 @@ "@typescript-eslint/visitor-keys" "7.8.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@6.21.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz#ea8a9bfc8f1504a6ac5d59a6df308d3a0630a2b1" - integrity sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg== - dependencies: - "@typescript-eslint/types" "6.21.0" - "@typescript-eslint/visitor-keys" "6.21.0" - "@typescript-eslint/scope-manager@7.8.0": version "7.8.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.8.0.tgz#bb19096d11ec6b87fb6640d921df19b813e02047" @@ -2161,6 +2169,14 @@ "@typescript-eslint/types" "7.8.0" "@typescript-eslint/visitor-keys" "7.8.0" +"@typescript-eslint/scope-manager@7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.9.0.tgz#1dd3e63a4411db356a9d040e75864851b5f2619b" + integrity sha512-ZwPK4DeCDxr3GJltRz5iZejPFAAr4Wk3+2WIBaj1L5PYK5RgxExu/Y68FFVclN0y6GGwH8q+KgKRCvaTmFBbgQ== + dependencies: + "@typescript-eslint/types" "7.9.0" + "@typescript-eslint/visitor-keys" "7.9.0" + "@typescript-eslint/type-utils@7.8.0": version "7.8.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.8.0.tgz#9de166f182a6e4d1c5da76e94880e91831e3e26f" @@ -2171,29 +2187,15 @@ debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@6.21.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.21.0.tgz#205724c5123a8fef7ecd195075fa6e85bac3436d" - integrity sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg== - "@typescript-eslint/types@7.8.0": version "7.8.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.8.0.tgz#1fd2577b3ad883b769546e2d1ef379f929a7091d" integrity sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw== -"@typescript-eslint/typescript-estree@6.21.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz#c47ae7901db3b8bddc3ecd73daff2d0895688c46" - integrity sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ== - dependencies: - "@typescript-eslint/types" "6.21.0" - "@typescript-eslint/visitor-keys" "6.21.0" - debug "^4.3.4" - globby "^11.1.0" - is-glob "^4.0.3" - minimatch "9.0.3" - semver "^7.5.4" - ts-api-utils "^1.0.1" +"@typescript-eslint/types@7.9.0", "@typescript-eslint/types@^7.2.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.9.0.tgz#b58e485e4bfba055659c7e683ad4f5f0821ae2ec" + integrity sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w== "@typescript-eslint/typescript-estree@7.8.0": version "7.8.0" @@ -2209,6 +2211,20 @@ semver "^7.6.0" ts-api-utils "^1.3.0" +"@typescript-eslint/typescript-estree@7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.9.0.tgz#3395e27656060dc313a6b406c3a298b729685e07" + integrity sha512-zBCMCkrb2YjpKV3LA0ZJubtKCDxLttxfdGmwZvTqqWevUPN0FZvSI26FalGFFUZU/9YQK/A4xcQF9o/VVaCKAg== + dependencies: + "@typescript-eslint/types" "7.9.0" + "@typescript-eslint/visitor-keys" "7.9.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + minimatch "^9.0.4" + semver "^7.6.0" + ts-api-utils "^1.3.0" + "@typescript-eslint/utils@7.8.0": version "7.8.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.8.0.tgz#57a79f9c0c0740ead2f622e444cfaeeb9fd047cd" @@ -2222,26 +2238,15 @@ "@typescript-eslint/typescript-estree" "7.8.0" semver "^7.6.0" -"@typescript-eslint/utils@^6.0.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.21.0.tgz#4714e7a6b39e773c1c8e97ec587f520840cd8134" - integrity sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ== +"@typescript-eslint/utils@^6.0.0 || ^7.0.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.9.0.tgz#1b96a34eefdca1c820cb1bbc2751d848b4540899" + integrity sha512-5KVRQCzZajmT4Ep+NEgjXCvjuypVvYHUW7RHlXzNPuak2oWpVoD1jf5xCP0dPAuNIchjC7uQyvbdaSTFaLqSdA== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@types/json-schema" "^7.0.12" - "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "6.21.0" - "@typescript-eslint/types" "6.21.0" - "@typescript-eslint/typescript-estree" "6.21.0" - semver "^7.5.4" - -"@typescript-eslint/visitor-keys@6.21.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz#87a99d077aa507e20e238b11d56cc26ade45fe47" - integrity sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A== - dependencies: - "@typescript-eslint/types" "6.21.0" - eslint-visitor-keys "^3.4.1" + "@typescript-eslint/scope-manager" "7.9.0" + "@typescript-eslint/types" "7.9.0" + "@typescript-eslint/typescript-estree" "7.9.0" "@typescript-eslint/visitor-keys@7.8.0": version "7.8.0" @@ -2251,6 +2256,14 @@ "@typescript-eslint/types" "7.8.0" eslint-visitor-keys "^3.4.3" +"@typescript-eslint/visitor-keys@7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.9.0.tgz#82162656e339c3def02895f5c8546f6888d9b9ea" + integrity sha512-iESPx2TNLDNGQLyjKhUvIKprlP49XNEK+MvIf9nIO7ZZaZdbnfWKHnXAgufpxqfA0YryH8XToi4+CjBgVnFTSQ== + dependencies: + "@typescript-eslint/types" "7.9.0" + eslint-visitor-keys "^3.4.3" + "@ungap/structured-clone@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" @@ -3325,18 +3338,18 @@ eslint-plugin-import@^2.26.0: tsconfig-paths "^3.15.0" eslint-plugin-jest@^28.0.0: - version "28.3.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.3.0.tgz#d52dea5e4f191fde061cbf1cea44c8a0a23e62ec" - integrity sha512-5LjCSSno8E+IUCOX4hJiIb/upPIgpkaDEcaN/40gOcw26t/5UTLHFc4JdxKjOOvGTh0XdCu+fNr0fpOVNvcxMA== + version "28.5.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.5.0.tgz#b497b795de37f671eaccd38bd83030186ff5dc8d" + integrity sha512-6np6DGdmNq/eBbA7HOUNV8fkfL86PYwBfwyb8n23FXgJNTR8+ot3smRHjza9LGsBBZRypK3qyF79vMjohIL8eQ== dependencies: - "@typescript-eslint/utils" "^6.0.0" + "@typescript-eslint/utils" "^6.0.0 || ^7.0.0" eslint-plugin-jsdoc@^48.0.0: - version "48.2.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.3.tgz#0188d17c7a4aa7185416556589e71a954b343ecd" - integrity sha512-r9DMAmFs66VNvNqRLLjHejdnJtILrt3xGi+Qx0op0oRfFGVpOR1Hb3BC++MacseHx93d8SKYPhyrC9BS7Os2QA== + version "48.2.4" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.4.tgz#0b6972faa9e5de89a08f1b0bcdc30e70a9cad736" + integrity sha512-3ebvVgCJFy06gpmuS2ynz13uh9iFSzZ1C1dDkgcSAqVVg82zlORKMk2fvjq708pAO6bwfs5YLttknFEbaoDiGw== dependencies: - "@es-joy/jsdoccomment" "~0.42.0" + "@es-joy/jsdoccomment" "~0.43.0" are-docs-informative "^0.0.2" comment-parser "1.4.1" debug "^4.3.4" @@ -3852,15 +3865,15 @@ glob-to-regexp@^0.4.0: integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== glob@^10.3.7: - version "10.3.10" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b" - integrity sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g== + version "10.3.15" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.15.tgz#e72bc61bc3038c90605f5dd48543dc67aaf3b50d" + integrity sha512-0c6RlJt1TICLyvJYIApxb8GsXoai0KUP7AxKKAtsYXdgJR1mGEUa7DgwShbdk1nly0PYoZj01xd4hzbq3fsjpw== dependencies: foreground-child "^3.1.0" - jackspeak "^2.3.5" + jackspeak "^2.3.6" minimatch "^9.0.1" - minipass "^5.0.0 || ^6.0.2 || ^7.0.0" - path-scurry "^1.10.1" + minipass "^7.0.4" + path-scurry "^1.11.0" glob@^7.1.3, glob@^7.1.4, glob@^7.2.0: version "7.2.3" @@ -4358,7 +4371,7 @@ iterable-lookahead@^1.0.0: resolved "https://registry.yarnpkg.com/iterable-lookahead/-/iterable-lookahead-1.0.0.tgz#896dfcb78680bdb50036e97edb034c8b68a9737f" integrity sha512-hJnEP2Xk4+44DDwJqUQGdXal5VbyeWLaPyDl2AQc242Zr7iqz4DgpQOrEzglWVMGHMDCkguLHEKxd1+rOsmgSQ== -jackspeak@^2.3.5: +jackspeak@^2.3.6: version "2.3.6" resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== @@ -4933,9 +4946,9 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.11.0" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.11.0.tgz#e7e51c3c01fa238623d94c8dcd78f04712cb2ae5" - integrity sha512-7TBBpLYYAqZI+FM+qHsmT0jfYNOwwZAMBvuJXq3gFJCCpDvGrYcLMu2j6yvURJNh1UlpQ4jaNgPoHw7ylGDWMA== + version "5.16.0" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.16.0.tgz#aa6c4de4f38f1735a984fca6f868826f254f3464" + integrity sha512-kdHfTRZuOqsMnvYYNT+pwefyBUNUYTqgyeGM8k4hfw++GZ3TMRGSPZoSl8IxQTy56AkxEDWyj1/P/mYv1vu/Gw== dependencies: "@ericcornelissen/bash-parser" "0.5.2" "@nodelib/fs.walk" "2.0.0" @@ -5062,6 +5075,11 @@ loglevel@^1.7.1: resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.9.1.tgz#d63976ac9bcd03c7c873116d41c2a85bafff1be7" integrity sha512-hP3I3kCrDIMuRwAwHltphhDM1r8i55H33GgqjXbrisuJhF4kRhW1dNuxsRklp4bXl8DSdLaNLuiL4A/LWRfxvg== +lru-cache@^10.2.0: + version "10.2.2" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.2.tgz#48206bc114c1252940c41b25b41af5b545aca878" + integrity sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ== + lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -5076,11 +5094,6 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" -"lru-cache@^9.1.1 || ^10.0.0": - version "10.0.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.0.1.tgz#0a3be479df549cca0e5d693ac402ff19537a6b7a" - integrity sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g== - lunr@^2.3.9: version "2.3.9" resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" @@ -5195,13 +5208,6 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -minimatch@9.0.3, minimatch@^9.0.1: - version "9.0.3" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" - integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== - dependencies: - brace-expansion "^2.0.1" - minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -5209,7 +5215,7 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" -minimatch@^9.0.3, minimatch@^9.0.4: +minimatch@^9.0.1, minimatch@^9.0.3, minimatch@^9.0.4: version "9.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51" integrity sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw== @@ -5221,10 +5227,10 @@ minimist@1.2.8, minimist@^1.2.0, minimist@^1.2.6: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": - version "7.0.4" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" - integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.4: + version "7.1.1" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.1.tgz#f7f85aff59aa22f110b20e27692465cf3bf89481" + integrity sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA== mkdirp@1.0.4: version "1.0.4" @@ -5497,12 +5503,12 @@ path-parse@^1.0.6, path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -path-scurry@^1.10.1: - version "1.10.1" - resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.1.tgz#9ba6bf5aa8500fe9fd67df4f0d9483b2b0bfc698" - integrity sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ== +path-scurry@^1.11.0: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== dependencies: - lru-cache "^9.1.1 || ^10.0.0" + lru-cache "^10.2.0" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" path-to-regexp@^2.2.1: @@ -5837,9 +5843,9 @@ rimraf@^3.0.2: glob "^7.1.3" rimraf@^5.0.0: - version "5.0.5" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-5.0.5.tgz#9be65d2d6e683447d2e9013da2bf451139a61ccf" - integrity sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A== + version "5.0.7" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-5.0.7.tgz#27bddf202e7d89cb2e0381656380d1734a854a74" + integrity sha512-nV6YcJo5wbLW77m+8KjH8aB/7/rxQy9SZ0HY5shnwULfS+9nmTtVXAJET5NdZmCzA4fPI/Hm1wo/Po/4mopOdg== dependencies: glob "^10.3.7" @@ -5908,13 +5914,18 @@ semver@^7.5.3: dependencies: lru-cache "^6.0.0" -semver@^7.5.4, semver@^7.6.0: +semver@^7.5.4: version "7.6.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== dependencies: lru-cache "^6.0.0" +semver@^7.6.0: + version "7.6.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" + integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== + set-function-length@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.1.1.tgz#4bc39fafb0307224a33e106a7d35ca1218d659ed" @@ -6334,7 +6345,7 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== -ts-api-utils@^1.0.1, ts-api-utils@^1.3.0: +ts-api-utils@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1" integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ== @@ -6835,11 +6846,11 @@ yocto-queue@^0.1.0: integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== zod-validation-error@^3.0.3: - version "3.2.0" - resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.2.0.tgz#df2ef6a8531d959324990599fb58206ca9479093" - integrity sha512-cYlPR6zuyrgmu2wRTdumEAJGuwI7eHVHGT+VyneAQxmRAKtGRL1/7pjz4wfLhz4J05f5qoSZc3rGacswgyTjjw== + version "3.3.0" + resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.3.0.tgz#2cfe81b62d044e0453d1aa3ae7c32a2f36dde9af" + integrity sha512-Syib9oumw1NTqEv4LT0e6U83Td9aVRk9iTXPUQr1otyV1PuXQKOvOwhMNqZIq5hluzHP2pMgnOmHEo7kPdI2mw== zod@^3.22.4: - version "3.23.5" - resolved "https://registry.yarnpkg.com/zod/-/zod-3.23.5.tgz#c7b7617d017d4a2f21852f533258d26a9a5ae09f" - integrity sha512-fkwiq0VIQTksNNA131rDOsVJcns0pfVUjHzLrNBiF/O/Xxb5lQyEXkhZWcJ7npWsYlvs+h0jFWXXy4X46Em1JA== + version "3.23.8" + resolved "https://registry.yarnpkg.com/zod/-/zod-3.23.8.tgz#e37b957b5d52079769fb8097099b592f0ef4067d" + integrity sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g== From 51fa1866a9d5dd44bbcd57eea89d261bd1deec53 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 15 May 2024 15:58:24 +0100 Subject: [PATCH 226/595] Wire up verification cancel & mismatch for rust crypto (#4202) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/rust-crypto/verification.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/rust-crypto/verification.ts b/src/rust-crypto/verification.ts index 424945cb744..d25e6b26d16 100644 --- a/src/rust-crypto/verification.ts +++ b/src/rust-crypto/verification.ts @@ -710,10 +710,16 @@ export class RustSASVerifier extends BaseRustVerifer implem } }, mismatch: (): void => { - throw new Error("impl"); + const request = this.inner.cancelWithCode("m.mismatched_sas"); + if (request) { + this.outgoingRequestProcessor.makeOutgoingRequest(request); + } }, cancel: (): void => { - throw new Error("impl"); + const request = this.inner.cancelWithCode("m.user"); + if (request) { + this.outgoingRequestProcessor.makeOutgoingRequest(request); + } }, }; this.emit(VerifierEvent.ShowSas, this.callbacks); From f03dd7b7bcafa6131f36ba8bca059e4d9300e180 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 15 May 2024 16:23:04 +0100 Subject: [PATCH 227/595] Remove deprecated methods and fields (#4201) * Remove legacy `threepidCreds` field Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Remove deprecated shouldUpgradeToVersion Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Remove `added` legacy login request field Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Remove deprecated re-exports Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Remove `home_server` field Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Update imports in tests Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/crypto/cross-signing.spec.ts | 20 +++++------ spec/unit/crypto/secrets.spec.ts | 11 +++--- spec/unit/models/MSC3089Branch.spec.ts | 35 +++++++++---------- src/@types/auth.ts | 5 --- src/@types/event.ts | 6 ---- src/@types/registration.ts | 6 ---- src/client.ts | 7 ++-- src/crypto/CrossSigning.ts | 18 +++++----- src/crypto/EncryptionSetup.ts | 13 ++----- src/crypto/index.ts | 16 +++------ src/crypto/store/base.ts | 6 ++-- .../store/indexeddb-crypto-store-backend.ts | 6 ++-- src/crypto/store/indexeddb-crypto-store.ts | 6 ++-- src/crypto/store/localStorage-crypto-store.ts | 8 ++--- src/crypto/store/memory-crypto-store.ts | 8 ++--- src/interactive-auth.ts | 8 ----- src/matrix.ts | 4 --- src/models/room.ts | 21 ----------- 18 files changed, 69 insertions(+), 135 deletions(-) diff --git a/spec/unit/crypto/cross-signing.spec.ts b/spec/unit/crypto/cross-signing.spec.ts index 18ff191f500..90a6e2b31cb 100644 --- a/spec/unit/crypto/cross-signing.spec.ts +++ b/spec/unit/crypto/cross-signing.spec.ts @@ -23,12 +23,12 @@ import HttpBackend from "matrix-mock-request"; import * as olmlib from "../../../src/crypto/olmlib"; import { MatrixError } from "../../../src/http-api"; import { logger } from "../../../src/logger"; -import { ICrossSigningKey, ICreateClientOpts, ISignedKey, MatrixClient } from "../../../src/client"; +import { ICreateClientOpts, ISignedKey, MatrixClient } from "../../../src/client"; import { CryptoEvent } from "../../../src/crypto"; import { IDevice } from "../../../src/crypto/deviceinfo"; import { TestClient } from "../../TestClient"; import { resetCrossSigningKeys } from "./crypto-utils"; -import { BootstrapCrossSigningOpts } from "../../../src/crypto-api"; +import { BootstrapCrossSigningOpts, CrossSigningKeyInfo } from "../../../src/crypto-api"; const PUSH_RULES_RESPONSE: Response = { method: "GET", @@ -377,7 +377,7 @@ describe("Cross Signing", function () { const bobSigning = new global.Olm.PkSigning(); const bobPrivkey = bobSigning.generate_seed(); const bobPubkey = bobSigning.init_with_seed(bobPrivkey); - const bobSSK: ICrossSigningKey = { + const bobSSK: CrossSigningKeyInfo = { user_id: "@bob:example.com", usage: ["self_signing"], keys: { @@ -515,7 +515,7 @@ describe("Cross Signing", function () { }; olmlib.pkSign(bobDevice, selfSigningKey as unknown as PkSigning, "@bob:example.com", ""); - const bobMaster: ICrossSigningKey = { + const bobMaster: CrossSigningKeyInfo = { user_id: "@bob:example.com", usage: ["master"], keys: { @@ -630,7 +630,7 @@ describe("Cross Signing", function () { const bobSigning = new global.Olm.PkSigning(); const bobPrivkey = bobSigning.generate_seed(); const bobPubkey = bobSigning.init_with_seed(bobPrivkey); - const bobSSK: ICrossSigningKey = { + const bobSSK: CrossSigningKeyInfo = { user_id: "@bob:example.com", usage: ["self_signing"], keys: { @@ -696,7 +696,7 @@ describe("Cross Signing", function () { const bobSigning = new global.Olm.PkSigning(); const bobPrivkey = bobSigning.generate_seed(); const bobPubkey = bobSigning.init_with_seed(bobPrivkey); - const bobSSK: ICrossSigningKey = { + const bobSSK: CrossSigningKeyInfo = { user_id: "@bob:example.com", usage: ["self_signing"], keys: { @@ -763,7 +763,7 @@ describe("Cross Signing", function () { const bobSigning2 = new global.Olm.PkSigning(); const bobPrivkey2 = bobSigning2.generate_seed(); const bobPubkey2 = bobSigning2.init_with_seed(bobPrivkey2); - const bobSSK2: ICrossSigningKey = { + const bobSSK2: CrossSigningKeyInfo = { user_id: "@bob:example.com", usage: ["self_signing"], keys: { @@ -913,7 +913,7 @@ describe("Cross Signing", function () { const aliceSigning = new global.Olm.PkSigning(); const alicePrivkey = aliceSigning.generate_seed(); const alicePubkey = aliceSigning.init_with_seed(alicePrivkey); - const aliceSSK: ICrossSigningKey = { + const aliceSSK: CrossSigningKeyInfo = { user_id: "@alice:example.com", usage: ["self_signing"], keys: { @@ -988,7 +988,7 @@ describe("Cross Signing", function () { const aliceSigning = new global.Olm.PkSigning(); const alicePrivkey = aliceSigning.generate_seed(); const alicePubkey = aliceSigning.init_with_seed(alicePrivkey); - const aliceSSK: ICrossSigningKey = { + const aliceSSK: CrossSigningKeyInfo = { user_id: "@alice:example.com", usage: ["self_signing"], keys: { @@ -1048,7 +1048,7 @@ describe("Cross Signing", function () { const aliceSigning = new global.Olm.PkSigning(); const alicePrivkey = aliceSigning.generate_seed(); const alicePubkey = aliceSigning.init_with_seed(alicePrivkey); - const aliceSSK: ICrossSigningKey = { + const aliceSSK: CrossSigningKeyInfo = { user_id: "@alice:example.com", usage: ["self_signing"], keys: { diff --git a/spec/unit/crypto/secrets.spec.ts b/spec/unit/crypto/secrets.spec.ts index 27842e8778b..835c593d8e5 100644 --- a/spec/unit/crypto/secrets.spec.ts +++ b/spec/unit/crypto/secrets.spec.ts @@ -23,12 +23,13 @@ import { makeTestClients } from "./verification/util"; import { encryptAES } from "../../../src/crypto/aes"; import { createSecretStorageKey, resetCrossSigningKeys } from "./crypto-utils"; import { logger } from "../../../src/logger"; -import { ClientEvent, ICreateClientOpts, ICrossSigningKey, MatrixClient } from "../../../src/client"; +import { ClientEvent, ICreateClientOpts, MatrixClient } from "../../../src/client"; import { DeviceInfo } from "../../../src/crypto/deviceinfo"; import { ISignatures } from "../../../src/@types/signed"; import { ICurve25519AuthData } from "../../../src/crypto/keybackup"; import { SecretStorageKeyDescription, SECRET_STORAGE_ALGORITHM_V1_AES } from "../../../src/secret-storage"; import { decodeBase64 } from "../../../src/base64"; +import { CrossSigningKeyInfo } from "../../../src/crypto-api"; async function makeTestClient( userInfo: { userId: string; deviceId: string }, @@ -475,7 +476,7 @@ describe("Secrets", function () { [`ed25519:${XSPubKey}`]: XSPubKey, }, }, - self_signing: sign( + self_signing: sign( { user_id: "@alice:example.com", usage: ["self_signing"], @@ -486,7 +487,7 @@ describe("Secrets", function () { XSK, "@alice:example.com", ), - user_signing: sign( + user_signing: sign( { user_id: "@alice:example.com", usage: ["user_signing"], @@ -631,7 +632,7 @@ describe("Secrets", function () { [`ed25519:${XSPubKey}`]: XSPubKey, }, }, - self_signing: sign( + self_signing: sign( { user_id: "@alice:example.com", usage: ["self_signing"], @@ -642,7 +643,7 @@ describe("Secrets", function () { XSK, "@alice:example.com", ), - user_signing: sign( + user_signing: sign( { user_id: "@alice:example.com", usage: ["user_signing"], diff --git a/spec/unit/models/MSC3089Branch.spec.ts b/spec/unit/models/MSC3089Branch.spec.ts index 9fe71869725..7151e968026 100644 --- a/spec/unit/models/MSC3089Branch.spec.ts +++ b/spec/unit/models/MSC3089Branch.spec.ts @@ -16,11 +16,12 @@ limitations under the License. import { IContent, MatrixClient, MatrixEvent } from "../../../src"; import { Room } from "../../../src/models/room"; -import { IEncryptedFile, RelationType, UNSTABLE_MSC3089_BRANCH } from "../../../src/@types/event"; +import { RelationType, UNSTABLE_MSC3089_BRANCH } from "../../../src/@types/event"; import { EventTimelineSet } from "../../../src/models/event-timeline-set"; import { EventTimeline } from "../../../src/models/event-timeline"; import { MSC3089Branch } from "../../../src/models/MSC3089Branch"; import { MSC3089TreeSpace } from "../../../src/models/MSC3089TreeSpace"; +import { EncryptedFile } from "../../../src/@types/media"; describe("MSC3089Branch", () => { let client: MatrixClient; @@ -254,7 +255,7 @@ describe("MSC3089Branch", () => { it("should create new versions of itself", async () => { const canaryName = "canary"; const canaryContents = "contents go here"; - const canaryFile = {} as IEncryptedFile; + const canaryFile = {} as EncryptedFile; const canaryAddl = { canary: true }; indexEvent.getContent = () => ({ active: true, retained: true }); const stateKeyOrder = [fileEventId2, fileEventId]; @@ -287,23 +288,21 @@ describe("MSC3089Branch", () => { const createFn = jest .fn() - .mockImplementation( - (name: string, contents: ArrayBuffer, info: Partial, addl: IContent) => { - expect(name).toEqual(canaryName); - expect(contents).toBe(canaryContents); - expect(info).toBe(canaryFile); - expect(addl).toMatchObject({ - ...canaryAddl, - "m.new_content": true, - "m.relates_to": { - rel_type: RelationType.Replace, - event_id: fileEventId, - }, - }); + .mockImplementation((name: string, contents: ArrayBuffer, info: Partial, addl: IContent) => { + expect(name).toEqual(canaryName); + expect(contents).toBe(canaryContents); + expect(info).toBe(canaryFile); + expect(addl).toMatchObject({ + ...canaryAddl, + "m.new_content": true, + "m.relates_to": { + rel_type: RelationType.Replace, + event_id: fileEventId, + }, + }); - return Promise.resolve({ event_id: fileEventId2 }); - }, - ); + return Promise.resolve({ event_id: fileEventId2 }); + }); directory.createFile = createFn; await branch.createNewVersion(canaryName, canaryContents, canaryFile, canaryAddl); diff --git a/src/@types/auth.ts b/src/@types/auth.ts index 66504630763..649a851764e 100644 --- a/src/@types/auth.ts +++ b/src/@types/auth.ts @@ -147,11 +147,6 @@ export interface LoginRequest { * The login type being used. */ type: "m.login.password" | "m.login.token" | string; - /** - * Third-party identifier for the user. - * @deprecated in favour of `identifier`. - */ - address?: string; /** * ID of the client device. * If this does not correspond to a known client device, a new device will be created. diff --git a/src/@types/event.ts b/src/@types/event.ts index 04f1e969c11..5d8a26c9b23 100644 --- a/src/@types/event.ts +++ b/src/@types/event.ts @@ -56,7 +56,6 @@ import { SDPStreamMetadataKey, } from "../webrtc/callEventTypes"; import { EncryptionKeysEventContent, ICallNotifyContent } from "../matrixrtc/types"; -import { EncryptedFile } from "./media"; import { M_POLL_END, M_POLL_START, PollEndEventContent, PollStartEventContent } from "./polls"; export enum EventType { @@ -305,11 +304,6 @@ export const UNSIGNED_THREAD_ID_FIELD = new UnstableValue("thread_id", "org.matr */ export const UNSIGNED_MEMBERSHIP_FIELD = new UnstableValue("membership", "io.element.msc4115.membership"); -/** - * @deprecated in favour of {@link EncryptedFile} - */ -export type IEncryptedFile = EncryptedFile; - /** * Mapped type from event type to content type for all specified non-state room events. */ diff --git a/src/@types/registration.ts b/src/@types/registration.ts index 98eb1977eb6..90fc098e482 100644 --- a/src/@types/registration.ts +++ b/src/@types/registration.ts @@ -107,10 +107,4 @@ export interface RegisterResponse { * Omitted if the inhibit_login option is true. */ refresh_token?: string; - /** - * The server_name of the homeserver on which the account has been registered. - * - * @deprecated Clients should extract the server_name from user_id (by splitting at the first colon) if they require it. - */ - home_server?: string; } diff --git a/src/client.ts b/src/client.ts index 78afe5387c2..27485d076f8 100644 --- a/src/client.ts +++ b/src/client.ts @@ -560,16 +560,13 @@ export interface Capabilities { "org.matrix.msc3882.get_login_token"?: IGetLoginTokenCapability; } -/** @deprecated prefer {@link CrossSigningKeyInfo}. */ -export type ICrossSigningKey = CrossSigningKeyInfo; - enum CrossSigningKeyType { MasterKey = "master_key", SelfSigningKey = "self_signing_key", UserSigningKey = "user_signing_key", } -export type CrossSigningKeys = Record; +export type CrossSigningKeys = Record; export type SendToDeviceContentMap = Map>>; @@ -581,7 +578,7 @@ export interface ISignedKey { device_id: string; } -export type KeySignatures = Record>; +export type KeySignatures = Record>; export interface IUploadKeySignaturesResponse { failures: Record< string, diff --git a/src/crypto/CrossSigning.ts b/src/crypto/CrossSigning.ts index 1bc3d9e8e91..95d20da052e 100644 --- a/src/crypto/CrossSigning.ts +++ b/src/crypto/CrossSigning.ts @@ -24,13 +24,13 @@ import { logger } from "../logger"; import { IndexedDBCryptoStore } from "../crypto/store/indexeddb-crypto-store"; import { decryptAES, encryptAES } from "./aes"; import { DeviceInfo } from "./deviceinfo"; -import { ICrossSigningKey, ISignedKey, MatrixClient } from "../client"; +import { ISignedKey, MatrixClient } from "../client"; import { OlmDevice } from "./OlmDevice"; import { ICryptoCallbacks } from "."; import { ISignatures } from "../@types/signed"; import { CryptoStore, SecretStorePrivateKeys } from "./store/base"; import { ServerSideSecretStorage, SecretStorageKeyDescription } from "../secret-storage"; -import { DeviceVerificationStatus, UserVerificationStatus as UserTrustLevel } from "../crypto-api"; +import { CrossSigningKeyInfo, DeviceVerificationStatus, UserVerificationStatus as UserTrustLevel } from "../crypto-api"; import { decodeBase64, encodeBase64 } from "../base64"; // backwards-compatibility re-exports @@ -38,7 +38,7 @@ export { UserTrustLevel }; const KEY_REQUEST_TIMEOUT_MS = 1000 * 60; -function publicKeyFromKeyInfo(keyInfo: ICrossSigningKey): string { +function publicKeyFromKeyInfo(keyInfo: CrossSigningKeyInfo): string { // `keys` is an object with { [`ed25519:${pubKey}`]: pubKey } // We assume only a single key, and we want the bare form without type // prefix, so we select the values. @@ -51,13 +51,13 @@ export interface ICacheCallbacks { } export interface ICrossSigningInfo { - keys: Record; + keys: Record; firstUse: boolean; crossSigningVerifiedBefore: boolean; } export class CrossSigningInfo { - public keys: Record = {}; + public keys: Record = {}; public firstUse = true; // This tracks whether we've ever verified this user with any identity. // When you verify a user, any devices online at the time that receive @@ -296,7 +296,7 @@ export class CrossSigningInfo { } const privateKeys: Record = {}; - const keys: Record = {}; + const keys: Record = {}; let masterSigning: PkSigning | undefined; let masterPub: string | undefined; @@ -368,8 +368,8 @@ export class CrossSigningInfo { this.keys = {}; } - public setKeys(keys: Record): void { - const signingKeys: Record = {}; + public setKeys(keys: Record): void { + const signingKeys: Record = {}; if (keys.master) { if (keys.master.user_id !== this.userId) { const error = "Mismatched user ID " + keys.master.user_id + " in master key from " + this.userId; @@ -457,7 +457,7 @@ export class CrossSigningInfo { } } - public async signUser(key: CrossSigningInfo): Promise { + public async signUser(key: CrossSigningInfo): Promise { if (!this.keys.user_signing) { logger.info("No user signing key: not signing user"); return; diff --git a/src/crypto/EncryptionSetup.ts b/src/crypto/EncryptionSetup.ts index 1641c2f9d86..b7015b5a0ba 100644 --- a/src/crypto/EncryptionSetup.ts +++ b/src/crypto/EncryptionSetup.ts @@ -20,22 +20,15 @@ import { createCryptoStoreCacheCallbacks, ICacheCallbacks } from "./CrossSigning import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store"; import { Method, ClientPrefix } from "../http-api"; import { Crypto, ICryptoCallbacks } from "./index"; -import { - ClientEvent, - ClientEventHandlerMap, - CrossSigningKeys, - ICrossSigningKey, - ISignedKey, - KeySignatures, -} from "../client"; +import { ClientEvent, ClientEventHandlerMap, CrossSigningKeys, ISignedKey, KeySignatures } from "../client"; import { IKeyBackupInfo } from "./keybackup"; import { TypedEventEmitter } from "../models/typed-event-emitter"; import { AccountDataClient, SecretStorageKeyDescription } from "../secret-storage"; -import { BootstrapCrossSigningOpts } from "../crypto-api"; +import { BootstrapCrossSigningOpts, CrossSigningKeyInfo } from "../crypto-api"; interface ICrossSigningKeys { authUpload: BootstrapCrossSigningOpts["authUploadDeviceSigningKeys"]; - keys: Record<"master" | "self_signing" | "user_signing", ICrossSigningKey>; + keys: Record<"master" | "self_signing" | "user_signing", CrossSigningKeyInfo>; } /** diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 10751ca5632..ff62c429c9f 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -56,14 +56,7 @@ import { Room, RoomEvent } from "../models/room"; import { RoomMember, RoomMemberEvent } from "../models/room-member"; import { EventStatus, IContent, IEvent, MatrixEvent, MatrixEventEvent } from "../models/event"; import { ToDeviceBatch } from "../models/ToDeviceMessage"; -import { - ClientEvent, - ICrossSigningKey, - IKeysUploadResponse, - ISignedKey, - IUploadKeySignaturesResponse, - MatrixClient, -} from "../client"; +import { ClientEvent, IKeysUploadResponse, ISignedKey, IUploadKeySignaturesResponse, MatrixClient } from "../client"; import { IRoomEncryption, RoomList } from "./RoomList"; import { IKeyBackupInfo } from "./keybackup"; import { ISyncStateData } from "../sync"; @@ -89,6 +82,7 @@ import { ISecretRequest } from "./SecretSharing"; import { BackupTrustInfo, BootstrapCrossSigningOpts, + CrossSigningKeyInfo, CrossSigningStatus, DecryptionFailureCode, DeviceVerificationStatus, @@ -1527,7 +1521,7 @@ export class Crypto extends TypedEventEmitter, ): Promise { const deviceIds: string[] = []; @@ -1904,7 +1898,7 @@ export class Crypto extends TypedEventEmitter | null): Promise { + private async storeTrustedSelfKeys(keys: Record | null): Promise { if (keys) { this.crossSigningInfo.setKeys(keys); } else { @@ -2390,7 +2384,7 @@ export class Crypto extends TypedEventEmitter, - ): Promise { + ): Promise { // Check if the 'device' is actually a cross signing key // The js-sdk's verification treats cross-signing keys as devices // and so uses this method to mark them verified. diff --git a/src/crypto/store/base.ts b/src/crypto/store/base.ts index e978b24e341..871804b7379 100644 --- a/src/crypto/store/base.ts +++ b/src/crypto/store/base.ts @@ -16,7 +16,6 @@ limitations under the License. import { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from "../index"; import { RoomKeyRequestState } from "../OutgoingRoomKeyRequestManager"; -import { ICrossSigningKey } from "../../client"; import { IOlmDevice } from "../algorithms/megolm"; import { TrackingStatus } from "../DeviceList"; import { IRoomEncryption } from "../RoomList"; @@ -27,6 +26,7 @@ import { InboundGroupSessionData } from "../OlmDevice"; import { MatrixEvent } from "../../models/event"; import { DehydrationManager } from "../dehydration"; import { IEncryptedPayload } from "../aes"; +import { CrossSigningKeyInfo } from "../../crypto-api"; /** * Internal module. Definitions for storage for the crypto module @@ -100,13 +100,13 @@ export interface CryptoStore { // Olm Account getAccount(txn: unknown, func: (accountPickle: string | null) => void): void; storeAccount(txn: unknown, accountPickle: string): void; - getCrossSigningKeys(txn: unknown, func: (keys: Record | null) => void): void; + getCrossSigningKeys(txn: unknown, func: (keys: Record | null) => void): void; getSecretStorePrivateKey( txn: unknown, func: (key: SecretStorePrivateKeys[K] | null) => void, type: K, ): void; - storeCrossSigningKeys(txn: unknown, keys: Record): void; + storeCrossSigningKeys(txn: unknown, keys: Record): void; storeSecretStorePrivateKey( txn: unknown, type: K, diff --git a/src/crypto/store/indexeddb-crypto-store-backend.ts b/src/crypto/store/indexeddb-crypto-store-backend.ts index c4908aee193..08d4c0f6e98 100644 --- a/src/crypto/store/indexeddb-crypto-store-backend.ts +++ b/src/crypto/store/indexeddb-crypto-store-backend.ts @@ -33,11 +33,11 @@ import { ACCOUNT_OBJECT_KEY_MIGRATION_STATE, } from "./base"; import { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from "../index"; -import { ICrossSigningKey } from "../../client"; import { IOlmDevice } from "../algorithms/megolm"; import { IRoomEncryption } from "../RoomList"; import { InboundGroupSessionData } from "../OlmDevice"; import { IndexedDBCryptoStore } from "./indexeddb-crypto-store"; +import { CrossSigningKeyInfo } from "../../crypto-api"; const PROFILE_TRANSACTIONS = false; @@ -418,7 +418,7 @@ export class Backend implements CryptoStore { public getCrossSigningKeys( txn: IDBTransaction, - func: (keys: Record | null) => void, + func: (keys: Record | null) => void, ): void { const objectStore = txn.objectStore("account"); const getReq = objectStore.get("crossSigningKeys"); @@ -447,7 +447,7 @@ export class Backend implements CryptoStore { }; } - public storeCrossSigningKeys(txn: IDBTransaction, keys: Record): void { + public storeCrossSigningKeys(txn: IDBTransaction, keys: Record): void { const objectStore = txn.objectStore("account"); objectStore.put(keys, "crossSigningKeys"); } diff --git a/src/crypto/store/indexeddb-crypto-store.ts b/src/crypto/store/indexeddb-crypto-store.ts index dc104e19ef4..8fe488e08d0 100644 --- a/src/crypto/store/indexeddb-crypto-store.ts +++ b/src/crypto/store/indexeddb-crypto-store.ts @@ -36,10 +36,10 @@ import { ACCOUNT_OBJECT_KEY_MIGRATION_STATE, } from "./base"; import { IRoomKeyRequestBody } from "../index"; -import { ICrossSigningKey } from "../../client"; import { IOlmDevice } from "../algorithms/megolm"; import { IRoomEncryption } from "../RoomList"; import { InboundGroupSessionData } from "../OlmDevice"; +import { CrossSigningKeyInfo } from "../../crypto-api"; /* * Internal module. indexeddb storage for e2e. @@ -420,7 +420,7 @@ export class IndexedDBCryptoStore implements CryptoStore { */ public getCrossSigningKeys( txn: IDBTransaction, - func: (keys: Record | null) => void, + func: (keys: Record | null) => void, ): void { this.backend!.getCrossSigningKeys(txn, func); } @@ -444,7 +444,7 @@ export class IndexedDBCryptoStore implements CryptoStore { * @param txn - An active transaction. See doTxn(). * @param keys - keys object as getCrossSigningKeys() */ - public storeCrossSigningKeys(txn: IDBTransaction, keys: Record): void { + public storeCrossSigningKeys(txn: IDBTransaction, keys: Record): void { this.backend!.storeCrossSigningKeys(txn, keys); } diff --git a/src/crypto/store/localStorage-crypto-store.ts b/src/crypto/store/localStorage-crypto-store.ts index 9a8dbf38a80..41821ec62a5 100644 --- a/src/crypto/store/localStorage-crypto-store.ts +++ b/src/crypto/store/localStorage-crypto-store.ts @@ -31,9 +31,9 @@ import { } from "./base"; import { IOlmDevice } from "../algorithms/megolm"; import { IRoomEncryption } from "../RoomList"; -import { ICrossSigningKey } from "../../client"; import { InboundGroupSessionData } from "../OlmDevice"; import { safeSet } from "../../utils"; +import { CrossSigningKeyInfo } from "../../crypto-api"; /** * Internal module. Partial localStorage backed storage for e2e. @@ -531,8 +531,8 @@ export class LocalStorageCryptoStore extends MemoryCryptoStore implements Crypto setJsonItem(this.store, KEY_END_TO_END_ACCOUNT, accountPickle); } - public getCrossSigningKeys(txn: unknown, func: (keys: Record | null) => void): void { - const keys = getJsonItem>(this.store, KEY_CROSS_SIGNING_KEYS); + public getCrossSigningKeys(txn: unknown, func: (keys: Record | null) => void): void { + const keys = getJsonItem>(this.store, KEY_CROSS_SIGNING_KEYS); func(keys); } @@ -545,7 +545,7 @@ export class LocalStorageCryptoStore extends MemoryCryptoStore implements Crypto func(key); } - public storeCrossSigningKeys(txn: unknown, keys: Record): void { + public storeCrossSigningKeys(txn: unknown, keys: Record): void { setJsonItem(this.store, KEY_CROSS_SIGNING_KEYS, keys); } diff --git a/src/crypto/store/memory-crypto-store.ts b/src/crypto/store/memory-crypto-store.ts index 32d83f24d3e..4fd8a57f85e 100644 --- a/src/crypto/store/memory-crypto-store.ts +++ b/src/crypto/store/memory-crypto-store.ts @@ -32,10 +32,10 @@ import { SESSION_BATCH_SIZE, } from "./base"; import { IRoomKeyRequestBody } from "../index"; -import { ICrossSigningKey } from "../../client"; import { IOlmDevice } from "../algorithms/megolm"; import { IRoomEncryption } from "../RoomList"; import { InboundGroupSessionData } from "../OlmDevice"; +import { CrossSigningKeyInfo } from "../../crypto-api"; function encodeSessionKey(senderCurve25519Key: string, sessionId: string): string { return encodeURIComponent(senderCurve25519Key) + "/" + encodeURIComponent(sessionId); @@ -56,7 +56,7 @@ export class MemoryCryptoStore implements CryptoStore { private migrationState: MigrationState = MigrationState.NOT_STARTED; private outgoingRoomKeyRequests: OutgoingRoomKeyRequest[] = []; private account: string | null = null; - private crossSigningKeys: Record | null = null; + private crossSigningKeys: Record | null = null; private privateKeys: Partial = {}; private sessions: { [deviceKey: string]: { [sessionId: string]: ISessionInfo } } = {}; @@ -319,7 +319,7 @@ export class MemoryCryptoStore implements CryptoStore { this.account = accountPickle; } - public getCrossSigningKeys(txn: unknown, func: (keys: Record | null) => void): void { + public getCrossSigningKeys(txn: unknown, func: (keys: Record | null) => void): void { func(this.crossSigningKeys); } @@ -332,7 +332,7 @@ export class MemoryCryptoStore implements CryptoStore { func(result || null); } - public storeCrossSigningKeys(txn: unknown, keys: Record): void { + public storeCrossSigningKeys(txn: unknown, keys: Record): void { this.crossSigningKeys = keys; } diff --git a/src/interactive-auth.ts b/src/interactive-auth.ts index 8b6a686d856..8ecfc64a0d2 100644 --- a/src/interactive-auth.ts +++ b/src/interactive-auth.ts @@ -121,10 +121,6 @@ interface ThreepidCreds { type EmailIdentityDict = { type: AuthType.Email; threepid_creds: ThreepidCreds; - /** - * @deprecated in favour of `threepid_creds` - kept for backwards compatibility - */ - threepidCreds?: ThreepidCreds; session: string; }; @@ -349,11 +345,7 @@ export class InteractiveAuth { } authDict = { type: EMAIL_STAGE_TYPE, - // TODO: Remove `threepid_creds` once servers support proper UIA - // See https://github.com/matrix-org/synapse/issues/5665 - // See https://github.com/matrix-org/matrix-doc/issues/2220 threepid_creds: creds, - threepidCreds: creds, }; } } diff --git a/src/matrix.ts b/src/matrix.ts index db185f1499b..ed71f7dfcac 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -105,10 +105,6 @@ export { IdentityProviderBrand, SSOAction } from "./@types/auth"; export type { ISSOFlow as SSOFlow, LoginFlow } from "./@types/auth"; export type { IHierarchyRelation as HierarchyRelation, IHierarchyRoom as HierarchyRoom } from "./@types/spaces"; export { LocationAssetType } from "./@types/location"; -/** - * @deprecated in favour of RoomJoinRulesEventContent on the types export - */ -export type { RoomJoinRulesEventContent as IJoinRuleEventContent } from "./@types/state_events"; /** * Types supporting cryptography. diff --git a/src/models/room.ts b/src/models/room.ts index 679fbc749f5..974d0ab9fe7 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -605,27 +605,6 @@ export class Room extends ReadReceipt { return createEvent.getContent()["room_version"] ?? "1"; } - /** - * Determines whether this room needs to be upgraded to a new version - * @returns What version the room should be upgraded to, or null if - * the room does not require upgrading at this time. - * @deprecated Use #getRecommendedVersion() instead - */ - public shouldUpgradeToVersion(): string | null { - // TODO: Remove this function. - // This makes assumptions about which versions are safe, and can easily - // be wrong. Instead, people are encouraged to use getRecommendedVersion - // which determines a safer value. This function doesn't use that function - // because this is not async-capable, and to avoid breaking the contract - // we're deprecating this. - - if (!SAFE_ROOM_VERSIONS.includes(this.getVersion())) { - return KNOWN_SAFE_ROOM_VERSION; - } - - return null; - } - /** * Determines the recommended room version for the room. This returns an * object with 3 properties: `version` as the new version the From c6b43dd176fea3983bae08019224236fdc43d23f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 15 May 2024 17:56:22 +0100 Subject: [PATCH 228/595] Update dependency eslint-plugin-unicorn to v53 (#4209) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 69 ++++++++++++++++++++++++++++++++++++++++------------ 2 files changed, 55 insertions(+), 16 deletions(-) diff --git a/package.json b/package.json index bb70f52d396..e6d208ab834 100644 --- a/package.json +++ b/package.json @@ -106,7 +106,7 @@ "eslint-plugin-jsdoc": "^48.0.0", "eslint-plugin-matrix-org": "^1.0.0", "eslint-plugin-tsdoc": "^0.2.17", - "eslint-plugin-unicorn": "^52.0.0", + "eslint-plugin-unicorn": "^53.0.0", "fake-indexeddb": "^5.0.2", "fetch-mock": "9.11.0", "fetch-mock-jest": "^1.5.1", diff --git a/yarn.lock b/yarn.lock index 309336a11d5..51c6c910d10 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1434,6 +1434,21 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" +"@eslint/eslintrc@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.0.2.tgz#36180f8e85bf34d2fe3ccc2261e8e204a411ab4e" + integrity sha512-wV19ZEGEMAC1eHgrS7UQPqsdEiCIbTKTasEfcXAigzoXICcqZSjBZEHlZwNVvKg6UBCjSlos84XiLqsRJnIcIg== + dependencies: + ajv "^6.12.4" + debug "^4.3.2" + espree "^10.0.1" + globals "^14.0.0" + ignore "^5.2.0" + import-fresh "^3.2.1" + js-yaml "^4.1.0" + minimatch "^3.1.2" + strip-json-comments "^3.1.1" + "@eslint/js@8.57.0": version "8.57.0" resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f" @@ -2302,6 +2317,11 @@ acorn@^8.1.0, acorn@^8.8.1, acorn@^8.9.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== +acorn@^8.11.3: + version "8.11.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" + integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== + acorn@^8.4.1: version "8.11.2" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.2.tgz#ca0d78b51895be5390a5903c5b3bdcdaf78ae40b" @@ -2662,7 +2682,7 @@ browserslist@^4.21.9: node-releases "^2.0.14" update-browserslist-db "^1.0.13" -browserslist@^4.22.2, browserslist@^4.22.3, browserslist@^4.23.0: +browserslist@^4.22.2, browserslist@^4.23.0: version "4.23.0" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== @@ -2928,12 +2948,12 @@ core-js-compat@^3.31.0, core-js-compat@^3.36.1: dependencies: browserslist "^4.23.0" -core-js-compat@^3.34.0: - version "3.36.0" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.36.0.tgz#087679119bc2fdbdefad0d45d8e5d307d45ba190" - integrity sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw== +core-js-compat@^3.37.0: + version "3.37.1" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.37.1.tgz#c844310c7852f4bdf49b8d339730b97e17ff09ee" + integrity sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg== dependencies: - browserslist "^4.22.3" + browserslist "^4.23.0" core-js@^3.0.0: version "3.32.0" @@ -3372,17 +3392,17 @@ eslint-plugin-tsdoc@^0.2.17: "@microsoft/tsdoc" "0.14.2" "@microsoft/tsdoc-config" "0.16.2" -eslint-plugin-unicorn@^52.0.0: - version "52.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-52.0.0.tgz#c7a559edd52e3932cf2b3a05c3b0efc604c1eeb8" - integrity sha512-1Yzm7/m+0R4djH0tjDjfVei/ju2w3AzUGjG6q8JnuNIL5xIwsflyCooW5sfBvQp2pMYQFSWWCFONsjCax1EHng== +eslint-plugin-unicorn@^53.0.0: + version "53.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-53.0.0.tgz#df3a5c9ecabeb759e6fd867b2d84198466ac8c4d" + integrity sha512-kuTcNo9IwwUCfyHGwQFOK/HjJAYzbODHN3wP0PgqbW+jbXqpNWxNVpVhj2tO9SixBwuAdmal8rVcWKBxwFnGuw== dependencies: - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-validator-identifier" "^7.24.5" "@eslint-community/eslint-utils" "^4.4.0" - "@eslint/eslintrc" "^2.1.4" + "@eslint/eslintrc" "^3.0.2" ci-info "^4.0.0" clean-regexp "^1.0.0" - core-js-compat "^3.34.0" + core-js-compat "^3.37.0" esquery "^1.5.0" indent-string "^4.0.0" is-builtin-module "^3.2.1" @@ -3391,7 +3411,7 @@ eslint-plugin-unicorn@^52.0.0: read-pkg-up "^7.0.1" regexp-tree "^0.1.27" regjsparser "^0.10.0" - semver "^7.5.4" + semver "^7.6.1" strip-indent "^3.0.0" eslint-rule-composer@^0.3.0: @@ -3425,6 +3445,11 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== +eslint-visitor-keys@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz#e3adc021aa038a2a8e0b2f8b0ce8f66b9483b1fb" + integrity sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw== + eslint@8.57.0: version "8.57.0" resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.0.tgz#c786a6fd0e0b68941aaf624596fb987089195668" @@ -3469,6 +3494,15 @@ eslint@8.57.0: strip-ansi "^6.0.1" text-table "^0.2.0" +espree@^10.0.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-10.0.1.tgz#600e60404157412751ba4a6f3a2ee1a42433139f" + integrity sha512-MWkrWZbJsL2UwnjxTX3gG8FneachS/Mwg7tdGXce011sJd5b0JG54vat5KHnfSBODZ3Wvzd2WnjxyzsRoVv+ww== + dependencies: + acorn "^8.11.3" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^4.0.0" + espree@^9.6.0, espree@^9.6.1: version "9.6.1" resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" @@ -3899,6 +3933,11 @@ globals@^13.19.0: dependencies: type-fest "^0.20.2" +globals@^14.0.0: + version "14.0.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e" + integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== + globalthis@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" @@ -5921,7 +5960,7 @@ semver@^7.5.4: dependencies: lru-cache "^6.0.0" -semver@^7.6.0: +semver@^7.6.0, semver@^7.6.1: version "7.6.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== From 93d96281fd4cc8fd47c398eadac8b553662c85ac Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 21 May 2024 12:25:26 +0000 Subject: [PATCH 229/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 993482d89dd..24d180a625b 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,6 +132,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From fd3a4d4403fd85c6acf4385be3469393b7c9d987 Mon Sep 17 00:00:00 2001 From: Bayyr Oorjak Date: Tue, 21 May 2024 14:48:00 +0300 Subject: [PATCH 230/595] Preserve ESM for async imports to work correctly (#4187) * fix: fix lazy rust crypto import * test: use "commonjs" for tests because of circular deps * chore: revert commonjs for "module" * refactor: remove unnecessary example * refactor: add comments Signed-off-by: Bayyr Oorjak * refactor: improve comment Signed-off-by: Bayyr Oorjak Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Update babel.config.js --------- Signed-off-by: Bayyr Oorjak Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- .babelrc | 22 ---------------------- babel.config.js | 26 ++++++++++++++++++++++++++ src/models/MSC3089TreeSpace.ts | 2 +- 3 files changed, 27 insertions(+), 23 deletions(-) delete mode 100644 .babelrc create mode 100644 babel.config.js diff --git a/.babelrc b/.babelrc deleted file mode 100644 index 6e6720bbf11..00000000000 --- a/.babelrc +++ /dev/null @@ -1,22 +0,0 @@ -{ - "sourceMaps": true, - "presets": [ - [ - "@babel/preset-env", - { - "targets": { - "node": 10 - }, - "modules": "commonjs" - } - ], - "@babel/preset-typescript" - ], - "plugins": [ - "@babel/plugin-proposal-numeric-separator", - "@babel/plugin-proposal-class-properties", - "@babel/plugin-proposal-object-rest-spread", - "@babel/plugin-syntax-dynamic-import", - "@babel/plugin-transform-runtime" - ] -} diff --git a/babel.config.js b/babel.config.js new file mode 100644 index 00000000000..6b39ec8271b --- /dev/null +++ b/babel.config.js @@ -0,0 +1,26 @@ +module.exports = { + sourceMaps: true, + presets: [ + [ + "@babel/preset-env", + { + targets: { + esmodules: true, + }, + // We want to output ES modules for the final build (mostly to ensure that + // async imports work correctly). However, jest doesn't support ES modules very + // well yet (see https://github.com/jestjs/jest/issues/9430), so we use commonjs + // when testing. + modules: process.env.NODE_ENV === "test" ? "commonjs" : false, + }, + ], + "@babel/preset-typescript", + ], + plugins: [ + "@babel/plugin-proposal-numeric-separator", + "@babel/plugin-proposal-class-properties", + "@babel/plugin-proposal-object-rest-spread", + "@babel/plugin-syntax-dynamic-import", + "@babel/plugin-transform-runtime", + ], +}; diff --git a/src/models/MSC3089TreeSpace.ts b/src/models/MSC3089TreeSpace.ts index 76aae65588c..6dc1b6fbb63 100644 --- a/src/models/MSC3089TreeSpace.ts +++ b/src/models/MSC3089TreeSpace.ts @@ -35,7 +35,7 @@ import { ISendEventResponse } from "../@types/requests"; import { FileType } from "../http-api"; import { KnownMembership } from "../@types/membership"; import { RoomPowerLevelsEventContent, SpaceChildEventContent } from "../@types/state_events"; -import { EncryptedFile, FileContent } from "../@types/media"; +import type { EncryptedFile, FileContent } from "../@types/media"; /** * The recommended defaults for a tree space's power levels. Note that this From 38898a60c76db77960720212e862ae892ea44c36 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 21 May 2024 12:24:52 +0000 Subject: [PATCH 231/595] v32.3.0 --- CHANGELOG.md | 13 +++++++++++++ package.json | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2527030bccd..a75f7cff4fa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,16 @@ +Changes in [32.3.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v32.3.0) (2024-05-21) +================================================================================================== +## ✨ Features + +* Simplify OIDC types \& export `decodeIdToken` ([#4193](https://github.com/matrix-org/matrix-js-sdk/pull/4193)). Contributed by @t3chguy. +* Add helpers for authenticated media, and associated documentation ([#4185](https://github.com/matrix-org/matrix-js-sdk/pull/4185)). Contributed by @turt2live. + +## 🐛 Bug Fixes + +* Fix state\_events.ts types ([#4196](https://github.com/matrix-org/matrix-js-sdk/pull/4196)). Contributed by @t3chguy. +* Fix sendEventHttpRequest for `m.room.redaction` events without `redacts` ([#4192](https://github.com/matrix-org/matrix-js-sdk/pull/4192)). Contributed by @t3chguy. + + Changes in [32.2.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v32.2.0) (2024-05-07) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index b29c03cd610..7dedf40457c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "32.3.0-rc.0", + "version": "32.3.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 8c3be2a56aa590be056fe6766e86ad38e93b2b9f Mon Sep 17 00:00:00 2001 From: R Midhun Suresh Date: Tue, 21 May 2024 21:25:49 +0530 Subject: [PATCH 232/595] Update organization (#4212) --- .github/workflows/notify-downstream.yaml | 2 +- .github/workflows/triage-labelled.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/notify-downstream.yaml b/.github/workflows/notify-downstream.yaml index a1c4a28a5ce..8de5da70dcd 100644 --- a/.github/workflows/notify-downstream.yaml +++ b/.github/workflows/notify-downstream.yaml @@ -12,7 +12,7 @@ jobs: fail-fast: false matrix: include: - - repo: vector-im/element-web + - repo: element-hq/element-web event: element-web-notify - repo: matrix-org/matrix-react-sdk event: upstream-sdk-notify diff --git a/.github/workflows/triage-labelled.yml b/.github/workflows/triage-labelled.yml index cb013753c56..e464e5b7268 100644 --- a/.github/workflows/triage-labelled.yml +++ b/.github/workflows/triage-labelled.yml @@ -6,6 +6,6 @@ on: jobs: call-triage-labelled: - uses: vector-im/element-web/.github/workflows/triage-labelled.yml@develop + uses: element-hq/element-web/.github/workflows/triage-labelled.yml@develop secrets: ELEMENT_BOT_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }} From a86d4ceb49137f13240674ddb358bb96934ba720 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Wed, 22 May 2024 12:04:07 +0000 Subject: [PATCH 233/595] v32.4.0 --- CHANGELOG.md | 5 +++++ package.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a75f7cff4fa..2a6d95478ae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +Changes in [32.4.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v32.4.0) (2024-05-22) +================================================================================================== +* No changes + + Changes in [32.3.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v32.3.0) (2024-05-21) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index 7dedf40457c..204c33cf816 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "32.3.0", + "version": "32.4.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From a81adf542e1a480c9c7f78c1fcf0691d03c3440e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 23 May 2024 12:19:41 +0100 Subject: [PATCH 234/595] Update dependency @matrix-org/matrix-sdk-crypto-wasm to v4.10.0 (#4214) * Update dependency @matrix-org/matrix-sdk-crypto-wasm to v4.10.0 * Disable affected test Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/rust-crypto/rust-crypto.spec.ts | 3 ++- yarn.lock | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 1a1ff5525fc..c6507a0d145 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -1391,7 +1391,8 @@ describe("RustCrypto", () => { expect(await keyBackupStatusPromise).toBe(true); }); - it("does not back up keys that came from backup", async () => { + // XXX: disabled until https://github.com/matrix-org/matrix-rust-sdk/issues/3447 is fixed + it.skip("does not back up keys that came from backup", async () => { const rustCrypto = await makeTestRustCrypto(); const olmMachine: OlmMachine = rustCrypto["olmMachine"]; diff --git a/yarn.lock b/yarn.lock index 51c6c910d10..5cb282f1b02 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1773,9 +1773,9 @@ "@jridgewell/sourcemap-codec" "^1.4.14" "@matrix-org/matrix-sdk-crypto-wasm@^4.9.0": - version "4.9.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.9.0.tgz#9dfed83e33f760650596c4e5c520e5e4c53355d2" - integrity sha512-/bgA4QfE7qkK6GFr9hnhjAvRSebGrmEJxukU0ukbudZcYvbzymoBBM8j3HeULXZT8kbw8WH6z63txYTMCBSDOA== + version "4.10.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.10.0.tgz#324211b9bad3d2aa640800f62ba9478ce2845097" + integrity sha512-zOqKVAYPfzs6Hav/Km9F5xWwoQ0bxDuoUU0/121m03Fg2VnfcHk43TjKImZolFc7IlgXwVGoda9Pp9Z/eTVKJA== "@matrix-org/olm@3.2.15": version "3.2.15" From 36196ea4221ea749b36192a1ef141a6a55d55959 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 24 May 2024 10:52:34 +0100 Subject: [PATCH 235/595] `initRustCrypto`: allow app to pass in the store key directly (#4210) * `initRustCrypto`: allow app to pass in the store key directly ... instead of using the pickleKey. This allows us to avoid a slow PBKDF operation. * Fix link in doc-comment --- spec/integ/crypto/rust-crypto.spec.ts | 38 +++++++++++++++++++++ spec/unit/rust-crypto/rust-crypto.spec.ts | 30 +++++++++++++++-- src/client.ts | 41 ++++++++++++++--------- src/rust-crypto/index.ts | 28 ++++++++++++---- 4 files changed, 112 insertions(+), 25 deletions(-) diff --git a/spec/integ/crypto/rust-crypto.spec.ts b/spec/integ/crypto/rust-crypto.spec.ts index 311410febbe..c6b990fed0f 100644 --- a/spec/integ/crypto/rust-crypto.spec.ts +++ b/spec/integ/crypto/rust-crypto.spec.ts @@ -85,6 +85,44 @@ describe("MatrixClient.initRustCrypto", () => { ); }); + it("should create the meta db if given a storageKey", async () => { + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: "@alice:localhost", + deviceId: "aliceDevice", + }); + + // No databases. + expect(await indexedDB.databases()).toHaveLength(0); + + await matrixClient.initRustCrypto({ storageKey: new Uint8Array(32) }); + + // should have two indexed dbs now + const databaseNames = (await indexedDB.databases()).map((db) => db.name); + expect(databaseNames).toEqual( + expect.arrayContaining(["matrix-js-sdk::matrix-sdk-crypto", "matrix-js-sdk::matrix-sdk-crypto-meta"]), + ); + }); + + it("should create the meta db if given a storagePassword", async () => { + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: "@alice:localhost", + deviceId: "aliceDevice", + }); + + // No databases. + expect(await indexedDB.databases()).toHaveLength(0); + + await matrixClient.initRustCrypto({ storagePassword: "the cow is on the moon" }); + + // should have two indexed dbs now + const databaseNames = (await indexedDB.databases()).map((db) => db.name); + expect(databaseNames).toEqual( + expect.arrayContaining(["matrix-js-sdk::matrix-sdk-crypto", "matrix-js-sdk::matrix-sdk-crypto-meta"]), + ); + }); + it("should ignore a second call", async () => { const matrixClient = createClient({ baseUrl: "http://test.server", diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index c6507a0d145..90cd079912e 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -104,7 +104,7 @@ describe("initRustCrypto", () => { } as unknown as Mocked; } - it("passes through the store params", async () => { + it("passes through the store params (passphrase)", async () => { const mockStore = { free: jest.fn() } as unknown as StoreHandle; jest.spyOn(StoreHandle, "open").mockResolvedValue(mockStore); @@ -126,7 +126,30 @@ describe("initRustCrypto", () => { expect(OlmMachine.initFromStore).toHaveBeenCalledWith(expect.anything(), expect.anything(), mockStore); }); - it("suppresses the storePassphrase if storePrefix is unset", async () => { + it("passes through the store params (key)", async () => { + const mockStore = { free: jest.fn() } as unknown as StoreHandle; + jest.spyOn(StoreHandle, "openWithKey").mockResolvedValue(mockStore); + + const testOlmMachine = makeTestOlmMachine(); + jest.spyOn(OlmMachine, "initFromStore").mockResolvedValue(testOlmMachine); + + const storeKey = new Uint8Array(32); + await initRustCrypto({ + logger, + http: {} as MatrixClient["http"], + userId: TEST_USER, + deviceId: TEST_DEVICE_ID, + secretStorage: {} as ServerSideSecretStorage, + cryptoCallbacks: {} as CryptoCallbacks, + storePrefix: "storePrefix", + storeKey: storeKey, + }); + + expect(StoreHandle.openWithKey).toHaveBeenCalledWith("storePrefix", storeKey); + expect(OlmMachine.initFromStore).toHaveBeenCalledWith(expect.anything(), expect.anything(), mockStore); + }); + + it("suppresses the storePassphrase and storeKey if storePrefix is unset", async () => { const mockStore = { free: jest.fn() } as unknown as StoreHandle; jest.spyOn(StoreHandle, "open").mockResolvedValue(mockStore); @@ -141,10 +164,11 @@ describe("initRustCrypto", () => { secretStorage: {} as ServerSideSecretStorage, cryptoCallbacks: {} as CryptoCallbacks, storePrefix: null, + storeKey: new Uint8Array(), storePassphrase: "storePassphrase", }); - expect(StoreHandle.open).toHaveBeenCalledWith(undefined, undefined); + expect(StoreHandle.open).toHaveBeenCalledWith(); expect(OlmMachine.initFromStore).toHaveBeenCalledWith(expect.anything(), expect.anything(), mockStore); }); diff --git a/src/client.ts b/src/client.ts index 27485d076f8..2e349213123 100644 --- a/src/client.ts +++ b/src/client.ts @@ -357,14 +357,14 @@ export interface ICreateClientOpts { deviceToImport?: IExportedDevice; /** - * Encryption key used for encrypting sensitive data (such as e2ee keys) in storage. + * Encryption key used for encrypting sensitive data (such as e2ee keys) in {@link ICreateClientOpts#cryptoStore}. * * This must be set to the same value every time the client is initialised for the same device. * - * If unset, either a hardcoded key or no encryption at all is used, depending on the Crypto implementation. - * - * No particular requirement is placed on the key data (it is fed into an HKDF to generate the actual encryption - * keys). + * This is only used for the legacy crypto implementation (as used by {@link MatrixClient#initCrypto}), + * but if you use the rust crypto implementation ({@link MatrixClient#initRustCrypto}) and the device + * previously used legacy crypto (so must be migrated), then this must still be provided, so that the + * data can be migrated from the legacy store. */ pickleKey?: string; @@ -2229,17 +2229,24 @@ export class MatrixClient extends TypedEventEmitter { + public async initRustCrypto( + args: { + useIndexedDB?: boolean; + storageKey?: Uint8Array; + storagePassword?: string; + } = {}, + ): Promise { if (this.cryptoBackend) { this.logger.warn("Attempt to re-initialise e2e encryption on MatrixClient"); return; @@ -2272,11 +2279,15 @@ export class MatrixClient extends TypedEventEmitter { + legacyMigrationProgressListener: (progress: number, total: number): void => { this.emit(CryptoEvent.LegacyCryptoStoreMigrationProgress, progress, total); }, }); diff --git a/src/rust-crypto/index.ts b/src/rust-crypto/index.ts index 6defede1e95..dc9a42af743 100644 --- a/src/rust-crypto/index.ts +++ b/src/rust-crypto/index.ts @@ -64,13 +64,21 @@ export async function initRustCrypto(args: { storePrefix: string | null; /** - * A passphrase to use to encrypt the indexeddbs created by rust-crypto. + * A passphrase to use to encrypt the indexeddb created by rust-crypto. * - * Ignored if `storePrefix` is null. If this is `undefined` (and `storePrefix` is not null), the indexeddbs - * will be unencrypted. + * Ignored if `storePrefix` is null, or `storeKey` is set. If neither this nor `storeKey` is set + * (and `storePrefix` is not null), the indexeddb will be unencrypted. */ storePassphrase?: string; + /** + * A key to use to encrypt the indexeddb created by rust-crypto. + * + * Ignored if `storePrefix` is null. Otherwise, if it is set, it must be a 32-byte cryptographic key, which + * will be used to encrypt the indexeddb. See also `storePassphrase`. + */ + storeKey?: Uint8Array; + /** If defined, we will check if any data needs migrating from this store to the rust store. */ legacyCryptoStore?: CryptoStore; @@ -94,10 +102,16 @@ export async function initRustCrypto(args: { new RustSdkCryptoJs.Tracing(RustSdkCryptoJs.LoggerLevel.Debug).turnOn(); logger.debug("Opening Rust CryptoStore"); - const storeHandle: StoreHandle = await StoreHandle.open( - args.storePrefix ?? undefined, - (args.storePrefix && args.storePassphrase) ?? undefined, - ); + let storeHandle; + if (args.storePrefix) { + if (args.storeKey) { + storeHandle = await StoreHandle.openWithKey(args.storePrefix, args.storeKey); + } else { + storeHandle = await StoreHandle.open(args.storePrefix, args.storePassphrase); + } + } else { + storeHandle = await StoreHandle.open(); + } if (args.legacyCryptoStore) { // We have a legacy crypto store, which we may need to migrate from. From b19817bb73afe480d12d5e1223e70cc0ddf7f065 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 24 May 2024 12:10:52 +0100 Subject: [PATCH 236/595] Bump matrix-sdk-crypto-wasm to 5.0.0 (#4216) Slightly more involved than normal because it requires us to pass a backup version into OlmMachine.importBackedUpRoomKeys. On the other hand we can now re-enable the test that was disabled in #4214 due to matrix-org/matrix-rust-sdk#3447 Fixes: element-hq/element-web#27165 --- package.json | 2 +- spec/unit/rust-crypto/rust-crypto.spec.ts | 13 +++++++------ src/client.ts | 12 +++++++----- src/common-crypto/CryptoBackend.ts | 3 ++- src/crypto/index.ts | 6 +++++- src/rust-crypto/PerSessionKeyBackupDownloader.ts | 12 ++++++++---- src/rust-crypto/backup.ts | 7 ++++++- src/rust-crypto/rust-crypto.ts | 8 ++++++-- yarn.lock | 8 ++++---- 9 files changed, 46 insertions(+), 25 deletions(-) diff --git a/package.json b/package.json index a55e2ee3ea5..9bec27646fb 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^4.9.0", + "@matrix-org/matrix-sdk-crypto-wasm": "^5.0.0", "another-json": "^0.2.0", "bs58": "^5.0.0", "content-type": "^1.0.4", diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 90cd079912e..57c1066d593 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -1415,19 +1415,19 @@ describe("RustCrypto", () => { expect(await keyBackupStatusPromise).toBe(true); }); - // XXX: disabled until https://github.com/matrix-org/matrix-rust-sdk/issues/3447 is fixed - it.skip("does not back up keys that came from backup", async () => { + it("does not back up keys that came from backup", async () => { const rustCrypto = await makeTestRustCrypto(); const olmMachine: OlmMachine = rustCrypto["olmMachine"]; + const backupVersion = testData.SIGNED_BACKUP_DATA.version!; await olmMachine.enableBackupV1( (testData.SIGNED_BACKUP_DATA.auth_data as Curve25519AuthData).public_key, - testData.SIGNED_BACKUP_DATA.version!, + backupVersion, ); // we import two keys: one "from backup", and one "from export" const [backedUpRoomKey, exportedRoomKey] = testData.MEGOLM_SESSION_DATA_ARRAY; - await rustCrypto.importBackedUpRoomKeys([backedUpRoomKey]); + await rustCrypto.importBackedUpRoomKeys([backedUpRoomKey], backupVersion); await rustCrypto.importRoomKeys([exportedRoomKey]); // we ask for the keys that should be backed up @@ -1462,16 +1462,17 @@ describe("RustCrypto", () => { const rustCrypto = await makeTestRustCrypto(); const olmMachine: OlmMachine = rustCrypto["olmMachine"]; + const backupVersion = testData.SIGNED_BACKUP_DATA.version!; await olmMachine.enableBackupV1( (testData.SIGNED_BACKUP_DATA.auth_data as Curve25519AuthData).public_key, - testData.SIGNED_BACKUP_DATA.version!, + backupVersion, ); const backup = Array.from(testData.MEGOLM_SESSION_DATA_ARRAY); // in addition to correct keys, we restore an invalid key backup.push({ room_id: "!roomid", session_id: "sessionid" } as IMegolmSessionData); const progressCallback = jest.fn(); - await rustCrypto.importBackedUpRoomKeys(backup, { progressCallback }); + await rustCrypto.importBackedUpRoomKeys(backup, backupVersion, { progressCallback }); expect(progressCallback).toHaveBeenCalledWith({ total: 3, successes: 0, diff --git a/src/client.ts b/src/client.ts index 2e349213123..4200a6154d9 100644 --- a/src/client.ts +++ b/src/client.ts @@ -3863,12 +3863,13 @@ export class MatrixClient extends TypedEventEmitter { this.logger.warn("Error caching session backup key:", e); }) @@ -3922,7 +3923,8 @@ export class MatrixClient extends TypedEventEmitter { // We have a chunk of decrypted keys: import them try { - await this.cryptoBackend!.importBackedUpRoomKeys(chunk, { + const backupVersion = backupInfo.version!; + await this.cryptoBackend!.importBackedUpRoomKeys(chunk, backupVersion, { untrusted, }); totalImported += chunk.length; @@ -3952,7 +3954,7 @@ export class MatrixClient extends TypedEventEmitter; + importBackedUpRoomKeys(keys: IMegolmSessionData[], backupVersion: string, opts?: ImportRoomKeysOpts): Promise; } /** The methods which crypto implementations should expose to the Sync api diff --git a/src/crypto/index.ts b/src/crypto/index.ts index ff62c429c9f..bf8af76e380 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -1888,7 +1888,11 @@ export class Crypto extends TypedEventEmitter { + public importBackedUpRoomKeys( + keys: IMegolmSessionData[], + backupVersion: string, + opts: ImportRoomKeysOpts = {}, + ): Promise { opts.source = "backup"; return this.importRoomKeys(keys, opts); } diff --git a/src/rust-crypto/PerSessionKeyBackupDownloader.ts b/src/rust-crypto/PerSessionKeyBackupDownloader.ts index 7642d52f9d9..ad5a649c51f 100644 --- a/src/rust-crypto/PerSessionKeyBackupDownloader.ts +++ b/src/rust-crypto/PerSessionKeyBackupDownloader.ts @@ -57,10 +57,14 @@ class KeyDownloadRateLimitError extends Error { /** Details of a megolm session whose key we are trying to fetch. */ type SessionInfo = { roomId: string; megolmSessionId: string }; -/** Holds the current backup decryptor and version that should be used. */ +/** Holds the current backup decryptor and version that should be used. + * + * This is intended to be used as an immutable object (a new instance should be created if the configuration changes), + * and some of the logic relies on that, so the properties are marked as `readonly`. + */ type Configuration = { - backupVersion: string; - decryptor: BackupDecryptor; + readonly backupVersion: string; + readonly decryptor: BackupDecryptor; }; /** @@ -392,7 +396,7 @@ export class PerSessionKeyBackupDownloader { for (const k of keys) { k.room_id = sessionInfo.roomId; } - await this.backupManager.importBackedUpRoomKeys(keys); + await this.backupManager.importBackedUpRoomKeys(keys, configuration.backupVersion); } /** diff --git a/src/rust-crypto/backup.ts b/src/rust-crypto/backup.ts index 5c9c5772e2b..8eb84887448 100644 --- a/src/rust-crypto/backup.ts +++ b/src/rust-crypto/backup.ts @@ -239,7 +239,11 @@ export class RustBackupManager extends TypedEventEmitter { + public async importBackedUpRoomKeys( + keys: IMegolmSessionData[], + backupVersion: string, + opts?: ImportRoomKeysOpts, + ): Promise { const keysByRoom: Map> = new Map(); for (const key of keys) { const roomId = new RustSdkCryptoJs.RoomId(key.room_id); @@ -259,6 +263,7 @@ export class RustBackupManager extends TypedEventEmitter { - return await this.backupManager.importBackedUpRoomKeys(keys, opts); + public async importBackedUpRoomKeys( + keys: IMegolmSessionData[], + backupVersion: string, + opts?: ImportRoomKeysOpts, + ): Promise { + return await this.backupManager.importBackedUpRoomKeys(keys, backupVersion, opts); } /** diff --git a/yarn.lock b/yarn.lock index 5cb282f1b02..cf6d64c5b80 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1772,10 +1772,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@matrix-org/matrix-sdk-crypto-wasm@^4.9.0": - version "4.10.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-4.10.0.tgz#324211b9bad3d2aa640800f62ba9478ce2845097" - integrity sha512-zOqKVAYPfzs6Hav/Km9F5xWwoQ0bxDuoUU0/121m03Fg2VnfcHk43TjKImZolFc7IlgXwVGoda9Pp9Z/eTVKJA== +"@matrix-org/matrix-sdk-crypto-wasm@^5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-5.0.0.tgz#f45a7bccaad218c05bcf9e7c8ca783c9d9a07af4" + integrity sha512-37ASjCKSTU5ycGfkP+LUXG4Ok6OAf6vE+1qU6uwWhe6FwadCS3vVWzJYd/3d9BQFwsx4GhFTIAXrW4iLG85rmQ== "@matrix-org/olm@3.2.15": version "3.2.15" From 7c876251575ebe0b17b97cd25ef7fe6308bca5de Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 28 May 2024 09:12:55 +0100 Subject: [PATCH 237/595] Remove more deprecated methods, fields, and exports (#4217) --- spec/integ/crypto/megolm-backup.spec.ts | 4 +- spec/integ/matrix-client-methods.spec.ts | 24 ------ .../integ/matrix-client-room-timeline.spec.ts | 2 +- spec/test-utils/test-utils.ts | 6 +- spec/unit/autodiscovery.spec.ts | 2 +- spec/unit/event-timeline-set.spec.ts | 5 -- spec/unit/matrix-client.spec.ts | 1 - spec/unit/room.spec.ts | 23 +----- src/@types/registration.ts | 18 ++--- src/autodiscovery.ts | 5 -- src/client.ts | 38 ++------- src/crypto-api/keybackup.ts | 2 +- src/crypto/index.ts | 28 +++---- src/matrix.ts | 14 ---- src/models/event-timeline-set.ts | 37 +-------- src/models/event-timeline.ts | 23 +----- src/models/event.ts | 21 +---- src/models/room.ts | 78 +------------------ src/rust-crypto/rust-crypto.ts | 2 +- src/sync-accumulator.ts | 4 +- src/utils.ts | 7 +- 21 files changed, 47 insertions(+), 297 deletions(-) diff --git a/spec/integ/crypto/megolm-backup.spec.ts b/spec/integ/crypto/megolm-backup.spec.ts index 66f7892daa5..eee0eafebc2 100644 --- a/spec/integ/crypto/megolm-backup.spec.ts +++ b/spec/integ/crypto/megolm-backup.spec.ts @@ -21,7 +21,7 @@ import { Mocked } from "jest-mock"; import { createClient, - CryptoApi, + Crypto, CryptoEvent, ICreateClientOpts, IEvent, @@ -310,7 +310,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("megolm-keys backup (%s)", (backe }); describe("recover from backup", () => { - let aliceCrypto: CryptoApi; + let aliceCrypto: Crypto.CryptoApi; beforeEach(async () => { fetchMock.get("path:/_matrix/client/v3/room_keys/version", testData.SIGNED_BACKUP_DATA); diff --git a/spec/integ/matrix-client-methods.spec.ts b/spec/integ/matrix-client-methods.spec.ts index a66d41b3dbd..06986652d48 100644 --- a/spec/integ/matrix-client-methods.spec.ts +++ b/spec/integ/matrix-client-methods.spec.ts @@ -1825,7 +1825,6 @@ function withThreadId(event: MatrixEvent, newThreadId: string): MatrixEvent { const buildEventMessageInThread = (root: MatrixEvent) => new MatrixEvent({ - age: 80098509, content: { "algorithm": "m.megolm.v1.aes-sha2", "ciphertext": "ENCRYPTEDSTUFF", @@ -1846,12 +1845,10 @@ const buildEventMessageInThread = (root: MatrixEvent) => sender: "@andybalaam-test1:matrix.org", type: "m.room.encrypted", unsigned: { age: 80098509 }, - user_id: "@andybalaam-test1:matrix.org", }); const buildEventPollResponseReference = () => new MatrixEvent({ - age: 80098509, content: { "algorithm": "m.megolm.v1.aes-sha2", "ciphertext": "ENCRYPTEDSTUFF", @@ -1869,7 +1866,6 @@ const buildEventPollResponseReference = () => sender: "@andybalaam-test1:matrix.org", type: "m.room.encrypted", unsigned: { age: 80106237 }, - user_id: "@andybalaam-test1:matrix.org", }); const buildEventReaction = (event: MatrixEvent) => @@ -1909,7 +1905,6 @@ const buildEventRedaction = (event: MatrixEvent) => const buildEventPollStartThreadRoot = () => new MatrixEvent({ - age: 80108647, content: { algorithm: "m.megolm.v1.aes-sha2", ciphertext: "ENCRYPTEDSTUFF", @@ -1923,12 +1918,10 @@ const buildEventPollStartThreadRoot = () => sender: "@andybalaam-test1:matrix.org", type: "m.room.encrypted", unsigned: { age: 80108647 }, - user_id: "@andybalaam-test1:matrix.org", }); const buildEventReply = (target: MatrixEvent) => new MatrixEvent({ - age: 80098509, content: { "algorithm": "m.megolm.v1.aes-sha2", "ciphertext": "ENCRYPTEDSTUFF", @@ -1947,12 +1940,10 @@ const buildEventReply = (target: MatrixEvent) => sender: "@andybalaam-test1:matrix.org", type: "m.room.encrypted", unsigned: { age: 80098509 }, - user_id: "@andybalaam-test1:matrix.org", }); const buildEventRoomName = () => new MatrixEvent({ - age: 80123249, content: { name: "1 poll, 1 vote, 1 thread", }, @@ -1963,12 +1954,10 @@ const buildEventRoomName = () => state_key: "", type: "m.room.name", unsigned: { age: 80123249 }, - user_id: "@andybalaam-test1:matrix.org", }); const buildEventEncryption = () => new MatrixEvent({ - age: 80123383, content: { algorithm: "m.megolm.v1.aes-sha2", }, @@ -1979,12 +1968,10 @@ const buildEventEncryption = () => state_key: "", type: "m.room.encryption", unsigned: { age: 80123383 }, - user_id: "@andybalaam-test1:matrix.org", }); const buildEventGuestAccess = () => new MatrixEvent({ - age: 80123473, content: { guest_access: "can_join", }, @@ -1995,12 +1982,10 @@ const buildEventGuestAccess = () => state_key: "", type: "m.room.guest_access", unsigned: { age: 80123473 }, - user_id: "@andybalaam-test1:matrix.org", }); const buildEventHistoryVisibility = () => new MatrixEvent({ - age: 80123556, content: { history_visibility: "shared", }, @@ -2011,12 +1996,10 @@ const buildEventHistoryVisibility = () => state_key: "", type: "m.room.history_visibility", unsigned: { age: 80123556 }, - user_id: "@andybalaam-test1:matrix.org", }); const buildEventJoinRules = () => new MatrixEvent({ - age: 80123696, content: { join_rule: KnownMembership.Invite, }, @@ -2027,12 +2010,10 @@ const buildEventJoinRules = () => state_key: "", type: "m.room.join_rules", unsigned: { age: 80123696 }, - user_id: "@andybalaam-test1:matrix.org", }); const buildEventPowerLevels = () => new MatrixEvent({ - age: 80124105, content: { ban: 50, events: { @@ -2063,12 +2044,10 @@ const buildEventPowerLevels = () => state_key: "", type: "m.room.power_levels", unsigned: { age: 80124105 }, - user_id: "@andybalaam-test1:matrix.org", }); const buildEventMember = () => new MatrixEvent({ - age: 80125279, content: { avatar_url: "mxc://matrix.org/aNtbVcFfwotudypZcHsIcPOc", displayname: "andybalaam-test1", @@ -2081,12 +2060,10 @@ const buildEventMember = () => state_key: "@andybalaam-test1:matrix.org", type: "m.room.member", unsigned: { age: 80125279 }, - user_id: "@andybalaam-test1:matrix.org", }); const buildEventCreate = () => new MatrixEvent({ - age: 80126105, content: { room_version: "6", }, @@ -2097,7 +2074,6 @@ const buildEventCreate = () => state_key: "", type: "m.room.create", unsigned: { age: 80126105 }, - user_id: "@andybalaam-test1:matrix.org", }); function assertObjectContains(obj: Record, expected: any): void { diff --git a/spec/integ/matrix-client-room-timeline.spec.ts b/spec/integ/matrix-client-room-timeline.spec.ts index a5d4c220a95..1d0ed86e0d3 100644 --- a/spec/integ/matrix-client-room-timeline.spec.ts +++ b/spec/integ/matrix-client-room-timeline.spec.ts @@ -333,7 +333,7 @@ describe("MatrixClient room timelines", function () { name: userName, url: "mxc://some/url", }); - oldMshipEvent.prev_content = { + oldMshipEvent.unsigned!.prev_content = { displayname: "Old Alice", avatar_url: undefined, membership: KnownMembership.Join, diff --git a/spec/test-utils/test-utils.ts b/spec/test-utils/test-utils.ts index 965a6a08806..a6cc6445565 100644 --- a/spec/test-utils/test-utils.ts +++ b/spec/test-utils/test-utils.ts @@ -173,8 +173,10 @@ export function mkEvent(opts: IEventOpts & { event?: boolean }, client?: MatrixC room_id: opts.room, sender: opts.sender || opts.user, // opts.user for backwards-compat content: opts.content, - prev_content: opts.prev_content, - unsigned: opts.unsigned || {}, + unsigned: { + ...opts.unsigned, + prev_content: opts.prev_content, + }, event_id: "$" + testEventIndex++ + "-" + Math.random() + "-" + Math.random(), txn_id: "~" + Math.random(), redacts: opts.redacts, diff --git a/spec/unit/autodiscovery.spec.ts b/spec/unit/autodiscovery.spec.ts index ceed8be1f57..e4c7c98b293 100644 --- a/spec/unit/autodiscovery.spec.ts +++ b/spec/unit/autodiscovery.spec.ts @@ -857,7 +857,7 @@ describe("AutoDiscovery", function () { const expected = { "m.homeserver": { state: AutoDiscoveryAction.FAIL_ERROR, - error: AutoDiscovery.ERROR_HOMESERVER_TOO_OLD, + error: AutoDiscovery.ERROR_UNSUPPORTED_HOMESERVER_SPEC_VERSION, base_url: "https://example.org", }, "m.identity_server": { diff --git a/spec/unit/event-timeline-set.spec.ts b/spec/unit/event-timeline-set.spec.ts index a817127569c..c89ddc4606e 100644 --- a/spec/unit/event-timeline-set.spec.ts +++ b/spec/unit/event-timeline-set.spec.ts @@ -136,11 +136,6 @@ describe("EventTimelineSet", () => { expect(eventsInLiveTimeline.length).toStrictEqual(1); expect(eventsInLiveTimeline[0]).toStrictEqual(duplicateMessageEvent); }); - - it("Make sure legacy overload passing options directly as parameters still works", () => { - expect(() => eventTimelineSet.addLiveEvent(messageEvent, DuplicateStrategy.Replace, false)).not.toThrow(); - expect(() => eventTimelineSet.addLiveEvent(messageEvent, DuplicateStrategy.Ignore, true)).not.toThrow(); - }); }); describe("addEventToTimeline", () => { diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index b83e841fcf6..fa9cd776902 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -1560,7 +1560,6 @@ describe("MatrixClient", function () { }, }, event_id: "$ev1", - user_id: "@alice:matrix.org", }); expect(rootEvent.isThreadRoot).toBe(true); diff --git a/spec/unit/room.spec.ts b/spec/unit/room.spec.ts index 6ca454ef82a..eb90b8bdfa0 100644 --- a/spec/unit/room.spec.ts +++ b/spec/unit/room.spec.ts @@ -22,7 +22,7 @@ import { mocked } from "jest-mock"; import { M_POLL_KIND_DISCLOSED, M_POLL_RESPONSE, M_POLL_START, Optional, PollStartEvent } from "matrix-events-sdk"; import * as utils from "../test-utils/test-utils"; -import { emitPromise } from "../test-utils/test-utils"; +import { emitPromise, IMessageOpts } from "../test-utils/test-utils"; import { Direction, DuplicateStrategy, @@ -54,7 +54,6 @@ import { Crypto } from "../../src/crypto"; import * as threadUtils from "../test-utils/thread"; import { getMockClientWithEventEmitter, mockClientMethodsUser } from "../test-utils/client"; import { logger } from "../../src/logger"; -import { IMessageOpts } from "../test-utils/test-utils"; import { flushPromises } from "../test-utils/flushPromises"; import { KnownMembership } from "../../src/@types/membership"; @@ -339,24 +338,6 @@ describe("Room", function () { }), ]; - it("Make sure legacy overload passing options directly as parameters still works", async () => { - await expect(room.addLiveEvents(events, DuplicateStrategy.Replace, false)).resolves.not.toThrow(); - await expect(room.addLiveEvents(events, DuplicateStrategy.Ignore, true)).resolves.not.toThrow(); - await expect( - // @ts-ignore - room.addLiveEvents(events, "shouldfailbecauseinvalidduplicatestrategy", false), - ).rejects.toThrow(); - }); - - it("should throw if duplicateStrategy isn't 'replace' or 'ignore'", async function () { - return expect( - // @ts-ignore - room.addLiveEvents(events, { - duplicateStrategy: "foo", - }), - ).rejects.toThrow(); - }); - it("should replace a timeline event if dupe strategy is 'replace'", async function () { // make a duplicate const dupe = utils.mkMessage({ @@ -387,7 +368,7 @@ describe("Room", function () { expect(room.timeline[0]).toEqual(events[0]); // @ts-ignore await room.addLiveEvents([dupe], { - duplicateStrategy: "ignore", + duplicateStrategy: DuplicateStrategy.Ignore, }); expect(room.timeline[0]).toEqual(events[0]); }); diff --git a/src/@types/registration.ts b/src/@types/registration.ts index 90fc098e482..7bfb99f7d40 100644 --- a/src/@types/registration.ts +++ b/src/@types/registration.ts @@ -52,21 +52,13 @@ export interface RegisterRequest { */ initial_device_display_name?: string; /** - * @deprecated missing in the spec + * Guest users can also upgrade their account by going through the ordinary register flow, + * but specifying the additional POST parameter guest_access_token containing the guest’s access token. + * They are also required to specify the username parameter to the value of the local part of their username, + * which is otherwise optional. + * @see https://spec.matrix.org/v1.10/client-server-api/#guest-access */ guest_access_token?: string; - /** - * @deprecated missing in the spec - */ - x_show_msisdn?: boolean; - /** - * @deprecated missing in the spec - */ - bind_msisdn?: boolean; - /** - * @deprecated missing in the spec - */ - bind_email?: boolean; } /** diff --git a/src/autodiscovery.ts b/src/autodiscovery.ts index 29dac54bdb7..8f4f196682c 100644 --- a/src/autodiscovery.ts +++ b/src/autodiscovery.ts @@ -43,8 +43,6 @@ export enum AutoDiscoveryError { InvalidJson = "Invalid JSON", UnsupportedHomeserverSpecVersion = "The homeserver does not meet the version requirements", - /** @deprecated Replaced by `UnsupportedHomeserverSpecVersion` */ - HomeserverTooOld = UnsupportedHomeserverSpecVersion, // TODO: Implement when Sydent supports the `/versions` endpoint - https://github.com/matrix-org/sydent/issues/424 //IdentityServerTooOld = "The identity server does not meet the minimum version requirements", } @@ -91,9 +89,6 @@ export class AutoDiscovery { public static readonly ERROR_UNSUPPORTED_HOMESERVER_SPEC_VERSION = AutoDiscoveryError.UnsupportedHomeserverSpecVersion; - /** @deprecated Replaced by ERROR_UNSUPPORTED_HOMESERVER_SPEC_VERSION */ - public static readonly ERROR_HOMESERVER_TOO_OLD = AutoDiscovery.ERROR_UNSUPPORTED_HOMESERVER_SPEC_VERSION; - public static readonly ALL_ERRORS = Object.keys(AutoDiscoveryError) as AutoDiscoveryError[]; /** diff --git a/src/client.ts b/src/client.ts index 4200a6154d9..72e28f52916 100644 --- a/src/client.ts +++ b/src/client.ts @@ -1480,13 +1480,6 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -3381,7 +3374,7 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -7901,16 +7894,10 @@ export class MatrixClient extends TypedEventEmitter { - // backwards compat - if (bindThreepids === true) { - bindThreepids = { email: true }; - } else if (bindThreepids === null || bindThreepids === undefined || bindThreepids === false) { - bindThreepids = {}; - } if (sessionId) { auth.session = sessionId; } @@ -7925,27 +7912,12 @@ export class MatrixClient extends TypedEventEmitter { const publicKeysOnDevice = Boolean(this.crossSigningInfo.getId()); @@ -1167,7 +1167,7 @@ export class Crypto extends TypedEventEmitter { // Delete existing ones @@ -1203,7 +1203,7 @@ export class Crypto extends TypedEventEmitter { await this.backupManager.deleteKeyBackupVersion(version); @@ -1350,7 +1350,7 @@ export class Crypto extends TypedEventEmitter { if (this.backupManager.getKeyBackupEnabled()) { @@ -1372,7 +1372,7 @@ export class Crypto extends TypedEventEmitter { const checkResult = await this.backupManager.checkKeyBackup(); @@ -1589,7 +1589,7 @@ export class Crypto extends TypedEventEmitter { return this.checkUserTrust(userId); @@ -1990,7 +1990,7 @@ export class Crypto extends TypedEventEmitter { if (!this.olmDevice.deviceCurve25519Key) { @@ -2344,7 +2344,7 @@ export class Crypto extends TypedEventEmitter { await this.setDeviceVerification(userId, deviceId, verified); @@ -2353,7 +2353,7 @@ export class Crypto extends TypedEventEmitter { await this.setDeviceVerified(this.userId, deviceId, true); @@ -2789,7 +2789,7 @@ export class Crypto extends TypedEventEmitter { const encryptionInfo = this.getEventEncryptionInfo(event); @@ -4272,7 +4272,7 @@ export class Crypto extends TypedEventEmitter { return this.isRoomEncrypted(roomId); diff --git a/src/matrix.ts b/src/matrix.ts index ed71f7dfcac..793a894e0d0 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -114,20 +114,6 @@ export { LocationAssetType } from "./@types/location"; */ export * as Crypto from "./crypto-api"; -/** - * Backwards compatibility re-export - * @internal - * @deprecated use {@link Crypto.CryptoApi} - */ -export type { CryptoApi } from "./crypto-api"; - -/** - * Backwards compatibility re-export - * @internal - * @deprecated use {@link Crypto.DeviceVerificationStatus} - */ -export { DeviceVerificationStatus } from "./crypto-api"; - let cryptoStoreFactory = (): CryptoStore => new MemoryCryptoStore(); /** diff --git a/src/models/event-timeline-set.ts b/src/models/event-timeline-set.ts index 38d47cd2147..e64d118fdd5 100644 --- a/src/models/event-timeline-set.ts +++ b/src/models/event-timeline-set.ts @@ -592,43 +592,8 @@ export class EventTimelineSet extends TypedEventEmitter { */ private threads = new Map(); - /** - * @deprecated This value is unreliable. It may not contain the last thread. - * Use {@link Room.getLastThread} instead. - */ - public lastThread?: Thread; - /** * A mapping of eventId to all visibility changes to apply * to the event, by chronological order, as per @@ -1382,32 +1376,6 @@ export class Room extends ReadReceipt { } } - /** - * Returns whether there are any devices in the room that are unverified - * - * Note: Callers should first check if crypto is enabled on this device. If it is - * disabled, then we aren't tracking room devices at all, so we can't answer this, and an - * error will be thrown. - * - * @returns the result - * - * @deprecated Not supported under rust crypto. Instead, call {@link Room.getEncryptionTargetMembers}, - * {@link CryptoApi.getUserDeviceInfo}, and {@link CryptoApi.getDeviceVerificationStatus}. - */ - public async hasUnverifiedDevices(): Promise { - if (!this.hasEncryptionStateEvent()) { - return false; - } - const e2eMembers = await this.getEncryptionTargetMembers(); - for (const member of e2eMembers) { - const devices = this.client.getStoredDevicesForUser(member.userId); - if (devices.some((device) => device.isUnverified())) { - return true; - } - } - return false; - } - /** * Return the timeline sets for this room. * @returns array of timeline sets for this room @@ -2458,15 +2426,6 @@ export class Room extends ReadReceipt { // and pass the event through this. thread.addEvents(events, false); - const isNewer = - this.lastThread?.rootEvent && - rootEvent?.localTimestamp && - this.lastThread.rootEvent?.localTimestamp < rootEvent?.localTimestamp; - - if (!this.lastThread || isNewer) { - this.lastThread = thread; - } - // We need to update the thread root events, but the thread may not be ready yet. // If it isn't, it will fire ThreadEvent.Update when it is and we'll call updateThreadRootEvents then. if (this.threadsReady && thread.initialEventsFetched) { @@ -2896,39 +2855,8 @@ export class Room extends ReadReceipt { * @param addLiveEventOptions - addLiveEvent options * @throws If `duplicateStrategy` is not falsey, 'replace' or 'ignore'. */ - public async addLiveEvents(events: MatrixEvent[], addLiveEventOptions?: IAddLiveEventOptions): Promise; - /** - * @deprecated In favor of the overload with `IAddLiveEventOptions` - */ - public async addLiveEvents( - events: MatrixEvent[], - duplicateStrategy?: DuplicateStrategy, - fromCache?: boolean, - ): Promise; - public async addLiveEvents( - events: MatrixEvent[], - duplicateStrategyOrOpts?: DuplicateStrategy | IAddLiveEventOptions, - fromCache = false, - ): Promise { - let duplicateStrategy: DuplicateStrategy | undefined = duplicateStrategyOrOpts as DuplicateStrategy; - let timelineWasEmpty: boolean | undefined = false; - if (typeof duplicateStrategyOrOpts === "object") { - ({ - duplicateStrategy, - fromCache = false, - /* roomState, (not used here) */ - timelineWasEmpty, - } = duplicateStrategyOrOpts); - } else if (duplicateStrategyOrOpts !== undefined) { - // Deprecation warning - // FIXME: Remove after 2023-06-01 (technical debt) - logger.warn( - "Overload deprecated: " + - "`Room.addLiveEvents(events, duplicateStrategy?, fromCache?)` " + - "is deprecated in favor of the overload with `Room.addLiveEvents(events, IAddLiveEventOptions)`", - ); - } - + public async addLiveEvents(events: MatrixEvent[], addLiveEventOptions?: IAddLiveEventOptions): Promise { + const { duplicateStrategy, fromCache, timelineWasEmpty = false } = addLiveEventOptions ?? {}; if (duplicateStrategy && ["replace", "ignore"].indexOf(duplicateStrategy) === -1) { throw new Error("duplicateStrategy MUST be either 'replace' or 'ignore'"); } @@ -3229,7 +3157,7 @@ export class Room extends ReadReceipt { content: strippedEvent.content, event_id: "$fake" + Date.now(), room_id: this.roomId, - user_id: this.myUserId, // technically a lie + sender: this.myUserId, // technically a lie }), ]); } diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 555ada8b354..8cbfba4b0c5 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -865,7 +865,7 @@ export class RustCrypto extends TypedEventEmitter { return this.eventDecryptor.getEncryptionInfoForEvent(event); diff --git a/src/sync-accumulator.ts b/src/sync-accumulator.ts index 67d5e1d6802..eec811577b8 100644 --- a/src/sync-accumulator.ts +++ b/src/sync-accumulator.ts @@ -58,8 +58,6 @@ export interface IRoomEvent extends IMinimalEvent { event_id: string; sender: string; origin_server_ts: number; - /** @deprecated - legacy field */ - age?: number; } export interface IStateEvent extends IRoomEvent { @@ -498,7 +496,7 @@ export class SyncAccumulator { if (transformedEvent.unsigned !== undefined) { transformedEvent.unsigned = Object.assign({}, transformedEvent.unsigned); } - const age = e.unsigned ? e.unsigned.age : e.age; + const age = e.unsigned?.age; if (age !== undefined) transformedEvent._localTs = Date.now() - age; } else { transformedEvent = e; diff --git a/src/utils.ts b/src/utils.ts index 28e867eeda0..f3ad18d5735 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -748,12 +748,7 @@ export function safeSet, K extends keyof O>(obj: O, p } export function noUnsafeEventProps(event: Partial): boolean { - return !( - unsafeProp(event.room_id) || - unsafeProp(event.sender) || - unsafeProp(event.user_id) || - unsafeProp(event.event_id) - ); + return !(unsafeProp(event.room_id) || unsafeProp(event.sender) || unsafeProp(event.event_id)); } export class MapWithDefault extends Map { From 909caab74e730902f674e0b3d2298cdd1f159770 Mon Sep 17 00:00:00 2001 From: Andy Balaam Date: Tue, 28 May 2024 18:43:25 +0100 Subject: [PATCH 238/595] Don't run migration for Rust crypto if the legacy store is empty (#4218) * Don't run migration for Rust crypto if the legacy store is empty Fixes https://github.com/element-hq/element-web/issues/27447 * Add copyright for the TypeScript files in legacy DB dumps * Provide a type for the accountPickle we check for before migration * Remove redundant backup response This is unused * Simplify keys response * Downgrade log message. --------- Co-authored-by: Richard van der Hoff --- spec/integ/crypto/rust-crypto.spec.ts | 33 +++++++++++++++++ .../empty_account/README.md | 10 ++++++ .../empty_account/dump.json | 14 ++++++++ .../empty_account/index.ts | 35 +++++++++++++++++++ .../full_account/index.ts | 16 +++++++++ .../no_cached_msk_dump/index.ts | 16 +++++++++ .../unverified/index.ts | 16 +++++++++ src/rust-crypto/libolm_migration.ts | 13 +++++++ 8 files changed, 153 insertions(+) create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/README.md create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/dump.json create mode 100644 spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/index.ts diff --git a/spec/integ/crypto/rust-crypto.spec.ts b/spec/integ/crypto/rust-crypto.spec.ts index c6b990fed0f..a1b7a7545ed 100644 --- a/spec/integ/crypto/rust-crypto.spec.ts +++ b/spec/integ/crypto/rust-crypto.spec.ts @@ -23,6 +23,7 @@ import { populateStore } from "../../test-utils/test_indexeddb_cryptostore_dump" import { MSK_NOT_CACHED_DATASET } from "../../test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump"; import { IDENTITY_NOT_TRUSTED_DATASET } from "../../test-utils/test_indexeddb_cryptostore_dump/unverified"; import { FULL_ACCOUNT_DATASET } from "../../test-utils/test_indexeddb_cryptostore_dump/full_account"; +import { EMPTY_ACCOUNT_DATASET } from "../../test-utils/test_indexeddb_cryptostore_dump/empty_account"; jest.setTimeout(15000); @@ -304,6 +305,38 @@ describe("MatrixClient.initRustCrypto", () => { }); }); + it("should not migrate if account data is missing", async () => { + // See https://github.com/element-hq/element-web/issues/27447 + + // Given we have an almost-empty legacy account in the database + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { errcode: "M_NOT_FOUND", error: "No backup found" }, + }); + fetchMock.post("path:/_matrix/client/v3/keys/query", EMPTY_ACCOUNT_DATASET.keyQueryResponse); + + const testStoreName = "test-store"; + await populateStore(testStoreName, EMPTY_ACCOUNT_DATASET.dumpPath); + const cryptoStore = new IndexedDBCryptoStore(indexedDB, testStoreName); + + const matrixClient = createClient({ + baseUrl: "http://test.server", + userId: EMPTY_ACCOUNT_DATASET.userId, + deviceId: EMPTY_ACCOUNT_DATASET.deviceId, + cryptoStore, + pickleKey: EMPTY_ACCOUNT_DATASET.pickleKey, + }); + + // When we start Rust crypto, potentially triggering an upgrade + const progressListener = jest.fn(); + matrixClient.addListener(CryptoEvent.LegacyCryptoStoreMigrationProgress, progressListener); + + await matrixClient.initRustCrypto(); + + // Then no error occurs, and no upgrade happens + expect(progressListener.mock.calls.length).toBe(0); + }, 60000); + describe("Legacy trust migration", () => { async function populateAndStartLegacyCryptoStore(dumpPath: string): Promise { const testStoreName = "test-store"; diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/README.md b/spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/README.md new file mode 100644 index 00000000000..df3ab87e55c --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/README.md @@ -0,0 +1,10 @@ +## Dump of an empty libolm indexeddb cryptostore to test skipping migration + +A dump of an account which is almost completely empty, and totally unsuitable +for use as a real account. + +This dump was manually created by copying and editing full_account. + +Created to test +["Unable to restore session" error due due to half-initialised legacy indexeddb crypto store #27447](https://github.com/element-hq/element-web/issues/27447). +We should not launch the Rust migration code when we find a DB in this state. diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/dump.json b/spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/dump.json new file mode 100644 index 00000000000..10227c8bc43 --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/dump.json @@ -0,0 +1,14 @@ +{ + "account": [], + "device_data": [], + "inbound_group_sessions": [], + "inbound_group_sessions_withheld": [], + "notified_error_devices": [], + "outgoingRoomKeyRequests": [], + "parked_shared_history": [], + "rooms": [], + "session_problems": [], + "sessions": [], + "sessions_needing_backup": [], + "shared_history_inbound_group_sessions": [] +} diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/index.ts b/spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/index.ts new file mode 100644 index 00000000000..db196e99424 --- /dev/null +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/index.ts @@ -0,0 +1,35 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { DumpDataSetInfo } from "../index"; + +/** + * A key query response containing the current keys of the tested user. + * To be used during tests with fetchmock. + */ +const KEYS_QUERY_RESPONSE = { device_keys: { "@emptyuser:example.com": {} } }; + +/** + * A dataset containing the information for the tested user. + * To be used during tests. + */ +export const EMPTY_ACCOUNT_DATASET: DumpDataSetInfo = { + userId: "@emptyuser:example.com", + deviceId: "EMPTYDEVIC", + pickleKey: "+/bcdefghijklmnopqrstu1/zyxvutsrqponmlkjih2", + keyQueryResponse: KEYS_QUERY_RESPONSE, + dumpPath: "spec/test-utils/test_indexeddb_cryptostore_dump/empty_account/dump.json", +}; diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/index.ts b/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/index.ts index 96aa258401d..3ea92d6b210 100644 --- a/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/index.ts +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/full_account/index.ts @@ -1,3 +1,19 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + import { DumpDataSetInfo } from "../index"; /** diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts b/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts index bc4c8449fed..3d2a380d433 100644 --- a/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/no_cached_msk_dump/index.ts @@ -1,3 +1,19 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + import { KeyBackupInfo } from "../../../../src/crypto-api/keybackup"; import { DumpDataSetInfo } from "../index"; diff --git a/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/index.ts b/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/index.ts index b89a0f3caef..4499180b6da 100644 --- a/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/index.ts +++ b/spec/test-utils/test_indexeddb_cryptostore_dump/unverified/index.ts @@ -1,3 +1,19 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + import { DumpDataSetInfo } from "../index"; /** diff --git a/src/rust-crypto/libolm_migration.ts b/src/rust-crypto/libolm_migration.ts index 2738f88f6c8..ec01847262c 100644 --- a/src/rust-crypto/libolm_migration.ts +++ b/src/rust-crypto/libolm_migration.ts @@ -83,6 +83,19 @@ export async function migrateFromLegacyCrypto(args: { } await legacyStore.startup(); + + let accountPickle: string | null = null; + await legacyStore.doTxn("readonly", [IndexedDBCryptoStore.STORE_ACCOUNT], (txn) => { + legacyStore.getAccount(txn, (acctPickle) => { + accountPickle = acctPickle; + }); + }); + if (!accountPickle) { + // This store is not properly set up. Nothing to migrate. + logger.debug("Legacy crypto store is not set up (no account found). Not migrating."); + return; + } + let migrationState = await legacyStore.getMigrationState(); if (migrationState >= MigrationState.MEGOLM_SESSIONS_MIGRATED) { From 9d6210b3f9188d2847ca3700ffa871dc16e8fda4 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Wed, 29 May 2024 12:54:25 +0000 Subject: [PATCH 239/595] v33.0.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 9bec27646fb..af72d945e47 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "32.4.0", + "version": "33.0.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,5 +132,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From 3ee64722c5d9755ed40a9087c8dafd713c4372b1 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Thu, 30 May 2024 12:23:24 +0100 Subject: [PATCH 240/595] Add note about MSC3886, MSC3903 and MSC3906 being closed (#4189) * Add note about MSC3886, MSC3903 and MSC3906 being closed * Move comments in to jsdoc --------- Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- src/rendezvous/MSC3906Rendezvous.ts | 3 +++ src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts | 3 +++ .../transports/MSC3886SimpleHttpRendezvousTransport.ts | 3 +++ 3 files changed, 9 insertions(+) diff --git a/src/rendezvous/MSC3906Rendezvous.ts b/src/rendezvous/MSC3906Rendezvous.ts index e558c224abe..4e2d2eab3c8 100644 --- a/src/rendezvous/MSC3906Rendezvous.ts +++ b/src/rendezvous/MSC3906Rendezvous.ts @@ -59,6 +59,9 @@ const LOGIN_TOKEN_PROTOCOL = new UnstableValue("login_token", "org.matrix.msc390 * Implements MSC3906 to allow a user to sign in on a new device using QR code. * This implementation only supports generating a QR code on a device that is already signed in. * Note that this is UNSTABLE and may have breaking changes without notice. + * MSC3886/MSC3903/MSC3906 are now closed and so this functionality will be removed in future. + * However, we want to keep this implementation around for some time. + * TODO: define an end-of-life date for this implementation. */ export class MSC3906Rendezvous { private newDeviceId?: string; diff --git a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts b/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts index 872c6ea2c78..e7998dc141c 100644 --- a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts +++ b/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts @@ -69,6 +69,9 @@ async function importKey(key: Uint8Array): Promise { * Implementation of the unstable [MSC3903](https://github.com/matrix-org/matrix-spec-proposals/pull/3903) * X25519/ECDH key agreement based secure rendezvous channel. * Note that this is UNSTABLE and may have breaking changes without notice. + * MSC3886/MSC3903/MSC3906 are now closed and so this functionality will be removed in future. + * However, we want to keep this implementation around for some time. + * TODO: define an end-of-life date for this implementation. */ export class MSC3903ECDHv2RendezvousChannel implements RendezvousChannel { private olmSAS?: SAS; diff --git a/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts b/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts index 430ee92d1c7..f23a5f47cd5 100644 --- a/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts +++ b/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts @@ -37,6 +37,9 @@ export interface MSC3886SimpleHttpRendezvousTransportDetails extends RendezvousT * Implementation of the unstable [MSC3886](https://github.com/matrix-org/matrix-spec-proposals/pull/3886) * simple HTTP rendezvous protocol. * Note that this is UNSTABLE and may have breaking changes without notice. + * MSC3886/MSC3903/MSC3906 are now closed and so this functionality will be removed in future. + * However, we want to keep this implementation around for some time. + * TODO: define an end-of-life date for this implementation. */ export class MSC3886SimpleHttpRendezvousTransport implements RendezvousTransport { private uri?: string; From 853560420050882a2c8c5687d5a468c0d7d5f757 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 30 May 2024 11:45:14 +0000 Subject: [PATCH 241/595] Update actions/checkout digest to a5ac7e5 (#4219) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/sonarcloud.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index 016dfa7c219..d97a2082172 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -30,7 +30,7 @@ jobs: target_url: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} - name: "🧮 Checkout code" - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4 + uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4 with: repository: ${{ github.event.workflow_run.head_repository.full_name }} ref: ${{ github.event.workflow_run.head_branch }} # checkout commit that triggered this workflow From 042610310f49816f23697ffb814aa6a3981cf650 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 30 May 2024 13:42:20 +0000 Subject: [PATCH 242/595] Update dependency typedoc-plugin-mdn-links to v3.1.27 (#4222) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index cf6d64c5b80..fc020a3e68e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6505,9 +6505,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-PAMYQ4fX7wJo6Y8mMzrISDNRurl5+xSNWEojrt6Yxofb/m7vWrgiP3bid2KXloMlPcSfCoBiJA6F2g3rmu8XTQ== typedoc-plugin-mdn-links@^3.0.3: - version "3.1.25" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.25.tgz#db877e030216d90f52933b2e5cd5e0506df4af18" - integrity sha512-Tox8kt/yUt+vUiSjz22D+yJyKH7z1f9/CtWbrJdOkfGpmt4SOssEmCPYgxmKPTTCt+SMHL8w5S5tWSc+gj3GYA== + version "3.1.27" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.27.tgz#f69f5b45fa3a1f3cbeded801516af98b071e3bf3" + integrity sha512-fpAAvu0LrYc9JPMaab0YcmToaF2NsGCkFhSsNPB1O82VEqwk8MHIytUxQXrY6cn+bgyr2xRqA1Fo2D9mA60Gyw== typedoc-plugin-missing-exports@^2.0.0: version "2.2.0" From 8dfb6de3ccf0a429bab375efd848e152ffce7629 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 30 May 2024 14:10:12 +0000 Subject: [PATCH 243/595] Update all non-major dependencies (#4220) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 200 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 102 insertions(+), 98 deletions(-) diff --git a/yarn.lock b/yarn.lock index fc020a3e68e..8d211c5c802 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1390,10 +1390,10 @@ to-pascal-case "^1.0.0" unescape-js "^1.0.5" -"@es-joy/jsdoccomment@~0.43.0": - version "0.43.0" - resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.43.0.tgz#35c295cadd0a939d1a3a6cd1548f66ec76d38870" - integrity sha512-Q1CnsQrytI3TlCB1IVWXWeqUIPGVEKGaE7IbVdt13Nq/3i0JESAkQQERrfiQkmlpijl+++qyqPgaS31Bvc1jRQ== +"@es-joy/jsdoccomment@~0.43.1": + version "0.43.1" + resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.43.1.tgz#4b1979b7b4ff8b596fb19a3aa696a438e44608d7" + integrity sha512-I238eDtOolvCuvtxrnqtlBaw0BwdQuYqK7eA6XIonicMdOOOb75mqdIzkGDUbS04+1Di007rgm9snFRNeVrOog== dependencies: "@types/eslint" "^8.56.5" "@types/estree" "^1.0.5" @@ -2207,11 +2207,16 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.8.0.tgz#1fd2577b3ad883b769546e2d1ef379f929a7091d" integrity sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw== -"@typescript-eslint/types@7.9.0", "@typescript-eslint/types@^7.2.0": +"@typescript-eslint/types@7.9.0": version "7.9.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.9.0.tgz#b58e485e4bfba055659c7e683ad4f5f0821ae2ec" integrity sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w== +"@typescript-eslint/types@^7.2.0": + version "7.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.11.0.tgz#5e9702a5e8b424b7fc690e338d359939257d6722" + integrity sha512-MPEsDRZTyCiXkD4vd3zywDCifi7tatc4K37KqTprCvaXptP7Xlpdw0NR2hRJTetG5TxbWDB79Ys4kLmHliEo/w== + "@typescript-eslint/typescript-estree@7.8.0": version "7.8.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.8.0.tgz#b028a9226860b66e623c1ee55cc2464b95d2987c" @@ -2365,11 +2370,9 @@ ansi-escapes@^4.2.1: type-fest "^0.21.3" ansi-escapes@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-6.2.0.tgz#8a13ce75286f417f1963487d86ba9f90dccf9947" - integrity sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw== - dependencies: - type-fest "^3.0.0" + version "6.2.1" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-6.2.1.tgz#76c54ce9b081dad39acec4b5d53377913825fb0f" + integrity sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig== ansi-regex@^5.0.1: version "5.0.1" @@ -2665,7 +2668,14 @@ brace-expansion@^2.0.1: dependencies: balanced-match "^1.0.0" -braces@^3.0.2, braces@~3.0.2: +braces@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== + dependencies: + fill-range "^7.1.1" + +braces@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== @@ -2755,11 +2765,6 @@ chalk@5.2.0: resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.2.0.tgz#249623b7d66869c673699fb66d65723e54dfcfb3" integrity sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA== -chalk@5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.3.0.tgz#67c20a7ebef70e7f3970a01f90fa210cb6860385" - integrity sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w== - chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" @@ -2777,6 +2782,11 @@ chalk@^4.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" +chalk@~5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.3.0.tgz#67c20a7ebef70e7f3970a01f90fa210cb6860385" + integrity sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w== + char-regex@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" @@ -2899,16 +2909,16 @@ combined-stream@^1.0.8: dependencies: delayed-stream "~1.0.0" -commander@11.1.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-11.1.0.tgz#62fdce76006a68e5c1ab3314dc92e800eb83d906" - integrity sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ== - commander@^4.0.1, commander@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== +commander@~12.1.0: + version "12.1.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-12.1.0.tgz#01423b36f501259fdaac4d0e4d60c96c991585d3" + integrity sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA== + comment-parser@1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/comment-parser/-/comment-parser-1.4.1.tgz#bdafead37961ac079be11eb7ec65c4d021eaf9cc" @@ -3013,7 +3023,7 @@ data-urls@^3.0.2: whatwg-mimetype "^3.0.0" whatwg-url "^11.0.0" -debug@4, debug@4.3.4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -3365,18 +3375,17 @@ eslint-plugin-jest@^28.0.0: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0" eslint-plugin-jsdoc@^48.0.0: - version "48.2.4" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.4.tgz#0b6972faa9e5de89a08f1b0bcdc30e70a9cad736" - integrity sha512-3ebvVgCJFy06gpmuS2ynz13uh9iFSzZ1C1dDkgcSAqVVg82zlORKMk2fvjq708pAO6bwfs5YLttknFEbaoDiGw== + version "48.2.7" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.7.tgz#2610b6fa1a9ba45c8296c2f335e0360bbd238772" + integrity sha512-fYj3roTnkFL9OFFTB129rico8lerC5G8Vp2ZW9SjO9RNWG0exVvI+i/Y8Bpm1ufjR0uvT38xtoab/U0Hp8Ybog== dependencies: - "@es-joy/jsdoccomment" "~0.43.0" + "@es-joy/jsdoccomment" "~0.43.1" are-docs-informative "^0.0.2" comment-parser "1.4.1" debug "^4.3.4" escape-string-regexp "^4.0.0" esquery "^1.5.0" - is-builtin-module "^3.2.1" - semver "^7.6.0" + semver "^7.6.2" spdx-expression-parse "^4.0.0" eslint-plugin-matrix-org@^1.0.0: @@ -3556,21 +3565,6 @@ events@^3.2.0: resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== -execa@8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-8.0.1.tgz#51f6a5943b580f963c3ca9c6321796db8cc39b8c" - integrity sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg== - dependencies: - cross-spawn "^7.0.3" - get-stream "^8.0.1" - human-signals "^5.0.0" - is-stream "^3.0.0" - merge-stream "^2.0.0" - npm-run-path "^5.1.0" - onetime "^6.0.0" - signal-exit "^4.1.0" - strip-final-newline "^3.0.0" - execa@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" @@ -3586,6 +3580,21 @@ execa@^5.0.0: signal-exit "^3.0.3" strip-final-newline "^2.0.0" +execa@~8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-8.0.1.tgz#51f6a5943b580f963c3ca9c6321796db8cc39b8c" + integrity sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg== + dependencies: + cross-spawn "^7.0.3" + get-stream "^8.0.1" + human-signals "^5.0.0" + is-stream "^3.0.0" + merge-stream "^2.0.0" + npm-run-path "^5.1.0" + onetime "^6.0.0" + signal-exit "^4.1.0" + strip-final-newline "^3.0.0" + exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" @@ -3706,10 +3715,10 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== +fill-range@^7.0.1, fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== dependencies: to-regex-range "^5.0.1" @@ -4985,9 +4994,9 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.16.0" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.16.0.tgz#aa6c4de4f38f1735a984fca6f868826f254f3464" - integrity sha512-kdHfTRZuOqsMnvYYNT+pwefyBUNUYTqgyeGM8k4hfw++GZ3TMRGSPZoSl8IxQTy56AkxEDWyj1/P/mYv1vu/Gw== + version "5.17.3" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.17.3.tgz#eb2c285bc513e679917fdddeb54842b90cd90299" + integrity sha512-x2paKB0BOzFjnetYolGwg9Dwa8ZIYwBuVP2V4bWRFfTeLs7BymARb7I00R3OCbr09gKKr8TPLQVx2GQ6RF9llQ== dependencies: "@ericcornelissen/bash-parser" "0.5.2" "@nodelib/fs.walk" "2.0.0" @@ -5021,10 +5030,10 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" -lilconfig@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.0.0.tgz#f8067feb033b5b74dab4602a5f5029420be749bc" - integrity sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g== +lilconfig@~3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.1.tgz#9d8a246fa753106cfc205fd2d77042faca56e5e3" + integrity sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ== lines-and-columns@^1.1.6: version "1.2.4" @@ -5032,31 +5041,31 @@ lines-and-columns@^1.1.6: integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== lint-staged@^15.0.2: - version "15.2.2" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.2.tgz#ad7cbb5b3ab70e043fa05bff82a09ed286bc4c5f" - integrity sha512-TiTt93OPh1OZOsb5B7k96A/ATl2AjIZo+vnzFZ6oHK5FuTk63ByDtxGQpHm+kFETjEWqgkF95M8FRXKR/LEBcw== - dependencies: - chalk "5.3.0" - commander "11.1.0" - debug "4.3.4" - execa "8.0.1" - lilconfig "3.0.0" - listr2 "8.0.1" - micromatch "4.0.5" - pidtree "0.6.0" - string-argv "0.3.2" - yaml "2.3.4" - -listr2@8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.0.1.tgz#4d3f50ae6cec3c62bdf0e94f5c2c9edebd4b9c34" - integrity sha512-ovJXBXkKGfq+CwmKTjluEqFi3p4h8xvkxGQQAQan22YCgef4KZ1mKGjzfGh6PL6AW5Csw0QiQPNuQyH+6Xk3hA== + version "15.2.5" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.5.tgz#8c342f211bdb34ffd3efd1311248fa6b50b43b50" + integrity sha512-j+DfX7W9YUvdzEZl3Rk47FhDF6xwDBV5wwsCPw6BwWZVPYJemusQmvb9bRsW23Sqsaa+vRloAWogbK4BUuU2zA== + dependencies: + chalk "~5.3.0" + commander "~12.1.0" + debug "~4.3.4" + execa "~8.0.1" + lilconfig "~3.1.1" + listr2 "~8.2.1" + micromatch "~4.0.7" + pidtree "~0.6.0" + string-argv "~0.3.2" + yaml "~2.4.2" + +listr2@~8.2.1: + version "8.2.1" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.2.1.tgz#06a1a6efe85f23c5324180d7c1ddbd96b5eefd6d" + integrity sha512-irTfvpib/rNiD637xeevjO2l3Z5loZmuaRi0L0YE5LfijwVY96oyVn0DFD3o/teAok7nfobMG1THvvcHh/BP6g== dependencies: cli-truncate "^4.0.0" colorette "^2.0.20" eventemitter3 "^5.0.1" log-update "^6.0.0" - rfdc "^1.3.0" + rfdc "^1.3.1" wrap-ansi "^9.0.0" locate-path@^5.0.0: @@ -5212,12 +5221,12 @@ merge2@^1.3.0, merge2@^1.4.1: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -micromatch@4.0.5, micromatch@^4.0.4: - version "4.0.5" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" - integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== +micromatch@^4.0.4, micromatch@~4.0.7: + version "4.0.7" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5" + integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q== dependencies: - braces "^3.0.2" + braces "^3.0.3" picomatch "^2.3.1" mime-db@1.52.0: @@ -5331,9 +5340,9 @@ npm-run-path@^4.0.1: path-key "^3.0.0" npm-run-path@^5.1.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.2.0.tgz#224cdd22c755560253dd71b83a1ef2f758b2e955" - integrity sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg== + version "5.3.0" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.3.0.tgz#e23353d0ebb9317f174e93417e4a4d82d0249e9f" + integrity sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ== dependencies: path-key "^4.0.0" @@ -5575,7 +5584,7 @@ picomatch@^4.0.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== -pidtree@0.6.0: +pidtree@~0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c" integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g== @@ -5869,7 +5878,7 @@ reverse-arguments@^1.0.0: resolved "https://registry.yarnpkg.com/reverse-arguments/-/reverse-arguments-1.0.0.tgz#c28095a3a921ac715d61834ddece9027992667cd" integrity sha512-/x8uIPdTafBqakK0TmPNJzgkLP+3H+yxpUJhCQHsLBg1rYEVNR2D8BRYNWQhVBjyOd7oo1dZRVzIkwMY2oqfYQ== -rfdc@^1.3.0: +rfdc@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.1.tgz#2b6d4df52dffe8bb346992a10ea9451f24373a8f" integrity sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg== @@ -5960,7 +5969,7 @@ semver@^7.5.4: dependencies: lru-cache "^6.0.0" -semver@^7.6.0, semver@^7.6.1: +semver@^7.6.0, semver@^7.6.1, semver@^7.6.2: version "7.6.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== @@ -6109,9 +6118,9 @@ spdx-expression-parse@^4.0.0: spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.17" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz#887da8aa73218e51a1d917502d79863161a93f9c" - integrity sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg== + version "3.0.18" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz#22aa922dcf2f2885a6494a261f2d8b75345d0326" + integrity sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ== sprintf-js@~1.0.2: version "1.0.3" @@ -6125,7 +6134,7 @@ stack-utils@^2.0.3: dependencies: escape-string-regexp "^2.0.0" -string-argv@0.3.2: +string-argv@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.2.tgz#2b6d0ef24b656274d957d54e0a4bbf6153dc02b6" integrity sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q== @@ -6455,11 +6464,6 @@ type-fest@^0.8.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -type-fest@^3.0.0: - version "3.13.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-3.13.1.tgz#bb744c1f0678bea7543a2d1ec24e83e68e8c8706" - integrity sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g== - typed-array-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz#18de3e7ed7974b0a729d3feecb94338d1472cd60" @@ -6851,10 +6855,10 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@2.3.4: - version "2.3.4" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.3.4.tgz#53fc1d514be80aabf386dc6001eb29bf3b7523b2" - integrity sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA== +yaml@~2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.4.2.tgz#7a2b30f2243a5fc299e1f14ca58d475ed4bc5362" + integrity sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA== yargs-parser@^21.1.1: version "21.1.1" From 5c27e30302c6466ac299b5741961bdb72585ea8c Mon Sep 17 00:00:00 2001 From: David Baker Date: Thu, 30 May 2024 16:16:42 +0100 Subject: [PATCH 244/595] Fix the queueToDevice tests for the new fakeindexeddb (#4225) https://github.com/dumbmatter/fakeIndexedDB/pull/93 causes a bunch of tests to start failing because the fake timers need running in order for fake indexeddb to work. It also seems to cause failures to bleed between tests somehow if fake timers are enabled/disabled. This keeps all the fake timer tests in one suite and all the others in another, which appears to work. This should allow https://github.com/matrix-org/matrix-js-sdk/pull/4224 to be merged. --- spec/unit/queueToDevice.spec.ts | 428 ++++++++++++++++++-------------- 1 file changed, 235 insertions(+), 193 deletions(-) diff --git a/spec/unit/queueToDevice.spec.ts b/spec/unit/queueToDevice.spec.ts index f9b90304e02..362d410af1a 100644 --- a/spec/unit/queueToDevice.spec.ts +++ b/spec/unit/queueToDevice.spec.ts @@ -61,251 +61,293 @@ describe.each([[StoreType.Memory], [StoreType.IndexedDB]])("queueToDevice (%s st let httpBackend: MockHttpBackend; let client: MatrixClient; - beforeEach(async function () { - jest.runOnlyPendingTimers(); - jest.useRealTimers(); - httpBackend = new MockHttpBackend(); - - let store: IStore; - if (storeType === StoreType.IndexedDB) { - const idbStore = new IndexedDBStore({ indexedDB: fakeIndexedDB }); - await idbStore.startup(); - store = idbStore; - } else { - store = new MemoryStore(); - } - - client = new MatrixClient({ - baseUrl: "https://my.home.server", - accessToken: "my.access.token", - fetchFn: httpBackend.fetchFn as typeof global.fetch, - store, + /** + * We need to split the tests into regular ones (these) and ones that use fake timers, + * because the fake indexeddb uses timers too and appears make tests cause other tests + * to fail if we keep enabling/disabling fake timers within the same test suite. + */ + describe("non-timed tests", () => { + beforeEach(async function () { + httpBackend = new MockHttpBackend(); + + let store: IStore; + if (storeType === StoreType.IndexedDB) { + const idbStore = new IndexedDBStore({ indexedDB: fakeIndexedDB }); + await idbStore.startup(); + store = idbStore; + } else { + store = new MemoryStore(); + } + + client = new MatrixClient({ + baseUrl: "https://my.home.server", + accessToken: "my.access.token", + fetchFn: httpBackend.fetchFn as typeof global.fetch, + store, + }); }); - }); - - afterEach(function () { - jest.useRealTimers(); - client.stopClient(); - }); - it("sends a to-device message", async function () { - httpBackend - .when("PUT", "/sendToDevice/org.example.foo/") - .check((request) => { - expect(request.data).toEqual(EXPECTED_BODY); - }) - .respond(200, {}); - - await client.queueToDevice({ - eventType: "org.example.foo", - batch: [FAKE_MSG], + afterEach(function () { + client.stopClient(); }); - await httpBackend.flushAllExpected(); - // let the code handle the response to the request so we don't get - // log output after the test has finished (apparently stopping the - // client in aftereach is not sufficient.) - await flushPromises(); - }); - - it("retries on error", async function () { - jest.useFakeTimers(); - - httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(500); - - httpBackend - .when("PUT", "/sendToDevice/org.example.foo/") - .check((request) => { - expect(request.data).toEqual(EXPECTED_BODY); - }) - .respond(200, {}); + it("sends a to-device message", async function () { + httpBackend + .when("PUT", "/sendToDevice/org.example.foo/") + .check((request) => { + expect(request.data).toEqual(EXPECTED_BODY); + }) + .respond(200, {}); + + await client.queueToDevice({ + eventType: "org.example.foo", + batch: [FAKE_MSG], + }); - await client.queueToDevice({ - eventType: "org.example.foo", - batch: [FAKE_MSG], + await httpBackend.flushAllExpected(); + // let the code handle the response to the request so we don't get + // log output after the test has finished (apparently stopping the + // client in aftereach is not sufficient.) + await flushPromises(); }); - await flushAndRunTimersUntil(() => httpBackend.requests.length > 0); - expect(httpBackend.flushSync(undefined, 1)).toEqual(1); - await flushAndRunTimersUntil(() => httpBackend.requests.length > 0); + it("retries on retryImmediately()", async function () { + httpBackend.when("GET", "/_matrix/client/versions").respond(200, { + versions: ["v1.1"], + }); - expect(httpBackend.flushSync(undefined, 1)).toEqual(1); + await Promise.all([client.startClient(), httpBackend.flush(undefined, 1, 20)]); - // flush, as per comment in first test - await flushPromises(); - }); + httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(500); + + httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(200, {}); - it("stops retrying on 4xx errors", async function () { - jest.useFakeTimers(); + await client.queueToDevice({ + eventType: "org.example.foo", + batch: [FAKE_MSG], + }); + expect(await httpBackend.flush(undefined, 1, 1)).toEqual(1); + await flushPromises(); - httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(400); + client.retryImmediately(); - await client.queueToDevice({ - eventType: "org.example.foo", - batch: [FAKE_MSG], + // longer timeout here to try & avoid flakiness + expect(await httpBackend.flush(undefined, 1, 3000)).toEqual(1); }); - await flushAndRunTimersUntil(() => httpBackend.requests.length > 0); - expect(httpBackend.flushSync(undefined, 1)).toEqual(1); - // Asserting that another request is never made is obviously - // a bit tricky - we just flush the queue what should hopefully - // be plenty of times and assert that nothing comes through. - let tries = 0; - await flushAndRunTimersUntil(() => ++tries === 10); + it("retries on when client is started", async function () { + httpBackend.when("GET", "/_matrix/client/versions").respond(200, { + versions: ["v1.1"], + }); - expect(httpBackend.requests.length).toEqual(0); - }); + await Promise.all([client.startClient(), httpBackend.flush("/_matrix/client/versions", 1, 20)]); - it("honours ratelimiting", async function () { - jest.useFakeTimers(); + httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(500); - // pick something obscure enough it's unlikley to clash with a - // retry delay the algorithm uses anyway - const retryDelay = 279 * 1000; + httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(200, {}); - httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(429, { - errcode: "M_LIMIT_EXCEEDED", - retry_after_ms: retryDelay, - }); + await client.queueToDevice({ + eventType: "org.example.foo", + batch: [FAKE_MSG], + }); + expect(await httpBackend.flush(undefined, 1, 1)).toEqual(1); + await flushPromises(); - httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(200, {}); + client.stopClient(); + await Promise.all([client.startClient(), httpBackend.flush("/_matrix/client/versions", 1, 20)]); - await client.queueToDevice({ - eventType: "org.example.foo", - batch: [FAKE_MSG], + expect(await httpBackend.flush(undefined, 1, 20)).toEqual(1); }); - await flushAndRunTimersUntil(() => httpBackend.requests.length > 0); - expect(httpBackend.flushSync(undefined, 1)).toEqual(1); - await flushPromises(); - logger.info("Advancing clock to just before expected retry time..."); + it("retries when a message is retried", async function () { + httpBackend.when("GET", "/_matrix/client/versions").respond(200, { + versions: ["v1.1"], + }); - jest.advanceTimersByTime(retryDelay - 1000); - await flushPromises(); + await Promise.all([client.startClient(), httpBackend.flush(undefined, 1, 20)]); - expect(httpBackend.requests.length).toEqual(0); + httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(500); - logger.info("Advancing clock past expected retry time..."); + httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(200, {}); - jest.advanceTimersByTime(2000); - await flushPromises(); + await client.queueToDevice({ + eventType: "org.example.foo", + batch: [FAKE_MSG], + }); - expect(httpBackend.flushSync(undefined, 1)).toEqual(1); - }); + expect(await httpBackend.flush(undefined, 1, 20)).toEqual(1); + await flushPromises(); + + const dummyEvent = new MatrixEvent({ + event_id: "!fake:example.org", + }); + const mockRoom = { + updatePendingEvent: jest.fn(), + hasEncryptionStateEvent: jest.fn().mockReturnValue(false), + } as unknown as Room; + client.resendEvent(dummyEvent, mockRoom); - it("retries on retryImmediately()", async function () { - httpBackend.when("GET", "/_matrix/client/versions").respond(200, { - versions: ["v1.1"], + expect(await httpBackend.flush(undefined, 1, 20)).toEqual(1); }); - await Promise.all([client.startClient(), httpBackend.flush(undefined, 1, 20)]); + it("splits many messages into multiple HTTP requests", async function () { + const batch: ToDeviceBatch = { + eventType: "org.example.foo", + batch: [], + }; + + for (let i = 0; i <= 20; ++i) { + batch.batch.push({ + userId: `@user${i}:example.org`, + deviceId: FAKE_DEVICE_ID, + payload: FAKE_PAYLOAD, + }); + } + + const expectedCounts = [20, 1]; + httpBackend + .when("PUT", "/sendToDevice/org.example.foo/") + .check((request) => { + expect( + removeElement(expectedCounts, (c) => c === Object.keys(request.data.messages).length), + ).toBeTruthy(); + }) + .respond(200, {}); + httpBackend + .when("PUT", "/sendToDevice/org.example.foo/") + .check((request) => { + expect(Object.keys(request.data.messages).length).toEqual(1); + }) + .respond(200, {}); + + await client.queueToDevice(batch); + await httpBackend.flushAllExpected(); + + // flush, as per comment in first test + await flushPromises(); + }); + }); - httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(500); + describe("async tests", () => { + beforeAll(() => { + jest.useFakeTimers(); + }); - httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(200, {}); + afterAll(() => { + jest.useRealTimers(); + }); - await client.queueToDevice({ - eventType: "org.example.foo", - batch: [FAKE_MSG], + beforeEach(async function () { + httpBackend = new MockHttpBackend(); + + let store: IStore; + if (storeType === StoreType.IndexedDB) { + const idbStore = new IndexedDBStore({ indexedDB: fakeIndexedDB }); + let storeStarted = false; + idbStore.startup().then(() => { + storeStarted = true; + }); + await flushAndRunTimersUntil(() => storeStarted); + store = idbStore; + } else { + store = new MemoryStore(); + } + + client = new MatrixClient({ + baseUrl: "https://my.home.server", + accessToken: "my.access.token", + fetchFn: httpBackend.fetchFn as typeof global.fetch, + store, + }); }); - expect(await httpBackend.flush(undefined, 1, 1)).toEqual(1); - await flushPromises(); - client.retryImmediately(); + afterEach(function () { + client.stopClient(); + }); - // longer timeout here to try & avoid flakiness - expect(await httpBackend.flush(undefined, 1, 3000)).toEqual(1); - }); + it("retries on error", async function () { + httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(500); - it("retries on when client is started", async function () { - httpBackend.when("GET", "/_matrix/client/versions").respond(200, { - versions: ["v1.1"], - }); + httpBackend + .when("PUT", "/sendToDevice/org.example.foo/") + .check((request) => { + expect(request.data).toEqual(EXPECTED_BODY); + }) + .respond(200, {}); - await Promise.all([client.startClient(), httpBackend.flush("/_matrix/client/versions", 1, 20)]); + client + .queueToDevice({ + eventType: "org.example.foo", + batch: [FAKE_MSG], + }) + .then(); + await flushAndRunTimersUntil(() => httpBackend.requests.length > 0); + expect(httpBackend.flushSync(undefined, 1)).toEqual(1); - httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(500); + await flushAndRunTimersUntil(() => httpBackend.requests.length > 0); - httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(200, {}); + expect(httpBackend.flushSync(undefined, 1)).toEqual(1); - await client.queueToDevice({ - eventType: "org.example.foo", - batch: [FAKE_MSG], + // flush, as per comment in first test + await flushPromises(); }); - expect(await httpBackend.flush(undefined, 1, 1)).toEqual(1); - await flushPromises(); - client.stopClient(); - await Promise.all([client.startClient(), httpBackend.flush("/_matrix/client/versions", 1, 20)]); + it("stops retrying on 4xx errors", async function () { + httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(400); + + client + .queueToDevice({ + eventType: "org.example.foo", + batch: [FAKE_MSG], + }) + .then(); + await flushAndRunTimersUntil(() => httpBackend.requests.length > 0); + expect(httpBackend.flushSync(undefined, 1)).toEqual(1); + + // Asserting that another request is never made is obviously + // a bit tricky - we just flush the queue what should hopefully + // be plenty of times and assert that nothing comes through. + let tries = 0; + await flushAndRunTimersUntil(() => ++tries === 10); + + expect(httpBackend.requests.length).toEqual(0); + }); - expect(await httpBackend.flush(undefined, 1, 20)).toEqual(1); - }); + it("honours ratelimiting", async function () { + // pick something obscure enough it's unlikley to clash with a + // retry delay the algorithm uses anyway + const retryDelay = 279 * 1000; - it("retries when a message is retried", async function () { - httpBackend.when("GET", "/_matrix/client/versions").respond(200, { - versions: ["v1.1"], - }); + httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(429, { + errcode: "M_LIMIT_EXCEEDED", + retry_after_ms: retryDelay, + }); - await Promise.all([client.startClient(), httpBackend.flush(undefined, 1, 20)]); + httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(200, {}); - httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(500); + client + .queueToDevice({ + eventType: "org.example.foo", + batch: [FAKE_MSG], + }) + .then(); + await flushAndRunTimersUntil(() => httpBackend.requests.length > 0); + expect(httpBackend.flushSync(undefined, 1)).toEqual(1); + await flushPromises(); - httpBackend.when("PUT", "/sendToDevice/org.example.foo/").respond(200, {}); + logger.info("Advancing clock to just before expected retry time..."); - await client.queueToDevice({ - eventType: "org.example.foo", - batch: [FAKE_MSG], - }); + jest.advanceTimersByTime(retryDelay - 1000); + await flushPromises(); - expect(await httpBackend.flush(undefined, 1, 20)).toEqual(1); - await flushPromises(); + expect(httpBackend.requests.length).toEqual(0); - const dummyEvent = new MatrixEvent({ - event_id: "!fake:example.org", - }); - const mockRoom = { - updatePendingEvent: jest.fn(), - hasEncryptionStateEvent: jest.fn().mockReturnValue(false), - } as unknown as Room; - client.resendEvent(dummyEvent, mockRoom); + logger.info("Advancing clock past expected retry time..."); - expect(await httpBackend.flush(undefined, 1, 20)).toEqual(1); - }); + jest.advanceTimersByTime(2000); + await flushPromises(); - it("splits many messages into multiple HTTP requests", async function () { - const batch: ToDeviceBatch = { - eventType: "org.example.foo", - batch: [], - }; - - for (let i = 0; i <= 20; ++i) { - batch.batch.push({ - userId: `@user${i}:example.org`, - deviceId: FAKE_DEVICE_ID, - payload: FAKE_PAYLOAD, - }); - } - - const expectedCounts = [20, 1]; - httpBackend - .when("PUT", "/sendToDevice/org.example.foo/") - .check((request) => { - expect( - removeElement(expectedCounts, (c) => c === Object.keys(request.data.messages).length), - ).toBeTruthy(); - }) - .respond(200, {}); - httpBackend - .when("PUT", "/sendToDevice/org.example.foo/") - .check((request) => { - expect(Object.keys(request.data.messages).length).toEqual(1); - }) - .respond(200, {}); - - await client.queueToDevice(batch); - await httpBackend.flushAllExpected(); - - // flush, as per comment in first test - await flushPromises(); + expect(httpBackend.flushSync(undefined, 1)).toEqual(1); + }); }); }); From 131e81401a041160e634f61f9e8c95318dfca442 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 30 May 2024 17:21:12 +0100 Subject: [PATCH 245/595] Update typescript-eslint monorepo to v7.10.0 (#4223) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 113 +++++++++++++++++++++++------------------------------- 1 file changed, 49 insertions(+), 64 deletions(-) diff --git a/yarn.lock b/yarn.lock index 8d211c5c802..4b4345f240f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2067,7 +2067,7 @@ "@types/tough-cookie" "*" parse5 "^7.0.0" -"@types/json-schema@*", "@types/json-schema@^7.0.15": +"@types/json-schema@*": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -2111,11 +2111,6 @@ resolved "https://registry.yarnpkg.com/@types/sdp-transform/-/sdp-transform-2.4.9.tgz#26ef39f487a6909b0512f580b80920a366b27f52" integrity sha512-bVr+/OoZZy7wrHlNcEAAa6PAgKA4BoXPYVN2EijMC5WnGgQ4ZEuixmKnVs2roiAvr7RhIFVH17QD27cojgIZCg== -"@types/semver@^7.5.8": - version "7.5.8" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e" - integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ== - "@types/stack-utils@^2.0.0": version "2.0.3" resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.3.tgz#6209321eb2c1712a7e7466422b8cb1fc0d9dd5d8" @@ -2149,40 +2144,38 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.8.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.8.0.tgz#c78e309fe967cb4de05b85cdc876fb95f8e01b6f" - integrity sha512-gFTT+ezJmkwutUPmB0skOj3GZJtlEGnlssems4AjkVweUPGj7jRwwqg0Hhg7++kPGJqKtTYx+R05Ftww372aIg== + version "7.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.11.0.tgz#f90f0914657ead08e1c75f66939c926edeab42dd" + integrity sha512-P+qEahbgeHW4JQ/87FuItjBj8O3MYv5gELDzr8QaQ7fsll1gSMTYb6j87MYyxwf3DtD7uGFB9ShwgmCJB5KmaQ== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.8.0" - "@typescript-eslint/type-utils" "7.8.0" - "@typescript-eslint/utils" "7.8.0" - "@typescript-eslint/visitor-keys" "7.8.0" - debug "^4.3.4" + "@typescript-eslint/scope-manager" "7.11.0" + "@typescript-eslint/type-utils" "7.11.0" + "@typescript-eslint/utils" "7.11.0" + "@typescript-eslint/visitor-keys" "7.11.0" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" - semver "^7.6.0" ts-api-utils "^1.3.0" "@typescript-eslint/parser@^7.0.0": - version "7.8.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.8.0.tgz#1e1db30c8ab832caffee5f37e677dbcb9357ddc8" - integrity sha512-KgKQly1pv0l4ltcftP59uQZCi4HUYswCLbTqVZEJu7uLX8CTLyswqMLqLN+2QFz4jCptqWVV4SB7vdxcH2+0kQ== - dependencies: - "@typescript-eslint/scope-manager" "7.8.0" - "@typescript-eslint/types" "7.8.0" - "@typescript-eslint/typescript-estree" "7.8.0" - "@typescript-eslint/visitor-keys" "7.8.0" + version "7.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.11.0.tgz#525ad8bee54a8f015f134edd241d91b84ab64839" + integrity sha512-yimw99teuaXVWsBcPO1Ais02kwJ1jmNA1KxE7ng0aT7ndr1pT1wqj0OJnsYVGKKlc4QJai86l/025L6z8CljOg== + dependencies: + "@typescript-eslint/scope-manager" "7.11.0" + "@typescript-eslint/types" "7.11.0" + "@typescript-eslint/typescript-estree" "7.11.0" + "@typescript-eslint/visitor-keys" "7.11.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@7.8.0": - version "7.8.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.8.0.tgz#bb19096d11ec6b87fb6640d921df19b813e02047" - integrity sha512-viEmZ1LmwsGcnr85gIq+FCYI7nO90DVbE37/ll51hjv9aG+YZMb4WDE2fyWpUR4O/UrhGRpYXK/XajcGTk2B8g== +"@typescript-eslint/scope-manager@7.11.0": + version "7.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.11.0.tgz#cf5619b01de62a226a59add15a02bde457335d1d" + integrity sha512-27tGdVEiutD4POirLZX4YzT180vevUURJl4wJGmm6TrQoiYwuxTIY98PBp6L2oN+JQxzE0URvYlzJaBHIekXAw== dependencies: - "@typescript-eslint/types" "7.8.0" - "@typescript-eslint/visitor-keys" "7.8.0" + "@typescript-eslint/types" "7.11.0" + "@typescript-eslint/visitor-keys" "7.11.0" "@typescript-eslint/scope-manager@7.9.0": version "7.9.0" @@ -2192,38 +2185,33 @@ "@typescript-eslint/types" "7.9.0" "@typescript-eslint/visitor-keys" "7.9.0" -"@typescript-eslint/type-utils@7.8.0": - version "7.8.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.8.0.tgz#9de166f182a6e4d1c5da76e94880e91831e3e26f" - integrity sha512-H70R3AefQDQpz9mGv13Uhi121FNMh+WEaRqcXTX09YEDky21km4dV1ZXJIp8QjXc4ZaVkXVdohvWDzbnbHDS+A== +"@typescript-eslint/type-utils@7.11.0": + version "7.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.11.0.tgz#ac216697d649084fedf4a910347b9642bd0ff099" + integrity sha512-WmppUEgYy+y1NTseNMJ6mCFxt03/7jTOy08bcg7bxJJdsM4nuhnchyBbE8vryveaJUf62noH7LodPSo5Z0WUCg== dependencies: - "@typescript-eslint/typescript-estree" "7.8.0" - "@typescript-eslint/utils" "7.8.0" + "@typescript-eslint/typescript-estree" "7.11.0" + "@typescript-eslint/utils" "7.11.0" debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@7.8.0": - version "7.8.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.8.0.tgz#1fd2577b3ad883b769546e2d1ef379f929a7091d" - integrity sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw== +"@typescript-eslint/types@7.11.0", "@typescript-eslint/types@^7.2.0": + version "7.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.11.0.tgz#5e9702a5e8b424b7fc690e338d359939257d6722" + integrity sha512-MPEsDRZTyCiXkD4vd3zywDCifi7tatc4K37KqTprCvaXptP7Xlpdw0NR2hRJTetG5TxbWDB79Ys4kLmHliEo/w== "@typescript-eslint/types@7.9.0": version "7.9.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.9.0.tgz#b58e485e4bfba055659c7e683ad4f5f0821ae2ec" integrity sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w== -"@typescript-eslint/types@^7.2.0": +"@typescript-eslint/typescript-estree@7.11.0": version "7.11.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.11.0.tgz#5e9702a5e8b424b7fc690e338d359939257d6722" - integrity sha512-MPEsDRZTyCiXkD4vd3zywDCifi7tatc4K37KqTprCvaXptP7Xlpdw0NR2hRJTetG5TxbWDB79Ys4kLmHliEo/w== - -"@typescript-eslint/typescript-estree@7.8.0": - version "7.8.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.8.0.tgz#b028a9226860b66e623c1ee55cc2464b95d2987c" - integrity sha512-5pfUCOwK5yjPaJQNy44prjCwtr981dO8Qo9J9PwYXZ0MosgAbfEMB008dJ5sNo3+/BN6ytBPuSvXUg9SAqB0dg== + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.11.0.tgz#7cbc569bc7336c3a494ceaf8204fdee5d5dbb7fa" + integrity sha512-cxkhZ2C/iyi3/6U9EPc5y+a6csqHItndvN/CzbNXTNrsC3/ASoYQZEt9uMaEp+xFNjasqQyszp5TumAVKKvJeQ== dependencies: - "@typescript-eslint/types" "7.8.0" - "@typescript-eslint/visitor-keys" "7.8.0" + "@typescript-eslint/types" "7.11.0" + "@typescript-eslint/visitor-keys" "7.11.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2245,18 +2233,15 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.8.0": - version "7.8.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.8.0.tgz#57a79f9c0c0740ead2f622e444cfaeeb9fd047cd" - integrity sha512-L0yFqOCflVqXxiZyXrDr80lnahQfSOfc9ELAAZ75sqicqp2i36kEZZGuUymHNFoYOqxRT05up760b4iGsl02nQ== +"@typescript-eslint/utils@7.11.0": + version "7.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.11.0.tgz#524f047f2209959424c3ef689b0d83b3bc09919c" + integrity sha512-xlAWwPleNRHwF37AhrZurOxA1wyXowW4PqVXZVUNCLjB48CqdPJoJWkrpH2nij9Q3Lb7rtWindtoXwxjxlKKCA== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@types/json-schema" "^7.0.15" - "@types/semver" "^7.5.8" - "@typescript-eslint/scope-manager" "7.8.0" - "@typescript-eslint/types" "7.8.0" - "@typescript-eslint/typescript-estree" "7.8.0" - semver "^7.6.0" + "@typescript-eslint/scope-manager" "7.11.0" + "@typescript-eslint/types" "7.11.0" + "@typescript-eslint/typescript-estree" "7.11.0" "@typescript-eslint/utils@^6.0.0 || ^7.0.0": version "7.9.0" @@ -2268,12 +2253,12 @@ "@typescript-eslint/types" "7.9.0" "@typescript-eslint/typescript-estree" "7.9.0" -"@typescript-eslint/visitor-keys@7.8.0": - version "7.8.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.8.0.tgz#7285aab991da8bee411a42edbd5db760d22fdd91" - integrity sha512-q4/gibTNBQNA0lGyYQCmWRS5D15n8rXh4QjK3KV+MBPlTYHpfBUT3D3PaPR/HeNiI9W6R7FvlkcGhNyAoP+caA== +"@typescript-eslint/visitor-keys@7.11.0": + version "7.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.11.0.tgz#2c50cd292e67645eec05ac0830757071b4a4d597" + integrity sha512-7syYk4MzjxTEk0g/w3iqtgxnFQspDJfn6QKD36xMuuhTzjcxY7F8EmBLnALjVyaOF1/bVocu3bS/2/F7rXrveQ== dependencies: - "@typescript-eslint/types" "7.8.0" + "@typescript-eslint/types" "7.11.0" eslint-visitor-keys "^3.4.3" "@typescript-eslint/visitor-keys@7.9.0": From 7850294a4bb0751c835b09afafdd626b177d173c Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 4 Jun 2024 13:18:11 +0000 Subject: [PATCH 246/595] v33.0.0 --- CHANGELOG.md | 25 +++++++++++++++++++++++++ package.json | 2 +- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2a6d95478ae..9c190ae9c67 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,28 @@ +Changes in [33.0.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v33.0.0) (2024-06-04) +================================================================================================== +## 🚨 BREAKING CHANGES + +* Remove more deprecated methods, fields, and exports ([#4217](https://github.com/matrix-org/matrix-js-sdk/pull/4217)). Contributed by @t3chguy. +* Remove deprecated methods and fields ([#4201](https://github.com/matrix-org/matrix-js-sdk/pull/4201)). Contributed by @t3chguy. + +## 🦖 Deprecations + +* Remove more deprecated methods, fields, and exports ([#4217](https://github.com/matrix-org/matrix-js-sdk/pull/4217)). Contributed by @t3chguy. +* Remove deprecated methods and fields ([#4201](https://github.com/matrix-org/matrix-js-sdk/pull/4201)). Contributed by @t3chguy. + +## ✨ Features + +* `initRustCrypto`: allow app to pass in the store key directly ([#4210](https://github.com/matrix-org/matrix-js-sdk/pull/4210)). Contributed by @richvdh. +* Preserve ESM for async imports to work correctly ([#4187](https://github.com/matrix-org/matrix-js-sdk/pull/4187)). Contributed by @ms-dosx86. + +## 🐛 Bug Fixes + +* Don't run migration for Rust crypto if the legacy store is empty ([#4218](https://github.com/matrix-org/matrix-js-sdk/pull/4218)). Contributed by @andybalaam. +* Bump matrix-sdk-crypto-wasm to 5.0.0 ([#4216](https://github.com/matrix-org/matrix-js-sdk/pull/4216)). Contributed by @richvdh. +* Wire up verification cancel \& mismatch for rust crypto ([#4202](https://github.com/matrix-org/matrix-js-sdk/pull/4202)). Contributed by @t3chguy. +* Only pass id\_server if we had one to begin with ([#4200](https://github.com/matrix-org/matrix-js-sdk/pull/4200)). Contributed by @t3chguy. + + Changes in [32.4.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v32.4.0) (2024-05-22) ================================================================================================== * No changes diff --git a/package.json b/package.json index af72d945e47..9011449fb29 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "33.0.0-rc.0", + "version": "33.0.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 89875b8e314288856f9736ae84ee889991c64b34 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 4 Jun 2024 13:18:49 +0000 Subject: [PATCH 247/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 9011449fb29..a4b78a85309 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,6 +132,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From c88487da07793f598e14ee15cab527b0b4fc4955 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Jun 2024 17:21:20 +0000 Subject: [PATCH 248/595] Update all non-major dependencies (#4226) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 4 +-- yarn.lock | 100 ++++++++++++++++++++++++++++----------------------- 2 files changed, 58 insertions(+), 46 deletions(-) diff --git a/package.json b/package.json index a4b78a85309..d31db3600e9 100644 --- a/package.json +++ b/package.json @@ -105,7 +105,7 @@ "eslint-plugin-jest": "^28.0.0", "eslint-plugin-jsdoc": "^48.0.0", "eslint-plugin-matrix-org": "^1.0.0", - "eslint-plugin-tsdoc": "^0.2.17", + "eslint-plugin-tsdoc": "^0.3.0", "eslint-plugin-unicorn": "^53.0.0", "fake-indexeddb": "^5.0.2", "fetch-mock": "9.11.0", @@ -119,7 +119,7 @@ "lint-staged": "^15.0.2", "matrix-mock-request": "^2.5.0", "node-fetch": "^2.7.0", - "prettier": "3.2.5", + "prettier": "3.3.0", "rimraf": "^5.0.0", "ts-node": "^10.9.2", "typedoc": "^0.25.10", diff --git a/yarn.lock b/yarn.lock index 4b4345f240f..328654018bf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1782,20 +1782,20 @@ resolved "https://registry.yarnpkg.com/@matrix-org/olm/-/olm-3.2.15.tgz#55f3c1b70a21bbee3f9195cecd6846b1083451ec" integrity sha512-S7lOrndAK9/8qOtaTq/WhttJC/o4GAzdfK0MUPpo8ApzsJEC0QjtwrkC3KBXdFP1cD1MXi/mlKR7aaoVMKgs6Q== -"@microsoft/tsdoc-config@0.16.2": - version "0.16.2" - resolved "https://registry.yarnpkg.com/@microsoft/tsdoc-config/-/tsdoc-config-0.16.2.tgz#b786bb4ead00d54f53839a458ce626c8548d3adf" - integrity sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw== +"@microsoft/tsdoc-config@0.17.0": + version "0.17.0" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc-config/-/tsdoc-config-0.17.0.tgz#82605152b3c1d3f5cd4a11697bc298437484d55d" + integrity sha512-v/EYRXnCAIHxOHW+Plb6OWuUoMotxTN0GLatnpOb1xq0KuTNw/WI3pamJx/UbsoJP5k9MCw1QxvvhPcF9pH3Zg== dependencies: - "@microsoft/tsdoc" "0.14.2" - ajv "~6.12.6" + "@microsoft/tsdoc" "0.15.0" + ajv "~8.12.0" jju "~1.4.0" - resolve "~1.19.0" + resolve "~1.22.2" -"@microsoft/tsdoc@0.14.2": - version "0.14.2" - resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.14.2.tgz#c3ec604a0b54b9a9b87e9735dfc59e1a5da6a5fb" - integrity sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug== +"@microsoft/tsdoc@0.15.0": + version "0.15.0" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.15.0.tgz#f29a55df17cb6e87cfbabce33ff6a14a9f85076d" + integrity sha512-HZpPoABogPvjeJOdzCOSJsXeL/SMCBgBZMVC3X3d7YYp2gf31MfxhUoYUNwf1ERPJOnQc0wkFn9trqI6ZEdZuA== "@nicolo-ribaudo/chokidar-2@2.1.8-no-fsevents.3": version "2.1.8-no-fsevents.3" @@ -1868,15 +1868,15 @@ tslib "^2.0.0" "@peculiar/webcrypto@^1.4.5": - version "1.4.6" - resolved "https://registry.yarnpkg.com/@peculiar/webcrypto/-/webcrypto-1.4.6.tgz#607af294c4f205efeeb172aa32cb20024fe4aecf" - integrity sha512-YBcMfqNSwn3SujUJvAaySy5tlYbYm6tVt9SKoXu8BaTdKGROiJDgPR3TXpZdAKUfklzm3lRapJEAltiMQtBgZg== + version "1.5.0" + resolved "https://registry.yarnpkg.com/@peculiar/webcrypto/-/webcrypto-1.5.0.tgz#9e57174c02c1291051c553600347e12b81469e10" + integrity sha512-BRs5XUAwiyCDQMsVA9IDvDa7UBR9gAvPHgugOeGng3YN6vJ9JYonyDc0lNczErgtCWtucjR5N7VtaonboD/ezg== dependencies: "@peculiar/asn1-schema" "^2.3.8" "@peculiar/json-schema" "^1.1.12" pvtsutils "^1.3.5" tslib "^2.6.2" - webcrypto-core "^1.7.9" + webcrypto-core "^1.8.0" "@pkgjs/parseargs@^0.11.0": version "0.11.0" @@ -2332,7 +2332,7 @@ aggregate-error@^3.0.0: clean-stack "^2.0.0" indent-string "^4.0.0" -ajv@^6.12.4, ajv@~6.12.6: +ajv@^6.12.4: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -2342,6 +2342,16 @@ ajv@^6.12.4, ajv@~6.12.6: json-schema-traverse "^0.4.1" uri-js "^4.2.2" +ajv@~8.12.0: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + another-json@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/another-json/-/another-json-0.2.0.tgz#b5f4019c973b6dd5c6506a2d93469cb6d32aeedc" @@ -3009,9 +3019,9 @@ data-urls@^3.0.2: whatwg-url "^11.0.0" debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + version "4.3.5" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.5.tgz#e83444eceb9fedd4a1da56d671ae2446a01a6e1e" + integrity sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg== dependencies: ms "2.1.2" @@ -3378,13 +3388,13 @@ eslint-plugin-matrix-org@^1.0.0: resolved "https://registry.yarnpkg.com/eslint-plugin-matrix-org/-/eslint-plugin-matrix-org-1.2.1.tgz#76d1505daa93fb99ba4156008b9b32f57682c9b1" integrity sha512-A3cDjhG7RHwfCS8o3bOip8hSCsxtmgk2ahvqE5v/Ic2kPEZxixY6w8zLj7hFGsrRmPSEpLWqkVLt8uvQBapiQA== -eslint-plugin-tsdoc@^0.2.17: - version "0.2.17" - resolved "https://registry.yarnpkg.com/eslint-plugin-tsdoc/-/eslint-plugin-tsdoc-0.2.17.tgz#27789495bbd8778abbf92db1707fec2ed3dfe281" - integrity sha512-xRmVi7Zx44lOBuYqG8vzTXuL6IdGOeF9nHX17bjJ8+VE6fsxpdGem0/SBTmAwgYMKYB1WBkqRJVQ+n8GK041pA== +eslint-plugin-tsdoc@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-tsdoc/-/eslint-plugin-tsdoc-0.3.0.tgz#e4498070355cac2b9f38ea497ba83016bb7eda62" + integrity sha512-0MuFdBrrJVBjT/gyhkP2BqpD0np1NxNLfQ38xXDlSs/KVVpKI2A6vN7jx2Rve/CyUsvOsMGwp9KKrinv7q9g3A== dependencies: - "@microsoft/tsdoc" "0.14.2" - "@microsoft/tsdoc-config" "0.16.2" + "@microsoft/tsdoc" "0.15.0" + "@microsoft/tsdoc-config" "0.17.0" eslint-plugin-unicorn@^53.0.0: version "53.0.0" @@ -4186,7 +4196,7 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.1.0, is-core-module@^2.11.0: +is-core-module@^2.11.0: version "2.13.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.0.tgz#bb52aa6e2cbd49a30c2ba68c42bf3435ba6072db" integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ== @@ -4939,6 +4949,11 @@ json-schema-traverse@^0.4.1: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" @@ -5531,7 +5546,7 @@ path-key@^4.0.0: resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== -path-parse@^1.0.6, path-parse@^1.0.7: +path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== @@ -5601,10 +5616,10 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prettier@3.2.5: - version "3.2.5" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.2.5.tgz#e52bc3090586e824964a8813b09aba6233b28368" - integrity sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A== +prettier@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.0.tgz#d173ea0524a691d4c0b1181752f2b46724328cdf" + integrity sha512-J9odKxERhCQ10OC2yb93583f6UnYutOeiV5i0zEDS7UGTdUt0u+y8erxl3lBKvwo/JHyyoEdXjwp4dke9oyZ/g== pretty-format@^28.1.3: version "28.1.3" @@ -5782,6 +5797,11 @@ require-directory@^2.1.1: resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + requires-port@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" @@ -5814,7 +5834,7 @@ resolve.exports@^2.0.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@1.22.8, resolve@^1.14.2, resolve@^1.22.4: +resolve@1.22.8, resolve@^1.14.2, resolve@^1.22.4, resolve@~1.22.2: version "1.22.8" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== @@ -5832,14 +5852,6 @@ resolve@^1.10.0, resolve@^1.20.0: path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -resolve@~1.19.0: - version "1.19.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.19.0.tgz#1af5bf630409734a067cae29318aac7fa29a267c" - integrity sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg== - dependencies: - is-core-module "^2.1.0" - path-parse "^1.0.6" - restore-cursor@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-4.0.0.tgz#519560a4318975096def6e609d44100edaa4ccb9" @@ -6664,10 +6676,10 @@ wcwidth@^1.0.1: dependencies: defaults "^1.0.3" -webcrypto-core@^1.7.9: - version "1.7.9" - resolved "https://registry.yarnpkg.com/webcrypto-core/-/webcrypto-core-1.7.9.tgz#a585f0032dbc88d202cff4f266cbef02ba48bd7a" - integrity sha512-FE+a4PPkOmBbgNDIyRmcHhgXn+2ClRl3JzJdDu/P4+B8y81LqKe6RAsI9b3lAOHe1T1BMkSjsRHTYRikImZnVA== +webcrypto-core@^1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/webcrypto-core/-/webcrypto-core-1.8.0.tgz#aaea17f3dd9c77c304e3c494eb27ca07cc72ca37" + integrity sha512-kR1UQNH8MD42CYuLzvibfakG5Ew5seG85dMMoAM/1LqvckxaF6pUiidLuraIu4V+YCIFabYecUZAW0TuxAoaqw== dependencies: "@peculiar/asn1-schema" "^2.3.8" "@peculiar/json-schema" "^1.1.12" From a3cea8ce7d93199b33d48160b4a4d2bd125437c1 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 5 Jun 2024 10:27:20 +0100 Subject: [PATCH 249/595] Add crypto methods for export and import of secrets bundle (#4227) * Add crypto methods for OIDC QR code login Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Improve test Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Revert test due to hang inside Rust. Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Update test name Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Update test name Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/rust-crypto/rust-crypto.spec.ts | 38 +++++++++++++++++++++ src/@types/matrix-sdk-crypto-wasm.d.ts | 40 +++++++++++++++++++++++ src/crypto-api.ts | 18 ++++++++++ src/rust-crypto/rust-crypto.ts | 21 ++++++++++++ 4 files changed, 117 insertions(+) create mode 100644 src/@types/matrix-sdk-crypto-wasm.d.ts diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 57c1066d593..a5a6c165434 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -1515,6 +1515,44 @@ describe("RustCrypto", () => { expect(await rustCrypto.isDehydrationSupported()).toBe(true); }); }); + + describe("import & export secrets bundle", () => { + let rustCrypto: RustCrypto; + + beforeEach(async () => { + rustCrypto = await makeTestRustCrypto( + new MatrixHttpApi(new TypedEventEmitter(), { + baseUrl: "http://server/", + prefix: "", + onlyData: true, + }), + testData.TEST_USER_ID, + ); + }); + + it("should throw an error if there is nothing to export", async () => { + await expect(rustCrypto.exportsSecretsBundle()).rejects.toThrow( + "The store doesn't contain any cross-signing keys", + ); + }); + + it("should correctly import & export a secrets bundle", async () => { + const bundle = { + cross_signing: { + master_key: "bMnVpkHI4S2wXRxy+IpaKM5PIAUUkl6DE+n0YLIW/qs", + user_signing_key: "8tlgLjUrrb/zGJo4YKGhDTIDCEjtJTAS/Sh2AGNLuIo", + self_signing_key: "pfDknmP5a0fVVRE54zhkUgJfzbNmvKcNfIWEW796bQs", + }, + backup: { + algorithm: "m.megolm_backup.v1.curve25519-aes-sha2", + key: "bYYv3aFLQ49jMNcOjuTtBY9EKDby2x1m3gfX81nIKRQ", + backup_version: "9", + }, + }; + await rustCrypto.importSecretsBundle(bundle); + await expect(rustCrypto.exportsSecretsBundle()).resolves.toEqual(expect.objectContaining(bundle)); + }); + }); }); /** Build a MatrixHttpApi instance */ diff --git a/src/@types/matrix-sdk-crypto-wasm.d.ts b/src/@types/matrix-sdk-crypto-wasm.d.ts new file mode 100644 index 00000000000..591ecd6406d --- /dev/null +++ b/src/@types/matrix-sdk-crypto-wasm.d.ts @@ -0,0 +1,40 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import type * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; + +declare module "@matrix-org/matrix-sdk-crypto-wasm" { + interface OlmMachine { + importSecretsBundle(bundle: RustSdkCryptoJs.SecretsBundle): Promise; + exportSecretsBundle(): Promise; + } + + interface SecretsBundle { + // eslint-disable-next-line @typescript-eslint/naming-convention + to_json(): Promise<{ + cross_signing: { + master_key: string; + self_signing_key: string; + user_signing_key: string; + }; + backup?: { + algorithm: string; + key: string; + backup_version: string; + }; + }>; + } +} diff --git a/src/crypto-api.ts b/src/crypto-api.ts index 7dfdfbfcf08..740d60dc8bc 100644 --- a/src/crypto-api.ts +++ b/src/crypto-api.ts @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +import type { SecretsBundle } from "@matrix-org/matrix-sdk-crypto-wasm"; import type { IMegolmSessionData } from "./@types/crypto"; import { Room } from "./models/room"; import { DeviceMap } from "./models/device"; @@ -532,6 +533,23 @@ export interface CryptoApi { * to false. */ startDehydration(createNewKey?: boolean): Promise; + + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + // + // Import/export of secret keys + // + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + + /** + * Export secrets bundle for transmitting to another device as part of OIDC QR login + */ + exportSecretsBundle?(): Promise>>; + + /** + * Import secrets bundle transmitted from another device. + * @param secrets - The secrets bundle received from the other device + */ + importSecretsBundle?(secrets: Awaited>): Promise; } /** A reason code for a failure to decrypt an event. */ diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 8cbfba4b0c5..c1b8f051953 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -38,6 +38,7 @@ import { CrossSigningKey, CrossSigningKeyInfo, CrossSigningStatus, + CryptoApi, CryptoCallbacks, Curve25519AuthData, DecryptionFailureCode, @@ -1165,6 +1166,26 @@ export class RustCrypto extends TypedEventEmitter>[0], + ): Promise { + const secretsBundle = RustSdkCryptoJs.SecretsBundle.from_json(secrets); + await this.getOlmMachineOrThrow().importSecretsBundle(secretsBundle); // this method frees the SecretsBundle + } + + /** + * Implementation of {@link CryptoApi#exportSecretsBundle}. + */ + public async exportsSecretsBundle(): ReturnType> { + const secretsBundle = await this.getOlmMachineOrThrow().exportSecretsBundle(); + const secrets = secretsBundle.to_json(); + secretsBundle.free(); + return secrets; + } + /** * Signs the given object with the current device and current identity (if available). * As defined in {@link https://spec.matrix.org/v1.8/appendices/#signing-json | Signing JSON}. From a0fadeb4ec18b112e8a8402bca702e2158dfb8ac Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 5 Jun 2024 11:14:04 +0100 Subject: [PATCH 250/595] Update babel monorepo to v7.24.6 (#4221) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 1255 +++++++++++++++++++++++++++++------------------------ 1 file changed, 681 insertions(+), 574 deletions(-) diff --git a/yarn.lock b/yarn.lock index 328654018bf..0813e211fb3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -28,12 +28,12 @@ "@jridgewell/trace-mapping" "^0.3.24" "@babel/cli@^7.12.10": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.5.tgz#9eba21699f289c32e63a28aedf82f888dc134b30" - integrity sha512-2qg1mYtJRsOOWF6IUwLP5jI42P8Cc0hQ5TmnjLrik/4DKouO8dFJN80HEz81VmVeUs97yuuf3vQ/9j7Elrcjlg== + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.6.tgz#fac1fb099dff635efa1110882063c44a211cf18c" + integrity sha512-Sm/YhG/0REw9SKByFHDf4hkk7PYsjcsOyZgHGz1nvab4tUTQ9N4XVv+ykK0Y+VCJ3OshA/7EDyxnwCd8NEP/mQ== dependencies: "@jridgewell/trace-mapping" "^0.3.25" - commander "^4.0.1" + commander "^6.2.0" convert-source-map "^2.0.0" fs-readdir-recursive "^1.1.0" glob "^7.2.0" @@ -59,7 +59,7 @@ "@babel/highlight" "^7.23.4" chalk "^2.4.2" -"@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.2": +"@babel/code-frame@^7.23.5": version "7.24.2" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.2.tgz#718b4b19841809a58b29b68cde80bc5e1aa6d9ae" integrity sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ== @@ -67,15 +67,23 @@ "@babel/highlight" "^7.24.2" picocolors "^1.0.0" +"@babel/code-frame@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.6.tgz#ab88da19344445c3d8889af2216606d3329f3ef2" + integrity sha512-ZJhac6FkEd1yhG2AHOmfcXG4ceoLltoCVJjN5XsWN9BifBQr+cHJbWi0h68HZuSORq+3WtJ2z0hwF2NG1b5kcA== + dependencies: + "@babel/highlight" "^7.24.6" + picocolors "^1.0.0" + "@babel/compat-data@^7.20.5": version "7.22.9" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730" integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.5", "@babel/compat-data@^7.24.4": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.4.tgz#6f102372e9094f25d908ca0d34fc74c74606059a" - integrity sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ== +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.5", "@babel/compat-data@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.6.tgz#b3600217688cabb26e25f8e467019e66d71b7ae2" + integrity sha512-aC2DGhBq5eEdyXWqrDInSqQjO0k8xtPRf5YylULqx8MCd6jBtzqfta/3ETMRpuKIc5hyswfO80ObyA1MvkCcUQ== "@babel/compat-data@^7.22.9": version "7.23.5" @@ -83,20 +91,20 @@ integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== "@babel/core@^7.0.0", "@babel/core@^7.12.10": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.5.tgz#15ab5b98e101972d171aeef92ac70d8d6718f06a" - integrity sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA== + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.6.tgz#8650e0e4b03589ebe886c4e4a60398db0a7ec787" + integrity sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.24.2" - "@babel/generator" "^7.24.5" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-module-transforms" "^7.24.5" - "@babel/helpers" "^7.24.5" - "@babel/parser" "^7.24.5" - "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.5" - "@babel/types" "^7.24.5" + "@babel/code-frame" "^7.24.6" + "@babel/generator" "^7.24.6" + "@babel/helper-compilation-targets" "^7.24.6" + "@babel/helper-module-transforms" "^7.24.6" + "@babel/helpers" "^7.24.6" + "@babel/parser" "^7.24.6" + "@babel/template" "^7.24.6" + "@babel/traverse" "^7.24.6" + "@babel/types" "^7.24.6" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -125,18 +133,18 @@ semver "^6.3.1" "@babel/eslint-parser@^7.12.10": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.5.tgz#3b0f7d383a540329a30a6a9937cfc89461d26217" - integrity sha512-gsUcqS/fPlgAw1kOtpss7uhY6E9SFFANQ6EFX5GTvzUwaV0+sGaZWk6xq22MOdeT9wfxyokW3ceCUvOiRtZciQ== + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.6.tgz#7f0ecc0f29307b8696e83ff6a9d8b4f3e0421ad2" + integrity sha512-Q1BfQX42zXHx732PLW0w4+Y3wJjoZKEMaatFUEAmQ7Z+jCXxinzeqX9bvv2Q8xNPes/H6F0I23oGkcgjaItmLw== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" semver "^6.3.1" "@babel/eslint-plugin@^7.12.10": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.24.5.tgz#6581b9005ab76308e4aef6b50aa1788099393211" - integrity sha512-5n3K9Zv13VOa9SG2ZiX0WV7A0ddApRn6vsV8zBojCsxnCbYKLjCDvzDfVxS7C4STmjQDOXU1uk/ppxxDTC860w== + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.24.6.tgz#6e9e59653b7fec1047cae3ab82223c50aa810df8" + integrity sha512-sUDNpeOID2Am4cBXEmyhRaSvwwXIHVaG7trk7HO1Ri5VrEIBPYXg4ulTvZm2Lo0Y7u7Tw8QLe6JygchdOOto6w== dependencies: eslint-rule-composer "^0.3.0" @@ -160,29 +168,29 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" -"@babel/generator@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.5.tgz#e5afc068f932f05616b66713e28d0f04e99daeb3" - integrity sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA== +"@babel/generator@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.6.tgz#dfac82a228582a9d30c959fe50ad28951d4737a7" + integrity sha512-S7m4eNa6YAPJRHmKsLHIDJhNAGNKoWNiWefz1MBbpnt8g9lvMDl1hir4P9bo/57bQEmuwEhnRU/AMWsD0G/Fbg== dependencies: - "@babel/types" "^7.24.5" + "@babel/types" "^7.24.6" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" -"@babel/helper-annotate-as-pure@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882" - integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg== +"@babel/helper-annotate-as-pure@^7.22.5", "@babel/helper-annotate-as-pure@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.6.tgz#517af93abc77924f9b2514c407bbef527fb8938d" + integrity sha512-DitEzDfOMnd13kZnDqns1ccmftwJTS9DMkyn9pYTxulS7bZxUxpMly3Nf23QQ6NwA4UB8lAqjbqWtyvElEMAkg== dependencies: - "@babel/types" "^7.22.5" + "@babel/types" "^7.24.6" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz#5426b109cf3ad47b91120f8328d8ab1be8b0b956" - integrity sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.6.tgz#19e9089ee87b0d0928012c83961a8deef4b0223f" + integrity sha512-+wnfqc5uHiMYtvRX7qu80Toef8BXeh4HHR1SPeonGb1SKPniNEd4a/nlaJJMv/OIEYvIVavvo0yR7u10Gqz0Iw== dependencies: - "@babel/types" "^7.22.15" + "@babel/types" "^7.24.6" "@babel/helper-compilation-targets@^7.20.7": version "7.22.10" @@ -195,7 +203,7 @@ lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.23.6": +"@babel/helper-compilation-targets@^7.22.15": version "7.23.6" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== @@ -206,6 +214,17 @@ lru-cache "^5.1.1" semver "^6.3.1" +"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.6.tgz#4a51d681f7680043d38e212715e2a7b1ad29cb51" + integrity sha512-VZQ57UsDGlX/5fFA7GkVPplZhHsVc+vuErWgdOiysI9Ksnw0Pbbd6pnPiR/mmJyKHgyIW0c7KT32gmhiF+cirg== + dependencies: + "@babel/compat-data" "^7.24.6" + "@babel/helper-validator-option" "^7.24.6" + browserslist "^4.22.2" + lru-cache "^5.1.1" + semver "^6.3.1" + "@babel/helper-create-class-features-plugin@^7.18.6": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz#dd2612d59eac45588021ac3d6fa976d08f4e95a3" @@ -221,27 +240,27 @@ "@babel/helper-split-export-declaration" "^7.22.6" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.24.1", "@babel/helper-create-class-features-plugin@^7.24.4", "@babel/helper-create-class-features-plugin@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.5.tgz#7d19da92c7e0cd8d11c09af2ce1b8e7512a6e723" - integrity sha512-uRc4Cv8UQWnE4NXlYTIIdM7wfFkOqlFztcC/gVXDKohKoVB3OyonfelUBaJzSwpBntZ2KYGF/9S7asCHsXwW6g== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-member-expression-to-functions" "^7.24.5" - "@babel/helper-optimise-call-expression" "^7.22.5" - "@babel/helper-replace-supers" "^7.24.1" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.24.5" +"@babel/helper-create-class-features-plugin@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.6.tgz#c50b86fa1c4ca9b7a890dc21884f097b6c4b5286" + integrity sha512-djsosdPJVZE6Vsw3kk7IPRWethP94WHGOhQTc67SNXE0ZzMhHgALw8iGmYS0TD1bbMM0VDROy43od7/hN6WYcA== + dependencies: + "@babel/helper-annotate-as-pure" "^7.24.6" + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-function-name" "^7.24.6" + "@babel/helper-member-expression-to-functions" "^7.24.6" + "@babel/helper-optimise-call-expression" "^7.24.6" + "@babel/helper-replace-supers" "^7.24.6" + "@babel/helper-skip-transparent-expression-wrappers" "^7.24.6" + "@babel/helper-split-export-declaration" "^7.24.6" semver "^6.3.1" -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.15", "@babel/helper-create-regexp-features-plugin@^7.22.5": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz#5ee90093914ea09639b01c711db0d6775e558be1" - integrity sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w== +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.24.6.tgz#47d382dec0d49e74ca1b6f7f3b81f5968022a3c8" + integrity sha512-C875lFBIWWwyv6MHZUG9HmRrlTDgOsLWZfYR0nW69gaKJNe0/Mpxx5r0EID2ZdHQkdUmQo2t0uNckTL08/1BgA== dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" + "@babel/helper-annotate-as-pure" "^7.24.6" regexpu-core "^5.3.1" semver "^6.3.1" @@ -261,6 +280,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== +"@babel/helper-environment-visitor@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.6.tgz#ac7ad5517821641550f6698dd5468f8cef78620d" + integrity sha512-Y50Cg3k0LKLMjxdPjIl40SdJgMB85iXn27Vk/qbHZCFx/o5XO3PSnpi675h1KEmmDb6OFArfd5SCQEQ5Q4H88g== + "@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" @@ -269,6 +293,14 @@ "@babel/template" "^7.22.15" "@babel/types" "^7.23.0" +"@babel/helper-function-name@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.24.6.tgz#cebdd063386fdb95d511d84b117e51fc68fec0c8" + integrity sha512-xpeLqeeRkbxhnYimfr2PC+iA0Q7ljX/d1eZ9/inYbmfG2jpl8Lu3DyXvpOAnrS5kxkfOWJjioIMQsaMBXFI05w== + dependencies: + "@babel/template" "^7.24.6" + "@babel/types" "^7.24.6" + "@babel/helper-hoist-variables@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" @@ -276,6 +308,13 @@ dependencies: "@babel/types" "^7.22.5" +"@babel/helper-hoist-variables@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.6.tgz#8a7ece8c26756826b6ffcdd0e3cf65de275af7f9" + integrity sha512-SF/EMrC3OD7dSta1bLJIlrsVxwtd0UpjRJqLno6125epQMJ/kyFmpTT4pbvPbdQHzCHg+biQ7Syo8lnDtbR+uA== + dependencies: + "@babel/types" "^7.24.6" + "@babel/helper-member-expression-to-functions@^7.22.15": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366" @@ -290,20 +329,27 @@ dependencies: "@babel/types" "^7.22.15" -"@babel/helper-member-expression-to-functions@^7.23.0", "@babel/helper-member-expression-to-functions@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.5.tgz#5981e131d5c7003c7d1fa1ad49e86c9b097ec475" - integrity sha512-4owRteeihKWKamtqg4JmWSsEZU445xpFRXPEwp44HbgbxdWlUV1b4Agg4lkA806Lil5XM/e+FJyS0vj5T6vmcA== +"@babel/helper-member-expression-to-functions@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.6.tgz#86084f3e0e4e2169a134754df3870bc7784db71e" + integrity sha512-OTsCufZTxDUsv2/eDXanw/mUZHWOxSbEmC3pP8cgjcy5rgeVPWWMStnv274DV60JtHxTk0adT0QrCzC4M9NWGg== dependencies: - "@babel/types" "^7.24.5" + "@babel/types" "^7.24.6" -"@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.24.1", "@babel/helper-module-imports@^7.24.3": +"@babel/helper-module-imports@^7.22.15": version "7.24.3" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128" integrity sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg== dependencies: "@babel/types" "^7.24.0" +"@babel/helper-module-imports@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.6.tgz#65e54ffceed6a268dc4ce11f0433b82cfff57852" + integrity sha512-a26dmxFJBF62rRO9mmpgrfTLsAuyHk4e1hKTUkD/fcMfynt8gvEKwQPQDVxWhca8dHoDck+55DFt42zV0QMw5g== + dependencies: + "@babel/types" "^7.24.6" + "@babel/helper-module-transforms@^7.22.17": version "7.22.17" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.22.17.tgz#7edf129097a51ccc12443adbc6320e90eab76693" @@ -315,16 +361,16 @@ "@babel/helper-split-export-declaration" "^7.22.6" "@babel/helper-validator-identifier" "^7.22.15" -"@babel/helper-module-transforms@^7.23.3", "@babel/helper-module-transforms@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz#ea6c5e33f7b262a0ae762fd5986355c45f54a545" - integrity sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A== +"@babel/helper-module-transforms@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.6.tgz#22346ed9df44ce84dee850d7433c5b73fab1fe4e" + integrity sha512-Y/YMPm83mV2HJTbX1Qh2sjgjqcacvOlhbzdCCsSlblOKjSYmQqEbO6rUniWQyRo9ncyfjT8hnUjlG06RXDEmcA== dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-module-imports" "^7.24.3" - "@babel/helper-simple-access" "^7.24.5" - "@babel/helper-split-export-declaration" "^7.24.5" - "@babel/helper-validator-identifier" "^7.24.5" + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-module-imports" "^7.24.6" + "@babel/helper-simple-access" "^7.24.6" + "@babel/helper-split-export-declaration" "^7.24.6" + "@babel/helper-validator-identifier" "^7.24.6" "@babel/helper-optimise-call-expression@^7.22.5": version "7.22.5" @@ -333,24 +379,31 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.0", "@babel/helper-plugin-utils@^7.24.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz#a924607dd254a65695e5bd209b98b902b3b2f11a" - integrity sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ== +"@babel/helper-optimise-call-expression@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.6.tgz#f7836e3ccca3dfa02f15d2bc8b794efe75a5256e" + integrity sha512-3SFDJRbx7KuPRl8XDUr8O7GAEB8iGyWPjLKJh/ywP/Iy9WOmEfMrsWbaZpvBu2HSYn4KQygIsz0O7m8y10ncMA== + dependencies: + "@babel/types" "^7.24.6" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.6", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.6.tgz#fa02a32410a15a6e8f8185bcbf608f10528d2a24" + integrity sha512-MZG/JcWfxybKwsA9N9PmtF2lOSFSEMVCpIRrbxccZFLJPrJciJdG/UhSh5W96GEteJI2ARqm5UAHxISwRDLSNg== "@babel/helper-plugin-utils@^7.20.2": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== -"@babel/helper-remap-async-to-generator@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz#7b68e1cb4fa964d2996fd063723fb48eca8498e0" - integrity sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw== +"@babel/helper-remap-async-to-generator@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.24.6.tgz#c96ceb9846e877d806ce82a1521230ea7e0fc354" + integrity sha512-1Qursq9ArRZPAMOZf/nuzVW8HgJLkTB9y9LfP4lW2MVp4e9WkLJDovfKBxoDcCk6VuzIxyqWHyBoaCtSRP10yg== dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-wrap-function" "^7.22.20" + "@babel/helper-annotate-as-pure" "^7.24.6" + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-wrap-function" "^7.24.6" "@babel/helper-replace-supers@^7.22.9": version "7.22.20" @@ -361,22 +414,29 @@ "@babel/helper-member-expression-to-functions" "^7.22.15" "@babel/helper-optimise-call-expression" "^7.22.5" -"@babel/helper-replace-supers@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz#7085bd19d4a0b7ed8f405c1ed73ccb70f323abc1" - integrity sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ== +"@babel/helper-replace-supers@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.24.6.tgz#3ea87405a2986a49ab052d10e540fe036d747c71" + integrity sha512-mRhfPwDqDpba8o1F8ESxsEkJMQkUF8ZIWrAc0FtWhxnjfextxMWxr22RtFizxxSYLjVHDeMgVsRq8BBZR2ikJQ== dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-member-expression-to-functions" "^7.23.0" - "@babel/helper-optimise-call-expression" "^7.22.5" + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-member-expression-to-functions" "^7.24.6" + "@babel/helper-optimise-call-expression" "^7.24.6" -"@babel/helper-simple-access@^7.22.5", "@babel/helper-simple-access@^7.24.5": +"@babel/helper-simple-access@^7.22.5": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz#50da5b72f58c16b07fbd992810be6049478e85ba" integrity sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ== dependencies: "@babel/types" "^7.24.5" +"@babel/helper-simple-access@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.6.tgz#1d6e04d468bba4fc963b4906f6dac6286cfedff1" + integrity sha512-nZzcMMD4ZhmB35MOOzQuiGO5RzL6tJbsT37Zx8M5L/i9KSrukGXWTjLe1knIbb/RmxoJE9GON9soq0c0VEMM5g== + dependencies: + "@babel/types" "^7.24.6" + "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847" @@ -384,51 +444,70 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-split-export-declaration@^7.22.6", "@babel/helper-split-export-declaration@^7.24.5": +"@babel/helper-skip-transparent-expression-wrappers@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.6.tgz#c47e9b33b7ea50d1073e125ebc26661717cb7040" + integrity sha512-jhbbkK3IUKc4T43WadP96a27oYti9gEf1LdyGSP2rHGH77kwLwfhO7TgwnWvxxQVmke0ImmCSS47vcuxEMGD3Q== + dependencies: + "@babel/types" "^7.24.6" + +"@babel/helper-split-export-declaration@^7.22.6": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz#b9a67f06a46b0b339323617c8c6213b9055a78b6" integrity sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q== dependencies: "@babel/types" "^7.24.5" +"@babel/helper-split-export-declaration@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.6.tgz#e830068f7ba8861c53b7421c284da30ae656d7a3" + integrity sha512-CvLSkwXGWnYlF9+J3iZUvwgAxKiYzK3BWuo+mLzD/MDGOZDj7Gq8+hqaOkMxmJwmlv0iu86uH5fdADd9Hxkymw== + dependencies: + "@babel/types" "^7.24.6" + "@babel/helper-string-parser@^7.22.5": version "7.23.4" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== -"@babel/helper-string-parser@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz#f99c36d3593db9540705d0739a1f10b5e20c696e" - integrity sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ== +"@babel/helper-string-parser@^7.24.1", "@babel/helper-string-parser@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.6.tgz#28583c28b15f2a3339cfafafeaad42f9a0e828df" + integrity sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q== "@babel/helper-validator-identifier@^7.22.15", "@babel/helper-validator-identifier@^7.22.19": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== -"@babel/helper-validator-identifier@^7.22.20", "@babel/helper-validator-identifier@^7.24.5": +"@babel/helper-validator-identifier@^7.22.20": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz#918b1a7fa23056603506370089bd990d8720db62" integrity sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA== +"@babel/helper-validator-identifier@^7.24.5", "@babel/helper-validator-identifier@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.6.tgz#08bb6612b11bdec78f3feed3db196da682454a5e" + integrity sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw== + "@babel/helper-validator-option@^7.22.5": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== -"@babel/helper-validator-option@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" - integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== +"@babel/helper-validator-option@^7.23.5", "@babel/helper-validator-option@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.6.tgz#59d8e81c40b7d9109ab7e74457393442177f460a" + integrity sha512-Jktc8KkF3zIkePb48QO+IapbXlSapOW9S+ogZZkcO6bABgYAxtZcjZ/O005111YLf+j4M84uEgwYoidDkXbCkQ== -"@babel/helper-wrap-function@^7.22.20": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.24.5.tgz#335f934c0962e2c1ed1fb9d79e06a56115067c09" - integrity sha512-/xxzuNvgRl4/HLNKvnFwdhdgN3cpLxgLROeLDl83Yx0AJ1SGvq1ak0OszTOjDfiB8Vx03eJbeDWh9r+jCCWttw== +"@babel/helper-wrap-function@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.24.6.tgz#c27af1006e310683fdc76b668a0a1f6003e36217" + integrity sha512-f1JLrlw/jbiNfxvdrfBgio/gRBk3yTAEJWirpAkiJG2Hb22E7cEYKHWo0dFPTv/niPovzIdPdEDetrv6tC6gPQ== dependencies: - "@babel/helper-function-name" "^7.23.0" - "@babel/template" "^7.24.0" - "@babel/types" "^7.24.5" + "@babel/helper-function-name" "^7.24.6" + "@babel/template" "^7.24.6" + "@babel/types" "^7.24.6" "@babel/helpers@^7.22.15": version "7.22.15" @@ -439,14 +518,13 @@ "@babel/traverse" "^7.22.15" "@babel/types" "^7.22.15" -"@babel/helpers@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.5.tgz#fedeb87eeafa62b621160402181ad8585a22a40a" - integrity sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q== +"@babel/helpers@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.6.tgz#cd124245299e494bd4e00edda0e4ea3545c2c176" + integrity sha512-V2PI+NqnyFu1i0GyTd/O/cTpxzQCYioSkUIRmgo7gFEHKKCg5w46+r/A6WeUR1+P3TeQ49dspGPNd/E3n9AnnA== dependencies: - "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.5" - "@babel/types" "^7.24.5" + "@babel/template" "^7.24.6" + "@babel/types" "^7.24.6" "@babel/highlight@^7.22.13": version "7.23.4" @@ -477,6 +555,16 @@ js-tokens "^4.0.0" picocolors "^1.0.0" +"@babel/highlight@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.6.tgz#6d610c1ebd2c6e061cade0153bf69b0590b7b3df" + integrity sha512-2YnuOp4HAk2BsBrJJvYCbItHx0zWscI1C3zgWkz+wDyD9I7GIVrfnLyrR4Y1VR+7p+chAEcrgRQYZAGIKMV7vQ== + dependencies: + "@babel/helper-validator-identifier" "^7.24.6" + chalk "^2.4.2" + js-tokens "^4.0.0" + picocolors "^1.0.0" + "@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.16": version "7.22.16" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.16.tgz#180aead7f247305cce6551bea2720934e2fa2c95" @@ -492,42 +580,47 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.3.tgz#0ce0be31a4ca4f1884b5786057cadcb6c3be58f9" integrity sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw== -"@babel/parser@^7.24.0", "@babel/parser@^7.24.5": +"@babel/parser@^7.24.0": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.5.tgz#4a4d5ab4315579e5398a82dcf636ca80c3392790" integrity sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg== -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.5.tgz#4c3685eb9cd790bcad2843900fe0250c91ccf895" - integrity sha512-LdXRi1wEMTrHVR4Zc9F8OewC3vdm5h4QB6L71zy6StmYeqGi1b3ttIO8UC+BfZKcH9jdr4aI249rBkm+3+YvHw== +"@babel/parser@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.6.tgz#5e030f440c3c6c78d195528c3b688b101a365328" + integrity sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q== + +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.6.tgz#283a74ef365b1e954cda6b2724c678a978215e88" + integrity sha512-bYndrJ6Ph6Ar+GaB5VAc0JPoP80bQCm4qon6JEzXfRl5QZyQ8Ur1K6k7htxWmPA5z+k7JQvaMUrtXlqclWYzKw== dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-plugin-utils" "^7.24.5" + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.1.tgz#b645d9ba8c2bc5b7af50f0fe949f9edbeb07c8cf" - integrity sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg== +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.6.tgz#f9f5ae4d6fb72f5950262cb6f0b2482c3bc684ef" + integrity sha512-iVuhb6poq5ikqRq2XWU6OQ+R5o9wF+r/or9CeUyovgptz0UlnK4/seOQ1Istu/XybYjAhQv1FRSSfHHufIku5Q== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.1.tgz#da8261f2697f0f41b0855b91d3a20a1fbfd271d3" - integrity sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.6.tgz#ab9be6edfffa127bd5ec4317c76c5af0f8fc7e6c" + integrity sha512-c8TER5xMDYzzFcGqOEp9l4hvB7dcbhcGjcLVwxWfe4P5DOafdwjsBJZKsmv+o3aXh7NhopvayQIovHrh2zSRUQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/plugin-transform-optional-chaining" "^7.24.1" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-skip-transparent-expression-wrappers" "^7.24.6" + "@babel/plugin-transform-optional-chaining" "^7.24.6" -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.1.tgz#1181d9685984c91d657b8ddf14f0487a6bab2988" - integrity sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.6.tgz#0faf879249ec622d7f1c42eaebf7d11197401b2c" + integrity sha512-z8zEjYmwBUHN/pCF3NuWBhHQjJCrd33qAi8MgANfMrAvn72k2cImT8VjK9LJFu4ysOLJqhfkYYb3MvwANRUNZQ== dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-proposal-class-properties@^7.12.1": version "7.18.6" @@ -603,19 +696,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-import-assertions@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.1.tgz#db3aad724153a00eaac115a3fb898de544e34971" - integrity sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ== +"@babel/plugin-syntax-import-assertions@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.6.tgz#52521c1c1698fc2dd9cf88f7a4dd86d4d041b9e1" + integrity sha512-BE6o2BogJKJImTmGpkmOic4V0hlRRxVtzqxiSPa8TIFxyhi4EFjHm08nq1M4STK4RytuLMgnSz0/wfflvGFNOg== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-syntax-import-attributes@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.1.tgz#c66b966c63b714c4eec508fcf5763b1f2d381093" - integrity sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA== +"@babel/plugin-syntax-import-attributes@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.6.tgz#12aba325534129584672920274fefa4dc2d5f68e" + integrity sha512-D+CfsVZousPXIdudSII7RGy52+dYRtbyKAZcvtQKq/NpsivyMVduepzcLqG5pMBugtMdedxdC8Ramdpcne9ZWQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" @@ -631,12 +724,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz#3f6ca04b8c841811dbc3c5c5f837934e0d626c10" - integrity sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA== +"@babel/plugin-syntax-jsx@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.6.tgz#bcca2964150437f88f65e3679e3d68762287b9c8" + integrity sha512-lWfvAIFNWMlCsU0DRUun2GpFwZdGTukLaHJqRh1JRb80NdAP5Sb1HDHB5X9P9OtgZHQl089UzQkpYlBq2VTPRw== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-jsx@^7.7.2": version "7.22.5" @@ -701,12 +794,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz#b3bcc51f396d15f3591683f90239de143c076844" - integrity sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw== +"@babel/plugin-syntax-typescript@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.6.tgz#769daf2982d60308bc83d8936eaecb7582463c87" + integrity sha512-TzCtxGgVTEJWWwcYwQhCIQ6WaKlo80/B+Onsk4RRCcYqpYGFcG9etPW94VToGte5AAcxRrhjPUFvUS3Y2qKi4A== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-typescript@^7.7.2": version "7.22.5" @@ -723,277 +816,277 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-arrow-functions@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.1.tgz#2bf263617060c9cc45bcdbf492b8cc805082bf27" - integrity sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw== +"@babel/plugin-transform-arrow-functions@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.6.tgz#93607d1ef5b81c70af174aff3532d57216367492" + integrity sha512-jSSSDt4ZidNMggcLx8SaKsbGNEfIl0PHx/4mFEulorE7bpYLbN0d3pDW3eJ7Y5Z3yPhy3L3NaPCYyTUY7TuugQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-async-generator-functions@^7.24.3": - version "7.24.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.3.tgz#8fa7ae481b100768cc9842c8617808c5352b8b89" - integrity sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg== +"@babel/plugin-transform-async-generator-functions@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.6.tgz#fa4a9e5c3a7f60f697ba36587b6c41b04f507d84" + integrity sha512-VEP2o4iR2DqQU6KPgizTW2mnMx6BG5b5O9iQdrW9HesLkv8GIA8x2daXBQxw1MrsIkFQGA/iJ204CKoQ8UcnAA== dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-plugin-utils" "^7.24.0" - "@babel/helper-remap-async-to-generator" "^7.22.20" + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-remap-async-to-generator" "^7.24.6" "@babel/plugin-syntax-async-generators" "^7.8.4" -"@babel/plugin-transform-async-to-generator@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.1.tgz#0e220703b89f2216800ce7b1c53cb0cf521c37f4" - integrity sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw== +"@babel/plugin-transform-async-to-generator@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.6.tgz#eb11434b11d73d8c0cf9f71a6f4f1e6ba441df35" + integrity sha512-NTBA2SioI3OsHeIn6sQmhvXleSl9T70YY/hostQLveWs0ic+qvbA3fa0kwAwQ0OA/XGaAerNZRQGJyRfhbJK4g== dependencies: - "@babel/helper-module-imports" "^7.24.1" - "@babel/helper-plugin-utils" "^7.24.0" - "@babel/helper-remap-async-to-generator" "^7.22.20" + "@babel/helper-module-imports" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-remap-async-to-generator" "^7.24.6" -"@babel/plugin-transform-block-scoped-functions@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.1.tgz#1c94799e20fcd5c4d4589523bbc57b7692979380" - integrity sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg== +"@babel/plugin-transform-block-scoped-functions@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.6.tgz#975555b5bfa9870b1218da536d1528735f1f8c56" + integrity sha512-XNW7jolYHW9CwORrZgA/97tL/k05qe/HL0z/qqJq1mdWhwwCM6D4BJBV7wAz9HgFziN5dTOG31znkVIzwxv+vw== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-block-scoping@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.5.tgz#89574191397f85661d6f748d4b89ee4d9ee69a2a" - integrity sha512-sMfBc3OxghjC95BkYrYocHL3NaOplrcaunblzwXhGmlPwpmfsxr4vK+mBBt49r+S240vahmv+kUxkeKgs+haCw== +"@babel/plugin-transform-block-scoping@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.6.tgz#a03ec8a4591c2b43cf7798bc633e698293fda179" + integrity sha512-S/t1Xh4ehW7sGA7c1j/hiOBLnEYCp/c2sEG4ZkL8kI1xX9tW2pqJTCHKtdhe/jHKt8nG0pFCrDHUXd4DvjHS9w== dependencies: - "@babel/helper-plugin-utils" "^7.24.5" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-class-properties@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.1.tgz#bcbf1aef6ba6085cfddec9fc8d58871cf011fc29" - integrity sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g== +"@babel/plugin-transform-class-properties@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.6.tgz#d9f394e97e88ef905d5a1e5e7a16238621b7982e" + integrity sha512-j6dZ0Z2Z2slWLR3kt9aOmSIrBvnntWjMDN/TVcMPxhXMLmJVqX605CBRlcGI4b32GMbfifTEsdEjGjiE+j/c3A== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.1" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-create-class-features-plugin" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-class-static-block@^7.24.4": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.4.tgz#1a4653c0cf8ac46441ec406dece6e9bc590356a4" - integrity sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg== +"@babel/plugin-transform-class-static-block@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.6.tgz#f43f29286f6f0dca33d18fd5033b817d6c3fa816" + integrity sha512-1QSRfoPI9RoLRa8Mnakc6v3e0gJxiZQTYrMfLn+mD0sz5+ndSzwymp2hDcYJTyT0MOn0yuWzj8phlIvO72gTHA== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.4" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-create-class-features-plugin" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-transform-classes@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.5.tgz#05e04a09df49a46348299a0e24bfd7e901129339" - integrity sha512-gWkLP25DFj2dwe9Ck8uwMOpko4YsqyfZJrOmqqcegeDYEbp7rmn4U6UQZNj08UF6MaX39XenSpKRCvpDRBtZ7Q== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-plugin-utils" "^7.24.5" - "@babel/helper-replace-supers" "^7.24.1" - "@babel/helper-split-export-declaration" "^7.24.5" +"@babel/plugin-transform-classes@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.6.tgz#0cc198c02720d4eeb091004843477659c6b37977" + integrity sha512-+fN+NO2gh8JtRmDSOB6gaCVo36ha8kfCW1nMq2Gc0DABln0VcHN4PrALDvF5/diLzIRKptC7z/d7Lp64zk92Fg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.24.6" + "@babel/helper-compilation-targets" "^7.24.6" + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-function-name" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-replace-supers" "^7.24.6" + "@babel/helper-split-export-declaration" "^7.24.6" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.1.tgz#bc7e787f8e021eccfb677af5f13c29a9934ed8a7" - integrity sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw== +"@babel/plugin-transform-computed-properties@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.6.tgz#7a1765c01cdfe59c320d2d0f37a4dc4aecd14df1" + integrity sha512-cRzPobcfRP0ZtuIEkA8QzghoUpSB3X3qSH5W2+FzG+VjWbJXExtx0nbRqwumdBN1x/ot2SlTNQLfBCnPdzp6kg== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" - "@babel/template" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/template" "^7.24.6" -"@babel/plugin-transform-destructuring@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.5.tgz#80843ee6a520f7362686d1a97a7b53544ede453c" - integrity sha512-SZuuLyfxvsm+Ah57I/i1HVjveBENYK9ue8MJ7qkc7ndoNjqquJiElzA7f5yaAXjyW2hKojosOTAQQRX50bPSVg== +"@babel/plugin-transform-destructuring@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.6.tgz#bdd1a6c90ffb2bfd13b6007b13316eeafc97cb53" + integrity sha512-YLW6AE5LQpk5npNXL7i/O+U9CE4XsBCuRPgyjl1EICZYKmcitV+ayuuUGMJm2lC1WWjXYszeTnIxF/dq/GhIZQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.5" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-dotall-regex@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.1.tgz#d56913d2f12795cc9930801b84c6f8c47513ac13" - integrity sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw== +"@babel/plugin-transform-dotall-regex@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.6.tgz#5a6b3148ec5f4f274ff48cebea90565087cad126" + integrity sha512-rCXPnSEKvkm/EjzOtLoGvKseK+dS4kZwx1HexO3BtRtgL0fQ34awHn34aeSHuXtZY2F8a1X8xqBBPRtOxDVmcA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-create-regexp-features-plugin" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-duplicate-keys@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.1.tgz#5347a797fe82b8d09749d10e9f5b83665adbca88" - integrity sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA== +"@babel/plugin-transform-duplicate-keys@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.6.tgz#2716301227cf7cd4fdadcbe4353ce191f8b3dc8a" + integrity sha512-/8Odwp/aVkZwPFJMllSbawhDAO3UJi65foB00HYnK/uXvvCPm0TAXSByjz1mpRmp0q6oX2SIxpkUOpPFHk7FLA== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-dynamic-import@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.1.tgz#2a5a49959201970dd09a5fca856cb651e44439dd" - integrity sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA== +"@babel/plugin-transform-dynamic-import@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.6.tgz#b477177761d56b15a4ba42a83be31cf72d757acf" + integrity sha512-vpq8SSLRTBLOHUZHSnBqVo0AKX3PBaoPs2vVzYVWslXDTDIpwAcCDtfhUcHSQQoYoUvcFPTdC8TZYXu9ZnLT/w== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-dynamic-import" "^7.8.3" -"@babel/plugin-transform-exponentiation-operator@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.1.tgz#6650ebeb5bd5c012d5f5f90a26613a08162e8ba4" - integrity sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw== +"@babel/plugin-transform-exponentiation-operator@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.6.tgz#011e9e1a429f91b024af572530873ca571f9ef06" + integrity sha512-EemYpHtmz0lHE7hxxxYEuTYOOBZ43WkDgZ4arQ4r+VX9QHuNZC+WH3wUWmRNvR8ECpTRne29aZV6XO22qpOtdA== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.15" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-export-namespace-from@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.1.tgz#f033541fc036e3efb2dcb58eedafd4f6b8078acd" - integrity sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ== +"@babel/plugin-transform-export-namespace-from@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.6.tgz#b64ded74d9afb3db5d47d93996c4df69f15ac97c" + integrity sha512-inXaTM1SVrIxCkIJ5gqWiozHfFMStuGbGJAxZFBoHcRRdDP0ySLb3jH6JOwmfiinPwyMZqMBX+7NBDCO4z0NSA== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" -"@babel/plugin-transform-for-of@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.1.tgz#67448446b67ab6c091360ce3717e7d3a59e202fd" - integrity sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg== +"@babel/plugin-transform-for-of@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.6.tgz#7f31780bd0c582b546372c0c0da9d9d56731e0a2" + integrity sha512-n3Sf72TnqK4nw/jziSqEl1qaWPbCRw2CziHH+jdRYvw4J6yeCzsj4jdw8hIntOEeDGTmHVe2w4MVL44PN0GMzg== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-skip-transparent-expression-wrappers" "^7.24.6" -"@babel/plugin-transform-function-name@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.1.tgz#8cba6f7730626cc4dfe4ca2fa516215a0592b361" - integrity sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA== +"@babel/plugin-transform-function-name@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.6.tgz#60d1de3f6fd816a3e3bf9538578a64527e1b9c97" + integrity sha512-sOajCu6V0P1KPljWHKiDq6ymgqB+vfo3isUS4McqW1DZtvSVU2v/wuMhmRmkg3sFoq6GMaUUf8W4WtoSLkOV/Q== dependencies: - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-compilation-targets" "^7.24.6" + "@babel/helper-function-name" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-json-strings@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.1.tgz#08e6369b62ab3e8a7b61089151b161180c8299f7" - integrity sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ== +"@babel/plugin-transform-json-strings@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.6.tgz#a84639180ea1f9001bb5e6dc01921235ab05ad8b" + integrity sha512-Uvgd9p2gUnzYJxVdBLcU0KurF8aVhkmVyMKW4MIY1/BByvs3EBpv45q01o7pRTVmTvtQq5zDlytP3dcUgm7v9w== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-json-strings" "^7.8.3" -"@babel/plugin-transform-literals@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.1.tgz#0a1982297af83e6b3c94972686067df588c5c096" - integrity sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g== +"@babel/plugin-transform-literals@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.6.tgz#7f44f2871d7a4456030b0540858046f0b7bc6b18" + integrity sha512-f2wHfR2HF6yMj+y+/y07+SLqnOSwRp8KYLpQKOzS58XLVlULhXbiYcygfXQxJlMbhII9+yXDwOUFLf60/TL5tw== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-logical-assignment-operators@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.1.tgz#719d8aded1aa94b8fb34e3a785ae8518e24cfa40" - integrity sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w== +"@babel/plugin-transform-logical-assignment-operators@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.6.tgz#9cc7baa5629866566562c159dc1eae7569810f33" + integrity sha512-EKaWvnezBCMkRIHxMJSIIylzhqK09YpiJtDbr2wsXTwnO0TxyjMUkaw4RlFIZMIS0iDj0KyIg7H7XCguHu/YDA== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-transform-member-expression-literals@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.1.tgz#896d23601c92f437af8b01371ad34beb75df4489" - integrity sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg== +"@babel/plugin-transform-member-expression-literals@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.6.tgz#5d3681ca201ac6909419cc51ac082a6ba4c5c756" + integrity sha512-9g8iV146szUo5GWgXpRbq/GALTnY+WnNuRTuRHWWFfWGbP9ukRL0aO/jpu9dmOPikclkxnNsjY8/gsWl6bmZJQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-modules-amd@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz#b6d829ed15258536977e9c7cc6437814871ffa39" - integrity sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ== +"@babel/plugin-transform-modules-amd@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.6.tgz#09aeac7acb7913496aaaafdc64f40683e0db7e41" + integrity sha512-eAGogjZgcwqAxhyFgqghvoHRr+EYRQPFjUXrTYKBRb5qPnAVxOOglaxc4/byHqjvq/bqO2F3/CGwTHsgKJYHhQ== dependencies: - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-module-transforms" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-modules-commonjs@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz#e71ba1d0d69e049a22bf90b3867e263823d3f1b9" - integrity sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw== +"@babel/plugin-transform-modules-commonjs@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.6.tgz#1b8269902f25bd91ca6427230d4735ddd1e1283e" + integrity sha512-JEV8l3MHdmmdb7S7Cmx6rbNEjRCgTQMZxllveHO0mx6uiclB0NflCawlQQ6+o5ZrwjUBYPzHm2XoK4wqGVUFuw== dependencies: - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.24.0" - "@babel/helper-simple-access" "^7.22.5" + "@babel/helper-module-transforms" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-simple-access" "^7.24.6" -"@babel/plugin-transform-modules-systemjs@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.1.tgz#2b9625a3d4e445babac9788daec39094e6b11e3e" - integrity sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA== +"@babel/plugin-transform-modules-systemjs@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.6.tgz#c54eb53fe16f9b82d320abd76762d0320e3f9393" + integrity sha512-xg1Z0J5JVYxtpX954XqaaAT6NpAY6LtZXvYFCJmGFJWwtlz2EmJoR8LycFRGNE8dBKizGWkGQZGegtkV8y8s+w== dependencies: - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.24.0" - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-hoist-variables" "^7.24.6" + "@babel/helper-module-transforms" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-validator-identifier" "^7.24.6" -"@babel/plugin-transform-modules-umd@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.1.tgz#69220c66653a19cf2c0872b9c762b9a48b8bebef" - integrity sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg== +"@babel/plugin-transform-modules-umd@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.6.tgz#c4ef8b6d4da230b8dc87e81cd66986728952f89b" + integrity sha512-esRCC/KsSEUvrSjv5rFYnjZI6qv4R1e/iHQrqwbZIoRJqk7xCvEUiN7L1XrmW5QSmQe3n1XD88wbgDTWLbVSyg== dependencies: - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-module-transforms" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-named-capturing-groups-regex@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz#67fe18ee8ce02d57c855185e27e3dc959b2e991f" - integrity sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ== +"@babel/plugin-transform-named-capturing-groups-regex@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.24.6.tgz#352ee2861ab8705320029f80238cf26a92ba65d5" + integrity sha512-6DneiCiu91wm3YiNIGDWZsl6GfTTbspuj/toTEqLh9d4cx50UIzSdg+T96p8DuT7aJOBRhFyaE9ZvTHkXrXr6Q== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.5" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-create-regexp-features-plugin" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-new-target@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.1.tgz#29c59988fa3d0157de1c871a28cd83096363cc34" - integrity sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug== +"@babel/plugin-transform-new-target@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.6.tgz#fc024294714705113720d5e3dc0f9ad7abdbc289" + integrity sha512-f8liz9JG2Va8A4J5ZBuaSdwfPqN6axfWRK+y66fjKYbwf9VBLuq4WxtinhJhvp1w6lamKUwLG0slK2RxqFgvHA== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-nullish-coalescing-operator@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz#0cd494bb97cb07d428bd651632cb9d4140513988" - integrity sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw== +"@babel/plugin-transform-nullish-coalescing-operator@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.6.tgz#12b83b3cdfd1cd2066350e36e4fb912ab194545e" + integrity sha512-+QlAiZBMsBK5NqrBWFXCYeXyiU1y7BQ/OYaiPAcQJMomn5Tyg+r5WuVtyEuvTbpV7L25ZSLfE+2E9ywj4FD48A== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-transform-numeric-separator@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.1.tgz#5bc019ce5b3435c1cadf37215e55e433d674d4e8" - integrity sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw== +"@babel/plugin-transform-numeric-separator@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.6.tgz#d9115669cc85aa91fbfb15f88f2226332cf4946a" + integrity sha512-6voawq8T25Jvvnc4/rXcWZQKKxUNZcKMS8ZNrjxQqoRFernJJKjE3s18Qo6VFaatG5aiX5JV1oPD7DbJhn0a4Q== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-transform-object-rest-spread@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.5.tgz#f91bbcb092ff957c54b4091c86bda8372f0b10ef" - integrity sha512-7EauQHszLGM3ay7a161tTQH7fj+3vVM/gThlz5HpFtnygTxjrlvoeq7MPVA1Vy9Q555OB8SnAOsMkLShNkkrHA== +"@babel/plugin-transform-object-rest-spread@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.6.tgz#68d763f69955f9e599c405c6c876f5be46b47d8a" + integrity sha512-OKmi5wiMoRW5Smttne7BwHM8s/fb5JFs+bVGNSeHWzwZkWXWValR1M30jyXo1s/RaqgwwhEC62u4rFH/FBcBPg== dependencies: - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-plugin-utils" "^7.24.5" + "@babel/helper-compilation-targets" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.24.5" + "@babel/plugin-transform-parameters" "^7.24.6" -"@babel/plugin-transform-object-super@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.1.tgz#e71d6ab13483cca89ed95a474f542bbfc20a0520" - integrity sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ== +"@babel/plugin-transform-object-super@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.6.tgz#9cbe6f995bed343a7ab8daf0416dac057a9c3e27" + integrity sha512-N/C76ihFKlZgKfdkEYKtaRUtXZAgK7sOY4h2qrbVbVTXPrKGIi8aww5WGe/+Wmg8onn8sr2ut6FXlsbu/j6JHg== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" - "@babel/helper-replace-supers" "^7.24.1" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-replace-supers" "^7.24.6" -"@babel/plugin-transform-optional-catch-binding@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.1.tgz#92a3d0efe847ba722f1a4508669b23134669e2da" - integrity sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA== +"@babel/plugin-transform-optional-catch-binding@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.6.tgz#c81e90a971aad898e56f2b75a358e6c4855aeba3" + integrity sha512-L5pZ+b3O1mSzJ71HmxSCmTVd03VOT2GXOigug6vDYJzE5awLI7P1g0wFcdmGuwSDSrQ0L2rDOe/hHws8J1rv3w== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-transform-optional-chaining@^7.24.1", "@babel/plugin-transform-optional-chaining@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.5.tgz#a6334bebd7f9dd3df37447880d0bd64b778e600f" - integrity sha512-xWCkmwKT+ihmA6l7SSTpk8e4qQl/274iNbSKRRS8mpqFR32ksy36+a+LWY8OXCCEefF8WFlnOHVsaDI2231wBg== +"@babel/plugin-transform-optional-chaining@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.6.tgz#3d636b3ed8b5a506f93e4d4675fc95754d7594f5" + integrity sha512-cHbqF6l1QP11OkYTYQ+hhVx1E017O5ZcSPXk9oODpqhcAD1htsWG2NpHrrhthEO2qZomLK0FXS+u7NfrkF5aOQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-skip-transparent-expression-wrappers" "^7.24.6" "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-transform-parameters@^7.20.7": @@ -1003,163 +1096,163 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-parameters@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.5.tgz#5c3b23f3a6b8fed090f9b98f2926896d3153cc62" - integrity sha512-9Co00MqZ2aoky+4j2jhofErthm6QVLKbpQrvz20c3CH9KQCLHyNB+t2ya4/UrRpQGR+Wrwjg9foopoeSdnHOkA== +"@babel/plugin-transform-parameters@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.6.tgz#7aee86dfedd2fc0136fecbe6f7649fc02d86ab22" + integrity sha512-ST7guE8vLV+vI70wmAxuZpIKzVjvFX9Qs8bl5w6tN/6gOypPWUmMQL2p7LJz5E63vEGrDhAiYetniJFyBH1RkA== dependencies: - "@babel/helper-plugin-utils" "^7.24.5" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-private-methods@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.1.tgz#a0faa1ae87eff077e1e47a5ec81c3aef383dc15a" - integrity sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw== +"@babel/plugin-transform-private-methods@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.6.tgz#258e1f859a52ff7b30ad556598224c192defcda7" + integrity sha512-T9LtDI0BgwXOzyXrvgLTT8DFjCC/XgWLjflczTLXyvxbnSR/gpv0hbmzlHE/kmh9nOvlygbamLKRo6Op4yB6aw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.1" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-create-class-features-plugin" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-private-property-in-object@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.5.tgz#f5d1fcad36e30c960134cb479f1ca98a5b06eda5" - integrity sha512-JM4MHZqnWR04jPMujQDTBVRnqxpLLpx2tkn7iPn+Hmsc0Gnb79yvRWOkvqFOx3Z7P7VxiRIR22c4eGSNj87OBQ== +"@babel/plugin-transform-private-property-in-object@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.6.tgz#59ff09a099f62213112cf348e96b6b11957d1f28" + integrity sha512-Qu/ypFxCY5NkAnEhCF86Mvg3NSabKsh/TPpBVswEdkGl7+FbsYHy1ziRqJpwGH4thBdQHh8zx+z7vMYmcJ7iaQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.24.5" - "@babel/helper-plugin-utils" "^7.24.5" + "@babel/helper-annotate-as-pure" "^7.24.6" + "@babel/helper-create-class-features-plugin" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" -"@babel/plugin-transform-property-literals@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.1.tgz#d6a9aeab96f03749f4eebeb0b6ea8e90ec958825" - integrity sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA== +"@babel/plugin-transform-property-literals@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.6.tgz#243c4faabe811c405e9443059a58e834bf95dfd1" + integrity sha512-oARaglxhRsN18OYsnPTpb8TcKQWDYNsPNmTnx5++WOAsUJ0cSC/FZVlIJCKvPbU4yn/UXsS0551CFKJhN0CaMw== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-regenerator@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.1.tgz#625b7545bae52363bdc1fbbdc7252b5046409c8c" - integrity sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw== +"@babel/plugin-transform-regenerator@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.6.tgz#ed10cf0c13619365e15459f88d1b915ac57ffc24" + integrity sha512-SMDxO95I8WXRtXhTAc8t/NFQUT7VYbIWwJCJgEli9ml4MhqUMh4S6hxgH6SmAC3eAQNWCDJFxcFeEt9w2sDdXg== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" regenerator-transform "^0.15.2" -"@babel/plugin-transform-reserved-words@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.1.tgz#8de729f5ecbaaf5cf83b67de13bad38a21be57c1" - integrity sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg== +"@babel/plugin-transform-reserved-words@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.6.tgz#9eb16cbf339fcea0a46677716c775afb5ef14245" + integrity sha512-DcrgFXRRlK64dGE0ZFBPD5egM2uM8mgfrvTMOSB2yKzOtjpGegVYkzh3s1zZg1bBck3nkXiaOamJUqK3Syk+4A== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/plugin-transform-runtime@^7.12.10": - version "7.24.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.3.tgz#dc58ad4a31810a890550365cc922e1ff5acb5d7f" - integrity sha512-J0BuRPNlNqlMTRJ72eVptpt9VcInbxO6iP3jaxr+1NPhC0UkKL+6oeX6VXMEYdADnuqmMmsBspt4d5w8Y/TCbQ== + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.6.tgz#1e3256246004c3724b8e07c7cb25e35913c4e373" + integrity sha512-W3gQydMb0SY99y/2lV0Okx2xg/8KzmZLQsLaiCmwNRl1kKomz14VurEm+2TossUb+sRvBCnGe+wx8KtIgDtBbQ== dependencies: - "@babel/helper-module-imports" "^7.24.3" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-module-imports" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.1" babel-plugin-polyfill-regenerator "^0.6.1" semver "^6.3.1" -"@babel/plugin-transform-shorthand-properties@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.1.tgz#ba9a09144cf55d35ec6b93a32253becad8ee5b55" - integrity sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA== +"@babel/plugin-transform-shorthand-properties@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.6.tgz#ef734ebccc428d2174c7bb36015d0800faf5381e" + integrity sha512-xnEUvHSMr9eOWS5Al2YPfc32ten7CXdH7Zwyyk7IqITg4nX61oHj+GxpNvl+y5JHjfN3KXE2IV55wAWowBYMVw== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-spread@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.1.tgz#a1acf9152cbf690e4da0ba10790b3ac7d2b2b391" - integrity sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g== +"@babel/plugin-transform-spread@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.6.tgz#a56cecbd8617675531d1b79f5b755b7613aa0822" + integrity sha512-h/2j7oIUDjS+ULsIrNZ6/TKG97FgmEk1PXryk/HQq6op4XUUUwif2f69fJrzK0wza2zjCS1xhXmouACaWV5uPA== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-skip-transparent-expression-wrappers" "^7.24.6" -"@babel/plugin-transform-sticky-regex@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.1.tgz#f03e672912c6e203ed8d6e0271d9c2113dc031b9" - integrity sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw== +"@babel/plugin-transform-sticky-regex@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.6.tgz#1a78127731fea87d954bed193840986a38f04327" + integrity sha512-fN8OcTLfGmYv7FnDrsjodYBo1DhPL3Pze/9mIIE2MGCT1KgADYIOD7rEglpLHZj8PZlC/JFX5WcD+85FLAQusw== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-template-literals@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.1.tgz#15e2166873a30d8617e3e2ccadb86643d327aab7" - integrity sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g== +"@babel/plugin-transform-template-literals@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.6.tgz#aaf2ae157acd0e5c9265dba8ac0a439f8d2a6303" + integrity sha512-BJbEqJIcKwrqUP+KfUIkxz3q8VzXe2R8Wv8TaNgO1cx+nNavxn/2+H8kp9tgFSOL6wYPPEgFvU6IKS4qoGqhmg== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-typeof-symbol@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.5.tgz#703cace5ef74155fb5eecab63cbfc39bdd25fe12" - integrity sha512-UTGnhYVZtTAjdwOTzT+sCyXmTn8AhaxOS/MjG9REclZ6ULHWF9KoCZur0HSGU7hk8PdBFKKbYe6+gqdXWz84Jg== +"@babel/plugin-transform-typeof-symbol@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.6.tgz#3d02da23ebcc8f1982ddcd1f2581cf3ee4e58762" + integrity sha512-IshCXQ+G9JIFJI7bUpxTE/oA2lgVLAIK8q1KdJNoPXOpvRaNjMySGuvLfBw/Xi2/1lLo953uE8hyYSDW3TSYig== dependencies: - "@babel/helper-plugin-utils" "^7.24.5" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-typescript@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.1.tgz#5c05e28bb76c7dfe7d6c5bed9951324fd2d3ab07" - integrity sha512-liYSESjX2fZ7JyBFkYG78nfvHlMKE6IpNdTVnxmlYUR+j5ZLsitFbaAE+eJSK2zPPkNWNw4mXL51rQ8WrvdK0w== +"@babel/plugin-transform-typescript@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.6.tgz#339c6127a783c32e28a5b591e6c666f899b57db0" + integrity sha512-H0i+hDLmaYYSt6KU9cZE0gb3Cbssa/oxWis7PX4ofQzbvsfix9Lbh8SRk7LCPDlLWJHUiFeHU0qRRpF/4Zv7mQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.24.1" - "@babel/helper-plugin-utils" "^7.24.0" - "@babel/plugin-syntax-typescript" "^7.24.1" + "@babel/helper-annotate-as-pure" "^7.24.6" + "@babel/helper-create-class-features-plugin" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/plugin-syntax-typescript" "^7.24.6" -"@babel/plugin-transform-unicode-escapes@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.1.tgz#fb3fa16676549ac7c7449db9b342614985c2a3a4" - integrity sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw== +"@babel/plugin-transform-unicode-escapes@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.6.tgz#c8ddca8fd5bacece837a4e27bd3b7ed64580d1a8" + integrity sha512-bKl3xxcPbkQQo5eX9LjjDpU2xYHeEeNQbOhj0iPvetSzA+Tu9q/o5lujF4Sek60CM6MgYvOS/DJuwGbiEYAnLw== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-unicode-property-regex@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.1.tgz#56704fd4d99da81e5e9f0c0c93cabd91dbc4889e" - integrity sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng== +"@babel/plugin-transform-unicode-property-regex@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.6.tgz#e66297d5d452db0b0be56515e3d0e10b7d33fb32" + integrity sha512-8EIgImzVUxy15cZiPii9GvLZwsy7Vxc+8meSlR3cXFmBIl5W5Tn9LGBf7CDKkHj4uVfNXCJB8RsVfnmY61iedA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-create-regexp-features-plugin" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-unicode-regex@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.1.tgz#57c3c191d68f998ac46b708380c1ce4d13536385" - integrity sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g== +"@babel/plugin-transform-unicode-regex@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.6.tgz#2001e7d87ed709eea145e0b65fb5f93c3c0e225b" + integrity sha512-pssN6ExsvxaKU638qcWb81RrvvgZom3jDgU/r5xFZ7TONkZGFf4MhI2ltMb8OcQWhHyxgIavEU+hgqtbKOmsPA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-create-regexp-features-plugin" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" -"@babel/plugin-transform-unicode-sets-regex@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.1.tgz#c1ea175b02afcffc9cf57a9c4658326625165b7f" - integrity sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA== +"@babel/plugin-transform-unicode-sets-regex@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.6.tgz#f18b7292222aee85c155258ceb345a146a070a46" + integrity sha512-quiMsb28oXWIDK0gXLALOJRXLgICLiulqdZGOaPPd0vRT7fQp74NtdADAVu+D8s00C+0Xs0MxVP0VKF/sZEUgw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-create-regexp-features-plugin" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" "@babel/preset-env@^7.12.11": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.5.tgz#6a9ac90bd5a5a9dae502af60dfc58c190551bbcd" - integrity sha512-UGK2ifKtcC8i5AI4cH+sbLLuLc2ktYSFJgBAXorKAsHUZmrQ1q6aQ6i3BvU24wWs2AAKqQB6kq3N9V9Gw1HiMQ== - dependencies: - "@babel/compat-data" "^7.24.4" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-plugin-utils" "^7.24.5" - "@babel/helper-validator-option" "^7.23.5" - "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.5" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.1" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.1" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.24.1" + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.6.tgz#a5a55bc70e5ff1ed7f872067e2a9d65ff917ad6f" + integrity sha512-CrxEAvN7VxfjOG8JNF2Y/eMqMJbZPZ185amwGUBp8D9USK90xQmv7dLdFSa+VbD7fdIqcy/Mfv7WtzG8+/qxKg== + dependencies: + "@babel/compat-data" "^7.24.6" + "@babel/helper-compilation-targets" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-validator-option" "^7.24.6" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.6" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.6" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.6" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.24.6" "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-class-properties" "^7.12.13" "@babel/plugin-syntax-class-static-block" "^7.14.5" "@babel/plugin-syntax-dynamic-import" "^7.8.3" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-import-assertions" "^7.24.1" - "@babel/plugin-syntax-import-attributes" "^7.24.1" + "@babel/plugin-syntax-import-assertions" "^7.24.6" + "@babel/plugin-syntax-import-attributes" "^7.24.6" "@babel/plugin-syntax-import-meta" "^7.10.4" "@babel/plugin-syntax-json-strings" "^7.8.3" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" @@ -1171,54 +1264,54 @@ "@babel/plugin-syntax-private-property-in-object" "^7.14.5" "@babel/plugin-syntax-top-level-await" "^7.14.5" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.24.1" - "@babel/plugin-transform-async-generator-functions" "^7.24.3" - "@babel/plugin-transform-async-to-generator" "^7.24.1" - "@babel/plugin-transform-block-scoped-functions" "^7.24.1" - "@babel/plugin-transform-block-scoping" "^7.24.5" - "@babel/plugin-transform-class-properties" "^7.24.1" - "@babel/plugin-transform-class-static-block" "^7.24.4" - "@babel/plugin-transform-classes" "^7.24.5" - "@babel/plugin-transform-computed-properties" "^7.24.1" - "@babel/plugin-transform-destructuring" "^7.24.5" - "@babel/plugin-transform-dotall-regex" "^7.24.1" - "@babel/plugin-transform-duplicate-keys" "^7.24.1" - "@babel/plugin-transform-dynamic-import" "^7.24.1" - "@babel/plugin-transform-exponentiation-operator" "^7.24.1" - "@babel/plugin-transform-export-namespace-from" "^7.24.1" - "@babel/plugin-transform-for-of" "^7.24.1" - "@babel/plugin-transform-function-name" "^7.24.1" - "@babel/plugin-transform-json-strings" "^7.24.1" - "@babel/plugin-transform-literals" "^7.24.1" - "@babel/plugin-transform-logical-assignment-operators" "^7.24.1" - "@babel/plugin-transform-member-expression-literals" "^7.24.1" - "@babel/plugin-transform-modules-amd" "^7.24.1" - "@babel/plugin-transform-modules-commonjs" "^7.24.1" - "@babel/plugin-transform-modules-systemjs" "^7.24.1" - "@babel/plugin-transform-modules-umd" "^7.24.1" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5" - "@babel/plugin-transform-new-target" "^7.24.1" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.24.1" - "@babel/plugin-transform-numeric-separator" "^7.24.1" - "@babel/plugin-transform-object-rest-spread" "^7.24.5" - "@babel/plugin-transform-object-super" "^7.24.1" - "@babel/plugin-transform-optional-catch-binding" "^7.24.1" - "@babel/plugin-transform-optional-chaining" "^7.24.5" - "@babel/plugin-transform-parameters" "^7.24.5" - "@babel/plugin-transform-private-methods" "^7.24.1" - "@babel/plugin-transform-private-property-in-object" "^7.24.5" - "@babel/plugin-transform-property-literals" "^7.24.1" - "@babel/plugin-transform-regenerator" "^7.24.1" - "@babel/plugin-transform-reserved-words" "^7.24.1" - "@babel/plugin-transform-shorthand-properties" "^7.24.1" - "@babel/plugin-transform-spread" "^7.24.1" - "@babel/plugin-transform-sticky-regex" "^7.24.1" - "@babel/plugin-transform-template-literals" "^7.24.1" - "@babel/plugin-transform-typeof-symbol" "^7.24.5" - "@babel/plugin-transform-unicode-escapes" "^7.24.1" - "@babel/plugin-transform-unicode-property-regex" "^7.24.1" - "@babel/plugin-transform-unicode-regex" "^7.24.1" - "@babel/plugin-transform-unicode-sets-regex" "^7.24.1" + "@babel/plugin-transform-arrow-functions" "^7.24.6" + "@babel/plugin-transform-async-generator-functions" "^7.24.6" + "@babel/plugin-transform-async-to-generator" "^7.24.6" + "@babel/plugin-transform-block-scoped-functions" "^7.24.6" + "@babel/plugin-transform-block-scoping" "^7.24.6" + "@babel/plugin-transform-class-properties" "^7.24.6" + "@babel/plugin-transform-class-static-block" "^7.24.6" + "@babel/plugin-transform-classes" "^7.24.6" + "@babel/plugin-transform-computed-properties" "^7.24.6" + "@babel/plugin-transform-destructuring" "^7.24.6" + "@babel/plugin-transform-dotall-regex" "^7.24.6" + "@babel/plugin-transform-duplicate-keys" "^7.24.6" + "@babel/plugin-transform-dynamic-import" "^7.24.6" + "@babel/plugin-transform-exponentiation-operator" "^7.24.6" + "@babel/plugin-transform-export-namespace-from" "^7.24.6" + "@babel/plugin-transform-for-of" "^7.24.6" + "@babel/plugin-transform-function-name" "^7.24.6" + "@babel/plugin-transform-json-strings" "^7.24.6" + "@babel/plugin-transform-literals" "^7.24.6" + "@babel/plugin-transform-logical-assignment-operators" "^7.24.6" + "@babel/plugin-transform-member-expression-literals" "^7.24.6" + "@babel/plugin-transform-modules-amd" "^7.24.6" + "@babel/plugin-transform-modules-commonjs" "^7.24.6" + "@babel/plugin-transform-modules-systemjs" "^7.24.6" + "@babel/plugin-transform-modules-umd" "^7.24.6" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.24.6" + "@babel/plugin-transform-new-target" "^7.24.6" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.24.6" + "@babel/plugin-transform-numeric-separator" "^7.24.6" + "@babel/plugin-transform-object-rest-spread" "^7.24.6" + "@babel/plugin-transform-object-super" "^7.24.6" + "@babel/plugin-transform-optional-catch-binding" "^7.24.6" + "@babel/plugin-transform-optional-chaining" "^7.24.6" + "@babel/plugin-transform-parameters" "^7.24.6" + "@babel/plugin-transform-private-methods" "^7.24.6" + "@babel/plugin-transform-private-property-in-object" "^7.24.6" + "@babel/plugin-transform-property-literals" "^7.24.6" + "@babel/plugin-transform-regenerator" "^7.24.6" + "@babel/plugin-transform-reserved-words" "^7.24.6" + "@babel/plugin-transform-shorthand-properties" "^7.24.6" + "@babel/plugin-transform-spread" "^7.24.6" + "@babel/plugin-transform-sticky-regex" "^7.24.6" + "@babel/plugin-transform-template-literals" "^7.24.6" + "@babel/plugin-transform-typeof-symbol" "^7.24.6" + "@babel/plugin-transform-unicode-escapes" "^7.24.6" + "@babel/plugin-transform-unicode-property-regex" "^7.24.6" + "@babel/plugin-transform-unicode-regex" "^7.24.6" + "@babel/plugin-transform-unicode-sets-regex" "^7.24.6" "@babel/preset-modules" "0.1.6-no-external-plugins" babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.4" @@ -1236,15 +1329,15 @@ esutils "^2.0.2" "@babel/preset-typescript@^7.12.7": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.24.1.tgz#89bdf13a3149a17b3b2a2c9c62547f06db8845ec" - integrity sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ== + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.24.6.tgz#27057470fb981c31338bdb897fc3d9aa0cb7dab2" + integrity sha512-U10aHPDnokCFRXgyT/MaIRTivUu2K/mu0vJlwRS9LxJmJet+PFQNKpggPyFCUtC6zWSBPjvxjnpNkAn3Uw2m5w== dependencies: - "@babel/helper-plugin-utils" "^7.24.0" - "@babel/helper-validator-option" "^7.23.5" - "@babel/plugin-syntax-jsx" "^7.24.1" - "@babel/plugin-transform-modules-commonjs" "^7.24.1" - "@babel/plugin-transform-typescript" "^7.24.1" + "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-validator-option" "^7.24.6" + "@babel/plugin-syntax-jsx" "^7.24.6" + "@babel/plugin-transform-modules-commonjs" "^7.24.6" + "@babel/plugin-transform-typescript" "^7.24.6" "@babel/regjsgen@^0.8.0": version "0.8.0" @@ -1252,13 +1345,13 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.5.tgz#230946857c053a36ccc66e1dd03b17dd0c4ed02c" - integrity sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g== + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.6.tgz#5b76eb89ad45e2e4a0a8db54c456251469a3358e" + integrity sha512-Ja18XcETdEl5mzzACGd+DKgaGJzPTCow7EglgwTmHdwokzDFYh/MHua6lU6DV/hjF2IaOJ4oX2nqnjG7RElKOw== dependencies: regenerator-runtime "^0.14.0" -"@babel/template@^7.22.15", "@babel/template@^7.24.0": +"@babel/template@^7.22.15": version "7.24.0" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.0.tgz#c6a524aa93a4a05d66aaf31654258fae69d87d50" integrity sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA== @@ -1267,6 +1360,15 @@ "@babel/parser" "^7.24.0" "@babel/types" "^7.24.0" +"@babel/template@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.6.tgz#048c347b2787a6072b24c723664c8d02b67a44f9" + integrity sha512-3vgazJlLwNXi9jhrR1ef8qiB65L1RK90+lEQwv4OxveHnqC3BfmnHdgySwRLzf6akhlOYenT+b7AfWq+a//AHw== + dependencies: + "@babel/code-frame" "^7.24.6" + "@babel/parser" "^7.24.6" + "@babel/types" "^7.24.6" + "@babel/template@^7.3.3": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" @@ -1292,19 +1394,19 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/traverse@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.5.tgz#972aa0bc45f16983bf64aa1f877b2dd0eea7e6f8" - integrity sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA== - dependencies: - "@babel/code-frame" "^7.24.2" - "@babel/generator" "^7.24.5" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.24.5" - "@babel/parser" "^7.24.5" - "@babel/types" "^7.24.5" +"@babel/traverse@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.6.tgz#0941ec50cdeaeacad0911eb67ae227a4f8424edc" + integrity sha512-OsNjaJwT9Zn8ozxcfoBc+RaHdj3gFmCmYoQLUII1o6ZrUwku0BMg80FoOTPx+Gi6XhcQxAYE4xyjPTo4SxEQqw== + dependencies: + "@babel/code-frame" "^7.24.6" + "@babel/generator" "^7.24.6" + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-function-name" "^7.24.6" + "@babel/helper-hoist-variables" "^7.24.6" + "@babel/helper-split-export-declaration" "^7.24.6" + "@babel/parser" "^7.24.6" + "@babel/types" "^7.24.6" debug "^4.3.1" globals "^11.1.0" @@ -1317,7 +1419,7 @@ "@babel/helper-validator-identifier" "^7.22.15" to-fast-properties "^2.0.0" -"@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.24.5", "@babel/types@^7.4.4": +"@babel/types@^7.22.15", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.24.5": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.5.tgz#7661930afc638a5383eb0c4aee59b74f38db84d7" integrity sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ== @@ -1335,6 +1437,15 @@ "@babel/helper-validator-identifier" "^7.22.19" to-fast-properties "^2.0.0" +"@babel/types@^7.22.5", "@babel/types@^7.24.6", "@babel/types@^7.4.4": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.6.tgz#ba4e1f59870c10dc2fa95a274ac4feec23b21912" + integrity sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ== + dependencies: + "@babel/helper-string-parser" "^7.24.6" + "@babel/helper-validator-identifier" "^7.24.6" + to-fast-properties "^2.0.0" + "@babel/types@^7.23.3": version "7.23.3" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.3.tgz#d5ea892c07f2ec371ac704420f4dcdb07b5f9598" @@ -2663,20 +2774,13 @@ brace-expansion@^2.0.1: dependencies: balanced-match "^1.0.0" -braces@^3.0.3: +braces@^3.0.3, braces@~3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== dependencies: fill-range "^7.1.1" -braces@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - browserslist@^4.21.9: version "4.22.2" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.2.tgz#704c4943072bd81ea18997f3bd2180e89c77874b" @@ -2751,9 +2855,9 @@ caniuse-lite@^1.0.30001565: integrity sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q== caniuse-lite@^1.0.30001587: - version "1.0.30001614" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001614.tgz#f894b4209376a0bf923d67d9c361d96b1dfebe39" - integrity sha512-jmZQ1VpmlRwHgdP1/uiKzgiAuGOfLEJsYFP4+GBou/QQ4U6IOJCB4NP1c+1p9RGLpwObcT94jA5/uO+F1vBbog== + version "1.0.30001627" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001627.tgz#8071c42d468e06ed2fb2c545efe79a663fd326ab" + integrity sha512-4zgNiB8nTyV/tHhwZrFs88ryjls/lHiqFhrxCW4qSTeuRByBVnPYpDInchOIySWknznucaf31Z4KYqjfbrecVw== chalk@5.2.0: version "5.2.0" @@ -2904,11 +3008,16 @@ combined-stream@^1.0.8: dependencies: delayed-stream "~1.0.0" -commander@^4.0.1, commander@^4.1.1: +commander@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== +commander@^6.2.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" + integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== + commander@~12.1.0: version "12.1.0" resolved "https://registry.yarnpkg.com/commander/-/commander-12.1.0.tgz#01423b36f501259fdaac4d0e4d60c96c991585d3" @@ -2946,14 +3055,7 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -core-js-compat@^3.31.0, core-js-compat@^3.36.1: - version "3.37.0" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.37.0.tgz#d9570e544163779bb4dff1031c7972f44918dc73" - integrity sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA== - dependencies: - browserslist "^4.23.0" - -core-js-compat@^3.37.0: +core-js-compat@^3.31.0, core-js-compat@^3.36.1, core-js-compat@^3.37.0: version "3.37.1" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.37.1.tgz#c844310c7852f4bdf49b8d339730b97e17ff09ee" integrity sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg== @@ -3155,9 +3257,9 @@ electron-to-chromium@^1.4.601: integrity sha512-2yszojF7vIZ68adIOvzV4bku8OZad9w5H9xF3ZAMZjPuOjBarlflUkjN6DggdV+L71WZuKUfKUhov/34+G5QHg== electron-to-chromium@^1.4.668: - version "1.4.751" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.751.tgz#b5b19742a435c589de02f60c16618150498bbd59" - integrity sha512-2DEPi++qa89SMGRhufWTiLmzqyuGmNF3SK4+PQetW1JKiZdEpF4XQonJXJCzyuYSA6mauiMhbyVhqYAP45Hvfw== + version "1.4.789" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.789.tgz#fec941cb753ee139da562a5a8ff31fc3e828b411" + integrity sha512-0VbyiaXoT++Fi2vHGo2ThOeS6X3vgRCWrjPeO2FeIAWL6ItiSJ9BqlH8LfCXe3X1IdcG+S0iLoNaxQWhfZoGzQ== emittery@^0.13.1: version "0.13.1" @@ -3269,7 +3371,7 @@ es-to-primitive@^1.2.1: is-date-object "^1.0.1" is-symbol "^1.0.2" -escalade@^3.1.1: +escalade@^3.1.1, escalade@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== @@ -3710,7 +3812,7 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" -fill-range@^7.0.1, fill-range@^7.1.1: +fill-range@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== @@ -5569,11 +5671,16 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -picocolors@1.0.0, picocolors@^1.0.0: +picocolors@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== +picocolors@^1.0.0, picocolors@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" + integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== + picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" @@ -6586,12 +6693,12 @@ universalify@^0.2.0: integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== update-browserslist-db@^1.0.13: - version "1.0.13" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" - integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== + version "1.0.16" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz#f6d489ed90fb2f07d67784eb3f53d7891f736356" + integrity sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ== dependencies: - escalade "^3.1.1" - picocolors "^1.0.0" + escalade "^3.1.2" + picocolors "^1.0.1" uri-js@^4.2.2: version "4.4.1" From 43022d5b2f936fd03c276cf3e016d4ed9ae57351 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Wed, 5 Jun 2024 13:02:45 +0100 Subject: [PATCH 251/595] RustCrypto: fix ordering of methods (#4230) * RustCrypto: Move CryptoBackend impl to CryptoBackend impl section Given there is a `CryptoBackend implementation` section, the methods implementing CryptoBackend should be there. * RustCrypto: Fix documentation on dehydration methods * RustCrypto: reunite `resetKeyBackup` with its helper A couple of new methods had snuck into the middle. --- src/rust-crypto/rust-crypto.ts | 112 +++++++++++++++++---------------- 1 file changed, 57 insertions(+), 55 deletions(-) diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index c1b8f051953..61fc30cd915 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -309,6 +309,40 @@ export class RustCrypto extends TypedEventEmitter): Promise { + if (backupInfo.algorithm != "m.megolm_backup.v1.curve25519-aes-sha2") { + throw new Error(`getBackupDecryptor Unsupported algorithm ${backupInfo.algorithm}`); + } + + const authData = backupInfo.auth_data; + + if (!(privKey instanceof Uint8Array)) { + throw new Error(`getBackupDecryptor expects Uint8Array`); + } + + const backupDecryptionKey = RustSdkCryptoJs.BackupDecryptionKey.fromBase64(encodeBase64(privKey)); + + if (authData.public_key != backupDecryptionKey.megolmV1PublicKey.publicKeyBase64) { + throw new Error(`getBackupDecryptor key mismatch error`); + } + + return this.backupManager.createBackupDecryptor(backupDecryptionKey); + } + + /** + * Implementation of {@link CryptoBackend#importBackedUpRoomKeys}. + */ + public async importBackedUpRoomKeys( + keys: IMegolmSessionData[], + backupVersion: string, + opts?: ImportRoomKeysOpts, + ): Promise { + return await this.backupManager.importBackedUpRoomKeys(keys, backupVersion, opts); + } + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // // CryptoApi implementation @@ -1166,30 +1200,12 @@ export class RustCrypto extends TypedEventEmitter>[0], - ): Promise { - const secretsBundle = RustSdkCryptoJs.SecretsBundle.from_json(secrets); - await this.getOlmMachineOrThrow().importSecretsBundle(secretsBundle); // this method frees the SecretsBundle - } - - /** - * Implementation of {@link CryptoApi#exportSecretsBundle}. - */ - public async exportsSecretsBundle(): ReturnType> { - const secretsBundle = await this.getOlmMachineOrThrow().exportSecretsBundle(); - const secrets = secretsBundle.to_json(); - secretsBundle.free(); - return secrets; - } - /** * Signs the given object with the current device and current identity (if available). * As defined in {@link https://spec.matrix.org/v1.8/appendices/#signing-json | Signing JSON}. * + * Helper for {@link RustCrypto#resetKeyBackup}. + * * @param obj - The object to sign */ private async signObject(obj: T): Promise { @@ -1213,54 +1229,40 @@ export class RustCrypto extends TypedEventEmitter): Promise { - if (backupInfo.algorithm != "m.megolm_backup.v1.curve25519-aes-sha2") { - throw new Error(`getBackupDecryptor Unsupported algorithm ${backupInfo.algorithm}`); - } - - const authData = backupInfo.auth_data; - - if (!(privKey instanceof Uint8Array)) { - throw new Error(`getBackupDecryptor expects Uint8Array`); - } - - const backupDecryptionKey = RustSdkCryptoJs.BackupDecryptionKey.fromBase64(encodeBase64(privKey)); - - if (authData.public_key != backupDecryptionKey.megolmV1PublicKey.publicKeyBase64) { - throw new Error(`getBackupDecryptor key mismatch error`); - } - - return this.backupManager.createBackupDecryptor(backupDecryptionKey); + public async isDehydrationSupported(): Promise { + return await this.dehydratedDeviceManager.isSupported(); } /** - * Implementation of {@link CryptoBackend#importBackedUpRoomKeys}. + * Implementation of {@link CryptoApi#startDehydration}. */ - public async importBackedUpRoomKeys( - keys: IMegolmSessionData[], - backupVersion: string, - opts?: ImportRoomKeysOpts, - ): Promise { - return await this.backupManager.importBackedUpRoomKeys(keys, backupVersion, opts); + public async startDehydration(createNewKey?: boolean): Promise { + if (!(await this.isCrossSigningReady()) || !(await this.isSecretStorageReady())) { + throw new Error("Device dehydration requires cross-signing and secret storage to be set up"); + } + return await this.dehydratedDeviceManager.start(createNewKey); } /** - * Implementation of {@link CryptoBackend#isDehydrationSupported}. + * Implementation of {@link CryptoApi#importSecretsBundle}. */ - public async isDehydrationSupported(): Promise { - return await this.dehydratedDeviceManager.isSupported(); + public async importSecretsBundle( + secrets: Parameters>[0], + ): Promise { + const secretsBundle = RustSdkCryptoJs.SecretsBundle.from_json(secrets); + await this.getOlmMachineOrThrow().importSecretsBundle(secretsBundle); // this method frees the SecretsBundle } /** - * Implementation of {@link CryptoBackend#startDehydration}. + * Implementation of {@link CryptoApi#exportSecretsBundle}. */ - public async startDehydration(createNewKey?: boolean): Promise { - if (!(await this.isCrossSigningReady()) || !(await this.isSecretStorageReady())) { - throw new Error("Device dehydration requires cross-signing and secret storage to be set up"); - } - return await this.dehydratedDeviceManager.start(createNewKey); + public async exportsSecretsBundle(): ReturnType> { + const secretsBundle = await this.getOlmMachineOrThrow().exportSecretsBundle(); + const secrets = secretsBundle.to_json(); + secretsBundle.free(); + return secrets; } /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// From 87c2ac3ffa85ec7340d392821ecd3405569904cc Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 5 Jun 2024 16:56:37 +0100 Subject: [PATCH 252/595] Use LegacyRendezvousFailureReason over RendezvousFailureReason (#4231) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/rendezvous/RendezvousFailureReason.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/rendezvous/RendezvousFailureReason.ts b/src/rendezvous/RendezvousFailureReason.ts index b19a91cec0b..27350d87912 100644 --- a/src/rendezvous/RendezvousFailureReason.ts +++ b/src/rendezvous/RendezvousFailureReason.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -export type RendezvousFailureListener = (reason: RendezvousFailureReason) => void; +export type RendezvousFailureListener = (reason: LegacyRendezvousFailureReason) => void; -export enum RendezvousFailureReason { +export enum LegacyRendezvousFailureReason { UserDeclined = "user_declined", OtherDeviceNotSignedIn = "other_device_not_signed_in", OtherDeviceAlreadySignedIn = "other_device_already_signed_in", @@ -29,3 +29,8 @@ export enum RendezvousFailureReason { UnsupportedTransport = "unsupported_transport", HomeserverLacksSupport = "homeserver_lacks_support", } + +/** + * @deprecated legacy re-export + */ +export { LegacyRendezvousFailureReason as RendezvousFailureReason }; From 6436fbb99f554182cddd9a9f9ab254794d2d0aa1 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 6 Jun 2024 09:57:26 +0100 Subject: [PATCH 253/595] MSC4108 support OIDC QR code login (#4134) Co-authored-by: Hugh Nimmo-Smith Co-authored-by: Hugh Nimmo-Smith --- .../rendezvous/MSC4108SignInWithQR.spec.ts | 358 ++++++++++++++ spec/test-utils/oidc.ts | 7 +- .../MSC4108RendezvousSession.spec.ts | 341 ++++++++++++++ .../channels/MSC4108SecureChannel.spec.ts | 126 +++++ spec/unit/rendezvous/ecdhv2.spec.ts | 2 +- spec/unit/rendezvous/rendezvous.spec.ts | 7 +- .../rendezvous/simpleHttpTransport.spec.ts | 2 +- src/oidc/register.ts | 2 + src/rendezvous/MSC3906Rendezvous.ts | 7 +- src/rendezvous/MSC4108SignInWithQR.ts | 439 ++++++++++++++++++ src/rendezvous/RendezvousFailureReason.ts | 46 +- .../MSC3903ECDHv2RendezvousChannel.ts | 2 +- .../channels/MSC4108SecureChannel.ts | 270 +++++++++++ src/rendezvous/channels/index.ts | 4 + src/rendezvous/index.ts | 6 + .../MSC3886SimpleHttpRendezvousTransport.ts | 2 +- .../transports/MSC4108RendezvousSession.ts | 270 +++++++++++ src/rendezvous/transports/index.ts | 4 + 18 files changed, 1877 insertions(+), 18 deletions(-) create mode 100644 spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts create mode 100644 spec/unit/rendezvous/MSC4108RendezvousSession.spec.ts create mode 100644 spec/unit/rendezvous/channels/MSC4108SecureChannel.spec.ts create mode 100644 src/rendezvous/MSC4108SignInWithQR.ts create mode 100644 src/rendezvous/channels/MSC4108SecureChannel.ts create mode 100644 src/rendezvous/transports/MSC4108RendezvousSession.ts diff --git a/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts b/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts new file mode 100644 index 00000000000..ef9ed201615 --- /dev/null +++ b/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts @@ -0,0 +1,358 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { QrCodeData, QrCodeMode } from "@matrix-org/matrix-sdk-crypto-wasm"; +import { mocked } from "jest-mock"; +import fetchMock from "fetch-mock-jest"; + +import { + MSC4108FailureReason, + MSC4108RendezvousSession, + MSC4108SecureChannel, + MSC4108SignInWithQR, + PayloadType, + RendezvousError, +} from "../../../src/rendezvous"; +import { defer } from "../../../src/utils"; +import { + ClientPrefix, + DEVICE_CODE_SCOPE, + IHttpOpts, + IMyDevice, + MatrixClient, + MatrixError, + MatrixHttpApi, +} from "../../../src"; +import { mockOpenIdConfiguration } from "../../test-utils/oidc"; + +function makeMockClient(opts: { userId: string; deviceId: string; msc4108Enabled: boolean }): MatrixClient { + const baseUrl = "https://example.com"; + const crypto = { + exportSecretsForQrLogin: jest.fn(), + }; + const client = { + doesServerSupportUnstableFeature(feature: string) { + return Promise.resolve(opts.msc4108Enabled && feature === "org.matrix.msc4108"); + }, + getUserId() { + return opts.userId; + }, + getDeviceId() { + return opts.deviceId; + }, + baseUrl, + getHomeserverUrl() { + return baseUrl; + }, + getDevice: jest.fn(), + getCrypto: jest.fn(() => crypto), + getAuthIssuer: jest.fn().mockResolvedValue({ issuer: "https://issuer/" }), + } as unknown as MatrixClient; + client.http = new MatrixHttpApi(client, { + baseUrl: client.baseUrl, + prefix: ClientPrefix.Unstable, + onlyData: true, + }); + return client; +} + +describe("MSC4108SignInWithQR", () => { + beforeEach(() => { + fetchMock.get( + "https://issuer/.well-known/openid-configuration", + mockOpenIdConfiguration("https://issuer/", [DEVICE_CODE_SCOPE]), + ); + fetchMock.get("https://issuer/jwks", { + status: 200, + headers: { + "Content-Type": "application/json", + }, + keys: [], + }); + }); + + afterEach(() => { + fetchMock.reset(); + }); + + const url = "https://fallbackserver/rz/123"; + const deviceId = "DEADB33F"; + const verificationUri = "https://example.com/verify"; + const verificationUriComplete = "https://example.com/verify/complete"; + + it("should generate qr code data as expected", async () => { + const session = new MSC4108RendezvousSession({ + url, + }); + const channel = new MSC4108SecureChannel(session); + const login = new MSC4108SignInWithQR(channel, false); + + await login.generateCode(); + const code = login.code; + expect(code).toHaveLength(71); + const text = new TextDecoder().decode(code); + expect(text.startsWith("MATRIX")).toBeTruthy(); + expect(text.endsWith(url)).toBeTruthy(); + + // Assert that the code is stable + await login.generateCode(); + expect(login.code).toEqual(code); + }); + + describe("should be able to connect as a reciprocating device", () => { + let client: MatrixClient; + let ourLogin: MSC4108SignInWithQR; + let opponentLogin: MSC4108SignInWithQR; + + beforeEach(async () => { + let ourData = defer(); + let opponentData = defer(); + + const ourMockSession = { + send: jest.fn(async (newData) => { + ourData.resolve(newData); + }), + receive: jest.fn(() => { + const prom = opponentData.promise; + prom.then(() => { + opponentData = defer(); + }); + return prom; + }), + url, + cancelled: false, + cancel: () => { + // @ts-ignore + ourMockSession.cancelled = true; + ourData.resolve(""); + }, + } as unknown as MSC4108RendezvousSession; + const opponentMockSession = { + send: jest.fn(async (newData) => { + opponentData.resolve(newData); + }), + receive: jest.fn(() => { + const prom = ourData.promise; + prom.then(() => { + ourData = defer(); + }); + return prom; + }), + url, + } as unknown as MSC4108RendezvousSession; + + client = makeMockClient({ userId: "@alice:example.com", deviceId: "alice", msc4108Enabled: true }); + + const ourChannel = new MSC4108SecureChannel(ourMockSession); + const qrCodeData = QrCodeData.from_bytes( + await ourChannel.generateCode(QrCodeMode.Reciprocate, client.getHomeserverUrl()), + ); + const opponentChannel = new MSC4108SecureChannel(opponentMockSession, qrCodeData.public_key); + + ourLogin = new MSC4108SignInWithQR(ourChannel, true, client); + opponentLogin = new MSC4108SignInWithQR(opponentChannel, false); + }); + + it("should be able to connect with opponent and share homeserver url & check code", async () => { + await Promise.all([ + expect(ourLogin.negotiateProtocols()).resolves.toEqual({}), + expect(opponentLogin.negotiateProtocols()).resolves.toEqual({ homeserverBaseUrl: client.baseUrl }), + ]); + + expect(ourLogin.checkCode).toBe(opponentLogin.checkCode); + }); + + it("should be able to connect with opponent and share verificationUri", async () => { + await Promise.all([ourLogin.negotiateProtocols(), opponentLogin.negotiateProtocols()]); + + mocked(client.getDevice).mockRejectedValue(new MatrixError({ errcode: "M_NOT_FOUND" }, 404)); + + await Promise.all([ + expect(ourLogin.deviceAuthorizationGrant()).resolves.toEqual({ + verificationUri: verificationUriComplete, + }), + // We don't have the new device side of this flow implemented at this time so mock it + // @ts-ignore + opponentLogin.send({ + type: PayloadType.Protocol, + protocol: "device_authorization_grant", + device_authorization_grant: { + verification_uri: verificationUri, + verification_uri_complete: verificationUriComplete, + }, + device_id: deviceId, + }), + ]); + }); + + it("should abort if device already exists", async () => { + await Promise.all([ourLogin.negotiateProtocols(), opponentLogin.negotiateProtocols()]); + + mocked(client.getDevice).mockResolvedValue({} as IMyDevice); + + await Promise.all([ + expect(ourLogin.deviceAuthorizationGrant()).rejects.toThrow("Specified device ID already exists"), + // We don't have the new device side of this flow implemented at this time so mock it + // @ts-ignore + opponentLogin.send({ + type: PayloadType.Protocol, + protocol: "device_authorization_grant", + device_authorization_grant: { + verification_uri: verificationUri, + }, + device_id: deviceId, + }), + ]); + }); + + it("should abort on unsupported protocol", async () => { + await Promise.all([ourLogin.negotiateProtocols(), opponentLogin.negotiateProtocols()]); + + await Promise.all([ + expect(ourLogin.deviceAuthorizationGrant()).rejects.toThrow( + "Received a request for an unsupported protocol", + ), + // We don't have the new device side of this flow implemented at this time so mock it + // @ts-ignore + opponentLogin.send({ + type: PayloadType.Protocol, + protocol: "device_authorization_grant_v2", + device_authorization_grant: { + verification_uri: verificationUri, + }, + device_id: deviceId, + }), + ]); + }); + + it("should be able to connect with opponent and share secrets", async () => { + await Promise.all([ourLogin.negotiateProtocols(), opponentLogin.negotiateProtocols()]); + + // We don't have the new device side of this flow implemented at this time so mock it + // @ts-ignore + ourLogin.expectingNewDeviceId = "DEADB33F"; + + const ourProm = ourLogin.shareSecrets(); + + // Consume the ProtocolAccepted message which would normally be handled by step 4 which we do not have here + // @ts-ignore + await opponentLogin.receive(); + + mocked(client.getDevice).mockResolvedValue({} as IMyDevice); + + const secrets = { + cross_signing: { master_key: "mk", user_signing_key: "usk", self_signing_key: "ssk" }, + }; + client.getCrypto()!.exportSecretsBundle = jest.fn().mockResolvedValue(secrets); + + const payload = { + secrets: expect.objectContaining(secrets), + }; + await Promise.all([ + expect(ourProm).resolves.toEqual(payload), + expect(opponentLogin.shareSecrets()).resolves.toEqual(payload), + ]); + }); + + it("should abort if device doesn't come up by timeout", async () => { + jest.spyOn(global, "setTimeout").mockImplementation((fn) => { + (fn)(); + return -1; + }); + jest.spyOn(Date, "now").mockImplementation(() => { + return 12345678 + mocked(setTimeout).mock.calls.length * 1000; + }); + + await Promise.all([ourLogin.negotiateProtocols(), opponentLogin.negotiateProtocols()]); + + // We don't have the new device side of this flow implemented at this time so mock it + // @ts-ignore + ourLogin.expectingNewDeviceId = "DEADB33F"; + + // @ts-ignore + await opponentLogin.send({ + type: PayloadType.Success, + }); + mocked(client.getDevice).mockRejectedValue(new MatrixError({ errcode: "M_NOT_FOUND" }, 404)); + + const ourProm = ourLogin.shareSecrets(); + await expect(ourProm).rejects.toThrow("New device not found"); + }); + + it("should abort on unexpected errors", async () => { + await Promise.all([ourLogin.negotiateProtocols(), opponentLogin.negotiateProtocols()]); + + // We don't have the new device side of this flow implemented at this time so mock it + // @ts-ignore + ourLogin.expectingNewDeviceId = "DEADB33F"; + + // @ts-ignore + await opponentLogin.send({ + type: PayloadType.Success, + }); + mocked(client.getDevice).mockRejectedValue( + new MatrixError({ errcode: "M_UNKNOWN", error: "The message" }, 500), + ); + + await expect(ourLogin.shareSecrets()).rejects.toThrow("The message"); + }); + + it("should abort on declined login", async () => { + await Promise.all([ourLogin.negotiateProtocols(), opponentLogin.negotiateProtocols()]); + + await ourLogin.declineLoginOnExistingDevice(); + await expect(opponentLogin.shareSecrets()).rejects.toThrow( + new RendezvousError("Failed", MSC4108FailureReason.UserCancelled), + ); + }); + + it("should not send secrets if user cancels", async () => { + jest.spyOn(global, "setTimeout").mockImplementation((fn) => { + (fn)(); + return -1; + }); + + await Promise.all([ourLogin.negotiateProtocols(), opponentLogin.negotiateProtocols()]); + + // We don't have the new device side of this flow implemented at this time so mock it + // @ts-ignore + ourLogin.expectingNewDeviceId = "DEADB33F"; + + const ourProm = ourLogin.shareSecrets(); + const opponentProm = opponentLogin.shareSecrets(); + + // Consume the ProtocolAccepted message which would normally be handled by step 4 which we do not have here + // @ts-ignore + await opponentLogin.receive(); + + const deferred = defer(); + mocked(client.getDevice).mockReturnValue(deferred.promise); + + ourLogin.cancel(MSC4108FailureReason.UserCancelled).catch(() => {}); + deferred.resolve({} as IMyDevice); + + const secrets = { + cross_signing: { master_key: "mk", user_signing_key: "usk", self_signing_key: "ssk" }, + }; + client.getCrypto()!.exportSecretsBundle = jest.fn().mockResolvedValue(secrets); + + await Promise.all([ + expect(ourProm).rejects.toThrow("User cancelled"), + expect(opponentProm).rejects.toThrow("Unexpected message received"), + ]); + }); + }); +}); diff --git a/spec/test-utils/oidc.ts b/spec/test-utils/oidc.ts index 4f9a01c2ee2..8f2965c9a2a 100644 --- a/spec/test-utils/oidc.ts +++ b/spec/test-utils/oidc.ts @@ -38,7 +38,10 @@ export const makeDelegatedAuthConfig = (issuer = "https://auth.org/"): OidcClien * @param issuer used as the base for all other urls * @returns ValidatedIssuerMetadata */ -export const mockOpenIdConfiguration = (issuer = "https://auth.org/"): ValidatedIssuerMetadata => ({ +export const mockOpenIdConfiguration = ( + issuer = "https://auth.org/", + additionalGrantTypes: string[] = [], +): ValidatedIssuerMetadata => ({ issuer, revocation_endpoint: issuer + "revoke", token_endpoint: issuer + "token", @@ -47,6 +50,6 @@ export const mockOpenIdConfiguration = (issuer = "https://auth.org/"): Validated device_authorization_endpoint: issuer + "device", jwks_uri: issuer + "jwks", response_types_supported: ["code"], - grant_types_supported: ["authorization_code", "refresh_token"], + grant_types_supported: ["authorization_code", "refresh_token", ...additionalGrantTypes], code_challenge_methods_supported: ["S256"], }); diff --git a/spec/unit/rendezvous/MSC4108RendezvousSession.spec.ts b/spec/unit/rendezvous/MSC4108RendezvousSession.spec.ts new file mode 100644 index 00000000000..57afd3afced --- /dev/null +++ b/spec/unit/rendezvous/MSC4108RendezvousSession.spec.ts @@ -0,0 +1,341 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import fetchMock from "fetch-mock-jest"; + +import { ClientPrefix, IHttpOpts, MatrixClient, MatrixHttpApi } from "../../../src"; +import { ClientRendezvousFailureReason, MSC4108RendezvousSession } from "../../../src/rendezvous"; + +function makeMockClient(opts: { userId: string; deviceId: string; msc4108Enabled: boolean }): MatrixClient { + const client = { + doesServerSupportUnstableFeature(feature: string) { + return Promise.resolve(opts.msc4108Enabled && feature === "org.matrix.msc4108"); + }, + getUserId() { + return opts.userId; + }, + getDeviceId() { + return opts.deviceId; + }, + baseUrl: "https://example.com", + } as unknown as MatrixClient; + client.http = new MatrixHttpApi(client, { + baseUrl: client.baseUrl, + prefix: ClientPrefix.Unstable, + onlyData: true, + }); + return client; +} + +fetchMock.config.overwriteRoutes = true; + +describe("MSC4108RendezvousSession", () => { + beforeEach(() => { + fetchMock.reset(); + }); + + async function postAndCheckLocation(msc4108Enabled: boolean, fallbackRzServer: string, locationResponse: string) { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled }); + const transport = new MSC4108RendezvousSession({ client, fallbackRzServer }); + { + // initial POST + const expectedPostLocation = msc4108Enabled + ? `${client.baseUrl}/_matrix/client/unstable/org.matrix.msc4108/rendezvous` + : fallbackRzServer; + + fetchMock.postOnce(expectedPostLocation, { + status: 201, + body: { url: locationResponse }, + }); + await transport.send("data"); + } + + { + fetchMock.get(locationResponse, { + status: 200, + body: "data", + headers: { + "content-type": "text/plain", + "etag": "aaa", + }, + }); + await expect(transport.receive()).resolves.toEqual("data"); + } + } + + it("should use custom fetchFn if provided", async () => { + const sandbox = fetchMock.sandbox(); + const fetchFn = jest.fn().mockImplementation(sandbox); + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const transport = new MSC4108RendezvousSession({ + client, + fetchFn, + fallbackRzServer: "https://fallbackserver/rz", + }); + sandbox.postOnce("https://fallbackserver/rz", { + status: 201, + body: { + url: "https://fallbackserver/rz/123", + }, + }); + await transport.send("data"); + await sandbox.flush(true); + expect(fetchFn).toHaveBeenCalledWith("https://fallbackserver/rz", expect.anything()); + }); + + it("should throw an error when no server available", async function () { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const transport = new MSC4108RendezvousSession({ client }); + await expect(transport.send("data")).rejects.toThrow("Invalid rendezvous URI"); + }); + + it("POST to fallback server", async function () { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const transport = new MSC4108RendezvousSession({ + client, + fallbackRzServer: "https://fallbackserver/rz", + }); + fetchMock.postOnce("https://fallbackserver/rz", { + status: 201, + body: { url: "https://fallbackserver/rz/123" }, + }); + await fetchMock.flush(true); + await expect(transport.send("data")).resolves.toStrictEqual(undefined); + }); + + it("POST with no location", async function () { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const transport = new MSC4108RendezvousSession({ + client, + fallbackRzServer: "https://fallbackserver/rz", + }); + fetchMock.postOnce("https://fallbackserver/rz", { + status: 201, + }); + await Promise.all([expect(transport.send("data")).rejects.toThrow(), fetchMock.flush(true)]); + }); + + it("POST with absolute path response", async function () { + await postAndCheckLocation(false, "https://fallbackserver/rz", "https://fallbackserver/123"); + }); + + it("POST to built-in MSC3886 implementation", async function () { + await postAndCheckLocation( + true, + "https://fallbackserver/rz", + "https://example.com/_matrix/client/unstable/org.matrix.msc4108/rendezvous/123", + ); + }); + + it("POST with relative path response including parent", async function () { + await postAndCheckLocation(false, "https://fallbackserver/rz/abc", "https://fallbackserver/rz/xyz/123"); + }); + + // fetch-mock doesn't handle redirects properly, so we can't test this + it.skip("POST to follow 307 to other server", async function () { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const transport = new MSC4108RendezvousSession({ + client, + fallbackRzServer: "https://fallbackserver/rz", + }); + fetchMock.postOnce("https://fallbackserver/rz", { + status: 307, + redirectUrl: "https://redirected.fallbackserver/rz", + redirected: true, + }); + fetchMock.postOnce("https://redirected.fallbackserver/rz", { + status: 201, + body: { url: "https://redirected.fallbackserver/rz/123" }, + headers: { etag: "aaa" }, + }); + await fetchMock.flush(true); + await expect(transport.send("data")).resolves.toStrictEqual(undefined); + }); + + it("POST and GET", async function () { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const transport = new MSC4108RendezvousSession({ + client, + fallbackRzServer: "https://fallbackserver/rz", + }); + { + // initial POST + fetchMock.postOnce("https://fallbackserver/rz", { + status: 201, + body: { url: "https://fallbackserver/rz/123" }, + }); + await expect(transport.send("foo=baa")).resolves.toStrictEqual(undefined); + await fetchMock.flush(true); + expect(fetchMock).toHaveFetched("https://fallbackserver/rz", { + method: "POST", + headers: { "content-type": "text/plain" }, + functionMatcher: (_, opts): boolean => { + return opts.body === "foo=baa"; + }, + }); + } + { + // first GET without etag + fetchMock.getOnce("https://fallbackserver/rz/123", { + status: 200, + body: "foo=baa", + headers: { "content-type": "text/plain", "etag": "aaa" }, + }); + await expect(transport.receive()).resolves.toEqual("foo=baa"); + await fetchMock.flush(true); + } + { + // subsequent GET which should have etag from previous request + fetchMock.getOnce("https://fallbackserver/rz/123", { + status: 200, + body: "foo=baa", + headers: { "content-type": "text/plain", "etag": "bbb" }, + }); + await expect(transport.receive()).resolves.toEqual("foo=baa"); + await fetchMock.flush(true); + expect(fetchMock).toHaveFetched("https://fallbackserver/rz/123", { + method: "GET", + headers: { "if-none-match": "aaa" }, + }); + } + }); + + it("POST and PUTs", async function () { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const transport = new MSC4108RendezvousSession({ + client, + fallbackRzServer: "https://fallbackserver/rz", + }); + { + // initial POST + fetchMock.postOnce("https://fallbackserver/rz", { + status: 201, + body: { url: "https://fallbackserver/rz/123" }, + headers: { etag: "aaa" }, + }); + await transport.send("foo=baa"); + await fetchMock.flush(true); + expect(fetchMock).toHaveFetched("https://fallbackserver/rz", { + method: "POST", + headers: { "content-type": "text/plain" }, + functionMatcher: (_, opts): boolean => { + return opts.body === "foo=baa"; + }, + }); + } + { + // subsequent PUT which should have etag from previous request + fetchMock.putOnce("https://fallbackserver/rz/123", { status: 202, headers: { etag: "bbb" } }); + await transport.send("c=d"); + await fetchMock.flush(true); + expect(fetchMock).toHaveFetched("https://fallbackserver/rz/123", { + method: "PUT", + headers: { "if-match": "aaa" }, + }); + } + }); + + it("POST and DELETE", async function () { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const transport = new MSC4108RendezvousSession({ + client, + fallbackRzServer: "https://fallbackserver/rz", + }); + { + // Create + fetchMock.postOnce("https://fallbackserver/rz", { + status: 201, + body: { url: "https://fallbackserver/rz/123" }, + }); + await expect(transport.send("foo=baa")).resolves.toStrictEqual(undefined); + await fetchMock.flush(true); + expect(fetchMock).toHaveFetched("https://fallbackserver/rz", { + method: "POST", + headers: { "content-type": "text/plain" }, + functionMatcher: (_, opts): boolean => { + return opts.body === "foo=baa"; + }, + }); + } + { + // Cancel + fetchMock.deleteOnce("https://fallbackserver/rz/123", { status: 204 }); + await transport.cancel(ClientRendezvousFailureReason.UserDeclined); + await fetchMock.flush(true); + } + }); + + it("send after cancelled", async function () { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const transport = new MSC4108RendezvousSession({ + client, + fallbackRzServer: "https://fallbackserver/rz", + }); + await transport.cancel(ClientRendezvousFailureReason.UserDeclined); + await expect(transport.send("data")).resolves.toBeUndefined(); + }); + + it("receive before ready", async function () { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const transport = new MSC4108RendezvousSession({ + client, + fallbackRzServer: "https://fallbackserver/rz", + }); + await expect(transport.receive()).rejects.toThrow(); + }); + + it("404 failure callback", async function () { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const onFailure = jest.fn(); + const transport = new MSC4108RendezvousSession({ + client, + fallbackRzServer: "https://fallbackserver/rz", + onFailure, + }); + + fetchMock.postOnce("https://fallbackserver/rz", { status: 404 }); + await Promise.all([expect(transport.send("foo=baa")).resolves.toBeUndefined(), fetchMock.flush(true)]); + expect(onFailure).toHaveBeenCalledWith(ClientRendezvousFailureReason.Unknown); + }); + + it("404 failure callback mapped to expired", async function () { + const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc4108Enabled: false }); + const onFailure = jest.fn(); + const transport = new MSC4108RendezvousSession({ + client, + fallbackRzServer: "https://fallbackserver/rz", + onFailure, + }); + + { + // initial POST + fetchMock.postOnce("https://fallbackserver/rz", { + status: 201, + body: { url: "https://fallbackserver/rz/123" }, + headers: { expires: "Thu, 01 Jan 1970 00:00:00 GMT" }, + }); + + await transport.send("foo=baa"); + await fetchMock.flush(true); + } + { + // GET with 404 to simulate expiry + fetchMock.getOnce("https://fallbackserver/rz/123", { status: 404, body: "foo=baa" }); + await Promise.all([expect(transport.receive()).resolves.toBeUndefined(), fetchMock.flush(true)]); + expect(onFailure).toHaveBeenCalledWith(ClientRendezvousFailureReason.Expired); + } + }); +}); diff --git a/spec/unit/rendezvous/channels/MSC4108SecureChannel.spec.ts b/spec/unit/rendezvous/channels/MSC4108SecureChannel.spec.ts new file mode 100644 index 00000000000..6daae603491 --- /dev/null +++ b/spec/unit/rendezvous/channels/MSC4108SecureChannel.spec.ts @@ -0,0 +1,126 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { EstablishedEcies, QrCodeData, QrCodeMode, Ecies } from "@matrix-org/matrix-sdk-crypto-wasm"; +import { mocked } from "jest-mock"; + +import { MSC4108RendezvousSession, MSC4108SecureChannel, PayloadType } from "../../../../src/rendezvous"; + +describe("MSC4108SecureChannel", () => { + const baseUrl = "https://example.com"; + const url = "https://fallbackserver/rz/123"; + + it("should generate qr code data as expected", async () => { + const session = new MSC4108RendezvousSession({ + url, + }); + const channel = new MSC4108SecureChannel(session); + + const code = await channel.generateCode(QrCodeMode.Login); + expect(code).toHaveLength(71); + const text = new TextDecoder().decode(code); + expect(text.startsWith("MATRIX")).toBeTruthy(); + expect(text.endsWith(url)).toBeTruthy(); + }); + + it("should throw error if attempt to connect multiple times", async () => { + const mockSession = { + send: jest.fn(), + receive: jest.fn(), + url, + } as unknown as MSC4108RendezvousSession; + const channel = new MSC4108SecureChannel(mockSession); + + const qrCodeData = QrCodeData.from_bytes(await channel.generateCode(QrCodeMode.Reciprocate, baseUrl)); + const { initial_message: ciphertext } = new Ecies().establish_outbound_channel( + qrCodeData.public_key, + "MATRIX_QR_CODE_LOGIN_INITIATE", + ); + mocked(mockSession.receive).mockResolvedValue(ciphertext); + await channel.connect(); + await expect(channel.connect()).rejects.toThrow("Channel already connected"); + }); + + it("should throw error on invalid initiate response", async () => { + const mockSession = { + send: jest.fn(), + receive: jest.fn(), + url, + } as unknown as MSC4108RendezvousSession; + const channel = new MSC4108SecureChannel(mockSession); + + mocked(mockSession.receive).mockResolvedValue(""); + await expect(channel.connect()).rejects.toThrow("No response from other device"); + + const qrCodeData = QrCodeData.from_bytes(await channel.generateCode(QrCodeMode.Reciprocate, baseUrl)); + const { initial_message: ciphertext } = new Ecies().establish_outbound_channel( + qrCodeData.public_key, + "NOT_REAL_MATRIX_QR_CODE_LOGIN_INITIATE", + ); + + mocked(mockSession.receive).mockResolvedValue(ciphertext); + await expect(channel.connect()).rejects.toThrow("Invalid response from other device"); + }); + + describe("should be able to connect as a reciprocating device", () => { + let mockSession: MSC4108RendezvousSession; + let channel: MSC4108SecureChannel; + let opponentChannel: EstablishedEcies; + + beforeEach(async () => { + mockSession = { + send: jest.fn(), + receive: jest.fn(), + url, + } as unknown as MSC4108RendezvousSession; + channel = new MSC4108SecureChannel(mockSession); + + const qrCodeData = QrCodeData.from_bytes(await channel.generateCode(QrCodeMode.Reciprocate, baseUrl)); + const { channel: _opponentChannel, initial_message: ciphertext } = new Ecies().establish_outbound_channel( + qrCodeData.public_key, + "MATRIX_QR_CODE_LOGIN_INITIATE", + ); + opponentChannel = _opponentChannel; + + mocked(mockSession.receive).mockResolvedValue(ciphertext); + await channel.connect(); + expect(opponentChannel.decrypt(mocked(mockSession.send).mock.calls[0][0])).toBe("MATRIX_QR_CODE_LOGIN_OK"); + mocked(mockSession.send).mockReset(); + }); + + it("should be able to securely send encrypted payloads", async () => { + const payload = { + type: PayloadType.Secrets, + protocols: ["a", "b", "c"], + homeserver: "https://example.org", + }; + await channel.secureSend(payload); + expect(mockSession.send).toHaveBeenCalled(); + expect(opponentChannel.decrypt(mocked(mockSession.send).mock.calls[0][0])).toBe(JSON.stringify(payload)); + }); + + it("should be able to securely receive encrypted payloads", async () => { + const payload = { + type: PayloadType.Secrets, + protocols: ["a", "b", "c"], + homeserver: "https://example.org", + }; + const ciphertext = opponentChannel.encrypt(JSON.stringify(payload)); + mocked(mockSession.receive).mockResolvedValue(ciphertext); + await expect(channel.secureReceive()).resolves.toEqual(payload); + }); + }); +}); diff --git a/spec/unit/rendezvous/ecdhv2.spec.ts b/spec/unit/rendezvous/ecdhv2.spec.ts index caadfbf6e9c..1fd3f7cac18 100644 --- a/spec/unit/rendezvous/ecdhv2.spec.ts +++ b/spec/unit/rendezvous/ecdhv2.spec.ts @@ -15,7 +15,7 @@ limitations under the License. */ import "../../olm-loader"; -import { RendezvousFailureReason, RendezvousIntent } from "../../../src/rendezvous"; +import { LegacyRendezvousFailureReason as RendezvousFailureReason, RendezvousIntent } from "../../../src/rendezvous"; import { MSC3903ECDHPayload, MSC3903ECDHv2RendezvousChannel } from "../../../src/rendezvous/channels"; import { decodeBase64 } from "../../../src/base64"; import { DummyTransport } from "./DummyTransport"; diff --git a/spec/unit/rendezvous/rendezvous.spec.ts b/spec/unit/rendezvous/rendezvous.spec.ts index c7a31b8a1ff..f600639d829 100644 --- a/spec/unit/rendezvous/rendezvous.spec.ts +++ b/spec/unit/rendezvous/rendezvous.spec.ts @@ -17,7 +17,12 @@ limitations under the License. import MockHttpBackend from "matrix-mock-request"; import "../../olm-loader"; -import { MSC3906Rendezvous, RendezvousCode, RendezvousFailureReason, RendezvousIntent } from "../../../src/rendezvous"; +import { + MSC3906Rendezvous, + RendezvousCode, + LegacyRendezvousFailureReason as RendezvousFailureReason, + RendezvousIntent, +} from "../../../src/rendezvous"; import { ECDHv2RendezvousCode as ECDHRendezvousCode, MSC3903ECDHPayload, diff --git a/spec/unit/rendezvous/simpleHttpTransport.spec.ts b/spec/unit/rendezvous/simpleHttpTransport.spec.ts index 166a6350730..c736d4d115d 100644 --- a/spec/unit/rendezvous/simpleHttpTransport.spec.ts +++ b/spec/unit/rendezvous/simpleHttpTransport.spec.ts @@ -17,7 +17,7 @@ limitations under the License. import MockHttpBackend from "matrix-mock-request"; import type { MatrixClient } from "../../../src"; -import { RendezvousFailureReason } from "../../../src/rendezvous"; +import { LegacyRendezvousFailureReason as RendezvousFailureReason } from "../../../src/rendezvous"; import { MSC3886SimpleHttpRendezvousTransport } from "../../../src/rendezvous/transports"; function makeMockClient(opts: { userId: string; deviceId: string; msc3886Enabled: boolean }): MatrixClient { diff --git a/src/oidc/register.ts b/src/oidc/register.ts index 0c5f0556557..ec673e7975a 100644 --- a/src/oidc/register.ts +++ b/src/oidc/register.ts @@ -49,6 +49,8 @@ interface OidcRegistrationRequestBody { application_type: "web" | "native"; } +export const DEVICE_CODE_SCOPE = "urn:ietf:params:oauth:grant-type:device_code"; + /** * Attempts dynamic registration against the configured registration endpoint * @param delegatedAuthConfig - Auth config from {@link discoverAndValidateOIDCIssuerWellKnown} diff --git a/src/rendezvous/MSC3906Rendezvous.ts b/src/rendezvous/MSC3906Rendezvous.ts index 4e2d2eab3c8..f83aff26123 100644 --- a/src/rendezvous/MSC3906Rendezvous.ts +++ b/src/rendezvous/MSC3906Rendezvous.ts @@ -16,7 +16,12 @@ limitations under the License. import { UnstableValue } from "matrix-events-sdk"; -import { RendezvousChannel, RendezvousFailureListener, RendezvousFailureReason, RendezvousIntent } from "."; +import { + RendezvousChannel, + RendezvousFailureListener, + LegacyRendezvousFailureReason as RendezvousFailureReason, + RendezvousIntent, +} from "."; import { IGetLoginTokenCapability, MatrixClient, GET_LOGIN_TOKEN_CAPABILITY } from "../client"; import { buildFeatureSupportMap, Feature, ServerSupport } from "../feature"; import { logger } from "../logger"; diff --git a/src/rendezvous/MSC4108SignInWithQR.ts b/src/rendezvous/MSC4108SignInWithQR.ts new file mode 100644 index 00000000000..275d44bd8a4 --- /dev/null +++ b/src/rendezvous/MSC4108SignInWithQR.ts @@ -0,0 +1,439 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { QrCodeMode } from "@matrix-org/matrix-sdk-crypto-wasm"; + +import { ClientRendezvousFailureReason, MSC4108FailureReason, RendezvousError, RendezvousFailureListener } from "."; +import { MatrixClient } from "../client"; +import { logger } from "../logger"; +import { MSC4108SecureChannel } from "./channels/MSC4108SecureChannel"; +import { MatrixError } from "../http-api"; +import { sleep } from "../utils"; +import { DEVICE_CODE_SCOPE, discoverAndValidateOIDCIssuerWellKnown, OidcClientConfig } from "../oidc"; +import { CryptoApi } from "../crypto-api"; + +/** + * Enum representing the payload types transmissible over [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108) + * secure channels. + * @experimental Note that this is UNSTABLE and may have breaking changes without notice. + */ +export enum PayloadType { + Protocols = "m.login.protocols", + Protocol = "m.login.protocol", + Failure = "m.login.failure", + Success = "m.login.success", + Secrets = "m.login.secrets", + ProtocolAccepted = "m.login.protocol_accepted", + Declined = "m.login.declined", +} + +/** + * Type representing the base payload format for [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108) + * messages sent over the secure channel. + * @experimental Note that this is UNSTABLE and may have breaking changes without notice. + */ +export interface MSC4108Payload { + type: PayloadType; +} + +interface ProtocolsPayload extends MSC4108Payload { + type: PayloadType.Protocols; + protocols: string[]; + homeserver: string; +} + +interface ProtocolPayload extends MSC4108Payload { + type: PayloadType.Protocol; + protocol: Exclude; + device_id: string; +} + +interface DeviceAuthorizationGrantProtocolPayload extends ProtocolPayload { + protocol: "device_authorization_grant"; + device_authorization_grant: { + verification_uri: string; + verification_uri_complete?: string; + }; +} + +function isDeviceAuthorizationGrantProtocolPayload( + payload: ProtocolPayload, +): payload is DeviceAuthorizationGrantProtocolPayload { + return payload.protocol === "device_authorization_grant"; +} + +interface FailurePayload extends MSC4108Payload { + type: PayloadType.Failure; + reason: MSC4108FailureReason; + homeserver?: string; +} + +interface DeclinedPayload extends MSC4108Payload { + type: PayloadType.Declined; +} + +interface SuccessPayload extends MSC4108Payload { + type: PayloadType.Success; +} + +interface AcceptedPayload extends MSC4108Payload { + type: PayloadType.ProtocolAccepted; +} + +interface SecretsPayload extends MSC4108Payload, Awaited>> { + type: PayloadType.Secrets; +} + +/** + * Prototype of the unstable [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108) + * sign in with QR + OIDC flow. + * @experimental Note that this is UNSTABLE and may have breaking changes without notice. + */ +export class MSC4108SignInWithQR { + private readonly ourIntent: QrCodeMode; + private _code?: Uint8Array; + private expectingNewDeviceId?: string; + + /** + * Returns the check code for the secure channel or undefined if not generated yet. + */ + public get checkCode(): string | undefined { + return this.channel?.getCheckCode(); + } + + /** + * @param channel - The secure channel used for communication + * @param client - The Matrix client in used on the device already logged in + * @param didScanCode - Whether this side of the channel scanned the QR code from the other party + * @param onFailure - Callback for when the rendezvous fails + */ + public constructor( + private readonly channel: MSC4108SecureChannel, + private readonly didScanCode: boolean, + private readonly client?: MatrixClient, + public onFailure?: RendezvousFailureListener, + ) { + this.ourIntent = client ? QrCodeMode.Reciprocate : QrCodeMode.Login; + } + + /** + * Returns the code representing the rendezvous suitable for rendering in a QR code or undefined if not generated yet. + */ + public get code(): Uint8Array | undefined { + return this._code; + } + + /** + * Generate the code including doing partial set up of the channel where required. + */ + public async generateCode(): Promise { + if (this._code) { + return; + } + + if (this.ourIntent === QrCodeMode.Reciprocate && this.client) { + this._code = await this.channel.generateCode(this.ourIntent, this.client.getHomeserverUrl()); + } else if (this.ourIntent === QrCodeMode.Login) { + this._code = await this.channel.generateCode(this.ourIntent); + } + } + + /** + * Returns true if the device is the already logged in device reciprocating a new login on the other side of the channel. + */ + public get isExistingDevice(): boolean { + return this.ourIntent === QrCodeMode.Reciprocate; + } + + /** + * Returns true if the device is the new device logging in being reciprocated by the device on the other side of the channel. + */ + public get isNewDevice(): boolean { + return !this.isExistingDevice; + } + + /** + * The first step in the OIDC QR login process. + * To be called after the QR code has been rendered or scanned. + * The scanning device has to discover the homeserver details, if they scanned the code then they already have it. + * If the new device is the one rendering the QR code then it has to wait be sent the homeserver details via the rendezvous channel. + */ + public async negotiateProtocols(): Promise<{ homeserverBaseUrl?: string }> { + logger.info(`negotiateProtocols(isNewDevice=${this.isNewDevice} didScanCode=${this.didScanCode})`); + await this.channel.connect(); + + if (this.didScanCode) { + // Secure Channel step 6 completed, we trust the channel + + if (this.isNewDevice) { + // MSC4108-Flow: ExistingScanned - take homeserver from QR code which should already be set + } else { + // MSC4108-Flow: NewScanned -send protocols message + let oidcClientConfig: OidcClientConfig | undefined; + try { + const { issuer } = await this.client!.getAuthIssuer(); + oidcClientConfig = await discoverAndValidateOIDCIssuerWellKnown(issuer); + } catch (e) { + logger.error("Failed to discover OIDC metadata", e); + } + + if (oidcClientConfig?.metadata.grant_types_supported.includes(DEVICE_CODE_SCOPE)) { + await this.send({ + type: PayloadType.Protocols, + protocols: ["device_authorization_grant"], + homeserver: this.client?.getHomeserverUrl() ?? "", + }); + } else { + await this.send({ + type: PayloadType.Failure, + reason: MSC4108FailureReason.UnsupportedProtocol, + }); + throw new RendezvousError( + "Device code grant unsupported", + MSC4108FailureReason.UnsupportedProtocol, + ); + } + } + } else if (this.isNewDevice) { + // MSC4108-Flow: ExistingScanned - wait for protocols message + logger.info("Waiting for protocols message"); + const payload = await this.receive(); + + if (payload?.type === PayloadType.Failure) { + throw new RendezvousError("Failed", payload.reason); + } + + if (payload?.type !== PayloadType.Protocols) { + await this.send({ + type: PayloadType.Failure, + reason: MSC4108FailureReason.UnexpectedMessageReceived, + }); + throw new RendezvousError( + "Unexpected message received", + MSC4108FailureReason.UnexpectedMessageReceived, + ); + } + + return { homeserverBaseUrl: payload.homeserver }; + } else { + // MSC4108-Flow: NewScanned - nothing to do + } + return {}; + } + + /** + * The second & third step in the OIDC QR login process. + * To be called after `negotiateProtocols` for the existing device. + * To be called after OIDC negotiation for the new device. (Currently unsupported) + */ + public async deviceAuthorizationGrant(): Promise<{ + verificationUri?: string; + userCode?: string; + }> { + if (this.isNewDevice) { + throw new Error("New device flows around OIDC are not yet implemented"); + } else { + // The user needs to do step 7 for the out-of-band confirmation + // but, first we receive the protocol chosen by the other device so that + // the confirmation_uri is ready to go + logger.info("Waiting for protocol message"); + const payload = await this.receive(); + + if (payload?.type === PayloadType.Failure) { + throw new RendezvousError("Failed", payload.reason); + } + + if (payload?.type !== PayloadType.Protocol) { + await this.send({ + type: PayloadType.Failure, + reason: MSC4108FailureReason.UnexpectedMessageReceived, + }); + throw new RendezvousError( + "Unexpected message received", + MSC4108FailureReason.UnexpectedMessageReceived, + ); + } + + if (isDeviceAuthorizationGrantProtocolPayload(payload)) { + const { device_authorization_grant: dag, device_id: expectingNewDeviceId } = payload; + const { verification_uri: verificationUri, verification_uri_complete: verificationUriComplete } = dag; + + let deviceAlreadyExists = true; + try { + await this.client?.getDevice(expectingNewDeviceId); + } catch (err: MatrixError | unknown) { + if (err instanceof MatrixError && err.httpStatus === 404) { + deviceAlreadyExists = false; + } + } + + if (deviceAlreadyExists) { + await this.send({ + type: PayloadType.Failure, + reason: MSC4108FailureReason.DeviceAlreadyExists, + }); + throw new RendezvousError( + "Specified device ID already exists", + MSC4108FailureReason.DeviceAlreadyExists, + ); + } + + this.expectingNewDeviceId = expectingNewDeviceId; + + return { verificationUri: verificationUriComplete ?? verificationUri }; + } + + await this.send({ + type: PayloadType.Failure, + reason: MSC4108FailureReason.UnsupportedProtocol, + }); + throw new RendezvousError( + "Received a request for an unsupported protocol", + MSC4108FailureReason.UnsupportedProtocol, + ); + } + } + + /** + * The fifth (and final) step in the OIDC QR login process. + * To be called after the new device has completed authentication. + */ + public async shareSecrets(): Promise<{ secrets?: Omit }> { + if (this.isNewDevice) { + await this.send({ + type: PayloadType.Success, + }); + // then wait for secrets + logger.info("Waiting for secrets message"); + const payload = await this.receive(); + if (payload?.type === PayloadType.Failure) { + throw new RendezvousError("Failed", payload.reason); + } + + if (payload?.type !== PayloadType.Secrets) { + await this.send({ + type: PayloadType.Failure, + reason: MSC4108FailureReason.UnexpectedMessageReceived, + }); + throw new RendezvousError( + "Unexpected message received", + MSC4108FailureReason.UnexpectedMessageReceived, + ); + } + return { secrets: payload }; + // then done? + } else { + if (!this.expectingNewDeviceId) { + throw new Error("No new device ID expected"); + } + await this.send({ + type: PayloadType.ProtocolAccepted, + }); + + logger.info("Waiting for outcome message"); + const payload = await this.receive(); + + if (payload?.type === PayloadType.Failure) { + throw new RendezvousError("Failed", payload.reason); + } + + if (payload?.type === PayloadType.Declined) { + throw new RendezvousError("User declined", ClientRendezvousFailureReason.UserDeclined); + } + + if (payload?.type !== PayloadType.Success) { + await this.send({ + type: PayloadType.Failure, + reason: MSC4108FailureReason.UnexpectedMessageReceived, + }); + throw new RendezvousError("Unexpected message", MSC4108FailureReason.UnexpectedMessageReceived); + } + + const timeout = Date.now() + 10000; // wait up to 10 seconds + do { + // is the device visible via the Homeserver? + try { + const device = await this.client?.getDevice(this.expectingNewDeviceId); + + if (device) { + // if so, return the secrets + const secretsBundle = await this.client!.getCrypto()!.exportSecretsBundle!(); + if (this.channel.cancelled) { + throw new RendezvousError("User cancelled", MSC4108FailureReason.UserCancelled); + } + // send secrets + await this.send({ + type: PayloadType.Secrets, + ...secretsBundle, + }); + return { secrets: secretsBundle }; + // let the other side close the rendezvous session + } + } catch (err: MatrixError | unknown) { + if (err instanceof MatrixError && err.httpStatus === 404) { + // not found, so keep waiting until timeout + } else { + throw err; + } + } + await sleep(1000); + } while (Date.now() < timeout); + + await this.send({ + type: PayloadType.Failure, + reason: MSC4108FailureReason.DeviceNotFound, + }); + throw new RendezvousError("New device not found", MSC4108FailureReason.DeviceNotFound); + } + } + + private async receive(): Promise { + return (await this.channel.secureReceive()) as T | undefined; + } + + private async send(payload: T): Promise { + await this.channel.secureSend(payload); + } + + /** + * Decline the login on the existing device. + */ + public async declineLoginOnExistingDevice(): Promise { + if (!this.isExistingDevice) { + throw new Error("Can only decline login on existing device"); + } + await this.send({ + type: PayloadType.Failure, + reason: MSC4108FailureReason.UserCancelled, + }); + } + + /** + * Cancels the rendezvous session. + * @param reason the reason for the cancellation + */ + public async cancel(reason: MSC4108FailureReason | ClientRendezvousFailureReason): Promise { + this.onFailure?.(reason); + await this.channel.cancel(reason); + } + + /** + * Closes the rendezvous session. + */ + public async close(): Promise { + await this.channel.close(); + } +} diff --git a/src/rendezvous/RendezvousFailureReason.ts b/src/rendezvous/RendezvousFailureReason.ts index 27350d87912..7a0116ca0e1 100644 --- a/src/rendezvous/RendezvousFailureReason.ts +++ b/src/rendezvous/RendezvousFailureReason.ts @@ -14,23 +14,49 @@ See the License for the specific language governing permissions and limitations under the License. */ -export type RendezvousFailureListener = (reason: LegacyRendezvousFailureReason) => void; +export type RendezvousFailureListener = (reason: RendezvousFailureReason) => void; + +export type RendezvousFailureReason = + | LegacyRendezvousFailureReason + | MSC4108FailureReason + | ClientRendezvousFailureReason; export enum LegacyRendezvousFailureReason { UserDeclined = "user_declined", - OtherDeviceNotSignedIn = "other_device_not_signed_in", - OtherDeviceAlreadySignedIn = "other_device_already_signed_in", Unknown = "unknown", Expired = "expired", UserCancelled = "user_cancelled", - InvalidCode = "invalid_code", UnsupportedAlgorithm = "unsupported_algorithm", - DataMismatch = "data_mismatch", - UnsupportedTransport = "unsupported_transport", + UnsupportedProtocol = "unsupported_protocol", HomeserverLacksSupport = "homeserver_lacks_support", } -/** - * @deprecated legacy re-export - */ -export { LegacyRendezvousFailureReason as RendezvousFailureReason }; +export enum MSC4108FailureReason { + AuthorizationExpired = "authorization_expired", + DeviceAlreadyExists = "device_already_exists", + DeviceNotFound = "device_not_found", + UnexpectedMessageReceived = "unexpected_message_received", + UnsupportedProtocol = "unsupported_protocol", + UserCancelled = "user_cancelled", +} + +export enum ClientRendezvousFailureReason { + /** The sign in request has expired */ + Expired = "expired", + /** The homeserver is lacking support for the required features */ + HomeserverLacksSupport = "homeserver_lacks_support", + /** The secure channel verification failed meaning that it might be compromised */ + InsecureChannelDetected = "insecure_channel_detected", + /** An invalid/incompatible QR code was scanned */ + InvalidCode = "invalid_code", + /** The other device is not signed in */ + OtherDeviceNotSignedIn = "other_device_not_signed_in", + /** The other device is already signed in */ + OtherDeviceAlreadySignedIn = "other_device_already_signed_in", + /** Other */ + Unknown = "unknown", + /** The user declined the sign in request */ + UserDeclined = "user_declined", + /** The rendezvous request is missing an ETag header */ + ETagMissing = "etag_missing", +} diff --git a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts b/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts index e7998dc141c..86a9fd747d7 100644 --- a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts +++ b/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts @@ -23,7 +23,7 @@ import { RendezvousChannel, RendezvousTransportDetails, RendezvousTransport, - RendezvousFailureReason, + LegacyRendezvousFailureReason as RendezvousFailureReason, } from ".."; import { encodeUnpaddedBase64, decodeBase64 } from "../../base64"; import { crypto, subtleCrypto, TextEncoder } from "../../crypto/crypto"; diff --git a/src/rendezvous/channels/MSC4108SecureChannel.ts b/src/rendezvous/channels/MSC4108SecureChannel.ts new file mode 100644 index 00000000000..8db12ebd2cd --- /dev/null +++ b/src/rendezvous/channels/MSC4108SecureChannel.ts @@ -0,0 +1,270 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { + Curve25519PublicKey, + Ecies, + EstablishedEcies, + QrCodeData, + QrCodeMode, +} from "@matrix-org/matrix-sdk-crypto-wasm"; + +import { + ClientRendezvousFailureReason, + MSC4108FailureReason, + MSC4108Payload, + RendezvousError, + RendezvousFailureListener, +} from ".."; +import { MSC4108RendezvousSession } from "../transports/MSC4108RendezvousSession"; +import { logger } from "../../logger"; + +/** + * Prototype of the unstable [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108) + * secure rendezvous session protocol. + * @experimental Note that this is UNSTABLE and may have breaking changes without notice. + * Imports @matrix-org/matrix-sdk-crypto-wasm so should be async-imported to avoid bundling the WASM into the main bundle. + */ +export class MSC4108SecureChannel { + private readonly secureChannel: Ecies; + private establishedChannel?: EstablishedEcies; + private connected = false; + + public constructor( + private rendezvousSession: MSC4108RendezvousSession, + private theirPublicKey?: Curve25519PublicKey, + public onFailure?: RendezvousFailureListener, + ) { + this.secureChannel = new Ecies(); + } + + /** + * Generate a QR code for the current session. + * @param mode the mode to generate the QR code in, either `Login` or `Reciprocate`. + * @param homeserverBaseUrl the base URL of the homeserver to connect to, required for `Reciprocate` mode. + */ + public async generateCode(mode: QrCodeMode.Login): Promise; + public async generateCode(mode: QrCodeMode.Reciprocate, homeserverBaseUrl: string): Promise; + public async generateCode(mode: QrCodeMode, homeserverBaseUrl?: string): Promise { + const { url } = this.rendezvousSession; + + if (!url) { + throw new Error("No rendezvous session URL"); + } + + return new QrCodeData( + this.secureChannel.public_key(), + url, + mode === QrCodeMode.Reciprocate ? homeserverBaseUrl : undefined, + ).to_bytes(); + } + + /** + * Returns the check code for the secure channel or undefined if not generated yet. + */ + public getCheckCode(): string | undefined { + const x = this.establishedChannel?.check_code(); + + if (!x) { + return undefined; + } + return Array.from(x.as_bytes()) + .map((b) => `${b % 10}`) + .join(""); + } + + /** + * Connects and establishes a secure channel with the other device. + */ + public async connect(): Promise { + if (this.connected) { + throw new Error("Channel already connected"); + } + + if (this.theirPublicKey) { + // We are the scanning device + const result = this.secureChannel.establish_outbound_channel( + this.theirPublicKey, + "MATRIX_QR_CODE_LOGIN_INITIATE", + ); + this.establishedChannel = result.channel; + + /* + Secure Channel step 4. Device S sends the initial message + + Nonce := 0 + SH := ECDH(Ss, Gp) + EncKey := HKDF_SHA256(SH, "MATRIX_QR_CODE_LOGIN|" || Gp || "|" || Sp, 0, 32) + TaggedCiphertext := ChaCha20Poly1305_Encrypt(EncKey, Nonce, "MATRIX_QR_CODE_LOGIN_INITIATE") + Nonce := Nonce + 2 + LoginInitiateMessage := UnpaddedBase64(TaggedCiphertext) || "|" || UnpaddedBase64(Sp) + */ + { + logger.info("Sending LoginInitiateMessage"); + await this.rendezvousSession.send(result.initial_message); + } + + /* + Secure Channel step 6. Verification by Device S + + Nonce_G := 1 + (TaggedCiphertext, Sp) := Unpack(Message) + Plaintext := ChaCha20Poly1305_Decrypt(EncKey, Nonce_G, TaggedCiphertext) + Nonce_G := Nonce_G + 2 + + unless Plaintext == "MATRIX_QR_CODE_LOGIN_OK": + FAIL + */ + { + logger.info("Waiting for LoginOkMessage"); + const ciphertext = await this.rendezvousSession.receive(); + + if (!ciphertext) { + throw new RendezvousError( + "No response from other device", + MSC4108FailureReason.UnexpectedMessageReceived, + ); + } + const candidateLoginOkMessage = await this.decrypt(ciphertext); + + if (candidateLoginOkMessage !== "MATRIX_QR_CODE_LOGIN_OK") { + throw new RendezvousError( + "Invalid response from other device", + ClientRendezvousFailureReason.InsecureChannelDetected, + ); + } + + // Step 6 is now complete. We trust the channel + } + } else { + /* + Secure Channel step 5. Device G confirms + + Nonce_S := 0 + (TaggedCiphertext, Sp) := Unpack(LoginInitiateMessage) + SH := ECDH(Gs, Sp) + EncKey := HKDF_SHA256(SH, "MATRIX_QR_CODE_LOGIN|" || Gp || "|" || Sp, 0, 32) + Plaintext := ChaCha20Poly1305_Decrypt(EncKey, Nonce_S, TaggedCiphertext) + Nonce_S := Nonce_S + 2 + */ + // wait for the other side to send us their public key + logger.info("Waiting for LoginInitiateMessage"); + const loginInitiateMessage = await this.rendezvousSession.receive(); + if (!loginInitiateMessage) { + throw new Error("No response from other device"); + } + + const { channel, message: candidateLoginInitiateMessage } = + this.secureChannel.establish_inbound_channel(loginInitiateMessage); + this.establishedChannel = channel; + + if (candidateLoginInitiateMessage !== "MATRIX_QR_CODE_LOGIN_INITIATE") { + throw new RendezvousError( + "Invalid response from other device", + ClientRendezvousFailureReason.InsecureChannelDetected, + ); + } + logger.info("LoginInitiateMessage received"); + + logger.info("Sending LoginOkMessage"); + const loginOkMessage = await this.encrypt("MATRIX_QR_CODE_LOGIN_OK"); + await this.rendezvousSession.send(loginOkMessage); + + // Step 5 is complete. We don't yet trust the channel + + // next step will be for the user to confirm the check code on the other device + } + + this.connected = true; + } + + private async decrypt(ciphertext: string): Promise { + if (!this.establishedChannel) { + throw new Error("Channel closed"); + } + + return this.establishedChannel.decrypt(ciphertext); + } + + private async encrypt(plaintext: string): Promise { + if (!this.establishedChannel) { + throw new Error("Channel closed"); + } + + return this.establishedChannel.encrypt(plaintext); + } + + /** + * Sends a payload securely to the other device. + * @param payload the payload to encrypt and send + */ + public async secureSend(payload: T): Promise { + if (!this.connected) { + throw new Error("Channel closed"); + } + + const stringifiedPayload = JSON.stringify(payload); + logger.debug(`=> {"type": ${JSON.stringify(payload.type)}, ...}`); + + await this.rendezvousSession.send(await this.encrypt(stringifiedPayload)); + } + + /** + * Receives an encrypted payload from the other device and decrypts it. + */ + public async secureReceive(): Promise | undefined> { + if (!this.establishedChannel) { + throw new Error("Channel closed"); + } + + const ciphertext = await this.rendezvousSession.receive(); + if (!ciphertext) { + return undefined; + } + const plaintext = await this.decrypt(ciphertext); + const json = JSON.parse(plaintext); + + logger.debug(`<= {"type": ${JSON.stringify(json.type)}, ...}`); + return json as Partial | undefined; + } + + /** + * Closes the secure channel. + */ + public async close(): Promise { + await this.rendezvousSession.close(); + } + + /** + * Cancels the secure channel. + * @param reason the reason for the cancellation + */ + public async cancel(reason: MSC4108FailureReason | ClientRendezvousFailureReason): Promise { + try { + await this.rendezvousSession.cancel(reason); + this.onFailure?.(reason); + } finally { + await this.close(); + } + } + + /** + * Returns whether the rendezvous session has been cancelled. + */ + public get cancelled(): boolean { + return this.rendezvousSession.cancelled; + } +} diff --git a/src/rendezvous/channels/index.ts b/src/rendezvous/channels/index.ts index f157bbeaef1..793105a5153 100644 --- a/src/rendezvous/channels/index.ts +++ b/src/rendezvous/channels/index.ts @@ -14,4 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ +/** + * @deprecated in favour of MSC4108-based implementation + */ export * from "./MSC3903ECDHv2RendezvousChannel"; +export * from "./MSC4108SecureChannel"; diff --git a/src/rendezvous/index.ts b/src/rendezvous/index.ts index 379b13351b8..1b887d9c3d9 100644 --- a/src/rendezvous/index.ts +++ b/src/rendezvous/index.ts @@ -14,10 +14,16 @@ See the License for the specific language governing permissions and limitations under the License. */ +/** + * @deprecated in favour of MSC4108-based implementation + */ export * from "./MSC3906Rendezvous"; +export * from "./MSC4108SignInWithQR"; export * from "./RendezvousChannel"; export * from "./RendezvousCode"; export * from "./RendezvousError"; export * from "./RendezvousFailureReason"; export * from "./RendezvousIntent"; export * from "./RendezvousTransport"; +export * from "./transports"; +export * from "./channels"; diff --git a/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts b/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts index f23a5f47cd5..01575ed709a 100644 --- a/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts +++ b/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts @@ -20,7 +20,7 @@ import { logger } from "../../logger"; import { sleep } from "../../utils"; import { RendezvousFailureListener, - RendezvousFailureReason, + LegacyRendezvousFailureReason as RendezvousFailureReason, RendezvousTransport, RendezvousTransportDetails, } from ".."; diff --git a/src/rendezvous/transports/MSC4108RendezvousSession.ts b/src/rendezvous/transports/MSC4108RendezvousSession.ts new file mode 100644 index 00000000000..8b18461ed89 --- /dev/null +++ b/src/rendezvous/transports/MSC4108RendezvousSession.ts @@ -0,0 +1,270 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { logger } from "../../logger"; +import { sleep } from "../../utils"; +import { ClientRendezvousFailureReason, MSC4108FailureReason, RendezvousFailureListener } from ".."; +import { MatrixClient, Method } from "../../matrix"; +import { ClientPrefix } from "../../http-api"; + +/** + * Prototype of the unstable [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108) + * insecure rendezvous session protocol. + * @experimental Note that this is UNSTABLE and may have breaking changes without notice. + */ +export class MSC4108RendezvousSession { + public url?: string; + private readonly client?: MatrixClient; + private readonly fallbackRzServer?: string; + private readonly fetchFn?: typeof global.fetch; + private readonly onFailure?: RendezvousFailureListener; + private etag?: string; + private expiresAt?: Date; + private expiresTimer?: ReturnType; + private _cancelled = false; + private _ready = false; + + public constructor({ + onFailure, + url, + fetchFn, + }: { + fetchFn?: typeof global.fetch; + onFailure?: RendezvousFailureListener; + url: string; + }); + public constructor({ + onFailure, + client, + fallbackRzServer, + fetchFn, + }: { + fetchFn?: typeof global.fetch; + onFailure?: RendezvousFailureListener; + client?: MatrixClient; + fallbackRzServer?: string; + }); + public constructor({ + fetchFn, + onFailure, + url, + client, + fallbackRzServer, + }: { + fetchFn?: typeof global.fetch; + onFailure?: RendezvousFailureListener; + url?: string; + client?: MatrixClient; + fallbackRzServer?: string; + }) { + this.fetchFn = fetchFn; + this.onFailure = onFailure; + this.client = client; + this.fallbackRzServer = fallbackRzServer; + this.url = url; + } + + /** + * Returns whether the channel is ready to be used. + */ + public get ready(): boolean { + return this._ready; + } + + /** + * Returns whether the channel has been cancelled. + */ + public get cancelled(): boolean { + return this._cancelled; + } + + private fetch(resource: URL | string, options?: RequestInit): ReturnType { + if (this.fetchFn) { + return this.fetchFn(resource, options); + } + return global.fetch(resource, options); + } + + private async getPostEndpoint(): Promise { + if (this.client) { + try { + if (await this.client.doesServerSupportUnstableFeature("org.matrix.msc4108")) { + return this.client.http + .getUrl("/org.matrix.msc4108/rendezvous", undefined, ClientPrefix.Unstable) + .toString(); + } + } catch (err) { + logger.warn("Failed to get unstable features", err); + } + } + + return this.fallbackRzServer; + } + + /** + * Sends data via the rendezvous channel. + * @param data the payload to send + */ + public async send(data: string): Promise { + if (this._cancelled) { + return; + } + const method = this.url ? Method.Put : Method.Post; + const uri = this.url ?? (await this.getPostEndpoint()); + + if (!uri) { + throw new Error("Invalid rendezvous URI"); + } + + const headers: Record = { "content-type": "text/plain" }; + + // if we didn't create the rendezvous channel, we need to fetch the first etag if needed + if (!this.etag && this.url) { + await this.receive(); + } + + if (this.etag) { + headers["if-match"] = this.etag; + } + + logger.info(`=> ${method} ${uri} with ${data} if-match: ${this.etag}`); + + const res = await this.fetch(uri, { method, headers, body: data, redirect: "follow" }); + if (res.status === 404) { + return this.cancel(ClientRendezvousFailureReason.Unknown); + } + this.etag = res.headers.get("etag") ?? undefined; + + logger.info(`Received etag: ${this.etag}`); + + if (method === Method.Post) { + const expires = res.headers.get("expires"); + if (expires) { + if (this.expiresTimer) { + clearTimeout(this.expiresTimer); + this.expiresTimer = undefined; + } + this.expiresAt = new Date(expires); + this.expiresTimer = setTimeout(() => { + this.expiresTimer = undefined; + this.cancel(ClientRendezvousFailureReason.Expired); + }, this.expiresAt.getTime() - Date.now()); + } + // MSC4108: we expect a JSON response with a rendezvous URL + const json = await res.json(); + if (typeof json.url !== "string") { + throw new Error("No rendezvous URL given"); + } + this.url = json.url; + this._ready = true; + } + } + + /** + * Receives data from the rendezvous channel. + * @return the returned promise won't resolve until new data is acquired or the channel is closed either by the server or the other party. + */ + public async receive(): Promise { + if (!this.url) { + throw new Error("Rendezvous not set up"); + } + // eslint-disable-next-line no-constant-condition + while (true) { + if (this._cancelled) { + return undefined; + } + + const headers: Record = {}; + if (this.etag) { + headers["if-none-match"] = this.etag; + } + + logger.info(`=> GET ${this.url} if-none-match: ${this.etag}`); + const poll = await this.fetch(this.url, { method: Method.Get, headers }); + + if (poll.status === 404) { + await this.cancel(ClientRendezvousFailureReason.Unknown); + return undefined; + } + + // rely on server expiring the channel rather than checking ourselves + + const etag = poll.headers.get("etag") ?? undefined; + if (poll.headers.get("content-type") !== "text/plain") { + this.etag = etag; + } else if (poll.status === 200) { + if (!etag) { + // Some browsers & extensions block the ETag header for anti-tracking purposes + // We try and detect this so the client can give the user a somewhat helpful message + await this.cancel(ClientRendezvousFailureReason.ETagMissing); + return undefined; + } + + this.etag = etag; + const text = await poll.text(); + logger.info(`Received: ${text} with etag ${this.etag}`); + return text; + } + await sleep(1000); + } + } + + /** + * Cancels the rendezvous channel. + * If the reason is user_declined or user_cancelled then the channel will also be closed. + * @param reason the reason to cancel with + */ + public async cancel(reason: MSC4108FailureReason | ClientRendezvousFailureReason): Promise { + if (this._cancelled) return; + if (this.expiresTimer) { + clearTimeout(this.expiresTimer); + this.expiresTimer = undefined; + } + + if ( + reason === ClientRendezvousFailureReason.Unknown && + this.expiresAt && + this.expiresAt.getTime() < Date.now() + ) { + reason = ClientRendezvousFailureReason.Expired; + } + + this._cancelled = true; + this._ready = false; + this.onFailure?.(reason); + + if (reason === ClientRendezvousFailureReason.UserDeclined || reason === MSC4108FailureReason.UserCancelled) { + await this.close(); + } + } + + /** + * Closes the rendezvous channel. + */ + public async close(): Promise { + if (this.expiresTimer) { + clearTimeout(this.expiresTimer); + this.expiresTimer = undefined; + } + + if (!this.url) return; + try { + await this.fetch(this.url, { method: Method.Delete }); + } catch (e) { + logger.warn(e); + } + } +} diff --git a/src/rendezvous/transports/index.ts b/src/rendezvous/transports/index.ts index 6d8d64245e4..09349dd25e1 100644 --- a/src/rendezvous/transports/index.ts +++ b/src/rendezvous/transports/index.ts @@ -14,4 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ +/** + * @deprecated in favour of MSC4108-based implementation + */ export * from "./MSC3886SimpleHttpRendezvousTransport"; +export * from "./MSC4108RendezvousSession"; From 9fc557fc6bebba6052a1c7bb27fcb372ffa81037 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 6 Jun 2024 12:11:16 +0100 Subject: [PATCH 254/595] Fix typo Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/rust-crypto/rust-crypto.spec.ts | 4 ++-- src/rust-crypto/rust-crypto.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index a5a6c165434..966f25a5af5 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -1531,7 +1531,7 @@ describe("RustCrypto", () => { }); it("should throw an error if there is nothing to export", async () => { - await expect(rustCrypto.exportsSecretsBundle()).rejects.toThrow( + await expect(rustCrypto.exportSecretsBundle()).rejects.toThrow( "The store doesn't contain any cross-signing keys", ); }); @@ -1550,7 +1550,7 @@ describe("RustCrypto", () => { }, }; await rustCrypto.importSecretsBundle(bundle); - await expect(rustCrypto.exportsSecretsBundle()).resolves.toEqual(expect.objectContaining(bundle)); + await expect(rustCrypto.exportSecretsBundle()).resolves.toEqual(expect.objectContaining(bundle)); }); }); }); diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 61fc30cd915..a0a7f8323d4 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -1258,7 +1258,7 @@ export class RustCrypto extends TypedEventEmitter> { + public async exportSecretsBundle(): ReturnType> { const secretsBundle = await this.getOlmMachineOrThrow().exportSecretsBundle(); const secrets = secretsBundle.to_json(); secretsBundle.free(); From fa5f2d389a0340daee11666371212253b5e68d26 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 6 Jun 2024 22:01:16 +0100 Subject: [PATCH 255/595] Fix incorrect assumptions about required fields in /search response (#4228) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/@types/search.ts | 6 +++--- src/client.ts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/@types/search.ts b/src/@types/search.ts index 3a6d4fdd57f..bd97e7de07a 100644 --- a/src/@types/search.ts +++ b/src/@types/search.ts @@ -54,9 +54,9 @@ enum GroupKey { } export interface IResultRoomEvents { - count: number; - highlights: string[]; - results: ISearchResult[]; + count?: number; + highlights?: string[]; + results?: ISearchResult[]; state?: { [roomId: string]: IStateEventWithRoomId[] }; groups?: { [groupKey in GroupKey]: { diff --git a/src/client.ts b/src/client.ts index 72e28f52916..1e3c57783cf 100644 --- a/src/client.ts +++ b/src/client.ts @@ -7109,7 +7109,7 @@ export class MatrixClient extends TypedEventEmitter Date: Fri, 7 Jun 2024 04:47:17 -0400 Subject: [PATCH 256/595] Add support for stable name for MSC4115 (#4232) * add support for stable name for MSC4115 * fix types issues * prettier * actually, it still returns `undefined` --- spec/integ/crypto/crypto.spec.ts | 68 ++++++++++++++++++++++++++++++++ src/@types/event.ts | 4 +- src/models/event.ts | 9 +---- 3 files changed, 72 insertions(+), 9 deletions(-) diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 50b5f4dea05..fd3b2778cfd 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -630,6 +630,27 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.HISTORICAL_MESSAGE_USER_NOT_JOINED); }); + newBackendOnly( + "fails with NOT_JOINED if user is not member of room (MSC4115 unstable prefix)", + async () => { + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { errcode: "M_NOT_FOUND", error: "No current backup version." }, + }); + expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); + await startClientAndAwaitFirstSync(); + + const ev = await sendEventAndAwaitDecryption({ + unsigned: { + [UNSIGNED_MEMBERSHIP_FIELD.altName!]: "leave", + }, + }); + expect(ev.decryptionFailureReason).toEqual( + DecryptionFailureCode.HISTORICAL_MESSAGE_USER_NOT_JOINED, + ); + }, + ); + newBackendOnly( "fails with another error when the server reports user was a member of the room", async () => { @@ -654,6 +675,30 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, }, ); + newBackendOnly( + "fails with another error when the server reports user was a member of the room (MSC4115 unstable prefix)", + async () => { + // This tests that when the server reports that the user + // was invited at the time the event was sent, then we + // don't get a HISTORICAL_MESSAGE_USER_NOT_JOINED error, + // and instead get some other error, since the user should + // have gotten the key for the event. + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { errcode: "M_NOT_FOUND", error: "No current backup version." }, + }); + expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); + await startClientAndAwaitFirstSync(); + + const ev = await sendEventAndAwaitDecryption({ + unsigned: { + [UNSIGNED_MEMBERSHIP_FIELD.altName!]: "invite", + }, + }); + expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.HISTORICAL_MESSAGE_NO_KEY_BACKUP); + }, + ); + newBackendOnly( "fails with another error when the server reports user was a member of the room", async () => { @@ -676,6 +721,29 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.HISTORICAL_MESSAGE_NO_KEY_BACKUP); }, ); + + newBackendOnly( + "fails with another error when the server reports user was a member of the room (MSC4115 unstable prefix)", + async () => { + // This tests that when the server reports the user's + // membership, and reports that the user was joined, then we + // don't get a HISTORICAL_MESSAGE_USER_NOT_JOINED error, and + // instead get some other error. + fetchMock.get("path:/_matrix/client/v3/room_keys/version", { + status: 404, + body: { errcode: "M_NOT_FOUND", error: "No current backup version." }, + }); + expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); + await startClientAndAwaitFirstSync(); + + const ev = await sendEventAndAwaitDecryption({ + unsigned: { + [UNSIGNED_MEMBERSHIP_FIELD.altName!]: "join", + }, + }); + expect(ev.decryptionFailureReason).toEqual(DecryptionFailureCode.HISTORICAL_MESSAGE_NO_KEY_BACKUP); + }, + ); }); it("Decryption fails with Unable to decrypt for other errors", async () => { diff --git a/src/@types/event.ts b/src/@types/event.ts index 5d8a26c9b23..44ef4c1434c 100644 --- a/src/@types/event.ts +++ b/src/@types/event.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { UnstableValue } from "../NamespacedValue"; +import { NamespacedValue, UnstableValue } from "../NamespacedValue"; import { PolicyRuleEventContent, RoomAvatarEventContent, @@ -302,7 +302,7 @@ export const UNSIGNED_THREAD_ID_FIELD = new UnstableValue("thread_id", "org.matr * * @experimental */ -export const UNSIGNED_MEMBERSHIP_FIELD = new UnstableValue("membership", "io.element.msc4115.membership"); +export const UNSIGNED_MEMBERSHIP_FIELD = new NamespacedValue("membership", "io.element.msc4115.membership"); /** * Mapped type from event type to content type for all specified non-state room events. diff --git a/src/models/event.ts b/src/models/event.ts index 7b9365aad50..e78a2f5b233 100644 --- a/src/models/event.ts +++ b/src/models/event.ts @@ -77,7 +77,6 @@ export interface IUnsigned { "invite_room_state"?: StrippedState[]; "m.relations"?: Record; // No common pattern for aggregated relations [UNSIGNED_THREAD_ID_FIELD.name]?: string; - [UNSIGNED_MEMBERSHIP_FIELD.name]?: Membership | string; } export interface IThreadBundledRelationship { @@ -717,13 +716,9 @@ export class MatrixEvent extends TypedEventEmitter { const unsigned = this.getUnsigned(); - if (typeof unsigned[UNSIGNED_MEMBERSHIP_FIELD.name] === "string") { - return unsigned[UNSIGNED_MEMBERSHIP_FIELD.name]; - } else { - return undefined; - } + return UNSIGNED_MEMBERSHIP_FIELD.findIn(unsigned); } /** From 395c3cfcd64329a43ec8232bc0c2bca5db639e22 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 11 Jun 2024 12:06:39 +0000 Subject: [PATCH 257/595] v33.1.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index d31db3600e9..9674546c0fd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "33.0.0", + "version": "33.1.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,5 +132,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From f80366ff30d0a6eebf47add8d9f40b151efae192 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 11 Jun 2024 13:09:01 +0100 Subject: [PATCH 258/595] Update all non-major dependencies (#4229) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 177 +++++++++++++++++++++++---------------------------- 2 files changed, 81 insertions(+), 98 deletions(-) diff --git a/package.json b/package.json index d31db3600e9..bc70dc1878c 100644 --- a/package.json +++ b/package.json @@ -119,7 +119,7 @@ "lint-staged": "^15.0.2", "matrix-mock-request": "^2.5.0", "node-fetch": "^2.7.0", - "prettier": "3.3.0", + "prettier": "3.3.1", "rimraf": "^5.0.0", "ts-node": "^10.9.2", "typedoc": "^0.25.10", diff --git a/yarn.lock b/yarn.lock index 0813e211fb3..8e6a91c5084 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1476,16 +1476,14 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@ericcornelissen/bash-parser@0.5.2": - version "0.5.2" - resolved "https://registry.yarnpkg.com/@ericcornelissen/bash-parser/-/bash-parser-0.5.2.tgz#5eb3bc52020d97fbaebc63b5168ca0aa0b2e8418" - integrity sha512-4pIMTa1nEFfMXitv7oaNEWOdM+zpOZavesa5GaiWTgda6Zk32CFGxjUp/iIaN0PwgUW1yTq/fztSjbpE8SLGZQ== +"@ericcornelissen/bash-parser@0.5.3": + version "0.5.3" + resolved "https://registry.yarnpkg.com/@ericcornelissen/bash-parser/-/bash-parser-0.5.3.tgz#cda9f0e9ed3bcf62c29c277de778726425e03b0a" + integrity sha512-9Z0sGuXqf6En19qmwB0Syi1Mc8TYl756dNuuaYal9mrypKa0Jq/IX6aJfh6Rk2S3z66KBisWTqloDo7weYj4zg== dependencies: array-last "^1.1.1" babylon "^6.9.1" compose-function "^3.0.3" - deep-freeze "0.0.1" - filter-iterator "0.0.1" filter-obj "^1.1.0" has-own-property "^0.1.0" identity-function "^1.0.0" @@ -2288,13 +2286,13 @@ "@typescript-eslint/types" "7.11.0" "@typescript-eslint/visitor-keys" "7.11.0" -"@typescript-eslint/scope-manager@7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.9.0.tgz#1dd3e63a4411db356a9d040e75864851b5f2619b" - integrity sha512-ZwPK4DeCDxr3GJltRz5iZejPFAAr4Wk3+2WIBaj1L5PYK5RgxExu/Y68FFVclN0y6GGwH8q+KgKRCvaTmFBbgQ== +"@typescript-eslint/scope-manager@7.12.0": + version "7.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.12.0.tgz#259c014362de72dd34f995efe6bd8dda486adf58" + integrity sha512-itF1pTnN6F3unPak+kutH9raIkL3lhH1YRPGgt7QQOh43DQKVJXmWkpb+vpc/TiDHs6RSd9CTbDsc/Y+Ygq7kg== dependencies: - "@typescript-eslint/types" "7.9.0" - "@typescript-eslint/visitor-keys" "7.9.0" + "@typescript-eslint/types" "7.12.0" + "@typescript-eslint/visitor-keys" "7.12.0" "@typescript-eslint/type-utils@7.11.0": version "7.11.0" @@ -2306,15 +2304,15 @@ debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@7.11.0", "@typescript-eslint/types@^7.2.0": +"@typescript-eslint/types@7.11.0": version "7.11.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.11.0.tgz#5e9702a5e8b424b7fc690e338d359939257d6722" integrity sha512-MPEsDRZTyCiXkD4vd3zywDCifi7tatc4K37KqTprCvaXptP7Xlpdw0NR2hRJTetG5TxbWDB79Ys4kLmHliEo/w== -"@typescript-eslint/types@7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.9.0.tgz#b58e485e4bfba055659c7e683ad4f5f0821ae2ec" - integrity sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w== +"@typescript-eslint/types@7.12.0", "@typescript-eslint/types@^7.2.0": + version "7.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.12.0.tgz#bf208f971a8da1e7524a5d9ae2b5f15192a37981" + integrity sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg== "@typescript-eslint/typescript-estree@7.11.0": version "7.11.0" @@ -2330,13 +2328,13 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/typescript-estree@7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.9.0.tgz#3395e27656060dc313a6b406c3a298b729685e07" - integrity sha512-zBCMCkrb2YjpKV3LA0ZJubtKCDxLttxfdGmwZvTqqWevUPN0FZvSI26FalGFFUZU/9YQK/A4xcQF9o/VVaCKAg== +"@typescript-eslint/typescript-estree@7.12.0": + version "7.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.12.0.tgz#e6c1074f248b3db6573ab6a7c47a39c4cd498ff9" + integrity sha512-5bwqLsWBULv1h6pn7cMW5dXX/Y2amRqLaKqsASVwbBHMZSnHqE/HN4vT4fE0aFsiwxYvr98kqOWh1a8ZKXalCQ== dependencies: - "@typescript-eslint/types" "7.9.0" - "@typescript-eslint/visitor-keys" "7.9.0" + "@typescript-eslint/types" "7.12.0" + "@typescript-eslint/visitor-keys" "7.12.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2355,14 +2353,14 @@ "@typescript-eslint/typescript-estree" "7.11.0" "@typescript-eslint/utils@^6.0.0 || ^7.0.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.9.0.tgz#1b96a34eefdca1c820cb1bbc2751d848b4540899" - integrity sha512-5KVRQCzZajmT4Ep+NEgjXCvjuypVvYHUW7RHlXzNPuak2oWpVoD1jf5xCP0dPAuNIchjC7uQyvbdaSTFaLqSdA== + version "7.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.12.0.tgz#c6e58fd7f724cdccc848f71e388ad80cbdb95dd0" + integrity sha512-Y6hhwxwDx41HNpjuYswYp6gDbkiZ8Hin9Bf5aJQn1bpTs3afYY4GX+MPYxma8jtoIV2GRwTM/UJm/2uGCVv+DQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.9.0" - "@typescript-eslint/types" "7.9.0" - "@typescript-eslint/typescript-estree" "7.9.0" + "@typescript-eslint/scope-manager" "7.12.0" + "@typescript-eslint/types" "7.12.0" + "@typescript-eslint/typescript-estree" "7.12.0" "@typescript-eslint/visitor-keys@7.11.0": version "7.11.0" @@ -2372,12 +2370,12 @@ "@typescript-eslint/types" "7.11.0" eslint-visitor-keys "^3.4.3" -"@typescript-eslint/visitor-keys@7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.9.0.tgz#82162656e339c3def02895f5c8546f6888d9b9ea" - integrity sha512-iESPx2TNLDNGQLyjKhUvIKprlP49XNEK+MvIf9nIO7ZZaZdbnfWKHnXAgufpxqfA0YryH8XToi4+CjBgVnFTSQ== +"@typescript-eslint/visitor-keys@7.12.0": + version "7.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.12.0.tgz#c053b55a996679528beeedd8e565710ce1ae1ad3" + integrity sha512-uZk7DevrQLL3vSnfFl5bj4sL75qC9D6EdjemIdbtkuUmIheWpuiiylSY01JxJE7+zGrOWDZrp1WxOuDntvKrHQ== dependencies: - "@typescript-eslint/types" "7.9.0" + "@typescript-eslint/types" "7.12.0" eslint-visitor-keys "^3.4.3" "@ungap/structured-clone@^1.2.0": @@ -3144,11 +3142,6 @@ dedent@^1.0.0: resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.1.tgz#4f3fc94c8b711e9bb2800d185cd6ad20f2a90aff" integrity sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg== -deep-freeze@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/deep-freeze/-/deep-freeze-0.0.1.tgz#3a0b0005de18672819dfd38cd31f91179c893e84" - integrity sha512-Z+z8HiAvsGwmjqlphnHW5oz6yWlOwu6EQfFTjmeTWlDeda3FS2yv3jhq35TX/ewmsnqB+RX2IdsIOyjJCQN5tg== - deep-is@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" @@ -3465,16 +3458,16 @@ eslint-plugin-import@^2.26.0: tsconfig-paths "^3.15.0" eslint-plugin-jest@^28.0.0: - version "28.5.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.5.0.tgz#b497b795de37f671eaccd38bd83030186ff5dc8d" - integrity sha512-6np6DGdmNq/eBbA7HOUNV8fkfL86PYwBfwyb8n23FXgJNTR8+ot3smRHjza9LGsBBZRypK3qyF79vMjohIL8eQ== + version "28.6.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.6.0.tgz#8410588d60bcafa68a91b6ec272e4a415502302a" + integrity sha512-YG28E1/MIKwnz+e2H7VwYPzHUYU4aMa19w0yGcwXnnmJH6EfgHahTJ2un3IyraUxNfnz/KUhJAFXNNwWPo12tg== dependencies: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0" eslint-plugin-jsdoc@^48.0.0: - version "48.2.7" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.7.tgz#2610b6fa1a9ba45c8296c2f335e0360bbd238772" - integrity sha512-fYj3roTnkFL9OFFTB129rico8lerC5G8Vp2ZW9SjO9RNWG0exVvI+i/Y8Bpm1ufjR0uvT38xtoab/U0Hp8Ybog== + version "48.2.9" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.9.tgz#dd5e293bc584c94e24f0b2bc4a953252b3f96d70" + integrity sha512-ErpKyr2mEUEkcdZ4nwW/cvDjClvAcvJMEXkGGll0wf8sro8h6qeQ3qlZyp1vM1dRk8Ap6rMdke8FnP94QBIaVQ== dependencies: "@es-joy/jsdoccomment" "~0.43.1" are-docs-informative "^0.0.2" @@ -3729,7 +3722,7 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-glob@3.3.2, fast-glob@^3.2.9: +fast-glob@^3.2.9, fast-glob@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== @@ -3819,11 +3812,6 @@ fill-range@^7.1.1: dependencies: to-regex-range "^5.0.1" -filter-iterator@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/filter-iterator/-/filter-iterator-0.0.1.tgz#0a2ecf07d6c06f96bdeb6846f8e88b57b8da1f37" - integrity sha512-v4lhL7Qa8XpbW3LN46CEnmhGk3eHZwxfNl5at20aEkreesht4YKb/Ba3BUIbnPhAC/r3dmu7ABaGk6MAvh2alA== - filter-obj@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" @@ -4954,10 +4942,10 @@ jest@^29.0.0: import-local "^3.0.2" jest-cli "^29.7.0" -jiti@1.21.0: - version "1.21.0" - resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.0.tgz#7c97f8fe045724e136a397f7340475244156105d" - integrity sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q== +jiti@^1.21.0: + version "1.21.3" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.3.tgz#b2adb07489d7629b344d59082bbedb8c21c5f755" + integrity sha512-uy2bNX5zQ+tESe+TiC7ilGRz8AtRGmnJH55NC5S0nSUjvvvM2hJHmefHErugGXN4pNv4Qx7vLsnNw9qJ9mtIsw== jju@~1.4.0: version "1.4.0" @@ -4969,13 +4957,6 @@ js-tokens@^4.0.0: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@4.1.0, js-yaml@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" - integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== - dependencies: - argparse "^2.0.1" - js-yaml@^3.13.1: version "3.14.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" @@ -4984,6 +4965,13 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" +js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + jsdoc-type-pratt-parser@~4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz#136f0571a99c184d84ec84662c45c29ceff71114" @@ -5096,24 +5084,24 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.17.3" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.17.3.tgz#eb2c285bc513e679917fdddeb54842b90cd90299" - integrity sha512-x2paKB0BOzFjnetYolGwg9Dwa8ZIYwBuVP2V4bWRFfTeLs7BymARb7I00R3OCbr09gKKr8TPLQVx2GQ6RF9llQ== + version "5.18.2" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.18.2.tgz#d35f206b69f21264ce39950b8be729ef52aae5fb" + integrity sha512-SR3XHUviWFFfmyt4FT+iWdu17pWEypaJF5EJfiRjZ7j4J6D9Kf4Ju7+Sw+n4suIIbhZmO3+oDBZKJsRVoY/lOw== dependencies: - "@ericcornelissen/bash-parser" "0.5.2" + "@ericcornelissen/bash-parser" "0.5.3" "@nodelib/fs.walk" "2.0.0" "@snyk/github-codeowners" "1.1.0" easy-table "1.2.0" - fast-glob "3.3.2" + fast-glob "^3.3.2" file-entry-cache "8.0.0" - jiti "1.21.0" - js-yaml "4.1.0" - minimist "1.2.8" - picocolors "1.0.0" + jiti "^1.21.0" + js-yaml "^4.1.0" + minimist "^1.2.8" + picocolors "^1.0.0" picomatch "^4.0.1" - pretty-ms "9.0.0" - resolve "1.22.8" - smol-toml "1.1.4" + pretty-ms "^9.0.0" + resolve "^1.22.8" + smol-toml "^1.1.4" strip-json-comments "5.0.1" summary "2.1.0" zod "^3.22.4" @@ -5372,7 +5360,7 @@ minimatch@^9.0.1, minimatch@^9.0.3, minimatch@^9.0.4: dependencies: brace-expansion "^2.0.1" -minimist@1.2.8, minimist@^1.2.0, minimist@^1.2.6: +minimist@^1.2.0, minimist@^1.2.6, minimist@^1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== @@ -5671,11 +5659,6 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -picocolors@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== - picocolors@^1.0.0, picocolors@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" @@ -5723,10 +5706,10 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prettier@3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.0.tgz#d173ea0524a691d4c0b1181752f2b46724328cdf" - integrity sha512-J9odKxERhCQ10OC2yb93583f6UnYutOeiV5i0zEDS7UGTdUt0u+y8erxl3lBKvwo/JHyyoEdXjwp4dke9oyZ/g== +prettier@3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.1.tgz#e68935518dd90bb7ec4821ba970e68f8de16e1ac" + integrity sha512-7CAwy5dRsxs8PHXT3twixW9/OEll8MLE0VRPCJyl7CkS6VHGPSlsVaWTiASPTyGyYRyApxlaWTzwUxVNrhcwDg== pretty-format@^28.1.3: version "28.1.3" @@ -5747,7 +5730,7 @@ pretty-format@^29.0.0, pretty-format@^29.7.0: ansi-styles "^5.0.0" react-is "^18.0.0" -pretty-ms@9.0.0: +pretty-ms@^9.0.0: version "9.0.0" resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-9.0.0.tgz#53c57f81171c53be7ce3fd20bdd4265422bc5929" integrity sha512-E9e9HJ9R9NasGOgPaPE8VMeiPKAyWR5jcFpNnwIejslIhWqdqOrb2wShBsncMPUb+BcCd2OPYfh7p2W6oemTng== @@ -5941,19 +5924,19 @@ resolve.exports@^2.0.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@1.22.8, resolve@^1.14.2, resolve@^1.22.4, resolve@~1.22.2: - version "1.22.8" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" - integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== +resolve@^1.10.0, resolve@^1.20.0: + version "1.22.4" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.4.tgz#1dc40df46554cdaf8948a486a10f6ba1e2026c34" + integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg== dependencies: is-core-module "^2.13.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -resolve@^1.10.0, resolve@^1.20.0: - version "1.22.4" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.4.tgz#1dc40df46554cdaf8948a486a10f6ba1e2026c34" - integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg== +resolve@^1.14.2, resolve@^1.22.4, resolve@^1.22.8, resolve@~1.22.2: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== dependencies: is-core-module "^2.13.0" path-parse "^1.0.7" @@ -6174,10 +6157,10 @@ slice-ansi@^7.0.0: ansi-styles "^6.2.1" is-fullwidth-code-point "^5.0.0" -smol-toml@1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/smol-toml/-/smol-toml-1.1.4.tgz#08c23b105f56f17e57b0a77c7edcb10b75a62c5c" - integrity sha512-Y0OT8HezWsTNeEOSVxDnKOW/AyNXHQ4BwJNbAXlLTF5wWsBvrcHhIkE5Rf8kQMLmgf7nDX3PVOlgC6/Aiggu3Q== +smol-toml@^1.1.4: + version "1.2.1" + resolved "https://registry.yarnpkg.com/smol-toml/-/smol-toml-1.2.1.tgz#6216334548763d4aac76cafff19f8914937ee13a" + integrity sha512-OtZKrVrGIT+m++lxyF0z5n68nkwdgZotPhy89bfA4T7nSWe0xeQtfbjM1z5VLTilJdWXH46g8i0oAcpQNkzZTg== source-map-support@0.5.13: version "0.5.13" From e8b91f27294b36d882bbd59efdad0d7abbf41421 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 11 Jun 2024 13:16:38 +0100 Subject: [PATCH 259/595] Update babel monorepo to v7.24.7 (#4234) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 1256 +++++++++++++++++++++++++++-------------------------- 1 file changed, 650 insertions(+), 606 deletions(-) diff --git a/yarn.lock b/yarn.lock index 8e6a91c5084..3c41c50f07f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -28,9 +28,9 @@ "@jridgewell/trace-mapping" "^0.3.24" "@babel/cli@^7.12.10": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.6.tgz#fac1fb099dff635efa1110882063c44a211cf18c" - integrity sha512-Sm/YhG/0REw9SKByFHDf4hkk7PYsjcsOyZgHGz1nvab4tUTQ9N4XVv+ykK0Y+VCJ3OshA/7EDyxnwCd8NEP/mQ== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.7.tgz#eb2868c1fa384b17ea88d60107577d3e6fd05c4e" + integrity sha512-8dfPprJgV4O14WTx+AQyEA+opgUKPrsIXX/MdL50J1n06EQJ6m1T+CdsJe0qEC0B/Xl85i+Un5KVAxd/PACX9A== dependencies: "@jridgewell/trace-mapping" "^0.3.25" commander "^6.2.0" @@ -67,12 +67,12 @@ "@babel/highlight" "^7.24.2" picocolors "^1.0.0" -"@babel/code-frame@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.6.tgz#ab88da19344445c3d8889af2216606d3329f3ef2" - integrity sha512-ZJhac6FkEd1yhG2AHOmfcXG4ceoLltoCVJjN5XsWN9BifBQr+cHJbWi0h68HZuSORq+3WtJ2z0hwF2NG1b5kcA== +"@babel/code-frame@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.7.tgz#882fd9e09e8ee324e496bd040401c6f046ef4465" + integrity sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA== dependencies: - "@babel/highlight" "^7.24.6" + "@babel/highlight" "^7.24.7" picocolors "^1.0.0" "@babel/compat-data@^7.20.5": @@ -80,31 +80,36 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730" integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.5", "@babel/compat-data@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.6.tgz#b3600217688cabb26e25f8e467019e66d71b7ae2" - integrity sha512-aC2DGhBq5eEdyXWqrDInSqQjO0k8xtPRf5YylULqx8MCd6jBtzqfta/3ETMRpuKIc5hyswfO80ObyA1MvkCcUQ== +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.7.tgz#d23bbea508c3883ba8251fb4164982c36ea577ed" + integrity sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw== "@babel/compat-data@^7.22.9": version "7.23.5" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== -"@babel/core@^7.0.0", "@babel/core@^7.12.10": +"@babel/compat-data@^7.23.5": version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.6.tgz#8650e0e4b03589ebe886c4e4a60398db0a7ec787" - integrity sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ== + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.6.tgz#b3600217688cabb26e25f8e467019e66d71b7ae2" + integrity sha512-aC2DGhBq5eEdyXWqrDInSqQjO0k8xtPRf5YylULqx8MCd6jBtzqfta/3ETMRpuKIc5hyswfO80ObyA1MvkCcUQ== + +"@babel/core@^7.0.0", "@babel/core@^7.12.10": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.7.tgz#b676450141e0b52a3d43bc91da86aa608f950ac4" + integrity sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.24.6" - "@babel/generator" "^7.24.6" - "@babel/helper-compilation-targets" "^7.24.6" - "@babel/helper-module-transforms" "^7.24.6" - "@babel/helpers" "^7.24.6" - "@babel/parser" "^7.24.6" - "@babel/template" "^7.24.6" - "@babel/traverse" "^7.24.6" - "@babel/types" "^7.24.6" + "@babel/code-frame" "^7.24.7" + "@babel/generator" "^7.24.7" + "@babel/helper-compilation-targets" "^7.24.7" + "@babel/helper-module-transforms" "^7.24.7" + "@babel/helpers" "^7.24.7" + "@babel/parser" "^7.24.7" + "@babel/template" "^7.24.7" + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -133,18 +138,18 @@ semver "^6.3.1" "@babel/eslint-parser@^7.12.10": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.6.tgz#7f0ecc0f29307b8696e83ff6a9d8b4f3e0421ad2" - integrity sha512-Q1BfQX42zXHx732PLW0w4+Y3wJjoZKEMaatFUEAmQ7Z+jCXxinzeqX9bvv2Q8xNPes/H6F0I23oGkcgjaItmLw== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.7.tgz#27ebab1a1ec21f48ae191a8aaac5b82baf80d9c7" + integrity sha512-SO5E3bVxDuxyNxM5agFv480YA2HO6ohZbGxbazZdIk3KQOPOGVNw6q78I9/lbviIf95eq6tPozeYnJLbjnC8IA== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" semver "^6.3.1" "@babel/eslint-plugin@^7.12.10": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.24.6.tgz#6e9e59653b7fec1047cae3ab82223c50aa810df8" - integrity sha512-sUDNpeOID2Am4cBXEmyhRaSvwwXIHVaG7trk7HO1Ri5VrEIBPYXg4ulTvZm2Lo0Y7u7Tw8QLe6JygchdOOto6w== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.24.7.tgz#ebdab31638cdcc720f0c788813066e9b5c0b3e29" + integrity sha512-lODNPJnM+OfcxxBvdmI2YmUeC0fBK3k9yET5O+1Eukr8d5VpO19c6ARtNheE2t2i/8XNYTzp3HeGEAAGZH3nnQ== dependencies: eslint-rule-composer "^0.3.0" @@ -168,29 +173,37 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" -"@babel/generator@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.6.tgz#dfac82a228582a9d30c959fe50ad28951d4737a7" - integrity sha512-S7m4eNa6YAPJRHmKsLHIDJhNAGNKoWNiWefz1MBbpnt8g9lvMDl1hir4P9bo/57bQEmuwEhnRU/AMWsD0G/Fbg== +"@babel/generator@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.7.tgz#1654d01de20ad66b4b4d99c135471bc654c55e6d" + integrity sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA== dependencies: - "@babel/types" "^7.24.6" + "@babel/types" "^7.24.7" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" -"@babel/helper-annotate-as-pure@^7.22.5", "@babel/helper-annotate-as-pure@^7.24.6": +"@babel/helper-annotate-as-pure@^7.22.5": version "7.24.6" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.6.tgz#517af93abc77924f9b2514c407bbef527fb8938d" integrity sha512-DitEzDfOMnd13kZnDqns1ccmftwJTS9DMkyn9pYTxulS7bZxUxpMly3Nf23QQ6NwA4UB8lAqjbqWtyvElEMAkg== dependencies: "@babel/types" "^7.24.6" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.6.tgz#19e9089ee87b0d0928012c83961a8deef4b0223f" - integrity sha512-+wnfqc5uHiMYtvRX7qu80Toef8BXeh4HHR1SPeonGb1SKPniNEd4a/nlaJJMv/OIEYvIVavvo0yR7u10Gqz0Iw== +"@babel/helper-annotate-as-pure@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz#5373c7bc8366b12a033b4be1ac13a206c6656aab" + integrity sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg== dependencies: - "@babel/types" "^7.24.6" + "@babel/types" "^7.24.7" + +"@babel/helper-builder-binary-assignment-operator-visitor@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.7.tgz#37d66feb012024f2422b762b9b2a7cfe27c7fba3" + integrity sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA== + dependencies: + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" "@babel/helper-compilation-targets@^7.20.7": version "7.22.10" @@ -214,13 +227,13 @@ lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.6.tgz#4a51d681f7680043d38e212715e2a7b1ad29cb51" - integrity sha512-VZQ57UsDGlX/5fFA7GkVPplZhHsVc+vuErWgdOiysI9Ksnw0Pbbd6pnPiR/mmJyKHgyIW0c7KT32gmhiF+cirg== +"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz#4eb6c4a80d6ffeac25ab8cd9a21b5dfa48d503a9" + integrity sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg== dependencies: - "@babel/compat-data" "^7.24.6" - "@babel/helper-validator-option" "^7.24.6" + "@babel/compat-data" "^7.24.7" + "@babel/helper-validator-option" "^7.24.7" browserslist "^4.22.2" lru-cache "^5.1.1" semver "^6.3.1" @@ -240,27 +253,27 @@ "@babel/helper-split-export-declaration" "^7.22.6" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.6.tgz#c50b86fa1c4ca9b7a890dc21884f097b6c4b5286" - integrity sha512-djsosdPJVZE6Vsw3kk7IPRWethP94WHGOhQTc67SNXE0ZzMhHgALw8iGmYS0TD1bbMM0VDROy43od7/hN6WYcA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.24.6" - "@babel/helper-environment-visitor" "^7.24.6" - "@babel/helper-function-name" "^7.24.6" - "@babel/helper-member-expression-to-functions" "^7.24.6" - "@babel/helper-optimise-call-expression" "^7.24.6" - "@babel/helper-replace-supers" "^7.24.6" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.6" - "@babel/helper-split-export-declaration" "^7.24.6" +"@babel/helper-create-class-features-plugin@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.7.tgz#2eaed36b3a1c11c53bdf80d53838b293c52f5b3b" + integrity sha512-kTkaDl7c9vO80zeX1rJxnuRpEsD5tA81yh11X1gQo+PhSti3JS+7qeZo9U4RHobKRiFPKaGK3svUAeb8D0Q7eg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.24.7" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-function-name" "^7.24.7" + "@babel/helper-member-expression-to-functions" "^7.24.7" + "@babel/helper-optimise-call-expression" "^7.24.7" + "@babel/helper-replace-supers" "^7.24.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" + "@babel/helper-split-export-declaration" "^7.24.7" semver "^6.3.1" -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.24.6.tgz#47d382dec0d49e74ca1b6f7f3b81f5968022a3c8" - integrity sha512-C875lFBIWWwyv6MHZUG9HmRrlTDgOsLWZfYR0nW69gaKJNe0/Mpxx5r0EID2ZdHQkdUmQo2t0uNckTL08/1BgA== +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.24.7.tgz#be4f435a80dc2b053c76eeb4b7d16dd22cfc89da" + integrity sha512-03TCmXy2FtXJEZfbXDTSqq1fRJArk7lX9DOFC/47VthYcxyIOx+eXQmdo6DOQvrbpIix+KfXwvuXdFDZHxt+rA== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.6" + "@babel/helper-annotate-as-pure" "^7.24.7" regexpu-core "^5.3.1" semver "^6.3.1" @@ -280,10 +293,12 @@ resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== -"@babel/helper-environment-visitor@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.6.tgz#ac7ad5517821641550f6698dd5468f8cef78620d" - integrity sha512-Y50Cg3k0LKLMjxdPjIl40SdJgMB85iXn27Vk/qbHZCFx/o5XO3PSnpi675h1KEmmDb6OFArfd5SCQEQ5Q4H88g== +"@babel/helper-environment-visitor@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz#4b31ba9551d1f90781ba83491dd59cf9b269f7d9" + integrity sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ== + dependencies: + "@babel/types" "^7.24.7" "@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0": version "7.23.0" @@ -293,13 +308,13 @@ "@babel/template" "^7.22.15" "@babel/types" "^7.23.0" -"@babel/helper-function-name@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.24.6.tgz#cebdd063386fdb95d511d84b117e51fc68fec0c8" - integrity sha512-xpeLqeeRkbxhnYimfr2PC+iA0Q7ljX/d1eZ9/inYbmfG2jpl8Lu3DyXvpOAnrS5kxkfOWJjioIMQsaMBXFI05w== +"@babel/helper-function-name@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz#75f1e1725742f39ac6584ee0b16d94513da38dd2" + integrity sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA== dependencies: - "@babel/template" "^7.24.6" - "@babel/types" "^7.24.6" + "@babel/template" "^7.24.7" + "@babel/types" "^7.24.7" "@babel/helper-hoist-variables@^7.22.5": version "7.22.5" @@ -308,12 +323,12 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-hoist-variables@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.6.tgz#8a7ece8c26756826b6ffcdd0e3cf65de275af7f9" - integrity sha512-SF/EMrC3OD7dSta1bLJIlrsVxwtd0UpjRJqLno6125epQMJ/kyFmpTT4pbvPbdQHzCHg+biQ7Syo8lnDtbR+uA== +"@babel/helper-hoist-variables@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz#b4ede1cde2fd89436397f30dc9376ee06b0f25ee" + integrity sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ== dependencies: - "@babel/types" "^7.24.6" + "@babel/types" "^7.24.7" "@babel/helper-member-expression-to-functions@^7.22.15": version "7.23.0" @@ -329,12 +344,13 @@ dependencies: "@babel/types" "^7.22.15" -"@babel/helper-member-expression-to-functions@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.6.tgz#86084f3e0e4e2169a134754df3870bc7784db71e" - integrity sha512-OTsCufZTxDUsv2/eDXanw/mUZHWOxSbEmC3pP8cgjcy5rgeVPWWMStnv274DV60JtHxTk0adT0QrCzC4M9NWGg== +"@babel/helper-member-expression-to-functions@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.7.tgz#67613d068615a70e4ed5101099affc7a41c5225f" + integrity sha512-LGeMaf5JN4hAT471eJdBs/GK1DoYIJ5GCtZN/EsL6KUiiDZOvO/eKE11AMZJa2zP4zk4qe9V2O/hxAmkRc8p6w== dependencies: - "@babel/types" "^7.24.6" + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" "@babel/helper-module-imports@^7.22.15": version "7.24.3" @@ -343,12 +359,13 @@ dependencies: "@babel/types" "^7.24.0" -"@babel/helper-module-imports@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.6.tgz#65e54ffceed6a268dc4ce11f0433b82cfff57852" - integrity sha512-a26dmxFJBF62rRO9mmpgrfTLsAuyHk4e1hKTUkD/fcMfynt8gvEKwQPQDVxWhca8dHoDck+55DFt42zV0QMw5g== +"@babel/helper-module-imports@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz#f2f980392de5b84c3328fc71d38bd81bbb83042b" + integrity sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA== dependencies: - "@babel/types" "^7.24.6" + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" "@babel/helper-module-transforms@^7.22.17": version "7.22.17" @@ -361,16 +378,16 @@ "@babel/helper-split-export-declaration" "^7.22.6" "@babel/helper-validator-identifier" "^7.22.15" -"@babel/helper-module-transforms@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.6.tgz#22346ed9df44ce84dee850d7433c5b73fab1fe4e" - integrity sha512-Y/YMPm83mV2HJTbX1Qh2sjgjqcacvOlhbzdCCsSlblOKjSYmQqEbO6rUniWQyRo9ncyfjT8hnUjlG06RXDEmcA== +"@babel/helper-module-transforms@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz#31b6c9a2930679498db65b685b1698bfd6c7daf8" + integrity sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ== dependencies: - "@babel/helper-environment-visitor" "^7.24.6" - "@babel/helper-module-imports" "^7.24.6" - "@babel/helper-simple-access" "^7.24.6" - "@babel/helper-split-export-declaration" "^7.24.6" - "@babel/helper-validator-identifier" "^7.24.6" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-module-imports" "^7.24.7" + "@babel/helper-simple-access" "^7.24.7" + "@babel/helper-split-export-declaration" "^7.24.7" + "@babel/helper-validator-identifier" "^7.24.7" "@babel/helper-optimise-call-expression@^7.22.5": version "7.22.5" @@ -379,31 +396,31 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-optimise-call-expression@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.6.tgz#f7836e3ccca3dfa02f15d2bc8b794efe75a5256e" - integrity sha512-3SFDJRbx7KuPRl8XDUr8O7GAEB8iGyWPjLKJh/ywP/Iy9WOmEfMrsWbaZpvBu2HSYn4KQygIsz0O7m8y10ncMA== +"@babel/helper-optimise-call-expression@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.7.tgz#8b0a0456c92f6b323d27cfd00d1d664e76692a0f" + integrity sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A== dependencies: - "@babel/types" "^7.24.6" + "@babel/types" "^7.24.7" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.6", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.6.tgz#fa02a32410a15a6e8f8185bcbf608f10528d2a24" - integrity sha512-MZG/JcWfxybKwsA9N9PmtF2lOSFSEMVCpIRrbxccZFLJPrJciJdG/UhSh5W96GEteJI2ARqm5UAHxISwRDLSNg== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz#98c84fe6fe3d0d3ae7bfc3a5e166a46844feb2a0" + integrity sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg== "@babel/helper-plugin-utils@^7.20.2": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== -"@babel/helper-remap-async-to-generator@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.24.6.tgz#c96ceb9846e877d806ce82a1521230ea7e0fc354" - integrity sha512-1Qursq9ArRZPAMOZf/nuzVW8HgJLkTB9y9LfP4lW2MVp4e9WkLJDovfKBxoDcCk6VuzIxyqWHyBoaCtSRP10yg== +"@babel/helper-remap-async-to-generator@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.24.7.tgz#b3f0f203628522713849d49403f1a414468be4c7" + integrity sha512-9pKLcTlZ92hNZMQfGCHImUpDOlAgkkpqalWEeftW5FBya75k8Li2ilerxkM/uBEj01iBZXcCIB/bwvDYgWyibA== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.6" - "@babel/helper-environment-visitor" "^7.24.6" - "@babel/helper-wrap-function" "^7.24.6" + "@babel/helper-annotate-as-pure" "^7.24.7" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-wrap-function" "^7.24.7" "@babel/helper-replace-supers@^7.22.9": version "7.22.20" @@ -414,14 +431,14 @@ "@babel/helper-member-expression-to-functions" "^7.22.15" "@babel/helper-optimise-call-expression" "^7.22.5" -"@babel/helper-replace-supers@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.24.6.tgz#3ea87405a2986a49ab052d10e540fe036d747c71" - integrity sha512-mRhfPwDqDpba8o1F8ESxsEkJMQkUF8ZIWrAc0FtWhxnjfextxMWxr22RtFizxxSYLjVHDeMgVsRq8BBZR2ikJQ== +"@babel/helper-replace-supers@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.24.7.tgz#f933b7eed81a1c0265740edc91491ce51250f765" + integrity sha512-qTAxxBM81VEyoAY0TtLrx1oAEJc09ZK67Q9ljQToqCnA+55eNwCORaxlKyu+rNfX86o8OXRUSNUnrtsAZXM9sg== dependencies: - "@babel/helper-environment-visitor" "^7.24.6" - "@babel/helper-member-expression-to-functions" "^7.24.6" - "@babel/helper-optimise-call-expression" "^7.24.6" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-member-expression-to-functions" "^7.24.7" + "@babel/helper-optimise-call-expression" "^7.24.7" "@babel/helper-simple-access@^7.22.5": version "7.24.5" @@ -430,12 +447,13 @@ dependencies: "@babel/types" "^7.24.5" -"@babel/helper-simple-access@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.6.tgz#1d6e04d468bba4fc963b4906f6dac6286cfedff1" - integrity sha512-nZzcMMD4ZhmB35MOOzQuiGO5RzL6tJbsT37Zx8M5L/i9KSrukGXWTjLe1knIbb/RmxoJE9GON9soq0c0VEMM5g== +"@babel/helper-simple-access@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz#bcade8da3aec8ed16b9c4953b74e506b51b5edb3" + integrity sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg== dependencies: - "@babel/types" "^7.24.6" + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": version "7.22.5" @@ -444,12 +462,13 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-skip-transparent-expression-wrappers@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.6.tgz#c47e9b33b7ea50d1073e125ebc26661717cb7040" - integrity sha512-jhbbkK3IUKc4T43WadP96a27oYti9gEf1LdyGSP2rHGH77kwLwfhO7TgwnWvxxQVmke0ImmCSS47vcuxEMGD3Q== +"@babel/helper-skip-transparent-expression-wrappers@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.7.tgz#5f8fa83b69ed5c27adc56044f8be2b3ea96669d9" + integrity sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ== dependencies: - "@babel/types" "^7.24.6" + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" "@babel/helper-split-export-declaration@^7.22.6": version "7.24.5" @@ -458,23 +477,28 @@ dependencies: "@babel/types" "^7.24.5" -"@babel/helper-split-export-declaration@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.6.tgz#e830068f7ba8861c53b7421c284da30ae656d7a3" - integrity sha512-CvLSkwXGWnYlF9+J3iZUvwgAxKiYzK3BWuo+mLzD/MDGOZDj7Gq8+hqaOkMxmJwmlv0iu86uH5fdADd9Hxkymw== +"@babel/helper-split-export-declaration@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz#83949436890e07fa3d6873c61a96e3bbf692d856" + integrity sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA== dependencies: - "@babel/types" "^7.24.6" + "@babel/types" "^7.24.7" "@babel/helper-string-parser@^7.22.5": version "7.23.4" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== -"@babel/helper-string-parser@^7.24.1", "@babel/helper-string-parser@^7.24.6": +"@babel/helper-string-parser@^7.24.1": version "7.24.6" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.6.tgz#28583c28b15f2a3339cfafafeaad42f9a0e828df" integrity sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q== +"@babel/helper-string-parser@^7.24.6", "@babel/helper-string-parser@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz#4d2d0f14820ede3b9807ea5fc36dfc8cd7da07f2" + integrity sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg== + "@babel/helper-validator-identifier@^7.22.15", "@babel/helper-validator-identifier@^7.22.19": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" @@ -485,29 +509,40 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz#918b1a7fa23056603506370089bd990d8720db62" integrity sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA== -"@babel/helper-validator-identifier@^7.24.5", "@babel/helper-validator-identifier@^7.24.6": +"@babel/helper-validator-identifier@^7.24.5": version "7.24.6" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.6.tgz#08bb6612b11bdec78f3feed3db196da682454a5e" integrity sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw== +"@babel/helper-validator-identifier@^7.24.6", "@babel/helper-validator-identifier@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" + integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== + "@babel/helper-validator-option@^7.22.5": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== -"@babel/helper-validator-option@^7.23.5", "@babel/helper-validator-option@^7.24.6": +"@babel/helper-validator-option@^7.23.5": version "7.24.6" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.6.tgz#59d8e81c40b7d9109ab7e74457393442177f460a" integrity sha512-Jktc8KkF3zIkePb48QO+IapbXlSapOW9S+ogZZkcO6bABgYAxtZcjZ/O005111YLf+j4M84uEgwYoidDkXbCkQ== -"@babel/helper-wrap-function@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.24.6.tgz#c27af1006e310683fdc76b668a0a1f6003e36217" - integrity sha512-f1JLrlw/jbiNfxvdrfBgio/gRBk3yTAEJWirpAkiJG2Hb22E7cEYKHWo0dFPTv/niPovzIdPdEDetrv6tC6gPQ== +"@babel/helper-validator-option@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz#24c3bb77c7a425d1742eec8fb433b5a1b38e62f6" + integrity sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw== + +"@babel/helper-wrap-function@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.24.7.tgz#52d893af7e42edca7c6d2c6764549826336aae1f" + integrity sha512-N9JIYk3TD+1vq/wn77YnJOqMtfWhNewNE+DJV4puD2X7Ew9J4JvrzrFDfTfyv5EgEXVy9/Wt8QiOErzEmv5Ifw== dependencies: - "@babel/helper-function-name" "^7.24.6" - "@babel/template" "^7.24.6" - "@babel/types" "^7.24.6" + "@babel/helper-function-name" "^7.24.7" + "@babel/template" "^7.24.7" + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" "@babel/helpers@^7.22.15": version "7.22.15" @@ -518,13 +553,13 @@ "@babel/traverse" "^7.22.15" "@babel/types" "^7.22.15" -"@babel/helpers@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.6.tgz#cd124245299e494bd4e00edda0e4ea3545c2c176" - integrity sha512-V2PI+NqnyFu1i0GyTd/O/cTpxzQCYioSkUIRmgo7gFEHKKCg5w46+r/A6WeUR1+P3TeQ49dspGPNd/E3n9AnnA== +"@babel/helpers@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.7.tgz#aa2ccda29f62185acb5d42fb4a3a1b1082107416" + integrity sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg== dependencies: - "@babel/template" "^7.24.6" - "@babel/types" "^7.24.6" + "@babel/template" "^7.24.7" + "@babel/types" "^7.24.7" "@babel/highlight@^7.22.13": version "7.23.4" @@ -555,12 +590,12 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/highlight@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.6.tgz#6d610c1ebd2c6e061cade0153bf69b0590b7b3df" - integrity sha512-2YnuOp4HAk2BsBrJJvYCbItHx0zWscI1C3zgWkz+wDyD9I7GIVrfnLyrR4Y1VR+7p+chAEcrgRQYZAGIKMV7vQ== +"@babel/highlight@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.7.tgz#a05ab1df134b286558aae0ed41e6c5f731bf409d" + integrity sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw== dependencies: - "@babel/helper-validator-identifier" "^7.24.6" + "@babel/helper-validator-identifier" "^7.24.7" chalk "^2.4.2" js-tokens "^4.0.0" picocolors "^1.0.0" @@ -585,42 +620,42 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.5.tgz#4a4d5ab4315579e5398a82dcf636ca80c3392790" integrity sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg== -"@babel/parser@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.6.tgz#5e030f440c3c6c78d195528c3b688b101a365328" - integrity sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q== +"@babel/parser@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" + integrity sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw== -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.6.tgz#283a74ef365b1e954cda6b2724c678a978215e88" - integrity sha512-bYndrJ6Ph6Ar+GaB5VAc0JPoP80bQCm4qon6JEzXfRl5QZyQ8Ur1K6k7htxWmPA5z+k7JQvaMUrtXlqclWYzKw== +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.7.tgz#fd059fd27b184ea2b4c7e646868a9a381bbc3055" + integrity sha512-TiT1ss81W80eQsN+722OaeQMY/G4yTb4G9JrqeiDADs3N8lbPMGldWi9x8tyqCW5NLx1Jh2AvkE6r6QvEltMMQ== dependencies: - "@babel/helper-environment-visitor" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.6.tgz#f9f5ae4d6fb72f5950262cb6f0b2482c3bc684ef" - integrity sha512-iVuhb6poq5ikqRq2XWU6OQ+R5o9wF+r/or9CeUyovgptz0UlnK4/seOQ1Istu/XybYjAhQv1FRSSfHHufIku5Q== +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.7.tgz#468096ca44bbcbe8fcc570574e12eb1950e18107" + integrity sha512-unaQgZ/iRu/By6tsjMZzpeBZjChYfLYry6HrEXPoz3KmfF0sVBQ1l8zKMQ4xRGLWVsjuvB8nQfjNP/DcfEOCsg== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.6.tgz#ab9be6edfffa127bd5ec4317c76c5af0f8fc7e6c" - integrity sha512-c8TER5xMDYzzFcGqOEp9l4hvB7dcbhcGjcLVwxWfe4P5DOafdwjsBJZKsmv+o3aXh7NhopvayQIovHrh2zSRUQ== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.7.tgz#e4eabdd5109acc399b38d7999b2ef66fc2022f89" + integrity sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.6" - "@babel/plugin-transform-optional-chaining" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" + "@babel/plugin-transform-optional-chaining" "^7.24.7" -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.6.tgz#0faf879249ec622d7f1c42eaebf7d11197401b2c" - integrity sha512-z8zEjYmwBUHN/pCF3NuWBhHQjJCrd33qAi8MgANfMrAvn72k2cImT8VjK9LJFu4ysOLJqhfkYYb3MvwANRUNZQ== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.7.tgz#71b21bb0286d5810e63a1538aa901c58e87375ec" + integrity sha512-utA4HuR6F4Vvcr+o4DnjL8fCOlgRFGbeeBEGNg3ZTrLFw6VWG5XmUrvcQ0FjIYMU2ST4XcR2Wsp7t9qOAPnxMg== dependencies: - "@babel/helper-environment-visitor" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-proposal-class-properties@^7.12.1": version "7.18.6" @@ -696,19 +731,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-import-assertions@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.6.tgz#52521c1c1698fc2dd9cf88f7a4dd86d4d041b9e1" - integrity sha512-BE6o2BogJKJImTmGpkmOic4V0hlRRxVtzqxiSPa8TIFxyhi4EFjHm08nq1M4STK4RytuLMgnSz0/wfflvGFNOg== +"@babel/plugin-syntax-import-assertions@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.7.tgz#2a0b406b5871a20a841240586b1300ce2088a778" + integrity sha512-Ec3NRUMoi8gskrkBe3fNmEQfxDvY8bgfQpz6jlk/41kX9eUjvpyqWU7PBP/pLAvMaSQjbMNKJmvX57jP+M6bPg== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-syntax-import-attributes@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.6.tgz#12aba325534129584672920274fefa4dc2d5f68e" - integrity sha512-D+CfsVZousPXIdudSII7RGy52+dYRtbyKAZcvtQKq/NpsivyMVduepzcLqG5pMBugtMdedxdC8Ramdpcne9ZWQ== +"@babel/plugin-syntax-import-attributes@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.7.tgz#b4f9ea95a79e6912480c4b626739f86a076624ca" + integrity sha512-hbX+lKKeUMGihnK8nvKqmXBInriT3GVjzXKFriV3YC6APGxMbP8RZNFwy91+hocLXq90Mta+HshoB31802bb8A== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" @@ -724,12 +759,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.6.tgz#bcca2964150437f88f65e3679e3d68762287b9c8" - integrity sha512-lWfvAIFNWMlCsU0DRUun2GpFwZdGTukLaHJqRh1JRb80NdAP5Sb1HDHB5X9P9OtgZHQl089UzQkpYlBq2VTPRw== +"@babel/plugin-syntax-jsx@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.7.tgz#39a1fa4a7e3d3d7f34e2acc6be585b718d30e02d" + integrity sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-jsx@^7.7.2": version "7.22.5" @@ -794,12 +829,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.6.tgz#769daf2982d60308bc83d8936eaecb7582463c87" - integrity sha512-TzCtxGgVTEJWWwcYwQhCIQ6WaKlo80/B+Onsk4RRCcYqpYGFcG9etPW94VToGte5AAcxRrhjPUFvUS3Y2qKi4A== +"@babel/plugin-syntax-typescript@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.7.tgz#58d458271b4d3b6bb27ee6ac9525acbb259bad1c" + integrity sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-typescript@^7.7.2": version "7.22.5" @@ -816,277 +851,277 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-arrow-functions@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.6.tgz#93607d1ef5b81c70af174aff3532d57216367492" - integrity sha512-jSSSDt4ZidNMggcLx8SaKsbGNEfIl0PHx/4mFEulorE7bpYLbN0d3pDW3eJ7Y5Z3yPhy3L3NaPCYyTUY7TuugQ== +"@babel/plugin-transform-arrow-functions@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.7.tgz#4f6886c11e423bd69f3ce51dbf42424a5f275514" + integrity sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-async-generator-functions@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.6.tgz#fa4a9e5c3a7f60f697ba36587b6c41b04f507d84" - integrity sha512-VEP2o4iR2DqQU6KPgizTW2mnMx6BG5b5O9iQdrW9HesLkv8GIA8x2daXBQxw1MrsIkFQGA/iJ204CKoQ8UcnAA== +"@babel/plugin-transform-async-generator-functions@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.7.tgz#7330a5c50e05181ca52351b8fd01642000c96cfd" + integrity sha512-o+iF77e3u7ZS4AoAuJvapz9Fm001PuD2V3Lp6OSE4FYQke+cSewYtnek+THqGRWyQloRCyvWL1OkyfNEl9vr/g== dependencies: - "@babel/helper-environment-visitor" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-remap-async-to-generator" "^7.24.6" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-remap-async-to-generator" "^7.24.7" "@babel/plugin-syntax-async-generators" "^7.8.4" -"@babel/plugin-transform-async-to-generator@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.6.tgz#eb11434b11d73d8c0cf9f71a6f4f1e6ba441df35" - integrity sha512-NTBA2SioI3OsHeIn6sQmhvXleSl9T70YY/hostQLveWs0ic+qvbA3fa0kwAwQ0OA/XGaAerNZRQGJyRfhbJK4g== +"@babel/plugin-transform-async-to-generator@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.7.tgz#72a3af6c451d575842a7e9b5a02863414355bdcc" + integrity sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA== dependencies: - "@babel/helper-module-imports" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-remap-async-to-generator" "^7.24.6" + "@babel/helper-module-imports" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-remap-async-to-generator" "^7.24.7" -"@babel/plugin-transform-block-scoped-functions@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.6.tgz#975555b5bfa9870b1218da536d1528735f1f8c56" - integrity sha512-XNW7jolYHW9CwORrZgA/97tL/k05qe/HL0z/qqJq1mdWhwwCM6D4BJBV7wAz9HgFziN5dTOG31znkVIzwxv+vw== +"@babel/plugin-transform-block-scoped-functions@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.7.tgz#a4251d98ea0c0f399dafe1a35801eaba455bbf1f" + integrity sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-block-scoping@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.6.tgz#a03ec8a4591c2b43cf7798bc633e698293fda179" - integrity sha512-S/t1Xh4ehW7sGA7c1j/hiOBLnEYCp/c2sEG4ZkL8kI1xX9tW2pqJTCHKtdhe/jHKt8nG0pFCrDHUXd4DvjHS9w== +"@babel/plugin-transform-block-scoping@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.7.tgz#42063e4deb850c7bd7c55e626bf4e7ab48e6ce02" + integrity sha512-Nd5CvgMbWc+oWzBsuaMcbwjJWAcp5qzrbg69SZdHSP7AMY0AbWFqFO0WTFCA1jxhMCwodRwvRec8k0QUbZk7RQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-class-properties@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.6.tgz#d9f394e97e88ef905d5a1e5e7a16238621b7982e" - integrity sha512-j6dZ0Z2Z2slWLR3kt9aOmSIrBvnntWjMDN/TVcMPxhXMLmJVqX605CBRlcGI4b32GMbfifTEsdEjGjiE+j/c3A== +"@babel/plugin-transform-class-properties@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.7.tgz#256879467b57b0b68c7ddfc5b76584f398cd6834" + integrity sha512-vKbfawVYayKcSeSR5YYzzyXvsDFWU2mD8U5TFeXtbCPLFUqe7GyCgvO6XDHzje862ODrOwy6WCPmKeWHbCFJ4w== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-create-class-features-plugin" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-class-static-block@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.6.tgz#f43f29286f6f0dca33d18fd5033b817d6c3fa816" - integrity sha512-1QSRfoPI9RoLRa8Mnakc6v3e0gJxiZQTYrMfLn+mD0sz5+ndSzwymp2hDcYJTyT0MOn0yuWzj8phlIvO72gTHA== +"@babel/plugin-transform-class-static-block@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.7.tgz#c82027ebb7010bc33c116d4b5044fbbf8c05484d" + integrity sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-create-class-features-plugin" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-transform-classes@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.6.tgz#0cc198c02720d4eeb091004843477659c6b37977" - integrity sha512-+fN+NO2gh8JtRmDSOB6gaCVo36ha8kfCW1nMq2Gc0DABln0VcHN4PrALDvF5/diLzIRKptC7z/d7Lp64zk92Fg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.24.6" - "@babel/helper-compilation-targets" "^7.24.6" - "@babel/helper-environment-visitor" "^7.24.6" - "@babel/helper-function-name" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-replace-supers" "^7.24.6" - "@babel/helper-split-export-declaration" "^7.24.6" +"@babel/plugin-transform-classes@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.7.tgz#4ae6ef43a12492134138c1e45913f7c46c41b4bf" + integrity sha512-CFbbBigp8ln4FU6Bpy6g7sE8B/WmCmzvivzUC6xDAdWVsjYTXijpuuGJmYkAaoWAzcItGKT3IOAbxRItZ5HTjw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.24.7" + "@babel/helper-compilation-targets" "^7.24.7" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-function-name" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-replace-supers" "^7.24.7" + "@babel/helper-split-export-declaration" "^7.24.7" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.6.tgz#7a1765c01cdfe59c320d2d0f37a4dc4aecd14df1" - integrity sha512-cRzPobcfRP0ZtuIEkA8QzghoUpSB3X3qSH5W2+FzG+VjWbJXExtx0nbRqwumdBN1x/ot2SlTNQLfBCnPdzp6kg== +"@babel/plugin-transform-computed-properties@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.7.tgz#4cab3214e80bc71fae3853238d13d097b004c707" + integrity sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/template" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/template" "^7.24.7" -"@babel/plugin-transform-destructuring@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.6.tgz#bdd1a6c90ffb2bfd13b6007b13316eeafc97cb53" - integrity sha512-YLW6AE5LQpk5npNXL7i/O+U9CE4XsBCuRPgyjl1EICZYKmcitV+ayuuUGMJm2lC1WWjXYszeTnIxF/dq/GhIZQ== +"@babel/plugin-transform-destructuring@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.7.tgz#a097f25292defb6e6cc16d6333a4cfc1e3c72d9e" + integrity sha512-19eJO/8kdCQ9zISOf+SEUJM/bAUIsvY3YDnXZTupUCQ8LgrWnsG/gFB9dvXqdXnRXMAM8fvt7b0CBKQHNGy1mw== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-dotall-regex@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.6.tgz#5a6b3148ec5f4f274ff48cebea90565087cad126" - integrity sha512-rCXPnSEKvkm/EjzOtLoGvKseK+dS4kZwx1HexO3BtRtgL0fQ34awHn34aeSHuXtZY2F8a1X8xqBBPRtOxDVmcA== +"@babel/plugin-transform-dotall-regex@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.7.tgz#5f8bf8a680f2116a7207e16288a5f974ad47a7a0" + integrity sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-create-regexp-features-plugin" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-duplicate-keys@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.6.tgz#2716301227cf7cd4fdadcbe4353ce191f8b3dc8a" - integrity sha512-/8Odwp/aVkZwPFJMllSbawhDAO3UJi65foB00HYnK/uXvvCPm0TAXSByjz1mpRmp0q6oX2SIxpkUOpPFHk7FLA== +"@babel/plugin-transform-duplicate-keys@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.7.tgz#dd20102897c9a2324e5adfffb67ff3610359a8ee" + integrity sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-dynamic-import@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.6.tgz#b477177761d56b15a4ba42a83be31cf72d757acf" - integrity sha512-vpq8SSLRTBLOHUZHSnBqVo0AKX3PBaoPs2vVzYVWslXDTDIpwAcCDtfhUcHSQQoYoUvcFPTdC8TZYXu9ZnLT/w== +"@babel/plugin-transform-dynamic-import@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.7.tgz#4d8b95e3bae2b037673091aa09cd33fecd6419f4" + integrity sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-dynamic-import" "^7.8.3" -"@babel/plugin-transform-exponentiation-operator@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.6.tgz#011e9e1a429f91b024af572530873ca571f9ef06" - integrity sha512-EemYpHtmz0lHE7hxxxYEuTYOOBZ43WkDgZ4arQ4r+VX9QHuNZC+WH3wUWmRNvR8ECpTRne29aZV6XO22qpOtdA== +"@babel/plugin-transform-exponentiation-operator@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.7.tgz#b629ee22645f412024297d5245bce425c31f9b0d" + integrity sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-export-namespace-from@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.6.tgz#b64ded74d9afb3db5d47d93996c4df69f15ac97c" - integrity sha512-inXaTM1SVrIxCkIJ5gqWiozHfFMStuGbGJAxZFBoHcRRdDP0ySLb3jH6JOwmfiinPwyMZqMBX+7NBDCO4z0NSA== +"@babel/plugin-transform-export-namespace-from@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.7.tgz#176d52d8d8ed516aeae7013ee9556d540c53f197" + integrity sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" -"@babel/plugin-transform-for-of@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.6.tgz#7f31780bd0c582b546372c0c0da9d9d56731e0a2" - integrity sha512-n3Sf72TnqK4nw/jziSqEl1qaWPbCRw2CziHH+jdRYvw4J6yeCzsj4jdw8hIntOEeDGTmHVe2w4MVL44PN0GMzg== +"@babel/plugin-transform-for-of@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.7.tgz#f25b33f72df1d8be76399e1b8f3f9d366eb5bc70" + integrity sha512-wo9ogrDG1ITTTBsy46oGiN1dS9A7MROBTcYsfS8DtsImMkHk9JXJ3EWQM6X2SUw4x80uGPlwj0o00Uoc6nEE3g== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" -"@babel/plugin-transform-function-name@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.6.tgz#60d1de3f6fd816a3e3bf9538578a64527e1b9c97" - integrity sha512-sOajCu6V0P1KPljWHKiDq6ymgqB+vfo3isUS4McqW1DZtvSVU2v/wuMhmRmkg3sFoq6GMaUUf8W4WtoSLkOV/Q== +"@babel/plugin-transform-function-name@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.7.tgz#6d8601fbffe665c894440ab4470bc721dd9131d6" + integrity sha512-U9FcnA821YoILngSmYkW6FjyQe2TyZD5pHt4EVIhmcTkrJw/3KqcrRSxuOo5tFZJi7TE19iDyI1u+weTI7bn2w== dependencies: - "@babel/helper-compilation-targets" "^7.24.6" - "@babel/helper-function-name" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-compilation-targets" "^7.24.7" + "@babel/helper-function-name" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-json-strings@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.6.tgz#a84639180ea1f9001bb5e6dc01921235ab05ad8b" - integrity sha512-Uvgd9p2gUnzYJxVdBLcU0KurF8aVhkmVyMKW4MIY1/BByvs3EBpv45q01o7pRTVmTvtQq5zDlytP3dcUgm7v9w== +"@babel/plugin-transform-json-strings@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.7.tgz#f3e9c37c0a373fee86e36880d45b3664cedaf73a" + integrity sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-json-strings" "^7.8.3" -"@babel/plugin-transform-literals@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.6.tgz#7f44f2871d7a4456030b0540858046f0b7bc6b18" - integrity sha512-f2wHfR2HF6yMj+y+/y07+SLqnOSwRp8KYLpQKOzS58XLVlULhXbiYcygfXQxJlMbhII9+yXDwOUFLf60/TL5tw== +"@babel/plugin-transform-literals@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.7.tgz#36b505c1e655151a9d7607799a9988fc5467d06c" + integrity sha512-vcwCbb4HDH+hWi8Pqenwnjy+UiklO4Kt1vfspcQYFhJdpthSnW8XvWGyDZWKNVrVbVViI/S7K9PDJZiUmP2fYQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-logical-assignment-operators@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.6.tgz#9cc7baa5629866566562c159dc1eae7569810f33" - integrity sha512-EKaWvnezBCMkRIHxMJSIIylzhqK09YpiJtDbr2wsXTwnO0TxyjMUkaw4RlFIZMIS0iDj0KyIg7H7XCguHu/YDA== +"@babel/plugin-transform-logical-assignment-operators@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.7.tgz#a58fb6eda16c9dc8f9ff1c7b1ba6deb7f4694cb0" + integrity sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-transform-member-expression-literals@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.6.tgz#5d3681ca201ac6909419cc51ac082a6ba4c5c756" - integrity sha512-9g8iV146szUo5GWgXpRbq/GALTnY+WnNuRTuRHWWFfWGbP9ukRL0aO/jpu9dmOPikclkxnNsjY8/gsWl6bmZJQ== +"@babel/plugin-transform-member-expression-literals@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.7.tgz#3b4454fb0e302e18ba4945ba3246acb1248315df" + integrity sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-modules-amd@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.6.tgz#09aeac7acb7913496aaaafdc64f40683e0db7e41" - integrity sha512-eAGogjZgcwqAxhyFgqghvoHRr+EYRQPFjUXrTYKBRb5qPnAVxOOglaxc4/byHqjvq/bqO2F3/CGwTHsgKJYHhQ== +"@babel/plugin-transform-modules-amd@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.7.tgz#65090ed493c4a834976a3ca1cde776e6ccff32d7" + integrity sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg== dependencies: - "@babel/helper-module-transforms" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-module-transforms" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-modules-commonjs@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.6.tgz#1b8269902f25bd91ca6427230d4735ddd1e1283e" - integrity sha512-JEV8l3MHdmmdb7S7Cmx6rbNEjRCgTQMZxllveHO0mx6uiclB0NflCawlQQ6+o5ZrwjUBYPzHm2XoK4wqGVUFuw== +"@babel/plugin-transform-modules-commonjs@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.7.tgz#9fd5f7fdadee9085886b183f1ad13d1ab260f4ab" + integrity sha512-iFI8GDxtevHJ/Z22J5xQpVqFLlMNstcLXh994xifFwxxGslr2ZXXLWgtBeLctOD63UFDArdvN6Tg8RFw+aEmjQ== dependencies: - "@babel/helper-module-transforms" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-simple-access" "^7.24.6" + "@babel/helper-module-transforms" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-simple-access" "^7.24.7" -"@babel/plugin-transform-modules-systemjs@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.6.tgz#c54eb53fe16f9b82d320abd76762d0320e3f9393" - integrity sha512-xg1Z0J5JVYxtpX954XqaaAT6NpAY6LtZXvYFCJmGFJWwtlz2EmJoR8LycFRGNE8dBKizGWkGQZGegtkV8y8s+w== +"@babel/plugin-transform-modules-systemjs@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.7.tgz#f8012316c5098f6e8dee6ecd58e2bc6f003d0ce7" + integrity sha512-GYQE0tW7YoaN13qFh3O1NCY4MPkUiAH3fiF7UcV/I3ajmDKEdG3l+UOcbAm4zUE3gnvUU+Eni7XrVKo9eO9auw== dependencies: - "@babel/helper-hoist-variables" "^7.24.6" - "@babel/helper-module-transforms" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-validator-identifier" "^7.24.6" + "@babel/helper-hoist-variables" "^7.24.7" + "@babel/helper-module-transforms" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-validator-identifier" "^7.24.7" -"@babel/plugin-transform-modules-umd@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.6.tgz#c4ef8b6d4da230b8dc87e81cd66986728952f89b" - integrity sha512-esRCC/KsSEUvrSjv5rFYnjZI6qv4R1e/iHQrqwbZIoRJqk7xCvEUiN7L1XrmW5QSmQe3n1XD88wbgDTWLbVSyg== +"@babel/plugin-transform-modules-umd@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.7.tgz#edd9f43ec549099620df7df24e7ba13b5c76efc8" + integrity sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A== dependencies: - "@babel/helper-module-transforms" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-module-transforms" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-named-capturing-groups-regex@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.24.6.tgz#352ee2861ab8705320029f80238cf26a92ba65d5" - integrity sha512-6DneiCiu91wm3YiNIGDWZsl6GfTTbspuj/toTEqLh9d4cx50UIzSdg+T96p8DuT7aJOBRhFyaE9ZvTHkXrXr6Q== +"@babel/plugin-transform-named-capturing-groups-regex@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.24.7.tgz#9042e9b856bc6b3688c0c2e4060e9e10b1460923" + integrity sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-create-regexp-features-plugin" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-new-target@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.6.tgz#fc024294714705113720d5e3dc0f9ad7abdbc289" - integrity sha512-f8liz9JG2Va8A4J5ZBuaSdwfPqN6axfWRK+y66fjKYbwf9VBLuq4WxtinhJhvp1w6lamKUwLG0slK2RxqFgvHA== +"@babel/plugin-transform-new-target@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.7.tgz#31ff54c4e0555cc549d5816e4ab39241dfb6ab00" + integrity sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-nullish-coalescing-operator@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.6.tgz#12b83b3cdfd1cd2066350e36e4fb912ab194545e" - integrity sha512-+QlAiZBMsBK5NqrBWFXCYeXyiU1y7BQ/OYaiPAcQJMomn5Tyg+r5WuVtyEuvTbpV7L25ZSLfE+2E9ywj4FD48A== +"@babel/plugin-transform-nullish-coalescing-operator@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.7.tgz#1de4534c590af9596f53d67f52a92f12db984120" + integrity sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-transform-numeric-separator@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.6.tgz#d9115669cc85aa91fbfb15f88f2226332cf4946a" - integrity sha512-6voawq8T25Jvvnc4/rXcWZQKKxUNZcKMS8ZNrjxQqoRFernJJKjE3s18Qo6VFaatG5aiX5JV1oPD7DbJhn0a4Q== +"@babel/plugin-transform-numeric-separator@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.7.tgz#bea62b538c80605d8a0fac9b40f48e97efa7de63" + integrity sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-transform-object-rest-spread@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.6.tgz#68d763f69955f9e599c405c6c876f5be46b47d8a" - integrity sha512-OKmi5wiMoRW5Smttne7BwHM8s/fb5JFs+bVGNSeHWzwZkWXWValR1M30jyXo1s/RaqgwwhEC62u4rFH/FBcBPg== +"@babel/plugin-transform-object-rest-spread@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.7.tgz#d13a2b93435aeb8a197e115221cab266ba6e55d6" + integrity sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q== dependencies: - "@babel/helper-compilation-targets" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-compilation-targets" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.24.6" + "@babel/plugin-transform-parameters" "^7.24.7" -"@babel/plugin-transform-object-super@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.6.tgz#9cbe6f995bed343a7ab8daf0416dac057a9c3e27" - integrity sha512-N/C76ihFKlZgKfdkEYKtaRUtXZAgK7sOY4h2qrbVbVTXPrKGIi8aww5WGe/+Wmg8onn8sr2ut6FXlsbu/j6JHg== +"@babel/plugin-transform-object-super@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.7.tgz#66eeaff7830bba945dd8989b632a40c04ed625be" + integrity sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-replace-supers" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-replace-supers" "^7.24.7" -"@babel/plugin-transform-optional-catch-binding@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.6.tgz#c81e90a971aad898e56f2b75a358e6c4855aeba3" - integrity sha512-L5pZ+b3O1mSzJ71HmxSCmTVd03VOT2GXOigug6vDYJzE5awLI7P1g0wFcdmGuwSDSrQ0L2rDOe/hHws8J1rv3w== +"@babel/plugin-transform-optional-catch-binding@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.7.tgz#00eabd883d0dd6a60c1c557548785919b6e717b4" + integrity sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-transform-optional-chaining@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.6.tgz#3d636b3ed8b5a506f93e4d4675fc95754d7594f5" - integrity sha512-cHbqF6l1QP11OkYTYQ+hhVx1E017O5ZcSPXk9oODpqhcAD1htsWG2NpHrrhthEO2qZomLK0FXS+u7NfrkF5aOQ== +"@babel/plugin-transform-optional-chaining@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.7.tgz#b8f6848a80cf2da98a8a204429bec04756c6d454" + integrity sha512-tK+0N9yd4j+x/4hxF3F0e0fu/VdcxU18y5SevtyM/PCFlQvXbR0Zmlo2eBrKtVipGNFzpq56o8WsIIKcJFUCRQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-transform-parameters@^7.20.7": @@ -1096,163 +1131,163 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-parameters@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.6.tgz#7aee86dfedd2fc0136fecbe6f7649fc02d86ab22" - integrity sha512-ST7guE8vLV+vI70wmAxuZpIKzVjvFX9Qs8bl5w6tN/6gOypPWUmMQL2p7LJz5E63vEGrDhAiYetniJFyBH1RkA== +"@babel/plugin-transform-parameters@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.7.tgz#5881f0ae21018400e320fc7eb817e529d1254b68" + integrity sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-private-methods@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.6.tgz#258e1f859a52ff7b30ad556598224c192defcda7" - integrity sha512-T9LtDI0BgwXOzyXrvgLTT8DFjCC/XgWLjflczTLXyvxbnSR/gpv0hbmzlHE/kmh9nOvlygbamLKRo6Op4yB6aw== +"@babel/plugin-transform-private-methods@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.7.tgz#e6318746b2ae70a59d023d5cc1344a2ba7a75f5e" + integrity sha512-COTCOkG2hn4JKGEKBADkA8WNb35TGkkRbI5iT845dB+NyqgO8Hn+ajPbSnIQznneJTa3d30scb6iz/DhH8GsJQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-create-class-features-plugin" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-private-property-in-object@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.6.tgz#59ff09a099f62213112cf348e96b6b11957d1f28" - integrity sha512-Qu/ypFxCY5NkAnEhCF86Mvg3NSabKsh/TPpBVswEdkGl7+FbsYHy1ziRqJpwGH4thBdQHh8zx+z7vMYmcJ7iaQ== +"@babel/plugin-transform-private-property-in-object@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.7.tgz#4eec6bc701288c1fab5f72e6a4bbc9d67faca061" + integrity sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.6" - "@babel/helper-create-class-features-plugin" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-annotate-as-pure" "^7.24.7" + "@babel/helper-create-class-features-plugin" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" -"@babel/plugin-transform-property-literals@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.6.tgz#243c4faabe811c405e9443059a58e834bf95dfd1" - integrity sha512-oARaglxhRsN18OYsnPTpb8TcKQWDYNsPNmTnx5++WOAsUJ0cSC/FZVlIJCKvPbU4yn/UXsS0551CFKJhN0CaMw== +"@babel/plugin-transform-property-literals@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.7.tgz#f0d2ed8380dfbed949c42d4d790266525d63bbdc" + integrity sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-regenerator@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.6.tgz#ed10cf0c13619365e15459f88d1b915ac57ffc24" - integrity sha512-SMDxO95I8WXRtXhTAc8t/NFQUT7VYbIWwJCJgEli9ml4MhqUMh4S6hxgH6SmAC3eAQNWCDJFxcFeEt9w2sDdXg== +"@babel/plugin-transform-regenerator@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.7.tgz#021562de4534d8b4b1851759fd7af4e05d2c47f8" + integrity sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" regenerator-transform "^0.15.2" -"@babel/plugin-transform-reserved-words@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.6.tgz#9eb16cbf339fcea0a46677716c775afb5ef14245" - integrity sha512-DcrgFXRRlK64dGE0ZFBPD5egM2uM8mgfrvTMOSB2yKzOtjpGegVYkzh3s1zZg1bBck3nkXiaOamJUqK3Syk+4A== +"@babel/plugin-transform-reserved-words@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.7.tgz#80037fe4fbf031fc1125022178ff3938bb3743a4" + integrity sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-transform-runtime@^7.12.10": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.6.tgz#1e3256246004c3724b8e07c7cb25e35913c4e373" - integrity sha512-W3gQydMb0SY99y/2lV0Okx2xg/8KzmZLQsLaiCmwNRl1kKomz14VurEm+2TossUb+sRvBCnGe+wx8KtIgDtBbQ== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.7.tgz#00a5bfaf8c43cf5c8703a8a6e82b59d9c58f38ca" + integrity sha512-YqXjrk4C+a1kZjewqt+Mmu2UuV1s07y8kqcUf4qYLnoqemhR4gRQikhdAhSVJioMjVTu6Mo6pAbaypEA3jY6fw== dependencies: - "@babel/helper-module-imports" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-module-imports" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.1" babel-plugin-polyfill-regenerator "^0.6.1" semver "^6.3.1" -"@babel/plugin-transform-shorthand-properties@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.6.tgz#ef734ebccc428d2174c7bb36015d0800faf5381e" - integrity sha512-xnEUvHSMr9eOWS5Al2YPfc32ten7CXdH7Zwyyk7IqITg4nX61oHj+GxpNvl+y5JHjfN3KXE2IV55wAWowBYMVw== +"@babel/plugin-transform-shorthand-properties@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.7.tgz#85448c6b996e122fa9e289746140aaa99da64e73" + integrity sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-spread@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.6.tgz#a56cecbd8617675531d1b79f5b755b7613aa0822" - integrity sha512-h/2j7oIUDjS+ULsIrNZ6/TKG97FgmEk1PXryk/HQq6op4XUUUwif2f69fJrzK0wza2zjCS1xhXmouACaWV5uPA== +"@babel/plugin-transform-spread@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.7.tgz#e8a38c0fde7882e0fb8f160378f74bd885cc7bb3" + integrity sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" -"@babel/plugin-transform-sticky-regex@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.6.tgz#1a78127731fea87d954bed193840986a38f04327" - integrity sha512-fN8OcTLfGmYv7FnDrsjodYBo1DhPL3Pze/9mIIE2MGCT1KgADYIOD7rEglpLHZj8PZlC/JFX5WcD+85FLAQusw== +"@babel/plugin-transform-sticky-regex@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.7.tgz#96ae80d7a7e5251f657b5cf18f1ea6bf926f5feb" + integrity sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-template-literals@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.6.tgz#aaf2ae157acd0e5c9265dba8ac0a439f8d2a6303" - integrity sha512-BJbEqJIcKwrqUP+KfUIkxz3q8VzXe2R8Wv8TaNgO1cx+nNavxn/2+H8kp9tgFSOL6wYPPEgFvU6IKS4qoGqhmg== +"@babel/plugin-transform-template-literals@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.7.tgz#a05debb4a9072ae8f985bcf77f3f215434c8f8c8" + integrity sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-typeof-symbol@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.6.tgz#3d02da23ebcc8f1982ddcd1f2581cf3ee4e58762" - integrity sha512-IshCXQ+G9JIFJI7bUpxTE/oA2lgVLAIK8q1KdJNoPXOpvRaNjMySGuvLfBw/Xi2/1lLo953uE8hyYSDW3TSYig== +"@babel/plugin-transform-typeof-symbol@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.7.tgz#f074be466580d47d6e6b27473a840c9f9ca08fb0" + integrity sha512-VtR8hDy7YLB7+Pet9IarXjg/zgCMSF+1mNS/EQEiEaUPoFXCVsHG64SIxcaaI2zJgRiv+YmgaQESUfWAdbjzgg== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-typescript@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.6.tgz#339c6127a783c32e28a5b591e6c666f899b57db0" - integrity sha512-H0i+hDLmaYYSt6KU9cZE0gb3Cbssa/oxWis7PX4ofQzbvsfix9Lbh8SRk7LCPDlLWJHUiFeHU0qRRpF/4Zv7mQ== +"@babel/plugin-transform-typescript@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.7.tgz#b006b3e0094bf0813d505e0c5485679eeaf4a881" + integrity sha512-iLD3UNkgx2n/HrjBesVbYX6j0yqn/sJktvbtKKgcaLIQ4bTTQ8obAypc1VpyHPD2y4Phh9zHOaAt8e/L14wCpw== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.6" - "@babel/helper-create-class-features-plugin" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/plugin-syntax-typescript" "^7.24.6" + "@babel/helper-annotate-as-pure" "^7.24.7" + "@babel/helper-create-class-features-plugin" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/plugin-syntax-typescript" "^7.24.7" -"@babel/plugin-transform-unicode-escapes@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.6.tgz#c8ddca8fd5bacece837a4e27bd3b7ed64580d1a8" - integrity sha512-bKl3xxcPbkQQo5eX9LjjDpU2xYHeEeNQbOhj0iPvetSzA+Tu9q/o5lujF4Sek60CM6MgYvOS/DJuwGbiEYAnLw== +"@babel/plugin-transform-unicode-escapes@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.7.tgz#2023a82ced1fb4971630a2e079764502c4148e0e" + integrity sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-unicode-property-regex@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.6.tgz#e66297d5d452db0b0be56515e3d0e10b7d33fb32" - integrity sha512-8EIgImzVUxy15cZiPii9GvLZwsy7Vxc+8meSlR3cXFmBIl5W5Tn9LGBf7CDKkHj4uVfNXCJB8RsVfnmY61iedA== +"@babel/plugin-transform-unicode-property-regex@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.7.tgz#9073a4cd13b86ea71c3264659590ac086605bbcd" + integrity sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-create-regexp-features-plugin" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-unicode-regex@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.6.tgz#2001e7d87ed709eea145e0b65fb5f93c3c0e225b" - integrity sha512-pssN6ExsvxaKU638qcWb81RrvvgZom3jDgU/r5xFZ7TONkZGFf4MhI2ltMb8OcQWhHyxgIavEU+hgqtbKOmsPA== +"@babel/plugin-transform-unicode-regex@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.7.tgz#dfc3d4a51127108099b19817c0963be6a2adf19f" + integrity sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-create-regexp-features-plugin" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-unicode-sets-regex@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.6.tgz#f18b7292222aee85c155258ceb345a146a070a46" - integrity sha512-quiMsb28oXWIDK0gXLALOJRXLgICLiulqdZGOaPPd0vRT7fQp74NtdADAVu+D8s00C+0Xs0MxVP0VKF/sZEUgw== +"@babel/plugin-transform-unicode-sets-regex@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.7.tgz#d40705d67523803a576e29c63cef6e516b858ed9" + integrity sha512-2G8aAvF4wy1w/AGZkemprdGMRg5o6zPNhbHVImRz3lss55TYCBd6xStN19rt8XJHq20sqV0JbyWjOWwQRwV/wg== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" + "@babel/helper-create-regexp-features-plugin" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/preset-env@^7.12.11": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.6.tgz#a5a55bc70e5ff1ed7f872067e2a9d65ff917ad6f" - integrity sha512-CrxEAvN7VxfjOG8JNF2Y/eMqMJbZPZ185amwGUBp8D9USK90xQmv7dLdFSa+VbD7fdIqcy/Mfv7WtzG8+/qxKg== - dependencies: - "@babel/compat-data" "^7.24.6" - "@babel/helper-compilation-targets" "^7.24.6" - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-validator-option" "^7.24.6" - "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.6" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.6" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.6" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.24.6" + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.7.tgz#ff067b4e30ba4a72f225f12f123173e77b987f37" + integrity sha512-1YZNsc+y6cTvWlDHidMBsQZrZfEFjRIo/BZCT906PMdzOyXtSLTgqGdrpcuTDCXyd11Am5uQULtDIcCfnTc8fQ== + dependencies: + "@babel/compat-data" "^7.24.7" + "@babel/helper-compilation-targets" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-validator-option" "^7.24.7" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.7" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.7" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.7" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.24.7" "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-class-properties" "^7.12.13" "@babel/plugin-syntax-class-static-block" "^7.14.5" "@babel/plugin-syntax-dynamic-import" "^7.8.3" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-import-assertions" "^7.24.6" - "@babel/plugin-syntax-import-attributes" "^7.24.6" + "@babel/plugin-syntax-import-assertions" "^7.24.7" + "@babel/plugin-syntax-import-attributes" "^7.24.7" "@babel/plugin-syntax-import-meta" "^7.10.4" "@babel/plugin-syntax-json-strings" "^7.8.3" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" @@ -1264,54 +1299,54 @@ "@babel/plugin-syntax-private-property-in-object" "^7.14.5" "@babel/plugin-syntax-top-level-await" "^7.14.5" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.24.6" - "@babel/plugin-transform-async-generator-functions" "^7.24.6" - "@babel/plugin-transform-async-to-generator" "^7.24.6" - "@babel/plugin-transform-block-scoped-functions" "^7.24.6" - "@babel/plugin-transform-block-scoping" "^7.24.6" - "@babel/plugin-transform-class-properties" "^7.24.6" - "@babel/plugin-transform-class-static-block" "^7.24.6" - "@babel/plugin-transform-classes" "^7.24.6" - "@babel/plugin-transform-computed-properties" "^7.24.6" - "@babel/plugin-transform-destructuring" "^7.24.6" - "@babel/plugin-transform-dotall-regex" "^7.24.6" - "@babel/plugin-transform-duplicate-keys" "^7.24.6" - "@babel/plugin-transform-dynamic-import" "^7.24.6" - "@babel/plugin-transform-exponentiation-operator" "^7.24.6" - "@babel/plugin-transform-export-namespace-from" "^7.24.6" - "@babel/plugin-transform-for-of" "^7.24.6" - "@babel/plugin-transform-function-name" "^7.24.6" - "@babel/plugin-transform-json-strings" "^7.24.6" - "@babel/plugin-transform-literals" "^7.24.6" - "@babel/plugin-transform-logical-assignment-operators" "^7.24.6" - "@babel/plugin-transform-member-expression-literals" "^7.24.6" - "@babel/plugin-transform-modules-amd" "^7.24.6" - "@babel/plugin-transform-modules-commonjs" "^7.24.6" - "@babel/plugin-transform-modules-systemjs" "^7.24.6" - "@babel/plugin-transform-modules-umd" "^7.24.6" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.24.6" - "@babel/plugin-transform-new-target" "^7.24.6" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.24.6" - "@babel/plugin-transform-numeric-separator" "^7.24.6" - "@babel/plugin-transform-object-rest-spread" "^7.24.6" - "@babel/plugin-transform-object-super" "^7.24.6" - "@babel/plugin-transform-optional-catch-binding" "^7.24.6" - "@babel/plugin-transform-optional-chaining" "^7.24.6" - "@babel/plugin-transform-parameters" "^7.24.6" - "@babel/plugin-transform-private-methods" "^7.24.6" - "@babel/plugin-transform-private-property-in-object" "^7.24.6" - "@babel/plugin-transform-property-literals" "^7.24.6" - "@babel/plugin-transform-regenerator" "^7.24.6" - "@babel/plugin-transform-reserved-words" "^7.24.6" - "@babel/plugin-transform-shorthand-properties" "^7.24.6" - "@babel/plugin-transform-spread" "^7.24.6" - "@babel/plugin-transform-sticky-regex" "^7.24.6" - "@babel/plugin-transform-template-literals" "^7.24.6" - "@babel/plugin-transform-typeof-symbol" "^7.24.6" - "@babel/plugin-transform-unicode-escapes" "^7.24.6" - "@babel/plugin-transform-unicode-property-regex" "^7.24.6" - "@babel/plugin-transform-unicode-regex" "^7.24.6" - "@babel/plugin-transform-unicode-sets-regex" "^7.24.6" + "@babel/plugin-transform-arrow-functions" "^7.24.7" + "@babel/plugin-transform-async-generator-functions" "^7.24.7" + "@babel/plugin-transform-async-to-generator" "^7.24.7" + "@babel/plugin-transform-block-scoped-functions" "^7.24.7" + "@babel/plugin-transform-block-scoping" "^7.24.7" + "@babel/plugin-transform-class-properties" "^7.24.7" + "@babel/plugin-transform-class-static-block" "^7.24.7" + "@babel/plugin-transform-classes" "^7.24.7" + "@babel/plugin-transform-computed-properties" "^7.24.7" + "@babel/plugin-transform-destructuring" "^7.24.7" + "@babel/plugin-transform-dotall-regex" "^7.24.7" + "@babel/plugin-transform-duplicate-keys" "^7.24.7" + "@babel/plugin-transform-dynamic-import" "^7.24.7" + "@babel/plugin-transform-exponentiation-operator" "^7.24.7" + "@babel/plugin-transform-export-namespace-from" "^7.24.7" + "@babel/plugin-transform-for-of" "^7.24.7" + "@babel/plugin-transform-function-name" "^7.24.7" + "@babel/plugin-transform-json-strings" "^7.24.7" + "@babel/plugin-transform-literals" "^7.24.7" + "@babel/plugin-transform-logical-assignment-operators" "^7.24.7" + "@babel/plugin-transform-member-expression-literals" "^7.24.7" + "@babel/plugin-transform-modules-amd" "^7.24.7" + "@babel/plugin-transform-modules-commonjs" "^7.24.7" + "@babel/plugin-transform-modules-systemjs" "^7.24.7" + "@babel/plugin-transform-modules-umd" "^7.24.7" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.24.7" + "@babel/plugin-transform-new-target" "^7.24.7" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.24.7" + "@babel/plugin-transform-numeric-separator" "^7.24.7" + "@babel/plugin-transform-object-rest-spread" "^7.24.7" + "@babel/plugin-transform-object-super" "^7.24.7" + "@babel/plugin-transform-optional-catch-binding" "^7.24.7" + "@babel/plugin-transform-optional-chaining" "^7.24.7" + "@babel/plugin-transform-parameters" "^7.24.7" + "@babel/plugin-transform-private-methods" "^7.24.7" + "@babel/plugin-transform-private-property-in-object" "^7.24.7" + "@babel/plugin-transform-property-literals" "^7.24.7" + "@babel/plugin-transform-regenerator" "^7.24.7" + "@babel/plugin-transform-reserved-words" "^7.24.7" + "@babel/plugin-transform-shorthand-properties" "^7.24.7" + "@babel/plugin-transform-spread" "^7.24.7" + "@babel/plugin-transform-sticky-regex" "^7.24.7" + "@babel/plugin-transform-template-literals" "^7.24.7" + "@babel/plugin-transform-typeof-symbol" "^7.24.7" + "@babel/plugin-transform-unicode-escapes" "^7.24.7" + "@babel/plugin-transform-unicode-property-regex" "^7.24.7" + "@babel/plugin-transform-unicode-regex" "^7.24.7" + "@babel/plugin-transform-unicode-sets-regex" "^7.24.7" "@babel/preset-modules" "0.1.6-no-external-plugins" babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.4" @@ -1329,15 +1364,15 @@ esutils "^2.0.2" "@babel/preset-typescript@^7.12.7": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.24.6.tgz#27057470fb981c31338bdb897fc3d9aa0cb7dab2" - integrity sha512-U10aHPDnokCFRXgyT/MaIRTivUu2K/mu0vJlwRS9LxJmJet+PFQNKpggPyFCUtC6zWSBPjvxjnpNkAn3Uw2m5w== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.24.7.tgz#66cd86ea8f8c014855671d5ea9a737139cbbfef1" + integrity sha512-SyXRe3OdWwIwalxDg5UtJnJQO+YPcTfwiIY2B0Xlddh9o7jpWLvv8X1RthIeDOxQ+O1ML5BLPCONToObyVQVuQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.6" - "@babel/helper-validator-option" "^7.24.6" - "@babel/plugin-syntax-jsx" "^7.24.6" - "@babel/plugin-transform-modules-commonjs" "^7.24.6" - "@babel/plugin-transform-typescript" "^7.24.6" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-validator-option" "^7.24.7" + "@babel/plugin-syntax-jsx" "^7.24.7" + "@babel/plugin-transform-modules-commonjs" "^7.24.7" + "@babel/plugin-transform-typescript" "^7.24.7" "@babel/regjsgen@^0.8.0": version "0.8.0" @@ -1345,9 +1380,9 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.6.tgz#5b76eb89ad45e2e4a0a8db54c456251469a3358e" - integrity sha512-Ja18XcETdEl5mzzACGd+DKgaGJzPTCow7EglgwTmHdwokzDFYh/MHua6lU6DV/hjF2IaOJ4oX2nqnjG7RElKOw== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.7.tgz#f4f0d5530e8dbdf59b3451b9b3e594b6ba082e12" + integrity sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw== dependencies: regenerator-runtime "^0.14.0" @@ -1360,14 +1395,14 @@ "@babel/parser" "^7.24.0" "@babel/types" "^7.24.0" -"@babel/template@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.6.tgz#048c347b2787a6072b24c723664c8d02b67a44f9" - integrity sha512-3vgazJlLwNXi9jhrR1ef8qiB65L1RK90+lEQwv4OxveHnqC3BfmnHdgySwRLzf6akhlOYenT+b7AfWq+a//AHw== +"@babel/template@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.7.tgz#02efcee317d0609d2c07117cb70ef8fb17ab7315" + integrity sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig== dependencies: - "@babel/code-frame" "^7.24.6" - "@babel/parser" "^7.24.6" - "@babel/types" "^7.24.6" + "@babel/code-frame" "^7.24.7" + "@babel/parser" "^7.24.7" + "@babel/types" "^7.24.7" "@babel/template@^7.3.3": version "7.22.15" @@ -1394,19 +1429,19 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/traverse@^7.24.6": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.6.tgz#0941ec50cdeaeacad0911eb67ae227a4f8424edc" - integrity sha512-OsNjaJwT9Zn8ozxcfoBc+RaHdj3gFmCmYoQLUII1o6ZrUwku0BMg80FoOTPx+Gi6XhcQxAYE4xyjPTo4SxEQqw== - dependencies: - "@babel/code-frame" "^7.24.6" - "@babel/generator" "^7.24.6" - "@babel/helper-environment-visitor" "^7.24.6" - "@babel/helper-function-name" "^7.24.6" - "@babel/helper-hoist-variables" "^7.24.6" - "@babel/helper-split-export-declaration" "^7.24.6" - "@babel/parser" "^7.24.6" - "@babel/types" "^7.24.6" +"@babel/traverse@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.7.tgz#de2b900163fa741721ba382163fe46a936c40cf5" + integrity sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA== + dependencies: + "@babel/code-frame" "^7.24.7" + "@babel/generator" "^7.24.7" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-function-name" "^7.24.7" + "@babel/helper-hoist-variables" "^7.24.7" + "@babel/helper-split-export-declaration" "^7.24.7" + "@babel/parser" "^7.24.7" + "@babel/types" "^7.24.7" debug "^4.3.1" globals "^11.1.0" @@ -1437,7 +1472,7 @@ "@babel/helper-validator-identifier" "^7.22.19" to-fast-properties "^2.0.0" -"@babel/types@^7.22.5", "@babel/types@^7.24.6", "@babel/types@^7.4.4": +"@babel/types@^7.22.5": version "7.24.6" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.6.tgz#ba4e1f59870c10dc2fa95a274ac4feec23b21912" integrity sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ== @@ -1455,6 +1490,15 @@ "@babel/helper-validator-identifier" "^7.22.20" to-fast-properties "^2.0.0" +"@babel/types@^7.24.6", "@babel/types@^7.24.7", "@babel/types@^7.4.4": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.7.tgz#6027fe12bc1aa724cd32ab113fb7f1988f1f66f2" + integrity sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q== + dependencies: + "@babel/helper-string-parser" "^7.24.7" + "@babel/helper-validator-identifier" "^7.24.7" + to-fast-properties "^2.0.0" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -2790,14 +2834,14 @@ browserslist@^4.21.9: update-browserslist-db "^1.0.13" browserslist@^4.22.2, browserslist@^4.23.0: - version "4.23.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" - integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== + version "4.23.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.1.tgz#ce4af0534b3d37db5c1a4ca98b9080f985041e96" + integrity sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw== dependencies: - caniuse-lite "^1.0.30001587" - electron-to-chromium "^1.4.668" + caniuse-lite "^1.0.30001629" + electron-to-chromium "^1.4.796" node-releases "^2.0.14" - update-browserslist-db "^1.0.13" + update-browserslist-db "^1.0.16" bs58@^5.0.0: version "5.0.0" @@ -2852,10 +2896,10 @@ caniuse-lite@^1.0.30001565: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001583.tgz#abb2970cc370801dc7e27bf290509dc132cfa390" integrity sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q== -caniuse-lite@^1.0.30001587: - version "1.0.30001627" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001627.tgz#8071c42d468e06ed2fb2c545efe79a663fd326ab" - integrity sha512-4zgNiB8nTyV/tHhwZrFs88ryjls/lHiqFhrxCW4qSTeuRByBVnPYpDInchOIySWknznucaf31Z4KYqjfbrecVw== +caniuse-lite@^1.0.30001629: + version "1.0.30001632" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001632.tgz#964207b7cba5851701afb4c8afaf1448db3884b6" + integrity sha512-udx3o7yHJfUxMLkGohMlVHCvFvWmirKh9JAH/d7WOLPetlH+LTL5cocMZ0t7oZx/mdlOWXti97xLZWc8uURRHg== chalk@5.2.0: version "5.2.0" @@ -3249,10 +3293,10 @@ electron-to-chromium@^1.4.601: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.655.tgz#112410db0d7f9c2b4ed8baa3b1b548522a6f89d4" integrity sha512-2yszojF7vIZ68adIOvzV4bku8OZad9w5H9xF3ZAMZjPuOjBarlflUkjN6DggdV+L71WZuKUfKUhov/34+G5QHg== -electron-to-chromium@^1.4.668: - version "1.4.789" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.789.tgz#fec941cb753ee139da562a5a8ff31fc3e828b411" - integrity sha512-0VbyiaXoT++Fi2vHGo2ThOeS6X3vgRCWrjPeO2FeIAWL6ItiSJ9BqlH8LfCXe3X1IdcG+S0iLoNaxQWhfZoGzQ== +electron-to-chromium@^1.4.796: + version "1.4.798" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.798.tgz#6a3fcab2edc1e66e3883466f6b4b8944323c0164" + integrity sha512-by9J2CiM9KPGj9qfp5U4FcPSbXJG7FNzqnYaY4WLzX+v2PHieVGmnsA4dxfpGE3QEC7JofpPZmn7Vn1B9NR2+Q== emittery@^0.13.1: version "0.13.1" @@ -6675,7 +6719,7 @@ universalify@^0.2.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== -update-browserslist-db@^1.0.13: +update-browserslist-db@^1.0.13, update-browserslist-db@^1.0.16: version "1.0.16" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz#f6d489ed90fb2f07d67784eb3f53d7891f736356" integrity sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ== From 969ecdb6fb705231f189ce0c5be889467338f4c4 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 11 Jun 2024 12:16:52 +0000 Subject: [PATCH 260/595] Update dependency @types/node to v18.19.34 (#4235) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 3c41c50f07f..ea7478d6785 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2243,9 +2243,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.33" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.33.tgz#98cd286a1b8a5e11aa06623210240bcc28e95c48" - integrity sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A== + version "18.19.34" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.34.tgz#c3fae2bbbdb94b4a52fe2d229d0dccce02ef3d27" + integrity sha512-eXF4pfBNV5DAMKGbI02NnDtWrQ40hAN558/2vvS4gMpMIxaf6JmD7YjnZbq0Q9TDSSkKBamime8ewRoomHdt4g== dependencies: undici-types "~5.26.4" From 10e7a2d997bc6d5f4cbe90a94ac6e95f94bd4fa4 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 11 Jun 2024 12:17:02 +0000 Subject: [PATCH 261/595] Update dependency typedoc-plugin-mdn-links to v3.1.28 (#4236) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index ea7478d6785..a12c02ba5df 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6640,9 +6640,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-PAMYQ4fX7wJo6Y8mMzrISDNRurl5+xSNWEojrt6Yxofb/m7vWrgiP3bid2KXloMlPcSfCoBiJA6F2g3rmu8XTQ== typedoc-plugin-mdn-links@^3.0.3: - version "3.1.27" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.27.tgz#f69f5b45fa3a1f3cbeded801516af98b071e3bf3" - integrity sha512-fpAAvu0LrYc9JPMaab0YcmToaF2NsGCkFhSsNPB1O82VEqwk8MHIytUxQXrY6cn+bgyr2xRqA1Fo2D9mA60Gyw== + version "3.1.29" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.29.tgz#e740f3d1e4ec345a2fceaaf81227d816b2e610cf" + integrity sha512-dFKri2eYa+Owq+/3h3z/GvRQF5yM5kzbPqQWLo0LTIv5s78tFGq+yl8vNGf6CkJGakPBfdnHdfeo4bSsVZH0WQ== typedoc-plugin-missing-exports@^2.0.0: version "2.2.0" From 3eed74f1a64bc5e59517b52bd655be8d4c8d2ce5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 11 Jun 2024 12:26:43 +0000 Subject: [PATCH 262/595] Update dependency uuid to v10 (#4238) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index bc70dc1878c..f63047d53ec 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "p-retry": "4", "sdp-transform": "^2.14.1", "unhomoglyph": "^1.0.6", - "uuid": "9" + "uuid": "10" }, "devDependencies": { "@action-validator/cli": "^0.6.0", diff --git a/yarn.lock b/yarn.lock index a12c02ba5df..71a62c61803 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6742,16 +6742,16 @@ url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" +uuid@10: + version "10.0.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-10.0.0.tgz#5a95aa454e6e002725c79055fd42aaba30ca6294" + integrity sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ== + uuid@8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== -uuid@9: - version "9.0.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30" - integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA== - v8-compile-cache-lib@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" From 5a3d24abc29eefa1f9fed0878e650cfb857bc0df Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 11 Jun 2024 13:15:29 +0000 Subject: [PATCH 263/595] Update typescript-eslint monorepo to v7.12.0 (#4237) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 128 +++++++++++++++++++++++++++--------------------------- 1 file changed, 64 insertions(+), 64 deletions(-) diff --git a/yarn.lock b/yarn.lock index 71a62c61803..14ff03f312c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1563,9 +1563,9 @@ eslint-visitor-keys "^3.3.0" "@eslint-community/regexpp@^4.10.0": - version "4.10.0" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.0.tgz#548f6de556857c8bb73bbee70c35dc82a2e74d63" - integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA== + version "4.10.1" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.1.tgz#361461e5cb3845d874e61731c11cfedd664d83a0" + integrity sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA== "@eslint-community/regexpp@^4.6.1": version "4.6.2" @@ -2297,39 +2297,31 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.11.0.tgz#f90f0914657ead08e1c75f66939c926edeab42dd" - integrity sha512-P+qEahbgeHW4JQ/87FuItjBj8O3MYv5gELDzr8QaQ7fsll1gSMTYb6j87MYyxwf3DtD7uGFB9ShwgmCJB5KmaQ== + version "7.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.0.tgz#3cdeb5d44d051b21a9567535dd90702b2a42c6ff" + integrity sha512-FX1X6AF0w8MdVFLSdqwqN/me2hyhuQg4ykN6ZpVhh1ij/80pTvDKclX1sZB9iqex8SjQfVhwMKs3JtnnMLzG9w== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.11.0" - "@typescript-eslint/type-utils" "7.11.0" - "@typescript-eslint/utils" "7.11.0" - "@typescript-eslint/visitor-keys" "7.11.0" + "@typescript-eslint/scope-manager" "7.13.0" + "@typescript-eslint/type-utils" "7.13.0" + "@typescript-eslint/utils" "7.13.0" + "@typescript-eslint/visitor-keys" "7.13.0" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" "@typescript-eslint/parser@^7.0.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.11.0.tgz#525ad8bee54a8f015f134edd241d91b84ab64839" - integrity sha512-yimw99teuaXVWsBcPO1Ais02kwJ1jmNA1KxE7ng0aT7ndr1pT1wqj0OJnsYVGKKlc4QJai86l/025L6z8CljOg== - dependencies: - "@typescript-eslint/scope-manager" "7.11.0" - "@typescript-eslint/types" "7.11.0" - "@typescript-eslint/typescript-estree" "7.11.0" - "@typescript-eslint/visitor-keys" "7.11.0" + version "7.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.13.0.tgz#9489098d68d57ad392f507495f2b82ce8b8f0a6b" + integrity sha512-EjMfl69KOS9awXXe83iRN7oIEXy9yYdqWfqdrFAYAAr6syP8eLEFI7ZE4939antx2mNgPRW/o1ybm2SFYkbTVA== + dependencies: + "@typescript-eslint/scope-manager" "7.13.0" + "@typescript-eslint/types" "7.13.0" + "@typescript-eslint/typescript-estree" "7.13.0" + "@typescript-eslint/visitor-keys" "7.13.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.11.0.tgz#cf5619b01de62a226a59add15a02bde457335d1d" - integrity sha512-27tGdVEiutD4POirLZX4YzT180vevUURJl4wJGmm6TrQoiYwuxTIY98PBp6L2oN+JQxzE0URvYlzJaBHIekXAw== - dependencies: - "@typescript-eslint/types" "7.11.0" - "@typescript-eslint/visitor-keys" "7.11.0" - "@typescript-eslint/scope-manager@7.12.0": version "7.12.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.12.0.tgz#259c014362de72dd34f995efe6bd8dda486adf58" @@ -2338,33 +2330,41 @@ "@typescript-eslint/types" "7.12.0" "@typescript-eslint/visitor-keys" "7.12.0" -"@typescript-eslint/type-utils@7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.11.0.tgz#ac216697d649084fedf4a910347b9642bd0ff099" - integrity sha512-WmppUEgYy+y1NTseNMJ6mCFxt03/7jTOy08bcg7bxJJdsM4nuhnchyBbE8vryveaJUf62noH7LodPSo5Z0WUCg== +"@typescript-eslint/scope-manager@7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.13.0.tgz#6927d6451537ce648c6af67a2327378d4cc18462" + integrity sha512-ZrMCe1R6a01T94ilV13egvcnvVJ1pxShkE0+NDjDzH4nvG1wXpwsVI5bZCvE7AEDH1mXEx5tJSVR68bLgG7Dng== + dependencies: + "@typescript-eslint/types" "7.13.0" + "@typescript-eslint/visitor-keys" "7.13.0" + +"@typescript-eslint/type-utils@7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.13.0.tgz#4587282b5227a23753ea8b233805ecafc3924c76" + integrity sha512-xMEtMzxq9eRkZy48XuxlBFzpVMDurUAfDu5Rz16GouAtXm0TaAoTFzqWUFPPuQYXI/CDaH/Bgx/fk/84t/Bc9A== dependencies: - "@typescript-eslint/typescript-estree" "7.11.0" - "@typescript-eslint/utils" "7.11.0" + "@typescript-eslint/typescript-estree" "7.13.0" + "@typescript-eslint/utils" "7.13.0" debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.11.0.tgz#5e9702a5e8b424b7fc690e338d359939257d6722" - integrity sha512-MPEsDRZTyCiXkD4vd3zywDCifi7tatc4K37KqTprCvaXptP7Xlpdw0NR2hRJTetG5TxbWDB79Ys4kLmHliEo/w== - "@typescript-eslint/types@7.12.0", "@typescript-eslint/types@^7.2.0": version "7.12.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.12.0.tgz#bf208f971a8da1e7524a5d9ae2b5f15192a37981" integrity sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg== -"@typescript-eslint/typescript-estree@7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.11.0.tgz#7cbc569bc7336c3a494ceaf8204fdee5d5dbb7fa" - integrity sha512-cxkhZ2C/iyi3/6U9EPc5y+a6csqHItndvN/CzbNXTNrsC3/ASoYQZEt9uMaEp+xFNjasqQyszp5TumAVKKvJeQ== +"@typescript-eslint/types@7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.0.tgz#0cca95edf1f1fdb0cfe1bb875e121b49617477c5" + integrity sha512-QWuwm9wcGMAuTsxP+qz6LBBd3Uq8I5Nv8xb0mk54jmNoCyDspnMvVsOxI6IsMmway5d1S9Su2+sCKv1st2l6eA== + +"@typescript-eslint/typescript-estree@7.12.0": + version "7.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.12.0.tgz#e6c1074f248b3db6573ab6a7c47a39c4cd498ff9" + integrity sha512-5bwqLsWBULv1h6pn7cMW5dXX/Y2amRqLaKqsASVwbBHMZSnHqE/HN4vT4fE0aFsiwxYvr98kqOWh1a8ZKXalCQ== dependencies: - "@typescript-eslint/types" "7.11.0" - "@typescript-eslint/visitor-keys" "7.11.0" + "@typescript-eslint/types" "7.12.0" + "@typescript-eslint/visitor-keys" "7.12.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2372,13 +2372,13 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/typescript-estree@7.12.0": - version "7.12.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.12.0.tgz#e6c1074f248b3db6573ab6a7c47a39c4cd498ff9" - integrity sha512-5bwqLsWBULv1h6pn7cMW5dXX/Y2amRqLaKqsASVwbBHMZSnHqE/HN4vT4fE0aFsiwxYvr98kqOWh1a8ZKXalCQ== +"@typescript-eslint/typescript-estree@7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.0.tgz#4cc24fc155088ebf3b3adbad62c7e60f72c6de1c" + integrity sha512-cAvBvUoobaoIcoqox1YatXOnSl3gx92rCZoMRPzMNisDiM12siGilSM4+dJAekuuHTibI2hVC2fYK79iSFvWjw== dependencies: - "@typescript-eslint/types" "7.12.0" - "@typescript-eslint/visitor-keys" "7.12.0" + "@typescript-eslint/types" "7.13.0" + "@typescript-eslint/visitor-keys" "7.13.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2386,15 +2386,15 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.11.0.tgz#524f047f2209959424c3ef689b0d83b3bc09919c" - integrity sha512-xlAWwPleNRHwF37AhrZurOxA1wyXowW4PqVXZVUNCLjB48CqdPJoJWkrpH2nij9Q3Lb7rtWindtoXwxjxlKKCA== +"@typescript-eslint/utils@7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.13.0.tgz#f84e7e8aeceae945a9a3f40d077fd95915308004" + integrity sha512-jceD8RgdKORVnB4Y6BqasfIkFhl4pajB1wVxrF4akxD2QPM8GNYjgGwEzYS+437ewlqqrg7Dw+6dhdpjMpeBFQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.11.0" - "@typescript-eslint/types" "7.11.0" - "@typescript-eslint/typescript-estree" "7.11.0" + "@typescript-eslint/scope-manager" "7.13.0" + "@typescript-eslint/types" "7.13.0" + "@typescript-eslint/typescript-estree" "7.13.0" "@typescript-eslint/utils@^6.0.0 || ^7.0.0": version "7.12.0" @@ -2406,14 +2406,6 @@ "@typescript-eslint/types" "7.12.0" "@typescript-eslint/typescript-estree" "7.12.0" -"@typescript-eslint/visitor-keys@7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.11.0.tgz#2c50cd292e67645eec05ac0830757071b4a4d597" - integrity sha512-7syYk4MzjxTEk0g/w3iqtgxnFQspDJfn6QKD36xMuuhTzjcxY7F8EmBLnALjVyaOF1/bVocu3bS/2/F7rXrveQ== - dependencies: - "@typescript-eslint/types" "7.11.0" - eslint-visitor-keys "^3.4.3" - "@typescript-eslint/visitor-keys@7.12.0": version "7.12.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.12.0.tgz#c053b55a996679528beeedd8e565710ce1ae1ad3" @@ -2422,6 +2414,14 @@ "@typescript-eslint/types" "7.12.0" eslint-visitor-keys "^3.4.3" +"@typescript-eslint/visitor-keys@7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.0.tgz#2eb7ce8eb38c2b0d4a494d1fe1908e7071a1a353" + integrity sha512-nxn+dozQx+MK61nn/JP+M4eCkHDSxSLDpgE3WcQo0+fkjEolnaB5jswvIKC4K56By8MMgIho7f1PVxERHEo8rw== + dependencies: + "@typescript-eslint/types" "7.13.0" + eslint-visitor-keys "^3.4.3" + "@ungap/structured-clone@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" From 4cb851c51a296bed4975c4f8d9188c6f2ff556e9 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 13 Jun 2024 16:01:33 +0100 Subject: [PATCH 264/595] Replace usages of setImmediate with setTimeout for wider compatibility (#4240) Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- .eslintrc.js | 16 ++++++++++++++++ spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 4 ++-- src/utils.ts | 5 ++++- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index b751ebc8c42..7e70255af37 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -49,6 +49,22 @@ module.exports = { }, ], + "no-restricted-properties": [ + "error", + { + object: "window", + property: "setImmediate", + message: "Use setTimeout instead.", + }, + ], + "no-restricted-globals": [ + "error", + { + name: "setImmediate", + message: "Use setTimeout instead.", + }, + ], + "import/no-restricted-paths": [ "error", { diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index d061c60d0cb..b994613b5bb 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -489,7 +489,7 @@ describe("MatrixRTCSession", () => { }); it("Doesn't re-send key immediately", async () => { - const realSetImmediate = setImmediate; + const realSetTimeout = setTimeout; jest.useFakeTimers(); try { const mockRoom = makeMockRoom([membershipTemplate]); @@ -517,7 +517,7 @@ describe("MatrixRTCSession", () => { sess.onMembershipUpdate(); await new Promise((resolve) => { - realSetImmediate(resolve); + realSetTimeout(resolve); }); expect(sendEventMock).not.toHaveBeenCalled(); diff --git a/src/utils.ts b/src/utils.ts index f3ad18d5735..1d4505f4bb4 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -407,9 +407,12 @@ export async function logDuration(logger: BaseLogger, name: string, block: () /** * Promise/async version of {@link setImmediate}. + * + * Implementation is based on `setTimeout` for wider compatibility. + * @deprecated Use {@link sleep} instead. */ export function immediate(): Promise { - return new Promise(setImmediate); + return new Promise((resolve) => setTimeout(resolve)); } export function isNullOrUndefined(val: any): boolean { From 661ba76763c412d0d400a8b5ba80ab646e8dc492 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Thu, 13 Jun 2024 11:03:25 -0600 Subject: [PATCH 265/595] Use stable endpoints for MSC3916 (#4239) * Use stable endpoints for MSC3916 * appease the linter --- README.md | 2 +- spec/unit/content-repo.spec.ts | 10 ++++------ src/content-repo.ts | 8 +++----- 3 files changed, 8 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index f958333276d..24b2334a8ad 100644 --- a/README.md +++ b/README.md @@ -95,7 +95,7 @@ Object.keys(client.store.rooms).forEach((roomId) => { ## Authenticated media -Servers supporting [MSC3916](https://github.com/matrix-org/matrix-spec-proposals/pull/3916) will require clients, like +Servers supporting [MSC3916](https://github.com/matrix-org/matrix-spec-proposals/pull/3916) (Matrix 1.11) will require clients, like yours, to include an `Authorization` header when `/download`ing or `/thumbnail`ing media. For NodeJS environments this may be as easy as the following code snippet, though web browsers may need to use [Service Workers](https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API) to append the header when using the endpoints in `` elements and similar. diff --git a/spec/unit/content-repo.spec.ts b/spec/unit/content-repo.spec.ts index e0f0b5e0c76..23f504c1e43 100644 --- a/spec/unit/content-repo.spec.ts +++ b/spec/unit/content-repo.spec.ts @@ -80,24 +80,22 @@ describe("ContentRepo", function () { it("should return an authenticated URL when requested", function () { const mxcUri = "mxc://server.name/resourceid"; expect(getHttpUriForMxc(baseUrl, mxcUri, undefined, undefined, undefined, undefined, true, true)).toEqual( - baseUrl + - "/_matrix/client/unstable/org.matrix.msc3916/media/download/server.name/resourceid?allow_redirect=true", + baseUrl + "/_matrix/client/v1/media/download/server.name/resourceid?allow_redirect=true", ); expect(getHttpUriForMxc(baseUrl, mxcUri, 64, 64, "scale", undefined, true, true)).toEqual( baseUrl + - "/_matrix/client/unstable/org.matrix.msc3916/media/thumbnail/server.name/resourceid?width=64&height=64&method=scale&allow_redirect=true", + "/_matrix/client/v1/media/thumbnail/server.name/resourceid?width=64&height=64&method=scale&allow_redirect=true", ); }); it("should force-enable allow_redirects when useAuthentication is set true", function () { const mxcUri = "mxc://server.name/resourceid"; expect(getHttpUriForMxc(baseUrl, mxcUri, undefined, undefined, undefined, undefined, false, true)).toEqual( - baseUrl + - "/_matrix/client/unstable/org.matrix.msc3916/media/download/server.name/resourceid?allow_redirect=true", + baseUrl + "/_matrix/client/v1/media/download/server.name/resourceid?allow_redirect=true", ); expect(getHttpUriForMxc(baseUrl, mxcUri, 64, 64, "scale", undefined, false, true)).toEqual( baseUrl + - "/_matrix/client/unstable/org.matrix.msc3916/media/thumbnail/server.name/resourceid?width=64&height=64&method=scale&allow_redirect=true", + "/_matrix/client/v1/media/thumbnail/server.name/resourceid?width=64&height=64&method=scale&allow_redirect=true", ); }); }); diff --git a/src/content-repo.ts b/src/content-repo.ts index eaa119f97cd..b127f6d2be5 100644 --- a/src/content-repo.ts +++ b/src/content-repo.ts @@ -62,7 +62,7 @@ export function getHttpUriForMxc( if (useAuthentication) { allowRedirects = true; // per docs (MSC3916 always expects redirects) - // Dev note: MSC3916 (as of writing) removes `allow_redirect` entirely, but + // Dev note: MSC3916 removes `allow_redirect` entirely, but // for explicitness we set it here. This makes it slightly more obvious to // callers, hopefully. } @@ -70,8 +70,7 @@ export function getHttpUriForMxc( let serverAndMediaId = mxc.slice(6); // strips mxc:// let prefix: string; if (useAuthentication) { - // TODO: Use stable once available (requires FCP on MSC3916). - prefix = "/_matrix/client/unstable/org.matrix.msc3916/media/download/"; + prefix = "/_matrix/client/v1/media/download/"; } else { prefix = "/_matrix/media/v3/download/"; } @@ -90,8 +89,7 @@ export function getHttpUriForMxc( // these are thumbnailing params so they probably want the // thumbnailing API... if (useAuthentication) { - // TODO: Use stable once available (requires FCP on MSC3916). - prefix = "/_matrix/client/unstable/org.matrix.msc3916/media/thumbnail/"; + prefix = "/_matrix/client/v1/media/thumbnail/"; } else { prefix = "/_matrix/media/v3/thumbnail/"; } From 9218f6380ce6ddd3944e9d945a0887d007df9d4d Mon Sep 17 00:00:00 2001 From: David Baker Date: Thu, 13 Jun 2024 19:44:30 +0100 Subject: [PATCH 266/595] Fix screen sharing in recent Chrome (#4241) * Fix screen sharing in recent Chrome Dreadful hack to work around a bug in recent chrome/electron's WebRTC, as explained. I'm not sure which is the least hideous out of this (ie. repeatedly calling setCodecPreferences and seeing if it crashes each time) or hardcoding the bad codec and skipping it. Opinions welcome. * Unused import * Remove commented line --- src/webrtc/call.ts | 40 +++++++++++++++++++++++++++++----------- 1 file changed, 29 insertions(+), 11 deletions(-) diff --git a/src/webrtc/call.ts b/src/webrtc/call.ts index 45d35f60c9f..3f5c61a9e23 100644 --- a/src/webrtc/call.ts +++ b/src/webrtc/call.ts @@ -2381,22 +2381,40 @@ export class MatrixCall extends TypedEventEmitter => { From 2ee43cade71c780b1b03c88f851c90f137d5c624 Mon Sep 17 00:00:00 2001 From: ElementRobot Date: Thu, 13 Jun 2024 20:54:53 +0100 Subject: [PATCH 267/595] [Backport staging] Fix screen sharing in recent Chrome (#4243) Co-authored-by: David Baker --- src/webrtc/call.ts | 40 +++++++++++++++++++++++++++++----------- 1 file changed, 29 insertions(+), 11 deletions(-) diff --git a/src/webrtc/call.ts b/src/webrtc/call.ts index 45d35f60c9f..3f5c61a9e23 100644 --- a/src/webrtc/call.ts +++ b/src/webrtc/call.ts @@ -2381,22 +2381,40 @@ export class MatrixCall extends TypedEventEmitter => { From 222e95d33f014f576e6e0caf2f66caeba2e97629 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Fri, 14 Jun 2024 12:18:37 +0000 Subject: [PATCH 268/595] v33.1.0-rc.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 9674546c0fd..15aaa4c7fa4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "33.1.0-rc.0", + "version": "33.1.0-rc.1", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 7ecaa53e348723386ce77f81c8d3535e96801c30 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 17 Jun 2024 10:30:13 +0100 Subject: [PATCH 269/595] Work around spec bug for m.room.avatar state event content type (#4245) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/@types/state_events.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/@types/state_events.ts b/src/@types/state_events.ts index 415f2806a75..36e86f53738 100644 --- a/src/@types/state_events.ts +++ b/src/@types/state_events.ts @@ -95,7 +95,9 @@ export interface RoomTopicEventContent { export interface RoomAvatarEventContent { url?: string; - info?: ImageInfo; + // The spec says that an encrypted file can be used for the thumbnail but this isn't true + // https://github.com/matrix-org/matrix-spec/issues/562 so omit those fields + info?: Omit; } export interface RoomPinnedEventsEventContent { From d754392410a23526ce65fd2fd6b04bfac989b666 Mon Sep 17 00:00:00 2001 From: Timo <16718859+toger5@users.noreply.github.com> Date: Mon, 17 Jun 2024 15:02:29 +0200 Subject: [PATCH 270/595] Make the js-sdk compatible with MSC preferred foci and active focus. (#4195) * Refactor to preferred and active foci. Signed-off-by: Timo K * make the sdk compatible with MSC4143 but still be backwards compatible * comment fixes * also fallback to legacy if the current member event is legacy * use XOR types * use EitherAnd * make livekit Foucs types simpler * review * fix tests * test work * more review + more tests * remove unnecassary await that is in conflict with the comment * make joinRoomSession sync * Update src/matrixrtc/MatrixRTCSession.ts Co-authored-by: Andrew Ferrazzutti * review * fix * test * review * review * comment clarification * typo --------- Signed-off-by: Timo K Co-authored-by: Andrew Ferrazzutti --- spec/unit/matrixrtc/CallMembership.spec.ts | 236 ++++++++++------ spec/unit/matrixrtc/LivekitFocus.spec.ts | 60 ++++ spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 93 +++++-- .../matrixrtc/MatrixRTCSessionManager.spec.ts | 1 + src/@types/event.ts | 6 +- src/matrixrtc/CallMembership.ts | 181 ++++++++---- src/matrixrtc/LivekitFocus.ts | 39 +++ src/matrixrtc/MatrixRTCSession.ts | 260 ++++++++++++------ src/matrixrtc/MatrixRTCSessionManager.ts | 6 +- src/matrixrtc/focus.ts | 1 + 10 files changed, 649 insertions(+), 234 deletions(-) create mode 100644 spec/unit/matrixrtc/LivekitFocus.spec.ts create mode 100644 src/matrixrtc/LivekitFocus.ts diff --git a/spec/unit/matrixrtc/CallMembership.spec.ts b/spec/unit/matrixrtc/CallMembership.spec.ts index 3d259103cc5..bf6ded10abf 100644 --- a/spec/unit/matrixrtc/CallMembership.spec.ts +++ b/spec/unit/matrixrtc/CallMembership.spec.ts @@ -15,16 +15,7 @@ limitations under the License. */ import { MatrixEvent } from "../../../src"; -import { CallMembership, CallMembershipData } from "../../../src/matrixrtc/CallMembership"; - -const membershipTemplate: CallMembershipData = { - call_id: "", - scope: "m.room", - application: "m.call", - device_id: "AAAAAAA", - expires: 5000, - membershipID: "bloop", -}; +import { CallMembership, CallMembershipDataLegacy, SessionMembershipData } from "../../../src/matrixrtc/CallMembership"; function makeMockEvent(originTs = 0): MatrixEvent { return { @@ -34,96 +25,175 @@ function makeMockEvent(originTs = 0): MatrixEvent { } describe("CallMembership", () => { - it("rejects membership with no expiry and no expires_ts", () => { - expect(() => { - new CallMembership( - makeMockEvent(), - Object.assign({}, membershipTemplate, { expires: undefined, expires_ts: undefined }), + describe("CallMembershipDataLegacy", () => { + const membershipTemplate: CallMembershipDataLegacy = { + call_id: "", + scope: "m.room", + application: "m.call", + device_id: "AAAAAAA", + expires: 5000, + membershipID: "bloop", + foci_active: [{ type: "livekit" }], + }; + it("rejects membership with no expiry and no expires_ts", () => { + expect(() => { + new CallMembership( + makeMockEvent(), + Object.assign({}, membershipTemplate, { expires: undefined, expires_ts: undefined }), + ); + }).toThrow(); + }); + + it("rejects membership with no device_id", () => { + expect(() => { + new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { device_id: undefined })); + }).toThrow(); + }); + + it("rejects membership with no call_id", () => { + expect(() => { + new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { call_id: undefined })); + }).toThrow(); + }); + + it("allow membership with no scope", () => { + expect(() => { + new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { scope: undefined })); + }).not.toThrow(); + }); + it("rejects with malformatted expires_ts", () => { + expect(() => { + new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { expires_ts: "string" })); + }).toThrow(); + }); + it("rejects with malformatted expires", () => { + expect(() => { + new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { expires: "string" })); + }).toThrow(); + }); + + it("uses event timestamp if no created_ts", () => { + const membership = new CallMembership(makeMockEvent(12345), membershipTemplate); + expect(membership.createdTs()).toEqual(12345); + }); + + it("uses created_ts if present", () => { + const membership = new CallMembership( + makeMockEvent(12345), + Object.assign({}, membershipTemplate, { created_ts: 67890 }), ); - }).toThrow(); - }); + expect(membership.createdTs()).toEqual(67890); + }); - it("rejects membership with no device_id", () => { - expect(() => { - new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { device_id: undefined })); - }).toThrow(); - }); + it("computes absolute expiry time based on expires", () => { + const membership = new CallMembership(makeMockEvent(1000), membershipTemplate); + expect(membership.getAbsoluteExpiry()).toEqual(5000 + 1000); + }); - it("rejects membership with no call_id", () => { - expect(() => { - new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { call_id: undefined })); - }).toThrow(); - }); + it("computes absolute expiry time based on expires_ts", () => { + const membership = new CallMembership( + makeMockEvent(1000), + Object.assign({}, membershipTemplate, { expires_ts: 6000 }), + ); + expect(membership.getAbsoluteExpiry()).toEqual(5000 + 1000); + }); - it("rejects membership with no scope", () => { - expect(() => { - new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { scope: undefined })); - }).toThrow(); - }); - it("rejects with malformatted expires_ts", () => { - expect(() => { - new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { expires_ts: "string" })); - }).toThrow(); - }); - it("rejects with malformatted expires", () => { - expect(() => { - new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { expires: "string" })); - }).toThrow(); - }); + it("considers memberships unexpired if local age low enough", () => { + const fakeEvent = makeMockEvent(1000); + fakeEvent.getLocalAge = jest.fn().mockReturnValue(3000); + const membership = new CallMembership(fakeEvent, membershipTemplate); + expect(membership.isExpired()).toEqual(false); + }); - it("uses event timestamp if no created_ts", () => { - const membership = new CallMembership(makeMockEvent(12345), membershipTemplate); - expect(membership.createdTs()).toEqual(12345); - }); + it("considers memberships expired when local age large", () => { + const fakeEvent = makeMockEvent(1000); + fakeEvent.localTimestamp = Date.now() - 6000; + const membership = new CallMembership(fakeEvent, membershipTemplate); + expect(membership.isExpired()).toEqual(true); + }); - it("uses created_ts if present", () => { - const membership = new CallMembership( - makeMockEvent(12345), - Object.assign({}, membershipTemplate, { created_ts: 67890 }), - ); - expect(membership.createdTs()).toEqual(67890); + it("returns preferred foci", () => { + const fakeEvent = makeMockEvent(); + const mockFocus = { type: "this_is_a_mock_focus" }; + const membership = new CallMembership( + fakeEvent, + Object.assign({}, membershipTemplate, { foci_active: [mockFocus] }), + ); + expect(membership.getPreferredFoci()).toEqual([mockFocus]); + }); }); - it("computes absolute expiry time based on expires", () => { - const membership = new CallMembership(makeMockEvent(1000), membershipTemplate); - expect(membership.getAbsoluteExpiry()).toEqual(5000 + 1000); - }); + describe("SessionMembershipData", () => { + const membershipTemplate: SessionMembershipData = { + call_id: "", + scope: "m.room", + application: "m.call", + device_id: "AAAAAAA", + focus_active: { type: "livekit" }, + foci_preferred: [{ type: "livekit" }], + }; + + it("rejects membership with no device_id", () => { + expect(() => { + new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { device_id: undefined })); + }).toThrow(); + }); - it("computes absolute expiry time based on expires_ts", () => { - const membership = new CallMembership( - makeMockEvent(1000), - Object.assign({}, membershipTemplate, { expires: undefined, expires_ts: 6000 }), - ); - expect(membership.getAbsoluteExpiry()).toEqual(5000 + 1000); - }); + it("rejects membership with no call_id", () => { + expect(() => { + new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { call_id: undefined })); + }).toThrow(); + }); - it("considers memberships unexpired if local age low enough", () => { - const fakeEvent = makeMockEvent(1000); - fakeEvent.getLocalAge = jest.fn().mockReturnValue(3000); - const membership = new CallMembership(fakeEvent, membershipTemplate); - expect(membership.isExpired()).toEqual(false); - }); + it("allow membership with no scope", () => { + expect(() => { + new CallMembership(makeMockEvent(), Object.assign({}, membershipTemplate, { scope: undefined })); + }).not.toThrow(); + }); - it("considers memberships expired when local age large", () => { - const fakeEvent = makeMockEvent(1000); - fakeEvent.localTimestamp = Date.now() - 6000; - const membership = new CallMembership(fakeEvent, membershipTemplate); - expect(membership.isExpired()).toEqual(true); - }); + it("uses event timestamp if no created_ts", () => { + const membership = new CallMembership(makeMockEvent(12345), membershipTemplate); + expect(membership.createdTs()).toEqual(12345); + }); + + it("uses created_ts if present", () => { + const membership = new CallMembership( + makeMockEvent(12345), + Object.assign({}, membershipTemplate, { created_ts: 67890 }), + ); + expect(membership.createdTs()).toEqual(67890); + }); + + it("considers memberships unexpired if local age low enough", () => { + const fakeEvent = makeMockEvent(1000); + fakeEvent.getLocalAge = jest.fn().mockReturnValue(3000); + const membership = new CallMembership(fakeEvent, membershipTemplate); + expect(membership.isExpired()).toEqual(false); + }); - it("returns active foci", () => { - const fakeEvent = makeMockEvent(); - const mockFocus = { type: "this_is_a_mock_focus" }; - const membership = new CallMembership( - fakeEvent, - Object.assign({}, membershipTemplate, { foci_active: [mockFocus] }), - ); - expect(membership.getActiveFoci()).toEqual([mockFocus]); + it("returns preferred foci", () => { + const fakeEvent = makeMockEvent(); + const mockFocus = { type: "this_is_a_mock_focus" }; + const membership = new CallMembership( + fakeEvent, + Object.assign({}, membershipTemplate, { foci_preferred: [mockFocus] }), + ); + expect(membership.getPreferredFoci()).toEqual([mockFocus]); + }); }); describe("expiry calculation", () => { let fakeEvent: MatrixEvent; let membership: CallMembership; + const membershipTemplate: CallMembershipDataLegacy = { + call_id: "", + scope: "m.room", + application: "m.call", + device_id: "AAAAAAA", + expires: 5000, + membershipID: "bloop", + foci_active: [{ type: "livekit" }], + }; beforeEach(() => { // server origin timestamp for this event is 1000 diff --git a/spec/unit/matrixrtc/LivekitFocus.spec.ts b/spec/unit/matrixrtc/LivekitFocus.spec.ts new file mode 100644 index 00000000000..728d6a68de6 --- /dev/null +++ b/spec/unit/matrixrtc/LivekitFocus.spec.ts @@ -0,0 +1,60 @@ +/* +Copyright 2023 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { isLivekitFocus, isLivekitFocusActive, isLivekitFocusConfig } from "../../../src/matrixrtc/LivekitFocus"; + +describe("LivekitFocus", () => { + it("isLivekitFocus", () => { + expect( + isLivekitFocus({ + type: "livekit", + livekit_service_url: "http://test.com", + livekit_alias: "test", + }), + ).toBeTruthy(); + expect(isLivekitFocus({ type: "livekit" })).toBeFalsy(); + expect( + isLivekitFocus({ type: "not-livekit", livekit_service_url: "http://test.com", livekit_alias: "test" }), + ).toBeFalsy(); + expect( + isLivekitFocus({ type: "livekit", other_service_url: "http://test.com", livekit_alias: "test" }), + ).toBeFalsy(); + expect( + isLivekitFocus({ type: "livekit", livekit_service_url: "http://test.com", other_alias: "test" }), + ).toBeFalsy(); + }); + it("isLivekitFocusActive", () => { + expect( + isLivekitFocusActive({ + type: "livekit", + focus_selection: "oldest_membership", + }), + ).toBeTruthy(); + expect(isLivekitFocusActive({ type: "livekit" })).toBeFalsy(); + expect(isLivekitFocusActive({ type: "not-livekit", focus_selection: "oldest_membership" })).toBeFalsy(); + }); + it("isLivekitFocusConfig", () => { + expect( + isLivekitFocusConfig({ + type: "livekit", + livekit_service_url: "http://test.com", + }), + ).toBeTruthy(); + expect(isLivekitFocusConfig({ type: "livekit" })).toBeFalsy(); + expect(isLivekitFocusConfig({ type: "not-livekit", livekit_service_url: "http://test.com" })).toBeFalsy(); + expect(isLivekitFocusConfig({ type: "livekit", other_service_url: "oldest_membership" })).toBeFalsy(); + }); +}); diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index b994613b5bb..e481be966d3 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -29,6 +29,7 @@ const membershipTemplate: CallMembershipData = { device_id: "AAAAAAA", expires: 60 * 60 * 1000, membershipID: "bloop", + foci_active: [{ type: "livekit", livekit_service_url: "https://lk.url" }], }; const mockFocus = { type: "mock" }; @@ -198,6 +199,64 @@ describe("MatrixRTCSession", () => { }); }); + describe("getsActiveFocus", () => { + const activeFociConfig = { type: "livekit", livekit_service_url: "https://active.url" }; + it("gets the correct active focus with oldest_membership", () => { + const mockRoom = makeMockRoom([ + Object.assign({}, membershipTemplate, { + device_id: "foo", + created_ts: 500, + foci_active: [activeFociConfig], + }), + Object.assign({}, membershipTemplate, { device_id: "old", created_ts: 1000 }), + Object.assign({}, membershipTemplate, { device_id: "bar", created_ts: 2000 }), + ]); + + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + + sess.joinRoomSession([{ type: "livekit", livekit_service_url: "htts://test.org" }], { + type: "livekit", + focus_selection: "oldest_membership", + }); + expect(sess.getActiveFocus()).toBe(activeFociConfig); + }); + it("does not provide focus if the selction method is unknown", () => { + const mockRoom = makeMockRoom([ + Object.assign({}, membershipTemplate, { + device_id: "foo", + created_ts: 500, + foci_active: [activeFociConfig], + }), + Object.assign({}, membershipTemplate, { device_id: "old", created_ts: 1000 }), + Object.assign({}, membershipTemplate, { device_id: "bar", created_ts: 2000 }), + ]); + + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + + sess.joinRoomSession([{ type: "livekit", livekit_service_url: "htts://test.org" }], { + type: "livekit", + focus_selection: "unknown", + }); + expect(sess.getActiveFocus()).toBe(undefined); + }); + it("gets the correct active focus legacy", () => { + const mockRoom = makeMockRoom([ + Object.assign({}, membershipTemplate, { + device_id: "foo", + created_ts: 500, + foci_active: [activeFociConfig], + }), + Object.assign({}, membershipTemplate, { device_id: "old", created_ts: 1000 }), + Object.assign({}, membershipTemplate, { device_id: "bar", created_ts: 2000 }), + ]); + + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + + sess.joinRoomSession([{ type: "livekit", livekit_service_url: "htts://test.org" }]); + expect(sess.getActiveFocus()).toBe(activeFociConfig); + }); + }); + describe("joining", () => { let mockRoom: Room; let sendStateEventMock: jest.Mock; @@ -223,13 +282,13 @@ describe("MatrixRTCSession", () => { }); it("shows joined once join is called", () => { - sess!.joinRoomSession([mockFocus]); + sess!.joinRoomSession([mockFocus], mockFocus); expect(sess!.isJoined()).toEqual(true); }); it("sends a membership event when joining a call", () => { jest.useFakeTimers(); - sess!.joinRoomSession([mockFocus]); + sess!.joinRoomSession([mockFocus], mockFocus); expect(client.sendStateEvent).toHaveBeenCalledWith( mockRoom!.roomId, EventType.GroupCallMemberPrefix, @@ -242,7 +301,8 @@ describe("MatrixRTCSession", () => { device_id: "AAAAAAA", expires: 3600000, expires_ts: Date.now() + 3600000, - foci_active: [{ type: "mock" }], + foci_active: [mockFocus], + membershipID: expect.stringMatching(".*"), }, ], @@ -253,11 +313,11 @@ describe("MatrixRTCSession", () => { }); it("does nothing if join called when already joined", () => { - sess!.joinRoomSession([mockFocus]); + sess!.joinRoomSession([mockFocus], mockFocus); expect(client.sendStateEvent).toHaveBeenCalledTimes(1); - sess!.joinRoomSession([mockFocus]); + sess!.joinRoomSession([mockFocus], mockFocus); expect(client.sendStateEvent).toHaveBeenCalledTimes(1); }); @@ -274,7 +334,7 @@ describe("MatrixRTCSession", () => { const sendStateEventMock = jest.fn().mockImplementation(resolveFn); client.sendStateEvent = sendStateEventMock; - sess!.joinRoomSession([mockFocus]); + sess!.joinRoomSession([mockFocus], mockFocus); const eventContent = await eventSentPromise; @@ -308,7 +368,7 @@ describe("MatrixRTCSession", () => { device_id: "AAAAAAA", expires: 3600000 * 2, expires_ts: 1000 + 3600000 * 2, - foci_active: [{ type: "mock" }], + foci_active: [mockFocus], created_ts: 1000, membershipID: expect.stringMatching(".*"), }, @@ -322,7 +382,7 @@ describe("MatrixRTCSession", () => { }); it("creates a key when joining", () => { - sess!.joinRoomSession([mockFocus], true); + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); const keys = sess?.getKeysForParticipant("@alice:example.org", "AAAAAAA"); expect(keys).toHaveLength(1); @@ -336,7 +396,7 @@ describe("MatrixRTCSession", () => { sendEventMock.mockImplementation(resolve); }); - sess!.joinRoomSession([mockFocus], true); + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); await eventSentPromise; @@ -372,7 +432,7 @@ describe("MatrixRTCSession", () => { }); }); - sess!.joinRoomSession([mockFocus], true); + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); jest.advanceTimersByTime(10000); await eventSentPromise; @@ -394,7 +454,7 @@ describe("MatrixRTCSession", () => { throw e; }); - sess!.joinRoomSession([mockFocus], true); + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); expect(client.cancelPendingEvent).toHaveBeenCalledWith(eventSentinel); }); @@ -409,7 +469,7 @@ describe("MatrixRTCSession", () => { sendEventMock.mockImplementation(resolve); }); - sess.joinRoomSession([mockFocus], true); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); await keysSentPromise1; sendEventMock.mockClear(); @@ -462,7 +522,7 @@ describe("MatrixRTCSession", () => { sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); }); - sess.joinRoomSession([mockFocus], true); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); const firstKeysPayload = await keysSentPromise1; expect(firstKeysPayload.keys).toHaveLength(1); @@ -499,7 +559,7 @@ describe("MatrixRTCSession", () => { sendEventMock.mockImplementation(resolve); }); - sess.joinRoomSession([mockFocus], true); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); await keysSentPromise1; sendEventMock.mockClear(); @@ -595,7 +655,7 @@ describe("MatrixRTCSession", () => { jest.advanceTimersByTime(10000); - sess.joinRoomSession([mockFocus]); + sess.joinRoomSession([mockFocus], mockFocus); expect(client.sendStateEvent).toHaveBeenCalledWith( mockRoomNoExpired!.roomId, @@ -631,7 +691,7 @@ describe("MatrixRTCSession", () => { ]); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - sess.joinRoomSession([mockFocus]); + sess.joinRoomSession([mockFocus], mockFocus); expect(client.sendStateEvent).toHaveBeenCalledWith( mockRoom!.roomId, @@ -645,6 +705,7 @@ describe("MatrixRTCSession", () => { device_id: "OTHERDEVICE", expires: 3600000, created_ts: 1000, + foci_active: [{ type: "livekit", livekit_service_url: "https://lk.url" }], membershipID: expect.stringMatching(".*"), }, { diff --git a/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts b/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts index f5ffc13e05b..c2e6fc52f45 100644 --- a/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts @@ -35,6 +35,7 @@ const membershipTemplate: CallMembershipData = { device_id: "AAAAAAA", expires: 60 * 60 * 1000, membershipID: "bloop", + foci_active: [{ type: "test" }], }; describe("MatrixRTCSessionManager", () => { diff --git a/src/@types/event.ts b/src/@types/event.ts index 44ef4c1434c..c01fc40d3e8 100644 --- a/src/@types/event.ts +++ b/src/@types/event.ts @@ -57,6 +57,7 @@ import { } from "../webrtc/callEventTypes"; import { EncryptionKeysEventContent, ICallNotifyContent } from "../matrixrtc/types"; import { M_POLL_END, M_POLL_START, PollEndEventContent, PollStartEventContent } from "./polls"; +import { SessionMembershipData } from "../matrixrtc/CallMembership"; export enum EventType { // Room state events @@ -356,7 +357,10 @@ export interface StateEvents { // MSC3401 [EventType.GroupCallPrefix]: IGroupCallRoomState; - [EventType.GroupCallMemberPrefix]: XOR; + [EventType.GroupCallMemberPrefix]: XOR< + XOR, + XOR + >; // MSC3089 [UNSTABLE_MSC3089_BRANCH.name]: MSC3089EventContent; diff --git a/src/matrixrtc/CallMembership.ts b/src/matrixrtc/CallMembership.ts index 171751f1d1f..52893841d89 100644 --- a/src/matrixrtc/CallMembership.ts +++ b/src/matrixrtc/CallMembership.ts @@ -14,52 +14,114 @@ See the License for the specific language governing permissions and limitations under the License. */ +import { EitherAnd } from "matrix-events-sdk/lib/types"; + import { MatrixEvent } from "../matrix"; import { deepCompare } from "../utils"; import { Focus } from "./focus"; +import { isLivekitFocusActive } from "./LivekitFocus"; type CallScope = "m.room" | "m.user"; - // Represents an entry in the memberships section of an m.call.member event as it is on the wire -export interface CallMembershipData { - application?: string; + +// There are two different data interfaces. One for the Legacy types and one compliant with MSC4143 + +// MSC4143 (MatrixRTC) session membership data + +export type SessionMembershipData = { + application: string; + call_id: string; + device_id: string; + + focus_active: Focus; + foci_preferred: Focus[]; + created_ts?: number; + + // Application specific data + scope?: CallScope; +}; + +export const isSessionMembershipData = (data: CallMembershipData): data is SessionMembershipData => + "focus_active" in data; + +const checkSessionsMembershipData = (data: any, errors: string[]): data is SessionMembershipData => { + const prefix = "Malformed session membership event: "; + if (typeof data.device_id !== "string") errors.push(prefix + "device_id must be string"); + if (typeof data.call_id !== "string") errors.push(prefix + "call_id must be string"); + if (typeof data.application !== "string") errors.push(prefix + "application must be a string"); + if (typeof data.focus_active?.type !== "string") errors.push(prefix + "focus_active.type must be a string"); + if (!Array.isArray(data.foci_preferred)) errors.push(prefix + "foci_preferred must be an array"); + // optional parameters + if (data.created_ts && typeof data.created_ts !== "number") errors.push(prefix + "created_ts must be number"); + + // application specific data (we first need to check if they exist) + if (data.scope && typeof data.scope !== "string") errors.push(prefix + "scope must be string"); + return errors.length === 0; +}; + +// Legacy session membership data + +export type CallMembershipDataLegacy = { + application: string; call_id: string; scope: CallScope; device_id: string; + membershipID: string; created_ts?: number; - expires?: number; - expires_ts?: number; foci_active?: Focus[]; - membershipID: string; -} +} & EitherAnd<{ expires: number }, { expires_ts: number }>; + +export const isLegacyCallMembershipData = (data: CallMembershipData): data is CallMembershipDataLegacy => + "membershipID" in data; + +const checkCallMembershipDataLegacy = (data: any, errors: string[]): data is CallMembershipDataLegacy => { + const prefix = "Malformed legacy rtc membership event: "; + if (!("expires" in data || "expires_ts" in data)) { + errors.push(prefix + "expires_ts or expires must be present"); + } + if ("expires" in data) { + if (typeof data.expires !== "number") { + errors.push(prefix + "expires must be numeric"); + } + } + if ("expires_ts" in data) { + if (typeof data.expires_ts !== "number") { + errors.push(prefix + "expires_ts must be numeric"); + } + } + + if (typeof data.device_id !== "string") errors.push(prefix + "device_id must be string"); + if (typeof data.call_id !== "string") errors.push(prefix + "call_id must be string"); + if (typeof data.application !== "string") errors.push(prefix + "application must be a string"); + if (typeof data.membershipID !== "string") errors.push(prefix + "membershipID must be a string"); + // optional elements + if (data.created_ts && typeof data.created_ts !== "number") errors.push(prefix + "created_ts must be number"); + // application specific data (we first need to check if they exist) + if (data.scope && typeof data.scope !== "string") errors.push(prefix + "scope must be string"); + return errors.length === 0; +}; + +export type CallMembershipData = CallMembershipDataLegacy | SessionMembershipData; export class CallMembership { public static equal(a: CallMembership, b: CallMembership): boolean { - return deepCompare(a.data, b.data); + return deepCompare(a.membershipData, b.membershipData); } + private membershipData: CallMembershipData; public constructor( private parentEvent: MatrixEvent, - private data: CallMembershipData, + data: any, ) { - if (!(data.expires || data.expires_ts)) { - throw new Error("Malformed membership: expires_ts or expires must be present"); - } - if (data.expires) { - if (typeof data.expires !== "number") { - throw new Error("Malformed membership: expires must be numeric"); - } - } - if (data.expires_ts) { - if (typeof data.expires_ts !== "number") { - throw new Error("Malformed membership: expires_ts must be numeric"); - } + const sessionErrors: string[] = []; + const legacyErrors: string[] = []; + if (!checkSessionsMembershipData(data, sessionErrors) && !checkCallMembershipDataLegacy(data, legacyErrors)) { + throw Error( + `unknown CallMembership data. Does not match legacy call.member (${legacyErrors.join(" & ")}) events nor MSC4143 (${sessionErrors.join(" & ")})`, + ); + } else { + this.membershipData = data; } - - if (typeof data.device_id !== "string") throw new Error("Malformed membership event: device_id must be string"); - if (typeof data.call_id !== "string") throw new Error("Malformed membership event: call_id must be string"); - if (typeof data.scope !== "string") throw new Error("Malformed membership event: scope must be string"); - if (!parentEvent.getSender()) throw new Error("Invalid parent event: sender is null"); } public get sender(): string | undefined { @@ -67,62 +129,89 @@ export class CallMembership { } public get callId(): string { - return this.data.call_id; + return this.membershipData.call_id; } public get deviceId(): string { - return this.data.device_id; + return this.membershipData.device_id; } public get application(): string | undefined { - return this.data.application; + return this.membershipData.application; } - public get scope(): CallScope { - return this.data.scope; + public get scope(): CallScope | undefined { + return this.membershipData.scope; } public get membershipID(): string { - return this.data.membershipID; + if (isLegacyCallMembershipData(this.membershipData)) return this.membershipData.membershipID; + // the createdTs behaves equivalent to the membershipID. + // we only need the field for the legacy member envents where we needed to update them + // synapse ignores sending state events if they have the same content. + else return this.createdTs().toString(); } public createdTs(): number { - return this.data.created_ts ?? this.parentEvent.getTs(); + return this.membershipData.created_ts ?? this.parentEvent.getTs(); } - public getAbsoluteExpiry(): number { - if (this.data.expires) { - return this.createdTs() + this.data.expires; + public getAbsoluteExpiry(): number | undefined { + if (!isLegacyCallMembershipData(this.membershipData)) return undefined; + if ("expires" in this.membershipData) { + // we know createdTs exists since we already do the isLegacyCallMembershipData check + return this.createdTs() + this.membershipData.expires; } else { // We know it exists because we checked for this in the constructor. - return this.data.expires_ts!; + return this.membershipData.expires_ts; } } // gets the expiry time of the event, converted into the device's local time - public getLocalExpiry(): number { - if (this.data.expires) { + public getLocalExpiry(): number | undefined { + if (!isLegacyCallMembershipData(this.membershipData)) return undefined; + if ("expires" in this.membershipData) { + // we know createdTs exists since we already do the isLegacyCallMembershipData check const relativeCreationTime = this.parentEvent.getTs() - this.createdTs(); const localCreationTs = this.parentEvent.localTimestamp - relativeCreationTime; - return localCreationTs + this.data.expires; + return localCreationTs + this.membershipData.expires; } else { // With expires_ts we cannot convert to local time. // TODO: Check the server timestamp and compute a diff to local time. - return this.data.expires_ts!; + return this.membershipData.expires_ts; } } - public getMsUntilExpiry(): number { - return this.getLocalExpiry() - Date.now(); + public getMsUntilExpiry(): number | undefined { + if (isLegacyCallMembershipData(this.membershipData)) return this.getLocalExpiry()! - Date.now(); } public isExpired(): boolean { - return this.getMsUntilExpiry() <= 0; + if (isLegacyCallMembershipData(this.membershipData)) return this.getMsUntilExpiry()! <= 0; + + // MSC4143 events expire by being updated. So if the event exists, its not expired. + return false; + } + + public getPreferredFoci(): Focus[] { + // To support both, the new and the old MatrixRTC memberships have two cases based + // on the availablitiy of `foci_preferred` + if (isLegacyCallMembershipData(this.membershipData)) return this.membershipData.foci_active ?? []; + + // MSC4143 style membership + return this.membershipData.foci_preferred; } - public getActiveFoci(): Focus[] { - return this.data.foci_active ?? []; + public getFocusSelection(): string | undefined { + if (isLegacyCallMembershipData(this.membershipData)) { + return "oldest_membership"; + } else { + const focusActive = this.membershipData.focus_active; + if (isLivekitFocusActive(focusActive)) { + return focusActive.focus_selection; + } + } } } diff --git a/src/matrixrtc/LivekitFocus.ts b/src/matrixrtc/LivekitFocus.ts new file mode 100644 index 00000000000..0a42dda5fd5 --- /dev/null +++ b/src/matrixrtc/LivekitFocus.ts @@ -0,0 +1,39 @@ +/* +Copyright 2023 New Vector Ltd + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { Focus } from "./focus"; + +export interface LivekitFocusConfig extends Focus { + type: "livekit"; + livekit_service_url: string; +} + +export const isLivekitFocusConfig = (object: any): object is LivekitFocusConfig => + object.type === "livekit" && "livekit_service_url" in object; + +export interface LivekitFocus extends LivekitFocusConfig { + livekit_alias: string; +} + +export const isLivekitFocus = (object: any): object is LivekitFocus => + isLivekitFocusConfig(object) && "livekit_alias" in object; + +export interface LivekitFocusActive extends Focus { + type: "livekit"; + focus_selection: "oldest_membership"; +} +export const isLivekitFocusActive = (object: any): object is LivekitFocusActive => + object.type === "livekit" && "focus_selection" in object; diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 7421723ecb4..e7fbd7a48bf 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -20,7 +20,13 @@ import { EventTimeline } from "../models/event-timeline"; import { Room } from "../models/room"; import { MatrixClient } from "../client"; import { EventType } from "../@types/event"; -import { CallMembership, CallMembershipData } from "./CallMembership"; +import { + CallMembership, + CallMembershipData, + CallMembershipDataLegacy, + SessionMembershipData, + isLegacyCallMembershipData, +} from "./CallMembership"; import { RoomStateEvent } from "../models/room-state"; import { Focus } from "./focus"; import { randomString, secureRandomBase64Url } from "../randomstring"; @@ -29,6 +35,8 @@ import { decodeBase64, encodeUnpaddedBase64 } from "../base64"; import { KnownMembership } from "../@types/membership"; import { MatrixError } from "../http-api/errors"; import { MatrixEvent } from "../models/event"; +import { isLivekitFocusActive } from "./LivekitFocus"; +import { ExperimentalGroupCallRoomMemberState } from "../webrtc/groupCall"; const MEMBERSHIP_EXPIRY_TIME = 60 * 60 * 1000; const MEMBER_EVENT_CHECK_PERIOD = 2 * 60 * 1000; // How often we check to see if we need to re-send our member event @@ -57,7 +65,7 @@ export enum MatrixRTCSessionEvent { MembershipsChanged = "memberships_changed", // We joined or left the session: our own local idea of whether we are joined, // separate from MembershipsChanged, ie. independent of whether our member event - // has succesfully gone through. + // has successfully gone through. JoinStateChanged = "join_state_changed", // The key used to encrypt media has changed EncryptionKeyChanged = "encryption_key_changed", @@ -75,7 +83,20 @@ export type MatrixRTCSessionEventHandlerMap = { participantId: string, ) => void; }; - +export interface JoinSessionConfig { + /** If true, generate and share a media key for this participant, + * and emit MatrixRTCSessionEvent.EncryptionKeyChanged when + * media keys for other participants become available. + */ + manageMediaKeys?: boolean; + /** Lets you configure how the events for the session are formatted. + * - legacy: use one event with a membership array. + * - MSC4143: use one event per membership (with only one membership per event) + * More details can be found in MSC4143 and by checking the types: + * `CallMembershipDataLegacy` and `SessionMembershipData` + */ + useLegacyMemberEvents?: boolean; +} /** * A MatrixRTCSession manages the membership & properties of a MatrixRTC session. * This class doesn't deal with media at all, just membership & properties of a session. @@ -102,12 +123,16 @@ export class MatrixRTCSession extends TypedEventEmitter; private setNewKeyTimeouts = new Set>(); - private activeFoci: Focus[] | undefined; + // This is a Focus with the specified fields for an ActiveFocus (e.g. LivekitFocusActive for type="livekit") + private ownFocusActive?: Focus; + // This is a Foci array that contains the Focus objects this user is aware of and proposes to use. + private ownFociPreferred?: Focus[]; private updateCallMembershipRunning = false; private needCallMembershipUpdate = false; private manageMediaKeys = false; + private useLegacyMemberEvents = true; // userId:deviceId => array of keys private encryptionKeys = new Map>(); private lastEncryptionKeyUpdateRequest?: number; @@ -134,21 +159,33 @@ export class MatrixRTCSession extends TypedEventEmitter | undefined { return this.encryptionKeys.get(getParticipantId(userId, deviceId)); } @@ -344,7 +401,7 @@ export class MatrixRTCSession extends TypedEventEmitter { const userId = event.getSender(); const content = event.getContent(); @@ -613,30 +679,41 @@ export class MatrixRTCSession extends TypedEventEmitter { let membershipObj; try { @@ -704,10 +786,10 @@ export class MatrixRTCSession extends TypedEventEmitter => { @@ -742,46 +824,54 @@ export class MatrixRTCSession extends TypedEventEmitter>() ?? {}; - const memberships: CallMembershipData[] = Array.isArray(content["memberships"]) ? content["memberships"] : []; - - const myPrevMembershipData = memberships.find((m) => m.device_id === localDeviceId); - let myPrevMembership; - try { - if (myCallMemberEvent && myPrevMembershipData && myPrevMembershipData.membershipID === this.membershipId) { - myPrevMembership = new CallMembership(myCallMemberEvent, myPrevMembershipData); + const content = myCallMemberEvent?.getContent() ?? {}; + const legacy = "memberships" in content || this.useLegacyMemberEvents; + let newContent: {} | ExperimentalGroupCallRoomMemberState | SessionMembershipData = {}; + if (legacy) { + let myPrevMembership: CallMembership | undefined; + // We know its CallMembershipDataLegacy + const memberships: CallMembershipDataLegacy[] = Array.isArray(content["memberships"]) + ? content["memberships"] + : []; + const myPrevMembershipData = memberships.find((m) => m.device_id === localDeviceId); + try { + if ( + myCallMemberEvent && + myPrevMembershipData && + isLegacyCallMembershipData(myPrevMembershipData) && + myPrevMembershipData.membershipID === this.membershipId + ) { + myPrevMembership = new CallMembership(myCallMemberEvent, myPrevMembershipData); + } + } catch (e) { + // This would indicate a bug or something weird if our own call membership + // wasn't valid + logger.warn("Our previous call membership was invalid - this shouldn't happen.", e); } - } catch (e) { - // This would indicate a bug or something weird if our own call membership - // wasn't valid - logger.warn("Our previous call membership was invalid - this shouldn't happen.", e); - } - - if (myPrevMembership) { - logger.debug(`${myPrevMembership.getMsUntilExpiry()} until our membership expires`); - } - - if (!this.membershipEventNeedsUpdate(myPrevMembershipData, myPrevMembership)) { - // nothing to do - reschedule the check again - this.memberEventTimeout = setTimeout(this.triggerCallMembershipEventUpdate, MEMBER_EVENT_CHECK_PERIOD); - return; + if (myPrevMembership) { + logger.debug(`${myPrevMembership.getMsUntilExpiry()} until our membership expires`); + } + if (!this.membershipEventNeedsUpdate(myPrevMembershipData, myPrevMembership)) { + // nothing to do - reschedule the check again + this.memberEventTimeout = setTimeout(this.triggerCallMembershipEventUpdate, MEMBER_EVENT_CHECK_PERIOD); + return; + } + newContent = this.makeNewLegacyMemberships(memberships, localDeviceId, myCallMemberEvent, myPrevMembership); + } else { + newContent = this.makeNewMembership(localDeviceId); } - const newContent = { - memberships: this.makeNewMemberships(memberships, myCallMemberEvent, myPrevMembership), - }; - try { await this.client.sendStateEvent( this.room.roomId, EventType.GroupCallMemberPrefix, newContent, - localUserId, + this.useLegacyMemberEvents ? localUserId : `${localUserId}_${localDeviceId}`, ); logger.info(`Sent updated call member event.`); // check periodically to see if we need to refresh our member event - if (this.isJoined()) { + if (this.isJoined() && legacy) { this.memberEventTimeout = setTimeout(this.triggerCallMembershipEventUpdate, MEMBER_EVENT_CHECK_PERIOD); } } catch (e) { diff --git a/src/matrixrtc/MatrixRTCSessionManager.ts b/src/matrixrtc/MatrixRTCSessionManager.ts index 188f7b3e176..2fd5d2583f7 100644 --- a/src/matrixrtc/MatrixRTCSessionManager.ts +++ b/src/matrixrtc/MatrixRTCSessionManager.ts @@ -73,9 +73,9 @@ export class MatrixRTCSessionManager extends TypedEventEmitter Date: Tue, 18 Jun 2024 10:14:48 +0200 Subject: [PATCH 271/595] Add via parameter for MSC4156 (#4247) * Add via parameter for MSC4156 Signed-off-by: Johannes Marbach * Always include both parameters * Fix tests --------- Signed-off-by: Johannes Marbach --- spec/integ/matrix-client-methods.spec.ts | 2 +- src/client.ts | 16 ++++++++++++---- src/feature.ts | 4 ++++ 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/spec/integ/matrix-client-methods.spec.ts b/spec/integ/matrix-client-methods.spec.ts index 06986652d48..c321403d591 100644 --- a/spec/integ/matrix-client-methods.spec.ts +++ b/spec/integ/matrix-client-methods.spec.ts @@ -257,7 +257,7 @@ describe("MatrixClient", function () { .when("POST", "/knock/" + encodeURIComponent(roomId)) .check((request) => { expect(request.data).toEqual({ reason: opts.reason }); - expect(request.queryParams).toEqual({ server_name: opts.viaServers }); + expect(request.queryParams).toEqual({ server_name: opts.viaServers, via: opts.viaServers }); }) .respond(200, { room_id: roomId }); diff --git a/src/client.ts b/src/client.ts index 1e3c57783cf..40a9e5d89b7 100644 --- a/src/client.ts +++ b/src/client.ts @@ -4319,9 +4319,13 @@ export class MatrixClient extends TypedEventEmitter(Method.Post, url); } - const queryString: Record = {}; + let queryParams: QueryDict = {}; if (opts.viaServers) { - queryString["server_name"] = opts.viaServers; + queryParams.server_name = opts.viaServers; + queryParams.via = opts.viaServers; + if (this.canSupport.get(Feature.MigrateServerNameToVia) === ServerSupport.Unstable) { + queryParams = replaceParam("via", "org.matrix.msc4156.via", queryParams); + } } const data: IJoinRequestBody = {}; @@ -4331,7 +4335,7 @@ export class MatrixClient extends TypedEventEmitter(Method.Post, path, queryString, data); + const res = await this.http.authedRequest<{ room_id: string }>(Method.Post, path, queryParams, data); const roomId = res.room_id; // In case we were originally given an alias, check the room cache again @@ -4364,9 +4368,13 @@ export class MatrixClient extends TypedEventEmitter = {}; + let queryParams: QueryDict = {}; if (opts.viaServers) { queryParams.server_name = opts.viaServers; + queryParams.via = opts.viaServers; + if (this.canSupport.get(Feature.MigrateServerNameToVia) === ServerSupport.Unstable) { + queryParams = replaceParam("via", "org.matrix.msc4156.via", queryParams); + } } const body: Record = {}; diff --git a/src/feature.ts b/src/feature.ts index 01cadd8e87c..0657a217cd5 100644 --- a/src/feature.ts +++ b/src/feature.ts @@ -33,6 +33,7 @@ export enum Feature { AccountDataDeletion = "AccountDataDeletion", RelationsRecursion = "RelationsRecursion", IntentionalMentions = "IntentionalMentions", + MigrateServerNameToVia = "MigrateServerNameToVia", } type FeatureSupportCondition = { @@ -65,6 +66,9 @@ const featureSupportResolver: Record = { unstablePrefixes: ["org.matrix.msc3952_intentional_mentions"], matrixVersion: "v1.7", }, + [Feature.MigrateServerNameToVia]: { + unstablePrefixes: ["org.matrix.msc4156"], + }, }; export async function buildFeatureSupportMap(versions: IServerVersions): Promise> { From a4c4e7e275e4fff7586c462a6f0b3e0ebaf441cf Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 18 Jun 2024 11:54:47 +0000 Subject: [PATCH 272/595] v33.1.0 --- CHANGELOG.md | 14 ++++++++++++++ package.json | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9c190ae9c67..244423d6d51 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +Changes in [33.1.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v33.1.0) (2024-06-18) +================================================================================================== +## ✨ Features + +* MSC4108 support OIDC QR code login ([#4134](https://github.com/matrix-org/matrix-js-sdk/pull/4134)). Contributed by @t3chguy. +* Add crypto methods for export and import of secrets bundle ([#4227](https://github.com/matrix-org/matrix-js-sdk/pull/4227)). Contributed by @t3chguy. + +## 🐛 Bug Fixes + +* Fix screen sharing in recent Chrome ([#4243](https://github.com/matrix-org/matrix-js-sdk/pull/4243)). Contributed by @RiotRobot. +* Fix incorrect assumptions about required fields in /search response ([#4228](https://github.com/matrix-org/matrix-js-sdk/pull/4228)). Contributed by @t3chguy. +* Fix the queueToDevice tests for the new fakeindexeddb ([#4225](https://github.com/matrix-org/matrix-js-sdk/pull/4225)). Contributed by @dbkr. + + Changes in [33.0.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v33.0.0) (2024-06-04) ================================================================================================== ## 🚨 BREAKING CHANGES diff --git a/package.json b/package.json index 15aaa4c7fa4..4efc937e95c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "33.1.0-rc.1", + "version": "33.1.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 987ec1e62fcdbd626d5abcba5e9dcdaa9eaaa758 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 18 Jun 2024 11:55:23 +0000 Subject: [PATCH 273/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index b063a38fde3..208be2458fc 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,6 +132,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From c55289ec6583d71c309971fa5747b13c5b84d3ee Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 18 Jun 2024 14:03:14 +0100 Subject: [PATCH 274/595] Use server name instead of homeserver url to allow well-known lookups during QR OIDC reciprocation (#4233) * Use server name instead of homeserver url to allow well-known lookups during QR OIDC reciprocation Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 2 +- spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts | 14 ++++++-------- .../channels/MSC4108SecureChannel.spec.ts | 12 ++++++------ src/@types/matrix-sdk-crypto-wasm.d.ts | 4 ++++ src/rendezvous/MSC4108SignInWithQR.ts | 8 ++++---- src/rendezvous/channels/MSC4108SecureChannel.ts | 10 +++++----- src/rust-crypto/rust-crypto.ts | 7 +++---- yarn.lock | 8 ++++---- 8 files changed, 33 insertions(+), 32 deletions(-) diff --git a/package.json b/package.json index 208be2458fc..b76c49cc496 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^5.0.0", + "@matrix-org/matrix-sdk-crypto-wasm": "^6.0.0", "another-json": "^0.2.0", "bs58": "^5.0.0", "content-type": "^1.0.4", diff --git a/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts b/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts index ef9ed201615..4910759ea4e 100644 --- a/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts +++ b/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts @@ -54,9 +54,7 @@ function makeMockClient(opts: { userId: string; deviceId: string; msc4108Enabled return opts.deviceId; }, baseUrl, - getHomeserverUrl() { - return baseUrl; - }, + getDomain: () => "example.com", getDevice: jest.fn(), getCrypto: jest.fn(() => crypto), getAuthIssuer: jest.fn().mockResolvedValue({ issuer: "https://issuer/" }), @@ -157,19 +155,19 @@ describe("MSC4108SignInWithQR", () => { client = makeMockClient({ userId: "@alice:example.com", deviceId: "alice", msc4108Enabled: true }); const ourChannel = new MSC4108SecureChannel(ourMockSession); - const qrCodeData = QrCodeData.from_bytes( - await ourChannel.generateCode(QrCodeMode.Reciprocate, client.getHomeserverUrl()), + const qrCodeData = QrCodeData.fromBytes( + await ourChannel.generateCode(QrCodeMode.Reciprocate, client.getDomain()!), ); - const opponentChannel = new MSC4108SecureChannel(opponentMockSession, qrCodeData.public_key); + const opponentChannel = new MSC4108SecureChannel(opponentMockSession, qrCodeData.publicKey); ourLogin = new MSC4108SignInWithQR(ourChannel, true, client); opponentLogin = new MSC4108SignInWithQR(opponentChannel, false); }); - it("should be able to connect with opponent and share homeserver url & check code", async () => { + it("should be able to connect with opponent and share server name & check code", async () => { await Promise.all([ expect(ourLogin.negotiateProtocols()).resolves.toEqual({}), - expect(opponentLogin.negotiateProtocols()).resolves.toEqual({ homeserverBaseUrl: client.baseUrl }), + expect(opponentLogin.negotiateProtocols()).resolves.toEqual({ serverName: client.getDomain() }), ]); expect(ourLogin.checkCode).toBe(opponentLogin.checkCode); diff --git a/spec/unit/rendezvous/channels/MSC4108SecureChannel.spec.ts b/spec/unit/rendezvous/channels/MSC4108SecureChannel.spec.ts index 6daae603491..bc357d9ac90 100644 --- a/spec/unit/rendezvous/channels/MSC4108SecureChannel.spec.ts +++ b/spec/unit/rendezvous/channels/MSC4108SecureChannel.spec.ts @@ -44,9 +44,9 @@ describe("MSC4108SecureChannel", () => { } as unknown as MSC4108RendezvousSession; const channel = new MSC4108SecureChannel(mockSession); - const qrCodeData = QrCodeData.from_bytes(await channel.generateCode(QrCodeMode.Reciprocate, baseUrl)); + const qrCodeData = QrCodeData.fromBytes(await channel.generateCode(QrCodeMode.Reciprocate, baseUrl)); const { initial_message: ciphertext } = new Ecies().establish_outbound_channel( - qrCodeData.public_key, + qrCodeData.publicKey, "MATRIX_QR_CODE_LOGIN_INITIATE", ); mocked(mockSession.receive).mockResolvedValue(ciphertext); @@ -65,9 +65,9 @@ describe("MSC4108SecureChannel", () => { mocked(mockSession.receive).mockResolvedValue(""); await expect(channel.connect()).rejects.toThrow("No response from other device"); - const qrCodeData = QrCodeData.from_bytes(await channel.generateCode(QrCodeMode.Reciprocate, baseUrl)); + const qrCodeData = QrCodeData.fromBytes(await channel.generateCode(QrCodeMode.Reciprocate, baseUrl)); const { initial_message: ciphertext } = new Ecies().establish_outbound_channel( - qrCodeData.public_key, + qrCodeData.publicKey, "NOT_REAL_MATRIX_QR_CODE_LOGIN_INITIATE", ); @@ -88,9 +88,9 @@ describe("MSC4108SecureChannel", () => { } as unknown as MSC4108RendezvousSession; channel = new MSC4108SecureChannel(mockSession); - const qrCodeData = QrCodeData.from_bytes(await channel.generateCode(QrCodeMode.Reciprocate, baseUrl)); + const qrCodeData = QrCodeData.fromBytes(await channel.generateCode(QrCodeMode.Reciprocate, baseUrl)); const { channel: _opponentChannel, initial_message: ciphertext } = new Ecies().establish_outbound_channel( - qrCodeData.public_key, + qrCodeData.publicKey, "MATRIX_QR_CODE_LOGIN_INITIATE", ); opponentChannel = _opponentChannel; diff --git a/src/@types/matrix-sdk-crypto-wasm.d.ts b/src/@types/matrix-sdk-crypto-wasm.d.ts index 591ecd6406d..c7504a3484d 100644 --- a/src/@types/matrix-sdk-crypto-wasm.d.ts +++ b/src/@types/matrix-sdk-crypto-wasm.d.ts @@ -37,4 +37,8 @@ declare module "@matrix-org/matrix-sdk-crypto-wasm" { }; }>; } + + interface Device { + requestVerification(methods?: any[]): [RustSdkCryptoJs.VerificationRequest, RustSdkCryptoJs.ToDeviceRequest]; + } } diff --git a/src/rendezvous/MSC4108SignInWithQR.ts b/src/rendezvous/MSC4108SignInWithQR.ts index 275d44bd8a4..827d5d08867 100644 --- a/src/rendezvous/MSC4108SignInWithQR.ts +++ b/src/rendezvous/MSC4108SignInWithQR.ts @@ -145,7 +145,7 @@ export class MSC4108SignInWithQR { } if (this.ourIntent === QrCodeMode.Reciprocate && this.client) { - this._code = await this.channel.generateCode(this.ourIntent, this.client.getHomeserverUrl()); + this._code = await this.channel.generateCode(this.ourIntent, this.client.getDomain()!); } else if (this.ourIntent === QrCodeMode.Login) { this._code = await this.channel.generateCode(this.ourIntent); } @@ -171,7 +171,7 @@ export class MSC4108SignInWithQR { * The scanning device has to discover the homeserver details, if they scanned the code then they already have it. * If the new device is the one rendering the QR code then it has to wait be sent the homeserver details via the rendezvous channel. */ - public async negotiateProtocols(): Promise<{ homeserverBaseUrl?: string }> { + public async negotiateProtocols(): Promise<{ serverName?: string }> { logger.info(`negotiateProtocols(isNewDevice=${this.isNewDevice} didScanCode=${this.didScanCode})`); await this.channel.connect(); @@ -194,7 +194,7 @@ export class MSC4108SignInWithQR { await this.send({ type: PayloadType.Protocols, protocols: ["device_authorization_grant"], - homeserver: this.client?.getHomeserverUrl() ?? "", + homeserver: this.client!.getDomain()!, }); } else { await this.send({ @@ -227,7 +227,7 @@ export class MSC4108SignInWithQR { ); } - return { homeserverBaseUrl: payload.homeserver }; + return { serverName: payload.homeserver }; } else { // MSC4108-Flow: NewScanned - nothing to do } diff --git a/src/rendezvous/channels/MSC4108SecureChannel.ts b/src/rendezvous/channels/MSC4108SecureChannel.ts index 8db12ebd2cd..717b5441705 100644 --- a/src/rendezvous/channels/MSC4108SecureChannel.ts +++ b/src/rendezvous/channels/MSC4108SecureChannel.ts @@ -54,11 +54,11 @@ export class MSC4108SecureChannel { /** * Generate a QR code for the current session. * @param mode the mode to generate the QR code in, either `Login` or `Reciprocate`. - * @param homeserverBaseUrl the base URL of the homeserver to connect to, required for `Reciprocate` mode. + * @param serverName the name of the homeserver to connect to, as defined by server discovery in the spec, required for `Reciprocate` mode. */ public async generateCode(mode: QrCodeMode.Login): Promise; - public async generateCode(mode: QrCodeMode.Reciprocate, homeserverBaseUrl: string): Promise; - public async generateCode(mode: QrCodeMode, homeserverBaseUrl?: string): Promise { + public async generateCode(mode: QrCodeMode.Reciprocate, serverName: string): Promise; + public async generateCode(mode: QrCodeMode, serverName?: string): Promise { const { url } = this.rendezvousSession; if (!url) { @@ -68,8 +68,8 @@ export class MSC4108SecureChannel { return new QrCodeData( this.secureChannel.public_key(), url, - mode === QrCodeMode.Reciprocate ? homeserverBaseUrl : undefined, - ).to_bytes(); + mode === QrCodeMode.Reciprocate ? serverName : undefined, + ).toBytes(); } /** diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index a0a7f8323d4..c5e9bd9044f 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -1100,10 +1100,9 @@ export class RustCrypto extends TypedEventEmitter Date: Tue, 18 Jun 2024 10:58:16 -0400 Subject: [PATCH 275/595] Correctly transform base64 with multiple instances of + or / (#4252) String.replace only replaces a single instance of the search pattern by default; we need a regex in g mode if we want to replace them all. --- spec/unit/base64.spec.ts | 9 +++++---- src/base64.ts | 4 ++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/spec/unit/base64.spec.ts b/spec/unit/base64.spec.ts index 4646fbd84a5..3ef495134a1 100644 --- a/spec/unit/base64.spec.ts +++ b/spec/unit/base64.spec.ts @@ -50,17 +50,18 @@ describe.each(["browser", "node"])("Base64 encoding (%s)", (env) => { }); it("Should encode unpadded URL-safe base64", () => { - const toEncode = "?????"; + // Chosen to have padding and multiple instances of / and + in the base64 + const toEncode = "???????⊕⊗⊗"; const data = new TextEncoder().encode(toEncode); const encoded = encodeUnpaddedBase64Url(data); - expect(encoded).toEqual("Pz8_Pz8"); + expect(encoded).toEqual("Pz8_Pz8_P-KKleKKl-KKlw"); }); it("Should decode URL-safe base64", () => { - const decoded = new TextDecoder().decode(decodeBase64("Pz8_Pz8=")); + const decoded = new TextDecoder().decode(decodeBase64("Pz8_Pz8_P-KKleKKl-KKlw==")); - expect(decoded).toStrictEqual("?????"); + expect(decoded).toStrictEqual("???????⊕⊗⊗"); }); it("Encode unpadded should not have padding", () => { diff --git a/src/base64.ts b/src/base64.ts index 79bc5a49380..450468b0889 100644 --- a/src/base64.ts +++ b/src/base64.ts @@ -59,7 +59,7 @@ export function encodeUnpaddedBase64(uint8Array: ArrayBuffer | Uint8Array): stri * @returns The unpadded base64. */ export function encodeUnpaddedBase64Url(uint8Array: ArrayBuffer | Uint8Array): string { - return encodeUnpaddedBase64(uint8Array).replace("+", "-").replace("/", "_"); + return encodeUnpaddedBase64(uint8Array).replace(/\+/g, "-").replace(/\//g, "_"); } /** @@ -75,7 +75,7 @@ export function decodeBase64(base64: string): Uint8Array { const itFunc = function* (): Generator { const decoded = atob( // built-in atob doesn't support base64url: convert so we support either - base64.replace("-", "+").replace("_", "/"), + base64.replace(/-/g, "+").replace(/_/g, "/"), ); for (let i = 0; i < decoded.length; ++i) { yield decoded.charCodeAt(i); From 697d5d31d1e86a1e6dda8fa7c8fbab6ed98527d1 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 19 Jun 2024 09:54:29 +0100 Subject: [PATCH 276/595] Update all non-major dependencies (#4256) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 69 ++++++++++++++++++++++++++++++++-------------------- 2 files changed, 43 insertions(+), 28 deletions(-) diff --git a/package.json b/package.json index b76c49cc496..f505f738026 100644 --- a/package.json +++ b/package.json @@ -119,7 +119,7 @@ "lint-staged": "^15.0.2", "matrix-mock-request": "^2.5.0", "node-fetch": "^2.7.0", - "prettier": "3.3.1", + "prettier": "3.3.2", "rimraf": "^5.0.0", "ts-node": "^10.9.2", "typedoc": "^0.25.10", diff --git a/yarn.lock b/yarn.lock index f093b01b3c7..bd1f6ca2e59 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2348,7 +2348,7 @@ debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@7.12.0", "@typescript-eslint/types@^7.2.0": +"@typescript-eslint/types@7.12.0": version "7.12.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.12.0.tgz#bf208f971a8da1e7524a5d9ae2b5f15192a37981" integrity sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg== @@ -2358,6 +2358,11 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.0.tgz#0cca95edf1f1fdb0cfe1bb875e121b49617477c5" integrity sha512-QWuwm9wcGMAuTsxP+qz6LBBd3Uq8I5Nv8xb0mk54jmNoCyDspnMvVsOxI6IsMmway5d1S9Su2+sCKv1st2l6eA== +"@typescript-eslint/types@^7.2.0": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.1.tgz#787db283bd0b58751094c90d5b58bbf5e9fc9bd8" + integrity sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw== + "@typescript-eslint/typescript-estree@7.12.0": version "7.12.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.12.0.tgz#e6c1074f248b3db6573ab6a7c47a39c4cd498ff9" @@ -3509,9 +3514,9 @@ eslint-plugin-jest@^28.0.0: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0" eslint-plugin-jsdoc@^48.0.0: - version "48.2.9" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.9.tgz#dd5e293bc584c94e24f0b2bc4a953252b3f96d70" - integrity sha512-ErpKyr2mEUEkcdZ4nwW/cvDjClvAcvJMEXkGGll0wf8sro8h6qeQ3qlZyp1vM1dRk8Ap6rMdke8FnP94QBIaVQ== + version "48.2.12" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.12.tgz#e8411c87e55db3f21a288e04bf7e1fb5fa62dfa9" + integrity sha512-sO9sKkJx5ovWoRk9hV0YiNzXQ4Z6j27CqE/po2E3wddZVuy9wvKPSTiIhpxMTrP/qURvKayJIDB2+o9kyCW1Fw== dependencies: "@es-joy/jsdoccomment" "~0.43.1" are-docs-informative "^0.0.2" @@ -4987,9 +4992,9 @@ jest@^29.0.0: jest-cli "^29.7.0" jiti@^1.21.0: - version "1.21.3" - resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.3.tgz#b2adb07489d7629b344d59082bbedb8c21c5f755" - integrity sha512-uy2bNX5zQ+tESe+TiC7ilGRz8AtRGmnJH55NC5S0nSUjvvvM2hJHmefHErugGXN4pNv4Qx7vLsnNw9qJ9mtIsw== + version "1.21.6" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.6.tgz#6c7f7398dd4b3142767f9a168af2f317a428d268" + integrity sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w== jju@~1.4.0: version "1.4.0" @@ -5100,7 +5105,7 @@ json5@^1.0.2: dependencies: minimist "^1.2.0" -json5@^2.2.3: +json5@^2.2.2, json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== @@ -5128,9 +5133,9 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.18.2" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.18.2.tgz#d35f206b69f21264ce39950b8be729ef52aae5fb" - integrity sha512-SR3XHUviWFFfmyt4FT+iWdu17pWEypaJF5EJfiRjZ7j4J6D9Kf4Ju7+Sw+n4suIIbhZmO3+oDBZKJsRVoY/lOw== + version "5.21.2" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.21.2.tgz#0b25001ee645882784c652cd14c3a3e7ff50ec37" + integrity sha512-V8bzHWjQyhkN0cxajxyHqaD8CPOkNtSwo4+Zue3z//4fbWO79xXLVp61fuaaTcT9O7I7E2ZjuHENtRkBrjSzCg== dependencies: "@ericcornelissen/bash-parser" "0.5.3" "@nodelib/fs.walk" "2.0.0" @@ -5148,6 +5153,7 @@ knip@^5.0.0: smol-toml "^1.1.4" strip-json-comments "5.0.1" summary "2.1.0" + tsconfig-paths "^4.2.0" zod "^3.22.4" zod-validation-error "^3.0.3" @@ -5165,9 +5171,9 @@ levn@^0.4.1: type-check "~0.4.0" lilconfig@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.1.tgz#9d8a246fa753106cfc205fd2d77042faca56e5e3" - integrity sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ== + version "3.1.2" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.2.tgz#e4a7c3cb549e3a606c8dcc32e5ae1005e62c05cb" + integrity sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow== lines-and-columns@^1.1.6: version "1.2.4" @@ -5175,9 +5181,9 @@ lines-and-columns@^1.1.6: integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== lint-staged@^15.0.2: - version "15.2.5" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.5.tgz#8c342f211bdb34ffd3efd1311248fa6b50b43b50" - integrity sha512-j+DfX7W9YUvdzEZl3Rk47FhDF6xwDBV5wwsCPw6BwWZVPYJemusQmvb9bRsW23Sqsaa+vRloAWogbK4BUuU2zA== + version "15.2.7" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.7.tgz#97867e29ed632820c0fb90be06cd9ed384025649" + integrity sha512-+FdVbbCZ+yoh7E/RosSdqKJyUM2OEjTciH0TFNkawKgvFp1zbGlEC39RADg+xKBG1R4mhoH2j85myBQZ5wR+lw== dependencies: chalk "~5.3.0" commander "~12.1.0" @@ -5750,10 +5756,10 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prettier@3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.1.tgz#e68935518dd90bb7ec4821ba970e68f8de16e1ac" - integrity sha512-7CAwy5dRsxs8PHXT3twixW9/OEll8MLE0VRPCJyl7CkS6VHGPSlsVaWTiASPTyGyYRyApxlaWTzwUxVNrhcwDg== +prettier@3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.2.tgz#03ff86dc7c835f2d2559ee76876a3914cec4a90a" + integrity sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA== pretty-format@^28.1.3: version "28.1.3" @@ -6010,9 +6016,9 @@ reverse-arguments@^1.0.0: integrity sha512-/x8uIPdTafBqakK0TmPNJzgkLP+3H+yxpUJhCQHsLBg1rYEVNR2D8BRYNWQhVBjyOd7oo1dZRVzIkwMY2oqfYQ== rfdc@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.1.tgz#2b6d4df52dffe8bb346992a10ea9451f24373a8f" - integrity sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg== + version "1.4.1" + resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.4.1.tgz#778f76c4fb731d93414e8f925fbecf64cce7f6ca" + integrity sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA== rimraf@^3.0.2: version "3.0.2" @@ -6558,6 +6564,15 @@ tsconfig-paths@^3.15.0: minimist "^1.2.6" strip-bom "^3.0.0" +tsconfig-paths@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz#ef78e19039133446d244beac0fd6a1632e2d107c" + integrity sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg== + dependencies: + json5 "^2.2.2" + minimist "^1.2.6" + strip-bom "^3.0.0" + tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1, tslib@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" @@ -6987,9 +7002,9 @@ yallist@^4.0.0: integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yaml@~2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.4.2.tgz#7a2b30f2243a5fc299e1f14ca58d475ed4bc5362" - integrity sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA== + version "2.4.5" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.4.5.tgz#60630b206dd6d84df97003d33fc1ddf6296cca5e" + integrity sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg== yargs-parser@^21.1.1: version "21.1.1" From 240b43b6523543d7275f710628a9eb7dfc6cdd4f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 19 Jun 2024 08:57:01 +0000 Subject: [PATCH 277/595] Update typedoc (#4258) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/yarn.lock b/yarn.lock index bd1f6ca2e59..b2abd945ef1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6650,19 +6650,19 @@ typed-array-length@^1.0.4: is-typed-array "^1.1.9" typedoc-plugin-coverage@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/typedoc-plugin-coverage/-/typedoc-plugin-coverage-3.1.1.tgz#dda6f4d12a870ffd231b24d53be859e2e44d9c31" - integrity sha512-PAMYQ4fX7wJo6Y8mMzrISDNRurl5+xSNWEojrt6Yxofb/m7vWrgiP3bid2KXloMlPcSfCoBiJA6F2g3rmu8XTQ== + version "3.2.0" + resolved "https://registry.yarnpkg.com/typedoc-plugin-coverage/-/typedoc-plugin-coverage-3.2.0.tgz#c3d09fd5f42fb8fa3de0ed72344c406afe7e994b" + integrity sha512-jY6bEl/zNezRTAg0V4+FkJAtPlzSszK3QzcXSyGYcKjzzT8C6qw0xdh2KIJkxAtzYtgxT/4idiAYqZ1WRAieTA== typedoc-plugin-mdn-links@^3.0.3: - version "3.1.29" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.29.tgz#e740f3d1e4ec345a2fceaaf81227d816b2e610cf" - integrity sha512-dFKri2eYa+Owq+/3h3z/GvRQF5yM5kzbPqQWLo0LTIv5s78tFGq+yl8vNGf6CkJGakPBfdnHdfeo4bSsVZH0WQ== + version "3.1.30" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.30.tgz#bea289518cb393b07ee65fabc8ced393810dce9a" + integrity sha512-aB3UqyRGdxYziOHKzE7AQPh+9xpqqHHrp23F+T6yshHeuSiauCL+zzgTRhi4Ad1x30/7rTkCtyQ5dfO/+1FDKA== typedoc-plugin-missing-exports@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/typedoc-plugin-missing-exports/-/typedoc-plugin-missing-exports-2.2.0.tgz#e39a04bab5b0d7f7b28507d64c07a4c40b788648" - integrity sha512-2+XR1IcyQ5UwXZVJe9NE6HrLmNufT9i5OwoIuuj79VxuA3eYq+Y6itS9rnNV1D7UeQnUSH8kISYD73gHE5zw+w== + version "2.3.0" + resolved "https://registry.yarnpkg.com/typedoc-plugin-missing-exports/-/typedoc-plugin-missing-exports-2.3.0.tgz#ae0858bf383a08345cc09a99d428234cf6b85ecf" + integrity sha512-iI9ITNNLlbsLCBBeYDyu0Qqp3GN/9AGyWNKg8bctRXuZEPT7G1L+0+MNWG9MsHcf/BFmNbXL0nQ8mC/tXRicog== typedoc@^0.25.10: version "0.25.13" From c70aa33367eda1ee81d4191684be0c662d8cc5af Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 19 Jun 2024 10:50:23 +0100 Subject: [PATCH 278/595] Update typescript-eslint monorepo to v7.13.1 (#4257) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 98 +++++++++++++++++++++++++++---------------------------- 1 file changed, 49 insertions(+), 49 deletions(-) diff --git a/yarn.lock b/yarn.lock index b2abd945ef1..b1135940e07 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2297,29 +2297,29 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.0.tgz#3cdeb5d44d051b21a9567535dd90702b2a42c6ff" - integrity sha512-FX1X6AF0w8MdVFLSdqwqN/me2hyhuQg4ykN6ZpVhh1ij/80pTvDKclX1sZB9iqex8SjQfVhwMKs3JtnnMLzG9w== + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.1.tgz#cdc521c8bca38b55585cf30db787fb2abad3f9fd" + integrity sha512-kZqi+WZQaZfPKnsflLJQCz6Ze9FFSMfXrrIOcyargekQxG37ES7DJNpJUE9Q/X5n3yTIP/WPutVNzgknQ7biLg== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.13.0" - "@typescript-eslint/type-utils" "7.13.0" - "@typescript-eslint/utils" "7.13.0" - "@typescript-eslint/visitor-keys" "7.13.0" + "@typescript-eslint/scope-manager" "7.13.1" + "@typescript-eslint/type-utils" "7.13.1" + "@typescript-eslint/utils" "7.13.1" + "@typescript-eslint/visitor-keys" "7.13.1" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" "@typescript-eslint/parser@^7.0.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.13.0.tgz#9489098d68d57ad392f507495f2b82ce8b8f0a6b" - integrity sha512-EjMfl69KOS9awXXe83iRN7oIEXy9yYdqWfqdrFAYAAr6syP8eLEFI7ZE4939antx2mNgPRW/o1ybm2SFYkbTVA== - dependencies: - "@typescript-eslint/scope-manager" "7.13.0" - "@typescript-eslint/types" "7.13.0" - "@typescript-eslint/typescript-estree" "7.13.0" - "@typescript-eslint/visitor-keys" "7.13.0" + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.13.1.tgz#fac57811b3e519185f7259bac312291f7b9c4e72" + integrity sha512-1ELDPlnLvDQ5ybTSrMhRTFDfOQEOXNM+eP+3HT/Yq7ruWpciQw+Avi73pdEbA4SooCawEWo3dtYbF68gN7Ed1A== + dependencies: + "@typescript-eslint/scope-manager" "7.13.1" + "@typescript-eslint/types" "7.13.1" + "@typescript-eslint/typescript-estree" "7.13.1" + "@typescript-eslint/visitor-keys" "7.13.1" debug "^4.3.4" "@typescript-eslint/scope-manager@7.12.0": @@ -2330,21 +2330,21 @@ "@typescript-eslint/types" "7.12.0" "@typescript-eslint/visitor-keys" "7.12.0" -"@typescript-eslint/scope-manager@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.13.0.tgz#6927d6451537ce648c6af67a2327378d4cc18462" - integrity sha512-ZrMCe1R6a01T94ilV13egvcnvVJ1pxShkE0+NDjDzH4nvG1wXpwsVI5bZCvE7AEDH1mXEx5tJSVR68bLgG7Dng== +"@typescript-eslint/scope-manager@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.13.1.tgz#c08041206904bf36f0e6997efdb0ca775e0c452e" + integrity sha512-adbXNVEs6GmbzaCpymHQ0MB6E4TqoiVbC0iqG3uijR8ZYfpAXMGttouQzF4Oat3P2GxDVIrg7bMI/P65LiQZdg== dependencies: - "@typescript-eslint/types" "7.13.0" - "@typescript-eslint/visitor-keys" "7.13.0" + "@typescript-eslint/types" "7.13.1" + "@typescript-eslint/visitor-keys" "7.13.1" -"@typescript-eslint/type-utils@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.13.0.tgz#4587282b5227a23753ea8b233805ecafc3924c76" - integrity sha512-xMEtMzxq9eRkZy48XuxlBFzpVMDurUAfDu5Rz16GouAtXm0TaAoTFzqWUFPPuQYXI/CDaH/Bgx/fk/84t/Bc9A== +"@typescript-eslint/type-utils@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.13.1.tgz#63bec3f1fb43cf0bc409cbdb88ef96d118ca8632" + integrity sha512-aWDbLu1s9bmgPGXSzNCxELu+0+HQOapV/y+60gPXafR8e2g1Bifxzevaa+4L2ytCWm+CHqpELq4CSoN9ELiwCg== dependencies: - "@typescript-eslint/typescript-estree" "7.13.0" - "@typescript-eslint/utils" "7.13.0" + "@typescript-eslint/typescript-estree" "7.13.1" + "@typescript-eslint/utils" "7.13.1" debug "^4.3.4" ts-api-utils "^1.3.0" @@ -2353,10 +2353,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.12.0.tgz#bf208f971a8da1e7524a5d9ae2b5f15192a37981" integrity sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg== -"@typescript-eslint/types@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.0.tgz#0cca95edf1f1fdb0cfe1bb875e121b49617477c5" - integrity sha512-QWuwm9wcGMAuTsxP+qz6LBBd3Uq8I5Nv8xb0mk54jmNoCyDspnMvVsOxI6IsMmway5d1S9Su2+sCKv1st2l6eA== +"@typescript-eslint/types@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.1.tgz#787db283bd0b58751094c90d5b58bbf5e9fc9bd8" + integrity sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw== "@typescript-eslint/types@^7.2.0": version "7.13.1" @@ -2377,13 +2377,13 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/typescript-estree@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.0.tgz#4cc24fc155088ebf3b3adbad62c7e60f72c6de1c" - integrity sha512-cAvBvUoobaoIcoqox1YatXOnSl3gx92rCZoMRPzMNisDiM12siGilSM4+dJAekuuHTibI2hVC2fYK79iSFvWjw== +"@typescript-eslint/typescript-estree@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.1.tgz#3412841b130e070db2f675e3d9b8cb1ae49e1c3f" + integrity sha512-uxNr51CMV7npU1BxZzYjoVz9iyjckBduFBP0S5sLlh1tXYzHzgZ3BR9SVsNed+LmwKrmnqN3Kdl5t7eZ5TS1Yw== dependencies: - "@typescript-eslint/types" "7.13.0" - "@typescript-eslint/visitor-keys" "7.13.0" + "@typescript-eslint/types" "7.13.1" + "@typescript-eslint/visitor-keys" "7.13.1" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2391,15 +2391,15 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.13.0.tgz#f84e7e8aeceae945a9a3f40d077fd95915308004" - integrity sha512-jceD8RgdKORVnB4Y6BqasfIkFhl4pajB1wVxrF4akxD2QPM8GNYjgGwEzYS+437ewlqqrg7Dw+6dhdpjMpeBFQ== +"@typescript-eslint/utils@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.13.1.tgz#611083379caa0d3a2c09d126c65065a3e4337ba2" + integrity sha512-h5MzFBD5a/Gh/fvNdp9pTfqJAbuQC4sCN2WzuXme71lqFJsZtLbjxfSk4r3p02WIArOF9N94pdsLiGutpDbrXQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.13.0" - "@typescript-eslint/types" "7.13.0" - "@typescript-eslint/typescript-estree" "7.13.0" + "@typescript-eslint/scope-manager" "7.13.1" + "@typescript-eslint/types" "7.13.1" + "@typescript-eslint/typescript-estree" "7.13.1" "@typescript-eslint/utils@^6.0.0 || ^7.0.0": version "7.12.0" @@ -2419,12 +2419,12 @@ "@typescript-eslint/types" "7.12.0" eslint-visitor-keys "^3.4.3" -"@typescript-eslint/visitor-keys@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.0.tgz#2eb7ce8eb38c2b0d4a494d1fe1908e7071a1a353" - integrity sha512-nxn+dozQx+MK61nn/JP+M4eCkHDSxSLDpgE3WcQo0+fkjEolnaB5jswvIKC4K56By8MMgIho7f1PVxERHEo8rw== +"@typescript-eslint/visitor-keys@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.1.tgz#9c229a795a919db61f2d7f2337ef584ac05fbe96" + integrity sha512-k/Bfne7lrP7hcb7m9zSsgcBmo+8eicqqfNAJ7uUY+jkTFpKeH2FSkWpFRtimBxgkyvqfu9jTPRbYOvud6isdXA== dependencies: - "@typescript-eslint/types" "7.13.0" + "@typescript-eslint/types" "7.13.1" eslint-visitor-keys "^3.4.3" "@ungap/structured-clone@^1.2.0": From 819fc75202f21e9bb51014c9844ddc6769dc8d99 Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 19 Jun 2024 11:24:56 +0100 Subject: [PATCH 279/595] Fetch capabilities in the background (#4246) * Fetch capabilities in the background & keep them up to date * Add missed await * Replace some more runAllTimers and round down the wait time for sanity * Remove double comment * Typo * Add a method back that will fetch capabilities if they're not already there * Add tests * Catch exception here too * Add test for room version code --- spec/integ/crypto/megolm-backup.spec.ts | 4 +- spec/integ/matrix-client-methods.spec.ts | 107 ++++++++++++-- .../matrix-client-syncing-errors.spec.ts | 9 +- spec/test-utils/client.ts | 2 +- spec/unit/rendezvous/rendezvous.spec.ts | 2 +- spec/unit/room.spec.ts | 43 ++++++ src/client.ts | 110 +++++--------- src/matrix.ts | 1 + src/models/room.ts | 16 ++- src/rendezvous/MSC3906Rendezvous.ts | 9 +- src/serverCapabilities.ts | 136 ++++++++++++++++++ 11 files changed, 340 insertions(+), 99 deletions(-) create mode 100644 src/serverCapabilities.ts diff --git a/spec/integ/crypto/megolm-backup.spec.ts b/spec/integ/crypto/megolm-backup.spec.ts index eee0eafebc2..bc36f940ffc 100644 --- a/spec/integ/crypto/megolm-backup.spec.ts +++ b/spec/integ/crypto/megolm-backup.spec.ts @@ -796,7 +796,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("megolm-keys backup (%s)", (backe const result = await aliceCrypto.checkKeyBackupAndEnable(); expect(result).toBeTruthy(); - jest.runAllTimers(); + jest.advanceTimersByTime(10 * 60 * 1000); await failurePromise; // Fix the endpoint to do successful uploads @@ -829,7 +829,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("megolm-keys backup (%s)", (backe }); // run the timers, which will make the backup loop redo the request - await jest.runAllTimersAsync(); + await jest.advanceTimersByTimeAsync(10 * 60 * 1000); await successPromise; await allKeysUploadedPromise; }); diff --git a/spec/integ/matrix-client-methods.spec.ts b/spec/integ/matrix-client-methods.spec.ts index c321403d591..72793711f62 100644 --- a/spec/integ/matrix-client-methods.spec.ts +++ b/spec/integ/matrix-client-methods.spec.ts @@ -1293,18 +1293,109 @@ describe("MatrixClient", function () { }); describe("getCapabilities", () => { - it("should cache by default", async () => { + it("should return cached capabilities if present", async () => { + const capsObject = { + "m.change_password": false, + }; + + httpBackend!.when("GET", "/versions").respond(200, {}); + httpBackend!.when("GET", "/pushrules").respond(200, {}); + httpBackend!.when("POST", "/filter").respond(200, { filter_id: "a filter id" }); httpBackend.when("GET", "/capabilities").respond(200, { - capabilities: { - "m.change_password": false, - }, + capabilities: capsObject, + }); + + client.startClient(); + await httpBackend!.flushAllExpected(); + + expect(await client.getCapabilities()).toEqual(capsObject); + }); + + it("should fetch capabilities if cache not present", async () => { + const capsObject = { + "m.change_password": false, + }; + + httpBackend.when("GET", "/capabilities").respond(200, { + capabilities: capsObject, + }); + + const capsPromise = client.getCapabilities(); + await httpBackend!.flushAllExpected(); + + expect(await capsPromise).toEqual(capsObject); + }); + }); + + describe("getCachedCapabilities", () => { + it("should return cached capabilities or undefined", async () => { + const capsObject = { + "m.change_password": false, + }; + + httpBackend!.when("GET", "/versions").respond(200, {}); + httpBackend!.when("GET", "/pushrules").respond(200, {}); + httpBackend!.when("POST", "/filter").respond(200, { filter_id: "a filter id" }); + httpBackend.when("GET", "/capabilities").respond(200, { + capabilities: capsObject, + }); + + expect(client.getCachedCapabilities()).toBeUndefined(); + + client.startClient(); + + await httpBackend!.flushAllExpected(); + + expect(client.getCachedCapabilities()).toEqual(capsObject); + }); + }); + + describe("fetchCapabilities", () => { + const capsObject = { + "m.change_password": false, + }; + + beforeEach(() => { + httpBackend.when("GET", "/capabilities").respond(200, { + capabilities: capsObject, }); - const prom = httpBackend.flushAllExpected(); - const capabilities1 = await client.getCapabilities(); - const capabilities2 = await client.getCapabilities(); + }); + + afterEach(() => { + jest.useRealTimers(); + }); + + it("should always fetch capabilities and then cache", async () => { + const prom = client.fetchCapabilities(); + await httpBackend.flushAllExpected(); + const caps = await prom; + + expect(caps).toEqual(capsObject); + }); + + it("should write-through the cache", async () => { + httpBackend!.when("GET", "/versions").respond(200, {}); + httpBackend!.when("GET", "/pushrules").respond(200, {}); + httpBackend!.when("POST", "/filter").respond(200, { filter_id: "a filter id" }); + + client.startClient(); + await httpBackend!.flushAllExpected(); + + expect(client.getCachedCapabilities()).toEqual(capsObject); + + const newCapsObject = { + "m.change_password": true, + }; + + httpBackend.when("GET", "/capabilities").respond(200, { + capabilities: newCapsObject, + }); + + const prom = client.fetchCapabilities(); + await httpBackend.flushAllExpected(); await prom; - expect(capabilities1).toStrictEqual(capabilities2); + expect(client.getCachedCapabilities()).toEqual(newCapsObject); }); }); diff --git a/spec/integ/matrix-client-syncing-errors.spec.ts b/spec/integ/matrix-client-syncing-errors.spec.ts index ab11a33adfc..4133ffb9aaa 100644 --- a/spec/integ/matrix-client-syncing-errors.spec.ts +++ b/spec/integ/matrix-client-syncing-errors.spec.ts @@ -105,13 +105,13 @@ describe("MatrixClient syncing errors", () => { await client!.startClient(); expect(await syncEvents[0].promise).toBe(SyncState.Error); - jest.runAllTimers(); // this will skip forward to trigger the keepAlive/sync + jest.advanceTimersByTime(60 * 1000); // this will skip forward to trigger the keepAlive/sync expect(await syncEvents[1].promise).toBe(SyncState.Error); - jest.runAllTimers(); // this will skip forward to trigger the keepAlive/sync + jest.advanceTimersByTime(60 * 1000); // this will skip forward to trigger the keepAlive/sync expect(await syncEvents[2].promise).toBe(SyncState.Prepared); - jest.runAllTimers(); // this will skip forward to trigger the keepAlive/sync + jest.advanceTimersByTime(60 * 1000); // this will skip forward to trigger the keepAlive/sync expect(await syncEvents[3].promise).toBe(SyncState.Syncing); - jest.runAllTimers(); // this will skip forward to trigger the keepAlive/sync + jest.advanceTimersByTime(60 * 1000); // this will skip forward to trigger the keepAlive/sync expect(await syncEvents[4].promise).toBe(SyncState.Syncing); }); @@ -119,6 +119,7 @@ describe("MatrixClient syncing errors", () => { jest.useFakeTimers(); fetchMock.config.overwriteRoutes = false; fetchMock + .get("end:capabilities", {}) .getOnce("end:versions", {}) // first version check without credentials needs to succeed .get("end:versions", unknownTokenErrorData) // further version checks fails with 401 .get("end:pushrules/", 401) // fails with 401 without an error. This does happen in practice e.g. with Synapse diff --git a/spec/test-utils/client.ts b/spec/test-utils/client.ts index 8123d0d65e6..62e11dffa13 100644 --- a/spec/test-utils/client.ts +++ b/spec/test-utils/client.ts @@ -88,6 +88,6 @@ export const mockClientMethodsEvents = () => ({ export const mockClientMethodsServer = (): Partial, unknown>> => ({ getIdentityServerUrl: jest.fn(), getHomeserverUrl: jest.fn(), - getCapabilities: jest.fn().mockReturnValue({}), + getCachedCapabilities: jest.fn().mockReturnValue({}), doesServerSupportUnstableFeature: jest.fn().mockResolvedValue(false), }); diff --git a/spec/unit/rendezvous/rendezvous.spec.ts b/spec/unit/rendezvous/rendezvous.spec.ts index f600639d829..a208ffc590e 100644 --- a/spec/unit/rendezvous/rendezvous.spec.ts +++ b/spec/unit/rendezvous/rendezvous.spec.ts @@ -116,7 +116,7 @@ function makeMockClient(opts: { }, }; }, - getCapabilities() { + getCachedCapabilities() { return opts.msc3882r0Only ? {} : { diff --git a/spec/unit/room.spec.ts b/spec/unit/room.spec.ts index eb90b8bdfa0..542bbcb2536 100644 --- a/spec/unit/room.spec.ts +++ b/spec/unit/room.spec.ts @@ -4034,4 +4034,47 @@ describe("Room", function () { expect(room.getLastThread()).toBe(thread2); }); }); + + describe("getRecommendedVersion", () => { + it("returns the server's recommended version from capabilities", async () => { + const client = new TestClient(userA).client; + client.getCapabilities = jest.fn().mockReturnValue({ + ["m.room_versions"]: { + default: "1", + available: ["1", "2"], + }, + }); + const room = new Room(roomId, client, userA); + expect(await room.getRecommendedVersion()).toEqual({ + version: "1", + needsUpgrade: false, + urgent: false, + }); + }); + + it("force-refreshes versions to make sure an upgrade is necessary", async () => { + const client = new TestClient(userA).client; + client.getCapabilities = jest.fn().mockReturnValue({ + ["m.room_versions"]: { + default: "5", + available: ["5"], + }, + }); + + client.fetchCapabilities = jest.fn().mockResolvedValue({ + ["m.room_versions"]: { + default: "1", + available: ["1"], + }, + }); + + const room = new Room(roomId, client, userA); + expect(await room.getRecommendedVersion()).toEqual({ + version: "1", + needsUpgrade: false, + urgent: false, + }); + expect(client.fetchCapabilities).toHaveBeenCalled(); + }); + }); }); diff --git a/src/client.ts b/src/client.ts index 40a9e5d89b7..300b5903399 100644 --- a/src/client.ts +++ b/src/client.ts @@ -226,6 +226,7 @@ import { getRelationsThreadFilter } from "./thread-utils"; import { KnownMembership, Membership } from "./@types/membership"; import { RoomMessageEventContent, StickerEventContent } from "./@types/events"; import { ImageInfo } from "./@types/media"; +import { Capabilities, ServerCapabilities } from "./serverCapabilities"; export type Store = IStore; @@ -233,7 +234,6 @@ export type ResetTimelineCallback = (roomId: string) => boolean; const SCROLLBACK_DELAY_MS = 3000; export const CRYPTO_ENABLED: boolean = isCryptoAvailable(); -const CAPABILITIES_CACHE_MS = 21600000; // 6 hours - an arbitrary value const TURN_CHECK_INTERVAL = 10 * 60 * 1000; // poll for turn credentials every 10 minutes export const UNSTABLE_MSC3852_LAST_SEEN_UA = new UnstableValue( @@ -518,26 +518,6 @@ export interface IStartClientOpts { export interface IStoredClientOpts extends IStartClientOpts {} -export enum RoomVersionStability { - Stable = "stable", - Unstable = "unstable", -} - -export interface IRoomVersionsCapability { - default: string; - available: Record; -} - -export interface ICapability { - enabled: boolean; -} - -export interface IChangePasswordCapability extends ICapability {} - -export interface IThreadsCapability extends ICapability {} - -export interface IGetLoginTokenCapability extends ICapability {} - export const GET_LOGIN_TOKEN_CAPABILITY = new NamespacedValue( "m.get_login_token", "org.matrix.msc3882.get_login_token", @@ -547,19 +527,6 @@ export const UNSTABLE_MSC2666_SHARED_ROOMS = "uk.half-shot.msc2666"; export const UNSTABLE_MSC2666_MUTUAL_ROOMS = "uk.half-shot.msc2666.mutual_rooms"; export const UNSTABLE_MSC2666_QUERY_MUTUAL_ROOMS = "uk.half-shot.msc2666.query_mutual_rooms"; -/** - * A representation of the capabilities advertised by a homeserver as defined by - * [Capabilities negotiation](https://spec.matrix.org/v1.6/client-server-api/#get_matrixclientv3capabilities). - */ -export interface Capabilities { - [key: string]: any; - "m.change_password"?: IChangePasswordCapability; - "m.room_versions"?: IRoomVersionsCapability; - "io.element.thread"?: IThreadsCapability; - "m.get_login_token"?: IGetLoginTokenCapability; - "org.matrix.msc3882.get_login_token"?: IGetLoginTokenCapability; -} - enum CrossSigningKeyType { MasterKey = "master_key", SelfSigningKey = "self_signing_key", @@ -1293,10 +1260,6 @@ export class MatrixClient extends TypedEventEmitter; - public cachedCapabilities?: { - capabilities: Capabilities; - expiration: number; - }; protected clientWellKnown?: IClientWellKnown; protected clientWellKnownPromise?: Promise; protected turnServers: ITurnServer[] = []; @@ -1325,6 +1288,8 @@ export class MatrixClient extends TypedEventEmitter { - const now = new Date().getTime(); - - if (this.cachedCapabilities && !fresh) { - if (now < this.cachedCapabilities.expiration) { - this.logger.debug("Returning cached capabilities"); - return Promise.resolve(this.cachedCapabilities.capabilities); - } - } - - type Response = { - capabilities?: Capabilities; - }; - return this.http - .authedRequest(Method.Get, "/capabilities") - .catch((e: Error): Response => { - // We swallow errors because we need a default object anyhow - this.logger.error(e); - return {}; - }) - .then((r = {}) => { - const capabilities = r["capabilities"] || {}; - - // If the capabilities missed the cache, cache it for a shorter amount - // of time to try and refresh them later. - const cacheMs = Object.keys(capabilities).length ? CAPABILITIES_CACHE_MS : 60000 + Math.random() * 5000; + public async getCapabilities(): Promise { + const caps = this.serverCapabilitiesService.getCachedCapabilities(); + if (caps) return caps; + return this.serverCapabilitiesService.fetchCapabilities(); + } - this.cachedCapabilities = { - capabilities, - expiration: now + cacheMs, - }; + /** + * Gets the cached capabilities of the homeserver. If none have been fetched yet, + * return undefined. + * + * @returns The capabilities of the homeserver + */ + public getCachedCapabilities(): Capabilities | undefined { + return this.serverCapabilitiesService.getCachedCapabilities(); + } - this.logger.debug("Caching capabilities: ", capabilities); - return capabilities; - }); + /** + * Fetches the latest capabilities from the homeserver, ignoring any cached + * versions. The newly returned version is cached. + * + * @returns A promise which resolves to the capabilities of the homeserver + */ + public fetchCapabilities(): Promise { + return this.serverCapabilitiesService.fetchCapabilities(); } /** diff --git a/src/matrix.ts b/src/matrix.ts index 793a894e0d0..50a2a72f65d 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -24,6 +24,7 @@ import { RoomWidgetClient, ICapabilities } from "./embedded"; import { CryptoStore } from "./crypto/store/base"; export * from "./client"; +export * from "./serverCapabilities"; export * from "./embedded"; export * from "./http-api"; export * from "./autodiscovery"; diff --git a/src/models/room.ts b/src/models/room.ts index d8b90a60856..7e1284b4e9b 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -41,7 +41,7 @@ import { RelationType, UNSIGNED_THREAD_ID_FIELD, } from "../@types/event"; -import { IRoomVersionsCapability, MatrixClient, PendingEventOrdering, RoomVersionStability } from "../client"; +import { MatrixClient, PendingEventOrdering } from "../client"; import { GuestAccess, HistoryVisibility, JoinRule, ResizeMethod } from "../@types/partials"; import { Filter, IFilterDefinition } from "../filter"; import { RoomState, RoomStateEvent, RoomStateEventHandlerMap } from "./room-state"; @@ -70,6 +70,7 @@ import { RoomReceipts } from "./room-receipts"; import { compareEventOrdering } from "./compare-event-ordering"; import * as utils from "../utils"; import { KnownMembership, Membership } from "../@types/membership"; +import { Capabilities, IRoomVersionsCapability, RoomVersionStability } from "../serverCapabilities"; // These constants are used as sane defaults when the homeserver doesn't support // the m.room_versions capability. In practice, KNOWN_SAFE_ROOM_VERSION should be @@ -611,7 +612,10 @@ export class Room extends ReadReceipt { * Resolves to the version the room should be upgraded to. */ public async getRecommendedVersion(): Promise { - const capabilities = await this.client.getCapabilities(); + let capabilities: Capabilities = {}; + try { + capabilities = await this.client.getCapabilities(); + } catch (e) {} let versionCap = capabilities["m.room_versions"]; if (!versionCap) { versionCap = { @@ -636,8 +640,12 @@ export class Room extends ReadReceipt { "to be supporting a newer room version we don't know about.", ); - const caps = await this.client.getCapabilities(true); - versionCap = caps["m.room_versions"]; + try { + capabilities = await this.client.fetchCapabilities(); + } catch (e) { + logger.warn("Failed to refresh room version capabilities", e); + } + versionCap = capabilities["m.room_versions"]; if (!versionCap) { logger.warn("No room version capability - assuming upgrade required."); return result; diff --git a/src/rendezvous/MSC3906Rendezvous.ts b/src/rendezvous/MSC3906Rendezvous.ts index f83aff26123..4a2c3fa3319 100644 --- a/src/rendezvous/MSC3906Rendezvous.ts +++ b/src/rendezvous/MSC3906Rendezvous.ts @@ -22,12 +22,12 @@ import { LegacyRendezvousFailureReason as RendezvousFailureReason, RendezvousIntent, } from "."; -import { IGetLoginTokenCapability, MatrixClient, GET_LOGIN_TOKEN_CAPABILITY } from "../client"; +import { MatrixClient, GET_LOGIN_TOKEN_CAPABILITY } from "../client"; import { buildFeatureSupportMap, Feature, ServerSupport } from "../feature"; import { logger } from "../logger"; import { sleep } from "../utils"; import { CrossSigningKey } from "../crypto-api"; -import { Device } from "../matrix"; +import { Capabilities, Device, IGetLoginTokenCapability } from "../matrix"; enum PayloadType { Start = "m.login.start", @@ -109,7 +109,10 @@ export class MSC3906Rendezvous { logger.info(`Connected to secure channel with checksum: ${checksum} our intent is ${this.ourIntent}`); // in stable and unstable r1 the availability is exposed as a capability - const capabilities = await this.client.getCapabilities(); + let capabilities: Capabilities = {}; + try { + capabilities = await this.client.getCapabilities(); + } catch (e) {} // in r0 of MSC3882 the availability is exposed as a feature flag const features = await buildFeatureSupportMap(await this.client.getVersions()); const capability = GET_LOGIN_TOKEN_CAPABILITY.findIn(capabilities); diff --git a/src/serverCapabilities.ts b/src/serverCapabilities.ts new file mode 100644 index 00000000000..845d2e9ac72 --- /dev/null +++ b/src/serverCapabilities.ts @@ -0,0 +1,136 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { IHttpOpts, MatrixHttpApi, Method } from "./http-api"; +import { logger } from "./logger"; + +// How often we update the server capabilities. +// 6 hours - an arbitrary value, but they should change very infrequently. +const CAPABILITIES_CACHE_MS = 6 * 60 * 60 * 1000; + +// How long we want before retrying if we couldn't fetch +const CAPABILITIES_RETRY_MS = 30 * 1000; + +export interface ICapability { + enabled: boolean; +} + +export interface IChangePasswordCapability extends ICapability {} + +export interface IThreadsCapability extends ICapability {} + +export interface IGetLoginTokenCapability extends ICapability {} + +export interface ISetDisplayNameCapability extends ICapability {} + +export interface ISetAvatarUrlCapability extends ICapability {} + +export enum RoomVersionStability { + Stable = "stable", + Unstable = "unstable", +} + +export interface IRoomVersionsCapability { + default: string; + available: Record; +} + +/** + * A representation of the capabilities advertised by a homeserver as defined by + * [Capabilities negotiation](https://spec.matrix.org/v1.6/client-server-api/#get_matrixclientv3capabilities). + */ +export interface Capabilities { + [key: string]: any; + "m.change_password"?: IChangePasswordCapability; + "m.room_versions"?: IRoomVersionsCapability; + "io.element.thread"?: IThreadsCapability; + "m.get_login_token"?: IGetLoginTokenCapability; + "org.matrix.msc3882.get_login_token"?: IGetLoginTokenCapability; + "m.set_displayname"?: ISetDisplayNameCapability; + "m.set_avatar_url"?: ISetAvatarUrlCapability; +} + +type CapabilitiesResponse = { + capabilities: Capabilities; +}; + +/** + * Manages storing and periodically refreshing the server capabilities. + */ +export class ServerCapabilities { + private capabilities?: Capabilities; + private retryTimeout?: ReturnType; + private refreshTimeout?: ReturnType; + + public constructor(private readonly http: MatrixHttpApi) {} + + /** + * Starts periodically fetching the server capabilities. + */ + public start(): void { + this.poll().then(); + } + + /** + * Stops the service + */ + public stop(): void { + this.clearTimeouts(); + } + + /** + * Returns the cached capabilities, or undefined if none are cached. + * @returns the current capabilities, if any. + */ + public getCachedCapabilities(): Capabilities | undefined { + return this.capabilities; + } + + /** + * Fetches the latest server capabilities from the homeserver and returns them, or rejects + * on failure. + */ + public fetchCapabilities = async (): Promise => { + const resp = await this.http.authedRequest(Method.Get, "/capabilities"); + this.capabilities = resp["capabilities"]; + return this.capabilities; + }; + + private poll = async (): Promise => { + try { + await this.fetchCapabilities(); + this.clearTimeouts(); + this.refreshTimeout = setTimeout(this.poll, CAPABILITIES_CACHE_MS); + logger.debug("Fetched new server capabilities"); + } catch (e) { + this.clearTimeouts(); + const howLong = Math.floor(CAPABILITIES_RETRY_MS + Math.random() * 5000); + this.retryTimeout = setTimeout(this.poll, howLong); + logger.warn(`Failed to refresh capabilities: retrying in ${howLong}ms`, e); + } + }; + + private clearTimeouts(): void { + if (this.refreshTimeout) { + clearInterval(this.refreshTimeout); + this.refreshTimeout = undefined; + } + if (this.retryTimeout) { + clearTimeout(this.retryTimeout); + this.retryTimeout = undefined; + } + } +} From ab6f86536f203448bd0c690f98b489bb5e1a3203 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 19 Jun 2024 16:11:38 +0100 Subject: [PATCH 280/595] Replace deprecated babel proposal plugins (#4254) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- babel.config.js | 6 +- package.json | 6 +- yarn.lock | 156 ++---------------------------------------------- 3 files changed, 12 insertions(+), 156 deletions(-) diff --git a/babel.config.js b/babel.config.js index 6b39ec8271b..57d061ffcd6 100644 --- a/babel.config.js +++ b/babel.config.js @@ -17,9 +17,9 @@ module.exports = { "@babel/preset-typescript", ], plugins: [ - "@babel/plugin-proposal-numeric-separator", - "@babel/plugin-proposal-class-properties", - "@babel/plugin-proposal-object-rest-spread", + "@babel/plugin-transform-numeric-separator", + "@babel/plugin-transform-class-properties", + "@babel/plugin-transform-object-rest-spread", "@babel/plugin-syntax-dynamic-import", "@babel/plugin-transform-runtime", ], diff --git a/package.json b/package.json index f505f738026..b5525065d6b 100644 --- a/package.json +++ b/package.json @@ -74,9 +74,9 @@ "@babel/core": "^7.12.10", "@babel/eslint-parser": "^7.12.10", "@babel/eslint-plugin": "^7.12.10", - "@babel/plugin-proposal-class-properties": "^7.12.1", - "@babel/plugin-proposal-numeric-separator": "^7.12.7", - "@babel/plugin-proposal-object-rest-spread": "^7.12.1", + "@babel/plugin-transform-class-properties": "^7.12.1", + "@babel/plugin-transform-numeric-separator": "^7.12.7", + "@babel/plugin-transform-object-rest-spread": "^7.12.1", "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-transform-runtime": "^7.12.10", "@babel/preset-env": "^7.12.11", diff --git a/yarn.lock b/yarn.lock index b1135940e07..4b5d83f32de 100644 --- a/yarn.lock +++ b/yarn.lock @@ -75,21 +75,11 @@ "@babel/highlight" "^7.24.7" picocolors "^1.0.0" -"@babel/compat-data@^7.20.5": - version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730" - integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== - "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.7.tgz#d23bbea508c3883ba8251fb4164982c36ea577ed" integrity sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw== -"@babel/compat-data@^7.22.9": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" - integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== - "@babel/compat-data@^7.23.5": version "7.24.6" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.6.tgz#b3600217688cabb26e25f8e467019e66d71b7ae2" @@ -183,13 +173,6 @@ "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" -"@babel/helper-annotate-as-pure@^7.22.5": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.6.tgz#517af93abc77924f9b2514c407bbef527fb8938d" - integrity sha512-DitEzDfOMnd13kZnDqns1ccmftwJTS9DMkyn9pYTxulS7bZxUxpMly3Nf23QQ6NwA4UB8lAqjbqWtyvElEMAkg== - dependencies: - "@babel/types" "^7.24.6" - "@babel/helper-annotate-as-pure@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz#5373c7bc8366b12a033b4be1ac13a206c6656aab" @@ -205,17 +188,6 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-compilation-targets@^7.20.7": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz#01d648bbc25dd88f513d862ee0df27b7d4e67024" - integrity sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q== - dependencies: - "@babel/compat-data" "^7.22.9" - "@babel/helper-validator-option" "^7.22.5" - browserslist "^4.21.9" - lru-cache "^5.1.1" - semver "^6.3.1" - "@babel/helper-compilation-targets@^7.22.15": version "7.23.6" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" @@ -238,21 +210,6 @@ lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.18.6": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz#dd2612d59eac45588021ac3d6fa976d08f4e95a3" - integrity sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-environment-visitor" "^7.22.5" - "@babel/helper-function-name" "^7.22.5" - "@babel/helper-member-expression-to-functions" "^7.22.5" - "@babel/helper-optimise-call-expression" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - semver "^6.3.1" - "@babel/helper-create-class-features-plugin@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.7.tgz#2eaed36b3a1c11c53bdf80d53838b293c52f5b3b" @@ -300,7 +257,7 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0": +"@babel/helper-function-name@^7.23.0": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== @@ -330,20 +287,6 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-member-expression-to-functions@^7.22.15": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366" - integrity sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA== - dependencies: - "@babel/types" "^7.23.0" - -"@babel/helper-member-expression-to-functions@^7.22.5": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.15.tgz#b95a144896f6d491ca7863576f820f3628818621" - integrity sha512-qLNsZbgrNh0fDQBCPocSL8guki1hcPvltGDv/NxvUoABwFq7GkKSu1nRXeJkVZc+wJvne2E0RKQz+2SQrz6eAA== - dependencies: - "@babel/types" "^7.22.15" - "@babel/helper-member-expression-to-functions@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.7.tgz#67613d068615a70e4ed5101099affc7a41c5225f" @@ -389,13 +332,6 @@ "@babel/helper-split-export-declaration" "^7.24.7" "@babel/helper-validator-identifier" "^7.24.7" -"@babel/helper-optimise-call-expression@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e" - integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw== - dependencies: - "@babel/types" "^7.22.5" - "@babel/helper-optimise-call-expression@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.7.tgz#8b0a0456c92f6b323d27cfd00d1d664e76692a0f" @@ -408,11 +344,6 @@ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz#98c84fe6fe3d0d3ae7bfc3a5e166a46844feb2a0" integrity sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg== -"@babel/helper-plugin-utils@^7.20.2": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" - integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== - "@babel/helper-remap-async-to-generator@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.24.7.tgz#b3f0f203628522713849d49403f1a414468be4c7" @@ -422,15 +353,6 @@ "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-wrap-function" "^7.24.7" -"@babel/helper-replace-supers@^7.22.9": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793" - integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw== - dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-member-expression-to-functions" "^7.22.15" - "@babel/helper-optimise-call-expression" "^7.22.5" - "@babel/helper-replace-supers@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.24.7.tgz#f933b7eed81a1c0265740edc91491ce51250f765" @@ -455,13 +377,6 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-skip-transparent-expression-wrappers@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847" - integrity sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q== - dependencies: - "@babel/types" "^7.22.5" - "@babel/helper-skip-transparent-expression-wrappers@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.7.tgz#5f8fa83b69ed5c27adc56044f8be2b3ea96669d9" @@ -519,11 +434,6 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== -"@babel/helper-validator-option@^7.22.5": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" - integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== - "@babel/helper-validator-option@^7.23.5": version "7.24.6" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.6.tgz#59d8e81c40b7d9109ab7e74457393442177f460a" @@ -657,33 +567,6 @@ "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-proposal-class-properties@^7.12.1": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" - integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-proposal-numeric-separator@^7.12.7": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz#899b14fbafe87f053d2c5ff05b36029c62e13c75" - integrity sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - -"@babel/plugin-proposal-object-rest-spread@^7.12.1": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz#aa662940ef425779c75534a5c41e9d936edc390a" - integrity sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg== - dependencies: - "@babel/compat-data" "^7.20.5" - "@babel/helper-compilation-targets" "^7.20.7" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.20.7" - "@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": version "7.21.0-placeholder-for-preset-env.2" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703" @@ -891,7 +774,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-class-properties@^7.24.7": +"@babel/plugin-transform-class-properties@^7.12.1", "@babel/plugin-transform-class-properties@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.7.tgz#256879467b57b0b68c7ddfc5b76584f398cd6834" integrity sha512-vKbfawVYayKcSeSR5YYzzyXvsDFWU2mD8U5TFeXtbCPLFUqe7GyCgvO6XDHzje862ODrOwy6WCPmKeWHbCFJ4w== @@ -1081,7 +964,7 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-transform-numeric-separator@^7.24.7": +"@babel/plugin-transform-numeric-separator@^7.12.7", "@babel/plugin-transform-numeric-separator@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.7.tgz#bea62b538c80605d8a0fac9b40f48e97efa7de63" integrity sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA== @@ -1089,7 +972,7 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-transform-object-rest-spread@^7.24.7": +"@babel/plugin-transform-object-rest-spread@^7.12.1", "@babel/plugin-transform-object-rest-spread@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.7.tgz#d13a2b93435aeb8a197e115221cab266ba6e55d6" integrity sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q== @@ -1124,13 +1007,6 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -"@babel/plugin-transform-parameters@^7.20.7": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz#c3542dd3c39b42c8069936e48717a8d179d63a18" - integrity sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-transform-parameters@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.7.tgz#5881f0ae21018400e320fc7eb817e529d1254b68" @@ -1490,7 +1366,7 @@ "@babel/helper-validator-identifier" "^7.22.20" to-fast-properties "^2.0.0" -"@babel/types@^7.24.6", "@babel/types@^7.24.7", "@babel/types@^7.4.4": +"@babel/types@^7.24.7", "@babel/types@^7.4.4": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.7.tgz#6027fe12bc1aa724cd32ab113fb7f1988f1f66f2" integrity sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q== @@ -2828,16 +2704,6 @@ braces@^3.0.3, braces@~3.0.2: dependencies: fill-range "^7.1.1" -browserslist@^4.21.9: - version "4.22.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.2.tgz#704c4943072bd81ea18997f3bd2180e89c77874b" - integrity sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A== - dependencies: - caniuse-lite "^1.0.30001565" - electron-to-chromium "^1.4.601" - node-releases "^2.0.14" - update-browserslist-db "^1.0.13" - browserslist@^4.22.2, browserslist@^4.23.0: version "4.23.1" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.1.tgz#ce4af0534b3d37db5c1a4ca98b9080f985041e96" @@ -2896,11 +2762,6 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001565: - version "1.0.30001583" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001583.tgz#abb2970cc370801dc7e27bf290509dc132cfa390" - integrity sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q== - caniuse-lite@^1.0.30001629: version "1.0.30001632" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001632.tgz#964207b7cba5851701afb4c8afaf1448db3884b6" @@ -3293,11 +3154,6 @@ easy-table@1.2.0: optionalDependencies: wcwidth "^1.0.1" -electron-to-chromium@^1.4.601: - version "1.4.655" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.655.tgz#112410db0d7f9c2b4ed8baa3b1b548522a6f89d4" - integrity sha512-2yszojF7vIZ68adIOvzV4bku8OZad9w5H9xF3ZAMZjPuOjBarlflUkjN6DggdV+L71WZuKUfKUhov/34+G5QHg== - electron-to-chromium@^1.4.796: version "1.4.798" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.798.tgz#6a3fcab2edc1e66e3883466f6b4b8944323c0164" @@ -6734,7 +6590,7 @@ universalify@^0.2.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== -update-browserslist-db@^1.0.13, update-browserslist-db@^1.0.16: +update-browserslist-db@^1.0.16: version "1.0.16" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz#f6d489ed90fb2f07d67784eb3f53d7891f736356" integrity sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ== From 238eea0ef5c82d0a11b8d5cc5c04104d6c94c4c1 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Thu, 20 Jun 2024 09:28:17 +0100 Subject: [PATCH 281/595] Upgrade Rust Crypto SDK to 6.1.0 (#4261) Fixes https://github.com/element-hq/element-web/issues/27590 --- package.json | 2 +- yarn.lock | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index b5525065d6b..e9d5d0fb1d6 100644 --- a/package.json +++ b/package.json @@ -74,10 +74,10 @@ "@babel/core": "^7.12.10", "@babel/eslint-parser": "^7.12.10", "@babel/eslint-plugin": "^7.12.10", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-transform-class-properties": "^7.12.1", "@babel/plugin-transform-numeric-separator": "^7.12.7", "@babel/plugin-transform-object-rest-spread": "^7.12.1", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-transform-runtime": "^7.12.10", "@babel/preset-env": "^7.12.11", "@babel/preset-typescript": "^7.12.7", diff --git a/yarn.lock b/yarn.lock index 4b5d83f32de..44c69bbde5d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1802,9 +1802,9 @@ "@jridgewell/sourcemap-codec" "^1.4.14" "@matrix-org/matrix-sdk-crypto-wasm@^6.0.0": - version "6.0.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-6.0.0.tgz#5e62ff07ee85a2e1b766a116683b7715a5e70c03" - integrity sha512-VVXfkIX2qr5Lz8EEUqsv/RBs0hZYoD1TyvtnaaNHW+2WaBo+TXu6Kpz2cQBNvRQbR3GhxDa/ZyQUxZYotORLWg== + version "6.1.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-6.1.0.tgz#1cedf2bcbd6795e297fd45ea4a33f2c8c5204fdd" + integrity sha512-8Wn4TT9PEJswfE8+6mA60JHrxyiWYXfM4EM5800tLz+Rl9QRGk9JDF0o0cTb26v6bfXTa3/pCGWAkUVk0ROPEw== "@matrix-org/olm@3.2.15": version "3.2.15" From 6a15e8f1a0722ee2725cf4e125989ebf7767b622 Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Fri, 21 Jun 2024 20:40:27 +0900 Subject: [PATCH 282/595] Use legacy call membership if anyone else is (#4260) * Use legacy call membership if anyone else is * Convert nullish to boolean * Update tests * Lint * Use computed decision to use legacy events or not * Check if discovered legacy sessions are ongoing * Lint * Lint again * Increase test coverage --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 146 ++++++++++++++++--- spec/unit/matrixrtc/mocks.ts | 35 +++-- src/matrixrtc/MatrixRTCSession.ts | 25 +++- 3 files changed, 169 insertions(+), 37 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index e481be966d3..d0ca37b2d85 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -16,7 +16,11 @@ limitations under the License. import { EventTimeline, EventType, MatrixClient, MatrixError, MatrixEvent, Room } from "../../../src"; import { KnownMembership } from "../../../src/@types/membership"; -import { CallMembershipData } from "../../../src/matrixrtc/CallMembership"; +import { + CallMembershipData, + CallMembershipDataLegacy, + SessionMembershipData, +} from "../../../src/matrixrtc/CallMembership"; import { MatrixRTCSession, MatrixRTCSessionEvent } from "../../../src/matrixrtc/MatrixRTCSession"; import { EncryptionKeysEventContent } from "../../../src/matrixrtc/types"; import { randomString } from "../../../src/randomstring"; @@ -99,22 +103,33 @@ describe("MatrixRTCSession", () => { }); it("safely ignores events with no memberships section", () => { + const roomId = randomString(8); + const event = { + getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), + getContent: jest.fn().mockReturnValue({}), + getSender: jest.fn().mockReturnValue("@mock:user.example"), + getTs: jest.fn().mockReturnValue(1000), + getLocalAge: jest.fn().mockReturnValue(0), + }; const mockRoom = { ...makeMockRoom([]), - roomId: randomString(8), + roomId, getLiveTimeline: jest.fn().mockReturnValue({ getState: jest.fn().mockReturnValue({ on: jest.fn(), off: jest.fn(), - getStateEvents: (_type: string, _stateKey: string) => [ - { - getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), - getContent: jest.fn().mockReturnValue({}), - getSender: jest.fn().mockReturnValue("@mock:user.example"), - getTs: jest.fn().mockReturnValue(1000), - getLocalAge: jest.fn().mockReturnValue(0), - }, - ], + getStateEvents: (_type: string, _stateKey: string) => [event], + events: new Map([ + [ + EventType.GroupCallMemberPrefix, + { + size: () => true, + has: (_stateKey: string) => true, + get: (_stateKey: string) => event, + values: () => [event], + }, + ], + ]), }), }), }; @@ -123,22 +138,33 @@ describe("MatrixRTCSession", () => { }); it("safely ignores events with junk memberships section", () => { + const roomId = randomString(8); + const event = { + getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), + getContent: jest.fn().mockReturnValue({ memberships: ["i am a fish"] }), + getSender: jest.fn().mockReturnValue("@mock:user.example"), + getTs: jest.fn().mockReturnValue(1000), + getLocalAge: jest.fn().mockReturnValue(0), + }; const mockRoom = { ...makeMockRoom([]), - roomId: randomString(8), + roomId, getLiveTimeline: jest.fn().mockReturnValue({ getState: jest.fn().mockReturnValue({ on: jest.fn(), off: jest.fn(), - getStateEvents: (_type: string, _stateKey: string) => [ - { - getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), - getContent: jest.fn().mockReturnValue({ memberships: "i am a fish" }), - getSender: jest.fn().mockReturnValue("@mock:user.example"), - getTs: jest.fn().mockReturnValue(1000), - getLocalAge: jest.fn().mockReturnValue(0), - }, - ], + getStateEvents: (_type: string, _stateKey: string) => [event], + events: new Map([ + [ + EventType.GroupCallMemberPrefix, + { + size: () => true, + has: (_stateKey: string) => true, + get: (_stateKey: string) => event, + values: () => [event], + }, + ], + ]), }), }), }; @@ -186,6 +212,67 @@ describe("MatrixRTCSession", () => { expect(sess.memberships).toHaveLength(0); }); + describe("updateCallMembershipEvent", () => { + const mockFocus = { type: "livekit", livekit_service_url: "https://test.org" }; + const joinSessionConfig = { useLegacyMemberEvents: false }; + + const legacyMembershipData: CallMembershipDataLegacy = { + call_id: "", + scope: "m.room", + application: "m.call", + device_id: "AAAAAAA_legacy", + expires: 60 * 60 * 1000, + membershipID: "bloop", + foci_active: [mockFocus], + }; + + const expiredLegacyMembershipData: CallMembershipDataLegacy = { + ...legacyMembershipData, + device_id: "AAAAAAA_legacy_expired", + expires: 0, + }; + + const sessionMembershipData: SessionMembershipData = { + call_id: "", + scope: "m.room", + application: "m.call", + device_id: "AAAAAAA_session", + focus_active: mockFocus, + foci_preferred: [mockFocus], + }; + + function testSession( + membershipData: CallMembershipData[] | SessionMembershipData, + shouldUseLegacy: boolean, + ): void { + sess = MatrixRTCSession.roomSessionForRoom(client, makeMockRoom(membershipData)); + + const makeNewLegacyMembershipsMock = jest.spyOn(sess as any, "makeNewLegacyMemberships"); + const makeNewMembershipMock = jest.spyOn(sess as any, "makeNewMembership"); + + sess.joinRoomSession([mockFocus], mockFocus, joinSessionConfig); + + expect(makeNewLegacyMembershipsMock).toHaveBeenCalledTimes(shouldUseLegacy ? 1 : 0); + expect(makeNewMembershipMock).toHaveBeenCalledTimes(shouldUseLegacy ? 0 : 1); + } + + it("uses legacy events if there are any active legacy calls", () => { + testSession([expiredLegacyMembershipData, legacyMembershipData, sessionMembershipData], true); + }); + + it('uses legacy events if a non-legacy call is in a "memberships" array', () => { + testSession([sessionMembershipData], true); + }); + + it("uses non-legacy events if all legacy calls are expired", () => { + testSession([expiredLegacyMembershipData], false); + }); + + it("uses non-legacy events if there are only non-legacy calls", () => { + testSession(sessionMembershipData, false); + }); + }); + describe("getOldestMembership", () => { it("returns the oldest membership event", () => { const mockRoom = makeMockRoom([ @@ -340,9 +427,20 @@ describe("MatrixRTCSession", () => { // definitely should have renewed by 1 second before the expiry! const timeElapsed = 60 * 60 * 1000 - 1000; - mockRoom.getLiveTimeline().getState(EventTimeline.FORWARDS)!.getStateEvents = jest - .fn() - .mockReturnValue(mockRTCEvent(eventContent.memberships, mockRoom.roomId, timeElapsed)); + const event = mockRTCEvent(eventContent.memberships, mockRoom.roomId, timeElapsed); + const getState = mockRoom.getLiveTimeline().getState(EventTimeline.FORWARDS)!; + getState.getStateEvents = jest.fn().mockReturnValue(event); + getState.events = new Map([ + [ + event.getType(), + { + size: () => true, + has: (_stateKey: string) => true, + get: (_stateKey: string) => event, + values: () => [event], + } as unknown as Map, + ], + ]); const eventReSentPromise = new Promise>((r) => { resolveFn = (_roomId: string, _type: string, val: Record) => { diff --git a/spec/unit/matrixrtc/mocks.ts b/spec/unit/matrixrtc/mocks.ts index 84496e657da..7d63b32b79a 100644 --- a/spec/unit/matrixrtc/mocks.ts +++ b/spec/unit/matrixrtc/mocks.ts @@ -15,13 +15,15 @@ limitations under the License. */ import { EventType, MatrixEvent, Room } from "../../../src"; -import { CallMembershipData } from "../../../src/matrixrtc/CallMembership"; +import { CallMembershipData, SessionMembershipData } from "../../../src/matrixrtc/CallMembership"; import { randomString } from "../../../src/randomstring"; -export function makeMockRoom(memberships: CallMembershipData[], localAge: number | null = null): Room { +type MembershipData = CallMembershipData[] | SessionMembershipData; + +export function makeMockRoom(membershipData: MembershipData, localAge: number | null = null): Room { const roomId = randomString(8); // Caching roomState here so it does not get recreated when calling `getLiveTimeline.getState()` - const roomState = makeMockRoomState(memberships, roomId, localAge); + const roomState = makeMockRoomState(membershipData, roomId, localAge); return { roomId: roomId, hasMembershipState: jest.fn().mockReturnValue(true), @@ -31,8 +33,8 @@ export function makeMockRoom(memberships: CallMembershipData[], localAge: number } as unknown as Room; } -export function makeMockRoomState(memberships: CallMembershipData[], roomId: string, localAge: number | null = null) { - const event = mockRTCEvent(memberships, roomId, localAge); +export function makeMockRoomState(membershipData: MembershipData, roomId: string, localAge: number | null = null) { + const event = mockRTCEvent(membershipData, roomId, localAge); return { on: jest.fn(), off: jest.fn(), @@ -40,15 +42,30 @@ export function makeMockRoomState(memberships: CallMembershipData[], roomId: str if (stateKey !== undefined) return event; return [event]; }, + events: new Map([ + [ + event.getType(), + { + size: () => true, + has: (_stateKey: string) => true, + get: (_stateKey: string) => event, + values: () => [event], + }, + ], + ]), }; } -export function mockRTCEvent(memberships: CallMembershipData[], roomId: string, localAge: number | null): MatrixEvent { +export function mockRTCEvent(membershipData: MembershipData, roomId: string, localAge: number | null): MatrixEvent { return { getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), - getContent: jest.fn().mockReturnValue({ - memberships: memberships, - }), + getContent: jest.fn().mockReturnValue( + !Array.isArray(membershipData) + ? membershipData + : { + memberships: membershipData, + }, + ), getSender: jest.fn().mockReturnValue("@mock:user.example"), getTs: jest.fn().mockReturnValue(1000), localTimestamp: Date.now() - (localAge ?? 10), diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index e7fbd7a48bf..2f06eba633a 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -823,11 +823,14 @@ export class MatrixRTCSession extends TypedEventEmitter): boolean { + for (const callMemberEvent of callMemberEvents.values()) { + const content = callMemberEvent.getContent(); + if (Array.isArray(content["memberships"])) { + for (const membership of content.memberships) { + if (!new CallMembership(callMemberEvent, membership).isExpired()) { + return true; + } + } + } + } + return false; + } + private onRotateKeyTimeout = (): void => { if (!this.manageMediaKeys) return; From 9f1aebbdcb152eaab71425455274e47ac06c2e8a Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 21 Jun 2024 12:50:28 +0100 Subject: [PATCH 283/595] Bump ES target version to ES2022 (#4264) * Bump ES target version to ES2022 I want to be able to use `WeakRef`, and per https://github.com/element-hq/element-web/issues/24913#issuecomment-2182448007, I believe this should be safe. * room.ts: Fix initialisation order It seems that ES2022 causes typescript to change the initialization order of regular properties vs parameter properties (https://github.com/microsoft/TypeScript/issues/45995), so we need to rearrange the initializations to avoid an error. In practice, it might be fine because we have enabled `babel-plugin-transform-class-properties`, which moves the initialization back after the parameter property, but we shoudn't rely on that, and anyway it upsets the linter. --- src/models/room.ts | 6 +++++- tsconfig.json | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/models/room.ts b/src/models/room.ts index 7e1284b4e9b..f4d693bfdd5 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -398,7 +398,8 @@ export class Room extends ReadReceipt { * Use getLiveTimeline().getState(EventTimeline.FORWARDS) instead. */ public currentState!: RoomState; - public readonly relations = new RelationsContainer(this.client, this); + + public readonly relations; /** * A collection of events known by the client @@ -460,6 +461,7 @@ export class Room extends ReadReceipt { private readonly opts: IOpts = {}, ) { super(); + // In some cases, we add listeners for every displayed Matrix event, so it's // common to have quite a few more than the default limit. this.setMaxListeners(100); @@ -470,6 +472,8 @@ export class Room extends ReadReceipt { this.name = roomId; this.normalizedName = roomId; + this.relations = new RelationsContainer(this.client, this); + // Listen to our own receipt event as a more modular way of processing our own // receipts. No need to remove the listener: it's on ourself anyway. this.on(RoomEvent.Receipt, this.onReceipt); diff --git a/tsconfig.json b/tsconfig.json index c1c9d48b8e9..a7d2eeb4dd4 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "target": "es2016", + "target": "es2022", "experimentalDecorators": true, "esModuleInterop": true, "module": "commonjs", From 4ccb72c0f2119b6f2f30a764a097a8f5fd209f8f Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 21 Jun 2024 13:55:43 +0100 Subject: [PATCH 284/595] Element-R: Fix resource leaks in verification logic (#4263) * Move `RustVerificationRequest.onChange` out to a method The only reason it was an inner function in the first place was to avoid storing a reference in the class to `outgoingRequestProcessor`. That changed with d1dec4cd0858. * Fix reference cycles in rust verification code --- src/rust-crypto/verification.ts | 68 ++++++++++++++++++++------------- 1 file changed, 42 insertions(+), 26 deletions(-) diff --git a/src/rust-crypto/verification.ts b/src/rust-crypto/verification.ts index d25e6b26d16..ca599f310cc 100644 --- a/src/rust-crypto/verification.ts +++ b/src/rust-crypto/verification.ts @@ -72,30 +72,40 @@ export class RustVerificationRequest private readonly supportedVerificationMethods: string[], ) { super(); - this.reEmitter = new TypedReEmitter(this); - const onChange = async (): Promise => { - const verification: RustSdkCryptoJs.Qr | RustSdkCryptoJs.Sas | undefined = this.inner.getVerification(); - - // Set the _verifier object (wrapping the rust `Verification` as a js-sdk Verifier) if: - // - we now have a `Verification` where we lacked one before - // - we have transitioned from QR to SAS - // - we are verifying with SAS, but we need to replace our verifier with a new one because both parties - // tried to start verification at the same time, and we lost the tie breaking - if (verification instanceof RustSdkCryptoJs.Sas) { - if (this._verifier === undefined || this._verifier instanceof RustQrCodeVerifier) { - this.setVerifier(new RustSASVerifier(verification, this, outgoingRequestProcessor)); - } else if (this._verifier instanceof RustSASVerifier) { - this._verifier.replaceInner(verification); - } - } else if (verification instanceof RustSdkCryptoJs.Qr && this._verifier === undefined) { - this.setVerifier(new RustQrCodeVerifier(verification, outgoingRequestProcessor)); + // Obviously, the Rust object maintains a reference to the callback function. If the callback function maintains + // a reference to the Rust object, then we have a reference cycle which means that `RustVerificationRequest` + // will never be garbage-collected, and hence the underlying rust object will never be freed. + // + // To avoid this reference cycle, use a weak reference in the callback function. If the `RustVerificationRequest` + // gets garbage-collected, then there is nothing to update! + const weakThis = new WeakRef(this); + inner.registerChangesCallback(async () => weakThis.deref()?.onChange()); + } + + /** + * Hook which is called when the underlying rust class notifies us that there has been a change. + */ + private onChange(): void { + const verification: RustSdkCryptoJs.Qr | RustSdkCryptoJs.Sas | undefined = this.inner.getVerification(); + + // Set the _verifier object (wrapping the rust `Verification` as a js-sdk Verifier) if: + // - we now have a `Verification` where we lacked one before + // - we have transitioned from QR to SAS + // - we are verifying with SAS, but we need to replace our verifier with a new one because both parties + // tried to start verification at the same time, and we lost the tie breaking + if (verification instanceof RustSdkCryptoJs.Sas) { + if (this._verifier === undefined || this._verifier instanceof RustQrCodeVerifier) { + this.setVerifier(new RustSASVerifier(verification, this, this.outgoingRequestProcessor)); + } else if (this._verifier instanceof RustSASVerifier) { + this._verifier.replaceInner(verification); } + } else if (verification instanceof RustSdkCryptoJs.Qr && this._verifier === undefined) { + this.setVerifier(new RustQrCodeVerifier(verification, this.outgoingRequestProcessor)); + } - this.emit(VerificationRequestEvent.Change); - }; - inner.registerChangesCallback(onChange); + this.emit(VerificationRequestEvent.Change); } private setVerifier(verifier: RustSASVerifier | RustQrCodeVerifier): void { @@ -473,9 +483,12 @@ abstract class BaseRustVerifer { - this.onChange(); - }); + + // As with RustVerificationRequest, we need to avoid a reference cycle. + // See the comments in RustVerificationRequest. + const weakThis = new WeakRef(this); + inner.registerChangesCallback(async () => weakThis.deref()?.onChange()); + // stop the runtime complaining if nobody catches a failure this.completionDeferred.promise.catch(() => null); } @@ -752,9 +765,12 @@ export class RustSASVerifier extends BaseRustVerifer implem public replaceInner(inner: RustSdkCryptoJs.Sas): void { if (this.inner != inner) { this.inner = inner; - inner.registerChangesCallback(async () => { - this.onChange(); - }); + + // As with RustVerificationRequest, we need to avoid a reference cycle. + // See the comments in RustVerificationRequest. + const weakThis = new WeakRef(this); + inner.registerChangesCallback(async () => weakThis.deref()?.onChange()); + // replaceInner will only get called if we started the verification at the same time as the other side, and we lost // the tie breaker. So we need to re-accept their verification. this.sendAccept(); From 78b6b878bd8ffceab02a5108addc285933a9f80b Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 21 Jun 2024 15:15:54 +0100 Subject: [PATCH 285/595] Remove domexception polyfill, has been native in NodeJS since v17 (#4253) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 2 -- spec/setupTests.ts | 4 ---- yarn.lock | 12 ------------ 3 files changed, 18 deletions(-) diff --git a/package.json b/package.json index e9d5d0fb1d6..e4c1f5f5fb6 100644 --- a/package.json +++ b/package.json @@ -87,7 +87,6 @@ "@types/bs58": "^4.0.1", "@types/content-type": "^1.1.5", "@types/debug": "^4.1.7", - "@types/domexception": "^4.0.0", "@types/jest": "^29.0.0", "@types/node": "18", "@types/sdp-transform": "^2.4.5", @@ -96,7 +95,6 @@ "@typescript-eslint/parser": "^7.0.0", "babel-jest": "^29.0.0", "debug": "^4.3.4", - "domexception": "^4.0.0", "eslint": "8.57.0", "eslint-config-google": "^0.14.0", "eslint-config-prettier": "^9.0.0", diff --git a/spec/setupTests.ts b/spec/setupTests.ts index 20c03b8ef06..2c16f663262 100644 --- a/spec/setupTests.ts +++ b/spec/setupTests.ts @@ -14,10 +14,6 @@ See the License for the specific language governing permissions and limitations under the License. */ -import DOMException from "domexception"; - -global.DOMException = DOMException as typeof global.DOMException; - jest.mock("../src/http-api/utils", () => ({ ...jest.requireActual("../src/http-api/utils"), // We mock timeoutSignal otherwise it causes tests to leave timers running diff --git a/yarn.lock b/yarn.lock index 44c69bbde5d..0fe2276b8a9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2023,13 +2023,6 @@ dependencies: "@types/ms" "*" -"@types/domexception@^4.0.0": - version "4.0.3" - resolved "https://registry.yarnpkg.com/@types/domexception/-/domexception-4.0.3.tgz#b2ed09e3d3a83c264f5eb7e2a803d319ac441d1f" - integrity sha512-lYPlkldpQqYTgqj5tJgKg5UEa6/vOsaiCc54q6pJ1LPNphJ5UjE4yFjZx/bsvsijzS6Z9OkJYvFiAZZEvYy+Gw== - dependencies: - "@types/webidl-conversions" "*" - "@types/eslint@^8.56.5": version "8.56.10" resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.56.10.tgz#eb2370a73bf04a901eeba8f22595c7ee0f7eb58d" @@ -2155,11 +2148,6 @@ resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-9.0.8.tgz#7545ba4fc3c003d6c756f651f3bf163d8f0f29ba" integrity sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA== -"@types/webidl-conversions@*": - version "7.0.3" - resolved "https://registry.yarnpkg.com/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz#1306dbfa53768bcbcfc95a1c8cde367975581859" - integrity sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA== - "@types/yargs-parser@*": version "21.0.3" resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" From 25a7c9e140652e13b1b874a6c2e6c20ec07f1a32 Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Sat, 22 Jun 2024 02:31:42 +0900 Subject: [PATCH 286/595] Prefix the user+device state key if needed (#4262) * Prefix the user+device state key if needed No need to prefix it for rooms that use MSC3779. Otherwise, prefix it to bypass the auth rule for state events with keys starting with @. * Use RegExp.exec() method instead Sonar typescript:S6594 * Split nested ternary operator into method Sonar typescript:S3358 * Add test coverage --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 36 ++++++++++++++++++++ spec/unit/matrixrtc/mocks.ts | 1 + src/matrixrtc/MatrixRTCSession.ts | 11 +++++- 3 files changed, 47 insertions(+), 1 deletion(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index d0ca37b2d85..2b391661433 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -399,6 +399,42 @@ describe("MatrixRTCSession", () => { jest.useRealTimers(); }); + describe("non-legacy calls", () => { + const activeFocusConfig = { type: "livekit", livekit_service_url: "https://active.url" }; + const activeFocus = { type: "livekit", focus_selection: "oldest_membership" }; + + function testJoin(useOwnedStateEvents: boolean): void { + if (useOwnedStateEvents) { + mockRoom.getVersion = jest.fn().mockReturnValue("org.matrix.msc3779.default"); + } + + jest.useFakeTimers(); + sess!.joinRoomSession([activeFocusConfig], activeFocus, { useLegacyMemberEvents: false }); + expect(client.sendStateEvent).toHaveBeenCalledWith( + mockRoom!.roomId, + EventType.GroupCallMemberPrefix, + { + application: "m.call", + scope: "m.room", + call_id: "", + device_id: "AAAAAAA", + foci_preferred: [activeFocusConfig], + focus_active: activeFocus, + } satisfies SessionMembershipData, + `${!useOwnedStateEvents ? "_" : ""}@alice:example.org_AAAAAAA`, + ); + jest.useRealTimers(); + } + + it("sends a membership event with session payload when joining a non-legacy call", () => { + testJoin(false); + }); + + it("does not prefix the state key with _ for rooms that support user-owned state events", () => { + testJoin(true); + }); + }); + it("does nothing if join called when already joined", () => { sess!.joinRoomSession([mockFocus], mockFocus); diff --git a/spec/unit/matrixrtc/mocks.ts b/spec/unit/matrixrtc/mocks.ts index 7d63b32b79a..c11544a0e9e 100644 --- a/spec/unit/matrixrtc/mocks.ts +++ b/spec/unit/matrixrtc/mocks.ts @@ -30,6 +30,7 @@ export function makeMockRoom(membershipData: MembershipData, localAge: number | getLiveTimeline: jest.fn().mockReturnValue({ getState: jest.fn().mockReturnValue(roomState), }), + getVersion: jest.fn().mockReturnValue("default"), } as unknown as Room; } diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 2f06eba633a..cc155fd3e6a 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -869,7 +869,7 @@ export class MatrixRTCSession extends TypedEventEmitter { if (!this.manageMediaKeys) return; From ab6260074d367b28ad27c3b159694f5c426390bc Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 25 Jun 2024 12:50:01 +0000 Subject: [PATCH 287/595] v34.0.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index e4c1f5f5fb6..c02f7ada42d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "33.1.0", + "version": "34.0.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -130,5 +130,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From 8790cde6d4e84499708b81c1b5815aa38f638e4c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 15:21:27 +0100 Subject: [PATCH 288/595] Update dependency typedoc to ^0.26.0 (#4270) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/static_analysis.yml | 2 +- package.json | 4 +- src/client.ts | 2 +- src/crypto/index.ts | 4 +- src/models/event-timeline-set.ts | 2 +- src/models/room-state.ts | 2 +- src/models/room.ts | 2 +- src/webrtc/groupCall.ts | 2 +- yarn.lock | 109 ++++++++++++++------------ 9 files changed, 68 insertions(+), 61 deletions(-) diff --git a/.github/workflows/static_analysis.yml b/.github/workflows/static_analysis.yml index 0dbcf4a2678..1ec0c3851f2 100644 --- a/.github/workflows/static_analysis.yml +++ b/.github/workflows/static_analysis.yml @@ -81,7 +81,7 @@ jobs: run: "yarn install" - name: Generate Docs - run: "yarn run gendoc --treatWarningsAsErrors" + run: "yarn run gendoc --treatWarningsAsErrors --suppressCommentWarningsInDeclarationFiles" - name: Upload Artifact uses: actions/upload-artifact@v4 diff --git a/package.json b/package.json index e4c1f5f5fb6..f178cc6faad 100644 --- a/package.json +++ b/package.json @@ -120,10 +120,10 @@ "prettier": "3.3.2", "rimraf": "^5.0.0", "ts-node": "^10.9.2", - "typedoc": "^0.25.10", + "typedoc": "^0.26.0", "typedoc-plugin-coverage": "^3.0.0", "typedoc-plugin-mdn-links": "^3.0.3", - "typedoc-plugin-missing-exports": "^2.0.0", + "typedoc-plugin-missing-exports": "^3.0.0", "typescript": "^5.3.3" }, "@casualbot/jest-sonar-reporter": { diff --git a/src/client.ts b/src/client.ts index 300b5903399..d1f089d37ee 100644 --- a/src/client.ts +++ b/src/client.ts @@ -1075,7 +1075,7 @@ export type ClientEventHandlerMap = { * }); * ``` */ - [ClientEvent.Sync]: (state: SyncState, lastState: SyncState | null, data?: ISyncStateData) => void; + [ClientEvent.Sync]: (state: SyncState, prevState: SyncState | null, data?: ISyncStateData) => void; /** * Fires whenever the SDK receives a new event. *

diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 4379c2e1272..07601b799cf 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -276,7 +276,7 @@ export type CryptoEventHandlerMap = { * @param deviceId - the id of the verified device * @param deviceInfo - updated device information */ - [CryptoEvent.DeviceVerificationChanged]: (userId: string, deviceId: string, device: DeviceInfo) => void; + [CryptoEvent.DeviceVerificationChanged]: (userId: string, deviceId: string, deviceInfo: DeviceInfo) => void; /** * Fires when the trust status of a user changes * If userId is the userId of the logged-in user, this indicated a change @@ -292,7 +292,7 @@ export type CryptoEventHandlerMap = { /** * Fires when we receive a room key request * - * @param req - request details + * @param request - request details */ [CryptoEvent.RoomKeyRequest]: (request: IncomingRoomKeyRequest) => void; /** diff --git a/src/models/event-timeline-set.ts b/src/models/event-timeline-set.ts index e64d118fdd5..bff69547bf2 100644 --- a/src/models/event-timeline-set.ts +++ b/src/models/event-timeline-set.ts @@ -118,7 +118,7 @@ export type EventTimelineSetHandlerMap = { */ [RoomEvent.TimelineReset]: ( room: Room | undefined, - eventTimelineSet: EventTimelineSet, + timelineSet: EventTimelineSet, resetAllTimelines: boolean, ) => void; }; diff --git a/src/models/room-state.ts b/src/models/room-state.ts index 1233ad3bcf8..92cc4fd7f9b 100644 --- a/src/models/room-state.ts +++ b/src/models/room-state.ts @@ -95,7 +95,7 @@ export type RoomStateEventHandlerMap = { * }); * ``` */ - [RoomStateEvent.Events]: (event: MatrixEvent, state: RoomState, lastStateEvent: MatrixEvent | null) => void; + [RoomStateEvent.Events]: (event: MatrixEvent, state: RoomState, prevEvent: MatrixEvent | null) => void; /** * Fires whenever a member in the members dictionary is updated in any way. * @param event - The matrix event which caused this event to fire. diff --git a/src/models/room.ts b/src/models/room.ts index f4d693bfdd5..ab5eb7bfd9c 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -209,7 +209,7 @@ export type RoomEventHandlerMap = { * }); * ``` */ - [RoomEvent.AccountData]: (event: MatrixEvent, room: Room, lastEvent?: MatrixEvent) => void; + [RoomEvent.AccountData]: (event: MatrixEvent, room: Room, prevEvent?: MatrixEvent) => void; /** * Fires whenever a receipt is received for a room * @param event - The receipt event diff --git a/src/webrtc/groupCall.ts b/src/webrtc/groupCall.ts index a33f676b1b7..816a4a3667e 100644 --- a/src/webrtc/groupCall.ts +++ b/src/webrtc/groupCall.ts @@ -91,7 +91,7 @@ export type GroupCallEventHandlerMap = { * `MatrixCall.ERR_NO_USER_MEDIA`. `ERR_LOCAL_OFFER_FAILED` is emitted when the local client * fails to create an offer. `ERR_NO_USER_MEDIA` is emitted when the user has denied access * to their audio/video hardware. - * @param err - The error raised by MatrixCall. + * @param error - The error raised by MatrixCall. * @example * ``` * matrixCall.on("error", function(err){ diff --git a/yarn.lock b/yarn.lock index 0fe2276b8a9..67926ae08ca 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1912,6 +1912,11 @@ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== +"@shikijs/core@1.9.1": + version "1.9.1" + resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.9.1.tgz#f8c61fb19dbec510fa27f892c441d99b53093e49" + integrity sha512-EmUful2MQtY8KgCF1OkBtOuMcvaZEvmdubhW0UHCGXi21O9dRLeADVCj+k6ZS+de7Mz9d2qixOXJ+GLhcK3pXg== + "@sinclair/typebox@^0.24.1": version "0.24.51" resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.51.tgz#645f33fe4e02defe26f2f5c0410e1c094eac7f5f" @@ -2217,12 +2222,7 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.12.0.tgz#bf208f971a8da1e7524a5d9ae2b5f15192a37981" integrity sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg== -"@typescript-eslint/types@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.1.tgz#787db283bd0b58751094c90d5b58bbf5e9fc9bd8" - integrity sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw== - -"@typescript-eslint/types@^7.2.0": +"@typescript-eslint/types@7.13.1", "@typescript-eslint/types@^7.2.0": version "7.13.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.1.tgz#787db283bd0b58751094c90d5b58bbf5e9fc9bd8" integrity sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw== @@ -2401,11 +2401,6 @@ ansi-regex@^6.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== -ansi-sequence-parser@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ansi-sequence-parser/-/ansi-sequence-parser-1.1.1.tgz#e0aa1cdcbc8f8bb0b5bca625aac41f5f056973cf" - integrity sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg== - ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" @@ -4954,11 +4949,6 @@ json5@^2.2.2, json5@^2.2.3: resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== -jsonc-parser@^3.2.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.1.tgz#031904571ccf929d7670ee8c547545081cb37f1a" - integrity sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA== - jwt-decode@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-4.0.0.tgz#2270352425fd413785b2faf11f6e755c5151bd4b" @@ -5024,6 +5014,13 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== +linkify-it@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-5.0.0.tgz#9ef238bfa6dc70bd8e7f9572b52d369af569b421" + integrity sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ== + dependencies: + uc.micro "^2.0.0" + lint-staged@^15.0.2: version "15.2.7" resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.7.tgz#97867e29ed632820c0fb90be06cd9ed384025649" @@ -5170,10 +5167,17 @@ map-obj@^2.0.0: resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" integrity sha512-TzQSV2DiMYgoF5RycneKVUzIa9bQsj/B3tTgsE3dOGqlzHnGIDaC7XBE7grnA+8kZPnfqSGFe95VHc2oc0VFUQ== -marked@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/marked/-/marked-4.3.0.tgz#796362821b019f734054582038b116481b456cf3" - integrity sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A== +markdown-it@^14.1.0: + version "14.1.0" + resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-14.1.0.tgz#3c3c5992883c633db4714ccb4d7b5935d98b7d45" + integrity sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg== + dependencies: + argparse "^2.0.1" + entities "^4.4.0" + linkify-it "^5.0.0" + mdurl "^2.0.0" + punycode.js "^2.3.1" + uc.micro "^2.1.0" matrix-events-sdk@0.0.1: version "0.0.1" @@ -5195,6 +5199,11 @@ matrix-widget-api@^1.6.0: "@types/events" "^3.0.0" events "^3.2.0" +mdurl@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-2.0.0.tgz#80676ec0433025dd3e17ee983d0fe8de5a2237e0" + integrity sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w== + merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -5247,7 +5256,7 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" -minimatch@^9.0.1, minimatch@^9.0.3, minimatch@^9.0.4: +minimatch@^9.0.1, minimatch@^9.0.4: version "9.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51" integrity sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw== @@ -5644,6 +5653,11 @@ psl@^1.1.33: resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== +punycode.js@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/punycode.js/-/punycode.js-2.3.1.tgz#6b53e56ad75588234e79f4affa90972c7dd8cdb7" + integrity sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA== + punycode@^2.1.0, punycode@^2.1.1: version "2.3.0" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" @@ -5991,15 +6005,12 @@ shell-quote-word@^1.0.1: resolved "https://registry.yarnpkg.com/shell-quote-word/-/shell-quote-word-1.0.1.tgz#e2bdfd22d599fd68886491677e38f560f9d469c9" integrity sha512-lT297f1WLAdq0A4O+AknIFRP6kkiI3s8C913eJ0XqBxJbZPGWUNkRQk2u8zk4bEAjUJ5i+fSLwB6z1HzeT+DEg== -shiki@^0.14.7: - version "0.14.7" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-0.14.7.tgz#c3c9e1853e9737845f1d2ef81b31bcfb07056d4e" - integrity sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg== +shiki@^1.9.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.9.1.tgz#9d9f553b06e70a9e71b5457622d6f4a5aaf1db27" + integrity sha512-8PDkgb5ja3nfujTjvC4VytL6wGOGCtFAClUb2r3QROevYXxcq+/shVJK5s6gy0HZnjaJgFxd6BpPqpRfqne5rA== dependencies: - ansi-sequence-parser "^1.1.0" - jsonc-parser "^3.2.0" - vscode-oniguruma "^1.7.0" - vscode-textmate "^8.0.0" + "@shikijs/core" "1.9.1" side-channel@^1.0.4: version "1.0.4" @@ -6503,26 +6514,32 @@ typedoc-plugin-mdn-links@^3.0.3: resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.30.tgz#bea289518cb393b07ee65fabc8ced393810dce9a" integrity sha512-aB3UqyRGdxYziOHKzE7AQPh+9xpqqHHrp23F+T6yshHeuSiauCL+zzgTRhi4Ad1x30/7rTkCtyQ5dfO/+1FDKA== -typedoc-plugin-missing-exports@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/typedoc-plugin-missing-exports/-/typedoc-plugin-missing-exports-2.3.0.tgz#ae0858bf383a08345cc09a99d428234cf6b85ecf" - integrity sha512-iI9ITNNLlbsLCBBeYDyu0Qqp3GN/9AGyWNKg8bctRXuZEPT7G1L+0+MNWG9MsHcf/BFmNbXL0nQ8mC/tXRicog== +typedoc-plugin-missing-exports@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/typedoc-plugin-missing-exports/-/typedoc-plugin-missing-exports-3.0.0.tgz#47ab7cf9b91967f50550b7f07549ed1b743f3726" + integrity sha512-R7D8fYrK34mBFZSlF1EqJxfqiUSlQSmyrCiQgTQD52nNm6+kUtqwiaqaNkuJ2rA2wBgWFecUA8JzHT7x2r7ePg== -typedoc@^0.25.10: - version "0.25.13" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.25.13.tgz#9a98819e3b2d155a6d78589b46fa4c03768f0922" - integrity sha512-pQqiwiJ+Z4pigfOnnysObszLiU3mVLWAExSPf+Mu06G/qsc3wzbuM56SZQvONhHLncLUhYzOVkjFFpFfL5AzhQ== +typedoc@^0.26.0: + version "0.26.2" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.2.tgz#f9538e6e9a081fda1f2416d0ee0d7dfab480cbec" + integrity sha512-q/t+M+PZqhN9gPWLBZ3CCvP+KT8O1tyYkSzEYbcQ6mo89avdIrMlBEl3vfo5BgSzwC6Lbmq0W64E8RkY+eVsLA== dependencies: lunr "^2.3.9" - marked "^4.3.0" - minimatch "^9.0.3" - shiki "^0.14.7" + markdown-it "^14.1.0" + minimatch "^9.0.4" + shiki "^1.9.0" + yaml "^2.4.5" typescript@^5.3.3: version "5.4.5" resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== +uc.micro@^2.0.0, uc.micro@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-2.1.0.tgz#f8d3f7d0ec4c3dea35a7e3c8efa4cb8b45c9e7ee" + integrity sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A== + unbox-primitive@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" @@ -6638,16 +6655,6 @@ vlq@^0.2.1: resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.3.tgz#8f3e4328cf63b1540c0d67e1b2778386f8975b26" integrity sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow== -vscode-oniguruma@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz#439bfad8fe71abd7798338d1cd3dc53a8beea94b" - integrity sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA== - -vscode-textmate@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/vscode-textmate/-/vscode-textmate-8.0.0.tgz#2c7a3b1163ef0441097e0b5d6389cd5504b59e5d" - integrity sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg== - w3c-xmlserializer@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz#aebdc84920d806222936e3cdce408e32488a3073" @@ -6845,7 +6852,7 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@~2.4.2: +yaml@^2.4.5, yaml@~2.4.2: version "2.4.5" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.4.5.tgz#60630b206dd6d84df97003d33fc1ddf6296cca5e" integrity sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg== From b8c68eb1021cdb485e322e6659679ca1bedb4b50 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 13:50:33 +0000 Subject: [PATCH 289/595] Update dependency @types/node to v18.19.39 (#4269) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 67926ae08ca..e9107de3de1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2117,9 +2117,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.34" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.34.tgz#c3fae2bbbdb94b4a52fe2d229d0dccce02ef3d27" - integrity sha512-eXF4pfBNV5DAMKGbI02NnDtWrQ40hAN558/2vvS4gMpMIxaf6JmD7YjnZbq0Q9TDSSkKBamime8ewRoomHdt4g== + version "18.19.39" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.39.tgz#c316340a5b4adca3aee9dcbf05de385978590593" + integrity sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ== dependencies: undici-types "~5.26.4" From 4bae83f59f5188b26de923658661a4529e31dbed Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 13:53:11 +0000 Subject: [PATCH 290/595] Update dependency @types/uuid to v10 (#4273) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index f178cc6faad..f39b914db86 100644 --- a/package.json +++ b/package.json @@ -90,7 +90,7 @@ "@types/jest": "^29.0.0", "@types/node": "18", "@types/sdp-transform": "^2.4.5", - "@types/uuid": "9", + "@types/uuid": "10", "@typescript-eslint/eslint-plugin": "^7.0.0", "@typescript-eslint/parser": "^7.0.0", "babel-jest": "^29.0.0", diff --git a/yarn.lock b/yarn.lock index e9107de3de1..cd365cb193c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2148,10 +2148,10 @@ resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.5.tgz#cb6e2a691b70cb177c6e3ae9c1d2e8b2ea8cd304" integrity sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA== -"@types/uuid@9": - version "9.0.8" - resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-9.0.8.tgz#7545ba4fc3c003d6c756f651f3bf163d8f0f29ba" - integrity sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA== +"@types/uuid@10": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-10.0.0.tgz#e9c07fe50da0f53dc24970cca94d619ff03f6f6d" + integrity sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ== "@types/yargs-parser@*": version "21.0.3" From 6417f4fac757bd4b84a1d4d361cb880fd008704a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 16:02:45 +0100 Subject: [PATCH 291/595] Update dependency fetch-mock to v10 (#4276) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 2 +- spec/integ/crypto/crypto.spec.ts | 14 +++++++------- spec/integ/crypto/verification.spec.ts | 6 +++--- spec/test-utils/AccountDataAccumulator.ts | 6 ++++-- spec/test-utils/SyncResponder.ts | 4 ++-- yarn.lock | 16 ++++++++++++++-- 6 files changed, 31 insertions(+), 17 deletions(-) diff --git a/package.json b/package.json index f39b914db86..ba75607581f 100644 --- a/package.json +++ b/package.json @@ -106,7 +106,7 @@ "eslint-plugin-tsdoc": "^0.3.0", "eslint-plugin-unicorn": "^53.0.0", "fake-indexeddb": "^5.0.2", - "fetch-mock": "9.11.0", + "fetch-mock": "10.0.7", "fetch-mock-jest": "^1.5.1", "husky": "^9.0.0", "jest": "^29.0.0", diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index fd3b2778cfd..2f1342a544d 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -19,7 +19,7 @@ import anotherjson from "another-json"; import fetchMock from "fetch-mock-jest"; import "fake-indexeddb/auto"; import { IDBFactory } from "fake-indexeddb"; -import { MockResponse, MockResponseFunction } from "fetch-mock"; +import FetchMock from "fetch-mock"; import Olm from "@matrix-org/olm"; import * as testUtils from "../../test-utils/test-utils"; @@ -157,7 +157,7 @@ async function expectSendRoomKey( return await new Promise((resolve) => { fetchMock.putOnce( new RegExp("/sendToDevice/m.room.encrypted/"), - (url: string, opts: RequestInit): MockResponse => { + (url: string, opts: RequestInit): FetchMock.MockResponse => { const content = JSON.parse(opts.body as string); resolve(onSendRoomKey(content)); return {}; @@ -291,7 +291,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, * @param response - the response to return from the request. Normally an {@link IClaimOTKsResult} * (or a function that returns one). */ - function expectAliceKeyClaim(response: MockResponse | MockResponseFunction) { + function expectAliceKeyClaim(response: FetchMock.MockResponse | FetchMock.MockResponseFunction) { const rootRegexp = escapeRegExp(new URL("/_matrix/client/", aliceClient.getHomeserverUrl()).toString()); fetchMock.postOnce(new RegExp(rootRegexp + "(r0|v3)/keys/claim"), response); } @@ -1419,7 +1419,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, fetchMock.putOnce( { url: new RegExp("/send/"), name: "send-event" }, - (url: string, opts: RequestInit): MockResponse => { + (url: string, opts: RequestInit): FetchMock.MockResponse => { const content = JSON.parse(opts.body as string); logger.log("/send:", content); // make sure that a new session is used @@ -1484,7 +1484,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, // mark the device as known, and resend. aliceClient.setDeviceKnown(aliceClient.getUserId()!, "DEVICE_ID"); - expectAliceKeyClaim((url: string, opts: RequestInit): MockResponse => { + expectAliceKeyClaim((url: string, opts: RequestInit): FetchMock.MockResponse => { const content = JSON.parse(opts.body as string); expect(content.one_time_keys[aliceClient.getUserId()!].DEVICE_ID).toEqual("signed_curve25519"); return getTestKeysClaimResponse(aliceClient.getUserId()!); @@ -2180,11 +2180,11 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, const inboundGroupSessionPromise = expectSendRoomKey("@bob:xyz", testOlmAccount); // ... and finally, send the room key. We block the response until `sendRoomMessageDefer` completes. - const sendRoomMessageDefer = defer(); + const sendRoomMessageDefer = defer(); const reqProm = new Promise((resolve) => { fetchMock.putOnce( new RegExp("/send/m.room.encrypted/"), - async (url: string, opts: RequestInit): Promise => { + async (url: string, opts: RequestInit): Promise => { resolve(JSON.parse(opts.body as string)); return await sendRoomMessageDefer.promise; }, diff --git a/spec/integ/crypto/verification.spec.ts b/spec/integ/crypto/verification.spec.ts index ae9ebcd5961..d288adfa0bc 100644 --- a/spec/integ/crypto/verification.spec.ts +++ b/spec/integ/crypto/verification.spec.ts @@ -17,7 +17,7 @@ limitations under the License. import "fake-indexeddb/auto"; import anotherjson from "another-json"; -import { MockResponse } from "fetch-mock"; +import FetchMock from "fetch-mock"; import fetchMock from "fetch-mock-jest"; import { IDBFactory } from "fake-indexeddb"; import { createHash } from "crypto"; @@ -1511,7 +1511,7 @@ function expectSendToDeviceMessage(msgtype: string): Promise<{ messages: any }> return new Promise((resolve) => { fetchMock.putOnce( new RegExp(`/_matrix/client/(r0|v3)/sendToDevice/${escapeRegExp(msgtype)}`), - (url: string, opts: RequestInit): MockResponse => { + (url: string, opts: RequestInit): FetchMock.MockResponse => { resolve(JSON.parse(opts.body as string)); return {}; }, @@ -1535,7 +1535,7 @@ function mockSecretRequestAndGetPromises(): Map> { fetchMock.put( new RegExp(`/_matrix/client/(r0|v3)/sendToDevice/m.secret.request`), - (url: string, opts: RequestInit): MockResponse => { + (url: string, opts: RequestInit): FetchMock.MockResponse => { const messages = JSON.parse(opts.body as string).messages[TEST_USER_ID]; // rust crypto broadcasts to all devices, old crypto to a specific device, take the first one const content = Object.values(messages)[0] as any; diff --git a/spec/test-utils/AccountDataAccumulator.ts b/spec/test-utils/AccountDataAccumulator.ts index dca35bc2cc8..f24b7f53b35 100644 --- a/spec/test-utils/AccountDataAccumulator.ts +++ b/spec/test-utils/AccountDataAccumulator.ts @@ -15,7 +15,6 @@ limitations under the License. */ import fetchMock from "fetch-mock-jest"; -import { MockOptionsMethodPut } from "fetch-mock"; import { ISyncResponder } from "./SyncResponder"; @@ -40,7 +39,10 @@ export class AccountDataAccumulator { * @param opts - options to pass to fetchMock * @returns a Promise which will resolve (with the content of the account data) once it is set. */ - public interceptSetAccountData(accountDataType: string, opts?: MockOptionsMethodPut): Promise { + public interceptSetAccountData( + accountDataType: string, + opts?: Parameters<(typeof fetchMock)["put"]>[2], + ): Promise { return new Promise((resolve) => { // Called when the cross signing key is uploaded fetchMock.put( diff --git a/spec/test-utils/SyncResponder.ts b/spec/test-utils/SyncResponder.ts index 31fae7147a8..3caba9dfa00 100644 --- a/spec/test-utils/SyncResponder.ts +++ b/spec/test-utils/SyncResponder.ts @@ -17,7 +17,7 @@ limitations under the License. import debugFunc from "debug"; import { Debugger } from "debug"; import fetchMock from "fetch-mock-jest"; -import { MockResponse } from "fetch-mock"; +import FetchMock from "fetch-mock"; /** Interface implemented by classes that intercept `/sync` requests from test clients * @@ -80,7 +80,7 @@ export class SyncResponder implements ISyncResponder { ); } - private async onSyncRequest(): Promise { + private async onSyncRequest(): Promise { switch (this.state) { case SyncResponderState.IDLE: { this.debug("Got /sync request: waiting for response to be ready"); diff --git a/yarn.lock b/yarn.lock index cd365cb193c..685a1c3cb96 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3663,7 +3663,19 @@ fetch-mock-jest@^1.5.1: dependencies: fetch-mock "^9.11.0" -fetch-mock@9.11.0, fetch-mock@^9.11.0: +fetch-mock@10.0.7: + version "10.0.7" + resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-10.0.7.tgz#b274aaebe5b59c641f02d836b579bbe9b063f8db" + integrity sha512-TFG42kMRJ6dZpUDeVTdXNjh5O4TchHU/UNk41a050TwKzRr5RJQbtckXDjXiQFHPKgXGUG5l2TY3ZZ2gokiXaQ== + dependencies: + debug "^4.1.1" + glob-to-regexp "^0.4.0" + is-subset "^0.1.1" + lodash.isequal "^4.5.0" + path-to-regexp "^2.2.1" + querystring "^0.2.1" + +fetch-mock@^9.11.0: version "9.11.0" resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-9.11.0.tgz#371c6fb7d45584d2ae4a18ee6824e7ad4b637a3f" integrity sha512-PG1XUv+x7iag5p/iNHD4/jdpxL9FtVSqRMUQhPab4hVDt80T1MH5ehzVrL2IdXO9Q2iBggArFvPqjUbHFuI58Q== @@ -5680,7 +5692,7 @@ pvutils@^1.1.3: resolved "https://registry.yarnpkg.com/pvutils/-/pvutils-1.1.3.tgz#f35fc1d27e7cd3dfbd39c0826d173e806a03f5a3" integrity sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ== -querystring@^0.2.0: +querystring@^0.2.0, querystring@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.1.tgz#40d77615bb09d16902a85c3e38aa8b5ed761c2dd" integrity sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg== From d9f372ca79672d84b1ff7553c454c55421d4c967 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 13:54:38 +0000 Subject: [PATCH 292/595] Update dependency eslint-plugin-unicorn to v54 (#4275) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index ba75607581f..7fa0c53776b 100644 --- a/package.json +++ b/package.json @@ -104,7 +104,7 @@ "eslint-plugin-jsdoc": "^48.0.0", "eslint-plugin-matrix-org": "^1.0.0", "eslint-plugin-tsdoc": "^0.3.0", - "eslint-plugin-unicorn": "^53.0.0", + "eslint-plugin-unicorn": "^54.0.0", "fake-indexeddb": "^5.0.2", "fetch-mock": "10.0.7", "fetch-mock-jest": "^1.5.1", diff --git a/yarn.lock b/yarn.lock index 685a1c3cb96..6bbfd554d18 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3379,10 +3379,10 @@ eslint-plugin-tsdoc@^0.3.0: "@microsoft/tsdoc" "0.15.0" "@microsoft/tsdoc-config" "0.17.0" -eslint-plugin-unicorn@^53.0.0: - version "53.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-53.0.0.tgz#df3a5c9ecabeb759e6fd867b2d84198466ac8c4d" - integrity sha512-kuTcNo9IwwUCfyHGwQFOK/HjJAYzbODHN3wP0PgqbW+jbXqpNWxNVpVhj2tO9SixBwuAdmal8rVcWKBxwFnGuw== +eslint-plugin-unicorn@^54.0.0: + version "54.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-54.0.0.tgz#ce3ea853e8fd7ca2bda2fd6065bf065adb5d8b6d" + integrity sha512-XxYLRiYtAWiAjPv6z4JREby1TAE2byBC7wlh0V4vWDCpccOSU1KovWV//jqPXF6bq3WKxqX9rdjoRQ1EhdmNdQ== dependencies: "@babel/helper-validator-identifier" "^7.24.5" "@eslint-community/eslint-utils" "^4.4.0" From c29e116c0c1033fbcab949ebfd85ab8b83485b59 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 14:36:11 +0000 Subject: [PATCH 293/595] Update dependency typescript to v5.5.2 (#4271) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 6bbfd554d18..a82a74b4dd6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6543,9 +6543,9 @@ typedoc@^0.26.0: yaml "^2.4.5" typescript@^5.3.3: - version "5.4.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" - integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== + version "5.5.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.2.tgz#c26f023cb0054e657ce04f72583ea2d85f8d0507" + integrity sha512-NcRtPEOsPFFWjobJEtfihkLCZCXZt/os3zf8nTxjVH3RvTSxjrCamJpbExGvYOF+tFHc3pA65qpdwPbzjohhew== uc.micro@^2.0.0, uc.micro@^2.1.0: version "2.1.0" From a0073ddaafcf2f47464b06781d0155b63ef6d72a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 14:36:52 +0000 Subject: [PATCH 294/595] Update typescript-eslint monorepo to v7.14.1 (#4272) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 97 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 51 insertions(+), 46 deletions(-) diff --git a/yarn.lock b/yarn.lock index a82a74b4dd6..e22ca4ea4c6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2166,29 +2166,29 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.1.tgz#cdc521c8bca38b55585cf30db787fb2abad3f9fd" - integrity sha512-kZqi+WZQaZfPKnsflLJQCz6Ze9FFSMfXrrIOcyargekQxG37ES7DJNpJUE9Q/X5n3yTIP/WPutVNzgknQ7biLg== + version "7.14.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.14.1.tgz#90e2f76a5930d553ede124e1f541a39b4417465e" + integrity sha512-aAJd6bIf2vvQRjUG3ZkNXkmBpN+J7Wd0mfQiiVCJMu9Z5GcZZdcc0j8XwN/BM97Fl7e3SkTXODSk4VehUv7CGw== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.13.1" - "@typescript-eslint/type-utils" "7.13.1" - "@typescript-eslint/utils" "7.13.1" - "@typescript-eslint/visitor-keys" "7.13.1" + "@typescript-eslint/scope-manager" "7.14.1" + "@typescript-eslint/type-utils" "7.14.1" + "@typescript-eslint/utils" "7.14.1" + "@typescript-eslint/visitor-keys" "7.14.1" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" "@typescript-eslint/parser@^7.0.0": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.13.1.tgz#fac57811b3e519185f7259bac312291f7b9c4e72" - integrity sha512-1ELDPlnLvDQ5ybTSrMhRTFDfOQEOXNM+eP+3HT/Yq7ruWpciQw+Avi73pdEbA4SooCawEWo3dtYbF68gN7Ed1A== - dependencies: - "@typescript-eslint/scope-manager" "7.13.1" - "@typescript-eslint/types" "7.13.1" - "@typescript-eslint/typescript-estree" "7.13.1" - "@typescript-eslint/visitor-keys" "7.13.1" + version "7.14.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.14.1.tgz#13d97f357aed3c5719f259a6cc3d1a1f065d3692" + integrity sha512-8lKUOebNLcR0D7RvlcloOacTOWzOqemWEWkKSVpMZVF/XVcwjPR+3MD08QzbW9TCGJ+DwIc6zUSGZ9vd8cO1IA== + dependencies: + "@typescript-eslint/scope-manager" "7.14.1" + "@typescript-eslint/types" "7.14.1" + "@typescript-eslint/typescript-estree" "7.14.1" + "@typescript-eslint/visitor-keys" "7.14.1" debug "^4.3.4" "@typescript-eslint/scope-manager@7.12.0": @@ -2199,21 +2199,21 @@ "@typescript-eslint/types" "7.12.0" "@typescript-eslint/visitor-keys" "7.12.0" -"@typescript-eslint/scope-manager@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.13.1.tgz#c08041206904bf36f0e6997efdb0ca775e0c452e" - integrity sha512-adbXNVEs6GmbzaCpymHQ0MB6E4TqoiVbC0iqG3uijR8ZYfpAXMGttouQzF4Oat3P2GxDVIrg7bMI/P65LiQZdg== +"@typescript-eslint/scope-manager@7.14.1": + version "7.14.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.14.1.tgz#63de7a577bc6fe8ee6e412a5b85499f654b93ee5" + integrity sha512-gPrFSsoYcsffYXTOZ+hT7fyJr95rdVe4kGVX1ps/dJ+DfmlnjFN/GcMxXcVkeHDKqsq6uAcVaQaIi3cFffmAbA== dependencies: - "@typescript-eslint/types" "7.13.1" - "@typescript-eslint/visitor-keys" "7.13.1" + "@typescript-eslint/types" "7.14.1" + "@typescript-eslint/visitor-keys" "7.14.1" -"@typescript-eslint/type-utils@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.13.1.tgz#63bec3f1fb43cf0bc409cbdb88ef96d118ca8632" - integrity sha512-aWDbLu1s9bmgPGXSzNCxELu+0+HQOapV/y+60gPXafR8e2g1Bifxzevaa+4L2ytCWm+CHqpELq4CSoN9ELiwCg== +"@typescript-eslint/type-utils@7.14.1": + version "7.14.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.14.1.tgz#c183f2f28c4c8578eb80aebc4ac9ace400160af6" + integrity sha512-/MzmgNd3nnbDbOi3LfasXWWe292+iuo+umJ0bCCMCPc1jLO/z2BQmWUUUXvXLbrQey/JgzdF/OV+I5bzEGwJkQ== dependencies: - "@typescript-eslint/typescript-estree" "7.13.1" - "@typescript-eslint/utils" "7.13.1" + "@typescript-eslint/typescript-estree" "7.14.1" + "@typescript-eslint/utils" "7.14.1" debug "^4.3.4" ts-api-utils "^1.3.0" @@ -2222,7 +2222,12 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.12.0.tgz#bf208f971a8da1e7524a5d9ae2b5f15192a37981" integrity sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg== -"@typescript-eslint/types@7.13.1", "@typescript-eslint/types@^7.2.0": +"@typescript-eslint/types@7.14.1": + version "7.14.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.14.1.tgz#a43a540dbe5df7f2a11269683d777fc50b4350aa" + integrity sha512-mL7zNEOQybo5R3AavY+Am7KLv8BorIv7HCYS5rKoNZKQD9tsfGUpO4KdAn3sSUvTiS4PQkr2+K0KJbxj8H9NDg== + +"@typescript-eslint/types@^7.2.0": version "7.13.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.1.tgz#787db283bd0b58751094c90d5b58bbf5e9fc9bd8" integrity sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw== @@ -2241,13 +2246,13 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/typescript-estree@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.1.tgz#3412841b130e070db2f675e3d9b8cb1ae49e1c3f" - integrity sha512-uxNr51CMV7npU1BxZzYjoVz9iyjckBduFBP0S5sLlh1tXYzHzgZ3BR9SVsNed+LmwKrmnqN3Kdl5t7eZ5TS1Yw== +"@typescript-eslint/typescript-estree@7.14.1": + version "7.14.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.14.1.tgz#ba7c9bac8744487749d19569e254d057754a1575" + integrity sha512-k5d0VuxViE2ulIO6FbxxSZaxqDVUyMbXcidC8rHvii0I56XZPv8cq+EhMns+d/EVIL41sMXqRbK3D10Oza1bbA== dependencies: - "@typescript-eslint/types" "7.13.1" - "@typescript-eslint/visitor-keys" "7.13.1" + "@typescript-eslint/types" "7.14.1" + "@typescript-eslint/visitor-keys" "7.14.1" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2255,15 +2260,15 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.13.1.tgz#611083379caa0d3a2c09d126c65065a3e4337ba2" - integrity sha512-h5MzFBD5a/Gh/fvNdp9pTfqJAbuQC4sCN2WzuXme71lqFJsZtLbjxfSk4r3p02WIArOF9N94pdsLiGutpDbrXQ== +"@typescript-eslint/utils@7.14.1": + version "7.14.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.14.1.tgz#3307b8226f99103dca2133d0ebcae38419d82c9d" + integrity sha512-CMmVVELns3nak3cpJhZosDkm63n+DwBlDX8g0k4QUa9BMnF+lH2lr3d130M1Zt1xxmB3LLk3NV7KQCq86ZBBhQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.13.1" - "@typescript-eslint/types" "7.13.1" - "@typescript-eslint/typescript-estree" "7.13.1" + "@typescript-eslint/scope-manager" "7.14.1" + "@typescript-eslint/types" "7.14.1" + "@typescript-eslint/typescript-estree" "7.14.1" "@typescript-eslint/utils@^6.0.0 || ^7.0.0": version "7.12.0" @@ -2283,12 +2288,12 @@ "@typescript-eslint/types" "7.12.0" eslint-visitor-keys "^3.4.3" -"@typescript-eslint/visitor-keys@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.1.tgz#9c229a795a919db61f2d7f2337ef584ac05fbe96" - integrity sha512-k/Bfne7lrP7hcb7m9zSsgcBmo+8eicqqfNAJ7uUY+jkTFpKeH2FSkWpFRtimBxgkyvqfu9jTPRbYOvud6isdXA== +"@typescript-eslint/visitor-keys@7.14.1": + version "7.14.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.14.1.tgz#cc79b5ea154aea734b2a13b983670749f5742274" + integrity sha512-Crb+F75U1JAEtBeQGxSKwI60hZmmzaqA3z9sYsVm8X7W5cwLEm5bRe0/uXS6+MR/y8CVpKSR/ontIAIEPFcEkA== dependencies: - "@typescript-eslint/types" "7.13.1" + "@typescript-eslint/types" "7.14.1" eslint-visitor-keys "^3.4.3" "@ungap/structured-clone@^1.2.0": From 3e0017fecfe307d9ef1f68534ef0107e4ceb41d7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 15:25:04 +0000 Subject: [PATCH 295/595] Update actions/checkout digest to 692973e (#4267) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/sonarcloud.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index d97a2082172..7507f9d8528 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -30,7 +30,7 @@ jobs: target_url: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} - name: "🧮 Checkout code" - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4 + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 with: repository: ${{ github.event.workflow_run.head_repository.full_name }} ref: ${{ github.event.workflow_run.head_branch }} # checkout commit that triggered this workflow From 2ea4ce0bb6a84c5ebef0647a24e0dc8f7c5e78c6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 16:02:43 +0000 Subject: [PATCH 296/595] Update dependency bs58 to v6 (#4274) * Update dependency bs58 to v6 * Update import Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * prettier Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 2 +- src/crypto/recoverykey.ts | 2 +- yarn.lock | 127 ++++++++++++++++++-------------------- 3 files changed, 63 insertions(+), 68 deletions(-) diff --git a/package.json b/package.json index 7fa0c53776b..9ffd8b741b3 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "@babel/runtime": "^7.12.5", "@matrix-org/matrix-sdk-crypto-wasm": "^6.0.0", "another-json": "^0.2.0", - "bs58": "^5.0.0", + "bs58": "^6.0.0", "content-type": "^1.0.4", "jwt-decode": "^4.0.0", "loglevel": "^1.7.1", diff --git a/src/crypto/recoverykey.ts b/src/crypto/recoverykey.ts index 8c6a7e33ed7..3d7c12d4acf 100644 --- a/src/crypto/recoverykey.ts +++ b/src/crypto/recoverykey.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import * as bs58 from "bs58"; +import bs58 from "bs58"; // picked arbitrarily but to try & avoid clashing with any bitcoin ones // (which are also base58 encoded, but bitcoin's involve a lot more hashing) diff --git a/yarn.lock b/yarn.lock index e22ca4ea4c6..868e3d8808c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2117,9 +2117,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.39" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.39.tgz#c316340a5b4adca3aee9dcbf05de385978590593" - integrity sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ== + version "18.19.34" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.34.tgz#c3fae2bbbdb94b4a52fe2d229d0dccce02ef3d27" + integrity sha512-eXF4pfBNV5DAMKGbI02NnDtWrQ40hAN558/2vvS4gMpMIxaf6JmD7YjnZbq0Q9TDSSkKBamime8ewRoomHdt4g== dependencies: undici-types "~5.26.4" @@ -2166,29 +2166,29 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.14.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.14.1.tgz#90e2f76a5930d553ede124e1f541a39b4417465e" - integrity sha512-aAJd6bIf2vvQRjUG3ZkNXkmBpN+J7Wd0mfQiiVCJMu9Z5GcZZdcc0j8XwN/BM97Fl7e3SkTXODSk4VehUv7CGw== + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.1.tgz#cdc521c8bca38b55585cf30db787fb2abad3f9fd" + integrity sha512-kZqi+WZQaZfPKnsflLJQCz6Ze9FFSMfXrrIOcyargekQxG37ES7DJNpJUE9Q/X5n3yTIP/WPutVNzgknQ7biLg== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.14.1" - "@typescript-eslint/type-utils" "7.14.1" - "@typescript-eslint/utils" "7.14.1" - "@typescript-eslint/visitor-keys" "7.14.1" + "@typescript-eslint/scope-manager" "7.13.1" + "@typescript-eslint/type-utils" "7.13.1" + "@typescript-eslint/utils" "7.13.1" + "@typescript-eslint/visitor-keys" "7.13.1" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" "@typescript-eslint/parser@^7.0.0": - version "7.14.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.14.1.tgz#13d97f357aed3c5719f259a6cc3d1a1f065d3692" - integrity sha512-8lKUOebNLcR0D7RvlcloOacTOWzOqemWEWkKSVpMZVF/XVcwjPR+3MD08QzbW9TCGJ+DwIc6zUSGZ9vd8cO1IA== - dependencies: - "@typescript-eslint/scope-manager" "7.14.1" - "@typescript-eslint/types" "7.14.1" - "@typescript-eslint/typescript-estree" "7.14.1" - "@typescript-eslint/visitor-keys" "7.14.1" + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.13.1.tgz#fac57811b3e519185f7259bac312291f7b9c4e72" + integrity sha512-1ELDPlnLvDQ5ybTSrMhRTFDfOQEOXNM+eP+3HT/Yq7ruWpciQw+Avi73pdEbA4SooCawEWo3dtYbF68gN7Ed1A== + dependencies: + "@typescript-eslint/scope-manager" "7.13.1" + "@typescript-eslint/types" "7.13.1" + "@typescript-eslint/typescript-estree" "7.13.1" + "@typescript-eslint/visitor-keys" "7.13.1" debug "^4.3.4" "@typescript-eslint/scope-manager@7.12.0": @@ -2199,21 +2199,21 @@ "@typescript-eslint/types" "7.12.0" "@typescript-eslint/visitor-keys" "7.12.0" -"@typescript-eslint/scope-manager@7.14.1": - version "7.14.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.14.1.tgz#63de7a577bc6fe8ee6e412a5b85499f654b93ee5" - integrity sha512-gPrFSsoYcsffYXTOZ+hT7fyJr95rdVe4kGVX1ps/dJ+DfmlnjFN/GcMxXcVkeHDKqsq6uAcVaQaIi3cFffmAbA== +"@typescript-eslint/scope-manager@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.13.1.tgz#c08041206904bf36f0e6997efdb0ca775e0c452e" + integrity sha512-adbXNVEs6GmbzaCpymHQ0MB6E4TqoiVbC0iqG3uijR8ZYfpAXMGttouQzF4Oat3P2GxDVIrg7bMI/P65LiQZdg== dependencies: - "@typescript-eslint/types" "7.14.1" - "@typescript-eslint/visitor-keys" "7.14.1" + "@typescript-eslint/types" "7.13.1" + "@typescript-eslint/visitor-keys" "7.13.1" -"@typescript-eslint/type-utils@7.14.1": - version "7.14.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.14.1.tgz#c183f2f28c4c8578eb80aebc4ac9ace400160af6" - integrity sha512-/MzmgNd3nnbDbOi3LfasXWWe292+iuo+umJ0bCCMCPc1jLO/z2BQmWUUUXvXLbrQey/JgzdF/OV+I5bzEGwJkQ== +"@typescript-eslint/type-utils@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.13.1.tgz#63bec3f1fb43cf0bc409cbdb88ef96d118ca8632" + integrity sha512-aWDbLu1s9bmgPGXSzNCxELu+0+HQOapV/y+60gPXafR8e2g1Bifxzevaa+4L2ytCWm+CHqpELq4CSoN9ELiwCg== dependencies: - "@typescript-eslint/typescript-estree" "7.14.1" - "@typescript-eslint/utils" "7.14.1" + "@typescript-eslint/typescript-estree" "7.13.1" + "@typescript-eslint/utils" "7.13.1" debug "^4.3.4" ts-api-utils "^1.3.0" @@ -2222,12 +2222,7 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.12.0.tgz#bf208f971a8da1e7524a5d9ae2b5f15192a37981" integrity sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg== -"@typescript-eslint/types@7.14.1": - version "7.14.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.14.1.tgz#a43a540dbe5df7f2a11269683d777fc50b4350aa" - integrity sha512-mL7zNEOQybo5R3AavY+Am7KLv8BorIv7HCYS5rKoNZKQD9tsfGUpO4KdAn3sSUvTiS4PQkr2+K0KJbxj8H9NDg== - -"@typescript-eslint/types@^7.2.0": +"@typescript-eslint/types@7.13.1", "@typescript-eslint/types@^7.2.0": version "7.13.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.1.tgz#787db283bd0b58751094c90d5b58bbf5e9fc9bd8" integrity sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw== @@ -2246,13 +2241,13 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/typescript-estree@7.14.1": - version "7.14.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.14.1.tgz#ba7c9bac8744487749d19569e254d057754a1575" - integrity sha512-k5d0VuxViE2ulIO6FbxxSZaxqDVUyMbXcidC8rHvii0I56XZPv8cq+EhMns+d/EVIL41sMXqRbK3D10Oza1bbA== +"@typescript-eslint/typescript-estree@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.1.tgz#3412841b130e070db2f675e3d9b8cb1ae49e1c3f" + integrity sha512-uxNr51CMV7npU1BxZzYjoVz9iyjckBduFBP0S5sLlh1tXYzHzgZ3BR9SVsNed+LmwKrmnqN3Kdl5t7eZ5TS1Yw== dependencies: - "@typescript-eslint/types" "7.14.1" - "@typescript-eslint/visitor-keys" "7.14.1" + "@typescript-eslint/types" "7.13.1" + "@typescript-eslint/visitor-keys" "7.13.1" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2260,15 +2255,15 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.14.1": - version "7.14.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.14.1.tgz#3307b8226f99103dca2133d0ebcae38419d82c9d" - integrity sha512-CMmVVELns3nak3cpJhZosDkm63n+DwBlDX8g0k4QUa9BMnF+lH2lr3d130M1Zt1xxmB3LLk3NV7KQCq86ZBBhQ== +"@typescript-eslint/utils@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.13.1.tgz#611083379caa0d3a2c09d126c65065a3e4337ba2" + integrity sha512-h5MzFBD5a/Gh/fvNdp9pTfqJAbuQC4sCN2WzuXme71lqFJsZtLbjxfSk4r3p02WIArOF9N94pdsLiGutpDbrXQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.14.1" - "@typescript-eslint/types" "7.14.1" - "@typescript-eslint/typescript-estree" "7.14.1" + "@typescript-eslint/scope-manager" "7.13.1" + "@typescript-eslint/types" "7.13.1" + "@typescript-eslint/typescript-estree" "7.13.1" "@typescript-eslint/utils@^6.0.0 || ^7.0.0": version "7.12.0" @@ -2288,12 +2283,12 @@ "@typescript-eslint/types" "7.12.0" eslint-visitor-keys "^3.4.3" -"@typescript-eslint/visitor-keys@7.14.1": - version "7.14.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.14.1.tgz#cc79b5ea154aea734b2a13b983670749f5742274" - integrity sha512-Crb+F75U1JAEtBeQGxSKwI60hZmmzaqA3z9sYsVm8X7W5cwLEm5bRe0/uXS6+MR/y8CVpKSR/ontIAIEPFcEkA== +"@typescript-eslint/visitor-keys@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.1.tgz#9c229a795a919db61f2d7f2337ef584ac05fbe96" + integrity sha512-k/Bfne7lrP7hcb7m9zSsgcBmo+8eicqqfNAJ7uUY+jkTFpKeH2FSkWpFRtimBxgkyvqfu9jTPRbYOvud6isdXA== dependencies: - "@typescript-eslint/types" "7.14.1" + "@typescript-eslint/types" "7.13.1" eslint-visitor-keys "^3.4.3" "@ungap/structured-clone@^1.2.0": @@ -2660,10 +2655,10 @@ base-x@^3.0.6: dependencies: safe-buffer "^5.0.1" -base-x@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/base-x/-/base-x-4.0.0.tgz#d0e3b7753450c73f8ad2389b5c018a4af7b2224a" - integrity sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw== +base-x@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-5.0.0.tgz#6d835ceae379130e1a4cb846a70ac4746f28ea9b" + integrity sha512-sMW3VGSX1QWVFA6l8U62MLKz29rRfpTlYdCqLdpLo1/Yd4zZwSbnUaDfciIAowAqvq7YFnWq9hrhdg1KYgc1lQ== binary-extensions@^2.0.0: version "2.3.0" @@ -2702,12 +2697,12 @@ browserslist@^4.22.2, browserslist@^4.23.0: node-releases "^2.0.14" update-browserslist-db "^1.0.16" -bs58@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/bs58/-/bs58-5.0.0.tgz#865575b4d13c09ea2a84622df6c8cbeb54ffc279" - integrity sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ== +bs58@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/bs58/-/bs58-6.0.0.tgz#a2cda0130558535dd281a2f8697df79caaf425d8" + integrity sha512-PD0wEnEYg6ijszw/u8s+iI3H17cTymlrwkKhDhPZq+Sokl3AU4htyBFTjAeNAlCCmg0f53g6ih3jATyCKftTfw== dependencies: - base-x "^4.0.0" + base-x "^5.0.0" bser@2.1.1: version "2.1.1" @@ -6548,9 +6543,9 @@ typedoc@^0.26.0: yaml "^2.4.5" typescript@^5.3.3: - version "5.5.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.2.tgz#c26f023cb0054e657ce04f72583ea2d85f8d0507" - integrity sha512-NcRtPEOsPFFWjobJEtfihkLCZCXZt/os3zf8nTxjVH3RvTSxjrCamJpbExGvYOF+tFHc3pA65qpdwPbzjohhew== + version "5.4.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" + integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== uc.micro@^2.0.0, uc.micro@^2.1.0: version "2.1.0" From 0f98df158ce24f36683e436ab758644aad08ec8c Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 25 Jun 2024 17:24:13 +0100 Subject: [PATCH 297/595] Fix ingest of release notes wiping out the parent notes (#4266) * Fix ingest of release notes wiping out the parent notes Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Remove redundant reusable workflow input Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-make.yml | 4 ---- scripts/release/merge-release-notes.js | 13 +++++++------ 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index 87419f03352..7091bcd4dfe 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -24,10 +24,6 @@ on: description: List of github projects (owner/repo) which should have their dependency bumped to the newly released version (in JSON string array string syntax) type: string required: false - include-changes: - description: Project to include changelog entries from in this release. - type: string - required: false gpg-fingerprint: description: Fingerprint of the GPG key to use for signing the git tag and assets, if any. type: string diff --git a/scripts/release/merge-release-notes.js b/scripts/release/merge-release-notes.js index 06228492392..c1aaed7ef73 100755 --- a/scripts/release/merge-release-notes.js +++ b/scripts/release/merge-release-notes.js @@ -112,7 +112,14 @@ const main = async ({ github, releaseId, dependencies }) => { const { GITHUB_REPOSITORY } = process.env; const [owner, repo] = GITHUB_REPOSITORY.split("/"); + const { data: release } = await github.rest.repos.getRelease({ + owner, + repo, + release_id: releaseId, + }); + const sections = Object.fromEntries(categories.map((cat) => [cat, []])); + parseReleaseNotes(release.body, sections); for (const dependency of dependencies) { const releases = await getReleases(github, dependency); for (const release of releases) { @@ -120,12 +127,6 @@ const main = async ({ github, releaseId, dependencies }) => { } } - const { data: release } = await github.rest.repos.getRelease({ - owner, - repo, - release_id: releaseId, - }); - const intro = release.body.split(HEADING_PREFIX, 2)[0].trim(); let output = ""; From 29c02d8c377467361d2e1cc3b7455cb5de7b10bc Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 16:30:03 +0000 Subject: [PATCH 298/595] Update all non-major dependencies (#4268) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 109 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 63 insertions(+), 46 deletions(-) diff --git a/yarn.lock b/yarn.lock index 868e3d8808c..60fa7821e97 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1912,6 +1912,11 @@ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== +"@pkgr/core@^0.1.0": + version "0.1.1" + resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.1.1.tgz#1ec17e2edbec25c8306d424ecfbf13c7de1aaa31" + integrity sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA== + "@shikijs/core@1.9.1": version "1.9.1" resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.9.1.tgz#f8c61fb19dbec510fa27f892c441d99b53093e49" @@ -2222,11 +2227,16 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.12.0.tgz#bf208f971a8da1e7524a5d9ae2b5f15192a37981" integrity sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg== -"@typescript-eslint/types@7.13.1", "@typescript-eslint/types@^7.2.0": +"@typescript-eslint/types@7.13.1": version "7.13.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.1.tgz#787db283bd0b58751094c90d5b58bbf5e9fc9bd8" integrity sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw== +"@typescript-eslint/types@^7.2.0": + version "7.14.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.14.1.tgz#a43a540dbe5df7f2a11269683d777fc50b4350aa" + integrity sha512-mL7zNEOQybo5R3AavY+Am7KLv8BorIv7HCYS5rKoNZKQD9tsfGUpO4KdAn3sSUvTiS4PQkr2+K0KJbxj8H9NDg== + "@typescript-eslint/typescript-estree@7.12.0": version "7.12.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.12.0.tgz#e6c1074f248b3db6573ab6a7c47a39c4cd498ff9" @@ -3227,6 +3237,11 @@ es-abstract@^1.22.1: unbox-primitive "^1.0.2" which-typed-array "^1.1.13" +es-module-lexer@^1.5.3: + version "1.5.4" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.5.4.tgz#a8efec3a3da991e60efa6b633a7cad6ab8d26b78" + integrity sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw== + es-set-tostringtag@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz#11f7cc9f63376930a5f20be4915834f4bc74f9c9" @@ -3353,9 +3368,9 @@ eslint-plugin-jest@^28.0.0: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0" eslint-plugin-jsdoc@^48.0.0: - version "48.2.12" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.12.tgz#e8411c87e55db3f21a288e04bf7e1fb5fa62dfa9" - integrity sha512-sO9sKkJx5ovWoRk9hV0YiNzXQ4Z6j27CqE/po2E3wddZVuy9wvKPSTiIhpxMTrP/qURvKayJIDB2+o9kyCW1Fw== + version "48.4.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.4.0.tgz#746a30b8d01a9aa7894e52f8a273a49ca681ef78" + integrity sha512-xBUxuAx03cKoEA7y+MYSUdwyN8AJyZHbAJ257sOFXgVgCScm574S4zEYJpBoARwaCu4chhCbvA+gdm+00whlxA== dependencies: "@es-joy/jsdoccomment" "~0.43.1" are-docs-informative "^0.0.2" @@ -3363,8 +3378,10 @@ eslint-plugin-jsdoc@^48.0.0: debug "^4.3.4" escape-string-regexp "^4.0.0" esquery "^1.5.0" + parse-imports "^2.1.0" semver "^7.6.2" spdx-expression-parse "^4.0.0" + synckit "^0.9.0" eslint-plugin-matrix-org@^1.0.0: version "1.2.1" @@ -3691,13 +3708,6 @@ fetch-mock@^9.11.0: querystring "^0.2.0" whatwg-url "^6.5.0" -file-entry-cache@8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz#7787bddcf1131bffb92636c69457bbc0edd6d81f" - integrity sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ== - dependencies: - flat-cache "^4.0.0" - file-entry-cache@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" @@ -3741,24 +3751,11 @@ flat-cache@^3.0.4: flatted "^3.1.0" rimraf "^3.0.2" -flat-cache@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-4.0.1.tgz#0ece39fcb14ee012f4b0410bd33dd9c1f011127c" - integrity sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw== - dependencies: - flatted "^3.2.9" - keyv "^4.5.4" - flatted@^3.1.0: version "3.2.7" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== -flatted@^3.2.9: - version "3.3.1" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" - integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== - for-each@^0.3.3: version "0.3.3" resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" @@ -4017,7 +4014,7 @@ has@^1.0.3: resolved "https://registry.yarnpkg.com/has/-/has-1.0.4.tgz#2eb2860e000011dae4f1406a86fe80e530fb2ec6" integrity sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ== -hasown@^2.0.0: +hasown@^2.0.0, hasown@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== @@ -4193,7 +4190,14 @@ is-core-module@^2.11.0: dependencies: has "^1.0.3" -is-core-module@^2.13.0, is-core-module@^2.13.1: +is-core-module@^2.13.0: + version "2.14.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.14.0.tgz#43b8ef9f46a6a08888db67b1ffd4ec9e3dfd59d1" + integrity sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A== + dependencies: + hasown "^2.0.2" + +is-core-module@^2.13.1: version "2.13.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== @@ -4924,11 +4928,6 @@ jsesc@~0.5.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== -json-buffer@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" - integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== - json-parse-even-better-errors@^2.3.0: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" @@ -4966,29 +4965,21 @@ jwt-decode@^4.0.0: resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-4.0.0.tgz#2270352425fd413785b2faf11f6e755c5151bd4b" integrity sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA== -keyv@^4.5.4: - version "4.5.4" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" - integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== - dependencies: - json-buffer "3.0.1" - kleur@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.21.2" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.21.2.tgz#0b25001ee645882784c652cd14c3a3e7ff50ec37" - integrity sha512-V8bzHWjQyhkN0cxajxyHqaD8CPOkNtSwo4+Zue3z//4fbWO79xXLVp61fuaaTcT9O7I7E2ZjuHENtRkBrjSzCg== + version "5.23.0" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.23.0.tgz#655bec539375571baa8cebe059d64ae9ceb4fd41" + integrity sha512-kHXcxmbbpTa+ZPx29KfAbBGP6TK81wXjvHyUPTCbGNFwOVnVUminesaO/of+9KleCzw3pUPiK/k4UsEu+aFK4Q== dependencies: "@ericcornelissen/bash-parser" "0.5.3" "@nodelib/fs.walk" "2.0.0" "@snyk/github-codeowners" "1.1.0" easy-table "1.2.0" fast-glob "^3.3.2" - file-entry-cache "8.0.0" jiti "^1.21.0" js-yaml "^4.1.0" minimist "^1.2.8" @@ -5509,6 +5500,14 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" +parse-imports@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/parse-imports/-/parse-imports-2.1.0.tgz#22a152f4503da34e8fb89c902383895f59e93d2d" + integrity sha512-JQWgmK2o4w8leUkZeZPatWdAny6vXGU/3siIUvMF6J2rDCud9aTt8h/px9oZJ6U3EcfhngBJ635uPFI0q0VAeA== + dependencies: + es-module-lexer "^1.5.3" + slashes "^3.0.12" + parse-json@^5.0.0, parse-json@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" @@ -6058,6 +6057,11 @@ slash@^3.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== +slashes@^3.0.12: + version "3.0.12" + resolved "https://registry.yarnpkg.com/slashes/-/slashes-3.0.12.tgz#3d664c877ad542dc1509eaf2c50f38d483a6435a" + integrity sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA== + slice-ansi@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-5.0.0.tgz#b73063c57aa96f9cd881654b15294d95d285c42a" @@ -6075,9 +6079,9 @@ slice-ansi@^7.0.0: is-fullwidth-code-point "^5.0.0" smol-toml@^1.1.4: - version "1.2.1" - resolved "https://registry.yarnpkg.com/smol-toml/-/smol-toml-1.2.1.tgz#6216334548763d4aac76cafff19f8914937ee13a" - integrity sha512-OtZKrVrGIT+m++lxyF0z5n68nkwdgZotPhy89bfA4T7nSWe0xeQtfbjM1z5VLTilJdWXH46g8i0oAcpQNkzZTg== + version "1.2.2" + resolved "https://registry.yarnpkg.com/smol-toml/-/smol-toml-1.2.2.tgz#e0eb86dd8dab307b5345b0daff32a79a39f19175" + integrity sha512-fVEjX2ybKdJKzFL46VshQbj9PuA4IUKivalgp48/3zwS9vXzyykzQ6AX92UxHSvWJagziMRLeHMgEzoGO7A8hQ== source-map-support@0.5.13: version "0.5.13" @@ -6313,6 +6317,14 @@ symbol-tree@^3.2.4: resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== +synckit@^0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.9.0.tgz#5b33b458b3775e4466a5b377fba69c63572ae449" + integrity sha512-7RnqIMq572L8PeEzKeBINYEJDDxpcH8JEgLwUqBd3TkofhFRbkq4QLR0u+36avGAhCRbk2nnmjcW9SE531hPDg== + dependencies: + "@pkgr/core" "^0.1.0" + tslib "^2.6.2" + tapable@^2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" @@ -6440,11 +6452,16 @@ tsconfig-paths@^4.2.0: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1, tslib@^2.6.2: +tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1: version "2.6.2" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== +tslib@^2.6.2: + version "2.6.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.3.tgz#0438f810ad7a9edcde7a241c3d80db693c8cbfe0" + integrity sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ== + type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" From 16db2c5f9a1f78097e5f7cc11563f55c3b066e8b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 16:30:40 +0000 Subject: [PATCH 299/595] Update dependency @types/node to v18.19.39 (#4278) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 60fa7821e97..cb81c8f7aff 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2122,9 +2122,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.34" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.34.tgz#c3fae2bbbdb94b4a52fe2d229d0dccce02ef3d27" - integrity sha512-eXF4pfBNV5DAMKGbI02NnDtWrQ40hAN558/2vvS4gMpMIxaf6JmD7YjnZbq0Q9TDSSkKBamime8ewRoomHdt4g== + version "18.19.39" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.39.tgz#c316340a5b4adca3aee9dcbf05de385978590593" + integrity sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ== dependencies: undici-types "~5.26.4" From 2d492f60a08e1538fab168013466eb28850c10db Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 16:49:31 +0000 Subject: [PATCH 300/595] Update dependency typescript to v5.5.2 (#4280) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index cb81c8f7aff..48d03cbe291 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6560,9 +6560,9 @@ typedoc@^0.26.0: yaml "^2.4.5" typescript@^5.3.3: - version "5.4.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" - integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== + version "5.5.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.2.tgz#c26f023cb0054e657ce04f72583ea2d85f8d0507" + integrity sha512-NcRtPEOsPFFWjobJEtfihkLCZCXZt/os3zf8nTxjVH3RvTSxjrCamJpbExGvYOF+tFHc3pA65qpdwPbzjohhew== uc.micro@^2.0.0, uc.micro@^2.1.0: version "2.1.0" From c755810d9c7d9b76322d5d6c8e45a956e21abec1 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 17:06:31 +0000 Subject: [PATCH 301/595] Update dependency typedoc-plugin-mdn-links to v3.2.0 (#4279) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 48d03cbe291..a7c8f8f35f3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6539,9 +6539,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-jY6bEl/zNezRTAg0V4+FkJAtPlzSszK3QzcXSyGYcKjzzT8C6qw0xdh2KIJkxAtzYtgxT/4idiAYqZ1WRAieTA== typedoc-plugin-mdn-links@^3.0.3: - version "3.1.30" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.1.30.tgz#bea289518cb393b07ee65fabc8ced393810dce9a" - integrity sha512-aB3UqyRGdxYziOHKzE7AQPh+9xpqqHHrp23F+T6yshHeuSiauCL+zzgTRhi4Ad1x30/7rTkCtyQ5dfO/+1FDKA== + version "3.2.1" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.1.tgz#7388fb62b034d3d1df5bb2c8296683139d4a19f2" + integrity sha512-l76VJKKhOxCYXnb16aV6nAQG5JCsuStqviNFmgzhS9dW73nqm3/1MO9497+0KlDTOPO3o+R2uVXq87d2cDy/hg== typedoc-plugin-missing-exports@^3.0.0: version "3.0.0" From 3e05a71068198c0c905f1e036624015b5c319072 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 23:21:51 +0100 Subject: [PATCH 302/595] Update dependency typedoc-plugin-coverage to v3.3.0 (#4281) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a7c8f8f35f3..b7140be5c2a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6534,9 +6534,9 @@ typed-array-length@^1.0.4: is-typed-array "^1.1.9" typedoc-plugin-coverage@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/typedoc-plugin-coverage/-/typedoc-plugin-coverage-3.2.0.tgz#c3d09fd5f42fb8fa3de0ed72344c406afe7e994b" - integrity sha512-jY6bEl/zNezRTAg0V4+FkJAtPlzSszK3QzcXSyGYcKjzzT8C6qw0xdh2KIJkxAtzYtgxT/4idiAYqZ1WRAieTA== + version "3.3.0" + resolved "https://registry.yarnpkg.com/typedoc-plugin-coverage/-/typedoc-plugin-coverage-3.3.0.tgz#2b00830f32129e7433708f6893729d6770b96276" + integrity sha512-wpywQ95tqGSD6IbYUPMXSKiwnSWboSKdx2y9X6SJQKzQvBqZoz5iiUyDJFixtW8v7+xmrqXFR/B6Wy37FNhVqA== typedoc-plugin-mdn-links@^3.0.3: version "3.2.1" From 0210106be2a7c2019ac7c6e26cbf5f655a9cb811 Mon Sep 17 00:00:00 2001 From: Timo <16718859+toger5@users.noreply.github.com> Date: Wed, 26 Jun 2024 11:29:11 +0200 Subject: [PATCH 303/595] Add fetching the well known in embedded mode. (#4259) * Add fetching the well known in embedded mode. This is used to load the focus from the well known in elment-call. * revert what we dont want in this PR. * Update src/client.ts Co-authored-by: Andrew Ferrazzutti --------- Co-authored-by: Andrew Ferrazzutti --- src/client.ts | 2 +- src/embedded.ts | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/client.ts b/src/client.ts index d1f089d37ee..4b91a35f84d 100644 --- a/src/client.ts +++ b/src/client.ts @@ -7410,7 +7410,7 @@ export class MatrixClient extends TypedEventEmitter { + protected async fetchClientWellKnown(): Promise { // `getRawClientConfig` does not throw or reject on network errors, instead // it absorbs errors and returns `{}`. this.clientWellKnownPromise = AutoDiscovery.getRawClientConfig(this.getDomain() ?? undefined); diff --git a/src/embedded.ts b/src/embedded.ts index 8730c22ee3f..d1b84ce2fa1 100644 --- a/src/embedded.ts +++ b/src/embedded.ts @@ -218,6 +218,14 @@ export class RoomWidgetClient extends MatrixClient { }); }) ?? [], ); + + if (opts.clientWellKnownPollPeriod !== undefined) { + this.clientWellKnownIntervalID = setInterval(() => { + this.fetchClientWellKnown(); + }, 1000 * opts.clientWellKnownPollPeriod); + this.fetchClientWellKnown(); + } + this.setSyncState(SyncState.Syncing); logger.info("Finished backfilling events"); From d629a685c21df967f467ebd0e7363176f7cdda4e Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Wed, 26 Jun 2024 18:11:29 +0100 Subject: [PATCH 304/595] Declare matrix-js-sdk as an ES module (#4285) * Declare matrix-js-sdk as an ES module * Rename `babel.config.js` to show it is a CommonJS module ... otherwise it gets broken by `scripts/switch_package_to_release.js` --- babel.config.js => babel.config.cjs | 0 scripts/switch_package_to_release.js | 5 +++++ 2 files changed, 5 insertions(+) rename babel.config.js => babel.config.cjs (100%) diff --git a/babel.config.js b/babel.config.cjs similarity index 100% rename from babel.config.js rename to babel.config.cjs diff --git a/scripts/switch_package_to_release.js b/scripts/switch_package_to_release.js index 2ef9bb09cb2..353840d4d92 100755 --- a/scripts/switch_package_to_release.js +++ b/scripts/switch_package_to_release.js @@ -11,6 +11,11 @@ async function main() { pkgJson[field] = pkgJson["matrix_lib_" + field]; } } + + // matrix-js-sdk is built into ECMAScript modules. Make sure we declare it as such. + // See https://nodejs.org/api/packages.html#type. + pkgJson["type"] = "module"; + await fsProm.writeFile(PKGJSON, JSON.stringify(pkgJson, null, 2)); } From 65b9c31f9b9b24d3ebe95656e4429b17a1f84285 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Wed, 26 Jun 2024 22:02:40 +0100 Subject: [PATCH 305/595] Rename `crypto-api.ts` -> `crypto-api/index.ts` (#4283) I found it quite confusing having `CryptoApi` be defined so far from the `crypto-api` folder. --- src/{crypto-api.ts => crypto-api/index.ts} | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) rename src/{crypto-api.ts => crypto-api/index.ts} (98%) diff --git a/src/crypto-api.ts b/src/crypto-api/index.ts similarity index 98% rename from src/crypto-api.ts rename to src/crypto-api/index.ts index 740d60dc8bc..f308b33be57 100644 --- a/src/crypto-api.ts +++ b/src/crypto-api/index.ts @@ -15,15 +15,15 @@ limitations under the License. */ import type { SecretsBundle } from "@matrix-org/matrix-sdk-crypto-wasm"; -import type { IMegolmSessionData } from "./@types/crypto"; -import { Room } from "./models/room"; -import { DeviceMap } from "./models/device"; -import { UIAuthCallback } from "./interactive-auth"; -import { PassphraseInfo, SecretStorageCallbacks, SecretStorageKeyDescription } from "./secret-storage"; -import { VerificationRequest } from "./crypto-api/verification"; -import { BackupTrustInfo, KeyBackupCheck, KeyBackupInfo } from "./crypto-api/keybackup"; -import { ISignatures } from "./@types/signed"; -import { MatrixEvent } from "./models/event"; +import type { IMegolmSessionData } from "../@types/crypto"; +import { Room } from "../models/room"; +import { DeviceMap } from "../models/device"; +import { UIAuthCallback } from "../interactive-auth"; +import { PassphraseInfo, SecretStorageCallbacks, SecretStorageKeyDescription } from "../secret-storage"; +import { VerificationRequest } from "./verification"; +import { BackupTrustInfo, KeyBackupCheck, KeyBackupInfo } from "./keybackup"; +import { ISignatures } from "../@types/signed"; +import { MatrixEvent } from "../models/event"; /** * Public interface to the cryptography parts of the js-sdk @@ -949,5 +949,5 @@ export interface OwnDeviceKeys { curve25519: string; } -export * from "./crypto-api/verification"; -export * from "./crypto-api/keybackup"; +export * from "./verification"; +export * from "./keybackup"; From 3de0c0275793a9e06163e7197328d7d234a6e494 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Thu, 27 Jun 2024 16:43:54 +0100 Subject: [PATCH 306/595] Remove redundant hack for using the old pickle key in rust crypto (#4282) * Remove redundant hack for using the old pickle key in rust crypto * Fix tests --- spec/integ/crypto/rust-crypto.spec.ts | 23 +---------------------- src/client.ts | 4 +--- 2 files changed, 2 insertions(+), 25 deletions(-) diff --git a/spec/integ/crypto/rust-crypto.spec.ts b/spec/integ/crypto/rust-crypto.spec.ts index a1b7a7545ed..5aee7e83582 100644 --- a/spec/integ/crypto/rust-crypto.spec.ts +++ b/spec/integ/crypto/rust-crypto.spec.ts @@ -66,26 +66,6 @@ describe("MatrixClient.initRustCrypto", () => { expect(databaseNames).toEqual(expect.arrayContaining(["matrix-js-sdk::matrix-sdk-crypto"])); }); - it("should create the meta db if given a pickleKey", async () => { - const matrixClient = createClient({ - baseUrl: "http://test.server", - userId: "@alice:localhost", - deviceId: "aliceDevice", - pickleKey: "testKey", - }); - - // No databases. - expect(await indexedDB.databases()).toHaveLength(0); - - await matrixClient.initRustCrypto(); - - // should have two indexed dbs now - const databaseNames = (await indexedDB.databases()).map((db) => db.name); - expect(databaseNames).toEqual( - expect.arrayContaining(["matrix-js-sdk::matrix-sdk-crypto", "matrix-js-sdk::matrix-sdk-crypto-meta"]), - ); - }); - it("should create the meta db if given a storageKey", async () => { const matrixClient = createClient({ baseUrl: "http://test.server", @@ -470,10 +450,9 @@ describe("MatrixClient.clearStores", () => { baseUrl: "http://test.server", userId: "@alice:localhost", deviceId: "aliceDevice", - pickleKey: "testKey", }); - await matrixClient.initRustCrypto(); + await matrixClient.initRustCrypto({ storagePassword: "testKey" }); expect(await indexedDB.databases()).toHaveLength(2); await matrixClient.stopClient(); diff --git a/src/client.ts b/src/client.ts index 4b91a35f84d..46bc3861026 100644 --- a/src/client.ts +++ b/src/client.ts @@ -2232,9 +2232,7 @@ export class MatrixClient extends TypedEventEmitter Date: Thu, 27 Jun 2024 17:58:26 +0100 Subject: [PATCH 307/595] Use prebuilt js-sdk for node example (#4286) This example seems to have been broken by the switch to Typescript. We can't just symlink in `../..` because that gives us the typescript version of the source, which, obviously, doesn't work in node. Instead, make sure we use a prebuilt version of the js-sdk. It's actually even more broken as of js-sdk 33.0.0, thanks to the switch to ES modules (#4187), but we'll get to that later. --- examples/node/package.json | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/examples/node/package.json b/examples/node/package.json index dc81b0e0071..130fad9214e 100644 --- a/examples/node/package.json +++ b/examples/node/package.json @@ -3,12 +3,10 @@ "version": "0.0.0", "description": "", "main": "app.js", - "scripts": { - "preinstall": "npm install ../.." - }, "author": "", "license": "Apache 2.0", "dependencies": { - "cli-color": "^1.0.0" + "cli-color": "^1.0.0", + "matrix-js-sdk": "^32.0.0" } } From 3337bda752293feb7ad88175412dc33b57d4ebab Mon Sep 17 00:00:00 2001 From: Kegan Dougal <7190048+kegsay@users.noreply.github.com> Date: Fri, 28 Jun 2024 16:49:52 +0100 Subject: [PATCH 308/595] Remove useless log line (#4289) - it was spammy: https://github.com/element-hq/element-web/issues/27031 - it didn't actually log the duration, because the `block` function didn't `await` the inner promise. --- src/rust-crypto/RoomEncryptor.ts | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/rust-crypto/RoomEncryptor.ts b/src/rust-crypto/RoomEncryptor.ts index 7447ae61a74..788bf3308c4 100644 --- a/src/rust-crypto/RoomEncryptor.ts +++ b/src/rust-crypto/RoomEncryptor.ts @@ -105,10 +105,8 @@ export class RoomEncryptor { (member.membership == KnownMembership.Invite && this.room.shouldEncryptForInvitedMembers()) ) { // make sure we are tracking the deviceList for this user - logDuration(this.prefixedLogger, "updateTrackedUsers", async () => { - this.olmMachine.updateTrackedUsers([new UserId(member.userId)]).catch((e) => { - this.prefixedLogger.error("Unable to update tracked users", e); - }); + this.olmMachine.updateTrackedUsers([new UserId(member.userId)]).catch((e) => { + this.prefixedLogger.error("Unable to update tracked users", e); }); } From 20a670449706b9a5caf4f14633e3fdf87857fd8f Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Mon, 1 Jul 2024 10:15:01 +0100 Subject: [PATCH 309/595] Remove redundant `TextEncoder` shim (#4290) I believe the only reason we had this was that, before Node v11.0, `TextEncoder` wasn't available in the global object. Nowadays it is (see https://nodejs.org/api/util.html#class-utiltextencoder), so let's get rid of it. --- src/crypto/aes.ts | 2 +- src/crypto/crypto.ts | 12 ------------ src/crypto/key_passphrase.ts | 2 +- src/oidc/authorize.ts | 2 +- .../channels/MSC3903ECDHv2RendezvousChannel.ts | 2 +- 5 files changed, 4 insertions(+), 16 deletions(-) diff --git a/src/crypto/aes.ts b/src/crypto/aes.ts index 389e2ff6ac3..12acb694009 100644 --- a/src/crypto/aes.ts +++ b/src/crypto/aes.ts @@ -15,7 +15,7 @@ limitations under the License. */ import { decodeBase64, encodeBase64 } from "../base64"; -import { subtleCrypto, crypto, TextEncoder } from "./crypto"; +import { subtleCrypto, crypto } from "./crypto"; // salt for HKDF, with 8 bytes of zeros const zeroSalt = new Uint8Array(8); diff --git a/src/crypto/crypto.ts b/src/crypto/crypto.ts index 170dabb0937..e9df7a84ff1 100644 --- a/src/crypto/crypto.ts +++ b/src/crypto/crypto.ts @@ -18,7 +18,6 @@ import { logger } from "../logger"; export let crypto = globalThis.crypto; export let subtleCrypto = crypto?.subtle ?? crypto?.webkitSubtle; // TODO: Stop using webkitSubtle fallback -export let TextEncoder = globalThis.TextEncoder; /* eslint-disable @typescript-eslint/no-var-requires */ if (!crypto) { @@ -31,20 +30,9 @@ if (!crypto) { if (!subtleCrypto) { subtleCrypto = crypto?.subtle; } -if (!TextEncoder) { - try { - TextEncoder = require("util").TextEncoder; - } catch (e) { - logger.error("Failed to load TextEncoder util", e); - } -} /* eslint-enable @typescript-eslint/no-var-requires */ export function setCrypto(_crypto: Crypto): void { crypto = _crypto; subtleCrypto = _crypto.subtle ?? _crypto.webkitSubtle; } - -export function setTextEncoder(_TextEncoder: typeof TextEncoder): void { - TextEncoder = _TextEncoder; -} diff --git a/src/crypto/key_passphrase.ts b/src/crypto/key_passphrase.ts index f6fe7b6b7d7..85c325eb9c8 100644 --- a/src/crypto/key_passphrase.ts +++ b/src/crypto/key_passphrase.ts @@ -15,7 +15,7 @@ limitations under the License. */ import { randomString } from "../randomstring"; -import { subtleCrypto, TextEncoder } from "./crypto"; +import { subtleCrypto } from "./crypto"; const DEFAULT_ITERATIONS = 500000; diff --git a/src/oidc/authorize.ts b/src/oidc/authorize.ts index 35b93dc48e2..80a95f881bd 100644 --- a/src/oidc/authorize.ts +++ b/src/oidc/authorize.ts @@ -16,7 +16,7 @@ limitations under the License. import { IdTokenClaims, Log, OidcClient, SigninResponse, SigninState, WebStorageStateStore } from "oidc-client-ts"; -import { subtleCrypto, TextEncoder } from "../crypto/crypto"; +import { subtleCrypto } from "../crypto/crypto"; import { logger } from "../logger"; import { randomString } from "../randomstring"; import { OidcError } from "./error"; diff --git a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts b/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts index 86a9fd747d7..19bfe1c76c1 100644 --- a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts +++ b/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts @@ -26,7 +26,7 @@ import { LegacyRendezvousFailureReason as RendezvousFailureReason, } from ".."; import { encodeUnpaddedBase64, decodeBase64 } from "../../base64"; -import { crypto, subtleCrypto, TextEncoder } from "../../crypto/crypto"; +import { crypto, subtleCrypto } from "../../crypto/crypto"; import { generateDecimalSas } from "../../crypto/verification/SASDecimal"; import { UnstableValue } from "../../NamespacedValue"; From ae58d0c8eb1b34bf0d8a9d3019da049650034fe2 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Mon, 1 Jul 2024 12:32:09 +0100 Subject: [PATCH 310/595] Rust crypto: Clean up handling of verification events (#4288) We had both an `onIncomingKeyVerificationRequest` and an `onKeyVerificationRequest` which did different, but related, things. Improve the documentation and reduce the duplication. --- src/rust-crypto/rust-crypto.ts | 55 +++++++++++++--------------------- 1 file changed, 20 insertions(+), 35 deletions(-) diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index c5e9bd9044f..95d7c2495e5 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -21,7 +21,7 @@ import type { IEventDecryptionResult, IMegolmSessionData } from "../@types/crypt import { KnownMembership } from "../@types/membership"; import type { IDeviceLists, IToDeviceEvent } from "../sync-accumulator"; import type { IEncryptedEventInfo } from "../crypto/api"; -import { IContent, MatrixEvent, MatrixEventEvent } from "../models/event"; +import { MatrixEvent, MatrixEventEvent } from "../models/event"; import { Room } from "../models/room"; import { RoomMember } from "../models/room-member"; import { BackupDecryptor, CryptoBackend, DecryptionError, OnSyncCompletedData } from "../common-crypto/CryptoBackend"; @@ -1315,7 +1315,11 @@ export class RustCrypto extends TypedEventEmitter => { // Process only verification event if (isVerificationEvent(event)) { - await this.onKeyVerificationRequest(evt); + await this.onKeyVerificationEvent(evt); } }; @@ -1624,11 +1629,11 @@ export class RustCrypto extends TypedEventEmitter { + private async onKeyVerificationEvent(event: MatrixEvent): Promise { const roomId = event.getRoomId(); if (!roomId) { @@ -1655,27 +1660,7 @@ export class RustCrypto extends TypedEventEmitter Date: Wed, 3 Jul 2024 14:36:40 +0100 Subject: [PATCH 311/595] Sync labels with element-meta and add local labels yml for others. (#4295) --- .github/labels.yml | 43 +++++++++++++++++++++++++++++++ .github/workflows/sync-labels.yml | 21 +++++++++++++++ 2 files changed, 64 insertions(+) create mode 100644 .github/labels.yml create mode 100644 .github/workflows/sync-labels.yml diff --git a/.github/labels.yml b/.github/labels.yml new file mode 100644 index 00000000000..88fecb62ea6 --- /dev/null +++ b/.github/labels.yml @@ -0,0 +1,43 @@ +- name: "A-Element-R" + description: "Issues affecting the port of Element's crypto layer to Rust" + color: "bfd4f2" +- name: "A-Packaging" + description: "Packaging, signing, releasing" + color: "bfd4f2" +- name: "A-Technical-Debt" + color: "bfd4f2" +- name: "A-Testing" + description: "Testing, code coverage, etc." + color: "bfd4f2" +- name: "backport staging" + description: "Label to automatically backport PR to staging branch" + color: "B60205" +- name: "Dependencies" + description: "Pull requests that update a dependency file" + color: "0366d6" +- name: "Easy" + color: "5dc9f7" +- name: "Sponsored" + color: "ffc8f4" +- name: "T-Deprecation" + description: "A pull request that makes something deprecated" + color: "98e6ae" +- name: "T-Other" + description: "Questions, user support, anything else" + color: "98e6ae" +- name: "X-Blocked" + color: "ff7979" +- name: "X-Breaking-Change" + color: "ff7979" +- name: "X-Reverted" + description: "PR has been reverted" + color: "F68AA3" +- name: "X-Upcoming-Release-Blocker" + description: "This does not affect the current release cycle but will affect the next one" + color: "e99695" +- name: "Z-Community-PR" + description: "Issue is solved by a community member's PR" + color: "ededed" +- name: "Z-Flaky-Test" + description: "A test is raising false alarms" + color: "ededed" diff --git a/.github/workflows/sync-labels.yml b/.github/workflows/sync-labels.yml new file mode 100644 index 00000000000..bb22292a64f --- /dev/null +++ b/.github/workflows/sync-labels.yml @@ -0,0 +1,21 @@ +name: Sync labels +on: + workflow_dispatch: {} + schedule: + - cron: "0 1 * * *" # 1am every day + push: + branches: + - develop + paths: + - .github/labels.yml +jobs: + sync-labels: + uses: element-hq/element-meta/.github/workflows/sync-labels.yml@develop + with: + LABELS: | + element-hq/element-meta + .github/labels.yml + DELETE: true + WET: true + secrets: + ELEMENT_BOT_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }} From ccc2fb566352ff3d3e69e526253aab7fce2541e0 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Wed, 3 Jul 2024 14:45:38 +0100 Subject: [PATCH 312/595] Bump matrix-rust-sdk to 6.2.0 (#4296) Fixes https://github.com/element-hq/element-web/issues/27658 --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index b7140be5c2a..fa38585074b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1802,9 +1802,9 @@ "@jridgewell/sourcemap-codec" "^1.4.14" "@matrix-org/matrix-sdk-crypto-wasm@^6.0.0": - version "6.1.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-6.1.0.tgz#1cedf2bcbd6795e297fd45ea4a33f2c8c5204fdd" - integrity sha512-8Wn4TT9PEJswfE8+6mA60JHrxyiWYXfM4EM5800tLz+Rl9QRGk9JDF0o0cTb26v6bfXTa3/pCGWAkUVk0ROPEw== + version "6.2.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-6.2.0.tgz#ee732730c241490db21525d4d04836eee354a3aa" + integrity sha512-nYf7V/WuccxBDyUg/UkxgikN2DhGjvUetraw8W8DlE/aOEwmIVqUGNVlVcujqY1MM4xbGBM35Gz3EFmRyBnCeg== "@matrix-org/olm@3.2.15": version "3.2.15" From b71099d0f858e7523285976d5ba266dd36aece82 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Wed, 3 Jul 2024 14:45:38 +0100 Subject: [PATCH 313/595] Bump matrix-rust-sdk to 6.2.0 (#4296) Fixes https://github.com/element-hq/element-web/issues/27658 (cherry picked from commit ccc2fb566352ff3d3e69e526253aab7fce2541e0) --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 0fe2276b8a9..f1db15bb986 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1802,9 +1802,9 @@ "@jridgewell/sourcemap-codec" "^1.4.14" "@matrix-org/matrix-sdk-crypto-wasm@^6.0.0": - version "6.1.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-6.1.0.tgz#1cedf2bcbd6795e297fd45ea4a33f2c8c5204fdd" - integrity sha512-8Wn4TT9PEJswfE8+6mA60JHrxyiWYXfM4EM5800tLz+Rl9QRGk9JDF0o0cTb26v6bfXTa3/pCGWAkUVk0ROPEw== + version "6.2.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-6.2.0.tgz#ee732730c241490db21525d4d04836eee354a3aa" + integrity sha512-nYf7V/WuccxBDyUg/UkxgikN2DhGjvUetraw8W8DlE/aOEwmIVqUGNVlVcujqY1MM4xbGBM35Gz3EFmRyBnCeg== "@matrix-org/olm@3.2.15": version "3.2.15" From b36682cb99fb3ca31dabc017c56ee32d6f50130a Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Wed, 3 Jul 2024 20:31:23 +0100 Subject: [PATCH 314/595] Bump matrix-rust-sdk to 6.2.1 (#4298) Fixes https://github.com/element-hq/element-web/issues/27666 --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index fa38585074b..c2aee30563a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1802,9 +1802,9 @@ "@jridgewell/sourcemap-codec" "^1.4.14" "@matrix-org/matrix-sdk-crypto-wasm@^6.0.0": - version "6.2.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-6.2.0.tgz#ee732730c241490db21525d4d04836eee354a3aa" - integrity sha512-nYf7V/WuccxBDyUg/UkxgikN2DhGjvUetraw8W8DlE/aOEwmIVqUGNVlVcujqY1MM4xbGBM35Gz3EFmRyBnCeg== + version "6.2.1" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-6.2.1.tgz#94cd1263656e2b4f3b1dc6f728856efab8920aca" + integrity sha512-5mav0EKog0w9NWRRxFzZ+ZcT5Il/KlLh1bsQXgxfhzfJq1RgWLLu+OsvHSZau5NSbPxfOd4ZTWc2ZLAf+V/8mg== "@matrix-org/olm@3.2.15": version "3.2.15" From 1586de44bd7aa0ae95551d729856519911d7cd0f Mon Sep 17 00:00:00 2001 From: ElementRobot Date: Wed, 3 Jul 2024 20:56:40 +0100 Subject: [PATCH 315/595] [Backport staging] Fix "Unable to restore session" error (#4299) Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Fixes https://github.com/element-hq/element-web/issues/27666 --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index f1db15bb986..e7bd95ea833 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1802,9 +1802,9 @@ "@jridgewell/sourcemap-codec" "^1.4.14" "@matrix-org/matrix-sdk-crypto-wasm@^6.0.0": - version "6.2.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-6.2.0.tgz#ee732730c241490db21525d4d04836eee354a3aa" - integrity sha512-nYf7V/WuccxBDyUg/UkxgikN2DhGjvUetraw8W8DlE/aOEwmIVqUGNVlVcujqY1MM4xbGBM35Gz3EFmRyBnCeg== + version "6.2.1" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-6.2.1.tgz#94cd1263656e2b4f3b1dc6f728856efab8920aca" + integrity sha512-5mav0EKog0w9NWRRxFzZ+ZcT5Il/KlLh1bsQXgxfhzfJq1RgWLLu+OsvHSZau5NSbPxfOd4ZTWc2ZLAf+V/8mg== "@matrix-org/olm@3.2.15": version "3.2.15" From 6e641a28c030d7d652a97de776ce162ded94f677 Mon Sep 17 00:00:00 2001 From: Joel Date: Thu, 4 Jul 2024 14:14:14 +0200 Subject: [PATCH 316/595] Add ability to choose how many timeline events to sync when peeking (#4300) * Add ability to choose how many timeline events to sync when peeking. * Add a test that covers the new method parameter. * Formatting. --------- Co-authored-by: Joel --- spec/integ/matrix-client-syncing.spec.ts | 111 ++++++++++++----------- src/client.ts | 5 +- src/sync.ts | 5 +- 3 files changed, 63 insertions(+), 58 deletions(-) diff --git a/spec/integ/matrix-client-syncing.spec.ts b/spec/integ/matrix-client-syncing.spec.ts index 3e97c648b0d..e2d7fe3f263 100644 --- a/spec/integ/matrix-client-syncing.spec.ts +++ b/spec/integ/matrix-client-syncing.spec.ts @@ -2281,67 +2281,70 @@ describe("MatrixClient syncing", () => { httpBackend!.expectedRequests = []; }); - it("should return a room based on the room initialSync API", async () => { - httpBackend!.when("GET", `/rooms/${encodeURIComponent(roomOne)}/initialSync`).respond(200, { - room_id: roomOne, - membership: KnownMembership.Leave, - messages: { - start: "start", - end: "end", - chunk: [ + it.each([undefined, 100])( + "should return a room based on the room initialSync API with limit %s", + async (limit) => { + httpBackend!.when("GET", `/rooms/${encodeURIComponent(roomOne)}/initialSync`).respond(200, { + room_id: roomOne, + membership: KnownMembership.Leave, + messages: { + start: "start", + end: "end", + chunk: [ + { + content: { body: "Message 1" }, + type: "m.room.message", + event_id: "$eventId1", + sender: userA, + origin_server_ts: 12313525, + room_id: roomOne, + }, + { + content: { body: "Message 2" }, + type: "m.room.message", + event_id: "$eventId2", + sender: userB, + origin_server_ts: 12315625, + room_id: roomOne, + }, + ], + }, + state: [ { - content: { body: "Message 1" }, - type: "m.room.message", - event_id: "$eventId1", + content: { name: "Room Name" }, + type: "m.room.name", + event_id: "$eventId", sender: userA, - origin_server_ts: 12313525, + origin_server_ts: 12314525, + state_key: "", room_id: roomOne, }, + ], + presence: [ { - content: { body: "Message 2" }, - type: "m.room.message", - event_id: "$eventId2", - sender: userB, - origin_server_ts: 12315625, - room_id: roomOne, + content: {}, + type: "m.presence", + sender: userA, }, ], - }, - state: [ - { - content: { name: "Room Name" }, - type: "m.room.name", - event_id: "$eventId", - sender: userA, - origin_server_ts: 12314525, - state_key: "", - room_id: roomOne, - }, - ], - presence: [ - { - content: {}, - type: "m.presence", - sender: userA, - }, - ], - }); - httpBackend!.when("GET", "/events").respond(200, { chunk: [] }); - - const prom = client!.peekInRoom(roomOne); - await httpBackend!.flushAllExpected(); - const room = await prom; - - expect(room.roomId).toBe(roomOne); - expect(room.getMyMembership()).toBe(KnownMembership.Leave); - expect(room.name).toBe("Room Name"); - expect(room.currentState.getStateEvents("m.room.name", "")?.getId()).toBe("$eventId"); - expect(room.timeline[0].getContent().body).toBe("Message 1"); - expect(room.timeline[1].getContent().body).toBe("Message 2"); - client?.stopPeeking(); - httpBackend!.when("GET", "/events").respond(200, { chunk: [] }); - await httpBackend!.flushAllExpected(); - }); + }); + httpBackend!.when("GET", "/events").respond(200, { chunk: [] }); + + const prom = client!.peekInRoom(roomOne, limit); + await httpBackend!.flushAllExpected(); + const room = await prom; + + expect(room.roomId).toBe(roomOne); + expect(room.getMyMembership()).toBe(KnownMembership.Leave); + expect(room.name).toBe("Room Name"); + expect(room.currentState.getStateEvents("m.room.name", "")?.getId()).toBe("$eventId"); + expect(room.timeline[0].getContent().body).toBe("Message 1"); + expect(room.timeline[1].getContent().body).toBe("Message 2"); + client?.stopPeeking(); + httpBackend!.when("GET", "/events").respond(200, { chunk: [] }); + await httpBackend!.flushAllExpected(); + }, + ); }); describe("user account data", () => { diff --git a/src/client.ts b/src/client.ts index 46bc3861026..32ce1b26850 100644 --- a/src/client.ts +++ b/src/client.ts @@ -6603,13 +6603,14 @@ export class MatrixClient extends TypedEventEmitter { + public peekInRoom(roomId: string, limit: number = 20): Promise { this.peekSync?.stopPeeking(); this.peekSync = new SyncApi(this, this.clientOpts, this.buildSyncApiOptions()); - return this.peekSync.peek(roomId); + return this.peekSync.peek(roomId, limit); } /** diff --git a/src/sync.ts b/src/sync.ts index 82dae75af0a..26b2ac1d17b 100644 --- a/src/sync.ts +++ b/src/sync.ts @@ -401,17 +401,18 @@ export class SyncApi { * Peek into a room. This will result in the room in question being synced so it * is accessible via getRooms(). Live updates for the room will be provided. * @param roomId - The room ID to peek into. + * @param limit - The number of timeline events to initially retrieve. * @returns A promise which resolves once the room has been added to the * store. */ - public peek(roomId: string): Promise { + public peek(roomId: string, limit: number = 20): Promise { if (this._peekRoom?.roomId === roomId) { return Promise.resolve(this._peekRoom); } const client = this.client; this._peekRoom = this.createRoom(roomId); - return this.client.roomInitialSync(roomId, 20).then((response) => { + return this.client.roomInitialSync(roomId, limit).then((response) => { if (this._peekRoom?.roomId !== roomId) { throw new Error("Peeking aborted"); } From 03ed4f5dd7a138e001ac11ba2718bdbca7e55ebe Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Thu, 4 Jul 2024 13:27:31 +0100 Subject: [PATCH 317/595] Bump node.js requirement to 20. (#4293) According to https://github.com/matrix-org/matrix-js-sdk?tab=readme-ov-file#supported-platforms, we *only* supprt the latest LTS release (which is currenly https://github.com/nodejs/release#release-schedule), so this should be safe. --- .github/workflows/release-make.yml | 1 + .github/workflows/release-npm.yml | 1 + .github/workflows/release.yml | 1 + .github/workflows/static_analysis.yml | 5 +++++ .github/workflows/tests.yml | 2 +- package.json | 2 +- 6 files changed, 10 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index 7091bcd4dfe..51bfdece26f 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -116,6 +116,7 @@ jobs: - uses: actions/setup-node@v4 with: cache: "yarn" + node-version-file: package.json - name: Install dependencies run: "yarn install --frozen-lockfile" diff --git a/.github/workflows/release-npm.yml b/.github/workflows/release-npm.yml index eda19b442c1..905d9c2bc06 100644 --- a/.github/workflows/release-npm.yml +++ b/.github/workflows/release-npm.yml @@ -25,6 +25,7 @@ jobs: with: cache: "yarn" registry-url: "https://registry.npmjs.org" + node-version-file: package.json - name: 🔨 Install dependencies run: "yarn install --frozen-lockfile" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7cf7044b280..cdd54d29c78 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -43,6 +43,7 @@ jobs: uses: actions/setup-node@v4 with: cache: "yarn" + node-version-file: package.json - name: 🔨 Install dependencies run: "yarn install --frozen-lockfile" diff --git a/.github/workflows/static_analysis.yml b/.github/workflows/static_analysis.yml index 1ec0c3851f2..128626620a9 100644 --- a/.github/workflows/static_analysis.yml +++ b/.github/workflows/static_analysis.yml @@ -18,6 +18,7 @@ jobs: - uses: actions/setup-node@v4 with: cache: "yarn" + node-version-file: package.json - name: Install Deps run: "yarn install" @@ -44,6 +45,7 @@ jobs: - uses: actions/setup-node@v4 with: cache: "yarn" + node-version-file: package.json - name: Install Deps run: "yarn install" @@ -60,6 +62,7 @@ jobs: - uses: actions/setup-node@v4 with: cache: "yarn" + node-version-file: package.json - name: Install Deps run: "yarn install --frozen-lockfile" @@ -76,6 +79,7 @@ jobs: - uses: actions/setup-node@v4 with: cache: "yarn" + node-version-file: package.json - name: Install Deps run: "yarn install" @@ -100,6 +104,7 @@ jobs: - uses: actions/setup-node@v4 with: cache: "yarn" + node-version-file: package.json - name: Install Deps run: "yarn install --frozen-lockfile" diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 83e770fe71d..a23c2772f2e 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -18,7 +18,7 @@ jobs: strategy: matrix: specs: [integ, unit] - node: [18, "lts/*", 21] + node: ["lts/*", 21, 22] steps: - name: Checkout code uses: actions/checkout@v4 diff --git a/package.json b/package.json index 9ffd8b741b3..d8490d77725 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "version": "33.1.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { - "node": ">=18.0.0" + "node": ">=20.0.0" }, "scripts": { "prepack": "yarn build", From 24c589923bbadb9cd2d93e67d3f1b7a8c80f192c Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Thu, 4 Jul 2024 12:49:22 +0000 Subject: [PATCH 318/595] v34.0.0-rc.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c02f7ada42d..e2b37994ad6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.0.0-rc.0", + "version": "34.0.0-rc.1", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From 1733ec7b7faf43c25ea0c36e5139eaa1b1e1136e Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Thu, 4 Jul 2024 16:49:56 +0100 Subject: [PATCH 319/595] Remove redundant checks on `global.Olm` (#4301) These routines don't use Olm, and we shouldn't be checking for it. --- src/crypto/key_passphrase.ts | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/crypto/key_passphrase.ts b/src/crypto/key_passphrase.ts index 85c325eb9c8..bdd6b5263da 100644 --- a/src/crypto/key_passphrase.ts +++ b/src/crypto/key_passphrase.ts @@ -36,10 +36,6 @@ interface IKey { } export function keyFromAuthData(authData: IAuthData, password: string): Promise { - if (!global.Olm) { - throw new Error("Olm is not available"); - } - if (!authData.private_key_salt || !authData.private_key_iterations) { throw new Error("Salt and/or iterations not found: " + "this backup cannot be restored with a passphrase"); } @@ -53,10 +49,6 @@ export function keyFromAuthData(authData: IAuthData, password: string): Promise< } export async function keyFromPassphrase(password: string): Promise { - if (!global.Olm) { - throw new Error("Olm is not available"); - } - const salt = randomString(32); const key = await deriveKey(password, salt, DEFAULT_ITERATIONS, DEFAULT_BITSIZE); From 957329b21821c0f632de6c04fff53144f7c0e5dd Mon Sep 17 00:00:00 2001 From: Timo <16718859+toger5@users.noreply.github.com> Date: Fri, 5 Jul 2024 11:16:59 +0200 Subject: [PATCH 320/595] Fix room state being updated with old (now overwritten) state and emitting for those updates. (#4242) * Fix room state being updated with old (now overwritten) state and emitting for those updates. * remove timestamp condition Add configuration for toStartOfTimeline * fix timeline tests * only skip event adding if event_id and replaces_state is set. * fix room tests * test skipping insertion * rename back to lastStateEvent * store if a state is at the start of a timeline in the RoomState class * make `isStartTimelineState` a `public readonly` and fix condition. --- spec/unit/room-state.spec.ts | 55 ++++++++++++++++++++++++++++++++++++ src/models/event-timeline.ts | 4 +-- src/models/room-state.ts | 32 +++++++++++++++++++-- 3 files changed, 87 insertions(+), 4 deletions(-) diff --git a/spec/unit/room-state.spec.ts b/spec/unit/room-state.spec.ts index 9e0c29f35e8..2c79440df71 100644 --- a/spec/unit/room-state.spec.ts +++ b/spec/unit/room-state.spec.ts @@ -1122,4 +1122,59 @@ describe("RoomState", function () { ).toBeFalsy(); }); }); + describe("skipWrongOrderRoomStateInserts", () => { + const idNow = "now"; + const idBefore = "before"; + const endState = new RoomState(roomId); + const startState = new RoomState(roomId, undefined, true); + + let onRoomStateEvent: (event: MatrixEvent, state: RoomState, lastStateEvent: MatrixEvent | null) => void; + const evNow = new MatrixEvent({ + type: "m.call.member", + room_id: roomId, + state_key: "@user:example.org", + content: {}, + }); + evNow.event.unsigned = { replaces_state: idBefore }; + evNow.event.event_id = idNow; + + const evBefore = new MatrixEvent({ + type: "m.call.member", + room_id: roomId, + state_key: "@user:example.org", + content: {}, + }); + + const updatedStateWithBefore = jest.fn(); + const updatedStateWithNow = jest.fn(); + + beforeEach(() => { + evBefore.event.event_id = idBefore; + onRoomStateEvent = (event, _state, _lastState) => { + if (event.event.event_id === idNow) { + updatedStateWithNow(); + } else if (event.event.event_id === idBefore) { + updatedStateWithBefore(); + } + }; + endState.on(RoomStateEvent.Events, onRoomStateEvent); + startState.on(RoomStateEvent.Events, onRoomStateEvent); + }); + afterEach(() => { + endState.off(RoomStateEvent.Events, onRoomStateEvent); + startState.off(RoomStateEvent.Events, onRoomStateEvent); + updatedStateWithNow.mockReset(); + updatedStateWithBefore.mockReset(); + }); + it("should skip inserting state to the end of the timeline if the current endState events replaces_state id is the same as the inserted events id", () => { + endState.setStateEvents([evNow, evBefore]); + expect(updatedStateWithBefore).not.toHaveBeenCalled(); + expect(updatedStateWithNow).toHaveBeenCalled(); + }); + it("should skip inserting state at the beginning of the timeline if the inserted events replaces_state is the event id of the current startState", () => { + startState.setStateEvents([evBefore, evNow]); + expect(updatedStateWithBefore).toHaveBeenCalled(); + expect(updatedStateWithNow).not.toHaveBeenCalled(); + }); + }); }); diff --git a/src/models/event-timeline.ts b/src/models/event-timeline.ts index 912dcaf2130..e8b84fd8068 100644 --- a/src/models/event-timeline.ts +++ b/src/models/event-timeline.ts @@ -127,7 +127,7 @@ export class EventTimeline { public constructor(private readonly eventTimelineSet: EventTimelineSet) { this.roomId = eventTimelineSet.room?.roomId ?? null; if (this.roomId) { - this.startState = new RoomState(this.roomId); + this.startState = new RoomState(this.roomId, undefined, true); this.endState = new RoomState(this.roomId); } @@ -267,7 +267,7 @@ export class EventTimeline { /** * Get a pagination token * - * @param direction - EventTimeline.BACKWARDS to get the pagination + * @param direction - EventTimeline.BACKWARDS to get the pagination * token for going backwards in time; EventTimeline.FORWARDS to get the * pagination token for going forwards in time. * diff --git a/src/models/room-state.ts b/src/models/room-state.ts index 92cc4fd7f9b..52a58660437 100644 --- a/src/models/room-state.ts +++ b/src/models/room-state.ts @@ -194,10 +194,22 @@ export class RoomState extends TypedEventEmitter * As the timeline might get reset while they are loading, this state needs to be inherited * and shared when the room state is cloned for the new timeline. * This should only be passed from clone. + * @param isStartTimelineState - Optional. This state is marked as a start state. + * This is used to skip state insertions that are + * in the wrong order. The order is determined by the `replaces_state` id. + * + * Example: + * A current state events `replaces_state` value is `1`. + * Trying to insert a state event with `event_id` `1` in its place would fail if isStartTimelineState = false. + * + * A current state events `event_id` is `2`. + * Trying to insert a state event where its `replaces_state` value is `2` would fail if isStartTimelineState = true. */ + public constructor( public readonly roomId: string, private oobMemberFlags = { status: OobStatus.NotStarted }, + public readonly isStartTimelineState = false, ) { super(); this.updateModifiedTime(); @@ -408,7 +420,7 @@ export class RoomState extends TypedEventEmitter * Fires {@link RoomStateEvent.Events} * Fires {@link RoomStateEvent.Marker} */ - public setStateEvents(stateEvents: MatrixEvent[], markerFoundOptions?: IMarkerFoundOptions): void { + public setStateEvents(stateEvents: MatrixEvent[], options?: IMarkerFoundOptions): void { this.updateModifiedTime(); // update the core event dict @@ -420,6 +432,22 @@ export class RoomState extends TypedEventEmitter } const lastStateEvent = this.getStateEventMatching(event); + + // Safety measure to not update the room (and emit the update) with older state. + // The sync loop really should not send old events but it does very regularly. + // Logging on return in those two conditions results in a large amount of logging. (on startup and when running element) + const lastReplaceId = lastStateEvent?.event.unsigned?.replaces_state; + const lastId = lastStateEvent?.event.event_id; + const newReplaceId = event.event.unsigned?.replaces_state; + const newId = event.event.event_id; + if (this.isStartTimelineState) { + // Add an event to the start of the timeline. Its replace id should not be the same as the one of the current/last start state event. + if (newReplaceId && lastId && newReplaceId === lastId) return; + } else { + // Add an event to the end of the timeline. It should not be the same as the one replaced by the current/last end state event. + if (lastReplaceId && newId && lastReplaceId === newId) return; + } + this.setStateEvent(event); if (event.getType() === EventType.RoomMember) { this.updateDisplayNameCache(event.getStateKey()!, event.getContent().displayname ?? ""); @@ -476,7 +504,7 @@ export class RoomState extends TypedEventEmitter // assume all our sentinels are now out-of-date this.sentinels = {}; } else if (UNSTABLE_MSC2716_MARKER.matches(event.getType())) { - this.emit(RoomStateEvent.Marker, event, markerFoundOptions); + this.emit(RoomStateEvent.Marker, event, options); } }); From 712ba617de3a02cc1912f9731d0814c1dbcff08e Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 5 Jul 2024 10:42:06 +0100 Subject: [PATCH 321/595] Remove `crypto` shims (#4292) * Inline subtlecrypto shim The presence of this thing just makes code more confusing. * Remove pre-node-20 webcrypto hack Until node 20.0, the webcrypto API lived at `crypto.webCrypto`. It's now available at the same place as in web -- `globalThis.crypto`. See: https://nodejs.org/docs/latest-v20.x/api/webcrypto.html#web-crypto-api * oidc auth test: Clean up mocking THe previous reset code wasn't really resetting the right thing. Let's just re-init `window.crypto` on each test. * Remove `crypto` shim This isn't very useful any more. --- spec/unit/oidc/authorize.spec.ts | 18 ++++--------- src/crypto/aes.ts | 22 ++++++++-------- src/crypto/backup.ts | 3 +-- src/crypto/crypto.ts | 24 ++---------------- src/crypto/key_passphrase.ts | 15 ++++++----- src/crypto/verification/QRCode.ts | 3 +-- src/oidc/authorize.ts | 13 +++++----- src/randomstring.ts | 3 +-- .../MSC3903ECDHv2RendezvousChannel.ts | 25 +++++++++---------- src/rust-crypto/DehydratedDeviceManager.ts | 3 +-- src/rust-crypto/rust-crypto.ts | 3 +-- 11 files changed, 51 insertions(+), 81 deletions(-) diff --git a/spec/unit/oidc/authorize.spec.ts b/spec/unit/oidc/authorize.spec.ts index e9cf7589a37..3fab8e5eef4 100644 --- a/spec/unit/oidc/authorize.spec.ts +++ b/spec/unit/oidc/authorize.spec.ts @@ -26,7 +26,6 @@ import { getRandomValues } from "node:crypto"; import { TextEncoder } from "node:util"; import { Method } from "../../../src"; -import * as crypto from "../../../src/crypto/crypto"; import { logger } from "../../../src/logger"; import { completeAuthorizationCodeGrant, @@ -39,11 +38,6 @@ import { makeDelegatedAuthConfig, mockOpenIdConfiguration } from "../../test-uti jest.mock("jwt-decode"); -const webCrypto = new Crypto(); - -// save for resetting mocks -const realSubtleCrypto = crypto.subtleCrypto; - describe("oidc authorization", () => { const delegatedAuthConfig = makeDelegatedAuthConfig(); const authorizationEndpoint = delegatedAuthConfig.authorizationEndpoint; @@ -62,7 +56,11 @@ describe("oidc authorization", () => { delegatedAuthConfig.metadata.issuer + ".well-known/openid-configuration", mockOpenIdConfiguration(), ); + global.TextEncoder = TextEncoder; + }); + beforeEach(() => { + const webCrypto = new Crypto(); Object.defineProperty(window, "crypto", { value: { getRandomValues, @@ -70,12 +68,6 @@ describe("oidc authorization", () => { subtle: webCrypto.subtle, }, }); - global.TextEncoder = TextEncoder; - }); - - afterEach(() => { - // @ts-ignore reset any ugly mocking we did - crypto.subtleCrypto = realSubtleCrypto; }); it("should generate authorization params", () => { @@ -99,7 +91,7 @@ describe("oidc authorization", () => { it("should generate url with correct parameters", async () => { // test the no crypto case here // @ts-ignore mocking - crypto.subtleCrypto = undefined; + globalThis.crypto.subtle = undefined; const authorizationParams = generateAuthorizationParams({ redirectUri: baseUrl }); const authUrl = new URL( diff --git a/src/crypto/aes.ts b/src/crypto/aes.ts index 12acb694009..e6b6e2a817e 100644 --- a/src/crypto/aes.ts +++ b/src/crypto/aes.ts @@ -15,7 +15,6 @@ limitations under the License. */ import { decodeBase64, encodeBase64 } from "../base64"; -import { subtleCrypto, crypto } from "./crypto"; // salt for HKDF, with 8 bytes of zeros const zeroSalt = new Uint8Array(8); @@ -49,7 +48,7 @@ export async function encryptAES( iv = decodeBase64(ivStr); } else { iv = new Uint8Array(16); - crypto.getRandomValues(iv); + globalThis.crypto.getRandomValues(iv); // clear bit 63 of the IV to stop us hitting the 64-bit counter boundary // (which would mean we wouldn't be able to decrypt on Android). The loss @@ -60,7 +59,7 @@ export async function encryptAES( const [aesKey, hmacKey] = await deriveKeys(key, name); const encodedData = new TextEncoder().encode(data); - const ciphertext = await subtleCrypto.encrypt( + const ciphertext = await globalThis.crypto.subtle.encrypt( { name: "AES-CTR", counter: iv, @@ -70,7 +69,7 @@ export async function encryptAES( encodedData, ); - const hmac = await subtleCrypto.sign({ name: "HMAC" }, hmacKey, ciphertext); + const hmac = await globalThis.crypto.subtle.sign({ name: "HMAC" }, hmacKey, ciphertext); return { iv: encodeBase64(iv), @@ -91,11 +90,11 @@ export async function decryptAES(data: IEncryptedPayload, key: Uint8Array, name: const ciphertext = decodeBase64(data.ciphertext); - if (!(await subtleCrypto.verify({ name: "HMAC" }, hmacKey, decodeBase64(data.mac), ciphertext))) { + if (!(await globalThis.crypto.subtle.verify({ name: "HMAC" }, hmacKey, decodeBase64(data.mac), ciphertext))) { throw new Error(`Error decrypting secret ${name}: bad MAC`); } - const plaintext = await subtleCrypto.decrypt( + const plaintext = await globalThis.crypto.subtle.decrypt( { name: "AES-CTR", counter: decodeBase64(data.iv), @@ -109,8 +108,8 @@ export async function decryptAES(data: IEncryptedPayload, key: Uint8Array, name: } async function deriveKeys(key: Uint8Array, name: string): Promise<[CryptoKey, CryptoKey]> { - const hkdfkey = await subtleCrypto.importKey("raw", key, { name: "HKDF" }, false, ["deriveBits"]); - const keybits = await subtleCrypto.deriveBits( + const hkdfkey = await globalThis.crypto.subtle.importKey("raw", key, { name: "HKDF" }, false, ["deriveBits"]); + const keybits = await globalThis.crypto.subtle.deriveBits( { name: "HKDF", salt: zeroSalt, @@ -126,9 +125,12 @@ async function deriveKeys(key: Uint8Array, name: string): Promise<[CryptoKey, Cr const aesKey = keybits.slice(0, 32); const hmacKey = keybits.slice(32); - const aesProm = subtleCrypto.importKey("raw", aesKey, { name: "AES-CTR" }, false, ["encrypt", "decrypt"]); + const aesProm = globalThis.crypto.subtle.importKey("raw", aesKey, { name: "AES-CTR" }, false, [ + "encrypt", + "decrypt", + ]); - const hmacProm = subtleCrypto.importKey( + const hmacProm = globalThis.crypto.subtle.importKey( "raw", hmacKey, { diff --git a/src/crypto/backup.ts b/src/crypto/backup.ts index d51fa641c26..cbbecbca38e 100644 --- a/src/crypto/backup.ts +++ b/src/crypto/backup.ts @@ -38,7 +38,6 @@ import { } from "./keybackup"; import { UnstableValue } from "../NamespacedValue"; import { CryptoEvent } from "./index"; -import { crypto } from "./crypto"; import { ClientPrefix, HTTPError, MatrixError, Method } from "../http-api"; import { BackupTrustInfo } from "../crypto-api/keybackup"; import { BackupDecryptor } from "../common-crypto/CryptoBackend"; @@ -764,7 +763,7 @@ export class Curve25519 implements BackupAlgorithm { function randomBytes(size: number): Uint8Array { const buf = new Uint8Array(size); - crypto.getRandomValues(buf); + globalThis.crypto.getRandomValues(buf); return buf; } diff --git a/src/crypto/crypto.ts b/src/crypto/crypto.ts index e9df7a84ff1..4aea59de52b 100644 --- a/src/crypto/crypto.ts +++ b/src/crypto/crypto.ts @@ -14,25 +14,5 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger } from "../logger"; - -export let crypto = globalThis.crypto; -export let subtleCrypto = crypto?.subtle ?? crypto?.webkitSubtle; // TODO: Stop using webkitSubtle fallback - -/* eslint-disable @typescript-eslint/no-var-requires */ -if (!crypto) { - try { - crypto = require("crypto").webcrypto; - } catch (e) { - logger.error("Failed to load webcrypto", e); - } -} -if (!subtleCrypto) { - subtleCrypto = crypto?.subtle; -} -/* eslint-enable @typescript-eslint/no-var-requires */ - -export function setCrypto(_crypto: Crypto): void { - crypto = _crypto; - subtleCrypto = _crypto.subtle ?? _crypto.webkitSubtle; -} +/** @deprecated this is a no-op and should no longer be called. */ +export function setCrypto(_crypto: Crypto): void {} diff --git a/src/crypto/key_passphrase.ts b/src/crypto/key_passphrase.ts index bdd6b5263da..c56c3ce2e5c 100644 --- a/src/crypto/key_passphrase.ts +++ b/src/crypto/key_passphrase.ts @@ -15,7 +15,6 @@ limitations under the License. */ import { randomString } from "../randomstring"; -import { subtleCrypto } from "./crypto"; const DEFAULT_ITERATIONS = 500000; @@ -62,15 +61,19 @@ export async function deriveKey( iterations: number, numBits = DEFAULT_BITSIZE, ): Promise { - if (!subtleCrypto || !TextEncoder) { + if (!globalThis.crypto.subtle || !TextEncoder) { throw new Error("Password-based backup is not available on this platform"); } - const key = await subtleCrypto.importKey("raw", new TextEncoder().encode(password), { name: "PBKDF2" }, false, [ - "deriveBits", - ]); + const key = await globalThis.crypto.subtle.importKey( + "raw", + new TextEncoder().encode(password), + { name: "PBKDF2" }, + false, + ["deriveBits"], + ); - const keybits = await subtleCrypto.deriveBits( + const keybits = await globalThis.crypto.subtle.deriveBits( { name: "PBKDF2", salt: new TextEncoder().encode(salt), diff --git a/src/crypto/verification/QRCode.ts b/src/crypto/verification/QRCode.ts index 7ccd4986d53..cff87dd21ff 100644 --- a/src/crypto/verification/QRCode.ts +++ b/src/crypto/verification/QRCode.ts @@ -18,7 +18,6 @@ limitations under the License. * QR code key verification. */ -import { crypto } from "../crypto"; import { VerificationBase as Base } from "./Base"; import { newKeyMismatchError, newUserCancelledError } from "./Error"; import { decodeBase64, encodeUnpaddedBase64 } from "../../base64"; @@ -202,7 +201,7 @@ export class QRCodeData { private static generateSharedSecret(): string { const secretBytes = new Uint8Array(11); - crypto.getRandomValues(secretBytes); + globalThis.crypto.getRandomValues(secretBytes); return encodeUnpaddedBase64(secretBytes); } diff --git a/src/oidc/authorize.ts b/src/oidc/authorize.ts index 80a95f881bd..5f437c58b6a 100644 --- a/src/oidc/authorize.ts +++ b/src/oidc/authorize.ts @@ -16,17 +16,16 @@ limitations under the License. import { IdTokenClaims, Log, OidcClient, SigninResponse, SigninState, WebStorageStateStore } from "oidc-client-ts"; -import { subtleCrypto } from "../crypto/crypto"; import { logger } from "../logger"; import { randomString } from "../randomstring"; import { OidcError } from "./error"; import { - validateIdToken, - ValidatedIssuerMetadata, - validateStoredUserState, - UserState, BearerTokenResponse, + UserState, validateBearerTokenResponse, + ValidatedIssuerMetadata, + validateIdToken, + validateStoredUserState, } from "./validate"; // reexport for backwards compatibility @@ -57,14 +56,14 @@ export const generateScope = (deviceId?: string): string => { // https://www.rfc-editor.org/rfc/rfc7636 const generateCodeChallenge = async (codeVerifier: string): Promise => { - if (!subtleCrypto) { + if (!globalThis.crypto.subtle) { // @TODO(kerrya) should this be allowed? configurable? logger.warn("A secure context is required to generate code challenge. Using plain text code challenge"); return codeVerifier; } const utf8 = new TextEncoder().encode(codeVerifier); - const digest = await subtleCrypto.digest("SHA-256", utf8); + const digest = await globalThis.crypto.subtle.digest("SHA-256", utf8); return btoa(String.fromCharCode(...new Uint8Array(digest))) .replace(/=/g, "") diff --git a/src/randomstring.ts b/src/randomstring.ts index 36a6e748284..d095a2b9ef1 100644 --- a/src/randomstring.ts +++ b/src/randomstring.ts @@ -16,7 +16,6 @@ limitations under the License. */ import { encodeUnpaddedBase64Url } from "./base64"; -import { crypto } from "./crypto/crypto"; const LOWERCASE = "abcdefghijklmnopqrstuvwxyz"; const UPPERCASE = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; @@ -24,7 +23,7 @@ const DIGITS = "0123456789"; export function secureRandomBase64Url(len: number): string { const key = new Uint8Array(len); - crypto.getRandomValues(key); + globalThis.crypto.getRandomValues(key); return encodeUnpaddedBase64Url(key); } diff --git a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts b/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts index 19bfe1c76c1..42b4f7c9969 100644 --- a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts +++ b/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts @@ -17,16 +17,15 @@ limitations under the License. import { SAS } from "@matrix-org/olm"; import { - RendezvousError, + LegacyRendezvousFailureReason as RendezvousFailureReason, + RendezvousChannel, RendezvousCode, + RendezvousError, RendezvousIntent, - RendezvousChannel, - RendezvousTransportDetails, RendezvousTransport, - LegacyRendezvousFailureReason as RendezvousFailureReason, + RendezvousTransportDetails, } from ".."; -import { encodeUnpaddedBase64, decodeBase64 } from "../../base64"; -import { crypto, subtleCrypto } from "../../crypto/crypto"; +import { decodeBase64, encodeUnpaddedBase64 } from "../../base64"; import { generateDecimalSas } from "../../crypto/verification/SASDecimal"; import { UnstableValue } from "../../NamespacedValue"; @@ -56,11 +55,11 @@ export interface EncryptedPayload { } async function importKey(key: Uint8Array): Promise { - if (!subtleCrypto) { + if (!globalThis.crypto.subtle) { throw new Error("Web Crypto is not available"); } - const imported = subtleCrypto.importKey("raw", key, { name: "AES-GCM" }, false, ["encrypt", "decrypt"]); + const imported = globalThis.crypto.subtle.importKey("raw", key, { name: "AES-GCM" }, false, ["encrypt", "decrypt"]); return imported; } @@ -164,16 +163,16 @@ export class MSC3903ECDHv2RendezvousChannel implements RendezvousChannel { } private async encrypt(data: T): Promise { - if (!subtleCrypto) { + if (!globalThis.crypto.subtle) { throw new Error("Web Crypto is not available"); } const iv = new Uint8Array(32); - crypto.getRandomValues(iv); + globalThis.crypto.getRandomValues(iv); const encodedData = new TextEncoder().encode(JSON.stringify(data)); - const ciphertext = await subtleCrypto.encrypt( + const ciphertext = await globalThis.crypto.subtle.encrypt( { name: "AES-GCM", iv, @@ -208,11 +207,11 @@ export class MSC3903ECDHv2RendezvousChannel implements RendezvousChannel { const ciphertextBytes = decodeBase64(ciphertext); - if (!subtleCrypto) { + if (!globalThis.crypto.subtle) { throw new Error("Web Crypto is not available"); } - const plaintext = await subtleCrypto.decrypt( + const plaintext = await globalThis.crypto.subtle.decrypt( { name: "AES-GCM", iv: decodeBase64(iv), diff --git a/src/rust-crypto/DehydratedDeviceManager.ts b/src/rust-crypto/DehydratedDeviceManager.ts index 56f6052b724..cedac96a0e0 100644 --- a/src/rust-crypto/DehydratedDeviceManager.ts +++ b/src/rust-crypto/DehydratedDeviceManager.ts @@ -21,7 +21,6 @@ import { encodeUri } from "../utils"; import { IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api"; import { IToDeviceEvent } from "../sync-accumulator"; import { ServerSideSecretStorage } from "../secret-storage"; -import { crypto } from "../crypto/crypto"; import { decodeBase64, encodeUnpaddedBase64 } from "../base64"; import { Logger } from "../logger"; @@ -155,7 +154,7 @@ export class DehydratedDeviceManager { */ public async resetKey(): Promise { const key = new Uint8Array(32); - crypto.getRandomValues(key); + globalThis.crypto.getRandomValues(key); await this.secretStorage.store(SECRET_STORAGE_NAME, encodeUnpaddedBase64(key)); this.key = key; } diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 95d7c2495e5..bb7f4f1245c 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -62,7 +62,6 @@ import { CrossSigningIdentity } from "./CrossSigningIdentity"; import { secretStorageCanAccessSecrets, secretStorageContainsCrossSigningKeys } from "./secret-storage"; import { keyFromPassphrase } from "../crypto/key_passphrase"; import { encodeRecoveryKey } from "../crypto/recoverykey"; -import { crypto } from "../crypto/crypto"; import { isVerificationEvent, RustVerificationRequest, verificationMethodIdentifierToMethod } from "./verification"; import { EventType, MsgType } from "../@types/event"; import { CryptoEvent } from "../crypto"; @@ -891,7 +890,7 @@ export class RustCrypto extends TypedEventEmitter Date: Mon, 8 Jul 2024 12:18:02 +0000 Subject: [PATCH 322/595] v34.0.0 --- CHANGELOG.md | 26 ++++++++++++++++++++++++++ package.json | 2 +- 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 244423d6d51..85d77228d61 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,29 @@ +Changes in [34.0.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.0.0) (2024-07-08) +================================================================================================== +## 🚨 BREAKING CHANGES + +* Fetch capabilities in the background ([#4246](https://github.com/matrix-org/matrix-js-sdk/pull/4246)). Contributed by @dbkr. + +## ✨ Features + +* Prefix the user+device state key if needed ([#4262](https://github.com/matrix-org/matrix-js-sdk/pull/4262)). Contributed by @AndrewFerr. +* Use legacy call membership if anyone else is ([#4260](https://github.com/matrix-org/matrix-js-sdk/pull/4260)). Contributed by @AndrewFerr. +* Fetch capabilities in the background ([#4246](https://github.com/matrix-org/matrix-js-sdk/pull/4246)). Contributed by @dbkr. +* Use server name instead of homeserver url to allow well-known lookups during QR OIDC reciprocation ([#4233](https://github.com/matrix-org/matrix-js-sdk/pull/4233)). Contributed by @t3chguy. +* Add via parameter for MSC4156 ([#4247](https://github.com/matrix-org/matrix-js-sdk/pull/4247)). Contributed by @Johennes. +* Make the js-sdk compatible with MSC preferred foci and active focus. ([#4195](https://github.com/matrix-org/matrix-js-sdk/pull/4195)). Contributed by @toger5. +* Replace usages of setImmediate with setTimeout for wider compatibility ([#4240](https://github.com/matrix-org/matrix-js-sdk/pull/4240)). Contributed by @t3chguy. + +## 🐛 Bug Fixes + +* [Backport staging] Fix "Unable to restore session" error ([#4299](https://github.com/matrix-org/matrix-js-sdk/pull/4299)). Contributed by @RiotRobot. +* [Backport staging] Fix error when sending encrypted messages in large rooms ([#4297](https://github.com/matrix-org/matrix-js-sdk/pull/4297)). Contributed by @RiotRobot. +* Element-R: Fix resource leaks in verification logic ([#4263](https://github.com/matrix-org/matrix-js-sdk/pull/4263)). Contributed by @richvdh. +* Upgrade Rust Crypto SDK to 6.1.0 ([#4261](https://github.com/matrix-org/matrix-js-sdk/pull/4261)). Contributed by @richvdh. +* Correctly transform base64 with multiple instances of + or / ([#4252](https://github.com/matrix-org/matrix-js-sdk/pull/4252)). Contributed by @robintown. +* Work around spec bug for m.room.avatar state event content type ([#4245](https://github.com/matrix-org/matrix-js-sdk/pull/4245)). Contributed by @t3chguy. + + Changes in [33.1.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v33.1.0) (2024-06-18) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index e2b37994ad6..25e5d397fd6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.0.0-rc.1", + "version": "34.0.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=18.0.0" From a5ef569717765ac4aee62a61e1e0d0def713c56d Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Mon, 8 Jul 2024 12:18:34 +0000 Subject: [PATCH 323/595] Resetting package fields for development --- package.json | 265 +++++++++++++++++++++++++-------------------------- 1 file changed, 132 insertions(+), 133 deletions(-) diff --git a/package.json b/package.json index e9795814c51..bb687f13235 100644 --- a/package.json +++ b/package.json @@ -1,135 +1,134 @@ { - "name": "matrix-js-sdk", - "version": "34.0.0", - "description": "Matrix Client-Server SDK for Javascript", - "engines": { - "node": ">=20.0.0" - }, - "scripts": { - "prepack": "yarn build", - "start": "echo THIS IS FOR LEGACY PURPOSES ONLY. && babel src -w -s -d lib --verbose --extensions \".ts,.js\"", - "clean": "rimraf lib", - "build": "yarn build:dev", - "build:dev": "yarn clean && git rev-parse HEAD > git-revision.txt && yarn build:compile && yarn build:types", - "build:types": "tsc -p tsconfig-build.json --emitDeclarationOnly", - "build:compile": "babel -d lib --verbose --extensions \".ts,.js\" src", - "gendoc": "typedoc", - "lint": "yarn lint:types && yarn lint:js && yarn lint:workflows", - "lint:js": "eslint --max-warnings 0 src spec && prettier --check .", - "lint:js-fix": "prettier --log-level=warn --write . && eslint --fix src spec", - "lint:types": "tsc --noEmit", - "lint:workflows": "find .github/workflows -type f \\( -iname '*.yaml' -o -iname '*.yml' \\) | xargs -I {} sh -c 'echo \"Linting {}\"; action-validator \"{}\"'", - "lint:knip": "knip", - "test": "jest", - "test:watch": "jest --watch", - "coverage": "yarn test --coverage" - }, - "repository": { - "type": "git", - "url": "https://github.com/matrix-org/matrix-js-sdk" - }, - "keywords": [ - "matrix-org" - ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", - "matrix_src_main": "./src/index.ts", - "matrix_src_browser": "./src/browser-index.ts", - "matrix_lib_main": "./lib/index.js", - "matrix_lib_browser": "./lib/browser-index.js", - "matrix_lib_typings": "./lib/index.d.ts", - "author": "matrix.org", - "license": "Apache-2.0", - "files": [ - "lib", - "src", - "git-revision.txt", - "CHANGELOG.md", - "CONTRIBUTING.rst", - "LICENSE", - "README.md", - "package.json", - "release.sh" - ], - "dependencies": { - "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^6.0.0", - "another-json": "^0.2.0", - "bs58": "^6.0.0", - "content-type": "^1.0.4", - "jwt-decode": "^4.0.0", - "loglevel": "^1.7.1", - "matrix-events-sdk": "0.0.1", - "matrix-widget-api": "^1.6.0", - "oidc-client-ts": "^3.0.1", - "p-retry": "4", - "sdp-transform": "^2.14.1", - "unhomoglyph": "^1.0.6", - "uuid": "10" - }, - "devDependencies": { - "@action-validator/cli": "^0.6.0", - "@action-validator/core": "^0.6.0", - "@babel/cli": "^7.12.10", - "@babel/core": "^7.12.10", - "@babel/eslint-parser": "^7.12.10", - "@babel/eslint-plugin": "^7.12.10", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-class-properties": "^7.12.1", - "@babel/plugin-transform-numeric-separator": "^7.12.7", - "@babel/plugin-transform-object-rest-spread": "^7.12.1", - "@babel/plugin-transform-runtime": "^7.12.10", - "@babel/preset-env": "^7.12.11", - "@babel/preset-typescript": "^7.12.7", - "@casualbot/jest-sonar-reporter": "2.2.7", - "@matrix-org/olm": "3.2.15", - "@peculiar/webcrypto": "^1.4.5", - "@types/bs58": "^4.0.1", - "@types/content-type": "^1.1.5", - "@types/debug": "^4.1.7", - "@types/jest": "^29.0.0", - "@types/node": "18", - "@types/sdp-transform": "^2.4.5", - "@types/uuid": "10", - "@typescript-eslint/eslint-plugin": "^7.0.0", - "@typescript-eslint/parser": "^7.0.0", - "babel-jest": "^29.0.0", - "debug": "^4.3.4", - "eslint": "8.57.0", - "eslint-config-google": "^0.14.0", - "eslint-config-prettier": "^9.0.0", - "eslint-import-resolver-typescript": "^3.5.1", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jest": "^28.0.0", - "eslint-plugin-jsdoc": "^48.0.0", - "eslint-plugin-matrix-org": "^1.0.0", - "eslint-plugin-tsdoc": "^0.3.0", - "eslint-plugin-unicorn": "^54.0.0", - "fake-indexeddb": "^5.0.2", - "fetch-mock": "10.0.7", - "fetch-mock-jest": "^1.5.1", - "husky": "^9.0.0", - "jest": "^29.0.0", - "jest-environment-jsdom": "^29.0.0", - "jest-localstorage-mock": "^2.4.6", - "jest-mock": "^29.0.0", - "knip": "^5.0.0", - "lint-staged": "^15.0.2", - "matrix-mock-request": "^2.5.0", - "node-fetch": "^2.7.0", - "prettier": "3.3.2", - "rimraf": "^5.0.0", - "ts-node": "^10.9.2", - "typedoc": "^0.26.0", - "typedoc-plugin-coverage": "^3.0.0", - "typedoc-plugin-mdn-links": "^3.0.3", - "typedoc-plugin-missing-exports": "^3.0.0", - "typescript": "^5.3.3" - }, - "@casualbot/jest-sonar-reporter": { - "outputDirectory": "coverage", - "outputName": "jest-sonar-report.xml", - "relativePaths": true - }, - "typings": "./lib/index.d.ts" + "name": "matrix-js-sdk", + "version": "34.0.0", + "description": "Matrix Client-Server SDK for Javascript", + "engines": { + "node": ">=20.0.0" + }, + "scripts": { + "prepack": "yarn build", + "start": "echo THIS IS FOR LEGACY PURPOSES ONLY. && babel src -w -s -d lib --verbose --extensions \".ts,.js\"", + "clean": "rimraf lib", + "build": "yarn build:dev", + "build:dev": "yarn clean && git rev-parse HEAD > git-revision.txt && yarn build:compile && yarn build:types", + "build:types": "tsc -p tsconfig-build.json --emitDeclarationOnly", + "build:compile": "babel -d lib --verbose --extensions \".ts,.js\" src", + "gendoc": "typedoc", + "lint": "yarn lint:types && yarn lint:js && yarn lint:workflows", + "lint:js": "eslint --max-warnings 0 src spec && prettier --check .", + "lint:js-fix": "prettier --log-level=warn --write . && eslint --fix src spec", + "lint:types": "tsc --noEmit", + "lint:workflows": "find .github/workflows -type f \\( -iname '*.yaml' -o -iname '*.yml' \\) | xargs -I {} sh -c 'echo \"Linting {}\"; action-validator \"{}\"'", + "lint:knip": "knip", + "test": "jest", + "test:watch": "jest --watch", + "coverage": "yarn test --coverage" + }, + "repository": { + "type": "git", + "url": "https://github.com/matrix-org/matrix-js-sdk" + }, + "keywords": [ + "matrix-org" + ], + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", + "matrix_src_main": "./src/index.ts", + "matrix_src_browser": "./src/browser-index.ts", + "matrix_lib_main": "./lib/index.js", + "matrix_lib_browser": "./lib/browser-index.js", + "matrix_lib_typings": "./lib/index.d.ts", + "author": "matrix.org", + "license": "Apache-2.0", + "files": [ + "lib", + "src", + "git-revision.txt", + "CHANGELOG.md", + "CONTRIBUTING.rst", + "LICENSE", + "README.md", + "package.json", + "release.sh" + ], + "dependencies": { + "@babel/runtime": "^7.12.5", + "@matrix-org/matrix-sdk-crypto-wasm": "^6.0.0", + "another-json": "^0.2.0", + "bs58": "^6.0.0", + "content-type": "^1.0.4", + "jwt-decode": "^4.0.0", + "loglevel": "^1.7.1", + "matrix-events-sdk": "0.0.1", + "matrix-widget-api": "^1.6.0", + "oidc-client-ts": "^3.0.1", + "p-retry": "4", + "sdp-transform": "^2.14.1", + "unhomoglyph": "^1.0.6", + "uuid": "10" + }, + "devDependencies": { + "@action-validator/cli": "^0.6.0", + "@action-validator/core": "^0.6.0", + "@babel/cli": "^7.12.10", + "@babel/core": "^7.12.10", + "@babel/eslint-parser": "^7.12.10", + "@babel/eslint-plugin": "^7.12.10", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-class-properties": "^7.12.1", + "@babel/plugin-transform-numeric-separator": "^7.12.7", + "@babel/plugin-transform-object-rest-spread": "^7.12.1", + "@babel/plugin-transform-runtime": "^7.12.10", + "@babel/preset-env": "^7.12.11", + "@babel/preset-typescript": "^7.12.7", + "@casualbot/jest-sonar-reporter": "2.2.7", + "@matrix-org/olm": "3.2.15", + "@peculiar/webcrypto": "^1.4.5", + "@types/bs58": "^4.0.1", + "@types/content-type": "^1.1.5", + "@types/debug": "^4.1.7", + "@types/jest": "^29.0.0", + "@types/node": "18", + "@types/sdp-transform": "^2.4.5", + "@types/uuid": "10", + "@typescript-eslint/eslint-plugin": "^7.0.0", + "@typescript-eslint/parser": "^7.0.0", + "babel-jest": "^29.0.0", + "debug": "^4.3.4", + "eslint": "8.57.0", + "eslint-config-google": "^0.14.0", + "eslint-config-prettier": "^9.0.0", + "eslint-import-resolver-typescript": "^3.5.1", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-jest": "^28.0.0", + "eslint-plugin-jsdoc": "^48.0.0", + "eslint-plugin-matrix-org": "^1.0.0", + "eslint-plugin-tsdoc": "^0.3.0", + "eslint-plugin-unicorn": "^54.0.0", + "fake-indexeddb": "^5.0.2", + "fetch-mock": "10.0.7", + "fetch-mock-jest": "^1.5.1", + "husky": "^9.0.0", + "jest": "^29.0.0", + "jest-environment-jsdom": "^29.0.0", + "jest-localstorage-mock": "^2.4.6", + "jest-mock": "^29.0.0", + "knip": "^5.0.0", + "lint-staged": "^15.0.2", + "matrix-mock-request": "^2.5.0", + "node-fetch": "^2.7.0", + "prettier": "3.3.2", + "rimraf": "^5.0.0", + "ts-node": "^10.9.2", + "typedoc": "^0.26.0", + "typedoc-plugin-coverage": "^3.0.0", + "typedoc-plugin-mdn-links": "^3.0.3", + "typedoc-plugin-missing-exports": "^3.0.0", + "typescript": "^5.3.3" + }, + "@casualbot/jest-sonar-reporter": { + "outputDirectory": "coverage", + "outputName": "jest-sonar-report.xml", + "relativePaths": true + } } From 28683080796746a8a0ab72ced956a2830c146d49 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 8 Jul 2024 16:46:14 +0100 Subject: [PATCH 324/595] Prettier --- package.json | 264 +++++++++++++++++++++++++-------------------------- 1 file changed, 132 insertions(+), 132 deletions(-) diff --git a/package.json b/package.json index bb687f13235..742349959fa 100644 --- a/package.json +++ b/package.json @@ -1,134 +1,134 @@ { - "name": "matrix-js-sdk", - "version": "34.0.0", - "description": "Matrix Client-Server SDK for Javascript", - "engines": { - "node": ">=20.0.0" - }, - "scripts": { - "prepack": "yarn build", - "start": "echo THIS IS FOR LEGACY PURPOSES ONLY. && babel src -w -s -d lib --verbose --extensions \".ts,.js\"", - "clean": "rimraf lib", - "build": "yarn build:dev", - "build:dev": "yarn clean && git rev-parse HEAD > git-revision.txt && yarn build:compile && yarn build:types", - "build:types": "tsc -p tsconfig-build.json --emitDeclarationOnly", - "build:compile": "babel -d lib --verbose --extensions \".ts,.js\" src", - "gendoc": "typedoc", - "lint": "yarn lint:types && yarn lint:js && yarn lint:workflows", - "lint:js": "eslint --max-warnings 0 src spec && prettier --check .", - "lint:js-fix": "prettier --log-level=warn --write . && eslint --fix src spec", - "lint:types": "tsc --noEmit", - "lint:workflows": "find .github/workflows -type f \\( -iname '*.yaml' -o -iname '*.yml' \\) | xargs -I {} sh -c 'echo \"Linting {}\"; action-validator \"{}\"'", - "lint:knip": "knip", - "test": "jest", - "test:watch": "jest --watch", - "coverage": "yarn test --coverage" - }, - "repository": { - "type": "git", - "url": "https://github.com/matrix-org/matrix-js-sdk" - }, - "keywords": [ - "matrix-org" - ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", - "matrix_src_main": "./src/index.ts", - "matrix_src_browser": "./src/browser-index.ts", - "matrix_lib_main": "./lib/index.js", - "matrix_lib_browser": "./lib/browser-index.js", - "matrix_lib_typings": "./lib/index.d.ts", - "author": "matrix.org", - "license": "Apache-2.0", - "files": [ - "lib", - "src", - "git-revision.txt", - "CHANGELOG.md", - "CONTRIBUTING.rst", - "LICENSE", - "README.md", - "package.json", - "release.sh" - ], - "dependencies": { - "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^6.0.0", - "another-json": "^0.2.0", - "bs58": "^6.0.0", - "content-type": "^1.0.4", - "jwt-decode": "^4.0.0", - "loglevel": "^1.7.1", - "matrix-events-sdk": "0.0.1", - "matrix-widget-api": "^1.6.0", - "oidc-client-ts": "^3.0.1", - "p-retry": "4", - "sdp-transform": "^2.14.1", - "unhomoglyph": "^1.0.6", - "uuid": "10" - }, - "devDependencies": { - "@action-validator/cli": "^0.6.0", - "@action-validator/core": "^0.6.0", - "@babel/cli": "^7.12.10", - "@babel/core": "^7.12.10", - "@babel/eslint-parser": "^7.12.10", - "@babel/eslint-plugin": "^7.12.10", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-class-properties": "^7.12.1", - "@babel/plugin-transform-numeric-separator": "^7.12.7", - "@babel/plugin-transform-object-rest-spread": "^7.12.1", - "@babel/plugin-transform-runtime": "^7.12.10", - "@babel/preset-env": "^7.12.11", - "@babel/preset-typescript": "^7.12.7", - "@casualbot/jest-sonar-reporter": "2.2.7", - "@matrix-org/olm": "3.2.15", - "@peculiar/webcrypto": "^1.4.5", - "@types/bs58": "^4.0.1", - "@types/content-type": "^1.1.5", - "@types/debug": "^4.1.7", - "@types/jest": "^29.0.0", - "@types/node": "18", - "@types/sdp-transform": "^2.4.5", - "@types/uuid": "10", - "@typescript-eslint/eslint-plugin": "^7.0.0", - "@typescript-eslint/parser": "^7.0.0", - "babel-jest": "^29.0.0", - "debug": "^4.3.4", - "eslint": "8.57.0", - "eslint-config-google": "^0.14.0", - "eslint-config-prettier": "^9.0.0", - "eslint-import-resolver-typescript": "^3.5.1", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jest": "^28.0.0", - "eslint-plugin-jsdoc": "^48.0.0", - "eslint-plugin-matrix-org": "^1.0.0", - "eslint-plugin-tsdoc": "^0.3.0", - "eslint-plugin-unicorn": "^54.0.0", - "fake-indexeddb": "^5.0.2", - "fetch-mock": "10.0.7", - "fetch-mock-jest": "^1.5.1", - "husky": "^9.0.0", - "jest": "^29.0.0", - "jest-environment-jsdom": "^29.0.0", - "jest-localstorage-mock": "^2.4.6", - "jest-mock": "^29.0.0", - "knip": "^5.0.0", - "lint-staged": "^15.0.2", - "matrix-mock-request": "^2.5.0", - "node-fetch": "^2.7.0", - "prettier": "3.3.2", - "rimraf": "^5.0.0", - "ts-node": "^10.9.2", - "typedoc": "^0.26.0", - "typedoc-plugin-coverage": "^3.0.0", - "typedoc-plugin-mdn-links": "^3.0.3", - "typedoc-plugin-missing-exports": "^3.0.0", - "typescript": "^5.3.3" - }, - "@casualbot/jest-sonar-reporter": { - "outputDirectory": "coverage", - "outputName": "jest-sonar-report.xml", - "relativePaths": true - } + "name": "matrix-js-sdk", + "version": "34.0.0", + "description": "Matrix Client-Server SDK for Javascript", + "engines": { + "node": ">=20.0.0" + }, + "scripts": { + "prepack": "yarn build", + "start": "echo THIS IS FOR LEGACY PURPOSES ONLY. && babel src -w -s -d lib --verbose --extensions \".ts,.js\"", + "clean": "rimraf lib", + "build": "yarn build:dev", + "build:dev": "yarn clean && git rev-parse HEAD > git-revision.txt && yarn build:compile && yarn build:types", + "build:types": "tsc -p tsconfig-build.json --emitDeclarationOnly", + "build:compile": "babel -d lib --verbose --extensions \".ts,.js\" src", + "gendoc": "typedoc", + "lint": "yarn lint:types && yarn lint:js && yarn lint:workflows", + "lint:js": "eslint --max-warnings 0 src spec && prettier --check .", + "lint:js-fix": "prettier --log-level=warn --write . && eslint --fix src spec", + "lint:types": "tsc --noEmit", + "lint:workflows": "find .github/workflows -type f \\( -iname '*.yaml' -o -iname '*.yml' \\) | xargs -I {} sh -c 'echo \"Linting {}\"; action-validator \"{}\"'", + "lint:knip": "knip", + "test": "jest", + "test:watch": "jest --watch", + "coverage": "yarn test --coverage" + }, + "repository": { + "type": "git", + "url": "https://github.com/matrix-org/matrix-js-sdk" + }, + "keywords": [ + "matrix-org" + ], + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", + "matrix_src_main": "./src/index.ts", + "matrix_src_browser": "./src/browser-index.ts", + "matrix_lib_main": "./lib/index.js", + "matrix_lib_browser": "./lib/browser-index.js", + "matrix_lib_typings": "./lib/index.d.ts", + "author": "matrix.org", + "license": "Apache-2.0", + "files": [ + "lib", + "src", + "git-revision.txt", + "CHANGELOG.md", + "CONTRIBUTING.rst", + "LICENSE", + "README.md", + "package.json", + "release.sh" + ], + "dependencies": { + "@babel/runtime": "^7.12.5", + "@matrix-org/matrix-sdk-crypto-wasm": "^6.0.0", + "another-json": "^0.2.0", + "bs58": "^6.0.0", + "content-type": "^1.0.4", + "jwt-decode": "^4.0.0", + "loglevel": "^1.7.1", + "matrix-events-sdk": "0.0.1", + "matrix-widget-api": "^1.6.0", + "oidc-client-ts": "^3.0.1", + "p-retry": "4", + "sdp-transform": "^2.14.1", + "unhomoglyph": "^1.0.6", + "uuid": "10" + }, + "devDependencies": { + "@action-validator/cli": "^0.6.0", + "@action-validator/core": "^0.6.0", + "@babel/cli": "^7.12.10", + "@babel/core": "^7.12.10", + "@babel/eslint-parser": "^7.12.10", + "@babel/eslint-plugin": "^7.12.10", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-class-properties": "^7.12.1", + "@babel/plugin-transform-numeric-separator": "^7.12.7", + "@babel/plugin-transform-object-rest-spread": "^7.12.1", + "@babel/plugin-transform-runtime": "^7.12.10", + "@babel/preset-env": "^7.12.11", + "@babel/preset-typescript": "^7.12.7", + "@casualbot/jest-sonar-reporter": "2.2.7", + "@matrix-org/olm": "3.2.15", + "@peculiar/webcrypto": "^1.4.5", + "@types/bs58": "^4.0.1", + "@types/content-type": "^1.1.5", + "@types/debug": "^4.1.7", + "@types/jest": "^29.0.0", + "@types/node": "18", + "@types/sdp-transform": "^2.4.5", + "@types/uuid": "10", + "@typescript-eslint/eslint-plugin": "^7.0.0", + "@typescript-eslint/parser": "^7.0.0", + "babel-jest": "^29.0.0", + "debug": "^4.3.4", + "eslint": "8.57.0", + "eslint-config-google": "^0.14.0", + "eslint-config-prettier": "^9.0.0", + "eslint-import-resolver-typescript": "^3.5.1", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-jest": "^28.0.0", + "eslint-plugin-jsdoc": "^48.0.0", + "eslint-plugin-matrix-org": "^1.0.0", + "eslint-plugin-tsdoc": "^0.3.0", + "eslint-plugin-unicorn": "^54.0.0", + "fake-indexeddb": "^5.0.2", + "fetch-mock": "10.0.7", + "fetch-mock-jest": "^1.5.1", + "husky": "^9.0.0", + "jest": "^29.0.0", + "jest-environment-jsdom": "^29.0.0", + "jest-localstorage-mock": "^2.4.6", + "jest-mock": "^29.0.0", + "knip": "^5.0.0", + "lint-staged": "^15.0.2", + "matrix-mock-request": "^2.5.0", + "node-fetch": "^2.7.0", + "prettier": "3.3.2", + "rimraf": "^5.0.0", + "ts-node": "^10.9.2", + "typedoc": "^0.26.0", + "typedoc-plugin-coverage": "^3.0.0", + "typedoc-plugin-mdn-links": "^3.0.3", + "typedoc-plugin-missing-exports": "^3.0.0", + "typescript": "^5.3.3" + }, + "@casualbot/jest-sonar-reporter": { + "outputDirectory": "coverage", + "outputName": "jest-sonar-report.xml", + "relativePaths": true + } } From eff52b82e83ea25626ee78ba69e74c540498b9ac Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 9 Jul 2024 12:04:20 +0000 Subject: [PATCH 325/595] v34.1.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 742349959fa..5e99876d9d5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.0.0", + "version": "34.1.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -130,5 +130,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From 5d2500b7a704fbf3d7fca54dcf2b0689325b9304 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 9 Jul 2024 13:11:25 +0100 Subject: [PATCH 326/595] Fix bump-downstreams using incompatible Node version Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-make.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index 51bfdece26f..831055a0030 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -316,6 +316,11 @@ jobs: ref: staging token: ${{ secrets.ELEMENT_BOT_TOKEN }} + - uses: actions/setup-node@v4 + with: + cache: "yarn" + node-version: "lts/*" + - name: Bump dependency env: DEPENDENCY: ${{ needs.npm.outputs.id }} From a0d73dfaca40fe19bed2c7265cefa414c388417f Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 9 Jul 2024 12:12:53 +0000 Subject: [PATCH 327/595] v34.1.0-rc.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5e99876d9d5..0e0411c7f82 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.1.0-rc.0", + "version": "34.1.0-rc.1", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From 51544f25a7c7313d0ab5e36d3a4e23a3f8cb9eb9 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 9 Jul 2024 13:17:11 +0100 Subject: [PATCH 328/595] Fix bump-downstreams using incompatible Node version Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-make.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index 51bfdece26f..831055a0030 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -316,6 +316,11 @@ jobs: ref: staging token: ${{ secrets.ELEMENT_BOT_TOKEN }} + - uses: actions/setup-node@v4 + with: + cache: "yarn" + node-version: "lts/*" + - name: Bump dependency env: DEPENDENCY: ${{ needs.npm.outputs.id }} From 24eff501e4a264b9ef711b65963e5d2f9bd5081b Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 9 Jul 2024 12:17:59 +0000 Subject: [PATCH 329/595] v34.1.0-rc.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 0e0411c7f82..fa5b06c257c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.1.0-rc.1", + "version": "34.1.0-rc.2", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From ed7b314e6a9aa383cbf31bc60cb566bdc03e51d2 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 9 Jul 2024 14:13:50 +0100 Subject: [PATCH 330/595] Promote olm to a real dep given the types refer to it Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index fa5b06c257c..b6eaa53f2a6 100644 --- a/package.json +++ b/package.json @@ -54,6 +54,7 @@ "dependencies": { "@babel/runtime": "^7.12.5", "@matrix-org/matrix-sdk-crypto-wasm": "^6.0.0", + "@matrix-org/olm": "3.2.15", "another-json": "^0.2.0", "bs58": "^6.0.0", "content-type": "^1.0.4", @@ -82,7 +83,6 @@ "@babel/preset-env": "^7.12.11", "@babel/preset-typescript": "^7.12.7", "@casualbot/jest-sonar-reporter": "2.2.7", - "@matrix-org/olm": "3.2.15", "@peculiar/webcrypto": "^1.4.5", "@types/bs58": "^4.0.1", "@types/content-type": "^1.1.5", From 6520e0f54febc7ceec3b91f257efff0a51d58a72 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 9 Jul 2024 13:15:09 +0000 Subject: [PATCH 331/595] v34.1.0-rc.3 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b6eaa53f2a6..719f8076ba1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.1.0-rc.2", + "version": "34.1.0-rc.3", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From fe0edcd0815f3a32fae5add5a72cf767d424bd33 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 9 Jul 2024 15:32:07 +0100 Subject: [PATCH 332/595] Stop testing on Node 21 as it is EOL (#4308) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/tests.yml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index a23c2772f2e..dc8adca6d26 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -18,7 +18,7 @@ jobs: strategy: matrix: specs: [integ, unit] - node: ["lts/*", 21, 22] + node: ["lts/*", 22] steps: - name: Checkout code uses: actions/checkout@v4 @@ -63,6 +63,16 @@ jobs: coverage !coverage/lcov-report + # Dummy completion job to simplify branch protections + jest-complete: + name: Jest tests + needs: jest + if: always() + runs-on: ubuntu-latest + steps: + - if: needs.jest.result != 'skipped' && needs.jest.result != 'success' + run: exit 1 + matrix-react-sdk: name: Downstream test matrix-react-sdk if: github.event_name == 'merge_group' From 565bb0ef7c56ac8217947175ae5fb40dbc5783d9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 9 Jul 2024 15:15:37 +0100 Subject: [PATCH 333/595] Update dependency typescript to v5.5.3 (#4303) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index c2aee30563a..50ca09486a9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6560,9 +6560,9 @@ typedoc@^0.26.0: yaml "^2.4.5" typescript@^5.3.3: - version "5.5.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.2.tgz#c26f023cb0054e657ce04f72583ea2d85f8d0507" - integrity sha512-NcRtPEOsPFFWjobJEtfihkLCZCXZt/os3zf8nTxjVH3RvTSxjrCamJpbExGvYOF+tFHc3pA65qpdwPbzjohhew== + version "5.5.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.3.tgz#e1b0a3c394190838a0b168e771b0ad56a0af0faa" + integrity sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ== uc.micro@^2.0.0, uc.micro@^2.1.0: version "2.1.0" From af4b6bc126bdccbb8cae4e3c4b80770ab9ca0a17 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 9 Jul 2024 14:16:29 +0000 Subject: [PATCH 334/595] Update typescript-eslint monorepo to v7.15.0 (#4306) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 113 +++++++++++++++++++++++++++++------------------------- 1 file changed, 60 insertions(+), 53 deletions(-) diff --git a/yarn.lock b/yarn.lock index 50ca09486a9..e2414534fed 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1439,9 +1439,9 @@ eslint-visitor-keys "^3.3.0" "@eslint-community/regexpp@^4.10.0": - version "4.10.1" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.1.tgz#361461e5cb3845d874e61731c11cfedd664d83a0" - integrity sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA== + version "4.11.0" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.11.0.tgz#b0ffd0312b4a3fd2d6f77237e7248a5ad3a680ae" + integrity sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A== "@eslint-community/regexpp@^4.6.1": version "4.6.2" @@ -2171,29 +2171,29 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.1.tgz#cdc521c8bca38b55585cf30db787fb2abad3f9fd" - integrity sha512-kZqi+WZQaZfPKnsflLJQCz6Ze9FFSMfXrrIOcyargekQxG37ES7DJNpJUE9Q/X5n3yTIP/WPutVNzgknQ7biLg== + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.16.0.tgz#b3563927341eca15124a18c6f94215f779f5c02a" + integrity sha512-py1miT6iQpJcs1BiJjm54AMzeuMPBSPuKPlnT8HlfudbcS5rYeX5jajpLf3mrdRh9dA/Ec2FVUY0ifeVNDIhZw== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.13.1" - "@typescript-eslint/type-utils" "7.13.1" - "@typescript-eslint/utils" "7.13.1" - "@typescript-eslint/visitor-keys" "7.13.1" + "@typescript-eslint/scope-manager" "7.16.0" + "@typescript-eslint/type-utils" "7.16.0" + "@typescript-eslint/utils" "7.16.0" + "@typescript-eslint/visitor-keys" "7.16.0" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" "@typescript-eslint/parser@^7.0.0": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.13.1.tgz#fac57811b3e519185f7259bac312291f7b9c4e72" - integrity sha512-1ELDPlnLvDQ5ybTSrMhRTFDfOQEOXNM+eP+3HT/Yq7ruWpciQw+Avi73pdEbA4SooCawEWo3dtYbF68gN7Ed1A== - dependencies: - "@typescript-eslint/scope-manager" "7.13.1" - "@typescript-eslint/types" "7.13.1" - "@typescript-eslint/typescript-estree" "7.13.1" - "@typescript-eslint/visitor-keys" "7.13.1" + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.16.0.tgz#53fae8112f8c912024aea7b499cf7374487af6d8" + integrity sha512-ar9E+k7CU8rWi2e5ErzQiC93KKEFAXA2Kky0scAlPcxYblLt8+XZuHUZwlyfXILyQa95P6lQg+eZgh/dDs3+Vw== + dependencies: + "@typescript-eslint/scope-manager" "7.16.0" + "@typescript-eslint/types" "7.16.0" + "@typescript-eslint/typescript-estree" "7.16.0" + "@typescript-eslint/visitor-keys" "7.16.0" debug "^4.3.4" "@typescript-eslint/scope-manager@7.12.0": @@ -2204,21 +2204,21 @@ "@typescript-eslint/types" "7.12.0" "@typescript-eslint/visitor-keys" "7.12.0" -"@typescript-eslint/scope-manager@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.13.1.tgz#c08041206904bf36f0e6997efdb0ca775e0c452e" - integrity sha512-adbXNVEs6GmbzaCpymHQ0MB6E4TqoiVbC0iqG3uijR8ZYfpAXMGttouQzF4Oat3P2GxDVIrg7bMI/P65LiQZdg== +"@typescript-eslint/scope-manager@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.16.0.tgz#eb0757af5720c9c53c8010d7a0355ae27e17b7e5" + integrity sha512-8gVv3kW6n01Q6TrI1cmTZ9YMFi3ucDT7i7aI5lEikk2ebk1AEjrwX8MDTdaX5D7fPXMBLvnsaa0IFTAu+jcfOw== dependencies: - "@typescript-eslint/types" "7.13.1" - "@typescript-eslint/visitor-keys" "7.13.1" + "@typescript-eslint/types" "7.16.0" + "@typescript-eslint/visitor-keys" "7.16.0" -"@typescript-eslint/type-utils@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.13.1.tgz#63bec3f1fb43cf0bc409cbdb88ef96d118ca8632" - integrity sha512-aWDbLu1s9bmgPGXSzNCxELu+0+HQOapV/y+60gPXafR8e2g1Bifxzevaa+4L2ytCWm+CHqpELq4CSoN9ELiwCg== +"@typescript-eslint/type-utils@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.16.0.tgz#ec52b1932b8fb44a15a3e20208e0bd49d0b6bd00" + integrity sha512-j0fuUswUjDHfqV/UdW6mLtOQQseORqfdmoBNDFOqs9rvNVR2e+cmu6zJu/Ku4SDuqiJko6YnhwcL8x45r8Oqxg== dependencies: - "@typescript-eslint/typescript-estree" "7.13.1" - "@typescript-eslint/utils" "7.13.1" + "@typescript-eslint/typescript-estree" "7.16.0" + "@typescript-eslint/utils" "7.16.0" debug "^4.3.4" ts-api-utils "^1.3.0" @@ -2227,10 +2227,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.12.0.tgz#bf208f971a8da1e7524a5d9ae2b5f15192a37981" integrity sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg== -"@typescript-eslint/types@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.1.tgz#787db283bd0b58751094c90d5b58bbf5e9fc9bd8" - integrity sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw== +"@typescript-eslint/types@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.16.0.tgz#60a19d7e7a6b1caa2c06fac860829d162a036ed2" + integrity sha512-fecuH15Y+TzlUutvUl9Cc2XJxqdLr7+93SQIbcZfd4XRGGKoxyljK27b+kxKamjRkU7FYC6RrbSCg0ALcZn/xw== "@typescript-eslint/types@^7.2.0": version "7.14.1" @@ -2251,13 +2251,13 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/typescript-estree@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.1.tgz#3412841b130e070db2f675e3d9b8cb1ae49e1c3f" - integrity sha512-uxNr51CMV7npU1BxZzYjoVz9iyjckBduFBP0S5sLlh1tXYzHzgZ3BR9SVsNed+LmwKrmnqN3Kdl5t7eZ5TS1Yw== +"@typescript-eslint/typescript-estree@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.16.0.tgz#98ac779d526fab2a781e5619c9250f3e33867c09" + integrity sha512-a5NTvk51ZndFuOLCh5OaJBELYc2O3Zqxfl3Js78VFE1zE46J2AaVuW+rEbVkQznjkmlzWsUI15BG5tQMixzZLw== dependencies: - "@typescript-eslint/types" "7.13.1" - "@typescript-eslint/visitor-keys" "7.13.1" + "@typescript-eslint/types" "7.16.0" + "@typescript-eslint/visitor-keys" "7.16.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -2265,15 +2265,15 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.13.1.tgz#611083379caa0d3a2c09d126c65065a3e4337ba2" - integrity sha512-h5MzFBD5a/Gh/fvNdp9pTfqJAbuQC4sCN2WzuXme71lqFJsZtLbjxfSk4r3p02WIArOF9N94pdsLiGutpDbrXQ== +"@typescript-eslint/utils@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.16.0.tgz#b38dc0ce1778e8182e227c98d91d3418449aa17f" + integrity sha512-PqP4kP3hb4r7Jav+NiRCntlVzhxBNWq6ZQ+zQwII1y/G/1gdIPeYDCKr2+dH6049yJQsWZiHU6RlwvIFBXXGNA== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.13.1" - "@typescript-eslint/types" "7.13.1" - "@typescript-eslint/typescript-estree" "7.13.1" + "@typescript-eslint/scope-manager" "7.16.0" + "@typescript-eslint/types" "7.16.0" + "@typescript-eslint/typescript-estree" "7.16.0" "@typescript-eslint/utils@^6.0.0 || ^7.0.0": version "7.12.0" @@ -2293,12 +2293,12 @@ "@typescript-eslint/types" "7.12.0" eslint-visitor-keys "^3.4.3" -"@typescript-eslint/visitor-keys@7.13.1": - version "7.13.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.1.tgz#9c229a795a919db61f2d7f2337ef584ac05fbe96" - integrity sha512-k/Bfne7lrP7hcb7m9zSsgcBmo+8eicqqfNAJ7uUY+jkTFpKeH2FSkWpFRtimBxgkyvqfu9jTPRbYOvud6isdXA== +"@typescript-eslint/visitor-keys@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.16.0.tgz#a1d99fa7a3787962d6e0efd436575ef840e23b06" + integrity sha512-rMo01uPy9C7XxG7AFsxa8zLnWXTF8N3PYclekWSrurvhwiw1eW88mrKiAYe6s53AUY57nTRz8dJsuuXdkAhzCg== dependencies: - "@typescript-eslint/types" "7.13.1" + "@typescript-eslint/types" "7.16.0" eslint-visitor-keys "^3.4.3" "@ungap/structured-clone@^1.2.0": @@ -5259,13 +5259,20 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" -minimatch@^9.0.1, minimatch@^9.0.4: +minimatch@^9.0.1: version "9.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51" integrity sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw== dependencies: brace-expansion "^2.0.1" +minimatch@^9.0.4: + version "9.0.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== + dependencies: + brace-expansion "^2.0.1" + minimist@^1.2.0, minimist@^1.2.6, minimist@^1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" From b2665f212846870eac4255fb96529303692e84e5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 9 Jul 2024 15:30:34 +0000 Subject: [PATCH 335/595] Update typedoc (#4304) * Update typedoc * Update README.md --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- README.md | 2 +- yarn.lock | 51 +++++++++++++++++++++++++++++++++------------------ 2 files changed, 34 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 24b2334a8ad..338012c9f50 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,7 @@ client.publicRooms(function (err, data) { ``` See below for how to include libolm to enable end-to-end-encryption. Please check -[the Node.js terminal app](examples/node) for a more complex example. +[the Node.js terminal app](examples/node/README.md) for a more complex example. To start the client: diff --git a/yarn.lock b/yarn.lock index e2414534fed..f1fac5a5aae 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1917,10 +1917,12 @@ resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.1.1.tgz#1ec17e2edbec25c8306d424ecfbf13c7de1aaa31" integrity sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA== -"@shikijs/core@1.9.1": - version "1.9.1" - resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.9.1.tgz#f8c61fb19dbec510fa27f892c441d99b53093e49" - integrity sha512-EmUful2MQtY8KgCF1OkBtOuMcvaZEvmdubhW0UHCGXi21O9dRLeADVCj+k6ZS+de7Mz9d2qixOXJ+GLhcK3pXg== +"@shikijs/core@1.10.3": + version "1.10.3" + resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.10.3.tgz#f01763b36f08ad3d2ef46cea7e61858d9d9947d6" + integrity sha512-D45PMaBaeDHxww+EkcDQtDAtzv00Gcsp72ukBtaLSmqRvh0WgGMq3Al0rl1QQBZfuneO75NXMIzEZGFitThWbg== + dependencies: + "@types/hast" "^3.0.4" "@sinclair/typebox@^0.24.1": version "0.24.51" @@ -2058,6 +2060,13 @@ dependencies: "@types/node" "*" +"@types/hast@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.4.tgz#1d6b39993b82cea6ad783945b0508c25903e15aa" + integrity sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ== + dependencies: + "@types/unist" "*" + "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": version "2.0.6" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" @@ -2153,6 +2162,11 @@ resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.5.tgz#cb6e2a691b70cb177c6e3ae9c1d2e8b2ea8cd304" integrity sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA== +"@types/unist@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.2.tgz#6dd61e43ef60b34086287f83683a5c1b2dc53d20" + integrity sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ== + "@types/uuid@10": version "10.0.0" resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-10.0.0.tgz#e9c07fe50da0f53dc24970cca94d619ff03f6f6d" @@ -5266,7 +5280,7 @@ minimatch@^9.0.1: dependencies: brace-expansion "^2.0.1" -minimatch@^9.0.4: +minimatch@^9.0.4, minimatch@^9.0.5: version "9.0.5" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== @@ -6023,12 +6037,13 @@ shell-quote-word@^1.0.1: resolved "https://registry.yarnpkg.com/shell-quote-word/-/shell-quote-word-1.0.1.tgz#e2bdfd22d599fd68886491677e38f560f9d469c9" integrity sha512-lT297f1WLAdq0A4O+AknIFRP6kkiI3s8C913eJ0XqBxJbZPGWUNkRQk2u8zk4bEAjUJ5i+fSLwB6z1HzeT+DEg== -shiki@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.9.1.tgz#9d9f553b06e70a9e71b5457622d6f4a5aaf1db27" - integrity sha512-8PDkgb5ja3nfujTjvC4VytL6wGOGCtFAClUb2r3QROevYXxcq+/shVJK5s6gy0HZnjaJgFxd6BpPqpRfqne5rA== +shiki@^1.9.1: + version "1.10.3" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.10.3.tgz#2276fb21a07043b28c5b16001e6a04fef99dbb8f" + integrity sha512-eneCLncGuvPdTutJuLyUGS8QNPAVFO5Trvld2wgEq1e002mwctAhJKeMGWtWVXOIEzmlcLRqcgPSorR6AVzOmQ== dependencies: - "@shikijs/core" "1.9.1" + "@shikijs/core" "1.10.3" + "@types/hast" "^3.0.4" side-channel@^1.0.4: version "1.0.4" @@ -6546,9 +6561,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-wpywQ95tqGSD6IbYUPMXSKiwnSWboSKdx2y9X6SJQKzQvBqZoz5iiUyDJFixtW8v7+xmrqXFR/B6Wy37FNhVqA== typedoc-plugin-mdn-links@^3.0.3: - version "3.2.1" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.1.tgz#7388fb62b034d3d1df5bb2c8296683139d4a19f2" - integrity sha512-l76VJKKhOxCYXnb16aV6nAQG5JCsuStqviNFmgzhS9dW73nqm3/1MO9497+0KlDTOPO3o+R2uVXq87d2cDy/hg== + version "3.2.3" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.3.tgz#0e54c2583f0736e0d2956ec912efb69a73ad414d" + integrity sha512-hz22UgFuzdtgpBXet2dxKf9d2HVixL2VcE9Ke1+X1Nu8W8jSGIB2awIA6HFVsD0vk1OLe3ehU0ibyD5sN7wh4w== typedoc-plugin-missing-exports@^3.0.0: version "3.0.0" @@ -6556,14 +6571,14 @@ typedoc-plugin-missing-exports@^3.0.0: integrity sha512-R7D8fYrK34mBFZSlF1EqJxfqiUSlQSmyrCiQgTQD52nNm6+kUtqwiaqaNkuJ2rA2wBgWFecUA8JzHT7x2r7ePg== typedoc@^0.26.0: - version "0.26.2" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.2.tgz#f9538e6e9a081fda1f2416d0ee0d7dfab480cbec" - integrity sha512-q/t+M+PZqhN9gPWLBZ3CCvP+KT8O1tyYkSzEYbcQ6mo89avdIrMlBEl3vfo5BgSzwC6Lbmq0W64E8RkY+eVsLA== + version "0.26.3" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.3.tgz#723b2c4ca5dd1d9baf43d6a5a1f4d640ba4207a8" + integrity sha512-6d2Sw9disvvpdk4K7VNjKr5/3hzijtfQVHRthhDqJgnhMHy1wQz4yPMJVKXElvnZhFr0nkzo+GzjXDTRV5yLpg== dependencies: lunr "^2.3.9" markdown-it "^14.1.0" - minimatch "^9.0.4" - shiki "^1.9.0" + minimatch "^9.0.5" + shiki "^1.9.1" yaml "^2.4.5" typescript@^5.3.3: From d6e4338a3715e02ddbe89b5e2e19f9a20ad22759 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 9 Jul 2024 16:48:22 +0000 Subject: [PATCH 336/595] Update all non-major dependencies (#4305) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 285 +++++++++++------------------------------------------- 1 file changed, 57 insertions(+), 228 deletions(-) diff --git a/yarn.lock b/yarn.lock index f1fac5a5aae..75d21c6ee61 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1396,29 +1396,6 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@ericcornelissen/bash-parser@0.5.3": - version "0.5.3" - resolved "https://registry.yarnpkg.com/@ericcornelissen/bash-parser/-/bash-parser-0.5.3.tgz#cda9f0e9ed3bcf62c29c277de778726425e03b0a" - integrity sha512-9Z0sGuXqf6En19qmwB0Syi1Mc8TYl756dNuuaYal9mrypKa0Jq/IX6aJfh6Rk2S3z66KBisWTqloDo7weYj4zg== - dependencies: - array-last "^1.1.1" - babylon "^6.9.1" - compose-function "^3.0.3" - filter-obj "^1.1.0" - has-own-property "^0.1.0" - identity-function "^1.0.0" - is-iterable "^1.1.0" - iterable-lookahead "^1.0.0" - lodash.curry "^4.1.1" - magic-string "^0.16.0" - map-obj "^2.0.0" - object-pairs "^0.1.0" - object-values "^1.0.0" - reverse-arguments "^1.0.0" - shell-quote-word "^1.0.1" - to-pascal-case "^1.0.0" - unescape-js "^1.0.5" - "@es-joy/jsdoccomment@~0.43.1": version "0.43.1" resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.43.1.tgz#4b1979b7b4ff8b596fb19a3aa696a438e44608d7" @@ -1846,33 +1823,12 @@ "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" -"@nodelib/fs.scandir@3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-3.0.0.tgz#91c0a33e1aeaedcd4bab2bf31be5d1962a55d2a7" - integrity sha512-ktI9+PxfHYtKjF3cLTUAh2N+b8MijCRPNwKJNqTVdL0gB0QxLU2rIRaZ1t71oEa3YBDE6bukH1sR0+CDnpp/Mg== - dependencies: - "@nodelib/fs.stat" "3.0.0" - run-parallel "^1.2.0" - "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": version "2.0.5" resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== -"@nodelib/fs.stat@3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-3.0.0.tgz#ef6c829f2b05f42595d88854ebd777d4335ff0a9" - integrity sha512-2tQOI38s19P9i7X/Drt0v8iMA+KMsgdhB/dyPER+e+2Y8L1Z7QvnuRdW/uLuf5YRFUYmnj4bMA6qCuZHFI1GDQ== - -"@nodelib/fs.walk@2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-2.0.0.tgz#10499ac2210f6399770b465ba728adafc7d44bb1" - integrity sha512-54voNDBobGdMl3BUXSu7UaDh1P85PGHWlJ5e0XhPugo1JulOyCtp2I+5ri4wplGDJ8QGwPEQW7/x3yTLU7yF1A== - dependencies: - "@nodelib/fs.scandir" "3.0.0" - fastq "^1.15.0" - -"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": +"@nodelib/fs.walk@1.2.8", "@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": version "1.2.8" resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== @@ -2241,16 +2197,11 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.12.0.tgz#bf208f971a8da1e7524a5d9ae2b5f15192a37981" integrity sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg== -"@typescript-eslint/types@7.16.0": +"@typescript-eslint/types@7.16.0", "@typescript-eslint/types@^7.2.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.16.0.tgz#60a19d7e7a6b1caa2c06fac860829d162a036ed2" integrity sha512-fecuH15Y+TzlUutvUl9Cc2XJxqdLr7+93SQIbcZfd4XRGGKoxyljK27b+kxKamjRkU7FYC6RrbSCg0ALcZn/xw== -"@typescript-eslint/types@^7.2.0": - version "7.14.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.14.1.tgz#a43a540dbe5df7f2a11269683d777fc50b4350aa" - integrity sha512-mL7zNEOQybo5R3AavY+Am7KLv8BorIv7HCYS5rKoNZKQD9tsfGUpO4KdAn3sSUvTiS4PQkr2+K0KJbxj8H9NDg== - "@typescript-eslint/typescript-estree@7.12.0": version "7.12.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.12.0.tgz#e6c1074f248b3db6573ab6a7c47a39c4cd498ff9" @@ -2479,11 +2430,6 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -arity-n@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/arity-n/-/arity-n-1.0.4.tgz#d9e76b11733e08569c0847ae7b39b2860b30b745" - integrity sha512-fExL2kFDC1Q2DUOx3whE/9KoN66IzkY4b4zUHUBFM1ojEYjZZYDcUW3bek/ufGionX9giIKDC5redH2IlGqcQQ== - array-buffer-byte-length@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead" @@ -2503,13 +2449,6 @@ array-includes@^3.1.7: get-intrinsic "^1.2.1" is-string "^1.0.7" -array-last@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/array-last/-/array-last-1.3.0.tgz#7aa77073fec565ddab2493f5f88185f404a9d336" - integrity sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg== - dependencies: - is-number "^4.0.0" - array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" @@ -2662,11 +2601,6 @@ babel-preset-jest@^29.6.3: babel-plugin-jest-hoist "^29.6.3" babel-preset-current-node-syntax "^1.0.0" -babylon@^6.9.1: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== - balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" @@ -2943,13 +2877,6 @@ comment-parser@1.4.1: resolved "https://registry.yarnpkg.com/comment-parser/-/comment-parser-1.4.1.tgz#bdafead37961ac079be11eb7ec65c4d021eaf9cc" integrity sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg== -compose-function@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/compose-function/-/compose-function-3.0.3.tgz#9ed675f13cc54501d30950a486ff6a7ba3ab185f" - integrity sha512-xzhzTJ5eC+gmIzvZq+C3kCJHsp9os6tJkrigDRZclyGtOKINbZtE8n1Tzmeh32jW+BUDPbvZpibwvJHBLGMVwg== - dependencies: - arity-n "^1.0.4" - concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -3035,7 +2962,7 @@ data-urls@^3.0.2: whatwg-mimetype "^3.0.0" whatwg-url "^11.0.0" -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.4: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@~4.3.4: version "4.3.5" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.5.tgz#e83444eceb9fedd4a1da56d671ae2446a01a6e1e" integrity sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg== @@ -3382,14 +3309,14 @@ eslint-plugin-jest@^28.0.0: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0" eslint-plugin-jsdoc@^48.0.0: - version "48.4.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.4.0.tgz#746a30b8d01a9aa7894e52f8a273a49ca681ef78" - integrity sha512-xBUxuAx03cKoEA7y+MYSUdwyN8AJyZHbAJ257sOFXgVgCScm574S4zEYJpBoARwaCu4chhCbvA+gdm+00whlxA== + version "48.5.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.5.2.tgz#c355846dc6a41095fa10855cbc64bed8d2d3f79d" + integrity sha512-VXBJFviQz30rynlOEQ+dNWLmeopjoAgutUVrWOZwm6Ki4EVDm4XkyIqAV/Zhf7FcDr0AG0aGmRn5FxxCtAF0tA== dependencies: "@es-joy/jsdoccomment" "~0.43.1" are-docs-informative "^0.0.2" comment-parser "1.4.1" - debug "^4.3.4" + debug "^4.3.5" escape-string-regexp "^4.0.0" esquery "^1.5.0" parse-imports "^2.1.0" @@ -3535,13 +3462,20 @@ esprima@^4.0.0, esprima@^4.0.1: resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.4.2, esquery@^1.5.0: +esquery@^1.4.2: version "1.5.0" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== dependencies: estraverse "^5.1.0" +esquery@^1.5.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7" + integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg== + dependencies: + estraverse "^5.1.0" + esrecurse@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" @@ -3673,7 +3607,7 @@ fast-levenshtein@^2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== -fastq@^1.15.0, fastq@^1.6.0: +fastq@^1.6.0: version "1.17.1" resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== @@ -3736,11 +3670,6 @@ fill-range@^7.1.1: dependencies: to-regex-range "^5.0.1" -filter-obj@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" - integrity sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ== - find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -3778,9 +3707,9 @@ for-each@^0.3.3: is-callable "^1.1.3" foreground-child@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.1.1.tgz#1d173e776d75d2772fed08efe4a0de1ea1b12d0d" - integrity sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg== + version "3.2.1" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.2.1.tgz#767004ccf3a5b30df39bed90718bab43fe0a59f7" + integrity sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA== dependencies: cross-spawn "^7.0.0" signal-exit "^4.0.1" @@ -3904,15 +3833,16 @@ glob-to-regexp@^0.4.0: integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== glob@^10.3.7: - version "10.3.15" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.15.tgz#e72bc61bc3038c90605f5dd48543dc67aaf3b50d" - integrity sha512-0c6RlJt1TICLyvJYIApxb8GsXoai0KUP7AxKKAtsYXdgJR1mGEUa7DgwShbdk1nly0PYoZj01xd4hzbq3fsjpw== + version "10.4.5" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" + integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg== dependencies: foreground-child "^3.1.0" - jackspeak "^2.3.6" - minimatch "^9.0.1" - minipass "^7.0.4" - path-scurry "^1.11.0" + jackspeak "^3.1.2" + minimatch "^9.0.4" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^1.11.1" glob@^7.1.3, glob@^7.1.4, glob@^7.2.0: version "7.2.3" @@ -3994,11 +3924,6 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-own-property@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/has-own-property/-/has-own-property-0.1.0.tgz#992b0f5bb3a25416f8d4d0cde53f497b9d7b1ea5" - integrity sha512-14qdBKoonU99XDhWcFKZTShK+QV47qU97u8zzoVo9cL5TZ3BmBHXogItSt9qJjR0KUMFRhcCW8uGIGl8nkl7Aw== - has-property-descriptors@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz#52ba30b6c5ec87fd89fa574bc1c39125c6f65340" @@ -4091,11 +4016,6 @@ iconv-lite@0.6.3: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -identity-function@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/identity-function/-/identity-function-1.0.0.tgz#bea1159f0985239be3ca348edf40ce2f0dd2c21d" - integrity sha512-kNrgUK0qI+9qLTBidsH85HjDLpZfrrS0ElquKKe/fJFdB3D7VeKdXXEvOPDUHSHOzdZKCAAaQIWWyp0l2yq6pw== - ignore@^5.1.8, ignore@^5.2.0, ignore@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" @@ -4259,11 +4179,6 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" -is-iterable@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/is-iterable/-/is-iterable-1.1.1.tgz#71f9aa6f113e1d968ebe1d41cff4c8fb23a817bc" - integrity sha512-EdOZCr0NsGE00Pot+x1ZFx9MJK3C6wy91geZpXwvwexDLJvA4nzYyZf7r+EIwSeVsOLDdBz7ATg9NqKTzuNYuQ== - is-negative-zero@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" @@ -4276,11 +4191,6 @@ is-number-object@^1.0.4: dependencies: has-tostringtag "^1.0.0" -is-number@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" - integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== - is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" @@ -4417,15 +4327,10 @@ istanbul-reports@^3.1.3: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -iterable-lookahead@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/iterable-lookahead/-/iterable-lookahead-1.0.0.tgz#896dfcb78680bdb50036e97edb034c8b68a9737f" - integrity sha512-hJnEP2Xk4+44DDwJqUQGdXal5VbyeWLaPyDl2AQc242Zr7iqz4DgpQOrEzglWVMGHMDCkguLHEKxd1+rOsmgSQ== - -jackspeak@^2.3.6: - version "2.3.6" - resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" - integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== +jackspeak@^3.1.2: + version "3.4.2" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.2.tgz#c3d1e00071d52dba8b0dac17cd2a12d0187d2989" + integrity sha512-qH3nOSj8q/8+Eg8LUPOq3C+6HWkpUioIjDsq1+D4zY91oZvpPttw8GwtF1nReRYKXl+1AORyFqtm2f5Q1SB6/Q== dependencies: "@isaacs/cliui" "^8.0.2" optionalDependencies: @@ -4860,7 +4765,7 @@ jest@^29.0.0: import-local "^3.0.2" jest-cli "^29.7.0" -jiti@^1.21.0: +jiti@^1.21.6: version "1.21.6" resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.6.tgz#6c7f7398dd4b3142767f9a168af2f317a428d268" integrity sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w== @@ -4985,16 +4890,15 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.23.0" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.23.0.tgz#655bec539375571baa8cebe059d64ae9ceb4fd41" - integrity sha512-kHXcxmbbpTa+ZPx29KfAbBGP6TK81wXjvHyUPTCbGNFwOVnVUminesaO/of+9KleCzw3pUPiK/k4UsEu+aFK4Q== + version "5.25.1" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.25.1.tgz#656063e411e98fee770cbf66209d6db6abb609a7" + integrity sha512-vUopqkh/gOovZ05qYgTghZpmkM3b2eKYdLTsu11ZTYnYEcsdfQeZs6l4U7Rap4b+1KEDd/yydJsuWl+4NyEA9g== dependencies: - "@ericcornelissen/bash-parser" "0.5.3" - "@nodelib/fs.walk" "2.0.0" + "@nodelib/fs.walk" "1.2.8" "@snyk/github-codeowners" "1.1.0" easy-table "1.2.0" fast-glob "^3.3.2" - jiti "^1.21.0" + jiti "^1.21.6" js-yaml "^4.1.0" minimist "^1.2.8" picocolors "^1.0.0" @@ -5080,11 +4984,6 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" -lodash.curry@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.curry/-/lodash.curry-4.1.1.tgz#248e36072ede906501d75966200a86dab8b23170" - integrity sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA== - lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" @@ -5122,9 +5021,9 @@ loglevel@^1.7.1: integrity sha512-hP3I3kCrDIMuRwAwHltphhDM1r8i55H33GgqjXbrisuJhF4kRhW1dNuxsRklp4bXl8DSdLaNLuiL4A/LWRfxvg== lru-cache@^10.2.0: - version "10.2.2" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.2.tgz#48206bc114c1252940c41b25b41af5b545aca878" - integrity sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ== + version "10.4.2" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.2.tgz#78c38f194b747174cff90e60afabcae40c3619f2" + integrity sha512-voV4dDrdVZVNz84n39LFKDaRzfwhdzJ7akpyXfTMxCgRUp07U3lcJUXRlhTKP17rgt09sUzLi5iCitpEAr+6ug== lru-cache@^5.1.1: version "5.1.1" @@ -5145,13 +5044,6 @@ lunr@^2.3.9: resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== -magic-string@^0.16.0: - version "0.16.0" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.16.0.tgz#970ebb0da7193301285fb1aa650f39bdd81eb45a" - integrity sha512-c4BEos3y6G2qO0B9X7K0FVLOPT9uGrjYwYRLFmDqyl5YMboUviyecnXWp94fJTSMwPw2/sf+CEYt5AGpmklkkQ== - dependencies: - vlq "^0.2.1" - make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -5179,11 +5071,6 @@ makeerror@1.0.12: dependencies: tmpl "1.0.5" -map-obj@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" - integrity sha512-TzQSV2DiMYgoF5RycneKVUzIa9bQsj/B3tTgsE3dOGqlzHnGIDaC7XBE7grnA+8kZPnfqSGFe95VHc2oc0VFUQ== - markdown-it@^14.1.0: version "14.1.0" resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-14.1.0.tgz#3c3c5992883c633db4714ccb4d7b5935d98b7d45" @@ -5273,13 +5160,6 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" -minimatch@^9.0.1: - version "9.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51" - integrity sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw== - dependencies: - brace-expansion "^2.0.1" - minimatch@^9.0.4, minimatch@^9.0.5: version "9.0.5" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" @@ -5292,10 +5172,10 @@ minimist@^1.2.0, minimist@^1.2.6, minimist@^1.2.8: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.4: - version "7.1.1" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.1.tgz#f7f85aff59aa22f110b20e27692465cf3bf89481" - integrity sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA== +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== mkdirp@1.0.4: version "1.0.4" @@ -5378,16 +5258,6 @@ object-keys@^1.1.1: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object-pairs@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-pairs/-/object-pairs-0.1.0.tgz#8276eed81d60b8549d69c5f73a682ab9da4ff32f" - integrity sha512-3ECr6K831I4xX/Mduxr9UC+HPOz/d6WKKYj9p4cmC8Lg8p7g8gitzsxNX5IWlSIgFWN/a4JgrJaoAMKn20oKwA== - -object-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/object-values/-/object-values-1.0.0.tgz#72af839630119e5b98c3b02bb8c27e3237158105" - integrity sha512-+8hwcz/JnQ9EpLIXzN0Rs7DLsBpJNT/xYehtB/jU93tHYr5BFEO8E+JGQNOSqE7opVzz5cGksKFHt7uUJVLSjQ== - object.assign@^4.1.4: version "4.1.5" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" @@ -5514,6 +5384,11 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +package-json-from-dist@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz#e501cd3094b278495eb4258d4c9f6d5ac3019f00" + integrity sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw== + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -5522,9 +5397,9 @@ parent-module@^1.0.0: callsites "^3.0.0" parse-imports@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/parse-imports/-/parse-imports-2.1.0.tgz#22a152f4503da34e8fb89c902383895f59e93d2d" - integrity sha512-JQWgmK2o4w8leUkZeZPatWdAny6vXGU/3siIUvMF6J2rDCud9aTt8h/px9oZJ6U3EcfhngBJ635uPFI0q0VAeA== + version "2.1.1" + resolved "https://registry.yarnpkg.com/parse-imports/-/parse-imports-2.1.1.tgz#ce52141df24990065d72a446a364bffd595577f4" + integrity sha512-TDT4HqzUiTMO1wJRwg/t/hYk8Wdp3iF/ToMIlAoVQfL1Xs/sTxq1dKWSMjMbQmIarfWKymOyly40+zmPHXMqCA== dependencies: es-module-lexer "^1.5.3" slashes "^3.0.12" @@ -5576,7 +5451,7 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -path-scurry@^1.11.0: +path-scurry@^1.11.1: version "1.11.1" resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== @@ -5900,11 +5775,6 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -reverse-arguments@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/reverse-arguments/-/reverse-arguments-1.0.0.tgz#c28095a3a921ac715d61834ddece9027992667cd" - integrity sha512-/x8uIPdTafBqakK0TmPNJzgkLP+3H+yxpUJhCQHsLBg1rYEVNR2D8BRYNWQhVBjyOd7oo1dZRVzIkwMY2oqfYQ== - rfdc@^1.3.1: version "1.4.1" resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.4.1.tgz#778f76c4fb731d93414e8f925fbecf64cce7f6ca" @@ -5918,13 +5788,13 @@ rimraf@^3.0.2: glob "^7.1.3" rimraf@^5.0.0: - version "5.0.7" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-5.0.7.tgz#27bddf202e7d89cb2e0381656380d1734a854a74" - integrity sha512-nV6YcJo5wbLW77m+8KjH8aB/7/rxQy9SZ0HY5shnwULfS+9nmTtVXAJET5NdZmCzA4fPI/Hm1wo/Po/4mopOdg== + version "5.0.9" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-5.0.9.tgz#c3baa1b886eadc2ec7981a06a593c3d01134ffe9" + integrity sha512-3i7b8OcswU6CpU8Ej89quJD4O98id7TtVM5U4Mybh84zQXdrFmDLouWBEEaD/QfO3gDDfH+AGFCGsR7kngzQnA== dependencies: glob "^10.3.7" -run-parallel@^1.1.9, run-parallel@^1.2.0: +run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== @@ -6032,11 +5902,6 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shell-quote-word@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/shell-quote-word/-/shell-quote-word-1.0.1.tgz#e2bdfd22d599fd68886491677e38f560f9d469c9" - integrity sha512-lT297f1WLAdq0A4O+AknIFRP6kkiI3s8C913eJ0XqBxJbZPGWUNkRQk2u8zk4bEAjUJ5i+fSLwB6z1HzeT+DEg== - shiki@^1.9.1: version "1.10.3" resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.10.3.tgz#2276fb21a07043b28c5b16001e6a04fef99dbb8f" @@ -6213,11 +6078,6 @@ string-width@^7.0.0: get-east-asian-width "^1.0.0" strip-ansi "^7.1.0" -string.fromcodepoint@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/string.fromcodepoint/-/string.fromcodepoint-0.2.1.tgz#8d978333c0bc92538f50f383e4888f3e5619d653" - integrity sha512-n69H31OnxSGSZyZbgBlvYIXlrMhJQ0dQAX1js1QDhpaUH6zmU3QYlj07bCwCNlPOu3oRXIubGPl2gDGnHsiCqg== - string.prototype.trim@^1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd" @@ -6376,18 +6236,6 @@ to-fast-properties@^2.0.0: resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== -to-no-case@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/to-no-case/-/to-no-case-1.0.2.tgz#c722907164ef6b178132c8e69930212d1b4aa16a" - integrity sha512-Z3g735FxuZY8rodxV4gH7LxClE4H0hTIyHNIHdk+vpQxjLm0cwnKXq/OFVZ76SOQmto7txVcwSCwkU5kqp+FKg== - -to-pascal-case@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/to-pascal-case/-/to-pascal-case-1.0.0.tgz#0bbdc8df448886ba01535e543327048d0aa1ce78" - integrity sha512-QGMWHqM6xPrcQW57S23c5/3BbYb0Tbe9p+ur98ckRnGDwD4wbbtDiYI38CfmMKNB5Iv0REjs5SNDntTwvDxzZA== - dependencies: - to-space-case "^1.0.0" - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -6395,13 +6243,6 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -to-space-case@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/to-space-case/-/to-space-case-1.0.0.tgz#b052daafb1b2b29dc770cea0163e5ec0ebc9fc17" - integrity sha512-rLdvwXZ39VOn1IxGL3V6ZstoTbwLRckQmn/U8ZDLuWwIXNpuZDhQ3AiRUlhTbOXFVE9C+dR51wM0CBDhk31VcA== - dependencies: - to-no-case "^1.0.0" - tough-cookie@^4.1.2: version "4.1.3" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" @@ -6606,13 +6447,6 @@ undici-types@~5.26.4: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== -unescape-js@^1.0.5: - version "1.1.4" - resolved "https://registry.yarnpkg.com/unescape-js/-/unescape-js-1.1.4.tgz#4bc6389c499cb055a98364a0b3094e1c3d5da395" - integrity sha512-42SD8NOQEhdYntEiUQdYq/1V/YHwr1HLwlHuTJB5InVVdOSbgI6xu8jK5q65yIzuFCfczzyDF/7hbGzVbyCw0g== - dependencies: - string.fromcodepoint "^0.2.1" - unhomoglyph@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/unhomoglyph/-/unhomoglyph-1.0.6.tgz#ea41f926d0fcf598e3b8bb2980c2ddac66b081d3" @@ -6701,11 +6535,6 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" -vlq@^0.2.1: - version "0.2.3" - resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.3.tgz#8f3e4328cf63b1540c0d67e1b2778386f8975b26" - integrity sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow== - w3c-xmlserializer@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz#aebdc84920d806222936e3cdce408e32488a3073" From 996663bf6492858795669d0e225297fb56204653 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 9 Jul 2024 17:12:10 +0000 Subject: [PATCH 337/595] Update dependency rimraf to v6 (#4307) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 61 +++++++++++++++++++++++++++++----------------------- 2 files changed, 35 insertions(+), 28 deletions(-) diff --git a/package.json b/package.json index 742349959fa..f3e59800e0b 100644 --- a/package.json +++ b/package.json @@ -118,7 +118,7 @@ "matrix-mock-request": "^2.5.0", "node-fetch": "^2.7.0", "prettier": "3.3.2", - "rimraf": "^5.0.0", + "rimraf": "^6.0.0", "ts-node": "^10.9.2", "typedoc": "^0.26.0", "typedoc-plugin-coverage": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index 75d21c6ee61..9e502ebd877 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3832,17 +3832,17 @@ glob-to-regexp@^0.4.0: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob@^10.3.7: - version "10.4.5" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" - integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg== +glob@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-11.0.0.tgz#6031df0d7b65eaa1ccb9b29b5ced16cea658e77e" + integrity sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g== dependencies: foreground-child "^3.1.0" - jackspeak "^3.1.2" - minimatch "^9.0.4" + jackspeak "^4.0.1" + minimatch "^10.0.0" minipass "^7.1.2" package-json-from-dist "^1.0.0" - path-scurry "^1.11.1" + path-scurry "^2.0.0" glob@^7.1.3, glob@^7.1.4, glob@^7.2.0: version "7.2.3" @@ -4327,10 +4327,10 @@ istanbul-reports@^3.1.3: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -jackspeak@^3.1.2: - version "3.4.2" - resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.2.tgz#c3d1e00071d52dba8b0dac17cd2a12d0187d2989" - integrity sha512-qH3nOSj8q/8+Eg8LUPOq3C+6HWkpUioIjDsq1+D4zY91oZvpPttw8GwtF1nReRYKXl+1AORyFqtm2f5Q1SB6/Q== +jackspeak@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-4.0.1.tgz#9fca4ce961af6083e259c376e9e3541431f5287b" + integrity sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog== dependencies: "@isaacs/cliui" "^8.0.2" optionalDependencies: @@ -5020,10 +5020,10 @@ loglevel@^1.7.1: resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.9.1.tgz#d63976ac9bcd03c7c873116d41c2a85bafff1be7" integrity sha512-hP3I3kCrDIMuRwAwHltphhDM1r8i55H33GgqjXbrisuJhF4kRhW1dNuxsRklp4bXl8DSdLaNLuiL4A/LWRfxvg== -lru-cache@^10.2.0: - version "10.4.2" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.2.tgz#78c38f194b747174cff90e60afabcae40c3619f2" - integrity sha512-voV4dDrdVZVNz84n39LFKDaRzfwhdzJ7akpyXfTMxCgRUp07U3lcJUXRlhTKP17rgt09sUzLi5iCitpEAr+6ug== +lru-cache@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-11.0.0.tgz#15d93a196f189034d7166caf9fe55e7384c98a21" + integrity sha512-Qv32eSV1RSCfhY3fpPE2GNZ8jgM9X7rdAfemLWqTUxwiyIC4jJ6Sy0fZ8H+oLWevO6i4/bizg7c8d8i6bxrzbA== lru-cache@^5.1.1: version "5.1.1" @@ -5153,6 +5153,13 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== +minimatch@^10.0.0: + version "10.0.1" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-10.0.1.tgz#ce0521856b453c86e25f2c4c0d03e6ff7ddc440b" + integrity sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ== + dependencies: + brace-expansion "^2.0.1" + minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -5172,7 +5179,7 @@ minimist@^1.2.0, minimist@^1.2.6, minimist@^1.2.8: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: +minipass@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== @@ -5451,13 +5458,13 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -path-scurry@^1.11.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" - integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== +path-scurry@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-2.0.0.tgz#9f052289f23ad8bf9397a2a0425e7b8615c58580" + integrity sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg== dependencies: - lru-cache "^10.2.0" - minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + lru-cache "^11.0.0" + minipass "^7.1.2" path-to-regexp@^2.2.1: version "2.4.0" @@ -5787,12 +5794,12 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" -rimraf@^5.0.0: - version "5.0.9" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-5.0.9.tgz#c3baa1b886eadc2ec7981a06a593c3d01134ffe9" - integrity sha512-3i7b8OcswU6CpU8Ej89quJD4O98id7TtVM5U4Mybh84zQXdrFmDLouWBEEaD/QfO3gDDfH+AGFCGsR7kngzQnA== +rimraf@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-6.0.0.tgz#503bb3d9283272384c121792d40e7ee3ab763cde" + integrity sha512-u+yqhM92LW+89cxUQK0SRyvXYQmyuKHx0jkx4W7KfwLGLqJnQM5031Uv1trE4gB9XEXBM/s6MxKlfW95IidqaA== dependencies: - glob "^10.3.7" + glob "^11.0.0" run-parallel@^1.1.9: version "1.2.0" From 53201688a6d359bb6c17b815123f18d86ba3a866 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 9 Jul 2024 21:42:58 +0100 Subject: [PATCH 338/595] Element-R: detect "withheld key" UTD errors, and mark them as such (#4302) Partial fix to element-hq/element-web#27653 --- spec/integ/crypto/crypto.spec.ts | 78 +++++++++++++++++++++++++++++++- spec/unit/models/event.spec.ts | 7 ++- src/crypto-api/index.ts | 6 +++ src/crypto/OlmDevice.ts | 28 ++++++------ src/models/event.ts | 15 ++---- src/rust-crypto/rust-crypto.ts | 11 +++++ 6 files changed, 117 insertions(+), 28 deletions(-) diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 2f1342a544d..66baa23ddc8 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -2333,8 +2333,82 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, }); describe("m.room_key.withheld handling", () => { - // TODO: there are a bunch more tests for this sort of thing in spec/unit/crypto/algorithms/megolm.spec.ts. - // They should be converted to integ tests and moved. + describe.each([ + ["m.blacklisted", "The sender has blocked you.", DecryptionFailureCode.MEGOLM_KEY_WITHHELD], + [ + "m.unverified", + "The sender has disabled encrypting to unverified devices.", + DecryptionFailureCode.MEGOLM_KEY_WITHHELD_FOR_UNVERIFIED_DEVICE, + ], + ])( + "Decryption fails with withheld error if a withheld notice with code '%s' is received", + (withheldCode, expectedMessage, expectedErrorCode) => { + // TODO: test arrival after the event too. + it.each(["before"])("%s the event", async (when) => { + expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); + await startClientAndAwaitFirstSync(); + + // A promise which resolves, with the MatrixEvent which wraps the event, once the decryption fails. + const awaitDecryption = emitPromise(aliceClient, MatrixEventEvent.Decrypted); + + // Send Alice an encrypted room event which looks like it was encrypted with a megolm session + async function sendEncryptedEvent() { + const event = { + ...testData.ENCRYPTED_EVENT, + origin_server_ts: Date.now(), + }; + const syncResponse = { + next_batch: 1, + rooms: { join: { [ROOM_ID]: { timeline: { events: [event] } } } }, + }; + + syncResponder.sendOrQueueSyncResponse(syncResponse); + await syncPromise(aliceClient); + } + + // Send Alice a withheld notice + async function sendWithheldMessage() { + const withheldMessage = { + type: "m.room_key.withheld", + sender: "@bob:example.com", + content: { + algorithm: "m.megolm.v1.aes-sha2", + room_id: ROOM_ID, + sender_key: testData.ENCRYPTED_EVENT.content!.sender_key, + session_id: testData.ENCRYPTED_EVENT.content!.session_id, + code: withheldCode, + reason: "zzz", + }, + }; + + syncResponder.sendOrQueueSyncResponse({ + next_batch: 1, + to_device: { events: [withheldMessage] }, + }); + await syncPromise(aliceClient); + } + + if (when === "before") { + await sendWithheldMessage(); + await sendEncryptedEvent(); + } else { + await sendEncryptedEvent(); + await sendWithheldMessage(); + } + + const ev = await awaitDecryption; + expect(ev.getContent()).toEqual({ + body: `** Unable to decrypt: DecryptionError: ${expectedMessage} **`, + msgtype: "m.bad.encrypted", + }); + + expect(ev.decryptionFailureReason).toEqual(expectedErrorCode); + + // `isEncryptedDisabledForUnverifiedDevices` should be true for `m.unverified` and false for other errors. + expect(ev.isEncryptedDisabledForUnverifiedDevices).toEqual(withheldCode === "m.unverified"); + }); + }, + ); oldBackendOnly("does not block decryption on an 'm.unavailable' report", async function () { // there may be a key downloads for alice diff --git a/spec/unit/models/event.spec.ts b/spec/unit/models/event.spec.ts index d308d01395f..56f31482786 100644 --- a/spec/unit/models/event.spec.ts +++ b/spec/unit/models/event.spec.ts @@ -412,7 +412,12 @@ describe("MatrixEvent", () => { const crypto = { decryptEvent: jest .fn() - .mockRejectedValue("DecryptionError: The sender has disabled encrypting to unverified devices."), + .mockRejectedValue( + new DecryptionError( + DecryptionFailureCode.MEGOLM_KEY_WITHHELD_FOR_UNVERIFIED_DEVICE, + "The sender has disabled encrypting to unverified devices.", + ), + ), } as unknown as Crypto; await encryptedEvent.attemptDecryption(crypto); diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index f308b33be57..2522fb1efdc 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -557,6 +557,12 @@ export enum DecryptionFailureCode { /** Message was encrypted with a Megolm session whose keys have not been shared with us. */ MEGOLM_UNKNOWN_INBOUND_SESSION_ID = "MEGOLM_UNKNOWN_INBOUND_SESSION_ID", + /** A special case of {@link MEGOLM_UNKNOWN_INBOUND_SESSION_ID}: the sender has told us it is withholding the key. */ + MEGOLM_KEY_WITHHELD = "MEGOLM_KEY_WITHHELD", + + /** A special case of {@link MEGOLM_KEY_WITHHELD}: the sender has told us it is withholding the key, because the current device is unverified. */ + MEGOLM_KEY_WITHHELD_FOR_UNVERIFIED_DEVICE = "MEGOLM_KEY_WITHHELD_FOR_UNVERIFIED_DEVICE", + /** Message was encrypted with a Megolm session which has been shared with us, but in a later ratchet state. */ OLM_UNKNOWN_MESSAGE_INDEX = "OLM_UNKNOWN_MESSAGE_INDEX", diff --git a/src/crypto/OlmDevice.ts b/src/crypto/OlmDevice.ts index 6e645b72b97..17783af0b06 100644 --- a/src/crypto/OlmDevice.ts +++ b/src/crypto/OlmDevice.ts @@ -1221,13 +1221,13 @@ export class OlmDevice { this.getInboundGroupSession(roomId, senderKey, sessionId, txn, (session, sessionData, withheld) => { if (session === null || sessionData === null) { if (withheld) { - error = new DecryptionError( - DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID, - calculateWithheldMessage(withheld), - { - session: senderKey + "|" + sessionId, - }, - ); + const failureCode = + withheld.code === "m.unverified" + ? DecryptionFailureCode.MEGOLM_KEY_WITHHELD_FOR_UNVERIFIED_DEVICE + : DecryptionFailureCode.MEGOLM_KEY_WITHHELD; + error = new DecryptionError(failureCode, calculateWithheldMessage(withheld), { + session: senderKey + "|" + sessionId, + }); } result = null; return; @@ -1237,13 +1237,13 @@ export class OlmDevice { res = session.decrypt(body); } catch (e) { if ((e)?.message === "OLM.UNKNOWN_MESSAGE_INDEX" && withheld) { - error = new DecryptionError( - DecryptionFailureCode.MEGOLM_UNKNOWN_INBOUND_SESSION_ID, - calculateWithheldMessage(withheld), - { - session: senderKey + "|" + sessionId, - }, - ); + const failureCode = + withheld.code === "m.unverified" + ? DecryptionFailureCode.MEGOLM_KEY_WITHHELD_FOR_UNVERIFIED_DEVICE + : DecryptionFailureCode.MEGOLM_KEY_WITHHELD; + error = new DecryptionError(failureCode, calculateWithheldMessage(withheld), { + session: senderKey + "|" + sessionId, + }); } else { error = e; } diff --git a/src/models/event.ts b/src/models/event.ts index e78a2f5b233..a5cd3abe4cf 100644 --- a/src/models/event.ts +++ b/src/models/event.ts @@ -43,7 +43,6 @@ import { MatrixError } from "../http-api"; import { TypedEventEmitter } from "./typed-event-emitter"; import { EventStatus } from "./event-status"; import { CryptoBackend, DecryptionError } from "../common-crypto/CryptoBackend"; -import { WITHHELD_MESSAGES } from "../crypto/OlmDevice"; import { IAnnotatedPushRule } from "../@types/PushRules"; import { Room } from "./room"; import { EventTimeline } from "./event-timeline"; @@ -312,12 +311,6 @@ export class MatrixEvent extends TypedEventEmitter Date: Wed, 10 Jul 2024 08:01:38 +0000 Subject: [PATCH 339/595] Update dependency typedoc to v0.26.4 (#4309) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9e502ebd877..4288708cb6a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6419,9 +6419,9 @@ typedoc-plugin-missing-exports@^3.0.0: integrity sha512-R7D8fYrK34mBFZSlF1EqJxfqiUSlQSmyrCiQgTQD52nNm6+kUtqwiaqaNkuJ2rA2wBgWFecUA8JzHT7x2r7ePg== typedoc@^0.26.0: - version "0.26.3" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.3.tgz#723b2c4ca5dd1d9baf43d6a5a1f4d640ba4207a8" - integrity sha512-6d2Sw9disvvpdk4K7VNjKr5/3hzijtfQVHRthhDqJgnhMHy1wQz4yPMJVKXElvnZhFr0nkzo+GzjXDTRV5yLpg== + version "0.26.4" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.4.tgz#7e83047369a29a710d429dac20996680cae9a314" + integrity sha512-FlW6HpvULDKgc3rK04V+nbFyXogPV88hurarDPOjuuB5HAwuAlrCMQ5NeH7Zt68a/ikOKu6Z/0hFXAeC9xPccQ== dependencies: lunr "^2.3.9" markdown-it "^14.1.0" From f17a4fedb964a91ba436f1412efada75fcde7bf8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 10 Jul 2024 17:31:06 +0100 Subject: [PATCH 340/595] Lock file maintenance (#4199) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 1470 ++++++++++++++++++++--------------------------------- 1 file changed, 545 insertions(+), 925 deletions(-) diff --git a/yarn.lock b/yarn.lock index 4288708cb6a..7dd355b8907 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,11 +2,6 @@ # yarn lockfile v1 -"@aashutoshrathi/word-wrap@^1.2.3": - version "1.2.6" - resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" - integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== - "@action-validator/cli@^0.6.0": version "0.6.0" resolved "https://registry.yarnpkg.com/@action-validator/cli/-/cli-0.6.0.tgz#02a29e322d3794903896183281eed2b55c685851" @@ -43,31 +38,7 @@ "@nicolo-ribaudo/chokidar-2" "2.1.8-no-fsevents.3" chokidar "^3.4.0" -"@babel/code-frame@^7.0.0": - version "7.22.13" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e" - integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w== - dependencies: - "@babel/highlight" "^7.22.13" - chalk "^2.4.2" - -"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.22.13": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.23.5.tgz#9009b69a8c602293476ad598ff53e4562e15c244" - integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== - dependencies: - "@babel/highlight" "^7.23.4" - chalk "^2.4.2" - -"@babel/code-frame@^7.23.5": - version "7.24.2" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.2.tgz#718b4b19841809a58b29b68cde80bc5e1aa6d9ae" - integrity sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ== - dependencies: - "@babel/highlight" "^7.24.2" - picocolors "^1.0.0" - -"@babel/code-frame@^7.24.7": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.7.tgz#882fd9e09e8ee324e496bd040401c6f046ef4465" integrity sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA== @@ -80,12 +51,7 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.7.tgz#d23bbea508c3883ba8251fb4164982c36ea577ed" integrity sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw== -"@babel/compat-data@^7.23.5": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.6.tgz#b3600217688cabb26e25f8e467019e66d71b7ae2" - integrity sha512-aC2DGhBq5eEdyXWqrDInSqQjO0k8xtPRf5YylULqx8MCd6jBtzqfta/3ETMRpuKIc5hyswfO80ObyA1MvkCcUQ== - -"@babel/core@^7.0.0", "@babel/core@^7.12.10": +"@babel/core@^7.0.0", "@babel/core@^7.11.6", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.23.9": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.7.tgz#b676450141e0b52a3d43bc91da86aa608f950ac4" integrity sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g== @@ -106,27 +72,6 @@ json5 "^2.2.3" semver "^6.3.1" -"@babel/core@^7.11.6", "@babel/core@^7.12.3": - version "7.22.17" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.22.17.tgz#2f9b0b395985967203514b24ee50f9fd0639c866" - integrity sha512-2EENLmhpwplDux5PSsZnSbnSkB3tZ6QTksgO25xwEL7pIDcNOMhF5v/s6RzwjMZzZzw9Ofc30gHv5ChCC8pifQ== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.22.13" - "@babel/generator" "^7.22.15" - "@babel/helper-compilation-targets" "^7.22.15" - "@babel/helper-module-transforms" "^7.22.17" - "@babel/helpers" "^7.22.15" - "@babel/parser" "^7.22.16" - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.22.17" - "@babel/types" "^7.22.17" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - "@babel/eslint-parser@^7.12.10": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.7.tgz#27ebab1a1ec21f48ae191a8aaac5b82baf80d9c7" @@ -143,27 +88,7 @@ dependencies: eslint-rule-composer "^0.3.0" -"@babel/generator@^7.22.15", "@babel/generator@^7.7.2": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.22.15.tgz#1564189c7ec94cb8f77b5e8a90c4d200d21b2339" - integrity sha512-Zu9oWARBqeVOW0dZOjXc3JObrzuqothQ3y/n1kUtrjCoCPLkXUwMvOo/F/TCfoHMbWIFlWwpZtkZVb9ga4U2pA== - dependencies: - "@babel/types" "^7.22.15" - "@jridgewell/gen-mapping" "^0.3.2" - "@jridgewell/trace-mapping" "^0.3.17" - jsesc "^2.5.1" - -"@babel/generator@^7.23.0": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.3.tgz#86e6e83d95903fbe7613f448613b8b319f330a8e" - integrity sha512-keeZWAV4LU3tW0qRi19HRpabC/ilM0HRBBzf9/k8FFiG4KVpiv0FIy4hHfLfFQZNhziCTPTmd59zoyv6DNISzg== - dependencies: - "@babel/types" "^7.23.3" - "@jridgewell/gen-mapping" "^0.3.2" - "@jridgewell/trace-mapping" "^0.3.17" - jsesc "^2.5.1" - -"@babel/generator@^7.24.7": +"@babel/generator@^7.24.7", "@babel/generator@^7.7.2": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.7.tgz#1654d01de20ad66b4b4d99c135471bc654c55e6d" integrity sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA== @@ -188,17 +113,6 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-compilation-targets@^7.22.15": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" - integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== - dependencies: - "@babel/compat-data" "^7.23.5" - "@babel/helper-validator-option" "^7.23.5" - browserslist "^4.22.2" - lru-cache "^5.1.1" - semver "^6.3.1" - "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz#4eb6c4a80d6ffeac25ab8cd9a21b5dfa48d503a9" @@ -245,11 +159,6 @@ lodash.debounce "^4.0.8" resolve "^1.14.2" -"@babel/helper-environment-visitor@^7.22.20", "@babel/helper-environment-visitor@^7.22.5": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" - integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== - "@babel/helper-environment-visitor@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz#4b31ba9551d1f90781ba83491dd59cf9b269f7d9" @@ -257,14 +166,6 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-function-name@^7.23.0": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" - integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== - dependencies: - "@babel/template" "^7.22.15" - "@babel/types" "^7.23.0" - "@babel/helper-function-name@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz#75f1e1725742f39ac6584ee0b16d94513da38dd2" @@ -273,13 +174,6 @@ "@babel/template" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-hoist-variables@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" - integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== - dependencies: - "@babel/types" "^7.22.5" - "@babel/helper-hoist-variables@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz#b4ede1cde2fd89436397f30dc9376ee06b0f25ee" @@ -295,13 +189,6 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-module-imports@^7.22.15": - version "7.24.3" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128" - integrity sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg== - dependencies: - "@babel/types" "^7.24.0" - "@babel/helper-module-imports@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz#f2f980392de5b84c3328fc71d38bd81bbb83042b" @@ -310,17 +197,6 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-module-transforms@^7.22.17": - version "7.22.17" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.22.17.tgz#7edf129097a51ccc12443adbc6320e90eab76693" - integrity sha512-XouDDhQESrLHTpnBtCKExJdyY4gJCdrvH2Pyv8r8kovX2U8G0dRUOT45T9XlbLtuu9CLXP15eusnkprhoPV5iQ== - dependencies: - "@babel/helper-environment-visitor" "^7.22.5" - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-simple-access" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/helper-validator-identifier" "^7.22.15" - "@babel/helper-module-transforms@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz#31b6c9a2930679498db65b685b1698bfd6c7daf8" @@ -362,13 +238,6 @@ "@babel/helper-member-expression-to-functions" "^7.24.7" "@babel/helper-optimise-call-expression" "^7.24.7" -"@babel/helper-simple-access@^7.22.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz#50da5b72f58c16b07fbd992810be6049478e85ba" - integrity sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ== - dependencies: - "@babel/types" "^7.24.5" - "@babel/helper-simple-access@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz#bcade8da3aec8ed16b9c4953b74e506b51b5edb3" @@ -385,13 +254,6 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-split-export-declaration@^7.22.6": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz#b9a67f06a46b0b339323617c8c6213b9055a78b6" - integrity sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q== - dependencies: - "@babel/types" "^7.24.5" - "@babel/helper-split-export-declaration@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz#83949436890e07fa3d6873c61a96e3bbf692d856" @@ -399,46 +261,16 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-string-parser@^7.22.5": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" - integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== - -"@babel/helper-string-parser@^7.24.1": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.6.tgz#28583c28b15f2a3339cfafafeaad42f9a0e828df" - integrity sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q== - -"@babel/helper-string-parser@^7.24.6", "@babel/helper-string-parser@^7.24.7": +"@babel/helper-string-parser@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz#4d2d0f14820ede3b9807ea5fc36dfc8cd7da07f2" integrity sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg== -"@babel/helper-validator-identifier@^7.22.15", "@babel/helper-validator-identifier@^7.22.19": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" - integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== - -"@babel/helper-validator-identifier@^7.22.20": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz#918b1a7fa23056603506370089bd990d8720db62" - integrity sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA== - -"@babel/helper-validator-identifier@^7.24.5": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.6.tgz#08bb6612b11bdec78f3feed3db196da682454a5e" - integrity sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw== - -"@babel/helper-validator-identifier@^7.24.6", "@babel/helper-validator-identifier@^7.24.7": +"@babel/helper-validator-identifier@^7.24.5", "@babel/helper-validator-identifier@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== -"@babel/helper-validator-option@^7.23.5": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.6.tgz#59d8e81c40b7d9109ab7e74457393442177f460a" - integrity sha512-Jktc8KkF3zIkePb48QO+IapbXlSapOW9S+ogZZkcO6bABgYAxtZcjZ/O005111YLf+j4M84uEgwYoidDkXbCkQ== - "@babel/helper-validator-option@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz#24c3bb77c7a425d1742eec8fb433b5a1b38e62f6" @@ -454,15 +286,6 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helpers@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.22.15.tgz#f09c3df31e86e3ea0b7ff7556d85cdebd47ea6f1" - integrity sha512-7pAjK0aSdxOwR+CcYAqgWOGy5dcfvzsTIfFTb2odQqW47MDfv14UaJDY6eng8ylM2EaeKXdxaSWESbkmaQHTmw== - dependencies: - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.22.15" - "@babel/types" "^7.22.15" - "@babel/helpers@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.7.tgz#aa2ccda29f62185acb5d42fb4a3a1b1082107416" @@ -471,35 +294,6 @@ "@babel/template" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/highlight@^7.22.13": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.23.4.tgz#edaadf4d8232e1a961432db785091207ead0621b" - integrity sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A== - dependencies: - "@babel/helper-validator-identifier" "^7.22.20" - chalk "^2.4.2" - js-tokens "^4.0.0" - -"@babel/highlight@^7.23.4": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.1.tgz#21f3f5391c793b3f0d6dbb40f898c48cc6ad4215" - integrity sha512-EPmDPxidWe/Ex+HTFINpvXdPHRmgSF3T8hGvzondYjmgzTQ/0EbLpSxyt+w3zzlYSk9cNBQNF9k0dT5Z2NiBjw== - dependencies: - "@babel/helper-validator-identifier" "^7.22.20" - chalk "^2.4.2" - js-tokens "^4.0.0" - picocolors "^1.0.0" - -"@babel/highlight@^7.24.2": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.5.tgz#bc0613f98e1dd0720e99b2a9ee3760194a704b6e" - integrity sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw== - dependencies: - "@babel/helper-validator-identifier" "^7.24.5" - chalk "^2.4.2" - js-tokens "^4.0.0" - picocolors "^1.0.0" - "@babel/highlight@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.7.tgz#a05ab1df134b286558aae0ed41e6c5f731bf409d" @@ -510,27 +304,7 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.16": - version "7.22.16" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.16.tgz#180aead7f247305cce6551bea2720934e2fa2c95" - integrity sha512-+gPfKv8UWeKKeJTUxe59+OobVcrYHETCsORl61EmSkmgymguYk/X5bp7GuUIXaFsc6y++v8ZxPsLSSuujqDphA== - -"@babel/parser@^7.22.15": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.9.tgz#7b903b6149b0f8fa7ad564af646c4c38a77fc44b" - integrity sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA== - -"@babel/parser@^7.23.0": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.3.tgz#0ce0be31a4ca4f1884b5786057cadcb6c3be58f9" - integrity sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw== - -"@babel/parser@^7.24.0": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.5.tgz#4a4d5ab4315579e5398a82dcf636ca80c3392790" - integrity sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg== - -"@babel/parser@^7.24.7": +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" integrity sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw== @@ -642,20 +416,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.24.7": +"@babel/plugin-syntax-jsx@^7.24.7", "@babel/plugin-syntax-jsx@^7.7.2": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.7.tgz#39a1fa4a7e3d3d7f34e2acc6be585b718d30e02d" integrity sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ== dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-syntax-jsx@^7.7.2": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz#a6b68e84fb76e759fc3b93e901876ffabbe1d918" - integrity sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" @@ -712,20 +479,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.24.7": +"@babel/plugin-syntax-typescript@^7.24.7", "@babel/plugin-syntax-typescript@^7.7.2": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.7.tgz#58d458271b4d3b6bb27ee6ac9525acbb259bad1c" integrity sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA== dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-syntax-typescript@^7.7.2": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz#aac8d383b062c5072c647a31ef990c1d0af90272" - integrity sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-unicode-sets-regex@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357" @@ -1262,16 +1022,7 @@ dependencies: regenerator-runtime "^0.14.0" -"@babel/template@^7.22.15": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.0.tgz#c6a524aa93a4a05d66aaf31654258fae69d87d50" - integrity sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/parser" "^7.24.0" - "@babel/types" "^7.24.0" - -"@babel/template@^7.24.7": +"@babel/template@^7.24.7", "@babel/template@^7.3.3": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.7.tgz#02efcee317d0609d2c07117cb70ef8fb17ab7315" integrity sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig== @@ -1280,31 +1031,6 @@ "@babel/parser" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/template@^7.3.3": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" - integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w== - dependencies: - "@babel/code-frame" "^7.22.13" - "@babel/parser" "^7.22.15" - "@babel/types" "^7.22.15" - -"@babel/traverse@^7.22.15", "@babel/traverse@^7.22.17": - version "7.23.2" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.2.tgz#329c7a06735e144a506bdb2cad0268b7f46f4ad8" - integrity sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw== - dependencies: - "@babel/code-frame" "^7.22.13" - "@babel/generator" "^7.23.0" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.23.0" - "@babel/types" "^7.23.0" - debug "^4.1.0" - globals "^11.1.0" - "@babel/traverse@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.7.tgz#de2b900163fa741721ba382163fe46a936c40cf5" @@ -1321,52 +1047,7 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.3.3": - version "7.22.17" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.17.tgz#f753352c4610ffddf9c8bc6823f9ff03e2303eee" - integrity sha512-YSQPHLFtQNE5xN9tHuZnzu8vPr61wVTBZdfv1meex1NBosa4iT05k/Jw06ddJugi4bk7The/oSwQGFcksmEJQg== - dependencies: - "@babel/helper-string-parser" "^7.22.5" - "@babel/helper-validator-identifier" "^7.22.15" - to-fast-properties "^2.0.0" - -"@babel/types@^7.22.15", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.5.tgz#7661930afc638a5383eb0c4aee59b74f38db84d7" - integrity sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ== - dependencies: - "@babel/helper-string-parser" "^7.24.1" - "@babel/helper-validator-identifier" "^7.24.5" - to-fast-properties "^2.0.0" - -"@babel/types@^7.22.17": - version "7.22.19" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.19.tgz#7425343253556916e440e662bb221a93ddb75684" - integrity sha512-P7LAw/LbojPzkgp5oznjE6tQEIWbp4PkkfrZDINTro9zgBRtI324/EYsiSI7lhPbpIQ+DCeR2NNmMWANGGfZsg== - dependencies: - "@babel/helper-string-parser" "^7.22.5" - "@babel/helper-validator-identifier" "^7.22.19" - to-fast-properties "^2.0.0" - -"@babel/types@^7.22.5": - version "7.24.6" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.6.tgz#ba4e1f59870c10dc2fa95a274ac4feec23b21912" - integrity sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ== - dependencies: - "@babel/helper-string-parser" "^7.24.6" - "@babel/helper-validator-identifier" "^7.24.6" - to-fast-properties "^2.0.0" - -"@babel/types@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.3.tgz#d5ea892c07f2ec371ac704420f4dcdb07b5f9598" - integrity sha512-OZnvoH2l8PK5eUvEcUyCt/sXgr/h+UWpVuBbOljwcrAgUl6lpchoQ++PHGyQy1AtYnVA6CEq3y5xeEI10brpXw== - dependencies: - "@babel/helper-string-parser" "^7.22.5" - "@babel/helper-validator-identifier" "^7.22.20" - to-fast-properties "^2.0.0" - -"@babel/types@^7.24.7", "@babel/types@^7.4.4": +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.24.7", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.7.tgz#6027fe12bc1aa724cd32ab113fb7f1988f1f66f2" integrity sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q== @@ -1396,14 +1077,13 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@es-joy/jsdoccomment@~0.43.1": - version "0.43.1" - resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.43.1.tgz#4b1979b7b4ff8b596fb19a3aa696a438e44608d7" - integrity sha512-I238eDtOolvCuvtxrnqtlBaw0BwdQuYqK7eA6XIonicMdOOOb75mqdIzkGDUbS04+1Di007rgm9snFRNeVrOog== +"@es-joy/jsdoccomment@~0.45.0": + version "0.45.0" + resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.45.0.tgz#20410348ab4d703e602179f5c79f9d59819377a0" + integrity sha512-U8T5eXLkP78Sr12rR91494GhlEgp8jqs7OaUHbdUffADxU1JQmKjZm5uSyAEGv2oolDMJ+wce7yylfnnwOevtA== dependencies: "@types/eslint" "^8.56.5" "@types/estree" "^1.0.5" - "@typescript-eslint/types" "^7.2.0" comment-parser "1.4.1" esquery "^1.5.0" jsdoc-type-pratt-parser "~4.0.0" @@ -1415,16 +1095,11 @@ dependencies: eslint-visitor-keys "^3.3.0" -"@eslint-community/regexpp@^4.10.0": +"@eslint-community/regexpp@^4.10.0", "@eslint-community/regexpp@^4.6.1": version "4.11.0" resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.11.0.tgz#b0ffd0312b4a3fd2d6f77237e7248a5ad3a680ae" integrity sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A== -"@eslint-community/regexpp@^4.6.1": - version "4.6.2" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.6.2.tgz#1816b5f6948029c5eaacb0703b850ee0cb37d8f8" - integrity sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw== - "@eslint/eslintrc@^2.1.4": version "2.1.4" resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad" @@ -1441,9 +1116,9 @@ strip-json-comments "^3.1.1" "@eslint/eslintrc@^3.0.2": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.0.2.tgz#36180f8e85bf34d2fe3ccc2261e8e204a411ab4e" - integrity sha512-wV19ZEGEMAC1eHgrS7UQPqsdEiCIbTKTasEfcXAigzoXICcqZSjBZEHlZwNVvKg6UBCjSlos84XiLqsRJnIcIg== + version "3.1.0" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.1.0.tgz#dbd3482bfd91efa663cbe7aa1f506839868207b6" + integrity sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ== dependencies: ajv "^6.12.4" debug "^4.3.2" @@ -1475,9 +1150,9 @@ integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== "@humanwhocodes/object-schema@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz#d9fae00a2d5cb40f92cfe64b47ad749fbc38f917" - integrity sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw== + version "2.0.3" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3" + integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA== "@isaacs/cliui@^8.0.2": version "8.0.2" @@ -1502,7 +1177,7 @@ js-yaml "^3.13.1" resolve-from "^5.0.0" -"@istanbuljs/schema@^0.1.2": +"@istanbuljs/schema@^0.1.2", "@istanbuljs/schema@^0.1.3": version "0.1.3" resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== @@ -1725,7 +1400,7 @@ "@types/yargs" "^17.0.8" chalk "^4.0.0" -"@jridgewell/gen-mapping@^0.3.2", "@jridgewell/gen-mapping@^0.3.5": +"@jridgewell/gen-mapping@^0.3.5": version "0.3.5" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== @@ -1734,12 +1409,7 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.24" -"@jridgewell/resolve-uri@^3.0.3": - version "3.1.1" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" - integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== - -"@jridgewell/resolve-uri@^3.1.0": +"@jridgewell/resolve-uri@^3.0.3", "@jridgewell/resolve-uri@^3.1.0": version "3.1.2" resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== @@ -1750,9 +1420,9 @@ integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== "@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": - version "1.4.15" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" - integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + version "1.5.0" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" + integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== "@jridgewell/trace-mapping@0.3.9": version "0.3.9" @@ -1762,15 +1432,7 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18": - version "0.3.19" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz#f8a3249862f91be48d3127c3cfe992f79b4b8811" - integrity sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw== - dependencies: - "@jridgewell/resolve-uri" "^3.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" - -"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": +"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": version "0.3.25" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== @@ -1891,9 +1553,9 @@ integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== "@sinonjs/commons@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.0.tgz#beb434fe875d965265e04722ccfc21df7f755d72" - integrity sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA== + version "3.0.1" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.1.tgz#1029357e44ca901a615585f6d27738dbc89084cd" + integrity sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ== dependencies: type-detect "4.0.8" @@ -1919,9 +1581,9 @@ integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== "@tsconfig/node10@^1.0.7": - version "1.0.9" - resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2" - integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA== + version "1.0.11" + resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.11.tgz#6ee46400685f130e278128c7b38b7e031ff5b2f2" + integrity sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw== "@tsconfig/node12@^1.0.7": version "1.0.11" @@ -1939,9 +1601,9 @@ integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== "@types/babel__core@^7.1.14": - version "7.20.1" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.1.tgz#916ecea274b0c776fec721e333e55762d3a9614b" - integrity sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw== + version "7.20.5" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017" + integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA== dependencies: "@babel/parser" "^7.20.7" "@babel/types" "^7.20.7" @@ -1950,24 +1612,24 @@ "@types/babel__traverse" "*" "@types/babel__generator@*": - version "7.6.4" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" - integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg== + version "7.6.8" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.8.tgz#f836c61f48b1346e7d2b0d93c6dacc5b9535d3ab" + integrity sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw== dependencies: "@babel/types" "^7.0.0" "@types/babel__template@*": - version "7.4.1" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" - integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== + version "7.4.4" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.4.tgz#5672513701c1b2199bc6dad636a9d7491586766f" + integrity sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" "@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": - version "7.20.1" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.1.tgz#dd6f1d2411ae677dcb2db008c962598be31d6acf" - integrity sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg== + version "7.20.6" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.6.tgz#8dc9f0ae0f202c08d8d4dab648912c8d6038e3f7" + integrity sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg== dependencies: "@babel/types" "^7.20.7" @@ -2005,14 +1667,14 @@ integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== "@types/events@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" - integrity sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g== + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.3.tgz#a8ef894305af28d1fc6d2dfdfc98e899591ea529" + integrity sha512-trOc4AAUThEz9hapPtSd7wf5tiQKvTtu5b371UxXdTuqzIh0ArcRspRP0i0Viu+LXstIQ1z96t1nsPxT9ol01g== "@types/graceful-fs@^4.1.3": - version "4.1.6" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae" - integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw== + version "4.1.9" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4" + integrity sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ== dependencies: "@types/node" "*" @@ -2023,16 +1685,11 @@ dependencies: "@types/unist" "*" -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.6" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w== -"@types/istanbul-lib-coverage@^2.0.1": - version "2.0.4" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" - integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== - "@types/istanbul-lib-report@*": version "3.0.3" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz#53047614ae72e19fc0401d872de3ae2b4ce350bf" @@ -2080,9 +1737,9 @@ integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g== "@types/node@*": - version "20.11.16" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.16.tgz#4411f79411514eb8e2926f036c86c9f0e4ec6708" - integrity sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ== + version "20.14.10" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.10.tgz#a1a218290f1b6428682e3af044785e5874db469a" + integrity sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ== dependencies: undici-types "~5.26.4" @@ -2094,9 +1751,9 @@ undici-types "~5.26.4" "@types/normalize-package-data@^2.4.0": - version "2.4.3" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.3.tgz#291c243e4b94dbfbc0c0ee26b7666f1d5c030e2c" - integrity sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg== + version "2.4.4" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz#56e2cc26c397c038fab0e3a917a12d5c5909e901" + integrity sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA== "@types/retry@0.12.0": version "0.12.0" @@ -2166,14 +1823,6 @@ "@typescript-eslint/visitor-keys" "7.16.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@7.12.0": - version "7.12.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.12.0.tgz#259c014362de72dd34f995efe6bd8dda486adf58" - integrity sha512-itF1pTnN6F3unPak+kutH9raIkL3lhH1YRPGgt7QQOh43DQKVJXmWkpb+vpc/TiDHs6RSd9CTbDsc/Y+Ygq7kg== - dependencies: - "@typescript-eslint/types" "7.12.0" - "@typescript-eslint/visitor-keys" "7.12.0" - "@typescript-eslint/scope-manager@7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.16.0.tgz#eb0757af5720c9c53c8010d7a0355ae27e17b7e5" @@ -2192,30 +1841,11 @@ debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@7.12.0": - version "7.12.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.12.0.tgz#bf208f971a8da1e7524a5d9ae2b5f15192a37981" - integrity sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg== - -"@typescript-eslint/types@7.16.0", "@typescript-eslint/types@^7.2.0": +"@typescript-eslint/types@7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.16.0.tgz#60a19d7e7a6b1caa2c06fac860829d162a036ed2" integrity sha512-fecuH15Y+TzlUutvUl9Cc2XJxqdLr7+93SQIbcZfd4XRGGKoxyljK27b+kxKamjRkU7FYC6RrbSCg0ALcZn/xw== -"@typescript-eslint/typescript-estree@7.12.0": - version "7.12.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.12.0.tgz#e6c1074f248b3db6573ab6a7c47a39c4cd498ff9" - integrity sha512-5bwqLsWBULv1h6pn7cMW5dXX/Y2amRqLaKqsASVwbBHMZSnHqE/HN4vT4fE0aFsiwxYvr98kqOWh1a8ZKXalCQ== - dependencies: - "@typescript-eslint/types" "7.12.0" - "@typescript-eslint/visitor-keys" "7.12.0" - debug "^4.3.4" - globby "^11.1.0" - is-glob "^4.0.3" - minimatch "^9.0.4" - semver "^7.6.0" - ts-api-utils "^1.3.0" - "@typescript-eslint/typescript-estree@7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.16.0.tgz#98ac779d526fab2a781e5619c9250f3e33867c09" @@ -2230,7 +1860,7 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.16.0": +"@typescript-eslint/utils@7.16.0", "@typescript-eslint/utils@^6.0.0 || ^7.0.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.16.0.tgz#b38dc0ce1778e8182e227c98d91d3418449aa17f" integrity sha512-PqP4kP3hb4r7Jav+NiRCntlVzhxBNWq6ZQ+zQwII1y/G/1gdIPeYDCKr2+dH6049yJQsWZiHU6RlwvIFBXXGNA== @@ -2240,24 +1870,6 @@ "@typescript-eslint/types" "7.16.0" "@typescript-eslint/typescript-estree" "7.16.0" -"@typescript-eslint/utils@^6.0.0 || ^7.0.0": - version "7.12.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.12.0.tgz#c6e58fd7f724cdccc848f71e388ad80cbdb95dd0" - integrity sha512-Y6hhwxwDx41HNpjuYswYp6gDbkiZ8Hin9Bf5aJQn1bpTs3afYY4GX+MPYxma8jtoIV2GRwTM/UJm/2uGCVv+DQ== - dependencies: - "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.12.0" - "@typescript-eslint/types" "7.12.0" - "@typescript-eslint/typescript-estree" "7.12.0" - -"@typescript-eslint/visitor-keys@7.12.0": - version "7.12.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.12.0.tgz#c053b55a996679528beeedd8e565710ce1ae1ad3" - integrity sha512-uZk7DevrQLL3vSnfFl5bj4sL75qC9D6EdjemIdbtkuUmIheWpuiiylSY01JxJE7+zGrOWDZrp1WxOuDntvKrHQ== - dependencies: - "@typescript-eslint/types" "7.12.0" - eslint-visitor-keys "^3.4.3" - "@typescript-eslint/visitor-keys@7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.16.0.tgz#a1d99fa7a3787962d6e0efd436575ef840e23b06" @@ -2289,30 +1901,17 @@ acorn-jsx@^5.3.2: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn-walk@^8.0.2: - version "8.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" - integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== - -acorn-walk@^8.1.1: - version "8.3.1" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.1.tgz#2f10f5b69329d90ae18c58bf1fa8fccd8b959a43" - integrity sha512-TgUZgYvqZprrl7YldZNoa9OciCAyZR+Ejm9eXzKCmjsF5IKp/wgQ7Z/ZpjpGTIUPwrHQIcYeI8qDh4PsEwxMbw== - -acorn@^8.1.0, acorn@^8.8.1, acorn@^8.9.0: - version "8.10.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" - integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== - -acorn@^8.11.3: - version "8.11.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" - integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== +acorn-walk@^8.0.2, acorn-walk@^8.1.1: + version "8.3.3" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.3.tgz#9caeac29eefaa0c41e3d4c65137de4d6f34df43e" + integrity sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw== + dependencies: + acorn "^8.11.0" -acorn@^8.4.1: - version "8.11.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.2.tgz#ca0d78b51895be5390a5903c5b3bdcdaf78ae40b" - integrity sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w== +acorn@^8.1.0, acorn@^8.11.0, acorn@^8.12.0, acorn@^8.4.1, acorn@^8.8.1, acorn@^8.9.0: + version "8.12.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.1.tgz#71616bdccbe25e27a54439e0046e89ca76df2248" + integrity sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg== agent-base@6: version "6.0.2" @@ -2430,23 +2029,24 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -array-buffer-byte-length@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead" - integrity sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A== +array-buffer-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f" + integrity sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg== dependencies: - call-bind "^1.0.2" - is-array-buffer "^3.0.1" + call-bind "^1.0.5" + is-array-buffer "^3.0.4" array-includes@^3.1.7: - version "3.1.7" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.7.tgz#8cd2e01b26f7a3086cbc87271593fe921c62abda" - integrity sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ== + version "3.1.8" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.8.tgz#5e370cbe172fdd5dd6530c1d4aadda25281ba97d" + integrity sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + get-intrinsic "^1.2.4" is-string "^1.0.7" array-union@^2.1.0: @@ -2455,15 +2055,16 @@ array-union@^2.1.0: integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== array.prototype.findlastindex@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz#b37598438f97b579166940814e2c0493a4f50207" - integrity sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA== + version "1.2.5" + resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz#8c35a755c72908719453f87145ca011e39334d0d" + integrity sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - es-shim-unscopables "^1.0.0" - get-intrinsic "^1.2.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + es-shim-unscopables "^1.0.2" array.prototype.flat@^1.3.2: version "1.3.2" @@ -2485,17 +2086,18 @@ array.prototype.flatmap@^1.3.2: es-abstract "^1.22.1" es-shim-unscopables "^1.0.0" -arraybuffer.prototype.slice@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz#98bd561953e3e74bb34938e77647179dfe6e9f12" - integrity sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw== +arraybuffer.prototype.slice@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz#097972f4255e41bc3425e37dc3f6421cf9aefde6" + integrity sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A== dependencies: - array-buffer-byte-length "^1.0.0" - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" - is-array-buffer "^3.0.2" + array-buffer-byte-length "^1.0.1" + call-bind "^1.0.5" + define-properties "^1.2.1" + es-abstract "^1.22.3" + es-errors "^1.2.1" + get-intrinsic "^1.2.3" + is-array-buffer "^3.0.4" is-shared-array-buffer "^1.0.2" asn1js@^3.0.1, asn1js@^3.0.5: @@ -2512,10 +2114,12 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== -available-typed-arrays@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" - integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== +available-typed-arrays@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" + integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== + dependencies: + possible-typed-array-names "^1.0.0" babel-jest@^29.0.0, babel-jest@^29.7.0: version "29.7.0" @@ -2607,9 +2211,9 @@ balanced-match@^1.0.0: integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== base-x@^3.0.6: - version "3.0.9" - resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320" - integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ== + version "3.0.10" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.10.tgz#62de58653f8762b5d6f8d9fe30fa75f7b2585a75" + integrity sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ== dependencies: safe-buffer "^5.0.1" @@ -2646,14 +2250,14 @@ braces@^3.0.3, braces@~3.0.2: fill-range "^7.1.1" browserslist@^4.22.2, browserslist@^4.23.0: - version "4.23.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.1.tgz#ce4af0534b3d37db5c1a4ca98b9080f985041e96" - integrity sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw== + version "4.23.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.2.tgz#244fe803641f1c19c28c48c4b6ec9736eb3d32ed" + integrity sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA== dependencies: - caniuse-lite "^1.0.30001629" - electron-to-chromium "^1.4.796" + caniuse-lite "^1.0.30001640" + electron-to-chromium "^1.4.820" node-releases "^2.0.14" - update-browserslist-db "^1.0.16" + update-browserslist-db "^1.1.0" bs58@^6.0.0: version "6.0.0" @@ -2679,14 +2283,16 @@ builtin-modules@^3.3.0: resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== -call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.5.tgz#6fa2b7845ce0ea49bf4d8b9ef64727a2c2e2e513" - integrity sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ== +call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" + integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" function-bind "^1.1.2" - get-intrinsic "^1.2.1" - set-function-length "^1.1.1" + get-intrinsic "^1.2.4" + set-function-length "^1.2.1" callsites@^3.0.0: version "3.1.0" @@ -2703,10 +2309,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001629: - version "1.0.30001632" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001632.tgz#964207b7cba5851701afb4c8afaf1448db3884b6" - integrity sha512-udx3o7yHJfUxMLkGohMlVHCvFvWmirKh9JAH/d7WOLPetlH+LTL5cocMZ0t7oZx/mdlOWXti97xLZWc8uURRHg== +caniuse-lite@^1.0.30001640: + version "1.0.30001641" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001641.tgz#3572862cd18befae3f637f2a1101cc033c6782ac" + integrity sha512-Phv5thgl67bHYo1TtMY/MurjkHhV4EDaCosezRXgZ8jzA/Ub+wjxAvbGvjoFENStinwi5kCyOYV3mi5tOGykwA== chalk@5.2.0: version "5.2.0" @@ -2766,9 +2372,9 @@ ci-info@^4.0.0: integrity sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg== cjs-module-lexer@^1.0.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz#6c370ab19f8a3394e318fe682686ec0ac684d107" - integrity sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ== + version "1.3.1" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.3.1.tgz#c485341ae8fd999ca4ee5af2d7a1c9ae01e0099c" + integrity sha512-a3KdPAANPbNE4ZUv9h6LckSl9zLsYOP4MBmhIPkRaeyybt+r4UghLvq+xw/YwUcC1gqylCkL4rdVs3Lwupjm4Q== clean-regexp@^1.0.0: version "1.0.0" @@ -2887,11 +2493,6 @@ content-type@^1.0.4: resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== -convert-source-map@^1.6.0, convert-source-map@^1.7.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" - integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== - convert-source-map@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" @@ -2905,9 +2506,9 @@ core-js-compat@^3.31.0, core-js-compat@^3.36.1, core-js-compat@^3.37.0: browserslist "^4.23.0" core-js@^3.0.0: - version "3.32.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.32.0.tgz#7643d353d899747ab1f8b03d2803b0312a0fb3b6" - integrity sha512-rd4rYZNlF3WuoYuRIDEmbR/ga9CeuWX9U05umAvgrrZoHY4Z++cp/xwPQMvUpBB4Ag6J8KfD80G0zwCyaSxDww== + version "3.37.1" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.37.1.tgz#d21751ddb756518ac5a00e4d66499df981a62db9" + integrity sha512-Xn6qmxrQZyB0FFY8E3bgRXei3lWDJHhvI+u0q9TKIYM49G8pAr0FgnnrFRAmsbptZL1yxRADVXn+x5AGsbBfyw== create-jest@^29.7.0: version "29.7.0" @@ -2962,6 +2563,33 @@ data-urls@^3.0.2: whatwg-mimetype "^3.0.0" whatwg-url "^11.0.0" +data-view-buffer@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.1.tgz#8ea6326efec17a2e42620696e671d7d5a8bc66b2" + integrity sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA== + dependencies: + call-bind "^1.0.6" + es-errors "^1.3.0" + is-data-view "^1.0.1" + +data-view-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz#90721ca95ff280677eb793749fce1011347669e2" + integrity sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + is-data-view "^1.0.1" + +data-view-byte-offset@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz#5e0bbfb4828ed2d1b9b400cd8a7d119bca0ff18a" + integrity sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA== + dependencies: + call-bind "^1.0.6" + es-errors "^1.3.0" + is-data-view "^1.0.1" + debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@~4.3.4: version "4.3.5" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.5.tgz#e83444eceb9fedd4a1da56d671ae2446a01a6e1e" @@ -2982,9 +2610,9 @@ decimal.js@^10.4.2: integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== dedent@^1.0.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.1.tgz#4f3fc94c8b711e9bb2800d185cd6ad20f2a90aff" - integrity sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg== + version "1.5.3" + resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.3.tgz#99aee19eb9bae55a67327717b6e848d0bf777e5a" + integrity sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ== deep-is@^0.1.3: version "0.1.4" @@ -3003,16 +2631,16 @@ defaults@^1.0.3: dependencies: clone "^1.0.2" -define-data-property@^1.0.1, define-data-property@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.1.tgz#c35f7cd0ab09883480d12ac5cb213715587800b3" - integrity sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ== +define-data-property@^1.0.1, define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== dependencies: - get-intrinsic "^1.2.1" + es-define-property "^1.0.0" + es-errors "^1.3.0" gopd "^1.0.1" - has-property-descriptors "^1.0.0" -define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1: +define-properties@^1.2.0, define-properties@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== @@ -3088,10 +2716,10 @@ easy-table@1.2.0: optionalDependencies: wcwidth "^1.0.1" -electron-to-chromium@^1.4.796: - version "1.4.798" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.798.tgz#6a3fcab2edc1e66e3883466f6b4b8944323c0164" - integrity sha512-by9J2CiM9KPGj9qfp5U4FcPSbXJG7FNzqnYaY4WLzX+v2PHieVGmnsA4dxfpGE3QEC7JofpPZmn7Vn1B9NR2+Q== +electron-to-chromium@^1.4.820: + version "1.4.823" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.823.tgz#38587f7aa55bed14930f04091dfc65c39a3d8bd7" + integrity sha512-4h+oPeAiGQOHFyUJOqpoEcPj/xxlicxBzOErVeYVMMmAiXUXsGpsFd0QXBMaUUbnD8hhSfLf9uw+MlsoIA7j5w== emittery@^0.13.1: version "0.13.1" @@ -3114,9 +2742,9 @@ emoji-regex@^9.2.2: integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== enhanced-resolve@^5.12.0: - version "5.15.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz#1af946c7d93603eb88e9896cee4904dc012e9c35" - integrity sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg== + version "5.17.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz#d037603789dd9555b89aaec7eb78845c49089bc5" + integrity sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA== dependencies: graceful-fs "^4.2.4" tapable "^2.2.0" @@ -3133,66 +2761,92 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -es-abstract@^1.22.1: - version "1.22.3" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.22.3.tgz#48e79f5573198de6dee3589195727f4f74bc4f32" - integrity sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA== - dependencies: - array-buffer-byte-length "^1.0.0" - arraybuffer.prototype.slice "^1.0.2" - available-typed-arrays "^1.0.5" - call-bind "^1.0.5" - es-set-tostringtag "^2.0.1" +es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.2: + version "1.23.3" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.3.tgz#8f0c5a35cd215312573c5a27c87dfd6c881a0aa0" + integrity sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A== + dependencies: + array-buffer-byte-length "^1.0.1" + arraybuffer.prototype.slice "^1.0.3" + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + data-view-buffer "^1.0.1" + data-view-byte-length "^1.0.1" + data-view-byte-offset "^1.0.0" + es-define-property "^1.0.0" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + es-set-tostringtag "^2.0.3" es-to-primitive "^1.2.1" function.prototype.name "^1.1.6" - get-intrinsic "^1.2.2" - get-symbol-description "^1.0.0" + get-intrinsic "^1.2.4" + get-symbol-description "^1.0.2" globalthis "^1.0.3" gopd "^1.0.1" - has-property-descriptors "^1.0.0" - has-proto "^1.0.1" + has-property-descriptors "^1.0.2" + has-proto "^1.0.3" has-symbols "^1.0.3" - hasown "^2.0.0" - internal-slot "^1.0.5" - is-array-buffer "^3.0.2" + hasown "^2.0.2" + internal-slot "^1.0.7" + is-array-buffer "^3.0.4" is-callable "^1.2.7" - is-negative-zero "^2.0.2" + is-data-view "^1.0.1" + is-negative-zero "^2.0.3" is-regex "^1.1.4" - is-shared-array-buffer "^1.0.2" + is-shared-array-buffer "^1.0.3" is-string "^1.0.7" - is-typed-array "^1.1.12" + is-typed-array "^1.1.13" is-weakref "^1.0.2" object-inspect "^1.13.1" object-keys "^1.1.1" - object.assign "^4.1.4" - regexp.prototype.flags "^1.5.1" - safe-array-concat "^1.0.1" - safe-regex-test "^1.0.0" - string.prototype.trim "^1.2.8" - string.prototype.trimend "^1.0.7" - string.prototype.trimstart "^1.0.7" - typed-array-buffer "^1.0.0" - typed-array-byte-length "^1.0.0" - typed-array-byte-offset "^1.0.0" - typed-array-length "^1.0.4" + object.assign "^4.1.5" + regexp.prototype.flags "^1.5.2" + safe-array-concat "^1.1.2" + safe-regex-test "^1.0.3" + string.prototype.trim "^1.2.9" + string.prototype.trimend "^1.0.8" + string.prototype.trimstart "^1.0.8" + typed-array-buffer "^1.0.2" + typed-array-byte-length "^1.0.1" + typed-array-byte-offset "^1.0.2" + typed-array-length "^1.0.6" unbox-primitive "^1.0.2" - which-typed-array "^1.1.13" + which-typed-array "^1.1.15" + +es-define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" + integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== + dependencies: + get-intrinsic "^1.2.4" + +es-errors@^1.2.1, es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== es-module-lexer@^1.5.3: version "1.5.4" resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.5.4.tgz#a8efec3a3da991e60efa6b633a7cad6ab8d26b78" integrity sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw== -es-set-tostringtag@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz#11f7cc9f63376930a5f20be4915834f4bc74f9c9" - integrity sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q== +es-object-atoms@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.0.0.tgz#ddb55cd47ac2e240701260bc2a8e31ecb643d941" + integrity sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw== dependencies: - get-intrinsic "^1.2.2" - has-tostringtag "^1.0.0" - hasown "^2.0.0" + es-errors "^1.3.0" + +es-set-tostringtag@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777" + integrity sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ== + dependencies: + get-intrinsic "^1.2.4" + has-tostringtag "^1.0.2" + hasown "^2.0.1" -es-shim-unscopables@^1.0.0: +es-shim-unscopables@^1.0.0, es-shim-unscopables@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz#1f6942e71ecc7835ed1c8a83006d8771a63a3763" integrity sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw== @@ -3272,9 +2926,9 @@ eslint-import-resolver-typescript@^3.5.1: is-glob "^4.0.3" eslint-module-utils@^2.7.4, eslint-module-utils@^2.8.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz#e439fee65fc33f6bba630ff621efc38ec0375c49" - integrity sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw== + version "2.8.1" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz#52f2404300c3bd33deece9d7372fb337cc1d7c34" + integrity sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q== dependencies: debug "^3.2.7" @@ -3309,17 +2963,17 @@ eslint-plugin-jest@^28.0.0: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0" eslint-plugin-jsdoc@^48.0.0: - version "48.5.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.5.2.tgz#c355846dc6a41095fa10855cbc64bed8d2d3f79d" - integrity sha512-VXBJFviQz30rynlOEQ+dNWLmeopjoAgutUVrWOZwm6Ki4EVDm4XkyIqAV/Zhf7FcDr0AG0aGmRn5FxxCtAF0tA== + version "48.6.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.6.0.tgz#e8fade0fe783fd9c8d2f30a462ba2c1e506091aa" + integrity sha512-UsOdFYWeyYaiGW1OzJaKvRpb88JPF0HGpDkmMDvhfWbTGu3B4TYKhGH3cPGiRjMDxKPA3fJ/+tL823argNxOkA== dependencies: - "@es-joy/jsdoccomment" "~0.43.1" + "@es-joy/jsdoccomment" "~0.45.0" are-docs-informative "^0.0.2" comment-parser "1.4.1" debug "^4.3.5" escape-string-regexp "^4.0.0" - esquery "^1.5.0" - parse-imports "^2.1.0" + esquery "^1.6.0" + parse-imports "^2.1.1" semver "^7.6.2" spdx-expression-parse "^4.0.0" synckit "^0.9.0" @@ -3440,11 +3094,11 @@ eslint@8.57.0: text-table "^0.2.0" espree@^10.0.1: - version "10.0.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-10.0.1.tgz#600e60404157412751ba4a6f3a2ee1a42433139f" - integrity sha512-MWkrWZbJsL2UwnjxTX3gG8FneachS/Mwg7tdGXce011sJd5b0JG54vat5KHnfSBODZ3Wvzd2WnjxyzsRoVv+ww== + version "10.1.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-10.1.0.tgz#8788dae611574c0f070691f522e4116c5a11fc56" + integrity sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA== dependencies: - acorn "^8.11.3" + acorn "^8.12.0" acorn-jsx "^5.3.2" eslint-visitor-keys "^4.0.0" @@ -3462,14 +3116,7 @@ esprima@^4.0.0, esprima@^4.0.1: resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.4.2: - version "1.5.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" - integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== - dependencies: - estraverse "^5.1.0" - -esquery@^1.5.0: +esquery@^1.4.2, esquery@^1.5.0, esquery@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7" integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg== @@ -3575,7 +3222,7 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-glob@^3.2.9, fast-glob@^3.3.2: +fast-glob@^3.2.9, fast-glob@^3.3.1, fast-glob@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== @@ -3586,17 +3233,6 @@ fast-glob@^3.2.9, fast-glob@^3.3.2: merge2 "^1.3.0" micromatch "^4.0.4" -fast-glob@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.1.tgz#784b4e897340f3dbbef17413b3f11acf03c874c4" - integrity sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg== - dependencies: - "@nodelib/fs.stat" "^2.0.2" - "@nodelib/fs.walk" "^1.2.3" - glob-parent "^5.1.2" - merge2 "^1.3.0" - micromatch "^4.0.4" - fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" @@ -3687,17 +3323,18 @@ find-up@^5.0.0: path-exists "^4.0.0" flat-cache@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" - integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== + version "3.2.0" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee" + integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw== dependencies: - flatted "^3.1.0" + flatted "^3.2.9" + keyv "^4.5.3" rimraf "^3.0.2" -flatted@^3.1.0: - version "3.2.7" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" - integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== +flatted@^3.2.9: + version "3.3.1" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" + integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== for-each@^0.3.3: version "0.3.3" @@ -3773,11 +3410,12 @@ get-east-asian-width@^1.0.0: resolved "https://registry.yarnpkg.com/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz#5e6ebd9baee6fb8b7b6bd505221065f0cd91f64e" integrity sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA== -get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.2.tgz#281b7622971123e1ef4b3c90fd7539306da93f3b" - integrity sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA== +get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" + integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== dependencies: + es-errors "^1.3.0" function-bind "^1.1.2" has-proto "^1.0.1" has-symbols "^1.0.3" @@ -3798,18 +3436,19 @@ get-stream@^8.0.1: resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-8.0.1.tgz#def9dfd71742cd7754a7761ed43749a27d02eca2" integrity sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA== -get-symbol-description@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" - integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== +get-symbol-description@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5" + integrity sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg== dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.1" + call-bind "^1.0.5" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" get-tsconfig@^4.5.0: - version "4.7.2" - resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.7.2.tgz#0dcd6fb330391d46332f4c6c1bf89a6514c2ddce" - integrity sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A== + version "4.7.5" + resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.7.5.tgz#5e012498579e9a6947511ed0cd403272c7acbbaf" + integrity sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw== dependencies: resolve-pkg-maps "^1.0.0" @@ -3862,9 +3501,9 @@ globals@^11.1.0: integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== globals@^13.19.0: - version "13.20.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82" - integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ== + version "13.24.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171" + integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ== dependencies: type-fest "^0.20.2" @@ -3874,11 +3513,12 @@ globals@^14.0.0: integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== globalthis@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" - integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== + version "1.0.4" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" + integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ== dependencies: - define-properties "^1.1.3" + define-properties "^1.2.1" + gopd "^1.0.1" globby@^11.1.0: version "11.1.0" @@ -3924,36 +3564,31 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-property-descriptors@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz#52ba30b6c5ec87fd89fa574bc1c39125c6f65340" - integrity sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg== +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== dependencies: - get-intrinsic "^1.2.2" + es-define-property "^1.0.0" -has-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" - integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== +has-proto@^1.0.1, has-proto@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" + integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== has-symbols@^1.0.2, has-symbols@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== -has-tostringtag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" - integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== +has-tostringtag@^1.0.0, has-tostringtag@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== dependencies: - has-symbols "^1.0.2" - -has@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.4.tgz#2eb2860e000011dae4f1406a86fe80e530fb2ec6" - integrity sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ== + has-symbols "^1.0.3" -hasown@^2.0.0, hasown@^2.0.2: +hasown@^2.0.0, hasown@^2.0.1, hasown@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== @@ -4060,23 +3695,22 @@ inherits@2: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -internal-slot@^1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.6.tgz#37e756098c4911c5e912b8edbf71ed3aa116f930" - integrity sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg== +internal-slot@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.7.tgz#c06dcca3ed874249881007b0a5523b172a190802" + integrity sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g== dependencies: - get-intrinsic "^1.2.2" + es-errors "^1.3.0" hasown "^2.0.0" side-channel "^1.0.4" -is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe" - integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w== +is-array-buffer@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98" + integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw== dependencies: call-bind "^1.0.2" - get-intrinsic "^1.2.0" - is-typed-array "^1.1.10" + get-intrinsic "^1.2.1" is-arrayish@^0.2.1: version "0.2.1" @@ -4117,26 +3751,19 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.11.0: - version "2.13.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.0.tgz#bb52aa6e2cbd49a30c2ba68c42bf3435ba6072db" - integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ== - dependencies: - has "^1.0.3" - -is-core-module@^2.13.0: +is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.13.1: version "2.14.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.14.0.tgz#43b8ef9f46a6a08888db67b1ffd4ec9e3dfd59d1" integrity sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A== dependencies: hasown "^2.0.2" -is-core-module@^2.13.1: - version "2.13.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" - integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== +is-data-view@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.1.tgz#4b4d3a511b70f3dc26d42c03ca9ca515d847759f" + integrity sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w== dependencies: - hasown "^2.0.0" + is-typed-array "^1.1.13" is-date-object@^1.0.1: version "1.0.5" @@ -4179,10 +3806,10 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" -is-negative-zero@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" - integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== +is-negative-zero@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" + integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== is-number-object@^1.0.4: version "1.0.7" @@ -4214,12 +3841,12 @@ is-regex@^1.1.4: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-shared-array-buffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" - integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== +is-shared-array-buffer@^1.0.2, is-shared-array-buffer@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz#1237f1cba059cdb62431d378dcc37d9680181688" + integrity sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg== dependencies: - call-bind "^1.0.2" + call-bind "^1.0.7" is-stream@^2.0.0: version "2.0.1" @@ -4250,12 +3877,12 @@ is-symbol@^1.0.2, is-symbol@^1.0.3: dependencies: has-symbols "^1.0.2" -is-typed-array@^1.1.10, is-typed-array@^1.1.12, is-typed-array@^1.1.9: - version "1.1.12" - resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.12.tgz#d0bab5686ef4a76f7a73097b95470ab199c57d4a" - integrity sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg== +is-typed-array@^1.1.13: + version "1.1.13" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.13.tgz#d6c5ca56df62334959322d7d7dd1cca50debe229" + integrity sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw== dependencies: - which-typed-array "^1.1.11" + which-typed-array "^1.1.14" is-weakref@^1.0.2: version "1.0.2" @@ -4275,9 +3902,9 @@ isexe@^2.0.0: integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" - integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== + version "3.2.2" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz#2d166c4b0644d43a39f04bf6c2edd1e585f31756" + integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg== istanbul-lib-instrument@^5.0.4: version "5.2.1" @@ -4291,13 +3918,13 @@ istanbul-lib-instrument@^5.0.4: semver "^6.3.0" istanbul-lib-instrument@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.0.tgz#7a8af094cbfff1d5bb280f62ce043695ae8dd5b8" - integrity sha512-x58orMzEVfzPUKqlbLd1hXCnySCxKdDKa6Rjg97CwuLLRI4g3FHTdnExu1OqffVFay6zeMW+T6/DowFLndWnIw== + version "6.0.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz#fa15401df6c15874bcb2105f773325d78c666765" + integrity sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q== dependencies: - "@babel/core" "^7.12.3" - "@babel/parser" "^7.14.7" - "@istanbuljs/schema" "^0.1.2" + "@babel/core" "^7.23.9" + "@babel/parser" "^7.23.9" + "@istanbuljs/schema" "^0.1.3" istanbul-lib-coverage "^3.2.0" semver "^7.5.4" @@ -4320,9 +3947,9 @@ istanbul-lib-source-maps@^4.0.0: source-map "^0.6.1" istanbul-reports@^3.1.3: - version "3.1.6" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.6.tgz#2544bcab4768154281a2f0870471902704ccaa1a" - integrity sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg== + version "3.1.7" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.7.tgz#daed12b9e1dca518e15c056e1e537e741280fa0b" + integrity sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g== dependencies: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" @@ -4847,6 +4474,11 @@ jsesc@~0.5.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== + json-parse-even-better-errors@^2.3.0: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" @@ -4884,6 +4516,13 @@ jwt-decode@^4.0.0: resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-4.0.0.tgz#2270352425fd413785b2faf11f6e755c5151bd4b" integrity sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA== +keyv@^4.5.3: + version "4.5.4" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" + integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== + dependencies: + json-buffer "3.0.1" + kleur@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" @@ -4959,15 +4598,15 @@ lint-staged@^15.0.2: yaml "~2.4.2" listr2@~8.2.1: - version "8.2.1" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.2.1.tgz#06a1a6efe85f23c5324180d7c1ddbd96b5eefd6d" - integrity sha512-irTfvpib/rNiD637xeevjO2l3Z5loZmuaRi0L0YE5LfijwVY96oyVn0DFD3o/teAok7nfobMG1THvvcHh/BP6g== + version "8.2.3" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.2.3.tgz#c494bb89b34329cf900e4e0ae8aeef9081d7d7a5" + integrity sha512-Lllokma2mtoniUOS94CcOErHWAug5iu7HOmDrvWgpw8jyQH2fomgB+7lZS4HWZxytUuQwkGOwe49FvwVaA85Xw== dependencies: cli-truncate "^4.0.0" colorette "^2.0.20" eventemitter3 "^5.0.1" log-update "^6.0.0" - rfdc "^1.3.1" + rfdc "^1.4.1" wrap-ansi "^9.0.0" locate-path@^5.0.0: @@ -5032,13 +4671,6 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" -lru-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" - integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== - dependencies: - yallist "^4.0.0" - lunr@^2.3.9: version "2.3.9" resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" @@ -5251,21 +4883,21 @@ npm-run-path@^5.1.0: path-key "^4.0.0" nwsapi@^2.2.2: - version "2.2.7" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.7.tgz#738e0707d3128cb750dddcfe90e4610482df0f30" - integrity sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ== + version "2.2.10" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.10.tgz#0b77a68e21a0b483db70b11fad055906e867cda8" + integrity sha512-QK0sRs7MKv0tKe1+5uZIQk/C8XGza4DAnztJG8iD+TpJIORARrCxczA738awHrZoHeTjSSoHqao2teO0dC/gFQ== -object-inspect@^1.13.1, object-inspect@^1.9.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" - integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== +object-inspect@^1.13.1: + version "1.13.2" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.2.tgz#dea0088467fb991e67af4058147a24824a3043ff" + integrity sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g== object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object.assign@^4.1.4: +object.assign@^4.1.5: version "4.1.5" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== @@ -5276,32 +4908,32 @@ object.assign@^4.1.4: object-keys "^1.1.1" object.fromentries@^2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.7.tgz#71e95f441e9a0ea6baf682ecaaf37fa2a8d7e616" - integrity sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA== + version "2.0.8" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.8.tgz#f7195d8a9b97bd95cbc1999ea939ecd1a2b00c65" + integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" object.groupby@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.1.tgz#d41d9f3c8d6c778d9cbac86b4ee9f5af103152ee" - integrity sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ== + version "1.0.3" + resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.3.tgz#9b125c36238129f6f7b61954a1e7176148d5002e" + integrity sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" object.values@^1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.7.tgz#617ed13272e7e1071b43973aa1655d9291b8442a" - integrity sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng== + version "1.2.0" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.2.0.tgz#65405a9d92cee68ac2d303002e0b8470a4d9ab1b" + integrity sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" oidc-client-ts@^3.0.1: version "3.0.1" @@ -5332,16 +4964,16 @@ onetime@^6.0.0: mimic-fn "^4.0.0" optionator@^0.9.3: - version "0.9.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64" - integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg== + version "0.9.4" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" + integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g== dependencies: - "@aashutoshrathi/word-wrap" "^1.2.3" deep-is "^0.1.3" fast-levenshtein "^2.0.6" levn "^0.4.1" prelude-ls "^1.2.1" type-check "^0.4.0" + word-wrap "^1.2.5" p-limit@^2.2.0: version "2.3.0" @@ -5403,7 +5035,7 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" -parse-imports@^2.1.0: +parse-imports@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/parse-imports/-/parse-imports-2.1.1.tgz#ce52141df24990065d72a446a364bffd595577f4" integrity sha512-TDT4HqzUiTMO1wJRwg/t/hYk8Wdp3iF/ToMIlAoVQfL1Xs/sTxq1dKWSMjMbQmIarfWKymOyly40+zmPHXMqCA== @@ -5518,6 +5150,11 @@ pluralize@^8.0.0: resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== +possible-typed-array-names@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz#89bb63c6fada2c3e90adc4a647beeeb39cc7bf8f" + integrity sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q== + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -5573,14 +5210,14 @@ punycode.js@^2.3.1: integrity sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA== punycode@^2.1.0, punycode@^2.1.1: - version "2.3.0" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" - integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== + version "2.3.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" + integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== pure-rand@^6.0.0: - version "6.0.3" - resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.3.tgz#3c9e6b53c09e52ac3cedffc85ab7c1c7094b38cb" - integrity sha512-KddyFewCsO0j3+np81IQ+SweXLDnDQTs5s67BOnrYmYe/yNmUhttQyGsYzy8yUnoljGAQ9sl38YB4vH8ur7Y+w== + version "6.1.0" + resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.1.0.tgz#d173cf23258231976ccbdb05247c9787957604f2" + integrity sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA== pvtsutils@^1.3.2, pvtsutils@^1.3.5: version "1.3.5" @@ -5610,9 +5247,9 @@ queue-microtask@^1.2.2: integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== react-is@^18.0.0: - version "18.2.0" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" - integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== + version "18.3.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e" + integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== read-pkg-up@^7.0.1: version "7.0.1" @@ -5669,14 +5306,15 @@ regexp-tree@^0.1.27: resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.27.tgz#2198f0ef54518ffa743fe74d983b56ffd631b6cd" integrity sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA== -regexp.prototype.flags@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz#90ce989138db209f81492edd734183ce99f9677e" - integrity sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg== +regexp.prototype.flags@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" + integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - set-function-name "^2.0.0" + call-bind "^1.0.6" + define-properties "^1.2.1" + es-errors "^1.3.0" + set-function-name "^2.0.1" regexpu-core@^5.3.1: version "5.3.2" @@ -5746,16 +5384,7 @@ resolve.exports@^2.0.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@^1.10.0, resolve@^1.20.0: - version "1.22.4" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.4.tgz#1dc40df46554cdaf8948a486a10f6ba1e2026c34" - integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg== - dependencies: - is-core-module "^2.13.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -resolve@^1.14.2, resolve@^1.22.4, resolve@^1.22.8, resolve@~1.22.2: +resolve@^1.10.0, resolve@^1.14.2, resolve@^1.20.0, resolve@^1.22.4, resolve@^1.22.8, resolve@~1.22.2: version "1.22.8" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== @@ -5782,7 +5411,7 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rfdc@^1.3.1: +rfdc@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.4.1.tgz#778f76c4fb731d93414e8f925fbecf64cce7f6ca" integrity sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA== @@ -5808,13 +5437,13 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -safe-array-concat@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.0.1.tgz#91686a63ce3adbea14d61b14c99572a8ff84754c" - integrity sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q== +safe-array-concat@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.2.tgz#81d77ee0c4e8b863635227c721278dd524c20edb" + integrity sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q== dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.1" + call-bind "^1.0.7" + get-intrinsic "^1.2.4" has-symbols "^1.0.3" isarray "^2.0.5" @@ -5823,13 +5452,13 @@ safe-buffer@^5.0.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -safe-regex-test@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.1.tgz#207369b445fd007e534864635b28b2ae7b105783" - integrity sha512-Y5NejJTTliTyY4H7sipGqY+RX5P87i3F7c4Rcepy72nq+mNLhIsD0W4c7kEmduMDQCSqtPsXPlSTsFhh2LQv+g== +safe-regex-test@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377" + integrity sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw== dependencies: - call-bind "^1.0.5" - get-intrinsic "^1.2.2" + call-bind "^1.0.6" + es-errors "^1.3.0" is-regex "^1.1.4" "safer-buffer@>= 2.1.2 < 3.0.0": @@ -5859,43 +5488,32 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.5.3: - version "7.5.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" - integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== - dependencies: - lru-cache "^6.0.0" - -semver@^7.5.4: - version "7.6.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" - integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== - dependencies: - lru-cache "^6.0.0" - -semver@^7.6.0, semver@^7.6.1, semver@^7.6.2: +semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.1, semver@^7.6.2: version "7.6.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== -set-function-length@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.1.1.tgz#4bc39fafb0307224a33e106a7d35ca1218d659ed" - integrity sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ== +set-function-length@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== dependencies: - define-data-property "^1.1.1" - get-intrinsic "^1.2.1" + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" gopd "^1.0.1" - has-property-descriptors "^1.0.0" + has-property-descriptors "^1.0.2" -set-function-name@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.1.tgz#12ce38b7954310b9f61faa12701620a0c882793a" - integrity sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA== +set-function-name@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" + integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== dependencies: - define-data-property "^1.0.1" + define-data-property "^1.1.4" + es-errors "^1.3.0" functions-have-names "^1.2.3" - has-property-descriptors "^1.0.0" + has-property-descriptors "^1.0.2" shebang-command@^2.0.0: version "2.0.0" @@ -5918,13 +5536,14 @@ shiki@^1.9.1: "@types/hast" "^3.0.4" side-channel@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" - integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + version "1.0.6" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2" + integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA== dependencies: - call-bind "^1.0.0" - get-intrinsic "^1.0.2" - object-inspect "^1.9.0" + call-bind "^1.0.7" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + object-inspect "^1.13.1" signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" @@ -6077,40 +5696,41 @@ string-width@^5.0.1, string-width@^5.1.2: strip-ansi "^7.0.1" string-width@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-7.1.0.tgz#d994252935224729ea3719c49f7206dc9c46550a" - integrity sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw== + version "7.2.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-7.2.0.tgz#b5bb8e2165ce275d4d43476dd2700ad9091db6dc" + integrity sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ== dependencies: emoji-regex "^10.3.0" get-east-asian-width "^1.0.0" strip-ansi "^7.1.0" -string.prototype.trim@^1.2.8: - version "1.2.8" - resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd" - integrity sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ== +string.prototype.trim@^1.2.9: + version "1.2.9" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz#b6fa326d72d2c78b6df02f7759c73f8f6274faa4" + integrity sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.0" + es-object-atoms "^1.0.0" -string.prototype.trimend@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz#1bb3afc5008661d73e2dc015cd4853732d6c471e" - integrity sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA== +string.prototype.trimend@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz#3651b8513719e8a9f48de7f2f77640b26652b229" + integrity sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" -string.prototype.trimstart@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz#d4cdb44b83a4737ffbac2d406e405d43d0184298" - integrity sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg== +string.prototype.trimstart@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" + integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" "strip-ansi-cjs@npm:strip-ansi@^6.0.1": version "6.0.1" @@ -6251,9 +5871,9 @@ to-regex-range@^5.0.1: is-number "^7.0.0" tough-cookie@^4.1.2: - version "4.1.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" - integrity sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw== + version "4.1.4" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.4.tgz#945f1461b45b5a8c76821c33ea49c3ac192c1b36" + integrity sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag== dependencies: psl "^1.1.33" punycode "^2.1.1" @@ -6322,12 +5942,7 @@ tsconfig-paths@^4.2.0: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1: - version "2.6.2" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" - integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== - -tslib@^2.6.2: +tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1, tslib@^2.6.2: version "2.6.3" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.3.tgz#0438f810ad7a9edcde7a241c3d80db693c8cbfe0" integrity sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ== @@ -6364,44 +5979,49 @@ type-fest@^0.8.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -typed-array-buffer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz#18de3e7ed7974b0a729d3feecb94338d1472cd60" - integrity sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw== +typed-array-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz#1867c5d83b20fcb5ccf32649e5e2fc7424474ff3" + integrity sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ== dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.1" - is-typed-array "^1.1.10" + call-bind "^1.0.7" + es-errors "^1.3.0" + is-typed-array "^1.1.13" -typed-array-byte-length@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz#d787a24a995711611fb2b87a4052799517b230d0" - integrity sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA== +typed-array-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz#d92972d3cff99a3fa2e765a28fcdc0f1d89dec67" + integrity sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw== dependencies: - call-bind "^1.0.2" + call-bind "^1.0.7" for-each "^0.3.3" - has-proto "^1.0.1" - is-typed-array "^1.1.10" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" -typed-array-byte-offset@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz#cbbe89b51fdef9cd6aaf07ad4707340abbc4ea0b" - integrity sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg== +typed-array-byte-offset@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz#f9ec1acb9259f395093e4567eb3c28a580d02063" + integrity sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA== dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.2" + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" for-each "^0.3.3" - has-proto "^1.0.1" - is-typed-array "^1.1.10" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" -typed-array-length@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb" - integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng== +typed-array-length@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.6.tgz#57155207c76e64a3457482dfdc1c9d1d3c4c73a3" + integrity sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g== dependencies: - call-bind "^1.0.2" + call-bind "^1.0.7" for-each "^0.3.3" - is-typed-array "^1.1.9" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" + possible-typed-array-names "^1.0.0" typedoc-plugin-coverage@^3.0.0: version "3.3.0" @@ -6487,10 +6107,10 @@ universalify@^0.2.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== -update-browserslist-db@^1.0.16: - version "1.0.16" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz#f6d489ed90fb2f07d67784eb3f53d7891f736356" - integrity sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ== +update-browserslist-db@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz#7ca61c0d8650766090728046e416a8cde682859e" + integrity sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ== dependencies: escalade "^3.1.2" picocolors "^1.0.1" @@ -6526,13 +6146,13 @@ v8-compile-cache-lib@^3.0.1: integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== v8-to-istanbul@^9.0.1: - version "9.1.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz#1b83ed4e397f58c85c266a570fc2558b5feb9265" - integrity sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA== + version "9.3.0" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz#b9572abfa62bd556c16d75fdebc1a411d5ff3175" + integrity sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA== dependencies: "@jridgewell/trace-mapping" "^0.3.12" "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^1.6.0" + convert-source-map "^2.0.0" validate-npm-package-license@^3.0.1: version "3.0.4" @@ -6637,16 +6257,16 @@ which-boxed-primitive@^1.0.2: is-string "^1.0.5" is-symbol "^1.0.3" -which-typed-array@^1.1.11, which-typed-array@^1.1.13: - version "1.1.13" - resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.13.tgz#870cd5be06ddb616f504e7b039c4c24898184d36" - integrity sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow== +which-typed-array@^1.1.14, which-typed-array@^1.1.15: + version "1.1.15" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.15.tgz#264859e9b11a649b388bfaaf4f767df1f779b38d" + integrity sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA== dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.4" + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" for-each "^0.3.3" gopd "^1.0.1" - has-tostringtag "^1.0.0" + has-tostringtag "^1.0.2" which@^2.0.1: version "2.0.2" @@ -6655,6 +6275,11 @@ which@^2.0.1: dependencies: isexe "^2.0.0" +word-wrap@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" + integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== + "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" @@ -6705,9 +6330,9 @@ write-file-atomic@^4.0.2: signal-exit "^3.0.7" ws@^8.11.0: - version "8.14.1" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.14.1.tgz#4b9586b4f70f9e6534c7bb1d3dc0baa8b8cf01e0" - integrity sha512-4OOseMUq8AzRBI/7SLMUwO+FEDnguetSk7KMb1sHwvF2w2Wv5Hoj0nlifx8vtGsftE/jWHojPy8sMMzYLJ2G/A== + version "8.18.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc" + integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw== xml-name-validator@^4.0.0: version "4.0.0" @@ -6734,11 +6359,6 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - yaml@^2.4.5, yaml@~2.4.2: version "2.4.5" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.4.5.tgz#60630b206dd6d84df97003d33fc1ddf6296cca5e" From 30a26813ec4bbc19e715ff0cd24b59240096928b Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Sat, 13 Jul 2024 11:19:14 +0100 Subject: [PATCH 341/595] Deprecate `CreateSecretStorageOpts.getKeyBackupPassphrase` (#4313) it doesn't work in rust crypto, and we have no plans to fix it (https://github.com/element-hq/element-web/issues/27455) --- src/crypto-api/index.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index 2522fb1efdc..b3a05172a1b 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -854,9 +854,14 @@ export interface CreateSecretStorageOpts { setupNewSecretStorage?: boolean; /** - * Function called to get the user's - * current key backup passphrase. Should return a promise that resolves with a Uint8Array + * Function called to get the user's current key backup passphrase. + * + * Should return a promise that resolves with a Uint8Array * containing the key, or rejects if the key cannot be obtained. + * + * Only used when the client has existing key backup, but no secret storage. + * + * @deprecated Not used by the Rust crypto stack. */ getKeyBackupPassphrase?: () => Promise; } From 4d90fecb6a489edd4bed5344610a8d1f13c54b9d Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 16 Jul 2024 12:20:13 +0000 Subject: [PATCH 342/595] v34.1.0 --- CHANGELOG.md | 16 ++++++++++++++++ package.json | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 85d77228d61..fddb3e487ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,19 @@ +Changes in [34.1.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.1.0) (2024-07-16) +================================================================================================== +## ✨ Features + +* Add ability to choose how many timeline events to sync when peeking ([#4300](https://github.com/matrix-org/matrix-js-sdk/pull/4300)). Contributed by @jgarplind. +* Remove redundant hack for using the old pickle key in rust crypto ([#4282](https://github.com/matrix-org/matrix-js-sdk/pull/4282)). Contributed by @richvdh. +* Add fetching the well known in embedded mode. ([#4259](https://github.com/matrix-org/matrix-js-sdk/pull/4259)). Contributed by @toger5. + +## 🐛 Bug Fixes + +* Fix room state being updated with old (now overwritten) state and emitting for those updates. ([#4242](https://github.com/matrix-org/matrix-js-sdk/pull/4242)). Contributed by @toger5. +* Fix incorrect "Olm is not available" errors ([#4301](https://github.com/matrix-org/matrix-js-sdk/pull/4301)). Contributed by @richvdh. +* Fix build for example script ([#4286](https://github.com/matrix-org/matrix-js-sdk/pull/4286)). Contributed by @richvdh. +* Declare matrix-js-sdk as an ES module ([#4285](https://github.com/matrix-org/matrix-js-sdk/pull/4285)). Contributed by @richvdh. + + Changes in [34.0.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.0.0) (2024-07-08) ================================================================================================== ## 🚨 BREAKING CHANGES diff --git a/package.json b/package.json index 719f8076ba1..91f55037cdb 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.1.0-rc.3", + "version": "34.1.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From 6f63ff1711664154359bb1b998a80f4274569468 Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 17 Jul 2024 15:18:46 +0100 Subject: [PATCH 343/595] Remove the compare function from utils (#4315) * Remove the compare function from utils and change the one use of it to just intantiate a collator and use it. This was marked as internal module so this shouldn't be a breaking change. Of course, react-sdk was using it. Requires: https://github.com/matrix-org/matrix-react-sdk/pull/12782 * Add simple not-a-perf-test test * recalculate repeatedly otherwise we aren't testing anything different * Use fewer members as it was making the test take a bit too long --- spec/unit/room.spec.ts | 16 ++++++++++++++++ src/models/room.ts | 5 +++-- src/utils.ts | 10 ---------- 3 files changed, 19 insertions(+), 12 deletions(-) diff --git a/spec/unit/room.spec.ts b/spec/unit/room.spec.ts index 542bbcb2536..37b5c15048d 100644 --- a/spec/unit/room.spec.ts +++ b/spec/unit/room.spec.ts @@ -1394,6 +1394,22 @@ describe("Room", function () { expect(name).toEqual(userB); }); }); + + it("recalculates in acceptable time without heroes", function () { + for (let i = 0; i < 5000; i++) { + addMember(`@person${i}:bar`, KnownMembership.Join, { name: `Person ${i % 20} ${i % 10} ${i % 3}` }); + } + + // This isn't a real performance test and has plenty of headroom because github + // runners don't offer any kind of speed consistency guarantee, but this should at + // least assert that the perf doesn't suddenly become n^2. + const start = performance.now(); + for (let i = 0; i < 50; i++) { + room.recalculate(); + } + const duration = performance.now() - start; + expect(duration).toBeLessThan(200); + }); }); describe("receipts", function () { diff --git a/src/models/room.ts b/src/models/room.ts index ab5eb7bfd9c..0310b88fe34 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -24,7 +24,7 @@ import { } from "./event-timeline-set"; import { Direction, EventTimeline } from "./event-timeline"; import { getHttpUriForMxc } from "../content-repo"; -import { compare, removeElement } from "../utils"; +import { removeElement } from "../utils"; import { normalize, noUnsafeEventProps } from "../utils"; import { IEvent, IThreadBundledRelationship, MatrixEvent, MatrixEventEvent, MatrixEventHandlerMap } from "./event"; import { EventStatus } from "./event-status"; @@ -3451,7 +3451,8 @@ export class Room extends ReadReceipt { return true; }); // make sure members have stable order - otherMembers.sort((a, b) => compare(a.userId, b.userId)); + const collator = new Intl.Collator(); + otherMembers.sort((a, b) => collator.compare(a.userId, b.userId)); // only 5 first members, immitate summaryHeroes otherMembers = otherMembers.slice(0, 5); otherNames = otherMembers.map((m) => m.name); diff --git a/src/utils.ts b/src/utils.ts index 1d4505f4bb4..0451307d1d1 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -649,16 +649,6 @@ export function lexicographicCompare(a: string, b: string): number { } } -const collator = new Intl.Collator(); -/** - * Performant language-sensitive string comparison - * @param a - the first string to compare - * @param b - the second string to compare - */ -export function compare(a: string, b: string): number { - return collator.compare(a, b); -} - /** * This function is similar to Object.assign() but it assigns recursively and * allows you to ignore nullish values from the source From 5feab3716617e30f63517193f7edfb36f10ed04f Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 23 Jul 2024 11:58:56 +0000 Subject: [PATCH 344/595] v34.2.0-rc.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b7011b44b4b..8f094bbed6e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.1.0", + "version": "34.2.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From aa97beae443f5a7fe1a77990718c93fc14bcaf14 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 24 Jul 2024 09:10:23 +0000 Subject: [PATCH 345/595] Update dependency @types/node to v18.19.41 (#4319) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7dd355b8907..bc15ca4d7f2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1744,9 +1744,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.39" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.39.tgz#c316340a5b4adca3aee9dcbf05de385978590593" - integrity sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ== + version "18.19.42" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.42.tgz#b54ed4752c85427906aab40917b0f7f3d724bf72" + integrity sha512-d2ZFc/3lnK2YCYhos8iaNIYu9Vfhr92nHiyJHRltXWjXUBjEE+A4I58Tdbnw4VhggSW+2j5y5gTrLs4biNnubg== dependencies: undici-types "~5.26.4" From c3d7f4e730ec8d6237ab2a26bf160fe7b3b3f854 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 24 Jul 2024 09:17:18 +0000 Subject: [PATCH 346/595] Update dependency typedoc-plugin-mdn-links to v3.2.5 (#4320) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index bc15ca4d7f2..11739396f69 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6029,9 +6029,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-wpywQ95tqGSD6IbYUPMXSKiwnSWboSKdx2y9X6SJQKzQvBqZoz5iiUyDJFixtW8v7+xmrqXFR/B6Wy37FNhVqA== typedoc-plugin-mdn-links@^3.0.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.3.tgz#0e54c2583f0736e0d2956ec912efb69a73ad414d" - integrity sha512-hz22UgFuzdtgpBXet2dxKf9d2HVixL2VcE9Ke1+X1Nu8W8jSGIB2awIA6HFVsD0vk1OLe3ehU0ibyD5sN7wh4w== + version "3.2.5" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.5.tgz#c3357c7719852e3a1b4c0ca6085b9d467ca97551" + integrity sha512-duQ0H7+bATNSWVQRt3HubspZ9gqgSZxiQkenlTJ8lGsUrldZwpjG56hJqLD6BspNJfEnElP9hIU7yY5+/vF1Eg== typedoc-plugin-missing-exports@^3.0.0: version "3.0.0" From cfb21fa80a1bb1a49daa59ba43d65ba681a4de91 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 24 Jul 2024 09:27:51 +0000 Subject: [PATCH 347/595] Update typescript-eslint monorepo to v7.16.1 (#4322) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 96 ++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 73 insertions(+), 23 deletions(-) diff --git a/yarn.lock b/yarn.lock index 11739396f69..ca0648f4955 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1798,29 +1798,29 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.16.0.tgz#b3563927341eca15124a18c6f94215f779f5c02a" - integrity sha512-py1miT6iQpJcs1BiJjm54AMzeuMPBSPuKPlnT8HlfudbcS5rYeX5jajpLf3mrdRh9dA/Ec2FVUY0ifeVNDIhZw== + version "7.17.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.17.0.tgz#c8ed1af1ad2928ede5cdd207f7e3090499e1f77b" + integrity sha512-pyiDhEuLM3PuANxH7uNYan1AaFs5XE0zw1hq69JBvGvE7gSuEoQl1ydtEe/XQeoC3GQxLXyOVa5kNOATgM638A== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.16.0" - "@typescript-eslint/type-utils" "7.16.0" - "@typescript-eslint/utils" "7.16.0" - "@typescript-eslint/visitor-keys" "7.16.0" + "@typescript-eslint/scope-manager" "7.17.0" + "@typescript-eslint/type-utils" "7.17.0" + "@typescript-eslint/utils" "7.17.0" + "@typescript-eslint/visitor-keys" "7.17.0" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" "@typescript-eslint/parser@^7.0.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.16.0.tgz#53fae8112f8c912024aea7b499cf7374487af6d8" - integrity sha512-ar9E+k7CU8rWi2e5ErzQiC93KKEFAXA2Kky0scAlPcxYblLt8+XZuHUZwlyfXILyQa95P6lQg+eZgh/dDs3+Vw== - dependencies: - "@typescript-eslint/scope-manager" "7.16.0" - "@typescript-eslint/types" "7.16.0" - "@typescript-eslint/typescript-estree" "7.16.0" - "@typescript-eslint/visitor-keys" "7.16.0" + version "7.17.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.17.0.tgz#be8e32c159190cd40a305a2121220eadea5a88e7" + integrity sha512-puiYfGeg5Ydop8eusb/Hy1k7QmOU6X3nvsqCgzrB2K4qMavK//21+PzNE8qeECgNOIoertJPUC1SpegHDI515A== + dependencies: + "@typescript-eslint/scope-manager" "7.17.0" + "@typescript-eslint/types" "7.17.0" + "@typescript-eslint/typescript-estree" "7.17.0" + "@typescript-eslint/visitor-keys" "7.17.0" debug "^4.3.4" "@typescript-eslint/scope-manager@7.16.0": @@ -1831,13 +1831,21 @@ "@typescript-eslint/types" "7.16.0" "@typescript-eslint/visitor-keys" "7.16.0" -"@typescript-eslint/type-utils@7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.16.0.tgz#ec52b1932b8fb44a15a3e20208e0bd49d0b6bd00" - integrity sha512-j0fuUswUjDHfqV/UdW6mLtOQQseORqfdmoBNDFOqs9rvNVR2e+cmu6zJu/Ku4SDuqiJko6YnhwcL8x45r8Oqxg== +"@typescript-eslint/scope-manager@7.17.0": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.17.0.tgz#e072d0f914662a7bfd6c058165e3c2b35ea26b9d" + integrity sha512-0P2jTTqyxWp9HiKLu/Vemr2Rg1Xb5B7uHItdVZ6iAenXmPo4SZ86yOPCJwMqpCyaMiEHTNqizHfsbmCFT1x9SA== dependencies: - "@typescript-eslint/typescript-estree" "7.16.0" - "@typescript-eslint/utils" "7.16.0" + "@typescript-eslint/types" "7.17.0" + "@typescript-eslint/visitor-keys" "7.17.0" + +"@typescript-eslint/type-utils@7.17.0": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.17.0.tgz#c5da78feb134c9c9978cbe89e2b1a589ed22091a" + integrity sha512-XD3aaBt+orgkM/7Cei0XNEm1vwUxQ958AOLALzPlbPqb8C1G8PZK85tND7Jpe69Wualri81PLU+Zc48GVKIMMA== + dependencies: + "@typescript-eslint/typescript-estree" "7.17.0" + "@typescript-eslint/utils" "7.17.0" debug "^4.3.4" ts-api-utils "^1.3.0" @@ -1846,6 +1854,11 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.16.0.tgz#60a19d7e7a6b1caa2c06fac860829d162a036ed2" integrity sha512-fecuH15Y+TzlUutvUl9Cc2XJxqdLr7+93SQIbcZfd4XRGGKoxyljK27b+kxKamjRkU7FYC6RrbSCg0ALcZn/xw== +"@typescript-eslint/types@7.17.0": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.17.0.tgz#7ce8185bdf06bc3494e73d143dbf3293111b9cff" + integrity sha512-a29Ir0EbyKTKHnZWbNsrc/gqfIBqYPwj3F2M+jWE/9bqfEHg0AMtXzkbUkOG6QgEScxh2+Pz9OXe11jHDnHR7A== + "@typescript-eslint/typescript-estree@7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.16.0.tgz#98ac779d526fab2a781e5619c9250f3e33867c09" @@ -1860,7 +1873,31 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.16.0", "@typescript-eslint/utils@^6.0.0 || ^7.0.0": +"@typescript-eslint/typescript-estree@7.17.0": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.17.0.tgz#dcab3fea4c07482329dd6107d3c6480e228e4130" + integrity sha512-72I3TGq93t2GoSBWI093wmKo0n6/b7O4j9o8U+f65TVD0FS6bI2180X5eGEr8MA8PhKMvYe9myZJquUT2JkCZw== + dependencies: + "@typescript-eslint/types" "7.17.0" + "@typescript-eslint/visitor-keys" "7.17.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + minimatch "^9.0.4" + semver "^7.6.0" + ts-api-utils "^1.3.0" + +"@typescript-eslint/utils@7.17.0": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.17.0.tgz#815cd85b9001845d41b699b0ce4f92d6dfb84902" + integrity sha512-r+JFlm5NdB+JXc7aWWZ3fKSm1gn0pkswEwIYsrGPdsT2GjsRATAKXiNtp3vgAAO1xZhX8alIOEQnNMl3kbTgJw== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + "@typescript-eslint/scope-manager" "7.17.0" + "@typescript-eslint/types" "7.17.0" + "@typescript-eslint/typescript-estree" "7.17.0" + +"@typescript-eslint/utils@^6.0.0 || ^7.0.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.16.0.tgz#b38dc0ce1778e8182e227c98d91d3418449aa17f" integrity sha512-PqP4kP3hb4r7Jav+NiRCntlVzhxBNWq6ZQ+zQwII1y/G/1gdIPeYDCKr2+dH6049yJQsWZiHU6RlwvIFBXXGNA== @@ -1878,6 +1915,14 @@ "@typescript-eslint/types" "7.16.0" eslint-visitor-keys "^3.4.3" +"@typescript-eslint/visitor-keys@7.17.0": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.17.0.tgz#680465c734be30969e564b4647f38d6cdf49bfb0" + integrity sha512-RVGC9UhPOCsfCdI9pU++K4nD7to+jTcMIbXTSOcrLqUEW6gF2pU1UUbYJKc9cvcRSK1UDeMJ7pdMxf4bhMpV/A== + dependencies: + "@typescript-eslint/types" "7.17.0" + eslint-visitor-keys "^3.4.3" + "@ungap/structured-clone@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" @@ -5488,11 +5533,16 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.1, semver@^7.6.2: +semver@^7.5.3, semver@^7.5.4, semver@^7.6.1, semver@^7.6.2: version "7.6.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== +semver@^7.6.0: + version "7.6.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" + integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== + set-function-length@^1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" From 60c2e9b3ed771f32cb3152b2f6f2a060bcd04ea2 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 24 Jul 2024 09:45:56 +0000 Subject: [PATCH 348/595] Update babel monorepo (#4318) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 276 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 158 insertions(+), 118 deletions(-) diff --git a/yarn.lock b/yarn.lock index ca0648f4955..a0af8a89149 100644 --- a/yarn.lock +++ b/yarn.lock @@ -23,9 +23,9 @@ "@jridgewell/trace-mapping" "^0.3.24" "@babel/cli@^7.12.10": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.7.tgz#eb2868c1fa384b17ea88d60107577d3e6fd05c4e" - integrity sha512-8dfPprJgV4O14WTx+AQyEA+opgUKPrsIXX/MdL50J1n06EQJ6m1T+CdsJe0qEC0B/Xl85i+Un5KVAxd/PACX9A== + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.8.tgz#79eaa55a69c77cafbea3e87537fd1df5a5a2edf8" + integrity sha512-isdp+G6DpRyKc+3Gqxy2rjzgF7Zj9K0mzLNnxz+E/fgeag8qT3vVulX4gY9dGO1q0y+0lUv6V3a+uhUzMzrwXg== dependencies: "@jridgewell/trace-mapping" "^0.3.25" commander "^6.2.0" @@ -46,26 +46,26 @@ "@babel/highlight" "^7.24.7" picocolors "^1.0.0" -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.7.tgz#d23bbea508c3883ba8251fb4164982c36ea577ed" - integrity sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw== +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.24.8": + version "7.24.9" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.9.tgz#53eee4e68f1c1d0282aa0eb05ddb02d033fc43a0" + integrity sha512-e701mcfApCJqMMueQI0Fb68Amflj83+dvAvHawoBpAz+GDjCIyGHzNwnefjsWJ3xiYAqqiQFoWbspGYBdb2/ng== "@babel/core@^7.0.0", "@babel/core@^7.11.6", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.23.9": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.7.tgz#b676450141e0b52a3d43bc91da86aa608f950ac4" - integrity sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g== + version "7.24.9" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.9.tgz#dc07c9d307162c97fa9484ea997ade65841c7c82" + integrity sha512-5e3FI4Q3M3Pbr21+5xJwCv6ZT6KmGkI0vw3Tozy5ODAQFTIWe37iT8Cr7Ice2Ntb+M3iSKCEWMB1MBgKrW3whg== dependencies: "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.24.7" - "@babel/helper-compilation-targets" "^7.24.7" - "@babel/helper-module-transforms" "^7.24.7" - "@babel/helpers" "^7.24.7" - "@babel/parser" "^7.24.7" + "@babel/generator" "^7.24.9" + "@babel/helper-compilation-targets" "^7.24.8" + "@babel/helper-module-transforms" "^7.24.9" + "@babel/helpers" "^7.24.8" + "@babel/parser" "^7.24.8" "@babel/template" "^7.24.7" - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/traverse" "^7.24.8" + "@babel/types" "^7.24.9" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -73,9 +73,9 @@ semver "^6.3.1" "@babel/eslint-parser@^7.12.10": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.7.tgz#27ebab1a1ec21f48ae191a8aaac5b82baf80d9c7" - integrity sha512-SO5E3bVxDuxyNxM5agFv480YA2HO6ohZbGxbazZdIk3KQOPOGVNw6q78I9/lbviIf95eq6tPozeYnJLbjnC8IA== + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.8.tgz#bc655255fa4ded3694cc10ef3dbea6d69639c831" + integrity sha512-nYAikI4XTGokU2QX7Jx+v4rxZKhKivaQaREZjuW3mrJrbdWJ5yUfohnoUULge+zEEaKjPYNxhoRgUKktjXtbwA== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" @@ -88,7 +88,17 @@ dependencies: eslint-rule-composer "^0.3.0" -"@babel/generator@^7.24.7", "@babel/generator@^7.7.2": +"@babel/generator@^7.24.8", "@babel/generator@^7.24.9": + version "7.24.10" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.10.tgz#a4ab681ec2a78bbb9ba22a3941195e28a81d8e76" + integrity sha512-o9HBZL1G2129luEUlG1hB4N/nlYNWHnpwlND9eOMclRqqu1YDy2sSYVCFUZwl8I1Gxh+QSRrP2vD7EpUmFVXxg== + dependencies: + "@babel/types" "^7.24.9" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" + jsesc "^2.5.1" + +"@babel/generator@^7.7.2": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.7.tgz#1654d01de20ad66b4b4d99c135471bc654c55e6d" integrity sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA== @@ -113,26 +123,26 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz#4eb6c4a80d6ffeac25ab8cd9a21b5dfa48d503a9" - integrity sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg== +"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.7", "@babel/helper-compilation-targets@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.8.tgz#b607c3161cd9d1744977d4f97139572fe778c271" + integrity sha512-oU+UoqCHdp+nWVDkpldqIQL/i/bvAv53tRqLG/s+cOXxe66zOYLU7ar/Xs3LdmBihrUMEUhwu6dMZwbNOYDwvw== dependencies: - "@babel/compat-data" "^7.24.7" - "@babel/helper-validator-option" "^7.24.7" - browserslist "^4.22.2" + "@babel/compat-data" "^7.24.8" + "@babel/helper-validator-option" "^7.24.8" + browserslist "^4.23.1" lru-cache "^5.1.1" semver "^6.3.1" "@babel/helper-create-class-features-plugin@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.7.tgz#2eaed36b3a1c11c53bdf80d53838b293c52f5b3b" - integrity sha512-kTkaDl7c9vO80zeX1rJxnuRpEsD5tA81yh11X1gQo+PhSti3JS+7qeZo9U4RHobKRiFPKaGK3svUAeb8D0Q7eg== + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.8.tgz#47f546408d13c200c0867f9d935184eaa0851b09" + integrity sha512-4f6Oqnmyp2PP3olgUMmOwC3akxSm5aBYraQ6YDdKy7NcAMkDECHWG0DEnV6M2UAkERgIBhYt8S27rURPg7SxWA== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-function-name" "^7.24.7" - "@babel/helper-member-expression-to-functions" "^7.24.7" + "@babel/helper-member-expression-to-functions" "^7.24.8" "@babel/helper-optimise-call-expression" "^7.24.7" "@babel/helper-replace-supers" "^7.24.7" "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" @@ -181,13 +191,13 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-member-expression-to-functions@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.7.tgz#67613d068615a70e4ed5101099affc7a41c5225f" - integrity sha512-LGeMaf5JN4hAT471eJdBs/GK1DoYIJ5GCtZN/EsL6KUiiDZOvO/eKE11AMZJa2zP4zk4qe9V2O/hxAmkRc8p6w== +"@babel/helper-member-expression-to-functions@^7.24.7", "@babel/helper-member-expression-to-functions@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.8.tgz#6155e079c913357d24a4c20480db7c712a5c3fb6" + integrity sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/traverse" "^7.24.8" + "@babel/types" "^7.24.8" "@babel/helper-module-imports@^7.24.7": version "7.24.7" @@ -197,10 +207,10 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-module-transforms@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz#31b6c9a2930679498db65b685b1698bfd6c7daf8" - integrity sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ== +"@babel/helper-module-transforms@^7.24.7", "@babel/helper-module-transforms@^7.24.8", "@babel/helper-module-transforms@^7.24.9": + version "7.24.9" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.9.tgz#e13d26306b89eea569180868e652e7f514de9d29" + integrity sha512-oYbh+rtFKj/HwBQkFlUzvcybzklmVdVV3UU+mN7n2t/q3yGHbuVdNxyFvSBO1tfvjyArpHNcWMAzsSPdyI46hw== dependencies: "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-module-imports" "^7.24.7" @@ -215,10 +225,10 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz#98c84fe6fe3d0d3ae7bfc3a5e166a46844feb2a0" - integrity sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.24.8", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz#94ee67e8ec0e5d44ea7baeb51e571bd26af07878" + integrity sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg== "@babel/helper-remap-async-to-generator@^7.24.7": version "7.24.7" @@ -261,20 +271,20 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-string-parser@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz#4d2d0f14820ede3b9807ea5fc36dfc8cd7da07f2" - integrity sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg== +"@babel/helper-string-parser@^7.24.7", "@babel/helper-string-parser@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" + integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ== "@babel/helper-validator-identifier@^7.24.5", "@babel/helper-validator-identifier@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== -"@babel/helper-validator-option@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz#24c3bb77c7a425d1742eec8fb433b5a1b38e62f6" - integrity sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw== +"@babel/helper-validator-option@^7.24.7", "@babel/helper-validator-option@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz#3725cdeea8b480e86d34df15304806a06975e33d" + integrity sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q== "@babel/helper-wrap-function@^7.24.7": version "7.24.7" @@ -286,13 +296,13 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helpers@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.7.tgz#aa2ccda29f62185acb5d42fb4a3a1b1082107416" - integrity sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg== +"@babel/helpers@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.8.tgz#2820d64d5d6686cca8789dd15b074cd862795873" + integrity sha512-gV2265Nkcz7weJJfvDoAEVzC1e2OTDpkGbEsebse8koXUJUXPsCMi7sRo/+SPMuMZ9MtUPnGwITTnQnU5YjyaQ== dependencies: "@babel/template" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/types" "^7.24.8" "@babel/highlight@^7.24.7": version "7.24.7" @@ -304,11 +314,16 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.7": +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" integrity sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw== +"@babel/parser@^7.24.7", "@babel/parser@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.8.tgz#58a4dbbcad7eb1d48930524a3fd93d93e9084c6f" + integrity sha512-WzfbgXOkGzZiXXCqk43kKwZjzwx4oulxZi3nq2TYL9mOjQv6kYwul9mz6ID36njuL7Xkp6nJEfok848Zj10j/w== + "@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.7.tgz#fd059fd27b184ea2b4c7e646868a9a381bbc3055" @@ -551,16 +566,16 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-transform-classes@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.7.tgz#4ae6ef43a12492134138c1e45913f7c46c41b4bf" - integrity sha512-CFbbBigp8ln4FU6Bpy6g7sE8B/WmCmzvivzUC6xDAdWVsjYTXijpuuGJmYkAaoWAzcItGKT3IOAbxRItZ5HTjw== +"@babel/plugin-transform-classes@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.8.tgz#ad23301fe5bc153ca4cf7fb572a9bc8b0b711cf7" + integrity sha512-VXy91c47uujj758ud9wx+OMgheXm4qJfyhj1P18YvlrQkNOSrwsteHk+EFS3OMGfhMhpZa0A+81eE7G4QC+3CA== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-compilation-targets" "^7.24.7" + "@babel/helper-compilation-targets" "^7.24.8" "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-function-name" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/helper-replace-supers" "^7.24.7" "@babel/helper-split-export-declaration" "^7.24.7" globals "^11.1.0" @@ -573,12 +588,12 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/template" "^7.24.7" -"@babel/plugin-transform-destructuring@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.7.tgz#a097f25292defb6e6cc16d6333a4cfc1e3c72d9e" - integrity sha512-19eJO/8kdCQ9zISOf+SEUJM/bAUIsvY3YDnXZTupUCQ8LgrWnsG/gFB9dvXqdXnRXMAM8fvt7b0CBKQHNGy1mw== +"@babel/plugin-transform-destructuring@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.8.tgz#c828e814dbe42a2718a838c2a2e16a408e055550" + integrity sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-transform-dotall-regex@^7.24.7": version "7.24.7" @@ -683,6 +698,15 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/helper-simple-access" "^7.24.7" +"@babel/plugin-transform-modules-commonjs@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.8.tgz#ab6421e564b717cb475d6fff70ae7f103536ea3c" + integrity sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA== + dependencies: + "@babel/helper-module-transforms" "^7.24.8" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-simple-access" "^7.24.7" + "@babel/plugin-transform-modules-systemjs@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.7.tgz#f8012316c5098f6e8dee6ecd58e2bc6f003d0ce7" @@ -758,12 +782,12 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-transform-optional-chaining@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.7.tgz#b8f6848a80cf2da98a8a204429bec04756c6d454" - integrity sha512-tK+0N9yd4j+x/4hxF3F0e0fu/VdcxU18y5SevtyM/PCFlQvXbR0Zmlo2eBrKtVipGNFzpq56o8WsIIKcJFUCRQ== +"@babel/plugin-transform-optional-chaining@^7.24.7", "@babel/plugin-transform-optional-chaining@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.8.tgz#bb02a67b60ff0406085c13d104c99a835cdf365d" + integrity sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" "@babel/plugin-syntax-optional-chaining" "^7.8.3" @@ -855,12 +879,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-typeof-symbol@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.7.tgz#f074be466580d47d6e6b27473a840c9f9ca08fb0" - integrity sha512-VtR8hDy7YLB7+Pet9IarXjg/zgCMSF+1mNS/EQEiEaUPoFXCVsHG64SIxcaaI2zJgRiv+YmgaQESUfWAdbjzgg== +"@babel/plugin-transform-typeof-symbol@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.8.tgz#383dab37fb073f5bfe6e60c654caac309f92ba1c" + integrity sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-transform-typescript@^7.24.7": version "7.24.7" @@ -904,14 +928,14 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/preset-env@^7.12.11": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.7.tgz#ff067b4e30ba4a72f225f12f123173e77b987f37" - integrity sha512-1YZNsc+y6cTvWlDHidMBsQZrZfEFjRIo/BZCT906PMdzOyXtSLTgqGdrpcuTDCXyd11Am5uQULtDIcCfnTc8fQ== - dependencies: - "@babel/compat-data" "^7.24.7" - "@babel/helper-compilation-targets" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-validator-option" "^7.24.7" + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.8.tgz#e0db94d7f17d6f0e2564e8d29190bc8cdacec2d1" + integrity sha512-vObvMZB6hNWuDxhSaEPTKCwcqkAIuDtE+bQGn4XMXne1DSLzFVY8Vmj1bm+mUQXYNN8NmaQEO+r8MMbzPr1jBQ== + dependencies: + "@babel/compat-data" "^7.24.8" + "@babel/helper-compilation-targets" "^7.24.8" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-validator-option" "^7.24.8" "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.7" "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.7" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.7" @@ -942,9 +966,9 @@ "@babel/plugin-transform-block-scoping" "^7.24.7" "@babel/plugin-transform-class-properties" "^7.24.7" "@babel/plugin-transform-class-static-block" "^7.24.7" - "@babel/plugin-transform-classes" "^7.24.7" + "@babel/plugin-transform-classes" "^7.24.8" "@babel/plugin-transform-computed-properties" "^7.24.7" - "@babel/plugin-transform-destructuring" "^7.24.7" + "@babel/plugin-transform-destructuring" "^7.24.8" "@babel/plugin-transform-dotall-regex" "^7.24.7" "@babel/plugin-transform-duplicate-keys" "^7.24.7" "@babel/plugin-transform-dynamic-import" "^7.24.7" @@ -957,7 +981,7 @@ "@babel/plugin-transform-logical-assignment-operators" "^7.24.7" "@babel/plugin-transform-member-expression-literals" "^7.24.7" "@babel/plugin-transform-modules-amd" "^7.24.7" - "@babel/plugin-transform-modules-commonjs" "^7.24.7" + "@babel/plugin-transform-modules-commonjs" "^7.24.8" "@babel/plugin-transform-modules-systemjs" "^7.24.7" "@babel/plugin-transform-modules-umd" "^7.24.7" "@babel/plugin-transform-named-capturing-groups-regex" "^7.24.7" @@ -967,7 +991,7 @@ "@babel/plugin-transform-object-rest-spread" "^7.24.7" "@babel/plugin-transform-object-super" "^7.24.7" "@babel/plugin-transform-optional-catch-binding" "^7.24.7" - "@babel/plugin-transform-optional-chaining" "^7.24.7" + "@babel/plugin-transform-optional-chaining" "^7.24.8" "@babel/plugin-transform-parameters" "^7.24.7" "@babel/plugin-transform-private-methods" "^7.24.7" "@babel/plugin-transform-private-property-in-object" "^7.24.7" @@ -978,7 +1002,7 @@ "@babel/plugin-transform-spread" "^7.24.7" "@babel/plugin-transform-sticky-regex" "^7.24.7" "@babel/plugin-transform-template-literals" "^7.24.7" - "@babel/plugin-transform-typeof-symbol" "^7.24.7" + "@babel/plugin-transform-typeof-symbol" "^7.24.8" "@babel/plugin-transform-unicode-escapes" "^7.24.7" "@babel/plugin-transform-unicode-property-regex" "^7.24.7" "@babel/plugin-transform-unicode-regex" "^7.24.7" @@ -987,7 +1011,7 @@ babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.4" babel-plugin-polyfill-regenerator "^0.6.1" - core-js-compat "^3.31.0" + core-js-compat "^3.37.1" semver "^6.3.1" "@babel/preset-modules@0.1.6-no-external-plugins": @@ -1016,9 +1040,9 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.7.tgz#f4f0d5530e8dbdf59b3451b9b3e594b6ba082e12" - integrity sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw== + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.8.tgz#5d958c3827b13cc6d05e038c07fb2e5e3420d82e" + integrity sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA== dependencies: regenerator-runtime "^0.14.0" @@ -1031,23 +1055,23 @@ "@babel/parser" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/traverse@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.7.tgz#de2b900163fa741721ba382163fe46a936c40cf5" - integrity sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA== +"@babel/traverse@^7.24.7", "@babel/traverse@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.8.tgz#6c14ed5232b7549df3371d820fbd9abfcd7dfab7" + integrity sha512-t0P1xxAPzEDcEPmjprAQq19NWum4K0EQPjMwZQZbHt+GiZqvjCHjj755Weq1YRPVzBI+3zSfvScfpnuIecVFJQ== dependencies: "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.24.7" + "@babel/generator" "^7.24.8" "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-function-name" "^7.24.7" "@babel/helper-hoist-variables" "^7.24.7" "@babel/helper-split-export-declaration" "^7.24.7" - "@babel/parser" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/parser" "^7.24.8" + "@babel/types" "^7.24.8" debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.24.7", "@babel/types@^7.3.3", "@babel/types@^7.4.4": +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.3.3": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.7.tgz#6027fe12bc1aa724cd32ab113fb7f1988f1f66f2" integrity sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q== @@ -1056,6 +1080,15 @@ "@babel/helper-validator-identifier" "^7.24.7" to-fast-properties "^2.0.0" +"@babel/types@^7.24.7", "@babel/types@^7.24.8", "@babel/types@^7.24.9", "@babel/types@^7.4.4": + version "7.24.9" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.9.tgz#228ce953d7b0d16646e755acf204f4cf3d08cc73" + integrity sha512-xm8XrMKz0IlUdocVbYJe0Z9xEgidU7msskG8BbhnTPK/HZ2z/7FP7ykqPgrUH+C+r414mNfNWam1f2vqOjqjYQ== + dependencies: + "@babel/helper-string-parser" "^7.24.8" + "@babel/helper-validator-identifier" "^7.24.7" + to-fast-properties "^2.0.0" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -2294,7 +2327,7 @@ braces@^3.0.3, braces@~3.0.2: dependencies: fill-range "^7.1.1" -browserslist@^4.22.2, browserslist@^4.23.0: +browserslist@^4.23.0, browserslist@^4.23.1: version "4.23.2" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.2.tgz#244fe803641f1c19c28c48c4b6ec9736eb3d32ed" integrity sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA== @@ -2355,9 +2388,9 @@ camelcase@^6.2.0: integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30001640: - version "1.0.30001641" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001641.tgz#3572862cd18befae3f637f2a1101cc033c6782ac" - integrity sha512-Phv5thgl67bHYo1TtMY/MurjkHhV4EDaCosezRXgZ8jzA/Ub+wjxAvbGvjoFENStinwi5kCyOYV3mi5tOGykwA== + version "1.0.30001643" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001643.tgz#9c004caef315de9452ab970c3da71085f8241dbd" + integrity sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg== chalk@5.2.0: version "5.2.0" @@ -2543,7 +2576,7 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -core-js-compat@^3.31.0, core-js-compat@^3.36.1, core-js-compat@^3.37.0: +core-js-compat@^3.36.1, core-js-compat@^3.37.0, core-js-compat@^3.37.1: version "3.37.1" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.37.1.tgz#c844310c7852f4bdf49b8d339730b97e17ff09ee" integrity sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg== @@ -2762,9 +2795,9 @@ easy-table@1.2.0: wcwidth "^1.0.1" electron-to-chromium@^1.4.820: - version "1.4.823" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.823.tgz#38587f7aa55bed14930f04091dfc65c39a3d8bd7" - integrity sha512-4h+oPeAiGQOHFyUJOqpoEcPj/xxlicxBzOErVeYVMMmAiXUXsGpsFd0QXBMaUUbnD8hhSfLf9uw+MlsoIA7j5w== + version "1.5.0" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.0.tgz#0d3123a9f09189b9c7ab4b5d6848d71b3c1fd0e8" + integrity sha512-Vb3xHHYnLseK8vlMJQKJYXJ++t4u1/qJ3vykuVrVjvdiOEhYyT1AuP4x03G8EnPmYvYOhe9T+dADTmthjRQMkA== emittery@^0.13.1: version "0.13.1" @@ -3796,13 +3829,20 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.13.1: +is-core-module@^2.11.0, is-core-module@^2.13.1: version "2.14.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.14.0.tgz#43b8ef9f46a6a08888db67b1ffd4ec9e3dfd59d1" integrity sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A== dependencies: hasown "^2.0.2" +is-core-module@^2.13.0: + version "2.15.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.0.tgz#71c72ec5442ace7e76b306e9d48db361f22699ea" + integrity sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA== + dependencies: + hasown "^2.0.2" + is-data-view@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.1.tgz#4b4d3a511b70f3dc26d42c03ca9ca515d847759f" @@ -4894,9 +4934,9 @@ node-int64@^0.4.0: integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== node-releases@^2.0.14: - version "2.0.14" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" - integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== + version "2.0.18" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" + integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== normalize-package-data@^2.5.0: version "2.5.0" From 509e64cfc13d79337e8549cb6015a1a3e0dd8202 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 24 Jul 2024 10:32:17 +0000 Subject: [PATCH 349/595] Update dependency typescript to v5.5.4 (#4321) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a0af8a89149..7af852131e1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6140,9 +6140,9 @@ typedoc@^0.26.0: yaml "^2.4.5" typescript@^5.3.3: - version "5.5.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.3.tgz#e1b0a3c394190838a0b168e771b0ad56a0af0faa" - integrity sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ== + version "5.5.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba" + integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== uc.micro@^2.0.0, uc.micro@^2.1.0: version "2.1.0" From 553758e7132fc2adeee929cbfd7e364f462a0054 Mon Sep 17 00:00:00 2001 From: Valere Date: Wed, 24 Jul 2024 13:53:36 +0200 Subject: [PATCH 350/595] Bump rust sdk wasm version to 7.0.0 (#4316) --- package.json | 2 +- src/rust-crypto/RoomEncryptor.ts | 14 ++++++++---- yarn.lock | 39 ++++++-------------------------- 3 files changed, 17 insertions(+), 38 deletions(-) diff --git a/package.json b/package.json index f3e59800e0b..c78b03879b3 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^6.0.0", + "@matrix-org/matrix-sdk-crypto-wasm": "^7.0.0", "another-json": "^0.2.0", "bs58": "^6.0.0", "content-type": "^1.0.4", diff --git a/src/rust-crypto/RoomEncryptor.ts b/src/rust-crypto/RoomEncryptor.ts index 788bf3308c4..8336e498ccd 100644 --- a/src/rust-crypto/RoomEncryptor.ts +++ b/src/rust-crypto/RoomEncryptor.ts @@ -14,16 +14,17 @@ See the License for the specific language governing permissions and limitations under the License. */ +import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; import { + CollectStrategy, EncryptionAlgorithm, EncryptionSettings, + HistoryVisibility as RustHistoryVisibility, OlmMachine, RoomId, - UserId, - HistoryVisibility as RustHistoryVisibility, ToDeviceRequest, + UserId, } from "@matrix-org/matrix-sdk-crypto-wasm"; -import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; import { EventType } from "../@types/event"; import { IContent, MatrixEvent } from "../models/event"; @@ -252,8 +253,11 @@ export class RoomEncryptor { // When this.room.getBlacklistUnverifiedDevices() === null, the global settings should be used // See Room#getBlacklistUnverifiedDevices - rustEncryptionSettings.onlyAllowTrustedDevices = - this.room.getBlacklistUnverifiedDevices() ?? globalBlacklistUnverifiedDevices; + if (this.room.getBlacklistUnverifiedDevices() ?? globalBlacklistUnverifiedDevices) { + rustEncryptionSettings.sharingStrategy = CollectStrategy.DeviceBasedStrategyOnlyTrustedDevices; + } else { + rustEncryptionSettings.sharingStrategy = CollectStrategy.DeviceBasedStrategyAllDevices; + } await logDuration(this.prefixedLogger, "shareRoomKey", async () => { const shareMessages: ToDeviceRequest[] = await this.olmMachine.shareRoomKey( diff --git a/yarn.lock b/yarn.lock index 7af852131e1..cc97ca9b5ef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1473,10 +1473,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@matrix-org/matrix-sdk-crypto-wasm@^6.0.0": - version "6.2.1" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-6.2.1.tgz#94cd1263656e2b4f3b1dc6f728856efab8920aca" - integrity sha512-5mav0EKog0w9NWRRxFzZ+ZcT5Il/KlLh1bsQXgxfhzfJq1RgWLLu+OsvHSZau5NSbPxfOd4ZTWc2ZLAf+V/8mg== +"@matrix-org/matrix-sdk-crypto-wasm@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-7.0.0.tgz#8d6abdb9ded8656cc9e2a7909913a34bf3fc9b3a" + integrity sha512-MOencXiW/gI5MuTtCNsuojjwT5DXCrjMqv9xOslJC9h2tPdLFFFMGr58dY5Lis4DRd9MRWcgrGowUIHOqieWTA== "@matrix-org/olm@3.2.15": version "3.2.15" @@ -5758,16 +5758,7 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width-cjs@npm:string-width@^4.2.0": - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -5822,14 +5813,7 @@ string.prototype.trimstart@^1.0.8: define-properties "^1.2.1" es-object-atoms "^1.0.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -6370,16 +6354,7 @@ word-wrap@^1.2.5: resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== From 46604abe7b73a5594f34801d65cfacf9bc0e3959 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 24 Jul 2024 14:26:04 +0100 Subject: [PATCH 351/595] Update dependency matrix-widget-api to v1.7.0 (#4326) * Update dependency matrix-widget-api to v1.7.0 * Fix types Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- src/embedded.ts | 4 ++-- yarn.lock | 37 +++++++++++++++++++++++++++++++------ 2 files changed, 33 insertions(+), 8 deletions(-) diff --git a/src/embedded.ts b/src/embedded.ts index d1b84ce2fa1..8a1492622ee 100644 --- a/src/embedded.ts +++ b/src/embedded.ts @@ -258,7 +258,7 @@ export class RoomWidgetClient extends MatrixClient { } room.updatePendingEvent(event, EventStatus.SENT, response.event_id); - return { event_id: response.event_id }; + return { event_id: response.event_id! }; } public async sendStateEvent( @@ -267,7 +267,7 @@ export class RoomWidgetClient extends MatrixClient { content: any, stateKey = "", ): Promise { - return await this.widgetApi.sendStateEvent(eventType, stateKey, content, roomId); + return (await this.widgetApi.sendStateEvent(eventType, stateKey, content, roomId)) as ISendEventResponse; } public async sendToDevice(eventType: string, contentMap: SendToDeviceContentMap): Promise<{}> { diff --git a/yarn.lock b/yarn.lock index cc97ca9b5ef..32d13f7d4b6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4813,9 +4813,9 @@ matrix-mock-request@^2.5.0: expect "^28.1.0" matrix-widget-api@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.6.0.tgz#f0075411edffc6de339580ade7e6e6e6edb01af4" - integrity sha512-VXIJyAZ/WnBmT4C7ePqevgMYGneKMCP/0JuCOqntSsaNlCRHJvwvTxmqUU+ufOpzIF5gYNyIrAjbgrEbK3iqJQ== + version "1.7.0" + resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.7.0.tgz#ae3b44380f11bb03519d0bf0373dfc3341634667" + integrity sha512-dzSnA5Va6CeIkyWs89xZty/uv38HLyfjOrHGbbEikCa2ZV0HTkUNtrBMKlrn4CRYyDJ6yoO/3ssRwiR0jJvOkQ== dependencies: "@types/events" "^3.0.0" events "^3.2.0" @@ -5758,7 +5758,16 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -5813,7 +5822,14 @@ string.prototype.trimstart@^1.0.8: define-properties "^1.2.1" es-object-atoms "^1.0.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -6354,7 +6370,16 @@ word-wrap@^1.2.5: resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== From f9f6d8134613dddfd520e4760bf28b34d0c0ba9d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 24 Jul 2024 15:42:05 +0100 Subject: [PATCH 352/595] Lock file maintenance (#4327) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 270 ++++++++++++++++-------------------------------------- 1 file changed, 78 insertions(+), 192 deletions(-) diff --git a/yarn.lock b/yarn.lock index 32d13f7d4b6..80c325a1734 100644 --- a/yarn.lock +++ b/yarn.lock @@ -88,7 +88,7 @@ dependencies: eslint-rule-composer "^0.3.0" -"@babel/generator@^7.24.8", "@babel/generator@^7.24.9": +"@babel/generator@^7.24.8", "@babel/generator@^7.24.9", "@babel/generator@^7.7.2": version "7.24.10" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.10.tgz#a4ab681ec2a78bbb9ba22a3941195e28a81d8e76" integrity sha512-o9HBZL1G2129luEUlG1hB4N/nlYNWHnpwlND9eOMclRqqu1YDy2sSYVCFUZwl8I1Gxh+QSRrP2vD7EpUmFVXxg== @@ -98,16 +98,6 @@ "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" -"@babel/generator@^7.7.2": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.7.tgz#1654d01de20ad66b4b4d99c135471bc654c55e6d" - integrity sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA== - dependencies: - "@babel/types" "^7.24.7" - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.25" - jsesc "^2.5.1" - "@babel/helper-annotate-as-pure@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz#5373c7bc8366b12a033b4be1ac13a206c6656aab" @@ -134,7 +124,7 @@ lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.24.7": +"@babel/helper-create-class-features-plugin@^7.24.7", "@babel/helper-create-class-features-plugin@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.8.tgz#47f546408d13c200c0867f9d935184eaa0851b09" integrity sha512-4f6Oqnmyp2PP3olgUMmOwC3akxSm5aBYraQ6YDdKy7NcAMkDECHWG0DEnV6M2UAkERgIBhYt8S27rURPg7SxWA== @@ -271,7 +261,7 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-string-parser@^7.24.7", "@babel/helper-string-parser@^7.24.8": +"@babel/helper-string-parser@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ== @@ -314,12 +304,7 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" - integrity sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw== - -"@babel/parser@^7.24.7", "@babel/parser@^7.24.8": +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.7", "@babel/parser@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.8.tgz#58a4dbbcad7eb1d48930524a3fd93d93e9084c6f" integrity sha512-WzfbgXOkGzZiXXCqk43kKwZjzwx4oulxZi3nq2TYL9mOjQv6kYwul9mz6ID36njuL7Xkp6nJEfok848Zj10j/w== @@ -689,16 +674,7 @@ "@babel/helper-module-transforms" "^7.24.7" "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-modules-commonjs@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.7.tgz#9fd5f7fdadee9085886b183f1ad13d1ab260f4ab" - integrity sha512-iFI8GDxtevHJ/Z22J5xQpVqFLlMNstcLXh994xifFwxxGslr2ZXXLWgtBeLctOD63UFDArdvN6Tg8RFw+aEmjQ== - dependencies: - "@babel/helper-module-transforms" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-simple-access" "^7.24.7" - -"@babel/plugin-transform-modules-commonjs@^7.24.8": +"@babel/plugin-transform-modules-commonjs@^7.24.7", "@babel/plugin-transform-modules-commonjs@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.8.tgz#ab6421e564b717cb475d6fff70ae7f103536ea3c" integrity sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA== @@ -887,13 +863,13 @@ "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-transform-typescript@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.7.tgz#b006b3e0094bf0813d505e0c5485679eeaf4a881" - integrity sha512-iLD3UNkgx2n/HrjBesVbYX6j0yqn/sJktvbtKKgcaLIQ4bTTQ8obAypc1VpyHPD2y4Phh9zHOaAt8e/L14wCpw== + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.8.tgz#c104d6286e04bf7e44b8cba1b686d41bad57eb84" + integrity sha512-CgFgtN61BbdOGCP4fLaAMOPkzWUh6yQZNMr5YSt8uz2cZSSiQONCQFWqsE4NeVfOIhqDOlS9CR3WD91FzMeB2Q== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-create-class-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-class-features-plugin" "^7.24.8" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-syntax-typescript" "^7.24.7" "@babel/plugin-transform-unicode-escapes@^7.24.7": @@ -1071,16 +1047,7 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.3.3": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.7.tgz#6027fe12bc1aa724cd32ab113fb7f1988f1f66f2" - integrity sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q== - dependencies: - "@babel/helper-string-parser" "^7.24.7" - "@babel/helper-validator-identifier" "^7.24.7" - to-fast-properties "^2.0.0" - -"@babel/types@^7.24.7", "@babel/types@^7.24.8", "@babel/types@^7.24.9", "@babel/types@^7.4.4": +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.24.7", "@babel/types@^7.24.8", "@babel/types@^7.24.9", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.24.9" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.9.tgz#228ce953d7b0d16646e755acf204f4cf3d08cc73" integrity sha512-xm8XrMKz0IlUdocVbYJe0Z9xEgidU7msskG8BbhnTPK/HZ2z/7FP7ykqPgrUH+C+r414mNfNWam1f2vqOjqjYQ== @@ -1110,15 +1077,13 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@es-joy/jsdoccomment@~0.45.0": - version "0.45.0" - resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.45.0.tgz#20410348ab4d703e602179f5c79f9d59819377a0" - integrity sha512-U8T5eXLkP78Sr12rR91494GhlEgp8jqs7OaUHbdUffADxU1JQmKjZm5uSyAEGv2oolDMJ+wce7yylfnnwOevtA== +"@es-joy/jsdoccomment@~0.46.0": + version "0.46.0" + resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.46.0.tgz#47a2ee4bfc0081f252e058272dfab680aaed464d" + integrity sha512-C3Axuq1xd/9VqFZpW4YAzOx5O9q/LP46uIQy/iNDpHG3fmPa6TBtvfglMCs3RBiBxAIi0Go97r8+jvTt55XMyQ== dependencies: - "@types/eslint" "^8.56.5" - "@types/estree" "^1.0.5" comment-parser "1.4.1" - esquery "^1.5.0" + esquery "^1.6.0" jsdoc-type-pratt-parser "~4.0.0" "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": @@ -1568,10 +1533,10 @@ resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.1.1.tgz#1ec17e2edbec25c8306d424ecfbf13c7de1aaa31" integrity sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA== -"@shikijs/core@1.10.3": - version "1.10.3" - resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.10.3.tgz#f01763b36f08ad3d2ef46cea7e61858d9d9947d6" - integrity sha512-D45PMaBaeDHxww+EkcDQtDAtzv00Gcsp72ukBtaLSmqRvh0WgGMq3Al0rl1QQBZfuneO75NXMIzEZGFitThWbg== +"@shikijs/core@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.11.1.tgz#a102cf56f32fa8cf3ceb9f918f2da5511782efe7" + integrity sha512-Qsn8h15SWgv5TDRoDmiHNzdQO2BxDe86Yq6vIHf5T0cCvmfmccJKIzHtep8bQO9HMBZYCtCBzaXdd1MnxZBPSg== dependencies: "@types/hast" "^3.0.4" @@ -1686,19 +1651,6 @@ dependencies: "@types/ms" "*" -"@types/eslint@^8.56.5": - version "8.56.10" - resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.56.10.tgz#eb2370a73bf04a901eeba8f22595c7ee0f7eb58d" - integrity sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ== - dependencies: - "@types/estree" "*" - "@types/json-schema" "*" - -"@types/estree@*", "@types/estree@^1.0.5": - version "1.0.5" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" - integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== - "@types/events@^3.0.0": version "3.0.3" resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.3.tgz#a8ef894305af28d1fc6d2dfdfc98e899591ea529" @@ -1754,11 +1706,6 @@ "@types/tough-cookie" "*" parse5 "^7.0.0" -"@types/json-schema@*": - version "7.0.15" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" - integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== - "@types/json5@^0.0.29": version "0.0.29" resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" @@ -1770,9 +1717,9 @@ integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g== "@types/node@*": - version "20.14.10" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.10.tgz#a1a218290f1b6428682e3af044785e5874db469a" - integrity sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ== + version "20.14.12" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.12.tgz#129d7c3a822cb49fc7ff661235f19cfefd422b49" + integrity sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ== dependencies: undici-types "~5.26.4" @@ -1856,14 +1803,6 @@ "@typescript-eslint/visitor-keys" "7.17.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.16.0.tgz#eb0757af5720c9c53c8010d7a0355ae27e17b7e5" - integrity sha512-8gVv3kW6n01Q6TrI1cmTZ9YMFi3ucDT7i7aI5lEikk2ebk1AEjrwX8MDTdaX5D7fPXMBLvnsaa0IFTAu+jcfOw== - dependencies: - "@typescript-eslint/types" "7.16.0" - "@typescript-eslint/visitor-keys" "7.16.0" - "@typescript-eslint/scope-manager@7.17.0": version "7.17.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.17.0.tgz#e072d0f914662a7bfd6c058165e3c2b35ea26b9d" @@ -1882,30 +1821,11 @@ debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.16.0.tgz#60a19d7e7a6b1caa2c06fac860829d162a036ed2" - integrity sha512-fecuH15Y+TzlUutvUl9Cc2XJxqdLr7+93SQIbcZfd4XRGGKoxyljK27b+kxKamjRkU7FYC6RrbSCg0ALcZn/xw== - "@typescript-eslint/types@7.17.0": version "7.17.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.17.0.tgz#7ce8185bdf06bc3494e73d143dbf3293111b9cff" integrity sha512-a29Ir0EbyKTKHnZWbNsrc/gqfIBqYPwj3F2M+jWE/9bqfEHg0AMtXzkbUkOG6QgEScxh2+Pz9OXe11jHDnHR7A== -"@typescript-eslint/typescript-estree@7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.16.0.tgz#98ac779d526fab2a781e5619c9250f3e33867c09" - integrity sha512-a5NTvk51ZndFuOLCh5OaJBELYc2O3Zqxfl3Js78VFE1zE46J2AaVuW+rEbVkQznjkmlzWsUI15BG5tQMixzZLw== - dependencies: - "@typescript-eslint/types" "7.16.0" - "@typescript-eslint/visitor-keys" "7.16.0" - debug "^4.3.4" - globby "^11.1.0" - is-glob "^4.0.3" - minimatch "^9.0.4" - semver "^7.6.0" - ts-api-utils "^1.3.0" - "@typescript-eslint/typescript-estree@7.17.0": version "7.17.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.17.0.tgz#dcab3fea4c07482329dd6107d3c6480e228e4130" @@ -1920,7 +1840,7 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.17.0": +"@typescript-eslint/utils@7.17.0", "@typescript-eslint/utils@^6.0.0 || ^7.0.0": version "7.17.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.17.0.tgz#815cd85b9001845d41b699b0ce4f92d6dfb84902" integrity sha512-r+JFlm5NdB+JXc7aWWZ3fKSm1gn0pkswEwIYsrGPdsT2GjsRATAKXiNtp3vgAAO1xZhX8alIOEQnNMl3kbTgJw== @@ -1930,24 +1850,6 @@ "@typescript-eslint/types" "7.17.0" "@typescript-eslint/typescript-estree" "7.17.0" -"@typescript-eslint/utils@^6.0.0 || ^7.0.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.16.0.tgz#b38dc0ce1778e8182e227c98d91d3418449aa17f" - integrity sha512-PqP4kP3hb4r7Jav+NiRCntlVzhxBNWq6ZQ+zQwII1y/G/1gdIPeYDCKr2+dH6049yJQsWZiHU6RlwvIFBXXGNA== - dependencies: - "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.16.0" - "@typescript-eslint/types" "7.16.0" - "@typescript-eslint/typescript-estree" "7.16.0" - -"@typescript-eslint/visitor-keys@7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.16.0.tgz#a1d99fa7a3787962d6e0efd436575ef840e23b06" - integrity sha512-rMo01uPy9C7XxG7AFsxa8zLnWXTF8N3PYclekWSrurvhwiw1eW88mrKiAYe6s53AUY57nTRz8dJsuuXdkAhzCg== - dependencies: - "@typescript-eslint/types" "7.16.0" - eslint-visitor-keys "^3.4.3" - "@typescript-eslint/visitor-keys@7.17.0": version "7.17.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.17.0.tgz#680465c734be30969e564b4647f38d6cdf49bfb0" @@ -2820,9 +2722,9 @@ emoji-regex@^9.2.2: integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== enhanced-resolve@^5.12.0: - version "5.17.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz#d037603789dd9555b89aaec7eb78845c49089bc5" - integrity sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA== + version "5.17.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz#67bfbbcc2f81d511be77d686a90267ef7f898a15" + integrity sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg== dependencies: graceful-fs "^4.2.4" tapable "^2.2.0" @@ -3041,20 +2943,20 @@ eslint-plugin-jest@^28.0.0: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0" eslint-plugin-jsdoc@^48.0.0: - version "48.6.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.6.0.tgz#e8fade0fe783fd9c8d2f30a462ba2c1e506091aa" - integrity sha512-UsOdFYWeyYaiGW1OzJaKvRpb88JPF0HGpDkmMDvhfWbTGu3B4TYKhGH3cPGiRjMDxKPA3fJ/+tL823argNxOkA== + version "48.8.3" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.8.3.tgz#0a651bc0ab5b0732c39e12b26771fca78c830c1c" + integrity sha512-AtIvwwW9D17MRkM0Z0y3/xZYaa9mdAvJrkY6fU/HNUwGbmMtHVvK4qRM9CDixGVtfNrQitb8c6zQtdh6cTOvLg== dependencies: - "@es-joy/jsdoccomment" "~0.45.0" + "@es-joy/jsdoccomment" "~0.46.0" are-docs-informative "^0.0.2" comment-parser "1.4.1" debug "^4.3.5" escape-string-regexp "^4.0.0" esquery "^1.6.0" parse-imports "^2.1.1" - semver "^7.6.2" + semver "^7.6.3" spdx-expression-parse "^4.0.0" - synckit "^0.9.0" + synckit "^0.9.1" eslint-plugin-matrix-org@^1.0.0: version "1.2.1" @@ -3524,9 +3426,9 @@ get-symbol-description@^1.0.2: get-intrinsic "^1.2.4" get-tsconfig@^4.5.0: - version "4.7.5" - resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.7.5.tgz#5e012498579e9a6947511ed0cd403272c7acbbaf" - integrity sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw== + version "4.7.6" + resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.7.6.tgz#118fd5b7b9bae234cc7705a00cd771d7eb65d62a" + integrity sha512-ZAqrLlu18NbDdRaHq+AKXzAmqIUPswPWKUchfytdAjiRFnCe5ojG2bstg6mRiZabkKfCoL/e98pbBELIV/YCeA== dependencies: resolve-pkg-maps "^1.0.0" @@ -3718,9 +3620,9 @@ human-signals@^5.0.0: integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ== husky@^9.0.0: - version "9.0.11" - resolved "https://registry.yarnpkg.com/husky/-/husky-9.0.11.tgz#fc91df4c756050de41b3e478b2158b87c1e79af9" - integrity sha512-AB6lFlbwwyIqMdHYhwPe+kjOC3Oc5P3nThEoW/AaO2BX3vJDjWPFxYLxokUZOo6RNX20He3AaT8sESs9NJcmEw== + version "9.1.1" + resolved "https://registry.yarnpkg.com/husky/-/husky-9.1.1.tgz#73f8f1b58329f377654293148c1a6458f54ca224" + integrity sha512-fCqlqLXcBnXa/TJXmT93/A36tJsjdJkibQ1MuIiFyCCYUlpYpIaj2mv1w+3KR6Rzu1IC3slFTje5f6DUp2A2rg== iconv-lite@0.6.3: version "0.6.3" @@ -3743,9 +3645,9 @@ import-fresh@^3.2.1: resolve-from "^4.0.0" import-local@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" - integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== + version "3.2.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.2.0.tgz#c3d5c745798c02a6f8b897726aba5100186ee260" + integrity sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA== dependencies: pkg-dir "^4.2.0" resolve-cwd "^3.0.0" @@ -3829,14 +3731,7 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.11.0, is-core-module@^2.13.1: - version "2.14.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.14.0.tgz#43b8ef9f46a6a08888db67b1ffd4ec9e3dfd59d1" - integrity sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A== - dependencies: - hasown "^2.0.2" - -is-core-module@^2.13.0: +is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.13.1: version "2.15.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.0.tgz#71c72ec5442ace7e76b306e9d48db361f22699ea" integrity sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA== @@ -4591,7 +4486,7 @@ json5@^1.0.2: dependencies: minimist "^1.2.0" -json5@^2.2.2, json5@^2.2.3: +json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== @@ -4614,9 +4509,9 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.25.1" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.25.1.tgz#656063e411e98fee770cbf66209d6db6abb609a7" - integrity sha512-vUopqkh/gOovZ05qYgTghZpmkM3b2eKYdLTsu11ZTYnYEcsdfQeZs6l4U7Rap4b+1KEDd/yydJsuWl+4NyEA9g== + version "5.27.0" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.27.0.tgz#b124b3d2ba4e012b51c0efe7f61b0d1303cc31a2" + integrity sha512-W8+jhO7i5pXRUqOzhJGm2DT5/d9aQjyrYTCSojqJxFOvi7ku/nHKzpBO3WNf4eflJo0t3zitmUkM69g53qoZQw== dependencies: "@nodelib/fs.walk" "1.2.8" "@snyk/github-codeowners" "1.1.0" @@ -4632,7 +4527,6 @@ knip@^5.0.0: smol-toml "^1.1.4" strip-json-comments "5.0.1" summary "2.1.0" - tsconfig-paths "^4.2.0" zod "^3.22.4" zod-validation-error "^3.0.3" @@ -4968,9 +4862,9 @@ npm-run-path@^5.1.0: path-key "^4.0.0" nwsapi@^2.2.2: - version "2.2.10" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.10.tgz#0b77a68e21a0b483db70b11fad055906e867cda8" - integrity sha512-QK0sRs7MKv0tKe1+5uZIQk/C8XGza4DAnztJG8iD+TpJIORARrCxczA738awHrZoHeTjSSoHqao2teO0dC/gFQ== + version "2.2.12" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.12.tgz#fb6af5c0ec35b27b4581eb3bbad34ec9e5c696f8" + integrity sha512-qXDmcVlZV4XRtKFzddidpfVP4oMSGhga+xdMc25mv8kaLUHtgzCDhUxkrN8exkGdTlLNaXj7CV3GtON7zuGZ+w== object-inspect@^1.13.1: version "1.13.2" @@ -5270,9 +5164,9 @@ pretty-format@^29.0.0, pretty-format@^29.7.0: react-is "^18.0.0" pretty-ms@^9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-9.0.0.tgz#53c57f81171c53be7ce3fd20bdd4265422bc5929" - integrity sha512-E9e9HJ9R9NasGOgPaPE8VMeiPKAyWR5jcFpNnwIejslIhWqdqOrb2wShBsncMPUb+BcCd2OPYfh7p2W6oemTng== + version "9.1.0" + resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-9.1.0.tgz#0ad44de6086454f48a168e5abb3c26f8db1b3253" + integrity sha512-o1piW0n3tgKIKCwk2vpM/vOV13zjJzvP37Ioze54YlTHE06m4tjEbzg9WsKkvTuyYln2DHjo5pY4qrZGI0otpw== dependencies: parse-ms "^4.0.0" @@ -5509,11 +5403,12 @@ rimraf@^3.0.2: glob "^7.1.3" rimraf@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-6.0.0.tgz#503bb3d9283272384c121792d40e7ee3ab763cde" - integrity sha512-u+yqhM92LW+89cxUQK0SRyvXYQmyuKHx0jkx4W7KfwLGLqJnQM5031Uv1trE4gB9XEXBM/s6MxKlfW95IidqaA== + version "6.0.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-6.0.1.tgz#ffb8ad8844dd60332ab15f52bc104bc3ed71ea4e" + integrity sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A== dependencies: glob "^11.0.0" + package-json-from-dist "^1.0.0" run-parallel@^1.1.9: version "1.2.0" @@ -5573,12 +5468,7 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.5.3, semver@^7.5.4, semver@^7.6.1, semver@^7.6.2: - version "7.6.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" - integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== - -semver@^7.6.0: +semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.1, semver@^7.6.3: version "7.6.3" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== @@ -5618,11 +5508,11 @@ shebang-regex@^3.0.0: integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shiki@^1.9.1: - version "1.10.3" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.10.3.tgz#2276fb21a07043b28c5b16001e6a04fef99dbb8f" - integrity sha512-eneCLncGuvPdTutJuLyUGS8QNPAVFO5Trvld2wgEq1e002mwctAhJKeMGWtWVXOIEzmlcLRqcgPSorR6AVzOmQ== + version "1.11.1" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.11.1.tgz#6c06c5fcf55f1dac2db2596af935fef6a41a209d" + integrity sha512-VHD3Q0EBXaaa245jqayBe5zQyMQUdXBFjmGr9MpDaDpAKRMYn7Ff00DM5MLk26UyKjnml3yQ0O2HNX7PtYVNFQ== dependencies: - "@shikijs/core" "1.10.3" + "@shikijs/core" "1.11.1" "@types/hast" "^3.0.4" side-channel@^1.0.4: @@ -5682,9 +5572,9 @@ slice-ansi@^7.0.0: is-fullwidth-code-point "^5.0.0" smol-toml@^1.1.4: - version "1.2.2" - resolved "https://registry.yarnpkg.com/smol-toml/-/smol-toml-1.2.2.tgz#e0eb86dd8dab307b5345b0daff32a79a39f19175" - integrity sha512-fVEjX2ybKdJKzFL46VshQbj9PuA4IUKivalgp48/3zwS9vXzyykzQ6AX92UxHSvWJagziMRLeHMgEzoGO7A8hQ== + version "1.3.0" + resolved "https://registry.yarnpkg.com/smol-toml/-/smol-toml-1.3.0.tgz#5200e251fffadbb72570c84e9776d2a3eca48143" + integrity sha512-tWpi2TsODPScmi48b/OQZGi2lgUmBCHy6SZrhi/FdnnHiU1GwebbCfuQuxsC3nHaLwtYeJGPrDZDIeodDOc4pA== source-map-support@0.5.13: version "0.5.13" @@ -5916,10 +5806,10 @@ symbol-tree@^3.2.4: resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== -synckit@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.9.0.tgz#5b33b458b3775e4466a5b377fba69c63572ae449" - integrity sha512-7RnqIMq572L8PeEzKeBINYEJDDxpcH8JEgLwUqBd3TkofhFRbkq4QLR0u+36avGAhCRbk2nnmjcW9SE531hPDg== +synckit@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.9.1.tgz#febbfbb6649979450131f64735aa3f6c14575c88" + integrity sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A== dependencies: "@pkgr/core" "^0.1.0" tslib "^2.6.2" @@ -6023,15 +5913,6 @@ tsconfig-paths@^3.15.0: minimist "^1.2.6" strip-bom "^3.0.0" -tsconfig-paths@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz#ef78e19039133446d244beac0fd6a1632e2d107c" - integrity sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg== - dependencies: - json5 "^2.2.2" - minimist "^1.2.6" - strip-bom "^3.0.0" - tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1, tslib@^2.6.2: version "2.6.3" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.3.tgz#0438f810ad7a9edcde7a241c3d80db693c8cbfe0" @@ -6129,9 +6010,9 @@ typedoc-plugin-missing-exports@^3.0.0: integrity sha512-R7D8fYrK34mBFZSlF1EqJxfqiUSlQSmyrCiQgTQD52nNm6+kUtqwiaqaNkuJ2rA2wBgWFecUA8JzHT7x2r7ePg== typedoc@^0.26.0: - version "0.26.4" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.4.tgz#7e83047369a29a710d429dac20996680cae9a314" - integrity sha512-FlW6HpvULDKgc3rK04V+nbFyXogPV88hurarDPOjuuB5HAwuAlrCMQ5NeH7Zt68a/ikOKu6Z/0hFXAeC9xPccQ== + version "0.26.5" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.5.tgz#08032bd57cac3d56e8ac296a07e3482dc0c645ac" + integrity sha512-Vn9YKdjKtDZqSk+by7beZ+xzkkr8T8CYoiasqyt4TTRFy5+UHzL/mF/o4wGBjRF+rlWQHDb0t6xCpA3JNL5phg== dependencies: lunr "^2.3.9" markdown-it "^14.1.0" @@ -6449,7 +6330,12 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yaml@^2.4.5, yaml@~2.4.2: +yaml@^2.4.5: + version "2.5.0" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.0.tgz#c6165a721cf8000e91c36490a41d7be25176cf5d" + integrity sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw== + +yaml@~2.4.2: version "2.4.5" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.4.5.tgz#60630b206dd6d84df97003d33fc1ddf6296cca5e" integrity sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg== From 99f157a0f132215a7f99d3ac39194b7c7c05f11c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 24 Jul 2024 17:40:51 +0100 Subject: [PATCH 353/595] Update all non-major dependencies (#4323) * Update all non-major dependencies * Prettier Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Fix types for widget API update Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 4 +- spec/unit/timeline-window.spec.ts | 2 +- spec/unit/webrtc/groupCall.spec.ts | 2 +- src/models/event.ts | 2 +- src/rust-crypto/RoomEncryptor.ts | 2 +- src/sync-accumulator.ts | 2 +- src/sync.ts | 4 +- yarn.lock | 511 +++++++++++++++-------------- 8 files changed, 276 insertions(+), 253 deletions(-) diff --git a/package.json b/package.json index c78b03879b3..9fa38002114 100644 --- a/package.json +++ b/package.json @@ -106,7 +106,7 @@ "eslint-plugin-tsdoc": "^0.3.0", "eslint-plugin-unicorn": "^54.0.0", "fake-indexeddb": "^5.0.2", - "fetch-mock": "10.0.7", + "fetch-mock": "10.1.0", "fetch-mock-jest": "^1.5.1", "husky": "^9.0.0", "jest": "^29.0.0", @@ -117,7 +117,7 @@ "lint-staged": "^15.0.2", "matrix-mock-request": "^2.5.0", "node-fetch": "^2.7.0", - "prettier": "3.3.2", + "prettier": "3.3.3", "rimraf": "^6.0.0", "ts-node": "^10.9.2", "typedoc": "^0.26.0", diff --git a/spec/unit/timeline-window.spec.ts b/spec/unit/timeline-window.spec.ts index ddb2a48d3b9..a428e905a2f 100644 --- a/spec/unit/timeline-window.spec.ts +++ b/spec/unit/timeline-window.spec.ts @@ -434,7 +434,7 @@ describe("TimelineWindow", function () { }); function idsOf(events: Array): Array { - return events.map((e) => (e ? e.getId() ?? "MISSING_ID" : "MISSING_EVENT")); + return events.map((e) => (e ? (e.getId() ?? "MISSING_ID") : "MISSING_EVENT")); } describe("removing events", () => { diff --git a/spec/unit/webrtc/groupCall.spec.ts b/spec/unit/webrtc/groupCall.spec.ts index ea04a1f3ed8..286f5d1011e 100644 --- a/spec/unit/webrtc/groupCall.spec.ts +++ b/spec/unit/webrtc/groupCall.spec.ts @@ -105,7 +105,7 @@ const mockGetStateEvents = (events: MatrixEvent[] = FAKE_STATE_EVENTS as MatrixEvent[]) => (type: EventType, userId?: string): MatrixEvent[] | MatrixEvent | null => { if (type === EventType.GroupCallMemberPrefix) { - return userId === undefined ? events : events.find((e) => e.getStateKey() === userId) ?? null; + return userId === undefined ? events : (events.find((e) => e.getStateKey() === userId) ?? null); } else { const fakeEvent = { getContent: () => ({}), getTs: () => 0 } as MatrixEvent; return userId === undefined ? [fakeEvent] : fakeEvent; diff --git a/src/models/event.ts b/src/models/event.ts index a5cd3abe4cf..f3eead5a849 100644 --- a/src/models/event.ts +++ b/src/models/event.ts @@ -404,7 +404,7 @@ export class MatrixEvent extends TypedEventEmitter { - const logger = new LogSpan(this.prefixedLogger, event ? event.getTxnId() ?? "" : "prepareForEncryption"); + const logger = new LogSpan(this.prefixedLogger, event ? (event.getTxnId() ?? "") : "prepareForEncryption"); // Ensure order of encryption to avoid message ordering issues, as the scheduler only ensures // events order after they have been encrypted. const prom = this.currentEncryptionPromise diff --git a/src/sync-accumulator.ts b/src/sync-accumulator.ts index eec811577b8..0f901a27e86 100644 --- a/src/sync-accumulator.ts +++ b/src/sync-accumulator.ts @@ -504,7 +504,7 @@ export class SyncAccumulator { currentData._timeline.push({ event: transformedEvent, - token: index === 0 ? data.timeline.prev_batch ?? null : null, + token: index === 0 ? (data.timeline.prev_batch ?? null) : null, }); }); diff --git a/src/sync.ts b/src/sync.ts index 26b2ac1d17b..df7aeba69bb 100644 --- a/src/sync.ts +++ b/src/sync.ts @@ -1403,7 +1403,9 @@ export class SyncApi { if (limited) { room.resetLiveTimeline( joinObj.timeline.prev_batch, - this.syncOpts.canResetEntireTimeline!(room.roomId) ? null : syncEventData.oldSyncToken ?? null, + this.syncOpts.canResetEntireTimeline!(room.roomId) + ? null + : (syncEventData.oldSyncToken ?? null), ); // We have to assume any gap in any timeline is diff --git a/yarn.lock b/yarn.lock index 80c325a1734..7cadabeff3b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -23,9 +23,9 @@ "@jridgewell/trace-mapping" "^0.3.24" "@babel/cli@^7.12.10": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.8.tgz#79eaa55a69c77cafbea3e87537fd1df5a5a2edf8" - integrity sha512-isdp+G6DpRyKc+3Gqxy2rjzgF7Zj9K0mzLNnxz+E/fgeag8qT3vVulX4gY9dGO1q0y+0lUv6V3a+uhUzMzrwXg== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.7.tgz#eb2868c1fa384b17ea88d60107577d3e6fd05c4e" + integrity sha512-8dfPprJgV4O14WTx+AQyEA+opgUKPrsIXX/MdL50J1n06EQJ6m1T+CdsJe0qEC0B/Xl85i+Un5KVAxd/PACX9A== dependencies: "@jridgewell/trace-mapping" "^0.3.25" commander "^6.2.0" @@ -46,26 +46,26 @@ "@babel/highlight" "^7.24.7" picocolors "^1.0.0" -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.24.8": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.9.tgz#53eee4e68f1c1d0282aa0eb05ddb02d033fc43a0" - integrity sha512-e701mcfApCJqMMueQI0Fb68Amflj83+dvAvHawoBpAz+GDjCIyGHzNwnefjsWJ3xiYAqqiQFoWbspGYBdb2/ng== +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.7.tgz#d23bbea508c3883ba8251fb4164982c36ea577ed" + integrity sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw== "@babel/core@^7.0.0", "@babel/core@^7.11.6", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.23.9": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.9.tgz#dc07c9d307162c97fa9484ea997ade65841c7c82" - integrity sha512-5e3FI4Q3M3Pbr21+5xJwCv6ZT6KmGkI0vw3Tozy5ODAQFTIWe37iT8Cr7Ice2Ntb+M3iSKCEWMB1MBgKrW3whg== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.7.tgz#b676450141e0b52a3d43bc91da86aa608f950ac4" + integrity sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g== dependencies: "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.24.9" - "@babel/helper-compilation-targets" "^7.24.8" - "@babel/helper-module-transforms" "^7.24.9" - "@babel/helpers" "^7.24.8" - "@babel/parser" "^7.24.8" + "@babel/generator" "^7.24.7" + "@babel/helper-compilation-targets" "^7.24.7" + "@babel/helper-module-transforms" "^7.24.7" + "@babel/helpers" "^7.24.7" + "@babel/parser" "^7.24.7" "@babel/template" "^7.24.7" - "@babel/traverse" "^7.24.8" - "@babel/types" "^7.24.9" + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -73,9 +73,9 @@ semver "^6.3.1" "@babel/eslint-parser@^7.12.10": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.8.tgz#bc655255fa4ded3694cc10ef3dbea6d69639c831" - integrity sha512-nYAikI4XTGokU2QX7Jx+v4rxZKhKivaQaREZjuW3mrJrbdWJ5yUfohnoUULge+zEEaKjPYNxhoRgUKktjXtbwA== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.7.tgz#27ebab1a1ec21f48ae191a8aaac5b82baf80d9c7" + integrity sha512-SO5E3bVxDuxyNxM5agFv480YA2HO6ohZbGxbazZdIk3KQOPOGVNw6q78I9/lbviIf95eq6tPozeYnJLbjnC8IA== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" @@ -88,12 +88,12 @@ dependencies: eslint-rule-composer "^0.3.0" -"@babel/generator@^7.24.8", "@babel/generator@^7.24.9", "@babel/generator@^7.7.2": - version "7.24.10" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.10.tgz#a4ab681ec2a78bbb9ba22a3941195e28a81d8e76" - integrity sha512-o9HBZL1G2129luEUlG1hB4N/nlYNWHnpwlND9eOMclRqqu1YDy2sSYVCFUZwl8I1Gxh+QSRrP2vD7EpUmFVXxg== +"@babel/generator@^7.24.7", "@babel/generator@^7.7.2": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.7.tgz#1654d01de20ad66b4b4d99c135471bc654c55e6d" + integrity sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA== dependencies: - "@babel/types" "^7.24.9" + "@babel/types" "^7.24.7" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" @@ -113,26 +113,26 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.7", "@babel/helper-compilation-targets@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.8.tgz#b607c3161cd9d1744977d4f97139572fe778c271" - integrity sha512-oU+UoqCHdp+nWVDkpldqIQL/i/bvAv53tRqLG/s+cOXxe66zOYLU7ar/Xs3LdmBihrUMEUhwu6dMZwbNOYDwvw== +"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz#4eb6c4a80d6ffeac25ab8cd9a21b5dfa48d503a9" + integrity sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg== dependencies: - "@babel/compat-data" "^7.24.8" - "@babel/helper-validator-option" "^7.24.8" - browserslist "^4.23.1" + "@babel/compat-data" "^7.24.7" + "@babel/helper-validator-option" "^7.24.7" + browserslist "^4.22.2" lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.24.7", "@babel/helper-create-class-features-plugin@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.8.tgz#47f546408d13c200c0867f9d935184eaa0851b09" - integrity sha512-4f6Oqnmyp2PP3olgUMmOwC3akxSm5aBYraQ6YDdKy7NcAMkDECHWG0DEnV6M2UAkERgIBhYt8S27rURPg7SxWA== +"@babel/helper-create-class-features-plugin@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.7.tgz#2eaed36b3a1c11c53bdf80d53838b293c52f5b3b" + integrity sha512-kTkaDl7c9vO80zeX1rJxnuRpEsD5tA81yh11X1gQo+PhSti3JS+7qeZo9U4RHobKRiFPKaGK3svUAeb8D0Q7eg== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-function-name" "^7.24.7" - "@babel/helper-member-expression-to-functions" "^7.24.8" + "@babel/helper-member-expression-to-functions" "^7.24.7" "@babel/helper-optimise-call-expression" "^7.24.7" "@babel/helper-replace-supers" "^7.24.7" "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" @@ -181,13 +181,13 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-member-expression-to-functions@^7.24.7", "@babel/helper-member-expression-to-functions@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.8.tgz#6155e079c913357d24a4c20480db7c712a5c3fb6" - integrity sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA== +"@babel/helper-member-expression-to-functions@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.7.tgz#67613d068615a70e4ed5101099affc7a41c5225f" + integrity sha512-LGeMaf5JN4hAT471eJdBs/GK1DoYIJ5GCtZN/EsL6KUiiDZOvO/eKE11AMZJa2zP4zk4qe9V2O/hxAmkRc8p6w== dependencies: - "@babel/traverse" "^7.24.8" - "@babel/types" "^7.24.8" + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" "@babel/helper-module-imports@^7.24.7": version "7.24.7" @@ -197,10 +197,10 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-module-transforms@^7.24.7", "@babel/helper-module-transforms@^7.24.8", "@babel/helper-module-transforms@^7.24.9": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.9.tgz#e13d26306b89eea569180868e652e7f514de9d29" - integrity sha512-oYbh+rtFKj/HwBQkFlUzvcybzklmVdVV3UU+mN7n2t/q3yGHbuVdNxyFvSBO1tfvjyArpHNcWMAzsSPdyI46hw== +"@babel/helper-module-transforms@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz#31b6c9a2930679498db65b685b1698bfd6c7daf8" + integrity sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ== dependencies: "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-module-imports" "^7.24.7" @@ -215,10 +215,10 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.24.8", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz#94ee67e8ec0e5d44ea7baeb51e571bd26af07878" - integrity sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz#98c84fe6fe3d0d3ae7bfc3a5e166a46844feb2a0" + integrity sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg== "@babel/helper-remap-async-to-generator@^7.24.7": version "7.24.7" @@ -261,20 +261,20 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-string-parser@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" - integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ== +"@babel/helper-string-parser@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz#4d2d0f14820ede3b9807ea5fc36dfc8cd7da07f2" + integrity sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg== "@babel/helper-validator-identifier@^7.24.5", "@babel/helper-validator-identifier@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== -"@babel/helper-validator-option@^7.24.7", "@babel/helper-validator-option@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz#3725cdeea8b480e86d34df15304806a06975e33d" - integrity sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q== +"@babel/helper-validator-option@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz#24c3bb77c7a425d1742eec8fb433b5a1b38e62f6" + integrity sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw== "@babel/helper-wrap-function@^7.24.7": version "7.24.7" @@ -286,13 +286,13 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helpers@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.8.tgz#2820d64d5d6686cca8789dd15b074cd862795873" - integrity sha512-gV2265Nkcz7weJJfvDoAEVzC1e2OTDpkGbEsebse8koXUJUXPsCMi7sRo/+SPMuMZ9MtUPnGwITTnQnU5YjyaQ== +"@babel/helpers@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.7.tgz#aa2ccda29f62185acb5d42fb4a3a1b1082107416" + integrity sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg== dependencies: "@babel/template" "^7.24.7" - "@babel/types" "^7.24.8" + "@babel/types" "^7.24.7" "@babel/highlight@^7.24.7": version "7.24.7" @@ -304,10 +304,10 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.7", "@babel/parser@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.8.tgz#58a4dbbcad7eb1d48930524a3fd93d93e9084c6f" - integrity sha512-WzfbgXOkGzZiXXCqk43kKwZjzwx4oulxZi3nq2TYL9mOjQv6kYwul9mz6ID36njuL7Xkp6nJEfok848Zj10j/w== +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" + integrity sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw== "@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.7": version "7.24.7" @@ -551,16 +551,16 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-transform-classes@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.8.tgz#ad23301fe5bc153ca4cf7fb572a9bc8b0b711cf7" - integrity sha512-VXy91c47uujj758ud9wx+OMgheXm4qJfyhj1P18YvlrQkNOSrwsteHk+EFS3OMGfhMhpZa0A+81eE7G4QC+3CA== +"@babel/plugin-transform-classes@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.7.tgz#4ae6ef43a12492134138c1e45913f7c46c41b4bf" + integrity sha512-CFbbBigp8ln4FU6Bpy6g7sE8B/WmCmzvivzUC6xDAdWVsjYTXijpuuGJmYkAaoWAzcItGKT3IOAbxRItZ5HTjw== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-compilation-targets" "^7.24.8" + "@babel/helper-compilation-targets" "^7.24.7" "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-function-name" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/helper-replace-supers" "^7.24.7" "@babel/helper-split-export-declaration" "^7.24.7" globals "^11.1.0" @@ -573,12 +573,12 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/template" "^7.24.7" -"@babel/plugin-transform-destructuring@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.8.tgz#c828e814dbe42a2718a838c2a2e16a408e055550" - integrity sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ== +"@babel/plugin-transform-destructuring@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.7.tgz#a097f25292defb6e6cc16d6333a4cfc1e3c72d9e" + integrity sha512-19eJO/8kdCQ9zISOf+SEUJM/bAUIsvY3YDnXZTupUCQ8LgrWnsG/gFB9dvXqdXnRXMAM8fvt7b0CBKQHNGy1mw== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-transform-dotall-regex@^7.24.7": version "7.24.7" @@ -674,13 +674,13 @@ "@babel/helper-module-transforms" "^7.24.7" "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-modules-commonjs@^7.24.7", "@babel/plugin-transform-modules-commonjs@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.8.tgz#ab6421e564b717cb475d6fff70ae7f103536ea3c" - integrity sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA== +"@babel/plugin-transform-modules-commonjs@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.7.tgz#9fd5f7fdadee9085886b183f1ad13d1ab260f4ab" + integrity sha512-iFI8GDxtevHJ/Z22J5xQpVqFLlMNstcLXh994xifFwxxGslr2ZXXLWgtBeLctOD63UFDArdvN6Tg8RFw+aEmjQ== dependencies: - "@babel/helper-module-transforms" "^7.24.8" - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-module-transforms" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/helper-simple-access" "^7.24.7" "@babel/plugin-transform-modules-systemjs@^7.24.7": @@ -758,12 +758,12 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-transform-optional-chaining@^7.24.7", "@babel/plugin-transform-optional-chaining@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.8.tgz#bb02a67b60ff0406085c13d104c99a835cdf365d" - integrity sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw== +"@babel/plugin-transform-optional-chaining@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.7.tgz#b8f6848a80cf2da98a8a204429bec04756c6d454" + integrity sha512-tK+0N9yd4j+x/4hxF3F0e0fu/VdcxU18y5SevtyM/PCFlQvXbR0Zmlo2eBrKtVipGNFzpq56o8WsIIKcJFUCRQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" "@babel/plugin-syntax-optional-chaining" "^7.8.3" @@ -855,21 +855,21 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-typeof-symbol@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.8.tgz#383dab37fb073f5bfe6e60c654caac309f92ba1c" - integrity sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw== +"@babel/plugin-transform-typeof-symbol@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.7.tgz#f074be466580d47d6e6b27473a840c9f9ca08fb0" + integrity sha512-VtR8hDy7YLB7+Pet9IarXjg/zgCMSF+1mNS/EQEiEaUPoFXCVsHG64SIxcaaI2zJgRiv+YmgaQESUfWAdbjzgg== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-transform-typescript@^7.24.7": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.8.tgz#c104d6286e04bf7e44b8cba1b686d41bad57eb84" - integrity sha512-CgFgtN61BbdOGCP4fLaAMOPkzWUh6yQZNMr5YSt8uz2cZSSiQONCQFWqsE4NeVfOIhqDOlS9CR3WD91FzMeB2Q== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.7.tgz#b006b3e0094bf0813d505e0c5485679eeaf4a881" + integrity sha512-iLD3UNkgx2n/HrjBesVbYX6j0yqn/sJktvbtKKgcaLIQ4bTTQ8obAypc1VpyHPD2y4Phh9zHOaAt8e/L14wCpw== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-create-class-features-plugin" "^7.24.8" - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-create-class-features-plugin" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-typescript" "^7.24.7" "@babel/plugin-transform-unicode-escapes@^7.24.7": @@ -904,14 +904,14 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/preset-env@^7.12.11": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.8.tgz#e0db94d7f17d6f0e2564e8d29190bc8cdacec2d1" - integrity sha512-vObvMZB6hNWuDxhSaEPTKCwcqkAIuDtE+bQGn4XMXne1DSLzFVY8Vmj1bm+mUQXYNN8NmaQEO+r8MMbzPr1jBQ== - dependencies: - "@babel/compat-data" "^7.24.8" - "@babel/helper-compilation-targets" "^7.24.8" - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-validator-option" "^7.24.8" + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.7.tgz#ff067b4e30ba4a72f225f12f123173e77b987f37" + integrity sha512-1YZNsc+y6cTvWlDHidMBsQZrZfEFjRIo/BZCT906PMdzOyXtSLTgqGdrpcuTDCXyd11Am5uQULtDIcCfnTc8fQ== + dependencies: + "@babel/compat-data" "^7.24.7" + "@babel/helper-compilation-targets" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-validator-option" "^7.24.7" "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.7" "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.7" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.7" @@ -942,9 +942,9 @@ "@babel/plugin-transform-block-scoping" "^7.24.7" "@babel/plugin-transform-class-properties" "^7.24.7" "@babel/plugin-transform-class-static-block" "^7.24.7" - "@babel/plugin-transform-classes" "^7.24.8" + "@babel/plugin-transform-classes" "^7.24.7" "@babel/plugin-transform-computed-properties" "^7.24.7" - "@babel/plugin-transform-destructuring" "^7.24.8" + "@babel/plugin-transform-destructuring" "^7.24.7" "@babel/plugin-transform-dotall-regex" "^7.24.7" "@babel/plugin-transform-duplicate-keys" "^7.24.7" "@babel/plugin-transform-dynamic-import" "^7.24.7" @@ -957,7 +957,7 @@ "@babel/plugin-transform-logical-assignment-operators" "^7.24.7" "@babel/plugin-transform-member-expression-literals" "^7.24.7" "@babel/plugin-transform-modules-amd" "^7.24.7" - "@babel/plugin-transform-modules-commonjs" "^7.24.8" + "@babel/plugin-transform-modules-commonjs" "^7.24.7" "@babel/plugin-transform-modules-systemjs" "^7.24.7" "@babel/plugin-transform-modules-umd" "^7.24.7" "@babel/plugin-transform-named-capturing-groups-regex" "^7.24.7" @@ -967,7 +967,7 @@ "@babel/plugin-transform-object-rest-spread" "^7.24.7" "@babel/plugin-transform-object-super" "^7.24.7" "@babel/plugin-transform-optional-catch-binding" "^7.24.7" - "@babel/plugin-transform-optional-chaining" "^7.24.8" + "@babel/plugin-transform-optional-chaining" "^7.24.7" "@babel/plugin-transform-parameters" "^7.24.7" "@babel/plugin-transform-private-methods" "^7.24.7" "@babel/plugin-transform-private-property-in-object" "^7.24.7" @@ -978,7 +978,7 @@ "@babel/plugin-transform-spread" "^7.24.7" "@babel/plugin-transform-sticky-regex" "^7.24.7" "@babel/plugin-transform-template-literals" "^7.24.7" - "@babel/plugin-transform-typeof-symbol" "^7.24.8" + "@babel/plugin-transform-typeof-symbol" "^7.24.7" "@babel/plugin-transform-unicode-escapes" "^7.24.7" "@babel/plugin-transform-unicode-property-regex" "^7.24.7" "@babel/plugin-transform-unicode-regex" "^7.24.7" @@ -987,7 +987,7 @@ babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.4" babel-plugin-polyfill-regenerator "^0.6.1" - core-js-compat "^3.37.1" + core-js-compat "^3.31.0" semver "^6.3.1" "@babel/preset-modules@0.1.6-no-external-plugins": @@ -1016,9 +1016,9 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.8.tgz#5d958c3827b13cc6d05e038c07fb2e5e3420d82e" - integrity sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.7.tgz#f4f0d5530e8dbdf59b3451b9b3e594b6ba082e12" + integrity sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw== dependencies: regenerator-runtime "^0.14.0" @@ -1031,28 +1031,28 @@ "@babel/parser" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/traverse@^7.24.7", "@babel/traverse@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.8.tgz#6c14ed5232b7549df3371d820fbd9abfcd7dfab7" - integrity sha512-t0P1xxAPzEDcEPmjprAQq19NWum4K0EQPjMwZQZbHt+GiZqvjCHjj755Weq1YRPVzBI+3zSfvScfpnuIecVFJQ== +"@babel/traverse@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.7.tgz#de2b900163fa741721ba382163fe46a936c40cf5" + integrity sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA== dependencies: "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.24.8" + "@babel/generator" "^7.24.7" "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-function-name" "^7.24.7" "@babel/helper-hoist-variables" "^7.24.7" "@babel/helper-split-export-declaration" "^7.24.7" - "@babel/parser" "^7.24.8" - "@babel/types" "^7.24.8" + "@babel/parser" "^7.24.7" + "@babel/types" "^7.24.7" debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.24.7", "@babel/types@^7.24.8", "@babel/types@^7.24.9", "@babel/types@^7.3.3", "@babel/types@^7.4.4": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.9.tgz#228ce953d7b0d16646e755acf204f4cf3d08cc73" - integrity sha512-xm8XrMKz0IlUdocVbYJe0Z9xEgidU7msskG8BbhnTPK/HZ2z/7FP7ykqPgrUH+C+r414mNfNWam1f2vqOjqjYQ== +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.24.7", "@babel/types@^7.3.3", "@babel/types@^7.4.4": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.7.tgz#6027fe12bc1aa724cd32ab113fb7f1988f1f66f2" + integrity sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q== dependencies: - "@babel/helper-string-parser" "^7.24.8" + "@babel/helper-string-parser" "^7.24.7" "@babel/helper-validator-identifier" "^7.24.7" to-fast-properties "^2.0.0" @@ -1533,10 +1533,10 @@ resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.1.1.tgz#1ec17e2edbec25c8306d424ecfbf13c7de1aaa31" integrity sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA== -"@shikijs/core@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.11.1.tgz#a102cf56f32fa8cf3ceb9f918f2da5511782efe7" - integrity sha512-Qsn8h15SWgv5TDRoDmiHNzdQO2BxDe86Yq6vIHf5T0cCvmfmccJKIzHtep8bQO9HMBZYCtCBzaXdd1MnxZBPSg== +"@shikijs/core@1.10.3": + version "1.10.3" + resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.10.3.tgz#f01763b36f08ad3d2ef46cea7e61858d9d9947d6" + integrity sha512-D45PMaBaeDHxww+EkcDQtDAtzv00Gcsp72ukBtaLSmqRvh0WgGMq3Al0rl1QQBZfuneO75NXMIzEZGFitThWbg== dependencies: "@types/hast" "^3.0.4" @@ -1717,16 +1717,16 @@ integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g== "@types/node@*": - version "20.14.12" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.12.tgz#129d7c3a822cb49fc7ff661235f19cfefd422b49" - integrity sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ== + version "20.14.10" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.10.tgz#a1a218290f1b6428682e3af044785e5874db469a" + integrity sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ== dependencies: undici-types "~5.26.4" "@types/node@18": - version "18.19.42" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.42.tgz#b54ed4752c85427906aab40917b0f7f3d724bf72" - integrity sha512-d2ZFc/3lnK2YCYhos8iaNIYu9Vfhr92nHiyJHRltXWjXUBjEE+A4I58Tdbnw4VhggSW+2j5y5gTrLs4biNnubg== + version "18.19.39" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.39.tgz#c316340a5b4adca3aee9dcbf05de385978590593" + integrity sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ== dependencies: undici-types "~5.26.4" @@ -1778,61 +1778,61 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.17.0.tgz#c8ed1af1ad2928ede5cdd207f7e3090499e1f77b" - integrity sha512-pyiDhEuLM3PuANxH7uNYan1AaFs5XE0zw1hq69JBvGvE7gSuEoQl1ydtEe/XQeoC3GQxLXyOVa5kNOATgM638A== + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.16.0.tgz#b3563927341eca15124a18c6f94215f779f5c02a" + integrity sha512-py1miT6iQpJcs1BiJjm54AMzeuMPBSPuKPlnT8HlfudbcS5rYeX5jajpLf3mrdRh9dA/Ec2FVUY0ifeVNDIhZw== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.17.0" - "@typescript-eslint/type-utils" "7.17.0" - "@typescript-eslint/utils" "7.17.0" - "@typescript-eslint/visitor-keys" "7.17.0" + "@typescript-eslint/scope-manager" "7.16.0" + "@typescript-eslint/type-utils" "7.16.0" + "@typescript-eslint/utils" "7.16.0" + "@typescript-eslint/visitor-keys" "7.16.0" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" "@typescript-eslint/parser@^7.0.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.17.0.tgz#be8e32c159190cd40a305a2121220eadea5a88e7" - integrity sha512-puiYfGeg5Ydop8eusb/Hy1k7QmOU6X3nvsqCgzrB2K4qMavK//21+PzNE8qeECgNOIoertJPUC1SpegHDI515A== - dependencies: - "@typescript-eslint/scope-manager" "7.17.0" - "@typescript-eslint/types" "7.17.0" - "@typescript-eslint/typescript-estree" "7.17.0" - "@typescript-eslint/visitor-keys" "7.17.0" + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.16.0.tgz#53fae8112f8c912024aea7b499cf7374487af6d8" + integrity sha512-ar9E+k7CU8rWi2e5ErzQiC93KKEFAXA2Kky0scAlPcxYblLt8+XZuHUZwlyfXILyQa95P6lQg+eZgh/dDs3+Vw== + dependencies: + "@typescript-eslint/scope-manager" "7.16.0" + "@typescript-eslint/types" "7.16.0" + "@typescript-eslint/typescript-estree" "7.16.0" + "@typescript-eslint/visitor-keys" "7.16.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.17.0.tgz#e072d0f914662a7bfd6c058165e3c2b35ea26b9d" - integrity sha512-0P2jTTqyxWp9HiKLu/Vemr2Rg1Xb5B7uHItdVZ6iAenXmPo4SZ86yOPCJwMqpCyaMiEHTNqizHfsbmCFT1x9SA== +"@typescript-eslint/scope-manager@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.16.0.tgz#eb0757af5720c9c53c8010d7a0355ae27e17b7e5" + integrity sha512-8gVv3kW6n01Q6TrI1cmTZ9YMFi3ucDT7i7aI5lEikk2ebk1AEjrwX8MDTdaX5D7fPXMBLvnsaa0IFTAu+jcfOw== dependencies: - "@typescript-eslint/types" "7.17.0" - "@typescript-eslint/visitor-keys" "7.17.0" + "@typescript-eslint/types" "7.16.0" + "@typescript-eslint/visitor-keys" "7.16.0" -"@typescript-eslint/type-utils@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.17.0.tgz#c5da78feb134c9c9978cbe89e2b1a589ed22091a" - integrity sha512-XD3aaBt+orgkM/7Cei0XNEm1vwUxQ958AOLALzPlbPqb8C1G8PZK85tND7Jpe69Wualri81PLU+Zc48GVKIMMA== +"@typescript-eslint/type-utils@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.16.0.tgz#ec52b1932b8fb44a15a3e20208e0bd49d0b6bd00" + integrity sha512-j0fuUswUjDHfqV/UdW6mLtOQQseORqfdmoBNDFOqs9rvNVR2e+cmu6zJu/Ku4SDuqiJko6YnhwcL8x45r8Oqxg== dependencies: - "@typescript-eslint/typescript-estree" "7.17.0" - "@typescript-eslint/utils" "7.17.0" + "@typescript-eslint/typescript-estree" "7.16.0" + "@typescript-eslint/utils" "7.16.0" debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.17.0.tgz#7ce8185bdf06bc3494e73d143dbf3293111b9cff" - integrity sha512-a29Ir0EbyKTKHnZWbNsrc/gqfIBqYPwj3F2M+jWE/9bqfEHg0AMtXzkbUkOG6QgEScxh2+Pz9OXe11jHDnHR7A== +"@typescript-eslint/types@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.16.0.tgz#60a19d7e7a6b1caa2c06fac860829d162a036ed2" + integrity sha512-fecuH15Y+TzlUutvUl9Cc2XJxqdLr7+93SQIbcZfd4XRGGKoxyljK27b+kxKamjRkU7FYC6RrbSCg0ALcZn/xw== -"@typescript-eslint/typescript-estree@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.17.0.tgz#dcab3fea4c07482329dd6107d3c6480e228e4130" - integrity sha512-72I3TGq93t2GoSBWI093wmKo0n6/b7O4j9o8U+f65TVD0FS6bI2180X5eGEr8MA8PhKMvYe9myZJquUT2JkCZw== +"@typescript-eslint/typescript-estree@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.16.0.tgz#98ac779d526fab2a781e5619c9250f3e33867c09" + integrity sha512-a5NTvk51ZndFuOLCh5OaJBELYc2O3Zqxfl3Js78VFE1zE46J2AaVuW+rEbVkQznjkmlzWsUI15BG5tQMixzZLw== dependencies: - "@typescript-eslint/types" "7.17.0" - "@typescript-eslint/visitor-keys" "7.17.0" + "@typescript-eslint/types" "7.16.0" + "@typescript-eslint/visitor-keys" "7.16.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -1840,22 +1840,22 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.17.0", "@typescript-eslint/utils@^6.0.0 || ^7.0.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.17.0.tgz#815cd85b9001845d41b699b0ce4f92d6dfb84902" - integrity sha512-r+JFlm5NdB+JXc7aWWZ3fKSm1gn0pkswEwIYsrGPdsT2GjsRATAKXiNtp3vgAAO1xZhX8alIOEQnNMl3kbTgJw== +"@typescript-eslint/utils@7.16.0", "@typescript-eslint/utils@^6.0.0 || ^7.0.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.16.0.tgz#b38dc0ce1778e8182e227c98d91d3418449aa17f" + integrity sha512-PqP4kP3hb4r7Jav+NiRCntlVzhxBNWq6ZQ+zQwII1y/G/1gdIPeYDCKr2+dH6049yJQsWZiHU6RlwvIFBXXGNA== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.17.0" - "@typescript-eslint/types" "7.17.0" - "@typescript-eslint/typescript-estree" "7.17.0" + "@typescript-eslint/scope-manager" "7.16.0" + "@typescript-eslint/types" "7.16.0" + "@typescript-eslint/typescript-estree" "7.16.0" -"@typescript-eslint/visitor-keys@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.17.0.tgz#680465c734be30969e564b4647f38d6cdf49bfb0" - integrity sha512-RVGC9UhPOCsfCdI9pU++K4nD7to+jTcMIbXTSOcrLqUEW6gF2pU1UUbYJKc9cvcRSK1UDeMJ7pdMxf4bhMpV/A== +"@typescript-eslint/visitor-keys@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.16.0.tgz#a1d99fa7a3787962d6e0efd436575ef840e23b06" + integrity sha512-rMo01uPy9C7XxG7AFsxa8zLnWXTF8N3PYclekWSrurvhwiw1eW88mrKiAYe6s53AUY57nTRz8dJsuuXdkAhzCg== dependencies: - "@typescript-eslint/types" "7.17.0" + "@typescript-eslint/types" "7.16.0" eslint-visitor-keys "^3.4.3" "@ungap/structured-clone@^1.2.0": @@ -2229,7 +2229,7 @@ braces@^3.0.3, braces@~3.0.2: dependencies: fill-range "^7.1.1" -browserslist@^4.23.0, browserslist@^4.23.1: +browserslist@^4.22.2, browserslist@^4.23.0: version "4.23.2" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.2.tgz#244fe803641f1c19c28c48c4b6ec9736eb3d32ed" integrity sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA== @@ -2290,9 +2290,9 @@ camelcase@^6.2.0: integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30001640: - version "1.0.30001643" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001643.tgz#9c004caef315de9452ab970c3da71085f8241dbd" - integrity sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg== + version "1.0.30001641" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001641.tgz#3572862cd18befae3f637f2a1101cc033c6782ac" + integrity sha512-Phv5thgl67bHYo1TtMY/MurjkHhV4EDaCosezRXgZ8jzA/Ub+wjxAvbGvjoFENStinwi5kCyOYV3mi5tOGykwA== chalk@5.2.0: version "5.2.0" @@ -2478,7 +2478,7 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -core-js-compat@^3.36.1, core-js-compat@^3.37.0, core-js-compat@^3.37.1: +core-js-compat@^3.31.0, core-js-compat@^3.36.1, core-js-compat@^3.37.0: version "3.37.1" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.37.1.tgz#c844310c7852f4bdf49b8d339730b97e17ff09ee" integrity sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg== @@ -2634,6 +2634,11 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== +dequal@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" + integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== + detect-newline@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" @@ -2697,9 +2702,9 @@ easy-table@1.2.0: wcwidth "^1.0.1" electron-to-chromium@^1.4.820: - version "1.5.0" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.0.tgz#0d3123a9f09189b9c7ab4b5d6848d71b3c1fd0e8" - integrity sha512-Vb3xHHYnLseK8vlMJQKJYXJ++t4u1/qJ3vykuVrVjvdiOEhYyT1AuP4x03G8EnPmYvYOhe9T+dADTmthjRQMkA== + version "1.4.823" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.823.tgz#38587f7aa55bed14930f04091dfc65c39a3d8bd7" + integrity sha512-4h+oPeAiGQOHFyUJOqpoEcPj/xxlicxBzOErVeYVMMmAiXUXsGpsFd0QXBMaUUbnD8hhSfLf9uw+MlsoIA7j5w== emittery@^0.13.1: version "0.13.1" @@ -2722,9 +2727,9 @@ emoji-regex@^9.2.2: integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== enhanced-resolve@^5.12.0: - version "5.17.1" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz#67bfbbcc2f81d511be77d686a90267ef7f898a15" - integrity sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg== + version "5.17.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz#d037603789dd9555b89aaec7eb78845c49089bc5" + integrity sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA== dependencies: graceful-fs "^4.2.4" tapable "^2.2.0" @@ -3244,17 +3249,16 @@ fetch-mock-jest@^1.5.1: dependencies: fetch-mock "^9.11.0" -fetch-mock@10.0.7: - version "10.0.7" - resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-10.0.7.tgz#b274aaebe5b59c641f02d836b579bbe9b063f8db" - integrity sha512-TFG42kMRJ6dZpUDeVTdXNjh5O4TchHU/UNk41a050TwKzRr5RJQbtckXDjXiQFHPKgXGUG5l2TY3ZZ2gokiXaQ== +fetch-mock@10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-10.1.0.tgz#b2cabb4f587eca747e395e97de28c62364f301fc" + integrity sha512-/2DFdUrn2afOifgXuq3ppTGOg/S8YAvjeEOlBJ4QgWiT24pYGozju3Hz5UQm1ynumY9hlzBHE2z0jd0PHD+fRg== dependencies: debug "^4.1.1" - glob-to-regexp "^0.4.0" + dequal "^2.0.3" + globrex "^0.1.2" is-subset "^0.1.1" - lodash.isequal "^4.5.0" - path-to-regexp "^2.2.1" - querystring "^0.2.1" + regexparam "^3.0.0" fetch-mock@^9.11.0: version "9.11.0" @@ -3426,9 +3430,9 @@ get-symbol-description@^1.0.2: get-intrinsic "^1.2.4" get-tsconfig@^4.5.0: - version "4.7.6" - resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.7.6.tgz#118fd5b7b9bae234cc7705a00cd771d7eb65d62a" - integrity sha512-ZAqrLlu18NbDdRaHq+AKXzAmqIUPswPWKUchfytdAjiRFnCe5ojG2bstg6mRiZabkKfCoL/e98pbBELIV/YCeA== + version "4.7.5" + resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.7.5.tgz#5e012498579e9a6947511ed0cd403272c7acbbaf" + integrity sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw== dependencies: resolve-pkg-maps "^1.0.0" @@ -3512,6 +3516,11 @@ globby@^11.1.0: merge2 "^1.4.1" slash "^3.0.0" +globrex@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz#dd5d9ec826232730cd6793a5e33a9302985e6098" + integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== + gopd@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" @@ -3645,9 +3654,9 @@ import-fresh@^3.2.1: resolve-from "^4.0.0" import-local@^3.0.2: - version "3.2.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.2.0.tgz#c3d5c745798c02a6f8b897726aba5100186ee260" - integrity sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA== + version "3.1.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== dependencies: pkg-dir "^4.2.0" resolve-cwd "^3.0.0" @@ -3731,7 +3740,14 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.13.1: +is-core-module@^2.11.0, is-core-module@^2.13.1: + version "2.14.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.14.0.tgz#43b8ef9f46a6a08888db67b1ffd4ec9e3dfd59d1" + integrity sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A== + dependencies: + hasown "^2.0.2" + +is-core-module@^2.13.0: version "2.15.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.0.tgz#71c72ec5442ace7e76b306e9d48db361f22699ea" integrity sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA== @@ -4828,9 +4844,9 @@ node-int64@^0.4.0: integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== node-releases@^2.0.14: - version "2.0.18" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" - integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== + version "2.0.14" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" + integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== normalize-package-data@^2.5.0: version "2.5.0" @@ -4862,9 +4878,9 @@ npm-run-path@^5.1.0: path-key "^4.0.0" nwsapi@^2.2.2: - version "2.2.12" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.12.tgz#fb6af5c0ec35b27b4581eb3bbad34ec9e5c696f8" - integrity sha512-qXDmcVlZV4XRtKFzddidpfVP4oMSGhga+xdMc25mv8kaLUHtgzCDhUxkrN8exkGdTlLNaXj7CV3GtON7zuGZ+w== + version "2.2.10" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.10.tgz#0b77a68e21a0b483db70b11fad055906e867cda8" + integrity sha512-QK0sRs7MKv0tKe1+5uZIQk/C8XGza4DAnztJG8iD+TpJIORARrCxczA738awHrZoHeTjSSoHqao2teO0dC/gFQ== object-inspect@^1.13.1: version "1.13.2" @@ -5139,10 +5155,10 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prettier@3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.2.tgz#03ff86dc7c835f2d2559ee76876a3914cec4a90a" - integrity sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA== +prettier@3.3.3: + version "3.3.3" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.3.tgz#30c54fe0be0d8d12e6ae61dbb10109ea00d53105" + integrity sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew== pretty-format@^28.1.3: version "28.1.3" @@ -5210,7 +5226,7 @@ pvutils@^1.1.3: resolved "https://registry.yarnpkg.com/pvutils/-/pvutils-1.1.3.tgz#f35fc1d27e7cd3dfbd39c0826d173e806a03f5a3" integrity sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ== -querystring@^0.2.0, querystring@^0.2.1: +querystring@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.1.tgz#40d77615bb09d16902a85c3e38aa8b5ed761c2dd" integrity sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg== @@ -5295,6 +5311,11 @@ regexp.prototype.flags@^1.5.2: es-errors "^1.3.0" set-function-name "^2.0.1" +regexparam@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/regexparam/-/regexparam-3.0.0.tgz#1673e09d41cb7fd41eaafd4040a6aa90daa0a21a" + integrity sha512-RSYAtP31mvYLkAHrOlh25pCNQ5hWnT106VukGaaFfuJrZFkGRX5GhUAdPqpSDXxOhA2c4akmRuplv1mRqnBn6Q== + regexpu-core@^5.3.1: version "5.3.2" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.2.tgz#11a2b06884f3527aec3e93dbbf4a3b958a95546b" @@ -5468,7 +5489,12 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.1, semver@^7.6.3: +semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.1: + version "7.6.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" + integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== + +semver@^7.6.3: version "7.6.3" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== @@ -5508,11 +5534,11 @@ shebang-regex@^3.0.0: integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shiki@^1.9.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.11.1.tgz#6c06c5fcf55f1dac2db2596af935fef6a41a209d" - integrity sha512-VHD3Q0EBXaaa245jqayBe5zQyMQUdXBFjmGr9MpDaDpAKRMYn7Ff00DM5MLk26UyKjnml3yQ0O2HNX7PtYVNFQ== + version "1.10.3" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.10.3.tgz#2276fb21a07043b28c5b16001e6a04fef99dbb8f" + integrity sha512-eneCLncGuvPdTutJuLyUGS8QNPAVFO5Trvld2wgEq1e002mwctAhJKeMGWtWVXOIEzmlcLRqcgPSorR6AVzOmQ== dependencies: - "@shikijs/core" "1.11.1" + "@shikijs/core" "1.10.3" "@types/hast" "^3.0.4" side-channel@^1.0.4: @@ -6000,9 +6026,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-wpywQ95tqGSD6IbYUPMXSKiwnSWboSKdx2y9X6SJQKzQvBqZoz5iiUyDJFixtW8v7+xmrqXFR/B6Wy37FNhVqA== typedoc-plugin-mdn-links@^3.0.3: - version "3.2.5" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.5.tgz#c3357c7719852e3a1b4c0ca6085b9d467ca97551" - integrity sha512-duQ0H7+bATNSWVQRt3HubspZ9gqgSZxiQkenlTJ8lGsUrldZwpjG56hJqLD6BspNJfEnElP9hIU7yY5+/vF1Eg== + version "3.2.3" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.3.tgz#0e54c2583f0736e0d2956ec912efb69a73ad414d" + integrity sha512-hz22UgFuzdtgpBXet2dxKf9d2HVixL2VcE9Ke1+X1Nu8W8jSGIB2awIA6HFVsD0vk1OLe3ehU0ibyD5sN7wh4w== typedoc-plugin-missing-exports@^3.0.0: version "3.0.0" @@ -6010,9 +6036,9 @@ typedoc-plugin-missing-exports@^3.0.0: integrity sha512-R7D8fYrK34mBFZSlF1EqJxfqiUSlQSmyrCiQgTQD52nNm6+kUtqwiaqaNkuJ2rA2wBgWFecUA8JzHT7x2r7ePg== typedoc@^0.26.0: - version "0.26.5" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.5.tgz#08032bd57cac3d56e8ac296a07e3482dc0c645ac" - integrity sha512-Vn9YKdjKtDZqSk+by7beZ+xzkkr8T8CYoiasqyt4TTRFy5+UHzL/mF/o4wGBjRF+rlWQHDb0t6xCpA3JNL5phg== + version "0.26.4" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.4.tgz#7e83047369a29a710d429dac20996680cae9a314" + integrity sha512-FlW6HpvULDKgc3rK04V+nbFyXogPV88hurarDPOjuuB5HAwuAlrCMQ5NeH7Zt68a/ikOKu6Z/0hFXAeC9xPccQ== dependencies: lunr "^2.3.9" markdown-it "^14.1.0" @@ -6021,9 +6047,9 @@ typedoc@^0.26.0: yaml "^2.4.5" typescript@^5.3.3: - version "5.5.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba" - integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== + version "5.5.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.3.tgz#e1b0a3c394190838a0b168e771b0ad56a0af0faa" + integrity sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ== uc.micro@^2.0.0, uc.micro@^2.1.0: version "2.1.0" @@ -6330,12 +6356,7 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yaml@^2.4.5: - version "2.5.0" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.0.tgz#c6165a721cf8000e91c36490a41d7be25176cf5d" - integrity sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw== - -yaml@~2.4.2: +yaml@^2.4.5, yaml@~2.4.2: version "2.4.5" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.4.5.tgz#60630b206dd6d84df97003d33fc1ddf6296cca5e" integrity sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg== From 6b261b98c9e7fad891f777a0786830206685de57 Mon Sep 17 00:00:00 2001 From: Timo <16718859+toger5@users.noreply.github.com> Date: Thu, 25 Jul 2024 12:00:11 +0200 Subject: [PATCH 354/595] Add index.ts for matrixrtc module (#4314) --- src/matrixrtc/index.ts | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 src/matrixrtc/index.ts diff --git a/src/matrixrtc/index.ts b/src/matrixrtc/index.ts new file mode 100644 index 00000000000..2e5e6f35194 --- /dev/null +++ b/src/matrixrtc/index.ts @@ -0,0 +1,22 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +export * from "./CallMembership"; +export * from "./focus"; +export * from "./LivekitFocus"; +export * from "./MatrixRTCSession"; +export * from "./MatrixRTCSessionManager"; +export * from "./types"; From 0f08c00c07b9495dd9b8b11f6bc2a8cd0ca105e9 Mon Sep 17 00:00:00 2001 From: Timo <16718859+toger5@users.noreply.github.com> Date: Thu, 25 Jul 2024 12:57:27 +0200 Subject: [PATCH 355/595] Be specific about what is considered a MSC4143 call member event. (#4328) * Be specific about what is considered a MSC4143 call member event. * review * check for empty event first * Optimize for new session type events If its a session type event we do not want to run two "key in" checks. We expect legacy events to be the less comment type going forward. * awkward but necessary key count optimization --- src/matrixrtc/MatrixRTCSession.ts | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index cc155fd3e6a..7f6d12aa203 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -160,26 +160,27 @@ export class MatrixRTCSession extends TypedEventEmitter 1 && "focus_active" in content) { + // We have a MSC4143 event membership event + membershipContents.push(content); + } else if (eventKeysCount === 1 && "memberships" in content) { // we have a legacy (one event for all devices) event if (!Array.isArray(content["memberships"])) { logger.warn(`Malformed member event from ${memberEvent.getSender()}: memberships is not an array`); continue; } membershipContents = content["memberships"]; - } else { - // We have a MSC4143 event membership event - if (Object.keys(content).length !== 0) { - // We checked for empty content to not try to construct CallMembership's with {}. - membershipContents.push(content); - } - } - if (membershipContents.length === 0) { - continue; } + if (membershipContents.length === 0) continue; + for (const membershipData of membershipContents) { try { const membership = new CallMembership(memberEvent, membershipData); From d32f3983459840f967065cf1f1cd39d7fd395092 Mon Sep 17 00:00:00 2001 From: Hubert Chathi Date: Sat, 27 Jul 2024 22:25:34 -0400 Subject: [PATCH 356/595] Fix comment for useAuthorizationHeader config. (#4330) --- src/client.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/client.ts b/src/client.ts index 32ce1b26850..ae80589e97c 100644 --- a/src/client.ts +++ b/src/client.ts @@ -324,10 +324,13 @@ export interface ICreateClientOpts { localTimeoutMs?: number; /** - * Set to true to use - * Authorization header instead of query param to send the access token to the server. + * Set to false to send the access token to the server via a query parameter rather + * than the Authorization HTTP header. * - * Default false. + * Note that as of v1.11 of the Matrix spec, sending the access token via a query + * is deprecated. + * + * Default true. */ useAuthorizationHeader?: boolean; From 79299891fd4c1afb20d1faa1bf397c14e353e942 Mon Sep 17 00:00:00 2001 From: David Baker Date: Mon, 22 Jul 2024 15:24:49 +0200 Subject: [PATCH 357/595] Detect cycles when looking for predecessor rooms --- src/client.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/client.ts b/src/client.ts index 32ce1b26850..d7d4f08f16a 100644 --- a/src/client.ts +++ b/src/client.ts @@ -5401,10 +5401,15 @@ export class MatrixClient extends TypedEventEmitter([room.roomId]); // Work backwards from newer to older rooms let predecessorRoomId = room.findPredecessor(msc3946ProcessDynamicPredecessor)?.roomId; while (predecessorRoomId !== null) { + if (predecessorRoomId) { + if (seenRoomIDs.has(predecessorRoomId)) return ret; + seenRoomIDs.add(predecessorRoomId); + } const predecessorRoom = this.getRoom(predecessorRoomId); if (predecessorRoom === null) { break; From dc1cccfeccb0a34dce3f2d7249aef44dbbb92cbe Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Mon, 29 Jul 2024 13:11:37 +0100 Subject: [PATCH 358/595] Handle late-arriving `m.room_key.withheld` messages (#4310) * Restructure eventsPendingKey to remove sender key For withheld notices, we don't necessarily receive the sender key, so we'll jhave to do without it. * Re-decrypt events when we receive a withheld notice * Extend test to cover late-arriving withheld notices * update unit tests --- spec/integ/crypto/crypto.spec.ts | 8 ++- spec/unit/rust-crypto/rust-crypto.spec.ts | 1 + src/rust-crypto/index.ts | 3 + src/rust-crypto/rust-crypto.ts | 75 +++++++++++++++-------- 4 files changed, 60 insertions(+), 27 deletions(-) diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 66baa23ddc8..c1a665e2c06 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -2343,13 +2343,12 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, ])( "Decryption fails with withheld error if a withheld notice with code '%s' is received", (withheldCode, expectedMessage, expectedErrorCode) => { - // TODO: test arrival after the event too. - it.each(["before"])("%s the event", async (when) => { + it.each(["before", "after"])("%s the event", async (when) => { expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); await startClientAndAwaitFirstSync(); // A promise which resolves, with the MatrixEvent which wraps the event, once the decryption fails. - const awaitDecryption = emitPromise(aliceClient, MatrixEventEvent.Decrypted); + let awaitDecryption = emitPromise(aliceClient, MatrixEventEvent.Decrypted); // Send Alice an encrypted room event which looks like it was encrypted with a megolm session async function sendEncryptedEvent() { @@ -2393,6 +2392,9 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, await sendEncryptedEvent(); } else { await sendEncryptedEvent(); + // Make sure that the first attempt to decrypt has happened before the withheld arrives + await awaitDecryption; + awaitDecryption = emitPromise(aliceClient, MatrixEventEvent.Decrypted); await sendWithheldMessage(); } diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 966f25a5af5..2b161c778f7 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -95,6 +95,7 @@ describe("initRustCrypto", () => { deleteSecretsFromInbox: jest.fn(), registerReceiveSecretCallback: jest.fn(), registerDevicesUpdatedCallback: jest.fn(), + registerRoomKeysWithheldCallback: jest.fn(), outgoingRequests: jest.fn(), isBackupEnabled: jest.fn().mockResolvedValue(false), verifyBackup: jest.fn().mockResolvedValue({ trusted: jest.fn().mockReturnValue(false) }), diff --git a/src/rust-crypto/index.ts b/src/rust-crypto/index.ts index dc9a42af743..0c9e162106f 100644 --- a/src/rust-crypto/index.ts +++ b/src/rust-crypto/index.ts @@ -174,6 +174,9 @@ async function initOlmMachine( await olmMachine.registerRoomKeyUpdatedCallback((sessions: RustSdkCryptoJs.RoomKeyInfo[]) => rustCrypto.onRoomKeysUpdated(sessions), ); + await olmMachine.registerRoomKeysWithheldCallback((withheld: RustSdkCryptoJs.RoomKeyWithheldInfo[]) => + rustCrypto.onRoomKeysWithheld(withheld), + ); await olmMachine.registerUserIdentityUpdatedCallback((userId: RustSdkCryptoJs.UserId) => rustCrypto.onUserIdentityUpdated(userId), ); diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index c320ba9c6e9..98876482897 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -1486,7 +1486,7 @@ export class RustCrypto extends TypedEventEmitter { + for (const session of withheld) { + this.logger.debug(`Got withheld message for session ${session.sessionId} in ${session.roomId.toString()}`); + const pendingList = this.eventDecryptor.getEventsPendingRoomKey( + session.roomId.toString(), + session.sessionId, + ); + if (pendingList.length === 0) return; + + // The easiest way to update the status of the event is to have another go at decrypting it. + this.logger.debug( + "Retrying decryption on events:", + pendingList.map((e) => `${e.getId()}`), + ); + + for (const ev of pendingList) { + ev.attemptDecryption(this, { isRetry: true }).catch((_e) => { + // It's somewhat expected that we still can't decrypt here. + }); + } + } + } + /** * Callback for `OlmMachine.registerUserIdentityUpdatedCallback` * @@ -1683,7 +1714,7 @@ class EventDecryptor { /** * Events which we couldn't decrypt due to unknown sessions / indexes. * - * Map from senderKey to sessionId to Set of MatrixEvents + * Map from roomId to sessionId to Set of MatrixEvents */ private eventsPendingKey = new MapWithDefault>>( () => new MapWithDefault>(() => new Set()), @@ -1843,30 +1874,27 @@ class EventDecryptor { * Look for events which are waiting for a given megolm session * * Returns a list of events which were encrypted by `session` and could not be decrypted - * - * @param session - */ - public getEventsPendingRoomKey(session: RustSdkCryptoJs.RoomKeyInfo): MatrixEvent[] { - const senderPendingEvents = this.eventsPendingKey.get(session.senderKey.toBase64()); - if (!senderPendingEvents) return []; + public getEventsPendingRoomKey(roomId: string, sessionId: string): MatrixEvent[] { + const roomPendingEvents = this.eventsPendingKey.get(roomId); + if (!roomPendingEvents) return []; - const sessionPendingEvents = senderPendingEvents.get(session.sessionId); + const sessionPendingEvents = roomPendingEvents.get(sessionId); if (!sessionPendingEvents) return []; - const roomId = session.roomId.toString(); - return [...sessionPendingEvents].filter((ev) => ev.getRoomId() === roomId); + return [...sessionPendingEvents]; } /** * Add an event to the list of those awaiting their session keys. */ private addEventToPendingList(event: MatrixEvent): void { - const content = event.getWireContent(); - const senderKey = content.sender_key; - const sessionId = content.session_id; + const roomId = event.getRoomId(); + // We shouldn't have events without a room id here. + if (!roomId) return; - const senderPendingEvents = this.eventsPendingKey.getOrCreate(senderKey); - const sessionPendingEvents = senderPendingEvents.getOrCreate(sessionId); + const roomPendingEvents = this.eventsPendingKey.getOrCreate(roomId); + const sessionPendingEvents = roomPendingEvents.getOrCreate(event.getWireContent().session_id); sessionPendingEvents.add(event); } @@ -1874,23 +1902,22 @@ class EventDecryptor { * Remove an event from the list of those awaiting their session keys. */ private removeEventFromPendingList(event: MatrixEvent): void { - const content = event.getWireContent(); - const senderKey = content.sender_key; - const sessionId = content.session_id; + const roomId = event.getRoomId(); + if (!roomId) return; - const senderPendingEvents = this.eventsPendingKey.get(senderKey); - if (!senderPendingEvents) return; + const roomPendingEvents = this.eventsPendingKey.getOrCreate(roomId); + if (!roomPendingEvents) return; - const sessionPendingEvents = senderPendingEvents.get(sessionId); + const sessionPendingEvents = roomPendingEvents.get(event.getWireContent().session_id); if (!sessionPendingEvents) return; sessionPendingEvents.delete(event); // also clean up the higher-level maps if they are now empty if (sessionPendingEvents.size === 0) { - senderPendingEvents.delete(sessionId); - if (senderPendingEvents.size === 0) { - this.eventsPendingKey.delete(senderKey); + roomPendingEvents.delete(event.getWireContent().session_id); + if (roomPendingEvents.size === 0) { + this.eventsPendingKey.delete(roomId); } } } From e0ef467d7d2f223fde4d8203287779efd6425d03 Mon Sep 17 00:00:00 2001 From: David Baker Date: Mon, 29 Jul 2024 13:55:08 +0100 Subject: [PATCH 359/595] break instead of return --- src/client.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/client.ts b/src/client.ts index d7d4f08f16a..8e4609607ab 100644 --- a/src/client.ts +++ b/src/client.ts @@ -5407,7 +5407,7 @@ export class MatrixClient extends TypedEventEmitter Date: Mon, 29 Jul 2024 14:42:07 +0100 Subject: [PATCH 360/595] Remove flaky test (#4332) Fixes https://github.com/matrix-org/matrix-js-sdk/issues/4331 --- spec/unit/room.spec.ts | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/spec/unit/room.spec.ts b/spec/unit/room.spec.ts index 37b5c15048d..542bbcb2536 100644 --- a/spec/unit/room.spec.ts +++ b/spec/unit/room.spec.ts @@ -1394,22 +1394,6 @@ describe("Room", function () { expect(name).toEqual(userB); }); }); - - it("recalculates in acceptable time without heroes", function () { - for (let i = 0; i < 5000; i++) { - addMember(`@person${i}:bar`, KnownMembership.Join, { name: `Person ${i % 20} ${i % 10} ${i % 3}` }); - } - - // This isn't a real performance test and has plenty of headroom because github - // runners don't offer any kind of speed consistency guarantee, but this should at - // least assert that the perf doesn't suddenly become n^2. - const start = performance.now(); - for (let i = 0; i < 50; i++) { - room.recalculate(); - } - const duration = performance.now() - start; - expect(duration).toBeLessThan(200); - }); }); describe("receipts", function () { From 7f91db83d005db07ec45771052e15f0f770a1f7a Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 30 Jul 2024 12:37:58 +0000 Subject: [PATCH 361/595] v34.2.0 --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fddb3e487ec..3f29c547035 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +Changes in [34.2.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.2.0) (2024-07-30) +================================================================================================== +## 🐛 Bug Fixes + +* Element-R: detect "withheld key" UTD errors, and mark them as such ([#4302](https://github.com/matrix-org/matrix-js-sdk/pull/4302)). Contributed by @richvdh. + + Changes in [34.1.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.1.0) (2024-07-16) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index 8f094bbed6e..16ea3e907b1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.2.0-rc.0", + "version": "34.2.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From 687d08dc9d9c618c628ef59031fee2f8f81554cd Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Tue, 30 Jul 2024 08:43:25 -0400 Subject: [PATCH 362/595] Support MSC4140: Delayed events (#4294) and use them for more reliable MatrixRTC session membership events. Also implement "parent" delayed events, which were in a previous version of the MSC and may be reintroduced or be part of a new MSC later. NOTE: Still missing is support for sending encrypted delayed events. --- spec/unit/matrix-client.spec.ts | 327 ++++++++++++++++++- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 86 ++++- src/@types/requests.ts | 50 +++ src/client.ts | 244 ++++++++++++-- src/embedded.ts | 17 +- src/matrixrtc/MatrixRTCSession.ts | 49 ++- 6 files changed, 715 insertions(+), 58 deletions(-) diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index fa9cd776902..3babb457473 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -57,6 +57,7 @@ import { Room, RuleId, TweakName, + UpdateDelayedEventAction, } from "../../src"; import { supportsMatrixCall } from "../../src/webrtc/call"; import { makeBeaconEvent } from "../test-utils/beacon"; @@ -97,7 +98,7 @@ type HttpLookup = { method: string; path: string; prefix?: string; - data?: Record; + data?: Record | Record[]; error?: object; expectBody?: Record; expectQueryParams?: QueryDict; @@ -704,6 +705,328 @@ describe("MatrixClient", function () { }); }); + describe("_unstable_sendDelayedEvent", () => { + const unstableMSC4140Prefix = `${ClientPrefix.Unstable}/org.matrix.msc4140`; + + const roomId = "!room:example.org"; + const body = "This is the body"; + const content = { body, msgtype: MsgType.Text } satisfies RoomMessageEventContent; + const timeoutDelayOpts = { delay: 2000 }; + const realTimeoutDelayOpts = { "org.matrix.msc4140.delay": 2000 }; + + beforeEach(() => { + unstableFeatures["org.matrix.msc4140"] = true; + }); + + it("throws when unsupported by server", async () => { + unstableFeatures["org.matrix.msc4140"] = false; + const errorMessage = "Server does not support"; + + await expect( + client._unstable_sendDelayedEvent( + roomId, + timeoutDelayOpts, + null, + EventType.RoomMessage, + { ...content }, + client.makeTxnId(), + ), + ).rejects.toThrow(errorMessage); + + await expect( + client._unstable_sendDelayedStateEvent(roomId, timeoutDelayOpts, EventType.RoomTopic, { + topic: "topic", + }), + ).rejects.toThrow(errorMessage); + + await expect(client._unstable_getDelayedEvents()).rejects.toThrow(errorMessage); + + await expect( + client._unstable_updateDelayedEvent("anyDelayId", UpdateDelayedEventAction.Send), + ).rejects.toThrow(errorMessage); + }); + + it("works with null threadId", async () => { + httpLookups = []; + + const timeoutDelayTxnId = client.makeTxnId(); + httpLookups.push({ + method: "PUT", + path: `/rooms/${encodeURIComponent(roomId)}/send/m.room.message/${timeoutDelayTxnId}`, + expectQueryParams: realTimeoutDelayOpts, + data: { delay_id: "id1" }, + expectBody: content, + }); + + const { delay_id: timeoutDelayId } = await client._unstable_sendDelayedEvent( + roomId, + timeoutDelayOpts, + null, + EventType.RoomMessage, + { ...content }, + timeoutDelayTxnId, + ); + + const actionDelayTxnId = client.makeTxnId(); + httpLookups.push({ + method: "PUT", + path: `/rooms/${encodeURIComponent(roomId)}/send/m.room.message/${actionDelayTxnId}`, + expectQueryParams: { "org.matrix.msc4140.parent_delay_id": timeoutDelayId }, + data: { delay_id: "id2" }, + expectBody: content, + }); + + await client._unstable_sendDelayedEvent( + roomId, + { parent_delay_id: timeoutDelayId }, + null, + EventType.RoomMessage, + { ...content }, + actionDelayTxnId, + ); + }); + + it("works with non-null threadId", async () => { + httpLookups = []; + const threadId = "$threadId:server"; + const expectBody = { + ...content, + "m.relates_to": { + event_id: threadId, + is_falling_back: true, + rel_type: "m.thread", + }, + }; + + const timeoutDelayTxnId = client.makeTxnId(); + httpLookups.push({ + method: "PUT", + path: `/rooms/${encodeURIComponent(roomId)}/send/m.room.message/${timeoutDelayTxnId}`, + expectQueryParams: realTimeoutDelayOpts, + data: { delay_id: "id1" }, + expectBody, + }); + + const { delay_id: timeoutDelayId } = await client._unstable_sendDelayedEvent( + roomId, + timeoutDelayOpts, + threadId, + EventType.RoomMessage, + { ...content }, + timeoutDelayTxnId, + ); + + const actionDelayTxnId = client.makeTxnId(); + httpLookups.push({ + method: "PUT", + path: `/rooms/${encodeURIComponent(roomId)}/send/m.room.message/${actionDelayTxnId}`, + expectQueryParams: { "org.matrix.msc4140.parent_delay_id": timeoutDelayId }, + data: { delay_id: "id2" }, + expectBody, + }); + + await client._unstable_sendDelayedEvent( + roomId, + { parent_delay_id: timeoutDelayId }, + threadId, + EventType.RoomMessage, + { ...content }, + actionDelayTxnId, + ); + }); + + it("should add thread relation if threadId is passed and the relation is missing", async () => { + httpLookups = []; + const threadId = "$threadId:server"; + const expectBody = { + ...content, + "m.relates_to": { + "m.in_reply_to": { + event_id: threadId, + }, + "event_id": threadId, + "is_falling_back": true, + "rel_type": "m.thread", + }, + }; + + const room = new Room(roomId, client, userId); + mocked(store.getRoom).mockReturnValue(room); + + const rootEvent = new MatrixEvent({ event_id: threadId }); + room.createThread(threadId, rootEvent, [rootEvent], false); + + const timeoutDelayTxnId = client.makeTxnId(); + httpLookups.push({ + method: "PUT", + path: `/rooms/${encodeURIComponent(roomId)}/send/m.room.message/${timeoutDelayTxnId}`, + expectQueryParams: realTimeoutDelayOpts, + data: { delay_id: "id1" }, + expectBody, + }); + + const { delay_id: timeoutDelayId } = await client._unstable_sendDelayedEvent( + roomId, + timeoutDelayOpts, + threadId, + EventType.RoomMessage, + { ...content }, + timeoutDelayTxnId, + ); + + const actionDelayTxnId = client.makeTxnId(); + httpLookups.push({ + method: "PUT", + path: `/rooms/${encodeURIComponent(roomId)}/send/m.room.message/${actionDelayTxnId}`, + expectQueryParams: { "org.matrix.msc4140.parent_delay_id": timeoutDelayId }, + data: { delay_id: "id2" }, + expectBody, + }); + + await client._unstable_sendDelayedEvent( + roomId, + { parent_delay_id: timeoutDelayId }, + threadId, + EventType.RoomMessage, + { ...content }, + actionDelayTxnId, + ); + }); + + it("should add thread relation if threadId is passed and the relation is missing with reply", async () => { + httpLookups = []; + const threadId = "$threadId:server"; + + const content = { + body, + "msgtype": MsgType.Text, + "m.relates_to": { + "m.in_reply_to": { + event_id: "$other:event", + }, + }, + } satisfies RoomMessageEventContent; + const expectBody = { + ...content, + "m.relates_to": { + "m.in_reply_to": { + event_id: "$other:event", + }, + "event_id": threadId, + "is_falling_back": false, + "rel_type": "m.thread", + }, + }; + + const room = new Room(roomId, client, userId); + mocked(store.getRoom).mockReturnValue(room); + + const rootEvent = new MatrixEvent({ event_id: threadId }); + room.createThread(threadId, rootEvent, [rootEvent], false); + + const timeoutDelayTxnId = client.makeTxnId(); + httpLookups.push({ + method: "PUT", + path: `/rooms/${encodeURIComponent(roomId)}/send/m.room.message/${timeoutDelayTxnId}`, + expectQueryParams: realTimeoutDelayOpts, + data: { delay_id: "id1" }, + expectBody, + }); + + const { delay_id: timeoutDelayId } = await client._unstable_sendDelayedEvent( + roomId, + timeoutDelayOpts, + threadId, + EventType.RoomMessage, + { ...content }, + timeoutDelayTxnId, + ); + + const actionDelayTxnId = client.makeTxnId(); + httpLookups.push({ + method: "PUT", + path: `/rooms/${encodeURIComponent(roomId)}/send/m.room.message/${actionDelayTxnId}`, + expectQueryParams: { "org.matrix.msc4140.parent_delay_id": timeoutDelayId }, + data: { delay_id: "id2" }, + expectBody, + }); + + await client._unstable_sendDelayedEvent( + roomId, + { parent_delay_id: timeoutDelayId }, + threadId, + EventType.RoomMessage, + { ...content }, + actionDelayTxnId, + ); + }); + + it("can send a delayed state event", async () => { + httpLookups = []; + const content = { topic: "The year 2000" }; + + httpLookups.push({ + method: "PUT", + path: `/rooms/${encodeURIComponent(roomId)}/state/m.room.topic/`, + expectQueryParams: realTimeoutDelayOpts, + data: { delay_id: "id1" }, + expectBody: content, + }); + + const { delay_id: timeoutDelayId } = await client._unstable_sendDelayedStateEvent( + roomId, + timeoutDelayOpts, + EventType.RoomTopic, + { ...content }, + ); + + httpLookups.push({ + method: "PUT", + path: `/rooms/${encodeURIComponent(roomId)}/state/m.room.topic/`, + expectQueryParams: { "org.matrix.msc4140.parent_delay_id": timeoutDelayId }, + data: { delay_id: "id2" }, + expectBody: content, + }); + + await client._unstable_sendDelayedStateEvent( + roomId, + { parent_delay_id: timeoutDelayId }, + EventType.RoomTopic, + { ...content }, + ); + }); + + it("can look up delayed events", async () => { + httpLookups = [ + { + method: "GET", + prefix: unstableMSC4140Prefix, + path: "/delayed_events", + data: [], + }, + ]; + + await client._unstable_getDelayedEvents(); + }); + + it("can update delayed events", async () => { + const delayId = "id"; + const action = UpdateDelayedEventAction.Restart; + httpLookups = [ + { + method: "POST", + prefix: unstableMSC4140Prefix, + path: `/delayed_events/${encodeURIComponent(delayId)}`, + data: { + action, + }, + }, + ]; + + await client._unstable_updateDelayedEvent(delayId, action); + }); + }); + it("should create (unstable) file trees", async () => { const userId = "@test:example.org"; const roomId = "!room:example.org"; @@ -963,7 +1286,7 @@ describe("MatrixClient", function () { const filter = new Filter(client.credentials.userId); const filterId = await client.getOrCreateFilter(filterName, filter); - expect(filterId).toEqual(FILTER_RESPONSE.data?.filter_id); + expect(filterId).toEqual(!Array.isArray(FILTER_RESPONSE.data) && FILTER_RESPONSE.data?.filter_id); }); }); diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 2b391661433..5d8b1d30685 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -46,6 +46,9 @@ describe("MatrixRTCSession", () => { client = new MatrixClient({ baseUrl: "base_url" }); client.getUserId = jest.fn().mockReturnValue("@alice:example.org"); client.getDeviceId = jest.fn().mockReturnValue("AAAAAAA"); + client.doesServerSupportUnstableFeature = jest.fn((feature) => + Promise.resolve(feature === "org.matrix.msc4140"), + ); }); afterEach(() => { @@ -241,35 +244,61 @@ describe("MatrixRTCSession", () => { foci_preferred: [mockFocus], }; - function testSession( + let sendStateEventMock: jest.Mock; + let sendDelayedStateMock: jest.Mock; + + let sentStateEvent: Promise; + let sentDelayedState: Promise; + + beforeEach(() => { + sentStateEvent = new Promise((resolve) => { + sendStateEventMock = jest.fn(resolve); + }); + sentDelayedState = new Promise((resolve) => { + sendDelayedStateMock = jest.fn(() => { + resolve(); + return { + delay_id: "id", + }; + }); + }); + client.sendStateEvent = sendStateEventMock; + client._unstable_sendDelayedStateEvent = sendDelayedStateMock; + }); + + async function testSession( membershipData: CallMembershipData[] | SessionMembershipData, shouldUseLegacy: boolean, - ): void { + ): Promise { sess = MatrixRTCSession.roomSessionForRoom(client, makeMockRoom(membershipData)); const makeNewLegacyMembershipsMock = jest.spyOn(sess as any, "makeNewLegacyMemberships"); const makeNewMembershipMock = jest.spyOn(sess as any, "makeNewMembership"); sess.joinRoomSession([mockFocus], mockFocus, joinSessionConfig); + await Promise.race([sentStateEvent, new Promise((resolve) => setTimeout(resolve, 500))]); expect(makeNewLegacyMembershipsMock).toHaveBeenCalledTimes(shouldUseLegacy ? 1 : 0); expect(makeNewMembershipMock).toHaveBeenCalledTimes(shouldUseLegacy ? 0 : 1); + + await Promise.race([sentDelayedState, new Promise((resolve) => setTimeout(resolve, 500))]); + expect(client._unstable_sendDelayedStateEvent).toHaveBeenCalledTimes(shouldUseLegacy ? 0 : 1); } - it("uses legacy events if there are any active legacy calls", () => { - testSession([expiredLegacyMembershipData, legacyMembershipData, sessionMembershipData], true); + it("uses legacy events if there are any active legacy calls", async () => { + await testSession([expiredLegacyMembershipData, legacyMembershipData, sessionMembershipData], true); }); - it('uses legacy events if a non-legacy call is in a "memberships" array', () => { - testSession([sessionMembershipData], true); + it('uses legacy events if a non-legacy call is in a "memberships" array', async () => { + await testSession([sessionMembershipData], true); }); - it("uses non-legacy events if all legacy calls are expired", () => { - testSession([expiredLegacyMembershipData], false); + it("uses non-legacy events if all legacy calls are expired", async () => { + await testSession([expiredLegacyMembershipData], false); }); - it("uses non-legacy events if there are only non-legacy calls", () => { - testSession(sessionMembershipData, false); + it("uses non-legacy events if there are only non-legacy calls", async () => { + await testSession(sessionMembershipData, false); }); }); @@ -347,12 +376,27 @@ describe("MatrixRTCSession", () => { describe("joining", () => { let mockRoom: Room; let sendStateEventMock: jest.Mock; + let sendDelayedStateMock: jest.Mock; let sendEventMock: jest.Mock; + let sentStateEvent: Promise; + let sentDelayedState: Promise; + beforeEach(() => { - sendStateEventMock = jest.fn(); + sentStateEvent = new Promise((resolve) => { + sendStateEventMock = jest.fn(resolve); + }); + sentDelayedState = new Promise((resolve) => { + sendDelayedStateMock = jest.fn(() => { + resolve(); + return { + delay_id: "id", + }; + }); + }); sendEventMock = jest.fn(); client.sendStateEvent = sendStateEventMock; + client._unstable_sendDelayedStateEvent = sendDelayedStateMock; client.sendEvent = sendEventMock; mockRoom = makeMockRoom([]); @@ -373,9 +417,11 @@ describe("MatrixRTCSession", () => { expect(sess!.isJoined()).toEqual(true); }); - it("sends a membership event when joining a call", () => { + it("sends a membership event when joining a call", async () => { + const realSetTimeout = setTimeout; jest.useFakeTimers(); sess!.joinRoomSession([mockFocus], mockFocus); + await Promise.race([sentStateEvent, new Promise((resolve) => realSetTimeout(resolve, 500))]); expect(client.sendStateEvent).toHaveBeenCalledWith( mockRoom!.roomId, EventType.GroupCallMemberPrefix, @@ -396,6 +442,8 @@ describe("MatrixRTCSession", () => { }, "@alice:example.org", ); + await Promise.race([sentDelayedState, new Promise((resolve) => realSetTimeout(resolve, 500))]); + expect(client._unstable_sendDelayedStateEvent).toHaveBeenCalledTimes(0); jest.useRealTimers(); }); @@ -403,13 +451,15 @@ describe("MatrixRTCSession", () => { const activeFocusConfig = { type: "livekit", livekit_service_url: "https://active.url" }; const activeFocus = { type: "livekit", focus_selection: "oldest_membership" }; - function testJoin(useOwnedStateEvents: boolean): void { + async function testJoin(useOwnedStateEvents: boolean): Promise { + const realSetTimeout = setTimeout; if (useOwnedStateEvents) { mockRoom.getVersion = jest.fn().mockReturnValue("org.matrix.msc3779.default"); } jest.useFakeTimers(); sess!.joinRoomSession([activeFocusConfig], activeFocus, { useLegacyMemberEvents: false }); + await Promise.race([sentStateEvent, new Promise((resolve) => realSetTimeout(resolve, 500))]); expect(client.sendStateEvent).toHaveBeenCalledWith( mockRoom!.roomId, EventType.GroupCallMemberPrefix, @@ -423,15 +473,17 @@ describe("MatrixRTCSession", () => { } satisfies SessionMembershipData, `${!useOwnedStateEvents ? "_" : ""}@alice:example.org_AAAAAAA`, ); + await Promise.race([sentDelayedState, new Promise((resolve) => realSetTimeout(resolve, 500))]); + expect(client._unstable_sendDelayedStateEvent).toHaveBeenCalledTimes(1); jest.useRealTimers(); } - it("sends a membership event with session payload when joining a non-legacy call", () => { - testJoin(false); + it("sends a membership event with session payload when joining a non-legacy call", async () => { + await testJoin(false); }); - it("does not prefix the state key with _ for rooms that support user-owned state events", () => { - testJoin(true); + it("does not prefix the state key with _ for rooms that support user-owned state events", async () => { + await testJoin(true); }); }); diff --git a/src/@types/requests.ts b/src/@types/requests.ts index d6b7ff75fa2..ae3ea16ddce 100644 --- a/src/@types/requests.ts +++ b/src/@types/requests.ts @@ -76,6 +76,56 @@ export interface ISendEventResponse { event_id: string; } +export type TimeoutDelay = { + delay: number; +}; + +export type ParentDelayId = { + parent_delay_id: string; +}; + +export type SendTimeoutDelayedEventRequestOpts = TimeoutDelay & Partial; +export type SendActionDelayedEventRequestOpts = ParentDelayId; + +export type SendDelayedEventRequestOpts = SendTimeoutDelayedEventRequestOpts | SendActionDelayedEventRequestOpts; + +export type SendDelayedEventResponse = { + delay_id: string; +}; + +export enum UpdateDelayedEventAction { + Cancel = "cancel", + Restart = "restart", + Send = "send", +} + +export type UpdateDelayedEventRequestOpts = SendDelayedEventResponse & { + action: UpdateDelayedEventAction; +}; + +type DelayedPartialTimelineEvent = { + room_id: string; + type: string; + content: IContent; +}; + +type DelayedPartialStateEvent = DelayedPartialTimelineEvent & { + state_key: string; + transaction_id: string; +}; + +type DelayedPartialEvent = DelayedPartialTimelineEvent | DelayedPartialStateEvent; + +export type DelayedEventInfo = { + delayed_events: DelayedPartialEvent & + SendDelayedEventResponse & + SendDelayedEventRequestOpts & + { + running_since: number; + }[]; + next_batch?: string; +}; + export interface IPresenceOpts { // One of "online", "offline" or "unavailable" presence: "online" | "offline" | "unavailable"; diff --git a/src/client.ts b/src/client.ts index ae80589e97c..e2bab66dc0b 100644 --- a/src/client.ts +++ b/src/client.ts @@ -114,6 +114,7 @@ import { NotificationCountType, Room, RoomEvent, RoomEventHandlerMap, RoomNameSt import { RoomMemberEvent, RoomMemberEventHandlerMap } from "./models/room-member"; import { IPowerLevelsContent, RoomStateEvent, RoomStateEventHandlerMap } from "./models/room-state"; import { + DelayedEventInfo, IAddThreePidOnlyBody, IBindThreePidBody, IContextResponse, @@ -134,6 +135,9 @@ import { IStatusResponse, ITagsResponse, KnockRoomOpts, + SendDelayedEventRequestOpts, + SendDelayedEventResponse, + UpdateDelayedEventAction, } from "./@types/requests"; import { EventType, @@ -530,6 +534,8 @@ export const UNSTABLE_MSC2666_SHARED_ROOMS = "uk.half-shot.msc2666"; export const UNSTABLE_MSC2666_MUTUAL_ROOMS = "uk.half-shot.msc2666.mutual_rooms"; export const UNSTABLE_MSC2666_QUERY_MUTUAL_ROOMS = "uk.half-shot.msc2666.query_mutual_rooms"; +const UNSTABLE_MSC4140_DELAYED_EVENTS = "org.matrix.msc4140"; + enum CrossSigningKeyType { MasterKey = "master_key", SelfSigningKey = "self_signing_key", @@ -4573,12 +4579,19 @@ export class MatrixClient extends TypedEventEmitter { @@ -4596,8 +4609,6 @@ export class MatrixClient extends TypedEventEmitter, txnId?: string, - ): Promise { + ): Promise; + /** + * Sends a delayed event (MSC4140). + * @param eventObject - An object with the partial structure of an event, to which event_id, user_id, room_id and origin_server_ts will be added. + * @param delayOpts - Properties of the delay for this event. + * @param txnId - Optional. + * @returns Promise which resolves: to an empty object `{}` + * @returns Rejects: with an error response. + */ + private sendCompleteEvent( + roomId: string, + threadId: string | null, + eventObject: Partial, + delayOpts: SendDelayedEventRequestOpts, + txnId?: string, + ): Promise; + private sendCompleteEvent( + roomId: string, + threadId: string | null, + eventObject: Partial, + delayOptsOrTxnId?: SendDelayedEventRequestOpts | string, + txnIdOrVoid?: string, + ): Promise { + let delayOpts: SendDelayedEventRequestOpts | undefined; + let txnId: string | undefined; + if (typeof delayOptsOrTxnId === "string") { + txnId = delayOptsOrTxnId; + } else { + delayOpts = delayOptsOrTxnId; + txnId = txnIdOrVoid; + } + if (!txnId) { txnId = this.makeTxnId(); } @@ -4634,9 +4676,11 @@ export class MatrixClient extends TypedEventEmitter { + protected async encryptAndSendEvent(room: Room | null, event: MatrixEvent): Promise; + /** + * Simply sends a delayed event without encrypting it. + * TODO: Allow encrypted delayed events, and encrypt them properly + * @param delayOpts - Properties of the delay for this event. + * @returns returns a promise which resolves with the result of the delayed send request + */ + protected async encryptAndSendEvent( + room: Room | null, + event: MatrixEvent, + delayOpts: SendDelayedEventRequestOpts, + ): Promise; + protected async encryptAndSendEvent( + room: Room | null, + event: MatrixEvent, + delayOpts?: SendDelayedEventRequestOpts, + ): Promise { + if (delayOpts) { + return this.sendEventHttpRequest(event, delayOpts); + } + try { let cancelled: boolean; this.eventsBeingEncrypted.add(event.getId()!); @@ -4824,7 +4895,15 @@ export class MatrixClient extends TypedEventEmitter { + private sendEventHttpRequest(event: MatrixEvent): Promise; + private sendEventHttpRequest( + event: MatrixEvent, + delayOpts: SendDelayedEventRequestOpts, + ): Promise; + private sendEventHttpRequest( + event: MatrixEvent, + delayOpts?: SendDelayedEventRequestOpts, + ): Promise { let txnId = event.getTxnId(); if (!txnId) { txnId = this.makeTxnId(); @@ -4856,12 +4935,20 @@ export class MatrixClient extends TypedEventEmitter(Method.Put, path, undefined, event.getWireContent()) - .then((res) => { + const content = event.getWireContent(); + if (!delayOpts) { + return this.http.authedRequest(Method.Put, path, undefined, content).then((res) => { this.logger.debug(`Event sent to ${event.getRoomId()} with event id ${res.event_id}`); return res; }); + } else { + return this.http.authedRequest( + Method.Put, + path, + getUnstableDelayQueryOpts(delayOpts), + content, + ); + } } /** @@ -5191,6 +5278,101 @@ export class MatrixClient extends TypedEventEmitter( + roomId: string, + delayOpts: SendDelayedEventRequestOpts, + threadId: string | null, + eventType: K, + content: TimelineEvents[K], + txnId?: string, + ): Promise { + if (!(await this.doesServerSupportUnstableFeature(UNSTABLE_MSC4140_DELAYED_EVENTS))) { + throw Error("Server does not support the delayed events API"); + } + + this.addThreadRelationIfNeeded(content, threadId, roomId); + return this.sendCompleteEvent(roomId, threadId, { type: eventType, content }, delayOpts, txnId); + } + + /** + * Send a delayed state event. + * + * Note: This endpoint is unstable, and can throw an `Error`. + * Check progress on [MSC4140](https://github.com/matrix-org/matrix-spec-proposals/pull/4140) for more details. + */ + // eslint-disable-next-line + public async _unstable_sendDelayedStateEvent( + roomId: string, + delayOpts: SendDelayedEventRequestOpts, + eventType: K, + content: StateEvents[K], + stateKey = "", + opts: IRequestOpts = {}, + ): Promise { + if (!(await this.doesServerSupportUnstableFeature(UNSTABLE_MSC4140_DELAYED_EVENTS))) { + throw Error("Server does not support the delayed events API"); + } + + const pathParams = { + $roomId: roomId, + $eventType: eventType, + $stateKey: stateKey, + }; + let path = utils.encodeUri("/rooms/$roomId/state/$eventType", pathParams); + if (stateKey !== undefined) { + path = utils.encodeUri(path + "/$stateKey", pathParams); + } + return this.http.authedRequest(Method.Put, path, getUnstableDelayQueryOpts(delayOpts), content as Body, opts); + } + + /** + * Get all pending delayed events for the calling user. + * + * Note: This endpoint is unstable, and can throw an `Error`. + * Check progress on [MSC4140](https://github.com/matrix-org/matrix-spec-proposals/pull/4140) for more details. + */ + // eslint-disable-next-line + public async _unstable_getDelayedEvents(fromToken?: string): Promise { + if (!(await this.doesServerSupportUnstableFeature(UNSTABLE_MSC4140_DELAYED_EVENTS))) { + throw Error("Server does not support the delayed events API"); + } + + const queryDict = fromToken ? { from: fromToken } : undefined; + return await this.http.authedRequest(Method.Get, "/delayed_events", queryDict, undefined, { + prefix: `${ClientPrefix.Unstable}/${UNSTABLE_MSC4140_DELAYED_EVENTS}`, + }); + } + + /** + * Manage a delayed event associated with the given delay_id. + * + * Note: This endpoint is unstable, and can throw an `Error`. + * Check progress on [MSC4140](https://github.com/matrix-org/matrix-spec-proposals/pull/4140) for more details. + */ + // eslint-disable-next-line + public async _unstable_updateDelayedEvent(delayId: string, action: UpdateDelayedEventAction): Promise<{}> { + if (!(await this.doesServerSupportUnstableFeature(UNSTABLE_MSC4140_DELAYED_EVENTS))) { + throw Error("Server does not support the delayed events API"); + } + + const path = utils.encodeUri("/delayed_events/$delayId", { + $delayId: delayId, + }); + const data = { + action, + }; + return await this.http.authedRequest(Method.Post, path, undefined, data, { + prefix: `${ClientPrefix.Unstable}/${UNSTABLE_MSC4140_DELAYED_EVENTS}`, + }); + } + /** * Send a receipt. * @param event - The event being acknowledged @@ -9892,6 +10074,12 @@ export class MatrixClient extends TypedEventEmitter [`${UNSTABLE_MSC4140_DELAYED_EVENTS}.${k}`, v]), + ); +} + /** * recalculates an accurate notifications count on event decryption. * Servers do not have enough knowledge about encrypted events to calculate an diff --git a/src/embedded.ts b/src/embedded.ts index 8a1492622ee..d2ba19a57e0 100644 --- a/src/embedded.ts +++ b/src/embedded.ts @@ -26,7 +26,7 @@ import { } from "matrix-widget-api"; import { MatrixEvent, IEvent, IContent, EventStatus } from "./models/event"; -import { ISendEventResponse } from "./@types/requests"; +import { ISendEventResponse, SendDelayedEventRequestOpts, SendDelayedEventResponse } from "./@types/requests"; import { EventType } from "./@types/event"; import { logger } from "./logger"; import { @@ -248,7 +248,20 @@ export class RoomWidgetClient extends MatrixClient { throw new Error(`Unknown room: ${roomIdOrAlias}`); } - protected async encryptAndSendEvent(room: Room, event: MatrixEvent): Promise { + protected async encryptAndSendEvent(room: Room, event: MatrixEvent): Promise; + protected async encryptAndSendEvent( + room: Room, + event: MatrixEvent, + delayOpts: SendDelayedEventRequestOpts, + ): Promise; + protected async encryptAndSendEvent( + room: Room, + event: MatrixEvent, + delayOpts?: SendDelayedEventRequestOpts, + ): Promise { + if (delayOpts) { + throw new Error("Delayed event sending via widgets is not implemented"); + } let response: ISendEventFromWidgetResponseData; try { response = await this.widgetApi.sendRoomEvent(event.getType(), event.getContent(), room.roomId); diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 7f6d12aa203..9c45d28ea24 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -20,6 +20,7 @@ import { EventTimeline } from "../models/event-timeline"; import { Room } from "../models/room"; import { MatrixClient } from "../client"; import { EventType } from "../@types/event"; +import { UpdateDelayedEventAction } from "../@types/requests"; import { CallMembership, CallMembershipData, @@ -865,27 +866,57 @@ export class MatrixRTCSession extends TypedEventEmitter setTimeout(resolve, resendDelay)); await this.triggerCallMembershipEventUpdate(); } } + private scheduleDelayDisconnection(delayId: string): void { + this.memberEventTimeout = setTimeout(() => this.delayDisconnection(delayId), 5000); + } + + private async delayDisconnection(delayId: string): Promise { + try { + await this.client._unstable_updateDelayedEvent(delayId, UpdateDelayedEventAction.Restart); + this.scheduleDelayDisconnection(delayId); + } catch (e) { + logger.error("Failed to delay our disconnection event", e); + } + } + private stateEventsContainOngoingLegacySession(callMemberEvents: Map): boolean { for (const callMemberEvent of callMemberEvents.values()) { const content = callMemberEvent.getContent(); From 89a9a7fa387c8487bca6e9e2d2963c14b0988793 Mon Sep 17 00:00:00 2001 From: David Baker Date: Thu, 1 Aug 2024 11:55:23 +0100 Subject: [PATCH 363/595] Fix hashed ID server lookups with no Olm (#4333) * Fix hashed ID server lookups with no Olm It used the hash function from Olm (presumably to work cross-platform) but subtle crypto is available on node nowadays so we can just use that. Refactor existing code that did this out to a common function, add tests. * Test the code when crypto is available * Test case of no crypto available * Move digest file to src to get it out of the way of the olm / e2e stuff * Fix import * Fix error string & doc * subtle crypto, not webcrypto * Extract the base64 part * Fix test * Move test file too * Add more doc * Fix imports --- spec/unit/digest.spec.ts | 40 ++++++++++++++++++++++++++++ spec/unit/matrix-client.spec.ts | 45 +++++++++++++++++++++++++++++++- spec/unit/oidc/authorize.spec.ts | 17 +++++++++--- src/client.ts | 30 ++++++++++----------- src/digest.ts | 34 ++++++++++++++++++++++++ src/oidc/authorize.ts | 11 +++----- 6 files changed, 150 insertions(+), 27 deletions(-) create mode 100644 spec/unit/digest.spec.ts create mode 100644 src/digest.ts diff --git a/spec/unit/digest.spec.ts b/spec/unit/digest.spec.ts new file mode 100644 index 00000000000..e129cf85070 --- /dev/null +++ b/spec/unit/digest.spec.ts @@ -0,0 +1,40 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { encodeUnpaddedBase64Url } from "../../src"; +import { sha256 } from "../../src/digest"; + +describe("sha256", () => { + it("should hash a string", async () => { + const hash = await sha256("test"); + expect(encodeUnpaddedBase64Url(hash)).toBe("n4bQgYhMfWWaL-qgxVrQFaO_TxsrC4Is0V1sFbDwCgg"); + }); + + it("should hash a string with emoji", async () => { + const hash = await sha256("test 🍱"); + expect(encodeUnpaddedBase64Url(hash)).toBe("X2aDNrrwfq3nCTOl90R9qg9ynxhHnSzsMqtrdYX-SGw"); + }); + + it("throws if webcrypto is not available", async () => { + const oldCrypto = global.crypto; + try { + global.crypto = {} as any; + await expect(sha256("test")).rejects.toThrow(); + } finally { + global.crypto = oldCrypto; + } + }); +}); diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index 3babb457473..04129ab0818 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -299,7 +299,9 @@ describe("MatrixClient", function () { ...(opts || {}), }); // FIXME: We shouldn't be yanking http like this. - client.http = (["authedRequest", "getContentUri", "request", "uploadContent"] as const).reduce((r, k) => { + client.http = ( + ["authedRequest", "getContentUri", "request", "uploadContent", "idServerRequest"] as const + ).reduce((r, k) => { r[k] = jest.fn(); return r; }, {} as MatrixHttpApi); @@ -3358,4 +3360,45 @@ describe("MatrixClient", function () { expect(httpLookups.length).toEqual(0); }); }); + + describe("identityHashedLookup", () => { + it("should return hashed lookup results", async () => { + const ID_ACCESS_TOKEN = "hello_id_server_please_let_me_make_a_request"; + + client.http.idServerRequest = jest.fn().mockImplementation((method, path, params) => { + if (method === "GET" && path === "/hash_details") { + return { algorithms: ["sha256"], lookup_pepper: "carrot" }; + } else if (method === "POST" && path === "/lookup") { + return { + mappings: { + "WHA-MgrrsZACDI9F8OaVagpiyiV2sjZylGHJteT4OMU": "@bob:homeserver.dummy", + }, + }; + } + + throw new Error("Test impl doesn't know about this request"); + }); + + const lookupResult = await client.identityHashedLookup([["bob@email.dummy", "email"]], ID_ACCESS_TOKEN); + + expect(client.http.idServerRequest).toHaveBeenCalledWith( + "GET", + "/hash_details", + undefined, + "/_matrix/identity/v2", + ID_ACCESS_TOKEN, + ); + + expect(client.http.idServerRequest).toHaveBeenCalledWith( + "POST", + "/lookup", + { pepper: "carrot", algorithm: "sha256", addresses: ["WHA-MgrrsZACDI9F8OaVagpiyiV2sjZylGHJteT4OMU"] }, + "/_matrix/identity/v2", + ID_ACCESS_TOKEN, + ); + + expect(lookupResult).toHaveLength(1); + expect(lookupResult[0]).toEqual({ address: "bob@email.dummy", mxid: "@bob:homeserver.dummy" }); + }); + }); }); diff --git a/spec/unit/oidc/authorize.spec.ts b/spec/unit/oidc/authorize.spec.ts index 3fab8e5eef4..e786b8fb56c 100644 --- a/spec/unit/oidc/authorize.spec.ts +++ b/spec/unit/oidc/authorize.spec.ts @@ -89,11 +89,8 @@ describe("oidc authorization", () => { describe("generateAuthorizationUrl()", () => { it("should generate url with correct parameters", async () => { - // test the no crypto case here - // @ts-ignore mocking - globalThis.crypto.subtle = undefined; - const authorizationParams = generateAuthorizationParams({ redirectUri: baseUrl }); + authorizationParams.codeVerifier = "test-code-verifier"; const authUrl = new URL( await generateAuthorizationUrl(authorizationEndpoint, clientId, authorizationParams), ); @@ -105,6 +102,18 @@ describe("oidc authorization", () => { expect(authUrl.searchParams.get("scope")).toEqual(authorizationParams.scope); expect(authUrl.searchParams.get("state")).toEqual(authorizationParams.state); expect(authUrl.searchParams.get("nonce")).toEqual(authorizationParams.nonce); + expect(authUrl.searchParams.get("code_challenge")).toEqual("0FLIKahrX7kqxncwhV5WD82lu_wi5GA8FsRSLubaOpU"); + }); + + it("should log a warning if crypto is not available", async () => { + // test the no crypto case here + // @ts-ignore mocking + globalThis.crypto.subtle = undefined; + + const authorizationParams = generateAuthorizationParams({ redirectUri: baseUrl }); + const authUrl = new URL( + await generateAuthorizationUrl(authorizationEndpoint, clientId, authorizationParams), + ); // crypto not available, plain text code_challenge is used expect(authUrl.searchParams.get("code_challenge")).toEqual(authorizationParams.codeVerifier); diff --git a/src/client.ts b/src/client.ts index e2bab66dc0b..6bff7bab5c0 100644 --- a/src/client.ts +++ b/src/client.ts @@ -47,7 +47,7 @@ import { Direction, EventTimeline } from "./models/event-timeline"; import { IActionsObject, PushProcessor } from "./pushprocessor"; import { AutoDiscovery, AutoDiscoveryAction } from "./autodiscovery"; import * as olmlib from "./crypto/olmlib"; -import { decodeBase64, encodeBase64 } from "./base64"; +import { decodeBase64, encodeBase64, encodeUnpaddedBase64Url } from "./base64"; import { IExportedDevice as IExportedOlmDevice } from "./crypto/OlmDevice"; import { IOlmDevice } from "./crypto/algorithms/megolm"; import { TypedReEmitter } from "./ReEmitter"; @@ -231,6 +231,7 @@ import { KnownMembership, Membership } from "./@types/membership"; import { RoomMessageEventContent, StickerEventContent } from "./@types/events"; import { ImageInfo } from "./@types/media"; import { Capabilities, ServerCapabilities } from "./serverCapabilities"; +import { sha256 } from "./digest"; export type Store = IStore; @@ -9484,20 +9485,19 @@ export class MatrixClient extends TypedEventEmitter { - const addr = p[0].toLowerCase(); // lowercase to get consistent hashes - const med = p[1].toLowerCase(); - const hashed = olmutil - .sha256(`${addr} ${med} ${params["pepper"]}`) - .replace(/\+/g, "-") - .replace(/\//g, "_"); // URL-safe base64 - // Map the hash to a known (case-sensitive) address. We use the case - // sensitive version because the caller might be expecting that. - localMapping[hashed] = p[0]; - return hashed; - }); + params["addresses"] = await Promise.all( + addressPairs.map(async (p) => { + const addr = p[0].toLowerCase(); // lowercase to get consistent hashes + const med = p[1].toLowerCase(); + const hashBuffer = await sha256(`${addr} ${med} ${params["pepper"]}`); + const hashed = encodeUnpaddedBase64Url(hashBuffer); + + // Map the hash to a known (case-sensitive) address. We use the case + // sensitive version because the caller might be expecting that. + localMapping[hashed] = p[0]; + return hashed; + }), + ); params["algorithm"] = "sha256"; } else if (hashes["algorithms"].includes("none")) { params["addresses"] = addressPairs.map((p) => { diff --git a/src/digest.ts b/src/digest.ts new file mode 100644 index 00000000000..85b5be9643b --- /dev/null +++ b/src/digest.ts @@ -0,0 +1,34 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +/** + * Computes a SHA-256 hash of a string (after utf-8 encoding) and returns it as an ArrayBuffer. + * + * @param plaintext The string to hash + * @returns An ArrayBuffer containing the SHA-256 hash of the input string + * @throws If the subtle crypto API is not available, for example if the code is running + * in a web page with an insecure context (eg. served over plain HTTP). + */ +export async function sha256(plaintext: string): Promise { + if (!globalThis.crypto.subtle) { + throw new Error("Crypto.subtle is not available: insecure context?"); + } + const utf8 = new TextEncoder().encode(plaintext); + + const digest = await globalThis.crypto.subtle.digest("SHA-256", utf8); + + return digest; +} diff --git a/src/oidc/authorize.ts b/src/oidc/authorize.ts index 5f437c58b6a..c3ff2fcef36 100644 --- a/src/oidc/authorize.ts +++ b/src/oidc/authorize.ts @@ -27,6 +27,8 @@ import { validateIdToken, validateStoredUserState, } from "./validate"; +import { sha256 } from "../digest"; +import { encodeUnpaddedBase64Url } from "../base64"; // reexport for backwards compatibility export type { BearerTokenResponse }; @@ -61,14 +63,9 @@ const generateCodeChallenge = async (codeVerifier: string): Promise => { logger.warn("A secure context is required to generate code challenge. Using plain text code challenge"); return codeVerifier; } - const utf8 = new TextEncoder().encode(codeVerifier); - const digest = await globalThis.crypto.subtle.digest("SHA-256", utf8); - - return btoa(String.fromCharCode(...new Uint8Array(digest))) - .replace(/=/g, "") - .replace(/\+/g, "-") - .replace(/\//g, "_"); + const hashBuffer = await sha256(codeVerifier); + return encodeUnpaddedBase64Url(hashBuffer); }; /** From e10c362ef036e7ca04bed232c9753f96ecd684de Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Thu, 1 Aug 2024 10:17:52 -0400 Subject: [PATCH 364/595] Support MSC4157: delayed events via Widget API (#4311) --- package.json | 2 +- .../rendezvous/MSC4108SignInWithQR.spec.ts | 6 +- spec/unit/embedded.spec.ts | 239 +++++++++++++++++- src/client.ts | 2 +- src/embedded.ts | 99 +++++++- yarn.lock | 8 +- 6 files changed, 341 insertions(+), 15 deletions(-) diff --git a/package.json b/package.json index 9fa38002114..c6b2a2350e8 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ "jwt-decode": "^4.0.0", "loglevel": "^1.7.1", "matrix-events-sdk": "0.0.1", - "matrix-widget-api": "^1.6.0", + "matrix-widget-api": "^1.8.1", "oidc-client-ts": "^3.0.1", "p-retry": "4", "sdp-transform": "^2.14.1", diff --git a/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts b/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts index 4910759ea4e..e64ba412a6d 100644 --- a/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts +++ b/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts @@ -268,7 +268,8 @@ describe("MSC4108SignInWithQR", () => { it("should abort if device doesn't come up by timeout", async () => { jest.spyOn(global, "setTimeout").mockImplementation((fn) => { (fn)(); - return -1; + // TODO: mock timers properly + return -1 as any; }); jest.spyOn(Date, "now").mockImplementation(() => { return 12345678 + mocked(setTimeout).mock.calls.length * 1000; @@ -320,7 +321,8 @@ describe("MSC4108SignInWithQR", () => { it("should not send secrets if user cancels", async () => { jest.spyOn(global, "setTimeout").mockImplementation((fn) => { (fn)(); - return -1; + // TODO: mock timers properly + return -1 as any; }); await Promise.all([ourLogin.negotiateProtocols(), opponentLogin.negotiateProtocols()]); diff --git a/spec/unit/embedded.spec.ts b/spec/unit/embedded.spec.ts index d9ac5a62f0b..d3b3e12359d 100644 --- a/spec/unit/embedded.spec.ts +++ b/spec/unit/embedded.spec.ts @@ -32,7 +32,7 @@ import { IOpenIDCredentials, } from "matrix-widget-api"; -import { createRoomWidgetClient, MsgType } from "../../src/matrix"; +import { createRoomWidgetClient, MsgType, UpdateDelayedEventAction } from "../../src/matrix"; import { MatrixClient, ClientEvent, ITurnServer as IClientTurnServer } from "../../src/client"; import { SyncState } from "../../src/sync"; import { ICapabilities } from "../../src/embedded"; @@ -59,8 +59,26 @@ class MockWidgetApi extends EventEmitter { public requestCapabilityToReceiveState = jest.fn(); public requestCapabilityToSendToDevice = jest.fn(); public requestCapabilityToReceiveToDevice = jest.fn(); - public sendRoomEvent = jest.fn(() => ({ event_id: `$${Math.random()}` })); - public sendStateEvent = jest.fn(); + public sendRoomEvent = jest.fn( + (eventType: string, content: unknown, roomId?: string, delay?: number, parentDelayId?: string) => + delay === undefined && parentDelayId === undefined + ? { event_id: `$${Math.random()}` } + : { delay_id: `id-${Math.random()}` }, + ); + public sendStateEvent = jest.fn( + ( + eventType: string, + stateKey: string, + content: unknown, + roomId?: string, + delay?: number, + parentDelayId?: string, + ) => + delay === undefined && parentDelayId === undefined + ? { event_id: `$${Math.random()}` } + : { delay_id: `id-${Math.random()}` }, + ); + public updateDelayedEvent = jest.fn(); public sendToDevice = jest.fn(); public requestOpenIDConnectToken = jest.fn(() => { return testOIDCToken; @@ -125,6 +143,17 @@ describe("RoomWidgetClient", () => { ); }); + it("send handles wrong field in response", async () => { + await makeClient({ sendEvent: ["org.matrix.rageshake_request"] }); + widgetApi.sendRoomEvent.mockResolvedValueOnce({ + room_id: "!1:example.org", + delay_id: `id-${Math.random}`, + }); + await expect( + client.sendEvent("!1:example.org", "org.matrix.rageshake_request", { request_id: 123 }), + ).rejects.toThrow(); + }); + it("receives", async () => { const event = new MatrixEvent({ type: "org.matrix.rageshake_request", @@ -160,6 +189,199 @@ describe("RoomWidgetClient", () => { }); }); + describe("delayed events", () => { + describe("when supported", () => { + const doesServerSupportUnstableFeatureMock = jest.fn((feature) => + Promise.resolve(feature === "org.matrix.msc4140"), + ); + + beforeAll(() => { + MatrixClient.prototype.doesServerSupportUnstableFeature = doesServerSupportUnstableFeatureMock; + }); + + afterAll(() => { + doesServerSupportUnstableFeatureMock.mockReset(); + }); + + it("sends delayed message events", async () => { + await makeClient({ sendDelayedEvents: true, sendEvent: ["org.matrix.rageshake_request"] }); + expect(widgetApi.requestCapability).toHaveBeenCalledWith(MatrixCapabilities.MSC4157SendDelayedEvent); + await client._unstable_sendDelayedEvent( + "!1:example.org", + { delay: 2000 }, + null, + "org.matrix.rageshake_request", + { request_id: 123 }, + ); + expect(widgetApi.sendRoomEvent).toHaveBeenCalledWith( + "org.matrix.rageshake_request", + { request_id: 123 }, + "!1:example.org", + 2000, + undefined, + ); + }); + + it("sends child action delayed message events", async () => { + await makeClient({ sendDelayedEvents: true, sendEvent: ["org.matrix.rageshake_request"] }); + expect(widgetApi.requestCapability).toHaveBeenCalledWith(MatrixCapabilities.MSC4157SendDelayedEvent); + const parentDelayId = `id-${Math.random()}`; + await client._unstable_sendDelayedEvent( + "!1:example.org", + { parent_delay_id: parentDelayId }, + null, + "org.matrix.rageshake_request", + { request_id: 123 }, + ); + expect(widgetApi.sendRoomEvent).toHaveBeenCalledWith( + "org.matrix.rageshake_request", + { request_id: 123 }, + "!1:example.org", + undefined, + parentDelayId, + ); + }); + + it("sends delayed state events", async () => { + await makeClient({ + sendDelayedEvents: true, + sendState: [{ eventType: "org.example.foo", stateKey: "bar" }], + }); + expect(widgetApi.requestCapability).toHaveBeenCalledWith(MatrixCapabilities.MSC4157SendDelayedEvent); + await client._unstable_sendDelayedStateEvent( + "!1:example.org", + { delay: 2000 }, + "org.example.foo", + { hello: "world" }, + "bar", + ); + expect(widgetApi.sendStateEvent).toHaveBeenCalledWith( + "org.example.foo", + "bar", + { hello: "world" }, + "!1:example.org", + 2000, + undefined, + ); + }); + + it("sends child action delayed state events", async () => { + await makeClient({ + sendDelayedEvents: true, + sendState: [{ eventType: "org.example.foo", stateKey: "bar" }], + }); + expect(widgetApi.requestCapability).toHaveBeenCalledWith(MatrixCapabilities.MSC4157SendDelayedEvent); + const parentDelayId = `fg-${Math.random()}`; + await client._unstable_sendDelayedStateEvent( + "!1:example.org", + { parent_delay_id: parentDelayId }, + "org.example.foo", + { hello: "world" }, + "bar", + ); + expect(widgetApi.sendStateEvent).toHaveBeenCalledWith( + "org.example.foo", + "bar", + { hello: "world" }, + "!1:example.org", + undefined, + parentDelayId, + ); + }); + + it("send delayed message events handles wrong field in response", async () => { + await makeClient({ sendDelayedEvents: true, sendEvent: ["org.matrix.rageshake_request"] }); + widgetApi.sendRoomEvent.mockResolvedValueOnce({ + room_id: "!1:example.org", + event_id: `$${Math.random()}`, + }); + await expect( + client._unstable_sendDelayedEvent( + "!1:example.org", + { delay: 2000 }, + null, + "org.matrix.rageshake_request", + { request_id: 123 }, + ), + ).rejects.toThrow(); + }); + + it("send delayed state events handles wrong field in response", async () => { + await makeClient({ + sendDelayedEvents: true, + sendState: [{ eventType: "org.example.foo", stateKey: "bar" }], + }); + widgetApi.sendStateEvent.mockResolvedValueOnce({ + room_id: "!1:example.org", + event_id: `$${Math.random()}`, + }); + await expect( + client._unstable_sendDelayedStateEvent( + "!1:example.org", + { delay: 2000 }, + "org.example.foo", + { hello: "world" }, + "bar", + ), + ).rejects.toThrow(); + }); + + it("updates delayed events", async () => { + await makeClient({ updateDelayedEvents: true, sendEvent: ["org.matrix.rageshake_request"] }); + expect(widgetApi.requestCapability).toHaveBeenCalledWith(MatrixCapabilities.MSC4157UpdateDelayedEvent); + for (const action of [ + UpdateDelayedEventAction.Cancel, + UpdateDelayedEventAction.Restart, + UpdateDelayedEventAction.Send, + ]) { + await client._unstable_updateDelayedEvent("id", action); + expect(widgetApi.updateDelayedEvent).toHaveBeenCalledWith("id", action); + } + }); + }); + + describe("when unsupported", () => { + it("fails to send delayed message events", async () => { + await makeClient({ sendEvent: ["org.matrix.rageshake_request"] }); + await expect( + client._unstable_sendDelayedEvent( + "!1:example.org", + { delay: 2000 }, + null, + "org.matrix.rageshake_request", + { request_id: 123 }, + ), + ).rejects.toThrow("Server does not support"); + }); + + it("fails to send delayed state events", async () => { + await makeClient({ sendState: [{ eventType: "org.example.foo", stateKey: "bar" }] }); + await expect( + client._unstable_sendDelayedStateEvent( + "!1:example.org", + { delay: 2000 }, + "org.example.foo", + { hello: "world" }, + "bar", + ), + ).rejects.toThrow("Server does not support"); + }); + + it("fails to update delayed state events", async () => { + await makeClient({}); + for (const action of [ + UpdateDelayedEventAction.Cancel, + UpdateDelayedEventAction.Restart, + UpdateDelayedEventAction.Send, + ]) { + await expect(client._unstable_updateDelayedEvent("id", action)).rejects.toThrow( + "Server does not support", + ); + } + }); + }); + }); + describe("initialization", () => { it("requests permissions for specific message types", async () => { await makeClient({ sendMessage: [MsgType.Text], receiveMessage: [MsgType.Text] }); @@ -211,6 +433,17 @@ describe("RoomWidgetClient", () => { ); }); + it("send handles incorrect response", async () => { + await makeClient({ sendState: [{ eventType: "org.example.foo", stateKey: "bar" }] }); + widgetApi.sendStateEvent.mockResolvedValueOnce({ + room_id: "!1:example.org", + delay_id: `id-${Math.random}`, + }); + await expect( + client.sendStateEvent("!1:example.org", "org.example.foo", { hello: "world" }, "bar"), + ).rejects.toThrow(); + }); + it("receives", async () => { await makeClient({ receiveState: [{ eventType: "org.example.foo", stateKey: "bar" }] }); expect(widgetApi.requestCapabilityForRoomTimeline).toHaveBeenCalledWith("!1:example.org"); diff --git a/src/client.ts b/src/client.ts index 6bff7bab5c0..de0af218fbc 100644 --- a/src/client.ts +++ b/src/client.ts @@ -535,7 +535,7 @@ export const UNSTABLE_MSC2666_SHARED_ROOMS = "uk.half-shot.msc2666"; export const UNSTABLE_MSC2666_MUTUAL_ROOMS = "uk.half-shot.msc2666.mutual_rooms"; export const UNSTABLE_MSC2666_QUERY_MUTUAL_ROOMS = "uk.half-shot.msc2666.query_mutual_rooms"; -const UNSTABLE_MSC4140_DELAYED_EVENTS = "org.matrix.msc4140"; +export const UNSTABLE_MSC4140_DELAYED_EVENTS = "org.matrix.msc4140"; enum CrossSigningKeyType { MasterKey = "master_key", diff --git a/src/embedded.ts b/src/embedded.ts index d2ba19a57e0..8b99836bc4d 100644 --- a/src/embedded.ts +++ b/src/embedded.ts @@ -26,8 +26,13 @@ import { } from "matrix-widget-api"; import { MatrixEvent, IEvent, IContent, EventStatus } from "./models/event"; -import { ISendEventResponse, SendDelayedEventRequestOpts, SendDelayedEventResponse } from "./@types/requests"; -import { EventType } from "./@types/event"; +import { + ISendEventResponse, + SendDelayedEventRequestOpts, + SendDelayedEventResponse, + UpdateDelayedEventAction, +} from "./@types/requests"; +import { EventType, StateEvents } from "./@types/event"; import { logger } from "./logger"; import { MatrixClient, @@ -36,6 +41,7 @@ import { IStartClientOpts, SendToDeviceContentMap, IOpenIDToken, + UNSTABLE_MSC4140_DELAYED_EVENTS, } from "./client"; import { SyncApi, SyncState } from "./sync"; import { SlidingSyncSdk } from "./sliding-sync-sdk"; @@ -95,6 +101,20 @@ export interface ICapabilities { * @defaultValue false */ turnServers?: boolean; + + /** + * Whether this client needs to be able to send delayed events. + * @experimental Part of MSC4140 & MSC4157 + * @defaultValue false + */ + sendDelayedEvents?: boolean; + + /** + * Whether this client needs to be able to update delayed events. + * @experimental Part of MSC4140 & MSC4157 + * @defaultValue false + */ + updateDelayedEvents?: boolean; } /** @@ -162,6 +182,18 @@ export class RoomWidgetClient extends MatrixClient { ); capabilities.sendToDevice?.forEach((eventType) => widgetApi.requestCapabilityToSendToDevice(eventType)); capabilities.receiveToDevice?.forEach((eventType) => widgetApi.requestCapabilityToReceiveToDevice(eventType)); + if ( + capabilities.sendDelayedEvents && + (capabilities.sendEvent?.length || + capabilities.sendMessage === true || + (Array.isArray(capabilities.sendMessage) && capabilities.sendMessage.length) || + capabilities.sendState?.length) + ) { + widgetApi.requestCapability(MatrixCapabilities.MSC4157SendDelayedEvent); + } + if (capabilities.updateDelayedEvents) { + widgetApi.requestCapability(MatrixCapabilities.MSC4157UpdateDelayedEvent); + } if (capabilities.turnServers) { widgetApi.requestCapability(MatrixCapabilities.MSC3846TurnServers); } @@ -260,8 +292,17 @@ export class RoomWidgetClient extends MatrixClient { delayOpts?: SendDelayedEventRequestOpts, ): Promise { if (delayOpts) { - throw new Error("Delayed event sending via widgets is not implemented"); + // TODO: updatePendingEvent for delayed events? + const response = await this.widgetApi.sendRoomEvent( + event.getType(), + event.getContent(), + room.roomId, + "delay" in delayOpts ? delayOpts.delay : undefined, + "parent_delay_id" in delayOpts ? delayOpts.parent_delay_id : undefined, + ); + return this.validateSendDelayedEventResponse(response); } + let response: ISendEventFromWidgetResponseData; try { response = await this.widgetApi.sendRoomEvent(event.getType(), event.getContent(), room.roomId); @@ -270,6 +311,7 @@ export class RoomWidgetClient extends MatrixClient { throw e; } + // This also checks for an event id on the response room.updatePendingEvent(event, EventStatus.SENT, response.event_id); return { event_id: response.event_id! }; } @@ -280,7 +322,56 @@ export class RoomWidgetClient extends MatrixClient { content: any, stateKey = "", ): Promise { - return (await this.widgetApi.sendStateEvent(eventType, stateKey, content, roomId)) as ISendEventResponse; + const response = await this.widgetApi.sendStateEvent(eventType, stateKey, content, roomId); + if (response.event_id === undefined) { + throw new Error("'event_id' absent from response to an event request"); + } + return { event_id: response.event_id }; + } + + /** + * @experimental This currently relies on an unstable MSC (MSC4140). + */ + // eslint-disable-next-line + public async _unstable_sendDelayedStateEvent( + roomId: string, + delayOpts: SendDelayedEventRequestOpts, + eventType: K, + content: StateEvents[K], + stateKey = "", + ): Promise { + if (!(await this.doesServerSupportUnstableFeature(UNSTABLE_MSC4140_DELAYED_EVENTS))) { + throw Error("Server does not support the delayed events API"); + } + + const response = await this.widgetApi.sendStateEvent( + eventType, + stateKey, + content, + roomId, + "delay" in delayOpts ? delayOpts.delay : undefined, + "parent_delay_id" in delayOpts ? delayOpts.parent_delay_id : undefined, + ); + return this.validateSendDelayedEventResponse(response); + } + + private validateSendDelayedEventResponse(response: ISendEventFromWidgetResponseData): SendDelayedEventResponse { + if (response.delay_id === undefined) { + throw new Error("'delay_id' absent from response to a delayed event request"); + } + return { delay_id: response.delay_id }; + } + + /** + * @experimental This currently relies on an unstable MSC (MSC4140). + */ + // eslint-disable-next-line + public async _unstable_updateDelayedEvent(delayId: string, action: UpdateDelayedEventAction): Promise<{}> { + if (!(await this.doesServerSupportUnstableFeature(UNSTABLE_MSC4140_DELAYED_EVENTS))) { + throw Error("Server does not support the delayed events API"); + } + + return await this.widgetApi.updateDelayedEvent(delayId, action); } public async sendToDevice(eventType: string, contentMap: SendToDeviceContentMap): Promise<{}> { diff --git a/yarn.lock b/yarn.lock index 7cadabeff3b..1396c0b8916 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4722,10 +4722,10 @@ matrix-mock-request@^2.5.0: dependencies: expect "^28.1.0" -matrix-widget-api@^1.6.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.7.0.tgz#ae3b44380f11bb03519d0bf0373dfc3341634667" - integrity sha512-dzSnA5Va6CeIkyWs89xZty/uv38HLyfjOrHGbbEikCa2ZV0HTkUNtrBMKlrn4CRYyDJ6yoO/3ssRwiR0jJvOkQ== +matrix-widget-api@^1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.8.1.tgz#90fe4814956a27d6c6cff55c2aa67da516722eb1" + integrity sha512-oISJ9rmkfxNonrrWKUB2HCwj0i+J0b7zNGqwNudOjXj9Jsv7r8UWqowE7AEWyAsPp4IwW/hEvNeLbNo2wUsXwg== dependencies: "@types/events" "^3.0.0" events "^3.2.0" From fbdd78b428b609dab0f2e367201b13b6b138aaae Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Thu, 1 Aug 2024 10:57:29 -0400 Subject: [PATCH 365/595] Also check for MSC3757 for session state keys (#4334) Do not prefix the non-legacy session membership state keys with an underscore for rooms using MSC3757 (in addtion to MSC3779). --- src/matrixrtc/MatrixRTCSession.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 9c45d28ea24..c15b0181507 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -933,7 +933,7 @@ export class MatrixRTCSession extends TypedEventEmitter Date: Thu, 1 Aug 2024 16:16:59 +0100 Subject: [PATCH 366/595] Make code tsc es2022 compliant (#4335) * Remove redundant global.d.ts definitions Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Remove roomId overload Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Update base.ts --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/@types/global.d.ts | 45 ----------------------------------- src/crypto/algorithms/base.ts | 4 ---- 2 files changed, 49 deletions(-) diff --git a/src/@types/global.d.ts b/src/@types/global.d.ts index 71c0c87b815..d7e7c76ac2d 100644 --- a/src/@types/global.d.ts +++ b/src/@types/global.d.ts @@ -29,20 +29,11 @@ declare global { namespace NodeJS { interface Global { - localStorage: Storage; // marker variable used to detect both the browser & node entrypoints being used at once __js_sdk_entrypoint: unknown; } } - interface Window { - webkitAudioContext: typeof AudioContext; - } - - interface Crypto { - webkitSubtle?: Window["crypto"]["subtle"]; - } - interface MediaDevices { // This is experimental and types don't know about it yet // https://github.com/microsoft/TypeScript/issues/33232 @@ -76,40 +67,4 @@ declare global { // on webkit: we should check if we still need to do this webkitGetUserMedia: DummyInterfaceWeShouldntBeUsingThis; } - - export interface ISettledFulfilled { - status: "fulfilled"; - value: T; - } - export interface ISettledRejected { - status: "rejected"; - reason: any; - } - - interface PromiseConstructor { - allSettled(promises: Promise[]): Promise | ISettledRejected>>; - } - - interface RTCRtpTransceiver { - // This has been removed from TS - // (https://github.com/microsoft/TypeScript-DOM-lib-generator/issues/1029), - // but we still need this for MatrixCall::getRidOfRTXCodecs() - setCodecPreferences(codecs: RTCRtpCodecCapability[]): void; - } - - interface RequestInit { - /** - * Specifies the priority of the fetch request relative to other requests of the same type. - * Must be one of the following strings: - * high: A high priority fetch request relative to other requests of the same type. - * low: A low priority fetch request relative to other requests of the same type. - * auto: Automatically determine the priority of the fetch request relative to other requests of the same type (default). - * - * @see https://html.spec.whatwg.org/multipage/urls-and-fetching.html#fetch-priority-attribute - * @see https://github.com/microsoft/TypeScript/issues/54472 - * @see https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API#browser_compatibility - * Not yet supported in Safari or Firefox - */ - priority?: "high" | "low" | "auto"; - } } diff --git a/src/crypto/algorithms/base.ts b/src/crypto/algorithms/base.ts index 37dae34bd77..2dda6e91efa 100644 --- a/src/crypto/algorithms/base.ts +++ b/src/crypto/algorithms/base.ts @@ -66,7 +66,6 @@ export abstract class EncryptionAlgorithm { protected readonly crypto: Crypto; protected readonly olmDevice: OlmDevice; protected readonly baseApis: MatrixClient; - protected readonly roomId?: string; /** * @param params - parameters @@ -77,7 +76,6 @@ export abstract class EncryptionAlgorithm { this.crypto = params.crypto; this.olmDevice = params.olmDevice; this.baseApis = params.baseApis; - this.roomId = params.roomId; } /** @@ -127,14 +125,12 @@ export abstract class DecryptionAlgorithm { protected readonly crypto: Crypto; protected readonly olmDevice: OlmDevice; protected readonly baseApis: MatrixClient; - protected readonly roomId?: string; public constructor(params: DecryptionClassParams) { this.userId = params.userId; this.crypto = params.crypto; this.olmDevice = params.olmDevice; this.baseApis = params.baseApis; - this.roomId = params.roomId; } /** From 0fe53876ec555482bbeb086fd4dec8de7b2e21eb Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Fri, 2 Aug 2024 08:10:24 -0400 Subject: [PATCH 367/595] Bump matrix-widget-api (#4336) --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index c6b2a2350e8..d0082892287 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ "jwt-decode": "^4.0.0", "loglevel": "^1.7.1", "matrix-events-sdk": "0.0.1", - "matrix-widget-api": "^1.8.1", + "matrix-widget-api": "^1.8.2", "oidc-client-ts": "^3.0.1", "p-retry": "4", "sdp-transform": "^2.14.1", diff --git a/yarn.lock b/yarn.lock index 1396c0b8916..fed246ca12e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4722,10 +4722,10 @@ matrix-mock-request@^2.5.0: dependencies: expect "^28.1.0" -matrix-widget-api@^1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.8.1.tgz#90fe4814956a27d6c6cff55c2aa67da516722eb1" - integrity sha512-oISJ9rmkfxNonrrWKUB2HCwj0i+J0b7zNGqwNudOjXj9Jsv7r8UWqowE7AEWyAsPp4IwW/hEvNeLbNo2wUsXwg== +matrix-widget-api@^1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.8.2.tgz#28d344502a85593740f560b0f8120e474a054505" + integrity sha512-kdmks3CvFNPIYN669Y4rO13KrazDvX8KHC7i6jOzJs8uZ8s54FNkuRVVyiQHeVCSZG5ixUqW9UuCj9lf03qxTQ== dependencies: "@types/events" "^3.0.0" events "^3.2.0" From 09780672aa324e317376c4b6369ccf6dc822f7c7 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 6 Aug 2024 11:42:35 +0100 Subject: [PATCH 368/595] Fix release-gitflow.yml node version --- .github/workflows/release-gitflow.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release-gitflow.yml b/.github/workflows/release-gitflow.yml index b82c61aec3c..05e16a6b236 100644 --- a/.github/workflows/release-gitflow.yml +++ b/.github/workflows/release-gitflow.yml @@ -34,6 +34,7 @@ jobs: - uses: actions/setup-node@v4 with: cache: "yarn" + node-version-file: package.json - name: Install Deps run: "yarn install --frozen-lockfile" From b8e40ad2a8c26b0cb96def2f95fe16b088530e77 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 6 Aug 2024 11:46:18 +0100 Subject: [PATCH 369/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index f23e6025715..cac56c5d7b7 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -129,6 +129,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From 8c3b249567cbc60060fe34c7380f3f9cf6eb17e9 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 6 Aug 2024 12:00:30 +0100 Subject: [PATCH 370/595] Re-add olm dependency which is needed for types Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index cac56c5d7b7..79812db1227 100644 --- a/package.json +++ b/package.json @@ -82,6 +82,7 @@ "@babel/preset-env": "^7.12.11", "@babel/preset-typescript": "^7.12.7", "@casualbot/jest-sonar-reporter": "2.2.7", + "@matrix-org/olm": "3.2.15", "@peculiar/webcrypto": "^1.4.5", "@types/bs58": "^4.0.1", "@types/content-type": "^1.1.5", From 39216d44ed317d88686ba7f110806305dfcb5b7f Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 6 Aug 2024 12:03:46 +0000 Subject: [PATCH 371/595] v34.3.0-rc.0 --- package.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 79812db1227..42c16695990 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.2.0", + "version": "34.3.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -130,5 +130,6 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts" } From 5568dfdd41f6e7fbb3e5d1d04c42016ed3c678a0 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 6 Aug 2024 13:25:55 +0100 Subject: [PATCH 372/595] Move olm to dependencies as its types are needed downstream Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 42c16695990..d55e64196ea 100644 --- a/package.json +++ b/package.json @@ -54,6 +54,7 @@ "dependencies": { "@babel/runtime": "^7.12.5", "@matrix-org/matrix-sdk-crypto-wasm": "^7.0.0", + "@matrix-org/olm": "3.2.15", "another-json": "^0.2.0", "bs58": "^6.0.0", "content-type": "^1.0.4", @@ -82,7 +83,6 @@ "@babel/preset-env": "^7.12.11", "@babel/preset-typescript": "^7.12.7", "@casualbot/jest-sonar-reporter": "2.2.7", - "@matrix-org/olm": "3.2.15", "@peculiar/webcrypto": "^1.4.5", "@types/bs58": "^4.0.1", "@types/content-type": "^1.1.5", From de50129a538a115163257430f7caeab50266edf8 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 6 Aug 2024 12:26:55 +0000 Subject: [PATCH 373/595] v34.3.0-rc.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index d55e64196ea..147dc8f3c85 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.3.0-rc.0", + "version": "34.3.0-rc.1", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From 9176d3a671114be97ee7a42155a6d40a233384f1 Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Wed, 7 Aug 2024 11:44:44 -0400 Subject: [PATCH 374/595] Use non-legacy calls if any are found (#4337) Akin to how legacy call events should be sent in rooms where there is any ongoing legacy call, send non-legacy events in rooms where there are only non-legacy calls; else fall back to the config preference. --- src/matrixrtc/MatrixRTCSession.ts | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index c15b0181507..0b4fe1b1c89 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -826,9 +826,7 @@ export class MatrixRTCSession extends TypedEventEmitter): boolean { + private stateEventsContainOngoingLegacySession(callMemberEvents: Map | undefined): boolean { + if (!callMemberEvents?.size) { + return this.useLegacyMemberEvents; + } + + let containsAnyOngoingSession = false; + let containsUnknownOngoingSession = false; for (const callMemberEvent of callMemberEvents.values()) { const content = callMemberEvent.getContent(); if (Array.isArray(content["memberships"])) { @@ -926,9 +930,12 @@ export class MatrixRTCSession extends TypedEventEmitter 0) { + containsAnyOngoingSession ||= true; + containsUnknownOngoingSession ||= !("focus_active" in content); } } - return false; + return containsAnyOngoingSession && !containsUnknownOngoingSession ? false : this.useLegacyMemberEvents; } private makeMembershipStateKey(localUserId: string, localDeviceId: string): string { From affaa95fb41ba4a5ffda4b1ffe9c82c61d7866fd Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Fri, 9 Aug 2024 15:34:13 +0100 Subject: [PATCH 375/595] delayBeforeuse => delayBeforeUse for consistency (#4344) --- src/matrixrtc/MatrixRTCSession.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 0b4fe1b1c89..50f6682cd93 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -404,7 +404,7 @@ export class MatrixRTCSession extends TypedEventEmitter { this.setNewKeyTimeouts.delete(useKeyTimeout); logger.info(`Delayed-emitting key changed event for ${participantId} idx ${encryptionKeyIndex}`); From 1ae0c2f3ee0b708a2ff1ebd9dc7fc45ed8f797be Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 13 Aug 2024 12:05:45 +0000 Subject: [PATCH 376/595] v34.3.0 --- CHANGELOG.md | 17 +++++++++++++++++ package.json | 2 +- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f29c547035..a815c846905 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,20 @@ +Changes in [34.3.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.3.0) (2024-08-13) +================================================================================================== +## ✨ Features + +* Bump matrix-widget-api ([#4336](https://github.com/matrix-org/matrix-js-sdk/pull/4336)). Contributed by @AndrewFerr. +* Also check for MSC3757 for session state keys ([#4334](https://github.com/matrix-org/matrix-js-sdk/pull/4334)). Contributed by @AndrewFerr. +* Support Futures via widgets ([#4311](https://github.com/matrix-org/matrix-js-sdk/pull/4311)). Contributed by @AndrewFerr. +* Support MSC4140: Delayed events (Futures) ([#4294](https://github.com/matrix-org/matrix-js-sdk/pull/4294)). Contributed by @AndrewFerr. +* Handle late-arriving `m.room_key.withheld` messages ([#4310](https://github.com/matrix-org/matrix-js-sdk/pull/4310)). Contributed by @richvdh. +* Be specific about what is considered a MSC4143 call member event. ([#4328](https://github.com/matrix-org/matrix-js-sdk/pull/4328)). Contributed by @toger5. +* Add index.ts for matrixrtc module ([#4314](https://github.com/matrix-org/matrix-js-sdk/pull/4314)). Contributed by @toger5. + +## 🐛 Bug Fixes + +* Fix hashed ID server lookups with no Olm ([#4333](https://github.com/matrix-org/matrix-js-sdk/pull/4333)). Contributed by @dbkr. + + Changes in [34.2.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.2.0) (2024-07-30) ================================================================================================== ## 🐛 Bug Fixes diff --git a/package.json b/package.json index 147dc8f3c85..29df7946551 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.3.0-rc.1", + "version": "34.3.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From 78cbf7cd28f7db1a23436d120aae5f4ba5cca859 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 13 Aug 2024 12:06:18 +0000 Subject: [PATCH 377/595] Resetting package fields for development --- package.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 29df7946551..49dea49bddb 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "main": "./src/index.ts", + "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -130,6 +130,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From c65ef0356725f1d57d14d80c82dec70837c4acbf Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Wed, 14 Aug 2024 15:08:52 +0100 Subject: [PATCH 378/595] Resend MatrixRTC encryption keys if a membership has changed (#4343) * Resend MatrixRTC encryption keys if a membership has changed * JSDoc * Update src/matrixrtc/MatrixRTCSession.ts Co-authored-by: Andrew Ferrazzutti * Add note about using Set. symmetricDifference() when available * Always store latest fingerprints Should reduce unnecessary retransmits * Refactor --------- Co-authored-by: Andrew Ferrazzutti --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 218 +++++++++++++++++++ src/matrixrtc/MatrixRTCSession.ts | 54 ++++- 2 files changed, 263 insertions(+), 9 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 5d8b1d30685..1d9feea132d 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -598,6 +598,17 @@ describe("MatrixRTCSession", () => { }); }); + it("does not send key if join called when already joined", () => { + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + + expect(client.sendStateEvent).toHaveBeenCalledTimes(1); + expect(client.sendEvent).toHaveBeenCalledTimes(1); + + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + expect(client.sendStateEvent).toHaveBeenCalledTimes(1); + expect(client.sendEvent).toHaveBeenCalledTimes(1); + }); + it("retries key sends", async () => { jest.useFakeTimers(); let firstEventSent = false; @@ -685,6 +696,213 @@ describe("MatrixRTCSession", () => { } }); + it("Does not re-send key if memberships stays same", async () => { + jest.useFakeTimers(); + try { + const keysSentPromise1 = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); + + const member1 = membershipTemplate; + const member2 = Object.assign({}, membershipTemplate, { + device_id: "BBBBBBB", + }); + + const mockRoom = makeMockRoom([member1, member2]); + mockRoom.getLiveTimeline().getState = jest + .fn() + .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId, undefined)); + + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + + await keysSentPromise1; + + // make sure an encryption key was sent + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", + { + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + }, + ); + + sendEventMock.mockClear(); + + // these should be a no-op: + sess.onMembershipUpdate(); + expect(sendEventMock).toHaveBeenCalledTimes(0); + } finally { + jest.useRealTimers(); + } + }); + + it("Re-sends key if a member changes membership ID", async () => { + jest.useFakeTimers(); + try { + const keysSentPromise1 = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); + + const member1 = membershipTemplate; + const member2 = { + ...membershipTemplate, + device_id: "BBBBBBB", + }; + + const mockRoom = makeMockRoom([member1, member2]); + mockRoom.getLiveTimeline().getState = jest + .fn() + .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId, undefined)); + + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + + await keysSentPromise1; + + // make sure an encryption key was sent + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", + { + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + }, + ); + + sendEventMock.mockClear(); + + // this should be a no-op: + sess.onMembershipUpdate(); + expect(sendEventMock).toHaveBeenCalledTimes(0); + + // advance time to avoid key throttling + jest.advanceTimersByTime(10000); + + // update membership ID + member2.membershipID = "newID"; + + const keysSentPromise2 = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); + + // this should re-send the key + sess.onMembershipUpdate(); + + await keysSentPromise2; + + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", + { + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + }, + ); + } finally { + jest.useRealTimers(); + } + }); + + it("Re-sends key if a member changes created_ts", async () => { + jest.useFakeTimers(); + try { + const keysSentPromise1 = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); + + const member1 = { ...membershipTemplate, created_ts: 1000 }; + const member2 = { + ...membershipTemplate, + created_ts: 1000, + device_id: "BBBBBBB", + }; + + const mockRoom = makeMockRoom([member1, member2]); + mockRoom.getLiveTimeline().getState = jest + .fn() + .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId, undefined)); + + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + + await keysSentPromise1; + + // make sure an encryption key was sent + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", + { + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + }, + ); + + sendEventMock.mockClear(); + + // this should be a no-op: + sess.onMembershipUpdate(); + expect(sendEventMock).toHaveBeenCalledTimes(0); + + // advance time to avoid key throttling + jest.advanceTimersByTime(10000); + + // update created_ts + member2.created_ts = 5000; + + const keysSentPromise2 = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); + + // this should re-send the key + sess.onMembershipUpdate(); + + await keysSentPromise2; + + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", + { + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + }, + ); + } finally { + jest.useRealTimers(); + } + }); + it("Rotates key if a member leaves", async () => { jest.useFakeTimers(); try { diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 50f6682cd93..ed3d7a44f0a 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -138,6 +138,10 @@ export class MatrixRTCSession extends TypedEventEmitter>(); private lastEncryptionKeyUpdateRequest?: number; + // We use this to store the last membership fingerprints we saw, so we can proactively re-send encryption keys + // if it looks like a membership has been updated. + private lastMembershipFingerprints: Set | undefined; + /** * The callId (sessionId) of the call. * @@ -636,6 +640,14 @@ export class MatrixRTCSession extends TypedEventEmitter + m.sender === this.client.getUserId() && m.deviceId === this.client.getDeviceId(); + + /** + * Examines the latest call memberships and handles any encryption key sending or rotation that is needed. + * + * This function should be called when the room members or call memberships might have changed. + */ public onMembershipUpdate = (): void => { const oldMemberships = this.memberships; this.memberships = MatrixRTCSession.callMembershipsForRoom(this.room); @@ -651,19 +663,22 @@ export class MatrixRTCSession extends TypedEventEmitter - m.sender === this.client.getUserId() && m.deviceId === this.client.getDeviceId(); - if (this.manageMediaKeys && this.isJoined() && this.makeNewKeyTimeout === undefined) { - const oldMebershipIds = new Set( - oldMemberships.filter((m) => !isMyMembership(m)).map(getParticipantIdFromMembership), + const oldMembershipIds = new Set( + oldMemberships.filter((m) => !this.isMyMembership(m)).map(getParticipantIdFromMembership), ); - const newMebershipIds = new Set( - this.memberships.filter((m) => !isMyMembership(m)).map(getParticipantIdFromMembership), + const newMembershipIds = new Set( + this.memberships.filter((m) => !this.isMyMembership(m)).map(getParticipantIdFromMembership), ); - const anyLeft = Array.from(oldMebershipIds).some((x) => !newMebershipIds.has(x)); - const anyJoined = Array.from(newMebershipIds).some((x) => !oldMebershipIds.has(x)); + // We can use https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set/symmetricDifference + // for this once available + const anyLeft = Array.from(oldMembershipIds).some((x) => !newMembershipIds.has(x)); + const anyJoined = Array.from(newMembershipIds).some((x) => !oldMembershipIds.has(x)); + + const oldFingerprints = this.lastMembershipFingerprints; + // always store the fingerprints of these latest memberships + this.storeLastMembershipFingerprints(); if (anyLeft) { logger.debug(`Member(s) have left: queueing sender key rotation`); @@ -671,12 +686,33 @@ export class MatrixRTCSession extends TypedEventEmitter !newFingerprints.has(x)) || + Array.from(newFingerprints).some((x) => !oldFingerprints.has(x)); + if (candidateUpdates) { + logger.debug(`Member(s) have updated/reconnected: re-sending keys`); + this.requestKeyEventSend(); + } } } this.setExpiryTimer(); }; + private storeLastMembershipFingerprints(): void { + this.lastMembershipFingerprints = new Set( + this.memberships + .filter((m) => !this.isMyMembership(m)) + .map((m) => `${getParticipantIdFromMembership(m)}:${m.membershipID}:${m.createdTs()}`), + ); + } + /** * Constructs our own membership * @param prevMembership - The previous value of our call membership, if any From 87eddaf51a1ac8dbe8ea9e083f4e9a55055142b1 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Thu, 15 Aug 2024 08:58:36 +0100 Subject: [PATCH 379/595] Handle MatrixRTC encryption keys arriving out of order (#4345) * Handle MatrixRTC encryption keys arriving out of order * Apply suggestions from code review Co-authored-by: Andrew Ferrazzutti * Suggestion from code review --------- Co-authored-by: Andrew Ferrazzutti --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 129 ++++++++++++++++++- src/matrixrtc/MatrixRTCSession.ts | 66 ++++++++-- 2 files changed, 181 insertions(+), 14 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 1d9feea132d..16f55386ffd 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { EventTimeline, EventType, MatrixClient, MatrixError, MatrixEvent, Room } from "../../../src"; +import { encodeBase64, EventTimeline, EventType, MatrixClient, MatrixError, MatrixEvent, Room } from "../../../src"; import { KnownMembership } from "../../../src/@types/membership"; import { CallMembershipData, @@ -1145,6 +1145,7 @@ describe("MatrixRTCSession", () => { ], }), getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), } as unknown as MatrixEvent); const bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; @@ -1168,6 +1169,7 @@ describe("MatrixRTCSession", () => { ], }), getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), } as unknown as MatrixEvent); const bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; @@ -1179,6 +1181,130 @@ describe("MatrixRTCSession", () => { expect(bobKeys[4]).toEqual(Buffer.from("this is the key", "utf-8")); }); + it("collects keys by merging", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), + } as unknown as MatrixEvent); + + let bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; + expect(bobKeys).toHaveLength(1); + expect(bobKeys[0]).toEqual(Buffer.from("this is the key", "utf-8")); + + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 4, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), + } as unknown as MatrixEvent); + + bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; + expect(bobKeys).toHaveLength(5); + expect(bobKeys[4]).toEqual(Buffer.from("this is the key", "utf-8")); + }); + + it("ignores older keys at same index", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: encodeBase64(Buffer.from("newer key", "utf-8")), + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(2000), + } as unknown as MatrixEvent); + + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: encodeBase64(Buffer.from("older key", "utf-8")), + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(1000), // earlier timestamp than the newer key + } as unknown as MatrixEvent); + + const bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; + expect(bobKeys).toHaveLength(1); + expect(bobKeys[0]).toEqual(Buffer.from("newer key", "utf-8")); + }); + + it("key timestamps are treated as monotonic", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: encodeBase64(Buffer.from("first key", "utf-8")), + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(1000), + } as unknown as MatrixEvent); + + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: encodeBase64(Buffer.from("second key", "utf-8")), + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(1000), // same timestamp as the first key + } as unknown as MatrixEvent); + + const bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; + expect(bobKeys).toHaveLength(1); + expect(bobKeys[0]).toEqual(Buffer.from("second key", "utf-8")); + }); + it("ignores keys event for the local participant", () => { const mockRoom = makeMockRoom([membershipTemplate]); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); @@ -1195,6 +1321,7 @@ describe("MatrixRTCSession", () => { ], }), getSender: jest.fn().mockReturnValue(client.getUserId()), + getTs: jest.fn().mockReturnValue(Date.now()), } as unknown as MatrixEvent); const myKeys = sess.getKeysForParticipant(client.getUserId()!, client.getDeviceId()!)!; diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index ed3d7a44f0a..c5b73a3fd01 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -56,9 +56,9 @@ const USE_KEY_DELAY = 5000; const getParticipantId = (userId: string, deviceId: string): string => `${userId}:${deviceId}`; const getParticipantIdFromMembership = (m: CallMembership): string => getParticipantId(m.sender!, m.deviceId); -function keysEqual(a: Uint8Array, b: Uint8Array): boolean { +function keysEqual(a: Uint8Array | undefined, b: Uint8Array | undefined): boolean { if (a === b) return true; - return a && b && a.length === b.length && a.every((x, i) => x === b[i]); + return !!a && !!b && a.length === b.length && a.every((x, i) => x === b[i]); } export enum MatrixRTCSessionEvent { @@ -134,8 +134,8 @@ export class MatrixRTCSession extends TypedEventEmitter array of keys - private encryptionKeys = new Map>(); + // userId:deviceId => array of (key, timestamp) + private encryptionKeys = new Map>(); private lastEncryptionKeyUpdateRequest?: number; // We use this to store the last membership fingerprints we saw, so we can proactively re-send encryption keys @@ -378,8 +378,15 @@ export class MatrixRTCSession extends TypedEventEmitter | undefined { - return this.encryptionKeys.get(getParticipantId(userId, deviceId)); + return this.encryptionKeys.get(getParticipantId(userId, deviceId))?.map((entry) => entry.key); } /** @@ -387,7 +394,10 @@ export class MatrixRTCSession extends TypedEventEmitter]> { - return this.encryptionKeys.entries(); + // the returned array doesn't contain the timestamps + return Array.from(this.encryptionKeys.entries()) + .map(([participantId, keys]): [string, Uint8Array[]] => [participantId, keys.map((k) => k.key)]) + .values(); } private getNewEncryptionKeyIndex(): number { @@ -402,12 +412,14 @@ export class MatrixRTCSession extends TypedEventEmitter timestamp) { + logger.info( + `Ignoring new key at index ${encryptionKeyIndex} for ${participantId} as it is older than existing known key`, + ); + return; + } + + if (keysEqual(existingKeyAtIndex.key, keyBin)) { + existingKeyAtIndex.timestamp = timestamp; + return; + } + } + + participantKeys[encryptionKeyIndex] = { + key: keyBin, + timestamp, + }; - encryptionKeys[encryptionKeyIndex] = keyBin; - this.encryptionKeys.set(participantId, encryptionKeys); if (delayBeforeUse) { const useKeyTimeout = setTimeout(() => { this.setNewKeyTimeouts.delete(useKeyTimeout); @@ -455,7 +488,7 @@ export class MatrixRTCSession extends TypedEventEmitter { const userId = event.getSender(); const content = event.getContent(); @@ -635,7 +675,7 @@ export class MatrixRTCSession extends TypedEventEmitter Date: Thu, 15 Aug 2024 10:11:06 +0100 Subject: [PATCH 380/595] Don't attempt to adjust for clock skews when calculating group call membership expiry (#4340) * Use origin server timestamp for calculating group call membership expiry * Fix tests * Docs * Refactor comments to reflect that the logic hasn't changed * Make comment maintainable * Fix up merge * Fix test --- spec/unit/matrixrtc/CallMembership.spec.ts | 31 ++++--------- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 46 +++++++++++++------- spec/unit/matrixrtc/mocks.ts | 13 +++--- src/matrixrtc/CallMembership.ts | 30 ++++++++++++- 4 files changed, 74 insertions(+), 46 deletions(-) diff --git a/spec/unit/matrixrtc/CallMembership.spec.ts b/spec/unit/matrixrtc/CallMembership.spec.ts index bf6ded10abf..c3281b96ac3 100644 --- a/spec/unit/matrixrtc/CallMembership.spec.ts +++ b/spec/unit/matrixrtc/CallMembership.spec.ts @@ -98,20 +98,6 @@ describe("CallMembership", () => { expect(membership.getAbsoluteExpiry()).toEqual(5000 + 1000); }); - it("considers memberships unexpired if local age low enough", () => { - const fakeEvent = makeMockEvent(1000); - fakeEvent.getLocalAge = jest.fn().mockReturnValue(3000); - const membership = new CallMembership(fakeEvent, membershipTemplate); - expect(membership.isExpired()).toEqual(false); - }); - - it("considers memberships expired when local age large", () => { - const fakeEvent = makeMockEvent(1000); - fakeEvent.localTimestamp = Date.now() - 6000; - const membership = new CallMembership(fakeEvent, membershipTemplate); - expect(membership.isExpired()).toEqual(true); - }); - it("returns preferred foci", () => { const fakeEvent = makeMockEvent(); const mockFocus = { type: "this_is_a_mock_focus" }; @@ -198,13 +184,6 @@ describe("CallMembership", () => { beforeEach(() => { // server origin timestamp for this event is 1000 fakeEvent = makeMockEvent(1000); - // our clock would have been at 2000 at the creation time (our clock at event receive time - age) - // (ie. the local clock is 1 second ahead of the servers' clocks) - fakeEvent.localTimestamp = 2000; - - // for simplicity's sake, we say that the event's age is zero - fakeEvent.getLocalAge = jest.fn().mockReturnValue(0); - membership = new CallMembership(fakeEvent!, membershipTemplate); jest.useFakeTimers(); @@ -215,6 +194,13 @@ describe("CallMembership", () => { }); it("converts expiry time into local clock", () => { + // our clock would have been at 2000 at the creation time (our clock at event receive time - age) + // (ie. the local clock is 1 second ahead of the servers' clocks) + fakeEvent.localTimestamp = 2000; + + // for simplicity's sake, we say that the event's age is zero + fakeEvent.getLocalAge = jest.fn().mockReturnValue(0); + // for sanity's sake, make sure the server-relative expiry time is what we expect expect(membership.getAbsoluteExpiry()).toEqual(6000); // therefore the expiry time converted to our clock should be 1 second later @@ -223,7 +209,8 @@ describe("CallMembership", () => { it("calculates time until expiry", () => { jest.setSystemTime(2000); - expect(membership.getMsUntilExpiry()).toEqual(5000); + // should be using absolute expiry time + expect(membership.getMsUntilExpiry()).toEqual(4000); }); }); }); diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 16f55386ffd..4cc225f213f 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -73,14 +73,17 @@ describe("MatrixRTCSession", () => { }); it("ignores expired memberships events", () => { + jest.useFakeTimers(); const expiredMembership = Object.assign({}, membershipTemplate); expiredMembership.expires = 1000; expiredMembership.device_id = "EXPIRED"; - const mockRoom = makeMockRoom([membershipTemplate, expiredMembership], 10000); + const mockRoom = makeMockRoom([membershipTemplate, expiredMembership]); + jest.advanceTimersByTime(2000); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); expect(sess?.memberships.length).toEqual(1); expect(sess?.memberships[0].deviceId).toEqual("AAAAAAA"); + jest.useRealTimers(); }); it("ignores memberships events of members not in the room", () => { @@ -91,12 +94,15 @@ describe("MatrixRTCSession", () => { }); it("honours created_ts", () => { + jest.useFakeTimers(); + jest.setSystemTime(500); const expiredMembership = Object.assign({}, membershipTemplate); expiredMembership.created_ts = 500; expiredMembership.expires = 1000; const mockRoom = makeMockRoom([expiredMembership]); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); expect(sess?.memberships[0].getAbsoluteExpiry()).toEqual(1500); + jest.useRealTimers(); }); it("returns empty session if no membership events are present", () => { @@ -304,6 +310,8 @@ describe("MatrixRTCSession", () => { describe("getOldestMembership", () => { it("returns the oldest membership event", () => { + jest.useFakeTimers(); + jest.setSystemTime(4000); const mockRoom = makeMockRoom([ Object.assign({}, membershipTemplate, { device_id: "foo", created_ts: 3000 }), Object.assign({}, membershipTemplate, { device_id: "old", created_ts: 1000 }), @@ -312,12 +320,15 @@ describe("MatrixRTCSession", () => { sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); expect(sess.getOldestMembership()!.deviceId).toEqual("old"); + jest.useRealTimers(); }); }); describe("getsActiveFocus", () => { const activeFociConfig = { type: "livekit", livekit_service_url: "https://active.url" }; it("gets the correct active focus with oldest_membership", () => { + jest.useFakeTimers(); + jest.setSystemTime(3000); const mockRoom = makeMockRoom([ Object.assign({}, membershipTemplate, { device_id: "foo", @@ -335,6 +346,7 @@ describe("MatrixRTCSession", () => { focus_selection: "oldest_membership", }); expect(sess.getActiveFocus()).toBe(activeFociConfig); + jest.useRealTimers(); }); it("does not provide focus if the selction method is unknown", () => { const mockRoom = makeMockRoom([ @@ -356,6 +368,8 @@ describe("MatrixRTCSession", () => { expect(sess.getActiveFocus()).toBe(undefined); }); it("gets the correct active focus legacy", () => { + jest.useFakeTimers(); + jest.setSystemTime(3000); const mockRoom = makeMockRoom([ Object.assign({}, membershipTemplate, { device_id: "foo", @@ -370,6 +384,7 @@ describe("MatrixRTCSession", () => { sess.joinRoomSession([{ type: "livekit", livekit_service_url: "htts://test.org" }]); expect(sess.getActiveFocus()).toBe(activeFociConfig); + jest.useRealTimers(); }); }); @@ -513,9 +528,8 @@ describe("MatrixRTCSession", () => { const eventContent = await eventSentPromise; - // definitely should have renewed by 1 second before the expiry! - const timeElapsed = 60 * 60 * 1000 - 1000; - const event = mockRTCEvent(eventContent.memberships, mockRoom.roomId, timeElapsed); + jest.setSystemTime(1000); + const event = mockRTCEvent(eventContent.memberships, mockRoom.roomId); const getState = mockRoom.getLiveTimeline().getState(EventTimeline.FORWARDS)!; getState.getStateEvents = jest.fn().mockReturnValue(event); getState.events = new Map([ @@ -538,6 +552,8 @@ describe("MatrixRTCSession", () => { sendStateEventMock.mockReset().mockImplementation(resolveFn); + // definitely should have renewed by 1 second before the expiry! + const timeElapsed = 60 * 60 * 1000 - 1000; jest.setSystemTime(Date.now() + timeElapsed); jest.advanceTimersByTime(timeElapsed); await eventReSentPromise; @@ -685,7 +701,7 @@ describe("MatrixRTCSession", () => { mockRoom.getLiveTimeline().getState = jest .fn() - .mockReturnValue(makeMockRoomState([membershipTemplate, member2], mockRoom.roomId, undefined)); + .mockReturnValue(makeMockRoomState([membershipTemplate, member2], mockRoom.roomId)); sess.onMembershipUpdate(); await keysSentPromise2; @@ -711,7 +727,7 @@ describe("MatrixRTCSession", () => { const mockRoom = makeMockRoom([member1, member2]); mockRoom.getLiveTimeline().getState = jest .fn() - .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId, undefined)); + .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId)); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); @@ -760,7 +776,7 @@ describe("MatrixRTCSession", () => { const mockRoom = makeMockRoom([member1, member2]); mockRoom.getLiveTimeline().getState = jest .fn() - .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId, undefined)); + .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId)); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); @@ -825,6 +841,7 @@ describe("MatrixRTCSession", () => { it("Re-sends key if a member changes created_ts", async () => { jest.useFakeTimers(); + jest.setSystemTime(1000); try { const keysSentPromise1 = new Promise((resolve) => { sendEventMock.mockImplementation(resolve); @@ -840,7 +857,7 @@ describe("MatrixRTCSession", () => { const mockRoom = makeMockRoom([member1, member2]); mockRoom.getLiveTimeline().getState = jest .fn() - .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId, undefined)); + .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId)); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); @@ -938,7 +955,7 @@ describe("MatrixRTCSession", () => { mockRoom.getLiveTimeline().getState = jest .fn() - .mockReturnValue(makeMockRoomState([membershipTemplate], mockRoom.roomId, undefined)); + .mockReturnValue(makeMockRoomState([membershipTemplate], mockRoom.roomId)); sess.onMembershipUpdate(); jest.advanceTimersByTime(10000); @@ -977,7 +994,7 @@ describe("MatrixRTCSession", () => { mockRoom.getLiveTimeline().getState = jest .fn() - .mockReturnValue(makeMockRoomState([membershipTemplate, member2], mockRoom.roomId, undefined)); + .mockReturnValue(makeMockRoomState([membershipTemplate, member2], mockRoom.roomId)); sess.onMembershipUpdate(); await new Promise((resolve) => { @@ -1009,9 +1026,7 @@ describe("MatrixRTCSession", () => { const onMembershipsChanged = jest.fn(); sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); - mockRoom.getLiveTimeline().getState = jest - .fn() - .mockReturnValue(makeMockRoomState([], mockRoom.roomId, undefined)); + mockRoom.getLiveTimeline().getState = jest.fn().mockReturnValue(makeMockRoomState([], mockRoom.roomId)); sess.onMembershipUpdate(); expect(onMembershipsChanged).toHaveBeenCalled(); @@ -1021,7 +1036,7 @@ describe("MatrixRTCSession", () => { jest.useFakeTimers(); try { const membership = Object.assign({}, membershipTemplate); - const mockRoom = makeMockRoom([membership], 0); + const mockRoom = makeMockRoom([membership]); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); const membershipObject = sess.memberships[0]; @@ -1049,7 +1064,7 @@ describe("MatrixRTCSession", () => { expires: 1000, }), ]; - const mockRoomNoExpired = makeMockRoom(mockMemberships, 0); + const mockRoomNoExpired = makeMockRoom(mockMemberships); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoomNoExpired); @@ -1088,6 +1103,7 @@ describe("MatrixRTCSession", () => { it("fills in created_ts for other memberships on update", () => { client.sendStateEvent = jest.fn(); jest.useFakeTimers(); + jest.setSystemTime(1000); const mockRoom = makeMockRoom([ Object.assign({}, membershipTemplate, { device_id: "OTHERDEVICE", diff --git a/spec/unit/matrixrtc/mocks.ts b/spec/unit/matrixrtc/mocks.ts index c11544a0e9e..ac5831b0ffa 100644 --- a/spec/unit/matrixrtc/mocks.ts +++ b/spec/unit/matrixrtc/mocks.ts @@ -20,10 +20,10 @@ import { randomString } from "../../../src/randomstring"; type MembershipData = CallMembershipData[] | SessionMembershipData; -export function makeMockRoom(membershipData: MembershipData, localAge: number | null = null): Room { +export function makeMockRoom(membershipData: MembershipData): Room { const roomId = randomString(8); // Caching roomState here so it does not get recreated when calling `getLiveTimeline.getState()` - const roomState = makeMockRoomState(membershipData, roomId, localAge); + const roomState = makeMockRoomState(membershipData, roomId); return { roomId: roomId, hasMembershipState: jest.fn().mockReturnValue(true), @@ -34,8 +34,8 @@ export function makeMockRoom(membershipData: MembershipData, localAge: number | } as unknown as Room; } -export function makeMockRoomState(membershipData: MembershipData, roomId: string, localAge: number | null = null) { - const event = mockRTCEvent(membershipData, roomId, localAge); +export function makeMockRoomState(membershipData: MembershipData, roomId: string) { + const event = mockRTCEvent(membershipData, roomId); return { on: jest.fn(), off: jest.fn(), @@ -57,7 +57,7 @@ export function makeMockRoomState(membershipData: MembershipData, roomId: string }; } -export function mockRTCEvent(membershipData: MembershipData, roomId: string, localAge: number | null): MatrixEvent { +export function mockRTCEvent(membershipData: MembershipData, roomId: string): MatrixEvent { return { getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), getContent: jest.fn().mockReturnValue( @@ -68,8 +68,7 @@ export function mockRTCEvent(membershipData: MembershipData, roomId: string, loc }, ), getSender: jest.fn().mockReturnValue("@mock:user.example"), - getTs: jest.fn().mockReturnValue(1000), - localTimestamp: Date.now() - (localAge ?? 10), + getTs: jest.fn().mockReturnValue(Date.now()), getRoomId: jest.fn().mockReturnValue(roomId), sender: { userId: "@mock:user.example", diff --git a/src/matrixrtc/CallMembership.ts b/src/matrixrtc/CallMembership.ts index 52893841d89..d2c9b06d346 100644 --- a/src/matrixrtc/CallMembership.ts +++ b/src/matrixrtc/CallMembership.ts @@ -156,8 +156,14 @@ export class CallMembership { return this.membershipData.created_ts ?? this.parentEvent.getTs(); } + /** + * Gets the absolute expiry time of the membership if applicable to this membership type. + * @returns The absolute expiry time of the membership as a unix timestamp in milliseconds or undefined if not applicable + */ public getAbsoluteExpiry(): number | undefined { + // if the membership is not a legacy membership, we assume it is MSC4143 if (!isLegacyCallMembershipData(this.membershipData)) return undefined; + if ("expires" in this.membershipData) { // we know createdTs exists since we already do the isLegacyCallMembershipData check return this.createdTs() + this.membershipData.expires; @@ -167,9 +173,15 @@ export class CallMembership { } } - // gets the expiry time of the event, converted into the device's local time + /** + * Gets the expiry time of the event, converted into the device's local time. + * @deprecated This function has been observed returning bad data and is no longer used by MatrixRTC. + * @returns The local expiry time of the membership as a unix timestamp in milliseconds or undefined if not applicable + */ public getLocalExpiry(): number | undefined { + // if the membership is not a legacy membership, we assume it is MSC4143 if (!isLegacyCallMembershipData(this.membershipData)) return undefined; + if ("expires" in this.membershipData) { // we know createdTs exists since we already do the isLegacyCallMembershipData check const relativeCreationTime = this.parentEvent.getTs() - this.createdTs(); @@ -184,10 +196,24 @@ export class CallMembership { } } + /** + * @returns The number of milliseconds until the membership expires or undefined if applicable + */ public getMsUntilExpiry(): number | undefined { - if (isLegacyCallMembershipData(this.membershipData)) return this.getLocalExpiry()! - Date.now(); + if (isLegacyCallMembershipData(this.membershipData)) { + // Assume that local clock is sufficiently in sync with other clocks in the distributed system. + // We used to try and adjust for the local clock being skewed, but there are cases where this is not accurate. + // The current implementation allows for the local clock to be -infinity to +MatrixRTCSession.MEMBERSHIP_EXPIRY_TIME/2 + return this.getAbsoluteExpiry()! - Date.now(); + } + + // Assumed to be MSC4143 + return undefined; } + /** + * @returns true if the membership has expired, otherwise false + */ public isExpired(): boolean { if (isLegacyCallMembershipData(this.membershipData)) return this.getMsUntilExpiry()! <= 0; From d6080398dbf5efa6a7cda459a8013da4386e0f6e Mon Sep 17 00:00:00 2001 From: BLCK <123077751+BLCK-B@users.noreply.github.com> Date: Thu, 15 Aug 2024 16:50:05 +0200 Subject: [PATCH 381/595] Add "type" = "module" to ensure it is present (#4350) --- scripts/release/pre-release.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/scripts/release/pre-release.sh b/scripts/release/pre-release.sh index 6b47ef180ff..19319fb6105 100755 --- a/scripts/release/pre-release.sh +++ b/scripts/release/pre-release.sh @@ -12,3 +12,6 @@ do jq ".$i = .matrix_lib_$i" package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json fi done + +# Ensure that "type": "module" is present +jq '.type = "module"' package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json From c408c0d1d517eeac98c7ee11d99a6a8a874ecda5 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Mon, 19 Aug 2024 14:35:45 +0100 Subject: [PATCH 382/595] Retry event decryption failures on first failure (#4346) * Retry event decryption failures on first failure * Suggestion from code review Co-authored-by: Andrew Ferrazzutti --------- Co-authored-by: Andrew Ferrazzutti --- .../matrixrtc/MatrixRTCSessionManager.spec.ts | 90 +++++++++++++++++++ spec/unit/matrixrtc/mocks.ts | 1 + src/matrixrtc/MatrixRTCSessionManager.ts | 17 +++- 3 files changed, 107 insertions(+), 1 deletion(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts b/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts index c2e6fc52f45..bbc9c9f7e6f 100644 --- a/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSessionManager.spec.ts @@ -102,6 +102,7 @@ describe("MatrixRTCSessionManager", () => { getContent: jest.fn().mockReturnValue({}), getSender: jest.fn().mockReturnValue("@mock:user.example"), getRoomId: jest.fn().mockReturnValue("!room:id"), + isDecryptionFailure: jest.fn().mockReturnValue(false), sender: { userId: "@mock:user.example", }, @@ -110,4 +111,93 @@ describe("MatrixRTCSessionManager", () => { await new Promise(process.nextTick); expect(onCallEncryptionMock).toHaveBeenCalled(); }); + + describe("event decryption", () => { + it("Retries decryption and processes success", async () => { + try { + jest.useFakeTimers(); + const room1 = makeMockRoom([membershipTemplate]); + jest.spyOn(client, "getRooms").mockReturnValue([room1]); + jest.spyOn(client, "getRoom").mockReturnValue(room1); + + client.emit(ClientEvent.Room, room1); + const onCallEncryptionMock = jest.fn(); + client.matrixRTC.getRoomSession(room1).onCallEncryption = onCallEncryptionMock; + let isDecryptionFailure = true; + client.decryptEventIfNeeded = jest + .fn() + .mockReturnValueOnce(Promise.resolve()) + .mockImplementation(() => { + isDecryptionFailure = false; + return Promise.resolve(); + }); + const timelineEvent = { + getType: jest.fn().mockReturnValue(EventType.CallEncryptionKeysPrefix), + getContent: jest.fn().mockReturnValue({}), + getSender: jest.fn().mockReturnValue("@mock:user.example"), + getRoomId: jest.fn().mockReturnValue("!room:id"), + isDecryptionFailure: jest.fn().mockImplementation(() => isDecryptionFailure), + getId: jest.fn().mockReturnValue("event_id"), + sender: { + userId: "@mock:user.example", + }, + } as unknown as MatrixEvent; + client.emit(RoomEvent.Timeline, timelineEvent, undefined, undefined, false, {} as IRoomTimelineData); + + expect(client.decryptEventIfNeeded).toHaveBeenCalledTimes(1); + expect(onCallEncryptionMock).toHaveBeenCalledTimes(0); + + // should retry after one second: + await jest.advanceTimersByTimeAsync(1500); + + expect(client.decryptEventIfNeeded).toHaveBeenCalledTimes(2); + expect(onCallEncryptionMock).toHaveBeenCalledTimes(1); + } finally { + jest.useRealTimers(); + } + }); + + it("Retries decryption and processes failure", async () => { + try { + jest.useFakeTimers(); + const room1 = makeMockRoom([membershipTemplate]); + jest.spyOn(client, "getRooms").mockReturnValue([room1]); + jest.spyOn(client, "getRoom").mockReturnValue(room1); + + client.emit(ClientEvent.Room, room1); + const onCallEncryptionMock = jest.fn(); + client.matrixRTC.getRoomSession(room1).onCallEncryption = onCallEncryptionMock; + client.decryptEventIfNeeded = jest.fn().mockReturnValue(Promise.resolve()); + const timelineEvent = { + getType: jest.fn().mockReturnValue(EventType.CallEncryptionKeysPrefix), + getContent: jest.fn().mockReturnValue({}), + getSender: jest.fn().mockReturnValue("@mock:user.example"), + getRoomId: jest.fn().mockReturnValue("!room:id"), + isDecryptionFailure: jest.fn().mockReturnValue(true), // always fail + getId: jest.fn().mockReturnValue("event_id"), + sender: { + userId: "@mock:user.example", + }, + } as unknown as MatrixEvent; + client.emit(RoomEvent.Timeline, timelineEvent, undefined, undefined, false, {} as IRoomTimelineData); + + expect(client.decryptEventIfNeeded).toHaveBeenCalledTimes(1); + expect(onCallEncryptionMock).toHaveBeenCalledTimes(0); + + // should retry after one second: + await jest.advanceTimersByTimeAsync(1500); + + expect(client.decryptEventIfNeeded).toHaveBeenCalledTimes(2); + expect(onCallEncryptionMock).toHaveBeenCalledTimes(0); + + // doesn't retry again: + await jest.advanceTimersByTimeAsync(1500); + + expect(client.decryptEventIfNeeded).toHaveBeenCalledTimes(2); + expect(onCallEncryptionMock).toHaveBeenCalledTimes(0); + } finally { + jest.useRealTimers(); + } + }); + }); }); diff --git a/spec/unit/matrixrtc/mocks.ts b/spec/unit/matrixrtc/mocks.ts index ac5831b0ffa..57863dc2c38 100644 --- a/spec/unit/matrixrtc/mocks.ts +++ b/spec/unit/matrixrtc/mocks.ts @@ -73,5 +73,6 @@ export function mockRTCEvent(membershipData: MembershipData, roomId: string): Ma sender: { userId: "@mock:user.example", }, + isDecryptionFailure: jest.fn().mockReturnValue(false), } as unknown as MatrixEvent; } diff --git a/src/matrixrtc/MatrixRTCSessionManager.ts b/src/matrixrtc/MatrixRTCSessionManager.ts index 2fd5d2583f7..22480cffc9f 100644 --- a/src/matrixrtc/MatrixRTCSessionManager.ts +++ b/src/matrixrtc/MatrixRTCSessionManager.ts @@ -98,8 +98,23 @@ export class MatrixRTCSessionManager extends TypedEventEmitter { + private async consumeCallEncryptionEvent(event: MatrixEvent, isRetry = false): Promise { await this.client.decryptEventIfNeeded(event); + if (event.isDecryptionFailure()) { + if (!isRetry) { + logger.warn( + `Decryption failed for event ${event.getId()}: ${event.decryptionFailureReason} will retry once only`, + ); + // retry after 1 second. After this we give up. + setTimeout(() => this.consumeCallEncryptionEvent(event, true), 1000); + } else { + logger.warn(`Decryption failed for event ${event.getId()}: ${event.decryptionFailureReason}`); + } + return; + } else if (isRetry) { + logger.info(`Decryption succeeded for event ${event.getId()} after retry`); + } + if (event.getType() !== EventType.CallEncryptionKeysPrefix) return Promise.resolve(); const room = this.client.getRoom(event.getRoomId()); From 8214fd7156b2a8525a977e22bc400dcdb7aec7b1 Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 20 Aug 2024 12:10:15 +0100 Subject: [PATCH 383/595] Revert "Add "type" = "module" to ensure it is present (#4350)" (#4352) This reverts commit d6080398dbf5efa6a7cda459a8013da4386e0f6e. --- scripts/release/pre-release.sh | 3 --- 1 file changed, 3 deletions(-) diff --git a/scripts/release/pre-release.sh b/scripts/release/pre-release.sh index 19319fb6105..6b47ef180ff 100755 --- a/scripts/release/pre-release.sh +++ b/scripts/release/pre-release.sh @@ -12,6 +12,3 @@ do jq ".$i = .matrix_lib_$i" package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json fi done - -# Ensure that "type": "module" is present -jq '.type = "module"' package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json From 340bbe1a8fae05a514ac133e6e9b549326854957 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 20 Aug 2024 11:29:48 +0000 Subject: [PATCH 384/595] v34.3.1 --- CHANGELOG.md | 5 +++++ package.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a815c846905..321dba96d17 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +Changes in [34.3.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.3.1) (2024-08-20) +================================================================================================== +# Security +- Fixes for [CVE-2024-42369](https://nvd.nist.gov/vuln/detail/CVE-2024-42369) / [GHSA-vhr5-g3pm-49fm](https://github.com/matrix-org/matrix-js-sdk/security/advisories/GHSA-vhr5-g3pm-49fm). + Changes in [34.3.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.3.0) (2024-08-13) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index 29df7946551..4c15a7da265 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.3.0", + "version": "34.3.1", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From 2544c1403254b087c41c8bfc570331896f7cc734 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 20 Aug 2024 14:16:44 +0100 Subject: [PATCH 385/595] Unrevert prerelease fix, and fix release error (#4353) * Reapply "Add "type" = "module" to ensure it is present (#4350)" (#4352) This reverts commit 8214fd7156b2a8525a977e22bc400dcdb7aec7b1. * Mark prettier config file as CommonJS I *think* this will fix a problem with the release process in which we saw an error: ``` Error: Invalid configuration for file "/home/runner/work/matrix-js-sdk/matrix-js-sdk/package.json": Error: module is not defined in ES module scope Error: This file is being treated as an ES module because it has a '.js' file extension and '/home/runner/work/matrix-js-sdk/matrix-js-sdk/package.json' contains "type": "module". To treat it as a CommonJS script, rename it to use the '.cjs' file extension. ``` --- .prettierrc.js => .prettierrc.cjs | 0 scripts/release/pre-release.sh | 3 +++ 2 files changed, 3 insertions(+) rename .prettierrc.js => .prettierrc.cjs (100%) diff --git a/.prettierrc.js b/.prettierrc.cjs similarity index 100% rename from .prettierrc.js rename to .prettierrc.cjs diff --git a/scripts/release/pre-release.sh b/scripts/release/pre-release.sh index 6b47ef180ff..19319fb6105 100755 --- a/scripts/release/pre-release.sh +++ b/scripts/release/pre-release.sh @@ -12,3 +12,6 @@ do jq ".$i = .matrix_lib_$i" package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json fi done + +# Ensure that "type": "module" is present +jq '.type = "module"' package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json From 43e58871ded39a959b0618bc750b7426e5c5fbff Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 20 Aug 2024 13:40:49 +0000 Subject: [PATCH 386/595] v34.4.0-rc.0 --- package.json | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 075d821ec9a..34b739a7cfb 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.3.1", + "version": "34.4.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" @@ -31,8 +31,8 @@ "keywords": [ "matrix-org" ], - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -130,5 +130,7 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - } + }, + "typings": "./lib/index.d.ts", + "type": "module" } From b8e8b143751d61b710ff6df33ec69f09cccf3adf Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 20 Aug 2024 17:23:03 +0100 Subject: [PATCH 387/595] Move `type:module` declaration into package.json. (#4355) * Rename `switch_package_to_release.js` to `.cjs` Slightly surprisingly, the symlink is enough to make `node switch_package_to_release.js` work. * Rename .eslintrc.js to .cjs Again, declare this as commonjs * Move `type:module` declaration into package.json. matrix-js-sdk is built into ECMAScript modules, and we should declare it as such. See https://nodejs.org/api/packages.html#type. Failure to do so causes problems for javascript projects attempting to build against matrix-js-sdk: see https://github.com/matrix-org/matrix-js-sdk/issues/4347. Previously, we did this as part of the package.json switcheroo, but that is unnecessarily fragile. matrix-react-sdk, element-web, etc are unaffected by this, because they use the typescript files directly, by importing `matrix-js-sdk/src/...`. --- .eslintrc.js => .eslintrc.cjs | 0 package.json | 1 + scripts/release/pre-release.sh | 3 --- scripts/switch_package_to_release.cjs | 18 ++++++++++++++++++ scripts/switch_package_to_release.js | 23 +---------------------- 5 files changed, 20 insertions(+), 25 deletions(-) rename .eslintrc.js => .eslintrc.cjs (100%) create mode 100755 scripts/switch_package_to_release.cjs mode change 100755 => 120000 scripts/switch_package_to_release.js diff --git a/.eslintrc.js b/.eslintrc.cjs similarity index 100% rename from .eslintrc.js rename to .eslintrc.cjs diff --git a/package.json b/package.json index 075d821ec9a..29624b30b0a 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "keywords": [ "matrix-org" ], + "type": "module", "main": "./src/index.ts", "browser": "./src/browser-index.ts", "matrix_src_main": "./src/index.ts", diff --git a/scripts/release/pre-release.sh b/scripts/release/pre-release.sh index 19319fb6105..6b47ef180ff 100755 --- a/scripts/release/pre-release.sh +++ b/scripts/release/pre-release.sh @@ -12,6 +12,3 @@ do jq ".$i = .matrix_lib_$i" package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json fi done - -# Ensure that "type": "module" is present -jq '.type = "module"' package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json diff --git a/scripts/switch_package_to_release.cjs b/scripts/switch_package_to_release.cjs new file mode 100755 index 00000000000..6d857a4070a --- /dev/null +++ b/scripts/switch_package_to_release.cjs @@ -0,0 +1,18 @@ +#!/usr/bin/env node + +const fsProm = require("fs/promises"); + +const PKGJSON = "package.json"; + +async function main() { + const pkgJson = JSON.parse(await fsProm.readFile(PKGJSON, "utf8")); + for (const field of ["main", "typings"]) { + if (pkgJson["matrix_lib_" + field] !== undefined) { + pkgJson[field] = pkgJson["matrix_lib_" + field]; + } + } + + await fsProm.writeFile(PKGJSON, JSON.stringify(pkgJson, null, 2)); +} + +main(); diff --git a/scripts/switch_package_to_release.js b/scripts/switch_package_to_release.js deleted file mode 100755 index 353840d4d92..00000000000 --- a/scripts/switch_package_to_release.js +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env node - -const fsProm = require("fs/promises"); - -const PKGJSON = "package.json"; - -async function main() { - const pkgJson = JSON.parse(await fsProm.readFile(PKGJSON, "utf8")); - for (const field of ["main", "typings"]) { - if (pkgJson["matrix_lib_" + field] !== undefined) { - pkgJson[field] = pkgJson["matrix_lib_" + field]; - } - } - - // matrix-js-sdk is built into ECMAScript modules. Make sure we declare it as such. - // See https://nodejs.org/api/packages.html#type. - pkgJson["type"] = "module"; - - await fsProm.writeFile(PKGJSON, JSON.stringify(pkgJson, null, 2)); -} - -main(); diff --git a/scripts/switch_package_to_release.js b/scripts/switch_package_to_release.js new file mode 120000 index 00000000000..27f1619c9a2 --- /dev/null +++ b/scripts/switch_package_to_release.js @@ -0,0 +1 @@ +switch_package_to_release.cjs \ No newline at end of file From d413f5042e998d0c2444331a8f6d1bc0e4f22225 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 20 Aug 2024 21:48:27 +0100 Subject: [PATCH 388/595] Rename slowReporter to reflect that it is CommonJS (#4356) Fix tests failing as a result of https://github.com/matrix-org/matrix-js-sdk/pull/4355. This wasn't detected in CI because the slowReporter is only enabled when building against develop. --- jest.config.ts | 2 +- spec/{slowReporter.js => slowReporter.cjs} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename spec/{slowReporter.js => slowReporter.cjs} (100%) diff --git a/jest.config.ts b/jest.config.ts index d541b67a06b..1e6833a586d 100644 --- a/jest.config.ts +++ b/jest.config.ts @@ -39,7 +39,7 @@ if (env["GITHUB_ACTIONS"] !== undefined) { // if we're running against the develop branch, also enable the slow test reporter if (env["GITHUB_REF"] == "refs/heads/develop") { - reporters.push("/spec/slowReporter.js"); + reporters.push("/spec/slowReporter.cjs"); } config.reporters = reporters; } diff --git a/spec/slowReporter.js b/spec/slowReporter.cjs similarity index 100% rename from spec/slowReporter.js rename to spec/slowReporter.cjs From 968bc51a35fa3dd6d2105da039b45b3704e6d1ee Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 20 Aug 2024 21:48:27 +0100 Subject: [PATCH 389/595] Rename slowReporter to reflect that it is CommonJS (#4356) Fix tests failing as a result of https://github.com/matrix-org/matrix-js-sdk/pull/4355. This wasn't detected in CI because the slowReporter is only enabled when building against develop. (cherry picked from commit d413f5042e998d0c2444331a8f6d1bc0e4f22225) --- jest.config.ts | 2 +- spec/{slowReporter.js => slowReporter.cjs} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename spec/{slowReporter.js => slowReporter.cjs} (100%) diff --git a/jest.config.ts b/jest.config.ts index d541b67a06b..1e6833a586d 100644 --- a/jest.config.ts +++ b/jest.config.ts @@ -39,7 +39,7 @@ if (env["GITHUB_ACTIONS"] !== undefined) { // if we're running against the develop branch, also enable the slow test reporter if (env["GITHUB_REF"] == "refs/heads/develop") { - reporters.push("/spec/slowReporter.js"); + reporters.push("/spec/slowReporter.cjs"); } config.reporters = reporters; } diff --git a/spec/slowReporter.js b/spec/slowReporter.cjs similarity index 100% rename from spec/slowReporter.js rename to spec/slowReporter.cjs From 7ef4062f592767767d00f75fee1300e7dc5fc86b Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 20 Aug 2024 17:23:03 +0100 Subject: [PATCH 390/595] Move `type:module` declaration into package.json. (#4355) * Rename `switch_package_to_release.js` to `.cjs` Slightly surprisingly, the symlink is enough to make `node switch_package_to_release.js` work. * Rename .eslintrc.js to .cjs Again, declare this as commonjs * Move `type:module` declaration into package.json. matrix-js-sdk is built into ECMAScript modules, and we should declare it as such. See https://nodejs.org/api/packages.html#type. Failure to do so causes problems for javascript projects attempting to build against matrix-js-sdk: see https://github.com/matrix-org/matrix-js-sdk/issues/4347. Previously, we did this as part of the package.json switcheroo, but that is unnecessarily fragile. matrix-react-sdk, element-web, etc are unaffected by this, because they use the typescript files directly, by importing `matrix-js-sdk/src/...`. --- .eslintrc.js => .eslintrc.cjs | 0 package.json | 5 +++-- scripts/release/pre-release.sh | 3 --- scripts/switch_package_to_release.cjs | 18 ++++++++++++++++++ scripts/switch_package_to_release.js | 23 +---------------------- 5 files changed, 22 insertions(+), 27 deletions(-) rename .eslintrc.js => .eslintrc.cjs (100%) create mode 100755 scripts/switch_package_to_release.cjs mode change 100755 => 120000 scripts/switch_package_to_release.js diff --git a/.eslintrc.js b/.eslintrc.cjs similarity index 100% rename from .eslintrc.js rename to .eslintrc.cjs diff --git a/package.json b/package.json index 34b739a7cfb..bcb852bc11e 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,9 @@ "keywords": [ "matrix-org" ], - "main": "./lib/index.js", - "browser": "./lib/browser-index.js", + "type": "module", + "main": "./src/index.js", + "browser": "./src/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", diff --git a/scripts/release/pre-release.sh b/scripts/release/pre-release.sh index 19319fb6105..6b47ef180ff 100755 --- a/scripts/release/pre-release.sh +++ b/scripts/release/pre-release.sh @@ -12,6 +12,3 @@ do jq ".$i = .matrix_lib_$i" package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json fi done - -# Ensure that "type": "module" is present -jq '.type = "module"' package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json diff --git a/scripts/switch_package_to_release.cjs b/scripts/switch_package_to_release.cjs new file mode 100755 index 00000000000..6d857a4070a --- /dev/null +++ b/scripts/switch_package_to_release.cjs @@ -0,0 +1,18 @@ +#!/usr/bin/env node + +const fsProm = require("fs/promises"); + +const PKGJSON = "package.json"; + +async function main() { + const pkgJson = JSON.parse(await fsProm.readFile(PKGJSON, "utf8")); + for (const field of ["main", "typings"]) { + if (pkgJson["matrix_lib_" + field] !== undefined) { + pkgJson[field] = pkgJson["matrix_lib_" + field]; + } + } + + await fsProm.writeFile(PKGJSON, JSON.stringify(pkgJson, null, 2)); +} + +main(); diff --git a/scripts/switch_package_to_release.js b/scripts/switch_package_to_release.js deleted file mode 100755 index 353840d4d92..00000000000 --- a/scripts/switch_package_to_release.js +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env node - -const fsProm = require("fs/promises"); - -const PKGJSON = "package.json"; - -async function main() { - const pkgJson = JSON.parse(await fsProm.readFile(PKGJSON, "utf8")); - for (const field of ["main", "typings"]) { - if (pkgJson["matrix_lib_" + field] !== undefined) { - pkgJson[field] = pkgJson["matrix_lib_" + field]; - } - } - - // matrix-js-sdk is built into ECMAScript modules. Make sure we declare it as such. - // See https://nodejs.org/api/packages.html#type. - pkgJson["type"] = "module"; - - await fsProm.writeFile(PKGJSON, JSON.stringify(pkgJson, null, 2)); -} - -main(); diff --git a/scripts/switch_package_to_release.js b/scripts/switch_package_to_release.js new file mode 120000 index 00000000000..27f1619c9a2 --- /dev/null +++ b/scripts/switch_package_to_release.js @@ -0,0 +1 @@ +switch_package_to_release.cjs \ No newline at end of file From 658563e2a7fa2de133df8d0f01fc833e0263d3b9 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Wed, 21 Aug 2024 12:56:47 +0000 Subject: [PATCH 391/595] v34.4.0-rc.1 --- package.json | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index bcb852bc11e..73e97526a9c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.4.0-rc.0", + "version": "34.4.0-rc.1", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" @@ -32,8 +32,8 @@ "matrix-org" ], "type": "module", - "main": "./src/index.js", - "browser": "./src/browser-index.js", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", "matrix_src_main": "./src/index.ts", "matrix_src_browser": "./src/browser-index.ts", "matrix_lib_main": "./lib/index.js", @@ -132,6 +132,5 @@ "outputName": "jest-sonar-report.xml", "relativePaths": true }, - "typings": "./lib/index.d.ts", - "type": "module" + "typings": "./lib/index.d.ts" } From 03baa3e358cf7161f733f4aaa642413cf2beaa55 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 21 Aug 2024 14:51:57 +0100 Subject: [PATCH 392/595] Update all non-major dependencies (#4362) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 229 +++++++++++++++++++++++++++++++++++---------------- 2 files changed, 157 insertions(+), 74 deletions(-) diff --git a/package.json b/package.json index 29624b30b0a..01fef13aa7f 100644 --- a/package.json +++ b/package.json @@ -107,7 +107,7 @@ "eslint-plugin-tsdoc": "^0.3.0", "eslint-plugin-unicorn": "^54.0.0", "fake-indexeddb": "^5.0.2", - "fetch-mock": "10.1.0", + "fetch-mock": "10.1.1", "fetch-mock-jest": "^1.5.1", "husky": "^9.0.0", "jest": "^29.0.0", diff --git a/yarn.lock b/yarn.lock index fed246ca12e..d5f54333ac7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1811,6 +1811,14 @@ "@typescript-eslint/types" "7.16.0" "@typescript-eslint/visitor-keys" "7.16.0" +"@typescript-eslint/scope-manager@8.2.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.2.0.tgz#4a4bd7e7df5522acc8795c3b6f21e8c41b951138" + integrity sha512-OFn80B38yD6WwpoHU2Tz/fTz7CgFqInllBoC3WP+/jLbTb4gGPTy9HBSTsbDWkMdN55XlVU0mMDYAtgvlUspGw== + dependencies: + "@typescript-eslint/types" "8.2.0" + "@typescript-eslint/visitor-keys" "8.2.0" + "@typescript-eslint/type-utils@7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.16.0.tgz#ec52b1932b8fb44a15a3e20208e0bd49d0b6bd00" @@ -1826,6 +1834,11 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.16.0.tgz#60a19d7e7a6b1caa2c06fac860829d162a036ed2" integrity sha512-fecuH15Y+TzlUutvUl9Cc2XJxqdLr7+93SQIbcZfd4XRGGKoxyljK27b+kxKamjRkU7FYC6RrbSCg0ALcZn/xw== +"@typescript-eslint/types@8.2.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.2.0.tgz#dfe9895a2812f7c6bf7af863054c22a67060420c" + integrity sha512-6a9QSK396YqmiBKPkJtxsgZZZVjYQ6wQ/TlI0C65z7vInaETuC6HAHD98AGLC8DyIPqHytvNuS8bBVvNLKyqvQ== + "@typescript-eslint/typescript-estree@7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.16.0.tgz#98ac779d526fab2a781e5619c9250f3e33867c09" @@ -1840,7 +1853,21 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.16.0", "@typescript-eslint/utils@^6.0.0 || ^7.0.0": +"@typescript-eslint/typescript-estree@8.2.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.2.0.tgz#fbdb93a1c7ac7f1f96ae2de4fc97cd64c60ae894" + integrity sha512-kiG4EDUT4dImplOsbh47B1QnNmXSoUqOjWDvCJw/o8LgfD0yr7k2uy54D5Wm0j4t71Ge1NkynGhpWdS0dEIAUA== + dependencies: + "@typescript-eslint/types" "8.2.0" + "@typescript-eslint/visitor-keys" "8.2.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + minimatch "^9.0.4" + semver "^7.6.0" + ts-api-utils "^1.3.0" + +"@typescript-eslint/utils@7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.16.0.tgz#b38dc0ce1778e8182e227c98d91d3418449aa17f" integrity sha512-PqP4kP3hb4r7Jav+NiRCntlVzhxBNWq6ZQ+zQwII1y/G/1gdIPeYDCKr2+dH6049yJQsWZiHU6RlwvIFBXXGNA== @@ -1850,6 +1877,16 @@ "@typescript-eslint/types" "7.16.0" "@typescript-eslint/typescript-estree" "7.16.0" +"@typescript-eslint/utils@^6.0.0 || ^7.0.0 || ^8.0.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.2.0.tgz#02d442285925f28d520587185f295f932702e733" + integrity sha512-O46eaYKDlV3TvAVDNcoDzd5N550ckSe8G4phko++OCSC1dYIb9LTc3HDGYdWqWIAT5qDUKphO6sd9RrpIJJPfg== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + "@typescript-eslint/scope-manager" "8.2.0" + "@typescript-eslint/types" "8.2.0" + "@typescript-eslint/typescript-estree" "8.2.0" + "@typescript-eslint/visitor-keys@7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.16.0.tgz#a1d99fa7a3787962d6e0efd436575ef840e23b06" @@ -1858,6 +1895,14 @@ "@typescript-eslint/types" "7.16.0" eslint-visitor-keys "^3.4.3" +"@typescript-eslint/visitor-keys@8.2.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.2.0.tgz#f6abb3b6508898a117175ddc11f9b9869cc96834" + integrity sha512-sbgsPMW9yLvS7IhCi8IpuK1oBmtbWUNP+hBdwl/I9nzqVsszGnNGti5r9dUtF5RLivHUFFIdRvLiTsPhzSyJ3Q== + dependencies: + "@typescript-eslint/types" "8.2.0" + eslint-visitor-keys "^3.4.3" + "@ungap/structured-clone@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" @@ -1940,10 +1985,12 @@ ansi-escapes@^4.2.1: dependencies: type-fest "^0.21.3" -ansi-escapes@^6.2.0: - version "6.2.1" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-6.2.1.tgz#76c54ce9b081dad39acec4b5d53377913825fb0f" - integrity sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig== +ansi-escapes@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-7.0.0.tgz#00fc19f491bbb18e1d481b97868204f92109bfe7" + integrity sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw== + dependencies: + environment "^1.0.0" ansi-regex@^5.0.1: version "5.0.1" @@ -2368,12 +2415,12 @@ clean-stack@^2.0.0: resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== -cli-cursor@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-4.0.0.tgz#3cecfe3734bf4fe02a8361cbdc0f6fe28c6a57ea" - integrity sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg== +cli-cursor@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-5.0.0.tgz#24a4831ecf5a6b01ddeb32fb71a4b2088b0dce38" + integrity sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw== dependencies: - restore-cursor "^4.0.0" + restore-cursor "^5.0.0" cli-truncate@^4.0.0: version "4.0.0" @@ -2570,10 +2617,10 @@ data-view-byte-offset@^1.0.0: es-errors "^1.3.0" is-data-view "^1.0.1" -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@~4.3.4: - version "4.3.5" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.5.tgz#e83444eceb9fedd4a1da56d671ae2446a01a6e1e" - integrity sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg== +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@~4.3.6: + version "4.3.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.6.tgz#2ab2c38fbaffebf8aa95fdfe6d88438c7a13c52b" + integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== dependencies: ms "2.1.2" @@ -2734,11 +2781,24 @@ enhanced-resolve@^5.12.0: graceful-fs "^4.2.4" tapable "^2.2.0" +enhanced-resolve@^5.17.1: + version "5.17.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz#67bfbbcc2f81d511be77d686a90267ef7f898a15" + integrity sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg== + dependencies: + graceful-fs "^4.2.4" + tapable "^2.2.0" + entities@^4.4.0: version "4.5.0" resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== +environment@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/environment/-/environment-1.1.0.tgz#8e86c66b180f363c7ab311787e0259665f45a9f1" + integrity sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q== + error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" @@ -2941,22 +3001,23 @@ eslint-plugin-import@^2.26.0: tsconfig-paths "^3.15.0" eslint-plugin-jest@^28.0.0: - version "28.6.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.6.0.tgz#8410588d60bcafa68a91b6ec272e4a415502302a" - integrity sha512-YG28E1/MIKwnz+e2H7VwYPzHUYU4aMa19w0yGcwXnnmJH6EfgHahTJ2un3IyraUxNfnz/KUhJAFXNNwWPo12tg== + version "28.8.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.8.0.tgz#54f597b5a3295ad04ec946baa245ad02b9b2bca0" + integrity sha512-Tubj1hooFxCl52G4qQu0edzV/+EZzPUeN8p2NnW5uu4fbDs+Yo7+qDVDc4/oG3FbCqEBmu/OC3LSsyiU22oghw== dependencies: - "@typescript-eslint/utils" "^6.0.0 || ^7.0.0" + "@typescript-eslint/utils" "^6.0.0 || ^7.0.0 || ^8.0.0" eslint-plugin-jsdoc@^48.0.0: - version "48.8.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.8.3.tgz#0a651bc0ab5b0732c39e12b26771fca78c830c1c" - integrity sha512-AtIvwwW9D17MRkM0Z0y3/xZYaa9mdAvJrkY6fU/HNUwGbmMtHVvK4qRM9CDixGVtfNrQitb8c6zQtdh6cTOvLg== + version "48.11.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.11.0.tgz#7c8dae6ce0d814aff54b87fdb808f02635691ade" + integrity sha512-d12JHJDPNo7IFwTOAItCeJY1hcqoIxE0lHA8infQByLilQ9xkqrRa6laWCnsuCrf+8rUnvxXY1XuTbibRBNylA== dependencies: "@es-joy/jsdoccomment" "~0.46.0" are-docs-informative "^0.0.2" comment-parser "1.4.1" debug "^4.3.5" escape-string-regexp "^4.0.0" + espree "^10.1.0" esquery "^1.6.0" parse-imports "^2.1.1" semver "^7.6.3" @@ -3078,7 +3139,7 @@ eslint@8.57.0: strip-ansi "^6.0.1" text-table "^0.2.0" -espree@^10.0.1: +espree@^10.0.1, espree@^10.1.0: version "10.1.0" resolved "https://registry.yarnpkg.com/espree/-/espree-10.1.0.tgz#8788dae611574c0f070691f522e4116c5a11fc56" integrity sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA== @@ -3249,10 +3310,10 @@ fetch-mock-jest@^1.5.1: dependencies: fetch-mock "^9.11.0" -fetch-mock@10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-10.1.0.tgz#b2cabb4f587eca747e395e97de28c62364f301fc" - integrity sha512-/2DFdUrn2afOifgXuq3ppTGOg/S8YAvjeEOlBJ4QgWiT24pYGozju3Hz5UQm1ynumY9hlzBHE2z0jd0PHD+fRg== +fetch-mock@10.1.1: + version "10.1.1" + resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-10.1.1.tgz#09f5f14aff5587095fc1632c271523a5aff1e79c" + integrity sha512-R6MwxuGwlUe0K6GzdLY1Wa9voX/GbUBDZjNHBsvlBhrpXurCYpQN4EW0iFCmtWddDTuS0ubR93OtFSgy9E/L2A== dependencies: debug "^4.1.1" dequal "^2.0.3" @@ -3629,9 +3690,9 @@ human-signals@^5.0.0: integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ== husky@^9.0.0: - version "9.1.1" - resolved "https://registry.yarnpkg.com/husky/-/husky-9.1.1.tgz#73f8f1b58329f377654293148c1a6458f54ca224" - integrity sha512-fCqlqLXcBnXa/TJXmT93/A36tJsjdJkibQ1MuIiFyCCYUlpYpIaj2mv1w+3KR6Rzu1IC3slFTje5f6DUp2A2rg== + version "9.1.5" + resolved "https://registry.yarnpkg.com/husky/-/husky-9.1.5.tgz#2b6edede53ee1adbbd3a3da490628a23f5243b83" + integrity sha512-rowAVRUBfI0b4+niA4SJMhfQwc107VLkBUgEYYAOQAbqDCnra1nYh83hF/MDmhYs9t9n1E3DuKOrs2LYNC+0Ag== iconv-lite@0.6.3: version "0.6.3" @@ -3640,7 +3701,12 @@ iconv-lite@0.6.3: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -ignore@^5.1.8, ignore@^5.2.0, ignore@^5.3.1: +ignore@^5.1.8, ignore@^5.2.0: + version "5.3.2" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" + integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== + +ignore@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== @@ -4525,13 +4591,14 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.27.0" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.27.0.tgz#b124b3d2ba4e012b51c0efe7f61b0d1303cc31a2" - integrity sha512-W8+jhO7i5pXRUqOzhJGm2DT5/d9aQjyrYTCSojqJxFOvi7ku/nHKzpBO3WNf4eflJo0t3zitmUkM69g53qoZQw== + version "5.27.2" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.27.2.tgz#8a5a569a5baac0ab2e06dbd5454f07608ccb1952" + integrity sha512-Mya1XEDq1oygibQf0uocQd02Fil8RtvNVhcFAcxypjcc6zakT7wsJtS0xvuwEitilfI0tiFC9PghmJQ3DMKuTg== dependencies: "@nodelib/fs.walk" "1.2.8" "@snyk/github-codeowners" "1.1.0" easy-table "1.2.0" + enhanced-resolve "^5.17.1" fast-glob "^3.3.2" jiti "^1.21.6" js-yaml "^4.1.0" @@ -4539,7 +4606,6 @@ knip@^5.0.0: picocolors "^1.0.0" picomatch "^4.0.1" pretty-ms "^9.0.0" - resolve "^1.22.8" smol-toml "^1.1.4" strip-json-comments "5.0.1" summary "2.1.0" @@ -4559,7 +4625,7 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" -lilconfig@~3.1.1: +lilconfig@~3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.2.tgz#e4a7c3cb549e3a606c8dcc32e5ae1005e62c05cb" integrity sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow== @@ -4577,30 +4643,30 @@ linkify-it@^5.0.0: uc.micro "^2.0.0" lint-staged@^15.0.2: - version "15.2.7" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.7.tgz#97867e29ed632820c0fb90be06cd9ed384025649" - integrity sha512-+FdVbbCZ+yoh7E/RosSdqKJyUM2OEjTciH0TFNkawKgvFp1zbGlEC39RADg+xKBG1R4mhoH2j85myBQZ5wR+lw== + version "15.2.9" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.9.tgz#bf70d40b6b192df6ad756fb89822211615e0f4da" + integrity sha512-BZAt8Lk3sEnxw7tfxM7jeZlPRuT4M68O0/CwZhhaw6eeWu0Lz5eERE3m386InivXB64fp/mDID452h48tvKlRQ== dependencies: chalk "~5.3.0" commander "~12.1.0" - debug "~4.3.4" + debug "~4.3.6" execa "~8.0.1" - lilconfig "~3.1.1" - listr2 "~8.2.1" + lilconfig "~3.1.2" + listr2 "~8.2.4" micromatch "~4.0.7" pidtree "~0.6.0" string-argv "~0.3.2" - yaml "~2.4.2" + yaml "~2.5.0" -listr2@~8.2.1: - version "8.2.3" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.2.3.tgz#c494bb89b34329cf900e4e0ae8aeef9081d7d7a5" - integrity sha512-Lllokma2mtoniUOS94CcOErHWAug5iu7HOmDrvWgpw8jyQH2fomgB+7lZS4HWZxytUuQwkGOwe49FvwVaA85Xw== +listr2@~8.2.4: + version "8.2.4" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.2.4.tgz#486b51cbdb41889108cb7e2c90eeb44519f5a77f" + integrity sha512-opevsywziHd3zHCVQGAj8zu+Z3yHNkkoYhWIGnq54RrCVwLz0MozotJEDnKsIBLvkfLGN6BLOyAeRrYI0pKA4g== dependencies: cli-truncate "^4.0.0" colorette "^2.0.20" eventemitter3 "^5.0.1" - log-update "^6.0.0" + log-update "^6.1.0" rfdc "^1.4.1" wrap-ansi "^9.0.0" @@ -4638,14 +4704,14 @@ lodash.sortby@^4.7.0: resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" integrity sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA== -log-update@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/log-update/-/log-update-6.0.0.tgz#0ddeb7ac6ad658c944c1de902993fce7c33f5e59" - integrity sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw== +log-update@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-6.1.0.tgz#1a04ff38166f94647ae1af562f4bd6a15b1b7cd4" + integrity sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w== dependencies: - ansi-escapes "^6.2.0" - cli-cursor "^4.0.0" - slice-ansi "^7.0.0" + ansi-escapes "^7.0.0" + cli-cursor "^5.0.0" + slice-ansi "^7.1.0" strip-ansi "^7.1.0" wrap-ansi "^9.0.0" @@ -4775,6 +4841,11 @@ mimic-fn@^4.0.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== +mimic-function@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/mimic-function/-/mimic-function-5.0.1.tgz#acbe2b3349f99b9deaca7fb70e48b83e94e67076" + integrity sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA== + min-indent@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" @@ -4944,7 +5015,7 @@ once@^1.3.0: dependencies: wrappy "1" -onetime@^5.1.0, onetime@^5.1.2: +onetime@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== @@ -4958,6 +5029,13 @@ onetime@^6.0.0: dependencies: mimic-fn "^4.0.0" +onetime@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-7.0.0.tgz#9f16c92d8c9ef5120e3acd9dd9957cceecc1ab60" + integrity sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ== + dependencies: + mimic-function "^5.0.0" + optionator@^0.9.3: version "0.9.4" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" @@ -5384,7 +5462,7 @@ resolve.exports@^2.0.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@^1.10.0, resolve@^1.14.2, resolve@^1.20.0, resolve@^1.22.4, resolve@^1.22.8, resolve@~1.22.2: +resolve@^1.10.0, resolve@^1.14.2, resolve@^1.20.0, resolve@^1.22.4, resolve@~1.22.2: version "1.22.8" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== @@ -5393,13 +5471,13 @@ resolve@^1.10.0, resolve@^1.14.2, resolve@^1.20.0, resolve@^1.22.4, resolve@^1.2 path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -restore-cursor@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-4.0.0.tgz#519560a4318975096def6e609d44100edaa4ccb9" - integrity sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg== +restore-cursor@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-5.1.0.tgz#0766d95699efacb14150993f55baf0953ea1ebe7" + integrity sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA== dependencies: - onetime "^5.1.0" - signal-exit "^3.0.2" + onetime "^7.0.0" + signal-exit "^4.1.0" retry@^0.13.1: version "0.13.1" @@ -5489,12 +5567,12 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.1: +semver@^7.5.3, semver@^7.5.4, semver@^7.6.1: version "7.6.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== -semver@^7.6.3: +semver@^7.6.0, semver@^7.6.3: version "7.6.3" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== @@ -5551,7 +5629,7 @@ side-channel@^1.0.4: get-intrinsic "^1.2.4" object-inspect "^1.13.1" -signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: +signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== @@ -5589,7 +5667,7 @@ slice-ansi@^5.0.0: ansi-styles "^6.0.0" is-fullwidth-code-point "^4.0.0" -slice-ansi@^7.0.0: +slice-ansi@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-7.1.0.tgz#cd6b4655e298a8d1bdeb04250a433094b347b9a9" integrity sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg== @@ -5645,9 +5723,9 @@ spdx-expression-parse@^4.0.0: spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.18" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz#22aa922dcf2f2885a6494a261f2d8b75345d0326" - integrity sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ== + version "3.0.20" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz#e44ed19ed318dd1e5888f93325cee800f0f51b89" + integrity sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw== sprintf-js@~1.0.2: version "1.0.3" @@ -6356,11 +6434,16 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yaml@^2.4.5, yaml@~2.4.2: +yaml@^2.4.5: version "2.4.5" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.4.5.tgz#60630b206dd6d84df97003d33fc1ddf6296cca5e" integrity sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg== +yaml@~2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.0.tgz#c6165a721cf8000e91c36490a41d7be25176cf5d" + integrity sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw== + yargs-parser@^21.1.1: version "21.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" @@ -6390,9 +6473,9 @@ yocto-queue@^0.1.0: integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== zod-validation-error@^3.0.3: - version "3.3.0" - resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.3.0.tgz#2cfe81b62d044e0453d1aa3ae7c32a2f36dde9af" - integrity sha512-Syib9oumw1NTqEv4LT0e6U83Td9aVRk9iTXPUQr1otyV1PuXQKOvOwhMNqZIq5hluzHP2pMgnOmHEo7kPdI2mw== + version "3.3.1" + resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.3.1.tgz#86adc781129d1a7fed3c3e567e8dbe7c4a15eaa4" + integrity sha512-uFzCZz7FQis256dqw4AhPQgD6f3pzNca/Zh62RNELavlumQB3nDIUFbF5JQfFLcMbO1s02Q7Xg/gpcOBlEnYZA== zod@^3.22.4: version "3.23.8" From cd6787e0ac62f518952a44cfd97ac48aa5942354 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 21 Aug 2024 15:22:08 +0100 Subject: [PATCH 393/595] Update dependency @types/node to v18.19.44 (#4364) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index d5f54333ac7..bbf5670ada4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1724,9 +1724,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.39" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.39.tgz#c316340a5b4adca3aee9dcbf05de385978590593" - integrity sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ== + version "18.19.45" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.45.tgz#a9ebfe4c316a356be7ca11f753ecb2feda6d6bdf" + integrity sha512-VZxPKNNhjKmaC1SUYowuXSRSMGyQGmQjvvA1xE4QZ0xce2kLtEhPDS+kqpCPBZYgqblCLQ2DAjSzmgCM5auvhA== dependencies: undici-types "~5.26.4" From 5f0978ac3f9b6b2abe27ad787acb1a0f69f98134 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 21 Aug 2024 14:41:16 +0000 Subject: [PATCH 394/595] Update babel monorepo (#4363) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 550 +++++++++++++++++++++++++++++------------------------- 1 file changed, 294 insertions(+), 256 deletions(-) diff --git a/yarn.lock b/yarn.lock index bbf5670ada4..2c513a4c90a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -23,9 +23,9 @@ "@jridgewell/trace-mapping" "^0.3.24" "@babel/cli@^7.12.10": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.7.tgz#eb2868c1fa384b17ea88d60107577d3e6fd05c4e" - integrity sha512-8dfPprJgV4O14WTx+AQyEA+opgUKPrsIXX/MdL50J1n06EQJ6m1T+CdsJe0qEC0B/Xl85i+Un5KVAxd/PACX9A== + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.8.tgz#79eaa55a69c77cafbea3e87537fd1df5a5a2edf8" + integrity sha512-isdp+G6DpRyKc+3Gqxy2rjzgF7Zj9K0mzLNnxz+E/fgeag8qT3vVulX4gY9dGO1q0y+0lUv6V3a+uhUzMzrwXg== dependencies: "@jridgewell/trace-mapping" "^0.3.25" commander "^6.2.0" @@ -46,26 +46,26 @@ "@babel/highlight" "^7.24.7" picocolors "^1.0.0" -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.7.tgz#d23bbea508c3883ba8251fb4164982c36ea577ed" - integrity sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw== +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.2": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.2.tgz#e41928bd33475305c586f6acbbb7e3ade7a6f7f5" + integrity sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ== "@babel/core@^7.0.0", "@babel/core@^7.11.6", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.23.9": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.7.tgz#b676450141e0b52a3d43bc91da86aa608f950ac4" - integrity sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g== + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.2.tgz#ed8eec275118d7613e77a352894cd12ded8eba77" + integrity sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA== dependencies: "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.24.7" - "@babel/helper-compilation-targets" "^7.24.7" - "@babel/helper-module-transforms" "^7.24.7" - "@babel/helpers" "^7.24.7" - "@babel/parser" "^7.24.7" - "@babel/template" "^7.24.7" - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/generator" "^7.25.0" + "@babel/helper-compilation-targets" "^7.25.2" + "@babel/helper-module-transforms" "^7.25.2" + "@babel/helpers" "^7.25.0" + "@babel/parser" "^7.25.0" + "@babel/template" "^7.25.0" + "@babel/traverse" "^7.25.2" + "@babel/types" "^7.25.2" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -73,22 +73,32 @@ semver "^6.3.1" "@babel/eslint-parser@^7.12.10": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.7.tgz#27ebab1a1ec21f48ae191a8aaac5b82baf80d9c7" - integrity sha512-SO5E3bVxDuxyNxM5agFv480YA2HO6ohZbGxbazZdIk3KQOPOGVNw6q78I9/lbviIf95eq6tPozeYnJLbjnC8IA== + version "7.25.1" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.25.1.tgz#469cee4bd18a88ff3edbdfbd227bd20e82aa9b82" + integrity sha512-Y956ghgTT4j7rKesabkh5WeqgSFZVFwaPR0IWFm7KFHFmmJ4afbG49SmfW4S+GyRPx0Dy5jxEWA5t0rpxfElWg== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" semver "^6.3.1" "@babel/eslint-plugin@^7.12.10": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.24.7.tgz#ebdab31638cdcc720f0c788813066e9b5c0b3e29" - integrity sha512-lODNPJnM+OfcxxBvdmI2YmUeC0fBK3k9yET5O+1Eukr8d5VpO19c6ARtNheE2t2i/8XNYTzp3HeGEAAGZH3nnQ== + version "7.25.1" + resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.25.1.tgz#fc7fff590ab566c9d643fdecf346b69064157ef9" + integrity sha512-jF04YOsrCbEeQk4s+FwsuRddwBiAHooMDG9/nrV83HiYQwEuQppbXTeXyydxCoH5oEWmVBI51wHuZrcIXMkPfw== dependencies: eslint-rule-composer "^0.3.0" -"@babel/generator@^7.24.7", "@babel/generator@^7.7.2": +"@babel/generator@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.0.tgz#f858ddfa984350bc3d3b7f125073c9af6988f18e" + integrity sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw== + dependencies: + "@babel/types" "^7.25.0" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" + jsesc "^2.5.1" + +"@babel/generator@^7.7.2": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.7.tgz#1654d01de20ad66b4b4d99c135471bc654c55e6d" integrity sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA== @@ -113,36 +123,34 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz#4eb6c4a80d6ffeac25ab8cd9a21b5dfa48d503a9" - integrity sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg== +"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.7", "@babel/helper-compilation-targets@^7.24.8", "@babel/helper-compilation-targets@^7.25.2": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz#e1d9410a90974a3a5a66e84ff55ef62e3c02d06c" + integrity sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw== dependencies: - "@babel/compat-data" "^7.24.7" - "@babel/helper-validator-option" "^7.24.7" - browserslist "^4.22.2" + "@babel/compat-data" "^7.25.2" + "@babel/helper-validator-option" "^7.24.8" + browserslist "^4.23.1" lru-cache "^5.1.1" semver "^6.3.1" "@babel/helper-create-class-features-plugin@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.7.tgz#2eaed36b3a1c11c53bdf80d53838b293c52f5b3b" - integrity sha512-kTkaDl7c9vO80zeX1rJxnuRpEsD5tA81yh11X1gQo+PhSti3JS+7qeZo9U4RHobKRiFPKaGK3svUAeb8D0Q7eg== + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.0.tgz#a109bf9c3d58dfed83aaf42e85633c89f43a6253" + integrity sha512-GYM6BxeQsETc9mnct+nIIpf63SAyzvyYN7UB/IlTyd+MBg06afFGp0mIeUqGyWgS2mxad6vqbMrHVlaL3m70sQ== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-function-name" "^7.24.7" - "@babel/helper-member-expression-to-functions" "^7.24.7" + "@babel/helper-member-expression-to-functions" "^7.24.8" "@babel/helper-optimise-call-expression" "^7.24.7" - "@babel/helper-replace-supers" "^7.24.7" + "@babel/helper-replace-supers" "^7.25.0" "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" - "@babel/helper-split-export-declaration" "^7.24.7" + "@babel/traverse" "^7.25.0" semver "^6.3.1" -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.24.7.tgz#be4f435a80dc2b053c76eeb4b7d16dd22cfc89da" - integrity sha512-03TCmXy2FtXJEZfbXDTSqq1fRJArk7lX9DOFC/47VthYcxyIOx+eXQmdo6DOQvrbpIix+KfXwvuXdFDZHxt+rA== +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.24.7", "@babel/helper-create-regexp-features-plugin@^7.25.0": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.2.tgz#24c75974ed74183797ffd5f134169316cd1808d9" + integrity sha512-+wqVGP+DFmqwFD3EH6TMTfUNeqDehV3E/dl+Sd54eaXqm17tEUNbEIn4sVivVowbvUpOtIGxdo3GoXyDH9N/9g== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" regexpu-core "^5.3.1" @@ -159,35 +167,13 @@ lodash.debounce "^4.0.8" resolve "^1.14.2" -"@babel/helper-environment-visitor@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz#4b31ba9551d1f90781ba83491dd59cf9b269f7d9" - integrity sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ== - dependencies: - "@babel/types" "^7.24.7" - -"@babel/helper-function-name@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz#75f1e1725742f39ac6584ee0b16d94513da38dd2" - integrity sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA== - dependencies: - "@babel/template" "^7.24.7" - "@babel/types" "^7.24.7" - -"@babel/helper-hoist-variables@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz#b4ede1cde2fd89436397f30dc9376ee06b0f25ee" - integrity sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ== - dependencies: - "@babel/types" "^7.24.7" - -"@babel/helper-member-expression-to-functions@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.7.tgz#67613d068615a70e4ed5101099affc7a41c5225f" - integrity sha512-LGeMaf5JN4hAT471eJdBs/GK1DoYIJ5GCtZN/EsL6KUiiDZOvO/eKE11AMZJa2zP4zk4qe9V2O/hxAmkRc8p6w== +"@babel/helper-member-expression-to-functions@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.8.tgz#6155e079c913357d24a4c20480db7c712a5c3fb6" + integrity sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/traverse" "^7.24.8" + "@babel/types" "^7.24.8" "@babel/helper-module-imports@^7.24.7": version "7.24.7" @@ -197,16 +183,15 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-module-transforms@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz#31b6c9a2930679498db65b685b1698bfd6c7daf8" - integrity sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ== +"@babel/helper-module-transforms@^7.24.7", "@babel/helper-module-transforms@^7.24.8", "@babel/helper-module-transforms@^7.25.0", "@babel/helper-module-transforms@^7.25.2": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz#ee713c29768100f2776edf04d4eb23b8d27a66e6" + integrity sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ== dependencies: - "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-module-imports" "^7.24.7" "@babel/helper-simple-access" "^7.24.7" - "@babel/helper-split-export-declaration" "^7.24.7" "@babel/helper-validator-identifier" "^7.24.7" + "@babel/traverse" "^7.25.2" "@babel/helper-optimise-call-expression@^7.24.7": version "7.24.7" @@ -215,28 +200,28 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz#98c84fe6fe3d0d3ae7bfc3a5e166a46844feb2a0" - integrity sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.24.8", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz#94ee67e8ec0e5d44ea7baeb51e571bd26af07878" + integrity sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg== -"@babel/helper-remap-async-to-generator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.24.7.tgz#b3f0f203628522713849d49403f1a414468be4c7" - integrity sha512-9pKLcTlZ92hNZMQfGCHImUpDOlAgkkpqalWEeftW5FBya75k8Li2ilerxkM/uBEj01iBZXcCIB/bwvDYgWyibA== +"@babel/helper-remap-async-to-generator@^7.24.7", "@babel/helper-remap-async-to-generator@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.0.tgz#d2f0fbba059a42d68e5e378feaf181ef6055365e" + integrity sha512-NhavI2eWEIz/H9dbrG0TuOicDhNexze43i5z7lEqwYm0WEZVTwnPpA0EafUTP7+6/W79HWIP2cTe3Z5NiSTVpw== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-wrap-function" "^7.24.7" + "@babel/helper-wrap-function" "^7.25.0" + "@babel/traverse" "^7.25.0" -"@babel/helper-replace-supers@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.24.7.tgz#f933b7eed81a1c0265740edc91491ce51250f765" - integrity sha512-qTAxxBM81VEyoAY0TtLrx1oAEJc09ZK67Q9ljQToqCnA+55eNwCORaxlKyu+rNfX86o8OXRUSNUnrtsAZXM9sg== +"@babel/helper-replace-supers@^7.24.7", "@babel/helper-replace-supers@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.0.tgz#ff44deac1c9f619523fe2ca1fd650773792000a9" + integrity sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg== dependencies: - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-member-expression-to-functions" "^7.24.7" + "@babel/helper-member-expression-to-functions" "^7.24.8" "@babel/helper-optimise-call-expression" "^7.24.7" + "@babel/traverse" "^7.25.0" "@babel/helper-simple-access@^7.24.7": version "7.24.7" @@ -254,45 +239,37 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-split-export-declaration@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz#83949436890e07fa3d6873c61a96e3bbf692d856" - integrity sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA== - dependencies: - "@babel/types" "^7.24.7" - -"@babel/helper-string-parser@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz#4d2d0f14820ede3b9807ea5fc36dfc8cd7da07f2" - integrity sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg== +"@babel/helper-string-parser@^7.24.7", "@babel/helper-string-parser@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" + integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ== "@babel/helper-validator-identifier@^7.24.5", "@babel/helper-validator-identifier@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== -"@babel/helper-validator-option@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz#24c3bb77c7a425d1742eec8fb433b5a1b38e62f6" - integrity sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw== +"@babel/helper-validator-option@^7.24.7", "@babel/helper-validator-option@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz#3725cdeea8b480e86d34df15304806a06975e33d" + integrity sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q== -"@babel/helper-wrap-function@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.24.7.tgz#52d893af7e42edca7c6d2c6764549826336aae1f" - integrity sha512-N9JIYk3TD+1vq/wn77YnJOqMtfWhNewNE+DJV4puD2X7Ew9J4JvrzrFDfTfyv5EgEXVy9/Wt8QiOErzEmv5Ifw== +"@babel/helper-wrap-function@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.0.tgz#dab12f0f593d6ca48c0062c28bcfb14ebe812f81" + integrity sha512-s6Q1ebqutSiZnEjaofc/UKDyC4SbzV5n5SrA2Gq8UawLycr3i04f1dX4OzoQVnexm6aOCh37SQNYlJ/8Ku+PMQ== dependencies: - "@babel/helper-function-name" "^7.24.7" - "@babel/template" "^7.24.7" - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/template" "^7.25.0" + "@babel/traverse" "^7.25.0" + "@babel/types" "^7.25.0" -"@babel/helpers@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.7.tgz#aa2ccda29f62185acb5d42fb4a3a1b1082107416" - integrity sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg== +"@babel/helpers@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.0.tgz#e69beb7841cb93a6505531ede34f34e6a073650a" + integrity sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw== dependencies: - "@babel/template" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/template" "^7.25.0" + "@babel/types" "^7.25.0" "@babel/highlight@^7.24.7": version "7.24.7" @@ -304,25 +281,39 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.7": +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" integrity sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw== -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.7.tgz#fd059fd27b184ea2b4c7e646868a9a381bbc3055" - integrity sha512-TiT1ss81W80eQsN+722OaeQMY/G4yTb4G9JrqeiDADs3N8lbPMGldWi9x8tyqCW5NLx1Jh2AvkE6r6QvEltMMQ== +"@babel/parser@^7.24.7", "@babel/parser@^7.25.0", "@babel/parser@^7.25.3": + version "7.25.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.3.tgz#91fb126768d944966263f0657ab222a642b82065" + integrity sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw== dependencies: - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/types" "^7.25.2" -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.7.tgz#468096ca44bbcbe8fcc570574e12eb1950e18107" - integrity sha512-unaQgZ/iRu/By6tsjMZzpeBZjChYfLYry6HrEXPoz3KmfF0sVBQ1l8zKMQ4xRGLWVsjuvB8nQfjNP/DcfEOCsg== +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.3": + version "7.25.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.3.tgz#dca427b45a6c0f5c095a1c639dfe2476a3daba7f" + integrity sha512-wUrcsxZg6rqBXG05HG1FPYgsP6EvwF4WpBbxIpWIIYnH8wG0gzx3yZY3dtEHas4sTAOGkbTsc9EGPxwff8lRoA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/traverse" "^7.25.3" + +"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.0.tgz#cd0c583e01369ef51676bdb3d7b603e17d2b3f73" + integrity sha512-Bm4bH2qsX880b/3ziJ8KD711LT7z4u8CFudmjqle65AZj/HNUFhEf90dqYv6O86buWvSBmeQDjv0Tn2aF/bIBA== + dependencies: + "@babel/helper-plugin-utils" "^7.24.8" + +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.0.tgz#749bde80356b295390954643de7635e0dffabe73" + integrity sha512-lXwdNZtTmeVOOFtwM/WDe7yg1PL8sYhRk/XH0FzbR2HDQ0xC+EnQ/JHeoMYSavtU115tnUk0q9CDyq8si+LMAA== + dependencies: + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.24.7": version "7.24.7" @@ -333,13 +324,13 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" "@babel/plugin-transform-optional-chaining" "^7.24.7" -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.7.tgz#71b21bb0286d5810e63a1538aa901c58e87375ec" - integrity sha512-utA4HuR6F4Vvcr+o4DnjL8fCOlgRFGbeeBEGNg3ZTrLFw6VWG5XmUrvcQ0FjIYMU2ST4XcR2Wsp7t9qOAPnxMg== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.0.tgz#3a82a70e7cb7294ad2559465ebcb871dfbf078fb" + integrity sha512-tggFrk1AIShG/RUQbEwt2Tr/E+ObkfwrPjR6BjbRvsx24+PSjK8zrq0GWPNCjo8qpRx4DuJzlcvWJqlm+0h3kw== dependencies: - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/traverse" "^7.25.0" "@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": version "7.21.0-placeholder-for-preset-env.2" @@ -501,15 +492,15 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-async-generator-functions@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.7.tgz#7330a5c50e05181ca52351b8fd01642000c96cfd" - integrity sha512-o+iF77e3u7ZS4AoAuJvapz9Fm001PuD2V3Lp6OSE4FYQke+cSewYtnek+THqGRWyQloRCyvWL1OkyfNEl9vr/g== +"@babel/plugin-transform-async-generator-functions@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.0.tgz#b785cf35d73437f6276b1e30439a57a50747bddf" + integrity sha512-uaIi2FdqzjpAMvVqvB51S42oC2JEVgh0LDsGfZVDysWE8LrJtQC2jvKmOqEYThKyB7bDEb7BP1GYWDm7tABA0Q== dependencies: - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-remap-async-to-generator" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-remap-async-to-generator" "^7.25.0" "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/traverse" "^7.25.0" "@babel/plugin-transform-async-to-generator@^7.24.7": version "7.24.7" @@ -527,12 +518,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-block-scoping@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.7.tgz#42063e4deb850c7bd7c55e626bf4e7ab48e6ce02" - integrity sha512-Nd5CvgMbWc+oWzBsuaMcbwjJWAcp5qzrbg69SZdHSP7AMY0AbWFqFO0WTFCA1jxhMCwodRwvRec8k0QUbZk7RQ== +"@babel/plugin-transform-block-scoping@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.0.tgz#23a6ed92e6b006d26b1869b1c91d1b917c2ea2ac" + integrity sha512-yBQjYoOjXlFv9nlXb3f1casSHOZkWr29NX+zChVanLg5Nc157CrbEX9D7hxxtTpuFy7Q0YzmmWfJxzvps4kXrQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-transform-class-properties@^7.12.1", "@babel/plugin-transform-class-properties@^7.24.7": version "7.24.7" @@ -551,18 +542,16 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-transform-classes@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.7.tgz#4ae6ef43a12492134138c1e45913f7c46c41b4bf" - integrity sha512-CFbbBigp8ln4FU6Bpy6g7sE8B/WmCmzvivzUC6xDAdWVsjYTXijpuuGJmYkAaoWAzcItGKT3IOAbxRItZ5HTjw== +"@babel/plugin-transform-classes@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.0.tgz#63122366527d88e0ef61b612554fe3f8c793991e" + integrity sha512-xyi6qjr/fYU304fiRwFbekzkqVJZ6A7hOjWZd+89FVcBqPV3S9Wuozz82xdpLspckeaafntbzglaW4pqpzvtSw== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-compilation-targets" "^7.24.7" - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-function-name" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-replace-supers" "^7.24.7" - "@babel/helper-split-export-declaration" "^7.24.7" + "@babel/helper-compilation-targets" "^7.24.8" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-replace-supers" "^7.25.0" + "@babel/traverse" "^7.25.0" globals "^11.1.0" "@babel/plugin-transform-computed-properties@^7.24.7": @@ -573,12 +562,12 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/template" "^7.24.7" -"@babel/plugin-transform-destructuring@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.7.tgz#a097f25292defb6e6cc16d6333a4cfc1e3c72d9e" - integrity sha512-19eJO/8kdCQ9zISOf+SEUJM/bAUIsvY3YDnXZTupUCQ8LgrWnsG/gFB9dvXqdXnRXMAM8fvt7b0CBKQHNGy1mw== +"@babel/plugin-transform-destructuring@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.8.tgz#c828e814dbe42a2718a838c2a2e16a408e055550" + integrity sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-transform-dotall-regex@^7.24.7": version "7.24.7" @@ -595,6 +584,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.7" +"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.0.tgz#809af7e3339466b49c034c683964ee8afb3e2604" + integrity sha512-YLpb4LlYSc3sCUa35un84poXoraOiQucUTTu8X1j18JV+gNa8E0nyUf/CjZ171IRGr4jEguF+vzJU66QZhn29g== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.25.0" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/plugin-transform-dynamic-import@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.7.tgz#4d8b95e3bae2b037673091aa09cd33fecd6419f4" @@ -627,14 +624,14 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" -"@babel/plugin-transform-function-name@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.7.tgz#6d8601fbffe665c894440ab4470bc721dd9131d6" - integrity sha512-U9FcnA821YoILngSmYkW6FjyQe2TyZD5pHt4EVIhmcTkrJw/3KqcrRSxuOo5tFZJi7TE19iDyI1u+weTI7bn2w== +"@babel/plugin-transform-function-name@^7.25.1": + version "7.25.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.1.tgz#b85e773097526c1a4fc4ba27322748643f26fc37" + integrity sha512-TVVJVdW9RKMNgJJlLtHsKDTydjZAbwIsn6ySBPQaEAUU5+gVvlJt/9nRmqVbsV/IBanRjzWoaAQKLoamWVOUuA== dependencies: - "@babel/helper-compilation-targets" "^7.24.7" - "@babel/helper-function-name" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-compilation-targets" "^7.24.8" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/traverse" "^7.25.1" "@babel/plugin-transform-json-strings@^7.24.7": version "7.24.7" @@ -644,12 +641,12 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-json-strings" "^7.8.3" -"@babel/plugin-transform-literals@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.7.tgz#36b505c1e655151a9d7607799a9988fc5467d06c" - integrity sha512-vcwCbb4HDH+hWi8Pqenwnjy+UiklO4Kt1vfspcQYFhJdpthSnW8XvWGyDZWKNVrVbVViI/S7K9PDJZiUmP2fYQ== +"@babel/plugin-transform-literals@^7.25.2": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.2.tgz#deb1ad14fc5490b9a65ed830e025bca849d8b5f3" + integrity sha512-HQI+HcTbm9ur3Z2DkO+jgESMAMcYLuN/A7NRw9juzxAezN9AvqvUTnpKP/9kkYANz6u7dFlAyOu44ejuGySlfw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-transform-logical-assignment-operators@^7.24.7": version "7.24.7" @@ -683,15 +680,24 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/helper-simple-access" "^7.24.7" -"@babel/plugin-transform-modules-systemjs@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.7.tgz#f8012316c5098f6e8dee6ecd58e2bc6f003d0ce7" - integrity sha512-GYQE0tW7YoaN13qFh3O1NCY4MPkUiAH3fiF7UcV/I3ajmDKEdG3l+UOcbAm4zUE3gnvUU+Eni7XrVKo9eO9auw== +"@babel/plugin-transform-modules-commonjs@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.8.tgz#ab6421e564b717cb475d6fff70ae7f103536ea3c" + integrity sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA== dependencies: - "@babel/helper-hoist-variables" "^7.24.7" - "@babel/helper-module-transforms" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-module-transforms" "^7.24.8" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-simple-access" "^7.24.7" + +"@babel/plugin-transform-modules-systemjs@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.0.tgz#8f46cdc5f9e5af74f3bd019485a6cbe59685ea33" + integrity sha512-YPJfjQPDXxyQWg/0+jHKj1llnY5f/R6a0p/vP4lPymxLu7Lvl4k2WMitqi08yxwQcCVUUdG9LCUj4TNEgAp3Jw== + dependencies: + "@babel/helper-module-transforms" "^7.25.0" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/helper-validator-identifier" "^7.24.7" + "@babel/traverse" "^7.25.0" "@babel/plugin-transform-modules-umd@^7.24.7": version "7.24.7" @@ -758,12 +764,12 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-transform-optional-chaining@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.7.tgz#b8f6848a80cf2da98a8a204429bec04756c6d454" - integrity sha512-tK+0N9yd4j+x/4hxF3F0e0fu/VdcxU18y5SevtyM/PCFlQvXbR0Zmlo2eBrKtVipGNFzpq56o8WsIIKcJFUCRQ== +"@babel/plugin-transform-optional-chaining@^7.24.7", "@babel/plugin-transform-optional-chaining@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.8.tgz#bb02a67b60ff0406085c13d104c99a835cdf365d" + integrity sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" "@babel/plugin-syntax-optional-chaining" "^7.8.3" @@ -855,12 +861,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-typeof-symbol@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.7.tgz#f074be466580d47d6e6b27473a840c9f9ca08fb0" - integrity sha512-VtR8hDy7YLB7+Pet9IarXjg/zgCMSF+1mNS/EQEiEaUPoFXCVsHG64SIxcaaI2zJgRiv+YmgaQESUfWAdbjzgg== +"@babel/plugin-transform-typeof-symbol@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.8.tgz#383dab37fb073f5bfe6e60c654caac309f92ba1c" + integrity sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-transform-typescript@^7.24.7": version "7.24.7" @@ -904,18 +910,19 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/preset-env@^7.12.11": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.7.tgz#ff067b4e30ba4a72f225f12f123173e77b987f37" - integrity sha512-1YZNsc+y6cTvWlDHidMBsQZrZfEFjRIo/BZCT906PMdzOyXtSLTgqGdrpcuTDCXyd11Am5uQULtDIcCfnTc8fQ== - dependencies: - "@babel/compat-data" "^7.24.7" - "@babel/helper-compilation-targets" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-validator-option" "^7.24.7" - "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.7" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.7" + version "7.25.3" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.25.3.tgz#0bf4769d84ac51d1073ab4a86f00f30a3a83c67c" + integrity sha512-QsYW7UeAaXvLPX9tdVliMJE7MD7M6MLYVTovRTIwhoYQVFHR1rM4wO8wqAezYi3/BpSD+NzVCZ69R6smWiIi8g== + dependencies: + "@babel/compat-data" "^7.25.2" + "@babel/helper-compilation-targets" "^7.25.2" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-validator-option" "^7.24.8" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.25.3" + "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.25.0" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.25.0" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.7" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.24.7" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.0" "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-class-properties" "^7.12.13" @@ -936,29 +943,30 @@ "@babel/plugin-syntax-top-level-await" "^7.14.5" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" "@babel/plugin-transform-arrow-functions" "^7.24.7" - "@babel/plugin-transform-async-generator-functions" "^7.24.7" + "@babel/plugin-transform-async-generator-functions" "^7.25.0" "@babel/plugin-transform-async-to-generator" "^7.24.7" "@babel/plugin-transform-block-scoped-functions" "^7.24.7" - "@babel/plugin-transform-block-scoping" "^7.24.7" + "@babel/plugin-transform-block-scoping" "^7.25.0" "@babel/plugin-transform-class-properties" "^7.24.7" "@babel/plugin-transform-class-static-block" "^7.24.7" - "@babel/plugin-transform-classes" "^7.24.7" + "@babel/plugin-transform-classes" "^7.25.0" "@babel/plugin-transform-computed-properties" "^7.24.7" - "@babel/plugin-transform-destructuring" "^7.24.7" + "@babel/plugin-transform-destructuring" "^7.24.8" "@babel/plugin-transform-dotall-regex" "^7.24.7" "@babel/plugin-transform-duplicate-keys" "^7.24.7" + "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.25.0" "@babel/plugin-transform-dynamic-import" "^7.24.7" "@babel/plugin-transform-exponentiation-operator" "^7.24.7" "@babel/plugin-transform-export-namespace-from" "^7.24.7" "@babel/plugin-transform-for-of" "^7.24.7" - "@babel/plugin-transform-function-name" "^7.24.7" + "@babel/plugin-transform-function-name" "^7.25.1" "@babel/plugin-transform-json-strings" "^7.24.7" - "@babel/plugin-transform-literals" "^7.24.7" + "@babel/plugin-transform-literals" "^7.25.2" "@babel/plugin-transform-logical-assignment-operators" "^7.24.7" "@babel/plugin-transform-member-expression-literals" "^7.24.7" "@babel/plugin-transform-modules-amd" "^7.24.7" - "@babel/plugin-transform-modules-commonjs" "^7.24.7" - "@babel/plugin-transform-modules-systemjs" "^7.24.7" + "@babel/plugin-transform-modules-commonjs" "^7.24.8" + "@babel/plugin-transform-modules-systemjs" "^7.25.0" "@babel/plugin-transform-modules-umd" "^7.24.7" "@babel/plugin-transform-named-capturing-groups-regex" "^7.24.7" "@babel/plugin-transform-new-target" "^7.24.7" @@ -967,7 +975,7 @@ "@babel/plugin-transform-object-rest-spread" "^7.24.7" "@babel/plugin-transform-object-super" "^7.24.7" "@babel/plugin-transform-optional-catch-binding" "^7.24.7" - "@babel/plugin-transform-optional-chaining" "^7.24.7" + "@babel/plugin-transform-optional-chaining" "^7.24.8" "@babel/plugin-transform-parameters" "^7.24.7" "@babel/plugin-transform-private-methods" "^7.24.7" "@babel/plugin-transform-private-property-in-object" "^7.24.7" @@ -978,7 +986,7 @@ "@babel/plugin-transform-spread" "^7.24.7" "@babel/plugin-transform-sticky-regex" "^7.24.7" "@babel/plugin-transform-template-literals" "^7.24.7" - "@babel/plugin-transform-typeof-symbol" "^7.24.7" + "@babel/plugin-transform-typeof-symbol" "^7.24.8" "@babel/plugin-transform-unicode-escapes" "^7.24.7" "@babel/plugin-transform-unicode-property-regex" "^7.24.7" "@babel/plugin-transform-unicode-regex" "^7.24.7" @@ -987,7 +995,7 @@ babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.4" babel-plugin-polyfill-regenerator "^0.6.1" - core-js-compat "^3.31.0" + core-js-compat "^3.37.1" semver "^6.3.1" "@babel/preset-modules@0.1.6-no-external-plugins": @@ -1016,13 +1024,22 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.7.tgz#f4f0d5530e8dbdf59b3451b9b3e594b6ba082e12" - integrity sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw== + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.0.tgz#3af9a91c1b739c569d5d80cc917280919c544ecb" + integrity sha512-7dRy4DwXwtzBrPbZflqxnvfxLF8kdZXPkhymtDeFoFqE6ldzjQFgYTtYIFARcLEYDrqfBfYcZt1WqFxRoyC9Rw== dependencies: regenerator-runtime "^0.14.0" -"@babel/template@^7.24.7", "@babel/template@^7.3.3": +"@babel/template@^7.24.7", "@babel/template@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.0.tgz#e733dc3134b4fede528c15bc95e89cb98c52592a" + integrity sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q== + dependencies: + "@babel/code-frame" "^7.24.7" + "@babel/parser" "^7.25.0" + "@babel/types" "^7.25.0" + +"@babel/template@^7.3.3": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.7.tgz#02efcee317d0609d2c07117cb70ef8fb17ab7315" integrity sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig== @@ -1031,23 +1048,20 @@ "@babel/parser" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/traverse@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.7.tgz#de2b900163fa741721ba382163fe46a936c40cf5" - integrity sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA== +"@babel/traverse@^7.24.7", "@babel/traverse@^7.24.8", "@babel/traverse@^7.25.0", "@babel/traverse@^7.25.1", "@babel/traverse@^7.25.2", "@babel/traverse@^7.25.3": + version "7.25.3" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.3.tgz#f1b901951c83eda2f3e29450ce92743783373490" + integrity sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ== dependencies: "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.24.7" - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-function-name" "^7.24.7" - "@babel/helper-hoist-variables" "^7.24.7" - "@babel/helper-split-export-declaration" "^7.24.7" - "@babel/parser" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/generator" "^7.25.0" + "@babel/parser" "^7.25.3" + "@babel/template" "^7.25.0" + "@babel/types" "^7.25.2" debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.24.7", "@babel/types@^7.3.3", "@babel/types@^7.4.4": +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.3.3": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.7.tgz#6027fe12bc1aa724cd32ab113fb7f1988f1f66f2" integrity sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q== @@ -1056,6 +1070,15 @@ "@babel/helper-validator-identifier" "^7.24.7" to-fast-properties "^2.0.0" +"@babel/types@^7.24.7", "@babel/types@^7.24.8", "@babel/types@^7.25.0", "@babel/types@^7.25.2", "@babel/types@^7.4.4": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.2.tgz#55fb231f7dc958cd69ea141a4c2997e819646125" + integrity sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q== + dependencies: + "@babel/helper-string-parser" "^7.24.8" + "@babel/helper-validator-identifier" "^7.24.7" + to-fast-properties "^2.0.0" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -2191,7 +2214,7 @@ babel-plugin-polyfill-corejs2@^0.4.10: "@babel/helper-define-polyfill-provider" "^0.6.2" semver "^6.3.1" -babel-plugin-polyfill-corejs3@^0.10.1, babel-plugin-polyfill-corejs3@^0.10.4: +babel-plugin-polyfill-corejs3@^0.10.1: version "0.10.4" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz#789ac82405ad664c20476d0233b485281deb9c77" integrity sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg== @@ -2199,6 +2222,14 @@ babel-plugin-polyfill-corejs3@^0.10.1, babel-plugin-polyfill-corejs3@^0.10.4: "@babel/helper-define-polyfill-provider" "^0.6.1" core-js-compat "^3.36.1" +babel-plugin-polyfill-corejs3@^0.10.4: + version "0.10.6" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz#2deda57caef50f59c525aeb4964d3b2f867710c7" + integrity sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.6.2" + core-js-compat "^3.38.0" + babel-plugin-polyfill-regenerator@^0.6.1: version "0.6.2" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz#addc47e240edd1da1058ebda03021f382bba785e" @@ -2276,14 +2307,14 @@ braces@^3.0.3, braces@~3.0.2: dependencies: fill-range "^7.1.1" -browserslist@^4.22.2, browserslist@^4.23.0: - version "4.23.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.2.tgz#244fe803641f1c19c28c48c4b6ec9736eb3d32ed" - integrity sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA== +browserslist@^4.23.0, browserslist@^4.23.1, browserslist@^4.23.3: + version "4.23.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.3.tgz#debb029d3c93ebc97ffbc8d9cbb03403e227c800" + integrity sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA== dependencies: - caniuse-lite "^1.0.30001640" - electron-to-chromium "^1.4.820" - node-releases "^2.0.14" + caniuse-lite "^1.0.30001646" + electron-to-chromium "^1.5.4" + node-releases "^2.0.18" update-browserslist-db "^1.1.0" bs58@^6.0.0: @@ -2336,10 +2367,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001640: - version "1.0.30001641" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001641.tgz#3572862cd18befae3f637f2a1101cc033c6782ac" - integrity sha512-Phv5thgl67bHYo1TtMY/MurjkHhV4EDaCosezRXgZ8jzA/Ub+wjxAvbGvjoFENStinwi5kCyOYV3mi5tOGykwA== +caniuse-lite@^1.0.30001646: + version "1.0.30001651" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001651.tgz#52de59529e8b02b1aedcaaf5c05d9e23c0c28138" + integrity sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg== chalk@5.2.0: version "5.2.0" @@ -2525,7 +2556,14 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -core-js-compat@^3.31.0, core-js-compat@^3.36.1, core-js-compat@^3.37.0: +core-js-compat@^3.36.1, core-js-compat@^3.37.1, core-js-compat@^3.38.0: + version "3.38.1" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.38.1.tgz#2bc7a298746ca5a7bcb9c164bcb120f2ebc09a09" + integrity sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw== + dependencies: + browserslist "^4.23.3" + +core-js-compat@^3.37.0: version "3.37.1" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.37.1.tgz#c844310c7852f4bdf49b8d339730b97e17ff09ee" integrity sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg== @@ -2748,10 +2786,10 @@ easy-table@1.2.0: optionalDependencies: wcwidth "^1.0.1" -electron-to-chromium@^1.4.820: - version "1.4.823" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.823.tgz#38587f7aa55bed14930f04091dfc65c39a3d8bd7" - integrity sha512-4h+oPeAiGQOHFyUJOqpoEcPj/xxlicxBzOErVeYVMMmAiXUXsGpsFd0QXBMaUUbnD8hhSfLf9uw+MlsoIA7j5w== +electron-to-chromium@^1.5.4: + version "1.5.13" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz#1abf0410c5344b2b829b7247e031f02810d442e6" + integrity sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q== emittery@^0.13.1: version "0.13.1" @@ -4914,10 +4952,10 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-releases@^2.0.14: - version "2.0.14" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" - integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== +node-releases@^2.0.18: + version "2.0.18" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" + integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== normalize-package-data@^2.5.0: version "2.5.0" From 42510022a1cf0b2c9a9d9e809f0e28421471023f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 21 Aug 2024 16:08:24 +0100 Subject: [PATCH 395/595] Update dependency typescript to v5.5.4 (#4365) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 2c513a4c90a..7642f9d64a3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6163,9 +6163,9 @@ typedoc@^0.26.0: yaml "^2.4.5" typescript@^5.3.3: - version "5.5.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.3.tgz#e1b0a3c394190838a0b168e771b0ad56a0af0faa" - integrity sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ== + version "5.5.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba" + integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== uc.micro@^2.0.0, uc.micro@^2.1.0: version "2.1.0" From 17b6e598195aec3d38f2d02b7e1cf937430641a2 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 21 Aug 2024 16:47:42 +0100 Subject: [PATCH 396/595] Update shogo82148/actions-upload-release-asset digest to 6d4fd50 (#4366) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/actions/sign-release-tarball/action.yml | 2 +- .github/actions/upload-release-assets/action.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/sign-release-tarball/action.yml b/.github/actions/sign-release-tarball/action.yml index e249b92dd09..1ac666c4008 100644 --- a/.github/actions/sign-release-tarball/action.yml +++ b/.github/actions/sign-release-tarball/action.yml @@ -22,7 +22,7 @@ runs: - name: Upload tarball signature if: ${{ inputs.upload-url }} - uses: shogo82148/actions-upload-release-asset@8f032eff0255912cc9c8455797fd6d72f25c7ab7 # v1 + uses: shogo82148/actions-upload-release-asset@6d4fd50e333ee797e83ae380e6bc55b048baec41 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ env.VERSION }}.tar.gz.asc diff --git a/.github/actions/upload-release-assets/action.yml b/.github/actions/upload-release-assets/action.yml index b11be5a8a86..ef95a4a891e 100644 --- a/.github/actions/upload-release-assets/action.yml +++ b/.github/actions/upload-release-assets/action.yml @@ -29,13 +29,13 @@ runs: - name: Upload asset signatures if: inputs.gpg-fingerprint - uses: shogo82148/actions-upload-release-asset@8f032eff0255912cc9c8455797fd6d72f25c7ab7 # v1 + uses: shogo82148/actions-upload-release-asset@6d4fd50e333ee797e83ae380e6bc55b048baec41 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ inputs.asset-path }}.asc - name: Upload assets - uses: shogo82148/actions-upload-release-asset@8f032eff0255912cc9c8455797fd6d72f25c7ab7 # v1 + uses: shogo82148/actions-upload-release-asset@6d4fd50e333ee797e83ae380e6bc55b048baec41 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ inputs.asset-path }} From 31c4786a96ff8d9d2be1220fb77b248bc6241514 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 21 Aug 2024 17:14:39 +0100 Subject: [PATCH 397/595] Update dependency fetch-mock to v11 (#4369) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/package.json b/package.json index 01fef13aa7f..d0cfee9d96f 100644 --- a/package.json +++ b/package.json @@ -107,7 +107,7 @@ "eslint-plugin-tsdoc": "^0.3.0", "eslint-plugin-unicorn": "^54.0.0", "fake-indexeddb": "^5.0.2", - "fetch-mock": "10.1.1", + "fetch-mock": "11.1.1", "fetch-mock-jest": "^1.5.1", "husky": "^9.0.0", "jest": "^29.0.0", diff --git a/yarn.lock b/yarn.lock index 7642f9d64a3..9f93100cbe9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1679,6 +1679,11 @@ resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.3.tgz#a8ef894305af28d1fc6d2dfdfc98e899591ea529" integrity sha512-trOc4AAUThEz9hapPtSd7wf5tiQKvTtu5b371UxXdTuqzIh0ArcRspRP0i0Viu+LXstIQ1z96t1nsPxT9ol01g== +"@types/glob-to-regexp@^0.4.4": + version "0.4.4" + resolved "https://registry.yarnpkg.com/@types/glob-to-regexp/-/glob-to-regexp-0.4.4.tgz#409e71290253203185b1ea8a3d6ea406a4bdc902" + integrity sha512-nDKoaKJYbnn1MZxUY0cA1bPmmgZbg0cTq7Rh13d0KWYNOiKbqoR+2d89SnRPszGh7ROzSwZ/GOjZ4jPbmmZ6Eg== + "@types/graceful-fs@^4.1.3": version "4.1.9" resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4" @@ -3348,14 +3353,14 @@ fetch-mock-jest@^1.5.1: dependencies: fetch-mock "^9.11.0" -fetch-mock@10.1.1: - version "10.1.1" - resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-10.1.1.tgz#09f5f14aff5587095fc1632c271523a5aff1e79c" - integrity sha512-R6MwxuGwlUe0K6GzdLY1Wa9voX/GbUBDZjNHBsvlBhrpXurCYpQN4EW0iFCmtWddDTuS0ubR93OtFSgy9E/L2A== +fetch-mock@11.1.1: + version "11.1.1" + resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-11.1.1.tgz#33440be6d184f52f1d8bc48a15b9e631589fd5e2" + integrity sha512-2lZ42bnMar9MBfNR0nza5wM4ZDwLxb+ZbNR4sEvpqOOBzZ+V6cZVVhLBHj8+AAEInF4vp2/tbRM8WlGX5mPhiA== dependencies: - debug "^4.1.1" + "@types/glob-to-regexp" "^0.4.4" dequal "^2.0.3" - globrex "^0.1.2" + glob-to-regexp "^0.4.1" is-subset "^0.1.1" regexparam "^3.0.0" @@ -3549,7 +3554,7 @@ glob-parent@^6.0.2: dependencies: is-glob "^4.0.3" -glob-to-regexp@^0.4.0: +glob-to-regexp@^0.4.0, glob-to-regexp@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== @@ -3615,11 +3620,6 @@ globby@^11.1.0: merge2 "^1.4.1" slash "^3.0.0" -globrex@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz#dd5d9ec826232730cd6793a5e33a9302985e6098" - integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== - gopd@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" From ee94e93354b9ed34fc82c2d1f8b4da7114ab6aee Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Wed, 21 Aug 2024 19:31:05 +0100 Subject: [PATCH 398/595] set entrypoints to use ./lib rather than ./src (#4357) Currently, we replace the entrypoints in package.json during the release cycle. I think. historically, this was done to make matrix-react-sdk and element-web development easier, but neither of those projects actually use these entrypoints (instead they import from `src`). Accordingly, I think the switcheroo is unnecessary; furthermore it causes a whole bunch of confusion by making the development environment different from the release environment, and it complicates our CI and release process. In short, the switcheroo has to die. --- package.json | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index d0cfee9d96f..4e340eaaee4 100644 --- a/package.json +++ b/package.json @@ -32,13 +32,9 @@ "matrix-org" ], "type": "module", - "main": "./src/index.ts", - "browser": "./src/browser-index.ts", - "matrix_src_main": "./src/index.ts", - "matrix_src_browser": "./src/browser-index.ts", - "matrix_lib_main": "./lib/index.js", - "matrix_lib_browser": "./lib/browser-index.js", - "matrix_lib_typings": "./lib/index.d.ts", + "main": "./lib/index.js", + "browser": "./lib/browser-index.js", + "typings": "./lib/index.d.ts", "author": "matrix.org", "license": "Apache-2.0", "files": [ From 6a21d812ab8dd6ec3fcaae91d8698ba4f80f73e3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 22 Aug 2024 11:41:47 +0100 Subject: [PATCH 399/595] Update typescript-eslint monorepo to v7.18.0 (#4368) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 105 ++++++++++++++++++++++++++---------------------------- 1 file changed, 50 insertions(+), 55 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9f93100cbe9..c700d11e78d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1806,38 +1806,38 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^7.0.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.16.0.tgz#b3563927341eca15124a18c6f94215f779f5c02a" - integrity sha512-py1miT6iQpJcs1BiJjm54AMzeuMPBSPuKPlnT8HlfudbcS5rYeX5jajpLf3mrdRh9dA/Ec2FVUY0ifeVNDIhZw== + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.18.0.tgz#b16d3cf3ee76bf572fdf511e79c248bdec619ea3" + integrity sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.16.0" - "@typescript-eslint/type-utils" "7.16.0" - "@typescript-eslint/utils" "7.16.0" - "@typescript-eslint/visitor-keys" "7.16.0" + "@typescript-eslint/scope-manager" "7.18.0" + "@typescript-eslint/type-utils" "7.18.0" + "@typescript-eslint/utils" "7.18.0" + "@typescript-eslint/visitor-keys" "7.18.0" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" "@typescript-eslint/parser@^7.0.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.16.0.tgz#53fae8112f8c912024aea7b499cf7374487af6d8" - integrity sha512-ar9E+k7CU8rWi2e5ErzQiC93KKEFAXA2Kky0scAlPcxYblLt8+XZuHUZwlyfXILyQa95P6lQg+eZgh/dDs3+Vw== - dependencies: - "@typescript-eslint/scope-manager" "7.16.0" - "@typescript-eslint/types" "7.16.0" - "@typescript-eslint/typescript-estree" "7.16.0" - "@typescript-eslint/visitor-keys" "7.16.0" + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.18.0.tgz#83928d0f1b7f4afa974098c64b5ce6f9051f96a0" + integrity sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg== + dependencies: + "@typescript-eslint/scope-manager" "7.18.0" + "@typescript-eslint/types" "7.18.0" + "@typescript-eslint/typescript-estree" "7.18.0" + "@typescript-eslint/visitor-keys" "7.18.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.16.0.tgz#eb0757af5720c9c53c8010d7a0355ae27e17b7e5" - integrity sha512-8gVv3kW6n01Q6TrI1cmTZ9YMFi3ucDT7i7aI5lEikk2ebk1AEjrwX8MDTdaX5D7fPXMBLvnsaa0IFTAu+jcfOw== +"@typescript-eslint/scope-manager@7.18.0": + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz#c928e7a9fc2c0b3ed92ab3112c614d6bd9951c83" + integrity sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA== dependencies: - "@typescript-eslint/types" "7.16.0" - "@typescript-eslint/visitor-keys" "7.16.0" + "@typescript-eslint/types" "7.18.0" + "@typescript-eslint/visitor-keys" "7.18.0" "@typescript-eslint/scope-manager@8.2.0": version "8.2.0" @@ -1847,33 +1847,33 @@ "@typescript-eslint/types" "8.2.0" "@typescript-eslint/visitor-keys" "8.2.0" -"@typescript-eslint/type-utils@7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.16.0.tgz#ec52b1932b8fb44a15a3e20208e0bd49d0b6bd00" - integrity sha512-j0fuUswUjDHfqV/UdW6mLtOQQseORqfdmoBNDFOqs9rvNVR2e+cmu6zJu/Ku4SDuqiJko6YnhwcL8x45r8Oqxg== +"@typescript-eslint/type-utils@7.18.0": + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.18.0.tgz#2165ffaee00b1fbbdd2d40aa85232dab6998f53b" + integrity sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA== dependencies: - "@typescript-eslint/typescript-estree" "7.16.0" - "@typescript-eslint/utils" "7.16.0" + "@typescript-eslint/typescript-estree" "7.18.0" + "@typescript-eslint/utils" "7.18.0" debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.16.0.tgz#60a19d7e7a6b1caa2c06fac860829d162a036ed2" - integrity sha512-fecuH15Y+TzlUutvUl9Cc2XJxqdLr7+93SQIbcZfd4XRGGKoxyljK27b+kxKamjRkU7FYC6RrbSCg0ALcZn/xw== +"@typescript-eslint/types@7.18.0": + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.18.0.tgz#b90a57ccdea71797ffffa0321e744f379ec838c9" + integrity sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ== "@typescript-eslint/types@8.2.0": version "8.2.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.2.0.tgz#dfe9895a2812f7c6bf7af863054c22a67060420c" integrity sha512-6a9QSK396YqmiBKPkJtxsgZZZVjYQ6wQ/TlI0C65z7vInaETuC6HAHD98AGLC8DyIPqHytvNuS8bBVvNLKyqvQ== -"@typescript-eslint/typescript-estree@7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.16.0.tgz#98ac779d526fab2a781e5619c9250f3e33867c09" - integrity sha512-a5NTvk51ZndFuOLCh5OaJBELYc2O3Zqxfl3Js78VFE1zE46J2AaVuW+rEbVkQznjkmlzWsUI15BG5tQMixzZLw== +"@typescript-eslint/typescript-estree@7.18.0": + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz#b5868d486c51ce8f312309ba79bdb9f331b37931" + integrity sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA== dependencies: - "@typescript-eslint/types" "7.16.0" - "@typescript-eslint/visitor-keys" "7.16.0" + "@typescript-eslint/types" "7.18.0" + "@typescript-eslint/visitor-keys" "7.18.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -1895,15 +1895,15 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.16.0.tgz#b38dc0ce1778e8182e227c98d91d3418449aa17f" - integrity sha512-PqP4kP3hb4r7Jav+NiRCntlVzhxBNWq6ZQ+zQwII1y/G/1gdIPeYDCKr2+dH6049yJQsWZiHU6RlwvIFBXXGNA== +"@typescript-eslint/utils@7.18.0": + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.18.0.tgz#bca01cde77f95fc6a8d5b0dbcbfb3d6ca4be451f" + integrity sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.16.0" - "@typescript-eslint/types" "7.16.0" - "@typescript-eslint/typescript-estree" "7.16.0" + "@typescript-eslint/scope-manager" "7.18.0" + "@typescript-eslint/types" "7.18.0" + "@typescript-eslint/typescript-estree" "7.18.0" "@typescript-eslint/utils@^6.0.0 || ^7.0.0 || ^8.0.0": version "8.2.0" @@ -1915,12 +1915,12 @@ "@typescript-eslint/types" "8.2.0" "@typescript-eslint/typescript-estree" "8.2.0" -"@typescript-eslint/visitor-keys@7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.16.0.tgz#a1d99fa7a3787962d6e0efd436575ef840e23b06" - integrity sha512-rMo01uPy9C7XxG7AFsxa8zLnWXTF8N3PYclekWSrurvhwiw1eW88mrKiAYe6s53AUY57nTRz8dJsuuXdkAhzCg== +"@typescript-eslint/visitor-keys@7.18.0": + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz#0564629b6124d67607378d0f0332a0495b25e7d7" + integrity sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg== dependencies: - "@typescript-eslint/types" "7.16.0" + "@typescript-eslint/types" "7.18.0" eslint-visitor-keys "^3.4.3" "@typescript-eslint/visitor-keys@8.2.0": @@ -3739,16 +3739,11 @@ iconv-lite@0.6.3: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -ignore@^5.1.8, ignore@^5.2.0: +ignore@^5.1.8, ignore@^5.2.0, ignore@^5.3.1: version "5.3.2" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== -ignore@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" - integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== - import-fresh@^3.2.1: version "3.3.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" From ab5f32f9840d4ccf62c6f6a1448ea392c0c5a682 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 22 Aug 2024 11:46:01 +0100 Subject: [PATCH 400/595] Update typedoc (#4367) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 41 ++++++++++++++++++----------------------- 1 file changed, 18 insertions(+), 23 deletions(-) diff --git a/yarn.lock b/yarn.lock index c700d11e78d..18da540f501 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1556,10 +1556,10 @@ resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.1.1.tgz#1ec17e2edbec25c8306d424ecfbf13c7de1aaa31" integrity sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA== -"@shikijs/core@1.10.3": - version "1.10.3" - resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.10.3.tgz#f01763b36f08ad3d2ef46cea7e61858d9d9947d6" - integrity sha512-D45PMaBaeDHxww+EkcDQtDAtzv00Gcsp72ukBtaLSmqRvh0WgGMq3Al0rl1QQBZfuneO75NXMIzEZGFitThWbg== +"@shikijs/core@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.14.1.tgz#008f1c4a20ff83fd1672d9e31d76b687862f7511" + integrity sha512-KyHIIpKNaT20FtFPFjCQB5WVSTpLR/n+jQXhWHWVUMm9MaOaG9BGOG0MSyt7yA4+Lm+4c9rTc03tt3nYzeYSfw== dependencies: "@types/hast" "^3.0.4" @@ -1784,9 +1784,9 @@ integrity sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA== "@types/unist@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.2.tgz#6dd61e43ef60b34086287f83683a5c1b2dc53d20" - integrity sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ== + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.3.tgz#acaab0f919ce69cce629c2d4ed2eb4adc1b6c20c" + integrity sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q== "@types/uuid@10": version "10.0.0" @@ -5645,11 +5645,11 @@ shebang-regex@^3.0.0: integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shiki@^1.9.1: - version "1.10.3" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.10.3.tgz#2276fb21a07043b28c5b16001e6a04fef99dbb8f" - integrity sha512-eneCLncGuvPdTutJuLyUGS8QNPAVFO5Trvld2wgEq1e002mwctAhJKeMGWtWVXOIEzmlcLRqcgPSorR6AVzOmQ== + version "1.14.1" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.14.1.tgz#617e62dfbe3a083e46111e22086044fbd7644786" + integrity sha512-FujAN40NEejeXdzPt+3sZ3F2dx1U24BY2XTY01+MG8mbxCiA2XukXdcbyMyLAHJ/1AUUnQd1tZlvIjefWWEJeA== dependencies: - "@shikijs/core" "1.10.3" + "@shikijs/core" "1.14.1" "@types/hast" "^3.0.4" side-channel@^1.0.4: @@ -6137,9 +6137,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-wpywQ95tqGSD6IbYUPMXSKiwnSWboSKdx2y9X6SJQKzQvBqZoz5iiUyDJFixtW8v7+xmrqXFR/B6Wy37FNhVqA== typedoc-plugin-mdn-links@^3.0.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.3.tgz#0e54c2583f0736e0d2956ec912efb69a73ad414d" - integrity sha512-hz22UgFuzdtgpBXet2dxKf9d2HVixL2VcE9Ke1+X1Nu8W8jSGIB2awIA6HFVsD0vk1OLe3ehU0ibyD5sN7wh4w== + version "3.2.9" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.9.tgz#2ee846685e1e3d9e5f76445216e479566c9a3198" + integrity sha512-+bjuG/rPyeRBGA/ILk8u2j7KksohicCsUd+qcTQitOaS9GLvN69zcQlCJU1KqcPHpt3fTqJnVmyhMRe5F+ig7w== typedoc-plugin-missing-exports@^3.0.0: version "3.0.0" @@ -6147,9 +6147,9 @@ typedoc-plugin-missing-exports@^3.0.0: integrity sha512-R7D8fYrK34mBFZSlF1EqJxfqiUSlQSmyrCiQgTQD52nNm6+kUtqwiaqaNkuJ2rA2wBgWFecUA8JzHT7x2r7ePg== typedoc@^0.26.0: - version "0.26.4" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.4.tgz#7e83047369a29a710d429dac20996680cae9a314" - integrity sha512-FlW6HpvULDKgc3rK04V+nbFyXogPV88hurarDPOjuuB5HAwuAlrCMQ5NeH7Zt68a/ikOKu6Z/0hFXAeC9xPccQ== + version "0.26.6" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.6.tgz#9cb3d6f0ed5070f86af169c3f88ca2c9b7031f59" + integrity sha512-SfEU3SH3wHNaxhFPjaZE2kNl/NFtLNW5c1oHsg7mti7GjmUj1Roq6osBQeMd+F4kL0BoRBBr8gQAuqBlfFu8LA== dependencies: lunr "^2.3.9" markdown-it "^14.1.0" @@ -6467,12 +6467,7 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yaml@^2.4.5: - version "2.4.5" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.4.5.tgz#60630b206dd6d84df97003d33fc1ddf6296cca5e" - integrity sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg== - -yaml@~2.5.0: +yaml@^2.4.5, yaml@~2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.0.tgz#c6165a721cf8000e91c36490a41d7be25176cf5d" integrity sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw== From a72a1b294a1dfb936e1cdbf435967f9f48a73372 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 22 Aug 2024 12:22:35 +0100 Subject: [PATCH 401/595] Update dependency eslint-plugin-jsdoc to v50 (#4370) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 32 ++++++++++++++++---------------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/package.json b/package.json index 4e340eaaee4..13547f2b1b3 100644 --- a/package.json +++ b/package.json @@ -98,7 +98,7 @@ "eslint-import-resolver-typescript": "^3.5.1", "eslint-plugin-import": "^2.26.0", "eslint-plugin-jest": "^28.0.0", - "eslint-plugin-jsdoc": "^48.0.0", + "eslint-plugin-jsdoc": "^50.0.0", "eslint-plugin-matrix-org": "^1.0.0", "eslint-plugin-tsdoc": "^0.3.0", "eslint-plugin-unicorn": "^54.0.0", diff --git a/yarn.lock b/yarn.lock index 18da540f501..0943d45f908 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1100,14 +1100,14 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@es-joy/jsdoccomment@~0.46.0": - version "0.46.0" - resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.46.0.tgz#47a2ee4bfc0081f252e058272dfab680aaed464d" - integrity sha512-C3Axuq1xd/9VqFZpW4YAzOx5O9q/LP46uIQy/iNDpHG3fmPa6TBtvfglMCs3RBiBxAIi0Go97r8+jvTt55XMyQ== +"@es-joy/jsdoccomment@~0.48.0": + version "0.48.0" + resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.48.0.tgz#5d9dc1a295cf5d1ed224dffafb4800d5c7206c27" + integrity sha512-G6QUWIcC+KvSwXNsJyDTHvqUdNoAVJPPgkc3+Uk4WBKqZvoXhlvazOgm9aL0HwihJLQf0l+tOE2UFzXBqCqgDw== dependencies: comment-parser "1.4.1" esquery "^1.6.0" - jsdoc-type-pratt-parser "~4.0.0" + jsdoc-type-pratt-parser "~4.1.0" "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": version "4.4.0" @@ -2660,7 +2660,7 @@ data-view-byte-offset@^1.0.0: es-errors "^1.3.0" is-data-view "^1.0.1" -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@~4.3.6: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.6, debug@~4.3.6: version "4.3.6" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.6.tgz#2ab2c38fbaffebf8aa95fdfe6d88438c7a13c52b" integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== @@ -3050,15 +3050,15 @@ eslint-plugin-jest@^28.0.0: dependencies: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0 || ^8.0.0" -eslint-plugin-jsdoc@^48.0.0: - version "48.11.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.11.0.tgz#7c8dae6ce0d814aff54b87fdb808f02635691ade" - integrity sha512-d12JHJDPNo7IFwTOAItCeJY1hcqoIxE0lHA8infQByLilQ9xkqrRa6laWCnsuCrf+8rUnvxXY1XuTbibRBNylA== +eslint-plugin-jsdoc@^50.0.0: + version "50.2.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.2.tgz#151e63c8bc245ea8b2357d4229392a5b993827b0" + integrity sha512-i0ZMWA199DG7sjxlzXn5AeYZxpRfMJjDPUl7lL9eJJX8TPRoIaxJU4ys/joP5faM5AXE1eqW/dslCj3uj4Nqpg== dependencies: - "@es-joy/jsdoccomment" "~0.46.0" + "@es-joy/jsdoccomment" "~0.48.0" are-docs-informative "^0.0.2" comment-parser "1.4.1" - debug "^4.3.5" + debug "^4.3.6" escape-string-regexp "^4.0.0" espree "^10.1.0" esquery "^1.6.0" @@ -4517,10 +4517,10 @@ js-yaml@^4.1.0: dependencies: argparse "^2.0.1" -jsdoc-type-pratt-parser@~4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz#136f0571a99c184d84ec84662c45c29ceff71114" - integrity sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ== +jsdoc-type-pratt-parser@~4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.1.0.tgz#ff6b4a3f339c34a6c188cbf50a16087858d22113" + integrity sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg== jsdom@^20.0.0: version "20.0.3" From 8d44f9d66515fa1150de42390d8805d479aecd75 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 22 Aug 2024 13:32:26 +0100 Subject: [PATCH 402/595] Update dependency eslint-plugin-unicorn to v55 (#4371) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 35 ++++++++++------------------------- 2 files changed, 11 insertions(+), 26 deletions(-) diff --git a/package.json b/package.json index 13547f2b1b3..460cc7b485e 100644 --- a/package.json +++ b/package.json @@ -101,7 +101,7 @@ "eslint-plugin-jsdoc": "^50.0.0", "eslint-plugin-matrix-org": "^1.0.0", "eslint-plugin-tsdoc": "^0.3.0", - "eslint-plugin-unicorn": "^54.0.0", + "eslint-plugin-unicorn": "^55.0.0", "fake-indexeddb": "^5.0.2", "fetch-mock": "11.1.1", "fetch-mock-jest": "^1.5.1", diff --git a/yarn.lock b/yarn.lock index 0943d45f908..b259daa83dc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1136,21 +1136,6 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/eslintrc@^3.0.2": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.1.0.tgz#dbd3482bfd91efa663cbe7aa1f506839868207b6" - integrity sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ== - dependencies: - ajv "^6.12.4" - debug "^4.3.2" - espree "^10.0.1" - globals "^14.0.0" - ignore "^5.2.0" - import-fresh "^3.2.1" - js-yaml "^4.1.0" - minimatch "^3.1.2" - strip-json-comments "^3.1.1" - "@eslint/js@8.57.0": version "8.57.0" resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f" @@ -3080,18 +3065,18 @@ eslint-plugin-tsdoc@^0.3.0: "@microsoft/tsdoc" "0.15.0" "@microsoft/tsdoc-config" "0.17.0" -eslint-plugin-unicorn@^54.0.0: - version "54.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-54.0.0.tgz#ce3ea853e8fd7ca2bda2fd6065bf065adb5d8b6d" - integrity sha512-XxYLRiYtAWiAjPv6z4JREby1TAE2byBC7wlh0V4vWDCpccOSU1KovWV//jqPXF6bq3WKxqX9rdjoRQ1EhdmNdQ== +eslint-plugin-unicorn@^55.0.0: + version "55.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-55.0.0.tgz#e2aeb397914799895702480970e7d148df5bcc7b" + integrity sha512-n3AKiVpY2/uDcGrS3+QsYDkjPfaOrNrsfQxU9nt5nitd9KuvVXrfAvgCO9DYPSfap+Gqjw9EOrXIsBp5tlHZjA== dependencies: "@babel/helper-validator-identifier" "^7.24.5" "@eslint-community/eslint-utils" "^4.4.0" - "@eslint/eslintrc" "^3.0.2" ci-info "^4.0.0" clean-regexp "^1.0.0" core-js-compat "^3.37.0" esquery "^1.5.0" + globals "^15.7.0" indent-string "^4.0.0" is-builtin-module "^3.2.1" jsesc "^3.0.2" @@ -3182,7 +3167,7 @@ eslint@8.57.0: strip-ansi "^6.0.1" text-table "^0.2.0" -espree@^10.0.1, espree@^10.1.0: +espree@^10.1.0: version "10.1.0" resolved "https://registry.yarnpkg.com/espree/-/espree-10.1.0.tgz#8788dae611574c0f070691f522e4116c5a11fc56" integrity sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA== @@ -3595,10 +3580,10 @@ globals@^13.19.0: dependencies: type-fest "^0.20.2" -globals@^14.0.0: - version "14.0.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e" - integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== +globals@^15.7.0: + version "15.9.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-15.9.0.tgz#e9de01771091ffbc37db5714dab484f9f69ff399" + integrity sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA== globalthis@^1.0.3: version "1.0.4" From 802b996b100f3f6d7c2c393bfa36bc850227351d Mon Sep 17 00:00:00 2001 From: David Baker Date: Fri, 23 Aug 2024 13:46:27 +0100 Subject: [PATCH 403/595] Set web team as codeowner for the scripts dir (#4354) The scripts in here are used in the release, and from the develop branch too (because it's the main branch and github actions does this) so it's critical for the release process. --- .github/CODEOWNERS | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 10870d97175..830c31be497 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -2,6 +2,7 @@ /.github/workflows/** @matrix-org/element-web-team /package.json @matrix-org/element-web-team /yarn.lock @matrix-org/element-web-team +/scripts/** @matrix-org/element-web-team /src/webrtc @matrix-org/element-call-reviewers /src/matrixrtc @matrix-org/element-call-reviewers /spec/*/webrtc @matrix-org/element-call-reviewers From 3f74b9a0cc65d22c10057567f66cd5c588fc2a8f Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 23 Aug 2024 15:00:27 +0100 Subject: [PATCH 404/595] Deprecate unused `CryptoCallbacks` (#4376) --- src/crypto-api/index.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index b3a05172a1b..0c3e6cdb842 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -809,6 +809,8 @@ export interface CryptoCallbacks extends SecretStorageCallbacks { * @param key - private key to store */ cacheSecretStorageKey?: (keyId: string, keyInfo: SecretStorageKeyDescription, key: Uint8Array) => void; + + /** @deprecated: unused with the Rust crypto stack. */ onSecretRequested?: ( userId: string, deviceId: string, @@ -816,10 +818,13 @@ export interface CryptoCallbacks extends SecretStorageCallbacks { secretName: string, deviceTrust: DeviceVerificationStatus, ) => Promise; + + /** @deprecated: unused with the Rust crypto stack. */ getDehydrationKey?: ( keyInfo: SecretStorageKeyDescription, checkFunc: (key: Uint8Array) => void, ) => Promise; + getBackupKey?: () => Promise; } From fe984ede6e28dc31e58621a56c6c4bb2ccf403d8 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Fri, 23 Aug 2024 20:04:22 +0100 Subject: [PATCH 405/595] Use prefixed loggers for MatrixRTC (#4378) --- src/matrixrtc/MatrixRTCSession.ts | 4 +++- src/matrixrtc/MatrixRTCSessionManager.ts | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index c5b73a3fd01..4b26134e728 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger } from "../logger"; +import { logger as rootLogger } from "../logger"; import { TypedEventEmitter } from "../models/typed-event-emitter"; import { EventTimeline } from "../models/event-timeline"; import { Room } from "../models/room"; @@ -39,6 +39,8 @@ import { MatrixEvent } from "../models/event"; import { isLivekitFocusActive } from "./LivekitFocus"; import { ExperimentalGroupCallRoomMemberState } from "../webrtc/groupCall"; +const logger = rootLogger.getChild("MatrixRTCSession"); + const MEMBERSHIP_EXPIRY_TIME = 60 * 60 * 1000; const MEMBER_EVENT_CHECK_PERIOD = 2 * 60 * 1000; // How often we check to see if we need to re-send our member event const CALL_MEMBER_EVENT_RETRY_DELAY_MIN = 3000; diff --git a/src/matrixrtc/MatrixRTCSessionManager.ts b/src/matrixrtc/MatrixRTCSessionManager.ts index 22480cffc9f..d59cee218ac 100644 --- a/src/matrixrtc/MatrixRTCSessionManager.ts +++ b/src/matrixrtc/MatrixRTCSessionManager.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger } from "../logger"; +import { logger as rootLogger } from "../logger"; import { MatrixClient, ClientEvent } from "../client"; import { TypedEventEmitter } from "../models/typed-event-emitter"; import { Room, RoomEvent } from "../models/room"; @@ -23,6 +23,8 @@ import { MatrixEvent } from "../models/event"; import { MatrixRTCSession } from "./MatrixRTCSession"; import { EventType } from "../@types/event"; +const logger = rootLogger.getChild("MatrixRTCSessionManager"); + export enum MatrixRTCSessionManagerEvents { // A member has joined the MatrixRTC session, creating an active session in a room where there wasn't previously SessionStarted = "session_started", From 2f8b05b0da690e33f22d0795bcb7cb0d259b36d4 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 27 Aug 2024 12:37:46 +0000 Subject: [PATCH 406/595] v34.4.0 --- CHANGELOG.md | 14 ++++++++++++++ package.json | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 321dba96d17..3987506cceb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +Changes in [34.4.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.4.0) (2024-08-27) +================================================================================================== +## ✨ Features + +* Use non-legacy calls if any are found ([#4337](https://github.com/matrix-org/matrix-js-sdk/pull/4337)). Contributed by @AndrewFerr. + +## 🐛 Bug Fixes + +* Retry event decryption failures on first failure ([#4346](https://github.com/matrix-org/matrix-js-sdk/pull/4346)). Contributed by @hughns. +* Ensure "type" = "module" ES declaration in pre-release.sh ([#4350](https://github.com/matrix-org/matrix-js-sdk/pull/4350)). Contributed by @BLCK-B. +* Handle MatrixRTC encryption keys arriving out of order ([#4345](https://github.com/matrix-org/matrix-js-sdk/pull/4345)). Contributed by @hughns. +* Resend MatrixRTC encryption keys if a membership has changed ([#4343](https://github.com/matrix-org/matrix-js-sdk/pull/4343)). Contributed by @hughns. + + Changes in [34.3.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.3.1) (2024-08-20) ================================================================================================== # Security diff --git a/package.json b/package.json index 73e97526a9c..c80dcd3750c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.4.0-rc.1", + "version": "34.4.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From e6acfdf275b10601dab9939a16080b97a80ba16e Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 28 Aug 2024 11:40:16 +0100 Subject: [PATCH 407/595] Rename merge release notes script to cjs (#4361) and update the corresponding workflow file --- .github/workflows/release-drafter-workflow.yml | 2 +- .../release/{merge-release-notes.js => merge-release-notes.cjs} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename scripts/release/{merge-release-notes.js => merge-release-notes.cjs} (100%) diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index b61bce064a9..052d8473912 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -56,7 +56,7 @@ jobs: script: | const { RELEASE_ID: releaseId, DEPENDENCY, VERSION } = process.env; const { owner, repo } = context.repo; - const script = require("./.action-repo/scripts/release/merge-release-notes.js"); + const script = require("./.action-repo/scripts/release/merge-release-notes.cjs"); let deps = []; if (DEPENDENCY.includes("/")) { diff --git a/scripts/release/merge-release-notes.js b/scripts/release/merge-release-notes.cjs similarity index 100% rename from scripts/release/merge-release-notes.js rename to scripts/release/merge-release-notes.cjs From 05ba27f36b4686fee141285b28d8f866633e2b4f Mon Sep 17 00:00:00 2001 From: Johannes Marbach Date: Thu, 29 Aug 2024 17:56:32 +0200 Subject: [PATCH 408/595] Change imports for Node.js compatibility (#4377) * Change imports for Node.js compatibility Fixes: #4287 Signed-off-by: Johannes Marbach * Run prettier * Run prettier (again) * Add comment * Update babel.config.cjs --------- Signed-off-by: Johannes Marbach Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- babel.config.cjs | 11 +- src/@types/auth.ts | 4 +- src/@types/beacon.ts | 6 +- src/@types/crypto.ts | 4 +- src/@types/event.ts | 22 +-- src/@types/events.ts | 6 +- src/@types/extensible_events.ts | 2 +- src/@types/location.ts | 4 +- src/@types/media.ts | 2 +- src/@types/polls.ts | 2 +- src/@types/registration.ts | 2 +- src/@types/requests.ts | 16 +- src/@types/search.ts | 6 +- src/@types/spaces.ts | 6 +- src/@types/state_events.ts | 8 +- src/@types/synapse.ts | 2 +- src/@types/sync.ts | 2 +- src/@types/topic.ts | 4 +- src/@types/uia.ts | 2 +- src/ReEmitter.ts | 2 +- src/ToDeviceMessageQueue.ts | 21 +- src/autodiscovery.ts | 8 +- src/browser-index.ts | 4 +- src/client.ts | 187 +++++++++--------- src/common-crypto/CryptoBackend.ts | 16 +- src/content-helpers.ts | 14 +- src/content-repo.ts | 2 +- src/crypto-api/index.ts | 22 +-- src/crypto-api/keybackup.ts | 4 +- src/crypto-api/verification.ts | 4 +- src/crypto/CrossSigning.ts | 30 +-- src/crypto/DeviceList.ts | 22 +-- src/crypto/EncryptionSetup.ts | 22 +-- src/crypto/OlmDevice.ts | 16 +- src/crypto/OutgoingRoomKeyRequestManager.ts | 12 +- src/crypto/RoomList.ts | 4 +- src/crypto/SecretSharing.ts | 14 +- src/crypto/SecretStorage.ts | 14 +- src/crypto/aes.ts | 2 +- src/crypto/algorithms/base.ts | 20 +- src/crypto/algorithms/index.ts | 6 +- src/crypto/algorithms/megolm.ts | 38 ++-- src/crypto/algorithms/olm.ts | 22 +-- src/crypto/api.ts | 10 +- src/crypto/backup.ts | 34 ++-- src/crypto/dehydration.ts | 16 +- src/crypto/device-converter.ts | 4 +- src/crypto/deviceinfo.ts | 4 +- src/crypto/index.ts | 121 ++++++------ src/crypto/key_passphrase.ts | 2 +- src/crypto/keybackup.ts | 4 +- src/crypto/olmlib.ts | 20 +- src/crypto/store/base.ts | 26 +-- .../store/indexeddb-crypto-store-backend.ts | 18 +- src/crypto/store/indexeddb-crypto-store.ts | 24 +-- src/crypto/store/localStorage-crypto-store.ts | 16 +- src/crypto/store/memory-crypto-store.ts | 16 +- src/crypto/verification/Base.ts | 22 +-- src/crypto/verification/Error.ts | 4 +- src/crypto/verification/IllegalMethod.ts | 10 +- src/crypto/verification/QRCode.ts | 20 +- src/crypto/verification/SAS.ts | 18 +- src/crypto/verification/request/Channel.ts | 4 +- .../verification/request/InRoomChannel.ts | 14 +- .../verification/request/ToDeviceChannel.ts | 16 +- .../request/VerificationRequest.ts | 24 +-- src/embedded.ts | 26 +-- src/event-mapper.ts | 6 +- src/extensible_events_v1/ExtensibleEvent.ts | 2 +- src/extensible_events_v1/MessageEvent.ts | 8 +- src/extensible_events_v1/PollEndEvent.ts | 10 +- src/extensible_events_v1/PollResponseEvent.ts | 15 +- src/extensible_events_v1/PollStartEvent.ts | 10 +- src/feature.ts | 2 +- src/filter-component.ts | 6 +- src/filter.ts | 8 +- src/http-api/errors.ts | 4 +- src/http-api/fetch.ts | 14 +- src/http-api/index.ts | 28 +-- src/http-api/interface.ts | 4 +- src/http-api/utils.ts | 6 +- src/index.ts | 4 +- src/indexeddb-worker.ts | 2 +- src/interactive-auth.ts | 12 +- src/matrix.ts | 166 ++++++++-------- src/matrixrtc/CallMembership.ts | 8 +- src/matrixrtc/LivekitFocus.ts | 2 +- src/matrixrtc/MatrixRTCSession.ts | 36 ++-- src/matrixrtc/MatrixRTCSessionManager.ts | 16 +- src/matrixrtc/index.ts | 12 +- src/matrixrtc/types.ts | 2 +- src/models/MSC3089Branch.ts | 16 +- src/models/MSC3089TreeSpace.ts | 26 +-- src/models/beacon.ts | 15 +- src/models/compare-event-ordering.ts | 6 +- src/models/event-context.ts | 4 +- src/models/event-timeline-set.ts | 20 +- src/models/event-timeline.ts | 10 +- src/models/event.ts | 42 ++-- src/models/invites-ignorer.ts | 14 +- src/models/poll.ts | 14 +- src/models/read-receipt.ts | 20 +- src/models/related-relations.ts | 6 +- src/models/relations-container.ts | 12 +- src/models/relations.ts | 12 +- src/models/room-member.ts | 18 +- src/models/room-receipts.ts | 10 +- src/models/room-state.ts | 26 +-- src/models/room.ts | 56 +++--- src/models/search-result.ts | 6 +- src/models/thread.ts | 26 +-- src/models/user.ts | 6 +- src/oidc/authorize.ts | 12 +- src/oidc/discovery.ts | 6 +- src/oidc/index.ts | 14 +- src/oidc/register.ts | 10 +- src/oidc/tokenRefresher.ts | 8 +- src/oidc/validate.ts | 4 +- src/pushprocessor.ts | 12 +- src/randomstring.ts | 2 +- src/realtime-callbacks.ts | 2 +- src/receipt-accumulator.ts | 10 +- src/rendezvous/MSC3906Rendezvous.ts | 14 +- src/rendezvous/MSC4108SignInWithQR.ts | 21 +- src/rendezvous/RendezvousChannel.ts | 2 +- src/rendezvous/RendezvousCode.ts | 2 +- src/rendezvous/RendezvousError.ts | 2 +- src/rendezvous/RendezvousTransport.ts | 2 +- .../MSC3903ECDHv2RendezvousChannel.ts | 8 +- .../channels/MSC4108SecureChannel.ts | 6 +- src/rendezvous/channels/index.ts | 4 +- src/rendezvous/index.ts | 20 +- .../MSC3886SimpleHttpRendezvousTransport.ts | 10 +- .../transports/MSC4108RendezvousSession.ts | 10 +- src/rendezvous/transports/index.ts | 4 +- src/room-hierarchy.ts | 10 +- src/rust-crypto/CrossSigningIdentity.ts | 10 +- src/rust-crypto/DehydratedDeviceManager.ts | 14 +- src/rust-crypto/KeyClaimManager.ts | 4 +- src/rust-crypto/OutgoingRequestProcessor.ts | 14 +- src/rust-crypto/OutgoingRequestsManager.ts | 6 +- .../PerSessionKeyBackupDownloader.ts | 14 +- src/rust-crypto/RoomEncryptor.ts | 20 +- src/rust-crypto/backup.ts | 26 +-- src/rust-crypto/device-converter.ts | 4 +- src/rust-crypto/index.ts | 14 +- src/rust-crypto/libolm_migration.ts | 24 +-- src/rust-crypto/rust-crypto.ts | 79 ++++---- src/rust-crypto/secret-storage.ts | 2 +- src/rust-crypto/verification.ts | 16 +- src/scheduler.ts | 12 +- src/secret-storage.ts | 12 +- src/serverCapabilities.ts | 4 +- src/sliding-sync-sdk.ts | 34 ++-- src/sliding-sync.ts | 12 +- src/store/index.ts | 22 +-- src/store/indexeddb-backend.ts | 6 +- src/store/indexeddb-local-backend.ts | 16 +- src/store/indexeddb-remote-backend.ts | 14 +- src/store/indexeddb-store-worker.ts | 4 +- src/store/indexeddb.ts | 24 +-- src/store/local-storage-events-emitter.ts | 2 +- src/store/memory.ts | 30 +-- src/store/stub.ts | 22 +-- src/sync-accumulator.ts | 14 +- src/sync.ts | 44 ++--- src/testing.ts | 12 +- src/thread-utils.ts | 4 +- src/timeline-window.ts | 12 +- src/types.ts | 10 +- src/utils.ts | 8 +- src/webrtc/call.ts | 30 +-- src/webrtc/callEventHandler.ts | 16 +- src/webrtc/callEventTypes.ts | 2 +- src/webrtc/callFeed.ts | 14 +- src/webrtc/groupCall.ts | 44 ++--- src/webrtc/groupCallEventHandler.ts | 18 +- src/webrtc/mediaHandler.ts | 8 +- src/webrtc/stats/callFeedStatsReporter.ts | 4 +- src/webrtc/stats/callStatsReportGatherer.ts | 28 +-- src/webrtc/stats/connectionStats.ts | 4 +- src/webrtc/stats/connectionStatsBuilder.ts | 2 +- .../stats/connectionStatsReportBuilder.ts | 11 +- src/webrtc/stats/groupCallStats.ts | 10 +- src/webrtc/stats/media/mediaTrackStats.ts | 4 +- .../stats/media/mediaTrackStatsHandler.ts | 8 +- src/webrtc/stats/statsReport.ts | 6 +- src/webrtc/stats/statsReportEmitter.ts | 4 +- .../stats/summaryStatsReportGatherer.ts | 10 +- src/webrtc/stats/trackStatsBuilder.ts | 6 +- src/webrtc/stats/transportStatsBuilder.ts | 2 +- tsconfig.json | 3 +- 192 files changed, 1445 insertions(+), 1387 deletions(-) diff --git a/babel.config.cjs b/babel.config.cjs index 57d061ffcd6..d5c314af157 100644 --- a/babel.config.cjs +++ b/babel.config.cjs @@ -14,7 +14,16 @@ module.exports = { modules: process.env.NODE_ENV === "test" ? "commonjs" : false, }, ], - "@babel/preset-typescript", + [ + "@babel/preset-typescript", + { + // When using the transpiled javascript in `lib`, Node.js requires `.js` extensions on any `import` + // specifiers. However, Jest uses the TS source (via babel) and fails to resolve the `.js` names. + // To resolve this,we use the `.ts` names in the source, and rewrite the `import` specifiers to use + // `.js` during transpilation, *except* when we are targetting Jest. + rewriteImportExtensions: process.env.NODE_ENV !== "test", + }, + ], ], plugins: [ "@babel/plugin-transform-numeric-separator", diff --git a/src/@types/auth.ts b/src/@types/auth.ts index 649a851764e..27b220db39c 100644 --- a/src/@types/auth.ts +++ b/src/@types/auth.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { UnstableValue } from "../NamespacedValue"; -import { IClientWellKnown } from "../client"; +import { UnstableValue } from "../NamespacedValue.ts"; +import { IClientWellKnown } from "../client.ts"; // disable lint because these are wire responses /* eslint-disable camelcase */ diff --git a/src/@types/beacon.ts b/src/@types/beacon.ts index e6bfb8ff95a..2bcc6260ce5 100644 --- a/src/@types/beacon.ts +++ b/src/@types/beacon.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { RelatesToRelationship, REFERENCE_RELATION } from "./extensible_events"; -import { UnstableValue } from "../NamespacedValue"; -import { MAssetEvent, MLocationEvent, MTimestampEvent } from "./location"; +import { RelatesToRelationship, REFERENCE_RELATION } from "./extensible_events.ts"; +import { UnstableValue } from "../NamespacedValue.ts"; +import { MAssetEvent, MLocationEvent, MTimestampEvent } from "./location.ts"; /** * Beacon info and beacon event types as described in MSC3672 diff --git a/src/@types/crypto.ts b/src/@types/crypto.ts index 010882966f4..54389e33603 100644 --- a/src/@types/crypto.ts +++ b/src/@types/crypto.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import type { ISignatures } from "./signed"; +import type { ISignatures } from "./signed.ts"; export type OlmGroupSessionExtraData = { untrusted?: boolean; @@ -22,7 +22,7 @@ export type OlmGroupSessionExtraData = { }; // Backwards compatible re-export -export type { EventDecryptionResult as IEventDecryptionResult } from "../common-crypto/CryptoBackend"; +export type { EventDecryptionResult as IEventDecryptionResult } from "../common-crypto/CryptoBackend.ts"; interface Extensible { [key: string]: any; diff --git a/src/@types/event.ts b/src/@types/event.ts index c01fc40d3e8..0d28b38fc32 100644 --- a/src/@types/event.ts +++ b/src/@types/event.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { NamespacedValue, UnstableValue } from "../NamespacedValue"; +import { NamespacedValue, UnstableValue } from "../NamespacedValue.ts"; import { PolicyRuleEventContent, RoomAvatarEventContent, @@ -34,16 +34,16 @@ import { RoomTopicEventContent, SpaceChildEventContent, SpaceParentEventContent, -} from "./state_events"; +} from "./state_events.ts"; import { ExperimentalGroupCallRoomMemberState, IGroupCallRoomMemberState, IGroupCallRoomState, -} from "../webrtc/groupCall"; -import { MSC3089EventContent } from "../models/MSC3089Branch"; -import { M_BEACON, M_BEACON_INFO, MBeaconEventContent, MBeaconInfoEventContent } from "./beacon"; -import { XOR } from "./common"; -import { ReactionEventContent, RoomMessageEventContent, StickerEventContent } from "./events"; +} from "../webrtc/groupCall.ts"; +import { MSC3089EventContent } from "../models/MSC3089Branch.ts"; +import { M_BEACON, M_BEACON_INFO, MBeaconEventContent, MBeaconInfoEventContent } from "./beacon.ts"; +import { XOR } from "./common.ts"; +import { ReactionEventContent, RoomMessageEventContent, StickerEventContent } from "./events.ts"; import { MCallAnswer, MCallBase, @@ -54,10 +54,10 @@ import { MCallSelectAnswer, SDPStreamMetadata, SDPStreamMetadataKey, -} from "../webrtc/callEventTypes"; -import { EncryptionKeysEventContent, ICallNotifyContent } from "../matrixrtc/types"; -import { M_POLL_END, M_POLL_START, PollEndEventContent, PollStartEventContent } from "./polls"; -import { SessionMembershipData } from "../matrixrtc/CallMembership"; +} from "../webrtc/callEventTypes.ts"; +import { EncryptionKeysEventContent, ICallNotifyContent } from "../matrixrtc/types.ts"; +import { M_POLL_END, M_POLL_START, PollEndEventContent, PollStartEventContent } from "./polls.ts"; +import { SessionMembershipData } from "../matrixrtc/CallMembership.ts"; export enum EventType { // Room state events diff --git a/src/@types/events.ts b/src/@types/events.ts index 59c41d2018c..55af87252b0 100644 --- a/src/@types/events.ts +++ b/src/@types/events.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MsgType, RelationType } from "./event"; -import { FileInfo, ImageInfo, MediaEventContent } from "./media"; -import { XOR } from "./common"; +import { MsgType, RelationType } from "./event.ts"; +import { FileInfo, ImageInfo, MediaEventContent } from "./media.ts"; +import { XOR } from "./common.ts"; interface BaseTimelineEvent { "body": string; diff --git a/src/@types/extensible_events.ts b/src/@types/extensible_events.ts index 9b16e0e437e..27095c271a9 100644 --- a/src/@types/extensible_events.ts +++ b/src/@types/extensible_events.ts @@ -16,7 +16,7 @@ limitations under the License. import { EitherAnd, NamespacedValue, Optional, UnstableValue } from "matrix-events-sdk"; -import { isProvided } from "../extensible_events_v1/utilities"; +import { isProvided } from "../extensible_events_v1/utilities.ts"; // Types and utilities for MSC1767: Extensible events (version 1) in Matrix diff --git a/src/@types/location.ts b/src/@types/location.ts index d1a826fd8f1..dd7c49bf024 100644 --- a/src/@types/location.ts +++ b/src/@types/location.ts @@ -17,8 +17,8 @@ limitations under the License. // Types for MSC3488 - m.location: Extending events with location data import { EitherAnd } from "matrix-events-sdk"; -import { UnstableValue } from "../NamespacedValue"; -import { M_TEXT } from "./extensible_events"; +import { UnstableValue } from "../NamespacedValue.ts"; +import { M_TEXT } from "./extensible_events.ts"; export enum LocationAssetType { Self = "m.self", diff --git a/src/@types/media.ts b/src/@types/media.ts index 20e5ca6c66b..ef23668b05d 100644 --- a/src/@types/media.ts +++ b/src/@types/media.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MsgType } from "../@types/event"; +import { MsgType } from "../@types/event.ts"; /** * Information on encrypted media attachments. diff --git a/src/@types/polls.ts b/src/@types/polls.ts index 3b06f932a62..1a602dc0ca9 100644 --- a/src/@types/polls.ts +++ b/src/@types/polls.ts @@ -21,7 +21,7 @@ import { REFERENCE_RELATION, RelatesToRelationship, TSNamespace, -} from "./extensible_events"; +} from "./extensible_events.ts"; /** * Identifier for a disclosed poll. diff --git a/src/@types/registration.ts b/src/@types/registration.ts index 7bfb99f7d40..2799ba17805 100644 --- a/src/@types/registration.ts +++ b/src/@types/registration.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { AuthDict } from "../interactive-auth"; +import { AuthDict } from "../interactive-auth.ts"; /** * The request body of a call to `POST /_matrix/client/v3/register`. diff --git a/src/@types/requests.ts b/src/@types/requests.ts index ae3ea16ddce..0baedff3ff4 100644 --- a/src/@types/requests.ts +++ b/src/@types/requests.ts @@ -14,14 +14,14 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IContent, IEvent } from "../models/event"; -import { Preset, Visibility } from "./partials"; -import { IEventWithRoomId, SearchKey } from "./search"; -import { IRoomEventFilter } from "../filter"; -import { Direction } from "../models/event-timeline"; -import { PushRuleAction } from "./PushRules"; -import { IRoomEvent } from "../sync-accumulator"; -import { EventType, RelationType, RoomType } from "./event"; +import { IContent, IEvent } from "../models/event.ts"; +import { Preset, Visibility } from "./partials.ts"; +import { IEventWithRoomId, SearchKey } from "./search.ts"; +import { IRoomEventFilter } from "../filter.ts"; +import { Direction } from "../models/event-timeline.ts"; +import { PushRuleAction } from "./PushRules.ts"; +import { IRoomEvent } from "../sync-accumulator.ts"; +import { EventType, RelationType, RoomType } from "./event.ts"; // allow camelcase as these are things that go onto the wire /* eslint-disable camelcase */ diff --git a/src/@types/search.ts b/src/@types/search.ts index bd97e7de07a..4069d3e9826 100644 --- a/src/@types/search.ts +++ b/src/@types/search.ts @@ -16,9 +16,9 @@ limitations under the License. // Types relating to the /search API -import { IRoomEvent, IStateEvent } from "../sync-accumulator"; -import { IRoomEventFilter } from "../filter"; -import { SearchResult } from "../models/search-result"; +import { IRoomEvent, IStateEvent } from "../sync-accumulator.ts"; +import { IRoomEventFilter } from "../filter.ts"; +import { SearchResult } from "../models/search-result.ts"; /* eslint-disable camelcase */ export interface IEventWithRoomId extends IRoomEvent { diff --git a/src/@types/spaces.ts b/src/@types/spaces.ts index 9edab274a16..249952e5c33 100644 --- a/src/@types/spaces.ts +++ b/src/@types/spaces.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IPublicRoomsChunkRoom } from "../client"; -import { RoomType } from "./event"; -import { IStrippedState } from "../sync-accumulator"; +import { IPublicRoomsChunkRoom } from "../client.ts"; +import { RoomType } from "./event.ts"; +import { IStrippedState } from "../sync-accumulator.ts"; // Types relating to Rooms of type `m.space` and related APIs diff --git a/src/@types/state_events.ts b/src/@types/state_events.ts index 36e86f53738..d570c5a1299 100644 --- a/src/@types/state_events.ts +++ b/src/@types/state_events.ts @@ -14,10 +14,10 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { RoomType } from "./event"; -import { GuestAccess, HistoryVisibility, JoinRule, RestrictedAllowType } from "./partials"; -import { ImageInfo } from "./media"; -import { PolicyRecommendation } from "../models/invites-ignorer"; +import { RoomType } from "./event.ts"; +import { GuestAccess, HistoryVisibility, JoinRule, RestrictedAllowType } from "./partials.ts"; +import { ImageInfo } from "./media.ts"; +import { PolicyRecommendation } from "../models/invites-ignorer.ts"; export interface RoomCanonicalAliasEventContent { alias?: string; diff --git a/src/@types/synapse.ts b/src/@types/synapse.ts index 1d4ce41ac61..8b309c2ae95 100644 --- a/src/@types/synapse.ts +++ b/src/@types/synapse.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IdServerUnbindResult } from "./partials"; +import { IdServerUnbindResult } from "./partials.ts"; // Types relating to Synapse Admin APIs diff --git a/src/@types/sync.ts b/src/@types/sync.ts index d9a2a6f564d..74e00f79286 100644 --- a/src/@types/sync.ts +++ b/src/@types/sync.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ServerControlledNamespacedValue } from "../NamespacedValue"; +import { ServerControlledNamespacedValue } from "../NamespacedValue.ts"; /** * https://github.com/matrix-org/matrix-doc/pull/3773 diff --git a/src/@types/topic.ts b/src/@types/topic.ts index 04d14640680..3d4a633326a 100644 --- a/src/@types/topic.ts +++ b/src/@types/topic.ts @@ -16,8 +16,8 @@ limitations under the License. import { EitherAnd } from "matrix-events-sdk"; -import { UnstableValue } from "../NamespacedValue"; -import { IMessageRendering } from "./extensible_events"; +import { UnstableValue } from "../NamespacedValue.ts"; +import { IMessageRendering } from "./extensible_events.ts"; /** * Extensible topic event type based on MSC3765 diff --git a/src/@types/uia.ts b/src/@types/uia.ts index bc10f2dd9cd..0103d45517a 100644 --- a/src/@types/uia.ts +++ b/src/@types/uia.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { AuthDict, IAuthData } from "../interactive-auth"; +import { AuthDict, IAuthData } from "../interactive-auth.ts"; /** * Helper type to represent HTTP request body for a UIA enabled endpoint diff --git a/src/ReEmitter.ts b/src/ReEmitter.ts index 5d41ac0e455..9a1bb17d48c 100644 --- a/src/ReEmitter.ts +++ b/src/ReEmitter.ts @@ -19,7 +19,7 @@ limitations under the License. // eslint-disable-next-line no-restricted-imports import { EventEmitter } from "events"; -import { ListenerMap, TypedEventEmitter } from "./models/typed-event-emitter"; +import { ListenerMap, TypedEventEmitter } from "./models/typed-event-emitter.ts"; export class ReEmitter { public constructor(private readonly target: EventEmitter) {} diff --git a/src/ToDeviceMessageQueue.ts b/src/ToDeviceMessageQueue.ts index 59eada4db22..391f678fa07 100644 --- a/src/ToDeviceMessageQueue.ts +++ b/src/ToDeviceMessageQueue.ts @@ -14,14 +14,19 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ToDeviceMessageId } from "./@types/event"; -import { logger } from "./logger"; -import { MatrixClient, ClientEvent } from "./client"; -import { MatrixError } from "./http-api"; -import { IndexedToDeviceBatch, ToDeviceBatch, ToDeviceBatchWithTxnId, ToDevicePayload } from "./models/ToDeviceMessage"; -import { MatrixScheduler } from "./scheduler"; -import { SyncState } from "./sync"; -import { MapWithDefault } from "./utils"; +import { ToDeviceMessageId } from "./@types/event.ts"; +import { logger } from "./logger.ts"; +import { MatrixClient, ClientEvent } from "./client.ts"; +import { MatrixError } from "./http-api/index.ts"; +import { + IndexedToDeviceBatch, + ToDeviceBatch, + ToDeviceBatchWithTxnId, + ToDevicePayload, +} from "./models/ToDeviceMessage.ts"; +import { MatrixScheduler } from "./scheduler.ts"; +import { SyncState } from "./sync.ts"; +import { MapWithDefault } from "./utils.ts"; const MAX_BATCH_SIZE = 20; diff --git a/src/autodiscovery.ts b/src/autodiscovery.ts index 8f4f196682c..3733e533022 100644 --- a/src/autodiscovery.ts +++ b/src/autodiscovery.ts @@ -15,10 +15,10 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IClientWellKnown, IWellKnownConfig, IServerVersions } from "./client"; -import { logger } from "./logger"; -import { MatrixError, Method, timeoutSignal } from "./http-api"; -import { SUPPORTED_MATRIX_VERSIONS } from "./version-support"; +import { IClientWellKnown, IWellKnownConfig, IServerVersions } from "./client.ts"; +import { logger } from "./logger.ts"; +import { MatrixError, Method, timeoutSignal } from "./http-api/index.ts"; +import { SUPPORTED_MATRIX_VERSIONS } from "./version-support.ts"; // Dev note: Auto discovery is part of the spec. // See: https://matrix.org/docs/spec/client_server/r0.4.0.html#server-discovery diff --git a/src/browser-index.ts b/src/browser-index.ts index a8d9e4ab0bb..6b77aed915a 100644 --- a/src/browser-index.ts +++ b/src/browser-index.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import * as matrixcs from "./matrix"; +import * as matrixcs from "./matrix.ts"; type BrowserMatrix = typeof matrixcs; declare global { @@ -40,5 +40,5 @@ if (indexedDB) { matrixcs.setCryptoStoreFactory(() => new matrixcs.IndexedDBCryptoStore(indexedDB!, "matrix-js-sdk:crypto")); } -export * from "./matrix"; +export * from "./matrix.ts"; globalThis.matrixcs = matrixcs; diff --git a/src/client.ts b/src/client.ts index 9da03de8ebc..5bc6ab07120 100644 --- a/src/client.ts +++ b/src/client.ts @@ -20,8 +20,8 @@ limitations under the License. import { Optional } from "matrix-events-sdk"; -import type { IDeviceKeys, IMegolmSessionData, IOneTimeKey } from "./@types/crypto"; -import { ISyncStateData, SetPresence, SyncApi, SyncApiOptions, SyncState } from "./sync"; +import type { IDeviceKeys, IMegolmSessionData, IOneTimeKey } from "./@types/crypto.ts"; +import { ISyncStateData, SetPresence, SyncApi, SyncApiOptions, SyncState } from "./sync.ts"; import { EventStatus, IContent, @@ -31,29 +31,29 @@ import { MatrixEventEvent, MatrixEventHandlerMap, PushDetails, -} from "./models/event"; -import { StubStore } from "./store/stub"; -import { CallEvent, CallEventHandlerMap, createNewMatrixCall, MatrixCall, supportsMatrixCall } from "./webrtc/call"; -import { Filter, IFilterDefinition, IRoomEventFilter } from "./filter"; -import { CallEventHandler, CallEventHandlerEvent, CallEventHandlerEventHandlerMap } from "./webrtc/callEventHandler"; +} from "./models/event.ts"; +import { StubStore } from "./store/stub.ts"; +import { CallEvent, CallEventHandlerMap, createNewMatrixCall, MatrixCall, supportsMatrixCall } from "./webrtc/call.ts"; +import { Filter, IFilterDefinition, IRoomEventFilter } from "./filter.ts"; +import { CallEventHandler, CallEventHandlerEvent, CallEventHandlerEventHandlerMap } from "./webrtc/callEventHandler.ts"; import { GroupCallEventHandler, GroupCallEventHandlerEvent, GroupCallEventHandlerEventHandlerMap, -} from "./webrtc/groupCallEventHandler"; -import * as utils from "./utils"; -import { noUnsafeEventProps, QueryDict, replaceParam, safeSet, sleep } from "./utils"; -import { Direction, EventTimeline } from "./models/event-timeline"; -import { IActionsObject, PushProcessor } from "./pushprocessor"; -import { AutoDiscovery, AutoDiscoveryAction } from "./autodiscovery"; -import * as olmlib from "./crypto/olmlib"; -import { decodeBase64, encodeBase64, encodeUnpaddedBase64Url } from "./base64"; -import { IExportedDevice as IExportedOlmDevice } from "./crypto/OlmDevice"; -import { IOlmDevice } from "./crypto/algorithms/megolm"; -import { TypedReEmitter } from "./ReEmitter"; -import { IRoomEncryption } from "./crypto/RoomList"; -import { logger, Logger } from "./logger"; -import { SERVICE_TYPES } from "./service-types"; +} from "./webrtc/groupCallEventHandler.ts"; +import * as utils from "./utils.ts"; +import { noUnsafeEventProps, QueryDict, replaceParam, safeSet, sleep } from "./utils.ts"; +import { Direction, EventTimeline } from "./models/event-timeline.ts"; +import { IActionsObject, PushProcessor } from "./pushprocessor.ts"; +import { AutoDiscovery, AutoDiscoveryAction } from "./autodiscovery.ts"; +import * as olmlib from "./crypto/olmlib.ts"; +import { decodeBase64, encodeBase64, encodeUnpaddedBase64Url } from "./base64.ts"; +import { IExportedDevice as IExportedOlmDevice } from "./crypto/OlmDevice.ts"; +import { IOlmDevice } from "./crypto/algorithms/megolm.ts"; +import { TypedReEmitter } from "./ReEmitter.ts"; +import { IRoomEncryption } from "./crypto/RoomList.ts"; +import { logger, Logger } from "./logger.ts"; +import { SERVICE_TYPES } from "./service-types.ts"; import { Body, ClientPrefix, @@ -73,7 +73,7 @@ import { Upload, UploadOpts, UploadResponse, -} from "./http-api"; +} from "./http-api/index.ts"; import { Crypto, CryptoEvent, @@ -83,14 +83,14 @@ import { ICryptoCallbacks, IRoomKeyRequestBody, isCryptoAvailable, -} from "./crypto"; -import { DeviceInfo } from "./crypto/deviceinfo"; -import { decodeRecoveryKey } from "./crypto/recoverykey"; -import { keyFromAuthData } from "./crypto/key_passphrase"; -import { User, UserEvent, UserEventHandlerMap } from "./models/user"; -import { getHttpUriForMxc } from "./content-repo"; -import { SearchResult } from "./models/search-result"; -import { DEHYDRATION_ALGORITHM, IDehydratedDevice, IDehydratedDeviceKeyInfo } from "./crypto/dehydration"; +} from "./crypto/index.ts"; +import { DeviceInfo } from "./crypto/deviceinfo.ts"; +import { decodeRecoveryKey } from "./crypto/recoverykey.ts"; +import { keyFromAuthData } from "./crypto/key_passphrase.ts"; +import { User, UserEvent, UserEventHandlerMap } from "./models/user.ts"; +import { getHttpUriForMxc } from "./content-repo.ts"; +import { SearchResult } from "./models/search-result.ts"; +import { DEHYDRATION_ALGORITHM, IDehydratedDevice, IDehydratedDeviceKeyInfo } from "./crypto/dehydration.ts"; import { IKeyBackupInfo, IKeyBackupPrepareOpts, @@ -98,21 +98,21 @@ import { IKeyBackupRestoreResult, IKeyBackupRoomSessions, IKeyBackupSession, -} from "./crypto/keybackup"; -import { IIdentityServerProvider } from "./@types/IIdentityServerProvider"; -import { MatrixScheduler } from "./scheduler"; -import { BeaconEvent, BeaconEventHandlerMap } from "./models/beacon"; -import { AuthDict } from "./interactive-auth"; -import { IMinimalEvent, IRoomEvent, IStateEvent } from "./sync-accumulator"; -import { CrossSigningKey, ICreateSecretStorageOpts, IEncryptedEventInfo, IRecoveryKey } from "./crypto/api"; -import { EventTimelineSet } from "./models/event-timeline-set"; -import { VerificationRequest } from "./crypto/verification/request/VerificationRequest"; -import { VerificationBase as Verification } from "./crypto/verification/Base"; -import * as ContentHelpers from "./content-helpers"; -import { CrossSigningInfo, DeviceTrustLevel, ICacheCallbacks, UserTrustLevel } from "./crypto/CrossSigning"; -import { NotificationCountType, Room, RoomEvent, RoomEventHandlerMap, RoomNameState } from "./models/room"; -import { RoomMemberEvent, RoomMemberEventHandlerMap } from "./models/room-member"; -import { IPowerLevelsContent, RoomStateEvent, RoomStateEventHandlerMap } from "./models/room-state"; +} from "./crypto/keybackup.ts"; +import { IIdentityServerProvider } from "./@types/IIdentityServerProvider.ts"; +import { MatrixScheduler } from "./scheduler.ts"; +import { BeaconEvent, BeaconEventHandlerMap } from "./models/beacon.ts"; +import { AuthDict } from "./interactive-auth.ts"; +import { IMinimalEvent, IRoomEvent, IStateEvent } from "./sync-accumulator.ts"; +import { CrossSigningKey, ICreateSecretStorageOpts, IEncryptedEventInfo, IRecoveryKey } from "./crypto/api.ts"; +import { EventTimelineSet } from "./models/event-timeline-set.ts"; +import { VerificationRequest } from "./crypto/verification/request/VerificationRequest.ts"; +import { VerificationBase as Verification } from "./crypto/verification/Base.ts"; +import * as ContentHelpers from "./content-helpers.ts"; +import { CrossSigningInfo, DeviceTrustLevel, ICacheCallbacks, UserTrustLevel } from "./crypto/CrossSigning.ts"; +import { NotificationCountType, Room, RoomEvent, RoomEventHandlerMap, RoomNameState } from "./models/room.ts"; +import { RoomMemberEvent, RoomMemberEventHandlerMap } from "./models/room-member.ts"; +import { IPowerLevelsContent, RoomStateEvent, RoomStateEventHandlerMap } from "./models/room-state.ts"; import { DelayedEventInfo, IAddThreePidOnlyBody, @@ -138,7 +138,7 @@ import { SendDelayedEventRequestOpts, SendDelayedEventResponse, UpdateDelayedEventAction, -} from "./@types/requests"; +} from "./@types/requests.ts"; import { EventType, LOCAL_NOTIFICATION_SETTINGS_PREFIX, @@ -153,15 +153,22 @@ import { UNSTABLE_MSC3088_ENABLED, UNSTABLE_MSC3088_PURPOSE, UNSTABLE_MSC3089_TREE_SUBTYPE, -} from "./@types/event"; -import { GuestAccess, HistoryVisibility, IdServerUnbindResult, JoinRule, Preset, Visibility } from "./@types/partials"; -import { EventMapper, eventMapperFor, MapperOpts } from "./event-mapper"; -import { randomString } from "./randomstring"; -import { BackupManager, IKeyBackup, IKeyBackupCheck, IPreparedKeyBackupVersion, TrustInfo } from "./crypto/backup"; -import { DEFAULT_TREE_POWER_LEVELS_TEMPLATE, MSC3089TreeSpace } from "./models/MSC3089TreeSpace"; -import { ISignatures } from "./@types/signed"; -import { IStore } from "./store"; -import { ISecretRequest } from "./crypto/SecretStorage"; +} from "./@types/event.ts"; +import { + GuestAccess, + HistoryVisibility, + IdServerUnbindResult, + JoinRule, + Preset, + Visibility, +} from "./@types/partials.ts"; +import { EventMapper, eventMapperFor, MapperOpts } from "./event-mapper.ts"; +import { randomString } from "./randomstring.ts"; +import { BackupManager, IKeyBackup, IKeyBackupCheck, IPreparedKeyBackupVersion, TrustInfo } from "./crypto/backup.ts"; +import { DEFAULT_TREE_POWER_LEVELS_TEMPLATE, MSC3089TreeSpace } from "./models/MSC3089TreeSpace.ts"; +import { ISignatures } from "./@types/signed.ts"; +import { IStore } from "./store/index.ts"; +import { ISecretRequest } from "./crypto/SecretStorage.ts"; import { IEventWithRoomId, ISearchRequestBody, @@ -169,9 +176,9 @@ import { ISearchResults, IStateEventWithRoomId, SearchOrderBy, -} from "./@types/search"; -import { ISynapseAdminDeactivateResponse, ISynapseAdminWhoisResponse } from "./@types/synapse"; -import { IHierarchyRoom } from "./@types/spaces"; +} from "./@types/search.ts"; +import { ISynapseAdminDeactivateResponse, ISynapseAdminWhoisResponse } from "./@types/synapse.ts"; +import { IHierarchyRoom } from "./@types/spaces.ts"; import { IPusher, IPusherRequest, @@ -181,11 +188,11 @@ import { PushRuleActionName, PushRuleKind, RuleId, -} from "./@types/PushRules"; -import { IThreepid } from "./@types/threepids"; -import { CryptoStore, OutgoingRoomKeyRequest } from "./crypto/store/base"; -import { GroupCall, GroupCallIntent, GroupCallType, IGroupCallDataChannelOptions } from "./webrtc/groupCall"; -import { MediaHandler } from "./webrtc/mediaHandler"; +} from "./@types/PushRules.ts"; +import { IThreepid } from "./@types/threepids.ts"; +import { CryptoStore, OutgoingRoomKeyRequest } from "./crypto/store/base.ts"; +import { GroupCall, GroupCallIntent, GroupCallType, IGroupCallDataChannelOptions } from "./webrtc/groupCall.ts"; +import { MediaHandler } from "./webrtc/mediaHandler.ts"; import { ILoginFlowsResponse, IRefreshTokenResponse, @@ -193,11 +200,11 @@ import { LoginResponse, LoginTokenPostResponse, SSOAction, -} from "./@types/auth"; -import { TypedEventEmitter } from "./models/typed-event-emitter"; -import { MAIN_ROOM_TIMELINE, ReceiptType } from "./@types/read_receipts"; -import { MSC3575SlidingSyncRequest, MSC3575SlidingSyncResponse, SlidingSync } from "./sliding-sync"; -import { SlidingSyncSdk } from "./sliding-sync-sdk"; +} from "./@types/auth.ts"; +import { TypedEventEmitter } from "./models/typed-event-emitter.ts"; +import { MAIN_ROOM_TIMELINE, ReceiptType } from "./@types/read_receipts.ts"; +import { MSC3575SlidingSyncRequest, MSC3575SlidingSyncResponse, SlidingSync } from "./sliding-sync.ts"; +import { SlidingSyncSdk } from "./sliding-sync-sdk.ts"; import { determineFeatureSupport, FeatureSupport, @@ -205,33 +212,33 @@ import { THREAD_RELATION_TYPE, ThreadFilterType, threadFilterTypeToFilter, -} from "./models/thread"; -import { M_BEACON_INFO, MBeaconInfoEventContent } from "./@types/beacon"; -import { NamespacedValue, UnstableValue } from "./NamespacedValue"; -import { ToDeviceMessageQueue } from "./ToDeviceMessageQueue"; -import { ToDeviceBatch } from "./models/ToDeviceMessage"; -import { IgnoredInvites } from "./models/invites-ignorer"; -import { UIARequest, UIAResponse } from "./@types/uia"; -import { LocalNotificationSettings } from "./@types/local_notifications"; -import { buildFeatureSupportMap, Feature, ServerSupport } from "./feature"; -import { BackupDecryptor, CryptoBackend } from "./common-crypto/CryptoBackend"; -import { RUST_SDK_STORE_PREFIX } from "./rust-crypto/constants"; -import { BootstrapCrossSigningOpts, CrossSigningKeyInfo, CryptoApi, ImportRoomKeysOpts } from "./crypto-api"; -import { DeviceInfoMap } from "./crypto/DeviceList"; +} from "./models/thread.ts"; +import { M_BEACON_INFO, MBeaconInfoEventContent } from "./@types/beacon.ts"; +import { NamespacedValue, UnstableValue } from "./NamespacedValue.ts"; +import { ToDeviceMessageQueue } from "./ToDeviceMessageQueue.ts"; +import { ToDeviceBatch } from "./models/ToDeviceMessage.ts"; +import { IgnoredInvites } from "./models/invites-ignorer.ts"; +import { UIARequest, UIAResponse } from "./@types/uia.ts"; +import { LocalNotificationSettings } from "./@types/local_notifications.ts"; +import { buildFeatureSupportMap, Feature, ServerSupport } from "./feature.ts"; +import { BackupDecryptor, CryptoBackend } from "./common-crypto/CryptoBackend.ts"; +import { RUST_SDK_STORE_PREFIX } from "./rust-crypto/constants.ts"; +import { BootstrapCrossSigningOpts, CrossSigningKeyInfo, CryptoApi, ImportRoomKeysOpts } from "./crypto-api/index.ts"; +import { DeviceInfoMap } from "./crypto/DeviceList.ts"; import { AddSecretStorageKeyOpts, SecretStorageKeyDescription, ServerSideSecretStorage, ServerSideSecretStorageImpl, -} from "./secret-storage"; -import { RegisterRequest, RegisterResponse } from "./@types/registration"; -import { MatrixRTCSessionManager } from "./matrixrtc/MatrixRTCSessionManager"; -import { getRelationsThreadFilter } from "./thread-utils"; -import { KnownMembership, Membership } from "./@types/membership"; -import { RoomMessageEventContent, StickerEventContent } from "./@types/events"; -import { ImageInfo } from "./@types/media"; -import { Capabilities, ServerCapabilities } from "./serverCapabilities"; -import { sha256 } from "./digest"; +} from "./secret-storage.ts"; +import { RegisterRequest, RegisterResponse } from "./@types/registration.ts"; +import { MatrixRTCSessionManager } from "./matrixrtc/MatrixRTCSessionManager.ts"; +import { getRelationsThreadFilter } from "./thread-utils.ts"; +import { KnownMembership, Membership } from "./@types/membership.ts"; +import { RoomMessageEventContent, StickerEventContent } from "./@types/events.ts"; +import { ImageInfo } from "./@types/media.ts"; +import { Capabilities, ServerCapabilities } from "./serverCapabilities.ts"; +import { sha256 } from "./digest.ts"; export type Store = IStore; diff --git a/src/common-crypto/CryptoBackend.ts b/src/common-crypto/CryptoBackend.ts index 7a36dc560e9..bbd6e5ec682 100644 --- a/src/common-crypto/CryptoBackend.ts +++ b/src/common-crypto/CryptoBackend.ts @@ -14,14 +14,14 @@ See the License for the specific language governing permissions and limitations under the License. */ -import type { IDeviceLists, IToDeviceEvent } from "../sync-accumulator"; -import { IClearEvent, MatrixEvent } from "../models/event"; -import { Room } from "../models/room"; -import { CryptoApi, DecryptionFailureCode, ImportRoomKeysOpts } from "../crypto-api"; -import { CrossSigningInfo, UserTrustLevel } from "../crypto/CrossSigning"; -import { IEncryptedEventInfo } from "../crypto/api"; -import { KeyBackupInfo, KeyBackupSession } from "../crypto-api/keybackup"; -import { IMegolmSessionData } from "../@types/crypto"; +import type { IDeviceLists, IToDeviceEvent } from "../sync-accumulator.ts"; +import { IClearEvent, MatrixEvent } from "../models/event.ts"; +import { Room } from "../models/room.ts"; +import { CryptoApi, DecryptionFailureCode, ImportRoomKeysOpts } from "../crypto-api/index.ts"; +import { CrossSigningInfo, UserTrustLevel } from "../crypto/CrossSigning.ts"; +import { IEncryptedEventInfo } from "../crypto/api.ts"; +import { KeyBackupInfo, KeyBackupSession } from "../crypto-api/keybackup.ts"; +import { IMegolmSessionData } from "../@types/crypto.ts"; /** * Common interface for the crypto implementations diff --git a/src/content-helpers.ts b/src/content-helpers.ts index 3f611e36901..ce8b373d93e 100644 --- a/src/content-helpers.ts +++ b/src/content-helpers.ts @@ -14,10 +14,10 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MBeaconEventContent, MBeaconInfoContent, MBeaconInfoEventContent } from "./@types/beacon"; -import { MsgType } from "./@types/event"; -import { M_TEXT, REFERENCE_RELATION } from "./@types/extensible_events"; -import { isProvided } from "./extensible_events_v1/utilities"; +import { MBeaconEventContent, MBeaconInfoContent, MBeaconInfoEventContent } from "./@types/beacon.ts"; +import { MsgType } from "./@types/event.ts"; +import { M_TEXT, REFERENCE_RELATION } from "./@types/extensible_events.ts"; +import { isProvided } from "./extensible_events_v1/utilities.ts"; import { M_ASSET, LocationAssetType, @@ -28,9 +28,9 @@ import { MLocationContent, MAssetContent, LegacyLocationEventContent, -} from "./@types/location"; -import { MRoomTopicEventContent, MTopicContent, M_TOPIC } from "./@types/topic"; -import { RoomMessageEventContent } from "./@types/events"; +} from "./@types/location.ts"; +import { MRoomTopicEventContent, MTopicContent, M_TOPIC } from "./@types/topic.ts"; +import { RoomMessageEventContent } from "./@types/events.ts"; /** * Generates the content for a HTML Message event diff --git a/src/content-repo.ts b/src/content-repo.ts index b127f6d2be5..b6174b6d8d9 100644 --- a/src/content-repo.ts +++ b/src/content-repo.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { encodeParams } from "./utils"; +import { encodeParams } from "./utils.ts"; /** * Get the HTTP URL for an MXC URI. diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index 0c3e6cdb842..6b9db3811dc 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -15,15 +15,15 @@ limitations under the License. */ import type { SecretsBundle } from "@matrix-org/matrix-sdk-crypto-wasm"; -import type { IMegolmSessionData } from "../@types/crypto"; -import { Room } from "../models/room"; -import { DeviceMap } from "../models/device"; -import { UIAuthCallback } from "../interactive-auth"; -import { PassphraseInfo, SecretStorageCallbacks, SecretStorageKeyDescription } from "../secret-storage"; -import { VerificationRequest } from "./verification"; -import { BackupTrustInfo, KeyBackupCheck, KeyBackupInfo } from "./keybackup"; -import { ISignatures } from "../@types/signed"; -import { MatrixEvent } from "../models/event"; +import type { IMegolmSessionData } from "../@types/crypto.ts"; +import { Room } from "../models/room.ts"; +import { DeviceMap } from "../models/device.ts"; +import { UIAuthCallback } from "../interactive-auth.ts"; +import { PassphraseInfo, SecretStorageCallbacks, SecretStorageKeyDescription } from "../secret-storage.ts"; +import { VerificationRequest } from "./verification.ts"; +import { BackupTrustInfo, KeyBackupCheck, KeyBackupInfo } from "./keybackup.ts"; +import { ISignatures } from "../@types/signed.ts"; +import { MatrixEvent } from "../models/event.ts"; /** * Public interface to the cryptography parts of the js-sdk @@ -965,5 +965,5 @@ export interface OwnDeviceKeys { curve25519: string; } -export * from "./verification"; -export * from "./keybackup"; +export * from "./verification.ts"; +export * from "./keybackup.ts"; diff --git a/src/crypto-api/keybackup.ts b/src/crypto-api/keybackup.ts index 71c47d6834f..3209de6c320 100644 --- a/src/crypto-api/keybackup.ts +++ b/src/crypto-api/keybackup.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ISigned } from "../@types/signed"; -import { IEncryptedPayload } from "../crypto/aes"; +import { ISigned } from "../@types/signed.ts"; +import { IEncryptedPayload } from "../crypto/aes.ts"; export interface Curve25519AuthData { public_key: string; diff --git a/src/crypto-api/verification.ts b/src/crypto-api/verification.ts index dd42dc35c9b..daa7bdbceed 100644 --- a/src/crypto-api/verification.ts +++ b/src/crypto-api/verification.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MatrixEvent } from "../models/event"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; +import { MatrixEvent } from "../models/event.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; /** * An incoming, or outgoing, request to verify a user or a device via cross-signing. diff --git a/src/crypto/CrossSigning.ts b/src/crypto/CrossSigning.ts index 95d20da052e..a4caf1c53a1 100644 --- a/src/crypto/CrossSigning.ts +++ b/src/crypto/CrossSigning.ts @@ -19,19 +19,23 @@ limitations under the License. */ import type { PkSigning } from "@matrix-org/olm"; -import { IObject, pkSign, pkVerify } from "./olmlib"; -import { logger } from "../logger"; -import { IndexedDBCryptoStore } from "../crypto/store/indexeddb-crypto-store"; -import { decryptAES, encryptAES } from "./aes"; -import { DeviceInfo } from "./deviceinfo"; -import { ISignedKey, MatrixClient } from "../client"; -import { OlmDevice } from "./OlmDevice"; -import { ICryptoCallbacks } from "."; -import { ISignatures } from "../@types/signed"; -import { CryptoStore, SecretStorePrivateKeys } from "./store/base"; -import { ServerSideSecretStorage, SecretStorageKeyDescription } from "../secret-storage"; -import { CrossSigningKeyInfo, DeviceVerificationStatus, UserVerificationStatus as UserTrustLevel } from "../crypto-api"; -import { decodeBase64, encodeBase64 } from "../base64"; +import { IObject, pkSign, pkVerify } from "./olmlib.ts"; +import { logger } from "../logger.ts"; +import { IndexedDBCryptoStore } from "../crypto/store/indexeddb-crypto-store.ts"; +import { decryptAES, encryptAES } from "./aes.ts"; +import { DeviceInfo } from "./deviceinfo.ts"; +import { ISignedKey, MatrixClient } from "../client.ts"; +import { OlmDevice } from "./OlmDevice.ts"; +import { ICryptoCallbacks } from "./index.ts"; +import { ISignatures } from "../@types/signed.ts"; +import { CryptoStore, SecretStorePrivateKeys } from "./store/base.ts"; +import { ServerSideSecretStorage, SecretStorageKeyDescription } from "../secret-storage.ts"; +import { + CrossSigningKeyInfo, + DeviceVerificationStatus, + UserVerificationStatus as UserTrustLevel, +} from "../crypto-api/index.ts"; +import { decodeBase64, encodeBase64 } from "../base64.ts"; // backwards-compatibility re-exports export { UserTrustLevel }; diff --git a/src/crypto/DeviceList.ts b/src/crypto/DeviceList.ts index 8ad3831893a..320ea6a2653 100644 --- a/src/crypto/DeviceList.ts +++ b/src/crypto/DeviceList.ts @@ -18,17 +18,17 @@ limitations under the License. * Manages the list of other users' devices */ -import { logger } from "../logger"; -import { DeviceInfo, IDevice } from "./deviceinfo"; -import { CrossSigningInfo, ICrossSigningInfo } from "./CrossSigning"; -import * as olmlib from "./olmlib"; -import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store"; -import { chunkPromises, defer, IDeferred, sleep } from "../utils"; -import { DeviceKeys, IDownloadKeyResult, Keys, MatrixClient, SigningKeys } from "../client"; -import { OlmDevice } from "./OlmDevice"; -import { CryptoStore } from "./store/base"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { CryptoEvent, CryptoEventHandlerMap } from "./index"; +import { logger } from "../logger.ts"; +import { DeviceInfo, IDevice } from "./deviceinfo.ts"; +import { CrossSigningInfo, ICrossSigningInfo } from "./CrossSigning.ts"; +import * as olmlib from "./olmlib.ts"; +import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store.ts"; +import { chunkPromises, defer, IDeferred, sleep } from "../utils.ts"; +import { DeviceKeys, IDownloadKeyResult, Keys, MatrixClient, SigningKeys } from "../client.ts"; +import { OlmDevice } from "./OlmDevice.ts"; +import { CryptoStore } from "./store/base.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { CryptoEvent, CryptoEventHandlerMap } from "./index.ts"; /* State transition diagram for DeviceList.deviceTrackingStatus * diff --git a/src/crypto/EncryptionSetup.ts b/src/crypto/EncryptionSetup.ts index b7015b5a0ba..dab5d560693 100644 --- a/src/crypto/EncryptionSetup.ts +++ b/src/crypto/EncryptionSetup.ts @@ -14,17 +14,17 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger } from "../logger"; -import { MatrixEvent } from "../models/event"; -import { createCryptoStoreCacheCallbacks, ICacheCallbacks } from "./CrossSigning"; -import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store"; -import { Method, ClientPrefix } from "../http-api"; -import { Crypto, ICryptoCallbacks } from "./index"; -import { ClientEvent, ClientEventHandlerMap, CrossSigningKeys, ISignedKey, KeySignatures } from "../client"; -import { IKeyBackupInfo } from "./keybackup"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { AccountDataClient, SecretStorageKeyDescription } from "../secret-storage"; -import { BootstrapCrossSigningOpts, CrossSigningKeyInfo } from "../crypto-api"; +import { logger } from "../logger.ts"; +import { MatrixEvent } from "../models/event.ts"; +import { createCryptoStoreCacheCallbacks, ICacheCallbacks } from "./CrossSigning.ts"; +import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store.ts"; +import { Method, ClientPrefix } from "../http-api/index.ts"; +import { Crypto, ICryptoCallbacks } from "./index.ts"; +import { ClientEvent, ClientEventHandlerMap, CrossSigningKeys, ISignedKey, KeySignatures } from "../client.ts"; +import { IKeyBackupInfo } from "./keybackup.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { AccountDataClient, SecretStorageKeyDescription } from "../secret-storage.ts"; +import { BootstrapCrossSigningOpts, CrossSigningKeyInfo } from "../crypto-api/index.ts"; interface ICrossSigningKeys { authUpload: BootstrapCrossSigningOpts["authUploadDeviceSigningKeys"]; diff --git a/src/crypto/OlmDevice.ts b/src/crypto/OlmDevice.ts index 17783af0b06..1006bf0de47 100644 --- a/src/crypto/OlmDevice.ts +++ b/src/crypto/OlmDevice.ts @@ -16,14 +16,14 @@ limitations under the License. import { Account, InboundGroupSession, OutboundGroupSession, Session, Utility } from "@matrix-org/olm"; -import { logger, Logger } from "../logger"; -import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store"; -import { CryptoStore, IProblem, ISessionInfo, IWithheld } from "./store/base"; -import { IOlmDevice, IOutboundGroupSessionKey } from "./algorithms/megolm"; -import { IMegolmSessionData, OlmGroupSessionExtraData } from "../@types/crypto"; -import { IMessage } from "./algorithms/olm"; -import { DecryptionFailureCode } from "../crypto-api"; -import { DecryptionError } from "../common-crypto/CryptoBackend"; +import { logger, Logger } from "../logger.ts"; +import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store.ts"; +import { CryptoStore, IProblem, ISessionInfo, IWithheld } from "./store/base.ts"; +import { IOlmDevice, IOutboundGroupSessionKey } from "./algorithms/megolm.ts"; +import { IMegolmSessionData, OlmGroupSessionExtraData } from "../@types/crypto.ts"; +import { IMessage } from "./algorithms/olm.ts"; +import { DecryptionFailureCode } from "../crypto-api/index.ts"; +import { DecryptionError } from "../common-crypto/CryptoBackend.ts"; // The maximum size of an event is 65K, and we base64 the content, so this is a // reasonable approximation to the biggest plaintext we can encrypt. diff --git a/src/crypto/OutgoingRoomKeyRequestManager.ts b/src/crypto/OutgoingRoomKeyRequestManager.ts index 4628b3e8dd9..4f3cf2534ae 100644 --- a/src/crypto/OutgoingRoomKeyRequestManager.ts +++ b/src/crypto/OutgoingRoomKeyRequestManager.ts @@ -16,12 +16,12 @@ limitations under the License. import { v4 as uuidv4 } from "uuid"; -import { logger } from "../logger"; -import { MatrixClient } from "../client"; -import { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from "./index"; -import { CryptoStore, OutgoingRoomKeyRequest } from "./store/base"; -import { EventType, ToDeviceMessageId } from "../@types/event"; -import { MapWithDefault } from "../utils"; +import { logger } from "../logger.ts"; +import { MatrixClient } from "../client.ts"; +import { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from "./index.ts"; +import { CryptoStore, OutgoingRoomKeyRequest } from "./store/base.ts"; +import { EventType, ToDeviceMessageId } from "../@types/event.ts"; +import { MapWithDefault } from "../utils.ts"; /** * Internal module. Management of outgoing room key requests. diff --git a/src/crypto/RoomList.ts b/src/crypto/RoomList.ts index b100bd30218..75573d64022 100644 --- a/src/crypto/RoomList.ts +++ b/src/crypto/RoomList.ts @@ -18,8 +18,8 @@ limitations under the License. * Manages the list of encrypted rooms */ -import { CryptoStore } from "./store/base"; -import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store"; +import { CryptoStore } from "./store/base.ts"; +import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store.ts"; /* eslint-disable camelcase */ export interface IRoomEncryption { diff --git a/src/crypto/SecretSharing.ts b/src/crypto/SecretSharing.ts index 5083a8c243b..11def73715e 100644 --- a/src/crypto/SecretSharing.ts +++ b/src/crypto/SecretSharing.ts @@ -15,13 +15,13 @@ limitations under the License. */ import { v4 as uuidv4 } from "uuid"; -import { MatrixClient } from "../client"; -import { ICryptoCallbacks, IEncryptedContent } from "./index"; -import { defer, IDeferred } from "../utils"; -import { ToDeviceMessageId } from "../@types/event"; -import { logger } from "../logger"; -import { MatrixEvent } from "../models/event"; -import * as olmlib from "./olmlib"; +import { MatrixClient } from "../client.ts"; +import { ICryptoCallbacks, IEncryptedContent } from "./index.ts"; +import { defer, IDeferred } from "../utils.ts"; +import { ToDeviceMessageId } from "../@types/event.ts"; +import { logger } from "../logger.ts"; +import { MatrixEvent } from "../models/event.ts"; +import * as olmlib from "./olmlib.ts"; export interface ISecretRequest { requestId: string; diff --git a/src/crypto/SecretStorage.ts b/src/crypto/SecretStorage.ts index 452d1fde99f..6bd653dd0c0 100644 --- a/src/crypto/SecretStorage.ts +++ b/src/crypto/SecretStorage.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ICryptoCallbacks } from "."; -import { MatrixEvent } from "../models/event"; -import { MatrixClient } from "../client"; +import { ICryptoCallbacks } from "./index.ts"; +import { MatrixEvent } from "../models/event.ts"; +import { MatrixClient } from "../client.ts"; import { SecretStorageKeyDescription, SecretStorageKeyTuple, @@ -25,8 +25,8 @@ import { AccountDataClient, ServerSideSecretStorage, ServerSideSecretStorageImpl, -} from "../secret-storage"; -import { ISecretRequest, SecretSharing } from "./SecretSharing"; +} from "../secret-storage.ts"; +import { ISecretRequest, SecretSharing } from "./SecretSharing.ts"; /* re-exports for backwards compatibility */ export type { @@ -34,9 +34,9 @@ export type { SecretStorageKeyTuple, SecretStorageKeyObject, SECRET_STORAGE_ALGORITHM_V1_AES, -} from "../secret-storage"; +} from "../secret-storage.ts"; -export type { ISecretRequest } from "./SecretSharing"; +export type { ISecretRequest } from "./SecretSharing.ts"; /** * Implements Secure Secret Storage and Sharing (MSC1946) diff --git a/src/crypto/aes.ts b/src/crypto/aes.ts index e6b6e2a817e..6c6779d0611 100644 --- a/src/crypto/aes.ts +++ b/src/crypto/aes.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { decodeBase64, encodeBase64 } from "../base64"; +import { decodeBase64, encodeBase64 } from "../base64.ts"; // salt for HKDF, with 8 bytes of zeros const zeroSalt = new Uint8Array(8); diff --git a/src/crypto/algorithms/base.ts b/src/crypto/algorithms/base.ts index 2dda6e91efa..9b038426147 100644 --- a/src/crypto/algorithms/base.ts +++ b/src/crypto/algorithms/base.ts @@ -18,15 +18,15 @@ limitations under the License. * Internal module. Defines the base classes of the encryption implementations */ -import type { IMegolmSessionData } from "../../@types/crypto"; -import { MatrixClient } from "../../client"; -import { Room } from "../../models/room"; -import { OlmDevice } from "../OlmDevice"; -import { IContent, MatrixEvent, RoomMember } from "../../matrix"; -import { Crypto, IEncryptedContent, IEventDecryptionResult, IncomingRoomKeyRequest } from ".."; -import { DeviceInfo } from "../deviceinfo"; -import { IRoomEncryption } from "../RoomList"; -import { DeviceInfoMap } from "../DeviceList"; +import type { IMegolmSessionData } from "../../@types/crypto.ts"; +import { MatrixClient } from "../../client.ts"; +import { Room } from "../../models/room.ts"; +import { OlmDevice } from "../OlmDevice.ts"; +import { IContent, MatrixEvent, RoomMember } from "../../matrix.ts"; +import { Crypto, IEncryptedContent, IEventDecryptionResult, IncomingRoomKeyRequest } from "../index.ts"; +import { DeviceInfo } from "../deviceinfo.ts"; +import { IRoomEncryption } from "../RoomList.ts"; +import { DeviceInfoMap } from "../DeviceList.ts"; /** * Map of registered encryption algorithm classes. A map from string to {@link EncryptionAlgorithm} class @@ -233,4 +233,4 @@ export function registerAlgorithm

( } /* Re-export for backwards compatibility. Deprecated: this is an internal class. */ -export { DecryptionError } from "../../common-crypto/CryptoBackend"; +export { DecryptionError } from "../../common-crypto/CryptoBackend.ts"; diff --git a/src/crypto/algorithms/index.ts b/src/crypto/algorithms/index.ts index b3c5b0ede84..947c6e0ea2b 100644 --- a/src/crypto/algorithms/index.ts +++ b/src/crypto/algorithms/index.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import "./olm"; -import "./megolm"; +import "./olm.ts"; +import "./megolm.ts"; -export * from "./base"; +export * from "./base.ts"; diff --git a/src/crypto/algorithms/megolm.ts b/src/crypto/algorithms/megolm.ts index 5fa4a1b757e..9fde8e5bc9c 100644 --- a/src/crypto/algorithms/megolm.ts +++ b/src/crypto/algorithms/megolm.ts @@ -20,9 +20,9 @@ limitations under the License. import { v4 as uuidv4 } from "uuid"; -import type { IEventDecryptionResult, IMegolmSessionData } from "../../@types/crypto"; -import { logger, Logger } from "../../logger"; -import * as olmlib from "../olmlib"; +import type { IEventDecryptionResult, IMegolmSessionData } from "../../@types/crypto.ts"; +import { logger, Logger } from "../../logger.ts"; +import * as olmlib from "../olmlib.ts"; import { DecryptionAlgorithm, DecryptionClassParams, @@ -30,22 +30,22 @@ import { IParams, registerAlgorithm, UnknownDeviceError, -} from "./base"; -import { IDecryptedGroupMessage, WITHHELD_MESSAGES } from "../OlmDevice"; -import { Room } from "../../models/room"; -import { DeviceInfo } from "../deviceinfo"; -import { IOlmSessionResult } from "../olmlib"; -import { DeviceInfoMap } from "../DeviceList"; -import { IContent, MatrixEvent } from "../../models/event"; -import { EventType, MsgType, ToDeviceMessageId } from "../../@types/event"; -import { IMegolmEncryptedContent, IncomingRoomKeyRequest, IEncryptedContent } from "../index"; -import { RoomKeyRequestState } from "../OutgoingRoomKeyRequestManager"; -import { OlmGroupSessionExtraData } from "../../@types/crypto"; -import { MatrixError } from "../../http-api"; -import { immediate, MapWithDefault } from "../../utils"; -import { KnownMembership } from "../../@types/membership"; -import { DecryptionFailureCode } from "../../crypto-api"; -import { DecryptionError } from "../../common-crypto/CryptoBackend"; +} from "./base.ts"; +import { IDecryptedGroupMessage, WITHHELD_MESSAGES } from "../OlmDevice.ts"; +import { Room } from "../../models/room.ts"; +import { DeviceInfo } from "../deviceinfo.ts"; +import { IOlmSessionResult } from "../olmlib.ts"; +import { DeviceInfoMap } from "../DeviceList.ts"; +import { IContent, MatrixEvent } from "../../models/event.ts"; +import { EventType, MsgType, ToDeviceMessageId } from "../../@types/event.ts"; +import { IMegolmEncryptedContent, IncomingRoomKeyRequest, IEncryptedContent } from "../index.ts"; +import { RoomKeyRequestState } from "../OutgoingRoomKeyRequestManager.ts"; +import { OlmGroupSessionExtraData } from "../../@types/crypto.ts"; +import { MatrixError } from "../../http-api/index.ts"; +import { immediate, MapWithDefault } from "../../utils.ts"; +import { KnownMembership } from "../../@types/membership.ts"; +import { DecryptionFailureCode } from "../../crypto-api/index.ts"; +import { DecryptionError } from "../../common-crypto/CryptoBackend.ts"; // determine whether the key can be shared with invitees export function isRoomSharedHistory(room: Room): boolean { diff --git a/src/crypto/algorithms/olm.ts b/src/crypto/algorithms/olm.ts index 3bcff5872b0..eb93a06a171 100644 --- a/src/crypto/algorithms/olm.ts +++ b/src/crypto/algorithms/olm.ts @@ -18,17 +18,17 @@ limitations under the License. * Defines m.olm encryption/decryption */ -import type { IEventDecryptionResult } from "../../@types/crypto"; -import { logger } from "../../logger"; -import * as olmlib from "../olmlib"; -import { DeviceInfo } from "../deviceinfo"; -import { DecryptionAlgorithm, EncryptionAlgorithm, registerAlgorithm } from "./base"; -import { Room } from "../../models/room"; -import { IContent, MatrixEvent } from "../../models/event"; -import { IEncryptedContent, IOlmEncryptedContent } from "../index"; -import { IInboundSession } from "../OlmDevice"; -import { DecryptionFailureCode } from "../../crypto-api"; -import { DecryptionError } from "../../common-crypto/CryptoBackend"; +import type { IEventDecryptionResult } from "../../@types/crypto.ts"; +import { logger } from "../../logger.ts"; +import * as olmlib from "../olmlib.ts"; +import { DeviceInfo } from "../deviceinfo.ts"; +import { DecryptionAlgorithm, EncryptionAlgorithm, registerAlgorithm } from "./base.ts"; +import { Room } from "../../models/room.ts"; +import { IContent, MatrixEvent } from "../../models/event.ts"; +import { IEncryptedContent, IOlmEncryptedContent } from "../index.ts"; +import { IInboundSession } from "../OlmDevice.ts"; +import { DecryptionFailureCode } from "../../crypto-api/index.ts"; +import { DecryptionError } from "../../common-crypto/CryptoBackend.ts"; const DeviceVerification = DeviceInfo.DeviceVerification; diff --git a/src/crypto/api.ts b/src/crypto/api.ts index a0e11a415be..0b520277772 100644 --- a/src/crypto/api.ts +++ b/src/crypto/api.ts @@ -14,26 +14,26 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { DeviceInfo } from "./deviceinfo"; +import { DeviceInfo } from "./deviceinfo.ts"; /* re-exports for backwards compatibility. */ // CrossSigningKey is used as a value in `client.ts`, we can't export it as a type -export { CrossSigningKey } from "../crypto-api"; +export { CrossSigningKey } from "../crypto-api/index.ts"; export type { GeneratedSecretStorageKey as IRecoveryKey, CreateSecretStorageOpts as ICreateSecretStorageOpts, -} from "../crypto-api"; +} from "../crypto-api/index.ts"; export type { ImportRoomKeyProgressData as IImportOpts, ImportRoomKeysOpts as IImportRoomKeysOpts, -} from "../crypto-api"; +} from "../crypto-api/index.ts"; export type { AddSecretStorageKeyOpts as IAddSecretStorageKeyOpts, PassphraseInfo as IPassphraseInfo, SecretStorageKeyDescription as ISecretStorageKeyInfo, -} from "../secret-storage"; +} from "../secret-storage.ts"; // TODO: Merge this with crypto.js once converted diff --git a/src/crypto/backup.ts b/src/crypto/backup.ts index cbbecbca38e..3ac6a3ddc0b 100644 --- a/src/crypto/backup.ts +++ b/src/crypto/backup.ts @@ -18,29 +18,29 @@ limitations under the License. * Classes for dealing with key backup. */ -import type { IMegolmSessionData } from "../@types/crypto"; -import { MatrixClient } from "../client"; -import { logger } from "../logger"; -import { MEGOLM_ALGORITHM, verifySignature } from "./olmlib"; -import { DeviceInfo } from "./deviceinfo"; -import { DeviceTrustLevel } from "./CrossSigning"; -import { keyFromPassphrase } from "./key_passphrase"; -import { encodeUri, safeSet, sleep } from "../utils"; -import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store"; -import { encodeRecoveryKey } from "./recoverykey"; -import { calculateKeyCheck, decryptAES, encryptAES, IEncryptedPayload } from "./aes"; +import type { IMegolmSessionData } from "../@types/crypto.ts"; +import { MatrixClient } from "../client.ts"; +import { logger } from "../logger.ts"; +import { MEGOLM_ALGORITHM, verifySignature } from "./olmlib.ts"; +import { DeviceInfo } from "./deviceinfo.ts"; +import { DeviceTrustLevel } from "./CrossSigning.ts"; +import { keyFromPassphrase } from "./key_passphrase.ts"; +import { encodeUri, safeSet, sleep } from "../utils.ts"; +import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store.ts"; +import { encodeRecoveryKey } from "./recoverykey.ts"; +import { calculateKeyCheck, decryptAES, encryptAES, IEncryptedPayload } from "./aes.ts"; import { Curve25519SessionData, IAes256AuthData, ICurve25519AuthData, IKeyBackupInfo, IKeyBackupSession, -} from "./keybackup"; -import { UnstableValue } from "../NamespacedValue"; -import { CryptoEvent } from "./index"; -import { ClientPrefix, HTTPError, MatrixError, Method } from "../http-api"; -import { BackupTrustInfo } from "../crypto-api/keybackup"; -import { BackupDecryptor } from "../common-crypto/CryptoBackend"; +} from "./keybackup.ts"; +import { UnstableValue } from "../NamespacedValue.ts"; +import { CryptoEvent } from "./index.ts"; +import { ClientPrefix, HTTPError, MatrixError, Method } from "../http-api/index.ts"; +import { BackupTrustInfo } from "../crypto-api/keybackup.ts"; +import { BackupDecryptor } from "../common-crypto/CryptoBackend.ts"; const KEY_BACKUP_KEYS_PER_REQUEST = 200; const KEY_BACKUP_CHECK_RATE_LIMIT = 5000; // ms diff --git a/src/crypto/dehydration.ts b/src/crypto/dehydration.ts index a24e65e4537..01dafa83c71 100644 --- a/src/crypto/dehydration.ts +++ b/src/crypto/dehydration.ts @@ -16,14 +16,14 @@ limitations under the License. import anotherjson from "another-json"; -import type { IDeviceKeys, IOneTimeKey } from "../@types/crypto"; -import { decodeBase64, encodeBase64 } from "../base64"; -import { IndexedDBCryptoStore } from "../crypto/store/indexeddb-crypto-store"; -import { decryptAES, encryptAES } from "./aes"; -import { logger } from "../logger"; -import { Crypto } from "./index"; -import { Method } from "../http-api"; -import { SecretStorageKeyDescription } from "../secret-storage"; +import type { IDeviceKeys, IOneTimeKey } from "../@types/crypto.ts"; +import { decodeBase64, encodeBase64 } from "../base64.ts"; +import { IndexedDBCryptoStore } from "../crypto/store/indexeddb-crypto-store.ts"; +import { decryptAES, encryptAES } from "./aes.ts"; +import { logger } from "../logger.ts"; +import { Crypto } from "./index.ts"; +import { Method } from "../http-api/index.ts"; +import { SecretStorageKeyDescription } from "../secret-storage.ts"; export interface IDehydratedDevice { device_id: string; // eslint-disable-line camelcase diff --git a/src/crypto/device-converter.ts b/src/crypto/device-converter.ts index cf32ef6141e..a2591150cfc 100644 --- a/src/crypto/device-converter.ts +++ b/src/crypto/device-converter.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { Device } from "../models/device"; -import { DeviceInfo } from "./deviceinfo"; +import { Device } from "../models/device.ts"; +import { DeviceInfo } from "./deviceinfo.ts"; /** * Convert a {@link DeviceInfo} to a {@link Device}. diff --git a/src/crypto/deviceinfo.ts b/src/crypto/deviceinfo.ts index 8b41c3c6784..7641af31692 100644 --- a/src/crypto/deviceinfo.ts +++ b/src/crypto/deviceinfo.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ISignatures } from "../@types/signed"; -import { DeviceVerification } from "../models/device"; +import { ISignatures } from "../@types/signed.ts"; +import { DeviceVerification } from "../models/device.ts"; export interface IDevice { keys: Record; diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 07601b799cf..420160c0de4 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -20,55 +20,60 @@ limitations under the License. import anotherjson from "another-json"; import { v4 as uuidv4 } from "uuid"; -import type { IDeviceKeys, IEventDecryptionResult, IMegolmSessionData, IOneTimeKey } from "../@types/crypto"; +import type { IDeviceKeys, IEventDecryptionResult, IMegolmSessionData, IOneTimeKey } from "../@types/crypto.ts"; import type { PkDecryption, PkSigning } from "@matrix-org/olm"; -import { EventType, ToDeviceMessageId } from "../@types/event"; -import { TypedReEmitter } from "../ReEmitter"; -import { logger } from "../logger"; -import { IExportedDevice, OlmDevice } from "./OlmDevice"; -import { IOlmDevice } from "./algorithms/megolm"; -import * as olmlib from "./olmlib"; -import { DeviceInfoMap, DeviceList } from "./DeviceList"; -import { DeviceInfo, IDevice } from "./deviceinfo"; -import type { DecryptionAlgorithm, EncryptionAlgorithm } from "./algorithms"; -import * as algorithms from "./algorithms"; -import { createCryptoStoreCacheCallbacks, CrossSigningInfo, DeviceTrustLevel, UserTrustLevel } from "./CrossSigning"; -import { EncryptionSetupBuilder } from "./EncryptionSetup"; -import { SecretStorage as LegacySecretStorage } from "./SecretStorage"; -import { CrossSigningKey, ICreateSecretStorageOpts, IEncryptedEventInfo, IRecoveryKey } from "./api"; -import { OutgoingRoomKeyRequestManager } from "./OutgoingRoomKeyRequestManager"; -import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store"; -import { VerificationBase } from "./verification/Base"; -import { ReciprocateQRCode, SCAN_QR_CODE_METHOD, SHOW_QR_CODE_METHOD } from "./verification/QRCode"; -import { SAS as SASVerification } from "./verification/SAS"; -import { keyFromPassphrase } from "./key_passphrase"; -import { decodeRecoveryKey, encodeRecoveryKey } from "./recoverykey"; -import { VerificationRequest } from "./verification/request/VerificationRequest"; -import { InRoomChannel, InRoomRequests } from "./verification/request/InRoomChannel"; -import { Request, ToDeviceChannel, ToDeviceRequests } from "./verification/request/ToDeviceChannel"; -import { IllegalMethod } from "./verification/IllegalMethod"; -import { KeySignatureUploadError } from "../errors"; -import { calculateKeyCheck, decryptAES, encryptAES, IEncryptedPayload } from "./aes"; -import { DehydrationManager } from "./dehydration"; -import { BackupManager, LibOlmBackupDecryptor, backupTrustInfoFromLegacyTrustInfo } from "./backup"; -import { IStore } from "../store"; -import { Room, RoomEvent } from "../models/room"; -import { RoomMember, RoomMemberEvent } from "../models/room-member"; -import { EventStatus, IContent, IEvent, MatrixEvent, MatrixEventEvent } from "../models/event"; -import { ToDeviceBatch } from "../models/ToDeviceMessage"; -import { ClientEvent, IKeysUploadResponse, ISignedKey, IUploadKeySignaturesResponse, MatrixClient } from "../client"; -import { IRoomEncryption, RoomList } from "./RoomList"; -import { IKeyBackupInfo } from "./keybackup"; -import { ISyncStateData } from "../sync"; -import { CryptoStore } from "./store/base"; -import { IVerificationChannel } from "./verification/request/Channel"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { IDeviceLists, ISyncResponse, IToDeviceEvent } from "../sync-accumulator"; -import { ISignatures } from "../@types/signed"; -import { IMessage } from "./algorithms/olm"; -import { BackupDecryptor, CryptoBackend, DecryptionError, OnSyncCompletedData } from "../common-crypto/CryptoBackend"; -import { RoomState, RoomStateEvent } from "../models/room-state"; -import { MapWithDefault, recursiveMapToObject } from "../utils"; +import { EventType, ToDeviceMessageId } from "../@types/event.ts"; +import { TypedReEmitter } from "../ReEmitter.ts"; +import { logger } from "../logger.ts"; +import { IExportedDevice, OlmDevice } from "./OlmDevice.ts"; +import { IOlmDevice } from "./algorithms/megolm.ts"; +import * as olmlib from "./olmlib.ts"; +import { DeviceInfoMap, DeviceList } from "./DeviceList.ts"; +import { DeviceInfo, IDevice } from "./deviceinfo.ts"; +import type { DecryptionAlgorithm, EncryptionAlgorithm } from "./algorithms/index.ts"; +import * as algorithms from "./algorithms/index.ts"; +import { createCryptoStoreCacheCallbacks, CrossSigningInfo, DeviceTrustLevel, UserTrustLevel } from "./CrossSigning.ts"; +import { EncryptionSetupBuilder } from "./EncryptionSetup.ts"; +import { SecretStorage as LegacySecretStorage } from "./SecretStorage.ts"; +import { CrossSigningKey, ICreateSecretStorageOpts, IEncryptedEventInfo, IRecoveryKey } from "./api.ts"; +import { OutgoingRoomKeyRequestManager } from "./OutgoingRoomKeyRequestManager.ts"; +import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store.ts"; +import { VerificationBase } from "./verification/Base.ts"; +import { ReciprocateQRCode, SCAN_QR_CODE_METHOD, SHOW_QR_CODE_METHOD } from "./verification/QRCode.ts"; +import { SAS as SASVerification } from "./verification/SAS.ts"; +import { keyFromPassphrase } from "./key_passphrase.ts"; +import { decodeRecoveryKey, encodeRecoveryKey } from "./recoverykey.ts"; +import { VerificationRequest } from "./verification/request/VerificationRequest.ts"; +import { InRoomChannel, InRoomRequests } from "./verification/request/InRoomChannel.ts"; +import { Request, ToDeviceChannel, ToDeviceRequests } from "./verification/request/ToDeviceChannel.ts"; +import { IllegalMethod } from "./verification/IllegalMethod.ts"; +import { KeySignatureUploadError } from "../errors.ts"; +import { calculateKeyCheck, decryptAES, encryptAES, IEncryptedPayload } from "./aes.ts"; +import { DehydrationManager } from "./dehydration.ts"; +import { BackupManager, LibOlmBackupDecryptor, backupTrustInfoFromLegacyTrustInfo } from "./backup.ts"; +import { IStore } from "../store/index.ts"; +import { Room, RoomEvent } from "../models/room.ts"; +import { RoomMember, RoomMemberEvent } from "../models/room-member.ts"; +import { EventStatus, IContent, IEvent, MatrixEvent, MatrixEventEvent } from "../models/event.ts"; +import { ToDeviceBatch } from "../models/ToDeviceMessage.ts"; +import { ClientEvent, IKeysUploadResponse, ISignedKey, IUploadKeySignaturesResponse, MatrixClient } from "../client.ts"; +import { IRoomEncryption, RoomList } from "./RoomList.ts"; +import { IKeyBackupInfo } from "./keybackup.ts"; +import { ISyncStateData } from "../sync.ts"; +import { CryptoStore } from "./store/base.ts"; +import { IVerificationChannel } from "./verification/request/Channel.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { IDeviceLists, ISyncResponse, IToDeviceEvent } from "../sync-accumulator.ts"; +import { ISignatures } from "../@types/signed.ts"; +import { IMessage } from "./algorithms/olm.ts"; +import { + BackupDecryptor, + CryptoBackend, + DecryptionError, + OnSyncCompletedData, +} from "../common-crypto/CryptoBackend.ts"; +import { RoomState, RoomStateEvent } from "../models/room-state.ts"; +import { MapWithDefault, recursiveMapToObject } from "../utils.ts"; import { AccountDataClient, AddSecretStorageKeyOpts, @@ -77,8 +82,8 @@ import { SecretStorageKeyObject, SecretStorageKeyTuple, ServerSideSecretStorageImpl, -} from "../secret-storage"; -import { ISecretRequest } from "./SecretSharing"; +} from "../secret-storage.ts"; +import { ISecretRequest } from "./SecretSharing.ts"; import { BackupTrustInfo, BootstrapCrossSigningOpts, @@ -94,18 +99,18 @@ import { KeyBackupInfo, OwnDeviceKeys, VerificationRequest as CryptoApiVerificationRequest, -} from "../crypto-api"; -import { Device, DeviceMap } from "../models/device"; -import { deviceInfoToDevice } from "./device-converter"; -import { ClientPrefix, MatrixError, Method } from "../http-api"; -import { decodeBase64, encodeBase64 } from "../base64"; -import { KnownMembership } from "../@types/membership"; +} from "../crypto-api/index.ts"; +import { Device, DeviceMap } from "../models/device.ts"; +import { deviceInfoToDevice } from "./device-converter.ts"; +import { ClientPrefix, MatrixError, Method } from "../http-api/index.ts"; +import { decodeBase64, encodeBase64 } from "../base64.ts"; +import { KnownMembership } from "../@types/membership.ts"; /* re-exports for backwards compatibility */ export type { BootstrapCrossSigningOpts as IBootstrapCrossSigningOpts, CryptoCallbacks as ICryptoCallbacks, -} from "../crypto-api"; +} from "../crypto-api/index.ts"; const DeviceVerification = DeviceInfo.DeviceVerification; @@ -4374,4 +4379,4 @@ class IncomingRoomKeyRequestCancellation { } // a number of types are re-exported for backwards compatibility, in case any applications are referencing it. -export type { IEventDecryptionResult, IMegolmSessionData } from "../@types/crypto"; +export type { IEventDecryptionResult, IMegolmSessionData } from "../@types/crypto.ts"; diff --git a/src/crypto/key_passphrase.ts b/src/crypto/key_passphrase.ts index c56c3ce2e5c..85b9c48fbcd 100644 --- a/src/crypto/key_passphrase.ts +++ b/src/crypto/key_passphrase.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { randomString } from "../randomstring"; +import { randomString } from "../randomstring.ts"; const DEFAULT_ITERATIONS = 500000; diff --git a/src/crypto/keybackup.ts b/src/crypto/keybackup.ts index 8ef04176cb2..4399a38601f 100644 --- a/src/crypto/keybackup.ts +++ b/src/crypto/keybackup.ts @@ -15,7 +15,7 @@ limitations under the License. */ // Export for backward compatibility -import { ImportRoomKeyProgressData } from "../crypto-api"; +import { ImportRoomKeyProgressData } from "../crypto-api/index.ts"; export type { Curve25519AuthData as ICurve25519AuthData, @@ -24,7 +24,7 @@ export type { Curve25519SessionData, KeyBackupSession as IKeyBackupSession, KeyBackupRoomSessions as IKeyBackupRoomSessions, -} from "../crypto-api/keybackup"; +} from "../crypto-api/keybackup.ts"; /* eslint-enable camelcase */ diff --git a/src/crypto/olmlib.ts b/src/crypto/olmlib.ts index 7396ef47988..9eceaf48bc7 100644 --- a/src/crypto/olmlib.ts +++ b/src/crypto/olmlib.ts @@ -21,16 +21,16 @@ limitations under the License. import anotherjson from "another-json"; import type { PkSigning } from "@matrix-org/olm"; -import type { IOneTimeKey } from "../@types/crypto"; -import { OlmDevice } from "./OlmDevice"; -import { DeviceInfo } from "./deviceinfo"; -import { Logger, logger } from "../logger"; -import { IClaimOTKsResult, MatrixClient } from "../client"; -import { ISignatures } from "../@types/signed"; -import { MatrixEvent } from "../models/event"; -import { EventType } from "../@types/event"; -import { IMessage } from "./algorithms/olm"; -import { MapWithDefault } from "../utils"; +import type { IOneTimeKey } from "../@types/crypto.ts"; +import { OlmDevice } from "./OlmDevice.ts"; +import { DeviceInfo } from "./deviceinfo.ts"; +import { Logger, logger } from "../logger.ts"; +import { IClaimOTKsResult, MatrixClient } from "../client.ts"; +import { ISignatures } from "../@types/signed.ts"; +import { MatrixEvent } from "../models/event.ts"; +import { EventType } from "../@types/event.ts"; +import { IMessage } from "./algorithms/olm.ts"; +import { MapWithDefault } from "../utils.ts"; enum Algorithm { Olm = "m.olm.v1.curve25519-aes-sha2", diff --git a/src/crypto/store/base.ts b/src/crypto/store/base.ts index 871804b7379..daf11b5b0b3 100644 --- a/src/crypto/store/base.ts +++ b/src/crypto/store/base.ts @@ -14,19 +14,19 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from "../index"; -import { RoomKeyRequestState } from "../OutgoingRoomKeyRequestManager"; -import { IOlmDevice } from "../algorithms/megolm"; -import { TrackingStatus } from "../DeviceList"; -import { IRoomEncryption } from "../RoomList"; -import { IDevice } from "../deviceinfo"; -import { ICrossSigningInfo } from "../CrossSigning"; -import { Logger } from "../../logger"; -import { InboundGroupSessionData } from "../OlmDevice"; -import { MatrixEvent } from "../../models/event"; -import { DehydrationManager } from "../dehydration"; -import { IEncryptedPayload } from "../aes"; -import { CrossSigningKeyInfo } from "../../crypto-api"; +import { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from "../index.ts"; +import { RoomKeyRequestState } from "../OutgoingRoomKeyRequestManager.ts"; +import { IOlmDevice } from "../algorithms/megolm.ts"; +import { TrackingStatus } from "../DeviceList.ts"; +import { IRoomEncryption } from "../RoomList.ts"; +import { IDevice } from "../deviceinfo.ts"; +import { ICrossSigningInfo } from "../CrossSigning.ts"; +import { Logger } from "../../logger.ts"; +import { InboundGroupSessionData } from "../OlmDevice.ts"; +import { MatrixEvent } from "../../models/event.ts"; +import { DehydrationManager } from "../dehydration.ts"; +import { IEncryptedPayload } from "../aes.ts"; +import { CrossSigningKeyInfo } from "../../crypto-api/index.ts"; /** * Internal module. Definitions for storage for the crypto module diff --git a/src/crypto/store/indexeddb-crypto-store-backend.ts b/src/crypto/store/indexeddb-crypto-store-backend.ts index 08d4c0f6e98..1ef3dd120e2 100644 --- a/src/crypto/store/indexeddb-crypto-store-backend.ts +++ b/src/crypto/store/indexeddb-crypto-store-backend.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { Logger, logger } from "../../logger"; -import { deepCompare } from "../../utils"; +import { Logger, logger } from "../../logger.ts"; +import { deepCompare } from "../../utils.ts"; import { CryptoStore, IDeviceData, @@ -31,13 +31,13 @@ import { SecretStorePrivateKeys, SESSION_BATCH_SIZE, ACCOUNT_OBJECT_KEY_MIGRATION_STATE, -} from "./base"; -import { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from "../index"; -import { IOlmDevice } from "../algorithms/megolm"; -import { IRoomEncryption } from "../RoomList"; -import { InboundGroupSessionData } from "../OlmDevice"; -import { IndexedDBCryptoStore } from "./indexeddb-crypto-store"; -import { CrossSigningKeyInfo } from "../../crypto-api"; +} from "./base.ts"; +import { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from "../index.ts"; +import { IOlmDevice } from "../algorithms/megolm.ts"; +import { IRoomEncryption } from "../RoomList.ts"; +import { InboundGroupSessionData } from "../OlmDevice.ts"; +import { IndexedDBCryptoStore } from "./indexeddb-crypto-store.ts"; +import { CrossSigningKeyInfo } from "../../crypto-api/index.ts"; const PROFILE_TRANSACTIONS = false; diff --git a/src/crypto/store/indexeddb-crypto-store.ts b/src/crypto/store/indexeddb-crypto-store.ts index 8fe488e08d0..29d32b5e34c 100644 --- a/src/crypto/store/indexeddb-crypto-store.ts +++ b/src/crypto/store/indexeddb-crypto-store.ts @@ -14,12 +14,12 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger, Logger } from "../../logger"; -import { LocalStorageCryptoStore } from "./localStorage-crypto-store"; -import { MemoryCryptoStore } from "./memory-crypto-store"; -import * as IndexedDBCryptoStoreBackend from "./indexeddb-crypto-store-backend"; -import { InvalidCryptoStoreError, InvalidCryptoStoreState } from "../../errors"; -import * as IndexedDBHelpers from "../../indexeddb-helpers"; +import { logger, Logger } from "../../logger.ts"; +import { LocalStorageCryptoStore } from "./localStorage-crypto-store.ts"; +import { MemoryCryptoStore } from "./memory-crypto-store.ts"; +import * as IndexedDBCryptoStoreBackend from "./indexeddb-crypto-store-backend.ts"; +import { InvalidCryptoStoreError, InvalidCryptoStoreState } from "../../errors.ts"; +import * as IndexedDBHelpers from "../../indexeddb-helpers.ts"; import { CryptoStore, IDeviceData, @@ -34,12 +34,12 @@ import { ParkedSharedHistory, SecretStorePrivateKeys, ACCOUNT_OBJECT_KEY_MIGRATION_STATE, -} from "./base"; -import { IRoomKeyRequestBody } from "../index"; -import { IOlmDevice } from "../algorithms/megolm"; -import { IRoomEncryption } from "../RoomList"; -import { InboundGroupSessionData } from "../OlmDevice"; -import { CrossSigningKeyInfo } from "../../crypto-api"; +} from "./base.ts"; +import { IRoomKeyRequestBody } from "../index.ts"; +import { IOlmDevice } from "../algorithms/megolm.ts"; +import { IRoomEncryption } from "../RoomList.ts"; +import { InboundGroupSessionData } from "../OlmDevice.ts"; +import { CrossSigningKeyInfo } from "../../crypto-api/index.ts"; /* * Internal module. indexeddb storage for e2e. diff --git a/src/crypto/store/localStorage-crypto-store.ts b/src/crypto/store/localStorage-crypto-store.ts index 41821ec62a5..d24e648d634 100644 --- a/src/crypto/store/localStorage-crypto-store.ts +++ b/src/crypto/store/localStorage-crypto-store.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger } from "../../logger"; -import { MemoryCryptoStore } from "./memory-crypto-store"; +import { logger } from "../../logger.ts"; +import { MemoryCryptoStore } from "./memory-crypto-store.ts"; import { CryptoStore, IDeviceData, @@ -28,12 +28,12 @@ import { Mode, SecretStorePrivateKeys, SESSION_BATCH_SIZE, -} from "./base"; -import { IOlmDevice } from "../algorithms/megolm"; -import { IRoomEncryption } from "../RoomList"; -import { InboundGroupSessionData } from "../OlmDevice"; -import { safeSet } from "../../utils"; -import { CrossSigningKeyInfo } from "../../crypto-api"; +} from "./base.ts"; +import { IOlmDevice } from "../algorithms/megolm.ts"; +import { IRoomEncryption } from "../RoomList.ts"; +import { InboundGroupSessionData } from "../OlmDevice.ts"; +import { safeSet } from "../../utils.ts"; +import { CrossSigningKeyInfo } from "../../crypto-api/index.ts"; /** * Internal module. Partial localStorage backed storage for e2e. diff --git a/src/crypto/store/memory-crypto-store.ts b/src/crypto/store/memory-crypto-store.ts index 4fd8a57f85e..65fca29d7b7 100644 --- a/src/crypto/store/memory-crypto-store.ts +++ b/src/crypto/store/memory-crypto-store.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger } from "../../logger"; -import { deepCompare, promiseTry, safeSet } from "../../utils"; +import { logger } from "../../logger.ts"; +import { deepCompare, promiseTry, safeSet } from "../../utils.ts"; import { CryptoStore, IDeviceData, @@ -30,12 +30,12 @@ import { ParkedSharedHistory, SecretStorePrivateKeys, SESSION_BATCH_SIZE, -} from "./base"; -import { IRoomKeyRequestBody } from "../index"; -import { IOlmDevice } from "../algorithms/megolm"; -import { IRoomEncryption } from "../RoomList"; -import { InboundGroupSessionData } from "../OlmDevice"; -import { CrossSigningKeyInfo } from "../../crypto-api"; +} from "./base.ts"; +import { IRoomKeyRequestBody } from "../index.ts"; +import { IOlmDevice } from "../algorithms/megolm.ts"; +import { IRoomEncryption } from "../RoomList.ts"; +import { InboundGroupSessionData } from "../OlmDevice.ts"; +import { CrossSigningKeyInfo } from "../../crypto-api/index.ts"; function encodeSessionKey(senderCurve25519Key: string, sessionId: string): string { return encodeURIComponent(senderCurve25519Key) + "/" + encodeURIComponent(sessionId); diff --git a/src/crypto/verification/Base.ts b/src/crypto/verification/Base.ts index 308ea4401d7..179c868b64b 100644 --- a/src/crypto/verification/Base.ts +++ b/src/crypto/verification/Base.ts @@ -19,23 +19,23 @@ limitations under the License. * Base class for verification methods. */ -import { MatrixEvent } from "../../models/event"; -import { EventType } from "../../@types/event"; -import { logger } from "../../logger"; -import { DeviceInfo } from "../deviceinfo"; -import { newTimeoutError } from "./Error"; -import { KeysDuringVerification, requestKeysDuringVerification } from "../CrossSigning"; -import { IVerificationChannel } from "./request/Channel"; -import { MatrixClient } from "../../client"; -import { VerificationRequest } from "./request/VerificationRequest"; -import { TypedEventEmitter } from "../../models/typed-event-emitter"; +import { MatrixEvent } from "../../models/event.ts"; +import { EventType } from "../../@types/event.ts"; +import { logger } from "../../logger.ts"; +import { DeviceInfo } from "../deviceinfo.ts"; +import { newTimeoutError } from "./Error.ts"; +import { KeysDuringVerification, requestKeysDuringVerification } from "../CrossSigning.ts"; +import { IVerificationChannel } from "./request/Channel.ts"; +import { MatrixClient } from "../../client.ts"; +import { VerificationRequest } from "./request/VerificationRequest.ts"; +import { TypedEventEmitter } from "../../models/typed-event-emitter.ts"; import { ShowQrCodeCallbacks, ShowSasCallbacks, Verifier, VerifierEvent, VerifierEventHandlerMap, -} from "../../crypto-api/verification"; +} from "../../crypto-api/verification.ts"; const timeoutException = new Error("Verification timed out"); diff --git a/src/crypto/verification/Error.ts b/src/crypto/verification/Error.ts index da73ebb847e..4f609db3a8e 100644 --- a/src/crypto/verification/Error.ts +++ b/src/crypto/verification/Error.ts @@ -18,8 +18,8 @@ limitations under the License. * Error messages. */ -import { MatrixEvent } from "../../models/event"; -import { EventType } from "../../@types/event"; +import { MatrixEvent } from "../../models/event.ts"; +import { EventType } from "../../@types/event.ts"; export function newVerificationError(code: string, reason: string, extraData?: Record): MatrixEvent { const content = Object.assign({}, { code, reason }, extraData); diff --git a/src/crypto/verification/IllegalMethod.ts b/src/crypto/verification/IllegalMethod.ts index c437e0cd2a9..c556be71785 100644 --- a/src/crypto/verification/IllegalMethod.ts +++ b/src/crypto/verification/IllegalMethod.ts @@ -19,11 +19,11 @@ limitations under the License. * do verification with this method). */ -import { VerificationBase as Base, VerificationEvent, VerificationEventHandlerMap } from "./Base"; -import { IVerificationChannel } from "./request/Channel"; -import { MatrixClient } from "../../client"; -import { MatrixEvent } from "../../models/event"; -import { VerificationRequest } from "./request/VerificationRequest"; +import { VerificationBase as Base, VerificationEvent, VerificationEventHandlerMap } from "./Base.ts"; +import { IVerificationChannel } from "./request/Channel.ts"; +import { MatrixClient } from "../../client.ts"; +import { MatrixEvent } from "../../models/event.ts"; +import { VerificationRequest } from "./request/VerificationRequest.ts"; export class IllegalMethod extends Base { public static factory( diff --git a/src/crypto/verification/QRCode.ts b/src/crypto/verification/QRCode.ts index cff87dd21ff..4caaf42b672 100644 --- a/src/crypto/verification/QRCode.ts +++ b/src/crypto/verification/QRCode.ts @@ -18,16 +18,16 @@ limitations under the License. * QR code key verification. */ -import { VerificationBase as Base } from "./Base"; -import { newKeyMismatchError, newUserCancelledError } from "./Error"; -import { decodeBase64, encodeUnpaddedBase64 } from "../../base64"; -import { logger } from "../../logger"; -import { VerificationRequest } from "./request/VerificationRequest"; -import { MatrixClient } from "../../client"; -import { IVerificationChannel } from "./request/Channel"; -import { MatrixEvent } from "../../models/event"; -import { ShowQrCodeCallbacks, VerifierEvent } from "../../crypto-api/verification"; -import { VerificationMethod } from "../../types"; +import { VerificationBase as Base } from "./Base.ts"; +import { newKeyMismatchError, newUserCancelledError } from "./Error.ts"; +import { decodeBase64, encodeUnpaddedBase64 } from "../../base64.ts"; +import { logger } from "../../logger.ts"; +import { VerificationRequest } from "./request/VerificationRequest.ts"; +import { MatrixClient } from "../../client.ts"; +import { IVerificationChannel } from "./request/Channel.ts"; +import { MatrixEvent } from "../../models/event.ts"; +import { ShowQrCodeCallbacks, VerifierEvent } from "../../crypto-api/verification.ts"; +import { VerificationMethod } from "../../types.ts"; export const SHOW_QR_CODE_METHOD = VerificationMethod.ShowQrCode; export const SCAN_QR_CODE_METHOD = VerificationMethod.ScanQrCode; diff --git a/src/crypto/verification/SAS.ts b/src/crypto/verification/SAS.ts index f161278bc43..31e96753728 100644 --- a/src/crypto/verification/SAS.ts +++ b/src/crypto/verification/SAS.ts @@ -21,27 +21,27 @@ limitations under the License. import anotherjson from "another-json"; import { Utility, SAS as OlmSAS } from "@matrix-org/olm"; -import { VerificationBase as Base, SwitchStartEventError } from "./Base"; +import { VerificationBase as Base, SwitchStartEventError } from "./Base.ts"; import { errorFactory, newInvalidMessageError, newKeyMismatchError, newUnknownMethodError, newUserCancelledError, -} from "./Error"; -import { logger } from "../../logger"; -import { IContent, MatrixEvent } from "../../models/event"; -import { generateDecimalSas } from "./SASDecimal"; -import { EventType } from "../../@types/event"; -import { EmojiMapping, GeneratedSas, ShowSasCallbacks, VerifierEvent } from "../../crypto-api/verification"; -import { VerificationMethod } from "../../types"; +} from "./Error.ts"; +import { logger } from "../../logger.ts"; +import { IContent, MatrixEvent } from "../../models/event.ts"; +import { generateDecimalSas } from "./SASDecimal.ts"; +import { EventType } from "../../@types/event.ts"; +import { EmojiMapping, GeneratedSas, ShowSasCallbacks, VerifierEvent } from "../../crypto-api/verification.ts"; +import { VerificationMethod } from "../../types.ts"; // backwards-compatibility exports export type { ShowSasCallbacks as ISasEvent, GeneratedSas as IGeneratedSas, EmojiMapping, -} from "../../crypto-api/verification"; +} from "../../crypto-api/verification.ts"; const START_TYPE = EventType.KeyVerificationStart; diff --git a/src/crypto/verification/request/Channel.ts b/src/crypto/verification/request/Channel.ts index 48415f977e1..cb45c7b76c7 100644 --- a/src/crypto/verification/request/Channel.ts +++ b/src/crypto/verification/request/Channel.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MatrixEvent } from "../../../models/event"; -import { VerificationRequest } from "./VerificationRequest"; +import { MatrixEvent } from "../../../models/event.ts"; +import { VerificationRequest } from "./VerificationRequest.ts"; export interface IVerificationChannel { request?: VerificationRequest; diff --git a/src/crypto/verification/request/InRoomChannel.ts b/src/crypto/verification/request/InRoomChannel.ts index 59df11d7884..05dcce872d6 100644 --- a/src/crypto/verification/request/InRoomChannel.ts +++ b/src/crypto/verification/request/InRoomChannel.ts @@ -15,13 +15,13 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { VerificationRequest, REQUEST_TYPE, READY_TYPE, START_TYPE } from "./VerificationRequest"; -import { logger } from "../../../logger"; -import { IVerificationChannel } from "./Channel"; -import { EventType, TimelineEvents } from "../../../@types/event"; -import { MatrixClient } from "../../../client"; -import { MatrixEvent } from "../../../models/event"; -import { IRequestsMap } from "../.."; +import { VerificationRequest, REQUEST_TYPE, READY_TYPE, START_TYPE } from "./VerificationRequest.ts"; +import { logger } from "../../../logger.ts"; +import { IVerificationChannel } from "./Channel.ts"; +import { EventType, TimelineEvents } from "../../../@types/event.ts"; +import { MatrixClient } from "../../../client.ts"; +import { MatrixEvent } from "../../../models/event.ts"; +import { IRequestsMap } from "../../index.ts"; const MESSAGE_TYPE = EventType.RoomMessage; const M_REFERENCE = "m.reference"; diff --git a/src/crypto/verification/request/ToDeviceChannel.ts b/src/crypto/verification/request/ToDeviceChannel.ts index d51b85ac75f..34bf6f51ab5 100644 --- a/src/crypto/verification/request/ToDeviceChannel.ts +++ b/src/crypto/verification/request/ToDeviceChannel.ts @@ -15,8 +15,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { randomString } from "../../../randomstring"; -import { logger } from "../../../logger"; +import { randomString } from "../../../randomstring.ts"; +import { logger } from "../../../logger.ts"; import { CANCEL_TYPE, PHASE_STARTED, @@ -25,12 +25,12 @@ import { READY_TYPE, START_TYPE, VerificationRequest, -} from "./VerificationRequest"; -import { errorFromEvent, newUnexpectedMessageError } from "../Error"; -import { MatrixEvent } from "../../../models/event"; -import { IVerificationChannel } from "./Channel"; -import { MatrixClient } from "../../../client"; -import { IRequestsMap } from "../.."; +} from "./VerificationRequest.ts"; +import { errorFromEvent, newUnexpectedMessageError } from "../Error.ts"; +import { MatrixEvent } from "../../../models/event.ts"; +import { IVerificationChannel } from "./Channel.ts"; +import { MatrixClient } from "../../../client.ts"; +import { IRequestsMap } from "../../index.ts"; export type Request = VerificationRequest; diff --git a/src/crypto/verification/request/VerificationRequest.ts b/src/crypto/verification/request/VerificationRequest.ts index 5c544f131e2..8a3aca9a287 100644 --- a/src/crypto/verification/request/VerificationRequest.ts +++ b/src/crypto/verification/request/VerificationRequest.ts @@ -14,16 +14,16 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger } from "../../../logger"; -import { errorFactory, errorFromEvent, newUnexpectedMessageError, newUnknownMethodError } from "../Error"; -import { QRCodeData, SCAN_QR_CODE_METHOD } from "../QRCode"; -import { IVerificationChannel } from "./Channel"; -import { MatrixClient } from "../../../client"; -import { MatrixEvent } from "../../../models/event"; -import { EventType } from "../../../@types/event"; -import { VerificationBase } from "../Base"; -import { VerificationMethod } from "../../index"; -import { TypedEventEmitter } from "../../../models/typed-event-emitter"; +import { logger } from "../../../logger.ts"; +import { errorFactory, errorFromEvent, newUnexpectedMessageError, newUnknownMethodError } from "../Error.ts"; +import { QRCodeData, SCAN_QR_CODE_METHOD } from "../QRCode.ts"; +import { IVerificationChannel } from "./Channel.ts"; +import { MatrixClient } from "../../../client.ts"; +import { MatrixEvent } from "../../../models/event.ts"; +import { EventType } from "../../../@types/event.ts"; +import { VerificationBase } from "../Base.ts"; +import { VerificationMethod } from "../../index.ts"; +import { TypedEventEmitter } from "../../../models/typed-event-emitter.ts"; import { canAcceptVerificationRequest, VerificationPhase as Phase, @@ -31,10 +31,10 @@ import { VerificationRequestEvent, VerificationRequestEventHandlerMap, Verifier, -} from "../../../crypto-api/verification"; +} from "../../../crypto-api/verification.ts"; // backwards-compatibility exports -export { VerificationPhase as Phase, VerificationRequestEvent } from "../../../crypto-api/verification"; +export { VerificationPhase as Phase, VerificationRequestEvent } from "../../../crypto-api/verification.ts"; // How long after the event's timestamp that the request times out const TIMEOUT_FROM_EVENT_TS = 10 * 60 * 1000; // 10 minutes diff --git a/src/embedded.ts b/src/embedded.ts index 8b99836bc4d..1974ea9f98e 100644 --- a/src/embedded.ts +++ b/src/embedded.ts @@ -25,15 +25,15 @@ import { ISendEventFromWidgetResponseData, } from "matrix-widget-api"; -import { MatrixEvent, IEvent, IContent, EventStatus } from "./models/event"; +import { MatrixEvent, IEvent, IContent, EventStatus } from "./models/event.ts"; import { ISendEventResponse, SendDelayedEventRequestOpts, SendDelayedEventResponse, UpdateDelayedEventAction, -} from "./@types/requests"; -import { EventType, StateEvents } from "./@types/event"; -import { logger } from "./logger"; +} from "./@types/requests.ts"; +import { EventType, StateEvents } from "./@types/event.ts"; +import { logger } from "./logger.ts"; import { MatrixClient, ClientEvent, @@ -42,15 +42,15 @@ import { SendToDeviceContentMap, IOpenIDToken, UNSTABLE_MSC4140_DELAYED_EVENTS, -} from "./client"; -import { SyncApi, SyncState } from "./sync"; -import { SlidingSyncSdk } from "./sliding-sync-sdk"; -import { User } from "./models/user"; -import { Room } from "./models/room"; -import { ToDeviceBatch, ToDevicePayload } from "./models/ToDeviceMessage"; -import { DeviceInfo } from "./crypto/deviceinfo"; -import { IOlmDevice } from "./crypto/algorithms/megolm"; -import { MapWithDefault, recursiveMapToObject } from "./utils"; +} from "./client.ts"; +import { SyncApi, SyncState } from "./sync.ts"; +import { SlidingSyncSdk } from "./sliding-sync-sdk.ts"; +import { User } from "./models/user.ts"; +import { Room } from "./models/room.ts"; +import { ToDeviceBatch, ToDevicePayload } from "./models/ToDeviceMessage.ts"; +import { DeviceInfo } from "./crypto/deviceinfo.ts"; +import { IOlmDevice } from "./crypto/algorithms/megolm.ts"; +import { MapWithDefault, recursiveMapToObject } from "./utils.ts"; interface IStateEventRequest { eventType: string; diff --git a/src/event-mapper.ts b/src/event-mapper.ts index 828d87e9510..7dbf6a3c167 100644 --- a/src/event-mapper.ts +++ b/src/event-mapper.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MatrixClient } from "./client"; -import { IEvent, MatrixEvent, MatrixEventEvent } from "./models/event"; -import { RelationType } from "./@types/event"; +import { MatrixClient } from "./client.ts"; +import { IEvent, MatrixEvent, MatrixEventEvent } from "./models/event.ts"; +import { RelationType } from "./@types/event.ts"; export type EventMapper = (obj: Partial) => MatrixEvent; diff --git a/src/extensible_events_v1/ExtensibleEvent.ts b/src/extensible_events_v1/ExtensibleEvent.ts index 049659251b6..3bfa0632ee8 100644 --- a/src/extensible_events_v1/ExtensibleEvent.ts +++ b/src/extensible_events_v1/ExtensibleEvent.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ExtensibleEventType, IPartialEvent } from "../@types/extensible_events"; +import { ExtensibleEventType, IPartialEvent } from "../@types/extensible_events.ts"; /** * Represents an Extensible Event in Matrix. diff --git a/src/extensible_events_v1/MessageEvent.ts b/src/extensible_events_v1/MessageEvent.ts index 3d049f45809..17457f04972 100644 --- a/src/extensible_events_v1/MessageEvent.ts +++ b/src/extensible_events_v1/MessageEvent.ts @@ -16,7 +16,7 @@ limitations under the License. import { Optional } from "matrix-events-sdk"; -import { ExtensibleEvent } from "./ExtensibleEvent"; +import { ExtensibleEvent } from "./ExtensibleEvent.ts"; import { ExtensibleEventType, IMessageRendering, @@ -26,9 +26,9 @@ import { M_MESSAGE, ExtensibleAnyMessageEventContent, M_TEXT, -} from "../@types/extensible_events"; -import { isOptionalAString, isProvided } from "./utilities"; -import { InvalidEventError } from "./InvalidEventError"; +} from "../@types/extensible_events.ts"; +import { isOptionalAString, isProvided } from "./utilities.ts"; +import { InvalidEventError } from "./InvalidEventError.ts"; /** * Represents a message event. Message events are the simplest form of event with diff --git a/src/extensible_events_v1/PollEndEvent.ts b/src/extensible_events_v1/PollEndEvent.ts index 243f1906acf..87cd49569ad 100644 --- a/src/extensible_events_v1/PollEndEvent.ts +++ b/src/extensible_events_v1/PollEndEvent.ts @@ -20,11 +20,11 @@ import { isEventTypeSame, M_TEXT, REFERENCE_RELATION, -} from "../@types/extensible_events"; -import { M_POLL_END, PollEndEventContent } from "../@types/polls"; -import { ExtensibleEvent } from "./ExtensibleEvent"; -import { InvalidEventError } from "./InvalidEventError"; -import { MessageEvent } from "./MessageEvent"; +} from "../@types/extensible_events.ts"; +import { M_POLL_END, PollEndEventContent } from "../@types/polls.ts"; +import { ExtensibleEvent } from "./ExtensibleEvent.ts"; +import { InvalidEventError } from "./InvalidEventError.ts"; +import { MessageEvent } from "./MessageEvent.ts"; /** * Represents a poll end/closure event. diff --git a/src/extensible_events_v1/PollResponseEvent.ts b/src/extensible_events_v1/PollResponseEvent.ts index a61fc2e7cb6..9e7659ba731 100644 --- a/src/extensible_events_v1/PollResponseEvent.ts +++ b/src/extensible_events_v1/PollResponseEvent.ts @@ -14,11 +14,16 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ExtensibleEvent } from "./ExtensibleEvent"; -import { M_POLL_RESPONSE, PollResponseEventContent, PollResponseSubtype } from "../@types/polls"; -import { ExtensibleEventType, IPartialEvent, isEventTypeSame, REFERENCE_RELATION } from "../@types/extensible_events"; -import { InvalidEventError } from "./InvalidEventError"; -import { PollStartEvent } from "./PollStartEvent"; +import { ExtensibleEvent } from "./ExtensibleEvent.ts"; +import { M_POLL_RESPONSE, PollResponseEventContent, PollResponseSubtype } from "../@types/polls.ts"; +import { + ExtensibleEventType, + IPartialEvent, + isEventTypeSame, + REFERENCE_RELATION, +} from "../@types/extensible_events.ts"; +import { InvalidEventError } from "./InvalidEventError.ts"; +import { PollStartEvent } from "./PollStartEvent.ts"; /** * Represents a poll response event. diff --git a/src/extensible_events_v1/PollStartEvent.ts b/src/extensible_events_v1/PollStartEvent.ts index 8584bf9e1fc..98b15e2ada9 100644 --- a/src/extensible_events_v1/PollStartEvent.ts +++ b/src/extensible_events_v1/PollStartEvent.ts @@ -16,8 +16,8 @@ limitations under the License. import { NamespacedValue } from "matrix-events-sdk"; -import { MessageEvent } from "./MessageEvent"; -import { ExtensibleEventType, IPartialEvent, isEventTypeSame, M_TEXT } from "../@types/extensible_events"; +import { MessageEvent } from "./MessageEvent.ts"; +import { ExtensibleEventType, IPartialEvent, isEventTypeSame, M_TEXT } from "../@types/extensible_events.ts"; import { KnownPollKind, M_POLL_KIND_DISCLOSED, @@ -26,9 +26,9 @@ import { PollStartEventContent, PollStartSubtype, PollAnswer, -} from "../@types/polls"; -import { InvalidEventError } from "./InvalidEventError"; -import { ExtensibleEvent } from "./ExtensibleEvent"; +} from "../@types/polls.ts"; +import { InvalidEventError } from "./InvalidEventError.ts"; +import { ExtensibleEvent } from "./ExtensibleEvent.ts"; /** * Represents a poll answer. Note that this is represented as a subtype and is diff --git a/src/feature.ts b/src/feature.ts index 0657a217cd5..47c914353bb 100644 --- a/src/feature.ts +++ b/src/feature.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IServerVersions } from "./client"; +import { IServerVersions } from "./client.ts"; export enum ServerSupport { Stable, diff --git a/src/filter-component.ts b/src/filter-component.ts index 0954e634f6e..41f2903cb73 100644 --- a/src/filter-component.ts +++ b/src/filter-component.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { RelationType } from "./@types/event"; -import { MatrixEvent } from "./models/event"; -import { FILTER_RELATED_BY_REL_TYPES, FILTER_RELATED_BY_SENDERS, THREAD_RELATION_TYPE } from "./models/thread"; +import { RelationType } from "./@types/event.ts"; +import { MatrixEvent } from "./models/event.ts"; +import { FILTER_RELATED_BY_REL_TYPES, FILTER_RELATED_BY_SENDERS, THREAD_RELATION_TYPE } from "./models/thread.ts"; /** * Checks if a value matches a given field value, which may be a * terminated diff --git a/src/filter.ts b/src/filter.ts index aea2fb4910d..d5ad00509d4 100644 --- a/src/filter.ts +++ b/src/filter.ts @@ -14,10 +14,10 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { EventType, RelationType } from "./@types/event"; -import { UNREAD_THREAD_NOTIFICATIONS } from "./@types/sync"; -import { FilterComponent, IFilterComponent } from "./filter-component"; -import { MatrixEvent } from "./models/event"; +import { EventType, RelationType } from "./@types/event.ts"; +import { UNREAD_THREAD_NOTIFICATIONS } from "./@types/sync.ts"; +import { FilterComponent, IFilterComponent } from "./filter-component.ts"; +import { MatrixEvent } from "./models/event.ts"; /** */ diff --git a/src/http-api/errors.ts b/src/http-api/errors.ts index c5aba882bfb..86cfdc908c0 100644 --- a/src/http-api/errors.ts +++ b/src/http-api/errors.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IUsageLimit } from "../@types/partials"; -import { MatrixEvent } from "../models/event"; +import { IUsageLimit } from "../@types/partials.ts"; +import { MatrixEvent } from "../models/event.ts"; interface IErrorJson extends Partial { [key: string]: any; // extensible diff --git a/src/http-api/fetch.ts b/src/http-api/fetch.ts index 274f39f0d41..3c98c10aa58 100644 --- a/src/http-api/fetch.ts +++ b/src/http-api/fetch.ts @@ -18,13 +18,13 @@ limitations under the License. * This is an internal module. See {@link MatrixHttpApi} for the public class. */ -import { checkObjectHasKeys, encodeParams } from "../utils"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { Method } from "./method"; -import { ConnectionError, MatrixError } from "./errors"; -import { HttpApiEvent, HttpApiEventHandlerMap, IHttpOpts, IRequestOpts, Body } from "./interface"; -import { anySignal, parseErrorResponse, timeoutSignal } from "./utils"; -import { QueryDict } from "../utils"; +import { checkObjectHasKeys, encodeParams } from "../utils.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { Method } from "./method.ts"; +import { ConnectionError, MatrixError } from "./errors.ts"; +import { HttpApiEvent, HttpApiEventHandlerMap, IHttpOpts, IRequestOpts, Body } from "./interface.ts"; +import { anySignal, parseErrorResponse, timeoutSignal } from "./utils.ts"; +import { QueryDict } from "../utils.ts"; interface TypedResponse extends Response { json(): Promise; diff --git a/src/http-api/index.ts b/src/http-api/index.ts index cd63f8d289c..abc7391da16 100644 --- a/src/http-api/index.ts +++ b/src/http-api/index.ts @@ -14,20 +14,20 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { FetchHttpApi } from "./fetch"; -import { FileType, IContentUri, IHttpOpts, Upload, UploadOpts, UploadResponse } from "./interface"; -import { MediaPrefix } from "./prefix"; -import { defer, QueryDict, removeElement } from "../utils"; -import * as callbacks from "../realtime-callbacks"; -import { Method } from "./method"; -import { ConnectionError } from "./errors"; -import { parseErrorResponse } from "./utils"; - -export * from "./interface"; -export * from "./prefix"; -export * from "./errors"; -export * from "./method"; -export * from "./utils"; +import { FetchHttpApi } from "./fetch.ts"; +import { FileType, IContentUri, IHttpOpts, Upload, UploadOpts, UploadResponse } from "./interface.ts"; +import { MediaPrefix } from "./prefix.ts"; +import { defer, QueryDict, removeElement } from "../utils.ts"; +import * as callbacks from "../realtime-callbacks.ts"; +import { Method } from "./method.ts"; +import { ConnectionError } from "./errors.ts"; +import { parseErrorResponse } from "./utils.ts"; + +export * from "./interface.ts"; +export * from "./prefix.ts"; +export * from "./errors.ts"; +export * from "./method.ts"; +export * from "./utils.ts"; export class MatrixHttpApi extends FetchHttpApi { private uploads: Upload[] = []; diff --git a/src/http-api/interface.ts b/src/http-api/interface.ts index ee4456d7cc5..c06b850f311 100644 --- a/src/http-api/interface.ts +++ b/src/http-api/interface.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MatrixError } from "./errors"; -import { Logger } from "../logger"; +import { MatrixError } from "./errors.ts"; +import { Logger } from "../logger.ts"; export type Body = Record | BodyInit; diff --git a/src/http-api/utils.ts b/src/http-api/utils.ts index 0b3c3554ffa..861d47ea1b0 100644 --- a/src/http-api/utils.ts +++ b/src/http-api/utils.ts @@ -16,9 +16,9 @@ limitations under the License. import { parse as parseContentType, ParsedMediaType } from "content-type"; -import { logger } from "../logger"; -import { sleep } from "../utils"; -import { ConnectionError, HTTPError, MatrixError } from "./errors"; +import { logger } from "../logger.ts"; +import { sleep } from "../utils.ts"; +import { ConnectionError, HTTPError, MatrixError } from "./errors.ts"; // Ponyfill for https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal/timeout export function timeoutSignal(ms: number): AbortSignal { diff --git a/src/index.ts b/src/index.ts index c9a5dcf65c0..65e798c870f 100644 --- a/src/index.ts +++ b/src/index.ts @@ -14,12 +14,12 @@ See the License for the specific language governing permissions and limitations under the License. */ -import * as matrixcs from "./matrix"; +import * as matrixcs from "./matrix.ts"; if (global.__js_sdk_entrypoint) { throw new Error("Multiple matrix-js-sdk entrypoints detected!"); } global.__js_sdk_entrypoint = true; -export * from "./matrix"; +export * from "./matrix.ts"; export default matrixcs; diff --git a/src/indexeddb-worker.ts b/src/indexeddb-worker.ts index 68dcf0f8006..15fc1bb8bd2 100644 --- a/src/indexeddb-worker.ts +++ b/src/indexeddb-worker.ts @@ -21,4 +21,4 @@ limitations under the License. */ /** The {@link IndexedDBStoreWorker} class. */ -export { IndexedDBStoreWorker } from "./store/indexeddb-store-worker"; +export { IndexedDBStoreWorker } from "./store/indexeddb-store-worker.ts"; diff --git a/src/interactive-auth.ts b/src/interactive-auth.ts index 8ecfc64a0d2..60c31d017f3 100644 --- a/src/interactive-auth.ts +++ b/src/interactive-auth.ts @@ -16,12 +16,12 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger } from "./logger"; -import { MatrixClient } from "./client"; -import { defer, IDeferred } from "./utils"; -import { MatrixError } from "./http-api"; -import { UIAResponse } from "./@types/uia"; -import { UserIdentifier } from "./@types/auth"; +import { logger } from "./logger.ts"; +import { MatrixClient } from "./client.ts"; +import { defer, IDeferred } from "./utils.ts"; +import { MatrixError } from "./http-api/index.ts"; +import { UIAResponse } from "./@types/uia.ts"; +import { UserIdentifier } from "./@types/auth.ts"; const EMAIL_STAGE_TYPE = "m.login.email.identity"; const MSISDN_STAGE_TYPE = "m.login.msisdn"; diff --git a/src/matrix.ts b/src/matrix.ts index 50a2a72f65d..cac7c91fd21 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -16,74 +16,74 @@ limitations under the License. import { WidgetApi } from "matrix-widget-api"; -import { MemoryCryptoStore } from "./crypto/store/memory-crypto-store"; -import { MemoryStore } from "./store/memory"; -import { MatrixScheduler } from "./scheduler"; -import { MatrixClient, ICreateClientOpts } from "./client"; -import { RoomWidgetClient, ICapabilities } from "./embedded"; -import { CryptoStore } from "./crypto/store/base"; +import { MemoryCryptoStore } from "./crypto/store/memory-crypto-store.ts"; +import { MemoryStore } from "./store/memory.ts"; +import { MatrixScheduler } from "./scheduler.ts"; +import { MatrixClient, ICreateClientOpts } from "./client.ts"; +import { RoomWidgetClient, ICapabilities } from "./embedded.ts"; +import { CryptoStore } from "./crypto/store/base.ts"; -export * from "./client"; -export * from "./serverCapabilities"; -export * from "./embedded"; -export * from "./http-api"; -export * from "./autodiscovery"; -export * from "./sync-accumulator"; -export * from "./errors"; -export * from "./base64"; -export * from "./models/beacon"; -export * from "./models/event"; -export * from "./models/room"; -export * from "./models/event-timeline"; -export * from "./models/event-timeline-set"; -export * from "./models/poll"; -export * from "./models/room-member"; -export * from "./models/room-state"; -export * from "./models/thread"; -export * from "./models/typed-event-emitter"; -export * from "./models/user"; -export * from "./models/device"; -export * from "./models/search-result"; -export * from "./oidc"; -export * from "./scheduler"; -export * from "./filter"; -export * from "./timeline-window"; -export * from "./interactive-auth"; -export * from "./service-types"; -export * from "./store/memory"; -export * from "./store/indexeddb"; -export * from "./crypto/store/memory-crypto-store"; -export * from "./crypto/store/localStorage-crypto-store"; -export * from "./crypto/store/indexeddb-crypto-store"; -export type { OutgoingRoomKeyRequest } from "./crypto/store/base"; -export * from "./content-repo"; -export * from "./@types/common"; -export * from "./@types/uia"; -export * from "./@types/event"; -export * from "./@types/PushRules"; -export * from "./@types/partials"; -export * from "./@types/requests"; -export * from "./@types/search"; -export * from "./@types/beacon"; -export * from "./@types/topic"; -export * from "./@types/location"; -export * from "./@types/threepids"; -export * from "./@types/auth"; -export * from "./@types/polls"; -export * from "./@types/local_notifications"; -export * from "./@types/registration"; -export * from "./@types/read_receipts"; -export * from "./@types/crypto"; -export * from "./@types/extensible_events"; -export * from "./@types/IIdentityServerProvider"; -export * from "./models/room-summary"; -export * from "./models/event-status"; -export type { RoomSummary } from "./client"; -export * as ContentHelpers from "./content-helpers"; -export * as SecretStorage from "./secret-storage"; -export type { ICryptoCallbacks } from "./crypto"; // used to be located here -export { createNewMatrixCall, CallEvent } from "./webrtc/call"; -export type { MatrixCall } from "./webrtc/call"; +export * from "./client.ts"; +export * from "./serverCapabilities.ts"; +export * from "./embedded.ts"; +export * from "./http-api/index.ts"; +export * from "./autodiscovery.ts"; +export * from "./sync-accumulator.ts"; +export * from "./errors.ts"; +export * from "./base64.ts"; +export * from "./models/beacon.ts"; +export * from "./models/event.ts"; +export * from "./models/room.ts"; +export * from "./models/event-timeline.ts"; +export * from "./models/event-timeline-set.ts"; +export * from "./models/poll.ts"; +export * from "./models/room-member.ts"; +export * from "./models/room-state.ts"; +export * from "./models/thread.ts"; +export * from "./models/typed-event-emitter.ts"; +export * from "./models/user.ts"; +export * from "./models/device.ts"; +export * from "./models/search-result.ts"; +export * from "./oidc/index.ts"; +export * from "./scheduler.ts"; +export * from "./filter.ts"; +export * from "./timeline-window.ts"; +export * from "./interactive-auth.ts"; +export * from "./service-types.ts"; +export * from "./store/memory.ts"; +export * from "./store/indexeddb.ts"; +export * from "./crypto/store/memory-crypto-store.ts"; +export * from "./crypto/store/localStorage-crypto-store.ts"; +export * from "./crypto/store/indexeddb-crypto-store.ts"; +export type { OutgoingRoomKeyRequest } from "./crypto/store/base.ts"; +export * from "./content-repo.ts"; +export * from "./@types/common.ts"; +export * from "./@types/uia.ts"; +export * from "./@types/event.ts"; +export * from "./@types/PushRules.ts"; +export * from "./@types/partials.ts"; +export * from "./@types/requests.ts"; +export * from "./@types/search.ts"; +export * from "./@types/beacon.ts"; +export * from "./@types/topic.ts"; +export * from "./@types/location.ts"; +export * from "./@types/threepids.ts"; +export * from "./@types/auth.ts"; +export * from "./@types/polls.ts"; +export * from "./@types/local_notifications.ts"; +export * from "./@types/registration.ts"; +export * from "./@types/read_receipts.ts"; +export * from "./@types/crypto.ts"; +export * from "./@types/extensible_events.ts"; +export * from "./@types/IIdentityServerProvider.ts"; +export * from "./models/room-summary.ts"; +export * from "./models/event-status.ts"; +export type { RoomSummary } from "./client.ts"; +export * as ContentHelpers from "./content-helpers.ts"; +export * as SecretStorage from "./secret-storage.ts"; +export type { ICryptoCallbacks } from "./crypto/index.ts"; // used to be located here +export { createNewMatrixCall, CallEvent } from "./webrtc/call.ts"; +export type { MatrixCall } from "./webrtc/call.ts"; export { GroupCall, GroupCallEvent, @@ -91,21 +91,21 @@ export { GroupCallState, GroupCallType, GroupCallStatsReportEvent, -} from "./webrtc/groupCall"; -export { CryptoEvent } from "./crypto"; -export { SyncState, SetPresence } from "./sync"; -export type { ISyncStateData as SyncStateData } from "./sync"; -export { SlidingSyncEvent } from "./sliding-sync"; -export { MediaHandlerEvent } from "./webrtc/mediaHandler"; -export { CallFeedEvent } from "./webrtc/callFeed"; -export { StatsReport } from "./webrtc/stats/statsReport"; -export { Relations, RelationsEvent } from "./models/relations"; -export { TypedEventEmitter } from "./models/typed-event-emitter"; -export { LocalStorageErrors } from "./store/local-storage-events-emitter"; -export { IdentityProviderBrand, SSOAction } from "./@types/auth"; -export type { ISSOFlow as SSOFlow, LoginFlow } from "./@types/auth"; -export type { IHierarchyRelation as HierarchyRelation, IHierarchyRoom as HierarchyRoom } from "./@types/spaces"; -export { LocationAssetType } from "./@types/location"; +} from "./webrtc/groupCall.ts"; +export { CryptoEvent } from "./crypto/index.ts"; +export { SyncState, SetPresence } from "./sync.ts"; +export type { ISyncStateData as SyncStateData } from "./sync.ts"; +export { SlidingSyncEvent } from "./sliding-sync.ts"; +export { MediaHandlerEvent } from "./webrtc/mediaHandler.ts"; +export { CallFeedEvent } from "./webrtc/callFeed.ts"; +export { StatsReport } from "./webrtc/stats/statsReport.ts"; +export { Relations, RelationsEvent } from "./models/relations.ts"; +export { TypedEventEmitter } from "./models/typed-event-emitter.ts"; +export { LocalStorageErrors } from "./store/local-storage-events-emitter.ts"; +export { IdentityProviderBrand, SSOAction } from "./@types/auth.ts"; +export type { ISSOFlow as SSOFlow, LoginFlow } from "./@types/auth.ts"; +export type { IHierarchyRelation as HierarchyRelation, IHierarchyRoom as HierarchyRoom } from "./@types/spaces.ts"; +export { LocationAssetType } from "./@types/location.ts"; /** * Types supporting cryptography. @@ -113,7 +113,7 @@ export { LocationAssetType } from "./@types/location"; * The most important is {@link Crypto.CryptoApi}, an instance of which can be retrieved via * {@link MatrixClient.getCrypto}. */ -export * as Crypto from "./crypto-api"; +export * as Crypto from "./crypto-api/index.ts"; let cryptoStoreFactory = (): CryptoStore => new MemoryCryptoStore(); diff --git a/src/matrixrtc/CallMembership.ts b/src/matrixrtc/CallMembership.ts index d2c9b06d346..495ce1c4947 100644 --- a/src/matrixrtc/CallMembership.ts +++ b/src/matrixrtc/CallMembership.ts @@ -16,10 +16,10 @@ limitations under the License. import { EitherAnd } from "matrix-events-sdk/lib/types"; -import { MatrixEvent } from "../matrix"; -import { deepCompare } from "../utils"; -import { Focus } from "./focus"; -import { isLivekitFocusActive } from "./LivekitFocus"; +import { MatrixEvent } from "../matrix.ts"; +import { deepCompare } from "../utils.ts"; +import { Focus } from "./focus.ts"; +import { isLivekitFocusActive } from "./LivekitFocus.ts"; type CallScope = "m.room" | "m.user"; // Represents an entry in the memberships section of an m.call.member event as it is on the wire diff --git a/src/matrixrtc/LivekitFocus.ts b/src/matrixrtc/LivekitFocus.ts index 0a42dda5fd5..254c715410e 100644 --- a/src/matrixrtc/LivekitFocus.ts +++ b/src/matrixrtc/LivekitFocus.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { Focus } from "./focus"; +import { Focus } from "./focus.ts"; export interface LivekitFocusConfig extends Focus { type: "livekit"; diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 4b26134e728..ebd69400a90 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -14,30 +14,30 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger as rootLogger } from "../logger"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { EventTimeline } from "../models/event-timeline"; -import { Room } from "../models/room"; -import { MatrixClient } from "../client"; -import { EventType } from "../@types/event"; -import { UpdateDelayedEventAction } from "../@types/requests"; +import { logger as rootLogger } from "../logger.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { EventTimeline } from "../models/event-timeline.ts"; +import { Room } from "../models/room.ts"; +import { MatrixClient } from "../client.ts"; +import { EventType } from "../@types/event.ts"; +import { UpdateDelayedEventAction } from "../@types/requests.ts"; import { CallMembership, CallMembershipData, CallMembershipDataLegacy, SessionMembershipData, isLegacyCallMembershipData, -} from "./CallMembership"; -import { RoomStateEvent } from "../models/room-state"; -import { Focus } from "./focus"; -import { randomString, secureRandomBase64Url } from "../randomstring"; -import { EncryptionKeysEventContent } from "./types"; -import { decodeBase64, encodeUnpaddedBase64 } from "../base64"; -import { KnownMembership } from "../@types/membership"; -import { MatrixError } from "../http-api/errors"; -import { MatrixEvent } from "../models/event"; -import { isLivekitFocusActive } from "./LivekitFocus"; -import { ExperimentalGroupCallRoomMemberState } from "../webrtc/groupCall"; +} from "./CallMembership.ts"; +import { RoomStateEvent } from "../models/room-state.ts"; +import { Focus } from "./focus.ts"; +import { randomString, secureRandomBase64Url } from "../randomstring.ts"; +import { EncryptionKeysEventContent } from "./types.ts"; +import { decodeBase64, encodeUnpaddedBase64 } from "../base64.ts"; +import { KnownMembership } from "../@types/membership.ts"; +import { MatrixError } from "../http-api/errors.ts"; +import { MatrixEvent } from "../models/event.ts"; +import { isLivekitFocusActive } from "./LivekitFocus.ts"; +import { ExperimentalGroupCallRoomMemberState } from "../webrtc/groupCall.ts"; const logger = rootLogger.getChild("MatrixRTCSession"); diff --git a/src/matrixrtc/MatrixRTCSessionManager.ts b/src/matrixrtc/MatrixRTCSessionManager.ts index d59cee218ac..e64d19f7a6e 100644 --- a/src/matrixrtc/MatrixRTCSessionManager.ts +++ b/src/matrixrtc/MatrixRTCSessionManager.ts @@ -14,14 +14,14 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger as rootLogger } from "../logger"; -import { MatrixClient, ClientEvent } from "../client"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { Room, RoomEvent } from "../models/room"; -import { RoomState, RoomStateEvent } from "../models/room-state"; -import { MatrixEvent } from "../models/event"; -import { MatrixRTCSession } from "./MatrixRTCSession"; -import { EventType } from "../@types/event"; +import { logger as rootLogger } from "../logger.ts"; +import { MatrixClient, ClientEvent } from "../client.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { Room, RoomEvent } from "../models/room.ts"; +import { RoomState, RoomStateEvent } from "../models/room-state.ts"; +import { MatrixEvent } from "../models/event.ts"; +import { MatrixRTCSession } from "./MatrixRTCSession.ts"; +import { EventType } from "../@types/event.ts"; const logger = rootLogger.getChild("MatrixRTCSessionManager"); diff --git a/src/matrixrtc/index.ts b/src/matrixrtc/index.ts index 2e5e6f35194..0474f635300 100644 --- a/src/matrixrtc/index.ts +++ b/src/matrixrtc/index.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -export * from "./CallMembership"; -export * from "./focus"; -export * from "./LivekitFocus"; -export * from "./MatrixRTCSession"; -export * from "./MatrixRTCSessionManager"; -export * from "./types"; +export * from "./CallMembership.ts"; +export * from "./focus.ts"; +export * from "./LivekitFocus.ts"; +export * from "./MatrixRTCSession.ts"; +export * from "./MatrixRTCSessionManager.ts"; +export * from "./types.ts"; diff --git a/src/matrixrtc/types.ts b/src/matrixrtc/types.ts index de4c7ac47dc..479e3436699 100644 --- a/src/matrixrtc/types.ts +++ b/src/matrixrtc/types.ts @@ -13,7 +13,7 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -import { IMentions } from "../matrix"; +import { IMentions } from "../matrix.ts"; export interface EncryptionKeyEntry { index: number; key: string; diff --git a/src/models/MSC3089Branch.ts b/src/models/MSC3089Branch.ts index ebae391e33e..503a6e4af5b 100644 --- a/src/models/MSC3089Branch.ts +++ b/src/models/MSC3089Branch.ts @@ -14,14 +14,14 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MatrixClient } from "../client"; -import { RelationType, UNSTABLE_MSC3089_BRANCH } from "../@types/event"; -import { IContent, MatrixEvent } from "./event"; -import { MSC3089TreeSpace } from "./MSC3089TreeSpace"; -import { EventTimeline } from "./event-timeline"; -import { FileType } from "../http-api"; -import type { ISendEventResponse } from "../@types/requests"; -import { EncryptedFile } from "../@types/media"; +import { MatrixClient } from "../client.ts"; +import { RelationType, UNSTABLE_MSC3089_BRANCH } from "../@types/event.ts"; +import { IContent, MatrixEvent } from "./event.ts"; +import { MSC3089TreeSpace } from "./MSC3089TreeSpace.ts"; +import { EventTimeline } from "./event-timeline.ts"; +import { FileType } from "../http-api/index.ts"; +import type { ISendEventResponse } from "../@types/requests.ts"; +import { EncryptedFile } from "../@types/media.ts"; export interface MSC3089EventContent { active?: boolean; diff --git a/src/models/MSC3089TreeSpace.ts b/src/models/MSC3089TreeSpace.ts index 6dc1b6fbb63..8bcc933d7c2 100644 --- a/src/models/MSC3089TreeSpace.ts +++ b/src/models/MSC3089TreeSpace.ts @@ -16,11 +16,11 @@ limitations under the License. import promiseRetry from "p-retry"; -import { MatrixClient } from "../client"; -import { EventType, MsgType, UNSTABLE_MSC3089_BRANCH, UNSTABLE_MSC3089_LEAF } from "../@types/event"; -import { Room } from "./room"; -import { logger } from "../logger"; -import { IContent, MatrixEvent } from "./event"; +import { MatrixClient } from "../client.ts"; +import { EventType, MsgType, UNSTABLE_MSC3089_BRANCH, UNSTABLE_MSC3089_LEAF } from "../@types/event.ts"; +import { Room } from "./room.ts"; +import { logger } from "../logger.ts"; +import { IContent, MatrixEvent } from "./event.ts"; import { averageBetweenStrings, DEFAULT_ALPHABET, @@ -28,14 +28,14 @@ import { nextString, prevString, simpleRetryOperation, -} from "../utils"; -import { MSC3089Branch } from "./MSC3089Branch"; -import { isRoomSharedHistory } from "../crypto/algorithms/megolm"; -import { ISendEventResponse } from "../@types/requests"; -import { FileType } from "../http-api"; -import { KnownMembership } from "../@types/membership"; -import { RoomPowerLevelsEventContent, SpaceChildEventContent } from "../@types/state_events"; -import type { EncryptedFile, FileContent } from "../@types/media"; +} from "../utils.ts"; +import { MSC3089Branch } from "./MSC3089Branch.ts"; +import { isRoomSharedHistory } from "../crypto/algorithms/megolm.ts"; +import { ISendEventResponse } from "../@types/requests.ts"; +import { FileType } from "../http-api/index.ts"; +import { KnownMembership } from "../@types/membership.ts"; +import { RoomPowerLevelsEventContent, SpaceChildEventContent } from "../@types/state_events.ts"; +import type { EncryptedFile, FileContent } from "../@types/media.ts"; /** * The recommended defaults for a tree space's power levels. Note that this diff --git a/src/models/beacon.ts b/src/models/beacon.ts index 3801831a1ce..95115780e55 100644 --- a/src/models/beacon.ts +++ b/src/models/beacon.ts @@ -14,11 +14,16 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MBeaconEventContent } from "../@types/beacon"; -import { BeaconInfoState, BeaconLocationState, parseBeaconContent, parseBeaconInfoContent } from "../content-helpers"; -import { MatrixEvent } from "./event"; -import { sortEventsByLatestContentTimestamp } from "../utils"; -import { TypedEventEmitter } from "./typed-event-emitter"; +import { MBeaconEventContent } from "../@types/beacon.ts"; +import { + BeaconInfoState, + BeaconLocationState, + parseBeaconContent, + parseBeaconInfoContent, +} from "../content-helpers.ts"; +import { MatrixEvent } from "./event.ts"; +import { sortEventsByLatestContentTimestamp } from "../utils.ts"; +import { TypedEventEmitter } from "./typed-event-emitter.ts"; export enum BeaconEvent { New = "Beacon.new", diff --git a/src/models/compare-event-ordering.ts b/src/models/compare-event-ordering.ts index 6be23ec0345..31d50812812 100644 --- a/src/models/compare-event-ordering.ts +++ b/src/models/compare-event-ordering.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MatrixEvent } from "./event"; -import { Room } from "./room"; -import { inMainTimelineForReceipt, threadIdForReceipt } from "../client"; +import { MatrixEvent } from "./event.ts"; +import { Room } from "./room.ts"; +import { inMainTimelineForReceipt, threadIdForReceipt } from "../client.ts"; /** * Determine the order of two events in a room. diff --git a/src/models/event-context.ts b/src/models/event-context.ts index 0401cd53007..c99b2db379e 100644 --- a/src/models/event-context.ts +++ b/src/models/event-context.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MatrixEvent } from "./event"; -import { Direction } from "./event-timeline"; +import { MatrixEvent } from "./event.ts"; +import { Direction } from "./event-timeline.ts"; export class EventContext { private timeline: MatrixEvent[]; diff --git a/src/models/event-timeline-set.ts b/src/models/event-timeline-set.ts index bff69547bf2..da8e6383373 100644 --- a/src/models/event-timeline-set.ts +++ b/src/models/event-timeline-set.ts @@ -14,16 +14,16 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { EventTimeline, IAddEventOptions } from "./event-timeline"; -import { MatrixEvent } from "./event"; -import { logger } from "../logger"; -import { Room, RoomEvent } from "./room"; -import { Filter } from "../filter"; -import { RoomState } from "./room-state"; -import { TypedEventEmitter } from "./typed-event-emitter"; -import { RelationsContainer } from "./relations-container"; -import { MatrixClient } from "../client"; -import { Thread, ThreadFilterType } from "./thread"; +import { EventTimeline, IAddEventOptions } from "./event-timeline.ts"; +import { MatrixEvent } from "./event.ts"; +import { logger } from "../logger.ts"; +import { Room, RoomEvent } from "./room.ts"; +import { Filter } from "../filter.ts"; +import { RoomState } from "./room-state.ts"; +import { TypedEventEmitter } from "./typed-event-emitter.ts"; +import { RelationsContainer } from "./relations-container.ts"; +import { MatrixClient } from "../client.ts"; +import { Thread, ThreadFilterType } from "./thread.ts"; const DEBUG = true; diff --git a/src/models/event-timeline.ts b/src/models/event-timeline.ts index e8b84fd8068..3489fdaee7b 100644 --- a/src/models/event-timeline.ts +++ b/src/models/event-timeline.ts @@ -14,11 +14,11 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IMarkerFoundOptions, RoomState } from "./room-state"; -import { EventTimelineSet } from "./event-timeline-set"; -import { MatrixEvent } from "./event"; -import { Filter } from "../filter"; -import { EventType } from "../@types/event"; +import { IMarkerFoundOptions, RoomState } from "./room-state.ts"; +import { EventTimelineSet } from "./event-timeline-set.ts"; +import { MatrixEvent } from "./event.ts"; +import { Filter } from "../filter.ts"; +import { EventType } from "../@types/event.ts"; export interface IInitialiseStateOptions extends Pick { // This is a separate interface without any extra stuff currently added on diff --git a/src/models/event.ts b/src/models/event.ts index f3eead5a849..8c132144381 100644 --- a/src/models/event.ts +++ b/src/models/event.ts @@ -21,9 +21,9 @@ limitations under the License. import { ExtensibleEvent, ExtensibleEvents, Optional } from "matrix-events-sdk"; -import type { IEventDecryptionResult } from "../@types/crypto"; -import { logger } from "../logger"; -import { VerificationRequest } from "../crypto/verification/request/VerificationRequest"; +import type { IEventDecryptionResult } from "../@types/crypto.ts"; +import { logger } from "../logger.ts"; +import { VerificationRequest } from "../crypto/verification/request/VerificationRequest.ts"; import { EVENT_VISIBILITY_CHANGE_TYPE, EventType, @@ -32,24 +32,24 @@ import { ToDeviceMessageId, UNSIGNED_THREAD_ID_FIELD, UNSIGNED_MEMBERSHIP_FIELD, -} from "../@types/event"; -import { Crypto } from "../crypto"; -import { deepSortedObjectEntries, internaliseString } from "../utils"; -import { RoomMember } from "./room-member"; -import { Thread, THREAD_RELATION_TYPE, ThreadEvent, ThreadEventHandlerMap } from "./thread"; -import { IActionsObject } from "../pushprocessor"; -import { TypedReEmitter } from "../ReEmitter"; -import { MatrixError } from "../http-api"; -import { TypedEventEmitter } from "./typed-event-emitter"; -import { EventStatus } from "./event-status"; -import { CryptoBackend, DecryptionError } from "../common-crypto/CryptoBackend"; -import { IAnnotatedPushRule } from "../@types/PushRules"; -import { Room } from "./room"; -import { EventTimeline } from "./event-timeline"; -import { Membership } from "../@types/membership"; -import { DecryptionFailureCode } from "../crypto-api"; - -export { EventStatus } from "./event-status"; +} from "../@types/event.ts"; +import { Crypto } from "../crypto/index.ts"; +import { deepSortedObjectEntries, internaliseString } from "../utils.ts"; +import { RoomMember } from "./room-member.ts"; +import { Thread, THREAD_RELATION_TYPE, ThreadEvent, ThreadEventHandlerMap } from "./thread.ts"; +import { IActionsObject } from "../pushprocessor.ts"; +import { TypedReEmitter } from "../ReEmitter.ts"; +import { MatrixError } from "../http-api/index.ts"; +import { TypedEventEmitter } from "./typed-event-emitter.ts"; +import { EventStatus } from "./event-status.ts"; +import { CryptoBackend, DecryptionError } from "../common-crypto/CryptoBackend.ts"; +import { IAnnotatedPushRule } from "../@types/PushRules.ts"; +import { Room } from "./room.ts"; +import { EventTimeline } from "./event-timeline.ts"; +import { Membership } from "../@types/membership.ts"; +import { DecryptionFailureCode } from "../crypto-api/index.ts"; + +export { EventStatus } from "./event-status.ts"; /* eslint-disable camelcase */ export interface IContent { diff --git a/src/models/invites-ignorer.ts b/src/models/invites-ignorer.ts index a76d6a83a57..c5ea960152f 100644 --- a/src/models/invites-ignorer.ts +++ b/src/models/invites-ignorer.ts @@ -16,13 +16,13 @@ limitations under the License. import { UnstableValue } from "matrix-events-sdk"; -import { MatrixClient } from "../client"; -import { IContent, MatrixEvent } from "./event"; -import { EventTimeline } from "./event-timeline"; -import { Preset } from "../@types/partials"; -import { globToRegexp } from "../utils"; -import { Room } from "./room"; -import { EventType, StateEvents } from "../@types/event"; +import { MatrixClient } from "../client.ts"; +import { IContent, MatrixEvent } from "./event.ts"; +import { EventTimeline } from "./event-timeline.ts"; +import { Preset } from "../@types/partials.ts"; +import { globToRegexp } from "../utils.ts"; +import { Room } from "./room.ts"; +import { EventType, StateEvents } from "../@types/event.ts"; /// The event type storing the user's individual policies. /// diff --git a/src/models/poll.ts b/src/models/poll.ts index 4c4fc466ee7..ae38810f80a 100644 --- a/src/models/poll.ts +++ b/src/models/poll.ts @@ -16,13 +16,13 @@ limitations under the License. import { M_POLL_START } from "matrix-events-sdk"; -import { M_POLL_END, M_POLL_RESPONSE } from "../@types/polls"; -import { MatrixClient } from "../client"; -import { PollStartEvent } from "../extensible_events_v1/PollStartEvent"; -import { MatrixEvent } from "./event"; -import { Relations } from "./relations"; -import { Room } from "./room"; -import { TypedEventEmitter } from "./typed-event-emitter"; +import { M_POLL_END, M_POLL_RESPONSE } from "../@types/polls.ts"; +import { MatrixClient } from "../client.ts"; +import { PollStartEvent } from "../extensible_events_v1/PollStartEvent.ts"; +import { MatrixEvent } from "./event.ts"; +import { Relations } from "./relations.ts"; +import { Room } from "./room.ts"; +import { TypedEventEmitter } from "./typed-event-emitter.ts"; export enum PollEvent { New = "Poll.new", diff --git a/src/models/read-receipt.ts b/src/models/read-receipt.ts index 8dd743e7c40..5711e331458 100644 --- a/src/models/read-receipt.ts +++ b/src/models/read-receipt.ts @@ -18,16 +18,16 @@ import { ReceiptCache, ReceiptType, WrappedReceipt, -} from "../@types/read_receipts"; -import { ListenerMap, TypedEventEmitter } from "./typed-event-emitter"; -import { isSupportedReceiptType } from "../utils"; -import { MatrixEvent } from "./event"; -import { EventType } from "../@types/event"; -import { EventTimelineSet } from "./event-timeline-set"; -import { MapWithDefault } from "../utils"; -import { NotificationCountType } from "./room"; -import { logger } from "../logger"; -import { inMainTimelineForReceipt, threadIdForReceipt } from "../client"; +} from "../@types/read_receipts.ts"; +import { ListenerMap, TypedEventEmitter } from "./typed-event-emitter.ts"; +import { isSupportedReceiptType } from "../utils.ts"; +import { MatrixEvent } from "./event.ts"; +import { EventType } from "../@types/event.ts"; +import { EventTimelineSet } from "./event-timeline-set.ts"; +import { MapWithDefault } from "../utils.ts"; +import { NotificationCountType } from "./room.ts"; +import { logger } from "../logger.ts"; +import { inMainTimelineForReceipt, threadIdForReceipt } from "../client.ts"; /** * Create a synthetic receipt for the given event diff --git a/src/models/related-relations.ts b/src/models/related-relations.ts index a0051695a5b..0dda060aed7 100644 --- a/src/models/related-relations.ts +++ b/src/models/related-relations.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { Relations, RelationsEvent, EventHandlerMap } from "./relations"; -import { MatrixEvent } from "./event"; -import { Listener } from "./typed-event-emitter"; +import { Relations, RelationsEvent, EventHandlerMap } from "./relations.ts"; +import { MatrixEvent } from "./event.ts"; +import { Listener } from "./typed-event-emitter.ts"; export class RelatedRelations { private relations: Relations[]; diff --git a/src/models/relations-container.ts b/src/models/relations-container.ts index 9637223b023..3889be71904 100644 --- a/src/models/relations-container.ts +++ b/src/models/relations-container.ts @@ -14,12 +14,12 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { Relations } from "./relations"; -import { EventType, RelationType } from "../@types/event"; -import { EventStatus, MatrixEvent, MatrixEventEvent } from "./event"; -import { EventTimelineSet } from "./event-timeline-set"; -import { MatrixClient } from "../client"; -import { Room } from "./room"; +import { Relations } from "./relations.ts"; +import { EventType, RelationType } from "../@types/event.ts"; +import { EventStatus, MatrixEvent, MatrixEventEvent } from "./event.ts"; +import { EventTimelineSet } from "./event-timeline-set.ts"; +import { MatrixClient } from "../client.ts"; +import { Room } from "./room.ts"; export class RelationsContainer { // A tree of objects to access a set of related children for an event, as in: diff --git a/src/models/relations.ts b/src/models/relations.ts index d2b637cc3c6..87a9b7522bb 100644 --- a/src/models/relations.ts +++ b/src/models/relations.ts @@ -14,12 +14,12 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { EventStatus, IAggregatedRelation, MatrixEvent, MatrixEventEvent } from "./event"; -import { logger } from "../logger"; -import { RelationType } from "../@types/event"; -import { TypedEventEmitter } from "./typed-event-emitter"; -import { MatrixClient } from "../client"; -import { Room } from "./room"; +import { EventStatus, IAggregatedRelation, MatrixEvent, MatrixEventEvent } from "./event.ts"; +import { logger } from "../logger.ts"; +import { RelationType } from "../@types/event.ts"; +import { TypedEventEmitter } from "./typed-event-emitter.ts"; +import { MatrixClient } from "../client.ts"; +import { Room } from "./room.ts"; export enum RelationsEvent { Add = "Relations.add", diff --git a/src/models/room-member.ts b/src/models/room-member.ts index 58da589f8b3..181df14c226 100644 --- a/src/models/room-member.ts +++ b/src/models/room-member.ts @@ -14,15 +14,15 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { getHttpUriForMxc } from "../content-repo"; -import { removeDirectionOverrideChars, removeHiddenChars } from "../utils"; -import { User } from "./user"; -import { MatrixEvent } from "./event"; -import { RoomState } from "./room-state"; -import { logger } from "../logger"; -import { TypedEventEmitter } from "./typed-event-emitter"; -import { EventType } from "../@types/event"; -import { KnownMembership, Membership } from "../@types/membership"; +import { getHttpUriForMxc } from "../content-repo.ts"; +import { removeDirectionOverrideChars, removeHiddenChars } from "../utils.ts"; +import { User } from "./user.ts"; +import { MatrixEvent } from "./event.ts"; +import { RoomState } from "./room-state.ts"; +import { logger } from "../logger.ts"; +import { TypedEventEmitter } from "./typed-event-emitter.ts"; +import { EventType } from "../@types/event.ts"; +import { KnownMembership, Membership } from "../@types/membership.ts"; export enum RoomMemberEvent { Membership = "RoomMember.membership", diff --git a/src/models/room-receipts.ts b/src/models/room-receipts.ts index e8370e0efe4..9850eece2c5 100644 --- a/src/models/room-receipts.ts +++ b/src/models/room-receipts.ts @@ -14,11 +14,11 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MAIN_ROOM_TIMELINE, Receipt, ReceiptContent } from "../@types/read_receipts"; -import { threadIdForReceipt } from "../client"; -import { Room, RoomEvent } from "./room"; -import { MatrixEvent } from "./event"; -import { logger } from "../logger"; +import { MAIN_ROOM_TIMELINE, Receipt, ReceiptContent } from "../@types/read_receipts.ts"; +import { threadIdForReceipt } from "../client.ts"; +import { Room, RoomEvent } from "./room.ts"; +import { MatrixEvent } from "./event.ts"; +import { logger } from "../logger.ts"; /** * The latest receipts we have for a room. diff --git a/src/models/room-state.ts b/src/models/room-state.ts index 52a58660437..492670e6f89 100644 --- a/src/models/room-state.ts +++ b/src/models/room-state.ts @@ -14,19 +14,19 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { RoomMember } from "./room-member"; -import { logger } from "../logger"; -import { isNumber, removeHiddenChars } from "../utils"; -import { EventType, UNSTABLE_MSC2716_MARKER } from "../@types/event"; -import { IEvent, MatrixEvent, MatrixEventEvent } from "./event"; -import { MatrixClient } from "../client"; -import { GuestAccess, HistoryVisibility, JoinRule } from "../@types/partials"; -import { TypedEventEmitter } from "./typed-event-emitter"; -import { Beacon, BeaconEvent, BeaconEventHandlerMap, getBeaconInfoIdentifier, BeaconIdentifier } from "./beacon"; -import { TypedReEmitter } from "../ReEmitter"; -import { M_BEACON, M_BEACON_INFO } from "../@types/beacon"; -import { KnownMembership } from "../@types/membership"; -import { RoomJoinRulesEventContent } from "../@types/state_events"; +import { RoomMember } from "./room-member.ts"; +import { logger } from "../logger.ts"; +import { isNumber, removeHiddenChars } from "../utils.ts"; +import { EventType, UNSTABLE_MSC2716_MARKER } from "../@types/event.ts"; +import { IEvent, MatrixEvent, MatrixEventEvent } from "./event.ts"; +import { MatrixClient } from "../client.ts"; +import { GuestAccess, HistoryVisibility, JoinRule } from "../@types/partials.ts"; +import { TypedEventEmitter } from "./typed-event-emitter.ts"; +import { Beacon, BeaconEvent, BeaconEventHandlerMap, getBeaconInfoIdentifier, BeaconIdentifier } from "./beacon.ts"; +import { TypedReEmitter } from "../ReEmitter.ts"; +import { M_BEACON, M_BEACON_INFO } from "../@types/beacon.ts"; +import { KnownMembership } from "../@types/membership.ts"; +import { RoomJoinRulesEventContent } from "../@types/state_events.ts"; export interface IMarkerFoundOptions { /** Whether the timeline was empty before the marker event arrived in the diff --git a/src/models/room.ts b/src/models/room.ts index 0310b88fe34..b013e76afaa 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -21,17 +21,17 @@ import { DuplicateStrategy, IAddLiveEventOptions, EventTimelineSetHandlerMap, -} from "./event-timeline-set"; -import { Direction, EventTimeline } from "./event-timeline"; -import { getHttpUriForMxc } from "../content-repo"; -import { removeElement } from "../utils"; -import { normalize, noUnsafeEventProps } from "../utils"; -import { IEvent, IThreadBundledRelationship, MatrixEvent, MatrixEventEvent, MatrixEventHandlerMap } from "./event"; -import { EventStatus } from "./event-status"; -import { RoomMember } from "./room-member"; -import { IRoomSummary, RoomSummary } from "./room-summary"; -import { logger } from "../logger"; -import { TypedReEmitter } from "../ReEmitter"; +} from "./event-timeline-set.ts"; +import { Direction, EventTimeline } from "./event-timeline.ts"; +import { getHttpUriForMxc } from "../content-repo.ts"; +import { removeElement } from "../utils.ts"; +import { normalize, noUnsafeEventProps } from "../utils.ts"; +import { IEvent, IThreadBundledRelationship, MatrixEvent, MatrixEventEvent, MatrixEventHandlerMap } from "./event.ts"; +import { EventStatus } from "./event-status.ts"; +import { RoomMember } from "./room-member.ts"; +import { IRoomSummary, RoomSummary } from "./room-summary.ts"; +import { logger } from "../logger.ts"; +import { TypedReEmitter } from "../ReEmitter.ts"; import { EventType, RoomCreateTypeField, @@ -40,12 +40,12 @@ import { EVENT_VISIBILITY_CHANGE_TYPE, RelationType, UNSIGNED_THREAD_ID_FIELD, -} from "../@types/event"; -import { MatrixClient, PendingEventOrdering } from "../client"; -import { GuestAccess, HistoryVisibility, JoinRule, ResizeMethod } from "../@types/partials"; -import { Filter, IFilterDefinition } from "../filter"; -import { RoomState, RoomStateEvent, RoomStateEventHandlerMap } from "./room-state"; -import { BeaconEvent, BeaconEventHandlerMap } from "./beacon"; +} from "../@types/event.ts"; +import { MatrixClient, PendingEventOrdering } from "../client.ts"; +import { GuestAccess, HistoryVisibility, JoinRule, ResizeMethod } from "../@types/partials.ts"; +import { Filter, IFilterDefinition } from "../filter.ts"; +import { RoomState, RoomStateEvent, RoomStateEventHandlerMap } from "./room-state.ts"; +import { BeaconEvent, BeaconEventHandlerMap } from "./beacon.ts"; import { Thread, ThreadEvent, @@ -54,23 +54,23 @@ import { THREAD_RELATION_TYPE, FILTER_RELATED_BY_SENDERS, ThreadFilterType, -} from "./thread"; +} from "./thread.ts"; import { CachedReceiptStructure, MAIN_ROOM_TIMELINE, Receipt, ReceiptContent, ReceiptType, -} from "../@types/read_receipts"; -import { IStateEventWithRoomId } from "../@types/search"; -import { RelationsContainer } from "./relations-container"; -import { ReadReceipt, synthesizeReceipt } from "./read-receipt"; -import { isPollEvent, Poll, PollEvent } from "./poll"; -import { RoomReceipts } from "./room-receipts"; -import { compareEventOrdering } from "./compare-event-ordering"; -import * as utils from "../utils"; -import { KnownMembership, Membership } from "../@types/membership"; -import { Capabilities, IRoomVersionsCapability, RoomVersionStability } from "../serverCapabilities"; +} from "../@types/read_receipts.ts"; +import { IStateEventWithRoomId } from "../@types/search.ts"; +import { RelationsContainer } from "./relations-container.ts"; +import { ReadReceipt, synthesizeReceipt } from "./read-receipt.ts"; +import { isPollEvent, Poll, PollEvent } from "./poll.ts"; +import { RoomReceipts } from "./room-receipts.ts"; +import { compareEventOrdering } from "./compare-event-ordering.ts"; +import * as utils from "../utils.ts"; +import { KnownMembership, Membership } from "../@types/membership.ts"; +import { Capabilities, IRoomVersionsCapability, RoomVersionStability } from "../serverCapabilities.ts"; // These constants are used as sane defaults when the homeserver doesn't support // the m.room_versions capability. In practice, KNOWN_SAFE_ROOM_VERSION should be diff --git a/src/models/search-result.ts b/src/models/search-result.ts index 525b525fc2c..4677371a5c0 100644 --- a/src/models/search-result.ts +++ b/src/models/search-result.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { EventContext } from "./event-context"; -import { EventMapper } from "../event-mapper"; -import { IResultContext, ISearchResult } from "../@types/search"; +import { EventContext } from "./event-context.ts"; +import { EventMapper } from "../event-mapper.ts"; +import { IResultContext, ISearchResult } from "../@types/search.ts"; export class SearchResult { /** diff --git a/src/models/thread.ts b/src/models/thread.ts index 6db967d4e89..905c4db3c1f 100644 --- a/src/models/thread.ts +++ b/src/models/thread.ts @@ -16,19 +16,19 @@ limitations under the License. import { Optional } from "matrix-events-sdk"; -import { MatrixClient, PendingEventOrdering } from "../client"; -import { TypedReEmitter } from "../ReEmitter"; -import { RelationType } from "../@types/event"; -import { IThreadBundledRelationship, MatrixEvent, MatrixEventEvent } from "./event"; -import { Direction, EventTimeline } from "./event-timeline"; -import { EventTimelineSet, EventTimelineSetHandlerMap } from "./event-timeline-set"; -import { NotificationCountType, Room, RoomEvent } from "./room"; -import { RoomState } from "./room-state"; -import { ServerControlledNamespacedValue } from "../NamespacedValue"; -import { logger } from "../logger"; -import { ReadReceipt } from "./read-receipt"; -import { CachedReceiptStructure, Receipt, ReceiptType } from "../@types/read_receipts"; -import { Feature, ServerSupport } from "../feature"; +import { MatrixClient, PendingEventOrdering } from "../client.ts"; +import { TypedReEmitter } from "../ReEmitter.ts"; +import { RelationType } from "../@types/event.ts"; +import { IThreadBundledRelationship, MatrixEvent, MatrixEventEvent } from "./event.ts"; +import { Direction, EventTimeline } from "./event-timeline.ts"; +import { EventTimelineSet, EventTimelineSetHandlerMap } from "./event-timeline-set.ts"; +import { NotificationCountType, Room, RoomEvent } from "./room.ts"; +import { RoomState } from "./room-state.ts"; +import { ServerControlledNamespacedValue } from "../NamespacedValue.ts"; +import { logger } from "../logger.ts"; +import { ReadReceipt } from "./read-receipt.ts"; +import { CachedReceiptStructure, Receipt, ReceiptType } from "../@types/read_receipts.ts"; +import { Feature, ServerSupport } from "../feature.ts"; export enum ThreadEvent { New = "Thread.new", diff --git a/src/models/user.ts b/src/models/user.ts index 32614bedc59..90005c2cf4a 100644 --- a/src/models/user.ts +++ b/src/models/user.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MatrixClient } from "../matrix"; -import { MatrixEvent } from "./event"; -import { TypedEventEmitter } from "./typed-event-emitter"; +import { MatrixClient } from "../matrix.ts"; +import { MatrixEvent } from "./event.ts"; +import { TypedEventEmitter } from "./typed-event-emitter.ts"; export enum UserEvent { DisplayName = "User.displayName", diff --git a/src/oidc/authorize.ts b/src/oidc/authorize.ts index c3ff2fcef36..7e3692dfb94 100644 --- a/src/oidc/authorize.ts +++ b/src/oidc/authorize.ts @@ -16,9 +16,9 @@ limitations under the License. import { IdTokenClaims, Log, OidcClient, SigninResponse, SigninState, WebStorageStateStore } from "oidc-client-ts"; -import { logger } from "../logger"; -import { randomString } from "../randomstring"; -import { OidcError } from "./error"; +import { logger } from "../logger.ts"; +import { randomString } from "../randomstring.ts"; +import { OidcError } from "./error.ts"; import { BearerTokenResponse, UserState, @@ -26,9 +26,9 @@ import { ValidatedIssuerMetadata, validateIdToken, validateStoredUserState, -} from "./validate"; -import { sha256 } from "../digest"; -import { encodeUnpaddedBase64Url } from "../base64"; +} from "./validate.ts"; +import { sha256 } from "../digest.ts"; +import { encodeUnpaddedBase64Url } from "../base64.ts"; // reexport for backwards compatibility export type { BearerTokenResponse }; diff --git a/src/oidc/discovery.ts b/src/oidc/discovery.ts index 7199c8715d4..656bb30a5c8 100644 --- a/src/oidc/discovery.ts +++ b/src/oidc/discovery.ts @@ -16,9 +16,9 @@ limitations under the License. import { MetadataService, OidcClientSettingsStore } from "oidc-client-ts"; -import { isValidatedIssuerMetadata, validateOIDCIssuerWellKnown } from "./validate"; -import { Method, timeoutSignal } from "../http-api"; -import { OidcClientConfig } from "./index"; +import { isValidatedIssuerMetadata, validateOIDCIssuerWellKnown } from "./validate.ts"; +import { Method, timeoutSignal } from "../http-api/index.ts"; +import { OidcClientConfig } from "./index.ts"; /** * @experimental diff --git a/src/oidc/index.ts b/src/oidc/index.ts index 7fc31836f83..519b311a617 100644 --- a/src/oidc/index.ts +++ b/src/oidc/index.ts @@ -15,14 +15,14 @@ limitations under the License. */ import type { SigningKey } from "oidc-client-ts"; -import { ValidatedIssuerConfig, ValidatedIssuerMetadata } from "./validate"; +import { ValidatedIssuerConfig, ValidatedIssuerMetadata } from "./validate.ts"; -export * from "./authorize"; -export * from "./discovery"; -export * from "./error"; -export * from "./register"; -export * from "./tokenRefresher"; -export * from "./validate"; +export * from "./authorize.ts"; +export * from "./discovery.ts"; +export * from "./error.ts"; +export * from "./register.ts"; +export * from "./tokenRefresher.ts"; +export * from "./validate.ts"; /** * Validated config for native OIDC authentication, as returned by {@link discoverAndValidateOIDCIssuerWellKnown}. diff --git a/src/oidc/register.ts b/src/oidc/register.ts index ec673e7975a..25c3673d3a1 100644 --- a/src/oidc/register.ts +++ b/src/oidc/register.ts @@ -14,11 +14,11 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { OidcClientConfig } from "."; -import { OidcError } from "./error"; -import { Method } from "../http-api"; -import { logger } from "../logger"; -import { NonEmptyArray } from "../@types/common"; +import { OidcClientConfig } from "./index.ts"; +import { OidcError } from "./error.ts"; +import { Method } from "../http-api/index.ts"; +import { logger } from "../logger.ts"; +import { NonEmptyArray } from "../@types/common.ts"; /** * Client metadata passed to registration endpoint diff --git a/src/oidc/tokenRefresher.ts b/src/oidc/tokenRefresher.ts index 84b773531b9..b75de5c2ce3 100644 --- a/src/oidc/tokenRefresher.ts +++ b/src/oidc/tokenRefresher.ts @@ -16,10 +16,10 @@ limitations under the License. import { IdTokenClaims, OidcClient, WebStorageStateStore } from "oidc-client-ts"; -import { AccessTokens } from "../http-api"; -import { generateScope } from "./authorize"; -import { discoverAndValidateOIDCIssuerWellKnown } from "./discovery"; -import { logger } from "../logger"; +import { AccessTokens } from "../http-api/index.ts"; +import { generateScope } from "./authorize.ts"; +import { discoverAndValidateOIDCIssuerWellKnown } from "./discovery.ts"; +import { logger } from "../logger.ts"; /** * @experimental diff --git a/src/oidc/validate.ts b/src/oidc/validate.ts index de50b570b66..72eb7e96e64 100644 --- a/src/oidc/validate.ts +++ b/src/oidc/validate.ts @@ -17,8 +17,8 @@ limitations under the License. import { jwtDecode } from "jwt-decode"; import { IdTokenClaims, OidcMetadata, SigninResponse } from "oidc-client-ts"; -import { logger } from "../logger"; -import { OidcError } from "./error"; +import { logger } from "../logger.ts"; +import { OidcError } from "./error.ts"; export type ValidatedIssuerConfig = { authorizationEndpoint: string; diff --git a/src/pushprocessor.ts b/src/pushprocessor.ts index 734a72751c3..be40c2d1e83 100644 --- a/src/pushprocessor.ts +++ b/src/pushprocessor.ts @@ -14,10 +14,10 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { deepCompare, escapeRegExp, globToRegexp, isNullOrUndefined } from "./utils"; -import { logger } from "./logger"; -import { MatrixClient } from "./client"; -import { MatrixEvent } from "./models/event"; +import { deepCompare, escapeRegExp, globToRegexp, isNullOrUndefined } from "./utils.ts"; +import { logger } from "./logger.ts"; +import { MatrixClient } from "./client.ts"; +import { MatrixEvent } from "./models/event.ts"; import { ConditionKind, IAnnotatedPushRule, @@ -38,8 +38,8 @@ import { PushRuleSet, RuleId, TweakName, -} from "./@types/PushRules"; -import { EventType } from "./@types/event"; +} from "./@types/PushRules.ts"; +import { EventType } from "./@types/event.ts"; const RULEKINDS_IN_ORDER = [ PushRuleKind.Override, diff --git a/src/randomstring.ts b/src/randomstring.ts index d095a2b9ef1..d0cc9e675d2 100644 --- a/src/randomstring.ts +++ b/src/randomstring.ts @@ -15,7 +15,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { encodeUnpaddedBase64Url } from "./base64"; +import { encodeUnpaddedBase64Url } from "./base64.ts"; const LOWERCASE = "abcdefghijklmnopqrstuvwxyz"; const UPPERCASE = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; diff --git a/src/realtime-callbacks.ts b/src/realtime-callbacks.ts index 1b03a579a28..b59d145344a 100644 --- a/src/realtime-callbacks.ts +++ b/src/realtime-callbacks.ts @@ -24,7 +24,7 @@ limitations under the License. * it will instead fire as soon as possible after resume. */ -import { logger } from "./logger"; +import { logger } from "./logger.ts"; // we schedule a callback at least this often, to check if we've missed out on // some wall-clock time due to being suspended. diff --git a/src/receipt-accumulator.ts b/src/receipt-accumulator.ts index ded358ad9a1..707b2ff2714 100644 --- a/src/receipt-accumulator.ts +++ b/src/receipt-accumulator.ts @@ -14,11 +14,11 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IMinimalEvent } from "./sync-accumulator"; -import { EventType } from "./@types/event"; -import { isSupportedReceiptType, MapWithDefault, recursiveMapToObject } from "./utils"; -import { IContent } from "./models/event"; -import { ReceiptContent, ReceiptType } from "./@types/read_receipts"; +import { IMinimalEvent } from "./sync-accumulator.ts"; +import { EventType } from "./@types/event.ts"; +import { isSupportedReceiptType, MapWithDefault, recursiveMapToObject } from "./utils.ts"; +import { IContent } from "./models/event.ts"; +import { ReceiptContent, ReceiptType } from "./@types/read_receipts.ts"; interface AccumulatedReceipt { data: IMinimalEvent; diff --git a/src/rendezvous/MSC3906Rendezvous.ts b/src/rendezvous/MSC3906Rendezvous.ts index 4a2c3fa3319..a84a41d687a 100644 --- a/src/rendezvous/MSC3906Rendezvous.ts +++ b/src/rendezvous/MSC3906Rendezvous.ts @@ -21,13 +21,13 @@ import { RendezvousFailureListener, LegacyRendezvousFailureReason as RendezvousFailureReason, RendezvousIntent, -} from "."; -import { MatrixClient, GET_LOGIN_TOKEN_CAPABILITY } from "../client"; -import { buildFeatureSupportMap, Feature, ServerSupport } from "../feature"; -import { logger } from "../logger"; -import { sleep } from "../utils"; -import { CrossSigningKey } from "../crypto-api"; -import { Capabilities, Device, IGetLoginTokenCapability } from "../matrix"; +} from "./index.ts"; +import { MatrixClient, GET_LOGIN_TOKEN_CAPABILITY } from "../client.ts"; +import { buildFeatureSupportMap, Feature, ServerSupport } from "../feature.ts"; +import { logger } from "../logger.ts"; +import { sleep } from "../utils.ts"; +import { CrossSigningKey } from "../crypto-api/index.ts"; +import { Capabilities, Device, IGetLoginTokenCapability } from "../matrix.ts"; enum PayloadType { Start = "m.login.start", diff --git a/src/rendezvous/MSC4108SignInWithQR.ts b/src/rendezvous/MSC4108SignInWithQR.ts index 827d5d08867..a22b3149e5a 100644 --- a/src/rendezvous/MSC4108SignInWithQR.ts +++ b/src/rendezvous/MSC4108SignInWithQR.ts @@ -16,14 +16,19 @@ limitations under the License. import { QrCodeMode } from "@matrix-org/matrix-sdk-crypto-wasm"; -import { ClientRendezvousFailureReason, MSC4108FailureReason, RendezvousError, RendezvousFailureListener } from "."; -import { MatrixClient } from "../client"; -import { logger } from "../logger"; -import { MSC4108SecureChannel } from "./channels/MSC4108SecureChannel"; -import { MatrixError } from "../http-api"; -import { sleep } from "../utils"; -import { DEVICE_CODE_SCOPE, discoverAndValidateOIDCIssuerWellKnown, OidcClientConfig } from "../oidc"; -import { CryptoApi } from "../crypto-api"; +import { + ClientRendezvousFailureReason, + MSC4108FailureReason, + RendezvousError, + RendezvousFailureListener, +} from "./index.ts"; +import { MatrixClient } from "../client.ts"; +import { logger } from "../logger.ts"; +import { MSC4108SecureChannel } from "./channels/MSC4108SecureChannel.ts"; +import { MatrixError } from "../http-api/index.ts"; +import { sleep } from "../utils.ts"; +import { DEVICE_CODE_SCOPE, discoverAndValidateOIDCIssuerWellKnown, OidcClientConfig } from "../oidc/index.ts"; +import { CryptoApi } from "../crypto-api/index.ts"; /** * Enum representing the payload types transmissible over [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108) diff --git a/src/rendezvous/RendezvousChannel.ts b/src/rendezvous/RendezvousChannel.ts index 549ebc83f51..ced8523bdb4 100644 --- a/src/rendezvous/RendezvousChannel.ts +++ b/src/rendezvous/RendezvousChannel.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { RendezvousCode, RendezvousIntent, RendezvousFailureReason } from "."; +import { RendezvousCode, RendezvousIntent, RendezvousFailureReason } from "./index.ts"; export interface RendezvousChannel { /** diff --git a/src/rendezvous/RendezvousCode.ts b/src/rendezvous/RendezvousCode.ts index 86608aa1c44..e5b89aae67c 100644 --- a/src/rendezvous/RendezvousCode.ts +++ b/src/rendezvous/RendezvousCode.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { RendezvousTransportDetails, RendezvousIntent } from "."; +import { RendezvousTransportDetails, RendezvousIntent } from "./index.ts"; export interface RendezvousCode { intent: RendezvousIntent; diff --git a/src/rendezvous/RendezvousError.ts b/src/rendezvous/RendezvousError.ts index b3026d43b87..502538fff61 100644 --- a/src/rendezvous/RendezvousError.ts +++ b/src/rendezvous/RendezvousError.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { RendezvousFailureReason } from "."; +import { RendezvousFailureReason } from "./index.ts"; export class RendezvousError extends Error { public constructor( diff --git a/src/rendezvous/RendezvousTransport.ts b/src/rendezvous/RendezvousTransport.ts index 08905be65e8..a86db5fc076 100644 --- a/src/rendezvous/RendezvousTransport.ts +++ b/src/rendezvous/RendezvousTransport.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { RendezvousFailureListener, RendezvousFailureReason } from "."; +import { RendezvousFailureListener, RendezvousFailureReason } from "./index.ts"; export interface RendezvousTransportDetails { type: string; diff --git a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts b/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts index 42b4f7c9969..47b8e3fd8dc 100644 --- a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts +++ b/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts @@ -24,10 +24,10 @@ import { RendezvousIntent, RendezvousTransport, RendezvousTransportDetails, -} from ".."; -import { decodeBase64, encodeUnpaddedBase64 } from "../../base64"; -import { generateDecimalSas } from "../../crypto/verification/SASDecimal"; -import { UnstableValue } from "../../NamespacedValue"; +} from "../index.ts"; +import { decodeBase64, encodeUnpaddedBase64 } from "../../base64.ts"; +import { generateDecimalSas } from "../../crypto/verification/SASDecimal.ts"; +import { UnstableValue } from "../../NamespacedValue.ts"; const ECDH_V2 = new UnstableValue( "m.rendezvous.v2.curve25519-aes-sha256", diff --git a/src/rendezvous/channels/MSC4108SecureChannel.ts b/src/rendezvous/channels/MSC4108SecureChannel.ts index 717b5441705..8165000e768 100644 --- a/src/rendezvous/channels/MSC4108SecureChannel.ts +++ b/src/rendezvous/channels/MSC4108SecureChannel.ts @@ -28,9 +28,9 @@ import { MSC4108Payload, RendezvousError, RendezvousFailureListener, -} from ".."; -import { MSC4108RendezvousSession } from "../transports/MSC4108RendezvousSession"; -import { logger } from "../../logger"; +} from "../index.ts"; +import { MSC4108RendezvousSession } from "../transports/MSC4108RendezvousSession.ts"; +import { logger } from "../../logger.ts"; /** * Prototype of the unstable [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108) diff --git a/src/rendezvous/channels/index.ts b/src/rendezvous/channels/index.ts index 793105a5153..c525e278485 100644 --- a/src/rendezvous/channels/index.ts +++ b/src/rendezvous/channels/index.ts @@ -17,5 +17,5 @@ limitations under the License. /** * @deprecated in favour of MSC4108-based implementation */ -export * from "./MSC3903ECDHv2RendezvousChannel"; -export * from "./MSC4108SecureChannel"; +export * from "./MSC3903ECDHv2RendezvousChannel.ts"; +export * from "./MSC4108SecureChannel.ts"; diff --git a/src/rendezvous/index.ts b/src/rendezvous/index.ts index 1b887d9c3d9..5b8d83f51e8 100644 --- a/src/rendezvous/index.ts +++ b/src/rendezvous/index.ts @@ -17,13 +17,13 @@ limitations under the License. /** * @deprecated in favour of MSC4108-based implementation */ -export * from "./MSC3906Rendezvous"; -export * from "./MSC4108SignInWithQR"; -export * from "./RendezvousChannel"; -export * from "./RendezvousCode"; -export * from "./RendezvousError"; -export * from "./RendezvousFailureReason"; -export * from "./RendezvousIntent"; -export * from "./RendezvousTransport"; -export * from "./transports"; -export * from "./channels"; +export * from "./MSC3906Rendezvous.ts"; +export * from "./MSC4108SignInWithQR.ts"; +export * from "./RendezvousChannel.ts"; +export * from "./RendezvousCode.ts"; +export * from "./RendezvousError.ts"; +export * from "./RendezvousFailureReason.ts"; +export * from "./RendezvousIntent.ts"; +export * from "./RendezvousTransport.ts"; +export * from "./transports/index.ts"; +export * from "./channels/index.ts"; diff --git a/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts b/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts index 01575ed709a..b8521eda420 100644 --- a/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts +++ b/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts @@ -16,16 +16,16 @@ limitations under the License. import { UnstableValue } from "matrix-events-sdk"; -import { logger } from "../../logger"; -import { sleep } from "../../utils"; +import { logger } from "../../logger.ts"; +import { sleep } from "../../utils.ts"; import { RendezvousFailureListener, LegacyRendezvousFailureReason as RendezvousFailureReason, RendezvousTransport, RendezvousTransportDetails, -} from ".."; -import { MatrixClient } from "../../matrix"; -import { ClientPrefix } from "../../http-api"; +} from "../index.ts"; +import { MatrixClient } from "../../matrix.ts"; +import { ClientPrefix } from "../../http-api/index.ts"; const TYPE = new UnstableValue("http.v1", "org.matrix.msc3886.http.v1"); diff --git a/src/rendezvous/transports/MSC4108RendezvousSession.ts b/src/rendezvous/transports/MSC4108RendezvousSession.ts index 8b18461ed89..98091471fae 100644 --- a/src/rendezvous/transports/MSC4108RendezvousSession.ts +++ b/src/rendezvous/transports/MSC4108RendezvousSession.ts @@ -14,11 +14,11 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger } from "../../logger"; -import { sleep } from "../../utils"; -import { ClientRendezvousFailureReason, MSC4108FailureReason, RendezvousFailureListener } from ".."; -import { MatrixClient, Method } from "../../matrix"; -import { ClientPrefix } from "../../http-api"; +import { logger } from "../../logger.ts"; +import { sleep } from "../../utils.ts"; +import { ClientRendezvousFailureReason, MSC4108FailureReason, RendezvousFailureListener } from "../index.ts"; +import { MatrixClient, Method } from "../../matrix.ts"; +import { ClientPrefix } from "../../http-api/index.ts"; /** * Prototype of the unstable [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108) diff --git a/src/rendezvous/transports/index.ts b/src/rendezvous/transports/index.ts index 09349dd25e1..88fe91ba1d9 100644 --- a/src/rendezvous/transports/index.ts +++ b/src/rendezvous/transports/index.ts @@ -17,5 +17,5 @@ limitations under the License. /** * @deprecated in favour of MSC4108-based implementation */ -export * from "./MSC3886SimpleHttpRendezvousTransport"; -export * from "./MSC4108RendezvousSession"; +export * from "./MSC3886SimpleHttpRendezvousTransport.ts"; +export * from "./MSC4108RendezvousSession.ts"; diff --git a/src/room-hierarchy.ts b/src/room-hierarchy.ts index 5c0b61d743f..58e952545af 100644 --- a/src/room-hierarchy.ts +++ b/src/room-hierarchy.ts @@ -14,11 +14,11 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { Room } from "./models/room"; -import { IHierarchyRoom, IHierarchyRelation } from "./@types/spaces"; -import { MatrixClient } from "./client"; -import { EventType } from "./@types/event"; -import { MatrixError } from "./http-api"; +import { Room } from "./models/room.ts"; +import { IHierarchyRoom, IHierarchyRelation } from "./@types/spaces.ts"; +import { MatrixClient } from "./client.ts"; +import { EventType } from "./@types/event.ts"; +import { MatrixError } from "./http-api/index.ts"; export class RoomHierarchy { // Map from room id to list of servers which are listed as a via somewhere in the loaded hierarchy diff --git a/src/rust-crypto/CrossSigningIdentity.ts b/src/rust-crypto/CrossSigningIdentity.ts index 7a994a8d049..76f7189db9b 100644 --- a/src/rust-crypto/CrossSigningIdentity.ts +++ b/src/rust-crypto/CrossSigningIdentity.ts @@ -17,11 +17,11 @@ limitations under the License. import { OlmMachine, CrossSigningStatus, CrossSigningBootstrapRequests } from "@matrix-org/matrix-sdk-crypto-wasm"; import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; -import { BootstrapCrossSigningOpts } from "../crypto-api"; -import { logger } from "../logger"; -import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor"; -import { UIAuthCallback } from "../interactive-auth"; -import { ServerSideSecretStorage } from "../secret-storage"; +import { BootstrapCrossSigningOpts } from "../crypto-api/index.ts"; +import { logger } from "../logger.ts"; +import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor.ts"; +import { UIAuthCallback } from "../interactive-auth.ts"; +import { ServerSideSecretStorage } from "../secret-storage.ts"; /** Manages the cross-signing keys for our own user. * diff --git a/src/rust-crypto/DehydratedDeviceManager.ts b/src/rust-crypto/DehydratedDeviceManager.ts index cedac96a0e0..ca6be006f1b 100644 --- a/src/rust-crypto/DehydratedDeviceManager.ts +++ b/src/rust-crypto/DehydratedDeviceManager.ts @@ -16,13 +16,13 @@ limitations under the License. import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; -import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor"; -import { encodeUri } from "../utils"; -import { IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api"; -import { IToDeviceEvent } from "../sync-accumulator"; -import { ServerSideSecretStorage } from "../secret-storage"; -import { decodeBase64, encodeUnpaddedBase64 } from "../base64"; -import { Logger } from "../logger"; +import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor.ts"; +import { encodeUri } from "../utils.ts"; +import { IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api/index.ts"; +import { IToDeviceEvent } from "../sync-accumulator.ts"; +import { ServerSideSecretStorage } from "../secret-storage.ts"; +import { decodeBase64, encodeUnpaddedBase64 } from "../base64.ts"; +import { Logger } from "../logger.ts"; /** * The response body of `GET /_matrix/client/unstable/org.matrix.msc3814.v1/dehydrated_device`. diff --git a/src/rust-crypto/KeyClaimManager.ts b/src/rust-crypto/KeyClaimManager.ts index aaeed4d1435..3023de8c2f8 100644 --- a/src/rust-crypto/KeyClaimManager.ts +++ b/src/rust-crypto/KeyClaimManager.ts @@ -16,8 +16,8 @@ limitations under the License. import { OlmMachine, UserId } from "@matrix-org/matrix-sdk-crypto-wasm"; -import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor"; -import { LogSpan } from "../logger"; +import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor.ts"; +import { LogSpan } from "../logger.ts"; /** * KeyClaimManager: linearises calls to OlmMachine.getMissingSessions to avoid races diff --git a/src/rust-crypto/OutgoingRequestProcessor.ts b/src/rust-crypto/OutgoingRequestProcessor.ts index d3ae4d9c4a3..ec8e38fcf53 100644 --- a/src/rust-crypto/OutgoingRequestProcessor.ts +++ b/src/rust-crypto/OutgoingRequestProcessor.ts @@ -27,13 +27,13 @@ import { UploadSigningKeysRequest, } from "@matrix-org/matrix-sdk-crypto-wasm"; -import { logger } from "../logger"; -import { calculateRetryBackoff, IHttpOpts, MatrixHttpApi, Method } from "../http-api"; -import { logDuration, QueryDict, sleep } from "../utils"; -import { AuthDict, UIAuthCallback } from "../interactive-auth"; -import { UIAResponse } from "../@types/uia"; -import { ToDeviceMessageId } from "../@types/event"; -import { UnstablePrefix as DehydrationUnstablePrefix } from "./DehydratedDeviceManager"; +import { logger } from "../logger.ts"; +import { calculateRetryBackoff, IHttpOpts, MatrixHttpApi, Method } from "../http-api/index.ts"; +import { logDuration, QueryDict, sleep } from "../utils.ts"; +import { AuthDict, UIAuthCallback } from "../interactive-auth.ts"; +import { UIAResponse } from "../@types/uia.ts"; +import { ToDeviceMessageId } from "../@types/event.ts"; +import { UnstablePrefix as DehydrationUnstablePrefix } from "./DehydratedDeviceManager.ts"; /** * Common interface for all the request types returned by `OlmMachine.outgoingRequests`. diff --git a/src/rust-crypto/OutgoingRequestsManager.ts b/src/rust-crypto/OutgoingRequestsManager.ts index 81b3001c83a..72823d88b60 100644 --- a/src/rust-crypto/OutgoingRequestsManager.ts +++ b/src/rust-crypto/OutgoingRequestsManager.ts @@ -16,9 +16,9 @@ limitations under the License. import { OlmMachine } from "@matrix-org/matrix-sdk-crypto-wasm"; -import { OutgoingRequest, OutgoingRequestProcessor } from "./OutgoingRequestProcessor"; -import { Logger } from "../logger"; -import { defer, IDeferred, logDuration } from "../utils"; +import { OutgoingRequest, OutgoingRequestProcessor } from "./OutgoingRequestProcessor.ts"; +import { Logger } from "../logger.ts"; +import { defer, IDeferred, logDuration } from "../utils.ts"; /** * OutgoingRequestsManager: responsible for processing outgoing requests from the OlmMachine. diff --git a/src/rust-crypto/PerSessionKeyBackupDownloader.ts b/src/rust-crypto/PerSessionKeyBackupDownloader.ts index ad5a649c51f..e463cbaa7d9 100644 --- a/src/rust-crypto/PerSessionKeyBackupDownloader.ts +++ b/src/rust-crypto/PerSessionKeyBackupDownloader.ts @@ -17,13 +17,13 @@ limitations under the License. import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; import { OlmMachine } from "@matrix-org/matrix-sdk-crypto-wasm"; -import { Curve25519AuthData, KeyBackupInfo, KeyBackupSession } from "../crypto-api/keybackup"; -import { Logger } from "../logger"; -import { ClientPrefix, IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api"; -import { RustBackupManager } from "./backup"; -import { CryptoEvent } from "../matrix"; -import { encodeUri, sleep } from "../utils"; -import { BackupDecryptor } from "../common-crypto/CryptoBackend"; +import { Curve25519AuthData, KeyBackupInfo, KeyBackupSession } from "../crypto-api/keybackup.ts"; +import { Logger } from "../logger.ts"; +import { ClientPrefix, IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api/index.ts"; +import { RustBackupManager } from "./backup.ts"; +import { CryptoEvent } from "../matrix.ts"; +import { encodeUri, sleep } from "../utils.ts"; +import { BackupDecryptor } from "../common-crypto/CryptoBackend.ts"; // The minimum time to wait between two retries in case of errors. To avoid hammering the server. const KEY_BACKUP_BACKOFF = 5000; // ms diff --git a/src/rust-crypto/RoomEncryptor.ts b/src/rust-crypto/RoomEncryptor.ts index 68ee5f53771..3b6a6c80cc0 100644 --- a/src/rust-crypto/RoomEncryptor.ts +++ b/src/rust-crypto/RoomEncryptor.ts @@ -26,16 +26,16 @@ import { UserId, } from "@matrix-org/matrix-sdk-crypto-wasm"; -import { EventType } from "../@types/event"; -import { IContent, MatrixEvent } from "../models/event"; -import { Room } from "../models/room"; -import { Logger, logger, LogSpan } from "../logger"; -import { KeyClaimManager } from "./KeyClaimManager"; -import { RoomMember } from "../models/room-member"; -import { HistoryVisibility } from "../@types/partials"; -import { OutgoingRequestsManager } from "./OutgoingRequestsManager"; -import { logDuration } from "../utils"; -import { KnownMembership } from "../@types/membership"; +import { EventType } from "../@types/event.ts"; +import { IContent, MatrixEvent } from "../models/event.ts"; +import { Room } from "../models/room.ts"; +import { Logger, logger, LogSpan } from "../logger.ts"; +import { KeyClaimManager } from "./KeyClaimManager.ts"; +import { RoomMember } from "../models/room-member.ts"; +import { HistoryVisibility } from "../@types/partials.ts"; +import { OutgoingRequestsManager } from "./OutgoingRequestsManager.ts"; +import { logDuration } from "../utils.ts"; +import { KnownMembership } from "../@types/membership.ts"; /** * RoomEncryptor: responsible for encrypting messages to a given room diff --git a/src/rust-crypto/backup.ts b/src/rust-crypto/backup.ts index 8eb84887448..c4407da21f8 100644 --- a/src/rust-crypto/backup.ts +++ b/src/rust-crypto/backup.ts @@ -24,19 +24,19 @@ import { KeyBackupInfo, KeyBackupSession, Curve25519SessionData, -} from "../crypto-api/keybackup"; -import { logger } from "../logger"; -import { ClientPrefix, IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api"; -import { CryptoEvent, IMegolmSessionData } from "../crypto"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { encodeUri, logDuration } from "../utils"; -import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor"; -import { sleep } from "../utils"; -import { BackupDecryptor } from "../common-crypto/CryptoBackend"; -import { IEncryptedPayload } from "../crypto/aes"; -import { ImportRoomKeyProgressData, ImportRoomKeysOpts } from "../crypto-api"; -import { IKeyBackupInfo } from "../crypto/keybackup"; -import { IKeyBackup } from "../crypto/backup"; +} from "../crypto-api/keybackup.ts"; +import { logger } from "../logger.ts"; +import { ClientPrefix, IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api/index.ts"; +import { CryptoEvent, IMegolmSessionData } from "../crypto/index.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { encodeUri, logDuration } from "../utils.ts"; +import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor.ts"; +import { sleep } from "../utils.ts"; +import { BackupDecryptor } from "../common-crypto/CryptoBackend.ts"; +import { IEncryptedPayload } from "../crypto/aes.ts"; +import { ImportRoomKeyProgressData, ImportRoomKeysOpts } from "../crypto-api/index.ts"; +import { IKeyBackupInfo } from "../crypto/keybackup.ts"; +import { IKeyBackup } from "../crypto/backup.ts"; /** Authentification of the backup info, depends on algorithm */ type AuthData = KeyBackupInfo["auth_data"]; diff --git a/src/rust-crypto/device-converter.ts b/src/rust-crypto/device-converter.ts index 587640cb0e9..80e8bd373c1 100644 --- a/src/rust-crypto/device-converter.ts +++ b/src/rust-crypto/device-converter.ts @@ -16,8 +16,8 @@ limitations under the License. import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; -import { Device, DeviceVerification } from "../models/device"; -import { DeviceKeys } from "../client"; +import { Device, DeviceVerification } from "../models/device.ts"; +import { DeviceKeys } from "../client.ts"; /** * Convert a {@link RustSdkCryptoJs.Device} to a {@link Device} diff --git a/src/rust-crypto/index.ts b/src/rust-crypto/index.ts index 0c9e162106f..61f15a192a1 100644 --- a/src/rust-crypto/index.ts +++ b/src/rust-crypto/index.ts @@ -17,17 +17,17 @@ limitations under the License. import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; import { StoreHandle } from "@matrix-org/matrix-sdk-crypto-wasm"; -import { RustCrypto } from "./rust-crypto"; -import { IHttpOpts, MatrixHttpApi } from "../http-api"; -import { ServerSideSecretStorage } from "../secret-storage"; -import { ICryptoCallbacks } from "../crypto"; -import { Logger } from "../logger"; -import { CryptoStore, MigrationState } from "../crypto/store/base"; +import { RustCrypto } from "./rust-crypto.ts"; +import { IHttpOpts, MatrixHttpApi } from "../http-api/index.ts"; +import { ServerSideSecretStorage } from "../secret-storage.ts"; +import { ICryptoCallbacks } from "../crypto/index.ts"; +import { Logger } from "../logger.ts"; +import { CryptoStore, MigrationState } from "../crypto/store/base.ts"; import { migrateFromLegacyCrypto, migrateLegacyLocalTrustIfNeeded, migrateRoomSettingsFromLegacyCrypto, -} from "./libolm_migration"; +} from "./libolm_migration.ts"; /** * Create a new `RustCrypto` implementation diff --git a/src/rust-crypto/libolm_migration.ts b/src/rust-crypto/libolm_migration.ts index ec01847262c..50d92a626e1 100644 --- a/src/rust-crypto/libolm_migration.ts +++ b/src/rust-crypto/libolm_migration.ts @@ -16,18 +16,18 @@ limitations under the License. import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; -import { Logger } from "../logger"; -import { CryptoStore, MigrationState, SecretStorePrivateKeys } from "../crypto/store/base"; -import { IndexedDBCryptoStore } from "../crypto/store/indexeddb-crypto-store"; -import { decryptAES, IEncryptedPayload } from "../crypto/aes"; -import { IHttpOpts, MatrixHttpApi } from "../http-api"; -import { requestKeyBackupVersion } from "./backup"; -import { IRoomEncryption } from "../crypto/RoomList"; -import { CrossSigningKeyInfo, Curve25519AuthData } from "../crypto-api"; -import { RustCrypto } from "./rust-crypto"; -import { KeyBackupInfo } from "../crypto-api/keybackup"; -import { sleep } from "../utils"; -import { encodeBase64 } from "../base64"; +import { Logger } from "../logger.ts"; +import { CryptoStore, MigrationState, SecretStorePrivateKeys } from "../crypto/store/base.ts"; +import { IndexedDBCryptoStore } from "../crypto/store/indexeddb-crypto-store.ts"; +import { decryptAES, IEncryptedPayload } from "../crypto/aes.ts"; +import { IHttpOpts, MatrixHttpApi } from "../http-api/index.ts"; +import { requestKeyBackupVersion } from "./backup.ts"; +import { IRoomEncryption } from "../crypto/RoomList.ts"; +import { CrossSigningKeyInfo, Curve25519AuthData } from "../crypto-api/index.ts"; +import { RustCrypto } from "./rust-crypto.ts"; +import { KeyBackupInfo } from "../crypto-api/keybackup.ts"; +import { sleep } from "../utils.ts"; +import { encodeBase64 } from "../base64.ts"; /** * Determine if any data needs migrating from the legacy store, and do so. diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 98876482897..2a4ba09c5eb 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -17,20 +17,25 @@ limitations under the License. import anotherjson from "another-json"; import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; -import type { IEventDecryptionResult, IMegolmSessionData } from "../@types/crypto"; -import { KnownMembership } from "../@types/membership"; -import type { IDeviceLists, IToDeviceEvent } from "../sync-accumulator"; -import type { IEncryptedEventInfo } from "../crypto/api"; -import { MatrixEvent, MatrixEventEvent } from "../models/event"; -import { Room } from "../models/room"; -import { RoomMember } from "../models/room-member"; -import { BackupDecryptor, CryptoBackend, DecryptionError, OnSyncCompletedData } from "../common-crypto/CryptoBackend"; -import { logger, Logger } from "../logger"; -import { IHttpOpts, MatrixHttpApi, Method } from "../http-api"; -import { RoomEncryptor } from "./RoomEncryptor"; -import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor"; -import { KeyClaimManager } from "./KeyClaimManager"; -import { logDuration, MapWithDefault } from "../utils"; +import type { IEventDecryptionResult, IMegolmSessionData } from "../@types/crypto.ts"; +import { KnownMembership } from "../@types/membership.ts"; +import type { IDeviceLists, IToDeviceEvent } from "../sync-accumulator.ts"; +import type { IEncryptedEventInfo } from "../crypto/api.ts"; +import { MatrixEvent, MatrixEventEvent } from "../models/event.ts"; +import { Room } from "../models/room.ts"; +import { RoomMember } from "../models/room-member.ts"; +import { + BackupDecryptor, + CryptoBackend, + DecryptionError, + OnSyncCompletedData, +} from "../common-crypto/CryptoBackend.ts"; +import { logger, Logger } from "../logger.ts"; +import { IHttpOpts, MatrixHttpApi, Method } from "../http-api/index.ts"; +import { RoomEncryptor } from "./RoomEncryptor.ts"; +import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor.ts"; +import { KeyClaimManager } from "./KeyClaimManager.ts"; +import { logDuration, MapWithDefault } from "../utils.ts"; import { BackupTrustInfo, BootstrapCrossSigningOpts, @@ -53,29 +58,29 @@ import { OwnDeviceKeys, UserVerificationStatus, VerificationRequest, -} from "../crypto-api"; -import { deviceKeysToDeviceMap, rustDeviceToJsDevice } from "./device-converter"; -import { IDownloadKeyResult, IQueryKeysRequest } from "../client"; -import { Device, DeviceMap } from "../models/device"; -import { SECRET_STORAGE_ALGORITHM_V1_AES, ServerSideSecretStorage } from "../secret-storage"; -import { CrossSigningIdentity } from "./CrossSigningIdentity"; -import { secretStorageCanAccessSecrets, secretStorageContainsCrossSigningKeys } from "./secret-storage"; -import { keyFromPassphrase } from "../crypto/key_passphrase"; -import { encodeRecoveryKey } from "../crypto/recoverykey"; -import { isVerificationEvent, RustVerificationRequest, verificationMethodIdentifierToMethod } from "./verification"; -import { EventType, MsgType } from "../@types/event"; -import { CryptoEvent } from "../crypto"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { RustBackupCryptoEventMap, RustBackupCryptoEvents, RustBackupManager } from "./backup"; -import { TypedReEmitter } from "../ReEmitter"; -import { randomString } from "../randomstring"; -import { ClientStoppedError } from "../errors"; -import { ISignatures } from "../@types/signed"; -import { encodeBase64 } from "../base64"; -import { OutgoingRequestsManager } from "./OutgoingRequestsManager"; -import { PerSessionKeyBackupDownloader } from "./PerSessionKeyBackupDownloader"; -import { DehydratedDeviceManager } from "./DehydratedDeviceManager"; -import { VerificationMethod } from "../types"; +} from "../crypto-api/index.ts"; +import { deviceKeysToDeviceMap, rustDeviceToJsDevice } from "./device-converter.ts"; +import { IDownloadKeyResult, IQueryKeysRequest } from "../client.ts"; +import { Device, DeviceMap } from "../models/device.ts"; +import { SECRET_STORAGE_ALGORITHM_V1_AES, ServerSideSecretStorage } from "../secret-storage.ts"; +import { CrossSigningIdentity } from "./CrossSigningIdentity.ts"; +import { secretStorageCanAccessSecrets, secretStorageContainsCrossSigningKeys } from "./secret-storage.ts"; +import { keyFromPassphrase } from "../crypto/key_passphrase.ts"; +import { encodeRecoveryKey } from "../crypto/recoverykey.ts"; +import { isVerificationEvent, RustVerificationRequest, verificationMethodIdentifierToMethod } from "./verification.ts"; +import { EventType, MsgType } from "../@types/event.ts"; +import { CryptoEvent } from "../crypto/index.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { RustBackupCryptoEventMap, RustBackupCryptoEvents, RustBackupManager } from "./backup.ts"; +import { TypedReEmitter } from "../ReEmitter.ts"; +import { randomString } from "../randomstring.ts"; +import { ClientStoppedError } from "../errors.ts"; +import { ISignatures } from "../@types/signed.ts"; +import { encodeBase64 } from "../base64.ts"; +import { OutgoingRequestsManager } from "./OutgoingRequestsManager.ts"; +import { PerSessionKeyBackupDownloader } from "./PerSessionKeyBackupDownloader.ts"; +import { DehydratedDeviceManager } from "./DehydratedDeviceManager.ts"; +import { VerificationMethod } from "../types.ts"; const ALL_VERIFICATION_METHODS = [ VerificationMethod.Sas, diff --git a/src/rust-crypto/secret-storage.ts b/src/rust-crypto/secret-storage.ts index e35a63f3b29..951eae762df 100644 --- a/src/rust-crypto/secret-storage.ts +++ b/src/rust-crypto/secret-storage.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ServerSideSecretStorage } from "../secret-storage"; +import { ServerSideSecretStorage } from "../secret-storage.ts"; /** * Check that the private cross signing keys (master, self signing, user signing) are stored in the secret storage and encrypted with the default secret storage key. diff --git a/src/rust-crypto/verification.ts b/src/rust-crypto/verification.ts index ca599f310cc..284bcc61e64 100644 --- a/src/rust-crypto/verification.ts +++ b/src/rust-crypto/verification.ts @@ -28,14 +28,14 @@ import { Verifier, VerifierEvent, VerifierEventHandlerMap, -} from "../crypto-api/verification"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { OutgoingRequest, OutgoingRequestProcessor } from "./OutgoingRequestProcessor"; -import { TypedReEmitter } from "../ReEmitter"; -import { MatrixEvent } from "../models/event"; -import { EventType, MsgType } from "../@types/event"; -import { defer, IDeferred } from "../utils"; -import { VerificationMethod } from "../types"; +} from "../crypto-api/verification.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { OutgoingRequest, OutgoingRequestProcessor } from "./OutgoingRequestProcessor.ts"; +import { TypedReEmitter } from "../ReEmitter.ts"; +import { MatrixEvent } from "../models/event.ts"; +import { EventType, MsgType } from "../@types/event.ts"; +import { defer, IDeferred } from "../utils.ts"; +import { VerificationMethod } from "../types.ts"; /** * An incoming, or outgoing, request to verify a user or a device via cross-signing. diff --git a/src/scheduler.ts b/src/scheduler.ts index 6dfd212c72c..e854a67697a 100644 --- a/src/scheduler.ts +++ b/src/scheduler.ts @@ -18,12 +18,12 @@ limitations under the License. * This is an internal module which manages queuing, scheduling and retrying * of requests. */ -import { logger } from "./logger"; -import { MatrixEvent } from "./models/event"; -import { EventType } from "./@types/event"; -import { defer, IDeferred, removeElement } from "./utils"; -import { calculateRetryBackoff, MatrixError } from "./http-api"; -import { ISendEventResponse } from "./@types/requests"; +import { logger } from "./logger.ts"; +import { MatrixEvent } from "./models/event.ts"; +import { EventType } from "./@types/event.ts"; +import { defer, IDeferred, removeElement } from "./utils.ts"; +import { calculateRetryBackoff, MatrixError } from "./http-api/index.ts"; +import { ISendEventResponse } from "./@types/requests.ts"; const DEBUG = false; // set true to enable console logging. diff --git a/src/secret-storage.ts b/src/secret-storage.ts index 71ef30856f9..82dd4272e8a 100644 --- a/src/secret-storage.ts +++ b/src/secret-storage.ts @@ -20,12 +20,12 @@ limitations under the License. * @see https://spec.matrix.org/v1.6/client-server-api/#storage */ -import { TypedEventEmitter } from "./models/typed-event-emitter"; -import { ClientEvent, ClientEventHandlerMap } from "./client"; -import { MatrixEvent } from "./models/event"; -import { calculateKeyCheck, decryptAES, encryptAES, IEncryptedPayload } from "./crypto/aes"; -import { randomString } from "./randomstring"; -import { logger } from "./logger"; +import { TypedEventEmitter } from "./models/typed-event-emitter.ts"; +import { ClientEvent, ClientEventHandlerMap } from "./client.ts"; +import { MatrixEvent } from "./models/event.ts"; +import { calculateKeyCheck, decryptAES, encryptAES, IEncryptedPayload } from "./crypto/aes.ts"; +import { randomString } from "./randomstring.ts"; +import { logger } from "./logger.ts"; export const SECRET_STORAGE_ALGORITHM_V1_AES = "m.secret_storage.v1.aes-hmac-sha2"; diff --git a/src/serverCapabilities.ts b/src/serverCapabilities.ts index 845d2e9ac72..c23c9c72e92 100644 --- a/src/serverCapabilities.ts +++ b/src/serverCapabilities.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IHttpOpts, MatrixHttpApi, Method } from "./http-api"; -import { logger } from "./logger"; +import { IHttpOpts, MatrixHttpApi, Method } from "./http-api/index.ts"; +import { logger } from "./logger.ts"; // How often we update the server capabilities. // 6 hours - an arbitrary value, but they should change very infrequently. diff --git a/src/sliding-sync-sdk.ts b/src/sliding-sync-sdk.ts index 4a99cc4e72b..4c07984732f 100644 --- a/src/sliding-sync-sdk.ts +++ b/src/sliding-sync-sdk.ts @@ -14,12 +14,12 @@ See the License for the specific language governing permissions and limitations under the License. */ -import type { SyncCryptoCallbacks } from "./common-crypto/CryptoBackend"; -import { NotificationCountType, Room, RoomEvent } from "./models/room"; -import { logger } from "./logger"; -import { promiseMapSeries } from "./utils"; -import { EventTimeline } from "./models/event-timeline"; -import { ClientEvent, IStoredClientOpts, MatrixClient } from "./client"; +import type { SyncCryptoCallbacks } from "./common-crypto/CryptoBackend.ts"; +import { NotificationCountType, Room, RoomEvent } from "./models/room.ts"; +import { logger } from "./logger.ts"; +import { promiseMapSeries } from "./utils.ts"; +import { EventTimeline } from "./models/event-timeline.ts"; +import { ClientEvent, IStoredClientOpts, MatrixClient } from "./client.ts"; import { ISyncStateData, SyncState, @@ -28,11 +28,11 @@ import { defaultClientOpts, defaultSyncApiOpts, SetPresence, -} from "./sync"; -import { MatrixEvent } from "./models/event"; -import { Crypto } from "./crypto"; -import { IMinimalEvent, IRoomEvent, IStateEvent, IStrippedState, ISyncResponse } from "./sync-accumulator"; -import { MatrixError } from "./http-api"; +} from "./sync.ts"; +import { MatrixEvent } from "./models/event.ts"; +import { Crypto } from "./crypto/index.ts"; +import { IMinimalEvent, IRoomEvent, IStateEvent, IStrippedState, ISyncResponse } from "./sync-accumulator.ts"; +import { MatrixError } from "./http-api/index.ts"; import { Extension, ExtensionState, @@ -41,12 +41,12 @@ import { SlidingSync, SlidingSyncEvent, SlidingSyncState, -} from "./sliding-sync"; -import { EventType } from "./@types/event"; -import { IPushRules } from "./@types/PushRules"; -import { RoomStateEvent } from "./models/room-state"; -import { RoomMemberEvent } from "./models/room-member"; -import { KnownMembership } from "./@types/membership"; +} from "./sliding-sync.ts"; +import { EventType } from "./@types/event.ts"; +import { IPushRules } from "./@types/PushRules.ts"; +import { RoomStateEvent } from "./models/room-state.ts"; +import { RoomMemberEvent } from "./models/room-member.ts"; +import { KnownMembership } from "./@types/membership.ts"; // Number of consecutive failed syncs that will lead to a syncState of ERROR as opposed // to RECONNECTING. This is needed to inform the client of server issues when the diff --git a/src/sliding-sync.ts b/src/sliding-sync.ts index 12da3d70404..487c447a262 100644 --- a/src/sliding-sync.ts +++ b/src/sliding-sync.ts @@ -14,12 +14,12 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger } from "./logger"; -import { MatrixClient } from "./client"; -import { IRoomEvent, IStateEvent } from "./sync-accumulator"; -import { TypedEventEmitter } from "./models/typed-event-emitter"; -import { sleep, IDeferred, defer } from "./utils"; -import { HTTPError } from "./http-api"; +import { logger } from "./logger.ts"; +import { MatrixClient } from "./client.ts"; +import { IRoomEvent, IStateEvent } from "./sync-accumulator.ts"; +import { TypedEventEmitter } from "./models/typed-event-emitter.ts"; +import { sleep, IDeferred, defer } from "./utils.ts"; +import { HTTPError } from "./http-api/index.ts"; // /sync requests allow you to set a timeout= but the request may continue // beyond that and wedge forever, so we need to track how long we are willing diff --git a/src/store/index.ts b/src/store/index.ts index fbb66b006ec..64870753317 100644 --- a/src/store/index.ts +++ b/src/store/index.ts @@ -14,17 +14,17 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { EventType } from "../@types/event"; -import { Room } from "../models/room"; -import { User } from "../models/user"; -import { IEvent, MatrixEvent } from "../models/event"; -import { Filter } from "../filter"; -import { RoomSummary } from "../models/room-summary"; -import { IMinimalEvent, IRooms, ISyncResponse } from "../sync-accumulator"; -import { IStartClientOpts } from "../client"; -import { IStateEventWithRoomId } from "../@types/search"; -import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage"; -import { EventEmitterEvents } from "../models/typed-event-emitter"; +import { EventType } from "../@types/event.ts"; +import { Room } from "../models/room.ts"; +import { User } from "../models/user.ts"; +import { IEvent, MatrixEvent } from "../models/event.ts"; +import { Filter } from "../filter.ts"; +import { RoomSummary } from "../models/room-summary.ts"; +import { IMinimalEvent, IRooms, ISyncResponse } from "../sync-accumulator.ts"; +import { IStartClientOpts } from "../client.ts"; +import { IStateEventWithRoomId } from "../@types/search.ts"; +import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage.ts"; +import { EventEmitterEvents } from "../models/typed-event-emitter.ts"; export interface ISavedSync { nextBatch: string; diff --git a/src/store/indexeddb-backend.ts b/src/store/indexeddb-backend.ts index c93afb9e705..e5e1dff5bae 100644 --- a/src/store/indexeddb-backend.ts +++ b/src/store/indexeddb-backend.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ISavedSync } from "./index"; -import { IEvent, IStateEventWithRoomId, IStoredClientOpts, ISyncResponse } from "../matrix"; -import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage"; +import { ISavedSync } from "./index.ts"; +import { IEvent, IStateEventWithRoomId, IStoredClientOpts, ISyncResponse } from "../matrix.ts"; +import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage.ts"; export interface IIndexedDBBackend { connect(onClose?: () => void): Promise; diff --git a/src/store/indexeddb-local-backend.ts b/src/store/indexeddb-local-backend.ts index f9e51e4ff18..03673803864 100644 --- a/src/store/indexeddb-local-backend.ts +++ b/src/store/indexeddb-local-backend.ts @@ -14,14 +14,14 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { IMinimalEvent, ISyncData, ISyncResponse, SyncAccumulator } from "../sync-accumulator"; -import { deepCopy, promiseTry } from "../utils"; -import { exists as idbExists } from "../indexeddb-helpers"; -import { logger } from "../logger"; -import { IStateEventWithRoomId, IStoredClientOpts } from "../matrix"; -import { ISavedSync } from "./index"; -import { IIndexedDBBackend, UserTuple } from "./indexeddb-backend"; -import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage"; +import { IMinimalEvent, ISyncData, ISyncResponse, SyncAccumulator } from "../sync-accumulator.ts"; +import { deepCopy, promiseTry } from "../utils.ts"; +import { exists as idbExists } from "../indexeddb-helpers.ts"; +import { logger } from "../logger.ts"; +import { IStateEventWithRoomId, IStoredClientOpts } from "../matrix.ts"; +import { ISavedSync } from "./index.ts"; +import { IIndexedDBBackend, UserTuple } from "./indexeddb-backend.ts"; +import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage.ts"; type DbMigration = (db: IDBDatabase) => void; const DB_MIGRATIONS: DbMigration[] = [ diff --git a/src/store/indexeddb-remote-backend.ts b/src/store/indexeddb-remote-backend.ts index e3285afecf3..1bb9e19c8a1 100644 --- a/src/store/indexeddb-remote-backend.ts +++ b/src/store/indexeddb-remote-backend.ts @@ -14,13 +14,13 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { logger } from "../logger"; -import { defer, IDeferred } from "../utils"; -import { ISavedSync } from "./index"; -import { IStoredClientOpts } from "../client"; -import { IStateEventWithRoomId, ISyncResponse } from "../matrix"; -import { IIndexedDBBackend, UserTuple } from "./indexeddb-backend"; -import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage"; +import { logger } from "../logger.ts"; +import { defer, IDeferred } from "../utils.ts"; +import { ISavedSync } from "./index.ts"; +import { IStoredClientOpts } from "../client.ts"; +import { IStateEventWithRoomId, ISyncResponse } from "../matrix.ts"; +import { IIndexedDBBackend, UserTuple } from "./indexeddb-backend.ts"; +import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage.ts"; export class RemoteIndexedDBStoreBackend implements IIndexedDBBackend { private worker?: Worker; diff --git a/src/store/indexeddb-store-worker.ts b/src/store/indexeddb-store-worker.ts index 52a7fa6bf32..36c6ee67607 100644 --- a/src/store/indexeddb-store-worker.ts +++ b/src/store/indexeddb-store-worker.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { LocalIndexedDBStoreBackend } from "./indexeddb-local-backend"; -import { logger } from "../logger"; +import { LocalIndexedDBStoreBackend } from "./indexeddb-local-backend.ts"; +import { logger } from "../logger.ts"; interface ICmd { command: string; diff --git a/src/store/indexeddb.ts b/src/store/indexeddb.ts index 33132a17bde..67d219e2bb3 100644 --- a/src/store/indexeddb.ts +++ b/src/store/indexeddb.ts @@ -16,18 +16,18 @@ limitations under the License. /* eslint-disable @babel/no-invalid-this */ -import { MemoryStore, IOpts as IBaseOpts } from "./memory"; -import { LocalIndexedDBStoreBackend } from "./indexeddb-local-backend"; -import { RemoteIndexedDBStoreBackend } from "./indexeddb-remote-backend"; -import { IEvent, MatrixEvent } from "../models/event"; -import { logger } from "../logger"; -import { ISavedSync } from "./index"; -import { IIndexedDBBackend } from "./indexeddb-backend"; -import { ISyncResponse } from "../sync-accumulator"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { IStateEventWithRoomId } from "../@types/search"; -import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage"; -import { IStoredClientOpts } from "../client"; +import { MemoryStore, IOpts as IBaseOpts } from "./memory.ts"; +import { LocalIndexedDBStoreBackend } from "./indexeddb-local-backend.ts"; +import { RemoteIndexedDBStoreBackend } from "./indexeddb-remote-backend.ts"; +import { IEvent, MatrixEvent } from "../models/event.ts"; +import { logger } from "../logger.ts"; +import { ISavedSync } from "./index.ts"; +import { IIndexedDBBackend } from "./indexeddb-backend.ts"; +import { ISyncResponse } from "../sync-accumulator.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { IStateEventWithRoomId } from "../@types/search.ts"; +import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage.ts"; +import { IStoredClientOpts } from "../client.ts"; /** * This is an internal module. See {@link IndexedDBStore} for the public class. diff --git a/src/store/local-storage-events-emitter.ts b/src/store/local-storage-events-emitter.ts index adb70cb541d..03900a70eda 100644 --- a/src/store/local-storage-events-emitter.ts +++ b/src/store/local-storage-events-emitter.ts @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { TypedEventEmitter } from "../models/typed-event-emitter"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; export enum LocalStorageErrors { Global = "Global", diff --git a/src/store/memory.ts b/src/store/memory.ts index 7251be1c6b5..3021c23ebdb 100644 --- a/src/store/memory.ts +++ b/src/store/memory.ts @@ -18,21 +18,21 @@ limitations under the License. * This is an internal module. See {@link MemoryStore} for the public class. */ -import { EventType } from "../@types/event"; -import { Room } from "../models/room"; -import { User } from "../models/user"; -import { IEvent, MatrixEvent } from "../models/event"; -import { RoomState, RoomStateEvent } from "../models/room-state"; -import { RoomMember } from "../models/room-member"; -import { Filter } from "../filter"; -import { ISavedSync, IStore, UserCreator } from "./index"; -import { RoomSummary } from "../models/room-summary"; -import { ISyncResponse } from "../sync-accumulator"; -import { IStateEventWithRoomId } from "../@types/search"; -import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage"; -import { IStoredClientOpts } from "../client"; -import { MapWithDefault } from "../utils"; -import { KnownMembership } from "../@types/membership"; +import { EventType } from "../@types/event.ts"; +import { Room } from "../models/room.ts"; +import { User } from "../models/user.ts"; +import { IEvent, MatrixEvent } from "../models/event.ts"; +import { RoomState, RoomStateEvent } from "../models/room-state.ts"; +import { RoomMember } from "../models/room-member.ts"; +import { Filter } from "../filter.ts"; +import { ISavedSync, IStore, UserCreator } from "./index.ts"; +import { RoomSummary } from "../models/room-summary.ts"; +import { ISyncResponse } from "../sync-accumulator.ts"; +import { IStateEventWithRoomId } from "../@types/search.ts"; +import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage.ts"; +import { IStoredClientOpts } from "../client.ts"; +import { MapWithDefault } from "../utils.ts"; +import { KnownMembership } from "../@types/membership.ts"; function isValidFilterId(filterId?: string | number | null): boolean { const isValidStr = diff --git a/src/store/stub.ts b/src/store/stub.ts index c320d78b153..72b0acff098 100644 --- a/src/store/stub.ts +++ b/src/store/stub.ts @@ -18,17 +18,17 @@ limitations under the License. * This is an internal module. */ -import { EventType } from "../@types/event"; -import { Room } from "../models/room"; -import { User } from "../models/user"; -import { IEvent, MatrixEvent } from "../models/event"; -import { Filter } from "../filter"; -import { ISavedSync, IStore, UserCreator } from "./index"; -import { RoomSummary } from "../models/room-summary"; -import { ISyncResponse } from "../sync-accumulator"; -import { IStateEventWithRoomId } from "../@types/search"; -import { IndexedToDeviceBatch, ToDeviceBatch } from "../models/ToDeviceMessage"; -import { IStoredClientOpts } from "../client"; +import { EventType } from "../@types/event.ts"; +import { Room } from "../models/room.ts"; +import { User } from "../models/user.ts"; +import { IEvent, MatrixEvent } from "../models/event.ts"; +import { Filter } from "../filter.ts"; +import { ISavedSync, IStore, UserCreator } from "./index.ts"; +import { RoomSummary } from "../models/room-summary.ts"; +import { ISyncResponse } from "../sync-accumulator.ts"; +import { IStateEventWithRoomId } from "../@types/search.ts"; +import { IndexedToDeviceBatch, ToDeviceBatch } from "../models/ToDeviceMessage.ts"; +import { IStoredClientOpts } from "../client.ts"; /** * Construct a stub store. This does no-ops on most store methods. diff --git a/src/sync-accumulator.ts b/src/sync-accumulator.ts index 0f901a27e86..d66a497f822 100644 --- a/src/sync-accumulator.ts +++ b/src/sync-accumulator.ts @@ -18,13 +18,13 @@ limitations under the License. * This is an internal module. See {@link SyncAccumulator} for the public class. */ -import { logger } from "./logger"; -import { deepCopy } from "./utils"; -import { IContent, IUnsigned } from "./models/event"; -import { IRoomSummary } from "./models/room-summary"; -import { EventType } from "./@types/event"; -import { UNREAD_THREAD_NOTIFICATIONS } from "./@types/sync"; -import { ReceiptAccumulator } from "./receipt-accumulator"; +import { logger } from "./logger.ts"; +import { deepCopy } from "./utils.ts"; +import { IContent, IUnsigned } from "./models/event.ts"; +import { IRoomSummary } from "./models/room-summary.ts"; +import { EventType } from "./@types/event.ts"; +import { UNREAD_THREAD_NOTIFICATIONS } from "./@types/sync.ts"; +import { ReceiptAccumulator } from "./receipt-accumulator.ts"; interface IOpts { /** diff --git a/src/sync.ts b/src/sync.ts index df7aeba69bb..47be1ebc89a 100644 --- a/src/sync.ts +++ b/src/sync.ts @@ -25,14 +25,14 @@ limitations under the License. import { Optional } from "matrix-events-sdk"; -import type { SyncCryptoCallbacks } from "./common-crypto/CryptoBackend"; -import { User } from "./models/user"; -import { NotificationCountType, Room, RoomEvent } from "./models/room"; -import { deepCopy, defer, IDeferred, noUnsafeEventProps, promiseMapSeries, unsafeProp } from "./utils"; -import { Filter } from "./filter"; -import { EventTimeline } from "./models/event-timeline"; -import { logger } from "./logger"; -import { ClientEvent, IStoredClientOpts, MatrixClient, PendingEventOrdering, ResetTimelineCallback } from "./client"; +import type { SyncCryptoCallbacks } from "./common-crypto/CryptoBackend.ts"; +import { User } from "./models/user.ts"; +import { NotificationCountType, Room, RoomEvent } from "./models/room.ts"; +import { deepCopy, defer, IDeferred, noUnsafeEventProps, promiseMapSeries, unsafeProp } from "./utils.ts"; +import { Filter } from "./filter.ts"; +import { EventTimeline } from "./models/event-timeline.ts"; +import { logger } from "./logger.ts"; +import { ClientEvent, IStoredClientOpts, MatrixClient, PendingEventOrdering, ResetTimelineCallback } from "./client.ts"; import { IEphemeral, IInvitedRoom, @@ -47,20 +47,20 @@ import { ISyncResponse, ITimeline, IToDeviceEvent, -} from "./sync-accumulator"; -import { MatrixEvent } from "./models/event"; -import { MatrixError, Method } from "./http-api"; -import { ISavedSync } from "./store"; -import { EventType } from "./@types/event"; -import { IPushRules } from "./@types/PushRules"; -import { RoomStateEvent, IMarkerFoundOptions } from "./models/room-state"; -import { RoomMemberEvent } from "./models/room-member"; -import { BeaconEvent } from "./models/beacon"; -import { IEventsResponse } from "./@types/requests"; -import { UNREAD_THREAD_NOTIFICATIONS } from "./@types/sync"; -import { Feature, ServerSupport } from "./feature"; -import { Crypto } from "./crypto"; -import { KnownMembership } from "./@types/membership"; +} from "./sync-accumulator.ts"; +import { MatrixEvent } from "./models/event.ts"; +import { MatrixError, Method } from "./http-api/index.ts"; +import { ISavedSync } from "./store/index.ts"; +import { EventType } from "./@types/event.ts"; +import { IPushRules } from "./@types/PushRules.ts"; +import { RoomStateEvent, IMarkerFoundOptions } from "./models/room-state.ts"; +import { RoomMemberEvent } from "./models/room-member.ts"; +import { BeaconEvent } from "./models/beacon.ts"; +import { IEventsResponse } from "./@types/requests.ts"; +import { UNREAD_THREAD_NOTIFICATIONS } from "./@types/sync.ts"; +import { Feature, ServerSupport } from "./feature.ts"; +import { Crypto } from "./crypto/index.ts"; +import { KnownMembership } from "./@types/membership.ts"; const DEBUG = true; diff --git a/src/testing.ts b/src/testing.ts index cce36494884..ba609ad0984 100644 --- a/src/testing.ts +++ b/src/testing.ts @@ -22,12 +22,12 @@ limitations under the License. * @packageDocumentation */ -import { IContent, IEvent, IUnsigned, MatrixEvent } from "./models/event"; -import { RoomMember } from "./models/room-member"; -import { EventType } from "./@types/event"; -import { DecryptionError } from "./crypto/algorithms"; -import { DecryptionFailureCode } from "./crypto-api"; -import { EventDecryptionResult } from "./common-crypto/CryptoBackend"; +import { IContent, IEvent, IUnsigned, MatrixEvent } from "./models/event.ts"; +import { RoomMember } from "./models/room-member.ts"; +import { EventType } from "./@types/event.ts"; +import { DecryptionError } from "./crypto/algorithms/index.ts"; +import { DecryptionFailureCode } from "./crypto-api/index.ts"; +import { EventDecryptionResult } from "./common-crypto/CryptoBackend.ts"; /** * Create a {@link MatrixEvent}. diff --git a/src/thread-utils.ts b/src/thread-utils.ts index 51412592f32..3362c006052 100644 --- a/src/thread-utils.ts +++ b/src/thread-utils.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { THREAD_RELATION_TYPE } from "./models/thread"; -import { IEvent } from "./models/event"; +import { THREAD_RELATION_TYPE } from "./models/thread.ts"; +import { IEvent } from "./models/event.ts"; /** * Returns a filter function for the /relations endpoint to filter out relations directly diff --git a/src/timeline-window.ts b/src/timeline-window.ts index 793b68e7dd3..7e961beef03 100644 --- a/src/timeline-window.ts +++ b/src/timeline-window.ts @@ -16,12 +16,12 @@ limitations under the License. import { Optional } from "matrix-events-sdk"; -import { Direction, EventTimeline } from "./models/event-timeline"; -import { logger } from "./logger"; -import { MatrixClient } from "./client"; -import { EventTimelineSet } from "./models/event-timeline-set"; -import { MatrixEvent } from "./models/event"; -import { Room, RoomEvent } from "./models/room"; +import { Direction, EventTimeline } from "./models/event-timeline.ts"; +import { logger } from "./logger.ts"; +import { MatrixClient } from "./client.ts"; +import { EventTimelineSet } from "./models/event-timeline-set.ts"; +import { MatrixEvent } from "./models/event.ts"; +import { Room, RoomEvent } from "./models/room.ts"; /** * @internal diff --git a/src/types.ts b/src/types.ts index c1469b17062..24f1620427c 100644 --- a/src/types.ts +++ b/src/types.ts @@ -21,11 +21,11 @@ limitations under the License. * Remember to only export *public* types from this file. */ -export type * from "./@types/media"; -export * from "./@types/membership"; -export type * from "./@types/event"; -export type * from "./@types/events"; -export type * from "./@types/state_events"; +export type * from "./@types/media.ts"; +export * from "./@types/membership.ts"; +export type * from "./@types/event.ts"; +export type * from "./@types/events.ts"; +export type * from "./@types/state_events.ts"; /** The different methods for device and user verification */ export enum VerificationMethod { diff --git a/src/utils.ts b/src/utils.ts index 0451307d1d1..ce7c5016b14 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -22,10 +22,10 @@ import unhomoglyph from "unhomoglyph"; import promiseRetry from "p-retry"; import { Optional } from "matrix-events-sdk"; -import { IEvent, MatrixEvent } from "./models/event"; -import { M_TIMESTAMP } from "./@types/location"; -import { ReceiptType } from "./@types/read_receipts"; -import { BaseLogger } from "./logger"; +import { IEvent, MatrixEvent } from "./models/event.ts"; +import { M_TIMESTAMP } from "./@types/location.ts"; +import { ReceiptType } from "./@types/read_receipts.ts"; +import { BaseLogger } from "./logger.ts"; const interns = new Map(); diff --git a/src/webrtc/call.ts b/src/webrtc/call.ts index 3f5c61a9e23..6a8a15e0612 100644 --- a/src/webrtc/call.ts +++ b/src/webrtc/call.ts @@ -24,12 +24,12 @@ limitations under the License. import { v4 as uuidv4 } from "uuid"; import { parse as parseSdp, write as writeSdp } from "sdp-transform"; -import { logger } from "../logger"; -import { checkObjectHasKeys, isNullOrUndefined, recursivelyAssign } from "../utils"; -import { MatrixEvent } from "../models/event"; -import { EventType, TimelineEvents, ToDeviceMessageId } from "../@types/event"; -import { RoomMember } from "../models/room-member"; -import { randomString } from "../randomstring"; +import { logger } from "../logger.ts"; +import { checkObjectHasKeys, isNullOrUndefined, recursivelyAssign } from "../utils.ts"; +import { MatrixEvent } from "../models/event.ts"; +import { EventType, TimelineEvents, ToDeviceMessageId } from "../@types/event.ts"; +import { RoomMember } from "../models/room-member.ts"; +import { randomString } from "../randomstring.ts"; import { MCallReplacesEvent, MCallAnswer, @@ -44,15 +44,15 @@ import { MCallCandidates, MCallBase, MCallHangupReject, -} from "./callEventTypes"; -import { CallFeed } from "./callFeed"; -import { MatrixClient } from "../client"; -import { EventEmitterEvents, TypedEventEmitter } from "../models/typed-event-emitter"; -import { DeviceInfo } from "../crypto/deviceinfo"; -import { GroupCallUnknownDeviceError } from "./groupCall"; -import { IScreensharingOpts } from "./mediaHandler"; -import { MatrixError } from "../http-api"; -import { GroupCallStats } from "./stats/groupCallStats"; +} from "./callEventTypes.ts"; +import { CallFeed } from "./callFeed.ts"; +import { MatrixClient } from "../client.ts"; +import { EventEmitterEvents, TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { DeviceInfo } from "../crypto/deviceinfo.ts"; +import { GroupCallUnknownDeviceError } from "./groupCall.ts"; +import { IScreensharingOpts } from "./mediaHandler.ts"; +import { MatrixError } from "../http-api/index.ts"; +import { GroupCallStats } from "./stats/groupCallStats.ts"; interface CallOpts { // The room ID for this call. diff --git a/src/webrtc/callEventHandler.ts b/src/webrtc/callEventHandler.ts index 4ee183a7f38..c9cde3bd363 100644 --- a/src/webrtc/callEventHandler.ts +++ b/src/webrtc/callEventHandler.ts @@ -14,14 +14,14 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MatrixEvent } from "../models/event"; -import { logger } from "../logger"; -import { CallDirection, CallError, CallErrorCode, CallState, createNewMatrixCall, MatrixCall } from "./call"; -import { EventType } from "../@types/event"; -import { ClientEvent, MatrixClient } from "../client"; -import { MCallAnswer, MCallHangupReject } from "./callEventTypes"; -import { GroupCall, GroupCallErrorCode, GroupCallEvent, GroupCallUnknownDeviceError } from "./groupCall"; -import { RoomEvent } from "../models/room"; +import { MatrixEvent } from "../models/event.ts"; +import { logger } from "../logger.ts"; +import { CallDirection, CallError, CallErrorCode, CallState, createNewMatrixCall, MatrixCall } from "./call.ts"; +import { EventType } from "../@types/event.ts"; +import { ClientEvent, MatrixClient } from "../client.ts"; +import { MCallAnswer, MCallHangupReject } from "./callEventTypes.ts"; +import { GroupCall, GroupCallErrorCode, GroupCallEvent, GroupCallUnknownDeviceError } from "./groupCall.ts"; +import { RoomEvent } from "../models/room.ts"; // Don't ring unless we'd be ringing for at least 3 seconds: the user needs some // time to press the 'accept' button diff --git a/src/webrtc/callEventTypes.ts b/src/webrtc/callEventTypes.ts index 0be2b2d4d8a..c54e3ead8e0 100644 --- a/src/webrtc/callEventTypes.ts +++ b/src/webrtc/callEventTypes.ts @@ -1,7 +1,7 @@ // allow non-camelcase as these are events type that go onto the wire /* eslint-disable camelcase */ -import { CallErrorCode } from "./call"; +import { CallErrorCode } from "./call.ts"; // TODO: Change to "sdp_stream_metadata" when MSC3077 is merged export const SDPStreamMetadataKey = "org.matrix.msc3077.sdp_stream_metadata"; diff --git a/src/webrtc/callFeed.ts b/src/webrtc/callFeed.ts index a9cf7a7a973..9ae3c344162 100644 --- a/src/webrtc/callFeed.ts +++ b/src/webrtc/callFeed.ts @@ -14,13 +14,13 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { SDPStreamMetadataPurpose } from "./callEventTypes"; -import { acquireContext, releaseContext } from "./audioContext"; -import { MatrixClient } from "../client"; -import { RoomMember } from "../models/room-member"; -import { logger } from "../logger"; -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { CallEvent, CallState, MatrixCall } from "./call"; +import { SDPStreamMetadataPurpose } from "./callEventTypes.ts"; +import { acquireContext, releaseContext } from "./audioContext.ts"; +import { MatrixClient } from "../client.ts"; +import { RoomMember } from "../models/room-member.ts"; +import { logger } from "../logger.ts"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { CallEvent, CallState, MatrixCall } from "./call.ts"; const POLLING_INTERVAL = 200; // ms export const SPEAKING_THRESHOLD = -60; // dB diff --git a/src/webrtc/groupCall.ts b/src/webrtc/groupCall.ts index 816a4a3667e..5fd6985cc1d 100644 --- a/src/webrtc/groupCall.ts +++ b/src/webrtc/groupCall.ts @@ -1,6 +1,6 @@ -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { CallFeed, SPEAKING_THRESHOLD } from "./callFeed"; -import { MatrixClient, IMyDevice } from "../client"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { CallFeed, SPEAKING_THRESHOLD } from "./callFeed.ts"; +import { MatrixClient, IMyDevice } from "../client.ts"; import { CallErrorCode, CallEvent, @@ -11,31 +11,31 @@ import { setTracksEnabled, createNewMatrixCall, CallError, -} from "./call"; -import { RoomMember } from "../models/room-member"; -import { Room } from "../models/room"; -import { RoomStateEvent } from "../models/room-state"; -import { logger } from "../logger"; -import { ReEmitter } from "../ReEmitter"; -import { SDPStreamMetadataPurpose } from "./callEventTypes"; -import { MatrixEvent } from "../models/event"; -import { EventType } from "../@types/event"; -import { CallEventHandlerEvent } from "./callEventHandler"; -import { GroupCallEventHandlerEvent } from "./groupCallEventHandler"; -import { IScreensharingOpts } from "./mediaHandler"; -import { mapsEqual } from "../utils"; -import { GroupCallStats } from "./stats/groupCallStats"; +} from "./call.ts"; +import { RoomMember } from "../models/room-member.ts"; +import { Room } from "../models/room.ts"; +import { RoomStateEvent } from "../models/room-state.ts"; +import { logger } from "../logger.ts"; +import { ReEmitter } from "../ReEmitter.ts"; +import { SDPStreamMetadataPurpose } from "./callEventTypes.ts"; +import { MatrixEvent } from "../models/event.ts"; +import { EventType } from "../@types/event.ts"; +import { CallEventHandlerEvent } from "./callEventHandler.ts"; +import { GroupCallEventHandlerEvent } from "./groupCallEventHandler.ts"; +import { IScreensharingOpts } from "./mediaHandler.ts"; +import { mapsEqual } from "../utils.ts"; +import { GroupCallStats } from "./stats/groupCallStats.ts"; import { ByteSentStatsReport, CallFeedReport, ConnectionStatsReport, StatsReport, SummaryStatsReport, -} from "./stats/statsReport"; -import { SummaryStatsReportGatherer } from "./stats/summaryStatsReportGatherer"; -import { CallFeedStatsReporter } from "./stats/callFeedStatsReporter"; -import { KnownMembership } from "../@types/membership"; -import { CallMembershipData } from "../matrixrtc/CallMembership"; +} from "./stats/statsReport.ts"; +import { SummaryStatsReportGatherer } from "./stats/summaryStatsReportGatherer.ts"; +import { CallFeedStatsReporter } from "./stats/callFeedStatsReporter.ts"; +import { KnownMembership } from "../@types/membership.ts"; +import { CallMembershipData } from "../matrixrtc/CallMembership.ts"; export enum GroupCallIntent { Ring = "m.ring", diff --git a/src/webrtc/groupCallEventHandler.ts b/src/webrtc/groupCallEventHandler.ts index 2db54f66b49..d0ce6af057c 100644 --- a/src/webrtc/groupCallEventHandler.ts +++ b/src/webrtc/groupCallEventHandler.ts @@ -14,15 +14,15 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { MatrixEvent } from "../models/event"; -import { MatrixClient, ClientEvent } from "../client"; -import { GroupCall, GroupCallIntent, GroupCallType, IGroupCallDataChannelOptions } from "./groupCall"; -import { Room } from "../models/room"; -import { RoomState, RoomStateEvent } from "../models/room-state"; -import { RoomMember } from "../models/room-member"; -import { logger } from "../logger"; -import { EventType } from "../@types/event"; -import { SyncState } from "../sync"; +import { MatrixEvent } from "../models/event.ts"; +import { MatrixClient, ClientEvent } from "../client.ts"; +import { GroupCall, GroupCallIntent, GroupCallType, IGroupCallDataChannelOptions } from "./groupCall.ts"; +import { Room } from "../models/room.ts"; +import { RoomState, RoomStateEvent } from "../models/room-state.ts"; +import { RoomMember } from "../models/room-member.ts"; +import { logger } from "../logger.ts"; +import { EventType } from "../@types/event.ts"; +import { SyncState } from "../sync.ts"; export enum GroupCallEventHandlerEvent { Incoming = "GroupCall.incoming", diff --git a/src/webrtc/mediaHandler.ts b/src/webrtc/mediaHandler.ts index b17cc2852cc..7efa786d251 100644 --- a/src/webrtc/mediaHandler.ts +++ b/src/webrtc/mediaHandler.ts @@ -17,10 +17,10 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { TypedEventEmitter } from "../models/typed-event-emitter"; -import { GroupCallType, GroupCallState } from "../webrtc/groupCall"; -import { logger } from "../logger"; -import { MatrixClient } from "../client"; +import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { GroupCallType, GroupCallState } from "../webrtc/groupCall.ts"; +import { logger } from "../logger.ts"; +import { MatrixClient } from "../client.ts"; export enum MediaHandlerEvent { LocalStreamsChanged = "local_streams_changed", diff --git a/src/webrtc/stats/callFeedStatsReporter.ts b/src/webrtc/stats/callFeedStatsReporter.ts index 2b2c092d73d..d219f717277 100644 --- a/src/webrtc/stats/callFeedStatsReporter.ts +++ b/src/webrtc/stats/callFeedStatsReporter.ts @@ -13,8 +13,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -import { CallFeedReport, CallFeedStats, TrackStats, TransceiverStats } from "./statsReport"; -import { CallFeed } from "../callFeed"; +import { CallFeedReport, CallFeedStats, TrackStats, TransceiverStats } from "./statsReport.ts"; +import { CallFeed } from "../callFeed.ts"; export class CallFeedStatsReporter { public static buildCallFeedReport(callId: string, opponentMemberId: string, pc: RTCPeerConnection): CallFeedReport { diff --git a/src/webrtc/stats/callStatsReportGatherer.ts b/src/webrtc/stats/callStatsReportGatherer.ts index cc52156f0d7..202d654e0c5 100644 --- a/src/webrtc/stats/callStatsReportGatherer.ts +++ b/src/webrtc/stats/callStatsReportGatherer.ts @@ -14,20 +14,20 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ConnectionStats } from "./connectionStats"; -import { StatsReportEmitter } from "./statsReportEmitter"; -import { ByteSend, ByteSentStatsReport, TrackID } from "./statsReport"; -import { ConnectionStatsBuilder } from "./connectionStatsBuilder"; -import { TransportStatsBuilder } from "./transportStatsBuilder"; -import { MediaSsrcHandler } from "./media/mediaSsrcHandler"; -import { MediaTrackHandler } from "./media/mediaTrackHandler"; -import { MediaTrackStatsHandler } from "./media/mediaTrackStatsHandler"; -import { TrackStatsBuilder } from "./trackStatsBuilder"; -import { ConnectionStatsReportBuilder } from "./connectionStatsReportBuilder"; -import { ValueFormatter } from "./valueFormatter"; -import { CallStatsReportSummary } from "./callStatsReportSummary"; -import { logger } from "../../logger"; -import { CallFeedStatsReporter } from "./callFeedStatsReporter"; +import { ConnectionStats } from "./connectionStats.ts"; +import { StatsReportEmitter } from "./statsReportEmitter.ts"; +import { ByteSend, ByteSentStatsReport, TrackID } from "./statsReport.ts"; +import { ConnectionStatsBuilder } from "./connectionStatsBuilder.ts"; +import { TransportStatsBuilder } from "./transportStatsBuilder.ts"; +import { MediaSsrcHandler } from "./media/mediaSsrcHandler.ts"; +import { MediaTrackHandler } from "./media/mediaTrackHandler.ts"; +import { MediaTrackStatsHandler } from "./media/mediaTrackStatsHandler.ts"; +import { TrackStatsBuilder } from "./trackStatsBuilder.ts"; +import { ConnectionStatsReportBuilder } from "./connectionStatsReportBuilder.ts"; +import { ValueFormatter } from "./valueFormatter.ts"; +import { CallStatsReportSummary } from "./callStatsReportSummary.ts"; +import { logger } from "../../logger.ts"; +import { CallFeedStatsReporter } from "./callFeedStatsReporter.ts"; export class CallStatsReportGatherer { private isActive = true; diff --git a/src/webrtc/stats/connectionStats.ts b/src/webrtc/stats/connectionStats.ts index ef1c36797ea..2a998c0931d 100644 --- a/src/webrtc/stats/connectionStats.ts +++ b/src/webrtc/stats/connectionStats.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { TransportStats } from "./transportStats"; -import { Bitrate } from "./media/mediaTrackStats"; +import { TransportStats } from "./transportStats.ts"; +import { Bitrate } from "./media/mediaTrackStats.ts"; export interface ConnectionStatsBandwidth { /** diff --git a/src/webrtc/stats/connectionStatsBuilder.ts b/src/webrtc/stats/connectionStatsBuilder.ts index f954fed49f7..154a648d36f 100644 --- a/src/webrtc/stats/connectionStatsBuilder.ts +++ b/src/webrtc/stats/connectionStatsBuilder.ts @@ -13,7 +13,7 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -import { Bitrate } from "./media/mediaTrackStats"; +import { Bitrate } from "./media/mediaTrackStats.ts"; export class ConnectionStatsBuilder { public static buildBandwidthReport(now: RTCIceCandidatePairStats): Bitrate { diff --git a/src/webrtc/stats/connectionStatsReportBuilder.ts b/src/webrtc/stats/connectionStatsReportBuilder.ts index 5ed99d59bae..0be778f1ca5 100644 --- a/src/webrtc/stats/connectionStatsReportBuilder.ts +++ b/src/webrtc/stats/connectionStatsReportBuilder.ts @@ -13,8 +13,15 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -import { AudioConcealment, CodecMap, ConnectionStatsReport, FramerateMap, ResolutionMap, TrackID } from "./statsReport"; -import { MediaTrackStats, Resolution } from "./media/mediaTrackStats"; +import { + AudioConcealment, + CodecMap, + ConnectionStatsReport, + FramerateMap, + ResolutionMap, + TrackID, +} from "./statsReport.ts"; +import { MediaTrackStats, Resolution } from "./media/mediaTrackStats.ts"; export class ConnectionStatsReportBuilder { public static build(stats: Map): ConnectionStatsReport { diff --git a/src/webrtc/stats/groupCallStats.ts b/src/webrtc/stats/groupCallStats.ts index 1c976a9dd91..ac9283e1cc1 100644 --- a/src/webrtc/stats/groupCallStats.ts +++ b/src/webrtc/stats/groupCallStats.ts @@ -13,11 +13,11 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -import { CallStatsReportGatherer } from "./callStatsReportGatherer"; -import { StatsReportEmitter } from "./statsReportEmitter"; -import { CallStatsReportSummary } from "./callStatsReportSummary"; -import { SummaryStatsReportGatherer } from "./summaryStatsReportGatherer"; -import { logger } from "../../logger"; +import { CallStatsReportGatherer } from "./callStatsReportGatherer.ts"; +import { StatsReportEmitter } from "./statsReportEmitter.ts"; +import { CallStatsReportSummary } from "./callStatsReportSummary.ts"; +import { SummaryStatsReportGatherer } from "./summaryStatsReportGatherer.ts"; +import { logger } from "../../logger.ts"; export class GroupCallStats { private timer: undefined | ReturnType; diff --git a/src/webrtc/stats/media/mediaTrackStats.ts b/src/webrtc/stats/media/mediaTrackStats.ts index 7835ceb8a65..e03fae9b3ac 100644 --- a/src/webrtc/stats/media/mediaTrackStats.ts +++ b/src/webrtc/stats/media/mediaTrackStats.ts @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { AudioConcealment } from "../statsReport"; -import { TrackId } from "./mediaTrackHandler"; +import { AudioConcealment } from "../statsReport.ts"; +import { TrackId } from "./mediaTrackHandler.ts"; export interface PacketLoss { packetsTotal: number; diff --git a/src/webrtc/stats/media/mediaTrackStatsHandler.ts b/src/webrtc/stats/media/mediaTrackStatsHandler.ts index 4841c90f152..d3bd0ec4911 100644 --- a/src/webrtc/stats/media/mediaTrackStatsHandler.ts +++ b/src/webrtc/stats/media/mediaTrackStatsHandler.ts @@ -13,10 +13,10 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -import { TrackID } from "../statsReport"; -import { MediaTrackStats } from "./mediaTrackStats"; -import { MediaTrackHandler, TrackId } from "./mediaTrackHandler"; -import { MediaSsrcHandler } from "./mediaSsrcHandler"; +import { TrackID } from "../statsReport.ts"; +import { MediaTrackStats } from "./mediaTrackStats.ts"; +import { MediaTrackHandler, TrackId } from "./mediaTrackHandler.ts"; +import { MediaSsrcHandler } from "./mediaSsrcHandler.ts"; export class MediaTrackStatsHandler { private readonly track2stats = new Map(); diff --git a/src/webrtc/stats/statsReport.ts b/src/webrtc/stats/statsReport.ts index 9f24267e1fe..2fe13c7e6d6 100644 --- a/src/webrtc/stats/statsReport.ts +++ b/src/webrtc/stats/statsReport.ts @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { ConnectionStatsBandwidth, ConnectionStatsBitrate, PacketLoss } from "./connectionStats"; -import { TransportStats } from "./transportStats"; -import { Resolution } from "./media/mediaTrackStats"; +import { ConnectionStatsBandwidth, ConnectionStatsBitrate, PacketLoss } from "./connectionStats.ts"; +import { TransportStats } from "./transportStats.ts"; +import { Resolution } from "./media/mediaTrackStats.ts"; export enum StatsReport { CONNECTION_STATS = "StatsReport.connection_stats", diff --git a/src/webrtc/stats/statsReportEmitter.ts b/src/webrtc/stats/statsReportEmitter.ts index 1b8834326af..aef92a830fb 100644 --- a/src/webrtc/stats/statsReportEmitter.ts +++ b/src/webrtc/stats/statsReportEmitter.ts @@ -14,14 +14,14 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { TypedEventEmitter } from "../../models/typed-event-emitter"; +import { TypedEventEmitter } from "../../models/typed-event-emitter.ts"; import { ByteSentStatsReport, CallFeedReport, ConnectionStatsReport, StatsReport, SummaryStatsReport, -} from "./statsReport"; +} from "./statsReport.ts"; export type StatsReportHandlerMap = { [StatsReport.BYTE_SENT_STATS]: (report: ByteSentStatsReport) => void; diff --git a/src/webrtc/stats/summaryStatsReportGatherer.ts b/src/webrtc/stats/summaryStatsReportGatherer.ts index b0227670d98..09e381d48da 100644 --- a/src/webrtc/stats/summaryStatsReportGatherer.ts +++ b/src/webrtc/stats/summaryStatsReportGatherer.ts @@ -10,11 +10,11 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -import { StatsReportEmitter } from "./statsReportEmitter"; -import { CallStatsReportSummary } from "./callStatsReportSummary"; -import { SummaryStatsReport } from "./statsReport"; -import { ParticipantState } from "../groupCall"; -import { RoomMember } from "../../matrix"; +import { StatsReportEmitter } from "./statsReportEmitter.ts"; +import { CallStatsReportSummary } from "./callStatsReportSummary.ts"; +import { SummaryStatsReport } from "./statsReport.ts"; +import { ParticipantState } from "../groupCall.ts"; +import { RoomMember } from "../../matrix.ts"; interface CallStatsReportSummaryCounter { receivedAudio: number; diff --git a/src/webrtc/stats/trackStatsBuilder.ts b/src/webrtc/stats/trackStatsBuilder.ts index c670fddbb47..f6ef729872d 100644 --- a/src/webrtc/stats/trackStatsBuilder.ts +++ b/src/webrtc/stats/trackStatsBuilder.ts @@ -1,6 +1,6 @@ -import { MediaTrackStats } from "./media/mediaTrackStats"; -import { ValueFormatter } from "./valueFormatter"; -import { TrackSummary } from "./callStatsReportSummary"; +import { MediaTrackStats } from "./media/mediaTrackStats.ts"; +import { ValueFormatter } from "./valueFormatter.ts"; +import { TrackSummary } from "./callStatsReportSummary.ts"; export class TrackStatsBuilder { public static buildFramerateResolution(trackStats: MediaTrackStats, now: any): void { diff --git a/src/webrtc/stats/transportStatsBuilder.ts b/src/webrtc/stats/transportStatsBuilder.ts index 12ed7b0cbe4..c81ca4b5ab2 100644 --- a/src/webrtc/stats/transportStatsBuilder.ts +++ b/src/webrtc/stats/transportStatsBuilder.ts @@ -1,4 +1,4 @@ -import { TransportStats } from "./transportStats"; +import { TransportStats } from "./transportStats.ts"; export class TransportStatsBuilder { public static buildReport( diff --git a/tsconfig.json b/tsconfig.json index a7d2eeb4dd4..9339d6dfd31 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -8,7 +8,8 @@ "noUnusedLocals": true, "noEmit": true, "declaration": true, - "strict": true + "strict": true, + "allowImportingTsExtensions": true }, "include": ["./src/**/*.ts", "./spec/**/*.ts"] } From 9be0b3e701454c99636fb975ad81c26ffa791bcd Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 30 Aug 2024 15:54:06 +0000 Subject: [PATCH 409/595] Update dependency matrix-widget-api to v1.9.0 --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index b259daa83dc..49efed4ad35 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4807,9 +4807,9 @@ matrix-mock-request@^2.5.0: expect "^28.1.0" matrix-widget-api@^1.8.2: - version "1.8.2" - resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.8.2.tgz#28d344502a85593740f560b0f8120e474a054505" - integrity sha512-kdmks3CvFNPIYN669Y4rO13KrazDvX8KHC7i6jOzJs8uZ8s54FNkuRVVyiQHeVCSZG5ixUqW9UuCj9lf03qxTQ== + version "1.9.0" + resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.9.0.tgz#884136b405bd3c56e4ea285095c9e01ec52b6b1f" + integrity sha512-au8mqralNDqrEvaVAkU37bXOb8I9SCe+ACdPk11QWw58FKstVq31q2wRz+qWA6J+42KJ6s1DggWbG/S3fEs3jw== dependencies: "@types/events" "^3.0.0" events "^3.2.0" From 5a1c70ad19bdf1edc070016bafd92b5737780014 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 3 Sep 2024 12:31:16 +0000 Subject: [PATCH 410/595] v34.5.0-rc.0 --- package.json | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index bb652a728f2..dcbb71120b2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.4.0", + "version": "34.5.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" @@ -127,6 +127,5 @@ "outputDirectory": "coverage", "outputName": "jest-sonar-report.xml", "relativePaths": true - }, - "typings": "./lib/index.d.ts" + } } From f2f77bd1f7b22bbe058c40bea6a4764c59f76976 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 14:51:09 +0100 Subject: [PATCH 411/595] Update all non-major dependencies (#4382) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 171 +++++++++++++++++++++++++++++---------------------- 2 files changed, 99 insertions(+), 74 deletions(-) diff --git a/package.json b/package.json index bb652a728f2..9ac783ff7e7 100644 --- a/package.json +++ b/package.json @@ -103,7 +103,7 @@ "eslint-plugin-tsdoc": "^0.3.0", "eslint-plugin-unicorn": "^55.0.0", "fake-indexeddb": "^5.0.2", - "fetch-mock": "11.1.1", + "fetch-mock": "11.1.3", "fetch-mock-jest": "^1.5.1", "husky": "^9.0.0", "jest": "^29.0.0", diff --git a/yarn.lock b/yarn.lock index 49efed4ad35..4c0e2bc294b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1504,6 +1504,11 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@nolyfill/is-core-module@1.0.39": + version "1.0.39" + resolved "https://registry.yarnpkg.com/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz#3dc35ba0f1e66b403c00b39344f870298ebb1c8e" + integrity sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA== + "@peculiar/asn1-schema@^2.3.8": version "2.3.8" resolved "https://registry.yarnpkg.com/@peculiar/asn1-schema/-/asn1-schema-2.3.8.tgz#04b38832a814e25731232dd5be883460a156da3b" @@ -1824,13 +1829,13 @@ "@typescript-eslint/types" "7.18.0" "@typescript-eslint/visitor-keys" "7.18.0" -"@typescript-eslint/scope-manager@8.2.0": - version "8.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.2.0.tgz#4a4bd7e7df5522acc8795c3b6f21e8c41b951138" - integrity sha512-OFn80B38yD6WwpoHU2Tz/fTz7CgFqInllBoC3WP+/jLbTb4gGPTy9HBSTsbDWkMdN55XlVU0mMDYAtgvlUspGw== +"@typescript-eslint/scope-manager@8.4.0": + version "8.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.4.0.tgz#8a13d3c0044513d7960348db6f4789d2a06fa4b4" + integrity sha512-n2jFxLeY0JmKfUqy3P70rs6vdoPjHK8P/w+zJcV3fk0b0BwRXC/zxRTEnAsgYT7MwdQDt/ZEbtdzdVC+hcpF0A== dependencies: - "@typescript-eslint/types" "8.2.0" - "@typescript-eslint/visitor-keys" "8.2.0" + "@typescript-eslint/types" "8.4.0" + "@typescript-eslint/visitor-keys" "8.4.0" "@typescript-eslint/type-utils@7.18.0": version "7.18.0" @@ -1847,10 +1852,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.18.0.tgz#b90a57ccdea71797ffffa0321e744f379ec838c9" integrity sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ== -"@typescript-eslint/types@8.2.0": - version "8.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.2.0.tgz#dfe9895a2812f7c6bf7af863054c22a67060420c" - integrity sha512-6a9QSK396YqmiBKPkJtxsgZZZVjYQ6wQ/TlI0C65z7vInaETuC6HAHD98AGLC8DyIPqHytvNuS8bBVvNLKyqvQ== +"@typescript-eslint/types@8.4.0": + version "8.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.4.0.tgz#b44d6a90a317a6d97a3e5fabda5196089eec6171" + integrity sha512-T1RB3KQdskh9t3v/qv7niK6P8yvn7ja1mS7QK7XfRVL6wtZ8/mFs/FHf4fKvTA0rKnqnYxl/uHFNbnEt0phgbw== "@typescript-eslint/typescript-estree@7.18.0": version "7.18.0" @@ -1866,15 +1871,15 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/typescript-estree@8.2.0": - version "8.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.2.0.tgz#fbdb93a1c7ac7f1f96ae2de4fc97cd64c60ae894" - integrity sha512-kiG4EDUT4dImplOsbh47B1QnNmXSoUqOjWDvCJw/o8LgfD0yr7k2uy54D5Wm0j4t71Ge1NkynGhpWdS0dEIAUA== +"@typescript-eslint/typescript-estree@8.4.0": + version "8.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.4.0.tgz#00ed79ae049e124db37315cde1531a900a048482" + integrity sha512-kJ2OIP4dQw5gdI4uXsaxUZHRwWAGpREJ9Zq6D5L0BweyOrWsL6Sz0YcAZGWhvKnH7fm1J5YFE1JrQL0c9dd53A== dependencies: - "@typescript-eslint/types" "8.2.0" - "@typescript-eslint/visitor-keys" "8.2.0" + "@typescript-eslint/types" "8.4.0" + "@typescript-eslint/visitor-keys" "8.4.0" debug "^4.3.4" - globby "^11.1.0" + fast-glob "^3.3.2" is-glob "^4.0.3" minimatch "^9.0.4" semver "^7.6.0" @@ -1891,14 +1896,14 @@ "@typescript-eslint/typescript-estree" "7.18.0" "@typescript-eslint/utils@^6.0.0 || ^7.0.0 || ^8.0.0": - version "8.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.2.0.tgz#02d442285925f28d520587185f295f932702e733" - integrity sha512-O46eaYKDlV3TvAVDNcoDzd5N550ckSe8G4phko++OCSC1dYIb9LTc3HDGYdWqWIAT5qDUKphO6sd9RrpIJJPfg== + version "8.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.4.0.tgz#35c552a404858c853a1f62ba6df2214f1988afc3" + integrity sha512-swULW8n1IKLjRAgciCkTCafyTHHfwVQFt8DovmaF69sKbOxTSFMmIZaSHjqO9i/RV0wIblaawhzvtva8Nmm7lQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "8.2.0" - "@typescript-eslint/types" "8.2.0" - "@typescript-eslint/typescript-estree" "8.2.0" + "@typescript-eslint/scope-manager" "8.4.0" + "@typescript-eslint/types" "8.4.0" + "@typescript-eslint/typescript-estree" "8.4.0" "@typescript-eslint/visitor-keys@7.18.0": version "7.18.0" @@ -1908,12 +1913,12 @@ "@typescript-eslint/types" "7.18.0" eslint-visitor-keys "^3.4.3" -"@typescript-eslint/visitor-keys@8.2.0": - version "8.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.2.0.tgz#f6abb3b6508898a117175ddc11f9b9869cc96834" - integrity sha512-sbgsPMW9yLvS7IhCi8IpuK1oBmtbWUNP+hBdwl/I9nzqVsszGnNGti5r9dUtF5RLivHUFFIdRvLiTsPhzSyJ3Q== +"@typescript-eslint/visitor-keys@8.4.0": + version "8.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.4.0.tgz#1e8a8b8fd3647db1e42361fdd8de3e1679dec9d2" + integrity sha512-zTQD6WLNTre1hj5wp09nBIDiOc2U5r/qmzo7wxPn4ZgAjHql09EofqhF9WF+fZHzL5aCyaIpPcT2hyxl73kr9A== dependencies: - "@typescript-eslint/types" "8.2.0" + "@typescript-eslint/types" "8.4.0" eslint-visitor-keys "^3.4.3" "@ungap/structured-clone@^1.2.0": @@ -2645,7 +2650,7 @@ data-view-byte-offset@^1.0.0: es-errors "^1.3.0" is-data-view "^1.0.1" -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.6, debug@~4.3.6: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@^4.3.6, debug@~4.3.6: version "4.3.6" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.6.tgz#2ab2c38fbaffebf8aa95fdfe6d88438c7a13c52b" integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== @@ -2801,15 +2806,7 @@ emoji-regex@^9.2.2: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== -enhanced-resolve@^5.12.0: - version "5.17.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz#d037603789dd9555b89aaec7eb78845c49089bc5" - integrity sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA== - dependencies: - graceful-fs "^4.2.4" - tapable "^2.2.0" - -enhanced-resolve@^5.17.1: +enhanced-resolve@^5.15.0, enhanced-resolve@^5.17.1: version "5.17.1" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz#67bfbbcc2f81d511be77d686a90267ef7f898a15" integrity sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg== @@ -2986,25 +2983,33 @@ eslint-import-resolver-node@^0.3.9: resolve "^1.22.4" eslint-import-resolver-typescript@^3.5.1: - version "3.6.1" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz#7b983680edd3f1c5bce1a5829ae0bc2d57fe9efa" - integrity sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg== - dependencies: - debug "^4.3.4" - enhanced-resolve "^5.12.0" - eslint-module-utils "^2.7.4" - fast-glob "^3.3.1" - get-tsconfig "^4.5.0" - is-core-module "^2.11.0" + version "3.6.3" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.3.tgz#bb8e388f6afc0f940ce5d2c5fd4a3d147f038d9e" + integrity sha512-ud9aw4szY9cCT1EWWdGv1L1XR6hh2PaRWif0j2QjQ0pgTY/69iw+W0Z4qZv5wHahOl8isEr+k/JnyAqNQkLkIA== + dependencies: + "@nolyfill/is-core-module" "1.0.39" + debug "^4.3.5" + enhanced-resolve "^5.15.0" + eslint-module-utils "^2.8.1" + fast-glob "^3.3.2" + get-tsconfig "^4.7.5" + is-bun-module "^1.0.2" is-glob "^4.0.3" -eslint-module-utils@^2.7.4, eslint-module-utils@^2.8.0: +eslint-module-utils@^2.8.0: version "2.8.1" resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz#52f2404300c3bd33deece9d7372fb337cc1d7c34" integrity sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q== dependencies: debug "^3.2.7" +eslint-module-utils@^2.8.1: + version "2.9.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.9.0.tgz#95d4ac038a68cd3f63482659dffe0883900eb342" + integrity sha512-McVbYmwA3NEKwRQY5g4aWMdcZE5xZxV8i8l7CqJSrameuGSQJtSWaL/LxTEzSKKaCcOhlpDR8XEfYXWPrdo/ZQ== + dependencies: + debug "^3.2.7" + eslint-plugin-import@^2.26.0: version "2.29.1" resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz#d45b37b5ef5901d639c15270d74d46d161150643" @@ -3029,9 +3034,9 @@ eslint-plugin-import@^2.26.0: tsconfig-paths "^3.15.0" eslint-plugin-jest@^28.0.0: - version "28.8.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.8.0.tgz#54f597b5a3295ad04ec946baa245ad02b9b2bca0" - integrity sha512-Tubj1hooFxCl52G4qQu0edzV/+EZzPUeN8p2NnW5uu4fbDs+Yo7+qDVDc4/oG3FbCqEBmu/OC3LSsyiU22oghw== + version "28.8.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.8.2.tgz#7f8307179c5cf8d51101b3aa002be168daadecbc" + integrity sha512-mC3OyklHmS5i7wYU1rGId9EnxRI8TVlnFG56AE+8U9iRy6zwaNygZR+DsdZuCL0gRG0wVeyzq+uWcPt6yJrrMA== dependencies: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0 || ^8.0.0" @@ -3296,7 +3301,7 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-glob@^3.2.9, fast-glob@^3.3.1, fast-glob@^3.3.2: +fast-glob@^3.2.9, fast-glob@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== @@ -3338,10 +3343,10 @@ fetch-mock-jest@^1.5.1: dependencies: fetch-mock "^9.11.0" -fetch-mock@11.1.1: - version "11.1.1" - resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-11.1.1.tgz#33440be6d184f52f1d8bc48a15b9e631589fd5e2" - integrity sha512-2lZ42bnMar9MBfNR0nza5wM4ZDwLxb+ZbNR4sEvpqOOBzZ+V6cZVVhLBHj8+AAEInF4vp2/tbRM8WlGX5mPhiA== +fetch-mock@11.1.3: + version "11.1.3" + resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-11.1.3.tgz#3dc8dcc81340fea1cf1db60a2c195c63e270b501" + integrity sha512-ATh0dWgnVrUHiiXuvQm1Ry+ThWfSv1QQgqJTCtybrNxyUrFiSOaDKsNG29eyysp1SHeNP6Q+dH50+8VifN51Ig== dependencies: "@types/glob-to-regexp" "^0.4.4" dequal "^2.0.3" @@ -3518,10 +3523,10 @@ get-symbol-description@^1.0.2: es-errors "^1.3.0" get-intrinsic "^1.2.4" -get-tsconfig@^4.5.0: - version "4.7.5" - resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.7.5.tgz#5e012498579e9a6947511ed0cd403272c7acbbaf" - integrity sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw== +get-tsconfig@^4.7.5: + version "4.8.0" + resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.8.0.tgz#125dc13a316f61650a12b20c97c11b8fd996fedd" + integrity sha512-Pgba6TExTZ0FJAn1qkJAjIeKoDJ3CsI2ChuLohJnZl/tTU8MVrq3b+2t5UOPfRa4RMsorClBjJALkJUMjG1PAw== dependencies: resolve-pkg-maps "^1.0.0" @@ -3819,18 +3824,18 @@ is-builtin-module@^3.2.1: dependencies: builtin-modules "^3.3.0" +is-bun-module@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-bun-module/-/is-bun-module-1.1.0.tgz#a66b9830869437f6cdad440ba49ab6e4dc837269" + integrity sha512-4mTAVPlrXpaN3jtF0lsnPCMGnq4+qZjVIKq0HCpfcqf8OC1SM5oATCIAPM5V5FN05qp2NNnFndphmdZS9CV3hA== + dependencies: + semver "^7.6.3" + is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.11.0, is-core-module@^2.13.1: - version "2.14.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.14.0.tgz#43b8ef9f46a6a08888db67b1ffd4ec9e3dfd59d1" - integrity sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A== - dependencies: - hasown "^2.0.2" - is-core-module@^2.13.0: version "2.15.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.0.tgz#71c72ec5442ace7e76b306e9d48db361f22699ea" @@ -3838,6 +3843,13 @@ is-core-module@^2.13.0: dependencies: hasown "^2.0.2" +is-core-module@^2.13.1: + version "2.14.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.14.0.tgz#43b8ef9f46a6a08888db67b1ffd4ec9e3dfd59d1" + integrity sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A== + dependencies: + hasown "^2.0.2" + is-data-view@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.1.tgz#4b4d3a511b70f3dc26d42c03ca9ca515d847759f" @@ -4609,9 +4621,9 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.27.2" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.27.2.tgz#8a5a569a5baac0ab2e06dbd5454f07608ccb1952" - integrity sha512-Mya1XEDq1oygibQf0uocQd02Fil8RtvNVhcFAcxypjcc6zakT7wsJtS0xvuwEitilfI0tiFC9PghmJQ3DMKuTg== + version "5.29.1" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.29.1.tgz#596ba9aea44fb56d89c9cc7d73e2522d50280713" + integrity sha512-l8qFtRqNpCk8xf46VOwhBUva7LBwanoGPJ4KQNwVRl6hmEXStf1BJlfbYRZ+yQpbilbIV6LN+ztX6LaGtyd4TQ== dependencies: "@nodelib/fs.walk" "1.2.8" "@snyk/github-codeowners" "1.1.0" @@ -4829,7 +4841,15 @@ merge2@^1.3.0, merge2@^1.4.1: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -micromatch@^4.0.4, micromatch@~4.0.7: +micromatch@^4.0.4: + version "4.0.8" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" + integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== + dependencies: + braces "^3.0.3" + picomatch "^2.3.1" + +micromatch@~4.0.7: version "4.0.7" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5" integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q== @@ -5199,7 +5219,12 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -picocolors@^1.0.0, picocolors@^1.0.1: +picocolors@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59" + integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw== + +picocolors@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== From 169e8f86139111574a3738f8557c6fa4b2a199db Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 16:22:51 +0100 Subject: [PATCH 412/595] Update dependency @types/node to v18.19.47 (#4383) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 4c0e2bc294b..750c7e5c982 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1742,9 +1742,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.45" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.45.tgz#a9ebfe4c316a356be7ca11f753ecb2feda6d6bdf" - integrity sha512-VZxPKNNhjKmaC1SUYowuXSRSMGyQGmQjvvA1xE4QZ0xce2kLtEhPDS+kqpCPBZYgqblCLQ2DAjSzmgCM5auvhA== + version "18.19.48" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.48.tgz#3a1696f4a7298d8831ed9ce47db62bf4c62c8880" + integrity sha512-7WevbG4ekUcRQSZzOwxWgi5dZmTak7FaxXDoW7xVxPBmKx1rTzfmRLkeCgJzcbBnOV2dkhAPc8cCeT6agocpjg== dependencies: undici-types "~5.26.4" From f74614705e6cd86fd14a38977c54597d7a7f0e33 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 21:32:29 +0100 Subject: [PATCH 413/595] Update mheap/github-action-required-labels digest to d25134c (#4384) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/pull_request.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yaml b/.github/workflows/pull_request.yaml index bc4fdf704ab..480a7fd2fe5 100644 --- a/.github/workflows/pull_request.yaml +++ b/.github/workflows/pull_request.yaml @@ -14,7 +14,7 @@ jobs: name: Preview Changelog runs-on: ubuntu-latest steps: - - uses: mheap/github-action-required-labels@5847eef68201219cf0a4643ea7be61e77837bbce # v5 + - uses: mheap/github-action-required-labels@d25134c992b943fb6ad00c25ea00eb5988c0a9dd # v5 if: github.event_name != 'merge_group' with: labels: | From 7efa6352f8add9d4112c2fd26e4e7c8268f6a003 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 21:32:50 +0100 Subject: [PATCH 414/595] Update shogo82148/actions-upload-release-asset digest to aac270e (#4385) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/actions/sign-release-tarball/action.yml | 2 +- .github/actions/upload-release-assets/action.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/sign-release-tarball/action.yml b/.github/actions/sign-release-tarball/action.yml index 1ac666c4008..e9c43c8fcf3 100644 --- a/.github/actions/sign-release-tarball/action.yml +++ b/.github/actions/sign-release-tarball/action.yml @@ -22,7 +22,7 @@ runs: - name: Upload tarball signature if: ${{ inputs.upload-url }} - uses: shogo82148/actions-upload-release-asset@6d4fd50e333ee797e83ae380e6bc55b048baec41 # v1 + uses: shogo82148/actions-upload-release-asset@aac270e08f6b4547ada0b3800f88e1eb3ce9d400 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ env.VERSION }}.tar.gz.asc diff --git a/.github/actions/upload-release-assets/action.yml b/.github/actions/upload-release-assets/action.yml index ef95a4a891e..056843ac29d 100644 --- a/.github/actions/upload-release-assets/action.yml +++ b/.github/actions/upload-release-assets/action.yml @@ -29,13 +29,13 @@ runs: - name: Upload asset signatures if: inputs.gpg-fingerprint - uses: shogo82148/actions-upload-release-asset@6d4fd50e333ee797e83ae380e6bc55b048baec41 # v1 + uses: shogo82148/actions-upload-release-asset@aac270e08f6b4547ada0b3800f88e1eb3ce9d400 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ inputs.asset-path }}.asc - name: Upload assets - uses: shogo82148/actions-upload-release-asset@6d4fd50e333ee797e83ae380e6bc55b048baec41 # v1 + uses: shogo82148/actions-upload-release-asset@aac270e08f6b4547ada0b3800f88e1eb3ce9d400 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ inputs.asset-path }} From df0f817f83e7dca3ae1bb23a72887ad79f2db2f1 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 22:20:01 +0100 Subject: [PATCH 415/595] Update dependency typedoc-plugin-mdn-links to v3.2.10 (#4386) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 750c7e5c982..5b303b6f6de 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6147,9 +6147,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-wpywQ95tqGSD6IbYUPMXSKiwnSWboSKdx2y9X6SJQKzQvBqZoz5iiUyDJFixtW8v7+xmrqXFR/B6Wy37FNhVqA== typedoc-plugin-mdn-links@^3.0.3: - version "3.2.9" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.9.tgz#2ee846685e1e3d9e5f76445216e479566c9a3198" - integrity sha512-+bjuG/rPyeRBGA/ILk8u2j7KksohicCsUd+qcTQitOaS9GLvN69zcQlCJU1KqcPHpt3fTqJnVmyhMRe5F+ig7w== + version "3.2.11" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.11.tgz#837ab7138535a91d9e1803bf69b6e357b6d0c354" + integrity sha512-0VlF21O3S1L373UTkUFleoQDrgkh5quAqjCVusBaa3czLahK6LsUxQj6PRqbT5xN0emUVYnT7UTwe8haU2MFrw== typedoc-plugin-missing-exports@^3.0.0: version "3.0.0" From f50aab37c315e36f3e12192df974e04bdc8398dc Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 21:29:21 +0000 Subject: [PATCH 416/595] Update babel monorepo (#4387) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 233 +++++++++++++++++++++++++++--------------------------- 1 file changed, 116 insertions(+), 117 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5b303b6f6de..ef354a7116e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -23,9 +23,9 @@ "@jridgewell/trace-mapping" "^0.3.24" "@babel/cli@^7.12.10": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.24.8.tgz#79eaa55a69c77cafbea3e87537fd1df5a5a2edf8" - integrity sha512-isdp+G6DpRyKc+3Gqxy2rjzgF7Zj9K0mzLNnxz+E/fgeag8qT3vVulX4gY9dGO1q0y+0lUv6V3a+uhUzMzrwXg== + version "7.25.6" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.25.6.tgz#bc35561adc78ade43ac9c09a690768493ab9ed95" + integrity sha512-Z+Doemr4VtvSD2SNHTrkiFZ1LX+JI6tyRXAAOb4N9khIuPyoEPmTPJarPm8ljJV1D6bnMQjyHMWTT9NeKbQuXA== dependencies: "@jridgewell/trace-mapping" "^0.3.25" commander "^6.2.0" @@ -36,7 +36,7 @@ slash "^2.0.0" optionalDependencies: "@nicolo-ribaudo/chokidar-2" "2.1.8-no-fsevents.3" - chokidar "^3.4.0" + chokidar "^3.6.0" "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.24.7": version "7.24.7" @@ -46,10 +46,10 @@ "@babel/highlight" "^7.24.7" picocolors "^1.0.0" -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.2": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.2.tgz#e41928bd33475305c586f6acbbb7e3ade7a6f7f5" - integrity sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ== +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.2", "@babel/compat-data@^7.25.4": + version "7.25.4" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.4.tgz#7d2a80ce229890edcf4cc259d4d696cb4dae2fcb" + integrity sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ== "@babel/core@^7.0.0", "@babel/core@^7.11.6", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.23.9": version "7.25.2" @@ -88,12 +88,12 @@ dependencies: eslint-rule-composer "^0.3.0" -"@babel/generator@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.0.tgz#f858ddfa984350bc3d3b7f125073c9af6988f18e" - integrity sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw== +"@babel/generator@^7.25.0", "@babel/generator@^7.25.6": + version "7.25.6" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.6.tgz#0df1ad8cb32fe4d2b01d8bf437f153d19342a87c" + integrity sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw== dependencies: - "@babel/types" "^7.25.0" + "@babel/types" "^7.25.6" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" @@ -134,20 +134,20 @@ lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.24.7": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.0.tgz#a109bf9c3d58dfed83aaf42e85633c89f43a6253" - integrity sha512-GYM6BxeQsETc9mnct+nIIpf63SAyzvyYN7UB/IlTyd+MBg06afFGp0mIeUqGyWgS2mxad6vqbMrHVlaL3m70sQ== +"@babel/helper-create-class-features-plugin@^7.24.7", "@babel/helper-create-class-features-plugin@^7.25.4": + version "7.25.4" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.4.tgz#57eaf1af38be4224a9d9dd01ddde05b741f50e14" + integrity sha512-ro/bFs3/84MDgDmMwbcHgDa8/E6J3QKNTk4xJJnVeFtGE+tL0K26E3pNxhYz2b67fJpt7Aphw5XcploKXuCvCQ== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" "@babel/helper-member-expression-to-functions" "^7.24.8" "@babel/helper-optimise-call-expression" "^7.24.7" "@babel/helper-replace-supers" "^7.25.0" "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" - "@babel/traverse" "^7.25.0" + "@babel/traverse" "^7.25.4" semver "^6.3.1" -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.24.7", "@babel/helper-create-regexp-features-plugin@^7.25.0": +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.24.7", "@babel/helper-create-regexp-features-plugin@^7.25.0", "@babel/helper-create-regexp-features-plugin@^7.25.2": version "7.25.2" resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.2.tgz#24c75974ed74183797ffd5f134169316cd1808d9" integrity sha512-+wqVGP+DFmqwFD3EH6TMTfUNeqDehV3E/dl+Sd54eaXqm17tEUNbEIn4sVivVowbvUpOtIGxdo3GoXyDH9N/9g== @@ -156,7 +156,7 @@ regexpu-core "^5.3.1" semver "^6.3.1" -"@babel/helper-define-polyfill-provider@^0.6.1", "@babel/helper-define-polyfill-provider@^0.6.2": +"@babel/helper-define-polyfill-provider@^0.6.2": version "0.6.2" resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz#18594f789c3594acb24cfdb4a7f7b7d2e8bd912d" integrity sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ== @@ -286,13 +286,20 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" integrity sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw== -"@babel/parser@^7.24.7", "@babel/parser@^7.25.0", "@babel/parser@^7.25.3": +"@babel/parser@^7.24.7": version "7.25.3" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.3.tgz#91fb126768d944966263f0657ab222a642b82065" integrity sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw== dependencies: "@babel/types" "^7.25.2" +"@babel/parser@^7.25.0", "@babel/parser@^7.25.6": + version "7.25.6" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.6.tgz#85660c5ef388cbbf6e3d2a694ee97a38f18afe2f" + integrity sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q== + dependencies: + "@babel/types" "^7.25.6" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.3": version "7.25.3" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.3.tgz#dca427b45a6c0f5c095a1c639dfe2476a3daba7f" @@ -380,18 +387,18 @@ "@babel/helper-plugin-utils" "^7.8.3" "@babel/plugin-syntax-import-assertions@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.7.tgz#2a0b406b5871a20a841240586b1300ce2088a778" - integrity sha512-Ec3NRUMoi8gskrkBe3fNmEQfxDvY8bgfQpz6jlk/41kX9eUjvpyqWU7PBP/pLAvMaSQjbMNKJmvX57jP+M6bPg== + version "7.25.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.25.6.tgz#bb918905c58711b86f9710d74a3744b6c56573b5" + integrity sha512-aABl0jHw9bZ2karQ/uUD6XP4u0SG22SJrOHFoL6XB1R7dTovOP4TzTlsxOYC5yQ1pdscVK2JTUnF6QL3ARoAiQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-syntax-import-attributes@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.7.tgz#b4f9ea95a79e6912480c4b626739f86a076624ca" - integrity sha512-hbX+lKKeUMGihnK8nvKqmXBInriT3GVjzXKFriV3YC6APGxMbP8RZNFwy91+hocLXq90Mta+HshoB31802bb8A== + version "7.25.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.6.tgz#6d4c78f042db0e82fd6436cd65fec5dc78ad2bde" + integrity sha512-sXaDXaJN9SNLymBdlWFA+bjzBhFD617ZaFiY13dGt7TVslVvVgA6fkZOP7Ki3IGElC45lwHdOTrCtKZGVAWeLQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" @@ -492,15 +499,15 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-async-generator-functions@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.0.tgz#b785cf35d73437f6276b1e30439a57a50747bddf" - integrity sha512-uaIi2FdqzjpAMvVqvB51S42oC2JEVgh0LDsGfZVDysWE8LrJtQC2jvKmOqEYThKyB7bDEb7BP1GYWDm7tABA0Q== +"@babel/plugin-transform-async-generator-functions@^7.25.4": + version "7.25.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.4.tgz#2afd4e639e2d055776c9f091b6c0c180ed8cf083" + integrity sha512-jz8cV2XDDTqjKPwVPJBIjORVEmSGYhdRa8e5k5+vN+uwcjSrSxUaebBRa4ko1jqNF2uxyg8G6XYk30Jv285xzg== dependencies: "@babel/helper-plugin-utils" "^7.24.8" "@babel/helper-remap-async-to-generator" "^7.25.0" "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/traverse" "^7.25.0" + "@babel/traverse" "^7.25.4" "@babel/plugin-transform-async-to-generator@^7.24.7": version "7.24.7" @@ -525,13 +532,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.8" -"@babel/plugin-transform-class-properties@^7.12.1", "@babel/plugin-transform-class-properties@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.7.tgz#256879467b57b0b68c7ddfc5b76584f398cd6834" - integrity sha512-vKbfawVYayKcSeSR5YYzzyXvsDFWU2mD8U5TFeXtbCPLFUqe7GyCgvO6XDHzje862ODrOwy6WCPmKeWHbCFJ4w== +"@babel/plugin-transform-class-properties@^7.12.1", "@babel/plugin-transform-class-properties@^7.25.4": + version "7.25.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.4.tgz#bae7dbfcdcc2e8667355cd1fb5eda298f05189fd" + integrity sha512-nZeZHyCWPfjkdU5pA/uHiTaDAFUEqkpzf1YoQT2NeSynCGYq9rxfyI3XpQbfx/a0hSnFH6TGlEXvae5Vi7GD8g== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-class-features-plugin" "^7.25.4" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-transform-class-static-block@^7.24.7": version "7.24.7" @@ -542,16 +549,16 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-transform-classes@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.0.tgz#63122366527d88e0ef61b612554fe3f8c793991e" - integrity sha512-xyi6qjr/fYU304fiRwFbekzkqVJZ6A7hOjWZd+89FVcBqPV3S9Wuozz82xdpLspckeaafntbzglaW4pqpzvtSw== +"@babel/plugin-transform-classes@^7.25.4": + version "7.25.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.4.tgz#d29dbb6a72d79f359952ad0b66d88518d65ef89a" + integrity sha512-oexUfaQle2pF/b6E0dwsxQtAol9TLSO88kQvym6HHBWFliV2lGdrPieX+WgMRLSJDVzdYywk7jXbLPuO2KLTLg== dependencies: "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-compilation-targets" "^7.24.8" + "@babel/helper-compilation-targets" "^7.25.2" "@babel/helper-plugin-utils" "^7.24.8" "@babel/helper-replace-supers" "^7.25.0" - "@babel/traverse" "^7.25.0" + "@babel/traverse" "^7.25.4" globals "^11.1.0" "@babel/plugin-transform-computed-properties@^7.24.7": @@ -780,13 +787,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-private-methods@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.7.tgz#e6318746b2ae70a59d023d5cc1344a2ba7a75f5e" - integrity sha512-COTCOkG2hn4JKGEKBADkA8WNb35TGkkRbI5iT845dB+NyqgO8Hn+ajPbSnIQznneJTa3d30scb6iz/DhH8GsJQ== +"@babel/plugin-transform-private-methods@^7.25.4": + version "7.25.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.4.tgz#9bbefbe3649f470d681997e0b64a4b254d877242" + integrity sha512-ao8BG7E2b/URaUQGqN3Tlsg+M3KlHY6rJ1O1gXAEUnZoyNQnvKyH87Kfg+FoxSeyWUB8ISZZsC91C44ZuBFytw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-class-features-plugin" "^7.25.4" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/plugin-transform-private-property-in-object@^7.24.7": version "7.24.7" @@ -821,14 +828,14 @@ "@babel/helper-plugin-utils" "^7.24.7" "@babel/plugin-transform-runtime@^7.12.10": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.7.tgz#00a5bfaf8c43cf5c8703a8a6e82b59d9c58f38ca" - integrity sha512-YqXjrk4C+a1kZjewqt+Mmu2UuV1s07y8kqcUf4qYLnoqemhR4gRQikhdAhSVJioMjVTu6Mo6pAbaypEA3jY6fw== + version "7.25.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.4.tgz#96e4ad7bfbbe0b4a7b7e6f2a533ca326cf204963" + integrity sha512-8hsyG+KUYGY0coX6KUCDancA0Vw225KJ2HJO0yCNr1vq5r+lJTleDaJf0K7iOhjw4SWhu03TMBzYTJ9krmzULQ== dependencies: "@babel/helper-module-imports" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" babel-plugin-polyfill-corejs2 "^0.4.10" - babel-plugin-polyfill-corejs3 "^0.10.1" + babel-plugin-polyfill-corejs3 "^0.10.6" babel-plugin-polyfill-regenerator "^0.6.1" semver "^6.3.1" @@ -901,20 +908,20 @@ "@babel/helper-create-regexp-features-plugin" "^7.24.7" "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-transform-unicode-sets-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.7.tgz#d40705d67523803a576e29c63cef6e516b858ed9" - integrity sha512-2G8aAvF4wy1w/AGZkemprdGMRg5o6zPNhbHVImRz3lss55TYCBd6xStN19rt8XJHq20sqV0JbyWjOWwQRwV/wg== +"@babel/plugin-transform-unicode-sets-regex@^7.25.4": + version "7.25.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.4.tgz#be664c2a0697ffacd3423595d5edef6049e8946c" + integrity sha512-qesBxiWkgN1Q+31xUE9RcMk79eOXXDCv6tfyGMRSs4RGlioSg2WVyQAm07k726cSE56pa+Kb0y9epX2qaXzTvA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.2" + "@babel/helper-plugin-utils" "^7.24.8" "@babel/preset-env@^7.12.11": - version "7.25.3" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.25.3.tgz#0bf4769d84ac51d1073ab4a86f00f30a3a83c67c" - integrity sha512-QsYW7UeAaXvLPX9tdVliMJE7MD7M6MLYVTovRTIwhoYQVFHR1rM4wO8wqAezYi3/BpSD+NzVCZ69R6smWiIi8g== + version "7.25.4" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.25.4.tgz#be23043d43a34a2721cd0f676c7ba6f1481f6af6" + integrity sha512-W9Gyo+KmcxjGahtt3t9fb14vFRWvPpu5pT6GBlovAK6BTBcxgjfVMSQCfJl4oi35ODrxP6xx2Wr8LNST57Mraw== dependencies: - "@babel/compat-data" "^7.25.2" + "@babel/compat-data" "^7.25.4" "@babel/helper-compilation-targets" "^7.25.2" "@babel/helper-plugin-utils" "^7.24.8" "@babel/helper-validator-option" "^7.24.8" @@ -943,13 +950,13 @@ "@babel/plugin-syntax-top-level-await" "^7.14.5" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" "@babel/plugin-transform-arrow-functions" "^7.24.7" - "@babel/plugin-transform-async-generator-functions" "^7.25.0" + "@babel/plugin-transform-async-generator-functions" "^7.25.4" "@babel/plugin-transform-async-to-generator" "^7.24.7" "@babel/plugin-transform-block-scoped-functions" "^7.24.7" "@babel/plugin-transform-block-scoping" "^7.25.0" - "@babel/plugin-transform-class-properties" "^7.24.7" + "@babel/plugin-transform-class-properties" "^7.25.4" "@babel/plugin-transform-class-static-block" "^7.24.7" - "@babel/plugin-transform-classes" "^7.25.0" + "@babel/plugin-transform-classes" "^7.25.4" "@babel/plugin-transform-computed-properties" "^7.24.7" "@babel/plugin-transform-destructuring" "^7.24.8" "@babel/plugin-transform-dotall-regex" "^7.24.7" @@ -977,7 +984,7 @@ "@babel/plugin-transform-optional-catch-binding" "^7.24.7" "@babel/plugin-transform-optional-chaining" "^7.24.8" "@babel/plugin-transform-parameters" "^7.24.7" - "@babel/plugin-transform-private-methods" "^7.24.7" + "@babel/plugin-transform-private-methods" "^7.25.4" "@babel/plugin-transform-private-property-in-object" "^7.24.7" "@babel/plugin-transform-property-literals" "^7.24.7" "@babel/plugin-transform-regenerator" "^7.24.7" @@ -990,10 +997,10 @@ "@babel/plugin-transform-unicode-escapes" "^7.24.7" "@babel/plugin-transform-unicode-property-regex" "^7.24.7" "@babel/plugin-transform-unicode-regex" "^7.24.7" - "@babel/plugin-transform-unicode-sets-regex" "^7.24.7" + "@babel/plugin-transform-unicode-sets-regex" "^7.25.4" "@babel/preset-modules" "0.1.6-no-external-plugins" babel-plugin-polyfill-corejs2 "^0.4.10" - babel-plugin-polyfill-corejs3 "^0.10.4" + babel-plugin-polyfill-corejs3 "^0.10.6" babel-plugin-polyfill-regenerator "^0.6.1" core-js-compat "^3.37.1" semver "^6.3.1" @@ -1024,9 +1031,9 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.0.tgz#3af9a91c1b739c569d5d80cc917280919c544ecb" - integrity sha512-7dRy4DwXwtzBrPbZflqxnvfxLF8kdZXPkhymtDeFoFqE6ldzjQFgYTtYIFARcLEYDrqfBfYcZt1WqFxRoyC9Rw== + version "7.25.6" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.6.tgz#9afc3289f7184d8d7f98b099884c26317b9264d2" + integrity sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ== dependencies: regenerator-runtime "^0.14.0" @@ -1048,16 +1055,16 @@ "@babel/parser" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/traverse@^7.24.7", "@babel/traverse@^7.24.8", "@babel/traverse@^7.25.0", "@babel/traverse@^7.25.1", "@babel/traverse@^7.25.2", "@babel/traverse@^7.25.3": - version "7.25.3" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.3.tgz#f1b901951c83eda2f3e29450ce92743783373490" - integrity sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ== +"@babel/traverse@^7.24.7", "@babel/traverse@^7.24.8", "@babel/traverse@^7.25.0", "@babel/traverse@^7.25.1", "@babel/traverse@^7.25.2", "@babel/traverse@^7.25.3", "@babel/traverse@^7.25.4": + version "7.25.6" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.6.tgz#04fad980e444f182ecf1520504941940a90fea41" + integrity sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ== dependencies: "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.25.0" - "@babel/parser" "^7.25.3" + "@babel/generator" "^7.25.6" + "@babel/parser" "^7.25.6" "@babel/template" "^7.25.0" - "@babel/types" "^7.25.2" + "@babel/types" "^7.25.6" debug "^4.3.1" globals "^11.1.0" @@ -1070,10 +1077,10 @@ "@babel/helper-validator-identifier" "^7.24.7" to-fast-properties "^2.0.0" -"@babel/types@^7.24.7", "@babel/types@^7.24.8", "@babel/types@^7.25.0", "@babel/types@^7.25.2", "@babel/types@^7.4.4": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.2.tgz#55fb231f7dc958cd69ea141a4c2997e819646125" - integrity sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q== +"@babel/types@^7.24.7", "@babel/types@^7.24.8", "@babel/types@^7.25.0", "@babel/types@^7.25.2", "@babel/types@^7.25.6", "@babel/types@^7.4.4": + version "7.25.6" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.6.tgz#893942ddb858f32ae7a004ec9d3a76b3463ef8e6" + integrity sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw== dependencies: "@babel/helper-string-parser" "^7.24.8" "@babel/helper-validator-identifier" "^7.24.7" @@ -2209,15 +2216,7 @@ babel-plugin-polyfill-corejs2@^0.4.10: "@babel/helper-define-polyfill-provider" "^0.6.2" semver "^6.3.1" -babel-plugin-polyfill-corejs3@^0.10.1: - version "0.10.4" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz#789ac82405ad664c20476d0233b485281deb9c77" - integrity sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg== - dependencies: - "@babel/helper-define-polyfill-provider" "^0.6.1" - core-js-compat "^3.36.1" - -babel-plugin-polyfill-corejs3@^0.10.4: +babel-plugin-polyfill-corejs3@^0.10.6: version "0.10.6" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz#2deda57caef50f59c525aeb4964d3b2f867710c7" integrity sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA== @@ -2363,9 +2362,9 @@ camelcase@^6.2.0: integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30001646: - version "1.0.30001651" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001651.tgz#52de59529e8b02b1aedcaaf5c05d9e23c0c28138" - integrity sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg== + version "1.0.30001655" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz#0ce881f5a19a2dcfda2ecd927df4d5c1684b982f" + integrity sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg== chalk@5.2.0: version "5.2.0" @@ -2399,7 +2398,7 @@ char-regex@^1.0.2: resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== -chokidar@^3.4.0: +chokidar@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== @@ -2551,13 +2550,6 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -core-js-compat@^3.36.1, core-js-compat@^3.37.1, core-js-compat@^3.38.0: - version "3.38.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.38.1.tgz#2bc7a298746ca5a7bcb9c164bcb120f2ebc09a09" - integrity sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw== - dependencies: - browserslist "^4.23.3" - core-js-compat@^3.37.0: version "3.37.1" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.37.1.tgz#c844310c7852f4bdf49b8d339730b97e17ff09ee" @@ -2565,6 +2557,13 @@ core-js-compat@^3.37.0: dependencies: browserslist "^4.23.0" +core-js-compat@^3.37.1, core-js-compat@^3.38.0: + version "3.38.1" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.38.1.tgz#2bc7a298746ca5a7bcb9c164bcb120f2ebc09a09" + integrity sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw== + dependencies: + browserslist "^4.23.3" + core-js@^3.0.0: version "3.37.1" resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.37.1.tgz#d21751ddb756518ac5a00e4d66499df981a62db9" @@ -2932,11 +2931,16 @@ es-to-primitive@^1.2.1: is-date-object "^1.0.1" is-symbol "^1.0.2" -escalade@^3.1.1, escalade@^3.1.2: +escalade@^3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== +escalade@^3.1.2: + version "3.2.0" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== + escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -3837,9 +3841,9 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== is-core-module@^2.13.0: - version "2.15.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.0.tgz#71c72ec5442ace7e76b306e9d48db361f22699ea" - integrity sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA== + version "2.15.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.1.tgz#a7363a25bee942fefab0de13bf6aa372c82dcc37" + integrity sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ== dependencies: hasown "^2.0.2" @@ -5219,16 +5223,11 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -picocolors@^1.0.0: +picocolors@^1.0.0, picocolors@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59" integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw== -picocolors@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" - integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== - picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" From 52f35409ecebf9359b8216c7d483ab247ff36acf Mon Sep 17 00:00:00 2001 From: Johannes Marbach Date: Wed, 4 Sep 2024 14:01:33 +0200 Subject: [PATCH 417/595] Stabilise MSC4156 (#4381) * Stabilise MSC4156 Signed-off-by: Johannes Marbach * Add deprecation comments * Add minimum Matrix version --------- Signed-off-by: Johannes Marbach --- src/client.ts | 12 ++++-------- src/feature.ts | 4 ---- 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/src/client.ts b/src/client.ts index 5bc6ab07120..85a4e84f8d9 100644 --- a/src/client.ts +++ b/src/client.ts @@ -4292,13 +4292,11 @@ export class MatrixClient extends TypedEventEmitter(Method.Post, url); } - let queryParams: QueryDict = {}; + const queryParams: QueryDict = {}; if (opts.viaServers) { + // server_name has been deprecated in favour of via with Matrix >1.11 (MSC4156) queryParams.server_name = opts.viaServers; queryParams.via = opts.viaServers; - if (this.canSupport.get(Feature.MigrateServerNameToVia) === ServerSupport.Unstable) { - queryParams = replaceParam("via", "org.matrix.msc4156.via", queryParams); - } } const data: IJoinRequestBody = {}; @@ -4341,13 +4339,11 @@ export class MatrixClient extends TypedEventEmitter1.11 (MSC4156) queryParams.server_name = opts.viaServers; queryParams.via = opts.viaServers; - if (this.canSupport.get(Feature.MigrateServerNameToVia) === ServerSupport.Unstable) { - queryParams = replaceParam("via", "org.matrix.msc4156.via", queryParams); - } } const body: Record = {}; diff --git a/src/feature.ts b/src/feature.ts index 47c914353bb..fc097676398 100644 --- a/src/feature.ts +++ b/src/feature.ts @@ -33,7 +33,6 @@ export enum Feature { AccountDataDeletion = "AccountDataDeletion", RelationsRecursion = "RelationsRecursion", IntentionalMentions = "IntentionalMentions", - MigrateServerNameToVia = "MigrateServerNameToVia", } type FeatureSupportCondition = { @@ -66,9 +65,6 @@ const featureSupportResolver: Record = { unstablePrefixes: ["org.matrix.msc3952_intentional_mentions"], matrixVersion: "v1.7", }, - [Feature.MigrateServerNameToVia]: { - unstablePrefixes: ["org.matrix.msc4156"], - }, }; export async function buildFeatureSupportMap(versions: IServerVersions): Promise> { From e4db6008b874cf07211740707dc5ffaf170496d2 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Thu, 5 Sep 2024 11:22:54 +0100 Subject: [PATCH 418/595] Minor improvements to logging in device verification (#4390) A grab-bag of small logging improvements in the Rust crypto wrapper. --- src/rust-crypto/CrossSigningIdentity.ts | 6 +++--- src/rust-crypto/PerSessionKeyBackupDownloader.ts | 5 ++--- src/rust-crypto/rust-crypto.ts | 13 ++++++------- 3 files changed, 11 insertions(+), 13 deletions(-) diff --git a/src/rust-crypto/CrossSigningIdentity.ts b/src/rust-crypto/CrossSigningIdentity.ts index 76f7189db9b..a7218d48374 100644 --- a/src/rust-crypto/CrossSigningIdentity.ts +++ b/src/rust-crypto/CrossSigningIdentity.ts @@ -140,11 +140,11 @@ export class CrossSigningIdentity { // Update 4S before uploading cross-signing keys, to stay consistent with legacy that asks // 4S passphrase before asking for account password. // Ultimately should be made atomic and resistant to forgotten password/passphrase. - logger.log("resetCrossSigning: exporting to secret storage"); - + logger.log("resetCrossSigning: exporting private keys to secret storage"); await this.exportCrossSigningKeysToStorage(); } - logger.log("resetCrossSigning: publishing keys to server"); + + logger.log("resetCrossSigning: publishing public keys to server"); for (const req of [ outgoingRequests.uploadKeysRequest, outgoingRequests.uploadSigningKeysRequest, diff --git a/src/rust-crypto/PerSessionKeyBackupDownloader.ts b/src/rust-crypto/PerSessionKeyBackupDownloader.ts index e463cbaa7d9..b33c17e1546 100644 --- a/src/rust-crypto/PerSessionKeyBackupDownloader.ts +++ b/src/rust-crypto/PerSessionKeyBackupDownloader.ts @@ -466,8 +466,6 @@ export class PerSessionKeyBackupDownloader { return null; } - const authData = currentServerVersion.auth_data as Curve25519AuthData; - const backupKeys = await this.getBackupDecryptionKey(); if (!backupKeys?.decryptionKey) { this.logger.debug(`Not checking key backup for session (no decryption key)`); @@ -483,8 +481,9 @@ export class PerSessionKeyBackupDownloader { return null; } + const authData = currentServerVersion.auth_data as Curve25519AuthData; if (authData.public_key != backupKeys.decryptionKey.megolmV1PublicKey.publicKeyBase64) { - this.logger.debug(`getBackupDecryptor key mismatch error`); + this.logger.debug(`Key backup on server does not match our decryption key`); this.hasConfigurationProblem = true; return null; } diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 2a4ba09c5eb..c43b3911c26 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -317,20 +317,19 @@ export class RustCrypto extends TypedEventEmitter): Promise { - if (backupInfo.algorithm != "m.megolm_backup.v1.curve25519-aes-sha2") { - throw new Error(`getBackupDecryptor Unsupported algorithm ${backupInfo.algorithm}`); + if (!(privKey instanceof Uint8Array)) { + throw new Error(`getBackupDecryptor: expects Uint8Array`); } - const authData = backupInfo.auth_data; - - if (!(privKey instanceof Uint8Array)) { - throw new Error(`getBackupDecryptor expects Uint8Array`); + if (backupInfo.algorithm != "m.megolm_backup.v1.curve25519-aes-sha2") { + throw new Error(`getBackupDecryptor: Unsupported algorithm ${backupInfo.algorithm}`); } const backupDecryptionKey = RustSdkCryptoJs.BackupDecryptionKey.fromBase64(encodeBase64(privKey)); + const authData = backupInfo.auth_data; if (authData.public_key != backupDecryptionKey.megolmV1PublicKey.publicKeyBase64) { - throw new Error(`getBackupDecryptor key mismatch error`); + throw new Error(`getBackupDecryptor: key backup on server does not match the decryption key`); } return this.backupManager.createBackupDecryptor(backupDecryptionKey); From ba7bd06295411fa9bf5352bb1191395a3f05c2fc Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Thu, 5 Sep 2024 14:37:08 +0100 Subject: [PATCH 419/595] Element-R: Mark unsupported MatrixClient methods as deprecated (#4389) Slap a `@deprecated` tag on all the MatrixClient methods which no longer work with rust crypto. --- src/client.ts | 82 +++++++++++++++++++++++++++++++++++---------------- 1 file changed, 57 insertions(+), 25 deletions(-) diff --git a/src/client.ts b/src/client.ts index 85a4e84f8d9..04c10ceae52 100644 --- a/src/client.ts +++ b/src/client.ts @@ -1590,6 +1590,8 @@ export class MatrixClient extends TypedEventEmitter { if (this.crypto) { @@ -1690,6 +1692,8 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { this.logger.warn("not exporting device if crypto is not enabled"); @@ -2121,6 +2128,8 @@ export class MatrixClient extends TypedEventEmitter { if (!isCryptoAvailable()) { @@ -2314,7 +2323,7 @@ export class MatrixClient extends TypedEventEmitterdeviceId-\>`DeviceInfo` * - * @deprecated Prefer {@link CryptoApi.getUserDeviceInfo} + * @deprecated Not supported for Rust Cryptography. Prefer {@link CryptoApi.getUserDeviceInfo} */ public downloadKeys(userIds: string[], forceDownload?: boolean): Promise { if (!this.crypto) { @@ -2362,7 +2371,7 @@ export class MatrixClient extends TypedEventEmitter { return this.setDeviceVerification(userId, deviceId, null, blocked, null); @@ -2447,6 +2458,8 @@ export class MatrixClient extends TypedEventEmitter { return this.setDeviceVerification(userId, deviceId, null, null, known); @@ -2474,7 +2487,7 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -2489,7 +2502,7 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -2544,7 +2557,7 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -2639,7 +2652,7 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { throw new Error("End-to-end encryption disabled"); @@ -2859,6 +2878,8 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -3040,6 +3061,7 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -3128,6 +3151,8 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -3152,6 +3177,8 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -3217,6 +3244,8 @@ export class MatrixClient extends TypedEventEmitter[], payload: object): Promise { if (!this.crypto) { @@ -3232,7 +3261,6 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -3347,7 +3375,7 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -3585,6 +3615,7 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -4035,10 +4066,6 @@ export class MatrixClient extends TypedEventEmitter; public deleteKeysFromBackup(roomId: string, sessionId: string, version?: string): Promise; public async deleteKeysFromBackup(roomId?: string, sessionId?: string, version?: string): Promise { - if (!this.crypto) { - throw new Error("End-to-end encryption disabled"); - } - const path = this.makeKeyBackupPath(roomId!, sessionId!, version); await this.http.authedRequest(Method.Delete, path.path, path.queryData, undefined, { prefix: ClientPrefix.V3 }); } @@ -4049,6 +4076,9 @@ export class MatrixClient extends TypedEventEmitter { if (!this.crypto) { @@ -7907,6 +7937,8 @@ export class MatrixClient extends TypedEventEmitter Date: Mon, 9 Sep 2024 13:06:38 +0100 Subject: [PATCH 420/595] MSC4133 - Extended profiles (#4391) * Add MSC4133 functionality. * Add MSC4133 capability. * Tidy * Add tests for extended profiles. * improve docs * undefined * Add a prefix function to reduce reptitiveness * Add a docstring --- spec/unit/matrix-client.spec.ts | 118 +++++++++++++++++++++ src/client.ts | 179 ++++++++++++++++++++++++++++++++ src/models/profile-keys.ts | 7 ++ src/serverCapabilities.ts | 3 + 4 files changed, 307 insertions(+) create mode 100644 src/models/profile-keys.ts diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index 04129ab0818..52d6a07778c 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -1029,6 +1029,124 @@ describe("MatrixClient", function () { }); }); + describe("extended profiles", () => { + const unstableMSC4133Prefix = `${ClientPrefix.Unstable}/uk.tcpip.msc4133`; + const userId = "@profile_user:example.org"; + + beforeEach(() => { + unstableFeatures["uk.tcpip.msc4133"] = true; + }); + + it("throws when unsupported by server", async () => { + unstableFeatures["uk.tcpip.msc4133"] = false; + const errorMessage = "Server does not support extended profiles"; + + await expect(client.doesServerSupportExtendedProfiles()).resolves.toEqual(false); + + await expect(client.getExtendedProfile(userId)).rejects.toThrow(errorMessage); + await expect(client.getExtendedProfileProperty(userId, "test_key")).rejects.toThrow(errorMessage); + await expect(client.setExtendedProfileProperty("test_key", "foo")).rejects.toThrow(errorMessage); + await expect(client.deleteExtendedProfileProperty("test_key")).rejects.toThrow(errorMessage); + await expect(client.patchExtendedProfile({ test_key: "foo" })).rejects.toThrow(errorMessage); + await expect(client.setExtendedProfile({ test_key: "foo" })).rejects.toThrow(errorMessage); + }); + + it("can fetch a extended user profile", async () => { + const testProfile = { + test_key: "foo", + }; + httpLookups = [ + { + method: "GET", + prefix: unstableMSC4133Prefix, + path: "/profile/" + encodeURIComponent(userId), + data: testProfile, + }, + ]; + await expect(client.getExtendedProfile(userId)).resolves.toEqual(testProfile); + expect(httpLookups).toHaveLength(0); + }); + + it("can fetch a property from a extended user profile", async () => { + const testProfile = { + test_key: "foo", + }; + httpLookups = [ + { + method: "GET", + prefix: unstableMSC4133Prefix, + path: "/profile/" + encodeURIComponent(userId) + "/test_key", + data: testProfile, + }, + ]; + await expect(client.getExtendedProfileProperty(userId, "test_key")).resolves.toEqual("foo"); + expect(httpLookups).toHaveLength(0); + }); + + it("can set a property in our extended profile", async () => { + httpLookups = [ + { + method: "PUT", + prefix: unstableMSC4133Prefix, + path: "/profile/" + encodeURIComponent(client.credentials.userId!) + "/test_key", + expectBody: { + test_key: "foo", + }, + }, + ]; + await expect(client.setExtendedProfileProperty("test_key", "foo")).resolves.toEqual(undefined); + expect(httpLookups).toHaveLength(0); + }); + + it("can delete a property in our extended profile", async () => { + httpLookups = [ + { + method: "DELETE", + prefix: unstableMSC4133Prefix, + path: "/profile/" + encodeURIComponent(client.credentials.userId!) + "/test_key", + }, + ]; + await expect(client.deleteExtendedProfileProperty("test_key")).resolves.toEqual(undefined); + expect(httpLookups).toHaveLength(0); + }); + + it("can patch our extended profile", async () => { + const testProfile = { + test_key: "foo", + }; + const patchedProfile = { + existing: "key", + test_key: "foo", + }; + httpLookups = [ + { + method: "PATCH", + prefix: unstableMSC4133Prefix, + path: "/profile/" + encodeURIComponent(client.credentials.userId!), + data: patchedProfile, + expectBody: testProfile, + }, + ]; + await expect(client.patchExtendedProfile(testProfile)).resolves.toEqual(patchedProfile); + }); + + it("can replace our extended profile", async () => { + const testProfile = { + test_key: "foo", + }; + httpLookups = [ + { + method: "PUT", + prefix: unstableMSC4133Prefix, + path: "/profile/" + encodeURIComponent(client.credentials.userId!), + data: testProfile, + expectBody: testProfile, + }, + ]; + await expect(client.setExtendedProfile(testProfile)).resolves.toEqual(undefined); + }); + }); + it("should create (unstable) file trees", async () => { const userId = "@test:example.org"; const roomId = "!room:example.org"; diff --git a/src/client.ts b/src/client.ts index 04c10ceae52..ca506caa042 100644 --- a/src/client.ts +++ b/src/client.ts @@ -544,6 +544,8 @@ export const UNSTABLE_MSC2666_QUERY_MUTUAL_ROOMS = "uk.half-shot.msc2666.query_m export const UNSTABLE_MSC4140_DELAYED_EVENTS = "org.matrix.msc4140"; +export const UNSTABLE_MSC4133_EXTENDED_PROFILES = "uk.tcpip.msc4133"; + enum CrossSigningKeyType { MasterKey = "master_key", SelfSigningKey = "self_signing_key", @@ -8806,6 +8808,183 @@ export class MatrixClient extends TypedEventEmitter { + return this.doesServerSupportUnstableFeature(UNSTABLE_MSC4133_EXTENDED_PROFILES); + } + + /** + * Get the prefix used for extended profile requests. + * + * @returns The prefix for use with `authedRequest` + */ + private async getExtendedProfileRequestPrefix(): Promise { + if (await this.doesServerSupportUnstableFeature("uk.tcpip.msc4133.stable")) { + return ClientPrefix.V3; + } + return "/_matrix/client/unstable/uk.tcpip.msc4133"; + } + + /** + * Fetch a user's *extended* profile, which may include additonal keys. + * + * @see https://github.com/tcpipuk/matrix-spec-proposals/blob/main/proposals/4133-extended-profiles.md + * @param userId The user ID to fetch the profile of. + * @returns A set of keys to property values. + * + * @throws An error if the server does not support MSC4133. + * @throws A M_NOT_FOUND error if the profile could not be found. + */ + public async getExtendedProfile(userId: string): Promise> { + if (!(await this.doesServerSupportExtendedProfiles())) { + throw new Error("Server does not support extended profiles"); + } + return this.http.authedRequest( + Method.Get, + utils.encodeUri("/profile/$userId", { $userId: userId }), + undefined, + undefined, + { + prefix: await this.getExtendedProfileRequestPrefix(), + }, + ); + } + + /** + * Fetch a specific key from the user's *extended* profile. + * + * @see https://github.com/tcpipuk/matrix-spec-proposals/blob/main/proposals/4133-extended-profiles.md + * @param userId The user ID to fetch the profile of. + * @param key The key of the property to fetch. + * @returns The property value. + * + * @throws An error if the server does not support MSC4133. + * @throws A M_NOT_FOUND error if the key was not set OR the profile could not be found. + */ + public async getExtendedProfileProperty(userId: string, key: string): Promise { + if (!(await this.doesServerSupportExtendedProfiles())) { + throw new Error("Server does not support extended profiles"); + } + const profile = (await this.http.authedRequest( + Method.Get, + utils.encodeUri("/profile/$userId/$key", { $userId: userId, $key: key }), + undefined, + undefined, + { + prefix: await this.getExtendedProfileRequestPrefix(), + }, + )) as Record; + return profile[key]; + } + + /** + * Set a property on your *extended* profile. + * + * @see https://github.com/tcpipuk/matrix-spec-proposals/blob/main/proposals/4133-extended-profiles.md + * @param key The key of the property to set. + * @param value The value to set on the propety. + * + * @throws An error if the server does not support MSC4133 OR the server disallows editing the user profile. + */ + public async setExtendedProfileProperty(key: string, value: unknown): Promise { + if (!(await this.doesServerSupportExtendedProfiles())) { + throw new Error("Server does not support extended profiles"); + } + const userId = this.getUserId(); + + await this.http.authedRequest( + Method.Put, + utils.encodeUri("/profile/$userId/$key", { $userId: userId, $key: key }), + undefined, + { [key]: value }, + { + prefix: await this.getExtendedProfileRequestPrefix(), + }, + ); + } + + /** + * Delete a property on your *extended* profile. + * + * @see https://github.com/tcpipuk/matrix-spec-proposals/blob/main/proposals/4133-extended-profiles.md + * @param key The key of the property to delete. + * + * @throws An error if the server does not support MSC4133 OR the server disallows editing the user profile. + */ + public async deleteExtendedProfileProperty(key: string): Promise { + if (!(await this.doesServerSupportExtendedProfiles())) { + throw new Error("Server does not support extended profiles"); + } + const userId = this.getUserId(); + + await this.http.authedRequest( + Method.Delete, + utils.encodeUri("/profile/$userId/$key", { $userId: userId, $key: key }), + undefined, + undefined, + { + prefix: await this.getExtendedProfileRequestPrefix(), + }, + ); + } + + /** + * Update multiple properties on your *extended* profile. This will + * merge with any existing keys. + * + * @see https://github.com/tcpipuk/matrix-spec-proposals/blob/main/proposals/4133-extended-profiles.md + * @param profile The profile object to merge with the existing profile. + * @returns The newly merged profile. + * + * @throws An error if the server does not support MSC4133 OR the server disallows editing the user profile. + */ + public async patchExtendedProfile(profile: Record): Promise> { + if (!(await this.doesServerSupportExtendedProfiles())) { + throw new Error("Server does not support extended profiles"); + } + const userId = this.getUserId(); + + return this.http.authedRequest( + Method.Patch, + utils.encodeUri("/profile/$userId", { $userId: userId }), + {}, + profile, + { + prefix: await this.getExtendedProfileRequestPrefix(), + }, + ); + } + + /** + * Set multiple properties on your *extended* profile. This will completely + * replace the existing profile, removing any unspecified keys. + * + * @see https://github.com/tcpipuk/matrix-spec-proposals/blob/main/proposals/4133-extended-profiles.md + * @param profile The profile object to set. + * + * @throws An error if the server does not support MSC4133 OR the server disallows editing the user profile. + */ + public async setExtendedProfile(profile: Record): Promise { + if (!(await this.doesServerSupportExtendedProfiles())) { + throw new Error("Server does not support extended profiles"); + } + const userId = this.getUserId(); + + await this.http.authedRequest( + Method.Put, + utils.encodeUri("/profile/$userId", { $userId: userId }), + {}, + profile, + { + prefix: await this.getExtendedProfileRequestPrefix(), + }, + ); + } + /** * @returns Promise which resolves to a list of the user's threepids. * @returns Rejects: with an error response. diff --git a/src/models/profile-keys.ts b/src/models/profile-keys.ts new file mode 100644 index 00000000000..d496653cb97 --- /dev/null +++ b/src/models/profile-keys.ts @@ -0,0 +1,7 @@ +/** + * The timezone the user is currently in. The value of this property should + * match a timezone provided in https://www.iana.org/time-zones. + * + * @see https://github.com/matrix-org/matrix-spec-proposals/blob/clokep/profile-tz/proposals/4175-profile-field-time-zone.md + */ +export const ProfileKeyMSC4175Timezone = "us.cloke.msc4175.tz"; diff --git a/src/serverCapabilities.ts b/src/serverCapabilities.ts index c23c9c72e92..f477ce399cd 100644 --- a/src/serverCapabilities.ts +++ b/src/serverCapabilities.ts @@ -38,6 +38,8 @@ export interface ISetDisplayNameCapability extends ICapability {} export interface ISetAvatarUrlCapability extends ICapability {} +export interface IProfileFieldsCapability extends ICapability {} + export enum RoomVersionStability { Stable = "stable", Unstable = "unstable", @@ -61,6 +63,7 @@ export interface Capabilities { "org.matrix.msc3882.get_login_token"?: IGetLoginTokenCapability; "m.set_displayname"?: ISetDisplayNameCapability; "m.set_avatar_url"?: ISetAvatarUrlCapability; + "uk.tcpip.msc4133.profile_fields"?: IProfileFieldsCapability; } type CapabilitiesResponse = { From 593a57fc2bb1131350da7e7c8304a076665bcc5a Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 10 Sep 2024 12:30:54 +0000 Subject: [PATCH 421/595] v34.5.0 --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3987506cceb..d85bce05a0c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +Changes in [34.5.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.5.0) (2024-09-10) +================================================================================================== +## 🦖 Deprecations + +* Deprecate unused callback hooks `CryptoCallbacks.onSecretRequested` and `CryptoCallbacks.getDehydrationKey` ([#4376](https://github.com/matrix-org/matrix-js-sdk/pull/4376)). Contributed by @richvdh. + + Changes in [34.4.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.4.0) (2024-08-27) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index dcbb71120b2..93b5d36f183 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.5.0-rc.0", + "version": "34.5.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From ed445149740231134d734cb411e13cb120cdb55b Mon Sep 17 00:00:00 2001 From: Robin Date: Tue, 10 Sep 2024 16:15:07 -0400 Subject: [PATCH 422/595] Expose the event ID of a call membership (#4395) This is in line with the other information we're already exposing, such as the event's sender and timestamp. We want this in order to play around with adding reactions to the membership event. --- src/matrixrtc/CallMembership.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/matrixrtc/CallMembership.ts b/src/matrixrtc/CallMembership.ts index 495ce1c4947..6c7efc029d6 100644 --- a/src/matrixrtc/CallMembership.ts +++ b/src/matrixrtc/CallMembership.ts @@ -128,6 +128,10 @@ export class CallMembership { return this.parentEvent.getSender(); } + public get eventId(): string | undefined { + return this.parentEvent.getId(); + } + public get callId(): string { return this.membershipData.call_id; } From 60cedf2fdbe22951389e55c7e766785137a19d8c Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Wed, 11 Sep 2024 15:13:12 +0100 Subject: [PATCH 423/595] Improve documentation on `{encrypt,decrypt}AES` (#4397) --- src/crypto/aes.ts | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/src/crypto/aes.ts b/src/crypto/aes.ts index 6c6779d0611..2fc32aec412 100644 --- a/src/crypto/aes.ts +++ b/src/crypto/aes.ts @@ -30,12 +30,17 @@ export interface IEncryptedPayload { } /** - * encrypt a string + * Encrypt a string using AES-CTR. * * @param data - the plaintext to encrypt - * @param key - the encryption key to use - * @param name - the name of the secret - * @param ivStr - the initialization vector to use + * @param key - the encryption key to use as an input to the HKDF function which is used to derive the AES key for + * encryption. Obviously, the same key must be provided when decrypting. + * @param name - the name of the secret. Used as an input to the HKDF operation which is used to derive the AES key, + * so again the same value must be provided when decrypting. + * @param ivStr - the base64-encoded initialization vector to use. If not supplied, a random one will be generated. + * + * @returns The encrypted result, including the ciphertext itself, the initialization vector (as supplied in `ivStr`, + * or generated), and an HMAC on the ciphertext — all base64-encoded. */ export async function encryptAES( data: string, @@ -79,11 +84,13 @@ export async function encryptAES( } /** - * decrypt a string + * Decrypt an AES-encrypted string. * - * @param data - the encrypted data - * @param key - the encryption key to use - * @param name - the name of the secret + * @param data - the encrypted data, returned by {@link encryptAES}. + * @param key - the encryption key to use as an input to the HKDF function which is used to derive the AES key. Must + * be the same as provided to {@link encryptAES}. + * @param name - the name of the secret. Also used as an input to the HKDF operation which is used to derive the AES + * key, so again must be the same as provided to {@link encryptAES}. */ export async function decryptAES(data: IEncryptedPayload, key: Uint8Array, name: string): Promise { const [aesKey, hmacKey] = await deriveKeys(key, name); From 7987ce76ec701b97f622bcdda0f05ee10657ce68 Mon Sep 17 00:00:00 2001 From: Hubert Chathi Date: Fri, 13 Sep 2024 05:22:33 -0400 Subject: [PATCH 424/595] Bump dependency on rust-sdk-crypto-wasm to v8.0.0 (#4396) --- package.json | 2 +- src/rust-crypto/RoomEncryptor.ts | 4 ++-- src/rust-crypto/rust-crypto.ts | 1 + yarn.lock | 8 ++++---- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index bde34a1487d..6680f069d34 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^7.0.0", + "@matrix-org/matrix-sdk-crypto-wasm": "^8.0.0", "@matrix-org/olm": "3.2.15", "another-json": "^0.2.0", "bs58": "^6.0.0", diff --git a/src/rust-crypto/RoomEncryptor.ts b/src/rust-crypto/RoomEncryptor.ts index 3b6a6c80cc0..fcda295eb89 100644 --- a/src/rust-crypto/RoomEncryptor.ts +++ b/src/rust-crypto/RoomEncryptor.ts @@ -254,9 +254,9 @@ export class RoomEncryptor { // When this.room.getBlacklistUnverifiedDevices() === null, the global settings should be used // See Room#getBlacklistUnverifiedDevices if (this.room.getBlacklistUnverifiedDevices() ?? globalBlacklistUnverifiedDevices) { - rustEncryptionSettings.sharingStrategy = CollectStrategy.DeviceBasedStrategyOnlyTrustedDevices; + rustEncryptionSettings.sharingStrategy = CollectStrategy.deviceBasedStrategy(true, false); } else { - rustEncryptionSettings.sharingStrategy = CollectStrategy.DeviceBasedStrategyAllDevices; + rustEncryptionSettings.sharingStrategy = CollectStrategy.deviceBasedStrategy(false, false); } await logDuration(this.prefixedLogger, "shareRoomKey", async () => { diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index c43b3911c26..c1d1c8424d5 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -1741,6 +1741,7 @@ class EventDecryptor { const res = (await this.olmMachine.decryptRoomEvent( stringifyEvent(event), new RustSdkCryptoJs.RoomId(event.getRoomId()!), + new RustSdkCryptoJs.DecryptionSettings(RustSdkCryptoJs.TrustRequirement.Untrusted), )) as RustSdkCryptoJs.DecryptedRoomEvent; // Success. We can remove the event from the pending list, if diff --git a/yarn.lock b/yarn.lock index ef354a7116e..643111f73a3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1453,10 +1453,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@matrix-org/matrix-sdk-crypto-wasm@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-7.0.0.tgz#8d6abdb9ded8656cc9e2a7909913a34bf3fc9b3a" - integrity sha512-MOencXiW/gI5MuTtCNsuojjwT5DXCrjMqv9xOslJC9h2tPdLFFFMGr58dY5Lis4DRd9MRWcgrGowUIHOqieWTA== +"@matrix-org/matrix-sdk-crypto-wasm@^8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-8.0.0.tgz#6ddc0e63538e821a2efbc5c1a2f0fa0f71d489ff" + integrity sha512-s0q3O2dK8b6hOJ+SZFz+s/IiMabmVsNue6r17sTwbrRD8liBkCrpjYnxoMYvtC01GggJ9TZLQbeqpt8hQSPHAg== "@matrix-org/olm@3.2.15": version "3.2.15" From febe27ddcc6d0858a95b619e3de0c02f4ad11e41 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Fri, 13 Sep 2024 15:03:31 +0200 Subject: [PATCH 425/595] Replace `matrix.org/matrix-react-sdk` by `element-hq/matrix-react-sdk` (#4404) --- .github/workflows/downstream-end-to-end-tests.yml | 4 ++-- .github/workflows/notify-downstream.yaml | 2 +- .github/workflows/release.yml | 2 +- .github/workflows/tests.yml | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/downstream-end-to-end-tests.yml b/.github/workflows/downstream-end-to-end-tests.yml index 245b2c507db..44e76748db9 100644 --- a/.github/workflows/downstream-end-to-end-tests.yml +++ b/.github/workflows/downstream-end-to-end-tests.yml @@ -21,14 +21,14 @@ concurrency: jobs: playwright: name: Playwright - uses: matrix-org/matrix-react-sdk/.github/workflows/end-to-end-tests.yaml@develop + uses: element-hq/matrix-react-sdk/.github/workflows/end-to-end-tests.yaml@develop permissions: actions: read issues: read pull-requests: read with: matrix-js-sdk-sha: ${{ github.sha }} - react-sdk-repository: matrix-org/matrix-react-sdk + react-sdk-repository: element-hq/matrix-react-sdk # We only want to run the playwright tests on merge queue to prevent regressions # from creeping in. They take a long time to run and consume multiple concurrent runners. skip: ${{ github.event_name != 'merge_group' }} diff --git a/.github/workflows/notify-downstream.yaml b/.github/workflows/notify-downstream.yaml index 8de5da70dcd..d59a74ce65c 100644 --- a/.github/workflows/notify-downstream.yaml +++ b/.github/workflows/notify-downstream.yaml @@ -14,7 +14,7 @@ jobs: include: - repo: element-hq/element-web event: element-web-notify - - repo: matrix-org/matrix-react-sdk + - repo: element-hq/matrix-react-sdk event: upstream-sdk-notify runs-on: ubuntu-latest diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index cdd54d29c78..057156a8b88 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -28,7 +28,7 @@ jobs: with: final: ${{ inputs.mode == 'final' }} npm: ${{ inputs.npm }} - downstreams: '["matrix-org/matrix-react-sdk", "element-hq/element-web"]' + downstreams: '["element-hq/matrix-react-sdk", "element-hq/element-web"]' docs: name: Publish Documentation diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index dc8adca6d26..21316ded268 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -76,7 +76,7 @@ jobs: matrix-react-sdk: name: Downstream test matrix-react-sdk if: github.event_name == 'merge_group' - uses: matrix-org/matrix-react-sdk/.github/workflows/tests.yml@develop + uses: element-hq/matrix-react-sdk/.github/workflows/tests.yml@develop with: disable_coverage: true matrix-js-sdk-sha: ${{ github.sha }} From 8cf5df73ee0f889956f597e1a344f20b3b79e52a Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Fri, 13 Sep 2024 15:26:30 +0200 Subject: [PATCH 426/595] Move `crypto/recoverykey.ts` to `crypto-api/recovery-key.ts` (#4399) * Move `crypto/recoverykey.ts` to `crypto-api/recovery-key.ts` * Re-export `crypto-api/recovery-key` into `crypto/recoverykey` * Add a bit of doc * Deprecate `MatrixClient.isValidRecoveryKey` and `MatrixClient.keyBackupKeyFromRecoveryKey` * Import `index.ts` directly * Update `recovery-key.ts` doc * Add tests for `decodeRecoveryKey` * Move `recovery-key.spec.ts` file --- spec/unit/crypto-api/recovery-key.spec.ts | 44 +++++++++++++++ src/client.ts | 16 +++++- src/crypto-api/index.ts | 1 + src/crypto-api/recovery-key.ts | 69 +++++++++++++++++++++++ src/crypto/backup.ts | 2 +- src/crypto/index.ts | 3 +- src/crypto/recoverykey.ts | 47 +-------------- src/rust-crypto/rust-crypto.ts | 2 +- 8 files changed, 134 insertions(+), 50 deletions(-) create mode 100644 spec/unit/crypto-api/recovery-key.spec.ts create mode 100644 src/crypto-api/recovery-key.ts diff --git a/spec/unit/crypto-api/recovery-key.spec.ts b/spec/unit/crypto-api/recovery-key.spec.ts new file mode 100644 index 00000000000..c488b7d06fe --- /dev/null +++ b/spec/unit/crypto-api/recovery-key.spec.ts @@ -0,0 +1,44 @@ +/* + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { decodeRecoveryKey, encodeRecoveryKey } from "../../../src/crypto-api"; + +describe("recovery key", () => { + describe("decodeRecoveryKey", () => { + it("should thrown an incorrect length error", () => { + const key = [0, 1]; + const encodedKey = encodeRecoveryKey(key)!; + + expect(() => decodeRecoveryKey(encodedKey)).toThrow("Incorrect length"); + }); + + it("should thrown an incorrect parity", () => { + const key = Array.from({ length: 32 }, (_, i) => i); + let encodedKey = encodeRecoveryKey(key)!; + // Mutate the encoded key to have incorrect parity + encodedKey = encodedKey.replace("EsSz", "EsSZ"); + + expect(() => decodeRecoveryKey(encodedKey!)).toThrow("Incorrect parity"); + }); + + it("should decode a valid encoded key", () => { + const key = Array.from({ length: 32 }, (_, i) => i); + const encodedKey = encodeRecoveryKey(key)!; + + expect(decodeRecoveryKey(encodedKey)).toEqual(new Uint8Array(key)); + }); + }); +}); diff --git a/src/client.ts b/src/client.ts index ca506caa042..6746e505bcd 100644 --- a/src/client.ts +++ b/src/client.ts @@ -85,7 +85,6 @@ import { isCryptoAvailable, } from "./crypto/index.ts"; import { DeviceInfo } from "./crypto/deviceinfo.ts"; -import { decodeRecoveryKey } from "./crypto/recoverykey.ts"; import { keyFromAuthData } from "./crypto/key_passphrase.ts"; import { User, UserEvent, UserEventHandlerMap } from "./models/user.ts"; import { getHttpUriForMxc } from "./content-repo.ts"; @@ -223,7 +222,13 @@ import { LocalNotificationSettings } from "./@types/local_notifications.ts"; import { buildFeatureSupportMap, Feature, ServerSupport } from "./feature.ts"; import { BackupDecryptor, CryptoBackend } from "./common-crypto/CryptoBackend.ts"; import { RUST_SDK_STORE_PREFIX } from "./rust-crypto/constants.ts"; -import { BootstrapCrossSigningOpts, CrossSigningKeyInfo, CryptoApi, ImportRoomKeysOpts } from "./crypto-api/index.ts"; +import { + BootstrapCrossSigningOpts, + CrossSigningKeyInfo, + CryptoApi, + decodeRecoveryKey, + ImportRoomKeysOpts, +} from "./crypto-api/index.ts"; import { DeviceInfoMap } from "./crypto/DeviceList.ts"; import { AddSecretStorageKeyOpts, @@ -3627,6 +3632,12 @@ export class MatrixClient extends TypedEventEmitter): string | undefined { + const buf = Buffer.alloc(OLM_RECOVERY_KEY_PREFIX.length + key.length + 1); + buf.set(OLM_RECOVERY_KEY_PREFIX, 0); + buf.set(key, OLM_RECOVERY_KEY_PREFIX.length); + + let parity = 0; + for (let i = 0; i < buf.length - 1; ++i) { + parity ^= buf[i]; + } + buf[buf.length - 1] = parity; + const base58key = bs58.encode(buf); + + return base58key.match(/.{1,4}/g)?.join(" "); +} + +/** + * Decode a recovery key encoded with the Matrix {@link https://spec.matrix.org/v1.11/appendices/#cryptographic-key-representation | Cryptographic key representation} encoding. + * @param recoveryKey + */ +export function decodeRecoveryKey(recoveryKey: string): Uint8Array { + const result = bs58.decode(recoveryKey.replace(/ /g, "")); + + let parity = 0; + for (const b of result) { + parity ^= b; + } + if (parity !== 0) { + throw new Error("Incorrect parity"); + } + + for (let i = 0; i < OLM_RECOVERY_KEY_PREFIX.length; ++i) { + if (result[i] !== OLM_RECOVERY_KEY_PREFIX[i]) { + throw new Error("Incorrect prefix"); + } + } + + if (result.length !== OLM_RECOVERY_KEY_PREFIX.length + KEY_SIZE + 1) { + throw new Error("Incorrect length"); + } + + return Uint8Array.from(result.slice(OLM_RECOVERY_KEY_PREFIX.length, OLM_RECOVERY_KEY_PREFIX.length + KEY_SIZE)); +} diff --git a/src/crypto/backup.ts b/src/crypto/backup.ts index 3ac6a3ddc0b..2dc374f9868 100644 --- a/src/crypto/backup.ts +++ b/src/crypto/backup.ts @@ -27,7 +27,6 @@ import { DeviceTrustLevel } from "./CrossSigning.ts"; import { keyFromPassphrase } from "./key_passphrase.ts"; import { encodeUri, safeSet, sleep } from "../utils.ts"; import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store.ts"; -import { encodeRecoveryKey } from "./recoverykey.ts"; import { calculateKeyCheck, decryptAES, encryptAES, IEncryptedPayload } from "./aes.ts"; import { Curve25519SessionData, @@ -41,6 +40,7 @@ import { CryptoEvent } from "./index.ts"; import { ClientPrefix, HTTPError, MatrixError, Method } from "../http-api/index.ts"; import { BackupTrustInfo } from "../crypto-api/keybackup.ts"; import { BackupDecryptor } from "../common-crypto/CryptoBackend.ts"; +import { encodeRecoveryKey } from "../crypto-api/index.ts"; const KEY_BACKUP_KEYS_PER_REQUEST = 200; const KEY_BACKUP_CHECK_RATE_LIMIT = 5000; // ms diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 420160c0de4..d72e41a6e3d 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -42,7 +42,6 @@ import { VerificationBase } from "./verification/Base.ts"; import { ReciprocateQRCode, SCAN_QR_CODE_METHOD, SHOW_QR_CODE_METHOD } from "./verification/QRCode.ts"; import { SAS as SASVerification } from "./verification/SAS.ts"; import { keyFromPassphrase } from "./key_passphrase.ts"; -import { decodeRecoveryKey, encodeRecoveryKey } from "./recoverykey.ts"; import { VerificationRequest } from "./verification/request/VerificationRequest.ts"; import { InRoomChannel, InRoomRequests } from "./verification/request/InRoomChannel.ts"; import { Request, ToDeviceChannel, ToDeviceRequests } from "./verification/request/ToDeviceChannel.ts"; @@ -89,8 +88,10 @@ import { BootstrapCrossSigningOpts, CrossSigningKeyInfo, CrossSigningStatus, + decodeRecoveryKey, DecryptionFailureCode, DeviceVerificationStatus, + encodeRecoveryKey, EventEncryptionInfo, EventShieldColour, EventShieldReason, diff --git a/src/crypto/recoverykey.ts b/src/crypto/recoverykey.ts index 3d7c12d4acf..6ce5d3f07e6 100644 --- a/src/crypto/recoverykey.ts +++ b/src/crypto/recoverykey.ts @@ -14,48 +14,5 @@ See the License for the specific language governing permissions and limitations under the License. */ -import bs58 from "bs58"; - -// picked arbitrarily but to try & avoid clashing with any bitcoin ones -// (which are also base58 encoded, but bitcoin's involve a lot more hashing) -const OLM_RECOVERY_KEY_PREFIX = [0x8b, 0x01]; -const KEY_SIZE = 32; - -export function encodeRecoveryKey(key: ArrayLike): string | undefined { - const buf = Buffer.alloc(OLM_RECOVERY_KEY_PREFIX.length + key.length + 1); - buf.set(OLM_RECOVERY_KEY_PREFIX, 0); - buf.set(key, OLM_RECOVERY_KEY_PREFIX.length); - - let parity = 0; - for (let i = 0; i < buf.length - 1; ++i) { - parity ^= buf[i]; - } - buf[buf.length - 1] = parity; - const base58key = bs58.encode(buf); - - return base58key.match(/.{1,4}/g)?.join(" "); -} - -export function decodeRecoveryKey(recoveryKey: string): Uint8Array { - const result = bs58.decode(recoveryKey.replace(/ /g, "")); - - let parity = 0; - for (const b of result) { - parity ^= b; - } - if (parity !== 0) { - throw new Error("Incorrect parity"); - } - - for (let i = 0; i < OLM_RECOVERY_KEY_PREFIX.length; ++i) { - if (result[i] !== OLM_RECOVERY_KEY_PREFIX[i]) { - throw new Error("Incorrect prefix"); - } - } - - if (result.length !== OLM_RECOVERY_KEY_PREFIX.length + KEY_SIZE + 1) { - throw new Error("Incorrect length"); - } - - return Uint8Array.from(result.slice(OLM_RECOVERY_KEY_PREFIX.length, OLM_RECOVERY_KEY_PREFIX.length + KEY_SIZE)); -} +// Re-export to avoid breaking changes +export * from "../crypto-api/recovery-key.ts"; diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index c1d1c8424d5..45d63dd820a 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -58,6 +58,7 @@ import { OwnDeviceKeys, UserVerificationStatus, VerificationRequest, + encodeRecoveryKey, } from "../crypto-api/index.ts"; import { deviceKeysToDeviceMap, rustDeviceToJsDevice } from "./device-converter.ts"; import { IDownloadKeyResult, IQueryKeysRequest } from "../client.ts"; @@ -66,7 +67,6 @@ import { SECRET_STORAGE_ALGORITHM_V1_AES, ServerSideSecretStorage } from "../sec import { CrossSigningIdentity } from "./CrossSigningIdentity.ts"; import { secretStorageCanAccessSecrets, secretStorageContainsCrossSigningKeys } from "./secret-storage.ts"; import { keyFromPassphrase } from "../crypto/key_passphrase.ts"; -import { encodeRecoveryKey } from "../crypto/recoverykey.ts"; import { isVerificationEvent, RustVerificationRequest, verificationMethodIdentifierToMethod } from "./verification.ts"; import { EventType, MsgType } from "../@types/event.ts"; import { CryptoEvent } from "../crypto/index.ts"; From c8403f39aa0d9f93ab11a45abe6c8a0976db1afc Mon Sep 17 00:00:00 2001 From: Johannes Marbach Date: Fri, 13 Sep 2024 17:35:45 +0200 Subject: [PATCH 427/595] Fix build failure in node.js example (#4394) * Fix node.js example Relates to: element-hq/element-web#26922 Signed-off-by: Johannes Marbach * Update examples/node/app.js Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Update examples/node/package.json Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Move imports to the top of the file --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- examples/node/app.js | 27 ++++++++++++++++----------- examples/node/package.json | 3 ++- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/examples/node/app.js b/examples/node/app.js index 5e48e26c404..8f38c34cdbe 100644 --- a/examples/node/app.js +++ b/examples/node/app.js @@ -1,9 +1,15 @@ +import clc from "cli-color"; +import fs from "fs"; +import readline from "readline"; +import sdk, { ClientEvent, EventType, MsgType, RoomEvent } from "matrix-js-sdk"; +import { KnownMembership } from "matrix-js-sdk/lib/@types/membership.js"; + +var myHomeServer = "http://localhost:8008"; var myUserId = "@example:localhost"; var myAccessToken = "QGV4YW1wbGU6bG9jYWxob3N0.qPEvLuYfNBjxikiCjP"; -var sdk = require("matrix-js-sdk"); -var clc = require("cli-color"); + var matrixClient = sdk.createClient({ - baseUrl: "http://localhost:8008", + baseUrl: myHomeServer, accessToken: myAccessToken, userId: myUserId, }); @@ -15,7 +21,6 @@ var numMessagesToShow = 20; // Reading from stdin var CLEAR_CONSOLE = "\x1B[2J"; -var readline = require("readline"); var rl = readline.createInterface({ input: process.stdin, output: process.stdout, @@ -97,7 +102,7 @@ rl.on("line", function (line) { }) .then(function (url) { var content = { - msgtype: "m.file", + msgtype: MsgType.File, body: filename, url: JSON.parse(url).content_uri, }; @@ -138,7 +143,7 @@ rl.on("line", function (line) { // ==== END User input // show the room list after syncing. -matrixClient.on("sync", function (state, prevState, data) { +matrixClient.on(ClientEvent.Sync, function (state, prevState, data) { switch (state) { case "PREPARED": setRoomList(); @@ -149,7 +154,7 @@ matrixClient.on("sync", function (state, prevState, data) { } }); -matrixClient.on("Room", function () { +matrixClient.on(ClientEvent.Room, function () { setRoomList(); if (!viewingRoom) { printRoomList(); @@ -158,7 +163,7 @@ matrixClient.on("Room", function () { }); // print incoming messages. -matrixClient.on("Room.timeline", function (event, room, toStartOfTimeline) { +matrixClient.on(RoomEvent.Timeline, function (event, room, toStartOfTimeline) { if (toStartOfTimeline) { return; // don't print paginated results } @@ -305,7 +310,7 @@ function printRoomInfo(room) { print(eTypeHeader + sendHeader + contentHeader); print(new Array(100).join("-")); eventMap.keys().forEach(function (eventType) { - if (eventType === "m.room.member") { + if (eventType === EventType.RoomMember) { return; } // use /members instead. var eventEventMap = eventMap.get(eventType); @@ -343,7 +348,7 @@ function printLine(event) { name = name.slice(0, maxNameWidth - 1) + "\u2026"; } - if (event.getType() === "m.room.message") { + if (event.getType() === EventType.RoomMessage) { body = event.getContent().body; } else if (event.isState()) { var stateName = event.getType(); @@ -394,4 +399,4 @@ function fixWidth(str, len) { return str; } -matrixClient.startClient(numMessagesToShow); // messages for each room. +matrixClient.startClient({ initialSyncLimit: numMessagesToShow }); diff --git a/examples/node/package.json b/examples/node/package.json index 130fad9214e..df42d05121b 100644 --- a/examples/node/package.json +++ b/examples/node/package.json @@ -5,8 +5,9 @@ "main": "app.js", "author": "", "license": "Apache 2.0", + "type": "module", "dependencies": { "cli-color": "^1.0.0", - "matrix-js-sdk": "^32.0.0" + "matrix-js-sdk": "^34.5.0" } } From 17f6cc733eb5c0abf6da9d586c21b182c626bf3a Mon Sep 17 00:00:00 2001 From: Timo <16718859+toger5@users.noreply.github.com> Date: Fri, 13 Sep 2024 18:07:44 +0200 Subject: [PATCH 428/595] Fix redact sending over in embedded (widget) mode (#4398) --- src/embedded.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/embedded.ts b/src/embedded.ts index 1974ea9f98e..6e5efc67b28 100644 --- a/src/embedded.ts +++ b/src/embedded.ts @@ -291,11 +291,17 @@ export class RoomWidgetClient extends MatrixClient { event: MatrixEvent, delayOpts?: SendDelayedEventRequestOpts, ): Promise { + // We need to extend the content with the redacts parameter + // The js sdk uses event.redacts but the widget api uses event.content.redacts + // This will be converted back to event.redacts in the widget driver. + const content = event.event.redacts + ? { ...event.getContent(), redacts: event.event.redacts } + : event.getContent(); if (delayOpts) { // TODO: updatePendingEvent for delayed events? const response = await this.widgetApi.sendRoomEvent( event.getType(), - event.getContent(), + content, room.roomId, "delay" in delayOpts ? delayOpts.delay : undefined, "parent_delay_id" in delayOpts ? delayOpts.parent_delay_id : undefined, @@ -305,7 +311,7 @@ export class RoomWidgetClient extends MatrixClient { let response: ISendEventFromWidgetResponseData; try { - response = await this.widgetApi.sendRoomEvent(event.getType(), event.getContent(), room.roomId); + response = await this.widgetApi.sendRoomEvent(event.getType(), content, room.roomId); } catch (e) { this.updatePendingEventStatus(room, event, EventStatus.NOT_SENT); throw e; From 53b599f8fe2a152ed90e4f238d09dbde42719635 Mon Sep 17 00:00:00 2001 From: Johannes Marbach Date: Sat, 14 Sep 2024 12:44:51 +0200 Subject: [PATCH 429/595] Export membership types (#4405) Signed-off-by: Johannes Marbach --- src/matrix.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/matrix.ts b/src/matrix.ts index cac7c91fd21..7727470404f 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -76,6 +76,7 @@ export * from "./@types/read_receipts.ts"; export * from "./@types/crypto.ts"; export * from "./@types/extensible_events.ts"; export * from "./@types/IIdentityServerProvider.ts"; +export * from "./@types/membership.ts"; export * from "./models/room-summary.ts"; export * from "./models/event-status.ts"; export type { RoomSummary } from "./client.ts"; From fab9cab3df0622b5b9d3e047a05b6bd93431077e Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Tue, 17 Sep 2024 15:05:47 +0200 Subject: [PATCH 430/595] Move `crypto/key_passphrase.ts` to `crypto-api/key-passphrase.ts` (#4401) * Move `crypto/key_passphrase.ts` to `crypto-api/key-passphrase.ts` * Re-export `crypto-api/key-passphrase` into `crypto/key_passphrase.ts` * Add doc * Deprecate `MatrixClient.keyBackupKeyFromPassword` * Move `keyFromAuthData` to `common-crypto/key-passphrase.ts` * Fix faulty import * Keep `keyFromPassphrase` in old crypto * - Rename `deriveKey` into `deriveRecoveryKeyFromPassphrase` - Call `deriveRecoveryKeyFromPassphrase` into `RustCrypto.createRecoveryKeyFromPassphrase` instead of using `keyFromPassphrase` * Remove alternative in `keyBackupKeyFromPassword` deprecation. * Add tests for `keyFromAuthData` * Deprecate `keyFromAuthData` * Review changes --- .../unit/common-crypto/key-passphrase.spec.ts | 38 +++++++++++ src/client.ts | 3 +- src/common-crypto/key-passphrase.ts | 43 ++++++++++++ src/crypto-api/index.ts | 1 + src/crypto-api/key-passphrase.ts | 58 ++++++++++++++++ src/crypto/key_passphrase.ts | 66 +++---------------- src/rust-crypto/rust-crypto.ts | 24 +++++-- 7 files changed, 170 insertions(+), 63 deletions(-) create mode 100644 spec/unit/common-crypto/key-passphrase.spec.ts create mode 100644 src/common-crypto/key-passphrase.ts create mode 100644 src/crypto-api/key-passphrase.ts diff --git a/spec/unit/common-crypto/key-passphrase.spec.ts b/spec/unit/common-crypto/key-passphrase.spec.ts new file mode 100644 index 00000000000..933b5f1834c --- /dev/null +++ b/spec/unit/common-crypto/key-passphrase.spec.ts @@ -0,0 +1,38 @@ +/* + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { keyFromAuthData } from "../../../src/common-crypto/key-passphrase.ts"; + +describe("key-passphrase", () => { + describe("keyFromAuthData", () => { + it("should throw an error if salt or iterations are missing", async () => { + // missing salt + expect(() => keyFromAuthData({ private_key_iterations: 5 }, "passphrase")).toThrow( + "Salt and/or iterations not found: this backup cannot be restored with a passphrase", + ); + + // missing iterations + expect(() => keyFromAuthData({ private_key_salt: "salt" }, "passphrase")).toThrow( + "Salt and/or iterations not found: this backup cannot be restored with a passphrase", + ); + }); + + it("should derive key from auth data", async () => { + const key = await keyFromAuthData({ private_key_salt: "salt", private_key_iterations: 5 }, "passphrase"); + expect(key).toBeDefined(); + }); + }); +}); diff --git a/src/client.ts b/src/client.ts index 6746e505bcd..9273281a076 100644 --- a/src/client.ts +++ b/src/client.ts @@ -85,7 +85,6 @@ import { isCryptoAvailable, } from "./crypto/index.ts"; import { DeviceInfo } from "./crypto/deviceinfo.ts"; -import { keyFromAuthData } from "./crypto/key_passphrase.ts"; import { User, UserEvent, UserEventHandlerMap } from "./models/user.ts"; import { getHttpUriForMxc } from "./content-repo.ts"; import { SearchResult } from "./models/search-result.ts"; @@ -244,6 +243,7 @@ import { RoomMessageEventContent, StickerEventContent } from "./@types/events.ts import { ImageInfo } from "./@types/media.ts"; import { Capabilities, ServerCapabilities } from "./serverCapabilities.ts"; import { sha256 } from "./digest.ts"; +import { keyFromAuthData } from "./common-crypto/key-passphrase.ts"; export type Store = IStore; @@ -3656,6 +3656,7 @@ export class MatrixClient extends TypedEventEmitter { return keyFromAuthData(backupInfo.auth_data, password); diff --git a/src/common-crypto/key-passphrase.ts b/src/common-crypto/key-passphrase.ts new file mode 100644 index 00000000000..27b1df64583 --- /dev/null +++ b/src/common-crypto/key-passphrase.ts @@ -0,0 +1,43 @@ +/* + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { deriveRecoveryKeyFromPassphrase } from "../crypto-api/index.ts"; + +/* eslint-disable camelcase */ +interface IAuthData { + private_key_salt?: string; + private_key_iterations?: number; + private_key_bits?: number; +} + +/** + * Derive a backup key from a passphrase using the salt and iterations from the auth data. + * @param authData - The auth data containing the salt and iterations + * @param passphrase - The passphrase to derive the key from + * @deprecated Deriving a backup key from a passphrase is not part of the matrix spec. Instead, a random key is generated and stored/shared via 4S. + */ +export function keyFromAuthData(authData: IAuthData, passphrase: string): Promise { + if (!authData.private_key_salt || !authData.private_key_iterations) { + throw new Error("Salt and/or iterations not found: " + "this backup cannot be restored with a passphrase"); + } + + return deriveRecoveryKeyFromPassphrase( + passphrase, + authData.private_key_salt, + authData.private_key_iterations, + authData.private_key_bits, + ); +} diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index 1b1340aa184..0faf89a7677 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -968,3 +968,4 @@ export interface OwnDeviceKeys { export * from "./verification.ts"; export * from "./keybackup.ts"; export * from "./recovery-key.ts"; +export * from "./key-passphrase.ts"; diff --git a/src/crypto-api/key-passphrase.ts b/src/crypto-api/key-passphrase.ts new file mode 100644 index 00000000000..1bd8745017a --- /dev/null +++ b/src/crypto-api/key-passphrase.ts @@ -0,0 +1,58 @@ +/* + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +const DEFAULT_BIT_SIZE = 256; + +/** + * Derive a recovery key from a passphrase and salt using PBKDF2. + * @see https://spec.matrix.org/v1.11/client-server-api/#deriving-keys-from-passphrases + * + * @param passphrase - The passphrase to derive the key from + * @param salt - The salt to use in the derivation + * @param iterations - The number of iterations to use in the derivation + * @param numBits - The number of bits to derive + */ +export async function deriveRecoveryKeyFromPassphrase( + passphrase: string, + salt: string, + iterations: number, + numBits = DEFAULT_BIT_SIZE, +): Promise { + if (!globalThis.crypto.subtle || !TextEncoder) { + throw new Error("Password-based backup is not available on this platform"); + } + + const key = await globalThis.crypto.subtle.importKey( + "raw", + new TextEncoder().encode(passphrase), + { name: "PBKDF2" }, + false, + ["deriveBits"], + ); + + const keybits = await globalThis.crypto.subtle.deriveBits( + { + name: "PBKDF2", + salt: new TextEncoder().encode(salt), + iterations: iterations, + hash: "SHA-512", + }, + key, + numBits, + ); + + return new Uint8Array(keybits); +} diff --git a/src/crypto/key_passphrase.ts b/src/crypto/key_passphrase.ts index 85b9c48fbcd..4f9035473ba 100644 --- a/src/crypto/key_passphrase.ts +++ b/src/crypto/key_passphrase.ts @@ -15,74 +15,28 @@ limitations under the License. */ import { randomString } from "../randomstring.ts"; +import { deriveRecoveryKeyFromPassphrase } from "../crypto-api/index.ts"; const DEFAULT_ITERATIONS = 500000; -const DEFAULT_BITSIZE = 256; - -/* eslint-disable camelcase */ -interface IAuthData { - private_key_salt?: string; - private_key_iterations?: number; - private_key_bits?: number; -} -/* eslint-enable camelcase */ - interface IKey { key: Uint8Array; salt: string; iterations: number; } -export function keyFromAuthData(authData: IAuthData, password: string): Promise { - if (!authData.private_key_salt || !authData.private_key_iterations) { - throw new Error("Salt and/or iterations not found: " + "this backup cannot be restored with a passphrase"); - } - - return deriveKey( - password, - authData.private_key_salt, - authData.private_key_iterations, - authData.private_key_bits || DEFAULT_BITSIZE, - ); -} - -export async function keyFromPassphrase(password: string): Promise { +/** + * Generate a new recovery key, based on a passphrase. + * @param passphrase - The passphrase to generate the key from + */ +export async function keyFromPassphrase(passphrase: string): Promise { const salt = randomString(32); - const key = await deriveKey(password, salt, DEFAULT_ITERATIONS, DEFAULT_BITSIZE); + const key = await deriveRecoveryKeyFromPassphrase(passphrase, salt, DEFAULT_ITERATIONS); return { key, salt, iterations: DEFAULT_ITERATIONS }; } -export async function deriveKey( - password: string, - salt: string, - iterations: number, - numBits = DEFAULT_BITSIZE, -): Promise { - if (!globalThis.crypto.subtle || !TextEncoder) { - throw new Error("Password-based backup is not available on this platform"); - } - - const key = await globalThis.crypto.subtle.importKey( - "raw", - new TextEncoder().encode(password), - { name: "PBKDF2" }, - false, - ["deriveBits"], - ); - - const keybits = await globalThis.crypto.subtle.deriveBits( - { - name: "PBKDF2", - salt: new TextEncoder().encode(salt), - iterations: iterations, - hash: "SHA-512", - }, - key, - numBits, - ); - - return new Uint8Array(keybits); -} +// Re-export the key passphrase functions to avoid breaking changes +export { deriveRecoveryKeyFromPassphrase as deriveKey }; +export { keyFromAuthData } from "../common-crypto/key-passphrase.ts"; diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 45d63dd820a..0a661338111 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -59,6 +59,7 @@ import { UserVerificationStatus, VerificationRequest, encodeRecoveryKey, + deriveRecoveryKeyFromPassphrase, } from "../crypto-api/index.ts"; import { deviceKeysToDeviceMap, rustDeviceToJsDevice } from "./device-converter.ts"; import { IDownloadKeyResult, IQueryKeysRequest } from "../client.ts"; @@ -66,7 +67,6 @@ import { Device, DeviceMap } from "../models/device.ts"; import { SECRET_STORAGE_ALGORITHM_V1_AES, ServerSideSecretStorage } from "../secret-storage.ts"; import { CrossSigningIdentity } from "./CrossSigningIdentity.ts"; import { secretStorageCanAccessSecrets, secretStorageContainsCrossSigningKeys } from "./secret-storage.ts"; -import { keyFromPassphrase } from "../crypto/key_passphrase.ts"; import { isVerificationEvent, RustVerificationRequest, verificationMethodIdentifierToMethod } from "./verification.ts"; import { EventType, MsgType } from "../@types/event.ts"; import { CryptoEvent } from "../crypto/index.ts"; @@ -100,6 +100,11 @@ interface ISignableObject { * @internal */ export class RustCrypto extends TypedEventEmitter implements CryptoBackend { + /** + * The number of iterations to use when deriving a recovery key from a passphrase. + */ + private readonly RECOVERY_KEY_DERIVATION_ITERATIONS = 500000; + private _trustCrossSignedDevices = true; /** whether {@link stop} has been called */ @@ -879,17 +884,24 @@ export class RustCrypto extends TypedEventEmitter { if (password) { // Generate the key from the passphrase - const derivation = await keyFromPassphrase(password); + // first we generate a random salt + const salt = randomString(32); + // then we derive the key from the passphrase + const recoveryKey = await deriveRecoveryKeyFromPassphrase( + password, + salt, + this.RECOVERY_KEY_DERIVATION_ITERATIONS, + ); return { keyInfo: { passphrase: { algorithm: "m.pbkdf2", - iterations: derivation.iterations, - salt: derivation.salt, + iterations: this.RECOVERY_KEY_DERIVATION_ITERATIONS, + salt, }, }, - privateKey: derivation.key, - encodedPrivateKey: encodeRecoveryKey(derivation.key), + privateKey: recoveryKey, + encodedPrivateKey: encodeRecoveryKey(recoveryKey), }; } else { // Using the navigator crypto API to generate the private key From 30058a4bdc13a7b5812d22876d0b5d00a3e0e901 Mon Sep 17 00:00:00 2001 From: Johannes Marbach Date: Wed, 18 Sep 2024 09:40:01 +0200 Subject: [PATCH 431/595] Add ESLint rule to ensure .ts extensions on imports (#4409) Signed-off-by: Johannes Marbach --- .eslintrc.cjs | 10 +++++++++- package.json | 1 + src/client.ts | 2 ++ yarn.lock | 43 ++++++++++++++++++++++++++++++++++++++++--- 4 files changed, 52 insertions(+), 4 deletions(-) diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 7e70255af37..3147d878f75 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -1,5 +1,5 @@ module.exports = { - plugins: ["matrix-org", "import", "jsdoc"], + plugins: ["matrix-org", "import", "jsdoc", "node"], extends: ["plugin:matrix-org/babel", "plugin:matrix-org/jest", "plugin:import/typescript"], parserOptions: { project: ["./tsconfig.json"], @@ -128,6 +128,14 @@ module.exports = { // These need a bit more work before we can enable // "jsdoc/check-param-names": "error", // "jsdoc/check-indentation": "error", + // Ensure .ts extension on imports outside of tests + "node/file-extension-in-import": [ + "error", + "always", + { + tryExtensions: [".ts"], + }, + ], }, }, { diff --git a/package.json b/package.json index 6680f069d34..b9132f43e2b 100644 --- a/package.json +++ b/package.json @@ -100,6 +100,7 @@ "eslint-plugin-jest": "^28.0.0", "eslint-plugin-jsdoc": "^50.0.0", "eslint-plugin-matrix-org": "^1.0.0", + "eslint-plugin-node": "^11.1.0", "eslint-plugin-tsdoc": "^0.3.0", "eslint-plugin-unicorn": "^55.0.0", "fake-indexeddb": "^5.0.2", diff --git a/src/client.ts b/src/client.ts index 9273281a076..3a9860b3a8b 100644 --- a/src/client.ts +++ b/src/client.ts @@ -2254,6 +2254,8 @@ export class MatrixClient extends TypedEventEmitter= 2.1.2 < 3.0.0" -ignore@^5.1.8, ignore@^5.2.0, ignore@^5.3.1: +ignore@^5.1.1, ignore@^5.1.8, ignore@^5.2.0, ignore@^5.3.1: version "5.3.2" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== @@ -5436,6 +5468,11 @@ regexparam@^3.0.0: resolved "https://registry.yarnpkg.com/regexparam/-/regexparam-3.0.0.tgz#1673e09d41cb7fd41eaafd4040a6aa90daa0a21a" integrity sha512-RSYAtP31mvYLkAHrOlh25pCNQ5hWnT106VukGaaFfuJrZFkGRX5GhUAdPqpSDXxOhA2c4akmRuplv1mRqnBn6Q== +regexpp@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== + regexpu-core@^5.3.1: version "5.3.2" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.2.tgz#11a2b06884f3527aec3e93dbbf4a3b958a95546b" @@ -5504,7 +5541,7 @@ resolve.exports@^2.0.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@^1.10.0, resolve@^1.14.2, resolve@^1.20.0, resolve@^1.22.4, resolve@~1.22.2: +resolve@^1.10.0, resolve@^1.10.1, resolve@^1.14.2, resolve@^1.20.0, resolve@^1.22.4, resolve@~1.22.2: version "1.22.8" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== @@ -5604,7 +5641,7 @@ sdp-transform@^2.14.1: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -semver@^6.3.0, semver@^6.3.1: +semver@^6.1.0, semver@^6.3.0, semver@^6.3.1: version "6.3.1" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== From 414ac9d8cc28330718236b90ad67a1507e146932 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Wed, 18 Sep 2024 09:57:26 +0100 Subject: [PATCH 432/595] Don't share full key history for RTC per-participant encryption (#4406) * Don't share full key history for RTC per-participant encryption Also record stats for how many keys have been sent/received and age of those received * Update src/matrixrtc/MatrixRTCSession.ts Co-authored-by: Robin * Add comment about why we track total age of events --------- Co-authored-by: Robin --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 134 +++++++++++++++++-- src/matrixrtc/MatrixRTCSession.ts | 82 +++++++++--- src/matrixrtc/types.ts | 1 + 3 files changed, 187 insertions(+), 30 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 4cc225f213f..31614010396 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -594,24 +594,35 @@ describe("MatrixRTCSession", () => { }); it("sends keys when joining", async () => { - const eventSentPromise = new Promise((resolve) => { - sendEventMock.mockImplementation(resolve); - }); + jest.useFakeTimers(); + try { + const eventSentPromise = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); - sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - await eventSentPromise; + await eventSentPromise; - expect(sendEventMock).toHaveBeenCalledWith(expect.stringMatching(".*"), "io.element.call.encryption_keys", { - call_id: "", - device_id: "AAAAAAA", - keys: [ + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", { - index: 0, - key: expect.stringMatching(".*"), + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + sent_ts: Date.now(), }, - ], - }); + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + } finally { + jest.useRealTimers(); + } }); it("does not send key if join called when already joined", () => { @@ -619,10 +630,12 @@ describe("MatrixRTCSession", () => { expect(client.sendStateEvent).toHaveBeenCalledTimes(1); expect(client.sendEvent).toHaveBeenCalledTimes(1); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); expect(client.sendStateEvent).toHaveBeenCalledTimes(1); expect(client.sendEvent).toHaveBeenCalledTimes(1); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); }); it("retries key sends", async () => { @@ -651,6 +664,7 @@ describe("MatrixRTCSession", () => { await eventSentPromise; expect(sendEventMock).toHaveBeenCalledTimes(2); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); } finally { jest.useRealTimers(); } @@ -684,6 +698,7 @@ describe("MatrixRTCSession", () => { sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); await keysSentPromise1; + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); sendEventMock.mockClear(); jest.advanceTimersByTime(10000); @@ -707,6 +722,7 @@ describe("MatrixRTCSession", () => { await keysSentPromise2; expect(sendEventMock).toHaveBeenCalled(); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); } finally { jest.useRealTimers(); } @@ -747,14 +763,17 @@ describe("MatrixRTCSession", () => { key: expect.stringMatching(".*"), }, ], + sent_ts: Date.now(), }, ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); sendEventMock.mockClear(); // these should be a no-op: sess.onMembershipUpdate(); expect(sendEventMock).toHaveBeenCalledTimes(0); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); } finally { jest.useRealTimers(); } @@ -796,8 +815,10 @@ describe("MatrixRTCSession", () => { key: expect.stringMatching(".*"), }, ], + sent_ts: Date.now(), }, ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); sendEventMock.mockClear(); @@ -832,8 +853,10 @@ describe("MatrixRTCSession", () => { key: expect.stringMatching(".*"), }, ], + sent_ts: Date.now(), }, ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); } finally { jest.useRealTimers(); } @@ -877,8 +900,10 @@ describe("MatrixRTCSession", () => { key: expect.stringMatching(".*"), }, ], + sent_ts: Date.now(), }, ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); sendEventMock.mockClear(); @@ -913,8 +938,10 @@ describe("MatrixRTCSession", () => { key: expect.stringMatching(".*"), }, ], + sent_ts: Date.now(), }, ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); } finally { jest.useRealTimers(); } @@ -946,6 +973,8 @@ describe("MatrixRTCSession", () => { sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); const firstKeysPayload = await keysSentPromise1; expect(firstKeysPayload.keys).toHaveLength(1); + expect(firstKeysPayload.keys[0].index).toEqual(0); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); sendEventMock.mockClear(); @@ -962,8 +991,10 @@ describe("MatrixRTCSession", () => { const secondKeysPayload = await keysSentPromise2; - expect(secondKeysPayload.keys).toHaveLength(2); + expect(secondKeysPayload.keys).toHaveLength(1); + expect(secondKeysPayload.keys[0].index).toEqual(1); expect(onMyEncryptionKeyChanged).toHaveBeenCalledTimes(2); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); } finally { jest.useRealTimers(); } @@ -984,6 +1015,7 @@ describe("MatrixRTCSession", () => { await keysSentPromise1; sendEventMock.mockClear(); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); const onMembershipsChanged = jest.fn(); sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); @@ -1002,6 +1034,7 @@ describe("MatrixRTCSession", () => { }); expect(sendEventMock).not.toHaveBeenCalled(); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); } finally { jest.useRealTimers(); } @@ -1167,6 +1200,7 @@ describe("MatrixRTCSession", () => { const bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; expect(bobKeys).toHaveLength(1); expect(bobKeys[0]).toEqual(Buffer.from("this is the key", "utf-8")); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); }); it("collects keys at non-zero indices", () => { @@ -1195,6 +1229,7 @@ describe("MatrixRTCSession", () => { expect(bobKeys[2]).toBeFalsy(); expect(bobKeys[3]).toBeFalsy(); expect(bobKeys[4]).toEqual(Buffer.from("this is the key", "utf-8")); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); }); it("collects keys by merging", () => { @@ -1219,6 +1254,7 @@ describe("MatrixRTCSession", () => { let bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; expect(bobKeys).toHaveLength(1); expect(bobKeys[0]).toEqual(Buffer.from("this is the key", "utf-8")); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); sess.onCallEncryption({ getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), @@ -1239,6 +1275,7 @@ describe("MatrixRTCSession", () => { bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; expect(bobKeys).toHaveLength(5); expect(bobKeys[4]).toEqual(Buffer.from("this is the key", "utf-8")); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(2); }); it("ignores older keys at same index", () => { @@ -1279,6 +1316,7 @@ describe("MatrixRTCSession", () => { const bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; expect(bobKeys).toHaveLength(1); expect(bobKeys[0]).toEqual(Buffer.from("newer key", "utf-8")); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(2); }); it("key timestamps are treated as monotonic", () => { @@ -1342,5 +1380,73 @@ describe("MatrixRTCSession", () => { const myKeys = sess.getKeysForParticipant(client.getUserId()!, client.getDeviceId()!)!; expect(myKeys).toBeFalsy(); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(0); + }); + + it("tracks total age statistics for collected keys", () => { + jest.useFakeTimers(); + try { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + + // defaults to getTs() + jest.setSystemTime(1000); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(0), + } as unknown as MatrixEvent); + expect(sess!.statistics.totals.roomEventEncryptionKeysReceivedTotalAge).toEqual(1000); + + jest.setSystemTime(2000); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + sent_ts: 0, + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), + } as unknown as MatrixEvent); + expect(sess!.statistics.totals.roomEventEncryptionKeysReceivedTotalAge).toEqual(3000); + + jest.setSystemTime(3000); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + sent_ts: 1000, + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), + } as unknown as MatrixEvent); + expect(sess!.statistics.totals.roomEventEncryptionKeysReceivedTotalAge).toEqual(5000); + } finally { + jest.useRealTimers(); + } }); }); diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index ebd69400a90..1cf486062f7 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -144,6 +144,31 @@ export class MatrixRTCSession extends TypedEventEmitter | undefined; + private currentEncryptionKeyIndex = -1; + + /** + * The statistics for this session. + */ + public statistics = { + counters: { + /** + * The number of times we have sent a room event containing encryption keys. + */ + roomEventEncryptionKeysSent: 0, + /** + * The number of times we have received a room event containing encryption keys. + */ + roomEventEncryptionKeysReceived: 0, + }, + totals: { + /** + * The total age (in milliseconds) of all room events containing encryption keys that we have received. + * We track the total age so that we can later calculate the average age of all keys received. + */ + roomEventEncryptionKeysReceivedTotalAge: 0, + }, + }; + /** * The callId (sessionId) of the call. * @@ -467,10 +492,16 @@ export class MatrixRTCSession extends TypedEventEmitter { this.setNewKeyTimeouts.delete(useKeyTimeout); logger.info(`Delayed-emitting key changed event for ${participantId} idx ${encryptionKeyIndex}`); + if (userId === this.client.getUserId() && deviceId === this.client.getDeviceId()) { + this.currentEncryptionKeyIndex = encryptionKeyIndex; + } this.emit(MatrixRTCSessionEvent.EncryptionKeyChanged, keyBin, encryptionKeyIndex, participantId); }, USE_KEY_DELAY); this.setNewKeyTimeouts.add(useKeyTimeout); } else { + if (userId === this.client.getUserId() && deviceId === this.client.getDeviceId()) { + this.currentEncryptionKeyIndex = encryptionKeyIndex; + } this.emit(MatrixRTCSessionEvent.EncryptionKeyChanged, keyBin, encryptionKeyIndex, participantId); } } @@ -479,8 +510,9 @@ export class MatrixRTCSession extends TypedEventEmitter => { + private sendEncryptionKeysEvent = async (indexToSend?: number): Promise => { if (this.keysEventUpdateTimeout !== undefined) { clearTimeout(this.keysEventUpdateTimeout); this.keysEventUpdateTimeout = undefined; } this.lastEncryptionKeyUpdateRequest = Date.now(); - logger.info("Sending encryption keys event"); - if (!this.isJoined()) return; + logger.info(`Sending encryption keys event. indexToSend=${indexToSend}`); + const userId = this.client.getUserId(); const deviceId = this.client.getDeviceId(); @@ -541,20 +574,33 @@ export class MatrixRTCSession extends TypedEventEmitter { - return { - index, - key: encodeUnpaddedBase64(key), - }; - }), + const content: EncryptionKeysEventContent = { + keys: [ + { + index: keyIndexToSend, + key: encodeUnpaddedBase64(keyToSend), + }, + ], device_id: deviceId, call_id: "", - } as EncryptionKeysEventContent); + sent_ts: Date.now(), + }; + + this.statistics.counters.roomEventEncryptionKeysSent += 1; + + await this.client.sendEvent(this.room.roomId, EventType.CallEncryptionKeysPrefix, content); logger.debug( - `Embedded-E2EE-LOG updateEncryptionKeyEvent participantId=${userId}:${deviceId} numSent=${myKeys.length}`, + `Embedded-E2EE-LOG updateEncryptionKeyEvent participantId=${userId}:${deviceId} numKeys=${myKeys.length} currentKeyIndex=${this.currentEncryptionKeyIndex} keyIndexToSend=${keyIndexToSend}`, this.encryptionKeys, ); } catch (error) { @@ -649,6 +695,10 @@ export class MatrixRTCSession extends TypedEventEmitter Date: Wed, 18 Sep 2024 07:53:07 -0400 Subject: [PATCH 433/595] Add crypto mode setting for invisible crypto, and apply it to decrypting events (#4407) Adds a global "crypto mode" setting to the crypto API (only works with Rust crypto), and changes the decryption settings based on that. --- package.json | 2 +- spec/integ/crypto/crypto.spec.ts | 82 ++++++++++++++++++++++++++++++++ src/crypto-api/index.ts | 57 ++++++++++++++++++++++ src/crypto/index.ts | 8 ++++ src/rust-crypto/rust-crypto.ts | 58 ++++++++++++++++++++-- yarn.lock | 39 +++------------ 6 files changed, 210 insertions(+), 36 deletions(-) diff --git a/package.json b/package.json index b9132f43e2b..c2684552ed1 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ ], "dependencies": { "@babel/runtime": "^7.12.5", - "@matrix-org/matrix-sdk-crypto-wasm": "^8.0.0", + "@matrix-org/matrix-sdk-crypto-wasm": "^9.0.0", "@matrix-org/olm": "3.2.15", "another-json": "^0.2.0", "bs58": "^6.0.0", diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index c1a665e2c06..41b52dd53cb 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -82,6 +82,7 @@ import { SecretStorageKeyDescription } from "../../../src/secret-storage"; import { CrossSigningKey, CryptoCallbacks, + CryptoMode, DecryptionFailureCode, EventShieldColour, EventShieldReason, @@ -746,6 +747,87 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, ); }); + newBackendOnly( + "fails with an error when cross-signed sender is required but sender is not cross-signed", + async () => { + // This tests that a message will not be decrypted if the sender + // is not sufficiently trusted according to the selected crypto + // mode. + // + // This test is almost the same as the "Alice receives a megolm + // message" test, with the main difference that we set the + // crypto mode. + expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); + + // Start by using Invisible crypto mode + aliceClient.getCrypto()!.setCryptoMode(CryptoMode.Invisible); + + await startClientAndAwaitFirstSync(); + + const p2pSession = await createOlmSession(testOlmAccount, keyReceiver); + const groupSession = new Olm.OutboundGroupSession(); + groupSession.create(); + + // make the room_key event + const roomKeyEncrypted = encryptGroupSessionKey({ + recipient: aliceClient.getUserId()!, + recipientCurve25519Key: keyReceiver.getDeviceKey(), + recipientEd25519Key: keyReceiver.getSigningKey(), + olmAccount: testOlmAccount, + p2pSession: p2pSession, + groupSession: groupSession, + room_id: ROOM_ID, + }); + + // encrypt a message with the group session + const messageEncrypted = encryptMegolmEvent({ + senderKey: testSenderKey, + groupSession: groupSession, + room_id: ROOM_ID, + }); + + // Alice gets both the events in a single sync + const syncResponse = { + next_batch: 1, + to_device: { + events: [roomKeyEncrypted], + }, + rooms: { + join: { + [ROOM_ID]: { timeline: { events: [messageEncrypted] } }, + }, + }, + }; + + syncResponder.sendOrQueueSyncResponse(syncResponse); + await syncPromise(aliceClient); + + const room = aliceClient.getRoom(ROOM_ID)!; + const event = room.getLiveTimeline().getEvents()[0]; + expect(event.isEncrypted()).toBe(true); + + // it probably won't be decrypted yet, because it takes a while to process the olm keys + const decryptedEvent = await testUtils.awaitDecryption(event); + // It will error as an unknown device because we haven't fetched + // the sender's device keys. + expect(decryptedEvent.decryptionFailureReason).toEqual(DecryptionFailureCode.UNKNOWN_SENDER_DEVICE); + + // Next, try decrypting in transition mode, which should also + // fail for the same reason + aliceClient.getCrypto()!.setCryptoMode(CryptoMode.Transition); + + await event.attemptDecryption(aliceClient["cryptoBackend"]!); + expect(decryptedEvent.decryptionFailureReason).toEqual(DecryptionFailureCode.UNKNOWN_SENDER_DEVICE); + + // Decrypting in legacy mode should succeed since it doesn't + // care about device trust. + aliceClient.getCrypto()!.setCryptoMode(CryptoMode.Legacy); + + await event.attemptDecryption(aliceClient["cryptoBackend"]!); + expect(decryptedEvent.decryptionFailureReason).toEqual(null); + }, + ); + it("Decryption fails with Unable to decrypt for other errors", async () => { expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); await startClientAndAwaitFirstSync(); diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index 0faf89a7677..35e4a689762 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -40,6 +40,13 @@ export interface CryptoApi { */ globalBlacklistUnverifiedDevices: boolean; + /** + * The cryptography mode to use. + * + * @see CryptoMode + */ + setCryptoMode(cryptoMode: CryptoMode): void; + /** * Return the current version of the crypto module. * For example: `Rust SDK ${versions.matrix_sdk_crypto} (${versions.git_sha}), Vodozemac ${versions.vodozemac}`. @@ -589,6 +596,24 @@ export enum DecryptionFailureCode { */ HISTORICAL_MESSAGE_USER_NOT_JOINED = "HISTORICAL_MESSAGE_USER_NOT_JOINED", + /** + * The sender's identity is not verified, but was previously verified. + */ + SENDER_IDENTITY_PREVIOUSLY_VERIFIED = "SENDER_IDENTITY_PREVIOUSLY_VERIFIED", + + /** + * The sender device is not cross-signed. This will only be used if the + * crypto mode is set to `CryptoMode.Invisible` or `CryptoMode.Transition`. + */ + UNSIGNED_SENDER_DEVICE = "UNSIGNED_SENDER_DEVICE", + + /** + * We weren't able to link the message back to any known device. This will + * only be used if the crypto mode is set to `CryptoMode.Invisible` or + * `CryptoMode.Transition`. + */ + UNKNOWN_SENDER_DEVICE = "UNKNOWN_SENDER_DEVICE", + /** Unknown or unclassified error. */ UNKNOWN_ERROR = "UNKNOWN_ERROR", @@ -632,6 +657,38 @@ export enum DecryptionFailureCode { UNKNOWN_ENCRYPTION_ALGORITHM = "UNKNOWN_ENCRYPTION_ALGORITHM", } +/** + * The cryptography mode. Affects how messages are encrypted and decrypted. + * Only supported by Rust crypto. + */ +export enum CryptoMode { + /** + * Message encryption keys are shared with all devices in the room, except for + * blacklisted devices, or unverified devices if + * `globalBlacklistUnverifiedDevices` is set. Events from all senders are + * decrypted. + */ + Legacy, + + /** + * Events are encrypted as with `Legacy` mode, but encryption will throw an error if a + * verified user has an unsigned device, or if a verified user replaces + * their identity. Events are decrypted only if they come from cross-signed + * devices, or devices that existed before the Rust crypto SDK started + * tracking device trust: other events will result in a decryption failure. (To access the failure + * reason, see {@link MatrixEvent.decryptionFailureReason}.) + */ + Transition, + + /** + * Message encryption keys are only shared with devices that have been cross-signed by their owner. + * Encryption will throw an error if a verified user replaces their identity. Events are + * decrypted only if they come from a cross-signed device other events will result in a decryption + * failure. (To access the failure reason, see {@link MatrixEvent.decryptionFailureReason}.) + */ + Invisible, +} + /** * Options object for `CryptoApi.bootstrapCrossSigning`. */ diff --git a/src/crypto/index.ts b/src/crypto/index.ts index d72e41a6e3d..90638aea1a0 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -88,6 +88,7 @@ import { BootstrapCrossSigningOpts, CrossSigningKeyInfo, CrossSigningStatus, + CryptoMode, decodeRecoveryKey, DecryptionFailureCode, DeviceVerificationStatus, @@ -648,6 +649,13 @@ export class Crypto extends TypedEventEmitter { + public async attemptEventDecryption(event: MatrixEvent, cryptoMode: CryptoMode): Promise { // add the event to the pending list *before* attempting to decrypt. // then, if the key turns up while decryption is in progress (and // decryption fails), we will schedule a retry. // (fixes https://github.com/vector-im/element-web/issues/5001) this.addEventToPendingList(event); + let trustRequirement; + switch (cryptoMode) { + case CryptoMode.Legacy: + trustRequirement = RustSdkCryptoJs.TrustRequirement.Untrusted; + break; + case CryptoMode.Transition: + trustRequirement = RustSdkCryptoJs.TrustRequirement.CrossSignedOrLegacy; + break; + case CryptoMode.Invisible: + trustRequirement = RustSdkCryptoJs.TrustRequirement.CrossSigned; + break; + } + try { const res = (await this.olmMachine.decryptRoomEvent( stringifyEvent(event), new RustSdkCryptoJs.RoomId(event.getRoomId()!), - new RustSdkCryptoJs.DecryptionSettings(RustSdkCryptoJs.TrustRequirement.Untrusted), + new RustSdkCryptoJs.DecryptionSettings(trustRequirement), )) as RustSdkCryptoJs.DecryptedRoomEvent; // Success. We can remove the event from the pending list, if @@ -1861,6 +1883,36 @@ class EventDecryptor { errorDetails, ); + case RustSdkCryptoJs.DecryptionErrorCode.SenderIdentityPreviouslyVerified: + // We're refusing to decrypt due to not trusting the sender, + // rather than failing to decrypt due to lack of keys, so we + // don't need to keep it on the pending list. + this.removeEventFromPendingList(event); + throw new DecryptionError( + DecryptionFailureCode.SENDER_IDENTITY_PREVIOUSLY_VERIFIED, + "The sender identity is unverified, but was previously verified.", + ); + + case RustSdkCryptoJs.DecryptionErrorCode.UnknownSenderDevice: + // We're refusing to decrypt due to not trusting the sender, + // rather than failing to decrypt due to lack of keys, so we + // don't need to keep it on the pending list. + this.removeEventFromPendingList(event); + throw new DecryptionError( + DecryptionFailureCode.UNKNOWN_SENDER_DEVICE, + "The sender device is not known.", + ); + + case RustSdkCryptoJs.DecryptionErrorCode.UnsignedSenderDevice: + // We're refusing to decrypt due to not trusting the sender, + // rather than failing to decrypt due to lack of keys, so we + // don't need to keep it on the pending list. + this.removeEventFromPendingList(event); + throw new DecryptionError( + DecryptionFailureCode.UNSIGNED_SENDER_DEVICE, + "The sender identity is not cross-signed.", + ); + // We don't map MismatchedIdentityKeys for now, as there is no equivalent in legacy. // Just put it on the `UNKNOWN_ERROR` bucket. default: diff --git a/yarn.lock b/yarn.lock index 83f6c7b31ea..d32a10c688f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1453,10 +1453,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@matrix-org/matrix-sdk-crypto-wasm@^8.0.0": - version "8.0.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-8.0.0.tgz#6ddc0e63538e821a2efbc5c1a2f0fa0f71d489ff" - integrity sha512-s0q3O2dK8b6hOJ+SZFz+s/IiMabmVsNue6r17sTwbrRD8liBkCrpjYnxoMYvtC01GggJ9TZLQbeqpt8hQSPHAg== +"@matrix-org/matrix-sdk-crypto-wasm@^9.0.0": + version "9.0.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-9.0.0.tgz#293fe8fcb9bc4d577c5f6cf2cbffa151c6e11329" + integrity sha512-dz4dkYXj6BeOQuw52XQj8dMuhi85pSFhfFeFlNRAO7JdRPhE9CHBrfK8knkZV5Zux5vvf3Ub4E7myoLeJgZoEw== "@matrix-org/olm@3.2.15": version "3.2.15" @@ -5831,16 +5831,7 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width-cjs@npm:string-width@^4.2.0": - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -5895,14 +5886,7 @@ string.prototype.trimstart@^1.0.8: define-properties "^1.2.1" es-object-atoms "^1.0.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -6434,16 +6418,7 @@ word-wrap@^1.2.5: resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== From a13e0389dbc8f73688c7cc6b57cbcc78887a309f Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Wed, 18 Sep 2024 13:31:13 +0000 Subject: [PATCH 434/595] v34.6.0-rc.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c2684552ed1..1e73870611e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.5.0", + "version": "34.6.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From 4fda9e841994b9384608a580383437ca38453316 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 19 Sep 2024 14:38:54 +0100 Subject: [PATCH 435/595] Update all non-major dependencies (#4417) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 241 +++++++++++++++++++++++++++++------------------------- 1 file changed, 131 insertions(+), 110 deletions(-) diff --git a/yarn.lock b/yarn.lock index d32a10c688f..aca7386fec7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1553,6 +1553,11 @@ resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.1.1.tgz#1ec17e2edbec25c8306d424ecfbf13c7de1aaa31" integrity sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA== +"@rtsao/scc@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" + integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g== + "@shikijs/core@1.14.1": version "1.14.1" resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.14.1.tgz#008f1c4a20ff83fd1672d9e31d76b687862f7511" @@ -1836,13 +1841,13 @@ "@typescript-eslint/types" "7.18.0" "@typescript-eslint/visitor-keys" "7.18.0" -"@typescript-eslint/scope-manager@8.4.0": - version "8.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.4.0.tgz#8a13d3c0044513d7960348db6f4789d2a06fa4b4" - integrity sha512-n2jFxLeY0JmKfUqy3P70rs6vdoPjHK8P/w+zJcV3fk0b0BwRXC/zxRTEnAsgYT7MwdQDt/ZEbtdzdVC+hcpF0A== +"@typescript-eslint/scope-manager@8.6.0": + version "8.6.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.6.0.tgz#28cc2fc26a84b75addf45091a2c6283e29e2c982" + integrity sha512-ZuoutoS5y9UOxKvpc/GkvF4cuEmpokda4wRg64JEia27wX+PysIE9q+lzDtlHHgblwUWwo5/Qn+/WyTUvDwBHw== dependencies: - "@typescript-eslint/types" "8.4.0" - "@typescript-eslint/visitor-keys" "8.4.0" + "@typescript-eslint/types" "8.6.0" + "@typescript-eslint/visitor-keys" "8.6.0" "@typescript-eslint/type-utils@7.18.0": version "7.18.0" @@ -1859,10 +1864,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.18.0.tgz#b90a57ccdea71797ffffa0321e744f379ec838c9" integrity sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ== -"@typescript-eslint/types@8.4.0": - version "8.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.4.0.tgz#b44d6a90a317a6d97a3e5fabda5196089eec6171" - integrity sha512-T1RB3KQdskh9t3v/qv7niK6P8yvn7ja1mS7QK7XfRVL6wtZ8/mFs/FHf4fKvTA0rKnqnYxl/uHFNbnEt0phgbw== +"@typescript-eslint/types@8.6.0": + version "8.6.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.6.0.tgz#cdc3a16f83f2f0663d6723e9fd032331cdd9f51c" + integrity sha512-rojqFZGd4MQxw33SrOy09qIDS8WEldM8JWtKQLAjf/X5mGSeEFh5ixQlxssMNyPslVIk9yzWqXCsV2eFhYrYUw== "@typescript-eslint/typescript-estree@7.18.0": version "7.18.0" @@ -1878,13 +1883,13 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/typescript-estree@8.4.0": - version "8.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.4.0.tgz#00ed79ae049e124db37315cde1531a900a048482" - integrity sha512-kJ2OIP4dQw5gdI4uXsaxUZHRwWAGpREJ9Zq6D5L0BweyOrWsL6Sz0YcAZGWhvKnH7fm1J5YFE1JrQL0c9dd53A== +"@typescript-eslint/typescript-estree@8.6.0": + version "8.6.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.6.0.tgz#f945506de42871f04868371cb5bf21e8f7266e01" + integrity sha512-MOVAzsKJIPIlLK239l5s06YXjNqpKTVhBVDnqUumQJja5+Y94V3+4VUFRA0G60y2jNnTVwRCkhyGQpavfsbq/g== dependencies: - "@typescript-eslint/types" "8.4.0" - "@typescript-eslint/visitor-keys" "8.4.0" + "@typescript-eslint/types" "8.6.0" + "@typescript-eslint/visitor-keys" "8.6.0" debug "^4.3.4" fast-glob "^3.3.2" is-glob "^4.0.3" @@ -1903,14 +1908,14 @@ "@typescript-eslint/typescript-estree" "7.18.0" "@typescript-eslint/utils@^6.0.0 || ^7.0.0 || ^8.0.0": - version "8.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.4.0.tgz#35c552a404858c853a1f62ba6df2214f1988afc3" - integrity sha512-swULW8n1IKLjRAgciCkTCafyTHHfwVQFt8DovmaF69sKbOxTSFMmIZaSHjqO9i/RV0wIblaawhzvtva8Nmm7lQ== + version "8.6.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.6.0.tgz#175fe893f32804bed1e72b3364ea6bbe1044181c" + integrity sha512-eNp9cWnYf36NaOVjkEUznf6fEgVy1TWpE0o52e4wtojjBx7D1UV2WAWGzR+8Y5lVFtpMLPwNbC67T83DWSph4A== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "8.4.0" - "@typescript-eslint/types" "8.4.0" - "@typescript-eslint/typescript-estree" "8.4.0" + "@typescript-eslint/scope-manager" "8.6.0" + "@typescript-eslint/types" "8.6.0" + "@typescript-eslint/typescript-estree" "8.6.0" "@typescript-eslint/visitor-keys@7.18.0": version "7.18.0" @@ -1920,12 +1925,12 @@ "@typescript-eslint/types" "7.18.0" eslint-visitor-keys "^3.4.3" -"@typescript-eslint/visitor-keys@8.4.0": - version "8.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.4.0.tgz#1e8a8b8fd3647db1e42361fdd8de3e1679dec9d2" - integrity sha512-zTQD6WLNTre1hj5wp09nBIDiOc2U5r/qmzo7wxPn4ZgAjHql09EofqhF9WF+fZHzL5aCyaIpPcT2hyxl73kr9A== +"@typescript-eslint/visitor-keys@8.6.0": + version "8.6.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.6.0.tgz#5432af4a1753f376f35ab5b891fc9db237aaf76f" + integrity sha512-wapVFfZg9H0qOYh4grNVQiMklJGluQrOUiOhYRrQWhx7BY/+I1IYb8BczWNbbUpO+pqy0rDciv3lQH5E1bCLrg== dependencies: - "@typescript-eslint/types" "8.4.0" + "@typescript-eslint/types" "8.6.0" eslint-visitor-keys "^3.4.3" "@ungap/structured-clone@^1.2.0": @@ -2023,9 +2028,9 @@ ansi-regex@^5.0.1: integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-regex@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" - integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== + version "6.1.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.1.0.tgz#95ec409c69619d6cb1b8b34f14b660ef28ebd654" + integrity sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA== ansi-styles@^3.2.1: version "3.2.1" @@ -2089,7 +2094,7 @@ array-buffer-byte-length@^1.0.1: call-bind "^1.0.5" is-array-buffer "^3.0.4" -array-includes@^3.1.7: +array-includes@^3.1.8: version "3.1.8" resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.8.tgz#5e370cbe172fdd5dd6530c1d4aadda25281ba97d" integrity sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ== @@ -2106,7 +2111,7 @@ array-union@^2.1.0: resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== -array.prototype.findlastindex@^1.2.3: +array.prototype.findlastindex@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz#8c35a755c72908719453f87145ca011e39334d0d" integrity sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ== @@ -2650,11 +2655,11 @@ data-view-byte-offset@^1.0.0: is-data-view "^1.0.1" debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@^4.3.6, debug@~4.3.6: - version "4.3.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.6.tgz#2ab2c38fbaffebf8aa95fdfe6d88438c7a13c52b" - integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== + version "4.3.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52" + integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== dependencies: - ms "2.1.2" + ms "^2.1.3" debug@^3.2.7: version "3.2.7" @@ -2791,9 +2796,9 @@ emittery@^0.13.1: integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ== emoji-regex@^10.3.0: - version "10.3.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-10.3.0.tgz#76998b9268409eb3dae3de989254d456e70cfe23" - integrity sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw== + version "10.4.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-10.4.0.tgz#03553afea80b3975749cfcb36f776ca268e413d4" + integrity sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw== emoji-regex@^8.0.0: version "8.0.0" @@ -3000,13 +3005,6 @@ eslint-import-resolver-typescript@^3.5.1: is-bun-module "^1.0.2" is-glob "^4.0.3" -eslint-module-utils@^2.8.0: - version "2.8.1" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz#52f2404300c3bd33deece9d7372fb337cc1d7c34" - integrity sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q== - dependencies: - debug "^3.2.7" - eslint-module-utils@^2.8.1: version "2.9.0" resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.9.0.tgz#95d4ac038a68cd3f63482659dffe0883900eb342" @@ -3014,6 +3012,13 @@ eslint-module-utils@^2.8.1: dependencies: debug "^3.2.7" +eslint-module-utils@^2.9.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.11.0.tgz#b99b211ca4318243f09661fae088f373ad5243c4" + integrity sha512-gbBE5Hitek/oG6MUVj6sFuzEjA/ClzNflVrLovHi/JgLdC7fiN5gLAY1WIPW1a0V5I999MnsrvVrCOGmmVqDBQ== + dependencies: + debug "^3.2.7" + eslint-plugin-es@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893" @@ -3023,39 +3028,40 @@ eslint-plugin-es@^3.0.0: regexpp "^3.0.0" eslint-plugin-import@^2.26.0: - version "2.29.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz#d45b37b5ef5901d639c15270d74d46d161150643" - integrity sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw== + version "2.30.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.30.0.tgz#21ceea0fc462657195989dd780e50c92fe95f449" + integrity sha512-/mHNE9jINJfiD2EKkg1BKyPyUk4zdnT54YgbOgfjSakWT5oyX/qQLVNTkehyfpcMxZXMy1zyonZ2v7hZTX43Yw== dependencies: - array-includes "^3.1.7" - array.prototype.findlastindex "^1.2.3" + "@rtsao/scc" "^1.1.0" + array-includes "^3.1.8" + array.prototype.findlastindex "^1.2.5" array.prototype.flat "^1.3.2" array.prototype.flatmap "^1.3.2" debug "^3.2.7" doctrine "^2.1.0" eslint-import-resolver-node "^0.3.9" - eslint-module-utils "^2.8.0" - hasown "^2.0.0" - is-core-module "^2.13.1" + eslint-module-utils "^2.9.0" + hasown "^2.0.2" + is-core-module "^2.15.1" is-glob "^4.0.3" minimatch "^3.1.2" - object.fromentries "^2.0.7" - object.groupby "^1.0.1" - object.values "^1.1.7" + object.fromentries "^2.0.8" + object.groupby "^1.0.3" + object.values "^1.2.0" semver "^6.3.1" tsconfig-paths "^3.15.0" eslint-plugin-jest@^28.0.0: - version "28.8.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.8.2.tgz#7f8307179c5cf8d51101b3aa002be168daadecbc" - integrity sha512-mC3OyklHmS5i7wYU1rGId9EnxRI8TVlnFG56AE+8U9iRy6zwaNygZR+DsdZuCL0gRG0wVeyzq+uWcPt6yJrrMA== + version "28.8.3" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.8.3.tgz#c5699bba0ad06090ad613535e4f1572f4c2567c0" + integrity sha512-HIQ3t9hASLKm2IhIOqnu+ifw7uLZkIlR7RYNv7fMcEi/p0CIiJmfriStQS2LDkgtY4nyLbIZAD+JL347Yc2ETQ== dependencies: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0 || ^8.0.0" eslint-plugin-jsdoc@^50.0.0: - version "50.2.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.2.tgz#151e63c8bc245ea8b2357d4229392a5b993827b0" - integrity sha512-i0ZMWA199DG7sjxlzXn5AeYZxpRfMJjDPUl7lL9eJJX8TPRoIaxJU4ys/joP5faM5AXE1eqW/dslCj3uj4Nqpg== + version "50.2.4" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.4.tgz#9abef68ea5869e87d8a4444bfef9e5a7787162e2" + integrity sha512-020jA+dXaXdb+TML3ZJBvpPmzwbNROjnYuTYi/g6A5QEmEjhptz4oPJDKkOGMIByNxsPpdTLzSU1HYVqebOX1w== dependencies: "@es-joy/jsdoccomment" "~0.48.0" are-docs-informative "^0.0.2" @@ -3754,9 +3760,9 @@ human-signals@^5.0.0: integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ== husky@^9.0.0: - version "9.1.5" - resolved "https://registry.yarnpkg.com/husky/-/husky-9.1.5.tgz#2b6edede53ee1adbbd3a3da490628a23f5243b83" - integrity sha512-rowAVRUBfI0b4+niA4SJMhfQwc107VLkBUgEYYAOQAbqDCnra1nYh83hF/MDmhYs9t9n1E3DuKOrs2LYNC+0Ag== + version "9.1.6" + resolved "https://registry.yarnpkg.com/husky/-/husky-9.1.6.tgz#e23aa996b6203ab33534bdc82306b0cf2cb07d6c" + integrity sha512-sqbjZKK7kf44hfdE94EoX8MZNk0n7HeW37O4YrVGCF4wzgQjp+akPAkfUK5LZ6KuR/6sqeAVuXHji+RzQgOn5A== iconv-lite@0.6.3: version "0.6.3" @@ -3872,20 +3878,13 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.13.0: +is-core-module@^2.13.0, is-core-module@^2.15.1: version "2.15.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.1.tgz#a7363a25bee942fefab0de13bf6aa372c82dcc37" integrity sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ== dependencies: hasown "^2.0.2" -is-core-module@^2.13.1: - version "2.14.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.14.0.tgz#43b8ef9f46a6a08888db67b1ffd4ec9e3dfd59d1" - integrity sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A== - dependencies: - hasown "^2.0.2" - is-data-view@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.1.tgz#4b4d3a511b70f3dc26d42c03ca9ca515d847759f" @@ -4657,9 +4656,9 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.29.1" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.29.1.tgz#596ba9aea44fb56d89c9cc7d73e2522d50280713" - integrity sha512-l8qFtRqNpCk8xf46VOwhBUva7LBwanoGPJ4KQNwVRl6hmEXStf1BJlfbYRZ+yQpbilbIV6LN+ztX6LaGtyd4TQ== + version "5.30.2" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.30.2.tgz#3cee8df2e1eb0c858f81e64568b72c0a23b94479" + integrity sha512-UuUwuTN+6Aa6mjxufWwidayGX/tPJsxZSlwUo8q4R+Gf/0aNYuhHsUH/GccuKtRPfFnf3r+ZU/7BV0dNfC7OEQ== dependencies: "@nodelib/fs.walk" "1.2.8" "@snyk/github-codeowners" "1.1.0" @@ -4709,9 +4708,9 @@ linkify-it@^5.0.0: uc.micro "^2.0.0" lint-staged@^15.0.2: - version "15.2.9" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.9.tgz#bf70d40b6b192df6ad756fb89822211615e0f4da" - integrity sha512-BZAt8Lk3sEnxw7tfxM7jeZlPRuT4M68O0/CwZhhaw6eeWu0Lz5eERE3m386InivXB64fp/mDID452h48tvKlRQ== + version "15.2.10" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.10.tgz#92ac222f802ba911897dcf23671da5bb80643cd2" + integrity sha512-5dY5t743e1byO19P9I4b3x8HJwalIznL5E1FWYnU6OWw33KxNBSLAc6Cy7F2PsFEO8FKnLwjwm5hx7aMF0jzZg== dependencies: chalk "~5.3.0" commander "~12.1.0" @@ -4719,7 +4718,7 @@ lint-staged@^15.0.2: execa "~8.0.1" lilconfig "~3.1.2" listr2 "~8.2.4" - micromatch "~4.0.7" + micromatch "~4.0.8" pidtree "~0.6.0" string-argv "~0.3.2" yaml "~2.5.0" @@ -4782,9 +4781,9 @@ log-update@^6.1.0: wrap-ansi "^9.0.0" loglevel@^1.7.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.9.1.tgz#d63976ac9bcd03c7c873116d41c2a85bafff1be7" - integrity sha512-hP3I3kCrDIMuRwAwHltphhDM1r8i55H33GgqjXbrisuJhF4kRhW1dNuxsRklp4bXl8DSdLaNLuiL4A/LWRfxvg== + version "1.9.2" + resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.9.2.tgz#c2e028d6c757720107df4e64508530db6621ba08" + integrity sha512-HgMmCqIJSAKqo68l0rS2AanEWfkxaZ5wNiEFb5ggm08lDs9Xl2KxBlX3PTcaD2chBM1gXAYf491/M2Rv8Jwayg== lru-cache@^11.0.0: version "11.0.0" @@ -4877,7 +4876,7 @@ merge2@^1.3.0, merge2@^1.4.1: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -micromatch@^4.0.4: +micromatch@^4.0.4, micromatch@~4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== @@ -4885,14 +4884,6 @@ micromatch@^4.0.4: braces "^3.0.3" picomatch "^2.3.1" -micromatch@~4.0.7: - version "4.0.7" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5" - integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q== - dependencies: - braces "^3.0.3" - picomatch "^2.3.1" - mime-db@1.52.0: version "1.52.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" @@ -4961,12 +4952,7 @@ mkdirp@1.0.4: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -ms@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -ms@^2.1.1: +ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -5047,7 +5033,7 @@ object.assign@^4.1.5: has-symbols "^1.0.3" object-keys "^1.1.1" -object.fromentries@^2.0.7: +object.fromentries@^2.0.8: version "2.0.8" resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.8.tgz#f7195d8a9b97bd95cbc1999ea939ecd1a2b00c65" integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ== @@ -5057,7 +5043,7 @@ object.fromentries@^2.0.7: es-abstract "^1.23.2" es-object-atoms "^1.0.0" -object.groupby@^1.0.1: +object.groupby@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.3.tgz#9b125c36238129f6f7b61954a1e7176148d5002e" integrity sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ== @@ -5066,7 +5052,7 @@ object.groupby@^1.0.1: define-properties "^1.2.1" es-abstract "^1.23.2" -object.values@^1.1.7: +object.values@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.2.0.tgz#65405a9d92cee68ac2d303002e0b8470a4d9ab1b" integrity sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ== @@ -5831,7 +5817,16 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -5886,7 +5881,14 @@ string.prototype.trimstart@^1.0.8: define-properties "^1.2.1" es-object-atoms "^1.0.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -6080,11 +6082,16 @@ tsconfig-paths@^3.15.0: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1, tslib@^2.6.2: +tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1: version "2.6.3" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.3.tgz#0438f810ad7a9edcde7a241c3d80db693c8cbfe0" integrity sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ== +tslib@^2.6.2: + version "2.7.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01" + integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA== + type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" @@ -6418,7 +6425,16 @@ word-wrap@^1.2.5: resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -6488,11 +6504,16 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yaml@^2.4.5, yaml@~2.5.0: +yaml@^2.4.5: version "2.5.0" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.0.tgz#c6165a721cf8000e91c36490a41d7be25176cf5d" integrity sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw== +yaml@~2.5.0: + version "2.5.1" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.1.tgz#c9772aacf62cb7494a95b0c4f1fb065b563db130" + integrity sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q== + yargs-parser@^21.1.1: version "21.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" @@ -6522,9 +6543,9 @@ yocto-queue@^0.1.0: integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== zod-validation-error@^3.0.3: - version "3.3.1" - resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.3.1.tgz#86adc781129d1a7fed3c3e567e8dbe7c4a15eaa4" - integrity sha512-uFzCZz7FQis256dqw4AhPQgD6f3pzNca/Zh62RNELavlumQB3nDIUFbF5JQfFLcMbO1s02Q7Xg/gpcOBlEnYZA== + version "3.4.0" + resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.4.0.tgz#3a8a1f55c65579822d7faa190b51336c61bee2a6" + integrity sha512-ZOPR9SVY6Pb2qqO5XHt+MkkTRxGXb4EVtnjc9JpXUOtUB1T9Ru7mZOT361AN3MsetVe7R0a1KZshJDZdgp9miQ== zod@^3.22.4: version "3.23.8" From dbd7d26968b94700827bac525c39afff2c198e61 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 19 Sep 2024 16:26:50 +0100 Subject: [PATCH 436/595] Update dependency @types/node to v18.19.50 (#4418) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index aca7386fec7..aaf11bbed86 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1754,9 +1754,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.48" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.48.tgz#3a1696f4a7298d8831ed9ce47db62bf4c62c8880" - integrity sha512-7WevbG4ekUcRQSZzOwxWgi5dZmTak7FaxXDoW7xVxPBmKx1rTzfmRLkeCgJzcbBnOV2dkhAPc8cCeT6agocpjg== + version "18.19.50" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.50.tgz#8652b34ee7c0e7e2004b3f08192281808d41bf5a" + integrity sha512-xonK+NRrMBRtkL1hVCc3G+uXtjh1Al4opBLjqVmipe5ZAaBYWW6cNAiBVZ1BvmkBhep698rP3UM3aRAdSALuhg== dependencies: undici-types "~5.26.4" From 092a59af66e707917661a4639fc2d0e8bd2ed74c Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Mon, 23 Sep 2024 11:25:42 +0100 Subject: [PATCH 437/595] Throw clearer error if `createSecretStorageKey` misbehaves (#4412) https://github.com/element-hq/element-web/issues/27888 shows a slightly mysterious error message, but the problem is `createSecretStorageKey` returning the wrong thing. --- src/rust-crypto/rust-crypto.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 491fd04fc9b..e1e9ecef492 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -777,6 +777,9 @@ export class RustCrypto extends TypedEventEmitter Date: Mon, 23 Sep 2024 15:47:49 +0200 Subject: [PATCH 438/595] Update typedoc (#4419) * Update typedoc * Don't link a private method in tsdoc of a public method --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Florian Duros --- src/models/room.ts | 2 +- yarn.lock | 292 ++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 266 insertions(+), 28 deletions(-) diff --git a/src/models/room.ts b/src/models/room.ts index b013e76afaa..5ede46b7073 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -2096,7 +2096,7 @@ export class Room extends ReadReceipt { } /** - * Calls {@link processPollEvent} for a list of events. + * Process a list of poll events. * * @param events - List of events */ diff --git a/yarn.lock b/yarn.lock index aaf11bbed86..82fc43f285f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1558,13 +1558,48 @@ resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g== -"@shikijs/core@1.14.1": - version "1.14.1" - resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.14.1.tgz#008f1c4a20ff83fd1672d9e31d76b687862f7511" - integrity sha512-KyHIIpKNaT20FtFPFjCQB5WVSTpLR/n+jQXhWHWVUMm9MaOaG9BGOG0MSyt7yA4+Lm+4c9rTc03tt3nYzeYSfw== +"@shikijs/core@1.18.0": + version "1.18.0" + resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.18.0.tgz#30dde8e53026dada606c4cf7f32d80a3f33d437c" + integrity sha512-VK4BNVCd2leY62Nm2JjyxtRLkyrZT/tv104O81eyaCjHq4Adceq2uJVFJJAIof6lT1mBwZrEo2qT/T+grv3MQQ== + dependencies: + "@shikijs/engine-javascript" "1.18.0" + "@shikijs/engine-oniguruma" "1.18.0" + "@shikijs/types" "1.18.0" + "@shikijs/vscode-textmate" "^9.2.2" + "@types/hast" "^3.0.4" + hast-util-to-html "^9.0.3" + +"@shikijs/engine-javascript@1.18.0": + version "1.18.0" + resolved "https://registry.yarnpkg.com/@shikijs/engine-javascript/-/engine-javascript-1.18.0.tgz#9888011c5d869a687b42e3e56c7243f15a73524b" + integrity sha512-qoP/aO/ATNwYAUw1YMdaip/YVEstMZEgrwhePm83Ll9OeQPuxDZd48szZR8oSQNQBT8m8UlWxZv8EA3lFuyI5A== + dependencies: + "@shikijs/types" "1.18.0" + "@shikijs/vscode-textmate" "^9.2.2" + oniguruma-to-js "0.4.3" + +"@shikijs/engine-oniguruma@1.18.0": + version "1.18.0" + resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-1.18.0.tgz#7e57fd19b62b18cf2de382da684d042ee934f65d" + integrity sha512-B9u0ZKI/cud+TcmF8Chyh+R4V5qQVvyDOqXC2l2a4x73PBSBc6sZ0JRAX3eqyJswqir6ktwApUUGBYePdKnMJg== + dependencies: + "@shikijs/types" "1.18.0" + "@shikijs/vscode-textmate" "^9.2.2" + +"@shikijs/types@1.18.0": + version "1.18.0" + resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-1.18.0.tgz#4c2d62d17f78cbfc051a15480ab4dfb0f06196c9" + integrity sha512-O9N36UEaGGrxv1yUrN2nye7gDLG5Uq0/c1LyfmxsvzNPqlHzWo9DI0A4+fhW2y3bGKuQu/fwS7EPdKJJCowcVA== dependencies: + "@shikijs/vscode-textmate" "^9.2.2" "@types/hast" "^3.0.4" +"@shikijs/vscode-textmate@^9.2.2": + version "9.2.2" + resolved "https://registry.yarnpkg.com/@shikijs/vscode-textmate/-/vscode-textmate-9.2.2.tgz#24571f50625c7cd075f9efe0def8b9d2c0930ada" + integrity sha512-TMp15K+GGYrWlZM8+Lnj9EaHEFmOen0WJBrfa17hF7taDOYthuPPV0GWzfd/9iMij0akS/8Yw2ikquH7uVi/fg== + "@sinclair/typebox@^0.24.1": version "0.24.51" resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.51.tgz#645f33fe4e02defe26f2f5c0410e1c094eac7f5f" @@ -1693,7 +1728,7 @@ dependencies: "@types/node" "*" -"@types/hast@^3.0.4": +"@types/hast@^3.0.0", "@types/hast@^3.0.4": version "3.0.4" resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.4.tgz#1d6b39993b82cea6ad783945b0508c25903e15aa" integrity sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ== @@ -1741,6 +1776,13 @@ resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== +"@types/mdast@^4.0.0": + version "4.0.4" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-4.0.4.tgz#7ccf72edd2f1aa7dd3437e180c64373585804dd6" + integrity sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA== + dependencies: + "@types/unist" "*" + "@types/ms@*": version "0.7.34" resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.34.tgz#10964ba0dee6ac4cd462e2795b6bebd407303433" @@ -1785,7 +1827,7 @@ resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.5.tgz#cb6e2a691b70cb177c6e3ae9c1d2e8b2ea8cd304" integrity sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA== -"@types/unist@*": +"@types/unist@*", "@types/unist@^3.0.0": version "3.0.3" resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.3.tgz#acaab0f919ce69cce629c2d4ed2eb4adc1b6c20c" integrity sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q== @@ -1933,7 +1975,7 @@ "@typescript-eslint/types" "8.6.0" eslint-visitor-keys "^3.4.3" -"@ungap/structured-clone@^1.2.0": +"@ungap/structured-clone@^1.0.0", "@ungap/structured-clone@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== @@ -2371,6 +2413,11 @@ caniuse-lite@^1.0.30001646: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz#0ce881f5a19a2dcfda2ecd927df4d5c1684b982f" integrity sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg== +ccount@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" + integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== + chalk@5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.2.0.tgz#249623b7d66869c673699fb66d65723e54dfcfb3" @@ -2403,6 +2450,16 @@ char-regex@^1.0.2: resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== +character-entities-html4@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-2.1.0.tgz#1f1adb940c971a4b22ba39ddca6b618dc6e56b2b" + integrity sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA== + +character-entities-legacy@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz#76bc83a90738901d7bc223a9e93759fdd560125b" + integrity sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ== + chokidar@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" @@ -2520,6 +2577,11 @@ combined-stream@^1.0.8: dependencies: delayed-stream "~1.0.0" +comma-separated-tokens@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee" + integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg== + commander@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" @@ -2718,7 +2780,7 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== -dequal@^2.0.3: +dequal@^2.0.0, dequal@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== @@ -2728,6 +2790,13 @@ detect-newline@^3.0.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== +devlop@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/devlop/-/devlop-1.1.0.tgz#4db7c2ca4dc6e0e834c30be70c94bbc976dc7018" + integrity sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA== + dependencies: + dequal "^2.0.0" + diff-sequences@^28.1.1: version "28.1.1" resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-28.1.1.tgz#9989dc731266dc2903457a70e996f3a041913ac6" @@ -3715,6 +3784,30 @@ hasown@^2.0.0, hasown@^2.0.1, hasown@^2.0.2: dependencies: function-bind "^1.1.2" +hast-util-to-html@^9.0.3: + version "9.0.3" + resolved "https://registry.yarnpkg.com/hast-util-to-html/-/hast-util-to-html-9.0.3.tgz#a9999a0ba6b4919576a9105129fead85d37f302b" + integrity sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg== + dependencies: + "@types/hast" "^3.0.0" + "@types/unist" "^3.0.0" + ccount "^2.0.0" + comma-separated-tokens "^2.0.0" + hast-util-whitespace "^3.0.0" + html-void-elements "^3.0.0" + mdast-util-to-hast "^13.0.0" + property-information "^6.0.0" + space-separated-tokens "^2.0.0" + stringify-entities "^4.0.0" + zwitch "^2.0.4" + +hast-util-whitespace@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz#7778ed9d3c92dd9e8c5c8f648a49c21fc51cb621" + integrity sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw== + dependencies: + "@types/hast" "^3.0.0" + hosted-git-info@^2.1.4: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" @@ -3732,6 +3825,11 @@ html-escaper@^2.0.0: resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== +html-void-elements@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-3.0.0.tgz#fc9dbd84af9e747249034d4d62602def6517f1d7" + integrity sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg== + http-proxy-agent@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" @@ -4861,6 +4959,21 @@ matrix-widget-api@^1.8.2: "@types/events" "^3.0.0" events "^3.2.0" +mdast-util-to-hast@^13.0.0: + version "13.2.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz#5ca58e5b921cc0a3ded1bc02eed79a4fe4fe41f4" + integrity sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA== + dependencies: + "@types/hast" "^3.0.0" + "@types/mdast" "^4.0.0" + "@ungap/structured-clone" "^1.0.0" + devlop "^1.0.0" + micromark-util-sanitize-uri "^2.0.0" + trim-lines "^3.0.0" + unist-util-position "^5.0.0" + unist-util-visit "^5.0.0" + vfile "^6.0.0" + mdurl@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-2.0.0.tgz#80676ec0433025dd3e17ee983d0fe8de5a2237e0" @@ -4876,6 +4989,38 @@ merge2@^1.3.0, merge2@^1.4.1: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== +micromark-util-character@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.1.0.tgz#31320ace16b4644316f6bf057531689c71e2aee1" + integrity sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ== + dependencies: + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-util-encode@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz#0921ac7953dc3f1fd281e3d1932decfdb9382ab1" + integrity sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA== + +micromark-util-sanitize-uri@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz#ec8fbf0258e9e6d8f13d9e4770f9be64342673de" + integrity sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw== + dependencies: + micromark-util-character "^2.0.0" + micromark-util-encode "^2.0.0" + micromark-util-symbol "^2.0.0" + +micromark-util-symbol@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz#12225c8f95edf8b17254e47080ce0862d5db8044" + integrity sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw== + +micromark-util-types@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-2.0.0.tgz#63b4b7ffeb35d3ecf50d1ca20e68fc7caa36d95e" + integrity sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w== + micromatch@^4.0.4, micromatch@~4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" @@ -5096,6 +5241,13 @@ onetime@^7.0.0: dependencies: mimic-function "^5.0.0" +oniguruma-to-js@0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/oniguruma-to-js/-/oniguruma-to-js-0.4.3.tgz#8d899714c21f5c7d59a3c0008ca50e848086d740" + integrity sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ== + dependencies: + regex "^4.3.2" + optionator@^0.9.3: version "0.9.4" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" @@ -5332,6 +5484,11 @@ prompts@^2.0.1: kleur "^3.0.3" sisteransi "^1.0.5" +property-information@^6.0.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/property-information/-/property-information-6.5.0.tgz#6212fbb52ba757e92ef4fb9d657563b933b7ffec" + integrity sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig== + psl@^1.1.33: version "1.9.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" @@ -5434,6 +5591,11 @@ regenerator-transform@^0.15.2: dependencies: "@babel/runtime" "^7.8.4" +regex@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/regex/-/regex-4.3.2.tgz#a68a68c9b337a77bf4ce4ed0b4b1a49d97cb3b7b" + integrity sha512-kK/AA3A9K6q2js89+VMymcboLOlF5lZRCYJv3gzszXFHBr6kO6qLGzbm+UIugBEV8SMMKCTR59txoY6ctRHYVw== + regexp-tree@^0.1.27: version "0.1.27" resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.27.tgz#2198f0ef54518ffa743fe74d983b56ffd631b6cd" @@ -5676,12 +5838,16 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shiki@^1.9.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.14.1.tgz#617e62dfbe3a083e46111e22086044fbd7644786" - integrity sha512-FujAN40NEejeXdzPt+3sZ3F2dx1U24BY2XTY01+MG8mbxCiA2XukXdcbyMyLAHJ/1AUUnQd1tZlvIjefWWEJeA== +shiki@^1.16.2: + version "1.18.0" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.18.0.tgz#4f9ca2f442b3612849017ab1dcac47c35ee52276" + integrity sha512-8jo7tOXr96h9PBQmOHVrltnETn1honZZY76YA79MHheGQg55jBvbm9dtU+MI5pjC5NJCFuA6rvVTLVeSW5cE4A== dependencies: - "@shikijs/core" "1.14.1" + "@shikijs/core" "1.18.0" + "@shikijs/engine-javascript" "1.18.0" + "@shikijs/engine-oniguruma" "1.18.0" + "@shikijs/types" "1.18.0" + "@shikijs/vscode-textmate" "^9.2.2" "@types/hast" "^3.0.4" side-channel@^1.0.4: @@ -5758,6 +5924,11 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +space-separated-tokens@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz#1ecd9d2350a3844572c3f4a312bceb018348859f" + integrity sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q== + spdx-correct@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" @@ -5881,6 +6052,14 @@ string.prototype.trimstart@^1.0.8: define-properties "^1.2.1" es-object-atoms "^1.0.0" +stringify-entities@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-4.0.4.tgz#b3b79ef5f277cc4ac73caeb0236c5ba939b3a4f3" + integrity sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg== + dependencies: + character-entities-html4 "^2.0.0" + character-entities-legacy "^3.0.0" + "strip-ansi-cjs@npm:strip-ansi@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -6048,6 +6227,11 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== +trim-lines@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-3.0.1.tgz#d802e332a07df861c48802c04321017b1bd87338" + integrity sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg== + ts-api-utils@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1" @@ -6174,9 +6358,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-wpywQ95tqGSD6IbYUPMXSKiwnSWboSKdx2y9X6SJQKzQvBqZoz5iiUyDJFixtW8v7+xmrqXFR/B6Wy37FNhVqA== typedoc-plugin-mdn-links@^3.0.3: - version "3.2.11" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.2.11.tgz#837ab7138535a91d9e1803bf69b6e357b6d0c354" - integrity sha512-0VlF21O3S1L373UTkUFleoQDrgkh5quAqjCVusBaa3czLahK6LsUxQj6PRqbT5xN0emUVYnT7UTwe8haU2MFrw== + version "3.3.1" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.3.1.tgz#cf9962341477437c2235a640e006d1da48551024" + integrity sha512-hgCOm3vDYLbSsIiQbr5hb/ayiMnspjsOwgH4hNVoOLaAeEecuwlY4VY7yh68TY10P1GwbG3N4UnAqmbkvf89KA== typedoc-plugin-missing-exports@^3.0.0: version "3.0.0" @@ -6184,15 +6368,15 @@ typedoc-plugin-missing-exports@^3.0.0: integrity sha512-R7D8fYrK34mBFZSlF1EqJxfqiUSlQSmyrCiQgTQD52nNm6+kUtqwiaqaNkuJ2rA2wBgWFecUA8JzHT7x2r7ePg== typedoc@^0.26.0: - version "0.26.6" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.6.tgz#9cb3d6f0ed5070f86af169c3f88ca2c9b7031f59" - integrity sha512-SfEU3SH3wHNaxhFPjaZE2kNl/NFtLNW5c1oHsg7mti7GjmUj1Roq6osBQeMd+F4kL0BoRBBr8gQAuqBlfFu8LA== + version "0.26.7" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.7.tgz#1980e3ed51c6c315b7a09786b2b9af1106a3aa80" + integrity sha512-gUeI/Wk99vjXXMi8kanwzyhmeFEGv1LTdTQsiyIsmSYsBebvFxhbcyAx7Zjo4cMbpLGxM4Uz3jVIjksu/I2v6Q== dependencies: lunr "^2.3.9" markdown-it "^14.1.0" minimatch "^9.0.5" - shiki "^1.9.1" - yaml "^2.4.5" + shiki "^1.16.2" + yaml "^2.5.1" typescript@^5.3.3: version "5.5.4" @@ -6247,6 +6431,44 @@ unicode-property-aliases-ecmascript@^2.0.0: resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== +unist-util-is@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-6.0.0.tgz#b775956486aff107a9ded971d996c173374be424" + integrity sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw== + dependencies: + "@types/unist" "^3.0.0" + +unist-util-position@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-5.0.0.tgz#678f20ab5ca1207a97d7ea8a388373c9cf896be4" + integrity sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA== + dependencies: + "@types/unist" "^3.0.0" + +unist-util-stringify-position@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz#449c6e21a880e0855bf5aabadeb3a740314abac2" + integrity sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ== + dependencies: + "@types/unist" "^3.0.0" + +unist-util-visit-parents@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz#4d5f85755c3b8f0dc69e21eca5d6d82d22162815" + integrity sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw== + dependencies: + "@types/unist" "^3.0.0" + unist-util-is "^6.0.0" + +unist-util-visit@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-5.0.0.tgz#a7de1f31f72ffd3519ea71814cccf5fd6a9217d6" + integrity sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg== + dependencies: + "@types/unist" "^3.0.0" + unist-util-is "^6.0.0" + unist-util-visit-parents "^6.0.0" + universalify@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" @@ -6307,6 +6529,22 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" +vfile-message@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-4.0.2.tgz#c883c9f677c72c166362fd635f21fc165a7d1181" + integrity sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw== + dependencies: + "@types/unist" "^3.0.0" + unist-util-stringify-position "^4.0.0" + +vfile@^6.0.0: + version "6.0.3" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-6.0.3.tgz#3652ab1c496531852bf55a6bac57af981ebc38ab" + integrity sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q== + dependencies: + "@types/unist" "^3.0.0" + vfile-message "^4.0.0" + w3c-xmlserializer@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz#aebdc84920d806222936e3cdce408e32488a3073" @@ -6504,12 +6742,7 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yaml@^2.4.5: - version "2.5.0" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.0.tgz#c6165a721cf8000e91c36490a41d7be25176cf5d" - integrity sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw== - -yaml@~2.5.0: +yaml@^2.5.1, yaml@~2.5.0: version "2.5.1" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.1.tgz#c9772aacf62cb7494a95b0c4f1fb065b563db130" integrity sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q== @@ -6551,3 +6784,8 @@ zod@^3.22.4: version "3.23.8" resolved "https://registry.yarnpkg.com/zod/-/zod-3.23.8.tgz#e37b957b5d52079769fb8097099b592f0ef4067d" integrity sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g== + +zwitch@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7" + integrity sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A== From 82e9eefce60349fe7de792ce2fbb7c4e55a283cb Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 24 Sep 2024 12:37:19 +0000 Subject: [PATCH 439/595] v34.6.0 --- CHANGELOG.md | 16 ++++++++++++++++ package.json | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d85bce05a0c..d0a5e1cd743 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,19 @@ +Changes in [34.6.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.6.0) (2024-09-24) +================================================================================================== +## 🦖 Deprecations + +* Element-R: Mark unsupported MatrixClient methods as deprecated ([#4389](https://github.com/matrix-org/matrix-js-sdk/pull/4389)). Contributed by @richvdh. + +## ✨ Features + +* Add crypto mode setting for invisible crypto, and apply it to decrypting events ([#4407](https://github.com/matrix-org/matrix-js-sdk/pull/4407)). Contributed by @uhoreg. +* Don't share full key history for RTC per-participant encryption ([#4406](https://github.com/matrix-org/matrix-js-sdk/pull/4406)). Contributed by @hughns. +* Export membership types ([#4405](https://github.com/matrix-org/matrix-js-sdk/pull/4405)). Contributed by @Johennes. +* Fix sending redacts in embedded (widget) mode ([#4398](https://github.com/matrix-org/matrix-js-sdk/pull/4398)). Contributed by @toger5. +* Expose the event ID of a call membership ([#4395](https://github.com/matrix-org/matrix-js-sdk/pull/4395)). Contributed by @robintown. +* MSC4133 - Extended profiles ([#4391](https://github.com/matrix-org/matrix-js-sdk/pull/4391)). Contributed by @Half-Shot. + + Changes in [34.5.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.5.0) (2024-09-10) ================================================================================================== ## 🦖 Deprecations diff --git a/package.json b/package.json index 1e73870611e..89dc3c3aafe 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.6.0-rc.0", + "version": "34.6.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From d0890d94503007e8d2b222e66523ee1e3a68fb5a Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Tue, 24 Sep 2024 17:35:40 +0200 Subject: [PATCH 440/595] Update sonarcloud action to use v3.3 `matrix-org/sonarcloud-workflow-action` (#4430) --- .github/workflows/sonarcloud.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index 7507f9d8528..7c4ee9368d8 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -63,7 +63,7 @@ jobs: - name: "🩻 SonarCloud Scan" id: sonarcloud - uses: matrix-org/sonarcloud-workflow-action@v3.2 + uses: matrix-org/sonarcloud-workflow-action@v3.3 # workflow_run fails report against the develop commit always, we don't want that for PRs continue-on-error: ${{ github.event.workflow_run.head_branch != 'develop' }} with: From 1a8ea3d6855cb74b476f7307c9ac48388ff81b48 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 24 Sep 2024 17:38:18 +0100 Subject: [PATCH 441/595] Add `CryptoApi.pinCurrentUserIdentity` and `UserIdentity.needsUserApproval` (#4415) * Implement `UserVerificationStatus.needsUserApproval` Expose the `identityNeedsUserApproval` flag from the rust crypto crate. * Add CryptoApi.pinCurrentUserIdentity Expose `pinCurrentMasterKey` from the rust crypto api. * Test data: add second cross-signing key for Bob * Add tests for verification status --- spec/integ/crypto/crypto.spec.ts | 65 +++++++++++++++++-- .../test-data/generate-test-data.py | 21 ++++-- spec/test-utils/test-data/index.ts | 47 ++++++++++++++ spec/unit/rust-crypto/rust-crypto.spec.ts | 43 +++++++++++- src/crypto-api/index.ts | 32 ++++++++- src/crypto/index.ts | 7 ++ src/rust-crypto/rust-crypto.ts | 24 ++++++- 7 files changed, 223 insertions(+), 16 deletions(-) diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 41b52dd53cb..e6b6951a4aa 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -3261,15 +3261,13 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, }); }); - describe("Check if the cross signing keys are available for a user", () => { + describe("User identity", () => { + let keyResponder: E2EKeyResponder; beforeEach(async () => { - // anything that we don't have a specific matcher for silently returns a 404 - fetchMock.catch(404); - - const keyResponder = new E2EKeyResponder(aliceClient.getHomeserverUrl()); + keyResponder = new E2EKeyResponder(aliceClient.getHomeserverUrl()); keyResponder.addCrossSigningData(SIGNED_CROSS_SIGNING_KEYS_DATA); keyResponder.addDeviceKeys(SIGNED_TEST_DEVICE_DATA); - keyResponder.addKeyReceiver(BOB_TEST_USER_ID, keyReceiver); + keyResponder.addKeyReceiver(TEST_USER_ID, keyReceiver); keyResponder.addCrossSigningData(BOB_SIGNED_CROSS_SIGNING_KEYS_DATA); keyResponder.addDeviceKeys(BOB_SIGNED_TEST_DEVICE_DATA); @@ -3285,6 +3283,12 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, .getCrypto()! .userHasCrossSigningKeys(BOB_TEST_USER_ID, true); expect(hasCrossSigningKeysForUser).toBe(true); + + const verificationStatus = await aliceClient.getCrypto()!.getUserVerificationStatus(BOB_TEST_USER_ID); + expect(verificationStatus.isVerified()).toBe(false); + expect(verificationStatus.isCrossSigningVerified()).toBe(false); + expect(verificationStatus.wasCrossSigningVerified()).toBe(false); + expect(verificationStatus.needsUserApproval).toBe(false); }); it("Cross signing keys are available for a tracked user", async () => { @@ -3295,11 +3299,60 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, // Alice is the local user and should be tracked ! const hasCrossSigningKeysForUser = await aliceClient.getCrypto()!.userHasCrossSigningKeys(TEST_USER_ID); expect(hasCrossSigningKeysForUser).toBe(true); + + const verificationStatus = await aliceClient.getCrypto()!.getUserVerificationStatus(BOB_TEST_USER_ID); + expect(verificationStatus.isVerified()).toBe(false); + expect(verificationStatus.isCrossSigningVerified()).toBe(false); + expect(verificationStatus.wasCrossSigningVerified()).toBe(false); + expect(verificationStatus.needsUserApproval).toBe(false); }); it("Cross signing keys are not available for an unknown user", async () => { const hasCrossSigningKeysForUser = await aliceClient.getCrypto()!.userHasCrossSigningKeys("@unknown:xyz"); expect(hasCrossSigningKeysForUser).toBe(false); + + const verificationStatus = await aliceClient.getCrypto()!.getUserVerificationStatus(BOB_TEST_USER_ID); + expect(verificationStatus.isVerified()).toBe(false); + expect(verificationStatus.isCrossSigningVerified()).toBe(false); + expect(verificationStatus.wasCrossSigningVerified()).toBe(false); + expect(verificationStatus.needsUserApproval).toBe(false); + }); + + newBackendOnly("An unverified user changes identity", async () => { + // We have to be tracking Bob's keys, which means we need to share a room with him + syncResponder.sendOrQueueSyncResponse({ + ...getSyncResponse([BOB_TEST_USER_ID]), + device_lists: { changed: [BOB_TEST_USER_ID] }, + }); + await syncPromise(aliceClient); + + const hasCrossSigningKeysForUser = await aliceClient.getCrypto()!.userHasCrossSigningKeys(BOB_TEST_USER_ID); + expect(hasCrossSigningKeysForUser).toBe(true); + + // Bob changes his cross-signing keys + keyResponder.addCrossSigningData(testData.BOB_ALT_SIGNED_CROSS_SIGNING_KEYS_DATA); + syncResponder.sendOrQueueSyncResponse({ + next_batch: "2", + device_lists: { changed: [BOB_TEST_USER_ID] }, + }); + await syncPromise(aliceClient); + + await aliceClient.getCrypto()!.userHasCrossSigningKeys(BOB_TEST_USER_ID, true); + + { + const verificationStatus = await aliceClient.getCrypto()!.getUserVerificationStatus(BOB_TEST_USER_ID); + expect(verificationStatus.isVerified()).toBe(false); + expect(verificationStatus.isCrossSigningVerified()).toBe(false); + expect(verificationStatus.wasCrossSigningVerified()).toBe(false); + expect(verificationStatus.needsUserApproval).toBe(true); + } + + // Pinning the new identity should clear the needsUserApproval flag. + await aliceClient.getCrypto()!.pinCurrentUserIdentity(BOB_TEST_USER_ID); + { + const verificationStatus = await aliceClient.getCrypto()!.getUserVerificationStatus(BOB_TEST_USER_ID); + expect(verificationStatus.needsUserApproval).toBe(false); + } }); }); diff --git a/spec/test-utils/test-data/generate-test-data.py b/spec/test-utils/test-data/generate-test-data.py index 2e85a6c8218..5a80a4a1a41 100755 --- a/spec/test-utils/test-data/generate-test-data.py +++ b/spec/test-utils/test-data/generate-test-data.py @@ -66,6 +66,7 @@ "TEST_DEVICE_CURVE_PRIVATE_KEY_BYTES": b"Deadmuledeadmuledeadmuledeadmule", "MASTER_CROSS_SIGNING_PRIVATE_KEY_BYTES": b"Doyouspeakwhaaaaaaaaaaaaaaaaaale", + "ALT_MASTER_CROSS_SIGNING_PRIVATE_KEY_BYTES": b"DoYouSpeakWhaaaaaaaaaaaaaaaaaale", "USER_CROSS_SIGNING_PRIVATE_KEY_BYTES": b"Useruseruseruseruseruseruseruser", "SELF_CROSS_SIGNING_PRIVATE_KEY_BYTES": b"Selfselfselfselfselfselfselfself", @@ -208,7 +209,7 @@ def build_test_data(user_data, prefix = "") -> str: backup_recovery_key = export_recovery_key(user_data["B64_BACKUP_DECRYPTION_KEY"]) - return f"""\ + result = f"""\ export const {prefix}TEST_USER_ID = "{user_data['TEST_USER_ID']}"; export const {prefix}TEST_DEVICE_ID = "{user_data['TEST_DEVICE_ID']}"; export const {prefix}TEST_ROOM_ID = "{user_data['TEST_ROOM_ID']}"; @@ -239,7 +240,7 @@ def build_test_data(user_data, prefix = "") -> str: /** Signed cross-signing keys data, also suitable for returning from a `/keys/query` call */ export const {prefix}SIGNED_CROSS_SIGNING_KEYS_DATA: Partial = { - json.dumps(build_cross_signing_keys_data(user_data), indent=4) + json.dumps(build_cross_signing_keys_data(user_data, user_data["MASTER_CROSS_SIGNING_PRIVATE_KEY_BYTES"]), indent=4) }; /** Signed OTKs, returned by `POST /keys/claim` */ @@ -279,12 +280,20 @@ def build_test_data(user_data, prefix = "") -> str: export const {prefix}ENCRYPTED_EVENT: Partial = {json.dumps(encrypted_event, indent=4)}; """ + alt_master_key = user_data.get("ALT_MASTER_CROSS_SIGNING_PRIVATE_KEY_BYTES") + if alt_master_key is not None: + result += f""" +/** A second set of signed cross-signing keys data, also suitable for returning from a `/keys/query` call */ +export const {prefix}ALT_SIGNED_CROSS_SIGNING_KEYS_DATA: Partial = { + json.dumps(build_cross_signing_keys_data(user_data, alt_master_key), indent=4) +}; +""" + + return result -def build_cross_signing_keys_data(user_data) -> dict: +def build_cross_signing_keys_data(user_data, master_key_bytes) -> dict: """Build the signed cross-signing-keys data for return from /keys/query""" - master_private_key = ed25519.Ed25519PrivateKey.from_private_bytes( - user_data["MASTER_CROSS_SIGNING_PRIVATE_KEY_BYTES"] - ) + master_private_key = ed25519.Ed25519PrivateKey.from_private_bytes(master_key_bytes) b64_master_public_key = encode_base64( master_private_key.public_key().public_bytes(Encoding.Raw, PublicFormat.Raw) ) diff --git a/spec/test-utils/test-data/index.ts b/spec/test-utils/test-data/index.ts index 44245b4a6eb..77a2687b84e 100644 --- a/spec/test-utils/test-data/index.ts +++ b/spec/test-utils/test-data/index.ts @@ -449,3 +449,50 @@ export const BOB_ENCRYPTED_EVENT: Partial = { "origin_server_ts": 1507753886000 }; +/** A second set of signed cross-signing keys data, also suitable for returning from a `/keys/query` call */ +export const BOB_ALT_SIGNED_CROSS_SIGNING_KEYS_DATA: Partial = { + "master_keys": { + "@bob:xyz": { + "keys": { + "ed25519:MCYxU7myKVkoQ55VYw/rXdg5cEupRfDdHmFPJUmR5+E": "MCYxU7myKVkoQ55VYw/rXdg5cEupRfDdHmFPJUmR5+E" + }, + "user_id": "@bob:xyz", + "usage": [ + "master" + ] + } + }, + "self_signing_keys": { + "@bob:xyz": { + "keys": { + "ed25519:DaScI3WulBvDjf/d2vdyP5Cgjdypn1c/PSDX23MgN+A": "DaScI3WulBvDjf/d2vdyP5Cgjdypn1c/PSDX23MgN+A" + }, + "user_id": "@bob:xyz", + "usage": [ + "self_signing" + ], + "signatures": { + "@bob:xyz": { + "ed25519:MCYxU7myKVkoQ55VYw/rXdg5cEupRfDdHmFPJUmR5+E": "eDZETBRUw9yW0WJnBZ7vxo12TW09Yb7/47qBPKZzPZzZEvs9M82dnAOtWUv00mcTdp2K9GpeFYDQJ6qLQgxaCA" + } + } + } + }, + "user_signing_keys": { + "@bob:xyz": { + "keys": { + "ed25519:lXP89FP6zvFH9TSbU1S8uSdAsVawm1NmV6z+Rfr3lEw": "lXP89FP6zvFH9TSbU1S8uSdAsVawm1NmV6z+Rfr3lEw" + }, + "user_id": "@bob:xyz", + "usage": [ + "user_signing" + ], + "signatures": { + "@bob:xyz": { + "ed25519:MCYxU7myKVkoQ55VYw/rXdg5cEupRfDdHmFPJUmR5+E": "Q1CbIXvp2BxBsu3F/eZ1ZpuR5rXIt0+FrrA/l6itskpW748xwMoIKxQRVQqs87kh7pCsWEoTy6FzIL8nV+P6BQ" + } + } + } + } +}; + diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 2b161c778f7..07501a47c95 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -1362,13 +1362,52 @@ describe("RustCrypto", () => { }); it("returns a verified UserVerificationStatus when the UserIdentity is verified", async () => { - olmMachine.getIdentity.mockResolvedValue({ free: jest.fn(), isVerified: jest.fn().mockReturnValue(true) }); + olmMachine.getIdentity.mockResolvedValue({ + free: jest.fn(), + isVerified: jest.fn().mockReturnValue(true), + wasPreviouslyVerified: jest.fn().mockReturnValue(true), + }); const userVerificationStatus = await rustCrypto.getUserVerificationStatus(testData.TEST_USER_ID); expect(userVerificationStatus.isVerified()).toBeTruthy(); expect(userVerificationStatus.isTofu()).toBeFalsy(); expect(userVerificationStatus.isCrossSigningVerified()).toBeTruthy(); - expect(userVerificationStatus.wasCrossSigningVerified()).toBeFalsy(); + expect(userVerificationStatus.wasCrossSigningVerified()).toBeTruthy(); + }); + }); + + describe("pinCurrentIdentity", () => { + let rustCrypto: RustCrypto; + let olmMachine: Mocked; + + beforeEach(() => { + olmMachine = { + getIdentity: jest.fn(), + } as unknown as Mocked; + rustCrypto = new RustCrypto( + logger, + olmMachine, + {} as MatrixClient["http"], + TEST_USER, + TEST_DEVICE_ID, + {} as ServerSideSecretStorage, + {} as CryptoCallbacks, + ); + }); + + it("throws an error for an unknown user", async () => { + await expect(rustCrypto.pinCurrentUserIdentity("@alice:example.com")).rejects.toThrow( + "Cannot pin identity of unknown user", + ); + }); + + it("throws an error for our own user", async () => { + const ownIdentity = new RustSdkCryptoJs.OwnUserIdentity(); + olmMachine.getIdentity.mockResolvedValue(ownIdentity); + + await expect(rustCrypto.pinCurrentUserIdentity("@alice:example.com")).rejects.toThrow( + "Cannot pin identity of own user", + ); }); }); diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index 35e4a689762..39038290f34 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -197,6 +197,16 @@ export interface CryptoApi { */ getUserVerificationStatus(userId: string): Promise; + /** + * "Pin" the current identity of the given user, accepting it as genuine. + * + * This is useful if the user has changed identity since we first saw them (leading to + * {@link UserVerificationStatus.needsUserApproval}), and we are now accepting their new identity. + * + * Throws an error if called on our own user ID, or on a user ID that we don't have an identity for. + */ + pinCurrentUserIdentity(userId: string): Promise; + /** * Get the verification status of a given device. * @@ -707,11 +717,29 @@ export interface BootstrapCrossSigningOpts { * Represents the ways in which we trust a user */ export class UserVerificationStatus { + /** + * Indicates if the identity has changed in a way that needs user approval. + * + * This happens if the identity has changed since we first saw it, *unless* the new identity has also been verified + * by our user (eg via an interactive verification). + * + * To rectify this, either: + * + * * Conduct a verification of the new identity via {@link CryptoApi.requestVerificationDM}. + * * Pin the new identity, via {@link CryptoApi.pinCurrentUserIdentity}. + * + * @returns true if the identity has changed in a way that needs user approval. + */ + public readonly needsUserApproval: boolean; + public constructor( private readonly crossSigningVerified: boolean, private readonly crossSigningVerifiedBefore: boolean, private readonly tofu: boolean, - ) {} + needsUserApproval: boolean = false, + ) { + this.needsUserApproval = needsUserApproval; + } /** * @returns true if this user is verified via any means @@ -737,6 +765,8 @@ export class UserVerificationStatus { /** * @returns true if this user's key is trusted on first use + * + * @deprecated No longer supported, with the Rust crypto stack. */ public isTofu(): boolean { return this.tofu; diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 90638aea1a0..38bf03c7fd8 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -1609,6 +1609,13 @@ export class Crypto extends TypedEventEmitter { + throw new Error("not implemented"); + } + /** * Check whether a given device is trusted. * diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index e1e9ecef492..15fa6371f31 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -654,9 +654,31 @@ export class RustCrypto extends TypedEventEmitter { + const userIdentity: RustSdkCryptoJs.UserIdentity | RustSdkCryptoJs.OwnUserIdentity | undefined = + await this.getOlmMachineOrThrow().getIdentity(new RustSdkCryptoJs.UserId(userId)); + + if (userIdentity === undefined) { + throw new Error("Cannot pin identity of unknown user"); + } + + if (userIdentity instanceof RustSdkCryptoJs.OwnUserIdentity) { + throw new Error("Cannot pin identity of own user"); + } + + await userIdentity.pinCurrentMasterKey(); } /** From 538717c23eafd9acd68c7c10564687bc3ce5bcf1 Mon Sep 17 00:00:00 2001 From: Valere Date: Wed, 25 Sep 2024 15:33:02 +0200 Subject: [PATCH 442/595] crypto: Replace cryptoMode with DeviceIsolationMode concept (#4429) * crypto: Replace cryptoMode with DeviceIsolationMode concept * use enum instead of string for the IsolationMode kind * Code review - Cleaning, renaming * review: unneeded @see in doc * review: Rename IsolationMode with better names * review: quick cleaning and doc --- spec/integ/crypto/crypto.spec.ts | 60 ++++++++++++++----------- src/crypto-api/index.ts | 75 ++++++++++++++++++++------------ src/crypto/index.ts | 7 ++- src/rust-crypto/rust-crypto.ts | 29 ++++++------ 4 files changed, 101 insertions(+), 70 deletions(-) diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index e6b6951a4aa..e5d25537f10 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -82,11 +82,13 @@ import { SecretStorageKeyDescription } from "../../../src/secret-storage"; import { CrossSigningKey, CryptoCallbacks, - CryptoMode, DecryptionFailureCode, + DeviceIsolationMode, EventShieldColour, EventShieldReason, KeyBackupInfo, + AllDevicesIsolationMode, + OnlySignedDevicesIsolationMode, } from "../../../src/crypto-api"; import { E2EKeyResponder } from "../../test-utils/E2EKeyResponder"; import { IKeyBackup } from "../../../src/crypto/backup"; @@ -747,9 +749,34 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, ); }); - newBackendOnly( - "fails with an error when cross-signed sender is required but sender is not cross-signed", - async () => { + describe("IsolationMode decryption tests", () => { + newBackendOnly( + "OnlySigned mode - fails with an error when cross-signed sender is required but sender is not cross-signed", + async () => { + const decryptedEvent = await setUpTestAndDecrypt(new OnlySignedDevicesIsolationMode()); + + // It will error as an unknown device because we haven't fetched + // the sender's device keys. + expect(decryptedEvent.isDecryptionFailure()).toBe(true); + expect(decryptedEvent.decryptionFailureReason).toEqual(DecryptionFailureCode.UNKNOWN_SENDER_DEVICE); + }, + ); + + newBackendOnly( + "NoIsolation mode - Decrypts with warning when cross-signed sender is required but sender is not cross-signed", + async () => { + const decryptedEvent = await setUpTestAndDecrypt(new AllDevicesIsolationMode(false)); + + expect(decryptedEvent.isDecryptionFailure()).toBe(false); + + expect(await aliceClient.getCrypto()!.getEncryptionInfoForEvent(decryptedEvent)).toEqual({ + shieldColour: EventShieldColour.RED, + shieldReason: EventShieldReason.UNKNOWN_DEVICE, + }); + }, + ); + + async function setUpTestAndDecrypt(isolationMode: DeviceIsolationMode): Promise { // This tests that a message will not be decrypted if the sender // is not sufficiently trusted according to the selected crypto // mode. @@ -760,7 +787,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); // Start by using Invisible crypto mode - aliceClient.getCrypto()!.setCryptoMode(CryptoMode.Invisible); + aliceClient.getCrypto()!.setDeviceIsolationMode(isolationMode); await startClientAndAwaitFirstSync(); @@ -807,26 +834,9 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, expect(event.isEncrypted()).toBe(true); // it probably won't be decrypted yet, because it takes a while to process the olm keys - const decryptedEvent = await testUtils.awaitDecryption(event); - // It will error as an unknown device because we haven't fetched - // the sender's device keys. - expect(decryptedEvent.decryptionFailureReason).toEqual(DecryptionFailureCode.UNKNOWN_SENDER_DEVICE); - - // Next, try decrypting in transition mode, which should also - // fail for the same reason - aliceClient.getCrypto()!.setCryptoMode(CryptoMode.Transition); - - await event.attemptDecryption(aliceClient["cryptoBackend"]!); - expect(decryptedEvent.decryptionFailureReason).toEqual(DecryptionFailureCode.UNKNOWN_SENDER_DEVICE); - - // Decrypting in legacy mode should succeed since it doesn't - // care about device trust. - aliceClient.getCrypto()!.setCryptoMode(CryptoMode.Legacy); - - await event.attemptDecryption(aliceClient["cryptoBackend"]!); - expect(decryptedEvent.decryptionFailureReason).toEqual(null); - }, - ); + return await testUtils.awaitDecryption(event); + } + }); it("Decryption fails with Unable to decrypt for other errors", async () => { expectAliceKeyQuery({ device_keys: { "@alice:localhost": {} }, failures: {} }); diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index 39038290f34..4503a72cef6 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -41,11 +41,9 @@ export interface CryptoApi { globalBlacklistUnverifiedDevices: boolean; /** - * The cryptography mode to use. - * - * @see CryptoMode + * The {@link DeviceIsolationMode} mode to use. */ - setCryptoMode(cryptoMode: CryptoMode): void; + setDeviceIsolationMode(isolationMode: DeviceIsolationMode): void; /** * Return the current version of the crypto module. @@ -667,38 +665,59 @@ export enum DecryptionFailureCode { UNKNOWN_ENCRYPTION_ALGORITHM = "UNKNOWN_ENCRYPTION_ALGORITHM", } +/** Base {@link DeviceIsolationMode} kind. */ +export enum DeviceIsolationModeKind { + AllDevicesIsolationMode, + OnlySignedDevicesIsolationMode, +} + /** - * The cryptography mode. Affects how messages are encrypted and decrypted. - * Only supported by Rust crypto. + * A type of {@link DeviceIsolationMode}. + * + * Message encryption keys are shared with all devices in the room, except in case of + * verified user problems (see {@link errorOnVerifiedUserProblems}). + * + * Events from all senders are always decrypted (and should be decorated with message shields in case + * of authenticity warnings, see {@link EventEncryptionInfo}). */ -export enum CryptoMode { - /** - * Message encryption keys are shared with all devices in the room, except for - * blacklisted devices, or unverified devices if - * `globalBlacklistUnverifiedDevices` is set. Events from all senders are - * decrypted. - */ - Legacy, +export class AllDevicesIsolationMode { + public readonly kind = DeviceIsolationModeKind.AllDevicesIsolationMode; /** - * Events are encrypted as with `Legacy` mode, but encryption will throw an error if a - * verified user has an unsigned device, or if a verified user replaces - * their identity. Events are decrypted only if they come from cross-signed - * devices, or devices that existed before the Rust crypto SDK started - * tracking device trust: other events will result in a decryption failure. (To access the failure - * reason, see {@link MatrixEvent.decryptionFailureReason}.) + * + * @param errorOnVerifiedUserProblems - Behavior when sharing keys to remote devices. + * + * If set to `true`, sharing keys will fail (i.e. message sending will fail) with an error if: + * - The user was previously verified but is not anymore, or: + * - A verified user has some unverified devices (not cross-signed). + * + * If `false`, the keys will be distributed as usual. In this case, the client UX should display + * warnings to inform the user about problematic devices/users, and stop them hitting this case. */ - Transition, + public constructor(public readonly errorOnVerifiedUserProblems: boolean) {} +} - /** - * Message encryption keys are only shared with devices that have been cross-signed by their owner. - * Encryption will throw an error if a verified user replaces their identity. Events are - * decrypted only if they come from a cross-signed device other events will result in a decryption - * failure. (To access the failure reason, see {@link MatrixEvent.decryptionFailureReason}.) - */ - Invisible, +/** + * A type of {@link DeviceIsolationMode}. + * + * Message encryption keys are only shared with devices that have been cross-signed by their owner. + * Encryption will throw an error if a verified user replaces their identity. + * + * Events are decrypted only if they come from a cross-signed device. Other events will result in a decryption + * failure. (To access the failure reason, see {@link MatrixEvent.decryptionFailureReason}.) + */ +export class OnlySignedDevicesIsolationMode { + public readonly kind = DeviceIsolationModeKind.OnlySignedDevicesIsolationMode; } +/** + * DeviceIsolationMode represents the mode of device isolation used when encrypting or decrypting messages. + * It can be one of two types: {@link AllDevicesIsolationMode} or {@link OnlySignedDevicesIsolationMode}. + * + * Only supported by rust Crypto. + */ +export type DeviceIsolationMode = AllDevicesIsolationMode | OnlySignedDevicesIsolationMode; + /** * Options object for `CryptoApi.bootstrapCrossSigning`. */ diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 38bf03c7fd8..4eed467758d 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -88,9 +88,9 @@ import { BootstrapCrossSigningOpts, CrossSigningKeyInfo, CrossSigningStatus, - CryptoMode, decodeRecoveryKey, DecryptionFailureCode, + DeviceIsolationMode, DeviceVerificationStatus, encodeRecoveryKey, EventEncryptionInfo, @@ -650,12 +650,11 @@ export class Crypto extends TypedEventEmitter { + public async attemptEventDecryption( + event: MatrixEvent, + isolationMode: DeviceIsolationMode, + ): Promise { // add the event to the pending list *before* attempting to decrypt. // then, if the key turns up while decryption is in progress (and // decryption fails), we will schedule a retry. @@ -1784,16 +1789,14 @@ class EventDecryptor { this.addEventToPendingList(event); let trustRequirement; - switch (cryptoMode) { - case CryptoMode.Legacy: + + switch (isolationMode.kind) { + case DeviceIsolationModeKind.AllDevicesIsolationMode: trustRequirement = RustSdkCryptoJs.TrustRequirement.Untrusted; break; - case CryptoMode.Transition: + case DeviceIsolationModeKind.OnlySignedDevicesIsolationMode: trustRequirement = RustSdkCryptoJs.TrustRequirement.CrossSignedOrLegacy; break; - case CryptoMode.Invisible: - trustRequirement = RustSdkCryptoJs.TrustRequirement.CrossSigned; - break; } try { From f7229bfff0ed92348c6df1930fa6dbede327b324 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 25 Sep 2024 17:30:13 +0100 Subject: [PATCH 443/595] Update OIDC registration types to match latest MSC2966 state (#4432) * Update OIDC registration types to match latest MSC2966 state Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Add comment Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/oidc/register.ts | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/oidc/register.ts b/src/oidc/register.ts index 25c3673d3a1..161644a84a9 100644 --- a/src/oidc/register.ts +++ b/src/oidc/register.ts @@ -34,17 +34,20 @@ export type OidcRegistrationClientMetadata = { policyUri: OidcRegistrationRequestBody["policy_uri"]; }; +/** + * Request body for dynamic registration as defined by https://github.com/matrix-org/matrix-spec-proposals/pull/2966 + */ interface OidcRegistrationRequestBody { - client_name: string; + client_name?: string; client_uri: string; logo_uri?: string; - contacts: NonEmptyArray; - tos_uri: string; - policy_uri: string; + contacts?: string[]; + tos_uri?: string; + policy_uri?: string; redirect_uris?: NonEmptyArray; response_types?: NonEmptyArray; grant_types?: NonEmptyArray; - id_token_signed_response_alg: string; + id_token_signed_response_alg?: string; token_endpoint_auth_method: string; application_type: "web" | "native"; } From d56fa197d05aada8bc788e004ba706e6b6f211a9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 26 Sep 2024 08:23:38 +0000 Subject: [PATCH 444/595] Update dependency typescript to v5.6.2 (#4420) * Update dependency typescript to v5.6.2 * Fix TS errors * Update minimal version of TS to `5.4.2` since the code is not compliant with an older version. * Review fixes --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Florian Duros Co-authored-by: Florian Duros --- package.json | 2 +- spec/test-utils/beacon.ts | 20 +++++++++++++++----- spec/test-utils/webrtc.ts | 11 +++++++---- src/webrtc/call.ts | 6 +++--- yarn.lock | 8 ++++---- 5 files changed, 30 insertions(+), 17 deletions(-) diff --git a/package.json b/package.json index 89dc3c3aafe..2b67e929dee 100644 --- a/package.json +++ b/package.json @@ -122,7 +122,7 @@ "typedoc-plugin-coverage": "^3.0.0", "typedoc-plugin-mdn-links": "^3.0.3", "typedoc-plugin-missing-exports": "^3.0.0", - "typescript": "^5.3.3" + "typescript": "^5.4.2" }, "@casualbot/jest-sonar-reporter": { "outputDirectory": "coverage", diff --git a/spec/test-utils/beacon.ts b/spec/test-utils/beacon.ts index 9cfebf95675..08771379af1 100644 --- a/spec/test-utils/beacon.ts +++ b/spec/test-utils/beacon.ts @@ -101,9 +101,8 @@ export const makeGeolocationPosition = ({ }: { timestamp?: number; coords: Partial; -}): GeolocationPosition => ({ - timestamp: timestamp ?? 1647256791840, - coords: { +}): GeolocationPosition => { + const { toJSON, ...coordsJSON } = { accuracy: 1, latitude: 54.001927, longitude: -8.253491, @@ -112,5 +111,16 @@ export const makeGeolocationPosition = ({ heading: null, speed: null, ...coords, - }, -}); + }; + const posJSON = { + timestamp: timestamp ?? 1647256791840, + coords: { + toJSON: () => coordsJSON, + ...coordsJSON, + }, + }; + return { + toJSON: () => posJSON, + ...posJSON, + }; +}; diff --git a/spec/test-utils/webrtc.ts b/spec/test-utils/webrtc.ts index 9b91a3d272b..519701bdaa9 100644 --- a/spec/test-utils/webrtc.ts +++ b/spec/test-utils/webrtc.ts @@ -147,10 +147,13 @@ export class MockRTCPeerConnection { } constructor() { - this.localDescription = { + const localDescriptionJSON = { sdp: DUMMY_SDP, - type: "offer", - toJSON: function () {}, + type: "offer" as RTCSdpType, + }; + this.localDescription = { + toJSON: () => localDescriptionJSON, + ...localDescriptionJSON, }; this.readyToNegotiate = new Promise((resolve) => { @@ -265,7 +268,7 @@ export class MockRTCRtpTransceiver { this.peerConn.needsNegotiation = true; } - public setCodecPreferences = jest.fn(); + public setCodecPreferences = jest.fn(); } export class MockMediaStreamTrack { diff --git a/src/webrtc/call.ts b/src/webrtc/call.ts index 6a8a15e0612..c2b24cadb82 100644 --- a/src/webrtc/call.ts +++ b/src/webrtc/call.ts @@ -2024,7 +2024,7 @@ export class MatrixCall extends TypedEventEmitter Date: Thu, 26 Sep 2024 12:01:51 +0100 Subject: [PATCH 445/595] Remove use of insecure `sendSharedHistoryKeys` in MSC3089 impl --- spec/unit/models/MSC3089TreeSpace.spec.ts | 59 ++--------------------- src/models/MSC3089TreeSpace.ts | 21 ++------ 2 files changed, 7 insertions(+), 73 deletions(-) diff --git a/spec/unit/models/MSC3089TreeSpace.spec.ts b/spec/unit/models/MSC3089TreeSpace.spec.ts index 5a63c282c5a..2a07ced56cc 100644 --- a/spec/unit/models/MSC3089TreeSpace.spec.ts +++ b/spec/unit/models/MSC3089TreeSpace.spec.ts @@ -107,7 +107,7 @@ describe("MSC3089TreeSpace", () => { return Promise.resolve(); }); client.invite = fn; - await tree.invite(target, false, false); + await tree.invite(target, false); expect(fn).toHaveBeenCalledTimes(1); }); @@ -120,7 +120,7 @@ describe("MSC3089TreeSpace", () => { return Promise.resolve(); }); client.invite = fn; - await tree.invite(target, false, false); + await tree.invite(target, false); expect(fn).toHaveBeenCalledTimes(2); }); @@ -133,7 +133,7 @@ describe("MSC3089TreeSpace", () => { }); client.invite = fn; - await expect(tree.invite(target, false, false)).rejects.toThrow("MatrixError: Sample Failure"); + await expect(tree.invite(target, false)).rejects.toThrow("MatrixError: Sample Failure"); expect(fn).toHaveBeenCalledTimes(1); }); @@ -155,61 +155,10 @@ describe("MSC3089TreeSpace", () => { { invite: (userId) => fn(tree.roomId, userId) } as MSC3089TreeSpace, ]; - await tree.invite(target, true, false); + await tree.invite(target, true); expect(fn).toHaveBeenCalledTimes(4); }); - it("should share keys with invitees", async () => { - const target = targetUser; - const sendKeysFn = jest.fn().mockImplementation((inviteRoomId: string, userIds: string[]) => { - expect(inviteRoomId).toEqual(roomId); - expect(userIds).toMatchObject([target]); - return Promise.resolve(); - }); - client.invite = () => Promise.resolve({}); // we're not testing this here - see other tests - client.sendSharedHistoryKeys = sendKeysFn; - - // Mock the history check as best as possible - const historyVis = "shared"; - const historyFn = jest.fn().mockImplementation((eventType: string, stateKey?: string) => { - // We're not expecting a super rigid test: the function that calls this internally isn't - // really being tested here. - expect(eventType).toEqual(EventType.RoomHistoryVisibility); - expect(stateKey).toEqual(""); - return { getContent: () => ({ history_visibility: historyVis }) }; // eslint-disable-line camelcase - }); - room.currentState.getStateEvents = historyFn; - - // Note: inverse test is implicit from other tests, which disable the call stack of this - // test in order to pass. - await tree.invite(target, false, true); - expect(sendKeysFn).toHaveBeenCalledTimes(1); - expect(historyFn).toHaveBeenCalledTimes(1); - }); - - it("should not share keys with invitees if inappropriate history visibility", async () => { - const target = targetUser; - const sendKeysFn = jest.fn().mockImplementation((inviteRoomId: string, userIds: string[]) => { - expect(inviteRoomId).toEqual(roomId); - expect(userIds).toMatchObject([target]); - return Promise.resolve(); - }); - client.invite = () => Promise.resolve({}); // we're not testing this here - see other tests - client.sendSharedHistoryKeys = sendKeysFn; - - const historyVis = "joined"; // NOTE: Changed. - const historyFn = jest.fn().mockImplementation((eventType: string, stateKey?: string) => { - expect(eventType).toEqual(EventType.RoomHistoryVisibility); - expect(stateKey).toEqual(""); - return { getContent: () => ({ history_visibility: historyVis }) }; // eslint-disable-line camelcase - }); - room.currentState.getStateEvents = historyFn; - - await tree.invite(target, false, true); - expect(sendKeysFn).toHaveBeenCalledTimes(0); - expect(historyFn).toHaveBeenCalledTimes(1); - }); - async function evaluatePowerLevels(pls: any, role: TreePermissions, expectedPl: number) { makePowerLevels(pls); const fn = jest diff --git a/src/models/MSC3089TreeSpace.ts b/src/models/MSC3089TreeSpace.ts index 8bcc933d7c2..6de3a05fd50 100644 --- a/src/models/MSC3089TreeSpace.ts +++ b/src/models/MSC3089TreeSpace.ts @@ -30,7 +30,6 @@ import { simpleRetryOperation, } from "../utils.ts"; import { MSC3089Branch } from "./MSC3089Branch.ts"; -import { isRoomSharedHistory } from "../crypto/algorithms/megolm.ts"; import { ISendEventResponse } from "../@types/requests.ts"; import { FileType } from "../http-api/index.ts"; import { KnownMembership } from "../@types/membership.ts"; @@ -136,28 +135,14 @@ export class MSC3089TreeSpace { * @param userId - The user ID to invite. * @param andSubspaces - True (default) to invite the user to all * directories/subspaces too, recursively. - * @param shareHistoryKeys - True (default) to share encryption keys - * with the invited user. This will allow them to decrypt the events (files) - * in the tree. Keys will not be shared if the room is lacking appropriate - * history visibility (by default, history visibility is "shared" in trees, - * which is an appropriate visibility for these purposes). * @returns Promise which resolves when complete. */ - public async invite(userId: string, andSubspaces = true, shareHistoryKeys = true): Promise { + public async invite(userId: string, andSubspaces = true): Promise { const promises: Promise[] = [this.retryInvite(userId)]; if (andSubspaces) { - promises.push(...this.getDirectories().map((d) => d.invite(userId, andSubspaces, shareHistoryKeys))); + promises.push(...this.getDirectories().map((d) => d.invite(userId, andSubspaces))); } - return Promise.all(promises).then(() => { - // Note: key sharing is default on because for file trees it is relatively important that the invite - // target can actually decrypt the files. The implied use case is that by inviting a user to the tree - // it means the sender would like the receiver to view/download the files contained within, much like - // sharing a folder in other circles. - if (shareHistoryKeys && isRoomSharedHistory(this.room)) { - // noinspection JSIgnoredPromiseFromCall - we aren't concerned as much if this fails. - this.client.sendSharedHistoryKeys(this.roomId, [userId]); - } - }); + await Promise.all(promises); } private retryInvite(userId: string): Promise { From 1dcb7a6e7552471236b72dc0c420213b8b9db97f Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Thu, 26 Sep 2024 12:03:45 +0100 Subject: [PATCH 446/595] Remove insecure `MatrixClient.sendSharedHistoryKeys` method This method is impossible to use securely, and so is being removed. (It also didn't work under Rust cryptography.) In future, this functionality may be re-introduced in a safer way, but doing so will probably require updates to the MSC. --- src/client.ts | 37 ------------------------------------- 1 file changed, 37 deletions(-) diff --git a/src/client.ts b/src/client.ts index 3a9860b3a8b..c532c460352 100644 --- a/src/client.ts +++ b/src/client.ts @@ -4087,43 +4087,6 @@ export class MatrixClient extends TypedEventEmitter { - if (!this.crypto) { - throw new Error("End-to-end encryption disabled"); - } - - const roomEncryption = this.crypto?.getRoomEncryption(roomId); - if (!roomEncryption) { - // unknown room, or unencrypted room - this.logger.error("Unknown room. Not sharing decryption keys"); - return; - } - - const deviceInfos = await this.crypto.downloadKeys(userIds); - const devicesByUser: Map = new Map(); - for (const [userId, devices] of deviceInfos) { - devicesByUser.set(userId, Array.from(devices.values())); - } - - // XXX: Private member access - const alg = this.crypto.getRoomDecryptor(roomId, roomEncryption.algorithm); - if (alg.sendSharedHistoryInboundSessions) { - await alg.sendSharedHistoryInboundSessions(devicesByUser); - } else { - this.logger.warn("Algorithm does not support sharing previous keys", roomEncryption.algorithm); - } - } - /** * Get the config for the media repository. * @returns Promise which resolves with an object containing the config. From 825d85f18dfd40d6bb452646a7172af0ac2f0a78 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Thu, 26 Sep 2024 18:06:59 +0200 Subject: [PATCH 447/595] Update media event content types to include captions (#4403) Signed-off-by: Tulir Asokan --- src/@types/media.ts | 65 ++++++++++++++++++++------------------------- 1 file changed, 29 insertions(+), 36 deletions(-) diff --git a/src/@types/media.ts b/src/@types/media.ts index ef23668b05d..1128b40d353 100644 --- a/src/@types/media.ts +++ b/src/@types/media.ts @@ -21,7 +21,7 @@ import { MsgType } from "../@types/event.ts"; * * Used within `m.room.message` events that reference files, such as `m.file` and `m.image`. * - * @see https://spec.matrix.org/v1.9/client-server-api/#extensions-to-mroommessage-msgtypes + * @see https://spec.matrix.org/v1.11/client-server-api/#extensions-to-mroommessage-msgtypes */ export interface EncryptedFile { /** @@ -84,13 +84,13 @@ interface BaseInfo { * * Used within `m.room.message` events that reference files. * - * @see https://spec.matrix.org/v1.9/client-server-api/#mfile + * @see https://spec.matrix.org/v1.11/client-server-api/#mfile */ export interface FileInfo extends BaseInfo { /** * Information on the encrypted thumbnail file, as specified in End-to-end encryption. * Only present if the thumbnail is encrypted. - * @see https://spec.matrix.org/v1.9/client-server-api/#sending-encrypted-attachments + * @see https://spec.matrix.org/v1.11/client-server-api/#sending-encrypted-attachments */ thumbnail_file?: EncryptedFile; /** @@ -108,7 +108,7 @@ export interface FileInfo extends BaseInfo { * * Used within `m.room.message` events that reference images. * - * @see https://spec.matrix.org/v1.9/client-server-api/#mimage + * @see https://spec.matrix.org/v1.11/client-server-api/#mimage */ export interface ImageInfo extends FileInfo, ThumbnailInfo {} @@ -117,7 +117,7 @@ export interface ImageInfo extends FileInfo, ThumbnailInfo {} * * Used within `m.room.message` events that reference audio files. * - * @see https://spec.matrix.org/v1.9/client-server-api/#maudio + * @see https://spec.matrix.org/v1.11/client-server-api/#maudio */ export interface AudioInfo extends BaseInfo { /** @@ -131,7 +131,7 @@ export interface AudioInfo extends BaseInfo { * * Used within `m.room.message` events that reference video files. * - * @see https://spec.matrix.org/v1.9/client-server-api/#mvideo + * @see https://spec.matrix.org/v1.11/client-server-api/#mvideo */ export interface VideoInfo extends AudioInfo, ImageInfo { /** @@ -148,30 +148,39 @@ export type MediaEventInfo = FileInfo | ImageInfo | AudioInfo | VideoInfo; interface BaseContent { /** * Required if the file is encrypted. Information on the encrypted file, as specified in End-to-end encryption. - * @see https://spec.matrix.org/v1.9/client-server-api/#sending-encrypted-attachments + * @see https://spec.matrix.org/v1.11/client-server-api/#sending-encrypted-attachments */ file?: EncryptedFile; /** * Required if the file is unencrypted. The URL (typically mxc:// URI) to the file. */ url?: string; -} - -/** - * Content format of media events with msgtype `m.file` - * - * @see https://spec.matrix.org/v1.9/client-server-api/#mfile - */ -export interface FileContent extends BaseContent { /** - * A human-readable description of the file. - * This is recommended to be the filename of the original upload. + * If filename is not set or the value of both properties are identical, + * this is the filename of the original upload. Otherwise, this is a + * caption for the file. */ body: string; /** * The original filename of the uploaded file. */ filename?: string; + /** + * The format used in the `formatted_body`. + */ + format?: "org.matrix.custom.html"; + /** + * The formatted version of the `body`, when it acts as a caption. This is required if `format` is specified. + */ + formatted_body?: string; +} + +/** + * Content format of media events with msgtype `m.file` + * + * @see https://spec.matrix.org/v1.11/client-server-api/#mfile + */ +export interface FileContent extends BaseContent { /** * Information about the file referred to in url. */ @@ -185,15 +194,9 @@ export interface FileContent extends BaseContent { /** * Content format of media events with msgtype `m.image` * - * @see https://spec.matrix.org/v1.9/client-server-api/#mimage + * @see https://spec.matrix.org/v1.11/client-server-api/#mimage */ export interface ImageContent extends BaseContent { - /** - * A textual representation of the image. - * This could be the alt text of the image, the filename of the image, - * or some kind of content description for accessibility e.g. ‘image attachment’. - */ - body: string; /** * Metadata about the image referred to in url. */ @@ -207,14 +210,9 @@ export interface ImageContent extends BaseContent { /** * Content format of media events with msgtype `m.audio` * - * @see https://spec.matrix.org/v1.9/client-server-api/#maudio + * @see https://spec.matrix.org/v1.11/client-server-api/#maudio */ export interface AudioContent extends BaseContent { - /** - * A description of the audio e.g. ‘Bee Gees - Stayin’ Alive’, - * or some kind of content description for accessibility e.g. ‘audio attachment’. - */ - body: string; /** * Metadata for the audio clip referred to in url. */ @@ -228,14 +226,9 @@ export interface AudioContent extends BaseContent { /** * Content format of media events with msgtype `m.video` * - * @see https://spec.matrix.org/v1.9/client-server-api/#mvideo + * @see https://spec.matrix.org/v1.11/client-server-api/#mvideo */ export interface VideoContent extends BaseContent { - /** - * A description of the video e.g. ‘Gangnam style’, - * or some kind of content description for accessibility e.g. ‘video attachment’. - */ - body: string; /** * Metadata about the video clip referred to in url. */ From 2d6230f19994cac347424525637771821a998775 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Fri, 27 Sep 2024 16:54:48 +0100 Subject: [PATCH 448/595] Rotate RTC key when a new member joins (#4422) --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 21 +++++++++++++------- src/matrixrtc/MatrixRTCSession.ts | 6 +++--- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 31614010396..e3572b88d54 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -686,25 +686,27 @@ describe("MatrixRTCSession", () => { expect(client.cancelPendingEvent).toHaveBeenCalledWith(eventSentinel); }); - it("Re-sends key if a new member joins", async () => { + it("Rotates key if a new member joins", async () => { jest.useFakeTimers(); try { const mockRoom = makeMockRoom([membershipTemplate]); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - const keysSentPromise1 = new Promise((resolve) => { - sendEventMock.mockImplementation(resolve); + const keysSentPromise1 = new Promise((resolve) => { + sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); }); sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - await keysSentPromise1; + const firstKeysPayload = await keysSentPromise1; + expect(firstKeysPayload.keys).toHaveLength(1); + expect(firstKeysPayload.keys[0].index).toEqual(0); expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); sendEventMock.mockClear(); jest.advanceTimersByTime(10000); - const keysSentPromise2 = new Promise((resolve) => { - sendEventMock.mockImplementation(resolve); + const keysSentPromise2 = new Promise((resolve) => { + sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); }); const onMembershipsChanged = jest.fn(); @@ -719,9 +721,14 @@ describe("MatrixRTCSession", () => { .mockReturnValue(makeMockRoomState([membershipTemplate, member2], mockRoom.roomId)); sess.onMembershipUpdate(); - await keysSentPromise2; + jest.advanceTimersByTime(10000); + + const secondKeysPayload = await keysSentPromise2; expect(sendEventMock).toHaveBeenCalled(); + expect(secondKeysPayload.keys).toHaveLength(1); + expect(secondKeysPayload.keys[0].index).toEqual(1); + expect(secondKeysPayload.keys[0].key).not.toEqual(firstKeysPayload.keys[0].key); expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); } finally { jest.useRealTimers(); diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 1cf486062f7..5a1d6e6e73d 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -776,8 +776,8 @@ export class MatrixRTCSession extends TypedEventEmitter !newFingerprints.has(x)) || Array.from(newFingerprints).some((x) => !oldFingerprints.has(x)); if (candidateUpdates) { - logger.debug(`Member(s) have updated/reconnected: re-sending keys`); + logger.debug(`Member(s) have updated/reconnected: re-sending keys to everyone`); this.requestKeyEventSend(); } } From baa6d135065637c9769c61325c69709d3618f5f1 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Fri, 27 Sep 2024 16:55:07 +0100 Subject: [PATCH 449/595] RTCSession cleanup: deprecate getKeysForParticipant() and getEncryption(); add emitEncryptionKeys() (#4427) * RTCSession cleanup: deprecate getKeysForParticipant() and getEncryption(); add emitEncryptionKeys() * Clarify comment * Feedback from code review * Update src/matrixrtc/MatrixRTCSession.ts Co-authored-by: Andrew Ferrazzutti * Fix test --------- Co-authored-by: Andrew Ferrazzutti --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 107 +++++++++++++------ src/matrixrtc/MatrixRTCSession.ts | 22 +++- 2 files changed, 98 insertions(+), 31 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index e3572b88d54..0e1f81498a9 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -585,12 +585,15 @@ describe("MatrixRTCSession", () => { it("creates a key when joining", () => { sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - const keys = sess?.getKeysForParticipant("@alice:example.org", "AAAAAAA"); - expect(keys).toHaveLength(1); - - const allKeys = sess!.getEncryptionKeys(); - expect(allKeys).toBeTruthy(); - expect(Array.from(allKeys)).toHaveLength(1); + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess?.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + expect.any(Uint8Array), + 0, + "@alice:example.org:AAAAAAA", + ); }); it("sends keys when joining", async () => { @@ -1204,9 +1207,16 @@ describe("MatrixRTCSession", () => { getTs: jest.fn().mockReturnValue(Date.now()), } as unknown as MatrixEvent); - const bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; - expect(bobKeys).toHaveLength(1); - expect(bobKeys[0]).toEqual(Buffer.from("this is the key", "utf-8")); + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("this is the key", "utf-8"), + 0, + "@bob:example.org:bobsphone", + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); }); @@ -1229,13 +1239,16 @@ describe("MatrixRTCSession", () => { getTs: jest.fn().mockReturnValue(Date.now()), } as unknown as MatrixEvent); - const bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; - expect(bobKeys).toHaveLength(5); - expect(bobKeys[0]).toBeFalsy(); - expect(bobKeys[1]).toBeFalsy(); - expect(bobKeys[2]).toBeFalsy(); - expect(bobKeys[3]).toBeFalsy(); - expect(bobKeys[4]).toEqual(Buffer.from("this is the key", "utf-8")); + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("this is the key", "utf-8"), + 4, + "@bob:example.org:bobsphone", + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); }); @@ -1258,9 +1271,16 @@ describe("MatrixRTCSession", () => { getTs: jest.fn().mockReturnValue(Date.now()), } as unknown as MatrixEvent); - let bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; - expect(bobKeys).toHaveLength(1); - expect(bobKeys[0]).toEqual(Buffer.from("this is the key", "utf-8")); + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("this is the key", "utf-8"), + 0, + "@bob:example.org:bobsphone", + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); sess.onCallEncryption({ @@ -1279,9 +1299,20 @@ describe("MatrixRTCSession", () => { getTs: jest.fn().mockReturnValue(Date.now()), } as unknown as MatrixEvent); - bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; - expect(bobKeys).toHaveLength(5); - expect(bobKeys[4]).toEqual(Buffer.from("this is the key", "utf-8")); + encryptionKeyChangedListener.mockClear(); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(2); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("this is the key", "utf-8"), + 0, + "@bob:example.org:bobsphone", + ); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("this is the key", "utf-8"), + 4, + "@bob:example.org:bobsphone", + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(2); }); @@ -1320,9 +1351,16 @@ describe("MatrixRTCSession", () => { getTs: jest.fn().mockReturnValue(1000), // earlier timestamp than the newer key } as unknown as MatrixEvent); - const bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; - expect(bobKeys).toHaveLength(1); - expect(bobKeys[0]).toEqual(Buffer.from("newer key", "utf-8")); + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("newer key", "utf-8"), + 0, + "@bob:example.org:bobsphone", + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(2); }); @@ -1361,9 +1399,15 @@ describe("MatrixRTCSession", () => { getTs: jest.fn().mockReturnValue(1000), // same timestamp as the first key } as unknown as MatrixEvent); - const bobKeys = sess.getKeysForParticipant("@bob:example.org", "bobsphone")!; - expect(bobKeys).toHaveLength(1); - expect(bobKeys[0]).toEqual(Buffer.from("second key", "utf-8")); + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("second key", "utf-8"), + 0, + "@bob:example.org:bobsphone", + ); }); it("ignores keys event for the local participant", () => { @@ -1385,8 +1429,11 @@ describe("MatrixRTCSession", () => { getTs: jest.fn().mockReturnValue(Date.now()), } as unknown as MatrixEvent); - const myKeys = sess.getKeysForParticipant(client.getUserId()!, client.getDeviceId()!)!; - expect(myKeys).toBeFalsy(); + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(0); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(0); }); diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 5a1d6e6e73d..1e92793807d 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -405,20 +405,40 @@ export class MatrixRTCSession extends TypedEventEmitter { + keys.forEach((key, index) => { + this.emit(MatrixRTCSessionEvent.EncryptionKeyChanged, key.key, index, participantId); + }); + }); + } + /** * Get the known encryption keys for a given participant device. * * @param userId the user ID of the participant * @param deviceId the device ID of the participant * @returns The encryption keys for the given participant, or undefined if they are not known. + * + * @deprecated This will be made private in a future release. */ public getKeysForParticipant(userId: string, deviceId: string): Array | undefined { + return this.getKeysForParticipantInternal(userId, deviceId); + } + + private getKeysForParticipantInternal(userId: string, deviceId: string): Array | undefined { return this.encryptionKeys.get(getParticipantId(userId, deviceId))?.map((entry) => entry.key); } /** * A map of keys used to encrypt and decrypt (we are using a symmetric * cipher) given participant's media. This also includes our own key + * + * @deprecated This will be made private in a future release. */ public getEncryptionKeys(): IterableIterator<[string, Array]> { // the returned array doesn't contain the timestamps @@ -434,7 +454,7 @@ export class MatrixRTCSession extends TypedEventEmitter Date: Mon, 30 Sep 2024 16:26:34 +0200 Subject: [PATCH 450/595] crypto: configure key sharing strategy based on DeviceIsolationMode (#4425) * crypto: configure key sharing strategy based on deviceIsolationMode fix eslint import error cryptoMode was renamed to deviceIsolationMode post rebase fix: Device Isolation mode name changes * Fix outdated docs referring to old cryptomode * code review: better comment for globalBlacklistUnverifiedDevices option * RoomEncryptor: Use appropriate default for getBlacklistUnverifiedDevices * do not provide a default value for DeviceIsolationMode for encryption * Update src/rust-crypto/RoomEncryptor.ts --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- spec/unit/rust-crypto/RoomEncryptor.spec.ts | 121 ++++++++++++++++++-- src/crypto-api/index.ts | 5 +- src/rust-crypto/RoomEncryptor.ts | 60 +++++++--- src/rust-crypto/rust-crypto.ts | 4 +- 4 files changed, 161 insertions(+), 29 deletions(-) diff --git a/spec/unit/rust-crypto/RoomEncryptor.spec.ts b/spec/unit/rust-crypto/RoomEncryptor.spec.ts index 608d9643e05..7e20a9504c6 100644 --- a/spec/unit/rust-crypto/RoomEncryptor.spec.ts +++ b/spec/unit/rust-crypto/RoomEncryptor.spec.ts @@ -17,6 +17,7 @@ */ import { + CollectStrategy, Curve25519PublicKey, Ed25519PublicKey, HistoryVisibility as RustHistoryVisibility, @@ -31,6 +32,7 @@ import { KeyClaimManager } from "../../../src/rust-crypto/KeyClaimManager"; import { defer } from "../../../src/utils"; import { OutgoingRequestsManager } from "../../../src/rust-crypto/OutgoingRequestsManager"; import { KnownMembership } from "../../../src/@types/membership"; +import { DeviceIsolationMode, AllDevicesIsolationMode, OnlySignedDevicesIsolationMode } from "../../../src/crypto-api"; describe("RoomEncryptor", () => { describe("History Visibility", () => { @@ -99,7 +101,7 @@ describe("RoomEncryptor", () => { getEncryptionTargetMembers: jest.fn().mockReturnValue([mockRoomMember]), shouldEncryptForInvitedMembers: jest.fn().mockReturnValue(true), getHistoryVisibility: jest.fn().mockReturnValue(HistoryVisibility.Invited), - getBlacklistUnverifiedDevices: jest.fn().mockReturnValue(false), + getBlacklistUnverifiedDevices: jest.fn().mockReturnValue(null), } as unknown as Mocked; roomEncryptor = new RoomEncryptor( @@ -111,6 +113,8 @@ describe("RoomEncryptor", () => { ); }); + const defaultDevicesIsolationMode = new AllDevicesIsolationMode(false); + it("should ensure that there is only one shareRoomKey at a time", async () => { const deferredShare = defer(); const insideOlmShareRoom = defer(); @@ -120,19 +124,19 @@ describe("RoomEncryptor", () => { await deferredShare.promise; }); - roomEncryptor.prepareForEncryption(false); + roomEncryptor.prepareForEncryption(false, defaultDevicesIsolationMode); await insideOlmShareRoom.promise; // call several times more - roomEncryptor.prepareForEncryption(false); - roomEncryptor.encryptEvent(createMockEvent("Hello"), false); - roomEncryptor.prepareForEncryption(false); - roomEncryptor.encryptEvent(createMockEvent("World"), false); + roomEncryptor.prepareForEncryption(false, defaultDevicesIsolationMode); + roomEncryptor.encryptEvent(createMockEvent("Hello"), false, defaultDevicesIsolationMode); + roomEncryptor.prepareForEncryption(false, defaultDevicesIsolationMode); + roomEncryptor.encryptEvent(createMockEvent("World"), false, defaultDevicesIsolationMode); expect(mockOlmMachine.shareRoomKey).toHaveBeenCalledTimes(1); deferredShare.resolve(); - await roomEncryptor.prepareForEncryption(false); + await roomEncryptor.prepareForEncryption(false, defaultDevicesIsolationMode); // should have been called again expect(mockOlmMachine.shareRoomKey).toHaveBeenCalledTimes(6); @@ -158,8 +162,16 @@ describe("RoomEncryptor", () => { let firstMessageFinished: string | null = null; - const firstRequest = roomEncryptor.encryptEvent(createMockEvent("Hello"), false); - const secondRequest = roomEncryptor.encryptEvent(createMockEvent("Edit of Hello"), false); + const firstRequest = roomEncryptor.encryptEvent( + createMockEvent("Hello"), + false, + defaultDevicesIsolationMode, + ); + const secondRequest = roomEncryptor.encryptEvent( + createMockEvent("Edit of Hello"), + false, + defaultDevicesIsolationMode, + ); firstRequest.then(() => { if (firstMessageFinished === null) { @@ -181,5 +193,96 @@ describe("RoomEncryptor", () => { expect(firstMessageFinished).toBe("hello"); }); + + describe("DeviceIsolationMode", () => { + type TestCase = [ + string, + { + mode: DeviceIsolationMode; + expectedStrategy: CollectStrategy; + globalBlacklistUnverifiedDevices: boolean; + }, + ]; + + const testCases: TestCase[] = [ + [ + "Share AllDevicesIsolationMode", + { + mode: new AllDevicesIsolationMode(false), + expectedStrategy: CollectStrategy.deviceBasedStrategy(false, false), + globalBlacklistUnverifiedDevices: false, + }, + ], + [ + "Share AllDevicesIsolationMode - with blacklist unverified", + { + mode: new AllDevicesIsolationMode(false), + expectedStrategy: CollectStrategy.deviceBasedStrategy(true, false), + globalBlacklistUnverifiedDevices: true, + }, + ], + [ + "Share OnlySigned - blacklist true", + { + mode: new OnlySignedDevicesIsolationMode(), + expectedStrategy: CollectStrategy.identityBasedStrategy(), + globalBlacklistUnverifiedDevices: true, + }, + ], + [ + "Share OnlySigned", + { + mode: new OnlySignedDevicesIsolationMode(), + expectedStrategy: CollectStrategy.identityBasedStrategy(), + globalBlacklistUnverifiedDevices: false, + }, + ], + [ + "Share AllDevicesIsolationMode - Verified user problems true", + { + mode: new AllDevicesIsolationMode(true), + expectedStrategy: CollectStrategy.deviceBasedStrategy(false, true), + globalBlacklistUnverifiedDevices: false, + }, + ], + [ + 'Share AllDevicesIsolationMode - with blacklist unverified - Verified user problems true"', + { + mode: new AllDevicesIsolationMode(true), + expectedStrategy: CollectStrategy.deviceBasedStrategy(true, true), + globalBlacklistUnverifiedDevices: true, + }, + ], + ]; + + let capturedSettings: CollectStrategy | undefined = undefined; + + beforeEach(() => { + capturedSettings = undefined; + mockOlmMachine.shareRoomKey.mockImplementationOnce(async (roomId, users, encryptionSettings) => { + capturedSettings = encryptionSettings.sharingStrategy; + }); + }); + + it.each(testCases)( + "prepareForEncryption should properly set sharing strategy based on crypto mode: %s", + async (_, { mode, expectedStrategy, globalBlacklistUnverifiedDevices }) => { + await roomEncryptor.prepareForEncryption(globalBlacklistUnverifiedDevices, mode); + expect(mockOlmMachine.shareRoomKey).toHaveBeenCalled(); + expect(capturedSettings).toBeDefined(); + expect(expectedStrategy.eq(capturedSettings!)).toBeTruthy(); + }, + ); + + it.each(testCases)( + "encryptEvent should properly set sharing strategy based on crypto mode: %s", + async (_, { mode, expectedStrategy, globalBlacklistUnverifiedDevices }) => { + await roomEncryptor.encryptEvent(createMockEvent("Hello"), globalBlacklistUnverifiedDevices, mode); + expect(mockOlmMachine.shareRoomKey).toHaveBeenCalled(); + expect(capturedSettings).toBeDefined(); + expect(expectedStrategy.eq(capturedSettings!)).toBeTruthy(); + }, + ); + }); }); }); diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index 4503a72cef6..0ac684e8c63 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -611,14 +611,13 @@ export enum DecryptionFailureCode { /** * The sender device is not cross-signed. This will only be used if the - * crypto mode is set to `CryptoMode.Invisible` or `CryptoMode.Transition`. + * device isolation mode is set to `OnlySignedDevicesIsolationMode`. */ UNSIGNED_SENDER_DEVICE = "UNSIGNED_SENDER_DEVICE", /** * We weren't able to link the message back to any known device. This will - * only be used if the crypto mode is set to `CryptoMode.Invisible` or - * `CryptoMode.Transition`. + * only be used if the device isolation mode is set to `OnlySignedDevicesIsolationMode`. */ UNKNOWN_SENDER_DEVICE = "UNKNOWN_SENDER_DEVICE", diff --git a/src/rust-crypto/RoomEncryptor.ts b/src/rust-crypto/RoomEncryptor.ts index fcda295eb89..e87b8c90139 100644 --- a/src/rust-crypto/RoomEncryptor.ts +++ b/src/rust-crypto/RoomEncryptor.ts @@ -36,6 +36,7 @@ import { HistoryVisibility } from "../@types/partials.ts"; import { OutgoingRequestsManager } from "./OutgoingRequestsManager.ts"; import { logDuration } from "../utils.ts"; import { KnownMembership } from "../@types/membership.ts"; +import { DeviceIsolationMode, DeviceIsolationModeKind } from "../crypto-api/index.ts"; /** * RoomEncryptor: responsible for encrypting messages to a given room @@ -119,10 +120,15 @@ export class RoomEncryptor { * * This ensures that we have a megolm session ready to use and that we have shared its key with all the devices * in the room. - * - * @param globalBlacklistUnverifiedDevices - When `true`, it will not send encrypted messages to unverified devices + * @param globalBlacklistUnverifiedDevices - When `true`, and `deviceIsolationMode` is `AllDevicesIsolationMode`, + * will not send encrypted messages to unverified devices. + * Ignored when `deviceIsolationMode` is `OnlySignedDevicesIsolationMode`. + * @param deviceIsolationMode - The device isolation mode. See {@link DeviceIsolationMode}. */ - public async prepareForEncryption(globalBlacklistUnverifiedDevices: boolean): Promise { + public async prepareForEncryption( + globalBlacklistUnverifiedDevices: boolean, + deviceIsolationMode: DeviceIsolationMode, + ): Promise { // We consider a prepareForEncryption as an encryption promise as it will potentially share keys // even if it doesn't send an event. // Usually this is called when the user starts typing, so we want to make sure we have keys ready when the @@ -130,7 +136,7 @@ export class RoomEncryptor { // If `encryptEvent` is invoked before `prepareForEncryption` has completed, the `encryptEvent` call will wait for // `prepareForEncryption` to complete before executing. // The part where `encryptEvent` shares the room key will then usually be a no-op as it was already performed by `prepareForEncryption`. - await this.encryptEvent(null, globalBlacklistUnverifiedDevices); + await this.encryptEvent(null, globalBlacklistUnverifiedDevices, deviceIsolationMode); } /** @@ -140,9 +146,16 @@ export class RoomEncryptor { * then, if an event is provided, encrypt it using the session. * * @param event - Event to be encrypted, or null if only preparing for encryption (in which case we will pre-share the room key). - * @param globalBlacklistUnverifiedDevices - When `true`, it will not send encrypted messages to unverified devices + * @param globalBlacklistUnverifiedDevices - When `true`, and `deviceIsolationMode` is `AllDevicesIsolationMode`, + * will not send encrypted messages to unverified devices. + * Ignored when `deviceIsolationMode` is `OnlySignedDevicesIsolationMode`. + * @param deviceIsolationMode - The device isolation mode. See {@link DeviceIsolationMode}. */ - public encryptEvent(event: MatrixEvent | null, globalBlacklistUnverifiedDevices: boolean): Promise { + public encryptEvent( + event: MatrixEvent | null, + globalBlacklistUnverifiedDevices: boolean, + deviceIsolationMode: DeviceIsolationMode, + ): Promise { const logger = new LogSpan(this.prefixedLogger, event ? (event.getTxnId() ?? "") : "prepareForEncryption"); // Ensure order of encryption to avoid message ordering issues, as the scheduler only ensures // events order after they have been encrypted. @@ -153,7 +166,7 @@ export class RoomEncryptor { }) .then(async () => { await logDuration(logger, "ensureEncryptionSession", async () => { - await this.ensureEncryptionSession(logger, globalBlacklistUnverifiedDevices); + await this.ensureEncryptionSession(logger, globalBlacklistUnverifiedDevices, deviceIsolationMode); }); if (event) { await logDuration(logger, "encryptEventInner", async () => { @@ -173,9 +186,16 @@ export class RoomEncryptor { * in the room. * * @param logger - a place to write diagnostics to - * @param globalBlacklistUnverifiedDevices - When `true`, it will not send encrypted messages to unverified devices + * @param globalBlacklistUnverifiedDevices - When `true`, and `deviceIsolationMode` is `AllDevicesIsolationMode`, + * will not send encrypted messages to unverified devices. + * Ignored when `deviceIsolationMode` is `OnlySignedDevicesIsolationMode`. + * @param deviceIsolationMode - The device isolation mode. See {@link DeviceIsolationMode}. */ - private async ensureEncryptionSession(logger: LogSpan, globalBlacklistUnverifiedDevices: boolean): Promise { + private async ensureEncryptionSession( + logger: LogSpan, + globalBlacklistUnverifiedDevices: boolean, + deviceIsolationMode: DeviceIsolationMode, + ): Promise { if (this.encryptionSettings.algorithm !== "m.megolm.v1.aes-sha2") { throw new Error( `Cannot encrypt in ${this.room.roomId} for unsupported algorithm '${this.encryptionSettings.algorithm}'`, @@ -251,12 +271,22 @@ export class RoomEncryptor { rustEncryptionSettings.rotationPeriodMessages = BigInt(this.encryptionSettings.rotation_period_msgs); } - // When this.room.getBlacklistUnverifiedDevices() === null, the global settings should be used - // See Room#getBlacklistUnverifiedDevices - if (this.room.getBlacklistUnverifiedDevices() ?? globalBlacklistUnverifiedDevices) { - rustEncryptionSettings.sharingStrategy = CollectStrategy.deviceBasedStrategy(true, false); - } else { - rustEncryptionSettings.sharingStrategy = CollectStrategy.deviceBasedStrategy(false, false); + switch (deviceIsolationMode.kind) { + case DeviceIsolationModeKind.AllDevicesIsolationMode: + { + // When this.room.getBlacklistUnverifiedDevices() === null, the global settings should be used + // See Room#getBlacklistUnverifiedDevices + const onlyAllowTrustedDevices = + this.room.getBlacklistUnverifiedDevices() ?? globalBlacklistUnverifiedDevices; + rustEncryptionSettings.sharingStrategy = CollectStrategy.deviceBasedStrategy( + onlyAllowTrustedDevices, + deviceIsolationMode.errorOnVerifiedUserProblems, + ); + } + break; + case DeviceIsolationModeKind.OnlySignedDevicesIsolationMode: + rustEncryptionSettings.sharingStrategy = CollectStrategy.identityBasedStrategy(); + break; } await logDuration(this.prefixedLogger, "shareRoomKey", async () => { diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index fd5883efe1f..78f921e3b55 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -248,7 +248,7 @@ export class RustCrypto extends TypedEventEmitter { @@ -400,7 +400,7 @@ export class RustCrypto extends TypedEventEmitter Date: Mon, 30 Sep 2024 17:46:33 +0100 Subject: [PATCH 451/595] Bump matrix-rust-sdk to 9.1.0 (#4435) Mostly, to pick up https://github.com/matrix-org/matrix-rust-sdk/pull/3985 --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 33c80fb2509..7d4262640bd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1454,9 +1454,9 @@ "@jridgewell/sourcemap-codec" "^1.4.14" "@matrix-org/matrix-sdk-crypto-wasm@^9.0.0": - version "9.0.0" - resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-9.0.0.tgz#293fe8fcb9bc4d577c5f6cf2cbffa151c6e11329" - integrity sha512-dz4dkYXj6BeOQuw52XQj8dMuhi85pSFhfFeFlNRAO7JdRPhE9CHBrfK8knkZV5Zux5vvf3Ub4E7myoLeJgZoEw== + version "9.1.0" + resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-wasm/-/matrix-sdk-crypto-wasm-9.1.0.tgz#f889653eb4fafaad2a963654d586bd34de62acd5" + integrity sha512-CtPoNcoRW6ehwxpRQAksG3tR+NJ7k4DV02nMFYTDwQtie1V4R8OTY77BjEIs97NOblhtS26jU8m1lWsOBEz0Og== "@matrix-org/olm@3.2.15": version "3.2.15" From 5f3b89990d9600d3627de817d465259b3ff16410 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Tue, 1 Oct 2024 15:52:59 +0200 Subject: [PATCH 452/595] Move out `crypto/aes` (#4431) * Move `SecretEncryptedPayload` in `src/utils/@types` * Move `encryptAES` to a dedicated file. Moved in a utils folder. * Move `deriveKeys` to a dedicated file in order to share it * Move `decryptAES` to a dedicated file. Moved in a utils folder. * Move `calculateKeyCheck` to a dedicated file. Moved in a utils folder. * Remove AES functions in `aes.ts` and export new ones for backward compatibility * Update import to use new functions * Add `src/utils` entrypoint in `README.md` * - Rename `SecretEncryptedPayload` to `AESEncryptedSecretStoragePayload`. - Move into `src/@types` * Move `calculateKeyCheck` into `secret-storage.ts`. * Move `deriveKeys` into `src/utils/internal` folder. * - Rename `encryptAES` on `encryptAESSecretStorageItem` - Change named export by default export * - Rename `decryptAES` on `decryptAESSecretStorageItem` - Change named export by default export * Update documentation * Update `decryptAESSecretStorageItem` doc * Add lnk to spec for `calculateKeyCheck` * Fix downstream tests --- README.md | 1 + spec/integ/crypto/cross-signing.spec.ts | 8 +- spec/unit/crypto/secrets.spec.ts | 4 +- spec/unit/rust-crypto/rust-crypto.spec.ts | 4 +- spec/unit/secret-storage.spec.ts | 2 +- .../AESEncryptedSecretStoragePayload.ts | 29 ++++ src/calculateKeyCheck.ts | 34 ++++ src/crypto-api/keybackup.ts | 4 +- src/crypto/CrossSigning.ts | 7 +- src/crypto/aes.ts | 160 ++---------------- src/crypto/backup.ts | 17 +- src/crypto/dehydration.ts | 7 +- src/crypto/index.ts | 21 ++- src/crypto/store/base.ts | 6 +- src/rust-crypto/backup.ts | 4 +- src/rust-crypto/libolm_migration.ts | 5 +- src/secret-storage.ts | 21 ++- src/types.ts | 1 + src/utils/decryptAESSecretStorageItem.ts | 54 ++++++ src/utils/encryptAESSecretStorageItem.ts | 73 ++++++++ src/utils/internal/deriveKeys.ts | 63 +++++++ typedoc.json | 2 +- 22 files changed, 329 insertions(+), 198 deletions(-) create mode 100644 src/@types/AESEncryptedSecretStoragePayload.ts create mode 100644 src/calculateKeyCheck.ts create mode 100644 src/utils/decryptAESSecretStorageItem.ts create mode 100644 src/utils/encryptAESSecretStorageItem.ts create mode 100644 src/utils/internal/deriveKeys.ts diff --git a/README.md b/README.md index 338012c9f50..7a9146030c1 100644 --- a/README.md +++ b/README.md @@ -191,6 +191,7 @@ As well as the primary entry point (`matrix-js-sdk`), there are several other en | `matrix-js-sdk/lib/crypto-api` | Cryptography functionality. | | `matrix-js-sdk/lib/types` | Low-level types, reflecting data structures defined in the Matrix spec. | | `matrix-js-sdk/lib/testing` | Test utilities, which may be useful in test code but should not be used in production code. | +| `matrix-js-sdk/lib/utils/*.js` | A set of modules exporting standalone functions (and their types). | ## Examples diff --git a/spec/integ/crypto/cross-signing.spec.ts b/spec/integ/crypto/cross-signing.spec.ts index b81bf6f00f4..95b0f756e0a 100644 --- a/spec/integ/crypto/cross-signing.spec.ts +++ b/spec/integ/crypto/cross-signing.spec.ts @@ -21,7 +21,7 @@ import { IDBFactory } from "fake-indexeddb"; import { CRYPTO_BACKENDS, InitCrypto, syncPromise } from "../../test-utils/test-utils"; import { AuthDict, createClient, CryptoEvent, MatrixClient } from "../../../src"; import { mockInitialApiRequests, mockSetupCrossSigningRequests } from "../../test-utils/mockEndpoints"; -import { encryptAES } from "../../../src/crypto/aes"; +import encryptAESSecretStorageItem from "../../../src/utils/encryptAESSecretStorageItem.ts"; import { CryptoCallbacks, CrossSigningKey } from "../../../src/crypto-api"; import { SECRET_STORAGE_ALGORITHM_V1_AES } from "../../../src/secret-storage"; import { ISyncResponder, SyncResponder } from "../../test-utils/SyncResponder"; @@ -169,17 +169,17 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("cross-signing (%s)", (backend: s mockInitialApiRequests(aliceClient.getHomeserverUrl()); // Encrypt the private keys and return them in the /sync response as if they are in Secret Storage - const masterKey = await encryptAES( + const masterKey = await encryptAESSecretStorageItem( MASTER_CROSS_SIGNING_PRIVATE_KEY_BASE64, encryptionKey, "m.cross_signing.master", ); - const selfSigningKey = await encryptAES( + const selfSigningKey = await encryptAESSecretStorageItem( SELF_CROSS_SIGNING_PRIVATE_KEY_BASE64, encryptionKey, "m.cross_signing.self_signing", ); - const userSigningKey = await encryptAES( + const userSigningKey = await encryptAESSecretStorageItem( USER_CROSS_SIGNING_PRIVATE_KEY_BASE64, encryptionKey, "m.cross_signing.user_signing", diff --git a/spec/unit/crypto/secrets.spec.ts b/spec/unit/crypto/secrets.spec.ts index 835c593d8e5..f09657c88b1 100644 --- a/spec/unit/crypto/secrets.spec.ts +++ b/spec/unit/crypto/secrets.spec.ts @@ -20,7 +20,7 @@ import { IObject } from "../../../src/crypto/olmlib"; import { MatrixEvent } from "../../../src/models/event"; import { TestClient } from "../../TestClient"; import { makeTestClients } from "./verification/util"; -import { encryptAES } from "../../../src/crypto/aes"; +import encryptAESSecretStorageItem from "../../../src/utils/encryptAESSecretStorageItem.ts"; import { createSecretStorageKey, resetCrossSigningKeys } from "./crypto-utils"; import { logger } from "../../../src/logger"; import { ClientEvent, ICreateClientOpts, MatrixClient } from "../../../src/client"; @@ -612,7 +612,7 @@ describe("Secrets", function () { type: "m.megolm_backup.v1", content: { encrypted: { - key_id: await encryptAES( + key_id: await encryptAESSecretStorageItem( "123,45,6,7,89,1,234,56,78,90,12,34,5,67,8,90", secretStorageKeys.key_id, "m.megolm_backup.v1", diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 07501a47c95..0b16ea1ee5c 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -69,7 +69,7 @@ import { logger } from "../../../src/logger"; import { OutgoingRequestsManager } from "../../../src/rust-crypto/OutgoingRequestsManager"; import { ClientEvent, ClientEventHandlerMap } from "../../../src/client"; import { Curve25519AuthData } from "../../../src/crypto-api/keybackup"; -import { encryptAES } from "../../../src/crypto/aes"; +import encryptAESSecretStorageItem from "../../../src/utils/encryptAESSecretStorageItem.ts"; import { CryptoStore, SecretStorePrivateKeys } from "../../../src/crypto/store/base"; const TEST_USER = "@alice:example.com"; @@ -425,7 +425,7 @@ describe("initRustCrypto", () => { }, 10000); async function encryptAndStoreSecretKey(type: string, key: Uint8Array, pickleKey: string, store: CryptoStore) { - const encryptedKey = await encryptAES(encodeBase64(key), Buffer.from(pickleKey), type); + const encryptedKey = await encryptAESSecretStorageItem(encodeBase64(key), Buffer.from(pickleKey), type); store.storeSecretStorePrivateKey(undefined, type as keyof SecretStorePrivateKeys, encryptedKey); } diff --git a/spec/unit/secret-storage.spec.ts b/spec/unit/secret-storage.spec.ts index e2f07b79d19..b71da45e2f8 100644 --- a/spec/unit/secret-storage.spec.ts +++ b/spec/unit/secret-storage.spec.ts @@ -25,8 +25,8 @@ import { ServerSideSecretStorageImpl, trimTrailingEquals, } from "../../src/secret-storage"; -import { calculateKeyCheck } from "../../src/crypto/aes"; import { randomString } from "../../src/randomstring"; +import { calculateKeyCheck } from "../../src/calculateKeyCheck.ts"; describe("ServerSideSecretStorageImpl", function () { describe(".addKey", function () { diff --git a/src/@types/AESEncryptedSecretStoragePayload.ts b/src/@types/AESEncryptedSecretStoragePayload.ts new file mode 100644 index 00000000000..5f33680b257 --- /dev/null +++ b/src/@types/AESEncryptedSecretStoragePayload.ts @@ -0,0 +1,29 @@ +/* + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * An AES-encrypted secret storage payload. + * See https://spec.matrix.org/v1.11/client-server-api/#msecret_storagev1aes-hmac-sha2-1 + */ +export interface AESEncryptedSecretStoragePayload { + [key: string]: any; // extensible + /** the initialization vector in base64 */ + iv: string; + /** the ciphertext in base64 */ + ciphertext: string; + /** the HMAC in base64 */ + mac: string; +} diff --git a/src/calculateKeyCheck.ts b/src/calculateKeyCheck.ts new file mode 100644 index 00000000000..7e979a71263 --- /dev/null +++ b/src/calculateKeyCheck.ts @@ -0,0 +1,34 @@ +/* + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// string of zeroes, for calculating the key check +import encryptAESSecretStorageItem from "./utils/encryptAESSecretStorageItem.ts"; +import { AESEncryptedSecretStoragePayload } from "./@types/AESEncryptedSecretStoragePayload.ts"; + +const ZERO_STR = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"; + +/** + * Calculate the MAC for checking the key. + * See https://spec.matrix.org/v1.11/client-server-api/#msecret_storagev1aes-hmac-sha2, steps 3 and 4. + * + * @param key - the key to use + * @param iv - The initialization vector as a base64-encoded string. + * If omitted, a random initialization vector will be created. + * @returns An object that contains, `mac` and `iv` properties. + */ +export function calculateKeyCheck(key: Uint8Array, iv?: string): Promise { + return encryptAESSecretStorageItem(ZERO_STR, key, "", iv); +} diff --git a/src/crypto-api/keybackup.ts b/src/crypto-api/keybackup.ts index 3209de6c320..8a82a5f4c13 100644 --- a/src/crypto-api/keybackup.ts +++ b/src/crypto-api/keybackup.ts @@ -15,7 +15,7 @@ limitations under the License. */ import { ISigned } from "../@types/signed.ts"; -import { IEncryptedPayload } from "../crypto/aes.ts"; +import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; export interface Curve25519AuthData { public_key: string; @@ -77,7 +77,7 @@ export interface Curve25519SessionData { } /* eslint-disable camelcase */ -export interface KeyBackupSession { +export interface KeyBackupSession { first_message_index: number; forwarded_count: number; is_verified: boolean; diff --git a/src/crypto/CrossSigning.ts b/src/crypto/CrossSigning.ts index a4caf1c53a1..175b878b762 100644 --- a/src/crypto/CrossSigning.ts +++ b/src/crypto/CrossSigning.ts @@ -22,7 +22,6 @@ import type { PkSigning } from "@matrix-org/olm"; import { IObject, pkSign, pkVerify } from "./olmlib.ts"; import { logger } from "../logger.ts"; import { IndexedDBCryptoStore } from "../crypto/store/indexeddb-crypto-store.ts"; -import { decryptAES, encryptAES } from "./aes.ts"; import { DeviceInfo } from "./deviceinfo.ts"; import { ISignedKey, MatrixClient } from "../client.ts"; import { OlmDevice } from "./OlmDevice.ts"; @@ -36,6 +35,8 @@ import { UserVerificationStatus as UserTrustLevel, } from "../crypto-api/index.ts"; import { decodeBase64, encodeBase64 } from "../base64.ts"; +import encryptAESSecretStorageItem from "../utils/encryptAESSecretStorageItem.ts"; +import decryptAESSecretStorageItem from "../utils/decryptAESSecretStorageItem.ts"; // backwards-compatibility re-exports export { UserTrustLevel }; @@ -662,7 +663,7 @@ export function createCryptoStoreCacheCallbacks(store: CryptoStore, olmDevice: O if (key && key.ciphertext) { const pickleKey = Buffer.from(olmDevice.pickleKey); - const decrypted = await decryptAES(key, pickleKey, type); + const decrypted = await decryptAESSecretStorageItem(key, pickleKey, type); return decodeBase64(decrypted); } else { return key; @@ -676,7 +677,7 @@ export function createCryptoStoreCacheCallbacks(store: CryptoStore, olmDevice: O throw new Error(`storeCrossSigningKeyCache expects Uint8Array, got ${key}`); } const pickleKey = Buffer.from(olmDevice.pickleKey); - const encryptedKey = await encryptAES(encodeBase64(key), pickleKey, type); + const encryptedKey = await encryptAESSecretStorageItem(encodeBase64(key), pickleKey, type); return store.doTxn("readwrite", [IndexedDBCryptoStore.STORE_ACCOUNT], (txn) => { store.storeSecretStorePrivateKey(txn, type, encryptedKey); }); diff --git a/src/crypto/aes.ts b/src/crypto/aes.ts index 2fc32aec412..f435d8c15e5 100644 --- a/src/crypto/aes.ts +++ b/src/crypto/aes.ts @@ -14,153 +14,13 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { decodeBase64, encodeBase64 } from "../base64.ts"; - -// salt for HKDF, with 8 bytes of zeros -const zeroSalt = new Uint8Array(8); - -export interface IEncryptedPayload { - [key: string]: any; // extensible - /** the initialization vector in base64 */ - iv: string; - /** the ciphertext in base64 */ - ciphertext: string; - /** the HMAC in base64 */ - mac: string; -} - -/** - * Encrypt a string using AES-CTR. - * - * @param data - the plaintext to encrypt - * @param key - the encryption key to use as an input to the HKDF function which is used to derive the AES key for - * encryption. Obviously, the same key must be provided when decrypting. - * @param name - the name of the secret. Used as an input to the HKDF operation which is used to derive the AES key, - * so again the same value must be provided when decrypting. - * @param ivStr - the base64-encoded initialization vector to use. If not supplied, a random one will be generated. - * - * @returns The encrypted result, including the ciphertext itself, the initialization vector (as supplied in `ivStr`, - * or generated), and an HMAC on the ciphertext — all base64-encoded. - */ -export async function encryptAES( - data: string, - key: Uint8Array, - name: string, - ivStr?: string, -): Promise { - let iv: Uint8Array; - if (ivStr) { - iv = decodeBase64(ivStr); - } else { - iv = new Uint8Array(16); - globalThis.crypto.getRandomValues(iv); - - // clear bit 63 of the IV to stop us hitting the 64-bit counter boundary - // (which would mean we wouldn't be able to decrypt on Android). The loss - // of a single bit of iv is a price we have to pay. - iv[8] &= 0x7f; - } - - const [aesKey, hmacKey] = await deriveKeys(key, name); - const encodedData = new TextEncoder().encode(data); - - const ciphertext = await globalThis.crypto.subtle.encrypt( - { - name: "AES-CTR", - counter: iv, - length: 64, - }, - aesKey, - encodedData, - ); - - const hmac = await globalThis.crypto.subtle.sign({ name: "HMAC" }, hmacKey, ciphertext); - - return { - iv: encodeBase64(iv), - ciphertext: encodeBase64(ciphertext), - mac: encodeBase64(hmac), - }; -} - -/** - * Decrypt an AES-encrypted string. - * - * @param data - the encrypted data, returned by {@link encryptAES}. - * @param key - the encryption key to use as an input to the HKDF function which is used to derive the AES key. Must - * be the same as provided to {@link encryptAES}. - * @param name - the name of the secret. Also used as an input to the HKDF operation which is used to derive the AES - * key, so again must be the same as provided to {@link encryptAES}. - */ -export async function decryptAES(data: IEncryptedPayload, key: Uint8Array, name: string): Promise { - const [aesKey, hmacKey] = await deriveKeys(key, name); - - const ciphertext = decodeBase64(data.ciphertext); - - if (!(await globalThis.crypto.subtle.verify({ name: "HMAC" }, hmacKey, decodeBase64(data.mac), ciphertext))) { - throw new Error(`Error decrypting secret ${name}: bad MAC`); - } - - const plaintext = await globalThis.crypto.subtle.decrypt( - { - name: "AES-CTR", - counter: decodeBase64(data.iv), - length: 64, - }, - aesKey, - ciphertext, - ); - - return new TextDecoder().decode(new Uint8Array(plaintext)); -} - -async function deriveKeys(key: Uint8Array, name: string): Promise<[CryptoKey, CryptoKey]> { - const hkdfkey = await globalThis.crypto.subtle.importKey("raw", key, { name: "HKDF" }, false, ["deriveBits"]); - const keybits = await globalThis.crypto.subtle.deriveBits( - { - name: "HKDF", - salt: zeroSalt, - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore: https://github.com/microsoft/TypeScript-DOM-lib-generator/pull/879 - info: new TextEncoder().encode(name), - hash: "SHA-256", - }, - hkdfkey, - 512, - ); - - const aesKey = keybits.slice(0, 32); - const hmacKey = keybits.slice(32); - - const aesProm = globalThis.crypto.subtle.importKey("raw", aesKey, { name: "AES-CTR" }, false, [ - "encrypt", - "decrypt", - ]); - - const hmacProm = globalThis.crypto.subtle.importKey( - "raw", - hmacKey, - { - name: "HMAC", - hash: { name: "SHA-256" }, - }, - false, - ["sign", "verify"], - ); - - return Promise.all([aesProm, hmacProm]); -} - -// string of zeroes, for calculating the key check -const ZERO_STR = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"; - -/** Calculate the MAC for checking the key. - * - * @param key - the key to use - * @param iv - The initialization vector as a base64-encoded string. - * If omitted, a random initialization vector will be created. - * @returns An object that contains, `mac` and `iv` properties. - */ -export function calculateKeyCheck(key: Uint8Array, iv?: string): Promise { - return encryptAES(ZERO_STR, key, "", iv); -} +import encryptAESSecretStorageItem from "../utils/encryptAESSecretStorageItem.ts"; +import decryptAESSecretStorageItem from "../utils/decryptAESSecretStorageItem.ts"; +import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; + +// Export for backwards compatibility +export type { AESEncryptedSecretStoragePayload as IEncryptedPayload }; +// Export with new names instead of using `as` to not break react-sdk tests +export const encryptAES = encryptAESSecretStorageItem; +export const decryptAES = decryptAESSecretStorageItem; +export { calculateKeyCheck } from "../calculateKeyCheck.ts"; diff --git a/src/crypto/backup.ts b/src/crypto/backup.ts index 2dc374f9868..7caf069ab4a 100644 --- a/src/crypto/backup.ts +++ b/src/crypto/backup.ts @@ -27,7 +27,6 @@ import { DeviceTrustLevel } from "./CrossSigning.ts"; import { keyFromPassphrase } from "./key_passphrase.ts"; import { encodeUri, safeSet, sleep } from "../utils.ts"; import { IndexedDBCryptoStore } from "./store/indexeddb-crypto-store.ts"; -import { calculateKeyCheck, decryptAES, encryptAES, IEncryptedPayload } from "./aes.ts"; import { Curve25519SessionData, IAes256AuthData, @@ -41,6 +40,10 @@ import { ClientPrefix, HTTPError, MatrixError, Method } from "../http-api/index. import { BackupTrustInfo } from "../crypto-api/keybackup.ts"; import { BackupDecryptor } from "../common-crypto/CryptoBackend.ts"; import { encodeRecoveryKey } from "../crypto-api/index.ts"; +import decryptAESSecretStorageItem from "../utils/decryptAESSecretStorageItem.ts"; +import encryptAESSecretStorageItem from "../utils/encryptAESSecretStorageItem.ts"; +import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; +import { calculateKeyCheck } from "../calculateKeyCheck.ts"; const KEY_BACKUP_KEYS_PER_REQUEST = 200; const KEY_BACKUP_CHECK_RATE_LIMIT = 5000; // ms @@ -94,7 +97,7 @@ interface BackupAlgorithmClass { interface BackupAlgorithm { untrusted: boolean; - encryptSession(data: Record): Promise; + encryptSession(data: Record): Promise; decryptSessions(ciphertexts: Record): Promise; authData: AuthData; keyMatches(key: ArrayLike): Promise; @@ -825,22 +828,24 @@ export class Aes256 implements BackupAlgorithm { return false; } - public encryptSession(data: Record): Promise { + public encryptSession(data: Record): Promise { const plainText: Record = Object.assign({}, data); delete plainText.session_id; delete plainText.room_id; delete plainText.first_known_index; - return encryptAES(JSON.stringify(plainText), this.key, data.session_id); + return encryptAESSecretStorageItem(JSON.stringify(plainText), this.key, data.session_id); } public async decryptSessions( - sessions: Record>, + sessions: Record>, ): Promise { const keys: IMegolmSessionData[] = []; for (const [sessionId, sessionData] of Object.entries(sessions)) { try { - const decrypted = JSON.parse(await decryptAES(sessionData.session_data, this.key, sessionId)); + const decrypted = JSON.parse( + await decryptAESSecretStorageItem(sessionData.session_data, this.key, sessionId), + ); decrypted.session_id = sessionId; keys.push(decrypted); } catch (e) { diff --git a/src/crypto/dehydration.ts b/src/crypto/dehydration.ts index 01dafa83c71..4cfc1193a0b 100644 --- a/src/crypto/dehydration.ts +++ b/src/crypto/dehydration.ts @@ -19,11 +19,12 @@ import anotherjson from "another-json"; import type { IDeviceKeys, IOneTimeKey } from "../@types/crypto.ts"; import { decodeBase64, encodeBase64 } from "../base64.ts"; import { IndexedDBCryptoStore } from "../crypto/store/indexeddb-crypto-store.ts"; -import { decryptAES, encryptAES } from "./aes.ts"; import { logger } from "../logger.ts"; import { Crypto } from "./index.ts"; import { Method } from "../http-api/index.ts"; import { SecretStorageKeyDescription } from "../secret-storage.ts"; +import decryptAESSecretStorageItem from "../utils/decryptAESSecretStorageItem.ts"; +import encryptAESSecretStorageItem from "../utils/encryptAESSecretStorageItem.ts"; export interface IDehydratedDevice { device_id: string; // eslint-disable-line camelcase @@ -61,7 +62,7 @@ export class DehydrationManager { if (result) { const { key, keyInfo, deviceDisplayName, time } = result; const pickleKey = Buffer.from(this.crypto.olmDevice.pickleKey); - const decrypted = await decryptAES(key, pickleKey, DEHYDRATION_ALGORITHM); + const decrypted = await decryptAESSecretStorageItem(key, pickleKey, DEHYDRATION_ALGORITHM); this.key = decodeBase64(decrypted); this.keyInfo = keyInfo; this.deviceDisplayName = deviceDisplayName; @@ -141,7 +142,7 @@ export class DehydrationManager { const pickleKey = Buffer.from(this.crypto.olmDevice.pickleKey); // update the crypto store with the timestamp - const key = await encryptAES(encodeBase64(this.key!), pickleKey, DEHYDRATION_ALGORITHM); + const key = await encryptAESSecretStorageItem(encodeBase64(this.key!), pickleKey, DEHYDRATION_ALGORITHM); await this.crypto.cryptoStore.doTxn("readwrite", [IndexedDBCryptoStore.STORE_ACCOUNT], (txn) => { this.crypto.cryptoStore.storeSecretStorePrivateKey(txn, "dehydration", { keyInfo: this.keyInfo, diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 4eed467758d..932ce3adf48 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -47,7 +47,6 @@ import { InRoomChannel, InRoomRequests } from "./verification/request/InRoomChan import { Request, ToDeviceChannel, ToDeviceRequests } from "./verification/request/ToDeviceChannel.ts"; import { IllegalMethod } from "./verification/IllegalMethod.ts"; import { KeySignatureUploadError } from "../errors.ts"; -import { calculateKeyCheck, decryptAES, encryptAES, IEncryptedPayload } from "./aes.ts"; import { DehydrationManager } from "./dehydration.ts"; import { BackupManager, LibOlmBackupDecryptor, backupTrustInfoFromLegacyTrustInfo } from "./backup.ts"; import { IStore } from "../store/index.ts"; @@ -107,6 +106,10 @@ import { deviceInfoToDevice } from "./device-converter.ts"; import { ClientPrefix, MatrixError, Method } from "../http-api/index.ts"; import { decodeBase64, encodeBase64 } from "../base64.ts"; import { KnownMembership } from "../@types/membership.ts"; +import decryptAESSecretStorageItem from "../utils/decryptAESSecretStorageItem.ts"; +import encryptAESSecretStorageItem from "../utils/encryptAESSecretStorageItem.ts"; +import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; +import { calculateKeyCheck } from "../calculateKeyCheck.ts"; /* re-exports for backwards compatibility */ export type { @@ -1322,11 +1325,13 @@ export class Crypto extends TypedEventEmitter { - const encodedKey = await new Promise((resolve) => { - this.cryptoStore.doTxn("readonly", [IndexedDBCryptoStore.STORE_ACCOUNT], (txn) => { - this.cryptoStore.getSecretStorePrivateKey(txn, resolve, "m.megolm_backup.v1"); - }); - }); + const encodedKey = await new Promise( + (resolve) => { + this.cryptoStore.doTxn("readonly", [IndexedDBCryptoStore.STORE_ACCOUNT], (txn) => { + this.cryptoStore.getSecretStorePrivateKey(txn, resolve, "m.megolm_backup.v1"); + }); + }, + ); let key: Uint8Array | null = null; @@ -1337,7 +1342,7 @@ export class Crypto extends TypedEventEmitter { this.cryptoStore.storeSecretStorePrivateKey(txn, "m.megolm_backup.v1", encryptedKey); }); diff --git a/src/crypto/store/base.ts b/src/crypto/store/base.ts index daf11b5b0b3..6bbd139d19b 100644 --- a/src/crypto/store/base.ts +++ b/src/crypto/store/base.ts @@ -25,8 +25,8 @@ import { Logger } from "../../logger.ts"; import { InboundGroupSessionData } from "../OlmDevice.ts"; import { MatrixEvent } from "../../models/event.ts"; import { DehydrationManager } from "../dehydration.ts"; -import { IEncryptedPayload } from "../aes.ts"; import { CrossSigningKeyInfo } from "../../crypto-api/index.ts"; +import { AESEncryptedSecretStoragePayload } from "../../@types/AESEncryptedSecretStoragePayload.ts"; /** * Internal module. Definitions for storage for the crypto module @@ -35,11 +35,11 @@ import { CrossSigningKeyInfo } from "../../crypto-api/index.ts"; export interface SecretStorePrivateKeys { "dehydration": { keyInfo: DehydrationManager["keyInfo"]; - key: IEncryptedPayload; + key: AESEncryptedSecretStoragePayload; deviceDisplayName: string; time: number; } | null; - "m.megolm_backup.v1": IEncryptedPayload; + "m.megolm_backup.v1": AESEncryptedSecretStoragePayload; } /** diff --git a/src/rust-crypto/backup.ts b/src/rust-crypto/backup.ts index c4407da21f8..b83a8e7a712 100644 --- a/src/rust-crypto/backup.ts +++ b/src/rust-crypto/backup.ts @@ -33,10 +33,10 @@ import { encodeUri, logDuration } from "../utils.ts"; import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor.ts"; import { sleep } from "../utils.ts"; import { BackupDecryptor } from "../common-crypto/CryptoBackend.ts"; -import { IEncryptedPayload } from "../crypto/aes.ts"; import { ImportRoomKeyProgressData, ImportRoomKeysOpts } from "../crypto-api/index.ts"; import { IKeyBackupInfo } from "../crypto/keybackup.ts"; import { IKeyBackup } from "../crypto/backup.ts"; +import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; /** Authentification of the backup info, depends on algorithm */ type AuthData = KeyBackupInfo["auth_data"]; @@ -622,7 +622,7 @@ export class RustBackupDecryptor implements BackupDecryptor { * Implements {@link BackupDecryptor#decryptSessions} */ public async decryptSessions( - ciphertexts: Record>, + ciphertexts: Record>, ): Promise { const keys: IMegolmSessionData[] = []; for (const [sessionId, sessionData] of Object.entries(ciphertexts)) { diff --git a/src/rust-crypto/libolm_migration.ts b/src/rust-crypto/libolm_migration.ts index 50d92a626e1..4a9784485b1 100644 --- a/src/rust-crypto/libolm_migration.ts +++ b/src/rust-crypto/libolm_migration.ts @@ -19,7 +19,6 @@ import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; import { Logger } from "../logger.ts"; import { CryptoStore, MigrationState, SecretStorePrivateKeys } from "../crypto/store/base.ts"; import { IndexedDBCryptoStore } from "../crypto/store/indexeddb-crypto-store.ts"; -import { decryptAES, IEncryptedPayload } from "../crypto/aes.ts"; import { IHttpOpts, MatrixHttpApi } from "../http-api/index.ts"; import { requestKeyBackupVersion } from "./backup.ts"; import { IRoomEncryption } from "../crypto/RoomList.ts"; @@ -28,6 +27,8 @@ import { RustCrypto } from "./rust-crypto.ts"; import { KeyBackupInfo } from "../crypto-api/keybackup.ts"; import { sleep } from "../utils.ts"; import { encodeBase64 } from "../base64.ts"; +import decryptAESSecretStorageItem from "../utils/decryptAESSecretStorageItem.ts"; +import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; /** * Determine if any data needs migrating from the legacy store, and do so. @@ -421,7 +422,7 @@ async function getAndDecryptCachedSecretKey( }); if (key && key.ciphertext && key.iv && key.mac) { - return await decryptAES(key as IEncryptedPayload, legacyPickleKey, name); + return await decryptAESSecretStorageItem(key as AESEncryptedSecretStoragePayload, legacyPickleKey, name); } else if (key instanceof Uint8Array) { // This is a legacy backward compatibility case where the key was stored in clear. return encodeBase64(key); diff --git a/src/secret-storage.ts b/src/secret-storage.ts index 82dd4272e8a..f192ddfd7f5 100644 --- a/src/secret-storage.ts +++ b/src/secret-storage.ts @@ -23,9 +23,12 @@ limitations under the License. import { TypedEventEmitter } from "./models/typed-event-emitter.ts"; import { ClientEvent, ClientEventHandlerMap } from "./client.ts"; import { MatrixEvent } from "./models/event.ts"; -import { calculateKeyCheck, decryptAES, encryptAES, IEncryptedPayload } from "./crypto/aes.ts"; import { randomString } from "./randomstring.ts"; import { logger } from "./logger.ts"; +import encryptAESSecretStorageItem from "./utils/encryptAESSecretStorageItem.ts"; +import decryptAESSecretStorageItem from "./utils/decryptAESSecretStorageItem.ts"; +import { AESEncryptedSecretStoragePayload } from "./@types/AESEncryptedSecretStoragePayload.ts"; +import { calculateKeyCheck } from "./crypto/aes.ts"; export const SECRET_STORAGE_ALGORITHM_V1_AES = "m.secret_storage.v1.aes-hmac-sha2"; @@ -200,13 +203,13 @@ export interface SecretStorageCallbacks { interface SecretInfo { encrypted: { - [keyId: string]: IEncryptedPayload; + [keyId: string]: AESEncryptedSecretStoragePayload; }; } interface Decryptors { - encrypt: (plaintext: string) => Promise; - decrypt: (ciphertext: IEncryptedPayload) => Promise; + encrypt: (plaintext: string) => Promise; + decrypt: (ciphertext: AESEncryptedSecretStoragePayload) => Promise; } /** @@ -491,7 +494,7 @@ export class ServerSideSecretStorageImpl implements ServerSideSecretStorage { * @param keys - The IDs of the keys to use to encrypt the secret, or null/undefined to use the default key. */ public async store(name: string, secret: string, keys?: string[] | null): Promise { - const encrypted: Record = {}; + const encrypted: Record = {}; if (!keys) { const defaultKeyId = await this.getDefaultKeyId(); @@ -638,11 +641,11 @@ export class ServerSideSecretStorageImpl implements ServerSideSecretStorage { if (keys[keyId].algorithm === SECRET_STORAGE_ALGORITHM_V1_AES) { const decryption = { - encrypt: function (secret: string): Promise { - return encryptAES(secret, privateKey, name); + encrypt: function (secret: string): Promise { + return encryptAESSecretStorageItem(secret, privateKey, name); }, - decrypt: function (encInfo: IEncryptedPayload): Promise { - return decryptAES(encInfo, privateKey, name); + decrypt: function (encInfo: AESEncryptedSecretStoragePayload): Promise { + return decryptAESSecretStorageItem(encInfo, privateKey, name); }, }; return [keyId, decryption]; diff --git a/src/types.ts b/src/types.ts index 24f1620427c..6266f63167f 100644 --- a/src/types.ts +++ b/src/types.ts @@ -26,6 +26,7 @@ export * from "./@types/membership.ts"; export type * from "./@types/event.ts"; export type * from "./@types/events.ts"; export type * from "./@types/state_events.ts"; +export type * from "./@types/AESEncryptedSecretStoragePayload.ts"; /** The different methods for device and user verification */ export enum VerificationMethod { diff --git a/src/utils/decryptAESSecretStorageItem.ts b/src/utils/decryptAESSecretStorageItem.ts new file mode 100644 index 00000000000..b48c16ee062 --- /dev/null +++ b/src/utils/decryptAESSecretStorageItem.ts @@ -0,0 +1,54 @@ +/* + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { decodeBase64 } from "../base64.ts"; +import { deriveKeys } from "./internal/deriveKeys.ts"; +import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; + +/** + * Decrypt an AES-encrypted Secret Storage item. + * + * @param data - the encrypted data, returned by {@link utils/encryptAESSecretStorageItem.default | encryptAESSecretStorageItem}. + * @param key - the encryption key to use as an input to the HKDF function which is used to derive the AES key. Must + * be the same as provided to {@link utils/encryptAESSecretStorageItem.default | encryptAESSecretStorageItem}. + * @param name - the name of the secret. Also used as an input to the HKDF operation which is used to derive the AES + * key, so again must be the same as provided to {@link utils/encryptAESSecretStorageItem.default | encryptAESSecretStorageItem}. + */ +export default async function decryptAESSecretStorageItem( + data: AESEncryptedSecretStoragePayload, + key: Uint8Array, + name: string, +): Promise { + const [aesKey, hmacKey] = await deriveKeys(key, name); + + const ciphertext = decodeBase64(data.ciphertext); + + if (!(await globalThis.crypto.subtle.verify({ name: "HMAC" }, hmacKey, decodeBase64(data.mac), ciphertext))) { + throw new Error(`Error decrypting secret ${name}: bad MAC`); + } + + const plaintext = await globalThis.crypto.subtle.decrypt( + { + name: "AES-CTR", + counter: decodeBase64(data.iv), + length: 64, + }, + aesKey, + ciphertext, + ); + + return new TextDecoder().decode(new Uint8Array(plaintext)); +} diff --git a/src/utils/encryptAESSecretStorageItem.ts b/src/utils/encryptAESSecretStorageItem.ts new file mode 100644 index 00000000000..064e914a125 --- /dev/null +++ b/src/utils/encryptAESSecretStorageItem.ts @@ -0,0 +1,73 @@ +/* + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { decodeBase64, encodeBase64 } from "../base64.ts"; +import { deriveKeys } from "./internal/deriveKeys.ts"; +import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; + +/** + * Encrypt a string as a secret storage item, using AES-CTR. + * + * @param data - the plaintext to encrypt + * @param key - the encryption key to use as an input to the HKDF function which is used to derive the AES key for + * encryption. Obviously, the same key must be provided when decrypting. + * @param name - the name of the secret. Used as an input to the HKDF operation which is used to derive the AES key, + * so again the same value must be provided when decrypting. + * @param ivStr - the base64-encoded initialization vector to use. If not supplied, a random one will be generated. + * + * @returns The encrypted result, including the ciphertext itself, the initialization vector (as supplied in `ivStr`, + * or generated), and an HMAC on the ciphertext — all base64-encoded. + */ +export default async function encryptAESSecretStorageItem( + data: string, + key: Uint8Array, + name: string, + ivStr?: string, +): Promise { + let iv: Uint8Array; + if (ivStr) { + iv = decodeBase64(ivStr); + } else { + iv = new Uint8Array(16); + globalThis.crypto.getRandomValues(iv); + + // clear bit 63 of the IV to stop us hitting the 64-bit counter boundary + // (which would mean we wouldn't be able to decrypt on Android). The loss + // of a single bit of iv is a price we have to pay. + iv[8] &= 0x7f; + } + + const [aesKey, hmacKey] = await deriveKeys(key, name); + const encodedData = new TextEncoder().encode(data); + + const ciphertext = await globalThis.crypto.subtle.encrypt( + { + name: "AES-CTR", + counter: iv, + length: 64, + }, + aesKey, + encodedData, + ); + + const hmac = await globalThis.crypto.subtle.sign({ name: "HMAC" }, hmacKey, ciphertext); + + return { + iv: encodeBase64(iv), + ciphertext: encodeBase64(ciphertext), + mac: encodeBase64(hmac), + }; +} diff --git a/src/utils/internal/deriveKeys.ts b/src/utils/internal/deriveKeys.ts new file mode 100644 index 00000000000..13249f846a0 --- /dev/null +++ b/src/utils/internal/deriveKeys.ts @@ -0,0 +1,63 @@ +/* + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// salt for HKDF, with 8 bytes of zeros +const zeroSalt = new Uint8Array(8); + +/** + * Derive AES and HMAC keys from a master key. + * + * This is used for deriving secret storage keys: see https://spec.matrix.org/v1.11/client-server-api/#msecret_storagev1aes-hmac-sha2 (step 1). + * + * @param key + * @param name + */ +export async function deriveKeys(key: Uint8Array, name: string): Promise<[CryptoKey, CryptoKey]> { + const hkdfkey = await globalThis.crypto.subtle.importKey("raw", key, { name: "HKDF" }, false, ["deriveBits"]); + const keybits = await globalThis.crypto.subtle.deriveBits( + { + name: "HKDF", + salt: zeroSalt, + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore: https://github.com/microsoft/TypeScript-DOM-lib-generator/pull/879 + info: new TextEncoder().encode(name), + hash: "SHA-256", + }, + hkdfkey, + 512, + ); + + const aesKey = keybits.slice(0, 32); + const hmacKey = keybits.slice(32); + + const aesProm = globalThis.crypto.subtle.importKey("raw", aesKey, { name: "AES-CTR" }, false, [ + "encrypt", + "decrypt", + ]); + + const hmacProm = globalThis.crypto.subtle.importKey( + "raw", + hmacKey, + { + name: "HMAC", + hash: { name: "SHA-256" }, + }, + false, + ["sign", "verify"], + ); + + return Promise.all([aesProm, hmacProm]); +} diff --git a/typedoc.json b/typedoc.json index 69426dc7a3e..75b85b15bf8 100644 --- a/typedoc.json +++ b/typedoc.json @@ -2,7 +2,7 @@ "$schema": "https://typedoc.org/schema.json", "plugin": ["typedoc-plugin-mdn-links", "typedoc-plugin-missing-exports", "typedoc-plugin-coverage"], "coverageLabel": "TypeDoc", - "entryPoints": ["src/matrix.ts", "src/types.ts", "src/testing.ts"], + "entryPoints": ["src/matrix.ts", "src/types.ts", "src/testing.ts", "src/utils/*.ts"], "excludeExternals": true, "out": "_docs" } From c1b4f97372a63e4af4af3cd1bbde9705fbf506e2 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 1 Oct 2024 14:54:58 +0000 Subject: [PATCH 453/595] v34.7.0-rc.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 2b67e929dee..657cb5e6b85 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.6.0", + "version": "34.7.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From f6799425848edcc65d40ddfa9fa74c418687ee3e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 1 Oct 2024 17:16:22 +0100 Subject: [PATCH 454/595] Update all non-major dependencies (#4438) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 46 +++++++++++++++++++++++----------------------- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/package.json b/package.json index 2b67e929dee..46687405cad 100644 --- a/package.json +++ b/package.json @@ -104,7 +104,7 @@ "eslint-plugin-tsdoc": "^0.3.0", "eslint-plugin-unicorn": "^55.0.0", "fake-indexeddb": "^5.0.2", - "fetch-mock": "11.1.3", + "fetch-mock": "11.1.5", "fetch-mock-jest": "^1.5.1", "husky": "^9.0.0", "jest": "^29.0.0", diff --git a/yarn.lock b/yarn.lock index 7d4262640bd..0b2535161ff 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3128,9 +3128,9 @@ eslint-plugin-jest@^28.0.0: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0 || ^8.0.0" eslint-plugin-jsdoc@^50.0.0: - version "50.2.4" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.4.tgz#9abef68ea5869e87d8a4444bfef9e5a7787162e2" - integrity sha512-020jA+dXaXdb+TML3ZJBvpPmzwbNROjnYuTYi/g6A5QEmEjhptz4oPJDKkOGMIByNxsPpdTLzSU1HYVqebOX1w== + version "50.3.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.3.1.tgz#4b56340a3ef55df9957dede430c6338c717dc0dc" + integrity sha512-SY9oUuTMr6aWoJggUS40LtMjsRzJPB5ZT7F432xZIHK3EfHF+8i48GbUBpwanrtlL9l1gILNTHK9o8gEhYLcKA== dependencies: "@es-joy/jsdoccomment" "~0.48.0" are-docs-informative "^0.0.2" @@ -3234,10 +3234,10 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -eslint-visitor-keys@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz#e3adc021aa038a2a8e0b2f8b0ce8f66b9483b1fb" - integrity sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw== +eslint-visitor-keys@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz#1f785cc5e81eb7534523d85922248232077d2f8c" + integrity sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg== eslint@8.57.0: version "8.57.0" @@ -3284,13 +3284,13 @@ eslint@8.57.0: text-table "^0.2.0" espree@^10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-10.1.0.tgz#8788dae611574c0f070691f522e4116c5a11fc56" - integrity sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA== + version "10.2.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-10.2.0.tgz#f4bcead9e05b0615c968e85f83816bc386a45df6" + integrity sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g== dependencies: acorn "^8.12.0" acorn-jsx "^5.3.2" - eslint-visitor-keys "^4.0.0" + eslint-visitor-keys "^4.1.0" espree@^9.6.0, espree@^9.6.1: version "9.6.1" @@ -3454,10 +3454,10 @@ fetch-mock-jest@^1.5.1: dependencies: fetch-mock "^9.11.0" -fetch-mock@11.1.3: - version "11.1.3" - resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-11.1.3.tgz#3dc8dcc81340fea1cf1db60a2c195c63e270b501" - integrity sha512-ATh0dWgnVrUHiiXuvQm1Ry+ThWfSv1QQgqJTCtybrNxyUrFiSOaDKsNG29eyysp1SHeNP6Q+dH50+8VifN51Ig== +fetch-mock@11.1.5: + version "11.1.5" + resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-11.1.5.tgz#77f78942f3733cfba47fc232b8528d1138a6761f" + integrity sha512-KHmZDnZ1ry0pCTrX4YG5DtThHi0MH+GNI9caESnzX/nMJBrvppUHMvLx47M0WY9oAtKOMiPfZDRpxhlHg89BOA== dependencies: "@types/glob-to-regexp" "^0.4.4" dequal "^2.0.3" @@ -4754,9 +4754,9 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.30.2" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.30.2.tgz#3cee8df2e1eb0c858f81e64568b72c0a23b94479" - integrity sha512-UuUwuTN+6Aa6mjxufWwidayGX/tPJsxZSlwUo8q4R+Gf/0aNYuhHsUH/GccuKtRPfFnf3r+ZU/7BV0dNfC7OEQ== + version "5.30.6" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.30.6.tgz#798dd6a7fe338025166b8b138bb183d6b8714b75" + integrity sha512-YkcnRVl0N99xZ7eaXE7KlH/4cPTCn6BGuk9KxINEdCMFN3yita2vGBizApy97ZOHgghy8tb589gQ3xvLMFIO4w== dependencies: "@nodelib/fs.walk" "1.2.8" "@snyk/github-codeowners" "1.1.0" @@ -4769,7 +4769,7 @@ knip@^5.0.0: picocolors "^1.0.0" picomatch "^4.0.1" pretty-ms "^9.0.0" - smol-toml "^1.1.4" + smol-toml "^1.3.0" strip-json-comments "5.0.1" summary "2.1.0" zod "^3.22.4" @@ -5321,9 +5321,9 @@ parent-module@^1.0.0: callsites "^3.0.0" parse-imports@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/parse-imports/-/parse-imports-2.1.1.tgz#ce52141df24990065d72a446a364bffd595577f4" - integrity sha512-TDT4HqzUiTMO1wJRwg/t/hYk8Wdp3iF/ToMIlAoVQfL1Xs/sTxq1dKWSMjMbQmIarfWKymOyly40+zmPHXMqCA== + version "2.2.1" + resolved "https://registry.yarnpkg.com/parse-imports/-/parse-imports-2.2.1.tgz#0a6e8b5316beb5c9905f50eb2bbb8c64a4805642" + integrity sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ== dependencies: es-module-lexer "^1.5.3" slashes "^3.0.12" @@ -5906,7 +5906,7 @@ slice-ansi@^7.1.0: ansi-styles "^6.2.1" is-fullwidth-code-point "^5.0.0" -smol-toml@^1.1.4: +smol-toml@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/smol-toml/-/smol-toml-1.3.0.tgz#5200e251fffadbb72570c84e9776d2a3eca48143" integrity sha512-tWpi2TsODPScmi48b/OQZGi2lgUmBCHy6SZrhi/FdnnHiU1GwebbCfuQuxsC3nHaLwtYeJGPrDZDIeodDOc4pA== From 9f40f32b3e5d3e5a95d6594ff41dfdd778148c69 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 1 Oct 2024 16:37:25 +0000 Subject: [PATCH 455/595] Update dependency @types/node to v18.19.54 (#4436) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 0b2535161ff..19fbe865b1b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1796,9 +1796,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.50" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.50.tgz#8652b34ee7c0e7e2004b3f08192281808d41bf5a" - integrity sha512-xonK+NRrMBRtkL1hVCc3G+uXtjh1Al4opBLjqVmipe5ZAaBYWW6cNAiBVZ1BvmkBhep698rP3UM3aRAdSALuhg== + version "18.19.54" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.54.tgz#f1048dc083f81b242640f04f18fb3e4ccf13fcdb" + integrity sha512-+BRgt0G5gYjTvdLac9sIeE0iZcJxi4Jc4PV5EUzqi+88jmQLr+fRZdv2tCTV7IHKSGxM6SaLoOXQWWUiLUItMw== dependencies: undici-types "~5.26.4" From da044820d7d3255e41e403bfbd035bf7b90ddd6a Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Thu, 3 Oct 2024 15:20:56 +0200 Subject: [PATCH 456/595] Clean AES export and move back `calculateKeyCheck` to `secret-storage.ts` (#4440) --- spec/unit/secret-storage.spec.ts | 2 +- src/calculateKeyCheck.ts | 34 -------------------------------- src/crypto/aes.ts | 9 +++------ src/crypto/backup.ts | 2 +- src/crypto/index.ts | 2 +- src/secret-storage.ts | 17 +++++++++++++++- 6 files changed, 22 insertions(+), 44 deletions(-) delete mode 100644 src/calculateKeyCheck.ts diff --git a/spec/unit/secret-storage.spec.ts b/spec/unit/secret-storage.spec.ts index b71da45e2f8..b2346d88e6c 100644 --- a/spec/unit/secret-storage.spec.ts +++ b/spec/unit/secret-storage.spec.ts @@ -18,6 +18,7 @@ import { Mocked } from "jest-mock"; import { AccountDataClient, + calculateKeyCheck, PassphraseInfo, SecretStorageCallbacks, SecretStorageKeyDescriptionAesV1, @@ -26,7 +27,6 @@ import { trimTrailingEquals, } from "../../src/secret-storage"; import { randomString } from "../../src/randomstring"; -import { calculateKeyCheck } from "../../src/calculateKeyCheck.ts"; describe("ServerSideSecretStorageImpl", function () { describe(".addKey", function () { diff --git a/src/calculateKeyCheck.ts b/src/calculateKeyCheck.ts deleted file mode 100644 index 7e979a71263..00000000000 --- a/src/calculateKeyCheck.ts +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright 2024 The Matrix.org Foundation C.I.C. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -// string of zeroes, for calculating the key check -import encryptAESSecretStorageItem from "./utils/encryptAESSecretStorageItem.ts"; -import { AESEncryptedSecretStoragePayload } from "./@types/AESEncryptedSecretStoragePayload.ts"; - -const ZERO_STR = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"; - -/** - * Calculate the MAC for checking the key. - * See https://spec.matrix.org/v1.11/client-server-api/#msecret_storagev1aes-hmac-sha2, steps 3 and 4. - * - * @param key - the key to use - * @param iv - The initialization vector as a base64-encoded string. - * If omitted, a random initialization vector will be created. - * @returns An object that contains, `mac` and `iv` properties. - */ -export function calculateKeyCheck(key: Uint8Array, iv?: string): Promise { - return encryptAESSecretStorageItem(ZERO_STR, key, "", iv); -} diff --git a/src/crypto/aes.ts b/src/crypto/aes.ts index f435d8c15e5..450e1756a14 100644 --- a/src/crypto/aes.ts +++ b/src/crypto/aes.ts @@ -16,11 +16,8 @@ limitations under the License. import encryptAESSecretStorageItem from "../utils/encryptAESSecretStorageItem.ts"; import decryptAESSecretStorageItem from "../utils/decryptAESSecretStorageItem.ts"; -import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; // Export for backwards compatibility -export type { AESEncryptedSecretStoragePayload as IEncryptedPayload }; -// Export with new names instead of using `as` to not break react-sdk tests -export const encryptAES = encryptAESSecretStorageItem; -export const decryptAES = decryptAESSecretStorageItem; -export { calculateKeyCheck } from "../calculateKeyCheck.ts"; +export type { AESEncryptedSecretStoragePayload as IEncryptedPayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; +export { encryptAESSecretStorageItem as encryptAES, decryptAESSecretStorageItem as decryptAES }; +export { calculateKeyCheck } from "../secret-storage.ts"; diff --git a/src/crypto/backup.ts b/src/crypto/backup.ts index 7caf069ab4a..39bcaae6126 100644 --- a/src/crypto/backup.ts +++ b/src/crypto/backup.ts @@ -43,7 +43,7 @@ import { encodeRecoveryKey } from "../crypto-api/index.ts"; import decryptAESSecretStorageItem from "../utils/decryptAESSecretStorageItem.ts"; import encryptAESSecretStorageItem from "../utils/encryptAESSecretStorageItem.ts"; import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; -import { calculateKeyCheck } from "../calculateKeyCheck.ts"; +import { calculateKeyCheck } from "../secret-storage.ts"; const KEY_BACKUP_KEYS_PER_REQUEST = 200; const KEY_BACKUP_CHECK_RATE_LIMIT = 5000; // ms diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 932ce3adf48..9f4b3978187 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -75,6 +75,7 @@ import { MapWithDefault, recursiveMapToObject } from "../utils.ts"; import { AccountDataClient, AddSecretStorageKeyOpts, + calculateKeyCheck, SECRET_STORAGE_ALGORITHM_V1_AES, SecretStorageKeyDescription, SecretStorageKeyObject, @@ -109,7 +110,6 @@ import { KnownMembership } from "../@types/membership.ts"; import decryptAESSecretStorageItem from "../utils/decryptAESSecretStorageItem.ts"; import encryptAESSecretStorageItem from "../utils/encryptAESSecretStorageItem.ts"; import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; -import { calculateKeyCheck } from "../calculateKeyCheck.ts"; /* re-exports for backwards compatibility */ export type { diff --git a/src/secret-storage.ts b/src/secret-storage.ts index f192ddfd7f5..13e8bdc625b 100644 --- a/src/secret-storage.ts +++ b/src/secret-storage.ts @@ -28,7 +28,6 @@ import { logger } from "./logger.ts"; import encryptAESSecretStorageItem from "./utils/encryptAESSecretStorageItem.ts"; import decryptAESSecretStorageItem from "./utils/decryptAESSecretStorageItem.ts"; import { AESEncryptedSecretStoragePayload } from "./@types/AESEncryptedSecretStoragePayload.ts"; -import { calculateKeyCheck } from "./crypto/aes.ts"; export const SECRET_STORAGE_ALGORITHM_V1_AES = "m.secret_storage.v1.aes-hmac-sha2"; @@ -676,3 +675,19 @@ export function trimTrailingEquals(input: string): string { return input; } } + +// string of zeroes, for calculating the key check +const ZERO_STR = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"; + +/** + * Calculate the MAC for checking the key. + * See https://spec.matrix.org/v1.11/client-server-api/#msecret_storagev1aes-hmac-sha2, steps 3 and 4. + * + * @param key - the key to use + * @param iv - The initialization vector as a base64-encoded string. + * If omitted, a random initialization vector will be created. + * @returns An object that contains, `mac` and `iv` properties. + */ +export function calculateKeyCheck(key: Uint8Array, iv?: string): Promise { + return encryptAESSecretStorageItem(ZERO_STR, key, "", iv); +} From 3386c66b9888f894e585e607c6f3072f3effa658 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Mon, 7 Oct 2024 11:34:23 +0100 Subject: [PATCH 457/595] Fix MatrixRTC sender key wrapping (#4441) --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 42 ++++++++++++++++++++ src/matrixrtc/MatrixRTCSession.ts | 11 +++-- 2 files changed, 47 insertions(+), 6 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 0e1f81498a9..d19038ff250 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -1010,6 +1010,48 @@ describe("MatrixRTCSession", () => { } }); + it("Wraps key index around to 0 when it reaches the maximum", async () => { + // this should give us keys with index [0...255, 0, 1] + const membersToTest = 258; + const members: CallMembershipData[] = []; + for (let i = 0; i < membersToTest; i++) { + members.push(Object.assign({}, membershipTemplate, { device_id: `DEVICE${i}` })); + } + jest.useFakeTimers(); + try { + // start with a single member + const mockRoom = makeMockRoom(members.slice(0, 1)); + + for (let i = 0; i < membersToTest; i++) { + const keysSentPromise = new Promise((resolve) => { + sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); + }); + + if (i === 0) { + // if first time around then set up the session + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + } else { + // otherwise update the state + mockRoom.getLiveTimeline().getState = jest + .fn() + .mockReturnValue(makeMockRoomState(members.slice(0, i + 1), mockRoom.roomId)); + } + + sess!.onMembershipUpdate(); + + // advance time to avoid key throttling + jest.advanceTimersByTime(10000); + + const keysPayload = await keysSentPromise; + expect(keysPayload.keys).toHaveLength(1); + expect(keysPayload.keys[0].index).toEqual(i % 256); + } + } finally { + jest.useRealTimers(); + } + }); + it("Doesn't re-send key immediately", async () => { const realSetTimeout = setTimeout; jest.useFakeTimers(); diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 1e92793807d..a76df9afd44 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -448,13 +448,12 @@ export class MatrixRTCSession extends TypedEventEmitter Date: Mon, 7 Oct 2024 12:38:28 +0100 Subject: [PATCH 458/595] Expose crypto-api as its own typedoc module (#4439) Currently the crypto-api hierarchy is exposed only as a `Crypto` namespace under the "matrix" entrypoint in the documentation. This isn't really right: it's meant to be a separate entrypoint (in the same way as `types`, `testing` and `utils` are). This PR fixes that problem. --- src/crypto-api/index.ts | 33 ++++++++++++++++++++----------- src/crypto-api/keybackup.ts | 4 ++-- src/crypto-api/verification.ts | 4 ++-- src/matrix.ts | 7 +------ src/models/typed-event-emitter.ts | 8 ++++---- src/secret-storage.ts | 2 +- src/store/indexeddb.ts | 7 +++++-- typedoc.json | 2 +- 8 files changed, 37 insertions(+), 30 deletions(-) diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index 0ac684e8c63..ec099dabff0 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -25,6 +25,15 @@ import { BackupTrustInfo, KeyBackupCheck, KeyBackupInfo } from "./keybackup.ts"; import { ISignatures } from "../@types/signed.ts"; import { MatrixEvent } from "../models/event.ts"; +/** + * `matrix-js-sdk/lib/crypto-api`: End-to-end encryption support. + * + * The most important type is {@link CryptoApi}, an instance of which can be retrieved via + * {@link MatrixClient.getCrypto}. + * + * @packageDocumentation + */ + /** * Public interface to the cryptography parts of the js-sdk * @@ -181,7 +190,7 @@ export interface CryptoApi { /** * Return whether we trust other user's signatures of their devices. * - * @see {@link Crypto.CryptoApi#setTrustCrossSignedDevices} + * @see {@link CryptoApi.setTrustCrossSignedDevices} * * @returns `true` if we trust cross-signed devices, otherwise `false`. */ @@ -228,7 +237,7 @@ export interface CryptoApi { * * @throws an error if the device is unknown, or has not published any encryption keys. * - * @remarks Fires {@link CryptoEvent#DeviceVerificationChanged} + * @remarks Fires {@link matrix.CryptoEvent.DeviceVerificationChanged} */ setDeviceVerified(userId: string, deviceId: string, verified?: boolean): Promise; @@ -259,7 +268,7 @@ export interface CryptoApi { * * @returns True if cross-signing is ready to be used on this device * - * @throws May throw {@link ClientStoppedError} if the `MatrixClient` is stopped before or during the call. + * @throws May throw {@link matrix.ClientStoppedError} if the `MatrixClient` is stopped before or during the call. */ isCrossSigningReady(): Promise; @@ -327,7 +336,7 @@ export interface CryptoApi { * @returns The current status of cross-signing keys: whether we have public and private keys cached locally, and * whether the private keys are in secret storage. * - * @throws May throw {@link ClientStoppedError} if the `MatrixClient` is stopped before or during the call. + * @throws May throw {@link matrix.ClientStoppedError} if the `MatrixClient` is stopped before or during the call. */ getCrossSigningStatus(): Promise; @@ -407,8 +416,8 @@ export interface CryptoApi { * * If an all-devices verification is already in flight, returns it. Otherwise, initiates a new one. * - * To control the methods offered, set {@link ICreateClientOpts.verificationMethods} when creating the - * MatrixClient. + * To control the methods offered, set {@link matrix.ICreateClientOpts.verificationMethods} when creating the + * `MatrixClient`. * * @returns a VerificationRequest when the request has been sent to the other party. */ @@ -422,8 +431,8 @@ export interface CryptoApi { * * If a verification for this user/device is already in flight, returns it. Otherwise, initiates a new one. * - * To control the methods offered, set {@link ICreateClientOpts.verificationMethods} when creating the - * MatrixClient. + * To control the methods offered, set {@link matrix.ICreateClientOpts.verificationMethods} when creating the + * `MatrixClient`. * * @param userId - ID of the owner of the device to verify * @param deviceId - ID of the device to verify @@ -480,7 +489,7 @@ export interface CryptoApi { /** * Determine if a key backup can be trusted. * - * @param info - key backup info dict from {@link MatrixClient#getKeyBackupVersion}. + * @param info - key backup info dict from {@link matrix.MatrixClient.getKeyBackupVersion}. */ isKeyBackupTrusted(info: KeyBackupInfo): Promise; @@ -500,7 +509,7 @@ export interface CryptoApi { * * If there are existing backups they will be replaced. * - * The decryption key will be saved in Secret Storage (the {@link SecretStorageCallbacks.getSecretStorageKey} Crypto + * The decryption key will be saved in Secret Storage (the {@link matrix.SecretStorage.SecretStorageCallbacks.getSecretStorageKey} Crypto * callback will be called) * and the backup engine will be started. */ @@ -841,9 +850,9 @@ export class DeviceVerificationStatus { * Check if we should consider this device "verified". * * A device is "verified" if either: - * * it has been manually marked as such via {@link MatrixClient#setDeviceVerified}. + * * it has been manually marked as such via {@link matrix.MatrixClient.setDeviceVerified}. * * it has been cross-signed with a verified signing key, **and** the client has been configured to trust - * cross-signed devices via {@link Crypto.CryptoApi#setTrustCrossSignedDevices}. + * cross-signed devices via {@link CryptoApi.setTrustCrossSignedDevices}. * * @returns true if this device is verified via any means. */ diff --git a/src/crypto-api/keybackup.ts b/src/crypto-api/keybackup.ts index 8a82a5f4c13..efae30d0ec4 100644 --- a/src/crypto-api/keybackup.ts +++ b/src/crypto-api/keybackup.ts @@ -35,7 +35,7 @@ export interface Aes256AuthData { * Information about a server-side key backup. * * Returned by [`GET /_matrix/client/v3/room_keys/version`](https://spec.matrix.org/v1.7/client-server-api/#get_matrixclientv3room_keysversion) - * and hence {@link MatrixClient#getKeyBackupVersion}. + * and hence {@link matrix.MatrixClient.getKeyBackupVersion}. */ export interface KeyBackupInfo { algorithm: string; @@ -63,7 +63,7 @@ export interface BackupTrustInfo { } /** - * The result of {@link Crypto.CryptoApi.checkKeyBackupAndEnable}. + * The result of {@link CryptoApi.checkKeyBackupAndEnable}. */ export interface KeyBackupCheck { backupInfo: KeyBackupInfo; diff --git a/src/crypto-api/verification.ts b/src/crypto-api/verification.ts index daa7bdbceed..468a5d7a9f2 100644 --- a/src/crypto-api/verification.ts +++ b/src/crypto-api/verification.ts @@ -119,7 +119,7 @@ export interface VerificationRequest * * If a verifier has already been created for this request, returns that verifier. * - * This does *not* send the `m.key.verification.start` event - to do so, call {@link Crypto.Verifier#verify} on the + * This does *not* send the `m.key.verification.start` event - to do so, call {@link Verifier.verify} on the * returned verifier. * * If no previous events have been sent, pass in `targetDevice` to set who to direct this request to. @@ -281,7 +281,7 @@ export interface Verifier extends TypedEventEmitter new MemoryCryptoStore(); diff --git a/src/models/typed-event-emitter.ts b/src/models/typed-event-emitter.ts index c3bec68d74b..3c90710165e 100644 --- a/src/models/typed-event-emitter.ts +++ b/src/models/typed-event-emitter.ts @@ -65,7 +65,7 @@ export class TypedEventEmitter< SuperclassArguments extends ListenerMap = Arguments, > extends EventEmitter { /** - * Alias for {@link TypedEventEmitter#on}. + * Alias for {@link on}. */ public addListener( event: T, @@ -124,7 +124,7 @@ export class TypedEventEmitter< } /** - * Alias for {@link TypedEventEmitter#removeListener} + * Alias for {@link removeListener} */ public off(event: T, listener: Listener): this { return super.off(event, listener); @@ -139,7 +139,7 @@ export class TypedEventEmitter< * being added, and called, multiple times. * * By default, event listeners are invoked in the order they are added. The - * {@link TypedEventEmitter#prependListener} method can be used as an alternative to add the + * {@link prependListener} method can be used as an alternative to add the * event listener to the beginning of the listeners array. * * @param event - The name of the event. @@ -158,7 +158,7 @@ export class TypedEventEmitter< * Returns a reference to the `EventEmitter`, so that calls can be chained. * * By default, event listeners are invoked in the order they are added. - * The {@link TypedEventEmitter#prependOnceListener} method can be used as an alternative to add the + * The {@link prependOnceListener} method can be used as an alternative to add the * event listener to the beginning of the listeners array. * * @param event - The name of the event. diff --git a/src/secret-storage.ts b/src/secret-storage.ts index 13e8bdc625b..2aa8a028aa7 100644 --- a/src/secret-storage.ts +++ b/src/secret-storage.ts @@ -164,7 +164,7 @@ export interface SecretStorageCallbacks { * Descriptions of the secret storage keys are also stored in server-side storage, per the * [matrix specification](https://spec.matrix.org/v1.6/client-server-api/#key-storage), so * before a key can be used in this way, it must have been stored on the server. This is - * done via {@link SecretStorage.ServerSideSecretStorage#addKey}. + * done via {@link ServerSideSecretStorage#addKey}. * * Obviously the keys themselves are not stored server-side, so the js-sdk calls this callback * in order to retrieve a secret storage key from the application. diff --git a/src/store/indexeddb.ts b/src/store/indexeddb.ts index 67d219e2bb3..443447b650b 100644 --- a/src/store/indexeddb.ts +++ b/src/store/indexeddb.ts @@ -24,7 +24,7 @@ import { logger } from "../logger.ts"; import { ISavedSync } from "./index.ts"; import { IIndexedDBBackend } from "./indexeddb-backend.ts"; import { ISyncResponse } from "../sync-accumulator.ts"; -import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; +import { EventEmitterEvents, TypedEventEmitter } from "../models/typed-event-emitter.ts"; import { IStateEventWithRoomId } from "../@types/search.ts"; import { IndexedToDeviceBatch, ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage.ts"; import { IStoredClientOpts } from "../client.ts"; @@ -118,7 +118,10 @@ export class IndexedDBStore extends MemoryStore { } } - public on = this.emitter.on.bind(this.emitter); + /** Re-exports `TypedEventEmitter.on` */ + public on(event: EventEmitterEvents | "degraded" | "closed", handler: (...args: any[]) => void): void { + this.emitter.on(event, handler); + } /** * @returns Resolved when loaded from indexed db. diff --git a/typedoc.json b/typedoc.json index 75b85b15bf8..9f4abe4103f 100644 --- a/typedoc.json +++ b/typedoc.json @@ -2,7 +2,7 @@ "$schema": "https://typedoc.org/schema.json", "plugin": ["typedoc-plugin-mdn-links", "typedoc-plugin-missing-exports", "typedoc-plugin-coverage"], "coverageLabel": "TypeDoc", - "entryPoints": ["src/matrix.ts", "src/types.ts", "src/testing.ts", "src/utils/*.ts"], + "entryPoints": ["src/matrix.ts", "src/crypto-api", "src/types.ts", "src/testing.ts", "src/utils/*.ts"], "excludeExternals": true, "out": "_docs" } From 0c9d82e40a2d3d2064192eb6d48732fc58d7afca Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Mon, 7 Oct 2024 14:26:56 +0200 Subject: [PATCH 459/595] Deprecate the crypto events which are not used by the rust-crypto (#4442) * Deprecate crypto event not used by the rust-crypto * Deprecate `Crypto.WillUpdateDevices` for `Crypto.DevicesUpdated` --- src/crypto/index.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 9f4b3978187..1b1cef084cc 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -230,10 +230,14 @@ export interface IMegolmEncryptedContent { export type IEncryptedContent = IOlmEncryptedContent | IMegolmEncryptedContent; export enum CryptoEvent { + /** @deprecated Event not fired by the rust crypto */ DeviceVerificationChanged = "deviceVerificationChanged", UserTrustStatusChanged = "userTrustStatusChanged", + /** @deprecated Event not fired by the rust crypto */ UserCrossSigningUpdated = "userCrossSigningUpdated", + /** @deprecated Event not fired by the rust crypto */ RoomKeyRequest = "crypto.roomKeyRequest", + /** @deprecated Event not fired by the rust crypto */ RoomKeyRequestCancellation = "crypto.roomKeyRequestCancellation", KeyBackupStatus = "crypto.keyBackupStatus", KeyBackupFailed = "crypto.keyBackupFailed", @@ -250,6 +254,7 @@ export enum CryptoEvent { */ KeyBackupDecryptionKeyCached = "crypto.keyBackupDecryptionKeyCached", + /** @deprecated Event not fired by the rust crypto */ KeySignatureUploadFailure = "crypto.keySignatureUploadFailure", /** @deprecated Use `VerificationRequestReceived`. */ VerificationRequest = "crypto.verification.request", @@ -261,7 +266,9 @@ export enum CryptoEvent { */ VerificationRequestReceived = "crypto.verificationRequestReceived", + /** @deprecated Event not fired by the rust crypto */ Warning = "crypto.warning", + /** @deprecated Use {@link DevicesUpdated} instead when using rust crypto */ WillUpdateDevices = "crypto.willUpdateDevices", DevicesUpdated = "crypto.devicesUpdated", KeysChanged = "crossSigning.keysChanged", From 860161bdd238f33210c3f51acf16b72655540ddc Mon Sep 17 00:00:00 2001 From: Saul Date: Tue, 8 Oct 2024 23:34:01 +1300 Subject: [PATCH 460/595] Fix the rust crypto import in esm environments. (#4445) * Configure babel to fix the rust import in esm environments. * Add lockfile changes. * Cleanup rust-crypto import and babel config. --- babel.config.cjs | 17 +++++++++++++++++ package.json | 1 + src/client.ts | 4 +--- yarn.lock | 5 +++++ 4 files changed, 24 insertions(+), 3 deletions(-) diff --git a/babel.config.cjs b/babel.config.cjs index d5c314af157..23ab202ae02 100644 --- a/babel.config.cjs +++ b/babel.config.cjs @@ -31,5 +31,22 @@ module.exports = { "@babel/plugin-transform-object-rest-spread", "@babel/plugin-syntax-dynamic-import", "@babel/plugin-transform-runtime", + [ + "search-and-replace", + { + // Since rewriteImportExtensions doesn't work on dynamic imports (yet), we need to manually replace + // the dynamic rust-crypto import. + // (see https://github.com/babel/babel/issues/16750) + rules: + process.env.NODE_ENV !== "test" + ? [ + { + search: "./rust-crypto/index.ts", + replace: "./rust-crypto/index.js", + }, + ] + : [], + }, + ], ], }; diff --git a/package.json b/package.json index 46687405cad..e2e274b8b2f 100644 --- a/package.json +++ b/package.json @@ -91,6 +91,7 @@ "@typescript-eslint/eslint-plugin": "^7.0.0", "@typescript-eslint/parser": "^7.0.0", "babel-jest": "^29.0.0", + "babel-plugin-search-and-replace": "^1.1.1", "debug": "^4.3.4", "eslint": "8.57.0", "eslint-config-google": "^0.14.0", diff --git a/src/client.ts b/src/client.ts index 3a9860b3a8b..514586047a8 100644 --- a/src/client.ts +++ b/src/client.ts @@ -2254,9 +2254,7 @@ export class MatrixClient extends TypedEventEmitter Date: Tue, 8 Oct 2024 12:22:28 +0000 Subject: [PATCH 461/595] v34.7.0 --- CHANGELOG.md | 15 +++++++++++++++ package.json | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d0a5e1cd743..961fa8f791d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,18 @@ +Changes in [34.7.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.7.0) (2024-10-08) +================================================================================================== +## 🦖 Deprecations + +* RTCSession cleanup: deprecate getKeysForParticipant() and getEncryption(); add emitEncryptionKeys() ([#4427](https://github.com/matrix-org/matrix-js-sdk/pull/4427)). Contributed by @hughns. + +## ✨ Features + +* Bump matrix-rust-sdk to 9.1.0 ([#4435](https://github.com/matrix-org/matrix-js-sdk/pull/4435)). Contributed by @richvdh. +* Rotate Matrix RTC media encryption key when a new member joins a call for Post Compromise Security ([#4422](https://github.com/matrix-org/matrix-js-sdk/pull/4422)). Contributed by @hughns. +* Update media event content types to include captions ([#4403](https://github.com/matrix-org/matrix-js-sdk/pull/4403)). Contributed by @tulir. +* Update OIDC registration types to match latest MSC2966 state ([#4432](https://github.com/matrix-org/matrix-js-sdk/pull/4432)). Contributed by @t3chguy. +* Add `CryptoApi.pinCurrentUserIdentity` and `UserIdentity.needsUserApproval` ([#4415](https://github.com/matrix-org/matrix-js-sdk/pull/4415)). Contributed by @richvdh. + + Changes in [34.6.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.6.0) (2024-09-24) ================================================================================================== ## 🦖 Deprecations diff --git a/package.json b/package.json index 657cb5e6b85..98342b75f94 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.7.0-rc.0", + "version": "34.7.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From c9b43ab25120c0174e456639f2e3bccaedaded2d Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 15 Oct 2024 10:53:23 +0000 Subject: [PATCH 462/595] v34.8.0 --- CHANGELOG.md | 4 ++++ package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 961fa8f791d..9b4264fc1bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +Changes in [34.8.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.8.0) (2024-10-15) +================================================================================================== +This release removes insecure functionality, resolving CVE-2024-47080 / GHSA-4jf8-g8wp-cx7c. + Changes in [34.7.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.7.0) (2024-10-08) ================================================================================================== ## 🦖 Deprecations diff --git a/package.json b/package.json index 98342b75f94..9dff6ea8601 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.7.0", + "version": "34.8.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From b240c44128a0fb9c2807815d73354dc553ec6514 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 15 Oct 2024 14:31:37 +0000 Subject: [PATCH 463/595] v34.9.0-rc.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 421da62f7d7..a88b79cb1d3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.8.0", + "version": "34.9.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From 662b772c73c15e26c529827372cc038857461e89 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Tue, 15 Oct 2024 16:38:33 +0200 Subject: [PATCH 464/595] Add crypto events to `crypto-api` (#4443) * Move used Crypto event into crypto api * Use new crypto events in rust crypto * Remove `WillUpdateDevices` event from CryptoApi * Use new crypto events in old crypto events * Compute type of CryptoEvent enum * Rename CryptoEvent and CryptoEventHandlerMap as legacy * - Rename `RustCryptoEvent` as `CryptoEvent` - Declare `CryptoEventHandlerMap` into the crypto api * Add `WillUpdateDevices` back to new crypto events to avoid circular imports between old crypto and the cryto api * Extends old crypto handler map with the new crypto map * Review fixes * Add more explicit documentations --- .../PerSessionKeyBackupDownloader.spec.ts | 2 +- spec/unit/rust-crypto/backup.spec.ts | 3 +- spec/unit/rust-crypto/rust-crypto.spec.ts | 2 +- src/client.ts | 66 +++++++------ src/crypto-api/CryptoEvent.ts | 93 +++++++++++++++++++ src/crypto-api/CryptoEventHandlerMap.ts | 32 +++++++ src/crypto-api/index.ts | 2 + src/crypto/index.ts | 92 +++--------------- .../PerSessionKeyBackupDownloader.ts | 2 +- src/rust-crypto/backup.ts | 4 +- src/rust-crypto/rust-crypto.ts | 59 ++---------- 11 files changed, 190 insertions(+), 167 deletions(-) create mode 100644 src/crypto-api/CryptoEvent.ts create mode 100644 src/crypto-api/CryptoEventHandlerMap.ts diff --git a/spec/unit/rust-crypto/PerSessionKeyBackupDownloader.spec.ts b/spec/unit/rust-crypto/PerSessionKeyBackupDownloader.spec.ts index b81e17e5e5d..5a4fe4bf72a 100644 --- a/spec/unit/rust-crypto/PerSessionKeyBackupDownloader.spec.ts +++ b/spec/unit/rust-crypto/PerSessionKeyBackupDownloader.spec.ts @@ -26,7 +26,6 @@ import { RustBackupCryptoEventMap, RustBackupCryptoEvents, RustBackupManager } f import * as TestData from "../../test-utils/test-data"; import { ConnectionError, - CryptoEvent, HttpApiEvent, HttpApiEventHandlerMap, IHttpOpts, @@ -37,6 +36,7 @@ import { import * as testData from "../../test-utils/test-data"; import { BackupDecryptor } from "../../../src/common-crypto/CryptoBackend"; import { KeyBackupSession } from "../../../src/crypto-api/keybackup"; +import { CryptoEvent } from "../../../src/crypto-api/index.ts"; describe("PerSessionKeyBackupDownloader", () => { /** The downloader under test */ diff --git a/spec/unit/rust-crypto/backup.spec.ts b/spec/unit/rust-crypto/backup.spec.ts index 1a9c1435663..4b96c74f7cf 100644 --- a/spec/unit/rust-crypto/backup.spec.ts +++ b/spec/unit/rust-crypto/backup.spec.ts @@ -2,7 +2,8 @@ import { Mocked } from "jest-mock"; import fetchMock from "fetch-mock-jest"; import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; -import { CryptoEvent, HttpApiEvent, HttpApiEventHandlerMap, MatrixHttpApi, TypedEventEmitter } from "../../../src"; +import { HttpApiEvent, HttpApiEventHandlerMap, MatrixHttpApi, TypedEventEmitter } from "../../../src"; +import { CryptoEvent } from "../../../src/crypto-api/index.ts"; import { OutgoingRequestProcessor } from "../../../src/rust-crypto/OutgoingRequestProcessor"; import * as testData from "../../test-utils/test-data"; import * as TestData from "../../test-utils/test-data"; diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index 0b16ea1ee5c..de93bc9771d 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -30,7 +30,6 @@ import fetchMock from "fetch-mock-jest"; import { RustCrypto } from "../../../src/rust-crypto/rust-crypto"; import { initRustCrypto } from "../../../src/rust-crypto"; import { - CryptoEvent, Device, DeviceVerification, encodeBase64, @@ -71,6 +70,7 @@ import { ClientEvent, ClientEventHandlerMap } from "../../../src/client"; import { Curve25519AuthData } from "../../../src/crypto-api/keybackup"; import encryptAESSecretStorageItem from "../../../src/utils/encryptAESSecretStorageItem.ts"; import { CryptoStore, SecretStorePrivateKeys } from "../../../src/crypto/store/base"; +import { CryptoEvent } from "../../../src/crypto-api/index.ts"; const TEST_USER = "@alice:example.com"; const TEST_DEVICE_ID = "TEST_DEVICE"; diff --git a/src/client.ts b/src/client.ts index 4059e68e63c..352c3c58ea9 100644 --- a/src/client.ts +++ b/src/client.ts @@ -76,8 +76,8 @@ import { } from "./http-api/index.ts"; import { Crypto, - CryptoEvent, - CryptoEventHandlerMap, + CryptoEvent as LegacyCryptoEvent, + CryptoEventHandlerMap as LegacyCryptoEventHandlerMap, fixBackupKey, ICheckOwnCrossSigningTrustOpts, ICryptoCallbacks, @@ -227,6 +227,8 @@ import { CryptoApi, decodeRecoveryKey, ImportRoomKeysOpts, + CryptoEvent, + CryptoEventHandlerMap, } from "./crypto-api/index.ts"; import { DeviceInfoMap } from "./crypto/DeviceList.ts"; import { @@ -939,23 +941,25 @@ type RoomStateEvents = | RoomStateEvent.Update | RoomStateEvent.Marker; -type CryptoEvents = - | CryptoEvent.KeySignatureUploadFailure - | CryptoEvent.KeyBackupStatus - | CryptoEvent.KeyBackupFailed - | CryptoEvent.KeyBackupSessionsRemaining - | CryptoEvent.KeyBackupDecryptionKeyCached - | CryptoEvent.RoomKeyRequest - | CryptoEvent.RoomKeyRequestCancellation - | CryptoEvent.VerificationRequest - | CryptoEvent.VerificationRequestReceived - | CryptoEvent.DeviceVerificationChanged - | CryptoEvent.UserTrustStatusChanged - | CryptoEvent.KeysChanged - | CryptoEvent.Warning - | CryptoEvent.DevicesUpdated - | CryptoEvent.WillUpdateDevices - | CryptoEvent.LegacyCryptoStoreMigrationProgress; +type LegacyCryptoEvents = + | LegacyCryptoEvent.KeySignatureUploadFailure + | LegacyCryptoEvent.KeyBackupStatus + | LegacyCryptoEvent.KeyBackupFailed + | LegacyCryptoEvent.KeyBackupSessionsRemaining + | LegacyCryptoEvent.KeyBackupDecryptionKeyCached + | LegacyCryptoEvent.RoomKeyRequest + | LegacyCryptoEvent.RoomKeyRequestCancellation + | LegacyCryptoEvent.VerificationRequest + | LegacyCryptoEvent.VerificationRequestReceived + | LegacyCryptoEvent.DeviceVerificationChanged + | LegacyCryptoEvent.UserTrustStatusChanged + | LegacyCryptoEvent.KeysChanged + | LegacyCryptoEvent.Warning + | LegacyCryptoEvent.DevicesUpdated + | LegacyCryptoEvent.WillUpdateDevices + | LegacyCryptoEvent.LegacyCryptoStoreMigrationProgress; + +type CryptoEvents = (typeof CryptoEvent)[keyof typeof CryptoEvent]; type MatrixEventEvents = MatrixEventEvent.Decrypted | MatrixEventEvent.Replaced | MatrixEventEvent.VisibilityChange; @@ -976,6 +980,7 @@ export type EmittedEvents = | ClientEvent | RoomEvents | RoomStateEvents + | LegacyCryptoEvents | CryptoEvents | MatrixEventEvents | RoomMemberEvents @@ -1187,6 +1192,7 @@ export type ClientEventHandlerMap = { [ClientEvent.TurnServersError]: (error: Error, fatal: boolean) => void; } & RoomEventHandlerMap & RoomStateEventHandlerMap & + LegacyCryptoEventHandlerMap & CryptoEventHandlerMap & MatrixEventHandlerMap & RoomMemberEventHandlerMap & @@ -2176,16 +2182,16 @@ export class MatrixClient extends TypedEventEmitter void; + [CryptoEvent.UserTrustStatusChanged]: (userId: string, userTrustLevel: UserVerificationStatus) => void; + [CryptoEvent.KeyBackupDecryptionKeyCached]: (version: string) => void; + [CryptoEvent.KeysChanged]: (data: {}) => void; + [CryptoEvent.WillUpdateDevices]: (users: string[], initialFetch: boolean) => void; + [CryptoEvent.DevicesUpdated]: (users: string[], initialFetch: boolean) => void; +} & RustBackupCryptoEventMap; diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index ec099dabff0..8a59b9c0507 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -1083,3 +1083,5 @@ export * from "./verification.ts"; export * from "./keybackup.ts"; export * from "./recovery-key.ts"; export * from "./key-passphrase.ts"; +export * from "./CryptoEvent.ts"; +export * from "./CryptoEventHandlerMap.ts"; diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 1b1cef084cc..34cf5c5db62 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -100,7 +100,8 @@ import { KeyBackupCheck, KeyBackupInfo, OwnDeviceKeys, - VerificationRequest as CryptoApiVerificationRequest, + CryptoEvent as CryptoApiCryptoEvent, + CryptoEventHandlerMap as CryptoApiCryptoEventHandlerMap, } from "../crypto-api/index.ts"; import { Device, DeviceMap } from "../models/device.ts"; import { deviceInfoToDevice } from "./device-converter.ts"; @@ -232,16 +233,16 @@ export type IEncryptedContent = IOlmEncryptedContent | IMegolmEncryptedContent; export enum CryptoEvent { /** @deprecated Event not fired by the rust crypto */ DeviceVerificationChanged = "deviceVerificationChanged", - UserTrustStatusChanged = "userTrustStatusChanged", + UserTrustStatusChanged = CryptoApiCryptoEvent.UserTrustStatusChanged, /** @deprecated Event not fired by the rust crypto */ UserCrossSigningUpdated = "userCrossSigningUpdated", /** @deprecated Event not fired by the rust crypto */ RoomKeyRequest = "crypto.roomKeyRequest", /** @deprecated Event not fired by the rust crypto */ RoomKeyRequestCancellation = "crypto.roomKeyRequestCancellation", - KeyBackupStatus = "crypto.keyBackupStatus", - KeyBackupFailed = "crypto.keyBackupFailed", - KeyBackupSessionsRemaining = "crypto.keyBackupSessionsRemaining", + KeyBackupStatus = CryptoApiCryptoEvent.KeyBackupStatus, + KeyBackupFailed = CryptoApiCryptoEvent.KeyBackupFailed, + KeyBackupSessionsRemaining = CryptoApiCryptoEvent.KeyBackupSessionsRemaining, /** * Fires when a new valid backup decryption key is in cache. @@ -252,7 +253,7 @@ export enum CryptoEvent { * * This event is only fired by the rust crypto backend. */ - KeyBackupDecryptionKeyCached = "crypto.keyBackupDecryptionKeyCached", + KeyBackupDecryptionKeyCached = CryptoApiCryptoEvent.KeyBackupDecryptionKeyCached, /** @deprecated Event not fired by the rust crypto */ KeySignatureUploadFailure = "crypto.keySignatureUploadFailure", @@ -264,14 +265,14 @@ export enum CryptoEvent { * * The payload is a {@link Crypto.VerificationRequest}. */ - VerificationRequestReceived = "crypto.verificationRequestReceived", + VerificationRequestReceived = CryptoApiCryptoEvent.VerificationRequestReceived, /** @deprecated Event not fired by the rust crypto */ Warning = "crypto.warning", /** @deprecated Use {@link DevicesUpdated} instead when using rust crypto */ - WillUpdateDevices = "crypto.willUpdateDevices", - DevicesUpdated = "crypto.devicesUpdated", - KeysChanged = "crossSigning.keysChanged", + WillUpdateDevices = CryptoApiCryptoEvent.WillUpdateDevices, + DevicesUpdated = CryptoApiCryptoEvent.DevicesUpdated, + KeysChanged = CryptoApiCryptoEvent.KeysChanged, /** * Fires when data is being migrated from legacy crypto to rust crypto. @@ -280,10 +281,10 @@ export enum CryptoEvent { * `total` is the total number of steps. When migration is complete, a final instance of the event is emitted, with * `progress === total === -1`. */ - LegacyCryptoStoreMigrationProgress = "crypto.legacyCryptoStoreMigrationProgress", + LegacyCryptoStoreMigrationProgress = CryptoApiCryptoEvent.LegacyCryptoStoreMigrationProgress, } -export type CryptoEventHandlerMap = { +export type CryptoEventHandlerMap = CryptoApiCryptoEventHandlerMap & { /** * Fires when a device is marked as verified/unverified/blocked/unblocked by * {@link MatrixClient#setDeviceVerified | MatrixClient.setDeviceVerified} or @@ -294,18 +295,6 @@ export type CryptoEventHandlerMap = { * @param deviceInfo - updated device information */ [CryptoEvent.DeviceVerificationChanged]: (userId: string, deviceId: string, deviceInfo: DeviceInfo) => void; - /** - * Fires when the trust status of a user changes - * If userId is the userId of the logged-in user, this indicated a change - * in the trust status of the cross-signing data on the account. - * - * The cross-signing API is currently UNSTABLE and may change without notice. - * @experimental - * - * @param userId - the userId of the user in question - * @param trustLevel - The new trust level of the user - */ - [CryptoEvent.UserTrustStatusChanged]: (userId: string, trustLevel: UserTrustLevel) => void; /** * Fires when we receive a room key request * @@ -316,28 +305,6 @@ export type CryptoEventHandlerMap = { * Fires when we receive a room key request cancellation */ [CryptoEvent.RoomKeyRequestCancellation]: (request: IncomingRoomKeyRequestCancellation) => void; - /** - * Fires whenever the status of e2e key backup changes, as returned by getKeyBackupEnabled() - * @param enabled - true if key backup has been enabled, otherwise false - * @example - * ``` - * matrixClient.on("crypto.keyBackupStatus", function(enabled){ - * if (enabled) { - * [...] - * } - * }); - * ``` - */ - [CryptoEvent.KeyBackupStatus]: (enabled: boolean) => void; - [CryptoEvent.KeyBackupFailed]: (errcode: string) => void; - [CryptoEvent.KeyBackupSessionsRemaining]: (remaining: number) => void; - - /** - * Fires when the backup decryption key is received and cached. - * - * @param version - The version of the backup for which we have the key for. - */ - [CryptoEvent.KeyBackupDecryptionKeyCached]: (version: string) => void; [CryptoEvent.KeySignatureUploadFailure]: ( failures: IUploadKeySignaturesResponse["failures"], source: "checkOwnCrossSigningTrust" | "afterCrossSigningLocalKeyChange" | "setDeviceVerification", @@ -349,12 +316,6 @@ export type CryptoEventHandlerMap = { * Deprecated: use `CryptoEvent.VerificationRequestReceived`. */ [CryptoEvent.VerificationRequest]: (request: VerificationRequest) => void; - - /** - * Fires when a key verification request is received. - */ - [CryptoEvent.VerificationRequestReceived]: (request: CryptoApiVerificationRequest) => void; - /** * Fires when the app may wish to warn the user about something related * the end-to-end crypto. @@ -362,33 +323,6 @@ export type CryptoEventHandlerMap = { * @param type - One of the strings listed above */ [CryptoEvent.Warning]: (type: string) => void; - /** - * Fires when the user's cross-signing keys have changed or cross-signing - * has been enabled/disabled. The client can use getStoredCrossSigningForUser - * with the user ID of the logged in user to check if cross-signing is - * enabled on the account. If enabled, it can test whether the current key - * is trusted using with checkUserTrust with the user ID of the logged - * in user. The checkOwnCrossSigningTrust function may be used to reconcile - * the trust in the account key. - * - * The cross-signing API is currently UNSTABLE and may change without notice. - * @experimental - */ - [CryptoEvent.KeysChanged]: (data: {}) => void; - /** - * Fires whenever the stored devices for a user will be updated - * @param users - A list of user IDs that will be updated - * @param initialFetch - If true, the store is empty (apart - * from our own device) and is being seeded. - */ - [CryptoEvent.WillUpdateDevices]: (users: string[], initialFetch: boolean) => void; - /** - * Fires whenever the stored devices for a user have changed - * @param users - A list of user IDs that were updated - * @param initialFetch - If true, the store was empty (apart - * from our own device) and has been seeded. - */ - [CryptoEvent.DevicesUpdated]: (users: string[], initialFetch: boolean) => void; [CryptoEvent.UserCrossSigningUpdated]: (userId: string) => void; [CryptoEvent.LegacyCryptoStoreMigrationProgress]: (progress: number, total: number) => void; diff --git a/src/rust-crypto/PerSessionKeyBackupDownloader.ts b/src/rust-crypto/PerSessionKeyBackupDownloader.ts index b33c17e1546..4e066d31e74 100644 --- a/src/rust-crypto/PerSessionKeyBackupDownloader.ts +++ b/src/rust-crypto/PerSessionKeyBackupDownloader.ts @@ -18,10 +18,10 @@ import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; import { OlmMachine } from "@matrix-org/matrix-sdk-crypto-wasm"; import { Curve25519AuthData, KeyBackupInfo, KeyBackupSession } from "../crypto-api/keybackup.ts"; +import { CryptoEvent } from "../crypto-api/index.ts"; import { Logger } from "../logger.ts"; import { ClientPrefix, IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api/index.ts"; import { RustBackupManager } from "./backup.ts"; -import { CryptoEvent } from "../matrix.ts"; import { encodeUri, sleep } from "../utils.ts"; import { BackupDecryptor } from "../common-crypto/CryptoBackend.ts"; diff --git a/src/rust-crypto/backup.ts b/src/rust-crypto/backup.ts index b83a8e7a712..4c868f12ad0 100644 --- a/src/rust-crypto/backup.ts +++ b/src/rust-crypto/backup.ts @@ -27,13 +27,13 @@ import { } from "../crypto-api/keybackup.ts"; import { logger } from "../logger.ts"; import { ClientPrefix, IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api/index.ts"; -import { CryptoEvent, IMegolmSessionData } from "../crypto/index.ts"; +import { IMegolmSessionData } from "../crypto/index.ts"; import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; import { encodeUri, logDuration } from "../utils.ts"; import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor.ts"; import { sleep } from "../utils.ts"; import { BackupDecryptor } from "../common-crypto/CryptoBackend.ts"; -import { ImportRoomKeyProgressData, ImportRoomKeysOpts } from "../crypto-api/index.ts"; +import { ImportRoomKeyProgressData, ImportRoomKeysOpts, CryptoEvent } from "../crypto-api/index.ts"; import { IKeyBackupInfo } from "../crypto/keybackup.ts"; import { IKeyBackup } from "../crypto/backup.ts"; import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 78f921e3b55..3b12c009db7 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -63,6 +63,8 @@ import { DeviceIsolationMode, AllDevicesIsolationMode, DeviceIsolationModeKind, + CryptoEvent, + CryptoEventHandlerMap, } from "../crypto-api/index.ts"; import { deviceKeysToDeviceMap, rustDeviceToJsDevice } from "./device-converter.ts"; import { IDownloadKeyResult, IQueryKeysRequest } from "../client.ts"; @@ -72,9 +74,8 @@ import { CrossSigningIdentity } from "./CrossSigningIdentity.ts"; import { secretStorageCanAccessSecrets, secretStorageContainsCrossSigningKeys } from "./secret-storage.ts"; import { isVerificationEvent, RustVerificationRequest, verificationMethodIdentifierToMethod } from "./verification.ts"; import { EventType, MsgType } from "../@types/event.ts"; -import { CryptoEvent } from "../crypto/index.ts"; import { TypedEventEmitter } from "../models/typed-event-emitter.ts"; -import { RustBackupCryptoEventMap, RustBackupCryptoEvents, RustBackupManager } from "./backup.ts"; +import { RustBackupManager } from "./backup.ts"; import { TypedReEmitter } from "../ReEmitter.ts"; import { randomString } from "../randomstring.ts"; import { ClientStoppedError } from "../errors.ts"; @@ -102,7 +103,7 @@ interface ISignableObject { * * @internal */ -export class RustCrypto extends TypedEventEmitter implements CryptoBackend { +export class RustCrypto extends TypedEventEmitter implements CryptoBackend { /** * The number of iterations to use when deriving a recovery key from a passphrase. */ @@ -125,7 +126,7 @@ export class RustCrypto extends TypedEventEmitter(this); + private readonly reemitter = new TypedReEmitter(this); public constructor( private readonly logger: Logger, @@ -2077,51 +2078,5 @@ function rustEncryptionInfoToJsEncryptionInfo( return { shieldColour, shieldReason }; } -type RustCryptoEvents = - | CryptoEvent.VerificationRequestReceived - | CryptoEvent.UserTrustStatusChanged - | CryptoEvent.KeysChanged - | CryptoEvent.WillUpdateDevices - | CryptoEvent.DevicesUpdated - | RustBackupCryptoEvents; - -type RustCryptoEventMap = { - /** - * Fires when a key verification request is received. - */ - [CryptoEvent.VerificationRequestReceived]: (request: VerificationRequest) => void; - - /** - * Fires when the trust status of a user changes. - */ - [CryptoEvent.UserTrustStatusChanged]: (userId: string, userTrustLevel: UserVerificationStatus) => void; - - [CryptoEvent.KeyBackupDecryptionKeyCached]: (version: string) => void; - /** - * Fires when the user's cross-signing keys have changed or cross-signing - * has been enabled/disabled. The client can use getStoredCrossSigningForUser - * with the user ID of the logged in user to check if cross-signing is - * enabled on the account. If enabled, it can test whether the current key - * is trusted using with checkUserTrust with the user ID of the logged - * in user. The checkOwnCrossSigningTrust function may be used to reconcile - * the trust in the account key. - * - * The cross-signing API is currently UNSTABLE and may change without notice. - * @experimental - */ - [CryptoEvent.KeysChanged]: (data: {}) => void; - /** - * Fires whenever the stored devices for a user will be updated - * @param users - A list of user IDs that will be updated - * @param initialFetch - If true, the store is empty (apart - * from our own device) and is being seeded. - */ - [CryptoEvent.WillUpdateDevices]: (users: string[], initialFetch: boolean) => void; - /** - * Fires whenever the stored devices for a user have changed - * @param users - A list of user IDs that were updated - * @param initialFetch - If true, the store was empty (apart - * from our own device) and has been seeded. - */ - [CryptoEvent.DevicesUpdated]: (users: string[], initialFetch: boolean) => void; -} & RustBackupCryptoEventMap; +type CryptoEvents = (typeof CryptoEvent)[keyof typeof CryptoEvent]; +type RustCryptoEvents = Exclude; From aabd558bce599569e93dce41b6823d2f2fa8c57d Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Tue, 15 Oct 2024 17:00:43 +0200 Subject: [PATCH 465/595] Deprecate top level crypto event re-export (#4444) --- src/matrix.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/matrix.ts b/src/matrix.ts index 67cc9d23249..29c619fa821 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -93,7 +93,11 @@ export { GroupCallType, GroupCallStatsReportEvent, } from "./webrtc/groupCall.ts"; -export { CryptoEvent } from "./crypto/index.ts"; + +export { + /** @deprecated Use {@link Crypto.CryptoEvent} instead */ + CryptoEvent, +} from "./crypto/index.ts"; export { SyncState, SetPresence } from "./sync.ts"; export type { ISyncStateData as SyncStateData } from "./sync.ts"; export { SlidingSyncEvent } from "./sliding-sync.ts"; From 5f599ee9781dc3f3c22eb2cc6ca8b663bbb9ebbe Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Tue, 15 Oct 2024 17:06:36 -0400 Subject: [PATCH 466/595] Fix DelayedEventInfo type (#4446) * Fix DelayedEventInfo type for MSC4140's GET /delayed_events * Satisfy linter while avoiding unaligned indents * Remove transaction_id from DelayedEventInfo See matrix-org/matrix-spec-proposals@883e6b5d --- src/@types/requests.ts | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/@types/requests.ts b/src/@types/requests.ts index 0baedff3ff4..cbc82aa7b5b 100644 --- a/src/@types/requests.ts +++ b/src/@types/requests.ts @@ -111,18 +111,16 @@ type DelayedPartialTimelineEvent = { type DelayedPartialStateEvent = DelayedPartialTimelineEvent & { state_key: string; - transaction_id: string; }; type DelayedPartialEvent = DelayedPartialTimelineEvent | DelayedPartialStateEvent; export type DelayedEventInfo = { - delayed_events: DelayedPartialEvent & + delayed_events: (DelayedPartialEvent & SendDelayedEventResponse & - SendDelayedEventRequestOpts & - { + SendDelayedEventRequestOpts & { running_since: number; - }[]; + })[]; next_batch?: string; }; From 68b06d7b60f1179e0c22db7b663e8323ce363b11 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 16 Oct 2024 13:48:21 +0100 Subject: [PATCH 467/595] Update workflows referencing matrix-react-sdk to use only element-web (#4451) --- .github/workflows/downstream-end-to-end-tests.yml | 3 +-- .github/workflows/notify-downstream.yaml | 2 -- .github/workflows/release.yml | 2 +- .github/workflows/tests.yml | 10 +++++----- 4 files changed, 7 insertions(+), 10 deletions(-) diff --git a/.github/workflows/downstream-end-to-end-tests.yml b/.github/workflows/downstream-end-to-end-tests.yml index 44e76748db9..6bbf3363221 100644 --- a/.github/workflows/downstream-end-to-end-tests.yml +++ b/.github/workflows/downstream-end-to-end-tests.yml @@ -21,14 +21,13 @@ concurrency: jobs: playwright: name: Playwright - uses: element-hq/matrix-react-sdk/.github/workflows/end-to-end-tests.yaml@develop + uses: element-hq/element-web/.github/workflows/end-to-end-tests.yaml@develop permissions: actions: read issues: read pull-requests: read with: matrix-js-sdk-sha: ${{ github.sha }} - react-sdk-repository: element-hq/matrix-react-sdk # We only want to run the playwright tests on merge queue to prevent regressions # from creeping in. They take a long time to run and consume multiple concurrent runners. skip: ${{ github.event_name != 'merge_group' }} diff --git a/.github/workflows/notify-downstream.yaml b/.github/workflows/notify-downstream.yaml index d59a74ce65c..07c3a7297e7 100644 --- a/.github/workflows/notify-downstream.yaml +++ b/.github/workflows/notify-downstream.yaml @@ -14,8 +14,6 @@ jobs: include: - repo: element-hq/element-web event: element-web-notify - - repo: element-hq/matrix-react-sdk - event: upstream-sdk-notify runs-on: ubuntu-latest steps: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 057156a8b88..7e2bf0002cd 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -28,7 +28,7 @@ jobs: with: final: ${{ inputs.mode == 'final' }} npm: ${{ inputs.npm }} - downstreams: '["element-hq/matrix-react-sdk", "element-hq/element-web"]' + downstreams: '["element-hq/element-web"]' docs: name: Publish Documentation diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 21316ded268..ddca69bd3d5 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -73,10 +73,10 @@ jobs: - if: needs.jest.result != 'skipped' && needs.jest.result != 'success' run: exit 1 - matrix-react-sdk: - name: Downstream test matrix-react-sdk + element-web: + name: Downstream test element-web if: github.event_name == 'merge_group' - uses: element-hq/matrix-react-sdk/.github/workflows/tests.yml@develop + uses: element-hq/element-web/.github/workflows/tests.yml@develop with: disable_coverage: true matrix-js-sdk-sha: ${{ github.sha }} @@ -106,7 +106,7 @@ jobs: runs-on: ubuntu-latest if: always() needs: - - matrix-react-sdk + - element-web steps: - name: Skip SonarCloud on merge queues if: env.ENABLE_COVERAGE == 'false' @@ -119,5 +119,5 @@ jobs: sha: ${{ github.sha }} target_url: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} - - if: needs.matrix-react-sdk.result != 'skipped' && needs.matrix-react-sdk.result != 'success' + - if: needs.element-web.result != 'skipped' && needs.element-web.result != 'success' run: exit 1 From d29329bddb55aa27a7db9660b741a77645aebfaa Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 13:49:22 +0100 Subject: [PATCH 468/595] Replace dependency eslint-plugin-node with eslint-plugin-n ^14.0.0 (#4416) * Replace dependency eslint-plugin-node with eslint-plugin-n ^14.0.0 * Update eslint config Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- .eslintrc.cjs | 4 ++-- package.json | 2 +- yarn.lock | 32 ++++++++++++++++++++------------ 3 files changed, 23 insertions(+), 15 deletions(-) diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 3147d878f75..4b568b8aacc 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -1,5 +1,5 @@ module.exports = { - plugins: ["matrix-org", "import", "jsdoc", "node"], + plugins: ["matrix-org", "import", "jsdoc", "n"], extends: ["plugin:matrix-org/babel", "plugin:matrix-org/jest", "plugin:import/typescript"], parserOptions: { project: ["./tsconfig.json"], @@ -129,7 +129,7 @@ module.exports = { // "jsdoc/check-param-names": "error", // "jsdoc/check-indentation": "error", // Ensure .ts extension on imports outside of tests - "node/file-extension-in-import": [ + "n/file-extension-in-import": [ "error", "always", { diff --git a/package.json b/package.json index 421da62f7d7..18566ba21d4 100644 --- a/package.json +++ b/package.json @@ -101,7 +101,7 @@ "eslint-plugin-jest": "^28.0.0", "eslint-plugin-jsdoc": "^50.0.0", "eslint-plugin-matrix-org": "^1.0.0", - "eslint-plugin-node": "^11.1.0", + "eslint-plugin-n": "^14.0.0", "eslint-plugin-tsdoc": "^0.3.0", "eslint-plugin-unicorn": "^55.0.0", "fake-indexeddb": "^5.0.2", diff --git a/yarn.lock b/yarn.lock index b530c58e140..d88e735f958 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3093,10 +3093,10 @@ eslint-module-utils@^2.9.0: dependencies: debug "^3.2.7" -eslint-plugin-es@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893" - integrity sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ== +eslint-plugin-es@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz#f0822f0c18a535a97c3e714e89f88586a7641ec9" + integrity sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ== dependencies: eslint-utils "^2.0.0" regexpp "^3.0.0" @@ -3154,14 +3154,15 @@ eslint-plugin-matrix-org@^1.0.0: resolved "https://registry.yarnpkg.com/eslint-plugin-matrix-org/-/eslint-plugin-matrix-org-1.2.1.tgz#76d1505daa93fb99ba4156008b9b32f57682c9b1" integrity sha512-A3cDjhG7RHwfCS8o3bOip8hSCsxtmgk2ahvqE5v/Ic2kPEZxixY6w8zLj7hFGsrRmPSEpLWqkVLt8uvQBapiQA== -eslint-plugin-node@^11.1.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d" - integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g== +eslint-plugin-n@^14.0.0: + version "14.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-n/-/eslint-plugin-n-14.0.0.tgz#aa7944f5b1fd69cf64ecb1ddd1a4762bb0f4f352" + integrity sha512-mNwplPLsbaKhHyA0fa/cy8j+oF6bF6l81hzBTWa6JOvPcMNAuIogk2ih6d9tYvWYzyUG+7ZFeChqbzdFpg2QrQ== dependencies: - eslint-plugin-es "^3.0.0" - eslint-utils "^2.0.0" + eslint-plugin-es "^4.1.0" + eslint-utils "^3.0.0" ignore "^5.1.1" + is-core-module "^2.3.0" minimatch "^3.0.4" resolve "^1.10.1" semver "^6.1.0" @@ -3224,12 +3225,19 @@ eslint-utils@^2.0.0: dependencies: eslint-visitor-keys "^1.1.0" +eslint-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== + dependencies: + eslint-visitor-keys "^2.0.0" + eslint-visitor-keys@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint-visitor-keys@^2.1.0: +eslint-visitor-keys@^2.0.0, eslint-visitor-keys@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== @@ -3981,7 +3989,7 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.13.0, is-core-module@^2.15.1: +is-core-module@^2.13.0, is-core-module@^2.15.1, is-core-module@^2.3.0: version "2.15.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.1.tgz#a7363a25bee942fefab0de13bf6aa372c82dcc37" integrity sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ== From 6c22da9a9667dd1c6b4762b6a80b5aba4cc8b3c4 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 12:50:08 +0000 Subject: [PATCH 469/595] Update dependency eslint to v8.57.1 (#4437) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 2 +- yarn.lock | 32 ++++++++++++++++---------------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/package.json b/package.json index 18566ba21d4..e730c6616ae 100644 --- a/package.json +++ b/package.json @@ -93,7 +93,7 @@ "babel-jest": "^29.0.0", "babel-plugin-search-and-replace": "^1.1.1", "debug": "^4.3.4", - "eslint": "8.57.0", + "eslint": "8.57.1", "eslint-config-google": "^0.14.0", "eslint-config-prettier": "^9.0.0", "eslint-import-resolver-typescript": "^3.5.1", diff --git a/yarn.lock b/yarn.lock index d88e735f958..7b49f4b6ca1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1143,17 +1143,17 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@8.57.0": - version "8.57.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f" - integrity sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g== +"@eslint/js@8.57.1": + version "8.57.1" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.1.tgz#de633db3ec2ef6a3c89e2f19038063e8a122e2c2" + integrity sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q== -"@humanwhocodes/config-array@^0.11.14": - version "0.11.14" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b" - integrity sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg== +"@humanwhocodes/config-array@^0.13.0": + version "0.13.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.13.0.tgz#fb907624df3256d04b9aa2df50d7aa97ec648748" + integrity sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw== dependencies: - "@humanwhocodes/object-schema" "^2.0.2" + "@humanwhocodes/object-schema" "^2.0.3" debug "^4.3.1" minimatch "^3.0.5" @@ -1162,7 +1162,7 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== -"@humanwhocodes/object-schema@^2.0.2": +"@humanwhocodes/object-schema@^2.0.3": version "2.0.3" resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3" integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA== @@ -3252,16 +3252,16 @@ eslint-visitor-keys@^4.1.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz#1f785cc5e81eb7534523d85922248232077d2f8c" integrity sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg== -eslint@8.57.0: - version "8.57.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.0.tgz#c786a6fd0e0b68941aaf624596fb987089195668" - integrity sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ== +eslint@8.57.1: + version "8.57.1" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.1.tgz#7df109654aba7e3bbe5c8eae533c5e461d3c6ca9" + integrity sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.6.1" "@eslint/eslintrc" "^2.1.4" - "@eslint/js" "8.57.0" - "@humanwhocodes/config-array" "^0.11.14" + "@eslint/js" "8.57.1" + "@humanwhocodes/config-array" "^0.13.0" "@humanwhocodes/module-importer" "^1.0.1" "@nodelib/fs.walk" "^1.2.8" "@ungap/structured-clone" "^1.2.0" From b4556d6552831a88efbb033f4efc4c7479a9f9ac Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 12:50:55 +0000 Subject: [PATCH 470/595] Update typedoc (#4457) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 103 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 54 insertions(+), 49 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7b49f4b6ca1..887a5a46332 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1558,47 +1558,47 @@ resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g== -"@shikijs/core@1.18.0": - version "1.18.0" - resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.18.0.tgz#30dde8e53026dada606c4cf7f32d80a3f33d437c" - integrity sha512-VK4BNVCd2leY62Nm2JjyxtRLkyrZT/tv104O81eyaCjHq4Adceq2uJVFJJAIof6lT1mBwZrEo2qT/T+grv3MQQ== - dependencies: - "@shikijs/engine-javascript" "1.18.0" - "@shikijs/engine-oniguruma" "1.18.0" - "@shikijs/types" "1.18.0" - "@shikijs/vscode-textmate" "^9.2.2" +"@shikijs/core@1.22.0": + version "1.22.0" + resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.22.0.tgz#74e5d4485e5f7afa85109e322b42e400686f92bb" + integrity sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q== + dependencies: + "@shikijs/engine-javascript" "1.22.0" + "@shikijs/engine-oniguruma" "1.22.0" + "@shikijs/types" "1.22.0" + "@shikijs/vscode-textmate" "^9.3.0" "@types/hast" "^3.0.4" hast-util-to-html "^9.0.3" -"@shikijs/engine-javascript@1.18.0": - version "1.18.0" - resolved "https://registry.yarnpkg.com/@shikijs/engine-javascript/-/engine-javascript-1.18.0.tgz#9888011c5d869a687b42e3e56c7243f15a73524b" - integrity sha512-qoP/aO/ATNwYAUw1YMdaip/YVEstMZEgrwhePm83Ll9OeQPuxDZd48szZR8oSQNQBT8m8UlWxZv8EA3lFuyI5A== +"@shikijs/engine-javascript@1.22.0": + version "1.22.0" + resolved "https://registry.yarnpkg.com/@shikijs/engine-javascript/-/engine-javascript-1.22.0.tgz#2e5db29f0421755492f5279f8224ef7a7f907a29" + integrity sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw== dependencies: - "@shikijs/types" "1.18.0" - "@shikijs/vscode-textmate" "^9.2.2" + "@shikijs/types" "1.22.0" + "@shikijs/vscode-textmate" "^9.3.0" oniguruma-to-js "0.4.3" -"@shikijs/engine-oniguruma@1.18.0": - version "1.18.0" - resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-1.18.0.tgz#7e57fd19b62b18cf2de382da684d042ee934f65d" - integrity sha512-B9u0ZKI/cud+TcmF8Chyh+R4V5qQVvyDOqXC2l2a4x73PBSBc6sZ0JRAX3eqyJswqir6ktwApUUGBYePdKnMJg== +"@shikijs/engine-oniguruma@1.22.0": + version "1.22.0" + resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-1.22.0.tgz#74c661fac4cd1f08f2c09b5d6e2fd2a6720d0401" + integrity sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw== dependencies: - "@shikijs/types" "1.18.0" - "@shikijs/vscode-textmate" "^9.2.2" + "@shikijs/types" "1.22.0" + "@shikijs/vscode-textmate" "^9.3.0" -"@shikijs/types@1.18.0": - version "1.18.0" - resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-1.18.0.tgz#4c2d62d17f78cbfc051a15480ab4dfb0f06196c9" - integrity sha512-O9N36UEaGGrxv1yUrN2nye7gDLG5Uq0/c1LyfmxsvzNPqlHzWo9DI0A4+fhW2y3bGKuQu/fwS7EPdKJJCowcVA== +"@shikijs/types@1.22.0": + version "1.22.0" + resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-1.22.0.tgz#d2a572381395c9308b472c8199b8e0289753b9ad" + integrity sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww== dependencies: - "@shikijs/vscode-textmate" "^9.2.2" + "@shikijs/vscode-textmate" "^9.3.0" "@types/hast" "^3.0.4" -"@shikijs/vscode-textmate@^9.2.2": - version "9.2.2" - resolved "https://registry.yarnpkg.com/@shikijs/vscode-textmate/-/vscode-textmate-9.2.2.tgz#24571f50625c7cd075f9efe0def8b9d2c0930ada" - integrity sha512-TMp15K+GGYrWlZM8+Lnj9EaHEFmOen0WJBrfa17hF7taDOYthuPPV0GWzfd/9iMij0akS/8Yw2ikquH7uVi/fg== +"@shikijs/vscode-textmate@^9.3.0": + version "9.3.0" + resolved "https://registry.yarnpkg.com/@shikijs/vscode-textmate/-/vscode-textmate-9.3.0.tgz#b2f1776e488c1d6c2b6cd129bab62f71bbc9c7ab" + integrity sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA== "@sinclair/typebox@^0.24.1": version "0.24.51" @@ -5605,9 +5605,9 @@ regenerator-transform@^0.15.2: "@babel/runtime" "^7.8.4" regex@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/regex/-/regex-4.3.2.tgz#a68a68c9b337a77bf4ce4ed0b4b1a49d97cb3b7b" - integrity sha512-kK/AA3A9K6q2js89+VMymcboLOlF5lZRCYJv3gzszXFHBr6kO6qLGzbm+UIugBEV8SMMKCTR59txoY6ctRHYVw== + version "4.3.3" + resolved "https://registry.yarnpkg.com/regex/-/regex-4.3.3.tgz#8cda73ccbdfa7c5691881d02f9bb142dba9daa6a" + integrity sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg== regexp-tree@^0.1.27: version "0.1.27" @@ -5852,15 +5852,15 @@ shebang-regex@^3.0.0: integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shiki@^1.16.2: - version "1.18.0" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.18.0.tgz#4f9ca2f442b3612849017ab1dcac47c35ee52276" - integrity sha512-8jo7tOXr96h9PBQmOHVrltnETn1honZZY76YA79MHheGQg55jBvbm9dtU+MI5pjC5NJCFuA6rvVTLVeSW5cE4A== - dependencies: - "@shikijs/core" "1.18.0" - "@shikijs/engine-javascript" "1.18.0" - "@shikijs/engine-oniguruma" "1.18.0" - "@shikijs/types" "1.18.0" - "@shikijs/vscode-textmate" "^9.2.2" + version "1.22.0" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.22.0.tgz#45d1dfff0e03a598af70e2ec8592f14ef07827b4" + integrity sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw== + dependencies: + "@shikijs/core" "1.22.0" + "@shikijs/engine-javascript" "1.22.0" + "@shikijs/engine-oniguruma" "1.22.0" + "@shikijs/types" "1.22.0" + "@shikijs/vscode-textmate" "^9.3.0" "@types/hast" "^3.0.4" side-channel@^1.0.4: @@ -6371,9 +6371,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-wpywQ95tqGSD6IbYUPMXSKiwnSWboSKdx2y9X6SJQKzQvBqZoz5iiUyDJFixtW8v7+xmrqXFR/B6Wy37FNhVqA== typedoc-plugin-mdn-links@^3.0.3: - version "3.3.1" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.3.1.tgz#cf9962341477437c2235a640e006d1da48551024" - integrity sha512-hgCOm3vDYLbSsIiQbr5hb/ayiMnspjsOwgH4hNVoOLaAeEecuwlY4VY7yh68TY10P1GwbG3N4UnAqmbkvf89KA== + version "3.3.3" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.3.3.tgz#ce57f5d4f171a60544b36b6dcf803474e34aeb8c" + integrity sha512-XIYQsaTeIScwpkFZg+yXR2s0V/D5UlY11AbPjIEgZ2g8aE+IYUn4Ci4cUFRcZpWqQfjfAj2XcJG3tRejCBPisw== typedoc-plugin-missing-exports@^3.0.0: version "3.0.0" @@ -6381,9 +6381,9 @@ typedoc-plugin-missing-exports@^3.0.0: integrity sha512-R7D8fYrK34mBFZSlF1EqJxfqiUSlQSmyrCiQgTQD52nNm6+kUtqwiaqaNkuJ2rA2wBgWFecUA8JzHT7x2r7ePg== typedoc@^0.26.0: - version "0.26.7" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.7.tgz#1980e3ed51c6c315b7a09786b2b9af1106a3aa80" - integrity sha512-gUeI/Wk99vjXXMi8kanwzyhmeFEGv1LTdTQsiyIsmSYsBebvFxhbcyAx7Zjo4cMbpLGxM4Uz3jVIjksu/I2v6Q== + version "0.26.10" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.10.tgz#d372f171dc2c4458cbac6c473be9591042ab781d" + integrity sha512-xLmVKJ8S21t+JeuQLNueebEuTVphx6IrP06CdV7+0WVflUSW3SPmR+h1fnWVdAR/FQePEgsSWCUHXqKKjzuUAw== dependencies: lunr "^2.3.9" markdown-it "^14.1.0" @@ -6755,7 +6755,12 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yaml@^2.5.1, yaml@~2.5.0: +yaml@^2.5.1: + version "2.6.0" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.6.0.tgz#14059ad9d0b1680d0f04d3a60fe00f3a857303c3" + integrity sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ== + +yaml@~2.5.0: version "2.5.1" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.1.tgz#c9772aacf62cb7494a95b0c4f1fb065b563db130" integrity sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q== From ab5d95102cc09fc704ead036988c17dda962549f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 12:51:13 +0000 Subject: [PATCH 471/595] Update dependency typescript to v5.6.3 (#4456) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 887a5a46332..14983f0d396 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6392,9 +6392,9 @@ typedoc@^0.26.0: yaml "^2.5.1" typescript@^5.4.2: - version "5.6.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.6.2.tgz#d1de67b6bef77c41823f822df8f0b3bcff60a5a0" - integrity sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw== + version "5.6.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.6.3.tgz#5f3449e31c9d94febb17de03cc081dd56d81db5b" + integrity sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw== uc.micro@^2.0.0, uc.micro@^2.1.0: version "2.1.0" From fabdd6da647883664374b819767c69c054acdc95 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 13:30:52 +0000 Subject: [PATCH 472/595] Update dependency eslint-plugin-unicorn to v56 (#4459) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 43 ++++++++++++++++++------------------------- 2 files changed, 19 insertions(+), 26 deletions(-) diff --git a/package.json b/package.json index e730c6616ae..6c3b195a09b 100644 --- a/package.json +++ b/package.json @@ -103,7 +103,7 @@ "eslint-plugin-matrix-org": "^1.0.0", "eslint-plugin-n": "^14.0.0", "eslint-plugin-tsdoc": "^0.3.0", - "eslint-plugin-unicorn": "^55.0.0", + "eslint-plugin-unicorn": "^56.0.0", "fake-indexeddb": "^5.0.2", "fetch-mock": "11.1.5", "fetch-mock-jest": "^1.5.1", diff --git a/yarn.lock b/yarn.lock index 14983f0d396..61490cd3ed3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -244,7 +244,7 @@ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ== -"@babel/helper-validator-identifier@^7.24.5", "@babel/helper-validator-identifier@^7.24.7": +"@babel/helper-validator-identifier@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== @@ -2353,7 +2353,7 @@ braces@^3.0.3, braces@~3.0.2: dependencies: fill-range "^7.1.1" -browserslist@^4.23.0, browserslist@^4.23.1, browserslist@^4.23.3: +browserslist@^4.23.1, browserslist@^4.23.3: version "4.23.3" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.3.tgz#debb029d3c93ebc97ffbc8d9cbb03403e227c800" integrity sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA== @@ -2622,14 +2622,7 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -core-js-compat@^3.37.0: - version "3.37.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.37.1.tgz#c844310c7852f4bdf49b8d339730b97e17ff09ee" - integrity sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg== - dependencies: - browserslist "^4.23.0" - -core-js-compat@^3.37.1, core-js-compat@^3.38.0: +core-js-compat@^3.37.1, core-js-compat@^3.38.0, core-js-compat@^3.38.1: version "3.38.1" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.38.1.tgz#2bc7a298746ca5a7bcb9c164bcb120f2ebc09a09" integrity sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw== @@ -3175,18 +3168,18 @@ eslint-plugin-tsdoc@^0.3.0: "@microsoft/tsdoc" "0.15.0" "@microsoft/tsdoc-config" "0.17.0" -eslint-plugin-unicorn@^55.0.0: - version "55.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-55.0.0.tgz#e2aeb397914799895702480970e7d148df5bcc7b" - integrity sha512-n3AKiVpY2/uDcGrS3+QsYDkjPfaOrNrsfQxU9nt5nitd9KuvVXrfAvgCO9DYPSfap+Gqjw9EOrXIsBp5tlHZjA== +eslint-plugin-unicorn@^56.0.0: + version "56.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-56.0.0.tgz#9fd3ebe6f478571734541fa745026b743175b59e" + integrity sha512-aXpddVz/PQMmd69uxO98PA4iidiVNvA0xOtbpUoz1WhBd4RxOQQYqN618v68drY0hmy5uU2jy1bheKEVWBjlPw== dependencies: - "@babel/helper-validator-identifier" "^7.24.5" + "@babel/helper-validator-identifier" "^7.24.7" "@eslint-community/eslint-utils" "^4.4.0" ci-info "^4.0.0" clean-regexp "^1.0.0" - core-js-compat "^3.37.0" - esquery "^1.5.0" - globals "^15.7.0" + core-js-compat "^3.38.1" + esquery "^1.6.0" + globals "^15.9.0" indent-string "^4.0.0" is-builtin-module "^3.2.1" jsesc "^3.0.2" @@ -3194,7 +3187,7 @@ eslint-plugin-unicorn@^55.0.0: read-pkg-up "^7.0.1" regexp-tree "^0.1.27" regjsparser "^0.10.0" - semver "^7.6.1" + semver "^7.6.3" strip-indent "^3.0.0" eslint-rule-composer@^0.3.0: @@ -3319,7 +3312,7 @@ esprima@^4.0.0, esprima@^4.0.1: resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.4.2, esquery@^1.5.0, esquery@^1.6.0: +esquery@^1.4.2, esquery@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7" integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg== @@ -3709,10 +3702,10 @@ globals@^13.19.0: dependencies: type-fest "^0.20.2" -globals@^15.7.0: - version "15.9.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-15.9.0.tgz#e9de01771091ffbc37db5714dab484f9f69ff399" - integrity sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA== +globals@^15.9.0: + version "15.11.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-15.11.0.tgz#b96ed4c6998540c6fb824b24b5499216d2438d6e" + integrity sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw== globalthis@^1.0.3: version "1.0.4" @@ -5807,7 +5800,7 @@ semver@^6.1.0, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.5.3, semver@^7.5.4, semver@^7.6.1: +semver@^7.5.3, semver@^7.5.4: version "7.6.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== From e9a9280e3c66dfa9c78c41bb5f66da298e106ed6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 13:34:51 +0000 Subject: [PATCH 473/595] Update all non-major dependencies (#4458) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 92 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 49 insertions(+), 43 deletions(-) diff --git a/yarn.lock b/yarn.lock index 61490cd3ed3..c369aa24915 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1107,10 +1107,10 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@es-joy/jsdoccomment@~0.48.0": - version "0.48.0" - resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.48.0.tgz#5d9dc1a295cf5d1ed224dffafb4800d5c7206c27" - integrity sha512-G6QUWIcC+KvSwXNsJyDTHvqUdNoAVJPPgkc3+Uk4WBKqZvoXhlvazOgm9aL0HwihJLQf0l+tOE2UFzXBqCqgDw== +"@es-joy/jsdoccomment@~0.49.0": + version "0.49.0" + resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.49.0.tgz#e5ec1eda837c802eca67d3b29e577197f14ba1db" + integrity sha512-xjZTSFgECpb9Ohuk5yMX5RhUEbfeQcuOp8IF60e+wyzWEF0M5xeSgqsfLtvPEX8BIyOX9saZqzuGPmZ8oWc+5Q== dependencies: comment-parser "1.4.1" esquery "^1.6.0" @@ -2005,11 +2005,16 @@ acorn-walk@^8.0.2, acorn-walk@^8.1.1: dependencies: acorn "^8.11.0" -acorn@^8.1.0, acorn@^8.11.0, acorn@^8.12.0, acorn@^8.4.1, acorn@^8.8.1, acorn@^8.9.0: +acorn@^8.1.0, acorn@^8.11.0, acorn@^8.4.1, acorn@^8.8.1, acorn@^8.9.0: version "8.12.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.1.tgz#71616bdccbe25e27a54439e0046e89ca76df2248" integrity sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg== +acorn@^8.12.0: + version "8.13.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.13.0.tgz#2a30d670818ad16ddd6a35d3842dacec9e5d7ca3" + integrity sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w== + agent-base@6: version "6.0.2" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" @@ -3072,6 +3077,13 @@ eslint-import-resolver-typescript@^3.5.1: is-bun-module "^1.0.2" is-glob "^4.0.3" +eslint-module-utils@^2.12.0: + version "2.12.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz#fe4cfb948d61f49203d7b08871982b65b9af0b0b" + integrity sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg== + dependencies: + debug "^3.2.7" + eslint-module-utils@^2.8.1: version "2.9.0" resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.9.0.tgz#95d4ac038a68cd3f63482659dffe0883900eb342" @@ -3079,13 +3091,6 @@ eslint-module-utils@^2.8.1: dependencies: debug "^3.2.7" -eslint-module-utils@^2.9.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.11.0.tgz#b99b211ca4318243f09661fae088f373ad5243c4" - integrity sha512-gbBE5Hitek/oG6MUVj6sFuzEjA/ClzNflVrLovHi/JgLdC7fiN5gLAY1WIPW1a0V5I999MnsrvVrCOGmmVqDBQ== - dependencies: - debug "^3.2.7" - eslint-plugin-es@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz#f0822f0c18a535a97c3e714e89f88586a7641ec9" @@ -3095,9 +3100,9 @@ eslint-plugin-es@^4.1.0: regexpp "^3.0.0" eslint-plugin-import@^2.26.0: - version "2.30.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.30.0.tgz#21ceea0fc462657195989dd780e50c92fe95f449" - integrity sha512-/mHNE9jINJfiD2EKkg1BKyPyUk4zdnT54YgbOgfjSakWT5oyX/qQLVNTkehyfpcMxZXMy1zyonZ2v7hZTX43Yw== + version "2.31.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz#310ce7e720ca1d9c0bb3f69adfd1c6bdd7d9e0e7" + integrity sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A== dependencies: "@rtsao/scc" "^1.1.0" array-includes "^3.1.8" @@ -3107,7 +3112,7 @@ eslint-plugin-import@^2.26.0: debug "^3.2.7" doctrine "^2.1.0" eslint-import-resolver-node "^0.3.9" - eslint-module-utils "^2.9.0" + eslint-module-utils "^2.12.0" hasown "^2.0.2" is-core-module "^2.15.1" is-glob "^4.0.3" @@ -3116,6 +3121,7 @@ eslint-plugin-import@^2.26.0: object.groupby "^1.0.3" object.values "^1.2.0" semver "^6.3.1" + string.prototype.trimend "^1.0.8" tsconfig-paths "^3.15.0" eslint-plugin-jest@^28.0.0: @@ -3126,11 +3132,11 @@ eslint-plugin-jest@^28.0.0: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0 || ^8.0.0" eslint-plugin-jsdoc@^50.0.0: - version "50.3.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.3.1.tgz#4b56340a3ef55df9957dede430c6338c717dc0dc" - integrity sha512-SY9oUuTMr6aWoJggUS40LtMjsRzJPB5ZT7F432xZIHK3EfHF+8i48GbUBpwanrtlL9l1gILNTHK9o8gEhYLcKA== + version "50.4.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.4.1.tgz#845ddf4c395891babe135023d97a45c750d94c4c" + integrity sha512-OXIq+JJQPCLAKL473/esioFOwbXyRE5MAQ4HbZjcp3e+K3zdxt2uDpGs3FR+WezUXNStzEtTfgx15T+JFrVwBA== dependencies: - "@es-joy/jsdoccomment" "~0.48.0" + "@es-joy/jsdoccomment" "~0.49.0" are-docs-informative "^0.0.2" comment-parser "1.4.1" debug "^4.3.6" @@ -4623,10 +4629,10 @@ jest@^29.0.0: import-local "^3.0.2" jest-cli "^29.7.0" -jiti@^1.21.6: - version "1.21.6" - resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.6.tgz#6c7f7398dd4b3142767f9a168af2f317a428d268" - integrity sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w== +jiti@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-2.3.3.tgz#39c66fc77476b92a694e65dfe04b294070e2e096" + integrity sha512-EX4oNDwcXSivPrw2qKH2LB5PoFxEvgtv2JgwW0bU858HoLQ+kutSvjLMUqBd0PeJYEinLWhoI9Ol0eYMqj/wNQ== jju@~1.4.0: version "1.4.0" @@ -4760,16 +4766,16 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.30.6" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.30.6.tgz#798dd6a7fe338025166b8b138bb183d6b8714b75" - integrity sha512-YkcnRVl0N99xZ7eaXE7KlH/4cPTCn6BGuk9KxINEdCMFN3yita2vGBizApy97ZOHgghy8tb589gQ3xvLMFIO4w== + version "5.33.3" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.33.3.tgz#0a007e9927117958acf2ccfaca0f76f3fed801e2" + integrity sha512-saUxedVDCa/8p3w445at66vLmYKretzYsX7+elMJ5ROWGzU+1aTRm3EmKELTaho1ue7BlwJB5BxLJROy43+LtQ== dependencies: "@nodelib/fs.walk" "1.2.8" "@snyk/github-codeowners" "1.1.0" easy-table "1.2.0" enhanced-resolve "^5.17.1" fast-glob "^3.3.2" - jiti "^1.21.6" + jiti "^2.3.3" js-yaml "^4.1.0" minimist "^1.2.8" picocolors "^1.0.0" @@ -5213,9 +5219,9 @@ object.values@^1.2.0: es-object-atoms "^1.0.0" oidc-client-ts@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/oidc-client-ts/-/oidc-client-ts-3.0.1.tgz#be264fb87c89f74f73863646431c32cd06f5ceb7" - integrity sha512-xX8unZNtmtw3sOz4FPSqDhkLFnxCDsdo2qhFEH2opgWnF/iXMFoYdBQzkwCxAZVgt3FT3DnuBY3k80EZHT0RYg== + version "3.1.0" + resolved "https://registry.yarnpkg.com/oidc-client-ts/-/oidc-client-ts-3.1.0.tgz#28d3254951a1c64cc9780042c61492a71b2240dd" + integrity sha512-IDopEXjiwjkmJLYZo6BTlvwOtnlSniWZkKZoXforC/oLZHC9wkIxd25Kwtmo5yKFMMVcsp3JY6bhcNJqdYk8+g== dependencies: jwt-decode "^4.0.0" @@ -5608,14 +5614,14 @@ regexp-tree@^0.1.27: integrity sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA== regexp.prototype.flags@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" - integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw== + version "1.5.3" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz#b3ae40b1d2499b8350ab2c3fe6ef3845d3a96f42" + integrity sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ== dependencies: - call-bind "^1.0.6" + call-bind "^1.0.7" define-properties "^1.2.1" es-errors "^1.3.0" - set-function-name "^2.0.1" + set-function-name "^2.0.2" regexparam@^3.0.0: version "3.0.0" @@ -5822,7 +5828,7 @@ set-function-length@^1.2.1: gopd "^1.0.1" has-property-descriptors "^1.0.2" -set-function-name@^2.0.1: +set-function-name@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== @@ -6161,9 +6167,9 @@ symbol-tree@^3.2.4: integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== synckit@^0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.9.1.tgz#febbfbb6649979450131f64735aa3f6c14575c88" - integrity sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A== + version "0.9.2" + resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.9.2.tgz#a3a935eca7922d48b9e7d6c61822ee6c3ae4ec62" + integrity sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw== dependencies: "@pkgr/core" "^0.1.0" tslib "^2.6.2" @@ -6278,9 +6284,9 @@ tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1: integrity sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ== tslib@^2.6.2: - version "2.7.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01" - integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA== + version "2.8.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.0.tgz#d124c86c3c05a40a91e6fdea4021bd31d377971b" + integrity sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA== type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" From 86c190fa0d743f7dbd2fa0c08643a032cdda2092 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 15:21:56 +0100 Subject: [PATCH 474/595] Update dependency @types/node to v18.19.55 (#4455) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index c369aa24915..fa71854f958 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1796,9 +1796,9 @@ undici-types "~5.26.4" "@types/node@18": - version "18.19.54" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.54.tgz#f1048dc083f81b242640f04f18fb3e4ccf13fcdb" - integrity sha512-+BRgt0G5gYjTvdLac9sIeE0iZcJxi4Jc4PV5EUzqi+88jmQLr+fRZdv2tCTV7IHKSGxM6SaLoOXQWWUiLUItMw== + version "18.19.55" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.55.tgz#29c3f8e1485a92ec96636957ddec55aabc6e856e" + integrity sha512-zzw5Vw52205Zr/nmErSEkN5FLqXPuKX/k5d1D7RKHATGqU7y6YfX9QxZraUzUrFGqH6XzOzG196BC35ltJC4Cw== dependencies: undici-types "~5.26.4" From 3d51e31da864a29b27d76c254fb589ebcbac993f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 14:27:13 +0000 Subject: [PATCH 475/595] Update babel monorepo (#4454) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 1367 ++++++++++++++++++++++++++--------------------------- 1 file changed, 681 insertions(+), 686 deletions(-) diff --git a/yarn.lock b/yarn.lock index fa71854f958..cc903cd9407 100644 --- a/yarn.lock +++ b/yarn.lock @@ -23,9 +23,9 @@ "@jridgewell/trace-mapping" "^0.3.24" "@babel/cli@^7.12.10": - version "7.25.6" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.25.6.tgz#bc35561adc78ade43ac9c09a690768493ab9ed95" - integrity sha512-Z+Doemr4VtvSD2SNHTrkiFZ1LX+JI6tyRXAAOb4N9khIuPyoEPmTPJarPm8ljJV1D6bnMQjyHMWTT9NeKbQuXA== + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.25.7.tgz#f76693c7cfb93c99844d3ed87ed4f291383ef1bf" + integrity sha512-vQw4QjrqjLSuL0Tt3gfVXbxEHOfsCcHN8tKyTclpSMYLq3Bp0BTzWYZfMKBs3PQ+to8q3BnumBIAsMdOqDJ6nw== dependencies: "@jridgewell/trace-mapping" "^0.3.25" commander "^6.2.0" @@ -46,26 +46,34 @@ "@babel/highlight" "^7.24.7" picocolors "^1.0.0" -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.2", "@babel/compat-data@^7.25.4": - version "7.25.4" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.4.tgz#7d2a80ce229890edcf4cc259d4d696cb4dae2fcb" - integrity sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ== +"@babel/code-frame@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.25.7.tgz#438f2c524071531d643c6f0188e1e28f130cebc7" + integrity sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g== + dependencies: + "@babel/highlight" "^7.25.7" + picocolors "^1.0.0" + +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.7", "@babel/compat-data@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.8.tgz#0376e83df5ab0eb0da18885c0140041f0747a402" + integrity sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA== "@babel/core@^7.0.0", "@babel/core@^7.11.6", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.23.9": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.2.tgz#ed8eec275118d7613e77a352894cd12ded8eba77" - integrity sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA== + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.8.tgz#a57137d2a51bbcffcfaeba43cb4dd33ae3e0e1c6" + integrity sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.25.0" - "@babel/helper-compilation-targets" "^7.25.2" - "@babel/helper-module-transforms" "^7.25.2" - "@babel/helpers" "^7.25.0" - "@babel/parser" "^7.25.0" - "@babel/template" "^7.25.0" - "@babel/traverse" "^7.25.2" - "@babel/types" "^7.25.2" + "@babel/code-frame" "^7.25.7" + "@babel/generator" "^7.25.7" + "@babel/helper-compilation-targets" "^7.25.7" + "@babel/helper-module-transforms" "^7.25.7" + "@babel/helpers" "^7.25.7" + "@babel/parser" "^7.25.8" + "@babel/template" "^7.25.7" + "@babel/traverse" "^7.25.7" + "@babel/types" "^7.25.8" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -73,30 +81,30 @@ semver "^6.3.1" "@babel/eslint-parser@^7.12.10": - version "7.25.1" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.25.1.tgz#469cee4bd18a88ff3edbdfbd227bd20e82aa9b82" - integrity sha512-Y956ghgTT4j7rKesabkh5WeqgSFZVFwaPR0IWFm7KFHFmmJ4afbG49SmfW4S+GyRPx0Dy5jxEWA5t0rpxfElWg== + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.25.8.tgz#0119dec46be547d7a339978dedb9d29e517c2443" + integrity sha512-Po3VLMN7fJtv0nsOjBDSbO1J71UhzShE9MuOSkWEV9IZQXzhZklYtzKZ8ZD/Ij3a0JBv1AG3Ny2L3jvAHQVOGg== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" semver "^6.3.1" "@babel/eslint-plugin@^7.12.10": - version "7.25.1" - resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.25.1.tgz#fc7fff590ab566c9d643fdecf346b69064157ef9" - integrity sha512-jF04YOsrCbEeQk4s+FwsuRddwBiAHooMDG9/nrV83HiYQwEuQppbXTeXyydxCoH5oEWmVBI51wHuZrcIXMkPfw== + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.25.7.tgz#0ccb07e9a71bfb0fc345100a929f9028d4660627" + integrity sha512-cwa16ALyUdac3n3VC3R+isKENyjLsJmFY6+cX0wuLsKlwB50Jv/xwqyH9tV8EEH0IUCAL5Y0Y1gP0HuCEDDDeQ== dependencies: eslint-rule-composer "^0.3.0" -"@babel/generator@^7.25.0", "@babel/generator@^7.25.6": - version "7.25.6" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.6.tgz#0df1ad8cb32fe4d2b01d8bf437f153d19342a87c" - integrity sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw== +"@babel/generator@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.7.tgz#de86acbeb975a3e11ee92dd52223e6b03b479c56" + integrity sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA== dependencies: - "@babel/types" "^7.25.6" + "@babel/types" "^7.25.7" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" - jsesc "^2.5.1" + jsesc "^3.0.2" "@babel/generator@^7.7.2": version "7.24.7" @@ -108,52 +116,52 @@ "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" -"@babel/helper-annotate-as-pure@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz#5373c7bc8366b12a033b4be1ac13a206c6656aab" - integrity sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg== +"@babel/helper-annotate-as-pure@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.7.tgz#63f02dbfa1f7cb75a9bdb832f300582f30bb8972" + integrity sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA== dependencies: - "@babel/types" "^7.24.7" + "@babel/types" "^7.25.7" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.7.tgz#37d66feb012024f2422b762b9b2a7cfe27c7fba3" - integrity sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.7.tgz#d721650c1f595371e0a23ee816f1c3c488c0d622" + integrity sha512-12xfNeKNH7jubQNm7PAkzlLwEmCs1tfuX3UjIw6vP6QXi+leKh6+LyC/+Ed4EIQermwd58wsyh070yjDHFlNGg== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/traverse" "^7.25.7" + "@babel/types" "^7.25.7" -"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.7", "@babel/helper-compilation-targets@^7.24.8", "@babel/helper-compilation-targets@^7.25.2": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz#e1d9410a90974a3a5a66e84ff55ef62e3c02d06c" - integrity sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw== +"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz#11260ac3322dda0ef53edfae6e97b961449f5fa4" + integrity sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A== dependencies: - "@babel/compat-data" "^7.25.2" - "@babel/helper-validator-option" "^7.24.8" - browserslist "^4.23.1" + "@babel/compat-data" "^7.25.7" + "@babel/helper-validator-option" "^7.25.7" + browserslist "^4.24.0" lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.24.7", "@babel/helper-create-class-features-plugin@^7.25.4": - version "7.25.4" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.4.tgz#57eaf1af38be4224a9d9dd01ddde05b741f50e14" - integrity sha512-ro/bFs3/84MDgDmMwbcHgDa8/E6J3QKNTk4xJJnVeFtGE+tL0K26E3pNxhYz2b67fJpt7Aphw5XcploKXuCvCQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-member-expression-to-functions" "^7.24.8" - "@babel/helper-optimise-call-expression" "^7.24.7" - "@babel/helper-replace-supers" "^7.25.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" - "@babel/traverse" "^7.25.4" +"@babel/helper-create-class-features-plugin@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.7.tgz#5d65074c76cae75607421c00d6bd517fe1892d6b" + integrity sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.25.7" + "@babel/helper-member-expression-to-functions" "^7.25.7" + "@babel/helper-optimise-call-expression" "^7.25.7" + "@babel/helper-replace-supers" "^7.25.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" + "@babel/traverse" "^7.25.7" semver "^6.3.1" -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.24.7", "@babel/helper-create-regexp-features-plugin@^7.25.0", "@babel/helper-create-regexp-features-plugin@^7.25.2": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.2.tgz#24c75974ed74183797ffd5f134169316cd1808d9" - integrity sha512-+wqVGP+DFmqwFD3EH6TMTfUNeqDehV3E/dl+Sd54eaXqm17tEUNbEIn4sVivVowbvUpOtIGxdo3GoXyDH9N/9g== +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.7.tgz#dcb464f0e2cdfe0c25cc2a0a59c37ab940ce894e" + integrity sha512-byHhumTj/X47wJ6C6eLpK7wW/WBEcnUeb7D0FNc/jFQnQVw7DOso3Zz5u9x/zLrFVkHa89ZGDbkAa1D54NdrCQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - regexpu-core "^5.3.1" + "@babel/helper-annotate-as-pure" "^7.25.7" + regexpu-core "^6.1.1" semver "^6.3.1" "@babel/helper-define-polyfill-provider@^0.6.2": @@ -167,109 +175,119 @@ lodash.debounce "^4.0.8" resolve "^1.14.2" -"@babel/helper-member-expression-to-functions@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.8.tgz#6155e079c913357d24a4c20480db7c712a5c3fb6" - integrity sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA== +"@babel/helper-member-expression-to-functions@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.7.tgz#541a33b071f0355a63a0fa4bdf9ac360116b8574" + integrity sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA== dependencies: - "@babel/traverse" "^7.24.8" - "@babel/types" "^7.24.8" + "@babel/traverse" "^7.25.7" + "@babel/types" "^7.25.7" -"@babel/helper-module-imports@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz#f2f980392de5b84c3328fc71d38bd81bbb83042b" - integrity sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA== +"@babel/helper-module-imports@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz#dba00d9523539152906ba49263e36d7261040472" + integrity sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/traverse" "^7.25.7" + "@babel/types" "^7.25.7" -"@babel/helper-module-transforms@^7.24.7", "@babel/helper-module-transforms@^7.24.8", "@babel/helper-module-transforms@^7.25.0", "@babel/helper-module-transforms@^7.25.2": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz#ee713c29768100f2776edf04d4eb23b8d27a66e6" - integrity sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ== +"@babel/helper-module-transforms@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz#2ac9372c5e001b19bc62f1fe7d96a18cb0901d1a" + integrity sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ== dependencies: - "@babel/helper-module-imports" "^7.24.7" - "@babel/helper-simple-access" "^7.24.7" - "@babel/helper-validator-identifier" "^7.24.7" - "@babel/traverse" "^7.25.2" + "@babel/helper-module-imports" "^7.25.7" + "@babel/helper-simple-access" "^7.25.7" + "@babel/helper-validator-identifier" "^7.25.7" + "@babel/traverse" "^7.25.7" -"@babel/helper-optimise-call-expression@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.7.tgz#8b0a0456c92f6b323d27cfd00d1d664e76692a0f" - integrity sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A== +"@babel/helper-optimise-call-expression@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.7.tgz#1de1b99688e987af723eed44fa7fc0ee7b97d77a" + integrity sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng== dependencies: - "@babel/types" "^7.24.7" + "@babel/types" "^7.25.7" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz#8ec5b21812d992e1ef88a9b068260537b6f0e36c" + integrity sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw== -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.24.8", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": +"@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.8.0": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz#94ee67e8ec0e5d44ea7baeb51e571bd26af07878" integrity sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg== -"@babel/helper-remap-async-to-generator@^7.24.7", "@babel/helper-remap-async-to-generator@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.0.tgz#d2f0fbba059a42d68e5e378feaf181ef6055365e" - integrity sha512-NhavI2eWEIz/H9dbrG0TuOicDhNexze43i5z7lEqwYm0WEZVTwnPpA0EafUTP7+6/W79HWIP2cTe3Z5NiSTVpw== +"@babel/helper-remap-async-to-generator@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.7.tgz#9efdc39df5f489bcd15533c912b6c723a0a65021" + integrity sha512-kRGE89hLnPfcz6fTrlNU+uhgcwv0mBE4Gv3P9Ke9kLVJYpi4AMVVEElXvB5CabrPZW4nCM8P8UyyjrzCM0O2sw== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-wrap-function" "^7.25.0" - "@babel/traverse" "^7.25.0" + "@babel/helper-annotate-as-pure" "^7.25.7" + "@babel/helper-wrap-function" "^7.25.7" + "@babel/traverse" "^7.25.7" -"@babel/helper-replace-supers@^7.24.7", "@babel/helper-replace-supers@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.0.tgz#ff44deac1c9f619523fe2ca1fd650773792000a9" - integrity sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg== +"@babel/helper-replace-supers@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.7.tgz#38cfda3b6e990879c71d08d0fef9236b62bd75f5" + integrity sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw== dependencies: - "@babel/helper-member-expression-to-functions" "^7.24.8" - "@babel/helper-optimise-call-expression" "^7.24.7" - "@babel/traverse" "^7.25.0" + "@babel/helper-member-expression-to-functions" "^7.25.7" + "@babel/helper-optimise-call-expression" "^7.25.7" + "@babel/traverse" "^7.25.7" -"@babel/helper-simple-access@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz#bcade8da3aec8ed16b9c4953b74e506b51b5edb3" - integrity sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg== +"@babel/helper-simple-access@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz#5eb9f6a60c5d6b2e0f76057004f8dacbddfae1c0" + integrity sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/traverse" "^7.25.7" + "@babel/types" "^7.25.7" -"@babel/helper-skip-transparent-expression-wrappers@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.7.tgz#5f8fa83b69ed5c27adc56044f8be2b3ea96669d9" - integrity sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ== +"@babel/helper-skip-transparent-expression-wrappers@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.7.tgz#382831c91038b1a6d32643f5f49505b8442cb87c" + integrity sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/traverse" "^7.25.7" + "@babel/types" "^7.25.7" -"@babel/helper-string-parser@^7.24.7", "@babel/helper-string-parser@^7.24.8": +"@babel/helper-string-parser@^7.24.7": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ== -"@babel/helper-validator-identifier@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" - integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== +"@babel/helper-string-parser@^7.24.8", "@babel/helper-string-parser@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz#d50e8d37b1176207b4fe9acedec386c565a44a54" + integrity sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g== -"@babel/helper-validator-option@^7.24.7", "@babel/helper-validator-option@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz#3725cdeea8b480e86d34df15304806a06975e33d" - integrity sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q== +"@babel/helper-validator-identifier@^7.24.7", "@babel/helper-validator-identifier@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz#77b7f60c40b15c97df735b38a66ba1d7c3e93da5" + integrity sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg== + +"@babel/helper-validator-option@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz#97d1d684448228b30b506d90cace495d6f492729" + integrity sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ== -"@babel/helper-wrap-function@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.0.tgz#dab12f0f593d6ca48c0062c28bcfb14ebe812f81" - integrity sha512-s6Q1ebqutSiZnEjaofc/UKDyC4SbzV5n5SrA2Gq8UawLycr3i04f1dX4OzoQVnexm6aOCh37SQNYlJ/8Ku+PMQ== +"@babel/helper-wrap-function@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.7.tgz#9f6021dd1c4fdf4ad515c809967fc4bac9a70fe7" + integrity sha512-MA0roW3JF2bD1ptAaJnvcabsVlNQShUaThyJbCDD4bCp8NEgiFvpoqRI2YS22hHlc2thjO/fTg2ShLMC3jygAg== dependencies: - "@babel/template" "^7.25.0" - "@babel/traverse" "^7.25.0" - "@babel/types" "^7.25.0" + "@babel/template" "^7.25.7" + "@babel/traverse" "^7.25.7" + "@babel/types" "^7.25.7" -"@babel/helpers@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.0.tgz#e69beb7841cb93a6505531ede34f34e6a073650a" - integrity sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw== +"@babel/helpers@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.7.tgz#091b52cb697a171fe0136ab62e54e407211f09c2" + integrity sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA== dependencies: - "@babel/template" "^7.25.0" - "@babel/types" "^7.25.0" + "@babel/template" "^7.25.7" + "@babel/types" "^7.25.7" "@babel/highlight@^7.24.7": version "7.24.7" @@ -281,6 +299,16 @@ js-tokens "^4.0.0" picocolors "^1.0.0" +"@babel/highlight@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.25.7.tgz#20383b5f442aa606e7b5e3043b0b1aafe9f37de5" + integrity sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw== + dependencies: + "@babel/helper-validator-identifier" "^7.25.7" + chalk "^2.4.2" + js-tokens "^4.0.0" + picocolors "^1.0.0" + "@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" @@ -293,51 +321,51 @@ dependencies: "@babel/types" "^7.25.2" -"@babel/parser@^7.25.0", "@babel/parser@^7.25.6": - version "7.25.6" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.6.tgz#85660c5ef388cbbf6e3d2a694ee97a38f18afe2f" - integrity sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q== +"@babel/parser@^7.25.7", "@babel/parser@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.8.tgz#f6aaf38e80c36129460c1657c0762db584c9d5e2" + integrity sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ== dependencies: - "@babel/types" "^7.25.6" + "@babel/types" "^7.25.8" -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.3": - version "7.25.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.3.tgz#dca427b45a6c0f5c095a1c639dfe2476a3daba7f" - integrity sha512-wUrcsxZg6rqBXG05HG1FPYgsP6EvwF4WpBbxIpWIIYnH8wG0gzx3yZY3dtEHas4sTAOGkbTsc9EGPxwff8lRoA== +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.7.tgz#93969ac50ef4d68b2504b01b758af714e4cbdd64" + integrity sha512-UV9Lg53zyebzD1DwQoT9mzkEKa922LNUp5YkTJ6Uta0RbyXaQNUgcvSt7qIu1PpPzVb6rd10OVNTzkyBGeVmxQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/traverse" "^7.25.3" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/traverse" "^7.25.7" -"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.0.tgz#cd0c583e01369ef51676bdb3d7b603e17d2b3f73" - integrity sha512-Bm4bH2qsX880b/3ziJ8KD711LT7z4u8CFudmjqle65AZj/HNUFhEf90dqYv6O86buWvSBmeQDjv0Tn2aF/bIBA== +"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.7.tgz#a338d611adb9dcd599b8b1efa200c88ebeffe046" + integrity sha512-GDDWeVLNxRIkQTnJn2pDOM1pkCgYdSqPeT1a9vh9yIqu2uzzgw1zcqEb+IJOhy+dTBMlNdThrDIksr2o09qrrQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.0.tgz#749bde80356b295390954643de7635e0dffabe73" - integrity sha512-lXwdNZtTmeVOOFtwM/WDe7yg1PL8sYhRk/XH0FzbR2HDQ0xC+EnQ/JHeoMYSavtU115tnUk0q9CDyq8si+LMAA== +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.7.tgz#c5f755e911dfac7ef6957300c0f9c4a8c18c06f4" + integrity sha512-wxyWg2RYaSUYgmd9MR0FyRGyeOMQE/Uzr1wzd/g5cf5bwi9A4v6HFdDm7y1MgDtod/fLOSTZY6jDgV0xU9d5bA== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.7.tgz#e4eabdd5109acc399b38d7999b2ef66fc2022f89" - integrity sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.7.tgz#3b7ea04492ded990978b6deaa1dfca120ad4455a" + integrity sha512-Xwg6tZpLxc4iQjorYsyGMyfJE7nP5MV8t/Ka58BgiA7Jw0fRqQNcANlLfdJ/yvBt9z9LD2We+BEkT7vLqZRWng== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" - "@babel/plugin-transform-optional-chaining" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" + "@babel/plugin-transform-optional-chaining" "^7.25.7" -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.0.tgz#3a82a70e7cb7294ad2559465ebcb871dfbf078fb" - integrity sha512-tggFrk1AIShG/RUQbEwt2Tr/E+ObkfwrPjR6BjbRvsx24+PSjK8zrq0GWPNCjo8qpRx4DuJzlcvWJqlm+0h3kw== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.7.tgz#9622b1d597a703aa3a921e6f58c9c2d9a028d2c5" + integrity sha512-UVATLMidXrnH+GMUIuxq55nejlj02HP7F5ETyBONzP6G87fPBogG4CH6kxrSrdIuAjdwNO9VzyaYsrZPscWUrw== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/traverse" "^7.25.0" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/traverse" "^7.25.7" "@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": version "7.21.0-placeholder-for-preset-env.2" @@ -358,20 +386,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": +"@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" -"@babel/plugin-syntax-class-static-block@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" - integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" @@ -379,28 +400,21 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-export-namespace-from@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" - integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== +"@babel/plugin-syntax-import-assertions@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.25.7.tgz#8ce248f9f4ed4b7ed4cb2e0eb4ed9efd9f52921f" + integrity sha512-ZvZQRmME0zfJnDQnVBKYzHxXT7lYBB3Revz1GuS7oLXWMgqUPX4G+DDbT30ICClht9WKV34QVrZhSw6WdklwZQ== dependencies: - "@babel/helper-plugin-utils" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-syntax-import-assertions@^7.24.7": - version "7.25.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.25.6.tgz#bb918905c58711b86f9710d74a3744b6c56573b5" - integrity sha512-aABl0jHw9bZ2karQ/uUD6XP4u0SG22SJrOHFoL6XB1R7dTovOP4TzTlsxOYC5yQ1pdscVK2JTUnF6QL3ARoAiQ== +"@babel/plugin-syntax-import-attributes@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.7.tgz#d78dd0499d30df19a598e63ab895e21b909bc43f" + integrity sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-syntax-import-attributes@^7.24.7": - version "7.25.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.6.tgz#6d4c78f042db0e82fd6436cd65fec5dc78ad2bde" - integrity sha512-sXaDXaJN9SNLymBdlWFA+bjzBhFD617ZaFiY13dGt7TVslVvVgA6fkZOP7Ki3IGElC45lwHdOTrCtKZGVAWeLQ== - dependencies: - "@babel/helper-plugin-utils" "^7.24.8" - -"@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.8.3": +"@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== @@ -414,14 +428,21 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.24.7", "@babel/plugin-syntax-jsx@^7.7.2": +"@babel/plugin-syntax-jsx@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.7.tgz#5352d398d11ea5e7ef330c854dea1dae0bf18165" + integrity sha512-ruZOnKO+ajVL/MVx+PwNBPOkrnXTXoWMtte1MBpegfCArhqOe3Bj52avVj1huLLxNKYKXYaSxZ2F+woK1ekXfw== + dependencies: + "@babel/helper-plugin-utils" "^7.25.7" + +"@babel/plugin-syntax-jsx@^7.7.2": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.7.tgz#39a1fa4a7e3d3d7f34e2acc6be585b718d30e02d" integrity sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ== dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": +"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== @@ -435,7 +456,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": +"@babel/plugin-syntax-numeric-separator@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== @@ -463,21 +484,21 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-private-property-in-object@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" - integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3": +"@babel/plugin-syntax-top-level-await@^7.8.3": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.24.7", "@babel/plugin-syntax-typescript@^7.7.2": +"@babel/plugin-syntax-typescript@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.7.tgz#bfc05b0cc31ebd8af09964650cee723bb228108b" + integrity sha512-rR+5FDjpCHqqZN2bzZm18bVYGaejGq5ZkpVCJLXor/+zlSrSoc4KWcHI0URVWjl/68Dyr1uwZUz/1njycEAv9g== + dependencies: + "@babel/helper-plugin-utils" "^7.25.7" + +"@babel/plugin-syntax-typescript@^7.7.2": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.7.tgz#58d458271b4d3b6bb27ee6ac9525acbb259bad1c" integrity sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA== @@ -492,517 +513,482 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-arrow-functions@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.7.tgz#4f6886c11e423bd69f3ce51dbf42424a5f275514" - integrity sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ== +"@babel/plugin-transform-arrow-functions@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.7.tgz#1b9ed22e6890a0e9ff470371c73b8c749bcec386" + integrity sha512-EJN2mKxDwfOUCPxMO6MUI58RN3ganiRAG/MS/S3HfB6QFNjroAMelQo/gybyYq97WerCBAZoyrAoW8Tzdq2jWg== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-async-generator-functions@^7.25.4": - version "7.25.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.4.tgz#2afd4e639e2d055776c9f091b6c0c180ed8cf083" - integrity sha512-jz8cV2XDDTqjKPwVPJBIjORVEmSGYhdRa8e5k5+vN+uwcjSrSxUaebBRa4ko1jqNF2uxyg8G6XYk30Jv285xzg== +"@babel/plugin-transform-async-generator-functions@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.8.tgz#3331de02f52cc1f2c75b396bec52188c85b0b1ec" + integrity sha512-9ypqkozyzpG+HxlH4o4gdctalFGIjjdufzo7I2XPda0iBnZ6a+FO0rIEQcdSPXp02CkvGsII1exJhmROPQd5oA== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-remap-async-to-generator" "^7.25.0" - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/traverse" "^7.25.4" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-remap-async-to-generator" "^7.25.7" + "@babel/traverse" "^7.25.7" -"@babel/plugin-transform-async-to-generator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.7.tgz#72a3af6c451d575842a7e9b5a02863414355bdcc" - integrity sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA== +"@babel/plugin-transform-async-to-generator@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.7.tgz#a44c7323f8d4285a6c568dd43c5c361d6367ec52" + integrity sha512-ZUCjAavsh5CESCmi/xCpX1qcCaAglzs/7tmuvoFnJgA1dM7gQplsguljoTg+Ru8WENpX89cQyAtWoaE0I3X3Pg== dependencies: - "@babel/helper-module-imports" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-remap-async-to-generator" "^7.24.7" + "@babel/helper-module-imports" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-remap-async-to-generator" "^7.25.7" -"@babel/plugin-transform-block-scoped-functions@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.7.tgz#a4251d98ea0c0f399dafe1a35801eaba455bbf1f" - integrity sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ== +"@babel/plugin-transform-block-scoped-functions@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.7.tgz#e0b8843d5571719a2f1bf7e284117a3379fcc17c" + integrity sha512-xHttvIM9fvqW+0a3tZlYcZYSBpSWzGBFIt/sYG3tcdSzBB8ZeVgz2gBP7Df+sM0N1850jrviYSSeUuc+135dmQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-block-scoping@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.0.tgz#23a6ed92e6b006d26b1869b1c91d1b917c2ea2ac" - integrity sha512-yBQjYoOjXlFv9nlXb3f1casSHOZkWr29NX+zChVanLg5Nc157CrbEX9D7hxxtTpuFy7Q0YzmmWfJxzvps4kXrQ== +"@babel/plugin-transform-block-scoping@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.7.tgz#6dab95e98adf780ceef1b1c3ab0e55cd20dd410a" + integrity sha512-ZEPJSkVZaeTFG/m2PARwLZQ+OG0vFIhPlKHK/JdIMy8DbRJ/htz6LRrTFtdzxi9EHmcwbNPAKDnadpNSIW+Aow== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-class-properties@^7.12.1", "@babel/plugin-transform-class-properties@^7.25.4": - version "7.25.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.4.tgz#bae7dbfcdcc2e8667355cd1fb5eda298f05189fd" - integrity sha512-nZeZHyCWPfjkdU5pA/uHiTaDAFUEqkpzf1YoQT2NeSynCGYq9rxfyI3XpQbfx/a0hSnFH6TGlEXvae5Vi7GD8g== +"@babel/plugin-transform-class-properties@^7.12.1", "@babel/plugin-transform-class-properties@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.7.tgz#a389cfca7a10ac80e3ff4c75fca08bd097ad1523" + integrity sha512-mhyfEW4gufjIqYFo9krXHJ3ElbFLIze5IDp+wQTxoPd+mwFb1NxatNAwmv8Q8Iuxv7Zc+q8EkiMQwc9IhyGf4g== dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.4" - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-create-class-features-plugin" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-class-static-block@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.7.tgz#c82027ebb7010bc33c116d4b5044fbbf8c05484d" - integrity sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ== +"@babel/plugin-transform-class-static-block@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.25.8.tgz#a8af22028920fe404668031eceb4c3aadccb5262" + integrity sha512-e82gl3TCorath6YLf9xUwFehVvjvfqFhdOo4+0iVIVju+6XOi5XHkqB3P2AXnSwoeTX0HBoXq5gJFtvotJzFnQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - -"@babel/plugin-transform-classes@^7.25.4": - version "7.25.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.4.tgz#d29dbb6a72d79f359952ad0b66d88518d65ef89a" - integrity sha512-oexUfaQle2pF/b6E0dwsxQtAol9TLSO88kQvym6HHBWFliV2lGdrPieX+WgMRLSJDVzdYywk7jXbLPuO2KLTLg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-compilation-targets" "^7.25.2" - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-replace-supers" "^7.25.0" - "@babel/traverse" "^7.25.4" - globals "^11.1.0" + "@babel/helper-create-class-features-plugin" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-computed-properties@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.7.tgz#4cab3214e80bc71fae3853238d13d097b004c707" - integrity sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ== +"@babel/plugin-transform-classes@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.7.tgz#5103206cf80d02283bbbd044509ea3b65d0906bb" + integrity sha512-9j9rnl+YCQY0IGoeipXvnk3niWicIB6kCsWRGLwX241qSXpbA4MKxtp/EdvFxsc4zI5vqfLxzOd0twIJ7I99zg== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/template" "^7.24.7" + "@babel/helper-annotate-as-pure" "^7.25.7" + "@babel/helper-compilation-targets" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-replace-supers" "^7.25.7" + "@babel/traverse" "^7.25.7" + globals "^11.1.0" -"@babel/plugin-transform-destructuring@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.8.tgz#c828e814dbe42a2718a838c2a2e16a408e055550" - integrity sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ== +"@babel/plugin-transform-computed-properties@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.7.tgz#7f621f0aa1354b5348a935ab12e3903842466f65" + integrity sha512-QIv+imtM+EtNxg/XBKL3hiWjgdLjMOmZ+XzQwSgmBfKbfxUjBzGgVPklUuE55eq5/uVoh8gg3dqlrwR/jw3ZeA== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/template" "^7.25.7" -"@babel/plugin-transform-dotall-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.7.tgz#5f8bf8a680f2116a7207e16288a5f974ad47a7a0" - integrity sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw== +"@babel/plugin-transform-destructuring@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.7.tgz#f6f26a9feefb5aa41fd45b6f5838901b5333d560" + integrity sha512-xKcfLTlJYUczdaM1+epcdh1UGewJqr9zATgrNHcLBcV2QmfvPPEixo/sK/syql9cEmbr7ulu5HMFG5vbbt/sEA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-duplicate-keys@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.7.tgz#dd20102897c9a2324e5adfffb67ff3610359a8ee" - integrity sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw== +"@babel/plugin-transform-dotall-regex@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.7.tgz#9d775c4a3ff1aea64045300fcd4309b4a610ef02" + integrity sha512-kXzXMMRzAtJdDEgQBLF4oaiT6ZCU3oWHgpARnTKDAqPkDJ+bs3NrZb310YYevR5QlRo3Kn7dzzIdHbZm1VzJdQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.0.tgz#809af7e3339466b49c034c683964ee8afb3e2604" - integrity sha512-YLpb4LlYSc3sCUa35un84poXoraOiQucUTTu8X1j18JV+gNa8E0nyUf/CjZ171IRGr4jEguF+vzJU66QZhn29g== +"@babel/plugin-transform-duplicate-keys@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.7.tgz#fbba7d1155eab76bd4f2a038cbd5d65883bd7a93" + integrity sha512-by+v2CjoL3aMnWDOyCIg+yxU9KXSRa9tN6MbqggH5xvymmr9p4AMjYkNlQy4brMceBnUyHZ9G8RnpvT8wP7Cfg== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.0" - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-dynamic-import@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.7.tgz#4d8b95e3bae2b037673091aa09cd33fecd6419f4" - integrity sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg== +"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.7.tgz#102b31608dcc22c08fbca1894e104686029dc141" + integrity sha512-HvS6JF66xSS5rNKXLqkk7L9c/jZ/cdIVIcoPVrnl8IsVpLggTjXs8OWekbLHs/VtYDDh5WXnQyeE3PPUGm22MA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/helper-create-regexp-features-plugin" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-exponentiation-operator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.7.tgz#b629ee22645f412024297d5245bce425c31f9b0d" - integrity sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ== +"@babel/plugin-transform-dynamic-import@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.8.tgz#f1edbe75b248cf44c70c8ca8ed3818a668753aaa" + integrity sha512-gznWY+mr4ZQL/EWPcbBQUP3BXS5FwZp8RUOw06BaRn8tQLzN4XLIxXejpHN9Qo8x8jjBmAAKp6FoS51AgkSA/A== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-export-namespace-from@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.7.tgz#176d52d8d8ed516aeae7013ee9556d540c53f197" - integrity sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA== +"@babel/plugin-transform-exponentiation-operator@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.7.tgz#5961a3a23a398faccd6cddb34a2182807d75fb5f" + integrity sha512-yjqtpstPfZ0h/y40fAXRv2snciYr0OAoMXY/0ClC7tm4C/nG5NJKmIItlaYlLbIVAWNfrYuy9dq1bE0SbX0PEg== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-for-of@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.7.tgz#f25b33f72df1d8be76399e1b8f3f9d366eb5bc70" - integrity sha512-wo9ogrDG1ITTTBsy46oGiN1dS9A7MROBTcYsfS8DtsImMkHk9JXJ3EWQM6X2SUw4x80uGPlwj0o00Uoc6nEE3g== +"@babel/plugin-transform-export-namespace-from@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.8.tgz#d1988c3019a380b417e0516418b02804d3858145" + integrity sha512-sPtYrduWINTQTW7FtOy99VCTWp4H23UX7vYcut7S4CIMEXU+54zKX9uCoGkLsWXteyaMXzVHgzWbLfQ1w4GZgw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-function-name@^7.25.1": - version "7.25.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.1.tgz#b85e773097526c1a4fc4ba27322748643f26fc37" - integrity sha512-TVVJVdW9RKMNgJJlLtHsKDTydjZAbwIsn6ySBPQaEAUU5+gVvlJt/9nRmqVbsV/IBanRjzWoaAQKLoamWVOUuA== +"@babel/plugin-transform-for-of@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.25.7.tgz#0acfea0f27aa290818b5b48a5a44b3f03fc13669" + integrity sha512-n/TaiBGJxYFWvpJDfsxSj9lEEE44BFM1EPGz4KEiTipTgkoFVVcCmzAL3qA7fdQU96dpo4gGf5HBx/KnDvqiHw== dependencies: - "@babel/helper-compilation-targets" "^7.24.8" - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/traverse" "^7.25.1" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" -"@babel/plugin-transform-json-strings@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.7.tgz#f3e9c37c0a373fee86e36880d45b3664cedaf73a" - integrity sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw== +"@babel/plugin-transform-function-name@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.7.tgz#7e394ccea3693902a8b50ded8b6ae1fa7b8519fd" + integrity sha512-5MCTNcjCMxQ63Tdu9rxyN6cAWurqfrDZ76qvVPrGYdBxIj+EawuuxTu/+dgJlhK5eRz3v1gLwp6XwS8XaX2NiQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/helper-compilation-targets" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/traverse" "^7.25.7" -"@babel/plugin-transform-literals@^7.25.2": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.2.tgz#deb1ad14fc5490b9a65ed830e025bca849d8b5f3" - integrity sha512-HQI+HcTbm9ur3Z2DkO+jgESMAMcYLuN/A7NRw9juzxAezN9AvqvUTnpKP/9kkYANz6u7dFlAyOu44ejuGySlfw== +"@babel/plugin-transform-json-strings@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.8.tgz#6fb3ec383a2ea92652289fdba653e3f9de722694" + integrity sha512-4OMNv7eHTmJ2YXs3tvxAfa/I43di+VcF+M4Wt66c88EAED1RoGaf1D64cL5FkRpNL+Vx9Hds84lksWvd/wMIdA== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-logical-assignment-operators@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.7.tgz#a58fb6eda16c9dc8f9ff1c7b1ba6deb7f4694cb0" - integrity sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw== +"@babel/plugin-transform-literals@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.7.tgz#70cbdc742f2cfdb1a63ea2cbd018d12a60b213c3" + integrity sha512-fwzkLrSu2fESR/cm4t6vqd7ebNIopz2QHGtjoU+dswQo/P6lwAG04Q98lliE3jkz/XqnbGFLnUcE0q0CVUf92w== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-member-expression-literals@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.7.tgz#3b4454fb0e302e18ba4945ba3246acb1248315df" - integrity sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw== +"@babel/plugin-transform-logical-assignment-operators@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.8.tgz#01868ff92daa9e525b4c7902aa51979082a05710" + integrity sha512-f5W0AhSbbI+yY6VakT04jmxdxz+WsID0neG7+kQZbCOjuyJNdL5Nn4WIBm4hRpKnUcO9lP0eipUhFN12JpoH8g== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-modules-amd@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.7.tgz#65090ed493c4a834976a3ca1cde776e6ccff32d7" - integrity sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg== +"@babel/plugin-transform-member-expression-literals@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.7.tgz#0a36c3fbd450cc9e6485c507f005fa3d1bc8fca5" + integrity sha512-Std3kXwpXfRV0QtQy5JJcRpkqP8/wG4XL7hSKZmGlxPlDqmpXtEPRmhF7ztnlTCtUN3eXRUJp+sBEZjaIBVYaw== dependencies: - "@babel/helper-module-transforms" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-modules-commonjs@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.7.tgz#9fd5f7fdadee9085886b183f1ad13d1ab260f4ab" - integrity sha512-iFI8GDxtevHJ/Z22J5xQpVqFLlMNstcLXh994xifFwxxGslr2ZXXLWgtBeLctOD63UFDArdvN6Tg8RFw+aEmjQ== +"@babel/plugin-transform-modules-amd@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.7.tgz#bb4e543b5611f6c8c685a2fd485408713a3adf3d" + integrity sha512-CgselSGCGzjQvKzghCvDTxKHP3iooenLpJDO842ehn5D2G5fJB222ptnDwQho0WjEvg7zyoxb9P+wiYxiJX5yA== dependencies: - "@babel/helper-module-transforms" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-simple-access" "^7.24.7" + "@babel/helper-module-transforms" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-modules-commonjs@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.8.tgz#ab6421e564b717cb475d6fff70ae7f103536ea3c" - integrity sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA== +"@babel/plugin-transform-modules-commonjs@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.7.tgz#173f0c791bb7407c092ce6d77ee90eb3f2d1d2fd" + integrity sha512-L9Gcahi0kKFYXvweO6n0wc3ZG1ChpSFdgG+eV1WYZ3/dGbJK7vvk91FgGgak8YwRgrCuihF8tE/Xg07EkL5COg== dependencies: - "@babel/helper-module-transforms" "^7.24.8" - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-simple-access" "^7.24.7" + "@babel/helper-module-transforms" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-simple-access" "^7.25.7" -"@babel/plugin-transform-modules-systemjs@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.0.tgz#8f46cdc5f9e5af74f3bd019485a6cbe59685ea33" - integrity sha512-YPJfjQPDXxyQWg/0+jHKj1llnY5f/R6a0p/vP4lPymxLu7Lvl4k2WMitqi08yxwQcCVUUdG9LCUj4TNEgAp3Jw== +"@babel/plugin-transform-modules-systemjs@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.7.tgz#8b14d319a177cc9c85ef8b0512afd429d9e2e60b" + integrity sha512-t9jZIvBmOXJsiuyOwhrIGs8dVcD6jDyg2icw1VL4A/g+FnWyJKwUfSSU2nwJuMV2Zqui856El9u+ElB+j9fV1g== dependencies: - "@babel/helper-module-transforms" "^7.25.0" - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-validator-identifier" "^7.24.7" - "@babel/traverse" "^7.25.0" + "@babel/helper-module-transforms" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-validator-identifier" "^7.25.7" + "@babel/traverse" "^7.25.7" -"@babel/plugin-transform-modules-umd@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.7.tgz#edd9f43ec549099620df7df24e7ba13b5c76efc8" - integrity sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A== +"@babel/plugin-transform-modules-umd@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.7.tgz#00ee7a7e124289549381bfb0e24d87fd7f848367" + integrity sha512-p88Jg6QqsaPh+EB7I9GJrIqi1Zt4ZBHUQtjw3z1bzEXcLh6GfPqzZJ6G+G1HBGKUNukT58MnKG7EN7zXQBCODw== dependencies: - "@babel/helper-module-transforms" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-module-transforms" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-named-capturing-groups-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.24.7.tgz#9042e9b856bc6b3688c0c2e4060e9e10b1460923" - integrity sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g== +"@babel/plugin-transform-named-capturing-groups-regex@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.7.tgz#a2f3f6d7f38693b462542951748f0a72a34d196d" + integrity sha512-BtAT9LzCISKG3Dsdw5uso4oV1+v2NlVXIIomKJgQybotJY3OwCwJmkongjHgwGKoZXd0qG5UZ12JUlDQ07W6Ow== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-new-target@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.7.tgz#31ff54c4e0555cc549d5816e4ab39241dfb6ab00" - integrity sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA== +"@babel/plugin-transform-new-target@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.7.tgz#52b2bde523b76c548749f38dc3054f1f45e82bc9" + integrity sha512-CfCS2jDsbcZaVYxRFo2qtavW8SpdzmBXC2LOI4oO0rP+JSRDxxF3inF4GcPsLgfb5FjkhXG5/yR/lxuRs2pySA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-nullish-coalescing-operator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.7.tgz#1de4534c590af9596f53d67f52a92f12db984120" - integrity sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ== +"@babel/plugin-transform-nullish-coalescing-operator@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.8.tgz#befb4900c130bd52fccf2b926314557987f1b552" + integrity sha512-Z7WJJWdQc8yCWgAmjI3hyC+5PXIubH9yRKzkl9ZEG647O9szl9zvmKLzpbItlijBnVhTUf1cpyWBsZ3+2wjWPQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-numeric-separator@^7.12.7", "@babel/plugin-transform-numeric-separator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.7.tgz#bea62b538c80605d8a0fac9b40f48e97efa7de63" - integrity sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA== +"@babel/plugin-transform-numeric-separator@^7.12.7", "@babel/plugin-transform-numeric-separator@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.8.tgz#91e370486371637bd42161052f2602c701386891" + integrity sha512-rm9a5iEFPS4iMIy+/A/PiS0QN0UyjPIeVvbU5EMZFKJZHt8vQnasbpo3T3EFcxzCeYO0BHfc4RqooCZc51J86Q== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-object-rest-spread@^7.12.1", "@babel/plugin-transform-object-rest-spread@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.7.tgz#d13a2b93435aeb8a197e115221cab266ba6e55d6" - integrity sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q== +"@babel/plugin-transform-object-rest-spread@^7.12.1", "@babel/plugin-transform-object-rest-spread@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.8.tgz#0904ac16bcce41df4db12d915d6780f85c7fb04b" + integrity sha512-LkUu0O2hnUKHKE7/zYOIjByMa4VRaV2CD/cdGz0AxU9we+VA3kDDggKEzI0Oz1IroG+6gUP6UmWEHBMWZU316g== dependencies: - "@babel/helper-compilation-targets" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.24.7" + "@babel/helper-compilation-targets" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/plugin-transform-parameters" "^7.25.7" -"@babel/plugin-transform-object-super@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.7.tgz#66eeaff7830bba945dd8989b632a40c04ed625be" - integrity sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg== +"@babel/plugin-transform-object-super@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.7.tgz#582a9cea8cf0a1e02732be5b5a703a38dedf5661" + integrity sha512-pWT6UXCEW3u1t2tcAGtE15ornCBvopHj9Bps9D2DsH15APgNVOTwwczGckX+WkAvBmuoYKRCFa4DK+jM8vh5AA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-replace-supers" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-replace-supers" "^7.25.7" -"@babel/plugin-transform-optional-catch-binding@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.7.tgz#00eabd883d0dd6a60c1c557548785919b6e717b4" - integrity sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA== +"@babel/plugin-transform-optional-catch-binding@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.8.tgz#2649b86a3bb202c6894ec81a6ddf41b94d8f3103" + integrity sha512-EbQYweoMAHOn7iJ9GgZo14ghhb9tTjgOc88xFgYngifx7Z9u580cENCV159M4xDh3q/irbhSjZVpuhpC2gKBbg== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-optional-chaining@^7.24.7", "@babel/plugin-transform-optional-chaining@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.8.tgz#bb02a67b60ff0406085c13d104c99a835cdf365d" - integrity sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw== +"@babel/plugin-transform-optional-chaining@^7.25.7", "@babel/plugin-transform-optional-chaining@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.8.tgz#f46283b78adcc5b6ab988a952f989e7dce70653f" + integrity sha512-q05Bk7gXOxpTHoQ8RSzGSh/LHVB9JEIkKnk3myAWwZHnYiTGYtbdrYkIsS8Xyh4ltKf7GNUSgzs/6P2bJtBAQg== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" -"@babel/plugin-transform-parameters@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.7.tgz#5881f0ae21018400e320fc7eb817e529d1254b68" - integrity sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA== +"@babel/plugin-transform-parameters@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.7.tgz#80c38b03ef580f6d6bffe1c5254bb35986859ac7" + integrity sha512-FYiTvku63me9+1Nz7TOx4YMtW3tWXzfANZtrzHhUZrz4d47EEtMQhzFoZWESfXuAMMT5mwzD4+y1N8ONAX6lMQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-private-methods@^7.25.4": - version "7.25.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.4.tgz#9bbefbe3649f470d681997e0b64a4b254d877242" - integrity sha512-ao8BG7E2b/URaUQGqN3Tlsg+M3KlHY6rJ1O1gXAEUnZoyNQnvKyH87Kfg+FoxSeyWUB8ISZZsC91C44ZuBFytw== +"@babel/plugin-transform-private-methods@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.7.tgz#c790a04f837b4bd61d6b0317b43aa11ff67dce80" + integrity sha512-KY0hh2FluNxMLwOCHbxVOKfdB5sjWG4M183885FmaqWWiGMhRZq4DQRKH6mHdEucbJnyDyYiZNwNG424RymJjA== dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.4" - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-create-class-features-plugin" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-private-property-in-object@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.7.tgz#4eec6bc701288c1fab5f72e6a4bbc9d67faca061" - integrity sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA== +"@babel/plugin-transform-private-property-in-object@^7.25.8": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.8.tgz#1234f856ce85e061f9688764194e51ea7577c434" + integrity sha512-8Uh966svuB4V8RHHg0QJOB32QK287NBksJOByoKmHMp1TAobNniNalIkI2i5IPj5+S9NYCG4VIjbEuiSN8r+ow== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-create-class-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + "@babel/helper-annotate-as-pure" "^7.25.7" + "@babel/helper-create-class-features-plugin" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-property-literals@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.7.tgz#f0d2ed8380dfbed949c42d4d790266525d63bbdc" - integrity sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA== +"@babel/plugin-transform-property-literals@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.7.tgz#a8612b4ea4e10430f00012ecf0155662c7d6550d" + integrity sha512-lQEeetGKfFi0wHbt8ClQrUSUMfEeI3MMm74Z73T9/kuz990yYVtfofjf3NuA42Jy3auFOpbjDyCSiIkTs1VIYw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-regenerator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.7.tgz#021562de4534d8b4b1851759fd7af4e05d2c47f8" - integrity sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA== +"@babel/plugin-transform-regenerator@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.7.tgz#6eb006e6d26f627bc2f7844a9f19770721ad6f3e" + integrity sha512-mgDoQCRjrY3XK95UuV60tZlFCQGXEtMg8H+IsW72ldw1ih1jZhzYXbJvghmAEpg5UVhhnCeia1CkGttUvCkiMQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" regenerator-transform "^0.15.2" -"@babel/plugin-transform-reserved-words@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.7.tgz#80037fe4fbf031fc1125022178ff3938bb3743a4" - integrity sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ== +"@babel/plugin-transform-reserved-words@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.7.tgz#dc56b25e02afaabef3ce0c5b06b0916e8523e995" + integrity sha512-3OfyfRRqiGeOvIWSagcwUTVk2hXBsr/ww7bLn6TRTuXnexA+Udov2icFOxFX9abaj4l96ooYkcNN1qi2Zvqwng== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" "@babel/plugin-transform-runtime@^7.12.10": - version "7.25.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.4.tgz#96e4ad7bfbbe0b4a7b7e6f2a533ca326cf204963" - integrity sha512-8hsyG+KUYGY0coX6KUCDancA0Vw225KJ2HJO0yCNr1vq5r+lJTleDaJf0K7iOhjw4SWhu03TMBzYTJ9krmzULQ== + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.7.tgz#435a4fab67273f00047dc806e05069c9c6344e12" + integrity sha512-Y9p487tyTzB0yDYQOtWnC+9HGOuogtP3/wNpun1xJXEEvI6vip59BSBTsHnekZLqxmPcgsrAKt46HAAb//xGhg== dependencies: - "@babel/helper-module-imports" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-module-imports" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.6" babel-plugin-polyfill-regenerator "^0.6.1" semver "^6.3.1" -"@babel/plugin-transform-shorthand-properties@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.7.tgz#85448c6b996e122fa9e289746140aaa99da64e73" - integrity sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA== +"@babel/plugin-transform-shorthand-properties@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.7.tgz#92690a9c671915602d91533c278cc8f6bf12275f" + integrity sha512-uBbxNwimHi5Bv3hUccmOFlUy3ATO6WagTApenHz9KzoIdn0XeACdB12ZJ4cjhuB2WSi80Ez2FWzJnarccriJeA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-spread@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.7.tgz#e8a38c0fde7882e0fb8f160378f74bd885cc7bb3" - integrity sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng== +"@babel/plugin-transform-spread@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.7.tgz#df83e899a9fc66284ee601a7b738568435b92998" + integrity sha512-Mm6aeymI0PBh44xNIv/qvo8nmbkpZze1KvR8MkEqbIREDxoiWTi18Zr2jryfRMwDfVZF9foKh060fWgni44luw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" -"@babel/plugin-transform-sticky-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.7.tgz#96ae80d7a7e5251f657b5cf18f1ea6bf926f5feb" - integrity sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g== +"@babel/plugin-transform-sticky-regex@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.7.tgz#341c7002bef7f29037be7fb9684e374442dd0d17" + integrity sha512-ZFAeNkpGuLnAQ/NCsXJ6xik7Id+tHuS+NT+ue/2+rn/31zcdnupCdmunOizEaP0JsUmTFSTOPoQY7PkK2pttXw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-template-literals@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.7.tgz#a05debb4a9072ae8f985bcf77f3f215434c8f8c8" - integrity sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw== +"@babel/plugin-transform-template-literals@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.25.7.tgz#e566c581bb16d8541dd8701093bb3457adfce16b" + integrity sha512-SI274k0nUsFFmyQupiO7+wKATAmMFf8iFgq2O+vVFXZ0SV9lNfT1NGzBEhjquFmD8I9sqHLguH+gZVN3vww2AA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-typeof-symbol@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.8.tgz#383dab37fb073f5bfe6e60c654caac309f92ba1c" - integrity sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw== +"@babel/plugin-transform-typeof-symbol@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.7.tgz#debb1287182efd20488f126be343328c679b66eb" + integrity sha512-OmWmQtTHnO8RSUbL0NTdtpbZHeNTnm68Gj5pA4Y2blFNh+V4iZR68V1qL9cI37J21ZN7AaCnkfdHtLExQPf2uA== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-typescript@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.7.tgz#b006b3e0094bf0813d505e0c5485679eeaf4a881" - integrity sha512-iLD3UNkgx2n/HrjBesVbYX6j0yqn/sJktvbtKKgcaLIQ4bTTQ8obAypc1VpyHPD2y4Phh9zHOaAt8e/L14wCpw== +"@babel/plugin-transform-typescript@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.7.tgz#8fc7c3d28ddd36bce45b9b48594129d0e560cfbe" + integrity sha512-VKlgy2vBzj8AmEzunocMun2fF06bsSWV+FvVXohtL6FGve/+L217qhHxRTVGHEDO/YR8IANcjzgJsd04J8ge5Q== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-create-class-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-typescript" "^7.24.7" + "@babel/helper-annotate-as-pure" "^7.25.7" + "@babel/helper-create-class-features-plugin" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" + "@babel/plugin-syntax-typescript" "^7.25.7" -"@babel/plugin-transform-unicode-escapes@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.7.tgz#2023a82ced1fb4971630a2e079764502c4148e0e" - integrity sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw== +"@babel/plugin-transform-unicode-escapes@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.7.tgz#973592b6d13a914794e1de8cf1383e50e0f87f81" + integrity sha512-BN87D7KpbdiABA+t3HbVqHzKWUDN3dymLaTnPFAMyc8lV+KN3+YzNhVRNdinaCPA4AUqx7ubXbQ9shRjYBl3SQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-unicode-property-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.7.tgz#9073a4cd13b86ea71c3264659590ac086605bbcd" - integrity sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w== +"@babel/plugin-transform-unicode-property-regex@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.7.tgz#25349197cce964b1343f74fa7cfdf791a1b1919e" + integrity sha512-IWfR89zcEPQGB/iB408uGtSPlQd3Jpq11Im86vUgcmSTcoWAiQMCTOa2K2yNNqFJEBVICKhayctee65Ka8OB0w== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-unicode-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.7.tgz#dfc3d4a51127108099b19817c0963be6a2adf19f" - integrity sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg== +"@babel/plugin-transform-unicode-regex@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.7.tgz#f93a93441baf61f713b6d5552aaa856bfab34809" + integrity sha512-8JKfg/hiuA3qXnlLx8qtv5HWRbgyFx2hMMtpDDuU2rTckpKkGu4ycK5yYHwuEa16/quXfoxHBIApEsNyMWnt0g== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" -"@babel/plugin-transform-unicode-sets-regex@^7.25.4": - version "7.25.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.4.tgz#be664c2a0697ffacd3423595d5edef6049e8946c" - integrity sha512-qesBxiWkgN1Q+31xUE9RcMk79eOXXDCv6tfyGMRSs4RGlioSg2WVyQAm07k726cSE56pa+Kb0y9epX2qaXzTvA== +"@babel/plugin-transform-unicode-sets-regex@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.7.tgz#d1b3295d29e0f8f4df76abc909ad1ebee919560c" + integrity sha512-YRW8o9vzImwmh4Q3Rffd09bH5/hvY0pxg+1H1i0f7APoUeg12G7+HhLj9ZFNIrYkgBXhIijPJ+IXypN0hLTIbw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.2" - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-create-regexp-features-plugin" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" "@babel/preset-env@^7.12.11": - version "7.25.4" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.25.4.tgz#be23043d43a34a2721cd0f676c7ba6f1481f6af6" - integrity sha512-W9Gyo+KmcxjGahtt3t9fb14vFRWvPpu5pT6GBlovAK6BTBcxgjfVMSQCfJl4oi35ODrxP6xx2Wr8LNST57Mraw== - dependencies: - "@babel/compat-data" "^7.25.4" - "@babel/helper-compilation-targets" "^7.25.2" - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-validator-option" "^7.24.8" - "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.25.3" - "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.25.0" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.25.0" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.7" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.0" + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.25.8.tgz#dc6b719627fb29cd9cccbbbe041802fd575b524c" + integrity sha512-58T2yulDHMN8YMUxiLq5YmWUnlDCyY1FsHM+v12VMx+1/FlrUj5tY50iDCpofFQEM8fMYOaY9YRvym2jcjn1Dg== + dependencies: + "@babel/compat-data" "^7.25.8" + "@babel/helper-compilation-targets" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-validator-option" "^7.25.7" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.25.7" + "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.25.7" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.25.7" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.25.7" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.7" "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-class-properties" "^7.12.13" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-import-assertions" "^7.24.7" - "@babel/plugin-syntax-import-attributes" "^7.24.7" - "@babel/plugin-syntax-import-meta" "^7.10.4" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" - "@babel/plugin-syntax-top-level-await" "^7.14.5" + "@babel/plugin-syntax-import-assertions" "^7.25.7" + "@babel/plugin-syntax-import-attributes" "^7.25.7" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.24.7" - "@babel/plugin-transform-async-generator-functions" "^7.25.4" - "@babel/plugin-transform-async-to-generator" "^7.24.7" - "@babel/plugin-transform-block-scoped-functions" "^7.24.7" - "@babel/plugin-transform-block-scoping" "^7.25.0" - "@babel/plugin-transform-class-properties" "^7.25.4" - "@babel/plugin-transform-class-static-block" "^7.24.7" - "@babel/plugin-transform-classes" "^7.25.4" - "@babel/plugin-transform-computed-properties" "^7.24.7" - "@babel/plugin-transform-destructuring" "^7.24.8" - "@babel/plugin-transform-dotall-regex" "^7.24.7" - "@babel/plugin-transform-duplicate-keys" "^7.24.7" - "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.25.0" - "@babel/plugin-transform-dynamic-import" "^7.24.7" - "@babel/plugin-transform-exponentiation-operator" "^7.24.7" - "@babel/plugin-transform-export-namespace-from" "^7.24.7" - "@babel/plugin-transform-for-of" "^7.24.7" - "@babel/plugin-transform-function-name" "^7.25.1" - "@babel/plugin-transform-json-strings" "^7.24.7" - "@babel/plugin-transform-literals" "^7.25.2" - "@babel/plugin-transform-logical-assignment-operators" "^7.24.7" - "@babel/plugin-transform-member-expression-literals" "^7.24.7" - "@babel/plugin-transform-modules-amd" "^7.24.7" - "@babel/plugin-transform-modules-commonjs" "^7.24.8" - "@babel/plugin-transform-modules-systemjs" "^7.25.0" - "@babel/plugin-transform-modules-umd" "^7.24.7" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.24.7" - "@babel/plugin-transform-new-target" "^7.24.7" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.24.7" - "@babel/plugin-transform-numeric-separator" "^7.24.7" - "@babel/plugin-transform-object-rest-spread" "^7.24.7" - "@babel/plugin-transform-object-super" "^7.24.7" - "@babel/plugin-transform-optional-catch-binding" "^7.24.7" - "@babel/plugin-transform-optional-chaining" "^7.24.8" - "@babel/plugin-transform-parameters" "^7.24.7" - "@babel/plugin-transform-private-methods" "^7.25.4" - "@babel/plugin-transform-private-property-in-object" "^7.24.7" - "@babel/plugin-transform-property-literals" "^7.24.7" - "@babel/plugin-transform-regenerator" "^7.24.7" - "@babel/plugin-transform-reserved-words" "^7.24.7" - "@babel/plugin-transform-shorthand-properties" "^7.24.7" - "@babel/plugin-transform-spread" "^7.24.7" - "@babel/plugin-transform-sticky-regex" "^7.24.7" - "@babel/plugin-transform-template-literals" "^7.24.7" - "@babel/plugin-transform-typeof-symbol" "^7.24.8" - "@babel/plugin-transform-unicode-escapes" "^7.24.7" - "@babel/plugin-transform-unicode-property-regex" "^7.24.7" - "@babel/plugin-transform-unicode-regex" "^7.24.7" - "@babel/plugin-transform-unicode-sets-regex" "^7.25.4" + "@babel/plugin-transform-arrow-functions" "^7.25.7" + "@babel/plugin-transform-async-generator-functions" "^7.25.8" + "@babel/plugin-transform-async-to-generator" "^7.25.7" + "@babel/plugin-transform-block-scoped-functions" "^7.25.7" + "@babel/plugin-transform-block-scoping" "^7.25.7" + "@babel/plugin-transform-class-properties" "^7.25.7" + "@babel/plugin-transform-class-static-block" "^7.25.8" + "@babel/plugin-transform-classes" "^7.25.7" + "@babel/plugin-transform-computed-properties" "^7.25.7" + "@babel/plugin-transform-destructuring" "^7.25.7" + "@babel/plugin-transform-dotall-regex" "^7.25.7" + "@babel/plugin-transform-duplicate-keys" "^7.25.7" + "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.25.7" + "@babel/plugin-transform-dynamic-import" "^7.25.8" + "@babel/plugin-transform-exponentiation-operator" "^7.25.7" + "@babel/plugin-transform-export-namespace-from" "^7.25.8" + "@babel/plugin-transform-for-of" "^7.25.7" + "@babel/plugin-transform-function-name" "^7.25.7" + "@babel/plugin-transform-json-strings" "^7.25.8" + "@babel/plugin-transform-literals" "^7.25.7" + "@babel/plugin-transform-logical-assignment-operators" "^7.25.8" + "@babel/plugin-transform-member-expression-literals" "^7.25.7" + "@babel/plugin-transform-modules-amd" "^7.25.7" + "@babel/plugin-transform-modules-commonjs" "^7.25.7" + "@babel/plugin-transform-modules-systemjs" "^7.25.7" + "@babel/plugin-transform-modules-umd" "^7.25.7" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.25.7" + "@babel/plugin-transform-new-target" "^7.25.7" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.25.8" + "@babel/plugin-transform-numeric-separator" "^7.25.8" + "@babel/plugin-transform-object-rest-spread" "^7.25.8" + "@babel/plugin-transform-object-super" "^7.25.7" + "@babel/plugin-transform-optional-catch-binding" "^7.25.8" + "@babel/plugin-transform-optional-chaining" "^7.25.8" + "@babel/plugin-transform-parameters" "^7.25.7" + "@babel/plugin-transform-private-methods" "^7.25.7" + "@babel/plugin-transform-private-property-in-object" "^7.25.8" + "@babel/plugin-transform-property-literals" "^7.25.7" + "@babel/plugin-transform-regenerator" "^7.25.7" + "@babel/plugin-transform-reserved-words" "^7.25.7" + "@babel/plugin-transform-shorthand-properties" "^7.25.7" + "@babel/plugin-transform-spread" "^7.25.7" + "@babel/plugin-transform-sticky-regex" "^7.25.7" + "@babel/plugin-transform-template-literals" "^7.25.7" + "@babel/plugin-transform-typeof-symbol" "^7.25.7" + "@babel/plugin-transform-unicode-escapes" "^7.25.7" + "@babel/plugin-transform-unicode-property-regex" "^7.25.7" + "@babel/plugin-transform-unicode-regex" "^7.25.7" + "@babel/plugin-transform-unicode-sets-regex" "^7.25.7" "@babel/preset-modules" "0.1.6-no-external-plugins" babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.6" babel-plugin-polyfill-regenerator "^0.6.1" - core-js-compat "^3.37.1" + core-js-compat "^3.38.1" semver "^6.3.1" "@babel/preset-modules@0.1.6-no-external-plugins": @@ -1015,36 +1001,31 @@ esutils "^2.0.2" "@babel/preset-typescript@^7.12.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.24.7.tgz#66cd86ea8f8c014855671d5ea9a737139cbbfef1" - integrity sha512-SyXRe3OdWwIwalxDg5UtJnJQO+YPcTfwiIY2B0Xlddh9o7jpWLvv8X1RthIeDOxQ+O1ML5BLPCONToObyVQVuQ== + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.25.7.tgz#43c5b68eccb856ae5b52274b77b1c3c413cde1b7" + integrity sha512-rkkpaXJZOFN45Fb+Gki0c+KMIglk4+zZXOoMJuyEK8y8Kkc8Jd3BDmP7qPsz0zQMJj+UD7EprF+AqAXcILnexw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-validator-option" "^7.24.7" - "@babel/plugin-syntax-jsx" "^7.24.7" - "@babel/plugin-transform-modules-commonjs" "^7.24.7" - "@babel/plugin-transform-typescript" "^7.24.7" - -"@babel/regjsgen@^0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310" - integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== + "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-validator-option" "^7.25.7" + "@babel/plugin-syntax-jsx" "^7.25.7" + "@babel/plugin-transform-modules-commonjs" "^7.25.7" + "@babel/plugin-transform-typescript" "^7.25.7" "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.25.6" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.6.tgz#9afc3289f7184d8d7f98b099884c26317b9264d2" - integrity sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ== + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.7.tgz#7ffb53c37a8f247c8c4d335e89cdf16a2e0d0fb6" + integrity sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w== dependencies: regenerator-runtime "^0.14.0" -"@babel/template@^7.24.7", "@babel/template@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.0.tgz#e733dc3134b4fede528c15bc95e89cb98c52592a" - integrity sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q== +"@babel/template@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.7.tgz#27f69ce382855d915b14ab0fe5fb4cbf88fa0769" + integrity sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA== dependencies: - "@babel/code-frame" "^7.24.7" - "@babel/parser" "^7.25.0" - "@babel/types" "^7.25.0" + "@babel/code-frame" "^7.25.7" + "@babel/parser" "^7.25.7" + "@babel/types" "^7.25.7" "@babel/template@^7.3.3": version "7.24.7" @@ -1055,16 +1036,16 @@ "@babel/parser" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/traverse@^7.24.7", "@babel/traverse@^7.24.8", "@babel/traverse@^7.25.0", "@babel/traverse@^7.25.1", "@babel/traverse@^7.25.2", "@babel/traverse@^7.25.3", "@babel/traverse@^7.25.4": - version "7.25.6" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.6.tgz#04fad980e444f182ecf1520504941940a90fea41" - integrity sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ== +"@babel/traverse@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.7.tgz#83e367619be1cab8e4f2892ef30ba04c26a40fa8" + integrity sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg== dependencies: - "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.25.6" - "@babel/parser" "^7.25.6" - "@babel/template" "^7.25.0" - "@babel/types" "^7.25.6" + "@babel/code-frame" "^7.25.7" + "@babel/generator" "^7.25.7" + "@babel/parser" "^7.25.7" + "@babel/template" "^7.25.7" + "@babel/types" "^7.25.7" debug "^4.3.1" globals "^11.1.0" @@ -1077,7 +1058,16 @@ "@babel/helper-validator-identifier" "^7.24.7" to-fast-properties "^2.0.0" -"@babel/types@^7.24.7", "@babel/types@^7.24.8", "@babel/types@^7.25.0", "@babel/types@^7.25.2", "@babel/types@^7.25.6", "@babel/types@^7.4.4": +"@babel/types@^7.24.7", "@babel/types@^7.25.7", "@babel/types@^7.25.8", "@babel/types@^7.4.4": + version "7.25.8" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.8.tgz#5cf6037258e8a9bcad533f4979025140cb9993e1" + integrity sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg== + dependencies: + "@babel/helper-string-parser" "^7.25.7" + "@babel/helper-validator-identifier" "^7.25.7" + to-fast-properties "^2.0.0" + +"@babel/types@^7.25.2": version "7.25.6" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.6.tgz#893942ddb858f32ae7a004ec9d3a76b3463ef8e6" integrity sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw== @@ -2358,13 +2348,13 @@ braces@^3.0.3, braces@~3.0.2: dependencies: fill-range "^7.1.1" -browserslist@^4.23.1, browserslist@^4.23.3: - version "4.23.3" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.3.tgz#debb029d3c93ebc97ffbc8d9cbb03403e227c800" - integrity sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA== +browserslist@^4.23.3, browserslist@^4.24.0: + version "4.24.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.0.tgz#a1325fe4bc80b64fda169629fc01b3d6cecd38d4" + integrity sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A== dependencies: - caniuse-lite "^1.0.30001646" - electron-to-chromium "^1.5.4" + caniuse-lite "^1.0.30001663" + electron-to-chromium "^1.5.28" node-releases "^2.0.18" update-browserslist-db "^1.1.0" @@ -2418,10 +2408,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001646: - version "1.0.30001655" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz#0ce881f5a19a2dcfda2ecd927df4d5c1684b982f" - integrity sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg== +caniuse-lite@^1.0.30001663: + version "1.0.30001669" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz#fda8f1d29a8bfdc42de0c170d7f34a9cf19ed7a3" + integrity sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w== ccount@^2.0.0: version "2.0.1" @@ -2627,7 +2617,7 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -core-js-compat@^3.37.1, core-js-compat@^3.38.0, core-js-compat@^3.38.1: +core-js-compat@^3.38.0, core-js-compat@^3.38.1: version "3.38.1" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.38.1.tgz#2bc7a298746ca5a7bcb9c164bcb120f2ebc09a09" integrity sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw== @@ -2857,10 +2847,10 @@ easy-table@1.2.0: optionalDependencies: wcwidth "^1.0.1" -electron-to-chromium@^1.5.4: - version "1.5.13" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz#1abf0410c5344b2b829b7247e031f02810d442e6" - integrity sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q== +electron-to-chromium@^1.5.28: + version "1.5.39" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.39.tgz#5cbe5200b43dff7b7c2bcb6bdacf65d514c76bb2" + integrity sha512-4xkpSR6CjuiaNyvwiWDI85N9AxsvbPawB8xc7yzLPonYTuP19BVgYweKyUMFtHEZgIcHWMt1ks5Cqx2m+6/Grg== emittery@^0.13.1: version "0.13.1" @@ -3013,7 +3003,7 @@ escalade@^3.1.1: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== -escalade@^3.1.2: +escalade@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== @@ -4701,7 +4691,7 @@ jsesc@^2.5.1: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== -jsesc@^3.0.2: +jsesc@^3.0.2, jsesc@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e" integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== @@ -5405,7 +5395,7 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -picocolors@^1.0.0, picocolors@^1.0.1: +picocolors@^1.0.0, picocolors@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59" integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw== @@ -5579,10 +5569,10 @@ readdirp@~3.6.0: dependencies: picomatch "^2.2.1" -regenerate-unicode-properties@^10.1.0: - version "10.1.1" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz#6b0e05489d9076b04c436f318d9b067bba459480" - integrity sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q== +regenerate-unicode-properties@^10.2.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz#626e39df8c372338ea9b8028d1f99dc3fd9c3db0" + integrity sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA== dependencies: regenerate "^1.4.2" @@ -5633,18 +5623,23 @@ regexpp@^3.0.0: resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== -regexpu-core@^5.3.1: - version "5.3.2" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.2.tgz#11a2b06884f3527aec3e93dbbf4a3b958a95546b" - integrity sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ== +regexpu-core@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.1.1.tgz#b469b245594cb2d088ceebc6369dceb8c00becac" + integrity sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw== dependencies: - "@babel/regjsgen" "^0.8.0" regenerate "^1.4.2" - regenerate-unicode-properties "^10.1.0" - regjsparser "^0.9.1" + regenerate-unicode-properties "^10.2.0" + regjsgen "^0.8.0" + regjsparser "^0.11.0" unicode-match-property-ecmascript "^2.0.0" unicode-match-property-value-ecmascript "^2.1.0" +regjsgen@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.8.0.tgz#df23ff26e0c5b300a6470cad160a9d090c3a37ab" + integrity sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q== + regjsparser@^0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.10.0.tgz#b1ed26051736b436f22fdec1c8f72635f9f44892" @@ -5652,12 +5647,12 @@ regjsparser@^0.10.0: dependencies: jsesc "~0.5.0" -regjsparser@^0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.9.1.tgz#272d05aa10c7c1f67095b1ff0addae8442fc5709" - integrity sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ== +regjsparser@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.11.1.tgz#ae55c74f646db0c8fcb922d4da635e33da405149" + integrity sha512-1DHODs4B8p/mQHU9kr+jv8+wIC9mtG4eBHxWxIq5mhjE3D5oORhCc6deRKzTjs9DcfRFmj9BHSDguZklqCGFWQ== dependencies: - jsesc "~0.5.0" + jsesc "~3.0.2" require-directory@^2.1.1: version "2.1.1" @@ -6421,9 +6416,9 @@ unhomoglyph@^1.0.6: integrity sha512-7uvcWI3hWshSADBu4JpnyYbTVc7YlhF5GDW/oPD5AxIxl34k4wXR3WDkPnzLxkN32LiTCTKMQLtKVZiwki3zGg== unicode-canonical-property-names-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" - integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== + version "2.0.1" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz#cb3173fe47ca743e228216e4a3ddc4c84d628cc2" + integrity sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg== unicode-match-property-ecmascript@^2.0.0: version "2.0.0" @@ -6434,9 +6429,9 @@ unicode-match-property-ecmascript@^2.0.0: unicode-property-aliases-ecmascript "^2.0.0" unicode-match-property-value-ecmascript@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz#cb5fffdcd16a05124f5a4b0bf7c3770208acbbe0" - integrity sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA== + version "2.2.0" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz#a0401aee72714598f739b68b104e4fe3a0cb3c71" + integrity sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg== unicode-property-aliases-ecmascript@^2.0.0: version "2.1.0" @@ -6487,12 +6482,12 @@ universalify@^0.2.0: integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== update-browserslist-db@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz#7ca61c0d8650766090728046e416a8cde682859e" - integrity sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ== + version "1.1.1" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz#80846fba1d79e82547fb661f8d141e0945755fe5" + integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A== dependencies: - escalade "^3.1.2" - picocolors "^1.0.1" + escalade "^3.2.0" + picocolors "^1.1.0" uri-js@^4.2.2: version "4.4.1" From 66c80949e8421e94e7d3672013fac1943e363f67 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 17 Oct 2024 10:04:19 +0100 Subject: [PATCH 476/595] Pin GHA runner versions (#4461) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/backport.yml | 2 +- .github/workflows/docs-pr-netlify.yaml | 2 +- .github/workflows/notify-downstream.yaml | 2 +- .github/workflows/pull_request.yaml | 8 ++++---- .github/workflows/release-drafter-workflow.yml | 2 +- .github/workflows/release-gitflow.yml | 2 +- .github/workflows/release-make.yml | 6 +++--- .github/workflows/release-npm.yml | 2 +- .github/workflows/release.yml | 4 ++-- .github/workflows/sonarcloud.yml | 2 +- .github/workflows/static_analysis.yml | 10 +++++----- .github/workflows/tests.yml | 8 ++++---- .github/workflows/triage-incoming.yml | 2 +- 13 files changed, 26 insertions(+), 26 deletions(-) diff --git a/.github/workflows/backport.yml b/.github/workflows/backport.yml index dd793898eca..7252c27b5fb 100644 --- a/.github/workflows/backport.yml +++ b/.github/workflows/backport.yml @@ -10,7 +10,7 @@ on: jobs: backport: name: Backport - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 # Only react to merged PRs for security reasons. # See https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request_target. if: > diff --git a/.github/workflows/docs-pr-netlify.yaml b/.github/workflows/docs-pr-netlify.yaml index c6183467681..94d2f7a83c9 100644 --- a/.github/workflows/docs-pr-netlify.yaml +++ b/.github/workflows/docs-pr-netlify.yaml @@ -9,7 +9,7 @@ on: jobs: netlify: if: github.event.workflow_run.conclusion == 'success' && github.event.workflow_run.event == 'pull_request' - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: 📥 Download artifact uses: actions/download-artifact@v4 diff --git a/.github/workflows/notify-downstream.yaml b/.github/workflows/notify-downstream.yaml index 07c3a7297e7..8f5dc944b75 100644 --- a/.github/workflows/notify-downstream.yaml +++ b/.github/workflows/notify-downstream.yaml @@ -15,7 +15,7 @@ jobs: - repo: element-hq/element-web event: element-web-notify - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Notify matrix-react-sdk repo that a new SDK build is on develop so it can CI against it uses: peter-evans/repository-dispatch@ff45666b9427631e3450c54a1bcbee4d9ff4d7c0 # v3 diff --git a/.github/workflows/pull_request.yaml b/.github/workflows/pull_request.yaml index 480a7fd2fe5..7976109aed9 100644 --- a/.github/workflows/pull_request.yaml +++ b/.github/workflows/pull_request.yaml @@ -12,7 +12,7 @@ concurrency: ${{ github.workflow }}-${{ github.event.pull_request.head.ref || gi jobs: changelog: name: Preview Changelog - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: mheap/github-action-required-labels@d25134c992b943fb6ad00c25ea00eb5988c0a9dd # v5 if: github.event_name != 'merge_group' @@ -29,7 +29,7 @@ jobs: prevent-blocked: name: Prevent Blocked - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 permissions: pull-requests: read steps: @@ -42,7 +42,7 @@ jobs: community-prs: name: Label Community PRs - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: github.event.action == 'opened' steps: - name: Check membership @@ -69,7 +69,7 @@ jobs: close-if-fork-develop: name: Forbid develop branch fork contributions - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: > github.event.action == 'opened' && github.event.pull_request.head.ref == 'develop' && diff --git a/.github/workflows/release-drafter-workflow.yml b/.github/workflows/release-drafter-workflow.yml index 052d8473912..af4a431c7cc 100644 --- a/.github/workflows/release-drafter-workflow.yml +++ b/.github/workflows/release-drafter-workflow.yml @@ -10,7 +10,7 @@ on: concurrency: release-drafter-action jobs: draft: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: 🧮 Checkout code uses: actions/checkout@v4 diff --git a/.github/workflows/release-gitflow.yml b/.github/workflows/release-gitflow.yml index 05e16a6b236..a04f545f5f2 100644 --- a/.github/workflows/release-gitflow.yml +++ b/.github/workflows/release-gitflow.yml @@ -15,7 +15,7 @@ on: concurrency: ${{ github.workflow }} jobs: merge: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 with: diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index 831055a0030..38745231602 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -41,7 +41,7 @@ on: jobs: release: name: Release - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 environment: Release steps: - name: Load GPG key @@ -276,7 +276,7 @@ jobs: post-release: name: Post release steps needs: release - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - id: repository run: echo "REPO=${GITHUB_REPOSITORY#*/}" >> $GITHUB_OUTPUT @@ -304,7 +304,7 @@ jobs: bump-downstreams: name: Update npm dependency in downstream projects needs: npm - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: inputs.downstreams strategy: matrix: diff --git a/.github/workflows/release-npm.yml b/.github/workflows/release-npm.yml index 905d9c2bc06..cc1aeb1c50b 100644 --- a/.github/workflows/release-npm.yml +++ b/.github/workflows/release-npm.yml @@ -11,7 +11,7 @@ on: jobs: npm: name: Publish to npm - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 outputs: id: ${{ steps.npm-publish.outputs.id }} steps: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7e2bf0002cd..de3e4810cf2 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -34,7 +34,7 @@ jobs: name: Publish Documentation needs: release if: inputs.docs - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: 🧮 Checkout code uses: actions/checkout@v4 @@ -60,7 +60,7 @@ jobs: environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 needs: docs # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages permissions: diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index 7c4ee9368d8..534632a9fe5 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -14,7 +14,7 @@ on: description: "Whether to combine multiple LCOV and jest-sonar-report files in coverage artifact" jobs: sonarqube: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: | github.event.workflow_run.conclusion == 'success' && github.event.workflow_run.event != 'merge_group' diff --git a/.github/workflows/static_analysis.yml b/.github/workflows/static_analysis.yml index 128626620a9..a0afd01863c 100644 --- a/.github/workflows/static_analysis.yml +++ b/.github/workflows/static_analysis.yml @@ -11,7 +11,7 @@ concurrency: jobs: ts_lint: name: "Typescript Syntax Check" - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 @@ -38,7 +38,7 @@ jobs: js_lint: name: "ESLint" - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 @@ -55,7 +55,7 @@ jobs: workflow_lint: name: "Workflow Lint" - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 @@ -72,7 +72,7 @@ jobs: docs: name: "JSDoc Checker" - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 @@ -97,7 +97,7 @@ jobs: analyse_dead_code: name: "Analyse Dead Code" - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index ddca69bd3d5..9dc700ef017 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -13,7 +13,7 @@ env: jobs: jest: name: "Jest [${{ matrix.specs }}] (Node ${{ matrix.node == '*' && 'latest' || matrix.node }})" - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 timeout-minutes: 10 strategy: matrix: @@ -68,7 +68,7 @@ jobs: name: Jest tests needs: jest if: always() - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - if: needs.jest.result != 'skipped' && needs.jest.result != 'success' run: exit 1 @@ -91,7 +91,7 @@ jobs: # we need this so the job is reported properly when run in a merge queue downstream-complement-crypto: name: Downstream Complement Crypto tests - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: always() needs: - complement-crypto @@ -103,7 +103,7 @@ jobs: # and skip sonarcloud coverage within merge queues downstream: name: Downstream tests - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: always() needs: - element-web diff --git a/.github/workflows/triage-incoming.yml b/.github/workflows/triage-incoming.yml index 2535fbfcb90..c8c677a85fd 100644 --- a/.github/workflows/triage-incoming.yml +++ b/.github/workflows/triage-incoming.yml @@ -6,7 +6,7 @@ on: jobs: automate-project-columns-next: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/add-to-project@main with: From 13a967ae8fdb74612af0255e51dff3ea5d63ff31 Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Thu, 17 Oct 2024 13:41:18 -0400 Subject: [PATCH 477/595] Prepare delayed call leave events more reliably (#4447) * Prepare delayed call leave events more reliably - Try sending call join after preparing delayed leave - On leave, send delayed leave instead of a new event * Don't rely on errcodes for retry logic because they are unavailable in widget mode * Make arrow method readonly SonarCloud rule typescript:S2933 * Test coverage for restarting delayed call leave * Remove unneeded unstable_features mock It's unneeded because all affected methods are mocked --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 12 ++- src/matrixrtc/MatrixRTCSession.ts | 93 ++++++++++++++++---- 2 files changed, 85 insertions(+), 20 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index d19038ff250..fab61029bb0 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -46,9 +46,6 @@ describe("MatrixRTCSession", () => { client = new MatrixClient({ baseUrl: "base_url" }); client.getUserId = jest.fn().mockReturnValue("@alice:example.org"); client.getDeviceId = jest.fn().mockReturnValue("AAAAAAA"); - client.doesServerSupportUnstableFeature = jest.fn((feature) => - Promise.resolve(feature === "org.matrix.msc4140"), - ); }); afterEach(() => { @@ -414,6 +411,8 @@ describe("MatrixRTCSession", () => { client._unstable_sendDelayedStateEvent = sendDelayedStateMock; client.sendEvent = sendEventMock; + client._unstable_updateDelayedEvent = jest.fn(); + mockRoom = makeMockRoom([]); sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); }); @@ -490,6 +489,13 @@ describe("MatrixRTCSession", () => { ); await Promise.race([sentDelayedState, new Promise((resolve) => realSetTimeout(resolve, 500))]); expect(client._unstable_sendDelayedStateEvent).toHaveBeenCalledTimes(1); + + // should have tried updating the delayed leave to test that it wasn't replaced by own state + expect(client._unstable_updateDelayedEvent).toHaveBeenCalledTimes(1); + // should update delayed disconnect + jest.advanceTimersByTime(5000); + expect(client._unstable_updateDelayedEvent).toHaveBeenCalledTimes(2); + jest.useRealTimers(); } diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index a76df9afd44..bb8c0334035 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -140,6 +140,8 @@ export class MatrixRTCSession extends TypedEventEmitter>(); private lastEncryptionKeyUpdateRequest?: number; + private disconnectDelayId: string | undefined; + // We use this to store the last membership fingerprints we saw, so we can proactively re-send encryption keys // if it looks like a membership has been updated. private lastMembershipFingerprints: Set | undefined; @@ -1011,19 +1013,24 @@ export class MatrixRTCSession extends TypedEventEmitter => { try { // TODO: If delayed event times out, re-join! const res = await this.client._unstable_sendDelayedStateEvent( @@ -1035,12 +1042,63 @@ export class MatrixRTCSession extends TypedEventEmitter this.delayDisconnection(delayId), 5000); + private scheduleDelayDisconnection(): void { + this.memberEventTimeout = setTimeout(this.delayDisconnection, 5000); } - private async delayDisconnection(delayId: string): Promise { + private readonly delayDisconnection = async (): Promise => { try { - await this.client._unstable_updateDelayedEvent(delayId, UpdateDelayedEventAction.Restart); - this.scheduleDelayDisconnection(delayId); + await this.client._unstable_updateDelayedEvent(this.disconnectDelayId!, UpdateDelayedEventAction.Restart); + this.scheduleDelayDisconnection(); } catch (e) { - logger.error("Failed to delay our disconnection event", e); + // TODO: Retry if rate-limited + logger.error("Failed to delay our disconnection event:", e); } - } + }; private stateEventsContainOngoingLegacySession(callMemberEvents: Map | undefined): boolean { if (!callMemberEvents?.size) { From 88cf5eb7698372d753134df15d4f0748d8155f23 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 18 Oct 2024 14:54:33 +0100 Subject: [PATCH 478/595] Update actions/checkout digest to eef6144 (#4464) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/sonarcloud.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index 534632a9fe5..fe148e68bc1 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -30,7 +30,7 @@ jobs: target_url: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} - name: "🧮 Checkout code" - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4 with: repository: ${{ github.event.workflow_run.head_repository.full_name }} ref: ${{ github.event.workflow_run.head_branch }} # checkout commit that triggered this workflow From 91f6f0f9c5648583ebe20b485fe955cec29c97b8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 21 Oct 2024 13:17:20 +0000 Subject: [PATCH 479/595] Update typescript-eslint monorepo to v8 (major) (#4388) * Update typescript-eslint monorepo to v8 * Migrate to stylistic Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> * Iterate Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --------- Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- .eslintrc.cjs | 6 +- package.json | 7 +- spec/integ/crypto/crypto.spec.ts | 4 +- spec/integ/crypto/verification.spec.ts | 1 + .../rendezvous/MSC4108SignInWithQR.spec.ts | 4 +- spec/olm-loader.ts | 2 +- spec/test-utils/AccountDataAccumulator.ts | 4 +- spec/test-utils/test-utils.ts | 2 +- spec/unit/ToDeviceMessageQueue.spec.ts | 2 +- spec/unit/crypto.spec.ts | 2 +- spec/unit/crypto/cross-signing.spec.ts | 10 +- spec/unit/crypto/verification/sas.spec.ts | 2 +- spec/unit/matrix-client.spec.ts | 22 +-- .../OutgoingRequestProcessor.spec.ts | 4 +- spec/unit/rust-crypto/secret-storage.spec.ts | 2 +- spec/unit/scheduler.spec.ts | 2 +- spec/unit/webrtc/call.spec.ts | 2 +- spec/unit/webrtc/callFeed.spec.ts | 2 +- src/browser-index.ts | 2 +- src/client.ts | 6 +- src/crypto-api/index.ts | 4 +- src/crypto/CrossSigning.ts | 4 +- src/crypto/OlmDevice.ts | 4 +- src/crypto/algorithms/megolm.ts | 6 +- src/crypto/index.ts | 2 +- .../store/indexeddb-crypto-store-backend.ts | 2 +- src/http-api/fetch.ts | 2 +- src/interactive-auth.ts | 2 +- src/matrix.ts | 12 +- src/matrixrtc/MatrixRTCSession.ts | 2 +- src/matrixrtc/index.ts | 4 +- src/models/invites-ignorer.ts | 2 +- src/models/room-receipts.ts | 4 +- src/models/room.ts | 4 +- src/models/typed-event-emitter.ts | 4 +- src/rendezvous/MSC3906Rendezvous.ts | 2 +- src/rendezvous/index.ts | 6 +- .../PerSessionKeyBackupDownloader.ts | 2 +- src/rust-crypto/backup.ts | 4 +- src/store/indexeddb.ts | 16 +- src/store/memory.ts | 4 +- src/webrtc/groupCall.ts | 4 +- src/webrtc/stats/callStatsReportSummary.ts | 2 +- src/webrtc/stats/trackStatsBuilder.ts | 2 +- yarn.lock | 184 ++++++++---------- 45 files changed, 176 insertions(+), 196 deletions(-) diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 4b568b8aacc..036f51f757b 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -108,10 +108,8 @@ module.exports = { "@typescript-eslint/ban-ts-comment": "off", // We're okay with assertion errors when we ask for them "@typescript-eslint/no-non-null-assertion": "off", - - // The non-TypeScript rule produces false positives - "func-call-spacing": "off", - "@typescript-eslint/func-call-spacing": ["error"], + // We do this sometimes to brand interfaces + "@typescript-eslint/no-empty-object-type": "off", "quotes": "off", // We use a `logger` intermediary module diff --git a/package.json b/package.json index 6c3b195a09b..f1d6dce94f6 100644 --- a/package.json +++ b/package.json @@ -81,6 +81,7 @@ "@babel/preset-typescript": "^7.12.7", "@casualbot/jest-sonar-reporter": "2.2.7", "@peculiar/webcrypto": "^1.4.5", + "@stylistic/eslint-plugin": "^2.9.0", "@types/bs58": "^4.0.1", "@types/content-type": "^1.1.5", "@types/debug": "^4.1.7", @@ -88,8 +89,8 @@ "@types/node": "18", "@types/sdp-transform": "^2.4.5", "@types/uuid": "10", - "@typescript-eslint/eslint-plugin": "^7.0.0", - "@typescript-eslint/parser": "^7.0.0", + "@typescript-eslint/eslint-plugin": "^8.0.0", + "@typescript-eslint/parser": "^8.0.0", "babel-jest": "^29.0.0", "babel-plugin-search-and-replace": "^1.1.1", "debug": "^4.3.4", @@ -100,7 +101,7 @@ "eslint-plugin-import": "^2.26.0", "eslint-plugin-jest": "^28.0.0", "eslint-plugin-jsdoc": "^50.0.0", - "eslint-plugin-matrix-org": "^1.0.0", + "eslint-plugin-matrix-org": "^2.0.1", "eslint-plugin-n": "^14.0.0", "eslint-plugin-tsdoc": "^0.3.0", "eslint-plugin-unicorn": "^56.0.0", diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index e5d25537f10..3d62413c33f 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -3499,7 +3499,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, return client; } - function mkEncryptionEvent(content: Object) { + function mkEncryptionEvent(content: object) { return mkEventCustom({ sender: persistentStoreClient.getSafeUserId(), type: "m.room.encryption", @@ -3512,7 +3512,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, * * @param stateEvents - Additional state events for the test room */ - function getSyncResponseWithState(stateEvents: Array) { + function getSyncResponseWithState(stateEvents: Array) { const roomResponse = { state: { events: [ diff --git a/spec/integ/crypto/verification.spec.ts b/spec/integ/crypto/verification.spec.ts index d288adfa0bc..763de044ad6 100644 --- a/spec/integ/crypto/verification.spec.ts +++ b/spec/integ/crypto/verification.spec.ts @@ -95,6 +95,7 @@ beforeAll(async () => { // load the rust library. This can take a few seconds on a slow GH worker. beforeAll(async () => { + // eslint-disable-next-line @typescript-eslint/no-require-imports const RustSdkCryptoJs = await require("@matrix-org/matrix-sdk-crypto-wasm"); await RustSdkCryptoJs.initAsync(); }, 10000); diff --git a/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts b/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts index e64ba412a6d..b564155fe03 100644 --- a/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts +++ b/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts @@ -267,7 +267,7 @@ describe("MSC4108SignInWithQR", () => { it("should abort if device doesn't come up by timeout", async () => { jest.spyOn(global, "setTimeout").mockImplementation((fn) => { - (fn)(); + fn(); // TODO: mock timers properly return -1 as any; }); @@ -320,7 +320,7 @@ describe("MSC4108SignInWithQR", () => { it("should not send secrets if user cancels", async () => { jest.spyOn(global, "setTimeout").mockImplementation((fn) => { - (fn)(); + fn(); // TODO: mock timers properly return -1 as any; }); diff --git a/spec/olm-loader.ts b/spec/olm-loader.ts index ced175811c9..5f12ca95072 100644 --- a/spec/olm-loader.ts +++ b/spec/olm-loader.ts @@ -19,7 +19,7 @@ import { logger } from "../src/logger"; // try to load the olm library. try { - // eslint-disable-next-line @typescript-eslint/no-var-requires + // eslint-disable-next-line @typescript-eslint/no-require-imports globalThis.Olm = require("@matrix-org/olm"); logger.log("loaded libolm"); } catch (e) { diff --git a/spec/test-utils/AccountDataAccumulator.ts b/spec/test-utils/AccountDataAccumulator.ts index f24b7f53b35..50d00973c5b 100644 --- a/spec/test-utils/AccountDataAccumulator.ts +++ b/spec/test-utils/AccountDataAccumulator.ts @@ -27,7 +27,7 @@ export class AccountDataAccumulator { * Will be updated when fetchMock intercepts calls to PUT `/_matrix/client/v3/user/:userId/account_data/`. * Will be used by `sendSyncResponseWithUpdatedAccountData` */ - public accountDataEvents: Map = new Map(); + public accountDataEvents: Map = new Map(); /** * Intercept requests to set a particular type of account data. @@ -101,7 +101,7 @@ export class AccountDataAccumulator { })), }, }); - } catch (err) { + } catch { // Might fail with "Cannot queue more than one /sync response" if called too often. // It's ok if it fails here, the sync response is cumulative and will contain // the latest account data. diff --git a/spec/test-utils/test-utils.ts b/spec/test-utils/test-utils.ts index a6cc6445565..15c7c9efd22 100644 --- a/spec/test-utils/test-utils.ts +++ b/spec/test-utils/test-utils.ts @@ -127,7 +127,7 @@ export function mock(constr: { new (...args: any[]): T }, name: string): T { if (constr.prototype[key] instanceof Function) { result[key] = jest.fn(); } - } catch (ex) { + } catch { // Direct access to some non-function fields of DOM prototypes may // cause exceptions. // Overwriting will not work either in that case. diff --git a/spec/unit/ToDeviceMessageQueue.spec.ts b/spec/unit/ToDeviceMessageQueue.spec.ts index 7c0a023e53f..2689cd1e47d 100644 --- a/spec/unit/ToDeviceMessageQueue.spec.ts +++ b/spec/unit/ToDeviceMessageQueue.spec.ts @@ -9,7 +9,7 @@ import { defer } from "../../src/utils"; describe("onResumedSync", () => { let batch: IndexedToDeviceBatch | null; - let shouldFailSendToDevice: Boolean; + let shouldFailSendToDevice: boolean; let onSendToDeviceFailure: () => void; let onSendToDeviceSuccess: () => void; let resumeSync: (newState: SyncState, oldState: SyncState) => void; diff --git a/spec/unit/crypto.spec.ts b/spec/unit/crypto.spec.ts index 680b973ad56..fa287a3a9e2 100644 --- a/spec/unit/crypto.spec.ts +++ b/spec/unit/crypto.spec.ts @@ -607,7 +607,7 @@ describe("Crypto", function () { event.claimedEd25519Key = null; try { await bobClient.crypto!.decryptEvent(event); - } catch (e) { + } catch { // we expect this to fail because we don't have the // decryption keys yet } diff --git a/spec/unit/crypto/cross-signing.spec.ts b/spec/unit/crypto/cross-signing.spec.ts index 90a6e2b31cb..ad347dd3296 100644 --- a/spec/unit/crypto/cross-signing.spec.ts +++ b/spec/unit/crypto/cross-signing.spec.ts @@ -140,9 +140,7 @@ describe("Cross Signing", function () { }); } - const error = new MatrixError(errorResponse); - error.httpStatus == 401; - throw error; + throw new MatrixError(errorResponse, 401); }; alice.uploadKeySignatures = async () => ({ failures: {} }); alice.setAccountData = async () => ({}); @@ -827,7 +825,7 @@ describe("Cross Signing", function () { }); it("should offer to upgrade device verifications to cross-signing", async function () { - let upgradeResolveFunc: Function; + let upgradeResolveFunc: () => void; const { client: alice } = await makeTestClient( { userId: "@alice:example.com", deviceId: "Osborne2" }, @@ -866,7 +864,7 @@ describe("Cross Signing", function () { // cross-signing key is signed by his Dynabook, which alice has // verified, and ask if the device verification should be upgraded to a // cross-signing verification - let upgradePromise = new Promise((resolve) => { + let upgradePromise = new Promise((resolve) => { upgradeResolveFunc = resolve; }); await resetCrossSigningKeys(alice); @@ -885,7 +883,7 @@ describe("Cross Signing", function () { expect(bobTrust2.isCrossSigningVerified()).toBeFalsy(); expect(bobTrust2.isTofu()).toBeTruthy(); - upgradePromise = new Promise((resolve) => { + upgradePromise = new Promise((resolve) => { upgradeResolveFunc = resolve; }); alice.crypto!.deviceList.emit(CryptoEvent.UserCrossSigningUpdated, "@bob:example.com"); diff --git a/spec/unit/crypto/verification/sas.spec.ts b/spec/unit/crypto/verification/sas.spec.ts index ba73ced6a3e..7a4f65d05c6 100644 --- a/spec/unit/crypto/verification/sas.spec.ts +++ b/spec/unit/crypto/verification/sas.spec.ts @@ -454,7 +454,7 @@ describe("SAS verification", function () { let bobSasEvent: ISasEvent | null; let aliceVerifier: SAS; let bobPromise: Promise; - let clearTestClientTimeouts: Function; + let clearTestClientTimeouts: () => void; beforeEach(async function () { [[alice, bob], clearTestClientTimeouts] = await makeTestClients( diff --git a/spec/unit/matrix-client.spec.ts b/spec/unit/matrix-client.spec.ts index 52d6a07778c..902a79b23ef 100644 --- a/spec/unit/matrix-client.spec.ts +++ b/spec/unit/matrix-client.spec.ts @@ -102,7 +102,7 @@ type HttpLookup = { error?: object; expectBody?: Record; expectQueryParams?: QueryDict; - thenCall?: Function; + thenCall?: () => void; }; interface Options extends ICreateRoomOpts { @@ -403,7 +403,7 @@ describe("MatrixClient", function () { async function assertRequestsMade( responses: { prefix?: string; - error?: { httpStatus: Number; errcode: string }; + error?: { httpStatus: number; errcode: string }; data?: { event_id: string }; }[], expectRejects = false, @@ -1515,7 +1515,7 @@ describe("MatrixClient", function () { }); describe("emitted sync events", function () { - function syncChecker(expectedStates: [string, string | null][], done: Function) { + function syncChecker(expectedStates: [string, string | null][], done: () => void) { return function syncListener(state: SyncState, old: SyncState | null) { const expected = expectedStates.shift(); logger.log("'sync' curr=%s old=%s EXPECT=%s", state, old, expected); @@ -1537,7 +1537,7 @@ describe("MatrixClient", function () { it("should transition null -> PREPARED after the first /sync", async () => { const expectedStates: [string, string | null][] = []; expectedStates.push(["PREPARED", null]); - const didSyncPromise = new Promise((resolve) => { + const didSyncPromise = new Promise((resolve) => { client.on(ClientEvent.Sync, syncChecker(expectedStates, resolve)); }); await client.startClient(); @@ -1554,7 +1554,7 @@ describe("MatrixClient", function () { error: { errcode: "NOPE_NOPE_NOPE" }, }); expectedStates.push(["ERROR", null]); - const didSyncPromise = new Promise((resolve) => { + const didSyncPromise = new Promise((resolve) => { client.on(ClientEvent.Sync, syncChecker(expectedStates, resolve)); }); await client.startClient(); @@ -1594,7 +1594,7 @@ describe("MatrixClient", function () { expectedStates.push(["RECONNECTING", null]); expectedStates.push(["ERROR", "RECONNECTING"]); expectedStates.push(["CATCHUP", "ERROR"]); - const didSyncPromise = new Promise((resolve) => { + const didSyncPromise = new Promise((resolve) => { client.on(ClientEvent.Sync, syncChecker(expectedStates, resolve)); }); await client.startClient(); @@ -1605,7 +1605,7 @@ describe("MatrixClient", function () { const expectedStates: [string, string | null][] = []; expectedStates.push(["PREPARED", null]); expectedStates.push(["SYNCING", "PREPARED"]); - const didSyncPromise = new Promise((resolve) => { + const didSyncPromise = new Promise((resolve) => { client.on(ClientEvent.Sync, syncChecker(expectedStates, resolve)); }); await client.startClient(); @@ -1630,7 +1630,7 @@ describe("MatrixClient", function () { expectedStates.push(["SYNCING", "PREPARED"]); expectedStates.push(["RECONNECTING", "SYNCING"]); expectedStates.push(["ERROR", "RECONNECTING"]); - const didSyncPromise = new Promise((resolve) => { + const didSyncPromise = new Promise((resolve) => { client.on(ClientEvent.Sync, syncChecker(expectedStates, resolve)); }); await client.startClient(); @@ -1649,7 +1649,7 @@ describe("MatrixClient", function () { expectedStates.push(["PREPARED", null]); expectedStates.push(["SYNCING", "PREPARED"]); expectedStates.push(["ERROR", "SYNCING"]); - const didSyncPromise = new Promise((resolve) => { + const didSyncPromise = new Promise((resolve) => { client.on(ClientEvent.Sync, syncChecker(expectedStates, resolve)); }); await client.startClient(); @@ -1664,7 +1664,7 @@ describe("MatrixClient", function () { expectedStates.push(["PREPARED", null]); expectedStates.push(["SYNCING", "PREPARED"]); expectedStates.push(["SYNCING", "SYNCING"]); - const didSyncPromise = new Promise((resolve) => { + const didSyncPromise = new Promise((resolve) => { client.on(ClientEvent.Sync, syncChecker(expectedStates, resolve)); }); await client.startClient(); @@ -1695,7 +1695,7 @@ describe("MatrixClient", function () { expectedStates.push(["RECONNECTING", "SYNCING"]); expectedStates.push(["ERROR", "RECONNECTING"]); expectedStates.push(["ERROR", "ERROR"]); - const didSyncPromise = new Promise((resolve) => { + const didSyncPromise = new Promise((resolve) => { client.on(ClientEvent.Sync, syncChecker(expectedStates, resolve)); }); await client.startClient(); diff --git a/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts b/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts index 4074e1c9a32..3f2199a09f0 100644 --- a/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts +++ b/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts @@ -208,7 +208,7 @@ describe("OutgoingRequestProcessor", () => { const outgoingRequest = new UploadSigningKeysRequest(JSON.stringify(testReq)); // also create a UIA callback - const authCallback: UIAuthCallback = async (makeRequest) => { + const authCallback: UIAuthCallback = async (makeRequest) => { return await makeRequest({ type: "test" }); }; @@ -458,7 +458,7 @@ describe("OutgoingRequestProcessor", () => { throw new Error("Failed to fetch"); } }); - const authCallback: UIAuthCallback = async (makeRequest) => { + const authCallback: UIAuthCallback = async (makeRequest) => { return await makeRequest({ type: "test" }); }; const requestPromise = processor.makeOutgoingRequest(outgoingRequest, authCallback); diff --git a/spec/unit/rust-crypto/secret-storage.spec.ts b/spec/unit/rust-crypto/secret-storage.spec.ts index 6a8bbf7a5e0..0667dbd72e5 100644 --- a/spec/unit/rust-crypto/secret-storage.spec.ts +++ b/spec/unit/rust-crypto/secret-storage.spec.ts @@ -98,7 +98,7 @@ describe("secret-storage", () => { } else if (secretName == "secretE") { return { aaaa: {}, bbbb: {} }; } else { - null; + return null; } }), getDefaultKeyId: jest.fn().mockResolvedValue("aaaa"), diff --git a/spec/unit/scheduler.spec.ts b/spec/unit/scheduler.spec.ts index ecdd729a928..e37a3b38246 100644 --- a/spec/unit/scheduler.spec.ts +++ b/spec/unit/scheduler.spec.ts @@ -12,7 +12,7 @@ jest.useFakeTimers(); describe("MatrixScheduler", function () { let scheduler: MatrixScheduler>; - let retryFn: Function | null; + let retryFn: ((event: MatrixEvent | null, attempt: number, err: MatrixError) => number) | null; let queueFn: ((event: MatrixEvent) => string | null) | null; let deferred: IDeferred>; const roomId = "!foo:bar"; diff --git a/spec/unit/webrtc/call.spec.ts b/spec/unit/webrtc/call.spec.ts index db2b496543c..f8fc35a6661 100644 --- a/spec/unit/webrtc/call.spec.ts +++ b/spec/unit/webrtc/call.spec.ts @@ -1228,7 +1228,7 @@ describe("Call", function () { }); describe("Screen sharing", () => { - const waitNegotiateFunc = (resolve: Function): void => { + const waitNegotiateFunc = (resolve: () => void): void => { mockSendEvent.mockImplementationOnce(() => { // Note that the peer connection here is a dummy one and always returns // dummy SDP, so there's not much point returning the content: the SDP will diff --git a/spec/unit/webrtc/callFeed.spec.ts b/spec/unit/webrtc/callFeed.spec.ts index ea80d5267f2..bce56261e0f 100644 --- a/spec/unit/webrtc/callFeed.spec.ts +++ b/spec/unit/webrtc/callFeed.spec.ts @@ -101,7 +101,7 @@ describe("CallFeed", () => { it.each([ [CallState.Connected, true], [CallState.Connecting, false], - ])("should react to call state, when !isLocal()", (state: CallState, expected: Boolean) => { + ])("should react to call state, when !isLocal()", (state: CallState, expected: boolean) => { call.emit(CallEvent.State, state, CallState.InviteSent, call.typed()); expect(feed.connected).toBe(expected); diff --git a/src/browser-index.ts b/src/browser-index.ts index 6b77aed915a..6a229897bad 100644 --- a/src/browser-index.ts +++ b/src/browser-index.ts @@ -33,7 +33,7 @@ globalThis.__js_sdk_entrypoint = true; let indexedDB: IDBFactory | undefined; try { indexedDB = globalThis.indexedDB; -} catch (e) {} +} catch {} // if our browser (appears to) support indexeddb, use an indexeddb crypto store. if (indexedDB) { diff --git a/src/client.ts b/src/client.ts index 352c3c58ea9..d3683fe3381 100644 --- a/src/client.ts +++ b/src/client.ts @@ -1781,7 +1781,7 @@ export class MatrixClient extends TypedEventEmitter { try { await ev.attemptDecryption(this.crypto, { isRetry: true, forceRedecryptIfUntrusted }); - } catch (e) { + } catch { // don't die if something goes wrong } }), @@ -2128,7 +2128,7 @@ export class MegolmDecryption extends DecryptionAlgorithm { [...pending].map(async (ev) => { try { await ev.attemptDecryption(this.crypto); - } catch (e) { + } catch { // don't die if something goes wrong } }), diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 34cf5c5db62..829000bf98b 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -1497,7 +1497,7 @@ export class Crypto extends TypedEventEmitter { const sanitizedQsUrlPiece = sanitizedQsString ? `?${sanitizedQsString}` : ""; return asUrl.origin + asUrl.pathname + sanitizedQsUrlPiece; - } catch (error) { + } catch { // defensive coding for malformed url return "??"; } diff --git a/src/interactive-auth.ts b/src/interactive-auth.ts index 60c31d017f3..e98ed64a410 100644 --- a/src/interactive-auth.ts +++ b/src/interactive-auth.ts @@ -415,7 +415,7 @@ export class InteractiveAuth { while (this.submitPromise) { try { await this.submitPromise; - } catch (e) {} + } catch {} } // use the sessionid from the last request, if one is present. diff --git a/src/matrix.ts b/src/matrix.ts index 29c619fa821..1a79e8b04c3 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -57,8 +57,8 @@ export * from "./crypto/store/localStorage-crypto-store.ts"; export * from "./crypto/store/indexeddb-crypto-store.ts"; export type { OutgoingRoomKeyRequest } from "./crypto/store/base.ts"; export * from "./content-repo.ts"; -export * from "./@types/common.ts"; -export * from "./@types/uia.ts"; +export type * from "./@types/common.ts"; +export type * from "./@types/uia.ts"; export * from "./@types/event.ts"; export * from "./@types/PushRules.ts"; export * from "./@types/partials.ts"; @@ -70,12 +70,12 @@ export * from "./@types/location.ts"; export * from "./@types/threepids.ts"; export * from "./@types/auth.ts"; export * from "./@types/polls.ts"; -export * from "./@types/local_notifications.ts"; -export * from "./@types/registration.ts"; +export type * from "./@types/local_notifications.ts"; +export type * from "./@types/registration.ts"; export * from "./@types/read_receipts.ts"; -export * from "./@types/crypto.ts"; +export type * from "./@types/crypto.ts"; export * from "./@types/extensible_events.ts"; -export * from "./@types/IIdentityServerProvider.ts"; +export type * from "./@types/IIdentityServerProvider.ts"; export * from "./@types/membership.ts"; export * from "./models/room-summary.ts"; export * from "./models/event-status.ts"; diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index bb8c0334035..e8a2916d043 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -913,7 +913,7 @@ export class MatrixRTCSession extends TypedEventEmitter; + private data: Map; public constructor(room: Room) { this.room = room; diff --git a/src/models/room.ts b/src/models/room.ts index 5ede46b7073..e50ca62f8cc 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -525,7 +525,7 @@ export class Room extends ReadReceipt { this.threadsTimelineSets[0] = timelineSets[0]; this.threadsTimelineSets[1] = timelineSets[1]; return timelineSets; - } catch (e) { + } catch { this.threadTimelineSetsPromise = null; return null; } @@ -619,7 +619,7 @@ export class Room extends ReadReceipt { let capabilities: Capabilities = {}; try { capabilities = await this.client.getCapabilities(); - } catch (e) {} + } catch {} let versionCap = capabilities["m.room_versions"]; if (!versionCap) { versionCap = { diff --git a/src/models/typed-event-emitter.ts b/src/models/typed-event-emitter.ts index 3c90710165e..7e4718a47eb 100644 --- a/src/models/typed-event-emitter.ts +++ b/src/models/typed-event-emitter.ts @@ -119,7 +119,7 @@ export class TypedEventEmitter< /** * Returns a copy of the array of listeners for the event named `event`. */ - public listeners(event: Events | EventEmitterEvents): Function[] { + public listeners(event: Events | EventEmitterEvents): ReturnType { return super.listeners(event); } @@ -240,7 +240,7 @@ export class TypedEventEmitter< * Returns a copy of the array of listeners for the event named `eventName`, * including any wrappers (such as those created by `.once()`). */ - public rawListeners(event: Events | EventEmitterEvents): Function[] { + public rawListeners(event: Events | EventEmitterEvents): ReturnType { return super.rawListeners(event); } } diff --git a/src/rendezvous/MSC3906Rendezvous.ts b/src/rendezvous/MSC3906Rendezvous.ts index a84a41d687a..8fa301f82f2 100644 --- a/src/rendezvous/MSC3906Rendezvous.ts +++ b/src/rendezvous/MSC3906Rendezvous.ts @@ -112,7 +112,7 @@ export class MSC3906Rendezvous { let capabilities: Capabilities = {}; try { capabilities = await this.client.getCapabilities(); - } catch (e) {} + } catch {} // in r0 of MSC3882 the availability is exposed as a feature flag const features = await buildFeatureSupportMap(await this.client.getVersions()); const capability = GET_LOGIN_TOKEN_CAPABILITY.findIn(capabilities); diff --git a/src/rendezvous/index.ts b/src/rendezvous/index.ts index 5b8d83f51e8..95fa72d6187 100644 --- a/src/rendezvous/index.ts +++ b/src/rendezvous/index.ts @@ -19,11 +19,11 @@ limitations under the License. */ export * from "./MSC3906Rendezvous.ts"; export * from "./MSC4108SignInWithQR.ts"; -export * from "./RendezvousChannel.ts"; -export * from "./RendezvousCode.ts"; +export type * from "./RendezvousChannel.ts"; +export type * from "./RendezvousCode.ts"; export * from "./RendezvousError.ts"; export * from "./RendezvousFailureReason.ts"; export * from "./RendezvousIntent.ts"; -export * from "./RendezvousTransport.ts"; +export type * from "./RendezvousTransport.ts"; export * from "./transports/index.ts"; export * from "./channels/index.ts"; diff --git a/src/rust-crypto/PerSessionKeyBackupDownloader.ts b/src/rust-crypto/PerSessionKeyBackupDownloader.ts index 4e066d31e74..e2f3a194e05 100644 --- a/src/rust-crypto/PerSessionKeyBackupDownloader.ts +++ b/src/rust-crypto/PerSessionKeyBackupDownloader.ts @@ -241,7 +241,7 @@ export class PerSessionKeyBackupDownloader { private async getBackupDecryptionKey(): Promise { try { return await this.olmMachine.getBackupKeys(); - } catch (e) { + } catch { return null; } } diff --git a/src/rust-crypto/backup.ts b/src/rust-crypto/backup.ts index 4c868f12ad0..d4a91bd0fa4 100644 --- a/src/rust-crypto/backup.ts +++ b/src/rust-crypto/backup.ts @@ -225,7 +225,7 @@ export class RustBackupManager extends TypedEventEmitter { - await this.olmMachine.importExportedRoomKeys(jsonKeys, (progress: BigInt, total: BigInt): void => { + await this.olmMachine.importExportedRoomKeys(jsonKeys, (progress: bigint, total: bigint): void => { const importOpt: ImportRoomKeyProgressData = { total: Number(total), successes: Number(progress), @@ -254,7 +254,7 @@ export class RustBackupManager extends TypedEventEmitter { + (progress: bigint, total: bigint, failures: bigint): void => { const importOpt: ImportRoomKeyProgressData = { total: Number(total), successes: Number(progress), diff --git a/src/store/indexeddb.ts b/src/store/indexeddb.ts index 443447b650b..dfed00df272 100644 --- a/src/store/indexeddb.ts +++ b/src/store/indexeddb.ts @@ -206,7 +206,7 @@ export class IndexedDBStore extends MemoryStore { throw err; }, ); - }); + }, null); /** * Whether this store would like to save its data @@ -253,7 +253,7 @@ export class IndexedDBStore extends MemoryStore { } return this.backend.syncToDatabase(userTuples); - }); + }, null); public setSyncData = this.degradable((syncData: ISyncResponse): Promise => { return this.backend.setSyncData(syncData); @@ -310,13 +310,13 @@ export class IndexedDBStore extends MemoryStore { * @param fallback - The method name for fallback. * @returns A wrapped member function. */ - private degradable, R = void>( + private degradable, F extends keyof MemoryStore | null, R = void>( func: DegradableFn, - fallback?: keyof MemoryStore, - ): DegradableFn { - const fallbackFn = fallback ? (super[fallback] as Function) : null; + fallback: F, + ): DegradableFn { + const fallbackFn = fallback ? (super[fallback] as (...args: A) => Promise) : null; - return async (...args) => { + return (async (...args) => { try { return await func.call(this, ...args); } catch (e) { @@ -344,7 +344,7 @@ export class IndexedDBStore extends MemoryStore { return fallbackFn.call(this, ...args); } } - }; + }) as DegradableFn; } // XXX: ideally these would be stored in indexeddb as part of the room but, diff --git a/src/store/memory.ts b/src/store/memory.ts index 3021c23ebdb..2daa6a5f229 100644 --- a/src/store/memory.ts +++ b/src/store/memory.ts @@ -258,7 +258,7 @@ export class MemoryStore implements IStore { if (isValidFilterId(value)) { return value; } - } catch (e) {} + } catch {} return null; } @@ -276,7 +276,7 @@ export class MemoryStore implements IStore { } else { this.localStorage.removeItem(key); } - } catch (e) {} + } catch {} } /** diff --git a/src/webrtc/groupCall.ts b/src/webrtc/groupCall.ts index 5fd6985cc1d..6f0266d4a13 100644 --- a/src/webrtc/groupCall.ts +++ b/src/webrtc/groupCall.ts @@ -782,7 +782,7 @@ export class GroupCall extends TypedEventEmitter< return false; } } - } catch (e) { + } catch { /* istanbul ignore next */ logger.log( `GroupCall ${this.groupCallId} setMicrophoneMuted() no device or permission to receive local stream, muted=${muted}`, @@ -817,7 +817,7 @@ export class GroupCall extends TypedEventEmitter< await this.updateLocalUsermediaStream(stream); this.localCallFeed.setAudioVideoMuted(null, muted); setTracksEnabled(this.localCallFeed.stream.getVideoTracks(), !muted); - } catch (_) { + } catch { // No permission to video device /* istanbul ignore next */ logger.log( diff --git a/src/webrtc/stats/callStatsReportSummary.ts b/src/webrtc/stats/callStatsReportSummary.ts index fc62ae3b3f1..6f524fff87e 100644 --- a/src/webrtc/stats/callStatsReportSummary.ts +++ b/src/webrtc/stats/callStatsReportSummary.ts @@ -17,7 +17,7 @@ export interface CallStatsReportSummary { audioTrackSummary: TrackSummary; videoTrackSummary: TrackSummary; - isFirstCollection: Boolean; + isFirstCollection: boolean; } export interface TrackSummary { diff --git a/src/webrtc/stats/trackStatsBuilder.ts b/src/webrtc/stats/trackStatsBuilder.ts index f6ef729872d..3e5999e1f1a 100644 --- a/src/webrtc/stats/trackStatsBuilder.ts +++ b/src/webrtc/stats/trackStatsBuilder.ts @@ -50,7 +50,7 @@ export class TrackStatsBuilder { */ const codecShortType = codec.mimeType.split("/")[1]; - codecShortType && trackStats.setCodec(codecShortType); + if (codecShortType) trackStats.setCodec(codecShortType); } } diff --git a/yarn.lock b/yarn.lock index cc903cd9407..7abca3502df 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1623,6 +1623,17 @@ ignore "^5.1.8" p-map "^4.0.0" +"@stylistic/eslint-plugin@^2.9.0": + version "2.9.0" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin/-/eslint-plugin-2.9.0.tgz#5ab3326303915e020ddaf39154290e2800a84bcd" + integrity sha512-OrDyFAYjBT61122MIY1a3SfEgy3YCMgt2vL4eoPmvTwDBwyQhAXurxNQznlRD/jESNfYWfID8Ej+31LljvF7Xg== + dependencies: + "@typescript-eslint/utils" "^8.8.0" + eslint-visitor-keys "^4.1.0" + espree "^10.2.0" + estraverse "^5.3.0" + picomatch "^4.0.2" + "@tootallnate/once@2": version "2.0.0" resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" @@ -1839,40 +1850,32 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^7.0.0": - version "7.18.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.18.0.tgz#b16d3cf3ee76bf572fdf511e79c248bdec619ea3" - integrity sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw== +"@typescript-eslint/eslint-plugin@^8.0.0": + version "8.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.9.0.tgz#bf0b25305b0bf014b4b194a6919103d7ac2a7907" + integrity sha512-Y1n621OCy4m7/vTXNlCbMVp87zSd7NH0L9cXD8aIpOaNlzeWxIK4+Q19A68gSmTNRZn92UjocVUWDthGxtqHFg== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.18.0" - "@typescript-eslint/type-utils" "7.18.0" - "@typescript-eslint/utils" "7.18.0" - "@typescript-eslint/visitor-keys" "7.18.0" + "@typescript-eslint/scope-manager" "8.9.0" + "@typescript-eslint/type-utils" "8.9.0" + "@typescript-eslint/utils" "8.9.0" + "@typescript-eslint/visitor-keys" "8.9.0" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" -"@typescript-eslint/parser@^7.0.0": - version "7.18.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.18.0.tgz#83928d0f1b7f4afa974098c64b5ce6f9051f96a0" - integrity sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg== +"@typescript-eslint/parser@^8.0.0": + version "8.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.9.0.tgz#0cecda6def8aef95d7c7098359c0fda5a362d6ad" + integrity sha512-U+BLn2rqTTHnc4FL3FJjxaXptTxmf9sNftJK62XLz4+GxG3hLHm/SUNaaXP5Y4uTiuYoL5YLy4JBCJe3+t8awQ== dependencies: - "@typescript-eslint/scope-manager" "7.18.0" - "@typescript-eslint/types" "7.18.0" - "@typescript-eslint/typescript-estree" "7.18.0" - "@typescript-eslint/visitor-keys" "7.18.0" + "@typescript-eslint/scope-manager" "8.9.0" + "@typescript-eslint/types" "8.9.0" + "@typescript-eslint/typescript-estree" "8.9.0" + "@typescript-eslint/visitor-keys" "8.9.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@7.18.0": - version "7.18.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz#c928e7a9fc2c0b3ed92ab3112c614d6bd9951c83" - integrity sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA== - dependencies: - "@typescript-eslint/types" "7.18.0" - "@typescript-eslint/visitor-keys" "7.18.0" - "@typescript-eslint/scope-manager@8.6.0": version "8.6.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.6.0.tgz#28cc2fc26a84b75addf45091a2c6283e29e2c982" @@ -1881,39 +1884,33 @@ "@typescript-eslint/types" "8.6.0" "@typescript-eslint/visitor-keys" "8.6.0" -"@typescript-eslint/type-utils@7.18.0": - version "7.18.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.18.0.tgz#2165ffaee00b1fbbdd2d40aa85232dab6998f53b" - integrity sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA== +"@typescript-eslint/scope-manager@8.9.0": + version "8.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.9.0.tgz#c98fef0c4a82a484e6a1eb610a55b154d14d46f3" + integrity sha512-bZu9bUud9ym1cabmOYH9S6TnbWRzpklVmwqICeOulTCZ9ue2/pczWzQvt/cGj2r2o1RdKoZbuEMalJJSYw3pHQ== dependencies: - "@typescript-eslint/typescript-estree" "7.18.0" - "@typescript-eslint/utils" "7.18.0" + "@typescript-eslint/types" "8.9.0" + "@typescript-eslint/visitor-keys" "8.9.0" + +"@typescript-eslint/type-utils@8.9.0": + version "8.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.9.0.tgz#aa86da3e4555fe7c8b42ab75e13561c4b5a8dfeb" + integrity sha512-JD+/pCqlKqAk5961vxCluK+clkppHY07IbV3vett97KOV+8C6l+CPEPwpUuiMwgbOz/qrN3Ke4zzjqbT+ls+1Q== + dependencies: + "@typescript-eslint/typescript-estree" "8.9.0" + "@typescript-eslint/utils" "8.9.0" debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@7.18.0": - version "7.18.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.18.0.tgz#b90a57ccdea71797ffffa0321e744f379ec838c9" - integrity sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ== - "@typescript-eslint/types@8.6.0": version "8.6.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.6.0.tgz#cdc3a16f83f2f0663d6723e9fd032331cdd9f51c" integrity sha512-rojqFZGd4MQxw33SrOy09qIDS8WEldM8JWtKQLAjf/X5mGSeEFh5ixQlxssMNyPslVIk9yzWqXCsV2eFhYrYUw== -"@typescript-eslint/typescript-estree@7.18.0": - version "7.18.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz#b5868d486c51ce8f312309ba79bdb9f331b37931" - integrity sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA== - dependencies: - "@typescript-eslint/types" "7.18.0" - "@typescript-eslint/visitor-keys" "7.18.0" - debug "^4.3.4" - globby "^11.1.0" - is-glob "^4.0.3" - minimatch "^9.0.4" - semver "^7.6.0" - ts-api-utils "^1.3.0" +"@typescript-eslint/types@8.9.0": + version "8.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.9.0.tgz#b733af07fb340b32e962c6c63b1062aec2dc0fe6" + integrity sha512-SjgkvdYyt1FAPhU9c6FiYCXrldwYYlIQLkuc+LfAhCna6ggp96ACncdtlbn8FmnG72tUkXclrDExOpEYf1nfJQ== "@typescript-eslint/typescript-estree@8.6.0": version "8.6.0" @@ -1929,15 +1926,29 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.18.0": - version "7.18.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.18.0.tgz#bca01cde77f95fc6a8d5b0dbcbfb3d6ca4be451f" - integrity sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw== +"@typescript-eslint/typescript-estree@8.9.0": + version "8.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.9.0.tgz#1714f167e9063062dc0df49c1d25afcbc7a96199" + integrity sha512-9iJYTgKLDG6+iqegehc5+EqE6sqaee7kb8vWpmHZ86EqwDjmlqNNHeqDVqb9duh+BY6WCNHfIGvuVU3Tf9Db0g== + dependencies: + "@typescript-eslint/types" "8.9.0" + "@typescript-eslint/visitor-keys" "8.9.0" + debug "^4.3.4" + fast-glob "^3.3.2" + is-glob "^4.0.3" + minimatch "^9.0.4" + semver "^7.6.0" + ts-api-utils "^1.3.0" + +"@typescript-eslint/utils@8.9.0", "@typescript-eslint/utils@^8.8.0": + version "8.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.9.0.tgz#748bbe3ea5bee526d9786d9405cf1b0df081c299" + integrity sha512-PKgMmaSo/Yg/F7kIZvrgrWa1+Vwn036CdNUvYFEkYbPwOH4i8xvkaRlu148W3vtheWK9ckKRIz7PBP5oUlkrvQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.18.0" - "@typescript-eslint/types" "7.18.0" - "@typescript-eslint/typescript-estree" "7.18.0" + "@typescript-eslint/scope-manager" "8.9.0" + "@typescript-eslint/types" "8.9.0" + "@typescript-eslint/typescript-estree" "8.9.0" "@typescript-eslint/utils@^6.0.0 || ^7.0.0 || ^8.0.0": version "8.6.0" @@ -1949,14 +1960,6 @@ "@typescript-eslint/types" "8.6.0" "@typescript-eslint/typescript-estree" "8.6.0" -"@typescript-eslint/visitor-keys@7.18.0": - version "7.18.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz#0564629b6124d67607378d0f0332a0495b25e7d7" - integrity sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg== - dependencies: - "@typescript-eslint/types" "7.18.0" - eslint-visitor-keys "^3.4.3" - "@typescript-eslint/visitor-keys@8.6.0": version "8.6.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.6.0.tgz#5432af4a1753f376f35ab5b891fc9db237aaf76f" @@ -1965,6 +1968,14 @@ "@typescript-eslint/types" "8.6.0" eslint-visitor-keys "^3.4.3" +"@typescript-eslint/visitor-keys@8.9.0": + version "8.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.9.0.tgz#5f11f4d9db913f37da42776893ffe0dd1ae78f78" + integrity sha512-Ht4y38ubk4L5/U8xKUBfKNYGmvKvA1CANoxiTRMM+tOLk3lbF3DvzZCxJCRSE+2GdCMSh6zq9VZJc3asc1XuAA== + dependencies: + "@typescript-eslint/types" "8.9.0" + eslint-visitor-keys "^3.4.3" + "@ungap/structured-clone@^1.0.0", "@ungap/structured-clone@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" @@ -2143,11 +2154,6 @@ array-includes@^3.1.8: get-intrinsic "^1.2.4" is-string "^1.0.7" -array-union@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" - integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== - array.prototype.findlastindex@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz#8c35a755c72908719453f87145ca011e39334d0d" @@ -2805,13 +2811,6 @@ diff@^4.0.1: resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - doctrine@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" @@ -3138,10 +3137,10 @@ eslint-plugin-jsdoc@^50.0.0: spdx-expression-parse "^4.0.0" synckit "^0.9.1" -eslint-plugin-matrix-org@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-matrix-org/-/eslint-plugin-matrix-org-1.2.1.tgz#76d1505daa93fb99ba4156008b9b32f57682c9b1" - integrity sha512-A3cDjhG7RHwfCS8o3bOip8hSCsxtmgk2ahvqE5v/Ic2kPEZxixY6w8zLj7hFGsrRmPSEpLWqkVLt8uvQBapiQA== +eslint-plugin-matrix-org@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-matrix-org/-/eslint-plugin-matrix-org-2.0.2.tgz#95b86b0f16704ab19740f7c3c62eae69e20365e6" + integrity sha512-cQy5Rjeq6uyu1mLXlPZwEJdyM0NmclrnEz68y792FSuuxzMyJNNYLGDQ5CkYW8H+PrD825HUFZ34pNXnjMOzOw== eslint-plugin-n@^14.0.0: version "14.0.0" @@ -3285,7 +3284,7 @@ eslint@8.57.1: strip-ansi "^6.0.1" text-table "^0.2.0" -espree@^10.1.0: +espree@^10.1.0, espree@^10.2.0: version "10.2.0" resolved "https://registry.yarnpkg.com/espree/-/espree-10.2.0.tgz#f4bcead9e05b0615c968e85f83816bc386a45df6" integrity sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g== @@ -3327,7 +3326,7 @@ estraverse@^4.1.1: resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== -estraverse@^5.1.0, estraverse@^5.2.0: +estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== @@ -3414,7 +3413,7 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-glob@^3.2.9, fast-glob@^3.3.2: +fast-glob@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== @@ -3711,18 +3710,6 @@ globalthis@^1.0.3: define-properties "^1.2.1" gopd "^1.0.1" -globby@^11.1.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" - integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.2.9" - ignore "^5.2.0" - merge2 "^1.4.1" - slash "^3.0.0" - gopd@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" @@ -4986,7 +4973,7 @@ merge-stream@^2.0.0: resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== -merge2@^1.3.0, merge2@^1.4.1: +merge2@^1.3.0: version "1.4.1" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== @@ -5390,11 +5377,6 @@ path-to-regexp@^2.2.1: resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-2.4.0.tgz#35ce7f333d5616f1c1e1bfe266c3aba2e5b2e704" integrity sha512-G6zHoVqC6GGTQkZwF4lkuEyMbVOjoBKAEybQUypI1WTkqinCOrq2x6U2+phkJ1XsEMTy4LjtwPI7HW+NVrRR2w== -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== - picocolors@^1.0.0, picocolors@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59" @@ -5405,7 +5387,7 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -picomatch@^4.0.1: +picomatch@^4.0.1, picomatch@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== From b5c3f15a67c00e133d5c83e9560c14566bd77e6b Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Mon, 21 Oct 2024 15:21:05 +0200 Subject: [PATCH 480/595] Deprecate `MatrixClient.getDehydratedDevice` (#4467) --- src/client.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/client.ts b/src/client.ts index d3683fe3381..39cfa8e9629 100644 --- a/src/client.ts +++ b/src/client.ts @@ -1677,6 +1677,8 @@ export class MatrixClient extends TypedEventEmitter { try { From a6fb7530cb3320cac9c3e521f76ef0db72cbce82 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Mon, 21 Oct 2024 17:24:02 +0100 Subject: [PATCH 481/595] Organise MatrixRTCSession tests (#4453) None of the tests themselves should have changed --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 1908 +++++++++--------- 1 file changed, 924 insertions(+), 984 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index fab61029bb0..51f9cef3f70 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -55,167 +55,169 @@ describe("MatrixRTCSession", () => { sess = undefined; }); - it("Creates a room-scoped session from room state", () => { - const mockRoom = makeMockRoom([membershipTemplate]); - - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - expect(sess?.memberships.length).toEqual(1); - expect(sess?.memberships[0].callId).toEqual(""); - expect(sess?.memberships[0].scope).toEqual("m.room"); - expect(sess?.memberships[0].application).toEqual("m.call"); - expect(sess?.memberships[0].deviceId).toEqual("AAAAAAA"); - expect(sess?.memberships[0].membershipID).toEqual("bloop"); - expect(sess?.memberships[0].isExpired()).toEqual(false); - expect(sess?.callId).toEqual(""); - }); + describe("roomSessionForRoom", () => { + it("creates a room-scoped session from room state", () => { + const mockRoom = makeMockRoom([membershipTemplate]); - it("ignores expired memberships events", () => { - jest.useFakeTimers(); - const expiredMembership = Object.assign({}, membershipTemplate); - expiredMembership.expires = 1000; - expiredMembership.device_id = "EXPIRED"; - const mockRoom = makeMockRoom([membershipTemplate, expiredMembership]); - - jest.advanceTimersByTime(2000); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - expect(sess?.memberships.length).toEqual(1); - expect(sess?.memberships[0].deviceId).toEqual("AAAAAAA"); - jest.useRealTimers(); - }); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sess?.memberships.length).toEqual(1); + expect(sess?.memberships[0].callId).toEqual(""); + expect(sess?.memberships[0].scope).toEqual("m.room"); + expect(sess?.memberships[0].application).toEqual("m.call"); + expect(sess?.memberships[0].deviceId).toEqual("AAAAAAA"); + expect(sess?.memberships[0].membershipID).toEqual("bloop"); + expect(sess?.memberships[0].isExpired()).toEqual(false); + expect(sess?.callId).toEqual(""); + }); - it("ignores memberships events of members not in the room", () => { - const mockRoom = makeMockRoom([membershipTemplate]); - mockRoom.hasMembershipState = (state) => state === KnownMembership.Join; - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - expect(sess?.memberships.length).toEqual(0); - }); + it("ignores expired memberships events", () => { + jest.useFakeTimers(); + const expiredMembership = Object.assign({}, membershipTemplate); + expiredMembership.expires = 1000; + expiredMembership.device_id = "EXPIRED"; + const mockRoom = makeMockRoom([membershipTemplate, expiredMembership]); - it("honours created_ts", () => { - jest.useFakeTimers(); - jest.setSystemTime(500); - const expiredMembership = Object.assign({}, membershipTemplate); - expiredMembership.created_ts = 500; - expiredMembership.expires = 1000; - const mockRoom = makeMockRoom([expiredMembership]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - expect(sess?.memberships[0].getAbsoluteExpiry()).toEqual(1500); - jest.useRealTimers(); - }); + jest.advanceTimersByTime(2000); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sess?.memberships.length).toEqual(1); + expect(sess?.memberships[0].deviceId).toEqual("AAAAAAA"); + jest.useRealTimers(); + }); - it("returns empty session if no membership events are present", () => { - const mockRoom = makeMockRoom([]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - expect(sess?.memberships).toHaveLength(0); - }); + it("ignores memberships events of members not in the room", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + mockRoom.hasMembershipState = (state) => state === KnownMembership.Join; + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sess?.memberships.length).toEqual(0); + }); - it("safely ignores events with no memberships section", () => { - const roomId = randomString(8); - const event = { - getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), - getContent: jest.fn().mockReturnValue({}), - getSender: jest.fn().mockReturnValue("@mock:user.example"), - getTs: jest.fn().mockReturnValue(1000), - getLocalAge: jest.fn().mockReturnValue(0), - }; - const mockRoom = { - ...makeMockRoom([]), - roomId, - getLiveTimeline: jest.fn().mockReturnValue({ - getState: jest.fn().mockReturnValue({ - on: jest.fn(), - off: jest.fn(), - getStateEvents: (_type: string, _stateKey: string) => [event], - events: new Map([ - [ - EventType.GroupCallMemberPrefix, - { - size: () => true, - has: (_stateKey: string) => true, - get: (_stateKey: string) => event, - values: () => [event], - }, - ], - ]), + it("honours created_ts", () => { + jest.useFakeTimers(); + jest.setSystemTime(500); + const expiredMembership = Object.assign({}, membershipTemplate); + expiredMembership.created_ts = 500; + expiredMembership.expires = 1000; + const mockRoom = makeMockRoom([expiredMembership]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sess?.memberships[0].getAbsoluteExpiry()).toEqual(1500); + jest.useRealTimers(); + }); + + it("returns empty session if no membership events are present", () => { + const mockRoom = makeMockRoom([]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sess?.memberships).toHaveLength(0); + }); + + it("safely ignores events with no memberships section", () => { + const roomId = randomString(8); + const event = { + getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), + getContent: jest.fn().mockReturnValue({}), + getSender: jest.fn().mockReturnValue("@mock:user.example"), + getTs: jest.fn().mockReturnValue(1000), + getLocalAge: jest.fn().mockReturnValue(0), + }; + const mockRoom = { + ...makeMockRoom([]), + roomId, + getLiveTimeline: jest.fn().mockReturnValue({ + getState: jest.fn().mockReturnValue({ + on: jest.fn(), + off: jest.fn(), + getStateEvents: (_type: string, _stateKey: string) => [event], + events: new Map([ + [ + EventType.GroupCallMemberPrefix, + { + size: () => true, + has: (_stateKey: string) => true, + get: (_stateKey: string) => event, + values: () => [event], + }, + ], + ]), + }), }), - }), - }; - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom as unknown as Room); - expect(sess.memberships).toHaveLength(0); - }); + }; + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom as unknown as Room); + expect(sess.memberships).toHaveLength(0); + }); - it("safely ignores events with junk memberships section", () => { - const roomId = randomString(8); - const event = { - getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), - getContent: jest.fn().mockReturnValue({ memberships: ["i am a fish"] }), - getSender: jest.fn().mockReturnValue("@mock:user.example"), - getTs: jest.fn().mockReturnValue(1000), - getLocalAge: jest.fn().mockReturnValue(0), - }; - const mockRoom = { - ...makeMockRoom([]), - roomId, - getLiveTimeline: jest.fn().mockReturnValue({ - getState: jest.fn().mockReturnValue({ - on: jest.fn(), - off: jest.fn(), - getStateEvents: (_type: string, _stateKey: string) => [event], - events: new Map([ - [ - EventType.GroupCallMemberPrefix, - { - size: () => true, - has: (_stateKey: string) => true, - get: (_stateKey: string) => event, - values: () => [event], - }, - ], - ]), + it("safely ignores events with junk memberships section", () => { + const roomId = randomString(8); + const event = { + getType: jest.fn().mockReturnValue(EventType.GroupCallMemberPrefix), + getContent: jest.fn().mockReturnValue({ memberships: ["i am a fish"] }), + getSender: jest.fn().mockReturnValue("@mock:user.example"), + getTs: jest.fn().mockReturnValue(1000), + getLocalAge: jest.fn().mockReturnValue(0), + }; + const mockRoom = { + ...makeMockRoom([]), + roomId, + getLiveTimeline: jest.fn().mockReturnValue({ + getState: jest.fn().mockReturnValue({ + on: jest.fn(), + off: jest.fn(), + getStateEvents: (_type: string, _stateKey: string) => [event], + events: new Map([ + [ + EventType.GroupCallMemberPrefix, + { + size: () => true, + has: (_stateKey: string) => true, + get: (_stateKey: string) => event, + values: () => [event], + }, + ], + ]), + }), }), - }), - }; - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom as unknown as Room); - expect(sess.memberships).toHaveLength(0); - }); + }; + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom as unknown as Room); + expect(sess.memberships).toHaveLength(0); + }); - it("ignores memberships with no expires_ts", () => { - const expiredMembership = Object.assign({}, membershipTemplate); - (expiredMembership.expires as number | undefined) = undefined; - const mockRoom = makeMockRoom([expiredMembership]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - expect(sess.memberships).toHaveLength(0); - }); + it("ignores memberships with no expires_ts", () => { + const expiredMembership = Object.assign({}, membershipTemplate); + (expiredMembership.expires as number | undefined) = undefined; + const mockRoom = makeMockRoom([expiredMembership]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sess.memberships).toHaveLength(0); + }); - it("ignores memberships with no device_id", () => { - const testMembership = Object.assign({}, membershipTemplate); - (testMembership.device_id as string | undefined) = undefined; - const mockRoom = makeMockRoom([testMembership]); - const sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - expect(sess.memberships).toHaveLength(0); - }); + it("ignores memberships with no device_id", () => { + const testMembership = Object.assign({}, membershipTemplate); + (testMembership.device_id as string | undefined) = undefined; + const mockRoom = makeMockRoom([testMembership]); + const sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sess.memberships).toHaveLength(0); + }); - it("ignores memberships with no call_id", () => { - const testMembership = Object.assign({}, membershipTemplate); - (testMembership.call_id as string | undefined) = undefined; - const mockRoom = makeMockRoom([testMembership]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - expect(sess.memberships).toHaveLength(0); - }); + it("ignores memberships with no call_id", () => { + const testMembership = Object.assign({}, membershipTemplate); + (testMembership.call_id as string | undefined) = undefined; + const mockRoom = makeMockRoom([testMembership]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sess.memberships).toHaveLength(0); + }); - it("ignores memberships with no scope", () => { - const testMembership = Object.assign({}, membershipTemplate); - (testMembership.scope as string | undefined) = undefined; - const mockRoom = makeMockRoom([testMembership]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - expect(sess.memberships).toHaveLength(0); - }); + it("ignores memberships with no scope", () => { + const testMembership = Object.assign({}, membershipTemplate); + (testMembership.scope as string | undefined) = undefined; + const mockRoom = makeMockRoom([testMembership]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sess.memberships).toHaveLength(0); + }); - it("ignores anything that's not a room-scoped call (for now)", () => { - const testMembership = Object.assign({}, membershipTemplate); - testMembership.scope = "m.user"; - const mockRoom = makeMockRoom([testMembership]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - expect(sess.memberships).toHaveLength(0); + it("ignores anything that's not a room-scoped call (for now)", () => { + const testMembership = Object.assign({}, membershipTemplate); + testMembership.scope = "m.user"; + const mockRoom = makeMockRoom([testMembership]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sess.memberships).toHaveLength(0); + }); }); describe("updateCallMembershipEvent", () => { @@ -588,967 +590,905 @@ describe("MatrixRTCSession", () => { jest.useRealTimers(); } }); + }); - it("creates a key when joining", () => { - sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - const encryptionKeyChangedListener = jest.fn(); - sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); - sess?.reemitEncryptionKeys(); - expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); - expect(encryptionKeyChangedListener).toHaveBeenCalledWith( - expect.any(Uint8Array), - 0, - "@alice:example.org:AAAAAAA", - ); - }); - - it("sends keys when joining", async () => { - jest.useFakeTimers(); - try { - const eventSentPromise = new Promise((resolve) => { - sendEventMock.mockImplementation(resolve); - }); - - sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + describe("onMembershipsChanged", () => { + it("does not emit if no membership changes", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - await eventSentPromise; + const onMembershipsChanged = jest.fn(); + sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); + sess.onMembershipUpdate(); - expect(sendEventMock).toHaveBeenCalledWith( - expect.stringMatching(".*"), - "io.element.call.encryption_keys", - { - call_id: "", - device_id: "AAAAAAA", - keys: [ - { - index: 0, - key: expect.stringMatching(".*"), - }, - ], - sent_ts: Date.now(), - }, - ); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); - } finally { - jest.useRealTimers(); - } + expect(onMembershipsChanged).not.toHaveBeenCalled(); }); - it("does not send key if join called when already joined", () => { - sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + it("emits on membership changes", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + + const onMembershipsChanged = jest.fn(); + sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); - expect(client.sendStateEvent).toHaveBeenCalledTimes(1); - expect(client.sendEvent).toHaveBeenCalledTimes(1); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + mockRoom.getLiveTimeline().getState = jest.fn().mockReturnValue(makeMockRoomState([], mockRoom.roomId)); + sess.onMembershipUpdate(); - sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - expect(client.sendStateEvent).toHaveBeenCalledTimes(1); - expect(client.sendEvent).toHaveBeenCalledTimes(1); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + expect(onMembershipsChanged).toHaveBeenCalled(); }); - it("retries key sends", async () => { + it("emits an event at the time a membership event expires", () => { jest.useFakeTimers(); - let firstEventSent = false; - try { - const eventSentPromise = new Promise((resolve) => { - sendEventMock.mockImplementation(() => { - if (!firstEventSent) { - jest.advanceTimersByTime(10000); - - firstEventSent = true; - const e = new Error() as MatrixError; - e.data = {}; - throw e; - } else { - resolve(); - } - }); - }); + const membership = Object.assign({}, membershipTemplate); + const mockRoom = makeMockRoom([membership]); - sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - jest.advanceTimersByTime(10000); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + const membershipObject = sess.memberships[0]; - await eventSentPromise; + const onMembershipsChanged = jest.fn(); + sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); - expect(sendEventMock).toHaveBeenCalledTimes(2); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); + jest.advanceTimersByTime(61 * 1000 * 1000); + + expect(onMembershipsChanged).toHaveBeenCalledWith([membershipObject], []); + expect(sess?.memberships.length).toEqual(0); } finally { jest.useRealTimers(); } }); + }); - it("cancels key send event that fail", async () => { - const eventSentinel = {} as unknown as MatrixEvent; + describe("key management", () => { + describe("sending", () => { + let mockRoom: Room; + let sendStateEventMock: jest.Mock; + let sendDelayedStateMock: jest.Mock; + let sendEventMock: jest.Mock; + + beforeEach(() => { + sendStateEventMock = jest.fn(); + sendDelayedStateMock = jest.fn(); + sendEventMock = jest.fn(); + client.sendStateEvent = sendStateEventMock; + client._unstable_sendDelayedStateEvent = sendDelayedStateMock; + client.sendEvent = sendEventMock; - client.cancelPendingEvent = jest.fn(); - sendEventMock.mockImplementation(() => { - const e = new Error() as MatrixError; - e.data = {}; - e.event = eventSentinel; - throw e; + mockRoom = makeMockRoom([]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); }); - sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + afterEach(() => { + // stop the timers + sess!.leaveRoomSession(); + }); - expect(client.cancelPendingEvent).toHaveBeenCalledWith(eventSentinel); - }); + it("creates a key when joining", () => { + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess?.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + expect.any(Uint8Array), + 0, + "@alice:example.org:AAAAAAA", + ); + }); - it("Rotates key if a new member joins", async () => { - jest.useFakeTimers(); - try { - const mockRoom = makeMockRoom([membershipTemplate]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + it("sends keys when joining", async () => { + jest.useFakeTimers(); + try { + const eventSentPromise = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); - const keysSentPromise1 = new Promise((resolve) => { - sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); - }); + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - const firstKeysPayload = await keysSentPromise1; - expect(firstKeysPayload.keys).toHaveLength(1); - expect(firstKeysPayload.keys[0].index).toEqual(0); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + await eventSentPromise; - sendEventMock.mockClear(); - jest.advanceTimersByTime(10000); + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", + { + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + sent_ts: Date.now(), + }, + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + } finally { + jest.useRealTimers(); + } + }); - const keysSentPromise2 = new Promise((resolve) => { - sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); - }); + it("does not send key if join called when already joined", () => { + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - const onMembershipsChanged = jest.fn(); - sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); + expect(client.sendStateEvent).toHaveBeenCalledTimes(1); + expect(client.sendEvent).toHaveBeenCalledTimes(1); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); - const member2 = Object.assign({}, membershipTemplate, { - device_id: "BBBBBBB", - }); + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + expect(client.sendStateEvent).toHaveBeenCalledTimes(1); + expect(client.sendEvent).toHaveBeenCalledTimes(1); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + }); - mockRoom.getLiveTimeline().getState = jest - .fn() - .mockReturnValue(makeMockRoomState([membershipTemplate, member2], mockRoom.roomId)); - sess.onMembershipUpdate(); + it("retries key sends", async () => { + jest.useFakeTimers(); + let firstEventSent = false; + + try { + const eventSentPromise = new Promise((resolve) => { + sendEventMock.mockImplementation(() => { + if (!firstEventSent) { + jest.advanceTimersByTime(10000); + + firstEventSent = true; + const e = new Error() as MatrixError; + e.data = {}; + throw e; + } else { + resolve(); + } + }); + }); - jest.advanceTimersByTime(10000); + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + jest.advanceTimersByTime(10000); - const secondKeysPayload = await keysSentPromise2; + await eventSentPromise; - expect(sendEventMock).toHaveBeenCalled(); - expect(secondKeysPayload.keys).toHaveLength(1); - expect(secondKeysPayload.keys[0].index).toEqual(1); - expect(secondKeysPayload.keys[0].key).not.toEqual(firstKeysPayload.keys[0].key); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); - } finally { - jest.useRealTimers(); - } - }); + expect(sendEventMock).toHaveBeenCalledTimes(2); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); + } finally { + jest.useRealTimers(); + } + }); - it("Does not re-send key if memberships stays same", async () => { - jest.useFakeTimers(); - try { - const keysSentPromise1 = new Promise((resolve) => { - sendEventMock.mockImplementation(resolve); - }); + it("cancels key send event that fail", async () => { + const eventSentinel = {} as unknown as MatrixEvent; - const member1 = membershipTemplate; - const member2 = Object.assign({}, membershipTemplate, { - device_id: "BBBBBBB", + client.cancelPendingEvent = jest.fn(); + sendEventMock.mockImplementation(() => { + const e = new Error() as MatrixError; + e.data = {}; + e.event = eventSentinel; + throw e; }); - const mockRoom = makeMockRoom([member1, member2]); - mockRoom.getLiveTimeline().getState = jest - .fn() - .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId)); + sess!.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + expect(client.cancelPendingEvent).toHaveBeenCalledWith(eventSentinel); + }); - await keysSentPromise1; + it("rotates key if a new member joins", async () => { + jest.useFakeTimers(); + try { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - // make sure an encryption key was sent - expect(sendEventMock).toHaveBeenCalledWith( - expect.stringMatching(".*"), - "io.element.call.encryption_keys", - { - call_id: "", - device_id: "AAAAAAA", - keys: [ - { - index: 0, - key: expect.stringMatching(".*"), - }, - ], - sent_ts: Date.now(), - }, - ); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + const keysSentPromise1 = new Promise((resolve) => { + sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); + }); - sendEventMock.mockClear(); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + const firstKeysPayload = await keysSentPromise1; + expect(firstKeysPayload.keys).toHaveLength(1); + expect(firstKeysPayload.keys[0].index).toEqual(0); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); - // these should be a no-op: - sess.onMembershipUpdate(); - expect(sendEventMock).toHaveBeenCalledTimes(0); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); - } finally { - jest.useRealTimers(); - } - }); + sendEventMock.mockClear(); + jest.advanceTimersByTime(10000); - it("Re-sends key if a member changes membership ID", async () => { - jest.useFakeTimers(); - try { - const keysSentPromise1 = new Promise((resolve) => { - sendEventMock.mockImplementation(resolve); - }); + const keysSentPromise2 = new Promise((resolve) => { + sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); + }); - const member1 = membershipTemplate; - const member2 = { - ...membershipTemplate, - device_id: "BBBBBBB", - }; + const onMembershipsChanged = jest.fn(); + sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); - const mockRoom = makeMockRoom([member1, member2]); - mockRoom.getLiveTimeline().getState = jest - .fn() - .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId)); + const member2 = Object.assign({}, membershipTemplate, { + device_id: "BBBBBBB", + }); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + mockRoom.getLiveTimeline().getState = jest + .fn() + .mockReturnValue(makeMockRoomState([membershipTemplate, member2], mockRoom.roomId)); + sess.onMembershipUpdate(); - await keysSentPromise1; + jest.advanceTimersByTime(10000); - // make sure an encryption key was sent - expect(sendEventMock).toHaveBeenCalledWith( - expect.stringMatching(".*"), - "io.element.call.encryption_keys", - { - call_id: "", - device_id: "AAAAAAA", - keys: [ - { - index: 0, - key: expect.stringMatching(".*"), - }, - ], - sent_ts: Date.now(), - }, - ); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + const secondKeysPayload = await keysSentPromise2; - sendEventMock.mockClear(); + expect(sendEventMock).toHaveBeenCalled(); + expect(secondKeysPayload.keys).toHaveLength(1); + expect(secondKeysPayload.keys[0].index).toEqual(1); + expect(secondKeysPayload.keys[0].key).not.toEqual(firstKeysPayload.keys[0].key); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); + } finally { + jest.useRealTimers(); + } + }); - // this should be a no-op: - sess.onMembershipUpdate(); - expect(sendEventMock).toHaveBeenCalledTimes(0); + it("does not re-send key if memberships stays same", async () => { + jest.useFakeTimers(); + try { + const keysSentPromise1 = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); - // advance time to avoid key throttling - jest.advanceTimersByTime(10000); + const member1 = membershipTemplate; + const member2 = Object.assign({}, membershipTemplate, { + device_id: "BBBBBBB", + }); - // update membership ID - member2.membershipID = "newID"; + const mockRoom = makeMockRoom([member1, member2]); + mockRoom.getLiveTimeline().getState = jest + .fn() + .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId)); - const keysSentPromise2 = new Promise((resolve) => { - sendEventMock.mockImplementation(resolve); - }); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - // this should re-send the key - sess.onMembershipUpdate(); + await keysSentPromise1; - await keysSentPromise2; + // make sure an encryption key was sent + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", + { + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + sent_ts: Date.now(), + }, + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); - expect(sendEventMock).toHaveBeenCalledWith( - expect.stringMatching(".*"), - "io.element.call.encryption_keys", - { - call_id: "", - device_id: "AAAAAAA", - keys: [ - { - index: 0, - key: expect.stringMatching(".*"), - }, - ], - sent_ts: Date.now(), - }, - ); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); - } finally { - jest.useRealTimers(); - } - }); + sendEventMock.mockClear(); - it("Re-sends key if a member changes created_ts", async () => { - jest.useFakeTimers(); - jest.setSystemTime(1000); - try { - const keysSentPromise1 = new Promise((resolve) => { - sendEventMock.mockImplementation(resolve); - }); + // these should be a no-op: + sess.onMembershipUpdate(); + expect(sendEventMock).toHaveBeenCalledTimes(0); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + } finally { + jest.useRealTimers(); + } + }); - const member1 = { ...membershipTemplate, created_ts: 1000 }; - const member2 = { - ...membershipTemplate, - created_ts: 1000, - device_id: "BBBBBBB", - }; + it("re-sends key if a member changes membership ID", async () => { + jest.useFakeTimers(); + try { + const keysSentPromise1 = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); - const mockRoom = makeMockRoom([member1, member2]); - mockRoom.getLiveTimeline().getState = jest - .fn() - .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId)); + const member1 = membershipTemplate; + const member2 = { + ...membershipTemplate, + device_id: "BBBBBBB", + }; - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + const mockRoom = makeMockRoom([member1, member2]); + mockRoom.getLiveTimeline().getState = jest + .fn() + .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId)); - await keysSentPromise1; + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - // make sure an encryption key was sent - expect(sendEventMock).toHaveBeenCalledWith( - expect.stringMatching(".*"), - "io.element.call.encryption_keys", - { - call_id: "", - device_id: "AAAAAAA", - keys: [ - { - index: 0, - key: expect.stringMatching(".*"), - }, - ], - sent_ts: Date.now(), - }, - ); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + await keysSentPromise1; - sendEventMock.mockClear(); + // make sure an encryption key was sent + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", + { + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + sent_ts: Date.now(), + }, + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); - // this should be a no-op: - sess.onMembershipUpdate(); - expect(sendEventMock).toHaveBeenCalledTimes(0); + sendEventMock.mockClear(); - // advance time to avoid key throttling - jest.advanceTimersByTime(10000); + // this should be a no-op: + sess.onMembershipUpdate(); + expect(sendEventMock).toHaveBeenCalledTimes(0); - // update created_ts - member2.created_ts = 5000; + // advance time to avoid key throttling + jest.advanceTimersByTime(10000); - const keysSentPromise2 = new Promise((resolve) => { - sendEventMock.mockImplementation(resolve); - }); + // update membership ID + member2.membershipID = "newID"; - // this should re-send the key - sess.onMembershipUpdate(); + const keysSentPromise2 = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); - await keysSentPromise2; + // this should re-send the key + sess.onMembershipUpdate(); - expect(sendEventMock).toHaveBeenCalledWith( - expect.stringMatching(".*"), - "io.element.call.encryption_keys", - { - call_id: "", - device_id: "AAAAAAA", - keys: [ - { - index: 0, - key: expect.stringMatching(".*"), - }, - ], - sent_ts: Date.now(), - }, - ); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); - } finally { - jest.useRealTimers(); - } - }); + await keysSentPromise2; - it("Rotates key if a member leaves", async () => { - jest.useFakeTimers(); - try { - const member2 = Object.assign({}, membershipTemplate, { - device_id: "BBBBBBB", - }); - const mockRoom = makeMockRoom([membershipTemplate, member2]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", + { + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + sent_ts: Date.now(), + }, + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); + } finally { + jest.useRealTimers(); + } + }); - const onMyEncryptionKeyChanged = jest.fn(); - sess.on( - MatrixRTCSessionEvent.EncryptionKeyChanged, - (_key: Uint8Array, _idx: number, participantId: string) => { - if (participantId === `${client.getUserId()}:${client.getDeviceId()}`) { - onMyEncryptionKeyChanged(); - } - }, - ); + it("re-sends key if a member changes created_ts", async () => { + jest.useFakeTimers(); + jest.setSystemTime(1000); + try { + const keysSentPromise1 = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); - const keysSentPromise1 = new Promise((resolve) => { - sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); - }); + const member1 = { ...membershipTemplate, created_ts: 1000 }; + const member2 = { + ...membershipTemplate, + created_ts: 1000, + device_id: "BBBBBBB", + }; - sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - const firstKeysPayload = await keysSentPromise1; - expect(firstKeysPayload.keys).toHaveLength(1); - expect(firstKeysPayload.keys[0].index).toEqual(0); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + const mockRoom = makeMockRoom([member1, member2]); + mockRoom.getLiveTimeline().getState = jest + .fn() + .mockReturnValue(makeMockRoomState([member1, member2], mockRoom.roomId)); - sendEventMock.mockClear(); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - const keysSentPromise2 = new Promise((resolve) => { - sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); - }); + await keysSentPromise1; - mockRoom.getLiveTimeline().getState = jest - .fn() - .mockReturnValue(makeMockRoomState([membershipTemplate], mockRoom.roomId)); - sess.onMembershipUpdate(); + // make sure an encryption key was sent + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", + { + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + sent_ts: Date.now(), + }, + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); - jest.advanceTimersByTime(10000); + sendEventMock.mockClear(); - const secondKeysPayload = await keysSentPromise2; + // this should be a no-op: + sess.onMembershipUpdate(); + expect(sendEventMock).toHaveBeenCalledTimes(0); - expect(secondKeysPayload.keys).toHaveLength(1); - expect(secondKeysPayload.keys[0].index).toEqual(1); - expect(onMyEncryptionKeyChanged).toHaveBeenCalledTimes(2); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); - } finally { - jest.useRealTimers(); - } - }); + // advance time to avoid key throttling + jest.advanceTimersByTime(10000); - it("Wraps key index around to 0 when it reaches the maximum", async () => { - // this should give us keys with index [0...255, 0, 1] - const membersToTest = 258; - const members: CallMembershipData[] = []; - for (let i = 0; i < membersToTest; i++) { - members.push(Object.assign({}, membershipTemplate, { device_id: `DEVICE${i}` })); - } - jest.useFakeTimers(); - try { - // start with a single member - const mockRoom = makeMockRoom(members.slice(0, 1)); + // update created_ts + member2.created_ts = 5000; - for (let i = 0; i < membersToTest; i++) { - const keysSentPromise = new Promise((resolve) => { - sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); + const keysSentPromise2 = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); }); - if (i === 0) { - // if first time around then set up the session - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - } else { - // otherwise update the state - mockRoom.getLiveTimeline().getState = jest - .fn() - .mockReturnValue(makeMockRoomState(members.slice(0, i + 1), mockRoom.roomId)); - } - - sess!.onMembershipUpdate(); + // this should re-send the key + sess.onMembershipUpdate(); - // advance time to avoid key throttling - jest.advanceTimersByTime(10000); + await keysSentPromise2; - const keysPayload = await keysSentPromise; - expect(keysPayload.keys).toHaveLength(1); - expect(keysPayload.keys[0].index).toEqual(i % 256); + expect(sendEventMock).toHaveBeenCalledWith( + expect.stringMatching(".*"), + "io.element.call.encryption_keys", + { + call_id: "", + device_id: "AAAAAAA", + keys: [ + { + index: 0, + key: expect.stringMatching(".*"), + }, + ], + sent_ts: Date.now(), + }, + ); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); + } finally { + jest.useRealTimers(); } - } finally { - jest.useRealTimers(); - } - }); + }); - it("Doesn't re-send key immediately", async () => { - const realSetTimeout = setTimeout; - jest.useFakeTimers(); - try { - const mockRoom = makeMockRoom([membershipTemplate]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + it("rotates key if a member leaves", async () => { + jest.useFakeTimers(); + try { + const member2 = Object.assign({}, membershipTemplate, { + device_id: "BBBBBBB", + }); + const mockRoom = makeMockRoom([membershipTemplate, member2]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + + const onMyEncryptionKeyChanged = jest.fn(); + sess.on( + MatrixRTCSessionEvent.EncryptionKeyChanged, + (_key: Uint8Array, _idx: number, participantId: string) => { + if (participantId === `${client.getUserId()}:${client.getDeviceId()}`) { + onMyEncryptionKeyChanged(); + } + }, + ); - const keysSentPromise1 = new Promise((resolve) => { - sendEventMock.mockImplementation(resolve); - }); + const keysSentPromise1 = new Promise((resolve) => { + sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); + }); - sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - await keysSentPromise1; + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + const firstKeysPayload = await keysSentPromise1; + expect(firstKeysPayload.keys).toHaveLength(1); + expect(firstKeysPayload.keys[0].index).toEqual(0); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); - sendEventMock.mockClear(); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + sendEventMock.mockClear(); - const onMembershipsChanged = jest.fn(); - sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); + const keysSentPromise2 = new Promise((resolve) => { + sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); + }); - const member2 = Object.assign({}, membershipTemplate, { - device_id: "BBBBBBB", - }); + mockRoom.getLiveTimeline().getState = jest + .fn() + .mockReturnValue(makeMockRoomState([membershipTemplate], mockRoom.roomId)); + sess.onMembershipUpdate(); - mockRoom.getLiveTimeline().getState = jest - .fn() - .mockReturnValue(makeMockRoomState([membershipTemplate, member2], mockRoom.roomId)); - sess.onMembershipUpdate(); + jest.advanceTimersByTime(10000); - await new Promise((resolve) => { - realSetTimeout(resolve); - }); + const secondKeysPayload = await keysSentPromise2; - expect(sendEventMock).not.toHaveBeenCalled(); - expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); - } finally { - jest.useRealTimers(); - } - }); - }); + expect(secondKeysPayload.keys).toHaveLength(1); + expect(secondKeysPayload.keys[0].index).toEqual(1); + expect(onMyEncryptionKeyChanged).toHaveBeenCalledTimes(2); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); + } finally { + jest.useRealTimers(); + } + }); - it("Does not emit if no membership changes", () => { - const mockRoom = makeMockRoom([membershipTemplate]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + it("wraps key index around to 0 when it reaches the maximum", async () => { + // this should give us keys with index [0...255, 0, 1] + const membersToTest = 258; + const members: CallMembershipData[] = []; + for (let i = 0; i < membersToTest; i++) { + members.push(Object.assign({}, membershipTemplate, { device_id: `DEVICE${i}` })); + } + jest.useFakeTimers(); + try { + // start with a single member + const mockRoom = makeMockRoom(members.slice(0, 1)); + + for (let i = 0; i < membersToTest; i++) { + const keysSentPromise = new Promise((resolve) => { + sendEventMock.mockImplementation((_roomId, _evType, payload) => resolve(payload)); + }); + + if (i === 0) { + // if first time around then set up the session + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + } else { + // otherwise update the state + mockRoom.getLiveTimeline().getState = jest + .fn() + .mockReturnValue(makeMockRoomState(members.slice(0, i + 1), mockRoom.roomId)); + } - const onMembershipsChanged = jest.fn(); - sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); - sess.onMembershipUpdate(); + sess!.onMembershipUpdate(); - expect(onMembershipsChanged).not.toHaveBeenCalled(); - }); + // advance time to avoid key throttling + jest.advanceTimersByTime(10000); - it("Emits on membership changes", () => { - const mockRoom = makeMockRoom([membershipTemplate]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + const keysPayload = await keysSentPromise; + expect(keysPayload.keys).toHaveLength(1); + expect(keysPayload.keys[0].index).toEqual(i % 256); + } + } finally { + jest.useRealTimers(); + } + }); - const onMembershipsChanged = jest.fn(); - sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); + it("doesn't re-send key immediately", async () => { + const realSetTimeout = setTimeout; + jest.useFakeTimers(); + try { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - mockRoom.getLiveTimeline().getState = jest.fn().mockReturnValue(makeMockRoomState([], mockRoom.roomId)); - sess.onMembershipUpdate(); + const keysSentPromise1 = new Promise((resolve) => { + sendEventMock.mockImplementation(resolve); + }); - expect(onMembershipsChanged).toHaveBeenCalled(); - }); + sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); + await keysSentPromise1; - it("emits an event at the time a membership event expires", () => { - jest.useFakeTimers(); - try { - const membership = Object.assign({}, membershipTemplate); - const mockRoom = makeMockRoom([membership]); + sendEventMock.mockClear(); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - const membershipObject = sess.memberships[0]; + const onMembershipsChanged = jest.fn(); + sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); - const onMembershipsChanged = jest.fn(); - sess.on(MatrixRTCSessionEvent.MembershipsChanged, onMembershipsChanged); + const member2 = Object.assign({}, membershipTemplate, { + device_id: "BBBBBBB", + }); - jest.advanceTimersByTime(61 * 1000 * 1000); + mockRoom.getLiveTimeline().getState = jest + .fn() + .mockReturnValue(makeMockRoomState([membershipTemplate, member2], mockRoom.roomId)); + sess.onMembershipUpdate(); - expect(onMembershipsChanged).toHaveBeenCalledWith([membershipObject], []); - expect(sess?.memberships.length).toEqual(0); - } finally { - jest.useRealTimers(); - } - }); + await new Promise((resolve) => { + realSetTimeout(resolve); + }); - it("prunes expired memberships on update", () => { - jest.useFakeTimers(); - try { - client.sendStateEvent = jest.fn(); + expect(sendEventMock).not.toHaveBeenCalled(); + expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); + } finally { + jest.useRealTimers(); + } + }); + }); - const mockMemberships = [ - Object.assign({}, membershipTemplate, { - device_id: "OTHERDEVICE", - expires: 1000, - }), - ]; - const mockRoomNoExpired = makeMockRoom(mockMemberships); + describe("receiving", () => { + it("collects keys from encryption events", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), + } as unknown as MatrixEvent); + + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("this is the key", "utf-8"), + 0, + "@bob:example.org:bobsphone", + ); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoomNoExpired); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); + }); - // sanity check - expect(sess.memberships).toHaveLength(1); - expect(sess.memberships[0].deviceId).toEqual("OTHERDEVICE"); + it("collects keys at non-zero indices", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 4, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), + } as unknown as MatrixEvent); + + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("this is the key", "utf-8"), + 4, + "@bob:example.org:bobsphone", + ); - jest.advanceTimersByTime(10000); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); + }); - sess.joinRoomSession([mockFocus], mockFocus); + it("collects keys by merging", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), + } as unknown as MatrixEvent); + + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("this is the key", "utf-8"), + 0, + "@bob:example.org:bobsphone", + ); - expect(client.sendStateEvent).toHaveBeenCalledWith( - mockRoomNoExpired!.roomId, - EventType.GroupCallMemberPrefix, - { - memberships: [ - { - application: "m.call", - scope: "m.room", - call_id: "", - device_id: "AAAAAAA", - expires: 3600000, - expires_ts: Date.now() + 3600000, - foci_active: [mockFocus], - membershipID: expect.stringMatching(".*"), - }, - ], - }, - "@alice:example.org", - ); - } finally { - jest.useRealTimers(); - } - }); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); - it("fills in created_ts for other memberships on update", () => { - client.sendStateEvent = jest.fn(); - jest.useFakeTimers(); - jest.setSystemTime(1000); - const mockRoom = makeMockRoom([ - Object.assign({}, membershipTemplate, { - device_id: "OTHERDEVICE", - }), - ]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - - sess.joinRoomSession([mockFocus], mockFocus); - - expect(client.sendStateEvent).toHaveBeenCalledWith( - mockRoom!.roomId, - EventType.GroupCallMemberPrefix, - { - memberships: [ - { - application: "m.call", - scope: "m.room", - call_id: "", - device_id: "OTHERDEVICE", - expires: 3600000, - created_ts: 1000, - foci_active: [{ type: "livekit", livekit_service_url: "https://lk.url" }], - membershipID: expect.stringMatching(".*"), - }, - { - application: "m.call", - scope: "m.room", + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", call_id: "", - device_id: "AAAAAAA", - expires: 3600000, - expires_ts: Date.now() + 3600000, - foci_active: [mockFocus], - membershipID: expect.stringMatching(".*"), - }, - ], - }, - "@alice:example.org", - ); - jest.useRealTimers(); - }); - - it("collects keys from encryption events", () => { - const mockRoom = makeMockRoom([membershipTemplate]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: "bobsphone", - call_id: "", - keys: [ - { - index: 0, - key: "dGhpcyBpcyB0aGUga2V5", - }, - ], - }), - getSender: jest.fn().mockReturnValue("@bob:example.org"), - getTs: jest.fn().mockReturnValue(Date.now()), - } as unknown as MatrixEvent); - - const encryptionKeyChangedListener = jest.fn(); - sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); - sess!.reemitEncryptionKeys(); - expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); - expect(encryptionKeyChangedListener).toHaveBeenCalledWith( - Buffer.from("this is the key", "utf-8"), - 0, - "@bob:example.org:bobsphone", - ); - - expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); - }); + keys: [ + { + index: 4, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), + } as unknown as MatrixEvent); + + encryptionKeyChangedListener.mockClear(); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(2); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("this is the key", "utf-8"), + 0, + "@bob:example.org:bobsphone", + ); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("this is the key", "utf-8"), + 4, + "@bob:example.org:bobsphone", + ); - it("collects keys at non-zero indices", () => { - const mockRoom = makeMockRoom([membershipTemplate]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: "bobsphone", - call_id: "", - keys: [ - { - index: 4, - key: "dGhpcyBpcyB0aGUga2V5", - }, - ], - }), - getSender: jest.fn().mockReturnValue("@bob:example.org"), - getTs: jest.fn().mockReturnValue(Date.now()), - } as unknown as MatrixEvent); - - const encryptionKeyChangedListener = jest.fn(); - sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); - sess!.reemitEncryptionKeys(); - expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); - expect(encryptionKeyChangedListener).toHaveBeenCalledWith( - Buffer.from("this is the key", "utf-8"), - 4, - "@bob:example.org:bobsphone", - ); - - expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); - }); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(2); + }); - it("collects keys by merging", () => { - const mockRoom = makeMockRoom([membershipTemplate]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: "bobsphone", - call_id: "", - keys: [ - { - index: 0, - key: "dGhpcyBpcyB0aGUga2V5", - }, - ], - }), - getSender: jest.fn().mockReturnValue("@bob:example.org"), - getTs: jest.fn().mockReturnValue(Date.now()), - } as unknown as MatrixEvent); - - const encryptionKeyChangedListener = jest.fn(); - sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); - sess!.reemitEncryptionKeys(); - expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); - expect(encryptionKeyChangedListener).toHaveBeenCalledWith( - Buffer.from("this is the key", "utf-8"), - 0, - "@bob:example.org:bobsphone", - ); - - expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(1); - - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: "bobsphone", - call_id: "", - keys: [ - { - index: 4, - key: "dGhpcyBpcyB0aGUga2V5", - }, - ], - }), - getSender: jest.fn().mockReturnValue("@bob:example.org"), - getTs: jest.fn().mockReturnValue(Date.now()), - } as unknown as MatrixEvent); - - encryptionKeyChangedListener.mockClear(); - sess!.reemitEncryptionKeys(); - expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(2); - expect(encryptionKeyChangedListener).toHaveBeenCalledWith( - Buffer.from("this is the key", "utf-8"), - 0, - "@bob:example.org:bobsphone", - ); - expect(encryptionKeyChangedListener).toHaveBeenCalledWith( - Buffer.from("this is the key", "utf-8"), - 4, - "@bob:example.org:bobsphone", - ); - - expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(2); - }); + it("ignores older keys at same index", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: encodeBase64(Buffer.from("newer key", "utf-8")), + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(2000), + } as unknown as MatrixEvent); + + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: encodeBase64(Buffer.from("older key", "utf-8")), + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(1000), // earlier timestamp than the newer key + } as unknown as MatrixEvent); + + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("newer key", "utf-8"), + 0, + "@bob:example.org:bobsphone", + ); - it("ignores older keys at same index", () => { - const mockRoom = makeMockRoom([membershipTemplate]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: "bobsphone", - call_id: "", - keys: [ - { - index: 0, - key: encodeBase64(Buffer.from("newer key", "utf-8")), - }, - ], - }), - getSender: jest.fn().mockReturnValue("@bob:example.org"), - getTs: jest.fn().mockReturnValue(2000), - } as unknown as MatrixEvent); - - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: "bobsphone", - call_id: "", - keys: [ - { - index: 0, - key: encodeBase64(Buffer.from("older key", "utf-8")), - }, - ], - }), - getSender: jest.fn().mockReturnValue("@bob:example.org"), - getTs: jest.fn().mockReturnValue(1000), // earlier timestamp than the newer key - } as unknown as MatrixEvent); - - const encryptionKeyChangedListener = jest.fn(); - sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); - sess!.reemitEncryptionKeys(); - expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); - expect(encryptionKeyChangedListener).toHaveBeenCalledWith( - Buffer.from("newer key", "utf-8"), - 0, - "@bob:example.org:bobsphone", - ); - - expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(2); - }); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(2); + }); - it("key timestamps are treated as monotonic", () => { - const mockRoom = makeMockRoom([membershipTemplate]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: "bobsphone", - call_id: "", - keys: [ - { - index: 0, - key: encodeBase64(Buffer.from("first key", "utf-8")), - }, - ], - }), - getSender: jest.fn().mockReturnValue("@bob:example.org"), - getTs: jest.fn().mockReturnValue(1000), - } as unknown as MatrixEvent); - - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: "bobsphone", - call_id: "", - keys: [ - { - index: 0, - key: encodeBase64(Buffer.from("second key", "utf-8")), - }, - ], - }), - getSender: jest.fn().mockReturnValue("@bob:example.org"), - getTs: jest.fn().mockReturnValue(1000), // same timestamp as the first key - } as unknown as MatrixEvent); - - const encryptionKeyChangedListener = jest.fn(); - sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); - sess!.reemitEncryptionKeys(); - expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); - expect(encryptionKeyChangedListener).toHaveBeenCalledWith( - Buffer.from("second key", "utf-8"), - 0, - "@bob:example.org:bobsphone", - ); - }); + it("key timestamps are treated as monotonic", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: encodeBase64(Buffer.from("first key", "utf-8")), + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(1000), + } as unknown as MatrixEvent); + + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: encodeBase64(Buffer.from("second key", "utf-8")), + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(1000), // same timestamp as the first key + } as unknown as MatrixEvent); + + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(1); + expect(encryptionKeyChangedListener).toHaveBeenCalledWith( + Buffer.from("second key", "utf-8"), + 0, + "@bob:example.org:bobsphone", + ); + }); - it("ignores keys event for the local participant", () => { - const mockRoom = makeMockRoom([membershipTemplate]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: client.getDeviceId(), - call_id: "", - keys: [ - { - index: 4, - key: "dGhpcyBpcyB0aGUga2V5", - }, - ], - }), - getSender: jest.fn().mockReturnValue(client.getUserId()), - getTs: jest.fn().mockReturnValue(Date.now()), - } as unknown as MatrixEvent); - - const encryptionKeyChangedListener = jest.fn(); - sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); - sess!.reemitEncryptionKeys(); - expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(0); - - expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(0); - }); + it("ignores keys event for the local participant", () => { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: client.getDeviceId(), + call_id: "", + keys: [ + { + index: 4, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + }), + getSender: jest.fn().mockReturnValue(client.getUserId()), + getTs: jest.fn().mockReturnValue(Date.now()), + } as unknown as MatrixEvent); - it("tracks total age statistics for collected keys", () => { - jest.useFakeTimers(); - try { - const mockRoom = makeMockRoom([membershipTemplate]); - sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + const encryptionKeyChangedListener = jest.fn(); + sess!.on(MatrixRTCSessionEvent.EncryptionKeyChanged, encryptionKeyChangedListener); + sess!.reemitEncryptionKeys(); + expect(encryptionKeyChangedListener).toHaveBeenCalledTimes(0); - // defaults to getTs() - jest.setSystemTime(1000); - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: "bobsphone", - call_id: "", - keys: [ - { - index: 0, - key: "dGhpcyBpcyB0aGUga2V5", - }, - ], - }), - getSender: jest.fn().mockReturnValue("@bob:example.org"), - getTs: jest.fn().mockReturnValue(0), - } as unknown as MatrixEvent); - expect(sess!.statistics.totals.roomEventEncryptionKeysReceivedTotalAge).toEqual(1000); - - jest.setSystemTime(2000); - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: "bobsphone", - call_id: "", - keys: [ - { - index: 0, - key: "dGhpcyBpcyB0aGUga2V5", - }, - ], - sent_ts: 0, - }), - getSender: jest.fn().mockReturnValue("@bob:example.org"), - getTs: jest.fn().mockReturnValue(Date.now()), - } as unknown as MatrixEvent); - expect(sess!.statistics.totals.roomEventEncryptionKeysReceivedTotalAge).toEqual(3000); + expect(sess!.statistics.counters.roomEventEncryptionKeysReceived).toEqual(0); + }); - jest.setSystemTime(3000); - sess.onCallEncryption({ - getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), - getContent: jest.fn().mockReturnValue({ - device_id: "bobsphone", - call_id: "", - keys: [ - { - index: 0, - key: "dGhpcyBpcyB0aGUga2V5", - }, - ], - sent_ts: 1000, - }), - getSender: jest.fn().mockReturnValue("@bob:example.org"), - getTs: jest.fn().mockReturnValue(Date.now()), - } as unknown as MatrixEvent); - expect(sess!.statistics.totals.roomEventEncryptionKeysReceivedTotalAge).toEqual(5000); - } finally { - jest.useRealTimers(); - } + it("tracks total age statistics for collected keys", () => { + jest.useFakeTimers(); + try { + const mockRoom = makeMockRoom([membershipTemplate]); + sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); + + // defaults to getTs() + jest.setSystemTime(1000); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(0), + } as unknown as MatrixEvent); + expect(sess!.statistics.totals.roomEventEncryptionKeysReceivedTotalAge).toEqual(1000); + + jest.setSystemTime(2000); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + sent_ts: 0, + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), + } as unknown as MatrixEvent); + expect(sess!.statistics.totals.roomEventEncryptionKeysReceivedTotalAge).toEqual(3000); + + jest.setSystemTime(3000); + sess.onCallEncryption({ + getType: jest.fn().mockReturnValue("io.element.call.encryption_keys"), + getContent: jest.fn().mockReturnValue({ + device_id: "bobsphone", + call_id: "", + keys: [ + { + index: 0, + key: "dGhpcyBpcyB0aGUga2V5", + }, + ], + sent_ts: 1000, + }), + getSender: jest.fn().mockReturnValue("@bob:example.org"), + getTs: jest.fn().mockReturnValue(Date.now()), + } as unknown as MatrixEvent); + expect(sess!.statistics.totals.roomEventEncryptionKeysReceivedTotalAge).toEqual(5000); + } finally { + jest.useRealTimers(); + } + }); + }); }); }); From d8c431f23ec621808ec03b1d281047c219aec531 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 22 Oct 2024 11:58:01 +0000 Subject: [PATCH 482/595] v34.9.0 --- CHANGELOG.md | 12 ++++++++++++ package.json | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9b4264fc1bc..d457c58fe80 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,15 @@ +Changes in [34.9.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.9.0) (2024-10-22) +================================================================================================== +## 🦖 Deprecations + +* Deprecate the crypto events which are not used by the rust-crypto ([#4442](https://github.com/matrix-org/matrix-js-sdk/pull/4442)). Contributed by @florianduros. + +## 🐛 Bug Fixes + +* Fix the rust crypto import in esm environments. ([#4445](https://github.com/matrix-org/matrix-js-sdk/pull/4445)). Contributed by @saul-jb. +* Fix MatrixRTC sender key wrapping ([#4441](https://github.com/matrix-org/matrix-js-sdk/pull/4441)). Contributed by @hughns. + + Changes in [34.8.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.8.0) (2024-10-15) ================================================================================================== This release removes insecure functionality, resolving CVE-2024-47080 / GHSA-4jf8-g8wp-cx7c. diff --git a/package.json b/package.json index a88b79cb1d3..f1202e5a5ce 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.9.0-rc.0", + "version": "34.9.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From 23c4c9fd8a515e1bf4adadbdfafafdd95b7d0c42 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 24 Oct 2024 14:19:29 +0100 Subject: [PATCH 483/595] Remove abandoned MSC3886, MSC3903, MSC3906 implementations (#4469) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/rendezvous/ecdhv2.spec.ts | 171 ----- spec/unit/rendezvous/rendezvous.spec.ts | 712 ------------------ .../rendezvous/simpleHttpTransport.spec.ts | 453 ----------- src/rendezvous/MSC3906Rendezvous.ts | 276 ------- src/rendezvous/RendezvousFailureReason.ts | 15 +- .../MSC3903ECDHv2RendezvousChannel.ts | 261 ------- src/rendezvous/channels/index.ts | 4 - src/rendezvous/index.ts | 4 - .../MSC3886SimpleHttpRendezvousTransport.ts | 196 ----- src/rendezvous/transports/index.ts | 4 - 10 files changed, 1 insertion(+), 2095 deletions(-) delete mode 100644 spec/unit/rendezvous/ecdhv2.spec.ts delete mode 100644 spec/unit/rendezvous/rendezvous.spec.ts delete mode 100644 spec/unit/rendezvous/simpleHttpTransport.spec.ts delete mode 100644 src/rendezvous/MSC3906Rendezvous.ts delete mode 100644 src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts delete mode 100644 src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts diff --git a/spec/unit/rendezvous/ecdhv2.spec.ts b/spec/unit/rendezvous/ecdhv2.spec.ts deleted file mode 100644 index 1fd3f7cac18..00000000000 --- a/spec/unit/rendezvous/ecdhv2.spec.ts +++ /dev/null @@ -1,171 +0,0 @@ -/* -Copyright 2022 The Matrix.org Foundation C.I.C. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -import "../../olm-loader"; -import { LegacyRendezvousFailureReason as RendezvousFailureReason, RendezvousIntent } from "../../../src/rendezvous"; -import { MSC3903ECDHPayload, MSC3903ECDHv2RendezvousChannel } from "../../../src/rendezvous/channels"; -import { decodeBase64 } from "../../../src/base64"; -import { DummyTransport } from "./DummyTransport"; - -function makeTransport(name: string) { - return new DummyTransport(name, { type: "dummy" }); -} - -describe("ECDHv2", function () { - beforeAll(async function () { - await global.Olm.init(); - }); - - describe("with crypto", () => { - it("initiator wants to sign in", async function () { - const aliceTransport = makeTransport("Alice"); - const bobTransport = makeTransport("Bob"); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is signing in initiates and generates a code - const alice = new MSC3903ECDHv2RendezvousChannel(aliceTransport); - const aliceCode = await alice.generateCode(RendezvousIntent.LOGIN_ON_NEW_DEVICE); - const bob = new MSC3903ECDHv2RendezvousChannel(bobTransport, decodeBase64(aliceCode.rendezvous.key)); - - const bobChecksum = await bob.connect(); - const aliceChecksum = await alice.connect(); - - expect(aliceChecksum).toEqual(bobChecksum); - - const message = { key: "xxx" }; - await alice.send(message); - const bobReceive = await bob.receive(); - expect(bobReceive).toEqual(message); - - await alice.cancel(RendezvousFailureReason.Unknown); - await bob.cancel(RendezvousFailureReason.Unknown); - }); - - it("initiator wants to reciprocate", async function () { - const aliceTransport = makeTransport("Alice"); - const bobTransport = makeTransport("Bob"); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is signing in initiates and generates a code - const alice = new MSC3903ECDHv2RendezvousChannel(aliceTransport); - const aliceCode = await alice.generateCode(RendezvousIntent.LOGIN_ON_NEW_DEVICE); - const bob = new MSC3903ECDHv2RendezvousChannel(bobTransport, decodeBase64(aliceCode.rendezvous.key)); - - const bobChecksum = await bob.connect(); - const aliceChecksum = await alice.connect(); - - expect(aliceChecksum).toEqual(bobChecksum); - - const message = { key: "xxx" }; - await bob.send(message); - const aliceReceive = await alice.receive(); - expect(aliceReceive).toEqual(message); - - await alice.cancel(RendezvousFailureReason.Unknown); - await bob.cancel(RendezvousFailureReason.Unknown); - }); - - it("double connect", async function () { - const aliceTransport = makeTransport("Alice"); - const bobTransport = makeTransport("Bob"); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is signing in initiates and generates a code - const alice = new MSC3903ECDHv2RendezvousChannel(aliceTransport); - const aliceCode = await alice.generateCode(RendezvousIntent.LOGIN_ON_NEW_DEVICE); - const bob = new MSC3903ECDHv2RendezvousChannel(bobTransport, decodeBase64(aliceCode.rendezvous.key)); - - const bobChecksum = await bob.connect(); - const aliceChecksum = await alice.connect(); - - expect(aliceChecksum).toEqual(bobChecksum); - - await expect(alice.connect()).rejects.toThrow(); - - await alice.cancel(RendezvousFailureReason.Unknown); - await bob.cancel(RendezvousFailureReason.Unknown); - }); - - it("closed", async function () { - const aliceTransport = makeTransport("Alice"); - const bobTransport = makeTransport("Bob"); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is signing in initiates and generates a code - const alice = new MSC3903ECDHv2RendezvousChannel(aliceTransport); - const aliceCode = await alice.generateCode(RendezvousIntent.LOGIN_ON_NEW_DEVICE); - const bob = new MSC3903ECDHv2RendezvousChannel(bobTransport, decodeBase64(aliceCode.rendezvous.key)); - - const bobChecksum = await bob.connect(); - const aliceChecksum = await alice.connect(); - - expect(aliceChecksum).toEqual(bobChecksum); - - alice.close(); - - await expect(alice.connect()).rejects.toThrow(); - await expect(alice.send({})).rejects.toThrow(); - await expect(alice.receive()).rejects.toThrow(); - - await alice.cancel(RendezvousFailureReason.Unknown); - await bob.cancel(RendezvousFailureReason.Unknown); - }); - - it("require ciphertext", async function () { - const aliceTransport = makeTransport("Alice"); - const bobTransport = makeTransport("Bob"); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is signing in initiates and generates a code - const alice = new MSC3903ECDHv2RendezvousChannel(aliceTransport); - const aliceCode = await alice.generateCode(RendezvousIntent.LOGIN_ON_NEW_DEVICE); - const bob = new MSC3903ECDHv2RendezvousChannel(bobTransport, decodeBase64(aliceCode.rendezvous.key)); - - const bobChecksum = await bob.connect(); - const aliceChecksum = await alice.connect(); - - expect(aliceChecksum).toEqual(bobChecksum); - - // send a message without encryption - await aliceTransport.send({ iv: "dummy", ciphertext: "dummy" }); - - await alice.cancel(RendezvousFailureReason.Unknown); - await bob.cancel(RendezvousFailureReason.Unknown); - await expect(bob.receive()).rejects.toThrow(); - }); - - it("ciphertext before set up", async function () { - const aliceTransport = makeTransport("Alice"); - const bobTransport = makeTransport("Bob"); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is signing in initiates and generates a code - const alice = new MSC3903ECDHv2RendezvousChannel(aliceTransport); - await alice.generateCode(RendezvousIntent.LOGIN_ON_NEW_DEVICE); - - await bobTransport.send({ iv: "dummy", ciphertext: "dummy" }); - - await alice.cancel(RendezvousFailureReason.Unknown); - await expect(alice.receive()).rejects.toThrow(); - }); - }); -}); diff --git a/spec/unit/rendezvous/rendezvous.spec.ts b/spec/unit/rendezvous/rendezvous.spec.ts deleted file mode 100644 index a208ffc590e..00000000000 --- a/spec/unit/rendezvous/rendezvous.spec.ts +++ /dev/null @@ -1,712 +0,0 @@ -/* -Copyright 2022 The Matrix.org Foundation C.I.C. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -import MockHttpBackend from "matrix-mock-request"; - -import "../../olm-loader"; -import { - MSC3906Rendezvous, - RendezvousCode, - LegacyRendezvousFailureReason as RendezvousFailureReason, - RendezvousIntent, -} from "../../../src/rendezvous"; -import { - ECDHv2RendezvousCode as ECDHRendezvousCode, - MSC3903ECDHPayload, - MSC3903ECDHv2RendezvousChannel as MSC3903ECDHRendezvousChannel, -} from "../../../src/rendezvous/channels"; -import { Device, MatrixClient } from "../../../src"; -import { - MSC3886SimpleHttpRendezvousTransport, - MSC3886SimpleHttpRendezvousTransportDetails, -} from "../../../src/rendezvous/transports"; -import { DummyTransport } from "./DummyTransport"; -import { decodeBase64 } from "../../../src/base64"; -import { logger } from "../../../src/logger"; -import { CrossSigningKey, OwnDeviceKeys } from "../../../src/crypto-api"; - -type UserID = string; -type DeviceID = string; -type Fingerprint = string; -type SimpleDeviceMap = Record>; - -function mockDevice(userId: UserID, deviceId: DeviceID, fingerprint: Fingerprint): Device { - return { - deviceId, - userId, - getFingerprint: () => fingerprint, - } as unknown as Device; -} - -function mockDeviceMap( - userId: UserID, - deviceId: DeviceID, - deviceKey?: Fingerprint, - otherDevices: SimpleDeviceMap = {}, -): Map> { - const deviceMap: Map> = new Map(); - - const myDevices: Map = new Map(); - if (deviceKey) { - myDevices.set(deviceId, mockDevice(userId, deviceId, deviceKey)); - } - deviceMap.set(userId, myDevices); - - for (const u in otherDevices) { - let userDevices = deviceMap.get(u); - if (!userDevices) { - userDevices = new Map(); - deviceMap.set(u, userDevices); - } - for (const d in otherDevices[u]) { - userDevices.set(d, mockDevice(u, d, otherDevices[u][d])); - } - } - - return deviceMap; -} - -function makeMockClient(opts: { - userId: UserID; - deviceId: DeviceID; - deviceKey?: Fingerprint; - getLoginTokenEnabled: boolean; - msc3882r0Only: boolean; - msc3886Enabled: boolean; - devices?: SimpleDeviceMap; - verificationFunction?: ( - userId: string, - deviceId: string, - verified: boolean, - blocked: boolean, - known: boolean, - ) => void; - crossSigningIds?: Partial>; -}): [MatrixClient, Map>] { - const deviceMap = mockDeviceMap(opts.userId, opts.deviceId, opts.deviceKey, opts.devices); - return [ - { - doesServerSupportUnstableFeature: jest.fn().mockImplementation((feature) => { - if (feature === "org.matrix.msc3886") { - return opts.msc3886Enabled; - } else if (feature === "org.matrix.msc3882") { - return opts.getLoginTokenEnabled; - } else { - return false; - } - }), - getVersions() { - return { - unstable_features: { - "org.matrix.msc3882": opts.getLoginTokenEnabled, - "org.matrix.msc3886": opts.msc3886Enabled, - }, - }; - }, - getCachedCapabilities() { - return opts.msc3882r0Only - ? {} - : { - capabilities: { - "m.get_login_token": { - enabled: opts.getLoginTokenEnabled, - }, - }, - }; - }, - getUserId() { - return opts.userId; - }, - getSafeUserId() { - return opts.userId; - }, - getDeviceId() { - return opts.deviceId; - }, - baseUrl: "https://example.com", - getCrypto() { - return { - getUserDeviceInfo( - [userId]: string[], - downloadUncached?: boolean, - ): Promise>> { - return Promise.resolve(deviceMap); - }, - getCrossSigningKeyId(key: CrossSigningKey): string | null { - return opts.crossSigningIds?.[key] ?? null; - }, - setDeviceVerified(userId: string, deviceId: string, verified: boolean): Promise { - return Promise.resolve(); - }, - crossSignDevice(deviceId: string): Promise { - return Promise.resolve(); - }, - getOwnDeviceKeys(): Promise { - return Promise.resolve({ - ed25519: opts.deviceKey!, - curve25519: "aaaa", - }); - }, - }; - }, - } as unknown as MatrixClient, - deviceMap, - ]; -} - -function makeTransport(name: string, uri = "https://test.rz/123456") { - return new DummyTransport(name, { type: "http.v1", uri }); -} - -describe("Rendezvous", function () { - beforeAll(async function () { - await global.Olm.init(); - }); - - let httpBackend: MockHttpBackend; - let fetchFn: typeof global.fetch; - let transports: DummyTransport[]; - const userId: UserID = "@user:example.com"; - - beforeEach(function () { - httpBackend = new MockHttpBackend(); - fetchFn = httpBackend.fetchFn as typeof global.fetch; - transports = []; - }); - - afterEach(function () { - transports.forEach((x) => x.cleanup()); - }); - - it("generate and cancel", async function () { - const [alice] = makeMockClient({ - userId, - deviceId: "ALICE", - msc3886Enabled: false, - getLoginTokenEnabled: true, - msc3882r0Only: true, - }); - httpBackend.when("POST", "https://fallbackserver/rz").response = { - body: null, - response: { - statusCode: 201, - headers: { - location: "https://fallbackserver/rz/123", - }, - }, - }; - const aliceTransport = new MSC3886SimpleHttpRendezvousTransport({ - client: alice, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - }); - const aliceEcdh = new MSC3903ECDHRendezvousChannel(aliceTransport); - const aliceRz = new MSC3906Rendezvous(aliceEcdh, alice); - - expect(aliceRz.code).toBeUndefined(); - - const codePromise = aliceRz.generateCode(); - await httpBackend.flush(""); - - await aliceRz.generateCode(); - - expect(typeof aliceRz.code).toBe("string"); - - await codePromise; - - const code = JSON.parse(aliceRz.code!) as RendezvousCode; - - expect(code.intent).toEqual(RendezvousIntent.RECIPROCATE_LOGIN_ON_EXISTING_DEVICE); - expect(code.rendezvous?.algorithm).toEqual("org.matrix.msc3903.rendezvous.v2.curve25519-aes-sha256"); - expect(code.rendezvous?.transport.type).toEqual("org.matrix.msc3886.http.v1"); - expect((code.rendezvous?.transport as MSC3886SimpleHttpRendezvousTransportDetails).uri).toEqual( - "https://fallbackserver/rz/123", - ); - - httpBackend.when("DELETE", "https://fallbackserver/rz").response = { - body: null, - response: { - statusCode: 204, - headers: {}, - }, - }; - - const cancelPromise = aliceRz.cancel(RendezvousFailureReason.UserDeclined); - await httpBackend.flush(""); - await expect(cancelPromise).resolves.toBeUndefined(); - httpBackend.verifyNoOutstandingExpectation(); - httpBackend.verifyNoOutstandingRequests(); - - await aliceRz.close(); - }); - - async function testNoProtocols({ - getLoginTokenEnabled, - msc3882r0Only, - }: { - getLoginTokenEnabled: boolean; - msc3882r0Only: boolean; - }) { - const aliceTransport = makeTransport("Alice"); - const bobTransport = makeTransport("Bob", "https://test.rz/999999"); - transports.push(aliceTransport, bobTransport); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is already signs in and generates a code - const aliceOnFailure = jest.fn(); - const [alice] = makeMockClient({ - userId, - deviceId: "ALICE", - msc3886Enabled: false, - getLoginTokenEnabled, - msc3882r0Only, - }); - const aliceEcdh = new MSC3903ECDHRendezvousChannel(aliceTransport, undefined, aliceOnFailure); - const aliceRz = new MSC3906Rendezvous(aliceEcdh, alice); - aliceTransport.onCancelled = aliceOnFailure; - await aliceRz.generateCode(); - const code = JSON.parse(aliceRz.code!) as ECDHRendezvousCode; - - expect(code.rendezvous.key).toBeDefined(); - - const aliceStartProm = aliceRz.startAfterShowingCode(); - - // bob is try to sign in and scans the code - const bobOnFailure = jest.fn(); - const bobEcdh = new MSC3903ECDHRendezvousChannel( - bobTransport, - decodeBase64(code.rendezvous.key), // alice's public key - bobOnFailure, - ); - - const bobStartPromise = (async () => { - const bobChecksum = await bobEcdh.connect(); - logger.info(`Bob checksums is ${bobChecksum} now sending intent`); - // await bobEcdh.send({ type: 'm.login.progress', intent: RendezvousIntent.LOGIN_ON_NEW_DEVICE }); - - // wait for protocols - logger.info("Bob waiting for protocols"); - const protocols = await bobEcdh.receive(); - - logger.info(`Bob protocols: ${JSON.stringify(protocols)}`); - - expect(protocols).toEqual({ - type: "m.login.finish", - outcome: "unsupported", - }); - })(); - - await aliceStartProm; - await bobStartPromise; - } - - it("no protocols - r0", async function () { - await testNoProtocols({ getLoginTokenEnabled: false, msc3882r0Only: true }); - }); - - it("no protocols - stable", async function () { - await testNoProtocols({ getLoginTokenEnabled: false, msc3882r0Only: false }); - }); - - it("new device declines protocol with outcome unsupported", async function () { - const aliceTransport = makeTransport("Alice", "https://test.rz/123456"); - const bobTransport = makeTransport("Bob", "https://test.rz/999999"); - transports.push(aliceTransport, bobTransport); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is already signs in and generates a code - const aliceOnFailure = jest.fn(); - const [alice] = makeMockClient({ - userId, - deviceId: "ALICE", - getLoginTokenEnabled: true, - msc3882r0Only: false, - msc3886Enabled: false, - }); - const aliceEcdh = new MSC3903ECDHRendezvousChannel(aliceTransport, undefined, aliceOnFailure); - const aliceRz = new MSC3906Rendezvous(aliceEcdh, alice); - aliceTransport.onCancelled = aliceOnFailure; - await aliceRz.generateCode(); - const code = JSON.parse(aliceRz.code!) as ECDHRendezvousCode; - - expect(code.rendezvous.key).toBeDefined(); - - const aliceStartProm = aliceRz.startAfterShowingCode(); - - // bob is try to sign in and scans the code - const bobOnFailure = jest.fn(); - const bobEcdh = new MSC3903ECDHRendezvousChannel( - bobTransport, - decodeBase64(code.rendezvous.key), // alice's public key - bobOnFailure, - ); - - const bobStartPromise = (async () => { - const bobChecksum = await bobEcdh.connect(); - logger.info(`Bob checksums is ${bobChecksum} now sending intent`); - // await bobEcdh.send({ type: 'm.login.progress', intent: RendezvousIntent.LOGIN_ON_NEW_DEVICE }); - - // wait for protocols - logger.info("Bob waiting for protocols"); - const protocols = await bobEcdh.receive(); - - logger.info(`Bob protocols: ${JSON.stringify(protocols)}`); - - expect(protocols).toEqual({ - type: "m.login.progress", - protocols: ["org.matrix.msc3906.login_token"], - }); - - await bobEcdh.send({ type: "m.login.finish", outcome: "unsupported" }); - })(); - - await aliceStartProm; - await bobStartPromise; - - expect(aliceOnFailure).toHaveBeenCalledWith(RendezvousFailureReason.UnsupportedAlgorithm); - }); - - it("new device requests an invalid protocol", async function () { - const aliceTransport = makeTransport("Alice", "https://test.rz/123456"); - const bobTransport = makeTransport("Bob", "https://test.rz/999999"); - transports.push(aliceTransport, bobTransport); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is already signs in and generates a code - const aliceOnFailure = jest.fn(); - const [alice] = makeMockClient({ - userId, - deviceId: "ALICE", - getLoginTokenEnabled: true, - msc3882r0Only: false, - msc3886Enabled: false, - }); - const aliceEcdh = new MSC3903ECDHRendezvousChannel(aliceTransport, undefined, aliceOnFailure); - const aliceRz = new MSC3906Rendezvous(aliceEcdh, alice); - aliceTransport.onCancelled = aliceOnFailure; - await aliceRz.generateCode(); - const code = JSON.parse(aliceRz.code!) as ECDHRendezvousCode; - - expect(code.rendezvous.key).toBeDefined(); - - const aliceStartProm = aliceRz.startAfterShowingCode(); - - // bob is try to sign in and scans the code - const bobOnFailure = jest.fn(); - const bobEcdh = new MSC3903ECDHRendezvousChannel( - bobTransport, - decodeBase64(code.rendezvous.key), // alice's public key - bobOnFailure, - ); - - const bobStartPromise = (async () => { - const bobChecksum = await bobEcdh.connect(); - logger.info(`Bob checksums is ${bobChecksum} now sending intent`); - // await bobEcdh.send({ type: 'm.login.progress', intent: RendezvousIntent.LOGIN_ON_NEW_DEVICE }); - - // wait for protocols - logger.info("Bob waiting for protocols"); - const protocols = await bobEcdh.receive(); - - logger.info(`Bob protocols: ${JSON.stringify(protocols)}`); - - expect(protocols).toEqual({ - type: "m.login.progress", - protocols: ["org.matrix.msc3906.login_token"], - }); - - await bobEcdh.send({ type: "m.login.progress", protocol: "bad protocol" }); - })(); - - await aliceStartProm; - await bobStartPromise; - - expect(aliceOnFailure).toHaveBeenCalledWith(RendezvousFailureReason.UnsupportedAlgorithm); - }); - - it("decline on existing device", async function () { - const aliceTransport = makeTransport("Alice", "https://test.rz/123456"); - const bobTransport = makeTransport("Bob", "https://test.rz/999999"); - transports.push(aliceTransport, bobTransport); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is already signs in and generates a code - const aliceOnFailure = jest.fn(); - const [alice] = makeMockClient({ - userId: "alice", - deviceId: "ALICE", - getLoginTokenEnabled: true, - msc3882r0Only: false, - msc3886Enabled: false, - }); - const aliceEcdh = new MSC3903ECDHRendezvousChannel(aliceTransport, undefined, aliceOnFailure); - const aliceRz = new MSC3906Rendezvous(aliceEcdh, alice); - aliceTransport.onCancelled = aliceOnFailure; - await aliceRz.generateCode(); - const code = JSON.parse(aliceRz.code!) as ECDHRendezvousCode; - - expect(code.rendezvous.key).toBeDefined(); - - const aliceStartProm = aliceRz.startAfterShowingCode(); - - // bob is try to sign in and scans the code - const bobOnFailure = jest.fn(); - const bobEcdh = new MSC3903ECDHRendezvousChannel( - bobTransport, - decodeBase64(code.rendezvous.key), // alice's public key - bobOnFailure, - ); - - const bobStartPromise = (async () => { - const bobChecksum = await bobEcdh.connect(); - logger.info(`Bob checksums is ${bobChecksum} now sending intent`); - // await bobEcdh.send({ type: 'm.login.progress', intent: RendezvousIntent.LOGIN_ON_NEW_DEVICE }); - - // wait for protocols - logger.info("Bob waiting for protocols"); - const protocols = await bobEcdh.receive(); - - logger.info(`Bob protocols: ${JSON.stringify(protocols)}`); - - expect(protocols).toEqual({ - type: "m.login.progress", - protocols: ["org.matrix.msc3906.login_token"], - }); - - await bobEcdh.send({ type: "m.login.progress", protocol: "org.matrix.msc3906.login_token" }); - })(); - - await aliceStartProm; - await bobStartPromise; - - await aliceRz.declineLoginOnExistingDevice(); - const loginToken = await bobEcdh.receive(); - expect(loginToken).toEqual({ type: "m.login.finish", outcome: "declined" }); - }); - - it("approve on existing device + no verification", async function () { - const aliceTransport = makeTransport("Alice", "https://test.rz/123456"); - const bobTransport = makeTransport("Bob", "https://test.rz/999999"); - transports.push(aliceTransport, bobTransport); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is already signs in and generates a code - const aliceOnFailure = jest.fn(); - const [alice] = makeMockClient({ - userId: "alice", - deviceId: "ALICE", - getLoginTokenEnabled: true, - msc3882r0Only: false, - msc3886Enabled: false, - }); - const aliceEcdh = new MSC3903ECDHRendezvousChannel(aliceTransport, undefined, aliceOnFailure); - const aliceRz = new MSC3906Rendezvous(aliceEcdh, alice); - aliceTransport.onCancelled = aliceOnFailure; - await aliceRz.generateCode(); - const code = JSON.parse(aliceRz.code!) as ECDHRendezvousCode; - - expect(code.rendezvous.key).toBeDefined(); - - const aliceStartProm = aliceRz.startAfterShowingCode(); - - // bob is try to sign in and scans the code - const bobOnFailure = jest.fn(); - const bobEcdh = new MSC3903ECDHRendezvousChannel( - bobTransport, - decodeBase64(code.rendezvous.key), // alice's public key - bobOnFailure, - ); - - const bobStartPromise = (async () => { - const bobChecksum = await bobEcdh.connect(); - logger.info(`Bob checksums is ${bobChecksum} now sending intent`); - // await bobEcdh.send({ type: 'm.login.progress', intent: RendezvousIntent.LOGIN_ON_NEW_DEVICE }); - - // wait for protocols - logger.info("Bob waiting for protocols"); - const protocols = await bobEcdh.receive(); - - logger.info(`Bob protocols: ${JSON.stringify(protocols)}`); - - expect(protocols).toEqual({ - type: "m.login.progress", - protocols: ["org.matrix.msc3906.login_token"], - }); - - await bobEcdh.send({ type: "m.login.progress", protocol: "org.matrix.msc3906.login_token" }); - })(); - - await aliceStartProm; - await bobStartPromise; - - const confirmProm = aliceRz.approveLoginOnExistingDevice("token"); - - const bobCompleteProm = (async () => { - const loginToken = await bobEcdh.receive(); - expect(loginToken).toEqual({ type: "m.login.progress", login_token: "token", homeserver: alice.baseUrl }); - await bobEcdh.send({ type: "m.login.finish", outcome: "success" }); - })(); - - await confirmProm; - await bobCompleteProm; - }); - - async function completeLogin(devices: SimpleDeviceMap) { - const aliceTransport = makeTransport("Alice", "https://test.rz/123456"); - const bobTransport = makeTransport("Bob", "https://test.rz/999999"); - transports.push(aliceTransport, bobTransport); - aliceTransport.otherParty = bobTransport; - bobTransport.otherParty = aliceTransport; - - // alice is already signs in and generates a code - const aliceOnFailure = jest.fn(); - const aliceVerification = jest.fn(); - const [alice, deviceMap] = makeMockClient({ - userId, - deviceId: "ALICE", - getLoginTokenEnabled: true, - msc3882r0Only: false, - msc3886Enabled: false, - devices, - deviceKey: "aaaa", - verificationFunction: aliceVerification, - crossSigningIds: { - master: "mmmmm", - }, - }); - const aliceEcdh = new MSC3903ECDHRendezvousChannel(aliceTransport, undefined, aliceOnFailure); - const aliceRz = new MSC3906Rendezvous(aliceEcdh, alice); - aliceTransport.onCancelled = aliceOnFailure; - await aliceRz.generateCode(); - const code = JSON.parse(aliceRz.code!) as ECDHRendezvousCode; - - expect(code.rendezvous.key).toBeDefined(); - - const aliceStartProm = aliceRz.startAfterShowingCode(); - - // bob is try to sign in and scans the code - const bobOnFailure = jest.fn(); - const bobEcdh = new MSC3903ECDHRendezvousChannel( - bobTransport, - decodeBase64(code.rendezvous.key), // alice's public key - bobOnFailure, - ); - - const bobStartPromise = (async () => { - const bobChecksum = await bobEcdh.connect(); - logger.info(`Bob checksums is ${bobChecksum} now sending intent`); - // await bobEcdh.send({ type: 'm.login.progress', intent: RendezvousIntent.LOGIN_ON_NEW_DEVICE }); - - // wait for protocols - logger.info("Bob waiting for protocols"); - const protocols = await bobEcdh.receive(); - - logger.info(`Bob protocols: ${JSON.stringify(protocols)}`); - - expect(protocols).toEqual({ - type: "m.login.progress", - protocols: ["org.matrix.msc3906.login_token"], - }); - - await bobEcdh.send({ type: "m.login.progress", protocol: "org.matrix.msc3906.login_token" }); - })(); - - await aliceStartProm; - await bobStartPromise; - - const confirmProm = aliceRz.approveLoginOnExistingDevice("token"); - - const bobLoginProm = (async () => { - const loginToken = await bobEcdh.receive(); - expect(loginToken).toEqual({ type: "m.login.progress", login_token: "token", homeserver: alice.baseUrl }); - await bobEcdh.send({ type: "m.login.finish", outcome: "success", device_id: "BOB", device_key: "bbbb" }); - })(); - - expect(await confirmProm).toEqual("BOB"); - await bobLoginProm; - - return { - aliceTransport, - aliceEcdh, - aliceRz, - bobTransport, - bobEcdh, - deviceMap, - }; - } - - it("approve on existing device + verification", async function () { - const { bobEcdh, aliceRz } = await completeLogin({ - [userId]: { - BOB: "bbbb", - }, - }); - const verifyProm = aliceRz.verifyNewDeviceOnExistingDevice(); - - const bobVerifyProm = (async () => { - const verified = await bobEcdh.receive(); - expect(verified).toEqual({ - type: "m.login.finish", - outcome: "verified", - verifying_device_id: "ALICE", - verifying_device_key: "aaaa", - master_key: "mmmmm", - }); - })(); - - await verifyProm; - await bobVerifyProm; - }); - - it("device not online within timeout", async function () { - const { aliceRz } = await completeLogin({}); - await expect(aliceRz.verifyNewDeviceOnExistingDevice(1000)).rejects.toThrow(); - }); - - it("device appears online within timeout", async function () { - const devices: SimpleDeviceMap = {}; - const { aliceRz, deviceMap } = await completeLogin(devices); - // device appears before the timeout - setTimeout(() => { - deviceMap.get(userId)!.set("BOB", mockDevice(userId, "BOB", "bbbb")); - }, 1000); - await aliceRz.verifyNewDeviceOnExistingDevice(2000); - }); - - it("device appears online after timeout", async function () { - const devices: SimpleDeviceMap = {}; - const { aliceRz, deviceMap } = await completeLogin(devices); - // device appears after the timeout - setTimeout(() => { - deviceMap.get(userId)!.set("BOB", mockDevice(userId, "BOB", "bbbb")); - }, 1500); - await expect(aliceRz.verifyNewDeviceOnExistingDevice(1000)).rejects.toThrow(); - }); - - it("mismatched device key", async function () { - const { aliceRz } = await completeLogin({ - [userId]: { - BOB: "XXXX", - }, - }); - await expect(aliceRz.verifyNewDeviceOnExistingDevice(1000)).rejects.toThrow(/different key/); - }); -}); diff --git a/spec/unit/rendezvous/simpleHttpTransport.spec.ts b/spec/unit/rendezvous/simpleHttpTransport.spec.ts deleted file mode 100644 index c736d4d115d..00000000000 --- a/spec/unit/rendezvous/simpleHttpTransport.spec.ts +++ /dev/null @@ -1,453 +0,0 @@ -/* -Copyright 2022 The Matrix.org Foundation C.I.C. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -import MockHttpBackend from "matrix-mock-request"; - -import type { MatrixClient } from "../../../src"; -import { LegacyRendezvousFailureReason as RendezvousFailureReason } from "../../../src/rendezvous"; -import { MSC3886SimpleHttpRendezvousTransport } from "../../../src/rendezvous/transports"; - -function makeMockClient(opts: { userId: string; deviceId: string; msc3886Enabled: boolean }): MatrixClient { - return { - doesServerSupportUnstableFeature(feature: string) { - return Promise.resolve(opts.msc3886Enabled && feature === "org.matrix.msc3886"); - }, - getUserId() { - return opts.userId; - }, - getDeviceId() { - return opts.deviceId; - }, - requestLoginToken() { - return Promise.resolve({ login_token: "token" }); - }, - baseUrl: "https://example.com", - } as unknown as MatrixClient; -} - -describe("SimpleHttpRendezvousTransport", function () { - let httpBackend: MockHttpBackend; - let fetchFn: typeof global.fetch; - - beforeEach(function () { - httpBackend = new MockHttpBackend(); - fetchFn = httpBackend.fetchFn as typeof global.fetch; - }); - - async function postAndCheckLocation( - msc3886Enabled: boolean, - fallbackRzServer: string, - locationResponse: string, - expectedFinalLocation: string, - ) { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled }); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ client, fallbackRzServer, fetchFn }); - { - // initial POST - const expectedPostLocation = msc3886Enabled - ? `${client.baseUrl}/_matrix/client/unstable/org.matrix.msc3886/rendezvous` - : fallbackRzServer; - - const prom = simpleHttpTransport.send({}); - httpBackend.when("POST", expectedPostLocation).response = { - body: null, - response: { - statusCode: 201, - headers: { - location: locationResponse, - }, - }, - }; - await httpBackend.flush(""); - await prom; - } - const details = await simpleHttpTransport.details(); - expect(details.uri).toBe(expectedFinalLocation); - - { - // first GET without etag - const prom = simpleHttpTransport.receive(); - httpBackend.when("GET", expectedFinalLocation).response = { - body: {}, - response: { - statusCode: 200, - headers: { - "content-type": "application/json", - }, - }, - }; - await httpBackend.flush(""); - expect(await prom).toEqual({}); - httpBackend.verifyNoOutstandingRequests(); - httpBackend.verifyNoOutstandingExpectation(); - } - } - it("should throw an error when no server available", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ client, fetchFn }); - await expect(simpleHttpTransport.send({})).rejects.toThrow("Invalid rendezvous URI"); - }); - - it("POST to fallback server", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ - client, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - }); - const prom = simpleHttpTransport.send({}); - httpBackend.when("POST", "https://fallbackserver/rz").response = { - body: null, - response: { - statusCode: 201, - headers: { - location: "https://fallbackserver/rz/123", - }, - }, - }; - await httpBackend.flush(""); - expect(await prom).toStrictEqual(undefined); - }); - - it("POST with no location", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ - client, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - }); - const prom = simpleHttpTransport.send({}); - httpBackend.when("POST", "https://fallbackserver/rz").response = { - body: null, - response: { - statusCode: 201, - headers: {}, - }, - }; - await Promise.all([expect(prom).rejects.toThrow(), httpBackend.flush("")]); - }); - - it("POST with absolute path response", async function () { - await postAndCheckLocation(false, "https://fallbackserver/rz", "/123", "https://fallbackserver/123"); - }); - - it("POST to built-in MSC3886 implementation", async function () { - await postAndCheckLocation( - true, - "https://fallbackserver/rz", - "123", - "https://example.com/_matrix/client/unstable/org.matrix.msc3886/rendezvous/123", - ); - }); - - it("POST with relative path response including parent", async function () { - await postAndCheckLocation( - false, - "https://fallbackserver/rz/abc", - "../xyz/123", - "https://fallbackserver/rz/xyz/123", - ); - }); - - it("POST to follow 307 to other server", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ - client, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - }); - const prom = simpleHttpTransport.send({}); - httpBackend.when("POST", "https://fallbackserver/rz").response = { - body: null, - response: { - statusCode: 307, - headers: { - location: "https://redirected.fallbackserver/rz", - }, - }, - }; - httpBackend.when("POST", "https://redirected.fallbackserver/rz").response = { - body: null, - response: { - statusCode: 201, - headers: { - location: "https://redirected.fallbackserver/rz/123", - etag: "aaa", - }, - }, - }; - await httpBackend.flush(""); - expect(await prom).toStrictEqual(undefined); - }); - - it("POST and GET", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ - client, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - }); - { - // initial POST - const prom = simpleHttpTransport.send({ foo: "baa" }); - httpBackend.when("POST", "https://fallbackserver/rz").check(({ headers, data }) => { - expect(headers["content-type"]).toEqual("application/json"); - expect(data).toEqual({ foo: "baa" }); - }).response = { - body: null, - response: { - statusCode: 201, - headers: { - location: "https://fallbackserver/rz/123", - }, - }, - }; - await httpBackend.flush(""); - expect(await prom).toStrictEqual(undefined); - } - { - // first GET without etag - const prom = simpleHttpTransport.receive(); - httpBackend.when("GET", "https://fallbackserver/rz/123").response = { - body: { foo: "baa" }, - response: { - statusCode: 200, - headers: { - "content-type": "application/json", - "etag": "aaa", - }, - }, - }; - await httpBackend.flush(""); - expect(await prom).toEqual({ foo: "baa" }); - } - { - // subsequent GET which should have etag from previous request - const prom = simpleHttpTransport.receive(); - httpBackend.when("GET", "https://fallbackserver/rz/123").check(({ headers }) => { - expect(headers["if-none-match"]).toEqual("aaa"); - }).response = { - body: { foo: "baa" }, - response: { - statusCode: 200, - headers: { - "content-type": "application/json", - "etag": "bbb", - }, - }, - }; - await httpBackend.flush(""); - expect(await prom).toEqual({ foo: "baa" }); - } - }); - - it("POST and PUTs", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ - client, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - }); - { - // initial POST - const prom = simpleHttpTransport.send({ foo: "baa" }); - httpBackend.when("POST", "https://fallbackserver/rz").check(({ headers, data }) => { - expect(headers["content-type"]).toEqual("application/json"); - expect(data).toEqual({ foo: "baa" }); - }).response = { - body: null, - response: { - statusCode: 201, - headers: { - location: "https://fallbackserver/rz/123", - }, - }, - }; - await httpBackend.flush("", 1); - await prom; - } - { - // first PUT without etag - const prom = simpleHttpTransport.send({ a: "b" }); - httpBackend.when("PUT", "https://fallbackserver/rz/123").check(({ headers, data }) => { - expect(headers["if-match"]).toBeUndefined(); - expect(data).toEqual({ a: "b" }); - }).response = { - body: null, - response: { - statusCode: 202, - headers: { - etag: "aaa", - }, - }, - }; - await httpBackend.flush("", 1); - await prom; - } - { - // subsequent PUT which should have etag from previous request - const prom = simpleHttpTransport.send({ c: "d" }); - httpBackend.when("PUT", "https://fallbackserver/rz/123").check(({ headers }) => { - expect(headers["if-match"]).toEqual("aaa"); - }).response = { - body: null, - response: { - statusCode: 202, - headers: { - etag: "bbb", - }, - }, - }; - await httpBackend.flush("", 1); - await prom; - } - }); - - it("POST and DELETE", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ - client, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - }); - { - // Create - const prom = simpleHttpTransport.send({ foo: "baa" }); - httpBackend.when("POST", "https://fallbackserver/rz").check(({ headers, data }) => { - expect(headers["content-type"]).toEqual("application/json"); - expect(data).toEqual({ foo: "baa" }); - }).response = { - body: null, - response: { - statusCode: 201, - headers: { - location: "https://fallbackserver/rz/123", - }, - }, - }; - await httpBackend.flush(""); - expect(await prom).toStrictEqual(undefined); - } - { - // Cancel - const prom = simpleHttpTransport.cancel(RendezvousFailureReason.UserDeclined); - httpBackend.when("DELETE", "https://fallbackserver/rz/123").response = { - body: null, - response: { - statusCode: 204, - headers: {}, - }, - }; - await httpBackend.flush(""); - await prom; - } - }); - - it("details before ready", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ - client, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - }); - await expect(simpleHttpTransport.details()).rejects.toThrow(); - }); - - it("send after cancelled", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ - client, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - }); - await simpleHttpTransport.cancel(RendezvousFailureReason.UserDeclined); - await expect(simpleHttpTransport.send({})).resolves.toBeUndefined(); - }); - - it("receive before ready", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ - client, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - }); - await expect(simpleHttpTransport.receive()).rejects.toThrow(); - }); - - it("404 failure callback", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const onFailure = jest.fn(); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ - client, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - onFailure, - }); - - httpBackend.when("POST", "https://fallbackserver/rz").response = { - body: null, - response: { - statusCode: 404, - headers: {}, - }, - }; - await Promise.all([ - expect(simpleHttpTransport.send({ foo: "baa" })).resolves.toBeUndefined(), - httpBackend.flush("", 1), - ]); - expect(onFailure).toHaveBeenCalledWith(RendezvousFailureReason.Unknown); - }); - - it("404 failure callback mapped to expired", async function () { - const client = makeMockClient({ userId: "@alice:example.com", deviceId: "DEVICEID", msc3886Enabled: false }); - const onFailure = jest.fn(); - const simpleHttpTransport = new MSC3886SimpleHttpRendezvousTransport({ - client, - fallbackRzServer: "https://fallbackserver/rz", - fetchFn, - onFailure, - }); - - { - // initial POST - const prom = simpleHttpTransport.send({ foo: "baa" }); - httpBackend.when("POST", "https://fallbackserver/rz").response = { - body: null, - response: { - statusCode: 201, - headers: { - location: "https://fallbackserver/rz/123", - expires: "Thu, 01 Jan 1970 00:00:00 GMT", - }, - }, - }; - await httpBackend.flush(""); - await prom; - } - { - // GET with 404 to simulate expiry - httpBackend.when("GET", "https://fallbackserver/rz/123").response = { - body: { foo: "baa" }, - response: { - statusCode: 404, - headers: {}, - }, - }; - await Promise.all([expect(simpleHttpTransport.receive()).resolves.toBeUndefined(), httpBackend.flush("")]); - expect(onFailure).toHaveBeenCalledWith(RendezvousFailureReason.Expired); - } - }); -}); diff --git a/src/rendezvous/MSC3906Rendezvous.ts b/src/rendezvous/MSC3906Rendezvous.ts deleted file mode 100644 index 8fa301f82f2..00000000000 --- a/src/rendezvous/MSC3906Rendezvous.ts +++ /dev/null @@ -1,276 +0,0 @@ -/* -Copyright 2022 The Matrix.org Foundation C.I.C. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -import { UnstableValue } from "matrix-events-sdk"; - -import { - RendezvousChannel, - RendezvousFailureListener, - LegacyRendezvousFailureReason as RendezvousFailureReason, - RendezvousIntent, -} from "./index.ts"; -import { MatrixClient, GET_LOGIN_TOKEN_CAPABILITY } from "../client.ts"; -import { buildFeatureSupportMap, Feature, ServerSupport } from "../feature.ts"; -import { logger } from "../logger.ts"; -import { sleep } from "../utils.ts"; -import { CrossSigningKey } from "../crypto-api/index.ts"; -import { Capabilities, Device, IGetLoginTokenCapability } from "../matrix.ts"; - -enum PayloadType { - Start = "m.login.start", - Finish = "m.login.finish", - Progress = "m.login.progress", -} - -enum Outcome { - Success = "success", - Failure = "failure", - Verified = "verified", - Declined = "declined", - Unsupported = "unsupported", -} - -export interface MSC3906RendezvousPayload { - type: PayloadType; - intent?: RendezvousIntent; - outcome?: Outcome; - device_id?: string; - device_key?: string; - verifying_device_id?: string; - verifying_device_key?: string; - master_key?: string; - protocols?: string[]; - protocol?: string; - login_token?: string; - homeserver?: string; -} - -const LOGIN_TOKEN_PROTOCOL = new UnstableValue("login_token", "org.matrix.msc3906.login_token"); - -/** - * Implements MSC3906 to allow a user to sign in on a new device using QR code. - * This implementation only supports generating a QR code on a device that is already signed in. - * Note that this is UNSTABLE and may have breaking changes without notice. - * MSC3886/MSC3903/MSC3906 are now closed and so this functionality will be removed in future. - * However, we want to keep this implementation around for some time. - * TODO: define an end-of-life date for this implementation. - */ -export class MSC3906Rendezvous { - private newDeviceId?: string; - private newDeviceKey?: string; - private ourIntent: RendezvousIntent = RendezvousIntent.RECIPROCATE_LOGIN_ON_EXISTING_DEVICE; - private _code?: string; - - /** - * @param channel - The secure channel used for communication - * @param client - The Matrix client in used on the device already logged in - * @param onFailure - Callback for when the rendezvous fails - */ - public constructor( - private channel: RendezvousChannel, - private client: MatrixClient, - public onFailure?: RendezvousFailureListener, - ) {} - - /** - * Returns the code representing the rendezvous suitable for rendering in a QR code or undefined if not generated yet. - */ - public get code(): string | undefined { - return this._code; - } - - /** - * Generate the code including doing partial set up of the channel where required. - */ - public async generateCode(): Promise { - if (this._code) { - return; - } - - this._code = JSON.stringify(await this.channel.generateCode(this.ourIntent)); - } - - public async startAfterShowingCode(): Promise { - const checksum = await this.channel.connect(); - - logger.info(`Connected to secure channel with checksum: ${checksum} our intent is ${this.ourIntent}`); - - // in stable and unstable r1 the availability is exposed as a capability - let capabilities: Capabilities = {}; - try { - capabilities = await this.client.getCapabilities(); - } catch {} - // in r0 of MSC3882 the availability is exposed as a feature flag - const features = await buildFeatureSupportMap(await this.client.getVersions()); - const capability = GET_LOGIN_TOKEN_CAPABILITY.findIn(capabilities); - - // determine available protocols - if (!capability?.enabled && features.get(Feature.LoginTokenRequest) === ServerSupport.Unsupported) { - logger.info("Server doesn't support get_login_token"); - await this.send({ type: PayloadType.Finish, outcome: Outcome.Unsupported }); - await this.cancel(RendezvousFailureReason.HomeserverLacksSupport); - return undefined; - } - - await this.send({ type: PayloadType.Progress, protocols: [LOGIN_TOKEN_PROTOCOL.name] }); - - logger.info("Waiting for other device to choose protocol"); - const { type, protocol, outcome } = await this.receive(); - - if (type === PayloadType.Finish) { - // new device decided not to complete - switch (outcome ?? "") { - case "unsupported": - await this.cancel(RendezvousFailureReason.UnsupportedAlgorithm); - break; - default: - await this.cancel(RendezvousFailureReason.Unknown); - } - return undefined; - } - - if (type !== PayloadType.Progress) { - await this.cancel(RendezvousFailureReason.Unknown); - return undefined; - } - - if (!protocol || !LOGIN_TOKEN_PROTOCOL.matches(protocol)) { - await this.cancel(RendezvousFailureReason.UnsupportedAlgorithm); - return undefined; - } - - return checksum; - } - - private async receive(): Promise { - return (await this.channel.receive()) as MSC3906RendezvousPayload; - } - - private async send(payload: MSC3906RendezvousPayload): Promise { - await this.channel.send(payload); - } - - public async declineLoginOnExistingDevice(): Promise { - logger.info("User declined sign in"); - await this.send({ type: PayloadType.Finish, outcome: Outcome.Declined }); - } - - public async approveLoginOnExistingDevice(loginToken: string): Promise { - // eslint-disable-next-line camelcase - await this.send({ type: PayloadType.Progress, login_token: loginToken, homeserver: this.client.baseUrl }); - - logger.info("Waiting for outcome"); - const res = await this.receive(); - if (!res) { - return undefined; - } - const { outcome, device_id: deviceId, device_key: deviceKey } = res; - - if (outcome !== "success") { - throw new Error("Linking failed"); - } - - this.newDeviceId = deviceId; - this.newDeviceKey = deviceKey; - - return deviceId; - } - - private async verifyAndCrossSignDevice(deviceInfo: Device): Promise { - const crypto = this.client.getCrypto()!; - - if (!this.newDeviceId) { - throw new Error("No new device ID set"); - } - - // check that keys received from the server for the new device match those received from the device itself - if (deviceInfo.getFingerprint() !== this.newDeviceKey) { - throw new Error( - `New device has different keys than expected: ${this.newDeviceKey} vs ${deviceInfo.getFingerprint()}`, - ); - } - - const userId = this.client.getSafeUserId(); - - // mark the device as verified locally + cross sign - logger.info(`Marking device ${this.newDeviceId} as verified`); - await crypto.setDeviceVerified(userId, this.newDeviceId, true); - await crypto.crossSignDevice(this.newDeviceId); - - const masterPublicKey = (await crypto.getCrossSigningKeyId(CrossSigningKey.Master)) ?? undefined; - - const ourDeviceId = this.client.getDeviceId()!; - const ourDeviceKey = (await crypto.getOwnDeviceKeys()).ed25519; - - await this.send({ - type: PayloadType.Finish, - outcome: Outcome.Verified, - verifying_device_id: ourDeviceId, - verifying_device_key: ourDeviceKey, - master_key: masterPublicKey, - }); - } - - /** - * Verify the device and cross-sign it. - * @param timeout - time in milliseconds to wait for device to come online - */ - public async verifyNewDeviceOnExistingDevice(timeout = 10 * 1000): Promise { - if (!this.newDeviceId) { - throw new Error("No new device to sign"); - } - - if (!this.newDeviceKey) { - logger.info("No new device key to sign"); - return undefined; - } - - const crypto = this.client.getCrypto(); - if (!crypto) { - throw new Error("Crypto not available on client"); - } - - let deviceInfo = await this.getOwnDevice(this.newDeviceId); - - if (!deviceInfo) { - logger.info("Going to wait for new device to be online"); - await sleep(timeout); - deviceInfo = await this.getOwnDevice(this.newDeviceId); - } - - if (deviceInfo) { - await this.verifyAndCrossSignDevice(deviceInfo); - return; - } - - throw new Error("Device not online within timeout"); - } - - private async getOwnDevice(deviceId: string): Promise { - const userId = this.client.getSafeUserId(); - const ownDeviceInfo = await this.client.getCrypto()!.getUserDeviceInfo([userId]); - return ownDeviceInfo.get(userId)?.get(deviceId); - } - - public async cancel(reason: RendezvousFailureReason): Promise { - this.onFailure?.(reason); - await this.channel.cancel(reason); - } - - public async close(): Promise { - await this.channel.close(); - } -} diff --git a/src/rendezvous/RendezvousFailureReason.ts b/src/rendezvous/RendezvousFailureReason.ts index 7a0116ca0e1..2369a58c0f5 100644 --- a/src/rendezvous/RendezvousFailureReason.ts +++ b/src/rendezvous/RendezvousFailureReason.ts @@ -16,20 +16,7 @@ limitations under the License. export type RendezvousFailureListener = (reason: RendezvousFailureReason) => void; -export type RendezvousFailureReason = - | LegacyRendezvousFailureReason - | MSC4108FailureReason - | ClientRendezvousFailureReason; - -export enum LegacyRendezvousFailureReason { - UserDeclined = "user_declined", - Unknown = "unknown", - Expired = "expired", - UserCancelled = "user_cancelled", - UnsupportedAlgorithm = "unsupported_algorithm", - UnsupportedProtocol = "unsupported_protocol", - HomeserverLacksSupport = "homeserver_lacks_support", -} +export type RendezvousFailureReason = MSC4108FailureReason | ClientRendezvousFailureReason; export enum MSC4108FailureReason { AuthorizationExpired = "authorization_expired", diff --git a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts b/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts deleted file mode 100644 index 47b8e3fd8dc..00000000000 --- a/src/rendezvous/channels/MSC3903ECDHv2RendezvousChannel.ts +++ /dev/null @@ -1,261 +0,0 @@ -/* -Copyright 2023 The Matrix.org Foundation C.I.C. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -import { SAS } from "@matrix-org/olm"; - -import { - LegacyRendezvousFailureReason as RendezvousFailureReason, - RendezvousChannel, - RendezvousCode, - RendezvousError, - RendezvousIntent, - RendezvousTransport, - RendezvousTransportDetails, -} from "../index.ts"; -import { decodeBase64, encodeUnpaddedBase64 } from "../../base64.ts"; -import { generateDecimalSas } from "../../crypto/verification/SASDecimal.ts"; -import { UnstableValue } from "../../NamespacedValue.ts"; - -const ECDH_V2 = new UnstableValue( - "m.rendezvous.v2.curve25519-aes-sha256", - "org.matrix.msc3903.rendezvous.v2.curve25519-aes-sha256", -); - -export interface ECDHv2RendezvousCode extends RendezvousCode { - rendezvous: { - transport: RendezvousTransportDetails; - algorithm: typeof ECDH_V2.name | typeof ECDH_V2.altName; - key: string; - }; -} - -export type MSC3903ECDHPayload = PlainTextPayload | EncryptedPayload; - -export interface PlainTextPayload { - algorithm: typeof ECDH_V2.name | typeof ECDH_V2.altName; - key?: string; -} - -export interface EncryptedPayload { - iv: string; - ciphertext: string; -} - -async function importKey(key: Uint8Array): Promise { - if (!globalThis.crypto.subtle) { - throw new Error("Web Crypto is not available"); - } - - const imported = globalThis.crypto.subtle.importKey("raw", key, { name: "AES-GCM" }, false, ["encrypt", "decrypt"]); - - return imported; -} - -/** - * Implementation of the unstable [MSC3903](https://github.com/matrix-org/matrix-spec-proposals/pull/3903) - * X25519/ECDH key agreement based secure rendezvous channel. - * Note that this is UNSTABLE and may have breaking changes without notice. - * MSC3886/MSC3903/MSC3906 are now closed and so this functionality will be removed in future. - * However, we want to keep this implementation around for some time. - * TODO: define an end-of-life date for this implementation. - */ -export class MSC3903ECDHv2RendezvousChannel implements RendezvousChannel { - private olmSAS?: SAS; - private ourPublicKey: Uint8Array; - private aesKey?: CryptoKey; - private connected = false; - - public constructor( - private transport: RendezvousTransport, - private theirPublicKey?: Uint8Array, - public onFailure?: (reason: RendezvousFailureReason) => void, - ) { - this.olmSAS = new global.Olm.SAS(); - this.ourPublicKey = decodeBase64(this.olmSAS.get_pubkey()); - } - - public async generateCode(intent: RendezvousIntent): Promise { - if (this.transport.ready) { - throw new Error("Code already generated"); - } - - await this.transport.send({ algorithm: ECDH_V2.name }); - - const rendezvous: ECDHv2RendezvousCode = { - rendezvous: { - algorithm: ECDH_V2.name, - key: encodeUnpaddedBase64(this.ourPublicKey), - transport: await this.transport.details(), - }, - intent, - }; - - return rendezvous; - } - - public async connect(): Promise { - if (this.connected) { - throw new Error("Channel already connected"); - } - - if (!this.olmSAS) { - throw new Error("Channel closed"); - } - - const isInitiator = !this.theirPublicKey; - - if (isInitiator) { - // wait for the other side to send us their public key - const rawRes = await this.transport.receive(); - if (!rawRes) { - throw new Error("No response from other device"); - } - const res = rawRes as Partial; - const { key, algorithm } = res; - if (!algorithm || !ECDH_V2.matches(algorithm) || !key) { - throw new RendezvousError( - "Unsupported algorithm: " + algorithm, - RendezvousFailureReason.UnsupportedAlgorithm, - ); - } - - this.theirPublicKey = decodeBase64(key); - } else { - // send our public key unencrypted - await this.transport.send({ - algorithm: ECDH_V2.name, - key: encodeUnpaddedBase64(this.ourPublicKey), - }); - } - - this.connected = true; - - this.olmSAS.set_their_key(encodeUnpaddedBase64(this.theirPublicKey!)); - - const initiatorKey = isInitiator ? this.ourPublicKey : this.theirPublicKey!; - const recipientKey = isInitiator ? this.theirPublicKey! : this.ourPublicKey; - let aesInfo = ECDH_V2.name; - aesInfo += `|${encodeUnpaddedBase64(initiatorKey)}`; - aesInfo += `|${encodeUnpaddedBase64(recipientKey)}`; - - const aesKeyBytes = this.olmSAS.generate_bytes(aesInfo, 32); - - this.aesKey = await importKey(aesKeyBytes); - - // blank the bytes out to make sure not kept in memory - aesKeyBytes.fill(0); - - const rawChecksum = this.olmSAS.generate_bytes(aesInfo, 5); - return generateDecimalSas(Array.from(rawChecksum)).join("-"); - } - - private async encrypt(data: T): Promise { - if (!globalThis.crypto.subtle) { - throw new Error("Web Crypto is not available"); - } - - const iv = new Uint8Array(32); - globalThis.crypto.getRandomValues(iv); - - const encodedData = new TextEncoder().encode(JSON.stringify(data)); - - const ciphertext = await globalThis.crypto.subtle.encrypt( - { - name: "AES-GCM", - iv, - tagLength: 128, - }, - this.aesKey as CryptoKey, - encodedData, - ); - - return { - iv: encodeUnpaddedBase64(iv), - ciphertext: encodeUnpaddedBase64(ciphertext), - }; - } - - public async send(payload: T): Promise { - if (!this.olmSAS) { - throw new Error("Channel closed"); - } - - if (!this.aesKey) { - throw new Error("Shared secret not set up"); - } - - return this.transport.send(await this.encrypt(payload)); - } - - private async decrypt({ iv, ciphertext }: EncryptedPayload): Promise> { - if (!ciphertext || !iv) { - throw new Error("Missing ciphertext and/or iv"); - } - - const ciphertextBytes = decodeBase64(ciphertext); - - if (!globalThis.crypto.subtle) { - throw new Error("Web Crypto is not available"); - } - - const plaintext = await globalThis.crypto.subtle.decrypt( - { - name: "AES-GCM", - iv: decodeBase64(iv), - tagLength: 128, - }, - this.aesKey as CryptoKey, - ciphertextBytes, - ); - - return JSON.parse(new TextDecoder().decode(new Uint8Array(plaintext))); - } - - public async receive(): Promise | undefined> { - if (!this.olmSAS) { - throw new Error("Channel closed"); - } - if (!this.aesKey) { - throw new Error("Shared secret not set up"); - } - - const rawData = await this.transport.receive(); - if (!rawData) { - return undefined; - } - const data = rawData as Partial; - if (data.ciphertext && data.iv) { - return this.decrypt(data as EncryptedPayload); - } - - throw new Error("Data received but no ciphertext"); - } - - public async close(): Promise { - if (this.olmSAS) { - this.olmSAS.free(); - this.olmSAS = undefined; - } - } - - public async cancel(reason: RendezvousFailureReason): Promise { - try { - await this.transport.cancel(reason); - } finally { - await this.close(); - } - } -} diff --git a/src/rendezvous/channels/index.ts b/src/rendezvous/channels/index.ts index c525e278485..113e890438f 100644 --- a/src/rendezvous/channels/index.ts +++ b/src/rendezvous/channels/index.ts @@ -14,8 +14,4 @@ See the License for the specific language governing permissions and limitations under the License. */ -/** - * @deprecated in favour of MSC4108-based implementation - */ -export * from "./MSC3903ECDHv2RendezvousChannel.ts"; export * from "./MSC4108SecureChannel.ts"; diff --git a/src/rendezvous/index.ts b/src/rendezvous/index.ts index 95fa72d6187..498f060e33e 100644 --- a/src/rendezvous/index.ts +++ b/src/rendezvous/index.ts @@ -14,10 +14,6 @@ See the License for the specific language governing permissions and limitations under the License. */ -/** - * @deprecated in favour of MSC4108-based implementation - */ -export * from "./MSC3906Rendezvous.ts"; export * from "./MSC4108SignInWithQR.ts"; export type * from "./RendezvousChannel.ts"; export type * from "./RendezvousCode.ts"; diff --git a/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts b/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts deleted file mode 100644 index b8521eda420..00000000000 --- a/src/rendezvous/transports/MSC3886SimpleHttpRendezvousTransport.ts +++ /dev/null @@ -1,196 +0,0 @@ -/* -Copyright 2022 The Matrix.org Foundation C.I.C. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -import { UnstableValue } from "matrix-events-sdk"; - -import { logger } from "../../logger.ts"; -import { sleep } from "../../utils.ts"; -import { - RendezvousFailureListener, - LegacyRendezvousFailureReason as RendezvousFailureReason, - RendezvousTransport, - RendezvousTransportDetails, -} from "../index.ts"; -import { MatrixClient } from "../../matrix.ts"; -import { ClientPrefix } from "../../http-api/index.ts"; - -const TYPE = new UnstableValue("http.v1", "org.matrix.msc3886.http.v1"); - -export interface MSC3886SimpleHttpRendezvousTransportDetails extends RendezvousTransportDetails { - uri: string; -} - -/** - * Implementation of the unstable [MSC3886](https://github.com/matrix-org/matrix-spec-proposals/pull/3886) - * simple HTTP rendezvous protocol. - * Note that this is UNSTABLE and may have breaking changes without notice. - * MSC3886/MSC3903/MSC3906 are now closed and so this functionality will be removed in future. - * However, we want to keep this implementation around for some time. - * TODO: define an end-of-life date for this implementation. - */ -export class MSC3886SimpleHttpRendezvousTransport implements RendezvousTransport { - private uri?: string; - private etag?: string; - private expiresAt?: Date; - private client: MatrixClient; - private fallbackRzServer?: string; - private fetchFn?: typeof global.fetch; - private cancelled = false; - private _ready = false; - public onFailure?: RendezvousFailureListener; - - public constructor({ - onFailure, - client, - fallbackRzServer, - fetchFn, - }: { - fetchFn?: typeof global.fetch; - onFailure?: RendezvousFailureListener; - client: MatrixClient; - fallbackRzServer?: string; - }) { - this.fetchFn = fetchFn; - this.onFailure = onFailure; - this.client = client; - this.fallbackRzServer = fallbackRzServer; - } - - public get ready(): boolean { - return this._ready; - } - - public async details(): Promise { - if (!this.uri) { - throw new Error("Rendezvous not set up"); - } - - return { - type: TYPE.name, - uri: this.uri, - }; - } - - private fetch(resource: URL | string, options?: RequestInit): ReturnType { - if (this.fetchFn) { - return this.fetchFn(resource, options); - } - return global.fetch(resource, options); - } - - private async getPostEndpoint(): Promise { - try { - if (await this.client.doesServerSupportUnstableFeature("org.matrix.msc3886")) { - return `${this.client.baseUrl}${ClientPrefix.Unstable}/org.matrix.msc3886/rendezvous`; - } - } catch (err) { - logger.warn("Failed to get unstable features", err); - } - - return this.fallbackRzServer; - } - - public async send(data: T): Promise { - if (this.cancelled) { - return; - } - const method = this.uri ? "PUT" : "POST"; - const uri = this.uri ?? (await this.getPostEndpoint()); - - if (!uri) { - throw new Error("Invalid rendezvous URI"); - } - - const headers: Record = { "content-type": "application/json" }; - if (this.etag) { - headers["if-match"] = this.etag; - } - - const res = await this.fetch(uri, { method, headers, body: JSON.stringify(data) }); - if (res.status === 404) { - return this.cancel(RendezvousFailureReason.Unknown); - } - this.etag = res.headers.get("etag") ?? undefined; - - if (method === "POST") { - const location = res.headers.get("location"); - if (!location) { - throw new Error("No rendezvous URI given"); - } - const expires = res.headers.get("expires"); - if (expires) { - this.expiresAt = new Date(expires); - } - // we would usually expect the final `url` to be set by a proper fetch implementation. - // however, if a polyfill based on XHR is used it won't be set, we we use existing URI as fallback - const baseUrl = res.url ?? uri; - // resolve location header which could be relative or absolute - this.uri = new URL(location, `${baseUrl}${baseUrl.endsWith("/") ? "" : "/"}`).href; - this._ready = true; - } - } - - public async receive(): Promise | undefined> { - if (!this.uri) { - throw new Error("Rendezvous not set up"); - } - // eslint-disable-next-line no-constant-condition - while (true) { - if (this.cancelled) { - return undefined; - } - - const headers: Record = {}; - if (this.etag) { - headers["if-none-match"] = this.etag; - } - const poll = await this.fetch(this.uri, { method: "GET", headers }); - - if (poll.status === 404) { - this.cancel(RendezvousFailureReason.Unknown); - return undefined; - } - - // rely on server expiring the channel rather than checking ourselves - - if (poll.headers.get("content-type") !== "application/json") { - this.etag = poll.headers.get("etag") ?? undefined; - } else if (poll.status === 200) { - this.etag = poll.headers.get("etag") ?? undefined; - return poll.json(); - } - await sleep(1000); - } - } - - public async cancel(reason: RendezvousFailureReason): Promise { - if (reason === RendezvousFailureReason.Unknown && this.expiresAt && this.expiresAt.getTime() < Date.now()) { - reason = RendezvousFailureReason.Expired; - } - - this.cancelled = true; - this._ready = false; - this.onFailure?.(reason); - - if (this.uri && reason === RendezvousFailureReason.UserDeclined) { - try { - await this.fetch(this.uri, { method: "DELETE" }); - } catch (e) { - logger.warn(e); - } - } - } -} diff --git a/src/rendezvous/transports/index.ts b/src/rendezvous/transports/index.ts index 88fe91ba1d9..64aa2b00430 100644 --- a/src/rendezvous/transports/index.ts +++ b/src/rendezvous/transports/index.ts @@ -14,8 +14,4 @@ See the License for the specific language governing permissions and limitations under the License. */ -/** - * @deprecated in favour of MSC4108-based implementation - */ -export * from "./MSC3886SimpleHttpRendezvousTransport.ts"; export * from "./MSC4108RendezvousSession.ts"; From b99ff837850824713b14ff49c646b2c5487f2a63 Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Fri, 25 Oct 2024 05:24:52 -0400 Subject: [PATCH 484/595] Refactor/simplify Promises in MatrixRTCSession (#4466) * Refactor/simplify Promises in MatrixRTCSession * Update src/matrixrtc/MatrixRTCSession.ts Co-authored-by: Hugh Nimmo-Smith * Fix+document+test leaveRoomSession's return value * Throw instead of using expect in teardown because lint rules forbid using expect outside of test functions --------- Co-authored-by: Hugh Nimmo-Smith --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 8 ++++-- src/matrixrtc/MatrixRTCSession.ts | 28 +++++++++----------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 51f9cef3f70..8424d97048f 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -419,9 +419,13 @@ describe("MatrixRTCSession", () => { sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); }); - afterEach(() => { + afterEach(async () => { + const wasJoined = sess!.isJoined(); // stop the timers - sess!.leaveRoomSession(); + const left = await sess!.leaveRoomSession(); + if (left !== wasJoined) { + throw new Error(`Unexpected leave result: wanted ${wasJoined}, got ${left}`); + } }); it("starts un-joined", () => { diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index e8a2916d043..b3520551956 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -38,6 +38,7 @@ import { MatrixError } from "../http-api/errors.ts"; import { MatrixEvent } from "../models/event.ts"; import { isLivekitFocusActive } from "./LivekitFocus.ts"; import { ExperimentalGroupCallRoomMemberState } from "../webrtc/groupCall.ts"; +import { sleep } from "../utils.ts"; const logger = rootLogger.getChild("MatrixRTCSession"); @@ -343,11 +344,12 @@ export class MatrixRTCSession extends TypedEventEmitter { if (!this.isJoined()) { logger.info(`Not joined to session in room ${this.room.roomId}: ignoring leave call`); - return new Promise((resolve) => resolve(false)); + return false; } const userId = this.client.getUserId(); @@ -377,19 +379,15 @@ export class MatrixRTCSession extends TypedEventEmitter { - if (timeout) { - // will never resolve if timeout is not set - setTimeout(r, timeout, "timeout"); - } - }); - return new Promise((resolve) => { - Promise.race([this.triggerCallMembershipEventUpdate(), timeoutPromise]).then((value) => { - // The timeoutPromise returns the string 'timeout' and the membership update void - // A success implies that the membership update was quicker then the timeout. - resolve(value != "timeout"); - }); - }); + if (timeout) { + // The sleep promise returns the string 'timeout' and the membership update void + // A success implies that the membership update was quicker then the timeout. + const raceResult = await Promise.race([this.triggerCallMembershipEventUpdate(), sleep(timeout, "timeout")]); + return raceResult !== "timeout"; + } else { + await this.triggerCallMembershipEventUpdate(); + return true; + } } public getActiveFocus(): Focus | undefined { @@ -1102,7 +1100,7 @@ export class MatrixRTCSession extends TypedEventEmitter setTimeout(resolve, resendDelay)); + await sleep(resendDelay); await this.triggerCallMembershipEventUpdate(); } } From f891fe4423ac2a2acc08efccdd6e26324b820518 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 25 Oct 2024 12:15:00 +0100 Subject: [PATCH 485/595] Fix gitflow workflow not handling edge case (#4463) of not needing to reset package to `#develop` Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-gitflow.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release-gitflow.yml b/.github/workflows/release-gitflow.yml index a04f545f5f2..282e45ebbd1 100644 --- a/.github/workflows/release-gitflow.yml +++ b/.github/workflows/release-gitflow.yml @@ -61,26 +61,25 @@ jobs: CURRENT_VERSION=$(cat package.json | jq -r .dependencies[\"$PACKAGE\"]) echo "Current $PACKAGE version is $CURRENT_VERSION" - if [ "$CURRENT_VERSION" == "null" ] + if [[ "$CURRENT_VERSION" == "null" ]] then echo "Unable to find $PACKAGE in package.json" exit 1 fi - if [ "$CURRENT_VERSION" == "develop" ] + if [[ "$CURRENT_VERSION" == *"#develop" ]] then echo "Not updating dependency $PACKAGE" continue fi - echo "Resetting $1 to develop branch..." + echo "Resetting $PACKAGE to develop branch..." yarn add "github:matrix-org/$PACKAGE#develop" git add -u git commit -m "Reset $PACKAGE back to develop branch" done <<< "$DEPENDENCIES" env: DEPENDENCIES: ${{ inputs.dependencies }} - FINAL: ${{ inputs.final }} - name: Push changes run: git push origin develop From 3cc3bd07285bad2ed32c29dbe75283d8df94c7e6 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Fri, 25 Oct 2024 13:48:44 +0100 Subject: [PATCH 486/595] Avoid | notation in log messages (#4473) We used to use the notation `|` fairly widely in log messages, but since the transition to rust crypto, it's unusual and now somewhat confusing. Make the log messages more explicit. --- src/rust-crypto/rust-crypto.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 3b12c009db7..6f5e0af6c64 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -1537,7 +1537,7 @@ export class RustCrypto extends TypedEventEmitter Date: Fri, 25 Oct 2024 14:32:44 +0100 Subject: [PATCH 487/595] Do not rotate MatrixRTC media encryption key when a new member joins a session (#4472) * Do not rotate MatrixRTC media encryption key when a new member joins a call This change reverts https://github.com/matrix-org/matrix-js-sdk/pull/4422. Instead, the rotation when a new member joins will be reintroduced as part of supporting to-device based MatrixRTC encryption key distribution. * Improve function name --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 23 ++++++++------------ src/matrixrtc/MatrixRTCSession.ts | 12 +++++----- 2 files changed, 15 insertions(+), 20 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 8424d97048f..df998c2d1ac 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -773,7 +773,7 @@ describe("MatrixRTCSession", () => { expect(client.cancelPendingEvent).toHaveBeenCalledWith(eventSentinel); }); - it("rotates key if a new member joins", async () => { + it("Re-sends key if a new member joins", async () => { jest.useFakeTimers(); try { const mockRoom = makeMockRoom([membershipTemplate]); @@ -784,9 +784,7 @@ describe("MatrixRTCSession", () => { }); sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); - const firstKeysPayload = await keysSentPromise1; - expect(firstKeysPayload.keys).toHaveLength(1); - expect(firstKeysPayload.keys[0].index).toEqual(0); + await keysSentPromise1; expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(1); sendEventMock.mockClear(); @@ -808,14 +806,9 @@ describe("MatrixRTCSession", () => { .mockReturnValue(makeMockRoomState([membershipTemplate, member2], mockRoom.roomId)); sess.onMembershipUpdate(); - jest.advanceTimersByTime(10000); - - const secondKeysPayload = await keysSentPromise2; + await keysSentPromise2; expect(sendEventMock).toHaveBeenCalled(); - expect(secondKeysPayload.keys).toHaveLength(1); - expect(secondKeysPayload.keys[0].index).toEqual(1); - expect(secondKeysPayload.keys[0].key).not.toEqual(firstKeysPayload.keys[0].key); expect(sess!.statistics.counters.roomEventEncryptionKeysSent).toEqual(2); } finally { jest.useRealTimers(); @@ -1103,8 +1096,8 @@ describe("MatrixRTCSession", () => { } jest.useFakeTimers(); try { - // start with a single member - const mockRoom = makeMockRoom(members.slice(0, 1)); + // start with all members + const mockRoom = makeMockRoom(members); for (let i = 0; i < membersToTest; i++) { const keysSentPromise = new Promise((resolve) => { @@ -1116,10 +1109,12 @@ describe("MatrixRTCSession", () => { sess = MatrixRTCSession.roomSessionForRoom(client, mockRoom); sess.joinRoomSession([mockFocus], mockFocus, { manageMediaKeys: true }); } else { - // otherwise update the state + // otherwise update the state reducing the membership each time in order to trigger key rotation mockRoom.getLiveTimeline().getState = jest .fn() - .mockReturnValue(makeMockRoomState(members.slice(0, i + 1), mockRoom.roomId)); + .mockReturnValue( + makeMockRoomState(members.slice(0, membersToTest - i), mockRoom.roomId), + ); } sess!.onMembershipUpdate(); diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index b3520551956..0e4b385b951 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -328,7 +328,7 @@ export class MatrixRTCSession extends TypedEventEmitter !oldFingerprints.has(x)); if (candidateUpdates) { logger.debug(`Member(s) have updated/reconnected: re-sending keys to everyone`); - this.requestKeyEventSend(); + this.requestSendCurrentKey(); } } } From 31aeb3044f88dc5c0d1ede4373b7cafc11cd77be Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Mon, 28 Oct 2024 11:32:17 +0000 Subject: [PATCH 488/595] Add CryptoApi.encryptToDeviceMessages() and deprecate Crypto.encryptAndSendToDevices() (#4380) * Add CryptoApi. encryptToDeviceMessages Deprecate Crypto. encryptAndSendToDevices and MatrixClient. encryptAndSendToDevices * Overload MatrixClient. encryptAndSendToDevices instead of deprecating * Revert "Overload MatrixClient. encryptAndSendToDevices instead of deprecating" This reverts commit 6a0d8e26385c34d40e8c2ed1e34cb5119c12456c. * Feedback from code review * Use temporary pre-release build of @matrix-org/matrix-sdk-crypto-wasm * Deduplicate user IDs * Test for RustCrypto implementation * Use ensureSessionsForUsers() * Encrypt to-device messages in parallel * Use release version of matrix-sdk-crypto-wasm * Upgrade matrix-sdk-crypto-wasm to v8 * Sync with develop * Add test for olmlib CryptoApi * Fix link * Feedback from review * Move libolm implementation to better place in file * FIx doc * Integration test * Make sure test device is known to client * Feedback from review --- spec/integ/crypto/to-device-messages.spec.ts | 152 +++++++++++++++++++ spec/unit/crypto.spec.ts | 112 ++++++++++++++ spec/unit/rust-crypto/rust-crypto.spec.ts | 118 ++++++++++++++ src/client.ts | 2 +- src/crypto-api/index.ts | 17 +++ src/crypto/index.ts | 144 +++++++++++------- src/rust-crypto/rust-crypto.ts | 49 +++++- 7 files changed, 541 insertions(+), 53 deletions(-) create mode 100644 spec/integ/crypto/to-device-messages.spec.ts diff --git a/spec/integ/crypto/to-device-messages.spec.ts b/spec/integ/crypto/to-device-messages.spec.ts new file mode 100644 index 00000000000..ee15266ce98 --- /dev/null +++ b/spec/integ/crypto/to-device-messages.spec.ts @@ -0,0 +1,152 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import fetchMock from "fetch-mock-jest"; +import "fake-indexeddb/auto"; +import { IDBFactory } from "fake-indexeddb"; + +import { CRYPTO_BACKENDS, getSyncResponse, InitCrypto, syncPromise } from "../../test-utils/test-utils"; +import { createClient, MatrixClient } from "../../../src"; +import * as testData from "../../test-utils/test-data"; +import { E2EKeyResponder } from "../../test-utils/E2EKeyResponder"; +import { SyncResponder } from "../../test-utils/SyncResponder"; +import { E2EKeyReceiver } from "../../test-utils/E2EKeyReceiver"; + +afterEach(() => { + // reset fake-indexeddb after each test, to make sure we don't leak connections + // cf https://github.com/dumbmatter/fakeIndexedDB#wipingresetting-the-indexeddb-for-a-fresh-state + // eslint-disable-next-line no-global-assign + indexedDB = new IDBFactory(); +}); + +/** + * Integration tests for to-device messages functionality. + * + * These tests work by intercepting HTTP requests via fetch-mock rather than mocking out bits of the client, so as + * to provide the most effective integration tests possible. + */ +describe.each(Object.entries(CRYPTO_BACKENDS))("to-device-messages (%s)", (backend: string, initCrypto: InitCrypto) => { + let aliceClient: MatrixClient; + + /** an object which intercepts `/keys/query` requests on the test homeserver */ + let e2eKeyResponder: E2EKeyResponder; + + beforeEach( + async () => { + // anything that we don't have a specific matcher for silently returns a 404 + fetchMock.catch(404); + fetchMock.config.warnOnFallback = false; + + const homeserverUrl = "https://server.com"; + aliceClient = createClient({ + baseUrl: homeserverUrl, + userId: testData.TEST_USER_ID, + accessToken: "akjgkrgjsalice", + deviceId: testData.TEST_DEVICE_ID, + }); + + e2eKeyResponder = new E2EKeyResponder(homeserverUrl); + new E2EKeyReceiver(homeserverUrl); + const syncResponder = new SyncResponder(homeserverUrl); + + // add bob as known user + syncResponder.sendOrQueueSyncResponse(getSyncResponse([testData.BOB_TEST_USER_ID])); + + // Silence warnings from the backup manager + fetchMock.getOnce(new URL("/_matrix/client/v3/room_keys/version", homeserverUrl).toString(), { + status: 404, + body: { errcode: "M_NOT_FOUND" }, + }); + + fetchMock.get(new URL("/_matrix/client/v3/pushrules/", homeserverUrl).toString(), {}); + fetchMock.get(new URL("/_matrix/client/versions/", homeserverUrl).toString(), {}); + fetchMock.post( + new URL( + `/_matrix/client/v3/user/${encodeURIComponent(testData.TEST_USER_ID)}/filter`, + homeserverUrl, + ).toString(), + { filter_id: "fid" }, + ); + + await initCrypto(aliceClient); + }, + /* it can take a while to initialise the crypto library on the first pass, so bump up the timeout. */ + 10000, + ); + + afterEach(async () => { + aliceClient.stopClient(); + fetchMock.mockReset(); + }); + + describe("encryptToDeviceMessages", () => { + it("returns empty batch for device that is not known", async () => { + await aliceClient.startClient(); + + const toDeviceBatch = await aliceClient + .getCrypto() + ?.encryptToDeviceMessages( + "m.test.event", + [{ userId: testData.BOB_TEST_USER_ID, deviceId: testData.BOB_TEST_DEVICE_ID }], + { + some: "content", + }, + ); + + expect(toDeviceBatch).toBeDefined(); + const { batch, eventType } = toDeviceBatch!; + expect(eventType).toBe("m.room.encrypted"); + expect(batch.length).toBe(0); + }); + + it("returns encrypted batch for known device", async () => { + await aliceClient.startClient(); + e2eKeyResponder.addDeviceKeys(testData.BOB_SIGNED_TEST_DEVICE_DATA); + fetchMock.post("express:/_matrix/client/v3/keys/claim", () => ({ + one_time_keys: testData.BOB_ONE_TIME_KEYS, + })); + await syncPromise(aliceClient); + + const toDeviceBatch = await aliceClient + .getCrypto() + ?.encryptToDeviceMessages( + "m.test.event", + [{ userId: testData.BOB_TEST_USER_ID, deviceId: testData.BOB_TEST_DEVICE_ID }], + { + some: "content", + }, + ); + + expect(toDeviceBatch?.batch.length).toBe(1); + expect(toDeviceBatch?.eventType).toBe("m.room.encrypted"); + const { deviceId, payload, userId } = toDeviceBatch!.batch[0]; + expect(deviceId).toBe(testData.BOB_TEST_DEVICE_ID); + expect(userId).toBe(testData.BOB_TEST_USER_ID); + expect(payload.algorithm).toBe("m.olm.v1.curve25519-aes-sha2"); + expect(payload.sender_key).toEqual(expect.any(String)); + expect(payload.ciphertext).toEqual( + expect.objectContaining({ + [testData.BOB_SIGNED_TEST_DEVICE_DATA.keys[`curve25519:${testData.BOB_TEST_DEVICE_ID}`]]: { + body: expect.any(String), + type: 0, + }, + }), + ); + + // for future: check that bob's device can decrypt the ciphertext? + }); + }); +}); diff --git a/spec/unit/crypto.spec.ts b/spec/unit/crypto.spec.ts index fa287a3a9e2..616c8f95255 100644 --- a/spec/unit/crypto.spec.ts +++ b/spec/unit/crypto.spec.ts @@ -26,6 +26,7 @@ import { CryptoBackend } from "../../src/common-crypto/CryptoBackend"; import { EventDecryptionResult } from "../../src/common-crypto/CryptoBackend"; import * as testData from "../test-utils/test-data"; import { KnownMembership } from "../../src/@types/membership"; +import type { DeviceInfoMap } from "../../src/crypto/DeviceList"; const Olm = global.Olm; @@ -1245,6 +1246,117 @@ describe("Crypto", function () { }); }); + describe("encryptToDeviceMessages", () => { + let client: TestClient; + let ensureOlmSessionsForDevices: jest.SpiedFunction; + let encryptMessageForDevice: jest.SpiedFunction; + const payload = { hello: "world" }; + let encryptedPayload: object; + let crypto: Crypto; + + beforeEach(async () => { + ensureOlmSessionsForDevices = jest.spyOn(olmlib, "ensureOlmSessionsForDevices"); + ensureOlmSessionsForDevices.mockResolvedValue(new Map()); + encryptMessageForDevice = jest.spyOn(olmlib, "encryptMessageForDevice"); + encryptMessageForDevice.mockImplementation(async (...[result, , , , , , payload]) => { + result.plaintext = { type: 0, body: JSON.stringify(payload) }; + }); + + client = new TestClient("@alice:example.org", "aliceweb"); + + // running initCrypto should trigger a key upload + client.httpBackend.when("POST", "/keys/upload").respond(200, {}); + await Promise.all([client.client.initCrypto(), client.httpBackend.flush("/keys/upload", 1)]); + + encryptedPayload = { + algorithm: "m.olm.v1.curve25519-aes-sha2", + sender_key: client.client.crypto!.olmDevice.deviceCurve25519Key, + ciphertext: { plaintext: { type: 0, body: JSON.stringify(payload) } }, + }; + + crypto = client.client.getCrypto() as Crypto; + }); + + afterEach(async () => { + ensureOlmSessionsForDevices.mockRestore(); + encryptMessageForDevice.mockRestore(); + await client.stop(); + }); + + it("returns encrypted batch where devices known", async () => { + const deviceInfoMap: DeviceInfoMap = new Map([ + [ + "@bob:example.org", + new Map([ + ["bobweb", new DeviceInfo("bobweb")], + ["bobmobile", new DeviceInfo("bobmobile")], + ]), + ], + ["@carol:example.org", new Map([["caroldesktop", new DeviceInfo("caroldesktop")]])], + ]); + jest.spyOn(crypto.deviceList, "downloadKeys").mockResolvedValue(deviceInfoMap); + // const deviceInfoMap = await this.downloadKeys(Array.from(userIds), false); + + const batch = await client.client.getCrypto()?.encryptToDeviceMessages( + "m.test.type", + [ + { userId: "@bob:example.org", deviceId: "bobweb" }, + { userId: "@bob:example.org", deviceId: "bobmobile" }, + { userId: "@carol:example.org", deviceId: "caroldesktop" }, + { userId: "@carol:example.org", deviceId: "carolmobile" }, // not known + ], + payload, + ); + expect(crypto.deviceList.downloadKeys).toHaveBeenCalledWith( + ["@bob:example.org", "@carol:example.org"], + false, + ); + expect(encryptMessageForDevice).toHaveBeenCalledTimes(3); + const expectedPayload = expect.objectContaining({ + ...encryptedPayload, + "org.matrix.msgid": expect.any(String), + "sender_key": expect.any(String), + }); + expect(batch?.eventType).toEqual("m.room.encrypted"); + expect(batch?.batch.length).toEqual(3); + expect(batch).toEqual({ + eventType: "m.room.encrypted", + batch: expect.arrayContaining([ + { + userId: "@bob:example.org", + deviceId: "bobweb", + payload: expectedPayload, + }, + { + userId: "@bob:example.org", + deviceId: "bobmobile", + payload: expectedPayload, + }, + { + userId: "@carol:example.org", + deviceId: "caroldesktop", + payload: expectedPayload, + }, + ]), + }); + }); + + it("returns empty batch if no devices known", async () => { + jest.spyOn(crypto.deviceList, "downloadKeys").mockResolvedValue(new Map()); + const batch = await crypto.encryptToDeviceMessages( + "m.test.type", + [ + { deviceId: "AAA", userId: "@user1:domain" }, + { deviceId: "BBB", userId: "@user1:domain" }, + { deviceId: "CCC", userId: "@user2:domain" }, + ], + payload, + ); + expect(batch?.eventType).toEqual("m.room.encrypted"); + expect(batch?.batch).toEqual([]); + }); + }); + describe("checkSecretStoragePrivateKey", () => { let client: TestClient; diff --git a/spec/unit/rust-crypto/rust-crypto.spec.ts b/spec/unit/rust-crypto/rust-crypto.spec.ts index de93bc9771d..117112dd09b 100644 --- a/spec/unit/rust-crypto/rust-crypto.spec.ts +++ b/spec/unit/rust-crypto/rust-crypto.spec.ts @@ -1593,6 +1593,124 @@ describe("RustCrypto", () => { await expect(rustCrypto.exportSecretsBundle()).resolves.toEqual(expect.objectContaining(bundle)); }); }); + + describe("encryptToDeviceMessages", () => { + let rustCrypto: RustCrypto; + let testOlmMachine: RustSdkCryptoJs.OlmMachine; + + beforeEach(async () => { + testOlmMachine = await OlmMachine.initialize( + new RustSdkCryptoJs.UserId(testData.TEST_USER_ID), + new RustSdkCryptoJs.DeviceId(testData.TEST_DEVICE_ID), + ); + jest.spyOn(OlmMachine, "initFromStore").mockResolvedValue(testOlmMachine); + rustCrypto = await makeTestRustCrypto(); + expect(OlmMachine.initFromStore).toHaveBeenCalled(); + }); + + afterEach(() => { + testOlmMachine?.free(); + }); + + const payload = { hello: "world" }; + + it("returns empty batch if devices not known", async () => { + const getMissingSessions = jest.spyOn(testOlmMachine, "getMissingSessions"); + const getDevice = jest.spyOn(testOlmMachine, "getDevice"); + const batch = await rustCrypto.encryptToDeviceMessages( + "m.test.type", + [ + { deviceId: "AAA", userId: "@user1:domain" }, + { deviceId: "BBB", userId: "@user1:domain" }, + { deviceId: "CCC", userId: "@user2:domain" }, + ], + payload, + ); + expect(getMissingSessions.mock.calls[0][0].length).toBe(2); + expect(getDevice).toHaveBeenCalledTimes(3); + expect(batch?.eventType).toEqual("m.room.encrypted"); + expect(batch?.batch).toEqual([]); + }); + + it("returns encrypted batch for known devices", async () => { + // Make m aware of another device, and get some OTK to be able to establish a session. + await testOlmMachine.markRequestAsSent( + "foo", + RustSdkCryptoJs.RequestType.KeysQuery, + JSON.stringify({ + device_keys: { + "@example:localhost": { + AFGUOBTZWM: { + algorithms: ["m.olm.v1.curve25519-aes-sha2", "m.megolm.v1.aes-sha2"], + device_id: "AFGUOBTZWM", + keys: { + "curve25519:AFGUOBTZWM": "boYjDpaC+7NkECQEeMh5dC+I1+AfriX0VXG2UV7EUQo", + "ed25519:AFGUOBTZWM": "NayrMQ33ObqMRqz6R9GosmHdT6HQ6b/RX/3QlZ2yiec", + }, + signatures: { + "@example:localhost": { + "ed25519:AFGUOBTZWM": + "RoSWvru1jj6fs2arnTedWsyIyBmKHMdOu7r9gDi0BZ61h9SbCK2zLXzuJ9ZFLao2VvA0yEd7CASCmDHDLYpXCA", + }, + }, + user_id: "@example:localhost", + unsigned: { + device_display_name: "rust-sdk", + }, + }, + }, + }, + failures: {}, + }), + ); + + await testOlmMachine.markRequestAsSent( + "bar", + RustSdkCryptoJs.RequestType.KeysClaim, + JSON.stringify({ + one_time_keys: { + "@example:localhost": { + AFGUOBTZWM: { + "signed_curve25519:AAAABQ": { + key: "9IGouMnkB6c6HOd4xUsNv4i3Dulb4IS96TzDordzOws", + signatures: { + "@example:localhost": { + "ed25519:AFGUOBTZWM": + "2bvUbbmJegrV0eVP/vcJKuIWC3kud+V8+C0dZtg4dVovOSJdTP/iF36tQn2bh5+rb9xLlSeztXBdhy4c+LiOAg", + }, + }, + }, + }, + }, + }, + failures: {}, + }), + ); + + const batch = await rustCrypto.encryptToDeviceMessages( + "m.test.type", + [ + { deviceId: "AAA", userId: "@user1:domain" }, + { deviceId: "BBB", userId: "@user1:domain" }, + { deviceId: "CCC", userId: "@user2:domain" }, + { deviceId: "AFGUOBTZWM", userId: "@example:localhost" }, + ], + payload, + ); + expect(batch?.eventType).toEqual("m.room.encrypted"); + expect(batch?.batch.length).toEqual(1); + expect(batch?.batch[0].deviceId).toEqual("AFGUOBTZWM"); + expect(batch?.batch[0].userId).toEqual("@example:localhost"); + expect(batch?.batch[0].payload).toEqual( + expect.objectContaining({ + "algorithm": "m.olm.v1.curve25519-aes-sha2", + "ciphertext": expect.any(Object), + "org.matrix.msgid": expect.any(String), + "sender_key": expect.any(String), + }), + ); + }); + }); }); /** Build a MatrixHttpApi instance */ diff --git a/src/client.ts b/src/client.ts index 39cfa8e9629..023231532e1 100644 --- a/src/client.ts +++ b/src/client.ts @@ -3260,7 +3260,7 @@ export class MatrixClient extends TypedEventEmitter[], payload: object): Promise { if (!this.crypto) { diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index 7e130b190da..0b8a870aefe 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -16,6 +16,7 @@ limitations under the License. import type { SecretsBundle } from "@matrix-org/matrix-sdk-crypto-wasm"; import type { IMegolmSessionData } from "../@types/crypto.ts"; +import type { ToDeviceBatch, ToDevicePayload } from "../models/ToDeviceMessage.ts"; import { Room } from "../models/room.ts"; import { DeviceMap } from "../models/device.ts"; import { UIAuthCallback } from "../interactive-auth.ts"; @@ -364,6 +365,22 @@ export interface CryptoApi { */ getEncryptionInfoForEvent(event: MatrixEvent): Promise; + /** + * Encrypts a given payload object via Olm to-device messages to a given + * set of devices. + * + * @param eventType - the type of the event to send. + * @param devices - an array of devices to encrypt the payload for. + * @param payload - the payload to encrypt. + * + * @returns the batch of encrypted payloads which can then be sent via {@link matrix.MatrixClient#queueToDevice}. + */ + encryptToDeviceMessages( + eventType: string, + devices: { userId: string; deviceId: string }[], + payload: ToDevicePayload, + ): Promise; + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // // Device/User verification diff --git a/src/crypto/index.ts b/src/crypto/index.ts index 829000bf98b..c252ba15a4b 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -53,7 +53,7 @@ import { IStore } from "../store/index.ts"; import { Room, RoomEvent } from "../models/room.ts"; import { RoomMember, RoomMemberEvent } from "../models/room-member.ts"; import { EventStatus, IContent, IEvent, MatrixEvent, MatrixEventEvent } from "../models/event.ts"; -import { ToDeviceBatch } from "../models/ToDeviceMessage.ts"; +import { ToDeviceBatch, ToDevicePayload } from "../models/ToDeviceMessage.ts"; import { ClientEvent, IKeysUploadResponse, ISignedKey, IUploadKeySignaturesResponse, MatrixClient } from "../client.ts"; import { IRoomEncryption, RoomList } from "./RoomList.ts"; import { IKeyBackupInfo } from "./keybackup.ts"; @@ -3483,59 +3483,12 @@ export class Crypto extends TypedEventEmitter[], payload: object): Promise { - const toDeviceBatch: ToDeviceBatch = { - eventType: EventType.RoomMessageEncrypted, - batch: [], - }; - try { - await Promise.all( - userDeviceInfoArr.map(async ({ userId, deviceInfo }) => { - const deviceId = deviceInfo.deviceId; - const encryptedContent: IEncryptedContent = { - algorithm: olmlib.OLM_ALGORITHM, - sender_key: this.olmDevice.deviceCurve25519Key!, - ciphertext: {}, - [ToDeviceMessageId]: uuidv4(), - }; - - toDeviceBatch.batch.push({ - userId, - deviceId, - payload: encryptedContent, - }); - - await olmlib.ensureOlmSessionsForDevices( - this.olmDevice, - this.baseApis, - new Map([[userId, [deviceInfo]]]), - ); - await olmlib.encryptMessageForDevice( - encryptedContent.ciphertext, - this.userId, - this.deviceId, - this.olmDevice, - userId, - deviceInfo, - payload, - ); - }), - ); - - // prune out any devices that encryptMessageForDevice could not encrypt for, - // in which case it will have just not added anything to the ciphertext object. - // There's no point sending messages to devices if we couldn't encrypt to them, - // since that's effectively a blank message. - toDeviceBatch.batch = toDeviceBatch.batch.filter((msg) => { - if (Object.keys(msg.payload.ciphertext).length > 0) { - return true; - } else { - logger.log(`No ciphertext for device ${msg.userId}:${msg.deviceId}: pruning`); - return false; - } - }); + const toDeviceBatch = await this.prepareToDeviceBatch(userDeviceInfoArr, payload); try { await this.baseApis.queueToDevice(toDeviceBatch); @@ -3549,6 +3502,95 @@ export class Crypto extends TypedEventEmitter[], + payload: object, + ): Promise { + const toDeviceBatch: ToDeviceBatch = { + eventType: EventType.RoomMessageEncrypted, + batch: [], + }; + + await Promise.all( + userDeviceInfoArr.map(async ({ userId, deviceInfo }) => { + const deviceId = deviceInfo.deviceId; + const encryptedContent: IEncryptedContent = { + algorithm: olmlib.OLM_ALGORITHM, + sender_key: this.olmDevice.deviceCurve25519Key!, + ciphertext: {}, + [ToDeviceMessageId]: uuidv4(), + }; + + toDeviceBatch.batch.push({ + userId, + deviceId, + payload: encryptedContent, + }); + + await olmlib.ensureOlmSessionsForDevices( + this.olmDevice, + this.baseApis, + new Map([[userId, [deviceInfo]]]), + ); + await olmlib.encryptMessageForDevice( + encryptedContent.ciphertext, + this.userId, + this.deviceId, + this.olmDevice, + userId, + deviceInfo, + payload, + ); + }), + ); + + // prune out any devices that encryptMessageForDevice could not encrypt for, + // in which case it will have just not added anything to the ciphertext object. + // There's no point sending messages to devices if we couldn't encrypt to them, + // since that's effectively a blank message. + toDeviceBatch.batch = toDeviceBatch.batch.filter((msg) => { + if (Object.keys(msg.payload.ciphertext).length > 0) { + return true; + } else { + logger.log(`No ciphertext for device ${msg.userId}:${msg.deviceId}: pruning`); + return false; + } + }); + + return toDeviceBatch; + } + + /** + * Implementation of {@link Crypto.CryptoApi#encryptToDeviceMessages}. + */ + public async encryptToDeviceMessages( + eventType: string, + devices: { userId: string; deviceId: string }[], + payload: ToDevicePayload, + ): Promise { + const userIds = new Set(devices.map(({ userId }) => userId)); + const deviceInfoMap = await this.downloadKeys(Array.from(userIds), false); + + const userDeviceInfoArr: IOlmDevice[] = []; + + devices.forEach(({ userId, deviceId }) => { + const devices = deviceInfoMap.get(userId); + if (!devices) { + logger.warn(`No devices found for user ${userId}`); + return; + } + + if (devices.has(deviceId)) { + // Send the message to a specific device + userDeviceInfoArr.push({ userId, deviceInfo: devices.get(deviceId)! }); + } else { + logger.warn(`No device found for user ${userId} with id ${deviceId}`); + } + }); + + return this.prepareToDeviceBatch(userDeviceInfoArr, payload); + } + private onMembership = (event: MatrixEvent, member: RoomMember, oldMembership?: string): void => { try { this.onRoomMembership(event, member, oldMembership); diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 6f5e0af6c64..2d65e7f5c58 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -21,6 +21,7 @@ import type { IEventDecryptionResult, IMegolmSessionData } from "../@types/crypt import { KnownMembership } from "../@types/membership.ts"; import type { IDeviceLists, IToDeviceEvent } from "../sync-accumulator.ts"; import type { IEncryptedEventInfo } from "../crypto/api.ts"; +import type { ToDevicePayload, ToDeviceBatch } from "../models/ToDeviceMessage.ts"; import { MatrixEvent, MatrixEventEvent } from "../models/event.ts"; import { Room } from "../models/room.ts"; import { RoomMember } from "../models/room-member.ts"; @@ -30,7 +31,7 @@ import { DecryptionError, OnSyncCompletedData, } from "../common-crypto/CryptoBackend.ts"; -import { logger, Logger } from "../logger.ts"; +import { logger, Logger, LogSpan } from "../logger.ts"; import { IHttpOpts, MatrixHttpApi, Method } from "../http-api/index.ts"; import { RoomEncryptor } from "./RoomEncryptor.ts"; import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor.ts"; @@ -1316,6 +1317,52 @@ export class RustCrypto extends TypedEventEmitter { + const logger = new LogSpan(this.logger, "encryptToDeviceMessages"); + const uniqueUsers = new Set(devices.map(({ userId }) => userId)); + + // This will ensure we have Olm sessions for all of the users' devices. + // However, we only care about some of the devices. + // So, perhaps we can optimise this later on. + await this.keyClaimManager.ensureSessionsForUsers( + logger, + Array.from(uniqueUsers).map((userId) => new RustSdkCryptoJs.UserId(userId)), + ); + const batch: ToDeviceBatch = { + batch: [], + eventType: EventType.RoomMessageEncrypted, + }; + + await Promise.all( + devices.map(async ({ userId, deviceId }) => { + const device: RustSdkCryptoJs.Device | undefined = await this.olmMachine.getDevice( + new RustSdkCryptoJs.UserId(userId), + new RustSdkCryptoJs.DeviceId(deviceId), + ); + + if (device) { + const encryptedPayload = JSON.parse(await device.encryptToDeviceEvent(eventType, payload)); + batch.batch.push({ + deviceId, + userId, + payload: encryptedPayload, + }); + } else { + this.logger.warn(`encryptToDeviceMessages: unknown device ${userId}:${deviceId}`); + } + }), + ); + + return batch; + } + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // // SyncCryptoCallbacks implementation From 0e2f73d7a704cfba5b76563b15b7e3bfad6f11f4 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Mon, 28 Oct 2024 13:00:39 +0100 Subject: [PATCH 489/595] Deprecate `CreateSecretStorageOpts.keyBackupInfo` used in `CryptoApi.bootstrapSecretStorage.` (#4474) --- src/crypto-api/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index 0b8a870aefe..ea6177f7f85 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -974,6 +974,7 @@ export interface CreateSecretStorageOpts { /** * The current key backup object. If passed, * the passphrase and recovery key from this backup will be used. + * @deprecated Not used by the Rust crypto stack. */ keyBackupInfo?: KeyBackupInfo; From a8f8a9c14d25525738d61903705281de43047a14 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 29 Oct 2024 12:55:48 +0000 Subject: [PATCH 490/595] v34.10.0-rc.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 90feabfb67b..eb4d9d860ab 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.9.0", + "version": "34.10.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From e72859a44a396ab8fb57144bbe5bf709223363e3 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 29 Oct 2024 17:02:14 +0000 Subject: [PATCH 491/595] Update codeowners for `crypto-api` (#4478) Obviously, the crypto api is owned by the (web) crypto team! --- .github/CODEOWNERS | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 830c31be497..2c2f2441388 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -8,6 +8,7 @@ /spec/*/webrtc @matrix-org/element-call-reviewers /spec/*/matrixrtc @matrix-org/element-call-reviewers +/src/crypto-api @matrix-org/element-crypto-web-reviewers /src/crypto @matrix-org/element-crypto-web-reviewers /src/rust-crypto @matrix-org/element-crypto-web-reviewers /spec/integ/crypto @matrix-org/element-crypto-web-reviewers From fd73d5068cb2f1546a9f203967974d905ee66701 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Wed, 30 Oct 2024 09:36:44 +0000 Subject: [PATCH 492/595] Add RoomWidgetClient.sendToDeviceViaWidgetApi() (#4475) --- spec/unit/embedded.spec.ts | 30 +++++++++++++++++++++++++++++- src/embedded.ts | 21 +++++++++++++++++++++ 2 files changed, 50 insertions(+), 1 deletion(-) diff --git a/spec/unit/embedded.spec.ts b/spec/unit/embedded.spec.ts index d3b3e12359d..dc9952465a6 100644 --- a/spec/unit/embedded.spec.ts +++ b/spec/unit/embedded.spec.ts @@ -35,7 +35,7 @@ import { import { createRoomWidgetClient, MsgType, UpdateDelayedEventAction } from "../../src/matrix"; import { MatrixClient, ClientEvent, ITurnServer as IClientTurnServer } from "../../src/client"; import { SyncState } from "../../src/sync"; -import { ICapabilities } from "../../src/embedded"; +import { ICapabilities, RoomWidgetClient } from "../../src/embedded"; import { MatrixEvent } from "../../src/models/event"; import { ToDeviceBatch } from "../../src/models/ToDeviceMessage"; import { DeviceInfo } from "../../src/crypto/deviceinfo"; @@ -493,6 +493,23 @@ describe("RoomWidgetClient", () => { ["@bob:example.org"]: { ["bobDesktop"]: { hello: "bob!" } }, }; + const encryptedContentMap = new Map>([ + ["@alice:example.org", new Map([["aliceMobile", { hello: "alice!" }]])], + ["@bob:example.org", new Map([["bobDesktop", { hello: "bob!" }]])], + ]); + + it("sends unencrypted (sendToDeviceViaWidgetApi)", async () => { + await makeClient({ sendToDevice: ["org.example.foo"] }); + expect(widgetApi.requestCapabilityToSendToDevice).toHaveBeenCalledWith("org.example.foo"); + + await (client as RoomWidgetClient).sendToDeviceViaWidgetApi( + "org.example.foo", + false, + unencryptedContentMap, + ); + expect(widgetApi.sendToDevice).toHaveBeenCalledWith("org.example.foo", false, expectedRequestData); + }); + it("sends unencrypted (sendToDevice)", async () => { await makeClient({ sendToDevice: ["org.example.foo"] }); expect(widgetApi.requestCapabilityToSendToDevice).toHaveBeenCalledWith("org.example.foo"); @@ -534,6 +551,17 @@ describe("RoomWidgetClient", () => { }); }); + it("sends encrypted (sendToDeviceViaWidgetApi)", async () => { + await makeClient({ sendToDevice: ["org.example.foo"] }); + expect(widgetApi.requestCapabilityToSendToDevice).toHaveBeenCalledWith("org.example.foo"); + + await (client as RoomWidgetClient).sendToDeviceViaWidgetApi("org.example.foo", true, encryptedContentMap); + expect(widgetApi.sendToDevice).toHaveBeenCalledWith("org.example.foo", true, { + "@alice:example.org": { aliceMobile: { hello: "alice!" } }, + "@bob:example.org": { bobDesktop: { hello: "bob!" } }, + }); + }); + it.each([ { encrypted: false, title: "unencrypted" }, { encrypted: true, title: "encrypted" }, diff --git a/src/embedded.ts b/src/embedded.ts index 6e5efc67b28..a2be6209cdd 100644 --- a/src/embedded.ts +++ b/src/embedded.ts @@ -420,6 +420,27 @@ export class RoomWidgetClient extends MatrixClient { await this.widgetApi.sendToDevice((payload as { type: string }).type, true, recursiveMapToObject(contentMap)); } + /** + * Send an event to a specific list of devices via the widget API. Optionally encrypts the event. + * + * If you are using a full MatrixClient you would be calling {@link MatrixClient.getCrypto().encryptToDeviceMessages()} followed + * by {@link MatrixClient.queueToDevice}. + * + * However, this is combined into a single step when running as an embedded widget client. So, we expose this method for those + * that need it. + * + * @param eventType - Type of the event to send. + * @param encrypted - Whether the event should be encrypted. + * @param contentMap - The content to send. Map from user_id to device_id to content object. + */ + public async sendToDeviceViaWidgetApi( + eventType: string, + encrypted: boolean, + contentMap: SendToDeviceContentMap, + ): Promise { + await this.widgetApi.sendToDevice(eventType, encrypted, recursiveMapToObject(contentMap)); + } + // Overridden since we get TURN servers automatically over the widget API, // and this method would otherwise complain about missing an access token public async checkTurnServers(): Promise { From 16153e5d82bb45ab2f0b98aa44c8af6c216066d1 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Wed, 30 Oct 2024 14:12:27 +0100 Subject: [PATCH 493/595] Replace legacy keyBackup types (#4486) --- spec/unit/rust-crypto/backup.spec.ts | 10 ++++------ src/rust-crypto/backup.ts | 15 +++++++++++---- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/spec/unit/rust-crypto/backup.spec.ts b/spec/unit/rust-crypto/backup.spec.ts index 4b96c74f7cf..ab5b740ee64 100644 --- a/spec/unit/rust-crypto/backup.spec.ts +++ b/spec/unit/rust-crypto/backup.spec.ts @@ -3,13 +3,11 @@ import fetchMock from "fetch-mock-jest"; import * as RustSdkCryptoJs from "@matrix-org/matrix-sdk-crypto-wasm"; import { HttpApiEvent, HttpApiEventHandlerMap, MatrixHttpApi, TypedEventEmitter } from "../../../src"; -import { CryptoEvent } from "../../../src/crypto-api/index.ts"; +import { CryptoEvent, KeyBackupSession } from "../../../src/crypto-api/index.ts"; import { OutgoingRequestProcessor } from "../../../src/rust-crypto/OutgoingRequestProcessor"; import * as testData from "../../test-utils/test-data"; import * as TestData from "../../test-utils/test-data"; -import { IKeyBackup } from "../../../src/crypto/backup"; -import { IKeyBackupSession } from "../../../src/crypto/keybackup"; -import { RustBackupManager } from "../../../src/rust-crypto/backup"; +import { RustBackupManager, KeyBackup } from "../../../src/rust-crypto/backup"; describe("Upload keys to backup", () => { /** The backup manager under test */ @@ -27,7 +25,7 @@ describe("Upload keys to backup", () => { let idGenerator = 0; function mockBackupRequest(keyCount: number): RustSdkCryptoJs.KeysBackupRequest { - const requestBody: IKeyBackup = { + const requestBody: KeyBackup = { rooms: { "!room1:server": { sessions: {}, @@ -35,7 +33,7 @@ describe("Upload keys to backup", () => { }, }; for (let i = 0; i < keyCount; i++) { - requestBody.rooms["!room1:server"].sessions["session" + i] = {} as IKeyBackupSession; + requestBody.rooms["!room1:server"].sessions["session" + i] = {} as KeyBackupSession; } return { id: "id" + idGenerator++, diff --git a/src/rust-crypto/backup.ts b/src/rust-crypto/backup.ts index d4a91bd0fa4..63d1afdb02a 100644 --- a/src/rust-crypto/backup.ts +++ b/src/rust-crypto/backup.ts @@ -24,6 +24,7 @@ import { KeyBackupInfo, KeyBackupSession, Curve25519SessionData, + KeyBackupRoomSessions, } from "../crypto-api/keybackup.ts"; import { logger } from "../logger.ts"; import { ClientPrefix, IHttpOpts, MatrixError, MatrixHttpApi, Method } from "../http-api/index.ts"; @@ -34,8 +35,6 @@ import { OutgoingRequestProcessor } from "./OutgoingRequestProcessor.ts"; import { sleep } from "../utils.ts"; import { BackupDecryptor } from "../common-crypto/CryptoBackend.ts"; import { ImportRoomKeyProgressData, ImportRoomKeysOpts, CryptoEvent } from "../crypto-api/index.ts"; -import { IKeyBackupInfo } from "../crypto/keybackup.ts"; -import { IKeyBackup } from "../crypto/backup.ts"; import { AESEncryptedSecretStoragePayload } from "../@types/AESEncryptedSecretStoragePayload.ts"; /** Authentification of the backup info, depends on algorithm */ @@ -488,7 +487,7 @@ export class RustBackupManager extends TypedEventEmitter, -): Promise { +): Promise { try { return await http.authedRequest(Method.Get, "/room_keys/version", undefined, undefined, { prefix: ClientPrefix.V3, @@ -679,3 +678,11 @@ export type RustBackupCryptoEventMap = { [CryptoEvent.KeyBackupFailed]: (errCode: string) => void; [CryptoEvent.KeyBackupDecryptionKeyCached]: (version: string) => void; }; + +/** + * Response from GET `/room_keys/keys` endpoint. + * See https://spec.matrix.org/latest/client-server-api/#get_matrixclientv3room_keyskeys + */ +export interface KeyBackup { + rooms: Record; +} From 546047a0508622742f6d613ab5803cd4287689bc Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Wed, 30 Oct 2024 11:52:34 -0400 Subject: [PATCH 494/595] Capture HTTP error response headers & handle Retry-After header (MSC4041) (#4471) * Include HTTP response headers in MatrixError * Lint * Support MSC4041 / Retry-After header * Fix tests * Remove redundant MatrixError parameter properties They are inherited from HTTPError, so there is no need to mark them as parameter properties. * Comment that retry_after_ms is deprecated * Properly handle colons in XHR header values Also remove the negation in the if-condition for better readability * Improve Retry-After parsing and docstring * Revert ternary operator to if statements for readability * Reuse resolved Headers for Content-Type parsing * Treat empty Content-Type differently from null * Add MatrixError#isRateLimitError This is separate from MatrixError#getRetryAfterMs because it's possible for a rate-limit error to have no Retry-After time, and having separate methods to check each makes that more clear. * Ignore HTTP status code when getting Retry-After because status codes other than 429 may have Retry-After * Catch Retry-After parsing errors * Add test coverage for HTTP error headers * Update license years * Move safe Retry-After lookup to global function so it can more conveniently check if an error is a MatrixError * Lint * Inline Retry-After header value parsing as it is only used in one place and doesn't need to be exported * Update docstrings Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Use bare catch Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Give HTTPError methods for rate-limit checks and make MatrixError inherit them * Cover undefined errcode in rate-limit check * Update safeGetRetryAfterMs docstring Be explicit that errors that don't look like rate-limiting errors will not pull a retry delay value from the error. * Use rate-limit helper functions in more places * Group the header tests --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- spec/unit/http-api/errors.spec.ts | 98 +++++++++++++ spec/unit/http-api/index.spec.ts | 8 +- spec/unit/http-api/utils.spec.ts | 138 +++++++++++++----- src/http-api/errors.ts | 85 ++++++++++- src/http-api/utils.ts | 49 ++++--- src/matrixrtc/MatrixRTCSession.ts | 6 +- .../PerSessionKeyBackupDownloader.ts | 18 ++- src/rust-crypto/backup.ts | 19 ++- 8 files changed, 342 insertions(+), 79 deletions(-) create mode 100644 spec/unit/http-api/errors.spec.ts diff --git a/spec/unit/http-api/errors.spec.ts b/spec/unit/http-api/errors.spec.ts new file mode 100644 index 00000000000..426d23ee0c1 --- /dev/null +++ b/spec/unit/http-api/errors.spec.ts @@ -0,0 +1,98 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import { MatrixError } from "../../../src"; + +type IErrorJson = MatrixError["data"]; + +describe("MatrixError", () => { + let headers: Headers; + + beforeEach(() => { + headers = new Headers({ "Content-Type": "application/json" }); + }); + + function makeMatrixError(httpStatus: number, data: IErrorJson): MatrixError { + return new MatrixError(data, httpStatus, undefined, undefined, headers); + } + + it("should accept absent retry time from rate-limit error", () => { + const err = makeMatrixError(429, { errcode: "M_LIMIT_EXCEEDED" }); + expect(err.isRateLimitError()).toBe(true); + expect(err.getRetryAfterMs()).toEqual(null); + }); + + it("should retrieve retry_after_ms from rate-limit error", () => { + const err = makeMatrixError(429, { errcode: "M_LIMIT_EXCEEDED", retry_after_ms: 150000 }); + expect(err.isRateLimitError()).toBe(true); + expect(err.getRetryAfterMs()).toEqual(150000); + }); + + it("should ignore retry_after_ms if errcode is not M_LIMIT_EXCEEDED", () => { + const err = makeMatrixError(429, { errcode: "M_UNKNOWN", retry_after_ms: 150000 }); + expect(err.isRateLimitError()).toBe(true); + expect(err.getRetryAfterMs()).toEqual(null); + }); + + it("should retrieve numeric Retry-After header from rate-limit error", () => { + headers.set("Retry-After", "120"); + const err = makeMatrixError(429, { errcode: "M_LIMIT_EXCEEDED", retry_after_ms: 150000 }); + expect(err.isRateLimitError()).toBe(true); + // prefer Retry-After header over retry_after_ms + expect(err.getRetryAfterMs()).toEqual(120000); + }); + + it("should retrieve Date Retry-After header from rate-limit error", () => { + headers.set("Retry-After", `${new Date(160000).toUTCString()}`); + jest.spyOn(global.Date, "now").mockImplementationOnce(() => 100000); + const err = makeMatrixError(429, { errcode: "M_LIMIT_EXCEEDED", retry_after_ms: 150000 }); + expect(err.isRateLimitError()).toBe(true); + // prefer Retry-After header over retry_after_ms + expect(err.getRetryAfterMs()).toEqual(60000); + }); + + it("should prefer M_FORBIDDEN errcode over HTTP status code 429", () => { + headers.set("Retry-After", "120"); + const err = makeMatrixError(429, { errcode: "M_FORBIDDEN" }); + expect(err.isRateLimitError()).toBe(false); + // retrieve Retry-After header even for non-M_LIMIT_EXCEEDED errors + expect(err.getRetryAfterMs()).toEqual(120000); + }); + + it("should prefer M_LIMIT_EXCEEDED errcode over HTTP status code 400", () => { + headers.set("Retry-After", "120"); + const err = makeMatrixError(400, { errcode: "M_LIMIT_EXCEEDED" }); + expect(err.isRateLimitError()).toBe(true); + // retrieve Retry-After header even for non-429 errors + expect(err.getRetryAfterMs()).toEqual(120000); + }); + + it("should reject invalid Retry-After header", () => { + for (const invalidValue of ["-1", "1.23", new Date(0).toString()]) { + headers.set("Retry-After", invalidValue); + const err = makeMatrixError(429, { errcode: "M_LIMIT_EXCEEDED" }); + expect(() => err.getRetryAfterMs()).toThrow( + "value is not a valid HTTP-date or non-negative decimal integer", + ); + } + }); + + it("should reject too-large Retry-After header", () => { + headers.set("Retry-After", "1" + Array(500).fill("0").join("")); + const err = makeMatrixError(429, { errcode: "M_LIMIT_EXCEEDED" }); + expect(() => err.getRetryAfterMs()).toThrow("integer value is too large"); + }); +}); diff --git a/spec/unit/http-api/index.spec.ts b/spec/unit/http-api/index.spec.ts index 668417ea9eb..ca20bee4561 100644 --- a/spec/unit/http-api/index.spec.ts +++ b/spec/unit/http-api/index.spec.ts @@ -1,5 +1,5 @@ /* -Copyright 2022 The Matrix.org Foundation C.I.C. +Copyright 2022 - 2024 The Matrix.org Foundation C.I.C. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -41,6 +41,7 @@ describe("MatrixHttpApi", () => { setRequestHeader: jest.fn(), onreadystatechange: undefined, getResponseHeader: jest.fn(), + getAllResponseHeaders: jest.fn(), } as unknown as XMLHttpRequest; // We stub out XHR here as it is not available in JSDOM // @ts-ignore @@ -171,7 +172,10 @@ describe("MatrixHttpApi", () => { xhr.readyState = DONE; xhr.responseText = '{"errcode": "M_NOT_FOUND", "error": "Not found"}'; xhr.status = 404; - mocked(xhr.getResponseHeader).mockReturnValue("application/json"); + mocked(xhr.getResponseHeader).mockImplementation((name) => + name.toLowerCase() === "content-type" ? "application/json" : null, + ); + mocked(xhr.getAllResponseHeaders).mockReturnValue("content-type: application/json\r\n"); // @ts-ignore xhr.onreadystatechange?.(new Event("test")); diff --git a/spec/unit/http-api/utils.spec.ts b/spec/unit/http-api/utils.spec.ts index 9d74f79dc7d..92c1e8ac20e 100644 --- a/spec/unit/http-api/utils.spec.ts +++ b/spec/unit/http-api/utils.spec.ts @@ -1,5 +1,5 @@ /* -Copyright 2022 The Matrix.org Foundation C.I.C. +Copyright 2022 - 2024 The Matrix.org Foundation C.I.C. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -86,13 +86,28 @@ describe("anySignal", () => { }); describe("parseErrorResponse", () => { + let headers: Headers; + const xhrHeaderMethods = { + getResponseHeader: (name: string) => headers.get(name), + getAllResponseHeaders: () => { + let allHeaders = ""; + headers.forEach((value, key) => { + allHeaders += `${key.toLowerCase()}: ${value}\r\n`; + }); + return allHeaders; + }, + }; + + beforeEach(() => { + headers = new Headers(); + }); + it("should resolve Matrix Errors from XHR", () => { + headers.set("Content-Type", "application/json"); expect( parseErrorResponse( { - getResponseHeader(name: string): string | null { - return name === "Content-Type" ? "application/json" : null; - }, + ...xhrHeaderMethods, status: 500, } as XMLHttpRequest, '{"errcode": "TEST"}', @@ -108,14 +123,11 @@ describe("parseErrorResponse", () => { }); it("should resolve Matrix Errors from fetch", () => { + headers.set("Content-Type", "application/json"); expect( parseErrorResponse( { - headers: { - get(name: string): string | null { - return name === "Content-Type" ? "application/json" : null; - }, - }, + headers, status: 500, } as Response, '{"errcode": "TEST"}', @@ -131,13 +143,12 @@ describe("parseErrorResponse", () => { }); it("should resolve Matrix Errors from XHR with urls", () => { + headers.set("Content-Type", "application/json"); expect( parseErrorResponse( { responseURL: "https://example.com", - getResponseHeader(name: string): string | null { - return name === "Content-Type" ? "application/json" : null; - }, + ...xhrHeaderMethods, status: 500, } as XMLHttpRequest, '{"errcode": "TEST"}', @@ -154,15 +165,12 @@ describe("parseErrorResponse", () => { }); it("should resolve Matrix Errors from fetch with urls", () => { + headers.set("Content-Type", "application/json"); expect( parseErrorResponse( { url: "https://example.com", - headers: { - get(name: string): string | null { - return name === "Content-Type" ? "application/json" : null; - }, - }, + headers, status: 500, } as Response, '{"errcode": "TEST"}', @@ -178,6 +186,66 @@ describe("parseErrorResponse", () => { ); }); + describe("with HTTP headers", () => { + function addHeaders(headers: Headers) { + headers.set("Age", "0"); + headers.set("Date", "Thu, 01 Jan 1970 00:00:00 GMT"); // value contains colons + headers.set("x-empty", ""); + headers.set("x-multi", "1"); + headers.append("x-multi", "2"); + } + + function compareHeaders(expectedHeaders: Headers, otherHeaders: Headers | undefined) { + expect(new Map(otherHeaders)).toEqual(new Map(expectedHeaders)); + } + + it("should resolve HTTP Errors from XHR with headers", () => { + headers.set("Content-Type", "text/plain"); + addHeaders(headers); + const err = parseErrorResponse({ + ...xhrHeaderMethods, + status: 500, + } as XMLHttpRequest) as HTTPError; + compareHeaders(headers, err.httpHeaders); + }); + + it("should resolve HTTP Errors from fetch with headers", () => { + headers.set("Content-Type", "text/plain"); + addHeaders(headers); + const err = parseErrorResponse({ + headers, + status: 500, + } as Response) as HTTPError; + compareHeaders(headers, err.httpHeaders); + }); + + it("should resolve Matrix Errors from XHR with headers", () => { + headers.set("Content-Type", "application/json"); + addHeaders(headers); + const err = parseErrorResponse( + { + ...xhrHeaderMethods, + status: 500, + } as XMLHttpRequest, + '{"errcode": "TEST"}', + ) as MatrixError; + compareHeaders(headers, err.httpHeaders); + }); + + it("should resolve Matrix Errors from fetch with headers", () => { + headers.set("Content-Type", "application/json"); + addHeaders(headers); + const err = parseErrorResponse( + { + headers, + status: 500, + } as Response, + '{"errcode": "TEST"}', + ) as MatrixError; + compareHeaders(headers, err.httpHeaders); + }); + }); + it("should set a sensible default error message on MatrixError", () => { let err = new MatrixError(); expect(err.message).toEqual("MatrixError: Unknown message"); @@ -188,14 +256,11 @@ describe("parseErrorResponse", () => { }); it("should handle no type gracefully", () => { + // No Content-Type header expect( parseErrorResponse( { - headers: { - get(name: string): string | null { - return null; - }, - }, + headers, status: 500, } as Response, '{"errcode": "TEST"}', @@ -203,31 +268,38 @@ describe("parseErrorResponse", () => { ).toStrictEqual(new HTTPError("Server returned 500 error", 500)); }); + it("should handle empty type gracefully", () => { + headers.set("Content-Type", " "); + expect( + parseErrorResponse( + { + headers, + status: 500, + } as Response, + '{"errcode": "TEST"}', + ), + ).toStrictEqual(new Error("Error parsing Content-Type '': TypeError: argument string is required")); + }); + it("should handle invalid type gracefully", () => { + headers.set("Content-Type", "unknown"); expect( parseErrorResponse( { - headers: { - get(name: string): string | null { - return name === "Content-Type" ? " " : null; - }, - }, + headers, status: 500, } as Response, '{"errcode": "TEST"}', ), - ).toStrictEqual(new Error("Error parsing Content-Type ' ': TypeError: invalid media type")); + ).toStrictEqual(new Error("Error parsing Content-Type 'unknown': TypeError: invalid media type")); }); it("should handle plaintext errors", () => { + headers.set("Content-Type", "text/plain"); expect( parseErrorResponse( { - headers: { - get(name: string): string | null { - return name === "Content-Type" ? "text/plain" : null; - }, - }, + headers, status: 418, } as Response, "I'm a teapot", diff --git a/src/http-api/errors.ts b/src/http-api/errors.ts index 86cfdc908c0..f80c3fdd8b6 100644 --- a/src/http-api/errors.ts +++ b/src/http-api/errors.ts @@ -1,5 +1,5 @@ /* -Copyright 2022 The Matrix.org Foundation C.I.C. +Copyright 2022 - 2024 The Matrix.org Foundation C.I.C. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -28,14 +28,53 @@ interface IErrorJson extends Partial { * specific to HTTP responses. * @param msg - The error message to include. * @param httpStatus - The HTTP response status code. + * @param httpHeaders - The HTTP response headers. */ export class HTTPError extends Error { public constructor( msg: string, public readonly httpStatus?: number, + public readonly httpHeaders?: Headers, ) { super(msg); } + + /** + * Check if this error was due to rate-limiting on the server side (and should therefore be retried after a delay). + * + * If this returns `true`, {@link getRetryAfterMs} can be called to retrieve the server-side + * recommendation for the retry period. + * + * @returns Whether this error is due to rate-limiting. + */ + public isRateLimitError(): boolean { + return this.httpStatus === 429; + } + + /** + * @returns The recommended delay in milliseconds to wait before retrying + * the request that triggered this error, or null if no delay is recommended. + * @throws Error if the recommended delay is an invalid value. + * @see {@link safeGetRetryAfterMs} for a version of this check that doesn't throw. + */ + public getRetryAfterMs(): number | null { + const retryAfter = this.httpHeaders?.get("Retry-After"); + if (retryAfter != null) { + if (/^\d+$/.test(retryAfter)) { + const ms = Number.parseInt(retryAfter) * 1000; + if (!Number.isFinite(ms)) { + throw new Error("Retry-After header integer value is too large"); + } + return ms; + } + const date = new Date(retryAfter); + if (date.toUTCString() !== retryAfter) { + throw new Error("Retry-After header value is not a valid HTTP-date or non-negative decimal integer"); + } + return date.getTime() - Date.now(); + } + return null; + } } export class MatrixError extends HTTPError { @@ -49,12 +88,14 @@ export class MatrixError extends HTTPError { * information specific to the standard Matrix error response. * @param errorJson - The Matrix error JSON returned from the homeserver. * @param httpStatus - The numeric HTTP status code given + * @param httpHeaders - The HTTP response headers given */ public constructor( errorJson: IErrorJson = {}, - public readonly httpStatus?: number, + httpStatus?: number, public url?: string, public event?: MatrixEvent, + httpHeaders?: Headers, ) { let message = errorJson.error || "Unknown message"; if (httpStatus) { @@ -63,11 +104,49 @@ export class MatrixError extends HTTPError { if (url) { message = `${message} (${url})`; } - super(`MatrixError: ${message}`, httpStatus); + super(`MatrixError: ${message}`, httpStatus, httpHeaders); this.errcode = errorJson.errcode; this.name = errorJson.errcode || "Unknown error code"; this.data = errorJson; } + + public isRateLimitError(): boolean { + return ( + this.errcode === "M_LIMIT_EXCEEDED" || + ((this.errcode === "M_UNKNOWN" || this.errcode === undefined) && super.isRateLimitError()) + ); + } + + public getRetryAfterMs(): number | null { + const headerValue = super.getRetryAfterMs(); + if (headerValue !== null) { + return headerValue; + } + // Note: retry_after_ms is deprecated as of spec version v1.10 + if (this.errcode === "M_LIMIT_EXCEEDED" && "retry_after_ms" in this.data) { + if (!Number.isInteger(this.data.retry_after_ms)) { + throw new Error("retry_after_ms is not an integer"); + } + return this.data.retry_after_ms; + } + return null; + } +} + +/** + * @returns The recommended delay in milliseconds to wait before retrying + * the request that triggered {@link error}, or {@link defaultMs} if the + * error was not due to rate-limiting or if no valid delay is recommended. + */ +export function safeGetRetryAfterMs(error: unknown, defaultMs: number): number { + if (!(error instanceof HTTPError) || !error.isRateLimitError()) { + return defaultMs; + } + try { + return error.getRetryAfterMs() ?? defaultMs; + } catch { + return defaultMs; + } } /** diff --git a/src/http-api/utils.ts b/src/http-api/utils.ts index 861d47ea1b0..d23e840bcd9 100644 --- a/src/http-api/utils.ts +++ b/src/http-api/utils.ts @@ -1,5 +1,5 @@ /* -Copyright 2022 The Matrix.org Foundation C.I.C. +Copyright 2022 - 2024 The Matrix.org Foundation C.I.C. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -18,7 +18,7 @@ import { parse as parseContentType, ParsedMediaType } from "content-type"; import { logger } from "../logger.ts"; import { sleep } from "../utils.ts"; -import { ConnectionError, HTTPError, MatrixError } from "./errors.ts"; +import { ConnectionError, HTTPError, MatrixError, safeGetRetryAfterMs } from "./errors.ts"; // Ponyfill for https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal/timeout export function timeoutSignal(ms: number): AbortSignal { @@ -72,24 +72,38 @@ export function anySignal(signals: AbortSignal[]): { * @returns */ export function parseErrorResponse(response: XMLHttpRequest | Response, body?: string): Error { + const httpHeaders = isXhr(response) + ? new Headers( + response + .getAllResponseHeaders() + .trim() + .split(/[\r\n]+/) + .map((header): [string, string] => { + const colonIdx = header.indexOf(":"); + return [header.substring(0, colonIdx), header.substring(colonIdx + 1)]; + }), + ) + : response.headers; + let contentType: ParsedMediaType | null; try { - contentType = getResponseContentType(response); + contentType = getResponseContentType(httpHeaders); } catch (e) { return e; } - if (contentType?.type === "application/json" && body) { return new MatrixError( JSON.parse(body), response.status, isXhr(response) ? response.responseURL : response.url, + undefined, + httpHeaders, ); } if (contentType?.type === "text/plain") { - return new HTTPError(`Server returned ${response.status} error: ${body}`, response.status); + return new HTTPError(`Server returned ${response.status} error: ${body}`, response.status, httpHeaders); } - return new HTTPError(`Server returned ${response.status} error`, response.status); + return new HTTPError(`Server returned ${response.status} error`, response.status, httpHeaders); } function isXhr(response: XMLHttpRequest | Response): response is XMLHttpRequest { @@ -97,7 +111,7 @@ function isXhr(response: XMLHttpRequest | Response): response is XMLHttpRequest } /** - * extract the Content-Type header from the response object, and + * extract the Content-Type header from response headers, and * parse it to a `{type, parameters}` object. * * returns null if no content-type header could be found. @@ -105,15 +119,9 @@ function isXhr(response: XMLHttpRequest | Response): response is XMLHttpRequest * @param response - response object * @returns parsed content-type header, or null if not found */ -function getResponseContentType(response: XMLHttpRequest | Response): ParsedMediaType | null { - let contentType: string | null; - if (isXhr(response)) { - contentType = response.getResponseHeader("Content-Type"); - } else { - contentType = response.headers.get("Content-Type"); - } - - if (!contentType) return null; +function getResponseContentType(headers: Headers): ParsedMediaType | null { + const contentType = headers.get("Content-Type"); + if (contentType === null) return null; try { return parseContentType(contentType); @@ -188,12 +196,5 @@ export function calculateRetryBackoff(err: any, attempts: number, retryConnectio return -1; } - if (err.name === "M_LIMIT_EXCEEDED") { - const waitTime = err.data.retry_after_ms; - if (waitTime > 0) { - return waitTime; - } - } - - return 1000 * Math.pow(2, attempts); + return safeGetRetryAfterMs(err, 1000 * Math.pow(2, attempts)); } diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 0e4b385b951..52258ea53a2 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -1,5 +1,5 @@ /* -Copyright 2023 The Matrix.org Foundation C.I.C. +Copyright 2023 - 2024 The Matrix.org Foundation C.I.C. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -34,7 +34,7 @@ import { randomString, secureRandomBase64Url } from "../randomstring.ts"; import { EncryptionKeysEventContent } from "./types.ts"; import { decodeBase64, encodeUnpaddedBase64 } from "../base64.ts"; import { KnownMembership } from "../@types/membership.ts"; -import { MatrixError } from "../http-api/errors.ts"; +import { MatrixError, safeGetRetryAfterMs } from "../http-api/errors.ts"; import { MatrixEvent } from "../models/event.ts"; import { isLivekitFocusActive } from "./LivekitFocus.ts"; import { ExperimentalGroupCallRoomMemberState } from "../webrtc/groupCall.ts"; @@ -630,7 +630,7 @@ export class MatrixRTCSession extends TypedEventEmitter 0) { + if (e.isRateLimitError()) { + let waitTime: number | undefined; + try { + waitTime = e.getRetryAfterMs() ?? undefined; + } catch (error) { + this.logger.warn("Error while retrieving a rate-limit retry delay", error); + } + if (waitTime && waitTime > 0) { this.logger.info(`Rate limited by server, waiting ${waitTime}ms`); - throw new KeyDownloadRateLimitError(waitTime); - } else { - // apply the default backoff time - throw new KeyDownloadRateLimitError(KEY_BACKUP_BACKOFF); } + throw new KeyDownloadRateLimitError(waitTime ?? KEY_BACKUP_BACKOFF); } } throw new KeyDownloadError(KeyDownloadErrorCode.NETWORK_ERROR); diff --git a/src/rust-crypto/backup.ts b/src/rust-crypto/backup.ts index 63d1afdb02a..59aa30de372 100644 --- a/src/rust-crypto/backup.ts +++ b/src/rust-crypto/backup.ts @@ -1,5 +1,5 @@ /* -Copyright 2023 The Matrix.org Foundation C.I.C. +Copyright 2023 - 2024 The Matrix.org Foundation C.I.C. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -457,12 +457,19 @@ export class RustBackupManager extends TypedEventEmitter 0) { - await sleep(waitTime); - continue; + try { + const waitTime = err.getRetryAfterMs(); + if (waitTime && waitTime > 0) { + await sleep(waitTime); + continue; + } + } catch (error) { + logger.warn( + "Backup: An error occurred while retrieving a rate-limit retry delay", + error, + ); } // else go to the normal backoff } } From d04135cc1c8fff378f1a1a8e142bef78ff90e97a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 11:39:59 +0000 Subject: [PATCH 495/595] Update dependency uuid to v11 (#4482) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 90feabfb67b..3e5d22500d4 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,7 @@ "p-retry": "4", "sdp-transform": "^2.14.1", "unhomoglyph": "^1.0.6", - "uuid": "10" + "uuid": "11" }, "devDependencies": { "@action-validator/cli": "^0.6.0", diff --git a/yarn.lock b/yarn.lock index 7abca3502df..147a753f154 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6486,10 +6486,10 @@ url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -uuid@10: - version "10.0.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-10.0.0.tgz#5a95aa454e6e002725c79055fd42aaba30ca6294" - integrity sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ== +uuid@11: + version "11.0.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-11.0.2.tgz#a8d68ba7347d051e7ea716cc8dcbbab634d66875" + integrity sha512-14FfcOJmqdjbBPdDjFQyk/SdT4NySW4eM0zcG+HqbHP5jzuH56xO3J1DGhgs/cEMCfwYi3HQI1gnTO62iaG+tQ== uuid@8.3.2: version "8.3.2" From f6a169b5a5f3e5d43380cf78eadc9c01b0809112 Mon Sep 17 00:00:00 2001 From: Will Hunt Date: Fri, 1 Nov 2024 09:15:21 +0000 Subject: [PATCH 496/595] Replace usages of `global` with `globalThis` (#4489) * Update src with globalThis * Update spec with globalThis * Replace in more spec/ places * More changes to src/ * Add a linter rule for global * Prettify * lint --- .eslintrc.cjs | 4 ++ spec/TestClient.ts | 2 +- spec/integ/crypto/crypto.spec.ts | 14 +++---- spec/integ/crypto/olm-utils.ts | 8 ++-- spec/integ/crypto/verification.spec.ts | 6 +-- spec/integ/devicelist-integ.spec.ts | 2 +- spec/integ/matrix-client-opts.spec.ts | 4 +- spec/integ/matrix-client-syncing.spec.ts | 6 +-- .../rendezvous/MSC4108SignInWithQR.spec.ts | 4 +- spec/test-utils/test-utils.ts | 2 +- spec/test-utils/webrtc.ts | 12 +++--- spec/unit/autodiscovery.spec.ts | 4 +- spec/unit/base64.spec.ts | 8 ++-- spec/unit/content-helpers.spec.ts | 4 +- spec/unit/crypto.spec.ts | 2 +- spec/unit/crypto/CrossSigningInfo.spec.ts | 8 ++-- spec/unit/crypto/algorithms/megolm.spec.ts | 6 +-- spec/unit/crypto/algorithms/olm.spec.ts | 4 +- spec/unit/crypto/backup.spec.ts | 10 ++--- spec/unit/crypto/cross-signing.spec.ts | 38 +++++++++---------- spec/unit/crypto/crypto-utils.ts | 2 +- spec/unit/crypto/dehydration.spec.ts | 6 +-- .../crypto/outgoing-room-key-requests.spec.ts | 2 +- spec/unit/crypto/secrets.spec.ts | 8 ++-- spec/unit/crypto/store/CryptoStore.spec.ts | 2 +- .../crypto/store/IndexedDBCryptoStore.spec.ts | 14 +++---- spec/unit/crypto/verification/qr_code.spec.ts | 4 +- spec/unit/crypto/verification/request.spec.ts | 4 +- spec/unit/crypto/verification/sas.spec.ts | 4 +- .../verification/secret_request.spec.ts | 2 +- spec/unit/digest.spec.ts | 6 +-- spec/unit/http-api/errors.spec.ts | 2 +- spec/unit/http-api/fetch.spec.ts | 6 +-- spec/unit/http-api/index.spec.ts | 6 +-- spec/unit/models/beacon.spec.ts | 6 +-- spec/unit/oidc/authorize.spec.ts | 2 +- spec/unit/pusher.spec.ts | 2 +- spec/unit/queueToDevice.spec.ts | 4 +- spec/unit/read-receipt.spec.ts | 2 +- spec/unit/realtime-callbacks.spec.ts | 4 +- .../OutgoingRequestProcessor.spec.ts | 2 +- spec/unit/sync-accumulator.spec.ts | 6 +-- spec/unit/webrtc/call.spec.ts | 36 +++++++++--------- spec/unit/webrtc/mediaHandler.spec.ts | 2 +- spec/unit/webrtc/stats/groupCallStats.spec.ts | 8 ++-- src/@types/global.d.ts | 4 +- src/autodiscovery.ts | 8 ++-- src/client.ts | 16 ++++---- src/crypto/CrossSigning.ts | 8 ++-- src/crypto/OlmDevice.ts | 22 +++++------ src/crypto/backup.ts | 10 ++--- src/crypto/dehydration.ts | 12 +++--- src/crypto/index.ts | 8 ++-- src/crypto/olmlib.ts | 4 +- src/crypto/store/indexeddb-crypto-store.ts | 2 +- src/crypto/verification/SAS.ts | 8 ++-- src/http-api/fetch.ts | 4 +- src/http-api/index.ts | 6 +-- src/http-api/interface.ts | 2 +- src/index.ts | 4 +- src/matrix.ts | 2 +- src/realtime-callbacks.ts | 10 ++--- .../transports/MSC4108RendezvousSession.ts | 12 +++--- src/sync.ts | 10 ++--- 64 files changed, 224 insertions(+), 218 deletions(-) diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 036f51f757b..50ca8d622e7 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -63,6 +63,10 @@ module.exports = { name: "setImmediate", message: "Use setTimeout instead.", }, + { + name: "global", + message: "Use globalThis instead.", + }, ], "import/no-restricted-paths": [ diff --git a/spec/TestClient.ts b/spec/TestClient.ts index 7d23cadfffa..66c63064e4d 100644 --- a/spec/TestClient.ts +++ b/spec/TestClient.ts @@ -66,7 +66,7 @@ export class TestClient implements IE2EKeyReceiver, ISyncResponder { userId: userId, accessToken: accessToken, deviceId: deviceId, - fetchFn: this.httpBackend.fetchFn as typeof global.fetch, + fetchFn: this.httpBackend.fetchFn as typeof globalThis.fetch, ...options, }; if (!fullOptions.cryptoStore) { diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 3d62413c33f..613769e4968 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -136,7 +136,7 @@ async function expectSendRoomKey( recipientOlmAccount: Olm.Account, recipientOlmSession: Olm.Session | null = null, ): Promise { - const Olm = global.Olm; + const Olm = globalThis.Olm; const testRecipientKey = JSON.parse(recipientOlmAccount.identity_keys())["curve25519"]; function onSendRoomKey(content: any): Olm.InboundGroupSession { @@ -219,7 +219,7 @@ async function expectSendMegolmMessage( } describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, initCrypto: InitCrypto) => { - if (!global.Olm) { + if (!globalThis.Olm) { // currently we use libolm to implement the crypto in the tests, so need it to be present. logger.warn("not running megolm tests: Olm not present"); return; @@ -230,7 +230,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, const oldBackendOnly = backend === "rust-sdk" ? test.skip : test; const newBackendOnly = backend !== "rust-sdk" ? test.skip : test; - const Olm = global.Olm; + const Olm = globalThis.Olm; let testOlmAccount = {} as unknown as Olm.Account; let testSenderKey = ""; @@ -1897,13 +1897,13 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, const aliceOtks = await keyReceiver.awaitOneTimeKeyUpload(); const aliceOtkId = Object.keys(aliceOtks)[0]; const aliceOtk = aliceOtks[aliceOtkId]; - const p2pSession = new global.Olm.Session(); + const p2pSession = new globalThis.Olm.Session(); await beccaTestClient.client.crypto!.cryptoStore.doTxn( "readonly", [IndexedDBCryptoStore.STORE_ACCOUNT], (txn) => { beccaTestClient.client.crypto!.cryptoStore.getAccount(txn, (pickledAccount: string | null) => { - const account = new global.Olm.Account(); + const account = new globalThis.Olm.Account(); try { account.unpickle(beccaTestClient.client.crypto!.olmDevice.pickleKey, pickledAccount!); p2pSession.create_outbound(account, keyReceiver.getDeviceKey(), aliceOtk.key); @@ -2045,13 +2045,13 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, const aliceOtks = await keyReceiver.awaitOneTimeKeyUpload(); const aliceOtkId = Object.keys(aliceOtks)[0]; const aliceOtk = aliceOtks[aliceOtkId]; - const p2pSession = new global.Olm.Session(); + const p2pSession = new globalThis.Olm.Session(); await beccaTestClient.client.crypto!.cryptoStore.doTxn( "readonly", [IndexedDBCryptoStore.STORE_ACCOUNT], (txn) => { beccaTestClient.client.crypto!.cryptoStore.getAccount(txn, (pickledAccount: string | null) => { - const account = new global.Olm.Account(); + const account = new globalThis.Olm.Account(); try { account.unpickle(beccaTestClient.client.crypto!.olmDevice.pickleKey, pickledAccount!); p2pSession.create_outbound(account, keyReceiver.getDeviceKey(), aliceOtk.key); diff --git a/spec/integ/crypto/olm-utils.ts b/spec/integ/crypto/olm-utils.ts index 3f8144fff5f..a257ea7c985 100644 --- a/spec/integ/crypto/olm-utils.ts +++ b/spec/integ/crypto/olm-utils.ts @@ -85,15 +85,15 @@ export function bootstrapCrossSigningTestOlmAccount( deviceId: string, keyBackupInfo: KeyBackupInfo[] = [], ): Partial { - const olmAliceMSK = new global.Olm.PkSigning(); + const olmAliceMSK = new globalThis.Olm.PkSigning(); const masterPrivkey = olmAliceMSK.generate_seed(); const masterPubkey = olmAliceMSK.init_with_seed(masterPrivkey); - const olmAliceUSK = new global.Olm.PkSigning(); + const olmAliceUSK = new globalThis.Olm.PkSigning(); const userPrivkey = olmAliceUSK.generate_seed(); const userPubkey = olmAliceUSK.init_with_seed(userPrivkey); - const olmAliceSSK = new global.Olm.PkSigning(); + const olmAliceSSK = new globalThis.Olm.PkSigning(); const sskPrivkey = olmAliceSSK.generate_seed(); const sskPubkey = olmAliceSSK.init_with_seed(sskPrivkey); @@ -181,7 +181,7 @@ export async function createOlmSession( const otkId = Object.keys(keys)[0]; const otk = keys[otkId]; - const session = new global.Olm.Session(); + const session = new globalThis.Olm.Session(); session.create_outbound(olmAccount, recipientTestClient.getDeviceKey(), otk.key); return session; } diff --git a/spec/integ/crypto/verification.spec.ts b/spec/integ/crypto/verification.spec.ts index 763de044ad6..a9f9ba522e7 100644 --- a/spec/integ/crypto/verification.spec.ts +++ b/spec/integ/crypto/verification.spec.ts @@ -90,7 +90,7 @@ jest.useFakeTimers({ doNotFake: ["queueMicrotask"] }); beforeAll(async () => { // we use the libolm primitives in the test, so init the Olm library - await global.Olm.init(); + await globalThis.Olm.init(); }); // load the rust library. This can take a few seconds on a slow GH worker. @@ -264,7 +264,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st // The dummy device makes up a curve25519 keypair and sends the public bit back in an `m.key.verification.key' // We use the Curve25519, HMAC and HKDF implementations in libolm, for now - const olmSAS = new global.Olm.SAS(); + const olmSAS = new globalThis.Olm.SAS(); returnToDeviceMessageFromSync(buildSasKeyMessage(transactionId, olmSAS.get_pubkey())); // alice responds with a 'key' ... @@ -358,7 +358,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st // The dummy device makes up a curve25519 keypair and uses the hash in an 'm.key.verification.accept' // We use the Curve25519, HMAC and HKDF implementations in libolm, for now - const olmSAS = new global.Olm.SAS(); + const olmSAS = new globalThis.Olm.SAS(); const commitmentStr = olmSAS.get_pubkey() + anotherjson.stringify(toDeviceMessage); sendToDevicePromise = expectSendToDeviceMessage("m.key.verification.key"); diff --git a/spec/integ/devicelist-integ.spec.ts b/spec/integ/devicelist-integ.spec.ts index bf29242dd24..88388fdf9f7 100644 --- a/spec/integ/devicelist-integ.spec.ts +++ b/spec/integ/devicelist-integ.spec.ts @@ -67,7 +67,7 @@ function getSyncResponse(roomMembers: string[]) { } describe("DeviceList management:", function () { - if (!global.Olm) { + if (!globalThis.Olm) { logger.warn("not running deviceList tests: Olm not present"); return; } diff --git a/spec/integ/matrix-client-opts.spec.ts b/spec/integ/matrix-client-opts.spec.ts index 75edf1c50eb..cb5b1b9068e 100644 --- a/spec/integ/matrix-client-opts.spec.ts +++ b/spec/integ/matrix-client-opts.spec.ts @@ -80,7 +80,7 @@ describe("MatrixClient opts", function () { let client: MatrixClient; beforeEach(function () { client = new MatrixClient({ - fetchFn: httpBackend.fetchFn as typeof global.fetch, + fetchFn: httpBackend.fetchFn as typeof globalThis.fetch, store: undefined, baseUrl: baseUrl, userId: userId, @@ -135,7 +135,7 @@ describe("MatrixClient opts", function () { let client: MatrixClient; beforeEach(function () { client = new MatrixClient({ - fetchFn: httpBackend.fetchFn as typeof global.fetch, + fetchFn: httpBackend.fetchFn as typeof globalThis.fetch, store: new MemoryStore() as IStore, baseUrl: baseUrl, userId: userId, diff --git a/spec/integ/matrix-client-syncing.spec.ts b/spec/integ/matrix-client-syncing.spec.ts index e2d7fe3f263..673532ddf83 100644 --- a/spec/integ/matrix-client-syncing.spec.ts +++ b/spec/integ/matrix-client-syncing.spec.ts @@ -2406,7 +2406,7 @@ describe("MatrixClient syncing (IndexedDB version)", () => { it("should emit ClientEvent.Room when invited while using indexeddb crypto store", async () => { const idbTestClient = new TestClient(selfUserId, "DEVICE", selfAccessToken, undefined, { - cryptoStore: new IndexedDBCryptoStore(global.indexedDB, "tests"), + cryptoStore: new IndexedDBCryptoStore(globalThis.indexedDB, "tests"), }); const idbHttpBackend = idbTestClient.httpBackend; const idbClient = idbTestClient.client; @@ -2486,7 +2486,7 @@ describe("MatrixClient syncing (IndexedDB version)", () => { let idbTestClient = new TestClient(selfUserId, "DEVICE", selfAccessToken, undefined, { store: new IndexedDBStore({ - indexedDB: global.indexedDB, + indexedDB: globalThis.indexedDB, dbName: "test", }), }); @@ -2558,7 +2558,7 @@ describe("MatrixClient syncing (IndexedDB version)", () => { idbTestClient = new TestClient(selfUserId, "DEVICE", selfAccessToken, undefined, { store: new IndexedDBStore({ - indexedDB: global.indexedDB, + indexedDB: globalThis.indexedDB, dbName: "test", }), }); diff --git a/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts b/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts index b564155fe03..82818e229a3 100644 --- a/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts +++ b/spec/integ/rendezvous/MSC4108SignInWithQR.spec.ts @@ -266,7 +266,7 @@ describe("MSC4108SignInWithQR", () => { }); it("should abort if device doesn't come up by timeout", async () => { - jest.spyOn(global, "setTimeout").mockImplementation((fn) => { + jest.spyOn(globalThis, "setTimeout").mockImplementation((fn) => { fn(); // TODO: mock timers properly return -1 as any; @@ -319,7 +319,7 @@ describe("MSC4108SignInWithQR", () => { }); it("should not send secrets if user cancels", async () => { - jest.spyOn(global, "setTimeout").mockImplementation((fn) => { + jest.spyOn(globalThis, "setTimeout").mockImplementation((fn) => { fn(); // TODO: mock timers properly return -1 as any; diff --git a/spec/test-utils/test-utils.ts b/spec/test-utils/test-utils.ts index 15c7c9efd22..08a2f9f779e 100644 --- a/spec/test-utils/test-utils.ts +++ b/spec/test-utils/test-utils.ts @@ -560,7 +560,7 @@ export const CRYPTO_BACKENDS: Record = {}; export type InitCrypto = (_: MatrixClient) => Promise; CRYPTO_BACKENDS["rust-sdk"] = (client: MatrixClient) => client.initRustCrypto(); -if (global.Olm) { +if (globalThis.Olm) { CRYPTO_BACKENDS["libolm"] = (client: MatrixClient) => client.initCrypto(); } diff --git a/spec/test-utils/webrtc.ts b/spec/test-utils/webrtc.ts index 519701bdaa9..fbc6d93be26 100644 --- a/spec/test-utils/webrtc.ts +++ b/spec/test-utils/webrtc.ts @@ -582,11 +582,11 @@ export class MockCallFeed { } export function installWebRTCMocks() { - global.navigator = { + globalThis.navigator = { mediaDevices: new MockMediaDevices().typed(), } as unknown as Navigator; - global.window = { + globalThis.window = { // @ts-ignore Mock RTCPeerConnection: MockRTCPeerConnection, // @ts-ignore Mock @@ -596,13 +596,13 @@ export function installWebRTCMocks() { getUserMedia: () => new MockMediaStream("local_stream"), }; // @ts-ignore Mock - global.document = {}; + globalThis.document = {}; // @ts-ignore Mock - global.AudioContext = MockAudioContext; + globalThis.AudioContext = MockAudioContext; // @ts-ignore Mock - global.RTCRtpReceiver = { + globalThis.RTCRtpReceiver = { getCapabilities: jest.fn().mockReturnValue({ codecs: [], headerExtensions: [], @@ -610,7 +610,7 @@ export function installWebRTCMocks() { }; // @ts-ignore Mock - global.RTCRtpSender = { + globalThis.RTCRtpSender = { getCapabilities: jest.fn().mockReturnValue({ codecs: [], headerExtensions: [], diff --git a/spec/unit/autodiscovery.spec.ts b/spec/unit/autodiscovery.spec.ts index e4c7c98b293..282d2f57c1a 100644 --- a/spec/unit/autodiscovery.spec.ts +++ b/spec/unit/autodiscovery.spec.ts @@ -22,12 +22,12 @@ import { AutoDiscovery } from "../../src/autodiscovery"; // keep to reset the fetch function after using MockHttpBackend // @ts-ignore private property -const realAutoDiscoveryFetch: typeof global.fetch = AutoDiscovery.fetchFn; +const realAutoDiscoveryFetch: typeof globalThis.fetch = AutoDiscovery.fetchFn; describe("AutoDiscovery", function () { const getHttpBackend = (): MockHttpBackend => { const httpBackend = new MockHttpBackend(); - AutoDiscovery.setFetchFn(httpBackend.fetchFn as typeof global.fetch); + AutoDiscovery.setFetchFn(httpBackend.fetchFn as typeof globalThis.fetch); return httpBackend; }; diff --git a/spec/unit/base64.spec.ts b/spec/unit/base64.spec.ts index 3ef495134a1..cba73bec9f3 100644 --- a/spec/unit/base64.spec.ts +++ b/spec/unit/base64.spec.ts @@ -29,8 +29,8 @@ describe.each(["browser", "node"])("Base64 encoding (%s)", (env) => { // eslint-disable-next-line no-global-assign Buffer = undefined; - global.atob = NodeBuffer.atob; - global.btoa = NodeBuffer.btoa; + globalThis.atob = NodeBuffer.atob; + globalThis.btoa = NodeBuffer.btoa; } }); @@ -38,9 +38,9 @@ describe.each(["browser", "node"])("Base64 encoding (%s)", (env) => { // eslint-disable-next-line no-global-assign Buffer = origBuffer; // @ts-ignore - global.atob = undefined; + globalThis.atob = undefined; // @ts-ignore - global.btoa = undefined; + globalThis.btoa = undefined; }); it("Should decode properly encoded data", () => { diff --git a/spec/unit/content-helpers.spec.ts b/spec/unit/content-helpers.spec.ts index 2188cbcca2c..afb465f5382 100644 --- a/spec/unit/content-helpers.spec.ts +++ b/spec/unit/content-helpers.spec.ts @@ -29,10 +29,10 @@ describe("Beacon content helpers", () => { describe("makeBeaconInfoContent()", () => { const mockDateNow = 123456789; beforeEach(() => { - jest.spyOn(global.Date, "now").mockReturnValue(mockDateNow); + jest.spyOn(globalThis.Date, "now").mockReturnValue(mockDateNow); }); afterAll(() => { - jest.spyOn(global.Date, "now").mockRestore(); + jest.spyOn(globalThis.Date, "now").mockRestore(); }); it("create fully defined event content", () => { expect(makeBeaconInfoContent(1234, true, "nice beacon_info", LocationAssetType.Pin)).toEqual({ diff --git a/spec/unit/crypto.spec.ts b/spec/unit/crypto.spec.ts index 616c8f95255..ce2d2389212 100644 --- a/spec/unit/crypto.spec.ts +++ b/spec/unit/crypto.spec.ts @@ -28,7 +28,7 @@ import * as testData from "../test-utils/test-data"; import { KnownMembership } from "../../src/@types/membership"; import type { DeviceInfoMap } from "../../src/crypto/DeviceList"; -const Olm = global.Olm; +const Olm = globalThis.Olm; function awaitEvent(emitter: EventEmitter, event: string): Promise { return new Promise((resolve) => { diff --git a/spec/unit/crypto/CrossSigningInfo.spec.ts b/spec/unit/crypto/CrossSigningInfo.spec.ts index b343aef1cf8..e99ceb2739b 100644 --- a/spec/unit/crypto/CrossSigningInfo.spec.ts +++ b/spec/unit/crypto/CrossSigningInfo.spec.ts @@ -44,13 +44,13 @@ badKey[0] ^= 1; const masterKeyPub = "nqOvzeuGWT/sRx3h7+MHoInYj3Uk2LD/unI9kDYcHwk"; describe("CrossSigningInfo.getCrossSigningKey", function () { - if (!global.Olm) { + if (!globalThis.Olm) { logger.warn("Not running megolm backup unit tests: libolm not present"); return; } beforeAll(function () { - return global.Olm.init(); + return globalThis.Olm.init(); }); it("should throw if no callback is provided", async () => { @@ -80,7 +80,7 @@ describe("CrossSigningInfo.getCrossSigningKey", function () { expect(pubKey).toEqual(masterKeyPub); // check that the pkSigning object corresponds to the pubKey const signature = pkSigning.sign("message"); - const util = new global.Olm.Utility(); + const util = new globalThis.Olm.Utility(); try { util.ed25519_verify(pubKey, "message", signature); } finally { @@ -199,7 +199,7 @@ describe("CrossSigningInfo.getCrossSigningKey", function () { * it's not possible to get one in normal execution unless you hack as we do here. */ describe.each([ - ["IndexedDBCryptoStore", () => new IndexedDBCryptoStore(global.indexedDB, "tests")], + ["IndexedDBCryptoStore", () => new IndexedDBCryptoStore(globalThis.indexedDB, "tests")], ["LocalStorageCryptoStore", () => new IndexedDBCryptoStore(undefined!, "tests")], [ "MemoryCryptoStore", diff --git a/spec/unit/crypto/algorithms/megolm.spec.ts b/spec/unit/crypto/algorithms/megolm.spec.ts index b27e59d4934..d2a1fbf3372 100644 --- a/spec/unit/crypto/algorithms/megolm.spec.ts +++ b/spec/unit/crypto/algorithms/megolm.spec.ts @@ -43,10 +43,10 @@ const MegolmEncryption = algorithms.ENCRYPTION_CLASSES.get("m.megolm.v1.aes-sha2 const ROOM_ID = "!ROOM:ID"; -const Olm = global.Olm; +const Olm = globalThis.Olm; describe("MegolmDecryption", function () { - if (!global.Olm) { + if (!globalThis.Olm) { logger.warn("Not running megolm unit tests: libolm not present"); return; } @@ -101,7 +101,7 @@ describe("MegolmDecryption", function () { describe("receives some keys:", function () { let groupSession: OutboundGroupSession; beforeEach(async function () { - groupSession = new global.Olm.OutboundGroupSession(); + groupSession = new globalThis.Olm.OutboundGroupSession(); groupSession.create(); // construct a fake decrypted key event via the use of a mocked diff --git a/spec/unit/crypto/algorithms/olm.spec.ts b/spec/unit/crypto/algorithms/olm.spec.ts index 644bb96e391..6c50f09635e 100644 --- a/spec/unit/crypto/algorithms/olm.spec.ts +++ b/spec/unit/crypto/algorithms/olm.spec.ts @@ -47,13 +47,13 @@ function alwaysSucceed(promise: Promise): Promise { } describe("OlmDevice", function () { - if (!global.Olm) { + if (!globalThis.Olm) { logger.warn("Not running megolm unit tests: libolm not present"); return; } beforeAll(function () { - return global.Olm.init(); + return globalThis.Olm.init(); }); let aliceOlmDevice: OlmDevice; diff --git a/spec/unit/crypto/backup.spec.ts b/spec/unit/crypto/backup.spec.ts index 427a9f318ce..2d655a90117 100644 --- a/spec/unit/crypto/backup.spec.ts +++ b/spec/unit/crypto/backup.spec.ts @@ -33,7 +33,7 @@ import { CryptoStore } from "../../../src/crypto/store/base"; import { MegolmDecryption as MegolmDecryptionClass } from "../../../src/crypto/algorithms/megolm"; import { IKeyBackupInfo } from "../../../src/crypto/keybackup"; -const Olm = global.Olm; +const Olm = globalThis.Olm; const MegolmDecryption = algorithms.DECRYPTION_CLASSES.get("m.megolm.v1.aes-sha2")!; @@ -155,7 +155,7 @@ function makeTestClient(cryptoStore: CryptoStore) { } describe("MegolmBackup", function () { - if (!global.Olm) { + if (!globalThis.Olm) { logger.warn("Not running megolm backup unit tests: libolm not present"); return; } @@ -205,14 +205,14 @@ describe("MegolmBackup", function () { // clobber the setTimeout function to run 100x faster. // ideally we would use lolex, but we have no oportunity // to tick the clock between the first try and the retry. - const realSetTimeout = global.setTimeout; - jest.spyOn(global, "setTimeout").mockImplementation(function (f, n) { + const realSetTimeout = globalThis.setTimeout; + jest.spyOn(globalThis, "setTimeout").mockImplementation(function (f, n) { return realSetTimeout(f!, n! / 100); }); }); afterEach(function () { - jest.spyOn(global, "setTimeout").mockRestore(); + jest.spyOn(globalThis, "setTimeout").mockRestore(); }); test("fail if crypto not enabled", async () => { diff --git a/spec/unit/crypto/cross-signing.spec.ts b/spec/unit/crypto/cross-signing.spec.ts index ad347dd3296..967c86ca69a 100644 --- a/spec/unit/crypto/cross-signing.spec.ts +++ b/spec/unit/crypto/cross-signing.spec.ts @@ -84,13 +84,13 @@ async function makeTestClient( } describe("Cross Signing", function () { - if (!global.Olm) { + if (!globalThis.Olm) { logger.warn("Not running megolm backup unit tests: libolm not present"); return; } beforeAll(function () { - return global.Olm.init(); + return globalThis.Olm.init(); }); it("should sign the master key with the device key", async function () { @@ -369,10 +369,10 @@ describe("Cross Signing", function () { // set Alice's cross-signing key await resetCrossSigningKeys(alice); // Alice downloads Bob's ssk and device key - const bobMasterSigning = new global.Olm.PkSigning(); + const bobMasterSigning = new globalThis.Olm.PkSigning(); const bobMasterPrivkey = bobMasterSigning.generate_seed(); const bobMasterPubkey = bobMasterSigning.init_with_seed(bobMasterPrivkey); - const bobSigning = new global.Olm.PkSigning(); + const bobSigning = new globalThis.Olm.PkSigning(); const bobPrivkey = bobSigning.generate_seed(); const bobPubkey = bobSigning.init_with_seed(bobPrivkey); const bobSSK: CrossSigningKeyInfo = { @@ -488,7 +488,7 @@ describe("Cross Signing", function () { }; await alice.crypto!.signObject(aliceDevice); - const bobOlmAccount = new global.Olm.Account(); + const bobOlmAccount = new globalThis.Olm.Account(); bobOlmAccount.create(); const bobKeys = JSON.parse(bobOlmAccount.identity_keys()); const bobDeviceUnsigned = { @@ -622,10 +622,10 @@ describe("Cross Signing", function () { await resetCrossSigningKeys(alice); // Alice downloads Bob's ssk and device key // (NOTE: device key is not signed by ssk) - const bobMasterSigning = new global.Olm.PkSigning(); + const bobMasterSigning = new globalThis.Olm.PkSigning(); const bobMasterPrivkey = bobMasterSigning.generate_seed(); const bobMasterPubkey = bobMasterSigning.init_with_seed(bobMasterPrivkey); - const bobSigning = new global.Olm.PkSigning(); + const bobSigning = new globalThis.Olm.PkSigning(); const bobPrivkey = bobSigning.generate_seed(); const bobPubkey = bobSigning.init_with_seed(bobPrivkey); const bobSSK: CrossSigningKeyInfo = { @@ -688,10 +688,10 @@ describe("Cross Signing", function () { alice.uploadKeySignatures = async () => ({ failures: {} }); await resetCrossSigningKeys(alice); // Alice downloads Bob's keys - const bobMasterSigning = new global.Olm.PkSigning(); + const bobMasterSigning = new globalThis.Olm.PkSigning(); const bobMasterPrivkey = bobMasterSigning.generate_seed(); const bobMasterPubkey = bobMasterSigning.init_with_seed(bobMasterPrivkey); - const bobSigning = new global.Olm.PkSigning(); + const bobSigning = new globalThis.Olm.PkSigning(); const bobPrivkey = bobSigning.generate_seed(); const bobPubkey = bobSigning.init_with_seed(bobPrivkey); const bobSSK: CrossSigningKeyInfo = { @@ -755,10 +755,10 @@ describe("Cross Signing", function () { expect(bobDeviceTrust.isTofu()).toBeTruthy(); // Alice downloads new SSK for Bob - const bobMasterSigning2 = new global.Olm.PkSigning(); + const bobMasterSigning2 = new globalThis.Olm.PkSigning(); const bobMasterPrivkey2 = bobMasterSigning2.generate_seed(); const bobMasterPubkey2 = bobMasterSigning2.init_with_seed(bobMasterPrivkey2); - const bobSigning2 = new global.Olm.PkSigning(); + const bobSigning2 = new globalThis.Olm.PkSigning(); const bobPrivkey2 = bobSigning2.generate_seed(); const bobPubkey2 = bobSigning2.init_with_seed(bobPrivkey2); const bobSSK2: CrossSigningKeyInfo = { @@ -905,10 +905,10 @@ describe("Cross Signing", function () { alice.uploadKeySignatures = async () => ({ failures: {} }); // Generate Alice's SSK etc - const aliceMasterSigning = new global.Olm.PkSigning(); + const aliceMasterSigning = new globalThis.Olm.PkSigning(); const aliceMasterPrivkey = aliceMasterSigning.generate_seed(); const aliceMasterPubkey = aliceMasterSigning.init_with_seed(aliceMasterPrivkey); - const aliceSigning = new global.Olm.PkSigning(); + const aliceSigning = new globalThis.Olm.PkSigning(); const alicePrivkey = aliceSigning.generate_seed(); const alicePubkey = aliceSigning.init_with_seed(alicePrivkey); const aliceSSK: CrossSigningKeyInfo = { @@ -980,10 +980,10 @@ describe("Cross Signing", function () { alice.uploadKeySignatures = async () => ({ failures: {} }); // Generate Alice's SSK etc - const aliceMasterSigning = new global.Olm.PkSigning(); + const aliceMasterSigning = new globalThis.Olm.PkSigning(); const aliceMasterPrivkey = aliceMasterSigning.generate_seed(); const aliceMasterPubkey = aliceMasterSigning.init_with_seed(aliceMasterPrivkey); - const aliceSigning = new global.Olm.PkSigning(); + const aliceSigning = new globalThis.Olm.PkSigning(); const alicePrivkey = aliceSigning.generate_seed(); const alicePubkey = aliceSigning.init_with_seed(alicePrivkey); const aliceSSK: CrossSigningKeyInfo = { @@ -1040,10 +1040,10 @@ describe("Cross Signing", function () { alice.uploadKeySignatures = async () => ({ failures: {} }); // Generate Alice's SSK etc - const aliceMasterSigning = new global.Olm.PkSigning(); + const aliceMasterSigning = new globalThis.Olm.PkSigning(); const aliceMasterPrivkey = aliceMasterSigning.generate_seed(); const aliceMasterPubkey = aliceMasterSigning.init_with_seed(aliceMasterPrivkey); - const aliceSigning = new global.Olm.PkSigning(); + const aliceSigning = new globalThis.Olm.PkSigning(); const alicePrivkey = aliceSigning.generate_seed(); const alicePubkey = aliceSigning.init_with_seed(alicePrivkey); const aliceSSK: CrossSigningKeyInfo = { @@ -1088,12 +1088,12 @@ describe("Cross Signing", function () { }); describe("userHasCrossSigningKeys", function () { - if (!global.Olm) { + if (!globalThis.Olm) { return; } beforeAll(() => { - return global.Olm.init(); + return globalThis.Olm.init(); }); let aliceClient: MatrixClient; diff --git a/spec/unit/crypto/crypto-utils.ts b/spec/unit/crypto/crypto-utils.ts index 39a53562aea..e6263a6dc22 100644 --- a/spec/unit/crypto/crypto-utils.ts +++ b/spec/unit/crypto/crypto-utils.ts @@ -32,7 +32,7 @@ export async function resetCrossSigningKeys( } export async function createSecretStorageKey(): Promise { - const decryption = new global.Olm.PkDecryption(); + const decryption = new globalThis.Olm.PkDecryption(); decryption.generate_key(); const storagePrivateKey = decryption.get_private_key(); decryption.free(); diff --git a/spec/unit/crypto/dehydration.spec.ts b/spec/unit/crypto/dehydration.spec.ts index 18b4b382806..37893230a46 100644 --- a/spec/unit/crypto/dehydration.spec.ts +++ b/spec/unit/crypto/dehydration.spec.ts @@ -19,16 +19,16 @@ import { TestClient } from "../../TestClient"; import { logger } from "../../../src/logger"; import { DEHYDRATION_ALGORITHM } from "../../../src/crypto/dehydration"; -const Olm = global.Olm; +const Olm = globalThis.Olm; describe("Dehydration", () => { - if (!global.Olm) { + if (!globalThis.Olm) { logger.warn("Not running dehydration unit tests: libolm not present"); return; } beforeAll(function () { - return global.Olm.init(); + return globalThis.Olm.init(); }); it("should rehydrate a dehydrated device", async () => { diff --git a/spec/unit/crypto/outgoing-room-key-requests.spec.ts b/spec/unit/crypto/outgoing-room-key-requests.spec.ts index f160efc0c9f..f7d5160610a 100644 --- a/spec/unit/crypto/outgoing-room-key-requests.spec.ts +++ b/spec/unit/crypto/outgoing-room-key-requests.spec.ts @@ -51,7 +51,7 @@ const requests = [ ]; describe.each([ - ["IndexedDBCryptoStore", () => new IndexedDBCryptoStore(global.indexedDB, "tests")], + ["IndexedDBCryptoStore", () => new IndexedDBCryptoStore(globalThis.indexedDB, "tests")], ["LocalStorageCryptoStore", () => new LocalStorageCryptoStore(localStorage)], ["MemoryCryptoStore", () => new MemoryCryptoStore()], ])("Outgoing room key requests [%s]", function (name, dbFactory) { diff --git a/spec/unit/crypto/secrets.spec.ts b/spec/unit/crypto/secrets.spec.ts index f09657c88b1..d7c7516a98b 100644 --- a/spec/unit/crypto/secrets.spec.ts +++ b/spec/unit/crypto/secrets.spec.ts @@ -69,20 +69,20 @@ function sign( } describe("Secrets", function () { - if (!global.Olm) { + if (!globalThis.Olm) { logger.warn("Not running megolm backup unit tests: libolm not present"); return; } beforeAll(function () { - return global.Olm.init(); + return globalThis.Olm.init(); }); it("should store and retrieve a secret", async function () { const key = new Uint8Array(16); for (let i = 0; i < 16; i++) key[i] = i; - const signing = new global.Olm.PkSigning(); + const signing = new globalThis.Olm.PkSigning(); const signingKey = signing.generate_seed(); const signingPubKey = signing.init_with_seed(signingKey); @@ -332,7 +332,7 @@ describe("Secrets", function () { }); it("bootstraps when cross-signing keys in secret storage", async function () { - const decryption = new global.Olm.PkDecryption(); + const decryption = new globalThis.Olm.PkDecryption(); const storagePrivateKey = decryption.get_private_key(); const bob: MatrixClient = await makeTestClient( diff --git a/spec/unit/crypto/store/CryptoStore.spec.ts b/spec/unit/crypto/store/CryptoStore.spec.ts index 9070c2a5c44..f62c17dacb1 100644 --- a/spec/unit/crypto/store/CryptoStore.spec.ts +++ b/spec/unit/crypto/store/CryptoStore.spec.ts @@ -20,7 +20,7 @@ import { IndexedDBCryptoStore, LocalStorageCryptoStore, MemoryCryptoStore } from import { CryptoStore, MigrationState, SESSION_BATCH_SIZE } from "../../../../src/crypto/store/base"; describe.each([ - ["IndexedDBCryptoStore", () => new IndexedDBCryptoStore(global.indexedDB, "tests")], + ["IndexedDBCryptoStore", () => new IndexedDBCryptoStore(globalThis.indexedDB, "tests")], ["LocalStorageCryptoStore", () => new LocalStorageCryptoStore(localStorage)], ["MemoryCryptoStore", () => new MemoryCryptoStore()], ])("CryptoStore tests for %s", function (name, dbFactory) { diff --git a/spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts b/spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts index 52fd574ba14..21523c9107a 100644 --- a/spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts +++ b/spec/unit/crypto/store/IndexedDBCryptoStore.spec.ts @@ -27,21 +27,21 @@ describe("IndexedDBCryptoStore", () => { it("Should be true if there is a legacy database", async () => { // should detect a store that is not migrated - const store = new IndexedDBCryptoStore(global.indexedDB, "tests"); + const store = new IndexedDBCryptoStore(globalThis.indexedDB, "tests"); await store.startup(); - const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(globalThis.indexedDB, "tests"); expect(result).toBe(true); }); it("Should be true if there is a legacy database in non migrated state", async () => { // should detect a store that is not migrated - const store = new IndexedDBCryptoStore(global.indexedDB, "tests"); + const store = new IndexedDBCryptoStore(globalThis.indexedDB, "tests"); await store.startup(); await store.setMigrationState(MigrationState.NOT_STARTED); - const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(globalThis.indexedDB, "tests"); expect(result).toBe(true); }); @@ -54,18 +54,18 @@ describe("IndexedDBCryptoStore", () => { ])("Exists and Migration state is %s", (migrationState) => { it("Should be false if migration has started", async () => { // should detect a store that is not migrated - const store = new IndexedDBCryptoStore(global.indexedDB, "tests"); + const store = new IndexedDBCryptoStore(globalThis.indexedDB, "tests"); await store.startup(); await store.setMigrationState(migrationState); - const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(globalThis.indexedDB, "tests"); expect(result).toBe(false); }); }); it("Should be false if there is no legacy database", async () => { - const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(global.indexedDB, "tests"); + const result = await IndexedDBCryptoStore.existsAndIsNotMigrated(globalThis.indexedDB, "tests"); expect(result).toBe(false); }); diff --git a/spec/unit/crypto/verification/qr_code.spec.ts b/spec/unit/crypto/verification/qr_code.spec.ts index 7d2fc9171d1..0f8fdcba591 100644 --- a/spec/unit/crypto/verification/qr_code.spec.ts +++ b/spec/unit/crypto/verification/qr_code.spec.ts @@ -17,10 +17,10 @@ limitations under the License. import "../../../olm-loader"; import { logger } from "../../../../src/logger"; -const Olm = global.Olm; +const Olm = globalThis.Olm; describe("QR code verification", function () { - if (!global.Olm) { + if (!globalThis.Olm) { logger.warn("Not running device verification tests: libolm not present"); return; } diff --git a/spec/unit/crypto/verification/request.spec.ts b/spec/unit/crypto/verification/request.spec.ts index 63989c77c40..c3b45b7b813 100644 --- a/spec/unit/crypto/verification/request.spec.ts +++ b/spec/unit/crypto/verification/request.spec.ts @@ -20,12 +20,12 @@ import { logger } from "../../../../src/logger"; import { SAS } from "../../../../src/crypto/verification/SAS"; import { makeTestClients } from "./util"; -const Olm = global.Olm; +const Olm = globalThis.Olm; jest.useFakeTimers(); describe("verification request integration tests with crypto layer", function () { - if (!global.Olm) { + if (!globalThis.Olm) { logger.warn("Not running device verification unit tests: libolm not present"); return; } diff --git a/spec/unit/crypto/verification/sas.spec.ts b/spec/unit/crypto/verification/sas.spec.ts index 7a4f65d05c6..939dc3b7789 100644 --- a/spec/unit/crypto/verification/sas.spec.ts +++ b/spec/unit/crypto/verification/sas.spec.ts @@ -29,13 +29,13 @@ import { MatrixClient } from "../../../../src"; import { VerificationRequest } from "../../../../src/crypto/verification/request/VerificationRequest"; import { TestClient } from "../../../TestClient"; -const Olm = global.Olm; +const Olm = globalThis.Olm; let ALICE_DEVICES: Record; let BOB_DEVICES: Record; describe("SAS verification", function () { - if (!global.Olm) { + if (!globalThis.Olm) { logger.warn("Not running device verification unit tests: libolm not present"); return; } diff --git a/spec/unit/crypto/verification/secret_request.spec.ts b/spec/unit/crypto/verification/secret_request.spec.ts index 06ff0393ef1..acc00abf120 100644 --- a/spec/unit/crypto/verification/secret_request.spec.ts +++ b/spec/unit/crypto/verification/secret_request.spec.ts @@ -34,7 +34,7 @@ const testKeyPub = "nqOvzeuGWT/sRx3h7+MHoInYj3Uk2LD/unI9kDYcHwk"; describe("self-verifications", () => { beforeAll(function () { - return global.Olm.init(); + return globalThis.Olm.init(); }); it("triggers a request for key sharing upon completion", async () => { diff --git a/spec/unit/digest.spec.ts b/spec/unit/digest.spec.ts index e129cf85070..4d33564f73e 100644 --- a/spec/unit/digest.spec.ts +++ b/spec/unit/digest.spec.ts @@ -29,12 +29,12 @@ describe("sha256", () => { }); it("throws if webcrypto is not available", async () => { - const oldCrypto = global.crypto; + const oldCrypto = globalThis.crypto; try { - global.crypto = {} as any; + globalThis.crypto = {} as any; await expect(sha256("test")).rejects.toThrow(); } finally { - global.crypto = oldCrypto; + globalThis.crypto = oldCrypto; } }); }); diff --git a/spec/unit/http-api/errors.spec.ts b/spec/unit/http-api/errors.spec.ts index 426d23ee0c1..6054aad4bb9 100644 --- a/spec/unit/http-api/errors.spec.ts +++ b/spec/unit/http-api/errors.spec.ts @@ -57,7 +57,7 @@ describe("MatrixError", () => { it("should retrieve Date Retry-After header from rate-limit error", () => { headers.set("Retry-After", `${new Date(160000).toUTCString()}`); - jest.spyOn(global.Date, "now").mockImplementationOnce(() => 100000); + jest.spyOn(globalThis.Date, "now").mockImplementationOnce(() => 100000); const err = makeMatrixError(429, { errcode: "M_LIMIT_EXCEEDED", retry_after_ms: 150000 }); expect(err.isRateLimitError()).toBe(true); // prefer Retry-After header over retry_after_ms diff --git a/spec/unit/http-api/fetch.spec.ts b/spec/unit/http-api/fetch.spec.ts index 2a48f03b6dc..294ec8df004 100644 --- a/spec/unit/http-api/fetch.spec.ts +++ b/spec/unit/http-api/fetch.spec.ts @@ -60,11 +60,11 @@ describe("FetchHttpApi", () => { }); it("should fall back to global fetch if fetchFn not provided", () => { - global.fetch = jest.fn(); - expect(global.fetch).not.toHaveBeenCalled(); + globalThis.fetch = jest.fn(); + expect(globalThis.fetch).not.toHaveBeenCalled(); const api = new FetchHttpApi(new TypedEventEmitter(), { baseUrl, prefix }); api.fetch("test"); - expect(global.fetch).toHaveBeenCalled(); + expect(globalThis.fetch).toHaveBeenCalled(); }); it("should update identity server base url", () => { diff --git a/spec/unit/http-api/index.spec.ts b/spec/unit/http-api/index.spec.ts index ca20bee4561..5435c4bdcae 100644 --- a/spec/unit/http-api/index.spec.ts +++ b/spec/unit/http-api/index.spec.ts @@ -45,9 +45,9 @@ describe("MatrixHttpApi", () => { } as unknown as XMLHttpRequest; // We stub out XHR here as it is not available in JSDOM // @ts-ignore - global.XMLHttpRequest = jest.fn().mockReturnValue(xhr); + globalThis.XMLHttpRequest = jest.fn().mockReturnValue(xhr); // @ts-ignore - global.XMLHttpRequest.DONE = DONE; + globalThis.XMLHttpRequest.DONE = DONE; }); afterEach(() => { @@ -60,7 +60,7 @@ describe("MatrixHttpApi", () => { }); it("should fall back to `fetch` where xhr is unavailable", () => { - global.XMLHttpRequest = undefined!; + globalThis.XMLHttpRequest = undefined!; const fetchFn = jest.fn().mockResolvedValue({ ok: true, json: jest.fn().mockResolvedValue({}) }); const api = new MatrixHttpApi(new TypedEventEmitter(), { baseUrl, prefix, fetchFn }); upload = api.uploadContent({} as File); diff --git a/spec/unit/models/beacon.spec.ts b/spec/unit/models/beacon.spec.ts index b3042cd6a31..8c35268d81e 100644 --- a/spec/unit/models/beacon.spec.ts +++ b/spec/unit/models/beacon.spec.ts @@ -70,7 +70,7 @@ describe("Beacon", () => { const advanceDateAndTime = (ms: number) => { // bc liveness check uses Date.now we have to advance this mock - jest.spyOn(global.Date, "now").mockReturnValue(Date.now() + ms); + jest.spyOn(globalThis.Date, "now").mockReturnValue(Date.now() + ms); // then advance time for the interval by the same amount jest.advanceTimersByTime(ms); }; @@ -108,11 +108,11 @@ describe("Beacon", () => { ); // back to 'now' - jest.spyOn(global.Date, "now").mockReturnValue(now); + jest.spyOn(globalThis.Date, "now").mockReturnValue(now); }); afterAll(() => { - jest.spyOn(global.Date, "now").mockRestore(); + jest.spyOn(globalThis.Date, "now").mockRestore(); }); it("creates beacon from event", () => { diff --git a/spec/unit/oidc/authorize.spec.ts b/spec/unit/oidc/authorize.spec.ts index e786b8fb56c..9fcf899d537 100644 --- a/spec/unit/oidc/authorize.spec.ts +++ b/spec/unit/oidc/authorize.spec.ts @@ -56,7 +56,7 @@ describe("oidc authorization", () => { delegatedAuthConfig.metadata.issuer + ".well-known/openid-configuration", mockOpenIdConfiguration(), ); - global.TextEncoder = TextEncoder; + globalThis.TextEncoder = TextEncoder; }); beforeEach(() => { diff --git a/spec/unit/pusher.spec.ts b/spec/unit/pusher.spec.ts index 994ef767587..75d08a270f6 100644 --- a/spec/unit/pusher.spec.ts +++ b/spec/unit/pusher.spec.ts @@ -35,7 +35,7 @@ describe("Pushers", () => { client = new MatrixClient({ baseUrl: "https://my.home.server", accessToken: "my.access.token", - fetchFn: httpBackend.fetchFn as typeof global.fetch, + fetchFn: httpBackend.fetchFn as typeof globalThis.fetch, }); }); diff --git a/spec/unit/queueToDevice.spec.ts b/spec/unit/queueToDevice.spec.ts index 362d410af1a..e4716755cc1 100644 --- a/spec/unit/queueToDevice.spec.ts +++ b/spec/unit/queueToDevice.spec.ts @@ -82,7 +82,7 @@ describe.each([[StoreType.Memory], [StoreType.IndexedDB]])("queueToDevice (%s st client = new MatrixClient({ baseUrl: "https://my.home.server", accessToken: "my.access.token", - fetchFn: httpBackend.fetchFn as typeof global.fetch, + fetchFn: httpBackend.fetchFn as typeof globalThis.fetch, store, }); }); @@ -256,7 +256,7 @@ describe.each([[StoreType.Memory], [StoreType.IndexedDB]])("queueToDevice (%s st client = new MatrixClient({ baseUrl: "https://my.home.server", accessToken: "my.access.token", - fetchFn: httpBackend.fetchFn as typeof global.fetch, + fetchFn: httpBackend.fetchFn as typeof globalThis.fetch, store, }); }); diff --git a/spec/unit/read-receipt.spec.ts b/spec/unit/read-receipt.spec.ts index 1fe7d4dc3f4..017a0aa3f96 100644 --- a/spec/unit/read-receipt.spec.ts +++ b/spec/unit/read-receipt.spec.ts @@ -54,7 +54,7 @@ describe("Read receipt", () => { userId: "@user:server", baseUrl: "https://my.home.server", accessToken: "my.access.token", - fetchFn: httpBackend.fetchFn as typeof global.fetch, + fetchFn: httpBackend.fetchFn as typeof globalThis.fetch, }); client.isGuest = () => false; client.supportsThreads = () => true; diff --git a/spec/unit/realtime-callbacks.spec.ts b/spec/unit/realtime-callbacks.spec.ts index 7cb1806a39c..7f9b83a8bca 100644 --- a/spec/unit/realtime-callbacks.spec.ts +++ b/spec/unit/realtime-callbacks.spec.ts @@ -53,8 +53,8 @@ describe("realtime-callbacks", function () { it("should set 'this' to the global object", function () { let passed = false; - const callback = function (this: typeof global) { - expect(this).toBe(global); // eslint-disable-line @typescript-eslint/no-invalid-this + const callback = function (this: typeof globalThis) { + expect(this).toBe(globalThis); // eslint-disable-line @typescript-eslint/no-invalid-this expect(this.console).toBeTruthy(); // eslint-disable-line @typescript-eslint/no-invalid-this passed = true; }; diff --git a/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts b/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts index 3f2199a09f0..959917b131f 100644 --- a/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts +++ b/spec/unit/rust-crypto/OutgoingRequestProcessor.spec.ts @@ -61,7 +61,7 @@ describe("OutgoingRequestProcessor", () => { const httpApi = new MatrixHttpApi(dummyEventEmitter, { baseUrl: "https://example.com", prefix: "/_matrix", - fetchFn: httpBackend.fetchFn as typeof global.fetch, + fetchFn: httpBackend.fetchFn as typeof globalThis.fetch, onlyData: true, }); diff --git a/spec/unit/sync-accumulator.spec.ts b/spec/unit/sync-accumulator.spec.ts index c68de970a85..5769b50fb8a 100644 --- a/spec/unit/sync-accumulator.spec.ts +++ b/spec/unit/sync-accumulator.spec.ts @@ -794,7 +794,7 @@ describe("SyncAccumulator", function () { } afterEach(() => { - jest.spyOn(global.Date, "now").mockRestore(); + jest.spyOn(globalThis.Date, "now").mockRestore(); }); it("should copy summary properties", function () { @@ -851,11 +851,11 @@ describe("SyncAccumulator", function () { const delta = 1000; const startingTs = 1000; - jest.spyOn(global.Date, "now").mockReturnValue(startingTs); + jest.spyOn(globalThis.Date, "now").mockReturnValue(startingTs); sa.accumulate(RES_WITH_AGE); - jest.spyOn(global.Date, "now").mockReturnValue(startingTs + delta); + jest.spyOn(globalThis.Date, "now").mockReturnValue(startingTs + delta); const output = sa.getJSON(); expect(output.roomsData.join["!foo:bar"].timeline.events[0].unsigned?.age).toEqual( diff --git a/spec/unit/webrtc/call.spec.ts b/spec/unit/webrtc/call.spec.ts index f8fc35a6661..922d63bd738 100644 --- a/spec/unit/webrtc/call.spec.ts +++ b/spec/unit/webrtc/call.spec.ts @@ -119,9 +119,9 @@ describe("Call", function () { const errorListener = () => {}; beforeEach(function () { - prevNavigator = global.navigator; - prevDocument = global.document; - prevWindow = global.window; + prevNavigator = globalThis.navigator; + prevDocument = globalThis.document; + prevWindow = globalThis.window; installWebRTCMocks(); @@ -159,9 +159,9 @@ describe("Call", function () { call.hangup(CallErrorCode.UserHangup, true); client.stop(); - global.navigator = prevNavigator; - global.window = prevWindow; - global.document = prevDocument; + globalThis.navigator = prevNavigator; + globalThis.window = prevWindow; + globalThis.document = prevDocument; jest.useRealTimers(); }); @@ -788,17 +788,17 @@ describe("Call", function () { }); it("should return false if window or document are undefined", () => { - global.window = undefined!; + globalThis.window = undefined!; expect(supportsMatrixCall()).toBe(false); - global.window = prevWindow; - global.document = undefined!; + globalThis.window = prevWindow; + globalThis.document = undefined!; expect(supportsMatrixCall()).toBe(false); }); it("should return false if RTCPeerConnection throws", () => { // @ts-ignore - writing to window as we are simulating browser edge-cases - global.window = {}; - Object.defineProperty(global.window, "RTCPeerConnection", { + globalThis.window = {}; + Object.defineProperty(globalThis.window, "RTCPeerConnection", { get: () => { throw Error("Secure mode, naaah!"); }, @@ -810,11 +810,11 @@ describe("Call", function () { "should return false if RTCPeerConnection & RTCSessionDescription " + "& RTCIceCandidate & mediaDevices are unavailable", () => { - global.window.RTCPeerConnection = undefined!; - global.window.RTCSessionDescription = undefined!; - global.window.RTCIceCandidate = undefined!; + globalThis.window.RTCPeerConnection = undefined!; + globalThis.window.RTCSessionDescription = undefined!; + globalThis.window.RTCIceCandidate = undefined!; // @ts-ignore - writing to a read-only property as we are simulating faulty browsers - global.navigator.mediaDevices = undefined; + globalThis.navigator.mediaDevices = undefined; expect(supportsMatrixCall()).toBe(false); }, ); @@ -1305,7 +1305,7 @@ describe("Call", function () { }); it("removes RTX codec from screen sharing transcievers", async () => { - mocked(global.RTCRtpSender.getCapabilities).mockReturnValue({ + mocked(globalThis.RTCRtpSender.getCapabilities).mockReturnValue({ codecs: [ { mimeType: "video/rtx", clockRate: 90000 }, { mimeType: "video/somethingelse", clockRate: 90000 }, @@ -1816,8 +1816,8 @@ describe("Call", function () { it("should emit IceFailed error on the successor call if RTCPeerConnection throws", async () => { // @ts-ignore - writing to window as we are simulating browser edge-cases - global.window = {}; - Object.defineProperty(global.window, "RTCPeerConnection", { + globalThis.window = {}; + Object.defineProperty(globalThis.window, "RTCPeerConnection", { get: () => { throw Error("Secure mode, naaah!"); }, diff --git a/spec/unit/webrtc/mediaHandler.spec.ts b/spec/unit/webrtc/mediaHandler.spec.ts index f50baec1f06..4d23ead5f21 100644 --- a/spec/unit/webrtc/mediaHandler.spec.ts +++ b/spec/unit/webrtc/mediaHandler.spec.ts @@ -31,7 +31,7 @@ describe("Media Handler", function () { beforeEach(() => { mockMediaDevices = new MockMediaDevices(); - global.navigator = { + globalThis.navigator = { mediaDevices: mockMediaDevices.typed(), } as unknown as Navigator; diff --git a/spec/unit/webrtc/stats/groupCallStats.spec.ts b/spec/unit/webrtc/stats/groupCallStats.spec.ts index 6aa45f307f9..ae97148764f 100644 --- a/spec/unit/webrtc/stats/groupCallStats.spec.ts +++ b/spec/unit/webrtc/stats/groupCallStats.spec.ts @@ -126,7 +126,7 @@ describe("GroupCallStats", () => { it("doing nothing if process already running", async () => { // @ts-ignore - jest.spyOn(global, "setInterval").mockReturnValue(22); + jest.spyOn(globalThis, "setInterval").mockReturnValue(22); stats.start(); expect(setInterval).toHaveBeenCalledTimes(1); stats.start(); @@ -146,8 +146,8 @@ describe("GroupCallStats", () => { }); it("finish stats process if was started", async () => { // @ts-ignore - jest.spyOn(global, "setInterval").mockReturnValue(22); - jest.spyOn(global, "clearInterval"); + jest.spyOn(globalThis, "setInterval").mockReturnValue(22); + jest.spyOn(globalThis, "clearInterval"); stats.start(); expect(setInterval).toHaveBeenCalledTimes(1); stats.stop(); @@ -155,7 +155,7 @@ describe("GroupCallStats", () => { }); it("do nothing if stats process was not started", async () => { - jest.spyOn(global, "clearInterval"); + jest.spyOn(globalThis, "clearInterval"); stats.stop(); expect(clearInterval).not.toHaveBeenCalled(); }); diff --git a/src/@types/global.d.ts b/src/@types/global.d.ts index d7e7c76ac2d..0b51c2b229a 100644 --- a/src/@types/global.d.ts +++ b/src/@types/global.d.ts @@ -14,13 +14,13 @@ See the License for the specific language governing permissions and limitations under the License. */ -// this is needed to tell TS about global.Olm +// this is needed to tell TS about globalThis.Olm import "@matrix-org/olm"; export {}; declare global { - // use `number` as the return type in all cases for global.set{Interval,Timeout}, + // use `number` as the return type in all cases for globalThis.set{Interval,Timeout}, // so we don't accidentally use the methods on NodeJS.Timeout - they only exist in a subset of environments. // The overload for clear{Interval,Timeout} is resolved as expected. // We use `ReturnType` in the code to be agnostic of if this definition gets loaded. diff --git a/src/autodiscovery.ts b/src/autodiscovery.ts index 3733e533022..b321dcddccb 100644 --- a/src/autodiscovery.ts +++ b/src/autodiscovery.ts @@ -414,16 +414,16 @@ export class AutoDiscovery { } } - private static fetch(resource: URL | string, options?: RequestInit): ReturnType { + private static fetch(resource: URL | string, options?: RequestInit): ReturnType { if (this.fetchFn) { return this.fetchFn(resource, options); } - return global.fetch(resource, options); + return globalThis.fetch(resource, options); } - private static fetchFn?: typeof global.fetch; + private static fetchFn?: typeof globalThis.fetch; - public static setFetchFn(fetchFn: typeof global.fetch): void { + public static setFetchFn(fetchFn: typeof globalThis.fetch): void { AutoDiscovery.fetchFn = fetchFn; } diff --git a/src/client.ts b/src/client.ts index 023231532e1..82fd049273c 100644 --- a/src/client.ts +++ b/src/client.ts @@ -307,7 +307,7 @@ export interface ICreateClientOpts { * The function to invoke for HTTP requests. * Most supported environments have a global `fetch` registered to which this will fall back. */ - fetchFn?: typeof global.fetch; + fetchFn?: typeof globalThis.fetch; userId?: string; @@ -1581,11 +1581,11 @@ export class MatrixClient extends TypedEventEmitter => { let indexedDB: IDBFactory; try { - indexedDB = global.indexedDB; + indexedDB = globalThis.indexedDB; if (!indexedDB) return; // No indexedDB support } catch { // No indexedDB support @@ -1799,7 +1799,7 @@ export class MatrixClient extends TypedEventEmitter { - // In private browsing, Firefox has a global.indexedDB, but attempts to delete an indexeddb + // In private browsing, Firefox has a globalThis.indexedDB, but attempts to delete an indexeddb // (even a non-existent one) fail with "DOMException: A mutation operation was attempted on a // database that did not allow mutations." // @@ -7548,7 +7548,9 @@ export class MatrixClient extends TypedEventEmittererr).httpStatus === 403) { // We got a 403, so there's no point in looping forever. this.logger.info("TURN access unavailable for this account: stopping credentials checks"); - if (this.checkTurnServersIntervalID !== null) global.clearInterval(this.checkTurnServersIntervalID); + if (this.checkTurnServersIntervalID !== null) { + globalThis.clearInterval(this.checkTurnServersIntervalID); + } this.checkTurnServersIntervalID = undefined; this.emit(ClientEvent.TurnServersError, err, true); // fatal } else { diff --git a/src/crypto/CrossSigning.ts b/src/crypto/CrossSigning.ts index ab1c9bcf2ab..77abb6b2545 100644 --- a/src/crypto/CrossSigning.ts +++ b/src/crypto/CrossSigning.ts @@ -125,7 +125,7 @@ export class CrossSigningInfo { function validateKey(key: Uint8Array | null): [string, PkSigning] | undefined { if (!key) return; - const signing = new global.Olm.PkSigning(); + const signing = new globalThis.Olm.PkSigning(); const gotPubkey = signing.init_with_seed(key); if (gotPubkey === expectedPubkey) { return [gotPubkey, signing]; @@ -307,7 +307,7 @@ export class CrossSigningInfo { try { if (level & CrossSigningLevel.MASTER) { - masterSigning = new global.Olm.PkSigning(); + masterSigning = new globalThis.Olm.PkSigning(); privateKeys.master = masterSigning.generate_seed(); masterPub = masterSigning.init_with_seed(privateKeys.master); keys.master = { @@ -322,7 +322,7 @@ export class CrossSigningInfo { } if (level & CrossSigningLevel.SELF_SIGNING) { - const sskSigning = new global.Olm.PkSigning(); + const sskSigning = new globalThis.Olm.PkSigning(); try { privateKeys.self_signing = sskSigning.generate_seed(); const sskPub = sskSigning.init_with_seed(privateKeys.self_signing); @@ -340,7 +340,7 @@ export class CrossSigningInfo { } if (level & CrossSigningLevel.USER_SIGNING) { - const uskSigning = new global.Olm.PkSigning(); + const uskSigning = new globalThis.Olm.PkSigning(); try { privateKeys.user_signing = uskSigning.generate_seed(); const uskPub = uskSigning.init_with_seed(privateKeys.user_signing); diff --git a/src/crypto/OlmDevice.ts b/src/crypto/OlmDevice.ts index 181acb9f141..6cedd49097e 100644 --- a/src/crypto/OlmDevice.ts +++ b/src/crypto/OlmDevice.ts @@ -167,7 +167,7 @@ export class OlmDevice { * @returns The version of Olm. */ public static getOlmVersion(): [number, number, number] { - return global.Olm.get_library_version(); + return globalThis.Olm.get_library_version(); } /** @@ -186,7 +186,7 @@ export class OlmDevice { */ public async init({ pickleKey, fromExportedDevice }: IInitOpts = {}): Promise { let e2eKeys; - const account = new global.Olm.Account(); + const account = new globalThis.Olm.Account(); try { if (fromExportedDevice) { @@ -268,7 +268,7 @@ export class OlmDevice { */ private getAccount(txn: unknown, func: (account: Account) => void): void { this.cryptoStore.getAccount(txn, (pickledAccount: string | null) => { - const account = new global.Olm.Account(); + const account = new globalThis.Olm.Account(); try { account.unpickle(this.pickleKey, pickledAccount!); func(account); @@ -352,7 +352,7 @@ export class OlmDevice { sessionInfo: ISessionInfo, func: (unpickledSessionInfo: IUnpickledSessionInfo) => void, ): void { - const session = new global.Olm.Session(); + const session = new globalThis.Olm.Session(); try { session.unpickle(this.pickleKey, sessionInfo.session!); const unpickledSessInfo: IUnpickledSessionInfo = Object.assign({}, sessionInfo, { session }); @@ -390,7 +390,7 @@ export class OlmDevice { * @internal */ private getUtility(func: (utility: Utility) => T): T { - const utility = new global.Olm.Utility(); + const utility = new globalThis.Olm.Utility(); try { return func(utility); } finally { @@ -517,7 +517,7 @@ export class OlmDevice { [IndexedDBCryptoStore.STORE_ACCOUNT, IndexedDBCryptoStore.STORE_SESSIONS], (txn) => { this.getAccount(txn, (account: Account) => { - const session = new global.Olm.Session(); + const session = new globalThis.Olm.Session(); try { session.create_outbound(account, theirIdentityKey, theirOneTimeKey); newSessionId = session.session_id(); @@ -567,7 +567,7 @@ export class OlmDevice { [IndexedDBCryptoStore.STORE_ACCOUNT, IndexedDBCryptoStore.STORE_SESSIONS], (txn) => { this.getAccount(txn, (account: Account) => { - const session = new global.Olm.Session(); + const session = new globalThis.Olm.Session(); try { session.create_inbound_from(account, theirDeviceIdentityKey, ciphertext); account.remove_one_time_keys(session); @@ -889,7 +889,7 @@ export class OlmDevice { throw new Error("Unknown outbound group session " + sessionId); } - const session = new global.Olm.OutboundGroupSession(); + const session = new globalThis.Olm.OutboundGroupSession(); try { session.unpickle(this.pickleKey, pickled); return func(session); @@ -904,7 +904,7 @@ export class OlmDevice { * @returns sessionId for the outbound session. */ public createOutboundGroupSession(): string { - const session = new global.Olm.OutboundGroupSession(); + const session = new globalThis.Olm.OutboundGroupSession(); try { session.create(); this.saveOutboundGroupSession(session); @@ -966,7 +966,7 @@ export class OlmDevice { sessionData: InboundGroupSessionData, func: (session: InboundGroupSession) => T, ): T { - const session = new global.Olm.InboundGroupSession(); + const session = new globalThis.Olm.InboundGroupSession(); try { session.unpickle(this.pickleKey, sessionData.session); return func(session); @@ -1068,7 +1068,7 @@ export class OlmDevice { existingSessionData: InboundGroupSessionData | null, ) => { // new session. - const session = new global.Olm.InboundGroupSession(); + const session = new globalThis.Olm.InboundGroupSession(); try { if (exportFormat) { session.import_session(sessionKey); diff --git a/src/crypto/backup.ts b/src/crypto/backup.ts index 39bcaae6126..42233385f16 100644 --- a/src/crypto/backup.ts +++ b/src/crypto/backup.ts @@ -666,13 +666,13 @@ export class Curve25519 implements BackupAlgorithm { if (!authData || !("public_key" in authData)) { throw new Error("auth_data missing required information"); } - const publicKey = new global.Olm.PkEncryption(); + const publicKey = new globalThis.Olm.PkEncryption(); publicKey.set_recipient_key(authData.public_key); return new Curve25519(authData as ICurve25519AuthData, publicKey, getKey); } public static async prepare(key?: string | Uint8Array | null): Promise<[Uint8Array, AuthData]> { - const decryption = new global.Olm.PkDecryption(); + const decryption = new globalThis.Olm.PkDecryption(); try { const authData: Partial = {}; if (!key) { @@ -685,7 +685,7 @@ export class Curve25519 implements BackupAlgorithm { authData.private_key_iterations = derivation.iterations; authData.public_key = decryption.init_with_private_key(derivation.key); } - const publicKey = new global.Olm.PkEncryption(); + const publicKey = new globalThis.Olm.PkEncryption(); publicKey.set_recipient_key(authData.public_key); return [decryption.get_private_key(), authData as AuthData]; @@ -716,7 +716,7 @@ export class Curve25519 implements BackupAlgorithm { sessions: Record>, ): Promise { const privKey = await this.getKey(); - const decryption = new global.Olm.PkDecryption(); + const decryption = new globalThis.Olm.PkDecryption(); try { const backupPubKey = decryption.init_with_private_key(privKey); @@ -748,7 +748,7 @@ export class Curve25519 implements BackupAlgorithm { } public async keyMatches(key: Uint8Array): Promise { - const decryption = new global.Olm.PkDecryption(); + const decryption = new globalThis.Olm.PkDecryption(); let pubKey: string; try { pubKey = decryption.init_with_private_key(key); diff --git a/src/crypto/dehydration.ts b/src/crypto/dehydration.ts index 4cfc1193a0b..cb72691f193 100644 --- a/src/crypto/dehydration.ts +++ b/src/crypto/dehydration.ts @@ -68,7 +68,7 @@ export class DehydrationManager { this.deviceDisplayName = deviceDisplayName; const now = Date.now(); const delay = Math.max(1, time + oneweek - now); - this.timeoutId = global.setTimeout(this.dehydrateDevice.bind(this), delay); + this.timeoutId = globalThis.setTimeout(this.dehydrateDevice.bind(this), delay); } }, "dehydration", @@ -97,7 +97,7 @@ export class DehydrationManager { if (!key) { // unsetting the key -- cancel any pending dehydration task if (this.timeoutId) { - global.clearTimeout(this.timeoutId); + globalThis.clearTimeout(this.timeoutId); this.timeoutId = undefined; } // clear storage @@ -135,7 +135,7 @@ export class DehydrationManager { } this.inProgress = true; if (this.timeoutId) { - global.clearTimeout(this.timeoutId); + globalThis.clearTimeout(this.timeoutId); this.timeoutId = undefined; } try { @@ -155,7 +155,7 @@ export class DehydrationManager { logger.log("Creating account"); // create the account and all the necessary keys - const account = new global.Olm.Account(); + const account = new globalThis.Olm.Account(); account.create(); const e2eKeys = JSON.parse(account.identity_keys()); @@ -255,7 +255,7 @@ export class DehydrationManager { logger.log("Done dehydrating"); // dehydrate again in a week - this.timeoutId = global.setTimeout(this.dehydrateDevice.bind(this), oneweek); + this.timeoutId = globalThis.setTimeout(this.dehydrateDevice.bind(this), oneweek); return deviceId; } finally { @@ -265,7 +265,7 @@ export class DehydrationManager { public stop(): void { if (this.timeoutId) { - global.clearTimeout(this.timeoutId); + globalThis.clearTimeout(this.timeoutId); this.timeoutId = undefined; } } diff --git a/src/crypto/index.ts b/src/crypto/index.ts index c252ba15a4b..2e3bef6eecc 100644 --- a/src/crypto/index.ts +++ b/src/crypto/index.ts @@ -537,7 +537,7 @@ export class Crypto extends TypedEventEmitter { logger.log("Crypto: initialising Olm..."); - await global.Olm.init(); + await globalThis.Olm.init(); logger.log( exportedOlmDevice ? "Crypto: initialising Olm device from exported device..." @@ -668,7 +668,7 @@ export class Crypto extends TypedEventEmitter { - const decryption = new global.Olm.PkDecryption(); + const decryption = new globalThis.Olm.PkDecryption(); try { if (password) { const derivation = await keyFromPassphrase(password); @@ -1252,7 +1252,7 @@ export class Crypto extends TypedEventEmitter => { - await global.Olm.init(); - olmutil = olmutil || new global.Olm.Utility(); + await globalThis.Olm.init(); + olmutil = olmutil || new globalThis.Olm.Utility(); // make sure user's keys are downloaded await this.baseApis.downloadKeys([this.userId]); @@ -369,7 +369,7 @@ export class SAS extends Base { const keyAgreement = content.key_agreement_protocol; const macMethod = content.message_authentication_code; const hashCommitment = content.commitment; - const olmSAS = new global.Olm.SAS(); + const olmSAS = new globalThis.Olm.SAS(); try { this.ourSASPubKey = olmSAS.get_pubkey(); await this.send(EventType.KeyVerificationKey, { @@ -411,7 +411,7 @@ export class SAS extends Base { throw newUnknownMethodError(); } - const olmSAS = new global.Olm.SAS(); + const olmSAS = new globalThis.Olm.SAS(); try { const commitmentStr = olmSAS.get_pubkey() + anotherjson.stringify(content); await this.send(EventType.KeyVerificationAccept, { diff --git a/src/http-api/fetch.ts b/src/http-api/fetch.ts index 6ada49ab7a1..bdf9cb15325 100644 --- a/src/http-api/fetch.ts +++ b/src/http-api/fetch.ts @@ -53,11 +53,11 @@ export class FetchHttpApi { this.abortController = new AbortController(); } - public fetch(resource: URL | string, options?: RequestInit): ReturnType { + public fetch(resource: URL | string, options?: RequestInit): ReturnType { if (this.opts.fetchFn) { return this.opts.fetchFn(resource, options); } - return global.fetch(resource, options); + return globalThis.fetch(resource, options); } /** diff --git a/src/http-api/index.ts b/src/http-api/index.ts index abc7391da16..bb1efa41ffc 100644 --- a/src/http-api/index.ts +++ b/src/http-api/index.ts @@ -60,8 +60,8 @@ export class MatrixHttpApi extends FetchHttpApi { } as Upload; const deferred = defer(); - if (global.XMLHttpRequest) { - const xhr = new global.XMLHttpRequest(); + if (globalThis.XMLHttpRequest) { + const xhr = new globalThis.XMLHttpRequest(); const timeoutFn = function (): void { xhr.abort(); @@ -73,7 +73,7 @@ export class MatrixHttpApi extends FetchHttpApi { xhr.onreadystatechange = function (): void { switch (xhr.readyState) { - case global.XMLHttpRequest.DONE: + case globalThis.XMLHttpRequest.DONE: callbacks.clearTimeout(timeoutTimer); try { if (xhr.status === 0) { diff --git a/src/http-api/interface.ts b/src/http-api/interface.ts index c06b850f311..57e8e6b0995 100644 --- a/src/http-api/interface.ts +++ b/src/http-api/interface.ts @@ -36,7 +36,7 @@ export type AccessTokens = { */ export type TokenRefreshFunction = (refreshToken: string) => Promise; export interface IHttpOpts { - fetchFn?: typeof global.fetch; + fetchFn?: typeof globalThis.fetch; baseUrl: string; idBaseUrl?: string; diff --git a/src/index.ts b/src/index.ts index 65e798c870f..a63d9f45a7d 100644 --- a/src/index.ts +++ b/src/index.ts @@ -16,10 +16,10 @@ limitations under the License. import * as matrixcs from "./matrix.ts"; -if (global.__js_sdk_entrypoint) { +if (globalThis.__js_sdk_entrypoint) { throw new Error("Multiple matrix-js-sdk entrypoints detected!"); } -global.__js_sdk_entrypoint = true; +globalThis.__js_sdk_entrypoint = true; export * from "./matrix.ts"; export default matrixcs; diff --git a/src/matrix.ts b/src/matrix.ts index 1a79e8b04c3..638a238d9c6 100644 --- a/src/matrix.ts +++ b/src/matrix.ts @@ -130,7 +130,7 @@ function amendClientOpts(opts: ICreateClientOpts): ICreateClientOpts { opts.store = opts.store ?? new MemoryStore({ - localStorage: global.localStorage, + localStorage: globalThis.localStorage, }); opts.scheduler = opts.scheduler ?? new MatrixScheduler(); opts.cryptoStore = opts.cryptoStore ?? cryptoStoreFactory(); diff --git a/src/realtime-callbacks.ts b/src/realtime-callbacks.ts index b59d145344a..8ca0c5d9c28 100644 --- a/src/realtime-callbacks.ts +++ b/src/realtime-callbacks.ts @@ -33,7 +33,7 @@ const TIMER_CHECK_PERIOD_MS = 1000; // counter, for making up ids to return from setTimeout let count = 0; -// the key for our callback with the real global.setTimeout +// the key for our callback with the real globalThis.setTimeout let realCallbackKey: NodeJS.Timeout | number; type Callback = { @@ -114,10 +114,10 @@ export function clearTimeout(key: number): void { } } -// use the real global.setTimeout to schedule a callback to runCallbacks. +// use the real globalThis.setTimeout to schedule a callback to runCallbacks. function scheduleRealCallback(): void { if (realCallbackKey) { - global.clearTimeout(realCallbackKey as NodeJS.Timeout); + globalThis.clearTimeout(realCallbackKey as NodeJS.Timeout); } const first = callbackList[0]; @@ -131,7 +131,7 @@ function scheduleRealCallback(): void { const delayMs = Math.min(first.runAt - timestamp, TIMER_CHECK_PERIOD_MS); debuglog("scheduleRealCallback: now:", timestamp, "delay:", delayMs); - realCallbackKey = global.setTimeout(runCallbacks, delayMs); + realCallbackKey = globalThis.setTimeout(runCallbacks, delayMs); } function runCallbacks(): void { @@ -158,7 +158,7 @@ function runCallbacks(): void { for (const cb of callbacksToRun) { try { - cb.func.apply(global, cb.params); + cb.func.apply(globalThis, cb.params); } catch (e) { logger.error("Uncaught exception in callback function", e); } diff --git a/src/rendezvous/transports/MSC4108RendezvousSession.ts b/src/rendezvous/transports/MSC4108RendezvousSession.ts index 98091471fae..ae7719bc24f 100644 --- a/src/rendezvous/transports/MSC4108RendezvousSession.ts +++ b/src/rendezvous/transports/MSC4108RendezvousSession.ts @@ -29,7 +29,7 @@ export class MSC4108RendezvousSession { public url?: string; private readonly client?: MatrixClient; private readonly fallbackRzServer?: string; - private readonly fetchFn?: typeof global.fetch; + private readonly fetchFn?: typeof globalThis.fetch; private readonly onFailure?: RendezvousFailureListener; private etag?: string; private expiresAt?: Date; @@ -42,7 +42,7 @@ export class MSC4108RendezvousSession { url, fetchFn, }: { - fetchFn?: typeof global.fetch; + fetchFn?: typeof globalThis.fetch; onFailure?: RendezvousFailureListener; url: string; }); @@ -52,7 +52,7 @@ export class MSC4108RendezvousSession { fallbackRzServer, fetchFn, }: { - fetchFn?: typeof global.fetch; + fetchFn?: typeof globalThis.fetch; onFailure?: RendezvousFailureListener; client?: MatrixClient; fallbackRzServer?: string; @@ -64,7 +64,7 @@ export class MSC4108RendezvousSession { client, fallbackRzServer, }: { - fetchFn?: typeof global.fetch; + fetchFn?: typeof globalThis.fetch; onFailure?: RendezvousFailureListener; url?: string; client?: MatrixClient; @@ -91,11 +91,11 @@ export class MSC4108RendezvousSession { return this._cancelled; } - private fetch(resource: URL | string, options?: RequestInit): ReturnType { + private fetch(resource: URL | string, options?: RequestInit): ReturnType { if (this.fetchFn) { return this.fetchFn(resource, options); } - return global.fetch(resource, options); + return globalThis.fetch(resource, options); } private async getPostEndpoint(): Promise { diff --git a/src/sync.ts b/src/sync.ts index 47be1ebc89a..2652a89a517 100644 --- a/src/sync.ts +++ b/src/sync.ts @@ -694,7 +694,7 @@ export class SyncApi { this.running = true; this.abortController = new AbortController(); - global.window?.addEventListener?.("online", this.onOnline, false); + globalThis.window?.addEventListener?.("online", this.onOnline, false); if (this.client.isGuest()) { // no push rules for guests, no access to POST filter for guests. @@ -779,10 +779,10 @@ export class SyncApi { public stop(): void { debuglog("SyncApi.stop"); // It is necessary to check for the existance of - // global.window AND global.window.removeEventListener. - // Some platforms (e.g. React Native) register global.window, - // but do not have global.window.removeEventListener. - global.window?.removeEventListener?.("online", this.onOnline, false); + // globalThis.window AND globalThis.window.removeEventListener. + // Some platforms (e.g. React Native) register globalThis.window, + // but do not have globalThis.window.removeEventListener. + globalThis.window?.removeEventListener?.("online", this.onOnline, false); this.running = false; this.abortController?.abort(); if (this.keepAliveTimer) { From 6528a59fc195747e2a6e33a762a0d58f6595f62a Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Fri, 1 Nov 2024 17:38:08 +0000 Subject: [PATCH 497/595] Reduce cognitive complexity of Room.addLiveEvents() (#4493) --- src/models/room.ts | 62 ++++++++++++++++++++++++---------------------- 1 file changed, 33 insertions(+), 29 deletions(-) diff --git a/src/models/room.ts b/src/models/room.ts index e50ca62f8cc..855daa705a7 100644 --- a/src/models/room.ts +++ b/src/models/room.ts @@ -2858,22 +2858,7 @@ export class Room extends ReadReceipt { } } - /** - * Add some events to this room. This can include state events, message - * events and typing notifications. These events are treated as "live" so - * they will go to the end of the timeline. - * - * @param events - A list of events to add. - * @param addLiveEventOptions - addLiveEvent options - * @throws If `duplicateStrategy` is not falsey, 'replace' or 'ignore'. - */ - public async addLiveEvents(events: MatrixEvent[], addLiveEventOptions?: IAddLiveEventOptions): Promise { - const { duplicateStrategy, fromCache, timelineWasEmpty = false } = addLiveEventOptions ?? {}; - if (duplicateStrategy && ["replace", "ignore"].indexOf(duplicateStrategy) === -1) { - throw new Error("duplicateStrategy MUST be either 'replace' or 'ignore'"); - } - - // sanity check that the live timeline is still live + private assertTimelineSetsAreLive(): void { for (let i = 0; i < this.timelineSets.length; i++) { const liveTimeline = this.timelineSets[i].getLiveTimeline(); if (liveTimeline.getPaginationToken(EventTimeline.FORWARDS)) { @@ -2890,6 +2875,25 @@ export class Room extends ReadReceipt { throw new Error(`live timeline ${i} is no longer live - it has a neighbouring timeline`); } } + } + + /** + * Add some events to this room. This can include state events, message + * events and typing notifications. These events are treated as "live" so + * they will go to the end of the timeline. + * + * @param events - A list of events to add. + * @param addLiveEventOptions - addLiveEvent options + * @throws If `duplicateStrategy` is not falsey, 'replace' or 'ignore'. + */ + public async addLiveEvents(events: MatrixEvent[], addLiveEventOptions?: IAddLiveEventOptions): Promise { + const { duplicateStrategy, fromCache, timelineWasEmpty = false } = addLiveEventOptions ?? {}; + if (duplicateStrategy && ["replace", "ignore"].indexOf(duplicateStrategy) === -1) { + throw new Error("duplicateStrategy MUST be either 'replace' or 'ignore'"); + } + + // sanity check that the live timeline is still live + this.assertTimelineSetsAreLive(); const threadRoots = this.findThreadRoots(events); const eventsByThread: { [threadId: string]: MatrixEvent[] } = {}; @@ -2916,11 +2920,11 @@ export class Room extends ReadReceipt { } } - let { shouldLiveInRoom, shouldLiveInThread, threadId } = this.eventShouldLiveIn( - event, - neighbouringEvents, - threadRoots, - ); + let { + shouldLiveInRoom, + shouldLiveInThread, + threadId = "", + } = this.eventShouldLiveIn(event, neighbouringEvents, threadRoots); if (!shouldLiveInThread && !shouldLiveInRoom && event.isRelation()) { try { @@ -2935,20 +2939,20 @@ export class Room extends ReadReceipt { event.setUnsigned(unsigned); } - ({ shouldLiveInRoom, shouldLiveInThread, threadId } = this.eventShouldLiveIn( - event, - neighbouringEvents, - threadRoots, - )); + ({ + shouldLiveInRoom, + shouldLiveInThread, + threadId = "", + } = this.eventShouldLiveIn(event, neighbouringEvents, threadRoots)); } catch (e) { logger.error("Failed to load parent event of unhandled relation", e); } } - if (shouldLiveInThread && !eventsByThread[threadId ?? ""]) { - eventsByThread[threadId ?? ""] = []; + if (shouldLiveInThread && !eventsByThread[threadId]) { + eventsByThread[threadId] = []; } - eventsByThread[threadId ?? ""]?.push(event); + eventsByThread[threadId]?.push(event); if (shouldLiveInRoom) { this.addLiveEvent(event, options); From 1061b93b29997ddc222b7f911f90d5509fb98aac Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Mon, 4 Nov 2024 09:55:32 +0100 Subject: [PATCH 498/595] Remove remaining legacy crypto imports in new crypto and tests (#4491) * Use `CryptoCallbacks` from `CryptoApi` instead of legacy crypto. * Use `KeyBackup` from rust crypto instead of `IKeyBackup` from legacy crypto --- spec/integ/crypto/crypto.spec.ts | 6 +++--- spec/integ/crypto/megolm-backup.spec.ts | 4 ++-- src/rust-crypto/index.ts | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/spec/integ/crypto/crypto.spec.ts b/spec/integ/crypto/crypto.spec.ts index 613769e4968..d72b3d6a262 100644 --- a/spec/integ/crypto/crypto.spec.ts +++ b/spec/integ/crypto/crypto.spec.ts @@ -91,7 +91,6 @@ import { OnlySignedDevicesIsolationMode, } from "../../../src/crypto-api"; import { E2EKeyResponder } from "../../test-utils/E2EKeyResponder"; -import { IKeyBackup } from "../../../src/crypto/backup"; import { createOlmAccount, createOlmSession, @@ -106,6 +105,7 @@ import { ToDevicePayload } from "../../../src/models/ToDeviceMessage"; import { AccountDataAccumulator } from "../../test-utils/AccountDataAccumulator"; import { UNSIGNED_MEMBERSHIP_FIELD } from "../../../src/@types/event"; import { KnownMembership } from "../../../src/@types/membership"; +import { KeyBackup } from "../../../src/rust-crypto/backup.ts"; afterEach(() => { // reset fake-indexeddb after each test, to make sure we don't leak connections @@ -3138,11 +3138,11 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string, // Import a new key that should be uploaded const newKey = testData.MEGOLM_SESSION_DATA; - const awaitKeyUploaded = new Promise((resolve) => { + const awaitKeyUploaded = new Promise((resolve) => { fetchMock.put( "path:/_matrix/client/v3/room_keys/keys", (url, request) => { - const uploadPayload: IKeyBackup = JSON.parse(request.body?.toString() ?? "{}"); + const uploadPayload: KeyBackup = JSON.parse(request.body?.toString() ?? "{}"); resolve(uploadPayload); return { status: 200, diff --git a/spec/integ/crypto/megolm-backup.spec.ts b/spec/integ/crypto/megolm-backup.spec.ts index bc36f940ffc..55cdd76b1f1 100644 --- a/spec/integ/crypto/megolm-backup.spec.ts +++ b/spec/integ/crypto/megolm-backup.spec.ts @@ -42,10 +42,10 @@ import { } from "../../test-utils/test-utils"; import * as testData from "../../test-utils/test-data"; import { KeyBackupInfo, KeyBackupSession } from "../../../src/crypto-api/keybackup"; -import { IKeyBackup } from "../../../src/crypto/backup"; import { flushPromises } from "../../test-utils/flushPromises"; import { defer, IDeferred } from "../../../src/utils"; import { DecryptionFailureCode } from "../../../src/crypto-api"; +import { KeyBackup } from "../../../src/rust-crypto/backup.ts"; const ROOM_ID = testData.TEST_ROOM_ID; @@ -91,7 +91,7 @@ function mockUploadEmitter( }, }; } - const uploadPayload: IKeyBackup = JSON.parse(request.body?.toString() ?? "{}"); + const uploadPayload: KeyBackup = JSON.parse(request.body?.toString() ?? "{}"); let count = 0; for (const [roomId, value] of Object.entries(uploadPayload.rooms)) { for (const sessionId of Object.keys(value.sessions)) { diff --git a/src/rust-crypto/index.ts b/src/rust-crypto/index.ts index 61f15a192a1..bf391bdca0d 100644 --- a/src/rust-crypto/index.ts +++ b/src/rust-crypto/index.ts @@ -20,7 +20,6 @@ import { StoreHandle } from "@matrix-org/matrix-sdk-crypto-wasm"; import { RustCrypto } from "./rust-crypto.ts"; import { IHttpOpts, MatrixHttpApi } from "../http-api/index.ts"; import { ServerSideSecretStorage } from "../secret-storage.ts"; -import { ICryptoCallbacks } from "../crypto/index.ts"; import { Logger } from "../logger.ts"; import { CryptoStore, MigrationState } from "../crypto/store/base.ts"; import { @@ -28,6 +27,7 @@ import { migrateLegacyLocalTrustIfNeeded, migrateRoomSettingsFromLegacyCrypto, } from "./libolm_migration.ts"; +import { CryptoCallbacks } from "../crypto-api/index.ts"; /** * Create a new `RustCrypto` implementation @@ -55,7 +55,7 @@ export async function initRustCrypto(args: { secretStorage: ServerSideSecretStorage; /** Crypto callbacks provided by the application. */ - cryptoCallbacks: ICryptoCallbacks; + cryptoCallbacks: CryptoCallbacks; /** * The prefix to use on the indexeddbs created by rust-crypto. @@ -145,7 +145,7 @@ async function initOlmMachine( userId: string, deviceId: string, secretStorage: ServerSideSecretStorage, - cryptoCallbacks: ICryptoCallbacks, + cryptoCallbacks: CryptoCallbacks, storeHandle: StoreHandle, legacyCryptoStore?: CryptoStore, ): Promise { From a197afe8aa996fe2fd8f2d3fbcae44a25e47d4ec Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 4 Nov 2024 09:49:27 +0000 Subject: [PATCH 499/595] Refactor MatrixClient::forget to not abuse membershipChange API (#4490) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/client.ts | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/client.ts b/src/client.ts index 82fd049273c..ec7457ed38c 100644 --- a/src/client.ts +++ b/src/client.ts @@ -5796,16 +5796,17 @@ export class MatrixClient extends TypedEventEmitter { - const promise = this.membershipChange(roomId, undefined, "forget"); - if (!deleteRoom) { - return promise; - } - return promise.then((response) => { + public async forget(roomId: string, deleteRoom = true): Promise<{}> { + // API returns an empty object + const path = utils.encodeUri("/rooms/$room_id/forget", { + $room_id: roomId, + }); + const response = await this.http.authedRequest<{}>(Method.Post, path); + if (deleteRoom) { this.store.removeRoom(roomId); this.emit(ClientEvent.DeleteRoom, roomId); - return response; - }); + } + return response; } /** @@ -5846,7 +5847,7 @@ export class MatrixClient extends TypedEventEmitter { // API returns an empty object From 794f044dda21cfe6d5b1075a0aca868e857e3ce0 Mon Sep 17 00:00:00 2001 From: David Baker Date: Mon, 4 Nov 2024 10:53:30 +0000 Subject: [PATCH 500/595] Make doc clearer on getCrossSigningKeyId (#4477) * Make doc clearer on getCrossSigningKeyId I was trying to work out why this was being used in a check. It turns out it only returns the key ID if the private part is stored locally, which seems very much non-obvious. * Better doc * Formatting & clarity Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- src/crypto-api/index.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index ea6177f7f85..46fe7528a0a 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -274,7 +274,13 @@ export interface CryptoApi { isCrossSigningReady(): Promise; /** - * Get the ID of one of the user's cross-signing keys. + * Get the ID of one of the user's cross-signing keys, if both private and matching + * public parts of that key are available (ie. cached in the local crypto store). + * + * The public part may not be available if a `/keys/query` request has not yet been + * performed, or if the device that created the keys failed to publish them. + * + * If either part of the keypair is not available, this will return `null`. * * @param type - The type of key to get the ID of. One of `CrossSigningKey.Master`, `CrossSigningKey.SelfSigning`, * or `CrossSigningKey.UserSigning`. Defaults to `CrossSigningKey.Master`. From c4048d985ddbeb45c5a07728ba084f41fcbf7495 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 5 Nov 2024 13:49:13 +0000 Subject: [PATCH 501/595] v34.10.0 --- CHANGELOG.md | 23 +++++++++++++++++++++++ package.json | 2 +- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d457c58fe80..cc16d3f96b4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,26 @@ +Changes in [34.10.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.10.0) (2024-11-05) +==================================================================================================== +## 🦖 Deprecations + +* Deprecate `CreateSecretStorageOpts.keyBackupInfo` used in `CryptoApi.bootstrapSecretStorage.` ([#4474](https://github.com/matrix-org/matrix-js-sdk/pull/4474)). Contributed by @florianduros. +* Add CryptoApi.encryptToDeviceMessages() and deprecate Crypto.encryptAndSendToDevices() ([#4380](https://github.com/matrix-org/matrix-js-sdk/pull/4380)). Contributed by @hughns. +* Remove abandoned MSC3886, MSC3903, MSC3906 experimental implementations ([#4469](https://github.com/matrix-org/matrix-js-sdk/pull/4469)). Contributed by @t3chguy. +* Deprecate `MatrixClient.getDehydratedDevice` ([#4467](https://github.com/matrix-org/matrix-js-sdk/pull/4467)). Contributed by @florianduros. +* Deprecate top level crypto events re-export ([#4444](https://github.com/matrix-org/matrix-js-sdk/pull/4444)). Contributed by @florianduros. + +## ✨ Features + +* Add CryptoApi.encryptToDeviceMessages() and deprecate Crypto.encryptAndSendToDevices() ([#4380](https://github.com/matrix-org/matrix-js-sdk/pull/4380)). Contributed by @hughns. +* Do not rotate MatrixRTC media encryption key when a new member joins a session ([#4472](https://github.com/matrix-org/matrix-js-sdk/pull/4472)). Contributed by @hughns. +* Avoid `|` notation in log messages ([#4473](https://github.com/matrix-org/matrix-js-sdk/pull/4473)). Contributed by @richvdh. +* Refactor/simplify Promises in MatrixRTCSession ([#4466](https://github.com/matrix-org/matrix-js-sdk/pull/4466)). Contributed by @AndrewFerr. +* Prepare delayed call leave events more reliably ([#4447](https://github.com/matrix-org/matrix-js-sdk/pull/4447)). Contributed by @AndrewFerr. + +## 🐛 Bug Fixes + +* Fix DelayedEventInfo type ([#4446](https://github.com/matrix-org/matrix-js-sdk/pull/4446)). Contributed by @AndrewFerr. + + Changes in [34.9.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.9.0) (2024-10-22) ================================================================================================== ## 🦖 Deprecations diff --git a/package.json b/package.json index eb4d9d860ab..a8844c4f078 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.10.0-rc.0", + "version": "34.10.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From fbbdb6e766b0fe73427dce75d341233819d2d928 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Date: Tue, 5 Nov 2024 16:38:13 +0000 Subject: [PATCH 502/595] Remove dead release scripts (#4496) * Remove redundant `pre-release.sh` script This is now a no-op (there are no `matrix_lib` fields in package.json), so we may as well remove it. * Remove redundant `post-merge-master` script Just as pre-release is a no-op, so is this * Remove redundant switch_package_to_release script Once more: this script is a no-op. --- .github/workflows/release-gitflow.yml | 3 --- .github/workflows/release-make.yml | 5 ----- .github/workflows/static_analysis.yml | 10 ---------- scripts/release/post-merge-master.sh | 22 ---------------------- scripts/release/pre-release.sh | 14 -------------- scripts/switch_package_to_release.cjs | 18 ------------------ scripts/switch_package_to_release.js | 1 - 7 files changed, 73 deletions(-) delete mode 100755 scripts/release/post-merge-master.sh delete mode 100755 scripts/release/pre-release.sh delete mode 100755 scripts/switch_package_to_release.cjs delete mode 120000 scripts/switch_package_to_release.js diff --git a/.github/workflows/release-gitflow.yml b/.github/workflows/release-gitflow.yml index 282e45ebbd1..569542b8cf5 100644 --- a/.github/workflows/release-gitflow.yml +++ b/.github/workflows/release-gitflow.yml @@ -49,9 +49,6 @@ jobs: git checkout develop git merge -X ours master - - name: Run post-merge-master script to revert package.json fields - run: ./.action-repo/scripts/release/post-merge-master.sh - - name: Reset dependencies if: inputs.dependencies run: | diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index 38745231602..2900ade4231 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -158,11 +158,6 @@ jobs: env: RELEASE_NOTES: ${{ steps.draft-release.outputs.body }} - - name: Run pre-release script to update package.json fields - run: | - ./.action-repo/scripts/release/pre-release.sh - git add package.json - - name: Commit changes run: git commit -m "$VERSION" diff --git a/.github/workflows/static_analysis.yml b/.github/workflows/static_analysis.yml index a0afd01863c..7c3be28e614 100644 --- a/.github/workflows/static_analysis.yml +++ b/.github/workflows/static_analysis.yml @@ -26,16 +26,6 @@ jobs: - name: Typecheck run: "yarn run lint:types" - - name: Switch js-sdk to release mode - run: | - scripts/switch_package_to_release.js - yarn install - yarn run build:compile - yarn run build:types - - - name: Typecheck (release mode) - run: "yarn run lint:types" - js_lint: name: "ESLint" runs-on: ubuntu-24.04 diff --git a/scripts/release/post-merge-master.sh b/scripts/release/post-merge-master.sh deleted file mode 100755 index e76d6422111..00000000000 --- a/scripts/release/post-merge-master.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -# When merging to develop, we need revert the `main` and `typings` fields if we adjusted them previously. -for i in main typings browser -do - # If a `lib` prefixed value is present, it means we adjusted the field earlier at publish time, so we should revert it now. - if [ "$(jq -r ".matrix_lib_$i" package.json)" != "null" ]; then - # If there's a `src` prefixed value, use that, otherwise delete. - # This is used to delete the `typings` field and reset `main` back to the TypeScript source. - src_value=$(jq -r ".matrix_src_$i" package.json) - if [ "$src_value" != "null" ]; then - jq ".$i = .matrix_src_$i" package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json - else - jq "del(.$i)" package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json - fi - fi -done - -if [ -n "$(git ls-files --modified package.json)" ]; then - echo "Committing develop package.json" - git commit package.json -m "Resetting package fields for development" -fi diff --git a/scripts/release/pre-release.sh b/scripts/release/pre-release.sh deleted file mode 100755 index 6b47ef180ff..00000000000 --- a/scripts/release/pre-release.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -# For the published and dist versions of the package, -# we copy the `matrix_lib_main` and `matrix_lib_typings` fields to `main` and `typings` (if they exist). -# This small bit of gymnastics allows us to use the TypeScript source directly for development without -# needing to build before linting or testing. - -for i in main typings browser -do - lib_value=$(jq -r ".matrix_lib_$i" package.json) - if [ "$lib_value" != "null" ]; then - jq ".$i = .matrix_lib_$i" package.json > package.json.new && mv package.json.new package.json && yarn prettier --write package.json - fi -done diff --git a/scripts/switch_package_to_release.cjs b/scripts/switch_package_to_release.cjs deleted file mode 100755 index 6d857a4070a..00000000000 --- a/scripts/switch_package_to_release.cjs +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env node - -const fsProm = require("fs/promises"); - -const PKGJSON = "package.json"; - -async function main() { - const pkgJson = JSON.parse(await fsProm.readFile(PKGJSON, "utf8")); - for (const field of ["main", "typings"]) { - if (pkgJson["matrix_lib_" + field] !== undefined) { - pkgJson[field] = pkgJson["matrix_lib_" + field]; - } - } - - await fsProm.writeFile(PKGJSON, JSON.stringify(pkgJson, null, 2)); -} - -main(); diff --git a/scripts/switch_package_to_release.js b/scripts/switch_package_to_release.js deleted file mode 120000 index 27f1619c9a2..00000000000 --- a/scripts/switch_package_to_release.js +++ /dev/null @@ -1 +0,0 @@ -switch_package_to_release.cjs \ No newline at end of file From 30b1894f37109b6b3462b06fbcd9712bad8d4e2d Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Wed, 6 Nov 2024 16:38:15 +0100 Subject: [PATCH 503/595] Deprecate unused callback in `CryptoCallbacks` (#4501) --- src/crypto-api/index.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/crypto-api/index.ts b/src/crypto-api/index.ts index 46fe7528a0a..1713bf1a8b2 100644 --- a/src/crypto-api/index.ts +++ b/src/crypto-api/index.ts @@ -936,8 +936,11 @@ export interface CrossSigningStatus { * Crypto callbacks provided by the application */ export interface CryptoCallbacks extends SecretStorageCallbacks { + /** @deprecated: unused with the Rust crypto stack. */ getCrossSigningKey?: (keyType: string, pubKey: string) => Promise; + /** @deprecated: unused with the Rust crypto stack. */ saveCrossSigningKeys?: (keys: Record) => void; + /** @deprecated: unused with the Rust crypto stack. */ shouldUpgradeDeviceVerifications?: (users: Record) => Promise; /** * Called by {@link CryptoApi#bootstrapSecretStorage} @@ -962,6 +965,7 @@ export interface CryptoCallbacks extends SecretStorageCallbacks { checkFunc: (key: Uint8Array) => void, ) => Promise; + /** @deprecated: unused with the Rust crypto stack. */ getBackupKey?: () => Promise; } From 0df8e81da43fc5babccbba6deaaec8c2bbdd98ad Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Fri, 8 Nov 2024 10:06:09 +0100 Subject: [PATCH 504/595] Deprecate `MatrixClient.getKeyBackupVersion` (#4505) --- src/client.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/client.ts b/src/client.ts index ec7457ed38c..6337392badf 100644 --- a/src/client.ts +++ b/src/client.ts @@ -3351,6 +3351,8 @@ export class MatrixClient extends TypedEventEmitter { let res: IKeyBackupInfo; From 98f76376838a350a6295fce350a6ca47ceb2f3b4 Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Sat, 9 Nov 2024 02:29:04 -0500 Subject: [PATCH 505/595] Send/receive error details with widgets (#4492) * Send/receive error details with widgets * Fix embedded client tests * Use all properties of error responses * Lint * Rewrite ternary expression as if statement * Put typehints on overridden functions * Lint * Update matrix-widget-api * Don't @link across packages as gendoc fails when doing so. * Add a missing docstring * Set widget response error string to correct value * Test conversion to/from widget error payloads * Test processing errors thrown by widget transport * Lint * Test processing errors from transport.sendComplete --- package.json | 2 +- spec/unit/embedded.spec.ts | 85 ++++++++++++++++++++++++++- spec/unit/http-api/errors.spec.ts | 95 ++++++++++++++++++++++++++++++- src/embedded.ts | 41 +++++++++++++ src/http-api/errors.ts | 33 +++++++++++ yarn.lock | 8 +-- 6 files changed, 255 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index 815fe8cf446..8f6fc95d8a2 100644 --- a/package.json +++ b/package.json @@ -58,7 +58,7 @@ "jwt-decode": "^4.0.0", "loglevel": "^1.7.1", "matrix-events-sdk": "0.0.1", - "matrix-widget-api": "^1.8.2", + "matrix-widget-api": "^1.10.0", "oidc-client-ts": "^3.0.1", "p-retry": "4", "sdp-transform": "^2.14.1", diff --git a/spec/unit/embedded.spec.ts b/spec/unit/embedded.spec.ts index dc9952465a6..b09d3a27097 100644 --- a/spec/unit/embedded.spec.ts +++ b/spec/unit/embedded.spec.ts @@ -30,9 +30,10 @@ import { ITurnServer, IRoomEvent, IOpenIDCredentials, + WidgetApiResponseError, } from "matrix-widget-api"; -import { createRoomWidgetClient, MsgType, UpdateDelayedEventAction } from "../../src/matrix"; +import { createRoomWidgetClient, MatrixError, MsgType, UpdateDelayedEventAction } from "../../src/matrix"; import { MatrixClient, ClientEvent, ITurnServer as IClientTurnServer } from "../../src/client"; import { SyncState } from "../../src/sync"; import { ICapabilities, RoomWidgetClient } from "../../src/embedded"; @@ -90,7 +91,11 @@ class MockWidgetApi extends EventEmitter { public getTurnServers = jest.fn(() => []); public sendContentLoaded = jest.fn(); - public transport = { reply: jest.fn() }; + public transport = { + reply: jest.fn(), + send: jest.fn(), + sendComplete: jest.fn(), + }; } declare module "../../src/types" { @@ -187,6 +192,46 @@ describe("RoomWidgetClient", () => { .map((e) => e.getEffectiveEvent()), ).toEqual([event]); }); + + it("handles widget errors with generic error data", async () => { + const error = new Error("failed to send"); + widgetApi.transport.send.mockRejectedValue(error); + + await makeClient({ sendEvent: ["org.matrix.rageshake_request"] }); + widgetApi.sendRoomEvent.mockImplementation(widgetApi.transport.send); + + await expect( + client.sendEvent("!1:example.org", "org.matrix.rageshake_request", { request_id: 123 }), + ).rejects.toThrow(error); + }); + + it("handles widget errors with Matrix API error response data", async () => { + const errorStatusCode = 400; + const errorUrl = "http://example.org"; + const errorData = { + errcode: "M_BAD_JSON", + error: "Invalid body", + }; + + const widgetError = new WidgetApiResponseError("failed to send", { + matrix_api_error: { + http_status: errorStatusCode, + http_headers: {}, + url: errorUrl, + response: errorData, + }, + }); + const matrixError = new MatrixError(errorData, errorStatusCode, errorUrl); + + widgetApi.transport.send.mockRejectedValue(widgetError); + + await makeClient({ sendEvent: ["org.matrix.rageshake_request"] }); + widgetApi.sendRoomEvent.mockImplementation(widgetApi.transport.send); + + await expect( + client.sendEvent("!1:example.org", "org.matrix.rageshake_request", { request_id: 123 }), + ).rejects.toThrow(matrixError); + }); }); describe("delayed events", () => { @@ -598,6 +643,42 @@ describe("RoomWidgetClient", () => { await makeClient({}); expect(await client.getOpenIdToken()).toStrictEqual(testOIDCToken); }); + + it("handles widget errors with generic error data", async () => { + const error = new Error("failed to get token"); + widgetApi.transport.sendComplete.mockRejectedValue(error); + + await makeClient({}); + widgetApi.requestOpenIDConnectToken.mockImplementation(widgetApi.transport.sendComplete as any); + + await expect(client.getOpenIdToken()).rejects.toThrow(error); + }); + + it("handles widget errors with Matrix API error response data", async () => { + const errorStatusCode = 400; + const errorUrl = "http://example.org"; + const errorData = { + errcode: "M_UNKNOWN", + error: "Bad request", + }; + + const widgetError = new WidgetApiResponseError("failed to get token", { + matrix_api_error: { + http_status: errorStatusCode, + http_headers: {}, + url: errorUrl, + response: errorData, + }, + }); + const matrixError = new MatrixError(errorData, errorStatusCode, errorUrl); + + widgetApi.transport.sendComplete.mockRejectedValue(widgetError); + + await makeClient({}); + widgetApi.requestOpenIDConnectToken.mockImplementation(widgetApi.transport.sendComplete as any); + + await expect(client.getOpenIdToken()).rejects.toThrow(matrixError); + }); }); it("gets TURN servers", async () => { diff --git a/spec/unit/http-api/errors.spec.ts b/spec/unit/http-api/errors.spec.ts index 6054aad4bb9..bcf3aa45547 100644 --- a/spec/unit/http-api/errors.spec.ts +++ b/spec/unit/http-api/errors.spec.ts @@ -25,8 +25,8 @@ describe("MatrixError", () => { headers = new Headers({ "Content-Type": "application/json" }); }); - function makeMatrixError(httpStatus: number, data: IErrorJson): MatrixError { - return new MatrixError(data, httpStatus, undefined, undefined, headers); + function makeMatrixError(httpStatus: number, data: IErrorJson, url?: string): MatrixError { + return new MatrixError(data, httpStatus, url, undefined, headers); } it("should accept absent retry time from rate-limit error", () => { @@ -95,4 +95,95 @@ describe("MatrixError", () => { const err = makeMatrixError(429, { errcode: "M_LIMIT_EXCEEDED" }); expect(() => err.getRetryAfterMs()).toThrow("integer value is too large"); }); + + describe("can be converted to data compatible with the widget api", () => { + it("from default values", () => { + const matrixError = new MatrixError(); + + const widgetApiErrorData = { + http_status: 400, + http_headers: {}, + url: "", + response: { + errcode: "M_UNKNOWN", + error: "Unknown message", + }, + }; + + expect(matrixError.asWidgetApiErrorData()).toEqual(widgetApiErrorData); + }); + + it("from non-default values", () => { + headers.set("Retry-After", "120"); + const statusCode = 429; + const data = { + errcode: "M_LIMIT_EXCEEDED", + error: "Request is rate-limited.", + retry_after_ms: 120000, + }; + const url = "http://example.net"; + + const matrixError = makeMatrixError(statusCode, data, url); + + const widgetApiErrorData = { + http_status: statusCode, + http_headers: { + "content-type": "application/json", + "retry-after": "120", + }, + url, + response: data, + }; + + expect(matrixError.asWidgetApiErrorData()).toEqual(widgetApiErrorData); + }); + }); + + describe("can be created from data received from the widget api", () => { + it("from minimal data", () => { + const statusCode = 400; + const data = { + errcode: "M_UNKNOWN", + error: "Something went wrong.", + }; + const url = ""; + + const widgetApiErrorData = { + http_status: statusCode, + http_headers: {}, + url, + response: data, + }; + + headers.delete("Content-Type"); + const matrixError = makeMatrixError(statusCode, data, url); + + expect(MatrixError.fromWidgetApiErrorData(widgetApiErrorData)).toEqual(matrixError); + }); + + it("from more data", () => { + const statusCode = 429; + const data = { + errcode: "M_LIMIT_EXCEEDED", + error: "Request is rate-limited.", + retry_after_ms: 120000, + }; + const url = "http://example.net"; + + const widgetApiErrorData = { + http_status: statusCode, + http_headers: { + "content-type": "application/json", + "retry-after": "120", + }, + url, + response: data, + }; + + headers.set("Retry-After", "120"); + const matrixError = makeMatrixError(statusCode, data, url); + + expect(MatrixError.fromWidgetApiErrorData(widgetApiErrorData)).toEqual(matrixError); + }); + }); }); diff --git a/src/embedded.ts b/src/embedded.ts index a2be6209cdd..be03037f974 100644 --- a/src/embedded.ts +++ b/src/embedded.ts @@ -17,12 +17,17 @@ limitations under the License. import { WidgetApi, WidgetApiToWidgetAction, + WidgetApiResponseError, MatrixCapabilities, IWidgetApiRequest, IWidgetApiAcknowledgeResponseData, ISendEventToWidgetActionRequest, ISendToDeviceToWidgetActionRequest, ISendEventFromWidgetResponseData, + IWidgetApiRequestData, + WidgetApiAction, + IWidgetApiResponse, + IWidgetApiResponseData, } from "matrix-widget-api"; import { MatrixEvent, IEvent, IContent, EventStatus } from "./models/event.ts"; @@ -45,6 +50,7 @@ import { } from "./client.ts"; import { SyncApi, SyncState } from "./sync.ts"; import { SlidingSyncSdk } from "./sliding-sync-sdk.ts"; +import { MatrixError } from "./http-api/errors.ts"; import { User } from "./models/user.ts"; import { Room } from "./models/room.ts"; import { ToDeviceBatch, ToDevicePayload } from "./models/ToDeviceMessage.ts"; @@ -147,6 +153,33 @@ export class RoomWidgetClient extends MatrixClient { ) { super(opts); + const transportSend = this.widgetApi.transport.send.bind(this.widgetApi.transport); + this.widgetApi.transport.send = async < + T extends IWidgetApiRequestData, + R extends IWidgetApiResponseData = IWidgetApiAcknowledgeResponseData, + >( + action: WidgetApiAction, + data: T, + ): Promise => { + try { + return await transportSend(action, data); + } catch (error) { + processAndThrow(error); + } + }; + + const transportSendComplete = this.widgetApi.transport.sendComplete.bind(this.widgetApi.transport); + this.widgetApi.transport.sendComplete = async ( + action: WidgetApiAction, + data: T, + ): Promise => { + try { + return await transportSendComplete(action, data); + } catch (error) { + processAndThrow(error); + } + }; + this.widgetApiReady = new Promise((resolve) => this.widgetApi.once("ready", resolve)); // Request capabilities for the functionality this client needs to support @@ -523,3 +556,11 @@ export class RoomWidgetClient extends MatrixClient { } } } + +function processAndThrow(error: unknown): never { + if (error instanceof WidgetApiResponseError && error.data.matrix_api_error) { + throw MatrixError.fromWidgetApiErrorData(error.data.matrix_api_error); + } else { + throw error; + } +} diff --git a/src/http-api/errors.ts b/src/http-api/errors.ts index f80c3fdd8b6..ab02ccfceec 100644 --- a/src/http-api/errors.ts +++ b/src/http-api/errors.ts @@ -14,6 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ +import { IMatrixApiError as IWidgetMatrixError } from "matrix-widget-api"; + import { IUsageLimit } from "../@types/partials.ts"; import { MatrixEvent } from "../models/event.ts"; @@ -131,6 +133,37 @@ export class MatrixError extends HTTPError { } return null; } + + /** + * @returns this error expressed as a JSON payload + * for use by Widget API error responses. + */ + public asWidgetApiErrorData(): IWidgetMatrixError { + const headers: Record = {}; + if (this.httpHeaders) { + for (const [name, value] of this.httpHeaders) { + headers[name] = value; + } + } + return { + http_status: this.httpStatus ?? 400, + http_headers: headers, + url: this.url ?? "", + response: { + errcode: this.errcode ?? "M_UNKNOWN", + error: this.data.error ?? "Unknown message", + ...this.data, + }, + }; + } + + /** + * @returns a new {@link MatrixError} from a JSON payload + * received from Widget API error responses. + */ + public static fromWidgetApiErrorData(data: IWidgetMatrixError): MatrixError { + return new MatrixError(data.response, data.http_status, data.url, undefined, new Headers(data.http_headers)); + } } /** diff --git a/yarn.lock b/yarn.lock index 147a753f154..e999f543286 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4940,10 +4940,10 @@ matrix-mock-request@^2.5.0: dependencies: expect "^28.1.0" -matrix-widget-api@^1.8.2: - version "1.9.0" - resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.9.0.tgz#884136b405bd3c56e4ea285095c9e01ec52b6b1f" - integrity sha512-au8mqralNDqrEvaVAkU37bXOb8I9SCe+ACdPk11QWw58FKstVq31q2wRz+qWA6J+42KJ6s1DggWbG/S3fEs3jw== +matrix-widget-api@^1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.10.0.tgz#d31ea073a5871a1fb1a511ef900b0c125a37bf55" + integrity sha512-rkAJ29briYV7TJnfBVLVSKtpeBrBju15JZFSDP6wj8YdbCu1bdmlplJayQ+vYaw1x4fzI49Q+Nz3E85s46sRDw== dependencies: "@types/events" "^3.0.0" events "^3.2.0" From 10a4fd8328bbe5380629ba90a64139ec60acf5fd Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Sun, 10 Nov 2024 21:55:42 -0500 Subject: [PATCH 506/595] MatrixRTCSession: handle rate limit errors (#4494) * MatrixRTCSession: handle rate limit errors * Lint * Handle ratelimiting for non-legacy state setting Each request must be retried, as the non-legacy flow involves a sequence of requests that must resolve in order. * Fix broken test * Check for MSC3757 instead of the unmerged MSC3779 * Move helper out of beforeEach * Test ratelimit errors --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 51 +++++++++-- src/matrixrtc/MatrixRTCSession.ts | 94 +++++++++++++------- 2 files changed, 110 insertions(+), 35 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index df998c2d1ac..96b1db9b031 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -472,14 +472,54 @@ describe("MatrixRTCSession", () => { const activeFocus = { type: "livekit", focus_selection: "oldest_membership" }; async function testJoin(useOwnedStateEvents: boolean): Promise { - const realSetTimeout = setTimeout; if (useOwnedStateEvents) { - mockRoom.getVersion = jest.fn().mockReturnValue("org.matrix.msc3779.default"); + mockRoom.getVersion = jest.fn().mockReturnValue("org.matrix.msc3757.default"); } jest.useFakeTimers(); + + // preparing the delayed disconnect should handle ratelimiting + const sendDelayedStateAttempt = new Promise((resolve) => { + const error = new MatrixError({ errcode: "M_LIMIT_EXCEEDED" }); + sendDelayedStateMock.mockImplementationOnce(() => { + resolve(); + return Promise.reject(error); + }); + }); + + // setting the membership state should handle ratelimiting (also with a retry-after value) + const sendStateEventAttempt = new Promise((resolve) => { + const error = new MatrixError( + { errcode: "M_LIMIT_EXCEEDED" }, + 429, + undefined, + undefined, + new Headers({ "Retry-After": "1" }), + ); + sendStateEventMock.mockImplementationOnce(() => { + resolve(); + return Promise.reject(error); + }); + }); + + // needed to advance the mock timers properly + const scheduledDelayDisconnection = new Promise((resolve) => { + const originalFn: () => void = (sess as any).scheduleDelayDisconnection; + (sess as any).scheduleDelayDisconnection = jest.fn(() => { + originalFn.call(sess); + resolve(); + }); + }); + sess!.joinRoomSession([activeFocusConfig], activeFocus, { useLegacyMemberEvents: false }); - await Promise.race([sentStateEvent, new Promise((resolve) => realSetTimeout(resolve, 500))]); + + await sendDelayedStateAttempt; + jest.advanceTimersByTime(5000); + + await sendStateEventAttempt.then(); // needed to resolve after resendIfRateLimited catches + jest.advanceTimersByTime(1000); + + await sentStateEvent; expect(client.sendStateEvent).toHaveBeenCalledWith( mockRoom!.roomId, EventType.GroupCallMemberPrefix, @@ -493,9 +533,10 @@ describe("MatrixRTCSession", () => { } satisfies SessionMembershipData, `${!useOwnedStateEvents ? "_" : ""}@alice:example.org_AAAAAAA`, ); - await Promise.race([sentDelayedState, new Promise((resolve) => realSetTimeout(resolve, 500))]); - expect(client._unstable_sendDelayedStateEvent).toHaveBeenCalledTimes(1); + await sentDelayedState; + // should have prepared the heartbeat to keep delaying the leave event while still connected + await scheduledDelayDisconnection; // should have tried updating the delayed leave to test that it wasn't replaced by own state expect(client._unstable_updateDelayedEvent).toHaveBeenCalledTimes(1); // should update delayed disconnect diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 52258ea53a2..a317495a95d 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -34,7 +34,7 @@ import { randomString, secureRandomBase64Url } from "../randomstring.ts"; import { EncryptionKeysEventContent } from "./types.ts"; import { decodeBase64, encodeUnpaddedBase64 } from "../base64.ts"; import { KnownMembership } from "../@types/membership.ts"; -import { MatrixError, safeGetRetryAfterMs } from "../http-api/errors.ts"; +import { HTTPError, MatrixError, safeGetRetryAfterMs } from "../http-api/errors.ts"; import { MatrixEvent } from "../models/event.ts"; import { isLivekitFocusActive } from "./LivekitFocus.ts"; import { ExperimentalGroupCallRoomMemberState } from "../webrtc/groupCall.ts"; @@ -1031,39 +1031,39 @@ export class MatrixRTCSession extends TypedEventEmitter => { try { // TODO: If delayed event times out, re-join! - const res = await this.client._unstable_sendDelayedStateEvent( - this.room.roomId, - { - delay: 8000, - }, - EventType.GroupCallMemberPrefix, - {}, // leave event - stateKey, + const res = await resendIfRateLimited(() => + this.client._unstable_sendDelayedStateEvent( + this.room.roomId, + { + delay: 8000, + }, + EventType.GroupCallMemberPrefix, + {}, // leave event + stateKey, + ), ); this.disconnectDelayId = res.delay_id; } catch (e) { - // TODO: Retry if rate-limited logger.error("Failed to prepare delayed disconnection event:", e); } }; await prepareDelayedDisconnection(); // Send join event _after_ preparing the delayed disconnection event - await this.client.sendStateEvent( - this.room.roomId, - EventType.GroupCallMemberPrefix, - newContent, - stateKey, + await resendIfRateLimited(() => + this.client.sendStateEvent(this.room.roomId, EventType.GroupCallMemberPrefix, newContent, stateKey), ); // If sending state cancels your own delayed state, prepare another delayed state // TODO: Remove this once MSC4140 is stable & doesn't cancel own delayed state if (this.disconnectDelayId !== undefined) { try { - await this.client._unstable_updateDelayedEvent( - this.disconnectDelayId, - UpdateDelayedEventAction.Restart, + const knownDisconnectDelayId = this.disconnectDelayId; + await resendIfRateLimited(() => + this.client._unstable_updateDelayedEvent( + knownDisconnectDelayId, + UpdateDelayedEventAction.Restart, + ), ); } catch (e) { - // TODO: Make embedded client include errcode, and retry only if not M_NOT_FOUND (or rate-limited) logger.warn("Failed to update delayed disconnection event, prepare it again:", e); this.disconnectDelayId = undefined; await prepareDelayedDisconnection(); @@ -1076,23 +1076,27 @@ export class MatrixRTCSession extends TypedEventEmitter + this.client._unstable_updateDelayedEvent( + knownDisconnectDelayId, + UpdateDelayedEventAction.Send, + ), ); sentDelayedDisconnect = true; } catch (e) { - // TODO: Retry if rate-limited logger.error("Failed to send our delayed disconnection event:", e); } this.disconnectDelayId = undefined; } if (!sentDelayedDisconnect) { - await this.client.sendStateEvent( - this.room.roomId, - EventType.GroupCallMemberPrefix, - {}, - this.makeMembershipStateKey(localUserId, localDeviceId), + await resendIfRateLimited(() => + this.client.sendStateEvent( + this.room.roomId, + EventType.GroupCallMemberPrefix, + {}, + this.makeMembershipStateKey(localUserId, localDeviceId), + ), ); } } @@ -1111,10 +1115,12 @@ export class MatrixRTCSession extends TypedEventEmitter => { try { - await this.client._unstable_updateDelayedEvent(this.disconnectDelayId!, UpdateDelayedEventAction.Restart); + const knownDisconnectDelayId = this.disconnectDelayId!; + await resendIfRateLimited(() => + this.client._unstable_updateDelayedEvent(knownDisconnectDelayId, UpdateDelayedEventAction.Restart), + ); this.scheduleDelayDisconnection(); } catch (e) { - // TODO: Retry if rate-limited logger.error("Failed to delay our disconnection event:", e); } }; @@ -1162,3 +1168,31 @@ export class MatrixRTCSession extends TypedEventEmitter(func: () => Promise, numRetriesAllowed: number = 1): Promise { + // eslint-disable-next-line no-constant-condition + while (true) { + try { + return await func(); + } catch (e) { + if (numRetriesAllowed > 0 && e instanceof HTTPError && e.isRateLimitError()) { + numRetriesAllowed--; + let resendDelay: number; + const defaultMs = 5000; + try { + resendDelay = e.getRetryAfterMs() ?? defaultMs; + logger.info(`Rate limited by server, retrying in ${resendDelay}ms`); + } catch (e) { + logger.warn( + `Error while retrieving a rate-limit retry delay, retrying after default delay of ${defaultMs}`, + e, + ); + resendDelay = defaultMs; + } + await sleep(resendDelay); + } else { + throw e; + } + } + } +} From 4c53836a13decb23915654c19100950e6ccd7b7e Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Mon, 11 Nov 2024 06:19:48 -0500 Subject: [PATCH 507/595] Remove redundant type arguments in function call (#4507) as the types can be deduced by the function arguments. --- src/embedded.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/embedded.ts b/src/embedded.ts index be03037f974..bc32398e3b5 100644 --- a/src/embedded.ts +++ b/src/embedded.ts @@ -162,7 +162,7 @@ export class RoomWidgetClient extends MatrixClient { data: T, ): Promise => { try { - return await transportSend(action, data); + return await transportSend(action, data); } catch (error) { processAndThrow(error); } @@ -174,7 +174,7 @@ export class RoomWidgetClient extends MatrixClient { data: T, ): Promise => { try { - return await transportSendComplete(action, data); + return await transportSendComplete(action, data); } catch (error) { processAndThrow(error); } From 5033d48013262278bd5d5867010bced9e4ee8193 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Mon, 11 Nov 2024 14:15:46 +0100 Subject: [PATCH 508/595] Fix tsdoc error in rust-crypto folder (#4504) --- src/rust-crypto/KeyClaimManager.ts | 2 +- src/rust-crypto/rust-crypto.ts | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/rust-crypto/KeyClaimManager.ts b/src/rust-crypto/KeyClaimManager.ts index 3023de8c2f8..8cc1fd4e65c 100644 --- a/src/rust-crypto/KeyClaimManager.ts +++ b/src/rust-crypto/KeyClaimManager.ts @@ -50,7 +50,7 @@ export class KeyClaimManager { * Given a list of users, attempt to ensure that we have Olm Sessions active with each of their devices * * If we don't have an active olm session, we will claim a one-time key and start one. - * + * @param logger - logger to use * @param userList - list of userIDs to claim */ public ensureSessionsForUsers(logger: LogSpan, userList: Array): Promise { diff --git a/src/rust-crypto/rust-crypto.ts b/src/rust-crypto/rust-crypto.ts index 2d65e7f5c58..c2c9b8304f0 100644 --- a/src/rust-crypto/rust-crypto.ts +++ b/src/rust-crypto/rust-crypto.ts @@ -757,7 +757,7 @@ export class RustCrypto extends TypedEventEmitter { await this.crossSigningIdentity.bootstrapCrossSigning(opts); @@ -953,7 +953,7 @@ export class RustCrypto extends TypedEventEmitter { return this.eventDecryptor.getEncryptionInfoForEvent(event); @@ -1214,7 +1214,7 @@ export class RustCrypto extends TypedEventEmitter { return await this.backupManager.isKeyBackupTrusted(info); @@ -1223,7 +1223,7 @@ export class RustCrypto extends TypedEventEmitter { return await this.backupManager.checkKeyBackupAndEnable(true); From 6855ace6422082d173438cb23368d2fabc6a1086 Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Mon, 11 Nov 2024 10:07:33 -0500 Subject: [PATCH 509/595] When state says you've left ongoing call, rejoin (#4342) * When state says you've left ongoing call, rejoin When receiving a state change that says you are no longer a member of a RTC session that you are actually still participating in, send another state event to put yourself back in the session membership. This can happen when an administrator overwrites your call membership event (which is allowed even with MSC3757's restrictions on state), or if your delayed disconnection event (via MSC4140) timed out before your client could send a heartbeat to delay it further. * Don't emit state changed on join recovery --- src/matrixrtc/MatrixRTCSession.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index a317495a95d..b8274fdbaa0 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -772,6 +772,12 @@ export class MatrixRTCSession extends TypedEventEmitter => { + // TODO: Should this await on a shared promise? if (this.updateCallMembershipRunning) { this.needCallMembershipUpdate = true; return; @@ -1030,7 +1037,6 @@ export class MatrixRTCSession extends TypedEventEmitter => { try { - // TODO: If delayed event times out, re-join! const res = await resendIfRateLimited(() => this.client._unstable_sendDelayedStateEvent( this.room.roomId, From 581b3209ab0f4cfdcc6fae1a0175b7b5868e2e45 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Mon, 11 Nov 2024 15:35:05 +0000 Subject: [PATCH 510/595] Allow configuration of MatrixRTC timers when calling joinRoomSession() (#4510) --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 30 ++++ src/matrixrtc/MatrixRTCSession.ts | 151 +++++++++++++++---- 2 files changed, 151 insertions(+), 30 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 96b1db9b031..6b45a930257 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -467,6 +467,36 @@ describe("MatrixRTCSession", () => { jest.useRealTimers(); }); + it("uses membershipExpiryTimeout from join config", async () => { + const realSetTimeout = setTimeout; + jest.useFakeTimers(); + sess!.joinRoomSession([mockFocus], mockFocus, { membershipExpiryTimeout: 60000 }); + await Promise.race([sentStateEvent, new Promise((resolve) => realSetTimeout(resolve, 500))]); + expect(client.sendStateEvent).toHaveBeenCalledWith( + mockRoom!.roomId, + EventType.GroupCallMemberPrefix, + { + memberships: [ + { + application: "m.call", + scope: "m.room", + call_id: "", + device_id: "AAAAAAA", + expires: 60000, + expires_ts: Date.now() + 60000, + foci_active: [mockFocus], + + membershipID: expect.stringMatching(".*"), + }, + ], + }, + "@alice:example.org", + ); + await Promise.race([sentDelayedState, new Promise((resolve) => realSetTimeout(resolve, 500))]); + expect(client._unstable_sendDelayedStateEvent).toHaveBeenCalledTimes(0); + jest.useRealTimers(); + }); + describe("non-legacy calls", () => { const activeFocusConfig = { type: "livekit", livekit_service_url: "https://active.url" }; const activeFocus = { type: "livekit", focus_selection: "oldest_membership" }; diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index b8274fdbaa0..5d4d90ea588 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -42,20 +42,6 @@ import { sleep } from "../utils.ts"; const logger = rootLogger.getChild("MatrixRTCSession"); -const MEMBERSHIP_EXPIRY_TIME = 60 * 60 * 1000; -const MEMBER_EVENT_CHECK_PERIOD = 2 * 60 * 1000; // How often we check to see if we need to re-send our member event -const CALL_MEMBER_EVENT_RETRY_DELAY_MIN = 3000; -const UPDATE_ENCRYPTION_KEY_THROTTLE = 3000; - -// A delay after a member leaves before we create and publish a new key, because people -// tend to leave calls at the same time -const MAKE_KEY_DELAY = 3000; -// The delay between creating and sending a new key and starting to encrypt with it. This gives others -// a chance to receive the new key to minimise the chance they don't get media they can't decrypt. -// The total time between a member leaving and the call switching to new keys is therefore -// MAKE_KEY_DELAY + SEND_KEY_DELAY -const USE_KEY_DELAY = 5000; - const getParticipantId = (userId: string, deviceId: string): string => `${userId}:${deviceId}`; const getParticipantIdFromMembership = (m: CallMembership): string => getParticipantId(m.sender!, m.deviceId); @@ -87,12 +73,15 @@ export type MatrixRTCSessionEventHandlerMap = { participantId: string, ) => void; }; + export interface JoinSessionConfig { - /** If true, generate and share a media key for this participant, + /** + * If true, generate and share a media key for this participant, * and emit MatrixRTCSessionEvent.EncryptionKeyChanged when * media keys for other participants become available. */ manageMediaKeys?: boolean; + /** Lets you configure how the events for the session are formatted. * - legacy: use one event with a membership array. * - MSC4143: use one event per membership (with only one membership per event) @@ -100,7 +89,64 @@ export interface JoinSessionConfig { * `CallMembershipDataLegacy` and `SessionMembershipData` */ useLegacyMemberEvents?: boolean; + + /** + * The timeout (in milliseconds) after we joined the call, that our membership should expire + * unless we have explicitly updated it. + */ + membershipExpiryTimeout?: number; + + /** + * The period (in milliseconds) with which we check that our membership event still exists on the + * server. If it is not found we create it again. + */ + memberEventCheckPeriod?: number; + + /** + * The minimum delay (in milliseconds) after which we will retry sending the membership event if it + * failed to send. + */ + callMemberEventRetryDelayMinimum?: number; + + /** + * The jitter (in milliseconds) which is added to callMemberEventRetryDelayMinimum before retrying + * sending the membership event. e.g. if this is set to 1000, then a random delay of between 0 and 1000 + * milliseconds will be added. + */ + callMemberEventRetryJitter?: number; + + /** + * The minimum time (in milliseconds) between each attempt to send encryption key(s). + * e.g. if this is set to 1000, then we will send at most one key event every second. + */ + updateEncryptionKeyThrottle?: number; + + /** + * The delay (in milliseconds) after a member leaves before we create and publish a new key, because people + * tend to leave calls at the same time. + */ + makeKeyDelay?: number; + + /** + * The delay (in milliseconds) between creating and sending a new key and starting to encrypt with it. This + * gives other a chance to receive the new key to minimise the chance they don't get media they can't decrypt. + * The total time between a member leaving and the call switching to new keys is therefore: + * makeKeyDelay + useKeyDelay + */ + useKeyDelay?: number; + + /** + * The timeout (in milliseconds) after which the server will consider the membership to have expired if it + * has not received a keep-alive from the client. + */ + membershipServerSideExpiryTimeout?: number; + + /** + * The period (in milliseconds) that the client will send membership keep-alives to the server. + */ + membershipKeepAlivePeriod?: number; } + /** * A MatrixRTCSession manages the membership & properties of a MatrixRTC session. * This class doesn't deal with media at all, just membership & properties of a session. @@ -109,10 +155,47 @@ export class MatrixRTCSession extends TypedEventEmitter Date.now() + this.lastEncryptionKeyUpdateRequest + this.updateEncryptionKeyThrottle > Date.now() ) { logger.info("Last encryption key event sent too recently: postponing"); if (this.keysEventUpdateTimeout === undefined) { - this.keysEventUpdateTimeout = setTimeout(this.sendEncryptionKeysEvent, UPDATE_ENCRYPTION_KEY_THROTTLE); + this.keysEventUpdateTimeout = setTimeout( + this.sendEncryptionKeysEvent, + this.updateEncryptionKeyThrottle, + ); } return; } @@ -799,7 +887,7 @@ export class MatrixRTCSession extends TypedEventEmitter => { From 35d862ebd3e198e1ac2a02a5ed268f82890c9980 Mon Sep 17 00:00:00 2001 From: Andrew Ferrazzutti Date: Mon, 11 Nov 2024 15:48:53 -0500 Subject: [PATCH 511/595] Handle M_MAX_DELAY_EXCEEDED errors (#4511) * Handle M_MAX_DELAY_EXCEEDED errors Use a lower delay time if the server rejects a delay as too long. * Add test * Lint test * Update src/matrixrtc/MatrixRTCSession.ts Co-authored-by: Robin * Test computed expiry timeout value --------- Co-authored-by: Robin --- spec/unit/matrixrtc/MatrixRTCSession.spec.ts | 22 ++++++++++++++++- src/matrixrtc/MatrixRTCSession.ts | 26 +++++++++++++++++++- 2 files changed, 46 insertions(+), 2 deletions(-) diff --git a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts index 6b45a930257..fb62a669c7b 100644 --- a/spec/unit/matrixrtc/MatrixRTCSession.spec.ts +++ b/spec/unit/matrixrtc/MatrixRTCSession.spec.ts @@ -508,6 +508,19 @@ describe("MatrixRTCSession", () => { jest.useFakeTimers(); + // preparing the delayed disconnect should handle the delay being too long + const sendDelayedStateExceedAttempt = new Promise((resolve) => { + const error = new MatrixError({ + "errcode": "M_UNKNOWN", + "org.matrix.msc4140.errcode": "M_MAX_DELAY_EXCEEDED", + "org.matrix.msc4140.max_delay": 7500, + }); + sendDelayedStateMock.mockImplementationOnce(() => { + resolve(); + return Promise.reject(error); + }); + }); + // preparing the delayed disconnect should handle ratelimiting const sendDelayedStateAttempt = new Promise((resolve) => { const error = new MatrixError({ errcode: "M_LIMIT_EXCEEDED" }); @@ -541,7 +554,14 @@ describe("MatrixRTCSession", () => { }); }); - sess!.joinRoomSession([activeFocusConfig], activeFocus, { useLegacyMemberEvents: false }); + sess!.joinRoomSession([activeFocusConfig], activeFocus, { + useLegacyMemberEvents: false, + membershipServerSideExpiryTimeout: 9000, + }); + + expect(sess).toHaveProperty("membershipServerSideExpiryTimeout", 9000); + await sendDelayedStateExceedAttempt.then(); // needed to resolve after the send attempt catches + expect(sess).toHaveProperty("membershipServerSideExpiryTimeout", 7500); await sendDelayedStateAttempt; jest.advanceTimersByTime(5000); diff --git a/src/matrixrtc/MatrixRTCSession.ts b/src/matrixrtc/MatrixRTCSession.ts index 5d4d90ea588..046591ede17 100644 --- a/src/matrixrtc/MatrixRTCSession.ts +++ b/src/matrixrtc/MatrixRTCSession.ts @@ -184,8 +184,18 @@ export class MatrixRTCSession extends TypedEventEmitter maxDelayAllowed + ) { + this.membershipServerSideExpiryTimeoutOverride = maxDelayAllowed; + return prepareDelayedDisconnection(); + } + } logger.error("Failed to prepare delayed disconnection event:", e); } }; From 00aba742e442f59cdb9e21f74c7a6647d075cc40 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 12 Nov 2024 09:08:00 +0000 Subject: [PATCH 512/595] Merge commit from fork to avoid path traversal attacks and remove the legacy allowance for fragments in MXCs Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/unit/content-repo.spec.ts | 39 ++++++++++++-------- src/content-repo.ts | 65 ++++++++++++++++++---------------- 2 files changed, 60 insertions(+), 44 deletions(-) diff --git a/spec/unit/content-repo.spec.ts b/spec/unit/content-repo.spec.ts index 23f504c1e43..8d24107fe26 100644 --- a/spec/unit/content-repo.spec.ts +++ b/spec/unit/content-repo.spec.ts @@ -63,20 +63,6 @@ describe("ContentRepo", function () { ); }); - it("should put fragments from mxc:// URIs after any query parameters", function () { - const mxcUri = "mxc://server.name/resourceid#automade"; - expect(getHttpUriForMxc(baseUrl, mxcUri, 32)).toEqual( - baseUrl + "/_matrix/media/v3/thumbnail/server.name/resourceid" + "?width=32#automade", - ); - }); - - it("should put fragments from mxc:// URIs at the end of the HTTP URI", function () { - const mxcUri = "mxc://server.name/resourceid#automade"; - expect(getHttpUriForMxc(baseUrl, mxcUri)).toEqual( - baseUrl + "/_matrix/media/v3/download/server.name/resourceid#automade", - ); - }); - it("should return an authenticated URL when requested", function () { const mxcUri = "mxc://server.name/resourceid"; expect(getHttpUriForMxc(baseUrl, mxcUri, undefined, undefined, undefined, undefined, true, true)).toEqual( @@ -98,5 +84,30 @@ describe("ContentRepo", function () { "/_matrix/client/v1/media/thumbnail/server.name/resourceid?width=64&height=64&method=scale&allow_redirect=true", ); }); + + it("should drop mxc urls with invalid server_name", () => { + const mxcUri = "mxc://server.name:test/foobar"; + expect(getHttpUriForMxc(baseUrl, mxcUri)).toEqual(""); + }); + + it("should drop mxc urls with invalid media_id", () => { + const mxcUri = "mxc://server.name/foobar:test"; + expect(getHttpUriForMxc(baseUrl, mxcUri)).toEqual(""); + }); + + it("should drop mxc urls attempting a path traversal attack", () => { + const mxcUri = "mxc://../../../../foo"; + expect(getHttpUriForMxc(baseUrl, mxcUri)).toEqual(""); + }); + + it("should drop mxc urls attempting to pass query parameters", () => { + const mxcUri = "mxc://server.name/foobar?bar=baz"; + expect(getHttpUriForMxc(baseUrl, mxcUri)).toEqual(""); + }); + + it("should drop mxc urls with too many parts", () => { + const mxcUri = "mxc://server.name/foo//bar"; + expect(getHttpUriForMxc(baseUrl, mxcUri)).toEqual(""); + }); }); }); diff --git a/src/content-repo.ts b/src/content-repo.ts index b6174b6d8d9..b0b02a05691 100644 --- a/src/content-repo.ts +++ b/src/content-repo.ts @@ -1,5 +1,5 @@ /* -Copyright 2015 - 2021 The Matrix.org Foundation C.I.C. +Copyright 2015 - 2024 The Matrix.org Foundation C.I.C. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -14,7 +14,22 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { encodeParams } from "./utils.ts"; +// Validation based on https://spec.matrix.org/v1.12/appendices/#server-name +// We do not use the validation described in https://spec.matrix.org/v1.12/client-server-api/#security-considerations-5 +// as it'd wrongly make all MXCs invalid due to not allowing `[].:` in server names. +const serverNameRegex = + /^(?:(?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})|(?:\[[\dA-Fa-f:.]{2,45}])|(?:[A-Za-z\d\-.]{1,255}))(?::\d{1,5})?$/; +function validateServerName(serverName: string): boolean { + const matches = serverNameRegex.exec(serverName); + return matches?.[0] === serverName; +} + +// Validation based on https://spec.matrix.org/v1.12/client-server-api/#security-considerations-5 +const mediaIdRegex = /^[\w-]+$/; +function validateMediaId(mediaId: string): boolean { + const matches = mediaIdRegex.exec(mediaId); + return matches?.[0] === mediaId; +} /** * Get the HTTP URL for an MXC URI. @@ -36,7 +51,7 @@ import { encodeParams } from "./utils.ts"; * for authenticated media will *not* be checked - it is the caller's responsibility * to do so before calling this function. Note also that `useAuthentication` * implies `allowRedirects`. Defaults to false (unauthenticated endpoints). - * @returns The complete URL to the content. + * @returns The complete URL to the content, may be an empty string if the provided mxc is not valid. */ export function getHttpUriForMxc( baseUrl: string, @@ -51,7 +66,7 @@ export function getHttpUriForMxc( if (typeof mxc !== "string" || !mxc) { return ""; } - if (mxc.indexOf("mxc://") !== 0) { + if (!mxc.startsWith("mxc://")) { if (allowDirectLinks) { return mxc; } else { @@ -59,6 +74,11 @@ export function getHttpUriForMxc( } } + const [serverName, mediaId, ...rest] = mxc.slice(6).split("/"); + if (rest.length > 0 || !validateServerName(serverName) || !validateMediaId(mediaId)) { + return ""; + } + if (useAuthentication) { allowRedirects = true; // per docs (MSC3916 always expects redirects) @@ -67,46 +87,31 @@ export function getHttpUriForMxc( // callers, hopefully. } - let serverAndMediaId = mxc.slice(6); // strips mxc:// let prefix: string; + const isThumbnailRequest = !!width || !!height || !!resizeMethod; + const verb = isThumbnailRequest ? "thumbnail" : "download"; if (useAuthentication) { - prefix = "/_matrix/client/v1/media/download/"; + prefix = `/_matrix/client/v1/media/${verb}`; } else { - prefix = "/_matrix/media/v3/download/"; + prefix = `/_matrix/media/v3/${verb}`; } - const params: Record = {}; + + const url = new URL(`${prefix}/${serverName}/${mediaId}`, baseUrl); if (width) { - params["width"] = Math.round(width).toString(); + url.searchParams.set("width", Math.round(width).toString()); } if (height) { - params["height"] = Math.round(height).toString(); + url.searchParams.set("height", Math.round(height).toString()); } if (resizeMethod) { - params["method"] = resizeMethod; - } - if (Object.keys(params).length > 0) { - // these are thumbnailing params so they probably want the - // thumbnailing API... - if (useAuthentication) { - prefix = "/_matrix/client/v1/media/thumbnail/"; - } else { - prefix = "/_matrix/media/v3/thumbnail/"; - } + url.searchParams.set("method", resizeMethod); } if (typeof allowRedirects === "boolean") { // We add this after, so we don't convert everything to a thumbnail request. - params["allow_redirect"] = JSON.stringify(allowRedirects); - } - - const fragmentOffset = serverAndMediaId.indexOf("#"); - let fragment = ""; - if (fragmentOffset >= 0) { - fragment = serverAndMediaId.slice(fragmentOffset); - serverAndMediaId = serverAndMediaId.slice(0, fragmentOffset); + url.searchParams.set("allow_redirect", JSON.stringify(allowRedirects)); } - const urlParams = Object.keys(params).length === 0 ? "" : "?" + encodeParams(params); - return baseUrl + prefix + serverAndMediaId + urlParams + fragment; + return url.href; } From 4d4ff4c3f2cb4d2c95d26ca17579cd28881f2966 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 12 Nov 2024 09:13:26 +0000 Subject: [PATCH 513/595] v34.11.0 --- CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cc16d3f96b4..e11ba1a5dd9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +Changes in [34.11.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.11.0) (2024-11-12) +==================================================================================================== +# Security +- Fixes for [CVE-2024-50336](https://nvd.nist.gov/vuln/detail/CVE-2024-50336) / [GHSA-xvg8-m4x3-w6xr](https://github.com/matrix-org/matrix-js-sdk/security/advisories/GHSA-xvg8-m4x3-w6xr). + Changes in [34.10.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.10.0) (2024-11-05) ==================================================================================================== ## 🦖 Deprecations From b9aacea1cb8c2dbf50fa6162db83f444a1d44dfd Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 12 Nov 2024 09:27:44 +0000 Subject: [PATCH 514/595] Fix release scripts Regressed by https://github.com/matrix-org/matrix-js-sdk/pull/4496 Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-make.yml | 4 +++- .github/workflows/release-npm.yml | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index 2900ade4231..84d3c8d1568 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -136,7 +136,9 @@ jobs: done - name: Bump package.json version - run: yarn version --no-git-tag-version --new-version "${VERSION#v}" + run: | + yarn version --no-git-tag-version --new-version "${VERSION#v}" + git add package.json - name: Add to CHANGELOG.md if: inputs.final diff --git a/.github/workflows/release-npm.yml b/.github/workflows/release-npm.yml index cc1aeb1c50b..b313e7536b8 100644 --- a/.github/workflows/release-npm.yml +++ b/.github/workflows/release-npm.yml @@ -39,6 +39,10 @@ jobs: tag: next ignore-scripts: false + - name: Check npm package was published + if: steps.npm-publish.outputs.id == '' + run: exit 1 + - name: 🎖️ Add `latest` dist-tag to final releases if: steps.npm-publish.outputs.id && !contains(steps.npm-publish.outputs.id, '-rc.') run: npm dist-tag add "$release" latest From b4c4355d1a34dd3e4b22467f556eebe368768ea5 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 12 Nov 2024 09:30:01 +0000 Subject: [PATCH 515/595] v34.11.1 --- CHANGELOG.md | 5 +++++ package.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e11ba1a5dd9..f881e384fb9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +Changes in [34.11.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.11.1) (2024-11-12) +==================================================================================================== +# Security +- Fixes for [CVE-2024-50336](https://nvd.nist.gov/vuln/detail/CVE-2024-50336) / [GHSA-xvg8-m4x3-w6xr](https://github.com/matrix-org/matrix-js-sdk/security/advisories/GHSA-xvg8-m4x3-w6xr). + Changes in [34.11.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v34.11.0) (2024-11-12) ==================================================================================================== # Security diff --git a/package.json b/package.json index a8844c4f078..5c902662c2a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.10.0", + "version": "34.11.1", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From 00d78077b0f5546691a84b72a9680d992eb63f4c Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 12 Nov 2024 11:16:03 +0000 Subject: [PATCH 516/595] Fix tests after security patches (#4513) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- spec/integ/matrix-client-syncing.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/integ/matrix-client-syncing.spec.ts b/spec/integ/matrix-client-syncing.spec.ts index 673532ddf83..1630b38ab36 100644 --- a/spec/integ/matrix-client-syncing.spec.ts +++ b/spec/integ/matrix-client-syncing.spec.ts @@ -577,7 +577,7 @@ describe("MatrixClient syncing", () => { return Promise.all([httpBackend!.flushAllExpected(), awaitSyncEvent()]).then(() => { const member = client!.getRoom(roomOne)!.getMember(userC)!; expect(member.name).toEqual("The Boss"); - expect(member.getAvatarUrl("home.server.url", 1, 1, "", false, false)).toBeTruthy(); + expect(member.getAvatarUrl("https://home.server.url", 1, 1, "", false, false)).toBeTruthy(); }); }); From 620dc2f6e2d2a40defaf063fbd5395da74ada651 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 12 Nov 2024 13:59:57 +0000 Subject: [PATCH 517/595] v34.12.0-rc.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 062df47e3f9..c940858ac8b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-js-sdk", - "version": "34.11.1", + "version": "34.12.0-rc.0", "description": "Matrix Client-Server SDK for Javascript", "engines": { "node": ">=20.0.0" From 053c5741b0e1a85106d2fcccaaadf53e391e2e1c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 12 Nov 2024 14:07:59 +0000 Subject: [PATCH 518/595] Update actions/checkout digest to 11bd719 (#4514) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/sonarcloud.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index fe148e68bc1..b5630a6283a 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -30,7 +30,7 @@ jobs: target_url: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} - name: "🧮 Checkout code" - uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 with: repository: ${{ github.event.workflow_run.head_repository.full_name }} ref: ${{ github.event.workflow_run.head_branch }} # checkout commit that triggered this workflow From fbba8a2d71011745503595074ba010a67abe037e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 12 Nov 2024 14:08:00 +0000 Subject: [PATCH 519/595] Update typedoc (#4518) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 108 +++++++++++++++++++++++++++--------------------------- 1 file changed, 54 insertions(+), 54 deletions(-) diff --git a/yarn.lock b/yarn.lock index e999f543286..19a38e50043 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1548,39 +1548,39 @@ resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g== -"@shikijs/core@1.22.0": - version "1.22.0" - resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.22.0.tgz#74e5d4485e5f7afa85109e322b42e400686f92bb" - integrity sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q== - dependencies: - "@shikijs/engine-javascript" "1.22.0" - "@shikijs/engine-oniguruma" "1.22.0" - "@shikijs/types" "1.22.0" +"@shikijs/core@1.22.2": + version "1.22.2" + resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.22.2.tgz#9c22bd4cc8a4d6c062461cfd35e1faa6c617ca25" + integrity sha512-bvIQcd8BEeR1yFvOYv6HDiyta2FFVePbzeowf5pPS1avczrPK+cjmaxxh0nx5QzbON7+Sv0sQfQVciO7bN72sg== + dependencies: + "@shikijs/engine-javascript" "1.22.2" + "@shikijs/engine-oniguruma" "1.22.2" + "@shikijs/types" "1.22.2" "@shikijs/vscode-textmate" "^9.3.0" "@types/hast" "^3.0.4" hast-util-to-html "^9.0.3" -"@shikijs/engine-javascript@1.22.0": - version "1.22.0" - resolved "https://registry.yarnpkg.com/@shikijs/engine-javascript/-/engine-javascript-1.22.0.tgz#2e5db29f0421755492f5279f8224ef7a7f907a29" - integrity sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw== +"@shikijs/engine-javascript@1.22.2": + version "1.22.2" + resolved "https://registry.yarnpkg.com/@shikijs/engine-javascript/-/engine-javascript-1.22.2.tgz#62e90dbd2ed1d78b972ad7d0a1f8ffaaf5e43279" + integrity sha512-iOvql09ql6m+3d1vtvP8fLCVCK7BQD1pJFmHIECsujB0V32BJ0Ab6hxk1ewVSMFA58FI0pR2Had9BKZdyQrxTw== dependencies: - "@shikijs/types" "1.22.0" + "@shikijs/types" "1.22.2" "@shikijs/vscode-textmate" "^9.3.0" oniguruma-to-js "0.4.3" -"@shikijs/engine-oniguruma@1.22.0": - version "1.22.0" - resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-1.22.0.tgz#74c661fac4cd1f08f2c09b5d6e2fd2a6720d0401" - integrity sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw== +"@shikijs/engine-oniguruma@1.22.2": + version "1.22.2" + resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-1.22.2.tgz#b12a44e3faf486e19fbcf8952f4b56b9b9b8d9b8" + integrity sha512-GIZPAGzQOy56mGvWMoZRPggn0dTlBf1gutV5TdceLCZlFNqWmuc7u+CzD0Gd9vQUTgLbrt0KLzz6FNprqYAxlA== dependencies: - "@shikijs/types" "1.22.0" + "@shikijs/types" "1.22.2" "@shikijs/vscode-textmate" "^9.3.0" -"@shikijs/types@1.22.0": - version "1.22.0" - resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-1.22.0.tgz#d2a572381395c9308b472c8199b8e0289753b9ad" - integrity sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww== +"@shikijs/types@1.22.2": + version "1.22.2" + resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-1.22.2.tgz#695a283f19963fe0638fc2646862ba5cfc4623a8" + integrity sha512-NCWDa6LGZqTuzjsGfXOBWfjS/fDIbDdmVDug+7ykVe1IKT4c1gakrvlfFYp5NhAXH/lyqLM8wsAPo5wNy73Feg== dependencies: "@shikijs/vscode-textmate" "^9.3.0" "@types/hast" "^3.0.4" @@ -4979,36 +4979,36 @@ merge2@^1.3.0: integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== micromark-util-character@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.1.0.tgz#31320ace16b4644316f6bf057531689c71e2aee1" - integrity sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ== + version "2.1.1" + resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.1.1.tgz#2f987831a40d4c510ac261e89852c4e9703ccda6" + integrity sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q== dependencies: micromark-util-symbol "^2.0.0" micromark-util-types "^2.0.0" micromark-util-encode@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz#0921ac7953dc3f1fd281e3d1932decfdb9382ab1" - integrity sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA== + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz#0d51d1c095551cfaac368326963cf55f15f540b8" + integrity sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw== micromark-util-sanitize-uri@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz#ec8fbf0258e9e6d8f13d9e4770f9be64342673de" - integrity sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw== + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz#ab89789b818a58752b73d6b55238621b7faa8fd7" + integrity sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ== dependencies: micromark-util-character "^2.0.0" micromark-util-encode "^2.0.0" micromark-util-symbol "^2.0.0" micromark-util-symbol@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz#12225c8f95edf8b17254e47080ce0862d5db8044" - integrity sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw== + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz#e5da494e8eb2b071a0d08fb34f6cefec6c0a19b8" + integrity sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q== micromark-util-types@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-2.0.0.tgz#63b4b7ffeb35d3ecf50d1ca20e68fc7caa36d95e" - integrity sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w== + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-2.0.1.tgz#a3edfda3022c6c6b55bfb049ef5b75d70af50709" + integrity sha512-534m2WhVTddrcKVepwmVEVnUAmtrx9bfIjNoQHRqfnvdaHQiFytEhJoTgpWJvDEXCO5gLTQh3wYC1PgOJA4NSQ== micromatch@^4.0.4, micromatch@~4.0.8: version "4.0.8" @@ -5576,9 +5576,9 @@ regenerator-transform@^0.15.2: "@babel/runtime" "^7.8.4" regex@^4.3.2: - version "4.3.3" - resolved "https://registry.yarnpkg.com/regex/-/regex-4.3.3.tgz#8cda73ccbdfa7c5691881d02f9bb142dba9daa6a" - integrity sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg== + version "4.4.0" + resolved "https://registry.yarnpkg.com/regex/-/regex-4.4.0.tgz#cb731e2819f230fad69089e1bd854fef7569e90a" + integrity sha512-uCUSuobNVeqUupowbdZub6ggI5/JZkYyJdDogddJr60L764oxC2pMZov1fQ3wM9bdyzUILDG+Sqx6NAKAz9rKQ== regexp-tree@^0.1.27: version "0.1.27" @@ -5828,14 +5828,14 @@ shebang-regex@^3.0.0: integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shiki@^1.16.2: - version "1.22.0" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.22.0.tgz#45d1dfff0e03a598af70e2ec8592f14ef07827b4" - integrity sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw== - dependencies: - "@shikijs/core" "1.22.0" - "@shikijs/engine-javascript" "1.22.0" - "@shikijs/engine-oniguruma" "1.22.0" - "@shikijs/types" "1.22.0" + version "1.22.2" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.22.2.tgz#ed109a3d0850504ad5a1edf8496470a2121c5b7b" + integrity sha512-3IZau0NdGKXhH2bBlUk4w1IHNxPh6A5B2sUpyY+8utLu2j/h1QpFkAaUA1bAMxOWWGtTWcAh531vnS4NJKS/lA== + dependencies: + "@shikijs/core" "1.22.2" + "@shikijs/engine-javascript" "1.22.2" + "@shikijs/engine-oniguruma" "1.22.2" + "@shikijs/types" "1.22.2" "@shikijs/vscode-textmate" "^9.3.0" "@types/hast" "^3.0.4" @@ -6347,9 +6347,9 @@ typedoc-plugin-coverage@^3.0.0: integrity sha512-wpywQ95tqGSD6IbYUPMXSKiwnSWboSKdx2y9X6SJQKzQvBqZoz5iiUyDJFixtW8v7+xmrqXFR/B6Wy37FNhVqA== typedoc-plugin-mdn-links@^3.0.3: - version "3.3.3" - resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.3.3.tgz#ce57f5d4f171a60544b36b6dcf803474e34aeb8c" - integrity sha512-XIYQsaTeIScwpkFZg+yXR2s0V/D5UlY11AbPjIEgZ2g8aE+IYUn4Ci4cUFRcZpWqQfjfAj2XcJG3tRejCBPisw== + version "3.3.7" + resolved "https://registry.yarnpkg.com/typedoc-plugin-mdn-links/-/typedoc-plugin-mdn-links-3.3.7.tgz#d85315e07af0df8a71d11caa1bb067cf0e282b20" + integrity sha512-iFSnYj3XPuc0wh0/VjU2M/sHtNv5pSEysUXrylHxgd5PqTAOZTUswJAcbB7shg+SfxMCqGaiyA0duNmnGs/LQg== typedoc-plugin-missing-exports@^3.0.0: version "3.0.0" @@ -6357,9 +6357,9 @@ typedoc-plugin-missing-exports@^3.0.0: integrity sha512-R7D8fYrK34mBFZSlF1EqJxfqiUSlQSmyrCiQgTQD52nNm6+kUtqwiaqaNkuJ2rA2wBgWFecUA8JzHT7x2r7ePg== typedoc@^0.26.0: - version "0.26.10" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.10.tgz#d372f171dc2c4458cbac6c473be9591042ab781d" - integrity sha512-xLmVKJ8S21t+JeuQLNueebEuTVphx6IrP06CdV7+0WVflUSW3SPmR+h1fnWVdAR/FQePEgsSWCUHXqKKjzuUAw== + version "0.26.11" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.11.tgz#124b43a5637b7f3237b8c721691b44738c5c9dc9" + integrity sha512-sFEgRRtrcDl2FxVP58Ze++ZK2UQAEvtvvH8rRlig1Ja3o7dDaMHmaBfvJmdGnNEFaLTpQsN8dpvZaTqJSu/Ugw== dependencies: lunr "^2.3.9" markdown-it "^14.1.0" From ffb777d11848c72b57c595e2092e5a1bb571e985 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 12 Nov 2024 14:08:01 +0000 Subject: [PATCH 520/595] Update typescript-eslint monorepo to v8.13.0 (#4521) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 123 +++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 90 insertions(+), 33 deletions(-) diff --git a/yarn.lock b/yarn.lock index 19a38e50043..ea693ded112 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1106,14 +1106,26 @@ esquery "^1.6.0" jsdoc-type-pratt-parser "~4.1.0" -"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": +"@eslint-community/eslint-utils@^4.2.0": version "4.4.0" resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== dependencies: eslint-visitor-keys "^3.3.0" -"@eslint-community/regexpp@^4.10.0", "@eslint-community/regexpp@^4.6.1": +"@eslint-community/eslint-utils@^4.4.0": + version "4.4.1" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz#d1145bf2c20132d6400495d6df4bf59362fd9d56" + integrity sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA== + dependencies: + eslint-visitor-keys "^3.4.3" + +"@eslint-community/regexpp@^4.10.0": + version "4.12.1" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.1.tgz#cfc6cffe39df390a3841cde2abccf92eaa7ae0e0" + integrity sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ== + +"@eslint-community/regexpp@^4.6.1": version "4.11.0" resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.11.0.tgz#b0ffd0312b4a3fd2d6f77237e7248a5ad3a680ae" integrity sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A== @@ -1851,31 +1863,39 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^8.0.0": - version "8.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.9.0.tgz#bf0b25305b0bf014b4b194a6919103d7ac2a7907" - integrity sha512-Y1n621OCy4m7/vTXNlCbMVp87zSd7NH0L9cXD8aIpOaNlzeWxIK4+Q19A68gSmTNRZn92UjocVUWDthGxtqHFg== + version "8.14.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.14.0.tgz#7dc0e419c87beadc8f554bf5a42e5009ed3748dc" + integrity sha512-tqp8H7UWFaZj0yNO6bycd5YjMwxa6wIHOLZvWPkidwbgLCsBMetQoGj7DPuAlWa2yGO3H48xmPwjhsSPPCGU5w== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "8.9.0" - "@typescript-eslint/type-utils" "8.9.0" - "@typescript-eslint/utils" "8.9.0" - "@typescript-eslint/visitor-keys" "8.9.0" + "@typescript-eslint/scope-manager" "8.14.0" + "@typescript-eslint/type-utils" "8.14.0" + "@typescript-eslint/utils" "8.14.0" + "@typescript-eslint/visitor-keys" "8.14.0" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" "@typescript-eslint/parser@^8.0.0": - version "8.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.9.0.tgz#0cecda6def8aef95d7c7098359c0fda5a362d6ad" - integrity sha512-U+BLn2rqTTHnc4FL3FJjxaXptTxmf9sNftJK62XLz4+GxG3hLHm/SUNaaXP5Y4uTiuYoL5YLy4JBCJe3+t8awQ== - dependencies: - "@typescript-eslint/scope-manager" "8.9.0" - "@typescript-eslint/types" "8.9.0" - "@typescript-eslint/typescript-estree" "8.9.0" - "@typescript-eslint/visitor-keys" "8.9.0" + version "8.14.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.14.0.tgz#0a7e9dbc11bc07716ab2d7b1226217e9f6b51fc8" + integrity sha512-2p82Yn9juUJq0XynBXtFCyrBDb6/dJombnz6vbo6mgQEtWHfvHbQuEa9kAOVIt1c9YFwi7H6WxtPj1kg+80+RA== + dependencies: + "@typescript-eslint/scope-manager" "8.14.0" + "@typescript-eslint/types" "8.14.0" + "@typescript-eslint/typescript-estree" "8.14.0" + "@typescript-eslint/visitor-keys" "8.14.0" debug "^4.3.4" +"@typescript-eslint/scope-manager@8.14.0": + version "8.14.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.14.0.tgz#01f37c147a735cd78f0ff355e033b9457da1f373" + integrity sha512-aBbBrnW9ARIDn92Zbo7rguLnqQ/pOrUguVpbUwzOhkFg2npFDwTgPGqFqE0H5feXcOoJOfX3SxlJaKEVtq54dw== + dependencies: + "@typescript-eslint/types" "8.14.0" + "@typescript-eslint/visitor-keys" "8.14.0" + "@typescript-eslint/scope-manager@8.6.0": version "8.6.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.6.0.tgz#28cc2fc26a84b75addf45091a2c6283e29e2c982" @@ -1892,16 +1912,21 @@ "@typescript-eslint/types" "8.9.0" "@typescript-eslint/visitor-keys" "8.9.0" -"@typescript-eslint/type-utils@8.9.0": - version "8.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.9.0.tgz#aa86da3e4555fe7c8b42ab75e13561c4b5a8dfeb" - integrity sha512-JD+/pCqlKqAk5961vxCluK+clkppHY07IbV3vett97KOV+8C6l+CPEPwpUuiMwgbOz/qrN3Ke4zzjqbT+ls+1Q== +"@typescript-eslint/type-utils@8.14.0": + version "8.14.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.14.0.tgz#455c6af30c336b24a1af28bc4f81b8dd5d74d94d" + integrity sha512-Xcz9qOtZuGusVOH5Uk07NGs39wrKkf3AxlkK79RBK6aJC1l03CobXjJbwBPSidetAOV+5rEVuiT1VSBUOAsanQ== dependencies: - "@typescript-eslint/typescript-estree" "8.9.0" - "@typescript-eslint/utils" "8.9.0" + "@typescript-eslint/typescript-estree" "8.14.0" + "@typescript-eslint/utils" "8.14.0" debug "^4.3.4" ts-api-utils "^1.3.0" +"@typescript-eslint/types@8.14.0": + version "8.14.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.14.0.tgz#0d33d8d0b08479c424e7d654855fddf2c71e4021" + integrity sha512-yjeB9fnO/opvLJFAsPNYlKPnEM8+z4og09Pk504dkqonT02AyL5Z9SSqlE0XqezS93v6CXn49VHvB2G7XSsl0g== + "@typescript-eslint/types@8.6.0": version "8.6.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.6.0.tgz#cdc3a16f83f2f0663d6723e9fd032331cdd9f51c" @@ -1912,6 +1937,20 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.9.0.tgz#b733af07fb340b32e962c6c63b1062aec2dc0fe6" integrity sha512-SjgkvdYyt1FAPhU9c6FiYCXrldwYYlIQLkuc+LfAhCna6ggp96ACncdtlbn8FmnG72tUkXclrDExOpEYf1nfJQ== +"@typescript-eslint/typescript-estree@8.14.0": + version "8.14.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.14.0.tgz#a7a3a5a53a6c09313e12fb4531d4ff582ee3c312" + integrity sha512-OPXPLYKGZi9XS/49rdaCbR5j/S14HazviBlUQFvSKz3npr3NikF+mrgK7CFVur6XEt95DZp/cmke9d5i3vtVnQ== + dependencies: + "@typescript-eslint/types" "8.14.0" + "@typescript-eslint/visitor-keys" "8.14.0" + debug "^4.3.4" + fast-glob "^3.3.2" + is-glob "^4.0.3" + minimatch "^9.0.4" + semver "^7.6.0" + ts-api-utils "^1.3.0" + "@typescript-eslint/typescript-estree@8.6.0": version "8.6.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.6.0.tgz#f945506de42871f04868371cb5bf21e8f7266e01" @@ -1940,15 +1979,15 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@8.9.0", "@typescript-eslint/utils@^8.8.0": - version "8.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.9.0.tgz#748bbe3ea5bee526d9786d9405cf1b0df081c299" - integrity sha512-PKgMmaSo/Yg/F7kIZvrgrWa1+Vwn036CdNUvYFEkYbPwOH4i8xvkaRlu148W3vtheWK9ckKRIz7PBP5oUlkrvQ== +"@typescript-eslint/utils@8.14.0": + version "8.14.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.14.0.tgz#ac2506875e03aba24e602364e43b2dfa45529dbd" + integrity sha512-OGqj6uB8THhrHj0Fk27DcHPojW7zKwKkPmHXHvQ58pLYp4hy8CSUdTKykKeh+5vFqTTVmjz0zCOOPKRovdsgHA== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "8.9.0" - "@typescript-eslint/types" "8.9.0" - "@typescript-eslint/typescript-estree" "8.9.0" + "@typescript-eslint/scope-manager" "8.14.0" + "@typescript-eslint/types" "8.14.0" + "@typescript-eslint/typescript-estree" "8.14.0" "@typescript-eslint/utils@^6.0.0 || ^7.0.0 || ^8.0.0": version "8.6.0" @@ -1960,6 +1999,24 @@ "@typescript-eslint/types" "8.6.0" "@typescript-eslint/typescript-estree" "8.6.0" +"@typescript-eslint/utils@^8.8.0": + version "8.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.9.0.tgz#748bbe3ea5bee526d9786d9405cf1b0df081c299" + integrity sha512-PKgMmaSo/Yg/F7kIZvrgrWa1+Vwn036CdNUvYFEkYbPwOH4i8xvkaRlu148W3vtheWK9ckKRIz7PBP5oUlkrvQ== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + "@typescript-eslint/scope-manager" "8.9.0" + "@typescript-eslint/types" "8.9.0" + "@typescript-eslint/typescript-estree" "8.9.0" + +"@typescript-eslint/visitor-keys@8.14.0": + version "8.14.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.14.0.tgz#2418d5a54669af9658986ade4e6cfb7767d815ad" + integrity sha512-vG0XZo8AdTH9OE6VFRwAZldNc7qtJ/6NLGWak+BtENuEUXGZgFpihILPiBvKXvJ2nFu27XNGC6rKiwuaoMbYzQ== + dependencies: + "@typescript-eslint/types" "8.14.0" + eslint-visitor-keys "^3.4.3" + "@typescript-eslint/visitor-keys@8.6.0": version "8.6.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.6.0.tgz#5432af4a1753f376f35ab5b891fc9db237aaf76f" @@ -6222,9 +6279,9 @@ trim-lines@^3.0.0: integrity sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg== ts-api-utils@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1" - integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ== + version "1.4.0" + resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.4.0.tgz#709c6f2076e511a81557f3d07a0cbd566ae8195c" + integrity sha512-032cPxaEKwM+GT3vA5JXNzIaizx388rhsSW79vGRNGXfRRAdEAn2mvk36PvK5HnOchyWZ7afLEXqYCvPCrzuzQ== ts-node@^10.9.2: version "10.9.2" From 795497fafa2666cb8b1174986a7844ed392110a8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 12 Nov 2024 14:10:01 +0000 Subject: [PATCH 521/595] Update crazy-max/ghaction-import-gpg digest to cb9bde2 (#4515) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/release-make.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-make.yml b/.github/workflows/release-make.yml index 84d3c8d1568..79bd1a9b5af 100644 --- a/.github/workflows/release-make.yml +++ b/.github/workflows/release-make.yml @@ -47,7 +47,7 @@ jobs: - name: Load GPG key id: gpg if: inputs.gpg-fingerprint - uses: crazy-max/ghaction-import-gpg@01dd5d3ca463c7f10f7f4f7b4f177225ac661ee4 # v6 + uses: crazy-max/ghaction-import-gpg@cb9bde2e2525e640591a934b1fd28eef1dcaf5e5 # v6 with: gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} passphrase: ${{ secrets.GPG_PASSPHRASE }} From 906390f0bfbb6455778f7012b35648fbc1a63a49 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 12 Nov 2024 14:10:31 +0000 Subject: [PATCH 522/595] Update shogo82148/actions-upload-release-asset digest to 8482bd7 (#4516) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/actions/sign-release-tarball/action.yml | 2 +- .github/actions/upload-release-assets/action.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/sign-release-tarball/action.yml b/.github/actions/sign-release-tarball/action.yml index e9c43c8fcf3..c081c80a0e2 100644 --- a/.github/actions/sign-release-tarball/action.yml +++ b/.github/actions/sign-release-tarball/action.yml @@ -22,7 +22,7 @@ runs: - name: Upload tarball signature if: ${{ inputs.upload-url }} - uses: shogo82148/actions-upload-release-asset@aac270e08f6b4547ada0b3800f88e1eb3ce9d400 # v1 + uses: shogo82148/actions-upload-release-asset@8482bd769644976d847e96fb4b9354228885e7b4 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ env.VERSION }}.tar.gz.asc diff --git a/.github/actions/upload-release-assets/action.yml b/.github/actions/upload-release-assets/action.yml index 056843ac29d..4371ed41b7c 100644 --- a/.github/actions/upload-release-assets/action.yml +++ b/.github/actions/upload-release-assets/action.yml @@ -29,13 +29,13 @@ runs: - name: Upload asset signatures if: inputs.gpg-fingerprint - uses: shogo82148/actions-upload-release-asset@aac270e08f6b4547ada0b3800f88e1eb3ce9d400 # v1 + uses: shogo82148/actions-upload-release-asset@8482bd769644976d847e96fb4b9354228885e7b4 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ inputs.asset-path }}.asc - name: Upload assets - uses: shogo82148/actions-upload-release-asset@aac270e08f6b4547ada0b3800f88e1eb3ce9d400 # v1 + uses: shogo82148/actions-upload-release-asset@8482bd769644976d847e96fb4b9354228885e7b4 # v1 with: upload_url: ${{ inputs.upload-url }} asset_path: ${{ inputs.asset-path }} From ac6cad285286b03404d2c7bfc11b41c798d08fe9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 12 Nov 2024 14:29:01 +0000 Subject: [PATCH 523/595] Update babel monorepo (#4517) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 1284 +++++++++++++++++++++++++++-------------------------- 1 file changed, 651 insertions(+), 633 deletions(-) diff --git a/yarn.lock b/yarn.lock index ea693ded112..ed5ac84227d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -23,9 +23,9 @@ "@jridgewell/trace-mapping" "^0.3.24" "@babel/cli@^7.12.10": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.25.7.tgz#f76693c7cfb93c99844d3ed87ed4f291383ef1bf" - integrity sha512-vQw4QjrqjLSuL0Tt3gfVXbxEHOfsCcHN8tKyTclpSMYLq3Bp0BTzWYZfMKBs3PQ+to8q3BnumBIAsMdOqDJ6nw== + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.25.9.tgz#51036166fd0e9cfb26eee1b9ddc264a0d6d5f843" + integrity sha512-I+02IfrTiSanpxJBlZQYb18qCxB6c2Ih371cVpfgIrPQrjAYkf45XxomTJOG8JBWX5GY35/+TmhCMdJ4ZPkL8Q== dependencies: "@jridgewell/trace-mapping" "^0.3.25" commander "^6.2.0" @@ -46,34 +46,35 @@ "@babel/highlight" "^7.24.7" picocolors "^1.0.0" -"@babel/code-frame@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.25.7.tgz#438f2c524071531d643c6f0188e1e28f130cebc7" - integrity sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g== +"@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85" + integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ== dependencies: - "@babel/highlight" "^7.25.7" + "@babel/helper-validator-identifier" "^7.25.9" + js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.7", "@babel/compat-data@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.8.tgz#0376e83df5ab0eb0da18885c0140041f0747a402" - integrity sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA== +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.9", "@babel/compat-data@^7.26.0": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.26.2.tgz#278b6b13664557de95b8f35b90d96785850bb56e" + integrity sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg== "@babel/core@^7.0.0", "@babel/core@^7.11.6", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.23.9": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.8.tgz#a57137d2a51bbcffcfaeba43cb4dd33ae3e0e1c6" - integrity sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg== + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.26.0.tgz#d78b6023cc8f3114ccf049eb219613f74a747b40" + integrity sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.25.7" - "@babel/generator" "^7.25.7" - "@babel/helper-compilation-targets" "^7.25.7" - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helpers" "^7.25.7" - "@babel/parser" "^7.25.8" - "@babel/template" "^7.25.7" - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.8" + "@babel/code-frame" "^7.26.0" + "@babel/generator" "^7.26.0" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-module-transforms" "^7.26.0" + "@babel/helpers" "^7.26.0" + "@babel/parser" "^7.26.0" + "@babel/template" "^7.25.9" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.26.0" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -81,27 +82,28 @@ semver "^6.3.1" "@babel/eslint-parser@^7.12.10": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.25.8.tgz#0119dec46be547d7a339978dedb9d29e517c2443" - integrity sha512-Po3VLMN7fJtv0nsOjBDSbO1J71UhzShE9MuOSkWEV9IZQXzhZklYtzKZ8ZD/Ij3a0JBv1AG3Ny2L3jvAHQVOGg== + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.25.9.tgz#603c68a63078796527bc9d0833f5e52dd5f9224c" + integrity sha512-5UXfgpK0j0Xr/xIdgdLEhOFxaDZ0bRPWJJchRpqOSur/3rZoPbqqki5mm0p4NE2cs28krBEiSM2MB7//afRSQQ== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" semver "^6.3.1" "@babel/eslint-plugin@^7.12.10": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.25.7.tgz#0ccb07e9a71bfb0fc345100a929f9028d4660627" - integrity sha512-cwa16ALyUdac3n3VC3R+isKENyjLsJmFY6+cX0wuLsKlwB50Jv/xwqyH9tV8EEH0IUCAL5Y0Y1gP0HuCEDDDeQ== + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.25.9.tgz#a5b6cc46085e0a7d45c5dae36055ce30c5125dab" + integrity sha512-MWg1lz+JiP9l1fXkE0qCUVo+1XwgNRPs6GTc88hmw6qN3AdgmfTSkyHt0e1xOTsKdXW5xlh2Lsk3wrFZbW5rzQ== dependencies: eslint-rule-composer "^0.3.0" -"@babel/generator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.7.tgz#de86acbeb975a3e11ee92dd52223e6b03b479c56" - integrity sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA== +"@babel/generator@^7.25.9", "@babel/generator@^7.26.0": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.26.2.tgz#87b75813bec87916210e5e01939a4c823d6bb74f" + integrity sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw== dependencies: - "@babel/types" "^7.25.7" + "@babel/parser" "^7.26.2" + "@babel/types" "^7.26.0" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" jsesc "^3.0.2" @@ -116,58 +118,58 @@ "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" -"@babel/helper-annotate-as-pure@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.7.tgz#63f02dbfa1f7cb75a9bdb832f300582f30bb8972" - integrity sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA== +"@babel/helper-annotate-as-pure@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz#d8eac4d2dc0d7b6e11fa6e535332e0d3184f06b4" + integrity sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g== dependencies: - "@babel/types" "^7.25.7" + "@babel/types" "^7.25.9" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.7.tgz#d721650c1f595371e0a23ee816f1c3c488c0d622" - integrity sha512-12xfNeKNH7jubQNm7PAkzlLwEmCs1tfuX3UjIw6vP6QXi+leKh6+LyC/+Ed4EIQermwd58wsyh070yjDHFlNGg== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.9.tgz#f41752fe772a578e67286e6779a68a5a92de1ee9" + integrity sha512-C47lC7LIDCnz0h4vai/tpNOI95tCd5ZT3iBt/DBH5lXKHZsyNQv18yf1wIIg2ntiQNgmAvA+DgZ82iW8Qdym8g== dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" -"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz#11260ac3322dda0ef53edfae6e97b961449f5fa4" - integrity sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A== +"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz#55af025ce365be3cdc0c1c1e56c6af617ce88875" + integrity sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ== dependencies: - "@babel/compat-data" "^7.25.7" - "@babel/helper-validator-option" "^7.25.7" + "@babel/compat-data" "^7.25.9" + "@babel/helper-validator-option" "^7.25.9" browserslist "^4.24.0" lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.7.tgz#5d65074c76cae75607421c00d6bd517fe1892d6b" - integrity sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-member-expression-to-functions" "^7.25.7" - "@babel/helper-optimise-call-expression" "^7.25.7" - "@babel/helper-replace-supers" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" - "@babel/traverse" "^7.25.7" +"@babel/helper-create-class-features-plugin@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz#7644147706bb90ff613297d49ed5266bde729f83" + integrity sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-member-expression-to-functions" "^7.25.9" + "@babel/helper-optimise-call-expression" "^7.25.9" + "@babel/helper-replace-supers" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/traverse" "^7.25.9" semver "^6.3.1" -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.7.tgz#dcb464f0e2cdfe0c25cc2a0a59c37ab940ce894e" - integrity sha512-byHhumTj/X47wJ6C6eLpK7wW/WBEcnUeb7D0FNc/jFQnQVw7DOso3Zz5u9x/zLrFVkHa89ZGDbkAa1D54NdrCQ== +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.9.tgz#3e8999db94728ad2b2458d7a470e7770b7764e26" + integrity sha512-ORPNZ3h6ZRkOyAa/SaHU+XsLZr0UQzRwuDQ0cczIA17nAzZ+85G5cVkOJIj7QavLZGSe8QXUmNFxSZzjcZF9bw== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" + "@babel/helper-annotate-as-pure" "^7.25.9" regexpu-core "^6.1.1" semver "^6.3.1" -"@babel/helper-define-polyfill-provider@^0.6.2": - version "0.6.2" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz#18594f789c3594acb24cfdb4a7f7b7d2e8bd912d" - integrity sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ== +"@babel/helper-define-polyfill-provider@^0.6.2", "@babel/helper-define-polyfill-provider@^0.6.3": + version "0.6.3" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.3.tgz#f4f2792fae2ef382074bc2d713522cf24e6ddb21" + integrity sha512-HK7Bi+Hj6H+VTHA3ZvBis7V/6hu9QuTrnMXNybfUf2iiuU/N97I8VjB+KbhFF8Rld/Lx5MzoCwPCpPjfK+n8Cg== dependencies: "@babel/helper-compilation-targets" "^7.22.6" "@babel/helper-plugin-utils" "^7.22.5" @@ -175,119 +177,128 @@ lodash.debounce "^4.0.8" resolve "^1.14.2" -"@babel/helper-member-expression-to-functions@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.7.tgz#541a33b071f0355a63a0fa4bdf9ac360116b8574" - integrity sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA== +"@babel/helper-member-expression-to-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz#9dfffe46f727005a5ea29051ac835fb735e4c1a3" + integrity sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ== dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" -"@babel/helper-module-imports@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz#dba00d9523539152906ba49263e36d7261040472" - integrity sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw== +"@babel/helper-module-imports@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz#e7f8d20602ebdbf9ebbea0a0751fb0f2a4141715" + integrity sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw== dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" -"@babel/helper-module-transforms@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz#2ac9372c5e001b19bc62f1fe7d96a18cb0901d1a" - integrity sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ== +"@babel/helper-module-transforms@^7.25.9", "@babel/helper-module-transforms@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz#8ce54ec9d592695e58d84cd884b7b5c6a2fdeeae" + integrity sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw== dependencies: - "@babel/helper-module-imports" "^7.25.7" - "@babel/helper-simple-access" "^7.25.7" - "@babel/helper-validator-identifier" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-module-imports" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/helper-optimise-call-expression@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.7.tgz#1de1b99688e987af723eed44fa7fc0ee7b97d77a" - integrity sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng== +"@babel/helper-optimise-call-expression@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz#3324ae50bae7e2ab3c33f60c9a877b6a0146b54e" + integrity sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ== dependencies: - "@babel/types" "^7.25.7" + "@babel/types" "^7.25.9" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz#8ec5b21812d992e1ef88a9b068260537b6f0e36c" - integrity sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz#9cbdd63a9443a2c92a725cca7ebca12cc8dd9f46" + integrity sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw== "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.8.0": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz#94ee67e8ec0e5d44ea7baeb51e571bd26af07878" integrity sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg== -"@babel/helper-remap-async-to-generator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.7.tgz#9efdc39df5f489bcd15533c912b6c723a0a65021" - integrity sha512-kRGE89hLnPfcz6fTrlNU+uhgcwv0mBE4Gv3P9Ke9kLVJYpi4AMVVEElXvB5CabrPZW4nCM8P8UyyjrzCM0O2sw== +"@babel/helper-remap-async-to-generator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.9.tgz#e53956ab3d5b9fb88be04b3e2f31b523afd34b92" + integrity sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-wrap-function" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-wrap-function" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/helper-replace-supers@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.7.tgz#38cfda3b6e990879c71d08d0fef9236b62bd75f5" - integrity sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw== +"@babel/helper-replace-supers@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz#ba447224798c3da3f8713fc272b145e33da6a5c5" + integrity sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ== dependencies: - "@babel/helper-member-expression-to-functions" "^7.25.7" - "@babel/helper-optimise-call-expression" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-member-expression-to-functions" "^7.25.9" + "@babel/helper-optimise-call-expression" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/helper-simple-access@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz#5eb9f6a60c5d6b2e0f76057004f8dacbddfae1c0" - integrity sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ== +"@babel/helper-simple-access@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.25.9.tgz#6d51783299884a2c74618d6ef0f86820ec2e7739" + integrity sha512-c6WHXuiaRsJTyHYLJV75t9IqsmTbItYfdj99PnzYGQZkYKvan5/2jKJ7gu31J3/BJ/A18grImSPModuyG/Eo0Q== dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" -"@babel/helper-skip-transparent-expression-wrappers@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.7.tgz#382831c91038b1a6d32643f5f49505b8442cb87c" - integrity sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA== +"@babel/helper-skip-transparent-expression-wrappers@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz#0b2e1b62d560d6b1954893fd2b705dc17c91f0c9" + integrity sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA== dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" "@babel/helper-string-parser@^7.24.7": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ== -"@babel/helper-string-parser@^7.24.8", "@babel/helper-string-parser@^7.25.7": +"@babel/helper-string-parser@^7.24.8": version "7.25.7" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz#d50e8d37b1176207b4fe9acedec386c565a44a54" integrity sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g== -"@babel/helper-validator-identifier@^7.24.7", "@babel/helper-validator-identifier@^7.25.7": +"@babel/helper-string-parser@^7.25.7", "@babel/helper-string-parser@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz#1aabb72ee72ed35789b4bbcad3ca2862ce614e8c" + integrity sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA== + +"@babel/helper-validator-identifier@^7.24.7": version "7.25.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz#77b7f60c40b15c97df735b38a66ba1d7c3e93da5" integrity sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg== -"@babel/helper-validator-option@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz#97d1d684448228b30b506d90cace495d6f492729" - integrity sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ== +"@babel/helper-validator-identifier@^7.25.7", "@babel/helper-validator-identifier@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7" + integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ== -"@babel/helper-wrap-function@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.7.tgz#9f6021dd1c4fdf4ad515c809967fc4bac9a70fe7" - integrity sha512-MA0roW3JF2bD1ptAaJnvcabsVlNQShUaThyJbCDD4bCp8NEgiFvpoqRI2YS22hHlc2thjO/fTg2ShLMC3jygAg== +"@babel/helper-validator-option@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz#86e45bd8a49ab7e03f276577f96179653d41da72" + integrity sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw== + +"@babel/helper-wrap-function@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.9.tgz#d99dfd595312e6c894bd7d237470025c85eea9d0" + integrity sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g== dependencies: - "@babel/template" "^7.25.7" - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/template" "^7.25.9" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" -"@babel/helpers@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.7.tgz#091b52cb697a171fe0136ab62e54e407211f09c2" - integrity sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA== +"@babel/helpers@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.26.0.tgz#30e621f1eba5aa45fe6f4868d2e9154d884119a4" + integrity sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw== dependencies: - "@babel/template" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/template" "^7.25.9" + "@babel/types" "^7.26.0" "@babel/highlight@^7.24.7": version "7.24.7" @@ -299,16 +310,6 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/highlight@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.25.7.tgz#20383b5f442aa606e7b5e3043b0b1aafe9f37de5" - integrity sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw== - dependencies: - "@babel/helper-validator-identifier" "^7.25.7" - chalk "^2.4.2" - js-tokens "^4.0.0" - picocolors "^1.0.0" - "@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" @@ -321,51 +322,51 @@ dependencies: "@babel/types" "^7.25.2" -"@babel/parser@^7.25.7", "@babel/parser@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.8.tgz#f6aaf38e80c36129460c1657c0762db584c9d5e2" - integrity sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ== +"@babel/parser@^7.25.9", "@babel/parser@^7.26.0", "@babel/parser@^7.26.2": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.2.tgz#fd7b6f487cfea09889557ef5d4eeb9ff9a5abd11" + integrity sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ== dependencies: - "@babel/types" "^7.25.8" + "@babel/types" "^7.26.0" -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.7.tgz#93969ac50ef4d68b2504b01b758af714e4cbdd64" - integrity sha512-UV9Lg53zyebzD1DwQoT9mzkEKa922LNUp5YkTJ6Uta0RbyXaQNUgcvSt7qIu1PpPzVb6rd10OVNTzkyBGeVmxQ== +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.9.tgz#cc2e53ebf0a0340777fff5ed521943e253b4d8fe" + integrity sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.7.tgz#a338d611adb9dcd599b8b1efa200c88ebeffe046" - integrity sha512-GDDWeVLNxRIkQTnJn2pDOM1pkCgYdSqPeT1a9vh9yIqu2uzzgw1zcqEb+IJOhy+dTBMlNdThrDIksr2o09qrrQ== +"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.9.tgz#af9e4fb63ccb8abcb92375b2fcfe36b60c774d30" + integrity sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.7.tgz#c5f755e911dfac7ef6957300c0f9c4a8c18c06f4" - integrity sha512-wxyWg2RYaSUYgmd9MR0FyRGyeOMQE/Uzr1wzd/g5cf5bwi9A4v6HFdDm7y1MgDtod/fLOSTZY6jDgV0xU9d5bA== +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.9.tgz#e8dc26fcd616e6c5bf2bd0d5a2c151d4f92a9137" + integrity sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.7.tgz#3b7ea04492ded990978b6deaa1dfca120ad4455a" - integrity sha512-Xwg6tZpLxc4iQjorYsyGMyfJE7nP5MV8t/Ka58BgiA7Jw0fRqQNcANlLfdJ/yvBt9z9LD2We+BEkT7vLqZRWng== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.9.tgz#807a667f9158acac6f6164b4beb85ad9ebc9e1d1" + integrity sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" - "@babel/plugin-transform-optional-chaining" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/plugin-transform-optional-chaining" "^7.25.9" -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.7.tgz#9622b1d597a703aa3a921e6f58c9c2d9a028d2c5" - integrity sha512-UVATLMidXrnH+GMUIuxq55nejlj02HP7F5ETyBONzP6G87fPBogG4CH6kxrSrdIuAjdwNO9VzyaYsrZPscWUrw== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.9.tgz#de7093f1e7deaf68eadd7cc6b07f2ab82543269e" + integrity sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/traverse" "^7.25.9" "@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": version "7.21.0-placeholder-for-preset-env.2" @@ -400,19 +401,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-import-assertions@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.25.7.tgz#8ce248f9f4ed4b7ed4cb2e0eb4ed9efd9f52921f" - integrity sha512-ZvZQRmME0zfJnDQnVBKYzHxXT7lYBB3Revz1GuS7oLXWMgqUPX4G+DDbT30ICClht9WKV34QVrZhSw6WdklwZQ== +"@babel/plugin-syntax-import-assertions@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.26.0.tgz#620412405058efa56e4a564903b79355020f445f" + integrity sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-syntax-import-attributes@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.7.tgz#d78dd0499d30df19a598e63ab895e21b909bc43f" - integrity sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw== +"@babel/plugin-syntax-import-attributes@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz#3b1412847699eea739b4f2602c74ce36f6b0b0f7" + integrity sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" @@ -428,12 +429,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.7.tgz#5352d398d11ea5e7ef330c854dea1dae0bf18165" - integrity sha512-ruZOnKO+ajVL/MVx+PwNBPOkrnXTXoWMtte1MBpegfCArhqOe3Bj52avVj1huLLxNKYKXYaSxZ2F+woK1ekXfw== +"@babel/plugin-syntax-jsx@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz#a34313a178ea56f1951599b929c1ceacee719290" + integrity sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-syntax-jsx@^7.7.2": version "7.24.7" @@ -491,12 +492,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.7.tgz#bfc05b0cc31ebd8af09964650cee723bb228108b" - integrity sha512-rR+5FDjpCHqqZN2bzZm18bVYGaejGq5ZkpVCJLXor/+zlSrSoc4KWcHI0URVWjl/68Dyr1uwZUz/1njycEAv9g== +"@babel/plugin-syntax-typescript@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz#67dda2b74da43727cf21d46cf9afef23f4365399" + integrity sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-syntax-typescript@^7.7.2": version "7.24.7" @@ -513,477 +514,486 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-arrow-functions@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.7.tgz#1b9ed22e6890a0e9ff470371c73b8c749bcec386" - integrity sha512-EJN2mKxDwfOUCPxMO6MUI58RN3ganiRAG/MS/S3HfB6QFNjroAMelQo/gybyYq97WerCBAZoyrAoW8Tzdq2jWg== +"@babel/plugin-transform-arrow-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.9.tgz#7821d4410bee5daaadbb4cdd9a6649704e176845" + integrity sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-async-generator-functions@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.8.tgz#3331de02f52cc1f2c75b396bec52188c85b0b1ec" - integrity sha512-9ypqkozyzpG+HxlH4o4gdctalFGIjjdufzo7I2XPda0iBnZ6a+FO0rIEQcdSPXp02CkvGsII1exJhmROPQd5oA== +"@babel/plugin-transform-async-generator-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.9.tgz#1b18530b077d18a407c494eb3d1d72da505283a2" + integrity sha512-RXV6QAzTBbhDMO9fWwOmwwTuYaiPbggWQ9INdZqAYeSHyG7FzQ+nOZaUUjNwKv9pV3aE4WFqFm1Hnbci5tBCAw== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-remap-async-to-generator" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-remap-async-to-generator" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-transform-async-to-generator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.7.tgz#a44c7323f8d4285a6c568dd43c5c361d6367ec52" - integrity sha512-ZUCjAavsh5CESCmi/xCpX1qcCaAglzs/7tmuvoFnJgA1dM7gQplsguljoTg+Ru8WENpX89cQyAtWoaE0I3X3Pg== +"@babel/plugin-transform-async-to-generator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.9.tgz#c80008dacae51482793e5a9c08b39a5be7e12d71" + integrity sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ== dependencies: - "@babel/helper-module-imports" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-remap-async-to-generator" "^7.25.7" + "@babel/helper-module-imports" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-remap-async-to-generator" "^7.25.9" -"@babel/plugin-transform-block-scoped-functions@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.7.tgz#e0b8843d5571719a2f1bf7e284117a3379fcc17c" - integrity sha512-xHttvIM9fvqW+0a3tZlYcZYSBpSWzGBFIt/sYG3tcdSzBB8ZeVgz2gBP7Df+sM0N1850jrviYSSeUuc+135dmQ== +"@babel/plugin-transform-block-scoped-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.9.tgz#5700691dbd7abb93de300ca7be94203764fce458" + integrity sha512-toHc9fzab0ZfenFpsyYinOX0J/5dgJVA2fm64xPewu7CoYHWEivIWKxkK2rMi4r3yQqLnVmheMXRdG+k239CgA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-block-scoping@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.7.tgz#6dab95e98adf780ceef1b1c3ab0e55cd20dd410a" - integrity sha512-ZEPJSkVZaeTFG/m2PARwLZQ+OG0vFIhPlKHK/JdIMy8DbRJ/htz6LRrTFtdzxi9EHmcwbNPAKDnadpNSIW+Aow== +"@babel/plugin-transform-block-scoping@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.9.tgz#c33665e46b06759c93687ca0f84395b80c0473a1" + integrity sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-class-properties@^7.12.1", "@babel/plugin-transform-class-properties@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.7.tgz#a389cfca7a10ac80e3ff4c75fca08bd097ad1523" - integrity sha512-mhyfEW4gufjIqYFo9krXHJ3ElbFLIze5IDp+wQTxoPd+mwFb1NxatNAwmv8Q8Iuxv7Zc+q8EkiMQwc9IhyGf4g== +"@babel/plugin-transform-class-properties@^7.12.1", "@babel/plugin-transform-class-properties@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.9.tgz#a8ce84fedb9ad512549984101fa84080a9f5f51f" + integrity sha512-bbMAII8GRSkcd0h0b4X+36GksxuheLFjP65ul9w6C3KgAamI3JqErNgSrosX6ZPj+Mpim5VvEbawXxJCyEUV3Q== dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-class-static-block@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.25.8.tgz#a8af22028920fe404668031eceb4c3aadccb5262" - integrity sha512-e82gl3TCorath6YLf9xUwFehVvjvfqFhdOo4+0iVIVju+6XOi5XHkqB3P2AXnSwoeTX0HBoXq5gJFtvotJzFnQ== +"@babel/plugin-transform-class-static-block@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.26.0.tgz#6c8da219f4eb15cae9834ec4348ff8e9e09664a0" + integrity sha512-6J2APTs7BDDm+UMqP1useWqhcRAXo0WIoVj26N7kPFB6S73Lgvyka4KTZYIxtgYXiN5HTyRObA72N2iu628iTQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-classes@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.7.tgz#5103206cf80d02283bbbd044509ea3b65d0906bb" - integrity sha512-9j9rnl+YCQY0IGoeipXvnk3niWicIB6kCsWRGLwX241qSXpbA4MKxtp/EdvFxsc4zI5vqfLxzOd0twIJ7I99zg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-compilation-targets" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-replace-supers" "^7.25.7" - "@babel/traverse" "^7.25.7" +"@babel/plugin-transform-classes@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.9.tgz#7152457f7880b593a63ade8a861e6e26a4469f52" + integrity sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-replace-supers" "^7.25.9" + "@babel/traverse" "^7.25.9" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.7.tgz#7f621f0aa1354b5348a935ab12e3903842466f65" - integrity sha512-QIv+imtM+EtNxg/XBKL3hiWjgdLjMOmZ+XzQwSgmBfKbfxUjBzGgVPklUuE55eq5/uVoh8gg3dqlrwR/jw3ZeA== +"@babel/plugin-transform-computed-properties@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.9.tgz#db36492c78460e534b8852b1d5befe3c923ef10b" + integrity sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/template" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/template" "^7.25.9" -"@babel/plugin-transform-destructuring@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.7.tgz#f6f26a9feefb5aa41fd45b6f5838901b5333d560" - integrity sha512-xKcfLTlJYUczdaM1+epcdh1UGewJqr9zATgrNHcLBcV2QmfvPPEixo/sK/syql9cEmbr7ulu5HMFG5vbbt/sEA== +"@babel/plugin-transform-destructuring@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.9.tgz#966ea2595c498224340883602d3cfd7a0c79cea1" + integrity sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-dotall-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.7.tgz#9d775c4a3ff1aea64045300fcd4309b4a610ef02" - integrity sha512-kXzXMMRzAtJdDEgQBLF4oaiT6ZCU3oWHgpARnTKDAqPkDJ+bs3NrZb310YYevR5QlRo3Kn7dzzIdHbZm1VzJdQ== +"@babel/plugin-transform-dotall-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.9.tgz#bad7945dd07734ca52fe3ad4e872b40ed09bb09a" + integrity sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-duplicate-keys@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.7.tgz#fbba7d1155eab76bd4f2a038cbd5d65883bd7a93" - integrity sha512-by+v2CjoL3aMnWDOyCIg+yxU9KXSRa9tN6MbqggH5xvymmr9p4AMjYkNlQy4brMceBnUyHZ9G8RnpvT8wP7Cfg== +"@babel/plugin-transform-duplicate-keys@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.9.tgz#8850ddf57dce2aebb4394bb434a7598031059e6d" + integrity sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.7.tgz#102b31608dcc22c08fbca1894e104686029dc141" - integrity sha512-HvS6JF66xSS5rNKXLqkk7L9c/jZ/cdIVIcoPVrnl8IsVpLggTjXs8OWekbLHs/VtYDDh5WXnQyeE3PPUGm22MA== +"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.9.tgz#6f7259b4de127721a08f1e5165b852fcaa696d31" + integrity sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-dynamic-import@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.8.tgz#f1edbe75b248cf44c70c8ca8ed3818a668753aaa" - integrity sha512-gznWY+mr4ZQL/EWPcbBQUP3BXS5FwZp8RUOw06BaRn8tQLzN4XLIxXejpHN9Qo8x8jjBmAAKp6FoS51AgkSA/A== +"@babel/plugin-transform-dynamic-import@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.9.tgz#23e917de63ed23c6600c5dd06d94669dce79f7b8" + integrity sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-exponentiation-operator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.7.tgz#5961a3a23a398faccd6cddb34a2182807d75fb5f" - integrity sha512-yjqtpstPfZ0h/y40fAXRv2snciYr0OAoMXY/0ClC7tm4C/nG5NJKmIItlaYlLbIVAWNfrYuy9dq1bE0SbX0PEg== +"@babel/plugin-transform-exponentiation-operator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.9.tgz#ece47b70d236c1d99c263a1e22b62dc20a4c8b0f" + integrity sha512-KRhdhlVk2nObA5AYa7QMgTMTVJdfHprfpAk4DjZVtllqRg9qarilstTKEhpVjyt+Npi8ThRyiV8176Am3CodPA== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-export-namespace-from@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.8.tgz#d1988c3019a380b417e0516418b02804d3858145" - integrity sha512-sPtYrduWINTQTW7FtOy99VCTWp4H23UX7vYcut7S4CIMEXU+54zKX9uCoGkLsWXteyaMXzVHgzWbLfQ1w4GZgw== +"@babel/plugin-transform-export-namespace-from@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.9.tgz#90745fe55053394f554e40584cda81f2c8a402a2" + integrity sha512-2NsEz+CxzJIVOPx2o9UsW1rXLqtChtLoVnwYHHiB04wS5sgn7mrV45fWMBX0Kk+ub9uXytVYfNP2HjbVbCB3Ww== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-for-of@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.25.7.tgz#0acfea0f27aa290818b5b48a5a44b3f03fc13669" - integrity sha512-n/TaiBGJxYFWvpJDfsxSj9lEEE44BFM1EPGz4KEiTipTgkoFVVcCmzAL3qA7fdQU96dpo4gGf5HBx/KnDvqiHw== +"@babel/plugin-transform-for-of@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.25.9.tgz#4bdc7d42a213397905d89f02350c5267866d5755" + integrity sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" -"@babel/plugin-transform-function-name@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.7.tgz#7e394ccea3693902a8b50ded8b6ae1fa7b8519fd" - integrity sha512-5MCTNcjCMxQ63Tdu9rxyN6cAWurqfrDZ76qvVPrGYdBxIj+EawuuxTu/+dgJlhK5eRz3v1gLwp6XwS8XaX2NiQ== +"@babel/plugin-transform-function-name@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.9.tgz#939d956e68a606661005bfd550c4fc2ef95f7b97" + integrity sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA== dependencies: - "@babel/helper-compilation-targets" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-transform-json-strings@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.8.tgz#6fb3ec383a2ea92652289fdba653e3f9de722694" - integrity sha512-4OMNv7eHTmJ2YXs3tvxAfa/I43di+VcF+M4Wt66c88EAED1RoGaf1D64cL5FkRpNL+Vx9Hds84lksWvd/wMIdA== +"@babel/plugin-transform-json-strings@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.9.tgz#c86db407cb827cded902a90c707d2781aaa89660" + integrity sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-literals@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.7.tgz#70cbdc742f2cfdb1a63ea2cbd018d12a60b213c3" - integrity sha512-fwzkLrSu2fESR/cm4t6vqd7ebNIopz2QHGtjoU+dswQo/P6lwAG04Q98lliE3jkz/XqnbGFLnUcE0q0CVUf92w== +"@babel/plugin-transform-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.9.tgz#1a1c6b4d4aa59bc4cad5b6b3a223a0abd685c9de" + integrity sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-logical-assignment-operators@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.8.tgz#01868ff92daa9e525b4c7902aa51979082a05710" - integrity sha512-f5W0AhSbbI+yY6VakT04jmxdxz+WsID0neG7+kQZbCOjuyJNdL5Nn4WIBm4hRpKnUcO9lP0eipUhFN12JpoH8g== +"@babel/plugin-transform-logical-assignment-operators@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.9.tgz#b19441a8c39a2fda0902900b306ea05ae1055db7" + integrity sha512-wI4wRAzGko551Y8eVf6iOY9EouIDTtPb0ByZx+ktDGHwv6bHFimrgJM/2T021txPZ2s4c7bqvHbd+vXG6K948Q== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-member-expression-literals@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.7.tgz#0a36c3fbd450cc9e6485c507f005fa3d1bc8fca5" - integrity sha512-Std3kXwpXfRV0QtQy5JJcRpkqP8/wG4XL7hSKZmGlxPlDqmpXtEPRmhF7ztnlTCtUN3eXRUJp+sBEZjaIBVYaw== +"@babel/plugin-transform-member-expression-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.9.tgz#63dff19763ea64a31f5e6c20957e6a25e41ed5de" + integrity sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-modules-amd@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.7.tgz#bb4e543b5611f6c8c685a2fd485408713a3adf3d" - integrity sha512-CgselSGCGzjQvKzghCvDTxKHP3iooenLpJDO842ehn5D2G5fJB222ptnDwQho0WjEvg7zyoxb9P+wiYxiJX5yA== +"@babel/plugin-transform-modules-amd@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.9.tgz#49ba478f2295101544abd794486cd3088dddb6c5" + integrity sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw== dependencies: - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-modules-commonjs@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.7.tgz#173f0c791bb7407c092ce6d77ee90eb3f2d1d2fd" - integrity sha512-L9Gcahi0kKFYXvweO6n0wc3ZG1ChpSFdgG+eV1WYZ3/dGbJK7vvk91FgGgak8YwRgrCuihF8tE/Xg07EkL5COg== +"@babel/plugin-transform-modules-commonjs@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.9.tgz#d165c8c569a080baf5467bda88df6425fc060686" + integrity sha512-dwh2Ol1jWwL2MgkCzUSOvfmKElqQcuswAZypBSUsScMXvgdT8Ekq5YA6TtqpTVWH+4903NmboMuH1o9i8Rxlyg== dependencies: - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-simple-access" "^7.25.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-simple-access" "^7.25.9" -"@babel/plugin-transform-modules-systemjs@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.7.tgz#8b14d319a177cc9c85ef8b0512afd429d9e2e60b" - integrity sha512-t9jZIvBmOXJsiuyOwhrIGs8dVcD6jDyg2icw1VL4A/g+FnWyJKwUfSSU2nwJuMV2Zqui856El9u+ElB+j9fV1g== +"@babel/plugin-transform-modules-systemjs@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz#8bd1b43836269e3d33307151a114bcf3ba6793f8" + integrity sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA== dependencies: - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-validator-identifier" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-transform-modules-umd@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.7.tgz#00ee7a7e124289549381bfb0e24d87fd7f848367" - integrity sha512-p88Jg6QqsaPh+EB7I9GJrIqi1Zt4ZBHUQtjw3z1bzEXcLh6GfPqzZJ6G+G1HBGKUNukT58MnKG7EN7zXQBCODw== +"@babel/plugin-transform-modules-umd@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.9.tgz#6710079cdd7c694db36529a1e8411e49fcbf14c9" + integrity sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw== dependencies: - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-named-capturing-groups-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.7.tgz#a2f3f6d7f38693b462542951748f0a72a34d196d" - integrity sha512-BtAT9LzCISKG3Dsdw5uso4oV1+v2NlVXIIomKJgQybotJY3OwCwJmkongjHgwGKoZXd0qG5UZ12JUlDQ07W6Ow== +"@babel/plugin-transform-named-capturing-groups-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.9.tgz#454990ae6cc22fd2a0fa60b3a2c6f63a38064e6a" + integrity sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-new-target@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.7.tgz#52b2bde523b76c548749f38dc3054f1f45e82bc9" - integrity sha512-CfCS2jDsbcZaVYxRFo2qtavW8SpdzmBXC2LOI4oO0rP+JSRDxxF3inF4GcPsLgfb5FjkhXG5/yR/lxuRs2pySA== +"@babel/plugin-transform-new-target@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.9.tgz#42e61711294b105c248336dcb04b77054ea8becd" + integrity sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-nullish-coalescing-operator@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.8.tgz#befb4900c130bd52fccf2b926314557987f1b552" - integrity sha512-Z7WJJWdQc8yCWgAmjI3hyC+5PXIubH9yRKzkl9ZEG647O9szl9zvmKLzpbItlijBnVhTUf1cpyWBsZ3+2wjWPQ== +"@babel/plugin-transform-nullish-coalescing-operator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.9.tgz#bcb1b0d9e948168102d5f7104375ca21c3266949" + integrity sha512-ENfftpLZw5EItALAD4WsY/KUWvhUlZndm5GC7G3evUsVeSJB6p0pBeLQUnRnBCBx7zV0RKQjR9kCuwrsIrjWog== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-numeric-separator@^7.12.7", "@babel/plugin-transform-numeric-separator@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.8.tgz#91e370486371637bd42161052f2602c701386891" - integrity sha512-rm9a5iEFPS4iMIy+/A/PiS0QN0UyjPIeVvbU5EMZFKJZHt8vQnasbpo3T3EFcxzCeYO0BHfc4RqooCZc51J86Q== +"@babel/plugin-transform-numeric-separator@^7.12.7", "@babel/plugin-transform-numeric-separator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.9.tgz#bfed75866261a8b643468b0ccfd275f2033214a1" + integrity sha512-TlprrJ1GBZ3r6s96Yq8gEQv82s8/5HnCVHtEJScUj90thHQbwe+E5MLhi2bbNHBEJuzrvltXSru+BUxHDoog7Q== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-object-rest-spread@^7.12.1", "@babel/plugin-transform-object-rest-spread@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.8.tgz#0904ac16bcce41df4db12d915d6780f85c7fb04b" - integrity sha512-LkUu0O2hnUKHKE7/zYOIjByMa4VRaV2CD/cdGz0AxU9we+VA3kDDggKEzI0Oz1IroG+6gUP6UmWEHBMWZU316g== +"@babel/plugin-transform-object-rest-spread@^7.12.1", "@babel/plugin-transform-object-rest-spread@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.9.tgz#0203725025074164808bcf1a2cfa90c652c99f18" + integrity sha512-fSaXafEE9CVHPweLYw4J0emp1t8zYTXyzN3UuG+lylqkvYd7RMrsOQ8TYx5RF231be0vqtFC6jnx3UmpJmKBYg== dependencies: - "@babel/helper-compilation-targets" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/plugin-transform-parameters" "^7.25.7" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/plugin-transform-parameters" "^7.25.9" -"@babel/plugin-transform-object-super@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.7.tgz#582a9cea8cf0a1e02732be5b5a703a38dedf5661" - integrity sha512-pWT6UXCEW3u1t2tcAGtE15ornCBvopHj9Bps9D2DsH15APgNVOTwwczGckX+WkAvBmuoYKRCFa4DK+jM8vh5AA== +"@babel/plugin-transform-object-super@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.9.tgz#385d5de135162933beb4a3d227a2b7e52bb4cf03" + integrity sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-replace-supers" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-replace-supers" "^7.25.9" -"@babel/plugin-transform-optional-catch-binding@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.8.tgz#2649b86a3bb202c6894ec81a6ddf41b94d8f3103" - integrity sha512-EbQYweoMAHOn7iJ9GgZo14ghhb9tTjgOc88xFgYngifx7Z9u580cENCV159M4xDh3q/irbhSjZVpuhpC2gKBbg== +"@babel/plugin-transform-optional-catch-binding@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.9.tgz#10e70d96d52bb1f10c5caaac59ac545ea2ba7ff3" + integrity sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-optional-chaining@^7.25.7", "@babel/plugin-transform-optional-chaining@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.8.tgz#f46283b78adcc5b6ab988a952f989e7dce70653f" - integrity sha512-q05Bk7gXOxpTHoQ8RSzGSh/LHVB9JEIkKnk3myAWwZHnYiTGYtbdrYkIsS8Xyh4ltKf7GNUSgzs/6P2bJtBAQg== +"@babel/plugin-transform-optional-chaining@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.9.tgz#e142eb899d26ef715435f201ab6e139541eee7dd" + integrity sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" -"@babel/plugin-transform-parameters@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.7.tgz#80c38b03ef580f6d6bffe1c5254bb35986859ac7" - integrity sha512-FYiTvku63me9+1Nz7TOx4YMtW3tWXzfANZtrzHhUZrz4d47EEtMQhzFoZWESfXuAMMT5mwzD4+y1N8ONAX6lMQ== +"@babel/plugin-transform-parameters@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.9.tgz#b856842205b3e77e18b7a7a1b94958069c7ba257" + integrity sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-private-methods@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.7.tgz#c790a04f837b4bd61d6b0317b43aa11ff67dce80" - integrity sha512-KY0hh2FluNxMLwOCHbxVOKfdB5sjWG4M183885FmaqWWiGMhRZq4DQRKH6mHdEucbJnyDyYiZNwNG424RymJjA== +"@babel/plugin-transform-private-methods@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.9.tgz#847f4139263577526455d7d3223cd8bda51e3b57" + integrity sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-private-property-in-object@^7.25.8": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.8.tgz#1234f856ce85e061f9688764194e51ea7577c434" - integrity sha512-8Uh966svuB4V8RHHg0QJOB32QK287NBksJOByoKmHMp1TAobNniNalIkI2i5IPj5+S9NYCG4VIjbEuiSN8r+ow== +"@babel/plugin-transform-private-property-in-object@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.9.tgz#9c8b73e64e6cc3cbb2743633885a7dd2c385fe33" + integrity sha512-Evf3kcMqzXA3xfYJmZ9Pg1OvKdtqsDMSWBDzZOPLvHiTt36E75jLDQo5w1gtRU95Q4E5PDttrTf25Fw8d/uWLw== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-create-class-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-property-literals@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.7.tgz#a8612b4ea4e10430f00012ecf0155662c7d6550d" - integrity sha512-lQEeetGKfFi0wHbt8ClQrUSUMfEeI3MMm74Z73T9/kuz990yYVtfofjf3NuA42Jy3auFOpbjDyCSiIkTs1VIYw== +"@babel/plugin-transform-property-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz#d72d588bd88b0dec8b62e36f6fda91cedfe28e3f" + integrity sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-regenerator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.7.tgz#6eb006e6d26f627bc2f7844a9f19770721ad6f3e" - integrity sha512-mgDoQCRjrY3XK95UuV60tZlFCQGXEtMg8H+IsW72ldw1ih1jZhzYXbJvghmAEpg5UVhhnCeia1CkGttUvCkiMQ== +"@babel/plugin-transform-regenerator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.9.tgz#03a8a4670d6cebae95305ac6defac81ece77740b" + integrity sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" regenerator-transform "^0.15.2" -"@babel/plugin-transform-reserved-words@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.7.tgz#dc56b25e02afaabef3ce0c5b06b0916e8523e995" - integrity sha512-3OfyfRRqiGeOvIWSagcwUTVk2hXBsr/ww7bLn6TRTuXnexA+Udov2icFOxFX9abaj4l96ooYkcNN1qi2Zvqwng== +"@babel/plugin-transform-regexp-modifiers@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.26.0.tgz#2f5837a5b5cd3842a919d8147e9903cc7455b850" + integrity sha512-vN6saax7lrA2yA/Pak3sCxuD6F5InBjn9IcrIKQPjpsLvuHYLVroTxjdlVRHjjBWxKOqIwpTXDkOssYT4BFdRw== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-reserved-words@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz#0398aed2f1f10ba3f78a93db219b27ef417fb9ce" + integrity sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-transform-runtime@^7.12.10": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.7.tgz#435a4fab67273f00047dc806e05069c9c6344e12" - integrity sha512-Y9p487tyTzB0yDYQOtWnC+9HGOuogtP3/wNpun1xJXEEvI6vip59BSBTsHnekZLqxmPcgsrAKt46HAAb//xGhg== + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.9.tgz#62723ea3f5b31ffbe676da9d6dae17138ae580ea" + integrity sha512-nZp7GlEl+yULJrClz0SwHPqir3lc0zsPrDHQUcxGspSL7AKrexNSEfTbfqnDNJUO13bgKyfuOLMF8Xqtu8j3YQ== dependencies: - "@babel/helper-module-imports" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-module-imports" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.6" babel-plugin-polyfill-regenerator "^0.6.1" semver "^6.3.1" -"@babel/plugin-transform-shorthand-properties@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.7.tgz#92690a9c671915602d91533c278cc8f6bf12275f" - integrity sha512-uBbxNwimHi5Bv3hUccmOFlUy3ATO6WagTApenHz9KzoIdn0XeACdB12ZJ4cjhuB2WSi80Ez2FWzJnarccriJeA== +"@babel/plugin-transform-shorthand-properties@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.9.tgz#bb785e6091f99f826a95f9894fc16fde61c163f2" + integrity sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-spread@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.7.tgz#df83e899a9fc66284ee601a7b738568435b92998" - integrity sha512-Mm6aeymI0PBh44xNIv/qvo8nmbkpZze1KvR8MkEqbIREDxoiWTi18Zr2jryfRMwDfVZF9foKh060fWgni44luw== +"@babel/plugin-transform-spread@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.9.tgz#24a35153931b4ba3d13cec4a7748c21ab5514ef9" + integrity sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" -"@babel/plugin-transform-sticky-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.7.tgz#341c7002bef7f29037be7fb9684e374442dd0d17" - integrity sha512-ZFAeNkpGuLnAQ/NCsXJ6xik7Id+tHuS+NT+ue/2+rn/31zcdnupCdmunOizEaP0JsUmTFSTOPoQY7PkK2pttXw== +"@babel/plugin-transform-sticky-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.9.tgz#c7f02b944e986a417817b20ba2c504dfc1453d32" + integrity sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-template-literals@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.25.7.tgz#e566c581bb16d8541dd8701093bb3457adfce16b" - integrity sha512-SI274k0nUsFFmyQupiO7+wKATAmMFf8iFgq2O+vVFXZ0SV9lNfT1NGzBEhjquFmD8I9sqHLguH+gZVN3vww2AA== +"@babel/plugin-transform-template-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.25.9.tgz#6dbd4a24e8fad024df76d1fac6a03cf413f60fe1" + integrity sha512-o97AE4syN71M/lxrCtQByzphAdlYluKPDBzDVzMmfCobUjjhAryZV0AIpRPrxN0eAkxXO6ZLEScmt+PNhj2OTw== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-typeof-symbol@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.7.tgz#debb1287182efd20488f126be343328c679b66eb" - integrity sha512-OmWmQtTHnO8RSUbL0NTdtpbZHeNTnm68Gj5pA4Y2blFNh+V4iZR68V1qL9cI37J21ZN7AaCnkfdHtLExQPf2uA== +"@babel/plugin-transform-typeof-symbol@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.9.tgz#224ba48a92869ddbf81f9b4a5f1204bbf5a2bc4b" + integrity sha512-v61XqUMiueJROUv66BVIOi0Fv/CUuZuZMl5NkRoCVxLAnMexZ0A3kMe7vvZ0nulxMuMp0Mk6S5hNh48yki08ZA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-typescript@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.7.tgz#8fc7c3d28ddd36bce45b9b48594129d0e560cfbe" - integrity sha512-VKlgy2vBzj8AmEzunocMun2fF06bsSWV+FvVXohtL6FGve/+L217qhHxRTVGHEDO/YR8IANcjzgJsd04J8ge5Q== +"@babel/plugin-transform-typescript@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.9.tgz#69267905c2b33c2ac6d8fe765e9dc2ddc9df3849" + integrity sha512-7PbZQZP50tzv2KGGnhh82GSyMB01yKY9scIjf1a+GfZCtInOWqUH5+1EBU4t9fyR5Oykkkc9vFTs4OHrhHXljQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-create-class-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" - "@babel/plugin-syntax-typescript" "^7.25.7" + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/plugin-syntax-typescript" "^7.25.9" -"@babel/plugin-transform-unicode-escapes@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.7.tgz#973592b6d13a914794e1de8cf1383e50e0f87f81" - integrity sha512-BN87D7KpbdiABA+t3HbVqHzKWUDN3dymLaTnPFAMyc8lV+KN3+YzNhVRNdinaCPA4AUqx7ubXbQ9shRjYBl3SQ== +"@babel/plugin-transform-unicode-escapes@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.9.tgz#a75ef3947ce15363fccaa38e2dd9bc70b2788b82" + integrity sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-unicode-property-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.7.tgz#25349197cce964b1343f74fa7cfdf791a1b1919e" - integrity sha512-IWfR89zcEPQGB/iB408uGtSPlQd3Jpq11Im86vUgcmSTcoWAiQMCTOa2K2yNNqFJEBVICKhayctee65Ka8OB0w== +"@babel/plugin-transform-unicode-property-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.9.tgz#a901e96f2c1d071b0d1bb5dc0d3c880ce8f53dd3" + integrity sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-unicode-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.7.tgz#f93a93441baf61f713b6d5552aaa856bfab34809" - integrity sha512-8JKfg/hiuA3qXnlLx8qtv5HWRbgyFx2hMMtpDDuU2rTckpKkGu4ycK5yYHwuEa16/quXfoxHBIApEsNyMWnt0g== +"@babel/plugin-transform-unicode-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.9.tgz#5eae747fe39eacf13a8bd006a4fb0b5d1fa5e9b1" + integrity sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-unicode-sets-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.7.tgz#d1b3295d29e0f8f4df76abc909ad1ebee919560c" - integrity sha512-YRW8o9vzImwmh4Q3Rffd09bH5/hvY0pxg+1H1i0f7APoUeg12G7+HhLj9ZFNIrYkgBXhIijPJ+IXypN0hLTIbw== +"@babel/plugin-transform-unicode-sets-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.9.tgz#65114c17b4ffc20fa5b163c63c70c0d25621fabe" + integrity sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/preset-env@^7.12.11": - version "7.25.8" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.25.8.tgz#dc6b719627fb29cd9cccbbbe041802fd575b524c" - integrity sha512-58T2yulDHMN8YMUxiLq5YmWUnlDCyY1FsHM+v12VMx+1/FlrUj5tY50iDCpofFQEM8fMYOaY9YRvym2jcjn1Dg== - dependencies: - "@babel/compat-data" "^7.25.8" - "@babel/helper-compilation-targets" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-validator-option" "^7.25.7" - "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.25.7" - "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.25.7" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.25.7" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.25.7" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.7" + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.26.0.tgz#30e5c6bc1bcc54865bff0c5a30f6d4ccdc7fa8b1" + integrity sha512-H84Fxq0CQJNdPFT2DrfnylZ3cf5K43rGfWK4LJGPpjKHiZlk0/RzwEus3PDDZZg+/Er7lCA03MVacueUuXdzfw== + dependencies: + "@babel/compat-data" "^7.26.0" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-validator-option" "^7.25.9" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.25.9" + "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.25.9" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.25.9" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.25.9" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.9" "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" - "@babel/plugin-syntax-import-assertions" "^7.25.7" - "@babel/plugin-syntax-import-attributes" "^7.25.7" + "@babel/plugin-syntax-import-assertions" "^7.26.0" + "@babel/plugin-syntax-import-attributes" "^7.26.0" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.25.7" - "@babel/plugin-transform-async-generator-functions" "^7.25.8" - "@babel/plugin-transform-async-to-generator" "^7.25.7" - "@babel/plugin-transform-block-scoped-functions" "^7.25.7" - "@babel/plugin-transform-block-scoping" "^7.25.7" - "@babel/plugin-transform-class-properties" "^7.25.7" - "@babel/plugin-transform-class-static-block" "^7.25.8" - "@babel/plugin-transform-classes" "^7.25.7" - "@babel/plugin-transform-computed-properties" "^7.25.7" - "@babel/plugin-transform-destructuring" "^7.25.7" - "@babel/plugin-transform-dotall-regex" "^7.25.7" - "@babel/plugin-transform-duplicate-keys" "^7.25.7" - "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.25.7" - "@babel/plugin-transform-dynamic-import" "^7.25.8" - "@babel/plugin-transform-exponentiation-operator" "^7.25.7" - "@babel/plugin-transform-export-namespace-from" "^7.25.8" - "@babel/plugin-transform-for-of" "^7.25.7" - "@babel/plugin-transform-function-name" "^7.25.7" - "@babel/plugin-transform-json-strings" "^7.25.8" - "@babel/plugin-transform-literals" "^7.25.7" - "@babel/plugin-transform-logical-assignment-operators" "^7.25.8" - "@babel/plugin-transform-member-expression-literals" "^7.25.7" - "@babel/plugin-transform-modules-amd" "^7.25.7" - "@babel/plugin-transform-modules-commonjs" "^7.25.7" - "@babel/plugin-transform-modules-systemjs" "^7.25.7" - "@babel/plugin-transform-modules-umd" "^7.25.7" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.25.7" - "@babel/plugin-transform-new-target" "^7.25.7" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.25.8" - "@babel/plugin-transform-numeric-separator" "^7.25.8" - "@babel/plugin-transform-object-rest-spread" "^7.25.8" - "@babel/plugin-transform-object-super" "^7.25.7" - "@babel/plugin-transform-optional-catch-binding" "^7.25.8" - "@babel/plugin-transform-optional-chaining" "^7.25.8" - "@babel/plugin-transform-parameters" "^7.25.7" - "@babel/plugin-transform-private-methods" "^7.25.7" - "@babel/plugin-transform-private-property-in-object" "^7.25.8" - "@babel/plugin-transform-property-literals" "^7.25.7" - "@babel/plugin-transform-regenerator" "^7.25.7" - "@babel/plugin-transform-reserved-words" "^7.25.7" - "@babel/plugin-transform-shorthand-properties" "^7.25.7" - "@babel/plugin-transform-spread" "^7.25.7" - "@babel/plugin-transform-sticky-regex" "^7.25.7" - "@babel/plugin-transform-template-literals" "^7.25.7" - "@babel/plugin-transform-typeof-symbol" "^7.25.7" - "@babel/plugin-transform-unicode-escapes" "^7.25.7" - "@babel/plugin-transform-unicode-property-regex" "^7.25.7" - "@babel/plugin-transform-unicode-regex" "^7.25.7" - "@babel/plugin-transform-unicode-sets-regex" "^7.25.7" + "@babel/plugin-transform-arrow-functions" "^7.25.9" + "@babel/plugin-transform-async-generator-functions" "^7.25.9" + "@babel/plugin-transform-async-to-generator" "^7.25.9" + "@babel/plugin-transform-block-scoped-functions" "^7.25.9" + "@babel/plugin-transform-block-scoping" "^7.25.9" + "@babel/plugin-transform-class-properties" "^7.25.9" + "@babel/plugin-transform-class-static-block" "^7.26.0" + "@babel/plugin-transform-classes" "^7.25.9" + "@babel/plugin-transform-computed-properties" "^7.25.9" + "@babel/plugin-transform-destructuring" "^7.25.9" + "@babel/plugin-transform-dotall-regex" "^7.25.9" + "@babel/plugin-transform-duplicate-keys" "^7.25.9" + "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.25.9" + "@babel/plugin-transform-dynamic-import" "^7.25.9" + "@babel/plugin-transform-exponentiation-operator" "^7.25.9" + "@babel/plugin-transform-export-namespace-from" "^7.25.9" + "@babel/plugin-transform-for-of" "^7.25.9" + "@babel/plugin-transform-function-name" "^7.25.9" + "@babel/plugin-transform-json-strings" "^7.25.9" + "@babel/plugin-transform-literals" "^7.25.9" + "@babel/plugin-transform-logical-assignment-operators" "^7.25.9" + "@babel/plugin-transform-member-expression-literals" "^7.25.9" + "@babel/plugin-transform-modules-amd" "^7.25.9" + "@babel/plugin-transform-modules-commonjs" "^7.25.9" + "@babel/plugin-transform-modules-systemjs" "^7.25.9" + "@babel/plugin-transform-modules-umd" "^7.25.9" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.25.9" + "@babel/plugin-transform-new-target" "^7.25.9" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.25.9" + "@babel/plugin-transform-numeric-separator" "^7.25.9" + "@babel/plugin-transform-object-rest-spread" "^7.25.9" + "@babel/plugin-transform-object-super" "^7.25.9" + "@babel/plugin-transform-optional-catch-binding" "^7.25.9" + "@babel/plugin-transform-optional-chaining" "^7.25.9" + "@babel/plugin-transform-parameters" "^7.25.9" + "@babel/plugin-transform-private-methods" "^7.25.9" + "@babel/plugin-transform-private-property-in-object" "^7.25.9" + "@babel/plugin-transform-property-literals" "^7.25.9" + "@babel/plugin-transform-regenerator" "^7.25.9" + "@babel/plugin-transform-regexp-modifiers" "^7.26.0" + "@babel/plugin-transform-reserved-words" "^7.25.9" + "@babel/plugin-transform-shorthand-properties" "^7.25.9" + "@babel/plugin-transform-spread" "^7.25.9" + "@babel/plugin-transform-sticky-regex" "^7.25.9" + "@babel/plugin-transform-template-literals" "^7.25.9" + "@babel/plugin-transform-typeof-symbol" "^7.25.9" + "@babel/plugin-transform-unicode-escapes" "^7.25.9" + "@babel/plugin-transform-unicode-property-regex" "^7.25.9" + "@babel/plugin-transform-unicode-regex" "^7.25.9" + "@babel/plugin-transform-unicode-sets-regex" "^7.25.9" "@babel/preset-modules" "0.1.6-no-external-plugins" babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.6" @@ -1001,31 +1011,31 @@ esutils "^2.0.2" "@babel/preset-typescript@^7.12.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.25.7.tgz#43c5b68eccb856ae5b52274b77b1c3c413cde1b7" - integrity sha512-rkkpaXJZOFN45Fb+Gki0c+KMIglk4+zZXOoMJuyEK8y8Kkc8Jd3BDmP7qPsz0zQMJj+UD7EprF+AqAXcILnexw== + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.26.0.tgz#4a570f1b8d104a242d923957ffa1eaff142a106d" + integrity sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-validator-option" "^7.25.7" - "@babel/plugin-syntax-jsx" "^7.25.7" - "@babel/plugin-transform-modules-commonjs" "^7.25.7" - "@babel/plugin-transform-typescript" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-validator-option" "^7.25.9" + "@babel/plugin-syntax-jsx" "^7.25.9" + "@babel/plugin-transform-modules-commonjs" "^7.25.9" + "@babel/plugin-transform-typescript" "^7.25.9" "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.7.tgz#7ffb53c37a8f247c8c4d335e89cdf16a2e0d0fb6" - integrity sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w== + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.26.0.tgz#8600c2f595f277c60815256418b85356a65173c1" + integrity sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw== dependencies: regenerator-runtime "^0.14.0" -"@babel/template@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.7.tgz#27f69ce382855d915b14ab0fe5fb4cbf88fa0769" - integrity sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA== +"@babel/template@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.9.tgz#ecb62d81a8a6f5dc5fe8abfc3901fc52ddf15016" + integrity sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg== dependencies: - "@babel/code-frame" "^7.25.7" - "@babel/parser" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/code-frame" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/types" "^7.25.9" "@babel/template@^7.3.3": version "7.24.7" @@ -1036,16 +1046,16 @@ "@babel/parser" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/traverse@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.7.tgz#83e367619be1cab8e4f2892ef30ba04c26a40fa8" - integrity sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg== - dependencies: - "@babel/code-frame" "^7.25.7" - "@babel/generator" "^7.25.7" - "@babel/parser" "^7.25.7" - "@babel/template" "^7.25.7" - "@babel/types" "^7.25.7" +"@babel/traverse@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.9.tgz#a50f8fe49e7f69f53de5bea7e413cd35c5e13c84" + integrity sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw== + dependencies: + "@babel/code-frame" "^7.25.9" + "@babel/generator" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/template" "^7.25.9" + "@babel/types" "^7.25.9" debug "^4.3.1" globals "^11.1.0" @@ -1058,7 +1068,7 @@ "@babel/helper-validator-identifier" "^7.24.7" to-fast-properties "^2.0.0" -"@babel/types@^7.24.7", "@babel/types@^7.25.7", "@babel/types@^7.25.8", "@babel/types@^7.4.4": +"@babel/types@^7.24.7": version "7.25.8" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.8.tgz#5cf6037258e8a9bcad533f4979025140cb9993e1" integrity sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg== @@ -1076,6 +1086,14 @@ "@babel/helper-validator-identifier" "^7.24.7" to-fast-properties "^2.0.0" +"@babel/types@^7.25.9", "@babel/types@^7.26.0", "@babel/types@^7.4.4": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.0.tgz#deabd08d6b753bc8e0f198f8709fb575e31774ff" + integrity sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA== + dependencies: + "@babel/helper-string-parser" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -2313,12 +2331,12 @@ babel-plugin-jest-hoist@^29.6.3: "@types/babel__traverse" "^7.0.6" babel-plugin-polyfill-corejs2@^0.4.10: - version "0.4.11" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz#30320dfe3ffe1a336c15afdcdafd6fd615b25e33" - integrity sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q== + version "0.4.12" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.12.tgz#ca55bbec8ab0edeeef3d7b8ffd75322e210879a9" + integrity sha512-CPWT6BwvhrTO2d8QVorhTCQw9Y43zOu7G9HigcfxvepOU6b8o3tcWad6oVgZIsZCTt42FFv97aA7ZJsbM4+8og== dependencies: "@babel/compat-data" "^7.22.6" - "@babel/helper-define-polyfill-provider" "^0.6.2" + "@babel/helper-define-polyfill-provider" "^0.6.3" semver "^6.3.1" babel-plugin-polyfill-corejs3@^0.10.6: @@ -2330,11 +2348,11 @@ babel-plugin-polyfill-corejs3@^0.10.6: core-js-compat "^3.38.0" babel-plugin-polyfill-regenerator@^0.6.1: - version "0.6.2" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz#addc47e240edd1da1058ebda03021f382bba785e" - integrity sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg== + version "0.6.3" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.3.tgz#abeb1f3f1c762eace37587f42548b08b57789bc8" + integrity sha512-LiWSbl4CRSIa5x/JAU6jZiG9eit9w6mz+yVMFwDE83LAWvt0AfGBoZ7HS/mkhrKuh2ZlzfVZYKoLjXdqw6Yt7Q== dependencies: - "@babel/helper-define-polyfill-provider" "^0.6.2" + "@babel/helper-define-polyfill-provider" "^0.6.3" babel-plugin-search-and-replace@^1.1.1: version "1.1.1" @@ -2411,15 +2429,15 @@ braces@^3.0.3, braces@~3.0.2: dependencies: fill-range "^7.1.1" -browserslist@^4.23.3, browserslist@^4.24.0: - version "4.24.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.0.tgz#a1325fe4bc80b64fda169629fc01b3d6cecd38d4" - integrity sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A== +browserslist@^4.24.0, browserslist@^4.24.2: + version "4.24.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.2.tgz#f5845bc91069dbd55ee89faf9822e1d885d16580" + integrity sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg== dependencies: - caniuse-lite "^1.0.30001663" - electron-to-chromium "^1.5.28" + caniuse-lite "^1.0.30001669" + electron-to-chromium "^1.5.41" node-releases "^2.0.18" - update-browserslist-db "^1.1.0" + update-browserslist-db "^1.1.1" bs58@^6.0.0: version "6.0.0" @@ -2471,10 +2489,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001663: - version "1.0.30001669" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz#fda8f1d29a8bfdc42de0c170d7f34a9cf19ed7a3" - integrity sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w== +caniuse-lite@^1.0.30001669: + version "1.0.30001680" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001680.tgz#5380ede637a33b9f9f1fc6045ea99bd142f3da5e" + integrity sha512-rPQy70G6AGUMnbwS1z6Xg+RkHYPAi18ihs47GH0jcxIG7wArmPgY3XbS2sRdBbxJljp3thdT8BIqv9ccCypiPA== ccount@^2.0.0: version "2.0.1" @@ -2681,11 +2699,11 @@ convert-source-map@^2.0.0: integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== core-js-compat@^3.38.0, core-js-compat@^3.38.1: - version "3.38.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.38.1.tgz#2bc7a298746ca5a7bcb9c164bcb120f2ebc09a09" - integrity sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw== + version "3.39.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.39.0.tgz#b12dccb495f2601dc860bdbe7b4e3ffa8ba63f61" + integrity sha512-VgEUx3VwlExr5no0tXlBt+silBvhTryPwCXRI2Id1PN8WTKu7MreethvddqOubrYxkFdv/RnYrqlv1sFNAUelw== dependencies: - browserslist "^4.23.3" + browserslist "^4.24.2" core-js@^3.0.0: version "3.37.1" @@ -2903,10 +2921,10 @@ easy-table@1.2.0: optionalDependencies: wcwidth "^1.0.1" -electron-to-chromium@^1.5.28: - version "1.5.39" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.39.tgz#5cbe5200b43dff7b7c2bcb6bdacf65d514c76bb2" - integrity sha512-4xkpSR6CjuiaNyvwiWDI85N9AxsvbPawB8xc7yzLPonYTuP19BVgYweKyUMFtHEZgIcHWMt1ks5Cqx2m+6/Grg== +electron-to-chromium@^1.5.41: + version "1.5.56" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.56.tgz#3213f369efc3a41091c3b2c05bc0f406108ac1df" + integrity sha512-7lXb9dAvimCFdvUMTyucD4mnIndt/xhRKFAlky0CyFogdnNmdPQNoHI23msF/2V4mpTxMzgMdjK4+YRlFlRQZw== emittery@^0.13.1: version "0.13.1" @@ -5435,9 +5453,9 @@ path-to-regexp@^2.2.1: integrity sha512-G6zHoVqC6GGTQkZwF4lkuEyMbVOjoBKAEybQUypI1WTkqinCOrq2x6U2+phkJ1XsEMTy4LjtwPI7HW+NVrRR2w== picocolors@^1.0.0, picocolors@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59" - integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw== + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" @@ -5687,9 +5705,9 @@ regjsparser@^0.10.0: jsesc "~0.5.0" regjsparser@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.11.1.tgz#ae55c74f646db0c8fcb922d4da635e33da405149" - integrity sha512-1DHODs4B8p/mQHU9kr+jv8+wIC9mtG4eBHxWxIq5mhjE3D5oORhCc6deRKzTjs9DcfRFmj9BHSDguZklqCGFWQ== + version "0.11.2" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.11.2.tgz#7404ad42be00226d72bcf1f003f1f441861913d8" + integrity sha512-3OGZZ4HoLJkkAZx/48mTXJNlmqTGOzc0o9OWQPuWpkOlXXPbyN6OafCcoXUnBqE2D3f/T5L+pWc1kdEmnfnRsA== dependencies: jsesc "~3.0.2" @@ -6520,7 +6538,7 @@ universalify@^0.2.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== -update-browserslist-db@^1.1.0: +update-browserslist-db@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz#80846fba1d79e82547fb661f8d141e0945755fe5" integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A== From a314e612fad97bcbff0cc24b60a54e67ee25233a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 12 Nov 2024 15:07:51 +0000 Subject: [PATCH 524/595] Update dependency @stylistic/eslint-plugin to v2.10.1 (#4520) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 80 +++++++++++++++++++------------------------------------ 1 file changed, 27 insertions(+), 53 deletions(-) diff --git a/yarn.lock b/yarn.lock index ed5ac84227d..00f85d1ff71 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1654,13 +1654,13 @@ p-map "^4.0.0" "@stylistic/eslint-plugin@^2.9.0": - version "2.9.0" - resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin/-/eslint-plugin-2.9.0.tgz#5ab3326303915e020ddaf39154290e2800a84bcd" - integrity sha512-OrDyFAYjBT61122MIY1a3SfEgy3YCMgt2vL4eoPmvTwDBwyQhAXurxNQznlRD/jESNfYWfID8Ej+31LljvF7Xg== + version "2.10.1" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin/-/eslint-plugin-2.10.1.tgz#809924752a1a13ebff2b0b6d7884fd61d389a907" + integrity sha512-U+4yzNXElTf9q0kEfnloI9XbOyD4cnEQCxjUI94q0+W++0GAEQvJ/slwEj9lwjDHfGADRSr+Tco/z0XJvmDfCQ== dependencies: - "@typescript-eslint/utils" "^8.8.0" - eslint-visitor-keys "^4.1.0" - espree "^10.2.0" + "@typescript-eslint/utils" "^8.12.2" + eslint-visitor-keys "^4.2.0" + espree "^10.3.0" estraverse "^5.3.0" picomatch "^4.0.2" @@ -1922,14 +1922,6 @@ "@typescript-eslint/types" "8.6.0" "@typescript-eslint/visitor-keys" "8.6.0" -"@typescript-eslint/scope-manager@8.9.0": - version "8.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.9.0.tgz#c98fef0c4a82a484e6a1eb610a55b154d14d46f3" - integrity sha512-bZu9bUud9ym1cabmOYH9S6TnbWRzpklVmwqICeOulTCZ9ue2/pczWzQvt/cGj2r2o1RdKoZbuEMalJJSYw3pHQ== - dependencies: - "@typescript-eslint/types" "8.9.0" - "@typescript-eslint/visitor-keys" "8.9.0" - "@typescript-eslint/type-utils@8.14.0": version "8.14.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.14.0.tgz#455c6af30c336b24a1af28bc4f81b8dd5d74d94d" @@ -1950,11 +1942,6 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.6.0.tgz#cdc3a16f83f2f0663d6723e9fd032331cdd9f51c" integrity sha512-rojqFZGd4MQxw33SrOy09qIDS8WEldM8JWtKQLAjf/X5mGSeEFh5ixQlxssMNyPslVIk9yzWqXCsV2eFhYrYUw== -"@typescript-eslint/types@8.9.0": - version "8.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.9.0.tgz#b733af07fb340b32e962c6c63b1062aec2dc0fe6" - integrity sha512-SjgkvdYyt1FAPhU9c6FiYCXrldwYYlIQLkuc+LfAhCna6ggp96ACncdtlbn8FmnG72tUkXclrDExOpEYf1nfJQ== - "@typescript-eslint/typescript-estree@8.14.0": version "8.14.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.14.0.tgz#a7a3a5a53a6c09313e12fb4531d4ff582ee3c312" @@ -1983,21 +1970,7 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/typescript-estree@8.9.0": - version "8.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.9.0.tgz#1714f167e9063062dc0df49c1d25afcbc7a96199" - integrity sha512-9iJYTgKLDG6+iqegehc5+EqE6sqaee7kb8vWpmHZ86EqwDjmlqNNHeqDVqb9duh+BY6WCNHfIGvuVU3Tf9Db0g== - dependencies: - "@typescript-eslint/types" "8.9.0" - "@typescript-eslint/visitor-keys" "8.9.0" - debug "^4.3.4" - fast-glob "^3.3.2" - is-glob "^4.0.3" - minimatch "^9.0.4" - semver "^7.6.0" - ts-api-utils "^1.3.0" - -"@typescript-eslint/utils@8.14.0": +"@typescript-eslint/utils@8.14.0", "@typescript-eslint/utils@^8.12.2": version "8.14.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.14.0.tgz#ac2506875e03aba24e602364e43b2dfa45529dbd" integrity sha512-OGqj6uB8THhrHj0Fk27DcHPojW7zKwKkPmHXHvQ58pLYp4hy8CSUdTKykKeh+5vFqTTVmjz0zCOOPKRovdsgHA== @@ -2017,16 +1990,6 @@ "@typescript-eslint/types" "8.6.0" "@typescript-eslint/typescript-estree" "8.6.0" -"@typescript-eslint/utils@^8.8.0": - version "8.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.9.0.tgz#748bbe3ea5bee526d9786d9405cf1b0df081c299" - integrity sha512-PKgMmaSo/Yg/F7kIZvrgrWa1+Vwn036CdNUvYFEkYbPwOH4i8xvkaRlu148W3vtheWK9ckKRIz7PBP5oUlkrvQ== - dependencies: - "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "8.9.0" - "@typescript-eslint/types" "8.9.0" - "@typescript-eslint/typescript-estree" "8.9.0" - "@typescript-eslint/visitor-keys@8.14.0": version "8.14.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.14.0.tgz#2418d5a54669af9658986ade4e6cfb7767d815ad" @@ -2043,14 +2006,6 @@ "@typescript-eslint/types" "8.6.0" eslint-visitor-keys "^3.4.3" -"@typescript-eslint/visitor-keys@8.9.0": - version "8.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.9.0.tgz#5f11f4d9db913f37da42776893ffe0dd1ae78f78" - integrity sha512-Ht4y38ubk4L5/U8xKUBfKNYGmvKvA1CANoxiTRMM+tOLk3lbF3DvzZCxJCRSE+2GdCMSh6zq9VZJc3asc1XuAA== - dependencies: - "@typescript-eslint/types" "8.9.0" - eslint-visitor-keys "^3.4.3" - "@ungap/structured-clone@^1.0.0", "@ungap/structured-clone@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" @@ -2091,6 +2046,11 @@ acorn@^8.12.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.13.0.tgz#2a30d670818ad16ddd6a35d3842dacec9e5d7ca3" integrity sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w== +acorn@^8.14.0: + version "8.14.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.0.tgz#063e2c70cac5fb4f6467f0b11152e04c682795b0" + integrity sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA== + agent-base@6: version "6.0.2" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" @@ -3315,6 +3275,11 @@ eslint-visitor-keys@^4.1.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz#1f785cc5e81eb7534523d85922248232077d2f8c" integrity sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg== +eslint-visitor-keys@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz#687bacb2af884fcdda8a6e7d65c606f46a14cd45" + integrity sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw== + eslint@8.57.1: version "8.57.1" resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.1.tgz#7df109654aba7e3bbe5c8eae533c5e461d3c6ca9" @@ -3359,7 +3324,7 @@ eslint@8.57.1: strip-ansi "^6.0.1" text-table "^0.2.0" -espree@^10.1.0, espree@^10.2.0: +espree@^10.1.0: version "10.2.0" resolved "https://registry.yarnpkg.com/espree/-/espree-10.2.0.tgz#f4bcead9e05b0615c968e85f83816bc386a45df6" integrity sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g== @@ -3368,6 +3333,15 @@ espree@^10.1.0, espree@^10.2.0: acorn-jsx "^5.3.2" eslint-visitor-keys "^4.1.0" +espree@^10.3.0: + version "10.3.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-10.3.0.tgz#29267cf5b0cb98735b65e64ba07e0ed49d1eed8a" + integrity sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg== + dependencies: + acorn "^8.14.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^4.2.0" + espree@^9.6.0, espree@^9.6.1: version "9.6.1" resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" From 7c41e3fb06e7210fc544e6d109721c01e585dba0 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 12 Nov 2024 15:47:11 +0000 Subject: [PATCH 525/595] Update all non-major dependencies (#4519) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 104 +++++++++++------------------------------------------- 1 file changed, 20 insertions(+), 84 deletions(-) diff --git a/yarn.lock b/yarn.lock index 00f85d1ff71..f46f97fa3ce 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1914,14 +1914,6 @@ "@typescript-eslint/types" "8.14.0" "@typescript-eslint/visitor-keys" "8.14.0" -"@typescript-eslint/scope-manager@8.6.0": - version "8.6.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.6.0.tgz#28cc2fc26a84b75addf45091a2c6283e29e2c982" - integrity sha512-ZuoutoS5y9UOxKvpc/GkvF4cuEmpokda4wRg64JEia27wX+PysIE9q+lzDtlHHgblwUWwo5/Qn+/WyTUvDwBHw== - dependencies: - "@typescript-eslint/types" "8.6.0" - "@typescript-eslint/visitor-keys" "8.6.0" - "@typescript-eslint/type-utils@8.14.0": version "8.14.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.14.0.tgz#455c6af30c336b24a1af28bc4f81b8dd5d74d94d" @@ -1937,11 +1929,6 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.14.0.tgz#0d33d8d0b08479c424e7d654855fddf2c71e4021" integrity sha512-yjeB9fnO/opvLJFAsPNYlKPnEM8+z4og09Pk504dkqonT02AyL5Z9SSqlE0XqezS93v6CXn49VHvB2G7XSsl0g== -"@typescript-eslint/types@8.6.0": - version "8.6.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.6.0.tgz#cdc3a16f83f2f0663d6723e9fd032331cdd9f51c" - integrity sha512-rojqFZGd4MQxw33SrOy09qIDS8WEldM8JWtKQLAjf/X5mGSeEFh5ixQlxssMNyPslVIk9yzWqXCsV2eFhYrYUw== - "@typescript-eslint/typescript-estree@8.14.0": version "8.14.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.14.0.tgz#a7a3a5a53a6c09313e12fb4531d4ff582ee3c312" @@ -1956,21 +1943,7 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/typescript-estree@8.6.0": - version "8.6.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.6.0.tgz#f945506de42871f04868371cb5bf21e8f7266e01" - integrity sha512-MOVAzsKJIPIlLK239l5s06YXjNqpKTVhBVDnqUumQJja5+Y94V3+4VUFRA0G60y2jNnTVwRCkhyGQpavfsbq/g== - dependencies: - "@typescript-eslint/types" "8.6.0" - "@typescript-eslint/visitor-keys" "8.6.0" - debug "^4.3.4" - fast-glob "^3.3.2" - is-glob "^4.0.3" - minimatch "^9.0.4" - semver "^7.6.0" - ts-api-utils "^1.3.0" - -"@typescript-eslint/utils@8.14.0", "@typescript-eslint/utils@^8.12.2": +"@typescript-eslint/utils@8.14.0", "@typescript-eslint/utils@^6.0.0 || ^7.0.0 || ^8.0.0", "@typescript-eslint/utils@^8.12.2": version "8.14.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.14.0.tgz#ac2506875e03aba24e602364e43b2dfa45529dbd" integrity sha512-OGqj6uB8THhrHj0Fk27DcHPojW7zKwKkPmHXHvQ58pLYp4hy8CSUdTKykKeh+5vFqTTVmjz0zCOOPKRovdsgHA== @@ -1980,16 +1953,6 @@ "@typescript-eslint/types" "8.14.0" "@typescript-eslint/typescript-estree" "8.14.0" -"@typescript-eslint/utils@^6.0.0 || ^7.0.0 || ^8.0.0": - version "8.6.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.6.0.tgz#175fe893f32804bed1e72b3364ea6bbe1044181c" - integrity sha512-eNp9cWnYf36NaOVjkEUznf6fEgVy1TWpE0o52e4wtojjBx7D1UV2WAWGzR+8Y5lVFtpMLPwNbC67T83DWSph4A== - dependencies: - "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "8.6.0" - "@typescript-eslint/types" "8.6.0" - "@typescript-eslint/typescript-estree" "8.6.0" - "@typescript-eslint/visitor-keys@8.14.0": version "8.14.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.14.0.tgz#2418d5a54669af9658986ade4e6cfb7767d815ad" @@ -1998,14 +1961,6 @@ "@typescript-eslint/types" "8.14.0" eslint-visitor-keys "^3.4.3" -"@typescript-eslint/visitor-keys@8.6.0": - version "8.6.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.6.0.tgz#5432af4a1753f376f35ab5b891fc9db237aaf76f" - integrity sha512-wapVFfZg9H0qOYh4grNVQiMklJGluQrOUiOhYRrQWhx7BY/+I1IYb8BczWNbbUpO+pqy0rDciv3lQH5E1bCLrg== - dependencies: - "@typescript-eslint/types" "8.6.0" - eslint-visitor-keys "^3.4.3" - "@ungap/structured-clone@^1.0.0", "@ungap/structured-clone@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" @@ -2041,11 +1996,6 @@ acorn@^8.1.0, acorn@^8.11.0, acorn@^8.4.1, acorn@^8.8.1, acorn@^8.9.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.1.tgz#71616bdccbe25e27a54439e0046e89ca76df2248" integrity sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg== -acorn@^8.12.0: - version "8.13.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.13.0.tgz#2a30d670818ad16ddd6a35d3842dacec9e5d7ca3" - integrity sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w== - acorn@^8.14.0: version "8.14.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.0.tgz#063e2c70cac5fb4f6467f0b11152e04c682795b0" @@ -3149,16 +3099,16 @@ eslint-plugin-import@^2.26.0: tsconfig-paths "^3.15.0" eslint-plugin-jest@^28.0.0: - version "28.8.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.8.3.tgz#c5699bba0ad06090ad613535e4f1572f4c2567c0" - integrity sha512-HIQ3t9hASLKm2IhIOqnu+ifw7uLZkIlR7RYNv7fMcEi/p0CIiJmfriStQS2LDkgtY4nyLbIZAD+JL347Yc2ETQ== + version "28.9.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-28.9.0.tgz#19168dfaed124339cd2252c4c4d1ac3688aeb243" + integrity sha512-rLu1s1Wf96TgUUxSw6loVIkNtUjq1Re7A9QdCCHSohnvXEBAjuL420h0T/fMmkQlNsQP2GhQzEUpYHPfxBkvYQ== dependencies: "@typescript-eslint/utils" "^6.0.0 || ^7.0.0 || ^8.0.0" eslint-plugin-jsdoc@^50.0.0: - version "50.4.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.4.1.tgz#845ddf4c395891babe135023d97a45c750d94c4c" - integrity sha512-OXIq+JJQPCLAKL473/esioFOwbXyRE5MAQ4HbZjcp3e+K3zdxt2uDpGs3FR+WezUXNStzEtTfgx15T+JFrVwBA== + version "50.5.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.5.0.tgz#3b34b7846eb6c40750e68e97ae9441455fde7a75" + integrity sha512-xTkshfZrUbiSHXBwZ/9d5ulZ2OcHXxSvm/NPo494H/hadLRJwOq5PMV0EUpMqsb9V+kQo+9BAgi6Z7aJtdBp2A== dependencies: "@es-joy/jsdoccomment" "~0.49.0" are-docs-informative "^0.0.2" @@ -3270,11 +3220,6 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -eslint-visitor-keys@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz#1f785cc5e81eb7534523d85922248232077d2f8c" - integrity sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg== - eslint-visitor-keys@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz#687bacb2af884fcdda8a6e7d65c606f46a14cd45" @@ -3324,16 +3269,7 @@ eslint@8.57.1: strip-ansi "^6.0.1" text-table "^0.2.0" -espree@^10.1.0: - version "10.2.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-10.2.0.tgz#f4bcead9e05b0615c968e85f83816bc386a45df6" - integrity sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g== - dependencies: - acorn "^8.12.0" - acorn-jsx "^5.3.2" - eslint-visitor-keys "^4.1.0" - -espree@^10.3.0: +espree@^10.1.0, espree@^10.3.0: version "10.3.0" resolved "https://registry.yarnpkg.com/espree/-/espree-10.3.0.tgz#29267cf5b0cb98735b65e64ba07e0ed49d1eed8a" integrity sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg== @@ -4655,10 +4591,10 @@ jest@^29.0.0: import-local "^3.0.2" jest-cli "^29.7.0" -jiti@^2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/jiti/-/jiti-2.3.3.tgz#39c66fc77476b92a694e65dfe04b294070e2e096" - integrity sha512-EX4oNDwcXSivPrw2qKH2LB5PoFxEvgtv2JgwW0bU858HoLQ+kutSvjLMUqBd0PeJYEinLWhoI9Ol0eYMqj/wNQ== +jiti@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-2.4.0.tgz#393d595fb6031a11d11171b5e4fc0b989ba3e053" + integrity sha512-H5UpaUI+aHOqZXlYOaFP/8AzKsg+guWu+Pr3Y8i7+Y3zr1aXAvCvTAQ1RxSc6oVD8R8c7brgNtTVP91E7upH/g== jju@~1.4.0: version "1.4.0" @@ -4792,19 +4728,19 @@ kleur@^3.0.3: integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== knip@^5.0.0: - version "5.33.3" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.33.3.tgz#0a007e9927117958acf2ccfaca0f76f3fed801e2" - integrity sha512-saUxedVDCa/8p3w445at66vLmYKretzYsX7+elMJ5ROWGzU+1aTRm3EmKELTaho1ue7BlwJB5BxLJROy43+LtQ== + version "5.36.7" + resolved "https://registry.yarnpkg.com/knip/-/knip-5.36.7.tgz#5a570e89aa5781ea0f98929f558596c2128777e7" + integrity sha512-PSuu62+6wqd1Q1V/ZzbDhvJ3X+RU8wZILon90h2s93+d1OZL118ZE9WihzSqwP29GVt72MTlbS/HHG+O47H68w== dependencies: "@nodelib/fs.walk" "1.2.8" "@snyk/github-codeowners" "1.1.0" easy-table "1.2.0" enhanced-resolve "^5.17.1" fast-glob "^3.3.2" - jiti "^2.3.3" + jiti "^2.4.0" js-yaml "^4.1.0" minimist "^1.2.8" - picocolors "^1.0.0" + picocolors "^1.1.0" picomatch "^4.0.1" pretty-ms "^9.0.0" smol-toml "^1.3.0" @@ -6310,9 +6246,9 @@ tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1: integrity sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ== tslib@^2.6.2: - version "2.8.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.0.tgz#d124c86c3c05a40a91e6fdea4021bd31d377971b" - integrity sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA== + version "2.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" + integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" From 705b6336cfa230d6c10157cedc95074337bfeac0 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Tue, 12 Nov 2024 17:51:01 +0100 Subject: [PATCH 526/595] Update e2e doc in `README.md` (#4503) * Update e2e doc in `README.md` * Update `ICreateClientOpts.cryptoStore` doc * Apply first batch of suggestion Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Fix `cryptoStore` tsdoc in `client.ts` * Changes in Initialization chapter. * Add doc about deprecated methods in `MatrixClient`. * Update SecretStorage doc * Fis typos * Improve e2e docs --------- Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- README.md | 137 ++++++++++++++++++++++++++++++++++++++++---------- src/client.ts | 11 ++-- 2 files changed, 119 insertions(+), 29 deletions(-) diff --git a/README.md b/README.md index 7a9146030c1..d2bde406466 100644 --- a/README.md +++ b/README.md @@ -303,44 +303,129 @@ Then visit `http://localhost:8005` to see the API docs. # End-to-end encryption support -**This section is outdated.** Use of `libolm` is deprecated and we are replacing it with support -from the matrix-rust-sdk (https://github.com/element-hq/element-web/issues/21972). +`matrix-js-sdk`'s end-to-end encryption support is based on the [WebAssembly bindings](https://github.com/matrix-org/matrix-rust-sdk-crypto-wasm) of the Rust [matrix-sdk-crypto](https://github.com/matrix-org/matrix-rust-sdk/tree/main/crates/matrix-sdk-crypto) library. -The SDK supports end-to-end encryption via the Olm and Megolm protocols, using -[libolm](https://gitlab.matrix.org/matrix-org/olm). It is left up to the -application to make libolm available, via the `Olm` global. +## Initialization -It is also necessary to call `await matrixClient.initCrypto()` after creating a new -`MatrixClient` (but **before** calling `matrixClient.startClient()`) to -initialise the crypto layer. +**Do not use `matrixClient.initCrypto()`. This method is deprecated and no longer maintained.** -If the `Olm` global is not available, the SDK will show a warning, as shown -below; `initCrypto()` will also fail. +To initialize the end-to-end encryption support in the matrix client: +```javascript +// Create a new matrix client +const matrixClient = sdk.createClient({ + baseUrl: "http://localhost:8008", + accessToken: myAccessToken, + userId: myUserId, +}); + +// Initialize to enable end-to-end encryption support. +await matrixClient.initRustCrypto(); ``` -Unable to load crypto module: crypto will be disabled: Error: global.Olm is not defined + +After calling `initRustCrypto`, you can obtain a reference to the [`CryptoApi`](https://matrix-org.github.io/matrix-js-sdk/interfaces/crypto_api.CryptoApi.html) interface, which is the main entry point for end-to-end encryption, by calling [`MatrixClient.getCrypto`](https://matrix-org.github.io/matrix-js-sdk/classes/matrix.MatrixClient.html#getCrypto). + +## Secret storage + +You should normally set up [secret storage](https://spec.matrix.org/v1.12/client-server-api/#secret-storage) before using the end-to-end encryption. To do this, call [`CryptoApi.bootstrapSecretStorage`](https://matrix-org.github.io/matrix-js-sdk/interfaces/crypto_api.CryptoApi.html#bootstrapSecretStorage). +`bootstrapSecretStorage` can be called unconditionally: it will only set up the secret storage if it is not already set up (unless you use the `setupNewSecretStorage` parameter). + +```javascript +const matrixClient = sdk.createClient({ + ..., + cryptoCallbacks: { + getSecretStorageKey: async (keys) => { + // This function should prompt the user to enter their secret storage key. + return mySecretStorageKeys; + }, + }, +}); + +matrixClient.getCrypto().bootstrapSecretStorage({ + // This function will be called if a new secret storage key (aka recovery key) is needed. + // You should prompt the user to save the key somewhere, because they will need it to unlock secret storage in future. + createSecretStorageKey: async () => { + return mySecretStorageKey; + }, +}); ``` -If the crypto layer is not (successfully) initialised, the SDK will continue to -work for unencrypted rooms, but it will not support the E2E parts of the Matrix -specification. +The example above will create a new secret storage key if secret storage was not previously set up. +The secret storage data will be encrypted using the secret storage key returned in [`createSecretStorageKey`](https://matrix-org.github.io/matrix-js-sdk/interfaces/crypto_api.CreateSecretStorageOpts.html#createSecretStorageKey). + +We recommend that you prompt the user to re-enter this key when [`CryptoCallbacks.getSecretStorageKey`](https://matrix-org.github.io/matrix-js-sdk/interfaces/crypto_api.CryptoCallbacks.html#getSecretStorageKey) is called (when the secret storage access is needed). + +## Set up cross-signing + +To set up cross-signing to verify devices and other users, call +[`CryptoApi.bootstrapCrossSigning`](https://matrix-org.github.io/matrix-js-sdk/interfaces/crypto_api.CryptoApi.html#bootstrapCrossSigning): + +```javascript +matrixClient.getCrypto().bootstrapCrossSigning({ + authUploadDeviceSigningKeys: async (makeRequest) => { + return makeRequest(authDict); + }, +}); +``` -To provide the Olm library in a browser application: +The [`authUploadDeviceSigningKeys`](https://matrix-org.github.io/matrix-js-sdk/interfaces/crypto_api.BootstrapCrossSigningOpts.html#authUploadDeviceSigningKeys) +callback is required in order to upload newly-generated public cross-signing keys to the server. -- download the transpiled libolm (from https://packages.matrix.org/npm/olm/). -- load `olm.js` as a `